summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.github/workflows/android_builds.yml1
-rw-r--r--.github/workflows/javascript_builds.disabled (renamed from .github/workflows/javascript_builds.yml)1
-rw-r--r--.github/workflows/linux_builds.yml63
-rw-r--r--.github/workflows/static_checks.yml8
-rw-r--r--.mailmap9
-rw-r--r--AUTHORS.md9
-rw-r--r--COPYRIGHT.txt5
-rw-r--r--DONORS.md220
-rw-r--r--README.md54
-rw-r--r--SConstruct18
-rw-r--r--core/core_builders.py6
-rw-r--r--core/engine.cpp4
-rw-r--r--core/math/camera_matrix.cpp5
-rw-r--r--core/math/camera_matrix.h2
-rw-r--r--core/project_settings.cpp6
-rw-r--r--core/project_settings.h5
-rw-r--r--core/script_language.cpp3
-rw-r--r--core/variant_call.cpp10
-rw-r--r--doc/classes/AnimatedTexture.xml3
-rw-r--r--doc/classes/Array.xml4
-rw-r--r--doc/classes/BitMap.xml1
-rw-r--r--doc/classes/DynamicFont.xml2
-rw-r--r--doc/classes/Engine.xml2
-rw-r--r--doc/classes/Gradient.xml4
-rw-r--r--doc/classes/HSlider.xml1
-rw-r--r--doc/classes/JSON.xml22
-rw-r--r--doc/classes/Node.xml3
-rw-r--r--doc/classes/ProjectSettings.xml4
-rw-r--r--doc/classes/RichTextLabel.xml1
-rw-r--r--doc/classes/Slider.xml1
-rw-r--r--doc/classes/TextEdit.xml3
-rw-r--r--doc/classes/VSlider.xml1
-rw-r--r--doc/classes/Vector2.xml3
-rw-r--r--doc/translations/ar.po6794
-rw-r--r--doc/translations/ca.po6794
-rw-r--r--doc/translations/classes.pot6794
-rw-r--r--doc/translations/cs.po7313
-rw-r--r--doc/translations/de.po7814
-rw-r--r--doc/translations/es.po20728
-rw-r--r--doc/translations/fa.po60788
-rw-r--r--doc/translations/fi.po6880
-rw-r--r--doc/translations/fr.po7026
-rw-r--r--doc/translations/id.po6795
-rw-r--r--doc/translations/it.po6937
-rw-r--r--doc/translations/ja.po8393
-rw-r--r--doc/translations/ko.po6794
-rw-r--r--doc/translations/nl.po6826
-rw-r--r--doc/translations/pl.po6890
-rw-r--r--doc/translations/pt_BR.po6949
-rw-r--r--doc/translations/ro.po60790
-rw-r--r--doc/translations/ru.po7760
-rw-r--r--doc/translations/sr_Cyrl.po6794
-rw-r--r--doc/translations/th.po6795
-rw-r--r--doc/translations/tr.po6794
-rw-r--r--doc/translations/uk.po6963
-rw-r--r--doc/translations/zh_Hans.po7002
-rw-r--r--doc/translations/zh_Hant.po6911
-rw-r--r--drivers/SCsub2
-rw-r--r--drivers/gl_context/SCsub23
-rw-r--r--drivers/gles2/SCsub7
-rw-r--r--drivers/gles2/rasterizer_canvas_gles2.cpp2161
-rw-r--r--drivers/gles2/rasterizer_canvas_gles2.h147
-rw-r--r--drivers/gles2/rasterizer_gles2.cpp494
-rw-r--r--drivers/gles2/rasterizer_gles2.h75
-rw-r--r--drivers/gles2/rasterizer_scene_gles2.cpp3982
-rw-r--r--drivers/gles2/rasterizer_scene_gles2.h655
-rw-r--r--drivers/gles2/rasterizer_storage_gles2.cpp6039
-rw-r--r--drivers/gles2/rasterizer_storage_gles2.h1295
-rw-r--r--drivers/gles2/shader_compiler_gles2.cpp1181
-rw-r--r--drivers/gles2/shader_compiler_gles2.h99
-rw-r--r--drivers/gles2/shader_gles2.cpp1079
-rw-r--r--drivers/gles2/shader_gles2.h260
-rw-r--r--drivers/gles2/shaders/SCsub23
-rw-r--r--drivers/gles2/shaders/blend_shape.glsl194
-rw-r--r--drivers/gles2/shaders/canvas.glsl619
-rw-r--r--drivers/gles2/shaders/canvas_shadow.glsl60
-rw-r--r--drivers/gles2/shaders/copy.glsl191
-rw-r--r--drivers/gles2/shaders/cube_to_dp.glsl100
-rw-r--r--drivers/gles2/shaders/cubemap_filter.glsl231
-rw-r--r--drivers/gles2/shaders/effect_blur.glsl308
-rw-r--r--drivers/gles2/shaders/exposure.glsl86
-rw-r--r--drivers/gles2/shaders/lens_distorted.glsl84
-rw-r--r--drivers/gles2/shaders/particles.glsl261
-rw-r--r--drivers/gles2/shaders/resolve.glsl42
-rw-r--r--drivers/gles2/shaders/scene.glsl2192
-rw-r--r--drivers/gles2/shaders/screen_space_reflection.glsl284
-rw-r--r--drivers/gles2/shaders/ssao.glsl283
-rw-r--r--drivers/gles2/shaders/ssao_blur.glsl116
-rw-r--r--drivers/gles2/shaders/ssao_minify.glsl54
-rw-r--r--drivers/gles2/shaders/stdlib.glsl440
-rw-r--r--drivers/gles2/shaders/subsurf_scattering.glsl171
-rw-r--r--drivers/gles2/shaders/tonemap.glsl289
-rw-r--r--drivers/unix/os_unix.cpp2
-rw-r--r--editor/connections_dialog.cpp58
-rw-r--r--editor/connections_dialog.h3
-rw-r--r--editor/doc_data.cpp3
-rw-r--r--editor/editor_about.cpp7
-rw-r--r--editor/editor_node.cpp5
-rw-r--r--editor/editor_properties.cpp38
-rw-r--r--editor/editor_settings.cpp2
-rw-r--r--editor/editor_themes.cpp4
-rw-r--r--editor/filesystem_dock.cpp47
-rw-r--r--editor/filesystem_dock.h1
-rw-r--r--editor/icons/GuiToggleOff.svg2
-rw-r--r--editor/icons/GuiToggleOn.svg2
-rw-r--r--editor/plugins/node_3d_editor_plugin.cpp34
-rw-r--r--editor/plugins/sprite_frames_editor_plugin.cpp186
-rw-r--r--editor/plugins/sprite_frames_editor_plugin.h25
-rw-r--r--editor/plugins/tile_map_editor_plugin.cpp6
-rw-r--r--editor/plugins/tile_set_editor_plugin.cpp18
-rw-r--r--editor/project_manager.cpp4
-rw-r--r--editor/project_settings_editor.cpp549
-rw-r--r--editor/project_settings_editor.h72
-rw-r--r--editor/rename_dialog.cpp29
-rw-r--r--editor/translations/ar.po273
-rw-r--r--editor/translations/cs.po55
-rw-r--r--editor/translations/de.po13
-rw-r--r--editor/translations/el.po80
-rw-r--r--editor/translations/es.po14
-rw-r--r--editor/translations/es_AR.po10
-rw-r--r--editor/translations/et.po79
-rw-r--r--editor/translations/fi.po12
-rw-r--r--editor/translations/fr.po6
-rw-r--r--editor/translations/he.po102
-rw-r--r--editor/translations/hu.po82
-rw-r--r--editor/translations/it.po175
-rw-r--r--editor/translations/ja.po48
-rw-r--r--editor/translations/ko.po9
-rw-r--r--editor/translations/pl.po10
-rw-r--r--editor/translations/pt_BR.po26
-rw-r--r--editor/translations/pt_PT.po7
-rw-r--r--editor/translations/ro.po242
-rw-r--r--editor/translations/ru.po21
-rw-r--r--editor/translations/uk.po11
-rw-r--r--editor/translations/vi.po37
-rw-r--r--editor/translations/zh_CN.po17
-rw-r--r--editor/translations/zh_TW.po8
-rw-r--r--gles_builders.py825
-rw-r--r--glsl_builders.py225
-rw-r--r--main/main.cpp102
-rw-r--r--main/main.h6
-rw-r--r--misc/dist/linux/x-godot-project.xml10
-rw-r--r--misc/scons/compilation_db.py177
-rw-r--r--modules/bmp/image_loader_bmp.cpp31
-rw-r--r--modules/csg/csg.cpp24
-rw-r--r--modules/csg/csg_shape.cpp8
-rw-r--r--modules/gdscript/editor/gdscript_highlighter.cpp4
-rw-r--r--modules/gdscript/gdscript.cpp15
-rw-r--r--modules/gdscript/gdscript_analyzer.cpp225
-rw-r--r--modules/gdscript/gdscript_analyzer.h4
-rw-r--r--modules/gdscript/gdscript_cache.cpp15
-rw-r--r--modules/gdscript/gdscript_editor.cpp12
-rw-r--r--modules/gdscript/gdscript_parser.cpp82
-rw-r--r--modules/gdscript/gdscript_parser.h14
-rw-r--r--modules/gdscript/gdscript_tokenizer.cpp12
-rw-r--r--modules/gdscript/gdscript_tokenizer.h5
-rw-r--r--modules/gdscript/language_server/gdscript_extend_parser.cpp2
-rw-r--r--modules/gdscript/register_types.cpp4
-rw-r--r--modules/mobile_vr/register_types.cpp8
-rw-r--r--modules/mono/editor/GodotTools/GodotTools/BuildManager.cs19
-rw-r--r--modules/mono/editor/GodotTools/GodotTools/GodotSharpEditor.cs2
-rw-r--r--modules/mono/editor/GodotTools/GodotTools/Ides/MessagingServer.cs23
-rw-r--r--platform/android/display_server_android.cpp3
-rw-r--r--platform/android/export/export.cpp264
-rw-r--r--platform/android/java/app/build.gradle29
-rw-r--r--platform/android/java/app/config.gradle31
-rw-r--r--platform/android/logo.pngbin1459 -> 951 bytes
-rw-r--r--platform/iphone/godot_view_renderer.mm33
-rw-r--r--platform/iphone/logo.pngbin1489 -> 1297 bytes
-rw-r--r--platform/iphone/os_iphone.h4
-rw-r--r--platform/iphone/os_iphone.mm22
-rw-r--r--platform/iphone/platform_config.h2
-rw-r--r--platform/linuxbsd/display_server_x11.cpp4
-rw-r--r--platform/linuxbsd/os_linuxbsd.cpp4
-rw-r--r--platform/linuxbsd/os_linuxbsd.h2
-rw-r--r--platform/linuxbsd/platform_config.h2
-rw-r--r--platform/osx/detect.py1
-rw-r--r--platform/osx/display_server_osx.mm7
-rw-r--r--platform/osx/export/export.cpp4
-rw-r--r--platform/osx/logo.pngbin1751 -> 7195 bytes
-rw-r--r--platform/osx/os_osx.h2
-rw-r--r--platform/osx/os_osx.mm4
-rw-r--r--platform/osx/platform_config.h1
-rw-r--r--platform/uwp/os_uwp.cpp1
-rw-r--r--platform/windows/detect.py9
-rw-r--r--platform/windows/display_server_windows.cpp34
-rw-r--r--platform/windows/display_server_windows.h1
-rw-r--r--platform/windows/platform_config.h2
-rw-r--r--scene/2d/cpu_particles_2d.cpp6
-rw-r--r--scene/3d/cpu_particles_3d.cpp16
-rw-r--r--scene/3d/light_3d.cpp3
-rw-r--r--scene/3d/light_3d.h1
-rw-r--r--scene/gui/line_edit.cpp2
-rw-r--r--scene/gui/rich_text_label.cpp2
-rw-r--r--scene/gui/spin_box.cpp2
-rw-r--r--scene/gui/text_edit.cpp20
-rw-r--r--scene/gui/text_edit.h5
-rw-r--r--scene/main/node.cpp1
-rw-r--r--scene/register_scene_types.cpp12
-rw-r--r--scene/resources/box_shape_3d.cpp2
-rw-r--r--scene/resources/box_shape_3d.h2
-rw-r--r--scene/resources/capsule_shape_3d.cpp2
-rw-r--r--scene/resources/capsule_shape_3d.h2
-rw-r--r--scene/resources/concave_polygon_shape_3d.cpp2
-rw-r--r--scene/resources/concave_polygon_shape_3d.h2
-rw-r--r--scene/resources/convex_polygon_shape_3d.cpp2
-rw-r--r--scene/resources/convex_polygon_shape_3d.h2
-rw-r--r--scene/resources/cylinder_shape_3d.cpp2
-rw-r--r--scene/resources/cylinder_shape_3d.h2
-rw-r--r--scene/resources/environment.cpp291
-rw-r--r--scene/resources/environment.h101
-rw-r--r--scene/resources/gradient.cpp19
-rw-r--r--scene/resources/gradient.h15
-rw-r--r--scene/resources/height_map_shape_3d.cpp2
-rw-r--r--scene/resources/height_map_shape_3d.h2
-rw-r--r--scene/resources/ray_shape_3d.cpp2
-rw-r--r--scene/resources/ray_shape_3d.h2
-rw-r--r--scene/resources/resource_format_text.cpp6
-rw-r--r--scene/resources/shape_3d.h2
-rw-r--r--scene/resources/sphere_shape_3d.cpp2
-rw-r--r--scene/resources/sphere_shape_3d.h2
-rw-r--r--scene/resources/syntax_highlighter.cpp4
-rw-r--r--scene/resources/world_margin_shape_3d.cpp2
-rw-r--r--scene/resources/world_margin_shape_3d.h2
-rw-r--r--servers/physics_2d/physics_server_2d_sw.cpp1
-rw-r--r--servers/rendering/rasterizer.h12
-rw-r--r--servers/rendering/rasterizer_rd/rasterizer_effects_rd.cpp59
-rw-r--r--servers/rendering/rasterizer_rd/rasterizer_effects_rd.h16
-rw-r--r--servers/rendering/rasterizer_rd/rasterizer_scene_high_end_rd.cpp47
-rw-r--r--servers/rendering/rasterizer_rd/rasterizer_scene_high_end_rd.h15
-rw-r--r--servers/rendering/rasterizer_rd/rasterizer_scene_rd.cpp890
-rw-r--r--servers/rendering/rasterizer_rd/rasterizer_scene_rd.h150
-rw-r--r--servers/rendering/rasterizer_rd/rasterizer_storage_rd.cpp1
-rw-r--r--servers/rendering/rasterizer_rd/rasterizer_storage_rd.h7
-rw-r--r--servers/rendering/rasterizer_rd/shaders/SCsub2
-rw-r--r--servers/rendering/rasterizer_rd/shaders/cluster_data_inc.glsl95
-rw-r--r--servers/rendering/rasterizer_rd/shaders/gi.glsl2
-rw-r--r--servers/rendering/rasterizer_rd/shaders/scene_high_end.glsl90
-rw-r--r--servers/rendering/rasterizer_rd/shaders/scene_high_end_inc.glsl142
-rw-r--r--servers/rendering/rasterizer_rd/shaders/sdfgi_integrate.glsl12
-rw-r--r--servers/rendering/rasterizer_rd/shaders/shadow_reduce.glsl105
-rw-r--r--servers/rendering/rasterizer_rd/shaders/volumetric_fog.glsl530
-rw-r--r--servers/rendering/rendering_server_raster.h10
-rw-r--r--servers/rendering/rendering_server_wrap_mt.h11
-rw-r--r--servers/rendering_server.cpp17
-rw-r--r--servers/rendering_server.h18
-rw-r--r--tests/test_basis.cpp325
-rw-r--r--tests/test_basis.h252
-rw-r--r--tests/test_class_db.cpp882
-rw-r--r--tests/test_class_db.h798
-rw-r--r--tests/test_macros.h57
-rw-r--r--tests/test_ordered_hash_map.cpp175
-rw-r--r--tests/test_ordered_hash_map.h102
-rw-r--r--tests/test_validate_testing.h131
-rw-r--r--thirdparty/README.md11
-rw-r--r--thirdparty/glad/KHR/khrplatform.h290
-rw-r--r--thirdparty/glad/LICENSE20
-rw-r--r--thirdparty/glad/glad.c1939
-rw-r--r--thirdparty/glad/glad/glad.h3784
259 files changed, 228579 insertions, 102052 deletions
diff --git a/.github/workflows/android_builds.yml b/.github/workflows/android_builds.yml
index c591b4bb39..6b16c10b3e 100644
--- a/.github/workflows/android_builds.yml
+++ b/.github/workflows/android_builds.yml
@@ -18,6 +18,7 @@ jobs:
# Azure repositories are not reliable, we need to prevent azure giving us packages.
- name: Make apt sources.list use the default Ubuntu repositories
run: |
+ sudo rm -f /etc/apt/sources.list.d/*
sudo cp -f misc/ci/sources.list /etc/apt/sources.list
sudo apt-get update
diff --git a/.github/workflows/javascript_builds.yml b/.github/workflows/javascript_builds.disabled
index 421906c77f..09c4c41d53 100644
--- a/.github/workflows/javascript_builds.yml
+++ b/.github/workflows/javascript_builds.disabled
@@ -19,6 +19,7 @@ jobs:
# Azure repositories are not reliable, we need to prevent azure giving us packages.
- name: Make apt sources.list use the default Ubuntu repositories
run: |
+ sudo rm -f /etc/apt/sources.list.d/*
sudo cp -f misc/ci/sources.list /etc/apt/sources.list
sudo apt-get update
diff --git a/.github/workflows/linux_builds.yml b/.github/workflows/linux_builds.yml
index 198727b30e..087b2d15de 100644
--- a/.github/workflows/linux_builds.yml
+++ b/.github/workflows/linux_builds.yml
@@ -17,6 +17,7 @@ jobs:
# Azure repositories are not reliable, we need to prevent azure giving us packages.
- name: Make apt sources.list use the default Ubuntu repositories
run: |
+ sudo rm -f /etc/apt/sources.list.d/*
sudo cp -f misc/ci/sources.list /etc/apt/sources.list
sudo apt-get update
@@ -67,6 +68,67 @@ jobs:
run: |
./bin/godot.linuxbsd.opt.tools.64.mono --test
+ linux-editor-sanitizers:
+ runs-on: "ubuntu-20.04"
+ name: Editor with sanitizers (target=debug, tools=yes, tests=yes, use_asan=yes, use_ubsan=yes)
+
+ steps:
+ - uses: actions/checkout@v2
+
+ # Azure repositories are not reliable, we need to prevent azure giving us packages.
+ - name: Make apt sources.list use the default Ubuntu repositories
+ run: |
+ sudo rm -f /etc/apt/sources.list.d/*
+ sudo cp -f misc/ci/sources.list /etc/apt/sources.list
+ sudo apt-get update
+
+ # Install all packages (except scons)
+ - name: Configure dependencies
+ run: |
+ sudo apt-get install build-essential pkg-config libx11-dev libxcursor-dev \
+ libxinerama-dev libgl1-mesa-dev libglu-dev libasound2-dev libpulse-dev libudev-dev libxi-dev libxrandr-dev yasm
+
+ # Upload cache on completion and check it out now
+ - name: Load .scons_cache directory
+ id: linux-editor-cache
+ uses: actions/cache@v2
+ with:
+ path: ${{github.workspace}}/.scons_cache/
+ key: ${{github.job}}-${{env.GODOT_BASE_BRANCH}}-${{github.ref}}-${{github.sha}}
+ restore-keys: |
+ ${{github.job}}-${{env.GODOT_BASE_BRANCH}}-${{github.ref}}-${{github.sha}}
+ ${{github.job}}-${{env.GODOT_BASE_BRANCH}}-${{github.ref}}
+ ${{github.job}}-${{env.GODOT_BASE_BRANCH}}
+
+ # Use python 3.x release (works cross platform; best to keep self contained in it's own step)
+ - name: Set up Python 3.x
+ uses: actions/setup-python@v2
+ with:
+ # Semantic version range syntax or exact version of a Python version
+ python-version: '3.x'
+ # Optional - x64 or x86 architecture, defaults to x64
+ architecture: 'x64'
+
+ # Setup scons, print python version and scons version info, so if anything is broken it won't run the build.
+ - name: Configuring Python packages
+ run: |
+ python -c "import sys; print(sys.version)"
+ python -m pip install scons
+ python --version
+ scons --version
+
+ # We should always be explicit with our flags usage here since it's gonna be sure to always set those flags
+ - name: Compilation
+ env:
+ SCONS_CACHE: ${{github.workspace}}/.scons_cache/
+ run: |
+ scons -j2 verbose=yes warnings=all werror=yes platform=linuxbsd tools=yes tests=yes target=debug use_asan=yes use_ubsan=yes
+
+ # Execute unit tests for the editor
+ - name: Unit Tests
+ run: |
+ ./bin/godot.linuxbsd.tools.64s --test
+
linux-template:
runs-on: "ubuntu-20.04"
name: Template w/ Mono (target=release, tools=no)
@@ -77,6 +139,7 @@ jobs:
# Azure repositories are not reliable, we need to prevent azure giving us packages.
- name: Make apt sources.list use the default Ubuntu repositories
run: |
+ sudo rm -f /etc/apt/sources.list.d/*
sudo cp -f misc/ci/sources.list /etc/apt/sources.list
sudo apt-get update
diff --git a/.github/workflows/static_checks.yml b/.github/workflows/static_checks.yml
index 2a7a4e6625..ee01dba2ba 100644
--- a/.github/workflows/static_checks.yml
+++ b/.github/workflows/static_checks.yml
@@ -9,9 +9,15 @@ jobs:
- name: Checkout
uses: actions/checkout@v2
+ # Azure repositories are not reliable, we need to prevent azure giving us packages.
+ - name: Make apt sources.list use the default Ubuntu repositories
+ run: |
+ sudo rm -f /etc/apt/sources.list.d/*
+ sudo cp -f misc/ci/sources.list /etc/apt/sources.list
+ sudo apt-get update
+
- name: Install dependencies
run: |
- sudo apt-get update -qq
sudo apt-get install -qq dos2unix recode clang-format
sudo pip3 install git+https://github.com/psf/black@master pygments
diff --git a/.mailmap b/.mailmap
index 4b427a8a5e..f2f69eb9da 100644
--- a/.mailmap
+++ b/.mailmap
@@ -2,10 +2,6 @@ Alexander Holland <alexander.holland@live.de>
Alexander Holland <alexander.holland@live.de> <alexander.holland@haw-hamburg.de>
Alexander Holland <alexander.holland@live.de> <AlexHolly>
Andrea Catania <info@andreacatania.com>
-Andreas Haas <liu.gam3@gmail.com>
-Andreas Haas <liu.gam3@gmail.com> <hinsbart@gmail.com>
-Andreas Haas <liu.gam3@gmail.com> <hinsbart@users.noreply.github.com>
-Andreas Haas <liu.gam3@gmail.com> <entenflugstuhl@gmail.com>
Anish Bhobe <anishbhobe@hotmail.com>
Anutrix <numaanzaheerahmed@yahoo.com>
Aren Villanueva <arenvillanueva@yomogi-soft.com> <aren@displaysweet.com>
@@ -69,6 +65,11 @@ Kelly Thomas <kelly.thomas@hotmail.com.au>
K. S. Ernest (iFire) Lee <ernest.lee@chibifire.com>
Leon Krause <lk@leonkrause.com> <eska@eska.me>
Leon Krause <lk@leonkrause.com> <eska014@users.noreply.github.com>
+Liz Haas <27thLiz@gmail.com>
+Liz Haas <27thLiz@gmail.com> <liu.gam3@gmail.com>
+Liz Haas <27thLiz@gmail.com> <hinsbart@gmail.com>
+Liz Haas <27thLiz@gmail.com> <hinsbart@users.noreply.github.com>
+Liz Haas <27thLiz@gmail.com> <entenflugstuhl@gmail.com>
Manuel Strey <manuel.strey@gmx.de>
Marcelo Fernandez <marcelofg55@gmail.com>
Marcin Zawiejski <dragmz@gmail.com>
diff --git a/AUTHORS.md b/AUTHORS.md
index f1803c672c..40aa50f8b6 100644
--- a/AUTHORS.md
+++ b/AUTHORS.md
@@ -32,7 +32,6 @@ name is available.
Alexey Khoroshavin (allkhor)
Alket Rexhepi (alketii)
Andrea Catania (AndreaCatania)
- Andreas Haas (Hinsbart)
Andrii Doroshenko (Xrayez)
Andy Moss (MillionOstrich)
Anish Bhobe (KidRigger)
@@ -97,6 +96,7 @@ name is available.
Jakub Grzesik (kubecz3k)
James Buck (jbuck3)
Jérôme Gully (Nutriz)
+ Jia Jun Chai (SkyLucilfer)
Joan Fons Sanchez (JFonS)
Johan Manuel (29jm)
Joshua Grams (JoshuaGrams)
@@ -107,7 +107,8 @@ name is available.
Kostadin Damyanov (Max-Might)
K. S. Ernest (iFire) Lee (fire)
lawnjelly
- Leon Krause (eska014)
+ Leon Krause (leonkrause)
+ Liz Haas (27thLiz)
Lucien Menassol (Kanabenki)
m4nu3lf
Maganty Rushyendra (mrushyendra)
@@ -134,6 +135,7 @@ name is available.
muiroc
Nathan Warden (NathanWarden)
Nils André-Chang (NilsIrl)
+ Noah Beard (TwistedTwigleg)
Nuno Donato (nunodonato)
Ovnuniarchos
Pascal Richter (ShyRed)
@@ -157,12 +159,15 @@ name is available.
Robin Hübner (profan)
romulox-x
Ruslan Mustakov (endragor)
+ Ryan Roden-Corrent (rrcore)
Saniko (sanikoyes)
santouits
SaracenOne
+ Sergey Minakov (naithar)
sersoong
Shiqing (kawa-yoiko)
Simon Wenner (swenner)
+ Stijn Hinlopen (hinlopen)
Swarnim Arun (minraws)
Thakee Nathees (ThakeeNathees)
Theo Hallenius (TheoXD)
diff --git a/COPYRIGHT.txt b/COPYRIGHT.txt
index e5d30e3328..8ccdecd307 100644
--- a/COPYRIGHT.txt
+++ b/COPYRIGHT.txt
@@ -162,11 +162,6 @@ Comment: The FreeType Project
Copyright: 1996-2020, David Turner, Robert Wilhelm, and Werner Lemberg.
License: FTL
-Files: ./thirdparty/glad/
-Comment: glad
-Copyright: 2013-2019, David Herberth
-License: Expat
-
Files: ./thirdparty/glslang/
Comment: glslang
Copyright: 2015-2018 Google, Inc.
diff --git a/DONORS.md b/DONORS.md
index 16a30b9489..88e674f043 100644
--- a/DONORS.md
+++ b/DONORS.md
@@ -12,26 +12,35 @@ generous deed immortalized in the next stable release of Godot Engine.
## Platinum sponsors
+ Gamblify <https://www.gamblify.com>
Heroic Labs <https://heroiclabs.com>
Interblock <http://interblockgaming.com>
## Gold sponsors
- Gamblify <https://www.gamblify.com>
+ None currently, become one! <https://godotengine.org/donate>
+
+## Silver sponsors
+
Moonwards <https://www.moonwards.com>
+## Bronze sponsors
+
+ Brandon Lamb
+
## Mini sponsors
AD Ford
Alan Beauchamp
albinaask
Alejandro Saucedo
+ alex brown
Andrew Dunai
- Brandon Lamb
Christian Baune
Christopher Montesano
Darkhan Baimyrza
Darrin Massena
+ David Mydlarz
Digital Grows
Dov Zimring
Edward Flick
@@ -43,6 +52,7 @@ generous deed immortalized in the next stable release of Godot Engine.
Jasper Brooks
Javary Co.
Jeffery Chiu
+ Jonah Stich
Justin Arnold
Kyle Szklenski
Marcel Kräml
@@ -51,45 +61,39 @@ generous deed immortalized in the next stable release of Godot Engine.
Mike King
Nathan Warden
Neal Gompa (Conan Kudo)
+ Patrick Schmidt
Ronnie Cheng
Slobodan Milnovic
Stephan Lanfermann
Steve
+ Thomas Krampl
Tristan Pemble
VilliHaukka
+ Violin Iliev
+ 蕭惟å…
## Gold donors
- Bjarke
- David Gehrig
- David Snopek
- Ed Morley
- Florian Rämisch
- Jakub Grzesik
- Manuele Finocchiaro
- Officine Pixel S.n.c.
- Rami
- Ronan Zeegers
- Sofox
- Spicylewd
- Taylor Ritenour
- Zaven Muradyan
-
- Andreas Schüle
- Andres Hernandez
+ Andrew Morsillo
Asher Glick
Austen McRae
Bernhard Werner
beVR
Carlo Cabanilla
+ Chris Goddard
Christopher Case
Daniel James
+ David Gehrig
David Giardi
- Default Name
+ David Snopek
+ Ed Morley
eggs
+ Ellen Poe
Florian Breisch
+ Florian Rämisch
Forge
Gamejunkey
+ Jakub Grzesik
Javier Roman
Jon Woodward
Karl Werf
@@ -97,95 +101,89 @@ generous deed immortalized in the next stable release of Godot Engine.
Lex Steers
Luke
Maciej Pendolski
+ Manuele Finocchiaro
+ Markus Wiesner
Matthew Hillier
Mohamed Ikbel Boulabiar
Monster Vial
+ Officine Pixel S.n.c.
+ Rami
Rene
+ Rene Tailleur
Retro Village
Rob Messick
Roland Fredenhagen
+ Ronan Zeegers
Ryan Badour
Sandro Jenny
Sarksus
Scott Wadden
Sergey
- thechris
+ Sofox
+ Spicylewd
+ Taylor Ritenour
Tom Langwaldt
Tricky Fat Cat
tukon
William Wold
+ xagonist
+ Zaven Muradyan
- Alex Khayrullin
- alice gambrell
- Andrew Harris
- Barugon
- Chris Goddard
- Chris Serino
- Christian Padilla
- Conrad Curry
- Craig Smith
- Darrian Little
- dragonage13
- GiulianoB
- Hoai Nam Tran
- Horváth Péter
- Jeff Nyte
- Joan Fons
- Joshua Flores
- Leo Fidel R Liban
- Michael Dürwald
- Péter Magyar
- Petr Malac
- Rob
- Robert Willes
- Ronnie Ashlock
- SKison
- Thomas Bjarnelöf
- Valryia
- Vincent Henderson
- Vojtěch
- Wojciech Chojnacki
- Xavier PATRICELLI
- Zoran Kukulj
-
+ Aaron Winter
Adam Nakonieczny
Adam Neumann
Alexander J Maynard
Alexey Dyadchenko
+ Alex Khayrullin
+ alice gambrell
Andreas Funke
André Frélicot
+ Andrew Harris
aoshiwik
- Ben Powell
+ Barugon
+ Can Eris
Carlos de Sousa Marques
Charlie Whitfield
Chase Taranto
Chelsea Hash
Chris Petrich
+ Chris Serino
Christian Alexander Bjørklund Bøhler
Christian Leth Jeppesen
Cody Parker
+ Conrad Curry
Craig Ostrin
- curtis Kramer
+ Craig Smith
D
+ Darrian Little
Dev To be curious
Digital Denizen
Easypete
Edgar Sun
Eugenio Hugo Salgüero Jáñez
+ Felix Brückner
flesk
F S
Gary Hulst
gavlig
GGGames.org
+ GiulianoB
Guilherme Felipe de C. G. da Silva
Heath Hayes
+ Hoai Nam Tran
+ Horváth Péter
Hu Hund
- Isaac Clausman
+ Jared
Jared White
- Joe Flood
+ Jeff Nyte
+ Joan Fons
+ Joel Fivat
+ Joel Höglund
John G Gentzel
Jose Malheiro
Joseph Crane
+ Joshie Sparks
+ Joshua Flores
Joshua Lesperance
Juan Velandia
Julian Todd
@@ -194,14 +192,18 @@ generous deed immortalized in the next stable release of Godot Engine.
Kelteseth
kickmaniac
kinfox
+ Lachie
Lain Ballard
+ Leo Fidel R Liban
luca duran
+ MadScientistCarl
Marcelo Dornbusch Lopes
- Marcelo Henrique Gonçalves
+ Marisa Clardy
Markus Fehr
- Markus Wiesner
Martin Eigel
Matt Eunson
+ Michael
+ Michael Dürwald
Mikado069
m kaersten
MuffinManKen
@@ -211,48 +213,64 @@ generous deed immortalized in the next stable release of Godot Engine.
Patrick Ting
Paul Hocker
Paul Von Zimmerman
+ Pedro Silva
Pete Goodwin
+ Péter Magyar
+ Petr Malac
PhaineOfCatz
pl
Ranoller
+ Raymond Harris
+ Ricardo Alcantara
+ Rob
+ Robert Willes
Rob McInroy
Rocknight Studios
+ Ronnie Ashlock
Ryan
+ Ryan Wilson
Samuel Judd
Scott Pilet
- Scott Ryan-Taylor
Sean Morgan
Sean Robertson
Sébastien
Serban Serafimescu
+ Shishir Tandale
+ SKison
SleepCircle
spilldata
+ Steven Landow
Stoned Xander
Tahiti Bos
TheLevelOfDetail .
+ Thomas Bjarnelöf
Thomas Kurz
+ Timothy Pulliam
Tobias Bocanegra
Trent Fehl
- Urho
+ Valryia
+ VikFro
+ Vincent Henderson
+ Vojtěch
William Foster
+ Wojciech Chojnacki
+ Xavier PATRICELLI
+ xzibiting
Zhou Tuizhi
Zie Weaver
- 蕭惟å…
+ Zoran Kukulj
## Silver donors
1D_Inc
Aaron
- Aaron Winter
- Abel Crunk
Abraham Haskins
Acheron
Adam
Adam Brunnmeier
- Adam Carr
+ Adam Carr
Adam Long
Adam McCurdy
- Adam Netzel
Adam N Webber
Adam Smeltzer
Adam Szymański
@@ -265,18 +283,22 @@ generous deed immortalized in the next stable release of Godot Engine.
AleMax
Alessandro Senese
Alexander Erlemann
+ Alexandre Beaudoin
alex clavelle
+ Ali Al-Khalifa
Allan Davis
Allen Schade
Andreas Krampitz
André Simões
andrew james morris
Andrew Mansuetti
+ Andrew Rosenwinkel
Andrew Thomas
Ano Nim
Anthony Avina
AP Condomines
Arda Erol
+ Arisaka Mayuki
Armin Preiml
Arseniy M
Arthur S. Muszynski
@@ -285,43 +307,49 @@ generous deed immortalized in the next stable release of Godot Engine.
Aubrey Falconer
B A
Balázs Batári
- Balázs Hasprai
Bartosz Bielecki
Benedikt
Ben Vercammen
Bernd Jänichen
- Bjarne
+ Bjarne Voigtländer
Black Block
Blair Allen
Bobby CC Wong
Bram
brian
+ Brian mc gowan
+ Brodie Fairhall
Burney Waring
+ Caleb Gartner
Cameron Meyer
Carl van der Geest
Carwyn Edwards
Cas Brugman
Cassidy James
+ Chad Steadman
Chris Brown
Chris Chapin
Christian Winter
+ Christoffer Dahlblom
Christoffer Sundbom
- Christoph Brodmann
Christophe Gagnier
Christopher Schmitt
Christoph Woinke
Clay Heaton
Cole Johnson
- Cuauhtemoc Moreno
Curt King
- Daniel Kimblad
+ CzechBlueBear
+ Daniel De Macedo
Daniel Johnson
DanielMaximiano
+ Daniel Szarfman
Daniel Tebbutt
+ Daren Scot Wilson
Dave Walker
David May
David Woodard
- Dimitri Stanojevic
+ David Zanetti
+ Dmitry Fisher
Dmytro Korchynskyi
Dominik Wetzel
Donn Eddy
@@ -341,6 +369,7 @@ generous deed immortalized in the next stable release of Godot Engine.
Eric Ellingson
Eric Williams
Erkki Seppälä
+ ET Garcia
Evan Rose
Fain
Faisal Alkubaisi
@@ -378,22 +407,20 @@ generous deed immortalized in the next stable release of Godot Engine.
Jaiden Gerig
Jaime Ruiz-Borau Vizárraga
Jako Danar
+ James
James A F Manley
Jamiee H
Jamie Massey
Janders
JARKKO PARVIAINEN
+ Jason Uechi
Jean-Baptiste LEPESME
Jeff Hungerford
Jennifer Graves
Jesse Dubay
Joe Alden
- Joel Fivat
- Joel Höglund
- Joel Setterberg
- Johannes Goslar
+ Joe Klemmer
John Gabriel
- John Walker
Jomei Jackson
Jonas
Jonas Bernemann
@@ -405,7 +432,6 @@ generous deed immortalized in the next stable release of Godot Engine.
Jon Sully
Jordy Goodridge
Jorge Antunes
- Jose Aleman
Jose C. Rubio
Joseph Catrambone
Josh Mitchell
@@ -422,19 +448,19 @@ generous deed immortalized in the next stable release of Godot Engine.
Karel Němec
Kauzig
Keedong Park
+ Keinan Powers
Keith Bradner
Kent Jofur
Kevin McPhillips
- Kevin Velasco
Kiri Jolly
Kjetil Haugland
- Klagsam
KsyTek Games
Kuan Cheang
kycho
Kyle Appelgate
Kyuppin
Laurent Tréguier
+ LEMMiNO
Leonardo Dimano
Lin Chear
Linus Lind Lundgren
@@ -447,6 +473,7 @@ generous deed immortalized in the next stable release of Godot Engine.
Marco Lardelli
Mark Jad
Mark Krenz
+ Markus Martin
Markus Michael Egger
Martin FIbik
Martin Holas
@@ -456,16 +483,16 @@ generous deed immortalized in the next stable release of Godot Engine.
Marvin
Mathieu
Matt Edwards
- Mauro Pellegrini
+ Matthew Booe
Max Fiedler
Maxime Blade
Maxwell
Megasploot
Melissa Mears
mewin
+ Michael Cullen
Michael Haney
Michał Skwarek
- Mikael Olsson
Mikayla
Mike Birkhead
Mike Cunningham
@@ -484,12 +511,16 @@ generous deed immortalized in the next stable release of Godot Engine.
Nick Allen
Nick Macholl
Niclas Eriksen
+ Nicolas Goll-Perrier
Nicolás Montaña
Nicolas SAN AGUSTIN
NZ
+ '@oddgoo
+ OKV
Oleg Reva
Olivier
Omar Delarosa
+ Oscar Domingo
Oscar Norlander
Pan Ip
Parinya Teerakasemsuk
@@ -502,16 +533,16 @@ generous deed immortalized in the next stable release of Godot Engine.
Penguin
Peter
Philip Cohoe
+ Pierre-Nicolas Tollitte
Piotr Góral
Point08
+ Preethi Vaidyanathan
pwab
Rad Cat
Rafa Laguna
- Ram
Remi Rampin
Rémi Verschelde
Reneator
- Ricardo Alcantara
Richard Diss
Richard Ivánek
Robert Farr (Larington)
@@ -522,7 +553,9 @@ generous deed immortalized in the next stable release of Godot Engine.
Ronald Ho Hip (CrimsonZA)
Ronan
Ronny Mühle
+ Ross Squires
Ryan Groom
+ Sam Caulfield
Sam Edson
Samuele Zolfanelli
Scott D. Yelich
@@ -531,15 +564,16 @@ generous deed immortalized in the next stable release of Godot Engine.
Sebastian Michailidis
Sebastian Vetter
Sergio Mello-Grand
+ Shaher
Shane
Shane Sicienski
Shane Spoor
- Shiomi '- Duy Kevin Nguyen
+ Shiomi - Duy Kevin Nguyen
Siim Raidma
Simon Jonas Larsen
+ Simon Schoenenberger
Simon Wenner
Sintinium
- SK
smbe19
smo1704
soft circles
@@ -547,7 +581,7 @@ generous deed immortalized in the next stable release of Godot Engine.
Stefano Caronia
Steve Cloete
Svenne Krap
- Taylor Fahlman
+ Tannen Helmers
Terry
tezuvholovdr
TheVoiceInMyHead
@@ -558,26 +592,30 @@ generous deed immortalized in the next stable release of Godot Engine.
Tim Drumheller
Tim Erskine
Timothy B. MacDonald
- Title Plinsut
Tobbun
Tobias Bradtke
- Tom Glenn
Toni Duran
+ Tony Zhao
Torgeir Lilleskog
Torsten Crass
Travis O'Brien
Trent Skinner
+ Triptych
+ Triumph263 .
Troy Bonneau
Tryggve Sollid
Turgut Temucin
Tyler Compton
Tyler Stafos
UltyX
+ Uther
Valentí Gàmez
Vaughan Ling
Victor
Vigilant Watch
+ Viktor Ismagilov
Vincent Cloutier
+ Vitor Balbio
Vladimir Savin
waka nya
Wayne Haak
@@ -587,9 +625,9 @@ generous deed immortalized in the next stable release of Godot Engine.
Wyatt Goodin
Yegor Smirnov
YiYin Gu
- Yuri LaPointe
Yuri Sizov
Zgegnesh Hemomancer
+ ΒΑΣΙΛΗΣ ΓΕΩΡΓΑΚΟΠΟΥΛΟΣ
éƒæ™¨ç…œ
## Bronze donors
diff --git a/README.md b/README.md
index e962f90333..ad0fe3079c 100644
--- a/README.md
+++ b/README.md
@@ -1,25 +1,29 @@
-[![Godot Engine logo](/logo.png)](https://godotengine.org)
+# Godot Engine
-## Godot Engine
+<p align="center">
+ <a href="https://godotengine.org">
+ <img src="logo.svg" width="400" alt="Godot Engine logo">
+ </a>
+</p>
-Homepage: https://godotengine.org
+## 2D and 3D cross-platform game engine
-#### 2D and 3D cross-platform game engine
+**[Godot Engine](https://godotengine.org) is a feature-packed, cross-platform
+game engine to create 2D and 3D games from a unified interface.** It provides a
+comprehensive set of common tools, so that users can focus on making games
+without having to reinvent the wheel. Games can be exported in one click to a
+number of platforms, including the major desktop platforms (Linux, macOS,
+Windows), mobile platforms (Android, iOS), as well as Web-based platforms
+(HTML5) and
+[consoles](https://docs.godotengine.org/en/latest/tutorials/platform/consoles.html).
-Godot Engine is a feature-packed, cross-platform game engine to create 2D and
-3D games from a unified interface. It provides a comprehensive set of common
-tools, so that users can focus on making games without having to reinvent the
-wheel. Games can be exported in one click to a number of platforms, including
-the major desktop platforms (Linux, Mac OSX, Windows) as well as mobile
-(Android, iOS) and web-based (HTML5) platforms.
-
-#### Free, open source and community-driven
+## Free, open source and community-driven
Godot is completely free and open source under the very permissive MIT license.
No strings attached, no royalties, nothing. The users' games are theirs, down
to the last line of engine code. Godot's development is fully independent and
community-driven, empowering users to help shape their engine to match their
-expectations. It is supported by the Software Freedom Conservancy
+expectations. It is supported by the [Software Freedom Conservancy](https://sfconservancy.org/)
not-for-profit.
Before being open sourced in February 2014, Godot had been developed by Juan
@@ -28,43 +32,45 @@ years as an in-house engine, used to publish several work-for-hire titles.
![Screenshot of a 3D scene in Godot Engine](https://raw.githubusercontent.com/godotengine/godot-design/master/screenshots/editor_tps_demo_1920x1080.jpg)
-### Getting the engine
+## Getting the engine
-#### Binary downloads
+### Binary downloads
Official binaries for the Godot editor and the export templates can be found
[on the homepage](https://godotengine.org/download).
-#### Compiling from source
+### Compiling from source
[See the official docs](https://docs.godotengine.org/en/latest/development/compiling/)
for compilation instructions for every supported platform.
-### Community and contributing
+## Community and contributing
Godot is not only an engine but an ever-growing community of users and engine
developers. The main community channels are listed [on the homepage](https://godotengine.org/community).
-To get in touch with the developers, the best way is to join the
-[#godotengine IRC channel](https://webchat.freenode.net/?channels=godotengine)
+To get in touch with the engine developers, the best way is to join the
+[#godotengine-devel IRC channel](https://webchat.freenode.net/?channels=godotengine-devel)
on Freenode.
To get started contributing to the project, see the [contributing guide](CONTRIBUTING.md).
-### Documentation and demos
+## Documentation and demos
The official documentation is hosted on [ReadTheDocs](https://docs.godotengine.org).
It is maintained by the Godot community in its own [GitHub repository](https://github.com/godotengine/godot-docs).
The [class reference](https://docs.godotengine.org/en/latest/classes/)
-is also accessible from within the engine.
+is also accessible from the Godot editor.
The official demos are maintained in their own [GitHub repository](https://github.com/godotengine/godot-demo-projects)
as well.
-There are also a number of other learning resources provided by the community,
-such as text and video tutorials, demos, etc. Consult the [community channels](https://godotengine.org/community)
-for more info.
+There are also a number of other
+[learning resources](https://docs.godotengine.org/en/latest/community/tutorials.html)
+provided by the community, such as text and video tutorials, demos, etc.
+Consult the [community channels](https://godotengine.org/community)
+for more information.
[![Actions Build Status](https://github.com/godotengine/godot/workflows/Godot/badge.svg?branch=master)](https://github.com/godotengine/godot/actions)
[![Code Triagers Badge](https://www.codetriage.com/godotengine/godot/badges/users.svg)](https://www.codetriage.com/godotengine/godot)
diff --git a/SConstruct b/SConstruct
index 96d2f1abe7..64a4c48eff 100644
--- a/SConstruct
+++ b/SConstruct
@@ -12,7 +12,7 @@ from collections import OrderedDict
# Local
import methods
-import gles_builders
+import glsl_builders
import version
from platform_methods import run_in_subprocess
@@ -310,9 +310,10 @@ if selected_platform in platform_list:
from SCons import __version__ as scons_raw_version
scons_ver = env._get_major_minor_revision(scons_raw_version)
- if scons_ver >= (3, 1, 1):
- env.Tool("compilation_db", toolpath=["misc/scons"])
- env.Alias("compiledb", env.CompilationDatabase("compile_commands.json"))
+
+ if scons_ver >= (4, 0, 0):
+ env.Tool("compilation_db")
+ env.Alias("compiledb", env.CompilationDatabase())
if env["dev"]:
env["verbose"] = True
@@ -629,18 +630,13 @@ if selected_platform in platform_list:
if not env["platform"] == "server":
GLSL_BUILDERS = {
- "GLES2_GLSL": env.Builder(
- action=env.Run(gles_builders.build_gles2_headers, 'Building GLES2_GLSL header: "$TARGET"'),
- suffix="glsl.gen.h",
- src_suffix=".glsl",
- ),
"RD_GLSL": env.Builder(
- action=env.Run(gles_builders.build_rd_headers, 'Building RD_GLSL header: "$TARGET"'),
+ action=env.Run(glsl_builders.build_rd_headers, 'Building RD_GLSL header: "$TARGET"'),
suffix="glsl.gen.h",
src_suffix=".glsl",
),
"GLSL_HEADER": env.Builder(
- action=env.Run(gles_builders.build_raw_headers, 'Building GLSL header: "$TARGET"'),
+ action=env.Run(glsl_builders.build_raw_headers, 'Building GLSL header: "$TARGET"'),
suffix="glsl.gen.h",
src_suffix=".glsl",
),
diff --git a/core/core_builders.py b/core/core_builders.py
index d03874608e..004475faa7 100644
--- a/core/core_builders.py
+++ b/core/core_builders.py
@@ -117,14 +117,18 @@ def make_donors_header(target, source, env):
sections = [
"Platinum sponsors",
"Gold sponsors",
+ "Silver sponsors",
+ "Bronze sponsors",
"Mini sponsors",
"Gold donors",
"Silver donors",
"Bronze donors",
]
sections_id = [
- "DONORS_SPONSOR_PLAT",
+ "DONORS_SPONSOR_PLATINUM",
"DONORS_SPONSOR_GOLD",
+ "DONORS_SPONSOR_SILVER",
+ "DONORS_SPONSOR_BRONZE",
"DONORS_SPONSOR_MINI",
"DONORS_GOLD",
"DONORS_SILVER",
diff --git a/core/engine.cpp b/core/engine.cpp
index c8bfffd020..d08cf92ecb 100644
--- a/core/engine.cpp
+++ b/core/engine.cpp
@@ -158,8 +158,10 @@ Array Engine::get_copyright_info() const {
Dictionary Engine::get_donor_info() const {
Dictionary donors;
- donors["platinum_sponsors"] = array_from_info(DONORS_SPONSOR_PLAT);
+ donors["platinum_sponsors"] = array_from_info(DONORS_SPONSOR_PLATINUM);
donors["gold_sponsors"] = array_from_info(DONORS_SPONSOR_GOLD);
+ donors["silver_sponsors"] = array_from_info(DONORS_SPONSOR_SILVER);
+ donors["bronze_sponsors"] = array_from_info(DONORS_SPONSOR_BRONZE);
donors["mini_sponsors"] = array_from_info(DONORS_SPONSOR_MINI);
donors["gold_donors"] = array_from_info(DONORS_GOLD);
donors["silver_donors"] = array_from_info(DONORS_SILVER);
diff --git a/core/math/camera_matrix.cpp b/core/math/camera_matrix.cpp
index 22ab83f358..c154d57a13 100644
--- a/core/math/camera_matrix.cpp
+++ b/core/math/camera_matrix.cpp
@@ -278,7 +278,7 @@ Vector2 CameraMatrix::get_viewport_half_extents() const {
return Vector2(res.x, res.y);
}
-void CameraMatrix::get_far_plane_size(real_t &r_width, real_t &r_height) const {
+Vector2 CameraMatrix::get_far_plane_half_extents() const {
const real_t *matrix = (const real_t *)this->matrix;
///////--- Far Plane ---///////
Plane far_plane = Plane(matrix[3] - matrix[2],
@@ -303,8 +303,7 @@ void CameraMatrix::get_far_plane_size(real_t &r_width, real_t &r_height) const {
Vector3 res;
far_plane.intersect_3(right_plane, top_plane, &res);
- r_width = res.x;
- r_height = res.y;
+ return Vector2(res.x, res.y);
}
bool CameraMatrix::get_endpoints(const Transform &p_transform, Vector3 *p_8points) const {
diff --git a/core/math/camera_matrix.h b/core/math/camera_matrix.h
index 49fdecae02..c5cdd98377 100644
--- a/core/math/camera_matrix.h
+++ b/core/math/camera_matrix.h
@@ -74,7 +74,7 @@ struct CameraMatrix {
bool get_endpoints(const Transform &p_transform, Vector3 *p_8points) const;
Vector2 get_viewport_half_extents() const;
- void get_far_plane_size(real_t &r_width, real_t &r_height) const;
+ Vector2 get_far_plane_half_extents() const;
void invert();
CameraMatrix inverse() const;
diff --git a/core/project_settings.cpp b/core/project_settings.cpp
index e08a44d0c1..960a0ec1b0 100644
--- a/core/project_settings.cpp
+++ b/core/project_settings.cpp
@@ -659,6 +659,12 @@ void ProjectSettings::set_builtin_order(const String &p_name) {
}
}
+bool ProjectSettings::is_builtin_setting(const String &p_name) const {
+ // Return true because a false negative is worse than a false positive.
+ ERR_FAIL_COND_V_MSG(!props.has(p_name), true, "Request for nonexistent project setting: " + p_name + ".");
+ return props[p_name].order < NO_BUILTIN_ORDER_BASE;
+}
+
void ProjectSettings::clear(const String &p_name) {
ERR_FAIL_COND_MSG(!props.has(p_name), "Request for nonexistent project setting: " + p_name + ".");
props.erase(p_name);
diff --git a/core/project_settings.h b/core/project_settings.h
index 659ee402b3..70b54ec854 100644
--- a/core/project_settings.h
+++ b/core/project_settings.h
@@ -76,8 +76,8 @@ protected:
};
bool registering_order = true;
- int last_order = 0;
- int last_builtin_order = NO_BUILTIN_ORDER_BASE;
+ int last_order = NO_BUILTIN_ORDER_BASE;
+ int last_builtin_order = 0;
Map<StringName, VariantContainer> props;
String resource_path;
Map<StringName, PropertyInfo> custom_prop_info;
@@ -142,6 +142,7 @@ public:
int get_order(const String &p_name) const;
void set_order(const String &p_name, int p_order);
void set_builtin_order(const String &p_name);
+ bool is_builtin_setting(const String &p_name) const;
Error setup(const String &p_path, const String &p_main_pack, bool p_upwards = false);
diff --git a/core/script_language.cpp b/core/script_language.cpp
index 5176882662..360995ea15 100644
--- a/core/script_language.cpp
+++ b/core/script_language.cpp
@@ -33,6 +33,7 @@
#include "core/core_string_names.h"
#include "core/debugger/engine_debugger.h"
#include "core/debugger/script_debugger.h"
+#include "core/io/resource_loader.h"
#include "core/os/file_access.h"
#include "core/project_settings.h"
@@ -163,7 +164,7 @@ void ScriptServer::init_languages() {
for (int i = 0; i < script_classes.size(); i++) {
Dictionary c = script_classes[i];
- if (!c.has("class") || !c.has("language") || !c.has("path") || !FileAccess::exists(c["path"]) || !c.has("base")) {
+ if (!c.has("class") || !c.has("language") || !c.has("path") || !FileAccess::exists(ResourceLoader::path_remap(c["path"])) || !c.has("base")) {
continue;
}
add_global_class(c["class"], c["base"], c["language"], c["path"]);
diff --git a/core/variant_call.cpp b/core/variant_call.cpp
index b96fd0c103..91af127d32 100644
--- a/core/variant_call.cpp
+++ b/core/variant_call.cpp
@@ -2350,9 +2350,9 @@ void register_variant_methods() {
_VariantCall::add_variant_constant(Variant::VECTOR3, "FORWARD", Vector3(0, 0, -1));
_VariantCall::add_variant_constant(Variant::VECTOR3, "BACK", Vector3(0, 0, 1));
- _VariantCall::add_constant(Variant::VECTOR3I, "AXIS_X", Vector3::AXIS_X);
- _VariantCall::add_constant(Variant::VECTOR3I, "AXIS_Y", Vector3::AXIS_Y);
- _VariantCall::add_constant(Variant::VECTOR3I, "AXIS_Z", Vector3::AXIS_Z);
+ _VariantCall::add_constant(Variant::VECTOR3I, "AXIS_X", Vector3i::AXIS_X);
+ _VariantCall::add_constant(Variant::VECTOR3I, "AXIS_Y", Vector3i::AXIS_Y);
+ _VariantCall::add_constant(Variant::VECTOR3I, "AXIS_Z", Vector3i::AXIS_Z);
_VariantCall::add_variant_constant(Variant::VECTOR3I, "ZERO", Vector3i(0, 0, 0));
_VariantCall::add_variant_constant(Variant::VECTOR3I, "ONE", Vector3i(1, 1, 1));
@@ -2366,8 +2366,8 @@ void register_variant_methods() {
_VariantCall::add_constant(Variant::VECTOR2, "AXIS_X", Vector2::AXIS_X);
_VariantCall::add_constant(Variant::VECTOR2, "AXIS_Y", Vector2::AXIS_Y);
- _VariantCall::add_constant(Variant::VECTOR2I, "AXIS_X", Vector2::AXIS_X);
- _VariantCall::add_constant(Variant::VECTOR2I, "AXIS_Y", Vector2::AXIS_Y);
+ _VariantCall::add_constant(Variant::VECTOR2I, "AXIS_X", Vector2i::AXIS_X);
+ _VariantCall::add_constant(Variant::VECTOR2I, "AXIS_Y", Vector2i::AXIS_Y);
_VariantCall::add_variant_constant(Variant::VECTOR2, "ZERO", Vector2(0, 0));
_VariantCall::add_variant_constant(Variant::VECTOR2, "ONE", Vector2(1, 1));
diff --git a/doc/classes/AnimatedTexture.xml b/doc/classes/AnimatedTexture.xml
index 285e0d5f39..5774842144 100644
--- a/doc/classes/AnimatedTexture.xml
+++ b/doc/classes/AnimatedTexture.xml
@@ -6,7 +6,8 @@
<description>
[AnimatedTexture] is a resource format for frame-based animations, where multiple textures can be chained automatically with a predefined delay for each frame. Unlike [AnimationPlayer] or [AnimatedSprite2D], it isn't a [Node], but has the advantage of being usable anywhere a [Texture2D] resource can be used, e.g. in a [TileSet].
The playback of the animation is controlled by the [member fps] property as well as each frame's optional delay (see [method set_frame_delay]). The animation loops, i.e. it will restart at frame 0 automatically after playing the last frame.
- [AnimatedTexture] currently requires all frame textures to have the same size, otherwise the bigger ones will be cropped to match the smallest one. Also, it doesn't support [AtlasTexture]. Each frame needs to be separate image.
+ [AnimatedTexture] currently requires all frame textures to have the same size, otherwise the bigger ones will be cropped to match the smallest one.
+ [b]Note:[/b] AnimatedTexture doesn't support using [AtlasTexture]s. Each frame needs to be a separate [Texture2D].
</description>
<tutorials>
</tutorials>
diff --git a/doc/classes/Array.xml b/doc/classes/Array.xml
index b79b24e0bc..61df5e092e 100644
--- a/doc/classes/Array.xml
+++ b/doc/classes/Array.xml
@@ -119,7 +119,7 @@
<return type="Variant">
</return>
<description>
- Returns the last element of the array, or [code]null[/code] if the array is empty.
+ Returns the last element of the array. Throws an error and returns [code]null[/code] if the array is empty.
</description>
</method>
<method name="bsearch">
@@ -216,7 +216,7 @@
<return type="Variant">
</return>
<description>
- Returns the first element of the array, or [code]null[/code] if the array is empty.
+ Returns the first element of the array. Throws an error and returns [code]null[/code] if the array is empty.
</description>
</method>
<method name="has">
diff --git a/doc/classes/BitMap.xml b/doc/classes/BitMap.xml
index f0ac7d1160..27ead07e6f 100644
--- a/doc/classes/BitMap.xml
+++ b/doc/classes/BitMap.xml
@@ -60,6 +60,7 @@
<argument index="1" name="rect" type="Rect2">
</argument>
<description>
+ Applies morphological dilation to the bitmap. The first argument is the dilation amount, Rect2 is the area where the dilation will be applied.
</description>
</method>
<method name="opaque_to_polygons" qualifiers="const">
diff --git a/doc/classes/DynamicFont.xml b/doc/classes/DynamicFont.xml
index 24df056c6b..5d8ae29175 100644
--- a/doc/classes/DynamicFont.xml
+++ b/doc/classes/DynamicFont.xml
@@ -12,7 +12,7 @@
dynamic_font.size = 64
$"Label".set("custom_fonts/font", dynamic_font)
[/codeblock]
- [b]Note:[/b] DynamicFont doesn't support features such as right-to-left typesetting, ligatures, text shaping, variable fonts and optional font features yet. If you wish to "bake" an optional font feature into a TTF font file, you can use [url=https://fontforge.org/]FontForge[/url] to do so. In FontForge, use [b]File &gt; Generate Fonts[/b], click [b]Options[/b], choose the desired features then generate the font.
+ [b]Note:[/b] DynamicFont doesn't support features such as kerning, right-to-left typesetting, ligatures, text shaping, variable fonts and optional font features yet. If you wish to "bake" an optional font feature into a TTF font file, you can use [url=https://fontforge.org/]FontForge[/url] to do so. In FontForge, use [b]File &gt; Generate Fonts[/b], click [b]Options[/b], choose the desired features then generate the font.
</description>
<tutorials>
</tutorials>
diff --git a/doc/classes/Engine.xml b/doc/classes/Engine.xml
index 12701d8688..297cccaaac 100644
--- a/doc/classes/Engine.xml
+++ b/doc/classes/Engine.xml
@@ -34,7 +34,7 @@
</return>
<description>
Returns a Dictionary of Arrays of donor names.
- {[code]platinum_sponsors[/code], [code]gold_sponsors[/code], [code]mini_sponsors[/code], [code]gold_donors[/code], [code]silver_donors[/code], [code]bronze_donors[/code]}
+ {[code]platinum_sponsors[/code], [code]gold_sponsors[/code], [code]silver_sponsors[/code], [code]bronze_sponsors[/code], [code]mini_sponsors[/code], [code]gold_donors[/code], [code]silver_donors[/code], [code]bronze_donors[/code]}
</description>
</method>
<method name="get_frames_drawn">
diff --git a/doc/classes/Gradient.xml b/doc/classes/Gradient.xml
index 05aebef9de..abb105a41c 100644
--- a/doc/classes/Gradient.xml
+++ b/doc/classes/Gradient.xml
@@ -20,7 +20,7 @@
Adds the specified color to the end of the ramp, with the specified offset.
</description>
</method>
- <method name="get_color" qualifiers="const">
+ <method name="get_color">
<return type="Color">
</return>
<argument index="0" name="point" type="int">
@@ -29,7 +29,7 @@
Returns the color of the ramp color at index [code]point[/code].
</description>
</method>
- <method name="get_offset" qualifiers="const">
+ <method name="get_offset">
<return type="float">
</return>
<argument index="0" name="point" type="int">
diff --git a/doc/classes/HSlider.xml b/doc/classes/HSlider.xml
index afe9d10d2e..0cbb4fd455 100644
--- a/doc/classes/HSlider.xml
+++ b/doc/classes/HSlider.xml
@@ -5,6 +5,7 @@
</brief_description>
<description>
Horizontal slider. See [Slider]. This one goes from left (min) to right (max).
+ [b]Note:[/b] The [signal Range.changed] and [signal Range.value_changed] signals are part of the [Range] class which this class inherits from.
</description>
<tutorials>
</tutorials>
diff --git a/doc/classes/JSON.xml b/doc/classes/JSON.xml
index 2e837dea1d..a9fb50c262 100644
--- a/doc/classes/JSON.xml
+++ b/doc/classes/JSON.xml
@@ -30,6 +30,28 @@
<description>
Converts a [Variant] var to JSON text and returns the result. Useful for serializing data to store or send over the network.
[b]Note:[/b] The JSON specification does not define integer or float types, but only a [i]number[/i] type. Therefore, converting a Variant to JSON text will convert all numerical values to [float] types.
+ Use [code]indent[/code] parameter to pretty print the output.
+ [b]Example output:[/b]
+ [codeblock]
+ ## JSON.print(my_dictionary)
+ {"name":"my_dictionary","version":"1.0.0","entities":[{"name":"entity_0","value":"value_0"},{"name":"entity_1","value":"value_1"}]}
+
+ ## JSON.print(my_dictionary, "\t")
+ {
+ "name": "my_dictionary",
+ "version": "1.0.0",
+ "entities": [
+ {
+ "name": "entity_0",
+ "value": "value_0"
+ },
+ {
+ "name": "entity_1",
+ "value": "value_1"
+ }
+ ]
+ }
+ [/codeblock]
</description>
</method>
</methods>
diff --git a/doc/classes/Node.xml b/doc/classes/Node.xml
index e921cbd58a..8f66c9df38 100644
--- a/doc/classes/Node.xml
+++ b/doc/classes/Node.xml
@@ -918,6 +918,9 @@
<constant name="NOTIFICATION_INTERNAL_PHYSICS_PROCESS" value="26">
Notification received every frame when the internal physics process flag is set (see [method set_physics_process_internal]).
</constant>
+ <constant name="NOTIFICATION_POST_ENTER_TREE" value="27">
+ Notification received when the node is ready, just before [constant NOTIFICATION_READY] is received. Unlike the latter, it's sent every time the node enters tree, instead of only once.
+ </constant>
<constant name="NOTIFICATION_WM_MOUSE_ENTER" value="1002">
Notification received from the OS when the mouse enters the game window.
Implemented on desktop and web platforms.
diff --git a/doc/classes/ProjectSettings.xml b/doc/classes/ProjectSettings.xml
index f13dbbae76..793249afc5 100644
--- a/doc/classes/ProjectSettings.xml
+++ b/doc/classes/ProjectSettings.xml
@@ -990,10 +990,6 @@
</member>
<member name="rendering/limits/time/time_rollover_secs" type="float" setter="" getter="" default="3600">
</member>
- <member name="rendering/quality/2d/gles2_use_nvidia_rect_flicker_workaround" type="bool" setter="" getter="" default="false">
- Some NVIDIA GPU drivers have a bug which produces flickering issues for the [code]draw_rect[/code] method, especially as used in [TileMap]. Refer to [url=https://github.com/godotengine/godot/issues/9913]GitHub issue 9913[/url] for details.
- If [code]true[/code], this option enables a "safe" code path for such NVIDIA GPUs at the cost of performance. This option only impacts the GLES2 rendering backend, and only desktop platforms. It is not necessary when using the Vulkan backend.
- </member>
<member name="rendering/quality/2d/use_pixel_snap" type="bool" setter="" getter="" default="false">
If [code]true[/code], forces snapping of polygons to pixels in 2D rendering. May help in some pixel art styles.
</member>
diff --git a/doc/classes/RichTextLabel.xml b/doc/classes/RichTextLabel.xml
index c44df72878..a1c4fcc53c 100644
--- a/doc/classes/RichTextLabel.xml
+++ b/doc/classes/RichTextLabel.xml
@@ -6,6 +6,7 @@
<description>
Rich text can contain custom text, fonts, images and some basic formatting. The label manages these as an internal tag stack. It also adapts itself to given width/heights.
[b]Note:[/b] Assignments to [member bbcode_text] clear the tag stack and reconstruct it from the property's contents. Any edits made to [member bbcode_text] will erase previous edits made from other manual sources such as [method append_bbcode] and the [code]push_*[/code] / [method pop] methods.
+ [b]Note:[/b] Unlike [Label], RichTextLabel doesn't have a [i]property[/i] to horizontally align text to the center. Instead, enable [member bbcode_enabled] and surround the text in a [code][center][/code] tag as follows: [code][center]Example[/center][/code]. There is currently no built-in way to vertically align text either, but this can be emulated by relying on anchors/containers and the [member fit_content_height] property.
</description>
<tutorials>
<link>https://docs.godotengine.org/en/latest/tutorials/gui/bbcode_in_richtextlabel.html</link>
diff --git a/doc/classes/Slider.xml b/doc/classes/Slider.xml
index 68776df603..f18b2ce39f 100644
--- a/doc/classes/Slider.xml
+++ b/doc/classes/Slider.xml
@@ -5,6 +5,7 @@
</brief_description>
<description>
Base class for GUI sliders.
+ [b]Note:[/b] The [signal Range.changed] and [signal Range.value_changed] signals are part of the [Range] class which this class inherits from.
</description>
<tutorials>
</tutorials>
diff --git a/doc/classes/TextEdit.xml b/doc/classes/TextEdit.xml
index b7240655af..d4abac15c0 100644
--- a/doc/classes/TextEdit.xml
+++ b/doc/classes/TextEdit.xml
@@ -430,6 +430,9 @@
<member name="v_scroll_speed" type="float" setter="set_v_scroll_speed" getter="get_v_scroll_speed" default="80.0">
Vertical scroll sensitivity.
</member>
+ <member name="virtual_keyboard_enabled" type="bool" setter="set_virtual_keyboard_enabled" getter="is_virtual_keyboard_enabled" default="true">
+ If [code]true[/code], the native virtual keyboard is shown when focused on platforms that support it.
+ </member>
<member name="wrap_enabled" type="bool" setter="set_wrap_enabled" getter="is_wrap_enabled" default="false">
If [code]true[/code], enables text wrapping when it goes beyond the edge of what is visible.
</member>
diff --git a/doc/classes/VSlider.xml b/doc/classes/VSlider.xml
index 9394d6b430..5830c9eaf3 100644
--- a/doc/classes/VSlider.xml
+++ b/doc/classes/VSlider.xml
@@ -5,6 +5,7 @@
</brief_description>
<description>
Vertical slider. See [Slider]. This one goes from bottom (min) to top (max).
+ [b]Note:[/b] The [signal Range.changed] and [signal Range.value_changed] signals are part of the [Range] class which this class inherits from.
</description>
<tutorials>
</tutorials>
diff --git a/doc/classes/Vector2.xml b/doc/classes/Vector2.xml
index c0d8628d88..11716f511b 100644
--- a/doc/classes/Vector2.xml
+++ b/doc/classes/Vector2.xml
@@ -43,7 +43,8 @@
<return type="float">
</return>
<description>
- Returns this vector's angle with respect to the X axis, or [code](1, 0)[/code] vector, in radians.
+ Returns this vector's angle with respect to the positive X axis, or [code](1, 0)[/code] vector, in radians.
+ For example, [code]Vector2.RIGHT.angle()[/code] will return zero, [code]Vector2.DOWN.angle()[/code] will return [code]PI / 2[/code] (a quarter turn, or 90 degrees), and [code]Vector2(1, -1).angle()[/code] will return [code]-PI / 4[/code] (a negative eighth turn, or -45 degrees).
Equivalent to the result of [method @GDScript.atan2] when called with the vector's [member y] and [member x] as parameters: [code]atan2(y, x)[/code].
</description>
</method>
diff --git a/doc/translations/ar.po b/doc/translations/ar.po
index 2d20366804..eae5d09b38 100644
--- a/doc/translations/ar.po
+++ b/doc/translations/ar.po
@@ -90,8 +90,8 @@ msgstr ""
#: modules/gdscript/doc_classes/@GDScript.xml:55
msgid ""
-"Returns the absolute value of parameter [code]s[/code] (i.e. unsigned value, "
-"works for integer and float).\n"
+"Returns the absolute value of parameter [code]s[/code] (i.e. positive "
+"value).\n"
"[codeblock]\n"
"# a is 1\n"
"a = abs(-1)\n"
@@ -146,7 +146,7 @@ msgid ""
"angle from an angle's tangent in trigonometry: [code]atan(tan(angle)) == "
"angle[/code].\n"
"The method cannot know in which quadrant the angle should fall. See [method "
-"atan2] if you always want an exact angle.\n"
+"atan2] if you have both [code]y[/code] and [code]x[/code].\n"
"[codeblock]\n"
"a = atan(0.5) # a is 0.463648\n"
"[/codeblock]"
@@ -157,12 +157,13 @@ msgid ""
"Returns the arc tangent of [code]y/x[/code] in radians. Use to get the angle "
"of tangent [code]y/x[/code]. To compute the value, the method takes into "
"account the sign of both arguments in order to determine the quadrant.\n"
+"Important note: The Y coordinate comes first, by convention.\n"
"[codeblock]\n"
"a = atan2(0, -1) # a is 3.141593\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:143
+#: modules/gdscript/doc_classes/@GDScript.xml:144
msgid ""
"Decodes a byte array back to a value. When [code]allow_objects[/code] is "
"[code]true[/code] decoding objects is allowed.\n"
@@ -171,7 +172,7 @@ msgid ""
"avoid potential security threats (remote code execution)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:155
+#: modules/gdscript/doc_classes/@GDScript.xml:156
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:145
msgid ""
"Converts a 2D point expressed in the cartesian coordinate system (X and Y "
@@ -179,17 +180,17 @@ msgid ""
"angle)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:164
+#: modules/gdscript/doc_classes/@GDScript.xml:165
msgid ""
-"Rounds [code]s[/code] upward, returning the smallest integral value that is "
-"not less than [code]s[/code].\n"
+"Rounds [code]s[/code] upward (towards positive infinity), returning the "
+"smallest whole number that is not less than [code]s[/code].\n"
"[codeblock]\n"
"i = ceil(1.45) # i is 2\n"
"i = ceil(1.001) # i is 2\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:177
+#: modules/gdscript/doc_classes/@GDScript.xml:178
msgid ""
"Returns a character as a String of the given Unicode code point (which is "
"compatible with ASCII code).\n"
@@ -201,7 +202,7 @@ msgid ""
"This is the inverse of [method ord]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:196
+#: modules/gdscript/doc_classes/@GDScript.xml:197
msgid ""
"Clamps [code]value[/code] and returns a value not less than [code]min[/code] "
"and not more than [code]max[/code].\n"
@@ -216,7 +217,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:216
+#: modules/gdscript/doc_classes/@GDScript.xml:217
msgid ""
"Converts from a type to another in the best way possible. The [code]type[/"
"code] parameter uses the [enum Variant.Type] values.\n"
@@ -230,7 +231,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:233
+#: modules/gdscript/doc_classes/@GDScript.xml:234
msgid ""
"Returns the cosine of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -240,7 +241,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:247
+#: modules/gdscript/doc_classes/@GDScript.xml:248
msgid ""
"Returns the hyperbolic cosine of [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -249,11 +250,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:260
+#: modules/gdscript/doc_classes/@GDScript.xml:261
msgid "Converts from decibels to linear energy (audio)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:273
+#: modules/gdscript/doc_classes/@GDScript.xml:274
msgid ""
"Returns the result of [code]value[/code] decreased by [code]step[/code] * "
"[code]amount[/code].\n"
@@ -263,42 +264,44 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:286
+#: modules/gdscript/doc_classes/@GDScript.xml:287
msgid ""
-"Returns degrees converted to radians.\n"
+"Converts an angle expressed in degrees to radians.\n"
"[codeblock]\n"
"# r is 3.141593\n"
"r = deg2rad(180)\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:299
+#: modules/gdscript/doc_classes/@GDScript.xml:300
msgid ""
"Converts a previously converted instance to a dictionary, back into an "
"instance. Useful for deserializing."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:310
-#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:90
+#: modules/gdscript/doc_classes/@GDScript.xml:311
msgid ""
-"Easing function, based on exponent. 0 is constant, 1 is linear, 0 to 1 is "
-"ease-in, 1+ is ease out. Negative values are in-out/out in."
+"Easing function, based on exponent. The curve values are: 0 is constant, 1 "
+"is linear, 0 to 1 is ease-in, 1+ is ease out. Negative values are in-out/out "
+"in."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:319
+#: modules/gdscript/doc_classes/@GDScript.xml:320
msgid ""
"The natural exponential function. It raises the mathematical constant [b]e[/"
"b] to the power of [code]s[/code] and returns it.\n"
-"[b]e[/b] has an approximate value of 2.71828.\n"
+"[b]e[/b] has an approximate value of 2.71828, and can be obtained with "
+"[code]exp(1)[/code].\n"
"For exponents to other bases use the method [method pow].\n"
"[codeblock]\n"
"a = exp(2) # Approximately 7.39\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:333
+#: modules/gdscript/doc_classes/@GDScript.xml:334
msgid ""
-"Rounds [code]s[/code] to the closest smaller integer and returns it.\n"
+"Rounds [code]s[/code] downward (towards negative infinity), returning the "
+"largest whole number that is not more than [code]s[/code].\n"
"[codeblock]\n"
"# a is 2.0\n"
"a = floor(2.99)\n"
@@ -309,7 +312,7 @@ msgid ""
"use [code]int(s)[/code] directly."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:351
+#: modules/gdscript/doc_classes/@GDScript.xml:352
msgid ""
"Returns the floating-point remainder of [code]a/b[/code], keeping the sign "
"of [code]a[/code].\n"
@@ -320,7 +323,7 @@ msgid ""
"For the integer remainder operation, use the % operator."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:367
+#: modules/gdscript/doc_classes/@GDScript.xml:368
msgid ""
"Returns the floating-point modulus of [code]a/b[/code] that wraps equally in "
"positive and negative.\n"
@@ -346,7 +349,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:398
+#: modules/gdscript/doc_classes/@GDScript.xml:399
msgid ""
"Returns a reference to the specified function [code]funcname[/code] in the "
"[code]instance[/code] node. As functions aren't first-class objects in "
@@ -361,7 +364,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:412
+#: modules/gdscript/doc_classes/@GDScript.xml:413
msgid ""
"Returns an array of dictionaries representing the current call stack.\n"
"[codeblock]\n"
@@ -381,7 +384,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:435
+#: modules/gdscript/doc_classes/@GDScript.xml:436
msgid ""
"Returns the integer hash of the variable passed.\n"
"[codeblock]\n"
@@ -389,7 +392,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:447
+#: modules/gdscript/doc_classes/@GDScript.xml:448
msgid ""
"Returns the passed instance converted to a dictionary (useful for "
"serializing).\n"
@@ -407,7 +410,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:468
+#: modules/gdscript/doc_classes/@GDScript.xml:469
msgid ""
"Returns the Object that corresponds to [code]instance_id[/code]. All Objects "
"have a unique instance ID.\n"
@@ -420,7 +423,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:488
+#: modules/gdscript/doc_classes/@GDScript.xml:489
msgid ""
"Returns a normalized value considering the given range. This is the opposite "
"of [method lerp].\n"
@@ -434,33 +437,41 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:506
+#: modules/gdscript/doc_classes/@GDScript.xml:507
msgid ""
"Returns [code]true[/code] if [code]a[/code] and [code]b[/code] are "
-"approximately equal to each other."
+"approximately equal to each other.\n"
+"Here, approximately equal means that [code]a[/code] and [code]b[/code] are "
+"within a small internal epsilon of each other, which scales with the "
+"magnitude of the numbers.\n"
+"Infinity values of the same sign are considered equal."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:515
+#: modules/gdscript/doc_classes/@GDScript.xml:518
msgid ""
"Returns whether [code]s[/code] is an infinity value (either positive "
"infinity or negative infinity)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:524
+#: modules/gdscript/doc_classes/@GDScript.xml:527
msgid ""
"Returns whether [code]instance[/code] is a valid object (e.g. has not been "
"deleted from memory)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:533
-msgid "Returns whether [code]s[/code] is a NaN (Not-A-Number) value."
+#: modules/gdscript/doc_classes/@GDScript.xml:536
+msgid ""
+"Returns whether [code]s[/code] is a NaN (\"Not a Number\" or invalid) value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:542
-msgid "Returns [code]true[/code] if [code]s[/code] is zero or almost zero."
+#: modules/gdscript/doc_classes/@GDScript.xml:545
+msgid ""
+"Returns [code]true[/code] if [code]s[/code] is zero or almost zero.\n"
+"This method is faster than using [method is_equal_approx] with one value as "
+"zero."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:551
+#: modules/gdscript/doc_classes/@GDScript.xml:555
msgid ""
"Returns length of Variant [code]var[/code]. Length is the character count of "
"String, element count of Array, size of Dictionary, etc.\n"
@@ -471,7 +482,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:569
+#: modules/gdscript/doc_classes/@GDScript.xml:573
msgid ""
"Linearly interpolates between two values by a normalized value. This is the "
"opposite of [method inverse_lerp].\n"
@@ -486,7 +497,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:588
+#: modules/gdscript/doc_classes/@GDScript.xml:592
msgid ""
"Linearly interpolates between two angles (in radians) by a normalized "
"value.\n"
@@ -503,7 +514,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:607
+#: modules/gdscript/doc_classes/@GDScript.xml:611
msgid ""
"Converts from linear energy to decibels (audio). This can be used to "
"implement volume sliders that behave as expected (since volume isn't "
@@ -519,20 +530,28 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:622
+#: modules/gdscript/doc_classes/@GDScript.xml:626
msgid ""
-"Loads a resource from the filesystem located at [code]path[/code].\n"
+"Loads a resource from the filesystem located at [code]path[/code]. The "
+"resource is loaded on the method call (unless it's referenced already "
+"elsewhere, e.g. in another script or in the scene), which might cause slight "
+"delay, especially when loading scenes. To avoid unnecessary delays when "
+"loading something multiple times, either store the resource in a variable or "
+"use [method preload].\n"
"[b]Note:[/b] Resource paths can be obtained by right-clicking on a resource "
-"in the FileSystem dock and choosing [b]Copy Path[/b].\n"
+"in the FileSystem dock and choosing \"Copy Path\" or by dragging the file "
+"from the FileSystem dock into the script.\n"
"[codeblock]\n"
-"# Load a scene called main located in the root of the project directory.\n"
-"var main = load(\"res://main.tscn\")\n"
+"# Load a scene called main located in the root of the project directory and "
+"cache it in a variable.\n"
+"var main = load(\"res://main.tscn\") # main will contain a PackedScene "
+"resource.\n"
"[/codeblock]\n"
"[b]Important:[/b] The path must be absolute, a local path will just return "
"[code]null[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:637
+#: modules/gdscript/doc_classes/@GDScript.xml:641
msgid ""
"Natural logarithm. The amount of time needed to reach a certain level of "
"continuous growth.\n"
@@ -540,10 +559,12 @@ msgid ""
"calculators, which uses a base 10 logarithm.\n"
"[codeblock]\n"
"log(10) # Returns 2.302585\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] The logarithm of [code]0[/code] returns [code]-inf[/code], "
+"while negative values return [code]-nan[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:652
+#: modules/gdscript/doc_classes/@GDScript.xml:657
msgid ""
"Returns the maximum of two values.\n"
"[codeblock]\n"
@@ -552,7 +573,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:667
+#: modules/gdscript/doc_classes/@GDScript.xml:672
msgid ""
"Returns the minimum of two values.\n"
"[codeblock]\n"
@@ -561,27 +582,39 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:684
+#: modules/gdscript/doc_classes/@GDScript.xml:689
msgid ""
"Moves [code]from[/code] toward [code]to[/code] by the [code]delta[/code] "
"value.\n"
"Use a negative [code]delta[/code] value to move away.\n"
"[codeblock]\n"
+"move_toward(5, 10, 4) # Returns 9\n"
"move_toward(10, 5, 4) # Returns 6\n"
+"move_toward(10, 5, -1.5) # Returns 11.5\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:697
+#: modules/gdscript/doc_classes/@GDScript.xml:704
msgid ""
-"Returns the nearest larger power of 2 for integer [code]value[/code].\n"
+"Returns the nearest equal or larger power of 2 for integer [code]value[/"
+"code].\n"
+"In other words, returns the smallest value [code]a[/code] where [code]a = "
+"pow(2, n)[/code] such that [code]value <= a[/code] for some non-negative "
+"integer [code]n[/code].\n"
"[codeblock]\n"
"nearest_po2(3) # Returns 4\n"
"nearest_po2(4) # Returns 4\n"
"nearest_po2(5) # Returns 8\n"
-"[/codeblock]"
+"\n"
+"nearest_po2(0) # Returns 0 (this may not be what you expect)\n"
+"nearest_po2(-1) # Returns 0 (this may not be what you expect)\n"
+"[/codeblock]\n"
+"[b]WARNING:[/b] Due to the way it is implemented, this function returns "
+"[code]0[/code] rather than [code]1[/code] for non-positive values of "
+"[code]value[/code] (in reality, 1 is the smallest integer power of 2)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:711
+#: modules/gdscript/doc_classes/@GDScript.xml:723
msgid ""
"Returns an integer representing the Unicode code point of the given Unicode "
"character [code]char[/code].\n"
@@ -593,27 +626,28 @@ msgid ""
"This is the inverse of [method char]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:726
+#: modules/gdscript/doc_classes/@GDScript.xml:738
msgid ""
-"Parse JSON text to a Variant (use [method typeof] to check if it is what you "
-"expect).\n"
-"Be aware that the JSON specification does not define integer or float types, "
-"but only a number type. Therefore, parsing a JSON text will convert all "
-"numerical values to [float] types.\n"
-"Note that JSON objects do not preserve key order like Godot dictionaries, "
-"thus you should not rely on keys being in a certain order if a dictionary is "
-"constructed from JSON. In contrast, JSON arrays retain the order of their "
+"Parse JSON text to a Variant. (Use [method typeof] to check if the Variant's "
+"type is what you expect.)\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, parsing a JSON text will convert "
+"all numerical values to [float] types.\n"
+"[b]Note:[/b] JSON objects do not preserve key order like Godot dictionaries, "
+"thus, you should not rely on keys being in a certain order if a dictionary "
+"is constructed from JSON. In contrast, JSON arrays retain the order of their "
"elements:\n"
"[codeblock]\n"
-"p = parse_json('[\"a\", \"b\", \"c\"]')\n"
-"if typeof(p) == TYPE_ARRAY:\n"
-" print(p[0]) # Prints a\n"
+"var p = JSON.parse('[\"hello\", \"world\", \"!\"]')\n"
+"if typeof(p.result) == TYPE_ARRAY:\n"
+" print(p.result[0]) # Prints \"hello\"\n"
"else:\n"
-" print(\"unexpected results\")\n"
-"[/codeblock]"
+" push_error(\"Unexpected results.\")\n"
+"[/codeblock]\n"
+"See also [JSON] for an alternative way to parse JSON text."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:746
+#: modules/gdscript/doc_classes/@GDScript.xml:759
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:142
msgid ""
"Converts a 2D point expressed in the polar coordinate system (a distance "
@@ -621,7 +655,7 @@ msgid ""
"cartesian coordinate system (X and Y axis)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:757
+#: modules/gdscript/doc_classes/@GDScript.xml:770
msgid ""
"Returns the integer modulus of [code]a/b[/code] that wraps equally in "
"positive and negative.\n"
@@ -647,7 +681,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:788
+#: modules/gdscript/doc_classes/@GDScript.xml:801
msgid ""
"Returns the result of [code]x[/code] raised to the power of [code]y[/code].\n"
"[codeblock]\n"
@@ -655,19 +689,23 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:800
+#: modules/gdscript/doc_classes/@GDScript.xml:813
msgid ""
-"Returns a resource from the filesystem that is loaded during script "
-"parsing.\n"
+"Returns a [Resource] from the filesystem located at [code]path[/code]. The "
+"resource is loaded during script parsing, i.e. is loaded with the script and "
+"[method preload] effectively acts as a reference to that resource. Note that "
+"the method requires a constant path. If you want to load a resource from a "
+"dynamic/variable path, use [method load].\n"
"[b]Note:[/b] Resource paths can be obtained by right clicking on a resource "
-"in the Assets Panel and choosing \"Copy Path\".\n"
+"in the Assets Panel and choosing \"Copy Path\" or by dragging the file from "
+"the FileSystem dock into the script.\n"
"[codeblock]\n"
-"# Load a scene called main located in the root of the project directory.\n"
-"var main = preload(\"res://main.tscn\")\n"
+"# Instance a scene.\n"
+"var diamond = preload(\"res://diamond.tscn\").instance()\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:812
+#: modules/gdscript/doc_classes/@GDScript.xml:825
msgid ""
"Converts one or more arguments to strings in the best way possible and "
"prints them to the console.\n"
@@ -677,11 +715,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:823
+#: modules/gdscript/doc_classes/@GDScript.xml:836
msgid "Like [method print], but prints only when used in debug mode."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:830
+#: modules/gdscript/doc_classes/@GDScript.xml:843
msgid ""
"Prints a stack track at code location, only works when running with debugger "
"turned on.\n"
@@ -691,7 +729,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:841
+#: modules/gdscript/doc_classes/@GDScript.xml:854
msgid ""
"Prints one or more arguments to strings in the best way possible to standard "
"error line.\n"
@@ -700,7 +738,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:851
+#: modules/gdscript/doc_classes/@GDScript.xml:864
msgid ""
"Prints one or more arguments to strings in the best way possible to console. "
"No newline is added at the end.\n"
@@ -714,7 +752,7 @@ msgid ""
"method, such as [method print]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:864
+#: modules/gdscript/doc_classes/@GDScript.xml:877
msgid ""
"Prints one or more arguments to the console with a space between each "
"argument.\n"
@@ -723,7 +761,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:874
+#: modules/gdscript/doc_classes/@GDScript.xml:887
msgid ""
"Prints one or more arguments to the console with a tab between each "
"argument.\n"
@@ -732,7 +770,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:886
+#: modules/gdscript/doc_classes/@GDScript.xml:899
msgid ""
"Pushes an error message to Godot's built-in debugger and to the OS "
"terminal.\n"
@@ -742,7 +780,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:898
+#: modules/gdscript/doc_classes/@GDScript.xml:911
msgid ""
"Pushes a warning message to Godot's built-in debugger and to the OS "
"terminal.\n"
@@ -752,15 +790,15 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:910
+#: modules/gdscript/doc_classes/@GDScript.xml:923
msgid ""
-"Converts from radians to degrees.\n"
+"Converts an angle expressed in radians to degrees.\n"
"[codeblock]\n"
"rad2deg(0.523599) # Returns 30\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:924
+#: modules/gdscript/doc_classes/@GDScript.xml:937
msgid ""
"Random range, any floating point value between [code]from[/code] and "
"[code]to[/code].\n"
@@ -769,7 +807,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:936
+#: modules/gdscript/doc_classes/@GDScript.xml:949
msgid ""
"Random from seed: pass a [code]seed[/code], and an array with both number "
"and new seed is returned. \"Seed\" here refers to the internal state of the "
@@ -777,7 +815,7 @@ msgid ""
"implementation is 64 bits."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:943
+#: modules/gdscript/doc_classes/@GDScript.xml:956
msgid ""
"Returns a random floating point value on the interval [code][0, 1][/code].\n"
"[codeblock]\n"
@@ -785,7 +823,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:953
+#: modules/gdscript/doc_classes/@GDScript.xml:966
msgid ""
"Returns a random unsigned 32 bit integer. Use remainder to obtain a random "
"value in the interval [code][0, N - 1][/code] (where N is smaller than "
@@ -798,7 +836,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:966
+#: modules/gdscript/doc_classes/@GDScript.xml:979
msgid ""
"Randomizes the seed (or the internal state) of the random number generator. "
"Current implementation reseeds using a number based on time.\n"
@@ -808,7 +846,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:977
+#: modules/gdscript/doc_classes/@GDScript.xml:990
msgid ""
"Returns an array with the given range. Range can be 1 argument N (0 to N-1), "
"two arguments (initial, final-1) or three arguments (initial, final-1, "
@@ -838,7 +876,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1017
+#: modules/gdscript/doc_classes/@GDScript.xml:1030
msgid ""
"Maps a [code]value[/code] from range [code][istart, istop][/code] to [code]"
"[ostart, ostop][/code].\n"
@@ -847,16 +885,16 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1029
+#: modules/gdscript/doc_classes/@GDScript.xml:1042
msgid ""
-"Returns the integral value that is nearest to [code]s[/code], with halfway "
-"cases rounded away from zero.\n"
+"Rounds [code]s[/code] to the nearest whole number, with halfway cases "
+"rounded away from zero.\n"
"[codeblock]\n"
"round(2.6) # Returns 3\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1041
+#: modules/gdscript/doc_classes/@GDScript.xml:1054
msgid ""
"Sets seed for the random number generator.\n"
"[codeblock]\n"
@@ -865,7 +903,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1054
+#: modules/gdscript/doc_classes/@GDScript.xml:1067
msgid ""
"Returns the sign of [code]s[/code]: -1 or 1. Returns 0 if [code]s[/code] is "
"0.\n"
@@ -876,7 +914,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1068
+#: modules/gdscript/doc_classes/@GDScript.xml:1081
msgid ""
"Returns the sine of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -884,7 +922,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1080
+#: modules/gdscript/doc_classes/@GDScript.xml:1093
msgid ""
"Returns the hyperbolic sine of [code]s[/code].\n"
"[codeblock]\n"
@@ -893,27 +931,37 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1097
+#: modules/gdscript/doc_classes/@GDScript.xml:1110
msgid ""
-"Returns a number smoothly interpolated between the [code]from[/code] and "
-"[code]to[/code], based on the [code]weight[/code]. Similar to [method lerp], "
-"but interpolates faster at the beginning and slower at the end.\n"
+"Returns the result of smoothly interpolating the value of [code]s[/code] "
+"between [code]0[/code] and [code]1[/code], based on the where [code]s[/code] "
+"lies with respect to the edges [code]from[/code] and [code]to[/code].\n"
+"The return value is [code]0[/code] if [code]s <= from[/code], and [code]1[/"
+"code] if [code]s >= to[/code]. If [code]s[/code] lies between [code]from[/"
+"code] and [code]to[/code], the returned value follows an S-shaped curve that "
+"maps [code]s[/code] between [code]0[/code] and [code]1[/code].\n"
+"This S-shaped curve is the cubic Hermite interpolator, given by [code]f(s) = "
+"3*s^2 - 2*s^3[/code].\n"
"[codeblock]\n"
-"smoothstep(0, 2, 0.5) # Returns 0.15\n"
+"smoothstep(0, 2, -5.0) # Returns 0.0\n"
+"smoothstep(0, 2, 0.5) # Returns 0.15625\n"
"smoothstep(0, 2, 1.0) # Returns 0.5\n"
"smoothstep(0, 2, 2.0) # Returns 1.0\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1111
+#: modules/gdscript/doc_classes/@GDScript.xml:1127
msgid ""
-"Returns the square root of [code]s[/code].\n"
+"Returns the square root of [code]s[/code], where [code]s[/code] is a non-"
+"negative number.\n"
"[codeblock]\n"
"sqrt(9) # Returns 3\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b]Negative values of [code]s[/code] return NaN. If you need "
+"negative inputs, use [code]System.Numerics.Complex[/code] in C#."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1123
+#: modules/gdscript/doc_classes/@GDScript.xml:1140
msgid ""
"Returns the position of the first non-zero digit, after the decimal point. "
"Note that the maximum return value is 10, which is a design decision in the "
@@ -928,7 +976,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1142
+#: modules/gdscript/doc_classes/@GDScript.xml:1159
msgid ""
"Snaps float value [code]s[/code] to a given [code]step[/code]. This can also "
"be used to round a floating point number to an arbitrary number of "
@@ -939,7 +987,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1153
+#: modules/gdscript/doc_classes/@GDScript.xml:1170
msgid ""
"Converts one or more arguments to string in the best way possible.\n"
"[codeblock]\n"
@@ -950,7 +998,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1168
+#: modules/gdscript/doc_classes/@GDScript.xml:1185
msgid ""
"Converts a formatted string that was returned by [method var2str] to the "
"original value.\n"
@@ -961,7 +1009,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1182
+#: modules/gdscript/doc_classes/@GDScript.xml:1199
msgid ""
"Returns the tangent of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -969,7 +1017,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1194
+#: modules/gdscript/doc_classes/@GDScript.xml:1211
msgid ""
"Returns the hyperbolic tangent of [code]s[/code].\n"
"[codeblock]\n"
@@ -978,18 +1026,25 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1207
+#: modules/gdscript/doc_classes/@GDScript.xml:1224
msgid ""
-"Converts a Variant [code]var[/code] to JSON text and return the result. "
+"Converts a [Variant] [code]var[/code] to JSON text and return the result. "
"Useful for serializing data to store or send over the network.\n"
"[codeblock]\n"
+"# Both numbers below are integers.\n"
"a = { \"a\": 1, \"b\": 2 }\n"
"b = to_json(a)\n"
"print(b) # {\"a\":1, \"b\":2}\n"
-"[/codeblock]"
+"# Both numbers above are floats, even if they display without any decimal "
+"places.\n"
+"[/codeblock]\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, converting a [Variant] to JSON "
+"text will convert all numerical values to [float] types.\n"
+"See also [JSON] for an alternative way to convert a [Variant] to JSON text."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1221
+#: modules/gdscript/doc_classes/@GDScript.xml:1242
msgid ""
"Returns whether the given class exists in [ClassDB].\n"
"[codeblock]\n"
@@ -998,7 +1053,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1234
+#: modules/gdscript/doc_classes/@GDScript.xml:1255
msgid ""
"Returns the internal type of the given Variant object, using the [enum "
"Variant.Type] values.\n"
@@ -1011,7 +1066,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1250
+#: modules/gdscript/doc_classes/@GDScript.xml:1271
msgid ""
"Checks that [code]json[/code] is valid JSON data. Returns an empty string if "
"valid, or an error message otherwise.\n"
@@ -1019,20 +1074,20 @@ msgid ""
"j = to_json([1, 2, 3])\n"
"v = validate_json(j)\n"
"if not v:\n"
-" print(\"valid\")\n"
+" print(\"Valid JSON.\")\n"
"else:\n"
-" prints(\"invalid\", v)\n"
+" push_error(\"Invalid JSON: \" + v)\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1269
+#: modules/gdscript/doc_classes/@GDScript.xml:1290
msgid ""
"Encodes a variable value to a byte array. When [code]full_objects[/code] is "
"[code]true[/code] encoding objects is allowed (and can potentially include "
"code)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1278
+#: modules/gdscript/doc_classes/@GDScript.xml:1299
msgid ""
"Converts a Variant [code]var[/code] to a formatted string that can later be "
"parsed using [method str2var].\n"
@@ -1049,7 +1104,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1298
+#: modules/gdscript/doc_classes/@GDScript.xml:1319
msgid ""
"Returns a weak reference to an object.\n"
"A weak reference to an object is not enough to keep the object alive: when "
@@ -1059,135 +1114,67 @@ msgid ""
"reference may return the object even if there are no strong references to it."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1312
+#: modules/gdscript/doc_classes/@GDScript.xml:1333
msgid ""
"Wraps float [code]value[/code] between [code]min[/code] and [code]max[/"
"code].\n"
"Usable for creating loop-alike behavior or infinite surfaces.\n"
"[codeblock]\n"
-"# a is 0.5\n"
-"a = wrapf(10.5, 0.0, 10.0)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# a is 9.5\n"
-"a = wrapf(-0.5, 0.0, 10.0)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# Infinite loop between 0.0 and 0.99\n"
-"f = wrapf(f + 0.1, 0.0, 1.0)\n"
+"# Infinite loop between 5.0 and 9.9\n"
+"value = wrapf(value + 0.1, 5.0, 10.0)\n"
"[/codeblock]\n"
"[codeblock]\n"
"# Infinite rotation (in radians)\n"
"angle = wrapf(angle + 0.1, 0.0, TAU)\n"
"[/codeblock]\n"
-"[b]Note:[/b] If you just want to wrap between 0.0 and [code]n[/code] (where "
-"[code]n[/code] is a positive floating-point value), it is better for "
-"performance to use the [method fmod] method like [code]fmod(number, n)[/"
-"code].\n"
-"[code]wrapf[/code] is more flexible than using the [method fmod] approach by "
-"giving the user a simple control over the minimum value. It also fully "
-"supports negative numbers, e.g.\n"
"[codeblock]\n"
"# Infinite rotation (in radians)\n"
"angle = wrapf(angle + 0.1, -PI, PI)\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] If [code]min[/code] is [code]0[/code], this is equivalent to "
+"[method fposmod], so prefer using that instead.\n"
+"[code]wrapf[/code] is more flexible than using the [method fposmod] approach "
+"by giving the user control over the minimum value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1348
+#: modules/gdscript/doc_classes/@GDScript.xml:1361
msgid ""
"Wraps integer [code]value[/code] between [code]min[/code] and [code]max[/"
"code].\n"
"Usable for creating loop-alike behavior or infinite surfaces.\n"
"[codeblock]\n"
-"# a is 0\n"
-"a = wrapi(10, 0, 10)\n"
+"# Infinite loop between 5 and 9\n"
+"frame = wrapi(frame + 1, 5, 10)\n"
"[/codeblock]\n"
"[codeblock]\n"
-"# a is 9\n"
-"a = wrapi(-1, 0, 10)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# Infinite loop between 0 and 9\n"
-"frame = wrapi(frame + 1, 0, 10)\n"
-"[/codeblock]\n"
-"[b]Note:[/b] If you just want to wrap between 0 and [code]n[/code] (where "
-"[code]n[/code] is a positive integer value), it is better for performance to "
-"use the modulo operator like [code]number % n[/code].\n"
-"[code]wrapi[/code] is more flexible than using the modulo approach by giving "
-"the user a simple control over the minimum value. It also fully supports "
-"negative numbers, e.g.\n"
-"[codeblock]\n"
"# result is -2\n"
"var result = wrapi(-6, -5, -1)\n"
-"[/codeblock]"
-msgstr ""
-
-#: modules/gdscript/doc_classes/@GDScript.xml:1378
-msgid ""
-"Stops the function execution and returns the current suspended state to the "
-"calling function.\n"
-"From the caller, call [method GDScriptFunctionState.resume] on the state to "
-"resume execution. This invalidates the state. Within the resumed function, "
-"[code]yield()[/code] returns whatever was passed to the [code]resume()[/"
-"code] function call.\n"
-"If passed an object and a signal, the execution is resumed when the object "
-"emits the given signal. In this case, [code]yield()[/code] returns the "
-"argument passed to [code]emit_signal()[/code] if the signal takes only one "
-"argument, or an array containing all the arguments passed to "
-"[code]emit_signal()[/code] if the signal takes multiple arguments.\n"
-"You can also use [code]yield[/code] to wait for a function to finish:\n"
-"[codeblock]\n"
-"func _ready():\n"
-" yield(countdown(), \"completed\") # waiting for the countdown() function "
-"to complete\n"
-" print('Ready')\n"
-"\n"
-"func countdown():\n"
-" yield(get_tree(), \"idle_frame\") # returns a GDScriptFunctionState "
-"object to _ready()\n"
-" print(3)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-" print(2)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-" print(1)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-"\n"
-"# prints:\n"
-"# 3\n"
-"# 2\n"
-"# 1\n"
-"# Ready\n"
"[/codeblock]\n"
-"When yielding on a function, the [code]completed[/code] signal will be "
-"emitted automatically when the function returns. It can, therefore, be used "
-"as the [code]signal[/code] parameter of the [code]yield[/code] method to "
-"resume.\n"
-"In order to yield on a function, the resulting function should also return a "
-"[code]GDScriptFunctionState[/code]. Notice [code]yield(get_tree(), "
-"\"idle_frame\")[/code] from the above example."
+"[b]Note:[/b] If [code]min[/code] is [code]0[/code], this is equivalent to "
+"[method posmod], so prefer using that instead.\n"
+"[code]wrapi[/code] is more flexible than using the [method posmod] approach "
+"by giving the user control over the minimum value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1409
+#: modules/gdscript/doc_classes/@GDScript.xml:1378
msgid ""
"Constant that represents how many times the diameter of a circle fits around "
-"its perimeter."
+"its perimeter. This is equivalent to [code]TAU / 2[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1412
-msgid "The circle constant, the circumference of the unit circle."
+#: modules/gdscript/doc_classes/@GDScript.xml:1381
+msgid "The circle constant, the circumference of the unit circle in radians."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1415
-msgid "A positive infinity. (For negative infinity, use -INF)."
+#: modules/gdscript/doc_classes/@GDScript.xml:1384
+msgid "Positive infinity. For negative infinity, use -INF."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1418
+#: modules/gdscript/doc_classes/@GDScript.xml:1387
msgid ""
-"Macro constant that expands to an expression of type float that represents a "
-"NaN.\n"
-"The NaN values are used to identify undefined or non-representable values "
-"for floating-point elements, such as the square root of negative numbers or "
-"the result of 0/0."
+"\"Not a Number\", an invalid value. [code]NaN[/code] has special properties, "
+"including that it is not equal to itself. It is output by some invalid "
+"operations, such as dividing zero by zero."
msgstr ""
#: doc/classes/@GlobalScope.xml:4
@@ -3423,130 +3410,141 @@ msgid ""
msgstr ""
#: doc/classes/AABB.xml:10 doc/classes/Plane.xml:10 doc/classes/Rect2.xml:11
-#: doc/classes/Rect2i.xml:11 doc/classes/Transform.xml:10
+#: doc/classes/Rect2i.xml:11 doc/classes/Transform.xml:11
#: doc/classes/Vector2.xml:12 doc/classes/Vector2i.xml:12
#: doc/classes/Vector3.xml:12 doc/classes/Vector3i.xml:12
msgid "https://docs.godotengine.org/en/latest/tutorials/math/index.html"
msgstr ""
#: doc/classes/AABB.xml:21
-msgid "Optional constructor, accepts position and size."
+msgid "Constructs an [AABB] from a position and size."
msgstr ""
-#: doc/classes/AABB.xml:30
+#: doc/classes/AABB.xml:28
+msgid ""
+"Returns an AABB with equivalent position and size, modified so that the most-"
+"negative corner is the origin and the size is positive."
+msgstr ""
+
+#: doc/classes/AABB.xml:37
msgid ""
"Returns [code]true[/code] if this [AABB] completely encloses another one."
msgstr ""
-#: doc/classes/AABB.xml:39
+#: doc/classes/AABB.xml:46
msgid "Returns this [AABB] expanded to include a given point."
msgstr ""
-#: doc/classes/AABB.xml:46
+#: doc/classes/AABB.xml:53
msgid "Returns the volume of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:55
+#: doc/classes/AABB.xml:62
msgid "Gets the position of the 8 endpoints of the [AABB] in space."
msgstr ""
-#: doc/classes/AABB.xml:62
+#: doc/classes/AABB.xml:69
msgid "Returns the normalized longest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:69
+#: doc/classes/AABB.xml:76
msgid ""
"Returns the index of the longest axis of the [AABB] (according to "
"[Vector3]'s [code]AXIS_*[/code] constants)."
msgstr ""
-#: doc/classes/AABB.xml:76
+#: doc/classes/AABB.xml:83
msgid "Returns the scalar length of the longest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:83
+#: doc/classes/AABB.xml:90
msgid "Returns the normalized shortest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:90
+#: doc/classes/AABB.xml:97
msgid ""
"Returns the index of the shortest axis of the [AABB] (according to "
"[Vector3]::AXIS* enum)."
msgstr ""
-#: doc/classes/AABB.xml:97
+#: doc/classes/AABB.xml:104
msgid "Returns the scalar length of the shortest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:106
+#: doc/classes/AABB.xml:113
msgid ""
"Returns the support point in a given direction. This is useful for collision "
"detection algorithms."
msgstr ""
-#: doc/classes/AABB.xml:115
+#: doc/classes/AABB.xml:122
msgid ""
"Returns a copy of the [AABB] grown a given amount of units towards all the "
"sides."
msgstr ""
-#: doc/classes/AABB.xml:122
+#: doc/classes/AABB.xml:129
msgid "Returns [code]true[/code] if the [AABB] is flat or empty."
msgstr ""
-#: doc/classes/AABB.xml:129
+#: doc/classes/AABB.xml:136
msgid "Returns [code]true[/code] if the [AABB] is empty."
msgstr ""
-#: doc/classes/AABB.xml:138
+#: doc/classes/AABB.xml:145
msgid "Returns [code]true[/code] if the [AABB] contains a point."
msgstr ""
-#: doc/classes/AABB.xml:147
+#: doc/classes/AABB.xml:154
msgid ""
"Returns the intersection between two [AABB]. An empty AABB (size 0,0,0) is "
"returned on failure."
msgstr ""
-#: doc/classes/AABB.xml:156
+#: doc/classes/AABB.xml:163
msgid "Returns [code]true[/code] if the [AABB] overlaps with another."
msgstr ""
-#: doc/classes/AABB.xml:165
+#: doc/classes/AABB.xml:172
msgid "Returns [code]true[/code] if the [AABB] is on both sides of a plane."
msgstr ""
-#: doc/classes/AABB.xml:176
+#: doc/classes/AABB.xml:183
msgid ""
"Returns [code]true[/code] if the [AABB] intersects the line segment between "
"[code]from[/code] and [code]to[/code]."
msgstr ""
-#: doc/classes/AABB.xml:185
+#: doc/classes/AABB.xml:192
msgid ""
"Returns [code]true[/code] if this [AABB] and [code]aabb[/code] are "
"approximately equal, by calling [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/AABB.xml:194
+#: doc/classes/AABB.xml:201
msgid ""
"Returns a larger [AABB] that contains both this [AABB] and [code]with[/code]."
msgstr ""
-#: doc/classes/AABB.xml:200
+#: doc/classes/AABB.xml:207 doc/classes/Rect2.xml:174
+#: doc/classes/Rect2i.xml:163
msgid ""
-"Ending corner. This is calculated as [code]position + size[/code]. Changing "
-"this property changes [member size] accordingly."
+"Ending corner. This is calculated as [code]position + size[/code]. Setting "
+"this value will change the size."
msgstr ""
-#: doc/classes/AABB.xml:203
-msgid "Beginning corner."
+#: doc/classes/AABB.xml:210 doc/classes/Rect2.xml:177
+#: doc/classes/Rect2i.xml:166
+msgid "Beginning corner. Typically has values lower than [member end]."
msgstr ""
-#: doc/classes/AABB.xml:206 doc/classes/Rect2.xml:180
+#: doc/classes/AABB.xml:213 doc/classes/Rect2.xml:180
#: doc/classes/Rect2i.xml:169
-msgid "Size from position to end."
+msgid ""
+"Size from [member position] to [member end]. Typically all components are "
+"positive.\n"
+"If the size is negative, you can use [method abs] to fix it."
msgstr ""
#: doc/classes/AcceptDialog.xml:4
@@ -3610,11 +3608,11 @@ msgstr ""
msgid "The text displayed by the dialog."
msgstr ""
-#: doc/classes/AcceptDialog.xml:82
+#: doc/classes/AcceptDialog.xml:83
msgid "Emitted when the dialog is accepted, i.e. the OK button is pressed."
msgstr ""
-#: doc/classes/AcceptDialog.xml:89
+#: doc/classes/AcceptDialog.xml:90
msgid "Emitted when a custom button is pressed. See [method add_button]."
msgstr ""
@@ -3667,7 +3665,7 @@ msgstr ""
#: doc/classes/AESContext.xml:54
msgid ""
"Get the current IV state for this context (IV gets updated when calling "
-"[method update]). You normally don't need this funciton.\n"
+"[method update]). You normally don't need this function.\n"
"Note: This function only makes sense when the context is started with "
"[constant MODE_CBC_ENCRYPT] or [constant MODE_CBC_DECRYPT]."
msgstr ""
@@ -3745,12 +3743,14 @@ msgid "If [code]true[/code], texture will be centered."
msgstr ""
#: doc/classes/AnimatedSprite2D.xml:46 doc/classes/Sprite2D.xml:41
-#: doc/classes/SpriteBase3D.xml:61 doc/classes/TextureRect.xml:18
+#: doc/classes/SpriteBase3D.xml:61 doc/classes/TextureButton.xml:19
+#: doc/classes/TextureRect.xml:18
msgid "If [code]true[/code], texture is flipped horizontally."
msgstr ""
#: doc/classes/AnimatedSprite2D.xml:49 doc/classes/Sprite2D.xml:44
-#: doc/classes/SpriteBase3D.xml:64 doc/classes/TextureRect.xml:21
+#: doc/classes/SpriteBase3D.xml:64 doc/classes/TextureButton.xml:22
+#: doc/classes/TextureRect.xml:21
msgid "If [code]true[/code], texture is flipped vertically."
msgstr ""
@@ -3917,10 +3917,10 @@ msgid ""
"[codeblock]\n"
"# This creates an animation that makes the node \"Enemy\" move to the right "
"by\n"
-"# 100 pixels in 1 second.\n"
+"# 100 pixels in 0.5 seconds.\n"
"var animation = Animation.new()\n"
"var track_index = animation.add_track(Animation.TYPE_VALUE)\n"
-"animation.track_set_path(track_index, \"Enemy:position.x\")\n"
+"animation.track_set_path(track_index, \"Enemy:position:x\")\n"
"animation.track_insert_key(track_index, 0.0, 0)\n"
"animation.track_insert_key(track_index, 0.5, 100)\n"
"[/codeblock]\n"
@@ -6048,10 +6048,10 @@ msgstr ""
msgid ""
"Returns [code]true[/code] if the array contains the given value.\n"
"[codeblock]\n"
-"[\"inside\", 7].has(\"inside\") == true\n"
-"[\"inside\", 7].has(\"outside\") == false\n"
-"[\"inside\", 7].has(7) == true\n"
-"[\"inside\", 7].has(\"7\") == false\n"
+"print([\"inside\", 7].has(\"inside\")) # True\n"
+"print([\"inside\", 7].has(\"outside\")) # False\n"
+"print([\"inside\", 7].has(7)) # True\n"
+"print([\"inside\", 7].has(\"7\")) # False\n"
"[/codeblock]\n"
"[b]Note:[/b] This is equivalent to using the [code]in[/code] operator as "
"follows:\n"
@@ -6072,11 +6072,11 @@ msgid ""
"valid, or at the end of the array ([code]pos == size()[/code])."
msgstr ""
-#: doc/classes/Array.xml:265 doc/classes/PackedByteArray.xml:107
-#: doc/classes/PackedColorArray.xml:62 doc/classes/PackedFloat32Array.xml:63
-#: doc/classes/PackedFloat64Array.xml:63 doc/classes/PackedInt32Array.xml:63
-#: doc/classes/PackedInt64Array.xml:63 doc/classes/PackedStringArray.xml:62
-#: doc/classes/PackedVector2Array.xml:62 doc/classes/PackedVector3Array.xml:62
+#: doc/classes/Array.xml:265 doc/classes/PackedByteArray.xml:116
+#: doc/classes/PackedColorArray.xml:71 doc/classes/PackedFloat32Array.xml:72
+#: doc/classes/PackedFloat64Array.xml:72 doc/classes/PackedInt32Array.xml:72
+#: doc/classes/PackedInt64Array.xml:72 doc/classes/PackedStringArray.xml:71
+#: doc/classes/PackedVector2Array.xml:71 doc/classes/PackedVector3Array.xml:71
msgid "Reverses the order of the elements in the array."
msgstr ""
@@ -6106,8 +6106,8 @@ msgid ""
"code] if the array is empty."
msgstr ""
-#: doc/classes/Array.xml:302 doc/classes/PackedByteArray.xml:116
-#: doc/classes/PackedFloat32Array.xml:72 doc/classes/PackedFloat64Array.xml:72
+#: doc/classes/Array.xml:302 doc/classes/PackedByteArray.xml:125
+#: doc/classes/PackedFloat32Array.xml:81 doc/classes/PackedFloat64Array.xml:81
msgid "Appends an element at the end of the array."
msgstr ""
@@ -6115,11 +6115,11 @@ msgstr ""
msgid "Adds an element at the beginning of the array."
msgstr ""
-#: doc/classes/Array.xml:320 doc/classes/PackedByteArray.xml:125
-#: doc/classes/PackedColorArray.xml:80 doc/classes/PackedFloat32Array.xml:81
-#: doc/classes/PackedFloat64Array.xml:81 doc/classes/PackedInt32Array.xml:81
-#: doc/classes/PackedInt64Array.xml:81 doc/classes/PackedStringArray.xml:80
-#: doc/classes/PackedVector2Array.xml:80 doc/classes/PackedVector3Array.xml:80
+#: doc/classes/Array.xml:320 doc/classes/PackedByteArray.xml:134
+#: doc/classes/PackedColorArray.xml:89 doc/classes/PackedFloat32Array.xml:90
+#: doc/classes/PackedFloat64Array.xml:90 doc/classes/PackedInt32Array.xml:90
+#: doc/classes/PackedInt64Array.xml:90 doc/classes/PackedStringArray.xml:89
+#: doc/classes/PackedVector2Array.xml:89 doc/classes/PackedVector3Array.xml:89
msgid "Removes an element from the array by index."
msgstr ""
@@ -6402,7 +6402,7 @@ msgid ""
msgstr ""
#: doc/classes/ArrayMesh.xml:235 doc/classes/Mesh.xml:210
-#: doc/classes/RenderingServer.xml:3115
+#: doc/classes/RenderingServer.xml:3111
msgid "Represents the size of the [enum ArrayType] enum."
msgstr ""
@@ -8219,7 +8219,9 @@ msgid ""
msgstr ""
#: doc/classes/BaseButton.xml:16
-msgid "Called when the button is pressed."
+msgid ""
+"Called when the button is pressed. If you need to know the button's pressed "
+"state (and [member toggle_mode] is active), use [method _toggled] instead."
msgstr ""
#: doc/classes/BaseButton.xml:25
@@ -8313,43 +8315,45 @@ msgstr ""
msgid ""
"Emitted when the button is toggled or pressed. This is on [signal "
"button_down] if [member action_mode] is [constant ACTION_MODE_BUTTON_PRESS] "
-"and on [signal button_up] otherwise."
+"and on [signal button_up] otherwise.\n"
+"If you need to know the button's pressed state (and [member toggle_mode] is "
+"active), use [signal toggled] instead."
msgstr ""
-#: doc/classes/BaseButton.xml:98
+#: doc/classes/BaseButton.xml:99
msgid ""
"Emitted when the button was just toggled between pressed and normal states "
"(only if [member toggle_mode] is active). The new state is contained in the "
"[code]button_pressed[/code] argument."
msgstr ""
-#: doc/classes/BaseButton.xml:104
+#: doc/classes/BaseButton.xml:105
msgid ""
"The normal state (i.e. not pressed, not hovered, not toggled and enabled) of "
"buttons."
msgstr ""
-#: doc/classes/BaseButton.xml:107
+#: doc/classes/BaseButton.xml:108
msgid "The state of buttons are pressed."
msgstr ""
-#: doc/classes/BaseButton.xml:110
+#: doc/classes/BaseButton.xml:111
msgid "The state of buttons are hovered."
msgstr ""
-#: doc/classes/BaseButton.xml:113
+#: doc/classes/BaseButton.xml:114
msgid "The state of buttons are disabled."
msgstr ""
-#: doc/classes/BaseButton.xml:116
+#: doc/classes/BaseButton.xml:117
msgid "The state of buttons are both hovered and pressed."
msgstr ""
-#: doc/classes/BaseButton.xml:119
+#: doc/classes/BaseButton.xml:120
msgid "Require just a press to consider the button clicked."
msgstr ""
-#: doc/classes/BaseButton.xml:122
+#: doc/classes/BaseButton.xml:123
msgid ""
"Require a press and a subsequent release before considering the button "
"clicked."
@@ -9042,22 +9046,22 @@ msgstr ""
msgid "Represents the size of the [enum TextureParam] enum."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:451 doc/classes/RenderingServer.xml:3657
-#: doc/classes/Viewport.xml:390
+#: doc/classes/BaseMaterial3D.xml:451 doc/classes/RenderingServer.xml:3668
+#: doc/classes/Viewport.xml:393
msgid ""
"The texture filter reads from the nearest pixel only. The simplest and "
"fastest method of filtering, but the texture will look pixelized."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:454 doc/classes/RenderingServer.xml:3660
-#: doc/classes/Viewport.xml:393
+#: doc/classes/BaseMaterial3D.xml:454 doc/classes/RenderingServer.xml:3671
+#: doc/classes/Viewport.xml:396
msgid ""
"The texture filter blends between the nearest 4 pixels. Use this when you "
"want to avoid a pixelated style, but do not want mipmaps."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:457 doc/classes/RenderingServer.xml:3663
-#: doc/classes/Viewport.xml:396
+#: doc/classes/BaseMaterial3D.xml:457 doc/classes/RenderingServer.xml:3674
+#: doc/classes/Viewport.xml:399
msgid ""
"The texture filter reads from the nearest pixel in the nearest mipmap. The "
"fastest way to read from textures with mipmaps."
@@ -9070,14 +9074,14 @@ msgid ""
"smooth out pixels that are far from the camera."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:463 doc/classes/RenderingServer.xml:3669
+#: doc/classes/BaseMaterial3D.xml:463 doc/classes/RenderingServer.xml:3680
msgid ""
"The texture filter reads from the nearest pixel, but selects a mipmap based "
"on the angle between the surface and the camera view. This reduces artifacts "
"on surfaces that are almost in line with the camera."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:466 doc/classes/RenderingServer.xml:3672
+#: doc/classes/BaseMaterial3D.xml:466 doc/classes/RenderingServer.xml:3683
msgid ""
"The texture filter blends between the nearest 4 pixels and selects a mipmap "
"based on the angle between the surface and the camera view. This reduces "
@@ -9086,7 +9090,7 @@ msgid ""
"texturing."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:469 doc/classes/CanvasItem.xml:685
+#: doc/classes/BaseMaterial3D.xml:469 doc/classes/CanvasItem.xml:695
msgid "Represents the size of the [enum TextureFilter] enum."
msgstr ""
@@ -9309,8 +9313,8 @@ msgstr ""
msgid "Enables the shadow to opacity feature."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:622 doc/classes/RenderingServer.xml:3684
-#: doc/classes/Viewport.xml:408
+#: doc/classes/BaseMaterial3D.xml:622 doc/classes/RenderingServer.xml:3695
+#: doc/classes/Viewport.xml:411
msgid ""
"Enables the texture to repeat when UV coordinates are outside the 0-1 range. "
"If using one of the linear filtering modes, this can result in artifacts at "
@@ -9451,167 +9455,195 @@ msgstr ""
#: doc/classes/Basis.xml:7
msgid ""
-"3×3 matrix used for 3D rotation and scale. Contains 3 vector fields X, Y and "
-"Z as its columns, which can be interpreted as the local basis vectors of a "
-"transformation. Can also be accessed as array of 3D vectors. These vectors "
-"are orthogonal to each other, but are not necessarily normalized (due to "
-"scaling). Almost always used as an orthogonal basis for a [Transform].\n"
-"For such use, it is composed of a scaling and a rotation matrix, in that "
-"order (M = R.S)."
+"3×3 matrix used for 3D rotation and scale. Almost always used as an "
+"orthogonal basis for a Transform.\n"
+"Contains 3 vector fields X, Y and Z as its columns, which are typically "
+"interpreted as the local basis vectors of a transformation. For such use, it "
+"is composed of a scaling and a rotation matrix, in that order (M = R.S).\n"
+"Can also be accessed as array of 3D vectors. These vectors are normally "
+"orthogonal to each other, but are not necessarily normalized (due to "
+"scaling).\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
+msgstr ""
+
+#: doc/classes/Basis.xml:13 doc/classes/Transform.xml:12
+#: doc/classes/Transform2D.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/math/"
+"matrices_and_transforms.html"
msgstr ""
-#: doc/classes/Basis.xml:11 doc/classes/Transform.xml:11
+#: doc/classes/Basis.xml:14 doc/classes/Transform.xml:13
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/using_transforms.html"
msgstr ""
-#: doc/classes/Basis.xml:20
-msgid "Create a rotation matrix from the given quaternion."
+#: doc/classes/Basis.xml:23
+msgid "Constructs a pure rotation basis matrix from the given quaternion."
msgstr ""
-#: doc/classes/Basis.xml:29
+#: doc/classes/Basis.xml:32
msgid ""
-"Create a rotation matrix (in the YXZ convention: first Z, then X, and Y "
-"last) from the specified Euler angles, given in the vector format as (X "
-"angle, Y angle, Z angle)."
+"Constructs a pure rotation basis matrix from the given Euler angles (in the "
+"YXZ convention: when *composing*, first Y, then X, and Z last), given in the "
+"vector format as (X angle, Y angle, Z angle).\n"
+"Consider using the [Quat] constructor instead, which uses a quaternion "
+"instead of Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:40
+#: doc/classes/Basis.xml:44
msgid ""
-"Create a rotation matrix which rotates around the given axis by the "
-"specified angle, in radians. The axis must be a normalized vector."
+"Constructs a pure rotation basis matrix, rotated around the given "
+"[code]axis[/code] by [code]phi[/code], in radians. The axis must be a "
+"normalized vector."
msgstr ""
-#: doc/classes/Basis.xml:53
-msgid "Create a matrix from 3 axis vectors."
+#: doc/classes/Basis.xml:57
+msgid "Constructs a basis matrix from 3 axis vectors (matrix columns)."
msgstr ""
-#: doc/classes/Basis.xml:60
-msgid "Returns the determinant of the matrix."
+#: doc/classes/Basis.xml:64
+msgid ""
+"Returns the determinant of the basis matrix. If the basis is uniformly "
+"scaled, its determinant is the square of the scale.\n"
+"A negative determinant means the basis has a negative scale. A zero "
+"determinant means the basis isn't invertible, and is usually considered "
+"invalid."
msgstr ""
-#: doc/classes/Basis.xml:67
+#: doc/classes/Basis.xml:72
msgid ""
"Returns the basis's rotation in the form of Euler angles (in the YXZ "
-"convention: first Z, then X, and Y last). The returned vector contains the "
-"rotation angles in the format (X angle, Y angle, Z angle). See [method "
-"get_rotation_quat] if you need a quaternion instead."
+"convention: when decomposing, first Z, then X, and Y last). The returned "
+"vector contains the rotation angles in the format (X angle, Y angle, Z "
+"angle).\n"
+"Consider using the [method get_rotation_quat] method instead, which returns "
+"a [Quat] quaternion instead of Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:74
+#: doc/classes/Basis.xml:80
msgid ""
"This function considers a discretization of rotations into 24 points on unit "
"sphere, lying along the vectors (x,y,z) with each component being either -1, "
"0, or 1, and returns the index of the point best representing the "
-"orientation of the object. It is mainly used by the grid map editor. For "
+"orientation of the object. It is mainly used by the [GridMap] editor. For "
"further details, refer to the Godot source code."
msgstr ""
-#: doc/classes/Basis.xml:81
+#: doc/classes/Basis.xml:87
msgid ""
"Returns the basis's rotation in the form of a quaternion. See [method "
"get_euler] if you need Euler angles, but keep in mind quaternions should "
"generally be preferred to Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:88
+#: doc/classes/Basis.xml:94
msgid ""
"Assuming that the matrix is the combination of a rotation and scaling, "
"return the absolute value of scaling factors along each axis."
msgstr ""
-#: doc/classes/Basis.xml:95 doc/classes/Transform2D.xml:49
+#: doc/classes/Basis.xml:101
msgid "Returns the inverse of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:106
+#: doc/classes/Basis.xml:112
msgid ""
"Returns [code]true[/code] if this basis and [code]b[/code] are approximately "
"equal, by calling [code]is_equal_approx[/code] on each component."
msgstr ""
-#: doc/classes/Basis.xml:113
+#: doc/classes/Basis.xml:119
msgid ""
"Returns the orthonormalized version of the matrix (useful to call from time "
"to time to avoid rounding error for orthogonal matrices). This performs a "
"Gram-Schmidt orthonormalization on the basis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:124
+#: doc/classes/Basis.xml:130
msgid ""
"Introduce an additional rotation around the given axis by phi (radians). The "
"axis must be a normalized vector."
msgstr ""
-#: doc/classes/Basis.xml:133
+#: doc/classes/Basis.xml:139
msgid ""
"Introduce an additional scaling specified by the given 3D scaling factor."
msgstr ""
-#: doc/classes/Basis.xml:144
+#: doc/classes/Basis.xml:150
msgid ""
"Assuming that the matrix is a proper rotation matrix, slerp performs a "
"spherical-linear interpolation with another rotation matrix."
msgstr ""
-#: doc/classes/Basis.xml:153
+#: doc/classes/Basis.xml:159
msgid "Transposed dot product with the X axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:162
+#: doc/classes/Basis.xml:168
msgid "Transposed dot product with the Y axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:171
+#: doc/classes/Basis.xml:177
msgid "Transposed dot product with the Z axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:178
+#: doc/classes/Basis.xml:184
msgid "Returns the transposed version of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:187
+#: doc/classes/Basis.xml:193
msgid "Returns a vector transformed (multiplied) by the matrix."
msgstr ""
-#: doc/classes/Basis.xml:196
+#: doc/classes/Basis.xml:202
msgid ""
-"Returns a vector transformed (multiplied) by the transposed matrix.\n"
+"Returns a vector transformed (multiplied) by the transposed basis matrix.\n"
"[b]Note:[/b] This results in a multiplication by the inverse of the matrix "
"only if it represents a rotation-reflection."
msgstr ""
-#: doc/classes/Basis.xml:203
-msgid "The basis matrix's X vector."
+#: doc/classes/Basis.xml:209 doc/classes/Transform2D.xml:181
+msgid ""
+"The basis matrix's X vector (column 0). Equivalent to array index [code]0[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:206
-msgid "The basis matrix's Y vector."
+#: doc/classes/Basis.xml:212 doc/classes/Transform2D.xml:184
+msgid ""
+"The basis matrix's Y vector (column 1). Equivalent to array index [code]1[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:209
-msgid "The basis matrix's Z vector."
+#: doc/classes/Basis.xml:215
+msgid ""
+"The basis matrix's Z vector (column 2). Equivalent to array index [code]2[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:214
+#: doc/classes/Basis.xml:220
msgid ""
-"The identity basis. This is identical to calling [code]Basis()[/code] "
-"without any parameters. This constant can be used to make your code clearer."
+"The identity basis, with no rotation or scaling applied.\n"
+"This is identical to calling [code]Basis()[/code] without any parameters. "
+"This constant can be used to make your code clearer, and for consistency "
+"with C#."
msgstr ""
-#: doc/classes/Basis.xml:217
+#: doc/classes/Basis.xml:224
msgid ""
"The basis that will flip something along the X axis when used in a "
"transformation."
msgstr ""
-#: doc/classes/Basis.xml:220
+#: doc/classes/Basis.xml:227
msgid ""
"The basis that will flip something along the Y axis when used in a "
"transformation."
msgstr ""
-#: doc/classes/Basis.xml:223
+#: doc/classes/Basis.xml:230
msgid ""
"The basis that will flip something along the Z axis when used in a "
"transformation."
@@ -9924,97 +9956,111 @@ msgstr ""
#: doc/classes/Button.xml:7
msgid ""
"Button is the standard themed button. It can contain text and an icon, and "
-"will display them according to the current [Theme]."
+"will display them according to the current [Theme].\n"
+"[b]Example of creating a button and assigning an action when pressed by code:"
+"[/b]\n"
+"[codeblock]\n"
+"func _ready():\n"
+" var button = Button.new()\n"
+" button.text = \"Click me\"\n"
+" button.connect(\"pressed\", self, \"_button_pressed\")\n"
+" add_child(button)\n"
+"\n"
+"func _button_pressed():\n"
+" print(\"Hello world!\")\n"
+"[/codeblock]\n"
+"Buttons (like all Control nodes) can also be created in the editor, but some "
+"situations may require creating them from code."
msgstr ""
-#: doc/classes/Button.xml:15
+#: doc/classes/Button.xml:27
msgid ""
"Text alignment policy for the button's text, use one of the [enum TextAlign] "
"constants."
msgstr ""
-#: doc/classes/Button.xml:18
+#: doc/classes/Button.xml:30
msgid ""
"When this property is enabled, text that is too large to fit the button is "
"clipped, when disabled the Button will always be wide enough to hold the "
"text."
msgstr ""
-#: doc/classes/Button.xml:21
+#: doc/classes/Button.xml:33
msgid ""
"When enabled, the button's icon will expand/shrink to fit the button's size "
"while keeping its aspect."
msgstr ""
-#: doc/classes/Button.xml:24
+#: doc/classes/Button.xml:36
msgid "Flat buttons don't display decoration."
msgstr ""
-#: doc/classes/Button.xml:27
+#: doc/classes/Button.xml:39
msgid ""
"Button's icon, if text is present the icon will be placed before the text."
msgstr ""
-#: doc/classes/Button.xml:30 doc/classes/LinkButton.xml:18
+#: doc/classes/Button.xml:42 doc/classes/LinkButton.xml:18
msgid "The button's text that will be displayed inside the button's area."
msgstr ""
-#: doc/classes/Button.xml:35
+#: doc/classes/Button.xml:47
msgid "Align the text to the left."
msgstr ""
-#: doc/classes/Button.xml:38
+#: doc/classes/Button.xml:50
msgid "Align the text to the center."
msgstr ""
-#: doc/classes/Button.xml:41
+#: doc/classes/Button.xml:53
msgid "Align the text to the right."
msgstr ""
-#: doc/classes/Button.xml:46
+#: doc/classes/Button.xml:58
msgid "[StyleBox] used when the [Button] is disabled."
msgstr ""
-#: doc/classes/Button.xml:49
+#: doc/classes/Button.xml:61
msgid ""
"[StyleBox] used when the [Button] is focused. It is displayed over the "
"current [StyleBox], so using [StyleBoxEmpty] will just disable the focus "
"visual effect."
msgstr ""
-#: doc/classes/Button.xml:52
+#: doc/classes/Button.xml:64
msgid "[Font] of the [Button]'s text."
msgstr ""
-#: doc/classes/Button.xml:55
+#: doc/classes/Button.xml:67
msgid "Default text [Color] of the [Button]."
msgstr ""
-#: doc/classes/Button.xml:58
+#: doc/classes/Button.xml:70
msgid "Text [Color] used when the [Button] is disabled."
msgstr ""
-#: doc/classes/Button.xml:61
+#: doc/classes/Button.xml:73
msgid "Text [Color] used when the [Button] is being hovered."
msgstr ""
-#: doc/classes/Button.xml:64
+#: doc/classes/Button.xml:76
msgid "Text [Color] used when the [Button] is being pressed."
msgstr ""
-#: doc/classes/Button.xml:67
+#: doc/classes/Button.xml:79
msgid "[StyleBox] used when the [Button] is being hovered."
msgstr ""
-#: doc/classes/Button.xml:70
+#: doc/classes/Button.xml:82
msgid "The horizontal space between [Button]'s icon and text."
msgstr ""
-#: doc/classes/Button.xml:73
+#: doc/classes/Button.xml:85
msgid "Default [StyleBox] for the [Button]."
msgstr ""
-#: doc/classes/Button.xml:76
+#: doc/classes/Button.xml:88
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr ""
@@ -10666,7 +10712,7 @@ msgstr ""
#: doc/classes/CameraEffects.xml:37
msgid ""
"The exposure override value to use. Higher values will result in a brighter "
-"scene. Only effective if [member override_exposure_enable] is [code]true[/"
+"scene. Only effective if [member override_exposure_enabled] is [code]true[/"
"code]."
msgstr ""
@@ -10920,265 +10966,282 @@ msgid ""
msgstr ""
#: doc/classes/CanvasItem.xml:319
-msgid "Draws a string using a custom font."
+msgid ""
+"Draws [code]text[/code] using the specified [code]font[/code] at the "
+"[code]position[/code] (top-left corner). The text will have its color "
+"multiplied by [code]modulate[/code]. If [code]clip_w[/code] is greater than "
+"or equal to 0, the text will be clipped if it exceeds the specified width.\n"
+"[b]Example using the default project font:[/b]\n"
+"[codeblock]\n"
+"# If using this method in a script that redraws constantly, move the\n"
+"# `default_font` declaration to a member variable assigned in `_ready()`\n"
+"# so the Control is only created once.\n"
+"var default_font = Control.new().get_font(\"font\")\n"
+"draw_string(default_font, Vector2(64, 64), \"Hello world\")\n"
+"[/codeblock]\n"
+"See also [method Font.draw]."
msgstr ""
-#: doc/classes/CanvasItem.xml:330
+#: doc/classes/CanvasItem.xml:339
msgid "Draws a styled rectangle."
msgstr ""
-#: doc/classes/CanvasItem.xml:353
+#: doc/classes/CanvasItem.xml:362
msgid "Draws a texture at a given position."
msgstr ""
-#: doc/classes/CanvasItem.xml:380
+#: doc/classes/CanvasItem.xml:389
msgid ""
"Draws a textured rectangle at a given position, optionally modulated by a "
"color. If [code]transpose[/code] is [code]true[/code], the texture will have "
"its X and Y coordinates swapped."
msgstr ""
-#: doc/classes/CanvasItem.xml:409
+#: doc/classes/CanvasItem.xml:418
msgid ""
"Draws a textured rectangle region at a given position, optionally modulated "
"by a color. If [code]transpose[/code] is [code]true[/code], the texture will "
"have its X and Y coordinates swapped."
msgstr ""
-#: doc/classes/CanvasItem.xml:416 doc/classes/Node3D.xml:19
+#: doc/classes/CanvasItem.xml:425 doc/classes/Node3D.xml:19
msgid ""
"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."
msgstr ""
-#: doc/classes/CanvasItem.xml:423
+#: doc/classes/CanvasItem.xml:432
msgid "Returns the [RID] of the [World2D] canvas where this item is in."
msgstr ""
-#: doc/classes/CanvasItem.xml:430
+#: doc/classes/CanvasItem.xml:439
msgid "Returns the canvas item RID used by [RenderingServer] for this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:437
+#: doc/classes/CanvasItem.xml:446
msgid "Returns the transform matrix of this item's canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:444
+#: doc/classes/CanvasItem.xml:453
msgid "Returns the global position of the mouse."
msgstr ""
-#: doc/classes/CanvasItem.xml:451
+#: doc/classes/CanvasItem.xml:460
msgid "Returns the global transform matrix of this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:458
+#: doc/classes/CanvasItem.xml:467
msgid ""
"Returns the global transform matrix of this item in relation to the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:465
+#: doc/classes/CanvasItem.xml:474
msgid "Returns the mouse position relative to this item's position."
msgstr ""
-#: doc/classes/CanvasItem.xml:472
+#: doc/classes/CanvasItem.xml:481
msgid "Returns the transform matrix of this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:479
+#: doc/classes/CanvasItem.xml:488
msgid "Returns the viewport's boundaries as a [Rect2]."
msgstr ""
-#: doc/classes/CanvasItem.xml:486
+#: doc/classes/CanvasItem.xml:495
msgid "Returns this item's transform in relation to the viewport."
msgstr ""
-#: doc/classes/CanvasItem.xml:493
+#: doc/classes/CanvasItem.xml:502
msgid "Returns the [World2D] where this item is in."
msgstr ""
-#: doc/classes/CanvasItem.xml:500
+#: doc/classes/CanvasItem.xml:509
msgid "Hide the [CanvasItem] if it's currently visible."
msgstr ""
-#: doc/classes/CanvasItem.xml:507
+#: doc/classes/CanvasItem.xml:516
msgid ""
"Returns [code]true[/code] if local transform notifications are communicated "
"to children."
msgstr ""
-#: doc/classes/CanvasItem.xml:514
+#: doc/classes/CanvasItem.xml:523
msgid ""
"Returns [code]true[/code] if the node is set as top-level. See [method "
"set_as_toplevel]."
msgstr ""
-#: doc/classes/CanvasItem.xml:521
+#: doc/classes/CanvasItem.xml:530
msgid ""
"Returns [code]true[/code] if global transform notifications are communicated "
"to children."
msgstr ""
-#: doc/classes/CanvasItem.xml:528
+#: doc/classes/CanvasItem.xml:537 doc/classes/Node3D.xml:104
msgid ""
"Returns [code]true[/code] if the node is present in the [SceneTree], its "
-"[member visible] property is [code]true[/code] and its inherited visibility "
-"is also [code]true[/code]."
+"[member visible] property is [code]true[/code] and all its antecedents are "
+"also visible. If any antecedent is hidden, this node will not be visible in "
+"the scene tree."
msgstr ""
-#: doc/classes/CanvasItem.xml:537
+#: doc/classes/CanvasItem.xml:546
msgid "Assigns [code]screen_point[/code] as this node's new local transform."
msgstr ""
-#: doc/classes/CanvasItem.xml:546
+#: doc/classes/CanvasItem.xml:555
msgid ""
"Transformations issued by [code]event[/code]'s inputs are applied in local "
"space instead of global space."
msgstr ""
-#: doc/classes/CanvasItem.xml:555
+#: doc/classes/CanvasItem.xml:564
msgid ""
"If [code]enable[/code] is [code]true[/code], the node won't inherit its "
"transform from parent canvas items."
msgstr ""
-#: doc/classes/CanvasItem.xml:564
+#: doc/classes/CanvasItem.xml:573
msgid ""
"If [code]enable[/code] is [code]true[/code], children will be updated with "
"local transform data."
msgstr ""
-#: doc/classes/CanvasItem.xml:573
+#: doc/classes/CanvasItem.xml:582
msgid ""
"If [code]enable[/code] is [code]true[/code], children will be updated with "
"global transform data."
msgstr ""
-#: doc/classes/CanvasItem.xml:580
+#: doc/classes/CanvasItem.xml:589
msgid ""
"Show the [CanvasItem] if it's currently hidden. For controls that inherit "
"[Popup], the correct way to make them visible is to call one of the multiple "
"[code]popup*()[/code] functions instead."
msgstr ""
-#: doc/classes/CanvasItem.xml:587
+#: doc/classes/CanvasItem.xml:596
msgid ""
"Queue the [CanvasItem] for update. [constant NOTIFICATION_DRAW] will be "
"called on idle time to request redraw."
msgstr ""
-#: doc/classes/CanvasItem.xml:593
+#: doc/classes/CanvasItem.xml:602
msgid ""
"The rendering layers in which this [CanvasItem] responds to [Light2D] nodes."
msgstr ""
-#: doc/classes/CanvasItem.xml:596
+#: doc/classes/CanvasItem.xml:605
msgid "The material applied to textures on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:599
+#: doc/classes/CanvasItem.xml:608
msgid "The color applied to textures on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:602
+#: doc/classes/CanvasItem.xml:611
msgid ""
"The color applied to textures on this [CanvasItem]. This is not inherited by "
"children [CanvasItem]s."
msgstr ""
-#: doc/classes/CanvasItem.xml:605
+#: doc/classes/CanvasItem.xml:614
msgid "If [code]true[/code], the object draws behind its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:608
+#: doc/classes/CanvasItem.xml:617
msgid "If [code]true[/code], the object draws on top of its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:611
+#: doc/classes/CanvasItem.xml:620
msgid "The texture filtering mode to use on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:614
+#: doc/classes/CanvasItem.xml:623
msgid "The texture repeating mode to use on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:617
+#: doc/classes/CanvasItem.xml:626
msgid ""
"If [code]true[/code], the parent [CanvasItem]'s [member material] property "
"is used as this one's material."
msgstr ""
-#: doc/classes/CanvasItem.xml:620
+#: doc/classes/CanvasItem.xml:629
msgid ""
-"If [code]true[/code], this [CanvasItem] is drawn. For controls that inherit "
-"[Popup], the correct way to make them visible is to call one of the multiple "
-"[code]popup*()[/code] functions instead."
+"If [code]true[/code], this [CanvasItem] is drawn. The node is only visible "
+"if all of its antecedents are visible as well (in other words, [method "
+"is_visible_in_tree] must return [code]true[/code]).\n"
+"[b]Note:[/b] For controls that inherit [Popup], the correct way to make them "
+"visible is to call one of the multiple [code]popup*()[/code] functions "
+"instead."
msgstr ""
-#: doc/classes/CanvasItem.xml:626
+#: doc/classes/CanvasItem.xml:636
msgid ""
"Emitted when the [CanvasItem] must redraw. This can only be connected "
"realtime, as deferred will not allow drawing."
msgstr ""
-#: doc/classes/CanvasItem.xml:631
+#: doc/classes/CanvasItem.xml:641
msgid "Emitted when becoming hidden."
msgstr ""
-#: doc/classes/CanvasItem.xml:636
+#: doc/classes/CanvasItem.xml:646
msgid "Emitted when the item rect has changed."
msgstr ""
-#: doc/classes/CanvasItem.xml:641
+#: doc/classes/CanvasItem.xml:651
msgid "Emitted when the visibility (hidden/visible) changes."
msgstr ""
-#: doc/classes/CanvasItem.xml:647
+#: doc/classes/CanvasItem.xml:657
msgid ""
"The [CanvasItem]'s transform has changed. This notification is only received "
"if enabled by [method set_notify_transform] or [method "
"set_notify_local_transform]."
msgstr ""
-#: doc/classes/CanvasItem.xml:650
+#: doc/classes/CanvasItem.xml:660
msgid "The [CanvasItem] is requested to draw."
msgstr ""
-#: doc/classes/CanvasItem.xml:653
+#: doc/classes/CanvasItem.xml:663
msgid "The [CanvasItem]'s visibility has changed."
msgstr ""
-#: doc/classes/CanvasItem.xml:656
+#: doc/classes/CanvasItem.xml:666
msgid "The [CanvasItem] has entered the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:659
+#: doc/classes/CanvasItem.xml:669
msgid "The [CanvasItem] has exited the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:662 doc/classes/CanvasItem.xml:688
+#: doc/classes/CanvasItem.xml:672 doc/classes/CanvasItem.xml:698
msgid "The [CanvasItem] will inherit the filter from its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:665
+#: doc/classes/CanvasItem.xml:675
msgid ""
"The texture filter reads from the nearest pixel only. The simplest and "
"fastest method of filtering. Useful for pixel art."
msgstr ""
-#: doc/classes/CanvasItem.xml:668
+#: doc/classes/CanvasItem.xml:678
msgid ""
"The texture filter blends between the nearest four pixels. Use this for most "
"cases where you want to avoid a pixelated style."
msgstr ""
-#: doc/classes/CanvasItem.xml:671
+#: doc/classes/CanvasItem.xml:681
msgid ""
"The texture filter reads from the nearest pixel in the nearest mipmap. This "
"is the fastest way to read from textures with mipmaps."
msgstr ""
-#: doc/classes/CanvasItem.xml:674
+#: doc/classes/CanvasItem.xml:684
msgid ""
"The texture filter blends between the nearest 4 pixels and between the "
"nearest 2 mipmaps. Use this for non-pixel art textures that may be viewed at "
@@ -11186,7 +11249,7 @@ msgid ""
"smooth out pixels that are smaller than on-screen pixels."
msgstr ""
-#: doc/classes/CanvasItem.xml:677
+#: doc/classes/CanvasItem.xml:687
msgid ""
"The texture filter reads from the nearest pixel, but selects a mipmap based "
"on the angle between the surface and the camera view. This reduces artifacts "
@@ -11195,7 +11258,7 @@ msgid ""
"TEXTURE_FILTER_NEAREST_WITH_MIPMAPS] is usually more appropriate."
msgstr ""
-#: doc/classes/CanvasItem.xml:681
+#: doc/classes/CanvasItem.xml:691
msgid ""
"The texture filter blends between the nearest 4 pixels and selects a mipmap "
"based on the angle between the surface and the camera view. This reduces "
@@ -11206,21 +11269,21 @@ msgid ""
"TEXTURE_FILTER_LINEAR_WITH_MIPMAPS] is usually more appropriate."
msgstr ""
-#: doc/classes/CanvasItem.xml:691
+#: doc/classes/CanvasItem.xml:701
msgid "Texture will not repeat."
msgstr ""
-#: doc/classes/CanvasItem.xml:694
+#: doc/classes/CanvasItem.xml:704
msgid "Texture will repeat normally."
msgstr ""
-#: doc/classes/CanvasItem.xml:697
+#: doc/classes/CanvasItem.xml:707
msgid ""
"Texture will repeat in a 2x2 tiled mode, where elements at even positions "
"are mirrored."
msgstr ""
-#: doc/classes/CanvasItem.xml:700
+#: doc/classes/CanvasItem.xml:710
msgid "Represents the size of the [enum TextureRepeat] enum."
msgstr ""
@@ -12293,16 +12356,15 @@ msgid ""
msgstr ""
#: doc/classes/Color.xml:4
-msgid "Color in RGBA format with some support for ARGB format."
+msgid "Color in RGBA format using floats on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:7
msgid ""
-"A color is represented by red, green, and blue [code](r, g, b)[/code] "
-"components. Additionally, [code]a[/code] represents the alpha component, "
-"often used for transparency. Values are in floating-point and usually range "
-"from 0 to 1. Some properties (such as [member CanvasItem.modulate]) may "
-"accept values greater than 1.\n"
+"A color represented by red, green, blue, and alpha (RGBA) components. The "
+"alpha component is often used for transparency. Values are in floating-point "
+"and usually range from 0 to 1. Some properties (such as CanvasItem.modulate) "
+"may accept values greater than 1 (overbright or HDR colors).\n"
"You can also create a color from standardized color names by using [method "
"@GDScript.ColorN] or directly using the color constants defined here. The "
"standardized color set is based on the [url=https://en.wikipedia.org/wiki/"
@@ -12516,47 +12578,48 @@ msgid ""
msgstr ""
#: doc/classes/Color.xml:280
-msgid "Alpha value (range 0 to 1)."
+msgid ""
+"The color's alpha (transparency) component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:283
-msgid "Alpha value (range 0 to 255)."
+msgid "Wrapper for [member a] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:286
-msgid "Blue value (range 0 to 1)."
+msgid "The color's blue component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:289
-msgid "Blue value (range 0 to 255)."
+msgid "Wrapper for [member b] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:292
-msgid "Green value (range 0 to 1)."
+msgid "The color's green component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:295
-msgid "Green value (range 0 to 255)."
+msgid "Wrapper for [member g] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:298
-msgid "HSV hue value (range 0 to 1)."
+msgid "The HSV hue of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:301
-msgid "Red value (range 0 to 1)."
+msgid "The color's red component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:304
-msgid "Red value (range 0 to 255)."
+msgid "Wrapper for [member r] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:307
-msgid "HSV saturation value (range 0 to 1)."
+msgid "The HSV saturation of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:310
-msgid "HSV value (range 0 to 1)."
+msgid "The HSV value (brightness) of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:315
@@ -14476,23 +14539,35 @@ msgstr ""
#: doc/classes/Control.xml:859
msgid ""
"The node's scale, relative to its [member rect_size]. Change this property "
-"to scale the node around its [member rect_pivot_offset]."
-msgstr ""
-
-#: doc/classes/Control.xml:862
+"to scale the node around its [member rect_pivot_offset]. The Control's "
+"[member hint_tooltip] will also scale according to this value.\n"
+"[b]Note:[/b] This property is mainly intended to be used for animation "
+"purposes. Text inside the Control will look pixelated or blurry when the "
+"Control is scaled. To support multiple resolutions in your project, use an "
+"appropriate viewport stretch mode as described in the [url=https://docs."
+"godotengine.org/en/latest/tutorials/viewports/multiple_resolutions."
+"html]documentation[/url] instead of scaling Controls individually.\n"
+"[b]Note:[/b] If the Control node is a child of a [Container] node, the scale "
+"will be reset to [code]Vector2(1, 1)[/code] when the scene is instanced. To "
+"set the Control's scale when it's instanced, wait for one frame using "
+"[code]yield(get_tree(), \"idle_frame\")[/code] then set its [member "
+"rect_scale] property."
+msgstr ""
+
+#: doc/classes/Control.xml:864
msgid ""
"The size of the node's bounding rectangle, in pixels. [Container] nodes "
"update this property automatically."
msgstr ""
-#: doc/classes/Control.xml:865
+#: doc/classes/Control.xml:867
msgid ""
"Tells the parent [Container] nodes how they should resize and place the node "
"on the X axis. Use one of the [enum SizeFlags] constants to change the "
"flags. See the constants to learn what each does."
msgstr ""
-#: doc/classes/Control.xml:868
+#: doc/classes/Control.xml:870
msgid ""
"If the node and at least one of its neighbours uses the [constant "
"SIZE_EXPAND] size flag, the parent [Container] will let it take more or less "
@@ -14501,181 +14576,181 @@ msgid ""
"space."
msgstr ""
-#: doc/classes/Control.xml:871
+#: doc/classes/Control.xml:873
msgid ""
"Tells the parent [Container] nodes how they should resize and place the node "
"on the Y axis. Use one of the [enum SizeFlags] constants to change the "
"flags. See the constants to learn what each does."
msgstr ""
-#: doc/classes/Control.xml:874
+#: doc/classes/Control.xml:876
msgid ""
"Changing this property replaces the current [Theme] resource this node and "
"all its [Control] children use."
msgstr ""
-#: doc/classes/Control.xml:880
+#: doc/classes/Control.xml:882
msgid "Emitted when the node gains keyboard focus."
msgstr ""
-#: doc/classes/Control.xml:885
+#: doc/classes/Control.xml:887
msgid "Emitted when the node loses keyboard focus."
msgstr ""
-#: doc/classes/Control.xml:892
+#: doc/classes/Control.xml:894
msgid "Emitted when the node receives an [InputEvent]."
msgstr ""
-#: doc/classes/Control.xml:897
+#: doc/classes/Control.xml:899
msgid "Emitted when the node's minimum size changes."
msgstr ""
-#: doc/classes/Control.xml:902
+#: doc/classes/Control.xml:904
msgid ""
"Emitted when the mouse enters the control's [code]Rect[/code] area, provided "
"its [member mouse_filter] lets the event reach it."
msgstr ""
-#: doc/classes/Control.xml:907
+#: doc/classes/Control.xml:909
msgid ""
"Emitted when the mouse leaves the control's [code]Rect[/code] area, provided "
"its [member mouse_filter] lets the event reach it."
msgstr ""
-#: doc/classes/Control.xml:912
+#: doc/classes/Control.xml:914
msgid "Emitted when the control changes size."
msgstr ""
-#: doc/classes/Control.xml:917
+#: doc/classes/Control.xml:919
msgid ""
"Emitted when one of the size flags changes. See [member "
"size_flags_horizontal] and [member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:927
+#: doc/classes/Control.xml:929
msgid "The node cannot grab focus. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:930
+#: doc/classes/Control.xml:932
msgid ""
"The node can only grab focus on mouse clicks. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:933
+#: doc/classes/Control.xml:935
msgid ""
"The node can grab focus on mouse click or using the arrows and the Tab keys "
"on the keyboard. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:936
+#: doc/classes/Control.xml:938
msgid ""
"Sent when the node changes size. Use [member rect_size] to get the new size."
msgstr ""
-#: doc/classes/Control.xml:939
+#: doc/classes/Control.xml:941
msgid "Sent when the mouse pointer enters the node."
msgstr ""
-#: doc/classes/Control.xml:942
+#: doc/classes/Control.xml:944
msgid "Sent when the mouse pointer exits the node."
msgstr ""
-#: doc/classes/Control.xml:945
+#: doc/classes/Control.xml:947
msgid "Sent when the node grabs focus."
msgstr ""
-#: doc/classes/Control.xml:948
+#: doc/classes/Control.xml:950
msgid "Sent when the node loses focus."
msgstr ""
-#: doc/classes/Control.xml:951
+#: doc/classes/Control.xml:953
msgid ""
"Sent when the node's [member theme] changes, right before Godot redraws the "
"control. Happens when you call one of the [code]add_theme_*_override[/code] "
"methods."
msgstr ""
-#: doc/classes/Control.xml:954
+#: doc/classes/Control.xml:956
msgid ""
"Sent when this node is inside a [ScrollContainer] which has begun being "
"scrolled."
msgstr ""
-#: doc/classes/Control.xml:957
+#: doc/classes/Control.xml:959
msgid ""
"Sent when this node is inside a [ScrollContainer] which has stopped being "
"scrolled."
msgstr ""
-#: doc/classes/Control.xml:960
+#: doc/classes/Control.xml:962
msgid ""
"Show the system's arrow mouse cursor when the user hovers the node. Use with "
"[member mouse_default_cursor_shape]."
msgstr ""
-#: doc/classes/Control.xml:963
+#: doc/classes/Control.xml:965
msgid ""
"Show the system's I-beam mouse cursor when the user hovers the node. The I-"
"beam pointer has a shape similar to \"I\". It tells the user they can "
"highlight or insert text."
msgstr ""
-#: doc/classes/Control.xml:966
+#: doc/classes/Control.xml:968
msgid ""
"Show the system's pointing hand mouse cursor when the user hovers the node."
msgstr ""
-#: doc/classes/Control.xml:969
+#: doc/classes/Control.xml:971
msgid "Show the system's cross mouse cursor when the user hovers the node."
msgstr ""
-#: doc/classes/Control.xml:972
+#: doc/classes/Control.xml:974
msgid ""
"Show the system's wait mouse cursor, often an hourglass, when the user "
"hovers the node."
msgstr ""
-#: doc/classes/Control.xml:975
+#: doc/classes/Control.xml:977
msgid ""
"Show the system's busy mouse cursor when the user hovers the node. Often an "
"hourglass."
msgstr ""
-#: doc/classes/Control.xml:978
+#: doc/classes/Control.xml:980
msgid ""
"Show the system's drag mouse cursor, often a closed fist or a cross symbol, "
"when the user hovers the node. It tells the user they're currently dragging "
"an item, like a node in the Scene dock."
msgstr ""
-#: doc/classes/Control.xml:981
+#: doc/classes/Control.xml:983
msgid ""
"Show the system's drop mouse cursor when the user hovers the node. It can be "
"an open hand. It tells the user they can drop an item they're currently "
"grabbing, like a node in the Scene dock."
msgstr ""
-#: doc/classes/Control.xml:984
+#: doc/classes/Control.xml:986
msgid ""
"Show the system's forbidden mouse cursor when the user hovers the node. "
"Often a crossed circle."
msgstr ""
-#: doc/classes/Control.xml:987
+#: doc/classes/Control.xml:989
msgid ""
"Show the system's vertical resize mouse cursor when the user hovers the "
"node. A double-headed vertical arrow. It tells the user they can resize the "
"window or the panel vertically."
msgstr ""
-#: doc/classes/Control.xml:990
+#: doc/classes/Control.xml:992
msgid ""
"Show the system's horizontal resize mouse cursor when the user hovers the "
"node. A double-headed horizontal arrow. It tells the user they can resize "
"the window or the panel horizontally."
msgstr ""
-#: doc/classes/Control.xml:993
+#: doc/classes/Control.xml:995
msgid ""
"Show the system's window resize mouse cursor when the user hovers the node. "
"The cursor is a double-headed arrow that goes from the bottom left to the "
@@ -14683,7 +14758,7 @@ msgid ""
"horizontally and vertically."
msgstr ""
-#: doc/classes/Control.xml:996
+#: doc/classes/Control.xml:998
msgid ""
"Show the system's window resize mouse cursor when the user hovers the node. "
"The cursor is a double-headed arrow that goes from the top left to the "
@@ -14691,93 +14766,93 @@ msgid ""
"they can resize the window or the panel both horizontally and vertically."
msgstr ""
-#: doc/classes/Control.xml:999
+#: doc/classes/Control.xml:1001
msgid ""
"Show the system's move mouse cursor when the user hovers the node. It shows "
"2 double-headed arrows at a 90 degree angle. It tells the user they can move "
"a UI element freely."
msgstr ""
-#: doc/classes/Control.xml:1002
+#: doc/classes/Control.xml:1004
msgid ""
"Show the system's vertical split mouse cursor when the user hovers the node. "
"On Windows, it's the same as [constant CURSOR_VSIZE]."
msgstr ""
-#: doc/classes/Control.xml:1005
+#: doc/classes/Control.xml:1007
msgid ""
"Show the system's horizontal split mouse cursor when the user hovers the "
"node. On Windows, it's the same as [constant CURSOR_HSIZE]."
msgstr ""
-#: doc/classes/Control.xml:1008
+#: doc/classes/Control.xml:1010
msgid ""
"Show the system's help mouse cursor when the user hovers the node, a "
"question mark."
msgstr ""
-#: doc/classes/Control.xml:1011
+#: doc/classes/Control.xml:1013
msgid ""
"Snap all 4 anchors to the top-left of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1014
+#: doc/classes/Control.xml:1016
msgid ""
"Snap all 4 anchors to the top-right of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1017
+#: doc/classes/Control.xml:1019
msgid ""
"Snap all 4 anchors to the bottom-left of the parent control's bounds. Use "
"with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1020
+#: doc/classes/Control.xml:1022
msgid ""
"Snap all 4 anchors to the bottom-right of the parent control's bounds. Use "
"with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1023
+#: doc/classes/Control.xml:1025
msgid ""
"Snap all 4 anchors to the center of the left edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1026
+#: doc/classes/Control.xml:1028
msgid ""
"Snap all 4 anchors to the center of the top edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1029
+#: doc/classes/Control.xml:1031
msgid ""
"Snap all 4 anchors to the center of the right edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1032
+#: doc/classes/Control.xml:1034
msgid ""
"Snap all 4 anchors to the center of the bottom edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1035
+#: doc/classes/Control.xml:1037
msgid ""
"Snap all 4 anchors to the center of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1038
+#: doc/classes/Control.xml:1040
msgid ""
"Snap all 4 anchors to the left edge of the parent control. The left margin "
"becomes relative to the left edge and the top margin relative to the top "
"left corner of the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1041
+#: doc/classes/Control.xml:1043
msgid ""
"Snap all 4 anchors to the top edge of the parent control. The left margin "
"becomes relative to the top left corner, the top margin relative to the top "
@@ -14785,14 +14860,14 @@ msgid ""
"parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1044
+#: doc/classes/Control.xml:1046
msgid ""
"Snap all 4 anchors to the right edge of the parent control. The right margin "
"becomes relative to the right edge and the top margin relative to the top "
"right corner of the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1047
+#: doc/classes/Control.xml:1049
msgid ""
"Snap all 4 anchors to the bottom edge of the parent control. The left margin "
"becomes relative to the bottom left corner, the bottom margin relative to "
@@ -14800,19 +14875,19 @@ msgid ""
"the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1050
+#: doc/classes/Control.xml:1052
msgid ""
"Snap all 4 anchors to a vertical line that cuts the parent control in half. "
"Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1053
+#: doc/classes/Control.xml:1055
msgid ""
"Snap all 4 anchors to a horizontal line that cuts the parent control in "
"half. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1056
+#: doc/classes/Control.xml:1058
msgid ""
"Snap all 4 anchors to the respective corners of the parent control. Set all "
"4 margins to 0 after you applied this preset and the [Control] will fit its "
@@ -14820,30 +14895,30 @@ msgid ""
"editor. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1059
+#: doc/classes/Control.xml:1061
msgid "The control will be resized to its minimum size."
msgstr ""
-#: doc/classes/Control.xml:1062
+#: doc/classes/Control.xml:1064
msgid "The control's width will not change."
msgstr ""
-#: doc/classes/Control.xml:1065
+#: doc/classes/Control.xml:1067
msgid "The control's height will not change."
msgstr ""
-#: doc/classes/Control.xml:1068
+#: doc/classes/Control.xml:1070
msgid "The control's size will not change."
msgstr ""
-#: doc/classes/Control.xml:1071
+#: doc/classes/Control.xml:1073
msgid ""
"Tells the parent [Container] to expand the bounds of this node to fill all "
"the available space without pushing any other node. Use with [member "
"size_flags_horizontal] and [member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1074
+#: doc/classes/Control.xml:1076
msgid ""
"Tells the parent [Container] to let this node take all the available space "
"on the axis you flag. If multiple neighboring nodes are set to expand, "
@@ -14852,13 +14927,13 @@ msgid ""
"[member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1077
+#: doc/classes/Control.xml:1079
msgid ""
"Sets the node's size flags to both fill and expand. See the 2 constants "
"above for more information."
msgstr ""
-#: doc/classes/Control.xml:1080
+#: doc/classes/Control.xml:1082
msgid ""
"Tells the parent [Container] to center the node in itself. It centers the "
"control based on its bounding box, so it doesn't work with the fill or "
@@ -14866,7 +14941,7 @@ msgid ""
"size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1083
+#: doc/classes/Control.xml:1085
msgid ""
"Tells the parent [Container] to align the node with its end, either the "
"bottom or the right edge. It doesn't work with the fill or expand size "
@@ -14874,7 +14949,7 @@ msgid ""
"size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1086
+#: doc/classes/Control.xml:1088
msgid ""
"The control will receive mouse button input events through [method "
"_gui_input] if clicked on. And the control will receive the [signal "
@@ -14883,7 +14958,7 @@ msgid ""
"other controls. This also results in blocking signals in other controls."
msgstr ""
-#: doc/classes/Control.xml:1089
+#: doc/classes/Control.xml:1091
msgid ""
"The control will receive mouse button input events through [method "
"_gui_input] if clicked on. And the control will receive the [signal "
@@ -14895,7 +14970,7 @@ msgid ""
"not be fired."
msgstr ""
-#: doc/classes/Control.xml:1092
+#: doc/classes/Control.xml:1094
msgid ""
"The control will not receive mouse button input events through [method "
"_gui_input]. The control will also not receive the [signal mouse_entered] "
@@ -14904,25 +14979,25 @@ msgid ""
"handled automatically."
msgstr ""
-#: doc/classes/Control.xml:1095
+#: doc/classes/Control.xml:1097
msgid ""
"The control will grow to the left or top to make up if its minimum size is "
"changed to be greater than its current size on the respective axis."
msgstr ""
-#: doc/classes/Control.xml:1098
+#: doc/classes/Control.xml:1100
msgid ""
"The control will grow to the right or bottom to make up if its minimum size "
"is changed to be greater than its current size on the respective axis."
msgstr ""
-#: doc/classes/Control.xml:1101
+#: doc/classes/Control.xml:1103
msgid ""
"The control will grow in both directions equally to make up if its minimum "
"size is changed to be greater than its current size."
msgstr ""
-#: doc/classes/Control.xml:1104
+#: doc/classes/Control.xml:1106
msgid ""
"Snaps one of the 4 anchor's sides to the origin of the node's [code]Rect[/"
"code], in the top left. Use it with one of the [code]anchor_*[/code] member "
@@ -14930,7 +15005,7 @@ msgid ""
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1107
+#: doc/classes/Control.xml:1109
msgid ""
"Snaps one of the 4 anchor's sides to the end of the node's [code]Rect[/"
"code], in the bottom right. Use it with one of the [code]anchor_*[/code] "
@@ -16715,7 +16790,7 @@ msgstr ""
msgid ""
"Returns the [Texture2D] associated with the specified [enum DecalTexture]. "
"This is a convenience method, in most cases you should access the texture "
-"directly. \n"
+"directly.\n"
"For example, instead of [code]albedo_tex = $Decal.get_texture(Decal."
"TEXTURE_ALBEDO)[/code], use [code]albedo_tex = $Decal.texture_albedo[/"
"code].\n"
@@ -16731,7 +16806,7 @@ msgstr ""
msgid ""
"Sets the [Texture2D] associated with the specified [enum DecalTexture]. This "
"is a convenience method, in most cases you should access the texture "
-"directly. \n"
+"directly.\n"
"For example, instead of [code]$Decal.set_texture(Decal.TEXTURE_ALBEDO, "
"albedo_tex)[/code], use [code]$Decal.texture_albedo = albedo_tex[/code].\n"
"One case where this is better than accessing the texture directly is when "
@@ -17080,7 +17155,7 @@ msgstr ""
msgid "The light's shadow rendering algorithm. See [enum ShadowMode]."
msgstr ""
-#: doc/classes/DirectionalLight3D.xml:31 doc/classes/RenderingServer.xml:3254
+#: doc/classes/DirectionalLight3D.xml:31 doc/classes/RenderingServer.xml:3250
msgid ""
"Sets the size of the directional shadow pancake. The pancake offsets the "
"start of the shadow's camera frustum to provide a higher effective depth "
@@ -17154,10 +17229,10 @@ msgstr ""
msgid ""
"Directory type. It is used to manage directories and their content (not "
"restricted to the project folder).\n"
-"When creating a new [Directory], its default opened directory will be "
-"[code]res://[/code]. This may change in the future, so it is advised to "
-"always use [method open] to initialize your [Directory] where you want to "
-"operate, with explicit error checking.\n"
+"When creating a new [Directory], it must be explicitly opened using [method "
+"open] before most methods can be used. However, [method file_exists] and "
+"[method dir_exists] can be used without opening a directory. If so, they use "
+"a path relative to [code]res://[/code].\n"
"Here is an example on how to iterate through the files of a directory:\n"
"[codeblock]\n"
"func dir_contents(path):\n"
@@ -17176,7 +17251,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Directory.xml:27 doc/classes/File.xml:25
+#: doc/classes/Directory.xml:27 doc/classes/File.xml:26
msgid ""
"https://docs.godotengine.org/en/latest/getting_started/step_by_step/"
"filesystem.html"
@@ -17210,41 +17285,43 @@ msgstr ""
#: doc/classes/Directory.xml:65
msgid ""
"Returns whether the target directory exists. The argument can be relative to "
-"the current directory, or an absolute path."
+"the current directory, or an absolute path.\n"
+"If the [Directory] is not open, the path is relative to [code]res://[/code]."
msgstr ""
-#: doc/classes/Directory.xml:74
+#: doc/classes/Directory.xml:75
msgid ""
"Returns whether the target file exists. The argument can be relative to the "
-"current directory, or an absolute path."
+"current directory, or an absolute path.\n"
+"If the [Directory] is not open, the path is relative to [code]res://[/code]."
msgstr ""
-#: doc/classes/Directory.xml:81
+#: doc/classes/Directory.xml:83
msgid ""
"Returns the absolute path to the currently opened directory (e.g. "
"[code]res://folder[/code] or [code]C:\\tmp\\folder[/code])."
msgstr ""
-#: doc/classes/Directory.xml:88
+#: doc/classes/Directory.xml:90
msgid ""
"Returns the currently opened directory's drive index. See [method get_drive] "
"to convert returned index to the name of the drive."
msgstr ""
-#: doc/classes/Directory.xml:97
+#: doc/classes/Directory.xml:99
msgid ""
"On Windows, returns the name of the drive (partition) passed as an argument "
"(e.g. [code]C:[/code]). On other platforms, or if the requested drive does "
"not existed, the method returns an empty String."
msgstr ""
-#: doc/classes/Directory.xml:104
+#: doc/classes/Directory.xml:106
msgid ""
"On Windows, returns the number of drives (partitions) mounted on the current "
"filesystem. On other platforms, the method returns 0."
msgstr ""
-#: doc/classes/Directory.xml:111
+#: doc/classes/Directory.xml:113
msgid ""
"Returns the next element (file or directory) in the current directory "
"(including [code].[/code] and [code]..[/code], unless "
@@ -17255,14 +17332,14 @@ msgid ""
"mandatory in such a case)."
msgstr ""
-#: doc/classes/Directory.xml:119
+#: doc/classes/Directory.xml:121
msgid ""
"On UNIX desktop systems, returns the available space on the current "
"directory's disk. On other platforms, this information is not available and "
"the method returns 0 or -1."
msgstr ""
-#: doc/classes/Directory.xml:130
+#: doc/classes/Directory.xml:132
msgid ""
"Initializes the stream used to list all files and directories using the "
"[method get_next] function, closing the current opened stream if needed. "
@@ -17274,13 +17351,13 @@ msgid ""
"out."
msgstr ""
-#: doc/classes/Directory.xml:139
+#: doc/classes/Directory.xml:141
msgid ""
"Closes the current stream opened with [method list_dir_begin] (whether it "
"has been fully processed with [method get_next] or not does not matter)."
msgstr ""
-#: doc/classes/Directory.xml:148
+#: doc/classes/Directory.xml:150
msgid ""
"Creates a directory. The argument can be relative to the current directory, "
"or an absolute path. The target directory should be placed in an already "
@@ -17289,7 +17366,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:158
+#: doc/classes/Directory.xml:160
msgid ""
"Creates a target directory and all necessary intermediate directories in its "
"path, by calling [method make_dir] recursively. The argument can be relative "
@@ -17297,7 +17374,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:168
+#: doc/classes/Directory.xml:170
msgid ""
"Opens an existing directory of the filesystem. The [code]path[/code] "
"argument can be within the project tree ([code]res://folder[/code]), the "
@@ -17306,7 +17383,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:178
+#: doc/classes/Directory.xml:180
msgid ""
"Deletes the target file or an empty directory. The argument can be relative "
"to the current directory, or an absolute path. If the target directory is "
@@ -17314,7 +17391,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:190
+#: doc/classes/Directory.xml:192
msgid ""
"Renames (move) the [code]from[/code] file to the [code]to[/code] "
"destination. Both arguments should be paths to files, either relative or "
@@ -17355,6 +17432,53 @@ msgid ""
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
+#: doc/classes/DisplayServer.xml:530
+msgid ""
+"Return the greatest scale factor of all screens.\n"
+"[b]Note:[/b] On macOS returned value is [code]2.0[/code] if there is at "
+"least one hiDPI (Retina) screen in the system, and [code]1.0[/code] in all "
+"other cases.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:557
+msgid ""
+"Return the scale factor of the specified screen by index.\n"
+"[b]Note:[/b] On macOS returned value is [code]2.0[/code] for hiDPI (Retina) "
+"screen, and [code]1.0[/code] for all other cases.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:630
+msgid ""
+"Returns the on-screen keyboard's height in pixels. Returns 0 if there is no "
+"keyboard or if it is currently hidden."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:637
+msgid "Hides the virtual keyboard if it is shown, does nothing otherwise."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:656
+msgid ""
+"Shows the virtual keyboard if the platform has one.\n"
+"[code]existing_text[/code] parameter is useful for implementing your own "
+"[LineEdit] or [TextEdit], as it tells the virtual keyboard what text has "
+"already been typed (the virtual keyboard uses it for auto-correct and "
+"predictions).\n"
+"[code]position[/code] parameter is the screen space [Rect2] of the edited "
+"text.\n"
+"[code]multiline[/code] parameter needs to be set to [code]true[/code] to be "
+"able to enter multiple lines of text, as in [TextEdit].\n"
+"[code]max_length[/code] limits the number of characters that can be entered "
+"if different from [code]-1[/code].\n"
+"[code]cursor_start[/code] can optionally define the current text cursor "
+"position if [code]cursor_end[/code] is not set.\n"
+"[code]cursor_start[/code] and [code]cursor_end[/code] can optionally define "
+"the current text selection.\n"
+"[b]Note:[/b] This method is implemented on Android, iOS and UWP."
+msgstr ""
+
#: doc/classes/DTLSServer.xml:4
msgid "Helper class to implement a DTLS server."
msgstr ""
@@ -17475,54 +17599,62 @@ msgstr ""
msgid "Adds a fallback font."
msgstr ""
-#: doc/classes/DynamicFont.xml:35
+#: doc/classes/DynamicFont.xml:33
+msgid ""
+"Returns a string containing all the characters available in the main and all "
+"the fallback fonts.\n"
+"If a given character is included in more than one font, it appears only once "
+"in the returned string."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:43
msgid "Returns the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:42
+#: doc/classes/DynamicFont.xml:50
msgid "Returns the number of fallback fonts."
msgstr ""
-#: doc/classes/DynamicFont.xml:51
+#: doc/classes/DynamicFont.xml:59
msgid ""
"Returns the spacing for the given [code]type[/code] (see [enum SpacingType])."
msgstr ""
-#: doc/classes/DynamicFont.xml:60
+#: doc/classes/DynamicFont.xml:68
msgid "Removes the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:71
+#: doc/classes/DynamicFont.xml:79
msgid "Sets the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:82
+#: doc/classes/DynamicFont.xml:90
msgid ""
"Sets the spacing for [code]type[/code] (see [enum SpacingType]) to "
"[code]value[/code] in pixels (not relative to the font size)."
msgstr ""
-#: doc/classes/DynamicFont.xml:88
+#: doc/classes/DynamicFont.xml:96
msgid "Extra spacing at the bottom in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:91
+#: doc/classes/DynamicFont.xml:99
msgid "Extra character spacing in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:94
+#: doc/classes/DynamicFont.xml:102
msgid "Extra space spacing in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:97
+#: doc/classes/DynamicFont.xml:105
msgid "Extra spacing at the top in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:100
+#: doc/classes/DynamicFont.xml:108
msgid "The font data."
msgstr ""
-#: doc/classes/DynamicFont.xml:103
+#: doc/classes/DynamicFont.xml:111
msgid ""
"The font outline's color.\n"
"[b]Note:[/b] It's recommended to leave this at the default value so that you "
@@ -17531,27 +17663,27 @@ msgid ""
"outline modulate theme item."
msgstr ""
-#: doc/classes/DynamicFont.xml:107
+#: doc/classes/DynamicFont.xml:115
msgid "The font outline's thickness in pixels (not relative to the font size)."
msgstr ""
-#: doc/classes/DynamicFont.xml:110
+#: doc/classes/DynamicFont.xml:118
msgid "The font size in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:115
+#: doc/classes/DynamicFont.xml:123
msgid "Spacing at the top."
msgstr ""
-#: doc/classes/DynamicFont.xml:118
+#: doc/classes/DynamicFont.xml:126
msgid "Spacing at the bottom."
msgstr ""
-#: doc/classes/DynamicFont.xml:121
+#: doc/classes/DynamicFont.xml:129
msgid "Character spacing."
msgstr ""
-#: doc/classes/DynamicFont.xml:124
+#: doc/classes/DynamicFont.xml:132
msgid "Space spacing."
msgstr ""
@@ -17933,7 +18065,12 @@ msgstr ""
msgid "Remitted if a resource is reimported."
msgstr ""
-#: doc/classes/EditorFileSystem.xml:106
+#: doc/classes/EditorFileSystem.xml:100
+msgid ""
+"Emitted if at least one resource is reloaded when the filesystem is scanned."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:107
msgid "Emitted if the source of any imported file changed."
msgstr ""
@@ -17975,29 +18112,43 @@ msgstr ""
msgid "Returns the path to the file at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:86
+#: doc/classes/EditorFileSystemDirectory.xml:70
+msgid ""
+"Returns the base class of the script class defined in the file at index "
+"[code]idx[/code]. If the file doesn't define a script class using the "
+"[code]class_name[/code] syntax, this will return an empty string."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:79
+msgid ""
+"Returns the name of the script class defined in the file at index [code]idx[/"
+"code]. If the file doesn't define a script class using the [code]class_name[/"
+"code] syntax, this will return an empty string."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:88
msgid "Returns the file extension of the file at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:93
+#: doc/classes/EditorFileSystemDirectory.xml:95
msgid "Returns the name of this directory."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:100
+#: doc/classes/EditorFileSystemDirectory.xml:102
msgid ""
"Returns the parent directory for this directory or [code]null[/code] if "
"called on a directory at [code]res://[/code] or [code]user://[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:107
+#: doc/classes/EditorFileSystemDirectory.xml:109
msgid "Returns the path to this directory."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:116
+#: doc/classes/EditorFileSystemDirectory.xml:118
msgid "Returns the subdirectory at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:123
+#: doc/classes/EditorFileSystemDirectory.xml:125
msgid "Returns the number of subdirectories in this directory."
msgstr ""
@@ -18088,45 +18239,72 @@ msgstr ""
msgid "Gets the unique name of the importer."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:92
+#: doc/classes/EditorImportPlugin.xml:86
+msgid ""
+"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. For example:\n"
+"[codeblock]\n"
+"func get_option_visibility(option, options):\n"
+" # Only show the lossy quality setting if the compression mode is set to "
+"\"Lossy\".\n"
+" if option == \"compress/lossy_quality\" and options.has(\"compress/mode"
+"\"):\n"
+" return int(options[\"compress/mode\"]) == COMPRESS_LOSSY\n"
+"\n"
+" return true\n"
+"[/codeblock]\n"
+"Return [code]true[/code] to make all options always visible."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:102
msgid ""
"Gets the number of initial presets defined by the plugin. Use [method "
"get_import_options] to get the default options for the preset and [method "
"get_preset_name] to get the name of the preset."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:101
+#: doc/classes/EditorImportPlugin.xml:111
msgid "Gets the name of the options preset at this index."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:108
+#: doc/classes/EditorImportPlugin.xml:118
msgid ""
"Gets the priority of this plugin for the recognized extension. Higher "
"priority plugins will be preferred. The default priority is [code]1.0[/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:115
+#: doc/classes/EditorImportPlugin.xml:125
msgid ""
"Gets the list of file extensions to associate with this loader (case-"
"insensitive). e.g. [code][\"obj\"][/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:122
+#: doc/classes/EditorImportPlugin.xml:132
msgid ""
"Gets the Godot resource type associated with this loader. e.g. [code]\"Mesh"
"\"[/code] or [code]\"Animation\"[/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:129
+#: doc/classes/EditorImportPlugin.xml:139
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:136
+#: doc/classes/EditorImportPlugin.xml:146
msgid "Gets the name to display in the import window."
msgstr ""
+#: doc/classes/EditorImportPlugin.xml:163
+msgid ""
+"Imports [code]source_file[/code] into [code]save_path[/code] with the import "
+"[code]options[/code] specified. The [code]platform_variants[/code] and "
+"[code]gen_files[/code] arrays will be modified by this function.\n"
+"This method must be overridden to do the actual importing work. See this "
+"class' description for an example of overriding this method."
+msgstr ""
+
#: doc/classes/EditorInspector.xml:4
msgid "A tab used to edit properties of the selected node."
msgstr ""
@@ -18142,6 +18320,58 @@ msgid ""
"the singleton using [method EditorInterface.get_inspector]."
msgstr ""
+#: doc/classes/EditorInspector.xml:17
+msgid ""
+"Refreshes the inspector.\n"
+"[b]Note:[/b] To save on CPU resources, calling this method will do nothing "
+"if the time specified in [code]docks/property_editor/auto_refresh_interval[/"
+"code] editor setting hasn't passed yet since this method was last called. "
+"(By default, this interval is set to 0.3 seconds.)"
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:30
+msgid ""
+"Emitted when the Edit button of an [Object] has been pressed in the "
+"inspector. This is mainly used in the remote scene tree inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:37
+msgid "Emitted when a property is removed from the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:44
+msgid "Emitted when a property is edited in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:51
+msgid ""
+"Emitted when a property is keyed in the inspector. Properties can be keyed "
+"by clicking the \"key\" icon next to a property when the Animation panel is "
+"toggled."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:58
+msgid "Emitted when a property is selected in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:67
+msgid ""
+"Emitted when a boolean property is toggled in the inspector.\n"
+"[b]Note:[/b] This signal is never emitted if the internal [code]autoclear[/"
+"code] property enabled. Since this property is always enabled in the editor "
+"inspector, this signal is never emitted by the editor itself."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:77
+msgid "Emitted when a resource is selected in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:82
+msgid ""
+"Emitted when a property that requires a restart to be applied is edited in "
+"the inspector. This is only used in the Project Settings and Editor Settings."
+msgstr ""
+
#: doc/classes/EditorInspectorPlugin.xml:4
msgid "Plugin for adding custom property editors on inspector."
msgstr ""
@@ -18220,91 +18450,155 @@ msgstr ""
#: doc/classes/EditorInterface.xml:26
msgid ""
-"Returns the main container of Godot editor's window. You can use it, for "
-"example, to retrieve the size of the container and place your controls "
+"Returns the main container of Godot editor's window. For example, you can "
+"use it to retrieve the size of the container and place your controls "
"accordingly."
msgstr ""
-#: doc/classes/EditorInterface.xml:39
+#: doc/classes/EditorInterface.xml:33
+msgid "Returns the current path being viewed in the [FileSystemDock]."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:40
msgid "Returns the edited (current) scene's root [Node]."
msgstr ""
-#: doc/classes/EditorInterface.xml:46
-msgid "Returns the [EditorSettings]."
+#: doc/classes/EditorInterface.xml:47
+msgid "Returns the editor's [EditorSettings] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:53
-msgid "Returns the editor [Viewport]."
+#: doc/classes/EditorInterface.xml:54
+msgid ""
+"Returns the main editor control. Use this as a parent for main screens.\n"
+"[b]Note:[/b] This returns the main editor control containing the whole "
+"editor, not the 2D or 3D viewports specifically."
msgstr ""
-#: doc/classes/EditorInterface.xml:72
+#: doc/classes/EditorInterface.xml:62
+msgid "Returns the editor's [FileSystemDock] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:69
+msgid "Returns the editor's [EditorInspector] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:76
msgid "Returns an [Array] with the file paths of the currently opened scenes."
msgstr ""
-#: doc/classes/EditorInterface.xml:79
-msgid "Returns the [EditorFileSystem]."
+#: doc/classes/EditorInterface.xml:83
+msgid ""
+"Returns the name of the scene that is being played. If no scene is currently "
+"being played, returns an empty string."
msgstr ""
-#: doc/classes/EditorInterface.xml:86
-msgid "Returns the [EditorResourcePreview]."
+#: doc/classes/EditorInterface.xml:90
+msgid "Returns the editor's [EditorFileSystem] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:93
-msgid "Returns the [ScriptEditor]."
+#: doc/classes/EditorInterface.xml:97
+msgid "Returns the editor's [EditorResourcePreview] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:106
-msgid "Returns the [EditorSelection]."
+#: doc/classes/EditorInterface.xml:104
+msgid "Returns the editor's [ScriptEditor] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:117
+#: doc/classes/EditorInterface.xml:111
msgid ""
-"Shows the given property on the given [code]object[/code] in the Editor's "
+"Returns the path of the directory currently selected in the "
+"[FileSystemDock]. If a file is selected, its base directory will be returned "
+"using [method String.get_base_dir] instead."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:118
+msgid "Returns the editor's [EditorSelection] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:129
+msgid ""
+"Shows the given property on the given [code]object[/code] in the editor's "
"Inspector dock."
msgstr ""
-#: doc/classes/EditorInterface.xml:126
+#: doc/classes/EditorInterface.xml:136
msgid ""
-"Returns the enabled status of a plugin. The plugin name is the same as its "
-"directory name."
+"Returns [code]true[/code] if a scene is currently being played, [code]false[/"
+"code] otherwise. Paused scenes are considered as being played."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:145
+msgid ""
+"Returns [code]true[/code] if the specified [code]plugin[/code] is enabled. "
+"The plugin name is the same as its directory name."
msgstr ""
-#: doc/classes/EditorInterface.xml:137
+#: doc/classes/EditorInterface.xml:156
msgid ""
"Returns mesh previews rendered at the given size as an [Array] of "
"[Texture2D]s."
msgstr ""
-#: doc/classes/EditorInterface.xml:146
+#: doc/classes/EditorInterface.xml:165
msgid "Opens the scene at the given path."
msgstr ""
-#: doc/classes/EditorInterface.xml:155
+#: doc/classes/EditorInterface.xml:172
+msgid "Plays the currently active scene."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:181
+msgid "Plays the scene specified by its filepath."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:188
+msgid "Plays the main scene."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:197
msgid "Reloads the scene at the given path."
msgstr ""
-#: doc/classes/EditorInterface.xml:162
+#: doc/classes/EditorInterface.xml:204
msgid ""
"Saves the scene. Returns either [code]OK[/code] or [code]ERR_CANT_CREATE[/"
"code] (see [@GlobalScope] constants)."
msgstr ""
-#: doc/classes/EditorInterface.xml:173
+#: doc/classes/EditorInterface.xml:215
msgid "Saves the scene as a file at [code]path[/code]."
msgstr ""
-#: doc/classes/EditorInterface.xml:182
+#: doc/classes/EditorInterface.xml:224
msgid ""
"Selects the file, with the path provided by [code]file[/code], in the "
"FileSystem dock."
msgstr ""
-#: doc/classes/EditorInterface.xml:201
+#: doc/classes/EditorInterface.xml:233
+msgid ""
+"Sets the editor's current main screen to the one specified in [code]name[/"
+"code]. [code]name[/code] must match the text of the tab in question exactly "
+"([code]2D[/code], [code]3D[/code], [code]Script[/code], [code]AssetLib[/"
+"code])."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:244
msgid ""
"Sets the enabled status of a plugin. The plugin name is the same as its "
"directory name."
msgstr ""
+#: doc/classes/EditorInterface.xml:251
+msgid "Stops the scene that is currently playing."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:257
+msgid ""
+"If [code]true[/code], enables distraction-free mode which hides side docks "
+"to increase the space available for the main view."
+msgstr ""
+
#: doc/classes/EditorNode3DGizmo.xml:4
msgid "Custom gizmo for editing Node3D objects."
msgstr ""
@@ -18316,14 +18610,20 @@ msgid ""
"information."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:26
+#: doc/classes/EditorNode3DGizmo.xml:18
+msgid ""
+"Adds the specified [code]segments[/code] to the gizmo's collision shape for "
+"picking. Call this function during [method redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:27
msgid ""
"Adds collision triangles to the gizmo for picking. A [TriangleMesh] can be "
"generated from a regular [Mesh] too. Call this function during [method "
"redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:41
+#: doc/classes/EditorNode3DGizmo.xml:42
msgid ""
"Adds a list of handles (points) which can be used to deform the object being "
"edited.\n"
@@ -18331,20 +18631,33 @@ msgid ""
"handles. Call this function during [method redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:57
+#: doc/classes/EditorNode3DGizmo.xml:58
msgid ""
"Adds lines to the gizmo (as sets of 2 points), with a given material. The "
"lines are used for visualizing the gizmo. Call this function during [method "
"redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:84
+#: doc/classes/EditorNode3DGizmo.xml:73
+msgid ""
+"Adds a mesh to the gizmo with the specified [code]billboard[/code] state, "
+"[code]skeleton[/code] and [code]material[/code]. If [code]billboard[/code] "
+"is [code]true[/code], the mesh will rotate to always face the camera. Call "
+"this function during [method redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:86
msgid ""
"Adds an unscaled billboard for visualization. Call this function during "
"[method redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:103
+#: doc/classes/EditorNode3DGizmo.xml:93
+msgid ""
+"Removes everything in the gizmo including meshes, collisions and handles."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:106
msgid ""
"Commit a handle being edited (handles must have been previously added by "
"[method add_handles]).\n"
@@ -18352,40 +18665,42 @@ msgid ""
"restore the edited value to the original is provided."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:113
+#: doc/classes/EditorNode3DGizmo.xml:116
msgid ""
"Gets the name of an edited handle (handles must have been previously added "
"by [method add_handles]).\n"
"Handles can be named for reference to the user when editing."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:123
+#: doc/classes/EditorNode3DGizmo.xml:126
msgid ""
"Gets actual value of a handle. This value can be anything and used for "
"eventually undoing the motion when calling [method commit_handle]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:130
+#: doc/classes/EditorNode3DGizmo.xml:133
msgid ""
"Returns the [EditorNode3DGizmoPlugin] that owns this gizmo. It's useful to "
"retrieve materials using [method EditorNode3DGizmoPlugin.get_material]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:137
+#: doc/classes/EditorNode3DGizmo.xml:140
msgid "Returns the Node3D node associated with this gizmo."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:146
-msgid "Gets whether a handle is highlighted or not."
+#: doc/classes/EditorNode3DGizmo.xml:149
+msgid ""
+"Returns [code]true[/code] if the handle at index [code]index[/code] is "
+"highlighted by being hovered with the mouse."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:153
+#: doc/classes/EditorNode3DGizmo.xml:156
msgid ""
-"This function is called when the Node3D this gizmo refers to changes (the "
+"This function is called when the [Node3D] this gizmo refers to changes (the "
"[method Node3D.update_gizmo] is called)."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:166
+#: doc/classes/EditorNode3DGizmo.xml:169
msgid ""
"This function is used when the user drags a gizmo handle (previously added "
"with [method add_handles]) in screen coordinates.\n"
@@ -18393,6 +18708,18 @@ msgid ""
"raycasts."
msgstr ""
+#: doc/classes/EditorNode3DGizmo.xml:179
+msgid ""
+"Sets the gizmo's hidden state. If [code]true[/code], the gizmo will be "
+"hidden. If [code]false[/code], it will be shown."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:188
+msgid ""
+"Sets the reference [Node3D] node for the gizmo. [code]node[/code] must "
+"inherit from [Node3D]."
+msgstr ""
+
#: doc/classes/EditorNode3DGizmoPlugin.xml:4
msgid "Used by the editor to define Node3D gizmo types."
msgstr ""
@@ -18485,7 +18812,17 @@ msgid ""
"visibility menu."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:150
+#: doc/classes/EditorNode3DGizmoPlugin.xml:142
+msgid ""
+"Override this method to set the gizmo's priority. Higher values correspond "
+"to higher priority. If a gizmo with higher priority conflicts with another "
+"gizmo, only the gizmo with higher priority will be used.\n"
+"All built-in editor gizmos return a priority of [code]-1[/code]. If not "
+"overridden, this method will return [code]0[/code], which means custom "
+"gizmos will automatically override built-in gizmos."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:152
msgid ""
"Override this method to define which Node3D nodes have a gizmo from this "
"plugin. Whenever a [Node3D] node is added to a scene this method is called, "
@@ -18493,25 +18830,25 @@ msgid ""
"assigned and is added to this plugin's list of active gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:161
+#: doc/classes/EditorNode3DGizmoPlugin.xml:163
msgid ""
"Gets whether a handle is highlighted or not. Called for this plugin's active "
"gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:168
+#: doc/classes/EditorNode3DGizmoPlugin.xml:170
msgid ""
"Override this method to define whether Node3D with this gizmo should be "
"selecteble even when the gizmo is hidden."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:177
+#: doc/classes/EditorNode3DGizmoPlugin.xml:179
msgid ""
"Callback to redraw the provided gizmo. Called for this plugin's active "
"gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:192
+#: doc/classes/EditorNode3DGizmoPlugin.xml:194
msgid ""
"Update the value of a handle after it has been updated. Called for this "
"plugin's active gizmos."
@@ -18598,7 +18935,13 @@ msgid ""
"should be cleaned up using [code]remove_tool_menu_item(name)[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:149
+#: doc/classes/EditorPlugin.xml:151
+msgid ""
+"Registers a custom translation parser plugin for extracting translatable "
+"strings from custom files."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:158
msgid ""
"This method is called when the editor is about to save the project, switch "
"to another tab, etc. It asks the plugin to apply any pending state changes "
@@ -18607,32 +18950,32 @@ msgid ""
"must apply the shader code being written by the user to the object."
msgstr ""
-#: doc/classes/EditorPlugin.xml:163
+#: doc/classes/EditorPlugin.xml:172
msgid ""
"Clear all the state and reset the object being edited to zero. This ensures "
"your plugin does not keep editing a currently existing node, or a node from "
"the wrong scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:170
+#: doc/classes/EditorPlugin.xml:179
msgid ""
"Called by the engine when the user disables the [EditorPlugin] in the Plugin "
"tab of the project settings window."
msgstr ""
-#: doc/classes/EditorPlugin.xml:179
+#: doc/classes/EditorPlugin.xml:188
msgid ""
"This function is used for plugins that edit specific object types (nodes or "
"resources). It requests the editor to edit the given object."
msgstr ""
-#: doc/classes/EditorPlugin.xml:186
+#: doc/classes/EditorPlugin.xml:195
msgid ""
"Called by the engine when the user enables the [EditorPlugin] in the Plugin "
"tab of the project settings window."
msgstr ""
-#: doc/classes/EditorPlugin.xml:211
+#: doc/classes/EditorPlugin.xml:220
msgid ""
"Called when there is a root node in the current edited scene, [method "
"handles] is implemented and an [InputEvent] happens in the 2D viewport. "
@@ -18657,7 +19000,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:237
+#: doc/classes/EditorPlugin.xml:246
msgid ""
"Called when there is a root node in the current edited scene, [method "
"handles] is implemented and an [InputEvent] happens in the 3D viewport. "
@@ -18682,20 +19025,20 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:259
+#: doc/classes/EditorPlugin.xml:268
msgid ""
"This is for editors that edit script-based objects. You can return a list of "
"breakpoints in the format ([code]script:line[/code]), for example: "
"[code]res://path_to_script.gd:25[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:266
+#: doc/classes/EditorPlugin.xml:275
msgid ""
"Returns the [EditorInterface] object that gives you control over Godot "
"editor's window and its functionalities."
msgstr ""
-#: doc/classes/EditorPlugin.xml:273
+#: doc/classes/EditorPlugin.xml:282
msgid ""
"Override this method in your plugin to return a [Texture2D] in order to give "
"it an icon.\n"
@@ -18713,7 +19056,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:289
+#: doc/classes/EditorPlugin.xml:298
msgid ""
"Override this method in your plugin to provide the name of the plugin when "
"displayed in the Godot editor.\n"
@@ -18721,33 +19064,33 @@ msgid ""
"of the \"2D\", \"3D\", \"Script\", and \"AssetLib\" buttons."
msgstr ""
-#: doc/classes/EditorPlugin.xml:297
+#: doc/classes/EditorPlugin.xml:306
msgid ""
"Gets the Editor's dialogue used for making scripts.\n"
"[b]Note:[/b] Users can configure it before use."
msgstr ""
-#: doc/classes/EditorPlugin.xml:305
+#: doc/classes/EditorPlugin.xml:314
msgid ""
"Gets the state of your plugin editor. This is used when saving the scene (so "
"state is kept when opening it again) and for switching tabs (so state can be "
"restored when the tab returns)."
msgstr ""
-#: doc/classes/EditorPlugin.xml:312
+#: doc/classes/EditorPlugin.xml:321
msgid ""
"Gets the undo/redo object. Most actions in the editor can be undoable, so "
"use this object to make sure this happens when it's worth it."
msgstr ""
-#: doc/classes/EditorPlugin.xml:321
+#: doc/classes/EditorPlugin.xml:330
msgid ""
"Gets the GUI layout of the plugin. This is used to save the project's editor "
"layout when [method queue_save_layout] is called or the editor layout was "
"changed(For example changing the position of a dock)."
msgstr ""
-#: doc/classes/EditorPlugin.xml:330
+#: doc/classes/EditorPlugin.xml:339
msgid ""
"Implement this function if your plugin edits a specific type of object "
"(Resource or Node). If you return [code]true[/code], then you will get the "
@@ -18757,14 +19100,14 @@ msgid ""
"be called too."
msgstr ""
-#: doc/classes/EditorPlugin.xml:337
+#: doc/classes/EditorPlugin.xml:346
msgid ""
"Returns [code]true[/code] if this is a main screen editor plugin (it goes in "
"the workspace selector together with [b]2D[/b], [b]3D[/b], [b]Script[/b] and "
"[b]AssetLib[/b])."
msgstr ""
-#: doc/classes/EditorPlugin.xml:360
+#: doc/classes/EditorPlugin.xml:369
msgid ""
"This function will be called when the editor is requested to become visible. "
"It is used for plugins that edit a specific object type.\n"
@@ -18772,85 +19115,89 @@ msgid ""
"manually."
msgstr ""
-#: doc/classes/EditorPlugin.xml:368
+#: doc/classes/EditorPlugin.xml:377
msgid "Queue save the project's editor layout."
msgstr ""
-#: doc/classes/EditorPlugin.xml:377
+#: doc/classes/EditorPlugin.xml:386
msgid "Removes an Autoload [code]name[/code] from the list."
msgstr ""
-#: doc/classes/EditorPlugin.xml:386
+#: doc/classes/EditorPlugin.xml:395
msgid ""
"Removes the control from the bottom panel. You have to manually [method Node."
"queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:397
+#: doc/classes/EditorPlugin.xml:406
msgid ""
"Removes the control from the specified container. You have to manually "
"[method Node.queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:406
+#: doc/classes/EditorPlugin.xml:415
msgid ""
"Removes the control from the dock. You have to manually [method Node."
"queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:415
+#: doc/classes/EditorPlugin.xml:424
msgid "Removes a custom type added by [method add_custom_type]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:464
+#: doc/classes/EditorPlugin.xml:473
msgid "Removes a menu [code]name[/code] from [b]Project > Tools[/b]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:471
+#: doc/classes/EditorPlugin.xml:482
+msgid "Removes a registered custom translation parser plugin."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:489
msgid ""
"This method is called after the editor saves the project or when it's "
"closed. It asks the plugin to save edited external scenes/resources."
msgstr ""
-#: doc/classes/EditorPlugin.xml:484
+#: doc/classes/EditorPlugin.xml:502
msgid ""
"Use this method if you always want to receive inputs from 3D view screen "
"inside [method forward_spatial_gui_input]. It might be especially usable if "
"your plugin will want to use raycast in the scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:493
+#: doc/classes/EditorPlugin.xml:511
msgid "Restore the state saved by [method get_state]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:502
+#: doc/classes/EditorPlugin.xml:520
msgid "Restore the plugin GUI layout saved by [method get_window_layout]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:509
+#: doc/classes/EditorPlugin.xml:527
msgid "Updates the overlays of the editor (2D/3D) viewport."
msgstr ""
-#: doc/classes/EditorPlugin.xml:518
+#: doc/classes/EditorPlugin.xml:536
msgid ""
"Emitted when user changes the workspace ([b]2D[/b], [b]3D[/b], [b]Script[/"
"b], [b]AssetLib[/b]). Also works with custom screens defined by plugins."
msgstr ""
-#: doc/classes/EditorPlugin.xml:531
+#: doc/classes/EditorPlugin.xml:549
msgid ""
"Emitted when the scene is changed in the editor. The argument will return "
"the root node of the scene that has just become active. If this scene is new "
"and empty, the argument will be [code]null[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:538
+#: doc/classes/EditorPlugin.xml:556
msgid ""
"Emitted when user closes a scene. The argument is file path to a closed "
"scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:584
+#: doc/classes/EditorPlugin.xml:602
msgid "Represents the size of the [enum DockSlot] enum."
msgstr ""
@@ -18905,64 +19252,83 @@ msgid "When this virtual function is called, you must update your editor."
msgstr ""
#: doc/classes/EditorProperty.xml:76
-msgid "Used by the inspector, set when property is checkable."
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is "
+"checkable."
msgstr ""
#: doc/classes/EditorProperty.xml:79
-msgid "Used by the inspector, when the property is checked."
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is checked."
msgstr ""
-#: doc/classes/EditorProperty.xml:84
-msgid "Used by the inspector, when the property must draw with error color."
+#: doc/classes/EditorProperty.xml:82
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property can be "
+"deleted by the user."
msgstr ""
-#: doc/classes/EditorProperty.xml:87
-msgid "Used by the inspector, when the property can add keys for animation."
+#: doc/classes/EditorProperty.xml:85
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property must draw "
+"with error color. This is used for editable children's properties."
msgstr ""
-#: doc/classes/EditorProperty.xml:90
-msgid "Sets this property to change the label (if you want to show one)."
+#: doc/classes/EditorProperty.xml:88
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property can add "
+"keys for animation."
msgstr ""
-#: doc/classes/EditorProperty.xml:93
-msgid "Used by the inspector, when the property is read-only."
+#: doc/classes/EditorProperty.xml:91
+msgid "Set this property to change the label (if you want to show one)."
msgstr ""
-#: doc/classes/EditorProperty.xml:103
+#: doc/classes/EditorProperty.xml:94
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is read-"
+"only."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:104
msgid ""
"Emit it if you want multiple properties modified at the same time. Do not "
"use if added via [method EditorInspectorPlugin.parse_property]."
msgstr ""
-#: doc/classes/EditorProperty.xml:112
+#: doc/classes/EditorProperty.xml:113
msgid "Used by sub-inspectors. Emit it if what was selected was an Object ID."
msgstr ""
-#: doc/classes/EditorProperty.xml:121
+#: doc/classes/EditorProperty.xml:122
msgid ""
"Do not emit this manually, use the [method emit_changed] method instead."
msgstr ""
-#: doc/classes/EditorProperty.xml:130
+#: doc/classes/EditorProperty.xml:131
msgid "Emitted when a property was checked. Used internally."
msgstr ""
-#: doc/classes/EditorProperty.xml:143
+#: doc/classes/EditorProperty.xml:138
+msgid "Emitted when a property was deleted. Used internally."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:145
msgid ""
"Emit it if you want to add this value as an animation key (check for keying "
"being enabled first)."
msgstr ""
-#: doc/classes/EditorProperty.xml:152
+#: doc/classes/EditorProperty.xml:154
msgid "Emit it if you want to key a property with a single value."
msgstr ""
-#: doc/classes/EditorProperty.xml:161
+#: doc/classes/EditorProperty.xml:163
msgid ""
"If you want a sub-resource to be edited, emit this signal with the resource."
msgstr ""
-#: doc/classes/EditorProperty.xml:170
+#: doc/classes/EditorProperty.xml:172
msgid "Emitted when selected. Used internally."
msgstr ""
@@ -19247,17 +19613,26 @@ msgstr ""
msgid ""
"Object that holds the project-independent editor settings. These settings "
"are generally visible in the [b]Editor > Editor Settings[/b] menu.\n"
-"Accessing the settings is done by using the regular [Object] API, such as:\n"
-"[codeblock]\n"
-"settings.set(prop,value)\n"
-"settings.get(prop)\n"
-"list_of_settings = settings.get_property_list()\n"
+"Property names use slash delimiters to distinguish sections. Setting values "
+"can be of any [Variant] type. It's recommended to use [code]snake_case[/"
+"code] for editor settings to be consistent with the Godot editor itself.\n"
+"Accessing the settings can be done using the following methods, such as:\n"
+"[codeblock]\n"
+"# `settings.set(\"some/property\", value)` also works as this class "
+"overrides `_set()` internally.\n"
+"settings.set_setting(\"some/property\",value)\n"
+"\n"
+"# `settings.get(\"some/property\", value)` also works as this class "
+"overrides `_get()` internally.\n"
+"settings.get_setting(\"some/property\")\n"
+"\n"
+"var list_of_settings = settings.get_property_list()\n"
"[/codeblock]\n"
"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
"the singleton using [method EditorInterface.get_editor_settings]."
msgstr ""
-#: doc/classes/EditorSettings.xml:25
+#: doc/classes/EditorSettings.xml:30
msgid ""
"Adds a custom property info to a property. The dictionary must contain:\n"
"- [code]name[/code]: [String] (the name of the property)\n"
@@ -19279,52 +19654,173 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorSettings.xml:50
-msgid "Erase a given setting (pass full property path)."
+#: doc/classes/EditorSettings.xml:55
+msgid "Erases the setting whose name is specified by [code]property[/code]."
msgstr ""
-#: doc/classes/EditorSettings.xml:57
-msgid "Gets the list of favorite files and directories for this project."
+#: doc/classes/EditorSettings.xml:62
+msgid "Returns the list of favorite files and directories for this project."
msgstr ""
-#: doc/classes/EditorSettings.xml:76
+#: doc/classes/EditorSettings.xml:75
msgid ""
-"Gets the specific project settings path. Projects all have a unique sub-"
-"directory inside the settings path where project specific settings are saved."
+"Returns project-specific metadata for the [code]section[/code] and "
+"[code]key[/code] specified. If the metadata doesn't exist, [code]default[/"
+"code] will be returned instead. See also [method set_project_metadata]."
msgstr ""
-#: doc/classes/EditorSettings.xml:83
+#: doc/classes/EditorSettings.xml:82
msgid ""
-"Gets the list of recently visited folders in the file dialog for this "
+"Returns the project-specific settings path. Projects all have a unique "
+"subdirectory inside the settings path where project-specific settings are "
+"saved."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:89
+msgid ""
+"Returns the list of recently visited folders in the file dialog for this "
"project."
msgstr ""
#: doc/classes/EditorSettings.xml:98
msgid ""
+"Returns the value of the setting specified by [code]name[/code]. This is "
+"equivalent to using [method Object.get] on the EditorSettings instance."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:105
+msgid ""
"Gets the global settings path for the engine. Inside this path, you can find "
"some standard paths such as:\n"
"[code]settings/tmp[/code] - Used for temporary storage of files\n"
"[code]settings/templates[/code] - Where export templates are located"
msgstr ""
-#: doc/classes/EditorSettings.xml:133
+#: doc/classes/EditorSettings.xml:116
+msgid ""
+"Returns [code]true[/code] if the setting specified by [code]name[/code] "
+"exists, [code]false[/code] otherwise."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:125
+msgid ""
+"Returns [code]true[/code] if the setting specified by [code]name[/code] can "
+"have its value reverted to the default value, [code]false[/code] otherwise. "
+"When this method returns [code]true[/code], a Revert button will display "
+"next to the setting in the Editor Settings."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:134
+msgid ""
+"Returns the default value of the setting specified by [code]name[/code]. "
+"This is the value that would be applied when clicking the Revert button in "
+"the Editor Settings."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:143
msgid "Sets the list of favorite files and directories for this project."
msgstr ""
-#: doc/classes/EditorSettings.xml:166
+#: doc/classes/EditorSettings.xml:156
+msgid ""
+"Sets the initial value of the setting specified by [code]name[/code] to "
+"[code]value[/code]. This is used to provide a value for the Revert button in "
+"the Editor Settings. If [code]update_current[/code] is true, the current "
+"value of the setting will be set to [code]value[/code] as well."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:169
+msgid ""
+"Sets project-specific metadata with the [code]section[/code], [code]key[/"
+"code] and [code]data[/code] specified. This metadata is stored outside the "
+"project folder and therefore won't be checked into version control. See also "
+"[method get_project_metadata]."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:178
msgid ""
"Sets the list of recently visited folders in the file dialog for this "
"project."
msgstr ""
-#: doc/classes/EditorSettings.xml:183
-msgid "Emitted when editor settings change."
+#: doc/classes/EditorSettings.xml:189
+msgid ""
+"Sets the [code]value[/code] of the setting specified by [code]name[/code]. "
+"This is equivalent to using [method Object.set] on the EditorSettings "
+"instance."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:196
+msgid "Emitted after any editor setting has changed."
msgstr ""
-#: doc/classes/EditorSettings.xml:189
+#: doc/classes/EditorSettings.xml:202
+msgid ""
+"Emitted after any editor setting has changed. It's used by various editor "
+"plugins to update their visuals on theme changes or logic on configuration "
+"changes."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:4
+msgid ""
+"Plugin for adding custom parsers to extract strings that are to be "
+"translated from custom files (.csv, .json etc.)."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:7
+msgid ""
+"Plugins are registered via [method EditorPlugin."
+"add_translation_parser_plugin] method. To define the parsing and string "
+"extraction logic, override the [method parse_file] method in script.\n"
+"The extracted strings will be written into a POT file selected by user under "
+"\"POT Generation\" in \"Localization\" tab in \"Project Settings\" menu.\n"
+"Below shows an example of a custom parser that extracts strings in a CSV "
+"file to write into a POT.\n"
+"[codeblock]\n"
+"tool\n"
+"extends EditorTranslationParserPlugin\n"
+"\n"
+"\n"
+"func parse_file(path, extracted_strings):\n"
+" var file = File.new()\n"
+" file.open(path, File.READ)\n"
+" var text = file.get_as_text()\n"
+" var split_strs = text.split(\",\", false, 0)\n"
+" for s in split_strs:\n"
+" extracted_strings.append(s)\n"
+" #print(\"Extracted string: \" + s)\n"
+"\n"
+"\n"
+"func get_recognized_extensions():\n"
+" return [\"csv\"]\n"
+"[/codeblock]\n"
+"[b]Note:[/b] If you override parsing logic for standard script types "
+"(GDScript, C#, etc.), it would be better to load the [code]path[/code] "
+"argument using [method ResourceLoader.load]. This is because built-in "
+"scripts are loaded as [Resource] type, not [File] type.\n"
+"For example:\n"
+"[codeblock]\n"
+"func parse_file(path, extracted_strings):\n"
+" var res = ResourceLoader.load(path, \"Script\")\n"
+" var text = res.get_source_code()\n"
+" # Parsing logic.\n"
+"\n"
+"\n"
+"func get_recognized_extensions():\n"
+" return [\"gd\"]\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:48
+msgid ""
+"Gets the list of file extensions to associate with this parser, e.g. [code]"
+"[\"csv\"][/code]."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:59
msgid ""
-"Emitted when editor settings change. It used by various editor plugins to "
-"update their visuals on theme changes or logic on configuration changes."
+"Override this method to define a custom parsing logic to extract the "
+"translatable strings."
msgstr ""
#: doc/classes/EditorVCSInterface.xml:4
@@ -19935,15 +20431,15 @@ msgid ""
"to 1.3 to compensate for the lack of HDR rendering."
msgstr ""
-#: doc/classes/Environment.xml:190
+#: doc/classes/Environment.xml:214
msgid "The [Sky] resource used for this [Environment]."
msgstr ""
-#: doc/classes/Environment.xml:197
+#: doc/classes/Environment.xml:221
msgid "The depth tolerance for screen-space reflections."
msgstr ""
-#: doc/classes/Environment.xml:200
+#: doc/classes/Environment.xml:224
msgid ""
"If [code]true[/code], screen-space reflections are enabled. Screen-space "
"reflections are more accurate than reflections from [GIProbe]s or "
@@ -19951,48 +20447,48 @@ msgid ""
"others."
msgstr ""
-#: doc/classes/Environment.xml:203
+#: doc/classes/Environment.xml:227
msgid ""
"The fade-in distance for screen-space reflections. Affects the area from the "
"reflected material to the screen-space reflection)."
msgstr ""
-#: doc/classes/Environment.xml:206
+#: doc/classes/Environment.xml:230
msgid ""
"The fade-out distance for screen-space reflections. Affects the area from "
"the screen-space reflection to the \"global\" reflection."
msgstr ""
-#: doc/classes/Environment.xml:209
+#: doc/classes/Environment.xml:233
msgid ""
"The maximum number of steps for screen-space reflections. Higher values are "
"slower."
msgstr ""
-#: doc/classes/Environment.xml:212
+#: doc/classes/Environment.xml:236
msgid ""
"The screen-space ambient occlusion intensity on materials that have an AO "
"texture defined. Values higher than [code]0[/code] will make the SSAO effect "
"visible in areas darkened by AO textures."
msgstr ""
-#: doc/classes/Environment.xml:215
+#: doc/classes/Environment.xml:239
msgid ""
"The screen-space ambient occlusion bias. This should be kept high enough to "
"prevent \"smooth\" curves from being affected by ambient occlusion."
msgstr ""
-#: doc/classes/Environment.xml:218
+#: doc/classes/Environment.xml:242
msgid ""
"The screen-space ambient occlusion blur quality. See [enum SSAOBlur] for "
"possible values."
msgstr ""
-#: doc/classes/Environment.xml:221
+#: doc/classes/Environment.xml:245
msgid "The screen-space ambient occlusion edge sharpness."
msgstr ""
-#: doc/classes/Environment.xml:224
+#: doc/classes/Environment.xml:248
msgid ""
"If [code]true[/code], the screen-space ambient occlusion effect is enabled. "
"This darkens objects' corners and cavities to simulate ambient light not "
@@ -20003,13 +20499,13 @@ msgid ""
"issues."
msgstr ""
-#: doc/classes/Environment.xml:227
+#: doc/classes/Environment.xml:251
msgid ""
"The primary screen-space ambient occlusion intensity. See also [member "
"ssao_radius]."
msgstr ""
-#: doc/classes/Environment.xml:230
+#: doc/classes/Environment.xml:254
msgid ""
"The screen-space ambient occlusion intensity in direct light. In real life, "
"ambient occlusion only applies to indirect light, which means its effects "
@@ -20017,46 +20513,46 @@ msgid ""
"the SSAO effect visible in direct light."
msgstr ""
-#: doc/classes/Environment.xml:233
+#: doc/classes/Environment.xml:257
msgid "The primary screen-space ambient occlusion radius."
msgstr ""
-#: doc/classes/Environment.xml:236
+#: doc/classes/Environment.xml:260
msgid "The default exposure used for tonemapping."
msgstr ""
-#: doc/classes/Environment.xml:239
+#: doc/classes/Environment.xml:263
msgid ""
"The tonemapping mode to use. Tonemapping is the process that \"converts\" "
"HDR values to be suitable for rendering on a LDR display. (Godot doesn't "
"support rendering on HDR displays yet.)"
msgstr ""
-#: doc/classes/Environment.xml:242
+#: doc/classes/Environment.xml:266
msgid ""
"The white reference value for tonemapping. Only effective if the [member "
"tonemap_mode] isn't set to [constant TONE_MAPPER_LINEAR]."
msgstr ""
-#: doc/classes/Environment.xml:247
+#: doc/classes/Environment.xml:271
msgid ""
"Clears the background using the clear color defined in [member "
"ProjectSettings.rendering/environment/default_clear_color]."
msgstr ""
-#: doc/classes/Environment.xml:250
+#: doc/classes/Environment.xml:274
msgid "Clears the background using a custom clear color."
msgstr ""
-#: doc/classes/Environment.xml:253
+#: doc/classes/Environment.xml:277
msgid "Displays a user-defined sky in the background."
msgstr ""
-#: doc/classes/Environment.xml:256
+#: doc/classes/Environment.xml:280
msgid "Displays a [CanvasLayer] in the background."
msgstr ""
-#: doc/classes/Environment.xml:259
+#: doc/classes/Environment.xml:283
msgid ""
"Keeps on screen every pixel drawn in the background. This is the fastest "
"background mode, but it can only be safely used in fully-interior scenes (no "
@@ -20064,107 +20560,107 @@ msgid ""
"is visible, \"ghost trail\" artifacts will be visible when moving the camera."
msgstr ""
-#: doc/classes/Environment.xml:262 doc/classes/RenderingServer.xml:3446
+#: doc/classes/Environment.xml:286 doc/classes/RenderingServer.xml:3457
msgid "Displays a camera feed in the background."
msgstr ""
-#: doc/classes/Environment.xml:265
+#: doc/classes/Environment.xml:289
msgid "Represents the size of the [enum BGMode] enum."
msgstr ""
-#: doc/classes/Environment.xml:268 doc/classes/RenderingServer.xml:3452
+#: doc/classes/Environment.xml:292 doc/classes/RenderingServer.xml:3463
msgid ""
"Gather ambient light from whichever source is specified as the background."
msgstr ""
-#: doc/classes/Environment.xml:271 doc/classes/RenderingServer.xml:3455
+#: doc/classes/Environment.xml:295 doc/classes/RenderingServer.xml:3466
msgid "Disable ambient light."
msgstr ""
-#: doc/classes/Environment.xml:274 doc/classes/RenderingServer.xml:3458
+#: doc/classes/Environment.xml:298 doc/classes/RenderingServer.xml:3469
msgid "Specify a specific [Color] for ambient light."
msgstr ""
-#: doc/classes/Environment.xml:277 doc/classes/RenderingServer.xml:3461
+#: doc/classes/Environment.xml:301 doc/classes/RenderingServer.xml:3472
msgid ""
"Gather ambient light from the [Sky] regardless of what the background is."
msgstr ""
-#: doc/classes/Environment.xml:280 doc/classes/RenderingServer.xml:3464
+#: doc/classes/Environment.xml:304 doc/classes/RenderingServer.xml:3475
msgid "Use the background for reflections."
msgstr ""
-#: doc/classes/Environment.xml:283 doc/classes/RenderingServer.xml:3467
+#: doc/classes/Environment.xml:307 doc/classes/RenderingServer.xml:3478
msgid "Disable reflections."
msgstr ""
-#: doc/classes/Environment.xml:286 doc/classes/RenderingServer.xml:3470
+#: doc/classes/Environment.xml:310 doc/classes/RenderingServer.xml:3481
msgid "Use the [Sky] for reflections regardless of what the background is."
msgstr ""
-#: doc/classes/Environment.xml:289 doc/classes/RenderingServer.xml:3473
+#: doc/classes/Environment.xml:313
+msgid ""
+"Linear tonemapper operator. Reads the linear data and passes it on "
+"unmodified."
+msgstr ""
+
+#: doc/classes/Environment.xml:316
+msgid ""
+"Reinhardt tonemapper operator. Performs a variation on rendered pixels' "
+"colors by this formula: [code]color = color / (1 + color)[/code]."
+msgstr ""
+
+#: doc/classes/Environment.xml:319
+msgid "Filmic tonemapper operator."
+msgstr ""
+
+#: doc/classes/Environment.xml:322
+msgid "Academy Color Encoding System tonemapper operator."
+msgstr ""
+
+#: doc/classes/Environment.xml:325 doc/classes/RenderingServer.xml:3484
msgid ""
"Additive glow blending mode. Mostly used for particles, glows (bloom), lens "
"flare, bright sources."
msgstr ""
-#: doc/classes/Environment.xml:292 doc/classes/RenderingServer.xml:3476
+#: doc/classes/Environment.xml:328 doc/classes/RenderingServer.xml:3487
msgid ""
"Screen glow blending mode. Increases brightness, used frequently with bloom."
msgstr ""
-#: doc/classes/Environment.xml:295 doc/classes/RenderingServer.xml:3479
+#: doc/classes/Environment.xml:331 doc/classes/RenderingServer.xml:3490
msgid ""
"Soft light glow blending mode. Modifies contrast, exposes shadows and "
"highlights (vivid bloom)."
msgstr ""
-#: doc/classes/Environment.xml:298 doc/classes/RenderingServer.xml:3482
+#: doc/classes/Environment.xml:334 doc/classes/RenderingServer.xml:3493
msgid ""
"Replace glow blending mode. Replaces all pixels' color by the glow value. "
"This can be used to simulate a full-screen blur effect by tweaking the glow "
"parameters to match the original image's brightness."
msgstr ""
-#: doc/classes/Environment.xml:301 doc/classes/RenderingServer.xml:3485
+#: doc/classes/Environment.xml:337 doc/classes/RenderingServer.xml:3496
msgid ""
"Mixes the glow with the underlying color to avoid increasing brightness as "
"much while still maintaining a glow effect."
msgstr ""
-#: doc/classes/Environment.xml:304
-msgid ""
-"Linear tonemapper operator. Reads the linear data and passes it on "
-"unmodified."
-msgstr ""
-
-#: doc/classes/Environment.xml:307
-msgid ""
-"Reinhardt tonemapper operator. Performs a variation on rendered pixels' "
-"colors by this formula: [code]color = color / (1 + color)[/code]."
-msgstr ""
-
-#: doc/classes/Environment.xml:310
-msgid "Filmic tonemapper operator."
-msgstr ""
-
-#: doc/classes/Environment.xml:313
-msgid "Academy Color Encoding System tonemapper operator."
-msgstr ""
-
-#: doc/classes/Environment.xml:316
+#: doc/classes/Environment.xml:340
msgid "No blur for the screen-space ambient occlusion effect (fastest)."
msgstr ""
-#: doc/classes/Environment.xml:319
+#: doc/classes/Environment.xml:343
msgid "1×1 blur for the screen-space ambient occlusion effect."
msgstr ""
-#: doc/classes/Environment.xml:322
+#: doc/classes/Environment.xml:346
msgid "2×2 blur for the screen-space ambient occlusion effect."
msgstr ""
-#: doc/classes/Environment.xml:325
+#: doc/classes/Environment.xml:349
msgid ""
"3×3 blur for the screen-space ambient occlusion effect. Increases the radius "
"of the blur for a smoother look, but can result in checkerboard-like "
@@ -20249,14 +20745,17 @@ msgid ""
" var content = file.get_as_text()\n"
" file.close()\n"
" return content\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"In the example above, the file will be saved in the user data folder as "
+"specified in the [url=https://docs.godotengine.org/en/latest/tutorials/io/"
+"data_paths.html]Data paths[/url] documentation."
msgstr ""
-#: doc/classes/File.xml:32
+#: doc/classes/File.xml:33
msgid "Closes the currently opened file."
msgstr ""
-#: doc/classes/File.xml:39
+#: doc/classes/File.xml:40
msgid ""
"Returns [code]true[/code] if the file cursor has read past the end of the "
"file.\n"
@@ -20267,7 +20766,7 @@ msgid ""
"get_position] to implement a custom logic."
msgstr ""
-#: doc/classes/File.xml:49
+#: doc/classes/File.xml:50
msgid ""
"Returns [code]true[/code] if the file exists in the given path.\n"
"[b]Note:[/b] Many resources types are imported (e.g. textures or sound "
@@ -20280,41 +20779,41 @@ msgid ""
"source asset is present in [code]res://[/code], but fail when exported)."
msgstr ""
-#: doc/classes/File.xml:57
+#: doc/classes/File.xml:58
msgid ""
"Returns the next 16 bits from the file as an integer. See [method store_16] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:64
+#: doc/classes/File.xml:65
msgid ""
"Returns the next 32 bits from the file as an integer. See [method store_32] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:71
+#: doc/classes/File.xml:72
msgid ""
"Returns the next 64 bits from the file as an integer. See [method store_64] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:78
+#: doc/classes/File.xml:79
msgid ""
"Returns the next 8 bits from the file as an integer. See [method store_8] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:85
+#: doc/classes/File.xml:86
msgid ""
"Returns the whole file as a [String].\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:95
+#: doc/classes/File.xml:96
msgid "Returns next [code]len[/code] bytes of the file as a [PackedByteArray]."
msgstr ""
-#: doc/classes/File.xml:104
+#: doc/classes/File.xml:105
msgid ""
"Returns the next value of the file in CSV (Comma-Separated Values) format. "
"You can pass a different delimiter [code]delim[/code] to use other than the "
@@ -20323,37 +20822,37 @@ msgid ""
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:112
+#: doc/classes/File.xml:113
msgid "Returns the next 64 bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:119
+#: doc/classes/File.xml:120
msgid ""
"Returns the last error that happened when trying to perform operations. "
"Compare with the [code]ERR_FILE_*[/code] constants from [enum Error]."
msgstr ""
-#: doc/classes/File.xml:126
+#: doc/classes/File.xml:127
msgid "Returns the next 32 bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:133
+#: doc/classes/File.xml:134
msgid "Returns the size of the file in bytes."
msgstr ""
-#: doc/classes/File.xml:140
+#: doc/classes/File.xml:141
msgid ""
"Returns the next line of the file as a [String].\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:150
+#: doc/classes/File.xml:151
msgid ""
"Returns an MD5 String representing the file at the given path or an empty "
"[String] on failure."
msgstr ""
-#: doc/classes/File.xml:159
+#: doc/classes/File.xml:160
msgid ""
"Returns the last time the [code]file[/code] was modified in unix timestamp "
"format or returns a [String] \"ERROR IN [code]file[/code]\". This unix "
@@ -20361,35 +20860,35 @@ msgid ""
"get_datetime_from_unix_time]."
msgstr ""
-#: doc/classes/File.xml:166
+#: doc/classes/File.xml:167
msgid ""
"Returns a [String] saved in Pascal format from the file.\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:174
+#: doc/classes/File.xml:175
msgid "Returns the path as a [String] for the current open file."
msgstr ""
-#: doc/classes/File.xml:181
+#: doc/classes/File.xml:182
msgid "Returns the absolute path as a [String] for the current open file."
msgstr ""
-#: doc/classes/File.xml:188
+#: doc/classes/File.xml:189
msgid "Returns the file cursor's position."
msgstr ""
-#: doc/classes/File.xml:195
+#: doc/classes/File.xml:196
msgid "Returns the next bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:204
+#: doc/classes/File.xml:205
msgid ""
"Returns a SHA-256 [String] representing the file at the given path or an "
"empty [String] on failure."
msgstr ""
-#: doc/classes/File.xml:213
+#: doc/classes/File.xml:214
msgid ""
"Returns the next [Variant] value from the file. If [code]allow_objects[/"
"code] is [code]true[/code], decoding objects is allowed.\n"
@@ -20398,37 +20897,38 @@ msgid ""
"to avoid potential security threats such as remote code execution."
msgstr ""
-#: doc/classes/File.xml:221
+#: doc/classes/File.xml:222
msgid "Returns [code]true[/code] if the file is currently opened."
msgstr ""
-#: doc/classes/File.xml:232
+#: doc/classes/File.xml:233
msgid "Opens the file for writing or reading, depending on the flags."
msgstr ""
-#: doc/classes/File.xml:245
+#: doc/classes/File.xml:246
msgid "Opens a compressed file for reading or writing."
msgstr ""
-#: doc/classes/File.xml:258
+#: doc/classes/File.xml:259
msgid ""
"Opens an encrypted file in write or read mode. You need to pass a binary key "
-"to encrypt/decrypt it."
+"to encrypt/decrypt it.\n"
+"[b]Note:[/b] The provided key must be 32 bytes long."
msgstr ""
-#: doc/classes/File.xml:271
+#: doc/classes/File.xml:273
msgid ""
"Opens an encrypted file in write or read mode. You need to pass a password "
"to encrypt/decrypt it."
msgstr ""
-#: doc/classes/File.xml:280
+#: doc/classes/File.xml:282
msgid ""
"Changes the file reading/writing cursor to the specified position (in bytes "
"from the beginning of the file)."
msgstr ""
-#: doc/classes/File.xml:289
+#: doc/classes/File.xml:291
msgid ""
"Changes the file reading/writing cursor to the specified position (in bytes "
"from the end of the file).\n"
@@ -20436,7 +20936,7 @@ msgid ""
"cursor will be at the end of the file."
msgstr ""
-#: doc/classes/File.xml:299
+#: doc/classes/File.xml:301
msgid ""
"Stores an integer as 16 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, "
@@ -20464,7 +20964,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/File.xml:328
+#: doc/classes/File.xml:330
msgid ""
"Stores an integer as 32 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, "
@@ -20473,14 +20973,14 @@ msgid ""
"(see [method store_16] for an example)."
msgstr ""
-#: doc/classes/File.xml:339
+#: doc/classes/File.xml:341
msgid ""
"Stores an integer as 64 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] must lie in the interval [code][-2^63, "
"2^63 - 1][/code] (i.e. be a valid [int] value)."
msgstr ""
-#: doc/classes/File.xml:349
+#: doc/classes/File.xml:351
msgid ""
"Stores an integer as 8 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, 255]"
@@ -20489,11 +20989,11 @@ msgid ""
"(see [method store_16] for an example)."
msgstr ""
-#: doc/classes/File.xml:360
+#: doc/classes/File.xml:362
msgid "Stores the given array of bytes in the file."
msgstr ""
-#: doc/classes/File.xml:371
+#: doc/classes/File.xml:373
msgid ""
"Store the given [PackedStringArray] in the file as a line formatted in the "
"CSV (Comma-Separated Values) format. You can pass a different delimiter "
@@ -20502,45 +21002,45 @@ msgid ""
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:381
+#: doc/classes/File.xml:383
msgid "Stores a floating-point number as 64 bits in the file."
msgstr ""
-#: doc/classes/File.xml:390
+#: doc/classes/File.xml:392
msgid "Stores a floating-point number as 32 bits in the file."
msgstr ""
-#: doc/classes/File.xml:399
+#: doc/classes/File.xml:401
msgid ""
"Stores the given [String] as a line in the file.\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:409
+#: doc/classes/File.xml:411
msgid ""
"Stores the given [String] as a line in the file in Pascal format (i.e. also "
"store the length of the string).\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:419
+#: doc/classes/File.xml:421
msgid "Stores a floating-point number in the file."
msgstr ""
-#: doc/classes/File.xml:428
+#: doc/classes/File.xml:430
msgid ""
"Stores the given [String] in the file.\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:440
+#: doc/classes/File.xml:442
msgid ""
"Stores any Variant value in the file. If [code]full_objects[/code] is "
"[code]true[/code], encoding objects is allowed (and can potentially include "
"code)."
msgstr ""
-#: doc/classes/File.xml:446
+#: doc/classes/File.xml:448
msgid ""
"If [code]true[/code], the file's endianness is swapped. Use this if you're "
"dealing with files written on big-endian machines.\n"
@@ -20548,44 +21048,44 @@ msgid ""
"reset to [code]false[/code] whenever you open the file."
msgstr ""
-#: doc/classes/File.xml:452
+#: doc/classes/File.xml:454
msgid "Opens the file for read operations."
msgstr ""
-#: doc/classes/File.xml:455
+#: doc/classes/File.xml:457
msgid ""
"Opens the file for write operations. Create it if the file does not exist "
"and truncate if it exists."
msgstr ""
-#: doc/classes/File.xml:458
+#: doc/classes/File.xml:460
msgid ""
"Opens the file for read and write operations. Does not truncate the file."
msgstr ""
-#: doc/classes/File.xml:461
+#: doc/classes/File.xml:463
msgid ""
"Opens the file for read and write operations. Create it if the file does not "
"exist and truncate if it exists."
msgstr ""
-#: doc/classes/File.xml:464
+#: doc/classes/File.xml:466
msgid "Uses the [url=http://fastlz.org/]FastLZ[/url] compression method."
msgstr ""
-#: doc/classes/File.xml:467
+#: doc/classes/File.xml:469
msgid ""
"Uses the [url=https://en.wikipedia.org/wiki/DEFLATE]DEFLATE[/url] "
"compression method."
msgstr ""
-#: doc/classes/File.xml:470
+#: doc/classes/File.xml:472
msgid ""
"Uses the [url=https://facebook.github.io/zstd/]Zstandard[/url] compression "
"method."
msgstr ""
-#: doc/classes/File.xml:473
+#: doc/classes/File.xml:475
msgid "Uses the [url=https://www.gzip.org/]gzip[/url] compression method."
msgstr ""
@@ -20801,10 +21301,11 @@ msgid ""
"Draw [code]string[/code] into a canvas item using the font at a given "
"position, with [code]modulate[/code] color, and optionally clipping the "
"width. [code]position[/code] specifies the baseline, not the top. To draw "
-"from the top, [i]ascent[/i] must be added to the Y axis."
+"from the top, [i]ascent[/i] must be added to the Y axis.\n"
+"See also [method CanvasItem.draw_string]."
msgstr ""
-#: doc/classes/Font.xml:47
+#: doc/classes/Font.xml:48
msgid ""
"Draw character [code]char[/code] into a canvas item using the font at a "
"given position, with [code]modulate[/code] color, and optionally kerning if "
@@ -20814,39 +21315,39 @@ msgid ""
"making this function useful for drawing strings character by character."
msgstr ""
-#: doc/classes/Font.xml:54
+#: doc/classes/Font.xml:55
msgid "Returns the font ascent (number of pixels above the baseline)."
msgstr ""
-#: doc/classes/Font.xml:65
+#: doc/classes/Font.xml:66
msgid ""
"Returns the size of a character, optionally taking kerning into account if "
"the next character is provided."
msgstr ""
-#: doc/classes/Font.xml:72
+#: doc/classes/Font.xml:73
msgid "Returns the font descent (number of pixels below the baseline)."
msgstr ""
-#: doc/classes/Font.xml:79
+#: doc/classes/Font.xml:80
msgid "Returns the total font height (ascent plus descent) in pixels."
msgstr ""
-#: doc/classes/Font.xml:88
+#: doc/classes/Font.xml:89
msgid "Returns the size of a string, taking kerning and advance into account."
msgstr ""
-#: doc/classes/Font.xml:99
+#: doc/classes/Font.xml:100
msgid ""
"Returns the size that the string would have with word wrapping enabled with "
"a fixed [code]width[/code]."
msgstr ""
-#: doc/classes/Font.xml:106
+#: doc/classes/Font.xml:107
msgid "Returns [code]true[/code] if the font has an outline."
msgstr ""
-#: doc/classes/Font.xml:119
+#: doc/classes/Font.xml:120
msgid ""
"After editing a font (changing size, ascent, char rects, etc.). Call this "
"function to propagate changes to controls that might use it."
@@ -21018,13 +21519,14 @@ msgstr ""
#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:7
msgid ""
-"Calling [method @GDScript.yield] within a function will cause that function "
-"to yield and return its current state as an object of this type. The yielded "
+"FIXME: Outdated docs as of GDScript rewrite in 4.0.\n"
+"Calling [code]yield[/code] within a function will cause that function to "
+"yield and return its current state as an object of this type. The yielded "
"function call can then be resumed later by calling [method resume] on this "
"state object."
msgstr ""
-#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:18
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:19
msgid ""
"Check whether the function call may be resumed. This is not the case if the "
"function state was already resumed.\n"
@@ -21035,12 +21537,12 @@ msgid ""
"script have survived up to that point."
msgstr ""
-#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:28
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:29
msgid ""
"Resume execution of the yielded function call.\n"
-"If handed an argument, return the argument from the [method @GDScript.yield] "
-"call in the yielded function call. You can pass e.g. an [Array] to hand "
-"multiple arguments.\n"
+"If handed an argument, return the argument from the [code]yield[/code] call "
+"in the yielded function call. You can pass e.g. an [Array] to hand multiple "
+"arguments.\n"
"This function returns what the resumed function call returns, possibly "
"another function state if yielded again."
msgstr ""
@@ -21609,10 +22111,20 @@ msgid ""
"code], see [enum PolyJoinType].\n"
"The operation may result in an outer polygon (boundary) and inner polygon "
"(hole) produced which could be distinguished by calling [method "
-"is_polygon_clockwise]."
+"is_polygon_clockwise].\n"
+"[b]Note:[/b] To translate the polygon's vertices specifically, use the "
+"[method Transform2D.xform] method:\n"
+"[codeblock]\n"
+"var polygon = PackedVector2Array([Vector2(0, 0), Vector2(100, 0), "
+"Vector2(100, 100), Vector2(0, 100)])\n"
+"var offset = Vector2(50, 50)\n"
+"polygon = Transform2D(0, offset).xform(polygon)\n"
+"print(polygon) # prints [Vector2(50, 50), Vector2(150, 50), Vector2(150, "
+"150), Vector2(50, 150)]\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/Geometry2D.xml:217
+#: doc/classes/Geometry2D.xml:224
msgid ""
"Inflates or deflates [code]polyline[/code] by [code]delta[/code] units "
"(pixels), producing polygons. If [code]delta[/code] is positive, makes the "
@@ -21628,13 +22140,13 @@ msgid ""
"is_polygon_clockwise]."
msgstr ""
-#: doc/classes/Geometry2D.xml:235
+#: doc/classes/Geometry2D.xml:242
msgid ""
"Returns if [code]point[/code] is inside the triangle specified by [code]a[/"
"code], [code]b[/code] and [code]c[/code]."
msgstr ""
-#: doc/classes/Geometry2D.xml:250
+#: doc/classes/Geometry2D.xml:257
msgid ""
"Checks if the two segments ([code]from_a[/code], [code]to_a[/code]) and "
"([code]from_b[/code], [code]to_b[/code]) intersect. If yes, return the point "
@@ -21642,7 +22154,7 @@ msgid ""
"empty [Variant]."
msgstr ""
-#: doc/classes/Geometry2D.xml:259
+#: doc/classes/Geometry2D.xml:266
msgid ""
"Triangulates the area specified by discrete set of [code]points[/code] such "
"that no point is inside the circumcircle of any resulting triangle. Returns "
@@ -21653,7 +22165,7 @@ msgid ""
"[PackedInt32Array] is returned."
msgstr ""
-#: doc/classes/Geometry2D.xml:268
+#: doc/classes/Geometry2D.xml:275
msgid ""
"Triangulates the polygon specified by the points in [code]polygon[/code]. "
"Returns a [PackedInt32Array] where each triangle consists of three "
@@ -21663,40 +22175,40 @@ msgid ""
"[PackedInt32Array] is returned."
msgstr ""
-#: doc/classes/Geometry2D.xml:274
+#: doc/classes/Geometry2D.xml:281
msgid ""
"Create regions where either subject or clip polygons (or both) are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:277
+#: doc/classes/Geometry2D.xml:284
msgid ""
"Create regions where subject polygons are filled except where clip polygons "
"are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:280
+#: doc/classes/Geometry2D.xml:287
msgid "Create regions where both subject and clip polygons are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:283
+#: doc/classes/Geometry2D.xml:290
msgid ""
"Create regions where either subject or clip polygons are filled but not "
"where both are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:286
+#: doc/classes/Geometry2D.xml:293
msgid ""
"Squaring is applied uniformally at all convex edge joins at [code]1 * delta[/"
"code]."
msgstr ""
-#: doc/classes/Geometry2D.xml:289
+#: doc/classes/Geometry2D.xml:296
msgid ""
"While flattened paths can never perfectly trace an arc, they are "
"approximated by a series of arc chords."
msgstr ""
-#: doc/classes/Geometry2D.xml:292
+#: doc/classes/Geometry2D.xml:299
msgid ""
"There's a necessary limit to mitered joins since offsetting edges that join "
"at very acute angles will produce excessively long and narrow \"spikes\". "
@@ -21704,27 +22216,27 @@ msgid ""
"distance, \"square\" joining is applied."
msgstr ""
-#: doc/classes/Geometry2D.xml:295
+#: doc/classes/Geometry2D.xml:302
msgid ""
"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
"as a polygon."
msgstr ""
-#: doc/classes/Geometry2D.xml:298
+#: doc/classes/Geometry2D.xml:305
msgid ""
"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
"as a polyline."
msgstr ""
-#: doc/classes/Geometry2D.xml:301
+#: doc/classes/Geometry2D.xml:308
msgid "Endpoints are squared off with no extension."
msgstr ""
-#: doc/classes/Geometry2D.xml:304
+#: doc/classes/Geometry2D.xml:311
msgid "Endpoints are squared off and extended by [code]delta[/code] units."
msgstr ""
-#: doc/classes/Geometry2D.xml:307
+#: doc/classes/Geometry2D.xml:314
msgid "Endpoints are rounded off and extended by [code]delta[/code] units."
msgstr ""
@@ -21954,7 +22466,7 @@ msgstr ""
msgid ""
"Bakes the effect from all [GeometryInstance3D]s marked with [constant "
"GeometryInstance3D.GI_MODE_BAKED] and [Light3D]s marked with either "
-"[constant Light3D.BAKE_INDIRECT] or [constant Light3D.BAKE_ALL]. If "
+"[constant Light3D.BAKE_DYNAMIC] or [constant Light3D.BAKE_STATIC]. If "
"[code]create_visual_debug[/code] is [code]true[/code], after baking the "
"light, this will generate a [MultiMesh] that has a cube representing each "
"solid cell with each cube colored to the cell's albedo color. This can be "
@@ -22841,121 +23353,119 @@ msgstr ""
msgid "Clear all cells."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:53
+#: modules/gridmap/doc_classes/GridMap.xml:49
msgid ""
-"The [MeshLibrary] item index located at the grid-based X, Y and Z "
-"coordinates. If the cell is empty, [constant INVALID_CELL_ITEM] will be "
-"returned."
+"The [MeshLibrary] item index located at the given grid coordinates. If the "
+"cell is empty, [constant INVALID_CELL_ITEM] will be returned."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:66
+#: modules/gridmap/doc_classes/GridMap.xml:58
msgid ""
-"The orientation of the cell at the grid-based X, Y and Z coordinates. -1 is "
-"returned if the cell is empty."
+"The orientation of the cell at the given grid coordinates. [code]-1[/code] "
+"is returned if the cell is empty."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:75 doc/classes/PhysicsBody2D.xml:35
+#: modules/gridmap/doc_classes/GridMap.xml:67 doc/classes/PhysicsBody2D.xml:35
#: doc/classes/PhysicsBody3D.xml:35
msgid "Returns an individual bit on the [member collision_layer]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:84 doc/classes/PhysicsBody2D.xml:44
+#: modules/gridmap/doc_classes/GridMap.xml:76 doc/classes/PhysicsBody2D.xml:44
#: doc/classes/PhysicsBody3D.xml:44
msgid "Returns an individual bit on the [member collision_mask]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:91
+#: modules/gridmap/doc_classes/GridMap.xml:83
msgid ""
"Returns an array of [Transform] and [Mesh] references corresponding to the "
"non-empty cells in the grid. The transforms are specified in world space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:98
+#: modules/gridmap/doc_classes/GridMap.xml:90
msgid ""
"Returns an array of [Vector3] with the non-empty cell coordinates in the "
"grid map."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:121
+#: modules/gridmap/doc_classes/GridMap.xml:109
msgid ""
"Returns the position of a grid cell in the GridMap's local coordinate space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:146
+#: modules/gridmap/doc_classes/GridMap.xml:130
msgid ""
-"Sets the mesh index for the cell referenced by its grid-based X, Y and Z "
-"coordinates.\n"
+"Sets the mesh index for the cell referenced by its grid coordinates.\n"
"A negative item index such as [constant INVALID_CELL_ITEM] will clear the "
"cell.\n"
"Optionally, the item's orientation can be passed. For valid orientation "
"values, see [method Basis.get_orthogonal_index]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:173
+#: modules/gridmap/doc_classes/GridMap.xml:157
msgid "Sets an individual bit on the [member collision_layer]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:184
+#: modules/gridmap/doc_classes/GridMap.xml:168
msgid "Sets an individual bit on the [member collision_mask]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:193
+#: modules/gridmap/doc_classes/GridMap.xml:177
msgid ""
"Returns the coordinates of the grid cell containing the given point.\n"
"[code]pos[/code] should be in the GridMap's local coordinate space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:200
+#: modules/gridmap/doc_classes/GridMap.xml:184
msgid "If [code]true[/code], grid items are centered on the X axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:203
+#: modules/gridmap/doc_classes/GridMap.xml:187
msgid "If [code]true[/code], grid items are centered on the Y axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:206
+#: modules/gridmap/doc_classes/GridMap.xml:190
msgid "If [code]true[/code], grid items are centered on the Z axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:209
+#: modules/gridmap/doc_classes/GridMap.xml:193
msgid ""
"The size of each octant measured in number of cells. This applies to all "
"three axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:212
+#: modules/gridmap/doc_classes/GridMap.xml:196
msgid ""
"The scale of the cell items.\n"
"This does not affect the size of the grid cells themselves, only the items "
"in them. This can be used to make cell items overlap their neighbors."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:216
+#: modules/gridmap/doc_classes/GridMap.xml:200
msgid ""
"The dimensions of the grid's cells.\n"
"This does not affect the size of the meshes. See [member cell_scale]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:220
+#: modules/gridmap/doc_classes/GridMap.xml:204
msgid ""
"The physics layers this GridMap is in.\n"
"GridMaps act as static bodies, meaning they aren't affected by gravity or "
"other forces. They only affect other physics bodies that collide with them."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:224
+#: modules/gridmap/doc_classes/GridMap.xml:208
msgid "The physics layers this GridMap detects collisions in."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:227
+#: modules/gridmap/doc_classes/GridMap.xml:211
msgid "The assigned [MeshLibrary]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:235
+#: modules/gridmap/doc_classes/GridMap.xml:219
msgid "Emitted when [member cell_size] changes."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:241
+#: modules/gridmap/doc_classes/GridMap.xml:225
msgid ""
"Invalid cell item that can be used in [method set_cell_item] to clear cells "
"(or represent an empty cell in [method get_cell_item])."
@@ -23320,27 +23830,33 @@ msgid ""
"server's side.\n"
"For more information on HTTP, see https://developer.mozilla.org/en-US/docs/"
"Web/HTTP (or read RFC 2616 to get it straight from the source: https://tools."
-"ietf.org/html/rfc2616)."
+"ietf.org/html/rfc2616).\n"
+"[b]Note:[/b] When performing HTTP requests from a project exported to HTML5, "
+"keep in mind the remote server may not allow requests from foreign origins "
+"due to [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/"
+"url]. If you host the server in question, you should modify its backend to "
+"allow requests from foreign origins by adding the [code]Access-Control-Allow-"
+"Origin: *[/code] HTTP header."
msgstr ""
-#: doc/classes/HTTPClient.xml:13
+#: doc/classes/HTTPClient.xml:14
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/"
"http_client_class.html"
msgstr ""
-#: doc/classes/HTTPClient.xml:14 doc/classes/HTTPRequest.xml:62
+#: doc/classes/HTTPClient.xml:15 doc/classes/HTTPRequest.xml:71
#: doc/classes/StreamPeerSSL.xml:10
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/ssl_certificates."
"html"
msgstr ""
-#: doc/classes/HTTPClient.xml:21
+#: doc/classes/HTTPClient.xml:22
msgid "Closes the current connection, allowing reuse of this [HTTPClient]."
msgstr ""
-#: doc/classes/HTTPClient.xml:36
+#: doc/classes/HTTPClient.xml:37
msgid ""
"Connects to a host. This needs to be done before any requests are sent.\n"
"The host should not have http:// prepended but will strip the protocol "
@@ -23352,7 +23868,7 @@ msgid ""
"[code]true[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:46
+#: doc/classes/HTTPClient.xml:47
msgid ""
"Returns the response's body length.\n"
"[b]Note:[/b] Some Web servers may not send a body length. In this case, the "
@@ -23360,15 +23876,15 @@ msgid ""
"the body length will also be [code]-1[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:54
+#: doc/classes/HTTPClient.xml:55
msgid "Returns the response's HTTP status code."
msgstr ""
-#: doc/classes/HTTPClient.xml:61
+#: doc/classes/HTTPClient.xml:62
msgid "Returns the response headers."
msgstr ""
-#: doc/classes/HTTPClient.xml:68
+#: doc/classes/HTTPClient.xml:69
msgid ""
"Returns all response headers as a Dictionary of structure [code]{ \"key\": "
"\"value1; value2\" }[/code] where the case-sensitivity of the keys and "
@@ -23383,27 +23899,27 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:82
+#: doc/classes/HTTPClient.xml:83
msgid ""
"Returns a [enum Status] constant. Need to call [method poll] in order to get "
"status updates."
msgstr ""
-#: doc/classes/HTTPClient.xml:89
+#: doc/classes/HTTPClient.xml:90
msgid "If [code]true[/code], this [HTTPClient] has a response available."
msgstr ""
-#: doc/classes/HTTPClient.xml:96
+#: doc/classes/HTTPClient.xml:97
msgid "If [code]true[/code], this [HTTPClient] has a response that is chunked."
msgstr ""
-#: doc/classes/HTTPClient.xml:103
+#: doc/classes/HTTPClient.xml:104
msgid ""
"This needs to be called in order to have any request processed. Check "
"results with [method get_status]."
msgstr ""
-#: doc/classes/HTTPClient.xml:112
+#: doc/classes/HTTPClient.xml:113
msgid ""
"Generates a GET/POST application/x-www-form-urlencoded style query string "
"from a provided dictionary, e.g.:\n"
@@ -23423,11 +23939,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:130
+#: doc/classes/HTTPClient.xml:131
msgid "Reads one chunk from the response."
msgstr ""
-#: doc/classes/HTTPClient.xml:145
+#: doc/classes/HTTPClient.xml:146
msgid ""
"Sends a request to the connected host. The URL parameter is just the part "
"after the host, so for [code]http://somehost.com/index.php[/code], it is "
@@ -23445,7 +23961,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:168
+#: doc/classes/HTTPClient.xml:169
msgid ""
"Sends a raw request to the connected host. The URL parameter is just the "
"part after the host, so for [code]http://somehost.com/index.php[/code], it "
@@ -23455,43 +23971,43 @@ msgid ""
"Sends the body data raw, as a byte array and does not encode it in any way."
msgstr ""
-#: doc/classes/HTTPClient.xml:176
+#: doc/classes/HTTPClient.xml:177
msgid ""
"If [code]true[/code], execution will block until all data is read from the "
"response."
msgstr ""
-#: doc/classes/HTTPClient.xml:179
+#: doc/classes/HTTPClient.xml:180
msgid "The connection to use for this client."
msgstr ""
-#: doc/classes/HTTPClient.xml:182
+#: doc/classes/HTTPClient.xml:183
msgid ""
"The size of the buffer used and maximum bytes to read per iteration. See "
"[method read_response_body_chunk]."
msgstr ""
-#: doc/classes/HTTPClient.xml:187
+#: doc/classes/HTTPClient.xml:188
msgid ""
"HTTP GET method. The GET method requests a representation of the specified "
"resource. Requests using GET should only retrieve data."
msgstr ""
-#: doc/classes/HTTPClient.xml:190
+#: doc/classes/HTTPClient.xml:191
msgid ""
"HTTP HEAD method. The HEAD method asks for a response identical to that of a "
"GET request, but without the response body. This is useful to request "
"metadata like HTTP headers or to check if a resource exists."
msgstr ""
-#: doc/classes/HTTPClient.xml:193
+#: doc/classes/HTTPClient.xml:194
msgid ""
"HTTP POST method. The POST method is used to submit an entity to the "
"specified resource, often causing a change in state or side effects on the "
"server. This is often used for forms and submitting data or uploading files."
msgstr ""
-#: doc/classes/HTTPClient.xml:196
+#: doc/classes/HTTPClient.xml:197
msgid ""
"HTTP PUT method. The PUT method asks to replace all current representations "
"of the target resource with the request payload. (You can think of POST as "
@@ -23499,103 +24015,103 @@ msgid ""
"not make a clear distinction or change their meaning)."
msgstr ""
-#: doc/classes/HTTPClient.xml:199
+#: doc/classes/HTTPClient.xml:200
msgid ""
"HTTP DELETE method. The DELETE method requests to delete the specified "
"resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:202
+#: doc/classes/HTTPClient.xml:203
msgid ""
"HTTP OPTIONS method. The OPTIONS method asks for a description of the "
"communication options for the target resource. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:205
+#: doc/classes/HTTPClient.xml:206
msgid ""
"HTTP TRACE method. The TRACE method performs a message loop-back test along "
"the path to the target resource. Returns the entire HTTP request received in "
"the response body. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:208
+#: doc/classes/HTTPClient.xml:209
msgid ""
"HTTP CONNECT method. The CONNECT method establishes a tunnel to the server "
"identified by the target resource. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:211
+#: doc/classes/HTTPClient.xml:212
msgid ""
"HTTP PATCH method. The PATCH method is used to apply partial modifications "
"to a resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:214
+#: doc/classes/HTTPClient.xml:215
msgid "Represents the size of the [enum Method] enum."
msgstr ""
-#: doc/classes/HTTPClient.xml:217
+#: doc/classes/HTTPClient.xml:218
msgid "Status: Disconnected from the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:220
+#: doc/classes/HTTPClient.xml:221
msgid "Status: Currently resolving the hostname for the given URL into an IP."
msgstr ""
-#: doc/classes/HTTPClient.xml:223
+#: doc/classes/HTTPClient.xml:224
msgid "Status: DNS failure: Can't resolve the hostname for the given URL."
msgstr ""
-#: doc/classes/HTTPClient.xml:226
+#: doc/classes/HTTPClient.xml:227
msgid "Status: Currently connecting to server."
msgstr ""
-#: doc/classes/HTTPClient.xml:229
+#: doc/classes/HTTPClient.xml:230
msgid "Status: Can't connect to the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:232
+#: doc/classes/HTTPClient.xml:233
msgid "Status: Connection established."
msgstr ""
-#: doc/classes/HTTPClient.xml:235
+#: doc/classes/HTTPClient.xml:236
msgid "Status: Currently sending request."
msgstr ""
-#: doc/classes/HTTPClient.xml:238
+#: doc/classes/HTTPClient.xml:239
msgid "Status: HTTP body received."
msgstr ""
-#: doc/classes/HTTPClient.xml:241
+#: doc/classes/HTTPClient.xml:242
msgid "Status: Error in HTTP connection."
msgstr ""
-#: doc/classes/HTTPClient.xml:244
+#: doc/classes/HTTPClient.xml:245
msgid "Status: Error in SSL handshake."
msgstr ""
-#: doc/classes/HTTPClient.xml:247
+#: doc/classes/HTTPClient.xml:248
msgid ""
"HTTP status code [code]100 Continue[/code]. Interim response that indicates "
"everything so far is OK and that the client should continue with the request "
"(or ignore this status if already finished)."
msgstr ""
-#: doc/classes/HTTPClient.xml:250
+#: doc/classes/HTTPClient.xml:251
msgid ""
"HTTP status code [code]101 Switching Protocol[/code]. Sent in response to an "
"[code]Upgrade[/code] request header by the client. Indicates the protocol "
"the server is switching to."
msgstr ""
-#: doc/classes/HTTPClient.xml:253
+#: doc/classes/HTTPClient.xml:254
msgid ""
"HTTP status code [code]102 Processing[/code] (WebDAV). Indicates that the "
"server has received and is processing the request, but no response is "
"available yet."
msgstr ""
-#: doc/classes/HTTPClient.xml:256
+#: doc/classes/HTTPClient.xml:257
msgid ""
"HTTP status code [code]200 OK[/code]. The request has succeeded. Default "
"response for successful requests. Meaning varies depending on the request. "
@@ -23606,14 +24122,14 @@ msgid ""
"server."
msgstr ""
-#: doc/classes/HTTPClient.xml:259
+#: doc/classes/HTTPClient.xml:260
msgid ""
"HTTP status code [code]201 Created[/code]. The request has succeeded and a "
"new resource has been created as a result of it. This is typically the "
"response sent after a PUT request."
msgstr ""
-#: doc/classes/HTTPClient.xml:262
+#: doc/classes/HTTPClient.xml:263
msgid ""
"HTTP status code [code]202 Accepted[/code]. The request has been received "
"but not yet acted upon. It is non-committal, meaning that there is no way in "
@@ -23622,7 +24138,7 @@ msgid ""
"server handles the request, or for batch processing."
msgstr ""
-#: doc/classes/HTTPClient.xml:265
+#: doc/classes/HTTPClient.xml:266
msgid ""
"HTTP status code [code]203 Non-Authoritative Information[/code]. This "
"response code means returned meta-information set is not exact set as "
@@ -23631,14 +24147,14 @@ msgid ""
"instead of this response."
msgstr ""
-#: doc/classes/HTTPClient.xml:268
+#: doc/classes/HTTPClient.xml:269
msgid ""
"HTTP status code [code]204 No Content[/code]. There is no content to send "
"for this request, but the headers may be useful. The user-agent may update "
"its cached headers for this resource with the new ones."
msgstr ""
-#: doc/classes/HTTPClient.xml:271
+#: doc/classes/HTTPClient.xml:272
msgid ""
"HTTP status code [code]205 Reset Content[/code]. The server has fulfilled "
"the request and desires that the client resets the \"document view\" that "
@@ -23646,49 +24162,49 @@ msgid ""
"origin server."
msgstr ""
-#: doc/classes/HTTPClient.xml:274
+#: doc/classes/HTTPClient.xml:275
msgid ""
"HTTP status code [code]206 Partial Content[/code]. This response code is "
"used because of a range header sent by the client to separate download into "
"multiple streams."
msgstr ""
-#: doc/classes/HTTPClient.xml:277
+#: doc/classes/HTTPClient.xml:278
msgid ""
"HTTP status code [code]207 Multi-Status[/code] (WebDAV). A Multi-Status "
"response conveys information about multiple resources in situations where "
"multiple status codes might be appropriate."
msgstr ""
-#: doc/classes/HTTPClient.xml:280
+#: doc/classes/HTTPClient.xml:281
msgid ""
"HTTP status code [code]208 Already Reported[/code] (WebDAV). Used inside a "
"DAV: propstat response element to avoid enumerating the internal members of "
"multiple bindings to the same collection repeatedly."
msgstr ""
-#: doc/classes/HTTPClient.xml:283
+#: doc/classes/HTTPClient.xml:284
msgid ""
"HTTP status code [code]226 IM Used[/code] (WebDAV). The server has fulfilled "
"a GET request for the resource, and the response is a representation of the "
"result of one or more instance-manipulations applied to the current instance."
msgstr ""
-#: doc/classes/HTTPClient.xml:286
+#: doc/classes/HTTPClient.xml:287
msgid ""
"HTTP status code [code]300 Multiple Choice[/code]. The request has more than "
"one possible responses and there is no standardized way to choose one of the "
"responses. User-agent or user should choose one of them."
msgstr ""
-#: doc/classes/HTTPClient.xml:289
+#: doc/classes/HTTPClient.xml:290
msgid ""
"HTTP status code [code]301 Moved Permanently[/code]. Redirection. This "
"response code means the URI of requested resource has been changed. The new "
"URI is usually included in the response."
msgstr ""
-#: doc/classes/HTTPClient.xml:292
+#: doc/classes/HTTPClient.xml:293
msgid ""
"HTTP status code [code]302 Found[/code]. Temporary redirection. This "
"response code means the URI of requested resource has been changed "
@@ -23696,7 +24212,7 @@ msgid ""
"this same URI should be used by the client in future requests."
msgstr ""
-#: doc/classes/HTTPClient.xml:295
+#: doc/classes/HTTPClient.xml:296
msgid ""
"HTTP status code [code]303 See Other[/code]. The server is redirecting the "
"user agent to a different resource, as indicated by a URI in the Location "
@@ -23704,39 +24220,39 @@ msgid ""
"original request."
msgstr ""
-#: doc/classes/HTTPClient.xml:298
+#: doc/classes/HTTPClient.xml:299
msgid ""
"HTTP status code [code]304 Not Modified[/code]. A conditional GET or HEAD "
"request has been received and would have resulted in a 200 OK response if it "
"were not for the fact that the condition evaluated to [code]false[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:301
+#: doc/classes/HTTPClient.xml:302
msgid ""
"HTTP status code [code]305 Use Proxy[/code]. [i]Deprecated. Do not use.[/i]"
msgstr ""
-#: doc/classes/HTTPClient.xml:304
+#: doc/classes/HTTPClient.xml:305
msgid ""
"HTTP status code [code]306 Switch Proxy[/code]. [i]Deprecated. Do not use.[/"
"i]"
msgstr ""
-#: doc/classes/HTTPClient.xml:307
+#: doc/classes/HTTPClient.xml:308
msgid ""
"HTTP status code [code]307 Temporary Redirect[/code]. The target resource "
"resides temporarily under a different URI and the user agent MUST NOT change "
"the request method if it performs an automatic redirection to that URI."
msgstr ""
-#: doc/classes/HTTPClient.xml:310
+#: doc/classes/HTTPClient.xml:311
msgid ""
"HTTP status code [code]308 Permanent Redirect[/code]. The target resource "
"has been assigned a new permanent URI and any future references to this "
"resource ought to use one of the enclosed URIs."
msgstr ""
-#: doc/classes/HTTPClient.xml:313
+#: doc/classes/HTTPClient.xml:314
msgid ""
"HTTP status code [code]400 Bad Request[/code]. The request was invalid. The "
"server cannot or will not process the request due to something that is "
@@ -23745,21 +24261,21 @@ msgid ""
"routing)."
msgstr ""
-#: doc/classes/HTTPClient.xml:316
+#: doc/classes/HTTPClient.xml:317
msgid ""
"HTTP status code [code]401 Unauthorized[/code]. Credentials required. The "
"request has not been applied because it lacks valid authentication "
"credentials for the target resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:319
+#: doc/classes/HTTPClient.xml:320
msgid ""
"HTTP status code [code]402 Payment Required[/code]. This response code is "
"reserved for future use. Initial aim for creating this code was using it for "
"digital payment systems, however this is not currently used."
msgstr ""
-#: doc/classes/HTTPClient.xml:322
+#: doc/classes/HTTPClient.xml:323
msgid ""
"HTTP status code [code]403 Forbidden[/code]. The client does not have access "
"rights to the content, i.e. they are unauthorized, so server is rejecting to "
@@ -23767,7 +24283,7 @@ msgid ""
"known to the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:325
+#: doc/classes/HTTPClient.xml:326
msgid ""
"HTTP status code [code]404 Not Found[/code]. The server can not find "
"requested resource. Either the URL is not recognized or the endpoint is "
@@ -23775,7 +24291,7 @@ msgid ""
"403 to hide existence of a resource if the client is not authorized."
msgstr ""
-#: doc/classes/HTTPClient.xml:328
+#: doc/classes/HTTPClient.xml:329
msgid ""
"HTTP status code [code]405 Method Not Allowed[/code]. The request's HTTP "
"method is known by the server but has been disabled and cannot be used. For "
@@ -23783,7 +24299,7 @@ msgid ""
"GET and HEAD, must never be disabled and should not return this error code."
msgstr ""
-#: doc/classes/HTTPClient.xml:331
+#: doc/classes/HTTPClient.xml:332
msgid ""
"HTTP status code [code]406 Not Acceptable[/code]. The target resource does "
"not have a current representation that would be acceptable to the user "
@@ -23791,21 +24307,21 @@ msgid ""
"request. Used when negotiation content."
msgstr ""
-#: doc/classes/HTTPClient.xml:334
+#: doc/classes/HTTPClient.xml:335
msgid ""
"HTTP status code [code]407 Proxy Authentication Required[/code]. Similar to "
"401 Unauthorized, but it indicates that the client needs to authenticate "
"itself in order to use a proxy."
msgstr ""
-#: doc/classes/HTTPClient.xml:337
+#: doc/classes/HTTPClient.xml:338
msgid ""
"HTTP status code [code]408 Request Timeout[/code]. The server did not "
"receive a complete request message within the time that it was prepared to "
"wait."
msgstr ""
-#: doc/classes/HTTPClient.xml:340
+#: doc/classes/HTTPClient.xml:341
msgid ""
"HTTP status code [code]409 Conflict[/code]. The request could not be "
"completed due to a conflict with the current state of the target resource. "
@@ -23813,47 +24329,47 @@ msgid ""
"conflict and resubmit the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:343
+#: doc/classes/HTTPClient.xml:344
msgid ""
"HTTP status code [code]410 Gone[/code]. The target resource is no longer "
"available at the origin server and this condition is likely permanent."
msgstr ""
-#: doc/classes/HTTPClient.xml:346
+#: doc/classes/HTTPClient.xml:347
msgid ""
"HTTP status code [code]411 Length Required[/code]. The server refuses to "
"accept the request without a defined Content-Length header."
msgstr ""
-#: doc/classes/HTTPClient.xml:349
+#: doc/classes/HTTPClient.xml:350
msgid ""
"HTTP status code [code]412 Precondition Failed[/code]. One or more "
"conditions given in the request header fields evaluated to [code]false[/"
"code] when tested on the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:352
+#: doc/classes/HTTPClient.xml:353
msgid ""
"HTTP status code [code]413 Entity Too Large[/code]. The server is refusing "
"to process a request because the request payload is larger than the server "
"is willing or able to process."
msgstr ""
-#: doc/classes/HTTPClient.xml:355
+#: doc/classes/HTTPClient.xml:356
msgid ""
"HTTP status code [code]414 Request-URI Too Long[/code]. The server is "
"refusing to service the request because the request-target is longer than "
"the server is willing to interpret."
msgstr ""
-#: doc/classes/HTTPClient.xml:358
+#: doc/classes/HTTPClient.xml:359
msgid ""
"HTTP status code [code]415 Unsupported Media Type[/code]. The origin server "
"is refusing to service the request because the payload is in a format not "
"supported by this method on the target resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:361
+#: doc/classes/HTTPClient.xml:362
msgid ""
"HTTP status code [code]416 Requested Range Not Satisfiable[/code]. None of "
"the ranges in the request's Range header field overlap the current extent of "
@@ -23861,21 +24377,21 @@ msgid ""
"to invalid ranges or an excessive request of small or overlapping ranges."
msgstr ""
-#: doc/classes/HTTPClient.xml:364
+#: doc/classes/HTTPClient.xml:365
msgid ""
"HTTP status code [code]417 Expectation Failed[/code]. The expectation given "
"in the request's Expect header field could not be met by at least one of the "
"inbound servers."
msgstr ""
-#: doc/classes/HTTPClient.xml:367
+#: doc/classes/HTTPClient.xml:368
msgid ""
"HTTP status code [code]418 I'm A Teapot[/code]. Any attempt to brew coffee "
"with a teapot should result in the error code \"418 I'm a teapot\". The "
"resulting entity body MAY be short and stout."
msgstr ""
-#: doc/classes/HTTPClient.xml:370
+#: doc/classes/HTTPClient.xml:371
msgid ""
"HTTP status code [code]421 Misdirected Request[/code]. The request was "
"directed at a server that is not able to produce a response. This can be "
@@ -23883,7 +24399,7 @@ msgid ""
"combination of scheme and authority that are included in the request URI."
msgstr ""
-#: doc/classes/HTTPClient.xml:373
+#: doc/classes/HTTPClient.xml:374
msgid ""
"HTTP status code [code]422 Unprocessable Entity[/code] (WebDAV). The server "
"understands the content type of the request entity (hence a 415 Unsupported "
@@ -23892,40 +24408,40 @@ msgid ""
"was unable to process the contained instructions."
msgstr ""
-#: doc/classes/HTTPClient.xml:376
+#: doc/classes/HTTPClient.xml:377
msgid ""
"HTTP status code [code]423 Locked[/code] (WebDAV). The source or destination "
"resource of a method is locked."
msgstr ""
-#: doc/classes/HTTPClient.xml:379
+#: doc/classes/HTTPClient.xml:380
msgid ""
"HTTP status code [code]424 Failed Dependency[/code] (WebDAV). The method "
"could not be performed on the resource because the requested action depended "
"on another action and that action failed."
msgstr ""
-#: doc/classes/HTTPClient.xml:382
+#: doc/classes/HTTPClient.xml:383
msgid ""
"HTTP status code [code]426 Upgrade Required[/code]. The server refuses to "
"perform the request using the current protocol but might be willing to do so "
"after the client upgrades to a different protocol."
msgstr ""
-#: doc/classes/HTTPClient.xml:385
+#: doc/classes/HTTPClient.xml:386
msgid ""
"HTTP status code [code]428 Precondition Required[/code]. The origin server "
"requires the request to be conditional."
msgstr ""
-#: doc/classes/HTTPClient.xml:388
+#: doc/classes/HTTPClient.xml:389
msgid ""
"HTTP status code [code]429 Too Many Requests[/code]. The user has sent too "
"many requests in a given amount of time (see \"rate limiting\"). Back off "
"and increase time between requests or try again later."
msgstr ""
-#: doc/classes/HTTPClient.xml:391
+#: doc/classes/HTTPClient.xml:392
msgid ""
"HTTP status code [code]431 Request Header Fields Too Large[/code]. The "
"server is unwilling to process the request because its header fields are too "
@@ -23933,27 +24449,27 @@ msgid ""
"header fields."
msgstr ""
-#: doc/classes/HTTPClient.xml:394
+#: doc/classes/HTTPClient.xml:395
msgid ""
"HTTP status code [code]451 Response Unavailable For Legal Reasons[/code]. "
"The server is denying access to the resource as a consequence of a legal "
"demand."
msgstr ""
-#: doc/classes/HTTPClient.xml:397
+#: doc/classes/HTTPClient.xml:398
msgid ""
"HTTP status code [code]500 Internal Server Error[/code]. The server "
"encountered an unexpected condition that prevented it from fulfilling the "
"request."
msgstr ""
-#: doc/classes/HTTPClient.xml:400
+#: doc/classes/HTTPClient.xml:401
msgid ""
"HTTP status code [code]501 Not Implemented[/code]. The server does not "
"support the functionality required to fulfill the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:403
+#: doc/classes/HTTPClient.xml:404
msgid ""
"HTTP status code [code]502 Bad Gateway[/code]. The server, while acting as a "
"gateway or proxy, received an invalid response from an inbound server it "
@@ -23961,7 +24477,7 @@ msgid ""
"balancers or proxies."
msgstr ""
-#: doc/classes/HTTPClient.xml:406
+#: doc/classes/HTTPClient.xml:407
msgid ""
"HTTP status code [code]503 Service Unavailable[/code]. The server is "
"currently unable to handle the request due to a temporary overload or "
@@ -23969,7 +24485,7 @@ msgid ""
"again later."
msgstr ""
-#: doc/classes/HTTPClient.xml:409
+#: doc/classes/HTTPClient.xml:410
msgid ""
"HTTP status code [code]504 Gateway Timeout[/code]. The server, while acting "
"as a gateway or proxy, did not receive a timely response from an upstream "
@@ -23977,14 +24493,14 @@ msgid ""
"returned by load balancers or proxies."
msgstr ""
-#: doc/classes/HTTPClient.xml:412
+#: doc/classes/HTTPClient.xml:413
msgid ""
"HTTP status code [code]505 HTTP Version Not Supported[/code]. The server "
"does not support, or refuses to support, the major version of HTTP that was "
"used in the request message."
msgstr ""
-#: doc/classes/HTTPClient.xml:415
+#: doc/classes/HTTPClient.xml:416
msgid ""
"HTTP status code [code]506 Variant Also Negotiates[/code]. The server has an "
"internal configuration error: the chosen variant resource is configured to "
@@ -23992,14 +24508,14 @@ msgid ""
"proper end point in the negotiation process."
msgstr ""
-#: doc/classes/HTTPClient.xml:418
+#: doc/classes/HTTPClient.xml:419
msgid ""
"HTTP status code [code]507 Insufficient Storage[/code]. The method could not "
"be performed on the resource because the server is unable to store the "
"representation needed to successfully complete the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:421
+#: doc/classes/HTTPClient.xml:422
msgid ""
"HTTP status code [code]508 Loop Detected[/code]. The server terminated an "
"operation because it encountered an infinite loop while processing a request "
@@ -24007,14 +24523,14 @@ msgid ""
"failed."
msgstr ""
-#: doc/classes/HTTPClient.xml:424
+#: doc/classes/HTTPClient.xml:425
msgid ""
"HTTP status code [code]510 Not Extended[/code]. The policy for accessing the "
"resource has not been met in the request. The server should send back all "
"the information necessary for the client to issue an extended request."
msgstr ""
-#: doc/classes/HTTPClient.xml:427
+#: doc/classes/HTTPClient.xml:428
msgid ""
"HTTP status code [code]511 Network Authentication Required[/code]. The "
"client needs to authenticate to gain network access."
@@ -24040,12 +24556,21 @@ msgid ""
" http_request.connect(\"request_completed\", self, "
"\"_http_request_completed\")\n"
"\n"
-" # Perform the HTTP request. The URL below returns some JSON as of "
-"writing.\n"
+" # Perform a GET request. The URL below returns JSON as of writing.\n"
" var error = http_request.request(\"https://httpbin.org/get\")\n"
" if error != OK:\n"
" push_error(\"An error occurred in the HTTP request.\")\n"
"\n"
+" # Perform a POST request. The URL below returns JSON as of writing.\n"
+" # Note: Don't make simultaneous requests using a single HTTPRequest "
+"node.\n"
+" # The snippet below is provided for reference only.\n"
+" var body = {\"name\": \"Godette\"}\n"
+" var error = http_request.request(\"https://httpbin.org/post\", [], true, "
+"HTTPClient.METHOD_POST, body)\n"
+" if error != OK:\n"
+" push_error(\"An error occurred in the HTTP request.\")\n"
+"\n"
"\n"
"# Called when the HTTP request is completed.\n"
"func _http_request_completed(result, response_code, headers, body):\n"
@@ -24085,20 +24610,26 @@ msgid ""
" var texture_rect = TextureRect.new()\n"
" add_child(texture_rect)\n"
" texture_rect.texture = texture\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] When performing HTTP requests from a project exported to HTML5, "
+"keep in mind the remote server may not allow requests from foreign origins "
+"due to [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/"
+"url]. If you host the server in question, you should modify its backend to "
+"allow requests from foreign origins by adding the [code]Access-Control-Allow-"
+"Origin: *[/code] HTTP header."
msgstr ""
-#: doc/classes/HTTPRequest.xml:61
+#: doc/classes/HTTPRequest.xml:70
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/"
"http_request_class.html"
msgstr ""
-#: doc/classes/HTTPRequest.xml:69
+#: doc/classes/HTTPRequest.xml:78
msgid "Cancels the current request."
msgstr ""
-#: doc/classes/HTTPRequest.xml:76
+#: doc/classes/HTTPRequest.xml:85
msgid ""
"Returns the response body length.\n"
"[b]Note:[/b] Some Web servers may not send a body length. In this case, the "
@@ -24106,17 +24637,17 @@ msgid ""
"the body length will also be [code]-1[/code]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:84
+#: doc/classes/HTTPRequest.xml:93
msgid "Returns the amount of bytes this HTTPRequest downloaded."
msgstr ""
-#: doc/classes/HTTPRequest.xml:91
+#: doc/classes/HTTPRequest.xml:100
msgid ""
"Returns the current status of the underlying [HTTPClient]. See [enum "
"HTTPClient.Status]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:108
+#: doc/classes/HTTPRequest.xml:117
msgid ""
"Creates request on the underlying [HTTPClient]. If there is no configuration "
"errors, it tries to connect using [method HTTPClient.connect_to_host] and "
@@ -24129,11 +24660,11 @@ msgid ""
"connect to host."
msgstr ""
-#: doc/classes/HTTPRequest.xml:115
+#: doc/classes/HTTPRequest.xml:124
msgid "Maximum allowed size for response bodies."
msgstr ""
-#: doc/classes/HTTPRequest.xml:118
+#: doc/classes/HTTPRequest.xml:127
msgid ""
"The size of the buffer used and maximum bytes to read per iteration. See "
"[member HTTPClient.read_chunk_size].\n"
@@ -24141,63 +24672,63 @@ msgid ""
"files to achieve better speeds at the cost of memory."
msgstr ""
-#: doc/classes/HTTPRequest.xml:122
+#: doc/classes/HTTPRequest.xml:131
msgid "The file to download into. Will output any received file into it."
msgstr ""
-#: doc/classes/HTTPRequest.xml:125
+#: doc/classes/HTTPRequest.xml:134
msgid "Maximum number of allowed redirects."
msgstr ""
-#: doc/classes/HTTPRequest.xml:130
+#: doc/classes/HTTPRequest.xml:139
msgid "If [code]true[/code], multithreading is used to improve performance."
msgstr ""
-#: doc/classes/HTTPRequest.xml:144
+#: doc/classes/HTTPRequest.xml:153
msgid "Emitted when a request is completed."
msgstr ""
-#: doc/classes/HTTPRequest.xml:150
+#: doc/classes/HTTPRequest.xml:159
msgid "Request successful."
msgstr ""
-#: doc/classes/HTTPRequest.xml:155
+#: doc/classes/HTTPRequest.xml:164
msgid "Request failed while connecting."
msgstr ""
-#: doc/classes/HTTPRequest.xml:158
+#: doc/classes/HTTPRequest.xml:167
msgid "Request failed while resolving."
msgstr ""
-#: doc/classes/HTTPRequest.xml:161
+#: doc/classes/HTTPRequest.xml:170
msgid "Request failed due to connection (read/write) error."
msgstr ""
-#: doc/classes/HTTPRequest.xml:164
+#: doc/classes/HTTPRequest.xml:173
msgid "Request failed on SSL handshake."
msgstr ""
-#: doc/classes/HTTPRequest.xml:167
+#: doc/classes/HTTPRequest.xml:176
msgid "Request does not have a response (yet)."
msgstr ""
-#: doc/classes/HTTPRequest.xml:170
+#: doc/classes/HTTPRequest.xml:179
msgid "Request exceeded its maximum size limit, see [member body_size_limit]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:173
+#: doc/classes/HTTPRequest.xml:182
msgid "Request failed (currently unused)."
msgstr ""
-#: doc/classes/HTTPRequest.xml:176
+#: doc/classes/HTTPRequest.xml:185
msgid "HTTPRequest couldn't open the download file."
msgstr ""
-#: doc/classes/HTTPRequest.xml:179
+#: doc/classes/HTTPRequest.xml:188
msgid "HTTPRequest couldn't write to the download file."
msgstr ""
-#: doc/classes/HTTPRequest.xml:182
+#: doc/classes/HTTPRequest.xml:191
msgid "Request reached its maximum redirect limit, see [member max_redirects]."
msgstr ""
@@ -24421,42 +24952,46 @@ msgid "Loads an image from the binary contents of a PNG file."
msgstr ""
#: doc/classes/Image.xml:373
+msgid "Loads an image from the binary contents of a TGA file."
+msgstr ""
+
+#: doc/classes/Image.xml:382
msgid "Loads an image from the binary contents of a WebP file."
msgstr ""
-#: doc/classes/Image.xml:380
+#: doc/classes/Image.xml:389
msgid ""
"Converts the image's data to represent coordinates on a 3D plane. This is "
"used when the image represents a normalmap. A normalmap can add lots of "
"detail to a 3D surface without increasing the polygon count."
msgstr ""
-#: doc/classes/Image.xml:387
+#: doc/classes/Image.xml:396
msgid ""
"Multiplies color values with alpha values. Resulting color values for a "
"pixel are [code](color * alpha)/256[/code]."
msgstr ""
-#: doc/classes/Image.xml:400
+#: doc/classes/Image.xml:409
msgid ""
"Resizes the image to the given [code]width[/code] and [code]height[/code]. "
"New pixels are calculated using [code]interpolation[/code]. See "
"[code]interpolation[/code] constants."
msgstr ""
-#: doc/classes/Image.xml:409
+#: doc/classes/Image.xml:418
msgid ""
"Resizes the image to the nearest power of 2 for the width and height. If "
"[code]square[/code] is [code]true[/code] then set width and height to be the "
"same."
msgstr ""
-#: doc/classes/Image.xml:416
+#: doc/classes/Image.xml:425
msgid ""
"Converts a standard RGBE (Red Green Blue Exponent) image to an sRGB image."
msgstr ""
-#: doc/classes/Image.xml:427
+#: doc/classes/Image.xml:436
msgid ""
"Saves the image as an EXR file to [code]path[/code]. If [code]grayscale[/"
"code] is [code]true[/code] and the image has only one channel, it will be "
@@ -24465,11 +25000,11 @@ msgid ""
"TinyEXR module."
msgstr ""
-#: doc/classes/Image.xml:436
+#: doc/classes/Image.xml:445
msgid "Saves the image as a PNG file to [code]path[/code]."
msgstr ""
-#: doc/classes/Image.xml:455
+#: doc/classes/Image.xml:464
msgid ""
"Sets the [Color] of the pixel at [code](x, y)[/code]. Example:\n"
"[codeblock]\n"
@@ -24479,7 +25014,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Image.xml:471
+#: doc/classes/Image.xml:480
msgid ""
"Sets the [Color] of the pixel at [code](dst.x, dst.y)[/code]. Note that the "
"[code]dst[/code] values must be integers. Example:\n"
@@ -24490,51 +25025,51 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Image.xml:483
+#: doc/classes/Image.xml:492
msgid "Shrinks the image by a factor of 2."
msgstr ""
-#: doc/classes/Image.xml:490
+#: doc/classes/Image.xml:499
msgid "Converts the raw data from the sRGB colorspace to a linear scale."
msgstr ""
-#: doc/classes/Image.xml:496
+#: doc/classes/Image.xml:505
msgid ""
"Holds all of the image's color data in a given format. See [enum Format] "
"constants."
msgstr ""
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:510
msgid "The maximal width allowed for [Image] resources."
msgstr ""
-#: doc/classes/Image.xml:504
+#: doc/classes/Image.xml:513
msgid "The maximal height allowed for [Image] resources."
msgstr ""
-#: doc/classes/Image.xml:507
+#: doc/classes/Image.xml:516
msgid "Texture format with a single 8-bit depth representing luminance."
msgstr ""
-#: doc/classes/Image.xml:510
+#: doc/classes/Image.xml:519
msgid ""
"OpenGL texture format with two values, luminance and alpha each stored with "
"8 bits."
msgstr ""
-#: doc/classes/Image.xml:513
+#: doc/classes/Image.xml:522
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
"bitdepth of 8."
msgstr ""
-#: doc/classes/Image.xml:516
+#: doc/classes/Image.xml:525
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
-#: doc/classes/Image.xml:519
+#: doc/classes/Image.xml:528
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -24542,7 +25077,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:523
+#: doc/classes/Image.xml:532
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -24550,67 +25085,67 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:536
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
-#: doc/classes/Image.xml:532
+#: doc/classes/Image.xml:541
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
-#: doc/classes/Image.xml:535
+#: doc/classes/Image.xml:544
msgid ""
"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
"each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:538
+#: doc/classes/Image.xml:547
msgid ""
"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
"components, each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:541
+#: doc/classes/Image.xml:550
msgid ""
"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
"components, each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:544
+#: doc/classes/Image.xml:553
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 16-"
"bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:556
msgid ""
"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
"each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:550
+#: doc/classes/Image.xml:559
msgid ""
"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
"components, each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:553
+#: doc/classes/Image.xml:562
msgid ""
"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
"components, each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:556
+#: doc/classes/Image.xml:565
msgid ""
"A special OpenGL texture format where the three color components have 9 bits "
"of precision and all three share a single 5-bit exponent."
msgstr ""
-#: doc/classes/Image.xml:559
+#: doc/classes/Image.xml:568
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format that uses Block Compression 1, and is the smallest variation "
@@ -24620,7 +25155,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:563
+#: doc/classes/Image.xml:572
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format that uses Block Compression 2, and color data is interpreted "
@@ -24630,7 +25165,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:567
+#: doc/classes/Image.xml:576
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format also known as Block Compression 3 or BC3 that contains 64 "
@@ -24641,7 +25176,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:571
+#: doc/classes/Image.xml:580
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -24649,7 +25184,7 @@ msgid ""
"DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:574
+#: doc/classes/Image.xml:583
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -24657,7 +25192,7 @@ msgid ""
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:577
+#: doc/classes/Image.xml:586
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -24666,21 +25201,21 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:581
+#: doc/classes/Image.xml:590
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with signed floating-point "
"RGB components."
msgstr ""
-#: doc/classes/Image.xml:584
+#: doc/classes/Image.xml:593
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned floating-point "
"RGB components."
msgstr ""
-#: doc/classes/Image.xml:587
+#: doc/classes/Image.xml:596
msgid ""
"Texture format used on PowerVR-supported mobile platforms, uses 2-bit color "
"depth with no alpha. More information can be found [url=https://en.wikipedia."
@@ -24689,25 +25224,25 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:600
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:603
msgid ""
"Similar to [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with 4-"
"bit color depth and no alpha."
msgstr ""
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:606
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:609
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -24715,7 +25250,7 @@ msgid ""
"standard. This format cannot store an alpha channel."
msgstr ""
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:612
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24723,7 +25258,7 @@ msgid ""
"unsigned data."
msgstr ""
-#: doc/classes/Image.xml:606
+#: doc/classes/Image.xml:615
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24731,7 +25266,7 @@ msgid ""
"channel of signed data."
msgstr ""
-#: doc/classes/Image.xml:609
+#: doc/classes/Image.xml:618
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24739,7 +25274,7 @@ msgid ""
"of unsigned data."
msgstr ""
-#: doc/classes/Image.xml:612
+#: doc/classes/Image.xml:621
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24747,7 +25282,7 @@ msgid ""
"channels of signed data."
msgstr ""
-#: doc/classes/Image.xml:615
+#: doc/classes/Image.xml:624
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24757,7 +25292,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:619
+#: doc/classes/Image.xml:628
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24767,7 +25302,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:623
+#: doc/classes/Image.xml:632
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24778,31 +25313,31 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:631
+#: doc/classes/Image.xml:640
msgid "Represents the size of the [enum Format] enum."
msgstr ""
-#: doc/classes/Image.xml:634
+#: doc/classes/Image.xml:643
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
-#: doc/classes/Image.xml:637
+#: doc/classes/Image.xml:646
msgid ""
"Performs bilinear interpolation. If the image is resized, it will be blurry. "
"This mode is faster than [constant INTERPOLATE_CUBIC], but it results in "
"lower quality."
msgstr ""
-#: doc/classes/Image.xml:640
+#: doc/classes/Image.xml:649
msgid ""
"Performs cubic interpolation. If the image is resized, it will be blurry. "
"This mode often gives better results compared to [constant "
"INTERPOLATE_BILINEAR], at the cost of being slower."
msgstr ""
-#: doc/classes/Image.xml:643
+#: doc/classes/Image.xml:652
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -24817,55 +25352,55 @@ msgid ""
"a new set will be generated for the resulting image."
msgstr ""
-#: doc/classes/Image.xml:650
+#: doc/classes/Image.xml:659
msgid ""
"Performs Lanczos interpolation. This is the slowest image resizing mode, but "
"it typically gives the best results, especially when downscalng images."
msgstr ""
-#: doc/classes/Image.xml:653
+#: doc/classes/Image.xml:662
msgid "Image does not have alpha."
msgstr ""
-#: doc/classes/Image.xml:656
+#: doc/classes/Image.xml:665
msgid "Image stores alpha in a single bit."
msgstr ""
-#: doc/classes/Image.xml:659
+#: doc/classes/Image.xml:668
msgid "Image uses alpha."
msgstr ""
-#: doc/classes/Image.xml:662
+#: doc/classes/Image.xml:671
msgid "Use S3TC compression."
msgstr ""
-#: doc/classes/Image.xml:665
+#: doc/classes/Image.xml:674
msgid "Use PVRTC2 compression."
msgstr ""
-#: doc/classes/Image.xml:668
+#: doc/classes/Image.xml:677
msgid "Use PVRTC4 compression."
msgstr ""
-#: doc/classes/Image.xml:671
+#: doc/classes/Image.xml:680
msgid "Use ETC compression."
msgstr ""
-#: doc/classes/Image.xml:674
+#: doc/classes/Image.xml:683
msgid "Use ETC2 compression."
msgstr ""
-#: doc/classes/Image.xml:689
+#: doc/classes/Image.xml:698
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
-#: doc/classes/Image.xml:692
+#: doc/classes/Image.xml:701
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
-#: doc/classes/Image.xml:695
+#: doc/classes/Image.xml:704
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -25684,7 +26219,7 @@ msgid "Contains mouse click information. See [method Node._input]."
msgstr ""
#: doc/classes/InputEventMouseButton.xml:10
-#: doc/classes/InputEventMouseMotion.xml:10
+#: doc/classes/InputEventMouseMotion.xml:11
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/inputs/"
"mouse_and_input_coordinates.html"
@@ -25721,29 +26256,36 @@ msgstr ""
#: doc/classes/InputEventMouseMotion.xml:7
msgid ""
"Contains mouse and pen motion information. Supports relative, absolute "
-"positions and speed. See [method Node._input]."
+"positions and speed. See [method Node._input].\n"
+"[b]Note:[/b] By default, this event is only emitted once per frame rendered "
+"at most. If you need more precise input reporting, call [method Input."
+"set_use_accumulated_input] with [code]false[/code] to make events emitted as "
+"often as possible. If you use InputEventMouseMotion to draw lines, consider "
+"implementing [url=https://en.wikipedia.org/wiki/Bresenham"
+"%27s_line_algorithm]Bresenham's line algorithm[/url] as well to avoid "
+"visible gaps in lines if the user is moving the mouse quickly."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:16
+#: doc/classes/InputEventMouseMotion.xml:17
msgid ""
"Represents the pressure the user puts on the pen. Ranges from [code]0.0[/"
"code] to [code]1.0[/code]."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:19
+#: doc/classes/InputEventMouseMotion.xml:20
msgid ""
"The mouse position relative to the previous position (position at the last "
-"frame). \n"
+"frame).\n"
"[b]Note:[/b] Since [InputEventMouseMotion] is only emitted when the mouse "
"moves, the last event won't have a relative position of [code]Vector2(0, 0)[/"
"code] when the user stops moving the mouse."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:23
+#: doc/classes/InputEventMouseMotion.xml:24
msgid "The mouse speed in pixels per second."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:26
+#: doc/classes/InputEventMouseMotion.xml:27
msgid ""
"Represents the angles of tilt of the pen. Positive X-coordinate value "
"indicates a tilt to the right. Positive Y-coordinate value indicates a tilt "
@@ -26633,14 +27175,17 @@ msgstr ""
#: doc/classes/JSON.xml:18
msgid ""
-"Parses a JSON encoded string and returns a [JSONParseResult] containing the "
+"Parses a JSON-encoded string and returns a [JSONParseResult] containing the "
"result."
msgstr ""
#: doc/classes/JSON.xml:31
msgid ""
"Converts a [Variant] var to JSON text and returns the result. Useful for "
-"serializing data to store or send over the network."
+"serializing data to store or send over the network.\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, converting a Variant to JSON text "
+"will convert all numerical values to [float] types."
msgstr ""
#: doc/classes/JSONParseResult.xml:4
@@ -26663,14 +27208,14 @@ msgstr ""
#: doc/classes/JSONParseResult.xml:18
msgid ""
-"The line number where the error occurred if JSON source was not successfully "
-"parsed."
+"The line number where the error occurred if the JSON source was not "
+"successfully parsed."
msgstr ""
#: doc/classes/JSONParseResult.xml:21
msgid ""
-"The error message if JSON source was not successfully parsed. See the [enum "
-"Error] constants."
+"The error message if the JSON source was not successfully parsed. See the "
+"[enum Error] constants."
msgstr ""
#: doc/classes/JSONParseResult.xml:24
@@ -26678,11 +27223,11 @@ msgid ""
"A [Variant] containing the parsed JSON. Use [method @GDScript.typeof] or the "
"[code]is[/code] keyword to check if it is what you expect. For example, if "
"the JSON source starts with curly braces ([code]{}[/code]), a [Dictionary] "
-"will be returned. If the JSON source starts with braces ([code][][/code]), "
+"will be returned. If the JSON source starts with brackets ([code][][/code]), "
"an [Array] will be returned.\n"
"[b]Note:[/b] The JSON specification does not define integer or float types, "
-"but only a number type. Therefore, parsing a JSON text will convert all "
-"numerical values to float types.\n"
+"but only a [i]number[/i] type. Therefore, parsing a JSON text will convert "
+"all numerical values to [float] types.\n"
"[b]Note:[/b] JSON objects do not preserve key order like Godot dictionaries, "
"thus, you should not rely on keys being in a certain order if a dictionary "
"is constructed from JSON. In contrast, JSON arrays retain the order of their "
@@ -26692,7 +27237,7 @@ msgid ""
"if typeof(p.result) == TYPE_ARRAY:\n"
" print(p.result[0]) # Prints \"hello\"\n"
"else:\n"
-" print(\"unexpected results\")\n"
+" push_error(\"Unexpected results.\")\n"
"[/codeblock]"
msgstr ""
@@ -26808,7 +27353,7 @@ msgid ""
"simulation will run at an incorrect speed.\n"
"[code]linear_velocity[/code] is the velocity vector in pixels per second. "
"Unlike in [method move_and_collide], you should [i]not[/i] multiply it by "
-"[code]delta[/code] — the physics engine handles applying the velocity. \n"
+"[code]delta[/code] — the physics engine handles applying the velocity.\n"
"[code]up_direction[/code] is the up direction, used to determine what is a "
"wall and what is a floor or a ceiling. If set to the default value of "
"[code]Vector2(0, 0)[/code], everything is considered a wall. This is useful "
@@ -26924,7 +27469,7 @@ msgid ""
"[code]linear_velocity[/code] is the velocity vector (typically meters per "
"second). Unlike in [method move_and_collide], you should [i]not[/i] multiply "
"it by [code]delta[/code] — the physics engine handles applying the "
-"velocity. \n"
+"velocity.\n"
"[code]up_direction[/code] is the up direction, used to determine what is a "
"wall and what is a floor or a ceiling. If set to the default value of "
"[code]Vector3(0, 0, 0)[/code], everything is considered a wall.\n"
@@ -27653,17 +28198,6 @@ msgid ""
"[b]Note:[/b] Hiding a light does [i]not[/i] affect baking."
msgstr ""
-#: doc/classes/Light3D.xml:152
-msgid "Only indirect lighting will be baked (default)."
-msgstr ""
-
-#: doc/classes/Light3D.xml:155
-msgid ""
-"Both direct and indirect light will be baked.\n"
-"[b]Note:[/b] You should hide the light if you don't want it to appear twice "
-"(dynamic and baked)."
-msgstr ""
-
#: doc/classes/LightOccluder2D.xml:4
msgid "Occludes light cast by a Light2D, casting shadows."
msgstr ""
@@ -27942,136 +28476,142 @@ msgstr ""
msgid "Text alignment as defined in the [enum Align] enum."
msgstr ""
-#: doc/classes/LineEdit.xml:120 doc/classes/TextEdit.xml:406
+#: doc/classes/LineEdit.xml:120 doc/classes/TextEdit.xml:358
msgid "If [code]true[/code], the caret (visual cursor) blinks."
msgstr ""
-#: doc/classes/LineEdit.xml:123 doc/classes/TextEdit.xml:409
+#: doc/classes/LineEdit.xml:123 doc/classes/TextEdit.xml:361
msgid "Duration (in seconds) of a caret's blinking cycle."
msgstr ""
-#: doc/classes/LineEdit.xml:126
+#: doc/classes/LineEdit.xml:128
msgid ""
"The cursor's position inside the [LineEdit]. When set, the text may scroll "
"to accommodate it."
msgstr ""
-#: doc/classes/LineEdit.xml:129
+#: doc/classes/LineEdit.xml:131
msgid ""
"If [code]true[/code], the [LineEdit] will show a clear button if [code]text[/"
"code] is not empty, which can be used to clear the text quickly."
msgstr ""
-#: doc/classes/LineEdit.xml:132
+#: doc/classes/LineEdit.xml:134
msgid "If [code]true[/code], the context menu will appear when right-clicked."
msgstr ""
-#: doc/classes/LineEdit.xml:135
+#: doc/classes/LineEdit.xml:137
msgid ""
"If [code]false[/code], existing text cannot be modified and new text cannot "
"be added."
msgstr ""
-#: doc/classes/LineEdit.xml:138
+#: doc/classes/LineEdit.xml:140
msgid ""
"If [code]true[/code], the [LineEdit] width will increase to stay longer than "
"the [member text]. It will [b]not[/b] compress if the [member text] is "
"shortened."
msgstr ""
-#: doc/classes/LineEdit.xml:142
+#: doc/classes/LineEdit.xml:144
msgid ""
"Maximum amount of characters that can be entered inside the [LineEdit]. If "
"[code]0[/code], there is no limit."
msgstr ""
-#: doc/classes/LineEdit.xml:146
+#: doc/classes/LineEdit.xml:148
msgid ""
"Opacity of the [member placeholder_text]. From [code]0[/code] to [code]1[/"
"code]."
msgstr ""
-#: doc/classes/LineEdit.xml:149
+#: doc/classes/LineEdit.xml:151
msgid ""
"Text shown when the [LineEdit] is empty. It is [b]not[/b] the [LineEdit]'s "
"default value (see [member text])."
msgstr ""
-#: doc/classes/LineEdit.xml:152
+#: doc/classes/LineEdit.xml:154
msgid ""
"Sets the icon that will appear in the right end of the [LineEdit] if there's "
"no [member text], or always, if [member clear_button_enabled] is set to "
"[code]false[/code]."
msgstr ""
-#: doc/classes/LineEdit.xml:155
+#: doc/classes/LineEdit.xml:157
msgid ""
"If [code]true[/code], every character is replaced with the secret character "
"(see [member secret_character])."
msgstr ""
-#: doc/classes/LineEdit.xml:158
+#: doc/classes/LineEdit.xml:160
msgid ""
"The character to use to mask secret input (defaults to \"*\"). Only a single "
"character can be used as the secret character."
msgstr ""
-#: doc/classes/LineEdit.xml:161
+#: doc/classes/LineEdit.xml:163
msgid ""
"If [code]false[/code], it's impossible to select the text using mouse nor "
"keyboard."
msgstr ""
-#: doc/classes/LineEdit.xml:164
+#: doc/classes/LineEdit.xml:166
msgid "If [code]false[/code], using shortcuts will be disabled."
msgstr ""
-#: doc/classes/LineEdit.xml:167
+#: doc/classes/LineEdit.xml:169
msgid ""
"String value of the [LineEdit].\n"
"[b]Note:[/b] Changing text using this property won't emit the [signal "
"text_changed] signal."
msgstr ""
-#: doc/classes/LineEdit.xml:174
+#: doc/classes/LineEdit.xml:173 doc/classes/TextEdit.xml:434
+msgid ""
+"If [code]true[/code], the native virtual keyboard is shown when focused on "
+"platforms that support it."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:179
msgid ""
"Emitted when trying to append text that would overflow the [member "
"max_length]."
msgstr ""
-#: doc/classes/LineEdit.xml:181 doc/classes/TextEdit.xml:525
+#: doc/classes/LineEdit.xml:186 doc/classes/TextEdit.xml:490
msgid "Emitted when the text changes."
msgstr ""
-#: doc/classes/LineEdit.xml:188
+#: doc/classes/LineEdit.xml:193
msgid "Emitted when the user presses [constant KEY_ENTER] on the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:194
+#: doc/classes/LineEdit.xml:199
msgid "Aligns the text on the left-hand side of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:197
+#: doc/classes/LineEdit.xml:202
msgid "Centers the text in the middle of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:200
+#: doc/classes/LineEdit.xml:205
msgid "Aligns the text on the right-hand side of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:203
+#: doc/classes/LineEdit.xml:208
msgid "Stretches whitespaces to fit the [LineEdit]'s width."
msgstr ""
-#: doc/classes/LineEdit.xml:206 doc/classes/TextEdit.xml:540
+#: doc/classes/LineEdit.xml:211 doc/classes/TextEdit.xml:505
msgid "Cuts (copies and clears) the selected text."
msgstr ""
-#: doc/classes/LineEdit.xml:209 doc/classes/TextEdit.xml:543
+#: doc/classes/LineEdit.xml:214 doc/classes/TextEdit.xml:508
msgid "Copies the selected text."
msgstr ""
-#: doc/classes/LineEdit.xml:212
+#: doc/classes/LineEdit.xml:217
msgid ""
"Pastes the clipboard text over the selected text (or at the cursor's "
"position).\n"
@@ -28079,80 +28619,80 @@ msgid ""
"clipboard via [method String.strip_escapes]."
msgstr ""
-#: doc/classes/LineEdit.xml:216
+#: doc/classes/LineEdit.xml:221
msgid "Erases the whole [LineEdit] text."
msgstr ""
-#: doc/classes/LineEdit.xml:219
+#: doc/classes/LineEdit.xml:224
msgid "Selects the whole [LineEdit] text."
msgstr ""
-#: doc/classes/LineEdit.xml:222 doc/classes/TextEdit.xml:555
+#: doc/classes/LineEdit.xml:227 doc/classes/TextEdit.xml:520
msgid "Undoes the previous action."
msgstr ""
-#: doc/classes/LineEdit.xml:225
+#: doc/classes/LineEdit.xml:230
msgid "Reverse the last undo action."
msgstr ""
-#: doc/classes/LineEdit.xml:228 doc/classes/TextEdit.xml:561
+#: doc/classes/LineEdit.xml:233 doc/classes/TextEdit.xml:526
msgid "Represents the size of the [enum MenuItems] enum."
msgstr ""
-#: doc/classes/LineEdit.xml:233
+#: doc/classes/LineEdit.xml:238
msgid "Texture for the clear button. See [member clear_button_enabled]."
msgstr ""
-#: doc/classes/LineEdit.xml:236
+#: doc/classes/LineEdit.xml:241
msgid "Color used as default tint for the clear button."
msgstr ""
-#: doc/classes/LineEdit.xml:239
+#: doc/classes/LineEdit.xml:244
msgid "Color used for the clear button when it's pressed."
msgstr ""
-#: doc/classes/LineEdit.xml:242
+#: doc/classes/LineEdit.xml:247
msgid "Color of the [LineEdit]'s visual cursor (caret)."
msgstr ""
-#: doc/classes/LineEdit.xml:245
+#: doc/classes/LineEdit.xml:250
msgid "Background used when [LineEdit] has GUI focus."
msgstr ""
-#: doc/classes/LineEdit.xml:248
+#: doc/classes/LineEdit.xml:253
msgid "Font used for the text."
msgstr ""
-#: doc/classes/LineEdit.xml:251
+#: doc/classes/LineEdit.xml:256
msgid "Default font color."
msgstr ""
-#: doc/classes/LineEdit.xml:254
+#: doc/classes/LineEdit.xml:259
msgid "Font color for selected text (inside the selection rectangle)."
msgstr ""
-#: doc/classes/LineEdit.xml:257
+#: doc/classes/LineEdit.xml:262
msgid "Font color when editing is disabled."
msgstr ""
-#: doc/classes/LineEdit.xml:260
+#: doc/classes/LineEdit.xml:265
msgid ""
"Minimum horizontal space for the text (not counting the clear button and "
"content margins). This value is measured in count of space characters (i.e. "
"this amount of space characters can be displayed without scrolling)."
msgstr ""
-#: doc/classes/LineEdit.xml:263
+#: doc/classes/LineEdit.xml:268
msgid "Default background for the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:266
+#: doc/classes/LineEdit.xml:271
msgid ""
"Background used when [LineEdit] is in read-only mode ([member editable] is "
"set to [code]false[/code])."
msgstr ""
-#: doc/classes/LineEdit.xml:269
+#: doc/classes/LineEdit.xml:274
msgid "Color of the selection rectangle."
msgstr ""
@@ -28370,14 +28910,14 @@ msgstr ""
msgid "Emitted when a user responds to a permission request."
msgstr ""
-#: doc/classes/MainLoop.xml:127 doc/classes/Node.xml:948
+#: doc/classes/MainLoop.xml:127 doc/classes/Node.xml:946
msgid ""
"Notification received from the OS when the application is exceeding its "
"allocated memory.\n"
"Specific to the iOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:131 doc/classes/Node.xml:952
+#: doc/classes/MainLoop.xml:131 doc/classes/Node.xml:950
msgid ""
"Notification received when translations may have changed. Can be triggered "
"by the user changing the locale. Can be used to respond to language changes, "
@@ -28385,39 +28925,55 @@ msgid ""
"the built-in translation support, like [method Object.tr]."
msgstr ""
-#: doc/classes/MainLoop.xml:134 doc/classes/Node.xml:955
+#: doc/classes/MainLoop.xml:134 doc/classes/Node.xml:953
msgid ""
"Notification received from the OS when a request for \"About\" information "
"is sent.\n"
"Specific to the macOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:138 doc/classes/Node.xml:959
+#: doc/classes/MainLoop.xml:138 doc/classes/Node.xml:957
msgid ""
"Notification received from Godot's crash handler when the engine is about to "
"crash.\n"
"Implemented on desktop platforms if the crash handler is enabled."
msgstr ""
-#: doc/classes/MainLoop.xml:142 doc/classes/Node.xml:963
+#: doc/classes/MainLoop.xml:142 doc/classes/Node.xml:961
msgid ""
"Notification received from the OS when an update of the Input Method Engine "
"occurs (e.g. change of IME cursor position or composition string).\n"
"Specific to the macOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:146 doc/classes/Node.xml:967
+#: doc/classes/MainLoop.xml:146 doc/classes/Node.xml:965
msgid ""
-"Notification received from the OS when the app is resumed.\n"
+"Notification received from the OS when the application is resumed.\n"
"Specific to the Android platform."
msgstr ""
-#: doc/classes/MainLoop.xml:150 doc/classes/Node.xml:971
+#: doc/classes/MainLoop.xml:150 doc/classes/Node.xml:969
msgid ""
-"Notification received from the OS when the app is paused.\n"
+"Notification received from the OS when the application is paused.\n"
"Specific to the Android platform."
msgstr ""
+#: doc/classes/MainLoop.xml:154 doc/classes/Node.xml:973
+msgid ""
+"Notification received from the OS when the application is focused, i.e. when "
+"changing the focus from the OS desktop or a thirdparty application to any "
+"open window of the Godot instance.\n"
+"Implemented on desktop platforms."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:158 doc/classes/Node.xml:977
+msgid ""
+"Notification received from the OS when the application is defocused, i.e. "
+"when changing the focus from any open window of the Godot instance to the OS "
+"desktop or a thirdparty application.\n"
+"Implemented on desktop platforms."
+msgstr ""
+
#: doc/classes/MarginContainer.xml:4
msgid "Simple margin container."
msgstr ""
@@ -28725,11 +29281,11 @@ msgstr ""
msgid "Render array as triangle strips."
msgstr ""
-#: doc/classes/Mesh.xml:126 doc/classes/RenderingServer.xml:3189
+#: doc/classes/Mesh.xml:126 doc/classes/RenderingServer.xml:3185
msgid "Blend shapes are normalized."
msgstr ""
-#: doc/classes/Mesh.xml:129 doc/classes/RenderingServer.xml:3192
+#: doc/classes/Mesh.xml:129 doc/classes/RenderingServer.xml:3188
msgid "Blend shapes are relative to base weight."
msgstr ""
@@ -28771,37 +29327,37 @@ msgstr ""
msgid "Mesh array uses indices."
msgstr ""
-#: doc/classes/Mesh.xml:159 doc/classes/RenderingServer.xml:3145
+#: doc/classes/Mesh.xml:159 doc/classes/RenderingServer.xml:3141
msgid "Flag used to mark a compressed (half float) normal array."
msgstr ""
-#: doc/classes/Mesh.xml:162 doc/classes/RenderingServer.xml:3148
+#: doc/classes/Mesh.xml:162 doc/classes/RenderingServer.xml:3144
msgid "Flag used to mark a compressed (half float) tangent array."
msgstr ""
-#: doc/classes/Mesh.xml:165 doc/classes/RenderingServer.xml:3151
+#: doc/classes/Mesh.xml:165 doc/classes/RenderingServer.xml:3147
msgid "Flag used to mark a compressed (half float) color array."
msgstr ""
-#: doc/classes/Mesh.xml:168 doc/classes/RenderingServer.xml:3154
+#: doc/classes/Mesh.xml:168 doc/classes/RenderingServer.xml:3150
msgid "Flag used to mark a compressed (half float) UV coordinates array."
msgstr ""
-#: doc/classes/Mesh.xml:171 doc/classes/RenderingServer.xml:3157
+#: doc/classes/Mesh.xml:171 doc/classes/RenderingServer.xml:3153
msgid ""
"Flag used to mark a compressed (half float) UV coordinates array for the "
"second UV coordinates."
msgstr ""
-#: doc/classes/Mesh.xml:174 doc/classes/RenderingServer.xml:3160
+#: doc/classes/Mesh.xml:174 doc/classes/RenderingServer.xml:3156
msgid "Flag used to mark a compressed index array."
msgstr ""
-#: doc/classes/Mesh.xml:177 doc/classes/RenderingServer.xml:3166
+#: doc/classes/Mesh.xml:177 doc/classes/RenderingServer.xml:3162
msgid "Flag used to mark that the array contains 2D vertices."
msgstr ""
-#: doc/classes/Mesh.xml:180 doc/classes/RenderingServer.xml:3163
+#: doc/classes/Mesh.xml:180 doc/classes/RenderingServer.xml:3159
msgid ""
"Used to set flags [constant ARRAY_COMPRESS_NORMAL], [constant "
"ARRAY_COMPRESS_TANGENT], [constant ARRAY_COMPRESS_COLOR], [constant "
@@ -30562,7 +31118,10 @@ msgstr ""
msgid ""
"The number of channels to be used by ENet. Channels are used to separate "
"different kinds of data. In reliable or ordered mode, for example, the "
-"packet delivery order is ensured on a per channel basis."
+"packet delivery order is ensured on a per-channel basis. This is done to "
+"combat latency and reduces ordering restrictions on packets. The delivery "
+"status of a packet in one channel won't stall the delivery of other packets "
+"in another channel."
msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:134
@@ -30589,11 +31148,12 @@ msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:144
msgid ""
"Set the default channel to be used to transfer data. By default, this value "
-"is [code]-1[/code] which means that ENet will only use 2 channels, one for "
-"reliable and one for unreliable packets. Channel [code]0[/code] is reserved, "
-"and cannot be used. Setting this member to any value between [code]0[/code] "
-"and [member channel_count] (excluded) will force ENet to use that channel "
-"for sending data."
+"is [code]-1[/code] which means that ENet will only use 2 channels: one for "
+"reliable packets, and one for unreliable packets. The channel [code]0[/code] "
+"is reserved and cannot be used. Setting this member to any value between "
+"[code]0[/code] and [member channel_count] (excluded) will force ENet to use "
+"that channel for sending data. See [member channel_count] for more "
+"information about ENet channels."
msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:148
@@ -31785,57 +32345,63 @@ msgstr ""
#: doc/classes/Node.xml:930
msgid ""
-"Notification received from the OS when the game window is focused.\n"
-"Implemented on all platforms."
+"Notification received from the OS when the node's parent [Window] is "
+"focused. This may be a change of focus between two windows of the same "
+"engine instance, or from the OS desktop or a third-party application to a "
+"window of the game (in which case [constant "
+"NOTIFICATION_APPLICATION_FOCUS_IN] is also emitted)."
msgstr ""
-#: doc/classes/Node.xml:934
+#: doc/classes/Node.xml:933
msgid ""
-"Notification received from the OS when the game window is unfocused.\n"
-"Implemented on all platforms."
+"Notification received from the OS when the node's parent [Window] is "
+"defocused. This may be a change of focus between two windows of the same "
+"engine instance, or from a window of the game to the OS desktop or a third-"
+"party application (in which case [constant "
+"NOTIFICATION_APPLICATION_FOCUS_OUT] is also emitted)."
msgstr ""
-#: doc/classes/Node.xml:938
+#: doc/classes/Node.xml:936
msgid ""
"Notification received from the OS when a close request is sent (e.g. closing "
"the window with a \"Close\" button or [kbd]Alt + F4[/kbd]).\n"
"Implemented on desktop platforms."
msgstr ""
-#: doc/classes/Node.xml:942
+#: doc/classes/Node.xml:940
msgid ""
"Notification received from the OS when a go back request is sent (e.g. "
"pressing the \"Back\" button on Android).\n"
"Specific to the Android platform."
msgstr ""
-#: doc/classes/Node.xml:975
+#: doc/classes/Node.xml:981
msgid ""
"Inherits pause mode from the node's parent. For the root node, it is "
"equivalent to [constant PAUSE_MODE_STOP]. Default."
msgstr ""
-#: doc/classes/Node.xml:978
+#: doc/classes/Node.xml:984
msgid "Stops processing when the [SceneTree] is paused."
msgstr ""
-#: doc/classes/Node.xml:981
+#: doc/classes/Node.xml:987
msgid "Continue to process regardless of the [SceneTree] pause state."
msgstr ""
-#: doc/classes/Node.xml:984
+#: doc/classes/Node.xml:990
msgid "Duplicate the node's signals."
msgstr ""
-#: doc/classes/Node.xml:987
+#: doc/classes/Node.xml:993
msgid "Duplicate the node's groups."
msgstr ""
-#: doc/classes/Node.xml:990
+#: doc/classes/Node.xml:996
msgid "Duplicate the node's scripts."
msgstr ""
-#: doc/classes/Node.xml:993
+#: doc/classes/Node.xml:999
msgid ""
"Duplicate using instancing.\n"
"An instance stays linked to the original so when the original changes, the "
@@ -32059,12 +32625,6 @@ msgid ""
"changes. [Node3D] will not propagate this by default."
msgstr ""
-#: doc/classes/Node3D.xml:104
-msgid ""
-"Returns whether the node is visible, taking into consideration that its "
-"parents visibility."
-msgstr ""
-
#: doc/classes/Node3D.xml:115
msgid ""
"Rotates itself so that the local -Z axis points towards the [code]target[/"
@@ -32234,7 +32794,10 @@ msgid "Local translation of this node."
msgstr ""
#: doc/classes/Node3D.xml:326
-msgid "If [code]true[/code], this node is drawn."
+msgid ""
+"If [code]true[/code], this node is drawn. The node is only visible if all of "
+"its antecedents are visible as well (in other words, [method "
+"is_visible_in_tree] must return [code]true[/code])."
msgstr ""
#: doc/classes/Node3D.xml:332
@@ -32491,10 +33054,20 @@ msgid ""
"the key exists, even if the value is [code]null[/code].\n"
"Objects also receive notifications. Notifications are a simple way to notify "
"the object about different events, so they can all be handled together. See "
-"[method _notification]."
+"[method _notification].\n"
+"[b]Note:[/b] Unlike references to a [Reference], references to an Object "
+"stored in a variable can become invalid without warning. Therefore, it's "
+"recommended to use [Reference] for data classes instead of [Object]."
msgstr ""
-#: doc/classes/Object.xml:30
+#: doc/classes/Object.xml:23 doc/classes/Reference.xml:12
+#: doc/classes/Resource.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/getting_started/workflow/"
+"best_practices/node_alternatives.html"
+msgstr ""
+
+#: doc/classes/Object.xml:32
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method get].\n"
@@ -32502,7 +33075,7 @@ msgid ""
"code] does not exist."
msgstr ""
-#: doc/classes/Object.xml:38
+#: doc/classes/Object.xml:40
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method get_property_list].\n"
@@ -32514,11 +33087,11 @@ msgid ""
"PropertyUsageFlags])."
msgstr ""
-#: doc/classes/Object.xml:47
+#: doc/classes/Object.xml:49
msgid "Called when the object is initialized."
msgstr ""
-#: doc/classes/Object.xml:56
+#: doc/classes/Object.xml:58
msgid ""
"Called whenever the object receives a notification, which is identified in "
"[code]what[/code] by a constant. The base [Object] has two constants "
@@ -32527,7 +33100,7 @@ msgid ""
"notifications which are also received by this method."
msgstr ""
-#: doc/classes/Object.xml:67
+#: doc/classes/Object.xml:69
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method set].\n"
@@ -32535,7 +33108,7 @@ msgid ""
"exists."
msgstr ""
-#: doc/classes/Object.xml:75
+#: doc/classes/Object.xml:77
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method to_string], and thus the object's representation where it is "
@@ -32544,34 +33117,42 @@ msgid ""
"[code]\"[ClassName:RID]\"[/code]."
msgstr ""
-#: doc/classes/Object.xml:87
+#: doc/classes/Object.xml:89
msgid ""
"Adds a user-defined [code]signal[/code]. Arguments are optional, but can be "
"added as an [Array] of dictionaries, each containing [code]name: String[/"
"code] and [code]type: int[/code] (see [enum Variant.Type]) entries."
msgstr ""
-#: doc/classes/Object.xml:96
+#: doc/classes/Object.xml:98
msgid ""
"Calls the [code]method[/code] on the object and returns the result. This "
"method supports a variable number of arguments, so parameters are passed as "
"a comma separated list. Example:\n"
"[codeblock]\n"
"call(\"set\", \"position\", Vector2(42.0, 0.0))\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] In C#, the method name must be specified as snake_case if it is "
+"defined by a built-in Godot node. This doesn't apply to user-defined methods "
+"where you should use the same convention as in the C# source (typically "
+"PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:108
+#: doc/classes/Object.xml:111
msgid ""
"Calls the [code]method[/code] on the object during idle time. This method "
"supports a variable number of arguments, so parameters are passed as a comma "
"separated list. Example:\n"
"[codeblock]\n"
"call_deferred(\"set\", \"position\", Vector2(42.0, 0.0))\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] In C#, the method name must be specified as snake_case if it is "
+"defined by a built-in Godot node. This doesn't apply to user-defined methods "
+"where you should use the same convention as in the C# source (typically "
+"PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:122
+#: doc/classes/Object.xml:126
msgid ""
"Calls the [code]method[/code] on the object and returns the result. "
"Contrarily to [method call], this method does not support a variable number "
@@ -32581,13 +33162,13 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:132
+#: doc/classes/Object.xml:136
msgid ""
"Returns [code]true[/code] if the object can translate strings. See [method "
"set_message_translation] and [method tr]."
msgstr ""
-#: doc/classes/Object.xml:147
+#: doc/classes/Object.xml:151
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32623,7 +33204,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:174
+#: doc/classes/Object.xml:178
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32634,7 +33215,7 @@ msgid ""
"exists."
msgstr ""
-#: doc/classes/Object.xml:185
+#: doc/classes/Object.xml:189
msgid ""
"Emits the given [code]signal[/code]. The signal must exist, so it should be "
"a built-in signal of this class or one of its parent classes, or a user-"
@@ -32646,24 +33227,28 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:196
+#: doc/classes/Object.xml:200
msgid ""
"Deletes the object from memory. Any pre-existing reference to the freed "
"object will become invalid, e.g. [code]is_instance_valid(object)[/code] will "
"return [code]false[/code]."
msgstr ""
-#: doc/classes/Object.xml:205
+#: doc/classes/Object.xml:209
msgid ""
"Returns the [Variant] value of the given [code]property[/code]. If the "
-"[code]property[/code] doesn't exist, this will return [code]null[/code]."
+"[code]property[/code] doesn't exist, this will return [code]null[/code].\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:212
+#: doc/classes/Object.xml:217
msgid "Returns the object's class as a [String]."
msgstr ""
-#: doc/classes/Object.xml:219
+#: doc/classes/Object.xml:224
msgid ""
"Returns an [Array] of dictionaries with information about signals that are "
"connected to the object.\n"
@@ -32674,7 +33259,7 @@ msgid ""
"connected."
msgstr ""
-#: doc/classes/Object.xml:232
+#: doc/classes/Object.xml:237
msgid ""
"Gets the object's property indexed by the given [NodePath]. The node path "
"should be relative to the current object and can use the colon character "
@@ -32682,26 +33267,26 @@ msgid ""
"\"[/code] or [code]\"material:next_pass:blend_mode\"[/code]."
msgstr ""
-#: doc/classes/Object.xml:239
+#: doc/classes/Object.xml:244
msgid ""
"Returns the object's unique instance ID.\n"
"This ID can be saved in [EncodedObjectAsID], and can be used to retrieve the "
"object instance with [method @GDScript.instance_from_id]."
msgstr ""
-#: doc/classes/Object.xml:249
+#: doc/classes/Object.xml:254
msgid "Returns the object's metadata entry for the given [code]name[/code]."
msgstr ""
-#: doc/classes/Object.xml:256
+#: doc/classes/Object.xml:261
msgid "Returns the object's metadata as a [PackedStringArray]."
msgstr ""
-#: doc/classes/Object.xml:263
+#: doc/classes/Object.xml:268
msgid "Returns the object's methods and their signatures as an [Array]."
msgstr ""
-#: doc/classes/Object.xml:270
+#: doc/classes/Object.xml:275
msgid ""
"Returns the object's property list as an [Array] of dictionaries.\n"
"Each property's [Dictionary] contain at least [code]name: String[/code] and "
@@ -32711,54 +33296,54 @@ msgid ""
"PropertyUsageFlags])."
msgstr ""
-#: doc/classes/Object.xml:278
+#: doc/classes/Object.xml:283
msgid ""
"Returns the object's [Script] instance, or [code]null[/code] if none is "
"assigned."
msgstr ""
-#: doc/classes/Object.xml:287
+#: doc/classes/Object.xml:292
msgid "Returns an [Array] of connections for the given [code]signal[/code]."
msgstr ""
-#: doc/classes/Object.xml:294
+#: doc/classes/Object.xml:299
msgid "Returns the list of signals as an [Array] of dictionaries."
msgstr ""
-#: doc/classes/Object.xml:303
+#: doc/classes/Object.xml:308
msgid ""
"Returns [code]true[/code] if a metadata entry is found with the given "
"[code]name[/code]."
msgstr ""
-#: doc/classes/Object.xml:312
+#: doc/classes/Object.xml:317
msgid ""
"Returns [code]true[/code] if the object contains the given [code]method[/"
"code]."
msgstr ""
-#: doc/classes/Object.xml:321
+#: doc/classes/Object.xml:326
msgid "Returns [code]true[/code] if the given [code]signal[/code] exists."
msgstr ""
-#: doc/classes/Object.xml:330
+#: doc/classes/Object.xml:335
msgid ""
"Returns [code]true[/code] if the given user-defined [code]signal[/code] "
"exists. Only signals added using [method add_user_signal] are taken into "
"account."
msgstr ""
-#: doc/classes/Object.xml:337
+#: doc/classes/Object.xml:342
msgid "Returns [code]true[/code] if signal emission blocking is enabled."
msgstr ""
-#: doc/classes/Object.xml:346
+#: doc/classes/Object.xml:351
msgid ""
"Returns [code]true[/code] if the object inherits from the given [code]class[/"
"code]."
msgstr ""
-#: doc/classes/Object.xml:357
+#: doc/classes/Object.xml:362
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32766,13 +33351,13 @@ msgid ""
"code], [code]target[/code], and [code]method[/code]."
msgstr ""
-#: doc/classes/Object.xml:365
+#: doc/classes/Object.xml:370
msgid ""
"Returns [code]true[/code] if the [method Node.queue_free] method was called "
"for the object."
msgstr ""
-#: doc/classes/Object.xml:376
+#: doc/classes/Object.xml:381
msgid ""
"Send a given notification to the object, which will also trigger a call to "
"the [method _notification] method of all classes that the object inherits "
@@ -32784,34 +33369,42 @@ msgid ""
"and then down to its successive inheriting classes."
msgstr ""
-#: doc/classes/Object.xml:384
+#: doc/classes/Object.xml:389
msgid ""
"Notify the editor that the property list has changed, so that editor plugins "
"can take the new values into account. Does nothing on export builds."
msgstr ""
-#: doc/classes/Object.xml:393
+#: doc/classes/Object.xml:398
msgid "Removes a given entry from the object's metadata."
msgstr ""
-#: doc/classes/Object.xml:404
+#: doc/classes/Object.xml:409
msgid ""
"Assigns a new value to the given property. If the [code]property[/code] does "
-"not exist, nothing will happen."
+"not exist, nothing will happen.\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:413
+#: doc/classes/Object.xml:419
msgid "If set to [code]true[/code], signal emission is blocked."
msgstr ""
-#: doc/classes/Object.xml:424
+#: doc/classes/Object.xml:430
msgid ""
"Assigns a new value to the given property, after the current frame's physics "
"step. This is equivalent to calling [method set] via [method call_deferred], "
-"i.e. [code]call_deferred(\"set\", property, value)[/code]."
+"i.e. [code]call_deferred(\"set\", property, value)[/code].\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:435
+#: doc/classes/Object.xml:442
msgid ""
"Assigns a new value to the property identified by the [NodePath]. The node "
"path should be relative to the current object and can use the colon "
@@ -32823,19 +33416,19 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:449
+#: doc/classes/Object.xml:456
msgid ""
"Defines whether the object can translate strings (with calls to [method "
"tr]). Enabled by default."
msgstr ""
-#: doc/classes/Object.xml:460
+#: doc/classes/Object.xml:467
msgid ""
"Adds or changes a given entry in the object's metadata. Metadata are "
"serialized, and can take any [Variant] value."
msgstr ""
-#: doc/classes/Object.xml:469
+#: doc/classes/Object.xml:476
msgid ""
"Assigns a script to the object. Each object can have a single script "
"assigned to it, which are used to extend its functionality.\n"
@@ -32844,7 +33437,7 @@ msgid ""
"_init] method will be called."
msgstr ""
-#: doc/classes/Object.xml:477
+#: doc/classes/Object.xml:484
msgid ""
"Returns a [String] representing the object. If not overridden, defaults to "
"[code]\"[ClassName:RID]\"[/code].\n"
@@ -32852,7 +33445,7 @@ msgid ""
"representation."
msgstr ""
-#: doc/classes/Object.xml:487
+#: doc/classes/Object.xml:494
msgid ""
"Translates a message using translation catalogs configured in the Project "
"Settings.\n"
@@ -32861,35 +33454,35 @@ msgid ""
"set_message_translation]."
msgstr ""
-#: doc/classes/Object.xml:495
+#: doc/classes/Object.xml:502
msgid "Emitted whenever the object's script is changed."
msgstr ""
-#: doc/classes/Object.xml:501
+#: doc/classes/Object.xml:508
msgid "Called right when the object is initialized. Not available in script."
msgstr ""
-#: doc/classes/Object.xml:504
+#: doc/classes/Object.xml:511
msgid "Called before the object is about to be deleted."
msgstr ""
-#: doc/classes/Object.xml:507
+#: doc/classes/Object.xml:514
msgid ""
"Connects a signal in deferred mode. This way, signal emissions are stored in "
"a queue, then set on idle time."
msgstr ""
-#: doc/classes/Object.xml:510
+#: doc/classes/Object.xml:517
msgid "Persisting connections are saved when the object is serialized to file."
msgstr ""
-#: doc/classes/Object.xml:513
+#: doc/classes/Object.xml:520
msgid "One-shot connections disconnect themselves after emission."
msgstr ""
-#: doc/classes/Object.xml:516
+#: doc/classes/Object.xml:523
msgid ""
-"Connect a signal as reference counted. This means that a given signal can be "
+"Connect a signal as reference-counted. This means that a given signal can be "
"connected several times to the same target, and will only be fully "
"disconnected once no references are left."
msgstr ""
@@ -33354,10 +33947,29 @@ msgid "Returns the keycode of the given string (e.g. \"Escape\")."
msgstr ""
#: doc/classes/OS.xml:115
-msgid "Returns the command line arguments passed to the engine."
+msgid ""
+"Returns the command-line arguments passed to the engine.\n"
+"Command-line arguments can be written in any form, including both [code]--"
+"key value[/code] and [code]--key=value[/code] forms so they can be properly "
+"parsed, as long as custom command-line arguments do not conflict with engine "
+"arguments.\n"
+"You can also incorporate environment variables using the [method "
+"get_environment] method.\n"
+"You can set [code]editor/main_run_args[/code] in the Project Settings to "
+"define command-line arguments to be passed by the editor when running the "
+"project.\n"
+"Here's a minimal example on how to parse command-line arguments into a "
+"dictionary using the [code]--key=value[/code] form for arguments:\n"
+"[codeblock]\n"
+"var arguments = {}\n"
+"for argument in OS.get_cmdline_args():\n"
+" if argument.find(\"=\") > -1:\n"
+" var key_value = argument.split(\"=\")\n"
+" arguments[key_value[0].lstrip(\"--\")] = key_value[1]\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/OS.xml:122
+#: doc/classes/OS.xml:133
msgid ""
"Returns an array of MIDI device names.\n"
"The returned array will be empty if the system MIDI driver has not "
@@ -33365,14 +33977,14 @@ msgid ""
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:133
+#: doc/classes/OS.xml:144
msgid ""
"Returns current date as a dictionary of keys: [code]year[/code], "
"[code]month[/code], [code]day[/code], [code]weekday[/code], [code]dst[/code] "
"(Daylight Savings Time)."
msgstr ""
-#: doc/classes/OS.xml:142
+#: doc/classes/OS.xml:153
msgid ""
"Returns current datetime as a dictionary of keys: [code]year[/code], "
"[code]month[/code], [code]day[/code], [code]weekday[/code], [code]dst[/code] "
@@ -33380,7 +33992,7 @@ msgid ""
"[code]second[/code]."
msgstr ""
-#: doc/classes/OS.xml:151
+#: doc/classes/OS.xml:162
msgid ""
"Gets a dictionary of time values corresponding to the given UNIX epoch time "
"(in seconds).\n"
@@ -33389,22 +34001,22 @@ msgid ""
"the epoch."
msgstr ""
-#: doc/classes/OS.xml:161
+#: doc/classes/OS.xml:172
msgid "Returns an environment variable."
msgstr ""
-#: doc/classes/OS.xml:168
+#: doc/classes/OS.xml:179
msgid "Returns the path to the current engine executable."
msgstr ""
-#: doc/classes/OS.xml:175
+#: doc/classes/OS.xml:186
msgid ""
"With this function you can get the list of dangerous permissions that have "
"been granted to the Android application.\n"
"[b]Note:[/b] This method is implemented on Android."
msgstr ""
-#: doc/classes/OS.xml:185
+#: doc/classes/OS.xml:196
msgid ""
"Returns the given keycode as a string (e.g. Return values: [code]\"Escape\"[/"
"code], [code]\"Shift+Escape\"[/code]).\n"
@@ -33412,18 +34024,18 @@ msgid ""
"get_keycode_with_modifiers]."
msgstr ""
-#: doc/classes/OS.xml:193
+#: doc/classes/OS.xml:204
msgid "Returns the host OS locale."
msgstr ""
-#: doc/classes/OS.xml:200
+#: doc/classes/OS.xml:211
msgid ""
"Returns the model name of the current device.\n"
"[b]Note:[/b] This method is implemented on Android and iOS. Returns "
"[code]\"GenericDevice\"[/code] on unsupported platforms."
msgstr ""
-#: doc/classes/OS.xml:208
+#: doc/classes/OS.xml:219
msgid ""
"Returns the name of the host OS. Possible values are: [code]\"Android\"[/"
"code], [code]\"iOS\"[/code], [code]\"HTML5\"[/code], [code]\"OSX\"[/code], "
@@ -33431,81 +34043,81 @@ msgid ""
"[code]\"X11\"[/code]."
msgstr ""
-#: doc/classes/OS.xml:215
+#: doc/classes/OS.xml:226
msgid ""
"Returns the project's process ID.\n"
"[b]Note:[/b] This method is implemented on Android, iOS, Linux, macOS and "
"Windows."
msgstr ""
-#: doc/classes/OS.xml:223
+#: doc/classes/OS.xml:234
msgid "Returns the number of threads available on the host machine."
msgstr ""
-#: doc/classes/OS.xml:230
+#: doc/classes/OS.xml:241
msgid ""
"Returns the amount of time in milliseconds it took for the boot logo to "
"appear."
msgstr ""
-#: doc/classes/OS.xml:237
+#: doc/classes/OS.xml:248
msgid "Returns the maximum amount of static memory used (only works in debug)."
msgstr ""
-#: doc/classes/OS.xml:244
+#: doc/classes/OS.xml:255
msgid "Returns the amount of static memory being used by the program in bytes."
msgstr ""
-#: doc/classes/OS.xml:253
+#: doc/classes/OS.xml:264
msgid ""
"Returns the actual path to commonly used folders across different platforms. "
"Available locations are specified in [enum SystemDir].\n"
"[b]Note:[/b] This method is implemented on Android, Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:261
+#: doc/classes/OS.xml:272
msgid ""
"Returns the total number of available tablet drivers.\n"
"[b]Note:[/b] This method is implemented on Windows."
msgstr ""
-#: doc/classes/OS.xml:271
+#: doc/classes/OS.xml:282
msgid ""
"Returns the tablet driver name for the given index.\n"
"[b]Note:[/b] This method is implemented on Windows."
msgstr ""
-#: doc/classes/OS.xml:279
+#: doc/classes/OS.xml:290
msgid ""
"Returns the amount of time passed in milliseconds since the engine started."
msgstr ""
-#: doc/classes/OS.xml:286
+#: doc/classes/OS.xml:297
msgid ""
"Returns the amount of time passed in microseconds since the engine started."
msgstr ""
-#: doc/classes/OS.xml:295
+#: doc/classes/OS.xml:306
msgid "Returns current time as a dictionary of keys: hour, minute, second."
msgstr ""
-#: doc/classes/OS.xml:302
+#: doc/classes/OS.xml:313
msgid ""
"Returns the current time zone as a dictionary with the keys: bias and name."
msgstr ""
-#: doc/classes/OS.xml:309
+#: doc/classes/OS.xml:320
msgid ""
"Returns a string that is unique to the device.\n"
"[b]Note:[/b] Returns an empty string on HTML5 and UWP, as this method isn't "
"implemented on those platforms yet."
msgstr ""
-#: doc/classes/OS.xml:317
+#: doc/classes/OS.xml:328
msgid "Returns the current UNIX epoch timestamp."
msgstr ""
-#: doc/classes/OS.xml:326
+#: doc/classes/OS.xml:337
msgid ""
"Gets an epoch time value from a dictionary of time values.\n"
"[code]datetime[/code] must be populated with the following keys: [code]year[/"
@@ -33516,7 +34128,7 @@ msgid ""
"ignored."
msgstr ""
-#: doc/classes/OS.xml:335
+#: doc/classes/OS.xml:346
msgid ""
"Returns the absolute directory path where user data is written ([code]user://"
"[/code]).\n"
@@ -33534,11 +34146,11 @@ msgid ""
"[/code]."
msgstr ""
-#: doc/classes/OS.xml:348
+#: doc/classes/OS.xml:359
msgid "Returns [code]true[/code] if an environment variable exists."
msgstr ""
-#: doc/classes/OS.xml:357
+#: doc/classes/OS.xml:368
msgid ""
"Returns [code]true[/code] if the feature for the given feature tag is "
"supported in the currently running instance, depending on platform, build "
@@ -33549,7 +34161,7 @@ msgid ""
"[b]Note:[/b] Tag names are case-sensitive."
msgstr ""
-#: doc/classes/OS.xml:365
+#: doc/classes/OS.xml:376
msgid ""
"Returns [code]true[/code] if the Godot binary used to run the project is a "
"[i]debug[/i] export template, or when running in the editor.\n"
@@ -33560,26 +34172,26 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/OS.xml:376
+#: doc/classes/OS.xml:387
msgid ""
"Returns [code]true[/code] if the input keycode corresponds to a Unicode "
"character."
msgstr ""
-#: doc/classes/OS.xml:383
+#: doc/classes/OS.xml:394
msgid ""
"Returns [code]true[/code] if the engine was executed with [code]-v[/code] "
"(verbose stdout)."
msgstr ""
-#: doc/classes/OS.xml:390
+#: doc/classes/OS.xml:401
msgid ""
"If [code]true[/code], the [code]user://[/code] file system is persistent, so "
"that its state is the same after a player quits and starts the game again. "
"Relevant to the HTML5 platform, where this persistence may be unavailable."
msgstr ""
-#: doc/classes/OS.xml:399
+#: doc/classes/OS.xml:410
msgid ""
"Kill (terminate) the process identified by the given process ID ([code]pid[/"
"code]), e.g. the one returned by [method execute] in non-blocking mode.\n"
@@ -33589,37 +34201,37 @@ msgid ""
"Windows."
msgstr ""
-#: doc/classes/OS.xml:408
+#: doc/classes/OS.xml:419
msgid ""
"Initialises the singleton for the system MIDI driver.\n"
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:418
+#: doc/classes/OS.xml:429
msgid ""
"Shows all resources in the game. Optionally, the list can be written to a "
"file by specifying a file path in [code]tofile[/code]."
msgstr ""
-#: doc/classes/OS.xml:425
+#: doc/classes/OS.xml:436
msgid "Shows the list of loaded textures sorted by size in memory."
msgstr ""
-#: doc/classes/OS.xml:434
+#: doc/classes/OS.xml:445
msgid "Shows the number of resources loaded by the game of the given types."
msgstr ""
-#: doc/classes/OS.xml:443
+#: doc/classes/OS.xml:454
msgid "Shows all resources currently used by the game."
msgstr ""
-#: doc/classes/OS.xml:452
+#: doc/classes/OS.xml:463
msgid ""
"At the moment this function is only used by [code]AudioDriverOpenSL[/code] "
"to request permission for [code]RECORD_AUDIO[/code] on Android."
msgstr ""
-#: doc/classes/OS.xml:459
+#: doc/classes/OS.xml:470
msgid ""
"With this function you can request dangerous permissions since normal "
"permissions are automatically granted at install time in Android "
@@ -33627,15 +34239,15 @@ msgid ""
"[b]Note:[/b] This method is implemented on Android."
msgstr ""
-#: doc/classes/OS.xml:469
+#: doc/classes/OS.xml:480
msgid "Sets the name of the current thread."
msgstr ""
-#: doc/classes/OS.xml:478
+#: doc/classes/OS.xml:489
msgid "Enables backup saves if [code]enabled[/code] is [code]true[/code]."
msgstr ""
-#: doc/classes/OS.xml:487
+#: doc/classes/OS.xml:498
msgid ""
"Requests the OS to open a resource with the most appropriate program. For "
"example:\n"
@@ -33654,7 +34266,7 @@ msgid ""
"and Windows."
msgstr ""
-#: doc/classes/OS.xml:498
+#: doc/classes/OS.xml:509
msgid ""
"The exit code passed to the OS when the main loop exits. By convention, an "
"exit code of [code]0[/code] indicates success whereas a non-zero exit code "
@@ -33664,137 +34276,137 @@ msgid ""
"with an [code]exit_code[/code] argument passed."
msgstr ""
-#: doc/classes/OS.xml:502
+#: doc/classes/OS.xml:513
msgid ""
"If [code]true[/code], the engine optimizes for low processor usage by only "
"refreshing the screen if needed. Can improve battery consumption on mobile."
msgstr ""
-#: doc/classes/OS.xml:505
+#: doc/classes/OS.xml:516
msgid ""
"The amount of sleeping between frames when the low-processor usage mode is "
"enabled (in microseconds). Higher values will result in lower CPU usage."
msgstr ""
-#: doc/classes/OS.xml:508
-msgid "The current tablet drvier in use."
+#: doc/classes/OS.xml:519
+msgid "The current tablet driver in use."
msgstr ""
-#: doc/classes/OS.xml:513
+#: doc/classes/OS.xml:524
msgid ""
"The GLES2 rendering backend. It uses OpenGL ES 2.0 on mobile devices, OpenGL "
"2.1 on desktop platforms and WebGL 1.0 on the web."
msgstr ""
-#: doc/classes/OS.xml:516
+#: doc/classes/OS.xml:527
msgid "The Vulkan rendering backend."
msgstr ""
-#: doc/classes/OS.xml:519
+#: doc/classes/OS.xml:530
msgid "Sunday."
msgstr ""
-#: doc/classes/OS.xml:522
+#: doc/classes/OS.xml:533
msgid "Monday."
msgstr ""
-#: doc/classes/OS.xml:525
+#: doc/classes/OS.xml:536
msgid "Tuesday."
msgstr ""
-#: doc/classes/OS.xml:528
+#: doc/classes/OS.xml:539
msgid "Wednesday."
msgstr ""
-#: doc/classes/OS.xml:531
+#: doc/classes/OS.xml:542
msgid "Thursday."
msgstr ""
-#: doc/classes/OS.xml:534
+#: doc/classes/OS.xml:545
msgid "Friday."
msgstr ""
-#: doc/classes/OS.xml:537
+#: doc/classes/OS.xml:548
msgid "Saturday."
msgstr ""
-#: doc/classes/OS.xml:540
+#: doc/classes/OS.xml:551
msgid "January."
msgstr ""
-#: doc/classes/OS.xml:543
+#: doc/classes/OS.xml:554
msgid "February."
msgstr ""
-#: doc/classes/OS.xml:546
+#: doc/classes/OS.xml:557
msgid "March."
msgstr ""
-#: doc/classes/OS.xml:549
+#: doc/classes/OS.xml:560
msgid "April."
msgstr ""
-#: doc/classes/OS.xml:552
+#: doc/classes/OS.xml:563
msgid "May."
msgstr ""
-#: doc/classes/OS.xml:555
+#: doc/classes/OS.xml:566
msgid "June."
msgstr ""
-#: doc/classes/OS.xml:558
+#: doc/classes/OS.xml:569
msgid "July."
msgstr ""
-#: doc/classes/OS.xml:561
+#: doc/classes/OS.xml:572
msgid "August."
msgstr ""
-#: doc/classes/OS.xml:564
+#: doc/classes/OS.xml:575
msgid "September."
msgstr ""
-#: doc/classes/OS.xml:567
+#: doc/classes/OS.xml:578
msgid "October."
msgstr ""
-#: doc/classes/OS.xml:570
+#: doc/classes/OS.xml:581
msgid "November."
msgstr ""
-#: doc/classes/OS.xml:573
+#: doc/classes/OS.xml:584
msgid "December."
msgstr ""
-#: doc/classes/OS.xml:576
+#: doc/classes/OS.xml:587
msgid "Desktop directory path."
msgstr ""
-#: doc/classes/OS.xml:579
+#: doc/classes/OS.xml:590
msgid "DCIM (Digital Camera Images) directory path."
msgstr ""
-#: doc/classes/OS.xml:582
+#: doc/classes/OS.xml:593
msgid "Documents directory path."
msgstr ""
-#: doc/classes/OS.xml:585
+#: doc/classes/OS.xml:596
msgid "Downloads directory path."
msgstr ""
-#: doc/classes/OS.xml:588
+#: doc/classes/OS.xml:599
msgid "Movies directory path."
msgstr ""
-#: doc/classes/OS.xml:591
+#: doc/classes/OS.xml:602
msgid "Music directory path."
msgstr ""
-#: doc/classes/OS.xml:594
+#: doc/classes/OS.xml:605
msgid "Pictures directory path."
msgstr ""
-#: doc/classes/OS.xml:597
+#: doc/classes/OS.xml:608
msgid "Ringtones directory path."
msgstr ""
@@ -33849,7 +34461,15 @@ msgid ""
"should always be preferred."
msgstr ""
-#: doc/classes/PackedByteArray.xml:85
+#: doc/classes/PackedByteArray.xml:87 doc/classes/PackedColorArray.xml:53
+#: doc/classes/PackedFloat32Array.xml:54 doc/classes/PackedFloat64Array.xml:54
+#: doc/classes/PackedInt32Array.xml:54 doc/classes/PackedInt64Array.xml:54
+#: doc/classes/PackedStringArray.xml:53 doc/classes/PackedVector2Array.xml:53
+#: doc/classes/PackedVector3Array.xml:53
+msgid "Returns [code]true[/code] if the array contains [code]value[/code]."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:94
msgid ""
"Returns a hexadecimal representation of this array as a [String].\n"
"[codeblock]\n"
@@ -33858,39 +34478,48 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/PackedByteArray.xml:100 doc/classes/PackedColorArray.xml:55
-#: doc/classes/PackedFloat32Array.xml:56 doc/classes/PackedFloat64Array.xml:56
-#: doc/classes/PackedStringArray.xml:55 doc/classes/PackedVector2Array.xml:55
-#: doc/classes/PackedVector3Array.xml:55
+#: doc/classes/PackedByteArray.xml:109 doc/classes/PackedColorArray.xml:64
+#: doc/classes/PackedFloat32Array.xml:65 doc/classes/PackedFloat64Array.xml:65
+#: doc/classes/PackedStringArray.xml:64 doc/classes/PackedVector2Array.xml:64
+#: doc/classes/PackedVector3Array.xml:64
msgid ""
"Inserts a new element at a given position in the array. The position must be "
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PackedByteArray.xml:134 doc/classes/PackedColorArray.xml:89
-#: doc/classes/PackedFloat32Array.xml:90 doc/classes/PackedFloat64Array.xml:90
-#: doc/classes/PackedInt32Array.xml:90 doc/classes/PackedInt64Array.xml:90
-#: doc/classes/PackedStringArray.xml:89 doc/classes/PackedVector2Array.xml:89
-#: doc/classes/PackedVector3Array.xml:89
+#: doc/classes/PackedByteArray.xml:143 doc/classes/PackedColorArray.xml:98
+#: doc/classes/PackedFloat32Array.xml:99 doc/classes/PackedFloat64Array.xml:99
+#: doc/classes/PackedInt32Array.xml:99 doc/classes/PackedInt64Array.xml:99
+#: doc/classes/PackedStringArray.xml:98 doc/classes/PackedVector2Array.xml:98
+#: doc/classes/PackedVector3Array.xml:98
msgid ""
"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."
msgstr ""
-#: doc/classes/PackedByteArray.xml:145
+#: doc/classes/PackedByteArray.xml:154
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PackedByteArray.xml:152 doc/classes/PackedColorArray.xml:107
-#: doc/classes/PackedFloat32Array.xml:108
-#: doc/classes/PackedFloat64Array.xml:108 doc/classes/PackedStringArray.xml:107
-#: doc/classes/PackedVector2Array.xml:107
-#: doc/classes/PackedVector3Array.xml:107
+#: doc/classes/PackedByteArray.xml:161 doc/classes/PackedColorArray.xml:116
+#: doc/classes/PackedFloat32Array.xml:117
+#: doc/classes/PackedFloat64Array.xml:117 doc/classes/PackedStringArray.xml:116
+#: doc/classes/PackedVector2Array.xml:116
+#: doc/classes/PackedVector3Array.xml:116
msgid "Returns the size of the array."
msgstr ""
-#: doc/classes/PackedByteArray.xml:163
+#: doc/classes/PackedByteArray.xml:168 doc/classes/PackedColorArray.xml:123
+#: doc/classes/PackedFloat32Array.xml:124
+#: doc/classes/PackedFloat64Array.xml:124 doc/classes/PackedInt32Array.xml:124
+#: doc/classes/PackedInt64Array.xml:124 doc/classes/PackedStringArray.xml:123
+#: doc/classes/PackedVector2Array.xml:123
+#: doc/classes/PackedVector3Array.xml:123
+msgid "Sorts the elements of the array in ascending order."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:179
msgid ""
"Returns the slice of the [PackedByteArray] between indices (inclusive) as a "
"new [PackedByteArray]. Any negative index is considered to be from the end "
@@ -33918,12 +34547,12 @@ msgstr ""
msgid "Appends a [PackedColorArray] at the end of this array."
msgstr ""
-#: doc/classes/PackedColorArray.xml:71 doc/classes/PackedInt32Array.xml:72
-#: doc/classes/PackedInt64Array.xml:72
+#: doc/classes/PackedColorArray.xml:80 doc/classes/PackedInt32Array.xml:81
+#: doc/classes/PackedInt64Array.xml:81
msgid "Appends a value to the array."
msgstr ""
-#: doc/classes/PackedColorArray.xml:100
+#: doc/classes/PackedColorArray.xml:109
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -33953,8 +34582,8 @@ msgstr ""
msgid "Appends a [PackedFloat32Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedFloat32Array.xml:101
-#: doc/classes/PackedFloat64Array.xml:101
+#: doc/classes/PackedFloat32Array.xml:110
+#: doc/classes/PackedFloat64Array.xml:110
msgid "Changes the float at the given index."
msgstr ""
@@ -34007,17 +34636,17 @@ msgstr ""
msgid "Appends a [PackedInt32Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:56 doc/classes/PackedInt64Array.xml:56
+#: doc/classes/PackedInt32Array.xml:65 doc/classes/PackedInt64Array.xml:65
msgid ""
"Inserts a new integer at a given position in the array. The position must be "
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:101 doc/classes/PackedInt64Array.xml:101
+#: doc/classes/PackedInt32Array.xml:110 doc/classes/PackedInt64Array.xml:110
msgid "Changes the integer at the given index."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:108 doc/classes/PackedInt64Array.xml:108
+#: doc/classes/PackedInt32Array.xml:117 doc/classes/PackedInt64Array.xml:117
msgid "Returns the array size."
msgstr ""
@@ -34058,6 +34687,14 @@ msgid ""
"Can be used to save a node to a file. When saving, the node as well as all "
"the node it owns get saved (see [code]owner[/code] property on [Node]).\n"
"[b]Note:[/b] The node doesn't need to own itself.\n"
+"[b]Example of loading a saved scene:[/b]\n"
+"[codeblock]\n"
+"# Use `load()` instead of `preload()` if the path isn't known at compile-"
+"time.\n"
+"var scene = preload(\"res://scene.tscn\").instance()\n"
+"# Add the node as a child of the node the script is attached to.\n"
+"add_child(scene)\n"
+"[/codeblock]\n"
"[b]Example of saving a node with different owners:[/b] The following example "
"creates 3 objects: [code]Node2D[/code] ([code]node[/code]), "
"[code]RigidBody2D[/code] ([code]rigid[/code]) and [code]CollisionObject2D[/"
@@ -34089,29 +34726,29 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/PackedScene.xml:40
+#: doc/classes/PackedScene.xml:47
msgid "Returns [code]true[/code] if the scene file has nodes."
msgstr ""
-#: doc/classes/PackedScene.xml:47
+#: doc/classes/PackedScene.xml:54
msgid ""
"Returns the [code]SceneState[/code] representing the scene file contents."
msgstr ""
-#: doc/classes/PackedScene.xml:56
+#: doc/classes/PackedScene.xml:63
msgid ""
"Instantiates the scene's node hierarchy. Triggers child scene "
"instantiation(s). Triggers a [constant Node.NOTIFICATION_INSTANCED] "
"notification on the root node."
msgstr ""
-#: doc/classes/PackedScene.xml:65
+#: doc/classes/PackedScene.xml:72
msgid ""
"Pack will ignore any sub-nodes not owned by given node. See [member Node."
"owner]."
msgstr ""
-#: doc/classes/PackedScene.xml:71
+#: doc/classes/PackedScene.xml:78
msgid ""
"A dictionary representation of the scene contents.\n"
"Available keys include \"rnames\" and \"variants\" for resources, "
@@ -34120,18 +34757,18 @@ msgid ""
"connections, and \"version\" for the format style of the PackedScene."
msgstr ""
-#: doc/classes/PackedScene.xml:77
+#: doc/classes/PackedScene.xml:84
msgid "If passed to [method instance], blocks edits to the scene state."
msgstr ""
-#: doc/classes/PackedScene.xml:80
+#: doc/classes/PackedScene.xml:87
msgid ""
"If passed to [method instance], provides local scene resources to the local "
"scene.\n"
"[b]Note:[/b] Only available in editor builds."
msgstr ""
-#: doc/classes/PackedScene.xml:84
+#: doc/classes/PackedScene.xml:91
msgid ""
"If passed to [method instance], provides local scene resources to the local "
"scene. Only the main scene should receive the main edit state.\n"
@@ -34159,11 +34796,11 @@ msgstr ""
msgid "Appends a [PackedStringArray] at the end of this array."
msgstr ""
-#: doc/classes/PackedStringArray.xml:71
+#: doc/classes/PackedStringArray.xml:80
msgid "Appends a string element at end of the array."
msgstr ""
-#: doc/classes/PackedStringArray.xml:100
+#: doc/classes/PackedStringArray.xml:109
msgid "Changes the [String] at the given index."
msgstr ""
@@ -34188,11 +34825,11 @@ msgstr ""
msgid "Appends a [PackedVector2Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedVector2Array.xml:71
+#: doc/classes/PackedVector2Array.xml:80
msgid "Inserts a [Vector2] at the end."
msgstr ""
-#: doc/classes/PackedVector2Array.xml:100
+#: doc/classes/PackedVector2Array.xml:109
msgid "Changes the [Vector2] at the given index."
msgstr ""
@@ -34217,11 +34854,11 @@ msgstr ""
msgid "Appends a [PackedVector3Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedVector3Array.xml:71
+#: doc/classes/PackedVector3Array.xml:80
msgid "Inserts a [Vector3] at the end."
msgstr ""
-#: doc/classes/PackedVector3Array.xml:100
+#: doc/classes/PackedVector3Array.xml:109
msgid "Changes the [Vector3] at the given index."
msgstr ""
@@ -35112,13 +35749,55 @@ msgid ""
"as the values displayed in the [b]Monitor[/b] tab in the editor's "
"[b]Debugger[/b] panel. By using the [method get_monitor] method of this "
"class, you can access this data from your code.\n"
+"You can add custom monitors using the [method add_custom_monitor] method. "
+"Custom monitors are available in [b]Monitor[/b] tab in the editor's "
+"[b]Debugger[/b] panel together with built-in monitors.\n"
"[b]Note:[/b] A few of these monitors are only available in debug mode and "
"will always return 0 when used in a release build.\n"
"[b]Note:[/b] Many of these monitors are not updated in real-time, so there "
-"may be a short delay between changes."
+"may be a short delay between changes.\n"
+"[b]Note:[/b] Custom monitors do not support negative values. Negative values "
+"are clamped to 0."
+msgstr ""
+
+#: doc/classes/Performance.xml:26
+msgid ""
+"Adds a custom monitor with name same as id. You can specify the category of "
+"monitor using '/' in id. If there are more than one '/' then default "
+"category is used. Default category is \"Custom\".\n"
+"[codeblock]\n"
+"Performance.add_custom_monitor(\"MyCategory/MyMonitor\", some_callable) # "
+"Adds monitor with name \"MyName\" to category \"MyCategory\"\n"
+"Performance.add_custom_monitor(\"MyMonitor\", some_callable) # Adds monitor "
+"with name \"MyName\" to category \"Custom\"\n"
+"# Note: \"MyCategory/MyMonitor\" and \"MyMonitor\" have same name but "
+"different ids so above code is valid\n"
+"Performance.add_custom_monitor(\"Custom/MyMonitor\", some_callable) # Adds "
+"monitor with name \"MyName\" to category \"Custom\"\n"
+"# Note: \"MyMonitor\" and \"Custom/MyMonitor\" have same name and same "
+"category but different ids so above code is valid\n"
+"Performance.add_custom_monitor(\"MyCategoryOne/MyCategoryTwo/MyMonitor\", "
+"some_callable) # Adds monitor with name \"MyCategoryOne/MyCategoryTwo/"
+"MyMonitor\" to category \"Custom\"\n"
+"[/codeblock]\n"
+"The debugger calls the callable to get the value of custom monitor. The "
+"callable must return a number.\n"
+"Callables are called with arguments supplied in argument array.\n"
+"[b]Note:[/b] It throws an error if given id is already present."
+msgstr ""
+
+#: doc/classes/Performance.xml:46
+msgid ""
+"Returns the value of custom monitor with given id. The callable is called to "
+"get the value of custom monitor.\n"
+"[b]Note:[/b] It throws an error if the given id is absent."
+msgstr ""
+
+#: doc/classes/Performance.xml:54
+msgid "Returns the names of active custom monitors in an array."
msgstr ""
-#: doc/classes/Performance.xml:20
+#: doc/classes/Performance.xml:63
msgid ""
"Returns the value of one of the available monitors. You should provide one "
"of the [enum Monitor] constants as the argument, like this:\n"
@@ -35128,123 +35807,139 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Performance.xml:29
+#: doc/classes/Performance.xml:73
+msgid "Returns the last tick in which custom monitor was added/removed."
+msgstr ""
+
+#: doc/classes/Performance.xml:82
+msgid ""
+"Returns true if custom monitor with the given id is present otherwise "
+"returns false."
+msgstr ""
+
+#: doc/classes/Performance.xml:91
+msgid ""
+"Removes the custom monitor with given id.\n"
+"[b]Note:[/b] It throws an error if the given id is already absent."
+msgstr ""
+
+#: doc/classes/Performance.xml:98
msgid "Number of frames per second."
msgstr ""
-#: doc/classes/Performance.xml:32
+#: doc/classes/Performance.xml:101
msgid "Time it took to complete one frame, in seconds."
msgstr ""
-#: doc/classes/Performance.xml:35
+#: doc/classes/Performance.xml:104
msgid "Time it took to complete one physics frame, in seconds."
msgstr ""
-#: doc/classes/Performance.xml:38
+#: doc/classes/Performance.xml:107
msgid ""
"Static memory currently used, in bytes. Not available in release builds."
msgstr ""
-#: doc/classes/Performance.xml:41
+#: doc/classes/Performance.xml:110
msgid "Available static memory. Not available in release builds."
msgstr ""
-#: doc/classes/Performance.xml:44
+#: doc/classes/Performance.xml:113
msgid ""
"Largest amount of memory the message queue buffer has used, in bytes. The "
"message queue is used for deferred functions calls and notifications."
msgstr ""
-#: doc/classes/Performance.xml:47
+#: doc/classes/Performance.xml:116
msgid "Number of objects currently instanced (including nodes)."
msgstr ""
-#: doc/classes/Performance.xml:50
+#: doc/classes/Performance.xml:119
msgid "Number of resources currently used."
msgstr ""
-#: doc/classes/Performance.xml:53
+#: doc/classes/Performance.xml:122
msgid ""
"Number of nodes currently instanced in the scene tree. This also includes "
"the root node."
msgstr ""
-#: doc/classes/Performance.xml:56
+#: doc/classes/Performance.xml:125
msgid ""
"Number of orphan nodes, i.e. nodes which are not parented to a node of the "
"scene tree."
msgstr ""
-#: doc/classes/Performance.xml:59
+#: doc/classes/Performance.xml:128
msgid "3D objects drawn per frame."
msgstr ""
-#: doc/classes/Performance.xml:62
+#: doc/classes/Performance.xml:131
msgid "Vertices drawn per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:65
+#: doc/classes/Performance.xml:134
msgid "Material changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:68
+#: doc/classes/Performance.xml:137
msgid "Shader changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:71
+#: doc/classes/Performance.xml:140
msgid "Render surface changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:74
+#: doc/classes/Performance.xml:143
msgid "Draw calls per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:77 doc/classes/RenderingServer.xml:3805
+#: doc/classes/Performance.xml:146 doc/classes/RenderingServer.xml:3816
msgid ""
"The amount of video memory used, i.e. texture and vertex memory combined."
msgstr ""
-#: doc/classes/Performance.xml:80 doc/classes/RenderingServer.xml:3808
+#: doc/classes/Performance.xml:149 doc/classes/RenderingServer.xml:3819
msgid "The amount of texture memory used."
msgstr ""
-#: doc/classes/Performance.xml:83 doc/classes/RenderingServer.xml:3811
+#: doc/classes/Performance.xml:152 doc/classes/RenderingServer.xml:3822
msgid "The amount of vertex memory used."
msgstr ""
-#: doc/classes/Performance.xml:86 doc/classes/RenderingServer.xml:3802
+#: doc/classes/Performance.xml:155 doc/classes/RenderingServer.xml:3813
msgid "Unimplemented in the GLES2 rendering backend, always returns 0."
msgstr ""
-#: doc/classes/Performance.xml:89
+#: doc/classes/Performance.xml:158
msgid "Number of active [RigidBody2D] nodes in the game."
msgstr ""
-#: doc/classes/Performance.xml:92
+#: doc/classes/Performance.xml:161
msgid "Number of collision pairs in the 2D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:95
+#: doc/classes/Performance.xml:164
msgid "Number of islands in the 2D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:98
+#: doc/classes/Performance.xml:167
msgid "Number of active [RigidBody3D] and [VehicleBody3D] nodes in the game."
msgstr ""
-#: doc/classes/Performance.xml:101
+#: doc/classes/Performance.xml:170
msgid "Number of collision pairs in the 3D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:104
+#: doc/classes/Performance.xml:173
msgid "Number of islands in the 3D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:107
+#: doc/classes/Performance.xml:176
msgid "Output latency of the [AudioServer]."
msgstr ""
-#: doc/classes/Performance.xml:110
+#: doc/classes/Performance.xml:179
msgid "Represents the size of the [enum Monitor] enum."
msgstr ""
@@ -35268,27 +35963,27 @@ msgstr ""
msgid "Damps the body's rotation if greater than [code]0[/code]."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:70 doc/classes/RigidBody3D.xml:132
+#: doc/classes/PhysicalBone3D.xml:70 doc/classes/RigidBody3D.xml:139
msgid "Lock the body's rotation in the X axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:73 doc/classes/RigidBody3D.xml:135
+#: doc/classes/PhysicalBone3D.xml:73 doc/classes/RigidBody3D.xml:142
msgid "Lock the body's rotation in the Y axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:76 doc/classes/RigidBody3D.xml:138
+#: doc/classes/PhysicalBone3D.xml:76 doc/classes/RigidBody3D.xml:145
msgid "Lock the body's rotation in the Z axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:79 doc/classes/RigidBody3D.xml:141
+#: doc/classes/PhysicalBone3D.xml:79 doc/classes/RigidBody3D.xml:148
msgid "Lock the body's movement in the X axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:82 doc/classes/RigidBody3D.xml:144
+#: doc/classes/PhysicalBone3D.xml:82 doc/classes/RigidBody3D.xml:151
msgid "Lock the body's movement in the Y axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:85 doc/classes/RigidBody3D.xml:147
+#: doc/classes/PhysicalBone3D.xml:85 doc/classes/RigidBody3D.xml:154
msgid "Lock the body's movement in the Z axis."
msgstr ""
@@ -35343,12 +36038,12 @@ msgstr ""
msgid "Damps the body's movement if greater than [code]0[/code]."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:118 doc/classes/RigidBody2D.xml:158
-#: doc/classes/RigidBody3D.xml:175
+#: doc/classes/PhysicalBone3D.xml:118 doc/classes/RigidBody2D.xml:159
+#: doc/classes/RigidBody3D.xml:183
msgid "The body's mass."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:121 doc/classes/RigidBody3D.xml:188
+#: doc/classes/PhysicalBone3D.xml:121 doc/classes/RigidBody3D.xml:196
msgid ""
"The body's weight based on its mass and the global 3D gravity. Global values "
"are set in [b]Project > Project Settings > Physics > 3d[/b]."
@@ -35655,7 +36350,7 @@ msgid "The inverse of the mass of the body."
msgstr ""
#: doc/classes/PhysicsDirectBodyState2D.xml:195
-#: doc/classes/PhysicsDirectBodyState3D.xml:198 doc/classes/RigidBody2D.xml:155
+#: doc/classes/PhysicsDirectBodyState3D.xml:198 doc/classes/RigidBody2D.xml:156
msgid "The body's linear velocity."
msgstr ""
@@ -36208,7 +36903,7 @@ msgid ""
msgstr ""
#: doc/classes/PhysicsServer2D.xml:620 doc/classes/PhysicsServer3D.xml:637
-#: doc/classes/RigidBody3D.xml:120
+#: doc/classes/RigidBody3D.xml:127
msgid ""
"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."
@@ -37273,47 +37968,64 @@ msgid ""
"collision queries. See also [PhysicsShapeQueryResult2D]."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:18
-msgid ""
-"Sets the [Shape2D] that will be used for collision/intersection queries."
-msgstr ""
-
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:24
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:15
msgid "If [code]true[/code], the query will take [Area2D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:18
msgid ""
"If [code]true[/code], the query will take [PhysicsBody2D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:30
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:30
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:21
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:21
msgid "The physics layer(s) the query will take into account (as a bitmask)."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:33
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:33
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:24
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:24
msgid ""
"The list of objects or object [RID]s that will be excluded from collisions."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:36
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:36 doc/classes/Shape3D.xml:16
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:27 doc/classes/Shape3D.xml:16
msgid "The collision margin for the shape."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:39
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:30
msgid "The motion of the shape being queried for."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:42
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:39
-msgid "The queried shape's [RID]. See also [method set_shape]."
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:33
+msgid ""
+"The [Shape2D] that will be used for collision/intersection queries. This "
+"stores the actual reference which avoids the shape to be released while "
+"being used for queries, so always prefer using this over [member shape_rid]."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:36
+msgid ""
+"The queried shape's [RID] that will be used for collision/intersection "
+"queries. Use this over [member shape] if you want to optimize for "
+"performance using the Servers API:\n"
+"[codeblock]\n"
+"var shape_rid = PhysicsServer2D.circle_shape_create()\n"
+"var radius = 64\n"
+"PhysicsServer2D.shape_set_data(shape_rid, radius)\n"
+"\n"
+"var params = PhysicsShapeQueryParameters2D.new()\n"
+"params.shape_rid = shape_rid\n"
+"\n"
+"# Execute physics queries here...\n"
+"\n"
+"# Release the shape when done with physics queries.\n"
+"PhysicsServer2D.free_rid(shape_rid)\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:45
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:42
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:52
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:49
msgid "The queried shape's transform matrix."
msgstr ""
@@ -37327,18 +38039,40 @@ msgid ""
"collision queries. See also [PhysicsShapeQueryResult3D]."
msgstr ""
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:15
+msgid "If [code]true[/code], the query will take [Area3D]s into account."
+msgstr ""
+
#: doc/classes/PhysicsShapeQueryParameters3D.xml:18
msgid ""
-"Sets the [Shape3D] that will be used for collision/intersection queries."
+"If [code]true[/code], the query will take [PhysicsBody3D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:24
-msgid "If [code]true[/code], the query will take [Area3D]s into account."
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:30
+msgid ""
+"The [Shape3D] that will be used for collision/intersection queries. This "
+"stores the actual reference which avoids the shape to be released while "
+"being used for queries, so always prefer using this over [member shape_rid]."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:33
msgid ""
-"If [code]true[/code], the query will take [PhysicsBody3D]s into account."
+"The queried shape's [RID] that will be used for collision/intersection "
+"queries. Use this over [member shape] if you want to optimize for "
+"performance using the Servers API:\n"
+"[codeblock]\n"
+"var shape_rid = PhysicsServer3D.shape_create(PhysicsServer3D.SHAPE_SPHERE)\n"
+"var radius = 2.0\n"
+"PhysicsServer3D.shape_set_data(shape_rid, radius)\n"
+"\n"
+"var params = PhysicsShapeQueryParameters3D.new()\n"
+"params.shape_rid = shape_rid\n"
+"\n"
+"# Execute physics queries here...\n"
+"\n"
+"# Release the shape when done with physics queries.\n"
+"PhysicsServer3D.free_rid(shape_rid)\n"
+"[/codeblock]"
msgstr ""
#: doc/classes/PhysicsShapeQueryResult2D.xml:4
@@ -37479,92 +38213,94 @@ msgid ""
"code]."
msgstr ""
-#: doc/classes/Plane.xml:72
-msgid "Returns a point on the plane."
-msgstr ""
-
-#: doc/classes/Plane.xml:83
+#: doc/classes/Plane.xml:76
msgid ""
-"Returns [code]true[/code] if [code]point[/code] is inside the plane (by a "
-"very minimum [code]epsilon[/code] threshold)."
+"Returns [code]true[/code] if [code]point[/code] is inside the plane. "
+"Comparison uses a custom minimum [code]epsilon[/code] threshold."
msgstr ""
-#: doc/classes/Plane.xml:94
+#: doc/classes/Plane.xml:87
msgid ""
"Returns the intersection point of the three planes [code]b[/code], [code]c[/"
"code] and this plane. If no intersection is found, [code]null[/code] is "
"returned."
msgstr ""
-#: doc/classes/Plane.xml:105
+#: doc/classes/Plane.xml:98
msgid ""
"Returns the intersection point of a ray consisting of the position "
"[code]from[/code] and the direction normal [code]dir[/code] with this plane. "
"If no intersection is found, [code]null[/code] is returned."
msgstr ""
-#: doc/classes/Plane.xml:116
+#: doc/classes/Plane.xml:109
msgid ""
"Returns the intersection point of a segment from position [code]begin[/code] "
"to position [code]end[/code] with this plane. If no intersection is found, "
"[code]null[/code] is returned."
msgstr ""
-#: doc/classes/Plane.xml:125
+#: doc/classes/Plane.xml:118
msgid ""
"Returns [code]true[/code] if this plane and [code]plane[/code] are "
"approximately equal, by running [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/Plane.xml:134
+#: doc/classes/Plane.xml:127
msgid ""
"Returns [code]true[/code] if [code]point[/code] is located above the plane."
msgstr ""
-#: doc/classes/Plane.xml:141
+#: doc/classes/Plane.xml:134
msgid "Returns a copy of the plane, normalized."
msgstr ""
-#: doc/classes/Plane.xml:150
+#: doc/classes/Plane.xml:143
msgid ""
-"Returns the orthogonal projection of point [code]p[/code] into a point in "
-"the plane."
+"Returns the orthogonal projection of [code]point[/code] into a point in the "
+"plane."
msgstr ""
-#: doc/classes/Plane.xml:156
+#: doc/classes/Plane.xml:149
msgid ""
-"Distance from the origin to the plane, in the direction of [member normal]."
+"The distance from the origin to the plane, in the direction of [member "
+"normal]. This value is typically non-negative.\n"
+"In the scalar equation of the plane [code]ax + by + cz = d[/code], this is "
+"[code]d[/code], while the [code](a, b, c)[/code] coordinates are represented "
+"by the [member normal] property."
msgstr ""
-#: doc/classes/Plane.xml:159
+#: doc/classes/Plane.xml:153
msgid ""
-"The normal of the plane. \"Over\" or \"Above\" the plane is considered the "
-"side of the plane towards where the normal is pointing."
+"The normal of the plane, which must be normalized.\n"
+"In the scalar equation of the plane [code]ax + by + cz = d[/code], this is "
+"the vector [code](a, b, c)[/code], where [code]d[/code] is the [member d] "
+"property."
msgstr ""
-#: doc/classes/Plane.xml:162
-msgid "The [member normal]'s X component."
+#: doc/classes/Plane.xml:157
+msgid "The X component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:165
-msgid "The [member normal]'s Y component."
+#: doc/classes/Plane.xml:160
+msgid "The Y component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:168
-msgid "The [member normal]'s Z component."
+#: doc/classes/Plane.xml:163
+msgid "The Z component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:173
-msgid "A plane that extends in the Y and Z axes."
+#: doc/classes/Plane.xml:168
+msgid "A plane that extends in the Y and Z axes (normal vector points +X)."
msgstr ""
-#: doc/classes/Plane.xml:176
-msgid "A plane that extends in the X and Z axes."
+#: doc/classes/Plane.xml:171
+msgid "A plane that extends in the X and Z axes (normal vector points +Y)."
msgstr ""
-#: doc/classes/Plane.xml:179
-msgid "A plane that extends in the X and Y axes."
+#: doc/classes/Plane.xml:174
+msgid "A plane that extends in the X and Y axes (normal vector points +Z)."
msgstr ""
#: doc/classes/PlaneMesh.xml:4
@@ -38275,18 +39011,25 @@ msgstr ""
#: doc/classes/PrimitiveMesh.xml:16
msgid ""
-"Returns mesh arrays used to constitute surface of [Mesh]. Mesh arrays can be "
-"used with [ArrayMesh] to create new surfaces."
+"Returns mesh arrays used to constitute surface of [Mesh]. The result can be "
+"passed to [method ArrayMesh.add_surface_from_arrays] to create a new "
+"surface. For example:\n"
+"[codeblock]\n"
+"var c := CylinderMesh.new()\n"
+"var arr_mesh := ArrayMesh.new()\n"
+"arr_mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLES, c."
+"get_mesh_arrays())\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:22
+#: doc/classes/PrimitiveMesh.xml:27
msgid ""
"Overrides the [AABB] with one defined by user for use with frustum culling. "
"Especially useful to avoid unnexpected culling when using a shader to "
"offset vertices."
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:25
+#: doc/classes/PrimitiveMesh.xml:30
msgid ""
"If set, the order of the vertices in each triangle are reversed resulting in "
"the backside of the mesh being drawn.\n"
@@ -38294,7 +39037,7 @@ msgid ""
"[member BaseMaterial3D.cull_mode]."
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:29
+#: doc/classes/PrimitiveMesh.xml:34
msgid "The current [Material] of the primitive mesh."
msgstr ""
@@ -38725,11 +39468,17 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:260
msgid ""
+"Safer override for [member audio/output_latency] in the Web platform, to "
+"avoid audio issues especially on mobile devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:263
+msgid ""
"Setting to hardcode audio delay when playing video. Best to leave this "
"untouched unless you know what you are doing."
msgstr ""
-#: doc/classes/ProjectSettings.xml:263
+#: doc/classes/ProjectSettings.xml:266
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -38739,7 +39488,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:269
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -38749,27 +39498,27 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:269
+#: doc/classes/ProjectSettings.xml:272
msgid ""
"The default compression level for Zstandard. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
"speed. Decompression speed is mostly unaffected by the compression level."
msgstr ""
-#: doc/classes/ProjectSettings.xml:272
+#: doc/classes/ProjectSettings.xml:275
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:278
msgid ""
"Largest size limit (in power of 2) allowed when compressing using long-"
"distance matching with Zstandard. Higher values can result in better "
"compression, but will require more memory when compressing and decompressing."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:281
msgid ""
"If [code]true[/code], displays getters and setters in autocompletion results "
"in the script editor. This setting is meant to be used when porting old "
@@ -38777,74 +39526,55 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:281
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:284
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:287
+#: doc/classes/ProjectSettings.xml:294
msgid ""
"If [code]true[/code], enables specific GDScript warnings (see [code]debug/"
"gdscript/warnings/*[/code] settings). If [code]false[/code], disables all "
"GDScript warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
-msgid ""
-"If [code]true[/code], enables warnings when a function is declared with the "
-"same name as a constant."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:296
-msgid ""
-"If [code]true[/code], enables warnings when a function is declared with the "
-"same name as a variable. This will turn into an error in a future version "
-"when first-class functions become supported in GDScript."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:299
-msgid ""
-"If [code]true[/code], enables warnings when a function assigned to a "
-"variable may yield and return a function state instead of a value."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:302
+#: doc/classes/ProjectSettings.xml:300
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:303
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when dividing an integer by another "
"integer (the decimal part will be discarded)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when passing a floating-point value "
"to a function that expects an integer (it will be converted and lose "
"precision)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:314
+#: doc/classes/ProjectSettings.xml:312
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
@@ -38865,102 +39595,85 @@ msgid ""
"member variable)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:323
+#: doc/classes/ProjectSettings.xml:325
msgid ""
"If [code]true[/code], enables warnings when calling an expression that has "
"no effect on the surrounding code, such as writing [code]2 + 2[/code] as a "
"statement."
msgstr ""
-#: doc/classes/ProjectSettings.xml:326
+#: doc/classes/ProjectSettings.xml:328
msgid ""
"If [code]true[/code], enables warnings when calling a ternary expression "
"that has no effect on the surrounding code, such as writing [code]42 if "
"active else 0[/code] as a statement."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:331
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:334
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:335
+#: doc/classes/ProjectSettings.xml:337
msgid ""
"If [code]true[/code], enables warnings when assigning a variable using an "
"assignment operator like [code]+=[/code] if the variable wasn't previously "
"assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:338
+#: doc/classes/ProjectSettings.xml:340
msgid ""
"If [code]true[/code], enables warnings when unreachable code is detected "
"(such as after a [code]return[/code] statement that will always be executed)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:345
msgid ""
"If [code]true[/code], enables warnings when using an expression whose type "
"may not be compatible with the function parameter expected."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:348
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:347
+#: doc/classes/ProjectSettings.xml:351
msgid ""
"If [code]true[/code], enables warnings when calling a method whose presence "
"is not guaranteed at compile-time in the class."
msgstr ""
-#: doc/classes/ProjectSettings.xml:350
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], enables warnings when accessing a property whose "
"presence is not guaranteed at compile-time in the class."
msgstr ""
-#: doc/classes/ProjectSettings.xml:353
-msgid ""
-"If [code]true[/code], enables warnings when a function parameter is unused."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:356
-msgid ""
-"If [code]true[/code], enables warnings when a member variable is unused."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:363
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:362
+#: doc/classes/ProjectSettings.xml:366
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:365
-msgid ""
-"If [code]true[/code], enables warnings when a variable is declared with the "
-"same name as a function. This will turn into an error in a future version "
-"when first-class functions become supported in GDScript."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:368
+#: doc/classes/ProjectSettings.xml:369
msgid ""
"If [code]true[/code], enables warnings when assigning the result of a "
"function that returns [code]void[/code] to a variable."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:374
+#: doc/classes/ProjectSettings.xml:375
msgid ""
"Maximum number of frames per second allowed. The actual number of frames per "
"second may still be below this value if the game is lagging.\n"
@@ -38971,143 +39684,143 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:379
+#: doc/classes/ProjectSettings.xml:380
msgid "Maximum call stack allowed for debugging GDScript."
msgstr ""
-#: doc/classes/ProjectSettings.xml:382
+#: doc/classes/ProjectSettings.xml:383
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:385
+#: doc/classes/ProjectSettings.xml:386
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:388
+#: doc/classes/ProjectSettings.xml:389
msgid ""
"Print more information to standard output when running. It displays "
"information such as memory leaks, which scenes and resources are being "
"loaded, etc."
msgstr ""
-#: doc/classes/ProjectSettings.xml:391
+#: doc/classes/ProjectSettings.xml:392
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:394
+#: doc/classes/ProjectSettings.xml:395
msgid ""
"Color of the contact points between collision shapes, visible when \"Visible "
"Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:397
+#: doc/classes/ProjectSettings.xml:398
msgid ""
"Maximum number of contact points between collision shapes to display when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:400
+#: doc/classes/ProjectSettings.xml:401
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
msgid "Hotspot for the custom mouse cursor image."
msgstr ""
-#: doc/classes/ProjectSettings.xml:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
msgid ""
"If [code]true[/code], allows HiDPI display on Windows and macOS. This "
"setting has no effect on desktop Linux, as DPI-awareness fallbacks are not "
"supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"If [code]true[/code], keeps the screen on (even in case of inactivity), so "
"the screensaver does not take over. Works on desktop and mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
msgid "Default orientation on mobile devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"If [code]true[/code], the home indicator is hidden automatically. This only "
"affects iOS devices without a physical home button."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid "Force the window to be always on top."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid "Force the window to be borderless."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Sets the window to full screen when it starts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid ""
"Sets the game's main viewport height. On desktop platforms, this is the "
"default window size. Stretch mode settings also use this as a reference when "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Allows the window to be resizable by default."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"Sets the game's main viewport width. On desktop platforms, this is the "
"default window size. Stretch mode settings also use this as a reference when "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:454
+#: doc/classes/ProjectSettings.xml:455
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:457
+#: doc/classes/ProjectSettings.xml:458
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -39116,7 +39829,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:460
+#: doc/classes/ProjectSettings.xml:461
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -39127,13 +39840,13 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:464
+#: doc/classes/ProjectSettings.xml:465
msgid ""
"Search path for project-specific script templates. Script templates will be "
"search both in the editor-specific path and in this project-specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:467
+#: doc/classes/ProjectSettings.xml:468
msgid ""
"Text-based file extensions to include in the script editor's \"Find in Files"
"\" feature. You can add e.g. [code]tscn[/code] if you wish to also parse "
@@ -39141,49 +39854,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:470
+#: doc/classes/ProjectSettings.xml:471
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:473
+#: doc/classes/ProjectSettings.xml:474
msgid ""
-"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
+"If [code]true[/code], swaps Cancel and OK buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:478
+#: doc/classes/ProjectSettings.xml:479
msgid ""
"Path to a custom [Theme] resource file to use for the project ([code]theme[/"
"code] or generic [code]tres[/code]/[code]res[/code] extension)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:484
+#: doc/classes/ProjectSettings.xml:485
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:487
+#: doc/classes/ProjectSettings.xml:488
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:490
+#: doc/classes/ProjectSettings.xml:491
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:493
+#: doc/classes/ProjectSettings.xml:494
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:496
+#: doc/classes/ProjectSettings.xml:497
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -39192,7 +39905,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"Default [InputEventAction] to discard a modal or pending input.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39200,7 +39913,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:504
+#: doc/classes/ProjectSettings.xml:505
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39208,7 +39921,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:508
+#: doc/classes/ProjectSettings.xml:509
msgid ""
"Default [InputEventAction] to go to the end position of a [Control] (e.g. "
"last item in an [ItemList] or a [Tree]), matching the behavior of [constant "
@@ -39218,7 +39931,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:512
+#: doc/classes/ProjectSettings.xml:513
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -39227,7 +39940,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:516
+#: doc/classes/ProjectSettings.xml:517
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -39236,7 +39949,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:520
+#: doc/classes/ProjectSettings.xml:521
msgid ""
"Default [InputEventAction] to go to the start position of a [Control] (e.g. "
"first item in an [ItemList] or a [Tree]), matching the behavior of [constant "
@@ -39246,7 +39959,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39254,7 +39967,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:528
+#: doc/classes/ProjectSettings.xml:529
msgid ""
"Default [InputEventAction] to go down a page in a [Control] (e.g. in an "
"[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEDOWN] on "
@@ -39264,7 +39977,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Default [InputEventAction] to go up a page in a [Control] (e.g. in an "
"[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEUP] on "
@@ -39274,7 +39987,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:536
+#: doc/classes/ProjectSettings.xml:537
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39282,7 +39995,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:540
+#: doc/classes/ProjectSettings.xml:541
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -39291,7 +40004,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39299,371 +40012,371 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:548
+#: doc/classes/ProjectSettings.xml:549
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:554
+#: doc/classes/ProjectSettings.xml:555
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:557
+#: doc/classes/ProjectSettings.xml:558
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:560
+#: doc/classes/ProjectSettings.xml:561
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:566
+#: doc/classes/ProjectSettings.xml:567
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:569
+#: doc/classes/ProjectSettings.xml:570
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:572
+#: doc/classes/ProjectSettings.xml:573
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:578
+#: doc/classes/ProjectSettings.xml:579
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:581
+#: doc/classes/ProjectSettings.xml:582
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:584
+#: doc/classes/ProjectSettings.xml:585
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:590
+#: doc/classes/ProjectSettings.xml:591
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:593
+#: doc/classes/ProjectSettings.xml:594
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:596
+#: doc/classes/ProjectSettings.xml:597
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:602
+#: doc/classes/ProjectSettings.xml:603
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid ""
"The locale to fall back to if a translation isn't available in a given "
"language. If left empty, [code]en[/code] (English) will be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "If [code]true[/code], logs all output to files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:806
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:809
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:812
msgid ""
"Godot uses a message queue to defer some function calls. If you run out of "
"space on it (you will see an error), you can increase the size here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:815
msgid ""
"This is used by servers when used in multi-threading mode (servers and "
"visual). RIDs are preallocated to avoid stalling the server requesting them "
@@ -39671,56 +40384,56 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:829
+#: doc/classes/ProjectSettings.xml:832
msgid ""
"Maximum amount of characters allowed to send as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:832
+#: doc/classes/ProjectSettings.xml:835
msgid ""
"Maximum number of errors allowed to be sent from the debugger. Over this "
"value, content is dropped. This helps not to stall the debugger connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:835
+#: doc/classes/ProjectSettings.xml:838
msgid ""
"Maximum amount of messages in the debugger queue. Over this value, content "
"is dropped. This helps to limit the debugger memory usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:838
+#: doc/classes/ProjectSettings.xml:841
msgid ""
"Maximum number of warnings allowed to be sent from the debugger. Over this "
"value, content is dropped. This helps not to stall the debugger connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:841
+#: doc/classes/ProjectSettings.xml:844
msgid ""
"Default size of packet peer stream for deserializing Godot data. Over this "
"size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:844
+#: doc/classes/ProjectSettings.xml:847
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:847
+#: doc/classes/ProjectSettings.xml:850
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:850
+#: doc/classes/ProjectSettings.xml:853
msgid ""
"Amount of read ahead used by remote filesystem. Higher values decrease the "
"effects of latency at the cost of higher bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:853
+#: doc/classes/ProjectSettings.xml:856
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:856
+#: doc/classes/ProjectSettings.xml:859
msgid ""
"The CA certificates bundle to use for SSL connections. If this is set to a "
"non-empty value, this will [i]override[/i] Godot's default [url=https://"
@@ -39730,31 +40443,31 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:863
msgid ""
"When creating node names automatically, set the type of casing in this "
"project. This is mostly an editor setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:866
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:869
msgid "Size of the hash table used for the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:872
msgid "Cell size used for the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:875
msgid "The default angular damp in 2D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:878
msgid ""
"The default gravity strength in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39766,7 +40479,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:883
+#: doc/classes/ProjectSettings.xml:886
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39778,38 +40491,38 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:891
+#: doc/classes/ProjectSettings.xml:894
msgid "The default linear damp in 2D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:894
+#: doc/classes/ProjectSettings.xml:897
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:897
+#: doc/classes/ProjectSettings.xml:900
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics2D\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:901
+#: doc/classes/ProjectSettings.xml:904
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant PhysicsServer2D."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:904
+#: doc/classes/ProjectSettings.xml:907
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant PhysicsServer2D."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:907
+#: doc/classes/ProjectSettings.xml:910
msgid ""
"Sets whether physics is run on the main thread or a separate one. Running "
"the server on a thread increases performance, but restricts API access to "
@@ -39819,23 +40532,23 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:914
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant PhysicsServer2D.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:917
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody3D] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:920
msgid "The default angular damp in 3D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:923
msgid ""
"The default gravity strength in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39847,7 +40560,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:928
+#: doc/classes/ProjectSettings.xml:931
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39859,11 +40572,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:936
+#: doc/classes/ProjectSettings.xml:939
msgid "The default linear damp in 3D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:939
+#: doc/classes/ProjectSettings.xml:942
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -39871,11 +40584,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:943
+#: doc/classes/ProjectSettings.xml:946
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:949
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -39884,7 +40597,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:950
+#: doc/classes/ProjectSettings.xml:953
msgid ""
"Fix to improve physics jitter, specially on monitors where refresh rate is "
"different than the physics FPS.\n"
@@ -39892,7 +40605,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:954
+#: doc/classes/ProjectSettings.xml:957
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -39900,7 +40613,7 @@ msgid ""
"programmatically, use [method RenderingServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:957
+#: doc/classes/ProjectSettings.xml:960
msgid ""
"[Environment] that will be used as a fallback environment in case a scene "
"does not specify its own environment. The default environment is loaded in "
@@ -39910,14 +40623,14 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:986
+#: doc/classes/ProjectSettings.xml:989
msgid ""
"Max amount of elements renderable in a frame. If more than this are visible "
"per frame, they will be dropped. Keep in mind elements refer to mesh "
"surfaces and not meshes themselves."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:994
msgid ""
"Some NVIDIA GPU drivers have a bug which produces flickering issues for the "
"[code]draw_rect[/code] method, especially as used in [TileMap]. Refer to "
@@ -39929,73 +40642,73 @@ msgid ""
"using the Vulkan backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:995
+#: doc/classes/ProjectSettings.xml:998
msgid ""
"If [code]true[/code], forces snapping of polygons to pixels in 2D rendering. "
"May help in some pixel art styles."
msgstr ""
-#: doc/classes/ProjectSettings.xml:998
+#: doc/classes/ProjectSettings.xml:1001
msgid ""
"Sets the quality of the depth of field effect. Higher quality takes more "
"samples, which is slower but looks smoother."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1001
+#: doc/classes/ProjectSettings.xml:1004
msgid ""
"Sets the depth of field shape. Can be Box, Hexagon, or Circle. Box is the "
"fastest. Circle is the most realistic, but also the most expensive to "
"compute."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1004
+#: doc/classes/ProjectSettings.xml:1007
msgid ""
"If [code]true[/code], jitters DOF samples to make effect slightly blurrier "
"and hide lines created from low sample rates. This can result in a slightly "
"grainy appearance when used with a low number of samples."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1010
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1010
+#: doc/classes/ProjectSettings.xml:1013
msgid ""
"If [code]true[/code], performs a previous depth pass before rendering "
"materials. This increases performance in scenes with high overdraw, when "
"complex materials and lighting are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1016
msgid ""
"The directional shadow's size in pixels. Higher values will result in "
"sharper shadows, at the cost of performance. The value will be rounded up to "
"the nearest power of 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1016
+#: doc/classes/ProjectSettings.xml:1019
msgid ""
"Lower-end override for [member rendering/quality/directional_shadow/size] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1019
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"Quality setting for shadows cast by [DirectionalLight3D]s. Higher quality "
"settings use more samples when reading from shadow maps and are thus slower. "
"Low quality settings may result in shadows looking grainy."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1022
+#: doc/classes/ProjectSettings.xml:1025
msgid ""
"Lower-end override for [member rendering/quality/directional_shadow/"
"soft_shadow_quality] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1028
msgid ""
"The video driver to use (\"GLES2\" or \"Vulkan\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -40005,32 +40718,32 @@ msgid ""
"get_current_video_driver[/code] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1031
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"If [code]true[/code], take additional samples when rendering objects "
"affected by a [GIProbe] to reduce artifacts from only sampling in one "
"direction."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1034
+#: doc/classes/ProjectSettings.xml:1037
msgid ""
"Sets the number of cone samples taken when rendering objects affected by "
"[GIProbe]s."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1037
+#: doc/classes/ProjectSettings.xml:1040
msgid ""
"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."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1040
+#: doc/classes/ProjectSettings.xml:1043
msgid ""
"Lower-end override for [member rendering/quality/glow/upscale_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1043
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Strategy used for framebuffer allocation. The simpler it is, the less "
"resources it uses (but the less features it supports). If set to \"2D "
@@ -40040,41 +40753,41 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1046
+#: doc/classes/ProjectSettings.xml:1049
msgid ""
"Lower-end override for [member rendering/quality/intended_usage/"
"framebuffer_allocation] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1052
msgid ""
"Number of cubemaps to store in the reflection atlas. The number of "
"[ReflectionProbe]s in a scene will be limited by this amount. A higher "
"number requires more VRAM."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1052
+#: doc/classes/ProjectSettings.xml:1055
msgid ""
"Size of cubemap faces for [ReflectionProbe]s. A higher number requires more "
"VRAM and may make reflection probe updating slower."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1055
+#: doc/classes/ProjectSettings.xml:1058
msgid ""
"Lower-end override for [member rendering/quality/reflection_atlas/"
"reflection_size] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1058
+#: doc/classes/ProjectSettings.xml:1061
msgid ""
"Use a higher quality variant of the fast filtering algorithm. Significantly "
"slower than using default quality, but results in smoother reflections. "
"Should only be used when the scene is especially detailed."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1061
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Sets the number of samples to take when using importance sampling for [Sky]s "
"and [ReflectionProbe]s. A higher value will result in smoother, higher "
@@ -40084,19 +40797,19 @@ msgid ""
"environments with a high level of detail."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1064
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Lower-end override for [member rendering/quality/reflections/ggx_samples] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1067
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Limits the number of layers to use in radiance maps when using importance "
"sampling. A lower number will be slightly faster and take up less VRAM."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1070
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise and "
@@ -40105,14 +40818,14 @@ msgid ""
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1073
+#: doc/classes/ProjectSettings.xml:1076
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"texture_array_reflections] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1079
msgid ""
"Sets the number of MSAA samples to use (as a power of two). MSAA is used to "
"reduce aliasing around the edges of polygons. A higher MSAA value results in "
@@ -40120,7 +40833,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1080
+#: doc/classes/ProjectSettings.xml:1083
msgid ""
"Sets the screen-space antialiasing mode for the default screen [Viewport]. "
"Screen-space antialiasing works by selectively blurring edges in a post-"
@@ -40129,133 +40842,117 @@ msgid ""
"MSAA and will smooth out specular aliasing, but tend to make scenes appear "
"blurry.\n"
"Another way to combat specular aliasing is to enable [member rendering/"
-"quality/screen_filters/screen_space_roughness_limiter]."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:1084
-msgid ""
-"Enables the screen-space roughness limiter which increases material "
-"roughness in areas with a high normal frequency (i.e. when normals change a "
-"lot from pixel to pixel). This helps to reduce the amount of specular "
-"aliasing in a scene. Specular aliasing looks like random bright pixels that "
-"occur in reflections."
+"quality/screen_filters/screen_space_roughness_limiter_enabled]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1087
-msgid ""
-"Curves the amount of the roughness limited effect. A higher value limits the "
-"effect to very sharply curved surfaces, while a lower threshold extends the "
-"effect to smoother surfaces."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:1090
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"Sets the quality for rough screen-space reflections. Turning off will make "
"all screen space reflections sharp, while higher values make rough "
"reflections look better."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1093
+#: doc/classes/ProjectSettings.xml:1096
msgid ""
"If [code]true[/code], uses faster but lower-quality Blinn model to generate "
"blurred reflections instead of the GGX model."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1099
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_blinn_over_ggx] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1102
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1102
+#: doc/classes/ProjectSettings.xml:1105
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_lambert_over_burley] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1105
+#: doc/classes/ProjectSettings.xml:1108
msgid ""
"If [code]true[/code], forces vertex shading for all rendering. This can "
"increase performance a lot, but also reduces quality immensely. Can be used "
"to optimize performance on low-end mobile devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1108
+#: doc/classes/ProjectSettings.xml:1111
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_vertex_shading] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1111 doc/classes/ProjectSettings.xml:1114
-#: doc/classes/ProjectSettings.xml:1117 doc/classes/ProjectSettings.xml:1120
+#: doc/classes/ProjectSettings.xml:1114 doc/classes/ProjectSettings.xml:1117
+#: doc/classes/ProjectSettings.xml:1120 doc/classes/ProjectSettings.xml:1123
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1123
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1126
+#: doc/classes/ProjectSettings.xml:1129
msgid ""
"Lower-end override for [member rendering/quality/shadow_atlas/size] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1132
msgid ""
"Quality setting for shadows cast by [OmniLight3D]s and [SpotLight3D]s. "
"Higher quality settings use more samples when reading from shadow maps and "
"are thus slower. Low quality settings may result in shadows looking grainy."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1132
+#: doc/classes/ProjectSettings.xml:1135
msgid ""
"Lower-end override for [member rendering/quality/shadows/"
"soft_shadow_quality] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1135
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"If [code]true[/code], screen-space ambient occlusion will be rendered at "
"half size and then upscaled before being added to the scene. This is "
"significantly faster but may miss small details."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1138
+#: doc/classes/ProjectSettings.xml:1141
msgid ""
"Sets the quality of the screen-space ambient occlusion effect. Higher values "
"take more samples and so will result in better quality, at the cost of "
"performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1144
msgid ""
"Scales the depth over which the subsurface scattering effect is applied. A "
"high value may allow light to scatter into a part of the mesh or another "
"mesh that is close in screen space but far in depth."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1144
+#: doc/classes/ProjectSettings.xml:1147
msgid ""
"Sets the quality of the subsurface scattering effect. Higher values are "
"slower but look nicer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1147
+#: doc/classes/ProjectSettings.xml:1150
msgid ""
"Scales the distance over which samples are taken for subsurface scattering "
"effect. Changing this does not impact performance, but higher values will "
@@ -40263,7 +40960,7 @@ msgid ""
"out. A lower value results in a smaller spread of scattered light."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1150
+#: doc/classes/ProjectSettings.xml:1153
msgid ""
"Sets the maximum number of samples to take when using anisotropic filtering "
"on textures (as a power of two). A higher sample count will result in "
@@ -40272,7 +40969,7 @@ msgid ""
"materials where it is enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1153
+#: doc/classes/ProjectSettings.xml:1156
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -40281,49 +40978,49 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Thread model for rendering. Rendering on a thread can vastly improve "
"performance, but synchronizing to the main thread can cause a bit more "
"jitter."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
"only supported on desktop platforms, and only when using the Vulkan renderer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
"doesn't support alpha channels in textures."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
"compression algorithm is only supported when using the Vulkan renderer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1175
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
"compression algorithm is only supported on iOS."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
"supported on desktop platforms and consoles."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1182
+#: doc/classes/ProjectSettings.xml:1189
msgid "Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses."
msgstr ""
@@ -40353,13 +41050,14 @@ msgstr ""
#: doc/classes/Quat.xml:7
msgid ""
-"A unit quaternion used for representing 3D rotations.\n"
-"It is similar to [Basis], which implements matrix representation of "
-"rotations, and can be parametrized using both an axis-angle pair or Euler "
-"angles. But due to its compactness and the way it is stored in memory, "
-"certain operations (obtaining axis-angle and performing SLERP, in "
-"particular) are more efficient and robust against floating-point errors.\n"
-"Quaternions need to be (re)normalized."
+"A unit quaternion used for representing 3D rotations. Quaternions need to be "
+"normalized to be used for rotation.\n"
+"It is similar to Basis, which implements matrix representation of rotations, "
+"and can be parametrized using both an axis-angle pair or Euler angles. Basis "
+"stores rotation, scale, and shearing, while Quat only stores rotation.\n"
+"Due to its compactness and the way it is stored in memory, certain "
+"operations (obtaining axis-angle and performing SLERP, in particular) are "
+"more efficient and robust against floating-point errors."
msgstr ""
#: doc/classes/Quat.xml:12
@@ -40369,29 +41067,31 @@ msgid ""
msgstr ""
#: doc/classes/Quat.xml:21
-msgid "Returns the rotation matrix corresponding to the given quaternion."
+msgid "Constructs a quaternion from the given [Basis]."
msgstr ""
#: doc/classes/Quat.xml:30
msgid ""
-"Returns a quaternion that will perform a rotation specified by Euler angles "
-"(in the YXZ convention: first Z, then X, and Y last), given in the vector "
-"format as (X angle, Y angle, Z angle)."
+"Constructs a quaternion that will perform a rotation specified by Euler "
+"angles (in the YXZ convention: when decomposing, first Z, then X, and Y "
+"last), given in the vector format as (X angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:41
msgid ""
-"Returns a quaternion that will rotate around the given axis by the specified "
-"angle. The axis must be a normalized vector."
+"Constructs a quaternion that will rotate around the given axis by the "
+"specified angle. The axis must be a normalized vector."
msgstr ""
#: doc/classes/Quat.xml:56
-msgid "Returns a quaternion defined by these values."
+msgid "Constructs a quaternion defined by the given values."
msgstr ""
#: doc/classes/Quat.xml:71
msgid ""
-"Performs a cubic spherical-linear interpolation with another quaternion."
+"Performs a cubic spherical interpolation between quaternions [code]preA[/"
+"code], this vector, [code]b[/code], and [code]postB[/code], by the given "
+"amount [code]t[/code]."
msgstr ""
#: doc/classes/Quat.xml:80
@@ -40400,10 +41100,10 @@ msgstr ""
#: doc/classes/Quat.xml:87
msgid ""
-"Returns Euler angles (in the YXZ convention: first Z, then X, and Y last) "
-"corresponding to the rotation represented by the unit quaternion. Returned "
-"vector contains the rotation angles in the format (X angle, Y angle, Z "
-"angle)."
+"Returns Euler angles (in the YXZ convention: when decomposing, first Z, then "
+"X, and Y last) corresponding to the rotation represented by the unit "
+"quaternion. Returned vector contains the rotation angles in the format (X "
+"angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:94
@@ -40442,44 +41142,57 @@ msgstr ""
#: doc/classes/Quat.xml:151
msgid ""
"Sets the quaternion to a rotation specified by Euler angles (in the YXZ "
-"convention: first Z, then X, and Y last), given in the vector format as (X "
-"angle, Y angle, Z angle)."
+"convention: when decomposing, first Z, then X, and Y last), given in the "
+"vector format as (X angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:162
-msgid "Performs a spherical-linear interpolation with another quaternion."
+msgid ""
+"Returns the result of the spherical linear interpolation between this "
+"quaternion and [code]to[/code] by amount [code]weight[/code].\n"
+"[b]Note:[/b] Both quaternions must be normalized."
msgstr ""
-#: doc/classes/Quat.xml:173
+#: doc/classes/Quat.xml:174
msgid ""
-"Performs a spherical-linear interpolation with another quaterion without "
-"checking if the rotation path is not bigger than 90°."
+"Returns the result of the spherical linear interpolation between this "
+"quaternion and [code]to[/code] by amount [code]weight[/code], but without "
+"checking if the rotation path is not bigger than 90 degrees."
msgstr ""
-#: doc/classes/Quat.xml:182
-msgid "Transforms the vector [code]v[/code] by this quaternion."
+#: doc/classes/Quat.xml:183
+msgid "Returns a vector transformed (multiplied) by this quaternion."
msgstr ""
-#: doc/classes/Quat.xml:188
-msgid "W component of the quaternion."
+#: doc/classes/Quat.xml:189
+msgid ""
+"W component of the quaternion (real part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:191
-msgid "X component of the quaternion."
+#: doc/classes/Quat.xml:193
+msgid ""
+"X component of the quaternion (imaginary [code]i[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:194
-msgid "Y component of the quaternion."
+#: doc/classes/Quat.xml:197
+msgid ""
+"Y component of the quaternion (imaginary [code]j[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:197
-msgid "Z component of the quaternion."
+#: doc/classes/Quat.xml:201
+msgid ""
+"Z component of the quaternion (imaginary [code]k[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:202
+#: doc/classes/Quat.xml:207
msgid ""
-"The identity rotation. Equivalent to an identity matrix. If a vector is "
-"transformed by an identity quaternion, it will not change."
+"The identity quaternion, representing no rotation. Equivalent to an identity "
+"[Basis] matrix. If a vector is transformed by an identity quaternion, it "
+"will not change."
msgstr ""
#: doc/classes/RandomNumberGenerator.xml:4
@@ -40682,7 +41395,8 @@ msgid ""
"collision information immediately instead of waiting for the next "
"[code]_physics_process[/code] call, for example if the ray or its parent has "
"changed state.\n"
-"[b]Note:[/b] [code]enabled == true[/code] is not required for this to work."
+"[b]Note:[/b] [member enabled] does not need to be [code]true[/code] for this "
+"to work."
msgstr ""
#: doc/classes/RayCast2D.xml:54 doc/classes/RayCast3D.xml:55
@@ -40788,7 +41502,8 @@ msgid ""
"Use this method to update the collision information immediately instead of "
"waiting for the next [code]_physics_process[/code] call, for example if the "
"ray or its parent has changed state.\n"
-"[b]Note:[/b] [code]enabled == true[/code] is not required for this to work."
+"[b]Note:[/b] [member enabled] does not need to be [code]true[/code] for this "
+"to work."
msgstr ""
#: doc/classes/RayCast3D.xml:71
@@ -40946,14 +41661,6 @@ msgstr ""
msgid "Returns a larger [Rect2] that contains this [Rect2] and [code]b[/code]."
msgstr ""
-#: doc/classes/Rect2.xml:174 doc/classes/Rect2i.xml:163
-msgid "Ending corner."
-msgstr ""
-
-#: doc/classes/Rect2.xml:177 doc/classes/Rect2i.xml:166
-msgid "Position (starting corner)."
-msgstr ""
-
#: doc/classes/Rect2i.xml:4
msgid "2D axis-aligned bounding box using integer coordinates."
msgstr ""
@@ -41066,22 +41773,22 @@ msgstr ""
msgid ""
"Base class for any object that keeps a reference count. [Resource] and many "
"other helper objects inherit this class.\n"
-"References keep an internal reference counter so that they are automatically "
-"released when no longer in use, and only then. References therefore do not "
-"need to be freed manually with [method Object.free].\n"
+"Unlike [Object]s, References keep an internal reference counter so that they "
+"are automatically released when no longer in use, and only then. References "
+"therefore do not need to be freed manually with [method Object.free].\n"
"In the vast majority of use cases, instantiating and using [Reference]-"
"derived types is all you need to do. The methods provided in this class are "
"only for advanced users, and can cause issues if misused."
msgstr ""
-#: doc/classes/Reference.xml:18
+#: doc/classes/Reference.xml:19
msgid ""
"Initializes the internal reference counter. Use this only if you really know "
"what you are doing.\n"
"Returns whether the initialization was successful."
msgstr ""
-#: doc/classes/Reference.xml:26
+#: doc/classes/Reference.xml:27
msgid ""
"Increments the internal reference counter. Use this only if you really know "
"what you are doing.\n"
@@ -41089,7 +41796,7 @@ msgid ""
"code] otherwise."
msgstr ""
-#: doc/classes/Reference.xml:34
+#: doc/classes/Reference.xml:35
msgid ""
"Decrements the internal reference counter. Use this only if you really know "
"what you are doing.\n"
@@ -41138,14 +41845,14 @@ msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/reflection_probes.html"
msgstr ""
-#: doc/classes/ReflectionProbe.xml:17
+#: doc/classes/ReflectionProbe.xml:23
msgid ""
"If [code]true[/code], enables box projection. This makes reflections look "
"more correct in rectangle-shaped rooms by offsetting the reflection center "
"depending on the camera's location."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:20
+#: doc/classes/ReflectionProbe.xml:26
msgid ""
"Sets the cull mask which determines what objects are drawn by this probe. "
"Every [VisualInstance3D] with a layer included in this cull mask will be "
@@ -41154,78 +41861,56 @@ msgid ""
"rendering cost."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:23
+#: doc/classes/ReflectionProbe.xml:29
msgid ""
"If [code]true[/code], computes shadows in the reflection probe. This makes "
"the reflection probe slower to render; you may want to disable this if using "
"the [constant UPDATE_ALWAYS] [member update_mode]."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:26
+#: doc/classes/ReflectionProbe.xml:32
msgid ""
"The size of the reflection probe. The larger the extents the more space "
"covered by the probe which will lower the perceived resolution. It is best "
"to keep the extents only as large as you need them."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:29
+#: doc/classes/ReflectionProbe.xml:35
msgid ""
"Defines the reflection intensity. Intensity modulates the strength of the "
"reflection."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:32
-msgid ""
-"Sets the ambient light color to be used when this probe is set to [member "
-"interior_enable]."
-msgstr ""
-
-#: doc/classes/ReflectionProbe.xml:35
-msgid ""
-"Sets the contribution value for how much the reflection affects the ambient "
-"light for this reflection probe when set to [member interior_enable]. Useful "
-"so that ambient light matches the color of the room."
-msgstr ""
-
#: doc/classes/ReflectionProbe.xml:38
-msgid ""
-"Sets the energy multiplier for this reflection probe's ambient light "
-"contribution when set to [member interior_enable]."
+msgid "If [code]true[/code], reflections will ignore sky contribution."
msgstr ""
#: doc/classes/ReflectionProbe.xml:41
msgid ""
-"If [code]true[/code], reflections will ignore sky contribution. Ambient "
-"lighting is then controlled by the [code]interior_ambient_*[/code] "
-"properties."
-msgstr ""
-
-#: doc/classes/ReflectionProbe.xml:44
-msgid ""
"Sets the max distance away from the probe an object can be before it is "
"culled."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:47
+#: doc/classes/ReflectionProbe.xml:44
msgid ""
"Sets the origin offset to be used when this reflection probe is in box "
"project mode."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:50
+#: doc/classes/ReflectionProbe.xml:47
msgid ""
"Sets how frequently the probe is updated. Can be [constant UPDATE_ONCE] or "
"[constant UPDATE_ALWAYS]."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:55
+#: doc/classes/ReflectionProbe.xml:52
msgid ""
"Update the probe once on the next frame. The corresponding radiance map will "
"be generated over the following six frames. This is slower to update than "
"[constant UPDATE_ALWAYS] but can result in higher quality reflections."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:58
+#: doc/classes/ReflectionProbe.xml:55
msgid ""
"Update the probe every frame. This is needed when you want to capture "
"dynamic objects. However, it results in an increased render time. Use "
@@ -41255,10 +41940,10 @@ msgid ""
"read by RegEx as [code]\\d+[/code]. Similarly, [code]compile(\"\\\"(?:\\\\\\"
"\\.|[^\\\"])*\\\"\")[/code] would be read as [code]\"(?:\\\\.|[^\"])*\"[/"
"code].\n"
-"Using [method search] you can find the pattern within the given text. If a "
+"Using [method search], you can find the pattern within the given text. If a "
"pattern is found, [RegExMatch] is returned and you can retrieve details of "
-"the results using functions such as [method RegExMatch.get_string] and "
-"[method RegExMatch.get_start].\n"
+"the results using methods such as [method RegExMatch.get_string] and [method "
+"RegExMatch.get_start].\n"
"[codeblock]\n"
"var regex = RegEx.new()\n"
"regex.compile(\"\\\\w-(\\\\d+)\")\n"
@@ -41267,7 +41952,7 @@ msgid ""
" print(result.get_string()) # Would print n-0123\n"
"[/codeblock]\n"
"The results of capturing groups [code]()[/code] can be retrieved by passing "
-"the group number to the various functions in [RegExMatch]. Group 0 is the "
+"the group number to the various methods in [RegExMatch]. Group 0 is the "
"default and will always refer to the entire pattern. In the above example, "
"calling [code]result.get_string(1)[/code] would give you [code]0123[/code].\n"
"This version of RegEx also supports named capturing groups, and the names "
@@ -41288,6 +41973,15 @@ msgid ""
" print(result.get_string(\"digit\"))\n"
"# Would print 01 03 0 3f 42\n"
"[/codeblock]\n"
+"[b]Example of splitting a string using a RegEx:[/b]\n"
+"[codeblock]\n"
+"var regex = RegEx.new()\n"
+"regex.compile(\"\\\\S+\") # Negated whitespace character class.\n"
+"var results = []\n"
+"for match in regex.search_all(\"One Two \\n\\tThree\"):\n"
+" results.push_back(match.get_string())\n"
+"# The `results` array now contains \"One\", \"Two\", \"Three\".\n"
+"[/codeblock]\n"
"[b]Note:[/b] Godot's regex implementation is based on the [url=https://www."
"pcre.org/]PCRE2[/url] library. You can view the full pattern reference "
"[url=https://www.pcre.org/current/doc/html/pcre2pattern.html]here[/url].\n"
@@ -41295,38 +41989,38 @@ msgid ""
"regular expressions online."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:47
+#: modules/regex/doc_classes/RegEx.xml:56
msgid ""
"This method resets the state of the object, as if it was freshly created. "
"Namely, it unassigns the regular expression of this object."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:56
+#: modules/regex/doc_classes/RegEx.xml:65
msgid ""
"Compiles and assign the search pattern to use. Returns [constant OK] if the "
"compilation is successful. If an error is encountered, details are printed "
"to standard output and an error is returned."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:63
+#: modules/regex/doc_classes/RegEx.xml:72
msgid "Returns the number of capturing groups in compiled pattern."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:70
+#: modules/regex/doc_classes/RegEx.xml:79
msgid ""
"Returns an array of names of named capturing groups in the compiled pattern. "
"They are ordered by appearance."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:77
+#: modules/regex/doc_classes/RegEx.xml:86
msgid "Returns the original search pattern that was compiled."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:84
+#: modules/regex/doc_classes/RegEx.xml:93
msgid "Returns whether this object has a valid search pattern assigned."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:97
+#: modules/regex/doc_classes/RegEx.xml:106
msgid ""
"Searches the text for the compiled pattern. Returns a [RegExMatch] container "
"of the first matching result if found, otherwise [code]null[/code]. The "
@@ -41334,7 +42028,7 @@ msgid ""
"and end anchor would be."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:110
+#: modules/regex/doc_classes/RegEx.xml:119
msgid ""
"Searches the text for the compiled pattern. Returns an array of [RegExMatch] "
"containers for each non-overlapping result. If no results were found, an "
@@ -41342,7 +42036,7 @@ msgid ""
"specified without modifying where the start and end anchor would be."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:127
+#: modules/regex/doc_classes/RegEx.xml:136
msgid ""
"Searches the text for the compiled pattern and replaces it with the "
"specified string. Escapes and backreferences such as [code]$1[/code] and "
@@ -42069,7 +42763,7 @@ msgid ""
msgstr ""
#: doc/classes/RenderingServer.xml:1222 doc/classes/RenderingServer.xml:1250
-#: doc/classes/RenderingServer.xml:1527
+#: doc/classes/RenderingServer.xml:1537
msgid "Not implemented in Godot 3.x."
msgstr ""
@@ -42216,30 +42910,30 @@ msgid ""
"OmniLight3D.omni_shadow_mode]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1481
+#: doc/classes/RenderingServer.xml:1491
msgid ""
"Sets the color of the light. Equivalent to [member Light3D.light_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1492
+#: doc/classes/RenderingServer.xml:1502
msgid ""
"Sets the cull mask for this Light3D. Lights only affect objects in the "
"selected layers. Equivalent to [member Light3D.light_cull_mask]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1503
+#: doc/classes/RenderingServer.xml:1513
msgid ""
"If [code]true[/code], light will subtract light instead of adding light. "
"Equivalent to [member Light3D.light_negative]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1516
+#: doc/classes/RenderingServer.xml:1526
msgid ""
"Sets the specified light parameter. See [enum LightParam] for options. "
"Equivalent to [method Light3D.set_param]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1538
+#: doc/classes/RenderingServer.xml:1548
msgid ""
"If [code]true[/code], reverses the backface culling of the mesh. This can be "
"useful when you have a flat mesh that has a light behind it. If you need to "
@@ -42248,29 +42942,25 @@ msgid ""
"to [member Light3D.shadow_reverse_cull_face]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1549
+#: doc/classes/RenderingServer.xml:1559
msgid ""
"If [code]true[/code], light will cast shadows. Equivalent to [member Light3D."
"shadow_enabled]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1560
+#: doc/classes/RenderingServer.xml:1570
msgid ""
"Sets the color of the shadow cast by the light. Equivalent to [member "
"Light3D.shadow_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1571
-msgid "Sets whether GI probes capture light information from this light."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:1584
+#: doc/classes/RenderingServer.xml:1583
msgid ""
"Returns a mesh of a sphere with the given amount of horizontal and vertical "
"subdivisions."
msgstr ""
-#: doc/classes/RenderingServer.xml:1591
+#: doc/classes/RenderingServer.xml:1590
msgid ""
"Creates an empty material and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42279,31 +42969,31 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:1603
+#: doc/classes/RenderingServer.xml:1602
msgid "Returns the value of a certain material's parameter."
msgstr ""
-#: doc/classes/RenderingServer.xml:1614
+#: doc/classes/RenderingServer.xml:1613
msgid "Sets an object's next material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1627
+#: doc/classes/RenderingServer.xml:1626
msgid "Sets a material's parameter."
msgstr ""
-#: doc/classes/RenderingServer.xml:1638
+#: doc/classes/RenderingServer.xml:1637
msgid "Sets a material's render priority."
msgstr ""
-#: doc/classes/RenderingServer.xml:1649
+#: doc/classes/RenderingServer.xml:1648
msgid "Sets a shader material's shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:1678
+#: doc/classes/RenderingServer.xml:1677
msgid "Removes all surfaces from a mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1685
+#: doc/classes/RenderingServer.xml:1684
msgid ""
"Creates a new mesh and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all [code]mesh_*[/"
@@ -42314,58 +43004,58 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:1696
+#: doc/classes/RenderingServer.xml:1695
msgid "Returns a mesh's blend shape count."
msgstr ""
-#: doc/classes/RenderingServer.xml:1705
+#: doc/classes/RenderingServer.xml:1704
msgid "Returns a mesh's blend shape mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:1714
+#: doc/classes/RenderingServer.xml:1713
msgid "Returns a mesh's custom aabb."
msgstr ""
-#: doc/classes/RenderingServer.xml:1723
+#: doc/classes/RenderingServer.xml:1722
msgid "Returns a mesh's number of surfaces."
msgstr ""
-#: doc/classes/RenderingServer.xml:1734
+#: doc/classes/RenderingServer.xml:1733
msgid "Sets a mesh's blend shape mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:1745
+#: doc/classes/RenderingServer.xml:1744
msgid "Sets a mesh's custom aabb."
msgstr ""
-#: doc/classes/RenderingServer.xml:1756
+#: doc/classes/RenderingServer.xml:1755
msgid "Returns a mesh's surface's buffer arrays."
msgstr ""
-#: doc/classes/RenderingServer.xml:1767
+#: doc/classes/RenderingServer.xml:1766
msgid "Returns a mesh's surface's arrays for blend shapes."
msgstr ""
-#: doc/classes/RenderingServer.xml:1782 doc/classes/RenderingServer.xml:1795
+#: doc/classes/RenderingServer.xml:1781 doc/classes/RenderingServer.xml:1794
msgid "Function is unused in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:1806
+#: doc/classes/RenderingServer.xml:1805
msgid "Returns a mesh's surface's material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1819
+#: doc/classes/RenderingServer.xml:1818
msgid "Sets a mesh's surface's material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1834
+#: doc/classes/RenderingServer.xml:1833
msgid ""
"Updates a specific region of a vertex buffer for the specified surface. "
"Warning: this function alters the vertex buffer directly with no safety "
"mechanisms, you can easily corrupt your mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1857
+#: doc/classes/RenderingServer.xml:1856
msgid ""
"Creates a new multimesh on the RenderingServer and returns an [RID] handle. "
"This RID will be used in all [code]multimesh_*[/code] RenderingServer "
@@ -42376,82 +43066,82 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:1868
+#: doc/classes/RenderingServer.xml:1867
msgid ""
"Calculates and returns the axis-aligned bounding box that encloses all "
"instances within the multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1885
+#: doc/classes/RenderingServer.xml:1884
msgid "Returns the number of instances allocated for this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1894
+#: doc/classes/RenderingServer.xml:1893
msgid ""
"Returns the RID of the mesh that will be used in drawing this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1903
+#: doc/classes/RenderingServer.xml:1902
msgid "Returns the number of visible instances for this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1914
+#: doc/classes/RenderingServer.xml:1913
msgid "Returns the color by which the specified instance will be modulated."
msgstr ""
-#: doc/classes/RenderingServer.xml:1925
+#: doc/classes/RenderingServer.xml:1924
msgid "Returns the custom data associated with the specified instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:1936
+#: doc/classes/RenderingServer.xml:1935
msgid "Returns the [Transform] of the specified instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:1947
+#: doc/classes/RenderingServer.xml:1946
msgid ""
"Returns the [Transform2D] of the specified instance. For use when the "
"multimesh is set to use 2D transforms."
msgstr ""
-#: doc/classes/RenderingServer.xml:1960
+#: doc/classes/RenderingServer.xml:1959
msgid ""
"Sets the color by which this instance will be modulated. Equivalent to "
"[method MultiMesh.set_instance_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1973
+#: doc/classes/RenderingServer.xml:1972
msgid ""
"Sets the custom data for this instance. Custom data is passed as a [Color], "
"but is interpreted as a [code]vec4[/code] in the shader. Equivalent to "
"[method MultiMesh.set_instance_custom_data]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1986
+#: doc/classes/RenderingServer.xml:1985
msgid ""
"Sets the [Transform] for this instance. Equivalent to [method MultiMesh."
"set_instance_transform]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1999
+#: doc/classes/RenderingServer.xml:1998
msgid ""
"Sets the [Transform2D] for this instance. For use when multimesh is used in "
"2D. Equivalent to [method MultiMesh.set_instance_transform_2d]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2020
+#: doc/classes/RenderingServer.xml:2019
msgid ""
"Sets the mesh to be drawn by the multimesh. Equivalent to [member MultiMesh."
"mesh]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2031
+#: doc/classes/RenderingServer.xml:2030
msgid ""
"Sets the number of instances visible at a given time. If -1, all instances "
"that have been allocated are drawn. Equivalent to [member MultiMesh."
"visible_instance_count]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2038
+#: doc/classes/RenderingServer.xml:2037
msgid ""
"Creates a new omni light and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID can be used in most "
@@ -42462,7 +43152,7 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2047
+#: doc/classes/RenderingServer.xml:2046
msgid ""
"Creates a particle system and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42473,23 +43163,23 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2058
+#: doc/classes/RenderingServer.xml:2057
msgid ""
"Calculates and returns the axis-aligned bounding box that contains all the "
"particles. Equivalent to [method GPUParticles3D.capture_aabb]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2067
+#: doc/classes/RenderingServer.xml:2066
msgid "Returns [code]true[/code] if particles are currently set to emitting."
msgstr ""
-#: doc/classes/RenderingServer.xml:2076
+#: doc/classes/RenderingServer.xml:2075
msgid ""
"Returns [code]true[/code] if particles are not emitting and particles are "
"set to inactive."
msgstr ""
-#: doc/classes/RenderingServer.xml:2085
+#: doc/classes/RenderingServer.xml:2084
msgid ""
"Add particle system to list of particle systems that need to be updated. "
"Update will take place on the next frame, or on the next call to [method "
@@ -42497,121 +43187,121 @@ msgid ""
"instances_cull_ray]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2094
+#: doc/classes/RenderingServer.xml:2093
msgid ""
"Reset the particles on the next update. Equivalent to [method GPUParticles3D."
"restart]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2105
+#: doc/classes/RenderingServer.xml:2104
msgid ""
"Sets the number of particles to be drawn and allocates the memory for them. "
"Equivalent to [member GPUParticles3D.amount]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2116
+#: doc/classes/RenderingServer.xml:2115
msgid ""
"Sets a custom axis-aligned bounding box for the particle system. Equivalent "
"to [member GPUParticles3D.visibility_aabb]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2127
+#: doc/classes/RenderingServer.xml:2126
msgid ""
"Sets the draw order of the particles to one of the named enums from [enum "
"ParticlesDrawOrder]. See [enum ParticlesDrawOrder] for options. Equivalent "
"to [member GPUParticles3D.draw_order]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2140
+#: doc/classes/RenderingServer.xml:2139
msgid ""
"Sets the mesh to be used for the specified draw pass. Equivalent to [member "
"GPUParticles3D.draw_pass_1], [member GPUParticles3D.draw_pass_2], [member "
"GPUParticles3D.draw_pass_3], and [member GPUParticles3D.draw_pass_4]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2151
+#: doc/classes/RenderingServer.xml:2150
msgid ""
"Sets the number of draw passes to use. Equivalent to [member GPUParticles3D."
"draw_passes]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2162
+#: doc/classes/RenderingServer.xml:2161
msgid ""
"Sets the [Transform] that will be used by the particles when they first emit."
msgstr ""
-#: doc/classes/RenderingServer.xml:2173
+#: doc/classes/RenderingServer.xml:2172
msgid ""
"If [code]true[/code], particles will emit over time. Setting to false does "
"not reset the particles, but only stops their emission. Equivalent to "
"[member GPUParticles3D.emitting]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2184
+#: doc/classes/RenderingServer.xml:2183
msgid ""
"Sets the explosiveness ratio. Equivalent to [member GPUParticles3D."
"explosiveness]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2195
+#: doc/classes/RenderingServer.xml:2194
msgid ""
"Sets the frame rate that the particle system rendering will be fixed to. "
"Equivalent to [member GPUParticles3D.fixed_fps]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2206
+#: doc/classes/RenderingServer.xml:2205
msgid ""
"If [code]true[/code], uses fractional delta which smooths the movement of "
"the particles. Equivalent to [member GPUParticles3D.fract_delta]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2217
+#: doc/classes/RenderingServer.xml:2216
msgid ""
"Sets the lifetime of each particle in the system. Equivalent to [member "
"GPUParticles3D.lifetime]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2228
+#: doc/classes/RenderingServer.xml:2227
msgid ""
"If [code]true[/code], particles will emit once and then stop. Equivalent to "
"[member GPUParticles3D.one_shot]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2239
+#: doc/classes/RenderingServer.xml:2238
msgid ""
"Sets the preprocess time for the particles animation. This lets you delay "
"starting an animation until after the particles have begun emitting. "
"Equivalent to [member GPUParticles3D.preprocess]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2250
+#: doc/classes/RenderingServer.xml:2249
msgid ""
"Sets the material for processing the particles. Note: this is not the "
"material used to draw the materials. Equivalent to [member GPUParticles3D."
"process_material]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2261
+#: doc/classes/RenderingServer.xml:2260
msgid ""
"Sets the emission randomness ratio. This randomizes the emission of "
"particles within their phase. Equivalent to [member GPUParticles3D."
"randomness]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2272
+#: doc/classes/RenderingServer.xml:2271
msgid ""
"Sets the speed scale of the particle system. Equivalent to [member "
"GPUParticles3D.speed_scale]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2283
+#: doc/classes/RenderingServer.xml:2282
msgid ""
"If [code]true[/code], particles use local coordinates. If [code]false[/code] "
"they use global coordinates. Equivalent to [member GPUParticles3D."
"local_coords]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2290
+#: doc/classes/RenderingServer.xml:2289
msgid ""
"Creates a reflection probe and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42622,85 +43312,64 @@ msgid ""
"[method instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2303
+#: doc/classes/RenderingServer.xml:2332
msgid ""
"If [code]true[/code], reflections will ignore sky contribution. Equivalent "
-"to [member ReflectionProbe.interior_enable]."
+"to [member ReflectionProbe.interior]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2314
+#: doc/classes/RenderingServer.xml:2343
msgid ""
"Sets the render cull mask for this reflection probe. Only instances with a "
"matching cull mask will be rendered by this probe. Equivalent to [member "
"ReflectionProbe.cull_mask]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2325
+#: doc/classes/RenderingServer.xml:2354
msgid ""
"If [code]true[/code], uses box projection. This can make reflections look "
"more correct in certain situations. Equivalent to [member ReflectionProbe."
"box_projection]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2336
+#: doc/classes/RenderingServer.xml:2365
msgid ""
"If [code]true[/code], computes shadows in the reflection probe. This makes "
"the reflection much slower to compute. Equivalent to [member ReflectionProbe."
"enable_shadows]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2347
+#: doc/classes/RenderingServer.xml:2376
msgid ""
"Sets the size of the area that the reflection probe will capture. Equivalent "
"to [member ReflectionProbe.extents]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2358
+#: doc/classes/RenderingServer.xml:2387
msgid ""
"Sets the intensity of the reflection probe. Intensity modulates the strength "
"of the reflection. Equivalent to [member ReflectionProbe.intensity]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2369
-msgid ""
-"Sets the ambient light color for this reflection probe when set to interior "
-"mode. Equivalent to [member ReflectionProbe.interior_ambient_color]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2380
-msgid ""
-"Sets the energy multiplier for this reflection probes ambient light "
-"contribution when set to interior mode. Equivalent to [member "
-"ReflectionProbe.interior_ambient_energy]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2391
-msgid ""
-"Sets the contribution value for how much the reflection affects the ambient "
-"light for this reflection probe when set to interior mode. Useful so that "
-"ambient light matches the color of the room. Equivalent to [member "
-"ReflectionProbe.interior_ambient_contrib]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2402
+#: doc/classes/RenderingServer.xml:2398
msgid ""
"Sets the max distance away from the probe an object can be before it is "
"culled. Equivalent to [member ReflectionProbe.max_distance]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2413
+#: doc/classes/RenderingServer.xml:2409
msgid ""
"Sets the origin offset to be used when this reflection probe is in box "
"project mode. Equivalent to [member ReflectionProbe.origin_offset]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2424
+#: doc/classes/RenderingServer.xml:2420
msgid ""
"Sets how often the reflection probe updates. Can either be once or every "
"frame. See [enum ReflectionProbeUpdateMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2437
+#: doc/classes/RenderingServer.xml:2433
msgid ""
"Schedules a callback to the corresponding named [code]method[/code] on "
"[code]where[/code] after a frame has been drawn.\n"
@@ -42708,7 +43377,7 @@ msgid ""
"[code]userdata[/code]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2445
+#: doc/classes/RenderingServer.xml:2441
msgid ""
"Creates a scenario and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all "
@@ -42718,24 +43387,24 @@ msgid ""
"The scenario is the 3D world that all the visual instances exist in."
msgstr ""
-#: doc/classes/RenderingServer.xml:2458
+#: doc/classes/RenderingServer.xml:2454
msgid ""
"Sets the [enum ScenarioDebugMode] for this scenario. See [enum "
"ScenarioDebugMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2469
+#: doc/classes/RenderingServer.xml:2465
msgid "Sets the environment that will be used with this scenario."
msgstr ""
-#: doc/classes/RenderingServer.xml:2480
+#: doc/classes/RenderingServer.xml:2476
msgid ""
"Sets the fallback environment to be used by this scenario. The fallback "
"environment is used if no environment is set. Internally, this is used by "
"the editor to provide a default environment."
msgstr ""
-#: doc/classes/RenderingServer.xml:2495
+#: doc/classes/RenderingServer.xml:2491
msgid ""
"Sets a boot image. The color defines the background color. If [code]scale[/"
"code] is [code]true[/code], the image will be scaled to fit the screen size. "
@@ -42744,19 +43413,19 @@ msgid ""
"the image will be scaled with nearest-neighbor interpolation."
msgstr ""
-#: doc/classes/RenderingServer.xml:2504
+#: doc/classes/RenderingServer.xml:2500
msgid ""
"If [code]true[/code], the engine will generate wireframes for use with the "
"wireframe debug mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:2513
+#: doc/classes/RenderingServer.xml:2509
msgid ""
"Sets the default clear color which is used when a specific clear color has "
"not been selected."
msgstr ""
-#: doc/classes/RenderingServer.xml:2520
+#: doc/classes/RenderingServer.xml:2516
msgid ""
"Creates an empty shader and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42765,47 +43434,47 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2530
+#: doc/classes/RenderingServer.xml:2526
msgid "Returns a shader's code."
msgstr ""
-#: doc/classes/RenderingServer.xml:2541
+#: doc/classes/RenderingServer.xml:2537
msgid "Returns a default texture from a shader searched by name."
msgstr ""
-#: doc/classes/RenderingServer.xml:2560
+#: doc/classes/RenderingServer.xml:2556
msgid "Returns the parameters of a shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:2571
+#: doc/classes/RenderingServer.xml:2567
msgid "Sets a shader's code."
msgstr ""
-#: doc/classes/RenderingServer.xml:2584
+#: doc/classes/RenderingServer.xml:2580
msgid "Sets a shader's default texture. Overwrites the texture given by name."
msgstr ""
-#: doc/classes/RenderingServer.xml:2597
+#: doc/classes/RenderingServer.xml:2593
msgid "Allocates the GPU buffers for this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2608
+#: doc/classes/RenderingServer.xml:2604
msgid "Returns the [Transform] set for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2619
+#: doc/classes/RenderingServer.xml:2615
msgid "Returns the [Transform2D] set for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2632
+#: doc/classes/RenderingServer.xml:2628
msgid "Sets the [Transform] for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2645
+#: doc/classes/RenderingServer.xml:2641
msgid "Sets the [Transform2D] for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2652
+#: doc/classes/RenderingServer.xml:2648
msgid ""
"Creates a skeleton and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all "
@@ -42814,11 +43483,11 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2662
+#: doc/classes/RenderingServer.xml:2658
msgid "Returns the number of bones allocated for this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2669
+#: doc/classes/RenderingServer.xml:2665
msgid ""
"Creates an empty sky and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all [code]sky_*[/"
@@ -42827,13 +43496,13 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2681
+#: doc/classes/RenderingServer.xml:2677
msgid ""
"Sets the material that the sky uses to render the background and reflection "
"maps."
msgstr ""
-#: doc/classes/RenderingServer.xml:2688
+#: doc/classes/RenderingServer.xml:2684
msgid ""
"Creates a spot light and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID can be used in most [code]light_*[/"
@@ -42844,15 +43513,15 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2717
+#: doc/classes/RenderingServer.xml:2713
msgid "Sets a viewport's camera."
msgstr ""
-#: doc/classes/RenderingServer.xml:2728
+#: doc/classes/RenderingServer.xml:2724
msgid "Sets a viewport's canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:2741
+#: doc/classes/RenderingServer.xml:2737
msgid ""
"Copies the viewport to a region of the screen specified by [code]rect[/"
"code]. If [method viewport_set_render_direct_to_screen] is [code]true[/"
@@ -42874,7 +43543,7 @@ msgid ""
"viewport_set_render_direct_to_screen]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2755
+#: doc/classes/RenderingServer.xml:2751
msgid ""
"Creates an empty viewport and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42883,72 +43552,72 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2767
+#: doc/classes/RenderingServer.xml:2763
msgid ""
"Returns a viewport's render information. For options, see the [enum "
"ViewportRenderInfo] constants."
msgstr ""
-#: doc/classes/RenderingServer.xml:2776
+#: doc/classes/RenderingServer.xml:2772
msgid "Returns the viewport's last rendered frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:2787
+#: doc/classes/RenderingServer.xml:2783
msgid "Detaches a viewport from a canvas and vice versa."
msgstr ""
-#: doc/classes/RenderingServer.xml:2798
+#: doc/classes/RenderingServer.xml:2794
msgid "If [code]true[/code], sets the viewport active, else sets it inactive."
msgstr ""
-#: doc/classes/RenderingServer.xml:2813
+#: doc/classes/RenderingServer.xml:2809
msgid ""
"Sets the stacking order for a viewport's canvas.\n"
"[code]layer[/code] is the actual canvas layer, while [code]sublayer[/code] "
"specifies the stacking order of the canvas among those in the same layer."
msgstr ""
-#: doc/classes/RenderingServer.xml:2827
+#: doc/classes/RenderingServer.xml:2823
msgid "Sets the transformation of a viewport's canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:2838
+#: doc/classes/RenderingServer.xml:2834
msgid ""
"Sets the clear mode of a viewport. See [enum ViewportClearMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2849
+#: doc/classes/RenderingServer.xml:2845
msgid ""
"Sets the debug draw mode of a viewport. See [enum ViewportDebugDraw] for "
"options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2860
+#: doc/classes/RenderingServer.xml:2856
msgid ""
"If [code]true[/code], rendering of a viewport's environment is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:2871
+#: doc/classes/RenderingServer.xml:2867
msgid "Sets the viewport's global transformation matrix."
msgstr ""
-#: doc/classes/RenderingServer.xml:2882
+#: doc/classes/RenderingServer.xml:2878
msgid "If [code]true[/code], the viewport's canvas is not rendered."
msgstr ""
-#: doc/classes/RenderingServer.xml:2893
+#: doc/classes/RenderingServer.xml:2889
msgid "Currently unimplemented in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:2904
+#: doc/classes/RenderingServer.xml:2900
msgid "Sets the anti-aliasing mode. See [enum ViewportMSAA] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2915
+#: doc/classes/RenderingServer.xml:2911
msgid "Sets the viewport's parent to another viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:2926
+#: doc/classes/RenderingServer.xml:2922
msgid ""
"If [code]true[/code], render the contents of the viewport directly to "
"screen. This allows a low-level optimization where you can skip drawing a "
@@ -42964,455 +43633,455 @@ msgid ""
"significantly larger than the window size."
msgstr ""
-#: doc/classes/RenderingServer.xml:2937
+#: doc/classes/RenderingServer.xml:2933
msgid ""
"Sets a viewport's scenario.\n"
"The scenario contains information about the [enum ScenarioDebugMode], "
"environment information, reflection atlas etc."
msgstr ""
-#: doc/classes/RenderingServer.xml:2951
+#: doc/classes/RenderingServer.xml:2947
msgid "Sets the shadow atlas quadrant's subdivision."
msgstr ""
-#: doc/classes/RenderingServer.xml:2962
+#: doc/classes/RenderingServer.xml:2958
msgid ""
"Sets the size of the shadow atlas's images (used for omni and spot lights). "
"The value will be rounded up to the nearest power of 2."
msgstr ""
-#: doc/classes/RenderingServer.xml:2975
+#: doc/classes/RenderingServer.xml:2971
msgid "Sets the viewport's width and height."
msgstr ""
-#: doc/classes/RenderingServer.xml:2986
+#: doc/classes/RenderingServer.xml:2982
msgid ""
"If [code]true[/code], the viewport renders its background as transparent."
msgstr ""
-#: doc/classes/RenderingServer.xml:2997
+#: doc/classes/RenderingServer.xml:2993
msgid ""
"Sets when the viewport should be updated. See [enum ViewportUpdateMode] "
"constants for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:3008
+#: doc/classes/RenderingServer.xml:3004
msgid ""
"If [code]true[/code], the viewport uses augmented or virtual reality "
"technologies. See [XRInterface]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3014
+#: doc/classes/RenderingServer.xml:3010
msgid ""
"If [code]false[/code], disables rendering completely, but the engine logic "
"is still being processed. You can call [method force_draw] to draw a frame "
"even with rendering disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3020
+#: doc/classes/RenderingServer.xml:3016
msgid ""
"Emitted at the end of the frame, after the RenderingServer has finished "
"updating all the Viewports."
msgstr ""
-#: doc/classes/RenderingServer.xml:3025
+#: doc/classes/RenderingServer.xml:3021
msgid ""
"Emitted at the beginning of the frame, before the RenderingServer updates "
"all the Viewports."
msgstr ""
-#: doc/classes/RenderingServer.xml:3031
+#: doc/classes/RenderingServer.xml:3027
msgid "Marks an error that shows that the index array is empty."
msgstr ""
-#: doc/classes/RenderingServer.xml:3034
+#: doc/classes/RenderingServer.xml:3030
msgid "Number of weights/bones per vertex."
msgstr ""
-#: doc/classes/RenderingServer.xml:3037
+#: doc/classes/RenderingServer.xml:3033
msgid "The minimum Z-layer for canvas items."
msgstr ""
-#: doc/classes/RenderingServer.xml:3040
+#: doc/classes/RenderingServer.xml:3036
msgid "The maximum Z-layer for canvas items."
msgstr ""
-#: doc/classes/RenderingServer.xml:3043
+#: doc/classes/RenderingServer.xml:3039
msgid ""
"Max number of glow levels that can be used with glow post-process effect."
msgstr ""
-#: doc/classes/RenderingServer.xml:3046
+#: doc/classes/RenderingServer.xml:3042
msgid "Unused enum in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:3067
+#: doc/classes/RenderingServer.xml:3063
msgid "Shader is a 3D shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3070
+#: doc/classes/RenderingServer.xml:3066
msgid "Shader is a 2D shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3073
+#: doc/classes/RenderingServer.xml:3069
msgid "Shader is a particle shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3076
+#: doc/classes/RenderingServer.xml:3072
msgid "Shader is a sky shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3079
+#: doc/classes/RenderingServer.xml:3075
msgid "Represents the size of the [enum ShaderMode] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3082
+#: doc/classes/RenderingServer.xml:3078
msgid "The minimum renderpriority of all materials."
msgstr ""
-#: doc/classes/RenderingServer.xml:3085
+#: doc/classes/RenderingServer.xml:3081
msgid "The maximum renderpriority of all materials."
msgstr ""
-#: doc/classes/RenderingServer.xml:3088
+#: doc/classes/RenderingServer.xml:3084
msgid "Array is a vertex array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3091
+#: doc/classes/RenderingServer.xml:3087
msgid "Array is a normal array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3094
+#: doc/classes/RenderingServer.xml:3090
msgid "Array is a tangent array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3097
+#: doc/classes/RenderingServer.xml:3093
msgid "Array is a color array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3100
+#: doc/classes/RenderingServer.xml:3096
msgid "Array is an UV coordinates array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3103
+#: doc/classes/RenderingServer.xml:3099
msgid "Array is an UV coordinates array for the second UV coordinates."
msgstr ""
-#: doc/classes/RenderingServer.xml:3106
+#: doc/classes/RenderingServer.xml:3102
msgid "Array contains bone information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3109
+#: doc/classes/RenderingServer.xml:3105
msgid "Array is weight information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3112
+#: doc/classes/RenderingServer.xml:3108
msgid "Array is index array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3118
+#: doc/classes/RenderingServer.xml:3114
msgid "Flag used to mark a vertex array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3121
+#: doc/classes/RenderingServer.xml:3117
msgid "Flag used to mark a normal array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3124
+#: doc/classes/RenderingServer.xml:3120
msgid "Flag used to mark a tangent array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3127
+#: doc/classes/RenderingServer.xml:3123
msgid "Flag used to mark a color array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3130
+#: doc/classes/RenderingServer.xml:3126
msgid "Flag used to mark an UV coordinates array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3133
+#: doc/classes/RenderingServer.xml:3129
msgid ""
"Flag used to mark an UV coordinates array for the second UV coordinates."
msgstr ""
-#: doc/classes/RenderingServer.xml:3136
+#: doc/classes/RenderingServer.xml:3132
msgid "Flag used to mark a bone information array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3139
+#: doc/classes/RenderingServer.xml:3135
msgid "Flag used to mark a weights array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3142
+#: doc/classes/RenderingServer.xml:3138
msgid "Flag used to mark an index array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3171
+#: doc/classes/RenderingServer.xml:3167
msgid "Primitive to draw consists of points."
msgstr ""
-#: doc/classes/RenderingServer.xml:3174
+#: doc/classes/RenderingServer.xml:3170
msgid "Primitive to draw consists of lines."
msgstr ""
-#: doc/classes/RenderingServer.xml:3177
+#: doc/classes/RenderingServer.xml:3173
msgid "Primitive to draw consists of a line strip from start to end."
msgstr ""
-#: doc/classes/RenderingServer.xml:3180
+#: doc/classes/RenderingServer.xml:3176
msgid "Primitive to draw consists of triangles."
msgstr ""
-#: doc/classes/RenderingServer.xml:3183
+#: doc/classes/RenderingServer.xml:3179
msgid ""
"Primitive to draw consists of a triangle strip (the last 3 vertices are "
"always combined to make a triangle)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3186
+#: doc/classes/RenderingServer.xml:3182
msgid "Represents the size of the [enum PrimitiveType] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3195
+#: doc/classes/RenderingServer.xml:3191
msgid "Use [Transform2D] to store MultiMesh transform."
msgstr ""
-#: doc/classes/RenderingServer.xml:3198
+#: doc/classes/RenderingServer.xml:3194
msgid "Use [Transform] to store MultiMesh transform."
msgstr ""
-#: doc/classes/RenderingServer.xml:3201
+#: doc/classes/RenderingServer.xml:3197
msgid "Is a directional (sun) light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3204
+#: doc/classes/RenderingServer.xml:3200
msgid "Is an omni light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3207
+#: doc/classes/RenderingServer.xml:3203
msgid "Is a spot light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3210
+#: doc/classes/RenderingServer.xml:3206
msgid "The light's energy."
msgstr ""
-#: doc/classes/RenderingServer.xml:3215
+#: doc/classes/RenderingServer.xml:3211
msgid "The light's influence on specularity."
msgstr ""
-#: doc/classes/RenderingServer.xml:3218
+#: doc/classes/RenderingServer.xml:3214
msgid "The light's range."
msgstr ""
-#: doc/classes/RenderingServer.xml:3221
+#: doc/classes/RenderingServer.xml:3217
msgid ""
"The size of the light when using spot light or omni light. The angular size "
"of the light when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3224
+#: doc/classes/RenderingServer.xml:3220
msgid "The light's attenuation."
msgstr ""
-#: doc/classes/RenderingServer.xml:3227
+#: doc/classes/RenderingServer.xml:3223
msgid "The spotlight's angle."
msgstr ""
-#: doc/classes/RenderingServer.xml:3230
+#: doc/classes/RenderingServer.xml:3226
msgid "The spotlight's attenuation."
msgstr ""
-#: doc/classes/RenderingServer.xml:3233
+#: doc/classes/RenderingServer.xml:3229
msgid "Max distance that shadows will be rendered."
msgstr ""
-#: doc/classes/RenderingServer.xml:3236
+#: doc/classes/RenderingServer.xml:3232
msgid "Proportion of shadow atlas occupied by the first split."
msgstr ""
-#: doc/classes/RenderingServer.xml:3239
+#: doc/classes/RenderingServer.xml:3235
msgid "Proportion of shadow atlas occupied by the second split."
msgstr ""
-#: doc/classes/RenderingServer.xml:3242
+#: doc/classes/RenderingServer.xml:3238
msgid ""
"Proportion of shadow atlas occupied by the third split. The fourth split "
"occupies the rest."
msgstr ""
-#: doc/classes/RenderingServer.xml:3245
+#: doc/classes/RenderingServer.xml:3241
msgid ""
"Proportion of shadow max distance where the shadow will start to fade out."
msgstr ""
-#: doc/classes/RenderingServer.xml:3248
+#: doc/classes/RenderingServer.xml:3244
msgid ""
"Normal bias used to offset shadow lookup by object normal. Can be used to "
"fix self-shadowing artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3251
+#: doc/classes/RenderingServer.xml:3247
msgid "Bias the shadow lookup to fix self-shadowing artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3257
+#: doc/classes/RenderingServer.xml:3253
msgid ""
"Blurs the edges of the shadow. Can be used to hide pixel artifacts in low "
"resolution shadow maps. A high value can make shadows appear grainy and can "
"cause other unwanted artifacts. Try to keep as near default as possible."
msgstr ""
-#: doc/classes/RenderingServer.xml:3262
+#: doc/classes/RenderingServer.xml:3258
msgid "Represents the size of the [enum LightParam] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3265
+#: doc/classes/RenderingServer.xml:3267
msgid "Use a dual paraboloid shadow map for omni lights."
msgstr ""
-#: doc/classes/RenderingServer.xml:3268
+#: doc/classes/RenderingServer.xml:3270
msgid ""
"Use a cubemap shadow map for omni lights. Slower but better quality than "
"dual paraboloid."
msgstr ""
-#: doc/classes/RenderingServer.xml:3271
+#: doc/classes/RenderingServer.xml:3273
msgid "Use orthogonal shadow projection for directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3274
+#: doc/classes/RenderingServer.xml:3276
msgid "Use 2 splits for shadow projection when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3277
+#: doc/classes/RenderingServer.xml:3279
msgid "Use 4 splits for shadow projection when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3280
+#: doc/classes/RenderingServer.xml:3282
msgid ""
"Keeps shadows stable as camera moves but has lower effective resolution."
msgstr ""
-#: doc/classes/RenderingServer.xml:3283
+#: doc/classes/RenderingServer.xml:3285
msgid ""
"Optimize use of shadow maps, increasing the effective resolution. But may "
"result in shadows moving or flickering slightly."
msgstr ""
-#: doc/classes/RenderingServer.xml:3286
+#: doc/classes/RenderingServer.xml:3288
msgid "Reflection probe will update reflections once and then stop."
msgstr ""
-#: doc/classes/RenderingServer.xml:3289
+#: doc/classes/RenderingServer.xml:3291
msgid ""
"Reflection probe will update each frame. This mode is necessary to capture "
"moving objects."
msgstr ""
-#: doc/classes/RenderingServer.xml:3302
+#: doc/classes/RenderingServer.xml:3310
msgid "Draw particles in the order that they appear in the particles array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3305
+#: doc/classes/RenderingServer.xml:3313
msgid "Sort particles based on their lifetime."
msgstr ""
-#: doc/classes/RenderingServer.xml:3308
+#: doc/classes/RenderingServer.xml:3316
msgid "Sort particles based on their distance to the camera."
msgstr ""
-#: doc/classes/RenderingServer.xml:3311
+#: doc/classes/RenderingServer.xml:3319
msgid "Do not update the viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:3314
+#: doc/classes/RenderingServer.xml:3322
msgid "Update the viewport once then set to disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3317
+#: doc/classes/RenderingServer.xml:3325
msgid "Update the viewport whenever it is visible."
msgstr ""
-#: doc/classes/RenderingServer.xml:3322
+#: doc/classes/RenderingServer.xml:3330
msgid "Always update the viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:3325
+#: doc/classes/RenderingServer.xml:3333
msgid "The viewport is always cleared before drawing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3328
+#: doc/classes/RenderingServer.xml:3336
msgid "The viewport is never cleared before drawing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3331
+#: doc/classes/RenderingServer.xml:3339
msgid ""
"The viewport is cleared once, then the clear mode is set to [constant "
"VIEWPORT_CLEAR_NEVER]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3334
+#: doc/classes/RenderingServer.xml:3342
msgid "Multisample antialiasing is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3337
+#: doc/classes/RenderingServer.xml:3345
msgid "Multisample antialiasing uses 2 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3340
+#: doc/classes/RenderingServer.xml:3348
msgid "Multisample antialiasing uses 4 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3343
+#: doc/classes/RenderingServer.xml:3351
msgid "Multisample antialiasing uses 8 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3346
+#: doc/classes/RenderingServer.xml:3354
msgid "Multisample antialiasing uses 16 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3357
+#: doc/classes/RenderingServer.xml:3365
msgid "Number of objects drawn in a single frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3360
+#: doc/classes/RenderingServer.xml:3368
msgid "Number of vertices drawn in a single frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3363
+#: doc/classes/RenderingServer.xml:3371
msgid "Number of material changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3366
+#: doc/classes/RenderingServer.xml:3374
msgid "Number of shader changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3369
+#: doc/classes/RenderingServer.xml:3377
msgid "Number of surface changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3372
+#: doc/classes/RenderingServer.xml:3380
msgid "Number of draw calls during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3375
+#: doc/classes/RenderingServer.xml:3383
msgid "Represents the size of the [enum ViewportRenderInfo] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3378
+#: doc/classes/RenderingServer.xml:3386
msgid "Debug draw is disabled. Default setting."
msgstr ""
-#: doc/classes/RenderingServer.xml:3381 doc/classes/Viewport.xml:348
+#: doc/classes/RenderingServer.xml:3389 doc/classes/Viewport.xml:348
msgid "Objects are displayed without light information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3384
+#: doc/classes/RenderingServer.xml:3392
msgid "Objects are displayed with only light information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3387 doc/classes/Viewport.xml:353
+#: doc/classes/RenderingServer.xml:3395 doc/classes/Viewport.xml:353
msgid ""
"Objects are displayed semi-transparent with additive blending so you can see "
"where they are drawing over top of one another. A higher overdraw means you "
@@ -43420,41 +44089,41 @@ msgid ""
"others."
msgstr ""
-#: doc/classes/RenderingServer.xml:3390
+#: doc/classes/RenderingServer.xml:3398
msgid "Debug draw draws objects in wireframe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3393
+#: doc/classes/RenderingServer.xml:3401
msgid ""
"Normal buffer is drawn instead of regular scene so you can see the per-pixel "
"normals that will be used by post-processing effects."
msgstr ""
-#: doc/classes/RenderingServer.xml:3396 doc/classes/Viewport.xml:361
+#: doc/classes/RenderingServer.xml:3404 doc/classes/Viewport.xml:361
msgid "Objects are displayed with only the albedo value from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3399 doc/classes/Viewport.xml:364
+#: doc/classes/RenderingServer.xml:3407 doc/classes/Viewport.xml:364
msgid "Objects are displayed with only the lighting value from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3402 doc/classes/Viewport.xml:367
+#: doc/classes/RenderingServer.xml:3410 doc/classes/Viewport.xml:367
msgid "Objects are displayed with only the emission color from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3405 doc/classes/Viewport.xml:370
+#: doc/classes/RenderingServer.xml:3413 doc/classes/Viewport.xml:370
msgid ""
"Draws the shadow atlas that stores shadows from [OmniLight3D]s and "
"[SpotLight3D]s in the upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3408 doc/classes/Viewport.xml:373
+#: doc/classes/RenderingServer.xml:3416 doc/classes/Viewport.xml:373
msgid ""
"Draws the shadow atlas that stores shadows from [DirectionalLight3D]s in the "
"upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3413
+#: doc/classes/RenderingServer.xml:3421
msgid ""
"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 "
@@ -43462,21 +44131,14 @@ msgid ""
"your [WorldEnvironment]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3416 doc/classes/Viewport.xml:381
-msgid ""
-"Draws the roughness limiter post process over the Viewport so you can see "
-"where it has an effect. It must be enabled in [member ProjectSettings."
-"rendering/quality/screen_filters/screen_space_roughness_limiter] to work."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:3419
+#: doc/classes/RenderingServer.xml:3424
msgid ""
"Colors each PSSM split for the [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."
msgstr ""
-#: doc/classes/RenderingServer.xml:3424
+#: doc/classes/RenderingServer.xml:3435
msgid ""
"Uses high quality importance sampling to process the radiance map. In "
"general, this results in much higher quality than [constant Sky."
@@ -43487,7 +44149,7 @@ msgid ""
"ggx_samples]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3427
+#: doc/classes/RenderingServer.xml:3438
msgid ""
"Uses the fast filtering algorithm to process the radiance map. In general "
"this results in lower quality, but substantially faster run times.\n"
@@ -43495,347 +44157,347 @@ msgid ""
"[member Sky.radiance_size] must be set to [constant Sky.RADIANCE_SIZE_256]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3431
+#: doc/classes/RenderingServer.xml:3442
msgid "Use the clear color as background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3434
+#: doc/classes/RenderingServer.xml:3445
msgid "Use a specified color as the background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3437
+#: doc/classes/RenderingServer.xml:3448
msgid "Use a sky resource for the background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3440
+#: doc/classes/RenderingServer.xml:3451
msgid ""
"Use a specified canvas layer as the background. This can be useful for "
"instantiating a 2D scene in a 3D world."
msgstr ""
-#: doc/classes/RenderingServer.xml:3443
+#: doc/classes/RenderingServer.xml:3454
msgid ""
"Do not clear the background, use whatever was rendered last frame as the "
"background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3449
+#: doc/classes/RenderingServer.xml:3460
msgid "Represents the size of the [enum EnvironmentBG] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3488
+#: doc/classes/RenderingServer.xml:3499
msgid "Output color as they came in."
msgstr ""
-#: doc/classes/RenderingServer.xml:3491
+#: doc/classes/RenderingServer.xml:3502
msgid "Use the Reinhard tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3494
+#: doc/classes/RenderingServer.xml:3505
msgid "Use the filmic tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3497
+#: doc/classes/RenderingServer.xml:3508
msgid "Use the ACES tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3508
+#: doc/classes/RenderingServer.xml:3519
msgid "Disables the blur set for SSAO. Will make SSAO look noisier."
msgstr ""
-#: doc/classes/RenderingServer.xml:3511
+#: doc/classes/RenderingServer.xml:3522
msgid "Perform a 1x1 blur on the SSAO output."
msgstr ""
-#: doc/classes/RenderingServer.xml:3514
+#: doc/classes/RenderingServer.xml:3525
msgid "Performs a 2x2 blur on the SSAO output."
msgstr ""
-#: doc/classes/RenderingServer.xml:3517
+#: doc/classes/RenderingServer.xml:3528
msgid "Performs a 3x3 blur on the SSAO output. Use this for smoothest SSAO."
msgstr ""
-#: doc/classes/RenderingServer.xml:3520
+#: doc/classes/RenderingServer.xml:3531
msgid "Lowest quality of screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3523
+#: doc/classes/RenderingServer.xml:3534
msgid "Medium quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3526
+#: doc/classes/RenderingServer.xml:3537
msgid "High quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3529
+#: doc/classes/RenderingServer.xml:3540
msgid "Highest quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3540
+#: doc/classes/RenderingServer.xml:3551
msgid ""
"Lowest quality DOF blur. This is the fastest setting, but you may be able to "
"see filtering artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3543
+#: doc/classes/RenderingServer.xml:3554
msgid "Low quality DOF blur."
msgstr ""
-#: doc/classes/RenderingServer.xml:3546
+#: doc/classes/RenderingServer.xml:3557
msgid "Medium quality DOF blur."
msgstr ""
-#: doc/classes/RenderingServer.xml:3549
+#: doc/classes/RenderingServer.xml:3560
msgid ""
"Highest quality DOF blur. Results in the smoothest looking blur by taking "
"the most samples, but is also significantly slower."
msgstr ""
-#: doc/classes/RenderingServer.xml:3552
+#: doc/classes/RenderingServer.xml:3563
msgid ""
"Calculate the DOF blur using a box filter. The fastest option, but results "
"in obvious lines in blur pattern."
msgstr ""
-#: doc/classes/RenderingServer.xml:3555
+#: doc/classes/RenderingServer.xml:3566
msgid "Calculates DOF blur using a hexagon shaped filter."
msgstr ""
-#: doc/classes/RenderingServer.xml:3558
+#: doc/classes/RenderingServer.xml:3569
msgid ""
"Calculates DOF blur using a circle shaped filter. Best quality and most "
"realistic, but slowest. Use only for areas where a lot of performance can be "
"dedicated to post-processing (e.g. cutscenes)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3573
+#: doc/classes/RenderingServer.xml:3584
msgid "Do not use a debug mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:3576
+#: doc/classes/RenderingServer.xml:3587
msgid "Draw all objects as wireframe models."
msgstr ""
-#: doc/classes/RenderingServer.xml:3579
+#: doc/classes/RenderingServer.xml:3590
msgid ""
"Draw all objects in a way that displays how much overdraw is occurring. "
"Overdraw occurs when a section of pixels is drawn and shaded and then "
"another object covers it up. To optimize a scene, you should reduce overdraw."
msgstr ""
-#: doc/classes/RenderingServer.xml:3582
+#: doc/classes/RenderingServer.xml:3593
msgid ""
"Draw all objects without shading. Equivalent to setting all objects shaders "
"to [code]unshaded[/code]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3585
+#: doc/classes/RenderingServer.xml:3596
msgid "The instance does not have a type."
msgstr ""
-#: doc/classes/RenderingServer.xml:3588
+#: doc/classes/RenderingServer.xml:3599
msgid "The instance is a mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:3591
+#: doc/classes/RenderingServer.xml:3602
msgid "The instance is a multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:3594
+#: doc/classes/RenderingServer.xml:3605
msgid "The instance is an immediate geometry."
msgstr ""
-#: doc/classes/RenderingServer.xml:3597
+#: doc/classes/RenderingServer.xml:3608
msgid "The instance is a particle emitter."
msgstr ""
-#: doc/classes/RenderingServer.xml:3600
+#: doc/classes/RenderingServer.xml:3611
msgid "The instance is a light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3603
+#: doc/classes/RenderingServer.xml:3614
msgid "The instance is a reflection probe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3606
+#: doc/classes/RenderingServer.xml:3617
msgid "The instance is a decal."
msgstr ""
-#: doc/classes/RenderingServer.xml:3609
+#: doc/classes/RenderingServer.xml:3620
msgid "The instance is a GI probe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3612
+#: doc/classes/RenderingServer.xml:3623
msgid "The instance is a lightmap."
msgstr ""
-#: doc/classes/RenderingServer.xml:3615
+#: doc/classes/RenderingServer.xml:3626
msgid "Represents the size of the [enum InstanceType] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3618
+#: doc/classes/RenderingServer.xml:3629
msgid ""
"A combination of the flags of geometry instances (mesh, multimesh, immediate "
"and particles)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3621
+#: doc/classes/RenderingServer.xml:3632
msgid "Allows the instance to be used in baked lighting."
msgstr ""
-#: doc/classes/RenderingServer.xml:3624
+#: doc/classes/RenderingServer.xml:3635
msgid "Allows the instance to be used with dynamic global illumination."
msgstr ""
-#: doc/classes/RenderingServer.xml:3627
+#: doc/classes/RenderingServer.xml:3638
msgid "When set, manually requests to draw geometry on next frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3630
+#: doc/classes/RenderingServer.xml:3641
msgid "Represents the size of the [enum InstanceFlags] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3633
+#: doc/classes/RenderingServer.xml:3644
msgid "Disable shadows from this instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:3636
+#: doc/classes/RenderingServer.xml:3647
msgid "Cast shadows from this instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:3639
+#: doc/classes/RenderingServer.xml:3650
msgid ""
"Disable backface culling when rendering the shadow of the object. This is "
"slightly slower but may result in more correct shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3642
+#: doc/classes/RenderingServer.xml:3653
msgid ""
"Only render the shadows from the object. The object itself will not be drawn."
msgstr ""
-#: doc/classes/RenderingServer.xml:3645
+#: doc/classes/RenderingServer.xml:3656
msgid "The nine patch gets stretched where needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3648
+#: doc/classes/RenderingServer.xml:3659
msgid "The nine patch gets filled with tiles where needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3651
+#: doc/classes/RenderingServer.xml:3662
msgid ""
"The nine patch gets filled with tiles where needed and stretches them a bit "
"if needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3654
+#: doc/classes/RenderingServer.xml:3665
msgid "Uses the default filter mode for this [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3666 doc/classes/Viewport.xml:399
+#: doc/classes/RenderingServer.xml:3677 doc/classes/Viewport.xml:402
msgid ""
"The texture filter blends between the nearest 4 pixels and between the "
"nearest 2 mipmaps."
msgstr ""
-#: doc/classes/RenderingServer.xml:3675
+#: doc/classes/RenderingServer.xml:3686
msgid "Max value for [enum CanvasItemTextureFilter] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3678
+#: doc/classes/RenderingServer.xml:3689
msgid "Uses the default repeat mode for this [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3681 doc/classes/Viewport.xml:405
+#: doc/classes/RenderingServer.xml:3692 doc/classes/Viewport.xml:408
msgid ""
"Disables textures repeating. Instead, when reading UVs outside the 0-1 "
"range, the value will be clamped to the edge of the texture, resulting in a "
"stretched out look at the borders of the texture."
msgstr ""
-#: doc/classes/RenderingServer.xml:3687 doc/classes/Viewport.xml:411
+#: doc/classes/RenderingServer.xml:3698 doc/classes/Viewport.xml:414
msgid ""
"Flip the texture when repeating so that the edge lines up instead of "
"abruptly changing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3690
+#: doc/classes/RenderingServer.xml:3701
msgid "Max value for [enum CanvasItemTextureRepeat] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3693
+#: doc/classes/RenderingServer.xml:3704
msgid "Adds light color additive to the canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:3696
+#: doc/classes/RenderingServer.xml:3707
msgid "Adds light color subtractive to the canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:3699
+#: doc/classes/RenderingServer.xml:3710
msgid "The light adds color depending on transparency."
msgstr ""
-#: doc/classes/RenderingServer.xml:3702
+#: doc/classes/RenderingServer.xml:3713
msgid "The light adds color depending on mask."
msgstr ""
-#: doc/classes/RenderingServer.xml:3705
+#: doc/classes/RenderingServer.xml:3716
msgid "Do not apply a filter to canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3708
+#: doc/classes/RenderingServer.xml:3719
msgid "Use PCF5 filtering to filter canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3711
+#: doc/classes/RenderingServer.xml:3722
msgid "Use PCF13 filtering to filter canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3714
+#: doc/classes/RenderingServer.xml:3725
msgid "Max value of the [enum CanvasLightShadowFilter] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3717
+#: doc/classes/RenderingServer.xml:3728
msgid "Culling of the canvas occluder is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3720
+#: doc/classes/RenderingServer.xml:3731
msgid "Culling of the canvas occluder is clockwise."
msgstr ""
-#: doc/classes/RenderingServer.xml:3723
+#: doc/classes/RenderingServer.xml:3734
msgid "Culling of the canvas occluder is counterclockwise."
msgstr ""
-#: doc/classes/RenderingServer.xml:3784
+#: doc/classes/RenderingServer.xml:3795
msgid "The amount of objects in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3787
+#: doc/classes/RenderingServer.xml:3798
msgid "The amount of vertices in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3790
+#: doc/classes/RenderingServer.xml:3801
msgid "The amount of modified materials in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3793
+#: doc/classes/RenderingServer.xml:3804
msgid "The amount of shader rebinds in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3796
+#: doc/classes/RenderingServer.xml:3807
msgid "The amount of surface changes in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3799
+#: doc/classes/RenderingServer.xml:3810
msgid "The amount of draw calls in frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3814
+#: doc/classes/RenderingServer.xml:3825
msgid "Hardware supports shaders. This enum is currently unused in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:3817
+#: doc/classes/RenderingServer.xml:3828
msgid ""
"Hardware supports multithreading. This enum is currently unused in Godot 3.x."
msgstr ""
@@ -43847,13 +44509,13 @@ msgstr ""
#: doc/classes/Resource.xml:7
msgid ""
"Resource is the base class for all Godot-specific resource types, serving "
-"primarily as data containers. They are reference counted and freed when no "
-"longer in use. They are also cached once loaded from disk, so that any "
-"further attempts to load a resource from a given path will return the same "
-"reference (all this in contrast to a [Node], which is not reference counted "
-"and can be instanced from disk as many times as desired). Resources can be "
-"saved externally on disk or bundled into another object, such as a [Node] or "
-"another resource."
+"primarily as data containers. Unlike [Object]s, they are reference-counted "
+"and freed when no longer in use. They are also cached once loaded from disk, "
+"so that any further attempts to load a resource from a given path will "
+"return the same reference (all this in contrast to a [Node], which is not "
+"reference-counted and can be instanced from disk as many times as desired). "
+"Resources can be saved externally on disk or bundled into another object, "
+"such as a [Node] or another resource."
msgstr ""
#: doc/classes/Resource.xml:10
@@ -43862,34 +44524,38 @@ msgid ""
"resources.html"
msgstr ""
-#: doc/classes/Resource.xml:17
+#: doc/classes/Resource.xml:18
msgid ""
"Virtual function which can be overridden to customize the behavior value of "
"[method setup_local_to_scene]."
msgstr ""
-#: doc/classes/Resource.xml:26
+#: doc/classes/Resource.xml:27
msgid ""
"Duplicates the resource, returning a new resource. By default, sub-resources "
-"are shared between resource copies for efficiency, this can be changed by "
-"passing [code]true[/code] to the [code]subresources[/code] argument."
+"are shared between resource copies for efficiency. This can be changed by "
+"passing [code]true[/code] to the [code]subresources[/code] argument which "
+"will copy the subresources.\n"
+"[b]Note:[/b] If [code]subresources[/code] is [code]true[/code], this method "
+"will only perform a shallow copy. Nested resources within subresources will "
+"not be duplicated and will still be shared."
msgstr ""
-#: doc/classes/Resource.xml:33
+#: doc/classes/Resource.xml:35
msgid ""
"If [member resource_local_to_scene] is enabled and the resource was loaded "
"from a [PackedScene] instantiation, returns the local scene where this "
"resource's unique copy is in use. Otherwise, returns [code]null[/code]."
msgstr ""
-#: doc/classes/Resource.xml:40
+#: doc/classes/Resource.xml:42
msgid ""
"Returns the RID of the resource (or an empty RID). Many resources (such as "
"[Texture2D], [Mesh], etc) are high-level abstractions of resources stored in "
"a server, so this function will return the original RID."
msgstr ""
-#: doc/classes/Resource.xml:47
+#: doc/classes/Resource.xml:49
msgid ""
"This method is called when a resource with [member resource_local_to_scene] "
"enabled is loaded from a [PackedScene] instantiation. Its behavior can be "
@@ -43899,7 +44565,7 @@ msgid ""
"local viewport."
msgstr ""
-#: doc/classes/Resource.xml:57
+#: doc/classes/Resource.xml:59
msgid ""
"Sets the path of the resource, potentially overriding an existing cache "
"entry for this path. This differs from setting [member resource_path], as "
@@ -43907,25 +44573,25 @@ msgid ""
"given path."
msgstr ""
-#: doc/classes/Resource.xml:63
+#: doc/classes/Resource.xml:65
msgid ""
"If [code]true[/code], the resource will be made unique in each instance of "
"its local scene. It can thus be modified in a scene instance without "
"impacting other instances of that same scene."
msgstr ""
-#: doc/classes/Resource.xml:66
+#: doc/classes/Resource.xml:68
msgid "The name of the resource. This is an optional identifier."
msgstr ""
-#: doc/classes/Resource.xml:69
+#: doc/classes/Resource.xml:71
msgid ""
"The path to the resource. In case it has its own file, it will return its "
"filepath. If it's tied to the scene, it will return the scene's path, "
"followed by the resource's index."
msgstr ""
-#: doc/classes/Resource.xml:75
+#: doc/classes/Resource.xml:77
msgid "Emitted whenever the resource changes."
msgstr ""
@@ -44744,11 +45410,11 @@ msgid ""
"global coordinate system, but is centered at the object's origin."
msgstr ""
-#: doc/classes/RigidBody2D.xml:87
+#: doc/classes/RigidBody2D.xml:87 doc/classes/RigidBody3D.xml:99
msgid ""
-"Returns a list of the bodies colliding with this one. Use [member "
-"contacts_reported] to set the maximum number reported. You must also set "
-"[member contact_monitor] to [code]true[/code].\n"
+"Returns a list of the bodies colliding with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
"For performance, list of collisions is updated once per frame and before the "
"physics step. Consider using signals instead."
@@ -44785,7 +45451,7 @@ msgstr ""
msgid "The body's total applied torque."
msgstr ""
-#: doc/classes/RigidBody2D.xml:130 doc/classes/RigidBody3D.xml:150
+#: doc/classes/RigidBody2D.xml:130 doc/classes/RigidBody3D.xml:157
msgid ""
"If [code]true[/code], the body can enter sleep mode when there is no "
"movement. See [member sleeping]."
@@ -44797,11 +45463,17 @@ msgid ""
"another RigidBody2D. See also [member contacts_reported]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:136
-msgid "The maximum number of contacts to report."
+#: doc/classes/RigidBody2D.xml:136 doc/classes/RigidBody3D.xml:163
+msgid ""
+"The maximum number of contacts that will be recorded. Requires [member "
+"contact_monitor] to be set to [code]true[/code].\n"
+"[b]Note:[/b] The number of contacts is different from the number of "
+"collisions. Collisions between parallel edges will result in two contacts "
+"(one at each end), and collisions between parallel faces will result in four "
+"contacts (one at each corner)."
msgstr ""
-#: doc/classes/RigidBody2D.xml:139
+#: doc/classes/RigidBody2D.xml:140
msgid ""
"Continuous collision detection mode.\n"
"Continuous collision detection tries to predict where a moving body will "
@@ -44811,21 +45483,21 @@ msgid ""
"methods are available. See [enum CCDMode] for details."
msgstr ""
-#: doc/classes/RigidBody2D.xml:143
+#: doc/classes/RigidBody2D.xml:144
msgid ""
"If [code]true[/code], internal force integration is disabled for this body. "
"Aside from collision response, the body will only move as determined by the "
"[method _integrate_forces] function."
msgstr ""
-#: doc/classes/RigidBody2D.xml:146
+#: doc/classes/RigidBody2D.xml:147
msgid ""
"Multiplies the gravity applied to the body. The body's gravity is calculated "
"from the [b]Default Gravity[/b] value in [b]Project > Project Settings > "
"Physics > 2d[/b] and/or any additional gravity vector applied by [Area2D]s."
msgstr ""
-#: doc/classes/RigidBody2D.xml:149
+#: doc/classes/RigidBody2D.xml:150
msgid ""
"The body's moment of inertia. This is like mass, but for rotation: it "
"determines how much torque it takes to rotate the body. The moment of "
@@ -44834,18 +45506,18 @@ msgid ""
"automatically computing it."
msgstr ""
-#: doc/classes/RigidBody2D.xml:152
+#: doc/classes/RigidBody2D.xml:153
msgid ""
"Damps the body's [member linear_velocity]. If [code]-1[/code], the body will "
"use the [b]Default Linear Damp[/b] in [b]Project > Project Settings > "
"Physics > 2d[/b]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:161
+#: doc/classes/RigidBody2D.xml:162
msgid "The body's mode. See [enum Mode] for possible values."
msgstr ""
-#: doc/classes/RigidBody2D.xml:164 doc/classes/RigidBody3D.xml:181
+#: doc/classes/RigidBody2D.xml:165 doc/classes/RigidBody3D.xml:189
#: doc/classes/StaticBody2D.xml:22 doc/classes/StaticBody3D.xml:22
msgid ""
"The physics material override for the body.\n"
@@ -44853,50 +45525,50 @@ msgid ""
"other physics material, such as an inherited one."
msgstr ""
-#: doc/classes/RigidBody2D.xml:168 doc/classes/RigidBody3D.xml:185
+#: doc/classes/RigidBody2D.xml:169 doc/classes/RigidBody3D.xml:193
msgid ""
"If [code]true[/code], the body will not move and will not calculate forces "
"until woken up by another body through, for example, a collision, or by "
"using the [method apply_impulse] or [method add_force] methods."
msgstr ""
-#: doc/classes/RigidBody2D.xml:171
+#: doc/classes/RigidBody2D.xml:172
msgid ""
"The body's weight based on its mass and the [b]Default Gravity[/b] value in "
"[b]Project > Project Settings > Physics > 2d[/b]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:179
+#: doc/classes/RigidBody2D.xml:180 doc/classes/RigidBody3D.xml:204
msgid ""
-"Emitted when a body enters into contact with this one. [member "
-"contact_monitor] must be [code]true[/code] and [member contacts_reported] "
-"greater than [code]0[/code]."
+"Emitted when a body enters into contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:186
+#: doc/classes/RigidBody2D.xml:187
msgid ""
-"Emitted when a body exits contact with this one. [member contact_monitor] "
-"must be [code]true[/code] and [member contacts_reported] greater than "
-"[code]0[/code]."
+"Emitted when a body exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:199
+#: doc/classes/RigidBody2D.xml:200
msgid ""
"Emitted when a body enters into contact with this one. Reports colliding "
"shape information. See [CollisionObject2D] for shape index information. "
-"[member contact_monitor] must be [code]true[/code] and [member "
-"contacts_reported] greater than [code]0[/code]."
+"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:212
+#: doc/classes/RigidBody2D.xml:213
msgid ""
"Emitted when a body shape exits contact with this one. Reports colliding "
"shape information. See [CollisionObject2D] for shape index information. "
-"[member contact_monitor] must be [code]true[/code] and [member "
-"contacts_reported] greater than [code]0[/code]."
+"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:217 doc/classes/RigidBody3D.xml:236
+#: doc/classes/RigidBody2D.xml:218 doc/classes/RigidBody3D.xml:244
msgid ""
"Emitted when the physics engine changes the body's sleeping state.\n"
"[b]Note:[/b] Changing the value [member sleeping] will not trigger this "
@@ -44904,41 +45576,41 @@ msgid ""
"engine or [code]emit_signal(\"sleeping_state_changed\")[/code] is used."
msgstr ""
-#: doc/classes/RigidBody2D.xml:224
+#: doc/classes/RigidBody2D.xml:225
msgid ""
"Rigid mode. The body behaves as a physical object. It collides with other "
"bodies and responds to forces applied to it. This is the default mode."
msgstr ""
-#: doc/classes/RigidBody2D.xml:227
+#: doc/classes/RigidBody2D.xml:228
msgid "Static mode. The body behaves like a [StaticBody2D] and does not move."
msgstr ""
-#: doc/classes/RigidBody2D.xml:230
+#: doc/classes/RigidBody2D.xml:231
msgid ""
"Character mode. Similar to [constant MODE_RIGID], but the body can not "
"rotate."
msgstr ""
-#: doc/classes/RigidBody2D.xml:233
+#: doc/classes/RigidBody2D.xml:234
msgid ""
"Kinematic mode. The body behaves like a [KinematicBody2D], and must be moved "
"by code."
msgstr ""
-#: doc/classes/RigidBody2D.xml:236
+#: doc/classes/RigidBody2D.xml:237
msgid ""
"Continuous collision detection disabled. This is the fastest way to detect "
"body collisions, but can miss small, fast-moving objects."
msgstr ""
-#: doc/classes/RigidBody2D.xml:239
+#: doc/classes/RigidBody2D.xml:240
msgid ""
"Continuous collision detection enabled using raycasting. This is faster than "
"shapecasting but less precise."
msgstr ""
-#: doc/classes/RigidBody2D.xml:242
+#: doc/classes/RigidBody2D.xml:243
msgid ""
"Continuous collision detection enabled using shapecasting. This is the "
"slowest CCD method and the most precise."
@@ -45024,42 +45696,31 @@ msgid ""
"locked."
msgstr ""
-#: doc/classes/RigidBody3D.xml:99
+#: doc/classes/RigidBody3D.xml:107
msgid ""
-"Returns a list of the bodies colliding with this one. By default, number of "
-"max contacts reported is at 0, see the [member contacts_reported] property "
-"to increase it.\n"
-"[b]Note:[/b] The result of this test is not immediate after moving objects. "
-"For performance, list of collisions is updated once per frame and before the "
-"physics step. Consider using signals instead."
+"Returns the inverse inertia tensor basis. This is used to calculate the "
+"angular acceleration resulting from a torque applied to the [RigidBody3D]."
msgstr ""
-#: doc/classes/RigidBody3D.xml:111
+#: doc/classes/RigidBody3D.xml:118
msgid "Locks the specified linear or rotational axis."
msgstr ""
-#: doc/classes/RigidBody3D.xml:126
+#: doc/classes/RigidBody3D.xml:133
msgid "Damps RigidBody3D's rotational forces."
msgstr ""
-#: doc/classes/RigidBody3D.xml:129
+#: doc/classes/RigidBody3D.xml:136
msgid "RigidBody3D's rotational velocity."
msgstr ""
-#: doc/classes/RigidBody3D.xml:153
+#: doc/classes/RigidBody3D.xml:160
msgid ""
"If [code]true[/code], the RigidBody3D will emit signals when it collides "
-"with another RigidBody3D."
+"with another RigidBody3D. See also [member contacts_reported]."
msgstr ""
-#: doc/classes/RigidBody3D.xml:156
-msgid ""
-"The maximum contacts to report. Bodies can keep a log of the contacts with "
-"other bodies, this is enabled by setting the maximum amount of contacts "
-"reported to a number greater than 0."
-msgstr ""
-
-#: doc/classes/RigidBody3D.xml:159
+#: doc/classes/RigidBody3D.xml:167
msgid ""
"If [code]true[/code], continuous collision detection is used.\n"
"Continuous collision detection tries to predict where a moving body will "
@@ -45069,7 +45730,7 @@ msgid ""
"faster to compute, but can miss small, fast-moving objects."
msgstr ""
-#: doc/classes/RigidBody3D.xml:163
+#: doc/classes/RigidBody3D.xml:171
msgid ""
"If [code]true[/code], internal force integration will be disabled (like "
"gravity or air friction) for this body. Other than collision response, the "
@@ -45077,7 +45738,7 @@ msgid ""
"function, if defined."
msgstr ""
-#: doc/classes/RigidBody3D.xml:166
+#: doc/classes/RigidBody3D.xml:174
msgid ""
"This is multiplied by the global 3D gravity setting found in [b]Project > "
"Project Settings > Physics > 3d[/b] to produce RigidBody3D's gravity. For "
@@ -45085,14 +45746,14 @@ msgid ""
"and 0.5 will apply half gravity to this object."
msgstr ""
-#: doc/classes/RigidBody3D.xml:169
+#: doc/classes/RigidBody3D.xml:177
msgid ""
"The body's linear damp. Cannot be less than -1.0. If this value is different "
"from -1.0, any linear damp derived from the world or areas will be "
"overridden."
msgstr ""
-#: doc/classes/RigidBody3D.xml:172
+#: doc/classes/RigidBody3D.xml:180
msgid ""
"The body's linear velocity. Can be used sporadically, but [b]don't set this "
"every frame[/b], because physics may run in another thread and runs at a "
@@ -45100,60 +45761,57 @@ msgid ""
"for precise control of the body state."
msgstr ""
-#: doc/classes/RigidBody3D.xml:178
+#: doc/classes/RigidBody3D.xml:186
msgid "The body mode. See [enum Mode] for possible values."
msgstr ""
-#: doc/classes/RigidBody3D.xml:196
-msgid ""
-"Emitted when a body enters into contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work."
-msgstr ""
-
-#: doc/classes/RigidBody3D.xml:203
+#: doc/classes/RigidBody3D.xml:211
msgid ""
-"Emitted when a body shape exits contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work."
+"Emitted when a body shape exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody3D.xml:216
+#: doc/classes/RigidBody3D.xml:224
msgid ""
-"Emitted when a body enters into contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work.\n"
+"Emitted when a body enters into contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"This signal not only receives the body that collided with this one, but also "
"its [RID] ([code]body_id[/code]), the shape index from the colliding body "
"([code]body_shape[/code]), and the shape index from this body "
"([code]local_shape[/code]) the other body collided with."
msgstr ""
-#: doc/classes/RigidBody3D.xml:230
+#: doc/classes/RigidBody3D.xml:238
msgid ""
-"Emitted when a body shape exits contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work.\n"
+"Emitted when a body shape exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"This signal not only receives the body that stopped colliding with this one, "
"but also its [RID] ([code]body_id[/code]), the shape index from the "
"colliding body ([code]body_shape[/code]), and the shape index from this body "
"([code]local_shape[/code]) the other body stopped colliding with."
msgstr ""
-#: doc/classes/RigidBody3D.xml:243
+#: doc/classes/RigidBody3D.xml:251
msgid ""
"Rigid body mode. This is the \"natural\" state of a rigid body. It is "
"affected by forces, and can move, rotate, and be affected by user code."
msgstr ""
-#: doc/classes/RigidBody3D.xml:246
+#: doc/classes/RigidBody3D.xml:254
msgid ""
"Static mode. The body behaves like a [StaticBody3D], and can only move by "
"user code."
msgstr ""
-#: doc/classes/RigidBody3D.xml:249
+#: doc/classes/RigidBody3D.xml:257
msgid ""
"Character body mode. This behaves like a rigid body, but can not rotate."
msgstr ""
-#: doc/classes/RigidBody3D.xml:252
+#: doc/classes/RigidBody3D.xml:260
msgid ""
"Kinematic body mode. The body behaves like a [KinematicBody3D], and can only "
"move by user code."
@@ -45660,7 +46318,7 @@ msgstr ""
msgid "The time remaining."
msgstr ""
-#: doc/classes/SceneTreeTimer.xml:28 doc/classes/Timer.xml:62
+#: doc/classes/SceneTreeTimer.xml:28 doc/classes/Timer.xml:63
msgid "Emitted when the timer reaches 0."
msgstr ""
@@ -45783,27 +46441,27 @@ msgid ""
"the singleton using [method EditorInterface.get_script_editor]."
msgstr ""
-#: doc/classes/ScriptEditor.xml:40
+#: doc/classes/ScriptEditor.xml:46
msgid "Returns a [Script] that is currently active in editor."
msgstr ""
-#: doc/classes/ScriptEditor.xml:57
+#: doc/classes/ScriptEditor.xml:69
msgid ""
"Returns an array with all [Script] objects which are currently open in "
"editor."
msgstr ""
-#: doc/classes/ScriptEditor.xml:66
+#: doc/classes/ScriptEditor.xml:78
msgid "Goes to the specified line in the current script."
msgstr ""
-#: doc/classes/ScriptEditor.xml:85
+#: doc/classes/ScriptEditor.xml:113
msgid ""
"Emitted when user changed active script. Argument is a freshly activated "
"[Script]."
msgstr ""
-#: doc/classes/ScriptEditor.xml:92
+#: doc/classes/ScriptEditor.xml:120
msgid ""
"Emitted when editor is about to close the active script. Argument is a "
"[Script] that is going to be closed."
@@ -45865,7 +46523,7 @@ msgid ""
"visible."
msgstr ""
-#: doc/classes/ScrollContainer.xml:37 doc/classes/TextEdit.xml:453
+#: doc/classes/ScrollContainer.xml:37 doc/classes/TextEdit.xml:407
msgid "The current horizontal scroll value."
msgstr ""
@@ -45873,7 +46531,7 @@ msgstr ""
msgid "If [code]true[/code], enables horizontal scrolling."
msgstr ""
-#: doc/classes/ScrollContainer.xml:43 doc/classes/TextEdit.xml:456
+#: doc/classes/ScrollContainer.xml:43 doc/classes/TextEdit.xml:410
msgid "The current vertical scroll value."
msgstr ""
@@ -46392,7 +47050,7 @@ msgstr ""
msgid ""
"Sets the global pose transform, [code]pose[/code], for the bone at "
"[code]bone_idx[/code].\n"
-"[code]amount[/code] is the interpolation strengh that will be used when "
+"[code]amount[/code] is the interpolation strength that will be used when "
"applying the pose, and [code]persistent[/code] determines if the applied "
"pose will remain.\n"
"[b]Note[/b]: The pose transform needs to be in bone space. Use [method "
@@ -46409,7 +47067,7 @@ msgstr ""
#: doc/classes/Skeleton3D.xml:266
msgid ""
-"Returns the pose transform for bone [code]bone_idx[/code].\n"
+"Sets the pose transform for bone [code]bone_idx[/code].\n"
"[b]Note[/b]: The pose transform needs to be in bone space. Use [method "
"world_transform_to_bone_transform] to convert a world transform, like one "
"you can get from a [Node3D], to bone space."
@@ -46502,6 +47160,16 @@ msgstr ""
#: doc/classes/Sky.xml:52
msgid ""
+"Automatically selects the appropriate process mode based on your sky shader. "
+"If your shader uses [code]TIME[/code] or [code]POSITION[/code], this will "
+"use [constant PROCESS_MODE_REALTIME]. If your shader uses any of the "
+"[code]LIGHT_*[/code] variables or any custom uniforms, this uses [constant "
+"PROCESS_MODE_INCREMENTAL]. Otherwise, this defaults to [constant "
+"PROCESS_MODE_QUALITY]."
+msgstr ""
+
+#: doc/classes/Sky.xml:55
+msgid ""
"Uses high quality importance sampling to process the radiance map. In "
"general, this results in much higher quality than [constant "
"PROCESS_MODE_REALTIME] but takes much longer to generate. This should not be "
@@ -46511,10 +47179,22 @@ msgid ""
"ggx_samples]."
msgstr ""
-#: doc/classes/Sky.xml:55
+#: doc/classes/Sky.xml:58
+msgid ""
+"Uses the same high quality importance sampling to process the radiance map "
+"as [constant PROCESS_MODE_QUALITY], but updates over several frames. The "
+"number of frames is determined by [member ProjectSettings.rendering/quality/"
+"reflections/roughness_layers]. Use this when you need highest quality "
+"radiance maps, but have a sky that updates slowly."
+msgstr ""
+
+#: doc/classes/Sky.xml:61
msgid ""
"Uses the fast filtering algorithm to process the radiance map. In general "
-"this results in lower quality, but substantially faster run times.\n"
+"this results in lower quality, but substantially faster run times. If you "
+"need better quality, but still need to update the sky every frame, consider "
+"turning on [member ProjectSettings.rendering/quality/reflections/"
+"fast_filter_high_quality].\n"
"[b]Note:[/b] The fast filtering algorithm is limited to 256x256 cubemaps, so "
"[member radiance_size] must be set to [constant RADIANCE_SIZE_256]."
msgstr ""
@@ -46851,9 +47531,7 @@ msgid ""
msgstr ""
#: doc/classes/SpringArm3D.xml:35
-msgid ""
-"Returns the proportion between the current arm length (after checking for "
-"collisions) and the [member spring_length]. Ranges from 0 to 1."
+msgid "Returns the spring arm's current length."
msgstr ""
#: doc/classes/SpringArm3D.xml:44
@@ -47549,7 +48227,7 @@ msgstr ""
msgid ""
"This is the built-in string class (and the one used by GDScript). It "
"supports Unicode and provides all necessary means for string handling. "
-"Strings are reference counted and use a copy-on-write approach, so passing "
+"Strings are reference-counted and use a copy-on-write approach, so passing "
"them around is cheap in resources."
msgstr ""
@@ -47704,26 +48382,32 @@ msgstr ""
#: doc/classes/String.xml:328
msgid ""
"Returns a copy of the string with escaped characters replaced by their "
-"meanings according to the C language standard."
+"meanings. Supported escape sequences are [code]\\'[/code], [code]\\\"[/"
+"code], [code]\\?[/code], [code]\\\\[/code], [code]\\a[/code], [code]\\b[/"
+"code], [code]\\f[/code], [code]\\n[/code], [code]\\r[/code], [code]\\t[/"
+"code], [code]\\v[/code].\n"
+"[b]Note:[/b] Unlike the GDScript parser, this method doesn't support the "
+"[code]\\uXXXX[/code] escape sequence."
msgstr ""
-#: doc/classes/String.xml:335
+#: doc/classes/String.xml:336
msgid ""
-"Changes the case of some letters. Replaces underscores with spaces, converts "
-"all letters to lowercase, then capitalizes first and every letter following "
-"the space character. For [code]capitalize camelCase mixed_with_underscores[/"
-"code], it will return [code]Capitalize Camelcase Mixed With Underscores[/"
+"Changes the case of some letters. Replaces underscores with spaces, adds "
+"spaces before in-word uppercase characters, converts all letters to "
+"lowercase, then capitalizes the first letter and every letter following a "
+"space character. For [code]capitalize camelCase mixed_with_underscores[/"
+"code], it will return [code]Capitalize Camel Case Mixed With Underscores[/"
"code]."
msgstr ""
-#: doc/classes/String.xml:344
+#: doc/classes/String.xml:345
msgid ""
"Performs a case-sensitive comparison to another string. Returns [code]-1[/"
"code] if less than, [code]+1[/code] if greater than, or [code]0[/code] if "
"equal."
msgstr ""
-#: doc/classes/String.xml:357
+#: doc/classes/String.xml:358
msgid ""
"Returns the number of occurrences of substring [code]what[/code] between "
"[code]from[/code] and [code]to[/code] positions. If [code]from[/code] and "
@@ -47731,7 +48415,7 @@ msgid ""
"code] equals 0 the remained substring will be used."
msgstr ""
-#: doc/classes/String.xml:370
+#: doc/classes/String.xml:371
msgid ""
"Returns the number of occurrences of substring [code]what[/code] (ignoring "
"case) between [code]from[/code] and [code]to[/code] positions. If "
@@ -47739,32 +48423,33 @@ msgid ""
"used. If only [code]to[/code] equals 0 the remained substring will be used."
msgstr ""
-#: doc/classes/String.xml:377
+#: doc/classes/String.xml:378
msgid ""
"Returns a copy of the string with indentation (leading tabs and spaces) "
"removed."
msgstr ""
-#: doc/classes/String.xml:384
+#: doc/classes/String.xml:385
msgid ""
"Returns [code]true[/code] if the length of the string equals [code]0[/code]."
msgstr ""
-#: doc/classes/String.xml:393
+#: doc/classes/String.xml:394
msgid "Returns [code]true[/code] if the string ends with the given string."
msgstr ""
-#: doc/classes/String.xml:404
+#: doc/classes/String.xml:405
msgid ""
"Erases [code]chars[/code] characters from the string starting from "
"[code]position[/code]."
msgstr ""
-#: doc/classes/String.xml:415
+#: doc/classes/String.xml:416
msgid ""
-"Finds the first occurrence of a substring. Returns the starting position of "
-"the substring or [code]-1[/code] if not found. Optionally, the initial "
-"search index can be passed.\n"
+"Returns the index of the [b]first[/b] case-sensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the end of the "
+"string.\n"
"[b]Note:[/b] If you just want to know whether a string contains a substring, "
"use the [code]in[/code] operator as follows:\n"
"[codeblock]\n"
@@ -47774,48 +48459,42 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:430
+#: doc/classes/String.xml:433
msgid ""
-"Finds the last occurrence of a substring. Returns the starting position of "
-"the substring or [code]-1[/code] if not found."
+"Returns the index of the [b]first[/b] case-insensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the end of the string."
msgstr ""
-#: doc/classes/String.xml:441
-msgid ""
-"Finds the first occurrence of a substring, ignoring case. Returns the "
-"starting position of the substring or [code]-1[/code] if not found. "
-"Optionally, the initial search index can be passed."
-msgstr ""
-
-#: doc/classes/String.xml:452
+#: doc/classes/String.xml:444
msgid ""
"Formats the string by replacing all occurrences of [code]placeholder[/code] "
"with [code]values[/code]."
msgstr ""
-#: doc/classes/String.xml:459
+#: doc/classes/String.xml:451
msgid "If the string is a valid file path, returns the base directory name."
msgstr ""
-#: doc/classes/String.xml:466
+#: doc/classes/String.xml:458
msgid ""
"If the string is a valid file path, returns the full file path without the "
"extension."
msgstr ""
-#: doc/classes/String.xml:473
+#: doc/classes/String.xml:465
msgid "If the string is a valid file path, returns the extension."
msgstr ""
-#: doc/classes/String.xml:480
+#: doc/classes/String.xml:472
msgid "If the string is a valid file path, returns the filename."
msgstr ""
-#: doc/classes/String.xml:487
+#: doc/classes/String.xml:479
msgid "Hashes the string and returns a 32-bit integer."
msgstr ""
-#: doc/classes/String.xml:494
+#: doc/classes/String.xml:486
msgid ""
"Converts a string containing a hexadecimal number into an integer. "
"Hexadecimal strings are expected to be prefixed with \"[code]0x[/code]\" "
@@ -47825,7 +48504,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:504
+#: doc/classes/String.xml:496
msgid ""
"Escapes (encodes) a string to URL friendly format. Also referred to as 'URL "
"encode'.\n"
@@ -47835,7 +48514,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:514
+#: doc/classes/String.xml:506
msgid ""
"Unescapes (decodes) a string in URL encoded format. Also referred to as 'URL "
"decode'.\n"
@@ -47845,7 +48524,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:526
+#: doc/classes/String.xml:518
msgid ""
"Converts [code]size[/code] represented as number of bytes to human-readable "
"format using internationalized set of data size units, namely: B, KiB, MiB, "
@@ -47858,48 +48537,48 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:542
+#: doc/classes/String.xml:534
msgid ""
"Returns a copy of the string with the substring [code]what[/code] inserted "
"at the given position."
msgstr ""
-#: doc/classes/String.xml:549
+#: doc/classes/String.xml:541
msgid ""
"If the string is a path to a file or directory, returns [code]true[/code] if "
"the path is absolute."
msgstr ""
-#: doc/classes/String.xml:556
+#: doc/classes/String.xml:548
msgid ""
"If the string is a path to a file or directory, returns [code]true[/code] if "
"the path is relative."
msgstr ""
-#: doc/classes/String.xml:565
+#: doc/classes/String.xml:557
msgid ""
"Returns [code]true[/code] if this string is a subsequence of the given "
"string."
msgstr ""
-#: doc/classes/String.xml:574
+#: doc/classes/String.xml:566
msgid ""
"Returns [code]true[/code] if this string is a subsequence of the given "
"string, without considering case."
msgstr ""
-#: doc/classes/String.xml:581
+#: doc/classes/String.xml:573
msgid ""
"Returns [code]true[/code] if this string is free from characters that aren't "
"allowed in file names, those being:\n"
"[code]: / \\ ? * \" | % < >[/code]"
msgstr ""
-#: doc/classes/String.xml:589
+#: doc/classes/String.xml:581
msgid "Returns [code]true[/code] if this string contains a valid float."
msgstr ""
-#: doc/classes/String.xml:598
+#: doc/classes/String.xml:590
msgid ""
"Returns [code]true[/code] if this string contains a valid hexadecimal "
"number. If [code]with_prefix[/code] is [code]true[/code], then a validity of "
@@ -47907,7 +48586,7 @@ msgid ""
"instance: [code]0xDEADC0DE[/code]."
msgstr ""
-#: doc/classes/String.xml:605
+#: doc/classes/String.xml:597
msgid ""
"Returns [code]true[/code] if this string contains a valid color in "
"hexadecimal HTML notation. Other HTML notations such as named colors or "
@@ -47915,22 +48594,22 @@ msgid ""
"return [code]false[/code]."
msgstr ""
-#: doc/classes/String.xml:612
+#: doc/classes/String.xml:604
msgid ""
"Returns [code]true[/code] if this string is a valid identifier. A valid "
"identifier may contain only letters, digits and underscores ([code]_[/code]) "
"and the first character may not be a digit."
msgstr ""
-#: doc/classes/String.xml:619
+#: doc/classes/String.xml:611
msgid "Returns [code]true[/code] if this string contains a valid integer."
msgstr ""
-#: doc/classes/String.xml:626
+#: doc/classes/String.xml:618
msgid "Returns [code]true[/code] if this string contains a valid IP address."
msgstr ""
-#: doc/classes/String.xml:635
+#: doc/classes/String.xml:627
msgid ""
"Return a [String] which is the concatenation of the [code]parts[/code]. The "
"separator between elements is the string providing this method.\n"
@@ -47940,121 +48619,125 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:646
+#: doc/classes/String.xml:638
msgid ""
"Returns a copy of the string with special characters escaped using the JSON "
"standard."
msgstr ""
-#: doc/classes/String.xml:655
+#: doc/classes/String.xml:647
msgid "Returns a number of characters from the left of the string."
msgstr ""
-#: doc/classes/String.xml:662
+#: doc/classes/String.xml:654
msgid "Returns the string's amount of characters."
msgstr ""
-#: doc/classes/String.xml:671
+#: doc/classes/String.xml:663
msgid "Returns a copy of the string with characters removed from the left."
msgstr ""
-#: doc/classes/String.xml:680
+#: doc/classes/String.xml:672
msgid ""
"Does a simple case-sensitive expression match, where [code]\"*\"[/code] "
"matches zero or more arbitrary characters and [code]\"?\"[/code] matches any "
"single character except a period ([code]\".\"[/code])."
msgstr ""
-#: doc/classes/String.xml:689
+#: doc/classes/String.xml:681
msgid ""
"Does a simple case-insensitive expression match, where [code]\"*\"[/code] "
"matches zero or more arbitrary characters and [code]\"?\"[/code] matches any "
"single character except a period ([code]\".\"[/code])."
msgstr ""
-#: doc/classes/String.xml:696
+#: doc/classes/String.xml:688
msgid "Returns the MD5 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:703
+#: doc/classes/String.xml:695
msgid "Returns the MD5 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:712
+#: doc/classes/String.xml:704
msgid ""
"Performs a case-insensitive comparison to another string. Returns [code]-1[/"
"code] if less than, [code]+1[/code] if greater than, or [code]0[/code] if "
"equal."
msgstr ""
-#: doc/classes/String.xml:721
+#: doc/classes/String.xml:713
msgid "Returns the character code at position [code]at[/code]."
msgstr ""
-#: doc/classes/String.xml:730
+#: doc/classes/String.xml:722
msgid ""
"Formats a number to have an exact number of [code]digits[/code] after the "
"decimal point."
msgstr ""
-#: doc/classes/String.xml:739
+#: doc/classes/String.xml:731
msgid ""
"Formats a number to have an exact number of [code]digits[/code] before the "
"decimal point."
msgstr ""
-#: doc/classes/String.xml:746
+#: doc/classes/String.xml:738
msgid "Decode a percent-encoded string. See [method percent_encode]."
msgstr ""
-#: doc/classes/String.xml:753
+#: doc/classes/String.xml:745
msgid ""
"Percent-encodes a string. Encodes parameters in a URL when sending a HTTP "
"GET request (and bodies of form-urlencoded POST requests)."
msgstr ""
-#: doc/classes/String.xml:762
+#: doc/classes/String.xml:754
msgid ""
"If the string is a path, this concatenates [code]file[/code] at the end of "
"the string as a subpath. E.g. [code]\"this/is\".plus_file(\"path\") == "
"\"this/is/path\"[/code]."
msgstr ""
-#: doc/classes/String.xml:771
+#: doc/classes/String.xml:763
msgid ""
"Returns original string repeated a number of times. The number of "
"repetitions is given by the argument."
msgstr ""
-#: doc/classes/String.xml:782
+#: doc/classes/String.xml:774
msgid ""
"Replaces occurrences of a case-sensitive substring with the given one inside "
"the string."
msgstr ""
-#: doc/classes/String.xml:793
+#: doc/classes/String.xml:785
msgid ""
"Replaces occurrences of a case-insensitive substring with the given one "
"inside the string."
msgstr ""
-#: doc/classes/String.xml:804
+#: doc/classes/String.xml:796
msgid ""
-"Performs a case-sensitive search for a substring, but starts from the end of "
-"the string instead of the beginning."
+"Returns the index of the [b]last[/b] case-sensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the beginning of the "
+"string."
msgstr ""
-#: doc/classes/String.xml:815
+#: doc/classes/String.xml:807
msgid ""
-"Performs a case-insensitive search for a substring, but starts from the end "
-"of the string instead of the beginning."
+"Returns the index of the [b]last[/b] case-insensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the beginning of the "
+"string."
msgstr ""
-#: doc/classes/String.xml:824
+#: doc/classes/String.xml:816
msgid "Returns the right side of the string from a given position."
msgstr ""
-#: doc/classes/String.xml:837
+#: doc/classes/String.xml:829
msgid ""
"Splits the string by a [code]delimiter[/code] string and returns an array of "
"the substrings, starting from right.\n"
@@ -48073,39 +48756,39 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:856
+#: doc/classes/String.xml:848
msgid "Returns a copy of the string with characters removed from the right."
msgstr ""
-#: doc/classes/String.xml:863
+#: doc/classes/String.xml:855
msgid "Returns the SHA-1 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:870
+#: doc/classes/String.xml:862
msgid "Returns the SHA-1 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:877
+#: doc/classes/String.xml:869
msgid "Returns the SHA-256 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:884
+#: doc/classes/String.xml:876
msgid "Returns the SHA-256 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:893
+#: doc/classes/String.xml:885
msgid ""
"Returns the similarity index of the text compared to this string. 1 means "
"totally similar and 0 means totally dissimilar."
msgstr ""
-#: doc/classes/String.xml:906
+#: doc/classes/String.xml:898
msgid ""
"Splits the string by a [code]delimiter[/code] string and returns an array of "
-"the substrings.\n"
+"the substrings. The [code]delimiter[/code] can be of any length.\n"
"If [code]maxsplit[/code] is specified, it defines the number of splits to do "
-"from the left up to [code]maxsplit[/code]. The default value of 0 means that "
-"all items are split.\n"
+"from the left up to [code]maxsplit[/code]. The default value of [code]0[/"
+"code] means that all items are split.\n"
"Example:\n"
"[codeblock]\n"
"var some_string = \"One,Two,Three,Four\"\n"
@@ -48113,10 +48796,12 @@ msgid ""
"print(some_array.size()) # Prints 2\n"
"print(some_array[0]) # Prints \"One\"\n"
"print(some_array[1]) # Prints \"Two,Three,Four\"\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"If you need to split strings with more complex rules, use the [RegEx] class "
+"instead."
msgstr ""
-#: doc/classes/String.xml:926
+#: doc/classes/String.xml:919
msgid ""
"Splits the string in floats by using a delimiter string and returns an array "
"of the substrings.\n"
@@ -48124,7 +48809,7 @@ msgid ""
"split by [code]\",\"[/code]."
msgstr ""
-#: doc/classes/String.xml:938
+#: doc/classes/String.xml:931
msgid ""
"Returns a copy of the string stripped of any non-printable character "
"(including tabulations, spaces and line breaks) at the beginning and the "
@@ -48132,7 +48817,7 @@ msgid ""
"right edges respectively."
msgstr ""
-#: doc/classes/String.xml:945
+#: doc/classes/String.xml:938
msgid ""
"Returns a copy of the string stripped of any escape character. These include "
"all non-printable control characters of the first page of the ASCII table (< "
@@ -48140,14 +48825,14 @@ msgid ""
"code] and [code]\\r[/code]) characters, but not spaces."
msgstr ""
-#: doc/classes/String.xml:956
+#: doc/classes/String.xml:949
msgid ""
"Returns part of the string from the position [code]from[/code] with length "
"[code]len[/code]. Argument [code]len[/code] is optional and using [code]-1[/"
"code] will return remaining characters from given position."
msgstr ""
-#: doc/classes/String.xml:963
+#: doc/classes/String.xml:956
msgid ""
"Converts the String (which is a character array) to [PackedByteArray] (which "
"is an array of bytes). The conversion is faster compared to [method "
@@ -48155,25 +48840,25 @@ msgid ""
"ASCII characters."
msgstr ""
-#: doc/classes/String.xml:970
+#: doc/classes/String.xml:963
msgid ""
"Converts a string containing a decimal number into a [code]float[/code]."
msgstr ""
-#: doc/classes/String.xml:977
+#: doc/classes/String.xml:970
msgid ""
"Converts a string containing an integer number into an [code]int[/code]."
msgstr ""
-#: doc/classes/String.xml:984
+#: doc/classes/String.xml:977
msgid "Returns the string converted to lowercase."
msgstr ""
-#: doc/classes/String.xml:991
+#: doc/classes/String.xml:984
msgid "Returns the string converted to uppercase."
msgstr ""
-#: doc/classes/String.xml:998
+#: doc/classes/String.xml:991
msgid ""
"Converts the String (which is an array of characters) to [PackedByteArray] "
"(which is an array of bytes). The conversion is a bit slower than [method "
@@ -48181,25 +48866,25 @@ msgid ""
"this function over [method to_ascii]."
msgstr ""
-#: doc/classes/String.xml:1007
+#: doc/classes/String.xml:1000
msgid ""
"Removes a given string from the start if it starts with it or leaves the "
"string unchanged."
msgstr ""
-#: doc/classes/String.xml:1016
+#: doc/classes/String.xml:1009
msgid ""
"Removes a given string from the end if it ends with it or leaves the string "
"unchanged."
msgstr ""
-#: doc/classes/String.xml:1023
+#: doc/classes/String.xml:1016
msgid ""
"Returns a copy of the string with special characters escaped using the XML "
"standard."
msgstr ""
-#: doc/classes/String.xml:1030
+#: doc/classes/String.xml:1023
msgid ""
"Returns a copy of the string with escaped characters replaced by their "
"meanings according to the XML standard."
@@ -49431,50 +50116,42 @@ msgid ""
"undo/redo."
msgstr ""
-#: doc/classes/TextEdit.xml:24
-msgid "Adds color region (given the delimiters) and its colors."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:35
-msgid "Adds a [code]keyword[/code] and its [Color]."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:44
+#: doc/classes/TextEdit.xml:18
msgid ""
"Returns if the given line is foldable, that is, it has indented lines right "
"below it."
msgstr ""
-#: doc/classes/TextEdit.xml:57
+#: doc/classes/TextEdit.xml:25
msgid ""
-"Clears all custom syntax coloring information previously added with [method "
-"add_color_region] or [method add_keyword_color]."
+"Centers the viewport on the line the editing cursor is at. This also resets "
+"the [member scroll_horizontal] value to [code]0[/code]."
msgstr ""
-#: doc/classes/TextEdit.xml:64
+#: doc/classes/TextEdit.xml:32
msgid "Clears the undo history."
msgstr ""
-#: doc/classes/TextEdit.xml:71
+#: doc/classes/TextEdit.xml:39
msgid "Copy's the current text selection."
msgstr ""
-#: doc/classes/TextEdit.xml:78
+#: doc/classes/TextEdit.xml:46
msgid "Returns the column the editing cursor is at."
msgstr ""
-#: doc/classes/TextEdit.xml:85
+#: doc/classes/TextEdit.xml:53
msgid "Returns the line the editing cursor is at."
msgstr ""
-#: doc/classes/TextEdit.xml:96
+#: doc/classes/TextEdit.xml:64
msgid ""
"Moves the cursor at the specified [code]column[/code] index.\n"
"If [code]adjust_viewport[/code] is set to [code]true[/code], the viewport "
"will center at the cursor position after the move occurs."
msgstr ""
-#: doc/classes/TextEdit.xml:112
+#: doc/classes/TextEdit.xml:80
msgid ""
"Moves the cursor at the specified [code]line[/code] index.\n"
"If [code]adjust_viewport[/code] is set to [code]true[/code], the viewport "
@@ -49483,111 +50160,101 @@ msgid ""
"[code]line[/code] can be hidden using [method set_line_as_hidden]."
msgstr ""
-#: doc/classes/TextEdit.xml:121
+#: doc/classes/TextEdit.xml:89
msgid "Cut's the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:128
+#: doc/classes/TextEdit.xml:96
msgid "Deselects the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:135
+#: doc/classes/TextEdit.xml:103
msgid "Folds all lines that are possible to be folded (see [method can_fold])."
msgstr ""
-#: doc/classes/TextEdit.xml:144
+#: doc/classes/TextEdit.xml:112
msgid "Folds the given line, if possible (see [method can_fold])."
msgstr ""
-#: doc/classes/TextEdit.xml:151
+#: doc/classes/TextEdit.xml:119
msgid "Returns an array containing the line number of each breakpoint."
msgstr ""
-#: doc/classes/TextEdit.xml:160
-msgid "Returns the [Color] of the specified [code]keyword[/code]."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:169
+#: doc/classes/TextEdit.xml:128
msgid "Returns the text of a specific line."
msgstr ""
-#: doc/classes/TextEdit.xml:176
+#: doc/classes/TextEdit.xml:135
msgid "Returns the amount of total lines in the text."
msgstr ""
-#: doc/classes/TextEdit.xml:183
+#: doc/classes/TextEdit.xml:142
msgid ""
"Returns the [PopupMenu] of this [TextEdit]. By default, this menu is "
"displayed when right-clicking on the [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:190
+#: doc/classes/TextEdit.xml:149
msgid "Returns the selection begin column."
msgstr ""
-#: doc/classes/TextEdit.xml:197
+#: doc/classes/TextEdit.xml:156
msgid "Returns the selection begin line."
msgstr ""
-#: doc/classes/TextEdit.xml:204
+#: doc/classes/TextEdit.xml:163
msgid "Returns the text inside the selection."
msgstr ""
-#: doc/classes/TextEdit.xml:211
+#: doc/classes/TextEdit.xml:170
msgid "Returns the selection end column."
msgstr ""
-#: doc/classes/TextEdit.xml:218
+#: doc/classes/TextEdit.xml:177
msgid "Returns the selection end line."
msgstr ""
-#: doc/classes/TextEdit.xml:225
+#: doc/classes/TextEdit.xml:184
msgid "Returns a [String] text with the word under the mouse cursor location."
msgstr ""
-#: doc/classes/TextEdit.xml:234
-msgid ""
-"Returns whether the specified [code]keyword[/code] has a color set to it or "
-"not."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:243
+#: doc/classes/TextEdit.xml:193
msgid "Insert the specified text at the cursor position."
msgstr ""
-#: doc/classes/TextEdit.xml:252
+#: doc/classes/TextEdit.xml:202
msgid "Returns whether the line at the specified index is folded or not."
msgstr ""
-#: doc/classes/TextEdit.xml:261
+#: doc/classes/TextEdit.xml:211
msgid "Returns whether the line at the specified index is hidden or not."
msgstr ""
-#: doc/classes/TextEdit.xml:268
+#: doc/classes/TextEdit.xml:218
msgid "Returns [code]true[/code] if the selection is active."
msgstr ""
-#: doc/classes/TextEdit.xml:277
+#: doc/classes/TextEdit.xml:227
msgid ""
"Triggers a right-click menu action by the specified index. See [enum "
"MenuItems] for a list of available indexes."
msgstr ""
-#: doc/classes/TextEdit.xml:284
+#: doc/classes/TextEdit.xml:234
msgid "Paste the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:291
+#: doc/classes/TextEdit.xml:241
msgid "Perform redo operation."
msgstr ""
-#: doc/classes/TextEdit.xml:298
+#: doc/classes/TextEdit.xml:248
msgid ""
"Removes all the breakpoints. This will not fire the [signal "
"breakpoint_toggled] signal."
msgstr ""
-#: doc/classes/TextEdit.xml:313
+#: doc/classes/TextEdit.xml:263
msgid ""
"Perform a search inside the text. Search flags can be specified in the [enum "
"SearchFlags] enum.\n"
@@ -49603,244 +50270,265 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/TextEdit.xml:336
-msgid "Perform selection, from line/column to line/column."
+#: doc/classes/TextEdit.xml:286
+msgid ""
+"Perform selection, from line/column to line/column.\n"
+"If [member selecting_enabled] is [code]false[/code], no selection will occur."
msgstr ""
-#: doc/classes/TextEdit.xml:343
-msgid "Select all the text."
+#: doc/classes/TextEdit.xml:294
+msgid ""
+"Select all the text.\n"
+"If [member selecting_enabled] is [code]false[/code], no selection will occur."
msgstr ""
-#: doc/classes/TextEdit.xml:354
+#: doc/classes/TextEdit.xml:306
msgid "Sets the text for a specific line."
msgstr ""
-#: doc/classes/TextEdit.xml:365
+#: doc/classes/TextEdit.xml:317
msgid "If [code]true[/code], hides the line of the specified index."
msgstr ""
-#: doc/classes/TextEdit.xml:374
+#: doc/classes/TextEdit.xml:326
msgid "Toggle the folding of the code block at the given line."
msgstr ""
-#: doc/classes/TextEdit.xml:381
+#: doc/classes/TextEdit.xml:333
msgid "Perform undo operation."
msgstr ""
-#: doc/classes/TextEdit.xml:390
+#: doc/classes/TextEdit.xml:342
msgid "Unfolds the given line, if folded."
msgstr ""
-#: doc/classes/TextEdit.xml:397
+#: doc/classes/TextEdit.xml:349
msgid ""
"Unhide all lines that were previously set to hidden by [method "
"set_line_as_hidden]."
msgstr ""
-#: doc/classes/TextEdit.xml:403
+#: doc/classes/TextEdit.xml:355
msgid "If [code]true[/code], the breakpoint gutter is visible."
msgstr ""
-#: doc/classes/TextEdit.xml:412
+#: doc/classes/TextEdit.xml:364
msgid ""
"If [code]true[/code], the caret displays as a rectangle.\n"
"If [code]false[/code], the caret displays as a bar."
msgstr ""
-#: doc/classes/TextEdit.xml:416
+#: doc/classes/TextEdit.xml:368
msgid ""
"If [code]true[/code], a right-click moves the cursor at the mouse position "
"before displaying the context menu.\n"
"If [code]false[/code], the context menu disregards mouse location."
msgstr ""
-#: doc/classes/TextEdit.xml:420
+#: doc/classes/TextEdit.xml:372
msgid "If [code]true[/code], a right-click displays the context menu."
msgstr ""
-#: doc/classes/TextEdit.xml:423
+#: doc/classes/TextEdit.xml:375
msgid ""
"If [code]true[/code], the \"space\" character will have a visible "
"representation."
msgstr ""
-#: doc/classes/TextEdit.xml:426
+#: doc/classes/TextEdit.xml:378
msgid ""
"If [code]true[/code], the \"tab\" character will have a visible "
"representation."
msgstr ""
-#: doc/classes/TextEdit.xml:430
+#: doc/classes/TextEdit.xml:382
msgid ""
"If [code]true[/code], the fold gutter is visible. This enables folding "
"groups of indented lines."
msgstr ""
-#: doc/classes/TextEdit.xml:433
+#: doc/classes/TextEdit.xml:385
msgid ""
"If [code]true[/code], all lines that have been set to hidden by [method "
"set_line_as_hidden], will not be visible."
msgstr ""
-#: doc/classes/TextEdit.xml:436
+#: doc/classes/TextEdit.xml:388
msgid ""
"If [code]true[/code], all occurrences of the selected text will be "
"highlighted."
msgstr ""
-#: doc/classes/TextEdit.xml:439
+#: doc/classes/TextEdit.xml:391
msgid "If [code]true[/code], the line containing the cursor is highlighted."
msgstr ""
-#: doc/classes/TextEdit.xml:447
+#: doc/classes/TextEdit.xml:394
+msgid ""
+"If [code]true[/code], a minimap is shown, providing an outline of your "
+"source code."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:397
+msgid "The width, in pixels, of the minimap."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:401
msgid ""
"If [code]true[/code], custom [code]font_color_selected[/code] will be used "
"for selected text."
msgstr ""
-#: doc/classes/TextEdit.xml:450
+#: doc/classes/TextEdit.xml:404
msgid ""
"If [code]true[/code], read-only mode is enabled. Existing text cannot be "
"modified and new text cannot be added."
msgstr ""
-#: doc/classes/TextEdit.xml:463
+#: doc/classes/TextEdit.xml:413
msgid ""
-"If [code]true[/code], line numbers are displayed to the left of the text."
+"If [code]true[/code], text can be selected.\n"
+"If [code]false[/code], text can not be selected by the user or by the "
+"[method select] or [method select_all] methods."
msgstr ""
-#: doc/classes/TextEdit.xml:466
+#: doc/classes/TextEdit.xml:417
msgid ""
-"If [code]true[/code], sets the [code]step[/code] of the scrollbars to "
-"[code]0.25[/code] which results in smoother scrolling."
+"If [code]true[/code], shortcut keys for context menu items are enabled, even "
+"if the context menu is disabled."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:420
+msgid ""
+"If [code]true[/code], line numbers are displayed to the left of the text."
msgstr ""
-#: doc/classes/TextEdit.xml:469
+#: doc/classes/TextEdit.xml:423
msgid ""
-"If [code]true[/code], any custom color properties that have been set for "
-"this [TextEdit] will be visible."
+"If [code]true[/code], sets the [code]step[/code] of the scrollbars to "
+"[code]0.25[/code] which results in smoother scrolling."
msgstr ""
-#: doc/classes/TextEdit.xml:472
+#: doc/classes/TextEdit.xml:428
msgid "String value of the [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:475
+#: doc/classes/TextEdit.xml:431
msgid "Vertical scroll sensitivity."
msgstr ""
-#: doc/classes/TextEdit.xml:478
+#: doc/classes/TextEdit.xml:437
msgid ""
"If [code]true[/code], enables text wrapping when it goes beyond the edge of "
"what is visible."
msgstr ""
-#: doc/classes/TextEdit.xml:486
+#: doc/classes/TextEdit.xml:445
msgid "Emitted when a breakpoint is placed via the breakpoint gutter."
msgstr ""
-#: doc/classes/TextEdit.xml:491
+#: doc/classes/TextEdit.xml:450
msgid "Emitted when the cursor changes."
msgstr ""
-#: doc/classes/TextEdit.xml:500
+#: doc/classes/TextEdit.xml:459
msgid "Emitted when the info icon is clicked."
msgstr ""
-#: doc/classes/TextEdit.xml:531
+#: doc/classes/TextEdit.xml:496
msgid "Match case when searching."
msgstr ""
-#: doc/classes/TextEdit.xml:534
+#: doc/classes/TextEdit.xml:499
msgid "Match whole words when searching."
msgstr ""
-#: doc/classes/TextEdit.xml:537
+#: doc/classes/TextEdit.xml:502
msgid "Search from end to beginning."
msgstr ""
-#: doc/classes/TextEdit.xml:546
+#: doc/classes/TextEdit.xml:511
msgid ""
"Pastes the clipboard text over the selected text (or at the cursor's "
"position)."
msgstr ""
-#: doc/classes/TextEdit.xml:549
+#: doc/classes/TextEdit.xml:514
msgid "Erases the whole [TextEdit] text."
msgstr ""
-#: doc/classes/TextEdit.xml:552
+#: doc/classes/TextEdit.xml:517
msgid "Selects the whole [TextEdit] text."
msgstr ""
-#: doc/classes/TextEdit.xml:558
+#: doc/classes/TextEdit.xml:523
msgid "Redoes the previous action."
msgstr ""
-#: doc/classes/TextEdit.xml:566
+#: doc/classes/TextEdit.xml:531
msgid ""
"Sets the background [Color] of this [TextEdit]. [member syntax_highlighting] "
"has to be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:569
+#: doc/classes/TextEdit.xml:534
msgid ""
"Sets the [Color] of the bookmark marker. [member syntax_highlighting] has to "
"be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:574 doc/classes/TextEdit.xml:601
+#: doc/classes/TextEdit.xml:539 doc/classes/TextEdit.xml:566
msgid ""
"Sets the [Color] of the breakpoints. [member breakpoint_gutter] has to be "
"enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:612
+#: doc/classes/TextEdit.xml:577
msgid "Sets the default [Font]."
msgstr ""
-#: doc/classes/TextEdit.xml:615
+#: doc/classes/TextEdit.xml:580
msgid "Sets the font [Color]."
msgstr ""
-#: doc/classes/TextEdit.xml:620
+#: doc/classes/TextEdit.xml:585
msgid ""
"Sets the [Color] of the selected text. [member override_selected_font_color] "
"has to be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:625
+#: doc/classes/TextEdit.xml:588
msgid ""
"Sets the [Color] of the line numbers. [member show_line_numbers] has to be "
"enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:628
+#: doc/classes/TextEdit.xml:591
msgid "Sets the spacing between the lines."
msgstr ""
-#: doc/classes/TextEdit.xml:631
+#: doc/classes/TextEdit.xml:594
msgid "Sets the [Color] of marked text."
msgstr ""
-#: doc/classes/TextEdit.xml:636
+#: doc/classes/TextEdit.xml:597
msgid "Sets the [StyleBox] of this [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:641
+#: doc/classes/TextEdit.xml:600
msgid ""
"Sets the [StyleBox] of this [TextEdit] when [member readonly] is enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:646
+#: doc/classes/TextEdit.xml:605
msgid "Sets the highlight [Color] of text selections."
msgstr ""
-#: doc/classes/TextEdit.xml:653
+#: doc/classes/TextEdit.xml:610
msgid "Sets a custom [Texture2D] for tab text characters."
msgstr ""
-#: doc/classes/TextEdit.xml:656
+#: doc/classes/TextEdit.xml:613
msgid ""
"Sets the highlight [Color] of multiple occurrences. [member "
"highlight_all_occurrences] has to be enabled."
@@ -49918,80 +50606,80 @@ msgid ""
"the texture will not scale with the node."
msgstr ""
-#: doc/classes/TextureButton.xml:19
+#: doc/classes/TextureButton.xml:25
msgid ""
"Controls the texture's behavior when you resize the node's bounding "
"rectangle, [b]only if[/b] [member expand] is [code]true[/code]. Set it to "
"one of the [enum StretchMode] constants. See the constants to learn more."
msgstr ""
-#: doc/classes/TextureButton.xml:22
+#: doc/classes/TextureButton.xml:28
msgid ""
"Pure black and white [BitMap] image to use for click detection. On the mask, "
"white pixels represent the button's clickable area. Use it to create buttons "
"with curved shapes."
msgstr ""
-#: doc/classes/TextureButton.xml:25
+#: doc/classes/TextureButton.xml:31
msgid ""
"Texture to display when the node is disabled. See [member BaseButton."
"disabled]."
msgstr ""
-#: doc/classes/TextureButton.xml:28
+#: doc/classes/TextureButton.xml:34
msgid "Texture to display when the node has mouse or keyboard focus."
msgstr ""
-#: doc/classes/TextureButton.xml:31
+#: doc/classes/TextureButton.xml:37
msgid "Texture to display when the mouse hovers the node."
msgstr ""
-#: doc/classes/TextureButton.xml:34
+#: doc/classes/TextureButton.xml:40
msgid ""
"Texture to display by default, when the node is [b]not[/b] in the disabled, "
"focused, hover or pressed state."
msgstr ""
-#: doc/classes/TextureButton.xml:37
+#: doc/classes/TextureButton.xml:43
msgid ""
"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 "
"[member BaseButton.shortcut] key."
msgstr ""
-#: doc/classes/TextureButton.xml:42 doc/classes/TextureRect.xml:36
+#: doc/classes/TextureButton.xml:48 doc/classes/TextureRect.xml:36
msgid "Scale to fit the node's bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:45 doc/classes/TextureRect.xml:39
+#: doc/classes/TextureButton.xml:51 doc/classes/TextureRect.xml:39
msgid "Tile inside the node's bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:48 doc/classes/TextureRect.xml:42
+#: doc/classes/TextureButton.xml:54 doc/classes/TextureRect.xml:42
msgid ""
"The texture keeps its original size and stays in the bounding rectangle's "
"top-left corner."
msgstr ""
-#: doc/classes/TextureButton.xml:51 doc/classes/TextureRect.xml:45
+#: doc/classes/TextureButton.xml:57 doc/classes/TextureRect.xml:45
msgid ""
"The texture keeps its original size and stays centered in the node's "
"bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:54 doc/classes/TextureRect.xml:48
+#: doc/classes/TextureButton.xml:60 doc/classes/TextureRect.xml:48
msgid ""
"Scale the texture to fit the node's bounding rectangle, but maintain the "
"texture's aspect ratio."
msgstr ""
-#: doc/classes/TextureButton.xml:57
+#: doc/classes/TextureButton.xml:63
msgid ""
"Scale the texture to fit the node's bounding rectangle, center it, and "
"maintain its aspect ratio."
msgstr ""
-#: doc/classes/TextureButton.xml:60 doc/classes/TextureRect.xml:54
+#: doc/classes/TextureButton.xml:66 doc/classes/TextureRect.xml:54
msgid ""
"Scale the texture so that the shorter side fits the bounding rectangle. The "
"other side clips to the node's limits."
@@ -50441,19 +51129,25 @@ msgid ""
"advised if working with shared objects."
msgstr ""
-#: doc/classes/Thread.xml:17
+#: doc/classes/Thread.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/threads/thread_safe_apis."
+"html"
+msgstr ""
+
+#: doc/classes/Thread.xml:18
msgid ""
"Returns the current [Thread]'s ID, uniquely identifying it among all threads."
msgstr ""
-#: doc/classes/Thread.xml:24
+#: doc/classes/Thread.xml:25
msgid ""
"Returns [code]true[/code] if this [Thread] is currently active. An active "
"[Thread] cannot start work on a new method but can be joined with [method "
"wait_to_finish]."
msgstr ""
-#: doc/classes/Thread.xml:39
+#: doc/classes/Thread.xml:40
msgid ""
"Starts a new [Thread] that runs [code]method[/code] on object "
"[code]instance[/code] with [code]userdata[/code] passed as an argument. Even "
@@ -50463,21 +51157,21 @@ msgid ""
"Returns [constant OK] on success, or [constant ERR_CANT_CREATE] on failure."
msgstr ""
-#: doc/classes/Thread.xml:47
+#: doc/classes/Thread.xml:48
msgid ""
"Joins the [Thread] and waits for it to finish. Returns what the method "
"called returned."
msgstr ""
-#: doc/classes/Thread.xml:53
+#: doc/classes/Thread.xml:54
msgid "A thread running with lower priority than normally."
msgstr ""
-#: doc/classes/Thread.xml:56
+#: doc/classes/Thread.xml:57
msgid "A thread with a standard priority."
msgstr ""
-#: doc/classes/Thread.xml:59
+#: doc/classes/Thread.xml:60
msgid "A thread running with higher priority than normally."
msgstr ""
@@ -51012,50 +51706,61 @@ msgid "Returns the [Transform2D] of a tile's shape."
msgstr ""
#: doc/classes/TileSet.xml:481
-msgid "Returns an array of the tile's shapes."
+msgid ""
+"Returns an array of dictionaries describing the tile's shapes.\n"
+"[b]Dictionary structure in the array returned by this method:[/b]\n"
+"[codeblock]\n"
+"{\n"
+" \"autotile_coord\": Vector2,\n"
+" \"one_way\": bool,\n"
+" \"one_way_margin\": int,\n"
+" \"shape\": CollisionShape2D,\n"
+" \"shape_transform\": Transform2D,\n"
+"}\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/TileSet.xml:490
+#: doc/classes/TileSet.xml:500
msgid "Returns the tile's texture."
msgstr ""
-#: doc/classes/TileSet.xml:499
+#: doc/classes/TileSet.xml:509
msgid "Returns the texture offset of the tile."
msgstr ""
-#: doc/classes/TileSet.xml:508
+#: doc/classes/TileSet.xml:518
msgid "Returns the tile's [enum TileMode]."
msgstr ""
-#: doc/classes/TileSet.xml:517
+#: doc/classes/TileSet.xml:527
msgid "Returns the tile's Z index (drawing layer)."
msgstr ""
-#: doc/classes/TileSet.xml:528
+#: doc/classes/TileSet.xml:538
msgid "Sets a light occluder for the tile."
msgstr ""
-#: doc/classes/TileSet.xml:539
+#: doc/classes/TileSet.xml:549
msgid "Sets the tile's material."
msgstr ""
-#: doc/classes/TileSet.xml:550
+#: doc/classes/TileSet.xml:560
msgid "Sets the tile's modulation color."
msgstr ""
-#: doc/classes/TileSet.xml:561
+#: doc/classes/TileSet.xml:571
msgid "Sets the tile's name."
msgstr ""
-#: doc/classes/TileSet.xml:572
+#: doc/classes/TileSet.xml:582
msgid "Sets the tile's navigation polygon."
msgstr ""
-#: doc/classes/TileSet.xml:583
+#: doc/classes/TileSet.xml:593
msgid "Sets an offset for the tile's navigation polygon."
msgstr ""
-#: doc/classes/TileSet.xml:594
+#: doc/classes/TileSet.xml:604
msgid ""
"Sets the tile's normal map texture.\n"
"[b]Note:[/b] Godot expects the normal map to use X+, Y-, and Z+ coordinates. "
@@ -51064,48 +51769,48 @@ msgid ""
"a comparison of normal map coordinates expected by popular engines."
msgstr ""
-#: doc/classes/TileSet.xml:606
+#: doc/classes/TileSet.xml:616
msgid "Sets an offset for the tile's light occluder."
msgstr ""
-#: doc/classes/TileSet.xml:617
+#: doc/classes/TileSet.xml:627
msgid ""
"Sets the tile's sub-region in the texture. This is common in texture atlases."
msgstr ""
-#: doc/classes/TileSet.xml:630
+#: doc/classes/TileSet.xml:640
msgid "Sets a shape for the tile, enabling collision."
msgstr ""
-#: doc/classes/TileSet.xml:643
+#: doc/classes/TileSet.xml:653
msgid "Sets the offset of a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:656
+#: doc/classes/TileSet.xml:666
msgid "Enables one-way collision on a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:681
+#: doc/classes/TileSet.xml:691
msgid "Sets a [Transform2D] on a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:692
+#: doc/classes/TileSet.xml:702
msgid "Sets an array of shapes for the tile, enabling collision."
msgstr ""
-#: doc/classes/TileSet.xml:703
+#: doc/classes/TileSet.xml:713
msgid "Sets the tile's texture."
msgstr ""
-#: doc/classes/TileSet.xml:714
+#: doc/classes/TileSet.xml:724
msgid "Sets the tile's texture offset."
msgstr ""
-#: doc/classes/TileSet.xml:725
+#: doc/classes/TileSet.xml:735
msgid "Sets the tile's [enum TileMode]."
msgstr ""
-#: doc/classes/TileSet.xml:736
+#: doc/classes/TileSet.xml:746
msgid "Sets the tile's drawing index."
msgstr ""
@@ -51116,14 +51821,16 @@ msgstr ""
#: doc/classes/Timer.xml:7
msgid ""
"Counts down a specified interval and emits a signal on reaching 0. Can be "
-"set to repeat or \"one-shot\" mode."
+"set to repeat or \"one-shot\" mode.\n"
+"[b]Note:[/b] To create an one-shot timer without instantiating a node, use "
+"[method SceneTree.create_timer]."
msgstr ""
-#: doc/classes/Timer.xml:16
+#: doc/classes/Timer.xml:17
msgid "Returns [code]true[/code] if the timer is stopped."
msgstr ""
-#: doc/classes/Timer.xml:25
+#: doc/classes/Timer.xml:26
msgid ""
"Starts the timer. Sets [code]wait_time[/code] to [code]time_sec[/code] if "
"[code]time_sec > 0[/code]. This also resets the remaining time to "
@@ -51131,11 +51838,11 @@ msgid ""
"[b]Note:[/b] this method will not resume a paused timer. See [member paused]."
msgstr ""
-#: doc/classes/Timer.xml:33
+#: doc/classes/Timer.xml:34
msgid "Stops the timer."
msgstr ""
-#: doc/classes/Timer.xml:39
+#: doc/classes/Timer.xml:40
msgid ""
"If [code]true[/code], the timer will automatically start when entering the "
"scene tree.\n"
@@ -51143,40 +51850,40 @@ msgid ""
"the timer enters the scene tree and starts."
msgstr ""
-#: doc/classes/Timer.xml:43
+#: doc/classes/Timer.xml:44
msgid ""
"If [code]true[/code], the timer will stop when reaching 0. If [code]false[/"
"code], it will restart."
msgstr ""
-#: doc/classes/Timer.xml:46
+#: doc/classes/Timer.xml:47
msgid ""
"If [code]true[/code], the timer is paused and will not process until it is "
"unpaused again, even if [method start] is called."
msgstr ""
-#: doc/classes/Timer.xml:49
+#: doc/classes/Timer.xml:50
msgid "Processing mode. See [enum TimerProcessMode]."
msgstr ""
-#: doc/classes/Timer.xml:52
+#: doc/classes/Timer.xml:53
msgid ""
"The timer's remaining time in seconds. Returns 0 if the timer is inactive.\n"
"[b]Note:[/b] You cannot set this value. To change the timer's remaining "
"time, use [method start]."
msgstr ""
-#: doc/classes/Timer.xml:56
+#: doc/classes/Timer.xml:57
msgid "Wait time in seconds."
msgstr ""
-#: doc/classes/Timer.xml:68
+#: doc/classes/Timer.xml:69
msgid ""
"Update the timer during the physics step at each frame (fixed framerate "
"processing)."
msgstr ""
-#: doc/classes/Timer.xml:71
+#: doc/classes/Timer.xml:72
msgid "Update the timer during the idle time at each frame."
msgstr ""
@@ -51255,60 +51962,66 @@ msgstr ""
#: doc/classes/Transform.xml:7
msgid ""
-"Represents one or many transformations in 3D space such as translation, "
-"rotation, or scaling. It consists of a [member basis] and an [member "
-"origin]. It is similar to a 3×4 matrix."
+"3×4 matrix (3 rows, 4 columns) used for 3D linear transformations. It can "
+"represent transformations such as translation, rotation, or scaling. It "
+"consists of a [member basis] (first 3 columns) and a [Vector3] for the "
+"[member origin] (last column).\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
msgstr ""
-#: doc/classes/Transform.xml:26
+#: doc/classes/Transform.xml:28
msgid ""
-"Constructs the Transform from four [Vector3]. Each axis corresponds to local "
-"basis vectors (some of which may be scaled)."
+"Constructs a Transform from four [Vector3] values (matrix columns). Each "
+"axis corresponds to local basis vectors (some of which may be scaled)."
msgstr ""
-#: doc/classes/Transform.xml:37
-msgid "Constructs the Transform from a [Basis] and [Vector3]."
+#: doc/classes/Transform.xml:39
+msgid "Constructs a Transform from a [Basis] and [Vector3]."
msgstr ""
-#: doc/classes/Transform.xml:46
-msgid "Constructs the Transform from a [Transform2D]."
+#: doc/classes/Transform.xml:48
+msgid "Constructs a Transform from a [Transform2D]."
msgstr ""
-#: doc/classes/Transform.xml:55
+#: doc/classes/Transform.xml:57
msgid ""
-"Constructs the Transform from a [Quat]. The origin will be Vector3(0, 0, 0)."
+"Constructs a Transform from a [Quat]. The origin will be [code]Vector3(0, 0, "
+"0)[/code]."
msgstr ""
-#: doc/classes/Transform.xml:64
+#: doc/classes/Transform.xml:66
msgid ""
"Constructs the Transform from a [Basis]. The origin will be Vector3(0, 0, 0)."
msgstr ""
-#: doc/classes/Transform.xml:71
+#: doc/classes/Transform.xml:73 doc/classes/Transform2D.xml:51
msgid ""
"Returns the inverse of the transform, under the assumption that the "
"transformation is composed of rotation, scaling and translation."
msgstr ""
-#: doc/classes/Transform.xml:82
-msgid "Interpolates the transform to other Transform by weight amount (0-1)."
+#: doc/classes/Transform.xml:84
+msgid ""
+"Interpolates the transform to other Transform by weight amount (on the range "
+"of 0.0 to 1.0)."
msgstr ""
-#: doc/classes/Transform.xml:89 doc/classes/Transform2D.xml:106
+#: doc/classes/Transform.xml:91
msgid ""
"Returns the inverse of the transform, under the assumption that the "
"transformation is composed of rotation and translation (no scaling, use "
"affine_inverse for transforms with scaling)."
msgstr ""
-#: doc/classes/Transform.xml:98 doc/classes/Transform2D.xml:115
+#: doc/classes/Transform.xml:100 doc/classes/Transform2D.xml:119
msgid ""
"Returns [code]true[/code] if this transform and [code]transform[/code] are "
"approximately equal, by calling [code]is_equal_approx[/code] on each "
"component."
msgstr ""
-#: doc/classes/Transform.xml:109
+#: doc/classes/Transform.xml:111
msgid ""
"Returns a copy of the transform rotated such that its -Z axis points towards "
"the [code]target[/code] position.\n"
@@ -51318,25 +52031,25 @@ msgid ""
"Operations take place in global space."
msgstr ""
-#: doc/classes/Transform.xml:118 doc/classes/Transform2D.xml:122
+#: doc/classes/Transform.xml:120
msgid ""
"Returns the transform with the basis orthogonal (90 degrees), and normalized "
"axis vectors."
msgstr ""
-#: doc/classes/Transform.xml:129
+#: doc/classes/Transform.xml:131
msgid ""
"Rotates the transform around the given axis by the given angle (in radians), "
"using matrix multiplication. The axis must be a normalized vector."
msgstr ""
-#: doc/classes/Transform.xml:138
+#: doc/classes/Transform.xml:140
msgid ""
"Scales basis and origin of the transform by the given scale factor, using "
"matrix multiplication."
msgstr ""
-#: doc/classes/Transform.xml:147 doc/classes/Transform2D.xml:149
+#: doc/classes/Transform.xml:149 doc/classes/Transform2D.xml:153
msgid ""
"Translates the transform by the given offset, relative to the transform's "
"basis vectors.\n"
@@ -51344,152 +52057,162 @@ msgid ""
"multiplication."
msgstr ""
-#: doc/classes/Transform.xml:157
+#: doc/classes/Transform.xml:159
msgid ""
"Transforms the given [Vector3], [Plane], [AABB], or [PackedVector3Array] by "
"this transform."
msgstr ""
-#: doc/classes/Transform.xml:166
+#: doc/classes/Transform.xml:168
msgid ""
"Inverse-transforms the given [Vector3], [Plane], [AABB], or "
"[PackedVector3Array] by this transform."
msgstr ""
-#: doc/classes/Transform.xml:172
+#: doc/classes/Transform.xml:174
msgid ""
"The basis is a matrix containing 3 [Vector3] as its columns: X axis, Y axis, "
"and Z axis. These vectors can be interpreted as the basis vectors of local "
"coordinate system traveling with the object."
msgstr ""
-#: doc/classes/Transform.xml:175
-msgid "The translation offset of the transform."
+#: doc/classes/Transform.xml:177
+msgid ""
+"The translation offset of the transform (column 3, the fourth column). "
+"Equivalent to array index [code]3[/code]."
msgstr ""
-#: doc/classes/Transform.xml:180
+#: doc/classes/Transform.xml:182
msgid ""
"[Transform] with no translation, rotation or scaling applied. When applied "
"to other data structures, [constant IDENTITY] performs no transformation."
msgstr ""
-#: doc/classes/Transform.xml:183
+#: doc/classes/Transform.xml:185
msgid "[Transform] with mirroring applied perpendicular to the YZ plane."
msgstr ""
-#: doc/classes/Transform.xml:186
+#: doc/classes/Transform.xml:188
msgid "[Transform] with mirroring applied perpendicular to the XZ plane."
msgstr ""
-#: doc/classes/Transform.xml:189
+#: doc/classes/Transform.xml:191
msgid "[Transform] with mirroring applied perpendicular to the XY plane."
msgstr ""
#: doc/classes/Transform2D.xml:4
-msgid "2D transformation (3×2 matrix)."
+msgid "2D transformation (2×3 matrix)."
msgstr ""
#: doc/classes/Transform2D.xml:7
msgid ""
-"Represents one or many transformations in 2D space such as translation, "
-"rotation, or scaling. It consists of two [member x] and [member y] "
-"[Vector2]s and an [member origin]. It is similar to a 3×2 matrix."
+"2×3 matrix (2 rows, 3 columns) used for 2D linear transformations. It can "
+"represent transformations such as translation, rotation, or scaling. It "
+"consists of a three [Vector2] values: [member x], [member y], and the "
+"[member origin].\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
msgstr ""
-#: doc/classes/Transform2D.xml:18
+#: doc/classes/Transform2D.xml:20
msgid "Constructs the transform from a 3D [Transform]."
msgstr ""
-#: doc/classes/Transform2D.xml:31
+#: doc/classes/Transform2D.xml:33
msgid ""
-"Constructs the transform from 3 [Vector2]s representing x, y, and origin."
+"Constructs the transform from 3 [Vector2] values representing [member x], "
+"[member y], and the [member origin] (the three column vectors)."
msgstr ""
-#: doc/classes/Transform2D.xml:42
+#: doc/classes/Transform2D.xml:44
msgid "Constructs the transform from a given angle (in radians) and position."
msgstr ""
-#: doc/classes/Transform2D.xml:58
-msgid "Transforms the given vector by this transform's basis (no translation)."
+#: doc/classes/Transform2D.xml:60
+msgid ""
+"Returns a vector transformed (multiplied) by the basis matrix.\n"
+"This method does not account for translation (the origin vector)."
msgstr ""
-#: doc/classes/Transform2D.xml:67
+#: doc/classes/Transform2D.xml:70
msgid ""
-"Inverse-transforms the given vector by this transform's basis (no "
-"translation)."
+"Returns a vector transformed (multiplied) by the inverse basis matrix.\n"
+"This method does not account for translation (the origin vector)."
msgstr ""
-#: doc/classes/Transform2D.xml:74
+#: doc/classes/Transform2D.xml:78
msgid "Returns the transform's origin (translation)."
msgstr ""
-#: doc/classes/Transform2D.xml:81
+#: doc/classes/Transform2D.xml:85
msgid "Returns the transform's rotation (in radians)."
msgstr ""
-#: doc/classes/Transform2D.xml:88
+#: doc/classes/Transform2D.xml:92
msgid "Returns the scale."
msgstr ""
-#: doc/classes/Transform2D.xml:99
+#: doc/classes/Transform2D.xml:103
msgid ""
"Returns a transform interpolated between this transform and another by a "
-"given weight (0-1)."
+"given weight (on the range of 0.0 to 1.0)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:110
+msgid ""
+"Returns the inverse of the transform, under the assumption that the "
+"transformation is composed of rotation and translation (no scaling, use "
+"[method affine_inverse] for transforms with scaling)."
msgstr ""
-#: doc/classes/Transform2D.xml:131
+#: doc/classes/Transform2D.xml:126
+msgid ""
+"Returns the transform with the basis orthogonal (90 degrees), and normalized "
+"axis vectors (scale of 1 or -1)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:135
msgid ""
"Rotates the transform by the given angle (in radians), using matrix "
"multiplication."
msgstr ""
-#: doc/classes/Transform2D.xml:140
+#: doc/classes/Transform2D.xml:144
msgid ""
"Scales the transform by the given scale factor, using matrix multiplication."
msgstr ""
-#: doc/classes/Transform2D.xml:159
+#: doc/classes/Transform2D.xml:163
msgid ""
"Transforms the given [Vector2], [Rect2], or [PackedVector2Array] by this "
"transform."
msgstr ""
-#: doc/classes/Transform2D.xml:168
+#: doc/classes/Transform2D.xml:172
msgid ""
"Inverse-transforms the given [Vector2], [Rect2], or [PackedVector2Array] by "
"this transform."
msgstr ""
-#: doc/classes/Transform2D.xml:174
-msgid "The transform's translation offset."
-msgstr ""
-
-#: doc/classes/Transform2D.xml:177
-msgid ""
-"The X axis of 2×2 basis matrix containing 2 [Vector2]s as its columns: X "
-"axis and Y axis. These vectors can be interpreted as the basis vectors of "
-"local coordinate system traveling with the object."
-msgstr ""
-
-#: doc/classes/Transform2D.xml:180
+#: doc/classes/Transform2D.xml:178
msgid ""
-"The Y axis of 2×2 basis matrix containing 2 [Vector2]s as its columns: X "
-"axis and Y axis. These vectors can be interpreted as the basis vectors of "
-"local coordinate system traveling with the object."
+"The origin vector (column 2, the third column). Equivalent to array index "
+"[code]2[/code]. The origin vector represents translation."
msgstr ""
-#: doc/classes/Transform2D.xml:185
+#: doc/classes/Transform2D.xml:189
msgid ""
-"[Transform2D] with no translation, rotation or scaling applied. When applied "
-"to other data structures, [constant IDENTITY] performs no transformation."
+"The identity [Transform2D] with no translation, rotation or scaling applied. "
+"When applied to other data structures, [constant IDENTITY] performs no "
+"transformation."
msgstr ""
-#: doc/classes/Transform2D.xml:188
-msgid "[Transform2D] with mirroring applied parallel to the X axis."
+#: doc/classes/Transform2D.xml:192
+msgid "The [Transform2D] that will flip something along the X axis."
msgstr ""
-#: doc/classes/Transform2D.xml:191
-msgid "[Transform2D] with mirroring applied parallel to the Y axis."
+#: doc/classes/Transform2D.xml:195
+msgid "The [Transform2D] that will flip something along the Y axis."
msgstr ""
#: doc/classes/Translation.xml:4
@@ -52153,7 +52876,8 @@ msgid "Returns the column's cell mode."
msgstr ""
#: doc/classes/TreeItem.xml:121
-msgid "Returns the TreeItem's child items."
+msgid ""
+"Returns the TreeItem's first child item or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:130
@@ -52185,28 +52909,32 @@ msgid "Returns the icon [Texture2D] region as [Rect2]."
msgstr ""
#: doc/classes/TreeItem.xml:199
-msgid "Returns the next TreeItem in the tree."
+msgid ""
+"Returns the next TreeItem in the tree or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:208
msgid ""
-"Returns the next visible TreeItem in the tree.\n"
+"Returns the next visible TreeItem in the tree or a null object if there is "
+"none.\n"
"If [code]wrap[/code] is enabled, the method will wrap around to the first "
"visible element in the tree when called on the last visible element, "
"otherwise it returns [code]null[/code]."
msgstr ""
#: doc/classes/TreeItem.xml:216
-msgid "Returns the parent TreeItem."
+msgid "Returns the parent TreeItem or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:223
-msgid "Returns the previous TreeItem in the tree."
+msgid ""
+"Returns the previous TreeItem in the tree or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:232
msgid ""
-"Returns the previous visible TreeItem in the tree.\n"
+"Returns the previous visible TreeItem in the tree or a null object if there "
+"is none.\n"
"If [code]wrap[/code] is enabled, the method will wrap around to the last "
"visible element in the tree when called on the first visible element, "
"otherwise it returns [code]null[/code]."
@@ -52716,6 +53444,10 @@ msgid ""
"A simple server that opens a UDP socket and returns connected "
"[PacketPeerUDP] upon receiving new packets. See also [method PacketPeerUDP."
"connect_to_host].\n"
+"After starting the server ([method listen]), you will need to [method poll] "
+"it at regular intervals (e.g. inside [method Node._process]) for it to "
+"process new packets, delivering them to the appropriate [PacketPeerUDP], and "
+"taking new connections.\n"
"Below a small example of how it can be used:\n"
"[codeblock]\n"
"# server.gd\n"
@@ -52728,6 +53460,7 @@ msgid ""
" server.listen(4242)\n"
"\n"
"func _process(delta):\n"
+" server.poll() # Important!\n"
" if server.is_connection_available():\n"
" var peer : PacketPeerUDP = server.take_connection()\n"
" var pkt = peer.get_packet()\n"
@@ -52763,35 +53496,55 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/UDPServer.xml:60
+#: doc/classes/UDPServer.xml:62
msgid ""
-"Returns [code]true[/code] if a packet with a new address/port combination is "
-"received on the socket."
+"Returns [code]true[/code] if a packet with a new address/port combination "
+"was received on the socket."
msgstr ""
-#: doc/classes/UDPServer.xml:67
+#: doc/classes/UDPServer.xml:69
msgid ""
"Returns [code]true[/code] if the socket is open and listening on a port."
msgstr ""
-#: doc/classes/UDPServer.xml:78
+#: doc/classes/UDPServer.xml:80
msgid ""
"Starts the server by opening a UDP socket listening on the given port. You "
"can optionally specify a [code]bind_address[/code] to only listen for "
"packets sent to that address. See also [method PacketPeerUDP.listen]."
msgstr ""
-#: doc/classes/UDPServer.xml:85
+#: doc/classes/UDPServer.xml:87
+msgid ""
+"Call this method at regular intervals (e.g. inside [method Node._process]) "
+"to process new packets. And packet from known address/port pair will be "
+"delivered to the appropriate [PacketPeerUDP], any packet received from an "
+"unknown address/port pair will be added as a pending connection (see [method "
+"is_connection_available], [method take_connection]). The maximum number of "
+"pending connection is defined via [member max_pending_connections]."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:94
+msgid ""
+"Stops the server, closing the UDP socket if open. Will close all connected "
+"[PacketPeerUDP] accepted via [method take_connection] (remote peers will not "
+"be notified)."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:101
msgid ""
-"Stops the server, closing the UDP socket if open. Will not disconnect any "
-"connected [PacketPeerUDP]."
+"Returns the first pending connection (connected to the appropriate address/"
+"port). Will return [code]null[/code] if no new connection is available. See "
+"also [method is_connection_available], [method PacketPeerUDP."
+"connect_to_host]."
msgstr ""
-#: doc/classes/UDPServer.xml:92
+#: doc/classes/UDPServer.xml:107
msgid ""
-"Returns a [PacketPeerUDP] connected to the address/port combination of the "
-"first packet in queue. Will return [code]null[/code] if no packet is in "
-"queue. See also [method PacketPeerUDP.connect_to_host]."
+"Define the maximum number of pending connections, during [method poll], any "
+"new pending connection exceeding that value will be automatically dropped. "
+"Setting this value to [code]0[/code] effectively prevents any new pending "
+"connection to be accepted (e.g. when all your players have connected)."
msgstr ""
#: doc/classes/UndoRedo.xml:4
@@ -53432,24 +54185,26 @@ msgstr ""
#: doc/classes/Vector2.xml:46
msgid ""
-"Returns the vector's angle in radians with respect to the X axis, or [code]"
-"(1, 0)[/code] vector.\n"
+"Returns this vector's angle with respect to the X axis, or [code](1, 0)[/"
+"code] vector, in radians.\n"
"Equivalent to the result of [method @GDScript.atan2] when called with the "
-"vector's [member x] and [member y] as parameters: [code]atan2(x, y)[/code]."
+"vector's [member y] and [member x] as parameters: [code]atan2(y, x)[/code]."
msgstr ""
#: doc/classes/Vector2.xml:56
-msgid "Returns the angle in radians between the two vectors."
+msgid "Returns the angle to the given vector, in radians."
msgstr ""
#: doc/classes/Vector2.xml:65
msgid ""
-"Returns the angle in radians between the line connecting the two points and "
-"the X coordinate."
+"Returns the angle between the line connecting the two points and the X axis, "
+"in radians."
msgstr ""
-#: doc/classes/Vector2.xml:72 doc/classes/Vector2i.xml:46
-msgid "Returns the ratio of [member x] to [member y]."
+#: doc/classes/Vector2.xml:72
+msgid ""
+"Returns the aspect ratio of this vector, the ratio of [member x] to [member "
+"y]."
msgstr ""
#: doc/classes/Vector2.xml:81 doc/classes/Vector3.xml:59
@@ -53458,24 +54213,27 @@ msgid ""
msgstr ""
#: doc/classes/Vector2.xml:88
-msgid "Returns the vector with all components rounded up."
+msgid ""
+"Returns the vector with all components rounded up (towards positive "
+"infinity)."
msgstr ""
#: doc/classes/Vector2.xml:97
-msgid "Returns the vector with a maximum length."
+msgid ""
+"Returns the vector with a maximum length by limiting its length to "
+"[code]length[/code]."
msgstr ""
#: doc/classes/Vector2.xml:106
-msgid ""
-"Returns the 2-dimensional analog of the cross product with the given vector."
+msgid "Returns the cross product of this vector and [code]with[/code]."
msgstr ""
#: doc/classes/Vector2.xml:121
msgid ""
"Cubically interpolates between this vector and [code]b[/code] using "
"[code]pre_a[/code] and [code]post_b[/code] as handles, and returns the "
-"result at position [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation."
+"result at position [code]t[/code]. [code]t[/code] is on the range of 0.0 to "
+"1.0, representing the amount of interpolation."
msgstr ""
#: doc/classes/Vector2.xml:130 doc/classes/Vector3.xml:99
@@ -53483,182 +54241,198 @@ msgid ""
"Returns the normalized vector pointing from this vector to [code]b[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:139
+#: doc/classes/Vector2.xml:139 doc/classes/Vector3.xml:108
msgid ""
-"Returns the squared distance to vector [code]b[/code]. Prefer this function "
-"over [method distance_to] if you need to sort vectors or need the squared "
-"distance for some formula."
+"Returns the squared distance between this vector and [code]b[/code].\n"
+"This method runs faster than [method distance_to], so prefer it if you need "
+"to compare vectors or need the squared distance for some formula."
msgstr ""
-#: doc/classes/Vector2.xml:148
-msgid "Returns the distance to vector [code]b[/code]."
+#: doc/classes/Vector2.xml:149
+msgid "Returns the distance between this vector and [code]to[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:157
-msgid "Returns the dot product with vector [code]b[/code]."
+#: doc/classes/Vector2.xml:158
+msgid ""
+"Returns the dot product of this vector and [code]with[/code]. This can be "
+"used to compare the angle between two vectors. For example, this can be used "
+"to determine whether an enemy is facing the player.\n"
+"The dot product will be [code]0[/code] for a straight angle (90 degrees), "
+"greater than 0 for angles narrower than 90 degrees and lower than 0 for "
+"angles wider than 90 degrees.\n"
+"When using unit (normalized) vectors, the result will always be between "
+"[code]-1.0[/code] (180 degree angle) when the vectors are facing opposite "
+"directions, and [code]1.0[/code] (0 degree angle) when the vectors are "
+"aligned.\n"
+"[b]Note:[/b] [code]a.dot(b)[/code] is equivalent to [code]b.dot(a)[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:164
-msgid "Returns the vector with all components rounded down."
+#: doc/classes/Vector2.xml:168
+msgid ""
+"Returns the vector with all components rounded down (towards negative "
+"infinity)."
msgstr ""
-#: doc/classes/Vector2.xml:173 doc/classes/Vector3.xml:149
+#: doc/classes/Vector2.xml:177 doc/classes/Vector3.xml:153
msgid ""
"Returns [code]true[/code] if this vector and [code]v[/code] are "
"approximately equal, by running [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/Vector2.xml:180 doc/classes/Vector3.xml:156
-msgid "Returns [code]true[/code] if the vector is normalized."
+#: doc/classes/Vector2.xml:184 doc/classes/Vector3.xml:160
+msgid ""
+"Returns [code]true[/code] if the vector is normalized, and false otherwise."
msgstr ""
-#: doc/classes/Vector2.xml:187 doc/classes/Vector3.xml:163
-msgid "Returns the vector's length."
+#: doc/classes/Vector2.xml:191 doc/classes/Vector3.xml:167
+msgid "Returns the length (magnitude) of this vector."
msgstr ""
-#: doc/classes/Vector2.xml:194
+#: doc/classes/Vector2.xml:198 doc/classes/Vector3.xml:174
msgid ""
-"Returns the vector's length squared. Prefer this method over [method length] "
-"if you need to sort vectors or need the squared length for some formula."
+"Returns the squared length (squared magnitude) of this vector.\n"
+"This method runs faster than [method length], so prefer it if you need to "
+"compare vectors or need the squared distance for some formula."
msgstr ""
-#: doc/classes/Vector2.xml:205
+#: doc/classes/Vector2.xml:210 doc/classes/Vector3.xml:186
msgid ""
"Returns the result of the linear interpolation between this vector and "
-"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation."
+"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is on the range of "
+"0.0 to 1.0, representing the amount of interpolation."
msgstr ""
-#: doc/classes/Vector2.xml:216 doc/classes/Vector3.xml:206
+#: doc/classes/Vector2.xml:221
msgid ""
"Moves the vector toward [code]to[/code] by the fixed [code]delta[/code] "
"amount."
msgstr ""
-#: doc/classes/Vector2.xml:223 doc/classes/Vector3.xml:213
+#: doc/classes/Vector2.xml:228 doc/classes/Vector3.xml:218
msgid ""
"Returns the vector scaled to unit length. Equivalent to [code]v / v.length()"
"[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:232 doc/classes/Vector3.xml:231
+#: doc/classes/Vector2.xml:237 doc/classes/Vector3.xml:236
msgid ""
-"Returns a vector composed of the [code]fposmod[/code] of this vector's "
+"Returns a vector composed of the [method @GDScript.fposmod] of this vector's "
"components and [code]mod[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:241 doc/classes/Vector3.xml:240
+#: doc/classes/Vector2.xml:246 doc/classes/Vector3.xml:245
msgid ""
-"Returns a vector composed of the [code]fposmod[/code] of this vector's "
+"Returns a vector composed of the [method @GDScript.fposmod] of this vector's "
"components and [code]modv[/code]'s components."
msgstr ""
-#: doc/classes/Vector2.xml:250 doc/classes/Vector3.xml:249
+#: doc/classes/Vector2.xml:255
msgid "Returns the vector projected onto the vector [code]b[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:259 doc/classes/Vector3.xml:258
+#: doc/classes/Vector2.xml:264
msgid "Returns the vector reflected from a plane defined by the given normal."
msgstr ""
-#: doc/classes/Vector2.xml:268
+#: doc/classes/Vector2.xml:273
msgid ""
"Returns the vector rotated by [code]phi[/code] radians. See also [method "
"@GDScript.deg2rad]."
msgstr ""
-#: doc/classes/Vector2.xml:275 doc/classes/Vector3.xml:276
+#: doc/classes/Vector2.xml:280
msgid ""
"Returns the vector with all components rounded to the nearest integer, with "
"halfway cases rounded away from zero."
msgstr ""
-#: doc/classes/Vector2.xml:282 doc/classes/Vector2i.xml:53
-#: doc/classes/Vector3.xml:283 doc/classes/Vector3i.xml:55
+#: doc/classes/Vector2.xml:287
msgid ""
"Returns the vector with each component set to one or negative one, depending "
-"on the signs of the components."
+"on the signs of the components, or zero if the component is zero, by calling "
+"[method @GDScript.sign] on each component."
msgstr ""
-#: doc/classes/Vector2.xml:293 doc/classes/Vector3.xml:294
+#: doc/classes/Vector2.xml:298 doc/classes/Vector3.xml:299
msgid ""
"Returns the result of spherical linear interpolation between this vector and "
-"[code]b[/code], by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation.\n"
+"[code]b[/code], by amount [code]t[/code]. [code]t[/code] is on the range of "
+"0.0 to 1.0, representing the amount of interpolation.\n"
"[b]Note:[/b] Both vectors must be normalized."
msgstr ""
-#: doc/classes/Vector2.xml:303 doc/classes/Vector3.xml:304
-msgid ""
-"Returns the component of the vector along a plane defined by the given "
-"normal."
+#: doc/classes/Vector2.xml:308 doc/classes/Vector3.xml:309
+msgid "Returns this vector slid along a plane defined by the given normal."
msgstr ""
-#: doc/classes/Vector2.xml:312 doc/classes/Vector3.xml:313
-msgid "Returns the vector snapped to a grid with the given size."
+#: doc/classes/Vector2.xml:317 doc/classes/Vector3.xml:318
+msgid ""
+"Returns this vector with each component snapped to the nearest multiple of "
+"[code]step[/code]. This can also be used to round to an arbitrary number of "
+"decimals."
msgstr ""
-#: doc/classes/Vector2.xml:319
-msgid "Returns a perpendicular vector."
+#: doc/classes/Vector2.xml:324
+msgid ""
+"Returns a perpendicular vector rotated 90 degrees counter-clockwise compared "
+"to the original, with the same length."
msgstr ""
-#: doc/classes/Vector2.xml:325 doc/classes/Vector2i.xml:59
-#: doc/classes/Vector3.xml:326 doc/classes/Vector3i.xml:61
+#: doc/classes/Vector2.xml:330 doc/classes/Vector2i.xml:59
+#: doc/classes/Vector3.xml:332 doc/classes/Vector3i.xml:61
msgid ""
"The vector's X component. Also accessible by using the index position [code]"
"[0][/code]."
msgstr ""
-#: doc/classes/Vector2.xml:328 doc/classes/Vector2i.xml:62
-#: doc/classes/Vector3.xml:329 doc/classes/Vector3i.xml:64
+#: doc/classes/Vector2.xml:333 doc/classes/Vector2i.xml:62
+#: doc/classes/Vector3.xml:335 doc/classes/Vector3i.xml:64
msgid ""
"The vector's Y component. Also accessible by using the index position [code]"
"[1][/code]."
msgstr ""
-#: doc/classes/Vector2.xml:333 doc/classes/Vector2i.xml:67
+#: doc/classes/Vector2.xml:338 doc/classes/Vector2i.xml:67
#: doc/classes/Vector3i.xml:72
msgid "Enumerated value for the X axis."
msgstr ""
-#: doc/classes/Vector2.xml:336 doc/classes/Vector2i.xml:70
+#: doc/classes/Vector2.xml:341 doc/classes/Vector2i.xml:70
#: doc/classes/Vector3i.xml:75
msgid "Enumerated value for the Y axis."
msgstr ""
-#: doc/classes/Vector2.xml:339 doc/classes/Vector2i.xml:73
-#: doc/classes/Vector3.xml:346 doc/classes/Vector3i.xml:81
-msgid "Zero vector."
+#: doc/classes/Vector2.xml:344 doc/classes/Vector2i.xml:73
+#: doc/classes/Vector3.xml:352 doc/classes/Vector3i.xml:81
+msgid "Zero vector, a vector with all components set to [code]0[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:342 doc/classes/Vector2i.xml:76
-#: doc/classes/Vector3.xml:349 doc/classes/Vector3i.xml:84
-msgid "One vector."
+#: doc/classes/Vector2.xml:347 doc/classes/Vector2i.xml:76
+#: doc/classes/Vector3.xml:355 doc/classes/Vector3i.xml:84
+msgid "One vector, a vector with all components set to [code]1[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:345 doc/classes/Vector3.xml:352
-msgid "Infinity vector."
+#: doc/classes/Vector2.xml:350 doc/classes/Vector3.xml:358
+msgid ""
+"Infinity vector, a vector with all components set to [constant @GDScript."
+"INF]."
msgstr ""
-#: doc/classes/Vector2.xml:348 doc/classes/Vector2i.xml:79
-#: doc/classes/Vector3.xml:355 doc/classes/Vector3i.xml:87
-msgid "Left unit vector."
+#: doc/classes/Vector2.xml:353 doc/classes/Vector2i.xml:79
+msgid "Left unit vector. Represents the direction of left."
msgstr ""
-#: doc/classes/Vector2.xml:351 doc/classes/Vector2i.xml:82
-#: doc/classes/Vector3.xml:358 doc/classes/Vector3i.xml:90
-msgid "Right unit vector."
+#: doc/classes/Vector2.xml:356 doc/classes/Vector2i.xml:82
+msgid "Right unit vector. Represents the direction of right."
msgstr ""
-#: doc/classes/Vector2.xml:354 doc/classes/Vector2i.xml:85
-#: doc/classes/Vector3.xml:361 doc/classes/Vector3i.xml:93
-msgid "Up unit vector."
+#: doc/classes/Vector2.xml:359 doc/classes/Vector2i.xml:85
+msgid "Up unit vector. Y is down in 2D, so this vector points -Y."
msgstr ""
-#: doc/classes/Vector2.xml:357 doc/classes/Vector2i.xml:88
-#: doc/classes/Vector3.xml:364 doc/classes/Vector3i.xml:96
-msgid "Down unit vector."
+#: doc/classes/Vector2.xml:362 doc/classes/Vector2i.xml:88
+msgid "Down unit vector. Y is down in 2D, so this vector points +Y."
msgstr ""
#: doc/classes/Vector2i.xml:4
@@ -53687,6 +54461,16 @@ msgid ""
"will be truncated."
msgstr ""
+#: doc/classes/Vector2i.xml:46
+msgid "Returns the ratio of [member x] to [member y]."
+msgstr ""
+
+#: doc/classes/Vector2i.xml:53 doc/classes/Vector3i.xml:55
+msgid ""
+"Returns the vector with each component set to one or negative one, depending "
+"on the signs of the components."
+msgstr ""
+
#: doc/classes/Vector3.xml:4
msgid "Vector used for 3D math using floating point coordinates."
msgstr ""
@@ -53711,120 +54495,170 @@ msgid "Returns a [Vector3] with the given components."
msgstr ""
#: doc/classes/Vector3.xml:50
-msgid "Returns the minimum angle to the given vector."
+msgid "Returns the minimum angle to the given vector, in radians."
msgstr ""
#: doc/classes/Vector3.xml:66
-msgid "Returns a new vector with all components rounded up."
+msgid ""
+"Returns a new vector with all components rounded up (towards positive "
+"infinity)."
msgstr ""
#: doc/classes/Vector3.xml:75
-msgid "Returns the cross product with [code]b[/code]."
+msgid "Returns the cross product of this vector and [code]b[/code]."
msgstr ""
#: doc/classes/Vector3.xml:90
msgid ""
"Performs a cubic interpolation between vectors [code]pre_a[/code], [code]a[/"
"code], [code]b[/code], [code]post_b[/code] ([code]a[/code] is current), by "
-"the given amount [code]t[/code]. [code]t[/code] is in the range of [code]0.0 "
-"- 1.0[/code], representing the amount of interpolation."
-msgstr ""
-
-#: doc/classes/Vector3.xml:108
-msgid ""
-"Returns the squared distance to [code]b[/code]. Prefer this function over "
-"[method distance_to] if you need to sort vectors or need the squared "
-"distance for some formula."
+"the given amount [code]t[/code]. [code]t[/code] is on the range of 0.0 to "
+"1.0, representing the amount of interpolation."
msgstr ""
-#: doc/classes/Vector3.xml:117
-msgid "Returns the distance to [code]b[/code]."
+#: doc/classes/Vector3.xml:118
+msgid "Returns the distance between this vector and [code]b[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:126
-msgid "Returns the dot product with [code]b[/code]."
+#: doc/classes/Vector3.xml:127
+msgid ""
+"Returns the dot product of this vector and [code]b[/code]. This can be used "
+"to compare the angle between two vectors. For example, this can be used to "
+"determine whether an enemy is facing the player.\n"
+"The dot product will be [code]0[/code] for a straight angle (90 degrees), "
+"greater than 0 for angles narrower than 90 degrees and lower than 0 for "
+"angles wider than 90 degrees.\n"
+"When using unit (normalized) vectors, the result will always be between "
+"[code]-1.0[/code] (180 degree angle) when the vectors are facing opposite "
+"directions, and [code]1.0[/code] (0 degree angle) when the vectors are "
+"aligned.\n"
+"[b]Note:[/b] [code]a.dot(b)[/code] is equivalent to [code]b.dot(a)[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:133
-msgid "Returns a new vector with all components rounded down."
+#: doc/classes/Vector3.xml:137
+msgid ""
+"Returns a new vector with all components rounded down (towards negative "
+"infinity)."
msgstr ""
-#: doc/classes/Vector3.xml:140
+#: doc/classes/Vector3.xml:144
msgid ""
"Returns the inverse of the vector. This is the same as [code]Vector3( 1.0 / "
"v.x, 1.0 / v.y, 1.0 / v.z )[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:170
+#: doc/classes/Vector3.xml:193 doc/classes/Vector3i.xml:41
msgid ""
-"Returns the vector's length squared. Prefer this function over [method "
-"length] if you need to sort vectors or need the squared length for some "
-"formula."
+"Returns the axis of the vector's largest value. See [code]AXIS_*[/code] "
+"constants. If all components are equal, this method returns [constant "
+"AXIS_X]."
msgstr ""
-#: doc/classes/Vector3.xml:181
+#: doc/classes/Vector3.xml:200 doc/classes/Vector3i.xml:48
msgid ""
-"Returns the result of the linear interpolation between this vector and "
-"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation.."
+"Returns the axis of the vector's smallest value. See [code]AXIS_*[/code] "
+"constants. If all components are equal, this method returns [constant "
+"AXIS_Z]."
msgstr ""
-#: doc/classes/Vector3.xml:188 doc/classes/Vector3i.xml:41
+#: doc/classes/Vector3.xml:211
msgid ""
-"Returns the axis of the vector's largest value. See [code]AXIS_*[/code] "
-"constants."
+"Moves this vector toward [code]to[/code] by the fixed [code]delta[/code] "
+"amount."
msgstr ""
-#: doc/classes/Vector3.xml:195 doc/classes/Vector3i.xml:48
+#: doc/classes/Vector3.xml:227
+msgid "Returns the outer product with [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:254
+msgid "Returns this vector projected onto another vector [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:263
+msgid "Returns this vector reflected from a plane defined by the given normal."
+msgstr ""
+
+#: doc/classes/Vector3.xml:274
msgid ""
-"Returns the axis of the vector's smallest value. See [code]AXIS_*[/code] "
-"constants."
+"Rotates this vector around a given axis by [code]phi[/code] radians. The "
+"axis must be a normalized vector."
msgstr ""
-#: doc/classes/Vector3.xml:222
-msgid "Returns the outer product with [code]b[/code]."
+#: doc/classes/Vector3.xml:281
+msgid ""
+"Returns this vector with all components rounded to the nearest integer, with "
+"halfway cases rounded away from zero."
msgstr ""
-#: doc/classes/Vector3.xml:269
+#: doc/classes/Vector3.xml:288
msgid ""
-"Rotates the vector around a given axis by [code]phi[/code] radians. The axis "
-"must be a normalized vector."
+"Returns a vector with each component set to one or negative one, depending "
+"on the signs of this vector's components, or zero if the component is zero, "
+"by calling [method @GDScript.sign] on each component."
msgstr ""
-#: doc/classes/Vector3.xml:320
-msgid "Returns a diagonal matrix with the vector as main diagonal."
+#: doc/classes/Vector3.xml:325
+msgid ""
+"Returns a diagonal matrix with the vector as main diagonal.\n"
+"This is equivalent to a Basis with no rotation or shearing and this vector's "
+"components set as the scale."
msgstr ""
-#: doc/classes/Vector3.xml:332 doc/classes/Vector3i.xml:67
+#: doc/classes/Vector3.xml:338 doc/classes/Vector3i.xml:67
msgid ""
"The vector's Z component. Also accessible by using the index position [code]"
"[2][/code]."
msgstr ""
-#: doc/classes/Vector3.xml:337
+#: doc/classes/Vector3.xml:343
msgid ""
"Enumerated value for the X axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:340
+#: doc/classes/Vector3.xml:346
msgid ""
"Enumerated value for the Y axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:343
+#: doc/classes/Vector3.xml:349
msgid ""
"Enumerated value for the Z axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:367 doc/classes/Vector3i.xml:99
-msgid "Forward unit vector."
+#: doc/classes/Vector3.xml:361 doc/classes/Vector3i.xml:87
+msgid ""
+"Left unit vector. Represents the local direction of left, and the global "
+"direction of west."
msgstr ""
-#: doc/classes/Vector3.xml:370 doc/classes/Vector3i.xml:102
-msgid "Back unit vector."
+#: doc/classes/Vector3.xml:364 doc/classes/Vector3i.xml:90
+msgid ""
+"Right unit vector. Represents the local direction of right, and the global "
+"direction of east."
+msgstr ""
+
+#: doc/classes/Vector3.xml:367 doc/classes/Vector3i.xml:93
+msgid "Up unit vector."
+msgstr ""
+
+#: doc/classes/Vector3.xml:370 doc/classes/Vector3i.xml:96
+msgid "Down unit vector."
+msgstr ""
+
+#: doc/classes/Vector3.xml:373 doc/classes/Vector3i.xml:99
+msgid ""
+"Forward unit vector. Represents the local direction of forward, and the "
+"global direction of north."
+msgstr ""
+
+#: doc/classes/Vector3.xml:376 doc/classes/Vector3i.xml:102
+msgid ""
+"Back unit vector. Represents the local direction of back, and the global "
+"direction of south."
msgstr ""
#: doc/classes/Vector3i.xml:4
@@ -53873,10 +54707,14 @@ msgid ""
"directly.\n"
"[b]Note:[/b] The origin point of your VehicleBody3D will determine the "
"center of gravity of your vehicle so it is better to keep this low and move "
-"the [CollisionShape3D] and [MeshInstance3D] upwards."
+"the [CollisionShape3D] and [MeshInstance3D] upwards.\n"
+"[b]Note:[/b] This class has known issues and isn't designed to provide "
+"realistic 3D vehicle physics. If you want advanced vehicle physics, you will "
+"probably have to write your own physics integration using another "
+"[PhysicsBody3D] class."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:16
+#: doc/classes/VehicleBody3D.xml:17
msgid ""
"Slows down the vehicle by applying a braking force. The vehicle is only "
"slowed down if the wheels are in contact with a surface. The force you need "
@@ -53885,7 +54723,7 @@ msgid ""
"a value in the 25 - 30 range for hard braking."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:19
+#: doc/classes/VehicleBody3D.xml:20
msgid ""
"Accelerates the vehicle by applying an engine force. The vehicle is only "
"speed up if the wheels that have [member VehicleWheel3D.use_as_traction] set "
@@ -53898,7 +54736,7 @@ msgid ""
"A negative value will result in the vehicle reversing."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:25
+#: doc/classes/VehicleBody3D.xml:26
msgid ""
"The steering angle for the vehicle. Setting this to a non-zero value will "
"result in the vehicle turning when it's moving. Wheels that have [member "
@@ -53914,25 +54752,29 @@ msgstr ""
msgid ""
"This node needs to be used as a child node of [VehicleBody3D] and simulates "
"the behavior of one of its wheels. This node also acts as a collider to "
-"detect if the wheel is touching a surface."
+"detect if the wheel is touching a surface.\n"
+"[b]Note:[/b] This class has known issues and isn't designed to provide "
+"realistic 3D vehicle physics. If you want advanced vehicle physics, you will "
+"probably have to write your own physics integration using another "
+"[PhysicsBody3D] class."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:16
+#: doc/classes/VehicleWheel3D.xml:17
msgid "Returns the rotational speed of the wheel in revolutions per minute."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:23
+#: doc/classes/VehicleWheel3D.xml:24
msgid ""
"Returns a value between 0.0 and 1.0 that indicates whether this wheel is "
"skidding. 0.0 is skidding (the wheel has lost grip, e.g. icy terrain), 1.0 "
"means not skidding (the wheel has full grip, e.g. dry asphalt road)."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:30
+#: doc/classes/VehicleWheel3D.xml:31
msgid "Returns [code]true[/code] if this wheel is in contact with a surface."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:36
+#: doc/classes/VehicleWheel3D.xml:37
msgid ""
"Slows down the wheel by applying a braking force. The wheel is only slowed "
"down if it is in contact with a surface. The force you need to apply to "
@@ -53941,7 +54783,7 @@ msgid ""
"- 30 range for hard braking."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:39
+#: doc/classes/VehicleWheel3D.xml:40
msgid ""
"The damping applied to the spring when the spring is being compressed. This "
"value should be between 0.0 (no damping) and 1.0. A value of 0.0 means the "
@@ -53949,7 +54791,7 @@ msgid ""
"is around 0.3 for a normal car, 0.5 for a race car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:42
+#: doc/classes/VehicleWheel3D.xml:43
msgid ""
"The damping applied to the spring when relaxing. This value should be "
"between 0.0 (no damping) and 1.0. This value should always be slightly "
@@ -53957,7 +54799,7 @@ msgid ""
"damping_compression] value of 0.3, try a relaxation value of 0.5."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:45
+#: doc/classes/VehicleWheel3D.xml:46
msgid ""
"Accelerates the wheel by applying an engine force. The wheel is only speed "
"up if it is in contact with a surface. The [member RigidBody3D.mass] of the "
@@ -53968,13 +54810,13 @@ msgid ""
"A negative value will result in the wheel reversing."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:50
+#: doc/classes/VehicleWheel3D.xml:51
msgid ""
"The steering angle for the wheel. Setting this to a non-zero value will "
"result in the vehicle turning when it's moving."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:53
+#: doc/classes/VehicleWheel3D.xml:54
msgid ""
"The maximum force the spring can resist. This value should be higher than a "
"quarter of the [member RigidBody3D.mass] of the [VehicleBody3D] or the "
@@ -53982,28 +54824,28 @@ msgid ""
"obtained by a value that is about 3× to 4× this number."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:56
+#: doc/classes/VehicleWheel3D.xml:57
msgid ""
"This value defines the stiffness of the suspension. Use a value lower than "
"50 for an off-road car, a value between 50 and 100 for a race car and try "
"something around 200 for something like a Formula 1 car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:59
+#: doc/classes/VehicleWheel3D.xml:60
msgid ""
"This is the distance the suspension can travel. As Godot units are "
"equivalent to meters, keep this setting relatively low. Try a value between "
"0.1 and 0.3 depending on the type of car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:62
+#: doc/classes/VehicleWheel3D.xml:63
msgid ""
"If [code]true[/code], this wheel will be turned when the car steers. This "
"value is used in conjunction with [member VehicleBody3D.steering] and "
"ignored if you are using the per-wheel [member steering] value instead."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:65
+#: doc/classes/VehicleWheel3D.xml:66
msgid ""
"If [code]true[/code], this wheel transfers engine force to the ground to "
"propel the vehicle forward. This value is used in conjunction with [member "
@@ -54011,7 +54853,7 @@ msgid ""
"[member engine_force] value instead."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:68
+#: doc/classes/VehicleWheel3D.xml:69
msgid ""
"This determines how much grip this wheel has. It is combined with the "
"friction setting of the surface the wheel is in contact with. 0.0 means no "
@@ -54021,11 +54863,11 @@ msgid ""
"It's best to set this to 1.0 when starting out."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:72
+#: doc/classes/VehicleWheel3D.xml:73
msgid "The radius of the wheel in meters."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:75
+#: doc/classes/VehicleWheel3D.xml:76
msgid ""
"This is the distance in meters the wheel is lowered from its origin point. "
"Don't set this to 0.0 and move the wheel into position, instead move the "
@@ -54034,7 +54876,7 @@ msgid ""
"down to the position it should be in when the car is in rest."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:78
+#: doc/classes/VehicleWheel3D.xml:79
msgid ""
"This value affects the roll of your vehicle. If set to 1.0 for all wheels, "
"your vehicle will be prone to rolling over, while a value of 0.0 will resist "
@@ -54512,7 +55354,7 @@ msgstr ""
#: doc/classes/Viewport.xml:318
msgid ""
"Use fast approximate antialiasing. FXAA is a popular screen-space "
-"antialising method, which is fast but will make the image look blurry, "
+"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."
msgstr ""
@@ -54565,24 +55407,24 @@ msgid ""
"your [WorldEnvironment]."
msgstr ""
-#: doc/classes/Viewport.xml:384
+#: doc/classes/Viewport.xml:381
msgid ""
"Colors each PSSM split for the [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, and yellow."
msgstr ""
-#: doc/classes/Viewport.xml:387
+#: doc/classes/Viewport.xml:384
msgid ""
"Draws the decal atlas used by [Decal]s and light projector textures in the "
"upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/Viewport.xml:402
+#: doc/classes/Viewport.xml:405
msgid "Max value for [enum DefaultCanvasItemTextureFilter] enum."
msgstr ""
-#: doc/classes/Viewport.xml:414
+#: doc/classes/Viewport.xml:417
msgid "Max value for [enum DefaultCanvasItemTextureRepeat] enum."
msgstr ""
@@ -54613,82 +55455,84 @@ msgid ""
"The VisibilityEnabler2D will disable [RigidBody2D], [AnimationPlayer], and "
"other nodes when they are not visible. It will only affect nodes with the "
"same root node as the VisibilityEnabler2D, and the root node itself.\n"
+"If you just want to receive notifications, use [VisibilityNotifier2D] "
+"instead.\n"
"[b]Note:[/b] For performance reasons, VisibilityEnabler2D uses an "
"approximate heuristic with precision determined by [member ProjectSettings."
-"world/2d/cell_size]. If you need exact visibility checking, use another "
+"world/2d/cell_size]. If you need precise visibility checking, use another "
"method such as adding an [Area2D] node as a child of a [Camera2D] node.\n"
"[b]Note:[/b] VisibilityEnabler2D will not affect nodes added after scene "
"initialization."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:20
-#: doc/classes/VisibilityEnabler3D.xml:20
+#: doc/classes/VisibilityEnabler2D.xml:21
+#: doc/classes/VisibilityEnabler3D.xml:21
msgid ""
"Returns whether the enabler identified by given [enum Enabler] constant is "
"active."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:31
-#: doc/classes/VisibilityEnabler3D.xml:31
+#: doc/classes/VisibilityEnabler2D.xml:32
+#: doc/classes/VisibilityEnabler3D.xml:32
msgid ""
"Sets active state of the enabler identified by given [enum Enabler] constant."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:37
+#: doc/classes/VisibilityEnabler2D.xml:38
msgid "If [code]true[/code], [RigidBody2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:40
+#: doc/classes/VisibilityEnabler2D.xml:41
msgid "If [code]true[/code], [AnimatedSprite2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:43
-#: doc/classes/VisibilityEnabler3D.xml:40
+#: doc/classes/VisibilityEnabler2D.xml:44
+#: doc/classes/VisibilityEnabler3D.xml:41
msgid "If [code]true[/code], [AnimationPlayer] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:46
+#: doc/classes/VisibilityEnabler2D.xml:47
msgid "If [code]true[/code], [GPUParticles2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:49
+#: doc/classes/VisibilityEnabler2D.xml:50
msgid ""
"If [code]true[/code], the parent's [method Node._physics_process] will be "
"stopped."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:52
+#: doc/classes/VisibilityEnabler2D.xml:53
msgid ""
"If [code]true[/code], the parent's [method Node._process] will be stopped."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:57
-#: doc/classes/VisibilityEnabler3D.xml:45
+#: doc/classes/VisibilityEnabler2D.xml:58
+#: doc/classes/VisibilityEnabler3D.xml:46
msgid "This enabler will pause [AnimationPlayer] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:60
+#: doc/classes/VisibilityEnabler2D.xml:61
msgid "This enabler will freeze [RigidBody2D] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:63
+#: doc/classes/VisibilityEnabler2D.xml:64
msgid "This enabler will stop [GPUParticles2D] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:66
+#: doc/classes/VisibilityEnabler2D.xml:67
msgid "This enabler will stop the parent's _process function."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:69
+#: doc/classes/VisibilityEnabler2D.xml:70
msgid "This enabler will stop the parent's _physics_process function."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:72
+#: doc/classes/VisibilityEnabler2D.xml:73
msgid "This enabler will stop [AnimatedSprite2D] nodes animations."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:75
-#: doc/classes/VisibilityEnabler3D.xml:51
+#: doc/classes/VisibilityEnabler2D.xml:76
+#: doc/classes/VisibilityEnabler3D.xml:52
msgid "Represents the size of the [enum Enabler] enum."
msgstr ""
@@ -54697,19 +55541,23 @@ msgid ""
"The VisibilityEnabler3D will disable [RigidBody3D] and [AnimationPlayer] "
"nodes when they are not visible. It will only affect other nodes within the "
"same scene as the VisibilityEnabler3D itself.\n"
+"If you just want to receive notifications, use [VisibilityNotifier3D] "
+"instead.\n"
"[b]Note:[/b] VisibilityEnabler3D uses an approximate heuristic for "
"performance reasons. It doesn't take walls and other occlusion into account. "
-"If you need exact visibility checking, use another method such as adding an "
-"[Area3D] node as a child of a [Camera3D] node.\n"
+"The heuristic is an implementation detail and may change in future versions. "
+"If you need precise visibility checking, use another method such as adding "
+"an [Area3D] node as a child of a [Camera3D] node and/or [method Vector3."
+"dot].\n"
"[b]Note:[/b] VisibilityEnabler3D will not affect nodes added after scene "
"initialization."
msgstr ""
-#: doc/classes/VisibilityEnabler3D.xml:37
+#: doc/classes/VisibilityEnabler3D.xml:38
msgid "If [code]true[/code], [RigidBody3D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler3D.xml:48
+#: doc/classes/VisibilityEnabler3D.xml:49
msgid "This enabler will freeze [RigidBody3D] nodes."
msgstr ""
@@ -54723,13 +55571,15 @@ msgid ""
"The VisibilityNotifier2D detects when it is visible on the screen. It also "
"notifies when its bounding rectangle enters or exits the screen or a "
"viewport.\n"
+"If you want nodes to be disabled automatically when they exit the screen, "
+"use [VisibilityEnabler2D] instead.\n"
"[b]Note:[/b] For performance reasons, VisibilityNotifier2D uses an "
"approximate heuristic with precision determined by [member ProjectSettings."
-"world/2d/cell_size]. If you need exact visibility checking, use another "
+"world/2d/cell_size]. If you need precise visibility checking, use another "
"method such as adding an [Area2D] node as a child of a [Camera2D] node."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:17
+#: doc/classes/VisibilityNotifier2D.xml:18
msgid ""
"If [code]true[/code], the bounding rectangle is on the screen.\n"
"[b]Note:[/b] It takes one frame for the node's visibility to be assessed "
@@ -54738,23 +55588,23 @@ msgid ""
"pass."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:24
+#: doc/classes/VisibilityNotifier2D.xml:25
msgid "The VisibilityNotifier2D's bounding rectangle."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:30
+#: doc/classes/VisibilityNotifier2D.xml:31
msgid "Emitted when the VisibilityNotifier2D enters the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:35
+#: doc/classes/VisibilityNotifier2D.xml:36
msgid "Emitted when the VisibilityNotifier2D exits the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:42
+#: doc/classes/VisibilityNotifier2D.xml:43
msgid "Emitted when the VisibilityNotifier2D enters a [Viewport]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:49
+#: doc/classes/VisibilityNotifier2D.xml:50
msgid "Emitted when the VisibilityNotifier2D exits a [Viewport]'s view."
msgstr ""
@@ -54763,13 +55613,16 @@ msgid ""
"The VisibilityNotifier3D detects when it is visible on the screen. It also "
"notifies when its bounding rectangle enters or exits the screen or a "
"[Camera3D]'s view.\n"
+"If you want nodes to be disabled automatically when they exit the screen, "
+"use [VisibilityEnabler3D] instead.\n"
"[b]Note:[/b] VisibilityNotifier3D uses an approximate heuristic for "
"performance reasons. It doesn't take walls and other occlusion into account. "
-"If you need exact visibility checking, use another method such as adding an "
-"[Area3D] node as a child of a [Camera3D] node."
+"The heuristic is an implementation detail and may change in future versions. "
+"If you need precise visibility checking, use another method such as adding "
+"an [Area3D] node as a child of a [Camera3D] node and/or [method Vector3.dot]."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:17
+#: doc/classes/VisibilityNotifier3D.xml:18
msgid ""
"If [code]true[/code], the bounding box is on the screen.\n"
"[b]Note:[/b] It takes one frame for the node's visibility to be assessed "
@@ -54778,23 +55631,23 @@ msgid ""
"pass."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:24
+#: doc/classes/VisibilityNotifier3D.xml:25
msgid "The VisibilityNotifier3D's bounding box."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:32
+#: doc/classes/VisibilityNotifier3D.xml:33
msgid "Emitted when the VisibilityNotifier3D enters a [Camera3D]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:39
+#: doc/classes/VisibilityNotifier3D.xml:40
msgid "Emitted when the VisibilityNotifier3D exits a [Camera3D]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:44
+#: doc/classes/VisibilityNotifier3D.xml:45
msgid "Emitted when the VisibilityNotifier3D enters the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:49
+#: doc/classes/VisibilityNotifier3D.xml:50
msgid "Emitted when the VisibilityNotifier3D exits the screen."
msgstr ""
@@ -55214,6 +56067,12 @@ msgid ""
"exist."
msgstr ""
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:90
+msgid ""
+"Easing function, based on exponent. 0 is constant, 1 is linear, 0 to 1 is "
+"ease-in, 1+ is ease out. Negative values are in-out/out in."
+msgstr ""
+
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:93
msgid ""
"Return the number of digit places after the decimal that the first non-zero "
@@ -56099,6 +56958,7 @@ msgid "A shader for light calculations."
msgstr ""
#: doc/classes/VisualShader.xml:214
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:26
msgid "Represents the size of the [enum Type] enum."
msgstr ""
@@ -56201,6 +57061,24 @@ msgstr ""
msgid "Translated to [code]uniform bool[/code] in the shader language."
msgstr ""
+#: doc/classes/VisualShaderNodeBooleanUniform.xml:15
+#: doc/classes/VisualShaderNodeColorUniform.xml:15
+#: doc/classes/VisualShaderNodeFloatUniform.xml:15
+#: doc/classes/VisualShaderNodeIntUniform.xml:15
+#: doc/classes/VisualShaderNodeTransformUniform.xml:15
+#: doc/classes/VisualShaderNodeVec3Uniform.xml:15
+msgid "A default value to be assigned within the shader."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeBooleanUniform.xml:18
+#: doc/classes/VisualShaderNodeColorUniform.xml:18
+#: doc/classes/VisualShaderNodeFloatUniform.xml:18
+#: doc/classes/VisualShaderNodeIntUniform.xml:18
+#: doc/classes/VisualShaderNodeTransformUniform.xml:18
+#: doc/classes/VisualShaderNodeVec3Uniform.xml:18
+msgid "Enables usage of the [member default_value]."
+msgstr ""
+
#: doc/classes/VisualShaderNodeColorConstant.xml:4
msgid "A [Color] constant to be used within the visual shader graph."
msgstr ""
@@ -57051,49 +57929,49 @@ msgstr ""
msgid "Translated to [code]uniform float[/code] in the shader language."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:15
-#: doc/classes/VisualShaderNodeIntUniform.xml:15
+#: doc/classes/VisualShaderNodeFloatUniform.xml:21
+#: doc/classes/VisualShaderNodeIntUniform.xml:21
msgid ""
"A hint applied to the uniform, which controls the values it can take when "
"set through the inspector."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:18
-#: doc/classes/VisualShaderNodeIntUniform.xml:18
+#: doc/classes/VisualShaderNodeFloatUniform.xml:24
+#: doc/classes/VisualShaderNodeIntUniform.xml:24
msgid ""
"Minimum value for range hints. Used if [member hint] is set to [constant "
"HINT_RANGE] or [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:21
-#: doc/classes/VisualShaderNodeIntUniform.xml:21
+#: doc/classes/VisualShaderNodeFloatUniform.xml:27
+#: doc/classes/VisualShaderNodeIntUniform.xml:27
msgid ""
"Maximum value for range hints. Used if [member hint] is set to [constant "
"HINT_RANGE] or [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:24
-#: doc/classes/VisualShaderNodeIntUniform.xml:24
+#: doc/classes/VisualShaderNodeFloatUniform.xml:30
+#: doc/classes/VisualShaderNodeIntUniform.xml:30
msgid ""
"Step (increment) value for the range hint with step. Used if [member hint] "
"is set to [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:29
-#: doc/classes/VisualShaderNodeIntUniform.xml:29
+#: doc/classes/VisualShaderNodeFloatUniform.xml:35
+#: doc/classes/VisualShaderNodeIntUniform.xml:35
msgid "No hint used."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:32
-#: doc/classes/VisualShaderNodeIntUniform.xml:32
+#: doc/classes/VisualShaderNodeFloatUniform.xml:38
+#: doc/classes/VisualShaderNodeIntUniform.xml:38
msgid ""
"A range hint for scalar value, which limits possible input values between "
"[member min] and [member max]. Translated to [code]hint_range(min, max)[/"
"code] in shader code."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:35
-#: doc/classes/VisualShaderNodeIntUniform.xml:35
+#: doc/classes/VisualShaderNodeFloatUniform.xml:41
+#: doc/classes/VisualShaderNodeIntUniform.xml:41
msgid ""
"A range hint for scalar value with step, which limits possible input values "
"between [member min] and [member max], with a step (increment) of [member "
@@ -57375,6 +58253,26 @@ msgid ""
"results, e.g. division by zero)."
msgstr ""
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:4
+msgid "Performs a fused multiply-add operation within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:7
+msgid "Uses three operands to compute [code](a * b + c)[/code] expression."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:15
+msgid "A type of operands and returned value."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:20
+msgid "A scalar type."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:23
+msgid "A vector type."
+msgstr ""
+
#: doc/classes/VisualShaderNodeOuterProduct.xml:4
msgid ""
"Calculates an outer product of two vectors within the visual shader graph."
@@ -57397,7 +58295,7 @@ msgstr ""
#: doc/classes/VisualShaderNodeOutput.xml:7
msgid ""
"This visual shader node is present in all shader graphs in form of \"Output"
-"\" block with mutliple output value ports."
+"\" block with multiple output value ports."
msgstr ""
#: doc/classes/VisualShaderNodeSample3D.xml:4
@@ -57761,6 +58659,20 @@ msgid ""
"[ShaderMaterial] properties."
msgstr ""
+#: doc/classes/VisualShaderNodeUniformRef.xml:4
+msgid "A reference to an existing [VisualShaderNodeUniform]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniformRef.xml:7
+msgid ""
+"Creating a reference to a [VisualShaderNodeUniform] allows you to reuse this "
+"uniform in different shaders or shader stages easily."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniformRef.xml:15
+msgid "The name of the uniform which this reference points to."
+msgstr ""
+
#: doc/classes/VisualShaderNodeVec3Constant.xml:4
msgid "A [Vector3] constant to be used within the visual shader graph."
msgstr ""
@@ -58091,7 +59003,7 @@ msgstr ""
msgid ""
"Translated to [code]refract(I, N, eta)[/code] in the shader language, where "
"[code]I[/code] is the incident vector, [code]N[/code] is the normal vector "
-"and [code]eta[/code] is the ratio of the indicies of the refraction."
+"and [code]eta[/code] is the ratio of the indices of the refraction."
msgstr ""
#: doc/classes/VisualShaderNodeVectorScalarMix.xml:4
diff --git a/doc/translations/ca.po b/doc/translations/ca.po
index c206f1f08b..caa43cfa3a 100644
--- a/doc/translations/ca.po
+++ b/doc/translations/ca.po
@@ -121,8 +121,8 @@ msgstr ""
#: modules/gdscript/doc_classes/@GDScript.xml:55
msgid ""
-"Returns the absolute value of parameter [code]s[/code] (i.e. unsigned value, "
-"works for integer and float).\n"
+"Returns the absolute value of parameter [code]s[/code] (i.e. positive "
+"value).\n"
"[codeblock]\n"
"# a is 1\n"
"a = abs(-1)\n"
@@ -177,7 +177,7 @@ msgid ""
"angle from an angle's tangent in trigonometry: [code]atan(tan(angle)) == "
"angle[/code].\n"
"The method cannot know in which quadrant the angle should fall. See [method "
-"atan2] if you always want an exact angle.\n"
+"atan2] if you have both [code]y[/code] and [code]x[/code].\n"
"[codeblock]\n"
"a = atan(0.5) # a is 0.463648\n"
"[/codeblock]"
@@ -188,12 +188,13 @@ msgid ""
"Returns the arc tangent of [code]y/x[/code] in radians. Use to get the angle "
"of tangent [code]y/x[/code]. To compute the value, the method takes into "
"account the sign of both arguments in order to determine the quadrant.\n"
+"Important note: The Y coordinate comes first, by convention.\n"
"[codeblock]\n"
"a = atan2(0, -1) # a is 3.141593\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:143
+#: modules/gdscript/doc_classes/@GDScript.xml:144
msgid ""
"Decodes a byte array back to a value. When [code]allow_objects[/code] is "
"[code]true[/code] decoding objects is allowed.\n"
@@ -202,7 +203,7 @@ msgid ""
"avoid potential security threats (remote code execution)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:155
+#: modules/gdscript/doc_classes/@GDScript.xml:156
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:145
msgid ""
"Converts a 2D point expressed in the cartesian coordinate system (X and Y "
@@ -210,17 +211,17 @@ msgid ""
"angle)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:164
+#: modules/gdscript/doc_classes/@GDScript.xml:165
msgid ""
-"Rounds [code]s[/code] upward, returning the smallest integral value that is "
-"not less than [code]s[/code].\n"
+"Rounds [code]s[/code] upward (towards positive infinity), returning the "
+"smallest whole number that is not less than [code]s[/code].\n"
"[codeblock]\n"
"i = ceil(1.45) # i is 2\n"
"i = ceil(1.001) # i is 2\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:177
+#: modules/gdscript/doc_classes/@GDScript.xml:178
msgid ""
"Returns a character as a String of the given Unicode code point (which is "
"compatible with ASCII code).\n"
@@ -232,7 +233,7 @@ msgid ""
"This is the inverse of [method ord]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:196
+#: modules/gdscript/doc_classes/@GDScript.xml:197
msgid ""
"Clamps [code]value[/code] and returns a value not less than [code]min[/code] "
"and not more than [code]max[/code].\n"
@@ -247,7 +248,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:216
+#: modules/gdscript/doc_classes/@GDScript.xml:217
msgid ""
"Converts from a type to another in the best way possible. The [code]type[/"
"code] parameter uses the [enum Variant.Type] values.\n"
@@ -261,7 +262,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:233
+#: modules/gdscript/doc_classes/@GDScript.xml:234
msgid ""
"Returns the cosine of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -271,7 +272,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:247
+#: modules/gdscript/doc_classes/@GDScript.xml:248
msgid ""
"Returns the hyperbolic cosine of [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -280,11 +281,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:260
+#: modules/gdscript/doc_classes/@GDScript.xml:261
msgid "Converts from decibels to linear energy (audio)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:273
+#: modules/gdscript/doc_classes/@GDScript.xml:274
msgid ""
"Returns the result of [code]value[/code] decreased by [code]step[/code] * "
"[code]amount[/code].\n"
@@ -294,42 +295,44 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:286
+#: modules/gdscript/doc_classes/@GDScript.xml:287
msgid ""
-"Returns degrees converted to radians.\n"
+"Converts an angle expressed in degrees to radians.\n"
"[codeblock]\n"
"# r is 3.141593\n"
"r = deg2rad(180)\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:299
+#: modules/gdscript/doc_classes/@GDScript.xml:300
msgid ""
"Converts a previously converted instance to a dictionary, back into an "
"instance. Useful for deserializing."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:310
-#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:90
+#: modules/gdscript/doc_classes/@GDScript.xml:311
msgid ""
-"Easing function, based on exponent. 0 is constant, 1 is linear, 0 to 1 is "
-"ease-in, 1+ is ease out. Negative values are in-out/out in."
+"Easing function, based on exponent. The curve values are: 0 is constant, 1 "
+"is linear, 0 to 1 is ease-in, 1+ is ease out. Negative values are in-out/out "
+"in."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:319
+#: modules/gdscript/doc_classes/@GDScript.xml:320
msgid ""
"The natural exponential function. It raises the mathematical constant [b]e[/"
"b] to the power of [code]s[/code] and returns it.\n"
-"[b]e[/b] has an approximate value of 2.71828.\n"
+"[b]e[/b] has an approximate value of 2.71828, and can be obtained with "
+"[code]exp(1)[/code].\n"
"For exponents to other bases use the method [method pow].\n"
"[codeblock]\n"
"a = exp(2) # Approximately 7.39\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:333
+#: modules/gdscript/doc_classes/@GDScript.xml:334
msgid ""
-"Rounds [code]s[/code] to the closest smaller integer and returns it.\n"
+"Rounds [code]s[/code] downward (towards negative infinity), returning the "
+"largest whole number that is not more than [code]s[/code].\n"
"[codeblock]\n"
"# a is 2.0\n"
"a = floor(2.99)\n"
@@ -340,7 +343,7 @@ msgid ""
"use [code]int(s)[/code] directly."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:351
+#: modules/gdscript/doc_classes/@GDScript.xml:352
msgid ""
"Returns the floating-point remainder of [code]a/b[/code], keeping the sign "
"of [code]a[/code].\n"
@@ -351,7 +354,7 @@ msgid ""
"For the integer remainder operation, use the % operator."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:367
+#: modules/gdscript/doc_classes/@GDScript.xml:368
msgid ""
"Returns the floating-point modulus of [code]a/b[/code] that wraps equally in "
"positive and negative.\n"
@@ -377,7 +380,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:398
+#: modules/gdscript/doc_classes/@GDScript.xml:399
msgid ""
"Returns a reference to the specified function [code]funcname[/code] in the "
"[code]instance[/code] node. As functions aren't first-class objects in "
@@ -392,7 +395,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:412
+#: modules/gdscript/doc_classes/@GDScript.xml:413
msgid ""
"Returns an array of dictionaries representing the current call stack.\n"
"[codeblock]\n"
@@ -412,7 +415,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:435
+#: modules/gdscript/doc_classes/@GDScript.xml:436
msgid ""
"Returns the integer hash of the variable passed.\n"
"[codeblock]\n"
@@ -420,7 +423,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:447
+#: modules/gdscript/doc_classes/@GDScript.xml:448
msgid ""
"Returns the passed instance converted to a dictionary (useful for "
"serializing).\n"
@@ -438,7 +441,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:468
+#: modules/gdscript/doc_classes/@GDScript.xml:469
msgid ""
"Returns the Object that corresponds to [code]instance_id[/code]. All Objects "
"have a unique instance ID.\n"
@@ -451,7 +454,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:488
+#: modules/gdscript/doc_classes/@GDScript.xml:489
msgid ""
"Returns a normalized value considering the given range. This is the opposite "
"of [method lerp].\n"
@@ -465,33 +468,41 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:506
+#: modules/gdscript/doc_classes/@GDScript.xml:507
msgid ""
"Returns [code]true[/code] if [code]a[/code] and [code]b[/code] are "
-"approximately equal to each other."
+"approximately equal to each other.\n"
+"Here, approximately equal means that [code]a[/code] and [code]b[/code] are "
+"within a small internal epsilon of each other, which scales with the "
+"magnitude of the numbers.\n"
+"Infinity values of the same sign are considered equal."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:515
+#: modules/gdscript/doc_classes/@GDScript.xml:518
msgid ""
"Returns whether [code]s[/code] is an infinity value (either positive "
"infinity or negative infinity)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:524
+#: modules/gdscript/doc_classes/@GDScript.xml:527
msgid ""
"Returns whether [code]instance[/code] is a valid object (e.g. has not been "
"deleted from memory)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:533
-msgid "Returns whether [code]s[/code] is a NaN (Not-A-Number) value."
+#: modules/gdscript/doc_classes/@GDScript.xml:536
+msgid ""
+"Returns whether [code]s[/code] is a NaN (\"Not a Number\" or invalid) value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:542
-msgid "Returns [code]true[/code] if [code]s[/code] is zero or almost zero."
+#: modules/gdscript/doc_classes/@GDScript.xml:545
+msgid ""
+"Returns [code]true[/code] if [code]s[/code] is zero or almost zero.\n"
+"This method is faster than using [method is_equal_approx] with one value as "
+"zero."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:551
+#: modules/gdscript/doc_classes/@GDScript.xml:555
msgid ""
"Returns length of Variant [code]var[/code]. Length is the character count of "
"String, element count of Array, size of Dictionary, etc.\n"
@@ -502,7 +513,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:569
+#: modules/gdscript/doc_classes/@GDScript.xml:573
msgid ""
"Linearly interpolates between two values by a normalized value. This is the "
"opposite of [method inverse_lerp].\n"
@@ -517,7 +528,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:588
+#: modules/gdscript/doc_classes/@GDScript.xml:592
msgid ""
"Linearly interpolates between two angles (in radians) by a normalized "
"value.\n"
@@ -534,7 +545,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:607
+#: modules/gdscript/doc_classes/@GDScript.xml:611
msgid ""
"Converts from linear energy to decibels (audio). This can be used to "
"implement volume sliders that behave as expected (since volume isn't "
@@ -550,20 +561,28 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:622
+#: modules/gdscript/doc_classes/@GDScript.xml:626
msgid ""
-"Loads a resource from the filesystem located at [code]path[/code].\n"
+"Loads a resource from the filesystem located at [code]path[/code]. The "
+"resource is loaded on the method call (unless it's referenced already "
+"elsewhere, e.g. in another script or in the scene), which might cause slight "
+"delay, especially when loading scenes. To avoid unnecessary delays when "
+"loading something multiple times, either store the resource in a variable or "
+"use [method preload].\n"
"[b]Note:[/b] Resource paths can be obtained by right-clicking on a resource "
-"in the FileSystem dock and choosing [b]Copy Path[/b].\n"
+"in the FileSystem dock and choosing \"Copy Path\" or by dragging the file "
+"from the FileSystem dock into the script.\n"
"[codeblock]\n"
-"# Load a scene called main located in the root of the project directory.\n"
-"var main = load(\"res://main.tscn\")\n"
+"# Load a scene called main located in the root of the project directory and "
+"cache it in a variable.\n"
+"var main = load(\"res://main.tscn\") # main will contain a PackedScene "
+"resource.\n"
"[/codeblock]\n"
"[b]Important:[/b] The path must be absolute, a local path will just return "
"[code]null[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:637
+#: modules/gdscript/doc_classes/@GDScript.xml:641
msgid ""
"Natural logarithm. The amount of time needed to reach a certain level of "
"continuous growth.\n"
@@ -571,10 +590,12 @@ msgid ""
"calculators, which uses a base 10 logarithm.\n"
"[codeblock]\n"
"log(10) # Returns 2.302585\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] The logarithm of [code]0[/code] returns [code]-inf[/code], "
+"while negative values return [code]-nan[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:652
+#: modules/gdscript/doc_classes/@GDScript.xml:657
msgid ""
"Returns the maximum of two values.\n"
"[codeblock]\n"
@@ -583,7 +604,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:667
+#: modules/gdscript/doc_classes/@GDScript.xml:672
msgid ""
"Returns the minimum of two values.\n"
"[codeblock]\n"
@@ -592,27 +613,39 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:684
+#: modules/gdscript/doc_classes/@GDScript.xml:689
msgid ""
"Moves [code]from[/code] toward [code]to[/code] by the [code]delta[/code] "
"value.\n"
"Use a negative [code]delta[/code] value to move away.\n"
"[codeblock]\n"
+"move_toward(5, 10, 4) # Returns 9\n"
"move_toward(10, 5, 4) # Returns 6\n"
+"move_toward(10, 5, -1.5) # Returns 11.5\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:697
+#: modules/gdscript/doc_classes/@GDScript.xml:704
msgid ""
-"Returns the nearest larger power of 2 for integer [code]value[/code].\n"
+"Returns the nearest equal or larger power of 2 for integer [code]value[/"
+"code].\n"
+"In other words, returns the smallest value [code]a[/code] where [code]a = "
+"pow(2, n)[/code] such that [code]value <= a[/code] for some non-negative "
+"integer [code]n[/code].\n"
"[codeblock]\n"
"nearest_po2(3) # Returns 4\n"
"nearest_po2(4) # Returns 4\n"
"nearest_po2(5) # Returns 8\n"
-"[/codeblock]"
+"\n"
+"nearest_po2(0) # Returns 0 (this may not be what you expect)\n"
+"nearest_po2(-1) # Returns 0 (this may not be what you expect)\n"
+"[/codeblock]\n"
+"[b]WARNING:[/b] Due to the way it is implemented, this function returns "
+"[code]0[/code] rather than [code]1[/code] for non-positive values of "
+"[code]value[/code] (in reality, 1 is the smallest integer power of 2)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:711
+#: modules/gdscript/doc_classes/@GDScript.xml:723
msgid ""
"Returns an integer representing the Unicode code point of the given Unicode "
"character [code]char[/code].\n"
@@ -624,27 +657,28 @@ msgid ""
"This is the inverse of [method char]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:726
+#: modules/gdscript/doc_classes/@GDScript.xml:738
msgid ""
-"Parse JSON text to a Variant (use [method typeof] to check if it is what you "
-"expect).\n"
-"Be aware that the JSON specification does not define integer or float types, "
-"but only a number type. Therefore, parsing a JSON text will convert all "
-"numerical values to [float] types.\n"
-"Note that JSON objects do not preserve key order like Godot dictionaries, "
-"thus you should not rely on keys being in a certain order if a dictionary is "
-"constructed from JSON. In contrast, JSON arrays retain the order of their "
+"Parse JSON text to a Variant. (Use [method typeof] to check if the Variant's "
+"type is what you expect.)\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, parsing a JSON text will convert "
+"all numerical values to [float] types.\n"
+"[b]Note:[/b] JSON objects do not preserve key order like Godot dictionaries, "
+"thus, you should not rely on keys being in a certain order if a dictionary "
+"is constructed from JSON. In contrast, JSON arrays retain the order of their "
"elements:\n"
"[codeblock]\n"
-"p = parse_json('[\"a\", \"b\", \"c\"]')\n"
-"if typeof(p) == TYPE_ARRAY:\n"
-" print(p[0]) # Prints a\n"
+"var p = JSON.parse('[\"hello\", \"world\", \"!\"]')\n"
+"if typeof(p.result) == TYPE_ARRAY:\n"
+" print(p.result[0]) # Prints \"hello\"\n"
"else:\n"
-" print(\"unexpected results\")\n"
-"[/codeblock]"
+" push_error(\"Unexpected results.\")\n"
+"[/codeblock]\n"
+"See also [JSON] for an alternative way to parse JSON text."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:746
+#: modules/gdscript/doc_classes/@GDScript.xml:759
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:142
msgid ""
"Converts a 2D point expressed in the polar coordinate system (a distance "
@@ -652,7 +686,7 @@ msgid ""
"cartesian coordinate system (X and Y axis)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:757
+#: modules/gdscript/doc_classes/@GDScript.xml:770
msgid ""
"Returns the integer modulus of [code]a/b[/code] that wraps equally in "
"positive and negative.\n"
@@ -678,7 +712,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:788
+#: modules/gdscript/doc_classes/@GDScript.xml:801
msgid ""
"Returns the result of [code]x[/code] raised to the power of [code]y[/code].\n"
"[codeblock]\n"
@@ -686,19 +720,23 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:800
+#: modules/gdscript/doc_classes/@GDScript.xml:813
msgid ""
-"Returns a resource from the filesystem that is loaded during script "
-"parsing.\n"
+"Returns a [Resource] from the filesystem located at [code]path[/code]. The "
+"resource is loaded during script parsing, i.e. is loaded with the script and "
+"[method preload] effectively acts as a reference to that resource. Note that "
+"the method requires a constant path. If you want to load a resource from a "
+"dynamic/variable path, use [method load].\n"
"[b]Note:[/b] Resource paths can be obtained by right clicking on a resource "
-"in the Assets Panel and choosing \"Copy Path\".\n"
+"in the Assets Panel and choosing \"Copy Path\" or by dragging the file from "
+"the FileSystem dock into the script.\n"
"[codeblock]\n"
-"# Load a scene called main located in the root of the project directory.\n"
-"var main = preload(\"res://main.tscn\")\n"
+"# Instance a scene.\n"
+"var diamond = preload(\"res://diamond.tscn\").instance()\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:812
+#: modules/gdscript/doc_classes/@GDScript.xml:825
msgid ""
"Converts one or more arguments to strings in the best way possible and "
"prints them to the console.\n"
@@ -708,11 +746,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:823
+#: modules/gdscript/doc_classes/@GDScript.xml:836
msgid "Like [method print], but prints only when used in debug mode."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:830
+#: modules/gdscript/doc_classes/@GDScript.xml:843
msgid ""
"Prints a stack track at code location, only works when running with debugger "
"turned on.\n"
@@ -722,7 +760,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:841
+#: modules/gdscript/doc_classes/@GDScript.xml:854
msgid ""
"Prints one or more arguments to strings in the best way possible to standard "
"error line.\n"
@@ -731,7 +769,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:851
+#: modules/gdscript/doc_classes/@GDScript.xml:864
msgid ""
"Prints one or more arguments to strings in the best way possible to console. "
"No newline is added at the end.\n"
@@ -745,7 +783,7 @@ msgid ""
"method, such as [method print]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:864
+#: modules/gdscript/doc_classes/@GDScript.xml:877
msgid ""
"Prints one or more arguments to the console with a space between each "
"argument.\n"
@@ -754,7 +792,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:874
+#: modules/gdscript/doc_classes/@GDScript.xml:887
msgid ""
"Prints one or more arguments to the console with a tab between each "
"argument.\n"
@@ -763,7 +801,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:886
+#: modules/gdscript/doc_classes/@GDScript.xml:899
msgid ""
"Pushes an error message to Godot's built-in debugger and to the OS "
"terminal.\n"
@@ -773,7 +811,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:898
+#: modules/gdscript/doc_classes/@GDScript.xml:911
msgid ""
"Pushes a warning message to Godot's built-in debugger and to the OS "
"terminal.\n"
@@ -783,15 +821,15 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:910
+#: modules/gdscript/doc_classes/@GDScript.xml:923
msgid ""
-"Converts from radians to degrees.\n"
+"Converts an angle expressed in radians to degrees.\n"
"[codeblock]\n"
"rad2deg(0.523599) # Returns 30\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:924
+#: modules/gdscript/doc_classes/@GDScript.xml:937
msgid ""
"Random range, any floating point value between [code]from[/code] and "
"[code]to[/code].\n"
@@ -800,7 +838,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:936
+#: modules/gdscript/doc_classes/@GDScript.xml:949
msgid ""
"Random from seed: pass a [code]seed[/code], and an array with both number "
"and new seed is returned. \"Seed\" here refers to the internal state of the "
@@ -808,7 +846,7 @@ msgid ""
"implementation is 64 bits."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:943
+#: modules/gdscript/doc_classes/@GDScript.xml:956
msgid ""
"Returns a random floating point value on the interval [code][0, 1][/code].\n"
"[codeblock]\n"
@@ -816,7 +854,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:953
+#: modules/gdscript/doc_classes/@GDScript.xml:966
msgid ""
"Returns a random unsigned 32 bit integer. Use remainder to obtain a random "
"value in the interval [code][0, N - 1][/code] (where N is smaller than "
@@ -829,7 +867,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:966
+#: modules/gdscript/doc_classes/@GDScript.xml:979
msgid ""
"Randomizes the seed (or the internal state) of the random number generator. "
"Current implementation reseeds using a number based on time.\n"
@@ -839,7 +877,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:977
+#: modules/gdscript/doc_classes/@GDScript.xml:990
msgid ""
"Returns an array with the given range. Range can be 1 argument N (0 to N-1), "
"two arguments (initial, final-1) or three arguments (initial, final-1, "
@@ -869,7 +907,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1017
+#: modules/gdscript/doc_classes/@GDScript.xml:1030
msgid ""
"Maps a [code]value[/code] from range [code][istart, istop][/code] to [code]"
"[ostart, ostop][/code].\n"
@@ -878,16 +916,16 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1029
+#: modules/gdscript/doc_classes/@GDScript.xml:1042
msgid ""
-"Returns the integral value that is nearest to [code]s[/code], with halfway "
-"cases rounded away from zero.\n"
+"Rounds [code]s[/code] to the nearest whole number, with halfway cases "
+"rounded away from zero.\n"
"[codeblock]\n"
"round(2.6) # Returns 3\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1041
+#: modules/gdscript/doc_classes/@GDScript.xml:1054
msgid ""
"Sets seed for the random number generator.\n"
"[codeblock]\n"
@@ -896,7 +934,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1054
+#: modules/gdscript/doc_classes/@GDScript.xml:1067
msgid ""
"Returns the sign of [code]s[/code]: -1 or 1. Returns 0 if [code]s[/code] is "
"0.\n"
@@ -907,7 +945,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1068
+#: modules/gdscript/doc_classes/@GDScript.xml:1081
msgid ""
"Returns the sine of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -915,7 +953,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1080
+#: modules/gdscript/doc_classes/@GDScript.xml:1093
msgid ""
"Returns the hyperbolic sine of [code]s[/code].\n"
"[codeblock]\n"
@@ -924,27 +962,37 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1097
+#: modules/gdscript/doc_classes/@GDScript.xml:1110
msgid ""
-"Returns a number smoothly interpolated between the [code]from[/code] and "
-"[code]to[/code], based on the [code]weight[/code]. Similar to [method lerp], "
-"but interpolates faster at the beginning and slower at the end.\n"
+"Returns the result of smoothly interpolating the value of [code]s[/code] "
+"between [code]0[/code] and [code]1[/code], based on the where [code]s[/code] "
+"lies with respect to the edges [code]from[/code] and [code]to[/code].\n"
+"The return value is [code]0[/code] if [code]s <= from[/code], and [code]1[/"
+"code] if [code]s >= to[/code]. If [code]s[/code] lies between [code]from[/"
+"code] and [code]to[/code], the returned value follows an S-shaped curve that "
+"maps [code]s[/code] between [code]0[/code] and [code]1[/code].\n"
+"This S-shaped curve is the cubic Hermite interpolator, given by [code]f(s) = "
+"3*s^2 - 2*s^3[/code].\n"
"[codeblock]\n"
-"smoothstep(0, 2, 0.5) # Returns 0.15\n"
+"smoothstep(0, 2, -5.0) # Returns 0.0\n"
+"smoothstep(0, 2, 0.5) # Returns 0.15625\n"
"smoothstep(0, 2, 1.0) # Returns 0.5\n"
"smoothstep(0, 2, 2.0) # Returns 1.0\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1111
+#: modules/gdscript/doc_classes/@GDScript.xml:1127
msgid ""
-"Returns the square root of [code]s[/code].\n"
+"Returns the square root of [code]s[/code], where [code]s[/code] is a non-"
+"negative number.\n"
"[codeblock]\n"
"sqrt(9) # Returns 3\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b]Negative values of [code]s[/code] return NaN. If you need "
+"negative inputs, use [code]System.Numerics.Complex[/code] in C#."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1123
+#: modules/gdscript/doc_classes/@GDScript.xml:1140
msgid ""
"Returns the position of the first non-zero digit, after the decimal point. "
"Note that the maximum return value is 10, which is a design decision in the "
@@ -959,7 +1007,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1142
+#: modules/gdscript/doc_classes/@GDScript.xml:1159
msgid ""
"Snaps float value [code]s[/code] to a given [code]step[/code]. This can also "
"be used to round a floating point number to an arbitrary number of "
@@ -970,7 +1018,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1153
+#: modules/gdscript/doc_classes/@GDScript.xml:1170
msgid ""
"Converts one or more arguments to string in the best way possible.\n"
"[codeblock]\n"
@@ -981,7 +1029,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1168
+#: modules/gdscript/doc_classes/@GDScript.xml:1185
msgid ""
"Converts a formatted string that was returned by [method var2str] to the "
"original value.\n"
@@ -992,7 +1040,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1182
+#: modules/gdscript/doc_classes/@GDScript.xml:1199
msgid ""
"Returns the tangent of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -1000,7 +1048,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1194
+#: modules/gdscript/doc_classes/@GDScript.xml:1211
msgid ""
"Returns the hyperbolic tangent of [code]s[/code].\n"
"[codeblock]\n"
@@ -1009,18 +1057,25 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1207
+#: modules/gdscript/doc_classes/@GDScript.xml:1224
msgid ""
-"Converts a Variant [code]var[/code] to JSON text and return the result. "
+"Converts a [Variant] [code]var[/code] to JSON text and return the result. "
"Useful for serializing data to store or send over the network.\n"
"[codeblock]\n"
+"# Both numbers below are integers.\n"
"a = { \"a\": 1, \"b\": 2 }\n"
"b = to_json(a)\n"
"print(b) # {\"a\":1, \"b\":2}\n"
-"[/codeblock]"
+"# Both numbers above are floats, even if they display without any decimal "
+"places.\n"
+"[/codeblock]\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, converting a [Variant] to JSON "
+"text will convert all numerical values to [float] types.\n"
+"See also [JSON] for an alternative way to convert a [Variant] to JSON text."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1221
+#: modules/gdscript/doc_classes/@GDScript.xml:1242
msgid ""
"Returns whether the given class exists in [ClassDB].\n"
"[codeblock]\n"
@@ -1029,7 +1084,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1234
+#: modules/gdscript/doc_classes/@GDScript.xml:1255
msgid ""
"Returns the internal type of the given Variant object, using the [enum "
"Variant.Type] values.\n"
@@ -1042,7 +1097,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1250
+#: modules/gdscript/doc_classes/@GDScript.xml:1271
msgid ""
"Checks that [code]json[/code] is valid JSON data. Returns an empty string if "
"valid, or an error message otherwise.\n"
@@ -1050,20 +1105,20 @@ msgid ""
"j = to_json([1, 2, 3])\n"
"v = validate_json(j)\n"
"if not v:\n"
-" print(\"valid\")\n"
+" print(\"Valid JSON.\")\n"
"else:\n"
-" prints(\"invalid\", v)\n"
+" push_error(\"Invalid JSON: \" + v)\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1269
+#: modules/gdscript/doc_classes/@GDScript.xml:1290
msgid ""
"Encodes a variable value to a byte array. When [code]full_objects[/code] is "
"[code]true[/code] encoding objects is allowed (and can potentially include "
"code)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1278
+#: modules/gdscript/doc_classes/@GDScript.xml:1299
msgid ""
"Converts a Variant [code]var[/code] to a formatted string that can later be "
"parsed using [method str2var].\n"
@@ -1080,7 +1135,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1298
+#: modules/gdscript/doc_classes/@GDScript.xml:1319
msgid ""
"Returns a weak reference to an object.\n"
"A weak reference to an object is not enough to keep the object alive: when "
@@ -1090,135 +1145,67 @@ msgid ""
"reference may return the object even if there are no strong references to it."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1312
+#: modules/gdscript/doc_classes/@GDScript.xml:1333
msgid ""
"Wraps float [code]value[/code] between [code]min[/code] and [code]max[/"
"code].\n"
"Usable for creating loop-alike behavior or infinite surfaces.\n"
"[codeblock]\n"
-"# a is 0.5\n"
-"a = wrapf(10.5, 0.0, 10.0)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# a is 9.5\n"
-"a = wrapf(-0.5, 0.0, 10.0)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# Infinite loop between 0.0 and 0.99\n"
-"f = wrapf(f + 0.1, 0.0, 1.0)\n"
+"# Infinite loop between 5.0 and 9.9\n"
+"value = wrapf(value + 0.1, 5.0, 10.0)\n"
"[/codeblock]\n"
"[codeblock]\n"
"# Infinite rotation (in radians)\n"
"angle = wrapf(angle + 0.1, 0.0, TAU)\n"
"[/codeblock]\n"
-"[b]Note:[/b] If you just want to wrap between 0.0 and [code]n[/code] (where "
-"[code]n[/code] is a positive floating-point value), it is better for "
-"performance to use the [method fmod] method like [code]fmod(number, n)[/"
-"code].\n"
-"[code]wrapf[/code] is more flexible than using the [method fmod] approach by "
-"giving the user a simple control over the minimum value. It also fully "
-"supports negative numbers, e.g.\n"
"[codeblock]\n"
"# Infinite rotation (in radians)\n"
"angle = wrapf(angle + 0.1, -PI, PI)\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] If [code]min[/code] is [code]0[/code], this is equivalent to "
+"[method fposmod], so prefer using that instead.\n"
+"[code]wrapf[/code] is more flexible than using the [method fposmod] approach "
+"by giving the user control over the minimum value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1348
+#: modules/gdscript/doc_classes/@GDScript.xml:1361
msgid ""
"Wraps integer [code]value[/code] between [code]min[/code] and [code]max[/"
"code].\n"
"Usable for creating loop-alike behavior or infinite surfaces.\n"
"[codeblock]\n"
-"# a is 0\n"
-"a = wrapi(10, 0, 10)\n"
+"# Infinite loop between 5 and 9\n"
+"frame = wrapi(frame + 1, 5, 10)\n"
"[/codeblock]\n"
"[codeblock]\n"
-"# a is 9\n"
-"a = wrapi(-1, 0, 10)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# Infinite loop between 0 and 9\n"
-"frame = wrapi(frame + 1, 0, 10)\n"
-"[/codeblock]\n"
-"[b]Note:[/b] If you just want to wrap between 0 and [code]n[/code] (where "
-"[code]n[/code] is a positive integer value), it is better for performance to "
-"use the modulo operator like [code]number % n[/code].\n"
-"[code]wrapi[/code] is more flexible than using the modulo approach by giving "
-"the user a simple control over the minimum value. It also fully supports "
-"negative numbers, e.g.\n"
-"[codeblock]\n"
"# result is -2\n"
"var result = wrapi(-6, -5, -1)\n"
-"[/codeblock]"
-msgstr ""
-
-#: modules/gdscript/doc_classes/@GDScript.xml:1378
-msgid ""
-"Stops the function execution and returns the current suspended state to the "
-"calling function.\n"
-"From the caller, call [method GDScriptFunctionState.resume] on the state to "
-"resume execution. This invalidates the state. Within the resumed function, "
-"[code]yield()[/code] returns whatever was passed to the [code]resume()[/"
-"code] function call.\n"
-"If passed an object and a signal, the execution is resumed when the object "
-"emits the given signal. In this case, [code]yield()[/code] returns the "
-"argument passed to [code]emit_signal()[/code] if the signal takes only one "
-"argument, or an array containing all the arguments passed to "
-"[code]emit_signal()[/code] if the signal takes multiple arguments.\n"
-"You can also use [code]yield[/code] to wait for a function to finish:\n"
-"[codeblock]\n"
-"func _ready():\n"
-" yield(countdown(), \"completed\") # waiting for the countdown() function "
-"to complete\n"
-" print('Ready')\n"
-"\n"
-"func countdown():\n"
-" yield(get_tree(), \"idle_frame\") # returns a GDScriptFunctionState "
-"object to _ready()\n"
-" print(3)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-" print(2)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-" print(1)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-"\n"
-"# prints:\n"
-"# 3\n"
-"# 2\n"
-"# 1\n"
-"# Ready\n"
"[/codeblock]\n"
-"When yielding on a function, the [code]completed[/code] signal will be "
-"emitted automatically when the function returns. It can, therefore, be used "
-"as the [code]signal[/code] parameter of the [code]yield[/code] method to "
-"resume.\n"
-"In order to yield on a function, the resulting function should also return a "
-"[code]GDScriptFunctionState[/code]. Notice [code]yield(get_tree(), "
-"\"idle_frame\")[/code] from the above example."
+"[b]Note:[/b] If [code]min[/code] is [code]0[/code], this is equivalent to "
+"[method posmod], so prefer using that instead.\n"
+"[code]wrapi[/code] is more flexible than using the [method posmod] approach "
+"by giving the user control over the minimum value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1409
+#: modules/gdscript/doc_classes/@GDScript.xml:1378
msgid ""
"Constant that represents how many times the diameter of a circle fits around "
-"its perimeter."
+"its perimeter. This is equivalent to [code]TAU / 2[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1412
-msgid "The circle constant, the circumference of the unit circle."
+#: modules/gdscript/doc_classes/@GDScript.xml:1381
+msgid "The circle constant, the circumference of the unit circle in radians."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1415
-msgid "A positive infinity. (For negative infinity, use -INF)."
+#: modules/gdscript/doc_classes/@GDScript.xml:1384
+msgid "Positive infinity. For negative infinity, use -INF."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1418
+#: modules/gdscript/doc_classes/@GDScript.xml:1387
msgid ""
-"Macro constant that expands to an expression of type float that represents a "
-"NaN.\n"
-"The NaN values are used to identify undefined or non-representable values "
-"for floating-point elements, such as the square root of negative numbers or "
-"the result of 0/0."
+"\"Not a Number\", an invalid value. [code]NaN[/code] has special properties, "
+"including that it is not equal to itself. It is output by some invalid "
+"operations, such as dividing zero by zero."
msgstr ""
#: doc/classes/@GlobalScope.xml:4
@@ -3454,130 +3441,141 @@ msgid ""
msgstr ""
#: doc/classes/AABB.xml:10 doc/classes/Plane.xml:10 doc/classes/Rect2.xml:11
-#: doc/classes/Rect2i.xml:11 doc/classes/Transform.xml:10
+#: doc/classes/Rect2i.xml:11 doc/classes/Transform.xml:11
#: doc/classes/Vector2.xml:12 doc/classes/Vector2i.xml:12
#: doc/classes/Vector3.xml:12 doc/classes/Vector3i.xml:12
msgid "https://docs.godotengine.org/en/latest/tutorials/math/index.html"
msgstr ""
#: doc/classes/AABB.xml:21
-msgid "Optional constructor, accepts position and size."
+msgid "Constructs an [AABB] from a position and size."
msgstr ""
-#: doc/classes/AABB.xml:30
+#: doc/classes/AABB.xml:28
+msgid ""
+"Returns an AABB with equivalent position and size, modified so that the most-"
+"negative corner is the origin and the size is positive."
+msgstr ""
+
+#: doc/classes/AABB.xml:37
msgid ""
"Returns [code]true[/code] if this [AABB] completely encloses another one."
msgstr ""
-#: doc/classes/AABB.xml:39
+#: doc/classes/AABB.xml:46
msgid "Returns this [AABB] expanded to include a given point."
msgstr ""
-#: doc/classes/AABB.xml:46
+#: doc/classes/AABB.xml:53
msgid "Returns the volume of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:55
+#: doc/classes/AABB.xml:62
msgid "Gets the position of the 8 endpoints of the [AABB] in space."
msgstr ""
-#: doc/classes/AABB.xml:62
+#: doc/classes/AABB.xml:69
msgid "Returns the normalized longest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:69
+#: doc/classes/AABB.xml:76
msgid ""
"Returns the index of the longest axis of the [AABB] (according to "
"[Vector3]'s [code]AXIS_*[/code] constants)."
msgstr ""
-#: doc/classes/AABB.xml:76
+#: doc/classes/AABB.xml:83
msgid "Returns the scalar length of the longest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:83
+#: doc/classes/AABB.xml:90
msgid "Returns the normalized shortest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:90
+#: doc/classes/AABB.xml:97
msgid ""
"Returns the index of the shortest axis of the [AABB] (according to "
"[Vector3]::AXIS* enum)."
msgstr ""
-#: doc/classes/AABB.xml:97
+#: doc/classes/AABB.xml:104
msgid "Returns the scalar length of the shortest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:106
+#: doc/classes/AABB.xml:113
msgid ""
"Returns the support point in a given direction. This is useful for collision "
"detection algorithms."
msgstr ""
-#: doc/classes/AABB.xml:115
+#: doc/classes/AABB.xml:122
msgid ""
"Returns a copy of the [AABB] grown a given amount of units towards all the "
"sides."
msgstr ""
-#: doc/classes/AABB.xml:122
+#: doc/classes/AABB.xml:129
msgid "Returns [code]true[/code] if the [AABB] is flat or empty."
msgstr ""
-#: doc/classes/AABB.xml:129
+#: doc/classes/AABB.xml:136
msgid "Returns [code]true[/code] if the [AABB] is empty."
msgstr ""
-#: doc/classes/AABB.xml:138
+#: doc/classes/AABB.xml:145
msgid "Returns [code]true[/code] if the [AABB] contains a point."
msgstr ""
-#: doc/classes/AABB.xml:147
+#: doc/classes/AABB.xml:154
msgid ""
"Returns the intersection between two [AABB]. An empty AABB (size 0,0,0) is "
"returned on failure."
msgstr ""
-#: doc/classes/AABB.xml:156
+#: doc/classes/AABB.xml:163
msgid "Returns [code]true[/code] if the [AABB] overlaps with another."
msgstr ""
-#: doc/classes/AABB.xml:165
+#: doc/classes/AABB.xml:172
msgid "Returns [code]true[/code] if the [AABB] is on both sides of a plane."
msgstr ""
-#: doc/classes/AABB.xml:176
+#: doc/classes/AABB.xml:183
msgid ""
"Returns [code]true[/code] if the [AABB] intersects the line segment between "
"[code]from[/code] and [code]to[/code]."
msgstr ""
-#: doc/classes/AABB.xml:185
+#: doc/classes/AABB.xml:192
msgid ""
"Returns [code]true[/code] if this [AABB] and [code]aabb[/code] are "
"approximately equal, by calling [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/AABB.xml:194
+#: doc/classes/AABB.xml:201
msgid ""
"Returns a larger [AABB] that contains both this [AABB] and [code]with[/code]."
msgstr ""
-#: doc/classes/AABB.xml:200
+#: doc/classes/AABB.xml:207 doc/classes/Rect2.xml:174
+#: doc/classes/Rect2i.xml:163
msgid ""
-"Ending corner. This is calculated as [code]position + size[/code]. Changing "
-"this property changes [member size] accordingly."
+"Ending corner. This is calculated as [code]position + size[/code]. Setting "
+"this value will change the size."
msgstr ""
-#: doc/classes/AABB.xml:203
-msgid "Beginning corner."
+#: doc/classes/AABB.xml:210 doc/classes/Rect2.xml:177
+#: doc/classes/Rect2i.xml:166
+msgid "Beginning corner. Typically has values lower than [member end]."
msgstr ""
-#: doc/classes/AABB.xml:206 doc/classes/Rect2.xml:180
+#: doc/classes/AABB.xml:213 doc/classes/Rect2.xml:180
#: doc/classes/Rect2i.xml:169
-msgid "Size from position to end."
+msgid ""
+"Size from [member position] to [member end]. Typically all components are "
+"positive.\n"
+"If the size is negative, you can use [method abs] to fix it."
msgstr ""
#: doc/classes/AcceptDialog.xml:4
@@ -3641,11 +3639,11 @@ msgstr ""
msgid "The text displayed by the dialog."
msgstr ""
-#: doc/classes/AcceptDialog.xml:82
+#: doc/classes/AcceptDialog.xml:83
msgid "Emitted when the dialog is accepted, i.e. the OK button is pressed."
msgstr ""
-#: doc/classes/AcceptDialog.xml:89
+#: doc/classes/AcceptDialog.xml:90
msgid "Emitted when a custom button is pressed. See [method add_button]."
msgstr ""
@@ -3698,7 +3696,7 @@ msgstr ""
#: doc/classes/AESContext.xml:54
msgid ""
"Get the current IV state for this context (IV gets updated when calling "
-"[method update]). You normally don't need this funciton.\n"
+"[method update]). You normally don't need this function.\n"
"Note: This function only makes sense when the context is started with "
"[constant MODE_CBC_ENCRYPT] or [constant MODE_CBC_DECRYPT]."
msgstr ""
@@ -3776,12 +3774,14 @@ msgid "If [code]true[/code], texture will be centered."
msgstr ""
#: doc/classes/AnimatedSprite2D.xml:46 doc/classes/Sprite2D.xml:41
-#: doc/classes/SpriteBase3D.xml:61 doc/classes/TextureRect.xml:18
+#: doc/classes/SpriteBase3D.xml:61 doc/classes/TextureButton.xml:19
+#: doc/classes/TextureRect.xml:18
msgid "If [code]true[/code], texture is flipped horizontally."
msgstr ""
#: doc/classes/AnimatedSprite2D.xml:49 doc/classes/Sprite2D.xml:44
-#: doc/classes/SpriteBase3D.xml:64 doc/classes/TextureRect.xml:21
+#: doc/classes/SpriteBase3D.xml:64 doc/classes/TextureButton.xml:22
+#: doc/classes/TextureRect.xml:21
msgid "If [code]true[/code], texture is flipped vertically."
msgstr ""
@@ -3948,10 +3948,10 @@ msgid ""
"[codeblock]\n"
"# This creates an animation that makes the node \"Enemy\" move to the right "
"by\n"
-"# 100 pixels in 1 second.\n"
+"# 100 pixels in 0.5 seconds.\n"
"var animation = Animation.new()\n"
"var track_index = animation.add_track(Animation.TYPE_VALUE)\n"
-"animation.track_set_path(track_index, \"Enemy:position.x\")\n"
+"animation.track_set_path(track_index, \"Enemy:position:x\")\n"
"animation.track_insert_key(track_index, 0.0, 0)\n"
"animation.track_insert_key(track_index, 0.5, 100)\n"
"[/codeblock]\n"
@@ -6079,10 +6079,10 @@ msgstr ""
msgid ""
"Returns [code]true[/code] if the array contains the given value.\n"
"[codeblock]\n"
-"[\"inside\", 7].has(\"inside\") == true\n"
-"[\"inside\", 7].has(\"outside\") == false\n"
-"[\"inside\", 7].has(7) == true\n"
-"[\"inside\", 7].has(\"7\") == false\n"
+"print([\"inside\", 7].has(\"inside\")) # True\n"
+"print([\"inside\", 7].has(\"outside\")) # False\n"
+"print([\"inside\", 7].has(7)) # True\n"
+"print([\"inside\", 7].has(\"7\")) # False\n"
"[/codeblock]\n"
"[b]Note:[/b] This is equivalent to using the [code]in[/code] operator as "
"follows:\n"
@@ -6103,11 +6103,11 @@ msgid ""
"valid, or at the end of the array ([code]pos == size()[/code])."
msgstr ""
-#: doc/classes/Array.xml:265 doc/classes/PackedByteArray.xml:107
-#: doc/classes/PackedColorArray.xml:62 doc/classes/PackedFloat32Array.xml:63
-#: doc/classes/PackedFloat64Array.xml:63 doc/classes/PackedInt32Array.xml:63
-#: doc/classes/PackedInt64Array.xml:63 doc/classes/PackedStringArray.xml:62
-#: doc/classes/PackedVector2Array.xml:62 doc/classes/PackedVector3Array.xml:62
+#: doc/classes/Array.xml:265 doc/classes/PackedByteArray.xml:116
+#: doc/classes/PackedColorArray.xml:71 doc/classes/PackedFloat32Array.xml:72
+#: doc/classes/PackedFloat64Array.xml:72 doc/classes/PackedInt32Array.xml:72
+#: doc/classes/PackedInt64Array.xml:72 doc/classes/PackedStringArray.xml:71
+#: doc/classes/PackedVector2Array.xml:71 doc/classes/PackedVector3Array.xml:71
msgid "Reverses the order of the elements in the array."
msgstr ""
@@ -6137,8 +6137,8 @@ msgid ""
"code] if the array is empty."
msgstr ""
-#: doc/classes/Array.xml:302 doc/classes/PackedByteArray.xml:116
-#: doc/classes/PackedFloat32Array.xml:72 doc/classes/PackedFloat64Array.xml:72
+#: doc/classes/Array.xml:302 doc/classes/PackedByteArray.xml:125
+#: doc/classes/PackedFloat32Array.xml:81 doc/classes/PackedFloat64Array.xml:81
msgid "Appends an element at the end of the array."
msgstr ""
@@ -6146,11 +6146,11 @@ msgstr ""
msgid "Adds an element at the beginning of the array."
msgstr ""
-#: doc/classes/Array.xml:320 doc/classes/PackedByteArray.xml:125
-#: doc/classes/PackedColorArray.xml:80 doc/classes/PackedFloat32Array.xml:81
-#: doc/classes/PackedFloat64Array.xml:81 doc/classes/PackedInt32Array.xml:81
-#: doc/classes/PackedInt64Array.xml:81 doc/classes/PackedStringArray.xml:80
-#: doc/classes/PackedVector2Array.xml:80 doc/classes/PackedVector3Array.xml:80
+#: doc/classes/Array.xml:320 doc/classes/PackedByteArray.xml:134
+#: doc/classes/PackedColorArray.xml:89 doc/classes/PackedFloat32Array.xml:90
+#: doc/classes/PackedFloat64Array.xml:90 doc/classes/PackedInt32Array.xml:90
+#: doc/classes/PackedInt64Array.xml:90 doc/classes/PackedStringArray.xml:89
+#: doc/classes/PackedVector2Array.xml:89 doc/classes/PackedVector3Array.xml:89
msgid "Removes an element from the array by index."
msgstr ""
@@ -6433,7 +6433,7 @@ msgid ""
msgstr ""
#: doc/classes/ArrayMesh.xml:235 doc/classes/Mesh.xml:210
-#: doc/classes/RenderingServer.xml:3115
+#: doc/classes/RenderingServer.xml:3111
msgid "Represents the size of the [enum ArrayType] enum."
msgstr ""
@@ -8250,7 +8250,9 @@ msgid ""
msgstr ""
#: doc/classes/BaseButton.xml:16
-msgid "Called when the button is pressed."
+msgid ""
+"Called when the button is pressed. If you need to know the button's pressed "
+"state (and [member toggle_mode] is active), use [method _toggled] instead."
msgstr ""
#: doc/classes/BaseButton.xml:25
@@ -8344,43 +8346,45 @@ msgstr ""
msgid ""
"Emitted when the button is toggled or pressed. This is on [signal "
"button_down] if [member action_mode] is [constant ACTION_MODE_BUTTON_PRESS] "
-"and on [signal button_up] otherwise."
+"and on [signal button_up] otherwise.\n"
+"If you need to know the button's pressed state (and [member toggle_mode] is "
+"active), use [signal toggled] instead."
msgstr ""
-#: doc/classes/BaseButton.xml:98
+#: doc/classes/BaseButton.xml:99
msgid ""
"Emitted when the button was just toggled between pressed and normal states "
"(only if [member toggle_mode] is active). The new state is contained in the "
"[code]button_pressed[/code] argument."
msgstr ""
-#: doc/classes/BaseButton.xml:104
+#: doc/classes/BaseButton.xml:105
msgid ""
"The normal state (i.e. not pressed, not hovered, not toggled and enabled) of "
"buttons."
msgstr ""
-#: doc/classes/BaseButton.xml:107
+#: doc/classes/BaseButton.xml:108
msgid "The state of buttons are pressed."
msgstr ""
-#: doc/classes/BaseButton.xml:110
+#: doc/classes/BaseButton.xml:111
msgid "The state of buttons are hovered."
msgstr ""
-#: doc/classes/BaseButton.xml:113
+#: doc/classes/BaseButton.xml:114
msgid "The state of buttons are disabled."
msgstr ""
-#: doc/classes/BaseButton.xml:116
+#: doc/classes/BaseButton.xml:117
msgid "The state of buttons are both hovered and pressed."
msgstr ""
-#: doc/classes/BaseButton.xml:119
+#: doc/classes/BaseButton.xml:120
msgid "Require just a press to consider the button clicked."
msgstr ""
-#: doc/classes/BaseButton.xml:122
+#: doc/classes/BaseButton.xml:123
msgid ""
"Require a press and a subsequent release before considering the button "
"clicked."
@@ -9073,22 +9077,22 @@ msgstr ""
msgid "Represents the size of the [enum TextureParam] enum."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:451 doc/classes/RenderingServer.xml:3657
-#: doc/classes/Viewport.xml:390
+#: doc/classes/BaseMaterial3D.xml:451 doc/classes/RenderingServer.xml:3668
+#: doc/classes/Viewport.xml:393
msgid ""
"The texture filter reads from the nearest pixel only. The simplest and "
"fastest method of filtering, but the texture will look pixelized."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:454 doc/classes/RenderingServer.xml:3660
-#: doc/classes/Viewport.xml:393
+#: doc/classes/BaseMaterial3D.xml:454 doc/classes/RenderingServer.xml:3671
+#: doc/classes/Viewport.xml:396
msgid ""
"The texture filter blends between the nearest 4 pixels. Use this when you "
"want to avoid a pixelated style, but do not want mipmaps."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:457 doc/classes/RenderingServer.xml:3663
-#: doc/classes/Viewport.xml:396
+#: doc/classes/BaseMaterial3D.xml:457 doc/classes/RenderingServer.xml:3674
+#: doc/classes/Viewport.xml:399
msgid ""
"The texture filter reads from the nearest pixel in the nearest mipmap. The "
"fastest way to read from textures with mipmaps."
@@ -9101,14 +9105,14 @@ msgid ""
"smooth out pixels that are far from the camera."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:463 doc/classes/RenderingServer.xml:3669
+#: doc/classes/BaseMaterial3D.xml:463 doc/classes/RenderingServer.xml:3680
msgid ""
"The texture filter reads from the nearest pixel, but selects a mipmap based "
"on the angle between the surface and the camera view. This reduces artifacts "
"on surfaces that are almost in line with the camera."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:466 doc/classes/RenderingServer.xml:3672
+#: doc/classes/BaseMaterial3D.xml:466 doc/classes/RenderingServer.xml:3683
msgid ""
"The texture filter blends between the nearest 4 pixels and selects a mipmap "
"based on the angle between the surface and the camera view. This reduces "
@@ -9117,7 +9121,7 @@ msgid ""
"texturing."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:469 doc/classes/CanvasItem.xml:685
+#: doc/classes/BaseMaterial3D.xml:469 doc/classes/CanvasItem.xml:695
msgid "Represents the size of the [enum TextureFilter] enum."
msgstr ""
@@ -9340,8 +9344,8 @@ msgstr ""
msgid "Enables the shadow to opacity feature."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:622 doc/classes/RenderingServer.xml:3684
-#: doc/classes/Viewport.xml:408
+#: doc/classes/BaseMaterial3D.xml:622 doc/classes/RenderingServer.xml:3695
+#: doc/classes/Viewport.xml:411
msgid ""
"Enables the texture to repeat when UV coordinates are outside the 0-1 range. "
"If using one of the linear filtering modes, this can result in artifacts at "
@@ -9482,167 +9486,195 @@ msgstr ""
#: doc/classes/Basis.xml:7
msgid ""
-"3×3 matrix used for 3D rotation and scale. Contains 3 vector fields X, Y and "
-"Z as its columns, which can be interpreted as the local basis vectors of a "
-"transformation. Can also be accessed as array of 3D vectors. These vectors "
-"are orthogonal to each other, but are not necessarily normalized (due to "
-"scaling). Almost always used as an orthogonal basis for a [Transform].\n"
-"For such use, it is composed of a scaling and a rotation matrix, in that "
-"order (M = R.S)."
+"3×3 matrix used for 3D rotation and scale. Almost always used as an "
+"orthogonal basis for a Transform.\n"
+"Contains 3 vector fields X, Y and Z as its columns, which are typically "
+"interpreted as the local basis vectors of a transformation. For such use, it "
+"is composed of a scaling and a rotation matrix, in that order (M = R.S).\n"
+"Can also be accessed as array of 3D vectors. These vectors are normally "
+"orthogonal to each other, but are not necessarily normalized (due to "
+"scaling).\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
+msgstr ""
+
+#: doc/classes/Basis.xml:13 doc/classes/Transform.xml:12
+#: doc/classes/Transform2D.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/math/"
+"matrices_and_transforms.html"
msgstr ""
-#: doc/classes/Basis.xml:11 doc/classes/Transform.xml:11
+#: doc/classes/Basis.xml:14 doc/classes/Transform.xml:13
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/using_transforms.html"
msgstr ""
-#: doc/classes/Basis.xml:20
-msgid "Create a rotation matrix from the given quaternion."
+#: doc/classes/Basis.xml:23
+msgid "Constructs a pure rotation basis matrix from the given quaternion."
msgstr ""
-#: doc/classes/Basis.xml:29
+#: doc/classes/Basis.xml:32
msgid ""
-"Create a rotation matrix (in the YXZ convention: first Z, then X, and Y "
-"last) from the specified Euler angles, given in the vector format as (X "
-"angle, Y angle, Z angle)."
+"Constructs a pure rotation basis matrix from the given Euler angles (in the "
+"YXZ convention: when *composing*, first Y, then X, and Z last), given in the "
+"vector format as (X angle, Y angle, Z angle).\n"
+"Consider using the [Quat] constructor instead, which uses a quaternion "
+"instead of Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:40
+#: doc/classes/Basis.xml:44
msgid ""
-"Create a rotation matrix which rotates around the given axis by the "
-"specified angle, in radians. The axis must be a normalized vector."
+"Constructs a pure rotation basis matrix, rotated around the given "
+"[code]axis[/code] by [code]phi[/code], in radians. The axis must be a "
+"normalized vector."
msgstr ""
-#: doc/classes/Basis.xml:53
-msgid "Create a matrix from 3 axis vectors."
+#: doc/classes/Basis.xml:57
+msgid "Constructs a basis matrix from 3 axis vectors (matrix columns)."
msgstr ""
-#: doc/classes/Basis.xml:60
-msgid "Returns the determinant of the matrix."
+#: doc/classes/Basis.xml:64
+msgid ""
+"Returns the determinant of the basis matrix. If the basis is uniformly "
+"scaled, its determinant is the square of the scale.\n"
+"A negative determinant means the basis has a negative scale. A zero "
+"determinant means the basis isn't invertible, and is usually considered "
+"invalid."
msgstr ""
-#: doc/classes/Basis.xml:67
+#: doc/classes/Basis.xml:72
msgid ""
"Returns the basis's rotation in the form of Euler angles (in the YXZ "
-"convention: first Z, then X, and Y last). The returned vector contains the "
-"rotation angles in the format (X angle, Y angle, Z angle). See [method "
-"get_rotation_quat] if you need a quaternion instead."
+"convention: when decomposing, first Z, then X, and Y last). The returned "
+"vector contains the rotation angles in the format (X angle, Y angle, Z "
+"angle).\n"
+"Consider using the [method get_rotation_quat] method instead, which returns "
+"a [Quat] quaternion instead of Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:74
+#: doc/classes/Basis.xml:80
msgid ""
"This function considers a discretization of rotations into 24 points on unit "
"sphere, lying along the vectors (x,y,z) with each component being either -1, "
"0, or 1, and returns the index of the point best representing the "
-"orientation of the object. It is mainly used by the grid map editor. For "
+"orientation of the object. It is mainly used by the [GridMap] editor. For "
"further details, refer to the Godot source code."
msgstr ""
-#: doc/classes/Basis.xml:81
+#: doc/classes/Basis.xml:87
msgid ""
"Returns the basis's rotation in the form of a quaternion. See [method "
"get_euler] if you need Euler angles, but keep in mind quaternions should "
"generally be preferred to Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:88
+#: doc/classes/Basis.xml:94
msgid ""
"Assuming that the matrix is the combination of a rotation and scaling, "
"return the absolute value of scaling factors along each axis."
msgstr ""
-#: doc/classes/Basis.xml:95 doc/classes/Transform2D.xml:49
+#: doc/classes/Basis.xml:101
msgid "Returns the inverse of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:106
+#: doc/classes/Basis.xml:112
msgid ""
"Returns [code]true[/code] if this basis and [code]b[/code] are approximately "
"equal, by calling [code]is_equal_approx[/code] on each component."
msgstr ""
-#: doc/classes/Basis.xml:113
+#: doc/classes/Basis.xml:119
msgid ""
"Returns the orthonormalized version of the matrix (useful to call from time "
"to time to avoid rounding error for orthogonal matrices). This performs a "
"Gram-Schmidt orthonormalization on the basis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:124
+#: doc/classes/Basis.xml:130
msgid ""
"Introduce an additional rotation around the given axis by phi (radians). The "
"axis must be a normalized vector."
msgstr ""
-#: doc/classes/Basis.xml:133
+#: doc/classes/Basis.xml:139
msgid ""
"Introduce an additional scaling specified by the given 3D scaling factor."
msgstr ""
-#: doc/classes/Basis.xml:144
+#: doc/classes/Basis.xml:150
msgid ""
"Assuming that the matrix is a proper rotation matrix, slerp performs a "
"spherical-linear interpolation with another rotation matrix."
msgstr ""
-#: doc/classes/Basis.xml:153
+#: doc/classes/Basis.xml:159
msgid "Transposed dot product with the X axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:162
+#: doc/classes/Basis.xml:168
msgid "Transposed dot product with the Y axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:171
+#: doc/classes/Basis.xml:177
msgid "Transposed dot product with the Z axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:178
+#: doc/classes/Basis.xml:184
msgid "Returns the transposed version of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:187
+#: doc/classes/Basis.xml:193
msgid "Returns a vector transformed (multiplied) by the matrix."
msgstr ""
-#: doc/classes/Basis.xml:196
+#: doc/classes/Basis.xml:202
msgid ""
-"Returns a vector transformed (multiplied) by the transposed matrix.\n"
+"Returns a vector transformed (multiplied) by the transposed basis matrix.\n"
"[b]Note:[/b] This results in a multiplication by the inverse of the matrix "
"only if it represents a rotation-reflection."
msgstr ""
-#: doc/classes/Basis.xml:203
-msgid "The basis matrix's X vector."
+#: doc/classes/Basis.xml:209 doc/classes/Transform2D.xml:181
+msgid ""
+"The basis matrix's X vector (column 0). Equivalent to array index [code]0[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:206
-msgid "The basis matrix's Y vector."
+#: doc/classes/Basis.xml:212 doc/classes/Transform2D.xml:184
+msgid ""
+"The basis matrix's Y vector (column 1). Equivalent to array index [code]1[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:209
-msgid "The basis matrix's Z vector."
+#: doc/classes/Basis.xml:215
+msgid ""
+"The basis matrix's Z vector (column 2). Equivalent to array index [code]2[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:214
+#: doc/classes/Basis.xml:220
msgid ""
-"The identity basis. This is identical to calling [code]Basis()[/code] "
-"without any parameters. This constant can be used to make your code clearer."
+"The identity basis, with no rotation or scaling applied.\n"
+"This is identical to calling [code]Basis()[/code] without any parameters. "
+"This constant can be used to make your code clearer, and for consistency "
+"with C#."
msgstr ""
-#: doc/classes/Basis.xml:217
+#: doc/classes/Basis.xml:224
msgid ""
"The basis that will flip something along the X axis when used in a "
"transformation."
msgstr ""
-#: doc/classes/Basis.xml:220
+#: doc/classes/Basis.xml:227
msgid ""
"The basis that will flip something along the Y axis when used in a "
"transformation."
msgstr ""
-#: doc/classes/Basis.xml:223
+#: doc/classes/Basis.xml:230
msgid ""
"The basis that will flip something along the Z axis when used in a "
"transformation."
@@ -9955,97 +9987,111 @@ msgstr ""
#: doc/classes/Button.xml:7
msgid ""
"Button is the standard themed button. It can contain text and an icon, and "
-"will display them according to the current [Theme]."
+"will display them according to the current [Theme].\n"
+"[b]Example of creating a button and assigning an action when pressed by code:"
+"[/b]\n"
+"[codeblock]\n"
+"func _ready():\n"
+" var button = Button.new()\n"
+" button.text = \"Click me\"\n"
+" button.connect(\"pressed\", self, \"_button_pressed\")\n"
+" add_child(button)\n"
+"\n"
+"func _button_pressed():\n"
+" print(\"Hello world!\")\n"
+"[/codeblock]\n"
+"Buttons (like all Control nodes) can also be created in the editor, but some "
+"situations may require creating them from code."
msgstr ""
-#: doc/classes/Button.xml:15
+#: doc/classes/Button.xml:27
msgid ""
"Text alignment policy for the button's text, use one of the [enum TextAlign] "
"constants."
msgstr ""
-#: doc/classes/Button.xml:18
+#: doc/classes/Button.xml:30
msgid ""
"When this property is enabled, text that is too large to fit the button is "
"clipped, when disabled the Button will always be wide enough to hold the "
"text."
msgstr ""
-#: doc/classes/Button.xml:21
+#: doc/classes/Button.xml:33
msgid ""
"When enabled, the button's icon will expand/shrink to fit the button's size "
"while keeping its aspect."
msgstr ""
-#: doc/classes/Button.xml:24
+#: doc/classes/Button.xml:36
msgid "Flat buttons don't display decoration."
msgstr ""
-#: doc/classes/Button.xml:27
+#: doc/classes/Button.xml:39
msgid ""
"Button's icon, if text is present the icon will be placed before the text."
msgstr ""
-#: doc/classes/Button.xml:30 doc/classes/LinkButton.xml:18
+#: doc/classes/Button.xml:42 doc/classes/LinkButton.xml:18
msgid "The button's text that will be displayed inside the button's area."
msgstr ""
-#: doc/classes/Button.xml:35
+#: doc/classes/Button.xml:47
msgid "Align the text to the left."
msgstr ""
-#: doc/classes/Button.xml:38
+#: doc/classes/Button.xml:50
msgid "Align the text to the center."
msgstr ""
-#: doc/classes/Button.xml:41
+#: doc/classes/Button.xml:53
msgid "Align the text to the right."
msgstr ""
-#: doc/classes/Button.xml:46
+#: doc/classes/Button.xml:58
msgid "[StyleBox] used when the [Button] is disabled."
msgstr ""
-#: doc/classes/Button.xml:49
+#: doc/classes/Button.xml:61
msgid ""
"[StyleBox] used when the [Button] is focused. It is displayed over the "
"current [StyleBox], so using [StyleBoxEmpty] will just disable the focus "
"visual effect."
msgstr ""
-#: doc/classes/Button.xml:52
+#: doc/classes/Button.xml:64
msgid "[Font] of the [Button]'s text."
msgstr ""
-#: doc/classes/Button.xml:55
+#: doc/classes/Button.xml:67
msgid "Default text [Color] of the [Button]."
msgstr ""
-#: doc/classes/Button.xml:58
+#: doc/classes/Button.xml:70
msgid "Text [Color] used when the [Button] is disabled."
msgstr ""
-#: doc/classes/Button.xml:61
+#: doc/classes/Button.xml:73
msgid "Text [Color] used when the [Button] is being hovered."
msgstr ""
-#: doc/classes/Button.xml:64
+#: doc/classes/Button.xml:76
msgid "Text [Color] used when the [Button] is being pressed."
msgstr ""
-#: doc/classes/Button.xml:67
+#: doc/classes/Button.xml:79
msgid "[StyleBox] used when the [Button] is being hovered."
msgstr ""
-#: doc/classes/Button.xml:70
+#: doc/classes/Button.xml:82
msgid "The horizontal space between [Button]'s icon and text."
msgstr ""
-#: doc/classes/Button.xml:73
+#: doc/classes/Button.xml:85
msgid "Default [StyleBox] for the [Button]."
msgstr ""
-#: doc/classes/Button.xml:76
+#: doc/classes/Button.xml:88
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr ""
@@ -10697,7 +10743,7 @@ msgstr ""
#: doc/classes/CameraEffects.xml:37
msgid ""
"The exposure override value to use. Higher values will result in a brighter "
-"scene. Only effective if [member override_exposure_enable] is [code]true[/"
+"scene. Only effective if [member override_exposure_enabled] is [code]true[/"
"code]."
msgstr ""
@@ -10951,265 +10997,282 @@ msgid ""
msgstr ""
#: doc/classes/CanvasItem.xml:319
-msgid "Draws a string using a custom font."
+msgid ""
+"Draws [code]text[/code] using the specified [code]font[/code] at the "
+"[code]position[/code] (top-left corner). The text will have its color "
+"multiplied by [code]modulate[/code]. If [code]clip_w[/code] is greater than "
+"or equal to 0, the text will be clipped if it exceeds the specified width.\n"
+"[b]Example using the default project font:[/b]\n"
+"[codeblock]\n"
+"# If using this method in a script that redraws constantly, move the\n"
+"# `default_font` declaration to a member variable assigned in `_ready()`\n"
+"# so the Control is only created once.\n"
+"var default_font = Control.new().get_font(\"font\")\n"
+"draw_string(default_font, Vector2(64, 64), \"Hello world\")\n"
+"[/codeblock]\n"
+"See also [method Font.draw]."
msgstr ""
-#: doc/classes/CanvasItem.xml:330
+#: doc/classes/CanvasItem.xml:339
msgid "Draws a styled rectangle."
msgstr ""
-#: doc/classes/CanvasItem.xml:353
+#: doc/classes/CanvasItem.xml:362
msgid "Draws a texture at a given position."
msgstr ""
-#: doc/classes/CanvasItem.xml:380
+#: doc/classes/CanvasItem.xml:389
msgid ""
"Draws a textured rectangle at a given position, optionally modulated by a "
"color. If [code]transpose[/code] is [code]true[/code], the texture will have "
"its X and Y coordinates swapped."
msgstr ""
-#: doc/classes/CanvasItem.xml:409
+#: doc/classes/CanvasItem.xml:418
msgid ""
"Draws a textured rectangle region at a given position, optionally modulated "
"by a color. If [code]transpose[/code] is [code]true[/code], the texture will "
"have its X and Y coordinates swapped."
msgstr ""
-#: doc/classes/CanvasItem.xml:416 doc/classes/Node3D.xml:19
+#: doc/classes/CanvasItem.xml:425 doc/classes/Node3D.xml:19
msgid ""
"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."
msgstr ""
-#: doc/classes/CanvasItem.xml:423
+#: doc/classes/CanvasItem.xml:432
msgid "Returns the [RID] of the [World2D] canvas where this item is in."
msgstr ""
-#: doc/classes/CanvasItem.xml:430
+#: doc/classes/CanvasItem.xml:439
msgid "Returns the canvas item RID used by [RenderingServer] for this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:437
+#: doc/classes/CanvasItem.xml:446
msgid "Returns the transform matrix of this item's canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:444
+#: doc/classes/CanvasItem.xml:453
msgid "Returns the global position of the mouse."
msgstr ""
-#: doc/classes/CanvasItem.xml:451
+#: doc/classes/CanvasItem.xml:460
msgid "Returns the global transform matrix of this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:458
+#: doc/classes/CanvasItem.xml:467
msgid ""
"Returns the global transform matrix of this item in relation to the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:465
+#: doc/classes/CanvasItem.xml:474
msgid "Returns the mouse position relative to this item's position."
msgstr ""
-#: doc/classes/CanvasItem.xml:472
+#: doc/classes/CanvasItem.xml:481
msgid "Returns the transform matrix of this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:479
+#: doc/classes/CanvasItem.xml:488
msgid "Returns the viewport's boundaries as a [Rect2]."
msgstr ""
-#: doc/classes/CanvasItem.xml:486
+#: doc/classes/CanvasItem.xml:495
msgid "Returns this item's transform in relation to the viewport."
msgstr ""
-#: doc/classes/CanvasItem.xml:493
+#: doc/classes/CanvasItem.xml:502
msgid "Returns the [World2D] where this item is in."
msgstr ""
-#: doc/classes/CanvasItem.xml:500
+#: doc/classes/CanvasItem.xml:509
msgid "Hide the [CanvasItem] if it's currently visible."
msgstr ""
-#: doc/classes/CanvasItem.xml:507
+#: doc/classes/CanvasItem.xml:516
msgid ""
"Returns [code]true[/code] if local transform notifications are communicated "
"to children."
msgstr ""
-#: doc/classes/CanvasItem.xml:514
+#: doc/classes/CanvasItem.xml:523
msgid ""
"Returns [code]true[/code] if the node is set as top-level. See [method "
"set_as_toplevel]."
msgstr ""
-#: doc/classes/CanvasItem.xml:521
+#: doc/classes/CanvasItem.xml:530
msgid ""
"Returns [code]true[/code] if global transform notifications are communicated "
"to children."
msgstr ""
-#: doc/classes/CanvasItem.xml:528
+#: doc/classes/CanvasItem.xml:537 doc/classes/Node3D.xml:104
msgid ""
"Returns [code]true[/code] if the node is present in the [SceneTree], its "
-"[member visible] property is [code]true[/code] and its inherited visibility "
-"is also [code]true[/code]."
+"[member visible] property is [code]true[/code] and all its antecedents are "
+"also visible. If any antecedent is hidden, this node will not be visible in "
+"the scene tree."
msgstr ""
-#: doc/classes/CanvasItem.xml:537
+#: doc/classes/CanvasItem.xml:546
msgid "Assigns [code]screen_point[/code] as this node's new local transform."
msgstr ""
-#: doc/classes/CanvasItem.xml:546
+#: doc/classes/CanvasItem.xml:555
msgid ""
"Transformations issued by [code]event[/code]'s inputs are applied in local "
"space instead of global space."
msgstr ""
-#: doc/classes/CanvasItem.xml:555
+#: doc/classes/CanvasItem.xml:564
msgid ""
"If [code]enable[/code] is [code]true[/code], the node won't inherit its "
"transform from parent canvas items."
msgstr ""
-#: doc/classes/CanvasItem.xml:564
+#: doc/classes/CanvasItem.xml:573
msgid ""
"If [code]enable[/code] is [code]true[/code], children will be updated with "
"local transform data."
msgstr ""
-#: doc/classes/CanvasItem.xml:573
+#: doc/classes/CanvasItem.xml:582
msgid ""
"If [code]enable[/code] is [code]true[/code], children will be updated with "
"global transform data."
msgstr ""
-#: doc/classes/CanvasItem.xml:580
+#: doc/classes/CanvasItem.xml:589
msgid ""
"Show the [CanvasItem] if it's currently hidden. For controls that inherit "
"[Popup], the correct way to make them visible is to call one of the multiple "
"[code]popup*()[/code] functions instead."
msgstr ""
-#: doc/classes/CanvasItem.xml:587
+#: doc/classes/CanvasItem.xml:596
msgid ""
"Queue the [CanvasItem] for update. [constant NOTIFICATION_DRAW] will be "
"called on idle time to request redraw."
msgstr ""
-#: doc/classes/CanvasItem.xml:593
+#: doc/classes/CanvasItem.xml:602
msgid ""
"The rendering layers in which this [CanvasItem] responds to [Light2D] nodes."
msgstr ""
-#: doc/classes/CanvasItem.xml:596
+#: doc/classes/CanvasItem.xml:605
msgid "The material applied to textures on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:599
+#: doc/classes/CanvasItem.xml:608
msgid "The color applied to textures on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:602
+#: doc/classes/CanvasItem.xml:611
msgid ""
"The color applied to textures on this [CanvasItem]. This is not inherited by "
"children [CanvasItem]s."
msgstr ""
-#: doc/classes/CanvasItem.xml:605
+#: doc/classes/CanvasItem.xml:614
msgid "If [code]true[/code], the object draws behind its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:608
+#: doc/classes/CanvasItem.xml:617
msgid "If [code]true[/code], the object draws on top of its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:611
+#: doc/classes/CanvasItem.xml:620
msgid "The texture filtering mode to use on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:614
+#: doc/classes/CanvasItem.xml:623
msgid "The texture repeating mode to use on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:617
+#: doc/classes/CanvasItem.xml:626
msgid ""
"If [code]true[/code], the parent [CanvasItem]'s [member material] property "
"is used as this one's material."
msgstr ""
-#: doc/classes/CanvasItem.xml:620
+#: doc/classes/CanvasItem.xml:629
msgid ""
-"If [code]true[/code], this [CanvasItem] is drawn. For controls that inherit "
-"[Popup], the correct way to make them visible is to call one of the multiple "
-"[code]popup*()[/code] functions instead."
+"If [code]true[/code], this [CanvasItem] is drawn. The node is only visible "
+"if all of its antecedents are visible as well (in other words, [method "
+"is_visible_in_tree] must return [code]true[/code]).\n"
+"[b]Note:[/b] For controls that inherit [Popup], the correct way to make them "
+"visible is to call one of the multiple [code]popup*()[/code] functions "
+"instead."
msgstr ""
-#: doc/classes/CanvasItem.xml:626
+#: doc/classes/CanvasItem.xml:636
msgid ""
"Emitted when the [CanvasItem] must redraw. This can only be connected "
"realtime, as deferred will not allow drawing."
msgstr ""
-#: doc/classes/CanvasItem.xml:631
+#: doc/classes/CanvasItem.xml:641
msgid "Emitted when becoming hidden."
msgstr ""
-#: doc/classes/CanvasItem.xml:636
+#: doc/classes/CanvasItem.xml:646
msgid "Emitted when the item rect has changed."
msgstr ""
-#: doc/classes/CanvasItem.xml:641
+#: doc/classes/CanvasItem.xml:651
msgid "Emitted when the visibility (hidden/visible) changes."
msgstr ""
-#: doc/classes/CanvasItem.xml:647
+#: doc/classes/CanvasItem.xml:657
msgid ""
"The [CanvasItem]'s transform has changed. This notification is only received "
"if enabled by [method set_notify_transform] or [method "
"set_notify_local_transform]."
msgstr ""
-#: doc/classes/CanvasItem.xml:650
+#: doc/classes/CanvasItem.xml:660
msgid "The [CanvasItem] is requested to draw."
msgstr ""
-#: doc/classes/CanvasItem.xml:653
+#: doc/classes/CanvasItem.xml:663
msgid "The [CanvasItem]'s visibility has changed."
msgstr ""
-#: doc/classes/CanvasItem.xml:656
+#: doc/classes/CanvasItem.xml:666
msgid "The [CanvasItem] has entered the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:659
+#: doc/classes/CanvasItem.xml:669
msgid "The [CanvasItem] has exited the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:662 doc/classes/CanvasItem.xml:688
+#: doc/classes/CanvasItem.xml:672 doc/classes/CanvasItem.xml:698
msgid "The [CanvasItem] will inherit the filter from its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:665
+#: doc/classes/CanvasItem.xml:675
msgid ""
"The texture filter reads from the nearest pixel only. The simplest and "
"fastest method of filtering. Useful for pixel art."
msgstr ""
-#: doc/classes/CanvasItem.xml:668
+#: doc/classes/CanvasItem.xml:678
msgid ""
"The texture filter blends between the nearest four pixels. Use this for most "
"cases where you want to avoid a pixelated style."
msgstr ""
-#: doc/classes/CanvasItem.xml:671
+#: doc/classes/CanvasItem.xml:681
msgid ""
"The texture filter reads from the nearest pixel in the nearest mipmap. This "
"is the fastest way to read from textures with mipmaps."
msgstr ""
-#: doc/classes/CanvasItem.xml:674
+#: doc/classes/CanvasItem.xml:684
msgid ""
"The texture filter blends between the nearest 4 pixels and between the "
"nearest 2 mipmaps. Use this for non-pixel art textures that may be viewed at "
@@ -11217,7 +11280,7 @@ msgid ""
"smooth out pixels that are smaller than on-screen pixels."
msgstr ""
-#: doc/classes/CanvasItem.xml:677
+#: doc/classes/CanvasItem.xml:687
msgid ""
"The texture filter reads from the nearest pixel, but selects a mipmap based "
"on the angle between the surface and the camera view. This reduces artifacts "
@@ -11226,7 +11289,7 @@ msgid ""
"TEXTURE_FILTER_NEAREST_WITH_MIPMAPS] is usually more appropriate."
msgstr ""
-#: doc/classes/CanvasItem.xml:681
+#: doc/classes/CanvasItem.xml:691
msgid ""
"The texture filter blends between the nearest 4 pixels and selects a mipmap "
"based on the angle between the surface and the camera view. This reduces "
@@ -11237,21 +11300,21 @@ msgid ""
"TEXTURE_FILTER_LINEAR_WITH_MIPMAPS] is usually more appropriate."
msgstr ""
-#: doc/classes/CanvasItem.xml:691
+#: doc/classes/CanvasItem.xml:701
msgid "Texture will not repeat."
msgstr ""
-#: doc/classes/CanvasItem.xml:694
+#: doc/classes/CanvasItem.xml:704
msgid "Texture will repeat normally."
msgstr ""
-#: doc/classes/CanvasItem.xml:697
+#: doc/classes/CanvasItem.xml:707
msgid ""
"Texture will repeat in a 2x2 tiled mode, where elements at even positions "
"are mirrored."
msgstr ""
-#: doc/classes/CanvasItem.xml:700
+#: doc/classes/CanvasItem.xml:710
msgid "Represents the size of the [enum TextureRepeat] enum."
msgstr ""
@@ -12324,16 +12387,15 @@ msgid ""
msgstr ""
#: doc/classes/Color.xml:4
-msgid "Color in RGBA format with some support for ARGB format."
+msgid "Color in RGBA format using floats on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:7
msgid ""
-"A color is represented by red, green, and blue [code](r, g, b)[/code] "
-"components. Additionally, [code]a[/code] represents the alpha component, "
-"often used for transparency. Values are in floating-point and usually range "
-"from 0 to 1. Some properties (such as [member CanvasItem.modulate]) may "
-"accept values greater than 1.\n"
+"A color represented by red, green, blue, and alpha (RGBA) components. The "
+"alpha component is often used for transparency. Values are in floating-point "
+"and usually range from 0 to 1. Some properties (such as CanvasItem.modulate) "
+"may accept values greater than 1 (overbright or HDR colors).\n"
"You can also create a color from standardized color names by using [method "
"@GDScript.ColorN] or directly using the color constants defined here. The "
"standardized color set is based on the [url=https://en.wikipedia.org/wiki/"
@@ -12547,47 +12609,48 @@ msgid ""
msgstr ""
#: doc/classes/Color.xml:280
-msgid "Alpha value (range 0 to 1)."
+msgid ""
+"The color's alpha (transparency) component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:283
-msgid "Alpha value (range 0 to 255)."
+msgid "Wrapper for [member a] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:286
-msgid "Blue value (range 0 to 1)."
+msgid "The color's blue component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:289
-msgid "Blue value (range 0 to 255)."
+msgid "Wrapper for [member b] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:292
-msgid "Green value (range 0 to 1)."
+msgid "The color's green component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:295
-msgid "Green value (range 0 to 255)."
+msgid "Wrapper for [member g] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:298
-msgid "HSV hue value (range 0 to 1)."
+msgid "The HSV hue of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:301
-msgid "Red value (range 0 to 1)."
+msgid "The color's red component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:304
-msgid "Red value (range 0 to 255)."
+msgid "Wrapper for [member r] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:307
-msgid "HSV saturation value (range 0 to 1)."
+msgid "The HSV saturation of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:310
-msgid "HSV value (range 0 to 1)."
+msgid "The HSV value (brightness) of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:315
@@ -14507,23 +14570,35 @@ msgstr ""
#: doc/classes/Control.xml:859
msgid ""
"The node's scale, relative to its [member rect_size]. Change this property "
-"to scale the node around its [member rect_pivot_offset]."
-msgstr ""
-
-#: doc/classes/Control.xml:862
+"to scale the node around its [member rect_pivot_offset]. The Control's "
+"[member hint_tooltip] will also scale according to this value.\n"
+"[b]Note:[/b] This property is mainly intended to be used for animation "
+"purposes. Text inside the Control will look pixelated or blurry when the "
+"Control is scaled. To support multiple resolutions in your project, use an "
+"appropriate viewport stretch mode as described in the [url=https://docs."
+"godotengine.org/en/latest/tutorials/viewports/multiple_resolutions."
+"html]documentation[/url] instead of scaling Controls individually.\n"
+"[b]Note:[/b] If the Control node is a child of a [Container] node, the scale "
+"will be reset to [code]Vector2(1, 1)[/code] when the scene is instanced. To "
+"set the Control's scale when it's instanced, wait for one frame using "
+"[code]yield(get_tree(), \"idle_frame\")[/code] then set its [member "
+"rect_scale] property."
+msgstr ""
+
+#: doc/classes/Control.xml:864
msgid ""
"The size of the node's bounding rectangle, in pixels. [Container] nodes "
"update this property automatically."
msgstr ""
-#: doc/classes/Control.xml:865
+#: doc/classes/Control.xml:867
msgid ""
"Tells the parent [Container] nodes how they should resize and place the node "
"on the X axis. Use one of the [enum SizeFlags] constants to change the "
"flags. See the constants to learn what each does."
msgstr ""
-#: doc/classes/Control.xml:868
+#: doc/classes/Control.xml:870
msgid ""
"If the node and at least one of its neighbours uses the [constant "
"SIZE_EXPAND] size flag, the parent [Container] will let it take more or less "
@@ -14532,181 +14607,181 @@ msgid ""
"space."
msgstr ""
-#: doc/classes/Control.xml:871
+#: doc/classes/Control.xml:873
msgid ""
"Tells the parent [Container] nodes how they should resize and place the node "
"on the Y axis. Use one of the [enum SizeFlags] constants to change the "
"flags. See the constants to learn what each does."
msgstr ""
-#: doc/classes/Control.xml:874
+#: doc/classes/Control.xml:876
msgid ""
"Changing this property replaces the current [Theme] resource this node and "
"all its [Control] children use."
msgstr ""
-#: doc/classes/Control.xml:880
+#: doc/classes/Control.xml:882
msgid "Emitted when the node gains keyboard focus."
msgstr ""
-#: doc/classes/Control.xml:885
+#: doc/classes/Control.xml:887
msgid "Emitted when the node loses keyboard focus."
msgstr ""
-#: doc/classes/Control.xml:892
+#: doc/classes/Control.xml:894
msgid "Emitted when the node receives an [InputEvent]."
msgstr ""
-#: doc/classes/Control.xml:897
+#: doc/classes/Control.xml:899
msgid "Emitted when the node's minimum size changes."
msgstr ""
-#: doc/classes/Control.xml:902
+#: doc/classes/Control.xml:904
msgid ""
"Emitted when the mouse enters the control's [code]Rect[/code] area, provided "
"its [member mouse_filter] lets the event reach it."
msgstr ""
-#: doc/classes/Control.xml:907
+#: doc/classes/Control.xml:909
msgid ""
"Emitted when the mouse leaves the control's [code]Rect[/code] area, provided "
"its [member mouse_filter] lets the event reach it."
msgstr ""
-#: doc/classes/Control.xml:912
+#: doc/classes/Control.xml:914
msgid "Emitted when the control changes size."
msgstr ""
-#: doc/classes/Control.xml:917
+#: doc/classes/Control.xml:919
msgid ""
"Emitted when one of the size flags changes. See [member "
"size_flags_horizontal] and [member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:927
+#: doc/classes/Control.xml:929
msgid "The node cannot grab focus. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:930
+#: doc/classes/Control.xml:932
msgid ""
"The node can only grab focus on mouse clicks. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:933
+#: doc/classes/Control.xml:935
msgid ""
"The node can grab focus on mouse click or using the arrows and the Tab keys "
"on the keyboard. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:936
+#: doc/classes/Control.xml:938
msgid ""
"Sent when the node changes size. Use [member rect_size] to get the new size."
msgstr ""
-#: doc/classes/Control.xml:939
+#: doc/classes/Control.xml:941
msgid "Sent when the mouse pointer enters the node."
msgstr ""
-#: doc/classes/Control.xml:942
+#: doc/classes/Control.xml:944
msgid "Sent when the mouse pointer exits the node."
msgstr ""
-#: doc/classes/Control.xml:945
+#: doc/classes/Control.xml:947
msgid "Sent when the node grabs focus."
msgstr ""
-#: doc/classes/Control.xml:948
+#: doc/classes/Control.xml:950
msgid "Sent when the node loses focus."
msgstr ""
-#: doc/classes/Control.xml:951
+#: doc/classes/Control.xml:953
msgid ""
"Sent when the node's [member theme] changes, right before Godot redraws the "
"control. Happens when you call one of the [code]add_theme_*_override[/code] "
"methods."
msgstr ""
-#: doc/classes/Control.xml:954
+#: doc/classes/Control.xml:956
msgid ""
"Sent when this node is inside a [ScrollContainer] which has begun being "
"scrolled."
msgstr ""
-#: doc/classes/Control.xml:957
+#: doc/classes/Control.xml:959
msgid ""
"Sent when this node is inside a [ScrollContainer] which has stopped being "
"scrolled."
msgstr ""
-#: doc/classes/Control.xml:960
+#: doc/classes/Control.xml:962
msgid ""
"Show the system's arrow mouse cursor when the user hovers the node. Use with "
"[member mouse_default_cursor_shape]."
msgstr ""
-#: doc/classes/Control.xml:963
+#: doc/classes/Control.xml:965
msgid ""
"Show the system's I-beam mouse cursor when the user hovers the node. The I-"
"beam pointer has a shape similar to \"I\". It tells the user they can "
"highlight or insert text."
msgstr ""
-#: doc/classes/Control.xml:966
+#: doc/classes/Control.xml:968
msgid ""
"Show the system's pointing hand mouse cursor when the user hovers the node."
msgstr ""
-#: doc/classes/Control.xml:969
+#: doc/classes/Control.xml:971
msgid "Show the system's cross mouse cursor when the user hovers the node."
msgstr ""
-#: doc/classes/Control.xml:972
+#: doc/classes/Control.xml:974
msgid ""
"Show the system's wait mouse cursor, often an hourglass, when the user "
"hovers the node."
msgstr ""
-#: doc/classes/Control.xml:975
+#: doc/classes/Control.xml:977
msgid ""
"Show the system's busy mouse cursor when the user hovers the node. Often an "
"hourglass."
msgstr ""
-#: doc/classes/Control.xml:978
+#: doc/classes/Control.xml:980
msgid ""
"Show the system's drag mouse cursor, often a closed fist or a cross symbol, "
"when the user hovers the node. It tells the user they're currently dragging "
"an item, like a node in the Scene dock."
msgstr ""
-#: doc/classes/Control.xml:981
+#: doc/classes/Control.xml:983
msgid ""
"Show the system's drop mouse cursor when the user hovers the node. It can be "
"an open hand. It tells the user they can drop an item they're currently "
"grabbing, like a node in the Scene dock."
msgstr ""
-#: doc/classes/Control.xml:984
+#: doc/classes/Control.xml:986
msgid ""
"Show the system's forbidden mouse cursor when the user hovers the node. "
"Often a crossed circle."
msgstr ""
-#: doc/classes/Control.xml:987
+#: doc/classes/Control.xml:989
msgid ""
"Show the system's vertical resize mouse cursor when the user hovers the "
"node. A double-headed vertical arrow. It tells the user they can resize the "
"window or the panel vertically."
msgstr ""
-#: doc/classes/Control.xml:990
+#: doc/classes/Control.xml:992
msgid ""
"Show the system's horizontal resize mouse cursor when the user hovers the "
"node. A double-headed horizontal arrow. It tells the user they can resize "
"the window or the panel horizontally."
msgstr ""
-#: doc/classes/Control.xml:993
+#: doc/classes/Control.xml:995
msgid ""
"Show the system's window resize mouse cursor when the user hovers the node. "
"The cursor is a double-headed arrow that goes from the bottom left to the "
@@ -14714,7 +14789,7 @@ msgid ""
"horizontally and vertically."
msgstr ""
-#: doc/classes/Control.xml:996
+#: doc/classes/Control.xml:998
msgid ""
"Show the system's window resize mouse cursor when the user hovers the node. "
"The cursor is a double-headed arrow that goes from the top left to the "
@@ -14722,93 +14797,93 @@ msgid ""
"they can resize the window or the panel both horizontally and vertically."
msgstr ""
-#: doc/classes/Control.xml:999
+#: doc/classes/Control.xml:1001
msgid ""
"Show the system's move mouse cursor when the user hovers the node. It shows "
"2 double-headed arrows at a 90 degree angle. It tells the user they can move "
"a UI element freely."
msgstr ""
-#: doc/classes/Control.xml:1002
+#: doc/classes/Control.xml:1004
msgid ""
"Show the system's vertical split mouse cursor when the user hovers the node. "
"On Windows, it's the same as [constant CURSOR_VSIZE]."
msgstr ""
-#: doc/classes/Control.xml:1005
+#: doc/classes/Control.xml:1007
msgid ""
"Show the system's horizontal split mouse cursor when the user hovers the "
"node. On Windows, it's the same as [constant CURSOR_HSIZE]."
msgstr ""
-#: doc/classes/Control.xml:1008
+#: doc/classes/Control.xml:1010
msgid ""
"Show the system's help mouse cursor when the user hovers the node, a "
"question mark."
msgstr ""
-#: doc/classes/Control.xml:1011
+#: doc/classes/Control.xml:1013
msgid ""
"Snap all 4 anchors to the top-left of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1014
+#: doc/classes/Control.xml:1016
msgid ""
"Snap all 4 anchors to the top-right of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1017
+#: doc/classes/Control.xml:1019
msgid ""
"Snap all 4 anchors to the bottom-left of the parent control's bounds. Use "
"with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1020
+#: doc/classes/Control.xml:1022
msgid ""
"Snap all 4 anchors to the bottom-right of the parent control's bounds. Use "
"with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1023
+#: doc/classes/Control.xml:1025
msgid ""
"Snap all 4 anchors to the center of the left edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1026
+#: doc/classes/Control.xml:1028
msgid ""
"Snap all 4 anchors to the center of the top edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1029
+#: doc/classes/Control.xml:1031
msgid ""
"Snap all 4 anchors to the center of the right edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1032
+#: doc/classes/Control.xml:1034
msgid ""
"Snap all 4 anchors to the center of the bottom edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1035
+#: doc/classes/Control.xml:1037
msgid ""
"Snap all 4 anchors to the center of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1038
+#: doc/classes/Control.xml:1040
msgid ""
"Snap all 4 anchors to the left edge of the parent control. The left margin "
"becomes relative to the left edge and the top margin relative to the top "
"left corner of the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1041
+#: doc/classes/Control.xml:1043
msgid ""
"Snap all 4 anchors to the top edge of the parent control. The left margin "
"becomes relative to the top left corner, the top margin relative to the top "
@@ -14816,14 +14891,14 @@ msgid ""
"parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1044
+#: doc/classes/Control.xml:1046
msgid ""
"Snap all 4 anchors to the right edge of the parent control. The right margin "
"becomes relative to the right edge and the top margin relative to the top "
"right corner of the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1047
+#: doc/classes/Control.xml:1049
msgid ""
"Snap all 4 anchors to the bottom edge of the parent control. The left margin "
"becomes relative to the bottom left corner, the bottom margin relative to "
@@ -14831,19 +14906,19 @@ msgid ""
"the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1050
+#: doc/classes/Control.xml:1052
msgid ""
"Snap all 4 anchors to a vertical line that cuts the parent control in half. "
"Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1053
+#: doc/classes/Control.xml:1055
msgid ""
"Snap all 4 anchors to a horizontal line that cuts the parent control in "
"half. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1056
+#: doc/classes/Control.xml:1058
msgid ""
"Snap all 4 anchors to the respective corners of the parent control. Set all "
"4 margins to 0 after you applied this preset and the [Control] will fit its "
@@ -14851,30 +14926,30 @@ msgid ""
"editor. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1059
+#: doc/classes/Control.xml:1061
msgid "The control will be resized to its minimum size."
msgstr ""
-#: doc/classes/Control.xml:1062
+#: doc/classes/Control.xml:1064
msgid "The control's width will not change."
msgstr ""
-#: doc/classes/Control.xml:1065
+#: doc/classes/Control.xml:1067
msgid "The control's height will not change."
msgstr ""
-#: doc/classes/Control.xml:1068
+#: doc/classes/Control.xml:1070
msgid "The control's size will not change."
msgstr ""
-#: doc/classes/Control.xml:1071
+#: doc/classes/Control.xml:1073
msgid ""
"Tells the parent [Container] to expand the bounds of this node to fill all "
"the available space without pushing any other node. Use with [member "
"size_flags_horizontal] and [member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1074
+#: doc/classes/Control.xml:1076
msgid ""
"Tells the parent [Container] to let this node take all the available space "
"on the axis you flag. If multiple neighboring nodes are set to expand, "
@@ -14883,13 +14958,13 @@ msgid ""
"[member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1077
+#: doc/classes/Control.xml:1079
msgid ""
"Sets the node's size flags to both fill and expand. See the 2 constants "
"above for more information."
msgstr ""
-#: doc/classes/Control.xml:1080
+#: doc/classes/Control.xml:1082
msgid ""
"Tells the parent [Container] to center the node in itself. It centers the "
"control based on its bounding box, so it doesn't work with the fill or "
@@ -14897,7 +14972,7 @@ msgid ""
"size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1083
+#: doc/classes/Control.xml:1085
msgid ""
"Tells the parent [Container] to align the node with its end, either the "
"bottom or the right edge. It doesn't work with the fill or expand size "
@@ -14905,7 +14980,7 @@ msgid ""
"size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1086
+#: doc/classes/Control.xml:1088
msgid ""
"The control will receive mouse button input events through [method "
"_gui_input] if clicked on. And the control will receive the [signal "
@@ -14914,7 +14989,7 @@ msgid ""
"other controls. This also results in blocking signals in other controls."
msgstr ""
-#: doc/classes/Control.xml:1089
+#: doc/classes/Control.xml:1091
msgid ""
"The control will receive mouse button input events through [method "
"_gui_input] if clicked on. And the control will receive the [signal "
@@ -14926,7 +15001,7 @@ msgid ""
"not be fired."
msgstr ""
-#: doc/classes/Control.xml:1092
+#: doc/classes/Control.xml:1094
msgid ""
"The control will not receive mouse button input events through [method "
"_gui_input]. The control will also not receive the [signal mouse_entered] "
@@ -14935,25 +15010,25 @@ msgid ""
"handled automatically."
msgstr ""
-#: doc/classes/Control.xml:1095
+#: doc/classes/Control.xml:1097
msgid ""
"The control will grow to the left or top to make up if its minimum size is "
"changed to be greater than its current size on the respective axis."
msgstr ""
-#: doc/classes/Control.xml:1098
+#: doc/classes/Control.xml:1100
msgid ""
"The control will grow to the right or bottom to make up if its minimum size "
"is changed to be greater than its current size on the respective axis."
msgstr ""
-#: doc/classes/Control.xml:1101
+#: doc/classes/Control.xml:1103
msgid ""
"The control will grow in both directions equally to make up if its minimum "
"size is changed to be greater than its current size."
msgstr ""
-#: doc/classes/Control.xml:1104
+#: doc/classes/Control.xml:1106
msgid ""
"Snaps one of the 4 anchor's sides to the origin of the node's [code]Rect[/"
"code], in the top left. Use it with one of the [code]anchor_*[/code] member "
@@ -14961,7 +15036,7 @@ msgid ""
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1107
+#: doc/classes/Control.xml:1109
msgid ""
"Snaps one of the 4 anchor's sides to the end of the node's [code]Rect[/"
"code], in the bottom right. Use it with one of the [code]anchor_*[/code] "
@@ -16746,7 +16821,7 @@ msgstr ""
msgid ""
"Returns the [Texture2D] associated with the specified [enum DecalTexture]. "
"This is a convenience method, in most cases you should access the texture "
-"directly. \n"
+"directly.\n"
"For example, instead of [code]albedo_tex = $Decal.get_texture(Decal."
"TEXTURE_ALBEDO)[/code], use [code]albedo_tex = $Decal.texture_albedo[/"
"code].\n"
@@ -16762,7 +16837,7 @@ msgstr ""
msgid ""
"Sets the [Texture2D] associated with the specified [enum DecalTexture]. This "
"is a convenience method, in most cases you should access the texture "
-"directly. \n"
+"directly.\n"
"For example, instead of [code]$Decal.set_texture(Decal.TEXTURE_ALBEDO, "
"albedo_tex)[/code], use [code]$Decal.texture_albedo = albedo_tex[/code].\n"
"One case where this is better than accessing the texture directly is when "
@@ -17111,7 +17186,7 @@ msgstr ""
msgid "The light's shadow rendering algorithm. See [enum ShadowMode]."
msgstr ""
-#: doc/classes/DirectionalLight3D.xml:31 doc/classes/RenderingServer.xml:3254
+#: doc/classes/DirectionalLight3D.xml:31 doc/classes/RenderingServer.xml:3250
msgid ""
"Sets the size of the directional shadow pancake. The pancake offsets the "
"start of the shadow's camera frustum to provide a higher effective depth "
@@ -17185,10 +17260,10 @@ msgstr ""
msgid ""
"Directory type. It is used to manage directories and their content (not "
"restricted to the project folder).\n"
-"When creating a new [Directory], its default opened directory will be "
-"[code]res://[/code]. This may change in the future, so it is advised to "
-"always use [method open] to initialize your [Directory] where you want to "
-"operate, with explicit error checking.\n"
+"When creating a new [Directory], it must be explicitly opened using [method "
+"open] before most methods can be used. However, [method file_exists] and "
+"[method dir_exists] can be used without opening a directory. If so, they use "
+"a path relative to [code]res://[/code].\n"
"Here is an example on how to iterate through the files of a directory:\n"
"[codeblock]\n"
"func dir_contents(path):\n"
@@ -17207,7 +17282,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Directory.xml:27 doc/classes/File.xml:25
+#: doc/classes/Directory.xml:27 doc/classes/File.xml:26
msgid ""
"https://docs.godotengine.org/en/latest/getting_started/step_by_step/"
"filesystem.html"
@@ -17241,41 +17316,43 @@ msgstr ""
#: doc/classes/Directory.xml:65
msgid ""
"Returns whether the target directory exists. The argument can be relative to "
-"the current directory, or an absolute path."
+"the current directory, or an absolute path.\n"
+"If the [Directory] is not open, the path is relative to [code]res://[/code]."
msgstr ""
-#: doc/classes/Directory.xml:74
+#: doc/classes/Directory.xml:75
msgid ""
"Returns whether the target file exists. The argument can be relative to the "
-"current directory, or an absolute path."
+"current directory, or an absolute path.\n"
+"If the [Directory] is not open, the path is relative to [code]res://[/code]."
msgstr ""
-#: doc/classes/Directory.xml:81
+#: doc/classes/Directory.xml:83
msgid ""
"Returns the absolute path to the currently opened directory (e.g. "
"[code]res://folder[/code] or [code]C:\\tmp\\folder[/code])."
msgstr ""
-#: doc/classes/Directory.xml:88
+#: doc/classes/Directory.xml:90
msgid ""
"Returns the currently opened directory's drive index. See [method get_drive] "
"to convert returned index to the name of the drive."
msgstr ""
-#: doc/classes/Directory.xml:97
+#: doc/classes/Directory.xml:99
msgid ""
"On Windows, returns the name of the drive (partition) passed as an argument "
"(e.g. [code]C:[/code]). On other platforms, or if the requested drive does "
"not existed, the method returns an empty String."
msgstr ""
-#: doc/classes/Directory.xml:104
+#: doc/classes/Directory.xml:106
msgid ""
"On Windows, returns the number of drives (partitions) mounted on the current "
"filesystem. On other platforms, the method returns 0."
msgstr ""
-#: doc/classes/Directory.xml:111
+#: doc/classes/Directory.xml:113
msgid ""
"Returns the next element (file or directory) in the current directory "
"(including [code].[/code] and [code]..[/code], unless "
@@ -17286,14 +17363,14 @@ msgid ""
"mandatory in such a case)."
msgstr ""
-#: doc/classes/Directory.xml:119
+#: doc/classes/Directory.xml:121
msgid ""
"On UNIX desktop systems, returns the available space on the current "
"directory's disk. On other platforms, this information is not available and "
"the method returns 0 or -1."
msgstr ""
-#: doc/classes/Directory.xml:130
+#: doc/classes/Directory.xml:132
msgid ""
"Initializes the stream used to list all files and directories using the "
"[method get_next] function, closing the current opened stream if needed. "
@@ -17305,13 +17382,13 @@ msgid ""
"out."
msgstr ""
-#: doc/classes/Directory.xml:139
+#: doc/classes/Directory.xml:141
msgid ""
"Closes the current stream opened with [method list_dir_begin] (whether it "
"has been fully processed with [method get_next] or not does not matter)."
msgstr ""
-#: doc/classes/Directory.xml:148
+#: doc/classes/Directory.xml:150
msgid ""
"Creates a directory. The argument can be relative to the current directory, "
"or an absolute path. The target directory should be placed in an already "
@@ -17320,7 +17397,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:158
+#: doc/classes/Directory.xml:160
msgid ""
"Creates a target directory and all necessary intermediate directories in its "
"path, by calling [method make_dir] recursively. The argument can be relative "
@@ -17328,7 +17405,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:168
+#: doc/classes/Directory.xml:170
msgid ""
"Opens an existing directory of the filesystem. The [code]path[/code] "
"argument can be within the project tree ([code]res://folder[/code]), the "
@@ -17337,7 +17414,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:178
+#: doc/classes/Directory.xml:180
msgid ""
"Deletes the target file or an empty directory. The argument can be relative "
"to the current directory, or an absolute path. If the target directory is "
@@ -17345,7 +17422,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:190
+#: doc/classes/Directory.xml:192
msgid ""
"Renames (move) the [code]from[/code] file to the [code]to[/code] "
"destination. Both arguments should be paths to files, either relative or "
@@ -17386,6 +17463,53 @@ msgid ""
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
+#: doc/classes/DisplayServer.xml:530
+msgid ""
+"Return the greatest scale factor of all screens.\n"
+"[b]Note:[/b] On macOS returned value is [code]2.0[/code] if there is at "
+"least one hiDPI (Retina) screen in the system, and [code]1.0[/code] in all "
+"other cases.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:557
+msgid ""
+"Return the scale factor of the specified screen by index.\n"
+"[b]Note:[/b] On macOS returned value is [code]2.0[/code] for hiDPI (Retina) "
+"screen, and [code]1.0[/code] for all other cases.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:630
+msgid ""
+"Returns the on-screen keyboard's height in pixels. Returns 0 if there is no "
+"keyboard or if it is currently hidden."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:637
+msgid "Hides the virtual keyboard if it is shown, does nothing otherwise."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:656
+msgid ""
+"Shows the virtual keyboard if the platform has one.\n"
+"[code]existing_text[/code] parameter is useful for implementing your own "
+"[LineEdit] or [TextEdit], as it tells the virtual keyboard what text has "
+"already been typed (the virtual keyboard uses it for auto-correct and "
+"predictions).\n"
+"[code]position[/code] parameter is the screen space [Rect2] of the edited "
+"text.\n"
+"[code]multiline[/code] parameter needs to be set to [code]true[/code] to be "
+"able to enter multiple lines of text, as in [TextEdit].\n"
+"[code]max_length[/code] limits the number of characters that can be entered "
+"if different from [code]-1[/code].\n"
+"[code]cursor_start[/code] can optionally define the current text cursor "
+"position if [code]cursor_end[/code] is not set.\n"
+"[code]cursor_start[/code] and [code]cursor_end[/code] can optionally define "
+"the current text selection.\n"
+"[b]Note:[/b] This method is implemented on Android, iOS and UWP."
+msgstr ""
+
#: doc/classes/DTLSServer.xml:4
msgid "Helper class to implement a DTLS server."
msgstr ""
@@ -17506,54 +17630,62 @@ msgstr ""
msgid "Adds a fallback font."
msgstr ""
-#: doc/classes/DynamicFont.xml:35
+#: doc/classes/DynamicFont.xml:33
+msgid ""
+"Returns a string containing all the characters available in the main and all "
+"the fallback fonts.\n"
+"If a given character is included in more than one font, it appears only once "
+"in the returned string."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:43
msgid "Returns the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:42
+#: doc/classes/DynamicFont.xml:50
msgid "Returns the number of fallback fonts."
msgstr ""
-#: doc/classes/DynamicFont.xml:51
+#: doc/classes/DynamicFont.xml:59
msgid ""
"Returns the spacing for the given [code]type[/code] (see [enum SpacingType])."
msgstr ""
-#: doc/classes/DynamicFont.xml:60
+#: doc/classes/DynamicFont.xml:68
msgid "Removes the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:71
+#: doc/classes/DynamicFont.xml:79
msgid "Sets the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:82
+#: doc/classes/DynamicFont.xml:90
msgid ""
"Sets the spacing for [code]type[/code] (see [enum SpacingType]) to "
"[code]value[/code] in pixels (not relative to the font size)."
msgstr ""
-#: doc/classes/DynamicFont.xml:88
+#: doc/classes/DynamicFont.xml:96
msgid "Extra spacing at the bottom in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:91
+#: doc/classes/DynamicFont.xml:99
msgid "Extra character spacing in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:94
+#: doc/classes/DynamicFont.xml:102
msgid "Extra space spacing in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:97
+#: doc/classes/DynamicFont.xml:105
msgid "Extra spacing at the top in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:100
+#: doc/classes/DynamicFont.xml:108
msgid "The font data."
msgstr ""
-#: doc/classes/DynamicFont.xml:103
+#: doc/classes/DynamicFont.xml:111
msgid ""
"The font outline's color.\n"
"[b]Note:[/b] It's recommended to leave this at the default value so that you "
@@ -17562,27 +17694,27 @@ msgid ""
"outline modulate theme item."
msgstr ""
-#: doc/classes/DynamicFont.xml:107
+#: doc/classes/DynamicFont.xml:115
msgid "The font outline's thickness in pixels (not relative to the font size)."
msgstr ""
-#: doc/classes/DynamicFont.xml:110
+#: doc/classes/DynamicFont.xml:118
msgid "The font size in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:115
+#: doc/classes/DynamicFont.xml:123
msgid "Spacing at the top."
msgstr ""
-#: doc/classes/DynamicFont.xml:118
+#: doc/classes/DynamicFont.xml:126
msgid "Spacing at the bottom."
msgstr ""
-#: doc/classes/DynamicFont.xml:121
+#: doc/classes/DynamicFont.xml:129
msgid "Character spacing."
msgstr ""
-#: doc/classes/DynamicFont.xml:124
+#: doc/classes/DynamicFont.xml:132
msgid "Space spacing."
msgstr ""
@@ -17964,7 +18096,12 @@ msgstr ""
msgid "Remitted if a resource is reimported."
msgstr ""
-#: doc/classes/EditorFileSystem.xml:106
+#: doc/classes/EditorFileSystem.xml:100
+msgid ""
+"Emitted if at least one resource is reloaded when the filesystem is scanned."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:107
msgid "Emitted if the source of any imported file changed."
msgstr ""
@@ -18006,29 +18143,43 @@ msgstr ""
msgid "Returns the path to the file at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:86
+#: doc/classes/EditorFileSystemDirectory.xml:70
+msgid ""
+"Returns the base class of the script class defined in the file at index "
+"[code]idx[/code]. If the file doesn't define a script class using the "
+"[code]class_name[/code] syntax, this will return an empty string."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:79
+msgid ""
+"Returns the name of the script class defined in the file at index [code]idx[/"
+"code]. If the file doesn't define a script class using the [code]class_name[/"
+"code] syntax, this will return an empty string."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:88
msgid "Returns the file extension of the file at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:93
+#: doc/classes/EditorFileSystemDirectory.xml:95
msgid "Returns the name of this directory."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:100
+#: doc/classes/EditorFileSystemDirectory.xml:102
msgid ""
"Returns the parent directory for this directory or [code]null[/code] if "
"called on a directory at [code]res://[/code] or [code]user://[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:107
+#: doc/classes/EditorFileSystemDirectory.xml:109
msgid "Returns the path to this directory."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:116
+#: doc/classes/EditorFileSystemDirectory.xml:118
msgid "Returns the subdirectory at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:123
+#: doc/classes/EditorFileSystemDirectory.xml:125
msgid "Returns the number of subdirectories in this directory."
msgstr ""
@@ -18119,45 +18270,72 @@ msgstr ""
msgid "Gets the unique name of the importer."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:92
+#: doc/classes/EditorImportPlugin.xml:86
+msgid ""
+"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. For example:\n"
+"[codeblock]\n"
+"func get_option_visibility(option, options):\n"
+" # Only show the lossy quality setting if the compression mode is set to "
+"\"Lossy\".\n"
+" if option == \"compress/lossy_quality\" and options.has(\"compress/mode"
+"\"):\n"
+" return int(options[\"compress/mode\"]) == COMPRESS_LOSSY\n"
+"\n"
+" return true\n"
+"[/codeblock]\n"
+"Return [code]true[/code] to make all options always visible."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:102
msgid ""
"Gets the number of initial presets defined by the plugin. Use [method "
"get_import_options] to get the default options for the preset and [method "
"get_preset_name] to get the name of the preset."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:101
+#: doc/classes/EditorImportPlugin.xml:111
msgid "Gets the name of the options preset at this index."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:108
+#: doc/classes/EditorImportPlugin.xml:118
msgid ""
"Gets the priority of this plugin for the recognized extension. Higher "
"priority plugins will be preferred. The default priority is [code]1.0[/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:115
+#: doc/classes/EditorImportPlugin.xml:125
msgid ""
"Gets the list of file extensions to associate with this loader (case-"
"insensitive). e.g. [code][\"obj\"][/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:122
+#: doc/classes/EditorImportPlugin.xml:132
msgid ""
"Gets the Godot resource type associated with this loader. e.g. [code]\"Mesh"
"\"[/code] or [code]\"Animation\"[/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:129
+#: doc/classes/EditorImportPlugin.xml:139
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:136
+#: doc/classes/EditorImportPlugin.xml:146
msgid "Gets the name to display in the import window."
msgstr ""
+#: doc/classes/EditorImportPlugin.xml:163
+msgid ""
+"Imports [code]source_file[/code] into [code]save_path[/code] with the import "
+"[code]options[/code] specified. The [code]platform_variants[/code] and "
+"[code]gen_files[/code] arrays will be modified by this function.\n"
+"This method must be overridden to do the actual importing work. See this "
+"class' description for an example of overriding this method."
+msgstr ""
+
#: doc/classes/EditorInspector.xml:4
msgid "A tab used to edit properties of the selected node."
msgstr ""
@@ -18173,6 +18351,58 @@ msgid ""
"the singleton using [method EditorInterface.get_inspector]."
msgstr ""
+#: doc/classes/EditorInspector.xml:17
+msgid ""
+"Refreshes the inspector.\n"
+"[b]Note:[/b] To save on CPU resources, calling this method will do nothing "
+"if the time specified in [code]docks/property_editor/auto_refresh_interval[/"
+"code] editor setting hasn't passed yet since this method was last called. "
+"(By default, this interval is set to 0.3 seconds.)"
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:30
+msgid ""
+"Emitted when the Edit button of an [Object] has been pressed in the "
+"inspector. This is mainly used in the remote scene tree inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:37
+msgid "Emitted when a property is removed from the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:44
+msgid "Emitted when a property is edited in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:51
+msgid ""
+"Emitted when a property is keyed in the inspector. Properties can be keyed "
+"by clicking the \"key\" icon next to a property when the Animation panel is "
+"toggled."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:58
+msgid "Emitted when a property is selected in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:67
+msgid ""
+"Emitted when a boolean property is toggled in the inspector.\n"
+"[b]Note:[/b] This signal is never emitted if the internal [code]autoclear[/"
+"code] property enabled. Since this property is always enabled in the editor "
+"inspector, this signal is never emitted by the editor itself."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:77
+msgid "Emitted when a resource is selected in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:82
+msgid ""
+"Emitted when a property that requires a restart to be applied is edited in "
+"the inspector. This is only used in the Project Settings and Editor Settings."
+msgstr ""
+
#: doc/classes/EditorInspectorPlugin.xml:4
msgid "Plugin for adding custom property editors on inspector."
msgstr ""
@@ -18251,91 +18481,155 @@ msgstr ""
#: doc/classes/EditorInterface.xml:26
msgid ""
-"Returns the main container of Godot editor's window. You can use it, for "
-"example, to retrieve the size of the container and place your controls "
+"Returns the main container of Godot editor's window. For example, you can "
+"use it to retrieve the size of the container and place your controls "
"accordingly."
msgstr ""
-#: doc/classes/EditorInterface.xml:39
+#: doc/classes/EditorInterface.xml:33
+msgid "Returns the current path being viewed in the [FileSystemDock]."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:40
msgid "Returns the edited (current) scene's root [Node]."
msgstr ""
-#: doc/classes/EditorInterface.xml:46
-msgid "Returns the [EditorSettings]."
+#: doc/classes/EditorInterface.xml:47
+msgid "Returns the editor's [EditorSettings] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:53
-msgid "Returns the editor [Viewport]."
+#: doc/classes/EditorInterface.xml:54
+msgid ""
+"Returns the main editor control. Use this as a parent for main screens.\n"
+"[b]Note:[/b] This returns the main editor control containing the whole "
+"editor, not the 2D or 3D viewports specifically."
msgstr ""
-#: doc/classes/EditorInterface.xml:72
+#: doc/classes/EditorInterface.xml:62
+msgid "Returns the editor's [FileSystemDock] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:69
+msgid "Returns the editor's [EditorInspector] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:76
msgid "Returns an [Array] with the file paths of the currently opened scenes."
msgstr ""
-#: doc/classes/EditorInterface.xml:79
-msgid "Returns the [EditorFileSystem]."
+#: doc/classes/EditorInterface.xml:83
+msgid ""
+"Returns the name of the scene that is being played. If no scene is currently "
+"being played, returns an empty string."
msgstr ""
-#: doc/classes/EditorInterface.xml:86
-msgid "Returns the [EditorResourcePreview]."
+#: doc/classes/EditorInterface.xml:90
+msgid "Returns the editor's [EditorFileSystem] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:93
-msgid "Returns the [ScriptEditor]."
+#: doc/classes/EditorInterface.xml:97
+msgid "Returns the editor's [EditorResourcePreview] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:106
-msgid "Returns the [EditorSelection]."
+#: doc/classes/EditorInterface.xml:104
+msgid "Returns the editor's [ScriptEditor] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:117
+#: doc/classes/EditorInterface.xml:111
msgid ""
-"Shows the given property on the given [code]object[/code] in the Editor's "
+"Returns the path of the directory currently selected in the "
+"[FileSystemDock]. If a file is selected, its base directory will be returned "
+"using [method String.get_base_dir] instead."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:118
+msgid "Returns the editor's [EditorSelection] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:129
+msgid ""
+"Shows the given property on the given [code]object[/code] in the editor's "
"Inspector dock."
msgstr ""
-#: doc/classes/EditorInterface.xml:126
+#: doc/classes/EditorInterface.xml:136
msgid ""
-"Returns the enabled status of a plugin. The plugin name is the same as its "
-"directory name."
+"Returns [code]true[/code] if a scene is currently being played, [code]false[/"
+"code] otherwise. Paused scenes are considered as being played."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:145
+msgid ""
+"Returns [code]true[/code] if the specified [code]plugin[/code] is enabled. "
+"The plugin name is the same as its directory name."
msgstr ""
-#: doc/classes/EditorInterface.xml:137
+#: doc/classes/EditorInterface.xml:156
msgid ""
"Returns mesh previews rendered at the given size as an [Array] of "
"[Texture2D]s."
msgstr ""
-#: doc/classes/EditorInterface.xml:146
+#: doc/classes/EditorInterface.xml:165
msgid "Opens the scene at the given path."
msgstr ""
-#: doc/classes/EditorInterface.xml:155
+#: doc/classes/EditorInterface.xml:172
+msgid "Plays the currently active scene."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:181
+msgid "Plays the scene specified by its filepath."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:188
+msgid "Plays the main scene."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:197
msgid "Reloads the scene at the given path."
msgstr ""
-#: doc/classes/EditorInterface.xml:162
+#: doc/classes/EditorInterface.xml:204
msgid ""
"Saves the scene. Returns either [code]OK[/code] or [code]ERR_CANT_CREATE[/"
"code] (see [@GlobalScope] constants)."
msgstr ""
-#: doc/classes/EditorInterface.xml:173
+#: doc/classes/EditorInterface.xml:215
msgid "Saves the scene as a file at [code]path[/code]."
msgstr ""
-#: doc/classes/EditorInterface.xml:182
+#: doc/classes/EditorInterface.xml:224
msgid ""
"Selects the file, with the path provided by [code]file[/code], in the "
"FileSystem dock."
msgstr ""
-#: doc/classes/EditorInterface.xml:201
+#: doc/classes/EditorInterface.xml:233
+msgid ""
+"Sets the editor's current main screen to the one specified in [code]name[/"
+"code]. [code]name[/code] must match the text of the tab in question exactly "
+"([code]2D[/code], [code]3D[/code], [code]Script[/code], [code]AssetLib[/"
+"code])."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:244
msgid ""
"Sets the enabled status of a plugin. The plugin name is the same as its "
"directory name."
msgstr ""
+#: doc/classes/EditorInterface.xml:251
+msgid "Stops the scene that is currently playing."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:257
+msgid ""
+"If [code]true[/code], enables distraction-free mode which hides side docks "
+"to increase the space available for the main view."
+msgstr ""
+
#: doc/classes/EditorNode3DGizmo.xml:4
msgid "Custom gizmo for editing Node3D objects."
msgstr ""
@@ -18347,14 +18641,20 @@ msgid ""
"information."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:26
+#: doc/classes/EditorNode3DGizmo.xml:18
+msgid ""
+"Adds the specified [code]segments[/code] to the gizmo's collision shape for "
+"picking. Call this function during [method redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:27
msgid ""
"Adds collision triangles to the gizmo for picking. A [TriangleMesh] can be "
"generated from a regular [Mesh] too. Call this function during [method "
"redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:41
+#: doc/classes/EditorNode3DGizmo.xml:42
msgid ""
"Adds a list of handles (points) which can be used to deform the object being "
"edited.\n"
@@ -18362,20 +18662,33 @@ msgid ""
"handles. Call this function during [method redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:57
+#: doc/classes/EditorNode3DGizmo.xml:58
msgid ""
"Adds lines to the gizmo (as sets of 2 points), with a given material. The "
"lines are used for visualizing the gizmo. Call this function during [method "
"redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:84
+#: doc/classes/EditorNode3DGizmo.xml:73
+msgid ""
+"Adds a mesh to the gizmo with the specified [code]billboard[/code] state, "
+"[code]skeleton[/code] and [code]material[/code]. If [code]billboard[/code] "
+"is [code]true[/code], the mesh will rotate to always face the camera. Call "
+"this function during [method redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:86
msgid ""
"Adds an unscaled billboard for visualization. Call this function during "
"[method redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:103
+#: doc/classes/EditorNode3DGizmo.xml:93
+msgid ""
+"Removes everything in the gizmo including meshes, collisions and handles."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:106
msgid ""
"Commit a handle being edited (handles must have been previously added by "
"[method add_handles]).\n"
@@ -18383,40 +18696,42 @@ msgid ""
"restore the edited value to the original is provided."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:113
+#: doc/classes/EditorNode3DGizmo.xml:116
msgid ""
"Gets the name of an edited handle (handles must have been previously added "
"by [method add_handles]).\n"
"Handles can be named for reference to the user when editing."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:123
+#: doc/classes/EditorNode3DGizmo.xml:126
msgid ""
"Gets actual value of a handle. This value can be anything and used for "
"eventually undoing the motion when calling [method commit_handle]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:130
+#: doc/classes/EditorNode3DGizmo.xml:133
msgid ""
"Returns the [EditorNode3DGizmoPlugin] that owns this gizmo. It's useful to "
"retrieve materials using [method EditorNode3DGizmoPlugin.get_material]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:137
+#: doc/classes/EditorNode3DGizmo.xml:140
msgid "Returns the Node3D node associated with this gizmo."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:146
-msgid "Gets whether a handle is highlighted or not."
+#: doc/classes/EditorNode3DGizmo.xml:149
+msgid ""
+"Returns [code]true[/code] if the handle at index [code]index[/code] is "
+"highlighted by being hovered with the mouse."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:153
+#: doc/classes/EditorNode3DGizmo.xml:156
msgid ""
-"This function is called when the Node3D this gizmo refers to changes (the "
+"This function is called when the [Node3D] this gizmo refers to changes (the "
"[method Node3D.update_gizmo] is called)."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:166
+#: doc/classes/EditorNode3DGizmo.xml:169
msgid ""
"This function is used when the user drags a gizmo handle (previously added "
"with [method add_handles]) in screen coordinates.\n"
@@ -18424,6 +18739,18 @@ msgid ""
"raycasts."
msgstr ""
+#: doc/classes/EditorNode3DGizmo.xml:179
+msgid ""
+"Sets the gizmo's hidden state. If [code]true[/code], the gizmo will be "
+"hidden. If [code]false[/code], it will be shown."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:188
+msgid ""
+"Sets the reference [Node3D] node for the gizmo. [code]node[/code] must "
+"inherit from [Node3D]."
+msgstr ""
+
#: doc/classes/EditorNode3DGizmoPlugin.xml:4
msgid "Used by the editor to define Node3D gizmo types."
msgstr ""
@@ -18516,7 +18843,17 @@ msgid ""
"visibility menu."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:150
+#: doc/classes/EditorNode3DGizmoPlugin.xml:142
+msgid ""
+"Override this method to set the gizmo's priority. Higher values correspond "
+"to higher priority. If a gizmo with higher priority conflicts with another "
+"gizmo, only the gizmo with higher priority will be used.\n"
+"All built-in editor gizmos return a priority of [code]-1[/code]. If not "
+"overridden, this method will return [code]0[/code], which means custom "
+"gizmos will automatically override built-in gizmos."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:152
msgid ""
"Override this method to define which Node3D nodes have a gizmo from this "
"plugin. Whenever a [Node3D] node is added to a scene this method is called, "
@@ -18524,25 +18861,25 @@ msgid ""
"assigned and is added to this plugin's list of active gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:161
+#: doc/classes/EditorNode3DGizmoPlugin.xml:163
msgid ""
"Gets whether a handle is highlighted or not. Called for this plugin's active "
"gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:168
+#: doc/classes/EditorNode3DGizmoPlugin.xml:170
msgid ""
"Override this method to define whether Node3D with this gizmo should be "
"selecteble even when the gizmo is hidden."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:177
+#: doc/classes/EditorNode3DGizmoPlugin.xml:179
msgid ""
"Callback to redraw the provided gizmo. Called for this plugin's active "
"gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:192
+#: doc/classes/EditorNode3DGizmoPlugin.xml:194
msgid ""
"Update the value of a handle after it has been updated. Called for this "
"plugin's active gizmos."
@@ -18629,7 +18966,13 @@ msgid ""
"should be cleaned up using [code]remove_tool_menu_item(name)[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:149
+#: doc/classes/EditorPlugin.xml:151
+msgid ""
+"Registers a custom translation parser plugin for extracting translatable "
+"strings from custom files."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:158
msgid ""
"This method is called when the editor is about to save the project, switch "
"to another tab, etc. It asks the plugin to apply any pending state changes "
@@ -18638,32 +18981,32 @@ msgid ""
"must apply the shader code being written by the user to the object."
msgstr ""
-#: doc/classes/EditorPlugin.xml:163
+#: doc/classes/EditorPlugin.xml:172
msgid ""
"Clear all the state and reset the object being edited to zero. This ensures "
"your plugin does not keep editing a currently existing node, or a node from "
"the wrong scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:170
+#: doc/classes/EditorPlugin.xml:179
msgid ""
"Called by the engine when the user disables the [EditorPlugin] in the Plugin "
"tab of the project settings window."
msgstr ""
-#: doc/classes/EditorPlugin.xml:179
+#: doc/classes/EditorPlugin.xml:188
msgid ""
"This function is used for plugins that edit specific object types (nodes or "
"resources). It requests the editor to edit the given object."
msgstr ""
-#: doc/classes/EditorPlugin.xml:186
+#: doc/classes/EditorPlugin.xml:195
msgid ""
"Called by the engine when the user enables the [EditorPlugin] in the Plugin "
"tab of the project settings window."
msgstr ""
-#: doc/classes/EditorPlugin.xml:211
+#: doc/classes/EditorPlugin.xml:220
msgid ""
"Called when there is a root node in the current edited scene, [method "
"handles] is implemented and an [InputEvent] happens in the 2D viewport. "
@@ -18688,7 +19031,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:237
+#: doc/classes/EditorPlugin.xml:246
msgid ""
"Called when there is a root node in the current edited scene, [method "
"handles] is implemented and an [InputEvent] happens in the 3D viewport. "
@@ -18713,20 +19056,20 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:259
+#: doc/classes/EditorPlugin.xml:268
msgid ""
"This is for editors that edit script-based objects. You can return a list of "
"breakpoints in the format ([code]script:line[/code]), for example: "
"[code]res://path_to_script.gd:25[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:266
+#: doc/classes/EditorPlugin.xml:275
msgid ""
"Returns the [EditorInterface] object that gives you control over Godot "
"editor's window and its functionalities."
msgstr ""
-#: doc/classes/EditorPlugin.xml:273
+#: doc/classes/EditorPlugin.xml:282
msgid ""
"Override this method in your plugin to return a [Texture2D] in order to give "
"it an icon.\n"
@@ -18744,7 +19087,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:289
+#: doc/classes/EditorPlugin.xml:298
msgid ""
"Override this method in your plugin to provide the name of the plugin when "
"displayed in the Godot editor.\n"
@@ -18752,33 +19095,33 @@ msgid ""
"of the \"2D\", \"3D\", \"Script\", and \"AssetLib\" buttons."
msgstr ""
-#: doc/classes/EditorPlugin.xml:297
+#: doc/classes/EditorPlugin.xml:306
msgid ""
"Gets the Editor's dialogue used for making scripts.\n"
"[b]Note:[/b] Users can configure it before use."
msgstr ""
-#: doc/classes/EditorPlugin.xml:305
+#: doc/classes/EditorPlugin.xml:314
msgid ""
"Gets the state of your plugin editor. This is used when saving the scene (so "
"state is kept when opening it again) and for switching tabs (so state can be "
"restored when the tab returns)."
msgstr ""
-#: doc/classes/EditorPlugin.xml:312
+#: doc/classes/EditorPlugin.xml:321
msgid ""
"Gets the undo/redo object. Most actions in the editor can be undoable, so "
"use this object to make sure this happens when it's worth it."
msgstr ""
-#: doc/classes/EditorPlugin.xml:321
+#: doc/classes/EditorPlugin.xml:330
msgid ""
"Gets the GUI layout of the plugin. This is used to save the project's editor "
"layout when [method queue_save_layout] is called or the editor layout was "
"changed(For example changing the position of a dock)."
msgstr ""
-#: doc/classes/EditorPlugin.xml:330
+#: doc/classes/EditorPlugin.xml:339
msgid ""
"Implement this function if your plugin edits a specific type of object "
"(Resource or Node). If you return [code]true[/code], then you will get the "
@@ -18788,14 +19131,14 @@ msgid ""
"be called too."
msgstr ""
-#: doc/classes/EditorPlugin.xml:337
+#: doc/classes/EditorPlugin.xml:346
msgid ""
"Returns [code]true[/code] if this is a main screen editor plugin (it goes in "
"the workspace selector together with [b]2D[/b], [b]3D[/b], [b]Script[/b] and "
"[b]AssetLib[/b])."
msgstr ""
-#: doc/classes/EditorPlugin.xml:360
+#: doc/classes/EditorPlugin.xml:369
msgid ""
"This function will be called when the editor is requested to become visible. "
"It is used for plugins that edit a specific object type.\n"
@@ -18803,85 +19146,89 @@ msgid ""
"manually."
msgstr ""
-#: doc/classes/EditorPlugin.xml:368
+#: doc/classes/EditorPlugin.xml:377
msgid "Queue save the project's editor layout."
msgstr ""
-#: doc/classes/EditorPlugin.xml:377
+#: doc/classes/EditorPlugin.xml:386
msgid "Removes an Autoload [code]name[/code] from the list."
msgstr ""
-#: doc/classes/EditorPlugin.xml:386
+#: doc/classes/EditorPlugin.xml:395
msgid ""
"Removes the control from the bottom panel. You have to manually [method Node."
"queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:397
+#: doc/classes/EditorPlugin.xml:406
msgid ""
"Removes the control from the specified container. You have to manually "
"[method Node.queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:406
+#: doc/classes/EditorPlugin.xml:415
msgid ""
"Removes the control from the dock. You have to manually [method Node."
"queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:415
+#: doc/classes/EditorPlugin.xml:424
msgid "Removes a custom type added by [method add_custom_type]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:464
+#: doc/classes/EditorPlugin.xml:473
msgid "Removes a menu [code]name[/code] from [b]Project > Tools[/b]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:471
+#: doc/classes/EditorPlugin.xml:482
+msgid "Removes a registered custom translation parser plugin."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:489
msgid ""
"This method is called after the editor saves the project or when it's "
"closed. It asks the plugin to save edited external scenes/resources."
msgstr ""
-#: doc/classes/EditorPlugin.xml:484
+#: doc/classes/EditorPlugin.xml:502
msgid ""
"Use this method if you always want to receive inputs from 3D view screen "
"inside [method forward_spatial_gui_input]. It might be especially usable if "
"your plugin will want to use raycast in the scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:493
+#: doc/classes/EditorPlugin.xml:511
msgid "Restore the state saved by [method get_state]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:502
+#: doc/classes/EditorPlugin.xml:520
msgid "Restore the plugin GUI layout saved by [method get_window_layout]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:509
+#: doc/classes/EditorPlugin.xml:527
msgid "Updates the overlays of the editor (2D/3D) viewport."
msgstr ""
-#: doc/classes/EditorPlugin.xml:518
+#: doc/classes/EditorPlugin.xml:536
msgid ""
"Emitted when user changes the workspace ([b]2D[/b], [b]3D[/b], [b]Script[/"
"b], [b]AssetLib[/b]). Also works with custom screens defined by plugins."
msgstr ""
-#: doc/classes/EditorPlugin.xml:531
+#: doc/classes/EditorPlugin.xml:549
msgid ""
"Emitted when the scene is changed in the editor. The argument will return "
"the root node of the scene that has just become active. If this scene is new "
"and empty, the argument will be [code]null[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:538
+#: doc/classes/EditorPlugin.xml:556
msgid ""
"Emitted when user closes a scene. The argument is file path to a closed "
"scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:584
+#: doc/classes/EditorPlugin.xml:602
msgid "Represents the size of the [enum DockSlot] enum."
msgstr ""
@@ -18936,64 +19283,83 @@ msgid "When this virtual function is called, you must update your editor."
msgstr ""
#: doc/classes/EditorProperty.xml:76
-msgid "Used by the inspector, set when property is checkable."
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is "
+"checkable."
msgstr ""
#: doc/classes/EditorProperty.xml:79
-msgid "Used by the inspector, when the property is checked."
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is checked."
msgstr ""
-#: doc/classes/EditorProperty.xml:84
-msgid "Used by the inspector, when the property must draw with error color."
+#: doc/classes/EditorProperty.xml:82
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property can be "
+"deleted by the user."
msgstr ""
-#: doc/classes/EditorProperty.xml:87
-msgid "Used by the inspector, when the property can add keys for animation."
+#: doc/classes/EditorProperty.xml:85
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property must draw "
+"with error color. This is used for editable children's properties."
msgstr ""
-#: doc/classes/EditorProperty.xml:90
-msgid "Sets this property to change the label (if you want to show one)."
+#: doc/classes/EditorProperty.xml:88
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property can add "
+"keys for animation."
msgstr ""
-#: doc/classes/EditorProperty.xml:93
-msgid "Used by the inspector, when the property is read-only."
+#: doc/classes/EditorProperty.xml:91
+msgid "Set this property to change the label (if you want to show one)."
msgstr ""
-#: doc/classes/EditorProperty.xml:103
+#: doc/classes/EditorProperty.xml:94
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is read-"
+"only."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:104
msgid ""
"Emit it if you want multiple properties modified at the same time. Do not "
"use if added via [method EditorInspectorPlugin.parse_property]."
msgstr ""
-#: doc/classes/EditorProperty.xml:112
+#: doc/classes/EditorProperty.xml:113
msgid "Used by sub-inspectors. Emit it if what was selected was an Object ID."
msgstr ""
-#: doc/classes/EditorProperty.xml:121
+#: doc/classes/EditorProperty.xml:122
msgid ""
"Do not emit this manually, use the [method emit_changed] method instead."
msgstr ""
-#: doc/classes/EditorProperty.xml:130
+#: doc/classes/EditorProperty.xml:131
msgid "Emitted when a property was checked. Used internally."
msgstr ""
-#: doc/classes/EditorProperty.xml:143
+#: doc/classes/EditorProperty.xml:138
+msgid "Emitted when a property was deleted. Used internally."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:145
msgid ""
"Emit it if you want to add this value as an animation key (check for keying "
"being enabled first)."
msgstr ""
-#: doc/classes/EditorProperty.xml:152
+#: doc/classes/EditorProperty.xml:154
msgid "Emit it if you want to key a property with a single value."
msgstr ""
-#: doc/classes/EditorProperty.xml:161
+#: doc/classes/EditorProperty.xml:163
msgid ""
"If you want a sub-resource to be edited, emit this signal with the resource."
msgstr ""
-#: doc/classes/EditorProperty.xml:170
+#: doc/classes/EditorProperty.xml:172
msgid "Emitted when selected. Used internally."
msgstr ""
@@ -19278,17 +19644,26 @@ msgstr ""
msgid ""
"Object that holds the project-independent editor settings. These settings "
"are generally visible in the [b]Editor > Editor Settings[/b] menu.\n"
-"Accessing the settings is done by using the regular [Object] API, such as:\n"
-"[codeblock]\n"
-"settings.set(prop,value)\n"
-"settings.get(prop)\n"
-"list_of_settings = settings.get_property_list()\n"
+"Property names use slash delimiters to distinguish sections. Setting values "
+"can be of any [Variant] type. It's recommended to use [code]snake_case[/"
+"code] for editor settings to be consistent with the Godot editor itself.\n"
+"Accessing the settings can be done using the following methods, such as:\n"
+"[codeblock]\n"
+"# `settings.set(\"some/property\", value)` also works as this class "
+"overrides `_set()` internally.\n"
+"settings.set_setting(\"some/property\",value)\n"
+"\n"
+"# `settings.get(\"some/property\", value)` also works as this class "
+"overrides `_get()` internally.\n"
+"settings.get_setting(\"some/property\")\n"
+"\n"
+"var list_of_settings = settings.get_property_list()\n"
"[/codeblock]\n"
"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
"the singleton using [method EditorInterface.get_editor_settings]."
msgstr ""
-#: doc/classes/EditorSettings.xml:25
+#: doc/classes/EditorSettings.xml:30
msgid ""
"Adds a custom property info to a property. The dictionary must contain:\n"
"- [code]name[/code]: [String] (the name of the property)\n"
@@ -19310,52 +19685,173 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorSettings.xml:50
-msgid "Erase a given setting (pass full property path)."
+#: doc/classes/EditorSettings.xml:55
+msgid "Erases the setting whose name is specified by [code]property[/code]."
msgstr ""
-#: doc/classes/EditorSettings.xml:57
-msgid "Gets the list of favorite files and directories for this project."
+#: doc/classes/EditorSettings.xml:62
+msgid "Returns the list of favorite files and directories for this project."
msgstr ""
-#: doc/classes/EditorSettings.xml:76
+#: doc/classes/EditorSettings.xml:75
msgid ""
-"Gets the specific project settings path. Projects all have a unique sub-"
-"directory inside the settings path where project specific settings are saved."
+"Returns project-specific metadata for the [code]section[/code] and "
+"[code]key[/code] specified. If the metadata doesn't exist, [code]default[/"
+"code] will be returned instead. See also [method set_project_metadata]."
msgstr ""
-#: doc/classes/EditorSettings.xml:83
+#: doc/classes/EditorSettings.xml:82
msgid ""
-"Gets the list of recently visited folders in the file dialog for this "
+"Returns the project-specific settings path. Projects all have a unique "
+"subdirectory inside the settings path where project-specific settings are "
+"saved."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:89
+msgid ""
+"Returns the list of recently visited folders in the file dialog for this "
"project."
msgstr ""
#: doc/classes/EditorSettings.xml:98
msgid ""
+"Returns the value of the setting specified by [code]name[/code]. This is "
+"equivalent to using [method Object.get] on the EditorSettings instance."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:105
+msgid ""
"Gets the global settings path for the engine. Inside this path, you can find "
"some standard paths such as:\n"
"[code]settings/tmp[/code] - Used for temporary storage of files\n"
"[code]settings/templates[/code] - Where export templates are located"
msgstr ""
-#: doc/classes/EditorSettings.xml:133
+#: doc/classes/EditorSettings.xml:116
+msgid ""
+"Returns [code]true[/code] if the setting specified by [code]name[/code] "
+"exists, [code]false[/code] otherwise."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:125
+msgid ""
+"Returns [code]true[/code] if the setting specified by [code]name[/code] can "
+"have its value reverted to the default value, [code]false[/code] otherwise. "
+"When this method returns [code]true[/code], a Revert button will display "
+"next to the setting in the Editor Settings."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:134
+msgid ""
+"Returns the default value of the setting specified by [code]name[/code]. "
+"This is the value that would be applied when clicking the Revert button in "
+"the Editor Settings."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:143
msgid "Sets the list of favorite files and directories for this project."
msgstr ""
-#: doc/classes/EditorSettings.xml:166
+#: doc/classes/EditorSettings.xml:156
+msgid ""
+"Sets the initial value of the setting specified by [code]name[/code] to "
+"[code]value[/code]. This is used to provide a value for the Revert button in "
+"the Editor Settings. If [code]update_current[/code] is true, the current "
+"value of the setting will be set to [code]value[/code] as well."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:169
+msgid ""
+"Sets project-specific metadata with the [code]section[/code], [code]key[/"
+"code] and [code]data[/code] specified. This metadata is stored outside the "
+"project folder and therefore won't be checked into version control. See also "
+"[method get_project_metadata]."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:178
msgid ""
"Sets the list of recently visited folders in the file dialog for this "
"project."
msgstr ""
-#: doc/classes/EditorSettings.xml:183
-msgid "Emitted when editor settings change."
+#: doc/classes/EditorSettings.xml:189
+msgid ""
+"Sets the [code]value[/code] of the setting specified by [code]name[/code]. "
+"This is equivalent to using [method Object.set] on the EditorSettings "
+"instance."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:196
+msgid "Emitted after any editor setting has changed."
msgstr ""
-#: doc/classes/EditorSettings.xml:189
+#: doc/classes/EditorSettings.xml:202
+msgid ""
+"Emitted after any editor setting has changed. It's used by various editor "
+"plugins to update their visuals on theme changes or logic on configuration "
+"changes."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:4
+msgid ""
+"Plugin for adding custom parsers to extract strings that are to be "
+"translated from custom files (.csv, .json etc.)."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:7
+msgid ""
+"Plugins are registered via [method EditorPlugin."
+"add_translation_parser_plugin] method. To define the parsing and string "
+"extraction logic, override the [method parse_file] method in script.\n"
+"The extracted strings will be written into a POT file selected by user under "
+"\"POT Generation\" in \"Localization\" tab in \"Project Settings\" menu.\n"
+"Below shows an example of a custom parser that extracts strings in a CSV "
+"file to write into a POT.\n"
+"[codeblock]\n"
+"tool\n"
+"extends EditorTranslationParserPlugin\n"
+"\n"
+"\n"
+"func parse_file(path, extracted_strings):\n"
+" var file = File.new()\n"
+" file.open(path, File.READ)\n"
+" var text = file.get_as_text()\n"
+" var split_strs = text.split(\",\", false, 0)\n"
+" for s in split_strs:\n"
+" extracted_strings.append(s)\n"
+" #print(\"Extracted string: \" + s)\n"
+"\n"
+"\n"
+"func get_recognized_extensions():\n"
+" return [\"csv\"]\n"
+"[/codeblock]\n"
+"[b]Note:[/b] If you override parsing logic for standard script types "
+"(GDScript, C#, etc.), it would be better to load the [code]path[/code] "
+"argument using [method ResourceLoader.load]. This is because built-in "
+"scripts are loaded as [Resource] type, not [File] type.\n"
+"For example:\n"
+"[codeblock]\n"
+"func parse_file(path, extracted_strings):\n"
+" var res = ResourceLoader.load(path, \"Script\")\n"
+" var text = res.get_source_code()\n"
+" # Parsing logic.\n"
+"\n"
+"\n"
+"func get_recognized_extensions():\n"
+" return [\"gd\"]\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:48
+msgid ""
+"Gets the list of file extensions to associate with this parser, e.g. [code]"
+"[\"csv\"][/code]."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:59
msgid ""
-"Emitted when editor settings change. It used by various editor plugins to "
-"update their visuals on theme changes or logic on configuration changes."
+"Override this method to define a custom parsing logic to extract the "
+"translatable strings."
msgstr ""
#: doc/classes/EditorVCSInterface.xml:4
@@ -19966,15 +20462,15 @@ msgid ""
"to 1.3 to compensate for the lack of HDR rendering."
msgstr ""
-#: doc/classes/Environment.xml:190
+#: doc/classes/Environment.xml:214
msgid "The [Sky] resource used for this [Environment]."
msgstr ""
-#: doc/classes/Environment.xml:197
+#: doc/classes/Environment.xml:221
msgid "The depth tolerance for screen-space reflections."
msgstr ""
-#: doc/classes/Environment.xml:200
+#: doc/classes/Environment.xml:224
msgid ""
"If [code]true[/code], screen-space reflections are enabled. Screen-space "
"reflections are more accurate than reflections from [GIProbe]s or "
@@ -19982,48 +20478,48 @@ msgid ""
"others."
msgstr ""
-#: doc/classes/Environment.xml:203
+#: doc/classes/Environment.xml:227
msgid ""
"The fade-in distance for screen-space reflections. Affects the area from the "
"reflected material to the screen-space reflection)."
msgstr ""
-#: doc/classes/Environment.xml:206
+#: doc/classes/Environment.xml:230
msgid ""
"The fade-out distance for screen-space reflections. Affects the area from "
"the screen-space reflection to the \"global\" reflection."
msgstr ""
-#: doc/classes/Environment.xml:209
+#: doc/classes/Environment.xml:233
msgid ""
"The maximum number of steps for screen-space reflections. Higher values are "
"slower."
msgstr ""
-#: doc/classes/Environment.xml:212
+#: doc/classes/Environment.xml:236
msgid ""
"The screen-space ambient occlusion intensity on materials that have an AO "
"texture defined. Values higher than [code]0[/code] will make the SSAO effect "
"visible in areas darkened by AO textures."
msgstr ""
-#: doc/classes/Environment.xml:215
+#: doc/classes/Environment.xml:239
msgid ""
"The screen-space ambient occlusion bias. This should be kept high enough to "
"prevent \"smooth\" curves from being affected by ambient occlusion."
msgstr ""
-#: doc/classes/Environment.xml:218
+#: doc/classes/Environment.xml:242
msgid ""
"The screen-space ambient occlusion blur quality. See [enum SSAOBlur] for "
"possible values."
msgstr ""
-#: doc/classes/Environment.xml:221
+#: doc/classes/Environment.xml:245
msgid "The screen-space ambient occlusion edge sharpness."
msgstr ""
-#: doc/classes/Environment.xml:224
+#: doc/classes/Environment.xml:248
msgid ""
"If [code]true[/code], the screen-space ambient occlusion effect is enabled. "
"This darkens objects' corners and cavities to simulate ambient light not "
@@ -20034,13 +20530,13 @@ msgid ""
"issues."
msgstr ""
-#: doc/classes/Environment.xml:227
+#: doc/classes/Environment.xml:251
msgid ""
"The primary screen-space ambient occlusion intensity. See also [member "
"ssao_radius]."
msgstr ""
-#: doc/classes/Environment.xml:230
+#: doc/classes/Environment.xml:254
msgid ""
"The screen-space ambient occlusion intensity in direct light. In real life, "
"ambient occlusion only applies to indirect light, which means its effects "
@@ -20048,46 +20544,46 @@ msgid ""
"the SSAO effect visible in direct light."
msgstr ""
-#: doc/classes/Environment.xml:233
+#: doc/classes/Environment.xml:257
msgid "The primary screen-space ambient occlusion radius."
msgstr ""
-#: doc/classes/Environment.xml:236
+#: doc/classes/Environment.xml:260
msgid "The default exposure used for tonemapping."
msgstr ""
-#: doc/classes/Environment.xml:239
+#: doc/classes/Environment.xml:263
msgid ""
"The tonemapping mode to use. Tonemapping is the process that \"converts\" "
"HDR values to be suitable for rendering on a LDR display. (Godot doesn't "
"support rendering on HDR displays yet.)"
msgstr ""
-#: doc/classes/Environment.xml:242
+#: doc/classes/Environment.xml:266
msgid ""
"The white reference value for tonemapping. Only effective if the [member "
"tonemap_mode] isn't set to [constant TONE_MAPPER_LINEAR]."
msgstr ""
-#: doc/classes/Environment.xml:247
+#: doc/classes/Environment.xml:271
msgid ""
"Clears the background using the clear color defined in [member "
"ProjectSettings.rendering/environment/default_clear_color]."
msgstr ""
-#: doc/classes/Environment.xml:250
+#: doc/classes/Environment.xml:274
msgid "Clears the background using a custom clear color."
msgstr ""
-#: doc/classes/Environment.xml:253
+#: doc/classes/Environment.xml:277
msgid "Displays a user-defined sky in the background."
msgstr ""
-#: doc/classes/Environment.xml:256
+#: doc/classes/Environment.xml:280
msgid "Displays a [CanvasLayer] in the background."
msgstr ""
-#: doc/classes/Environment.xml:259
+#: doc/classes/Environment.xml:283
msgid ""
"Keeps on screen every pixel drawn in the background. This is the fastest "
"background mode, but it can only be safely used in fully-interior scenes (no "
@@ -20095,107 +20591,107 @@ msgid ""
"is visible, \"ghost trail\" artifacts will be visible when moving the camera."
msgstr ""
-#: doc/classes/Environment.xml:262 doc/classes/RenderingServer.xml:3446
+#: doc/classes/Environment.xml:286 doc/classes/RenderingServer.xml:3457
msgid "Displays a camera feed in the background."
msgstr ""
-#: doc/classes/Environment.xml:265
+#: doc/classes/Environment.xml:289
msgid "Represents the size of the [enum BGMode] enum."
msgstr ""
-#: doc/classes/Environment.xml:268 doc/classes/RenderingServer.xml:3452
+#: doc/classes/Environment.xml:292 doc/classes/RenderingServer.xml:3463
msgid ""
"Gather ambient light from whichever source is specified as the background."
msgstr ""
-#: doc/classes/Environment.xml:271 doc/classes/RenderingServer.xml:3455
+#: doc/classes/Environment.xml:295 doc/classes/RenderingServer.xml:3466
msgid "Disable ambient light."
msgstr ""
-#: doc/classes/Environment.xml:274 doc/classes/RenderingServer.xml:3458
+#: doc/classes/Environment.xml:298 doc/classes/RenderingServer.xml:3469
msgid "Specify a specific [Color] for ambient light."
msgstr ""
-#: doc/classes/Environment.xml:277 doc/classes/RenderingServer.xml:3461
+#: doc/classes/Environment.xml:301 doc/classes/RenderingServer.xml:3472
msgid ""
"Gather ambient light from the [Sky] regardless of what the background is."
msgstr ""
-#: doc/classes/Environment.xml:280 doc/classes/RenderingServer.xml:3464
+#: doc/classes/Environment.xml:304 doc/classes/RenderingServer.xml:3475
msgid "Use the background for reflections."
msgstr ""
-#: doc/classes/Environment.xml:283 doc/classes/RenderingServer.xml:3467
+#: doc/classes/Environment.xml:307 doc/classes/RenderingServer.xml:3478
msgid "Disable reflections."
msgstr ""
-#: doc/classes/Environment.xml:286 doc/classes/RenderingServer.xml:3470
+#: doc/classes/Environment.xml:310 doc/classes/RenderingServer.xml:3481
msgid "Use the [Sky] for reflections regardless of what the background is."
msgstr ""
-#: doc/classes/Environment.xml:289 doc/classes/RenderingServer.xml:3473
+#: doc/classes/Environment.xml:313
+msgid ""
+"Linear tonemapper operator. Reads the linear data and passes it on "
+"unmodified."
+msgstr ""
+
+#: doc/classes/Environment.xml:316
+msgid ""
+"Reinhardt tonemapper operator. Performs a variation on rendered pixels' "
+"colors by this formula: [code]color = color / (1 + color)[/code]."
+msgstr ""
+
+#: doc/classes/Environment.xml:319
+msgid "Filmic tonemapper operator."
+msgstr ""
+
+#: doc/classes/Environment.xml:322
+msgid "Academy Color Encoding System tonemapper operator."
+msgstr ""
+
+#: doc/classes/Environment.xml:325 doc/classes/RenderingServer.xml:3484
msgid ""
"Additive glow blending mode. Mostly used for particles, glows (bloom), lens "
"flare, bright sources."
msgstr ""
-#: doc/classes/Environment.xml:292 doc/classes/RenderingServer.xml:3476
+#: doc/classes/Environment.xml:328 doc/classes/RenderingServer.xml:3487
msgid ""
"Screen glow blending mode. Increases brightness, used frequently with bloom."
msgstr ""
-#: doc/classes/Environment.xml:295 doc/classes/RenderingServer.xml:3479
+#: doc/classes/Environment.xml:331 doc/classes/RenderingServer.xml:3490
msgid ""
"Soft light glow blending mode. Modifies contrast, exposes shadows and "
"highlights (vivid bloom)."
msgstr ""
-#: doc/classes/Environment.xml:298 doc/classes/RenderingServer.xml:3482
+#: doc/classes/Environment.xml:334 doc/classes/RenderingServer.xml:3493
msgid ""
"Replace glow blending mode. Replaces all pixels' color by the glow value. "
"This can be used to simulate a full-screen blur effect by tweaking the glow "
"parameters to match the original image's brightness."
msgstr ""
-#: doc/classes/Environment.xml:301 doc/classes/RenderingServer.xml:3485
+#: doc/classes/Environment.xml:337 doc/classes/RenderingServer.xml:3496
msgid ""
"Mixes the glow with the underlying color to avoid increasing brightness as "
"much while still maintaining a glow effect."
msgstr ""
-#: doc/classes/Environment.xml:304
-msgid ""
-"Linear tonemapper operator. Reads the linear data and passes it on "
-"unmodified."
-msgstr ""
-
-#: doc/classes/Environment.xml:307
-msgid ""
-"Reinhardt tonemapper operator. Performs a variation on rendered pixels' "
-"colors by this formula: [code]color = color / (1 + color)[/code]."
-msgstr ""
-
-#: doc/classes/Environment.xml:310
-msgid "Filmic tonemapper operator."
-msgstr ""
-
-#: doc/classes/Environment.xml:313
-msgid "Academy Color Encoding System tonemapper operator."
-msgstr ""
-
-#: doc/classes/Environment.xml:316
+#: doc/classes/Environment.xml:340
msgid "No blur for the screen-space ambient occlusion effect (fastest)."
msgstr ""
-#: doc/classes/Environment.xml:319
+#: doc/classes/Environment.xml:343
msgid "1×1 blur for the screen-space ambient occlusion effect."
msgstr ""
-#: doc/classes/Environment.xml:322
+#: doc/classes/Environment.xml:346
msgid "2×2 blur for the screen-space ambient occlusion effect."
msgstr ""
-#: doc/classes/Environment.xml:325
+#: doc/classes/Environment.xml:349
msgid ""
"3×3 blur for the screen-space ambient occlusion effect. Increases the radius "
"of the blur for a smoother look, but can result in checkerboard-like "
@@ -20280,14 +20776,17 @@ msgid ""
" var content = file.get_as_text()\n"
" file.close()\n"
" return content\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"In the example above, the file will be saved in the user data folder as "
+"specified in the [url=https://docs.godotengine.org/en/latest/tutorials/io/"
+"data_paths.html]Data paths[/url] documentation."
msgstr ""
-#: doc/classes/File.xml:32
+#: doc/classes/File.xml:33
msgid "Closes the currently opened file."
msgstr ""
-#: doc/classes/File.xml:39
+#: doc/classes/File.xml:40
msgid ""
"Returns [code]true[/code] if the file cursor has read past the end of the "
"file.\n"
@@ -20298,7 +20797,7 @@ msgid ""
"get_position] to implement a custom logic."
msgstr ""
-#: doc/classes/File.xml:49
+#: doc/classes/File.xml:50
msgid ""
"Returns [code]true[/code] if the file exists in the given path.\n"
"[b]Note:[/b] Many resources types are imported (e.g. textures or sound "
@@ -20311,41 +20810,41 @@ msgid ""
"source asset is present in [code]res://[/code], but fail when exported)."
msgstr ""
-#: doc/classes/File.xml:57
+#: doc/classes/File.xml:58
msgid ""
"Returns the next 16 bits from the file as an integer. See [method store_16] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:64
+#: doc/classes/File.xml:65
msgid ""
"Returns the next 32 bits from the file as an integer. See [method store_32] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:71
+#: doc/classes/File.xml:72
msgid ""
"Returns the next 64 bits from the file as an integer. See [method store_64] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:78
+#: doc/classes/File.xml:79
msgid ""
"Returns the next 8 bits from the file as an integer. See [method store_8] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:85
+#: doc/classes/File.xml:86
msgid ""
"Returns the whole file as a [String].\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:95
+#: doc/classes/File.xml:96
msgid "Returns next [code]len[/code] bytes of the file as a [PackedByteArray]."
msgstr ""
-#: doc/classes/File.xml:104
+#: doc/classes/File.xml:105
msgid ""
"Returns the next value of the file in CSV (Comma-Separated Values) format. "
"You can pass a different delimiter [code]delim[/code] to use other than the "
@@ -20354,37 +20853,37 @@ msgid ""
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:112
+#: doc/classes/File.xml:113
msgid "Returns the next 64 bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:119
+#: doc/classes/File.xml:120
msgid ""
"Returns the last error that happened when trying to perform operations. "
"Compare with the [code]ERR_FILE_*[/code] constants from [enum Error]."
msgstr ""
-#: doc/classes/File.xml:126
+#: doc/classes/File.xml:127
msgid "Returns the next 32 bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:133
+#: doc/classes/File.xml:134
msgid "Returns the size of the file in bytes."
msgstr ""
-#: doc/classes/File.xml:140
+#: doc/classes/File.xml:141
msgid ""
"Returns the next line of the file as a [String].\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:150
+#: doc/classes/File.xml:151
msgid ""
"Returns an MD5 String representing the file at the given path or an empty "
"[String] on failure."
msgstr ""
-#: doc/classes/File.xml:159
+#: doc/classes/File.xml:160
msgid ""
"Returns the last time the [code]file[/code] was modified in unix timestamp "
"format or returns a [String] \"ERROR IN [code]file[/code]\". This unix "
@@ -20392,35 +20891,35 @@ msgid ""
"get_datetime_from_unix_time]."
msgstr ""
-#: doc/classes/File.xml:166
+#: doc/classes/File.xml:167
msgid ""
"Returns a [String] saved in Pascal format from the file.\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:174
+#: doc/classes/File.xml:175
msgid "Returns the path as a [String] for the current open file."
msgstr ""
-#: doc/classes/File.xml:181
+#: doc/classes/File.xml:182
msgid "Returns the absolute path as a [String] for the current open file."
msgstr ""
-#: doc/classes/File.xml:188
+#: doc/classes/File.xml:189
msgid "Returns the file cursor's position."
msgstr ""
-#: doc/classes/File.xml:195
+#: doc/classes/File.xml:196
msgid "Returns the next bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:204
+#: doc/classes/File.xml:205
msgid ""
"Returns a SHA-256 [String] representing the file at the given path or an "
"empty [String] on failure."
msgstr ""
-#: doc/classes/File.xml:213
+#: doc/classes/File.xml:214
msgid ""
"Returns the next [Variant] value from the file. If [code]allow_objects[/"
"code] is [code]true[/code], decoding objects is allowed.\n"
@@ -20429,37 +20928,38 @@ msgid ""
"to avoid potential security threats such as remote code execution."
msgstr ""
-#: doc/classes/File.xml:221
+#: doc/classes/File.xml:222
msgid "Returns [code]true[/code] if the file is currently opened."
msgstr ""
-#: doc/classes/File.xml:232
+#: doc/classes/File.xml:233
msgid "Opens the file for writing or reading, depending on the flags."
msgstr ""
-#: doc/classes/File.xml:245
+#: doc/classes/File.xml:246
msgid "Opens a compressed file for reading or writing."
msgstr ""
-#: doc/classes/File.xml:258
+#: doc/classes/File.xml:259
msgid ""
"Opens an encrypted file in write or read mode. You need to pass a binary key "
-"to encrypt/decrypt it."
+"to encrypt/decrypt it.\n"
+"[b]Note:[/b] The provided key must be 32 bytes long."
msgstr ""
-#: doc/classes/File.xml:271
+#: doc/classes/File.xml:273
msgid ""
"Opens an encrypted file in write or read mode. You need to pass a password "
"to encrypt/decrypt it."
msgstr ""
-#: doc/classes/File.xml:280
+#: doc/classes/File.xml:282
msgid ""
"Changes the file reading/writing cursor to the specified position (in bytes "
"from the beginning of the file)."
msgstr ""
-#: doc/classes/File.xml:289
+#: doc/classes/File.xml:291
msgid ""
"Changes the file reading/writing cursor to the specified position (in bytes "
"from the end of the file).\n"
@@ -20467,7 +20967,7 @@ msgid ""
"cursor will be at the end of the file."
msgstr ""
-#: doc/classes/File.xml:299
+#: doc/classes/File.xml:301
msgid ""
"Stores an integer as 16 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, "
@@ -20495,7 +20995,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/File.xml:328
+#: doc/classes/File.xml:330
msgid ""
"Stores an integer as 32 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, "
@@ -20504,14 +21004,14 @@ msgid ""
"(see [method store_16] for an example)."
msgstr ""
-#: doc/classes/File.xml:339
+#: doc/classes/File.xml:341
msgid ""
"Stores an integer as 64 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] must lie in the interval [code][-2^63, "
"2^63 - 1][/code] (i.e. be a valid [int] value)."
msgstr ""
-#: doc/classes/File.xml:349
+#: doc/classes/File.xml:351
msgid ""
"Stores an integer as 8 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, 255]"
@@ -20520,11 +21020,11 @@ msgid ""
"(see [method store_16] for an example)."
msgstr ""
-#: doc/classes/File.xml:360
+#: doc/classes/File.xml:362
msgid "Stores the given array of bytes in the file."
msgstr ""
-#: doc/classes/File.xml:371
+#: doc/classes/File.xml:373
msgid ""
"Store the given [PackedStringArray] in the file as a line formatted in the "
"CSV (Comma-Separated Values) format. You can pass a different delimiter "
@@ -20533,45 +21033,45 @@ msgid ""
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:381
+#: doc/classes/File.xml:383
msgid "Stores a floating-point number as 64 bits in the file."
msgstr ""
-#: doc/classes/File.xml:390
+#: doc/classes/File.xml:392
msgid "Stores a floating-point number as 32 bits in the file."
msgstr ""
-#: doc/classes/File.xml:399
+#: doc/classes/File.xml:401
msgid ""
"Stores the given [String] as a line in the file.\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:409
+#: doc/classes/File.xml:411
msgid ""
"Stores the given [String] as a line in the file in Pascal format (i.e. also "
"store the length of the string).\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:419
+#: doc/classes/File.xml:421
msgid "Stores a floating-point number in the file."
msgstr ""
-#: doc/classes/File.xml:428
+#: doc/classes/File.xml:430
msgid ""
"Stores the given [String] in the file.\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:440
+#: doc/classes/File.xml:442
msgid ""
"Stores any Variant value in the file. If [code]full_objects[/code] is "
"[code]true[/code], encoding objects is allowed (and can potentially include "
"code)."
msgstr ""
-#: doc/classes/File.xml:446
+#: doc/classes/File.xml:448
msgid ""
"If [code]true[/code], the file's endianness is swapped. Use this if you're "
"dealing with files written on big-endian machines.\n"
@@ -20579,44 +21079,44 @@ msgid ""
"reset to [code]false[/code] whenever you open the file."
msgstr ""
-#: doc/classes/File.xml:452
+#: doc/classes/File.xml:454
msgid "Opens the file for read operations."
msgstr ""
-#: doc/classes/File.xml:455
+#: doc/classes/File.xml:457
msgid ""
"Opens the file for write operations. Create it if the file does not exist "
"and truncate if it exists."
msgstr ""
-#: doc/classes/File.xml:458
+#: doc/classes/File.xml:460
msgid ""
"Opens the file for read and write operations. Does not truncate the file."
msgstr ""
-#: doc/classes/File.xml:461
+#: doc/classes/File.xml:463
msgid ""
"Opens the file for read and write operations. Create it if the file does not "
"exist and truncate if it exists."
msgstr ""
-#: doc/classes/File.xml:464
+#: doc/classes/File.xml:466
msgid "Uses the [url=http://fastlz.org/]FastLZ[/url] compression method."
msgstr ""
-#: doc/classes/File.xml:467
+#: doc/classes/File.xml:469
msgid ""
"Uses the [url=https://en.wikipedia.org/wiki/DEFLATE]DEFLATE[/url] "
"compression method."
msgstr ""
-#: doc/classes/File.xml:470
+#: doc/classes/File.xml:472
msgid ""
"Uses the [url=https://facebook.github.io/zstd/]Zstandard[/url] compression "
"method."
msgstr ""
-#: doc/classes/File.xml:473
+#: doc/classes/File.xml:475
msgid "Uses the [url=https://www.gzip.org/]gzip[/url] compression method."
msgstr ""
@@ -20832,10 +21332,11 @@ msgid ""
"Draw [code]string[/code] into a canvas item using the font at a given "
"position, with [code]modulate[/code] color, and optionally clipping the "
"width. [code]position[/code] specifies the baseline, not the top. To draw "
-"from the top, [i]ascent[/i] must be added to the Y axis."
+"from the top, [i]ascent[/i] must be added to the Y axis.\n"
+"See also [method CanvasItem.draw_string]."
msgstr ""
-#: doc/classes/Font.xml:47
+#: doc/classes/Font.xml:48
msgid ""
"Draw character [code]char[/code] into a canvas item using the font at a "
"given position, with [code]modulate[/code] color, and optionally kerning if "
@@ -20845,39 +21346,39 @@ msgid ""
"making this function useful for drawing strings character by character."
msgstr ""
-#: doc/classes/Font.xml:54
+#: doc/classes/Font.xml:55
msgid "Returns the font ascent (number of pixels above the baseline)."
msgstr ""
-#: doc/classes/Font.xml:65
+#: doc/classes/Font.xml:66
msgid ""
"Returns the size of a character, optionally taking kerning into account if "
"the next character is provided."
msgstr ""
-#: doc/classes/Font.xml:72
+#: doc/classes/Font.xml:73
msgid "Returns the font descent (number of pixels below the baseline)."
msgstr ""
-#: doc/classes/Font.xml:79
+#: doc/classes/Font.xml:80
msgid "Returns the total font height (ascent plus descent) in pixels."
msgstr ""
-#: doc/classes/Font.xml:88
+#: doc/classes/Font.xml:89
msgid "Returns the size of a string, taking kerning and advance into account."
msgstr ""
-#: doc/classes/Font.xml:99
+#: doc/classes/Font.xml:100
msgid ""
"Returns the size that the string would have with word wrapping enabled with "
"a fixed [code]width[/code]."
msgstr ""
-#: doc/classes/Font.xml:106
+#: doc/classes/Font.xml:107
msgid "Returns [code]true[/code] if the font has an outline."
msgstr ""
-#: doc/classes/Font.xml:119
+#: doc/classes/Font.xml:120
msgid ""
"After editing a font (changing size, ascent, char rects, etc.). Call this "
"function to propagate changes to controls that might use it."
@@ -21049,13 +21550,14 @@ msgstr ""
#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:7
msgid ""
-"Calling [method @GDScript.yield] within a function will cause that function "
-"to yield and return its current state as an object of this type. The yielded "
+"FIXME: Outdated docs as of GDScript rewrite in 4.0.\n"
+"Calling [code]yield[/code] within a function will cause that function to "
+"yield and return its current state as an object of this type. The yielded "
"function call can then be resumed later by calling [method resume] on this "
"state object."
msgstr ""
-#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:18
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:19
msgid ""
"Check whether the function call may be resumed. This is not the case if the "
"function state was already resumed.\n"
@@ -21066,12 +21568,12 @@ msgid ""
"script have survived up to that point."
msgstr ""
-#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:28
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:29
msgid ""
"Resume execution of the yielded function call.\n"
-"If handed an argument, return the argument from the [method @GDScript.yield] "
-"call in the yielded function call. You can pass e.g. an [Array] to hand "
-"multiple arguments.\n"
+"If handed an argument, return the argument from the [code]yield[/code] call "
+"in the yielded function call. You can pass e.g. an [Array] to hand multiple "
+"arguments.\n"
"This function returns what the resumed function call returns, possibly "
"another function state if yielded again."
msgstr ""
@@ -21640,10 +22142,20 @@ msgid ""
"code], see [enum PolyJoinType].\n"
"The operation may result in an outer polygon (boundary) and inner polygon "
"(hole) produced which could be distinguished by calling [method "
-"is_polygon_clockwise]."
+"is_polygon_clockwise].\n"
+"[b]Note:[/b] To translate the polygon's vertices specifically, use the "
+"[method Transform2D.xform] method:\n"
+"[codeblock]\n"
+"var polygon = PackedVector2Array([Vector2(0, 0), Vector2(100, 0), "
+"Vector2(100, 100), Vector2(0, 100)])\n"
+"var offset = Vector2(50, 50)\n"
+"polygon = Transform2D(0, offset).xform(polygon)\n"
+"print(polygon) # prints [Vector2(50, 50), Vector2(150, 50), Vector2(150, "
+"150), Vector2(50, 150)]\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/Geometry2D.xml:217
+#: doc/classes/Geometry2D.xml:224
msgid ""
"Inflates or deflates [code]polyline[/code] by [code]delta[/code] units "
"(pixels), producing polygons. If [code]delta[/code] is positive, makes the "
@@ -21659,13 +22171,13 @@ msgid ""
"is_polygon_clockwise]."
msgstr ""
-#: doc/classes/Geometry2D.xml:235
+#: doc/classes/Geometry2D.xml:242
msgid ""
"Returns if [code]point[/code] is inside the triangle specified by [code]a[/"
"code], [code]b[/code] and [code]c[/code]."
msgstr ""
-#: doc/classes/Geometry2D.xml:250
+#: doc/classes/Geometry2D.xml:257
msgid ""
"Checks if the two segments ([code]from_a[/code], [code]to_a[/code]) and "
"([code]from_b[/code], [code]to_b[/code]) intersect. If yes, return the point "
@@ -21673,7 +22185,7 @@ msgid ""
"empty [Variant]."
msgstr ""
-#: doc/classes/Geometry2D.xml:259
+#: doc/classes/Geometry2D.xml:266
msgid ""
"Triangulates the area specified by discrete set of [code]points[/code] such "
"that no point is inside the circumcircle of any resulting triangle. Returns "
@@ -21684,7 +22196,7 @@ msgid ""
"[PackedInt32Array] is returned."
msgstr ""
-#: doc/classes/Geometry2D.xml:268
+#: doc/classes/Geometry2D.xml:275
msgid ""
"Triangulates the polygon specified by the points in [code]polygon[/code]. "
"Returns a [PackedInt32Array] where each triangle consists of three "
@@ -21694,40 +22206,40 @@ msgid ""
"[PackedInt32Array] is returned."
msgstr ""
-#: doc/classes/Geometry2D.xml:274
+#: doc/classes/Geometry2D.xml:281
msgid ""
"Create regions where either subject or clip polygons (or both) are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:277
+#: doc/classes/Geometry2D.xml:284
msgid ""
"Create regions where subject polygons are filled except where clip polygons "
"are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:280
+#: doc/classes/Geometry2D.xml:287
msgid "Create regions where both subject and clip polygons are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:283
+#: doc/classes/Geometry2D.xml:290
msgid ""
"Create regions where either subject or clip polygons are filled but not "
"where both are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:286
+#: doc/classes/Geometry2D.xml:293
msgid ""
"Squaring is applied uniformally at all convex edge joins at [code]1 * delta[/"
"code]."
msgstr ""
-#: doc/classes/Geometry2D.xml:289
+#: doc/classes/Geometry2D.xml:296
msgid ""
"While flattened paths can never perfectly trace an arc, they are "
"approximated by a series of arc chords."
msgstr ""
-#: doc/classes/Geometry2D.xml:292
+#: doc/classes/Geometry2D.xml:299
msgid ""
"There's a necessary limit to mitered joins since offsetting edges that join "
"at very acute angles will produce excessively long and narrow \"spikes\". "
@@ -21735,27 +22247,27 @@ msgid ""
"distance, \"square\" joining is applied."
msgstr ""
-#: doc/classes/Geometry2D.xml:295
+#: doc/classes/Geometry2D.xml:302
msgid ""
"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
"as a polygon."
msgstr ""
-#: doc/classes/Geometry2D.xml:298
+#: doc/classes/Geometry2D.xml:305
msgid ""
"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
"as a polyline."
msgstr ""
-#: doc/classes/Geometry2D.xml:301
+#: doc/classes/Geometry2D.xml:308
msgid "Endpoints are squared off with no extension."
msgstr ""
-#: doc/classes/Geometry2D.xml:304
+#: doc/classes/Geometry2D.xml:311
msgid "Endpoints are squared off and extended by [code]delta[/code] units."
msgstr ""
-#: doc/classes/Geometry2D.xml:307
+#: doc/classes/Geometry2D.xml:314
msgid "Endpoints are rounded off and extended by [code]delta[/code] units."
msgstr ""
@@ -21985,7 +22497,7 @@ msgstr ""
msgid ""
"Bakes the effect from all [GeometryInstance3D]s marked with [constant "
"GeometryInstance3D.GI_MODE_BAKED] and [Light3D]s marked with either "
-"[constant Light3D.BAKE_INDIRECT] or [constant Light3D.BAKE_ALL]. If "
+"[constant Light3D.BAKE_DYNAMIC] or [constant Light3D.BAKE_STATIC]. If "
"[code]create_visual_debug[/code] is [code]true[/code], after baking the "
"light, this will generate a [MultiMesh] that has a cube representing each "
"solid cell with each cube colored to the cell's albedo color. This can be "
@@ -22872,121 +23384,119 @@ msgstr ""
msgid "Clear all cells."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:53
+#: modules/gridmap/doc_classes/GridMap.xml:49
msgid ""
-"The [MeshLibrary] item index located at the grid-based X, Y and Z "
-"coordinates. If the cell is empty, [constant INVALID_CELL_ITEM] will be "
-"returned."
+"The [MeshLibrary] item index located at the given grid coordinates. If the "
+"cell is empty, [constant INVALID_CELL_ITEM] will be returned."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:66
+#: modules/gridmap/doc_classes/GridMap.xml:58
msgid ""
-"The orientation of the cell at the grid-based X, Y and Z coordinates. -1 is "
-"returned if the cell is empty."
+"The orientation of the cell at the given grid coordinates. [code]-1[/code] "
+"is returned if the cell is empty."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:75 doc/classes/PhysicsBody2D.xml:35
+#: modules/gridmap/doc_classes/GridMap.xml:67 doc/classes/PhysicsBody2D.xml:35
#: doc/classes/PhysicsBody3D.xml:35
msgid "Returns an individual bit on the [member collision_layer]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:84 doc/classes/PhysicsBody2D.xml:44
+#: modules/gridmap/doc_classes/GridMap.xml:76 doc/classes/PhysicsBody2D.xml:44
#: doc/classes/PhysicsBody3D.xml:44
msgid "Returns an individual bit on the [member collision_mask]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:91
+#: modules/gridmap/doc_classes/GridMap.xml:83
msgid ""
"Returns an array of [Transform] and [Mesh] references corresponding to the "
"non-empty cells in the grid. The transforms are specified in world space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:98
+#: modules/gridmap/doc_classes/GridMap.xml:90
msgid ""
"Returns an array of [Vector3] with the non-empty cell coordinates in the "
"grid map."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:121
+#: modules/gridmap/doc_classes/GridMap.xml:109
msgid ""
"Returns the position of a grid cell in the GridMap's local coordinate space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:146
+#: modules/gridmap/doc_classes/GridMap.xml:130
msgid ""
-"Sets the mesh index for the cell referenced by its grid-based X, Y and Z "
-"coordinates.\n"
+"Sets the mesh index for the cell referenced by its grid coordinates.\n"
"A negative item index such as [constant INVALID_CELL_ITEM] will clear the "
"cell.\n"
"Optionally, the item's orientation can be passed. For valid orientation "
"values, see [method Basis.get_orthogonal_index]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:173
+#: modules/gridmap/doc_classes/GridMap.xml:157
msgid "Sets an individual bit on the [member collision_layer]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:184
+#: modules/gridmap/doc_classes/GridMap.xml:168
msgid "Sets an individual bit on the [member collision_mask]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:193
+#: modules/gridmap/doc_classes/GridMap.xml:177
msgid ""
"Returns the coordinates of the grid cell containing the given point.\n"
"[code]pos[/code] should be in the GridMap's local coordinate space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:200
+#: modules/gridmap/doc_classes/GridMap.xml:184
msgid "If [code]true[/code], grid items are centered on the X axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:203
+#: modules/gridmap/doc_classes/GridMap.xml:187
msgid "If [code]true[/code], grid items are centered on the Y axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:206
+#: modules/gridmap/doc_classes/GridMap.xml:190
msgid "If [code]true[/code], grid items are centered on the Z axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:209
+#: modules/gridmap/doc_classes/GridMap.xml:193
msgid ""
"The size of each octant measured in number of cells. This applies to all "
"three axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:212
+#: modules/gridmap/doc_classes/GridMap.xml:196
msgid ""
"The scale of the cell items.\n"
"This does not affect the size of the grid cells themselves, only the items "
"in them. This can be used to make cell items overlap their neighbors."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:216
+#: modules/gridmap/doc_classes/GridMap.xml:200
msgid ""
"The dimensions of the grid's cells.\n"
"This does not affect the size of the meshes. See [member cell_scale]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:220
+#: modules/gridmap/doc_classes/GridMap.xml:204
msgid ""
"The physics layers this GridMap is in.\n"
"GridMaps act as static bodies, meaning they aren't affected by gravity or "
"other forces. They only affect other physics bodies that collide with them."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:224
+#: modules/gridmap/doc_classes/GridMap.xml:208
msgid "The physics layers this GridMap detects collisions in."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:227
+#: modules/gridmap/doc_classes/GridMap.xml:211
msgid "The assigned [MeshLibrary]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:235
+#: modules/gridmap/doc_classes/GridMap.xml:219
msgid "Emitted when [member cell_size] changes."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:241
+#: modules/gridmap/doc_classes/GridMap.xml:225
msgid ""
"Invalid cell item that can be used in [method set_cell_item] to clear cells "
"(or represent an empty cell in [method get_cell_item])."
@@ -23351,27 +23861,33 @@ msgid ""
"server's side.\n"
"For more information on HTTP, see https://developer.mozilla.org/en-US/docs/"
"Web/HTTP (or read RFC 2616 to get it straight from the source: https://tools."
-"ietf.org/html/rfc2616)."
+"ietf.org/html/rfc2616).\n"
+"[b]Note:[/b] When performing HTTP requests from a project exported to HTML5, "
+"keep in mind the remote server may not allow requests from foreign origins "
+"due to [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/"
+"url]. If you host the server in question, you should modify its backend to "
+"allow requests from foreign origins by adding the [code]Access-Control-Allow-"
+"Origin: *[/code] HTTP header."
msgstr ""
-#: doc/classes/HTTPClient.xml:13
+#: doc/classes/HTTPClient.xml:14
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/"
"http_client_class.html"
msgstr ""
-#: doc/classes/HTTPClient.xml:14 doc/classes/HTTPRequest.xml:62
+#: doc/classes/HTTPClient.xml:15 doc/classes/HTTPRequest.xml:71
#: doc/classes/StreamPeerSSL.xml:10
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/ssl_certificates."
"html"
msgstr ""
-#: doc/classes/HTTPClient.xml:21
+#: doc/classes/HTTPClient.xml:22
msgid "Closes the current connection, allowing reuse of this [HTTPClient]."
msgstr ""
-#: doc/classes/HTTPClient.xml:36
+#: doc/classes/HTTPClient.xml:37
msgid ""
"Connects to a host. This needs to be done before any requests are sent.\n"
"The host should not have http:// prepended but will strip the protocol "
@@ -23383,7 +23899,7 @@ msgid ""
"[code]true[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:46
+#: doc/classes/HTTPClient.xml:47
msgid ""
"Returns the response's body length.\n"
"[b]Note:[/b] Some Web servers may not send a body length. In this case, the "
@@ -23391,15 +23907,15 @@ msgid ""
"the body length will also be [code]-1[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:54
+#: doc/classes/HTTPClient.xml:55
msgid "Returns the response's HTTP status code."
msgstr ""
-#: doc/classes/HTTPClient.xml:61
+#: doc/classes/HTTPClient.xml:62
msgid "Returns the response headers."
msgstr ""
-#: doc/classes/HTTPClient.xml:68
+#: doc/classes/HTTPClient.xml:69
msgid ""
"Returns all response headers as a Dictionary of structure [code]{ \"key\": "
"\"value1; value2\" }[/code] where the case-sensitivity of the keys and "
@@ -23414,27 +23930,27 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:82
+#: doc/classes/HTTPClient.xml:83
msgid ""
"Returns a [enum Status] constant. Need to call [method poll] in order to get "
"status updates."
msgstr ""
-#: doc/classes/HTTPClient.xml:89
+#: doc/classes/HTTPClient.xml:90
msgid "If [code]true[/code], this [HTTPClient] has a response available."
msgstr ""
-#: doc/classes/HTTPClient.xml:96
+#: doc/classes/HTTPClient.xml:97
msgid "If [code]true[/code], this [HTTPClient] has a response that is chunked."
msgstr ""
-#: doc/classes/HTTPClient.xml:103
+#: doc/classes/HTTPClient.xml:104
msgid ""
"This needs to be called in order to have any request processed. Check "
"results with [method get_status]."
msgstr ""
-#: doc/classes/HTTPClient.xml:112
+#: doc/classes/HTTPClient.xml:113
msgid ""
"Generates a GET/POST application/x-www-form-urlencoded style query string "
"from a provided dictionary, e.g.:\n"
@@ -23454,11 +23970,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:130
+#: doc/classes/HTTPClient.xml:131
msgid "Reads one chunk from the response."
msgstr ""
-#: doc/classes/HTTPClient.xml:145
+#: doc/classes/HTTPClient.xml:146
msgid ""
"Sends a request to the connected host. The URL parameter is just the part "
"after the host, so for [code]http://somehost.com/index.php[/code], it is "
@@ -23476,7 +23992,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:168
+#: doc/classes/HTTPClient.xml:169
msgid ""
"Sends a raw request to the connected host. The URL parameter is just the "
"part after the host, so for [code]http://somehost.com/index.php[/code], it "
@@ -23486,43 +24002,43 @@ msgid ""
"Sends the body data raw, as a byte array and does not encode it in any way."
msgstr ""
-#: doc/classes/HTTPClient.xml:176
+#: doc/classes/HTTPClient.xml:177
msgid ""
"If [code]true[/code], execution will block until all data is read from the "
"response."
msgstr ""
-#: doc/classes/HTTPClient.xml:179
+#: doc/classes/HTTPClient.xml:180
msgid "The connection to use for this client."
msgstr ""
-#: doc/classes/HTTPClient.xml:182
+#: doc/classes/HTTPClient.xml:183
msgid ""
"The size of the buffer used and maximum bytes to read per iteration. See "
"[method read_response_body_chunk]."
msgstr ""
-#: doc/classes/HTTPClient.xml:187
+#: doc/classes/HTTPClient.xml:188
msgid ""
"HTTP GET method. The GET method requests a representation of the specified "
"resource. Requests using GET should only retrieve data."
msgstr ""
-#: doc/classes/HTTPClient.xml:190
+#: doc/classes/HTTPClient.xml:191
msgid ""
"HTTP HEAD method. The HEAD method asks for a response identical to that of a "
"GET request, but without the response body. This is useful to request "
"metadata like HTTP headers or to check if a resource exists."
msgstr ""
-#: doc/classes/HTTPClient.xml:193
+#: doc/classes/HTTPClient.xml:194
msgid ""
"HTTP POST method. The POST method is used to submit an entity to the "
"specified resource, often causing a change in state or side effects on the "
"server. This is often used for forms and submitting data or uploading files."
msgstr ""
-#: doc/classes/HTTPClient.xml:196
+#: doc/classes/HTTPClient.xml:197
msgid ""
"HTTP PUT method. The PUT method asks to replace all current representations "
"of the target resource with the request payload. (You can think of POST as "
@@ -23530,103 +24046,103 @@ msgid ""
"not make a clear distinction or change their meaning)."
msgstr ""
-#: doc/classes/HTTPClient.xml:199
+#: doc/classes/HTTPClient.xml:200
msgid ""
"HTTP DELETE method. The DELETE method requests to delete the specified "
"resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:202
+#: doc/classes/HTTPClient.xml:203
msgid ""
"HTTP OPTIONS method. The OPTIONS method asks for a description of the "
"communication options for the target resource. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:205
+#: doc/classes/HTTPClient.xml:206
msgid ""
"HTTP TRACE method. The TRACE method performs a message loop-back test along "
"the path to the target resource. Returns the entire HTTP request received in "
"the response body. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:208
+#: doc/classes/HTTPClient.xml:209
msgid ""
"HTTP CONNECT method. The CONNECT method establishes a tunnel to the server "
"identified by the target resource. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:211
+#: doc/classes/HTTPClient.xml:212
msgid ""
"HTTP PATCH method. The PATCH method is used to apply partial modifications "
"to a resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:214
+#: doc/classes/HTTPClient.xml:215
msgid "Represents the size of the [enum Method] enum."
msgstr ""
-#: doc/classes/HTTPClient.xml:217
+#: doc/classes/HTTPClient.xml:218
msgid "Status: Disconnected from the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:220
+#: doc/classes/HTTPClient.xml:221
msgid "Status: Currently resolving the hostname for the given URL into an IP."
msgstr ""
-#: doc/classes/HTTPClient.xml:223
+#: doc/classes/HTTPClient.xml:224
msgid "Status: DNS failure: Can't resolve the hostname for the given URL."
msgstr ""
-#: doc/classes/HTTPClient.xml:226
+#: doc/classes/HTTPClient.xml:227
msgid "Status: Currently connecting to server."
msgstr ""
-#: doc/classes/HTTPClient.xml:229
+#: doc/classes/HTTPClient.xml:230
msgid "Status: Can't connect to the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:232
+#: doc/classes/HTTPClient.xml:233
msgid "Status: Connection established."
msgstr ""
-#: doc/classes/HTTPClient.xml:235
+#: doc/classes/HTTPClient.xml:236
msgid "Status: Currently sending request."
msgstr ""
-#: doc/classes/HTTPClient.xml:238
+#: doc/classes/HTTPClient.xml:239
msgid "Status: HTTP body received."
msgstr ""
-#: doc/classes/HTTPClient.xml:241
+#: doc/classes/HTTPClient.xml:242
msgid "Status: Error in HTTP connection."
msgstr ""
-#: doc/classes/HTTPClient.xml:244
+#: doc/classes/HTTPClient.xml:245
msgid "Status: Error in SSL handshake."
msgstr ""
-#: doc/classes/HTTPClient.xml:247
+#: doc/classes/HTTPClient.xml:248
msgid ""
"HTTP status code [code]100 Continue[/code]. Interim response that indicates "
"everything so far is OK and that the client should continue with the request "
"(or ignore this status if already finished)."
msgstr ""
-#: doc/classes/HTTPClient.xml:250
+#: doc/classes/HTTPClient.xml:251
msgid ""
"HTTP status code [code]101 Switching Protocol[/code]. Sent in response to an "
"[code]Upgrade[/code] request header by the client. Indicates the protocol "
"the server is switching to."
msgstr ""
-#: doc/classes/HTTPClient.xml:253
+#: doc/classes/HTTPClient.xml:254
msgid ""
"HTTP status code [code]102 Processing[/code] (WebDAV). Indicates that the "
"server has received and is processing the request, but no response is "
"available yet."
msgstr ""
-#: doc/classes/HTTPClient.xml:256
+#: doc/classes/HTTPClient.xml:257
msgid ""
"HTTP status code [code]200 OK[/code]. The request has succeeded. Default "
"response for successful requests. Meaning varies depending on the request. "
@@ -23637,14 +24153,14 @@ msgid ""
"server."
msgstr ""
-#: doc/classes/HTTPClient.xml:259
+#: doc/classes/HTTPClient.xml:260
msgid ""
"HTTP status code [code]201 Created[/code]. The request has succeeded and a "
"new resource has been created as a result of it. This is typically the "
"response sent after a PUT request."
msgstr ""
-#: doc/classes/HTTPClient.xml:262
+#: doc/classes/HTTPClient.xml:263
msgid ""
"HTTP status code [code]202 Accepted[/code]. The request has been received "
"but not yet acted upon. It is non-committal, meaning that there is no way in "
@@ -23653,7 +24169,7 @@ msgid ""
"server handles the request, or for batch processing."
msgstr ""
-#: doc/classes/HTTPClient.xml:265
+#: doc/classes/HTTPClient.xml:266
msgid ""
"HTTP status code [code]203 Non-Authoritative Information[/code]. This "
"response code means returned meta-information set is not exact set as "
@@ -23662,14 +24178,14 @@ msgid ""
"instead of this response."
msgstr ""
-#: doc/classes/HTTPClient.xml:268
+#: doc/classes/HTTPClient.xml:269
msgid ""
"HTTP status code [code]204 No Content[/code]. There is no content to send "
"for this request, but the headers may be useful. The user-agent may update "
"its cached headers for this resource with the new ones."
msgstr ""
-#: doc/classes/HTTPClient.xml:271
+#: doc/classes/HTTPClient.xml:272
msgid ""
"HTTP status code [code]205 Reset Content[/code]. The server has fulfilled "
"the request and desires that the client resets the \"document view\" that "
@@ -23677,49 +24193,49 @@ msgid ""
"origin server."
msgstr ""
-#: doc/classes/HTTPClient.xml:274
+#: doc/classes/HTTPClient.xml:275
msgid ""
"HTTP status code [code]206 Partial Content[/code]. This response code is "
"used because of a range header sent by the client to separate download into "
"multiple streams."
msgstr ""
-#: doc/classes/HTTPClient.xml:277
+#: doc/classes/HTTPClient.xml:278
msgid ""
"HTTP status code [code]207 Multi-Status[/code] (WebDAV). A Multi-Status "
"response conveys information about multiple resources in situations where "
"multiple status codes might be appropriate."
msgstr ""
-#: doc/classes/HTTPClient.xml:280
+#: doc/classes/HTTPClient.xml:281
msgid ""
"HTTP status code [code]208 Already Reported[/code] (WebDAV). Used inside a "
"DAV: propstat response element to avoid enumerating the internal members of "
"multiple bindings to the same collection repeatedly."
msgstr ""
-#: doc/classes/HTTPClient.xml:283
+#: doc/classes/HTTPClient.xml:284
msgid ""
"HTTP status code [code]226 IM Used[/code] (WebDAV). The server has fulfilled "
"a GET request for the resource, and the response is a representation of the "
"result of one or more instance-manipulations applied to the current instance."
msgstr ""
-#: doc/classes/HTTPClient.xml:286
+#: doc/classes/HTTPClient.xml:287
msgid ""
"HTTP status code [code]300 Multiple Choice[/code]. The request has more than "
"one possible responses and there is no standardized way to choose one of the "
"responses. User-agent or user should choose one of them."
msgstr ""
-#: doc/classes/HTTPClient.xml:289
+#: doc/classes/HTTPClient.xml:290
msgid ""
"HTTP status code [code]301 Moved Permanently[/code]. Redirection. This "
"response code means the URI of requested resource has been changed. The new "
"URI is usually included in the response."
msgstr ""
-#: doc/classes/HTTPClient.xml:292
+#: doc/classes/HTTPClient.xml:293
msgid ""
"HTTP status code [code]302 Found[/code]. Temporary redirection. This "
"response code means the URI of requested resource has been changed "
@@ -23727,7 +24243,7 @@ msgid ""
"this same URI should be used by the client in future requests."
msgstr ""
-#: doc/classes/HTTPClient.xml:295
+#: doc/classes/HTTPClient.xml:296
msgid ""
"HTTP status code [code]303 See Other[/code]. The server is redirecting the "
"user agent to a different resource, as indicated by a URI in the Location "
@@ -23735,39 +24251,39 @@ msgid ""
"original request."
msgstr ""
-#: doc/classes/HTTPClient.xml:298
+#: doc/classes/HTTPClient.xml:299
msgid ""
"HTTP status code [code]304 Not Modified[/code]. A conditional GET or HEAD "
"request has been received and would have resulted in a 200 OK response if it "
"were not for the fact that the condition evaluated to [code]false[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:301
+#: doc/classes/HTTPClient.xml:302
msgid ""
"HTTP status code [code]305 Use Proxy[/code]. [i]Deprecated. Do not use.[/i]"
msgstr ""
-#: doc/classes/HTTPClient.xml:304
+#: doc/classes/HTTPClient.xml:305
msgid ""
"HTTP status code [code]306 Switch Proxy[/code]. [i]Deprecated. Do not use.[/"
"i]"
msgstr ""
-#: doc/classes/HTTPClient.xml:307
+#: doc/classes/HTTPClient.xml:308
msgid ""
"HTTP status code [code]307 Temporary Redirect[/code]. The target resource "
"resides temporarily under a different URI and the user agent MUST NOT change "
"the request method if it performs an automatic redirection to that URI."
msgstr ""
-#: doc/classes/HTTPClient.xml:310
+#: doc/classes/HTTPClient.xml:311
msgid ""
"HTTP status code [code]308 Permanent Redirect[/code]. The target resource "
"has been assigned a new permanent URI and any future references to this "
"resource ought to use one of the enclosed URIs."
msgstr ""
-#: doc/classes/HTTPClient.xml:313
+#: doc/classes/HTTPClient.xml:314
msgid ""
"HTTP status code [code]400 Bad Request[/code]. The request was invalid. The "
"server cannot or will not process the request due to something that is "
@@ -23776,21 +24292,21 @@ msgid ""
"routing)."
msgstr ""
-#: doc/classes/HTTPClient.xml:316
+#: doc/classes/HTTPClient.xml:317
msgid ""
"HTTP status code [code]401 Unauthorized[/code]. Credentials required. The "
"request has not been applied because it lacks valid authentication "
"credentials for the target resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:319
+#: doc/classes/HTTPClient.xml:320
msgid ""
"HTTP status code [code]402 Payment Required[/code]. This response code is "
"reserved for future use. Initial aim for creating this code was using it for "
"digital payment systems, however this is not currently used."
msgstr ""
-#: doc/classes/HTTPClient.xml:322
+#: doc/classes/HTTPClient.xml:323
msgid ""
"HTTP status code [code]403 Forbidden[/code]. The client does not have access "
"rights to the content, i.e. they are unauthorized, so server is rejecting to "
@@ -23798,7 +24314,7 @@ msgid ""
"known to the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:325
+#: doc/classes/HTTPClient.xml:326
msgid ""
"HTTP status code [code]404 Not Found[/code]. The server can not find "
"requested resource. Either the URL is not recognized or the endpoint is "
@@ -23806,7 +24322,7 @@ msgid ""
"403 to hide existence of a resource if the client is not authorized."
msgstr ""
-#: doc/classes/HTTPClient.xml:328
+#: doc/classes/HTTPClient.xml:329
msgid ""
"HTTP status code [code]405 Method Not Allowed[/code]. The request's HTTP "
"method is known by the server but has been disabled and cannot be used. For "
@@ -23814,7 +24330,7 @@ msgid ""
"GET and HEAD, must never be disabled and should not return this error code."
msgstr ""
-#: doc/classes/HTTPClient.xml:331
+#: doc/classes/HTTPClient.xml:332
msgid ""
"HTTP status code [code]406 Not Acceptable[/code]. The target resource does "
"not have a current representation that would be acceptable to the user "
@@ -23822,21 +24338,21 @@ msgid ""
"request. Used when negotiation content."
msgstr ""
-#: doc/classes/HTTPClient.xml:334
+#: doc/classes/HTTPClient.xml:335
msgid ""
"HTTP status code [code]407 Proxy Authentication Required[/code]. Similar to "
"401 Unauthorized, but it indicates that the client needs to authenticate "
"itself in order to use a proxy."
msgstr ""
-#: doc/classes/HTTPClient.xml:337
+#: doc/classes/HTTPClient.xml:338
msgid ""
"HTTP status code [code]408 Request Timeout[/code]. The server did not "
"receive a complete request message within the time that it was prepared to "
"wait."
msgstr ""
-#: doc/classes/HTTPClient.xml:340
+#: doc/classes/HTTPClient.xml:341
msgid ""
"HTTP status code [code]409 Conflict[/code]. The request could not be "
"completed due to a conflict with the current state of the target resource. "
@@ -23844,47 +24360,47 @@ msgid ""
"conflict and resubmit the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:343
+#: doc/classes/HTTPClient.xml:344
msgid ""
"HTTP status code [code]410 Gone[/code]. The target resource is no longer "
"available at the origin server and this condition is likely permanent."
msgstr ""
-#: doc/classes/HTTPClient.xml:346
+#: doc/classes/HTTPClient.xml:347
msgid ""
"HTTP status code [code]411 Length Required[/code]. The server refuses to "
"accept the request without a defined Content-Length header."
msgstr ""
-#: doc/classes/HTTPClient.xml:349
+#: doc/classes/HTTPClient.xml:350
msgid ""
"HTTP status code [code]412 Precondition Failed[/code]. One or more "
"conditions given in the request header fields evaluated to [code]false[/"
"code] when tested on the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:352
+#: doc/classes/HTTPClient.xml:353
msgid ""
"HTTP status code [code]413 Entity Too Large[/code]. The server is refusing "
"to process a request because the request payload is larger than the server "
"is willing or able to process."
msgstr ""
-#: doc/classes/HTTPClient.xml:355
+#: doc/classes/HTTPClient.xml:356
msgid ""
"HTTP status code [code]414 Request-URI Too Long[/code]. The server is "
"refusing to service the request because the request-target is longer than "
"the server is willing to interpret."
msgstr ""
-#: doc/classes/HTTPClient.xml:358
+#: doc/classes/HTTPClient.xml:359
msgid ""
"HTTP status code [code]415 Unsupported Media Type[/code]. The origin server "
"is refusing to service the request because the payload is in a format not "
"supported by this method on the target resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:361
+#: doc/classes/HTTPClient.xml:362
msgid ""
"HTTP status code [code]416 Requested Range Not Satisfiable[/code]. None of "
"the ranges in the request's Range header field overlap the current extent of "
@@ -23892,21 +24408,21 @@ msgid ""
"to invalid ranges or an excessive request of small or overlapping ranges."
msgstr ""
-#: doc/classes/HTTPClient.xml:364
+#: doc/classes/HTTPClient.xml:365
msgid ""
"HTTP status code [code]417 Expectation Failed[/code]. The expectation given "
"in the request's Expect header field could not be met by at least one of the "
"inbound servers."
msgstr ""
-#: doc/classes/HTTPClient.xml:367
+#: doc/classes/HTTPClient.xml:368
msgid ""
"HTTP status code [code]418 I'm A Teapot[/code]. Any attempt to brew coffee "
"with a teapot should result in the error code \"418 I'm a teapot\". The "
"resulting entity body MAY be short and stout."
msgstr ""
-#: doc/classes/HTTPClient.xml:370
+#: doc/classes/HTTPClient.xml:371
msgid ""
"HTTP status code [code]421 Misdirected Request[/code]. The request was "
"directed at a server that is not able to produce a response. This can be "
@@ -23914,7 +24430,7 @@ msgid ""
"combination of scheme and authority that are included in the request URI."
msgstr ""
-#: doc/classes/HTTPClient.xml:373
+#: doc/classes/HTTPClient.xml:374
msgid ""
"HTTP status code [code]422 Unprocessable Entity[/code] (WebDAV). The server "
"understands the content type of the request entity (hence a 415 Unsupported "
@@ -23923,40 +24439,40 @@ msgid ""
"was unable to process the contained instructions."
msgstr ""
-#: doc/classes/HTTPClient.xml:376
+#: doc/classes/HTTPClient.xml:377
msgid ""
"HTTP status code [code]423 Locked[/code] (WebDAV). The source or destination "
"resource of a method is locked."
msgstr ""
-#: doc/classes/HTTPClient.xml:379
+#: doc/classes/HTTPClient.xml:380
msgid ""
"HTTP status code [code]424 Failed Dependency[/code] (WebDAV). The method "
"could not be performed on the resource because the requested action depended "
"on another action and that action failed."
msgstr ""
-#: doc/classes/HTTPClient.xml:382
+#: doc/classes/HTTPClient.xml:383
msgid ""
"HTTP status code [code]426 Upgrade Required[/code]. The server refuses to "
"perform the request using the current protocol but might be willing to do so "
"after the client upgrades to a different protocol."
msgstr ""
-#: doc/classes/HTTPClient.xml:385
+#: doc/classes/HTTPClient.xml:386
msgid ""
"HTTP status code [code]428 Precondition Required[/code]. The origin server "
"requires the request to be conditional."
msgstr ""
-#: doc/classes/HTTPClient.xml:388
+#: doc/classes/HTTPClient.xml:389
msgid ""
"HTTP status code [code]429 Too Many Requests[/code]. The user has sent too "
"many requests in a given amount of time (see \"rate limiting\"). Back off "
"and increase time between requests or try again later."
msgstr ""
-#: doc/classes/HTTPClient.xml:391
+#: doc/classes/HTTPClient.xml:392
msgid ""
"HTTP status code [code]431 Request Header Fields Too Large[/code]. The "
"server is unwilling to process the request because its header fields are too "
@@ -23964,27 +24480,27 @@ msgid ""
"header fields."
msgstr ""
-#: doc/classes/HTTPClient.xml:394
+#: doc/classes/HTTPClient.xml:395
msgid ""
"HTTP status code [code]451 Response Unavailable For Legal Reasons[/code]. "
"The server is denying access to the resource as a consequence of a legal "
"demand."
msgstr ""
-#: doc/classes/HTTPClient.xml:397
+#: doc/classes/HTTPClient.xml:398
msgid ""
"HTTP status code [code]500 Internal Server Error[/code]. The server "
"encountered an unexpected condition that prevented it from fulfilling the "
"request."
msgstr ""
-#: doc/classes/HTTPClient.xml:400
+#: doc/classes/HTTPClient.xml:401
msgid ""
"HTTP status code [code]501 Not Implemented[/code]. The server does not "
"support the functionality required to fulfill the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:403
+#: doc/classes/HTTPClient.xml:404
msgid ""
"HTTP status code [code]502 Bad Gateway[/code]. The server, while acting as a "
"gateway or proxy, received an invalid response from an inbound server it "
@@ -23992,7 +24508,7 @@ msgid ""
"balancers or proxies."
msgstr ""
-#: doc/classes/HTTPClient.xml:406
+#: doc/classes/HTTPClient.xml:407
msgid ""
"HTTP status code [code]503 Service Unavailable[/code]. The server is "
"currently unable to handle the request due to a temporary overload or "
@@ -24000,7 +24516,7 @@ msgid ""
"again later."
msgstr ""
-#: doc/classes/HTTPClient.xml:409
+#: doc/classes/HTTPClient.xml:410
msgid ""
"HTTP status code [code]504 Gateway Timeout[/code]. The server, while acting "
"as a gateway or proxy, did not receive a timely response from an upstream "
@@ -24008,14 +24524,14 @@ msgid ""
"returned by load balancers or proxies."
msgstr ""
-#: doc/classes/HTTPClient.xml:412
+#: doc/classes/HTTPClient.xml:413
msgid ""
"HTTP status code [code]505 HTTP Version Not Supported[/code]. The server "
"does not support, or refuses to support, the major version of HTTP that was "
"used in the request message."
msgstr ""
-#: doc/classes/HTTPClient.xml:415
+#: doc/classes/HTTPClient.xml:416
msgid ""
"HTTP status code [code]506 Variant Also Negotiates[/code]. The server has an "
"internal configuration error: the chosen variant resource is configured to "
@@ -24023,14 +24539,14 @@ msgid ""
"proper end point in the negotiation process."
msgstr ""
-#: doc/classes/HTTPClient.xml:418
+#: doc/classes/HTTPClient.xml:419
msgid ""
"HTTP status code [code]507 Insufficient Storage[/code]. The method could not "
"be performed on the resource because the server is unable to store the "
"representation needed to successfully complete the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:421
+#: doc/classes/HTTPClient.xml:422
msgid ""
"HTTP status code [code]508 Loop Detected[/code]. The server terminated an "
"operation because it encountered an infinite loop while processing a request "
@@ -24038,14 +24554,14 @@ msgid ""
"failed."
msgstr ""
-#: doc/classes/HTTPClient.xml:424
+#: doc/classes/HTTPClient.xml:425
msgid ""
"HTTP status code [code]510 Not Extended[/code]. The policy for accessing the "
"resource has not been met in the request. The server should send back all "
"the information necessary for the client to issue an extended request."
msgstr ""
-#: doc/classes/HTTPClient.xml:427
+#: doc/classes/HTTPClient.xml:428
msgid ""
"HTTP status code [code]511 Network Authentication Required[/code]. The "
"client needs to authenticate to gain network access."
@@ -24071,12 +24587,21 @@ msgid ""
" http_request.connect(\"request_completed\", self, "
"\"_http_request_completed\")\n"
"\n"
-" # Perform the HTTP request. The URL below returns some JSON as of "
-"writing.\n"
+" # Perform a GET request. The URL below returns JSON as of writing.\n"
" var error = http_request.request(\"https://httpbin.org/get\")\n"
" if error != OK:\n"
" push_error(\"An error occurred in the HTTP request.\")\n"
"\n"
+" # Perform a POST request. The URL below returns JSON as of writing.\n"
+" # Note: Don't make simultaneous requests using a single HTTPRequest "
+"node.\n"
+" # The snippet below is provided for reference only.\n"
+" var body = {\"name\": \"Godette\"}\n"
+" var error = http_request.request(\"https://httpbin.org/post\", [], true, "
+"HTTPClient.METHOD_POST, body)\n"
+" if error != OK:\n"
+" push_error(\"An error occurred in the HTTP request.\")\n"
+"\n"
"\n"
"# Called when the HTTP request is completed.\n"
"func _http_request_completed(result, response_code, headers, body):\n"
@@ -24116,20 +24641,26 @@ msgid ""
" var texture_rect = TextureRect.new()\n"
" add_child(texture_rect)\n"
" texture_rect.texture = texture\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] When performing HTTP requests from a project exported to HTML5, "
+"keep in mind the remote server may not allow requests from foreign origins "
+"due to [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/"
+"url]. If you host the server in question, you should modify its backend to "
+"allow requests from foreign origins by adding the [code]Access-Control-Allow-"
+"Origin: *[/code] HTTP header."
msgstr ""
-#: doc/classes/HTTPRequest.xml:61
+#: doc/classes/HTTPRequest.xml:70
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/"
"http_request_class.html"
msgstr ""
-#: doc/classes/HTTPRequest.xml:69
+#: doc/classes/HTTPRequest.xml:78
msgid "Cancels the current request."
msgstr ""
-#: doc/classes/HTTPRequest.xml:76
+#: doc/classes/HTTPRequest.xml:85
msgid ""
"Returns the response body length.\n"
"[b]Note:[/b] Some Web servers may not send a body length. In this case, the "
@@ -24137,17 +24668,17 @@ msgid ""
"the body length will also be [code]-1[/code]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:84
+#: doc/classes/HTTPRequest.xml:93
msgid "Returns the amount of bytes this HTTPRequest downloaded."
msgstr ""
-#: doc/classes/HTTPRequest.xml:91
+#: doc/classes/HTTPRequest.xml:100
msgid ""
"Returns the current status of the underlying [HTTPClient]. See [enum "
"HTTPClient.Status]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:108
+#: doc/classes/HTTPRequest.xml:117
msgid ""
"Creates request on the underlying [HTTPClient]. If there is no configuration "
"errors, it tries to connect using [method HTTPClient.connect_to_host] and "
@@ -24160,11 +24691,11 @@ msgid ""
"connect to host."
msgstr ""
-#: doc/classes/HTTPRequest.xml:115
+#: doc/classes/HTTPRequest.xml:124
msgid "Maximum allowed size for response bodies."
msgstr ""
-#: doc/classes/HTTPRequest.xml:118
+#: doc/classes/HTTPRequest.xml:127
msgid ""
"The size of the buffer used and maximum bytes to read per iteration. See "
"[member HTTPClient.read_chunk_size].\n"
@@ -24172,63 +24703,63 @@ msgid ""
"files to achieve better speeds at the cost of memory."
msgstr ""
-#: doc/classes/HTTPRequest.xml:122
+#: doc/classes/HTTPRequest.xml:131
msgid "The file to download into. Will output any received file into it."
msgstr ""
-#: doc/classes/HTTPRequest.xml:125
+#: doc/classes/HTTPRequest.xml:134
msgid "Maximum number of allowed redirects."
msgstr ""
-#: doc/classes/HTTPRequest.xml:130
+#: doc/classes/HTTPRequest.xml:139
msgid "If [code]true[/code], multithreading is used to improve performance."
msgstr ""
-#: doc/classes/HTTPRequest.xml:144
+#: doc/classes/HTTPRequest.xml:153
msgid "Emitted when a request is completed."
msgstr ""
-#: doc/classes/HTTPRequest.xml:150
+#: doc/classes/HTTPRequest.xml:159
msgid "Request successful."
msgstr ""
-#: doc/classes/HTTPRequest.xml:155
+#: doc/classes/HTTPRequest.xml:164
msgid "Request failed while connecting."
msgstr ""
-#: doc/classes/HTTPRequest.xml:158
+#: doc/classes/HTTPRequest.xml:167
msgid "Request failed while resolving."
msgstr ""
-#: doc/classes/HTTPRequest.xml:161
+#: doc/classes/HTTPRequest.xml:170
msgid "Request failed due to connection (read/write) error."
msgstr ""
-#: doc/classes/HTTPRequest.xml:164
+#: doc/classes/HTTPRequest.xml:173
msgid "Request failed on SSL handshake."
msgstr ""
-#: doc/classes/HTTPRequest.xml:167
+#: doc/classes/HTTPRequest.xml:176
msgid "Request does not have a response (yet)."
msgstr ""
-#: doc/classes/HTTPRequest.xml:170
+#: doc/classes/HTTPRequest.xml:179
msgid "Request exceeded its maximum size limit, see [member body_size_limit]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:173
+#: doc/classes/HTTPRequest.xml:182
msgid "Request failed (currently unused)."
msgstr ""
-#: doc/classes/HTTPRequest.xml:176
+#: doc/classes/HTTPRequest.xml:185
msgid "HTTPRequest couldn't open the download file."
msgstr ""
-#: doc/classes/HTTPRequest.xml:179
+#: doc/classes/HTTPRequest.xml:188
msgid "HTTPRequest couldn't write to the download file."
msgstr ""
-#: doc/classes/HTTPRequest.xml:182
+#: doc/classes/HTTPRequest.xml:191
msgid "Request reached its maximum redirect limit, see [member max_redirects]."
msgstr ""
@@ -24452,42 +24983,46 @@ msgid "Loads an image from the binary contents of a PNG file."
msgstr ""
#: doc/classes/Image.xml:373
+msgid "Loads an image from the binary contents of a TGA file."
+msgstr ""
+
+#: doc/classes/Image.xml:382
msgid "Loads an image from the binary contents of a WebP file."
msgstr ""
-#: doc/classes/Image.xml:380
+#: doc/classes/Image.xml:389
msgid ""
"Converts the image's data to represent coordinates on a 3D plane. This is "
"used when the image represents a normalmap. A normalmap can add lots of "
"detail to a 3D surface without increasing the polygon count."
msgstr ""
-#: doc/classes/Image.xml:387
+#: doc/classes/Image.xml:396
msgid ""
"Multiplies color values with alpha values. Resulting color values for a "
"pixel are [code](color * alpha)/256[/code]."
msgstr ""
-#: doc/classes/Image.xml:400
+#: doc/classes/Image.xml:409
msgid ""
"Resizes the image to the given [code]width[/code] and [code]height[/code]. "
"New pixels are calculated using [code]interpolation[/code]. See "
"[code]interpolation[/code] constants."
msgstr ""
-#: doc/classes/Image.xml:409
+#: doc/classes/Image.xml:418
msgid ""
"Resizes the image to the nearest power of 2 for the width and height. If "
"[code]square[/code] is [code]true[/code] then set width and height to be the "
"same."
msgstr ""
-#: doc/classes/Image.xml:416
+#: doc/classes/Image.xml:425
msgid ""
"Converts a standard RGBE (Red Green Blue Exponent) image to an sRGB image."
msgstr ""
-#: doc/classes/Image.xml:427
+#: doc/classes/Image.xml:436
msgid ""
"Saves the image as an EXR file to [code]path[/code]. If [code]grayscale[/"
"code] is [code]true[/code] and the image has only one channel, it will be "
@@ -24496,11 +25031,11 @@ msgid ""
"TinyEXR module."
msgstr ""
-#: doc/classes/Image.xml:436
+#: doc/classes/Image.xml:445
msgid "Saves the image as a PNG file to [code]path[/code]."
msgstr ""
-#: doc/classes/Image.xml:455
+#: doc/classes/Image.xml:464
msgid ""
"Sets the [Color] of the pixel at [code](x, y)[/code]. Example:\n"
"[codeblock]\n"
@@ -24510,7 +25045,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Image.xml:471
+#: doc/classes/Image.xml:480
msgid ""
"Sets the [Color] of the pixel at [code](dst.x, dst.y)[/code]. Note that the "
"[code]dst[/code] values must be integers. Example:\n"
@@ -24521,51 +25056,51 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Image.xml:483
+#: doc/classes/Image.xml:492
msgid "Shrinks the image by a factor of 2."
msgstr ""
-#: doc/classes/Image.xml:490
+#: doc/classes/Image.xml:499
msgid "Converts the raw data from the sRGB colorspace to a linear scale."
msgstr ""
-#: doc/classes/Image.xml:496
+#: doc/classes/Image.xml:505
msgid ""
"Holds all of the image's color data in a given format. See [enum Format] "
"constants."
msgstr ""
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:510
msgid "The maximal width allowed for [Image] resources."
msgstr ""
-#: doc/classes/Image.xml:504
+#: doc/classes/Image.xml:513
msgid "The maximal height allowed for [Image] resources."
msgstr ""
-#: doc/classes/Image.xml:507
+#: doc/classes/Image.xml:516
msgid "Texture format with a single 8-bit depth representing luminance."
msgstr ""
-#: doc/classes/Image.xml:510
+#: doc/classes/Image.xml:519
msgid ""
"OpenGL texture format with two values, luminance and alpha each stored with "
"8 bits."
msgstr ""
-#: doc/classes/Image.xml:513
+#: doc/classes/Image.xml:522
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
"bitdepth of 8."
msgstr ""
-#: doc/classes/Image.xml:516
+#: doc/classes/Image.xml:525
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
-#: doc/classes/Image.xml:519
+#: doc/classes/Image.xml:528
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -24573,7 +25108,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:523
+#: doc/classes/Image.xml:532
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -24581,67 +25116,67 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:536
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
-#: doc/classes/Image.xml:532
+#: doc/classes/Image.xml:541
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
-#: doc/classes/Image.xml:535
+#: doc/classes/Image.xml:544
msgid ""
"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
"each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:538
+#: doc/classes/Image.xml:547
msgid ""
"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
"components, each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:541
+#: doc/classes/Image.xml:550
msgid ""
"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
"components, each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:544
+#: doc/classes/Image.xml:553
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 16-"
"bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:556
msgid ""
"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
"each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:550
+#: doc/classes/Image.xml:559
msgid ""
"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
"components, each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:553
+#: doc/classes/Image.xml:562
msgid ""
"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
"components, each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:556
+#: doc/classes/Image.xml:565
msgid ""
"A special OpenGL texture format where the three color components have 9 bits "
"of precision and all three share a single 5-bit exponent."
msgstr ""
-#: doc/classes/Image.xml:559
+#: doc/classes/Image.xml:568
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format that uses Block Compression 1, and is the smallest variation "
@@ -24651,7 +25186,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:563
+#: doc/classes/Image.xml:572
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format that uses Block Compression 2, and color data is interpreted "
@@ -24661,7 +25196,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:567
+#: doc/classes/Image.xml:576
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format also known as Block Compression 3 or BC3 that contains 64 "
@@ -24672,7 +25207,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:571
+#: doc/classes/Image.xml:580
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -24680,7 +25215,7 @@ msgid ""
"DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:574
+#: doc/classes/Image.xml:583
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -24688,7 +25223,7 @@ msgid ""
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:577
+#: doc/classes/Image.xml:586
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -24697,21 +25232,21 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:581
+#: doc/classes/Image.xml:590
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with signed floating-point "
"RGB components."
msgstr ""
-#: doc/classes/Image.xml:584
+#: doc/classes/Image.xml:593
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned floating-point "
"RGB components."
msgstr ""
-#: doc/classes/Image.xml:587
+#: doc/classes/Image.xml:596
msgid ""
"Texture format used on PowerVR-supported mobile platforms, uses 2-bit color "
"depth with no alpha. More information can be found [url=https://en.wikipedia."
@@ -24720,25 +25255,25 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:600
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:603
msgid ""
"Similar to [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with 4-"
"bit color depth and no alpha."
msgstr ""
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:606
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:609
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -24746,7 +25281,7 @@ msgid ""
"standard. This format cannot store an alpha channel."
msgstr ""
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:612
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24754,7 +25289,7 @@ msgid ""
"unsigned data."
msgstr ""
-#: doc/classes/Image.xml:606
+#: doc/classes/Image.xml:615
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24762,7 +25297,7 @@ msgid ""
"channel of signed data."
msgstr ""
-#: doc/classes/Image.xml:609
+#: doc/classes/Image.xml:618
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24770,7 +25305,7 @@ msgid ""
"of unsigned data."
msgstr ""
-#: doc/classes/Image.xml:612
+#: doc/classes/Image.xml:621
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24778,7 +25313,7 @@ msgid ""
"channels of signed data."
msgstr ""
-#: doc/classes/Image.xml:615
+#: doc/classes/Image.xml:624
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24788,7 +25323,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:619
+#: doc/classes/Image.xml:628
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24798,7 +25333,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:623
+#: doc/classes/Image.xml:632
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24809,31 +25344,31 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:631
+#: doc/classes/Image.xml:640
msgid "Represents the size of the [enum Format] enum."
msgstr ""
-#: doc/classes/Image.xml:634
+#: doc/classes/Image.xml:643
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
-#: doc/classes/Image.xml:637
+#: doc/classes/Image.xml:646
msgid ""
"Performs bilinear interpolation. If the image is resized, it will be blurry. "
"This mode is faster than [constant INTERPOLATE_CUBIC], but it results in "
"lower quality."
msgstr ""
-#: doc/classes/Image.xml:640
+#: doc/classes/Image.xml:649
msgid ""
"Performs cubic interpolation. If the image is resized, it will be blurry. "
"This mode often gives better results compared to [constant "
"INTERPOLATE_BILINEAR], at the cost of being slower."
msgstr ""
-#: doc/classes/Image.xml:643
+#: doc/classes/Image.xml:652
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -24848,55 +25383,55 @@ msgid ""
"a new set will be generated for the resulting image."
msgstr ""
-#: doc/classes/Image.xml:650
+#: doc/classes/Image.xml:659
msgid ""
"Performs Lanczos interpolation. This is the slowest image resizing mode, but "
"it typically gives the best results, especially when downscalng images."
msgstr ""
-#: doc/classes/Image.xml:653
+#: doc/classes/Image.xml:662
msgid "Image does not have alpha."
msgstr ""
-#: doc/classes/Image.xml:656
+#: doc/classes/Image.xml:665
msgid "Image stores alpha in a single bit."
msgstr ""
-#: doc/classes/Image.xml:659
+#: doc/classes/Image.xml:668
msgid "Image uses alpha."
msgstr ""
-#: doc/classes/Image.xml:662
+#: doc/classes/Image.xml:671
msgid "Use S3TC compression."
msgstr ""
-#: doc/classes/Image.xml:665
+#: doc/classes/Image.xml:674
msgid "Use PVRTC2 compression."
msgstr ""
-#: doc/classes/Image.xml:668
+#: doc/classes/Image.xml:677
msgid "Use PVRTC4 compression."
msgstr ""
-#: doc/classes/Image.xml:671
+#: doc/classes/Image.xml:680
msgid "Use ETC compression."
msgstr ""
-#: doc/classes/Image.xml:674
+#: doc/classes/Image.xml:683
msgid "Use ETC2 compression."
msgstr ""
-#: doc/classes/Image.xml:689
+#: doc/classes/Image.xml:698
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
-#: doc/classes/Image.xml:692
+#: doc/classes/Image.xml:701
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
-#: doc/classes/Image.xml:695
+#: doc/classes/Image.xml:704
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -25715,7 +26250,7 @@ msgid "Contains mouse click information. See [method Node._input]."
msgstr ""
#: doc/classes/InputEventMouseButton.xml:10
-#: doc/classes/InputEventMouseMotion.xml:10
+#: doc/classes/InputEventMouseMotion.xml:11
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/inputs/"
"mouse_and_input_coordinates.html"
@@ -25752,29 +26287,36 @@ msgstr ""
#: doc/classes/InputEventMouseMotion.xml:7
msgid ""
"Contains mouse and pen motion information. Supports relative, absolute "
-"positions and speed. See [method Node._input]."
+"positions and speed. See [method Node._input].\n"
+"[b]Note:[/b] By default, this event is only emitted once per frame rendered "
+"at most. If you need more precise input reporting, call [method Input."
+"set_use_accumulated_input] with [code]false[/code] to make events emitted as "
+"often as possible. If you use InputEventMouseMotion to draw lines, consider "
+"implementing [url=https://en.wikipedia.org/wiki/Bresenham"
+"%27s_line_algorithm]Bresenham's line algorithm[/url] as well to avoid "
+"visible gaps in lines if the user is moving the mouse quickly."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:16
+#: doc/classes/InputEventMouseMotion.xml:17
msgid ""
"Represents the pressure the user puts on the pen. Ranges from [code]0.0[/"
"code] to [code]1.0[/code]."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:19
+#: doc/classes/InputEventMouseMotion.xml:20
msgid ""
"The mouse position relative to the previous position (position at the last "
-"frame). \n"
+"frame).\n"
"[b]Note:[/b] Since [InputEventMouseMotion] is only emitted when the mouse "
"moves, the last event won't have a relative position of [code]Vector2(0, 0)[/"
"code] when the user stops moving the mouse."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:23
+#: doc/classes/InputEventMouseMotion.xml:24
msgid "The mouse speed in pixels per second."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:26
+#: doc/classes/InputEventMouseMotion.xml:27
msgid ""
"Represents the angles of tilt of the pen. Positive X-coordinate value "
"indicates a tilt to the right. Positive Y-coordinate value indicates a tilt "
@@ -26664,14 +27206,17 @@ msgstr ""
#: doc/classes/JSON.xml:18
msgid ""
-"Parses a JSON encoded string and returns a [JSONParseResult] containing the "
+"Parses a JSON-encoded string and returns a [JSONParseResult] containing the "
"result."
msgstr ""
#: doc/classes/JSON.xml:31
msgid ""
"Converts a [Variant] var to JSON text and returns the result. Useful for "
-"serializing data to store or send over the network."
+"serializing data to store or send over the network.\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, converting a Variant to JSON text "
+"will convert all numerical values to [float] types."
msgstr ""
#: doc/classes/JSONParseResult.xml:4
@@ -26694,14 +27239,14 @@ msgstr ""
#: doc/classes/JSONParseResult.xml:18
msgid ""
-"The line number where the error occurred if JSON source was not successfully "
-"parsed."
+"The line number where the error occurred if the JSON source was not "
+"successfully parsed."
msgstr ""
#: doc/classes/JSONParseResult.xml:21
msgid ""
-"The error message if JSON source was not successfully parsed. See the [enum "
-"Error] constants."
+"The error message if the JSON source was not successfully parsed. See the "
+"[enum Error] constants."
msgstr ""
#: doc/classes/JSONParseResult.xml:24
@@ -26709,11 +27254,11 @@ msgid ""
"A [Variant] containing the parsed JSON. Use [method @GDScript.typeof] or the "
"[code]is[/code] keyword to check if it is what you expect. For example, if "
"the JSON source starts with curly braces ([code]{}[/code]), a [Dictionary] "
-"will be returned. If the JSON source starts with braces ([code][][/code]), "
+"will be returned. If the JSON source starts with brackets ([code][][/code]), "
"an [Array] will be returned.\n"
"[b]Note:[/b] The JSON specification does not define integer or float types, "
-"but only a number type. Therefore, parsing a JSON text will convert all "
-"numerical values to float types.\n"
+"but only a [i]number[/i] type. Therefore, parsing a JSON text will convert "
+"all numerical values to [float] types.\n"
"[b]Note:[/b] JSON objects do not preserve key order like Godot dictionaries, "
"thus, you should not rely on keys being in a certain order if a dictionary "
"is constructed from JSON. In contrast, JSON arrays retain the order of their "
@@ -26723,7 +27268,7 @@ msgid ""
"if typeof(p.result) == TYPE_ARRAY:\n"
" print(p.result[0]) # Prints \"hello\"\n"
"else:\n"
-" print(\"unexpected results\")\n"
+" push_error(\"Unexpected results.\")\n"
"[/codeblock]"
msgstr ""
@@ -26839,7 +27384,7 @@ msgid ""
"simulation will run at an incorrect speed.\n"
"[code]linear_velocity[/code] is the velocity vector in pixels per second. "
"Unlike in [method move_and_collide], you should [i]not[/i] multiply it by "
-"[code]delta[/code] — the physics engine handles applying the velocity. \n"
+"[code]delta[/code] — the physics engine handles applying the velocity.\n"
"[code]up_direction[/code] is the up direction, used to determine what is a "
"wall and what is a floor or a ceiling. If set to the default value of "
"[code]Vector2(0, 0)[/code], everything is considered a wall. This is useful "
@@ -26955,7 +27500,7 @@ msgid ""
"[code]linear_velocity[/code] is the velocity vector (typically meters per "
"second). Unlike in [method move_and_collide], you should [i]not[/i] multiply "
"it by [code]delta[/code] — the physics engine handles applying the "
-"velocity. \n"
+"velocity.\n"
"[code]up_direction[/code] is the up direction, used to determine what is a "
"wall and what is a floor or a ceiling. If set to the default value of "
"[code]Vector3(0, 0, 0)[/code], everything is considered a wall.\n"
@@ -27684,17 +28229,6 @@ msgid ""
"[b]Note:[/b] Hiding a light does [i]not[/i] affect baking."
msgstr ""
-#: doc/classes/Light3D.xml:152
-msgid "Only indirect lighting will be baked (default)."
-msgstr ""
-
-#: doc/classes/Light3D.xml:155
-msgid ""
-"Both direct and indirect light will be baked.\n"
-"[b]Note:[/b] You should hide the light if you don't want it to appear twice "
-"(dynamic and baked)."
-msgstr ""
-
#: doc/classes/LightOccluder2D.xml:4
msgid "Occludes light cast by a Light2D, casting shadows."
msgstr ""
@@ -27973,136 +28507,142 @@ msgstr ""
msgid "Text alignment as defined in the [enum Align] enum."
msgstr ""
-#: doc/classes/LineEdit.xml:120 doc/classes/TextEdit.xml:406
+#: doc/classes/LineEdit.xml:120 doc/classes/TextEdit.xml:358
msgid "If [code]true[/code], the caret (visual cursor) blinks."
msgstr ""
-#: doc/classes/LineEdit.xml:123 doc/classes/TextEdit.xml:409
+#: doc/classes/LineEdit.xml:123 doc/classes/TextEdit.xml:361
msgid "Duration (in seconds) of a caret's blinking cycle."
msgstr ""
-#: doc/classes/LineEdit.xml:126
+#: doc/classes/LineEdit.xml:128
msgid ""
"The cursor's position inside the [LineEdit]. When set, the text may scroll "
"to accommodate it."
msgstr ""
-#: doc/classes/LineEdit.xml:129
+#: doc/classes/LineEdit.xml:131
msgid ""
"If [code]true[/code], the [LineEdit] will show a clear button if [code]text[/"
"code] is not empty, which can be used to clear the text quickly."
msgstr ""
-#: doc/classes/LineEdit.xml:132
+#: doc/classes/LineEdit.xml:134
msgid "If [code]true[/code], the context menu will appear when right-clicked."
msgstr ""
-#: doc/classes/LineEdit.xml:135
+#: doc/classes/LineEdit.xml:137
msgid ""
"If [code]false[/code], existing text cannot be modified and new text cannot "
"be added."
msgstr ""
-#: doc/classes/LineEdit.xml:138
+#: doc/classes/LineEdit.xml:140
msgid ""
"If [code]true[/code], the [LineEdit] width will increase to stay longer than "
"the [member text]. It will [b]not[/b] compress if the [member text] is "
"shortened."
msgstr ""
-#: doc/classes/LineEdit.xml:142
+#: doc/classes/LineEdit.xml:144
msgid ""
"Maximum amount of characters that can be entered inside the [LineEdit]. If "
"[code]0[/code], there is no limit."
msgstr ""
-#: doc/classes/LineEdit.xml:146
+#: doc/classes/LineEdit.xml:148
msgid ""
"Opacity of the [member placeholder_text]. From [code]0[/code] to [code]1[/"
"code]."
msgstr ""
-#: doc/classes/LineEdit.xml:149
+#: doc/classes/LineEdit.xml:151
msgid ""
"Text shown when the [LineEdit] is empty. It is [b]not[/b] the [LineEdit]'s "
"default value (see [member text])."
msgstr ""
-#: doc/classes/LineEdit.xml:152
+#: doc/classes/LineEdit.xml:154
msgid ""
"Sets the icon that will appear in the right end of the [LineEdit] if there's "
"no [member text], or always, if [member clear_button_enabled] is set to "
"[code]false[/code]."
msgstr ""
-#: doc/classes/LineEdit.xml:155
+#: doc/classes/LineEdit.xml:157
msgid ""
"If [code]true[/code], every character is replaced with the secret character "
"(see [member secret_character])."
msgstr ""
-#: doc/classes/LineEdit.xml:158
+#: doc/classes/LineEdit.xml:160
msgid ""
"The character to use to mask secret input (defaults to \"*\"). Only a single "
"character can be used as the secret character."
msgstr ""
-#: doc/classes/LineEdit.xml:161
+#: doc/classes/LineEdit.xml:163
msgid ""
"If [code]false[/code], it's impossible to select the text using mouse nor "
"keyboard."
msgstr ""
-#: doc/classes/LineEdit.xml:164
+#: doc/classes/LineEdit.xml:166
msgid "If [code]false[/code], using shortcuts will be disabled."
msgstr ""
-#: doc/classes/LineEdit.xml:167
+#: doc/classes/LineEdit.xml:169
msgid ""
"String value of the [LineEdit].\n"
"[b]Note:[/b] Changing text using this property won't emit the [signal "
"text_changed] signal."
msgstr ""
-#: doc/classes/LineEdit.xml:174
+#: doc/classes/LineEdit.xml:173 doc/classes/TextEdit.xml:434
+msgid ""
+"If [code]true[/code], the native virtual keyboard is shown when focused on "
+"platforms that support it."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:179
msgid ""
"Emitted when trying to append text that would overflow the [member "
"max_length]."
msgstr ""
-#: doc/classes/LineEdit.xml:181 doc/classes/TextEdit.xml:525
+#: doc/classes/LineEdit.xml:186 doc/classes/TextEdit.xml:490
msgid "Emitted when the text changes."
msgstr ""
-#: doc/classes/LineEdit.xml:188
+#: doc/classes/LineEdit.xml:193
msgid "Emitted when the user presses [constant KEY_ENTER] on the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:194
+#: doc/classes/LineEdit.xml:199
msgid "Aligns the text on the left-hand side of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:197
+#: doc/classes/LineEdit.xml:202
msgid "Centers the text in the middle of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:200
+#: doc/classes/LineEdit.xml:205
msgid "Aligns the text on the right-hand side of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:203
+#: doc/classes/LineEdit.xml:208
msgid "Stretches whitespaces to fit the [LineEdit]'s width."
msgstr ""
-#: doc/classes/LineEdit.xml:206 doc/classes/TextEdit.xml:540
+#: doc/classes/LineEdit.xml:211 doc/classes/TextEdit.xml:505
msgid "Cuts (copies and clears) the selected text."
msgstr ""
-#: doc/classes/LineEdit.xml:209 doc/classes/TextEdit.xml:543
+#: doc/classes/LineEdit.xml:214 doc/classes/TextEdit.xml:508
msgid "Copies the selected text."
msgstr ""
-#: doc/classes/LineEdit.xml:212
+#: doc/classes/LineEdit.xml:217
msgid ""
"Pastes the clipboard text over the selected text (or at the cursor's "
"position).\n"
@@ -28110,80 +28650,80 @@ msgid ""
"clipboard via [method String.strip_escapes]."
msgstr ""
-#: doc/classes/LineEdit.xml:216
+#: doc/classes/LineEdit.xml:221
msgid "Erases the whole [LineEdit] text."
msgstr ""
-#: doc/classes/LineEdit.xml:219
+#: doc/classes/LineEdit.xml:224
msgid "Selects the whole [LineEdit] text."
msgstr ""
-#: doc/classes/LineEdit.xml:222 doc/classes/TextEdit.xml:555
+#: doc/classes/LineEdit.xml:227 doc/classes/TextEdit.xml:520
msgid "Undoes the previous action."
msgstr ""
-#: doc/classes/LineEdit.xml:225
+#: doc/classes/LineEdit.xml:230
msgid "Reverse the last undo action."
msgstr ""
-#: doc/classes/LineEdit.xml:228 doc/classes/TextEdit.xml:561
+#: doc/classes/LineEdit.xml:233 doc/classes/TextEdit.xml:526
msgid "Represents the size of the [enum MenuItems] enum."
msgstr ""
-#: doc/classes/LineEdit.xml:233
+#: doc/classes/LineEdit.xml:238
msgid "Texture for the clear button. See [member clear_button_enabled]."
msgstr ""
-#: doc/classes/LineEdit.xml:236
+#: doc/classes/LineEdit.xml:241
msgid "Color used as default tint for the clear button."
msgstr ""
-#: doc/classes/LineEdit.xml:239
+#: doc/classes/LineEdit.xml:244
msgid "Color used for the clear button when it's pressed."
msgstr ""
-#: doc/classes/LineEdit.xml:242
+#: doc/classes/LineEdit.xml:247
msgid "Color of the [LineEdit]'s visual cursor (caret)."
msgstr ""
-#: doc/classes/LineEdit.xml:245
+#: doc/classes/LineEdit.xml:250
msgid "Background used when [LineEdit] has GUI focus."
msgstr ""
-#: doc/classes/LineEdit.xml:248
+#: doc/classes/LineEdit.xml:253
msgid "Font used for the text."
msgstr ""
-#: doc/classes/LineEdit.xml:251
+#: doc/classes/LineEdit.xml:256
msgid "Default font color."
msgstr ""
-#: doc/classes/LineEdit.xml:254
+#: doc/classes/LineEdit.xml:259
msgid "Font color for selected text (inside the selection rectangle)."
msgstr ""
-#: doc/classes/LineEdit.xml:257
+#: doc/classes/LineEdit.xml:262
msgid "Font color when editing is disabled."
msgstr ""
-#: doc/classes/LineEdit.xml:260
+#: doc/classes/LineEdit.xml:265
msgid ""
"Minimum horizontal space for the text (not counting the clear button and "
"content margins). This value is measured in count of space characters (i.e. "
"this amount of space characters can be displayed without scrolling)."
msgstr ""
-#: doc/classes/LineEdit.xml:263
+#: doc/classes/LineEdit.xml:268
msgid "Default background for the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:266
+#: doc/classes/LineEdit.xml:271
msgid ""
"Background used when [LineEdit] is in read-only mode ([member editable] is "
"set to [code]false[/code])."
msgstr ""
-#: doc/classes/LineEdit.xml:269
+#: doc/classes/LineEdit.xml:274
msgid "Color of the selection rectangle."
msgstr ""
@@ -28401,14 +28941,14 @@ msgstr ""
msgid "Emitted when a user responds to a permission request."
msgstr ""
-#: doc/classes/MainLoop.xml:127 doc/classes/Node.xml:948
+#: doc/classes/MainLoop.xml:127 doc/classes/Node.xml:946
msgid ""
"Notification received from the OS when the application is exceeding its "
"allocated memory.\n"
"Specific to the iOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:131 doc/classes/Node.xml:952
+#: doc/classes/MainLoop.xml:131 doc/classes/Node.xml:950
msgid ""
"Notification received when translations may have changed. Can be triggered "
"by the user changing the locale. Can be used to respond to language changes, "
@@ -28416,39 +28956,55 @@ msgid ""
"the built-in translation support, like [method Object.tr]."
msgstr ""
-#: doc/classes/MainLoop.xml:134 doc/classes/Node.xml:955
+#: doc/classes/MainLoop.xml:134 doc/classes/Node.xml:953
msgid ""
"Notification received from the OS when a request for \"About\" information "
"is sent.\n"
"Specific to the macOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:138 doc/classes/Node.xml:959
+#: doc/classes/MainLoop.xml:138 doc/classes/Node.xml:957
msgid ""
"Notification received from Godot's crash handler when the engine is about to "
"crash.\n"
"Implemented on desktop platforms if the crash handler is enabled."
msgstr ""
-#: doc/classes/MainLoop.xml:142 doc/classes/Node.xml:963
+#: doc/classes/MainLoop.xml:142 doc/classes/Node.xml:961
msgid ""
"Notification received from the OS when an update of the Input Method Engine "
"occurs (e.g. change of IME cursor position or composition string).\n"
"Specific to the macOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:146 doc/classes/Node.xml:967
+#: doc/classes/MainLoop.xml:146 doc/classes/Node.xml:965
msgid ""
-"Notification received from the OS when the app is resumed.\n"
+"Notification received from the OS when the application is resumed.\n"
"Specific to the Android platform."
msgstr ""
-#: doc/classes/MainLoop.xml:150 doc/classes/Node.xml:971
+#: doc/classes/MainLoop.xml:150 doc/classes/Node.xml:969
msgid ""
-"Notification received from the OS when the app is paused.\n"
+"Notification received from the OS when the application is paused.\n"
"Specific to the Android platform."
msgstr ""
+#: doc/classes/MainLoop.xml:154 doc/classes/Node.xml:973
+msgid ""
+"Notification received from the OS when the application is focused, i.e. when "
+"changing the focus from the OS desktop or a thirdparty application to any "
+"open window of the Godot instance.\n"
+"Implemented on desktop platforms."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:158 doc/classes/Node.xml:977
+msgid ""
+"Notification received from the OS when the application is defocused, i.e. "
+"when changing the focus from any open window of the Godot instance to the OS "
+"desktop or a thirdparty application.\n"
+"Implemented on desktop platforms."
+msgstr ""
+
#: doc/classes/MarginContainer.xml:4
msgid "Simple margin container."
msgstr ""
@@ -28756,11 +29312,11 @@ msgstr ""
msgid "Render array as triangle strips."
msgstr ""
-#: doc/classes/Mesh.xml:126 doc/classes/RenderingServer.xml:3189
+#: doc/classes/Mesh.xml:126 doc/classes/RenderingServer.xml:3185
msgid "Blend shapes are normalized."
msgstr ""
-#: doc/classes/Mesh.xml:129 doc/classes/RenderingServer.xml:3192
+#: doc/classes/Mesh.xml:129 doc/classes/RenderingServer.xml:3188
msgid "Blend shapes are relative to base weight."
msgstr ""
@@ -28802,37 +29358,37 @@ msgstr ""
msgid "Mesh array uses indices."
msgstr ""
-#: doc/classes/Mesh.xml:159 doc/classes/RenderingServer.xml:3145
+#: doc/classes/Mesh.xml:159 doc/classes/RenderingServer.xml:3141
msgid "Flag used to mark a compressed (half float) normal array."
msgstr ""
-#: doc/classes/Mesh.xml:162 doc/classes/RenderingServer.xml:3148
+#: doc/classes/Mesh.xml:162 doc/classes/RenderingServer.xml:3144
msgid "Flag used to mark a compressed (half float) tangent array."
msgstr ""
-#: doc/classes/Mesh.xml:165 doc/classes/RenderingServer.xml:3151
+#: doc/classes/Mesh.xml:165 doc/classes/RenderingServer.xml:3147
msgid "Flag used to mark a compressed (half float) color array."
msgstr ""
-#: doc/classes/Mesh.xml:168 doc/classes/RenderingServer.xml:3154
+#: doc/classes/Mesh.xml:168 doc/classes/RenderingServer.xml:3150
msgid "Flag used to mark a compressed (half float) UV coordinates array."
msgstr ""
-#: doc/classes/Mesh.xml:171 doc/classes/RenderingServer.xml:3157
+#: doc/classes/Mesh.xml:171 doc/classes/RenderingServer.xml:3153
msgid ""
"Flag used to mark a compressed (half float) UV coordinates array for the "
"second UV coordinates."
msgstr ""
-#: doc/classes/Mesh.xml:174 doc/classes/RenderingServer.xml:3160
+#: doc/classes/Mesh.xml:174 doc/classes/RenderingServer.xml:3156
msgid "Flag used to mark a compressed index array."
msgstr ""
-#: doc/classes/Mesh.xml:177 doc/classes/RenderingServer.xml:3166
+#: doc/classes/Mesh.xml:177 doc/classes/RenderingServer.xml:3162
msgid "Flag used to mark that the array contains 2D vertices."
msgstr ""
-#: doc/classes/Mesh.xml:180 doc/classes/RenderingServer.xml:3163
+#: doc/classes/Mesh.xml:180 doc/classes/RenderingServer.xml:3159
msgid ""
"Used to set flags [constant ARRAY_COMPRESS_NORMAL], [constant "
"ARRAY_COMPRESS_TANGENT], [constant ARRAY_COMPRESS_COLOR], [constant "
@@ -30593,7 +31149,10 @@ msgstr ""
msgid ""
"The number of channels to be used by ENet. Channels are used to separate "
"different kinds of data. In reliable or ordered mode, for example, the "
-"packet delivery order is ensured on a per channel basis."
+"packet delivery order is ensured on a per-channel basis. This is done to "
+"combat latency and reduces ordering restrictions on packets. The delivery "
+"status of a packet in one channel won't stall the delivery of other packets "
+"in another channel."
msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:134
@@ -30620,11 +31179,12 @@ msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:144
msgid ""
"Set the default channel to be used to transfer data. By default, this value "
-"is [code]-1[/code] which means that ENet will only use 2 channels, one for "
-"reliable and one for unreliable packets. Channel [code]0[/code] is reserved, "
-"and cannot be used. Setting this member to any value between [code]0[/code] "
-"and [member channel_count] (excluded) will force ENet to use that channel "
-"for sending data."
+"is [code]-1[/code] which means that ENet will only use 2 channels: one for "
+"reliable packets, and one for unreliable packets. The channel [code]0[/code] "
+"is reserved and cannot be used. Setting this member to any value between "
+"[code]0[/code] and [member channel_count] (excluded) will force ENet to use "
+"that channel for sending data. See [member channel_count] for more "
+"information about ENet channels."
msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:148
@@ -31816,57 +32376,63 @@ msgstr ""
#: doc/classes/Node.xml:930
msgid ""
-"Notification received from the OS when the game window is focused.\n"
-"Implemented on all platforms."
+"Notification received from the OS when the node's parent [Window] is "
+"focused. This may be a change of focus between two windows of the same "
+"engine instance, or from the OS desktop or a third-party application to a "
+"window of the game (in which case [constant "
+"NOTIFICATION_APPLICATION_FOCUS_IN] is also emitted)."
msgstr ""
-#: doc/classes/Node.xml:934
+#: doc/classes/Node.xml:933
msgid ""
-"Notification received from the OS when the game window is unfocused.\n"
-"Implemented on all platforms."
+"Notification received from the OS when the node's parent [Window] is "
+"defocused. This may be a change of focus between two windows of the same "
+"engine instance, or from a window of the game to the OS desktop or a third-"
+"party application (in which case [constant "
+"NOTIFICATION_APPLICATION_FOCUS_OUT] is also emitted)."
msgstr ""
-#: doc/classes/Node.xml:938
+#: doc/classes/Node.xml:936
msgid ""
"Notification received from the OS when a close request is sent (e.g. closing "
"the window with a \"Close\" button or [kbd]Alt + F4[/kbd]).\n"
"Implemented on desktop platforms."
msgstr ""
-#: doc/classes/Node.xml:942
+#: doc/classes/Node.xml:940
msgid ""
"Notification received from the OS when a go back request is sent (e.g. "
"pressing the \"Back\" button on Android).\n"
"Specific to the Android platform."
msgstr ""
-#: doc/classes/Node.xml:975
+#: doc/classes/Node.xml:981
msgid ""
"Inherits pause mode from the node's parent. For the root node, it is "
"equivalent to [constant PAUSE_MODE_STOP]. Default."
msgstr ""
-#: doc/classes/Node.xml:978
+#: doc/classes/Node.xml:984
msgid "Stops processing when the [SceneTree] is paused."
msgstr ""
-#: doc/classes/Node.xml:981
+#: doc/classes/Node.xml:987
msgid "Continue to process regardless of the [SceneTree] pause state."
msgstr ""
-#: doc/classes/Node.xml:984
+#: doc/classes/Node.xml:990
msgid "Duplicate the node's signals."
msgstr ""
-#: doc/classes/Node.xml:987
+#: doc/classes/Node.xml:993
msgid "Duplicate the node's groups."
msgstr ""
-#: doc/classes/Node.xml:990
+#: doc/classes/Node.xml:996
msgid "Duplicate the node's scripts."
msgstr ""
-#: doc/classes/Node.xml:993
+#: doc/classes/Node.xml:999
msgid ""
"Duplicate using instancing.\n"
"An instance stays linked to the original so when the original changes, the "
@@ -32090,12 +32656,6 @@ msgid ""
"changes. [Node3D] will not propagate this by default."
msgstr ""
-#: doc/classes/Node3D.xml:104
-msgid ""
-"Returns whether the node is visible, taking into consideration that its "
-"parents visibility."
-msgstr ""
-
#: doc/classes/Node3D.xml:115
msgid ""
"Rotates itself so that the local -Z axis points towards the [code]target[/"
@@ -32265,7 +32825,10 @@ msgid "Local translation of this node."
msgstr ""
#: doc/classes/Node3D.xml:326
-msgid "If [code]true[/code], this node is drawn."
+msgid ""
+"If [code]true[/code], this node is drawn. The node is only visible if all of "
+"its antecedents are visible as well (in other words, [method "
+"is_visible_in_tree] must return [code]true[/code])."
msgstr ""
#: doc/classes/Node3D.xml:332
@@ -32522,10 +33085,20 @@ msgid ""
"the key exists, even if the value is [code]null[/code].\n"
"Objects also receive notifications. Notifications are a simple way to notify "
"the object about different events, so they can all be handled together. See "
-"[method _notification]."
+"[method _notification].\n"
+"[b]Note:[/b] Unlike references to a [Reference], references to an Object "
+"stored in a variable can become invalid without warning. Therefore, it's "
+"recommended to use [Reference] for data classes instead of [Object]."
msgstr ""
-#: doc/classes/Object.xml:30
+#: doc/classes/Object.xml:23 doc/classes/Reference.xml:12
+#: doc/classes/Resource.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/getting_started/workflow/"
+"best_practices/node_alternatives.html"
+msgstr ""
+
+#: doc/classes/Object.xml:32
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method get].\n"
@@ -32533,7 +33106,7 @@ msgid ""
"code] does not exist."
msgstr ""
-#: doc/classes/Object.xml:38
+#: doc/classes/Object.xml:40
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method get_property_list].\n"
@@ -32545,11 +33118,11 @@ msgid ""
"PropertyUsageFlags])."
msgstr ""
-#: doc/classes/Object.xml:47
+#: doc/classes/Object.xml:49
msgid "Called when the object is initialized."
msgstr ""
-#: doc/classes/Object.xml:56
+#: doc/classes/Object.xml:58
msgid ""
"Called whenever the object receives a notification, which is identified in "
"[code]what[/code] by a constant. The base [Object] has two constants "
@@ -32558,7 +33131,7 @@ msgid ""
"notifications which are also received by this method."
msgstr ""
-#: doc/classes/Object.xml:67
+#: doc/classes/Object.xml:69
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method set].\n"
@@ -32566,7 +33139,7 @@ msgid ""
"exists."
msgstr ""
-#: doc/classes/Object.xml:75
+#: doc/classes/Object.xml:77
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method to_string], and thus the object's representation where it is "
@@ -32575,34 +33148,42 @@ msgid ""
"[code]\"[ClassName:RID]\"[/code]."
msgstr ""
-#: doc/classes/Object.xml:87
+#: doc/classes/Object.xml:89
msgid ""
"Adds a user-defined [code]signal[/code]. Arguments are optional, but can be "
"added as an [Array] of dictionaries, each containing [code]name: String[/"
"code] and [code]type: int[/code] (see [enum Variant.Type]) entries."
msgstr ""
-#: doc/classes/Object.xml:96
+#: doc/classes/Object.xml:98
msgid ""
"Calls the [code]method[/code] on the object and returns the result. This "
"method supports a variable number of arguments, so parameters are passed as "
"a comma separated list. Example:\n"
"[codeblock]\n"
"call(\"set\", \"position\", Vector2(42.0, 0.0))\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] In C#, the method name must be specified as snake_case if it is "
+"defined by a built-in Godot node. This doesn't apply to user-defined methods "
+"where you should use the same convention as in the C# source (typically "
+"PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:108
+#: doc/classes/Object.xml:111
msgid ""
"Calls the [code]method[/code] on the object during idle time. This method "
"supports a variable number of arguments, so parameters are passed as a comma "
"separated list. Example:\n"
"[codeblock]\n"
"call_deferred(\"set\", \"position\", Vector2(42.0, 0.0))\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] In C#, the method name must be specified as snake_case if it is "
+"defined by a built-in Godot node. This doesn't apply to user-defined methods "
+"where you should use the same convention as in the C# source (typically "
+"PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:122
+#: doc/classes/Object.xml:126
msgid ""
"Calls the [code]method[/code] on the object and returns the result. "
"Contrarily to [method call], this method does not support a variable number "
@@ -32612,13 +33193,13 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:132
+#: doc/classes/Object.xml:136
msgid ""
"Returns [code]true[/code] if the object can translate strings. See [method "
"set_message_translation] and [method tr]."
msgstr ""
-#: doc/classes/Object.xml:147
+#: doc/classes/Object.xml:151
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32654,7 +33235,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:174
+#: doc/classes/Object.xml:178
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32665,7 +33246,7 @@ msgid ""
"exists."
msgstr ""
-#: doc/classes/Object.xml:185
+#: doc/classes/Object.xml:189
msgid ""
"Emits the given [code]signal[/code]. The signal must exist, so it should be "
"a built-in signal of this class or one of its parent classes, or a user-"
@@ -32677,24 +33258,28 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:196
+#: doc/classes/Object.xml:200
msgid ""
"Deletes the object from memory. Any pre-existing reference to the freed "
"object will become invalid, e.g. [code]is_instance_valid(object)[/code] will "
"return [code]false[/code]."
msgstr ""
-#: doc/classes/Object.xml:205
+#: doc/classes/Object.xml:209
msgid ""
"Returns the [Variant] value of the given [code]property[/code]. If the "
-"[code]property[/code] doesn't exist, this will return [code]null[/code]."
+"[code]property[/code] doesn't exist, this will return [code]null[/code].\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:212
+#: doc/classes/Object.xml:217
msgid "Returns the object's class as a [String]."
msgstr ""
-#: doc/classes/Object.xml:219
+#: doc/classes/Object.xml:224
msgid ""
"Returns an [Array] of dictionaries with information about signals that are "
"connected to the object.\n"
@@ -32705,7 +33290,7 @@ msgid ""
"connected."
msgstr ""
-#: doc/classes/Object.xml:232
+#: doc/classes/Object.xml:237
msgid ""
"Gets the object's property indexed by the given [NodePath]. The node path "
"should be relative to the current object and can use the colon character "
@@ -32713,26 +33298,26 @@ msgid ""
"\"[/code] or [code]\"material:next_pass:blend_mode\"[/code]."
msgstr ""
-#: doc/classes/Object.xml:239
+#: doc/classes/Object.xml:244
msgid ""
"Returns the object's unique instance ID.\n"
"This ID can be saved in [EncodedObjectAsID], and can be used to retrieve the "
"object instance with [method @GDScript.instance_from_id]."
msgstr ""
-#: doc/classes/Object.xml:249
+#: doc/classes/Object.xml:254
msgid "Returns the object's metadata entry for the given [code]name[/code]."
msgstr ""
-#: doc/classes/Object.xml:256
+#: doc/classes/Object.xml:261
msgid "Returns the object's metadata as a [PackedStringArray]."
msgstr ""
-#: doc/classes/Object.xml:263
+#: doc/classes/Object.xml:268
msgid "Returns the object's methods and their signatures as an [Array]."
msgstr ""
-#: doc/classes/Object.xml:270
+#: doc/classes/Object.xml:275
msgid ""
"Returns the object's property list as an [Array] of dictionaries.\n"
"Each property's [Dictionary] contain at least [code]name: String[/code] and "
@@ -32742,54 +33327,54 @@ msgid ""
"PropertyUsageFlags])."
msgstr ""
-#: doc/classes/Object.xml:278
+#: doc/classes/Object.xml:283
msgid ""
"Returns the object's [Script] instance, or [code]null[/code] if none is "
"assigned."
msgstr ""
-#: doc/classes/Object.xml:287
+#: doc/classes/Object.xml:292
msgid "Returns an [Array] of connections for the given [code]signal[/code]."
msgstr ""
-#: doc/classes/Object.xml:294
+#: doc/classes/Object.xml:299
msgid "Returns the list of signals as an [Array] of dictionaries."
msgstr ""
-#: doc/classes/Object.xml:303
+#: doc/classes/Object.xml:308
msgid ""
"Returns [code]true[/code] if a metadata entry is found with the given "
"[code]name[/code]."
msgstr ""
-#: doc/classes/Object.xml:312
+#: doc/classes/Object.xml:317
msgid ""
"Returns [code]true[/code] if the object contains the given [code]method[/"
"code]."
msgstr ""
-#: doc/classes/Object.xml:321
+#: doc/classes/Object.xml:326
msgid "Returns [code]true[/code] if the given [code]signal[/code] exists."
msgstr ""
-#: doc/classes/Object.xml:330
+#: doc/classes/Object.xml:335
msgid ""
"Returns [code]true[/code] if the given user-defined [code]signal[/code] "
"exists. Only signals added using [method add_user_signal] are taken into "
"account."
msgstr ""
-#: doc/classes/Object.xml:337
+#: doc/classes/Object.xml:342
msgid "Returns [code]true[/code] if signal emission blocking is enabled."
msgstr ""
-#: doc/classes/Object.xml:346
+#: doc/classes/Object.xml:351
msgid ""
"Returns [code]true[/code] if the object inherits from the given [code]class[/"
"code]."
msgstr ""
-#: doc/classes/Object.xml:357
+#: doc/classes/Object.xml:362
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32797,13 +33382,13 @@ msgid ""
"code], [code]target[/code], and [code]method[/code]."
msgstr ""
-#: doc/classes/Object.xml:365
+#: doc/classes/Object.xml:370
msgid ""
"Returns [code]true[/code] if the [method Node.queue_free] method was called "
"for the object."
msgstr ""
-#: doc/classes/Object.xml:376
+#: doc/classes/Object.xml:381
msgid ""
"Send a given notification to the object, which will also trigger a call to "
"the [method _notification] method of all classes that the object inherits "
@@ -32815,34 +33400,42 @@ msgid ""
"and then down to its successive inheriting classes."
msgstr ""
-#: doc/classes/Object.xml:384
+#: doc/classes/Object.xml:389
msgid ""
"Notify the editor that the property list has changed, so that editor plugins "
"can take the new values into account. Does nothing on export builds."
msgstr ""
-#: doc/classes/Object.xml:393
+#: doc/classes/Object.xml:398
msgid "Removes a given entry from the object's metadata."
msgstr ""
-#: doc/classes/Object.xml:404
+#: doc/classes/Object.xml:409
msgid ""
"Assigns a new value to the given property. If the [code]property[/code] does "
-"not exist, nothing will happen."
+"not exist, nothing will happen.\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:413
+#: doc/classes/Object.xml:419
msgid "If set to [code]true[/code], signal emission is blocked."
msgstr ""
-#: doc/classes/Object.xml:424
+#: doc/classes/Object.xml:430
msgid ""
"Assigns a new value to the given property, after the current frame's physics "
"step. This is equivalent to calling [method set] via [method call_deferred], "
-"i.e. [code]call_deferred(\"set\", property, value)[/code]."
+"i.e. [code]call_deferred(\"set\", property, value)[/code].\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:435
+#: doc/classes/Object.xml:442
msgid ""
"Assigns a new value to the property identified by the [NodePath]. The node "
"path should be relative to the current object and can use the colon "
@@ -32854,19 +33447,19 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:449
+#: doc/classes/Object.xml:456
msgid ""
"Defines whether the object can translate strings (with calls to [method "
"tr]). Enabled by default."
msgstr ""
-#: doc/classes/Object.xml:460
+#: doc/classes/Object.xml:467
msgid ""
"Adds or changes a given entry in the object's metadata. Metadata are "
"serialized, and can take any [Variant] value."
msgstr ""
-#: doc/classes/Object.xml:469
+#: doc/classes/Object.xml:476
msgid ""
"Assigns a script to the object. Each object can have a single script "
"assigned to it, which are used to extend its functionality.\n"
@@ -32875,7 +33468,7 @@ msgid ""
"_init] method will be called."
msgstr ""
-#: doc/classes/Object.xml:477
+#: doc/classes/Object.xml:484
msgid ""
"Returns a [String] representing the object. If not overridden, defaults to "
"[code]\"[ClassName:RID]\"[/code].\n"
@@ -32883,7 +33476,7 @@ msgid ""
"representation."
msgstr ""
-#: doc/classes/Object.xml:487
+#: doc/classes/Object.xml:494
msgid ""
"Translates a message using translation catalogs configured in the Project "
"Settings.\n"
@@ -32892,35 +33485,35 @@ msgid ""
"set_message_translation]."
msgstr ""
-#: doc/classes/Object.xml:495
+#: doc/classes/Object.xml:502
msgid "Emitted whenever the object's script is changed."
msgstr ""
-#: doc/classes/Object.xml:501
+#: doc/classes/Object.xml:508
msgid "Called right when the object is initialized. Not available in script."
msgstr ""
-#: doc/classes/Object.xml:504
+#: doc/classes/Object.xml:511
msgid "Called before the object is about to be deleted."
msgstr ""
-#: doc/classes/Object.xml:507
+#: doc/classes/Object.xml:514
msgid ""
"Connects a signal in deferred mode. This way, signal emissions are stored in "
"a queue, then set on idle time."
msgstr ""
-#: doc/classes/Object.xml:510
+#: doc/classes/Object.xml:517
msgid "Persisting connections are saved when the object is serialized to file."
msgstr ""
-#: doc/classes/Object.xml:513
+#: doc/classes/Object.xml:520
msgid "One-shot connections disconnect themselves after emission."
msgstr ""
-#: doc/classes/Object.xml:516
+#: doc/classes/Object.xml:523
msgid ""
-"Connect a signal as reference counted. This means that a given signal can be "
+"Connect a signal as reference-counted. This means that a given signal can be "
"connected several times to the same target, and will only be fully "
"disconnected once no references are left."
msgstr ""
@@ -33385,10 +33978,29 @@ msgid "Returns the keycode of the given string (e.g. \"Escape\")."
msgstr ""
#: doc/classes/OS.xml:115
-msgid "Returns the command line arguments passed to the engine."
+msgid ""
+"Returns the command-line arguments passed to the engine.\n"
+"Command-line arguments can be written in any form, including both [code]--"
+"key value[/code] and [code]--key=value[/code] forms so they can be properly "
+"parsed, as long as custom command-line arguments do not conflict with engine "
+"arguments.\n"
+"You can also incorporate environment variables using the [method "
+"get_environment] method.\n"
+"You can set [code]editor/main_run_args[/code] in the Project Settings to "
+"define command-line arguments to be passed by the editor when running the "
+"project.\n"
+"Here's a minimal example on how to parse command-line arguments into a "
+"dictionary using the [code]--key=value[/code] form for arguments:\n"
+"[codeblock]\n"
+"var arguments = {}\n"
+"for argument in OS.get_cmdline_args():\n"
+" if argument.find(\"=\") > -1:\n"
+" var key_value = argument.split(\"=\")\n"
+" arguments[key_value[0].lstrip(\"--\")] = key_value[1]\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/OS.xml:122
+#: doc/classes/OS.xml:133
msgid ""
"Returns an array of MIDI device names.\n"
"The returned array will be empty if the system MIDI driver has not "
@@ -33396,14 +34008,14 @@ msgid ""
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:133
+#: doc/classes/OS.xml:144
msgid ""
"Returns current date as a dictionary of keys: [code]year[/code], "
"[code]month[/code], [code]day[/code], [code]weekday[/code], [code]dst[/code] "
"(Daylight Savings Time)."
msgstr ""
-#: doc/classes/OS.xml:142
+#: doc/classes/OS.xml:153
msgid ""
"Returns current datetime as a dictionary of keys: [code]year[/code], "
"[code]month[/code], [code]day[/code], [code]weekday[/code], [code]dst[/code] "
@@ -33411,7 +34023,7 @@ msgid ""
"[code]second[/code]."
msgstr ""
-#: doc/classes/OS.xml:151
+#: doc/classes/OS.xml:162
msgid ""
"Gets a dictionary of time values corresponding to the given UNIX epoch time "
"(in seconds).\n"
@@ -33420,22 +34032,22 @@ msgid ""
"the epoch."
msgstr ""
-#: doc/classes/OS.xml:161
+#: doc/classes/OS.xml:172
msgid "Returns an environment variable."
msgstr ""
-#: doc/classes/OS.xml:168
+#: doc/classes/OS.xml:179
msgid "Returns the path to the current engine executable."
msgstr ""
-#: doc/classes/OS.xml:175
+#: doc/classes/OS.xml:186
msgid ""
"With this function you can get the list of dangerous permissions that have "
"been granted to the Android application.\n"
"[b]Note:[/b] This method is implemented on Android."
msgstr ""
-#: doc/classes/OS.xml:185
+#: doc/classes/OS.xml:196
msgid ""
"Returns the given keycode as a string (e.g. Return values: [code]\"Escape\"[/"
"code], [code]\"Shift+Escape\"[/code]).\n"
@@ -33443,18 +34055,18 @@ msgid ""
"get_keycode_with_modifiers]."
msgstr ""
-#: doc/classes/OS.xml:193
+#: doc/classes/OS.xml:204
msgid "Returns the host OS locale."
msgstr ""
-#: doc/classes/OS.xml:200
+#: doc/classes/OS.xml:211
msgid ""
"Returns the model name of the current device.\n"
"[b]Note:[/b] This method is implemented on Android and iOS. Returns "
"[code]\"GenericDevice\"[/code] on unsupported platforms."
msgstr ""
-#: doc/classes/OS.xml:208
+#: doc/classes/OS.xml:219
msgid ""
"Returns the name of the host OS. Possible values are: [code]\"Android\"[/"
"code], [code]\"iOS\"[/code], [code]\"HTML5\"[/code], [code]\"OSX\"[/code], "
@@ -33462,81 +34074,81 @@ msgid ""
"[code]\"X11\"[/code]."
msgstr ""
-#: doc/classes/OS.xml:215
+#: doc/classes/OS.xml:226
msgid ""
"Returns the project's process ID.\n"
"[b]Note:[/b] This method is implemented on Android, iOS, Linux, macOS and "
"Windows."
msgstr ""
-#: doc/classes/OS.xml:223
+#: doc/classes/OS.xml:234
msgid "Returns the number of threads available on the host machine."
msgstr ""
-#: doc/classes/OS.xml:230
+#: doc/classes/OS.xml:241
msgid ""
"Returns the amount of time in milliseconds it took for the boot logo to "
"appear."
msgstr ""
-#: doc/classes/OS.xml:237
+#: doc/classes/OS.xml:248
msgid "Returns the maximum amount of static memory used (only works in debug)."
msgstr ""
-#: doc/classes/OS.xml:244
+#: doc/classes/OS.xml:255
msgid "Returns the amount of static memory being used by the program in bytes."
msgstr ""
-#: doc/classes/OS.xml:253
+#: doc/classes/OS.xml:264
msgid ""
"Returns the actual path to commonly used folders across different platforms. "
"Available locations are specified in [enum SystemDir].\n"
"[b]Note:[/b] This method is implemented on Android, Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:261
+#: doc/classes/OS.xml:272
msgid ""
"Returns the total number of available tablet drivers.\n"
"[b]Note:[/b] This method is implemented on Windows."
msgstr ""
-#: doc/classes/OS.xml:271
+#: doc/classes/OS.xml:282
msgid ""
"Returns the tablet driver name for the given index.\n"
"[b]Note:[/b] This method is implemented on Windows."
msgstr ""
-#: doc/classes/OS.xml:279
+#: doc/classes/OS.xml:290
msgid ""
"Returns the amount of time passed in milliseconds since the engine started."
msgstr ""
-#: doc/classes/OS.xml:286
+#: doc/classes/OS.xml:297
msgid ""
"Returns the amount of time passed in microseconds since the engine started."
msgstr ""
-#: doc/classes/OS.xml:295
+#: doc/classes/OS.xml:306
msgid "Returns current time as a dictionary of keys: hour, minute, second."
msgstr ""
-#: doc/classes/OS.xml:302
+#: doc/classes/OS.xml:313
msgid ""
"Returns the current time zone as a dictionary with the keys: bias and name."
msgstr ""
-#: doc/classes/OS.xml:309
+#: doc/classes/OS.xml:320
msgid ""
"Returns a string that is unique to the device.\n"
"[b]Note:[/b] Returns an empty string on HTML5 and UWP, as this method isn't "
"implemented on those platforms yet."
msgstr ""
-#: doc/classes/OS.xml:317
+#: doc/classes/OS.xml:328
msgid "Returns the current UNIX epoch timestamp."
msgstr ""
-#: doc/classes/OS.xml:326
+#: doc/classes/OS.xml:337
msgid ""
"Gets an epoch time value from a dictionary of time values.\n"
"[code]datetime[/code] must be populated with the following keys: [code]year[/"
@@ -33547,7 +34159,7 @@ msgid ""
"ignored."
msgstr ""
-#: doc/classes/OS.xml:335
+#: doc/classes/OS.xml:346
msgid ""
"Returns the absolute directory path where user data is written ([code]user://"
"[/code]).\n"
@@ -33565,11 +34177,11 @@ msgid ""
"[/code]."
msgstr ""
-#: doc/classes/OS.xml:348
+#: doc/classes/OS.xml:359
msgid "Returns [code]true[/code] if an environment variable exists."
msgstr ""
-#: doc/classes/OS.xml:357
+#: doc/classes/OS.xml:368
msgid ""
"Returns [code]true[/code] if the feature for the given feature tag is "
"supported in the currently running instance, depending on platform, build "
@@ -33580,7 +34192,7 @@ msgid ""
"[b]Note:[/b] Tag names are case-sensitive."
msgstr ""
-#: doc/classes/OS.xml:365
+#: doc/classes/OS.xml:376
msgid ""
"Returns [code]true[/code] if the Godot binary used to run the project is a "
"[i]debug[/i] export template, or when running in the editor.\n"
@@ -33591,26 +34203,26 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/OS.xml:376
+#: doc/classes/OS.xml:387
msgid ""
"Returns [code]true[/code] if the input keycode corresponds to a Unicode "
"character."
msgstr ""
-#: doc/classes/OS.xml:383
+#: doc/classes/OS.xml:394
msgid ""
"Returns [code]true[/code] if the engine was executed with [code]-v[/code] "
"(verbose stdout)."
msgstr ""
-#: doc/classes/OS.xml:390
+#: doc/classes/OS.xml:401
msgid ""
"If [code]true[/code], the [code]user://[/code] file system is persistent, so "
"that its state is the same after a player quits and starts the game again. "
"Relevant to the HTML5 platform, where this persistence may be unavailable."
msgstr ""
-#: doc/classes/OS.xml:399
+#: doc/classes/OS.xml:410
msgid ""
"Kill (terminate) the process identified by the given process ID ([code]pid[/"
"code]), e.g. the one returned by [method execute] in non-blocking mode.\n"
@@ -33620,37 +34232,37 @@ msgid ""
"Windows."
msgstr ""
-#: doc/classes/OS.xml:408
+#: doc/classes/OS.xml:419
msgid ""
"Initialises the singleton for the system MIDI driver.\n"
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:418
+#: doc/classes/OS.xml:429
msgid ""
"Shows all resources in the game. Optionally, the list can be written to a "
"file by specifying a file path in [code]tofile[/code]."
msgstr ""
-#: doc/classes/OS.xml:425
+#: doc/classes/OS.xml:436
msgid "Shows the list of loaded textures sorted by size in memory."
msgstr ""
-#: doc/classes/OS.xml:434
+#: doc/classes/OS.xml:445
msgid "Shows the number of resources loaded by the game of the given types."
msgstr ""
-#: doc/classes/OS.xml:443
+#: doc/classes/OS.xml:454
msgid "Shows all resources currently used by the game."
msgstr ""
-#: doc/classes/OS.xml:452
+#: doc/classes/OS.xml:463
msgid ""
"At the moment this function is only used by [code]AudioDriverOpenSL[/code] "
"to request permission for [code]RECORD_AUDIO[/code] on Android."
msgstr ""
-#: doc/classes/OS.xml:459
+#: doc/classes/OS.xml:470
msgid ""
"With this function you can request dangerous permissions since normal "
"permissions are automatically granted at install time in Android "
@@ -33658,15 +34270,15 @@ msgid ""
"[b]Note:[/b] This method is implemented on Android."
msgstr ""
-#: doc/classes/OS.xml:469
+#: doc/classes/OS.xml:480
msgid "Sets the name of the current thread."
msgstr ""
-#: doc/classes/OS.xml:478
+#: doc/classes/OS.xml:489
msgid "Enables backup saves if [code]enabled[/code] is [code]true[/code]."
msgstr ""
-#: doc/classes/OS.xml:487
+#: doc/classes/OS.xml:498
msgid ""
"Requests the OS to open a resource with the most appropriate program. For "
"example:\n"
@@ -33685,7 +34297,7 @@ msgid ""
"and Windows."
msgstr ""
-#: doc/classes/OS.xml:498
+#: doc/classes/OS.xml:509
msgid ""
"The exit code passed to the OS when the main loop exits. By convention, an "
"exit code of [code]0[/code] indicates success whereas a non-zero exit code "
@@ -33695,137 +34307,137 @@ msgid ""
"with an [code]exit_code[/code] argument passed."
msgstr ""
-#: doc/classes/OS.xml:502
+#: doc/classes/OS.xml:513
msgid ""
"If [code]true[/code], the engine optimizes for low processor usage by only "
"refreshing the screen if needed. Can improve battery consumption on mobile."
msgstr ""
-#: doc/classes/OS.xml:505
+#: doc/classes/OS.xml:516
msgid ""
"The amount of sleeping between frames when the low-processor usage mode is "
"enabled (in microseconds). Higher values will result in lower CPU usage."
msgstr ""
-#: doc/classes/OS.xml:508
-msgid "The current tablet drvier in use."
+#: doc/classes/OS.xml:519
+msgid "The current tablet driver in use."
msgstr ""
-#: doc/classes/OS.xml:513
+#: doc/classes/OS.xml:524
msgid ""
"The GLES2 rendering backend. It uses OpenGL ES 2.0 on mobile devices, OpenGL "
"2.1 on desktop platforms and WebGL 1.0 on the web."
msgstr ""
-#: doc/classes/OS.xml:516
+#: doc/classes/OS.xml:527
msgid "The Vulkan rendering backend."
msgstr ""
-#: doc/classes/OS.xml:519
+#: doc/classes/OS.xml:530
msgid "Sunday."
msgstr ""
-#: doc/classes/OS.xml:522
+#: doc/classes/OS.xml:533
msgid "Monday."
msgstr ""
-#: doc/classes/OS.xml:525
+#: doc/classes/OS.xml:536
msgid "Tuesday."
msgstr ""
-#: doc/classes/OS.xml:528
+#: doc/classes/OS.xml:539
msgid "Wednesday."
msgstr ""
-#: doc/classes/OS.xml:531
+#: doc/classes/OS.xml:542
msgid "Thursday."
msgstr ""
-#: doc/classes/OS.xml:534
+#: doc/classes/OS.xml:545
msgid "Friday."
msgstr ""
-#: doc/classes/OS.xml:537
+#: doc/classes/OS.xml:548
msgid "Saturday."
msgstr ""
-#: doc/classes/OS.xml:540
+#: doc/classes/OS.xml:551
msgid "January."
msgstr ""
-#: doc/classes/OS.xml:543
+#: doc/classes/OS.xml:554
msgid "February."
msgstr ""
-#: doc/classes/OS.xml:546
+#: doc/classes/OS.xml:557
msgid "March."
msgstr ""
-#: doc/classes/OS.xml:549
+#: doc/classes/OS.xml:560
msgid "April."
msgstr ""
-#: doc/classes/OS.xml:552
+#: doc/classes/OS.xml:563
msgid "May."
msgstr ""
-#: doc/classes/OS.xml:555
+#: doc/classes/OS.xml:566
msgid "June."
msgstr ""
-#: doc/classes/OS.xml:558
+#: doc/classes/OS.xml:569
msgid "July."
msgstr ""
-#: doc/classes/OS.xml:561
+#: doc/classes/OS.xml:572
msgid "August."
msgstr ""
-#: doc/classes/OS.xml:564
+#: doc/classes/OS.xml:575
msgid "September."
msgstr ""
-#: doc/classes/OS.xml:567
+#: doc/classes/OS.xml:578
msgid "October."
msgstr ""
-#: doc/classes/OS.xml:570
+#: doc/classes/OS.xml:581
msgid "November."
msgstr ""
-#: doc/classes/OS.xml:573
+#: doc/classes/OS.xml:584
msgid "December."
msgstr ""
-#: doc/classes/OS.xml:576
+#: doc/classes/OS.xml:587
msgid "Desktop directory path."
msgstr ""
-#: doc/classes/OS.xml:579
+#: doc/classes/OS.xml:590
msgid "DCIM (Digital Camera Images) directory path."
msgstr ""
-#: doc/classes/OS.xml:582
+#: doc/classes/OS.xml:593
msgid "Documents directory path."
msgstr ""
-#: doc/classes/OS.xml:585
+#: doc/classes/OS.xml:596
msgid "Downloads directory path."
msgstr ""
-#: doc/classes/OS.xml:588
+#: doc/classes/OS.xml:599
msgid "Movies directory path."
msgstr ""
-#: doc/classes/OS.xml:591
+#: doc/classes/OS.xml:602
msgid "Music directory path."
msgstr ""
-#: doc/classes/OS.xml:594
+#: doc/classes/OS.xml:605
msgid "Pictures directory path."
msgstr ""
-#: doc/classes/OS.xml:597
+#: doc/classes/OS.xml:608
msgid "Ringtones directory path."
msgstr ""
@@ -33880,7 +34492,15 @@ msgid ""
"should always be preferred."
msgstr ""
-#: doc/classes/PackedByteArray.xml:85
+#: doc/classes/PackedByteArray.xml:87 doc/classes/PackedColorArray.xml:53
+#: doc/classes/PackedFloat32Array.xml:54 doc/classes/PackedFloat64Array.xml:54
+#: doc/classes/PackedInt32Array.xml:54 doc/classes/PackedInt64Array.xml:54
+#: doc/classes/PackedStringArray.xml:53 doc/classes/PackedVector2Array.xml:53
+#: doc/classes/PackedVector3Array.xml:53
+msgid "Returns [code]true[/code] if the array contains [code]value[/code]."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:94
msgid ""
"Returns a hexadecimal representation of this array as a [String].\n"
"[codeblock]\n"
@@ -33889,39 +34509,48 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/PackedByteArray.xml:100 doc/classes/PackedColorArray.xml:55
-#: doc/classes/PackedFloat32Array.xml:56 doc/classes/PackedFloat64Array.xml:56
-#: doc/classes/PackedStringArray.xml:55 doc/classes/PackedVector2Array.xml:55
-#: doc/classes/PackedVector3Array.xml:55
+#: doc/classes/PackedByteArray.xml:109 doc/classes/PackedColorArray.xml:64
+#: doc/classes/PackedFloat32Array.xml:65 doc/classes/PackedFloat64Array.xml:65
+#: doc/classes/PackedStringArray.xml:64 doc/classes/PackedVector2Array.xml:64
+#: doc/classes/PackedVector3Array.xml:64
msgid ""
"Inserts a new element at a given position in the array. The position must be "
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PackedByteArray.xml:134 doc/classes/PackedColorArray.xml:89
-#: doc/classes/PackedFloat32Array.xml:90 doc/classes/PackedFloat64Array.xml:90
-#: doc/classes/PackedInt32Array.xml:90 doc/classes/PackedInt64Array.xml:90
-#: doc/classes/PackedStringArray.xml:89 doc/classes/PackedVector2Array.xml:89
-#: doc/classes/PackedVector3Array.xml:89
+#: doc/classes/PackedByteArray.xml:143 doc/classes/PackedColorArray.xml:98
+#: doc/classes/PackedFloat32Array.xml:99 doc/classes/PackedFloat64Array.xml:99
+#: doc/classes/PackedInt32Array.xml:99 doc/classes/PackedInt64Array.xml:99
+#: doc/classes/PackedStringArray.xml:98 doc/classes/PackedVector2Array.xml:98
+#: doc/classes/PackedVector3Array.xml:98
msgid ""
"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."
msgstr ""
-#: doc/classes/PackedByteArray.xml:145
+#: doc/classes/PackedByteArray.xml:154
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PackedByteArray.xml:152 doc/classes/PackedColorArray.xml:107
-#: doc/classes/PackedFloat32Array.xml:108
-#: doc/classes/PackedFloat64Array.xml:108 doc/classes/PackedStringArray.xml:107
-#: doc/classes/PackedVector2Array.xml:107
-#: doc/classes/PackedVector3Array.xml:107
+#: doc/classes/PackedByteArray.xml:161 doc/classes/PackedColorArray.xml:116
+#: doc/classes/PackedFloat32Array.xml:117
+#: doc/classes/PackedFloat64Array.xml:117 doc/classes/PackedStringArray.xml:116
+#: doc/classes/PackedVector2Array.xml:116
+#: doc/classes/PackedVector3Array.xml:116
msgid "Returns the size of the array."
msgstr ""
-#: doc/classes/PackedByteArray.xml:163
+#: doc/classes/PackedByteArray.xml:168 doc/classes/PackedColorArray.xml:123
+#: doc/classes/PackedFloat32Array.xml:124
+#: doc/classes/PackedFloat64Array.xml:124 doc/classes/PackedInt32Array.xml:124
+#: doc/classes/PackedInt64Array.xml:124 doc/classes/PackedStringArray.xml:123
+#: doc/classes/PackedVector2Array.xml:123
+#: doc/classes/PackedVector3Array.xml:123
+msgid "Sorts the elements of the array in ascending order."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:179
msgid ""
"Returns the slice of the [PackedByteArray] between indices (inclusive) as a "
"new [PackedByteArray]. Any negative index is considered to be from the end "
@@ -33949,12 +34578,12 @@ msgstr ""
msgid "Appends a [PackedColorArray] at the end of this array."
msgstr ""
-#: doc/classes/PackedColorArray.xml:71 doc/classes/PackedInt32Array.xml:72
-#: doc/classes/PackedInt64Array.xml:72
+#: doc/classes/PackedColorArray.xml:80 doc/classes/PackedInt32Array.xml:81
+#: doc/classes/PackedInt64Array.xml:81
msgid "Appends a value to the array."
msgstr ""
-#: doc/classes/PackedColorArray.xml:100
+#: doc/classes/PackedColorArray.xml:109
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -33984,8 +34613,8 @@ msgstr ""
msgid "Appends a [PackedFloat32Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedFloat32Array.xml:101
-#: doc/classes/PackedFloat64Array.xml:101
+#: doc/classes/PackedFloat32Array.xml:110
+#: doc/classes/PackedFloat64Array.xml:110
msgid "Changes the float at the given index."
msgstr ""
@@ -34038,17 +34667,17 @@ msgstr ""
msgid "Appends a [PackedInt32Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:56 doc/classes/PackedInt64Array.xml:56
+#: doc/classes/PackedInt32Array.xml:65 doc/classes/PackedInt64Array.xml:65
msgid ""
"Inserts a new integer at a given position in the array. The position must be "
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:101 doc/classes/PackedInt64Array.xml:101
+#: doc/classes/PackedInt32Array.xml:110 doc/classes/PackedInt64Array.xml:110
msgid "Changes the integer at the given index."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:108 doc/classes/PackedInt64Array.xml:108
+#: doc/classes/PackedInt32Array.xml:117 doc/classes/PackedInt64Array.xml:117
msgid "Returns the array size."
msgstr ""
@@ -34089,6 +34718,14 @@ msgid ""
"Can be used to save a node to a file. When saving, the node as well as all "
"the node it owns get saved (see [code]owner[/code] property on [Node]).\n"
"[b]Note:[/b] The node doesn't need to own itself.\n"
+"[b]Example of loading a saved scene:[/b]\n"
+"[codeblock]\n"
+"# Use `load()` instead of `preload()` if the path isn't known at compile-"
+"time.\n"
+"var scene = preload(\"res://scene.tscn\").instance()\n"
+"# Add the node as a child of the node the script is attached to.\n"
+"add_child(scene)\n"
+"[/codeblock]\n"
"[b]Example of saving a node with different owners:[/b] The following example "
"creates 3 objects: [code]Node2D[/code] ([code]node[/code]), "
"[code]RigidBody2D[/code] ([code]rigid[/code]) and [code]CollisionObject2D[/"
@@ -34120,29 +34757,29 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/PackedScene.xml:40
+#: doc/classes/PackedScene.xml:47
msgid "Returns [code]true[/code] if the scene file has nodes."
msgstr ""
-#: doc/classes/PackedScene.xml:47
+#: doc/classes/PackedScene.xml:54
msgid ""
"Returns the [code]SceneState[/code] representing the scene file contents."
msgstr ""
-#: doc/classes/PackedScene.xml:56
+#: doc/classes/PackedScene.xml:63
msgid ""
"Instantiates the scene's node hierarchy. Triggers child scene "
"instantiation(s). Triggers a [constant Node.NOTIFICATION_INSTANCED] "
"notification on the root node."
msgstr ""
-#: doc/classes/PackedScene.xml:65
+#: doc/classes/PackedScene.xml:72
msgid ""
"Pack will ignore any sub-nodes not owned by given node. See [member Node."
"owner]."
msgstr ""
-#: doc/classes/PackedScene.xml:71
+#: doc/classes/PackedScene.xml:78
msgid ""
"A dictionary representation of the scene contents.\n"
"Available keys include \"rnames\" and \"variants\" for resources, "
@@ -34151,18 +34788,18 @@ msgid ""
"connections, and \"version\" for the format style of the PackedScene."
msgstr ""
-#: doc/classes/PackedScene.xml:77
+#: doc/classes/PackedScene.xml:84
msgid "If passed to [method instance], blocks edits to the scene state."
msgstr ""
-#: doc/classes/PackedScene.xml:80
+#: doc/classes/PackedScene.xml:87
msgid ""
"If passed to [method instance], provides local scene resources to the local "
"scene.\n"
"[b]Note:[/b] Only available in editor builds."
msgstr ""
-#: doc/classes/PackedScene.xml:84
+#: doc/classes/PackedScene.xml:91
msgid ""
"If passed to [method instance], provides local scene resources to the local "
"scene. Only the main scene should receive the main edit state.\n"
@@ -34190,11 +34827,11 @@ msgstr ""
msgid "Appends a [PackedStringArray] at the end of this array."
msgstr ""
-#: doc/classes/PackedStringArray.xml:71
+#: doc/classes/PackedStringArray.xml:80
msgid "Appends a string element at end of the array."
msgstr ""
-#: doc/classes/PackedStringArray.xml:100
+#: doc/classes/PackedStringArray.xml:109
msgid "Changes the [String] at the given index."
msgstr ""
@@ -34219,11 +34856,11 @@ msgstr ""
msgid "Appends a [PackedVector2Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedVector2Array.xml:71
+#: doc/classes/PackedVector2Array.xml:80
msgid "Inserts a [Vector2] at the end."
msgstr ""
-#: doc/classes/PackedVector2Array.xml:100
+#: doc/classes/PackedVector2Array.xml:109
msgid "Changes the [Vector2] at the given index."
msgstr ""
@@ -34248,11 +34885,11 @@ msgstr ""
msgid "Appends a [PackedVector3Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedVector3Array.xml:71
+#: doc/classes/PackedVector3Array.xml:80
msgid "Inserts a [Vector3] at the end."
msgstr ""
-#: doc/classes/PackedVector3Array.xml:100
+#: doc/classes/PackedVector3Array.xml:109
msgid "Changes the [Vector3] at the given index."
msgstr ""
@@ -35143,13 +35780,55 @@ msgid ""
"as the values displayed in the [b]Monitor[/b] tab in the editor's "
"[b]Debugger[/b] panel. By using the [method get_monitor] method of this "
"class, you can access this data from your code.\n"
+"You can add custom monitors using the [method add_custom_monitor] method. "
+"Custom monitors are available in [b]Monitor[/b] tab in the editor's "
+"[b]Debugger[/b] panel together with built-in monitors.\n"
"[b]Note:[/b] A few of these monitors are only available in debug mode and "
"will always return 0 when used in a release build.\n"
"[b]Note:[/b] Many of these monitors are not updated in real-time, so there "
-"may be a short delay between changes."
+"may be a short delay between changes.\n"
+"[b]Note:[/b] Custom monitors do not support negative values. Negative values "
+"are clamped to 0."
+msgstr ""
+
+#: doc/classes/Performance.xml:26
+msgid ""
+"Adds a custom monitor with name same as id. You can specify the category of "
+"monitor using '/' in id. If there are more than one '/' then default "
+"category is used. Default category is \"Custom\".\n"
+"[codeblock]\n"
+"Performance.add_custom_monitor(\"MyCategory/MyMonitor\", some_callable) # "
+"Adds monitor with name \"MyName\" to category \"MyCategory\"\n"
+"Performance.add_custom_monitor(\"MyMonitor\", some_callable) # Adds monitor "
+"with name \"MyName\" to category \"Custom\"\n"
+"# Note: \"MyCategory/MyMonitor\" and \"MyMonitor\" have same name but "
+"different ids so above code is valid\n"
+"Performance.add_custom_monitor(\"Custom/MyMonitor\", some_callable) # Adds "
+"monitor with name \"MyName\" to category \"Custom\"\n"
+"# Note: \"MyMonitor\" and \"Custom/MyMonitor\" have same name and same "
+"category but different ids so above code is valid\n"
+"Performance.add_custom_monitor(\"MyCategoryOne/MyCategoryTwo/MyMonitor\", "
+"some_callable) # Adds monitor with name \"MyCategoryOne/MyCategoryTwo/"
+"MyMonitor\" to category \"Custom\"\n"
+"[/codeblock]\n"
+"The debugger calls the callable to get the value of custom monitor. The "
+"callable must return a number.\n"
+"Callables are called with arguments supplied in argument array.\n"
+"[b]Note:[/b] It throws an error if given id is already present."
+msgstr ""
+
+#: doc/classes/Performance.xml:46
+msgid ""
+"Returns the value of custom monitor with given id. The callable is called to "
+"get the value of custom monitor.\n"
+"[b]Note:[/b] It throws an error if the given id is absent."
+msgstr ""
+
+#: doc/classes/Performance.xml:54
+msgid "Returns the names of active custom monitors in an array."
msgstr ""
-#: doc/classes/Performance.xml:20
+#: doc/classes/Performance.xml:63
msgid ""
"Returns the value of one of the available monitors. You should provide one "
"of the [enum Monitor] constants as the argument, like this:\n"
@@ -35159,123 +35838,139 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Performance.xml:29
+#: doc/classes/Performance.xml:73
+msgid "Returns the last tick in which custom monitor was added/removed."
+msgstr ""
+
+#: doc/classes/Performance.xml:82
+msgid ""
+"Returns true if custom monitor with the given id is present otherwise "
+"returns false."
+msgstr ""
+
+#: doc/classes/Performance.xml:91
+msgid ""
+"Removes the custom monitor with given id.\n"
+"[b]Note:[/b] It throws an error if the given id is already absent."
+msgstr ""
+
+#: doc/classes/Performance.xml:98
msgid "Number of frames per second."
msgstr ""
-#: doc/classes/Performance.xml:32
+#: doc/classes/Performance.xml:101
msgid "Time it took to complete one frame, in seconds."
msgstr ""
-#: doc/classes/Performance.xml:35
+#: doc/classes/Performance.xml:104
msgid "Time it took to complete one physics frame, in seconds."
msgstr ""
-#: doc/classes/Performance.xml:38
+#: doc/classes/Performance.xml:107
msgid ""
"Static memory currently used, in bytes. Not available in release builds."
msgstr ""
-#: doc/classes/Performance.xml:41
+#: doc/classes/Performance.xml:110
msgid "Available static memory. Not available in release builds."
msgstr ""
-#: doc/classes/Performance.xml:44
+#: doc/classes/Performance.xml:113
msgid ""
"Largest amount of memory the message queue buffer has used, in bytes. The "
"message queue is used for deferred functions calls and notifications."
msgstr ""
-#: doc/classes/Performance.xml:47
+#: doc/classes/Performance.xml:116
msgid "Number of objects currently instanced (including nodes)."
msgstr ""
-#: doc/classes/Performance.xml:50
+#: doc/classes/Performance.xml:119
msgid "Number of resources currently used."
msgstr ""
-#: doc/classes/Performance.xml:53
+#: doc/classes/Performance.xml:122
msgid ""
"Number of nodes currently instanced in the scene tree. This also includes "
"the root node."
msgstr ""
-#: doc/classes/Performance.xml:56
+#: doc/classes/Performance.xml:125
msgid ""
"Number of orphan nodes, i.e. nodes which are not parented to a node of the "
"scene tree."
msgstr ""
-#: doc/classes/Performance.xml:59
+#: doc/classes/Performance.xml:128
msgid "3D objects drawn per frame."
msgstr ""
-#: doc/classes/Performance.xml:62
+#: doc/classes/Performance.xml:131
msgid "Vertices drawn per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:65
+#: doc/classes/Performance.xml:134
msgid "Material changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:68
+#: doc/classes/Performance.xml:137
msgid "Shader changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:71
+#: doc/classes/Performance.xml:140
msgid "Render surface changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:74
+#: doc/classes/Performance.xml:143
msgid "Draw calls per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:77 doc/classes/RenderingServer.xml:3805
+#: doc/classes/Performance.xml:146 doc/classes/RenderingServer.xml:3816
msgid ""
"The amount of video memory used, i.e. texture and vertex memory combined."
msgstr ""
-#: doc/classes/Performance.xml:80 doc/classes/RenderingServer.xml:3808
+#: doc/classes/Performance.xml:149 doc/classes/RenderingServer.xml:3819
msgid "The amount of texture memory used."
msgstr ""
-#: doc/classes/Performance.xml:83 doc/classes/RenderingServer.xml:3811
+#: doc/classes/Performance.xml:152 doc/classes/RenderingServer.xml:3822
msgid "The amount of vertex memory used."
msgstr ""
-#: doc/classes/Performance.xml:86 doc/classes/RenderingServer.xml:3802
+#: doc/classes/Performance.xml:155 doc/classes/RenderingServer.xml:3813
msgid "Unimplemented in the GLES2 rendering backend, always returns 0."
msgstr ""
-#: doc/classes/Performance.xml:89
+#: doc/classes/Performance.xml:158
msgid "Number of active [RigidBody2D] nodes in the game."
msgstr ""
-#: doc/classes/Performance.xml:92
+#: doc/classes/Performance.xml:161
msgid "Number of collision pairs in the 2D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:95
+#: doc/classes/Performance.xml:164
msgid "Number of islands in the 2D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:98
+#: doc/classes/Performance.xml:167
msgid "Number of active [RigidBody3D] and [VehicleBody3D] nodes in the game."
msgstr ""
-#: doc/classes/Performance.xml:101
+#: doc/classes/Performance.xml:170
msgid "Number of collision pairs in the 3D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:104
+#: doc/classes/Performance.xml:173
msgid "Number of islands in the 3D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:107
+#: doc/classes/Performance.xml:176
msgid "Output latency of the [AudioServer]."
msgstr ""
-#: doc/classes/Performance.xml:110
+#: doc/classes/Performance.xml:179
msgid "Represents the size of the [enum Monitor] enum."
msgstr ""
@@ -35299,27 +35994,27 @@ msgstr ""
msgid "Damps the body's rotation if greater than [code]0[/code]."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:70 doc/classes/RigidBody3D.xml:132
+#: doc/classes/PhysicalBone3D.xml:70 doc/classes/RigidBody3D.xml:139
msgid "Lock the body's rotation in the X axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:73 doc/classes/RigidBody3D.xml:135
+#: doc/classes/PhysicalBone3D.xml:73 doc/classes/RigidBody3D.xml:142
msgid "Lock the body's rotation in the Y axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:76 doc/classes/RigidBody3D.xml:138
+#: doc/classes/PhysicalBone3D.xml:76 doc/classes/RigidBody3D.xml:145
msgid "Lock the body's rotation in the Z axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:79 doc/classes/RigidBody3D.xml:141
+#: doc/classes/PhysicalBone3D.xml:79 doc/classes/RigidBody3D.xml:148
msgid "Lock the body's movement in the X axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:82 doc/classes/RigidBody3D.xml:144
+#: doc/classes/PhysicalBone3D.xml:82 doc/classes/RigidBody3D.xml:151
msgid "Lock the body's movement in the Y axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:85 doc/classes/RigidBody3D.xml:147
+#: doc/classes/PhysicalBone3D.xml:85 doc/classes/RigidBody3D.xml:154
msgid "Lock the body's movement in the Z axis."
msgstr ""
@@ -35374,12 +36069,12 @@ msgstr ""
msgid "Damps the body's movement if greater than [code]0[/code]."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:118 doc/classes/RigidBody2D.xml:158
-#: doc/classes/RigidBody3D.xml:175
+#: doc/classes/PhysicalBone3D.xml:118 doc/classes/RigidBody2D.xml:159
+#: doc/classes/RigidBody3D.xml:183
msgid "The body's mass."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:121 doc/classes/RigidBody3D.xml:188
+#: doc/classes/PhysicalBone3D.xml:121 doc/classes/RigidBody3D.xml:196
msgid ""
"The body's weight based on its mass and the global 3D gravity. Global values "
"are set in [b]Project > Project Settings > Physics > 3d[/b]."
@@ -35686,7 +36381,7 @@ msgid "The inverse of the mass of the body."
msgstr ""
#: doc/classes/PhysicsDirectBodyState2D.xml:195
-#: doc/classes/PhysicsDirectBodyState3D.xml:198 doc/classes/RigidBody2D.xml:155
+#: doc/classes/PhysicsDirectBodyState3D.xml:198 doc/classes/RigidBody2D.xml:156
msgid "The body's linear velocity."
msgstr ""
@@ -36239,7 +36934,7 @@ msgid ""
msgstr ""
#: doc/classes/PhysicsServer2D.xml:620 doc/classes/PhysicsServer3D.xml:637
-#: doc/classes/RigidBody3D.xml:120
+#: doc/classes/RigidBody3D.xml:127
msgid ""
"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."
@@ -37304,47 +37999,64 @@ msgid ""
"collision queries. See also [PhysicsShapeQueryResult2D]."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:18
-msgid ""
-"Sets the [Shape2D] that will be used for collision/intersection queries."
-msgstr ""
-
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:24
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:15
msgid "If [code]true[/code], the query will take [Area2D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:18
msgid ""
"If [code]true[/code], the query will take [PhysicsBody2D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:30
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:30
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:21
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:21
msgid "The physics layer(s) the query will take into account (as a bitmask)."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:33
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:33
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:24
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:24
msgid ""
"The list of objects or object [RID]s that will be excluded from collisions."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:36
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:36 doc/classes/Shape3D.xml:16
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:27 doc/classes/Shape3D.xml:16
msgid "The collision margin for the shape."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:39
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:30
msgid "The motion of the shape being queried for."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:42
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:39
-msgid "The queried shape's [RID]. See also [method set_shape]."
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:33
+msgid ""
+"The [Shape2D] that will be used for collision/intersection queries. This "
+"stores the actual reference which avoids the shape to be released while "
+"being used for queries, so always prefer using this over [member shape_rid]."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:36
+msgid ""
+"The queried shape's [RID] that will be used for collision/intersection "
+"queries. Use this over [member shape] if you want to optimize for "
+"performance using the Servers API:\n"
+"[codeblock]\n"
+"var shape_rid = PhysicsServer2D.circle_shape_create()\n"
+"var radius = 64\n"
+"PhysicsServer2D.shape_set_data(shape_rid, radius)\n"
+"\n"
+"var params = PhysicsShapeQueryParameters2D.new()\n"
+"params.shape_rid = shape_rid\n"
+"\n"
+"# Execute physics queries here...\n"
+"\n"
+"# Release the shape when done with physics queries.\n"
+"PhysicsServer2D.free_rid(shape_rid)\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:45
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:42
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:52
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:49
msgid "The queried shape's transform matrix."
msgstr ""
@@ -37358,18 +38070,40 @@ msgid ""
"collision queries. See also [PhysicsShapeQueryResult3D]."
msgstr ""
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:15
+msgid "If [code]true[/code], the query will take [Area3D]s into account."
+msgstr ""
+
#: doc/classes/PhysicsShapeQueryParameters3D.xml:18
msgid ""
-"Sets the [Shape3D] that will be used for collision/intersection queries."
+"If [code]true[/code], the query will take [PhysicsBody3D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:24
-msgid "If [code]true[/code], the query will take [Area3D]s into account."
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:30
+msgid ""
+"The [Shape3D] that will be used for collision/intersection queries. This "
+"stores the actual reference which avoids the shape to be released while "
+"being used for queries, so always prefer using this over [member shape_rid]."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:33
msgid ""
-"If [code]true[/code], the query will take [PhysicsBody3D]s into account."
+"The queried shape's [RID] that will be used for collision/intersection "
+"queries. Use this over [member shape] if you want to optimize for "
+"performance using the Servers API:\n"
+"[codeblock]\n"
+"var shape_rid = PhysicsServer3D.shape_create(PhysicsServer3D.SHAPE_SPHERE)\n"
+"var radius = 2.0\n"
+"PhysicsServer3D.shape_set_data(shape_rid, radius)\n"
+"\n"
+"var params = PhysicsShapeQueryParameters3D.new()\n"
+"params.shape_rid = shape_rid\n"
+"\n"
+"# Execute physics queries here...\n"
+"\n"
+"# Release the shape when done with physics queries.\n"
+"PhysicsServer3D.free_rid(shape_rid)\n"
+"[/codeblock]"
msgstr ""
#: doc/classes/PhysicsShapeQueryResult2D.xml:4
@@ -37510,92 +38244,94 @@ msgid ""
"code]."
msgstr ""
-#: doc/classes/Plane.xml:72
-msgid "Returns a point on the plane."
-msgstr ""
-
-#: doc/classes/Plane.xml:83
+#: doc/classes/Plane.xml:76
msgid ""
-"Returns [code]true[/code] if [code]point[/code] is inside the plane (by a "
-"very minimum [code]epsilon[/code] threshold)."
+"Returns [code]true[/code] if [code]point[/code] is inside the plane. "
+"Comparison uses a custom minimum [code]epsilon[/code] threshold."
msgstr ""
-#: doc/classes/Plane.xml:94
+#: doc/classes/Plane.xml:87
msgid ""
"Returns the intersection point of the three planes [code]b[/code], [code]c[/"
"code] and this plane. If no intersection is found, [code]null[/code] is "
"returned."
msgstr ""
-#: doc/classes/Plane.xml:105
+#: doc/classes/Plane.xml:98
msgid ""
"Returns the intersection point of a ray consisting of the position "
"[code]from[/code] and the direction normal [code]dir[/code] with this plane. "
"If no intersection is found, [code]null[/code] is returned."
msgstr ""
-#: doc/classes/Plane.xml:116
+#: doc/classes/Plane.xml:109
msgid ""
"Returns the intersection point of a segment from position [code]begin[/code] "
"to position [code]end[/code] with this plane. If no intersection is found, "
"[code]null[/code] is returned."
msgstr ""
-#: doc/classes/Plane.xml:125
+#: doc/classes/Plane.xml:118
msgid ""
"Returns [code]true[/code] if this plane and [code]plane[/code] are "
"approximately equal, by running [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/Plane.xml:134
+#: doc/classes/Plane.xml:127
msgid ""
"Returns [code]true[/code] if [code]point[/code] is located above the plane."
msgstr ""
-#: doc/classes/Plane.xml:141
+#: doc/classes/Plane.xml:134
msgid "Returns a copy of the plane, normalized."
msgstr ""
-#: doc/classes/Plane.xml:150
+#: doc/classes/Plane.xml:143
msgid ""
-"Returns the orthogonal projection of point [code]p[/code] into a point in "
-"the plane."
+"Returns the orthogonal projection of [code]point[/code] into a point in the "
+"plane."
msgstr ""
-#: doc/classes/Plane.xml:156
+#: doc/classes/Plane.xml:149
msgid ""
-"Distance from the origin to the plane, in the direction of [member normal]."
+"The distance from the origin to the plane, in the direction of [member "
+"normal]. This value is typically non-negative.\n"
+"In the scalar equation of the plane [code]ax + by + cz = d[/code], this is "
+"[code]d[/code], while the [code](a, b, c)[/code] coordinates are represented "
+"by the [member normal] property."
msgstr ""
-#: doc/classes/Plane.xml:159
+#: doc/classes/Plane.xml:153
msgid ""
-"The normal of the plane. \"Over\" or \"Above\" the plane is considered the "
-"side of the plane towards where the normal is pointing."
+"The normal of the plane, which must be normalized.\n"
+"In the scalar equation of the plane [code]ax + by + cz = d[/code], this is "
+"the vector [code](a, b, c)[/code], where [code]d[/code] is the [member d] "
+"property."
msgstr ""
-#: doc/classes/Plane.xml:162
-msgid "The [member normal]'s X component."
+#: doc/classes/Plane.xml:157
+msgid "The X component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:165
-msgid "The [member normal]'s Y component."
+#: doc/classes/Plane.xml:160
+msgid "The Y component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:168
-msgid "The [member normal]'s Z component."
+#: doc/classes/Plane.xml:163
+msgid "The Z component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:173
-msgid "A plane that extends in the Y and Z axes."
+#: doc/classes/Plane.xml:168
+msgid "A plane that extends in the Y and Z axes (normal vector points +X)."
msgstr ""
-#: doc/classes/Plane.xml:176
-msgid "A plane that extends in the X and Z axes."
+#: doc/classes/Plane.xml:171
+msgid "A plane that extends in the X and Z axes (normal vector points +Y)."
msgstr ""
-#: doc/classes/Plane.xml:179
-msgid "A plane that extends in the X and Y axes."
+#: doc/classes/Plane.xml:174
+msgid "A plane that extends in the X and Y axes (normal vector points +Z)."
msgstr ""
#: doc/classes/PlaneMesh.xml:4
@@ -38306,18 +39042,25 @@ msgstr ""
#: doc/classes/PrimitiveMesh.xml:16
msgid ""
-"Returns mesh arrays used to constitute surface of [Mesh]. Mesh arrays can be "
-"used with [ArrayMesh] to create new surfaces."
+"Returns mesh arrays used to constitute surface of [Mesh]. The result can be "
+"passed to [method ArrayMesh.add_surface_from_arrays] to create a new "
+"surface. For example:\n"
+"[codeblock]\n"
+"var c := CylinderMesh.new()\n"
+"var arr_mesh := ArrayMesh.new()\n"
+"arr_mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLES, c."
+"get_mesh_arrays())\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:22
+#: doc/classes/PrimitiveMesh.xml:27
msgid ""
"Overrides the [AABB] with one defined by user for use with frustum culling. "
"Especially useful to avoid unnexpected culling when using a shader to "
"offset vertices."
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:25
+#: doc/classes/PrimitiveMesh.xml:30
msgid ""
"If set, the order of the vertices in each triangle are reversed resulting in "
"the backside of the mesh being drawn.\n"
@@ -38325,7 +39068,7 @@ msgid ""
"[member BaseMaterial3D.cull_mode]."
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:29
+#: doc/classes/PrimitiveMesh.xml:34
msgid "The current [Material] of the primitive mesh."
msgstr ""
@@ -38756,11 +39499,17 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:260
msgid ""
+"Safer override for [member audio/output_latency] in the Web platform, to "
+"avoid audio issues especially on mobile devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:263
+msgid ""
"Setting to hardcode audio delay when playing video. Best to leave this "
"untouched unless you know what you are doing."
msgstr ""
-#: doc/classes/ProjectSettings.xml:263
+#: doc/classes/ProjectSettings.xml:266
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -38770,7 +39519,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:269
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -38780,27 +39529,27 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:269
+#: doc/classes/ProjectSettings.xml:272
msgid ""
"The default compression level for Zstandard. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
"speed. Decompression speed is mostly unaffected by the compression level."
msgstr ""
-#: doc/classes/ProjectSettings.xml:272
+#: doc/classes/ProjectSettings.xml:275
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:278
msgid ""
"Largest size limit (in power of 2) allowed when compressing using long-"
"distance matching with Zstandard. Higher values can result in better "
"compression, but will require more memory when compressing and decompressing."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:281
msgid ""
"If [code]true[/code], displays getters and setters in autocompletion results "
"in the script editor. This setting is meant to be used when porting old "
@@ -38808,74 +39557,55 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:281
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:284
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:287
+#: doc/classes/ProjectSettings.xml:294
msgid ""
"If [code]true[/code], enables specific GDScript warnings (see [code]debug/"
"gdscript/warnings/*[/code] settings). If [code]false[/code], disables all "
"GDScript warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
-msgid ""
-"If [code]true[/code], enables warnings when a function is declared with the "
-"same name as a constant."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:296
-msgid ""
-"If [code]true[/code], enables warnings when a function is declared with the "
-"same name as a variable. This will turn into an error in a future version "
-"when first-class functions become supported in GDScript."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:299
-msgid ""
-"If [code]true[/code], enables warnings when a function assigned to a "
-"variable may yield and return a function state instead of a value."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:302
+#: doc/classes/ProjectSettings.xml:300
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:303
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when dividing an integer by another "
"integer (the decimal part will be discarded)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when passing a floating-point value "
"to a function that expects an integer (it will be converted and lose "
"precision)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:314
+#: doc/classes/ProjectSettings.xml:312
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
@@ -38896,102 +39626,85 @@ msgid ""
"member variable)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:323
+#: doc/classes/ProjectSettings.xml:325
msgid ""
"If [code]true[/code], enables warnings when calling an expression that has "
"no effect on the surrounding code, such as writing [code]2 + 2[/code] as a "
"statement."
msgstr ""
-#: doc/classes/ProjectSettings.xml:326
+#: doc/classes/ProjectSettings.xml:328
msgid ""
"If [code]true[/code], enables warnings when calling a ternary expression "
"that has no effect on the surrounding code, such as writing [code]42 if "
"active else 0[/code] as a statement."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:331
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:334
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:335
+#: doc/classes/ProjectSettings.xml:337
msgid ""
"If [code]true[/code], enables warnings when assigning a variable using an "
"assignment operator like [code]+=[/code] if the variable wasn't previously "
"assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:338
+#: doc/classes/ProjectSettings.xml:340
msgid ""
"If [code]true[/code], enables warnings when unreachable code is detected "
"(such as after a [code]return[/code] statement that will always be executed)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:345
msgid ""
"If [code]true[/code], enables warnings when using an expression whose type "
"may not be compatible with the function parameter expected."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:348
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:347
+#: doc/classes/ProjectSettings.xml:351
msgid ""
"If [code]true[/code], enables warnings when calling a method whose presence "
"is not guaranteed at compile-time in the class."
msgstr ""
-#: doc/classes/ProjectSettings.xml:350
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], enables warnings when accessing a property whose "
"presence is not guaranteed at compile-time in the class."
msgstr ""
-#: doc/classes/ProjectSettings.xml:353
-msgid ""
-"If [code]true[/code], enables warnings when a function parameter is unused."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:356
-msgid ""
-"If [code]true[/code], enables warnings when a member variable is unused."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:363
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:362
+#: doc/classes/ProjectSettings.xml:366
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:365
-msgid ""
-"If [code]true[/code], enables warnings when a variable is declared with the "
-"same name as a function. This will turn into an error in a future version "
-"when first-class functions become supported in GDScript."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:368
+#: doc/classes/ProjectSettings.xml:369
msgid ""
"If [code]true[/code], enables warnings when assigning the result of a "
"function that returns [code]void[/code] to a variable."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:374
+#: doc/classes/ProjectSettings.xml:375
msgid ""
"Maximum number of frames per second allowed. The actual number of frames per "
"second may still be below this value if the game is lagging.\n"
@@ -39002,143 +39715,143 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:379
+#: doc/classes/ProjectSettings.xml:380
msgid "Maximum call stack allowed for debugging GDScript."
msgstr ""
-#: doc/classes/ProjectSettings.xml:382
+#: doc/classes/ProjectSettings.xml:383
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:385
+#: doc/classes/ProjectSettings.xml:386
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:388
+#: doc/classes/ProjectSettings.xml:389
msgid ""
"Print more information to standard output when running. It displays "
"information such as memory leaks, which scenes and resources are being "
"loaded, etc."
msgstr ""
-#: doc/classes/ProjectSettings.xml:391
+#: doc/classes/ProjectSettings.xml:392
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:394
+#: doc/classes/ProjectSettings.xml:395
msgid ""
"Color of the contact points between collision shapes, visible when \"Visible "
"Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:397
+#: doc/classes/ProjectSettings.xml:398
msgid ""
"Maximum number of contact points between collision shapes to display when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:400
+#: doc/classes/ProjectSettings.xml:401
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
msgid "Hotspot for the custom mouse cursor image."
msgstr ""
-#: doc/classes/ProjectSettings.xml:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
msgid ""
"If [code]true[/code], allows HiDPI display on Windows and macOS. This "
"setting has no effect on desktop Linux, as DPI-awareness fallbacks are not "
"supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"If [code]true[/code], keeps the screen on (even in case of inactivity), so "
"the screensaver does not take over. Works on desktop and mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
msgid "Default orientation on mobile devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"If [code]true[/code], the home indicator is hidden automatically. This only "
"affects iOS devices without a physical home button."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid "Force the window to be always on top."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid "Force the window to be borderless."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Sets the window to full screen when it starts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid ""
"Sets the game's main viewport height. On desktop platforms, this is the "
"default window size. Stretch mode settings also use this as a reference when "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Allows the window to be resizable by default."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"Sets the game's main viewport width. On desktop platforms, this is the "
"default window size. Stretch mode settings also use this as a reference when "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:454
+#: doc/classes/ProjectSettings.xml:455
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:457
+#: doc/classes/ProjectSettings.xml:458
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -39147,7 +39860,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:460
+#: doc/classes/ProjectSettings.xml:461
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -39158,13 +39871,13 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:464
+#: doc/classes/ProjectSettings.xml:465
msgid ""
"Search path for project-specific script templates. Script templates will be "
"search both in the editor-specific path and in this project-specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:467
+#: doc/classes/ProjectSettings.xml:468
msgid ""
"Text-based file extensions to include in the script editor's \"Find in Files"
"\" feature. You can add e.g. [code]tscn[/code] if you wish to also parse "
@@ -39172,49 +39885,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:470
+#: doc/classes/ProjectSettings.xml:471
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:473
+#: doc/classes/ProjectSettings.xml:474
msgid ""
-"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
+"If [code]true[/code], swaps Cancel and OK buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:478
+#: doc/classes/ProjectSettings.xml:479
msgid ""
"Path to a custom [Theme] resource file to use for the project ([code]theme[/"
"code] or generic [code]tres[/code]/[code]res[/code] extension)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:484
+#: doc/classes/ProjectSettings.xml:485
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:487
+#: doc/classes/ProjectSettings.xml:488
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:490
+#: doc/classes/ProjectSettings.xml:491
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:493
+#: doc/classes/ProjectSettings.xml:494
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:496
+#: doc/classes/ProjectSettings.xml:497
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -39223,7 +39936,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"Default [InputEventAction] to discard a modal or pending input.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39231,7 +39944,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:504
+#: doc/classes/ProjectSettings.xml:505
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39239,7 +39952,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:508
+#: doc/classes/ProjectSettings.xml:509
msgid ""
"Default [InputEventAction] to go to the end position of a [Control] (e.g. "
"last item in an [ItemList] or a [Tree]), matching the behavior of [constant "
@@ -39249,7 +39962,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:512
+#: doc/classes/ProjectSettings.xml:513
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -39258,7 +39971,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:516
+#: doc/classes/ProjectSettings.xml:517
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -39267,7 +39980,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:520
+#: doc/classes/ProjectSettings.xml:521
msgid ""
"Default [InputEventAction] to go to the start position of a [Control] (e.g. "
"first item in an [ItemList] or a [Tree]), matching the behavior of [constant "
@@ -39277,7 +39990,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39285,7 +39998,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:528
+#: doc/classes/ProjectSettings.xml:529
msgid ""
"Default [InputEventAction] to go down a page in a [Control] (e.g. in an "
"[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEDOWN] on "
@@ -39295,7 +40008,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Default [InputEventAction] to go up a page in a [Control] (e.g. in an "
"[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEUP] on "
@@ -39305,7 +40018,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:536
+#: doc/classes/ProjectSettings.xml:537
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39313,7 +40026,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:540
+#: doc/classes/ProjectSettings.xml:541
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -39322,7 +40035,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39330,371 +40043,371 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:548
+#: doc/classes/ProjectSettings.xml:549
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:554
+#: doc/classes/ProjectSettings.xml:555
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:557
+#: doc/classes/ProjectSettings.xml:558
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:560
+#: doc/classes/ProjectSettings.xml:561
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:566
+#: doc/classes/ProjectSettings.xml:567
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:569
+#: doc/classes/ProjectSettings.xml:570
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:572
+#: doc/classes/ProjectSettings.xml:573
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:578
+#: doc/classes/ProjectSettings.xml:579
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:581
+#: doc/classes/ProjectSettings.xml:582
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:584
+#: doc/classes/ProjectSettings.xml:585
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:590
+#: doc/classes/ProjectSettings.xml:591
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:593
+#: doc/classes/ProjectSettings.xml:594
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:596
+#: doc/classes/ProjectSettings.xml:597
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:602
+#: doc/classes/ProjectSettings.xml:603
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid ""
"The locale to fall back to if a translation isn't available in a given "
"language. If left empty, [code]en[/code] (English) will be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "If [code]true[/code], logs all output to files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:806
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:809
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:812
msgid ""
"Godot uses a message queue to defer some function calls. If you run out of "
"space on it (you will see an error), you can increase the size here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:815
msgid ""
"This is used by servers when used in multi-threading mode (servers and "
"visual). RIDs are preallocated to avoid stalling the server requesting them "
@@ -39702,56 +40415,56 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:829
+#: doc/classes/ProjectSettings.xml:832
msgid ""
"Maximum amount of characters allowed to send as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:832
+#: doc/classes/ProjectSettings.xml:835
msgid ""
"Maximum number of errors allowed to be sent from the debugger. Over this "
"value, content is dropped. This helps not to stall the debugger connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:835
+#: doc/classes/ProjectSettings.xml:838
msgid ""
"Maximum amount of messages in the debugger queue. Over this value, content "
"is dropped. This helps to limit the debugger memory usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:838
+#: doc/classes/ProjectSettings.xml:841
msgid ""
"Maximum number of warnings allowed to be sent from the debugger. Over this "
"value, content is dropped. This helps not to stall the debugger connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:841
+#: doc/classes/ProjectSettings.xml:844
msgid ""
"Default size of packet peer stream for deserializing Godot data. Over this "
"size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:844
+#: doc/classes/ProjectSettings.xml:847
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:847
+#: doc/classes/ProjectSettings.xml:850
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:850
+#: doc/classes/ProjectSettings.xml:853
msgid ""
"Amount of read ahead used by remote filesystem. Higher values decrease the "
"effects of latency at the cost of higher bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:853
+#: doc/classes/ProjectSettings.xml:856
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:856
+#: doc/classes/ProjectSettings.xml:859
msgid ""
"The CA certificates bundle to use for SSL connections. If this is set to a "
"non-empty value, this will [i]override[/i] Godot's default [url=https://"
@@ -39761,31 +40474,31 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:863
msgid ""
"When creating node names automatically, set the type of casing in this "
"project. This is mostly an editor setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:866
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:869
msgid "Size of the hash table used for the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:872
msgid "Cell size used for the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:875
msgid "The default angular damp in 2D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:878
msgid ""
"The default gravity strength in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39797,7 +40510,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:883
+#: doc/classes/ProjectSettings.xml:886
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39809,38 +40522,38 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:891
+#: doc/classes/ProjectSettings.xml:894
msgid "The default linear damp in 2D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:894
+#: doc/classes/ProjectSettings.xml:897
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:897
+#: doc/classes/ProjectSettings.xml:900
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics2D\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:901
+#: doc/classes/ProjectSettings.xml:904
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant PhysicsServer2D."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:904
+#: doc/classes/ProjectSettings.xml:907
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant PhysicsServer2D."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:907
+#: doc/classes/ProjectSettings.xml:910
msgid ""
"Sets whether physics is run on the main thread or a separate one. Running "
"the server on a thread increases performance, but restricts API access to "
@@ -39850,23 +40563,23 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:914
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant PhysicsServer2D.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:917
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody3D] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:920
msgid "The default angular damp in 3D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:923
msgid ""
"The default gravity strength in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39878,7 +40591,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:928
+#: doc/classes/ProjectSettings.xml:931
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39890,11 +40603,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:936
+#: doc/classes/ProjectSettings.xml:939
msgid "The default linear damp in 3D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:939
+#: doc/classes/ProjectSettings.xml:942
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -39902,11 +40615,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:943
+#: doc/classes/ProjectSettings.xml:946
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:949
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -39915,7 +40628,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:950
+#: doc/classes/ProjectSettings.xml:953
msgid ""
"Fix to improve physics jitter, specially on monitors where refresh rate is "
"different than the physics FPS.\n"
@@ -39923,7 +40636,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:954
+#: doc/classes/ProjectSettings.xml:957
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -39931,7 +40644,7 @@ msgid ""
"programmatically, use [method RenderingServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:957
+#: doc/classes/ProjectSettings.xml:960
msgid ""
"[Environment] that will be used as a fallback environment in case a scene "
"does not specify its own environment. The default environment is loaded in "
@@ -39941,14 +40654,14 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:986
+#: doc/classes/ProjectSettings.xml:989
msgid ""
"Max amount of elements renderable in a frame. If more than this are visible "
"per frame, they will be dropped. Keep in mind elements refer to mesh "
"surfaces and not meshes themselves."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:994
msgid ""
"Some NVIDIA GPU drivers have a bug which produces flickering issues for the "
"[code]draw_rect[/code] method, especially as used in [TileMap]. Refer to "
@@ -39960,73 +40673,73 @@ msgid ""
"using the Vulkan backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:995
+#: doc/classes/ProjectSettings.xml:998
msgid ""
"If [code]true[/code], forces snapping of polygons to pixels in 2D rendering. "
"May help in some pixel art styles."
msgstr ""
-#: doc/classes/ProjectSettings.xml:998
+#: doc/classes/ProjectSettings.xml:1001
msgid ""
"Sets the quality of the depth of field effect. Higher quality takes more "
"samples, which is slower but looks smoother."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1001
+#: doc/classes/ProjectSettings.xml:1004
msgid ""
"Sets the depth of field shape. Can be Box, Hexagon, or Circle. Box is the "
"fastest. Circle is the most realistic, but also the most expensive to "
"compute."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1004
+#: doc/classes/ProjectSettings.xml:1007
msgid ""
"If [code]true[/code], jitters DOF samples to make effect slightly blurrier "
"and hide lines created from low sample rates. This can result in a slightly "
"grainy appearance when used with a low number of samples."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1010
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1010
+#: doc/classes/ProjectSettings.xml:1013
msgid ""
"If [code]true[/code], performs a previous depth pass before rendering "
"materials. This increases performance in scenes with high overdraw, when "
"complex materials and lighting are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1016
msgid ""
"The directional shadow's size in pixels. Higher values will result in "
"sharper shadows, at the cost of performance. The value will be rounded up to "
"the nearest power of 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1016
+#: doc/classes/ProjectSettings.xml:1019
msgid ""
"Lower-end override for [member rendering/quality/directional_shadow/size] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1019
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"Quality setting for shadows cast by [DirectionalLight3D]s. Higher quality "
"settings use more samples when reading from shadow maps and are thus slower. "
"Low quality settings may result in shadows looking grainy."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1022
+#: doc/classes/ProjectSettings.xml:1025
msgid ""
"Lower-end override for [member rendering/quality/directional_shadow/"
"soft_shadow_quality] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1028
msgid ""
"The video driver to use (\"GLES2\" or \"Vulkan\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -40036,32 +40749,32 @@ msgid ""
"get_current_video_driver[/code] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1031
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"If [code]true[/code], take additional samples when rendering objects "
"affected by a [GIProbe] to reduce artifacts from only sampling in one "
"direction."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1034
+#: doc/classes/ProjectSettings.xml:1037
msgid ""
"Sets the number of cone samples taken when rendering objects affected by "
"[GIProbe]s."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1037
+#: doc/classes/ProjectSettings.xml:1040
msgid ""
"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."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1040
+#: doc/classes/ProjectSettings.xml:1043
msgid ""
"Lower-end override for [member rendering/quality/glow/upscale_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1043
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Strategy used for framebuffer allocation. The simpler it is, the less "
"resources it uses (but the less features it supports). If set to \"2D "
@@ -40071,41 +40784,41 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1046
+#: doc/classes/ProjectSettings.xml:1049
msgid ""
"Lower-end override for [member rendering/quality/intended_usage/"
"framebuffer_allocation] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1052
msgid ""
"Number of cubemaps to store in the reflection atlas. The number of "
"[ReflectionProbe]s in a scene will be limited by this amount. A higher "
"number requires more VRAM."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1052
+#: doc/classes/ProjectSettings.xml:1055
msgid ""
"Size of cubemap faces for [ReflectionProbe]s. A higher number requires more "
"VRAM and may make reflection probe updating slower."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1055
+#: doc/classes/ProjectSettings.xml:1058
msgid ""
"Lower-end override for [member rendering/quality/reflection_atlas/"
"reflection_size] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1058
+#: doc/classes/ProjectSettings.xml:1061
msgid ""
"Use a higher quality variant of the fast filtering algorithm. Significantly "
"slower than using default quality, but results in smoother reflections. "
"Should only be used when the scene is especially detailed."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1061
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Sets the number of samples to take when using importance sampling for [Sky]s "
"and [ReflectionProbe]s. A higher value will result in smoother, higher "
@@ -40115,19 +40828,19 @@ msgid ""
"environments with a high level of detail."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1064
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Lower-end override for [member rendering/quality/reflections/ggx_samples] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1067
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Limits the number of layers to use in radiance maps when using importance "
"sampling. A lower number will be slightly faster and take up less VRAM."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1070
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise and "
@@ -40136,14 +40849,14 @@ msgid ""
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1073
+#: doc/classes/ProjectSettings.xml:1076
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"texture_array_reflections] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1079
msgid ""
"Sets the number of MSAA samples to use (as a power of two). MSAA is used to "
"reduce aliasing around the edges of polygons. A higher MSAA value results in "
@@ -40151,7 +40864,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1080
+#: doc/classes/ProjectSettings.xml:1083
msgid ""
"Sets the screen-space antialiasing mode for the default screen [Viewport]. "
"Screen-space antialiasing works by selectively blurring edges in a post-"
@@ -40160,133 +40873,117 @@ msgid ""
"MSAA and will smooth out specular aliasing, but tend to make scenes appear "
"blurry.\n"
"Another way to combat specular aliasing is to enable [member rendering/"
-"quality/screen_filters/screen_space_roughness_limiter]."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:1084
-msgid ""
-"Enables the screen-space roughness limiter which increases material "
-"roughness in areas with a high normal frequency (i.e. when normals change a "
-"lot from pixel to pixel). This helps to reduce the amount of specular "
-"aliasing in a scene. Specular aliasing looks like random bright pixels that "
-"occur in reflections."
+"quality/screen_filters/screen_space_roughness_limiter_enabled]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1087
-msgid ""
-"Curves the amount of the roughness limited effect. A higher value limits the "
-"effect to very sharply curved surfaces, while a lower threshold extends the "
-"effect to smoother surfaces."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:1090
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"Sets the quality for rough screen-space reflections. Turning off will make "
"all screen space reflections sharp, while higher values make rough "
"reflections look better."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1093
+#: doc/classes/ProjectSettings.xml:1096
msgid ""
"If [code]true[/code], uses faster but lower-quality Blinn model to generate "
"blurred reflections instead of the GGX model."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1099
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_blinn_over_ggx] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1102
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1102
+#: doc/classes/ProjectSettings.xml:1105
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_lambert_over_burley] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1105
+#: doc/classes/ProjectSettings.xml:1108
msgid ""
"If [code]true[/code], forces vertex shading for all rendering. This can "
"increase performance a lot, but also reduces quality immensely. Can be used "
"to optimize performance on low-end mobile devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1108
+#: doc/classes/ProjectSettings.xml:1111
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_vertex_shading] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1111 doc/classes/ProjectSettings.xml:1114
-#: doc/classes/ProjectSettings.xml:1117 doc/classes/ProjectSettings.xml:1120
+#: doc/classes/ProjectSettings.xml:1114 doc/classes/ProjectSettings.xml:1117
+#: doc/classes/ProjectSettings.xml:1120 doc/classes/ProjectSettings.xml:1123
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1123
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1126
+#: doc/classes/ProjectSettings.xml:1129
msgid ""
"Lower-end override for [member rendering/quality/shadow_atlas/size] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1132
msgid ""
"Quality setting for shadows cast by [OmniLight3D]s and [SpotLight3D]s. "
"Higher quality settings use more samples when reading from shadow maps and "
"are thus slower. Low quality settings may result in shadows looking grainy."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1132
+#: doc/classes/ProjectSettings.xml:1135
msgid ""
"Lower-end override for [member rendering/quality/shadows/"
"soft_shadow_quality] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1135
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"If [code]true[/code], screen-space ambient occlusion will be rendered at "
"half size and then upscaled before being added to the scene. This is "
"significantly faster but may miss small details."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1138
+#: doc/classes/ProjectSettings.xml:1141
msgid ""
"Sets the quality of the screen-space ambient occlusion effect. Higher values "
"take more samples and so will result in better quality, at the cost of "
"performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1144
msgid ""
"Scales the depth over which the subsurface scattering effect is applied. A "
"high value may allow light to scatter into a part of the mesh or another "
"mesh that is close in screen space but far in depth."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1144
+#: doc/classes/ProjectSettings.xml:1147
msgid ""
"Sets the quality of the subsurface scattering effect. Higher values are "
"slower but look nicer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1147
+#: doc/classes/ProjectSettings.xml:1150
msgid ""
"Scales the distance over which samples are taken for subsurface scattering "
"effect. Changing this does not impact performance, but higher values will "
@@ -40294,7 +40991,7 @@ msgid ""
"out. A lower value results in a smaller spread of scattered light."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1150
+#: doc/classes/ProjectSettings.xml:1153
msgid ""
"Sets the maximum number of samples to take when using anisotropic filtering "
"on textures (as a power of two). A higher sample count will result in "
@@ -40303,7 +41000,7 @@ msgid ""
"materials where it is enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1153
+#: doc/classes/ProjectSettings.xml:1156
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -40312,49 +41009,49 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Thread model for rendering. Rendering on a thread can vastly improve "
"performance, but synchronizing to the main thread can cause a bit more "
"jitter."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
"only supported on desktop platforms, and only when using the Vulkan renderer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
"doesn't support alpha channels in textures."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
"compression algorithm is only supported when using the Vulkan renderer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1175
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
"compression algorithm is only supported on iOS."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
"supported on desktop platforms and consoles."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1182
+#: doc/classes/ProjectSettings.xml:1189
msgid "Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses."
msgstr ""
@@ -40384,13 +41081,14 @@ msgstr ""
#: doc/classes/Quat.xml:7
msgid ""
-"A unit quaternion used for representing 3D rotations.\n"
-"It is similar to [Basis], which implements matrix representation of "
-"rotations, and can be parametrized using both an axis-angle pair or Euler "
-"angles. But due to its compactness and the way it is stored in memory, "
-"certain operations (obtaining axis-angle and performing SLERP, in "
-"particular) are more efficient and robust against floating-point errors.\n"
-"Quaternions need to be (re)normalized."
+"A unit quaternion used for representing 3D rotations. Quaternions need to be "
+"normalized to be used for rotation.\n"
+"It is similar to Basis, which implements matrix representation of rotations, "
+"and can be parametrized using both an axis-angle pair or Euler angles. Basis "
+"stores rotation, scale, and shearing, while Quat only stores rotation.\n"
+"Due to its compactness and the way it is stored in memory, certain "
+"operations (obtaining axis-angle and performing SLERP, in particular) are "
+"more efficient and robust against floating-point errors."
msgstr ""
#: doc/classes/Quat.xml:12
@@ -40400,29 +41098,31 @@ msgid ""
msgstr ""
#: doc/classes/Quat.xml:21
-msgid "Returns the rotation matrix corresponding to the given quaternion."
+msgid "Constructs a quaternion from the given [Basis]."
msgstr ""
#: doc/classes/Quat.xml:30
msgid ""
-"Returns a quaternion that will perform a rotation specified by Euler angles "
-"(in the YXZ convention: first Z, then X, and Y last), given in the vector "
-"format as (X angle, Y angle, Z angle)."
+"Constructs a quaternion that will perform a rotation specified by Euler "
+"angles (in the YXZ convention: when decomposing, first Z, then X, and Y "
+"last), given in the vector format as (X angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:41
msgid ""
-"Returns a quaternion that will rotate around the given axis by the specified "
-"angle. The axis must be a normalized vector."
+"Constructs a quaternion that will rotate around the given axis by the "
+"specified angle. The axis must be a normalized vector."
msgstr ""
#: doc/classes/Quat.xml:56
-msgid "Returns a quaternion defined by these values."
+msgid "Constructs a quaternion defined by the given values."
msgstr ""
#: doc/classes/Quat.xml:71
msgid ""
-"Performs a cubic spherical-linear interpolation with another quaternion."
+"Performs a cubic spherical interpolation between quaternions [code]preA[/"
+"code], this vector, [code]b[/code], and [code]postB[/code], by the given "
+"amount [code]t[/code]."
msgstr ""
#: doc/classes/Quat.xml:80
@@ -40431,10 +41131,10 @@ msgstr ""
#: doc/classes/Quat.xml:87
msgid ""
-"Returns Euler angles (in the YXZ convention: first Z, then X, and Y last) "
-"corresponding to the rotation represented by the unit quaternion. Returned "
-"vector contains the rotation angles in the format (X angle, Y angle, Z "
-"angle)."
+"Returns Euler angles (in the YXZ convention: when decomposing, first Z, then "
+"X, and Y last) corresponding to the rotation represented by the unit "
+"quaternion. Returned vector contains the rotation angles in the format (X "
+"angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:94
@@ -40473,44 +41173,57 @@ msgstr ""
#: doc/classes/Quat.xml:151
msgid ""
"Sets the quaternion to a rotation specified by Euler angles (in the YXZ "
-"convention: first Z, then X, and Y last), given in the vector format as (X "
-"angle, Y angle, Z angle)."
+"convention: when decomposing, first Z, then X, and Y last), given in the "
+"vector format as (X angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:162
-msgid "Performs a spherical-linear interpolation with another quaternion."
+msgid ""
+"Returns the result of the spherical linear interpolation between this "
+"quaternion and [code]to[/code] by amount [code]weight[/code].\n"
+"[b]Note:[/b] Both quaternions must be normalized."
msgstr ""
-#: doc/classes/Quat.xml:173
+#: doc/classes/Quat.xml:174
msgid ""
-"Performs a spherical-linear interpolation with another quaterion without "
-"checking if the rotation path is not bigger than 90°."
+"Returns the result of the spherical linear interpolation between this "
+"quaternion and [code]to[/code] by amount [code]weight[/code], but without "
+"checking if the rotation path is not bigger than 90 degrees."
msgstr ""
-#: doc/classes/Quat.xml:182
-msgid "Transforms the vector [code]v[/code] by this quaternion."
+#: doc/classes/Quat.xml:183
+msgid "Returns a vector transformed (multiplied) by this quaternion."
msgstr ""
-#: doc/classes/Quat.xml:188
-msgid "W component of the quaternion."
+#: doc/classes/Quat.xml:189
+msgid ""
+"W component of the quaternion (real part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:191
-msgid "X component of the quaternion."
+#: doc/classes/Quat.xml:193
+msgid ""
+"X component of the quaternion (imaginary [code]i[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:194
-msgid "Y component of the quaternion."
+#: doc/classes/Quat.xml:197
+msgid ""
+"Y component of the quaternion (imaginary [code]j[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:197
-msgid "Z component of the quaternion."
+#: doc/classes/Quat.xml:201
+msgid ""
+"Z component of the quaternion (imaginary [code]k[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:202
+#: doc/classes/Quat.xml:207
msgid ""
-"The identity rotation. Equivalent to an identity matrix. If a vector is "
-"transformed by an identity quaternion, it will not change."
+"The identity quaternion, representing no rotation. Equivalent to an identity "
+"[Basis] matrix. If a vector is transformed by an identity quaternion, it "
+"will not change."
msgstr ""
#: doc/classes/RandomNumberGenerator.xml:4
@@ -40713,7 +41426,8 @@ msgid ""
"collision information immediately instead of waiting for the next "
"[code]_physics_process[/code] call, for example if the ray or its parent has "
"changed state.\n"
-"[b]Note:[/b] [code]enabled == true[/code] is not required for this to work."
+"[b]Note:[/b] [member enabled] does not need to be [code]true[/code] for this "
+"to work."
msgstr ""
#: doc/classes/RayCast2D.xml:54 doc/classes/RayCast3D.xml:55
@@ -40819,7 +41533,8 @@ msgid ""
"Use this method to update the collision information immediately instead of "
"waiting for the next [code]_physics_process[/code] call, for example if the "
"ray or its parent has changed state.\n"
-"[b]Note:[/b] [code]enabled == true[/code] is not required for this to work."
+"[b]Note:[/b] [member enabled] does not need to be [code]true[/code] for this "
+"to work."
msgstr ""
#: doc/classes/RayCast3D.xml:71
@@ -40977,14 +41692,6 @@ msgstr ""
msgid "Returns a larger [Rect2] that contains this [Rect2] and [code]b[/code]."
msgstr ""
-#: doc/classes/Rect2.xml:174 doc/classes/Rect2i.xml:163
-msgid "Ending corner."
-msgstr ""
-
-#: doc/classes/Rect2.xml:177 doc/classes/Rect2i.xml:166
-msgid "Position (starting corner)."
-msgstr ""
-
#: doc/classes/Rect2i.xml:4
msgid "2D axis-aligned bounding box using integer coordinates."
msgstr ""
@@ -41097,22 +41804,22 @@ msgstr ""
msgid ""
"Base class for any object that keeps a reference count. [Resource] and many "
"other helper objects inherit this class.\n"
-"References keep an internal reference counter so that they are automatically "
-"released when no longer in use, and only then. References therefore do not "
-"need to be freed manually with [method Object.free].\n"
+"Unlike [Object]s, References keep an internal reference counter so that they "
+"are automatically released when no longer in use, and only then. References "
+"therefore do not need to be freed manually with [method Object.free].\n"
"In the vast majority of use cases, instantiating and using [Reference]-"
"derived types is all you need to do. The methods provided in this class are "
"only for advanced users, and can cause issues if misused."
msgstr ""
-#: doc/classes/Reference.xml:18
+#: doc/classes/Reference.xml:19
msgid ""
"Initializes the internal reference counter. Use this only if you really know "
"what you are doing.\n"
"Returns whether the initialization was successful."
msgstr ""
-#: doc/classes/Reference.xml:26
+#: doc/classes/Reference.xml:27
msgid ""
"Increments the internal reference counter. Use this only if you really know "
"what you are doing.\n"
@@ -41120,7 +41827,7 @@ msgid ""
"code] otherwise."
msgstr ""
-#: doc/classes/Reference.xml:34
+#: doc/classes/Reference.xml:35
msgid ""
"Decrements the internal reference counter. Use this only if you really know "
"what you are doing.\n"
@@ -41169,14 +41876,14 @@ msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/reflection_probes.html"
msgstr ""
-#: doc/classes/ReflectionProbe.xml:17
+#: doc/classes/ReflectionProbe.xml:23
msgid ""
"If [code]true[/code], enables box projection. This makes reflections look "
"more correct in rectangle-shaped rooms by offsetting the reflection center "
"depending on the camera's location."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:20
+#: doc/classes/ReflectionProbe.xml:26
msgid ""
"Sets the cull mask which determines what objects are drawn by this probe. "
"Every [VisualInstance3D] with a layer included in this cull mask will be "
@@ -41185,78 +41892,56 @@ msgid ""
"rendering cost."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:23
+#: doc/classes/ReflectionProbe.xml:29
msgid ""
"If [code]true[/code], computes shadows in the reflection probe. This makes "
"the reflection probe slower to render; you may want to disable this if using "
"the [constant UPDATE_ALWAYS] [member update_mode]."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:26
+#: doc/classes/ReflectionProbe.xml:32
msgid ""
"The size of the reflection probe. The larger the extents the more space "
"covered by the probe which will lower the perceived resolution. It is best "
"to keep the extents only as large as you need them."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:29
+#: doc/classes/ReflectionProbe.xml:35
msgid ""
"Defines the reflection intensity. Intensity modulates the strength of the "
"reflection."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:32
-msgid ""
-"Sets the ambient light color to be used when this probe is set to [member "
-"interior_enable]."
-msgstr ""
-
-#: doc/classes/ReflectionProbe.xml:35
-msgid ""
-"Sets the contribution value for how much the reflection affects the ambient "
-"light for this reflection probe when set to [member interior_enable]. Useful "
-"so that ambient light matches the color of the room."
-msgstr ""
-
#: doc/classes/ReflectionProbe.xml:38
-msgid ""
-"Sets the energy multiplier for this reflection probe's ambient light "
-"contribution when set to [member interior_enable]."
+msgid "If [code]true[/code], reflections will ignore sky contribution."
msgstr ""
#: doc/classes/ReflectionProbe.xml:41
msgid ""
-"If [code]true[/code], reflections will ignore sky contribution. Ambient "
-"lighting is then controlled by the [code]interior_ambient_*[/code] "
-"properties."
-msgstr ""
-
-#: doc/classes/ReflectionProbe.xml:44
-msgid ""
"Sets the max distance away from the probe an object can be before it is "
"culled."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:47
+#: doc/classes/ReflectionProbe.xml:44
msgid ""
"Sets the origin offset to be used when this reflection probe is in box "
"project mode."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:50
+#: doc/classes/ReflectionProbe.xml:47
msgid ""
"Sets how frequently the probe is updated. Can be [constant UPDATE_ONCE] or "
"[constant UPDATE_ALWAYS]."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:55
+#: doc/classes/ReflectionProbe.xml:52
msgid ""
"Update the probe once on the next frame. The corresponding radiance map will "
"be generated over the following six frames. This is slower to update than "
"[constant UPDATE_ALWAYS] but can result in higher quality reflections."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:58
+#: doc/classes/ReflectionProbe.xml:55
msgid ""
"Update the probe every frame. This is needed when you want to capture "
"dynamic objects. However, it results in an increased render time. Use "
@@ -41286,10 +41971,10 @@ msgid ""
"read by RegEx as [code]\\d+[/code]. Similarly, [code]compile(\"\\\"(?:\\\\\\"
"\\.|[^\\\"])*\\\"\")[/code] would be read as [code]\"(?:\\\\.|[^\"])*\"[/"
"code].\n"
-"Using [method search] you can find the pattern within the given text. If a "
+"Using [method search], you can find the pattern within the given text. If a "
"pattern is found, [RegExMatch] is returned and you can retrieve details of "
-"the results using functions such as [method RegExMatch.get_string] and "
-"[method RegExMatch.get_start].\n"
+"the results using methods such as [method RegExMatch.get_string] and [method "
+"RegExMatch.get_start].\n"
"[codeblock]\n"
"var regex = RegEx.new()\n"
"regex.compile(\"\\\\w-(\\\\d+)\")\n"
@@ -41298,7 +41983,7 @@ msgid ""
" print(result.get_string()) # Would print n-0123\n"
"[/codeblock]\n"
"The results of capturing groups [code]()[/code] can be retrieved by passing "
-"the group number to the various functions in [RegExMatch]. Group 0 is the "
+"the group number to the various methods in [RegExMatch]. Group 0 is the "
"default and will always refer to the entire pattern. In the above example, "
"calling [code]result.get_string(1)[/code] would give you [code]0123[/code].\n"
"This version of RegEx also supports named capturing groups, and the names "
@@ -41319,6 +42004,15 @@ msgid ""
" print(result.get_string(\"digit\"))\n"
"# Would print 01 03 0 3f 42\n"
"[/codeblock]\n"
+"[b]Example of splitting a string using a RegEx:[/b]\n"
+"[codeblock]\n"
+"var regex = RegEx.new()\n"
+"regex.compile(\"\\\\S+\") # Negated whitespace character class.\n"
+"var results = []\n"
+"for match in regex.search_all(\"One Two \\n\\tThree\"):\n"
+" results.push_back(match.get_string())\n"
+"# The `results` array now contains \"One\", \"Two\", \"Three\".\n"
+"[/codeblock]\n"
"[b]Note:[/b] Godot's regex implementation is based on the [url=https://www."
"pcre.org/]PCRE2[/url] library. You can view the full pattern reference "
"[url=https://www.pcre.org/current/doc/html/pcre2pattern.html]here[/url].\n"
@@ -41326,38 +42020,38 @@ msgid ""
"regular expressions online."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:47
+#: modules/regex/doc_classes/RegEx.xml:56
msgid ""
"This method resets the state of the object, as if it was freshly created. "
"Namely, it unassigns the regular expression of this object."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:56
+#: modules/regex/doc_classes/RegEx.xml:65
msgid ""
"Compiles and assign the search pattern to use. Returns [constant OK] if the "
"compilation is successful. If an error is encountered, details are printed "
"to standard output and an error is returned."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:63
+#: modules/regex/doc_classes/RegEx.xml:72
msgid "Returns the number of capturing groups in compiled pattern."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:70
+#: modules/regex/doc_classes/RegEx.xml:79
msgid ""
"Returns an array of names of named capturing groups in the compiled pattern. "
"They are ordered by appearance."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:77
+#: modules/regex/doc_classes/RegEx.xml:86
msgid "Returns the original search pattern that was compiled."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:84
+#: modules/regex/doc_classes/RegEx.xml:93
msgid "Returns whether this object has a valid search pattern assigned."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:97
+#: modules/regex/doc_classes/RegEx.xml:106
msgid ""
"Searches the text for the compiled pattern. Returns a [RegExMatch] container "
"of the first matching result if found, otherwise [code]null[/code]. The "
@@ -41365,7 +42059,7 @@ msgid ""
"and end anchor would be."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:110
+#: modules/regex/doc_classes/RegEx.xml:119
msgid ""
"Searches the text for the compiled pattern. Returns an array of [RegExMatch] "
"containers for each non-overlapping result. If no results were found, an "
@@ -41373,7 +42067,7 @@ msgid ""
"specified without modifying where the start and end anchor would be."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:127
+#: modules/regex/doc_classes/RegEx.xml:136
msgid ""
"Searches the text for the compiled pattern and replaces it with the "
"specified string. Escapes and backreferences such as [code]$1[/code] and "
@@ -42100,7 +42794,7 @@ msgid ""
msgstr ""
#: doc/classes/RenderingServer.xml:1222 doc/classes/RenderingServer.xml:1250
-#: doc/classes/RenderingServer.xml:1527
+#: doc/classes/RenderingServer.xml:1537
msgid "Not implemented in Godot 3.x."
msgstr ""
@@ -42247,30 +42941,30 @@ msgid ""
"OmniLight3D.omni_shadow_mode]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1481
+#: doc/classes/RenderingServer.xml:1491
msgid ""
"Sets the color of the light. Equivalent to [member Light3D.light_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1492
+#: doc/classes/RenderingServer.xml:1502
msgid ""
"Sets the cull mask for this Light3D. Lights only affect objects in the "
"selected layers. Equivalent to [member Light3D.light_cull_mask]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1503
+#: doc/classes/RenderingServer.xml:1513
msgid ""
"If [code]true[/code], light will subtract light instead of adding light. "
"Equivalent to [member Light3D.light_negative]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1516
+#: doc/classes/RenderingServer.xml:1526
msgid ""
"Sets the specified light parameter. See [enum LightParam] for options. "
"Equivalent to [method Light3D.set_param]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1538
+#: doc/classes/RenderingServer.xml:1548
msgid ""
"If [code]true[/code], reverses the backface culling of the mesh. This can be "
"useful when you have a flat mesh that has a light behind it. If you need to "
@@ -42279,29 +42973,25 @@ msgid ""
"to [member Light3D.shadow_reverse_cull_face]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1549
+#: doc/classes/RenderingServer.xml:1559
msgid ""
"If [code]true[/code], light will cast shadows. Equivalent to [member Light3D."
"shadow_enabled]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1560
+#: doc/classes/RenderingServer.xml:1570
msgid ""
"Sets the color of the shadow cast by the light. Equivalent to [member "
"Light3D.shadow_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1571
-msgid "Sets whether GI probes capture light information from this light."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:1584
+#: doc/classes/RenderingServer.xml:1583
msgid ""
"Returns a mesh of a sphere with the given amount of horizontal and vertical "
"subdivisions."
msgstr ""
-#: doc/classes/RenderingServer.xml:1591
+#: doc/classes/RenderingServer.xml:1590
msgid ""
"Creates an empty material and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42310,31 +43000,31 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:1603
+#: doc/classes/RenderingServer.xml:1602
msgid "Returns the value of a certain material's parameter."
msgstr ""
-#: doc/classes/RenderingServer.xml:1614
+#: doc/classes/RenderingServer.xml:1613
msgid "Sets an object's next material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1627
+#: doc/classes/RenderingServer.xml:1626
msgid "Sets a material's parameter."
msgstr ""
-#: doc/classes/RenderingServer.xml:1638
+#: doc/classes/RenderingServer.xml:1637
msgid "Sets a material's render priority."
msgstr ""
-#: doc/classes/RenderingServer.xml:1649
+#: doc/classes/RenderingServer.xml:1648
msgid "Sets a shader material's shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:1678
+#: doc/classes/RenderingServer.xml:1677
msgid "Removes all surfaces from a mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1685
+#: doc/classes/RenderingServer.xml:1684
msgid ""
"Creates a new mesh and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all [code]mesh_*[/"
@@ -42345,58 +43035,58 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:1696
+#: doc/classes/RenderingServer.xml:1695
msgid "Returns a mesh's blend shape count."
msgstr ""
-#: doc/classes/RenderingServer.xml:1705
+#: doc/classes/RenderingServer.xml:1704
msgid "Returns a mesh's blend shape mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:1714
+#: doc/classes/RenderingServer.xml:1713
msgid "Returns a mesh's custom aabb."
msgstr ""
-#: doc/classes/RenderingServer.xml:1723
+#: doc/classes/RenderingServer.xml:1722
msgid "Returns a mesh's number of surfaces."
msgstr ""
-#: doc/classes/RenderingServer.xml:1734
+#: doc/classes/RenderingServer.xml:1733
msgid "Sets a mesh's blend shape mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:1745
+#: doc/classes/RenderingServer.xml:1744
msgid "Sets a mesh's custom aabb."
msgstr ""
-#: doc/classes/RenderingServer.xml:1756
+#: doc/classes/RenderingServer.xml:1755
msgid "Returns a mesh's surface's buffer arrays."
msgstr ""
-#: doc/classes/RenderingServer.xml:1767
+#: doc/classes/RenderingServer.xml:1766
msgid "Returns a mesh's surface's arrays for blend shapes."
msgstr ""
-#: doc/classes/RenderingServer.xml:1782 doc/classes/RenderingServer.xml:1795
+#: doc/classes/RenderingServer.xml:1781 doc/classes/RenderingServer.xml:1794
msgid "Function is unused in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:1806
+#: doc/classes/RenderingServer.xml:1805
msgid "Returns a mesh's surface's material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1819
+#: doc/classes/RenderingServer.xml:1818
msgid "Sets a mesh's surface's material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1834
+#: doc/classes/RenderingServer.xml:1833
msgid ""
"Updates a specific region of a vertex buffer for the specified surface. "
"Warning: this function alters the vertex buffer directly with no safety "
"mechanisms, you can easily corrupt your mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1857
+#: doc/classes/RenderingServer.xml:1856
msgid ""
"Creates a new multimesh on the RenderingServer and returns an [RID] handle. "
"This RID will be used in all [code]multimesh_*[/code] RenderingServer "
@@ -42407,82 +43097,82 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:1868
+#: doc/classes/RenderingServer.xml:1867
msgid ""
"Calculates and returns the axis-aligned bounding box that encloses all "
"instances within the multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1885
+#: doc/classes/RenderingServer.xml:1884
msgid "Returns the number of instances allocated for this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1894
+#: doc/classes/RenderingServer.xml:1893
msgid ""
"Returns the RID of the mesh that will be used in drawing this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1903
+#: doc/classes/RenderingServer.xml:1902
msgid "Returns the number of visible instances for this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1914
+#: doc/classes/RenderingServer.xml:1913
msgid "Returns the color by which the specified instance will be modulated."
msgstr ""
-#: doc/classes/RenderingServer.xml:1925
+#: doc/classes/RenderingServer.xml:1924
msgid "Returns the custom data associated with the specified instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:1936
+#: doc/classes/RenderingServer.xml:1935
msgid "Returns the [Transform] of the specified instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:1947
+#: doc/classes/RenderingServer.xml:1946
msgid ""
"Returns the [Transform2D] of the specified instance. For use when the "
"multimesh is set to use 2D transforms."
msgstr ""
-#: doc/classes/RenderingServer.xml:1960
+#: doc/classes/RenderingServer.xml:1959
msgid ""
"Sets the color by which this instance will be modulated. Equivalent to "
"[method MultiMesh.set_instance_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1973
+#: doc/classes/RenderingServer.xml:1972
msgid ""
"Sets the custom data for this instance. Custom data is passed as a [Color], "
"but is interpreted as a [code]vec4[/code] in the shader. Equivalent to "
"[method MultiMesh.set_instance_custom_data]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1986
+#: doc/classes/RenderingServer.xml:1985
msgid ""
"Sets the [Transform] for this instance. Equivalent to [method MultiMesh."
"set_instance_transform]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1999
+#: doc/classes/RenderingServer.xml:1998
msgid ""
"Sets the [Transform2D] for this instance. For use when multimesh is used in "
"2D. Equivalent to [method MultiMesh.set_instance_transform_2d]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2020
+#: doc/classes/RenderingServer.xml:2019
msgid ""
"Sets the mesh to be drawn by the multimesh. Equivalent to [member MultiMesh."
"mesh]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2031
+#: doc/classes/RenderingServer.xml:2030
msgid ""
"Sets the number of instances visible at a given time. If -1, all instances "
"that have been allocated are drawn. Equivalent to [member MultiMesh."
"visible_instance_count]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2038
+#: doc/classes/RenderingServer.xml:2037
msgid ""
"Creates a new omni light and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID can be used in most "
@@ -42493,7 +43183,7 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2047
+#: doc/classes/RenderingServer.xml:2046
msgid ""
"Creates a particle system and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42504,23 +43194,23 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2058
+#: doc/classes/RenderingServer.xml:2057
msgid ""
"Calculates and returns the axis-aligned bounding box that contains all the "
"particles. Equivalent to [method GPUParticles3D.capture_aabb]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2067
+#: doc/classes/RenderingServer.xml:2066
msgid "Returns [code]true[/code] if particles are currently set to emitting."
msgstr ""
-#: doc/classes/RenderingServer.xml:2076
+#: doc/classes/RenderingServer.xml:2075
msgid ""
"Returns [code]true[/code] if particles are not emitting and particles are "
"set to inactive."
msgstr ""
-#: doc/classes/RenderingServer.xml:2085
+#: doc/classes/RenderingServer.xml:2084
msgid ""
"Add particle system to list of particle systems that need to be updated. "
"Update will take place on the next frame, or on the next call to [method "
@@ -42528,121 +43218,121 @@ msgid ""
"instances_cull_ray]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2094
+#: doc/classes/RenderingServer.xml:2093
msgid ""
"Reset the particles on the next update. Equivalent to [method GPUParticles3D."
"restart]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2105
+#: doc/classes/RenderingServer.xml:2104
msgid ""
"Sets the number of particles to be drawn and allocates the memory for them. "
"Equivalent to [member GPUParticles3D.amount]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2116
+#: doc/classes/RenderingServer.xml:2115
msgid ""
"Sets a custom axis-aligned bounding box for the particle system. Equivalent "
"to [member GPUParticles3D.visibility_aabb]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2127
+#: doc/classes/RenderingServer.xml:2126
msgid ""
"Sets the draw order of the particles to one of the named enums from [enum "
"ParticlesDrawOrder]. See [enum ParticlesDrawOrder] for options. Equivalent "
"to [member GPUParticles3D.draw_order]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2140
+#: doc/classes/RenderingServer.xml:2139
msgid ""
"Sets the mesh to be used for the specified draw pass. Equivalent to [member "
"GPUParticles3D.draw_pass_1], [member GPUParticles3D.draw_pass_2], [member "
"GPUParticles3D.draw_pass_3], and [member GPUParticles3D.draw_pass_4]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2151
+#: doc/classes/RenderingServer.xml:2150
msgid ""
"Sets the number of draw passes to use. Equivalent to [member GPUParticles3D."
"draw_passes]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2162
+#: doc/classes/RenderingServer.xml:2161
msgid ""
"Sets the [Transform] that will be used by the particles when they first emit."
msgstr ""
-#: doc/classes/RenderingServer.xml:2173
+#: doc/classes/RenderingServer.xml:2172
msgid ""
"If [code]true[/code], particles will emit over time. Setting to false does "
"not reset the particles, but only stops their emission. Equivalent to "
"[member GPUParticles3D.emitting]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2184
+#: doc/classes/RenderingServer.xml:2183
msgid ""
"Sets the explosiveness ratio. Equivalent to [member GPUParticles3D."
"explosiveness]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2195
+#: doc/classes/RenderingServer.xml:2194
msgid ""
"Sets the frame rate that the particle system rendering will be fixed to. "
"Equivalent to [member GPUParticles3D.fixed_fps]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2206
+#: doc/classes/RenderingServer.xml:2205
msgid ""
"If [code]true[/code], uses fractional delta which smooths the movement of "
"the particles. Equivalent to [member GPUParticles3D.fract_delta]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2217
+#: doc/classes/RenderingServer.xml:2216
msgid ""
"Sets the lifetime of each particle in the system. Equivalent to [member "
"GPUParticles3D.lifetime]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2228
+#: doc/classes/RenderingServer.xml:2227
msgid ""
"If [code]true[/code], particles will emit once and then stop. Equivalent to "
"[member GPUParticles3D.one_shot]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2239
+#: doc/classes/RenderingServer.xml:2238
msgid ""
"Sets the preprocess time for the particles animation. This lets you delay "
"starting an animation until after the particles have begun emitting. "
"Equivalent to [member GPUParticles3D.preprocess]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2250
+#: doc/classes/RenderingServer.xml:2249
msgid ""
"Sets the material for processing the particles. Note: this is not the "
"material used to draw the materials. Equivalent to [member GPUParticles3D."
"process_material]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2261
+#: doc/classes/RenderingServer.xml:2260
msgid ""
"Sets the emission randomness ratio. This randomizes the emission of "
"particles within their phase. Equivalent to [member GPUParticles3D."
"randomness]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2272
+#: doc/classes/RenderingServer.xml:2271
msgid ""
"Sets the speed scale of the particle system. Equivalent to [member "
"GPUParticles3D.speed_scale]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2283
+#: doc/classes/RenderingServer.xml:2282
msgid ""
"If [code]true[/code], particles use local coordinates. If [code]false[/code] "
"they use global coordinates. Equivalent to [member GPUParticles3D."
"local_coords]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2290
+#: doc/classes/RenderingServer.xml:2289
msgid ""
"Creates a reflection probe and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42653,85 +43343,64 @@ msgid ""
"[method instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2303
+#: doc/classes/RenderingServer.xml:2332
msgid ""
"If [code]true[/code], reflections will ignore sky contribution. Equivalent "
-"to [member ReflectionProbe.interior_enable]."
+"to [member ReflectionProbe.interior]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2314
+#: doc/classes/RenderingServer.xml:2343
msgid ""
"Sets the render cull mask for this reflection probe. Only instances with a "
"matching cull mask will be rendered by this probe. Equivalent to [member "
"ReflectionProbe.cull_mask]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2325
+#: doc/classes/RenderingServer.xml:2354
msgid ""
"If [code]true[/code], uses box projection. This can make reflections look "
"more correct in certain situations. Equivalent to [member ReflectionProbe."
"box_projection]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2336
+#: doc/classes/RenderingServer.xml:2365
msgid ""
"If [code]true[/code], computes shadows in the reflection probe. This makes "
"the reflection much slower to compute. Equivalent to [member ReflectionProbe."
"enable_shadows]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2347
+#: doc/classes/RenderingServer.xml:2376
msgid ""
"Sets the size of the area that the reflection probe will capture. Equivalent "
"to [member ReflectionProbe.extents]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2358
+#: doc/classes/RenderingServer.xml:2387
msgid ""
"Sets the intensity of the reflection probe. Intensity modulates the strength "
"of the reflection. Equivalent to [member ReflectionProbe.intensity]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2369
-msgid ""
-"Sets the ambient light color for this reflection probe when set to interior "
-"mode. Equivalent to [member ReflectionProbe.interior_ambient_color]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2380
-msgid ""
-"Sets the energy multiplier for this reflection probes ambient light "
-"contribution when set to interior mode. Equivalent to [member "
-"ReflectionProbe.interior_ambient_energy]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2391
-msgid ""
-"Sets the contribution value for how much the reflection affects the ambient "
-"light for this reflection probe when set to interior mode. Useful so that "
-"ambient light matches the color of the room. Equivalent to [member "
-"ReflectionProbe.interior_ambient_contrib]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2402
+#: doc/classes/RenderingServer.xml:2398
msgid ""
"Sets the max distance away from the probe an object can be before it is "
"culled. Equivalent to [member ReflectionProbe.max_distance]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2413
+#: doc/classes/RenderingServer.xml:2409
msgid ""
"Sets the origin offset to be used when this reflection probe is in box "
"project mode. Equivalent to [member ReflectionProbe.origin_offset]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2424
+#: doc/classes/RenderingServer.xml:2420
msgid ""
"Sets how often the reflection probe updates. Can either be once or every "
"frame. See [enum ReflectionProbeUpdateMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2437
+#: doc/classes/RenderingServer.xml:2433
msgid ""
"Schedules a callback to the corresponding named [code]method[/code] on "
"[code]where[/code] after a frame has been drawn.\n"
@@ -42739,7 +43408,7 @@ msgid ""
"[code]userdata[/code]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2445
+#: doc/classes/RenderingServer.xml:2441
msgid ""
"Creates a scenario and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all "
@@ -42749,24 +43418,24 @@ msgid ""
"The scenario is the 3D world that all the visual instances exist in."
msgstr ""
-#: doc/classes/RenderingServer.xml:2458
+#: doc/classes/RenderingServer.xml:2454
msgid ""
"Sets the [enum ScenarioDebugMode] for this scenario. See [enum "
"ScenarioDebugMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2469
+#: doc/classes/RenderingServer.xml:2465
msgid "Sets the environment that will be used with this scenario."
msgstr ""
-#: doc/classes/RenderingServer.xml:2480
+#: doc/classes/RenderingServer.xml:2476
msgid ""
"Sets the fallback environment to be used by this scenario. The fallback "
"environment is used if no environment is set. Internally, this is used by "
"the editor to provide a default environment."
msgstr ""
-#: doc/classes/RenderingServer.xml:2495
+#: doc/classes/RenderingServer.xml:2491
msgid ""
"Sets a boot image. The color defines the background color. If [code]scale[/"
"code] is [code]true[/code], the image will be scaled to fit the screen size. "
@@ -42775,19 +43444,19 @@ msgid ""
"the image will be scaled with nearest-neighbor interpolation."
msgstr ""
-#: doc/classes/RenderingServer.xml:2504
+#: doc/classes/RenderingServer.xml:2500
msgid ""
"If [code]true[/code], the engine will generate wireframes for use with the "
"wireframe debug mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:2513
+#: doc/classes/RenderingServer.xml:2509
msgid ""
"Sets the default clear color which is used when a specific clear color has "
"not been selected."
msgstr ""
-#: doc/classes/RenderingServer.xml:2520
+#: doc/classes/RenderingServer.xml:2516
msgid ""
"Creates an empty shader and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42796,47 +43465,47 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2530
+#: doc/classes/RenderingServer.xml:2526
msgid "Returns a shader's code."
msgstr ""
-#: doc/classes/RenderingServer.xml:2541
+#: doc/classes/RenderingServer.xml:2537
msgid "Returns a default texture from a shader searched by name."
msgstr ""
-#: doc/classes/RenderingServer.xml:2560
+#: doc/classes/RenderingServer.xml:2556
msgid "Returns the parameters of a shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:2571
+#: doc/classes/RenderingServer.xml:2567
msgid "Sets a shader's code."
msgstr ""
-#: doc/classes/RenderingServer.xml:2584
+#: doc/classes/RenderingServer.xml:2580
msgid "Sets a shader's default texture. Overwrites the texture given by name."
msgstr ""
-#: doc/classes/RenderingServer.xml:2597
+#: doc/classes/RenderingServer.xml:2593
msgid "Allocates the GPU buffers for this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2608
+#: doc/classes/RenderingServer.xml:2604
msgid "Returns the [Transform] set for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2619
+#: doc/classes/RenderingServer.xml:2615
msgid "Returns the [Transform2D] set for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2632
+#: doc/classes/RenderingServer.xml:2628
msgid "Sets the [Transform] for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2645
+#: doc/classes/RenderingServer.xml:2641
msgid "Sets the [Transform2D] for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2652
+#: doc/classes/RenderingServer.xml:2648
msgid ""
"Creates a skeleton and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all "
@@ -42845,11 +43514,11 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2662
+#: doc/classes/RenderingServer.xml:2658
msgid "Returns the number of bones allocated for this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2669
+#: doc/classes/RenderingServer.xml:2665
msgid ""
"Creates an empty sky and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all [code]sky_*[/"
@@ -42858,13 +43527,13 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2681
+#: doc/classes/RenderingServer.xml:2677
msgid ""
"Sets the material that the sky uses to render the background and reflection "
"maps."
msgstr ""
-#: doc/classes/RenderingServer.xml:2688
+#: doc/classes/RenderingServer.xml:2684
msgid ""
"Creates a spot light and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID can be used in most [code]light_*[/"
@@ -42875,15 +43544,15 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2717
+#: doc/classes/RenderingServer.xml:2713
msgid "Sets a viewport's camera."
msgstr ""
-#: doc/classes/RenderingServer.xml:2728
+#: doc/classes/RenderingServer.xml:2724
msgid "Sets a viewport's canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:2741
+#: doc/classes/RenderingServer.xml:2737
msgid ""
"Copies the viewport to a region of the screen specified by [code]rect[/"
"code]. If [method viewport_set_render_direct_to_screen] is [code]true[/"
@@ -42905,7 +43574,7 @@ msgid ""
"viewport_set_render_direct_to_screen]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2755
+#: doc/classes/RenderingServer.xml:2751
msgid ""
"Creates an empty viewport and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42914,72 +43583,72 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2767
+#: doc/classes/RenderingServer.xml:2763
msgid ""
"Returns a viewport's render information. For options, see the [enum "
"ViewportRenderInfo] constants."
msgstr ""
-#: doc/classes/RenderingServer.xml:2776
+#: doc/classes/RenderingServer.xml:2772
msgid "Returns the viewport's last rendered frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:2787
+#: doc/classes/RenderingServer.xml:2783
msgid "Detaches a viewport from a canvas and vice versa."
msgstr ""
-#: doc/classes/RenderingServer.xml:2798
+#: doc/classes/RenderingServer.xml:2794
msgid "If [code]true[/code], sets the viewport active, else sets it inactive."
msgstr ""
-#: doc/classes/RenderingServer.xml:2813
+#: doc/classes/RenderingServer.xml:2809
msgid ""
"Sets the stacking order for a viewport's canvas.\n"
"[code]layer[/code] is the actual canvas layer, while [code]sublayer[/code] "
"specifies the stacking order of the canvas among those in the same layer."
msgstr ""
-#: doc/classes/RenderingServer.xml:2827
+#: doc/classes/RenderingServer.xml:2823
msgid "Sets the transformation of a viewport's canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:2838
+#: doc/classes/RenderingServer.xml:2834
msgid ""
"Sets the clear mode of a viewport. See [enum ViewportClearMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2849
+#: doc/classes/RenderingServer.xml:2845
msgid ""
"Sets the debug draw mode of a viewport. See [enum ViewportDebugDraw] for "
"options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2860
+#: doc/classes/RenderingServer.xml:2856
msgid ""
"If [code]true[/code], rendering of a viewport's environment is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:2871
+#: doc/classes/RenderingServer.xml:2867
msgid "Sets the viewport's global transformation matrix."
msgstr ""
-#: doc/classes/RenderingServer.xml:2882
+#: doc/classes/RenderingServer.xml:2878
msgid "If [code]true[/code], the viewport's canvas is not rendered."
msgstr ""
-#: doc/classes/RenderingServer.xml:2893
+#: doc/classes/RenderingServer.xml:2889
msgid "Currently unimplemented in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:2904
+#: doc/classes/RenderingServer.xml:2900
msgid "Sets the anti-aliasing mode. See [enum ViewportMSAA] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2915
+#: doc/classes/RenderingServer.xml:2911
msgid "Sets the viewport's parent to another viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:2926
+#: doc/classes/RenderingServer.xml:2922
msgid ""
"If [code]true[/code], render the contents of the viewport directly to "
"screen. This allows a low-level optimization where you can skip drawing a "
@@ -42995,455 +43664,455 @@ msgid ""
"significantly larger than the window size."
msgstr ""
-#: doc/classes/RenderingServer.xml:2937
+#: doc/classes/RenderingServer.xml:2933
msgid ""
"Sets a viewport's scenario.\n"
"The scenario contains information about the [enum ScenarioDebugMode], "
"environment information, reflection atlas etc."
msgstr ""
-#: doc/classes/RenderingServer.xml:2951
+#: doc/classes/RenderingServer.xml:2947
msgid "Sets the shadow atlas quadrant's subdivision."
msgstr ""
-#: doc/classes/RenderingServer.xml:2962
+#: doc/classes/RenderingServer.xml:2958
msgid ""
"Sets the size of the shadow atlas's images (used for omni and spot lights). "
"The value will be rounded up to the nearest power of 2."
msgstr ""
-#: doc/classes/RenderingServer.xml:2975
+#: doc/classes/RenderingServer.xml:2971
msgid "Sets the viewport's width and height."
msgstr ""
-#: doc/classes/RenderingServer.xml:2986
+#: doc/classes/RenderingServer.xml:2982
msgid ""
"If [code]true[/code], the viewport renders its background as transparent."
msgstr ""
-#: doc/classes/RenderingServer.xml:2997
+#: doc/classes/RenderingServer.xml:2993
msgid ""
"Sets when the viewport should be updated. See [enum ViewportUpdateMode] "
"constants for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:3008
+#: doc/classes/RenderingServer.xml:3004
msgid ""
"If [code]true[/code], the viewport uses augmented or virtual reality "
"technologies. See [XRInterface]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3014
+#: doc/classes/RenderingServer.xml:3010
msgid ""
"If [code]false[/code], disables rendering completely, but the engine logic "
"is still being processed. You can call [method force_draw] to draw a frame "
"even with rendering disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3020
+#: doc/classes/RenderingServer.xml:3016
msgid ""
"Emitted at the end of the frame, after the RenderingServer has finished "
"updating all the Viewports."
msgstr ""
-#: doc/classes/RenderingServer.xml:3025
+#: doc/classes/RenderingServer.xml:3021
msgid ""
"Emitted at the beginning of the frame, before the RenderingServer updates "
"all the Viewports."
msgstr ""
-#: doc/classes/RenderingServer.xml:3031
+#: doc/classes/RenderingServer.xml:3027
msgid "Marks an error that shows that the index array is empty."
msgstr ""
-#: doc/classes/RenderingServer.xml:3034
+#: doc/classes/RenderingServer.xml:3030
msgid "Number of weights/bones per vertex."
msgstr ""
-#: doc/classes/RenderingServer.xml:3037
+#: doc/classes/RenderingServer.xml:3033
msgid "The minimum Z-layer for canvas items."
msgstr ""
-#: doc/classes/RenderingServer.xml:3040
+#: doc/classes/RenderingServer.xml:3036
msgid "The maximum Z-layer for canvas items."
msgstr ""
-#: doc/classes/RenderingServer.xml:3043
+#: doc/classes/RenderingServer.xml:3039
msgid ""
"Max number of glow levels that can be used with glow post-process effect."
msgstr ""
-#: doc/classes/RenderingServer.xml:3046
+#: doc/classes/RenderingServer.xml:3042
msgid "Unused enum in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:3067
+#: doc/classes/RenderingServer.xml:3063
msgid "Shader is a 3D shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3070
+#: doc/classes/RenderingServer.xml:3066
msgid "Shader is a 2D shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3073
+#: doc/classes/RenderingServer.xml:3069
msgid "Shader is a particle shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3076
+#: doc/classes/RenderingServer.xml:3072
msgid "Shader is a sky shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3079
+#: doc/classes/RenderingServer.xml:3075
msgid "Represents the size of the [enum ShaderMode] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3082
+#: doc/classes/RenderingServer.xml:3078
msgid "The minimum renderpriority of all materials."
msgstr ""
-#: doc/classes/RenderingServer.xml:3085
+#: doc/classes/RenderingServer.xml:3081
msgid "The maximum renderpriority of all materials."
msgstr ""
-#: doc/classes/RenderingServer.xml:3088
+#: doc/classes/RenderingServer.xml:3084
msgid "Array is a vertex array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3091
+#: doc/classes/RenderingServer.xml:3087
msgid "Array is a normal array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3094
+#: doc/classes/RenderingServer.xml:3090
msgid "Array is a tangent array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3097
+#: doc/classes/RenderingServer.xml:3093
msgid "Array is a color array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3100
+#: doc/classes/RenderingServer.xml:3096
msgid "Array is an UV coordinates array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3103
+#: doc/classes/RenderingServer.xml:3099
msgid "Array is an UV coordinates array for the second UV coordinates."
msgstr ""
-#: doc/classes/RenderingServer.xml:3106
+#: doc/classes/RenderingServer.xml:3102
msgid "Array contains bone information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3109
+#: doc/classes/RenderingServer.xml:3105
msgid "Array is weight information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3112
+#: doc/classes/RenderingServer.xml:3108
msgid "Array is index array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3118
+#: doc/classes/RenderingServer.xml:3114
msgid "Flag used to mark a vertex array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3121
+#: doc/classes/RenderingServer.xml:3117
msgid "Flag used to mark a normal array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3124
+#: doc/classes/RenderingServer.xml:3120
msgid "Flag used to mark a tangent array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3127
+#: doc/classes/RenderingServer.xml:3123
msgid "Flag used to mark a color array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3130
+#: doc/classes/RenderingServer.xml:3126
msgid "Flag used to mark an UV coordinates array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3133
+#: doc/classes/RenderingServer.xml:3129
msgid ""
"Flag used to mark an UV coordinates array for the second UV coordinates."
msgstr ""
-#: doc/classes/RenderingServer.xml:3136
+#: doc/classes/RenderingServer.xml:3132
msgid "Flag used to mark a bone information array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3139
+#: doc/classes/RenderingServer.xml:3135
msgid "Flag used to mark a weights array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3142
+#: doc/classes/RenderingServer.xml:3138
msgid "Flag used to mark an index array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3171
+#: doc/classes/RenderingServer.xml:3167
msgid "Primitive to draw consists of points."
msgstr ""
-#: doc/classes/RenderingServer.xml:3174
+#: doc/classes/RenderingServer.xml:3170
msgid "Primitive to draw consists of lines."
msgstr ""
-#: doc/classes/RenderingServer.xml:3177
+#: doc/classes/RenderingServer.xml:3173
msgid "Primitive to draw consists of a line strip from start to end."
msgstr ""
-#: doc/classes/RenderingServer.xml:3180
+#: doc/classes/RenderingServer.xml:3176
msgid "Primitive to draw consists of triangles."
msgstr ""
-#: doc/classes/RenderingServer.xml:3183
+#: doc/classes/RenderingServer.xml:3179
msgid ""
"Primitive to draw consists of a triangle strip (the last 3 vertices are "
"always combined to make a triangle)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3186
+#: doc/classes/RenderingServer.xml:3182
msgid "Represents the size of the [enum PrimitiveType] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3195
+#: doc/classes/RenderingServer.xml:3191
msgid "Use [Transform2D] to store MultiMesh transform."
msgstr ""
-#: doc/classes/RenderingServer.xml:3198
+#: doc/classes/RenderingServer.xml:3194
msgid "Use [Transform] to store MultiMesh transform."
msgstr ""
-#: doc/classes/RenderingServer.xml:3201
+#: doc/classes/RenderingServer.xml:3197
msgid "Is a directional (sun) light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3204
+#: doc/classes/RenderingServer.xml:3200
msgid "Is an omni light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3207
+#: doc/classes/RenderingServer.xml:3203
msgid "Is a spot light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3210
+#: doc/classes/RenderingServer.xml:3206
msgid "The light's energy."
msgstr ""
-#: doc/classes/RenderingServer.xml:3215
+#: doc/classes/RenderingServer.xml:3211
msgid "The light's influence on specularity."
msgstr ""
-#: doc/classes/RenderingServer.xml:3218
+#: doc/classes/RenderingServer.xml:3214
msgid "The light's range."
msgstr ""
-#: doc/classes/RenderingServer.xml:3221
+#: doc/classes/RenderingServer.xml:3217
msgid ""
"The size of the light when using spot light or omni light. The angular size "
"of the light when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3224
+#: doc/classes/RenderingServer.xml:3220
msgid "The light's attenuation."
msgstr ""
-#: doc/classes/RenderingServer.xml:3227
+#: doc/classes/RenderingServer.xml:3223
msgid "The spotlight's angle."
msgstr ""
-#: doc/classes/RenderingServer.xml:3230
+#: doc/classes/RenderingServer.xml:3226
msgid "The spotlight's attenuation."
msgstr ""
-#: doc/classes/RenderingServer.xml:3233
+#: doc/classes/RenderingServer.xml:3229
msgid "Max distance that shadows will be rendered."
msgstr ""
-#: doc/classes/RenderingServer.xml:3236
+#: doc/classes/RenderingServer.xml:3232
msgid "Proportion of shadow atlas occupied by the first split."
msgstr ""
-#: doc/classes/RenderingServer.xml:3239
+#: doc/classes/RenderingServer.xml:3235
msgid "Proportion of shadow atlas occupied by the second split."
msgstr ""
-#: doc/classes/RenderingServer.xml:3242
+#: doc/classes/RenderingServer.xml:3238
msgid ""
"Proportion of shadow atlas occupied by the third split. The fourth split "
"occupies the rest."
msgstr ""
-#: doc/classes/RenderingServer.xml:3245
+#: doc/classes/RenderingServer.xml:3241
msgid ""
"Proportion of shadow max distance where the shadow will start to fade out."
msgstr ""
-#: doc/classes/RenderingServer.xml:3248
+#: doc/classes/RenderingServer.xml:3244
msgid ""
"Normal bias used to offset shadow lookup by object normal. Can be used to "
"fix self-shadowing artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3251
+#: doc/classes/RenderingServer.xml:3247
msgid "Bias the shadow lookup to fix self-shadowing artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3257
+#: doc/classes/RenderingServer.xml:3253
msgid ""
"Blurs the edges of the shadow. Can be used to hide pixel artifacts in low "
"resolution shadow maps. A high value can make shadows appear grainy and can "
"cause other unwanted artifacts. Try to keep as near default as possible."
msgstr ""
-#: doc/classes/RenderingServer.xml:3262
+#: doc/classes/RenderingServer.xml:3258
msgid "Represents the size of the [enum LightParam] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3265
+#: doc/classes/RenderingServer.xml:3267
msgid "Use a dual paraboloid shadow map for omni lights."
msgstr ""
-#: doc/classes/RenderingServer.xml:3268
+#: doc/classes/RenderingServer.xml:3270
msgid ""
"Use a cubemap shadow map for omni lights. Slower but better quality than "
"dual paraboloid."
msgstr ""
-#: doc/classes/RenderingServer.xml:3271
+#: doc/classes/RenderingServer.xml:3273
msgid "Use orthogonal shadow projection for directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3274
+#: doc/classes/RenderingServer.xml:3276
msgid "Use 2 splits for shadow projection when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3277
+#: doc/classes/RenderingServer.xml:3279
msgid "Use 4 splits for shadow projection when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3280
+#: doc/classes/RenderingServer.xml:3282
msgid ""
"Keeps shadows stable as camera moves but has lower effective resolution."
msgstr ""
-#: doc/classes/RenderingServer.xml:3283
+#: doc/classes/RenderingServer.xml:3285
msgid ""
"Optimize use of shadow maps, increasing the effective resolution. But may "
"result in shadows moving or flickering slightly."
msgstr ""
-#: doc/classes/RenderingServer.xml:3286
+#: doc/classes/RenderingServer.xml:3288
msgid "Reflection probe will update reflections once and then stop."
msgstr ""
-#: doc/classes/RenderingServer.xml:3289
+#: doc/classes/RenderingServer.xml:3291
msgid ""
"Reflection probe will update each frame. This mode is necessary to capture "
"moving objects."
msgstr ""
-#: doc/classes/RenderingServer.xml:3302
+#: doc/classes/RenderingServer.xml:3310
msgid "Draw particles in the order that they appear in the particles array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3305
+#: doc/classes/RenderingServer.xml:3313
msgid "Sort particles based on their lifetime."
msgstr ""
-#: doc/classes/RenderingServer.xml:3308
+#: doc/classes/RenderingServer.xml:3316
msgid "Sort particles based on their distance to the camera."
msgstr ""
-#: doc/classes/RenderingServer.xml:3311
+#: doc/classes/RenderingServer.xml:3319
msgid "Do not update the viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:3314
+#: doc/classes/RenderingServer.xml:3322
msgid "Update the viewport once then set to disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3317
+#: doc/classes/RenderingServer.xml:3325
msgid "Update the viewport whenever it is visible."
msgstr ""
-#: doc/classes/RenderingServer.xml:3322
+#: doc/classes/RenderingServer.xml:3330
msgid "Always update the viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:3325
+#: doc/classes/RenderingServer.xml:3333
msgid "The viewport is always cleared before drawing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3328
+#: doc/classes/RenderingServer.xml:3336
msgid "The viewport is never cleared before drawing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3331
+#: doc/classes/RenderingServer.xml:3339
msgid ""
"The viewport is cleared once, then the clear mode is set to [constant "
"VIEWPORT_CLEAR_NEVER]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3334
+#: doc/classes/RenderingServer.xml:3342
msgid "Multisample antialiasing is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3337
+#: doc/classes/RenderingServer.xml:3345
msgid "Multisample antialiasing uses 2 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3340
+#: doc/classes/RenderingServer.xml:3348
msgid "Multisample antialiasing uses 4 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3343
+#: doc/classes/RenderingServer.xml:3351
msgid "Multisample antialiasing uses 8 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3346
+#: doc/classes/RenderingServer.xml:3354
msgid "Multisample antialiasing uses 16 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3357
+#: doc/classes/RenderingServer.xml:3365
msgid "Number of objects drawn in a single frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3360
+#: doc/classes/RenderingServer.xml:3368
msgid "Number of vertices drawn in a single frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3363
+#: doc/classes/RenderingServer.xml:3371
msgid "Number of material changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3366
+#: doc/classes/RenderingServer.xml:3374
msgid "Number of shader changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3369
+#: doc/classes/RenderingServer.xml:3377
msgid "Number of surface changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3372
+#: doc/classes/RenderingServer.xml:3380
msgid "Number of draw calls during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3375
+#: doc/classes/RenderingServer.xml:3383
msgid "Represents the size of the [enum ViewportRenderInfo] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3378
+#: doc/classes/RenderingServer.xml:3386
msgid "Debug draw is disabled. Default setting."
msgstr ""
-#: doc/classes/RenderingServer.xml:3381 doc/classes/Viewport.xml:348
+#: doc/classes/RenderingServer.xml:3389 doc/classes/Viewport.xml:348
msgid "Objects are displayed without light information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3384
+#: doc/classes/RenderingServer.xml:3392
msgid "Objects are displayed with only light information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3387 doc/classes/Viewport.xml:353
+#: doc/classes/RenderingServer.xml:3395 doc/classes/Viewport.xml:353
msgid ""
"Objects are displayed semi-transparent with additive blending so you can see "
"where they are drawing over top of one another. A higher overdraw means you "
@@ -43451,41 +44120,41 @@ msgid ""
"others."
msgstr ""
-#: doc/classes/RenderingServer.xml:3390
+#: doc/classes/RenderingServer.xml:3398
msgid "Debug draw draws objects in wireframe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3393
+#: doc/classes/RenderingServer.xml:3401
msgid ""
"Normal buffer is drawn instead of regular scene so you can see the per-pixel "
"normals that will be used by post-processing effects."
msgstr ""
-#: doc/classes/RenderingServer.xml:3396 doc/classes/Viewport.xml:361
+#: doc/classes/RenderingServer.xml:3404 doc/classes/Viewport.xml:361
msgid "Objects are displayed with only the albedo value from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3399 doc/classes/Viewport.xml:364
+#: doc/classes/RenderingServer.xml:3407 doc/classes/Viewport.xml:364
msgid "Objects are displayed with only the lighting value from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3402 doc/classes/Viewport.xml:367
+#: doc/classes/RenderingServer.xml:3410 doc/classes/Viewport.xml:367
msgid "Objects are displayed with only the emission color from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3405 doc/classes/Viewport.xml:370
+#: doc/classes/RenderingServer.xml:3413 doc/classes/Viewport.xml:370
msgid ""
"Draws the shadow atlas that stores shadows from [OmniLight3D]s and "
"[SpotLight3D]s in the upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3408 doc/classes/Viewport.xml:373
+#: doc/classes/RenderingServer.xml:3416 doc/classes/Viewport.xml:373
msgid ""
"Draws the shadow atlas that stores shadows from [DirectionalLight3D]s in the "
"upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3413
+#: doc/classes/RenderingServer.xml:3421
msgid ""
"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 "
@@ -43493,21 +44162,14 @@ msgid ""
"your [WorldEnvironment]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3416 doc/classes/Viewport.xml:381
-msgid ""
-"Draws the roughness limiter post process over the Viewport so you can see "
-"where it has an effect. It must be enabled in [member ProjectSettings."
-"rendering/quality/screen_filters/screen_space_roughness_limiter] to work."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:3419
+#: doc/classes/RenderingServer.xml:3424
msgid ""
"Colors each PSSM split for the [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."
msgstr ""
-#: doc/classes/RenderingServer.xml:3424
+#: doc/classes/RenderingServer.xml:3435
msgid ""
"Uses high quality importance sampling to process the radiance map. In "
"general, this results in much higher quality than [constant Sky."
@@ -43518,7 +44180,7 @@ msgid ""
"ggx_samples]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3427
+#: doc/classes/RenderingServer.xml:3438
msgid ""
"Uses the fast filtering algorithm to process the radiance map. In general "
"this results in lower quality, but substantially faster run times.\n"
@@ -43526,347 +44188,347 @@ msgid ""
"[member Sky.radiance_size] must be set to [constant Sky.RADIANCE_SIZE_256]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3431
+#: doc/classes/RenderingServer.xml:3442
msgid "Use the clear color as background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3434
+#: doc/classes/RenderingServer.xml:3445
msgid "Use a specified color as the background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3437
+#: doc/classes/RenderingServer.xml:3448
msgid "Use a sky resource for the background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3440
+#: doc/classes/RenderingServer.xml:3451
msgid ""
"Use a specified canvas layer as the background. This can be useful for "
"instantiating a 2D scene in a 3D world."
msgstr ""
-#: doc/classes/RenderingServer.xml:3443
+#: doc/classes/RenderingServer.xml:3454
msgid ""
"Do not clear the background, use whatever was rendered last frame as the "
"background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3449
+#: doc/classes/RenderingServer.xml:3460
msgid "Represents the size of the [enum EnvironmentBG] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3488
+#: doc/classes/RenderingServer.xml:3499
msgid "Output color as they came in."
msgstr ""
-#: doc/classes/RenderingServer.xml:3491
+#: doc/classes/RenderingServer.xml:3502
msgid "Use the Reinhard tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3494
+#: doc/classes/RenderingServer.xml:3505
msgid "Use the filmic tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3497
+#: doc/classes/RenderingServer.xml:3508
msgid "Use the ACES tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3508
+#: doc/classes/RenderingServer.xml:3519
msgid "Disables the blur set for SSAO. Will make SSAO look noisier."
msgstr ""
-#: doc/classes/RenderingServer.xml:3511
+#: doc/classes/RenderingServer.xml:3522
msgid "Perform a 1x1 blur on the SSAO output."
msgstr ""
-#: doc/classes/RenderingServer.xml:3514
+#: doc/classes/RenderingServer.xml:3525
msgid "Performs a 2x2 blur on the SSAO output."
msgstr ""
-#: doc/classes/RenderingServer.xml:3517
+#: doc/classes/RenderingServer.xml:3528
msgid "Performs a 3x3 blur on the SSAO output. Use this for smoothest SSAO."
msgstr ""
-#: doc/classes/RenderingServer.xml:3520
+#: doc/classes/RenderingServer.xml:3531
msgid "Lowest quality of screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3523
+#: doc/classes/RenderingServer.xml:3534
msgid "Medium quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3526
+#: doc/classes/RenderingServer.xml:3537
msgid "High quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3529
+#: doc/classes/RenderingServer.xml:3540
msgid "Highest quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3540
+#: doc/classes/RenderingServer.xml:3551
msgid ""
"Lowest quality DOF blur. This is the fastest setting, but you may be able to "
"see filtering artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3543
+#: doc/classes/RenderingServer.xml:3554
msgid "Low quality DOF blur."
msgstr ""
-#: doc/classes/RenderingServer.xml:3546
+#: doc/classes/RenderingServer.xml:3557
msgid "Medium quality DOF blur."
msgstr ""
-#: doc/classes/RenderingServer.xml:3549
+#: doc/classes/RenderingServer.xml:3560
msgid ""
"Highest quality DOF blur. Results in the smoothest looking blur by taking "
"the most samples, but is also significantly slower."
msgstr ""
-#: doc/classes/RenderingServer.xml:3552
+#: doc/classes/RenderingServer.xml:3563
msgid ""
"Calculate the DOF blur using a box filter. The fastest option, but results "
"in obvious lines in blur pattern."
msgstr ""
-#: doc/classes/RenderingServer.xml:3555
+#: doc/classes/RenderingServer.xml:3566
msgid "Calculates DOF blur using a hexagon shaped filter."
msgstr ""
-#: doc/classes/RenderingServer.xml:3558
+#: doc/classes/RenderingServer.xml:3569
msgid ""
"Calculates DOF blur using a circle shaped filter. Best quality and most "
"realistic, but slowest. Use only for areas where a lot of performance can be "
"dedicated to post-processing (e.g. cutscenes)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3573
+#: doc/classes/RenderingServer.xml:3584
msgid "Do not use a debug mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:3576
+#: doc/classes/RenderingServer.xml:3587
msgid "Draw all objects as wireframe models."
msgstr ""
-#: doc/classes/RenderingServer.xml:3579
+#: doc/classes/RenderingServer.xml:3590
msgid ""
"Draw all objects in a way that displays how much overdraw is occurring. "
"Overdraw occurs when a section of pixels is drawn and shaded and then "
"another object covers it up. To optimize a scene, you should reduce overdraw."
msgstr ""
-#: doc/classes/RenderingServer.xml:3582
+#: doc/classes/RenderingServer.xml:3593
msgid ""
"Draw all objects without shading. Equivalent to setting all objects shaders "
"to [code]unshaded[/code]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3585
+#: doc/classes/RenderingServer.xml:3596
msgid "The instance does not have a type."
msgstr ""
-#: doc/classes/RenderingServer.xml:3588
+#: doc/classes/RenderingServer.xml:3599
msgid "The instance is a mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:3591
+#: doc/classes/RenderingServer.xml:3602
msgid "The instance is a multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:3594
+#: doc/classes/RenderingServer.xml:3605
msgid "The instance is an immediate geometry."
msgstr ""
-#: doc/classes/RenderingServer.xml:3597
+#: doc/classes/RenderingServer.xml:3608
msgid "The instance is a particle emitter."
msgstr ""
-#: doc/classes/RenderingServer.xml:3600
+#: doc/classes/RenderingServer.xml:3611
msgid "The instance is a light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3603
+#: doc/classes/RenderingServer.xml:3614
msgid "The instance is a reflection probe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3606
+#: doc/classes/RenderingServer.xml:3617
msgid "The instance is a decal."
msgstr ""
-#: doc/classes/RenderingServer.xml:3609
+#: doc/classes/RenderingServer.xml:3620
msgid "The instance is a GI probe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3612
+#: doc/classes/RenderingServer.xml:3623
msgid "The instance is a lightmap."
msgstr ""
-#: doc/classes/RenderingServer.xml:3615
+#: doc/classes/RenderingServer.xml:3626
msgid "Represents the size of the [enum InstanceType] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3618
+#: doc/classes/RenderingServer.xml:3629
msgid ""
"A combination of the flags of geometry instances (mesh, multimesh, immediate "
"and particles)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3621
+#: doc/classes/RenderingServer.xml:3632
msgid "Allows the instance to be used in baked lighting."
msgstr ""
-#: doc/classes/RenderingServer.xml:3624
+#: doc/classes/RenderingServer.xml:3635
msgid "Allows the instance to be used with dynamic global illumination."
msgstr ""
-#: doc/classes/RenderingServer.xml:3627
+#: doc/classes/RenderingServer.xml:3638
msgid "When set, manually requests to draw geometry on next frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3630
+#: doc/classes/RenderingServer.xml:3641
msgid "Represents the size of the [enum InstanceFlags] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3633
+#: doc/classes/RenderingServer.xml:3644
msgid "Disable shadows from this instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:3636
+#: doc/classes/RenderingServer.xml:3647
msgid "Cast shadows from this instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:3639
+#: doc/classes/RenderingServer.xml:3650
msgid ""
"Disable backface culling when rendering the shadow of the object. This is "
"slightly slower but may result in more correct shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3642
+#: doc/classes/RenderingServer.xml:3653
msgid ""
"Only render the shadows from the object. The object itself will not be drawn."
msgstr ""
-#: doc/classes/RenderingServer.xml:3645
+#: doc/classes/RenderingServer.xml:3656
msgid "The nine patch gets stretched where needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3648
+#: doc/classes/RenderingServer.xml:3659
msgid "The nine patch gets filled with tiles where needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3651
+#: doc/classes/RenderingServer.xml:3662
msgid ""
"The nine patch gets filled with tiles where needed and stretches them a bit "
"if needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3654
+#: doc/classes/RenderingServer.xml:3665
msgid "Uses the default filter mode for this [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3666 doc/classes/Viewport.xml:399
+#: doc/classes/RenderingServer.xml:3677 doc/classes/Viewport.xml:402
msgid ""
"The texture filter blends between the nearest 4 pixels and between the "
"nearest 2 mipmaps."
msgstr ""
-#: doc/classes/RenderingServer.xml:3675
+#: doc/classes/RenderingServer.xml:3686
msgid "Max value for [enum CanvasItemTextureFilter] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3678
+#: doc/classes/RenderingServer.xml:3689
msgid "Uses the default repeat mode for this [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3681 doc/classes/Viewport.xml:405
+#: doc/classes/RenderingServer.xml:3692 doc/classes/Viewport.xml:408
msgid ""
"Disables textures repeating. Instead, when reading UVs outside the 0-1 "
"range, the value will be clamped to the edge of the texture, resulting in a "
"stretched out look at the borders of the texture."
msgstr ""
-#: doc/classes/RenderingServer.xml:3687 doc/classes/Viewport.xml:411
+#: doc/classes/RenderingServer.xml:3698 doc/classes/Viewport.xml:414
msgid ""
"Flip the texture when repeating so that the edge lines up instead of "
"abruptly changing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3690
+#: doc/classes/RenderingServer.xml:3701
msgid "Max value for [enum CanvasItemTextureRepeat] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3693
+#: doc/classes/RenderingServer.xml:3704
msgid "Adds light color additive to the canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:3696
+#: doc/classes/RenderingServer.xml:3707
msgid "Adds light color subtractive to the canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:3699
+#: doc/classes/RenderingServer.xml:3710
msgid "The light adds color depending on transparency."
msgstr ""
-#: doc/classes/RenderingServer.xml:3702
+#: doc/classes/RenderingServer.xml:3713
msgid "The light adds color depending on mask."
msgstr ""
-#: doc/classes/RenderingServer.xml:3705
+#: doc/classes/RenderingServer.xml:3716
msgid "Do not apply a filter to canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3708
+#: doc/classes/RenderingServer.xml:3719
msgid "Use PCF5 filtering to filter canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3711
+#: doc/classes/RenderingServer.xml:3722
msgid "Use PCF13 filtering to filter canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3714
+#: doc/classes/RenderingServer.xml:3725
msgid "Max value of the [enum CanvasLightShadowFilter] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3717
+#: doc/classes/RenderingServer.xml:3728
msgid "Culling of the canvas occluder is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3720
+#: doc/classes/RenderingServer.xml:3731
msgid "Culling of the canvas occluder is clockwise."
msgstr ""
-#: doc/classes/RenderingServer.xml:3723
+#: doc/classes/RenderingServer.xml:3734
msgid "Culling of the canvas occluder is counterclockwise."
msgstr ""
-#: doc/classes/RenderingServer.xml:3784
+#: doc/classes/RenderingServer.xml:3795
msgid "The amount of objects in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3787
+#: doc/classes/RenderingServer.xml:3798
msgid "The amount of vertices in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3790
+#: doc/classes/RenderingServer.xml:3801
msgid "The amount of modified materials in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3793
+#: doc/classes/RenderingServer.xml:3804
msgid "The amount of shader rebinds in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3796
+#: doc/classes/RenderingServer.xml:3807
msgid "The amount of surface changes in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3799
+#: doc/classes/RenderingServer.xml:3810
msgid "The amount of draw calls in frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3814
+#: doc/classes/RenderingServer.xml:3825
msgid "Hardware supports shaders. This enum is currently unused in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:3817
+#: doc/classes/RenderingServer.xml:3828
msgid ""
"Hardware supports multithreading. This enum is currently unused in Godot 3.x."
msgstr ""
@@ -43878,13 +44540,13 @@ msgstr ""
#: doc/classes/Resource.xml:7
msgid ""
"Resource is the base class for all Godot-specific resource types, serving "
-"primarily as data containers. They are reference counted and freed when no "
-"longer in use. They are also cached once loaded from disk, so that any "
-"further attempts to load a resource from a given path will return the same "
-"reference (all this in contrast to a [Node], which is not reference counted "
-"and can be instanced from disk as many times as desired). Resources can be "
-"saved externally on disk or bundled into another object, such as a [Node] or "
-"another resource."
+"primarily as data containers. Unlike [Object]s, they are reference-counted "
+"and freed when no longer in use. They are also cached once loaded from disk, "
+"so that any further attempts to load a resource from a given path will "
+"return the same reference (all this in contrast to a [Node], which is not "
+"reference-counted and can be instanced from disk as many times as desired). "
+"Resources can be saved externally on disk or bundled into another object, "
+"such as a [Node] or another resource."
msgstr ""
#: doc/classes/Resource.xml:10
@@ -43893,34 +44555,38 @@ msgid ""
"resources.html"
msgstr ""
-#: doc/classes/Resource.xml:17
+#: doc/classes/Resource.xml:18
msgid ""
"Virtual function which can be overridden to customize the behavior value of "
"[method setup_local_to_scene]."
msgstr ""
-#: doc/classes/Resource.xml:26
+#: doc/classes/Resource.xml:27
msgid ""
"Duplicates the resource, returning a new resource. By default, sub-resources "
-"are shared between resource copies for efficiency, this can be changed by "
-"passing [code]true[/code] to the [code]subresources[/code] argument."
+"are shared between resource copies for efficiency. This can be changed by "
+"passing [code]true[/code] to the [code]subresources[/code] argument which "
+"will copy the subresources.\n"
+"[b]Note:[/b] If [code]subresources[/code] is [code]true[/code], this method "
+"will only perform a shallow copy. Nested resources within subresources will "
+"not be duplicated and will still be shared."
msgstr ""
-#: doc/classes/Resource.xml:33
+#: doc/classes/Resource.xml:35
msgid ""
"If [member resource_local_to_scene] is enabled and the resource was loaded "
"from a [PackedScene] instantiation, returns the local scene where this "
"resource's unique copy is in use. Otherwise, returns [code]null[/code]."
msgstr ""
-#: doc/classes/Resource.xml:40
+#: doc/classes/Resource.xml:42
msgid ""
"Returns the RID of the resource (or an empty RID). Many resources (such as "
"[Texture2D], [Mesh], etc) are high-level abstractions of resources stored in "
"a server, so this function will return the original RID."
msgstr ""
-#: doc/classes/Resource.xml:47
+#: doc/classes/Resource.xml:49
msgid ""
"This method is called when a resource with [member resource_local_to_scene] "
"enabled is loaded from a [PackedScene] instantiation. Its behavior can be "
@@ -43930,7 +44596,7 @@ msgid ""
"local viewport."
msgstr ""
-#: doc/classes/Resource.xml:57
+#: doc/classes/Resource.xml:59
msgid ""
"Sets the path of the resource, potentially overriding an existing cache "
"entry for this path. This differs from setting [member resource_path], as "
@@ -43938,25 +44604,25 @@ msgid ""
"given path."
msgstr ""
-#: doc/classes/Resource.xml:63
+#: doc/classes/Resource.xml:65
msgid ""
"If [code]true[/code], the resource will be made unique in each instance of "
"its local scene. It can thus be modified in a scene instance without "
"impacting other instances of that same scene."
msgstr ""
-#: doc/classes/Resource.xml:66
+#: doc/classes/Resource.xml:68
msgid "The name of the resource. This is an optional identifier."
msgstr ""
-#: doc/classes/Resource.xml:69
+#: doc/classes/Resource.xml:71
msgid ""
"The path to the resource. In case it has its own file, it will return its "
"filepath. If it's tied to the scene, it will return the scene's path, "
"followed by the resource's index."
msgstr ""
-#: doc/classes/Resource.xml:75
+#: doc/classes/Resource.xml:77
msgid "Emitted whenever the resource changes."
msgstr ""
@@ -44775,11 +45441,11 @@ msgid ""
"global coordinate system, but is centered at the object's origin."
msgstr ""
-#: doc/classes/RigidBody2D.xml:87
+#: doc/classes/RigidBody2D.xml:87 doc/classes/RigidBody3D.xml:99
msgid ""
-"Returns a list of the bodies colliding with this one. Use [member "
-"contacts_reported] to set the maximum number reported. You must also set "
-"[member contact_monitor] to [code]true[/code].\n"
+"Returns a list of the bodies colliding with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
"For performance, list of collisions is updated once per frame and before the "
"physics step. Consider using signals instead."
@@ -44816,7 +45482,7 @@ msgstr ""
msgid "The body's total applied torque."
msgstr ""
-#: doc/classes/RigidBody2D.xml:130 doc/classes/RigidBody3D.xml:150
+#: doc/classes/RigidBody2D.xml:130 doc/classes/RigidBody3D.xml:157
msgid ""
"If [code]true[/code], the body can enter sleep mode when there is no "
"movement. See [member sleeping]."
@@ -44828,11 +45494,17 @@ msgid ""
"another RigidBody2D. See also [member contacts_reported]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:136
-msgid "The maximum number of contacts to report."
+#: doc/classes/RigidBody2D.xml:136 doc/classes/RigidBody3D.xml:163
+msgid ""
+"The maximum number of contacts that will be recorded. Requires [member "
+"contact_monitor] to be set to [code]true[/code].\n"
+"[b]Note:[/b] The number of contacts is different from the number of "
+"collisions. Collisions between parallel edges will result in two contacts "
+"(one at each end), and collisions between parallel faces will result in four "
+"contacts (one at each corner)."
msgstr ""
-#: doc/classes/RigidBody2D.xml:139
+#: doc/classes/RigidBody2D.xml:140
msgid ""
"Continuous collision detection mode.\n"
"Continuous collision detection tries to predict where a moving body will "
@@ -44842,21 +45514,21 @@ msgid ""
"methods are available. See [enum CCDMode] for details."
msgstr ""
-#: doc/classes/RigidBody2D.xml:143
+#: doc/classes/RigidBody2D.xml:144
msgid ""
"If [code]true[/code], internal force integration is disabled for this body. "
"Aside from collision response, the body will only move as determined by the "
"[method _integrate_forces] function."
msgstr ""
-#: doc/classes/RigidBody2D.xml:146
+#: doc/classes/RigidBody2D.xml:147
msgid ""
"Multiplies the gravity applied to the body. The body's gravity is calculated "
"from the [b]Default Gravity[/b] value in [b]Project > Project Settings > "
"Physics > 2d[/b] and/or any additional gravity vector applied by [Area2D]s."
msgstr ""
-#: doc/classes/RigidBody2D.xml:149
+#: doc/classes/RigidBody2D.xml:150
msgid ""
"The body's moment of inertia. This is like mass, but for rotation: it "
"determines how much torque it takes to rotate the body. The moment of "
@@ -44865,18 +45537,18 @@ msgid ""
"automatically computing it."
msgstr ""
-#: doc/classes/RigidBody2D.xml:152
+#: doc/classes/RigidBody2D.xml:153
msgid ""
"Damps the body's [member linear_velocity]. If [code]-1[/code], the body will "
"use the [b]Default Linear Damp[/b] in [b]Project > Project Settings > "
"Physics > 2d[/b]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:161
+#: doc/classes/RigidBody2D.xml:162
msgid "The body's mode. See [enum Mode] for possible values."
msgstr ""
-#: doc/classes/RigidBody2D.xml:164 doc/classes/RigidBody3D.xml:181
+#: doc/classes/RigidBody2D.xml:165 doc/classes/RigidBody3D.xml:189
#: doc/classes/StaticBody2D.xml:22 doc/classes/StaticBody3D.xml:22
msgid ""
"The physics material override for the body.\n"
@@ -44884,50 +45556,50 @@ msgid ""
"other physics material, such as an inherited one."
msgstr ""
-#: doc/classes/RigidBody2D.xml:168 doc/classes/RigidBody3D.xml:185
+#: doc/classes/RigidBody2D.xml:169 doc/classes/RigidBody3D.xml:193
msgid ""
"If [code]true[/code], the body will not move and will not calculate forces "
"until woken up by another body through, for example, a collision, or by "
"using the [method apply_impulse] or [method add_force] methods."
msgstr ""
-#: doc/classes/RigidBody2D.xml:171
+#: doc/classes/RigidBody2D.xml:172
msgid ""
"The body's weight based on its mass and the [b]Default Gravity[/b] value in "
"[b]Project > Project Settings > Physics > 2d[/b]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:179
+#: doc/classes/RigidBody2D.xml:180 doc/classes/RigidBody3D.xml:204
msgid ""
-"Emitted when a body enters into contact with this one. [member "
-"contact_monitor] must be [code]true[/code] and [member contacts_reported] "
-"greater than [code]0[/code]."
+"Emitted when a body enters into contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:186
+#: doc/classes/RigidBody2D.xml:187
msgid ""
-"Emitted when a body exits contact with this one. [member contact_monitor] "
-"must be [code]true[/code] and [member contacts_reported] greater than "
-"[code]0[/code]."
+"Emitted when a body exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:199
+#: doc/classes/RigidBody2D.xml:200
msgid ""
"Emitted when a body enters into contact with this one. Reports colliding "
"shape information. See [CollisionObject2D] for shape index information. "
-"[member contact_monitor] must be [code]true[/code] and [member "
-"contacts_reported] greater than [code]0[/code]."
+"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:212
+#: doc/classes/RigidBody2D.xml:213
msgid ""
"Emitted when a body shape exits contact with this one. Reports colliding "
"shape information. See [CollisionObject2D] for shape index information. "
-"[member contact_monitor] must be [code]true[/code] and [member "
-"contacts_reported] greater than [code]0[/code]."
+"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:217 doc/classes/RigidBody3D.xml:236
+#: doc/classes/RigidBody2D.xml:218 doc/classes/RigidBody3D.xml:244
msgid ""
"Emitted when the physics engine changes the body's sleeping state.\n"
"[b]Note:[/b] Changing the value [member sleeping] will not trigger this "
@@ -44935,41 +45607,41 @@ msgid ""
"engine or [code]emit_signal(\"sleeping_state_changed\")[/code] is used."
msgstr ""
-#: doc/classes/RigidBody2D.xml:224
+#: doc/classes/RigidBody2D.xml:225
msgid ""
"Rigid mode. The body behaves as a physical object. It collides with other "
"bodies and responds to forces applied to it. This is the default mode."
msgstr ""
-#: doc/classes/RigidBody2D.xml:227
+#: doc/classes/RigidBody2D.xml:228
msgid "Static mode. The body behaves like a [StaticBody2D] and does not move."
msgstr ""
-#: doc/classes/RigidBody2D.xml:230
+#: doc/classes/RigidBody2D.xml:231
msgid ""
"Character mode. Similar to [constant MODE_RIGID], but the body can not "
"rotate."
msgstr ""
-#: doc/classes/RigidBody2D.xml:233
+#: doc/classes/RigidBody2D.xml:234
msgid ""
"Kinematic mode. The body behaves like a [KinematicBody2D], and must be moved "
"by code."
msgstr ""
-#: doc/classes/RigidBody2D.xml:236
+#: doc/classes/RigidBody2D.xml:237
msgid ""
"Continuous collision detection disabled. This is the fastest way to detect "
"body collisions, but can miss small, fast-moving objects."
msgstr ""
-#: doc/classes/RigidBody2D.xml:239
+#: doc/classes/RigidBody2D.xml:240
msgid ""
"Continuous collision detection enabled using raycasting. This is faster than "
"shapecasting but less precise."
msgstr ""
-#: doc/classes/RigidBody2D.xml:242
+#: doc/classes/RigidBody2D.xml:243
msgid ""
"Continuous collision detection enabled using shapecasting. This is the "
"slowest CCD method and the most precise."
@@ -45055,42 +45727,31 @@ msgid ""
"locked."
msgstr ""
-#: doc/classes/RigidBody3D.xml:99
+#: doc/classes/RigidBody3D.xml:107
msgid ""
-"Returns a list of the bodies colliding with this one. By default, number of "
-"max contacts reported is at 0, see the [member contacts_reported] property "
-"to increase it.\n"
-"[b]Note:[/b] The result of this test is not immediate after moving objects. "
-"For performance, list of collisions is updated once per frame and before the "
-"physics step. Consider using signals instead."
+"Returns the inverse inertia tensor basis. This is used to calculate the "
+"angular acceleration resulting from a torque applied to the [RigidBody3D]."
msgstr ""
-#: doc/classes/RigidBody3D.xml:111
+#: doc/classes/RigidBody3D.xml:118
msgid "Locks the specified linear or rotational axis."
msgstr ""
-#: doc/classes/RigidBody3D.xml:126
+#: doc/classes/RigidBody3D.xml:133
msgid "Damps RigidBody3D's rotational forces."
msgstr ""
-#: doc/classes/RigidBody3D.xml:129
+#: doc/classes/RigidBody3D.xml:136
msgid "RigidBody3D's rotational velocity."
msgstr ""
-#: doc/classes/RigidBody3D.xml:153
+#: doc/classes/RigidBody3D.xml:160
msgid ""
"If [code]true[/code], the RigidBody3D will emit signals when it collides "
-"with another RigidBody3D."
+"with another RigidBody3D. See also [member contacts_reported]."
msgstr ""
-#: doc/classes/RigidBody3D.xml:156
-msgid ""
-"The maximum contacts to report. Bodies can keep a log of the contacts with "
-"other bodies, this is enabled by setting the maximum amount of contacts "
-"reported to a number greater than 0."
-msgstr ""
-
-#: doc/classes/RigidBody3D.xml:159
+#: doc/classes/RigidBody3D.xml:167
msgid ""
"If [code]true[/code], continuous collision detection is used.\n"
"Continuous collision detection tries to predict where a moving body will "
@@ -45100,7 +45761,7 @@ msgid ""
"faster to compute, but can miss small, fast-moving objects."
msgstr ""
-#: doc/classes/RigidBody3D.xml:163
+#: doc/classes/RigidBody3D.xml:171
msgid ""
"If [code]true[/code], internal force integration will be disabled (like "
"gravity or air friction) for this body. Other than collision response, the "
@@ -45108,7 +45769,7 @@ msgid ""
"function, if defined."
msgstr ""
-#: doc/classes/RigidBody3D.xml:166
+#: doc/classes/RigidBody3D.xml:174
msgid ""
"This is multiplied by the global 3D gravity setting found in [b]Project > "
"Project Settings > Physics > 3d[/b] to produce RigidBody3D's gravity. For "
@@ -45116,14 +45777,14 @@ msgid ""
"and 0.5 will apply half gravity to this object."
msgstr ""
-#: doc/classes/RigidBody3D.xml:169
+#: doc/classes/RigidBody3D.xml:177
msgid ""
"The body's linear damp. Cannot be less than -1.0. If this value is different "
"from -1.0, any linear damp derived from the world or areas will be "
"overridden."
msgstr ""
-#: doc/classes/RigidBody3D.xml:172
+#: doc/classes/RigidBody3D.xml:180
msgid ""
"The body's linear velocity. Can be used sporadically, but [b]don't set this "
"every frame[/b], because physics may run in another thread and runs at a "
@@ -45131,60 +45792,57 @@ msgid ""
"for precise control of the body state."
msgstr ""
-#: doc/classes/RigidBody3D.xml:178
+#: doc/classes/RigidBody3D.xml:186
msgid "The body mode. See [enum Mode] for possible values."
msgstr ""
-#: doc/classes/RigidBody3D.xml:196
-msgid ""
-"Emitted when a body enters into contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work."
-msgstr ""
-
-#: doc/classes/RigidBody3D.xml:203
+#: doc/classes/RigidBody3D.xml:211
msgid ""
-"Emitted when a body shape exits contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work."
+"Emitted when a body shape exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody3D.xml:216
+#: doc/classes/RigidBody3D.xml:224
msgid ""
-"Emitted when a body enters into contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work.\n"
+"Emitted when a body enters into contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"This signal not only receives the body that collided with this one, but also "
"its [RID] ([code]body_id[/code]), the shape index from the colliding body "
"([code]body_shape[/code]), and the shape index from this body "
"([code]local_shape[/code]) the other body collided with."
msgstr ""
-#: doc/classes/RigidBody3D.xml:230
+#: doc/classes/RigidBody3D.xml:238
msgid ""
-"Emitted when a body shape exits contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work.\n"
+"Emitted when a body shape exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"This signal not only receives the body that stopped colliding with this one, "
"but also its [RID] ([code]body_id[/code]), the shape index from the "
"colliding body ([code]body_shape[/code]), and the shape index from this body "
"([code]local_shape[/code]) the other body stopped colliding with."
msgstr ""
-#: doc/classes/RigidBody3D.xml:243
+#: doc/classes/RigidBody3D.xml:251
msgid ""
"Rigid body mode. This is the \"natural\" state of a rigid body. It is "
"affected by forces, and can move, rotate, and be affected by user code."
msgstr ""
-#: doc/classes/RigidBody3D.xml:246
+#: doc/classes/RigidBody3D.xml:254
msgid ""
"Static mode. The body behaves like a [StaticBody3D], and can only move by "
"user code."
msgstr ""
-#: doc/classes/RigidBody3D.xml:249
+#: doc/classes/RigidBody3D.xml:257
msgid ""
"Character body mode. This behaves like a rigid body, but can not rotate."
msgstr ""
-#: doc/classes/RigidBody3D.xml:252
+#: doc/classes/RigidBody3D.xml:260
msgid ""
"Kinematic body mode. The body behaves like a [KinematicBody3D], and can only "
"move by user code."
@@ -45691,7 +46349,7 @@ msgstr ""
msgid "The time remaining."
msgstr ""
-#: doc/classes/SceneTreeTimer.xml:28 doc/classes/Timer.xml:62
+#: doc/classes/SceneTreeTimer.xml:28 doc/classes/Timer.xml:63
msgid "Emitted when the timer reaches 0."
msgstr ""
@@ -45814,27 +46472,27 @@ msgid ""
"the singleton using [method EditorInterface.get_script_editor]."
msgstr ""
-#: doc/classes/ScriptEditor.xml:40
+#: doc/classes/ScriptEditor.xml:46
msgid "Returns a [Script] that is currently active in editor."
msgstr ""
-#: doc/classes/ScriptEditor.xml:57
+#: doc/classes/ScriptEditor.xml:69
msgid ""
"Returns an array with all [Script] objects which are currently open in "
"editor."
msgstr ""
-#: doc/classes/ScriptEditor.xml:66
+#: doc/classes/ScriptEditor.xml:78
msgid "Goes to the specified line in the current script."
msgstr ""
-#: doc/classes/ScriptEditor.xml:85
+#: doc/classes/ScriptEditor.xml:113
msgid ""
"Emitted when user changed active script. Argument is a freshly activated "
"[Script]."
msgstr ""
-#: doc/classes/ScriptEditor.xml:92
+#: doc/classes/ScriptEditor.xml:120
msgid ""
"Emitted when editor is about to close the active script. Argument is a "
"[Script] that is going to be closed."
@@ -45896,7 +46554,7 @@ msgid ""
"visible."
msgstr ""
-#: doc/classes/ScrollContainer.xml:37 doc/classes/TextEdit.xml:453
+#: doc/classes/ScrollContainer.xml:37 doc/classes/TextEdit.xml:407
msgid "The current horizontal scroll value."
msgstr ""
@@ -45904,7 +46562,7 @@ msgstr ""
msgid "If [code]true[/code], enables horizontal scrolling."
msgstr ""
-#: doc/classes/ScrollContainer.xml:43 doc/classes/TextEdit.xml:456
+#: doc/classes/ScrollContainer.xml:43 doc/classes/TextEdit.xml:410
msgid "The current vertical scroll value."
msgstr ""
@@ -46423,7 +47081,7 @@ msgstr ""
msgid ""
"Sets the global pose transform, [code]pose[/code], for the bone at "
"[code]bone_idx[/code].\n"
-"[code]amount[/code] is the interpolation strengh that will be used when "
+"[code]amount[/code] is the interpolation strength that will be used when "
"applying the pose, and [code]persistent[/code] determines if the applied "
"pose will remain.\n"
"[b]Note[/b]: The pose transform needs to be in bone space. Use [method "
@@ -46440,7 +47098,7 @@ msgstr ""
#: doc/classes/Skeleton3D.xml:266
msgid ""
-"Returns the pose transform for bone [code]bone_idx[/code].\n"
+"Sets the pose transform for bone [code]bone_idx[/code].\n"
"[b]Note[/b]: The pose transform needs to be in bone space. Use [method "
"world_transform_to_bone_transform] to convert a world transform, like one "
"you can get from a [Node3D], to bone space."
@@ -46533,6 +47191,16 @@ msgstr ""
#: doc/classes/Sky.xml:52
msgid ""
+"Automatically selects the appropriate process mode based on your sky shader. "
+"If your shader uses [code]TIME[/code] or [code]POSITION[/code], this will "
+"use [constant PROCESS_MODE_REALTIME]. If your shader uses any of the "
+"[code]LIGHT_*[/code] variables or any custom uniforms, this uses [constant "
+"PROCESS_MODE_INCREMENTAL]. Otherwise, this defaults to [constant "
+"PROCESS_MODE_QUALITY]."
+msgstr ""
+
+#: doc/classes/Sky.xml:55
+msgid ""
"Uses high quality importance sampling to process the radiance map. In "
"general, this results in much higher quality than [constant "
"PROCESS_MODE_REALTIME] but takes much longer to generate. This should not be "
@@ -46542,10 +47210,22 @@ msgid ""
"ggx_samples]."
msgstr ""
-#: doc/classes/Sky.xml:55
+#: doc/classes/Sky.xml:58
+msgid ""
+"Uses the same high quality importance sampling to process the radiance map "
+"as [constant PROCESS_MODE_QUALITY], but updates over several frames. The "
+"number of frames is determined by [member ProjectSettings.rendering/quality/"
+"reflections/roughness_layers]. Use this when you need highest quality "
+"radiance maps, but have a sky that updates slowly."
+msgstr ""
+
+#: doc/classes/Sky.xml:61
msgid ""
"Uses the fast filtering algorithm to process the radiance map. In general "
-"this results in lower quality, but substantially faster run times.\n"
+"this results in lower quality, but substantially faster run times. If you "
+"need better quality, but still need to update the sky every frame, consider "
+"turning on [member ProjectSettings.rendering/quality/reflections/"
+"fast_filter_high_quality].\n"
"[b]Note:[/b] The fast filtering algorithm is limited to 256x256 cubemaps, so "
"[member radiance_size] must be set to [constant RADIANCE_SIZE_256]."
msgstr ""
@@ -46882,9 +47562,7 @@ msgid ""
msgstr ""
#: doc/classes/SpringArm3D.xml:35
-msgid ""
-"Returns the proportion between the current arm length (after checking for "
-"collisions) and the [member spring_length]. Ranges from 0 to 1."
+msgid "Returns the spring arm's current length."
msgstr ""
#: doc/classes/SpringArm3D.xml:44
@@ -47580,7 +48258,7 @@ msgstr ""
msgid ""
"This is the built-in string class (and the one used by GDScript). It "
"supports Unicode and provides all necessary means for string handling. "
-"Strings are reference counted and use a copy-on-write approach, so passing "
+"Strings are reference-counted and use a copy-on-write approach, so passing "
"them around is cheap in resources."
msgstr ""
@@ -47735,26 +48413,32 @@ msgstr ""
#: doc/classes/String.xml:328
msgid ""
"Returns a copy of the string with escaped characters replaced by their "
-"meanings according to the C language standard."
+"meanings. Supported escape sequences are [code]\\'[/code], [code]\\\"[/"
+"code], [code]\\?[/code], [code]\\\\[/code], [code]\\a[/code], [code]\\b[/"
+"code], [code]\\f[/code], [code]\\n[/code], [code]\\r[/code], [code]\\t[/"
+"code], [code]\\v[/code].\n"
+"[b]Note:[/b] Unlike the GDScript parser, this method doesn't support the "
+"[code]\\uXXXX[/code] escape sequence."
msgstr ""
-#: doc/classes/String.xml:335
+#: doc/classes/String.xml:336
msgid ""
-"Changes the case of some letters. Replaces underscores with spaces, converts "
-"all letters to lowercase, then capitalizes first and every letter following "
-"the space character. For [code]capitalize camelCase mixed_with_underscores[/"
-"code], it will return [code]Capitalize Camelcase Mixed With Underscores[/"
+"Changes the case of some letters. Replaces underscores with spaces, adds "
+"spaces before in-word uppercase characters, converts all letters to "
+"lowercase, then capitalizes the first letter and every letter following a "
+"space character. For [code]capitalize camelCase mixed_with_underscores[/"
+"code], it will return [code]Capitalize Camel Case Mixed With Underscores[/"
"code]."
msgstr ""
-#: doc/classes/String.xml:344
+#: doc/classes/String.xml:345
msgid ""
"Performs a case-sensitive comparison to another string. Returns [code]-1[/"
"code] if less than, [code]+1[/code] if greater than, or [code]0[/code] if "
"equal."
msgstr ""
-#: doc/classes/String.xml:357
+#: doc/classes/String.xml:358
msgid ""
"Returns the number of occurrences of substring [code]what[/code] between "
"[code]from[/code] and [code]to[/code] positions. If [code]from[/code] and "
@@ -47762,7 +48446,7 @@ msgid ""
"code] equals 0 the remained substring will be used."
msgstr ""
-#: doc/classes/String.xml:370
+#: doc/classes/String.xml:371
msgid ""
"Returns the number of occurrences of substring [code]what[/code] (ignoring "
"case) between [code]from[/code] and [code]to[/code] positions. If "
@@ -47770,32 +48454,33 @@ msgid ""
"used. If only [code]to[/code] equals 0 the remained substring will be used."
msgstr ""
-#: doc/classes/String.xml:377
+#: doc/classes/String.xml:378
msgid ""
"Returns a copy of the string with indentation (leading tabs and spaces) "
"removed."
msgstr ""
-#: doc/classes/String.xml:384
+#: doc/classes/String.xml:385
msgid ""
"Returns [code]true[/code] if the length of the string equals [code]0[/code]."
msgstr ""
-#: doc/classes/String.xml:393
+#: doc/classes/String.xml:394
msgid "Returns [code]true[/code] if the string ends with the given string."
msgstr ""
-#: doc/classes/String.xml:404
+#: doc/classes/String.xml:405
msgid ""
"Erases [code]chars[/code] characters from the string starting from "
"[code]position[/code]."
msgstr ""
-#: doc/classes/String.xml:415
+#: doc/classes/String.xml:416
msgid ""
-"Finds the first occurrence of a substring. Returns the starting position of "
-"the substring or [code]-1[/code] if not found. Optionally, the initial "
-"search index can be passed.\n"
+"Returns the index of the [b]first[/b] case-sensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the end of the "
+"string.\n"
"[b]Note:[/b] If you just want to know whether a string contains a substring, "
"use the [code]in[/code] operator as follows:\n"
"[codeblock]\n"
@@ -47805,48 +48490,42 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:430
+#: doc/classes/String.xml:433
msgid ""
-"Finds the last occurrence of a substring. Returns the starting position of "
-"the substring or [code]-1[/code] if not found."
+"Returns the index of the [b]first[/b] case-insensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the end of the string."
msgstr ""
-#: doc/classes/String.xml:441
-msgid ""
-"Finds the first occurrence of a substring, ignoring case. Returns the "
-"starting position of the substring or [code]-1[/code] if not found. "
-"Optionally, the initial search index can be passed."
-msgstr ""
-
-#: doc/classes/String.xml:452
+#: doc/classes/String.xml:444
msgid ""
"Formats the string by replacing all occurrences of [code]placeholder[/code] "
"with [code]values[/code]."
msgstr ""
-#: doc/classes/String.xml:459
+#: doc/classes/String.xml:451
msgid "If the string is a valid file path, returns the base directory name."
msgstr ""
-#: doc/classes/String.xml:466
+#: doc/classes/String.xml:458
msgid ""
"If the string is a valid file path, returns the full file path without the "
"extension."
msgstr ""
-#: doc/classes/String.xml:473
+#: doc/classes/String.xml:465
msgid "If the string is a valid file path, returns the extension."
msgstr ""
-#: doc/classes/String.xml:480
+#: doc/classes/String.xml:472
msgid "If the string is a valid file path, returns the filename."
msgstr ""
-#: doc/classes/String.xml:487
+#: doc/classes/String.xml:479
msgid "Hashes the string and returns a 32-bit integer."
msgstr ""
-#: doc/classes/String.xml:494
+#: doc/classes/String.xml:486
msgid ""
"Converts a string containing a hexadecimal number into an integer. "
"Hexadecimal strings are expected to be prefixed with \"[code]0x[/code]\" "
@@ -47856,7 +48535,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:504
+#: doc/classes/String.xml:496
msgid ""
"Escapes (encodes) a string to URL friendly format. Also referred to as 'URL "
"encode'.\n"
@@ -47866,7 +48545,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:514
+#: doc/classes/String.xml:506
msgid ""
"Unescapes (decodes) a string in URL encoded format. Also referred to as 'URL "
"decode'.\n"
@@ -47876,7 +48555,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:526
+#: doc/classes/String.xml:518
msgid ""
"Converts [code]size[/code] represented as number of bytes to human-readable "
"format using internationalized set of data size units, namely: B, KiB, MiB, "
@@ -47889,48 +48568,48 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:542
+#: doc/classes/String.xml:534
msgid ""
"Returns a copy of the string with the substring [code]what[/code] inserted "
"at the given position."
msgstr ""
-#: doc/classes/String.xml:549
+#: doc/classes/String.xml:541
msgid ""
"If the string is a path to a file or directory, returns [code]true[/code] if "
"the path is absolute."
msgstr ""
-#: doc/classes/String.xml:556
+#: doc/classes/String.xml:548
msgid ""
"If the string is a path to a file or directory, returns [code]true[/code] if "
"the path is relative."
msgstr ""
-#: doc/classes/String.xml:565
+#: doc/classes/String.xml:557
msgid ""
"Returns [code]true[/code] if this string is a subsequence of the given "
"string."
msgstr ""
-#: doc/classes/String.xml:574
+#: doc/classes/String.xml:566
msgid ""
"Returns [code]true[/code] if this string is a subsequence of the given "
"string, without considering case."
msgstr ""
-#: doc/classes/String.xml:581
+#: doc/classes/String.xml:573
msgid ""
"Returns [code]true[/code] if this string is free from characters that aren't "
"allowed in file names, those being:\n"
"[code]: / \\ ? * \" | % < >[/code]"
msgstr ""
-#: doc/classes/String.xml:589
+#: doc/classes/String.xml:581
msgid "Returns [code]true[/code] if this string contains a valid float."
msgstr ""
-#: doc/classes/String.xml:598
+#: doc/classes/String.xml:590
msgid ""
"Returns [code]true[/code] if this string contains a valid hexadecimal "
"number. If [code]with_prefix[/code] is [code]true[/code], then a validity of "
@@ -47938,7 +48617,7 @@ msgid ""
"instance: [code]0xDEADC0DE[/code]."
msgstr ""
-#: doc/classes/String.xml:605
+#: doc/classes/String.xml:597
msgid ""
"Returns [code]true[/code] if this string contains a valid color in "
"hexadecimal HTML notation. Other HTML notations such as named colors or "
@@ -47946,22 +48625,22 @@ msgid ""
"return [code]false[/code]."
msgstr ""
-#: doc/classes/String.xml:612
+#: doc/classes/String.xml:604
msgid ""
"Returns [code]true[/code] if this string is a valid identifier. A valid "
"identifier may contain only letters, digits and underscores ([code]_[/code]) "
"and the first character may not be a digit."
msgstr ""
-#: doc/classes/String.xml:619
+#: doc/classes/String.xml:611
msgid "Returns [code]true[/code] if this string contains a valid integer."
msgstr ""
-#: doc/classes/String.xml:626
+#: doc/classes/String.xml:618
msgid "Returns [code]true[/code] if this string contains a valid IP address."
msgstr ""
-#: doc/classes/String.xml:635
+#: doc/classes/String.xml:627
msgid ""
"Return a [String] which is the concatenation of the [code]parts[/code]. The "
"separator between elements is the string providing this method.\n"
@@ -47971,121 +48650,125 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:646
+#: doc/classes/String.xml:638
msgid ""
"Returns a copy of the string with special characters escaped using the JSON "
"standard."
msgstr ""
-#: doc/classes/String.xml:655
+#: doc/classes/String.xml:647
msgid "Returns a number of characters from the left of the string."
msgstr ""
-#: doc/classes/String.xml:662
+#: doc/classes/String.xml:654
msgid "Returns the string's amount of characters."
msgstr ""
-#: doc/classes/String.xml:671
+#: doc/classes/String.xml:663
msgid "Returns a copy of the string with characters removed from the left."
msgstr ""
-#: doc/classes/String.xml:680
+#: doc/classes/String.xml:672
msgid ""
"Does a simple case-sensitive expression match, where [code]\"*\"[/code] "
"matches zero or more arbitrary characters and [code]\"?\"[/code] matches any "
"single character except a period ([code]\".\"[/code])."
msgstr ""
-#: doc/classes/String.xml:689
+#: doc/classes/String.xml:681
msgid ""
"Does a simple case-insensitive expression match, where [code]\"*\"[/code] "
"matches zero or more arbitrary characters and [code]\"?\"[/code] matches any "
"single character except a period ([code]\".\"[/code])."
msgstr ""
-#: doc/classes/String.xml:696
+#: doc/classes/String.xml:688
msgid "Returns the MD5 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:703
+#: doc/classes/String.xml:695
msgid "Returns the MD5 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:712
+#: doc/classes/String.xml:704
msgid ""
"Performs a case-insensitive comparison to another string. Returns [code]-1[/"
"code] if less than, [code]+1[/code] if greater than, or [code]0[/code] if "
"equal."
msgstr ""
-#: doc/classes/String.xml:721
+#: doc/classes/String.xml:713
msgid "Returns the character code at position [code]at[/code]."
msgstr ""
-#: doc/classes/String.xml:730
+#: doc/classes/String.xml:722
msgid ""
"Formats a number to have an exact number of [code]digits[/code] after the "
"decimal point."
msgstr ""
-#: doc/classes/String.xml:739
+#: doc/classes/String.xml:731
msgid ""
"Formats a number to have an exact number of [code]digits[/code] before the "
"decimal point."
msgstr ""
-#: doc/classes/String.xml:746
+#: doc/classes/String.xml:738
msgid "Decode a percent-encoded string. See [method percent_encode]."
msgstr ""
-#: doc/classes/String.xml:753
+#: doc/classes/String.xml:745
msgid ""
"Percent-encodes a string. Encodes parameters in a URL when sending a HTTP "
"GET request (and bodies of form-urlencoded POST requests)."
msgstr ""
-#: doc/classes/String.xml:762
+#: doc/classes/String.xml:754
msgid ""
"If the string is a path, this concatenates [code]file[/code] at the end of "
"the string as a subpath. E.g. [code]\"this/is\".plus_file(\"path\") == "
"\"this/is/path\"[/code]."
msgstr ""
-#: doc/classes/String.xml:771
+#: doc/classes/String.xml:763
msgid ""
"Returns original string repeated a number of times. The number of "
"repetitions is given by the argument."
msgstr ""
-#: doc/classes/String.xml:782
+#: doc/classes/String.xml:774
msgid ""
"Replaces occurrences of a case-sensitive substring with the given one inside "
"the string."
msgstr ""
-#: doc/classes/String.xml:793
+#: doc/classes/String.xml:785
msgid ""
"Replaces occurrences of a case-insensitive substring with the given one "
"inside the string."
msgstr ""
-#: doc/classes/String.xml:804
+#: doc/classes/String.xml:796
msgid ""
-"Performs a case-sensitive search for a substring, but starts from the end of "
-"the string instead of the beginning."
+"Returns the index of the [b]last[/b] case-sensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the beginning of the "
+"string."
msgstr ""
-#: doc/classes/String.xml:815
+#: doc/classes/String.xml:807
msgid ""
-"Performs a case-insensitive search for a substring, but starts from the end "
-"of the string instead of the beginning."
+"Returns the index of the [b]last[/b] case-insensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the beginning of the "
+"string."
msgstr ""
-#: doc/classes/String.xml:824
+#: doc/classes/String.xml:816
msgid "Returns the right side of the string from a given position."
msgstr ""
-#: doc/classes/String.xml:837
+#: doc/classes/String.xml:829
msgid ""
"Splits the string by a [code]delimiter[/code] string and returns an array of "
"the substrings, starting from right.\n"
@@ -48104,39 +48787,39 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:856
+#: doc/classes/String.xml:848
msgid "Returns a copy of the string with characters removed from the right."
msgstr ""
-#: doc/classes/String.xml:863
+#: doc/classes/String.xml:855
msgid "Returns the SHA-1 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:870
+#: doc/classes/String.xml:862
msgid "Returns the SHA-1 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:877
+#: doc/classes/String.xml:869
msgid "Returns the SHA-256 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:884
+#: doc/classes/String.xml:876
msgid "Returns the SHA-256 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:893
+#: doc/classes/String.xml:885
msgid ""
"Returns the similarity index of the text compared to this string. 1 means "
"totally similar and 0 means totally dissimilar."
msgstr ""
-#: doc/classes/String.xml:906
+#: doc/classes/String.xml:898
msgid ""
"Splits the string by a [code]delimiter[/code] string and returns an array of "
-"the substrings.\n"
+"the substrings. The [code]delimiter[/code] can be of any length.\n"
"If [code]maxsplit[/code] is specified, it defines the number of splits to do "
-"from the left up to [code]maxsplit[/code]. The default value of 0 means that "
-"all items are split.\n"
+"from the left up to [code]maxsplit[/code]. The default value of [code]0[/"
+"code] means that all items are split.\n"
"Example:\n"
"[codeblock]\n"
"var some_string = \"One,Two,Three,Four\"\n"
@@ -48144,10 +48827,12 @@ msgid ""
"print(some_array.size()) # Prints 2\n"
"print(some_array[0]) # Prints \"One\"\n"
"print(some_array[1]) # Prints \"Two,Three,Four\"\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"If you need to split strings with more complex rules, use the [RegEx] class "
+"instead."
msgstr ""
-#: doc/classes/String.xml:926
+#: doc/classes/String.xml:919
msgid ""
"Splits the string in floats by using a delimiter string and returns an array "
"of the substrings.\n"
@@ -48155,7 +48840,7 @@ msgid ""
"split by [code]\",\"[/code]."
msgstr ""
-#: doc/classes/String.xml:938
+#: doc/classes/String.xml:931
msgid ""
"Returns a copy of the string stripped of any non-printable character "
"(including tabulations, spaces and line breaks) at the beginning and the "
@@ -48163,7 +48848,7 @@ msgid ""
"right edges respectively."
msgstr ""
-#: doc/classes/String.xml:945
+#: doc/classes/String.xml:938
msgid ""
"Returns a copy of the string stripped of any escape character. These include "
"all non-printable control characters of the first page of the ASCII table (< "
@@ -48171,14 +48856,14 @@ msgid ""
"code] and [code]\\r[/code]) characters, but not spaces."
msgstr ""
-#: doc/classes/String.xml:956
+#: doc/classes/String.xml:949
msgid ""
"Returns part of the string from the position [code]from[/code] with length "
"[code]len[/code]. Argument [code]len[/code] is optional and using [code]-1[/"
"code] will return remaining characters from given position."
msgstr ""
-#: doc/classes/String.xml:963
+#: doc/classes/String.xml:956
msgid ""
"Converts the String (which is a character array) to [PackedByteArray] (which "
"is an array of bytes). The conversion is faster compared to [method "
@@ -48186,25 +48871,25 @@ msgid ""
"ASCII characters."
msgstr ""
-#: doc/classes/String.xml:970
+#: doc/classes/String.xml:963
msgid ""
"Converts a string containing a decimal number into a [code]float[/code]."
msgstr ""
-#: doc/classes/String.xml:977
+#: doc/classes/String.xml:970
msgid ""
"Converts a string containing an integer number into an [code]int[/code]."
msgstr ""
-#: doc/classes/String.xml:984
+#: doc/classes/String.xml:977
msgid "Returns the string converted to lowercase."
msgstr ""
-#: doc/classes/String.xml:991
+#: doc/classes/String.xml:984
msgid "Returns the string converted to uppercase."
msgstr ""
-#: doc/classes/String.xml:998
+#: doc/classes/String.xml:991
msgid ""
"Converts the String (which is an array of characters) to [PackedByteArray] "
"(which is an array of bytes). The conversion is a bit slower than [method "
@@ -48212,25 +48897,25 @@ msgid ""
"this function over [method to_ascii]."
msgstr ""
-#: doc/classes/String.xml:1007
+#: doc/classes/String.xml:1000
msgid ""
"Removes a given string from the start if it starts with it or leaves the "
"string unchanged."
msgstr ""
-#: doc/classes/String.xml:1016
+#: doc/classes/String.xml:1009
msgid ""
"Removes a given string from the end if it ends with it or leaves the string "
"unchanged."
msgstr ""
-#: doc/classes/String.xml:1023
+#: doc/classes/String.xml:1016
msgid ""
"Returns a copy of the string with special characters escaped using the XML "
"standard."
msgstr ""
-#: doc/classes/String.xml:1030
+#: doc/classes/String.xml:1023
msgid ""
"Returns a copy of the string with escaped characters replaced by their "
"meanings according to the XML standard."
@@ -49462,50 +50147,42 @@ msgid ""
"undo/redo."
msgstr ""
-#: doc/classes/TextEdit.xml:24
-msgid "Adds color region (given the delimiters) and its colors."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:35
-msgid "Adds a [code]keyword[/code] and its [Color]."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:44
+#: doc/classes/TextEdit.xml:18
msgid ""
"Returns if the given line is foldable, that is, it has indented lines right "
"below it."
msgstr ""
-#: doc/classes/TextEdit.xml:57
+#: doc/classes/TextEdit.xml:25
msgid ""
-"Clears all custom syntax coloring information previously added with [method "
-"add_color_region] or [method add_keyword_color]."
+"Centers the viewport on the line the editing cursor is at. This also resets "
+"the [member scroll_horizontal] value to [code]0[/code]."
msgstr ""
-#: doc/classes/TextEdit.xml:64
+#: doc/classes/TextEdit.xml:32
msgid "Clears the undo history."
msgstr ""
-#: doc/classes/TextEdit.xml:71
+#: doc/classes/TextEdit.xml:39
msgid "Copy's the current text selection."
msgstr ""
-#: doc/classes/TextEdit.xml:78
+#: doc/classes/TextEdit.xml:46
msgid "Returns the column the editing cursor is at."
msgstr ""
-#: doc/classes/TextEdit.xml:85
+#: doc/classes/TextEdit.xml:53
msgid "Returns the line the editing cursor is at."
msgstr ""
-#: doc/classes/TextEdit.xml:96
+#: doc/classes/TextEdit.xml:64
msgid ""
"Moves the cursor at the specified [code]column[/code] index.\n"
"If [code]adjust_viewport[/code] is set to [code]true[/code], the viewport "
"will center at the cursor position after the move occurs."
msgstr ""
-#: doc/classes/TextEdit.xml:112
+#: doc/classes/TextEdit.xml:80
msgid ""
"Moves the cursor at the specified [code]line[/code] index.\n"
"If [code]adjust_viewport[/code] is set to [code]true[/code], the viewport "
@@ -49514,111 +50191,101 @@ msgid ""
"[code]line[/code] can be hidden using [method set_line_as_hidden]."
msgstr ""
-#: doc/classes/TextEdit.xml:121
+#: doc/classes/TextEdit.xml:89
msgid "Cut's the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:128
+#: doc/classes/TextEdit.xml:96
msgid "Deselects the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:135
+#: doc/classes/TextEdit.xml:103
msgid "Folds all lines that are possible to be folded (see [method can_fold])."
msgstr ""
-#: doc/classes/TextEdit.xml:144
+#: doc/classes/TextEdit.xml:112
msgid "Folds the given line, if possible (see [method can_fold])."
msgstr ""
-#: doc/classes/TextEdit.xml:151
+#: doc/classes/TextEdit.xml:119
msgid "Returns an array containing the line number of each breakpoint."
msgstr ""
-#: doc/classes/TextEdit.xml:160
-msgid "Returns the [Color] of the specified [code]keyword[/code]."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:169
+#: doc/classes/TextEdit.xml:128
msgid "Returns the text of a specific line."
msgstr ""
-#: doc/classes/TextEdit.xml:176
+#: doc/classes/TextEdit.xml:135
msgid "Returns the amount of total lines in the text."
msgstr ""
-#: doc/classes/TextEdit.xml:183
+#: doc/classes/TextEdit.xml:142
msgid ""
"Returns the [PopupMenu] of this [TextEdit]. By default, this menu is "
"displayed when right-clicking on the [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:190
+#: doc/classes/TextEdit.xml:149
msgid "Returns the selection begin column."
msgstr ""
-#: doc/classes/TextEdit.xml:197
+#: doc/classes/TextEdit.xml:156
msgid "Returns the selection begin line."
msgstr ""
-#: doc/classes/TextEdit.xml:204
+#: doc/classes/TextEdit.xml:163
msgid "Returns the text inside the selection."
msgstr ""
-#: doc/classes/TextEdit.xml:211
+#: doc/classes/TextEdit.xml:170
msgid "Returns the selection end column."
msgstr ""
-#: doc/classes/TextEdit.xml:218
+#: doc/classes/TextEdit.xml:177
msgid "Returns the selection end line."
msgstr ""
-#: doc/classes/TextEdit.xml:225
+#: doc/classes/TextEdit.xml:184
msgid "Returns a [String] text with the word under the mouse cursor location."
msgstr ""
-#: doc/classes/TextEdit.xml:234
-msgid ""
-"Returns whether the specified [code]keyword[/code] has a color set to it or "
-"not."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:243
+#: doc/classes/TextEdit.xml:193
msgid "Insert the specified text at the cursor position."
msgstr ""
-#: doc/classes/TextEdit.xml:252
+#: doc/classes/TextEdit.xml:202
msgid "Returns whether the line at the specified index is folded or not."
msgstr ""
-#: doc/classes/TextEdit.xml:261
+#: doc/classes/TextEdit.xml:211
msgid "Returns whether the line at the specified index is hidden or not."
msgstr ""
-#: doc/classes/TextEdit.xml:268
+#: doc/classes/TextEdit.xml:218
msgid "Returns [code]true[/code] if the selection is active."
msgstr ""
-#: doc/classes/TextEdit.xml:277
+#: doc/classes/TextEdit.xml:227
msgid ""
"Triggers a right-click menu action by the specified index. See [enum "
"MenuItems] for a list of available indexes."
msgstr ""
-#: doc/classes/TextEdit.xml:284
+#: doc/classes/TextEdit.xml:234
msgid "Paste the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:291
+#: doc/classes/TextEdit.xml:241
msgid "Perform redo operation."
msgstr ""
-#: doc/classes/TextEdit.xml:298
+#: doc/classes/TextEdit.xml:248
msgid ""
"Removes all the breakpoints. This will not fire the [signal "
"breakpoint_toggled] signal."
msgstr ""
-#: doc/classes/TextEdit.xml:313
+#: doc/classes/TextEdit.xml:263
msgid ""
"Perform a search inside the text. Search flags can be specified in the [enum "
"SearchFlags] enum.\n"
@@ -49634,244 +50301,265 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/TextEdit.xml:336
-msgid "Perform selection, from line/column to line/column."
+#: doc/classes/TextEdit.xml:286
+msgid ""
+"Perform selection, from line/column to line/column.\n"
+"If [member selecting_enabled] is [code]false[/code], no selection will occur."
msgstr ""
-#: doc/classes/TextEdit.xml:343
-msgid "Select all the text."
+#: doc/classes/TextEdit.xml:294
+msgid ""
+"Select all the text.\n"
+"If [member selecting_enabled] is [code]false[/code], no selection will occur."
msgstr ""
-#: doc/classes/TextEdit.xml:354
+#: doc/classes/TextEdit.xml:306
msgid "Sets the text for a specific line."
msgstr ""
-#: doc/classes/TextEdit.xml:365
+#: doc/classes/TextEdit.xml:317
msgid "If [code]true[/code], hides the line of the specified index."
msgstr ""
-#: doc/classes/TextEdit.xml:374
+#: doc/classes/TextEdit.xml:326
msgid "Toggle the folding of the code block at the given line."
msgstr ""
-#: doc/classes/TextEdit.xml:381
+#: doc/classes/TextEdit.xml:333
msgid "Perform undo operation."
msgstr ""
-#: doc/classes/TextEdit.xml:390
+#: doc/classes/TextEdit.xml:342
msgid "Unfolds the given line, if folded."
msgstr ""
-#: doc/classes/TextEdit.xml:397
+#: doc/classes/TextEdit.xml:349
msgid ""
"Unhide all lines that were previously set to hidden by [method "
"set_line_as_hidden]."
msgstr ""
-#: doc/classes/TextEdit.xml:403
+#: doc/classes/TextEdit.xml:355
msgid "If [code]true[/code], the breakpoint gutter is visible."
msgstr ""
-#: doc/classes/TextEdit.xml:412
+#: doc/classes/TextEdit.xml:364
msgid ""
"If [code]true[/code], the caret displays as a rectangle.\n"
"If [code]false[/code], the caret displays as a bar."
msgstr ""
-#: doc/classes/TextEdit.xml:416
+#: doc/classes/TextEdit.xml:368
msgid ""
"If [code]true[/code], a right-click moves the cursor at the mouse position "
"before displaying the context menu.\n"
"If [code]false[/code], the context menu disregards mouse location."
msgstr ""
-#: doc/classes/TextEdit.xml:420
+#: doc/classes/TextEdit.xml:372
msgid "If [code]true[/code], a right-click displays the context menu."
msgstr ""
-#: doc/classes/TextEdit.xml:423
+#: doc/classes/TextEdit.xml:375
msgid ""
"If [code]true[/code], the \"space\" character will have a visible "
"representation."
msgstr ""
-#: doc/classes/TextEdit.xml:426
+#: doc/classes/TextEdit.xml:378
msgid ""
"If [code]true[/code], the \"tab\" character will have a visible "
"representation."
msgstr ""
-#: doc/classes/TextEdit.xml:430
+#: doc/classes/TextEdit.xml:382
msgid ""
"If [code]true[/code], the fold gutter is visible. This enables folding "
"groups of indented lines."
msgstr ""
-#: doc/classes/TextEdit.xml:433
+#: doc/classes/TextEdit.xml:385
msgid ""
"If [code]true[/code], all lines that have been set to hidden by [method "
"set_line_as_hidden], will not be visible."
msgstr ""
-#: doc/classes/TextEdit.xml:436
+#: doc/classes/TextEdit.xml:388
msgid ""
"If [code]true[/code], all occurrences of the selected text will be "
"highlighted."
msgstr ""
-#: doc/classes/TextEdit.xml:439
+#: doc/classes/TextEdit.xml:391
msgid "If [code]true[/code], the line containing the cursor is highlighted."
msgstr ""
-#: doc/classes/TextEdit.xml:447
+#: doc/classes/TextEdit.xml:394
+msgid ""
+"If [code]true[/code], a minimap is shown, providing an outline of your "
+"source code."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:397
+msgid "The width, in pixels, of the minimap."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:401
msgid ""
"If [code]true[/code], custom [code]font_color_selected[/code] will be used "
"for selected text."
msgstr ""
-#: doc/classes/TextEdit.xml:450
+#: doc/classes/TextEdit.xml:404
msgid ""
"If [code]true[/code], read-only mode is enabled. Existing text cannot be "
"modified and new text cannot be added."
msgstr ""
-#: doc/classes/TextEdit.xml:463
+#: doc/classes/TextEdit.xml:413
msgid ""
-"If [code]true[/code], line numbers are displayed to the left of the text."
+"If [code]true[/code], text can be selected.\n"
+"If [code]false[/code], text can not be selected by the user or by the "
+"[method select] or [method select_all] methods."
msgstr ""
-#: doc/classes/TextEdit.xml:466
+#: doc/classes/TextEdit.xml:417
msgid ""
-"If [code]true[/code], sets the [code]step[/code] of the scrollbars to "
-"[code]0.25[/code] which results in smoother scrolling."
+"If [code]true[/code], shortcut keys for context menu items are enabled, even "
+"if the context menu is disabled."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:420
+msgid ""
+"If [code]true[/code], line numbers are displayed to the left of the text."
msgstr ""
-#: doc/classes/TextEdit.xml:469
+#: doc/classes/TextEdit.xml:423
msgid ""
-"If [code]true[/code], any custom color properties that have been set for "
-"this [TextEdit] will be visible."
+"If [code]true[/code], sets the [code]step[/code] of the scrollbars to "
+"[code]0.25[/code] which results in smoother scrolling."
msgstr ""
-#: doc/classes/TextEdit.xml:472
+#: doc/classes/TextEdit.xml:428
msgid "String value of the [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:475
+#: doc/classes/TextEdit.xml:431
msgid "Vertical scroll sensitivity."
msgstr ""
-#: doc/classes/TextEdit.xml:478
+#: doc/classes/TextEdit.xml:437
msgid ""
"If [code]true[/code], enables text wrapping when it goes beyond the edge of "
"what is visible."
msgstr ""
-#: doc/classes/TextEdit.xml:486
+#: doc/classes/TextEdit.xml:445
msgid "Emitted when a breakpoint is placed via the breakpoint gutter."
msgstr ""
-#: doc/classes/TextEdit.xml:491
+#: doc/classes/TextEdit.xml:450
msgid "Emitted when the cursor changes."
msgstr ""
-#: doc/classes/TextEdit.xml:500
+#: doc/classes/TextEdit.xml:459
msgid "Emitted when the info icon is clicked."
msgstr ""
-#: doc/classes/TextEdit.xml:531
+#: doc/classes/TextEdit.xml:496
msgid "Match case when searching."
msgstr ""
-#: doc/classes/TextEdit.xml:534
+#: doc/classes/TextEdit.xml:499
msgid "Match whole words when searching."
msgstr ""
-#: doc/classes/TextEdit.xml:537
+#: doc/classes/TextEdit.xml:502
msgid "Search from end to beginning."
msgstr ""
-#: doc/classes/TextEdit.xml:546
+#: doc/classes/TextEdit.xml:511
msgid ""
"Pastes the clipboard text over the selected text (or at the cursor's "
"position)."
msgstr ""
-#: doc/classes/TextEdit.xml:549
+#: doc/classes/TextEdit.xml:514
msgid "Erases the whole [TextEdit] text."
msgstr ""
-#: doc/classes/TextEdit.xml:552
+#: doc/classes/TextEdit.xml:517
msgid "Selects the whole [TextEdit] text."
msgstr ""
-#: doc/classes/TextEdit.xml:558
+#: doc/classes/TextEdit.xml:523
msgid "Redoes the previous action."
msgstr ""
-#: doc/classes/TextEdit.xml:566
+#: doc/classes/TextEdit.xml:531
msgid ""
"Sets the background [Color] of this [TextEdit]. [member syntax_highlighting] "
"has to be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:569
+#: doc/classes/TextEdit.xml:534
msgid ""
"Sets the [Color] of the bookmark marker. [member syntax_highlighting] has to "
"be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:574 doc/classes/TextEdit.xml:601
+#: doc/classes/TextEdit.xml:539 doc/classes/TextEdit.xml:566
msgid ""
"Sets the [Color] of the breakpoints. [member breakpoint_gutter] has to be "
"enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:612
+#: doc/classes/TextEdit.xml:577
msgid "Sets the default [Font]."
msgstr ""
-#: doc/classes/TextEdit.xml:615
+#: doc/classes/TextEdit.xml:580
msgid "Sets the font [Color]."
msgstr ""
-#: doc/classes/TextEdit.xml:620
+#: doc/classes/TextEdit.xml:585
msgid ""
"Sets the [Color] of the selected text. [member override_selected_font_color] "
"has to be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:625
+#: doc/classes/TextEdit.xml:588
msgid ""
"Sets the [Color] of the line numbers. [member show_line_numbers] has to be "
"enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:628
+#: doc/classes/TextEdit.xml:591
msgid "Sets the spacing between the lines."
msgstr ""
-#: doc/classes/TextEdit.xml:631
+#: doc/classes/TextEdit.xml:594
msgid "Sets the [Color] of marked text."
msgstr ""
-#: doc/classes/TextEdit.xml:636
+#: doc/classes/TextEdit.xml:597
msgid "Sets the [StyleBox] of this [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:641
+#: doc/classes/TextEdit.xml:600
msgid ""
"Sets the [StyleBox] of this [TextEdit] when [member readonly] is enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:646
+#: doc/classes/TextEdit.xml:605
msgid "Sets the highlight [Color] of text selections."
msgstr ""
-#: doc/classes/TextEdit.xml:653
+#: doc/classes/TextEdit.xml:610
msgid "Sets a custom [Texture2D] for tab text characters."
msgstr ""
-#: doc/classes/TextEdit.xml:656
+#: doc/classes/TextEdit.xml:613
msgid ""
"Sets the highlight [Color] of multiple occurrences. [member "
"highlight_all_occurrences] has to be enabled."
@@ -49949,80 +50637,80 @@ msgid ""
"the texture will not scale with the node."
msgstr ""
-#: doc/classes/TextureButton.xml:19
+#: doc/classes/TextureButton.xml:25
msgid ""
"Controls the texture's behavior when you resize the node's bounding "
"rectangle, [b]only if[/b] [member expand] is [code]true[/code]. Set it to "
"one of the [enum StretchMode] constants. See the constants to learn more."
msgstr ""
-#: doc/classes/TextureButton.xml:22
+#: doc/classes/TextureButton.xml:28
msgid ""
"Pure black and white [BitMap] image to use for click detection. On the mask, "
"white pixels represent the button's clickable area. Use it to create buttons "
"with curved shapes."
msgstr ""
-#: doc/classes/TextureButton.xml:25
+#: doc/classes/TextureButton.xml:31
msgid ""
"Texture to display when the node is disabled. See [member BaseButton."
"disabled]."
msgstr ""
-#: doc/classes/TextureButton.xml:28
+#: doc/classes/TextureButton.xml:34
msgid "Texture to display when the node has mouse or keyboard focus."
msgstr ""
-#: doc/classes/TextureButton.xml:31
+#: doc/classes/TextureButton.xml:37
msgid "Texture to display when the mouse hovers the node."
msgstr ""
-#: doc/classes/TextureButton.xml:34
+#: doc/classes/TextureButton.xml:40
msgid ""
"Texture to display by default, when the node is [b]not[/b] in the disabled, "
"focused, hover or pressed state."
msgstr ""
-#: doc/classes/TextureButton.xml:37
+#: doc/classes/TextureButton.xml:43
msgid ""
"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 "
"[member BaseButton.shortcut] key."
msgstr ""
-#: doc/classes/TextureButton.xml:42 doc/classes/TextureRect.xml:36
+#: doc/classes/TextureButton.xml:48 doc/classes/TextureRect.xml:36
msgid "Scale to fit the node's bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:45 doc/classes/TextureRect.xml:39
+#: doc/classes/TextureButton.xml:51 doc/classes/TextureRect.xml:39
msgid "Tile inside the node's bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:48 doc/classes/TextureRect.xml:42
+#: doc/classes/TextureButton.xml:54 doc/classes/TextureRect.xml:42
msgid ""
"The texture keeps its original size and stays in the bounding rectangle's "
"top-left corner."
msgstr ""
-#: doc/classes/TextureButton.xml:51 doc/classes/TextureRect.xml:45
+#: doc/classes/TextureButton.xml:57 doc/classes/TextureRect.xml:45
msgid ""
"The texture keeps its original size and stays centered in the node's "
"bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:54 doc/classes/TextureRect.xml:48
+#: doc/classes/TextureButton.xml:60 doc/classes/TextureRect.xml:48
msgid ""
"Scale the texture to fit the node's bounding rectangle, but maintain the "
"texture's aspect ratio."
msgstr ""
-#: doc/classes/TextureButton.xml:57
+#: doc/classes/TextureButton.xml:63
msgid ""
"Scale the texture to fit the node's bounding rectangle, center it, and "
"maintain its aspect ratio."
msgstr ""
-#: doc/classes/TextureButton.xml:60 doc/classes/TextureRect.xml:54
+#: doc/classes/TextureButton.xml:66 doc/classes/TextureRect.xml:54
msgid ""
"Scale the texture so that the shorter side fits the bounding rectangle. The "
"other side clips to the node's limits."
@@ -50472,19 +51160,25 @@ msgid ""
"advised if working with shared objects."
msgstr ""
-#: doc/classes/Thread.xml:17
+#: doc/classes/Thread.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/threads/thread_safe_apis."
+"html"
+msgstr ""
+
+#: doc/classes/Thread.xml:18
msgid ""
"Returns the current [Thread]'s ID, uniquely identifying it among all threads."
msgstr ""
-#: doc/classes/Thread.xml:24
+#: doc/classes/Thread.xml:25
msgid ""
"Returns [code]true[/code] if this [Thread] is currently active. An active "
"[Thread] cannot start work on a new method but can be joined with [method "
"wait_to_finish]."
msgstr ""
-#: doc/classes/Thread.xml:39
+#: doc/classes/Thread.xml:40
msgid ""
"Starts a new [Thread] that runs [code]method[/code] on object "
"[code]instance[/code] with [code]userdata[/code] passed as an argument. Even "
@@ -50494,21 +51188,21 @@ msgid ""
"Returns [constant OK] on success, or [constant ERR_CANT_CREATE] on failure."
msgstr ""
-#: doc/classes/Thread.xml:47
+#: doc/classes/Thread.xml:48
msgid ""
"Joins the [Thread] and waits for it to finish. Returns what the method "
"called returned."
msgstr ""
-#: doc/classes/Thread.xml:53
+#: doc/classes/Thread.xml:54
msgid "A thread running with lower priority than normally."
msgstr ""
-#: doc/classes/Thread.xml:56
+#: doc/classes/Thread.xml:57
msgid "A thread with a standard priority."
msgstr ""
-#: doc/classes/Thread.xml:59
+#: doc/classes/Thread.xml:60
msgid "A thread running with higher priority than normally."
msgstr ""
@@ -51043,50 +51737,61 @@ msgid "Returns the [Transform2D] of a tile's shape."
msgstr ""
#: doc/classes/TileSet.xml:481
-msgid "Returns an array of the tile's shapes."
+msgid ""
+"Returns an array of dictionaries describing the tile's shapes.\n"
+"[b]Dictionary structure in the array returned by this method:[/b]\n"
+"[codeblock]\n"
+"{\n"
+" \"autotile_coord\": Vector2,\n"
+" \"one_way\": bool,\n"
+" \"one_way_margin\": int,\n"
+" \"shape\": CollisionShape2D,\n"
+" \"shape_transform\": Transform2D,\n"
+"}\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/TileSet.xml:490
+#: doc/classes/TileSet.xml:500
msgid "Returns the tile's texture."
msgstr ""
-#: doc/classes/TileSet.xml:499
+#: doc/classes/TileSet.xml:509
msgid "Returns the texture offset of the tile."
msgstr ""
-#: doc/classes/TileSet.xml:508
+#: doc/classes/TileSet.xml:518
msgid "Returns the tile's [enum TileMode]."
msgstr ""
-#: doc/classes/TileSet.xml:517
+#: doc/classes/TileSet.xml:527
msgid "Returns the tile's Z index (drawing layer)."
msgstr ""
-#: doc/classes/TileSet.xml:528
+#: doc/classes/TileSet.xml:538
msgid "Sets a light occluder for the tile."
msgstr ""
-#: doc/classes/TileSet.xml:539
+#: doc/classes/TileSet.xml:549
msgid "Sets the tile's material."
msgstr ""
-#: doc/classes/TileSet.xml:550
+#: doc/classes/TileSet.xml:560
msgid "Sets the tile's modulation color."
msgstr ""
-#: doc/classes/TileSet.xml:561
+#: doc/classes/TileSet.xml:571
msgid "Sets the tile's name."
msgstr ""
-#: doc/classes/TileSet.xml:572
+#: doc/classes/TileSet.xml:582
msgid "Sets the tile's navigation polygon."
msgstr ""
-#: doc/classes/TileSet.xml:583
+#: doc/classes/TileSet.xml:593
msgid "Sets an offset for the tile's navigation polygon."
msgstr ""
-#: doc/classes/TileSet.xml:594
+#: doc/classes/TileSet.xml:604
msgid ""
"Sets the tile's normal map texture.\n"
"[b]Note:[/b] Godot expects the normal map to use X+, Y-, and Z+ coordinates. "
@@ -51095,48 +51800,48 @@ msgid ""
"a comparison of normal map coordinates expected by popular engines."
msgstr ""
-#: doc/classes/TileSet.xml:606
+#: doc/classes/TileSet.xml:616
msgid "Sets an offset for the tile's light occluder."
msgstr ""
-#: doc/classes/TileSet.xml:617
+#: doc/classes/TileSet.xml:627
msgid ""
"Sets the tile's sub-region in the texture. This is common in texture atlases."
msgstr ""
-#: doc/classes/TileSet.xml:630
+#: doc/classes/TileSet.xml:640
msgid "Sets a shape for the tile, enabling collision."
msgstr ""
-#: doc/classes/TileSet.xml:643
+#: doc/classes/TileSet.xml:653
msgid "Sets the offset of a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:656
+#: doc/classes/TileSet.xml:666
msgid "Enables one-way collision on a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:681
+#: doc/classes/TileSet.xml:691
msgid "Sets a [Transform2D] on a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:692
+#: doc/classes/TileSet.xml:702
msgid "Sets an array of shapes for the tile, enabling collision."
msgstr ""
-#: doc/classes/TileSet.xml:703
+#: doc/classes/TileSet.xml:713
msgid "Sets the tile's texture."
msgstr ""
-#: doc/classes/TileSet.xml:714
+#: doc/classes/TileSet.xml:724
msgid "Sets the tile's texture offset."
msgstr ""
-#: doc/classes/TileSet.xml:725
+#: doc/classes/TileSet.xml:735
msgid "Sets the tile's [enum TileMode]."
msgstr ""
-#: doc/classes/TileSet.xml:736
+#: doc/classes/TileSet.xml:746
msgid "Sets the tile's drawing index."
msgstr ""
@@ -51147,14 +51852,16 @@ msgstr ""
#: doc/classes/Timer.xml:7
msgid ""
"Counts down a specified interval and emits a signal on reaching 0. Can be "
-"set to repeat or \"one-shot\" mode."
+"set to repeat or \"one-shot\" mode.\n"
+"[b]Note:[/b] To create an one-shot timer without instantiating a node, use "
+"[method SceneTree.create_timer]."
msgstr ""
-#: doc/classes/Timer.xml:16
+#: doc/classes/Timer.xml:17
msgid "Returns [code]true[/code] if the timer is stopped."
msgstr ""
-#: doc/classes/Timer.xml:25
+#: doc/classes/Timer.xml:26
msgid ""
"Starts the timer. Sets [code]wait_time[/code] to [code]time_sec[/code] if "
"[code]time_sec > 0[/code]. This also resets the remaining time to "
@@ -51162,11 +51869,11 @@ msgid ""
"[b]Note:[/b] this method will not resume a paused timer. See [member paused]."
msgstr ""
-#: doc/classes/Timer.xml:33
+#: doc/classes/Timer.xml:34
msgid "Stops the timer."
msgstr ""
-#: doc/classes/Timer.xml:39
+#: doc/classes/Timer.xml:40
msgid ""
"If [code]true[/code], the timer will automatically start when entering the "
"scene tree.\n"
@@ -51174,40 +51881,40 @@ msgid ""
"the timer enters the scene tree and starts."
msgstr ""
-#: doc/classes/Timer.xml:43
+#: doc/classes/Timer.xml:44
msgid ""
"If [code]true[/code], the timer will stop when reaching 0. If [code]false[/"
"code], it will restart."
msgstr ""
-#: doc/classes/Timer.xml:46
+#: doc/classes/Timer.xml:47
msgid ""
"If [code]true[/code], the timer is paused and will not process until it is "
"unpaused again, even if [method start] is called."
msgstr ""
-#: doc/classes/Timer.xml:49
+#: doc/classes/Timer.xml:50
msgid "Processing mode. See [enum TimerProcessMode]."
msgstr ""
-#: doc/classes/Timer.xml:52
+#: doc/classes/Timer.xml:53
msgid ""
"The timer's remaining time in seconds. Returns 0 if the timer is inactive.\n"
"[b]Note:[/b] You cannot set this value. To change the timer's remaining "
"time, use [method start]."
msgstr ""
-#: doc/classes/Timer.xml:56
+#: doc/classes/Timer.xml:57
msgid "Wait time in seconds."
msgstr ""
-#: doc/classes/Timer.xml:68
+#: doc/classes/Timer.xml:69
msgid ""
"Update the timer during the physics step at each frame (fixed framerate "
"processing)."
msgstr ""
-#: doc/classes/Timer.xml:71
+#: doc/classes/Timer.xml:72
msgid "Update the timer during the idle time at each frame."
msgstr ""
@@ -51286,60 +51993,66 @@ msgstr ""
#: doc/classes/Transform.xml:7
msgid ""
-"Represents one or many transformations in 3D space such as translation, "
-"rotation, or scaling. It consists of a [member basis] and an [member "
-"origin]. It is similar to a 3×4 matrix."
+"3×4 matrix (3 rows, 4 columns) used for 3D linear transformations. It can "
+"represent transformations such as translation, rotation, or scaling. It "
+"consists of a [member basis] (first 3 columns) and a [Vector3] for the "
+"[member origin] (last column).\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
msgstr ""
-#: doc/classes/Transform.xml:26
+#: doc/classes/Transform.xml:28
msgid ""
-"Constructs the Transform from four [Vector3]. Each axis corresponds to local "
-"basis vectors (some of which may be scaled)."
+"Constructs a Transform from four [Vector3] values (matrix columns). Each "
+"axis corresponds to local basis vectors (some of which may be scaled)."
msgstr ""
-#: doc/classes/Transform.xml:37
-msgid "Constructs the Transform from a [Basis] and [Vector3]."
+#: doc/classes/Transform.xml:39
+msgid "Constructs a Transform from a [Basis] and [Vector3]."
msgstr ""
-#: doc/classes/Transform.xml:46
-msgid "Constructs the Transform from a [Transform2D]."
+#: doc/classes/Transform.xml:48
+msgid "Constructs a Transform from a [Transform2D]."
msgstr ""
-#: doc/classes/Transform.xml:55
+#: doc/classes/Transform.xml:57
msgid ""
-"Constructs the Transform from a [Quat]. The origin will be Vector3(0, 0, 0)."
+"Constructs a Transform from a [Quat]. The origin will be [code]Vector3(0, 0, "
+"0)[/code]."
msgstr ""
-#: doc/classes/Transform.xml:64
+#: doc/classes/Transform.xml:66
msgid ""
"Constructs the Transform from a [Basis]. The origin will be Vector3(0, 0, 0)."
msgstr ""
-#: doc/classes/Transform.xml:71
+#: doc/classes/Transform.xml:73 doc/classes/Transform2D.xml:51
msgid ""
"Returns the inverse of the transform, under the assumption that the "
"transformation is composed of rotation, scaling and translation."
msgstr ""
-#: doc/classes/Transform.xml:82
-msgid "Interpolates the transform to other Transform by weight amount (0-1)."
+#: doc/classes/Transform.xml:84
+msgid ""
+"Interpolates the transform to other Transform by weight amount (on the range "
+"of 0.0 to 1.0)."
msgstr ""
-#: doc/classes/Transform.xml:89 doc/classes/Transform2D.xml:106
+#: doc/classes/Transform.xml:91
msgid ""
"Returns the inverse of the transform, under the assumption that the "
"transformation is composed of rotation and translation (no scaling, use "
"affine_inverse for transforms with scaling)."
msgstr ""
-#: doc/classes/Transform.xml:98 doc/classes/Transform2D.xml:115
+#: doc/classes/Transform.xml:100 doc/classes/Transform2D.xml:119
msgid ""
"Returns [code]true[/code] if this transform and [code]transform[/code] are "
"approximately equal, by calling [code]is_equal_approx[/code] on each "
"component."
msgstr ""
-#: doc/classes/Transform.xml:109
+#: doc/classes/Transform.xml:111
msgid ""
"Returns a copy of the transform rotated such that its -Z axis points towards "
"the [code]target[/code] position.\n"
@@ -51349,25 +52062,25 @@ msgid ""
"Operations take place in global space."
msgstr ""
-#: doc/classes/Transform.xml:118 doc/classes/Transform2D.xml:122
+#: doc/classes/Transform.xml:120
msgid ""
"Returns the transform with the basis orthogonal (90 degrees), and normalized "
"axis vectors."
msgstr ""
-#: doc/classes/Transform.xml:129
+#: doc/classes/Transform.xml:131
msgid ""
"Rotates the transform around the given axis by the given angle (in radians), "
"using matrix multiplication. The axis must be a normalized vector."
msgstr ""
-#: doc/classes/Transform.xml:138
+#: doc/classes/Transform.xml:140
msgid ""
"Scales basis and origin of the transform by the given scale factor, using "
"matrix multiplication."
msgstr ""
-#: doc/classes/Transform.xml:147 doc/classes/Transform2D.xml:149
+#: doc/classes/Transform.xml:149 doc/classes/Transform2D.xml:153
msgid ""
"Translates the transform by the given offset, relative to the transform's "
"basis vectors.\n"
@@ -51375,152 +52088,162 @@ msgid ""
"multiplication."
msgstr ""
-#: doc/classes/Transform.xml:157
+#: doc/classes/Transform.xml:159
msgid ""
"Transforms the given [Vector3], [Plane], [AABB], or [PackedVector3Array] by "
"this transform."
msgstr ""
-#: doc/classes/Transform.xml:166
+#: doc/classes/Transform.xml:168
msgid ""
"Inverse-transforms the given [Vector3], [Plane], [AABB], or "
"[PackedVector3Array] by this transform."
msgstr ""
-#: doc/classes/Transform.xml:172
+#: doc/classes/Transform.xml:174
msgid ""
"The basis is a matrix containing 3 [Vector3] as its columns: X axis, Y axis, "
"and Z axis. These vectors can be interpreted as the basis vectors of local "
"coordinate system traveling with the object."
msgstr ""
-#: doc/classes/Transform.xml:175
-msgid "The translation offset of the transform."
+#: doc/classes/Transform.xml:177
+msgid ""
+"The translation offset of the transform (column 3, the fourth column). "
+"Equivalent to array index [code]3[/code]."
msgstr ""
-#: doc/classes/Transform.xml:180
+#: doc/classes/Transform.xml:182
msgid ""
"[Transform] with no translation, rotation or scaling applied. When applied "
"to other data structures, [constant IDENTITY] performs no transformation."
msgstr ""
-#: doc/classes/Transform.xml:183
+#: doc/classes/Transform.xml:185
msgid "[Transform] with mirroring applied perpendicular to the YZ plane."
msgstr ""
-#: doc/classes/Transform.xml:186
+#: doc/classes/Transform.xml:188
msgid "[Transform] with mirroring applied perpendicular to the XZ plane."
msgstr ""
-#: doc/classes/Transform.xml:189
+#: doc/classes/Transform.xml:191
msgid "[Transform] with mirroring applied perpendicular to the XY plane."
msgstr ""
#: doc/classes/Transform2D.xml:4
-msgid "2D transformation (3×2 matrix)."
+msgid "2D transformation (2×3 matrix)."
msgstr ""
#: doc/classes/Transform2D.xml:7
msgid ""
-"Represents one or many transformations in 2D space such as translation, "
-"rotation, or scaling. It consists of two [member x] and [member y] "
-"[Vector2]s and an [member origin]. It is similar to a 3×2 matrix."
+"2×3 matrix (2 rows, 3 columns) used for 2D linear transformations. It can "
+"represent transformations such as translation, rotation, or scaling. It "
+"consists of a three [Vector2] values: [member x], [member y], and the "
+"[member origin].\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
msgstr ""
-#: doc/classes/Transform2D.xml:18
+#: doc/classes/Transform2D.xml:20
msgid "Constructs the transform from a 3D [Transform]."
msgstr ""
-#: doc/classes/Transform2D.xml:31
+#: doc/classes/Transform2D.xml:33
msgid ""
-"Constructs the transform from 3 [Vector2]s representing x, y, and origin."
+"Constructs the transform from 3 [Vector2] values representing [member x], "
+"[member y], and the [member origin] (the three column vectors)."
msgstr ""
-#: doc/classes/Transform2D.xml:42
+#: doc/classes/Transform2D.xml:44
msgid "Constructs the transform from a given angle (in radians) and position."
msgstr ""
-#: doc/classes/Transform2D.xml:58
-msgid "Transforms the given vector by this transform's basis (no translation)."
+#: doc/classes/Transform2D.xml:60
+msgid ""
+"Returns a vector transformed (multiplied) by the basis matrix.\n"
+"This method does not account for translation (the origin vector)."
msgstr ""
-#: doc/classes/Transform2D.xml:67
+#: doc/classes/Transform2D.xml:70
msgid ""
-"Inverse-transforms the given vector by this transform's basis (no "
-"translation)."
+"Returns a vector transformed (multiplied) by the inverse basis matrix.\n"
+"This method does not account for translation (the origin vector)."
msgstr ""
-#: doc/classes/Transform2D.xml:74
+#: doc/classes/Transform2D.xml:78
msgid "Returns the transform's origin (translation)."
msgstr ""
-#: doc/classes/Transform2D.xml:81
+#: doc/classes/Transform2D.xml:85
msgid "Returns the transform's rotation (in radians)."
msgstr ""
-#: doc/classes/Transform2D.xml:88
+#: doc/classes/Transform2D.xml:92
msgid "Returns the scale."
msgstr ""
-#: doc/classes/Transform2D.xml:99
+#: doc/classes/Transform2D.xml:103
msgid ""
"Returns a transform interpolated between this transform and another by a "
-"given weight (0-1)."
+"given weight (on the range of 0.0 to 1.0)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:110
+msgid ""
+"Returns the inverse of the transform, under the assumption that the "
+"transformation is composed of rotation and translation (no scaling, use "
+"[method affine_inverse] for transforms with scaling)."
msgstr ""
-#: doc/classes/Transform2D.xml:131
+#: doc/classes/Transform2D.xml:126
+msgid ""
+"Returns the transform with the basis orthogonal (90 degrees), and normalized "
+"axis vectors (scale of 1 or -1)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:135
msgid ""
"Rotates the transform by the given angle (in radians), using matrix "
"multiplication."
msgstr ""
-#: doc/classes/Transform2D.xml:140
+#: doc/classes/Transform2D.xml:144
msgid ""
"Scales the transform by the given scale factor, using matrix multiplication."
msgstr ""
-#: doc/classes/Transform2D.xml:159
+#: doc/classes/Transform2D.xml:163
msgid ""
"Transforms the given [Vector2], [Rect2], or [PackedVector2Array] by this "
"transform."
msgstr ""
-#: doc/classes/Transform2D.xml:168
+#: doc/classes/Transform2D.xml:172
msgid ""
"Inverse-transforms the given [Vector2], [Rect2], or [PackedVector2Array] by "
"this transform."
msgstr ""
-#: doc/classes/Transform2D.xml:174
-msgid "The transform's translation offset."
-msgstr ""
-
-#: doc/classes/Transform2D.xml:177
-msgid ""
-"The X axis of 2×2 basis matrix containing 2 [Vector2]s as its columns: X "
-"axis and Y axis. These vectors can be interpreted as the basis vectors of "
-"local coordinate system traveling with the object."
-msgstr ""
-
-#: doc/classes/Transform2D.xml:180
+#: doc/classes/Transform2D.xml:178
msgid ""
-"The Y axis of 2×2 basis matrix containing 2 [Vector2]s as its columns: X "
-"axis and Y axis. These vectors can be interpreted as the basis vectors of "
-"local coordinate system traveling with the object."
+"The origin vector (column 2, the third column). Equivalent to array index "
+"[code]2[/code]. The origin vector represents translation."
msgstr ""
-#: doc/classes/Transform2D.xml:185
+#: doc/classes/Transform2D.xml:189
msgid ""
-"[Transform2D] with no translation, rotation or scaling applied. When applied "
-"to other data structures, [constant IDENTITY] performs no transformation."
+"The identity [Transform2D] with no translation, rotation or scaling applied. "
+"When applied to other data structures, [constant IDENTITY] performs no "
+"transformation."
msgstr ""
-#: doc/classes/Transform2D.xml:188
-msgid "[Transform2D] with mirroring applied parallel to the X axis."
+#: doc/classes/Transform2D.xml:192
+msgid "The [Transform2D] that will flip something along the X axis."
msgstr ""
-#: doc/classes/Transform2D.xml:191
-msgid "[Transform2D] with mirroring applied parallel to the Y axis."
+#: doc/classes/Transform2D.xml:195
+msgid "The [Transform2D] that will flip something along the Y axis."
msgstr ""
#: doc/classes/Translation.xml:4
@@ -52184,7 +52907,8 @@ msgid "Returns the column's cell mode."
msgstr ""
#: doc/classes/TreeItem.xml:121
-msgid "Returns the TreeItem's child items."
+msgid ""
+"Returns the TreeItem's first child item or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:130
@@ -52216,28 +52940,32 @@ msgid "Returns the icon [Texture2D] region as [Rect2]."
msgstr ""
#: doc/classes/TreeItem.xml:199
-msgid "Returns the next TreeItem in the tree."
+msgid ""
+"Returns the next TreeItem in the tree or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:208
msgid ""
-"Returns the next visible TreeItem in the tree.\n"
+"Returns the next visible TreeItem in the tree or a null object if there is "
+"none.\n"
"If [code]wrap[/code] is enabled, the method will wrap around to the first "
"visible element in the tree when called on the last visible element, "
"otherwise it returns [code]null[/code]."
msgstr ""
#: doc/classes/TreeItem.xml:216
-msgid "Returns the parent TreeItem."
+msgid "Returns the parent TreeItem or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:223
-msgid "Returns the previous TreeItem in the tree."
+msgid ""
+"Returns the previous TreeItem in the tree or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:232
msgid ""
-"Returns the previous visible TreeItem in the tree.\n"
+"Returns the previous visible TreeItem in the tree or a null object if there "
+"is none.\n"
"If [code]wrap[/code] is enabled, the method will wrap around to the last "
"visible element in the tree when called on the first visible element, "
"otherwise it returns [code]null[/code]."
@@ -52747,6 +53475,10 @@ msgid ""
"A simple server that opens a UDP socket and returns connected "
"[PacketPeerUDP] upon receiving new packets. See also [method PacketPeerUDP."
"connect_to_host].\n"
+"After starting the server ([method listen]), you will need to [method poll] "
+"it at regular intervals (e.g. inside [method Node._process]) for it to "
+"process new packets, delivering them to the appropriate [PacketPeerUDP], and "
+"taking new connections.\n"
"Below a small example of how it can be used:\n"
"[codeblock]\n"
"# server.gd\n"
@@ -52759,6 +53491,7 @@ msgid ""
" server.listen(4242)\n"
"\n"
"func _process(delta):\n"
+" server.poll() # Important!\n"
" if server.is_connection_available():\n"
" var peer : PacketPeerUDP = server.take_connection()\n"
" var pkt = peer.get_packet()\n"
@@ -52794,35 +53527,55 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/UDPServer.xml:60
+#: doc/classes/UDPServer.xml:62
msgid ""
-"Returns [code]true[/code] if a packet with a new address/port combination is "
-"received on the socket."
+"Returns [code]true[/code] if a packet with a new address/port combination "
+"was received on the socket."
msgstr ""
-#: doc/classes/UDPServer.xml:67
+#: doc/classes/UDPServer.xml:69
msgid ""
"Returns [code]true[/code] if the socket is open and listening on a port."
msgstr ""
-#: doc/classes/UDPServer.xml:78
+#: doc/classes/UDPServer.xml:80
msgid ""
"Starts the server by opening a UDP socket listening on the given port. You "
"can optionally specify a [code]bind_address[/code] to only listen for "
"packets sent to that address. See also [method PacketPeerUDP.listen]."
msgstr ""
-#: doc/classes/UDPServer.xml:85
+#: doc/classes/UDPServer.xml:87
+msgid ""
+"Call this method at regular intervals (e.g. inside [method Node._process]) "
+"to process new packets. And packet from known address/port pair will be "
+"delivered to the appropriate [PacketPeerUDP], any packet received from an "
+"unknown address/port pair will be added as a pending connection (see [method "
+"is_connection_available], [method take_connection]). The maximum number of "
+"pending connection is defined via [member max_pending_connections]."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:94
+msgid ""
+"Stops the server, closing the UDP socket if open. Will close all connected "
+"[PacketPeerUDP] accepted via [method take_connection] (remote peers will not "
+"be notified)."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:101
msgid ""
-"Stops the server, closing the UDP socket if open. Will not disconnect any "
-"connected [PacketPeerUDP]."
+"Returns the first pending connection (connected to the appropriate address/"
+"port). Will return [code]null[/code] if no new connection is available. See "
+"also [method is_connection_available], [method PacketPeerUDP."
+"connect_to_host]."
msgstr ""
-#: doc/classes/UDPServer.xml:92
+#: doc/classes/UDPServer.xml:107
msgid ""
-"Returns a [PacketPeerUDP] connected to the address/port combination of the "
-"first packet in queue. Will return [code]null[/code] if no packet is in "
-"queue. See also [method PacketPeerUDP.connect_to_host]."
+"Define the maximum number of pending connections, during [method poll], any "
+"new pending connection exceeding that value will be automatically dropped. "
+"Setting this value to [code]0[/code] effectively prevents any new pending "
+"connection to be accepted (e.g. when all your players have connected)."
msgstr ""
#: doc/classes/UndoRedo.xml:4
@@ -53463,24 +54216,26 @@ msgstr ""
#: doc/classes/Vector2.xml:46
msgid ""
-"Returns the vector's angle in radians with respect to the X axis, or [code]"
-"(1, 0)[/code] vector.\n"
+"Returns this vector's angle with respect to the X axis, or [code](1, 0)[/"
+"code] vector, in radians.\n"
"Equivalent to the result of [method @GDScript.atan2] when called with the "
-"vector's [member x] and [member y] as parameters: [code]atan2(x, y)[/code]."
+"vector's [member y] and [member x] as parameters: [code]atan2(y, x)[/code]."
msgstr ""
#: doc/classes/Vector2.xml:56
-msgid "Returns the angle in radians between the two vectors."
+msgid "Returns the angle to the given vector, in radians."
msgstr ""
#: doc/classes/Vector2.xml:65
msgid ""
-"Returns the angle in radians between the line connecting the two points and "
-"the X coordinate."
+"Returns the angle between the line connecting the two points and the X axis, "
+"in radians."
msgstr ""
-#: doc/classes/Vector2.xml:72 doc/classes/Vector2i.xml:46
-msgid "Returns the ratio of [member x] to [member y]."
+#: doc/classes/Vector2.xml:72
+msgid ""
+"Returns the aspect ratio of this vector, the ratio of [member x] to [member "
+"y]."
msgstr ""
#: doc/classes/Vector2.xml:81 doc/classes/Vector3.xml:59
@@ -53489,24 +54244,27 @@ msgid ""
msgstr ""
#: doc/classes/Vector2.xml:88
-msgid "Returns the vector with all components rounded up."
+msgid ""
+"Returns the vector with all components rounded up (towards positive "
+"infinity)."
msgstr ""
#: doc/classes/Vector2.xml:97
-msgid "Returns the vector with a maximum length."
+msgid ""
+"Returns the vector with a maximum length by limiting its length to "
+"[code]length[/code]."
msgstr ""
#: doc/classes/Vector2.xml:106
-msgid ""
-"Returns the 2-dimensional analog of the cross product with the given vector."
+msgid "Returns the cross product of this vector and [code]with[/code]."
msgstr ""
#: doc/classes/Vector2.xml:121
msgid ""
"Cubically interpolates between this vector and [code]b[/code] using "
"[code]pre_a[/code] and [code]post_b[/code] as handles, and returns the "
-"result at position [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation."
+"result at position [code]t[/code]. [code]t[/code] is on the range of 0.0 to "
+"1.0, representing the amount of interpolation."
msgstr ""
#: doc/classes/Vector2.xml:130 doc/classes/Vector3.xml:99
@@ -53514,182 +54272,198 @@ msgid ""
"Returns the normalized vector pointing from this vector to [code]b[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:139
+#: doc/classes/Vector2.xml:139 doc/classes/Vector3.xml:108
msgid ""
-"Returns the squared distance to vector [code]b[/code]. Prefer this function "
-"over [method distance_to] if you need to sort vectors or need the squared "
-"distance for some formula."
+"Returns the squared distance between this vector and [code]b[/code].\n"
+"This method runs faster than [method distance_to], so prefer it if you need "
+"to compare vectors or need the squared distance for some formula."
msgstr ""
-#: doc/classes/Vector2.xml:148
-msgid "Returns the distance to vector [code]b[/code]."
+#: doc/classes/Vector2.xml:149
+msgid "Returns the distance between this vector and [code]to[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:157
-msgid "Returns the dot product with vector [code]b[/code]."
+#: doc/classes/Vector2.xml:158
+msgid ""
+"Returns the dot product of this vector and [code]with[/code]. This can be "
+"used to compare the angle between two vectors. For example, this can be used "
+"to determine whether an enemy is facing the player.\n"
+"The dot product will be [code]0[/code] for a straight angle (90 degrees), "
+"greater than 0 for angles narrower than 90 degrees and lower than 0 for "
+"angles wider than 90 degrees.\n"
+"When using unit (normalized) vectors, the result will always be between "
+"[code]-1.0[/code] (180 degree angle) when the vectors are facing opposite "
+"directions, and [code]1.0[/code] (0 degree angle) when the vectors are "
+"aligned.\n"
+"[b]Note:[/b] [code]a.dot(b)[/code] is equivalent to [code]b.dot(a)[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:164
-msgid "Returns the vector with all components rounded down."
+#: doc/classes/Vector2.xml:168
+msgid ""
+"Returns the vector with all components rounded down (towards negative "
+"infinity)."
msgstr ""
-#: doc/classes/Vector2.xml:173 doc/classes/Vector3.xml:149
+#: doc/classes/Vector2.xml:177 doc/classes/Vector3.xml:153
msgid ""
"Returns [code]true[/code] if this vector and [code]v[/code] are "
"approximately equal, by running [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/Vector2.xml:180 doc/classes/Vector3.xml:156
-msgid "Returns [code]true[/code] if the vector is normalized."
+#: doc/classes/Vector2.xml:184 doc/classes/Vector3.xml:160
+msgid ""
+"Returns [code]true[/code] if the vector is normalized, and false otherwise."
msgstr ""
-#: doc/classes/Vector2.xml:187 doc/classes/Vector3.xml:163
-msgid "Returns the vector's length."
+#: doc/classes/Vector2.xml:191 doc/classes/Vector3.xml:167
+msgid "Returns the length (magnitude) of this vector."
msgstr ""
-#: doc/classes/Vector2.xml:194
+#: doc/classes/Vector2.xml:198 doc/classes/Vector3.xml:174
msgid ""
-"Returns the vector's length squared. Prefer this method over [method length] "
-"if you need to sort vectors or need the squared length for some formula."
+"Returns the squared length (squared magnitude) of this vector.\n"
+"This method runs faster than [method length], so prefer it if you need to "
+"compare vectors or need the squared distance for some formula."
msgstr ""
-#: doc/classes/Vector2.xml:205
+#: doc/classes/Vector2.xml:210 doc/classes/Vector3.xml:186
msgid ""
"Returns the result of the linear interpolation between this vector and "
-"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation."
+"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is on the range of "
+"0.0 to 1.0, representing the amount of interpolation."
msgstr ""
-#: doc/classes/Vector2.xml:216 doc/classes/Vector3.xml:206
+#: doc/classes/Vector2.xml:221
msgid ""
"Moves the vector toward [code]to[/code] by the fixed [code]delta[/code] "
"amount."
msgstr ""
-#: doc/classes/Vector2.xml:223 doc/classes/Vector3.xml:213
+#: doc/classes/Vector2.xml:228 doc/classes/Vector3.xml:218
msgid ""
"Returns the vector scaled to unit length. Equivalent to [code]v / v.length()"
"[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:232 doc/classes/Vector3.xml:231
+#: doc/classes/Vector2.xml:237 doc/classes/Vector3.xml:236
msgid ""
-"Returns a vector composed of the [code]fposmod[/code] of this vector's "
+"Returns a vector composed of the [method @GDScript.fposmod] of this vector's "
"components and [code]mod[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:241 doc/classes/Vector3.xml:240
+#: doc/classes/Vector2.xml:246 doc/classes/Vector3.xml:245
msgid ""
-"Returns a vector composed of the [code]fposmod[/code] of this vector's "
+"Returns a vector composed of the [method @GDScript.fposmod] of this vector's "
"components and [code]modv[/code]'s components."
msgstr ""
-#: doc/classes/Vector2.xml:250 doc/classes/Vector3.xml:249
+#: doc/classes/Vector2.xml:255
msgid "Returns the vector projected onto the vector [code]b[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:259 doc/classes/Vector3.xml:258
+#: doc/classes/Vector2.xml:264
msgid "Returns the vector reflected from a plane defined by the given normal."
msgstr ""
-#: doc/classes/Vector2.xml:268
+#: doc/classes/Vector2.xml:273
msgid ""
"Returns the vector rotated by [code]phi[/code] radians. See also [method "
"@GDScript.deg2rad]."
msgstr ""
-#: doc/classes/Vector2.xml:275 doc/classes/Vector3.xml:276
+#: doc/classes/Vector2.xml:280
msgid ""
"Returns the vector with all components rounded to the nearest integer, with "
"halfway cases rounded away from zero."
msgstr ""
-#: doc/classes/Vector2.xml:282 doc/classes/Vector2i.xml:53
-#: doc/classes/Vector3.xml:283 doc/classes/Vector3i.xml:55
+#: doc/classes/Vector2.xml:287
msgid ""
"Returns the vector with each component set to one or negative one, depending "
-"on the signs of the components."
+"on the signs of the components, or zero if the component is zero, by calling "
+"[method @GDScript.sign] on each component."
msgstr ""
-#: doc/classes/Vector2.xml:293 doc/classes/Vector3.xml:294
+#: doc/classes/Vector2.xml:298 doc/classes/Vector3.xml:299
msgid ""
"Returns the result of spherical linear interpolation between this vector and "
-"[code]b[/code], by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation.\n"
+"[code]b[/code], by amount [code]t[/code]. [code]t[/code] is on the range of "
+"0.0 to 1.0, representing the amount of interpolation.\n"
"[b]Note:[/b] Both vectors must be normalized."
msgstr ""
-#: doc/classes/Vector2.xml:303 doc/classes/Vector3.xml:304
-msgid ""
-"Returns the component of the vector along a plane defined by the given "
-"normal."
+#: doc/classes/Vector2.xml:308 doc/classes/Vector3.xml:309
+msgid "Returns this vector slid along a plane defined by the given normal."
msgstr ""
-#: doc/classes/Vector2.xml:312 doc/classes/Vector3.xml:313
-msgid "Returns the vector snapped to a grid with the given size."
+#: doc/classes/Vector2.xml:317 doc/classes/Vector3.xml:318
+msgid ""
+"Returns this vector with each component snapped to the nearest multiple of "
+"[code]step[/code]. This can also be used to round to an arbitrary number of "
+"decimals."
msgstr ""
-#: doc/classes/Vector2.xml:319
-msgid "Returns a perpendicular vector."
+#: doc/classes/Vector2.xml:324
+msgid ""
+"Returns a perpendicular vector rotated 90 degrees counter-clockwise compared "
+"to the original, with the same length."
msgstr ""
-#: doc/classes/Vector2.xml:325 doc/classes/Vector2i.xml:59
-#: doc/classes/Vector3.xml:326 doc/classes/Vector3i.xml:61
+#: doc/classes/Vector2.xml:330 doc/classes/Vector2i.xml:59
+#: doc/classes/Vector3.xml:332 doc/classes/Vector3i.xml:61
msgid ""
"The vector's X component. Also accessible by using the index position [code]"
"[0][/code]."
msgstr ""
-#: doc/classes/Vector2.xml:328 doc/classes/Vector2i.xml:62
-#: doc/classes/Vector3.xml:329 doc/classes/Vector3i.xml:64
+#: doc/classes/Vector2.xml:333 doc/classes/Vector2i.xml:62
+#: doc/classes/Vector3.xml:335 doc/classes/Vector3i.xml:64
msgid ""
"The vector's Y component. Also accessible by using the index position [code]"
"[1][/code]."
msgstr ""
-#: doc/classes/Vector2.xml:333 doc/classes/Vector2i.xml:67
+#: doc/classes/Vector2.xml:338 doc/classes/Vector2i.xml:67
#: doc/classes/Vector3i.xml:72
msgid "Enumerated value for the X axis."
msgstr ""
-#: doc/classes/Vector2.xml:336 doc/classes/Vector2i.xml:70
+#: doc/classes/Vector2.xml:341 doc/classes/Vector2i.xml:70
#: doc/classes/Vector3i.xml:75
msgid "Enumerated value for the Y axis."
msgstr ""
-#: doc/classes/Vector2.xml:339 doc/classes/Vector2i.xml:73
-#: doc/classes/Vector3.xml:346 doc/classes/Vector3i.xml:81
-msgid "Zero vector."
+#: doc/classes/Vector2.xml:344 doc/classes/Vector2i.xml:73
+#: doc/classes/Vector3.xml:352 doc/classes/Vector3i.xml:81
+msgid "Zero vector, a vector with all components set to [code]0[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:342 doc/classes/Vector2i.xml:76
-#: doc/classes/Vector3.xml:349 doc/classes/Vector3i.xml:84
-msgid "One vector."
+#: doc/classes/Vector2.xml:347 doc/classes/Vector2i.xml:76
+#: doc/classes/Vector3.xml:355 doc/classes/Vector3i.xml:84
+msgid "One vector, a vector with all components set to [code]1[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:345 doc/classes/Vector3.xml:352
-msgid "Infinity vector."
+#: doc/classes/Vector2.xml:350 doc/classes/Vector3.xml:358
+msgid ""
+"Infinity vector, a vector with all components set to [constant @GDScript."
+"INF]."
msgstr ""
-#: doc/classes/Vector2.xml:348 doc/classes/Vector2i.xml:79
-#: doc/classes/Vector3.xml:355 doc/classes/Vector3i.xml:87
-msgid "Left unit vector."
+#: doc/classes/Vector2.xml:353 doc/classes/Vector2i.xml:79
+msgid "Left unit vector. Represents the direction of left."
msgstr ""
-#: doc/classes/Vector2.xml:351 doc/classes/Vector2i.xml:82
-#: doc/classes/Vector3.xml:358 doc/classes/Vector3i.xml:90
-msgid "Right unit vector."
+#: doc/classes/Vector2.xml:356 doc/classes/Vector2i.xml:82
+msgid "Right unit vector. Represents the direction of right."
msgstr ""
-#: doc/classes/Vector2.xml:354 doc/classes/Vector2i.xml:85
-#: doc/classes/Vector3.xml:361 doc/classes/Vector3i.xml:93
-msgid "Up unit vector."
+#: doc/classes/Vector2.xml:359 doc/classes/Vector2i.xml:85
+msgid "Up unit vector. Y is down in 2D, so this vector points -Y."
msgstr ""
-#: doc/classes/Vector2.xml:357 doc/classes/Vector2i.xml:88
-#: doc/classes/Vector3.xml:364 doc/classes/Vector3i.xml:96
-msgid "Down unit vector."
+#: doc/classes/Vector2.xml:362 doc/classes/Vector2i.xml:88
+msgid "Down unit vector. Y is down in 2D, so this vector points +Y."
msgstr ""
#: doc/classes/Vector2i.xml:4
@@ -53718,6 +54492,16 @@ msgid ""
"will be truncated."
msgstr ""
+#: doc/classes/Vector2i.xml:46
+msgid "Returns the ratio of [member x] to [member y]."
+msgstr ""
+
+#: doc/classes/Vector2i.xml:53 doc/classes/Vector3i.xml:55
+msgid ""
+"Returns the vector with each component set to one or negative one, depending "
+"on the signs of the components."
+msgstr ""
+
#: doc/classes/Vector3.xml:4
msgid "Vector used for 3D math using floating point coordinates."
msgstr ""
@@ -53742,120 +54526,170 @@ msgid "Returns a [Vector3] with the given components."
msgstr ""
#: doc/classes/Vector3.xml:50
-msgid "Returns the minimum angle to the given vector."
+msgid "Returns the minimum angle to the given vector, in radians."
msgstr ""
#: doc/classes/Vector3.xml:66
-msgid "Returns a new vector with all components rounded up."
+msgid ""
+"Returns a new vector with all components rounded up (towards positive "
+"infinity)."
msgstr ""
#: doc/classes/Vector3.xml:75
-msgid "Returns the cross product with [code]b[/code]."
+msgid "Returns the cross product of this vector and [code]b[/code]."
msgstr ""
#: doc/classes/Vector3.xml:90
msgid ""
"Performs a cubic interpolation between vectors [code]pre_a[/code], [code]a[/"
"code], [code]b[/code], [code]post_b[/code] ([code]a[/code] is current), by "
-"the given amount [code]t[/code]. [code]t[/code] is in the range of [code]0.0 "
-"- 1.0[/code], representing the amount of interpolation."
-msgstr ""
-
-#: doc/classes/Vector3.xml:108
-msgid ""
-"Returns the squared distance to [code]b[/code]. Prefer this function over "
-"[method distance_to] if you need to sort vectors or need the squared "
-"distance for some formula."
+"the given amount [code]t[/code]. [code]t[/code] is on the range of 0.0 to "
+"1.0, representing the amount of interpolation."
msgstr ""
-#: doc/classes/Vector3.xml:117
-msgid "Returns the distance to [code]b[/code]."
+#: doc/classes/Vector3.xml:118
+msgid "Returns the distance between this vector and [code]b[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:126
-msgid "Returns the dot product with [code]b[/code]."
+#: doc/classes/Vector3.xml:127
+msgid ""
+"Returns the dot product of this vector and [code]b[/code]. This can be used "
+"to compare the angle between two vectors. For example, this can be used to "
+"determine whether an enemy is facing the player.\n"
+"The dot product will be [code]0[/code] for a straight angle (90 degrees), "
+"greater than 0 for angles narrower than 90 degrees and lower than 0 for "
+"angles wider than 90 degrees.\n"
+"When using unit (normalized) vectors, the result will always be between "
+"[code]-1.0[/code] (180 degree angle) when the vectors are facing opposite "
+"directions, and [code]1.0[/code] (0 degree angle) when the vectors are "
+"aligned.\n"
+"[b]Note:[/b] [code]a.dot(b)[/code] is equivalent to [code]b.dot(a)[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:133
-msgid "Returns a new vector with all components rounded down."
+#: doc/classes/Vector3.xml:137
+msgid ""
+"Returns a new vector with all components rounded down (towards negative "
+"infinity)."
msgstr ""
-#: doc/classes/Vector3.xml:140
+#: doc/classes/Vector3.xml:144
msgid ""
"Returns the inverse of the vector. This is the same as [code]Vector3( 1.0 / "
"v.x, 1.0 / v.y, 1.0 / v.z )[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:170
+#: doc/classes/Vector3.xml:193 doc/classes/Vector3i.xml:41
msgid ""
-"Returns the vector's length squared. Prefer this function over [method "
-"length] if you need to sort vectors or need the squared length for some "
-"formula."
+"Returns the axis of the vector's largest value. See [code]AXIS_*[/code] "
+"constants. If all components are equal, this method returns [constant "
+"AXIS_X]."
msgstr ""
-#: doc/classes/Vector3.xml:181
+#: doc/classes/Vector3.xml:200 doc/classes/Vector3i.xml:48
msgid ""
-"Returns the result of the linear interpolation between this vector and "
-"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation.."
+"Returns the axis of the vector's smallest value. See [code]AXIS_*[/code] "
+"constants. If all components are equal, this method returns [constant "
+"AXIS_Z]."
msgstr ""
-#: doc/classes/Vector3.xml:188 doc/classes/Vector3i.xml:41
+#: doc/classes/Vector3.xml:211
msgid ""
-"Returns the axis of the vector's largest value. See [code]AXIS_*[/code] "
-"constants."
+"Moves this vector toward [code]to[/code] by the fixed [code]delta[/code] "
+"amount."
msgstr ""
-#: doc/classes/Vector3.xml:195 doc/classes/Vector3i.xml:48
+#: doc/classes/Vector3.xml:227
+msgid "Returns the outer product with [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:254
+msgid "Returns this vector projected onto another vector [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:263
+msgid "Returns this vector reflected from a plane defined by the given normal."
+msgstr ""
+
+#: doc/classes/Vector3.xml:274
msgid ""
-"Returns the axis of the vector's smallest value. See [code]AXIS_*[/code] "
-"constants."
+"Rotates this vector around a given axis by [code]phi[/code] radians. The "
+"axis must be a normalized vector."
msgstr ""
-#: doc/classes/Vector3.xml:222
-msgid "Returns the outer product with [code]b[/code]."
+#: doc/classes/Vector3.xml:281
+msgid ""
+"Returns this vector with all components rounded to the nearest integer, with "
+"halfway cases rounded away from zero."
msgstr ""
-#: doc/classes/Vector3.xml:269
+#: doc/classes/Vector3.xml:288
msgid ""
-"Rotates the vector around a given axis by [code]phi[/code] radians. The axis "
-"must be a normalized vector."
+"Returns a vector with each component set to one or negative one, depending "
+"on the signs of this vector's components, or zero if the component is zero, "
+"by calling [method @GDScript.sign] on each component."
msgstr ""
-#: doc/classes/Vector3.xml:320
-msgid "Returns a diagonal matrix with the vector as main diagonal."
+#: doc/classes/Vector3.xml:325
+msgid ""
+"Returns a diagonal matrix with the vector as main diagonal.\n"
+"This is equivalent to a Basis with no rotation or shearing and this vector's "
+"components set as the scale."
msgstr ""
-#: doc/classes/Vector3.xml:332 doc/classes/Vector3i.xml:67
+#: doc/classes/Vector3.xml:338 doc/classes/Vector3i.xml:67
msgid ""
"The vector's Z component. Also accessible by using the index position [code]"
"[2][/code]."
msgstr ""
-#: doc/classes/Vector3.xml:337
+#: doc/classes/Vector3.xml:343
msgid ""
"Enumerated value for the X axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:340
+#: doc/classes/Vector3.xml:346
msgid ""
"Enumerated value for the Y axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:343
+#: doc/classes/Vector3.xml:349
msgid ""
"Enumerated value for the Z axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:367 doc/classes/Vector3i.xml:99
-msgid "Forward unit vector."
+#: doc/classes/Vector3.xml:361 doc/classes/Vector3i.xml:87
+msgid ""
+"Left unit vector. Represents the local direction of left, and the global "
+"direction of west."
msgstr ""
-#: doc/classes/Vector3.xml:370 doc/classes/Vector3i.xml:102
-msgid "Back unit vector."
+#: doc/classes/Vector3.xml:364 doc/classes/Vector3i.xml:90
+msgid ""
+"Right unit vector. Represents the local direction of right, and the global "
+"direction of east."
+msgstr ""
+
+#: doc/classes/Vector3.xml:367 doc/classes/Vector3i.xml:93
+msgid "Up unit vector."
+msgstr ""
+
+#: doc/classes/Vector3.xml:370 doc/classes/Vector3i.xml:96
+msgid "Down unit vector."
+msgstr ""
+
+#: doc/classes/Vector3.xml:373 doc/classes/Vector3i.xml:99
+msgid ""
+"Forward unit vector. Represents the local direction of forward, and the "
+"global direction of north."
+msgstr ""
+
+#: doc/classes/Vector3.xml:376 doc/classes/Vector3i.xml:102
+msgid ""
+"Back unit vector. Represents the local direction of back, and the global "
+"direction of south."
msgstr ""
#: doc/classes/Vector3i.xml:4
@@ -53904,10 +54738,14 @@ msgid ""
"directly.\n"
"[b]Note:[/b] The origin point of your VehicleBody3D will determine the "
"center of gravity of your vehicle so it is better to keep this low and move "
-"the [CollisionShape3D] and [MeshInstance3D] upwards."
+"the [CollisionShape3D] and [MeshInstance3D] upwards.\n"
+"[b]Note:[/b] This class has known issues and isn't designed to provide "
+"realistic 3D vehicle physics. If you want advanced vehicle physics, you will "
+"probably have to write your own physics integration using another "
+"[PhysicsBody3D] class."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:16
+#: doc/classes/VehicleBody3D.xml:17
msgid ""
"Slows down the vehicle by applying a braking force. The vehicle is only "
"slowed down if the wheels are in contact with a surface. The force you need "
@@ -53916,7 +54754,7 @@ msgid ""
"a value in the 25 - 30 range for hard braking."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:19
+#: doc/classes/VehicleBody3D.xml:20
msgid ""
"Accelerates the vehicle by applying an engine force. The vehicle is only "
"speed up if the wheels that have [member VehicleWheel3D.use_as_traction] set "
@@ -53929,7 +54767,7 @@ msgid ""
"A negative value will result in the vehicle reversing."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:25
+#: doc/classes/VehicleBody3D.xml:26
msgid ""
"The steering angle for the vehicle. Setting this to a non-zero value will "
"result in the vehicle turning when it's moving. Wheels that have [member "
@@ -53945,25 +54783,29 @@ msgstr ""
msgid ""
"This node needs to be used as a child node of [VehicleBody3D] and simulates "
"the behavior of one of its wheels. This node also acts as a collider to "
-"detect if the wheel is touching a surface."
+"detect if the wheel is touching a surface.\n"
+"[b]Note:[/b] This class has known issues and isn't designed to provide "
+"realistic 3D vehicle physics. If you want advanced vehicle physics, you will "
+"probably have to write your own physics integration using another "
+"[PhysicsBody3D] class."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:16
+#: doc/classes/VehicleWheel3D.xml:17
msgid "Returns the rotational speed of the wheel in revolutions per minute."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:23
+#: doc/classes/VehicleWheel3D.xml:24
msgid ""
"Returns a value between 0.0 and 1.0 that indicates whether this wheel is "
"skidding. 0.0 is skidding (the wheel has lost grip, e.g. icy terrain), 1.0 "
"means not skidding (the wheel has full grip, e.g. dry asphalt road)."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:30
+#: doc/classes/VehicleWheel3D.xml:31
msgid "Returns [code]true[/code] if this wheel is in contact with a surface."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:36
+#: doc/classes/VehicleWheel3D.xml:37
msgid ""
"Slows down the wheel by applying a braking force. The wheel is only slowed "
"down if it is in contact with a surface. The force you need to apply to "
@@ -53972,7 +54814,7 @@ msgid ""
"- 30 range for hard braking."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:39
+#: doc/classes/VehicleWheel3D.xml:40
msgid ""
"The damping applied to the spring when the spring is being compressed. This "
"value should be between 0.0 (no damping) and 1.0. A value of 0.0 means the "
@@ -53980,7 +54822,7 @@ msgid ""
"is around 0.3 for a normal car, 0.5 for a race car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:42
+#: doc/classes/VehicleWheel3D.xml:43
msgid ""
"The damping applied to the spring when relaxing. This value should be "
"between 0.0 (no damping) and 1.0. This value should always be slightly "
@@ -53988,7 +54830,7 @@ msgid ""
"damping_compression] value of 0.3, try a relaxation value of 0.5."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:45
+#: doc/classes/VehicleWheel3D.xml:46
msgid ""
"Accelerates the wheel by applying an engine force. The wheel is only speed "
"up if it is in contact with a surface. The [member RigidBody3D.mass] of the "
@@ -53999,13 +54841,13 @@ msgid ""
"A negative value will result in the wheel reversing."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:50
+#: doc/classes/VehicleWheel3D.xml:51
msgid ""
"The steering angle for the wheel. Setting this to a non-zero value will "
"result in the vehicle turning when it's moving."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:53
+#: doc/classes/VehicleWheel3D.xml:54
msgid ""
"The maximum force the spring can resist. This value should be higher than a "
"quarter of the [member RigidBody3D.mass] of the [VehicleBody3D] or the "
@@ -54013,28 +54855,28 @@ msgid ""
"obtained by a value that is about 3× to 4× this number."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:56
+#: doc/classes/VehicleWheel3D.xml:57
msgid ""
"This value defines the stiffness of the suspension. Use a value lower than "
"50 for an off-road car, a value between 50 and 100 for a race car and try "
"something around 200 for something like a Formula 1 car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:59
+#: doc/classes/VehicleWheel3D.xml:60
msgid ""
"This is the distance the suspension can travel. As Godot units are "
"equivalent to meters, keep this setting relatively low. Try a value between "
"0.1 and 0.3 depending on the type of car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:62
+#: doc/classes/VehicleWheel3D.xml:63
msgid ""
"If [code]true[/code], this wheel will be turned when the car steers. This "
"value is used in conjunction with [member VehicleBody3D.steering] and "
"ignored if you are using the per-wheel [member steering] value instead."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:65
+#: doc/classes/VehicleWheel3D.xml:66
msgid ""
"If [code]true[/code], this wheel transfers engine force to the ground to "
"propel the vehicle forward. This value is used in conjunction with [member "
@@ -54042,7 +54884,7 @@ msgid ""
"[member engine_force] value instead."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:68
+#: doc/classes/VehicleWheel3D.xml:69
msgid ""
"This determines how much grip this wheel has. It is combined with the "
"friction setting of the surface the wheel is in contact with. 0.0 means no "
@@ -54052,11 +54894,11 @@ msgid ""
"It's best to set this to 1.0 when starting out."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:72
+#: doc/classes/VehicleWheel3D.xml:73
msgid "The radius of the wheel in meters."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:75
+#: doc/classes/VehicleWheel3D.xml:76
msgid ""
"This is the distance in meters the wheel is lowered from its origin point. "
"Don't set this to 0.0 and move the wheel into position, instead move the "
@@ -54065,7 +54907,7 @@ msgid ""
"down to the position it should be in when the car is in rest."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:78
+#: doc/classes/VehicleWheel3D.xml:79
msgid ""
"This value affects the roll of your vehicle. If set to 1.0 for all wheels, "
"your vehicle will be prone to rolling over, while a value of 0.0 will resist "
@@ -54543,7 +55385,7 @@ msgstr ""
#: doc/classes/Viewport.xml:318
msgid ""
"Use fast approximate antialiasing. FXAA is a popular screen-space "
-"antialising method, which is fast but will make the image look blurry, "
+"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."
msgstr ""
@@ -54596,24 +55438,24 @@ msgid ""
"your [WorldEnvironment]."
msgstr ""
-#: doc/classes/Viewport.xml:384
+#: doc/classes/Viewport.xml:381
msgid ""
"Colors each PSSM split for the [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, and yellow."
msgstr ""
-#: doc/classes/Viewport.xml:387
+#: doc/classes/Viewport.xml:384
msgid ""
"Draws the decal atlas used by [Decal]s and light projector textures in the "
"upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/Viewport.xml:402
+#: doc/classes/Viewport.xml:405
msgid "Max value for [enum DefaultCanvasItemTextureFilter] enum."
msgstr ""
-#: doc/classes/Viewport.xml:414
+#: doc/classes/Viewport.xml:417
msgid "Max value for [enum DefaultCanvasItemTextureRepeat] enum."
msgstr ""
@@ -54644,82 +55486,84 @@ msgid ""
"The VisibilityEnabler2D will disable [RigidBody2D], [AnimationPlayer], and "
"other nodes when they are not visible. It will only affect nodes with the "
"same root node as the VisibilityEnabler2D, and the root node itself.\n"
+"If you just want to receive notifications, use [VisibilityNotifier2D] "
+"instead.\n"
"[b]Note:[/b] For performance reasons, VisibilityEnabler2D uses an "
"approximate heuristic with precision determined by [member ProjectSettings."
-"world/2d/cell_size]. If you need exact visibility checking, use another "
+"world/2d/cell_size]. If you need precise visibility checking, use another "
"method such as adding an [Area2D] node as a child of a [Camera2D] node.\n"
"[b]Note:[/b] VisibilityEnabler2D will not affect nodes added after scene "
"initialization."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:20
-#: doc/classes/VisibilityEnabler3D.xml:20
+#: doc/classes/VisibilityEnabler2D.xml:21
+#: doc/classes/VisibilityEnabler3D.xml:21
msgid ""
"Returns whether the enabler identified by given [enum Enabler] constant is "
"active."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:31
-#: doc/classes/VisibilityEnabler3D.xml:31
+#: doc/classes/VisibilityEnabler2D.xml:32
+#: doc/classes/VisibilityEnabler3D.xml:32
msgid ""
"Sets active state of the enabler identified by given [enum Enabler] constant."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:37
+#: doc/classes/VisibilityEnabler2D.xml:38
msgid "If [code]true[/code], [RigidBody2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:40
+#: doc/classes/VisibilityEnabler2D.xml:41
msgid "If [code]true[/code], [AnimatedSprite2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:43
-#: doc/classes/VisibilityEnabler3D.xml:40
+#: doc/classes/VisibilityEnabler2D.xml:44
+#: doc/classes/VisibilityEnabler3D.xml:41
msgid "If [code]true[/code], [AnimationPlayer] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:46
+#: doc/classes/VisibilityEnabler2D.xml:47
msgid "If [code]true[/code], [GPUParticles2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:49
+#: doc/classes/VisibilityEnabler2D.xml:50
msgid ""
"If [code]true[/code], the parent's [method Node._physics_process] will be "
"stopped."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:52
+#: doc/classes/VisibilityEnabler2D.xml:53
msgid ""
"If [code]true[/code], the parent's [method Node._process] will be stopped."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:57
-#: doc/classes/VisibilityEnabler3D.xml:45
+#: doc/classes/VisibilityEnabler2D.xml:58
+#: doc/classes/VisibilityEnabler3D.xml:46
msgid "This enabler will pause [AnimationPlayer] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:60
+#: doc/classes/VisibilityEnabler2D.xml:61
msgid "This enabler will freeze [RigidBody2D] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:63
+#: doc/classes/VisibilityEnabler2D.xml:64
msgid "This enabler will stop [GPUParticles2D] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:66
+#: doc/classes/VisibilityEnabler2D.xml:67
msgid "This enabler will stop the parent's _process function."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:69
+#: doc/classes/VisibilityEnabler2D.xml:70
msgid "This enabler will stop the parent's _physics_process function."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:72
+#: doc/classes/VisibilityEnabler2D.xml:73
msgid "This enabler will stop [AnimatedSprite2D] nodes animations."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:75
-#: doc/classes/VisibilityEnabler3D.xml:51
+#: doc/classes/VisibilityEnabler2D.xml:76
+#: doc/classes/VisibilityEnabler3D.xml:52
msgid "Represents the size of the [enum Enabler] enum."
msgstr ""
@@ -54728,19 +55572,23 @@ msgid ""
"The VisibilityEnabler3D will disable [RigidBody3D] and [AnimationPlayer] "
"nodes when they are not visible. It will only affect other nodes within the "
"same scene as the VisibilityEnabler3D itself.\n"
+"If you just want to receive notifications, use [VisibilityNotifier3D] "
+"instead.\n"
"[b]Note:[/b] VisibilityEnabler3D uses an approximate heuristic for "
"performance reasons. It doesn't take walls and other occlusion into account. "
-"If you need exact visibility checking, use another method such as adding an "
-"[Area3D] node as a child of a [Camera3D] node.\n"
+"The heuristic is an implementation detail and may change in future versions. "
+"If you need precise visibility checking, use another method such as adding "
+"an [Area3D] node as a child of a [Camera3D] node and/or [method Vector3."
+"dot].\n"
"[b]Note:[/b] VisibilityEnabler3D will not affect nodes added after scene "
"initialization."
msgstr ""
-#: doc/classes/VisibilityEnabler3D.xml:37
+#: doc/classes/VisibilityEnabler3D.xml:38
msgid "If [code]true[/code], [RigidBody3D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler3D.xml:48
+#: doc/classes/VisibilityEnabler3D.xml:49
msgid "This enabler will freeze [RigidBody3D] nodes."
msgstr ""
@@ -54754,13 +55602,15 @@ msgid ""
"The VisibilityNotifier2D detects when it is visible on the screen. It also "
"notifies when its bounding rectangle enters or exits the screen or a "
"viewport.\n"
+"If you want nodes to be disabled automatically when they exit the screen, "
+"use [VisibilityEnabler2D] instead.\n"
"[b]Note:[/b] For performance reasons, VisibilityNotifier2D uses an "
"approximate heuristic with precision determined by [member ProjectSettings."
-"world/2d/cell_size]. If you need exact visibility checking, use another "
+"world/2d/cell_size]. If you need precise visibility checking, use another "
"method such as adding an [Area2D] node as a child of a [Camera2D] node."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:17
+#: doc/classes/VisibilityNotifier2D.xml:18
msgid ""
"If [code]true[/code], the bounding rectangle is on the screen.\n"
"[b]Note:[/b] It takes one frame for the node's visibility to be assessed "
@@ -54769,23 +55619,23 @@ msgid ""
"pass."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:24
+#: doc/classes/VisibilityNotifier2D.xml:25
msgid "The VisibilityNotifier2D's bounding rectangle."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:30
+#: doc/classes/VisibilityNotifier2D.xml:31
msgid "Emitted when the VisibilityNotifier2D enters the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:35
+#: doc/classes/VisibilityNotifier2D.xml:36
msgid "Emitted when the VisibilityNotifier2D exits the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:42
+#: doc/classes/VisibilityNotifier2D.xml:43
msgid "Emitted when the VisibilityNotifier2D enters a [Viewport]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:49
+#: doc/classes/VisibilityNotifier2D.xml:50
msgid "Emitted when the VisibilityNotifier2D exits a [Viewport]'s view."
msgstr ""
@@ -54794,13 +55644,16 @@ msgid ""
"The VisibilityNotifier3D detects when it is visible on the screen. It also "
"notifies when its bounding rectangle enters or exits the screen or a "
"[Camera3D]'s view.\n"
+"If you want nodes to be disabled automatically when they exit the screen, "
+"use [VisibilityEnabler3D] instead.\n"
"[b]Note:[/b] VisibilityNotifier3D uses an approximate heuristic for "
"performance reasons. It doesn't take walls and other occlusion into account. "
-"If you need exact visibility checking, use another method such as adding an "
-"[Area3D] node as a child of a [Camera3D] node."
+"The heuristic is an implementation detail and may change in future versions. "
+"If you need precise visibility checking, use another method such as adding "
+"an [Area3D] node as a child of a [Camera3D] node and/or [method Vector3.dot]."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:17
+#: doc/classes/VisibilityNotifier3D.xml:18
msgid ""
"If [code]true[/code], the bounding box is on the screen.\n"
"[b]Note:[/b] It takes one frame for the node's visibility to be assessed "
@@ -54809,23 +55662,23 @@ msgid ""
"pass."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:24
+#: doc/classes/VisibilityNotifier3D.xml:25
msgid "The VisibilityNotifier3D's bounding box."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:32
+#: doc/classes/VisibilityNotifier3D.xml:33
msgid "Emitted when the VisibilityNotifier3D enters a [Camera3D]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:39
+#: doc/classes/VisibilityNotifier3D.xml:40
msgid "Emitted when the VisibilityNotifier3D exits a [Camera3D]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:44
+#: doc/classes/VisibilityNotifier3D.xml:45
msgid "Emitted when the VisibilityNotifier3D enters the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:49
+#: doc/classes/VisibilityNotifier3D.xml:50
msgid "Emitted when the VisibilityNotifier3D exits the screen."
msgstr ""
@@ -55245,6 +56098,12 @@ msgid ""
"exist."
msgstr ""
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:90
+msgid ""
+"Easing function, based on exponent. 0 is constant, 1 is linear, 0 to 1 is "
+"ease-in, 1+ is ease out. Negative values are in-out/out in."
+msgstr ""
+
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:93
msgid ""
"Return the number of digit places after the decimal that the first non-zero "
@@ -56130,6 +56989,7 @@ msgid "A shader for light calculations."
msgstr ""
#: doc/classes/VisualShader.xml:214
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:26
msgid "Represents the size of the [enum Type] enum."
msgstr ""
@@ -56232,6 +57092,24 @@ msgstr ""
msgid "Translated to [code]uniform bool[/code] in the shader language."
msgstr ""
+#: doc/classes/VisualShaderNodeBooleanUniform.xml:15
+#: doc/classes/VisualShaderNodeColorUniform.xml:15
+#: doc/classes/VisualShaderNodeFloatUniform.xml:15
+#: doc/classes/VisualShaderNodeIntUniform.xml:15
+#: doc/classes/VisualShaderNodeTransformUniform.xml:15
+#: doc/classes/VisualShaderNodeVec3Uniform.xml:15
+msgid "A default value to be assigned within the shader."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeBooleanUniform.xml:18
+#: doc/classes/VisualShaderNodeColorUniform.xml:18
+#: doc/classes/VisualShaderNodeFloatUniform.xml:18
+#: doc/classes/VisualShaderNodeIntUniform.xml:18
+#: doc/classes/VisualShaderNodeTransformUniform.xml:18
+#: doc/classes/VisualShaderNodeVec3Uniform.xml:18
+msgid "Enables usage of the [member default_value]."
+msgstr ""
+
#: doc/classes/VisualShaderNodeColorConstant.xml:4
msgid "A [Color] constant to be used within the visual shader graph."
msgstr ""
@@ -57082,49 +57960,49 @@ msgstr ""
msgid "Translated to [code]uniform float[/code] in the shader language."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:15
-#: doc/classes/VisualShaderNodeIntUniform.xml:15
+#: doc/classes/VisualShaderNodeFloatUniform.xml:21
+#: doc/classes/VisualShaderNodeIntUniform.xml:21
msgid ""
"A hint applied to the uniform, which controls the values it can take when "
"set through the inspector."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:18
-#: doc/classes/VisualShaderNodeIntUniform.xml:18
+#: doc/classes/VisualShaderNodeFloatUniform.xml:24
+#: doc/classes/VisualShaderNodeIntUniform.xml:24
msgid ""
"Minimum value for range hints. Used if [member hint] is set to [constant "
"HINT_RANGE] or [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:21
-#: doc/classes/VisualShaderNodeIntUniform.xml:21
+#: doc/classes/VisualShaderNodeFloatUniform.xml:27
+#: doc/classes/VisualShaderNodeIntUniform.xml:27
msgid ""
"Maximum value for range hints. Used if [member hint] is set to [constant "
"HINT_RANGE] or [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:24
-#: doc/classes/VisualShaderNodeIntUniform.xml:24
+#: doc/classes/VisualShaderNodeFloatUniform.xml:30
+#: doc/classes/VisualShaderNodeIntUniform.xml:30
msgid ""
"Step (increment) value for the range hint with step. Used if [member hint] "
"is set to [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:29
-#: doc/classes/VisualShaderNodeIntUniform.xml:29
+#: doc/classes/VisualShaderNodeFloatUniform.xml:35
+#: doc/classes/VisualShaderNodeIntUniform.xml:35
msgid "No hint used."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:32
-#: doc/classes/VisualShaderNodeIntUniform.xml:32
+#: doc/classes/VisualShaderNodeFloatUniform.xml:38
+#: doc/classes/VisualShaderNodeIntUniform.xml:38
msgid ""
"A range hint for scalar value, which limits possible input values between "
"[member min] and [member max]. Translated to [code]hint_range(min, max)[/"
"code] in shader code."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:35
-#: doc/classes/VisualShaderNodeIntUniform.xml:35
+#: doc/classes/VisualShaderNodeFloatUniform.xml:41
+#: doc/classes/VisualShaderNodeIntUniform.xml:41
msgid ""
"A range hint for scalar value with step, which limits possible input values "
"between [member min] and [member max], with a step (increment) of [member "
@@ -57406,6 +58284,26 @@ msgid ""
"results, e.g. division by zero)."
msgstr ""
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:4
+msgid "Performs a fused multiply-add operation within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:7
+msgid "Uses three operands to compute [code](a * b + c)[/code] expression."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:15
+msgid "A type of operands and returned value."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:20
+msgid "A scalar type."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:23
+msgid "A vector type."
+msgstr ""
+
#: doc/classes/VisualShaderNodeOuterProduct.xml:4
msgid ""
"Calculates an outer product of two vectors within the visual shader graph."
@@ -57428,7 +58326,7 @@ msgstr ""
#: doc/classes/VisualShaderNodeOutput.xml:7
msgid ""
"This visual shader node is present in all shader graphs in form of \"Output"
-"\" block with mutliple output value ports."
+"\" block with multiple output value ports."
msgstr ""
#: doc/classes/VisualShaderNodeSample3D.xml:4
@@ -57792,6 +58690,20 @@ msgid ""
"[ShaderMaterial] properties."
msgstr ""
+#: doc/classes/VisualShaderNodeUniformRef.xml:4
+msgid "A reference to an existing [VisualShaderNodeUniform]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniformRef.xml:7
+msgid ""
+"Creating a reference to a [VisualShaderNodeUniform] allows you to reuse this "
+"uniform in different shaders or shader stages easily."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniformRef.xml:15
+msgid "The name of the uniform which this reference points to."
+msgstr ""
+
#: doc/classes/VisualShaderNodeVec3Constant.xml:4
msgid "A [Vector3] constant to be used within the visual shader graph."
msgstr ""
@@ -58122,7 +59034,7 @@ msgstr ""
msgid ""
"Translated to [code]refract(I, N, eta)[/code] in the shader language, where "
"[code]I[/code] is the incident vector, [code]N[/code] is the normal vector "
-"and [code]eta[/code] is the ratio of the indicies of the refraction."
+"and [code]eta[/code] is the ratio of the indices of the refraction."
msgstr ""
#: doc/classes/VisualShaderNodeVectorScalarMix.xml:4
diff --git a/doc/translations/classes.pot b/doc/translations/classes.pot
index 3148f0fc80..0e89e02762 100644
--- a/doc/translations/classes.pot
+++ b/doc/translations/classes.pot
@@ -91,8 +91,8 @@ msgstr ""
#: modules/gdscript/doc_classes/@GDScript.xml:55
msgid ""
-"Returns the absolute value of parameter [code]s[/code] (i.e. unsigned value, "
-"works for integer and float).\n"
+"Returns the absolute value of parameter [code]s[/code] (i.e. positive "
+"value).\n"
"[codeblock]\n"
"# a is 1\n"
"a = abs(-1)\n"
@@ -147,7 +147,7 @@ msgid ""
"angle from an angle's tangent in trigonometry: [code]atan(tan(angle)) == "
"angle[/code].\n"
"The method cannot know in which quadrant the angle should fall. See [method "
-"atan2] if you always want an exact angle.\n"
+"atan2] if you have both [code]y[/code] and [code]x[/code].\n"
"[codeblock]\n"
"a = atan(0.5) # a is 0.463648\n"
"[/codeblock]"
@@ -158,12 +158,13 @@ msgid ""
"Returns the arc tangent of [code]y/x[/code] in radians. Use to get the angle "
"of tangent [code]y/x[/code]. To compute the value, the method takes into "
"account the sign of both arguments in order to determine the quadrant.\n"
+"Important note: The Y coordinate comes first, by convention.\n"
"[codeblock]\n"
"a = atan2(0, -1) # a is 3.141593\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:143
+#: modules/gdscript/doc_classes/@GDScript.xml:144
msgid ""
"Decodes a byte array back to a value. When [code]allow_objects[/code] is "
"[code]true[/code] decoding objects is allowed.\n"
@@ -172,7 +173,7 @@ msgid ""
"avoid potential security threats (remote code execution)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:155
+#: modules/gdscript/doc_classes/@GDScript.xml:156
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:145
msgid ""
"Converts a 2D point expressed in the cartesian coordinate system (X and Y "
@@ -180,17 +181,17 @@ msgid ""
"angle)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:164
+#: modules/gdscript/doc_classes/@GDScript.xml:165
msgid ""
-"Rounds [code]s[/code] upward, returning the smallest integral value that is "
-"not less than [code]s[/code].\n"
+"Rounds [code]s[/code] upward (towards positive infinity), returning the "
+"smallest whole number that is not less than [code]s[/code].\n"
"[codeblock]\n"
"i = ceil(1.45) # i is 2\n"
"i = ceil(1.001) # i is 2\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:177
+#: modules/gdscript/doc_classes/@GDScript.xml:178
msgid ""
"Returns a character as a String of the given Unicode code point (which is "
"compatible with ASCII code).\n"
@@ -202,7 +203,7 @@ msgid ""
"This is the inverse of [method ord]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:196
+#: modules/gdscript/doc_classes/@GDScript.xml:197
msgid ""
"Clamps [code]value[/code] and returns a value not less than [code]min[/code] "
"and not more than [code]max[/code].\n"
@@ -217,7 +218,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:216
+#: modules/gdscript/doc_classes/@GDScript.xml:217
msgid ""
"Converts from a type to another in the best way possible. The [code]type[/"
"code] parameter uses the [enum Variant.Type] values.\n"
@@ -231,7 +232,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:233
+#: modules/gdscript/doc_classes/@GDScript.xml:234
msgid ""
"Returns the cosine of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -241,7 +242,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:247
+#: modules/gdscript/doc_classes/@GDScript.xml:248
msgid ""
"Returns the hyperbolic cosine of [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -250,11 +251,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:260
+#: modules/gdscript/doc_classes/@GDScript.xml:261
msgid "Converts from decibels to linear energy (audio)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:273
+#: modules/gdscript/doc_classes/@GDScript.xml:274
msgid ""
"Returns the result of [code]value[/code] decreased by [code]step[/code] * "
"[code]amount[/code].\n"
@@ -264,42 +265,44 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:286
+#: modules/gdscript/doc_classes/@GDScript.xml:287
msgid ""
-"Returns degrees converted to radians.\n"
+"Converts an angle expressed in degrees to radians.\n"
"[codeblock]\n"
"# r is 3.141593\n"
"r = deg2rad(180)\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:299
+#: modules/gdscript/doc_classes/@GDScript.xml:300
msgid ""
"Converts a previously converted instance to a dictionary, back into an "
"instance. Useful for deserializing."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:310
-#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:90
+#: modules/gdscript/doc_classes/@GDScript.xml:311
msgid ""
-"Easing function, based on exponent. 0 is constant, 1 is linear, 0 to 1 is "
-"ease-in, 1+ is ease out. Negative values are in-out/out in."
+"Easing function, based on exponent. The curve values are: 0 is constant, 1 "
+"is linear, 0 to 1 is ease-in, 1+ is ease out. Negative values are in-out/out "
+"in."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:319
+#: modules/gdscript/doc_classes/@GDScript.xml:320
msgid ""
"The natural exponential function. It raises the mathematical constant [b]e[/"
"b] to the power of [code]s[/code] and returns it.\n"
-"[b]e[/b] has an approximate value of 2.71828.\n"
+"[b]e[/b] has an approximate value of 2.71828, and can be obtained with "
+"[code]exp(1)[/code].\n"
"For exponents to other bases use the method [method pow].\n"
"[codeblock]\n"
"a = exp(2) # Approximately 7.39\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:333
+#: modules/gdscript/doc_classes/@GDScript.xml:334
msgid ""
-"Rounds [code]s[/code] to the closest smaller integer and returns it.\n"
+"Rounds [code]s[/code] downward (towards negative infinity), returning the "
+"largest whole number that is not more than [code]s[/code].\n"
"[codeblock]\n"
"# a is 2.0\n"
"a = floor(2.99)\n"
@@ -310,7 +313,7 @@ msgid ""
"use [code]int(s)[/code] directly."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:351
+#: modules/gdscript/doc_classes/@GDScript.xml:352
msgid ""
"Returns the floating-point remainder of [code]a/b[/code], keeping the sign "
"of [code]a[/code].\n"
@@ -321,7 +324,7 @@ msgid ""
"For the integer remainder operation, use the % operator."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:367
+#: modules/gdscript/doc_classes/@GDScript.xml:368
msgid ""
"Returns the floating-point modulus of [code]a/b[/code] that wraps equally in "
"positive and negative.\n"
@@ -347,7 +350,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:398
+#: modules/gdscript/doc_classes/@GDScript.xml:399
msgid ""
"Returns a reference to the specified function [code]funcname[/code] in the "
"[code]instance[/code] node. As functions aren't first-class objects in "
@@ -362,7 +365,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:412
+#: modules/gdscript/doc_classes/@GDScript.xml:413
msgid ""
"Returns an array of dictionaries representing the current call stack.\n"
"[codeblock]\n"
@@ -382,7 +385,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:435
+#: modules/gdscript/doc_classes/@GDScript.xml:436
msgid ""
"Returns the integer hash of the variable passed.\n"
"[codeblock]\n"
@@ -390,7 +393,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:447
+#: modules/gdscript/doc_classes/@GDScript.xml:448
msgid ""
"Returns the passed instance converted to a dictionary (useful for "
"serializing).\n"
@@ -408,7 +411,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:468
+#: modules/gdscript/doc_classes/@GDScript.xml:469
msgid ""
"Returns the Object that corresponds to [code]instance_id[/code]. All Objects "
"have a unique instance ID.\n"
@@ -421,7 +424,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:488
+#: modules/gdscript/doc_classes/@GDScript.xml:489
msgid ""
"Returns a normalized value considering the given range. This is the opposite "
"of [method lerp].\n"
@@ -435,33 +438,41 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:506
+#: modules/gdscript/doc_classes/@GDScript.xml:507
msgid ""
"Returns [code]true[/code] if [code]a[/code] and [code]b[/code] are "
-"approximately equal to each other."
+"approximately equal to each other.\n"
+"Here, approximately equal means that [code]a[/code] and [code]b[/code] are "
+"within a small internal epsilon of each other, which scales with the "
+"magnitude of the numbers.\n"
+"Infinity values of the same sign are considered equal."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:515
+#: modules/gdscript/doc_classes/@GDScript.xml:518
msgid ""
"Returns whether [code]s[/code] is an infinity value (either positive "
"infinity or negative infinity)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:524
+#: modules/gdscript/doc_classes/@GDScript.xml:527
msgid ""
"Returns whether [code]instance[/code] is a valid object (e.g. has not been "
"deleted from memory)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:533
-msgid "Returns whether [code]s[/code] is a NaN (Not-A-Number) value."
+#: modules/gdscript/doc_classes/@GDScript.xml:536
+msgid ""
+"Returns whether [code]s[/code] is a NaN (\"Not a Number\" or invalid) value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:542
-msgid "Returns [code]true[/code] if [code]s[/code] is zero or almost zero."
+#: modules/gdscript/doc_classes/@GDScript.xml:545
+msgid ""
+"Returns [code]true[/code] if [code]s[/code] is zero or almost zero.\n"
+"This method is faster than using [method is_equal_approx] with one value as "
+"zero."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:551
+#: modules/gdscript/doc_classes/@GDScript.xml:555
msgid ""
"Returns length of Variant [code]var[/code]. Length is the character count of "
"String, element count of Array, size of Dictionary, etc.\n"
@@ -472,7 +483,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:569
+#: modules/gdscript/doc_classes/@GDScript.xml:573
msgid ""
"Linearly interpolates between two values by a normalized value. This is the "
"opposite of [method inverse_lerp].\n"
@@ -487,7 +498,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:588
+#: modules/gdscript/doc_classes/@GDScript.xml:592
msgid ""
"Linearly interpolates between two angles (in radians) by a normalized "
"value.\n"
@@ -504,7 +515,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:607
+#: modules/gdscript/doc_classes/@GDScript.xml:611
msgid ""
"Converts from linear energy to decibels (audio). This can be used to "
"implement volume sliders that behave as expected (since volume isn't "
@@ -520,20 +531,28 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:622
+#: modules/gdscript/doc_classes/@GDScript.xml:626
msgid ""
-"Loads a resource from the filesystem located at [code]path[/code].\n"
+"Loads a resource from the filesystem located at [code]path[/code]. The "
+"resource is loaded on the method call (unless it's referenced already "
+"elsewhere, e.g. in another script or in the scene), which might cause slight "
+"delay, especially when loading scenes. To avoid unnecessary delays when "
+"loading something multiple times, either store the resource in a variable or "
+"use [method preload].\n"
"[b]Note:[/b] Resource paths can be obtained by right-clicking on a resource "
-"in the FileSystem dock and choosing [b]Copy Path[/b].\n"
+"in the FileSystem dock and choosing \"Copy Path\" or by dragging the file "
+"from the FileSystem dock into the script.\n"
"[codeblock]\n"
-"# Load a scene called main located in the root of the project directory.\n"
-"var main = load(\"res://main.tscn\")\n"
+"# Load a scene called main located in the root of the project directory and "
+"cache it in a variable.\n"
+"var main = load(\"res://main.tscn\") # main will contain a PackedScene "
+"resource.\n"
"[/codeblock]\n"
"[b]Important:[/b] The path must be absolute, a local path will just return "
"[code]null[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:637
+#: modules/gdscript/doc_classes/@GDScript.xml:641
msgid ""
"Natural logarithm. The amount of time needed to reach a certain level of "
"continuous growth.\n"
@@ -541,10 +560,12 @@ msgid ""
"calculators, which uses a base 10 logarithm.\n"
"[codeblock]\n"
"log(10) # Returns 2.302585\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] The logarithm of [code]0[/code] returns [code]-inf[/code], "
+"while negative values return [code]-nan[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:652
+#: modules/gdscript/doc_classes/@GDScript.xml:657
msgid ""
"Returns the maximum of two values.\n"
"[codeblock]\n"
@@ -553,7 +574,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:667
+#: modules/gdscript/doc_classes/@GDScript.xml:672
msgid ""
"Returns the minimum of two values.\n"
"[codeblock]\n"
@@ -562,27 +583,39 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:684
+#: modules/gdscript/doc_classes/@GDScript.xml:689
msgid ""
"Moves [code]from[/code] toward [code]to[/code] by the [code]delta[/code] "
"value.\n"
"Use a negative [code]delta[/code] value to move away.\n"
"[codeblock]\n"
+"move_toward(5, 10, 4) # Returns 9\n"
"move_toward(10, 5, 4) # Returns 6\n"
+"move_toward(10, 5, -1.5) # Returns 11.5\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:697
+#: modules/gdscript/doc_classes/@GDScript.xml:704
msgid ""
-"Returns the nearest larger power of 2 for integer [code]value[/code].\n"
+"Returns the nearest equal or larger power of 2 for integer [code]value[/"
+"code].\n"
+"In other words, returns the smallest value [code]a[/code] where [code]a = "
+"pow(2, n)[/code] such that [code]value <= a[/code] for some non-negative "
+"integer [code]n[/code].\n"
"[codeblock]\n"
"nearest_po2(3) # Returns 4\n"
"nearest_po2(4) # Returns 4\n"
"nearest_po2(5) # Returns 8\n"
-"[/codeblock]"
+"\n"
+"nearest_po2(0) # Returns 0 (this may not be what you expect)\n"
+"nearest_po2(-1) # Returns 0 (this may not be what you expect)\n"
+"[/codeblock]\n"
+"[b]WARNING:[/b] Due to the way it is implemented, this function returns "
+"[code]0[/code] rather than [code]1[/code] for non-positive values of "
+"[code]value[/code] (in reality, 1 is the smallest integer power of 2)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:711
+#: modules/gdscript/doc_classes/@GDScript.xml:723
msgid ""
"Returns an integer representing the Unicode code point of the given Unicode "
"character [code]char[/code].\n"
@@ -594,27 +627,28 @@ msgid ""
"This is the inverse of [method char]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:726
+#: modules/gdscript/doc_classes/@GDScript.xml:738
msgid ""
-"Parse JSON text to a Variant (use [method typeof] to check if it is what you "
-"expect).\n"
-"Be aware that the JSON specification does not define integer or float types, "
-"but only a number type. Therefore, parsing a JSON text will convert all "
-"numerical values to [float] types.\n"
-"Note that JSON objects do not preserve key order like Godot dictionaries, "
-"thus you should not rely on keys being in a certain order if a dictionary is "
-"constructed from JSON. In contrast, JSON arrays retain the order of their "
+"Parse JSON text to a Variant. (Use [method typeof] to check if the Variant's "
+"type is what you expect.)\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, parsing a JSON text will convert "
+"all numerical values to [float] types.\n"
+"[b]Note:[/b] JSON objects do not preserve key order like Godot dictionaries, "
+"thus, you should not rely on keys being in a certain order if a dictionary "
+"is constructed from JSON. In contrast, JSON arrays retain the order of their "
"elements:\n"
"[codeblock]\n"
-"p = parse_json('[\"a\", \"b\", \"c\"]')\n"
-"if typeof(p) == TYPE_ARRAY:\n"
-" print(p[0]) # Prints a\n"
+"var p = JSON.parse('[\"hello\", \"world\", \"!\"]')\n"
+"if typeof(p.result) == TYPE_ARRAY:\n"
+" print(p.result[0]) # Prints \"hello\"\n"
"else:\n"
-" print(\"unexpected results\")\n"
-"[/codeblock]"
+" push_error(\"Unexpected results.\")\n"
+"[/codeblock]\n"
+"See also [JSON] for an alternative way to parse JSON text."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:746
+#: modules/gdscript/doc_classes/@GDScript.xml:759
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:142
msgid ""
"Converts a 2D point expressed in the polar coordinate system (a distance "
@@ -622,7 +656,7 @@ msgid ""
"cartesian coordinate system (X and Y axis)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:757
+#: modules/gdscript/doc_classes/@GDScript.xml:770
msgid ""
"Returns the integer modulus of [code]a/b[/code] that wraps equally in "
"positive and negative.\n"
@@ -648,7 +682,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:788
+#: modules/gdscript/doc_classes/@GDScript.xml:801
msgid ""
"Returns the result of [code]x[/code] raised to the power of [code]y[/code].\n"
"[codeblock]\n"
@@ -656,19 +690,23 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:800
+#: modules/gdscript/doc_classes/@GDScript.xml:813
msgid ""
-"Returns a resource from the filesystem that is loaded during script "
-"parsing.\n"
+"Returns a [Resource] from the filesystem located at [code]path[/code]. The "
+"resource is loaded during script parsing, i.e. is loaded with the script and "
+"[method preload] effectively acts as a reference to that resource. Note that "
+"the method requires a constant path. If you want to load a resource from a "
+"dynamic/variable path, use [method load].\n"
"[b]Note:[/b] Resource paths can be obtained by right clicking on a resource "
-"in the Assets Panel and choosing \"Copy Path\".\n"
+"in the Assets Panel and choosing \"Copy Path\" or by dragging the file from "
+"the FileSystem dock into the script.\n"
"[codeblock]\n"
-"# Load a scene called main located in the root of the project directory.\n"
-"var main = preload(\"res://main.tscn\")\n"
+"# Instance a scene.\n"
+"var diamond = preload(\"res://diamond.tscn\").instance()\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:812
+#: modules/gdscript/doc_classes/@GDScript.xml:825
msgid ""
"Converts one or more arguments to strings in the best way possible and "
"prints them to the console.\n"
@@ -678,11 +716,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:823
+#: modules/gdscript/doc_classes/@GDScript.xml:836
msgid "Like [method print], but prints only when used in debug mode."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:830
+#: modules/gdscript/doc_classes/@GDScript.xml:843
msgid ""
"Prints a stack track at code location, only works when running with debugger "
"turned on.\n"
@@ -692,7 +730,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:841
+#: modules/gdscript/doc_classes/@GDScript.xml:854
msgid ""
"Prints one or more arguments to strings in the best way possible to standard "
"error line.\n"
@@ -701,7 +739,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:851
+#: modules/gdscript/doc_classes/@GDScript.xml:864
msgid ""
"Prints one or more arguments to strings in the best way possible to console. "
"No newline is added at the end.\n"
@@ -715,7 +753,7 @@ msgid ""
"method, such as [method print]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:864
+#: modules/gdscript/doc_classes/@GDScript.xml:877
msgid ""
"Prints one or more arguments to the console with a space between each "
"argument.\n"
@@ -724,7 +762,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:874
+#: modules/gdscript/doc_classes/@GDScript.xml:887
msgid ""
"Prints one or more arguments to the console with a tab between each "
"argument.\n"
@@ -733,7 +771,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:886
+#: modules/gdscript/doc_classes/@GDScript.xml:899
msgid ""
"Pushes an error message to Godot's built-in debugger and to the OS "
"terminal.\n"
@@ -743,7 +781,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:898
+#: modules/gdscript/doc_classes/@GDScript.xml:911
msgid ""
"Pushes a warning message to Godot's built-in debugger and to the OS "
"terminal.\n"
@@ -753,15 +791,15 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:910
+#: modules/gdscript/doc_classes/@GDScript.xml:923
msgid ""
-"Converts from radians to degrees.\n"
+"Converts an angle expressed in radians to degrees.\n"
"[codeblock]\n"
"rad2deg(0.523599) # Returns 30\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:924
+#: modules/gdscript/doc_classes/@GDScript.xml:937
msgid ""
"Random range, any floating point value between [code]from[/code] and "
"[code]to[/code].\n"
@@ -770,7 +808,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:936
+#: modules/gdscript/doc_classes/@GDScript.xml:949
msgid ""
"Random from seed: pass a [code]seed[/code], and an array with both number "
"and new seed is returned. \"Seed\" here refers to the internal state of the "
@@ -778,7 +816,7 @@ msgid ""
"implementation is 64 bits."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:943
+#: modules/gdscript/doc_classes/@GDScript.xml:956
msgid ""
"Returns a random floating point value on the interval [code][0, 1][/code].\n"
"[codeblock]\n"
@@ -786,7 +824,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:953
+#: modules/gdscript/doc_classes/@GDScript.xml:966
msgid ""
"Returns a random unsigned 32 bit integer. Use remainder to obtain a random "
"value in the interval [code][0, N - 1][/code] (where N is smaller than "
@@ -799,7 +837,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:966
+#: modules/gdscript/doc_classes/@GDScript.xml:979
msgid ""
"Randomizes the seed (or the internal state) of the random number generator. "
"Current implementation reseeds using a number based on time.\n"
@@ -809,7 +847,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:977
+#: modules/gdscript/doc_classes/@GDScript.xml:990
msgid ""
"Returns an array with the given range. Range can be 1 argument N (0 to N-1), "
"two arguments (initial, final-1) or three arguments (initial, final-1, "
@@ -839,7 +877,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1017
+#: modules/gdscript/doc_classes/@GDScript.xml:1030
msgid ""
"Maps a [code]value[/code] from range [code][istart, istop][/code] to [code]"
"[ostart, ostop][/code].\n"
@@ -848,16 +886,16 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1029
+#: modules/gdscript/doc_classes/@GDScript.xml:1042
msgid ""
-"Returns the integral value that is nearest to [code]s[/code], with halfway "
-"cases rounded away from zero.\n"
+"Rounds [code]s[/code] to the nearest whole number, with halfway cases "
+"rounded away from zero.\n"
"[codeblock]\n"
"round(2.6) # Returns 3\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1041
+#: modules/gdscript/doc_classes/@GDScript.xml:1054
msgid ""
"Sets seed for the random number generator.\n"
"[codeblock]\n"
@@ -866,7 +904,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1054
+#: modules/gdscript/doc_classes/@GDScript.xml:1067
msgid ""
"Returns the sign of [code]s[/code]: -1 or 1. Returns 0 if [code]s[/code] is "
"0.\n"
@@ -877,7 +915,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1068
+#: modules/gdscript/doc_classes/@GDScript.xml:1081
msgid ""
"Returns the sine of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -885,7 +923,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1080
+#: modules/gdscript/doc_classes/@GDScript.xml:1093
msgid ""
"Returns the hyperbolic sine of [code]s[/code].\n"
"[codeblock]\n"
@@ -894,27 +932,37 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1097
+#: modules/gdscript/doc_classes/@GDScript.xml:1110
msgid ""
-"Returns a number smoothly interpolated between the [code]from[/code] and "
-"[code]to[/code], based on the [code]weight[/code]. Similar to [method lerp], "
-"but interpolates faster at the beginning and slower at the end.\n"
+"Returns the result of smoothly interpolating the value of [code]s[/code] "
+"between [code]0[/code] and [code]1[/code], based on the where [code]s[/code] "
+"lies with respect to the edges [code]from[/code] and [code]to[/code].\n"
+"The return value is [code]0[/code] if [code]s <= from[/code], and [code]1[/"
+"code] if [code]s >= to[/code]. If [code]s[/code] lies between [code]from[/"
+"code] and [code]to[/code], the returned value follows an S-shaped curve that "
+"maps [code]s[/code] between [code]0[/code] and [code]1[/code].\n"
+"This S-shaped curve is the cubic Hermite interpolator, given by [code]f(s) = "
+"3*s^2 - 2*s^3[/code].\n"
"[codeblock]\n"
-"smoothstep(0, 2, 0.5) # Returns 0.15\n"
+"smoothstep(0, 2, -5.0) # Returns 0.0\n"
+"smoothstep(0, 2, 0.5) # Returns 0.15625\n"
"smoothstep(0, 2, 1.0) # Returns 0.5\n"
"smoothstep(0, 2, 2.0) # Returns 1.0\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1111
+#: modules/gdscript/doc_classes/@GDScript.xml:1127
msgid ""
-"Returns the square root of [code]s[/code].\n"
+"Returns the square root of [code]s[/code], where [code]s[/code] is a non-"
+"negative number.\n"
"[codeblock]\n"
"sqrt(9) # Returns 3\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b]Negative values of [code]s[/code] return NaN. If you need "
+"negative inputs, use [code]System.Numerics.Complex[/code] in C#."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1123
+#: modules/gdscript/doc_classes/@GDScript.xml:1140
msgid ""
"Returns the position of the first non-zero digit, after the decimal point. "
"Note that the maximum return value is 10, which is a design decision in the "
@@ -929,7 +977,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1142
+#: modules/gdscript/doc_classes/@GDScript.xml:1159
msgid ""
"Snaps float value [code]s[/code] to a given [code]step[/code]. This can also "
"be used to round a floating point number to an arbitrary number of "
@@ -940,7 +988,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1153
+#: modules/gdscript/doc_classes/@GDScript.xml:1170
msgid ""
"Converts one or more arguments to string in the best way possible.\n"
"[codeblock]\n"
@@ -951,7 +999,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1168
+#: modules/gdscript/doc_classes/@GDScript.xml:1185
msgid ""
"Converts a formatted string that was returned by [method var2str] to the "
"original value.\n"
@@ -962,7 +1010,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1182
+#: modules/gdscript/doc_classes/@GDScript.xml:1199
msgid ""
"Returns the tangent of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -970,7 +1018,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1194
+#: modules/gdscript/doc_classes/@GDScript.xml:1211
msgid ""
"Returns the hyperbolic tangent of [code]s[/code].\n"
"[codeblock]\n"
@@ -979,18 +1027,25 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1207
+#: modules/gdscript/doc_classes/@GDScript.xml:1224
msgid ""
-"Converts a Variant [code]var[/code] to JSON text and return the result. "
+"Converts a [Variant] [code]var[/code] to JSON text and return the result. "
"Useful for serializing data to store or send over the network.\n"
"[codeblock]\n"
+"# Both numbers below are integers.\n"
"a = { \"a\": 1, \"b\": 2 }\n"
"b = to_json(a)\n"
"print(b) # {\"a\":1, \"b\":2}\n"
-"[/codeblock]"
+"# Both numbers above are floats, even if they display without any decimal "
+"places.\n"
+"[/codeblock]\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, converting a [Variant] to JSON "
+"text will convert all numerical values to [float] types.\n"
+"See also [JSON] for an alternative way to convert a [Variant] to JSON text."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1221
+#: modules/gdscript/doc_classes/@GDScript.xml:1242
msgid ""
"Returns whether the given class exists in [ClassDB].\n"
"[codeblock]\n"
@@ -999,7 +1054,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1234
+#: modules/gdscript/doc_classes/@GDScript.xml:1255
msgid ""
"Returns the internal type of the given Variant object, using the [enum "
"Variant.Type] values.\n"
@@ -1012,7 +1067,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1250
+#: modules/gdscript/doc_classes/@GDScript.xml:1271
msgid ""
"Checks that [code]json[/code] is valid JSON data. Returns an empty string if "
"valid, or an error message otherwise.\n"
@@ -1020,20 +1075,20 @@ msgid ""
"j = to_json([1, 2, 3])\n"
"v = validate_json(j)\n"
"if not v:\n"
-" print(\"valid\")\n"
+" print(\"Valid JSON.\")\n"
"else:\n"
-" prints(\"invalid\", v)\n"
+" push_error(\"Invalid JSON: \" + v)\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1269
+#: modules/gdscript/doc_classes/@GDScript.xml:1290
msgid ""
"Encodes a variable value to a byte array. When [code]full_objects[/code] is "
"[code]true[/code] encoding objects is allowed (and can potentially include "
"code)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1278
+#: modules/gdscript/doc_classes/@GDScript.xml:1299
msgid ""
"Converts a Variant [code]var[/code] to a formatted string that can later be "
"parsed using [method str2var].\n"
@@ -1050,7 +1105,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1298
+#: modules/gdscript/doc_classes/@GDScript.xml:1319
msgid ""
"Returns a weak reference to an object.\n"
"A weak reference to an object is not enough to keep the object alive: when "
@@ -1060,135 +1115,67 @@ msgid ""
"reference may return the object even if there are no strong references to it."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1312
+#: modules/gdscript/doc_classes/@GDScript.xml:1333
msgid ""
"Wraps float [code]value[/code] between [code]min[/code] and [code]max[/"
"code].\n"
"Usable for creating loop-alike behavior or infinite surfaces.\n"
"[codeblock]\n"
-"# a is 0.5\n"
-"a = wrapf(10.5, 0.0, 10.0)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# a is 9.5\n"
-"a = wrapf(-0.5, 0.0, 10.0)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# Infinite loop between 0.0 and 0.99\n"
-"f = wrapf(f + 0.1, 0.0, 1.0)\n"
+"# Infinite loop between 5.0 and 9.9\n"
+"value = wrapf(value + 0.1, 5.0, 10.0)\n"
"[/codeblock]\n"
"[codeblock]\n"
"# Infinite rotation (in radians)\n"
"angle = wrapf(angle + 0.1, 0.0, TAU)\n"
"[/codeblock]\n"
-"[b]Note:[/b] If you just want to wrap between 0.0 and [code]n[/code] (where "
-"[code]n[/code] is a positive floating-point value), it is better for "
-"performance to use the [method fmod] method like [code]fmod(number, n)[/"
-"code].\n"
-"[code]wrapf[/code] is more flexible than using the [method fmod] approach by "
-"giving the user a simple control over the minimum value. It also fully "
-"supports negative numbers, e.g.\n"
"[codeblock]\n"
"# Infinite rotation (in radians)\n"
"angle = wrapf(angle + 0.1, -PI, PI)\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] If [code]min[/code] is [code]0[/code], this is equivalent to "
+"[method fposmod], so prefer using that instead.\n"
+"[code]wrapf[/code] is more flexible than using the [method fposmod] approach "
+"by giving the user control over the minimum value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1348
+#: modules/gdscript/doc_classes/@GDScript.xml:1361
msgid ""
"Wraps integer [code]value[/code] between [code]min[/code] and [code]max[/"
"code].\n"
"Usable for creating loop-alike behavior or infinite surfaces.\n"
"[codeblock]\n"
-"# a is 0\n"
-"a = wrapi(10, 0, 10)\n"
+"# Infinite loop between 5 and 9\n"
+"frame = wrapi(frame + 1, 5, 10)\n"
"[/codeblock]\n"
"[codeblock]\n"
-"# a is 9\n"
-"a = wrapi(-1, 0, 10)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# Infinite loop between 0 and 9\n"
-"frame = wrapi(frame + 1, 0, 10)\n"
-"[/codeblock]\n"
-"[b]Note:[/b] If you just want to wrap between 0 and [code]n[/code] (where "
-"[code]n[/code] is a positive integer value), it is better for performance to "
-"use the modulo operator like [code]number % n[/code].\n"
-"[code]wrapi[/code] is more flexible than using the modulo approach by giving "
-"the user a simple control over the minimum value. It also fully supports "
-"negative numbers, e.g.\n"
-"[codeblock]\n"
"# result is -2\n"
"var result = wrapi(-6, -5, -1)\n"
-"[/codeblock]"
-msgstr ""
-
-#: modules/gdscript/doc_classes/@GDScript.xml:1378
-msgid ""
-"Stops the function execution and returns the current suspended state to the "
-"calling function.\n"
-"From the caller, call [method GDScriptFunctionState.resume] on the state to "
-"resume execution. This invalidates the state. Within the resumed function, "
-"[code]yield()[/code] returns whatever was passed to the [code]resume()[/"
-"code] function call.\n"
-"If passed an object and a signal, the execution is resumed when the object "
-"emits the given signal. In this case, [code]yield()[/code] returns the "
-"argument passed to [code]emit_signal()[/code] if the signal takes only one "
-"argument, or an array containing all the arguments passed to "
-"[code]emit_signal()[/code] if the signal takes multiple arguments.\n"
-"You can also use [code]yield[/code] to wait for a function to finish:\n"
-"[codeblock]\n"
-"func _ready():\n"
-" yield(countdown(), \"completed\") # waiting for the countdown() function "
-"to complete\n"
-" print('Ready')\n"
-"\n"
-"func countdown():\n"
-" yield(get_tree(), \"idle_frame\") # returns a GDScriptFunctionState "
-"object to _ready()\n"
-" print(3)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-" print(2)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-" print(1)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-"\n"
-"# prints:\n"
-"# 3\n"
-"# 2\n"
-"# 1\n"
-"# Ready\n"
"[/codeblock]\n"
-"When yielding on a function, the [code]completed[/code] signal will be "
-"emitted automatically when the function returns. It can, therefore, be used "
-"as the [code]signal[/code] parameter of the [code]yield[/code] method to "
-"resume.\n"
-"In order to yield on a function, the resulting function should also return a "
-"[code]GDScriptFunctionState[/code]. Notice [code]yield(get_tree(), "
-"\"idle_frame\")[/code] from the above example."
+"[b]Note:[/b] If [code]min[/code] is [code]0[/code], this is equivalent to "
+"[method posmod], so prefer using that instead.\n"
+"[code]wrapi[/code] is more flexible than using the [method posmod] approach "
+"by giving the user control over the minimum value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1409
+#: modules/gdscript/doc_classes/@GDScript.xml:1378
msgid ""
"Constant that represents how many times the diameter of a circle fits around "
-"its perimeter."
+"its perimeter. This is equivalent to [code]TAU / 2[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1412
-msgid "The circle constant, the circumference of the unit circle."
+#: modules/gdscript/doc_classes/@GDScript.xml:1381
+msgid "The circle constant, the circumference of the unit circle in radians."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1415
-msgid "A positive infinity. (For negative infinity, use -INF)."
+#: modules/gdscript/doc_classes/@GDScript.xml:1384
+msgid "Positive infinity. For negative infinity, use -INF."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1418
+#: modules/gdscript/doc_classes/@GDScript.xml:1387
msgid ""
-"Macro constant that expands to an expression of type float that represents a "
-"NaN.\n"
-"The NaN values are used to identify undefined or non-representable values "
-"for floating-point elements, such as the square root of negative numbers or "
-"the result of 0/0."
+"\"Not a Number\", an invalid value. [code]NaN[/code] has special properties, "
+"including that it is not equal to itself. It is output by some invalid "
+"operations, such as dividing zero by zero."
msgstr ""
#: doc/classes/@GlobalScope.xml:4
@@ -3424,130 +3411,141 @@ msgid ""
msgstr ""
#: doc/classes/AABB.xml:10 doc/classes/Plane.xml:10 doc/classes/Rect2.xml:11
-#: doc/classes/Rect2i.xml:11 doc/classes/Transform.xml:10
+#: doc/classes/Rect2i.xml:11 doc/classes/Transform.xml:11
#: doc/classes/Vector2.xml:12 doc/classes/Vector2i.xml:12
#: doc/classes/Vector3.xml:12 doc/classes/Vector3i.xml:12
msgid "https://docs.godotengine.org/en/latest/tutorials/math/index.html"
msgstr ""
#: doc/classes/AABB.xml:21
-msgid "Optional constructor, accepts position and size."
+msgid "Constructs an [AABB] from a position and size."
msgstr ""
-#: doc/classes/AABB.xml:30
+#: doc/classes/AABB.xml:28
+msgid ""
+"Returns an AABB with equivalent position and size, modified so that the most-"
+"negative corner is the origin and the size is positive."
+msgstr ""
+
+#: doc/classes/AABB.xml:37
msgid ""
"Returns [code]true[/code] if this [AABB] completely encloses another one."
msgstr ""
-#: doc/classes/AABB.xml:39
+#: doc/classes/AABB.xml:46
msgid "Returns this [AABB] expanded to include a given point."
msgstr ""
-#: doc/classes/AABB.xml:46
+#: doc/classes/AABB.xml:53
msgid "Returns the volume of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:55
+#: doc/classes/AABB.xml:62
msgid "Gets the position of the 8 endpoints of the [AABB] in space."
msgstr ""
-#: doc/classes/AABB.xml:62
+#: doc/classes/AABB.xml:69
msgid "Returns the normalized longest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:69
+#: doc/classes/AABB.xml:76
msgid ""
"Returns the index of the longest axis of the [AABB] (according to "
"[Vector3]'s [code]AXIS_*[/code] constants)."
msgstr ""
-#: doc/classes/AABB.xml:76
+#: doc/classes/AABB.xml:83
msgid "Returns the scalar length of the longest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:83
+#: doc/classes/AABB.xml:90
msgid "Returns the normalized shortest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:90
+#: doc/classes/AABB.xml:97
msgid ""
"Returns the index of the shortest axis of the [AABB] (according to "
"[Vector3]::AXIS* enum)."
msgstr ""
-#: doc/classes/AABB.xml:97
+#: doc/classes/AABB.xml:104
msgid "Returns the scalar length of the shortest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:106
+#: doc/classes/AABB.xml:113
msgid ""
"Returns the support point in a given direction. This is useful for collision "
"detection algorithms."
msgstr ""
-#: doc/classes/AABB.xml:115
+#: doc/classes/AABB.xml:122
msgid ""
"Returns a copy of the [AABB] grown a given amount of units towards all the "
"sides."
msgstr ""
-#: doc/classes/AABB.xml:122
+#: doc/classes/AABB.xml:129
msgid "Returns [code]true[/code] if the [AABB] is flat or empty."
msgstr ""
-#: doc/classes/AABB.xml:129
+#: doc/classes/AABB.xml:136
msgid "Returns [code]true[/code] if the [AABB] is empty."
msgstr ""
-#: doc/classes/AABB.xml:138
+#: doc/classes/AABB.xml:145
msgid "Returns [code]true[/code] if the [AABB] contains a point."
msgstr ""
-#: doc/classes/AABB.xml:147
+#: doc/classes/AABB.xml:154
msgid ""
"Returns the intersection between two [AABB]. An empty AABB (size 0,0,0) is "
"returned on failure."
msgstr ""
-#: doc/classes/AABB.xml:156
+#: doc/classes/AABB.xml:163
msgid "Returns [code]true[/code] if the [AABB] overlaps with another."
msgstr ""
-#: doc/classes/AABB.xml:165
+#: doc/classes/AABB.xml:172
msgid "Returns [code]true[/code] if the [AABB] is on both sides of a plane."
msgstr ""
-#: doc/classes/AABB.xml:176
+#: doc/classes/AABB.xml:183
msgid ""
"Returns [code]true[/code] if the [AABB] intersects the line segment between "
"[code]from[/code] and [code]to[/code]."
msgstr ""
-#: doc/classes/AABB.xml:185
+#: doc/classes/AABB.xml:192
msgid ""
"Returns [code]true[/code] if this [AABB] and [code]aabb[/code] are "
"approximately equal, by calling [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/AABB.xml:194
+#: doc/classes/AABB.xml:201
msgid ""
"Returns a larger [AABB] that contains both this [AABB] and [code]with[/code]."
msgstr ""
-#: doc/classes/AABB.xml:200
+#: doc/classes/AABB.xml:207 doc/classes/Rect2.xml:174
+#: doc/classes/Rect2i.xml:163
msgid ""
-"Ending corner. This is calculated as [code]position + size[/code]. Changing "
-"this property changes [member size] accordingly."
+"Ending corner. This is calculated as [code]position + size[/code]. Setting "
+"this value will change the size."
msgstr ""
-#: doc/classes/AABB.xml:203
-msgid "Beginning corner."
+#: doc/classes/AABB.xml:210 doc/classes/Rect2.xml:177
+#: doc/classes/Rect2i.xml:166
+msgid "Beginning corner. Typically has values lower than [member end]."
msgstr ""
-#: doc/classes/AABB.xml:206 doc/classes/Rect2.xml:180
+#: doc/classes/AABB.xml:213 doc/classes/Rect2.xml:180
#: doc/classes/Rect2i.xml:169
-msgid "Size from position to end."
+msgid ""
+"Size from [member position] to [member end]. Typically all components are "
+"positive.\n"
+"If the size is negative, you can use [method abs] to fix it."
msgstr ""
#: doc/classes/AcceptDialog.xml:4
@@ -3611,11 +3609,11 @@ msgstr ""
msgid "The text displayed by the dialog."
msgstr ""
-#: doc/classes/AcceptDialog.xml:82
+#: doc/classes/AcceptDialog.xml:83
msgid "Emitted when the dialog is accepted, i.e. the OK button is pressed."
msgstr ""
-#: doc/classes/AcceptDialog.xml:89
+#: doc/classes/AcceptDialog.xml:90
msgid "Emitted when a custom button is pressed. See [method add_button]."
msgstr ""
@@ -3668,7 +3666,7 @@ msgstr ""
#: doc/classes/AESContext.xml:54
msgid ""
"Get the current IV state for this context (IV gets updated when calling "
-"[method update]). You normally don't need this funciton.\n"
+"[method update]). You normally don't need this function.\n"
"Note: This function only makes sense when the context is started with "
"[constant MODE_CBC_ENCRYPT] or [constant MODE_CBC_DECRYPT]."
msgstr ""
@@ -3746,12 +3744,14 @@ msgid "If [code]true[/code], texture will be centered."
msgstr ""
#: doc/classes/AnimatedSprite2D.xml:46 doc/classes/Sprite2D.xml:41
-#: doc/classes/SpriteBase3D.xml:61 doc/classes/TextureRect.xml:18
+#: doc/classes/SpriteBase3D.xml:61 doc/classes/TextureButton.xml:19
+#: doc/classes/TextureRect.xml:18
msgid "If [code]true[/code], texture is flipped horizontally."
msgstr ""
#: doc/classes/AnimatedSprite2D.xml:49 doc/classes/Sprite2D.xml:44
-#: doc/classes/SpriteBase3D.xml:64 doc/classes/TextureRect.xml:21
+#: doc/classes/SpriteBase3D.xml:64 doc/classes/TextureButton.xml:22
+#: doc/classes/TextureRect.xml:21
msgid "If [code]true[/code], texture is flipped vertically."
msgstr ""
@@ -3918,10 +3918,10 @@ msgid ""
"[codeblock]\n"
"# This creates an animation that makes the node \"Enemy\" move to the right "
"by\n"
-"# 100 pixels in 1 second.\n"
+"# 100 pixels in 0.5 seconds.\n"
"var animation = Animation.new()\n"
"var track_index = animation.add_track(Animation.TYPE_VALUE)\n"
-"animation.track_set_path(track_index, \"Enemy:position.x\")\n"
+"animation.track_set_path(track_index, \"Enemy:position:x\")\n"
"animation.track_insert_key(track_index, 0.0, 0)\n"
"animation.track_insert_key(track_index, 0.5, 100)\n"
"[/codeblock]\n"
@@ -6049,10 +6049,10 @@ msgstr ""
msgid ""
"Returns [code]true[/code] if the array contains the given value.\n"
"[codeblock]\n"
-"[\"inside\", 7].has(\"inside\") == true\n"
-"[\"inside\", 7].has(\"outside\") == false\n"
-"[\"inside\", 7].has(7) == true\n"
-"[\"inside\", 7].has(\"7\") == false\n"
+"print([\"inside\", 7].has(\"inside\")) # True\n"
+"print([\"inside\", 7].has(\"outside\")) # False\n"
+"print([\"inside\", 7].has(7)) # True\n"
+"print([\"inside\", 7].has(\"7\")) # False\n"
"[/codeblock]\n"
"[b]Note:[/b] This is equivalent to using the [code]in[/code] operator as "
"follows:\n"
@@ -6073,11 +6073,11 @@ msgid ""
"valid, or at the end of the array ([code]pos == size()[/code])."
msgstr ""
-#: doc/classes/Array.xml:265 doc/classes/PackedByteArray.xml:107
-#: doc/classes/PackedColorArray.xml:62 doc/classes/PackedFloat32Array.xml:63
-#: doc/classes/PackedFloat64Array.xml:63 doc/classes/PackedInt32Array.xml:63
-#: doc/classes/PackedInt64Array.xml:63 doc/classes/PackedStringArray.xml:62
-#: doc/classes/PackedVector2Array.xml:62 doc/classes/PackedVector3Array.xml:62
+#: doc/classes/Array.xml:265 doc/classes/PackedByteArray.xml:116
+#: doc/classes/PackedColorArray.xml:71 doc/classes/PackedFloat32Array.xml:72
+#: doc/classes/PackedFloat64Array.xml:72 doc/classes/PackedInt32Array.xml:72
+#: doc/classes/PackedInt64Array.xml:72 doc/classes/PackedStringArray.xml:71
+#: doc/classes/PackedVector2Array.xml:71 doc/classes/PackedVector3Array.xml:71
msgid "Reverses the order of the elements in the array."
msgstr ""
@@ -6107,8 +6107,8 @@ msgid ""
"code] if the array is empty."
msgstr ""
-#: doc/classes/Array.xml:302 doc/classes/PackedByteArray.xml:116
-#: doc/classes/PackedFloat32Array.xml:72 doc/classes/PackedFloat64Array.xml:72
+#: doc/classes/Array.xml:302 doc/classes/PackedByteArray.xml:125
+#: doc/classes/PackedFloat32Array.xml:81 doc/classes/PackedFloat64Array.xml:81
msgid "Appends an element at the end of the array."
msgstr ""
@@ -6116,11 +6116,11 @@ msgstr ""
msgid "Adds an element at the beginning of the array."
msgstr ""
-#: doc/classes/Array.xml:320 doc/classes/PackedByteArray.xml:125
-#: doc/classes/PackedColorArray.xml:80 doc/classes/PackedFloat32Array.xml:81
-#: doc/classes/PackedFloat64Array.xml:81 doc/classes/PackedInt32Array.xml:81
-#: doc/classes/PackedInt64Array.xml:81 doc/classes/PackedStringArray.xml:80
-#: doc/classes/PackedVector2Array.xml:80 doc/classes/PackedVector3Array.xml:80
+#: doc/classes/Array.xml:320 doc/classes/PackedByteArray.xml:134
+#: doc/classes/PackedColorArray.xml:89 doc/classes/PackedFloat32Array.xml:90
+#: doc/classes/PackedFloat64Array.xml:90 doc/classes/PackedInt32Array.xml:90
+#: doc/classes/PackedInt64Array.xml:90 doc/classes/PackedStringArray.xml:89
+#: doc/classes/PackedVector2Array.xml:89 doc/classes/PackedVector3Array.xml:89
msgid "Removes an element from the array by index."
msgstr ""
@@ -6403,7 +6403,7 @@ msgid ""
msgstr ""
#: doc/classes/ArrayMesh.xml:235 doc/classes/Mesh.xml:210
-#: doc/classes/RenderingServer.xml:3115
+#: doc/classes/RenderingServer.xml:3111
msgid "Represents the size of the [enum ArrayType] enum."
msgstr ""
@@ -8220,7 +8220,9 @@ msgid ""
msgstr ""
#: doc/classes/BaseButton.xml:16
-msgid "Called when the button is pressed."
+msgid ""
+"Called when the button is pressed. If you need to know the button's pressed "
+"state (and [member toggle_mode] is active), use [method _toggled] instead."
msgstr ""
#: doc/classes/BaseButton.xml:25
@@ -8314,43 +8316,45 @@ msgstr ""
msgid ""
"Emitted when the button is toggled or pressed. This is on [signal "
"button_down] if [member action_mode] is [constant ACTION_MODE_BUTTON_PRESS] "
-"and on [signal button_up] otherwise."
+"and on [signal button_up] otherwise.\n"
+"If you need to know the button's pressed state (and [member toggle_mode] is "
+"active), use [signal toggled] instead."
msgstr ""
-#: doc/classes/BaseButton.xml:98
+#: doc/classes/BaseButton.xml:99
msgid ""
"Emitted when the button was just toggled between pressed and normal states "
"(only if [member toggle_mode] is active). The new state is contained in the "
"[code]button_pressed[/code] argument."
msgstr ""
-#: doc/classes/BaseButton.xml:104
+#: doc/classes/BaseButton.xml:105
msgid ""
"The normal state (i.e. not pressed, not hovered, not toggled and enabled) of "
"buttons."
msgstr ""
-#: doc/classes/BaseButton.xml:107
+#: doc/classes/BaseButton.xml:108
msgid "The state of buttons are pressed."
msgstr ""
-#: doc/classes/BaseButton.xml:110
+#: doc/classes/BaseButton.xml:111
msgid "The state of buttons are hovered."
msgstr ""
-#: doc/classes/BaseButton.xml:113
+#: doc/classes/BaseButton.xml:114
msgid "The state of buttons are disabled."
msgstr ""
-#: doc/classes/BaseButton.xml:116
+#: doc/classes/BaseButton.xml:117
msgid "The state of buttons are both hovered and pressed."
msgstr ""
-#: doc/classes/BaseButton.xml:119
+#: doc/classes/BaseButton.xml:120
msgid "Require just a press to consider the button clicked."
msgstr ""
-#: doc/classes/BaseButton.xml:122
+#: doc/classes/BaseButton.xml:123
msgid ""
"Require a press and a subsequent release before considering the button "
"clicked."
@@ -9043,22 +9047,22 @@ msgstr ""
msgid "Represents the size of the [enum TextureParam] enum."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:451 doc/classes/RenderingServer.xml:3657
-#: doc/classes/Viewport.xml:390
+#: doc/classes/BaseMaterial3D.xml:451 doc/classes/RenderingServer.xml:3668
+#: doc/classes/Viewport.xml:393
msgid ""
"The texture filter reads from the nearest pixel only. The simplest and "
"fastest method of filtering, but the texture will look pixelized."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:454 doc/classes/RenderingServer.xml:3660
-#: doc/classes/Viewport.xml:393
+#: doc/classes/BaseMaterial3D.xml:454 doc/classes/RenderingServer.xml:3671
+#: doc/classes/Viewport.xml:396
msgid ""
"The texture filter blends between the nearest 4 pixels. Use this when you "
"want to avoid a pixelated style, but do not want mipmaps."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:457 doc/classes/RenderingServer.xml:3663
-#: doc/classes/Viewport.xml:396
+#: doc/classes/BaseMaterial3D.xml:457 doc/classes/RenderingServer.xml:3674
+#: doc/classes/Viewport.xml:399
msgid ""
"The texture filter reads from the nearest pixel in the nearest mipmap. The "
"fastest way to read from textures with mipmaps."
@@ -9071,14 +9075,14 @@ msgid ""
"smooth out pixels that are far from the camera."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:463 doc/classes/RenderingServer.xml:3669
+#: doc/classes/BaseMaterial3D.xml:463 doc/classes/RenderingServer.xml:3680
msgid ""
"The texture filter reads from the nearest pixel, but selects a mipmap based "
"on the angle between the surface and the camera view. This reduces artifacts "
"on surfaces that are almost in line with the camera."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:466 doc/classes/RenderingServer.xml:3672
+#: doc/classes/BaseMaterial3D.xml:466 doc/classes/RenderingServer.xml:3683
msgid ""
"The texture filter blends between the nearest 4 pixels and selects a mipmap "
"based on the angle between the surface and the camera view. This reduces "
@@ -9087,7 +9091,7 @@ msgid ""
"texturing."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:469 doc/classes/CanvasItem.xml:685
+#: doc/classes/BaseMaterial3D.xml:469 doc/classes/CanvasItem.xml:695
msgid "Represents the size of the [enum TextureFilter] enum."
msgstr ""
@@ -9310,8 +9314,8 @@ msgstr ""
msgid "Enables the shadow to opacity feature."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:622 doc/classes/RenderingServer.xml:3684
-#: doc/classes/Viewport.xml:408
+#: doc/classes/BaseMaterial3D.xml:622 doc/classes/RenderingServer.xml:3695
+#: doc/classes/Viewport.xml:411
msgid ""
"Enables the texture to repeat when UV coordinates are outside the 0-1 range. "
"If using one of the linear filtering modes, this can result in artifacts at "
@@ -9452,167 +9456,195 @@ msgstr ""
#: doc/classes/Basis.xml:7
msgid ""
-"3×3 matrix used for 3D rotation and scale. Contains 3 vector fields X, Y and "
-"Z as its columns, which can be interpreted as the local basis vectors of a "
-"transformation. Can also be accessed as array of 3D vectors. These vectors "
-"are orthogonal to each other, but are not necessarily normalized (due to "
-"scaling). Almost always used as an orthogonal basis for a [Transform].\n"
-"For such use, it is composed of a scaling and a rotation matrix, in that "
-"order (M = R.S)."
+"3×3 matrix used for 3D rotation and scale. Almost always used as an "
+"orthogonal basis for a Transform.\n"
+"Contains 3 vector fields X, Y and Z as its columns, which are typically "
+"interpreted as the local basis vectors of a transformation. For such use, it "
+"is composed of a scaling and a rotation matrix, in that order (M = R.S).\n"
+"Can also be accessed as array of 3D vectors. These vectors are normally "
+"orthogonal to each other, but are not necessarily normalized (due to "
+"scaling).\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
+msgstr ""
+
+#: doc/classes/Basis.xml:13 doc/classes/Transform.xml:12
+#: doc/classes/Transform2D.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/math/"
+"matrices_and_transforms.html"
msgstr ""
-#: doc/classes/Basis.xml:11 doc/classes/Transform.xml:11
+#: doc/classes/Basis.xml:14 doc/classes/Transform.xml:13
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/using_transforms.html"
msgstr ""
-#: doc/classes/Basis.xml:20
-msgid "Create a rotation matrix from the given quaternion."
+#: doc/classes/Basis.xml:23
+msgid "Constructs a pure rotation basis matrix from the given quaternion."
msgstr ""
-#: doc/classes/Basis.xml:29
+#: doc/classes/Basis.xml:32
msgid ""
-"Create a rotation matrix (in the YXZ convention: first Z, then X, and Y "
-"last) from the specified Euler angles, given in the vector format as (X "
-"angle, Y angle, Z angle)."
+"Constructs a pure rotation basis matrix from the given Euler angles (in the "
+"YXZ convention: when *composing*, first Y, then X, and Z last), given in the "
+"vector format as (X angle, Y angle, Z angle).\n"
+"Consider using the [Quat] constructor instead, which uses a quaternion "
+"instead of Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:40
+#: doc/classes/Basis.xml:44
msgid ""
-"Create a rotation matrix which rotates around the given axis by the "
-"specified angle, in radians. The axis must be a normalized vector."
+"Constructs a pure rotation basis matrix, rotated around the given "
+"[code]axis[/code] by [code]phi[/code], in radians. The axis must be a "
+"normalized vector."
msgstr ""
-#: doc/classes/Basis.xml:53
-msgid "Create a matrix from 3 axis vectors."
+#: doc/classes/Basis.xml:57
+msgid "Constructs a basis matrix from 3 axis vectors (matrix columns)."
msgstr ""
-#: doc/classes/Basis.xml:60
-msgid "Returns the determinant of the matrix."
+#: doc/classes/Basis.xml:64
+msgid ""
+"Returns the determinant of the basis matrix. If the basis is uniformly "
+"scaled, its determinant is the square of the scale.\n"
+"A negative determinant means the basis has a negative scale. A zero "
+"determinant means the basis isn't invertible, and is usually considered "
+"invalid."
msgstr ""
-#: doc/classes/Basis.xml:67
+#: doc/classes/Basis.xml:72
msgid ""
"Returns the basis's rotation in the form of Euler angles (in the YXZ "
-"convention: first Z, then X, and Y last). The returned vector contains the "
-"rotation angles in the format (X angle, Y angle, Z angle). See [method "
-"get_rotation_quat] if you need a quaternion instead."
+"convention: when decomposing, first Z, then X, and Y last). The returned "
+"vector contains the rotation angles in the format (X angle, Y angle, Z "
+"angle).\n"
+"Consider using the [method get_rotation_quat] method instead, which returns "
+"a [Quat] quaternion instead of Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:74
+#: doc/classes/Basis.xml:80
msgid ""
"This function considers a discretization of rotations into 24 points on unit "
"sphere, lying along the vectors (x,y,z) with each component being either -1, "
"0, or 1, and returns the index of the point best representing the "
-"orientation of the object. It is mainly used by the grid map editor. For "
+"orientation of the object. It is mainly used by the [GridMap] editor. For "
"further details, refer to the Godot source code."
msgstr ""
-#: doc/classes/Basis.xml:81
+#: doc/classes/Basis.xml:87
msgid ""
"Returns the basis's rotation in the form of a quaternion. See [method "
"get_euler] if you need Euler angles, but keep in mind quaternions should "
"generally be preferred to Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:88
+#: doc/classes/Basis.xml:94
msgid ""
"Assuming that the matrix is the combination of a rotation and scaling, "
"return the absolute value of scaling factors along each axis."
msgstr ""
-#: doc/classes/Basis.xml:95 doc/classes/Transform2D.xml:49
+#: doc/classes/Basis.xml:101
msgid "Returns the inverse of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:106
+#: doc/classes/Basis.xml:112
msgid ""
"Returns [code]true[/code] if this basis and [code]b[/code] are approximately "
"equal, by calling [code]is_equal_approx[/code] on each component."
msgstr ""
-#: doc/classes/Basis.xml:113
+#: doc/classes/Basis.xml:119
msgid ""
"Returns the orthonormalized version of the matrix (useful to call from time "
"to time to avoid rounding error for orthogonal matrices). This performs a "
"Gram-Schmidt orthonormalization on the basis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:124
+#: doc/classes/Basis.xml:130
msgid ""
"Introduce an additional rotation around the given axis by phi (radians). The "
"axis must be a normalized vector."
msgstr ""
-#: doc/classes/Basis.xml:133
+#: doc/classes/Basis.xml:139
msgid ""
"Introduce an additional scaling specified by the given 3D scaling factor."
msgstr ""
-#: doc/classes/Basis.xml:144
+#: doc/classes/Basis.xml:150
msgid ""
"Assuming that the matrix is a proper rotation matrix, slerp performs a "
"spherical-linear interpolation with another rotation matrix."
msgstr ""
-#: doc/classes/Basis.xml:153
+#: doc/classes/Basis.xml:159
msgid "Transposed dot product with the X axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:162
+#: doc/classes/Basis.xml:168
msgid "Transposed dot product with the Y axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:171
+#: doc/classes/Basis.xml:177
msgid "Transposed dot product with the Z axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:178
+#: doc/classes/Basis.xml:184
msgid "Returns the transposed version of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:187
+#: doc/classes/Basis.xml:193
msgid "Returns a vector transformed (multiplied) by the matrix."
msgstr ""
-#: doc/classes/Basis.xml:196
+#: doc/classes/Basis.xml:202
msgid ""
-"Returns a vector transformed (multiplied) by the transposed matrix.\n"
+"Returns a vector transformed (multiplied) by the transposed basis matrix.\n"
"[b]Note:[/b] This results in a multiplication by the inverse of the matrix "
"only if it represents a rotation-reflection."
msgstr ""
-#: doc/classes/Basis.xml:203
-msgid "The basis matrix's X vector."
+#: doc/classes/Basis.xml:209 doc/classes/Transform2D.xml:181
+msgid ""
+"The basis matrix's X vector (column 0). Equivalent to array index [code]0[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:206
-msgid "The basis matrix's Y vector."
+#: doc/classes/Basis.xml:212 doc/classes/Transform2D.xml:184
+msgid ""
+"The basis matrix's Y vector (column 1). Equivalent to array index [code]1[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:209
-msgid "The basis matrix's Z vector."
+#: doc/classes/Basis.xml:215
+msgid ""
+"The basis matrix's Z vector (column 2). Equivalent to array index [code]2[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:214
+#: doc/classes/Basis.xml:220
msgid ""
-"The identity basis. This is identical to calling [code]Basis()[/code] "
-"without any parameters. This constant can be used to make your code clearer."
+"The identity basis, with no rotation or scaling applied.\n"
+"This is identical to calling [code]Basis()[/code] without any parameters. "
+"This constant can be used to make your code clearer, and for consistency "
+"with C#."
msgstr ""
-#: doc/classes/Basis.xml:217
+#: doc/classes/Basis.xml:224
msgid ""
"The basis that will flip something along the X axis when used in a "
"transformation."
msgstr ""
-#: doc/classes/Basis.xml:220
+#: doc/classes/Basis.xml:227
msgid ""
"The basis that will flip something along the Y axis when used in a "
"transformation."
msgstr ""
-#: doc/classes/Basis.xml:223
+#: doc/classes/Basis.xml:230
msgid ""
"The basis that will flip something along the Z axis when used in a "
"transformation."
@@ -9925,97 +9957,111 @@ msgstr ""
#: doc/classes/Button.xml:7
msgid ""
"Button is the standard themed button. It can contain text and an icon, and "
-"will display them according to the current [Theme]."
+"will display them according to the current [Theme].\n"
+"[b]Example of creating a button and assigning an action when pressed by code:"
+"[/b]\n"
+"[codeblock]\n"
+"func _ready():\n"
+" var button = Button.new()\n"
+" button.text = \"Click me\"\n"
+" button.connect(\"pressed\", self, \"_button_pressed\")\n"
+" add_child(button)\n"
+"\n"
+"func _button_pressed():\n"
+" print(\"Hello world!\")\n"
+"[/codeblock]\n"
+"Buttons (like all Control nodes) can also be created in the editor, but some "
+"situations may require creating them from code."
msgstr ""
-#: doc/classes/Button.xml:15
+#: doc/classes/Button.xml:27
msgid ""
"Text alignment policy for the button's text, use one of the [enum TextAlign] "
"constants."
msgstr ""
-#: doc/classes/Button.xml:18
+#: doc/classes/Button.xml:30
msgid ""
"When this property is enabled, text that is too large to fit the button is "
"clipped, when disabled the Button will always be wide enough to hold the "
"text."
msgstr ""
-#: doc/classes/Button.xml:21
+#: doc/classes/Button.xml:33
msgid ""
"When enabled, the button's icon will expand/shrink to fit the button's size "
"while keeping its aspect."
msgstr ""
-#: doc/classes/Button.xml:24
+#: doc/classes/Button.xml:36
msgid "Flat buttons don't display decoration."
msgstr ""
-#: doc/classes/Button.xml:27
+#: doc/classes/Button.xml:39
msgid ""
"Button's icon, if text is present the icon will be placed before the text."
msgstr ""
-#: doc/classes/Button.xml:30 doc/classes/LinkButton.xml:18
+#: doc/classes/Button.xml:42 doc/classes/LinkButton.xml:18
msgid "The button's text that will be displayed inside the button's area."
msgstr ""
-#: doc/classes/Button.xml:35
+#: doc/classes/Button.xml:47
msgid "Align the text to the left."
msgstr ""
-#: doc/classes/Button.xml:38
+#: doc/classes/Button.xml:50
msgid "Align the text to the center."
msgstr ""
-#: doc/classes/Button.xml:41
+#: doc/classes/Button.xml:53
msgid "Align the text to the right."
msgstr ""
-#: doc/classes/Button.xml:46
+#: doc/classes/Button.xml:58
msgid "[StyleBox] used when the [Button] is disabled."
msgstr ""
-#: doc/classes/Button.xml:49
+#: doc/classes/Button.xml:61
msgid ""
"[StyleBox] used when the [Button] is focused. It is displayed over the "
"current [StyleBox], so using [StyleBoxEmpty] will just disable the focus "
"visual effect."
msgstr ""
-#: doc/classes/Button.xml:52
+#: doc/classes/Button.xml:64
msgid "[Font] of the [Button]'s text."
msgstr ""
-#: doc/classes/Button.xml:55
+#: doc/classes/Button.xml:67
msgid "Default text [Color] of the [Button]."
msgstr ""
-#: doc/classes/Button.xml:58
+#: doc/classes/Button.xml:70
msgid "Text [Color] used when the [Button] is disabled."
msgstr ""
-#: doc/classes/Button.xml:61
+#: doc/classes/Button.xml:73
msgid "Text [Color] used when the [Button] is being hovered."
msgstr ""
-#: doc/classes/Button.xml:64
+#: doc/classes/Button.xml:76
msgid "Text [Color] used when the [Button] is being pressed."
msgstr ""
-#: doc/classes/Button.xml:67
+#: doc/classes/Button.xml:79
msgid "[StyleBox] used when the [Button] is being hovered."
msgstr ""
-#: doc/classes/Button.xml:70
+#: doc/classes/Button.xml:82
msgid "The horizontal space between [Button]'s icon and text."
msgstr ""
-#: doc/classes/Button.xml:73
+#: doc/classes/Button.xml:85
msgid "Default [StyleBox] for the [Button]."
msgstr ""
-#: doc/classes/Button.xml:76
+#: doc/classes/Button.xml:88
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr ""
@@ -10667,7 +10713,7 @@ msgstr ""
#: doc/classes/CameraEffects.xml:37
msgid ""
"The exposure override value to use. Higher values will result in a brighter "
-"scene. Only effective if [member override_exposure_enable] is [code]true[/"
+"scene. Only effective if [member override_exposure_enabled] is [code]true[/"
"code]."
msgstr ""
@@ -10921,265 +10967,282 @@ msgid ""
msgstr ""
#: doc/classes/CanvasItem.xml:319
-msgid "Draws a string using a custom font."
+msgid ""
+"Draws [code]text[/code] using the specified [code]font[/code] at the "
+"[code]position[/code] (top-left corner). The text will have its color "
+"multiplied by [code]modulate[/code]. If [code]clip_w[/code] is greater than "
+"or equal to 0, the text will be clipped if it exceeds the specified width.\n"
+"[b]Example using the default project font:[/b]\n"
+"[codeblock]\n"
+"# If using this method in a script that redraws constantly, move the\n"
+"# `default_font` declaration to a member variable assigned in `_ready()`\n"
+"# so the Control is only created once.\n"
+"var default_font = Control.new().get_font(\"font\")\n"
+"draw_string(default_font, Vector2(64, 64), \"Hello world\")\n"
+"[/codeblock]\n"
+"See also [method Font.draw]."
msgstr ""
-#: doc/classes/CanvasItem.xml:330
+#: doc/classes/CanvasItem.xml:339
msgid "Draws a styled rectangle."
msgstr ""
-#: doc/classes/CanvasItem.xml:353
+#: doc/classes/CanvasItem.xml:362
msgid "Draws a texture at a given position."
msgstr ""
-#: doc/classes/CanvasItem.xml:380
+#: doc/classes/CanvasItem.xml:389
msgid ""
"Draws a textured rectangle at a given position, optionally modulated by a "
"color. If [code]transpose[/code] is [code]true[/code], the texture will have "
"its X and Y coordinates swapped."
msgstr ""
-#: doc/classes/CanvasItem.xml:409
+#: doc/classes/CanvasItem.xml:418
msgid ""
"Draws a textured rectangle region at a given position, optionally modulated "
"by a color. If [code]transpose[/code] is [code]true[/code], the texture will "
"have its X and Y coordinates swapped."
msgstr ""
-#: doc/classes/CanvasItem.xml:416 doc/classes/Node3D.xml:19
+#: doc/classes/CanvasItem.xml:425 doc/classes/Node3D.xml:19
msgid ""
"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."
msgstr ""
-#: doc/classes/CanvasItem.xml:423
+#: doc/classes/CanvasItem.xml:432
msgid "Returns the [RID] of the [World2D] canvas where this item is in."
msgstr ""
-#: doc/classes/CanvasItem.xml:430
+#: doc/classes/CanvasItem.xml:439
msgid "Returns the canvas item RID used by [RenderingServer] for this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:437
+#: doc/classes/CanvasItem.xml:446
msgid "Returns the transform matrix of this item's canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:444
+#: doc/classes/CanvasItem.xml:453
msgid "Returns the global position of the mouse."
msgstr ""
-#: doc/classes/CanvasItem.xml:451
+#: doc/classes/CanvasItem.xml:460
msgid "Returns the global transform matrix of this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:458
+#: doc/classes/CanvasItem.xml:467
msgid ""
"Returns the global transform matrix of this item in relation to the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:465
+#: doc/classes/CanvasItem.xml:474
msgid "Returns the mouse position relative to this item's position."
msgstr ""
-#: doc/classes/CanvasItem.xml:472
+#: doc/classes/CanvasItem.xml:481
msgid "Returns the transform matrix of this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:479
+#: doc/classes/CanvasItem.xml:488
msgid "Returns the viewport's boundaries as a [Rect2]."
msgstr ""
-#: doc/classes/CanvasItem.xml:486
+#: doc/classes/CanvasItem.xml:495
msgid "Returns this item's transform in relation to the viewport."
msgstr ""
-#: doc/classes/CanvasItem.xml:493
+#: doc/classes/CanvasItem.xml:502
msgid "Returns the [World2D] where this item is in."
msgstr ""
-#: doc/classes/CanvasItem.xml:500
+#: doc/classes/CanvasItem.xml:509
msgid "Hide the [CanvasItem] if it's currently visible."
msgstr ""
-#: doc/classes/CanvasItem.xml:507
+#: doc/classes/CanvasItem.xml:516
msgid ""
"Returns [code]true[/code] if local transform notifications are communicated "
"to children."
msgstr ""
-#: doc/classes/CanvasItem.xml:514
+#: doc/classes/CanvasItem.xml:523
msgid ""
"Returns [code]true[/code] if the node is set as top-level. See [method "
"set_as_toplevel]."
msgstr ""
-#: doc/classes/CanvasItem.xml:521
+#: doc/classes/CanvasItem.xml:530
msgid ""
"Returns [code]true[/code] if global transform notifications are communicated "
"to children."
msgstr ""
-#: doc/classes/CanvasItem.xml:528
+#: doc/classes/CanvasItem.xml:537 doc/classes/Node3D.xml:104
msgid ""
"Returns [code]true[/code] if the node is present in the [SceneTree], its "
-"[member visible] property is [code]true[/code] and its inherited visibility "
-"is also [code]true[/code]."
+"[member visible] property is [code]true[/code] and all its antecedents are "
+"also visible. If any antecedent is hidden, this node will not be visible in "
+"the scene tree."
msgstr ""
-#: doc/classes/CanvasItem.xml:537
+#: doc/classes/CanvasItem.xml:546
msgid "Assigns [code]screen_point[/code] as this node's new local transform."
msgstr ""
-#: doc/classes/CanvasItem.xml:546
+#: doc/classes/CanvasItem.xml:555
msgid ""
"Transformations issued by [code]event[/code]'s inputs are applied in local "
"space instead of global space."
msgstr ""
-#: doc/classes/CanvasItem.xml:555
+#: doc/classes/CanvasItem.xml:564
msgid ""
"If [code]enable[/code] is [code]true[/code], the node won't inherit its "
"transform from parent canvas items."
msgstr ""
-#: doc/classes/CanvasItem.xml:564
+#: doc/classes/CanvasItem.xml:573
msgid ""
"If [code]enable[/code] is [code]true[/code], children will be updated with "
"local transform data."
msgstr ""
-#: doc/classes/CanvasItem.xml:573
+#: doc/classes/CanvasItem.xml:582
msgid ""
"If [code]enable[/code] is [code]true[/code], children will be updated with "
"global transform data."
msgstr ""
-#: doc/classes/CanvasItem.xml:580
+#: doc/classes/CanvasItem.xml:589
msgid ""
"Show the [CanvasItem] if it's currently hidden. For controls that inherit "
"[Popup], the correct way to make them visible is to call one of the multiple "
"[code]popup*()[/code] functions instead."
msgstr ""
-#: doc/classes/CanvasItem.xml:587
+#: doc/classes/CanvasItem.xml:596
msgid ""
"Queue the [CanvasItem] for update. [constant NOTIFICATION_DRAW] will be "
"called on idle time to request redraw."
msgstr ""
-#: doc/classes/CanvasItem.xml:593
+#: doc/classes/CanvasItem.xml:602
msgid ""
"The rendering layers in which this [CanvasItem] responds to [Light2D] nodes."
msgstr ""
-#: doc/classes/CanvasItem.xml:596
+#: doc/classes/CanvasItem.xml:605
msgid "The material applied to textures on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:599
+#: doc/classes/CanvasItem.xml:608
msgid "The color applied to textures on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:602
+#: doc/classes/CanvasItem.xml:611
msgid ""
"The color applied to textures on this [CanvasItem]. This is not inherited by "
"children [CanvasItem]s."
msgstr ""
-#: doc/classes/CanvasItem.xml:605
+#: doc/classes/CanvasItem.xml:614
msgid "If [code]true[/code], the object draws behind its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:608
+#: doc/classes/CanvasItem.xml:617
msgid "If [code]true[/code], the object draws on top of its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:611
+#: doc/classes/CanvasItem.xml:620
msgid "The texture filtering mode to use on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:614
+#: doc/classes/CanvasItem.xml:623
msgid "The texture repeating mode to use on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:617
+#: doc/classes/CanvasItem.xml:626
msgid ""
"If [code]true[/code], the parent [CanvasItem]'s [member material] property "
"is used as this one's material."
msgstr ""
-#: doc/classes/CanvasItem.xml:620
+#: doc/classes/CanvasItem.xml:629
msgid ""
-"If [code]true[/code], this [CanvasItem] is drawn. For controls that inherit "
-"[Popup], the correct way to make them visible is to call one of the multiple "
-"[code]popup*()[/code] functions instead."
+"If [code]true[/code], this [CanvasItem] is drawn. The node is only visible "
+"if all of its antecedents are visible as well (in other words, [method "
+"is_visible_in_tree] must return [code]true[/code]).\n"
+"[b]Note:[/b] For controls that inherit [Popup], the correct way to make them "
+"visible is to call one of the multiple [code]popup*()[/code] functions "
+"instead."
msgstr ""
-#: doc/classes/CanvasItem.xml:626
+#: doc/classes/CanvasItem.xml:636
msgid ""
"Emitted when the [CanvasItem] must redraw. This can only be connected "
"realtime, as deferred will not allow drawing."
msgstr ""
-#: doc/classes/CanvasItem.xml:631
+#: doc/classes/CanvasItem.xml:641
msgid "Emitted when becoming hidden."
msgstr ""
-#: doc/classes/CanvasItem.xml:636
+#: doc/classes/CanvasItem.xml:646
msgid "Emitted when the item rect has changed."
msgstr ""
-#: doc/classes/CanvasItem.xml:641
+#: doc/classes/CanvasItem.xml:651
msgid "Emitted when the visibility (hidden/visible) changes."
msgstr ""
-#: doc/classes/CanvasItem.xml:647
+#: doc/classes/CanvasItem.xml:657
msgid ""
"The [CanvasItem]'s transform has changed. This notification is only received "
"if enabled by [method set_notify_transform] or [method "
"set_notify_local_transform]."
msgstr ""
-#: doc/classes/CanvasItem.xml:650
+#: doc/classes/CanvasItem.xml:660
msgid "The [CanvasItem] is requested to draw."
msgstr ""
-#: doc/classes/CanvasItem.xml:653
+#: doc/classes/CanvasItem.xml:663
msgid "The [CanvasItem]'s visibility has changed."
msgstr ""
-#: doc/classes/CanvasItem.xml:656
+#: doc/classes/CanvasItem.xml:666
msgid "The [CanvasItem] has entered the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:659
+#: doc/classes/CanvasItem.xml:669
msgid "The [CanvasItem] has exited the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:662 doc/classes/CanvasItem.xml:688
+#: doc/classes/CanvasItem.xml:672 doc/classes/CanvasItem.xml:698
msgid "The [CanvasItem] will inherit the filter from its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:665
+#: doc/classes/CanvasItem.xml:675
msgid ""
"The texture filter reads from the nearest pixel only. The simplest and "
"fastest method of filtering. Useful for pixel art."
msgstr ""
-#: doc/classes/CanvasItem.xml:668
+#: doc/classes/CanvasItem.xml:678
msgid ""
"The texture filter blends between the nearest four pixels. Use this for most "
"cases where you want to avoid a pixelated style."
msgstr ""
-#: doc/classes/CanvasItem.xml:671
+#: doc/classes/CanvasItem.xml:681
msgid ""
"The texture filter reads from the nearest pixel in the nearest mipmap. This "
"is the fastest way to read from textures with mipmaps."
msgstr ""
-#: doc/classes/CanvasItem.xml:674
+#: doc/classes/CanvasItem.xml:684
msgid ""
"The texture filter blends between the nearest 4 pixels and between the "
"nearest 2 mipmaps. Use this for non-pixel art textures that may be viewed at "
@@ -11187,7 +11250,7 @@ msgid ""
"smooth out pixels that are smaller than on-screen pixels."
msgstr ""
-#: doc/classes/CanvasItem.xml:677
+#: doc/classes/CanvasItem.xml:687
msgid ""
"The texture filter reads from the nearest pixel, but selects a mipmap based "
"on the angle between the surface and the camera view. This reduces artifacts "
@@ -11196,7 +11259,7 @@ msgid ""
"TEXTURE_FILTER_NEAREST_WITH_MIPMAPS] is usually more appropriate."
msgstr ""
-#: doc/classes/CanvasItem.xml:681
+#: doc/classes/CanvasItem.xml:691
msgid ""
"The texture filter blends between the nearest 4 pixels and selects a mipmap "
"based on the angle between the surface and the camera view. This reduces "
@@ -11207,21 +11270,21 @@ msgid ""
"TEXTURE_FILTER_LINEAR_WITH_MIPMAPS] is usually more appropriate."
msgstr ""
-#: doc/classes/CanvasItem.xml:691
+#: doc/classes/CanvasItem.xml:701
msgid "Texture will not repeat."
msgstr ""
-#: doc/classes/CanvasItem.xml:694
+#: doc/classes/CanvasItem.xml:704
msgid "Texture will repeat normally."
msgstr ""
-#: doc/classes/CanvasItem.xml:697
+#: doc/classes/CanvasItem.xml:707
msgid ""
"Texture will repeat in a 2x2 tiled mode, where elements at even positions "
"are mirrored."
msgstr ""
-#: doc/classes/CanvasItem.xml:700
+#: doc/classes/CanvasItem.xml:710
msgid "Represents the size of the [enum TextureRepeat] enum."
msgstr ""
@@ -12294,16 +12357,15 @@ msgid ""
msgstr ""
#: doc/classes/Color.xml:4
-msgid "Color in RGBA format with some support for ARGB format."
+msgid "Color in RGBA format using floats on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:7
msgid ""
-"A color is represented by red, green, and blue [code](r, g, b)[/code] "
-"components. Additionally, [code]a[/code] represents the alpha component, "
-"often used for transparency. Values are in floating-point and usually range "
-"from 0 to 1. Some properties (such as [member CanvasItem.modulate]) may "
-"accept values greater than 1.\n"
+"A color represented by red, green, blue, and alpha (RGBA) components. The "
+"alpha component is often used for transparency. Values are in floating-point "
+"and usually range from 0 to 1. Some properties (such as CanvasItem.modulate) "
+"may accept values greater than 1 (overbright or HDR colors).\n"
"You can also create a color from standardized color names by using [method "
"@GDScript.ColorN] or directly using the color constants defined here. The "
"standardized color set is based on the [url=https://en.wikipedia.org/wiki/"
@@ -12517,47 +12579,48 @@ msgid ""
msgstr ""
#: doc/classes/Color.xml:280
-msgid "Alpha value (range 0 to 1)."
+msgid ""
+"The color's alpha (transparency) component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:283
-msgid "Alpha value (range 0 to 255)."
+msgid "Wrapper for [member a] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:286
-msgid "Blue value (range 0 to 1)."
+msgid "The color's blue component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:289
-msgid "Blue value (range 0 to 255)."
+msgid "Wrapper for [member b] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:292
-msgid "Green value (range 0 to 1)."
+msgid "The color's green component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:295
-msgid "Green value (range 0 to 255)."
+msgid "Wrapper for [member g] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:298
-msgid "HSV hue value (range 0 to 1)."
+msgid "The HSV hue of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:301
-msgid "Red value (range 0 to 1)."
+msgid "The color's red component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:304
-msgid "Red value (range 0 to 255)."
+msgid "Wrapper for [member r] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:307
-msgid "HSV saturation value (range 0 to 1)."
+msgid "The HSV saturation of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:310
-msgid "HSV value (range 0 to 1)."
+msgid "The HSV value (brightness) of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:315
@@ -14477,23 +14540,35 @@ msgstr ""
#: doc/classes/Control.xml:859
msgid ""
"The node's scale, relative to its [member rect_size]. Change this property "
-"to scale the node around its [member rect_pivot_offset]."
-msgstr ""
-
-#: doc/classes/Control.xml:862
+"to scale the node around its [member rect_pivot_offset]. The Control's "
+"[member hint_tooltip] will also scale according to this value.\n"
+"[b]Note:[/b] This property is mainly intended to be used for animation "
+"purposes. Text inside the Control will look pixelated or blurry when the "
+"Control is scaled. To support multiple resolutions in your project, use an "
+"appropriate viewport stretch mode as described in the [url=https://docs."
+"godotengine.org/en/latest/tutorials/viewports/multiple_resolutions."
+"html]documentation[/url] instead of scaling Controls individually.\n"
+"[b]Note:[/b] If the Control node is a child of a [Container] node, the scale "
+"will be reset to [code]Vector2(1, 1)[/code] when the scene is instanced. To "
+"set the Control's scale when it's instanced, wait for one frame using "
+"[code]yield(get_tree(), \"idle_frame\")[/code] then set its [member "
+"rect_scale] property."
+msgstr ""
+
+#: doc/classes/Control.xml:864
msgid ""
"The size of the node's bounding rectangle, in pixels. [Container] nodes "
"update this property automatically."
msgstr ""
-#: doc/classes/Control.xml:865
+#: doc/classes/Control.xml:867
msgid ""
"Tells the parent [Container] nodes how they should resize and place the node "
"on the X axis. Use one of the [enum SizeFlags] constants to change the "
"flags. See the constants to learn what each does."
msgstr ""
-#: doc/classes/Control.xml:868
+#: doc/classes/Control.xml:870
msgid ""
"If the node and at least one of its neighbours uses the [constant "
"SIZE_EXPAND] size flag, the parent [Container] will let it take more or less "
@@ -14502,181 +14577,181 @@ msgid ""
"space."
msgstr ""
-#: doc/classes/Control.xml:871
+#: doc/classes/Control.xml:873
msgid ""
"Tells the parent [Container] nodes how they should resize and place the node "
"on the Y axis. Use one of the [enum SizeFlags] constants to change the "
"flags. See the constants to learn what each does."
msgstr ""
-#: doc/classes/Control.xml:874
+#: doc/classes/Control.xml:876
msgid ""
"Changing this property replaces the current [Theme] resource this node and "
"all its [Control] children use."
msgstr ""
-#: doc/classes/Control.xml:880
+#: doc/classes/Control.xml:882
msgid "Emitted when the node gains keyboard focus."
msgstr ""
-#: doc/classes/Control.xml:885
+#: doc/classes/Control.xml:887
msgid "Emitted when the node loses keyboard focus."
msgstr ""
-#: doc/classes/Control.xml:892
+#: doc/classes/Control.xml:894
msgid "Emitted when the node receives an [InputEvent]."
msgstr ""
-#: doc/classes/Control.xml:897
+#: doc/classes/Control.xml:899
msgid "Emitted when the node's minimum size changes."
msgstr ""
-#: doc/classes/Control.xml:902
+#: doc/classes/Control.xml:904
msgid ""
"Emitted when the mouse enters the control's [code]Rect[/code] area, provided "
"its [member mouse_filter] lets the event reach it."
msgstr ""
-#: doc/classes/Control.xml:907
+#: doc/classes/Control.xml:909
msgid ""
"Emitted when the mouse leaves the control's [code]Rect[/code] area, provided "
"its [member mouse_filter] lets the event reach it."
msgstr ""
-#: doc/classes/Control.xml:912
+#: doc/classes/Control.xml:914
msgid "Emitted when the control changes size."
msgstr ""
-#: doc/classes/Control.xml:917
+#: doc/classes/Control.xml:919
msgid ""
"Emitted when one of the size flags changes. See [member "
"size_flags_horizontal] and [member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:927
+#: doc/classes/Control.xml:929
msgid "The node cannot grab focus. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:930
+#: doc/classes/Control.xml:932
msgid ""
"The node can only grab focus on mouse clicks. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:933
+#: doc/classes/Control.xml:935
msgid ""
"The node can grab focus on mouse click or using the arrows and the Tab keys "
"on the keyboard. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:936
+#: doc/classes/Control.xml:938
msgid ""
"Sent when the node changes size. Use [member rect_size] to get the new size."
msgstr ""
-#: doc/classes/Control.xml:939
+#: doc/classes/Control.xml:941
msgid "Sent when the mouse pointer enters the node."
msgstr ""
-#: doc/classes/Control.xml:942
+#: doc/classes/Control.xml:944
msgid "Sent when the mouse pointer exits the node."
msgstr ""
-#: doc/classes/Control.xml:945
+#: doc/classes/Control.xml:947
msgid "Sent when the node grabs focus."
msgstr ""
-#: doc/classes/Control.xml:948
+#: doc/classes/Control.xml:950
msgid "Sent when the node loses focus."
msgstr ""
-#: doc/classes/Control.xml:951
+#: doc/classes/Control.xml:953
msgid ""
"Sent when the node's [member theme] changes, right before Godot redraws the "
"control. Happens when you call one of the [code]add_theme_*_override[/code] "
"methods."
msgstr ""
-#: doc/classes/Control.xml:954
+#: doc/classes/Control.xml:956
msgid ""
"Sent when this node is inside a [ScrollContainer] which has begun being "
"scrolled."
msgstr ""
-#: doc/classes/Control.xml:957
+#: doc/classes/Control.xml:959
msgid ""
"Sent when this node is inside a [ScrollContainer] which has stopped being "
"scrolled."
msgstr ""
-#: doc/classes/Control.xml:960
+#: doc/classes/Control.xml:962
msgid ""
"Show the system's arrow mouse cursor when the user hovers the node. Use with "
"[member mouse_default_cursor_shape]."
msgstr ""
-#: doc/classes/Control.xml:963
+#: doc/classes/Control.xml:965
msgid ""
"Show the system's I-beam mouse cursor when the user hovers the node. The I-"
"beam pointer has a shape similar to \"I\". It tells the user they can "
"highlight or insert text."
msgstr ""
-#: doc/classes/Control.xml:966
+#: doc/classes/Control.xml:968
msgid ""
"Show the system's pointing hand mouse cursor when the user hovers the node."
msgstr ""
-#: doc/classes/Control.xml:969
+#: doc/classes/Control.xml:971
msgid "Show the system's cross mouse cursor when the user hovers the node."
msgstr ""
-#: doc/classes/Control.xml:972
+#: doc/classes/Control.xml:974
msgid ""
"Show the system's wait mouse cursor, often an hourglass, when the user "
"hovers the node."
msgstr ""
-#: doc/classes/Control.xml:975
+#: doc/classes/Control.xml:977
msgid ""
"Show the system's busy mouse cursor when the user hovers the node. Often an "
"hourglass."
msgstr ""
-#: doc/classes/Control.xml:978
+#: doc/classes/Control.xml:980
msgid ""
"Show the system's drag mouse cursor, often a closed fist or a cross symbol, "
"when the user hovers the node. It tells the user they're currently dragging "
"an item, like a node in the Scene dock."
msgstr ""
-#: doc/classes/Control.xml:981
+#: doc/classes/Control.xml:983
msgid ""
"Show the system's drop mouse cursor when the user hovers the node. It can be "
"an open hand. It tells the user they can drop an item they're currently "
"grabbing, like a node in the Scene dock."
msgstr ""
-#: doc/classes/Control.xml:984
+#: doc/classes/Control.xml:986
msgid ""
"Show the system's forbidden mouse cursor when the user hovers the node. "
"Often a crossed circle."
msgstr ""
-#: doc/classes/Control.xml:987
+#: doc/classes/Control.xml:989
msgid ""
"Show the system's vertical resize mouse cursor when the user hovers the "
"node. A double-headed vertical arrow. It tells the user they can resize the "
"window or the panel vertically."
msgstr ""
-#: doc/classes/Control.xml:990
+#: doc/classes/Control.xml:992
msgid ""
"Show the system's horizontal resize mouse cursor when the user hovers the "
"node. A double-headed horizontal arrow. It tells the user they can resize "
"the window or the panel horizontally."
msgstr ""
-#: doc/classes/Control.xml:993
+#: doc/classes/Control.xml:995
msgid ""
"Show the system's window resize mouse cursor when the user hovers the node. "
"The cursor is a double-headed arrow that goes from the bottom left to the "
@@ -14684,7 +14759,7 @@ msgid ""
"horizontally and vertically."
msgstr ""
-#: doc/classes/Control.xml:996
+#: doc/classes/Control.xml:998
msgid ""
"Show the system's window resize mouse cursor when the user hovers the node. "
"The cursor is a double-headed arrow that goes from the top left to the "
@@ -14692,93 +14767,93 @@ msgid ""
"they can resize the window or the panel both horizontally and vertically."
msgstr ""
-#: doc/classes/Control.xml:999
+#: doc/classes/Control.xml:1001
msgid ""
"Show the system's move mouse cursor when the user hovers the node. It shows "
"2 double-headed arrows at a 90 degree angle. It tells the user they can move "
"a UI element freely."
msgstr ""
-#: doc/classes/Control.xml:1002
+#: doc/classes/Control.xml:1004
msgid ""
"Show the system's vertical split mouse cursor when the user hovers the node. "
"On Windows, it's the same as [constant CURSOR_VSIZE]."
msgstr ""
-#: doc/classes/Control.xml:1005
+#: doc/classes/Control.xml:1007
msgid ""
"Show the system's horizontal split mouse cursor when the user hovers the "
"node. On Windows, it's the same as [constant CURSOR_HSIZE]."
msgstr ""
-#: doc/classes/Control.xml:1008
+#: doc/classes/Control.xml:1010
msgid ""
"Show the system's help mouse cursor when the user hovers the node, a "
"question mark."
msgstr ""
-#: doc/classes/Control.xml:1011
+#: doc/classes/Control.xml:1013
msgid ""
"Snap all 4 anchors to the top-left of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1014
+#: doc/classes/Control.xml:1016
msgid ""
"Snap all 4 anchors to the top-right of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1017
+#: doc/classes/Control.xml:1019
msgid ""
"Snap all 4 anchors to the bottom-left of the parent control's bounds. Use "
"with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1020
+#: doc/classes/Control.xml:1022
msgid ""
"Snap all 4 anchors to the bottom-right of the parent control's bounds. Use "
"with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1023
+#: doc/classes/Control.xml:1025
msgid ""
"Snap all 4 anchors to the center of the left edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1026
+#: doc/classes/Control.xml:1028
msgid ""
"Snap all 4 anchors to the center of the top edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1029
+#: doc/classes/Control.xml:1031
msgid ""
"Snap all 4 anchors to the center of the right edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1032
+#: doc/classes/Control.xml:1034
msgid ""
"Snap all 4 anchors to the center of the bottom edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1035
+#: doc/classes/Control.xml:1037
msgid ""
"Snap all 4 anchors to the center of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1038
+#: doc/classes/Control.xml:1040
msgid ""
"Snap all 4 anchors to the left edge of the parent control. The left margin "
"becomes relative to the left edge and the top margin relative to the top "
"left corner of the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1041
+#: doc/classes/Control.xml:1043
msgid ""
"Snap all 4 anchors to the top edge of the parent control. The left margin "
"becomes relative to the top left corner, the top margin relative to the top "
@@ -14786,14 +14861,14 @@ msgid ""
"parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1044
+#: doc/classes/Control.xml:1046
msgid ""
"Snap all 4 anchors to the right edge of the parent control. The right margin "
"becomes relative to the right edge and the top margin relative to the top "
"right corner of the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1047
+#: doc/classes/Control.xml:1049
msgid ""
"Snap all 4 anchors to the bottom edge of the parent control. The left margin "
"becomes relative to the bottom left corner, the bottom margin relative to "
@@ -14801,19 +14876,19 @@ msgid ""
"the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1050
+#: doc/classes/Control.xml:1052
msgid ""
"Snap all 4 anchors to a vertical line that cuts the parent control in half. "
"Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1053
+#: doc/classes/Control.xml:1055
msgid ""
"Snap all 4 anchors to a horizontal line that cuts the parent control in "
"half. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1056
+#: doc/classes/Control.xml:1058
msgid ""
"Snap all 4 anchors to the respective corners of the parent control. Set all "
"4 margins to 0 after you applied this preset and the [Control] will fit its "
@@ -14821,30 +14896,30 @@ msgid ""
"editor. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1059
+#: doc/classes/Control.xml:1061
msgid "The control will be resized to its minimum size."
msgstr ""
-#: doc/classes/Control.xml:1062
+#: doc/classes/Control.xml:1064
msgid "The control's width will not change."
msgstr ""
-#: doc/classes/Control.xml:1065
+#: doc/classes/Control.xml:1067
msgid "The control's height will not change."
msgstr ""
-#: doc/classes/Control.xml:1068
+#: doc/classes/Control.xml:1070
msgid "The control's size will not change."
msgstr ""
-#: doc/classes/Control.xml:1071
+#: doc/classes/Control.xml:1073
msgid ""
"Tells the parent [Container] to expand the bounds of this node to fill all "
"the available space without pushing any other node. Use with [member "
"size_flags_horizontal] and [member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1074
+#: doc/classes/Control.xml:1076
msgid ""
"Tells the parent [Container] to let this node take all the available space "
"on the axis you flag. If multiple neighboring nodes are set to expand, "
@@ -14853,13 +14928,13 @@ msgid ""
"[member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1077
+#: doc/classes/Control.xml:1079
msgid ""
"Sets the node's size flags to both fill and expand. See the 2 constants "
"above for more information."
msgstr ""
-#: doc/classes/Control.xml:1080
+#: doc/classes/Control.xml:1082
msgid ""
"Tells the parent [Container] to center the node in itself. It centers the "
"control based on its bounding box, so it doesn't work with the fill or "
@@ -14867,7 +14942,7 @@ msgid ""
"size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1083
+#: doc/classes/Control.xml:1085
msgid ""
"Tells the parent [Container] to align the node with its end, either the "
"bottom or the right edge. It doesn't work with the fill or expand size "
@@ -14875,7 +14950,7 @@ msgid ""
"size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1086
+#: doc/classes/Control.xml:1088
msgid ""
"The control will receive mouse button input events through [method "
"_gui_input] if clicked on. And the control will receive the [signal "
@@ -14884,7 +14959,7 @@ msgid ""
"other controls. This also results in blocking signals in other controls."
msgstr ""
-#: doc/classes/Control.xml:1089
+#: doc/classes/Control.xml:1091
msgid ""
"The control will receive mouse button input events through [method "
"_gui_input] if clicked on. And the control will receive the [signal "
@@ -14896,7 +14971,7 @@ msgid ""
"not be fired."
msgstr ""
-#: doc/classes/Control.xml:1092
+#: doc/classes/Control.xml:1094
msgid ""
"The control will not receive mouse button input events through [method "
"_gui_input]. The control will also not receive the [signal mouse_entered] "
@@ -14905,25 +14980,25 @@ msgid ""
"handled automatically."
msgstr ""
-#: doc/classes/Control.xml:1095
+#: doc/classes/Control.xml:1097
msgid ""
"The control will grow to the left or top to make up if its minimum size is "
"changed to be greater than its current size on the respective axis."
msgstr ""
-#: doc/classes/Control.xml:1098
+#: doc/classes/Control.xml:1100
msgid ""
"The control will grow to the right or bottom to make up if its minimum size "
"is changed to be greater than its current size on the respective axis."
msgstr ""
-#: doc/classes/Control.xml:1101
+#: doc/classes/Control.xml:1103
msgid ""
"The control will grow in both directions equally to make up if its minimum "
"size is changed to be greater than its current size."
msgstr ""
-#: doc/classes/Control.xml:1104
+#: doc/classes/Control.xml:1106
msgid ""
"Snaps one of the 4 anchor's sides to the origin of the node's [code]Rect[/"
"code], in the top left. Use it with one of the [code]anchor_*[/code] member "
@@ -14931,7 +15006,7 @@ msgid ""
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1107
+#: doc/classes/Control.xml:1109
msgid ""
"Snaps one of the 4 anchor's sides to the end of the node's [code]Rect[/"
"code], in the bottom right. Use it with one of the [code]anchor_*[/code] "
@@ -16716,7 +16791,7 @@ msgstr ""
msgid ""
"Returns the [Texture2D] associated with the specified [enum DecalTexture]. "
"This is a convenience method, in most cases you should access the texture "
-"directly. \n"
+"directly.\n"
"For example, instead of [code]albedo_tex = $Decal.get_texture(Decal."
"TEXTURE_ALBEDO)[/code], use [code]albedo_tex = $Decal.texture_albedo[/"
"code].\n"
@@ -16732,7 +16807,7 @@ msgstr ""
msgid ""
"Sets the [Texture2D] associated with the specified [enum DecalTexture]. This "
"is a convenience method, in most cases you should access the texture "
-"directly. \n"
+"directly.\n"
"For example, instead of [code]$Decal.set_texture(Decal.TEXTURE_ALBEDO, "
"albedo_tex)[/code], use [code]$Decal.texture_albedo = albedo_tex[/code].\n"
"One case where this is better than accessing the texture directly is when "
@@ -17081,7 +17156,7 @@ msgstr ""
msgid "The light's shadow rendering algorithm. See [enum ShadowMode]."
msgstr ""
-#: doc/classes/DirectionalLight3D.xml:31 doc/classes/RenderingServer.xml:3254
+#: doc/classes/DirectionalLight3D.xml:31 doc/classes/RenderingServer.xml:3250
msgid ""
"Sets the size of the directional shadow pancake. The pancake offsets the "
"start of the shadow's camera frustum to provide a higher effective depth "
@@ -17155,10 +17230,10 @@ msgstr ""
msgid ""
"Directory type. It is used to manage directories and their content (not "
"restricted to the project folder).\n"
-"When creating a new [Directory], its default opened directory will be "
-"[code]res://[/code]. This may change in the future, so it is advised to "
-"always use [method open] to initialize your [Directory] where you want to "
-"operate, with explicit error checking.\n"
+"When creating a new [Directory], it must be explicitly opened using [method "
+"open] before most methods can be used. However, [method file_exists] and "
+"[method dir_exists] can be used without opening a directory. If so, they use "
+"a path relative to [code]res://[/code].\n"
"Here is an example on how to iterate through the files of a directory:\n"
"[codeblock]\n"
"func dir_contents(path):\n"
@@ -17177,7 +17252,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Directory.xml:27 doc/classes/File.xml:25
+#: doc/classes/Directory.xml:27 doc/classes/File.xml:26
msgid ""
"https://docs.godotengine.org/en/latest/getting_started/step_by_step/"
"filesystem.html"
@@ -17211,41 +17286,43 @@ msgstr ""
#: doc/classes/Directory.xml:65
msgid ""
"Returns whether the target directory exists. The argument can be relative to "
-"the current directory, or an absolute path."
+"the current directory, or an absolute path.\n"
+"If the [Directory] is not open, the path is relative to [code]res://[/code]."
msgstr ""
-#: doc/classes/Directory.xml:74
+#: doc/classes/Directory.xml:75
msgid ""
"Returns whether the target file exists. The argument can be relative to the "
-"current directory, or an absolute path."
+"current directory, or an absolute path.\n"
+"If the [Directory] is not open, the path is relative to [code]res://[/code]."
msgstr ""
-#: doc/classes/Directory.xml:81
+#: doc/classes/Directory.xml:83
msgid ""
"Returns the absolute path to the currently opened directory (e.g. "
"[code]res://folder[/code] or [code]C:\\tmp\\folder[/code])."
msgstr ""
-#: doc/classes/Directory.xml:88
+#: doc/classes/Directory.xml:90
msgid ""
"Returns the currently opened directory's drive index. See [method get_drive] "
"to convert returned index to the name of the drive."
msgstr ""
-#: doc/classes/Directory.xml:97
+#: doc/classes/Directory.xml:99
msgid ""
"On Windows, returns the name of the drive (partition) passed as an argument "
"(e.g. [code]C:[/code]). On other platforms, or if the requested drive does "
"not existed, the method returns an empty String."
msgstr ""
-#: doc/classes/Directory.xml:104
+#: doc/classes/Directory.xml:106
msgid ""
"On Windows, returns the number of drives (partitions) mounted on the current "
"filesystem. On other platforms, the method returns 0."
msgstr ""
-#: doc/classes/Directory.xml:111
+#: doc/classes/Directory.xml:113
msgid ""
"Returns the next element (file or directory) in the current directory "
"(including [code].[/code] and [code]..[/code], unless "
@@ -17256,14 +17333,14 @@ msgid ""
"mandatory in such a case)."
msgstr ""
-#: doc/classes/Directory.xml:119
+#: doc/classes/Directory.xml:121
msgid ""
"On UNIX desktop systems, returns the available space on the current "
"directory's disk. On other platforms, this information is not available and "
"the method returns 0 or -1."
msgstr ""
-#: doc/classes/Directory.xml:130
+#: doc/classes/Directory.xml:132
msgid ""
"Initializes the stream used to list all files and directories using the "
"[method get_next] function, closing the current opened stream if needed. "
@@ -17275,13 +17352,13 @@ msgid ""
"out."
msgstr ""
-#: doc/classes/Directory.xml:139
+#: doc/classes/Directory.xml:141
msgid ""
"Closes the current stream opened with [method list_dir_begin] (whether it "
"has been fully processed with [method get_next] or not does not matter)."
msgstr ""
-#: doc/classes/Directory.xml:148
+#: doc/classes/Directory.xml:150
msgid ""
"Creates a directory. The argument can be relative to the current directory, "
"or an absolute path. The target directory should be placed in an already "
@@ -17290,7 +17367,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:158
+#: doc/classes/Directory.xml:160
msgid ""
"Creates a target directory and all necessary intermediate directories in its "
"path, by calling [method make_dir] recursively. The argument can be relative "
@@ -17298,7 +17375,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:168
+#: doc/classes/Directory.xml:170
msgid ""
"Opens an existing directory of the filesystem. The [code]path[/code] "
"argument can be within the project tree ([code]res://folder[/code]), the "
@@ -17307,7 +17384,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:178
+#: doc/classes/Directory.xml:180
msgid ""
"Deletes the target file or an empty directory. The argument can be relative "
"to the current directory, or an absolute path. If the target directory is "
@@ -17315,7 +17392,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:190
+#: doc/classes/Directory.xml:192
msgid ""
"Renames (move) the [code]from[/code] file to the [code]to[/code] "
"destination. Both arguments should be paths to files, either relative or "
@@ -17356,6 +17433,53 @@ msgid ""
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
+#: doc/classes/DisplayServer.xml:530
+msgid ""
+"Return the greatest scale factor of all screens.\n"
+"[b]Note:[/b] On macOS returned value is [code]2.0[/code] if there is at "
+"least one hiDPI (Retina) screen in the system, and [code]1.0[/code] in all "
+"other cases.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:557
+msgid ""
+"Return the scale factor of the specified screen by index.\n"
+"[b]Note:[/b] On macOS returned value is [code]2.0[/code] for hiDPI (Retina) "
+"screen, and [code]1.0[/code] for all other cases.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:630
+msgid ""
+"Returns the on-screen keyboard's height in pixels. Returns 0 if there is no "
+"keyboard or if it is currently hidden."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:637
+msgid "Hides the virtual keyboard if it is shown, does nothing otherwise."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:656
+msgid ""
+"Shows the virtual keyboard if the platform has one.\n"
+"[code]existing_text[/code] parameter is useful for implementing your own "
+"[LineEdit] or [TextEdit], as it tells the virtual keyboard what text has "
+"already been typed (the virtual keyboard uses it for auto-correct and "
+"predictions).\n"
+"[code]position[/code] parameter is the screen space [Rect2] of the edited "
+"text.\n"
+"[code]multiline[/code] parameter needs to be set to [code]true[/code] to be "
+"able to enter multiple lines of text, as in [TextEdit].\n"
+"[code]max_length[/code] limits the number of characters that can be entered "
+"if different from [code]-1[/code].\n"
+"[code]cursor_start[/code] can optionally define the current text cursor "
+"position if [code]cursor_end[/code] is not set.\n"
+"[code]cursor_start[/code] and [code]cursor_end[/code] can optionally define "
+"the current text selection.\n"
+"[b]Note:[/b] This method is implemented on Android, iOS and UWP."
+msgstr ""
+
#: doc/classes/DTLSServer.xml:4
msgid "Helper class to implement a DTLS server."
msgstr ""
@@ -17476,54 +17600,62 @@ msgstr ""
msgid "Adds a fallback font."
msgstr ""
-#: doc/classes/DynamicFont.xml:35
+#: doc/classes/DynamicFont.xml:33
+msgid ""
+"Returns a string containing all the characters available in the main and all "
+"the fallback fonts.\n"
+"If a given character is included in more than one font, it appears only once "
+"in the returned string."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:43
msgid "Returns the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:42
+#: doc/classes/DynamicFont.xml:50
msgid "Returns the number of fallback fonts."
msgstr ""
-#: doc/classes/DynamicFont.xml:51
+#: doc/classes/DynamicFont.xml:59
msgid ""
"Returns the spacing for the given [code]type[/code] (see [enum SpacingType])."
msgstr ""
-#: doc/classes/DynamicFont.xml:60
+#: doc/classes/DynamicFont.xml:68
msgid "Removes the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:71
+#: doc/classes/DynamicFont.xml:79
msgid "Sets the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:82
+#: doc/classes/DynamicFont.xml:90
msgid ""
"Sets the spacing for [code]type[/code] (see [enum SpacingType]) to "
"[code]value[/code] in pixels (not relative to the font size)."
msgstr ""
-#: doc/classes/DynamicFont.xml:88
+#: doc/classes/DynamicFont.xml:96
msgid "Extra spacing at the bottom in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:91
+#: doc/classes/DynamicFont.xml:99
msgid "Extra character spacing in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:94
+#: doc/classes/DynamicFont.xml:102
msgid "Extra space spacing in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:97
+#: doc/classes/DynamicFont.xml:105
msgid "Extra spacing at the top in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:100
+#: doc/classes/DynamicFont.xml:108
msgid "The font data."
msgstr ""
-#: doc/classes/DynamicFont.xml:103
+#: doc/classes/DynamicFont.xml:111
msgid ""
"The font outline's color.\n"
"[b]Note:[/b] It's recommended to leave this at the default value so that you "
@@ -17532,27 +17664,27 @@ msgid ""
"outline modulate theme item."
msgstr ""
-#: doc/classes/DynamicFont.xml:107
+#: doc/classes/DynamicFont.xml:115
msgid "The font outline's thickness in pixels (not relative to the font size)."
msgstr ""
-#: doc/classes/DynamicFont.xml:110
+#: doc/classes/DynamicFont.xml:118
msgid "The font size in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:115
+#: doc/classes/DynamicFont.xml:123
msgid "Spacing at the top."
msgstr ""
-#: doc/classes/DynamicFont.xml:118
+#: doc/classes/DynamicFont.xml:126
msgid "Spacing at the bottom."
msgstr ""
-#: doc/classes/DynamicFont.xml:121
+#: doc/classes/DynamicFont.xml:129
msgid "Character spacing."
msgstr ""
-#: doc/classes/DynamicFont.xml:124
+#: doc/classes/DynamicFont.xml:132
msgid "Space spacing."
msgstr ""
@@ -17934,7 +18066,12 @@ msgstr ""
msgid "Remitted if a resource is reimported."
msgstr ""
-#: doc/classes/EditorFileSystem.xml:106
+#: doc/classes/EditorFileSystem.xml:100
+msgid ""
+"Emitted if at least one resource is reloaded when the filesystem is scanned."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:107
msgid "Emitted if the source of any imported file changed."
msgstr ""
@@ -17976,29 +18113,43 @@ msgstr ""
msgid "Returns the path to the file at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:86
+#: doc/classes/EditorFileSystemDirectory.xml:70
+msgid ""
+"Returns the base class of the script class defined in the file at index "
+"[code]idx[/code]. If the file doesn't define a script class using the "
+"[code]class_name[/code] syntax, this will return an empty string."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:79
+msgid ""
+"Returns the name of the script class defined in the file at index [code]idx[/"
+"code]. If the file doesn't define a script class using the [code]class_name[/"
+"code] syntax, this will return an empty string."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:88
msgid "Returns the file extension of the file at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:93
+#: doc/classes/EditorFileSystemDirectory.xml:95
msgid "Returns the name of this directory."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:100
+#: doc/classes/EditorFileSystemDirectory.xml:102
msgid ""
"Returns the parent directory for this directory or [code]null[/code] if "
"called on a directory at [code]res://[/code] or [code]user://[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:107
+#: doc/classes/EditorFileSystemDirectory.xml:109
msgid "Returns the path to this directory."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:116
+#: doc/classes/EditorFileSystemDirectory.xml:118
msgid "Returns the subdirectory at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:123
+#: doc/classes/EditorFileSystemDirectory.xml:125
msgid "Returns the number of subdirectories in this directory."
msgstr ""
@@ -18089,45 +18240,72 @@ msgstr ""
msgid "Gets the unique name of the importer."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:92
+#: doc/classes/EditorImportPlugin.xml:86
+msgid ""
+"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. For example:\n"
+"[codeblock]\n"
+"func get_option_visibility(option, options):\n"
+" # Only show the lossy quality setting if the compression mode is set to "
+"\"Lossy\".\n"
+" if option == \"compress/lossy_quality\" and options.has(\"compress/mode"
+"\"):\n"
+" return int(options[\"compress/mode\"]) == COMPRESS_LOSSY\n"
+"\n"
+" return true\n"
+"[/codeblock]\n"
+"Return [code]true[/code] to make all options always visible."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:102
msgid ""
"Gets the number of initial presets defined by the plugin. Use [method "
"get_import_options] to get the default options for the preset and [method "
"get_preset_name] to get the name of the preset."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:101
+#: doc/classes/EditorImportPlugin.xml:111
msgid "Gets the name of the options preset at this index."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:108
+#: doc/classes/EditorImportPlugin.xml:118
msgid ""
"Gets the priority of this plugin for the recognized extension. Higher "
"priority plugins will be preferred. The default priority is [code]1.0[/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:115
+#: doc/classes/EditorImportPlugin.xml:125
msgid ""
"Gets the list of file extensions to associate with this loader (case-"
"insensitive). e.g. [code][\"obj\"][/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:122
+#: doc/classes/EditorImportPlugin.xml:132
msgid ""
"Gets the Godot resource type associated with this loader. e.g. [code]\"Mesh"
"\"[/code] or [code]\"Animation\"[/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:129
+#: doc/classes/EditorImportPlugin.xml:139
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:136
+#: doc/classes/EditorImportPlugin.xml:146
msgid "Gets the name to display in the import window."
msgstr ""
+#: doc/classes/EditorImportPlugin.xml:163
+msgid ""
+"Imports [code]source_file[/code] into [code]save_path[/code] with the import "
+"[code]options[/code] specified. The [code]platform_variants[/code] and "
+"[code]gen_files[/code] arrays will be modified by this function.\n"
+"This method must be overridden to do the actual importing work. See this "
+"class' description for an example of overriding this method."
+msgstr ""
+
#: doc/classes/EditorInspector.xml:4
msgid "A tab used to edit properties of the selected node."
msgstr ""
@@ -18143,6 +18321,58 @@ msgid ""
"the singleton using [method EditorInterface.get_inspector]."
msgstr ""
+#: doc/classes/EditorInspector.xml:17
+msgid ""
+"Refreshes the inspector.\n"
+"[b]Note:[/b] To save on CPU resources, calling this method will do nothing "
+"if the time specified in [code]docks/property_editor/auto_refresh_interval[/"
+"code] editor setting hasn't passed yet since this method was last called. "
+"(By default, this interval is set to 0.3 seconds.)"
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:30
+msgid ""
+"Emitted when the Edit button of an [Object] has been pressed in the "
+"inspector. This is mainly used in the remote scene tree inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:37
+msgid "Emitted when a property is removed from the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:44
+msgid "Emitted when a property is edited in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:51
+msgid ""
+"Emitted when a property is keyed in the inspector. Properties can be keyed "
+"by clicking the \"key\" icon next to a property when the Animation panel is "
+"toggled."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:58
+msgid "Emitted when a property is selected in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:67
+msgid ""
+"Emitted when a boolean property is toggled in the inspector.\n"
+"[b]Note:[/b] This signal is never emitted if the internal [code]autoclear[/"
+"code] property enabled. Since this property is always enabled in the editor "
+"inspector, this signal is never emitted by the editor itself."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:77
+msgid "Emitted when a resource is selected in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:82
+msgid ""
+"Emitted when a property that requires a restart to be applied is edited in "
+"the inspector. This is only used in the Project Settings and Editor Settings."
+msgstr ""
+
#: doc/classes/EditorInspectorPlugin.xml:4
msgid "Plugin for adding custom property editors on inspector."
msgstr ""
@@ -18221,91 +18451,155 @@ msgstr ""
#: doc/classes/EditorInterface.xml:26
msgid ""
-"Returns the main container of Godot editor's window. You can use it, for "
-"example, to retrieve the size of the container and place your controls "
+"Returns the main container of Godot editor's window. For example, you can "
+"use it to retrieve the size of the container and place your controls "
"accordingly."
msgstr ""
-#: doc/classes/EditorInterface.xml:39
+#: doc/classes/EditorInterface.xml:33
+msgid "Returns the current path being viewed in the [FileSystemDock]."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:40
msgid "Returns the edited (current) scene's root [Node]."
msgstr ""
-#: doc/classes/EditorInterface.xml:46
-msgid "Returns the [EditorSettings]."
+#: doc/classes/EditorInterface.xml:47
+msgid "Returns the editor's [EditorSettings] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:53
-msgid "Returns the editor [Viewport]."
+#: doc/classes/EditorInterface.xml:54
+msgid ""
+"Returns the main editor control. Use this as a parent for main screens.\n"
+"[b]Note:[/b] This returns the main editor control containing the whole "
+"editor, not the 2D or 3D viewports specifically."
msgstr ""
-#: doc/classes/EditorInterface.xml:72
+#: doc/classes/EditorInterface.xml:62
+msgid "Returns the editor's [FileSystemDock] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:69
+msgid "Returns the editor's [EditorInspector] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:76
msgid "Returns an [Array] with the file paths of the currently opened scenes."
msgstr ""
-#: doc/classes/EditorInterface.xml:79
-msgid "Returns the [EditorFileSystem]."
+#: doc/classes/EditorInterface.xml:83
+msgid ""
+"Returns the name of the scene that is being played. If no scene is currently "
+"being played, returns an empty string."
msgstr ""
-#: doc/classes/EditorInterface.xml:86
-msgid "Returns the [EditorResourcePreview]."
+#: doc/classes/EditorInterface.xml:90
+msgid "Returns the editor's [EditorFileSystem] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:93
-msgid "Returns the [ScriptEditor]."
+#: doc/classes/EditorInterface.xml:97
+msgid "Returns the editor's [EditorResourcePreview] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:106
-msgid "Returns the [EditorSelection]."
+#: doc/classes/EditorInterface.xml:104
+msgid "Returns the editor's [ScriptEditor] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:117
+#: doc/classes/EditorInterface.xml:111
msgid ""
-"Shows the given property on the given [code]object[/code] in the Editor's "
+"Returns the path of the directory currently selected in the "
+"[FileSystemDock]. If a file is selected, its base directory will be returned "
+"using [method String.get_base_dir] instead."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:118
+msgid "Returns the editor's [EditorSelection] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:129
+msgid ""
+"Shows the given property on the given [code]object[/code] in the editor's "
"Inspector dock."
msgstr ""
-#: doc/classes/EditorInterface.xml:126
+#: doc/classes/EditorInterface.xml:136
msgid ""
-"Returns the enabled status of a plugin. The plugin name is the same as its "
-"directory name."
+"Returns [code]true[/code] if a scene is currently being played, [code]false[/"
+"code] otherwise. Paused scenes are considered as being played."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:145
+msgid ""
+"Returns [code]true[/code] if the specified [code]plugin[/code] is enabled. "
+"The plugin name is the same as its directory name."
msgstr ""
-#: doc/classes/EditorInterface.xml:137
+#: doc/classes/EditorInterface.xml:156
msgid ""
"Returns mesh previews rendered at the given size as an [Array] of "
"[Texture2D]s."
msgstr ""
-#: doc/classes/EditorInterface.xml:146
+#: doc/classes/EditorInterface.xml:165
msgid "Opens the scene at the given path."
msgstr ""
-#: doc/classes/EditorInterface.xml:155
+#: doc/classes/EditorInterface.xml:172
+msgid "Plays the currently active scene."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:181
+msgid "Plays the scene specified by its filepath."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:188
+msgid "Plays the main scene."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:197
msgid "Reloads the scene at the given path."
msgstr ""
-#: doc/classes/EditorInterface.xml:162
+#: doc/classes/EditorInterface.xml:204
msgid ""
"Saves the scene. Returns either [code]OK[/code] or [code]ERR_CANT_CREATE[/"
"code] (see [@GlobalScope] constants)."
msgstr ""
-#: doc/classes/EditorInterface.xml:173
+#: doc/classes/EditorInterface.xml:215
msgid "Saves the scene as a file at [code]path[/code]."
msgstr ""
-#: doc/classes/EditorInterface.xml:182
+#: doc/classes/EditorInterface.xml:224
msgid ""
"Selects the file, with the path provided by [code]file[/code], in the "
"FileSystem dock."
msgstr ""
-#: doc/classes/EditorInterface.xml:201
+#: doc/classes/EditorInterface.xml:233
+msgid ""
+"Sets the editor's current main screen to the one specified in [code]name[/"
+"code]. [code]name[/code] must match the text of the tab in question exactly "
+"([code]2D[/code], [code]3D[/code], [code]Script[/code], [code]AssetLib[/"
+"code])."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:244
msgid ""
"Sets the enabled status of a plugin. The plugin name is the same as its "
"directory name."
msgstr ""
+#: doc/classes/EditorInterface.xml:251
+msgid "Stops the scene that is currently playing."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:257
+msgid ""
+"If [code]true[/code], enables distraction-free mode which hides side docks "
+"to increase the space available for the main view."
+msgstr ""
+
#: doc/classes/EditorNode3DGizmo.xml:4
msgid "Custom gizmo for editing Node3D objects."
msgstr ""
@@ -18317,14 +18611,20 @@ msgid ""
"information."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:26
+#: doc/classes/EditorNode3DGizmo.xml:18
+msgid ""
+"Adds the specified [code]segments[/code] to the gizmo's collision shape for "
+"picking. Call this function during [method redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:27
msgid ""
"Adds collision triangles to the gizmo for picking. A [TriangleMesh] can be "
"generated from a regular [Mesh] too. Call this function during [method "
"redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:41
+#: doc/classes/EditorNode3DGizmo.xml:42
msgid ""
"Adds a list of handles (points) which can be used to deform the object being "
"edited.\n"
@@ -18332,20 +18632,33 @@ msgid ""
"handles. Call this function during [method redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:57
+#: doc/classes/EditorNode3DGizmo.xml:58
msgid ""
"Adds lines to the gizmo (as sets of 2 points), with a given material. The "
"lines are used for visualizing the gizmo. Call this function during [method "
"redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:84
+#: doc/classes/EditorNode3DGizmo.xml:73
+msgid ""
+"Adds a mesh to the gizmo with the specified [code]billboard[/code] state, "
+"[code]skeleton[/code] and [code]material[/code]. If [code]billboard[/code] "
+"is [code]true[/code], the mesh will rotate to always face the camera. Call "
+"this function during [method redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:86
msgid ""
"Adds an unscaled billboard for visualization. Call this function during "
"[method redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:103
+#: doc/classes/EditorNode3DGizmo.xml:93
+msgid ""
+"Removes everything in the gizmo including meshes, collisions and handles."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:106
msgid ""
"Commit a handle being edited (handles must have been previously added by "
"[method add_handles]).\n"
@@ -18353,40 +18666,42 @@ msgid ""
"restore the edited value to the original is provided."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:113
+#: doc/classes/EditorNode3DGizmo.xml:116
msgid ""
"Gets the name of an edited handle (handles must have been previously added "
"by [method add_handles]).\n"
"Handles can be named for reference to the user when editing."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:123
+#: doc/classes/EditorNode3DGizmo.xml:126
msgid ""
"Gets actual value of a handle. This value can be anything and used for "
"eventually undoing the motion when calling [method commit_handle]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:130
+#: doc/classes/EditorNode3DGizmo.xml:133
msgid ""
"Returns the [EditorNode3DGizmoPlugin] that owns this gizmo. It's useful to "
"retrieve materials using [method EditorNode3DGizmoPlugin.get_material]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:137
+#: doc/classes/EditorNode3DGizmo.xml:140
msgid "Returns the Node3D node associated with this gizmo."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:146
-msgid "Gets whether a handle is highlighted or not."
+#: doc/classes/EditorNode3DGizmo.xml:149
+msgid ""
+"Returns [code]true[/code] if the handle at index [code]index[/code] is "
+"highlighted by being hovered with the mouse."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:153
+#: doc/classes/EditorNode3DGizmo.xml:156
msgid ""
-"This function is called when the Node3D this gizmo refers to changes (the "
+"This function is called when the [Node3D] this gizmo refers to changes (the "
"[method Node3D.update_gizmo] is called)."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:166
+#: doc/classes/EditorNode3DGizmo.xml:169
msgid ""
"This function is used when the user drags a gizmo handle (previously added "
"with [method add_handles]) in screen coordinates.\n"
@@ -18394,6 +18709,18 @@ msgid ""
"raycasts."
msgstr ""
+#: doc/classes/EditorNode3DGizmo.xml:179
+msgid ""
+"Sets the gizmo's hidden state. If [code]true[/code], the gizmo will be "
+"hidden. If [code]false[/code], it will be shown."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:188
+msgid ""
+"Sets the reference [Node3D] node for the gizmo. [code]node[/code] must "
+"inherit from [Node3D]."
+msgstr ""
+
#: doc/classes/EditorNode3DGizmoPlugin.xml:4
msgid "Used by the editor to define Node3D gizmo types."
msgstr ""
@@ -18486,7 +18813,17 @@ msgid ""
"visibility menu."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:150
+#: doc/classes/EditorNode3DGizmoPlugin.xml:142
+msgid ""
+"Override this method to set the gizmo's priority. Higher values correspond "
+"to higher priority. If a gizmo with higher priority conflicts with another "
+"gizmo, only the gizmo with higher priority will be used.\n"
+"All built-in editor gizmos return a priority of [code]-1[/code]. If not "
+"overridden, this method will return [code]0[/code], which means custom "
+"gizmos will automatically override built-in gizmos."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:152
msgid ""
"Override this method to define which Node3D nodes have a gizmo from this "
"plugin. Whenever a [Node3D] node is added to a scene this method is called, "
@@ -18494,25 +18831,25 @@ msgid ""
"assigned and is added to this plugin's list of active gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:161
+#: doc/classes/EditorNode3DGizmoPlugin.xml:163
msgid ""
"Gets whether a handle is highlighted or not. Called for this plugin's active "
"gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:168
+#: doc/classes/EditorNode3DGizmoPlugin.xml:170
msgid ""
"Override this method to define whether Node3D with this gizmo should be "
"selecteble even when the gizmo is hidden."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:177
+#: doc/classes/EditorNode3DGizmoPlugin.xml:179
msgid ""
"Callback to redraw the provided gizmo. Called for this plugin's active "
"gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:192
+#: doc/classes/EditorNode3DGizmoPlugin.xml:194
msgid ""
"Update the value of a handle after it has been updated. Called for this "
"plugin's active gizmos."
@@ -18599,7 +18936,13 @@ msgid ""
"should be cleaned up using [code]remove_tool_menu_item(name)[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:149
+#: doc/classes/EditorPlugin.xml:151
+msgid ""
+"Registers a custom translation parser plugin for extracting translatable "
+"strings from custom files."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:158
msgid ""
"This method is called when the editor is about to save the project, switch "
"to another tab, etc. It asks the plugin to apply any pending state changes "
@@ -18608,32 +18951,32 @@ msgid ""
"must apply the shader code being written by the user to the object."
msgstr ""
-#: doc/classes/EditorPlugin.xml:163
+#: doc/classes/EditorPlugin.xml:172
msgid ""
"Clear all the state and reset the object being edited to zero. This ensures "
"your plugin does not keep editing a currently existing node, or a node from "
"the wrong scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:170
+#: doc/classes/EditorPlugin.xml:179
msgid ""
"Called by the engine when the user disables the [EditorPlugin] in the Plugin "
"tab of the project settings window."
msgstr ""
-#: doc/classes/EditorPlugin.xml:179
+#: doc/classes/EditorPlugin.xml:188
msgid ""
"This function is used for plugins that edit specific object types (nodes or "
"resources). It requests the editor to edit the given object."
msgstr ""
-#: doc/classes/EditorPlugin.xml:186
+#: doc/classes/EditorPlugin.xml:195
msgid ""
"Called by the engine when the user enables the [EditorPlugin] in the Plugin "
"tab of the project settings window."
msgstr ""
-#: doc/classes/EditorPlugin.xml:211
+#: doc/classes/EditorPlugin.xml:220
msgid ""
"Called when there is a root node in the current edited scene, [method "
"handles] is implemented and an [InputEvent] happens in the 2D viewport. "
@@ -18658,7 +19001,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:237
+#: doc/classes/EditorPlugin.xml:246
msgid ""
"Called when there is a root node in the current edited scene, [method "
"handles] is implemented and an [InputEvent] happens in the 3D viewport. "
@@ -18683,20 +19026,20 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:259
+#: doc/classes/EditorPlugin.xml:268
msgid ""
"This is for editors that edit script-based objects. You can return a list of "
"breakpoints in the format ([code]script:line[/code]), for example: "
"[code]res://path_to_script.gd:25[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:266
+#: doc/classes/EditorPlugin.xml:275
msgid ""
"Returns the [EditorInterface] object that gives you control over Godot "
"editor's window and its functionalities."
msgstr ""
-#: doc/classes/EditorPlugin.xml:273
+#: doc/classes/EditorPlugin.xml:282
msgid ""
"Override this method in your plugin to return a [Texture2D] in order to give "
"it an icon.\n"
@@ -18714,7 +19057,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:289
+#: doc/classes/EditorPlugin.xml:298
msgid ""
"Override this method in your plugin to provide the name of the plugin when "
"displayed in the Godot editor.\n"
@@ -18722,33 +19065,33 @@ msgid ""
"of the \"2D\", \"3D\", \"Script\", and \"AssetLib\" buttons."
msgstr ""
-#: doc/classes/EditorPlugin.xml:297
+#: doc/classes/EditorPlugin.xml:306
msgid ""
"Gets the Editor's dialogue used for making scripts.\n"
"[b]Note:[/b] Users can configure it before use."
msgstr ""
-#: doc/classes/EditorPlugin.xml:305
+#: doc/classes/EditorPlugin.xml:314
msgid ""
"Gets the state of your plugin editor. This is used when saving the scene (so "
"state is kept when opening it again) and for switching tabs (so state can be "
"restored when the tab returns)."
msgstr ""
-#: doc/classes/EditorPlugin.xml:312
+#: doc/classes/EditorPlugin.xml:321
msgid ""
"Gets the undo/redo object. Most actions in the editor can be undoable, so "
"use this object to make sure this happens when it's worth it."
msgstr ""
-#: doc/classes/EditorPlugin.xml:321
+#: doc/classes/EditorPlugin.xml:330
msgid ""
"Gets the GUI layout of the plugin. This is used to save the project's editor "
"layout when [method queue_save_layout] is called or the editor layout was "
"changed(For example changing the position of a dock)."
msgstr ""
-#: doc/classes/EditorPlugin.xml:330
+#: doc/classes/EditorPlugin.xml:339
msgid ""
"Implement this function if your plugin edits a specific type of object "
"(Resource or Node). If you return [code]true[/code], then you will get the "
@@ -18758,14 +19101,14 @@ msgid ""
"be called too."
msgstr ""
-#: doc/classes/EditorPlugin.xml:337
+#: doc/classes/EditorPlugin.xml:346
msgid ""
"Returns [code]true[/code] if this is a main screen editor plugin (it goes in "
"the workspace selector together with [b]2D[/b], [b]3D[/b], [b]Script[/b] and "
"[b]AssetLib[/b])."
msgstr ""
-#: doc/classes/EditorPlugin.xml:360
+#: doc/classes/EditorPlugin.xml:369
msgid ""
"This function will be called when the editor is requested to become visible. "
"It is used for plugins that edit a specific object type.\n"
@@ -18773,85 +19116,89 @@ msgid ""
"manually."
msgstr ""
-#: doc/classes/EditorPlugin.xml:368
+#: doc/classes/EditorPlugin.xml:377
msgid "Queue save the project's editor layout."
msgstr ""
-#: doc/classes/EditorPlugin.xml:377
+#: doc/classes/EditorPlugin.xml:386
msgid "Removes an Autoload [code]name[/code] from the list."
msgstr ""
-#: doc/classes/EditorPlugin.xml:386
+#: doc/classes/EditorPlugin.xml:395
msgid ""
"Removes the control from the bottom panel. You have to manually [method Node."
"queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:397
+#: doc/classes/EditorPlugin.xml:406
msgid ""
"Removes the control from the specified container. You have to manually "
"[method Node.queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:406
+#: doc/classes/EditorPlugin.xml:415
msgid ""
"Removes the control from the dock. You have to manually [method Node."
"queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:415
+#: doc/classes/EditorPlugin.xml:424
msgid "Removes a custom type added by [method add_custom_type]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:464
+#: doc/classes/EditorPlugin.xml:473
msgid "Removes a menu [code]name[/code] from [b]Project > Tools[/b]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:471
+#: doc/classes/EditorPlugin.xml:482
+msgid "Removes a registered custom translation parser plugin."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:489
msgid ""
"This method is called after the editor saves the project or when it's "
"closed. It asks the plugin to save edited external scenes/resources."
msgstr ""
-#: doc/classes/EditorPlugin.xml:484
+#: doc/classes/EditorPlugin.xml:502
msgid ""
"Use this method if you always want to receive inputs from 3D view screen "
"inside [method forward_spatial_gui_input]. It might be especially usable if "
"your plugin will want to use raycast in the scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:493
+#: doc/classes/EditorPlugin.xml:511
msgid "Restore the state saved by [method get_state]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:502
+#: doc/classes/EditorPlugin.xml:520
msgid "Restore the plugin GUI layout saved by [method get_window_layout]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:509
+#: doc/classes/EditorPlugin.xml:527
msgid "Updates the overlays of the editor (2D/3D) viewport."
msgstr ""
-#: doc/classes/EditorPlugin.xml:518
+#: doc/classes/EditorPlugin.xml:536
msgid ""
"Emitted when user changes the workspace ([b]2D[/b], [b]3D[/b], [b]Script[/"
"b], [b]AssetLib[/b]). Also works with custom screens defined by plugins."
msgstr ""
-#: doc/classes/EditorPlugin.xml:531
+#: doc/classes/EditorPlugin.xml:549
msgid ""
"Emitted when the scene is changed in the editor. The argument will return "
"the root node of the scene that has just become active. If this scene is new "
"and empty, the argument will be [code]null[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:538
+#: doc/classes/EditorPlugin.xml:556
msgid ""
"Emitted when user closes a scene. The argument is file path to a closed "
"scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:584
+#: doc/classes/EditorPlugin.xml:602
msgid "Represents the size of the [enum DockSlot] enum."
msgstr ""
@@ -18906,64 +19253,83 @@ msgid "When this virtual function is called, you must update your editor."
msgstr ""
#: doc/classes/EditorProperty.xml:76
-msgid "Used by the inspector, set when property is checkable."
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is "
+"checkable."
msgstr ""
#: doc/classes/EditorProperty.xml:79
-msgid "Used by the inspector, when the property is checked."
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is checked."
msgstr ""
-#: doc/classes/EditorProperty.xml:84
-msgid "Used by the inspector, when the property must draw with error color."
+#: doc/classes/EditorProperty.xml:82
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property can be "
+"deleted by the user."
msgstr ""
-#: doc/classes/EditorProperty.xml:87
-msgid "Used by the inspector, when the property can add keys for animation."
+#: doc/classes/EditorProperty.xml:85
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property must draw "
+"with error color. This is used for editable children's properties."
msgstr ""
-#: doc/classes/EditorProperty.xml:90
-msgid "Sets this property to change the label (if you want to show one)."
+#: doc/classes/EditorProperty.xml:88
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property can add "
+"keys for animation."
msgstr ""
-#: doc/classes/EditorProperty.xml:93
-msgid "Used by the inspector, when the property is read-only."
+#: doc/classes/EditorProperty.xml:91
+msgid "Set this property to change the label (if you want to show one)."
msgstr ""
-#: doc/classes/EditorProperty.xml:103
+#: doc/classes/EditorProperty.xml:94
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is read-"
+"only."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:104
msgid ""
"Emit it if you want multiple properties modified at the same time. Do not "
"use if added via [method EditorInspectorPlugin.parse_property]."
msgstr ""
-#: doc/classes/EditorProperty.xml:112
+#: doc/classes/EditorProperty.xml:113
msgid "Used by sub-inspectors. Emit it if what was selected was an Object ID."
msgstr ""
-#: doc/classes/EditorProperty.xml:121
+#: doc/classes/EditorProperty.xml:122
msgid ""
"Do not emit this manually, use the [method emit_changed] method instead."
msgstr ""
-#: doc/classes/EditorProperty.xml:130
+#: doc/classes/EditorProperty.xml:131
msgid "Emitted when a property was checked. Used internally."
msgstr ""
-#: doc/classes/EditorProperty.xml:143
+#: doc/classes/EditorProperty.xml:138
+msgid "Emitted when a property was deleted. Used internally."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:145
msgid ""
"Emit it if you want to add this value as an animation key (check for keying "
"being enabled first)."
msgstr ""
-#: doc/classes/EditorProperty.xml:152
+#: doc/classes/EditorProperty.xml:154
msgid "Emit it if you want to key a property with a single value."
msgstr ""
-#: doc/classes/EditorProperty.xml:161
+#: doc/classes/EditorProperty.xml:163
msgid ""
"If you want a sub-resource to be edited, emit this signal with the resource."
msgstr ""
-#: doc/classes/EditorProperty.xml:170
+#: doc/classes/EditorProperty.xml:172
msgid "Emitted when selected. Used internally."
msgstr ""
@@ -19248,17 +19614,26 @@ msgstr ""
msgid ""
"Object that holds the project-independent editor settings. These settings "
"are generally visible in the [b]Editor > Editor Settings[/b] menu.\n"
-"Accessing the settings is done by using the regular [Object] API, such as:\n"
-"[codeblock]\n"
-"settings.set(prop,value)\n"
-"settings.get(prop)\n"
-"list_of_settings = settings.get_property_list()\n"
+"Property names use slash delimiters to distinguish sections. Setting values "
+"can be of any [Variant] type. It's recommended to use [code]snake_case[/"
+"code] for editor settings to be consistent with the Godot editor itself.\n"
+"Accessing the settings can be done using the following methods, such as:\n"
+"[codeblock]\n"
+"# `settings.set(\"some/property\", value)` also works as this class "
+"overrides `_set()` internally.\n"
+"settings.set_setting(\"some/property\",value)\n"
+"\n"
+"# `settings.get(\"some/property\", value)` also works as this class "
+"overrides `_get()` internally.\n"
+"settings.get_setting(\"some/property\")\n"
+"\n"
+"var list_of_settings = settings.get_property_list()\n"
"[/codeblock]\n"
"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
"the singleton using [method EditorInterface.get_editor_settings]."
msgstr ""
-#: doc/classes/EditorSettings.xml:25
+#: doc/classes/EditorSettings.xml:30
msgid ""
"Adds a custom property info to a property. The dictionary must contain:\n"
"- [code]name[/code]: [String] (the name of the property)\n"
@@ -19280,52 +19655,173 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorSettings.xml:50
-msgid "Erase a given setting (pass full property path)."
+#: doc/classes/EditorSettings.xml:55
+msgid "Erases the setting whose name is specified by [code]property[/code]."
msgstr ""
-#: doc/classes/EditorSettings.xml:57
-msgid "Gets the list of favorite files and directories for this project."
+#: doc/classes/EditorSettings.xml:62
+msgid "Returns the list of favorite files and directories for this project."
msgstr ""
-#: doc/classes/EditorSettings.xml:76
+#: doc/classes/EditorSettings.xml:75
msgid ""
-"Gets the specific project settings path. Projects all have a unique sub-"
-"directory inside the settings path where project specific settings are saved."
+"Returns project-specific metadata for the [code]section[/code] and "
+"[code]key[/code] specified. If the metadata doesn't exist, [code]default[/"
+"code] will be returned instead. See also [method set_project_metadata]."
msgstr ""
-#: doc/classes/EditorSettings.xml:83
+#: doc/classes/EditorSettings.xml:82
msgid ""
-"Gets the list of recently visited folders in the file dialog for this "
+"Returns the project-specific settings path. Projects all have a unique "
+"subdirectory inside the settings path where project-specific settings are "
+"saved."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:89
+msgid ""
+"Returns the list of recently visited folders in the file dialog for this "
"project."
msgstr ""
#: doc/classes/EditorSettings.xml:98
msgid ""
+"Returns the value of the setting specified by [code]name[/code]. This is "
+"equivalent to using [method Object.get] on the EditorSettings instance."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:105
+msgid ""
"Gets the global settings path for the engine. Inside this path, you can find "
"some standard paths such as:\n"
"[code]settings/tmp[/code] - Used for temporary storage of files\n"
"[code]settings/templates[/code] - Where export templates are located"
msgstr ""
-#: doc/classes/EditorSettings.xml:133
+#: doc/classes/EditorSettings.xml:116
+msgid ""
+"Returns [code]true[/code] if the setting specified by [code]name[/code] "
+"exists, [code]false[/code] otherwise."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:125
+msgid ""
+"Returns [code]true[/code] if the setting specified by [code]name[/code] can "
+"have its value reverted to the default value, [code]false[/code] otherwise. "
+"When this method returns [code]true[/code], a Revert button will display "
+"next to the setting in the Editor Settings."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:134
+msgid ""
+"Returns the default value of the setting specified by [code]name[/code]. "
+"This is the value that would be applied when clicking the Revert button in "
+"the Editor Settings."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:143
msgid "Sets the list of favorite files and directories for this project."
msgstr ""
-#: doc/classes/EditorSettings.xml:166
+#: doc/classes/EditorSettings.xml:156
+msgid ""
+"Sets the initial value of the setting specified by [code]name[/code] to "
+"[code]value[/code]. This is used to provide a value for the Revert button in "
+"the Editor Settings. If [code]update_current[/code] is true, the current "
+"value of the setting will be set to [code]value[/code] as well."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:169
+msgid ""
+"Sets project-specific metadata with the [code]section[/code], [code]key[/"
+"code] and [code]data[/code] specified. This metadata is stored outside the "
+"project folder and therefore won't be checked into version control. See also "
+"[method get_project_metadata]."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:178
msgid ""
"Sets the list of recently visited folders in the file dialog for this "
"project."
msgstr ""
-#: doc/classes/EditorSettings.xml:183
-msgid "Emitted when editor settings change."
+#: doc/classes/EditorSettings.xml:189
+msgid ""
+"Sets the [code]value[/code] of the setting specified by [code]name[/code]. "
+"This is equivalent to using [method Object.set] on the EditorSettings "
+"instance."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:196
+msgid "Emitted after any editor setting has changed."
msgstr ""
-#: doc/classes/EditorSettings.xml:189
+#: doc/classes/EditorSettings.xml:202
+msgid ""
+"Emitted after any editor setting has changed. It's used by various editor "
+"plugins to update their visuals on theme changes or logic on configuration "
+"changes."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:4
+msgid ""
+"Plugin for adding custom parsers to extract strings that are to be "
+"translated from custom files (.csv, .json etc.)."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:7
+msgid ""
+"Plugins are registered via [method EditorPlugin."
+"add_translation_parser_plugin] method. To define the parsing and string "
+"extraction logic, override the [method parse_file] method in script.\n"
+"The extracted strings will be written into a POT file selected by user under "
+"\"POT Generation\" in \"Localization\" tab in \"Project Settings\" menu.\n"
+"Below shows an example of a custom parser that extracts strings in a CSV "
+"file to write into a POT.\n"
+"[codeblock]\n"
+"tool\n"
+"extends EditorTranslationParserPlugin\n"
+"\n"
+"\n"
+"func parse_file(path, extracted_strings):\n"
+" var file = File.new()\n"
+" file.open(path, File.READ)\n"
+" var text = file.get_as_text()\n"
+" var split_strs = text.split(\",\", false, 0)\n"
+" for s in split_strs:\n"
+" extracted_strings.append(s)\n"
+" #print(\"Extracted string: \" + s)\n"
+"\n"
+"\n"
+"func get_recognized_extensions():\n"
+" return [\"csv\"]\n"
+"[/codeblock]\n"
+"[b]Note:[/b] If you override parsing logic for standard script types "
+"(GDScript, C#, etc.), it would be better to load the [code]path[/code] "
+"argument using [method ResourceLoader.load]. This is because built-in "
+"scripts are loaded as [Resource] type, not [File] type.\n"
+"For example:\n"
+"[codeblock]\n"
+"func parse_file(path, extracted_strings):\n"
+" var res = ResourceLoader.load(path, \"Script\")\n"
+" var text = res.get_source_code()\n"
+" # Parsing logic.\n"
+"\n"
+"\n"
+"func get_recognized_extensions():\n"
+" return [\"gd\"]\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:48
+msgid ""
+"Gets the list of file extensions to associate with this parser, e.g. [code]"
+"[\"csv\"][/code]."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:59
msgid ""
-"Emitted when editor settings change. It used by various editor plugins to "
-"update their visuals on theme changes or logic on configuration changes."
+"Override this method to define a custom parsing logic to extract the "
+"translatable strings."
msgstr ""
#: doc/classes/EditorVCSInterface.xml:4
@@ -19936,15 +20432,15 @@ msgid ""
"to 1.3 to compensate for the lack of HDR rendering."
msgstr ""
-#: doc/classes/Environment.xml:190
+#: doc/classes/Environment.xml:214
msgid "The [Sky] resource used for this [Environment]."
msgstr ""
-#: doc/classes/Environment.xml:197
+#: doc/classes/Environment.xml:221
msgid "The depth tolerance for screen-space reflections."
msgstr ""
-#: doc/classes/Environment.xml:200
+#: doc/classes/Environment.xml:224
msgid ""
"If [code]true[/code], screen-space reflections are enabled. Screen-space "
"reflections are more accurate than reflections from [GIProbe]s or "
@@ -19952,48 +20448,48 @@ msgid ""
"others."
msgstr ""
-#: doc/classes/Environment.xml:203
+#: doc/classes/Environment.xml:227
msgid ""
"The fade-in distance for screen-space reflections. Affects the area from the "
"reflected material to the screen-space reflection)."
msgstr ""
-#: doc/classes/Environment.xml:206
+#: doc/classes/Environment.xml:230
msgid ""
"The fade-out distance for screen-space reflections. Affects the area from "
"the screen-space reflection to the \"global\" reflection."
msgstr ""
-#: doc/classes/Environment.xml:209
+#: doc/classes/Environment.xml:233
msgid ""
"The maximum number of steps for screen-space reflections. Higher values are "
"slower."
msgstr ""
-#: doc/classes/Environment.xml:212
+#: doc/classes/Environment.xml:236
msgid ""
"The screen-space ambient occlusion intensity on materials that have an AO "
"texture defined. Values higher than [code]0[/code] will make the SSAO effect "
"visible in areas darkened by AO textures."
msgstr ""
-#: doc/classes/Environment.xml:215
+#: doc/classes/Environment.xml:239
msgid ""
"The screen-space ambient occlusion bias. This should be kept high enough to "
"prevent \"smooth\" curves from being affected by ambient occlusion."
msgstr ""
-#: doc/classes/Environment.xml:218
+#: doc/classes/Environment.xml:242
msgid ""
"The screen-space ambient occlusion blur quality. See [enum SSAOBlur] for "
"possible values."
msgstr ""
-#: doc/classes/Environment.xml:221
+#: doc/classes/Environment.xml:245
msgid "The screen-space ambient occlusion edge sharpness."
msgstr ""
-#: doc/classes/Environment.xml:224
+#: doc/classes/Environment.xml:248
msgid ""
"If [code]true[/code], the screen-space ambient occlusion effect is enabled. "
"This darkens objects' corners and cavities to simulate ambient light not "
@@ -20004,13 +20500,13 @@ msgid ""
"issues."
msgstr ""
-#: doc/classes/Environment.xml:227
+#: doc/classes/Environment.xml:251
msgid ""
"The primary screen-space ambient occlusion intensity. See also [member "
"ssao_radius]."
msgstr ""
-#: doc/classes/Environment.xml:230
+#: doc/classes/Environment.xml:254
msgid ""
"The screen-space ambient occlusion intensity in direct light. In real life, "
"ambient occlusion only applies to indirect light, which means its effects "
@@ -20018,46 +20514,46 @@ msgid ""
"the SSAO effect visible in direct light."
msgstr ""
-#: doc/classes/Environment.xml:233
+#: doc/classes/Environment.xml:257
msgid "The primary screen-space ambient occlusion radius."
msgstr ""
-#: doc/classes/Environment.xml:236
+#: doc/classes/Environment.xml:260
msgid "The default exposure used for tonemapping."
msgstr ""
-#: doc/classes/Environment.xml:239
+#: doc/classes/Environment.xml:263
msgid ""
"The tonemapping mode to use. Tonemapping is the process that \"converts\" "
"HDR values to be suitable for rendering on a LDR display. (Godot doesn't "
"support rendering on HDR displays yet.)"
msgstr ""
-#: doc/classes/Environment.xml:242
+#: doc/classes/Environment.xml:266
msgid ""
"The white reference value for tonemapping. Only effective if the [member "
"tonemap_mode] isn't set to [constant TONE_MAPPER_LINEAR]."
msgstr ""
-#: doc/classes/Environment.xml:247
+#: doc/classes/Environment.xml:271
msgid ""
"Clears the background using the clear color defined in [member "
"ProjectSettings.rendering/environment/default_clear_color]."
msgstr ""
-#: doc/classes/Environment.xml:250
+#: doc/classes/Environment.xml:274
msgid "Clears the background using a custom clear color."
msgstr ""
-#: doc/classes/Environment.xml:253
+#: doc/classes/Environment.xml:277
msgid "Displays a user-defined sky in the background."
msgstr ""
-#: doc/classes/Environment.xml:256
+#: doc/classes/Environment.xml:280
msgid "Displays a [CanvasLayer] in the background."
msgstr ""
-#: doc/classes/Environment.xml:259
+#: doc/classes/Environment.xml:283
msgid ""
"Keeps on screen every pixel drawn in the background. This is the fastest "
"background mode, but it can only be safely used in fully-interior scenes (no "
@@ -20065,107 +20561,107 @@ msgid ""
"is visible, \"ghost trail\" artifacts will be visible when moving the camera."
msgstr ""
-#: doc/classes/Environment.xml:262 doc/classes/RenderingServer.xml:3446
+#: doc/classes/Environment.xml:286 doc/classes/RenderingServer.xml:3457
msgid "Displays a camera feed in the background."
msgstr ""
-#: doc/classes/Environment.xml:265
+#: doc/classes/Environment.xml:289
msgid "Represents the size of the [enum BGMode] enum."
msgstr ""
-#: doc/classes/Environment.xml:268 doc/classes/RenderingServer.xml:3452
+#: doc/classes/Environment.xml:292 doc/classes/RenderingServer.xml:3463
msgid ""
"Gather ambient light from whichever source is specified as the background."
msgstr ""
-#: doc/classes/Environment.xml:271 doc/classes/RenderingServer.xml:3455
+#: doc/classes/Environment.xml:295 doc/classes/RenderingServer.xml:3466
msgid "Disable ambient light."
msgstr ""
-#: doc/classes/Environment.xml:274 doc/classes/RenderingServer.xml:3458
+#: doc/classes/Environment.xml:298 doc/classes/RenderingServer.xml:3469
msgid "Specify a specific [Color] for ambient light."
msgstr ""
-#: doc/classes/Environment.xml:277 doc/classes/RenderingServer.xml:3461
+#: doc/classes/Environment.xml:301 doc/classes/RenderingServer.xml:3472
msgid ""
"Gather ambient light from the [Sky] regardless of what the background is."
msgstr ""
-#: doc/classes/Environment.xml:280 doc/classes/RenderingServer.xml:3464
+#: doc/classes/Environment.xml:304 doc/classes/RenderingServer.xml:3475
msgid "Use the background for reflections."
msgstr ""
-#: doc/classes/Environment.xml:283 doc/classes/RenderingServer.xml:3467
+#: doc/classes/Environment.xml:307 doc/classes/RenderingServer.xml:3478
msgid "Disable reflections."
msgstr ""
-#: doc/classes/Environment.xml:286 doc/classes/RenderingServer.xml:3470
+#: doc/classes/Environment.xml:310 doc/classes/RenderingServer.xml:3481
msgid "Use the [Sky] for reflections regardless of what the background is."
msgstr ""
-#: doc/classes/Environment.xml:289 doc/classes/RenderingServer.xml:3473
+#: doc/classes/Environment.xml:313
+msgid ""
+"Linear tonemapper operator. Reads the linear data and passes it on "
+"unmodified."
+msgstr ""
+
+#: doc/classes/Environment.xml:316
+msgid ""
+"Reinhardt tonemapper operator. Performs a variation on rendered pixels' "
+"colors by this formula: [code]color = color / (1 + color)[/code]."
+msgstr ""
+
+#: doc/classes/Environment.xml:319
+msgid "Filmic tonemapper operator."
+msgstr ""
+
+#: doc/classes/Environment.xml:322
+msgid "Academy Color Encoding System tonemapper operator."
+msgstr ""
+
+#: doc/classes/Environment.xml:325 doc/classes/RenderingServer.xml:3484
msgid ""
"Additive glow blending mode. Mostly used for particles, glows (bloom), lens "
"flare, bright sources."
msgstr ""
-#: doc/classes/Environment.xml:292 doc/classes/RenderingServer.xml:3476
+#: doc/classes/Environment.xml:328 doc/classes/RenderingServer.xml:3487
msgid ""
"Screen glow blending mode. Increases brightness, used frequently with bloom."
msgstr ""
-#: doc/classes/Environment.xml:295 doc/classes/RenderingServer.xml:3479
+#: doc/classes/Environment.xml:331 doc/classes/RenderingServer.xml:3490
msgid ""
"Soft light glow blending mode. Modifies contrast, exposes shadows and "
"highlights (vivid bloom)."
msgstr ""
-#: doc/classes/Environment.xml:298 doc/classes/RenderingServer.xml:3482
+#: doc/classes/Environment.xml:334 doc/classes/RenderingServer.xml:3493
msgid ""
"Replace glow blending mode. Replaces all pixels' color by the glow value. "
"This can be used to simulate a full-screen blur effect by tweaking the glow "
"parameters to match the original image's brightness."
msgstr ""
-#: doc/classes/Environment.xml:301 doc/classes/RenderingServer.xml:3485
+#: doc/classes/Environment.xml:337 doc/classes/RenderingServer.xml:3496
msgid ""
"Mixes the glow with the underlying color to avoid increasing brightness as "
"much while still maintaining a glow effect."
msgstr ""
-#: doc/classes/Environment.xml:304
-msgid ""
-"Linear tonemapper operator. Reads the linear data and passes it on "
-"unmodified."
-msgstr ""
-
-#: doc/classes/Environment.xml:307
-msgid ""
-"Reinhardt tonemapper operator. Performs a variation on rendered pixels' "
-"colors by this formula: [code]color = color / (1 + color)[/code]."
-msgstr ""
-
-#: doc/classes/Environment.xml:310
-msgid "Filmic tonemapper operator."
-msgstr ""
-
-#: doc/classes/Environment.xml:313
-msgid "Academy Color Encoding System tonemapper operator."
-msgstr ""
-
-#: doc/classes/Environment.xml:316
+#: doc/classes/Environment.xml:340
msgid "No blur for the screen-space ambient occlusion effect (fastest)."
msgstr ""
-#: doc/classes/Environment.xml:319
+#: doc/classes/Environment.xml:343
msgid "1×1 blur for the screen-space ambient occlusion effect."
msgstr ""
-#: doc/classes/Environment.xml:322
+#: doc/classes/Environment.xml:346
msgid "2×2 blur for the screen-space ambient occlusion effect."
msgstr ""
-#: doc/classes/Environment.xml:325
+#: doc/classes/Environment.xml:349
msgid ""
"3×3 blur for the screen-space ambient occlusion effect. Increases the radius "
"of the blur for a smoother look, but can result in checkerboard-like "
@@ -20250,14 +20746,17 @@ msgid ""
" var content = file.get_as_text()\n"
" file.close()\n"
" return content\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"In the example above, the file will be saved in the user data folder as "
+"specified in the [url=https://docs.godotengine.org/en/latest/tutorials/io/"
+"data_paths.html]Data paths[/url] documentation."
msgstr ""
-#: doc/classes/File.xml:32
+#: doc/classes/File.xml:33
msgid "Closes the currently opened file."
msgstr ""
-#: doc/classes/File.xml:39
+#: doc/classes/File.xml:40
msgid ""
"Returns [code]true[/code] if the file cursor has read past the end of the "
"file.\n"
@@ -20268,7 +20767,7 @@ msgid ""
"get_position] to implement a custom logic."
msgstr ""
-#: doc/classes/File.xml:49
+#: doc/classes/File.xml:50
msgid ""
"Returns [code]true[/code] if the file exists in the given path.\n"
"[b]Note:[/b] Many resources types are imported (e.g. textures or sound "
@@ -20281,41 +20780,41 @@ msgid ""
"source asset is present in [code]res://[/code], but fail when exported)."
msgstr ""
-#: doc/classes/File.xml:57
+#: doc/classes/File.xml:58
msgid ""
"Returns the next 16 bits from the file as an integer. See [method store_16] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:64
+#: doc/classes/File.xml:65
msgid ""
"Returns the next 32 bits from the file as an integer. See [method store_32] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:71
+#: doc/classes/File.xml:72
msgid ""
"Returns the next 64 bits from the file as an integer. See [method store_64] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:78
+#: doc/classes/File.xml:79
msgid ""
"Returns the next 8 bits from the file as an integer. See [method store_8] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:85
+#: doc/classes/File.xml:86
msgid ""
"Returns the whole file as a [String].\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:95
+#: doc/classes/File.xml:96
msgid "Returns next [code]len[/code] bytes of the file as a [PackedByteArray]."
msgstr ""
-#: doc/classes/File.xml:104
+#: doc/classes/File.xml:105
msgid ""
"Returns the next value of the file in CSV (Comma-Separated Values) format. "
"You can pass a different delimiter [code]delim[/code] to use other than the "
@@ -20324,37 +20823,37 @@ msgid ""
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:112
+#: doc/classes/File.xml:113
msgid "Returns the next 64 bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:119
+#: doc/classes/File.xml:120
msgid ""
"Returns the last error that happened when trying to perform operations. "
"Compare with the [code]ERR_FILE_*[/code] constants from [enum Error]."
msgstr ""
-#: doc/classes/File.xml:126
+#: doc/classes/File.xml:127
msgid "Returns the next 32 bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:133
+#: doc/classes/File.xml:134
msgid "Returns the size of the file in bytes."
msgstr ""
-#: doc/classes/File.xml:140
+#: doc/classes/File.xml:141
msgid ""
"Returns the next line of the file as a [String].\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:150
+#: doc/classes/File.xml:151
msgid ""
"Returns an MD5 String representing the file at the given path or an empty "
"[String] on failure."
msgstr ""
-#: doc/classes/File.xml:159
+#: doc/classes/File.xml:160
msgid ""
"Returns the last time the [code]file[/code] was modified in unix timestamp "
"format or returns a [String] \"ERROR IN [code]file[/code]\". This unix "
@@ -20362,35 +20861,35 @@ msgid ""
"get_datetime_from_unix_time]."
msgstr ""
-#: doc/classes/File.xml:166
+#: doc/classes/File.xml:167
msgid ""
"Returns a [String] saved in Pascal format from the file.\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:174
+#: doc/classes/File.xml:175
msgid "Returns the path as a [String] for the current open file."
msgstr ""
-#: doc/classes/File.xml:181
+#: doc/classes/File.xml:182
msgid "Returns the absolute path as a [String] for the current open file."
msgstr ""
-#: doc/classes/File.xml:188
+#: doc/classes/File.xml:189
msgid "Returns the file cursor's position."
msgstr ""
-#: doc/classes/File.xml:195
+#: doc/classes/File.xml:196
msgid "Returns the next bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:204
+#: doc/classes/File.xml:205
msgid ""
"Returns a SHA-256 [String] representing the file at the given path or an "
"empty [String] on failure."
msgstr ""
-#: doc/classes/File.xml:213
+#: doc/classes/File.xml:214
msgid ""
"Returns the next [Variant] value from the file. If [code]allow_objects[/"
"code] is [code]true[/code], decoding objects is allowed.\n"
@@ -20399,37 +20898,38 @@ msgid ""
"to avoid potential security threats such as remote code execution."
msgstr ""
-#: doc/classes/File.xml:221
+#: doc/classes/File.xml:222
msgid "Returns [code]true[/code] if the file is currently opened."
msgstr ""
-#: doc/classes/File.xml:232
+#: doc/classes/File.xml:233
msgid "Opens the file for writing or reading, depending on the flags."
msgstr ""
-#: doc/classes/File.xml:245
+#: doc/classes/File.xml:246
msgid "Opens a compressed file for reading or writing."
msgstr ""
-#: doc/classes/File.xml:258
+#: doc/classes/File.xml:259
msgid ""
"Opens an encrypted file in write or read mode. You need to pass a binary key "
-"to encrypt/decrypt it."
+"to encrypt/decrypt it.\n"
+"[b]Note:[/b] The provided key must be 32 bytes long."
msgstr ""
-#: doc/classes/File.xml:271
+#: doc/classes/File.xml:273
msgid ""
"Opens an encrypted file in write or read mode. You need to pass a password "
"to encrypt/decrypt it."
msgstr ""
-#: doc/classes/File.xml:280
+#: doc/classes/File.xml:282
msgid ""
"Changes the file reading/writing cursor to the specified position (in bytes "
"from the beginning of the file)."
msgstr ""
-#: doc/classes/File.xml:289
+#: doc/classes/File.xml:291
msgid ""
"Changes the file reading/writing cursor to the specified position (in bytes "
"from the end of the file).\n"
@@ -20437,7 +20937,7 @@ msgid ""
"cursor will be at the end of the file."
msgstr ""
-#: doc/classes/File.xml:299
+#: doc/classes/File.xml:301
msgid ""
"Stores an integer as 16 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, "
@@ -20465,7 +20965,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/File.xml:328
+#: doc/classes/File.xml:330
msgid ""
"Stores an integer as 32 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, "
@@ -20474,14 +20974,14 @@ msgid ""
"(see [method store_16] for an example)."
msgstr ""
-#: doc/classes/File.xml:339
+#: doc/classes/File.xml:341
msgid ""
"Stores an integer as 64 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] must lie in the interval [code][-2^63, "
"2^63 - 1][/code] (i.e. be a valid [int] value)."
msgstr ""
-#: doc/classes/File.xml:349
+#: doc/classes/File.xml:351
msgid ""
"Stores an integer as 8 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, 255]"
@@ -20490,11 +20990,11 @@ msgid ""
"(see [method store_16] for an example)."
msgstr ""
-#: doc/classes/File.xml:360
+#: doc/classes/File.xml:362
msgid "Stores the given array of bytes in the file."
msgstr ""
-#: doc/classes/File.xml:371
+#: doc/classes/File.xml:373
msgid ""
"Store the given [PackedStringArray] in the file as a line formatted in the "
"CSV (Comma-Separated Values) format. You can pass a different delimiter "
@@ -20503,45 +21003,45 @@ msgid ""
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:381
+#: doc/classes/File.xml:383
msgid "Stores a floating-point number as 64 bits in the file."
msgstr ""
-#: doc/classes/File.xml:390
+#: doc/classes/File.xml:392
msgid "Stores a floating-point number as 32 bits in the file."
msgstr ""
-#: doc/classes/File.xml:399
+#: doc/classes/File.xml:401
msgid ""
"Stores the given [String] as a line in the file.\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:409
+#: doc/classes/File.xml:411
msgid ""
"Stores the given [String] as a line in the file in Pascal format (i.e. also "
"store the length of the string).\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:419
+#: doc/classes/File.xml:421
msgid "Stores a floating-point number in the file."
msgstr ""
-#: doc/classes/File.xml:428
+#: doc/classes/File.xml:430
msgid ""
"Stores the given [String] in the file.\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:440
+#: doc/classes/File.xml:442
msgid ""
"Stores any Variant value in the file. If [code]full_objects[/code] is "
"[code]true[/code], encoding objects is allowed (and can potentially include "
"code)."
msgstr ""
-#: doc/classes/File.xml:446
+#: doc/classes/File.xml:448
msgid ""
"If [code]true[/code], the file's endianness is swapped. Use this if you're "
"dealing with files written on big-endian machines.\n"
@@ -20549,44 +21049,44 @@ msgid ""
"reset to [code]false[/code] whenever you open the file."
msgstr ""
-#: doc/classes/File.xml:452
+#: doc/classes/File.xml:454
msgid "Opens the file for read operations."
msgstr ""
-#: doc/classes/File.xml:455
+#: doc/classes/File.xml:457
msgid ""
"Opens the file for write operations. Create it if the file does not exist "
"and truncate if it exists."
msgstr ""
-#: doc/classes/File.xml:458
+#: doc/classes/File.xml:460
msgid ""
"Opens the file for read and write operations. Does not truncate the file."
msgstr ""
-#: doc/classes/File.xml:461
+#: doc/classes/File.xml:463
msgid ""
"Opens the file for read and write operations. Create it if the file does not "
"exist and truncate if it exists."
msgstr ""
-#: doc/classes/File.xml:464
+#: doc/classes/File.xml:466
msgid "Uses the [url=http://fastlz.org/]FastLZ[/url] compression method."
msgstr ""
-#: doc/classes/File.xml:467
+#: doc/classes/File.xml:469
msgid ""
"Uses the [url=https://en.wikipedia.org/wiki/DEFLATE]DEFLATE[/url] "
"compression method."
msgstr ""
-#: doc/classes/File.xml:470
+#: doc/classes/File.xml:472
msgid ""
"Uses the [url=https://facebook.github.io/zstd/]Zstandard[/url] compression "
"method."
msgstr ""
-#: doc/classes/File.xml:473
+#: doc/classes/File.xml:475
msgid "Uses the [url=https://www.gzip.org/]gzip[/url] compression method."
msgstr ""
@@ -20802,10 +21302,11 @@ msgid ""
"Draw [code]string[/code] into a canvas item using the font at a given "
"position, with [code]modulate[/code] color, and optionally clipping the "
"width. [code]position[/code] specifies the baseline, not the top. To draw "
-"from the top, [i]ascent[/i] must be added to the Y axis."
+"from the top, [i]ascent[/i] must be added to the Y axis.\n"
+"See also [method CanvasItem.draw_string]."
msgstr ""
-#: doc/classes/Font.xml:47
+#: doc/classes/Font.xml:48
msgid ""
"Draw character [code]char[/code] into a canvas item using the font at a "
"given position, with [code]modulate[/code] color, and optionally kerning if "
@@ -20815,39 +21316,39 @@ msgid ""
"making this function useful for drawing strings character by character."
msgstr ""
-#: doc/classes/Font.xml:54
+#: doc/classes/Font.xml:55
msgid "Returns the font ascent (number of pixels above the baseline)."
msgstr ""
-#: doc/classes/Font.xml:65
+#: doc/classes/Font.xml:66
msgid ""
"Returns the size of a character, optionally taking kerning into account if "
"the next character is provided."
msgstr ""
-#: doc/classes/Font.xml:72
+#: doc/classes/Font.xml:73
msgid "Returns the font descent (number of pixels below the baseline)."
msgstr ""
-#: doc/classes/Font.xml:79
+#: doc/classes/Font.xml:80
msgid "Returns the total font height (ascent plus descent) in pixels."
msgstr ""
-#: doc/classes/Font.xml:88
+#: doc/classes/Font.xml:89
msgid "Returns the size of a string, taking kerning and advance into account."
msgstr ""
-#: doc/classes/Font.xml:99
+#: doc/classes/Font.xml:100
msgid ""
"Returns the size that the string would have with word wrapping enabled with "
"a fixed [code]width[/code]."
msgstr ""
-#: doc/classes/Font.xml:106
+#: doc/classes/Font.xml:107
msgid "Returns [code]true[/code] if the font has an outline."
msgstr ""
-#: doc/classes/Font.xml:119
+#: doc/classes/Font.xml:120
msgid ""
"After editing a font (changing size, ascent, char rects, etc.). Call this "
"function to propagate changes to controls that might use it."
@@ -21019,13 +21520,14 @@ msgstr ""
#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:7
msgid ""
-"Calling [method @GDScript.yield] within a function will cause that function "
-"to yield and return its current state as an object of this type. The yielded "
+"FIXME: Outdated docs as of GDScript rewrite in 4.0.\n"
+"Calling [code]yield[/code] within a function will cause that function to "
+"yield and return its current state as an object of this type. The yielded "
"function call can then be resumed later by calling [method resume] on this "
"state object."
msgstr ""
-#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:18
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:19
msgid ""
"Check whether the function call may be resumed. This is not the case if the "
"function state was already resumed.\n"
@@ -21036,12 +21538,12 @@ msgid ""
"script have survived up to that point."
msgstr ""
-#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:28
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:29
msgid ""
"Resume execution of the yielded function call.\n"
-"If handed an argument, return the argument from the [method @GDScript.yield] "
-"call in the yielded function call. You can pass e.g. an [Array] to hand "
-"multiple arguments.\n"
+"If handed an argument, return the argument from the [code]yield[/code] call "
+"in the yielded function call. You can pass e.g. an [Array] to hand multiple "
+"arguments.\n"
"This function returns what the resumed function call returns, possibly "
"another function state if yielded again."
msgstr ""
@@ -21610,10 +22112,20 @@ msgid ""
"code], see [enum PolyJoinType].\n"
"The operation may result in an outer polygon (boundary) and inner polygon "
"(hole) produced which could be distinguished by calling [method "
-"is_polygon_clockwise]."
+"is_polygon_clockwise].\n"
+"[b]Note:[/b] To translate the polygon's vertices specifically, use the "
+"[method Transform2D.xform] method:\n"
+"[codeblock]\n"
+"var polygon = PackedVector2Array([Vector2(0, 0), Vector2(100, 0), "
+"Vector2(100, 100), Vector2(0, 100)])\n"
+"var offset = Vector2(50, 50)\n"
+"polygon = Transform2D(0, offset).xform(polygon)\n"
+"print(polygon) # prints [Vector2(50, 50), Vector2(150, 50), Vector2(150, "
+"150), Vector2(50, 150)]\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/Geometry2D.xml:217
+#: doc/classes/Geometry2D.xml:224
msgid ""
"Inflates or deflates [code]polyline[/code] by [code]delta[/code] units "
"(pixels), producing polygons. If [code]delta[/code] is positive, makes the "
@@ -21629,13 +22141,13 @@ msgid ""
"is_polygon_clockwise]."
msgstr ""
-#: doc/classes/Geometry2D.xml:235
+#: doc/classes/Geometry2D.xml:242
msgid ""
"Returns if [code]point[/code] is inside the triangle specified by [code]a[/"
"code], [code]b[/code] and [code]c[/code]."
msgstr ""
-#: doc/classes/Geometry2D.xml:250
+#: doc/classes/Geometry2D.xml:257
msgid ""
"Checks if the two segments ([code]from_a[/code], [code]to_a[/code]) and "
"([code]from_b[/code], [code]to_b[/code]) intersect. If yes, return the point "
@@ -21643,7 +22155,7 @@ msgid ""
"empty [Variant]."
msgstr ""
-#: doc/classes/Geometry2D.xml:259
+#: doc/classes/Geometry2D.xml:266
msgid ""
"Triangulates the area specified by discrete set of [code]points[/code] such "
"that no point is inside the circumcircle of any resulting triangle. Returns "
@@ -21654,7 +22166,7 @@ msgid ""
"[PackedInt32Array] is returned."
msgstr ""
-#: doc/classes/Geometry2D.xml:268
+#: doc/classes/Geometry2D.xml:275
msgid ""
"Triangulates the polygon specified by the points in [code]polygon[/code]. "
"Returns a [PackedInt32Array] where each triangle consists of three "
@@ -21664,40 +22176,40 @@ msgid ""
"[PackedInt32Array] is returned."
msgstr ""
-#: doc/classes/Geometry2D.xml:274
+#: doc/classes/Geometry2D.xml:281
msgid ""
"Create regions where either subject or clip polygons (or both) are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:277
+#: doc/classes/Geometry2D.xml:284
msgid ""
"Create regions where subject polygons are filled except where clip polygons "
"are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:280
+#: doc/classes/Geometry2D.xml:287
msgid "Create regions where both subject and clip polygons are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:283
+#: doc/classes/Geometry2D.xml:290
msgid ""
"Create regions where either subject or clip polygons are filled but not "
"where both are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:286
+#: doc/classes/Geometry2D.xml:293
msgid ""
"Squaring is applied uniformally at all convex edge joins at [code]1 * delta[/"
"code]."
msgstr ""
-#: doc/classes/Geometry2D.xml:289
+#: doc/classes/Geometry2D.xml:296
msgid ""
"While flattened paths can never perfectly trace an arc, they are "
"approximated by a series of arc chords."
msgstr ""
-#: doc/classes/Geometry2D.xml:292
+#: doc/classes/Geometry2D.xml:299
msgid ""
"There's a necessary limit to mitered joins since offsetting edges that join "
"at very acute angles will produce excessively long and narrow \"spikes\". "
@@ -21705,27 +22217,27 @@ msgid ""
"distance, \"square\" joining is applied."
msgstr ""
-#: doc/classes/Geometry2D.xml:295
+#: doc/classes/Geometry2D.xml:302
msgid ""
"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
"as a polygon."
msgstr ""
-#: doc/classes/Geometry2D.xml:298
+#: doc/classes/Geometry2D.xml:305
msgid ""
"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
"as a polyline."
msgstr ""
-#: doc/classes/Geometry2D.xml:301
+#: doc/classes/Geometry2D.xml:308
msgid "Endpoints are squared off with no extension."
msgstr ""
-#: doc/classes/Geometry2D.xml:304
+#: doc/classes/Geometry2D.xml:311
msgid "Endpoints are squared off and extended by [code]delta[/code] units."
msgstr ""
-#: doc/classes/Geometry2D.xml:307
+#: doc/classes/Geometry2D.xml:314
msgid "Endpoints are rounded off and extended by [code]delta[/code] units."
msgstr ""
@@ -21955,7 +22467,7 @@ msgstr ""
msgid ""
"Bakes the effect from all [GeometryInstance3D]s marked with [constant "
"GeometryInstance3D.GI_MODE_BAKED] and [Light3D]s marked with either "
-"[constant Light3D.BAKE_INDIRECT] or [constant Light3D.BAKE_ALL]. If "
+"[constant Light3D.BAKE_DYNAMIC] or [constant Light3D.BAKE_STATIC]. If "
"[code]create_visual_debug[/code] is [code]true[/code], after baking the "
"light, this will generate a [MultiMesh] that has a cube representing each "
"solid cell with each cube colored to the cell's albedo color. This can be "
@@ -22842,121 +23354,119 @@ msgstr ""
msgid "Clear all cells."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:53
+#: modules/gridmap/doc_classes/GridMap.xml:49
msgid ""
-"The [MeshLibrary] item index located at the grid-based X, Y and Z "
-"coordinates. If the cell is empty, [constant INVALID_CELL_ITEM] will be "
-"returned."
+"The [MeshLibrary] item index located at the given grid coordinates. If the "
+"cell is empty, [constant INVALID_CELL_ITEM] will be returned."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:66
+#: modules/gridmap/doc_classes/GridMap.xml:58
msgid ""
-"The orientation of the cell at the grid-based X, Y and Z coordinates. -1 is "
-"returned if the cell is empty."
+"The orientation of the cell at the given grid coordinates. [code]-1[/code] "
+"is returned if the cell is empty."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:75 doc/classes/PhysicsBody2D.xml:35
+#: modules/gridmap/doc_classes/GridMap.xml:67 doc/classes/PhysicsBody2D.xml:35
#: doc/classes/PhysicsBody3D.xml:35
msgid "Returns an individual bit on the [member collision_layer]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:84 doc/classes/PhysicsBody2D.xml:44
+#: modules/gridmap/doc_classes/GridMap.xml:76 doc/classes/PhysicsBody2D.xml:44
#: doc/classes/PhysicsBody3D.xml:44
msgid "Returns an individual bit on the [member collision_mask]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:91
+#: modules/gridmap/doc_classes/GridMap.xml:83
msgid ""
"Returns an array of [Transform] and [Mesh] references corresponding to the "
"non-empty cells in the grid. The transforms are specified in world space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:98
+#: modules/gridmap/doc_classes/GridMap.xml:90
msgid ""
"Returns an array of [Vector3] with the non-empty cell coordinates in the "
"grid map."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:121
+#: modules/gridmap/doc_classes/GridMap.xml:109
msgid ""
"Returns the position of a grid cell in the GridMap's local coordinate space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:146
+#: modules/gridmap/doc_classes/GridMap.xml:130
msgid ""
-"Sets the mesh index for the cell referenced by its grid-based X, Y and Z "
-"coordinates.\n"
+"Sets the mesh index for the cell referenced by its grid coordinates.\n"
"A negative item index such as [constant INVALID_CELL_ITEM] will clear the "
"cell.\n"
"Optionally, the item's orientation can be passed. For valid orientation "
"values, see [method Basis.get_orthogonal_index]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:173
+#: modules/gridmap/doc_classes/GridMap.xml:157
msgid "Sets an individual bit on the [member collision_layer]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:184
+#: modules/gridmap/doc_classes/GridMap.xml:168
msgid "Sets an individual bit on the [member collision_mask]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:193
+#: modules/gridmap/doc_classes/GridMap.xml:177
msgid ""
"Returns the coordinates of the grid cell containing the given point.\n"
"[code]pos[/code] should be in the GridMap's local coordinate space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:200
+#: modules/gridmap/doc_classes/GridMap.xml:184
msgid "If [code]true[/code], grid items are centered on the X axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:203
+#: modules/gridmap/doc_classes/GridMap.xml:187
msgid "If [code]true[/code], grid items are centered on the Y axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:206
+#: modules/gridmap/doc_classes/GridMap.xml:190
msgid "If [code]true[/code], grid items are centered on the Z axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:209
+#: modules/gridmap/doc_classes/GridMap.xml:193
msgid ""
"The size of each octant measured in number of cells. This applies to all "
"three axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:212
+#: modules/gridmap/doc_classes/GridMap.xml:196
msgid ""
"The scale of the cell items.\n"
"This does not affect the size of the grid cells themselves, only the items "
"in them. This can be used to make cell items overlap their neighbors."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:216
+#: modules/gridmap/doc_classes/GridMap.xml:200
msgid ""
"The dimensions of the grid's cells.\n"
"This does not affect the size of the meshes. See [member cell_scale]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:220
+#: modules/gridmap/doc_classes/GridMap.xml:204
msgid ""
"The physics layers this GridMap is in.\n"
"GridMaps act as static bodies, meaning they aren't affected by gravity or "
"other forces. They only affect other physics bodies that collide with them."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:224
+#: modules/gridmap/doc_classes/GridMap.xml:208
msgid "The physics layers this GridMap detects collisions in."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:227
+#: modules/gridmap/doc_classes/GridMap.xml:211
msgid "The assigned [MeshLibrary]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:235
+#: modules/gridmap/doc_classes/GridMap.xml:219
msgid "Emitted when [member cell_size] changes."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:241
+#: modules/gridmap/doc_classes/GridMap.xml:225
msgid ""
"Invalid cell item that can be used in [method set_cell_item] to clear cells "
"(or represent an empty cell in [method get_cell_item])."
@@ -23321,27 +23831,33 @@ msgid ""
"server's side.\n"
"For more information on HTTP, see https://developer.mozilla.org/en-US/docs/"
"Web/HTTP (or read RFC 2616 to get it straight from the source: https://tools."
-"ietf.org/html/rfc2616)."
+"ietf.org/html/rfc2616).\n"
+"[b]Note:[/b] When performing HTTP requests from a project exported to HTML5, "
+"keep in mind the remote server may not allow requests from foreign origins "
+"due to [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/"
+"url]. If you host the server in question, you should modify its backend to "
+"allow requests from foreign origins by adding the [code]Access-Control-Allow-"
+"Origin: *[/code] HTTP header."
msgstr ""
-#: doc/classes/HTTPClient.xml:13
+#: doc/classes/HTTPClient.xml:14
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/"
"http_client_class.html"
msgstr ""
-#: doc/classes/HTTPClient.xml:14 doc/classes/HTTPRequest.xml:62
+#: doc/classes/HTTPClient.xml:15 doc/classes/HTTPRequest.xml:71
#: doc/classes/StreamPeerSSL.xml:10
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/ssl_certificates."
"html"
msgstr ""
-#: doc/classes/HTTPClient.xml:21
+#: doc/classes/HTTPClient.xml:22
msgid "Closes the current connection, allowing reuse of this [HTTPClient]."
msgstr ""
-#: doc/classes/HTTPClient.xml:36
+#: doc/classes/HTTPClient.xml:37
msgid ""
"Connects to a host. This needs to be done before any requests are sent.\n"
"The host should not have http:// prepended but will strip the protocol "
@@ -23353,7 +23869,7 @@ msgid ""
"[code]true[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:46
+#: doc/classes/HTTPClient.xml:47
msgid ""
"Returns the response's body length.\n"
"[b]Note:[/b] Some Web servers may not send a body length. In this case, the "
@@ -23361,15 +23877,15 @@ msgid ""
"the body length will also be [code]-1[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:54
+#: doc/classes/HTTPClient.xml:55
msgid "Returns the response's HTTP status code."
msgstr ""
-#: doc/classes/HTTPClient.xml:61
+#: doc/classes/HTTPClient.xml:62
msgid "Returns the response headers."
msgstr ""
-#: doc/classes/HTTPClient.xml:68
+#: doc/classes/HTTPClient.xml:69
msgid ""
"Returns all response headers as a Dictionary of structure [code]{ \"key\": "
"\"value1; value2\" }[/code] where the case-sensitivity of the keys and "
@@ -23384,27 +23900,27 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:82
+#: doc/classes/HTTPClient.xml:83
msgid ""
"Returns a [enum Status] constant. Need to call [method poll] in order to get "
"status updates."
msgstr ""
-#: doc/classes/HTTPClient.xml:89
+#: doc/classes/HTTPClient.xml:90
msgid "If [code]true[/code], this [HTTPClient] has a response available."
msgstr ""
-#: doc/classes/HTTPClient.xml:96
+#: doc/classes/HTTPClient.xml:97
msgid "If [code]true[/code], this [HTTPClient] has a response that is chunked."
msgstr ""
-#: doc/classes/HTTPClient.xml:103
+#: doc/classes/HTTPClient.xml:104
msgid ""
"This needs to be called in order to have any request processed. Check "
"results with [method get_status]."
msgstr ""
-#: doc/classes/HTTPClient.xml:112
+#: doc/classes/HTTPClient.xml:113
msgid ""
"Generates a GET/POST application/x-www-form-urlencoded style query string "
"from a provided dictionary, e.g.:\n"
@@ -23424,11 +23940,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:130
+#: doc/classes/HTTPClient.xml:131
msgid "Reads one chunk from the response."
msgstr ""
-#: doc/classes/HTTPClient.xml:145
+#: doc/classes/HTTPClient.xml:146
msgid ""
"Sends a request to the connected host. The URL parameter is just the part "
"after the host, so for [code]http://somehost.com/index.php[/code], it is "
@@ -23446,7 +23962,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:168
+#: doc/classes/HTTPClient.xml:169
msgid ""
"Sends a raw request to the connected host. The URL parameter is just the "
"part after the host, so for [code]http://somehost.com/index.php[/code], it "
@@ -23456,43 +23972,43 @@ msgid ""
"Sends the body data raw, as a byte array and does not encode it in any way."
msgstr ""
-#: doc/classes/HTTPClient.xml:176
+#: doc/classes/HTTPClient.xml:177
msgid ""
"If [code]true[/code], execution will block until all data is read from the "
"response."
msgstr ""
-#: doc/classes/HTTPClient.xml:179
+#: doc/classes/HTTPClient.xml:180
msgid "The connection to use for this client."
msgstr ""
-#: doc/classes/HTTPClient.xml:182
+#: doc/classes/HTTPClient.xml:183
msgid ""
"The size of the buffer used and maximum bytes to read per iteration. See "
"[method read_response_body_chunk]."
msgstr ""
-#: doc/classes/HTTPClient.xml:187
+#: doc/classes/HTTPClient.xml:188
msgid ""
"HTTP GET method. The GET method requests a representation of the specified "
"resource. Requests using GET should only retrieve data."
msgstr ""
-#: doc/classes/HTTPClient.xml:190
+#: doc/classes/HTTPClient.xml:191
msgid ""
"HTTP HEAD method. The HEAD method asks for a response identical to that of a "
"GET request, but without the response body. This is useful to request "
"metadata like HTTP headers or to check if a resource exists."
msgstr ""
-#: doc/classes/HTTPClient.xml:193
+#: doc/classes/HTTPClient.xml:194
msgid ""
"HTTP POST method. The POST method is used to submit an entity to the "
"specified resource, often causing a change in state or side effects on the "
"server. This is often used for forms and submitting data or uploading files."
msgstr ""
-#: doc/classes/HTTPClient.xml:196
+#: doc/classes/HTTPClient.xml:197
msgid ""
"HTTP PUT method. The PUT method asks to replace all current representations "
"of the target resource with the request payload. (You can think of POST as "
@@ -23500,103 +24016,103 @@ msgid ""
"not make a clear distinction or change their meaning)."
msgstr ""
-#: doc/classes/HTTPClient.xml:199
+#: doc/classes/HTTPClient.xml:200
msgid ""
"HTTP DELETE method. The DELETE method requests to delete the specified "
"resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:202
+#: doc/classes/HTTPClient.xml:203
msgid ""
"HTTP OPTIONS method. The OPTIONS method asks for a description of the "
"communication options for the target resource. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:205
+#: doc/classes/HTTPClient.xml:206
msgid ""
"HTTP TRACE method. The TRACE method performs a message loop-back test along "
"the path to the target resource. Returns the entire HTTP request received in "
"the response body. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:208
+#: doc/classes/HTTPClient.xml:209
msgid ""
"HTTP CONNECT method. The CONNECT method establishes a tunnel to the server "
"identified by the target resource. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:211
+#: doc/classes/HTTPClient.xml:212
msgid ""
"HTTP PATCH method. The PATCH method is used to apply partial modifications "
"to a resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:214
+#: doc/classes/HTTPClient.xml:215
msgid "Represents the size of the [enum Method] enum."
msgstr ""
-#: doc/classes/HTTPClient.xml:217
+#: doc/classes/HTTPClient.xml:218
msgid "Status: Disconnected from the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:220
+#: doc/classes/HTTPClient.xml:221
msgid "Status: Currently resolving the hostname for the given URL into an IP."
msgstr ""
-#: doc/classes/HTTPClient.xml:223
+#: doc/classes/HTTPClient.xml:224
msgid "Status: DNS failure: Can't resolve the hostname for the given URL."
msgstr ""
-#: doc/classes/HTTPClient.xml:226
+#: doc/classes/HTTPClient.xml:227
msgid "Status: Currently connecting to server."
msgstr ""
-#: doc/classes/HTTPClient.xml:229
+#: doc/classes/HTTPClient.xml:230
msgid "Status: Can't connect to the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:232
+#: doc/classes/HTTPClient.xml:233
msgid "Status: Connection established."
msgstr ""
-#: doc/classes/HTTPClient.xml:235
+#: doc/classes/HTTPClient.xml:236
msgid "Status: Currently sending request."
msgstr ""
-#: doc/classes/HTTPClient.xml:238
+#: doc/classes/HTTPClient.xml:239
msgid "Status: HTTP body received."
msgstr ""
-#: doc/classes/HTTPClient.xml:241
+#: doc/classes/HTTPClient.xml:242
msgid "Status: Error in HTTP connection."
msgstr ""
-#: doc/classes/HTTPClient.xml:244
+#: doc/classes/HTTPClient.xml:245
msgid "Status: Error in SSL handshake."
msgstr ""
-#: doc/classes/HTTPClient.xml:247
+#: doc/classes/HTTPClient.xml:248
msgid ""
"HTTP status code [code]100 Continue[/code]. Interim response that indicates "
"everything so far is OK and that the client should continue with the request "
"(or ignore this status if already finished)."
msgstr ""
-#: doc/classes/HTTPClient.xml:250
+#: doc/classes/HTTPClient.xml:251
msgid ""
"HTTP status code [code]101 Switching Protocol[/code]. Sent in response to an "
"[code]Upgrade[/code] request header by the client. Indicates the protocol "
"the server is switching to."
msgstr ""
-#: doc/classes/HTTPClient.xml:253
+#: doc/classes/HTTPClient.xml:254
msgid ""
"HTTP status code [code]102 Processing[/code] (WebDAV). Indicates that the "
"server has received and is processing the request, but no response is "
"available yet."
msgstr ""
-#: doc/classes/HTTPClient.xml:256
+#: doc/classes/HTTPClient.xml:257
msgid ""
"HTTP status code [code]200 OK[/code]. The request has succeeded. Default "
"response for successful requests. Meaning varies depending on the request. "
@@ -23607,14 +24123,14 @@ msgid ""
"server."
msgstr ""
-#: doc/classes/HTTPClient.xml:259
+#: doc/classes/HTTPClient.xml:260
msgid ""
"HTTP status code [code]201 Created[/code]. The request has succeeded and a "
"new resource has been created as a result of it. This is typically the "
"response sent after a PUT request."
msgstr ""
-#: doc/classes/HTTPClient.xml:262
+#: doc/classes/HTTPClient.xml:263
msgid ""
"HTTP status code [code]202 Accepted[/code]. The request has been received "
"but not yet acted upon. It is non-committal, meaning that there is no way in "
@@ -23623,7 +24139,7 @@ msgid ""
"server handles the request, or for batch processing."
msgstr ""
-#: doc/classes/HTTPClient.xml:265
+#: doc/classes/HTTPClient.xml:266
msgid ""
"HTTP status code [code]203 Non-Authoritative Information[/code]. This "
"response code means returned meta-information set is not exact set as "
@@ -23632,14 +24148,14 @@ msgid ""
"instead of this response."
msgstr ""
-#: doc/classes/HTTPClient.xml:268
+#: doc/classes/HTTPClient.xml:269
msgid ""
"HTTP status code [code]204 No Content[/code]. There is no content to send "
"for this request, but the headers may be useful. The user-agent may update "
"its cached headers for this resource with the new ones."
msgstr ""
-#: doc/classes/HTTPClient.xml:271
+#: doc/classes/HTTPClient.xml:272
msgid ""
"HTTP status code [code]205 Reset Content[/code]. The server has fulfilled "
"the request and desires that the client resets the \"document view\" that "
@@ -23647,49 +24163,49 @@ msgid ""
"origin server."
msgstr ""
-#: doc/classes/HTTPClient.xml:274
+#: doc/classes/HTTPClient.xml:275
msgid ""
"HTTP status code [code]206 Partial Content[/code]. This response code is "
"used because of a range header sent by the client to separate download into "
"multiple streams."
msgstr ""
-#: doc/classes/HTTPClient.xml:277
+#: doc/classes/HTTPClient.xml:278
msgid ""
"HTTP status code [code]207 Multi-Status[/code] (WebDAV). A Multi-Status "
"response conveys information about multiple resources in situations where "
"multiple status codes might be appropriate."
msgstr ""
-#: doc/classes/HTTPClient.xml:280
+#: doc/classes/HTTPClient.xml:281
msgid ""
"HTTP status code [code]208 Already Reported[/code] (WebDAV). Used inside a "
"DAV: propstat response element to avoid enumerating the internal members of "
"multiple bindings to the same collection repeatedly."
msgstr ""
-#: doc/classes/HTTPClient.xml:283
+#: doc/classes/HTTPClient.xml:284
msgid ""
"HTTP status code [code]226 IM Used[/code] (WebDAV). The server has fulfilled "
"a GET request for the resource, and the response is a representation of the "
"result of one or more instance-manipulations applied to the current instance."
msgstr ""
-#: doc/classes/HTTPClient.xml:286
+#: doc/classes/HTTPClient.xml:287
msgid ""
"HTTP status code [code]300 Multiple Choice[/code]. The request has more than "
"one possible responses and there is no standardized way to choose one of the "
"responses. User-agent or user should choose one of them."
msgstr ""
-#: doc/classes/HTTPClient.xml:289
+#: doc/classes/HTTPClient.xml:290
msgid ""
"HTTP status code [code]301 Moved Permanently[/code]. Redirection. This "
"response code means the URI of requested resource has been changed. The new "
"URI is usually included in the response."
msgstr ""
-#: doc/classes/HTTPClient.xml:292
+#: doc/classes/HTTPClient.xml:293
msgid ""
"HTTP status code [code]302 Found[/code]. Temporary redirection. This "
"response code means the URI of requested resource has been changed "
@@ -23697,7 +24213,7 @@ msgid ""
"this same URI should be used by the client in future requests."
msgstr ""
-#: doc/classes/HTTPClient.xml:295
+#: doc/classes/HTTPClient.xml:296
msgid ""
"HTTP status code [code]303 See Other[/code]. The server is redirecting the "
"user agent to a different resource, as indicated by a URI in the Location "
@@ -23705,39 +24221,39 @@ msgid ""
"original request."
msgstr ""
-#: doc/classes/HTTPClient.xml:298
+#: doc/classes/HTTPClient.xml:299
msgid ""
"HTTP status code [code]304 Not Modified[/code]. A conditional GET or HEAD "
"request has been received and would have resulted in a 200 OK response if it "
"were not for the fact that the condition evaluated to [code]false[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:301
+#: doc/classes/HTTPClient.xml:302
msgid ""
"HTTP status code [code]305 Use Proxy[/code]. [i]Deprecated. Do not use.[/i]"
msgstr ""
-#: doc/classes/HTTPClient.xml:304
+#: doc/classes/HTTPClient.xml:305
msgid ""
"HTTP status code [code]306 Switch Proxy[/code]. [i]Deprecated. Do not use.[/"
"i]"
msgstr ""
-#: doc/classes/HTTPClient.xml:307
+#: doc/classes/HTTPClient.xml:308
msgid ""
"HTTP status code [code]307 Temporary Redirect[/code]. The target resource "
"resides temporarily under a different URI and the user agent MUST NOT change "
"the request method if it performs an automatic redirection to that URI."
msgstr ""
-#: doc/classes/HTTPClient.xml:310
+#: doc/classes/HTTPClient.xml:311
msgid ""
"HTTP status code [code]308 Permanent Redirect[/code]. The target resource "
"has been assigned a new permanent URI and any future references to this "
"resource ought to use one of the enclosed URIs."
msgstr ""
-#: doc/classes/HTTPClient.xml:313
+#: doc/classes/HTTPClient.xml:314
msgid ""
"HTTP status code [code]400 Bad Request[/code]. The request was invalid. The "
"server cannot or will not process the request due to something that is "
@@ -23746,21 +24262,21 @@ msgid ""
"routing)."
msgstr ""
-#: doc/classes/HTTPClient.xml:316
+#: doc/classes/HTTPClient.xml:317
msgid ""
"HTTP status code [code]401 Unauthorized[/code]. Credentials required. The "
"request has not been applied because it lacks valid authentication "
"credentials for the target resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:319
+#: doc/classes/HTTPClient.xml:320
msgid ""
"HTTP status code [code]402 Payment Required[/code]. This response code is "
"reserved for future use. Initial aim for creating this code was using it for "
"digital payment systems, however this is not currently used."
msgstr ""
-#: doc/classes/HTTPClient.xml:322
+#: doc/classes/HTTPClient.xml:323
msgid ""
"HTTP status code [code]403 Forbidden[/code]. The client does not have access "
"rights to the content, i.e. they are unauthorized, so server is rejecting to "
@@ -23768,7 +24284,7 @@ msgid ""
"known to the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:325
+#: doc/classes/HTTPClient.xml:326
msgid ""
"HTTP status code [code]404 Not Found[/code]. The server can not find "
"requested resource. Either the URL is not recognized or the endpoint is "
@@ -23776,7 +24292,7 @@ msgid ""
"403 to hide existence of a resource if the client is not authorized."
msgstr ""
-#: doc/classes/HTTPClient.xml:328
+#: doc/classes/HTTPClient.xml:329
msgid ""
"HTTP status code [code]405 Method Not Allowed[/code]. The request's HTTP "
"method is known by the server but has been disabled and cannot be used. For "
@@ -23784,7 +24300,7 @@ msgid ""
"GET and HEAD, must never be disabled and should not return this error code."
msgstr ""
-#: doc/classes/HTTPClient.xml:331
+#: doc/classes/HTTPClient.xml:332
msgid ""
"HTTP status code [code]406 Not Acceptable[/code]. The target resource does "
"not have a current representation that would be acceptable to the user "
@@ -23792,21 +24308,21 @@ msgid ""
"request. Used when negotiation content."
msgstr ""
-#: doc/classes/HTTPClient.xml:334
+#: doc/classes/HTTPClient.xml:335
msgid ""
"HTTP status code [code]407 Proxy Authentication Required[/code]. Similar to "
"401 Unauthorized, but it indicates that the client needs to authenticate "
"itself in order to use a proxy."
msgstr ""
-#: doc/classes/HTTPClient.xml:337
+#: doc/classes/HTTPClient.xml:338
msgid ""
"HTTP status code [code]408 Request Timeout[/code]. The server did not "
"receive a complete request message within the time that it was prepared to "
"wait."
msgstr ""
-#: doc/classes/HTTPClient.xml:340
+#: doc/classes/HTTPClient.xml:341
msgid ""
"HTTP status code [code]409 Conflict[/code]. The request could not be "
"completed due to a conflict with the current state of the target resource. "
@@ -23814,47 +24330,47 @@ msgid ""
"conflict and resubmit the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:343
+#: doc/classes/HTTPClient.xml:344
msgid ""
"HTTP status code [code]410 Gone[/code]. The target resource is no longer "
"available at the origin server and this condition is likely permanent."
msgstr ""
-#: doc/classes/HTTPClient.xml:346
+#: doc/classes/HTTPClient.xml:347
msgid ""
"HTTP status code [code]411 Length Required[/code]. The server refuses to "
"accept the request without a defined Content-Length header."
msgstr ""
-#: doc/classes/HTTPClient.xml:349
+#: doc/classes/HTTPClient.xml:350
msgid ""
"HTTP status code [code]412 Precondition Failed[/code]. One or more "
"conditions given in the request header fields evaluated to [code]false[/"
"code] when tested on the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:352
+#: doc/classes/HTTPClient.xml:353
msgid ""
"HTTP status code [code]413 Entity Too Large[/code]. The server is refusing "
"to process a request because the request payload is larger than the server "
"is willing or able to process."
msgstr ""
-#: doc/classes/HTTPClient.xml:355
+#: doc/classes/HTTPClient.xml:356
msgid ""
"HTTP status code [code]414 Request-URI Too Long[/code]. The server is "
"refusing to service the request because the request-target is longer than "
"the server is willing to interpret."
msgstr ""
-#: doc/classes/HTTPClient.xml:358
+#: doc/classes/HTTPClient.xml:359
msgid ""
"HTTP status code [code]415 Unsupported Media Type[/code]. The origin server "
"is refusing to service the request because the payload is in a format not "
"supported by this method on the target resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:361
+#: doc/classes/HTTPClient.xml:362
msgid ""
"HTTP status code [code]416 Requested Range Not Satisfiable[/code]. None of "
"the ranges in the request's Range header field overlap the current extent of "
@@ -23862,21 +24378,21 @@ msgid ""
"to invalid ranges or an excessive request of small or overlapping ranges."
msgstr ""
-#: doc/classes/HTTPClient.xml:364
+#: doc/classes/HTTPClient.xml:365
msgid ""
"HTTP status code [code]417 Expectation Failed[/code]. The expectation given "
"in the request's Expect header field could not be met by at least one of the "
"inbound servers."
msgstr ""
-#: doc/classes/HTTPClient.xml:367
+#: doc/classes/HTTPClient.xml:368
msgid ""
"HTTP status code [code]418 I'm A Teapot[/code]. Any attempt to brew coffee "
"with a teapot should result in the error code \"418 I'm a teapot\". The "
"resulting entity body MAY be short and stout."
msgstr ""
-#: doc/classes/HTTPClient.xml:370
+#: doc/classes/HTTPClient.xml:371
msgid ""
"HTTP status code [code]421 Misdirected Request[/code]. The request was "
"directed at a server that is not able to produce a response. This can be "
@@ -23884,7 +24400,7 @@ msgid ""
"combination of scheme and authority that are included in the request URI."
msgstr ""
-#: doc/classes/HTTPClient.xml:373
+#: doc/classes/HTTPClient.xml:374
msgid ""
"HTTP status code [code]422 Unprocessable Entity[/code] (WebDAV). The server "
"understands the content type of the request entity (hence a 415 Unsupported "
@@ -23893,40 +24409,40 @@ msgid ""
"was unable to process the contained instructions."
msgstr ""
-#: doc/classes/HTTPClient.xml:376
+#: doc/classes/HTTPClient.xml:377
msgid ""
"HTTP status code [code]423 Locked[/code] (WebDAV). The source or destination "
"resource of a method is locked."
msgstr ""
-#: doc/classes/HTTPClient.xml:379
+#: doc/classes/HTTPClient.xml:380
msgid ""
"HTTP status code [code]424 Failed Dependency[/code] (WebDAV). The method "
"could not be performed on the resource because the requested action depended "
"on another action and that action failed."
msgstr ""
-#: doc/classes/HTTPClient.xml:382
+#: doc/classes/HTTPClient.xml:383
msgid ""
"HTTP status code [code]426 Upgrade Required[/code]. The server refuses to "
"perform the request using the current protocol but might be willing to do so "
"after the client upgrades to a different protocol."
msgstr ""
-#: doc/classes/HTTPClient.xml:385
+#: doc/classes/HTTPClient.xml:386
msgid ""
"HTTP status code [code]428 Precondition Required[/code]. The origin server "
"requires the request to be conditional."
msgstr ""
-#: doc/classes/HTTPClient.xml:388
+#: doc/classes/HTTPClient.xml:389
msgid ""
"HTTP status code [code]429 Too Many Requests[/code]. The user has sent too "
"many requests in a given amount of time (see \"rate limiting\"). Back off "
"and increase time between requests or try again later."
msgstr ""
-#: doc/classes/HTTPClient.xml:391
+#: doc/classes/HTTPClient.xml:392
msgid ""
"HTTP status code [code]431 Request Header Fields Too Large[/code]. The "
"server is unwilling to process the request because its header fields are too "
@@ -23934,27 +24450,27 @@ msgid ""
"header fields."
msgstr ""
-#: doc/classes/HTTPClient.xml:394
+#: doc/classes/HTTPClient.xml:395
msgid ""
"HTTP status code [code]451 Response Unavailable For Legal Reasons[/code]. "
"The server is denying access to the resource as a consequence of a legal "
"demand."
msgstr ""
-#: doc/classes/HTTPClient.xml:397
+#: doc/classes/HTTPClient.xml:398
msgid ""
"HTTP status code [code]500 Internal Server Error[/code]. The server "
"encountered an unexpected condition that prevented it from fulfilling the "
"request."
msgstr ""
-#: doc/classes/HTTPClient.xml:400
+#: doc/classes/HTTPClient.xml:401
msgid ""
"HTTP status code [code]501 Not Implemented[/code]. The server does not "
"support the functionality required to fulfill the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:403
+#: doc/classes/HTTPClient.xml:404
msgid ""
"HTTP status code [code]502 Bad Gateway[/code]. The server, while acting as a "
"gateway or proxy, received an invalid response from an inbound server it "
@@ -23962,7 +24478,7 @@ msgid ""
"balancers or proxies."
msgstr ""
-#: doc/classes/HTTPClient.xml:406
+#: doc/classes/HTTPClient.xml:407
msgid ""
"HTTP status code [code]503 Service Unavailable[/code]. The server is "
"currently unable to handle the request due to a temporary overload or "
@@ -23970,7 +24486,7 @@ msgid ""
"again later."
msgstr ""
-#: doc/classes/HTTPClient.xml:409
+#: doc/classes/HTTPClient.xml:410
msgid ""
"HTTP status code [code]504 Gateway Timeout[/code]. The server, while acting "
"as a gateway or proxy, did not receive a timely response from an upstream "
@@ -23978,14 +24494,14 @@ msgid ""
"returned by load balancers or proxies."
msgstr ""
-#: doc/classes/HTTPClient.xml:412
+#: doc/classes/HTTPClient.xml:413
msgid ""
"HTTP status code [code]505 HTTP Version Not Supported[/code]. The server "
"does not support, or refuses to support, the major version of HTTP that was "
"used in the request message."
msgstr ""
-#: doc/classes/HTTPClient.xml:415
+#: doc/classes/HTTPClient.xml:416
msgid ""
"HTTP status code [code]506 Variant Also Negotiates[/code]. The server has an "
"internal configuration error: the chosen variant resource is configured to "
@@ -23993,14 +24509,14 @@ msgid ""
"proper end point in the negotiation process."
msgstr ""
-#: doc/classes/HTTPClient.xml:418
+#: doc/classes/HTTPClient.xml:419
msgid ""
"HTTP status code [code]507 Insufficient Storage[/code]. The method could not "
"be performed on the resource because the server is unable to store the "
"representation needed to successfully complete the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:421
+#: doc/classes/HTTPClient.xml:422
msgid ""
"HTTP status code [code]508 Loop Detected[/code]. The server terminated an "
"operation because it encountered an infinite loop while processing a request "
@@ -24008,14 +24524,14 @@ msgid ""
"failed."
msgstr ""
-#: doc/classes/HTTPClient.xml:424
+#: doc/classes/HTTPClient.xml:425
msgid ""
"HTTP status code [code]510 Not Extended[/code]. The policy for accessing the "
"resource has not been met in the request. The server should send back all "
"the information necessary for the client to issue an extended request."
msgstr ""
-#: doc/classes/HTTPClient.xml:427
+#: doc/classes/HTTPClient.xml:428
msgid ""
"HTTP status code [code]511 Network Authentication Required[/code]. The "
"client needs to authenticate to gain network access."
@@ -24041,12 +24557,21 @@ msgid ""
" http_request.connect(\"request_completed\", self, "
"\"_http_request_completed\")\n"
"\n"
-" # Perform the HTTP request. The URL below returns some JSON as of "
-"writing.\n"
+" # Perform a GET request. The URL below returns JSON as of writing.\n"
" var error = http_request.request(\"https://httpbin.org/get\")\n"
" if error != OK:\n"
" push_error(\"An error occurred in the HTTP request.\")\n"
"\n"
+" # Perform a POST request. The URL below returns JSON as of writing.\n"
+" # Note: Don't make simultaneous requests using a single HTTPRequest "
+"node.\n"
+" # The snippet below is provided for reference only.\n"
+" var body = {\"name\": \"Godette\"}\n"
+" var error = http_request.request(\"https://httpbin.org/post\", [], true, "
+"HTTPClient.METHOD_POST, body)\n"
+" if error != OK:\n"
+" push_error(\"An error occurred in the HTTP request.\")\n"
+"\n"
"\n"
"# Called when the HTTP request is completed.\n"
"func _http_request_completed(result, response_code, headers, body):\n"
@@ -24086,20 +24611,26 @@ msgid ""
" var texture_rect = TextureRect.new()\n"
" add_child(texture_rect)\n"
" texture_rect.texture = texture\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] When performing HTTP requests from a project exported to HTML5, "
+"keep in mind the remote server may not allow requests from foreign origins "
+"due to [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/"
+"url]. If you host the server in question, you should modify its backend to "
+"allow requests from foreign origins by adding the [code]Access-Control-Allow-"
+"Origin: *[/code] HTTP header."
msgstr ""
-#: doc/classes/HTTPRequest.xml:61
+#: doc/classes/HTTPRequest.xml:70
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/"
"http_request_class.html"
msgstr ""
-#: doc/classes/HTTPRequest.xml:69
+#: doc/classes/HTTPRequest.xml:78
msgid "Cancels the current request."
msgstr ""
-#: doc/classes/HTTPRequest.xml:76
+#: doc/classes/HTTPRequest.xml:85
msgid ""
"Returns the response body length.\n"
"[b]Note:[/b] Some Web servers may not send a body length. In this case, the "
@@ -24107,17 +24638,17 @@ msgid ""
"the body length will also be [code]-1[/code]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:84
+#: doc/classes/HTTPRequest.xml:93
msgid "Returns the amount of bytes this HTTPRequest downloaded."
msgstr ""
-#: doc/classes/HTTPRequest.xml:91
+#: doc/classes/HTTPRequest.xml:100
msgid ""
"Returns the current status of the underlying [HTTPClient]. See [enum "
"HTTPClient.Status]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:108
+#: doc/classes/HTTPRequest.xml:117
msgid ""
"Creates request on the underlying [HTTPClient]. If there is no configuration "
"errors, it tries to connect using [method HTTPClient.connect_to_host] and "
@@ -24130,11 +24661,11 @@ msgid ""
"connect to host."
msgstr ""
-#: doc/classes/HTTPRequest.xml:115
+#: doc/classes/HTTPRequest.xml:124
msgid "Maximum allowed size for response bodies."
msgstr ""
-#: doc/classes/HTTPRequest.xml:118
+#: doc/classes/HTTPRequest.xml:127
msgid ""
"The size of the buffer used and maximum bytes to read per iteration. See "
"[member HTTPClient.read_chunk_size].\n"
@@ -24142,63 +24673,63 @@ msgid ""
"files to achieve better speeds at the cost of memory."
msgstr ""
-#: doc/classes/HTTPRequest.xml:122
+#: doc/classes/HTTPRequest.xml:131
msgid "The file to download into. Will output any received file into it."
msgstr ""
-#: doc/classes/HTTPRequest.xml:125
+#: doc/classes/HTTPRequest.xml:134
msgid "Maximum number of allowed redirects."
msgstr ""
-#: doc/classes/HTTPRequest.xml:130
+#: doc/classes/HTTPRequest.xml:139
msgid "If [code]true[/code], multithreading is used to improve performance."
msgstr ""
-#: doc/classes/HTTPRequest.xml:144
+#: doc/classes/HTTPRequest.xml:153
msgid "Emitted when a request is completed."
msgstr ""
-#: doc/classes/HTTPRequest.xml:150
+#: doc/classes/HTTPRequest.xml:159
msgid "Request successful."
msgstr ""
-#: doc/classes/HTTPRequest.xml:155
+#: doc/classes/HTTPRequest.xml:164
msgid "Request failed while connecting."
msgstr ""
-#: doc/classes/HTTPRequest.xml:158
+#: doc/classes/HTTPRequest.xml:167
msgid "Request failed while resolving."
msgstr ""
-#: doc/classes/HTTPRequest.xml:161
+#: doc/classes/HTTPRequest.xml:170
msgid "Request failed due to connection (read/write) error."
msgstr ""
-#: doc/classes/HTTPRequest.xml:164
+#: doc/classes/HTTPRequest.xml:173
msgid "Request failed on SSL handshake."
msgstr ""
-#: doc/classes/HTTPRequest.xml:167
+#: doc/classes/HTTPRequest.xml:176
msgid "Request does not have a response (yet)."
msgstr ""
-#: doc/classes/HTTPRequest.xml:170
+#: doc/classes/HTTPRequest.xml:179
msgid "Request exceeded its maximum size limit, see [member body_size_limit]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:173
+#: doc/classes/HTTPRequest.xml:182
msgid "Request failed (currently unused)."
msgstr ""
-#: doc/classes/HTTPRequest.xml:176
+#: doc/classes/HTTPRequest.xml:185
msgid "HTTPRequest couldn't open the download file."
msgstr ""
-#: doc/classes/HTTPRequest.xml:179
+#: doc/classes/HTTPRequest.xml:188
msgid "HTTPRequest couldn't write to the download file."
msgstr ""
-#: doc/classes/HTTPRequest.xml:182
+#: doc/classes/HTTPRequest.xml:191
msgid "Request reached its maximum redirect limit, see [member max_redirects]."
msgstr ""
@@ -24422,42 +24953,46 @@ msgid "Loads an image from the binary contents of a PNG file."
msgstr ""
#: doc/classes/Image.xml:373
+msgid "Loads an image from the binary contents of a TGA file."
+msgstr ""
+
+#: doc/classes/Image.xml:382
msgid "Loads an image from the binary contents of a WebP file."
msgstr ""
-#: doc/classes/Image.xml:380
+#: doc/classes/Image.xml:389
msgid ""
"Converts the image's data to represent coordinates on a 3D plane. This is "
"used when the image represents a normalmap. A normalmap can add lots of "
"detail to a 3D surface without increasing the polygon count."
msgstr ""
-#: doc/classes/Image.xml:387
+#: doc/classes/Image.xml:396
msgid ""
"Multiplies color values with alpha values. Resulting color values for a "
"pixel are [code](color * alpha)/256[/code]."
msgstr ""
-#: doc/classes/Image.xml:400
+#: doc/classes/Image.xml:409
msgid ""
"Resizes the image to the given [code]width[/code] and [code]height[/code]. "
"New pixels are calculated using [code]interpolation[/code]. See "
"[code]interpolation[/code] constants."
msgstr ""
-#: doc/classes/Image.xml:409
+#: doc/classes/Image.xml:418
msgid ""
"Resizes the image to the nearest power of 2 for the width and height. If "
"[code]square[/code] is [code]true[/code] then set width and height to be the "
"same."
msgstr ""
-#: doc/classes/Image.xml:416
+#: doc/classes/Image.xml:425
msgid ""
"Converts a standard RGBE (Red Green Blue Exponent) image to an sRGB image."
msgstr ""
-#: doc/classes/Image.xml:427
+#: doc/classes/Image.xml:436
msgid ""
"Saves the image as an EXR file to [code]path[/code]. If [code]grayscale[/"
"code] is [code]true[/code] and the image has only one channel, it will be "
@@ -24466,11 +25001,11 @@ msgid ""
"TinyEXR module."
msgstr ""
-#: doc/classes/Image.xml:436
+#: doc/classes/Image.xml:445
msgid "Saves the image as a PNG file to [code]path[/code]."
msgstr ""
-#: doc/classes/Image.xml:455
+#: doc/classes/Image.xml:464
msgid ""
"Sets the [Color] of the pixel at [code](x, y)[/code]. Example:\n"
"[codeblock]\n"
@@ -24480,7 +25015,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Image.xml:471
+#: doc/classes/Image.xml:480
msgid ""
"Sets the [Color] of the pixel at [code](dst.x, dst.y)[/code]. Note that the "
"[code]dst[/code] values must be integers. Example:\n"
@@ -24491,51 +25026,51 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Image.xml:483
+#: doc/classes/Image.xml:492
msgid "Shrinks the image by a factor of 2."
msgstr ""
-#: doc/classes/Image.xml:490
+#: doc/classes/Image.xml:499
msgid "Converts the raw data from the sRGB colorspace to a linear scale."
msgstr ""
-#: doc/classes/Image.xml:496
+#: doc/classes/Image.xml:505
msgid ""
"Holds all of the image's color data in a given format. See [enum Format] "
"constants."
msgstr ""
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:510
msgid "The maximal width allowed for [Image] resources."
msgstr ""
-#: doc/classes/Image.xml:504
+#: doc/classes/Image.xml:513
msgid "The maximal height allowed for [Image] resources."
msgstr ""
-#: doc/classes/Image.xml:507
+#: doc/classes/Image.xml:516
msgid "Texture format with a single 8-bit depth representing luminance."
msgstr ""
-#: doc/classes/Image.xml:510
+#: doc/classes/Image.xml:519
msgid ""
"OpenGL texture format with two values, luminance and alpha each stored with "
"8 bits."
msgstr ""
-#: doc/classes/Image.xml:513
+#: doc/classes/Image.xml:522
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
"bitdepth of 8."
msgstr ""
-#: doc/classes/Image.xml:516
+#: doc/classes/Image.xml:525
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
-#: doc/classes/Image.xml:519
+#: doc/classes/Image.xml:528
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -24543,7 +25078,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:523
+#: doc/classes/Image.xml:532
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -24551,67 +25086,67 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:536
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
-#: doc/classes/Image.xml:532
+#: doc/classes/Image.xml:541
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
-#: doc/classes/Image.xml:535
+#: doc/classes/Image.xml:544
msgid ""
"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
"each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:538
+#: doc/classes/Image.xml:547
msgid ""
"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
"components, each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:541
+#: doc/classes/Image.xml:550
msgid ""
"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
"components, each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:544
+#: doc/classes/Image.xml:553
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 16-"
"bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:556
msgid ""
"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
"each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:550
+#: doc/classes/Image.xml:559
msgid ""
"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
"components, each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:553
+#: doc/classes/Image.xml:562
msgid ""
"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
"components, each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:556
+#: doc/classes/Image.xml:565
msgid ""
"A special OpenGL texture format where the three color components have 9 bits "
"of precision and all three share a single 5-bit exponent."
msgstr ""
-#: doc/classes/Image.xml:559
+#: doc/classes/Image.xml:568
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format that uses Block Compression 1, and is the smallest variation "
@@ -24621,7 +25156,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:563
+#: doc/classes/Image.xml:572
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format that uses Block Compression 2, and color data is interpreted "
@@ -24631,7 +25166,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:567
+#: doc/classes/Image.xml:576
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format also known as Block Compression 3 or BC3 that contains 64 "
@@ -24642,7 +25177,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:571
+#: doc/classes/Image.xml:580
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -24650,7 +25185,7 @@ msgid ""
"DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:574
+#: doc/classes/Image.xml:583
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -24658,7 +25193,7 @@ msgid ""
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:577
+#: doc/classes/Image.xml:586
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -24667,21 +25202,21 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:581
+#: doc/classes/Image.xml:590
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with signed floating-point "
"RGB components."
msgstr ""
-#: doc/classes/Image.xml:584
+#: doc/classes/Image.xml:593
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned floating-point "
"RGB components."
msgstr ""
-#: doc/classes/Image.xml:587
+#: doc/classes/Image.xml:596
msgid ""
"Texture format used on PowerVR-supported mobile platforms, uses 2-bit color "
"depth with no alpha. More information can be found [url=https://en.wikipedia."
@@ -24690,25 +25225,25 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:600
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:603
msgid ""
"Similar to [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with 4-"
"bit color depth and no alpha."
msgstr ""
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:606
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:609
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -24716,7 +25251,7 @@ msgid ""
"standard. This format cannot store an alpha channel."
msgstr ""
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:612
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24724,7 +25259,7 @@ msgid ""
"unsigned data."
msgstr ""
-#: doc/classes/Image.xml:606
+#: doc/classes/Image.xml:615
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24732,7 +25267,7 @@ msgid ""
"channel of signed data."
msgstr ""
-#: doc/classes/Image.xml:609
+#: doc/classes/Image.xml:618
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24740,7 +25275,7 @@ msgid ""
"of unsigned data."
msgstr ""
-#: doc/classes/Image.xml:612
+#: doc/classes/Image.xml:621
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24748,7 +25283,7 @@ msgid ""
"channels of signed data."
msgstr ""
-#: doc/classes/Image.xml:615
+#: doc/classes/Image.xml:624
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24758,7 +25293,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:619
+#: doc/classes/Image.xml:628
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24768,7 +25303,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:623
+#: doc/classes/Image.xml:632
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24779,31 +25314,31 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:631
+#: doc/classes/Image.xml:640
msgid "Represents the size of the [enum Format] enum."
msgstr ""
-#: doc/classes/Image.xml:634
+#: doc/classes/Image.xml:643
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
-#: doc/classes/Image.xml:637
+#: doc/classes/Image.xml:646
msgid ""
"Performs bilinear interpolation. If the image is resized, it will be blurry. "
"This mode is faster than [constant INTERPOLATE_CUBIC], but it results in "
"lower quality."
msgstr ""
-#: doc/classes/Image.xml:640
+#: doc/classes/Image.xml:649
msgid ""
"Performs cubic interpolation. If the image is resized, it will be blurry. "
"This mode often gives better results compared to [constant "
"INTERPOLATE_BILINEAR], at the cost of being slower."
msgstr ""
-#: doc/classes/Image.xml:643
+#: doc/classes/Image.xml:652
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -24818,55 +25353,55 @@ msgid ""
"a new set will be generated for the resulting image."
msgstr ""
-#: doc/classes/Image.xml:650
+#: doc/classes/Image.xml:659
msgid ""
"Performs Lanczos interpolation. This is the slowest image resizing mode, but "
"it typically gives the best results, especially when downscalng images."
msgstr ""
-#: doc/classes/Image.xml:653
+#: doc/classes/Image.xml:662
msgid "Image does not have alpha."
msgstr ""
-#: doc/classes/Image.xml:656
+#: doc/classes/Image.xml:665
msgid "Image stores alpha in a single bit."
msgstr ""
-#: doc/classes/Image.xml:659
+#: doc/classes/Image.xml:668
msgid "Image uses alpha."
msgstr ""
-#: doc/classes/Image.xml:662
+#: doc/classes/Image.xml:671
msgid "Use S3TC compression."
msgstr ""
-#: doc/classes/Image.xml:665
+#: doc/classes/Image.xml:674
msgid "Use PVRTC2 compression."
msgstr ""
-#: doc/classes/Image.xml:668
+#: doc/classes/Image.xml:677
msgid "Use PVRTC4 compression."
msgstr ""
-#: doc/classes/Image.xml:671
+#: doc/classes/Image.xml:680
msgid "Use ETC compression."
msgstr ""
-#: doc/classes/Image.xml:674
+#: doc/classes/Image.xml:683
msgid "Use ETC2 compression."
msgstr ""
-#: doc/classes/Image.xml:689
+#: doc/classes/Image.xml:698
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
-#: doc/classes/Image.xml:692
+#: doc/classes/Image.xml:701
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
-#: doc/classes/Image.xml:695
+#: doc/classes/Image.xml:704
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -25685,7 +26220,7 @@ msgid "Contains mouse click information. See [method Node._input]."
msgstr ""
#: doc/classes/InputEventMouseButton.xml:10
-#: doc/classes/InputEventMouseMotion.xml:10
+#: doc/classes/InputEventMouseMotion.xml:11
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/inputs/"
"mouse_and_input_coordinates.html"
@@ -25722,29 +26257,36 @@ msgstr ""
#: doc/classes/InputEventMouseMotion.xml:7
msgid ""
"Contains mouse and pen motion information. Supports relative, absolute "
-"positions and speed. See [method Node._input]."
+"positions and speed. See [method Node._input].\n"
+"[b]Note:[/b] By default, this event is only emitted once per frame rendered "
+"at most. If you need more precise input reporting, call [method Input."
+"set_use_accumulated_input] with [code]false[/code] to make events emitted as "
+"often as possible. If you use InputEventMouseMotion to draw lines, consider "
+"implementing [url=https://en.wikipedia.org/wiki/Bresenham"
+"%27s_line_algorithm]Bresenham's line algorithm[/url] as well to avoid "
+"visible gaps in lines if the user is moving the mouse quickly."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:16
+#: doc/classes/InputEventMouseMotion.xml:17
msgid ""
"Represents the pressure the user puts on the pen. Ranges from [code]0.0[/"
"code] to [code]1.0[/code]."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:19
+#: doc/classes/InputEventMouseMotion.xml:20
msgid ""
"The mouse position relative to the previous position (position at the last "
-"frame). \n"
+"frame).\n"
"[b]Note:[/b] Since [InputEventMouseMotion] is only emitted when the mouse "
"moves, the last event won't have a relative position of [code]Vector2(0, 0)[/"
"code] when the user stops moving the mouse."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:23
+#: doc/classes/InputEventMouseMotion.xml:24
msgid "The mouse speed in pixels per second."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:26
+#: doc/classes/InputEventMouseMotion.xml:27
msgid ""
"Represents the angles of tilt of the pen. Positive X-coordinate value "
"indicates a tilt to the right. Positive Y-coordinate value indicates a tilt "
@@ -26634,14 +27176,17 @@ msgstr ""
#: doc/classes/JSON.xml:18
msgid ""
-"Parses a JSON encoded string and returns a [JSONParseResult] containing the "
+"Parses a JSON-encoded string and returns a [JSONParseResult] containing the "
"result."
msgstr ""
#: doc/classes/JSON.xml:31
msgid ""
"Converts a [Variant] var to JSON text and returns the result. Useful for "
-"serializing data to store or send over the network."
+"serializing data to store or send over the network.\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, converting a Variant to JSON text "
+"will convert all numerical values to [float] types."
msgstr ""
#: doc/classes/JSONParseResult.xml:4
@@ -26664,14 +27209,14 @@ msgstr ""
#: doc/classes/JSONParseResult.xml:18
msgid ""
-"The line number where the error occurred if JSON source was not successfully "
-"parsed."
+"The line number where the error occurred if the JSON source was not "
+"successfully parsed."
msgstr ""
#: doc/classes/JSONParseResult.xml:21
msgid ""
-"The error message if JSON source was not successfully parsed. See the [enum "
-"Error] constants."
+"The error message if the JSON source was not successfully parsed. See the "
+"[enum Error] constants."
msgstr ""
#: doc/classes/JSONParseResult.xml:24
@@ -26679,11 +27224,11 @@ msgid ""
"A [Variant] containing the parsed JSON. Use [method @GDScript.typeof] or the "
"[code]is[/code] keyword to check if it is what you expect. For example, if "
"the JSON source starts with curly braces ([code]{}[/code]), a [Dictionary] "
-"will be returned. If the JSON source starts with braces ([code][][/code]), "
+"will be returned. If the JSON source starts with brackets ([code][][/code]), "
"an [Array] will be returned.\n"
"[b]Note:[/b] The JSON specification does not define integer or float types, "
-"but only a number type. Therefore, parsing a JSON text will convert all "
-"numerical values to float types.\n"
+"but only a [i]number[/i] type. Therefore, parsing a JSON text will convert "
+"all numerical values to [float] types.\n"
"[b]Note:[/b] JSON objects do not preserve key order like Godot dictionaries, "
"thus, you should not rely on keys being in a certain order if a dictionary "
"is constructed from JSON. In contrast, JSON arrays retain the order of their "
@@ -26693,7 +27238,7 @@ msgid ""
"if typeof(p.result) == TYPE_ARRAY:\n"
" print(p.result[0]) # Prints \"hello\"\n"
"else:\n"
-" print(\"unexpected results\")\n"
+" push_error(\"Unexpected results.\")\n"
"[/codeblock]"
msgstr ""
@@ -26809,7 +27354,7 @@ msgid ""
"simulation will run at an incorrect speed.\n"
"[code]linear_velocity[/code] is the velocity vector in pixels per second. "
"Unlike in [method move_and_collide], you should [i]not[/i] multiply it by "
-"[code]delta[/code] — the physics engine handles applying the velocity. \n"
+"[code]delta[/code] — the physics engine handles applying the velocity.\n"
"[code]up_direction[/code] is the up direction, used to determine what is a "
"wall and what is a floor or a ceiling. If set to the default value of "
"[code]Vector2(0, 0)[/code], everything is considered a wall. This is useful "
@@ -26925,7 +27470,7 @@ msgid ""
"[code]linear_velocity[/code] is the velocity vector (typically meters per "
"second). Unlike in [method move_and_collide], you should [i]not[/i] multiply "
"it by [code]delta[/code] — the physics engine handles applying the "
-"velocity. \n"
+"velocity.\n"
"[code]up_direction[/code] is the up direction, used to determine what is a "
"wall and what is a floor or a ceiling. If set to the default value of "
"[code]Vector3(0, 0, 0)[/code], everything is considered a wall.\n"
@@ -27654,17 +28199,6 @@ msgid ""
"[b]Note:[/b] Hiding a light does [i]not[/i] affect baking."
msgstr ""
-#: doc/classes/Light3D.xml:152
-msgid "Only indirect lighting will be baked (default)."
-msgstr ""
-
-#: doc/classes/Light3D.xml:155
-msgid ""
-"Both direct and indirect light will be baked.\n"
-"[b]Note:[/b] You should hide the light if you don't want it to appear twice "
-"(dynamic and baked)."
-msgstr ""
-
#: doc/classes/LightOccluder2D.xml:4
msgid "Occludes light cast by a Light2D, casting shadows."
msgstr ""
@@ -27943,136 +28477,142 @@ msgstr ""
msgid "Text alignment as defined in the [enum Align] enum."
msgstr ""
-#: doc/classes/LineEdit.xml:120 doc/classes/TextEdit.xml:406
+#: doc/classes/LineEdit.xml:120 doc/classes/TextEdit.xml:358
msgid "If [code]true[/code], the caret (visual cursor) blinks."
msgstr ""
-#: doc/classes/LineEdit.xml:123 doc/classes/TextEdit.xml:409
+#: doc/classes/LineEdit.xml:123 doc/classes/TextEdit.xml:361
msgid "Duration (in seconds) of a caret's blinking cycle."
msgstr ""
-#: doc/classes/LineEdit.xml:126
+#: doc/classes/LineEdit.xml:128
msgid ""
"The cursor's position inside the [LineEdit]. When set, the text may scroll "
"to accommodate it."
msgstr ""
-#: doc/classes/LineEdit.xml:129
+#: doc/classes/LineEdit.xml:131
msgid ""
"If [code]true[/code], the [LineEdit] will show a clear button if [code]text[/"
"code] is not empty, which can be used to clear the text quickly."
msgstr ""
-#: doc/classes/LineEdit.xml:132
+#: doc/classes/LineEdit.xml:134
msgid "If [code]true[/code], the context menu will appear when right-clicked."
msgstr ""
-#: doc/classes/LineEdit.xml:135
+#: doc/classes/LineEdit.xml:137
msgid ""
"If [code]false[/code], existing text cannot be modified and new text cannot "
"be added."
msgstr ""
-#: doc/classes/LineEdit.xml:138
+#: doc/classes/LineEdit.xml:140
msgid ""
"If [code]true[/code], the [LineEdit] width will increase to stay longer than "
"the [member text]. It will [b]not[/b] compress if the [member text] is "
"shortened."
msgstr ""
-#: doc/classes/LineEdit.xml:142
+#: doc/classes/LineEdit.xml:144
msgid ""
"Maximum amount of characters that can be entered inside the [LineEdit]. If "
"[code]0[/code], there is no limit."
msgstr ""
-#: doc/classes/LineEdit.xml:146
+#: doc/classes/LineEdit.xml:148
msgid ""
"Opacity of the [member placeholder_text]. From [code]0[/code] to [code]1[/"
"code]."
msgstr ""
-#: doc/classes/LineEdit.xml:149
+#: doc/classes/LineEdit.xml:151
msgid ""
"Text shown when the [LineEdit] is empty. It is [b]not[/b] the [LineEdit]'s "
"default value (see [member text])."
msgstr ""
-#: doc/classes/LineEdit.xml:152
+#: doc/classes/LineEdit.xml:154
msgid ""
"Sets the icon that will appear in the right end of the [LineEdit] if there's "
"no [member text], or always, if [member clear_button_enabled] is set to "
"[code]false[/code]."
msgstr ""
-#: doc/classes/LineEdit.xml:155
+#: doc/classes/LineEdit.xml:157
msgid ""
"If [code]true[/code], every character is replaced with the secret character "
"(see [member secret_character])."
msgstr ""
-#: doc/classes/LineEdit.xml:158
+#: doc/classes/LineEdit.xml:160
msgid ""
"The character to use to mask secret input (defaults to \"*\"). Only a single "
"character can be used as the secret character."
msgstr ""
-#: doc/classes/LineEdit.xml:161
+#: doc/classes/LineEdit.xml:163
msgid ""
"If [code]false[/code], it's impossible to select the text using mouse nor "
"keyboard."
msgstr ""
-#: doc/classes/LineEdit.xml:164
+#: doc/classes/LineEdit.xml:166
msgid "If [code]false[/code], using shortcuts will be disabled."
msgstr ""
-#: doc/classes/LineEdit.xml:167
+#: doc/classes/LineEdit.xml:169
msgid ""
"String value of the [LineEdit].\n"
"[b]Note:[/b] Changing text using this property won't emit the [signal "
"text_changed] signal."
msgstr ""
-#: doc/classes/LineEdit.xml:174
+#: doc/classes/LineEdit.xml:173 doc/classes/TextEdit.xml:434
+msgid ""
+"If [code]true[/code], the native virtual keyboard is shown when focused on "
+"platforms that support it."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:179
msgid ""
"Emitted when trying to append text that would overflow the [member "
"max_length]."
msgstr ""
-#: doc/classes/LineEdit.xml:181 doc/classes/TextEdit.xml:525
+#: doc/classes/LineEdit.xml:186 doc/classes/TextEdit.xml:490
msgid "Emitted when the text changes."
msgstr ""
-#: doc/classes/LineEdit.xml:188
+#: doc/classes/LineEdit.xml:193
msgid "Emitted when the user presses [constant KEY_ENTER] on the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:194
+#: doc/classes/LineEdit.xml:199
msgid "Aligns the text on the left-hand side of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:197
+#: doc/classes/LineEdit.xml:202
msgid "Centers the text in the middle of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:200
+#: doc/classes/LineEdit.xml:205
msgid "Aligns the text on the right-hand side of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:203
+#: doc/classes/LineEdit.xml:208
msgid "Stretches whitespaces to fit the [LineEdit]'s width."
msgstr ""
-#: doc/classes/LineEdit.xml:206 doc/classes/TextEdit.xml:540
+#: doc/classes/LineEdit.xml:211 doc/classes/TextEdit.xml:505
msgid "Cuts (copies and clears) the selected text."
msgstr ""
-#: doc/classes/LineEdit.xml:209 doc/classes/TextEdit.xml:543
+#: doc/classes/LineEdit.xml:214 doc/classes/TextEdit.xml:508
msgid "Copies the selected text."
msgstr ""
-#: doc/classes/LineEdit.xml:212
+#: doc/classes/LineEdit.xml:217
msgid ""
"Pastes the clipboard text over the selected text (or at the cursor's "
"position).\n"
@@ -28080,80 +28620,80 @@ msgid ""
"clipboard via [method String.strip_escapes]."
msgstr ""
-#: doc/classes/LineEdit.xml:216
+#: doc/classes/LineEdit.xml:221
msgid "Erases the whole [LineEdit] text."
msgstr ""
-#: doc/classes/LineEdit.xml:219
+#: doc/classes/LineEdit.xml:224
msgid "Selects the whole [LineEdit] text."
msgstr ""
-#: doc/classes/LineEdit.xml:222 doc/classes/TextEdit.xml:555
+#: doc/classes/LineEdit.xml:227 doc/classes/TextEdit.xml:520
msgid "Undoes the previous action."
msgstr ""
-#: doc/classes/LineEdit.xml:225
+#: doc/classes/LineEdit.xml:230
msgid "Reverse the last undo action."
msgstr ""
-#: doc/classes/LineEdit.xml:228 doc/classes/TextEdit.xml:561
+#: doc/classes/LineEdit.xml:233 doc/classes/TextEdit.xml:526
msgid "Represents the size of the [enum MenuItems] enum."
msgstr ""
-#: doc/classes/LineEdit.xml:233
+#: doc/classes/LineEdit.xml:238
msgid "Texture for the clear button. See [member clear_button_enabled]."
msgstr ""
-#: doc/classes/LineEdit.xml:236
+#: doc/classes/LineEdit.xml:241
msgid "Color used as default tint for the clear button."
msgstr ""
-#: doc/classes/LineEdit.xml:239
+#: doc/classes/LineEdit.xml:244
msgid "Color used for the clear button when it's pressed."
msgstr ""
-#: doc/classes/LineEdit.xml:242
+#: doc/classes/LineEdit.xml:247
msgid "Color of the [LineEdit]'s visual cursor (caret)."
msgstr ""
-#: doc/classes/LineEdit.xml:245
+#: doc/classes/LineEdit.xml:250
msgid "Background used when [LineEdit] has GUI focus."
msgstr ""
-#: doc/classes/LineEdit.xml:248
+#: doc/classes/LineEdit.xml:253
msgid "Font used for the text."
msgstr ""
-#: doc/classes/LineEdit.xml:251
+#: doc/classes/LineEdit.xml:256
msgid "Default font color."
msgstr ""
-#: doc/classes/LineEdit.xml:254
+#: doc/classes/LineEdit.xml:259
msgid "Font color for selected text (inside the selection rectangle)."
msgstr ""
-#: doc/classes/LineEdit.xml:257
+#: doc/classes/LineEdit.xml:262
msgid "Font color when editing is disabled."
msgstr ""
-#: doc/classes/LineEdit.xml:260
+#: doc/classes/LineEdit.xml:265
msgid ""
"Minimum horizontal space for the text (not counting the clear button and "
"content margins). This value is measured in count of space characters (i.e. "
"this amount of space characters can be displayed without scrolling)."
msgstr ""
-#: doc/classes/LineEdit.xml:263
+#: doc/classes/LineEdit.xml:268
msgid "Default background for the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:266
+#: doc/classes/LineEdit.xml:271
msgid ""
"Background used when [LineEdit] is in read-only mode ([member editable] is "
"set to [code]false[/code])."
msgstr ""
-#: doc/classes/LineEdit.xml:269
+#: doc/classes/LineEdit.xml:274
msgid "Color of the selection rectangle."
msgstr ""
@@ -28371,14 +28911,14 @@ msgstr ""
msgid "Emitted when a user responds to a permission request."
msgstr ""
-#: doc/classes/MainLoop.xml:127 doc/classes/Node.xml:948
+#: doc/classes/MainLoop.xml:127 doc/classes/Node.xml:946
msgid ""
"Notification received from the OS when the application is exceeding its "
"allocated memory.\n"
"Specific to the iOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:131 doc/classes/Node.xml:952
+#: doc/classes/MainLoop.xml:131 doc/classes/Node.xml:950
msgid ""
"Notification received when translations may have changed. Can be triggered "
"by the user changing the locale. Can be used to respond to language changes, "
@@ -28386,39 +28926,55 @@ msgid ""
"the built-in translation support, like [method Object.tr]."
msgstr ""
-#: doc/classes/MainLoop.xml:134 doc/classes/Node.xml:955
+#: doc/classes/MainLoop.xml:134 doc/classes/Node.xml:953
msgid ""
"Notification received from the OS when a request for \"About\" information "
"is sent.\n"
"Specific to the macOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:138 doc/classes/Node.xml:959
+#: doc/classes/MainLoop.xml:138 doc/classes/Node.xml:957
msgid ""
"Notification received from Godot's crash handler when the engine is about to "
"crash.\n"
"Implemented on desktop platforms if the crash handler is enabled."
msgstr ""
-#: doc/classes/MainLoop.xml:142 doc/classes/Node.xml:963
+#: doc/classes/MainLoop.xml:142 doc/classes/Node.xml:961
msgid ""
"Notification received from the OS when an update of the Input Method Engine "
"occurs (e.g. change of IME cursor position or composition string).\n"
"Specific to the macOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:146 doc/classes/Node.xml:967
+#: doc/classes/MainLoop.xml:146 doc/classes/Node.xml:965
msgid ""
-"Notification received from the OS when the app is resumed.\n"
+"Notification received from the OS when the application is resumed.\n"
"Specific to the Android platform."
msgstr ""
-#: doc/classes/MainLoop.xml:150 doc/classes/Node.xml:971
+#: doc/classes/MainLoop.xml:150 doc/classes/Node.xml:969
msgid ""
-"Notification received from the OS when the app is paused.\n"
+"Notification received from the OS when the application is paused.\n"
"Specific to the Android platform."
msgstr ""
+#: doc/classes/MainLoop.xml:154 doc/classes/Node.xml:973
+msgid ""
+"Notification received from the OS when the application is focused, i.e. when "
+"changing the focus from the OS desktop or a thirdparty application to any "
+"open window of the Godot instance.\n"
+"Implemented on desktop platforms."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:158 doc/classes/Node.xml:977
+msgid ""
+"Notification received from the OS when the application is defocused, i.e. "
+"when changing the focus from any open window of the Godot instance to the OS "
+"desktop or a thirdparty application.\n"
+"Implemented on desktop platforms."
+msgstr ""
+
#: doc/classes/MarginContainer.xml:4
msgid "Simple margin container."
msgstr ""
@@ -28726,11 +29282,11 @@ msgstr ""
msgid "Render array as triangle strips."
msgstr ""
-#: doc/classes/Mesh.xml:126 doc/classes/RenderingServer.xml:3189
+#: doc/classes/Mesh.xml:126 doc/classes/RenderingServer.xml:3185
msgid "Blend shapes are normalized."
msgstr ""
-#: doc/classes/Mesh.xml:129 doc/classes/RenderingServer.xml:3192
+#: doc/classes/Mesh.xml:129 doc/classes/RenderingServer.xml:3188
msgid "Blend shapes are relative to base weight."
msgstr ""
@@ -28772,37 +29328,37 @@ msgstr ""
msgid "Mesh array uses indices."
msgstr ""
-#: doc/classes/Mesh.xml:159 doc/classes/RenderingServer.xml:3145
+#: doc/classes/Mesh.xml:159 doc/classes/RenderingServer.xml:3141
msgid "Flag used to mark a compressed (half float) normal array."
msgstr ""
-#: doc/classes/Mesh.xml:162 doc/classes/RenderingServer.xml:3148
+#: doc/classes/Mesh.xml:162 doc/classes/RenderingServer.xml:3144
msgid "Flag used to mark a compressed (half float) tangent array."
msgstr ""
-#: doc/classes/Mesh.xml:165 doc/classes/RenderingServer.xml:3151
+#: doc/classes/Mesh.xml:165 doc/classes/RenderingServer.xml:3147
msgid "Flag used to mark a compressed (half float) color array."
msgstr ""
-#: doc/classes/Mesh.xml:168 doc/classes/RenderingServer.xml:3154
+#: doc/classes/Mesh.xml:168 doc/classes/RenderingServer.xml:3150
msgid "Flag used to mark a compressed (half float) UV coordinates array."
msgstr ""
-#: doc/classes/Mesh.xml:171 doc/classes/RenderingServer.xml:3157
+#: doc/classes/Mesh.xml:171 doc/classes/RenderingServer.xml:3153
msgid ""
"Flag used to mark a compressed (half float) UV coordinates array for the "
"second UV coordinates."
msgstr ""
-#: doc/classes/Mesh.xml:174 doc/classes/RenderingServer.xml:3160
+#: doc/classes/Mesh.xml:174 doc/classes/RenderingServer.xml:3156
msgid "Flag used to mark a compressed index array."
msgstr ""
-#: doc/classes/Mesh.xml:177 doc/classes/RenderingServer.xml:3166
+#: doc/classes/Mesh.xml:177 doc/classes/RenderingServer.xml:3162
msgid "Flag used to mark that the array contains 2D vertices."
msgstr ""
-#: doc/classes/Mesh.xml:180 doc/classes/RenderingServer.xml:3163
+#: doc/classes/Mesh.xml:180 doc/classes/RenderingServer.xml:3159
msgid ""
"Used to set flags [constant ARRAY_COMPRESS_NORMAL], [constant "
"ARRAY_COMPRESS_TANGENT], [constant ARRAY_COMPRESS_COLOR], [constant "
@@ -30563,7 +31119,10 @@ msgstr ""
msgid ""
"The number of channels to be used by ENet. Channels are used to separate "
"different kinds of data. In reliable or ordered mode, for example, the "
-"packet delivery order is ensured on a per channel basis."
+"packet delivery order is ensured on a per-channel basis. This is done to "
+"combat latency and reduces ordering restrictions on packets. The delivery "
+"status of a packet in one channel won't stall the delivery of other packets "
+"in another channel."
msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:134
@@ -30590,11 +31149,12 @@ msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:144
msgid ""
"Set the default channel to be used to transfer data. By default, this value "
-"is [code]-1[/code] which means that ENet will only use 2 channels, one for "
-"reliable and one for unreliable packets. Channel [code]0[/code] is reserved, "
-"and cannot be used. Setting this member to any value between [code]0[/code] "
-"and [member channel_count] (excluded) will force ENet to use that channel "
-"for sending data."
+"is [code]-1[/code] which means that ENet will only use 2 channels: one for "
+"reliable packets, and one for unreliable packets. The channel [code]0[/code] "
+"is reserved and cannot be used. Setting this member to any value between "
+"[code]0[/code] and [member channel_count] (excluded) will force ENet to use "
+"that channel for sending data. See [member channel_count] for more "
+"information about ENet channels."
msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:148
@@ -31786,57 +32346,63 @@ msgstr ""
#: doc/classes/Node.xml:930
msgid ""
-"Notification received from the OS when the game window is focused.\n"
-"Implemented on all platforms."
+"Notification received from the OS when the node's parent [Window] is "
+"focused. This may be a change of focus between two windows of the same "
+"engine instance, or from the OS desktop or a third-party application to a "
+"window of the game (in which case [constant "
+"NOTIFICATION_APPLICATION_FOCUS_IN] is also emitted)."
msgstr ""
-#: doc/classes/Node.xml:934
+#: doc/classes/Node.xml:933
msgid ""
-"Notification received from the OS when the game window is unfocused.\n"
-"Implemented on all platforms."
+"Notification received from the OS when the node's parent [Window] is "
+"defocused. This may be a change of focus between two windows of the same "
+"engine instance, or from a window of the game to the OS desktop or a third-"
+"party application (in which case [constant "
+"NOTIFICATION_APPLICATION_FOCUS_OUT] is also emitted)."
msgstr ""
-#: doc/classes/Node.xml:938
+#: doc/classes/Node.xml:936
msgid ""
"Notification received from the OS when a close request is sent (e.g. closing "
"the window with a \"Close\" button or [kbd]Alt + F4[/kbd]).\n"
"Implemented on desktop platforms."
msgstr ""
-#: doc/classes/Node.xml:942
+#: doc/classes/Node.xml:940
msgid ""
"Notification received from the OS when a go back request is sent (e.g. "
"pressing the \"Back\" button on Android).\n"
"Specific to the Android platform."
msgstr ""
-#: doc/classes/Node.xml:975
+#: doc/classes/Node.xml:981
msgid ""
"Inherits pause mode from the node's parent. For the root node, it is "
"equivalent to [constant PAUSE_MODE_STOP]. Default."
msgstr ""
-#: doc/classes/Node.xml:978
+#: doc/classes/Node.xml:984
msgid "Stops processing when the [SceneTree] is paused."
msgstr ""
-#: doc/classes/Node.xml:981
+#: doc/classes/Node.xml:987
msgid "Continue to process regardless of the [SceneTree] pause state."
msgstr ""
-#: doc/classes/Node.xml:984
+#: doc/classes/Node.xml:990
msgid "Duplicate the node's signals."
msgstr ""
-#: doc/classes/Node.xml:987
+#: doc/classes/Node.xml:993
msgid "Duplicate the node's groups."
msgstr ""
-#: doc/classes/Node.xml:990
+#: doc/classes/Node.xml:996
msgid "Duplicate the node's scripts."
msgstr ""
-#: doc/classes/Node.xml:993
+#: doc/classes/Node.xml:999
msgid ""
"Duplicate using instancing.\n"
"An instance stays linked to the original so when the original changes, the "
@@ -32060,12 +32626,6 @@ msgid ""
"changes. [Node3D] will not propagate this by default."
msgstr ""
-#: doc/classes/Node3D.xml:104
-msgid ""
-"Returns whether the node is visible, taking into consideration that its "
-"parents visibility."
-msgstr ""
-
#: doc/classes/Node3D.xml:115
msgid ""
"Rotates itself so that the local -Z axis points towards the [code]target[/"
@@ -32235,7 +32795,10 @@ msgid "Local translation of this node."
msgstr ""
#: doc/classes/Node3D.xml:326
-msgid "If [code]true[/code], this node is drawn."
+msgid ""
+"If [code]true[/code], this node is drawn. The node is only visible if all of "
+"its antecedents are visible as well (in other words, [method "
+"is_visible_in_tree] must return [code]true[/code])."
msgstr ""
#: doc/classes/Node3D.xml:332
@@ -32492,10 +33055,20 @@ msgid ""
"the key exists, even if the value is [code]null[/code].\n"
"Objects also receive notifications. Notifications are a simple way to notify "
"the object about different events, so they can all be handled together. See "
-"[method _notification]."
+"[method _notification].\n"
+"[b]Note:[/b] Unlike references to a [Reference], references to an Object "
+"stored in a variable can become invalid without warning. Therefore, it's "
+"recommended to use [Reference] for data classes instead of [Object]."
msgstr ""
-#: doc/classes/Object.xml:30
+#: doc/classes/Object.xml:23 doc/classes/Reference.xml:12
+#: doc/classes/Resource.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/getting_started/workflow/"
+"best_practices/node_alternatives.html"
+msgstr ""
+
+#: doc/classes/Object.xml:32
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method get].\n"
@@ -32503,7 +33076,7 @@ msgid ""
"code] does not exist."
msgstr ""
-#: doc/classes/Object.xml:38
+#: doc/classes/Object.xml:40
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method get_property_list].\n"
@@ -32515,11 +33088,11 @@ msgid ""
"PropertyUsageFlags])."
msgstr ""
-#: doc/classes/Object.xml:47
+#: doc/classes/Object.xml:49
msgid "Called when the object is initialized."
msgstr ""
-#: doc/classes/Object.xml:56
+#: doc/classes/Object.xml:58
msgid ""
"Called whenever the object receives a notification, which is identified in "
"[code]what[/code] by a constant. The base [Object] has two constants "
@@ -32528,7 +33101,7 @@ msgid ""
"notifications which are also received by this method."
msgstr ""
-#: doc/classes/Object.xml:67
+#: doc/classes/Object.xml:69
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method set].\n"
@@ -32536,7 +33109,7 @@ msgid ""
"exists."
msgstr ""
-#: doc/classes/Object.xml:75
+#: doc/classes/Object.xml:77
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method to_string], and thus the object's representation where it is "
@@ -32545,34 +33118,42 @@ msgid ""
"[code]\"[ClassName:RID]\"[/code]."
msgstr ""
-#: doc/classes/Object.xml:87
+#: doc/classes/Object.xml:89
msgid ""
"Adds a user-defined [code]signal[/code]. Arguments are optional, but can be "
"added as an [Array] of dictionaries, each containing [code]name: String[/"
"code] and [code]type: int[/code] (see [enum Variant.Type]) entries."
msgstr ""
-#: doc/classes/Object.xml:96
+#: doc/classes/Object.xml:98
msgid ""
"Calls the [code]method[/code] on the object and returns the result. This "
"method supports a variable number of arguments, so parameters are passed as "
"a comma separated list. Example:\n"
"[codeblock]\n"
"call(\"set\", \"position\", Vector2(42.0, 0.0))\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] In C#, the method name must be specified as snake_case if it is "
+"defined by a built-in Godot node. This doesn't apply to user-defined methods "
+"where you should use the same convention as in the C# source (typically "
+"PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:108
+#: doc/classes/Object.xml:111
msgid ""
"Calls the [code]method[/code] on the object during idle time. This method "
"supports a variable number of arguments, so parameters are passed as a comma "
"separated list. Example:\n"
"[codeblock]\n"
"call_deferred(\"set\", \"position\", Vector2(42.0, 0.0))\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] In C#, the method name must be specified as snake_case if it is "
+"defined by a built-in Godot node. This doesn't apply to user-defined methods "
+"where you should use the same convention as in the C# source (typically "
+"PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:122
+#: doc/classes/Object.xml:126
msgid ""
"Calls the [code]method[/code] on the object and returns the result. "
"Contrarily to [method call], this method does not support a variable number "
@@ -32582,13 +33163,13 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:132
+#: doc/classes/Object.xml:136
msgid ""
"Returns [code]true[/code] if the object can translate strings. See [method "
"set_message_translation] and [method tr]."
msgstr ""
-#: doc/classes/Object.xml:147
+#: doc/classes/Object.xml:151
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32624,7 +33205,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:174
+#: doc/classes/Object.xml:178
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32635,7 +33216,7 @@ msgid ""
"exists."
msgstr ""
-#: doc/classes/Object.xml:185
+#: doc/classes/Object.xml:189
msgid ""
"Emits the given [code]signal[/code]. The signal must exist, so it should be "
"a built-in signal of this class or one of its parent classes, or a user-"
@@ -32647,24 +33228,28 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:196
+#: doc/classes/Object.xml:200
msgid ""
"Deletes the object from memory. Any pre-existing reference to the freed "
"object will become invalid, e.g. [code]is_instance_valid(object)[/code] will "
"return [code]false[/code]."
msgstr ""
-#: doc/classes/Object.xml:205
+#: doc/classes/Object.xml:209
msgid ""
"Returns the [Variant] value of the given [code]property[/code]. If the "
-"[code]property[/code] doesn't exist, this will return [code]null[/code]."
+"[code]property[/code] doesn't exist, this will return [code]null[/code].\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:212
+#: doc/classes/Object.xml:217
msgid "Returns the object's class as a [String]."
msgstr ""
-#: doc/classes/Object.xml:219
+#: doc/classes/Object.xml:224
msgid ""
"Returns an [Array] of dictionaries with information about signals that are "
"connected to the object.\n"
@@ -32675,7 +33260,7 @@ msgid ""
"connected."
msgstr ""
-#: doc/classes/Object.xml:232
+#: doc/classes/Object.xml:237
msgid ""
"Gets the object's property indexed by the given [NodePath]. The node path "
"should be relative to the current object and can use the colon character "
@@ -32683,26 +33268,26 @@ msgid ""
"\"[/code] or [code]\"material:next_pass:blend_mode\"[/code]."
msgstr ""
-#: doc/classes/Object.xml:239
+#: doc/classes/Object.xml:244
msgid ""
"Returns the object's unique instance ID.\n"
"This ID can be saved in [EncodedObjectAsID], and can be used to retrieve the "
"object instance with [method @GDScript.instance_from_id]."
msgstr ""
-#: doc/classes/Object.xml:249
+#: doc/classes/Object.xml:254
msgid "Returns the object's metadata entry for the given [code]name[/code]."
msgstr ""
-#: doc/classes/Object.xml:256
+#: doc/classes/Object.xml:261
msgid "Returns the object's metadata as a [PackedStringArray]."
msgstr ""
-#: doc/classes/Object.xml:263
+#: doc/classes/Object.xml:268
msgid "Returns the object's methods and their signatures as an [Array]."
msgstr ""
-#: doc/classes/Object.xml:270
+#: doc/classes/Object.xml:275
msgid ""
"Returns the object's property list as an [Array] of dictionaries.\n"
"Each property's [Dictionary] contain at least [code]name: String[/code] and "
@@ -32712,54 +33297,54 @@ msgid ""
"PropertyUsageFlags])."
msgstr ""
-#: doc/classes/Object.xml:278
+#: doc/classes/Object.xml:283
msgid ""
"Returns the object's [Script] instance, or [code]null[/code] if none is "
"assigned."
msgstr ""
-#: doc/classes/Object.xml:287
+#: doc/classes/Object.xml:292
msgid "Returns an [Array] of connections for the given [code]signal[/code]."
msgstr ""
-#: doc/classes/Object.xml:294
+#: doc/classes/Object.xml:299
msgid "Returns the list of signals as an [Array] of dictionaries."
msgstr ""
-#: doc/classes/Object.xml:303
+#: doc/classes/Object.xml:308
msgid ""
"Returns [code]true[/code] if a metadata entry is found with the given "
"[code]name[/code]."
msgstr ""
-#: doc/classes/Object.xml:312
+#: doc/classes/Object.xml:317
msgid ""
"Returns [code]true[/code] if the object contains the given [code]method[/"
"code]."
msgstr ""
-#: doc/classes/Object.xml:321
+#: doc/classes/Object.xml:326
msgid "Returns [code]true[/code] if the given [code]signal[/code] exists."
msgstr ""
-#: doc/classes/Object.xml:330
+#: doc/classes/Object.xml:335
msgid ""
"Returns [code]true[/code] if the given user-defined [code]signal[/code] "
"exists. Only signals added using [method add_user_signal] are taken into "
"account."
msgstr ""
-#: doc/classes/Object.xml:337
+#: doc/classes/Object.xml:342
msgid "Returns [code]true[/code] if signal emission blocking is enabled."
msgstr ""
-#: doc/classes/Object.xml:346
+#: doc/classes/Object.xml:351
msgid ""
"Returns [code]true[/code] if the object inherits from the given [code]class[/"
"code]."
msgstr ""
-#: doc/classes/Object.xml:357
+#: doc/classes/Object.xml:362
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32767,13 +33352,13 @@ msgid ""
"code], [code]target[/code], and [code]method[/code]."
msgstr ""
-#: doc/classes/Object.xml:365
+#: doc/classes/Object.xml:370
msgid ""
"Returns [code]true[/code] if the [method Node.queue_free] method was called "
"for the object."
msgstr ""
-#: doc/classes/Object.xml:376
+#: doc/classes/Object.xml:381
msgid ""
"Send a given notification to the object, which will also trigger a call to "
"the [method _notification] method of all classes that the object inherits "
@@ -32785,34 +33370,42 @@ msgid ""
"and then down to its successive inheriting classes."
msgstr ""
-#: doc/classes/Object.xml:384
+#: doc/classes/Object.xml:389
msgid ""
"Notify the editor that the property list has changed, so that editor plugins "
"can take the new values into account. Does nothing on export builds."
msgstr ""
-#: doc/classes/Object.xml:393
+#: doc/classes/Object.xml:398
msgid "Removes a given entry from the object's metadata."
msgstr ""
-#: doc/classes/Object.xml:404
+#: doc/classes/Object.xml:409
msgid ""
"Assigns a new value to the given property. If the [code]property[/code] does "
-"not exist, nothing will happen."
+"not exist, nothing will happen.\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:413
+#: doc/classes/Object.xml:419
msgid "If set to [code]true[/code], signal emission is blocked."
msgstr ""
-#: doc/classes/Object.xml:424
+#: doc/classes/Object.xml:430
msgid ""
"Assigns a new value to the given property, after the current frame's physics "
"step. This is equivalent to calling [method set] via [method call_deferred], "
-"i.e. [code]call_deferred(\"set\", property, value)[/code]."
+"i.e. [code]call_deferred(\"set\", property, value)[/code].\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:435
+#: doc/classes/Object.xml:442
msgid ""
"Assigns a new value to the property identified by the [NodePath]. The node "
"path should be relative to the current object and can use the colon "
@@ -32824,19 +33417,19 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:449
+#: doc/classes/Object.xml:456
msgid ""
"Defines whether the object can translate strings (with calls to [method "
"tr]). Enabled by default."
msgstr ""
-#: doc/classes/Object.xml:460
+#: doc/classes/Object.xml:467
msgid ""
"Adds or changes a given entry in the object's metadata. Metadata are "
"serialized, and can take any [Variant] value."
msgstr ""
-#: doc/classes/Object.xml:469
+#: doc/classes/Object.xml:476
msgid ""
"Assigns a script to the object. Each object can have a single script "
"assigned to it, which are used to extend its functionality.\n"
@@ -32845,7 +33438,7 @@ msgid ""
"_init] method will be called."
msgstr ""
-#: doc/classes/Object.xml:477
+#: doc/classes/Object.xml:484
msgid ""
"Returns a [String] representing the object. If not overridden, defaults to "
"[code]\"[ClassName:RID]\"[/code].\n"
@@ -32853,7 +33446,7 @@ msgid ""
"representation."
msgstr ""
-#: doc/classes/Object.xml:487
+#: doc/classes/Object.xml:494
msgid ""
"Translates a message using translation catalogs configured in the Project "
"Settings.\n"
@@ -32862,35 +33455,35 @@ msgid ""
"set_message_translation]."
msgstr ""
-#: doc/classes/Object.xml:495
+#: doc/classes/Object.xml:502
msgid "Emitted whenever the object's script is changed."
msgstr ""
-#: doc/classes/Object.xml:501
+#: doc/classes/Object.xml:508
msgid "Called right when the object is initialized. Not available in script."
msgstr ""
-#: doc/classes/Object.xml:504
+#: doc/classes/Object.xml:511
msgid "Called before the object is about to be deleted."
msgstr ""
-#: doc/classes/Object.xml:507
+#: doc/classes/Object.xml:514
msgid ""
"Connects a signal in deferred mode. This way, signal emissions are stored in "
"a queue, then set on idle time."
msgstr ""
-#: doc/classes/Object.xml:510
+#: doc/classes/Object.xml:517
msgid "Persisting connections are saved when the object is serialized to file."
msgstr ""
-#: doc/classes/Object.xml:513
+#: doc/classes/Object.xml:520
msgid "One-shot connections disconnect themselves after emission."
msgstr ""
-#: doc/classes/Object.xml:516
+#: doc/classes/Object.xml:523
msgid ""
-"Connect a signal as reference counted. This means that a given signal can be "
+"Connect a signal as reference-counted. This means that a given signal can be "
"connected several times to the same target, and will only be fully "
"disconnected once no references are left."
msgstr ""
@@ -33355,10 +33948,29 @@ msgid "Returns the keycode of the given string (e.g. \"Escape\")."
msgstr ""
#: doc/classes/OS.xml:115
-msgid "Returns the command line arguments passed to the engine."
+msgid ""
+"Returns the command-line arguments passed to the engine.\n"
+"Command-line arguments can be written in any form, including both [code]--"
+"key value[/code] and [code]--key=value[/code] forms so they can be properly "
+"parsed, as long as custom command-line arguments do not conflict with engine "
+"arguments.\n"
+"You can also incorporate environment variables using the [method "
+"get_environment] method.\n"
+"You can set [code]editor/main_run_args[/code] in the Project Settings to "
+"define command-line arguments to be passed by the editor when running the "
+"project.\n"
+"Here's a minimal example on how to parse command-line arguments into a "
+"dictionary using the [code]--key=value[/code] form for arguments:\n"
+"[codeblock]\n"
+"var arguments = {}\n"
+"for argument in OS.get_cmdline_args():\n"
+" if argument.find(\"=\") > -1:\n"
+" var key_value = argument.split(\"=\")\n"
+" arguments[key_value[0].lstrip(\"--\")] = key_value[1]\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/OS.xml:122
+#: doc/classes/OS.xml:133
msgid ""
"Returns an array of MIDI device names.\n"
"The returned array will be empty if the system MIDI driver has not "
@@ -33366,14 +33978,14 @@ msgid ""
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:133
+#: doc/classes/OS.xml:144
msgid ""
"Returns current date as a dictionary of keys: [code]year[/code], "
"[code]month[/code], [code]day[/code], [code]weekday[/code], [code]dst[/code] "
"(Daylight Savings Time)."
msgstr ""
-#: doc/classes/OS.xml:142
+#: doc/classes/OS.xml:153
msgid ""
"Returns current datetime as a dictionary of keys: [code]year[/code], "
"[code]month[/code], [code]day[/code], [code]weekday[/code], [code]dst[/code] "
@@ -33381,7 +33993,7 @@ msgid ""
"[code]second[/code]."
msgstr ""
-#: doc/classes/OS.xml:151
+#: doc/classes/OS.xml:162
msgid ""
"Gets a dictionary of time values corresponding to the given UNIX epoch time "
"(in seconds).\n"
@@ -33390,22 +34002,22 @@ msgid ""
"the epoch."
msgstr ""
-#: doc/classes/OS.xml:161
+#: doc/classes/OS.xml:172
msgid "Returns an environment variable."
msgstr ""
-#: doc/classes/OS.xml:168
+#: doc/classes/OS.xml:179
msgid "Returns the path to the current engine executable."
msgstr ""
-#: doc/classes/OS.xml:175
+#: doc/classes/OS.xml:186
msgid ""
"With this function you can get the list of dangerous permissions that have "
"been granted to the Android application.\n"
"[b]Note:[/b] This method is implemented on Android."
msgstr ""
-#: doc/classes/OS.xml:185
+#: doc/classes/OS.xml:196
msgid ""
"Returns the given keycode as a string (e.g. Return values: [code]\"Escape\"[/"
"code], [code]\"Shift+Escape\"[/code]).\n"
@@ -33413,18 +34025,18 @@ msgid ""
"get_keycode_with_modifiers]."
msgstr ""
-#: doc/classes/OS.xml:193
+#: doc/classes/OS.xml:204
msgid "Returns the host OS locale."
msgstr ""
-#: doc/classes/OS.xml:200
+#: doc/classes/OS.xml:211
msgid ""
"Returns the model name of the current device.\n"
"[b]Note:[/b] This method is implemented on Android and iOS. Returns "
"[code]\"GenericDevice\"[/code] on unsupported platforms."
msgstr ""
-#: doc/classes/OS.xml:208
+#: doc/classes/OS.xml:219
msgid ""
"Returns the name of the host OS. Possible values are: [code]\"Android\"[/"
"code], [code]\"iOS\"[/code], [code]\"HTML5\"[/code], [code]\"OSX\"[/code], "
@@ -33432,81 +34044,81 @@ msgid ""
"[code]\"X11\"[/code]."
msgstr ""
-#: doc/classes/OS.xml:215
+#: doc/classes/OS.xml:226
msgid ""
"Returns the project's process ID.\n"
"[b]Note:[/b] This method is implemented on Android, iOS, Linux, macOS and "
"Windows."
msgstr ""
-#: doc/classes/OS.xml:223
+#: doc/classes/OS.xml:234
msgid "Returns the number of threads available on the host machine."
msgstr ""
-#: doc/classes/OS.xml:230
+#: doc/classes/OS.xml:241
msgid ""
"Returns the amount of time in milliseconds it took for the boot logo to "
"appear."
msgstr ""
-#: doc/classes/OS.xml:237
+#: doc/classes/OS.xml:248
msgid "Returns the maximum amount of static memory used (only works in debug)."
msgstr ""
-#: doc/classes/OS.xml:244
+#: doc/classes/OS.xml:255
msgid "Returns the amount of static memory being used by the program in bytes."
msgstr ""
-#: doc/classes/OS.xml:253
+#: doc/classes/OS.xml:264
msgid ""
"Returns the actual path to commonly used folders across different platforms. "
"Available locations are specified in [enum SystemDir].\n"
"[b]Note:[/b] This method is implemented on Android, Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:261
+#: doc/classes/OS.xml:272
msgid ""
"Returns the total number of available tablet drivers.\n"
"[b]Note:[/b] This method is implemented on Windows."
msgstr ""
-#: doc/classes/OS.xml:271
+#: doc/classes/OS.xml:282
msgid ""
"Returns the tablet driver name for the given index.\n"
"[b]Note:[/b] This method is implemented on Windows."
msgstr ""
-#: doc/classes/OS.xml:279
+#: doc/classes/OS.xml:290
msgid ""
"Returns the amount of time passed in milliseconds since the engine started."
msgstr ""
-#: doc/classes/OS.xml:286
+#: doc/classes/OS.xml:297
msgid ""
"Returns the amount of time passed in microseconds since the engine started."
msgstr ""
-#: doc/classes/OS.xml:295
+#: doc/classes/OS.xml:306
msgid "Returns current time as a dictionary of keys: hour, minute, second."
msgstr ""
-#: doc/classes/OS.xml:302
+#: doc/classes/OS.xml:313
msgid ""
"Returns the current time zone as a dictionary with the keys: bias and name."
msgstr ""
-#: doc/classes/OS.xml:309
+#: doc/classes/OS.xml:320
msgid ""
"Returns a string that is unique to the device.\n"
"[b]Note:[/b] Returns an empty string on HTML5 and UWP, as this method isn't "
"implemented on those platforms yet."
msgstr ""
-#: doc/classes/OS.xml:317
+#: doc/classes/OS.xml:328
msgid "Returns the current UNIX epoch timestamp."
msgstr ""
-#: doc/classes/OS.xml:326
+#: doc/classes/OS.xml:337
msgid ""
"Gets an epoch time value from a dictionary of time values.\n"
"[code]datetime[/code] must be populated with the following keys: [code]year[/"
@@ -33517,7 +34129,7 @@ msgid ""
"ignored."
msgstr ""
-#: doc/classes/OS.xml:335
+#: doc/classes/OS.xml:346
msgid ""
"Returns the absolute directory path where user data is written ([code]user://"
"[/code]).\n"
@@ -33535,11 +34147,11 @@ msgid ""
"[/code]."
msgstr ""
-#: doc/classes/OS.xml:348
+#: doc/classes/OS.xml:359
msgid "Returns [code]true[/code] if an environment variable exists."
msgstr ""
-#: doc/classes/OS.xml:357
+#: doc/classes/OS.xml:368
msgid ""
"Returns [code]true[/code] if the feature for the given feature tag is "
"supported in the currently running instance, depending on platform, build "
@@ -33550,7 +34162,7 @@ msgid ""
"[b]Note:[/b] Tag names are case-sensitive."
msgstr ""
-#: doc/classes/OS.xml:365
+#: doc/classes/OS.xml:376
msgid ""
"Returns [code]true[/code] if the Godot binary used to run the project is a "
"[i]debug[/i] export template, or when running in the editor.\n"
@@ -33561,26 +34173,26 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/OS.xml:376
+#: doc/classes/OS.xml:387
msgid ""
"Returns [code]true[/code] if the input keycode corresponds to a Unicode "
"character."
msgstr ""
-#: doc/classes/OS.xml:383
+#: doc/classes/OS.xml:394
msgid ""
"Returns [code]true[/code] if the engine was executed with [code]-v[/code] "
"(verbose stdout)."
msgstr ""
-#: doc/classes/OS.xml:390
+#: doc/classes/OS.xml:401
msgid ""
"If [code]true[/code], the [code]user://[/code] file system is persistent, so "
"that its state is the same after a player quits and starts the game again. "
"Relevant to the HTML5 platform, where this persistence may be unavailable."
msgstr ""
-#: doc/classes/OS.xml:399
+#: doc/classes/OS.xml:410
msgid ""
"Kill (terminate) the process identified by the given process ID ([code]pid[/"
"code]), e.g. the one returned by [method execute] in non-blocking mode.\n"
@@ -33590,37 +34202,37 @@ msgid ""
"Windows."
msgstr ""
-#: doc/classes/OS.xml:408
+#: doc/classes/OS.xml:419
msgid ""
"Initialises the singleton for the system MIDI driver.\n"
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:418
+#: doc/classes/OS.xml:429
msgid ""
"Shows all resources in the game. Optionally, the list can be written to a "
"file by specifying a file path in [code]tofile[/code]."
msgstr ""
-#: doc/classes/OS.xml:425
+#: doc/classes/OS.xml:436
msgid "Shows the list of loaded textures sorted by size in memory."
msgstr ""
-#: doc/classes/OS.xml:434
+#: doc/classes/OS.xml:445
msgid "Shows the number of resources loaded by the game of the given types."
msgstr ""
-#: doc/classes/OS.xml:443
+#: doc/classes/OS.xml:454
msgid "Shows all resources currently used by the game."
msgstr ""
-#: doc/classes/OS.xml:452
+#: doc/classes/OS.xml:463
msgid ""
"At the moment this function is only used by [code]AudioDriverOpenSL[/code] "
"to request permission for [code]RECORD_AUDIO[/code] on Android."
msgstr ""
-#: doc/classes/OS.xml:459
+#: doc/classes/OS.xml:470
msgid ""
"With this function you can request dangerous permissions since normal "
"permissions are automatically granted at install time in Android "
@@ -33628,15 +34240,15 @@ msgid ""
"[b]Note:[/b] This method is implemented on Android."
msgstr ""
-#: doc/classes/OS.xml:469
+#: doc/classes/OS.xml:480
msgid "Sets the name of the current thread."
msgstr ""
-#: doc/classes/OS.xml:478
+#: doc/classes/OS.xml:489
msgid "Enables backup saves if [code]enabled[/code] is [code]true[/code]."
msgstr ""
-#: doc/classes/OS.xml:487
+#: doc/classes/OS.xml:498
msgid ""
"Requests the OS to open a resource with the most appropriate program. For "
"example:\n"
@@ -33655,7 +34267,7 @@ msgid ""
"and Windows."
msgstr ""
-#: doc/classes/OS.xml:498
+#: doc/classes/OS.xml:509
msgid ""
"The exit code passed to the OS when the main loop exits. By convention, an "
"exit code of [code]0[/code] indicates success whereas a non-zero exit code "
@@ -33665,137 +34277,137 @@ msgid ""
"with an [code]exit_code[/code] argument passed."
msgstr ""
-#: doc/classes/OS.xml:502
+#: doc/classes/OS.xml:513
msgid ""
"If [code]true[/code], the engine optimizes for low processor usage by only "
"refreshing the screen if needed. Can improve battery consumption on mobile."
msgstr ""
-#: doc/classes/OS.xml:505
+#: doc/classes/OS.xml:516
msgid ""
"The amount of sleeping between frames when the low-processor usage mode is "
"enabled (in microseconds). Higher values will result in lower CPU usage."
msgstr ""
-#: doc/classes/OS.xml:508
-msgid "The current tablet drvier in use."
+#: doc/classes/OS.xml:519
+msgid "The current tablet driver in use."
msgstr ""
-#: doc/classes/OS.xml:513
+#: doc/classes/OS.xml:524
msgid ""
"The GLES2 rendering backend. It uses OpenGL ES 2.0 on mobile devices, OpenGL "
"2.1 on desktop platforms and WebGL 1.0 on the web."
msgstr ""
-#: doc/classes/OS.xml:516
+#: doc/classes/OS.xml:527
msgid "The Vulkan rendering backend."
msgstr ""
-#: doc/classes/OS.xml:519
+#: doc/classes/OS.xml:530
msgid "Sunday."
msgstr ""
-#: doc/classes/OS.xml:522
+#: doc/classes/OS.xml:533
msgid "Monday."
msgstr ""
-#: doc/classes/OS.xml:525
+#: doc/classes/OS.xml:536
msgid "Tuesday."
msgstr ""
-#: doc/classes/OS.xml:528
+#: doc/classes/OS.xml:539
msgid "Wednesday."
msgstr ""
-#: doc/classes/OS.xml:531
+#: doc/classes/OS.xml:542
msgid "Thursday."
msgstr ""
-#: doc/classes/OS.xml:534
+#: doc/classes/OS.xml:545
msgid "Friday."
msgstr ""
-#: doc/classes/OS.xml:537
+#: doc/classes/OS.xml:548
msgid "Saturday."
msgstr ""
-#: doc/classes/OS.xml:540
+#: doc/classes/OS.xml:551
msgid "January."
msgstr ""
-#: doc/classes/OS.xml:543
+#: doc/classes/OS.xml:554
msgid "February."
msgstr ""
-#: doc/classes/OS.xml:546
+#: doc/classes/OS.xml:557
msgid "March."
msgstr ""
-#: doc/classes/OS.xml:549
+#: doc/classes/OS.xml:560
msgid "April."
msgstr ""
-#: doc/classes/OS.xml:552
+#: doc/classes/OS.xml:563
msgid "May."
msgstr ""
-#: doc/classes/OS.xml:555
+#: doc/classes/OS.xml:566
msgid "June."
msgstr ""
-#: doc/classes/OS.xml:558
+#: doc/classes/OS.xml:569
msgid "July."
msgstr ""
-#: doc/classes/OS.xml:561
+#: doc/classes/OS.xml:572
msgid "August."
msgstr ""
-#: doc/classes/OS.xml:564
+#: doc/classes/OS.xml:575
msgid "September."
msgstr ""
-#: doc/classes/OS.xml:567
+#: doc/classes/OS.xml:578
msgid "October."
msgstr ""
-#: doc/classes/OS.xml:570
+#: doc/classes/OS.xml:581
msgid "November."
msgstr ""
-#: doc/classes/OS.xml:573
+#: doc/classes/OS.xml:584
msgid "December."
msgstr ""
-#: doc/classes/OS.xml:576
+#: doc/classes/OS.xml:587
msgid "Desktop directory path."
msgstr ""
-#: doc/classes/OS.xml:579
+#: doc/classes/OS.xml:590
msgid "DCIM (Digital Camera Images) directory path."
msgstr ""
-#: doc/classes/OS.xml:582
+#: doc/classes/OS.xml:593
msgid "Documents directory path."
msgstr ""
-#: doc/classes/OS.xml:585
+#: doc/classes/OS.xml:596
msgid "Downloads directory path."
msgstr ""
-#: doc/classes/OS.xml:588
+#: doc/classes/OS.xml:599
msgid "Movies directory path."
msgstr ""
-#: doc/classes/OS.xml:591
+#: doc/classes/OS.xml:602
msgid "Music directory path."
msgstr ""
-#: doc/classes/OS.xml:594
+#: doc/classes/OS.xml:605
msgid "Pictures directory path."
msgstr ""
-#: doc/classes/OS.xml:597
+#: doc/classes/OS.xml:608
msgid "Ringtones directory path."
msgstr ""
@@ -33850,7 +34462,15 @@ msgid ""
"should always be preferred."
msgstr ""
-#: doc/classes/PackedByteArray.xml:85
+#: doc/classes/PackedByteArray.xml:87 doc/classes/PackedColorArray.xml:53
+#: doc/classes/PackedFloat32Array.xml:54 doc/classes/PackedFloat64Array.xml:54
+#: doc/classes/PackedInt32Array.xml:54 doc/classes/PackedInt64Array.xml:54
+#: doc/classes/PackedStringArray.xml:53 doc/classes/PackedVector2Array.xml:53
+#: doc/classes/PackedVector3Array.xml:53
+msgid "Returns [code]true[/code] if the array contains [code]value[/code]."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:94
msgid ""
"Returns a hexadecimal representation of this array as a [String].\n"
"[codeblock]\n"
@@ -33859,39 +34479,48 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/PackedByteArray.xml:100 doc/classes/PackedColorArray.xml:55
-#: doc/classes/PackedFloat32Array.xml:56 doc/classes/PackedFloat64Array.xml:56
-#: doc/classes/PackedStringArray.xml:55 doc/classes/PackedVector2Array.xml:55
-#: doc/classes/PackedVector3Array.xml:55
+#: doc/classes/PackedByteArray.xml:109 doc/classes/PackedColorArray.xml:64
+#: doc/classes/PackedFloat32Array.xml:65 doc/classes/PackedFloat64Array.xml:65
+#: doc/classes/PackedStringArray.xml:64 doc/classes/PackedVector2Array.xml:64
+#: doc/classes/PackedVector3Array.xml:64
msgid ""
"Inserts a new element at a given position in the array. The position must be "
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PackedByteArray.xml:134 doc/classes/PackedColorArray.xml:89
-#: doc/classes/PackedFloat32Array.xml:90 doc/classes/PackedFloat64Array.xml:90
-#: doc/classes/PackedInt32Array.xml:90 doc/classes/PackedInt64Array.xml:90
-#: doc/classes/PackedStringArray.xml:89 doc/classes/PackedVector2Array.xml:89
-#: doc/classes/PackedVector3Array.xml:89
+#: doc/classes/PackedByteArray.xml:143 doc/classes/PackedColorArray.xml:98
+#: doc/classes/PackedFloat32Array.xml:99 doc/classes/PackedFloat64Array.xml:99
+#: doc/classes/PackedInt32Array.xml:99 doc/classes/PackedInt64Array.xml:99
+#: doc/classes/PackedStringArray.xml:98 doc/classes/PackedVector2Array.xml:98
+#: doc/classes/PackedVector3Array.xml:98
msgid ""
"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."
msgstr ""
-#: doc/classes/PackedByteArray.xml:145
+#: doc/classes/PackedByteArray.xml:154
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PackedByteArray.xml:152 doc/classes/PackedColorArray.xml:107
-#: doc/classes/PackedFloat32Array.xml:108
-#: doc/classes/PackedFloat64Array.xml:108 doc/classes/PackedStringArray.xml:107
-#: doc/classes/PackedVector2Array.xml:107
-#: doc/classes/PackedVector3Array.xml:107
+#: doc/classes/PackedByteArray.xml:161 doc/classes/PackedColorArray.xml:116
+#: doc/classes/PackedFloat32Array.xml:117
+#: doc/classes/PackedFloat64Array.xml:117 doc/classes/PackedStringArray.xml:116
+#: doc/classes/PackedVector2Array.xml:116
+#: doc/classes/PackedVector3Array.xml:116
msgid "Returns the size of the array."
msgstr ""
-#: doc/classes/PackedByteArray.xml:163
+#: doc/classes/PackedByteArray.xml:168 doc/classes/PackedColorArray.xml:123
+#: doc/classes/PackedFloat32Array.xml:124
+#: doc/classes/PackedFloat64Array.xml:124 doc/classes/PackedInt32Array.xml:124
+#: doc/classes/PackedInt64Array.xml:124 doc/classes/PackedStringArray.xml:123
+#: doc/classes/PackedVector2Array.xml:123
+#: doc/classes/PackedVector3Array.xml:123
+msgid "Sorts the elements of the array in ascending order."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:179
msgid ""
"Returns the slice of the [PackedByteArray] between indices (inclusive) as a "
"new [PackedByteArray]. Any negative index is considered to be from the end "
@@ -33919,12 +34548,12 @@ msgstr ""
msgid "Appends a [PackedColorArray] at the end of this array."
msgstr ""
-#: doc/classes/PackedColorArray.xml:71 doc/classes/PackedInt32Array.xml:72
-#: doc/classes/PackedInt64Array.xml:72
+#: doc/classes/PackedColorArray.xml:80 doc/classes/PackedInt32Array.xml:81
+#: doc/classes/PackedInt64Array.xml:81
msgid "Appends a value to the array."
msgstr ""
-#: doc/classes/PackedColorArray.xml:100
+#: doc/classes/PackedColorArray.xml:109
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -33954,8 +34583,8 @@ msgstr ""
msgid "Appends a [PackedFloat32Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedFloat32Array.xml:101
-#: doc/classes/PackedFloat64Array.xml:101
+#: doc/classes/PackedFloat32Array.xml:110
+#: doc/classes/PackedFloat64Array.xml:110
msgid "Changes the float at the given index."
msgstr ""
@@ -34008,17 +34637,17 @@ msgstr ""
msgid "Appends a [PackedInt32Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:56 doc/classes/PackedInt64Array.xml:56
+#: doc/classes/PackedInt32Array.xml:65 doc/classes/PackedInt64Array.xml:65
msgid ""
"Inserts a new integer at a given position in the array. The position must be "
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:101 doc/classes/PackedInt64Array.xml:101
+#: doc/classes/PackedInt32Array.xml:110 doc/classes/PackedInt64Array.xml:110
msgid "Changes the integer at the given index."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:108 doc/classes/PackedInt64Array.xml:108
+#: doc/classes/PackedInt32Array.xml:117 doc/classes/PackedInt64Array.xml:117
msgid "Returns the array size."
msgstr ""
@@ -34059,6 +34688,14 @@ msgid ""
"Can be used to save a node to a file. When saving, the node as well as all "
"the node it owns get saved (see [code]owner[/code] property on [Node]).\n"
"[b]Note:[/b] The node doesn't need to own itself.\n"
+"[b]Example of loading a saved scene:[/b]\n"
+"[codeblock]\n"
+"# Use `load()` instead of `preload()` if the path isn't known at compile-"
+"time.\n"
+"var scene = preload(\"res://scene.tscn\").instance()\n"
+"# Add the node as a child of the node the script is attached to.\n"
+"add_child(scene)\n"
+"[/codeblock]\n"
"[b]Example of saving a node with different owners:[/b] The following example "
"creates 3 objects: [code]Node2D[/code] ([code]node[/code]), "
"[code]RigidBody2D[/code] ([code]rigid[/code]) and [code]CollisionObject2D[/"
@@ -34090,29 +34727,29 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/PackedScene.xml:40
+#: doc/classes/PackedScene.xml:47
msgid "Returns [code]true[/code] if the scene file has nodes."
msgstr ""
-#: doc/classes/PackedScene.xml:47
+#: doc/classes/PackedScene.xml:54
msgid ""
"Returns the [code]SceneState[/code] representing the scene file contents."
msgstr ""
-#: doc/classes/PackedScene.xml:56
+#: doc/classes/PackedScene.xml:63
msgid ""
"Instantiates the scene's node hierarchy. Triggers child scene "
"instantiation(s). Triggers a [constant Node.NOTIFICATION_INSTANCED] "
"notification on the root node."
msgstr ""
-#: doc/classes/PackedScene.xml:65
+#: doc/classes/PackedScene.xml:72
msgid ""
"Pack will ignore any sub-nodes not owned by given node. See [member Node."
"owner]."
msgstr ""
-#: doc/classes/PackedScene.xml:71
+#: doc/classes/PackedScene.xml:78
msgid ""
"A dictionary representation of the scene contents.\n"
"Available keys include \"rnames\" and \"variants\" for resources, "
@@ -34121,18 +34758,18 @@ msgid ""
"connections, and \"version\" for the format style of the PackedScene."
msgstr ""
-#: doc/classes/PackedScene.xml:77
+#: doc/classes/PackedScene.xml:84
msgid "If passed to [method instance], blocks edits to the scene state."
msgstr ""
-#: doc/classes/PackedScene.xml:80
+#: doc/classes/PackedScene.xml:87
msgid ""
"If passed to [method instance], provides local scene resources to the local "
"scene.\n"
"[b]Note:[/b] Only available in editor builds."
msgstr ""
-#: doc/classes/PackedScene.xml:84
+#: doc/classes/PackedScene.xml:91
msgid ""
"If passed to [method instance], provides local scene resources to the local "
"scene. Only the main scene should receive the main edit state.\n"
@@ -34160,11 +34797,11 @@ msgstr ""
msgid "Appends a [PackedStringArray] at the end of this array."
msgstr ""
-#: doc/classes/PackedStringArray.xml:71
+#: doc/classes/PackedStringArray.xml:80
msgid "Appends a string element at end of the array."
msgstr ""
-#: doc/classes/PackedStringArray.xml:100
+#: doc/classes/PackedStringArray.xml:109
msgid "Changes the [String] at the given index."
msgstr ""
@@ -34189,11 +34826,11 @@ msgstr ""
msgid "Appends a [PackedVector2Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedVector2Array.xml:71
+#: doc/classes/PackedVector2Array.xml:80
msgid "Inserts a [Vector2] at the end."
msgstr ""
-#: doc/classes/PackedVector2Array.xml:100
+#: doc/classes/PackedVector2Array.xml:109
msgid "Changes the [Vector2] at the given index."
msgstr ""
@@ -34218,11 +34855,11 @@ msgstr ""
msgid "Appends a [PackedVector3Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedVector3Array.xml:71
+#: doc/classes/PackedVector3Array.xml:80
msgid "Inserts a [Vector3] at the end."
msgstr ""
-#: doc/classes/PackedVector3Array.xml:100
+#: doc/classes/PackedVector3Array.xml:109
msgid "Changes the [Vector3] at the given index."
msgstr ""
@@ -35113,13 +35750,55 @@ msgid ""
"as the values displayed in the [b]Monitor[/b] tab in the editor's "
"[b]Debugger[/b] panel. By using the [method get_monitor] method of this "
"class, you can access this data from your code.\n"
+"You can add custom monitors using the [method add_custom_monitor] method. "
+"Custom monitors are available in [b]Monitor[/b] tab in the editor's "
+"[b]Debugger[/b] panel together with built-in monitors.\n"
"[b]Note:[/b] A few of these monitors are only available in debug mode and "
"will always return 0 when used in a release build.\n"
"[b]Note:[/b] Many of these monitors are not updated in real-time, so there "
-"may be a short delay between changes."
+"may be a short delay between changes.\n"
+"[b]Note:[/b] Custom monitors do not support negative values. Negative values "
+"are clamped to 0."
+msgstr ""
+
+#: doc/classes/Performance.xml:26
+msgid ""
+"Adds a custom monitor with name same as id. You can specify the category of "
+"monitor using '/' in id. If there are more than one '/' then default "
+"category is used. Default category is \"Custom\".\n"
+"[codeblock]\n"
+"Performance.add_custom_monitor(\"MyCategory/MyMonitor\", some_callable) # "
+"Adds monitor with name \"MyName\" to category \"MyCategory\"\n"
+"Performance.add_custom_monitor(\"MyMonitor\", some_callable) # Adds monitor "
+"with name \"MyName\" to category \"Custom\"\n"
+"# Note: \"MyCategory/MyMonitor\" and \"MyMonitor\" have same name but "
+"different ids so above code is valid\n"
+"Performance.add_custom_monitor(\"Custom/MyMonitor\", some_callable) # Adds "
+"monitor with name \"MyName\" to category \"Custom\"\n"
+"# Note: \"MyMonitor\" and \"Custom/MyMonitor\" have same name and same "
+"category but different ids so above code is valid\n"
+"Performance.add_custom_monitor(\"MyCategoryOne/MyCategoryTwo/MyMonitor\", "
+"some_callable) # Adds monitor with name \"MyCategoryOne/MyCategoryTwo/"
+"MyMonitor\" to category \"Custom\"\n"
+"[/codeblock]\n"
+"The debugger calls the callable to get the value of custom monitor. The "
+"callable must return a number.\n"
+"Callables are called with arguments supplied in argument array.\n"
+"[b]Note:[/b] It throws an error if given id is already present."
+msgstr ""
+
+#: doc/classes/Performance.xml:46
+msgid ""
+"Returns the value of custom monitor with given id. The callable is called to "
+"get the value of custom monitor.\n"
+"[b]Note:[/b] It throws an error if the given id is absent."
+msgstr ""
+
+#: doc/classes/Performance.xml:54
+msgid "Returns the names of active custom monitors in an array."
msgstr ""
-#: doc/classes/Performance.xml:20
+#: doc/classes/Performance.xml:63
msgid ""
"Returns the value of one of the available monitors. You should provide one "
"of the [enum Monitor] constants as the argument, like this:\n"
@@ -35129,123 +35808,139 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Performance.xml:29
+#: doc/classes/Performance.xml:73
+msgid "Returns the last tick in which custom monitor was added/removed."
+msgstr ""
+
+#: doc/classes/Performance.xml:82
+msgid ""
+"Returns true if custom monitor with the given id is present otherwise "
+"returns false."
+msgstr ""
+
+#: doc/classes/Performance.xml:91
+msgid ""
+"Removes the custom monitor with given id.\n"
+"[b]Note:[/b] It throws an error if the given id is already absent."
+msgstr ""
+
+#: doc/classes/Performance.xml:98
msgid "Number of frames per second."
msgstr ""
-#: doc/classes/Performance.xml:32
+#: doc/classes/Performance.xml:101
msgid "Time it took to complete one frame, in seconds."
msgstr ""
-#: doc/classes/Performance.xml:35
+#: doc/classes/Performance.xml:104
msgid "Time it took to complete one physics frame, in seconds."
msgstr ""
-#: doc/classes/Performance.xml:38
+#: doc/classes/Performance.xml:107
msgid ""
"Static memory currently used, in bytes. Not available in release builds."
msgstr ""
-#: doc/classes/Performance.xml:41
+#: doc/classes/Performance.xml:110
msgid "Available static memory. Not available in release builds."
msgstr ""
-#: doc/classes/Performance.xml:44
+#: doc/classes/Performance.xml:113
msgid ""
"Largest amount of memory the message queue buffer has used, in bytes. The "
"message queue is used for deferred functions calls and notifications."
msgstr ""
-#: doc/classes/Performance.xml:47
+#: doc/classes/Performance.xml:116
msgid "Number of objects currently instanced (including nodes)."
msgstr ""
-#: doc/classes/Performance.xml:50
+#: doc/classes/Performance.xml:119
msgid "Number of resources currently used."
msgstr ""
-#: doc/classes/Performance.xml:53
+#: doc/classes/Performance.xml:122
msgid ""
"Number of nodes currently instanced in the scene tree. This also includes "
"the root node."
msgstr ""
-#: doc/classes/Performance.xml:56
+#: doc/classes/Performance.xml:125
msgid ""
"Number of orphan nodes, i.e. nodes which are not parented to a node of the "
"scene tree."
msgstr ""
-#: doc/classes/Performance.xml:59
+#: doc/classes/Performance.xml:128
msgid "3D objects drawn per frame."
msgstr ""
-#: doc/classes/Performance.xml:62
+#: doc/classes/Performance.xml:131
msgid "Vertices drawn per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:65
+#: doc/classes/Performance.xml:134
msgid "Material changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:68
+#: doc/classes/Performance.xml:137
msgid "Shader changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:71
+#: doc/classes/Performance.xml:140
msgid "Render surface changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:74
+#: doc/classes/Performance.xml:143
msgid "Draw calls per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:77 doc/classes/RenderingServer.xml:3805
+#: doc/classes/Performance.xml:146 doc/classes/RenderingServer.xml:3816
msgid ""
"The amount of video memory used, i.e. texture and vertex memory combined."
msgstr ""
-#: doc/classes/Performance.xml:80 doc/classes/RenderingServer.xml:3808
+#: doc/classes/Performance.xml:149 doc/classes/RenderingServer.xml:3819
msgid "The amount of texture memory used."
msgstr ""
-#: doc/classes/Performance.xml:83 doc/classes/RenderingServer.xml:3811
+#: doc/classes/Performance.xml:152 doc/classes/RenderingServer.xml:3822
msgid "The amount of vertex memory used."
msgstr ""
-#: doc/classes/Performance.xml:86 doc/classes/RenderingServer.xml:3802
+#: doc/classes/Performance.xml:155 doc/classes/RenderingServer.xml:3813
msgid "Unimplemented in the GLES2 rendering backend, always returns 0."
msgstr ""
-#: doc/classes/Performance.xml:89
+#: doc/classes/Performance.xml:158
msgid "Number of active [RigidBody2D] nodes in the game."
msgstr ""
-#: doc/classes/Performance.xml:92
+#: doc/classes/Performance.xml:161
msgid "Number of collision pairs in the 2D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:95
+#: doc/classes/Performance.xml:164
msgid "Number of islands in the 2D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:98
+#: doc/classes/Performance.xml:167
msgid "Number of active [RigidBody3D] and [VehicleBody3D] nodes in the game."
msgstr ""
-#: doc/classes/Performance.xml:101
+#: doc/classes/Performance.xml:170
msgid "Number of collision pairs in the 3D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:104
+#: doc/classes/Performance.xml:173
msgid "Number of islands in the 3D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:107
+#: doc/classes/Performance.xml:176
msgid "Output latency of the [AudioServer]."
msgstr ""
-#: doc/classes/Performance.xml:110
+#: doc/classes/Performance.xml:179
msgid "Represents the size of the [enum Monitor] enum."
msgstr ""
@@ -35269,27 +35964,27 @@ msgstr ""
msgid "Damps the body's rotation if greater than [code]0[/code]."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:70 doc/classes/RigidBody3D.xml:132
+#: doc/classes/PhysicalBone3D.xml:70 doc/classes/RigidBody3D.xml:139
msgid "Lock the body's rotation in the X axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:73 doc/classes/RigidBody3D.xml:135
+#: doc/classes/PhysicalBone3D.xml:73 doc/classes/RigidBody3D.xml:142
msgid "Lock the body's rotation in the Y axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:76 doc/classes/RigidBody3D.xml:138
+#: doc/classes/PhysicalBone3D.xml:76 doc/classes/RigidBody3D.xml:145
msgid "Lock the body's rotation in the Z axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:79 doc/classes/RigidBody3D.xml:141
+#: doc/classes/PhysicalBone3D.xml:79 doc/classes/RigidBody3D.xml:148
msgid "Lock the body's movement in the X axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:82 doc/classes/RigidBody3D.xml:144
+#: doc/classes/PhysicalBone3D.xml:82 doc/classes/RigidBody3D.xml:151
msgid "Lock the body's movement in the Y axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:85 doc/classes/RigidBody3D.xml:147
+#: doc/classes/PhysicalBone3D.xml:85 doc/classes/RigidBody3D.xml:154
msgid "Lock the body's movement in the Z axis."
msgstr ""
@@ -35344,12 +36039,12 @@ msgstr ""
msgid "Damps the body's movement if greater than [code]0[/code]."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:118 doc/classes/RigidBody2D.xml:158
-#: doc/classes/RigidBody3D.xml:175
+#: doc/classes/PhysicalBone3D.xml:118 doc/classes/RigidBody2D.xml:159
+#: doc/classes/RigidBody3D.xml:183
msgid "The body's mass."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:121 doc/classes/RigidBody3D.xml:188
+#: doc/classes/PhysicalBone3D.xml:121 doc/classes/RigidBody3D.xml:196
msgid ""
"The body's weight based on its mass and the global 3D gravity. Global values "
"are set in [b]Project > Project Settings > Physics > 3d[/b]."
@@ -35656,7 +36351,7 @@ msgid "The inverse of the mass of the body."
msgstr ""
#: doc/classes/PhysicsDirectBodyState2D.xml:195
-#: doc/classes/PhysicsDirectBodyState3D.xml:198 doc/classes/RigidBody2D.xml:155
+#: doc/classes/PhysicsDirectBodyState3D.xml:198 doc/classes/RigidBody2D.xml:156
msgid "The body's linear velocity."
msgstr ""
@@ -36209,7 +36904,7 @@ msgid ""
msgstr ""
#: doc/classes/PhysicsServer2D.xml:620 doc/classes/PhysicsServer3D.xml:637
-#: doc/classes/RigidBody3D.xml:120
+#: doc/classes/RigidBody3D.xml:127
msgid ""
"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."
@@ -37274,47 +37969,64 @@ msgid ""
"collision queries. See also [PhysicsShapeQueryResult2D]."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:18
-msgid ""
-"Sets the [Shape2D] that will be used for collision/intersection queries."
-msgstr ""
-
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:24
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:15
msgid "If [code]true[/code], the query will take [Area2D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:18
msgid ""
"If [code]true[/code], the query will take [PhysicsBody2D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:30
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:30
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:21
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:21
msgid "The physics layer(s) the query will take into account (as a bitmask)."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:33
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:33
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:24
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:24
msgid ""
"The list of objects or object [RID]s that will be excluded from collisions."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:36
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:36 doc/classes/Shape3D.xml:16
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:27 doc/classes/Shape3D.xml:16
msgid "The collision margin for the shape."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:39
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:30
msgid "The motion of the shape being queried for."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:42
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:39
-msgid "The queried shape's [RID]. See also [method set_shape]."
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:33
+msgid ""
+"The [Shape2D] that will be used for collision/intersection queries. This "
+"stores the actual reference which avoids the shape to be released while "
+"being used for queries, so always prefer using this over [member shape_rid]."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:36
+msgid ""
+"The queried shape's [RID] that will be used for collision/intersection "
+"queries. Use this over [member shape] if you want to optimize for "
+"performance using the Servers API:\n"
+"[codeblock]\n"
+"var shape_rid = PhysicsServer2D.circle_shape_create()\n"
+"var radius = 64\n"
+"PhysicsServer2D.shape_set_data(shape_rid, radius)\n"
+"\n"
+"var params = PhysicsShapeQueryParameters2D.new()\n"
+"params.shape_rid = shape_rid\n"
+"\n"
+"# Execute physics queries here...\n"
+"\n"
+"# Release the shape when done with physics queries.\n"
+"PhysicsServer2D.free_rid(shape_rid)\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:45
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:42
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:52
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:49
msgid "The queried shape's transform matrix."
msgstr ""
@@ -37328,18 +38040,40 @@ msgid ""
"collision queries. See also [PhysicsShapeQueryResult3D]."
msgstr ""
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:15
+msgid "If [code]true[/code], the query will take [Area3D]s into account."
+msgstr ""
+
#: doc/classes/PhysicsShapeQueryParameters3D.xml:18
msgid ""
-"Sets the [Shape3D] that will be used for collision/intersection queries."
+"If [code]true[/code], the query will take [PhysicsBody3D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:24
-msgid "If [code]true[/code], the query will take [Area3D]s into account."
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:30
+msgid ""
+"The [Shape3D] that will be used for collision/intersection queries. This "
+"stores the actual reference which avoids the shape to be released while "
+"being used for queries, so always prefer using this over [member shape_rid]."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:33
msgid ""
-"If [code]true[/code], the query will take [PhysicsBody3D]s into account."
+"The queried shape's [RID] that will be used for collision/intersection "
+"queries. Use this over [member shape] if you want to optimize for "
+"performance using the Servers API:\n"
+"[codeblock]\n"
+"var shape_rid = PhysicsServer3D.shape_create(PhysicsServer3D.SHAPE_SPHERE)\n"
+"var radius = 2.0\n"
+"PhysicsServer3D.shape_set_data(shape_rid, radius)\n"
+"\n"
+"var params = PhysicsShapeQueryParameters3D.new()\n"
+"params.shape_rid = shape_rid\n"
+"\n"
+"# Execute physics queries here...\n"
+"\n"
+"# Release the shape when done with physics queries.\n"
+"PhysicsServer3D.free_rid(shape_rid)\n"
+"[/codeblock]"
msgstr ""
#: doc/classes/PhysicsShapeQueryResult2D.xml:4
@@ -37480,92 +38214,94 @@ msgid ""
"code]."
msgstr ""
-#: doc/classes/Plane.xml:72
-msgid "Returns a point on the plane."
-msgstr ""
-
-#: doc/classes/Plane.xml:83
+#: doc/classes/Plane.xml:76
msgid ""
-"Returns [code]true[/code] if [code]point[/code] is inside the plane (by a "
-"very minimum [code]epsilon[/code] threshold)."
+"Returns [code]true[/code] if [code]point[/code] is inside the plane. "
+"Comparison uses a custom minimum [code]epsilon[/code] threshold."
msgstr ""
-#: doc/classes/Plane.xml:94
+#: doc/classes/Plane.xml:87
msgid ""
"Returns the intersection point of the three planes [code]b[/code], [code]c[/"
"code] and this plane. If no intersection is found, [code]null[/code] is "
"returned."
msgstr ""
-#: doc/classes/Plane.xml:105
+#: doc/classes/Plane.xml:98
msgid ""
"Returns the intersection point of a ray consisting of the position "
"[code]from[/code] and the direction normal [code]dir[/code] with this plane. "
"If no intersection is found, [code]null[/code] is returned."
msgstr ""
-#: doc/classes/Plane.xml:116
+#: doc/classes/Plane.xml:109
msgid ""
"Returns the intersection point of a segment from position [code]begin[/code] "
"to position [code]end[/code] with this plane. If no intersection is found, "
"[code]null[/code] is returned."
msgstr ""
-#: doc/classes/Plane.xml:125
+#: doc/classes/Plane.xml:118
msgid ""
"Returns [code]true[/code] if this plane and [code]plane[/code] are "
"approximately equal, by running [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/Plane.xml:134
+#: doc/classes/Plane.xml:127
msgid ""
"Returns [code]true[/code] if [code]point[/code] is located above the plane."
msgstr ""
-#: doc/classes/Plane.xml:141
+#: doc/classes/Plane.xml:134
msgid "Returns a copy of the plane, normalized."
msgstr ""
-#: doc/classes/Plane.xml:150
+#: doc/classes/Plane.xml:143
msgid ""
-"Returns the orthogonal projection of point [code]p[/code] into a point in "
-"the plane."
+"Returns the orthogonal projection of [code]point[/code] into a point in the "
+"plane."
msgstr ""
-#: doc/classes/Plane.xml:156
+#: doc/classes/Plane.xml:149
msgid ""
-"Distance from the origin to the plane, in the direction of [member normal]."
+"The distance from the origin to the plane, in the direction of [member "
+"normal]. This value is typically non-negative.\n"
+"In the scalar equation of the plane [code]ax + by + cz = d[/code], this is "
+"[code]d[/code], while the [code](a, b, c)[/code] coordinates are represented "
+"by the [member normal] property."
msgstr ""
-#: doc/classes/Plane.xml:159
+#: doc/classes/Plane.xml:153
msgid ""
-"The normal of the plane. \"Over\" or \"Above\" the plane is considered the "
-"side of the plane towards where the normal is pointing."
+"The normal of the plane, which must be normalized.\n"
+"In the scalar equation of the plane [code]ax + by + cz = d[/code], this is "
+"the vector [code](a, b, c)[/code], where [code]d[/code] is the [member d] "
+"property."
msgstr ""
-#: doc/classes/Plane.xml:162
-msgid "The [member normal]'s X component."
+#: doc/classes/Plane.xml:157
+msgid "The X component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:165
-msgid "The [member normal]'s Y component."
+#: doc/classes/Plane.xml:160
+msgid "The Y component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:168
-msgid "The [member normal]'s Z component."
+#: doc/classes/Plane.xml:163
+msgid "The Z component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:173
-msgid "A plane that extends in the Y and Z axes."
+#: doc/classes/Plane.xml:168
+msgid "A plane that extends in the Y and Z axes (normal vector points +X)."
msgstr ""
-#: doc/classes/Plane.xml:176
-msgid "A plane that extends in the X and Z axes."
+#: doc/classes/Plane.xml:171
+msgid "A plane that extends in the X and Z axes (normal vector points +Y)."
msgstr ""
-#: doc/classes/Plane.xml:179
-msgid "A plane that extends in the X and Y axes."
+#: doc/classes/Plane.xml:174
+msgid "A plane that extends in the X and Y axes (normal vector points +Z)."
msgstr ""
#: doc/classes/PlaneMesh.xml:4
@@ -38276,18 +39012,25 @@ msgstr ""
#: doc/classes/PrimitiveMesh.xml:16
msgid ""
-"Returns mesh arrays used to constitute surface of [Mesh]. Mesh arrays can be "
-"used with [ArrayMesh] to create new surfaces."
+"Returns mesh arrays used to constitute surface of [Mesh]. The result can be "
+"passed to [method ArrayMesh.add_surface_from_arrays] to create a new "
+"surface. For example:\n"
+"[codeblock]\n"
+"var c := CylinderMesh.new()\n"
+"var arr_mesh := ArrayMesh.new()\n"
+"arr_mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLES, c."
+"get_mesh_arrays())\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:22
+#: doc/classes/PrimitiveMesh.xml:27
msgid ""
"Overrides the [AABB] with one defined by user for use with frustum culling. "
"Especially useful to avoid unnexpected culling when using a shader to "
"offset vertices."
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:25
+#: doc/classes/PrimitiveMesh.xml:30
msgid ""
"If set, the order of the vertices in each triangle are reversed resulting in "
"the backside of the mesh being drawn.\n"
@@ -38295,7 +39038,7 @@ msgid ""
"[member BaseMaterial3D.cull_mode]."
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:29
+#: doc/classes/PrimitiveMesh.xml:34
msgid "The current [Material] of the primitive mesh."
msgstr ""
@@ -38726,11 +39469,17 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:260
msgid ""
+"Safer override for [member audio/output_latency] in the Web platform, to "
+"avoid audio issues especially on mobile devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:263
+msgid ""
"Setting to hardcode audio delay when playing video. Best to leave this "
"untouched unless you know what you are doing."
msgstr ""
-#: doc/classes/ProjectSettings.xml:263
+#: doc/classes/ProjectSettings.xml:266
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -38740,7 +39489,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:269
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -38750,27 +39499,27 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:269
+#: doc/classes/ProjectSettings.xml:272
msgid ""
"The default compression level for Zstandard. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
"speed. Decompression speed is mostly unaffected by the compression level."
msgstr ""
-#: doc/classes/ProjectSettings.xml:272
+#: doc/classes/ProjectSettings.xml:275
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:278
msgid ""
"Largest size limit (in power of 2) allowed when compressing using long-"
"distance matching with Zstandard. Higher values can result in better "
"compression, but will require more memory when compressing and decompressing."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:281
msgid ""
"If [code]true[/code], displays getters and setters in autocompletion results "
"in the script editor. This setting is meant to be used when porting old "
@@ -38778,74 +39527,55 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:281
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:284
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:287
+#: doc/classes/ProjectSettings.xml:294
msgid ""
"If [code]true[/code], enables specific GDScript warnings (see [code]debug/"
"gdscript/warnings/*[/code] settings). If [code]false[/code], disables all "
"GDScript warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
-msgid ""
-"If [code]true[/code], enables warnings when a function is declared with the "
-"same name as a constant."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:296
-msgid ""
-"If [code]true[/code], enables warnings when a function is declared with the "
-"same name as a variable. This will turn into an error in a future version "
-"when first-class functions become supported in GDScript."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:299
-msgid ""
-"If [code]true[/code], enables warnings when a function assigned to a "
-"variable may yield and return a function state instead of a value."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:302
+#: doc/classes/ProjectSettings.xml:300
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:303
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when dividing an integer by another "
"integer (the decimal part will be discarded)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when passing a floating-point value "
"to a function that expects an integer (it will be converted and lose "
"precision)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:314
+#: doc/classes/ProjectSettings.xml:312
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
@@ -38866,102 +39596,85 @@ msgid ""
"member variable)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:323
+#: doc/classes/ProjectSettings.xml:325
msgid ""
"If [code]true[/code], enables warnings when calling an expression that has "
"no effect on the surrounding code, such as writing [code]2 + 2[/code] as a "
"statement."
msgstr ""
-#: doc/classes/ProjectSettings.xml:326
+#: doc/classes/ProjectSettings.xml:328
msgid ""
"If [code]true[/code], enables warnings when calling a ternary expression "
"that has no effect on the surrounding code, such as writing [code]42 if "
"active else 0[/code] as a statement."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:331
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:334
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:335
+#: doc/classes/ProjectSettings.xml:337
msgid ""
"If [code]true[/code], enables warnings when assigning a variable using an "
"assignment operator like [code]+=[/code] if the variable wasn't previously "
"assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:338
+#: doc/classes/ProjectSettings.xml:340
msgid ""
"If [code]true[/code], enables warnings when unreachable code is detected "
"(such as after a [code]return[/code] statement that will always be executed)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:345
msgid ""
"If [code]true[/code], enables warnings when using an expression whose type "
"may not be compatible with the function parameter expected."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:348
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:347
+#: doc/classes/ProjectSettings.xml:351
msgid ""
"If [code]true[/code], enables warnings when calling a method whose presence "
"is not guaranteed at compile-time in the class."
msgstr ""
-#: doc/classes/ProjectSettings.xml:350
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], enables warnings when accessing a property whose "
"presence is not guaranteed at compile-time in the class."
msgstr ""
-#: doc/classes/ProjectSettings.xml:353
-msgid ""
-"If [code]true[/code], enables warnings when a function parameter is unused."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:356
-msgid ""
-"If [code]true[/code], enables warnings when a member variable is unused."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:363
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:362
+#: doc/classes/ProjectSettings.xml:366
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:365
-msgid ""
-"If [code]true[/code], enables warnings when a variable is declared with the "
-"same name as a function. This will turn into an error in a future version "
-"when first-class functions become supported in GDScript."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:368
+#: doc/classes/ProjectSettings.xml:369
msgid ""
"If [code]true[/code], enables warnings when assigning the result of a "
"function that returns [code]void[/code] to a variable."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:374
+#: doc/classes/ProjectSettings.xml:375
msgid ""
"Maximum number of frames per second allowed. The actual number of frames per "
"second may still be below this value if the game is lagging.\n"
@@ -38972,143 +39685,143 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:379
+#: doc/classes/ProjectSettings.xml:380
msgid "Maximum call stack allowed for debugging GDScript."
msgstr ""
-#: doc/classes/ProjectSettings.xml:382
+#: doc/classes/ProjectSettings.xml:383
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:385
+#: doc/classes/ProjectSettings.xml:386
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:388
+#: doc/classes/ProjectSettings.xml:389
msgid ""
"Print more information to standard output when running. It displays "
"information such as memory leaks, which scenes and resources are being "
"loaded, etc."
msgstr ""
-#: doc/classes/ProjectSettings.xml:391
+#: doc/classes/ProjectSettings.xml:392
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:394
+#: doc/classes/ProjectSettings.xml:395
msgid ""
"Color of the contact points between collision shapes, visible when \"Visible "
"Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:397
+#: doc/classes/ProjectSettings.xml:398
msgid ""
"Maximum number of contact points between collision shapes to display when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:400
+#: doc/classes/ProjectSettings.xml:401
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
msgid "Hotspot for the custom mouse cursor image."
msgstr ""
-#: doc/classes/ProjectSettings.xml:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
msgid ""
"If [code]true[/code], allows HiDPI display on Windows and macOS. This "
"setting has no effect on desktop Linux, as DPI-awareness fallbacks are not "
"supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"If [code]true[/code], keeps the screen on (even in case of inactivity), so "
"the screensaver does not take over. Works on desktop and mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
msgid "Default orientation on mobile devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"If [code]true[/code], the home indicator is hidden automatically. This only "
"affects iOS devices without a physical home button."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid "Force the window to be always on top."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid "Force the window to be borderless."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Sets the window to full screen when it starts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid ""
"Sets the game's main viewport height. On desktop platforms, this is the "
"default window size. Stretch mode settings also use this as a reference when "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Allows the window to be resizable by default."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"Sets the game's main viewport width. On desktop platforms, this is the "
"default window size. Stretch mode settings also use this as a reference when "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:454
+#: doc/classes/ProjectSettings.xml:455
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:457
+#: doc/classes/ProjectSettings.xml:458
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -39117,7 +39830,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:460
+#: doc/classes/ProjectSettings.xml:461
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -39128,13 +39841,13 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:464
+#: doc/classes/ProjectSettings.xml:465
msgid ""
"Search path for project-specific script templates. Script templates will be "
"search both in the editor-specific path and in this project-specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:467
+#: doc/classes/ProjectSettings.xml:468
msgid ""
"Text-based file extensions to include in the script editor's \"Find in Files"
"\" feature. You can add e.g. [code]tscn[/code] if you wish to also parse "
@@ -39142,49 +39855,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:470
+#: doc/classes/ProjectSettings.xml:471
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:473
+#: doc/classes/ProjectSettings.xml:474
msgid ""
-"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
+"If [code]true[/code], swaps Cancel and OK buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:478
+#: doc/classes/ProjectSettings.xml:479
msgid ""
"Path to a custom [Theme] resource file to use for the project ([code]theme[/"
"code] or generic [code]tres[/code]/[code]res[/code] extension)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:484
+#: doc/classes/ProjectSettings.xml:485
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:487
+#: doc/classes/ProjectSettings.xml:488
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:490
+#: doc/classes/ProjectSettings.xml:491
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:493
+#: doc/classes/ProjectSettings.xml:494
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:496
+#: doc/classes/ProjectSettings.xml:497
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -39193,7 +39906,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"Default [InputEventAction] to discard a modal or pending input.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39201,7 +39914,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:504
+#: doc/classes/ProjectSettings.xml:505
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39209,7 +39922,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:508
+#: doc/classes/ProjectSettings.xml:509
msgid ""
"Default [InputEventAction] to go to the end position of a [Control] (e.g. "
"last item in an [ItemList] or a [Tree]), matching the behavior of [constant "
@@ -39219,7 +39932,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:512
+#: doc/classes/ProjectSettings.xml:513
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -39228,7 +39941,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:516
+#: doc/classes/ProjectSettings.xml:517
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -39237,7 +39950,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:520
+#: doc/classes/ProjectSettings.xml:521
msgid ""
"Default [InputEventAction] to go to the start position of a [Control] (e.g. "
"first item in an [ItemList] or a [Tree]), matching the behavior of [constant "
@@ -39247,7 +39960,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39255,7 +39968,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:528
+#: doc/classes/ProjectSettings.xml:529
msgid ""
"Default [InputEventAction] to go down a page in a [Control] (e.g. in an "
"[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEDOWN] on "
@@ -39265,7 +39978,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Default [InputEventAction] to go up a page in a [Control] (e.g. in an "
"[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEUP] on "
@@ -39275,7 +39988,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:536
+#: doc/classes/ProjectSettings.xml:537
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39283,7 +39996,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:540
+#: doc/classes/ProjectSettings.xml:541
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -39292,7 +40005,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39300,371 +40013,371 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:548
+#: doc/classes/ProjectSettings.xml:549
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:554
+#: doc/classes/ProjectSettings.xml:555
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:557
+#: doc/classes/ProjectSettings.xml:558
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:560
+#: doc/classes/ProjectSettings.xml:561
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:566
+#: doc/classes/ProjectSettings.xml:567
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:569
+#: doc/classes/ProjectSettings.xml:570
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:572
+#: doc/classes/ProjectSettings.xml:573
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:578
+#: doc/classes/ProjectSettings.xml:579
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:581
+#: doc/classes/ProjectSettings.xml:582
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:584
+#: doc/classes/ProjectSettings.xml:585
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:590
+#: doc/classes/ProjectSettings.xml:591
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:593
+#: doc/classes/ProjectSettings.xml:594
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:596
+#: doc/classes/ProjectSettings.xml:597
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:602
+#: doc/classes/ProjectSettings.xml:603
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid ""
"The locale to fall back to if a translation isn't available in a given "
"language. If left empty, [code]en[/code] (English) will be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "If [code]true[/code], logs all output to files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:806
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:809
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:812
msgid ""
"Godot uses a message queue to defer some function calls. If you run out of "
"space on it (you will see an error), you can increase the size here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:815
msgid ""
"This is used by servers when used in multi-threading mode (servers and "
"visual). RIDs are preallocated to avoid stalling the server requesting them "
@@ -39672,56 +40385,56 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:829
+#: doc/classes/ProjectSettings.xml:832
msgid ""
"Maximum amount of characters allowed to send as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:832
+#: doc/classes/ProjectSettings.xml:835
msgid ""
"Maximum number of errors allowed to be sent from the debugger. Over this "
"value, content is dropped. This helps not to stall the debugger connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:835
+#: doc/classes/ProjectSettings.xml:838
msgid ""
"Maximum amount of messages in the debugger queue. Over this value, content "
"is dropped. This helps to limit the debugger memory usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:838
+#: doc/classes/ProjectSettings.xml:841
msgid ""
"Maximum number of warnings allowed to be sent from the debugger. Over this "
"value, content is dropped. This helps not to stall the debugger connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:841
+#: doc/classes/ProjectSettings.xml:844
msgid ""
"Default size of packet peer stream for deserializing Godot data. Over this "
"size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:844
+#: doc/classes/ProjectSettings.xml:847
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:847
+#: doc/classes/ProjectSettings.xml:850
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:850
+#: doc/classes/ProjectSettings.xml:853
msgid ""
"Amount of read ahead used by remote filesystem. Higher values decrease the "
"effects of latency at the cost of higher bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:853
+#: doc/classes/ProjectSettings.xml:856
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:856
+#: doc/classes/ProjectSettings.xml:859
msgid ""
"The CA certificates bundle to use for SSL connections. If this is set to a "
"non-empty value, this will [i]override[/i] Godot's default [url=https://"
@@ -39731,31 +40444,31 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:863
msgid ""
"When creating node names automatically, set the type of casing in this "
"project. This is mostly an editor setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:866
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:869
msgid "Size of the hash table used for the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:872
msgid "Cell size used for the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:875
msgid "The default angular damp in 2D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:878
msgid ""
"The default gravity strength in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39767,7 +40480,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:883
+#: doc/classes/ProjectSettings.xml:886
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39779,38 +40492,38 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:891
+#: doc/classes/ProjectSettings.xml:894
msgid "The default linear damp in 2D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:894
+#: doc/classes/ProjectSettings.xml:897
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:897
+#: doc/classes/ProjectSettings.xml:900
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics2D\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:901
+#: doc/classes/ProjectSettings.xml:904
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant PhysicsServer2D."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:904
+#: doc/classes/ProjectSettings.xml:907
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant PhysicsServer2D."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:907
+#: doc/classes/ProjectSettings.xml:910
msgid ""
"Sets whether physics is run on the main thread or a separate one. Running "
"the server on a thread increases performance, but restricts API access to "
@@ -39820,23 +40533,23 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:914
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant PhysicsServer2D.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:917
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody3D] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:920
msgid "The default angular damp in 3D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:923
msgid ""
"The default gravity strength in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39848,7 +40561,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:928
+#: doc/classes/ProjectSettings.xml:931
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39860,11 +40573,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:936
+#: doc/classes/ProjectSettings.xml:939
msgid "The default linear damp in 3D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:939
+#: doc/classes/ProjectSettings.xml:942
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -39872,11 +40585,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:943
+#: doc/classes/ProjectSettings.xml:946
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:949
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -39885,7 +40598,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:950
+#: doc/classes/ProjectSettings.xml:953
msgid ""
"Fix to improve physics jitter, specially on monitors where refresh rate is "
"different than the physics FPS.\n"
@@ -39893,7 +40606,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:954
+#: doc/classes/ProjectSettings.xml:957
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -39901,7 +40614,7 @@ msgid ""
"programmatically, use [method RenderingServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:957
+#: doc/classes/ProjectSettings.xml:960
msgid ""
"[Environment] that will be used as a fallback environment in case a scene "
"does not specify its own environment. The default environment is loaded in "
@@ -39911,14 +40624,14 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:986
+#: doc/classes/ProjectSettings.xml:989
msgid ""
"Max amount of elements renderable in a frame. If more than this are visible "
"per frame, they will be dropped. Keep in mind elements refer to mesh "
"surfaces and not meshes themselves."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:994
msgid ""
"Some NVIDIA GPU drivers have a bug which produces flickering issues for the "
"[code]draw_rect[/code] method, especially as used in [TileMap]. Refer to "
@@ -39930,73 +40643,73 @@ msgid ""
"using the Vulkan backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:995
+#: doc/classes/ProjectSettings.xml:998
msgid ""
"If [code]true[/code], forces snapping of polygons to pixels in 2D rendering. "
"May help in some pixel art styles."
msgstr ""
-#: doc/classes/ProjectSettings.xml:998
+#: doc/classes/ProjectSettings.xml:1001
msgid ""
"Sets the quality of the depth of field effect. Higher quality takes more "
"samples, which is slower but looks smoother."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1001
+#: doc/classes/ProjectSettings.xml:1004
msgid ""
"Sets the depth of field shape. Can be Box, Hexagon, or Circle. Box is the "
"fastest. Circle is the most realistic, but also the most expensive to "
"compute."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1004
+#: doc/classes/ProjectSettings.xml:1007
msgid ""
"If [code]true[/code], jitters DOF samples to make effect slightly blurrier "
"and hide lines created from low sample rates. This can result in a slightly "
"grainy appearance when used with a low number of samples."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1010
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1010
+#: doc/classes/ProjectSettings.xml:1013
msgid ""
"If [code]true[/code], performs a previous depth pass before rendering "
"materials. This increases performance in scenes with high overdraw, when "
"complex materials and lighting are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1016
msgid ""
"The directional shadow's size in pixels. Higher values will result in "
"sharper shadows, at the cost of performance. The value will be rounded up to "
"the nearest power of 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1016
+#: doc/classes/ProjectSettings.xml:1019
msgid ""
"Lower-end override for [member rendering/quality/directional_shadow/size] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1019
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"Quality setting for shadows cast by [DirectionalLight3D]s. Higher quality "
"settings use more samples when reading from shadow maps and are thus slower. "
"Low quality settings may result in shadows looking grainy."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1022
+#: doc/classes/ProjectSettings.xml:1025
msgid ""
"Lower-end override for [member rendering/quality/directional_shadow/"
"soft_shadow_quality] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1028
msgid ""
"The video driver to use (\"GLES2\" or \"Vulkan\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -40006,32 +40719,32 @@ msgid ""
"get_current_video_driver[/code] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1031
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"If [code]true[/code], take additional samples when rendering objects "
"affected by a [GIProbe] to reduce artifacts from only sampling in one "
"direction."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1034
+#: doc/classes/ProjectSettings.xml:1037
msgid ""
"Sets the number of cone samples taken when rendering objects affected by "
"[GIProbe]s."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1037
+#: doc/classes/ProjectSettings.xml:1040
msgid ""
"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."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1040
+#: doc/classes/ProjectSettings.xml:1043
msgid ""
"Lower-end override for [member rendering/quality/glow/upscale_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1043
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Strategy used for framebuffer allocation. The simpler it is, the less "
"resources it uses (but the less features it supports). If set to \"2D "
@@ -40041,41 +40754,41 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1046
+#: doc/classes/ProjectSettings.xml:1049
msgid ""
"Lower-end override for [member rendering/quality/intended_usage/"
"framebuffer_allocation] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1052
msgid ""
"Number of cubemaps to store in the reflection atlas. The number of "
"[ReflectionProbe]s in a scene will be limited by this amount. A higher "
"number requires more VRAM."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1052
+#: doc/classes/ProjectSettings.xml:1055
msgid ""
"Size of cubemap faces for [ReflectionProbe]s. A higher number requires more "
"VRAM and may make reflection probe updating slower."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1055
+#: doc/classes/ProjectSettings.xml:1058
msgid ""
"Lower-end override for [member rendering/quality/reflection_atlas/"
"reflection_size] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1058
+#: doc/classes/ProjectSettings.xml:1061
msgid ""
"Use a higher quality variant of the fast filtering algorithm. Significantly "
"slower than using default quality, but results in smoother reflections. "
"Should only be used when the scene is especially detailed."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1061
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Sets the number of samples to take when using importance sampling for [Sky]s "
"and [ReflectionProbe]s. A higher value will result in smoother, higher "
@@ -40085,19 +40798,19 @@ msgid ""
"environments with a high level of detail."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1064
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Lower-end override for [member rendering/quality/reflections/ggx_samples] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1067
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Limits the number of layers to use in radiance maps when using importance "
"sampling. A lower number will be slightly faster and take up less VRAM."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1070
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise and "
@@ -40106,14 +40819,14 @@ msgid ""
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1073
+#: doc/classes/ProjectSettings.xml:1076
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"texture_array_reflections] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1079
msgid ""
"Sets the number of MSAA samples to use (as a power of two). MSAA is used to "
"reduce aliasing around the edges of polygons. A higher MSAA value results in "
@@ -40121,7 +40834,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1080
+#: doc/classes/ProjectSettings.xml:1083
msgid ""
"Sets the screen-space antialiasing mode for the default screen [Viewport]. "
"Screen-space antialiasing works by selectively blurring edges in a post-"
@@ -40130,133 +40843,117 @@ msgid ""
"MSAA and will smooth out specular aliasing, but tend to make scenes appear "
"blurry.\n"
"Another way to combat specular aliasing is to enable [member rendering/"
-"quality/screen_filters/screen_space_roughness_limiter]."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:1084
-msgid ""
-"Enables the screen-space roughness limiter which increases material "
-"roughness in areas with a high normal frequency (i.e. when normals change a "
-"lot from pixel to pixel). This helps to reduce the amount of specular "
-"aliasing in a scene. Specular aliasing looks like random bright pixels that "
-"occur in reflections."
+"quality/screen_filters/screen_space_roughness_limiter_enabled]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1087
-msgid ""
-"Curves the amount of the roughness limited effect. A higher value limits the "
-"effect to very sharply curved surfaces, while a lower threshold extends the "
-"effect to smoother surfaces."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:1090
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"Sets the quality for rough screen-space reflections. Turning off will make "
"all screen space reflections sharp, while higher values make rough "
"reflections look better."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1093
+#: doc/classes/ProjectSettings.xml:1096
msgid ""
"If [code]true[/code], uses faster but lower-quality Blinn model to generate "
"blurred reflections instead of the GGX model."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1099
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_blinn_over_ggx] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1102
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1102
+#: doc/classes/ProjectSettings.xml:1105
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_lambert_over_burley] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1105
+#: doc/classes/ProjectSettings.xml:1108
msgid ""
"If [code]true[/code], forces vertex shading for all rendering. This can "
"increase performance a lot, but also reduces quality immensely. Can be used "
"to optimize performance on low-end mobile devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1108
+#: doc/classes/ProjectSettings.xml:1111
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_vertex_shading] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1111 doc/classes/ProjectSettings.xml:1114
-#: doc/classes/ProjectSettings.xml:1117 doc/classes/ProjectSettings.xml:1120
+#: doc/classes/ProjectSettings.xml:1114 doc/classes/ProjectSettings.xml:1117
+#: doc/classes/ProjectSettings.xml:1120 doc/classes/ProjectSettings.xml:1123
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1123
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1126
+#: doc/classes/ProjectSettings.xml:1129
msgid ""
"Lower-end override for [member rendering/quality/shadow_atlas/size] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1132
msgid ""
"Quality setting for shadows cast by [OmniLight3D]s and [SpotLight3D]s. "
"Higher quality settings use more samples when reading from shadow maps and "
"are thus slower. Low quality settings may result in shadows looking grainy."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1132
+#: doc/classes/ProjectSettings.xml:1135
msgid ""
"Lower-end override for [member rendering/quality/shadows/"
"soft_shadow_quality] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1135
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"If [code]true[/code], screen-space ambient occlusion will be rendered at "
"half size and then upscaled before being added to the scene. This is "
"significantly faster but may miss small details."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1138
+#: doc/classes/ProjectSettings.xml:1141
msgid ""
"Sets the quality of the screen-space ambient occlusion effect. Higher values "
"take more samples and so will result in better quality, at the cost of "
"performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1144
msgid ""
"Scales the depth over which the subsurface scattering effect is applied. A "
"high value may allow light to scatter into a part of the mesh or another "
"mesh that is close in screen space but far in depth."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1144
+#: doc/classes/ProjectSettings.xml:1147
msgid ""
"Sets the quality of the subsurface scattering effect. Higher values are "
"slower but look nicer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1147
+#: doc/classes/ProjectSettings.xml:1150
msgid ""
"Scales the distance over which samples are taken for subsurface scattering "
"effect. Changing this does not impact performance, but higher values will "
@@ -40264,7 +40961,7 @@ msgid ""
"out. A lower value results in a smaller spread of scattered light."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1150
+#: doc/classes/ProjectSettings.xml:1153
msgid ""
"Sets the maximum number of samples to take when using anisotropic filtering "
"on textures (as a power of two). A higher sample count will result in "
@@ -40273,7 +40970,7 @@ msgid ""
"materials where it is enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1153
+#: doc/classes/ProjectSettings.xml:1156
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -40282,49 +40979,49 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Thread model for rendering. Rendering on a thread can vastly improve "
"performance, but synchronizing to the main thread can cause a bit more "
"jitter."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
"only supported on desktop platforms, and only when using the Vulkan renderer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
"doesn't support alpha channels in textures."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
"compression algorithm is only supported when using the Vulkan renderer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1175
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
"compression algorithm is only supported on iOS."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
"supported on desktop platforms and consoles."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1182
+#: doc/classes/ProjectSettings.xml:1189
msgid "Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses."
msgstr ""
@@ -40354,13 +41051,14 @@ msgstr ""
#: doc/classes/Quat.xml:7
msgid ""
-"A unit quaternion used for representing 3D rotations.\n"
-"It is similar to [Basis], which implements matrix representation of "
-"rotations, and can be parametrized using both an axis-angle pair or Euler "
-"angles. But due to its compactness and the way it is stored in memory, "
-"certain operations (obtaining axis-angle and performing SLERP, in "
-"particular) are more efficient and robust against floating-point errors.\n"
-"Quaternions need to be (re)normalized."
+"A unit quaternion used for representing 3D rotations. Quaternions need to be "
+"normalized to be used for rotation.\n"
+"It is similar to Basis, which implements matrix representation of rotations, "
+"and can be parametrized using both an axis-angle pair or Euler angles. Basis "
+"stores rotation, scale, and shearing, while Quat only stores rotation.\n"
+"Due to its compactness and the way it is stored in memory, certain "
+"operations (obtaining axis-angle and performing SLERP, in particular) are "
+"more efficient and robust against floating-point errors."
msgstr ""
#: doc/classes/Quat.xml:12
@@ -40370,29 +41068,31 @@ msgid ""
msgstr ""
#: doc/classes/Quat.xml:21
-msgid "Returns the rotation matrix corresponding to the given quaternion."
+msgid "Constructs a quaternion from the given [Basis]."
msgstr ""
#: doc/classes/Quat.xml:30
msgid ""
-"Returns a quaternion that will perform a rotation specified by Euler angles "
-"(in the YXZ convention: first Z, then X, and Y last), given in the vector "
-"format as (X angle, Y angle, Z angle)."
+"Constructs a quaternion that will perform a rotation specified by Euler "
+"angles (in the YXZ convention: when decomposing, first Z, then X, and Y "
+"last), given in the vector format as (X angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:41
msgid ""
-"Returns a quaternion that will rotate around the given axis by the specified "
-"angle. The axis must be a normalized vector."
+"Constructs a quaternion that will rotate around the given axis by the "
+"specified angle. The axis must be a normalized vector."
msgstr ""
#: doc/classes/Quat.xml:56
-msgid "Returns a quaternion defined by these values."
+msgid "Constructs a quaternion defined by the given values."
msgstr ""
#: doc/classes/Quat.xml:71
msgid ""
-"Performs a cubic spherical-linear interpolation with another quaternion."
+"Performs a cubic spherical interpolation between quaternions [code]preA[/"
+"code], this vector, [code]b[/code], and [code]postB[/code], by the given "
+"amount [code]t[/code]."
msgstr ""
#: doc/classes/Quat.xml:80
@@ -40401,10 +41101,10 @@ msgstr ""
#: doc/classes/Quat.xml:87
msgid ""
-"Returns Euler angles (in the YXZ convention: first Z, then X, and Y last) "
-"corresponding to the rotation represented by the unit quaternion. Returned "
-"vector contains the rotation angles in the format (X angle, Y angle, Z "
-"angle)."
+"Returns Euler angles (in the YXZ convention: when decomposing, first Z, then "
+"X, and Y last) corresponding to the rotation represented by the unit "
+"quaternion. Returned vector contains the rotation angles in the format (X "
+"angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:94
@@ -40443,44 +41143,57 @@ msgstr ""
#: doc/classes/Quat.xml:151
msgid ""
"Sets the quaternion to a rotation specified by Euler angles (in the YXZ "
-"convention: first Z, then X, and Y last), given in the vector format as (X "
-"angle, Y angle, Z angle)."
+"convention: when decomposing, first Z, then X, and Y last), given in the "
+"vector format as (X angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:162
-msgid "Performs a spherical-linear interpolation with another quaternion."
+msgid ""
+"Returns the result of the spherical linear interpolation between this "
+"quaternion and [code]to[/code] by amount [code]weight[/code].\n"
+"[b]Note:[/b] Both quaternions must be normalized."
msgstr ""
-#: doc/classes/Quat.xml:173
+#: doc/classes/Quat.xml:174
msgid ""
-"Performs a spherical-linear interpolation with another quaterion without "
-"checking if the rotation path is not bigger than 90°."
+"Returns the result of the spherical linear interpolation between this "
+"quaternion and [code]to[/code] by amount [code]weight[/code], but without "
+"checking if the rotation path is not bigger than 90 degrees."
msgstr ""
-#: doc/classes/Quat.xml:182
-msgid "Transforms the vector [code]v[/code] by this quaternion."
+#: doc/classes/Quat.xml:183
+msgid "Returns a vector transformed (multiplied) by this quaternion."
msgstr ""
-#: doc/classes/Quat.xml:188
-msgid "W component of the quaternion."
+#: doc/classes/Quat.xml:189
+msgid ""
+"W component of the quaternion (real part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:191
-msgid "X component of the quaternion."
+#: doc/classes/Quat.xml:193
+msgid ""
+"X component of the quaternion (imaginary [code]i[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:194
-msgid "Y component of the quaternion."
+#: doc/classes/Quat.xml:197
+msgid ""
+"Y component of the quaternion (imaginary [code]j[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:197
-msgid "Z component of the quaternion."
+#: doc/classes/Quat.xml:201
+msgid ""
+"Z component of the quaternion (imaginary [code]k[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:202
+#: doc/classes/Quat.xml:207
msgid ""
-"The identity rotation. Equivalent to an identity matrix. If a vector is "
-"transformed by an identity quaternion, it will not change."
+"The identity quaternion, representing no rotation. Equivalent to an identity "
+"[Basis] matrix. If a vector is transformed by an identity quaternion, it "
+"will not change."
msgstr ""
#: doc/classes/RandomNumberGenerator.xml:4
@@ -40683,7 +41396,8 @@ msgid ""
"collision information immediately instead of waiting for the next "
"[code]_physics_process[/code] call, for example if the ray or its parent has "
"changed state.\n"
-"[b]Note:[/b] [code]enabled == true[/code] is not required for this to work."
+"[b]Note:[/b] [member enabled] does not need to be [code]true[/code] for this "
+"to work."
msgstr ""
#: doc/classes/RayCast2D.xml:54 doc/classes/RayCast3D.xml:55
@@ -40789,7 +41503,8 @@ msgid ""
"Use this method to update the collision information immediately instead of "
"waiting for the next [code]_physics_process[/code] call, for example if the "
"ray or its parent has changed state.\n"
-"[b]Note:[/b] [code]enabled == true[/code] is not required for this to work."
+"[b]Note:[/b] [member enabled] does not need to be [code]true[/code] for this "
+"to work."
msgstr ""
#: doc/classes/RayCast3D.xml:71
@@ -40947,14 +41662,6 @@ msgstr ""
msgid "Returns a larger [Rect2] that contains this [Rect2] and [code]b[/code]."
msgstr ""
-#: doc/classes/Rect2.xml:174 doc/classes/Rect2i.xml:163
-msgid "Ending corner."
-msgstr ""
-
-#: doc/classes/Rect2.xml:177 doc/classes/Rect2i.xml:166
-msgid "Position (starting corner)."
-msgstr ""
-
#: doc/classes/Rect2i.xml:4
msgid "2D axis-aligned bounding box using integer coordinates."
msgstr ""
@@ -41067,22 +41774,22 @@ msgstr ""
msgid ""
"Base class for any object that keeps a reference count. [Resource] and many "
"other helper objects inherit this class.\n"
-"References keep an internal reference counter so that they are automatically "
-"released when no longer in use, and only then. References therefore do not "
-"need to be freed manually with [method Object.free].\n"
+"Unlike [Object]s, References keep an internal reference counter so that they "
+"are automatically released when no longer in use, and only then. References "
+"therefore do not need to be freed manually with [method Object.free].\n"
"In the vast majority of use cases, instantiating and using [Reference]-"
"derived types is all you need to do. The methods provided in this class are "
"only for advanced users, and can cause issues if misused."
msgstr ""
-#: doc/classes/Reference.xml:18
+#: doc/classes/Reference.xml:19
msgid ""
"Initializes the internal reference counter. Use this only if you really know "
"what you are doing.\n"
"Returns whether the initialization was successful."
msgstr ""
-#: doc/classes/Reference.xml:26
+#: doc/classes/Reference.xml:27
msgid ""
"Increments the internal reference counter. Use this only if you really know "
"what you are doing.\n"
@@ -41090,7 +41797,7 @@ msgid ""
"code] otherwise."
msgstr ""
-#: doc/classes/Reference.xml:34
+#: doc/classes/Reference.xml:35
msgid ""
"Decrements the internal reference counter. Use this only if you really know "
"what you are doing.\n"
@@ -41139,14 +41846,14 @@ msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/reflection_probes.html"
msgstr ""
-#: doc/classes/ReflectionProbe.xml:17
+#: doc/classes/ReflectionProbe.xml:23
msgid ""
"If [code]true[/code], enables box projection. This makes reflections look "
"more correct in rectangle-shaped rooms by offsetting the reflection center "
"depending on the camera's location."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:20
+#: doc/classes/ReflectionProbe.xml:26
msgid ""
"Sets the cull mask which determines what objects are drawn by this probe. "
"Every [VisualInstance3D] with a layer included in this cull mask will be "
@@ -41155,78 +41862,56 @@ msgid ""
"rendering cost."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:23
+#: doc/classes/ReflectionProbe.xml:29
msgid ""
"If [code]true[/code], computes shadows in the reflection probe. This makes "
"the reflection probe slower to render; you may want to disable this if using "
"the [constant UPDATE_ALWAYS] [member update_mode]."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:26
+#: doc/classes/ReflectionProbe.xml:32
msgid ""
"The size of the reflection probe. The larger the extents the more space "
"covered by the probe which will lower the perceived resolution. It is best "
"to keep the extents only as large as you need them."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:29
+#: doc/classes/ReflectionProbe.xml:35
msgid ""
"Defines the reflection intensity. Intensity modulates the strength of the "
"reflection."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:32
-msgid ""
-"Sets the ambient light color to be used when this probe is set to [member "
-"interior_enable]."
-msgstr ""
-
-#: doc/classes/ReflectionProbe.xml:35
-msgid ""
-"Sets the contribution value for how much the reflection affects the ambient "
-"light for this reflection probe when set to [member interior_enable]. Useful "
-"so that ambient light matches the color of the room."
-msgstr ""
-
#: doc/classes/ReflectionProbe.xml:38
-msgid ""
-"Sets the energy multiplier for this reflection probe's ambient light "
-"contribution when set to [member interior_enable]."
+msgid "If [code]true[/code], reflections will ignore sky contribution."
msgstr ""
#: doc/classes/ReflectionProbe.xml:41
msgid ""
-"If [code]true[/code], reflections will ignore sky contribution. Ambient "
-"lighting is then controlled by the [code]interior_ambient_*[/code] "
-"properties."
-msgstr ""
-
-#: doc/classes/ReflectionProbe.xml:44
-msgid ""
"Sets the max distance away from the probe an object can be before it is "
"culled."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:47
+#: doc/classes/ReflectionProbe.xml:44
msgid ""
"Sets the origin offset to be used when this reflection probe is in box "
"project mode."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:50
+#: doc/classes/ReflectionProbe.xml:47
msgid ""
"Sets how frequently the probe is updated. Can be [constant UPDATE_ONCE] or "
"[constant UPDATE_ALWAYS]."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:55
+#: doc/classes/ReflectionProbe.xml:52
msgid ""
"Update the probe once on the next frame. The corresponding radiance map will "
"be generated over the following six frames. This is slower to update than "
"[constant UPDATE_ALWAYS] but can result in higher quality reflections."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:58
+#: doc/classes/ReflectionProbe.xml:55
msgid ""
"Update the probe every frame. This is needed when you want to capture "
"dynamic objects. However, it results in an increased render time. Use "
@@ -41256,10 +41941,10 @@ msgid ""
"read by RegEx as [code]\\d+[/code]. Similarly, [code]compile(\"\\\"(?:\\\\\\"
"\\.|[^\\\"])*\\\"\")[/code] would be read as [code]\"(?:\\\\.|[^\"])*\"[/"
"code].\n"
-"Using [method search] you can find the pattern within the given text. If a "
+"Using [method search], you can find the pattern within the given text. If a "
"pattern is found, [RegExMatch] is returned and you can retrieve details of "
-"the results using functions such as [method RegExMatch.get_string] and "
-"[method RegExMatch.get_start].\n"
+"the results using methods such as [method RegExMatch.get_string] and [method "
+"RegExMatch.get_start].\n"
"[codeblock]\n"
"var regex = RegEx.new()\n"
"regex.compile(\"\\\\w-(\\\\d+)\")\n"
@@ -41268,7 +41953,7 @@ msgid ""
" print(result.get_string()) # Would print n-0123\n"
"[/codeblock]\n"
"The results of capturing groups [code]()[/code] can be retrieved by passing "
-"the group number to the various functions in [RegExMatch]. Group 0 is the "
+"the group number to the various methods in [RegExMatch]. Group 0 is the "
"default and will always refer to the entire pattern. In the above example, "
"calling [code]result.get_string(1)[/code] would give you [code]0123[/code].\n"
"This version of RegEx also supports named capturing groups, and the names "
@@ -41289,6 +41974,15 @@ msgid ""
" print(result.get_string(\"digit\"))\n"
"# Would print 01 03 0 3f 42\n"
"[/codeblock]\n"
+"[b]Example of splitting a string using a RegEx:[/b]\n"
+"[codeblock]\n"
+"var regex = RegEx.new()\n"
+"regex.compile(\"\\\\S+\") # Negated whitespace character class.\n"
+"var results = []\n"
+"for match in regex.search_all(\"One Two \\n\\tThree\"):\n"
+" results.push_back(match.get_string())\n"
+"# The `results` array now contains \"One\", \"Two\", \"Three\".\n"
+"[/codeblock]\n"
"[b]Note:[/b] Godot's regex implementation is based on the [url=https://www."
"pcre.org/]PCRE2[/url] library. You can view the full pattern reference "
"[url=https://www.pcre.org/current/doc/html/pcre2pattern.html]here[/url].\n"
@@ -41296,38 +41990,38 @@ msgid ""
"regular expressions online."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:47
+#: modules/regex/doc_classes/RegEx.xml:56
msgid ""
"This method resets the state of the object, as if it was freshly created. "
"Namely, it unassigns the regular expression of this object."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:56
+#: modules/regex/doc_classes/RegEx.xml:65
msgid ""
"Compiles and assign the search pattern to use. Returns [constant OK] if the "
"compilation is successful. If an error is encountered, details are printed "
"to standard output and an error is returned."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:63
+#: modules/regex/doc_classes/RegEx.xml:72
msgid "Returns the number of capturing groups in compiled pattern."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:70
+#: modules/regex/doc_classes/RegEx.xml:79
msgid ""
"Returns an array of names of named capturing groups in the compiled pattern. "
"They are ordered by appearance."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:77
+#: modules/regex/doc_classes/RegEx.xml:86
msgid "Returns the original search pattern that was compiled."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:84
+#: modules/regex/doc_classes/RegEx.xml:93
msgid "Returns whether this object has a valid search pattern assigned."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:97
+#: modules/regex/doc_classes/RegEx.xml:106
msgid ""
"Searches the text for the compiled pattern. Returns a [RegExMatch] container "
"of the first matching result if found, otherwise [code]null[/code]. The "
@@ -41335,7 +42029,7 @@ msgid ""
"and end anchor would be."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:110
+#: modules/regex/doc_classes/RegEx.xml:119
msgid ""
"Searches the text for the compiled pattern. Returns an array of [RegExMatch] "
"containers for each non-overlapping result. If no results were found, an "
@@ -41343,7 +42037,7 @@ msgid ""
"specified without modifying where the start and end anchor would be."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:127
+#: modules/regex/doc_classes/RegEx.xml:136
msgid ""
"Searches the text for the compiled pattern and replaces it with the "
"specified string. Escapes and backreferences such as [code]$1[/code] and "
@@ -42070,7 +42764,7 @@ msgid ""
msgstr ""
#: doc/classes/RenderingServer.xml:1222 doc/classes/RenderingServer.xml:1250
-#: doc/classes/RenderingServer.xml:1527
+#: doc/classes/RenderingServer.xml:1537
msgid "Not implemented in Godot 3.x."
msgstr ""
@@ -42217,30 +42911,30 @@ msgid ""
"OmniLight3D.omni_shadow_mode]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1481
+#: doc/classes/RenderingServer.xml:1491
msgid ""
"Sets the color of the light. Equivalent to [member Light3D.light_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1492
+#: doc/classes/RenderingServer.xml:1502
msgid ""
"Sets the cull mask for this Light3D. Lights only affect objects in the "
"selected layers. Equivalent to [member Light3D.light_cull_mask]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1503
+#: doc/classes/RenderingServer.xml:1513
msgid ""
"If [code]true[/code], light will subtract light instead of adding light. "
"Equivalent to [member Light3D.light_negative]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1516
+#: doc/classes/RenderingServer.xml:1526
msgid ""
"Sets the specified light parameter. See [enum LightParam] for options. "
"Equivalent to [method Light3D.set_param]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1538
+#: doc/classes/RenderingServer.xml:1548
msgid ""
"If [code]true[/code], reverses the backface culling of the mesh. This can be "
"useful when you have a flat mesh that has a light behind it. If you need to "
@@ -42249,29 +42943,25 @@ msgid ""
"to [member Light3D.shadow_reverse_cull_face]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1549
+#: doc/classes/RenderingServer.xml:1559
msgid ""
"If [code]true[/code], light will cast shadows. Equivalent to [member Light3D."
"shadow_enabled]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1560
+#: doc/classes/RenderingServer.xml:1570
msgid ""
"Sets the color of the shadow cast by the light. Equivalent to [member "
"Light3D.shadow_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1571
-msgid "Sets whether GI probes capture light information from this light."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:1584
+#: doc/classes/RenderingServer.xml:1583
msgid ""
"Returns a mesh of a sphere with the given amount of horizontal and vertical "
"subdivisions."
msgstr ""
-#: doc/classes/RenderingServer.xml:1591
+#: doc/classes/RenderingServer.xml:1590
msgid ""
"Creates an empty material and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42280,31 +42970,31 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:1603
+#: doc/classes/RenderingServer.xml:1602
msgid "Returns the value of a certain material's parameter."
msgstr ""
-#: doc/classes/RenderingServer.xml:1614
+#: doc/classes/RenderingServer.xml:1613
msgid "Sets an object's next material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1627
+#: doc/classes/RenderingServer.xml:1626
msgid "Sets a material's parameter."
msgstr ""
-#: doc/classes/RenderingServer.xml:1638
+#: doc/classes/RenderingServer.xml:1637
msgid "Sets a material's render priority."
msgstr ""
-#: doc/classes/RenderingServer.xml:1649
+#: doc/classes/RenderingServer.xml:1648
msgid "Sets a shader material's shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:1678
+#: doc/classes/RenderingServer.xml:1677
msgid "Removes all surfaces from a mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1685
+#: doc/classes/RenderingServer.xml:1684
msgid ""
"Creates a new mesh and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all [code]mesh_*[/"
@@ -42315,58 +43005,58 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:1696
+#: doc/classes/RenderingServer.xml:1695
msgid "Returns a mesh's blend shape count."
msgstr ""
-#: doc/classes/RenderingServer.xml:1705
+#: doc/classes/RenderingServer.xml:1704
msgid "Returns a mesh's blend shape mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:1714
+#: doc/classes/RenderingServer.xml:1713
msgid "Returns a mesh's custom aabb."
msgstr ""
-#: doc/classes/RenderingServer.xml:1723
+#: doc/classes/RenderingServer.xml:1722
msgid "Returns a mesh's number of surfaces."
msgstr ""
-#: doc/classes/RenderingServer.xml:1734
+#: doc/classes/RenderingServer.xml:1733
msgid "Sets a mesh's blend shape mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:1745
+#: doc/classes/RenderingServer.xml:1744
msgid "Sets a mesh's custom aabb."
msgstr ""
-#: doc/classes/RenderingServer.xml:1756
+#: doc/classes/RenderingServer.xml:1755
msgid "Returns a mesh's surface's buffer arrays."
msgstr ""
-#: doc/classes/RenderingServer.xml:1767
+#: doc/classes/RenderingServer.xml:1766
msgid "Returns a mesh's surface's arrays for blend shapes."
msgstr ""
-#: doc/classes/RenderingServer.xml:1782 doc/classes/RenderingServer.xml:1795
+#: doc/classes/RenderingServer.xml:1781 doc/classes/RenderingServer.xml:1794
msgid "Function is unused in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:1806
+#: doc/classes/RenderingServer.xml:1805
msgid "Returns a mesh's surface's material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1819
+#: doc/classes/RenderingServer.xml:1818
msgid "Sets a mesh's surface's material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1834
+#: doc/classes/RenderingServer.xml:1833
msgid ""
"Updates a specific region of a vertex buffer for the specified surface. "
"Warning: this function alters the vertex buffer directly with no safety "
"mechanisms, you can easily corrupt your mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1857
+#: doc/classes/RenderingServer.xml:1856
msgid ""
"Creates a new multimesh on the RenderingServer and returns an [RID] handle. "
"This RID will be used in all [code]multimesh_*[/code] RenderingServer "
@@ -42377,82 +43067,82 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:1868
+#: doc/classes/RenderingServer.xml:1867
msgid ""
"Calculates and returns the axis-aligned bounding box that encloses all "
"instances within the multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1885
+#: doc/classes/RenderingServer.xml:1884
msgid "Returns the number of instances allocated for this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1894
+#: doc/classes/RenderingServer.xml:1893
msgid ""
"Returns the RID of the mesh that will be used in drawing this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1903
+#: doc/classes/RenderingServer.xml:1902
msgid "Returns the number of visible instances for this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1914
+#: doc/classes/RenderingServer.xml:1913
msgid "Returns the color by which the specified instance will be modulated."
msgstr ""
-#: doc/classes/RenderingServer.xml:1925
+#: doc/classes/RenderingServer.xml:1924
msgid "Returns the custom data associated with the specified instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:1936
+#: doc/classes/RenderingServer.xml:1935
msgid "Returns the [Transform] of the specified instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:1947
+#: doc/classes/RenderingServer.xml:1946
msgid ""
"Returns the [Transform2D] of the specified instance. For use when the "
"multimesh is set to use 2D transforms."
msgstr ""
-#: doc/classes/RenderingServer.xml:1960
+#: doc/classes/RenderingServer.xml:1959
msgid ""
"Sets the color by which this instance will be modulated. Equivalent to "
"[method MultiMesh.set_instance_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1973
+#: doc/classes/RenderingServer.xml:1972
msgid ""
"Sets the custom data for this instance. Custom data is passed as a [Color], "
"but is interpreted as a [code]vec4[/code] in the shader. Equivalent to "
"[method MultiMesh.set_instance_custom_data]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1986
+#: doc/classes/RenderingServer.xml:1985
msgid ""
"Sets the [Transform] for this instance. Equivalent to [method MultiMesh."
"set_instance_transform]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1999
+#: doc/classes/RenderingServer.xml:1998
msgid ""
"Sets the [Transform2D] for this instance. For use when multimesh is used in "
"2D. Equivalent to [method MultiMesh.set_instance_transform_2d]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2020
+#: doc/classes/RenderingServer.xml:2019
msgid ""
"Sets the mesh to be drawn by the multimesh. Equivalent to [member MultiMesh."
"mesh]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2031
+#: doc/classes/RenderingServer.xml:2030
msgid ""
"Sets the number of instances visible at a given time. If -1, all instances "
"that have been allocated are drawn. Equivalent to [member MultiMesh."
"visible_instance_count]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2038
+#: doc/classes/RenderingServer.xml:2037
msgid ""
"Creates a new omni light and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID can be used in most "
@@ -42463,7 +43153,7 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2047
+#: doc/classes/RenderingServer.xml:2046
msgid ""
"Creates a particle system and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42474,23 +43164,23 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2058
+#: doc/classes/RenderingServer.xml:2057
msgid ""
"Calculates and returns the axis-aligned bounding box that contains all the "
"particles. Equivalent to [method GPUParticles3D.capture_aabb]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2067
+#: doc/classes/RenderingServer.xml:2066
msgid "Returns [code]true[/code] if particles are currently set to emitting."
msgstr ""
-#: doc/classes/RenderingServer.xml:2076
+#: doc/classes/RenderingServer.xml:2075
msgid ""
"Returns [code]true[/code] if particles are not emitting and particles are "
"set to inactive."
msgstr ""
-#: doc/classes/RenderingServer.xml:2085
+#: doc/classes/RenderingServer.xml:2084
msgid ""
"Add particle system to list of particle systems that need to be updated. "
"Update will take place on the next frame, or on the next call to [method "
@@ -42498,121 +43188,121 @@ msgid ""
"instances_cull_ray]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2094
+#: doc/classes/RenderingServer.xml:2093
msgid ""
"Reset the particles on the next update. Equivalent to [method GPUParticles3D."
"restart]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2105
+#: doc/classes/RenderingServer.xml:2104
msgid ""
"Sets the number of particles to be drawn and allocates the memory for them. "
"Equivalent to [member GPUParticles3D.amount]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2116
+#: doc/classes/RenderingServer.xml:2115
msgid ""
"Sets a custom axis-aligned bounding box for the particle system. Equivalent "
"to [member GPUParticles3D.visibility_aabb]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2127
+#: doc/classes/RenderingServer.xml:2126
msgid ""
"Sets the draw order of the particles to one of the named enums from [enum "
"ParticlesDrawOrder]. See [enum ParticlesDrawOrder] for options. Equivalent "
"to [member GPUParticles3D.draw_order]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2140
+#: doc/classes/RenderingServer.xml:2139
msgid ""
"Sets the mesh to be used for the specified draw pass. Equivalent to [member "
"GPUParticles3D.draw_pass_1], [member GPUParticles3D.draw_pass_2], [member "
"GPUParticles3D.draw_pass_3], and [member GPUParticles3D.draw_pass_4]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2151
+#: doc/classes/RenderingServer.xml:2150
msgid ""
"Sets the number of draw passes to use. Equivalent to [member GPUParticles3D."
"draw_passes]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2162
+#: doc/classes/RenderingServer.xml:2161
msgid ""
"Sets the [Transform] that will be used by the particles when they first emit."
msgstr ""
-#: doc/classes/RenderingServer.xml:2173
+#: doc/classes/RenderingServer.xml:2172
msgid ""
"If [code]true[/code], particles will emit over time. Setting to false does "
"not reset the particles, but only stops their emission. Equivalent to "
"[member GPUParticles3D.emitting]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2184
+#: doc/classes/RenderingServer.xml:2183
msgid ""
"Sets the explosiveness ratio. Equivalent to [member GPUParticles3D."
"explosiveness]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2195
+#: doc/classes/RenderingServer.xml:2194
msgid ""
"Sets the frame rate that the particle system rendering will be fixed to. "
"Equivalent to [member GPUParticles3D.fixed_fps]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2206
+#: doc/classes/RenderingServer.xml:2205
msgid ""
"If [code]true[/code], uses fractional delta which smooths the movement of "
"the particles. Equivalent to [member GPUParticles3D.fract_delta]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2217
+#: doc/classes/RenderingServer.xml:2216
msgid ""
"Sets the lifetime of each particle in the system. Equivalent to [member "
"GPUParticles3D.lifetime]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2228
+#: doc/classes/RenderingServer.xml:2227
msgid ""
"If [code]true[/code], particles will emit once and then stop. Equivalent to "
"[member GPUParticles3D.one_shot]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2239
+#: doc/classes/RenderingServer.xml:2238
msgid ""
"Sets the preprocess time for the particles animation. This lets you delay "
"starting an animation until after the particles have begun emitting. "
"Equivalent to [member GPUParticles3D.preprocess]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2250
+#: doc/classes/RenderingServer.xml:2249
msgid ""
"Sets the material for processing the particles. Note: this is not the "
"material used to draw the materials. Equivalent to [member GPUParticles3D."
"process_material]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2261
+#: doc/classes/RenderingServer.xml:2260
msgid ""
"Sets the emission randomness ratio. This randomizes the emission of "
"particles within their phase. Equivalent to [member GPUParticles3D."
"randomness]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2272
+#: doc/classes/RenderingServer.xml:2271
msgid ""
"Sets the speed scale of the particle system. Equivalent to [member "
"GPUParticles3D.speed_scale]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2283
+#: doc/classes/RenderingServer.xml:2282
msgid ""
"If [code]true[/code], particles use local coordinates. If [code]false[/code] "
"they use global coordinates. Equivalent to [member GPUParticles3D."
"local_coords]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2290
+#: doc/classes/RenderingServer.xml:2289
msgid ""
"Creates a reflection probe and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42623,85 +43313,64 @@ msgid ""
"[method instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2303
+#: doc/classes/RenderingServer.xml:2332
msgid ""
"If [code]true[/code], reflections will ignore sky contribution. Equivalent "
-"to [member ReflectionProbe.interior_enable]."
+"to [member ReflectionProbe.interior]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2314
+#: doc/classes/RenderingServer.xml:2343
msgid ""
"Sets the render cull mask for this reflection probe. Only instances with a "
"matching cull mask will be rendered by this probe. Equivalent to [member "
"ReflectionProbe.cull_mask]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2325
+#: doc/classes/RenderingServer.xml:2354
msgid ""
"If [code]true[/code], uses box projection. This can make reflections look "
"more correct in certain situations. Equivalent to [member ReflectionProbe."
"box_projection]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2336
+#: doc/classes/RenderingServer.xml:2365
msgid ""
"If [code]true[/code], computes shadows in the reflection probe. This makes "
"the reflection much slower to compute. Equivalent to [member ReflectionProbe."
"enable_shadows]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2347
+#: doc/classes/RenderingServer.xml:2376
msgid ""
"Sets the size of the area that the reflection probe will capture. Equivalent "
"to [member ReflectionProbe.extents]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2358
+#: doc/classes/RenderingServer.xml:2387
msgid ""
"Sets the intensity of the reflection probe. Intensity modulates the strength "
"of the reflection. Equivalent to [member ReflectionProbe.intensity]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2369
-msgid ""
-"Sets the ambient light color for this reflection probe when set to interior "
-"mode. Equivalent to [member ReflectionProbe.interior_ambient_color]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2380
-msgid ""
-"Sets the energy multiplier for this reflection probes ambient light "
-"contribution when set to interior mode. Equivalent to [member "
-"ReflectionProbe.interior_ambient_energy]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2391
-msgid ""
-"Sets the contribution value for how much the reflection affects the ambient "
-"light for this reflection probe when set to interior mode. Useful so that "
-"ambient light matches the color of the room. Equivalent to [member "
-"ReflectionProbe.interior_ambient_contrib]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2402
+#: doc/classes/RenderingServer.xml:2398
msgid ""
"Sets the max distance away from the probe an object can be before it is "
"culled. Equivalent to [member ReflectionProbe.max_distance]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2413
+#: doc/classes/RenderingServer.xml:2409
msgid ""
"Sets the origin offset to be used when this reflection probe is in box "
"project mode. Equivalent to [member ReflectionProbe.origin_offset]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2424
+#: doc/classes/RenderingServer.xml:2420
msgid ""
"Sets how often the reflection probe updates. Can either be once or every "
"frame. See [enum ReflectionProbeUpdateMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2437
+#: doc/classes/RenderingServer.xml:2433
msgid ""
"Schedules a callback to the corresponding named [code]method[/code] on "
"[code]where[/code] after a frame has been drawn.\n"
@@ -42709,7 +43378,7 @@ msgid ""
"[code]userdata[/code]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2445
+#: doc/classes/RenderingServer.xml:2441
msgid ""
"Creates a scenario and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all "
@@ -42719,24 +43388,24 @@ msgid ""
"The scenario is the 3D world that all the visual instances exist in."
msgstr ""
-#: doc/classes/RenderingServer.xml:2458
+#: doc/classes/RenderingServer.xml:2454
msgid ""
"Sets the [enum ScenarioDebugMode] for this scenario. See [enum "
"ScenarioDebugMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2469
+#: doc/classes/RenderingServer.xml:2465
msgid "Sets the environment that will be used with this scenario."
msgstr ""
-#: doc/classes/RenderingServer.xml:2480
+#: doc/classes/RenderingServer.xml:2476
msgid ""
"Sets the fallback environment to be used by this scenario. The fallback "
"environment is used if no environment is set. Internally, this is used by "
"the editor to provide a default environment."
msgstr ""
-#: doc/classes/RenderingServer.xml:2495
+#: doc/classes/RenderingServer.xml:2491
msgid ""
"Sets a boot image. The color defines the background color. If [code]scale[/"
"code] is [code]true[/code], the image will be scaled to fit the screen size. "
@@ -42745,19 +43414,19 @@ msgid ""
"the image will be scaled with nearest-neighbor interpolation."
msgstr ""
-#: doc/classes/RenderingServer.xml:2504
+#: doc/classes/RenderingServer.xml:2500
msgid ""
"If [code]true[/code], the engine will generate wireframes for use with the "
"wireframe debug mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:2513
+#: doc/classes/RenderingServer.xml:2509
msgid ""
"Sets the default clear color which is used when a specific clear color has "
"not been selected."
msgstr ""
-#: doc/classes/RenderingServer.xml:2520
+#: doc/classes/RenderingServer.xml:2516
msgid ""
"Creates an empty shader and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42766,47 +43435,47 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2530
+#: doc/classes/RenderingServer.xml:2526
msgid "Returns a shader's code."
msgstr ""
-#: doc/classes/RenderingServer.xml:2541
+#: doc/classes/RenderingServer.xml:2537
msgid "Returns a default texture from a shader searched by name."
msgstr ""
-#: doc/classes/RenderingServer.xml:2560
+#: doc/classes/RenderingServer.xml:2556
msgid "Returns the parameters of a shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:2571
+#: doc/classes/RenderingServer.xml:2567
msgid "Sets a shader's code."
msgstr ""
-#: doc/classes/RenderingServer.xml:2584
+#: doc/classes/RenderingServer.xml:2580
msgid "Sets a shader's default texture. Overwrites the texture given by name."
msgstr ""
-#: doc/classes/RenderingServer.xml:2597
+#: doc/classes/RenderingServer.xml:2593
msgid "Allocates the GPU buffers for this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2608
+#: doc/classes/RenderingServer.xml:2604
msgid "Returns the [Transform] set for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2619
+#: doc/classes/RenderingServer.xml:2615
msgid "Returns the [Transform2D] set for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2632
+#: doc/classes/RenderingServer.xml:2628
msgid "Sets the [Transform] for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2645
+#: doc/classes/RenderingServer.xml:2641
msgid "Sets the [Transform2D] for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2652
+#: doc/classes/RenderingServer.xml:2648
msgid ""
"Creates a skeleton and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all "
@@ -42815,11 +43484,11 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2662
+#: doc/classes/RenderingServer.xml:2658
msgid "Returns the number of bones allocated for this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2669
+#: doc/classes/RenderingServer.xml:2665
msgid ""
"Creates an empty sky and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all [code]sky_*[/"
@@ -42828,13 +43497,13 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2681
+#: doc/classes/RenderingServer.xml:2677
msgid ""
"Sets the material that the sky uses to render the background and reflection "
"maps."
msgstr ""
-#: doc/classes/RenderingServer.xml:2688
+#: doc/classes/RenderingServer.xml:2684
msgid ""
"Creates a spot light and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID can be used in most [code]light_*[/"
@@ -42845,15 +43514,15 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2717
+#: doc/classes/RenderingServer.xml:2713
msgid "Sets a viewport's camera."
msgstr ""
-#: doc/classes/RenderingServer.xml:2728
+#: doc/classes/RenderingServer.xml:2724
msgid "Sets a viewport's canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:2741
+#: doc/classes/RenderingServer.xml:2737
msgid ""
"Copies the viewport to a region of the screen specified by [code]rect[/"
"code]. If [method viewport_set_render_direct_to_screen] is [code]true[/"
@@ -42875,7 +43544,7 @@ msgid ""
"viewport_set_render_direct_to_screen]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2755
+#: doc/classes/RenderingServer.xml:2751
msgid ""
"Creates an empty viewport and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42884,72 +43553,72 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2767
+#: doc/classes/RenderingServer.xml:2763
msgid ""
"Returns a viewport's render information. For options, see the [enum "
"ViewportRenderInfo] constants."
msgstr ""
-#: doc/classes/RenderingServer.xml:2776
+#: doc/classes/RenderingServer.xml:2772
msgid "Returns the viewport's last rendered frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:2787
+#: doc/classes/RenderingServer.xml:2783
msgid "Detaches a viewport from a canvas and vice versa."
msgstr ""
-#: doc/classes/RenderingServer.xml:2798
+#: doc/classes/RenderingServer.xml:2794
msgid "If [code]true[/code], sets the viewport active, else sets it inactive."
msgstr ""
-#: doc/classes/RenderingServer.xml:2813
+#: doc/classes/RenderingServer.xml:2809
msgid ""
"Sets the stacking order for a viewport's canvas.\n"
"[code]layer[/code] is the actual canvas layer, while [code]sublayer[/code] "
"specifies the stacking order of the canvas among those in the same layer."
msgstr ""
-#: doc/classes/RenderingServer.xml:2827
+#: doc/classes/RenderingServer.xml:2823
msgid "Sets the transformation of a viewport's canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:2838
+#: doc/classes/RenderingServer.xml:2834
msgid ""
"Sets the clear mode of a viewport. See [enum ViewportClearMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2849
+#: doc/classes/RenderingServer.xml:2845
msgid ""
"Sets the debug draw mode of a viewport. See [enum ViewportDebugDraw] for "
"options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2860
+#: doc/classes/RenderingServer.xml:2856
msgid ""
"If [code]true[/code], rendering of a viewport's environment is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:2871
+#: doc/classes/RenderingServer.xml:2867
msgid "Sets the viewport's global transformation matrix."
msgstr ""
-#: doc/classes/RenderingServer.xml:2882
+#: doc/classes/RenderingServer.xml:2878
msgid "If [code]true[/code], the viewport's canvas is not rendered."
msgstr ""
-#: doc/classes/RenderingServer.xml:2893
+#: doc/classes/RenderingServer.xml:2889
msgid "Currently unimplemented in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:2904
+#: doc/classes/RenderingServer.xml:2900
msgid "Sets the anti-aliasing mode. See [enum ViewportMSAA] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2915
+#: doc/classes/RenderingServer.xml:2911
msgid "Sets the viewport's parent to another viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:2926
+#: doc/classes/RenderingServer.xml:2922
msgid ""
"If [code]true[/code], render the contents of the viewport directly to "
"screen. This allows a low-level optimization where you can skip drawing a "
@@ -42965,455 +43634,455 @@ msgid ""
"significantly larger than the window size."
msgstr ""
-#: doc/classes/RenderingServer.xml:2937
+#: doc/classes/RenderingServer.xml:2933
msgid ""
"Sets a viewport's scenario.\n"
"The scenario contains information about the [enum ScenarioDebugMode], "
"environment information, reflection atlas etc."
msgstr ""
-#: doc/classes/RenderingServer.xml:2951
+#: doc/classes/RenderingServer.xml:2947
msgid "Sets the shadow atlas quadrant's subdivision."
msgstr ""
-#: doc/classes/RenderingServer.xml:2962
+#: doc/classes/RenderingServer.xml:2958
msgid ""
"Sets the size of the shadow atlas's images (used for omni and spot lights). "
"The value will be rounded up to the nearest power of 2."
msgstr ""
-#: doc/classes/RenderingServer.xml:2975
+#: doc/classes/RenderingServer.xml:2971
msgid "Sets the viewport's width and height."
msgstr ""
-#: doc/classes/RenderingServer.xml:2986
+#: doc/classes/RenderingServer.xml:2982
msgid ""
"If [code]true[/code], the viewport renders its background as transparent."
msgstr ""
-#: doc/classes/RenderingServer.xml:2997
+#: doc/classes/RenderingServer.xml:2993
msgid ""
"Sets when the viewport should be updated. See [enum ViewportUpdateMode] "
"constants for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:3008
+#: doc/classes/RenderingServer.xml:3004
msgid ""
"If [code]true[/code], the viewport uses augmented or virtual reality "
"technologies. See [XRInterface]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3014
+#: doc/classes/RenderingServer.xml:3010
msgid ""
"If [code]false[/code], disables rendering completely, but the engine logic "
"is still being processed. You can call [method force_draw] to draw a frame "
"even with rendering disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3020
+#: doc/classes/RenderingServer.xml:3016
msgid ""
"Emitted at the end of the frame, after the RenderingServer has finished "
"updating all the Viewports."
msgstr ""
-#: doc/classes/RenderingServer.xml:3025
+#: doc/classes/RenderingServer.xml:3021
msgid ""
"Emitted at the beginning of the frame, before the RenderingServer updates "
"all the Viewports."
msgstr ""
-#: doc/classes/RenderingServer.xml:3031
+#: doc/classes/RenderingServer.xml:3027
msgid "Marks an error that shows that the index array is empty."
msgstr ""
-#: doc/classes/RenderingServer.xml:3034
+#: doc/classes/RenderingServer.xml:3030
msgid "Number of weights/bones per vertex."
msgstr ""
-#: doc/classes/RenderingServer.xml:3037
+#: doc/classes/RenderingServer.xml:3033
msgid "The minimum Z-layer for canvas items."
msgstr ""
-#: doc/classes/RenderingServer.xml:3040
+#: doc/classes/RenderingServer.xml:3036
msgid "The maximum Z-layer for canvas items."
msgstr ""
-#: doc/classes/RenderingServer.xml:3043
+#: doc/classes/RenderingServer.xml:3039
msgid ""
"Max number of glow levels that can be used with glow post-process effect."
msgstr ""
-#: doc/classes/RenderingServer.xml:3046
+#: doc/classes/RenderingServer.xml:3042
msgid "Unused enum in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:3067
+#: doc/classes/RenderingServer.xml:3063
msgid "Shader is a 3D shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3070
+#: doc/classes/RenderingServer.xml:3066
msgid "Shader is a 2D shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3073
+#: doc/classes/RenderingServer.xml:3069
msgid "Shader is a particle shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3076
+#: doc/classes/RenderingServer.xml:3072
msgid "Shader is a sky shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3079
+#: doc/classes/RenderingServer.xml:3075
msgid "Represents the size of the [enum ShaderMode] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3082
+#: doc/classes/RenderingServer.xml:3078
msgid "The minimum renderpriority of all materials."
msgstr ""
-#: doc/classes/RenderingServer.xml:3085
+#: doc/classes/RenderingServer.xml:3081
msgid "The maximum renderpriority of all materials."
msgstr ""
-#: doc/classes/RenderingServer.xml:3088
+#: doc/classes/RenderingServer.xml:3084
msgid "Array is a vertex array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3091
+#: doc/classes/RenderingServer.xml:3087
msgid "Array is a normal array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3094
+#: doc/classes/RenderingServer.xml:3090
msgid "Array is a tangent array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3097
+#: doc/classes/RenderingServer.xml:3093
msgid "Array is a color array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3100
+#: doc/classes/RenderingServer.xml:3096
msgid "Array is an UV coordinates array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3103
+#: doc/classes/RenderingServer.xml:3099
msgid "Array is an UV coordinates array for the second UV coordinates."
msgstr ""
-#: doc/classes/RenderingServer.xml:3106
+#: doc/classes/RenderingServer.xml:3102
msgid "Array contains bone information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3109
+#: doc/classes/RenderingServer.xml:3105
msgid "Array is weight information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3112
+#: doc/classes/RenderingServer.xml:3108
msgid "Array is index array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3118
+#: doc/classes/RenderingServer.xml:3114
msgid "Flag used to mark a vertex array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3121
+#: doc/classes/RenderingServer.xml:3117
msgid "Flag used to mark a normal array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3124
+#: doc/classes/RenderingServer.xml:3120
msgid "Flag used to mark a tangent array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3127
+#: doc/classes/RenderingServer.xml:3123
msgid "Flag used to mark a color array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3130
+#: doc/classes/RenderingServer.xml:3126
msgid "Flag used to mark an UV coordinates array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3133
+#: doc/classes/RenderingServer.xml:3129
msgid ""
"Flag used to mark an UV coordinates array for the second UV coordinates."
msgstr ""
-#: doc/classes/RenderingServer.xml:3136
+#: doc/classes/RenderingServer.xml:3132
msgid "Flag used to mark a bone information array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3139
+#: doc/classes/RenderingServer.xml:3135
msgid "Flag used to mark a weights array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3142
+#: doc/classes/RenderingServer.xml:3138
msgid "Flag used to mark an index array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3171
+#: doc/classes/RenderingServer.xml:3167
msgid "Primitive to draw consists of points."
msgstr ""
-#: doc/classes/RenderingServer.xml:3174
+#: doc/classes/RenderingServer.xml:3170
msgid "Primitive to draw consists of lines."
msgstr ""
-#: doc/classes/RenderingServer.xml:3177
+#: doc/classes/RenderingServer.xml:3173
msgid "Primitive to draw consists of a line strip from start to end."
msgstr ""
-#: doc/classes/RenderingServer.xml:3180
+#: doc/classes/RenderingServer.xml:3176
msgid "Primitive to draw consists of triangles."
msgstr ""
-#: doc/classes/RenderingServer.xml:3183
+#: doc/classes/RenderingServer.xml:3179
msgid ""
"Primitive to draw consists of a triangle strip (the last 3 vertices are "
"always combined to make a triangle)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3186
+#: doc/classes/RenderingServer.xml:3182
msgid "Represents the size of the [enum PrimitiveType] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3195
+#: doc/classes/RenderingServer.xml:3191
msgid "Use [Transform2D] to store MultiMesh transform."
msgstr ""
-#: doc/classes/RenderingServer.xml:3198
+#: doc/classes/RenderingServer.xml:3194
msgid "Use [Transform] to store MultiMesh transform."
msgstr ""
-#: doc/classes/RenderingServer.xml:3201
+#: doc/classes/RenderingServer.xml:3197
msgid "Is a directional (sun) light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3204
+#: doc/classes/RenderingServer.xml:3200
msgid "Is an omni light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3207
+#: doc/classes/RenderingServer.xml:3203
msgid "Is a spot light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3210
+#: doc/classes/RenderingServer.xml:3206
msgid "The light's energy."
msgstr ""
-#: doc/classes/RenderingServer.xml:3215
+#: doc/classes/RenderingServer.xml:3211
msgid "The light's influence on specularity."
msgstr ""
-#: doc/classes/RenderingServer.xml:3218
+#: doc/classes/RenderingServer.xml:3214
msgid "The light's range."
msgstr ""
-#: doc/classes/RenderingServer.xml:3221
+#: doc/classes/RenderingServer.xml:3217
msgid ""
"The size of the light when using spot light or omni light. The angular size "
"of the light when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3224
+#: doc/classes/RenderingServer.xml:3220
msgid "The light's attenuation."
msgstr ""
-#: doc/classes/RenderingServer.xml:3227
+#: doc/classes/RenderingServer.xml:3223
msgid "The spotlight's angle."
msgstr ""
-#: doc/classes/RenderingServer.xml:3230
+#: doc/classes/RenderingServer.xml:3226
msgid "The spotlight's attenuation."
msgstr ""
-#: doc/classes/RenderingServer.xml:3233
+#: doc/classes/RenderingServer.xml:3229
msgid "Max distance that shadows will be rendered."
msgstr ""
-#: doc/classes/RenderingServer.xml:3236
+#: doc/classes/RenderingServer.xml:3232
msgid "Proportion of shadow atlas occupied by the first split."
msgstr ""
-#: doc/classes/RenderingServer.xml:3239
+#: doc/classes/RenderingServer.xml:3235
msgid "Proportion of shadow atlas occupied by the second split."
msgstr ""
-#: doc/classes/RenderingServer.xml:3242
+#: doc/classes/RenderingServer.xml:3238
msgid ""
"Proportion of shadow atlas occupied by the third split. The fourth split "
"occupies the rest."
msgstr ""
-#: doc/classes/RenderingServer.xml:3245
+#: doc/classes/RenderingServer.xml:3241
msgid ""
"Proportion of shadow max distance where the shadow will start to fade out."
msgstr ""
-#: doc/classes/RenderingServer.xml:3248
+#: doc/classes/RenderingServer.xml:3244
msgid ""
"Normal bias used to offset shadow lookup by object normal. Can be used to "
"fix self-shadowing artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3251
+#: doc/classes/RenderingServer.xml:3247
msgid "Bias the shadow lookup to fix self-shadowing artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3257
+#: doc/classes/RenderingServer.xml:3253
msgid ""
"Blurs the edges of the shadow. Can be used to hide pixel artifacts in low "
"resolution shadow maps. A high value can make shadows appear grainy and can "
"cause other unwanted artifacts. Try to keep as near default as possible."
msgstr ""
-#: doc/classes/RenderingServer.xml:3262
+#: doc/classes/RenderingServer.xml:3258
msgid "Represents the size of the [enum LightParam] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3265
+#: doc/classes/RenderingServer.xml:3267
msgid "Use a dual paraboloid shadow map for omni lights."
msgstr ""
-#: doc/classes/RenderingServer.xml:3268
+#: doc/classes/RenderingServer.xml:3270
msgid ""
"Use a cubemap shadow map for omni lights. Slower but better quality than "
"dual paraboloid."
msgstr ""
-#: doc/classes/RenderingServer.xml:3271
+#: doc/classes/RenderingServer.xml:3273
msgid "Use orthogonal shadow projection for directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3274
+#: doc/classes/RenderingServer.xml:3276
msgid "Use 2 splits for shadow projection when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3277
+#: doc/classes/RenderingServer.xml:3279
msgid "Use 4 splits for shadow projection when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3280
+#: doc/classes/RenderingServer.xml:3282
msgid ""
"Keeps shadows stable as camera moves but has lower effective resolution."
msgstr ""
-#: doc/classes/RenderingServer.xml:3283
+#: doc/classes/RenderingServer.xml:3285
msgid ""
"Optimize use of shadow maps, increasing the effective resolution. But may "
"result in shadows moving or flickering slightly."
msgstr ""
-#: doc/classes/RenderingServer.xml:3286
+#: doc/classes/RenderingServer.xml:3288
msgid "Reflection probe will update reflections once and then stop."
msgstr ""
-#: doc/classes/RenderingServer.xml:3289
+#: doc/classes/RenderingServer.xml:3291
msgid ""
"Reflection probe will update each frame. This mode is necessary to capture "
"moving objects."
msgstr ""
-#: doc/classes/RenderingServer.xml:3302
+#: doc/classes/RenderingServer.xml:3310
msgid "Draw particles in the order that they appear in the particles array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3305
+#: doc/classes/RenderingServer.xml:3313
msgid "Sort particles based on their lifetime."
msgstr ""
-#: doc/classes/RenderingServer.xml:3308
+#: doc/classes/RenderingServer.xml:3316
msgid "Sort particles based on their distance to the camera."
msgstr ""
-#: doc/classes/RenderingServer.xml:3311
+#: doc/classes/RenderingServer.xml:3319
msgid "Do not update the viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:3314
+#: doc/classes/RenderingServer.xml:3322
msgid "Update the viewport once then set to disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3317
+#: doc/classes/RenderingServer.xml:3325
msgid "Update the viewport whenever it is visible."
msgstr ""
-#: doc/classes/RenderingServer.xml:3322
+#: doc/classes/RenderingServer.xml:3330
msgid "Always update the viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:3325
+#: doc/classes/RenderingServer.xml:3333
msgid "The viewport is always cleared before drawing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3328
+#: doc/classes/RenderingServer.xml:3336
msgid "The viewport is never cleared before drawing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3331
+#: doc/classes/RenderingServer.xml:3339
msgid ""
"The viewport is cleared once, then the clear mode is set to [constant "
"VIEWPORT_CLEAR_NEVER]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3334
+#: doc/classes/RenderingServer.xml:3342
msgid "Multisample antialiasing is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3337
+#: doc/classes/RenderingServer.xml:3345
msgid "Multisample antialiasing uses 2 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3340
+#: doc/classes/RenderingServer.xml:3348
msgid "Multisample antialiasing uses 4 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3343
+#: doc/classes/RenderingServer.xml:3351
msgid "Multisample antialiasing uses 8 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3346
+#: doc/classes/RenderingServer.xml:3354
msgid "Multisample antialiasing uses 16 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3357
+#: doc/classes/RenderingServer.xml:3365
msgid "Number of objects drawn in a single frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3360
+#: doc/classes/RenderingServer.xml:3368
msgid "Number of vertices drawn in a single frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3363
+#: doc/classes/RenderingServer.xml:3371
msgid "Number of material changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3366
+#: doc/classes/RenderingServer.xml:3374
msgid "Number of shader changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3369
+#: doc/classes/RenderingServer.xml:3377
msgid "Number of surface changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3372
+#: doc/classes/RenderingServer.xml:3380
msgid "Number of draw calls during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3375
+#: doc/classes/RenderingServer.xml:3383
msgid "Represents the size of the [enum ViewportRenderInfo] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3378
+#: doc/classes/RenderingServer.xml:3386
msgid "Debug draw is disabled. Default setting."
msgstr ""
-#: doc/classes/RenderingServer.xml:3381 doc/classes/Viewport.xml:348
+#: doc/classes/RenderingServer.xml:3389 doc/classes/Viewport.xml:348
msgid "Objects are displayed without light information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3384
+#: doc/classes/RenderingServer.xml:3392
msgid "Objects are displayed with only light information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3387 doc/classes/Viewport.xml:353
+#: doc/classes/RenderingServer.xml:3395 doc/classes/Viewport.xml:353
msgid ""
"Objects are displayed semi-transparent with additive blending so you can see "
"where they are drawing over top of one another. A higher overdraw means you "
@@ -43421,41 +44090,41 @@ msgid ""
"others."
msgstr ""
-#: doc/classes/RenderingServer.xml:3390
+#: doc/classes/RenderingServer.xml:3398
msgid "Debug draw draws objects in wireframe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3393
+#: doc/classes/RenderingServer.xml:3401
msgid ""
"Normal buffer is drawn instead of regular scene so you can see the per-pixel "
"normals that will be used by post-processing effects."
msgstr ""
-#: doc/classes/RenderingServer.xml:3396 doc/classes/Viewport.xml:361
+#: doc/classes/RenderingServer.xml:3404 doc/classes/Viewport.xml:361
msgid "Objects are displayed with only the albedo value from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3399 doc/classes/Viewport.xml:364
+#: doc/classes/RenderingServer.xml:3407 doc/classes/Viewport.xml:364
msgid "Objects are displayed with only the lighting value from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3402 doc/classes/Viewport.xml:367
+#: doc/classes/RenderingServer.xml:3410 doc/classes/Viewport.xml:367
msgid "Objects are displayed with only the emission color from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3405 doc/classes/Viewport.xml:370
+#: doc/classes/RenderingServer.xml:3413 doc/classes/Viewport.xml:370
msgid ""
"Draws the shadow atlas that stores shadows from [OmniLight3D]s and "
"[SpotLight3D]s in the upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3408 doc/classes/Viewport.xml:373
+#: doc/classes/RenderingServer.xml:3416 doc/classes/Viewport.xml:373
msgid ""
"Draws the shadow atlas that stores shadows from [DirectionalLight3D]s in the "
"upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3413
+#: doc/classes/RenderingServer.xml:3421
msgid ""
"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 "
@@ -43463,21 +44132,14 @@ msgid ""
"your [WorldEnvironment]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3416 doc/classes/Viewport.xml:381
-msgid ""
-"Draws the roughness limiter post process over the Viewport so you can see "
-"where it has an effect. It must be enabled in [member ProjectSettings."
-"rendering/quality/screen_filters/screen_space_roughness_limiter] to work."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:3419
+#: doc/classes/RenderingServer.xml:3424
msgid ""
"Colors each PSSM split for the [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."
msgstr ""
-#: doc/classes/RenderingServer.xml:3424
+#: doc/classes/RenderingServer.xml:3435
msgid ""
"Uses high quality importance sampling to process the radiance map. In "
"general, this results in much higher quality than [constant Sky."
@@ -43488,7 +44150,7 @@ msgid ""
"ggx_samples]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3427
+#: doc/classes/RenderingServer.xml:3438
msgid ""
"Uses the fast filtering algorithm to process the radiance map. In general "
"this results in lower quality, but substantially faster run times.\n"
@@ -43496,347 +44158,347 @@ msgid ""
"[member Sky.radiance_size] must be set to [constant Sky.RADIANCE_SIZE_256]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3431
+#: doc/classes/RenderingServer.xml:3442
msgid "Use the clear color as background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3434
+#: doc/classes/RenderingServer.xml:3445
msgid "Use a specified color as the background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3437
+#: doc/classes/RenderingServer.xml:3448
msgid "Use a sky resource for the background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3440
+#: doc/classes/RenderingServer.xml:3451
msgid ""
"Use a specified canvas layer as the background. This can be useful for "
"instantiating a 2D scene in a 3D world."
msgstr ""
-#: doc/classes/RenderingServer.xml:3443
+#: doc/classes/RenderingServer.xml:3454
msgid ""
"Do not clear the background, use whatever was rendered last frame as the "
"background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3449
+#: doc/classes/RenderingServer.xml:3460
msgid "Represents the size of the [enum EnvironmentBG] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3488
+#: doc/classes/RenderingServer.xml:3499
msgid "Output color as they came in."
msgstr ""
-#: doc/classes/RenderingServer.xml:3491
+#: doc/classes/RenderingServer.xml:3502
msgid "Use the Reinhard tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3494
+#: doc/classes/RenderingServer.xml:3505
msgid "Use the filmic tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3497
+#: doc/classes/RenderingServer.xml:3508
msgid "Use the ACES tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3508
+#: doc/classes/RenderingServer.xml:3519
msgid "Disables the blur set for SSAO. Will make SSAO look noisier."
msgstr ""
-#: doc/classes/RenderingServer.xml:3511
+#: doc/classes/RenderingServer.xml:3522
msgid "Perform a 1x1 blur on the SSAO output."
msgstr ""
-#: doc/classes/RenderingServer.xml:3514
+#: doc/classes/RenderingServer.xml:3525
msgid "Performs a 2x2 blur on the SSAO output."
msgstr ""
-#: doc/classes/RenderingServer.xml:3517
+#: doc/classes/RenderingServer.xml:3528
msgid "Performs a 3x3 blur on the SSAO output. Use this for smoothest SSAO."
msgstr ""
-#: doc/classes/RenderingServer.xml:3520
+#: doc/classes/RenderingServer.xml:3531
msgid "Lowest quality of screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3523
+#: doc/classes/RenderingServer.xml:3534
msgid "Medium quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3526
+#: doc/classes/RenderingServer.xml:3537
msgid "High quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3529
+#: doc/classes/RenderingServer.xml:3540
msgid "Highest quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3540
+#: doc/classes/RenderingServer.xml:3551
msgid ""
"Lowest quality DOF blur. This is the fastest setting, but you may be able to "
"see filtering artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3543
+#: doc/classes/RenderingServer.xml:3554
msgid "Low quality DOF blur."
msgstr ""
-#: doc/classes/RenderingServer.xml:3546
+#: doc/classes/RenderingServer.xml:3557
msgid "Medium quality DOF blur."
msgstr ""
-#: doc/classes/RenderingServer.xml:3549
+#: doc/classes/RenderingServer.xml:3560
msgid ""
"Highest quality DOF blur. Results in the smoothest looking blur by taking "
"the most samples, but is also significantly slower."
msgstr ""
-#: doc/classes/RenderingServer.xml:3552
+#: doc/classes/RenderingServer.xml:3563
msgid ""
"Calculate the DOF blur using a box filter. The fastest option, but results "
"in obvious lines in blur pattern."
msgstr ""
-#: doc/classes/RenderingServer.xml:3555
+#: doc/classes/RenderingServer.xml:3566
msgid "Calculates DOF blur using a hexagon shaped filter."
msgstr ""
-#: doc/classes/RenderingServer.xml:3558
+#: doc/classes/RenderingServer.xml:3569
msgid ""
"Calculates DOF blur using a circle shaped filter. Best quality and most "
"realistic, but slowest. Use only for areas where a lot of performance can be "
"dedicated to post-processing (e.g. cutscenes)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3573
+#: doc/classes/RenderingServer.xml:3584
msgid "Do not use a debug mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:3576
+#: doc/classes/RenderingServer.xml:3587
msgid "Draw all objects as wireframe models."
msgstr ""
-#: doc/classes/RenderingServer.xml:3579
+#: doc/classes/RenderingServer.xml:3590
msgid ""
"Draw all objects in a way that displays how much overdraw is occurring. "
"Overdraw occurs when a section of pixels is drawn and shaded and then "
"another object covers it up. To optimize a scene, you should reduce overdraw."
msgstr ""
-#: doc/classes/RenderingServer.xml:3582
+#: doc/classes/RenderingServer.xml:3593
msgid ""
"Draw all objects without shading. Equivalent to setting all objects shaders "
"to [code]unshaded[/code]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3585
+#: doc/classes/RenderingServer.xml:3596
msgid "The instance does not have a type."
msgstr ""
-#: doc/classes/RenderingServer.xml:3588
+#: doc/classes/RenderingServer.xml:3599
msgid "The instance is a mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:3591
+#: doc/classes/RenderingServer.xml:3602
msgid "The instance is a multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:3594
+#: doc/classes/RenderingServer.xml:3605
msgid "The instance is an immediate geometry."
msgstr ""
-#: doc/classes/RenderingServer.xml:3597
+#: doc/classes/RenderingServer.xml:3608
msgid "The instance is a particle emitter."
msgstr ""
-#: doc/classes/RenderingServer.xml:3600
+#: doc/classes/RenderingServer.xml:3611
msgid "The instance is a light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3603
+#: doc/classes/RenderingServer.xml:3614
msgid "The instance is a reflection probe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3606
+#: doc/classes/RenderingServer.xml:3617
msgid "The instance is a decal."
msgstr ""
-#: doc/classes/RenderingServer.xml:3609
+#: doc/classes/RenderingServer.xml:3620
msgid "The instance is a GI probe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3612
+#: doc/classes/RenderingServer.xml:3623
msgid "The instance is a lightmap."
msgstr ""
-#: doc/classes/RenderingServer.xml:3615
+#: doc/classes/RenderingServer.xml:3626
msgid "Represents the size of the [enum InstanceType] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3618
+#: doc/classes/RenderingServer.xml:3629
msgid ""
"A combination of the flags of geometry instances (mesh, multimesh, immediate "
"and particles)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3621
+#: doc/classes/RenderingServer.xml:3632
msgid "Allows the instance to be used in baked lighting."
msgstr ""
-#: doc/classes/RenderingServer.xml:3624
+#: doc/classes/RenderingServer.xml:3635
msgid "Allows the instance to be used with dynamic global illumination."
msgstr ""
-#: doc/classes/RenderingServer.xml:3627
+#: doc/classes/RenderingServer.xml:3638
msgid "When set, manually requests to draw geometry on next frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3630
+#: doc/classes/RenderingServer.xml:3641
msgid "Represents the size of the [enum InstanceFlags] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3633
+#: doc/classes/RenderingServer.xml:3644
msgid "Disable shadows from this instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:3636
+#: doc/classes/RenderingServer.xml:3647
msgid "Cast shadows from this instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:3639
+#: doc/classes/RenderingServer.xml:3650
msgid ""
"Disable backface culling when rendering the shadow of the object. This is "
"slightly slower but may result in more correct shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3642
+#: doc/classes/RenderingServer.xml:3653
msgid ""
"Only render the shadows from the object. The object itself will not be drawn."
msgstr ""
-#: doc/classes/RenderingServer.xml:3645
+#: doc/classes/RenderingServer.xml:3656
msgid "The nine patch gets stretched where needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3648
+#: doc/classes/RenderingServer.xml:3659
msgid "The nine patch gets filled with tiles where needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3651
+#: doc/classes/RenderingServer.xml:3662
msgid ""
"The nine patch gets filled with tiles where needed and stretches them a bit "
"if needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3654
+#: doc/classes/RenderingServer.xml:3665
msgid "Uses the default filter mode for this [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3666 doc/classes/Viewport.xml:399
+#: doc/classes/RenderingServer.xml:3677 doc/classes/Viewport.xml:402
msgid ""
"The texture filter blends between the nearest 4 pixels and between the "
"nearest 2 mipmaps."
msgstr ""
-#: doc/classes/RenderingServer.xml:3675
+#: doc/classes/RenderingServer.xml:3686
msgid "Max value for [enum CanvasItemTextureFilter] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3678
+#: doc/classes/RenderingServer.xml:3689
msgid "Uses the default repeat mode for this [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3681 doc/classes/Viewport.xml:405
+#: doc/classes/RenderingServer.xml:3692 doc/classes/Viewport.xml:408
msgid ""
"Disables textures repeating. Instead, when reading UVs outside the 0-1 "
"range, the value will be clamped to the edge of the texture, resulting in a "
"stretched out look at the borders of the texture."
msgstr ""
-#: doc/classes/RenderingServer.xml:3687 doc/classes/Viewport.xml:411
+#: doc/classes/RenderingServer.xml:3698 doc/classes/Viewport.xml:414
msgid ""
"Flip the texture when repeating so that the edge lines up instead of "
"abruptly changing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3690
+#: doc/classes/RenderingServer.xml:3701
msgid "Max value for [enum CanvasItemTextureRepeat] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3693
+#: doc/classes/RenderingServer.xml:3704
msgid "Adds light color additive to the canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:3696
+#: doc/classes/RenderingServer.xml:3707
msgid "Adds light color subtractive to the canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:3699
+#: doc/classes/RenderingServer.xml:3710
msgid "The light adds color depending on transparency."
msgstr ""
-#: doc/classes/RenderingServer.xml:3702
+#: doc/classes/RenderingServer.xml:3713
msgid "The light adds color depending on mask."
msgstr ""
-#: doc/classes/RenderingServer.xml:3705
+#: doc/classes/RenderingServer.xml:3716
msgid "Do not apply a filter to canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3708
+#: doc/classes/RenderingServer.xml:3719
msgid "Use PCF5 filtering to filter canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3711
+#: doc/classes/RenderingServer.xml:3722
msgid "Use PCF13 filtering to filter canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3714
+#: doc/classes/RenderingServer.xml:3725
msgid "Max value of the [enum CanvasLightShadowFilter] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3717
+#: doc/classes/RenderingServer.xml:3728
msgid "Culling of the canvas occluder is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3720
+#: doc/classes/RenderingServer.xml:3731
msgid "Culling of the canvas occluder is clockwise."
msgstr ""
-#: doc/classes/RenderingServer.xml:3723
+#: doc/classes/RenderingServer.xml:3734
msgid "Culling of the canvas occluder is counterclockwise."
msgstr ""
-#: doc/classes/RenderingServer.xml:3784
+#: doc/classes/RenderingServer.xml:3795
msgid "The amount of objects in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3787
+#: doc/classes/RenderingServer.xml:3798
msgid "The amount of vertices in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3790
+#: doc/classes/RenderingServer.xml:3801
msgid "The amount of modified materials in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3793
+#: doc/classes/RenderingServer.xml:3804
msgid "The amount of shader rebinds in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3796
+#: doc/classes/RenderingServer.xml:3807
msgid "The amount of surface changes in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3799
+#: doc/classes/RenderingServer.xml:3810
msgid "The amount of draw calls in frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3814
+#: doc/classes/RenderingServer.xml:3825
msgid "Hardware supports shaders. This enum is currently unused in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:3817
+#: doc/classes/RenderingServer.xml:3828
msgid ""
"Hardware supports multithreading. This enum is currently unused in Godot 3.x."
msgstr ""
@@ -43848,13 +44510,13 @@ msgstr ""
#: doc/classes/Resource.xml:7
msgid ""
"Resource is the base class for all Godot-specific resource types, serving "
-"primarily as data containers. They are reference counted and freed when no "
-"longer in use. They are also cached once loaded from disk, so that any "
-"further attempts to load a resource from a given path will return the same "
-"reference (all this in contrast to a [Node], which is not reference counted "
-"and can be instanced from disk as many times as desired). Resources can be "
-"saved externally on disk or bundled into another object, such as a [Node] or "
-"another resource."
+"primarily as data containers. Unlike [Object]s, they are reference-counted "
+"and freed when no longer in use. They are also cached once loaded from disk, "
+"so that any further attempts to load a resource from a given path will "
+"return the same reference (all this in contrast to a [Node], which is not "
+"reference-counted and can be instanced from disk as many times as desired). "
+"Resources can be saved externally on disk or bundled into another object, "
+"such as a [Node] or another resource."
msgstr ""
#: doc/classes/Resource.xml:10
@@ -43863,34 +44525,38 @@ msgid ""
"resources.html"
msgstr ""
-#: doc/classes/Resource.xml:17
+#: doc/classes/Resource.xml:18
msgid ""
"Virtual function which can be overridden to customize the behavior value of "
"[method setup_local_to_scene]."
msgstr ""
-#: doc/classes/Resource.xml:26
+#: doc/classes/Resource.xml:27
msgid ""
"Duplicates the resource, returning a new resource. By default, sub-resources "
-"are shared between resource copies for efficiency, this can be changed by "
-"passing [code]true[/code] to the [code]subresources[/code] argument."
+"are shared between resource copies for efficiency. This can be changed by "
+"passing [code]true[/code] to the [code]subresources[/code] argument which "
+"will copy the subresources.\n"
+"[b]Note:[/b] If [code]subresources[/code] is [code]true[/code], this method "
+"will only perform a shallow copy. Nested resources within subresources will "
+"not be duplicated and will still be shared."
msgstr ""
-#: doc/classes/Resource.xml:33
+#: doc/classes/Resource.xml:35
msgid ""
"If [member resource_local_to_scene] is enabled and the resource was loaded "
"from a [PackedScene] instantiation, returns the local scene where this "
"resource's unique copy is in use. Otherwise, returns [code]null[/code]."
msgstr ""
-#: doc/classes/Resource.xml:40
+#: doc/classes/Resource.xml:42
msgid ""
"Returns the RID of the resource (or an empty RID). Many resources (such as "
"[Texture2D], [Mesh], etc) are high-level abstractions of resources stored in "
"a server, so this function will return the original RID."
msgstr ""
-#: doc/classes/Resource.xml:47
+#: doc/classes/Resource.xml:49
msgid ""
"This method is called when a resource with [member resource_local_to_scene] "
"enabled is loaded from a [PackedScene] instantiation. Its behavior can be "
@@ -43900,7 +44566,7 @@ msgid ""
"local viewport."
msgstr ""
-#: doc/classes/Resource.xml:57
+#: doc/classes/Resource.xml:59
msgid ""
"Sets the path of the resource, potentially overriding an existing cache "
"entry for this path. This differs from setting [member resource_path], as "
@@ -43908,25 +44574,25 @@ msgid ""
"given path."
msgstr ""
-#: doc/classes/Resource.xml:63
+#: doc/classes/Resource.xml:65
msgid ""
"If [code]true[/code], the resource will be made unique in each instance of "
"its local scene. It can thus be modified in a scene instance without "
"impacting other instances of that same scene."
msgstr ""
-#: doc/classes/Resource.xml:66
+#: doc/classes/Resource.xml:68
msgid "The name of the resource. This is an optional identifier."
msgstr ""
-#: doc/classes/Resource.xml:69
+#: doc/classes/Resource.xml:71
msgid ""
"The path to the resource. In case it has its own file, it will return its "
"filepath. If it's tied to the scene, it will return the scene's path, "
"followed by the resource's index."
msgstr ""
-#: doc/classes/Resource.xml:75
+#: doc/classes/Resource.xml:77
msgid "Emitted whenever the resource changes."
msgstr ""
@@ -44745,11 +45411,11 @@ msgid ""
"global coordinate system, but is centered at the object's origin."
msgstr ""
-#: doc/classes/RigidBody2D.xml:87
+#: doc/classes/RigidBody2D.xml:87 doc/classes/RigidBody3D.xml:99
msgid ""
-"Returns a list of the bodies colliding with this one. Use [member "
-"contacts_reported] to set the maximum number reported. You must also set "
-"[member contact_monitor] to [code]true[/code].\n"
+"Returns a list of the bodies colliding with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
"For performance, list of collisions is updated once per frame and before the "
"physics step. Consider using signals instead."
@@ -44786,7 +45452,7 @@ msgstr ""
msgid "The body's total applied torque."
msgstr ""
-#: doc/classes/RigidBody2D.xml:130 doc/classes/RigidBody3D.xml:150
+#: doc/classes/RigidBody2D.xml:130 doc/classes/RigidBody3D.xml:157
msgid ""
"If [code]true[/code], the body can enter sleep mode when there is no "
"movement. See [member sleeping]."
@@ -44798,11 +45464,17 @@ msgid ""
"another RigidBody2D. See also [member contacts_reported]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:136
-msgid "The maximum number of contacts to report."
+#: doc/classes/RigidBody2D.xml:136 doc/classes/RigidBody3D.xml:163
+msgid ""
+"The maximum number of contacts that will be recorded. Requires [member "
+"contact_monitor] to be set to [code]true[/code].\n"
+"[b]Note:[/b] The number of contacts is different from the number of "
+"collisions. Collisions between parallel edges will result in two contacts "
+"(one at each end), and collisions between parallel faces will result in four "
+"contacts (one at each corner)."
msgstr ""
-#: doc/classes/RigidBody2D.xml:139
+#: doc/classes/RigidBody2D.xml:140
msgid ""
"Continuous collision detection mode.\n"
"Continuous collision detection tries to predict where a moving body will "
@@ -44812,21 +45484,21 @@ msgid ""
"methods are available. See [enum CCDMode] for details."
msgstr ""
-#: doc/classes/RigidBody2D.xml:143
+#: doc/classes/RigidBody2D.xml:144
msgid ""
"If [code]true[/code], internal force integration is disabled for this body. "
"Aside from collision response, the body will only move as determined by the "
"[method _integrate_forces] function."
msgstr ""
-#: doc/classes/RigidBody2D.xml:146
+#: doc/classes/RigidBody2D.xml:147
msgid ""
"Multiplies the gravity applied to the body. The body's gravity is calculated "
"from the [b]Default Gravity[/b] value in [b]Project > Project Settings > "
"Physics > 2d[/b] and/or any additional gravity vector applied by [Area2D]s."
msgstr ""
-#: doc/classes/RigidBody2D.xml:149
+#: doc/classes/RigidBody2D.xml:150
msgid ""
"The body's moment of inertia. This is like mass, but for rotation: it "
"determines how much torque it takes to rotate the body. The moment of "
@@ -44835,18 +45507,18 @@ msgid ""
"automatically computing it."
msgstr ""
-#: doc/classes/RigidBody2D.xml:152
+#: doc/classes/RigidBody2D.xml:153
msgid ""
"Damps the body's [member linear_velocity]. If [code]-1[/code], the body will "
"use the [b]Default Linear Damp[/b] in [b]Project > Project Settings > "
"Physics > 2d[/b]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:161
+#: doc/classes/RigidBody2D.xml:162
msgid "The body's mode. See [enum Mode] for possible values."
msgstr ""
-#: doc/classes/RigidBody2D.xml:164 doc/classes/RigidBody3D.xml:181
+#: doc/classes/RigidBody2D.xml:165 doc/classes/RigidBody3D.xml:189
#: doc/classes/StaticBody2D.xml:22 doc/classes/StaticBody3D.xml:22
msgid ""
"The physics material override for the body.\n"
@@ -44854,50 +45526,50 @@ msgid ""
"other physics material, such as an inherited one."
msgstr ""
-#: doc/classes/RigidBody2D.xml:168 doc/classes/RigidBody3D.xml:185
+#: doc/classes/RigidBody2D.xml:169 doc/classes/RigidBody3D.xml:193
msgid ""
"If [code]true[/code], the body will not move and will not calculate forces "
"until woken up by another body through, for example, a collision, or by "
"using the [method apply_impulse] or [method add_force] methods."
msgstr ""
-#: doc/classes/RigidBody2D.xml:171
+#: doc/classes/RigidBody2D.xml:172
msgid ""
"The body's weight based on its mass and the [b]Default Gravity[/b] value in "
"[b]Project > Project Settings > Physics > 2d[/b]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:179
+#: doc/classes/RigidBody2D.xml:180 doc/classes/RigidBody3D.xml:204
msgid ""
-"Emitted when a body enters into contact with this one. [member "
-"contact_monitor] must be [code]true[/code] and [member contacts_reported] "
-"greater than [code]0[/code]."
+"Emitted when a body enters into contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:186
+#: doc/classes/RigidBody2D.xml:187
msgid ""
-"Emitted when a body exits contact with this one. [member contact_monitor] "
-"must be [code]true[/code] and [member contacts_reported] greater than "
-"[code]0[/code]."
+"Emitted when a body exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:199
+#: doc/classes/RigidBody2D.xml:200
msgid ""
"Emitted when a body enters into contact with this one. Reports colliding "
"shape information. See [CollisionObject2D] for shape index information. "
-"[member contact_monitor] must be [code]true[/code] and [member "
-"contacts_reported] greater than [code]0[/code]."
+"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:212
+#: doc/classes/RigidBody2D.xml:213
msgid ""
"Emitted when a body shape exits contact with this one. Reports colliding "
"shape information. See [CollisionObject2D] for shape index information. "
-"[member contact_monitor] must be [code]true[/code] and [member "
-"contacts_reported] greater than [code]0[/code]."
+"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:217 doc/classes/RigidBody3D.xml:236
+#: doc/classes/RigidBody2D.xml:218 doc/classes/RigidBody3D.xml:244
msgid ""
"Emitted when the physics engine changes the body's sleeping state.\n"
"[b]Note:[/b] Changing the value [member sleeping] will not trigger this "
@@ -44905,41 +45577,41 @@ msgid ""
"engine or [code]emit_signal(\"sleeping_state_changed\")[/code] is used."
msgstr ""
-#: doc/classes/RigidBody2D.xml:224
+#: doc/classes/RigidBody2D.xml:225
msgid ""
"Rigid mode. The body behaves as a physical object. It collides with other "
"bodies and responds to forces applied to it. This is the default mode."
msgstr ""
-#: doc/classes/RigidBody2D.xml:227
+#: doc/classes/RigidBody2D.xml:228
msgid "Static mode. The body behaves like a [StaticBody2D] and does not move."
msgstr ""
-#: doc/classes/RigidBody2D.xml:230
+#: doc/classes/RigidBody2D.xml:231
msgid ""
"Character mode. Similar to [constant MODE_RIGID], but the body can not "
"rotate."
msgstr ""
-#: doc/classes/RigidBody2D.xml:233
+#: doc/classes/RigidBody2D.xml:234
msgid ""
"Kinematic mode. The body behaves like a [KinematicBody2D], and must be moved "
"by code."
msgstr ""
-#: doc/classes/RigidBody2D.xml:236
+#: doc/classes/RigidBody2D.xml:237
msgid ""
"Continuous collision detection disabled. This is the fastest way to detect "
"body collisions, but can miss small, fast-moving objects."
msgstr ""
-#: doc/classes/RigidBody2D.xml:239
+#: doc/classes/RigidBody2D.xml:240
msgid ""
"Continuous collision detection enabled using raycasting. This is faster than "
"shapecasting but less precise."
msgstr ""
-#: doc/classes/RigidBody2D.xml:242
+#: doc/classes/RigidBody2D.xml:243
msgid ""
"Continuous collision detection enabled using shapecasting. This is the "
"slowest CCD method and the most precise."
@@ -45025,42 +45697,31 @@ msgid ""
"locked."
msgstr ""
-#: doc/classes/RigidBody3D.xml:99
+#: doc/classes/RigidBody3D.xml:107
msgid ""
-"Returns a list of the bodies colliding with this one. By default, number of "
-"max contacts reported is at 0, see the [member contacts_reported] property "
-"to increase it.\n"
-"[b]Note:[/b] The result of this test is not immediate after moving objects. "
-"For performance, list of collisions is updated once per frame and before the "
-"physics step. Consider using signals instead."
+"Returns the inverse inertia tensor basis. This is used to calculate the "
+"angular acceleration resulting from a torque applied to the [RigidBody3D]."
msgstr ""
-#: doc/classes/RigidBody3D.xml:111
+#: doc/classes/RigidBody3D.xml:118
msgid "Locks the specified linear or rotational axis."
msgstr ""
-#: doc/classes/RigidBody3D.xml:126
+#: doc/classes/RigidBody3D.xml:133
msgid "Damps RigidBody3D's rotational forces."
msgstr ""
-#: doc/classes/RigidBody3D.xml:129
+#: doc/classes/RigidBody3D.xml:136
msgid "RigidBody3D's rotational velocity."
msgstr ""
-#: doc/classes/RigidBody3D.xml:153
+#: doc/classes/RigidBody3D.xml:160
msgid ""
"If [code]true[/code], the RigidBody3D will emit signals when it collides "
-"with another RigidBody3D."
+"with another RigidBody3D. See also [member contacts_reported]."
msgstr ""
-#: doc/classes/RigidBody3D.xml:156
-msgid ""
-"The maximum contacts to report. Bodies can keep a log of the contacts with "
-"other bodies, this is enabled by setting the maximum amount of contacts "
-"reported to a number greater than 0."
-msgstr ""
-
-#: doc/classes/RigidBody3D.xml:159
+#: doc/classes/RigidBody3D.xml:167
msgid ""
"If [code]true[/code], continuous collision detection is used.\n"
"Continuous collision detection tries to predict where a moving body will "
@@ -45070,7 +45731,7 @@ msgid ""
"faster to compute, but can miss small, fast-moving objects."
msgstr ""
-#: doc/classes/RigidBody3D.xml:163
+#: doc/classes/RigidBody3D.xml:171
msgid ""
"If [code]true[/code], internal force integration will be disabled (like "
"gravity or air friction) for this body. Other than collision response, the "
@@ -45078,7 +45739,7 @@ msgid ""
"function, if defined."
msgstr ""
-#: doc/classes/RigidBody3D.xml:166
+#: doc/classes/RigidBody3D.xml:174
msgid ""
"This is multiplied by the global 3D gravity setting found in [b]Project > "
"Project Settings > Physics > 3d[/b] to produce RigidBody3D's gravity. For "
@@ -45086,14 +45747,14 @@ msgid ""
"and 0.5 will apply half gravity to this object."
msgstr ""
-#: doc/classes/RigidBody3D.xml:169
+#: doc/classes/RigidBody3D.xml:177
msgid ""
"The body's linear damp. Cannot be less than -1.0. If this value is different "
"from -1.0, any linear damp derived from the world or areas will be "
"overridden."
msgstr ""
-#: doc/classes/RigidBody3D.xml:172
+#: doc/classes/RigidBody3D.xml:180
msgid ""
"The body's linear velocity. Can be used sporadically, but [b]don't set this "
"every frame[/b], because physics may run in another thread and runs at a "
@@ -45101,60 +45762,57 @@ msgid ""
"for precise control of the body state."
msgstr ""
-#: doc/classes/RigidBody3D.xml:178
+#: doc/classes/RigidBody3D.xml:186
msgid "The body mode. See [enum Mode] for possible values."
msgstr ""
-#: doc/classes/RigidBody3D.xml:196
-msgid ""
-"Emitted when a body enters into contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work."
-msgstr ""
-
-#: doc/classes/RigidBody3D.xml:203
+#: doc/classes/RigidBody3D.xml:211
msgid ""
-"Emitted when a body shape exits contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work."
+"Emitted when a body shape exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody3D.xml:216
+#: doc/classes/RigidBody3D.xml:224
msgid ""
-"Emitted when a body enters into contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work.\n"
+"Emitted when a body enters into contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"This signal not only receives the body that collided with this one, but also "
"its [RID] ([code]body_id[/code]), the shape index from the colliding body "
"([code]body_shape[/code]), and the shape index from this body "
"([code]local_shape[/code]) the other body collided with."
msgstr ""
-#: doc/classes/RigidBody3D.xml:230
+#: doc/classes/RigidBody3D.xml:238
msgid ""
-"Emitted when a body shape exits contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work.\n"
+"Emitted when a body shape exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"This signal not only receives the body that stopped colliding with this one, "
"but also its [RID] ([code]body_id[/code]), the shape index from the "
"colliding body ([code]body_shape[/code]), and the shape index from this body "
"([code]local_shape[/code]) the other body stopped colliding with."
msgstr ""
-#: doc/classes/RigidBody3D.xml:243
+#: doc/classes/RigidBody3D.xml:251
msgid ""
"Rigid body mode. This is the \"natural\" state of a rigid body. It is "
"affected by forces, and can move, rotate, and be affected by user code."
msgstr ""
-#: doc/classes/RigidBody3D.xml:246
+#: doc/classes/RigidBody3D.xml:254
msgid ""
"Static mode. The body behaves like a [StaticBody3D], and can only move by "
"user code."
msgstr ""
-#: doc/classes/RigidBody3D.xml:249
+#: doc/classes/RigidBody3D.xml:257
msgid ""
"Character body mode. This behaves like a rigid body, but can not rotate."
msgstr ""
-#: doc/classes/RigidBody3D.xml:252
+#: doc/classes/RigidBody3D.xml:260
msgid ""
"Kinematic body mode. The body behaves like a [KinematicBody3D], and can only "
"move by user code."
@@ -45661,7 +46319,7 @@ msgstr ""
msgid "The time remaining."
msgstr ""
-#: doc/classes/SceneTreeTimer.xml:28 doc/classes/Timer.xml:62
+#: doc/classes/SceneTreeTimer.xml:28 doc/classes/Timer.xml:63
msgid "Emitted when the timer reaches 0."
msgstr ""
@@ -45784,27 +46442,27 @@ msgid ""
"the singleton using [method EditorInterface.get_script_editor]."
msgstr ""
-#: doc/classes/ScriptEditor.xml:40
+#: doc/classes/ScriptEditor.xml:46
msgid "Returns a [Script] that is currently active in editor."
msgstr ""
-#: doc/classes/ScriptEditor.xml:57
+#: doc/classes/ScriptEditor.xml:69
msgid ""
"Returns an array with all [Script] objects which are currently open in "
"editor."
msgstr ""
-#: doc/classes/ScriptEditor.xml:66
+#: doc/classes/ScriptEditor.xml:78
msgid "Goes to the specified line in the current script."
msgstr ""
-#: doc/classes/ScriptEditor.xml:85
+#: doc/classes/ScriptEditor.xml:113
msgid ""
"Emitted when user changed active script. Argument is a freshly activated "
"[Script]."
msgstr ""
-#: doc/classes/ScriptEditor.xml:92
+#: doc/classes/ScriptEditor.xml:120
msgid ""
"Emitted when editor is about to close the active script. Argument is a "
"[Script] that is going to be closed."
@@ -45866,7 +46524,7 @@ msgid ""
"visible."
msgstr ""
-#: doc/classes/ScrollContainer.xml:37 doc/classes/TextEdit.xml:453
+#: doc/classes/ScrollContainer.xml:37 doc/classes/TextEdit.xml:407
msgid "The current horizontal scroll value."
msgstr ""
@@ -45874,7 +46532,7 @@ msgstr ""
msgid "If [code]true[/code], enables horizontal scrolling."
msgstr ""
-#: doc/classes/ScrollContainer.xml:43 doc/classes/TextEdit.xml:456
+#: doc/classes/ScrollContainer.xml:43 doc/classes/TextEdit.xml:410
msgid "The current vertical scroll value."
msgstr ""
@@ -46393,7 +47051,7 @@ msgstr ""
msgid ""
"Sets the global pose transform, [code]pose[/code], for the bone at "
"[code]bone_idx[/code].\n"
-"[code]amount[/code] is the interpolation strengh that will be used when "
+"[code]amount[/code] is the interpolation strength that will be used when "
"applying the pose, and [code]persistent[/code] determines if the applied "
"pose will remain.\n"
"[b]Note[/b]: The pose transform needs to be in bone space. Use [method "
@@ -46410,7 +47068,7 @@ msgstr ""
#: doc/classes/Skeleton3D.xml:266
msgid ""
-"Returns the pose transform for bone [code]bone_idx[/code].\n"
+"Sets the pose transform for bone [code]bone_idx[/code].\n"
"[b]Note[/b]: The pose transform needs to be in bone space. Use [method "
"world_transform_to_bone_transform] to convert a world transform, like one "
"you can get from a [Node3D], to bone space."
@@ -46503,6 +47161,16 @@ msgstr ""
#: doc/classes/Sky.xml:52
msgid ""
+"Automatically selects the appropriate process mode based on your sky shader. "
+"If your shader uses [code]TIME[/code] or [code]POSITION[/code], this will "
+"use [constant PROCESS_MODE_REALTIME]. If your shader uses any of the "
+"[code]LIGHT_*[/code] variables or any custom uniforms, this uses [constant "
+"PROCESS_MODE_INCREMENTAL]. Otherwise, this defaults to [constant "
+"PROCESS_MODE_QUALITY]."
+msgstr ""
+
+#: doc/classes/Sky.xml:55
+msgid ""
"Uses high quality importance sampling to process the radiance map. In "
"general, this results in much higher quality than [constant "
"PROCESS_MODE_REALTIME] but takes much longer to generate. This should not be "
@@ -46512,10 +47180,22 @@ msgid ""
"ggx_samples]."
msgstr ""
-#: doc/classes/Sky.xml:55
+#: doc/classes/Sky.xml:58
+msgid ""
+"Uses the same high quality importance sampling to process the radiance map "
+"as [constant PROCESS_MODE_QUALITY], but updates over several frames. The "
+"number of frames is determined by [member ProjectSettings.rendering/quality/"
+"reflections/roughness_layers]. Use this when you need highest quality "
+"radiance maps, but have a sky that updates slowly."
+msgstr ""
+
+#: doc/classes/Sky.xml:61
msgid ""
"Uses the fast filtering algorithm to process the radiance map. In general "
-"this results in lower quality, but substantially faster run times.\n"
+"this results in lower quality, but substantially faster run times. If you "
+"need better quality, but still need to update the sky every frame, consider "
+"turning on [member ProjectSettings.rendering/quality/reflections/"
+"fast_filter_high_quality].\n"
"[b]Note:[/b] The fast filtering algorithm is limited to 256x256 cubemaps, so "
"[member radiance_size] must be set to [constant RADIANCE_SIZE_256]."
msgstr ""
@@ -46852,9 +47532,7 @@ msgid ""
msgstr ""
#: doc/classes/SpringArm3D.xml:35
-msgid ""
-"Returns the proportion between the current arm length (after checking for "
-"collisions) and the [member spring_length]. Ranges from 0 to 1."
+msgid "Returns the spring arm's current length."
msgstr ""
#: doc/classes/SpringArm3D.xml:44
@@ -47550,7 +48228,7 @@ msgstr ""
msgid ""
"This is the built-in string class (and the one used by GDScript). It "
"supports Unicode and provides all necessary means for string handling. "
-"Strings are reference counted and use a copy-on-write approach, so passing "
+"Strings are reference-counted and use a copy-on-write approach, so passing "
"them around is cheap in resources."
msgstr ""
@@ -47705,26 +48383,32 @@ msgstr ""
#: doc/classes/String.xml:328
msgid ""
"Returns a copy of the string with escaped characters replaced by their "
-"meanings according to the C language standard."
+"meanings. Supported escape sequences are [code]\\'[/code], [code]\\\"[/"
+"code], [code]\\?[/code], [code]\\\\[/code], [code]\\a[/code], [code]\\b[/"
+"code], [code]\\f[/code], [code]\\n[/code], [code]\\r[/code], [code]\\t[/"
+"code], [code]\\v[/code].\n"
+"[b]Note:[/b] Unlike the GDScript parser, this method doesn't support the "
+"[code]\\uXXXX[/code] escape sequence."
msgstr ""
-#: doc/classes/String.xml:335
+#: doc/classes/String.xml:336
msgid ""
-"Changes the case of some letters. Replaces underscores with spaces, converts "
-"all letters to lowercase, then capitalizes first and every letter following "
-"the space character. For [code]capitalize camelCase mixed_with_underscores[/"
-"code], it will return [code]Capitalize Camelcase Mixed With Underscores[/"
+"Changes the case of some letters. Replaces underscores with spaces, adds "
+"spaces before in-word uppercase characters, converts all letters to "
+"lowercase, then capitalizes the first letter and every letter following a "
+"space character. For [code]capitalize camelCase mixed_with_underscores[/"
+"code], it will return [code]Capitalize Camel Case Mixed With Underscores[/"
"code]."
msgstr ""
-#: doc/classes/String.xml:344
+#: doc/classes/String.xml:345
msgid ""
"Performs a case-sensitive comparison to another string. Returns [code]-1[/"
"code] if less than, [code]+1[/code] if greater than, or [code]0[/code] if "
"equal."
msgstr ""
-#: doc/classes/String.xml:357
+#: doc/classes/String.xml:358
msgid ""
"Returns the number of occurrences of substring [code]what[/code] between "
"[code]from[/code] and [code]to[/code] positions. If [code]from[/code] and "
@@ -47732,7 +48416,7 @@ msgid ""
"code] equals 0 the remained substring will be used."
msgstr ""
-#: doc/classes/String.xml:370
+#: doc/classes/String.xml:371
msgid ""
"Returns the number of occurrences of substring [code]what[/code] (ignoring "
"case) between [code]from[/code] and [code]to[/code] positions. If "
@@ -47740,32 +48424,33 @@ msgid ""
"used. If only [code]to[/code] equals 0 the remained substring will be used."
msgstr ""
-#: doc/classes/String.xml:377
+#: doc/classes/String.xml:378
msgid ""
"Returns a copy of the string with indentation (leading tabs and spaces) "
"removed."
msgstr ""
-#: doc/classes/String.xml:384
+#: doc/classes/String.xml:385
msgid ""
"Returns [code]true[/code] if the length of the string equals [code]0[/code]."
msgstr ""
-#: doc/classes/String.xml:393
+#: doc/classes/String.xml:394
msgid "Returns [code]true[/code] if the string ends with the given string."
msgstr ""
-#: doc/classes/String.xml:404
+#: doc/classes/String.xml:405
msgid ""
"Erases [code]chars[/code] characters from the string starting from "
"[code]position[/code]."
msgstr ""
-#: doc/classes/String.xml:415
+#: doc/classes/String.xml:416
msgid ""
-"Finds the first occurrence of a substring. Returns the starting position of "
-"the substring or [code]-1[/code] if not found. Optionally, the initial "
-"search index can be passed.\n"
+"Returns the index of the [b]first[/b] case-sensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the end of the "
+"string.\n"
"[b]Note:[/b] If you just want to know whether a string contains a substring, "
"use the [code]in[/code] operator as follows:\n"
"[codeblock]\n"
@@ -47775,48 +48460,42 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:430
+#: doc/classes/String.xml:433
msgid ""
-"Finds the last occurrence of a substring. Returns the starting position of "
-"the substring or [code]-1[/code] if not found."
+"Returns the index of the [b]first[/b] case-insensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the end of the string."
msgstr ""
-#: doc/classes/String.xml:441
-msgid ""
-"Finds the first occurrence of a substring, ignoring case. Returns the "
-"starting position of the substring or [code]-1[/code] if not found. "
-"Optionally, the initial search index can be passed."
-msgstr ""
-
-#: doc/classes/String.xml:452
+#: doc/classes/String.xml:444
msgid ""
"Formats the string by replacing all occurrences of [code]placeholder[/code] "
"with [code]values[/code]."
msgstr ""
-#: doc/classes/String.xml:459
+#: doc/classes/String.xml:451
msgid "If the string is a valid file path, returns the base directory name."
msgstr ""
-#: doc/classes/String.xml:466
+#: doc/classes/String.xml:458
msgid ""
"If the string is a valid file path, returns the full file path without the "
"extension."
msgstr ""
-#: doc/classes/String.xml:473
+#: doc/classes/String.xml:465
msgid "If the string is a valid file path, returns the extension."
msgstr ""
-#: doc/classes/String.xml:480
+#: doc/classes/String.xml:472
msgid "If the string is a valid file path, returns the filename."
msgstr ""
-#: doc/classes/String.xml:487
+#: doc/classes/String.xml:479
msgid "Hashes the string and returns a 32-bit integer."
msgstr ""
-#: doc/classes/String.xml:494
+#: doc/classes/String.xml:486
msgid ""
"Converts a string containing a hexadecimal number into an integer. "
"Hexadecimal strings are expected to be prefixed with \"[code]0x[/code]\" "
@@ -47826,7 +48505,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:504
+#: doc/classes/String.xml:496
msgid ""
"Escapes (encodes) a string to URL friendly format. Also referred to as 'URL "
"encode'.\n"
@@ -47836,7 +48515,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:514
+#: doc/classes/String.xml:506
msgid ""
"Unescapes (decodes) a string in URL encoded format. Also referred to as 'URL "
"decode'.\n"
@@ -47846,7 +48525,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:526
+#: doc/classes/String.xml:518
msgid ""
"Converts [code]size[/code] represented as number of bytes to human-readable "
"format using internationalized set of data size units, namely: B, KiB, MiB, "
@@ -47859,48 +48538,48 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:542
+#: doc/classes/String.xml:534
msgid ""
"Returns a copy of the string with the substring [code]what[/code] inserted "
"at the given position."
msgstr ""
-#: doc/classes/String.xml:549
+#: doc/classes/String.xml:541
msgid ""
"If the string is a path to a file or directory, returns [code]true[/code] if "
"the path is absolute."
msgstr ""
-#: doc/classes/String.xml:556
+#: doc/classes/String.xml:548
msgid ""
"If the string is a path to a file or directory, returns [code]true[/code] if "
"the path is relative."
msgstr ""
-#: doc/classes/String.xml:565
+#: doc/classes/String.xml:557
msgid ""
"Returns [code]true[/code] if this string is a subsequence of the given "
"string."
msgstr ""
-#: doc/classes/String.xml:574
+#: doc/classes/String.xml:566
msgid ""
"Returns [code]true[/code] if this string is a subsequence of the given "
"string, without considering case."
msgstr ""
-#: doc/classes/String.xml:581
+#: doc/classes/String.xml:573
msgid ""
"Returns [code]true[/code] if this string is free from characters that aren't "
"allowed in file names, those being:\n"
"[code]: / \\ ? * \" | % < >[/code]"
msgstr ""
-#: doc/classes/String.xml:589
+#: doc/classes/String.xml:581
msgid "Returns [code]true[/code] if this string contains a valid float."
msgstr ""
-#: doc/classes/String.xml:598
+#: doc/classes/String.xml:590
msgid ""
"Returns [code]true[/code] if this string contains a valid hexadecimal "
"number. If [code]with_prefix[/code] is [code]true[/code], then a validity of "
@@ -47908,7 +48587,7 @@ msgid ""
"instance: [code]0xDEADC0DE[/code]."
msgstr ""
-#: doc/classes/String.xml:605
+#: doc/classes/String.xml:597
msgid ""
"Returns [code]true[/code] if this string contains a valid color in "
"hexadecimal HTML notation. Other HTML notations such as named colors or "
@@ -47916,22 +48595,22 @@ msgid ""
"return [code]false[/code]."
msgstr ""
-#: doc/classes/String.xml:612
+#: doc/classes/String.xml:604
msgid ""
"Returns [code]true[/code] if this string is a valid identifier. A valid "
"identifier may contain only letters, digits and underscores ([code]_[/code]) "
"and the first character may not be a digit."
msgstr ""
-#: doc/classes/String.xml:619
+#: doc/classes/String.xml:611
msgid "Returns [code]true[/code] if this string contains a valid integer."
msgstr ""
-#: doc/classes/String.xml:626
+#: doc/classes/String.xml:618
msgid "Returns [code]true[/code] if this string contains a valid IP address."
msgstr ""
-#: doc/classes/String.xml:635
+#: doc/classes/String.xml:627
msgid ""
"Return a [String] which is the concatenation of the [code]parts[/code]. The "
"separator between elements is the string providing this method.\n"
@@ -47941,121 +48620,125 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:646
+#: doc/classes/String.xml:638
msgid ""
"Returns a copy of the string with special characters escaped using the JSON "
"standard."
msgstr ""
-#: doc/classes/String.xml:655
+#: doc/classes/String.xml:647
msgid "Returns a number of characters from the left of the string."
msgstr ""
-#: doc/classes/String.xml:662
+#: doc/classes/String.xml:654
msgid "Returns the string's amount of characters."
msgstr ""
-#: doc/classes/String.xml:671
+#: doc/classes/String.xml:663
msgid "Returns a copy of the string with characters removed from the left."
msgstr ""
-#: doc/classes/String.xml:680
+#: doc/classes/String.xml:672
msgid ""
"Does a simple case-sensitive expression match, where [code]\"*\"[/code] "
"matches zero or more arbitrary characters and [code]\"?\"[/code] matches any "
"single character except a period ([code]\".\"[/code])."
msgstr ""
-#: doc/classes/String.xml:689
+#: doc/classes/String.xml:681
msgid ""
"Does a simple case-insensitive expression match, where [code]\"*\"[/code] "
"matches zero or more arbitrary characters and [code]\"?\"[/code] matches any "
"single character except a period ([code]\".\"[/code])."
msgstr ""
-#: doc/classes/String.xml:696
+#: doc/classes/String.xml:688
msgid "Returns the MD5 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:703
+#: doc/classes/String.xml:695
msgid "Returns the MD5 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:712
+#: doc/classes/String.xml:704
msgid ""
"Performs a case-insensitive comparison to another string. Returns [code]-1[/"
"code] if less than, [code]+1[/code] if greater than, or [code]0[/code] if "
"equal."
msgstr ""
-#: doc/classes/String.xml:721
+#: doc/classes/String.xml:713
msgid "Returns the character code at position [code]at[/code]."
msgstr ""
-#: doc/classes/String.xml:730
+#: doc/classes/String.xml:722
msgid ""
"Formats a number to have an exact number of [code]digits[/code] after the "
"decimal point."
msgstr ""
-#: doc/classes/String.xml:739
+#: doc/classes/String.xml:731
msgid ""
"Formats a number to have an exact number of [code]digits[/code] before the "
"decimal point."
msgstr ""
-#: doc/classes/String.xml:746
+#: doc/classes/String.xml:738
msgid "Decode a percent-encoded string. See [method percent_encode]."
msgstr ""
-#: doc/classes/String.xml:753
+#: doc/classes/String.xml:745
msgid ""
"Percent-encodes a string. Encodes parameters in a URL when sending a HTTP "
"GET request (and bodies of form-urlencoded POST requests)."
msgstr ""
-#: doc/classes/String.xml:762
+#: doc/classes/String.xml:754
msgid ""
"If the string is a path, this concatenates [code]file[/code] at the end of "
"the string as a subpath. E.g. [code]\"this/is\".plus_file(\"path\") == "
"\"this/is/path\"[/code]."
msgstr ""
-#: doc/classes/String.xml:771
+#: doc/classes/String.xml:763
msgid ""
"Returns original string repeated a number of times. The number of "
"repetitions is given by the argument."
msgstr ""
-#: doc/classes/String.xml:782
+#: doc/classes/String.xml:774
msgid ""
"Replaces occurrences of a case-sensitive substring with the given one inside "
"the string."
msgstr ""
-#: doc/classes/String.xml:793
+#: doc/classes/String.xml:785
msgid ""
"Replaces occurrences of a case-insensitive substring with the given one "
"inside the string."
msgstr ""
-#: doc/classes/String.xml:804
+#: doc/classes/String.xml:796
msgid ""
-"Performs a case-sensitive search for a substring, but starts from the end of "
-"the string instead of the beginning."
+"Returns the index of the [b]last[/b] case-sensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the beginning of the "
+"string."
msgstr ""
-#: doc/classes/String.xml:815
+#: doc/classes/String.xml:807
msgid ""
-"Performs a case-insensitive search for a substring, but starts from the end "
-"of the string instead of the beginning."
+"Returns the index of the [b]last[/b] case-insensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the beginning of the "
+"string."
msgstr ""
-#: doc/classes/String.xml:824
+#: doc/classes/String.xml:816
msgid "Returns the right side of the string from a given position."
msgstr ""
-#: doc/classes/String.xml:837
+#: doc/classes/String.xml:829
msgid ""
"Splits the string by a [code]delimiter[/code] string and returns an array of "
"the substrings, starting from right.\n"
@@ -48074,39 +48757,39 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:856
+#: doc/classes/String.xml:848
msgid "Returns a copy of the string with characters removed from the right."
msgstr ""
-#: doc/classes/String.xml:863
+#: doc/classes/String.xml:855
msgid "Returns the SHA-1 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:870
+#: doc/classes/String.xml:862
msgid "Returns the SHA-1 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:877
+#: doc/classes/String.xml:869
msgid "Returns the SHA-256 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:884
+#: doc/classes/String.xml:876
msgid "Returns the SHA-256 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:893
+#: doc/classes/String.xml:885
msgid ""
"Returns the similarity index of the text compared to this string. 1 means "
"totally similar and 0 means totally dissimilar."
msgstr ""
-#: doc/classes/String.xml:906
+#: doc/classes/String.xml:898
msgid ""
"Splits the string by a [code]delimiter[/code] string and returns an array of "
-"the substrings.\n"
+"the substrings. The [code]delimiter[/code] can be of any length.\n"
"If [code]maxsplit[/code] is specified, it defines the number of splits to do "
-"from the left up to [code]maxsplit[/code]. The default value of 0 means that "
-"all items are split.\n"
+"from the left up to [code]maxsplit[/code]. The default value of [code]0[/"
+"code] means that all items are split.\n"
"Example:\n"
"[codeblock]\n"
"var some_string = \"One,Two,Three,Four\"\n"
@@ -48114,10 +48797,12 @@ msgid ""
"print(some_array.size()) # Prints 2\n"
"print(some_array[0]) # Prints \"One\"\n"
"print(some_array[1]) # Prints \"Two,Three,Four\"\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"If you need to split strings with more complex rules, use the [RegEx] class "
+"instead."
msgstr ""
-#: doc/classes/String.xml:926
+#: doc/classes/String.xml:919
msgid ""
"Splits the string in floats by using a delimiter string and returns an array "
"of the substrings.\n"
@@ -48125,7 +48810,7 @@ msgid ""
"split by [code]\",\"[/code]."
msgstr ""
-#: doc/classes/String.xml:938
+#: doc/classes/String.xml:931
msgid ""
"Returns a copy of the string stripped of any non-printable character "
"(including tabulations, spaces and line breaks) at the beginning and the "
@@ -48133,7 +48818,7 @@ msgid ""
"right edges respectively."
msgstr ""
-#: doc/classes/String.xml:945
+#: doc/classes/String.xml:938
msgid ""
"Returns a copy of the string stripped of any escape character. These include "
"all non-printable control characters of the first page of the ASCII table (< "
@@ -48141,14 +48826,14 @@ msgid ""
"code] and [code]\\r[/code]) characters, but not spaces."
msgstr ""
-#: doc/classes/String.xml:956
+#: doc/classes/String.xml:949
msgid ""
"Returns part of the string from the position [code]from[/code] with length "
"[code]len[/code]. Argument [code]len[/code] is optional and using [code]-1[/"
"code] will return remaining characters from given position."
msgstr ""
-#: doc/classes/String.xml:963
+#: doc/classes/String.xml:956
msgid ""
"Converts the String (which is a character array) to [PackedByteArray] (which "
"is an array of bytes). The conversion is faster compared to [method "
@@ -48156,25 +48841,25 @@ msgid ""
"ASCII characters."
msgstr ""
-#: doc/classes/String.xml:970
+#: doc/classes/String.xml:963
msgid ""
"Converts a string containing a decimal number into a [code]float[/code]."
msgstr ""
-#: doc/classes/String.xml:977
+#: doc/classes/String.xml:970
msgid ""
"Converts a string containing an integer number into an [code]int[/code]."
msgstr ""
-#: doc/classes/String.xml:984
+#: doc/classes/String.xml:977
msgid "Returns the string converted to lowercase."
msgstr ""
-#: doc/classes/String.xml:991
+#: doc/classes/String.xml:984
msgid "Returns the string converted to uppercase."
msgstr ""
-#: doc/classes/String.xml:998
+#: doc/classes/String.xml:991
msgid ""
"Converts the String (which is an array of characters) to [PackedByteArray] "
"(which is an array of bytes). The conversion is a bit slower than [method "
@@ -48182,25 +48867,25 @@ msgid ""
"this function over [method to_ascii]."
msgstr ""
-#: doc/classes/String.xml:1007
+#: doc/classes/String.xml:1000
msgid ""
"Removes a given string from the start if it starts with it or leaves the "
"string unchanged."
msgstr ""
-#: doc/classes/String.xml:1016
+#: doc/classes/String.xml:1009
msgid ""
"Removes a given string from the end if it ends with it or leaves the string "
"unchanged."
msgstr ""
-#: doc/classes/String.xml:1023
+#: doc/classes/String.xml:1016
msgid ""
"Returns a copy of the string with special characters escaped using the XML "
"standard."
msgstr ""
-#: doc/classes/String.xml:1030
+#: doc/classes/String.xml:1023
msgid ""
"Returns a copy of the string with escaped characters replaced by their "
"meanings according to the XML standard."
@@ -49432,50 +50117,42 @@ msgid ""
"undo/redo."
msgstr ""
-#: doc/classes/TextEdit.xml:24
-msgid "Adds color region (given the delimiters) and its colors."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:35
-msgid "Adds a [code]keyword[/code] and its [Color]."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:44
+#: doc/classes/TextEdit.xml:18
msgid ""
"Returns if the given line is foldable, that is, it has indented lines right "
"below it."
msgstr ""
-#: doc/classes/TextEdit.xml:57
+#: doc/classes/TextEdit.xml:25
msgid ""
-"Clears all custom syntax coloring information previously added with [method "
-"add_color_region] or [method add_keyword_color]."
+"Centers the viewport on the line the editing cursor is at. This also resets "
+"the [member scroll_horizontal] value to [code]0[/code]."
msgstr ""
-#: doc/classes/TextEdit.xml:64
+#: doc/classes/TextEdit.xml:32
msgid "Clears the undo history."
msgstr ""
-#: doc/classes/TextEdit.xml:71
+#: doc/classes/TextEdit.xml:39
msgid "Copy's the current text selection."
msgstr ""
-#: doc/classes/TextEdit.xml:78
+#: doc/classes/TextEdit.xml:46
msgid "Returns the column the editing cursor is at."
msgstr ""
-#: doc/classes/TextEdit.xml:85
+#: doc/classes/TextEdit.xml:53
msgid "Returns the line the editing cursor is at."
msgstr ""
-#: doc/classes/TextEdit.xml:96
+#: doc/classes/TextEdit.xml:64
msgid ""
"Moves the cursor at the specified [code]column[/code] index.\n"
"If [code]adjust_viewport[/code] is set to [code]true[/code], the viewport "
"will center at the cursor position after the move occurs."
msgstr ""
-#: doc/classes/TextEdit.xml:112
+#: doc/classes/TextEdit.xml:80
msgid ""
"Moves the cursor at the specified [code]line[/code] index.\n"
"If [code]adjust_viewport[/code] is set to [code]true[/code], the viewport "
@@ -49484,111 +50161,101 @@ msgid ""
"[code]line[/code] can be hidden using [method set_line_as_hidden]."
msgstr ""
-#: doc/classes/TextEdit.xml:121
+#: doc/classes/TextEdit.xml:89
msgid "Cut's the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:128
+#: doc/classes/TextEdit.xml:96
msgid "Deselects the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:135
+#: doc/classes/TextEdit.xml:103
msgid "Folds all lines that are possible to be folded (see [method can_fold])."
msgstr ""
-#: doc/classes/TextEdit.xml:144
+#: doc/classes/TextEdit.xml:112
msgid "Folds the given line, if possible (see [method can_fold])."
msgstr ""
-#: doc/classes/TextEdit.xml:151
+#: doc/classes/TextEdit.xml:119
msgid "Returns an array containing the line number of each breakpoint."
msgstr ""
-#: doc/classes/TextEdit.xml:160
-msgid "Returns the [Color] of the specified [code]keyword[/code]."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:169
+#: doc/classes/TextEdit.xml:128
msgid "Returns the text of a specific line."
msgstr ""
-#: doc/classes/TextEdit.xml:176
+#: doc/classes/TextEdit.xml:135
msgid "Returns the amount of total lines in the text."
msgstr ""
-#: doc/classes/TextEdit.xml:183
+#: doc/classes/TextEdit.xml:142
msgid ""
"Returns the [PopupMenu] of this [TextEdit]. By default, this menu is "
"displayed when right-clicking on the [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:190
+#: doc/classes/TextEdit.xml:149
msgid "Returns the selection begin column."
msgstr ""
-#: doc/classes/TextEdit.xml:197
+#: doc/classes/TextEdit.xml:156
msgid "Returns the selection begin line."
msgstr ""
-#: doc/classes/TextEdit.xml:204
+#: doc/classes/TextEdit.xml:163
msgid "Returns the text inside the selection."
msgstr ""
-#: doc/classes/TextEdit.xml:211
+#: doc/classes/TextEdit.xml:170
msgid "Returns the selection end column."
msgstr ""
-#: doc/classes/TextEdit.xml:218
+#: doc/classes/TextEdit.xml:177
msgid "Returns the selection end line."
msgstr ""
-#: doc/classes/TextEdit.xml:225
+#: doc/classes/TextEdit.xml:184
msgid "Returns a [String] text with the word under the mouse cursor location."
msgstr ""
-#: doc/classes/TextEdit.xml:234
-msgid ""
-"Returns whether the specified [code]keyword[/code] has a color set to it or "
-"not."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:243
+#: doc/classes/TextEdit.xml:193
msgid "Insert the specified text at the cursor position."
msgstr ""
-#: doc/classes/TextEdit.xml:252
+#: doc/classes/TextEdit.xml:202
msgid "Returns whether the line at the specified index is folded or not."
msgstr ""
-#: doc/classes/TextEdit.xml:261
+#: doc/classes/TextEdit.xml:211
msgid "Returns whether the line at the specified index is hidden or not."
msgstr ""
-#: doc/classes/TextEdit.xml:268
+#: doc/classes/TextEdit.xml:218
msgid "Returns [code]true[/code] if the selection is active."
msgstr ""
-#: doc/classes/TextEdit.xml:277
+#: doc/classes/TextEdit.xml:227
msgid ""
"Triggers a right-click menu action by the specified index. See [enum "
"MenuItems] for a list of available indexes."
msgstr ""
-#: doc/classes/TextEdit.xml:284
+#: doc/classes/TextEdit.xml:234
msgid "Paste the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:291
+#: doc/classes/TextEdit.xml:241
msgid "Perform redo operation."
msgstr ""
-#: doc/classes/TextEdit.xml:298
+#: doc/classes/TextEdit.xml:248
msgid ""
"Removes all the breakpoints. This will not fire the [signal "
"breakpoint_toggled] signal."
msgstr ""
-#: doc/classes/TextEdit.xml:313
+#: doc/classes/TextEdit.xml:263
msgid ""
"Perform a search inside the text. Search flags can be specified in the [enum "
"SearchFlags] enum.\n"
@@ -49604,244 +50271,265 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/TextEdit.xml:336
-msgid "Perform selection, from line/column to line/column."
+#: doc/classes/TextEdit.xml:286
+msgid ""
+"Perform selection, from line/column to line/column.\n"
+"If [member selecting_enabled] is [code]false[/code], no selection will occur."
msgstr ""
-#: doc/classes/TextEdit.xml:343
-msgid "Select all the text."
+#: doc/classes/TextEdit.xml:294
+msgid ""
+"Select all the text.\n"
+"If [member selecting_enabled] is [code]false[/code], no selection will occur."
msgstr ""
-#: doc/classes/TextEdit.xml:354
+#: doc/classes/TextEdit.xml:306
msgid "Sets the text for a specific line."
msgstr ""
-#: doc/classes/TextEdit.xml:365
+#: doc/classes/TextEdit.xml:317
msgid "If [code]true[/code], hides the line of the specified index."
msgstr ""
-#: doc/classes/TextEdit.xml:374
+#: doc/classes/TextEdit.xml:326
msgid "Toggle the folding of the code block at the given line."
msgstr ""
-#: doc/classes/TextEdit.xml:381
+#: doc/classes/TextEdit.xml:333
msgid "Perform undo operation."
msgstr ""
-#: doc/classes/TextEdit.xml:390
+#: doc/classes/TextEdit.xml:342
msgid "Unfolds the given line, if folded."
msgstr ""
-#: doc/classes/TextEdit.xml:397
+#: doc/classes/TextEdit.xml:349
msgid ""
"Unhide all lines that were previously set to hidden by [method "
"set_line_as_hidden]."
msgstr ""
-#: doc/classes/TextEdit.xml:403
+#: doc/classes/TextEdit.xml:355
msgid "If [code]true[/code], the breakpoint gutter is visible."
msgstr ""
-#: doc/classes/TextEdit.xml:412
+#: doc/classes/TextEdit.xml:364
msgid ""
"If [code]true[/code], the caret displays as a rectangle.\n"
"If [code]false[/code], the caret displays as a bar."
msgstr ""
-#: doc/classes/TextEdit.xml:416
+#: doc/classes/TextEdit.xml:368
msgid ""
"If [code]true[/code], a right-click moves the cursor at the mouse position "
"before displaying the context menu.\n"
"If [code]false[/code], the context menu disregards mouse location."
msgstr ""
-#: doc/classes/TextEdit.xml:420
+#: doc/classes/TextEdit.xml:372
msgid "If [code]true[/code], a right-click displays the context menu."
msgstr ""
-#: doc/classes/TextEdit.xml:423
+#: doc/classes/TextEdit.xml:375
msgid ""
"If [code]true[/code], the \"space\" character will have a visible "
"representation."
msgstr ""
-#: doc/classes/TextEdit.xml:426
+#: doc/classes/TextEdit.xml:378
msgid ""
"If [code]true[/code], the \"tab\" character will have a visible "
"representation."
msgstr ""
-#: doc/classes/TextEdit.xml:430
+#: doc/classes/TextEdit.xml:382
msgid ""
"If [code]true[/code], the fold gutter is visible. This enables folding "
"groups of indented lines."
msgstr ""
-#: doc/classes/TextEdit.xml:433
+#: doc/classes/TextEdit.xml:385
msgid ""
"If [code]true[/code], all lines that have been set to hidden by [method "
"set_line_as_hidden], will not be visible."
msgstr ""
-#: doc/classes/TextEdit.xml:436
+#: doc/classes/TextEdit.xml:388
msgid ""
"If [code]true[/code], all occurrences of the selected text will be "
"highlighted."
msgstr ""
-#: doc/classes/TextEdit.xml:439
+#: doc/classes/TextEdit.xml:391
msgid "If [code]true[/code], the line containing the cursor is highlighted."
msgstr ""
-#: doc/classes/TextEdit.xml:447
+#: doc/classes/TextEdit.xml:394
+msgid ""
+"If [code]true[/code], a minimap is shown, providing an outline of your "
+"source code."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:397
+msgid "The width, in pixels, of the minimap."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:401
msgid ""
"If [code]true[/code], custom [code]font_color_selected[/code] will be used "
"for selected text."
msgstr ""
-#: doc/classes/TextEdit.xml:450
+#: doc/classes/TextEdit.xml:404
msgid ""
"If [code]true[/code], read-only mode is enabled. Existing text cannot be "
"modified and new text cannot be added."
msgstr ""
-#: doc/classes/TextEdit.xml:463
+#: doc/classes/TextEdit.xml:413
msgid ""
-"If [code]true[/code], line numbers are displayed to the left of the text."
+"If [code]true[/code], text can be selected.\n"
+"If [code]false[/code], text can not be selected by the user or by the "
+"[method select] or [method select_all] methods."
msgstr ""
-#: doc/classes/TextEdit.xml:466
+#: doc/classes/TextEdit.xml:417
msgid ""
-"If [code]true[/code], sets the [code]step[/code] of the scrollbars to "
-"[code]0.25[/code] which results in smoother scrolling."
+"If [code]true[/code], shortcut keys for context menu items are enabled, even "
+"if the context menu is disabled."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:420
+msgid ""
+"If [code]true[/code], line numbers are displayed to the left of the text."
msgstr ""
-#: doc/classes/TextEdit.xml:469
+#: doc/classes/TextEdit.xml:423
msgid ""
-"If [code]true[/code], any custom color properties that have been set for "
-"this [TextEdit] will be visible."
+"If [code]true[/code], sets the [code]step[/code] of the scrollbars to "
+"[code]0.25[/code] which results in smoother scrolling."
msgstr ""
-#: doc/classes/TextEdit.xml:472
+#: doc/classes/TextEdit.xml:428
msgid "String value of the [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:475
+#: doc/classes/TextEdit.xml:431
msgid "Vertical scroll sensitivity."
msgstr ""
-#: doc/classes/TextEdit.xml:478
+#: doc/classes/TextEdit.xml:437
msgid ""
"If [code]true[/code], enables text wrapping when it goes beyond the edge of "
"what is visible."
msgstr ""
-#: doc/classes/TextEdit.xml:486
+#: doc/classes/TextEdit.xml:445
msgid "Emitted when a breakpoint is placed via the breakpoint gutter."
msgstr ""
-#: doc/classes/TextEdit.xml:491
+#: doc/classes/TextEdit.xml:450
msgid "Emitted when the cursor changes."
msgstr ""
-#: doc/classes/TextEdit.xml:500
+#: doc/classes/TextEdit.xml:459
msgid "Emitted when the info icon is clicked."
msgstr ""
-#: doc/classes/TextEdit.xml:531
+#: doc/classes/TextEdit.xml:496
msgid "Match case when searching."
msgstr ""
-#: doc/classes/TextEdit.xml:534
+#: doc/classes/TextEdit.xml:499
msgid "Match whole words when searching."
msgstr ""
-#: doc/classes/TextEdit.xml:537
+#: doc/classes/TextEdit.xml:502
msgid "Search from end to beginning."
msgstr ""
-#: doc/classes/TextEdit.xml:546
+#: doc/classes/TextEdit.xml:511
msgid ""
"Pastes the clipboard text over the selected text (or at the cursor's "
"position)."
msgstr ""
-#: doc/classes/TextEdit.xml:549
+#: doc/classes/TextEdit.xml:514
msgid "Erases the whole [TextEdit] text."
msgstr ""
-#: doc/classes/TextEdit.xml:552
+#: doc/classes/TextEdit.xml:517
msgid "Selects the whole [TextEdit] text."
msgstr ""
-#: doc/classes/TextEdit.xml:558
+#: doc/classes/TextEdit.xml:523
msgid "Redoes the previous action."
msgstr ""
-#: doc/classes/TextEdit.xml:566
+#: doc/classes/TextEdit.xml:531
msgid ""
"Sets the background [Color] of this [TextEdit]. [member syntax_highlighting] "
"has to be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:569
+#: doc/classes/TextEdit.xml:534
msgid ""
"Sets the [Color] of the bookmark marker. [member syntax_highlighting] has to "
"be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:574 doc/classes/TextEdit.xml:601
+#: doc/classes/TextEdit.xml:539 doc/classes/TextEdit.xml:566
msgid ""
"Sets the [Color] of the breakpoints. [member breakpoint_gutter] has to be "
"enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:612
+#: doc/classes/TextEdit.xml:577
msgid "Sets the default [Font]."
msgstr ""
-#: doc/classes/TextEdit.xml:615
+#: doc/classes/TextEdit.xml:580
msgid "Sets the font [Color]."
msgstr ""
-#: doc/classes/TextEdit.xml:620
+#: doc/classes/TextEdit.xml:585
msgid ""
"Sets the [Color] of the selected text. [member override_selected_font_color] "
"has to be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:625
+#: doc/classes/TextEdit.xml:588
msgid ""
"Sets the [Color] of the line numbers. [member show_line_numbers] has to be "
"enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:628
+#: doc/classes/TextEdit.xml:591
msgid "Sets the spacing between the lines."
msgstr ""
-#: doc/classes/TextEdit.xml:631
+#: doc/classes/TextEdit.xml:594
msgid "Sets the [Color] of marked text."
msgstr ""
-#: doc/classes/TextEdit.xml:636
+#: doc/classes/TextEdit.xml:597
msgid "Sets the [StyleBox] of this [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:641
+#: doc/classes/TextEdit.xml:600
msgid ""
"Sets the [StyleBox] of this [TextEdit] when [member readonly] is enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:646
+#: doc/classes/TextEdit.xml:605
msgid "Sets the highlight [Color] of text selections."
msgstr ""
-#: doc/classes/TextEdit.xml:653
+#: doc/classes/TextEdit.xml:610
msgid "Sets a custom [Texture2D] for tab text characters."
msgstr ""
-#: doc/classes/TextEdit.xml:656
+#: doc/classes/TextEdit.xml:613
msgid ""
"Sets the highlight [Color] of multiple occurrences. [member "
"highlight_all_occurrences] has to be enabled."
@@ -49919,80 +50607,80 @@ msgid ""
"the texture will not scale with the node."
msgstr ""
-#: doc/classes/TextureButton.xml:19
+#: doc/classes/TextureButton.xml:25
msgid ""
"Controls the texture's behavior when you resize the node's bounding "
"rectangle, [b]only if[/b] [member expand] is [code]true[/code]. Set it to "
"one of the [enum StretchMode] constants. See the constants to learn more."
msgstr ""
-#: doc/classes/TextureButton.xml:22
+#: doc/classes/TextureButton.xml:28
msgid ""
"Pure black and white [BitMap] image to use for click detection. On the mask, "
"white pixels represent the button's clickable area. Use it to create buttons "
"with curved shapes."
msgstr ""
-#: doc/classes/TextureButton.xml:25
+#: doc/classes/TextureButton.xml:31
msgid ""
"Texture to display when the node is disabled. See [member BaseButton."
"disabled]."
msgstr ""
-#: doc/classes/TextureButton.xml:28
+#: doc/classes/TextureButton.xml:34
msgid "Texture to display when the node has mouse or keyboard focus."
msgstr ""
-#: doc/classes/TextureButton.xml:31
+#: doc/classes/TextureButton.xml:37
msgid "Texture to display when the mouse hovers the node."
msgstr ""
-#: doc/classes/TextureButton.xml:34
+#: doc/classes/TextureButton.xml:40
msgid ""
"Texture to display by default, when the node is [b]not[/b] in the disabled, "
"focused, hover or pressed state."
msgstr ""
-#: doc/classes/TextureButton.xml:37
+#: doc/classes/TextureButton.xml:43
msgid ""
"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 "
"[member BaseButton.shortcut] key."
msgstr ""
-#: doc/classes/TextureButton.xml:42 doc/classes/TextureRect.xml:36
+#: doc/classes/TextureButton.xml:48 doc/classes/TextureRect.xml:36
msgid "Scale to fit the node's bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:45 doc/classes/TextureRect.xml:39
+#: doc/classes/TextureButton.xml:51 doc/classes/TextureRect.xml:39
msgid "Tile inside the node's bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:48 doc/classes/TextureRect.xml:42
+#: doc/classes/TextureButton.xml:54 doc/classes/TextureRect.xml:42
msgid ""
"The texture keeps its original size and stays in the bounding rectangle's "
"top-left corner."
msgstr ""
-#: doc/classes/TextureButton.xml:51 doc/classes/TextureRect.xml:45
+#: doc/classes/TextureButton.xml:57 doc/classes/TextureRect.xml:45
msgid ""
"The texture keeps its original size and stays centered in the node's "
"bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:54 doc/classes/TextureRect.xml:48
+#: doc/classes/TextureButton.xml:60 doc/classes/TextureRect.xml:48
msgid ""
"Scale the texture to fit the node's bounding rectangle, but maintain the "
"texture's aspect ratio."
msgstr ""
-#: doc/classes/TextureButton.xml:57
+#: doc/classes/TextureButton.xml:63
msgid ""
"Scale the texture to fit the node's bounding rectangle, center it, and "
"maintain its aspect ratio."
msgstr ""
-#: doc/classes/TextureButton.xml:60 doc/classes/TextureRect.xml:54
+#: doc/classes/TextureButton.xml:66 doc/classes/TextureRect.xml:54
msgid ""
"Scale the texture so that the shorter side fits the bounding rectangle. The "
"other side clips to the node's limits."
@@ -50442,19 +51130,25 @@ msgid ""
"advised if working with shared objects."
msgstr ""
-#: doc/classes/Thread.xml:17
+#: doc/classes/Thread.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/threads/thread_safe_apis."
+"html"
+msgstr ""
+
+#: doc/classes/Thread.xml:18
msgid ""
"Returns the current [Thread]'s ID, uniquely identifying it among all threads."
msgstr ""
-#: doc/classes/Thread.xml:24
+#: doc/classes/Thread.xml:25
msgid ""
"Returns [code]true[/code] if this [Thread] is currently active. An active "
"[Thread] cannot start work on a new method but can be joined with [method "
"wait_to_finish]."
msgstr ""
-#: doc/classes/Thread.xml:39
+#: doc/classes/Thread.xml:40
msgid ""
"Starts a new [Thread] that runs [code]method[/code] on object "
"[code]instance[/code] with [code]userdata[/code] passed as an argument. Even "
@@ -50464,21 +51158,21 @@ msgid ""
"Returns [constant OK] on success, or [constant ERR_CANT_CREATE] on failure."
msgstr ""
-#: doc/classes/Thread.xml:47
+#: doc/classes/Thread.xml:48
msgid ""
"Joins the [Thread] and waits for it to finish. Returns what the method "
"called returned."
msgstr ""
-#: doc/classes/Thread.xml:53
+#: doc/classes/Thread.xml:54
msgid "A thread running with lower priority than normally."
msgstr ""
-#: doc/classes/Thread.xml:56
+#: doc/classes/Thread.xml:57
msgid "A thread with a standard priority."
msgstr ""
-#: doc/classes/Thread.xml:59
+#: doc/classes/Thread.xml:60
msgid "A thread running with higher priority than normally."
msgstr ""
@@ -51013,50 +51707,61 @@ msgid "Returns the [Transform2D] of a tile's shape."
msgstr ""
#: doc/classes/TileSet.xml:481
-msgid "Returns an array of the tile's shapes."
+msgid ""
+"Returns an array of dictionaries describing the tile's shapes.\n"
+"[b]Dictionary structure in the array returned by this method:[/b]\n"
+"[codeblock]\n"
+"{\n"
+" \"autotile_coord\": Vector2,\n"
+" \"one_way\": bool,\n"
+" \"one_way_margin\": int,\n"
+" \"shape\": CollisionShape2D,\n"
+" \"shape_transform\": Transform2D,\n"
+"}\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/TileSet.xml:490
+#: doc/classes/TileSet.xml:500
msgid "Returns the tile's texture."
msgstr ""
-#: doc/classes/TileSet.xml:499
+#: doc/classes/TileSet.xml:509
msgid "Returns the texture offset of the tile."
msgstr ""
-#: doc/classes/TileSet.xml:508
+#: doc/classes/TileSet.xml:518
msgid "Returns the tile's [enum TileMode]."
msgstr ""
-#: doc/classes/TileSet.xml:517
+#: doc/classes/TileSet.xml:527
msgid "Returns the tile's Z index (drawing layer)."
msgstr ""
-#: doc/classes/TileSet.xml:528
+#: doc/classes/TileSet.xml:538
msgid "Sets a light occluder for the tile."
msgstr ""
-#: doc/classes/TileSet.xml:539
+#: doc/classes/TileSet.xml:549
msgid "Sets the tile's material."
msgstr ""
-#: doc/classes/TileSet.xml:550
+#: doc/classes/TileSet.xml:560
msgid "Sets the tile's modulation color."
msgstr ""
-#: doc/classes/TileSet.xml:561
+#: doc/classes/TileSet.xml:571
msgid "Sets the tile's name."
msgstr ""
-#: doc/classes/TileSet.xml:572
+#: doc/classes/TileSet.xml:582
msgid "Sets the tile's navigation polygon."
msgstr ""
-#: doc/classes/TileSet.xml:583
+#: doc/classes/TileSet.xml:593
msgid "Sets an offset for the tile's navigation polygon."
msgstr ""
-#: doc/classes/TileSet.xml:594
+#: doc/classes/TileSet.xml:604
msgid ""
"Sets the tile's normal map texture.\n"
"[b]Note:[/b] Godot expects the normal map to use X+, Y-, and Z+ coordinates. "
@@ -51065,48 +51770,48 @@ msgid ""
"a comparison of normal map coordinates expected by popular engines."
msgstr ""
-#: doc/classes/TileSet.xml:606
+#: doc/classes/TileSet.xml:616
msgid "Sets an offset for the tile's light occluder."
msgstr ""
-#: doc/classes/TileSet.xml:617
+#: doc/classes/TileSet.xml:627
msgid ""
"Sets the tile's sub-region in the texture. This is common in texture atlases."
msgstr ""
-#: doc/classes/TileSet.xml:630
+#: doc/classes/TileSet.xml:640
msgid "Sets a shape for the tile, enabling collision."
msgstr ""
-#: doc/classes/TileSet.xml:643
+#: doc/classes/TileSet.xml:653
msgid "Sets the offset of a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:656
+#: doc/classes/TileSet.xml:666
msgid "Enables one-way collision on a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:681
+#: doc/classes/TileSet.xml:691
msgid "Sets a [Transform2D] on a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:692
+#: doc/classes/TileSet.xml:702
msgid "Sets an array of shapes for the tile, enabling collision."
msgstr ""
-#: doc/classes/TileSet.xml:703
+#: doc/classes/TileSet.xml:713
msgid "Sets the tile's texture."
msgstr ""
-#: doc/classes/TileSet.xml:714
+#: doc/classes/TileSet.xml:724
msgid "Sets the tile's texture offset."
msgstr ""
-#: doc/classes/TileSet.xml:725
+#: doc/classes/TileSet.xml:735
msgid "Sets the tile's [enum TileMode]."
msgstr ""
-#: doc/classes/TileSet.xml:736
+#: doc/classes/TileSet.xml:746
msgid "Sets the tile's drawing index."
msgstr ""
@@ -51117,14 +51822,16 @@ msgstr ""
#: doc/classes/Timer.xml:7
msgid ""
"Counts down a specified interval and emits a signal on reaching 0. Can be "
-"set to repeat or \"one-shot\" mode."
+"set to repeat or \"one-shot\" mode.\n"
+"[b]Note:[/b] To create an one-shot timer without instantiating a node, use "
+"[method SceneTree.create_timer]."
msgstr ""
-#: doc/classes/Timer.xml:16
+#: doc/classes/Timer.xml:17
msgid "Returns [code]true[/code] if the timer is stopped."
msgstr ""
-#: doc/classes/Timer.xml:25
+#: doc/classes/Timer.xml:26
msgid ""
"Starts the timer. Sets [code]wait_time[/code] to [code]time_sec[/code] if "
"[code]time_sec > 0[/code]. This also resets the remaining time to "
@@ -51132,11 +51839,11 @@ msgid ""
"[b]Note:[/b] this method will not resume a paused timer. See [member paused]."
msgstr ""
-#: doc/classes/Timer.xml:33
+#: doc/classes/Timer.xml:34
msgid "Stops the timer."
msgstr ""
-#: doc/classes/Timer.xml:39
+#: doc/classes/Timer.xml:40
msgid ""
"If [code]true[/code], the timer will automatically start when entering the "
"scene tree.\n"
@@ -51144,40 +51851,40 @@ msgid ""
"the timer enters the scene tree and starts."
msgstr ""
-#: doc/classes/Timer.xml:43
+#: doc/classes/Timer.xml:44
msgid ""
"If [code]true[/code], the timer will stop when reaching 0. If [code]false[/"
"code], it will restart."
msgstr ""
-#: doc/classes/Timer.xml:46
+#: doc/classes/Timer.xml:47
msgid ""
"If [code]true[/code], the timer is paused and will not process until it is "
"unpaused again, even if [method start] is called."
msgstr ""
-#: doc/classes/Timer.xml:49
+#: doc/classes/Timer.xml:50
msgid "Processing mode. See [enum TimerProcessMode]."
msgstr ""
-#: doc/classes/Timer.xml:52
+#: doc/classes/Timer.xml:53
msgid ""
"The timer's remaining time in seconds. Returns 0 if the timer is inactive.\n"
"[b]Note:[/b] You cannot set this value. To change the timer's remaining "
"time, use [method start]."
msgstr ""
-#: doc/classes/Timer.xml:56
+#: doc/classes/Timer.xml:57
msgid "Wait time in seconds."
msgstr ""
-#: doc/classes/Timer.xml:68
+#: doc/classes/Timer.xml:69
msgid ""
"Update the timer during the physics step at each frame (fixed framerate "
"processing)."
msgstr ""
-#: doc/classes/Timer.xml:71
+#: doc/classes/Timer.xml:72
msgid "Update the timer during the idle time at each frame."
msgstr ""
@@ -51256,60 +51963,66 @@ msgstr ""
#: doc/classes/Transform.xml:7
msgid ""
-"Represents one or many transformations in 3D space such as translation, "
-"rotation, or scaling. It consists of a [member basis] and an [member "
-"origin]. It is similar to a 3×4 matrix."
+"3×4 matrix (3 rows, 4 columns) used for 3D linear transformations. It can "
+"represent transformations such as translation, rotation, or scaling. It "
+"consists of a [member basis] (first 3 columns) and a [Vector3] for the "
+"[member origin] (last column).\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
msgstr ""
-#: doc/classes/Transform.xml:26
+#: doc/classes/Transform.xml:28
msgid ""
-"Constructs the Transform from four [Vector3]. Each axis corresponds to local "
-"basis vectors (some of which may be scaled)."
+"Constructs a Transform from four [Vector3] values (matrix columns). Each "
+"axis corresponds to local basis vectors (some of which may be scaled)."
msgstr ""
-#: doc/classes/Transform.xml:37
-msgid "Constructs the Transform from a [Basis] and [Vector3]."
+#: doc/classes/Transform.xml:39
+msgid "Constructs a Transform from a [Basis] and [Vector3]."
msgstr ""
-#: doc/classes/Transform.xml:46
-msgid "Constructs the Transform from a [Transform2D]."
+#: doc/classes/Transform.xml:48
+msgid "Constructs a Transform from a [Transform2D]."
msgstr ""
-#: doc/classes/Transform.xml:55
+#: doc/classes/Transform.xml:57
msgid ""
-"Constructs the Transform from a [Quat]. The origin will be Vector3(0, 0, 0)."
+"Constructs a Transform from a [Quat]. The origin will be [code]Vector3(0, 0, "
+"0)[/code]."
msgstr ""
-#: doc/classes/Transform.xml:64
+#: doc/classes/Transform.xml:66
msgid ""
"Constructs the Transform from a [Basis]. The origin will be Vector3(0, 0, 0)."
msgstr ""
-#: doc/classes/Transform.xml:71
+#: doc/classes/Transform.xml:73 doc/classes/Transform2D.xml:51
msgid ""
"Returns the inverse of the transform, under the assumption that the "
"transformation is composed of rotation, scaling and translation."
msgstr ""
-#: doc/classes/Transform.xml:82
-msgid "Interpolates the transform to other Transform by weight amount (0-1)."
+#: doc/classes/Transform.xml:84
+msgid ""
+"Interpolates the transform to other Transform by weight amount (on the range "
+"of 0.0 to 1.0)."
msgstr ""
-#: doc/classes/Transform.xml:89 doc/classes/Transform2D.xml:106
+#: doc/classes/Transform.xml:91
msgid ""
"Returns the inverse of the transform, under the assumption that the "
"transformation is composed of rotation and translation (no scaling, use "
"affine_inverse for transforms with scaling)."
msgstr ""
-#: doc/classes/Transform.xml:98 doc/classes/Transform2D.xml:115
+#: doc/classes/Transform.xml:100 doc/classes/Transform2D.xml:119
msgid ""
"Returns [code]true[/code] if this transform and [code]transform[/code] are "
"approximately equal, by calling [code]is_equal_approx[/code] on each "
"component."
msgstr ""
-#: doc/classes/Transform.xml:109
+#: doc/classes/Transform.xml:111
msgid ""
"Returns a copy of the transform rotated such that its -Z axis points towards "
"the [code]target[/code] position.\n"
@@ -51319,25 +52032,25 @@ msgid ""
"Operations take place in global space."
msgstr ""
-#: doc/classes/Transform.xml:118 doc/classes/Transform2D.xml:122
+#: doc/classes/Transform.xml:120
msgid ""
"Returns the transform with the basis orthogonal (90 degrees), and normalized "
"axis vectors."
msgstr ""
-#: doc/classes/Transform.xml:129
+#: doc/classes/Transform.xml:131
msgid ""
"Rotates the transform around the given axis by the given angle (in radians), "
"using matrix multiplication. The axis must be a normalized vector."
msgstr ""
-#: doc/classes/Transform.xml:138
+#: doc/classes/Transform.xml:140
msgid ""
"Scales basis and origin of the transform by the given scale factor, using "
"matrix multiplication."
msgstr ""
-#: doc/classes/Transform.xml:147 doc/classes/Transform2D.xml:149
+#: doc/classes/Transform.xml:149 doc/classes/Transform2D.xml:153
msgid ""
"Translates the transform by the given offset, relative to the transform's "
"basis vectors.\n"
@@ -51345,152 +52058,162 @@ msgid ""
"multiplication."
msgstr ""
-#: doc/classes/Transform.xml:157
+#: doc/classes/Transform.xml:159
msgid ""
"Transforms the given [Vector3], [Plane], [AABB], or [PackedVector3Array] by "
"this transform."
msgstr ""
-#: doc/classes/Transform.xml:166
+#: doc/classes/Transform.xml:168
msgid ""
"Inverse-transforms the given [Vector3], [Plane], [AABB], or "
"[PackedVector3Array] by this transform."
msgstr ""
-#: doc/classes/Transform.xml:172
+#: doc/classes/Transform.xml:174
msgid ""
"The basis is a matrix containing 3 [Vector3] as its columns: X axis, Y axis, "
"and Z axis. These vectors can be interpreted as the basis vectors of local "
"coordinate system traveling with the object."
msgstr ""
-#: doc/classes/Transform.xml:175
-msgid "The translation offset of the transform."
+#: doc/classes/Transform.xml:177
+msgid ""
+"The translation offset of the transform (column 3, the fourth column). "
+"Equivalent to array index [code]3[/code]."
msgstr ""
-#: doc/classes/Transform.xml:180
+#: doc/classes/Transform.xml:182
msgid ""
"[Transform] with no translation, rotation or scaling applied. When applied "
"to other data structures, [constant IDENTITY] performs no transformation."
msgstr ""
-#: doc/classes/Transform.xml:183
+#: doc/classes/Transform.xml:185
msgid "[Transform] with mirroring applied perpendicular to the YZ plane."
msgstr ""
-#: doc/classes/Transform.xml:186
+#: doc/classes/Transform.xml:188
msgid "[Transform] with mirroring applied perpendicular to the XZ plane."
msgstr ""
-#: doc/classes/Transform.xml:189
+#: doc/classes/Transform.xml:191
msgid "[Transform] with mirroring applied perpendicular to the XY plane."
msgstr ""
#: doc/classes/Transform2D.xml:4
-msgid "2D transformation (3×2 matrix)."
+msgid "2D transformation (2×3 matrix)."
msgstr ""
#: doc/classes/Transform2D.xml:7
msgid ""
-"Represents one or many transformations in 2D space such as translation, "
-"rotation, or scaling. It consists of two [member x] and [member y] "
-"[Vector2]s and an [member origin]. It is similar to a 3×2 matrix."
+"2×3 matrix (2 rows, 3 columns) used for 2D linear transformations. It can "
+"represent transformations such as translation, rotation, or scaling. It "
+"consists of a three [Vector2] values: [member x], [member y], and the "
+"[member origin].\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
msgstr ""
-#: doc/classes/Transform2D.xml:18
+#: doc/classes/Transform2D.xml:20
msgid "Constructs the transform from a 3D [Transform]."
msgstr ""
-#: doc/classes/Transform2D.xml:31
+#: doc/classes/Transform2D.xml:33
msgid ""
-"Constructs the transform from 3 [Vector2]s representing x, y, and origin."
+"Constructs the transform from 3 [Vector2] values representing [member x], "
+"[member y], and the [member origin] (the three column vectors)."
msgstr ""
-#: doc/classes/Transform2D.xml:42
+#: doc/classes/Transform2D.xml:44
msgid "Constructs the transform from a given angle (in radians) and position."
msgstr ""
-#: doc/classes/Transform2D.xml:58
-msgid "Transforms the given vector by this transform's basis (no translation)."
+#: doc/classes/Transform2D.xml:60
+msgid ""
+"Returns a vector transformed (multiplied) by the basis matrix.\n"
+"This method does not account for translation (the origin vector)."
msgstr ""
-#: doc/classes/Transform2D.xml:67
+#: doc/classes/Transform2D.xml:70
msgid ""
-"Inverse-transforms the given vector by this transform's basis (no "
-"translation)."
+"Returns a vector transformed (multiplied) by the inverse basis matrix.\n"
+"This method does not account for translation (the origin vector)."
msgstr ""
-#: doc/classes/Transform2D.xml:74
+#: doc/classes/Transform2D.xml:78
msgid "Returns the transform's origin (translation)."
msgstr ""
-#: doc/classes/Transform2D.xml:81
+#: doc/classes/Transform2D.xml:85
msgid "Returns the transform's rotation (in radians)."
msgstr ""
-#: doc/classes/Transform2D.xml:88
+#: doc/classes/Transform2D.xml:92
msgid "Returns the scale."
msgstr ""
-#: doc/classes/Transform2D.xml:99
+#: doc/classes/Transform2D.xml:103
msgid ""
"Returns a transform interpolated between this transform and another by a "
-"given weight (0-1)."
+"given weight (on the range of 0.0 to 1.0)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:110
+msgid ""
+"Returns the inverse of the transform, under the assumption that the "
+"transformation is composed of rotation and translation (no scaling, use "
+"[method affine_inverse] for transforms with scaling)."
msgstr ""
-#: doc/classes/Transform2D.xml:131
+#: doc/classes/Transform2D.xml:126
+msgid ""
+"Returns the transform with the basis orthogonal (90 degrees), and normalized "
+"axis vectors (scale of 1 or -1)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:135
msgid ""
"Rotates the transform by the given angle (in radians), using matrix "
"multiplication."
msgstr ""
-#: doc/classes/Transform2D.xml:140
+#: doc/classes/Transform2D.xml:144
msgid ""
"Scales the transform by the given scale factor, using matrix multiplication."
msgstr ""
-#: doc/classes/Transform2D.xml:159
+#: doc/classes/Transform2D.xml:163
msgid ""
"Transforms the given [Vector2], [Rect2], or [PackedVector2Array] by this "
"transform."
msgstr ""
-#: doc/classes/Transform2D.xml:168
+#: doc/classes/Transform2D.xml:172
msgid ""
"Inverse-transforms the given [Vector2], [Rect2], or [PackedVector2Array] by "
"this transform."
msgstr ""
-#: doc/classes/Transform2D.xml:174
-msgid "The transform's translation offset."
-msgstr ""
-
-#: doc/classes/Transform2D.xml:177
-msgid ""
-"The X axis of 2×2 basis matrix containing 2 [Vector2]s as its columns: X "
-"axis and Y axis. These vectors can be interpreted as the basis vectors of "
-"local coordinate system traveling with the object."
-msgstr ""
-
-#: doc/classes/Transform2D.xml:180
+#: doc/classes/Transform2D.xml:178
msgid ""
-"The Y axis of 2×2 basis matrix containing 2 [Vector2]s as its columns: X "
-"axis and Y axis. These vectors can be interpreted as the basis vectors of "
-"local coordinate system traveling with the object."
+"The origin vector (column 2, the third column). Equivalent to array index "
+"[code]2[/code]. The origin vector represents translation."
msgstr ""
-#: doc/classes/Transform2D.xml:185
+#: doc/classes/Transform2D.xml:189
msgid ""
-"[Transform2D] with no translation, rotation or scaling applied. When applied "
-"to other data structures, [constant IDENTITY] performs no transformation."
+"The identity [Transform2D] with no translation, rotation or scaling applied. "
+"When applied to other data structures, [constant IDENTITY] performs no "
+"transformation."
msgstr ""
-#: doc/classes/Transform2D.xml:188
-msgid "[Transform2D] with mirroring applied parallel to the X axis."
+#: doc/classes/Transform2D.xml:192
+msgid "The [Transform2D] that will flip something along the X axis."
msgstr ""
-#: doc/classes/Transform2D.xml:191
-msgid "[Transform2D] with mirroring applied parallel to the Y axis."
+#: doc/classes/Transform2D.xml:195
+msgid "The [Transform2D] that will flip something along the Y axis."
msgstr ""
#: doc/classes/Translation.xml:4
@@ -52154,7 +52877,8 @@ msgid "Returns the column's cell mode."
msgstr ""
#: doc/classes/TreeItem.xml:121
-msgid "Returns the TreeItem's child items."
+msgid ""
+"Returns the TreeItem's first child item or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:130
@@ -52186,28 +52910,32 @@ msgid "Returns the icon [Texture2D] region as [Rect2]."
msgstr ""
#: doc/classes/TreeItem.xml:199
-msgid "Returns the next TreeItem in the tree."
+msgid ""
+"Returns the next TreeItem in the tree or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:208
msgid ""
-"Returns the next visible TreeItem in the tree.\n"
+"Returns the next visible TreeItem in the tree or a null object if there is "
+"none.\n"
"If [code]wrap[/code] is enabled, the method will wrap around to the first "
"visible element in the tree when called on the last visible element, "
"otherwise it returns [code]null[/code]."
msgstr ""
#: doc/classes/TreeItem.xml:216
-msgid "Returns the parent TreeItem."
+msgid "Returns the parent TreeItem or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:223
-msgid "Returns the previous TreeItem in the tree."
+msgid ""
+"Returns the previous TreeItem in the tree or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:232
msgid ""
-"Returns the previous visible TreeItem in the tree.\n"
+"Returns the previous visible TreeItem in the tree or a null object if there "
+"is none.\n"
"If [code]wrap[/code] is enabled, the method will wrap around to the last "
"visible element in the tree when called on the first visible element, "
"otherwise it returns [code]null[/code]."
@@ -52717,6 +53445,10 @@ msgid ""
"A simple server that opens a UDP socket and returns connected "
"[PacketPeerUDP] upon receiving new packets. See also [method PacketPeerUDP."
"connect_to_host].\n"
+"After starting the server ([method listen]), you will need to [method poll] "
+"it at regular intervals (e.g. inside [method Node._process]) for it to "
+"process new packets, delivering them to the appropriate [PacketPeerUDP], and "
+"taking new connections.\n"
"Below a small example of how it can be used:\n"
"[codeblock]\n"
"# server.gd\n"
@@ -52729,6 +53461,7 @@ msgid ""
" server.listen(4242)\n"
"\n"
"func _process(delta):\n"
+" server.poll() # Important!\n"
" if server.is_connection_available():\n"
" var peer : PacketPeerUDP = server.take_connection()\n"
" var pkt = peer.get_packet()\n"
@@ -52764,35 +53497,55 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/UDPServer.xml:60
+#: doc/classes/UDPServer.xml:62
msgid ""
-"Returns [code]true[/code] if a packet with a new address/port combination is "
-"received on the socket."
+"Returns [code]true[/code] if a packet with a new address/port combination "
+"was received on the socket."
msgstr ""
-#: doc/classes/UDPServer.xml:67
+#: doc/classes/UDPServer.xml:69
msgid ""
"Returns [code]true[/code] if the socket is open and listening on a port."
msgstr ""
-#: doc/classes/UDPServer.xml:78
+#: doc/classes/UDPServer.xml:80
msgid ""
"Starts the server by opening a UDP socket listening on the given port. You "
"can optionally specify a [code]bind_address[/code] to only listen for "
"packets sent to that address. See also [method PacketPeerUDP.listen]."
msgstr ""
-#: doc/classes/UDPServer.xml:85
+#: doc/classes/UDPServer.xml:87
+msgid ""
+"Call this method at regular intervals (e.g. inside [method Node._process]) "
+"to process new packets. And packet from known address/port pair will be "
+"delivered to the appropriate [PacketPeerUDP], any packet received from an "
+"unknown address/port pair will be added as a pending connection (see [method "
+"is_connection_available], [method take_connection]). The maximum number of "
+"pending connection is defined via [member max_pending_connections]."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:94
+msgid ""
+"Stops the server, closing the UDP socket if open. Will close all connected "
+"[PacketPeerUDP] accepted via [method take_connection] (remote peers will not "
+"be notified)."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:101
msgid ""
-"Stops the server, closing the UDP socket if open. Will not disconnect any "
-"connected [PacketPeerUDP]."
+"Returns the first pending connection (connected to the appropriate address/"
+"port). Will return [code]null[/code] if no new connection is available. See "
+"also [method is_connection_available], [method PacketPeerUDP."
+"connect_to_host]."
msgstr ""
-#: doc/classes/UDPServer.xml:92
+#: doc/classes/UDPServer.xml:107
msgid ""
-"Returns a [PacketPeerUDP] connected to the address/port combination of the "
-"first packet in queue. Will return [code]null[/code] if no packet is in "
-"queue. See also [method PacketPeerUDP.connect_to_host]."
+"Define the maximum number of pending connections, during [method poll], any "
+"new pending connection exceeding that value will be automatically dropped. "
+"Setting this value to [code]0[/code] effectively prevents any new pending "
+"connection to be accepted (e.g. when all your players have connected)."
msgstr ""
#: doc/classes/UndoRedo.xml:4
@@ -53433,24 +54186,26 @@ msgstr ""
#: doc/classes/Vector2.xml:46
msgid ""
-"Returns the vector's angle in radians with respect to the X axis, or [code]"
-"(1, 0)[/code] vector.\n"
+"Returns this vector's angle with respect to the X axis, or [code](1, 0)[/"
+"code] vector, in radians.\n"
"Equivalent to the result of [method @GDScript.atan2] when called with the "
-"vector's [member x] and [member y] as parameters: [code]atan2(x, y)[/code]."
+"vector's [member y] and [member x] as parameters: [code]atan2(y, x)[/code]."
msgstr ""
#: doc/classes/Vector2.xml:56
-msgid "Returns the angle in radians between the two vectors."
+msgid "Returns the angle to the given vector, in radians."
msgstr ""
#: doc/classes/Vector2.xml:65
msgid ""
-"Returns the angle in radians between the line connecting the two points and "
-"the X coordinate."
+"Returns the angle between the line connecting the two points and the X axis, "
+"in radians."
msgstr ""
-#: doc/classes/Vector2.xml:72 doc/classes/Vector2i.xml:46
-msgid "Returns the ratio of [member x] to [member y]."
+#: doc/classes/Vector2.xml:72
+msgid ""
+"Returns the aspect ratio of this vector, the ratio of [member x] to [member "
+"y]."
msgstr ""
#: doc/classes/Vector2.xml:81 doc/classes/Vector3.xml:59
@@ -53459,24 +54214,27 @@ msgid ""
msgstr ""
#: doc/classes/Vector2.xml:88
-msgid "Returns the vector with all components rounded up."
+msgid ""
+"Returns the vector with all components rounded up (towards positive "
+"infinity)."
msgstr ""
#: doc/classes/Vector2.xml:97
-msgid "Returns the vector with a maximum length."
+msgid ""
+"Returns the vector with a maximum length by limiting its length to "
+"[code]length[/code]."
msgstr ""
#: doc/classes/Vector2.xml:106
-msgid ""
-"Returns the 2-dimensional analog of the cross product with the given vector."
+msgid "Returns the cross product of this vector and [code]with[/code]."
msgstr ""
#: doc/classes/Vector2.xml:121
msgid ""
"Cubically interpolates between this vector and [code]b[/code] using "
"[code]pre_a[/code] and [code]post_b[/code] as handles, and returns the "
-"result at position [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation."
+"result at position [code]t[/code]. [code]t[/code] is on the range of 0.0 to "
+"1.0, representing the amount of interpolation."
msgstr ""
#: doc/classes/Vector2.xml:130 doc/classes/Vector3.xml:99
@@ -53484,182 +54242,198 @@ msgid ""
"Returns the normalized vector pointing from this vector to [code]b[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:139
+#: doc/classes/Vector2.xml:139 doc/classes/Vector3.xml:108
msgid ""
-"Returns the squared distance to vector [code]b[/code]. Prefer this function "
-"over [method distance_to] if you need to sort vectors or need the squared "
-"distance for some formula."
+"Returns the squared distance between this vector and [code]b[/code].\n"
+"This method runs faster than [method distance_to], so prefer it if you need "
+"to compare vectors or need the squared distance for some formula."
msgstr ""
-#: doc/classes/Vector2.xml:148
-msgid "Returns the distance to vector [code]b[/code]."
+#: doc/classes/Vector2.xml:149
+msgid "Returns the distance between this vector and [code]to[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:157
-msgid "Returns the dot product with vector [code]b[/code]."
+#: doc/classes/Vector2.xml:158
+msgid ""
+"Returns the dot product of this vector and [code]with[/code]. This can be "
+"used to compare the angle between two vectors. For example, this can be used "
+"to determine whether an enemy is facing the player.\n"
+"The dot product will be [code]0[/code] for a straight angle (90 degrees), "
+"greater than 0 for angles narrower than 90 degrees and lower than 0 for "
+"angles wider than 90 degrees.\n"
+"When using unit (normalized) vectors, the result will always be between "
+"[code]-1.0[/code] (180 degree angle) when the vectors are facing opposite "
+"directions, and [code]1.0[/code] (0 degree angle) when the vectors are "
+"aligned.\n"
+"[b]Note:[/b] [code]a.dot(b)[/code] is equivalent to [code]b.dot(a)[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:164
-msgid "Returns the vector with all components rounded down."
+#: doc/classes/Vector2.xml:168
+msgid ""
+"Returns the vector with all components rounded down (towards negative "
+"infinity)."
msgstr ""
-#: doc/classes/Vector2.xml:173 doc/classes/Vector3.xml:149
+#: doc/classes/Vector2.xml:177 doc/classes/Vector3.xml:153
msgid ""
"Returns [code]true[/code] if this vector and [code]v[/code] are "
"approximately equal, by running [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/Vector2.xml:180 doc/classes/Vector3.xml:156
-msgid "Returns [code]true[/code] if the vector is normalized."
+#: doc/classes/Vector2.xml:184 doc/classes/Vector3.xml:160
+msgid ""
+"Returns [code]true[/code] if the vector is normalized, and false otherwise."
msgstr ""
-#: doc/classes/Vector2.xml:187 doc/classes/Vector3.xml:163
-msgid "Returns the vector's length."
+#: doc/classes/Vector2.xml:191 doc/classes/Vector3.xml:167
+msgid "Returns the length (magnitude) of this vector."
msgstr ""
-#: doc/classes/Vector2.xml:194
+#: doc/classes/Vector2.xml:198 doc/classes/Vector3.xml:174
msgid ""
-"Returns the vector's length squared. Prefer this method over [method length] "
-"if you need to sort vectors or need the squared length for some formula."
+"Returns the squared length (squared magnitude) of this vector.\n"
+"This method runs faster than [method length], so prefer it if you need to "
+"compare vectors or need the squared distance for some formula."
msgstr ""
-#: doc/classes/Vector2.xml:205
+#: doc/classes/Vector2.xml:210 doc/classes/Vector3.xml:186
msgid ""
"Returns the result of the linear interpolation between this vector and "
-"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation."
+"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is on the range of "
+"0.0 to 1.0, representing the amount of interpolation."
msgstr ""
-#: doc/classes/Vector2.xml:216 doc/classes/Vector3.xml:206
+#: doc/classes/Vector2.xml:221
msgid ""
"Moves the vector toward [code]to[/code] by the fixed [code]delta[/code] "
"amount."
msgstr ""
-#: doc/classes/Vector2.xml:223 doc/classes/Vector3.xml:213
+#: doc/classes/Vector2.xml:228 doc/classes/Vector3.xml:218
msgid ""
"Returns the vector scaled to unit length. Equivalent to [code]v / v.length()"
"[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:232 doc/classes/Vector3.xml:231
+#: doc/classes/Vector2.xml:237 doc/classes/Vector3.xml:236
msgid ""
-"Returns a vector composed of the [code]fposmod[/code] of this vector's "
+"Returns a vector composed of the [method @GDScript.fposmod] of this vector's "
"components and [code]mod[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:241 doc/classes/Vector3.xml:240
+#: doc/classes/Vector2.xml:246 doc/classes/Vector3.xml:245
msgid ""
-"Returns a vector composed of the [code]fposmod[/code] of this vector's "
+"Returns a vector composed of the [method @GDScript.fposmod] of this vector's "
"components and [code]modv[/code]'s components."
msgstr ""
-#: doc/classes/Vector2.xml:250 doc/classes/Vector3.xml:249
+#: doc/classes/Vector2.xml:255
msgid "Returns the vector projected onto the vector [code]b[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:259 doc/classes/Vector3.xml:258
+#: doc/classes/Vector2.xml:264
msgid "Returns the vector reflected from a plane defined by the given normal."
msgstr ""
-#: doc/classes/Vector2.xml:268
+#: doc/classes/Vector2.xml:273
msgid ""
"Returns the vector rotated by [code]phi[/code] radians. See also [method "
"@GDScript.deg2rad]."
msgstr ""
-#: doc/classes/Vector2.xml:275 doc/classes/Vector3.xml:276
+#: doc/classes/Vector2.xml:280
msgid ""
"Returns the vector with all components rounded to the nearest integer, with "
"halfway cases rounded away from zero."
msgstr ""
-#: doc/classes/Vector2.xml:282 doc/classes/Vector2i.xml:53
-#: doc/classes/Vector3.xml:283 doc/classes/Vector3i.xml:55
+#: doc/classes/Vector2.xml:287
msgid ""
"Returns the vector with each component set to one or negative one, depending "
-"on the signs of the components."
+"on the signs of the components, or zero if the component is zero, by calling "
+"[method @GDScript.sign] on each component."
msgstr ""
-#: doc/classes/Vector2.xml:293 doc/classes/Vector3.xml:294
+#: doc/classes/Vector2.xml:298 doc/classes/Vector3.xml:299
msgid ""
"Returns the result of spherical linear interpolation between this vector and "
-"[code]b[/code], by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation.\n"
+"[code]b[/code], by amount [code]t[/code]. [code]t[/code] is on the range of "
+"0.0 to 1.0, representing the amount of interpolation.\n"
"[b]Note:[/b] Both vectors must be normalized."
msgstr ""
-#: doc/classes/Vector2.xml:303 doc/classes/Vector3.xml:304
-msgid ""
-"Returns the component of the vector along a plane defined by the given "
-"normal."
+#: doc/classes/Vector2.xml:308 doc/classes/Vector3.xml:309
+msgid "Returns this vector slid along a plane defined by the given normal."
msgstr ""
-#: doc/classes/Vector2.xml:312 doc/classes/Vector3.xml:313
-msgid "Returns the vector snapped to a grid with the given size."
+#: doc/classes/Vector2.xml:317 doc/classes/Vector3.xml:318
+msgid ""
+"Returns this vector with each component snapped to the nearest multiple of "
+"[code]step[/code]. This can also be used to round to an arbitrary number of "
+"decimals."
msgstr ""
-#: doc/classes/Vector2.xml:319
-msgid "Returns a perpendicular vector."
+#: doc/classes/Vector2.xml:324
+msgid ""
+"Returns a perpendicular vector rotated 90 degrees counter-clockwise compared "
+"to the original, with the same length."
msgstr ""
-#: doc/classes/Vector2.xml:325 doc/classes/Vector2i.xml:59
-#: doc/classes/Vector3.xml:326 doc/classes/Vector3i.xml:61
+#: doc/classes/Vector2.xml:330 doc/classes/Vector2i.xml:59
+#: doc/classes/Vector3.xml:332 doc/classes/Vector3i.xml:61
msgid ""
"The vector's X component. Also accessible by using the index position [code]"
"[0][/code]."
msgstr ""
-#: doc/classes/Vector2.xml:328 doc/classes/Vector2i.xml:62
-#: doc/classes/Vector3.xml:329 doc/classes/Vector3i.xml:64
+#: doc/classes/Vector2.xml:333 doc/classes/Vector2i.xml:62
+#: doc/classes/Vector3.xml:335 doc/classes/Vector3i.xml:64
msgid ""
"The vector's Y component. Also accessible by using the index position [code]"
"[1][/code]."
msgstr ""
-#: doc/classes/Vector2.xml:333 doc/classes/Vector2i.xml:67
+#: doc/classes/Vector2.xml:338 doc/classes/Vector2i.xml:67
#: doc/classes/Vector3i.xml:72
msgid "Enumerated value for the X axis."
msgstr ""
-#: doc/classes/Vector2.xml:336 doc/classes/Vector2i.xml:70
+#: doc/classes/Vector2.xml:341 doc/classes/Vector2i.xml:70
#: doc/classes/Vector3i.xml:75
msgid "Enumerated value for the Y axis."
msgstr ""
-#: doc/classes/Vector2.xml:339 doc/classes/Vector2i.xml:73
-#: doc/classes/Vector3.xml:346 doc/classes/Vector3i.xml:81
-msgid "Zero vector."
+#: doc/classes/Vector2.xml:344 doc/classes/Vector2i.xml:73
+#: doc/classes/Vector3.xml:352 doc/classes/Vector3i.xml:81
+msgid "Zero vector, a vector with all components set to [code]0[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:342 doc/classes/Vector2i.xml:76
-#: doc/classes/Vector3.xml:349 doc/classes/Vector3i.xml:84
-msgid "One vector."
+#: doc/classes/Vector2.xml:347 doc/classes/Vector2i.xml:76
+#: doc/classes/Vector3.xml:355 doc/classes/Vector3i.xml:84
+msgid "One vector, a vector with all components set to [code]1[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:345 doc/classes/Vector3.xml:352
-msgid "Infinity vector."
+#: doc/classes/Vector2.xml:350 doc/classes/Vector3.xml:358
+msgid ""
+"Infinity vector, a vector with all components set to [constant @GDScript."
+"INF]."
msgstr ""
-#: doc/classes/Vector2.xml:348 doc/classes/Vector2i.xml:79
-#: doc/classes/Vector3.xml:355 doc/classes/Vector3i.xml:87
-msgid "Left unit vector."
+#: doc/classes/Vector2.xml:353 doc/classes/Vector2i.xml:79
+msgid "Left unit vector. Represents the direction of left."
msgstr ""
-#: doc/classes/Vector2.xml:351 doc/classes/Vector2i.xml:82
-#: doc/classes/Vector3.xml:358 doc/classes/Vector3i.xml:90
-msgid "Right unit vector."
+#: doc/classes/Vector2.xml:356 doc/classes/Vector2i.xml:82
+msgid "Right unit vector. Represents the direction of right."
msgstr ""
-#: doc/classes/Vector2.xml:354 doc/classes/Vector2i.xml:85
-#: doc/classes/Vector3.xml:361 doc/classes/Vector3i.xml:93
-msgid "Up unit vector."
+#: doc/classes/Vector2.xml:359 doc/classes/Vector2i.xml:85
+msgid "Up unit vector. Y is down in 2D, so this vector points -Y."
msgstr ""
-#: doc/classes/Vector2.xml:357 doc/classes/Vector2i.xml:88
-#: doc/classes/Vector3.xml:364 doc/classes/Vector3i.xml:96
-msgid "Down unit vector."
+#: doc/classes/Vector2.xml:362 doc/classes/Vector2i.xml:88
+msgid "Down unit vector. Y is down in 2D, so this vector points +Y."
msgstr ""
#: doc/classes/Vector2i.xml:4
@@ -53688,6 +54462,16 @@ msgid ""
"will be truncated."
msgstr ""
+#: doc/classes/Vector2i.xml:46
+msgid "Returns the ratio of [member x] to [member y]."
+msgstr ""
+
+#: doc/classes/Vector2i.xml:53 doc/classes/Vector3i.xml:55
+msgid ""
+"Returns the vector with each component set to one or negative one, depending "
+"on the signs of the components."
+msgstr ""
+
#: doc/classes/Vector3.xml:4
msgid "Vector used for 3D math using floating point coordinates."
msgstr ""
@@ -53712,120 +54496,170 @@ msgid "Returns a [Vector3] with the given components."
msgstr ""
#: doc/classes/Vector3.xml:50
-msgid "Returns the minimum angle to the given vector."
+msgid "Returns the minimum angle to the given vector, in radians."
msgstr ""
#: doc/classes/Vector3.xml:66
-msgid "Returns a new vector with all components rounded up."
+msgid ""
+"Returns a new vector with all components rounded up (towards positive "
+"infinity)."
msgstr ""
#: doc/classes/Vector3.xml:75
-msgid "Returns the cross product with [code]b[/code]."
+msgid "Returns the cross product of this vector and [code]b[/code]."
msgstr ""
#: doc/classes/Vector3.xml:90
msgid ""
"Performs a cubic interpolation between vectors [code]pre_a[/code], [code]a[/"
"code], [code]b[/code], [code]post_b[/code] ([code]a[/code] is current), by "
-"the given amount [code]t[/code]. [code]t[/code] is in the range of [code]0.0 "
-"- 1.0[/code], representing the amount of interpolation."
-msgstr ""
-
-#: doc/classes/Vector3.xml:108
-msgid ""
-"Returns the squared distance to [code]b[/code]. Prefer this function over "
-"[method distance_to] if you need to sort vectors or need the squared "
-"distance for some formula."
+"the given amount [code]t[/code]. [code]t[/code] is on the range of 0.0 to "
+"1.0, representing the amount of interpolation."
msgstr ""
-#: doc/classes/Vector3.xml:117
-msgid "Returns the distance to [code]b[/code]."
+#: doc/classes/Vector3.xml:118
+msgid "Returns the distance between this vector and [code]b[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:126
-msgid "Returns the dot product with [code]b[/code]."
+#: doc/classes/Vector3.xml:127
+msgid ""
+"Returns the dot product of this vector and [code]b[/code]. This can be used "
+"to compare the angle between two vectors. For example, this can be used to "
+"determine whether an enemy is facing the player.\n"
+"The dot product will be [code]0[/code] for a straight angle (90 degrees), "
+"greater than 0 for angles narrower than 90 degrees and lower than 0 for "
+"angles wider than 90 degrees.\n"
+"When using unit (normalized) vectors, the result will always be between "
+"[code]-1.0[/code] (180 degree angle) when the vectors are facing opposite "
+"directions, and [code]1.0[/code] (0 degree angle) when the vectors are "
+"aligned.\n"
+"[b]Note:[/b] [code]a.dot(b)[/code] is equivalent to [code]b.dot(a)[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:133
-msgid "Returns a new vector with all components rounded down."
+#: doc/classes/Vector3.xml:137
+msgid ""
+"Returns a new vector with all components rounded down (towards negative "
+"infinity)."
msgstr ""
-#: doc/classes/Vector3.xml:140
+#: doc/classes/Vector3.xml:144
msgid ""
"Returns the inverse of the vector. This is the same as [code]Vector3( 1.0 / "
"v.x, 1.0 / v.y, 1.0 / v.z )[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:170
+#: doc/classes/Vector3.xml:193 doc/classes/Vector3i.xml:41
msgid ""
-"Returns the vector's length squared. Prefer this function over [method "
-"length] if you need to sort vectors or need the squared length for some "
-"formula."
+"Returns the axis of the vector's largest value. See [code]AXIS_*[/code] "
+"constants. If all components are equal, this method returns [constant "
+"AXIS_X]."
msgstr ""
-#: doc/classes/Vector3.xml:181
+#: doc/classes/Vector3.xml:200 doc/classes/Vector3i.xml:48
msgid ""
-"Returns the result of the linear interpolation between this vector and "
-"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation.."
+"Returns the axis of the vector's smallest value. See [code]AXIS_*[/code] "
+"constants. If all components are equal, this method returns [constant "
+"AXIS_Z]."
msgstr ""
-#: doc/classes/Vector3.xml:188 doc/classes/Vector3i.xml:41
+#: doc/classes/Vector3.xml:211
msgid ""
-"Returns the axis of the vector's largest value. See [code]AXIS_*[/code] "
-"constants."
+"Moves this vector toward [code]to[/code] by the fixed [code]delta[/code] "
+"amount."
msgstr ""
-#: doc/classes/Vector3.xml:195 doc/classes/Vector3i.xml:48
+#: doc/classes/Vector3.xml:227
+msgid "Returns the outer product with [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:254
+msgid "Returns this vector projected onto another vector [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:263
+msgid "Returns this vector reflected from a plane defined by the given normal."
+msgstr ""
+
+#: doc/classes/Vector3.xml:274
msgid ""
-"Returns the axis of the vector's smallest value. See [code]AXIS_*[/code] "
-"constants."
+"Rotates this vector around a given axis by [code]phi[/code] radians. The "
+"axis must be a normalized vector."
msgstr ""
-#: doc/classes/Vector3.xml:222
-msgid "Returns the outer product with [code]b[/code]."
+#: doc/classes/Vector3.xml:281
+msgid ""
+"Returns this vector with all components rounded to the nearest integer, with "
+"halfway cases rounded away from zero."
msgstr ""
-#: doc/classes/Vector3.xml:269
+#: doc/classes/Vector3.xml:288
msgid ""
-"Rotates the vector around a given axis by [code]phi[/code] radians. The axis "
-"must be a normalized vector."
+"Returns a vector with each component set to one or negative one, depending "
+"on the signs of this vector's components, or zero if the component is zero, "
+"by calling [method @GDScript.sign] on each component."
msgstr ""
-#: doc/classes/Vector3.xml:320
-msgid "Returns a diagonal matrix with the vector as main diagonal."
+#: doc/classes/Vector3.xml:325
+msgid ""
+"Returns a diagonal matrix with the vector as main diagonal.\n"
+"This is equivalent to a Basis with no rotation or shearing and this vector's "
+"components set as the scale."
msgstr ""
-#: doc/classes/Vector3.xml:332 doc/classes/Vector3i.xml:67
+#: doc/classes/Vector3.xml:338 doc/classes/Vector3i.xml:67
msgid ""
"The vector's Z component. Also accessible by using the index position [code]"
"[2][/code]."
msgstr ""
-#: doc/classes/Vector3.xml:337
+#: doc/classes/Vector3.xml:343
msgid ""
"Enumerated value for the X axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:340
+#: doc/classes/Vector3.xml:346
msgid ""
"Enumerated value for the Y axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:343
+#: doc/classes/Vector3.xml:349
msgid ""
"Enumerated value for the Z axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:367 doc/classes/Vector3i.xml:99
-msgid "Forward unit vector."
+#: doc/classes/Vector3.xml:361 doc/classes/Vector3i.xml:87
+msgid ""
+"Left unit vector. Represents the local direction of left, and the global "
+"direction of west."
msgstr ""
-#: doc/classes/Vector3.xml:370 doc/classes/Vector3i.xml:102
-msgid "Back unit vector."
+#: doc/classes/Vector3.xml:364 doc/classes/Vector3i.xml:90
+msgid ""
+"Right unit vector. Represents the local direction of right, and the global "
+"direction of east."
+msgstr ""
+
+#: doc/classes/Vector3.xml:367 doc/classes/Vector3i.xml:93
+msgid "Up unit vector."
+msgstr ""
+
+#: doc/classes/Vector3.xml:370 doc/classes/Vector3i.xml:96
+msgid "Down unit vector."
+msgstr ""
+
+#: doc/classes/Vector3.xml:373 doc/classes/Vector3i.xml:99
+msgid ""
+"Forward unit vector. Represents the local direction of forward, and the "
+"global direction of north."
+msgstr ""
+
+#: doc/classes/Vector3.xml:376 doc/classes/Vector3i.xml:102
+msgid ""
+"Back unit vector. Represents the local direction of back, and the global "
+"direction of south."
msgstr ""
#: doc/classes/Vector3i.xml:4
@@ -53874,10 +54708,14 @@ msgid ""
"directly.\n"
"[b]Note:[/b] The origin point of your VehicleBody3D will determine the "
"center of gravity of your vehicle so it is better to keep this low and move "
-"the [CollisionShape3D] and [MeshInstance3D] upwards."
+"the [CollisionShape3D] and [MeshInstance3D] upwards.\n"
+"[b]Note:[/b] This class has known issues and isn't designed to provide "
+"realistic 3D vehicle physics. If you want advanced vehicle physics, you will "
+"probably have to write your own physics integration using another "
+"[PhysicsBody3D] class."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:16
+#: doc/classes/VehicleBody3D.xml:17
msgid ""
"Slows down the vehicle by applying a braking force. The vehicle is only "
"slowed down if the wheels are in contact with a surface. The force you need "
@@ -53886,7 +54724,7 @@ msgid ""
"a value in the 25 - 30 range for hard braking."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:19
+#: doc/classes/VehicleBody3D.xml:20
msgid ""
"Accelerates the vehicle by applying an engine force. The vehicle is only "
"speed up if the wheels that have [member VehicleWheel3D.use_as_traction] set "
@@ -53899,7 +54737,7 @@ msgid ""
"A negative value will result in the vehicle reversing."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:25
+#: doc/classes/VehicleBody3D.xml:26
msgid ""
"The steering angle for the vehicle. Setting this to a non-zero value will "
"result in the vehicle turning when it's moving. Wheels that have [member "
@@ -53915,25 +54753,29 @@ msgstr ""
msgid ""
"This node needs to be used as a child node of [VehicleBody3D] and simulates "
"the behavior of one of its wheels. This node also acts as a collider to "
-"detect if the wheel is touching a surface."
+"detect if the wheel is touching a surface.\n"
+"[b]Note:[/b] This class has known issues and isn't designed to provide "
+"realistic 3D vehicle physics. If you want advanced vehicle physics, you will "
+"probably have to write your own physics integration using another "
+"[PhysicsBody3D] class."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:16
+#: doc/classes/VehicleWheel3D.xml:17
msgid "Returns the rotational speed of the wheel in revolutions per minute."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:23
+#: doc/classes/VehicleWheel3D.xml:24
msgid ""
"Returns a value between 0.0 and 1.0 that indicates whether this wheel is "
"skidding. 0.0 is skidding (the wheel has lost grip, e.g. icy terrain), 1.0 "
"means not skidding (the wheel has full grip, e.g. dry asphalt road)."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:30
+#: doc/classes/VehicleWheel3D.xml:31
msgid "Returns [code]true[/code] if this wheel is in contact with a surface."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:36
+#: doc/classes/VehicleWheel3D.xml:37
msgid ""
"Slows down the wheel by applying a braking force. The wheel is only slowed "
"down if it is in contact with a surface. The force you need to apply to "
@@ -53942,7 +54784,7 @@ msgid ""
"- 30 range for hard braking."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:39
+#: doc/classes/VehicleWheel3D.xml:40
msgid ""
"The damping applied to the spring when the spring is being compressed. This "
"value should be between 0.0 (no damping) and 1.0. A value of 0.0 means the "
@@ -53950,7 +54792,7 @@ msgid ""
"is around 0.3 for a normal car, 0.5 for a race car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:42
+#: doc/classes/VehicleWheel3D.xml:43
msgid ""
"The damping applied to the spring when relaxing. This value should be "
"between 0.0 (no damping) and 1.0. This value should always be slightly "
@@ -53958,7 +54800,7 @@ msgid ""
"damping_compression] value of 0.3, try a relaxation value of 0.5."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:45
+#: doc/classes/VehicleWheel3D.xml:46
msgid ""
"Accelerates the wheel by applying an engine force. The wheel is only speed "
"up if it is in contact with a surface. The [member RigidBody3D.mass] of the "
@@ -53969,13 +54811,13 @@ msgid ""
"A negative value will result in the wheel reversing."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:50
+#: doc/classes/VehicleWheel3D.xml:51
msgid ""
"The steering angle for the wheel. Setting this to a non-zero value will "
"result in the vehicle turning when it's moving."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:53
+#: doc/classes/VehicleWheel3D.xml:54
msgid ""
"The maximum force the spring can resist. This value should be higher than a "
"quarter of the [member RigidBody3D.mass] of the [VehicleBody3D] or the "
@@ -53983,28 +54825,28 @@ msgid ""
"obtained by a value that is about 3× to 4× this number."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:56
+#: doc/classes/VehicleWheel3D.xml:57
msgid ""
"This value defines the stiffness of the suspension. Use a value lower than "
"50 for an off-road car, a value between 50 and 100 for a race car and try "
"something around 200 for something like a Formula 1 car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:59
+#: doc/classes/VehicleWheel3D.xml:60
msgid ""
"This is the distance the suspension can travel. As Godot units are "
"equivalent to meters, keep this setting relatively low. Try a value between "
"0.1 and 0.3 depending on the type of car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:62
+#: doc/classes/VehicleWheel3D.xml:63
msgid ""
"If [code]true[/code], this wheel will be turned when the car steers. This "
"value is used in conjunction with [member VehicleBody3D.steering] and "
"ignored if you are using the per-wheel [member steering] value instead."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:65
+#: doc/classes/VehicleWheel3D.xml:66
msgid ""
"If [code]true[/code], this wheel transfers engine force to the ground to "
"propel the vehicle forward. This value is used in conjunction with [member "
@@ -54012,7 +54854,7 @@ msgid ""
"[member engine_force] value instead."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:68
+#: doc/classes/VehicleWheel3D.xml:69
msgid ""
"This determines how much grip this wheel has. It is combined with the "
"friction setting of the surface the wheel is in contact with. 0.0 means no "
@@ -54022,11 +54864,11 @@ msgid ""
"It's best to set this to 1.0 when starting out."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:72
+#: doc/classes/VehicleWheel3D.xml:73
msgid "The radius of the wheel in meters."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:75
+#: doc/classes/VehicleWheel3D.xml:76
msgid ""
"This is the distance in meters the wheel is lowered from its origin point. "
"Don't set this to 0.0 and move the wheel into position, instead move the "
@@ -54035,7 +54877,7 @@ msgid ""
"down to the position it should be in when the car is in rest."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:78
+#: doc/classes/VehicleWheel3D.xml:79
msgid ""
"This value affects the roll of your vehicle. If set to 1.0 for all wheels, "
"your vehicle will be prone to rolling over, while a value of 0.0 will resist "
@@ -54513,7 +55355,7 @@ msgstr ""
#: doc/classes/Viewport.xml:318
msgid ""
"Use fast approximate antialiasing. FXAA is a popular screen-space "
-"antialising method, which is fast but will make the image look blurry, "
+"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."
msgstr ""
@@ -54566,24 +55408,24 @@ msgid ""
"your [WorldEnvironment]."
msgstr ""
-#: doc/classes/Viewport.xml:384
+#: doc/classes/Viewport.xml:381
msgid ""
"Colors each PSSM split for the [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, and yellow."
msgstr ""
-#: doc/classes/Viewport.xml:387
+#: doc/classes/Viewport.xml:384
msgid ""
"Draws the decal atlas used by [Decal]s and light projector textures in the "
"upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/Viewport.xml:402
+#: doc/classes/Viewport.xml:405
msgid "Max value for [enum DefaultCanvasItemTextureFilter] enum."
msgstr ""
-#: doc/classes/Viewport.xml:414
+#: doc/classes/Viewport.xml:417
msgid "Max value for [enum DefaultCanvasItemTextureRepeat] enum."
msgstr ""
@@ -54614,82 +55456,84 @@ msgid ""
"The VisibilityEnabler2D will disable [RigidBody2D], [AnimationPlayer], and "
"other nodes when they are not visible. It will only affect nodes with the "
"same root node as the VisibilityEnabler2D, and the root node itself.\n"
+"If you just want to receive notifications, use [VisibilityNotifier2D] "
+"instead.\n"
"[b]Note:[/b] For performance reasons, VisibilityEnabler2D uses an "
"approximate heuristic with precision determined by [member ProjectSettings."
-"world/2d/cell_size]. If you need exact visibility checking, use another "
+"world/2d/cell_size]. If you need precise visibility checking, use another "
"method such as adding an [Area2D] node as a child of a [Camera2D] node.\n"
"[b]Note:[/b] VisibilityEnabler2D will not affect nodes added after scene "
"initialization."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:20
-#: doc/classes/VisibilityEnabler3D.xml:20
+#: doc/classes/VisibilityEnabler2D.xml:21
+#: doc/classes/VisibilityEnabler3D.xml:21
msgid ""
"Returns whether the enabler identified by given [enum Enabler] constant is "
"active."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:31
-#: doc/classes/VisibilityEnabler3D.xml:31
+#: doc/classes/VisibilityEnabler2D.xml:32
+#: doc/classes/VisibilityEnabler3D.xml:32
msgid ""
"Sets active state of the enabler identified by given [enum Enabler] constant."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:37
+#: doc/classes/VisibilityEnabler2D.xml:38
msgid "If [code]true[/code], [RigidBody2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:40
+#: doc/classes/VisibilityEnabler2D.xml:41
msgid "If [code]true[/code], [AnimatedSprite2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:43
-#: doc/classes/VisibilityEnabler3D.xml:40
+#: doc/classes/VisibilityEnabler2D.xml:44
+#: doc/classes/VisibilityEnabler3D.xml:41
msgid "If [code]true[/code], [AnimationPlayer] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:46
+#: doc/classes/VisibilityEnabler2D.xml:47
msgid "If [code]true[/code], [GPUParticles2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:49
+#: doc/classes/VisibilityEnabler2D.xml:50
msgid ""
"If [code]true[/code], the parent's [method Node._physics_process] will be "
"stopped."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:52
+#: doc/classes/VisibilityEnabler2D.xml:53
msgid ""
"If [code]true[/code], the parent's [method Node._process] will be stopped."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:57
-#: doc/classes/VisibilityEnabler3D.xml:45
+#: doc/classes/VisibilityEnabler2D.xml:58
+#: doc/classes/VisibilityEnabler3D.xml:46
msgid "This enabler will pause [AnimationPlayer] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:60
+#: doc/classes/VisibilityEnabler2D.xml:61
msgid "This enabler will freeze [RigidBody2D] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:63
+#: doc/classes/VisibilityEnabler2D.xml:64
msgid "This enabler will stop [GPUParticles2D] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:66
+#: doc/classes/VisibilityEnabler2D.xml:67
msgid "This enabler will stop the parent's _process function."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:69
+#: doc/classes/VisibilityEnabler2D.xml:70
msgid "This enabler will stop the parent's _physics_process function."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:72
+#: doc/classes/VisibilityEnabler2D.xml:73
msgid "This enabler will stop [AnimatedSprite2D] nodes animations."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:75
-#: doc/classes/VisibilityEnabler3D.xml:51
+#: doc/classes/VisibilityEnabler2D.xml:76
+#: doc/classes/VisibilityEnabler3D.xml:52
msgid "Represents the size of the [enum Enabler] enum."
msgstr ""
@@ -54698,19 +55542,23 @@ msgid ""
"The VisibilityEnabler3D will disable [RigidBody3D] and [AnimationPlayer] "
"nodes when they are not visible. It will only affect other nodes within the "
"same scene as the VisibilityEnabler3D itself.\n"
+"If you just want to receive notifications, use [VisibilityNotifier3D] "
+"instead.\n"
"[b]Note:[/b] VisibilityEnabler3D uses an approximate heuristic for "
"performance reasons. It doesn't take walls and other occlusion into account. "
-"If you need exact visibility checking, use another method such as adding an "
-"[Area3D] node as a child of a [Camera3D] node.\n"
+"The heuristic is an implementation detail and may change in future versions. "
+"If you need precise visibility checking, use another method such as adding "
+"an [Area3D] node as a child of a [Camera3D] node and/or [method Vector3."
+"dot].\n"
"[b]Note:[/b] VisibilityEnabler3D will not affect nodes added after scene "
"initialization."
msgstr ""
-#: doc/classes/VisibilityEnabler3D.xml:37
+#: doc/classes/VisibilityEnabler3D.xml:38
msgid "If [code]true[/code], [RigidBody3D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler3D.xml:48
+#: doc/classes/VisibilityEnabler3D.xml:49
msgid "This enabler will freeze [RigidBody3D] nodes."
msgstr ""
@@ -54724,13 +55572,15 @@ msgid ""
"The VisibilityNotifier2D detects when it is visible on the screen. It also "
"notifies when its bounding rectangle enters or exits the screen or a "
"viewport.\n"
+"If you want nodes to be disabled automatically when they exit the screen, "
+"use [VisibilityEnabler2D] instead.\n"
"[b]Note:[/b] For performance reasons, VisibilityNotifier2D uses an "
"approximate heuristic with precision determined by [member ProjectSettings."
-"world/2d/cell_size]. If you need exact visibility checking, use another "
+"world/2d/cell_size]. If you need precise visibility checking, use another "
"method such as adding an [Area2D] node as a child of a [Camera2D] node."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:17
+#: doc/classes/VisibilityNotifier2D.xml:18
msgid ""
"If [code]true[/code], the bounding rectangle is on the screen.\n"
"[b]Note:[/b] It takes one frame for the node's visibility to be assessed "
@@ -54739,23 +55589,23 @@ msgid ""
"pass."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:24
+#: doc/classes/VisibilityNotifier2D.xml:25
msgid "The VisibilityNotifier2D's bounding rectangle."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:30
+#: doc/classes/VisibilityNotifier2D.xml:31
msgid "Emitted when the VisibilityNotifier2D enters the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:35
+#: doc/classes/VisibilityNotifier2D.xml:36
msgid "Emitted when the VisibilityNotifier2D exits the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:42
+#: doc/classes/VisibilityNotifier2D.xml:43
msgid "Emitted when the VisibilityNotifier2D enters a [Viewport]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:49
+#: doc/classes/VisibilityNotifier2D.xml:50
msgid "Emitted when the VisibilityNotifier2D exits a [Viewport]'s view."
msgstr ""
@@ -54764,13 +55614,16 @@ msgid ""
"The VisibilityNotifier3D detects when it is visible on the screen. It also "
"notifies when its bounding rectangle enters or exits the screen or a "
"[Camera3D]'s view.\n"
+"If you want nodes to be disabled automatically when they exit the screen, "
+"use [VisibilityEnabler3D] instead.\n"
"[b]Note:[/b] VisibilityNotifier3D uses an approximate heuristic for "
"performance reasons. It doesn't take walls and other occlusion into account. "
-"If you need exact visibility checking, use another method such as adding an "
-"[Area3D] node as a child of a [Camera3D] node."
+"The heuristic is an implementation detail and may change in future versions. "
+"If you need precise visibility checking, use another method such as adding "
+"an [Area3D] node as a child of a [Camera3D] node and/or [method Vector3.dot]."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:17
+#: doc/classes/VisibilityNotifier3D.xml:18
msgid ""
"If [code]true[/code], the bounding box is on the screen.\n"
"[b]Note:[/b] It takes one frame for the node's visibility to be assessed "
@@ -54779,23 +55632,23 @@ msgid ""
"pass."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:24
+#: doc/classes/VisibilityNotifier3D.xml:25
msgid "The VisibilityNotifier3D's bounding box."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:32
+#: doc/classes/VisibilityNotifier3D.xml:33
msgid "Emitted when the VisibilityNotifier3D enters a [Camera3D]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:39
+#: doc/classes/VisibilityNotifier3D.xml:40
msgid "Emitted when the VisibilityNotifier3D exits a [Camera3D]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:44
+#: doc/classes/VisibilityNotifier3D.xml:45
msgid "Emitted when the VisibilityNotifier3D enters the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:49
+#: doc/classes/VisibilityNotifier3D.xml:50
msgid "Emitted when the VisibilityNotifier3D exits the screen."
msgstr ""
@@ -55215,6 +56068,12 @@ msgid ""
"exist."
msgstr ""
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:90
+msgid ""
+"Easing function, based on exponent. 0 is constant, 1 is linear, 0 to 1 is "
+"ease-in, 1+ is ease out. Negative values are in-out/out in."
+msgstr ""
+
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:93
msgid ""
"Return the number of digit places after the decimal that the first non-zero "
@@ -56100,6 +56959,7 @@ msgid "A shader for light calculations."
msgstr ""
#: doc/classes/VisualShader.xml:214
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:26
msgid "Represents the size of the [enum Type] enum."
msgstr ""
@@ -56202,6 +57062,24 @@ msgstr ""
msgid "Translated to [code]uniform bool[/code] in the shader language."
msgstr ""
+#: doc/classes/VisualShaderNodeBooleanUniform.xml:15
+#: doc/classes/VisualShaderNodeColorUniform.xml:15
+#: doc/classes/VisualShaderNodeFloatUniform.xml:15
+#: doc/classes/VisualShaderNodeIntUniform.xml:15
+#: doc/classes/VisualShaderNodeTransformUniform.xml:15
+#: doc/classes/VisualShaderNodeVec3Uniform.xml:15
+msgid "A default value to be assigned within the shader."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeBooleanUniform.xml:18
+#: doc/classes/VisualShaderNodeColorUniform.xml:18
+#: doc/classes/VisualShaderNodeFloatUniform.xml:18
+#: doc/classes/VisualShaderNodeIntUniform.xml:18
+#: doc/classes/VisualShaderNodeTransformUniform.xml:18
+#: doc/classes/VisualShaderNodeVec3Uniform.xml:18
+msgid "Enables usage of the [member default_value]."
+msgstr ""
+
#: doc/classes/VisualShaderNodeColorConstant.xml:4
msgid "A [Color] constant to be used within the visual shader graph."
msgstr ""
@@ -57052,49 +57930,49 @@ msgstr ""
msgid "Translated to [code]uniform float[/code] in the shader language."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:15
-#: doc/classes/VisualShaderNodeIntUniform.xml:15
+#: doc/classes/VisualShaderNodeFloatUniform.xml:21
+#: doc/classes/VisualShaderNodeIntUniform.xml:21
msgid ""
"A hint applied to the uniform, which controls the values it can take when "
"set through the inspector."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:18
-#: doc/classes/VisualShaderNodeIntUniform.xml:18
+#: doc/classes/VisualShaderNodeFloatUniform.xml:24
+#: doc/classes/VisualShaderNodeIntUniform.xml:24
msgid ""
"Minimum value for range hints. Used if [member hint] is set to [constant "
"HINT_RANGE] or [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:21
-#: doc/classes/VisualShaderNodeIntUniform.xml:21
+#: doc/classes/VisualShaderNodeFloatUniform.xml:27
+#: doc/classes/VisualShaderNodeIntUniform.xml:27
msgid ""
"Maximum value for range hints. Used if [member hint] is set to [constant "
"HINT_RANGE] or [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:24
-#: doc/classes/VisualShaderNodeIntUniform.xml:24
+#: doc/classes/VisualShaderNodeFloatUniform.xml:30
+#: doc/classes/VisualShaderNodeIntUniform.xml:30
msgid ""
"Step (increment) value for the range hint with step. Used if [member hint] "
"is set to [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:29
-#: doc/classes/VisualShaderNodeIntUniform.xml:29
+#: doc/classes/VisualShaderNodeFloatUniform.xml:35
+#: doc/classes/VisualShaderNodeIntUniform.xml:35
msgid "No hint used."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:32
-#: doc/classes/VisualShaderNodeIntUniform.xml:32
+#: doc/classes/VisualShaderNodeFloatUniform.xml:38
+#: doc/classes/VisualShaderNodeIntUniform.xml:38
msgid ""
"A range hint for scalar value, which limits possible input values between "
"[member min] and [member max]. Translated to [code]hint_range(min, max)[/"
"code] in shader code."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:35
-#: doc/classes/VisualShaderNodeIntUniform.xml:35
+#: doc/classes/VisualShaderNodeFloatUniform.xml:41
+#: doc/classes/VisualShaderNodeIntUniform.xml:41
msgid ""
"A range hint for scalar value with step, which limits possible input values "
"between [member min] and [member max], with a step (increment) of [member "
@@ -57376,6 +58254,26 @@ msgid ""
"results, e.g. division by zero)."
msgstr ""
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:4
+msgid "Performs a fused multiply-add operation within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:7
+msgid "Uses three operands to compute [code](a * b + c)[/code] expression."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:15
+msgid "A type of operands and returned value."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:20
+msgid "A scalar type."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:23
+msgid "A vector type."
+msgstr ""
+
#: doc/classes/VisualShaderNodeOuterProduct.xml:4
msgid ""
"Calculates an outer product of two vectors within the visual shader graph."
@@ -57398,7 +58296,7 @@ msgstr ""
#: doc/classes/VisualShaderNodeOutput.xml:7
msgid ""
"This visual shader node is present in all shader graphs in form of \"Output"
-"\" block with mutliple output value ports."
+"\" block with multiple output value ports."
msgstr ""
#: doc/classes/VisualShaderNodeSample3D.xml:4
@@ -57762,6 +58660,20 @@ msgid ""
"[ShaderMaterial] properties."
msgstr ""
+#: doc/classes/VisualShaderNodeUniformRef.xml:4
+msgid "A reference to an existing [VisualShaderNodeUniform]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniformRef.xml:7
+msgid ""
+"Creating a reference to a [VisualShaderNodeUniform] allows you to reuse this "
+"uniform in different shaders or shader stages easily."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniformRef.xml:15
+msgid "The name of the uniform which this reference points to."
+msgstr ""
+
#: doc/classes/VisualShaderNodeVec3Constant.xml:4
msgid "A [Vector3] constant to be used within the visual shader graph."
msgstr ""
@@ -58092,7 +59004,7 @@ msgstr ""
msgid ""
"Translated to [code]refract(I, N, eta)[/code] in the shader language, where "
"[code]I[/code] is the incident vector, [code]N[/code] is the normal vector "
-"and [code]eta[/code] is the ratio of the indicies of the refraction."
+"and [code]eta[/code] is the ratio of the indices of the refraction."
msgstr ""
#: doc/classes/VisualShaderNodeVectorScalarMix.xml:4
diff --git a/doc/translations/cs.po b/doc/translations/cs.po
index 9ee2f91329..8f8cb7da91 100644
--- a/doc/translations/cs.po
+++ b/doc/translations/cs.po
@@ -5,12 +5,14 @@
#
# Ondrej Pavelka <ondrej.pavelka@outlook.com>, 2020.
# Zbyněk <zbynek.fiala@gmail.com>, 2020.
+# Daniel Kříž <Daniel.kriz@protonmail.com>, 2020.
+# Vojtěch Šamla <auzkok@seznam.cz>, 2020.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine class reference\n"
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
-"PO-Revision-Date: 2020-06-25 08:53+0000\n"
-"Last-Translator: Zbyněk <zbynek.fiala@gmail.com>\n"
+"PO-Revision-Date: 2020-08-11 14:39+0000\n"
+"Last-Translator: Daniel Kříž <Daniel.kriz@protonmail.com>\n"
"Language-Team: Czech <https://hosted.weblate.org/projects/godot-engine/godot-"
"class-reference/cs/>\n"
"Language: cs\n"
@@ -46,7 +48,7 @@ msgstr "Signály"
#: doc/tools/makerst.py
msgid "Enumerations"
-msgstr ""
+msgstr "VýÄty"
#: doc/tools/makerst.py
msgid "Constants"
@@ -62,7 +64,7 @@ msgstr "Popisy metod"
#: modules/gdscript/doc_classes/@GDScript.xml:4
msgid "Built-in GDScript functions."
-msgstr "Funkce, které jsou souÄástí GDScriptu."
+msgstr "Vestvavěné funkce GDScriptu."
#: modules/gdscript/doc_classes/@GDScript.xml:7
msgid ""
@@ -116,8 +118,8 @@ msgstr ""
#: modules/gdscript/doc_classes/@GDScript.xml:55
#, fuzzy
msgid ""
-"Returns the absolute value of parameter [code]s[/code] (i.e. unsigned value, "
-"works for integer and float).\n"
+"Returns the absolute value of parameter [code]s[/code] (i.e. positive "
+"value).\n"
"[codeblock]\n"
"# a is 1\n"
"a = abs(-1)\n"
@@ -131,7 +133,6 @@ msgstr ""
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:68
-#, fuzzy
msgid ""
"Returns the arc cosine of [code]s[/code] in radians. Use to get the angle of "
"cosine [code]s[/code].\n"
@@ -140,7 +141,7 @@ msgid ""
"c = acos(0.866025)\n"
"[/codeblock]"
msgstr ""
-"Vrátí oblouk funkce kosinus hodnoty [code]s[/code] v radiánech. Použijte pro "
+"Vrátí arcus funkce kosinus hodnoty [code]s[/code] v radiánech. Použijte pro "
"získání úhlu kosinu [code]s[/code].\n"
"[codeblock]\n"
"# c je 0.523599 nebo 30 stupňů pokud je konvertováno pomocí rad2deg(s)\n"
@@ -148,7 +149,6 @@ msgstr ""
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:81
-#, fuzzy
msgid ""
"Returns the arc sine of [code]s[/code] in radians. Use to get the angle of "
"sine [code]s[/code].\n"
@@ -157,7 +157,7 @@ msgid ""
"s = asin(0.5)\n"
"[/codeblock]"
msgstr ""
-"Vrátí oblouk funkce sinus hodnoty [code]s[/code] v radiánech. Použijte pro "
+"Vrátí arcus funkce sinus hodnoty [code]s[/code] v radiánech. Použijte pro "
"získání úhlu kosinu [code]s[/code].\n"
"[codeblock]\n"
"# s je 0.523599 nebo 30 stupňů pokud je konvertováno pomocí rad2deg(s)\n"
@@ -165,7 +165,6 @@ msgstr ""
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:96
-#, fuzzy
msgid ""
"Asserts that the [code]condition[/code] is [code]true[/code]. If the "
"[code]condition[/code] is [code]false[/code], an error is generated and the "
@@ -206,28 +205,47 @@ msgstr ""
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:114
+#, fuzzy
msgid ""
"Returns the arc tangent of [code]s[/code] in radians. Use it to get the "
"angle from an angle's tangent in trigonometry: [code]atan(tan(angle)) == "
"angle[/code].\n"
"The method cannot know in which quadrant the angle should fall. See [method "
-"atan2] if you always want an exact angle.\n"
+"atan2] if you have both [code]y[/code] and [code]x[/code].\n"
"[codeblock]\n"
"a = atan(0.5) # a is 0.463648\n"
"[/codeblock]"
msgstr ""
+"Vrací arcus tangens [code]s[/code] v radianech. Používejte to abyste získali "
+"úhel z tangens úhlu používaného v trigonometrii: [code]atan(tan(angle)) == "
+"angle[/code].\n"
+"Metoda nemůže vědět do kterého kvadrantu bude úhel zasahovat. Pokud chcete "
+"přesný úhel použíjte funkci [method atan2].\n"
+"[codeblock]\n"
+"a = atan(0.5) # a is 0.463648\n"
+"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:129
+#, fuzzy
msgid ""
"Returns the arc tangent of [code]y/x[/code] in radians. Use to get the angle "
"of tangent [code]y/x[/code]. To compute the value, the method takes into "
"account the sign of both arguments in order to determine the quadrant.\n"
+"Important note: The Y coordinate comes first, by convention.\n"
"[codeblock]\n"
"a = atan2(0, -1) # a is 3.141593\n"
"[/codeblock]"
msgstr ""
+"Vrací arcus tangens [code]s[/code] v radianech. Používejte to abyste získali "
+"úhel z tangens úhlu používaného v trigonometrii: [code]atan(tan(angle)) == "
+"angle[/code].\n"
+"Metoda nemůže vědět do kterého kvadrantu bude úhel zasahovat. Pokud chcete "
+"přesný úhel použíjte funkci [method atan2].\n"
+"[codeblock]\n"
+"a = atan(0.5) # a is 0.463648\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:143
+#: modules/gdscript/doc_classes/@GDScript.xml:144
msgid ""
"Decodes a byte array back to a value. When [code]allow_objects[/code] is "
"[code]true[/code] decoding objects is allowed.\n"
@@ -242,7 +260,7 @@ msgstr ""
"důveryhodného zdroje. Tím se vyhnete potencionálním bezpeÄnostním hrozbám "
"(vzdálené spuštění kódu)."
-#: modules/gdscript/doc_classes/@GDScript.xml:155
+#: modules/gdscript/doc_classes/@GDScript.xml:156
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:145
msgid ""
"Converts a 2D point expressed in the cartesian coordinate system (X and Y "
@@ -252,10 +270,11 @@ msgstr ""
"Převede 2D bod vyjádřený v Kartézské soustavě souřadníc (osy X a Y) do "
"polární soustavy souÅ™adnic (vzdálenost bodu od poÄátku a úhel)."
-#: modules/gdscript/doc_classes/@GDScript.xml:164
+#: modules/gdscript/doc_classes/@GDScript.xml:165
+#, fuzzy
msgid ""
-"Rounds [code]s[/code] upward, returning the smallest integral value that is "
-"not less than [code]s[/code].\n"
+"Rounds [code]s[/code] upward (towards positive infinity), returning the "
+"smallest whole number that is not less than [code]s[/code].\n"
"[codeblock]\n"
"i = ceil(1.45) # i is 2\n"
"i = ceil(1.001) # i is 2\n"
@@ -268,7 +287,7 @@ msgstr ""
"i = ceil(1.001) # i je 2\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:177
+#: modules/gdscript/doc_classes/@GDScript.xml:178
msgid ""
"Returns a character as a String of the given Unicode code point (which is "
"compatible with ASCII code).\n"
@@ -288,7 +307,7 @@ msgstr ""
"[/codeblock]\n"
"Toto je inverzní metoda [method ord]."
-#: modules/gdscript/doc_classes/@GDScript.xml:196
+#: modules/gdscript/doc_classes/@GDScript.xml:197
msgid ""
"Clamps [code]value[/code] and returns a value not less than [code]min[/code] "
"and not more than [code]max[/code].\n"
@@ -303,7 +322,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:216
+#: modules/gdscript/doc_classes/@GDScript.xml:217
msgid ""
"Converts from a type to another in the best way possible. The [code]type[/"
"code] parameter uses the [enum Variant.Type] values.\n"
@@ -317,7 +336,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:233
+#: modules/gdscript/doc_classes/@GDScript.xml:234
msgid ""
"Returns the cosine of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -333,7 +352,7 @@ msgstr ""
"print(cos(PI))\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:247
+#: modules/gdscript/doc_classes/@GDScript.xml:248
msgid ""
"Returns the hyperbolic cosine of [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -347,11 +366,11 @@ msgstr ""
"print(cosh(1))\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:260
+#: modules/gdscript/doc_classes/@GDScript.xml:261
msgid "Converts from decibels to linear energy (audio)."
-msgstr ""
+msgstr "Převede z decibelů na linearní energii (audio)."
-#: modules/gdscript/doc_classes/@GDScript.xml:273
+#: modules/gdscript/doc_classes/@GDScript.xml:274
msgid ""
"Returns the result of [code]value[/code] decreased by [code]step[/code] * "
"[code]amount[/code].\n"
@@ -360,16 +379,17 @@ msgid ""
"a = dectime(60, 10, 0.1))\n"
"[/codeblock]"
msgstr ""
-"Vrátí výsledek [code]value[/code] sníženou o [code]step[/code] * "
+"Vrátí výsledek [code]value[/code] snížený o [code]step[/code] * "
"[code]amount[/code].\n"
"[codeblock]\n"
"# a = 59\n"
"a = dectime(60, 10, 0.1))\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:286
+#: modules/gdscript/doc_classes/@GDScript.xml:287
+#, fuzzy
msgid ""
-"Returns degrees converted to radians.\n"
+"Converts an angle expressed in degrees to radians.\n"
"[codeblock]\n"
"# r is 3.141593\n"
"r = deg2rad(180)\n"
@@ -381,24 +401,28 @@ msgstr ""
"r = deg2rad(180)\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:299
+#: modules/gdscript/doc_classes/@GDScript.xml:300
msgid ""
"Converts a previously converted instance to a dictionary, back into an "
"instance. Useful for deserializing."
msgstr ""
+"PÅ™evede dříve pÅ™evedenou instanci na slovník, zpátky na instanci. UžiteÄné "
+"při deserializaci."
-#: modules/gdscript/doc_classes/@GDScript.xml:310
-#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:90
+#: modules/gdscript/doc_classes/@GDScript.xml:311
msgid ""
-"Easing function, based on exponent. 0 is constant, 1 is linear, 0 to 1 is "
-"ease-in, 1+ is ease out. Negative values are in-out/out in."
+"Easing function, based on exponent. The curve values are: 0 is constant, 1 "
+"is linear, 0 to 1 is ease-in, 1+ is ease out. Negative values are in-out/out "
+"in."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:319
+#: modules/gdscript/doc_classes/@GDScript.xml:320
+#, fuzzy
msgid ""
"The natural exponential function. It raises the mathematical constant [b]e[/"
"b] to the power of [code]s[/code] and returns it.\n"
-"[b]e[/b] has an approximate value of 2.71828.\n"
+"[b]e[/b] has an approximate value of 2.71828, and can be obtained with "
+"[code]exp(1)[/code].\n"
"For exponents to other bases use the method [method pow].\n"
"[codeblock]\n"
"a = exp(2) # Approximately 7.39\n"
@@ -412,9 +436,11 @@ msgstr ""
"a = exp(2) # přibližně 7.39\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:333
+#: modules/gdscript/doc_classes/@GDScript.xml:334
+#, fuzzy
msgid ""
-"Rounds [code]s[/code] to the closest smaller integer and returns it.\n"
+"Rounds [code]s[/code] downward (towards negative infinity), returning the "
+"largest whole number that is not more than [code]s[/code].\n"
"[codeblock]\n"
"# a is 2.0\n"
"a = floor(2.99)\n"
@@ -434,7 +460,7 @@ msgstr ""
"[b]Poznámka:[/b] Tato metoda vrací float. Pokud potřebujete integer, můžete "
"rovnou použít [code]int(s)[/code]."
-#: modules/gdscript/doc_classes/@GDScript.xml:351
+#: modules/gdscript/doc_classes/@GDScript.xml:352
msgid ""
"Returns the floating-point remainder of [code]a/b[/code], keeping the sign "
"of [code]a[/code].\n"
@@ -444,8 +470,15 @@ msgid ""
"[/codeblock]\n"
"For the integer remainder operation, use the % operator."
msgstr ""
+"Vrátí floatový zbytek operace [code]a/b[/code] a zachovává znaménko [code]a[/"
+"code].\n"
+"[codeblock]\n"
+"# Zbytek je 1.5\n"
+"var Zbytek = fmod(7, 5.5)\n"
+"[/codeblock]\n"
+"Pro celoÄíselný zbytek (integerový) používejte % operátor."
-#: modules/gdscript/doc_classes/@GDScript.xml:367
+#: modules/gdscript/doc_classes/@GDScript.xml:368
msgid ""
"Returns the floating-point modulus of [code]a/b[/code] that wraps equally in "
"positive and negative.\n"
@@ -470,8 +503,30 @@ msgid ""
"4 1\n"
"[/codeblock]"
msgstr ""
+"Vrací floatový zbytek operace [code]a/b[/code], která se chová stejně k "
+"kladným i záporným hodnotám.\n"
+"[codeblock]\n"
+"var i = 1\n"
+"while i < 5:\n"
+" prints(i, fposmod(i, 3))\n"
+" i += 1\n"
+"[/codeblock]\n"
+"Vypisuje:\n"
+"[codeblock]\n"
+"-6 0\n"
+"-5 1\n"
+"-4 2\n"
+"-3 0\n"
+"-2 1\n"
+"-1 0\n"
+"0 0\n"
+"1 1\n"
+"2 2\n"
+"3 0\n"
+"4 1\n"
+"[codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:398
+#: modules/gdscript/doc_classes/@GDScript.xml:399
msgid ""
"Returns a reference to the specified function [code]funcname[/code] in the "
"[code]instance[/code] node. As functions aren't first-class objects in "
@@ -485,8 +540,19 @@ msgid ""
"print(a.call_func()) # Prints bar\n"
"[/codeblock]"
msgstr ""
+"Vrátí odkaz na specifikovanou funkci [code]funcname[/code] v [code]instance[/"
+"code] uzlu. Funkce nejsou v GDScriptu objekty první třídy, proto používejte "
+"[code]funcref[/code] na ukládání [FuncRed] v proměnné pro pozdější "
+"zavolání.\n"
+"[codeblock]\n"
+"func foo():\n"
+" return(\"bar\")\n"
+"\n"
+"a = funcref(self, \"foo\")\n"
+"print(a.call_func()) # vytiskne bar\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:412
+#: modules/gdscript/doc_classes/@GDScript.xml:413
msgid ""
"Returns an array of dictionaries representing the current call stack.\n"
"[codeblock]\n"
@@ -505,16 +571,36 @@ msgid ""
"source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n"
"[/codeblock]"
msgstr ""
+"Vrátí pole slovníků, které reprezentují aktuální zásobník volání.\n"
+"[codeblock]\n"
+"func _ready():\n"
+" foo()\n"
+"\n"
+"func foo():\n"
+" bar()\n"
+"\n"
+"func bar():\n"
+" print(get_stack())\n"
+"[/codeblock]\n"
+"A to by vypsalo:\n"
+"[codeblock]\n"
+"[{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, "
+"source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:435
+#: modules/gdscript/doc_classes/@GDScript.xml:436
msgid ""
"Returns the integer hash of the variable passed.\n"
"[codeblock]\n"
"print(hash(\"a\")) # Prints 177670\n"
"[/codeblock]"
msgstr ""
+"Vrací celoÄíselný (integerový) hash pÅ™edané promÄ›nné.\n"
+"[codeblock]\n"
+"print(hash(\"a\")) # Vytiskne 177670\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:447
+#: modules/gdscript/doc_classes/@GDScript.xml:448
msgid ""
"Returns the passed instance converted to a dictionary (useful for "
"serializing).\n"
@@ -531,8 +617,22 @@ msgid ""
"[, res://test.gd, bar]\n"
"[/codeblock]"
msgstr ""
+"Vrací pÅ™edanou instanci konvertovanou na slovník (užiteÄné pro "
+"serializaci).\n"
+"[codeblock]\n"
+"var foo = \"bar\"\n"
+"func _ready():\n"
+" var d = inst2dict(self)\n"
+" print(d.keys())\n"
+" print(d.values())\n"
+"[/codeblock]\n"
+"Vypíše:\n"
+"[codeblock]\n"
+"[@subpath, @path, foo]\n"
+"[, res://test.gd, bar]\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:468
+#: modules/gdscript/doc_classes/@GDScript.xml:469
msgid ""
"Returns the Object that corresponds to [code]instance_id[/code]. All Objects "
"have a unique instance ID.\n"
@@ -544,8 +644,17 @@ msgid ""
" print(inst.foo) # Prints bar\n"
"[/codeblock]"
msgstr ""
+"Vrací Objekt, který odpovídá korespondujícímu [code]instance_id[/code]. "
+"Všechny objekty mají svoje unikátní ID instance.\n"
+"[codeblock]\n"
+"var foo = \"bar\"\n"
+"func _ready():\n"
+" var id = get_instance_id()\n"
+" var inst = instance_from_id(id)\n"
+" print(inst.foo) # Vytiskne bar\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:488
+#: modules/gdscript/doc_classes/@GDScript.xml:489
msgid ""
"Returns a normalized value considering the given range. This is the opposite "
"of [method lerp].\n"
@@ -558,34 +667,58 @@ msgid ""
"# `ratio` is now 0.75.\n"
"[/codeblock]"
msgstr ""
+"Vrátí normalizovanou hodnotu, s tím, že bere v potaz daný rozsah. Jedná se "
+"opak [method lerp].\n"
+"[codeblock]\n"
+"var stred = lerp(20, 30, 0.75)\n"
+"# `stred` teÄ je 27.5.\n"
+"# Nyní budeme předstírat, že jsme předchozí poměr zapomněli a chceme ho "
+"zpět\n"
+"var pomer = inverse_lerp(20, 30, 27.5)\n"
+"# `pomer` teÄ je 0.75.\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:506
+#: modules/gdscript/doc_classes/@GDScript.xml:507
msgid ""
"Returns [code]true[/code] if [code]a[/code] and [code]b[/code] are "
-"approximately equal to each other."
+"approximately equal to each other.\n"
+"Here, approximately equal means that [code]a[/code] and [code]b[/code] are "
+"within a small internal epsilon of each other, which scales with the "
+"magnitude of the numbers.\n"
+"Infinity values of the same sign are considered equal."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:515
+#: modules/gdscript/doc_classes/@GDScript.xml:518
msgid ""
"Returns whether [code]s[/code] is an infinity value (either positive "
"infinity or negative infinity)."
msgstr ""
+"Vrací jestli [code]s[/code] je nekoneÄná hodnota (je jedno jestli kladné "
+"nekoneÄno, nebo záporné nekoneÄno)."
-#: modules/gdscript/doc_classes/@GDScript.xml:524
+#: modules/gdscript/doc_classes/@GDScript.xml:527
msgid ""
"Returns whether [code]instance[/code] is a valid object (e.g. has not been "
"deleted from memory)."
msgstr ""
+"Vrací jestli [code]instance[/code] je platný objekt (tj. nebyl uvolněn z "
+"paměti)."
-#: modules/gdscript/doc_classes/@GDScript.xml:533
-msgid "Returns whether [code]s[/code] is a NaN (Not-A-Number) value."
-msgstr ""
+#: modules/gdscript/doc_classes/@GDScript.xml:536
+#, fuzzy
+msgid ""
+"Returns whether [code]s[/code] is a NaN (\"Not a Number\" or invalid) value."
+msgstr "Vrací jestli [code]s[/code] je hodnota NaN (Not-A-Number)."
-#: modules/gdscript/doc_classes/@GDScript.xml:542
-msgid "Returns [code]true[/code] if [code]s[/code] is zero or almost zero."
-msgstr ""
+#: modules/gdscript/doc_classes/@GDScript.xml:545
+#, fuzzy
+msgid ""
+"Returns [code]true[/code] if [code]s[/code] is zero or almost zero.\n"
+"This method is faster than using [method is_equal_approx] with one value as "
+"zero."
+msgstr "Vrací [code]true[/code] pokud [code]s[/code] je nula nebo téměř nula."
-#: modules/gdscript/doc_classes/@GDScript.xml:551
+#: modules/gdscript/doc_classes/@GDScript.xml:555
msgid ""
"Returns length of Variant [code]var[/code]. Length is the character count of "
"String, element count of Array, size of Dictionary, etc.\n"
@@ -595,8 +728,15 @@ msgid ""
"len(a) # Returns 4\n"
"[/codeblock]"
msgstr ""
+"Vrací délku promÄ›nné Variant [code]var[/code]. Délka je poÄet znaků v "
+"Å™etÄ›zci, poÄet Älenů pole, velikost slovníku, apod.\n"
+"[b]Note:[/b] Generuje fatální error pokud Variant nemohl poskytnout délku.\n"
+"[codeblock]\n"
+"a = [1, 2, 3, 4]\n"
+"len(a) # Vrací 4\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:569
+#: modules/gdscript/doc_classes/@GDScript.xml:573
msgid ""
"Linearly interpolates between two values by a normalized value. This is the "
"opposite of [method inverse_lerp].\n"
@@ -610,8 +750,19 @@ msgid ""
"lerp(Vector2(1, 5), Vector2(3, 2), 0.5) # Returns Vector2(2, 3.5)\n"
"[/codeblock]"
msgstr ""
+"Lineární interpolace mezi dvěma hodnotami normalizovanou hodnout. Toto je "
+"opak [method inverse_lerp].\n"
+"pokud argumenty [code]from[/code] a [code]to[/code] jsou typu [int] nebo "
+"[float], pak navracející hodnota je typu [float].\n"
+"Pokud jsou oba stejného typu vektoru ([Vector2], [Vector3] nebo [Color]), "
+"pak navracející hodnota bude stejného typu ([code]lerp[/code] pak zavolá "
+"metodu [code]lerp[/code] pro odpovídající vektorový typ).\n"
+"[codeblock]\n"
+"lerp(0, 4, 0.75) # Vrací 3.0\n"
+"lerp(Vector2(1, 5), Vector2(3, 2), 0.5) # Vrací Vector2(2, 3.5)\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:588
+#: modules/gdscript/doc_classes/@GDScript.xml:592
msgid ""
"Linearly interpolates between two angles (in radians) by a normalized "
"value.\n"
@@ -627,8 +778,21 @@ msgid ""
" elapsed += delta\n"
"[/codeblock]"
msgstr ""
+"Lineárně interpoluje mezi dvěma uhlý (v radiánech) pomocí normalizované "
+"hodnoty.\n"
+"Podobné jako [method lerp], ale interpoluje správně jenom pokud jsou úhly "
+"okolo [constant @GDScript.TAU].\n"
+"[codeblock]\n"
+"extends Sprite\n"
+"var ubehlo = 0.0\n"
+"func _process(delta):\n"
+" var min_uhel = deg2rad(0.0)\n"
+" var max_uhel = deg2rad(90.0)\n"
+" rotace = lerp_angle(min_uhel, max_uhel, ubehlo)\n"
+" ubehlo += delta\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:607
+#: modules/gdscript/doc_classes/@GDScript.xml:611
msgid ""
"Converts from linear energy to decibels (audio). This can be used to "
"implement volume sliders that behave as expected (since volume isn't "
@@ -643,21 +807,54 @@ msgid ""
"linear2db($Slider.value))\n"
"[/codeblock]"
msgstr ""
+"Převede lineární energii na decibely (audio). To může být využité pro "
+"implementaci posuvníků hlasitosti, který se chová víc přirozeně (protože "
+"hlasitost není lineární). Příklad:\n"
+"[codeblock]\n"
+"# \"Posuvník\" referuje na uzel, který dědí Range jako HSlider nebo "
+"VSlider.\n"
+"# Jeho rozsah musí být nastaven, aby se pohyboval mezi 0 a 1.\n"
+"# Změňte jméno busu, pokud byste chtěli měnit hlasitost jenom specifického "
+"busu.\n"
+"AudioServer.set_bus_volume_db(AudioServer.get_bus_index(\"Master\"), "
+"linear2db($Posuvník.value))\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:622
+#: modules/gdscript/doc_classes/@GDScript.xml:626
+#, fuzzy
msgid ""
-"Loads a resource from the filesystem located at [code]path[/code].\n"
+"Loads a resource from the filesystem located at [code]path[/code]. The "
+"resource is loaded on the method call (unless it's referenced already "
+"elsewhere, e.g. in another script or in the scene), which might cause slight "
+"delay, especially when loading scenes. To avoid unnecessary delays when "
+"loading something multiple times, either store the resource in a variable or "
+"use [method preload].\n"
"[b]Note:[/b] Resource paths can be obtained by right-clicking on a resource "
-"in the FileSystem dock and choosing [b]Copy Path[/b].\n"
+"in the FileSystem dock and choosing \"Copy Path\" or by dragging the file "
+"from the FileSystem dock into the script.\n"
"[codeblock]\n"
-"# Load a scene called main located in the root of the project directory.\n"
-"var main = load(\"res://main.tscn\")\n"
+"# Load a scene called main located in the root of the project directory and "
+"cache it in a variable.\n"
+"var main = load(\"res://main.tscn\") # main will contain a PackedScene "
+"resource.\n"
"[/codeblock]\n"
"[b]Important:[/b] The path must be absolute, a local path will just return "
"[code]null[/code]."
msgstr ""
+"Nahraje prostředky ze souboru lokalizovaném na [code]path[/code].\n"
+"[b]Note:[/b] Prostředková cesta (path) může být získana pomocí stisknutí "
+"pravého tlaÄítka na prostÅ™edek v dokovatelném oknÄ› Souborový Systém a "
+"vybráním [b]Kopírovat Cestu[/b].\n"
+"[codeblock]\n"
+"# Nahraj scénu zvanou main, která se nachází v kořeni projektového "
+"adresáře.\n"
+"var main = load(\"res://main.tscn\")\n"
+"[/codeblock]\n"
+"[b]Important:[/b] Cesta musí být absolutní! Lokální cesta prostě jenom "
+"navrátí [code]null[/code]."
-#: modules/gdscript/doc_classes/@GDScript.xml:637
+#: modules/gdscript/doc_classes/@GDScript.xml:641
+#, fuzzy
msgid ""
"Natural logarithm. The amount of time needed to reach a certain level of "
"continuous growth.\n"
@@ -665,10 +862,19 @@ msgid ""
"calculators, which uses a base 10 logarithm.\n"
"[codeblock]\n"
"log(10) # Returns 2.302585\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] The logarithm of [code]0[/code] returns [code]-inf[/code], "
+"while negative values return [code]-nan[/code]."
msgstr ""
+"PÅ™irozený logaritmus. Množství Äasu, které je potÅ™eba k dosažení urÄité "
+"úrovně plynulého růstu.\n"
+"[b]Note[/b] Toto není stejnÄ› jako \"log\" funkce na vÄ›tÅ¡inÄ› kalkulaÄek, "
+"které používají jako základ logaritmu Äíslo 10.\n"
+"[codeblock]\n"
+"log(10) # Vrací 2.302585\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:652
+#: modules/gdscript/doc_classes/@GDScript.xml:657
msgid ""
"Returns the maximum of two values.\n"
"[codeblock]\n"
@@ -676,8 +882,13 @@ msgid ""
"max(-3.99, -4) # Returns -3.99\n"
"[/codeblock]"
msgstr ""
+"Vrací větší ze dvou hodnot.\n"
+"[codeblock]\n"
+"max(1, 2) # Vrací 2\n"
+"max(-3.99, -4) # Vrací -3.99\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:667
+#: modules/gdscript/doc_classes/@GDScript.xml:672
msgid ""
"Returns the minimum of two values.\n"
"[codeblock]\n"
@@ -685,28 +896,45 @@ msgid ""
"min(-3.99, -4) # Returns -4\n"
"[/codeblock]"
msgstr ""
+"Vrací menší ze dvou hodnot.\n"
+"[codeblock]\n"
+"min(1, 2) # Vrací 1\n"
+"min(-3.99, -4) # Vrací -4\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:684
+#: modules/gdscript/doc_classes/@GDScript.xml:689
msgid ""
"Moves [code]from[/code] toward [code]to[/code] by the [code]delta[/code] "
"value.\n"
"Use a negative [code]delta[/code] value to move away.\n"
"[codeblock]\n"
+"move_toward(5, 10, 4) # Returns 9\n"
"move_toward(10, 5, 4) # Returns 6\n"
+"move_toward(10, 5, -1.5) # Returns 11.5\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:697
+#: modules/gdscript/doc_classes/@GDScript.xml:704
msgid ""
-"Returns the nearest larger power of 2 for integer [code]value[/code].\n"
+"Returns the nearest equal or larger power of 2 for integer [code]value[/"
+"code].\n"
+"In other words, returns the smallest value [code]a[/code] where [code]a = "
+"pow(2, n)[/code] such that [code]value <= a[/code] for some non-negative "
+"integer [code]n[/code].\n"
"[codeblock]\n"
"nearest_po2(3) # Returns 4\n"
"nearest_po2(4) # Returns 4\n"
"nearest_po2(5) # Returns 8\n"
-"[/codeblock]"
+"\n"
+"nearest_po2(0) # Returns 0 (this may not be what you expect)\n"
+"nearest_po2(-1) # Returns 0 (this may not be what you expect)\n"
+"[/codeblock]\n"
+"[b]WARNING:[/b] Due to the way it is implemented, this function returns "
+"[code]0[/code] rather than [code]1[/code] for non-positive values of "
+"[code]value[/code] (in reality, 1 is the smallest integer power of 2)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:711
+#: modules/gdscript/doc_classes/@GDScript.xml:723
msgid ""
"Returns an integer representing the Unicode code point of the given Unicode "
"character [code]char[/code].\n"
@@ -717,36 +945,48 @@ msgid ""
"[/codeblock]\n"
"This is the inverse of [method char]."
msgstr ""
+"vrací celé Äíslo representující daný Unicode znak typu [code]char[/code] v "
+"Unicode kódu.\n"
+"[codeblock]\n"
+"a = ord(\"A\") # a je 65\n"
+"a = ord(\"a\") # a je 97\n"
+"a = ord(\"€\") # a je 8364\n"
+"[/codeblock]\n"
+"Toto je inverzní metoda k [method char]."
-#: modules/gdscript/doc_classes/@GDScript.xml:726
+#: modules/gdscript/doc_classes/@GDScript.xml:738
msgid ""
-"Parse JSON text to a Variant (use [method typeof] to check if it is what you "
-"expect).\n"
-"Be aware that the JSON specification does not define integer or float types, "
-"but only a number type. Therefore, parsing a JSON text will convert all "
-"numerical values to [float] types.\n"
-"Note that JSON objects do not preserve key order like Godot dictionaries, "
-"thus you should not rely on keys being in a certain order if a dictionary is "
-"constructed from JSON. In contrast, JSON arrays retain the order of their "
+"Parse JSON text to a Variant. (Use [method typeof] to check if the Variant's "
+"type is what you expect.)\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, parsing a JSON text will convert "
+"all numerical values to [float] types.\n"
+"[b]Note:[/b] JSON objects do not preserve key order like Godot dictionaries, "
+"thus, you should not rely on keys being in a certain order if a dictionary "
+"is constructed from JSON. In contrast, JSON arrays retain the order of their "
"elements:\n"
"[codeblock]\n"
-"p = parse_json('[\"a\", \"b\", \"c\"]')\n"
-"if typeof(p) == TYPE_ARRAY:\n"
-" print(p[0]) # Prints a\n"
+"var p = JSON.parse('[\"hello\", \"world\", \"!\"]')\n"
+"if typeof(p.result) == TYPE_ARRAY:\n"
+" print(p.result[0]) # Prints \"hello\"\n"
"else:\n"
-" print(\"unexpected results\")\n"
-"[/codeblock]"
+" push_error(\"Unexpected results.\")\n"
+"[/codeblock]\n"
+"See also [JSON] for an alternative way to parse JSON text."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:746
+#: modules/gdscript/doc_classes/@GDScript.xml:759
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:142
msgid ""
"Converts a 2D point expressed in the polar coordinate system (a distance "
"from the origin [code]r[/code] and an angle [code]th[/code]) to the "
"cartesian coordinate system (X and Y axis)."
msgstr ""
+"PÅ™evádí 2D bod vyjádÅ™ený v polárním souÅ™adném systému (vzdálenost od poÄátku "
+"[code]r[/code] a úhel [code]th[/code]) do kartézkého souřadného systému (osy "
+"X a Y)."
-#: modules/gdscript/doc_classes/@GDScript.xml:757
+#: modules/gdscript/doc_classes/@GDScript.xml:770
msgid ""
"Returns the integer modulus of [code]a/b[/code] that wraps equally in "
"positive and negative.\n"
@@ -771,28 +1011,58 @@ msgid ""
"4 1\n"
"[/codeblock]"
msgstr ""
+"Vrací celoÄíselný zbytek výrazu [code]a/b[/code] a chová se stejnÄ› k kladným "
+"i záporným Äíslům.\n"
+"[codeblock]\n"
+"var i = -6\n"
+"while i < 5:\n"
+" prints(i, posmod(i, 3))\n"
+" i += 1\n"
+"[/codeblock]\n"
+"Vypíše:\n"
+"[codeblock]\n"
+"-6 0\n"
+"-5 1\n"
+"-4 2\n"
+"-3 0\n"
+"-2 1\n"
+"-1 2\n"
+"0 0\n"
+"1 1\n"
+"2 2\n"
+"3 0\n"
+"4 1\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:788
+#: modules/gdscript/doc_classes/@GDScript.xml:801
msgid ""
"Returns the result of [code]x[/code] raised to the power of [code]y[/code].\n"
"[codeblock]\n"
"pow(2, 5) # Returns 32\n"
"[/codeblock]"
msgstr ""
+"Vrací výsledek [code]x[/code] umocněného na [code]y[/code].\n"
+"[codeblock]\n"
+"pow(2, 5) # Vrací 32\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:800
+#: modules/gdscript/doc_classes/@GDScript.xml:813
msgid ""
-"Returns a resource from the filesystem that is loaded during script "
-"parsing.\n"
+"Returns a [Resource] from the filesystem located at [code]path[/code]. The "
+"resource is loaded during script parsing, i.e. is loaded with the script and "
+"[method preload] effectively acts as a reference to that resource. Note that "
+"the method requires a constant path. If you want to load a resource from a "
+"dynamic/variable path, use [method load].\n"
"[b]Note:[/b] Resource paths can be obtained by right clicking on a resource "
-"in the Assets Panel and choosing \"Copy Path\".\n"
+"in the Assets Panel and choosing \"Copy Path\" or by dragging the file from "
+"the FileSystem dock into the script.\n"
"[codeblock]\n"
-"# Load a scene called main located in the root of the project directory.\n"
-"var main = preload(\"res://main.tscn\")\n"
+"# Instance a scene.\n"
+"var diamond = preload(\"res://diamond.tscn\").instance()\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:812
+#: modules/gdscript/doc_classes/@GDScript.xml:825
msgid ""
"Converts one or more arguments to strings in the best way possible and "
"prints them to the console.\n"
@@ -801,12 +1071,18 @@ msgid ""
"print(\"a\", \"b\", a) # Prints ab[1, 2, 3]\n"
"[/codeblock]"
msgstr ""
+"Převede jeden nebo více argumentů na řetězec v té nejlepší možné formě a "
+"vytiskne je na konzoli.\n"
+"[codeblock]\n"
+"a = [1, 2, 3]\n"
+"print(\"a\", \"b\", a) # Vytiskne ab[1, 2, 3]\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:823
+#: modules/gdscript/doc_classes/@GDScript.xml:836
msgid "Like [method print], but prints only when used in debug mode."
-msgstr ""
+msgstr "Jako [method print], ale tiskne pouze pokud je použita v debug módu."
-#: modules/gdscript/doc_classes/@GDScript.xml:830
+#: modules/gdscript/doc_classes/@GDScript.xml:843
msgid ""
"Prints a stack track at code location, only works when running with debugger "
"turned on.\n"
@@ -816,7 +1092,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:841
+#: modules/gdscript/doc_classes/@GDScript.xml:854
msgid ""
"Prints one or more arguments to strings in the best way possible to standard "
"error line.\n"
@@ -824,8 +1100,13 @@ msgid ""
"printerr(\"prints to stderr\")\n"
"[/codeblock]"
msgstr ""
+"Vytiskne jeden nebo více argumentů jako řetězec v té nejlepší možné formě na "
+"standartní chybový výstup.\n"
+"[codeblock]\n"
+"printerr(\"vytiskni na stderr\")\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:851
+#: modules/gdscript/doc_classes/@GDScript.xml:864
msgid ""
"Prints one or more arguments to strings in the best way possible to console. "
"No newline is added at the end.\n"
@@ -838,8 +1119,18 @@ msgid ""
"prints to the terminal. If you need to print in the editor, use another "
"method, such as [method print]."
msgstr ""
+"Vytiskne jeden nebo více argumentů jako řetězec v té nejlepší možné formě na "
+"konzoli. Na konec řetězce není přidán znak nové řádky.\n"
+"[codeblock]\n"
+"printraw(\"A\")\n"
+"printraw(\"B\")\n"
+"# Vytiskne AB\n"
+"[/codeblock]\n"
+"[b]Poznámka:[/b] Kvůli limitacím konzole vestavěné v Godotu bude tisknout "
+"pouze na terminál. Pokud potřebujete tisknout v editoru, použíjte jinou "
+"metodu, jako [method print]."
-#: modules/gdscript/doc_classes/@GDScript.xml:864
+#: modules/gdscript/doc_classes/@GDScript.xml:877
msgid ""
"Prints one or more arguments to the console with a space between each "
"argument.\n"
@@ -847,8 +1138,13 @@ msgid ""
"prints(\"A\", \"B\", \"C\") # Prints A B C\n"
"[/codeblock]"
msgstr ""
+"Vytiskne jeden nebo více argumentů na konzoli s mezerou mezi kazdým "
+"argumentem.\n"
+"[codeblock]\n"
+"prints(\"A\", \"B\", \"C\") # Vytiskne A B C\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:874
+#: modules/gdscript/doc_classes/@GDScript.xml:887
msgid ""
"Prints one or more arguments to the console with a tab between each "
"argument.\n"
@@ -856,8 +1152,13 @@ msgid ""
"printt(\"A\", \"B\", \"C\") # Prints A B C\n"
"[/codeblock]"
msgstr ""
+"Vytiskne jeden nebo více argumentů na konzoli s tabulátorem mezi každým "
+"argumentem.\n"
+"[codeblock]\n"
+"printt(\"A\", \"B\", \"C\") # Vytiskne A B C\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:886
+#: modules/gdscript/doc_classes/@GDScript.xml:899
msgid ""
"Pushes an error message to Godot's built-in debugger and to the OS "
"terminal.\n"
@@ -866,8 +1167,13 @@ msgid ""
"as error call\n"
"[/codeblock]"
msgstr ""
+"Pošle chybové hlášení do vestavěného debuggeru Godotu a na OS terminál.\n"
+"[codeblock]\n"
+"push_error(\"test error\") # Vytiskne\"test error\" na debugger a na "
+"terminal jako chybové hlášení\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:898
+#: modules/gdscript/doc_classes/@GDScript.xml:911
msgid ""
"Pushes a warning message to Godot's built-in debugger and to the OS "
"terminal.\n"
@@ -876,16 +1182,26 @@ msgid ""
"terminal as warning call\n"
"[/codeblock]"
msgstr ""
+"Pošle varovnou zprávu do vestavěného debuggeru Godotu a na OS terminál.\n"
+"[codeblock]\n"
+"push_warning(\"test warning\") # Vytiskne\"test warning\" na debugger a na "
+"terminal jako varovné hlášení\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:910
+#: modules/gdscript/doc_classes/@GDScript.xml:923
+#, fuzzy
msgid ""
-"Converts from radians to degrees.\n"
+"Converts an angle expressed in radians to degrees.\n"
"[codeblock]\n"
"rad2deg(0.523599) # Returns 30\n"
"[/codeblock]"
msgstr ""
+"Převede radiány na stupně.\n"
+"[codeblock]\n"
+"rad2deg(0.523599) # Vrací 30\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:924
+#: modules/gdscript/doc_classes/@GDScript.xml:937
msgid ""
"Random range, any floating point value between [code]from[/code] and "
"[code]to[/code].\n"
@@ -893,8 +1209,14 @@ msgid ""
"prints(rand_range(0, 1), rand_range(0, 1)) # Prints e.g. 0.135591 0.405263\n"
"[/codeblock]"
msgstr ""
+"Náhodný rozptyl, jakákoliv hodnota Äísla s plovoucí řádkou (float, double) "
+"mezi hodnotami [code]od[/code] a [code]do[/code].\n"
+"[codeblock]\n"
+"prints(rand_range(0, 1), rand_range(0, 1)) # Vytiskne napÅ™. 0.135591 "
+"0.405263\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:936
+#: modules/gdscript/doc_classes/@GDScript.xml:949
msgid ""
"Random from seed: pass a [code]seed[/code], and an array with both number "
"and new seed is returned. \"Seed\" here refers to the internal state of the "
@@ -902,15 +1224,20 @@ msgid ""
"implementation is 64 bits."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:943
+#: modules/gdscript/doc_classes/@GDScript.xml:956
msgid ""
"Returns a random floating point value on the interval [code][0, 1][/code].\n"
"[codeblock]\n"
"randf() # Returns e.g. 0.375671\n"
"[/codeblock]"
msgstr ""
+"Vrátí náhodnou hodnotu Äísla s plovoucí řádkou na intervalu [code][0, 1][/"
+"code].\n"
+"[codeblock]\n"
+"randf() # Vrací např. 0.375671\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:953
+#: modules/gdscript/doc_classes/@GDScript.xml:966
msgid ""
"Returns a random unsigned 32 bit integer. Use remainder to obtain a random "
"value in the interval [code][0, N - 1][/code] (where N is smaller than "
@@ -922,8 +1249,17 @@ msgid ""
"randi() % 100 + 1 # Returns random integer between 1 and 100\n"
"[/codeblock]"
msgstr ""
+"Vrací náhodné 32 bitové celé Äislo bez znaménka. Používejte zbytek pro "
+"získání náhodného Äísla v intervalu [code][0, N - 1][/code] (kde N je menší "
+"než 2^32).\n"
+"[codeblock]\n"
+"randi() # Vrací náhodné Äíslo mezi 0 a 2^32 - 1\n"
+"randi() % 20 # Vrací náhodné Äíslo mezi 0 a 19\n"
+"randi() % 100 # Vrací náhodné Äíslo mezi 0 a 99\n"
+"randi() % 100 + 1 # Vrací náhodné Äíslo mezi 1 a 100\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:966
+#: modules/gdscript/doc_classes/@GDScript.xml:979
msgid ""
"Randomizes the seed (or the internal state) of the random number generator. "
"Current implementation reseeds using a number based on time.\n"
@@ -933,7 +1269,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:977
+#: modules/gdscript/doc_classes/@GDScript.xml:990
msgid ""
"Returns an array with the given range. Range can be 1 argument N (0 to N-1), "
"two arguments (initial, final-1) or three arguments (initial, final-1, "
@@ -962,8 +1298,34 @@ msgid ""
"4\n"
"[/codeblock]"
msgstr ""
+"Vrací pole v daném rozsahu. Rozsah může být jedno-argumentový N (od 0 do "
+"N-1), dvou-argumentový (výchozí, finální-1), nebo tří-argumentový (výchozí, "
+"finální-1, inkrement).\n"
+"[codeblock]\n"
+"for i in range(4):\n"
+" print(i)\n"
+"for i in range(2, 5):\n"
+" print(i)\n"
+"for i in range(0, 6, 2):\n"
+" print(i)\n"
+"[/codeblock]\n"
+"Výstup:\n"
+"[codeblock]\n"
+"0\n"
+"1\n"
+"2\n"
+"3\n"
+"\n"
+"2\n"
+"3\n"
+"4\n"
+"\n"
+"0\n"
+"2\n"
+"4\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:1017
+#: modules/gdscript/doc_classes/@GDScript.xml:1030
msgid ""
"Maps a [code]value[/code] from range [code][istart, istop][/code] to [code]"
"[ostart, ostop][/code].\n"
@@ -971,17 +1333,28 @@ msgid ""
"range_lerp(75, 0, 100, -1, 1) # Returns 0.5\n"
"[/codeblock]"
msgstr ""
+"Mapuje [code]hodnotu[/code] z rozsahu [code][istart, istop][/code] na [code]"
+"[ostart, ostop][/code].\n"
+"[codeblock]\n"
+"range_lerp(75, 0, 100, -1, 1) # Vrací 0.5\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:1029
+#: modules/gdscript/doc_classes/@GDScript.xml:1042
+#, fuzzy
msgid ""
-"Returns the integral value that is nearest to [code]s[/code], with halfway "
-"cases rounded away from zero.\n"
+"Rounds [code]s[/code] to the nearest whole number, with halfway cases "
+"rounded away from zero.\n"
"[codeblock]\n"
"round(2.6) # Returns 3\n"
"[/codeblock]"
msgstr ""
+"Vrací celoÄíselnou hodnotu, nejbližší od [code]s[/code], hodnoty pÅ™esnÄ› mezi "
+"jsou zaokrouhlovány na nulu.\n"
+"[codeblock]\n"
+"round(2.6) # Vrací 3\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:1041
+#: modules/gdscript/doc_classes/@GDScript.xml:1054
msgid ""
"Sets seed for the random number generator.\n"
"[codeblock]\n"
@@ -990,7 +1363,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1054
+#: modules/gdscript/doc_classes/@GDScript.xml:1067
msgid ""
"Returns the sign of [code]s[/code]: -1 or 1. Returns 0 if [code]s[/code] is "
"0.\n"
@@ -1000,16 +1373,27 @@ msgid ""
"sign(6) # Returns 1\n"
"[/codeblock]"
msgstr ""
+"Vrací znaménko [code]s[/code]: -1 nebo 1, Vrací 0 pokud [code]s[/code] je "
+"0.\n"
+"[codeblock]\n"
+"sign(-6) # Vrací -1\n"
+"sign(0) # Vrací 0\n"
+"sign(6) # Vrací 1\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:1068
+#: modules/gdscript/doc_classes/@GDScript.xml:1081
msgid ""
"Returns the sine of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
"sin(0.523599) # Returns 0.5\n"
"[/codeblock]"
msgstr ""
+"Vrací sinus úhlu [code]s[/code] v radiánech.\n"
+"[codeblock]\n"
+"sin(0.523599) # Vrací 0.5\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:1080
+#: modules/gdscript/doc_classes/@GDScript.xml:1093
msgid ""
"Returns the hyperbolic sine of [code]s[/code].\n"
"[codeblock]\n"
@@ -1017,28 +1401,43 @@ msgid ""
"sinh(a) # Returns 0.75\n"
"[/codeblock]"
msgstr ""
+"Vrací hyperbolický sinus [code]s[/code].\n"
+"[codeblock]\n"
+"a = log(2.0) # Vrací 0.693147\n"
+"sinh(a) # Vrací 0.75\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:1097
+#: modules/gdscript/doc_classes/@GDScript.xml:1110
msgid ""
-"Returns a number smoothly interpolated between the [code]from[/code] and "
-"[code]to[/code], based on the [code]weight[/code]. Similar to [method lerp], "
-"but interpolates faster at the beginning and slower at the end.\n"
+"Returns the result of smoothly interpolating the value of [code]s[/code] "
+"between [code]0[/code] and [code]1[/code], based on the where [code]s[/code] "
+"lies with respect to the edges [code]from[/code] and [code]to[/code].\n"
+"The return value is [code]0[/code] if [code]s <= from[/code], and [code]1[/"
+"code] if [code]s >= to[/code]. If [code]s[/code] lies between [code]from[/"
+"code] and [code]to[/code], the returned value follows an S-shaped curve that "
+"maps [code]s[/code] between [code]0[/code] and [code]1[/code].\n"
+"This S-shaped curve is the cubic Hermite interpolator, given by [code]f(s) = "
+"3*s^2 - 2*s^3[/code].\n"
"[codeblock]\n"
-"smoothstep(0, 2, 0.5) # Returns 0.15\n"
+"smoothstep(0, 2, -5.0) # Returns 0.0\n"
+"smoothstep(0, 2, 0.5) # Returns 0.15625\n"
"smoothstep(0, 2, 1.0) # Returns 0.5\n"
"smoothstep(0, 2, 2.0) # Returns 1.0\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1111
+#: modules/gdscript/doc_classes/@GDScript.xml:1127
msgid ""
-"Returns the square root of [code]s[/code].\n"
+"Returns the square root of [code]s[/code], where [code]s[/code] is a non-"
+"negative number.\n"
"[codeblock]\n"
"sqrt(9) # Returns 3\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b]Negative values of [code]s[/code] return NaN. If you need "
+"negative inputs, use [code]System.Numerics.Complex[/code] in C#."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1123
+#: modules/gdscript/doc_classes/@GDScript.xml:1140
msgid ""
"Returns the position of the first non-zero digit, after the decimal point. "
"Note that the maximum return value is 10, which is a design decision in the "
@@ -1052,8 +1451,18 @@ msgid ""
"n = step_decimals(0.000000005)\n"
"[/codeblock]"
msgstr ""
+"Vrací pozici prvního nenulového Äísla v desetinné Äásti Äísla. Maximální "
+"vrátitelná hodnota je 10, jedná se o designové rozhodnutí o implementaci.\n"
+"[codeblock]\n"
+"# n je 0\n"
+"n = step_decimals(5)\n"
+"# n je 4\n"
+"n = step_decimals(1.0005)\n"
+"# n je 9\n"
+"n = step_decimals(0.000000005)\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:1142
+#: modules/gdscript/doc_classes/@GDScript.xml:1159
msgid ""
"Snaps float value [code]s[/code] to a given [code]step[/code]. This can also "
"be used to round a floating point number to an arbitrary number of "
@@ -1064,7 +1473,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1153
+#: modules/gdscript/doc_classes/@GDScript.xml:1170
msgid ""
"Converts one or more arguments to string in the best way possible.\n"
"[codeblock]\n"
@@ -1074,8 +1483,15 @@ msgid ""
"len(b) # Returns 12\n"
"[/codeblock]"
msgstr ""
+"Konvertuje jeden nebo více argumentů na řetězec v té nejlepší možné formě.\n"
+"[codeblock]\n"
+"var a = [10, 20, 30]\n"
+"var b = str(a);\n"
+"len(a) # Vrací 3\n"
+"len(b) # Vrací 12\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:1168
+#: modules/gdscript/doc_classes/@GDScript.xml:1185
msgid ""
"Converts a formatted string that was returned by [method var2str] to the "
"original value.\n"
@@ -1086,7 +1502,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1182
+#: modules/gdscript/doc_classes/@GDScript.xml:1199
msgid ""
"Returns the tangent of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -1094,7 +1510,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1194
+#: modules/gdscript/doc_classes/@GDScript.xml:1211
msgid ""
"Returns the hyperbolic tangent of [code]s[/code].\n"
"[codeblock]\n"
@@ -1103,18 +1519,25 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1207
+#: modules/gdscript/doc_classes/@GDScript.xml:1224
msgid ""
-"Converts a Variant [code]var[/code] to JSON text and return the result. "
+"Converts a [Variant] [code]var[/code] to JSON text and return the result. "
"Useful for serializing data to store or send over the network.\n"
"[codeblock]\n"
+"# Both numbers below are integers.\n"
"a = { \"a\": 1, \"b\": 2 }\n"
"b = to_json(a)\n"
"print(b) # {\"a\":1, \"b\":2}\n"
-"[/codeblock]"
+"# Both numbers above are floats, even if they display without any decimal "
+"places.\n"
+"[/codeblock]\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, converting a [Variant] to JSON "
+"text will convert all numerical values to [float] types.\n"
+"See also [JSON] for an alternative way to convert a [Variant] to JSON text."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1221
+#: modules/gdscript/doc_classes/@GDScript.xml:1242
msgid ""
"Returns whether the given class exists in [ClassDB].\n"
"[codeblock]\n"
@@ -1123,7 +1546,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1234
+#: modules/gdscript/doc_classes/@GDScript.xml:1255
msgid ""
"Returns the internal type of the given Variant object, using the [enum "
"Variant.Type] values.\n"
@@ -1136,7 +1559,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1250
+#: modules/gdscript/doc_classes/@GDScript.xml:1271
msgid ""
"Checks that [code]json[/code] is valid JSON data. Returns an empty string if "
"valid, or an error message otherwise.\n"
@@ -1144,20 +1567,20 @@ msgid ""
"j = to_json([1, 2, 3])\n"
"v = validate_json(j)\n"
"if not v:\n"
-" print(\"valid\")\n"
+" print(\"Valid JSON.\")\n"
"else:\n"
-" prints(\"invalid\", v)\n"
+" push_error(\"Invalid JSON: \" + v)\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1269
+#: modules/gdscript/doc_classes/@GDScript.xml:1290
msgid ""
"Encodes a variable value to a byte array. When [code]full_objects[/code] is "
"[code]true[/code] encoding objects is allowed (and can potentially include "
"code)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1278
+#: modules/gdscript/doc_classes/@GDScript.xml:1299
msgid ""
"Converts a Variant [code]var[/code] to a formatted string that can later be "
"parsed using [method str2var].\n"
@@ -1174,7 +1597,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1298
+#: modules/gdscript/doc_classes/@GDScript.xml:1319
msgid ""
"Returns a weak reference to an object.\n"
"A weak reference to an object is not enough to keep the object alive: when "
@@ -1184,135 +1607,67 @@ msgid ""
"reference may return the object even if there are no strong references to it."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1312
+#: modules/gdscript/doc_classes/@GDScript.xml:1333
msgid ""
"Wraps float [code]value[/code] between [code]min[/code] and [code]max[/"
"code].\n"
"Usable for creating loop-alike behavior or infinite surfaces.\n"
"[codeblock]\n"
-"# a is 0.5\n"
-"a = wrapf(10.5, 0.0, 10.0)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# a is 9.5\n"
-"a = wrapf(-0.5, 0.0, 10.0)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# Infinite loop between 0.0 and 0.99\n"
-"f = wrapf(f + 0.1, 0.0, 1.0)\n"
+"# Infinite loop between 5.0 and 9.9\n"
+"value = wrapf(value + 0.1, 5.0, 10.0)\n"
"[/codeblock]\n"
"[codeblock]\n"
"# Infinite rotation (in radians)\n"
"angle = wrapf(angle + 0.1, 0.0, TAU)\n"
"[/codeblock]\n"
-"[b]Note:[/b] If you just want to wrap between 0.0 and [code]n[/code] (where "
-"[code]n[/code] is a positive floating-point value), it is better for "
-"performance to use the [method fmod] method like [code]fmod(number, n)[/"
-"code].\n"
-"[code]wrapf[/code] is more flexible than using the [method fmod] approach by "
-"giving the user a simple control over the minimum value. It also fully "
-"supports negative numbers, e.g.\n"
"[codeblock]\n"
"# Infinite rotation (in radians)\n"
"angle = wrapf(angle + 0.1, -PI, PI)\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] If [code]min[/code] is [code]0[/code], this is equivalent to "
+"[method fposmod], so prefer using that instead.\n"
+"[code]wrapf[/code] is more flexible than using the [method fposmod] approach "
+"by giving the user control over the minimum value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1348
+#: modules/gdscript/doc_classes/@GDScript.xml:1361
msgid ""
"Wraps integer [code]value[/code] between [code]min[/code] and [code]max[/"
"code].\n"
"Usable for creating loop-alike behavior or infinite surfaces.\n"
"[codeblock]\n"
-"# a is 0\n"
-"a = wrapi(10, 0, 10)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# a is 9\n"
-"a = wrapi(-1, 0, 10)\n"
+"# Infinite loop between 5 and 9\n"
+"frame = wrapi(frame + 1, 5, 10)\n"
"[/codeblock]\n"
"[codeblock]\n"
-"# Infinite loop between 0 and 9\n"
-"frame = wrapi(frame + 1, 0, 10)\n"
-"[/codeblock]\n"
-"[b]Note:[/b] If you just want to wrap between 0 and [code]n[/code] (where "
-"[code]n[/code] is a positive integer value), it is better for performance to "
-"use the modulo operator like [code]number % n[/code].\n"
-"[code]wrapi[/code] is more flexible than using the modulo approach by giving "
-"the user a simple control over the minimum value. It also fully supports "
-"negative numbers, e.g.\n"
-"[codeblock]\n"
"# result is -2\n"
"var result = wrapi(-6, -5, -1)\n"
-"[/codeblock]"
-msgstr ""
-
-#: modules/gdscript/doc_classes/@GDScript.xml:1378
-msgid ""
-"Stops the function execution and returns the current suspended state to the "
-"calling function.\n"
-"From the caller, call [method GDScriptFunctionState.resume] on the state to "
-"resume execution. This invalidates the state. Within the resumed function, "
-"[code]yield()[/code] returns whatever was passed to the [code]resume()[/"
-"code] function call.\n"
-"If passed an object and a signal, the execution is resumed when the object "
-"emits the given signal. In this case, [code]yield()[/code] returns the "
-"argument passed to [code]emit_signal()[/code] if the signal takes only one "
-"argument, or an array containing all the arguments passed to "
-"[code]emit_signal()[/code] if the signal takes multiple arguments.\n"
-"You can also use [code]yield[/code] to wait for a function to finish:\n"
-"[codeblock]\n"
-"func _ready():\n"
-" yield(countdown(), \"completed\") # waiting for the countdown() function "
-"to complete\n"
-" print('Ready')\n"
-"\n"
-"func countdown():\n"
-" yield(get_tree(), \"idle_frame\") # returns a GDScriptFunctionState "
-"object to _ready()\n"
-" print(3)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-" print(2)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-" print(1)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-"\n"
-"# prints:\n"
-"# 3\n"
-"# 2\n"
-"# 1\n"
-"# Ready\n"
"[/codeblock]\n"
-"When yielding on a function, the [code]completed[/code] signal will be "
-"emitted automatically when the function returns. It can, therefore, be used "
-"as the [code]signal[/code] parameter of the [code]yield[/code] method to "
-"resume.\n"
-"In order to yield on a function, the resulting function should also return a "
-"[code]GDScriptFunctionState[/code]. Notice [code]yield(get_tree(), "
-"\"idle_frame\")[/code] from the above example."
+"[b]Note:[/b] If [code]min[/code] is [code]0[/code], this is equivalent to "
+"[method posmod], so prefer using that instead.\n"
+"[code]wrapi[/code] is more flexible than using the [method posmod] approach "
+"by giving the user control over the minimum value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1409
+#: modules/gdscript/doc_classes/@GDScript.xml:1378
msgid ""
"Constant that represents how many times the diameter of a circle fits around "
-"its perimeter."
+"its perimeter. This is equivalent to [code]TAU / 2[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1412
-msgid "The circle constant, the circumference of the unit circle."
+#: modules/gdscript/doc_classes/@GDScript.xml:1381
+msgid "The circle constant, the circumference of the unit circle in radians."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1415
-msgid "A positive infinity. (For negative infinity, use -INF)."
+#: modules/gdscript/doc_classes/@GDScript.xml:1384
+msgid "Positive infinity. For negative infinity, use -INF."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1418
+#: modules/gdscript/doc_classes/@GDScript.xml:1387
msgid ""
-"Macro constant that expands to an expression of type float that represents a "
-"NaN.\n"
-"The NaN values are used to identify undefined or non-representable values "
-"for floating-point elements, such as the square root of negative numbers or "
-"the result of 0/0."
+"\"Not a Number\", an invalid value. [code]NaN[/code] has special properties, "
+"including that it is not equal to itself. It is output by some invalid "
+"operations, such as dividing zero by zero."
msgstr ""
#: doc/classes/@GlobalScope.xml:4
@@ -3548,130 +3903,141 @@ msgid ""
msgstr ""
#: doc/classes/AABB.xml:10 doc/classes/Plane.xml:10 doc/classes/Rect2.xml:11
-#: doc/classes/Rect2i.xml:11 doc/classes/Transform.xml:10
+#: doc/classes/Rect2i.xml:11 doc/classes/Transform.xml:11
#: doc/classes/Vector2.xml:12 doc/classes/Vector2i.xml:12
#: doc/classes/Vector3.xml:12 doc/classes/Vector3i.xml:12
msgid "https://docs.godotengine.org/en/latest/tutorials/math/index.html"
msgstr ""
#: doc/classes/AABB.xml:21
-msgid "Optional constructor, accepts position and size."
+msgid "Constructs an [AABB] from a position and size."
msgstr ""
-#: doc/classes/AABB.xml:30
+#: doc/classes/AABB.xml:28
+msgid ""
+"Returns an AABB with equivalent position and size, modified so that the most-"
+"negative corner is the origin and the size is positive."
+msgstr ""
+
+#: doc/classes/AABB.xml:37
msgid ""
"Returns [code]true[/code] if this [AABB] completely encloses another one."
msgstr ""
-#: doc/classes/AABB.xml:39
+#: doc/classes/AABB.xml:46
msgid "Returns this [AABB] expanded to include a given point."
msgstr ""
-#: doc/classes/AABB.xml:46
+#: doc/classes/AABB.xml:53
msgid "Returns the volume of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:55
+#: doc/classes/AABB.xml:62
msgid "Gets the position of the 8 endpoints of the [AABB] in space."
msgstr ""
-#: doc/classes/AABB.xml:62
+#: doc/classes/AABB.xml:69
msgid "Returns the normalized longest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:69
+#: doc/classes/AABB.xml:76
msgid ""
"Returns the index of the longest axis of the [AABB] (according to "
"[Vector3]'s [code]AXIS_*[/code] constants)."
msgstr ""
-#: doc/classes/AABB.xml:76
+#: doc/classes/AABB.xml:83
msgid "Returns the scalar length of the longest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:83
+#: doc/classes/AABB.xml:90
msgid "Returns the normalized shortest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:90
+#: doc/classes/AABB.xml:97
msgid ""
"Returns the index of the shortest axis of the [AABB] (according to "
"[Vector3]::AXIS* enum)."
msgstr ""
-#: doc/classes/AABB.xml:97
+#: doc/classes/AABB.xml:104
msgid "Returns the scalar length of the shortest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:106
+#: doc/classes/AABB.xml:113
msgid ""
"Returns the support point in a given direction. This is useful for collision "
"detection algorithms."
msgstr ""
-#: doc/classes/AABB.xml:115
+#: doc/classes/AABB.xml:122
msgid ""
"Returns a copy of the [AABB] grown a given amount of units towards all the "
"sides."
msgstr ""
-#: doc/classes/AABB.xml:122
+#: doc/classes/AABB.xml:129
msgid "Returns [code]true[/code] if the [AABB] is flat or empty."
msgstr ""
-#: doc/classes/AABB.xml:129
+#: doc/classes/AABB.xml:136
msgid "Returns [code]true[/code] if the [AABB] is empty."
msgstr ""
-#: doc/classes/AABB.xml:138
+#: doc/classes/AABB.xml:145
msgid "Returns [code]true[/code] if the [AABB] contains a point."
msgstr ""
-#: doc/classes/AABB.xml:147
+#: doc/classes/AABB.xml:154
msgid ""
"Returns the intersection between two [AABB]. An empty AABB (size 0,0,0) is "
"returned on failure."
msgstr ""
-#: doc/classes/AABB.xml:156
+#: doc/classes/AABB.xml:163
msgid "Returns [code]true[/code] if the [AABB] overlaps with another."
msgstr ""
-#: doc/classes/AABB.xml:165
+#: doc/classes/AABB.xml:172
msgid "Returns [code]true[/code] if the [AABB] is on both sides of a plane."
msgstr ""
-#: doc/classes/AABB.xml:176
+#: doc/classes/AABB.xml:183
msgid ""
"Returns [code]true[/code] if the [AABB] intersects the line segment between "
"[code]from[/code] and [code]to[/code]."
msgstr ""
-#: doc/classes/AABB.xml:185
+#: doc/classes/AABB.xml:192
msgid ""
"Returns [code]true[/code] if this [AABB] and [code]aabb[/code] are "
"approximately equal, by calling [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/AABB.xml:194
+#: doc/classes/AABB.xml:201
msgid ""
"Returns a larger [AABB] that contains both this [AABB] and [code]with[/code]."
msgstr ""
-#: doc/classes/AABB.xml:200
+#: doc/classes/AABB.xml:207 doc/classes/Rect2.xml:174
+#: doc/classes/Rect2i.xml:163
msgid ""
-"Ending corner. This is calculated as [code]position + size[/code]. Changing "
-"this property changes [member size] accordingly."
+"Ending corner. This is calculated as [code]position + size[/code]. Setting "
+"this value will change the size."
msgstr ""
-#: doc/classes/AABB.xml:203
-msgid "Beginning corner."
+#: doc/classes/AABB.xml:210 doc/classes/Rect2.xml:177
+#: doc/classes/Rect2i.xml:166
+msgid "Beginning corner. Typically has values lower than [member end]."
msgstr ""
-#: doc/classes/AABB.xml:206 doc/classes/Rect2.xml:180
+#: doc/classes/AABB.xml:213 doc/classes/Rect2.xml:180
#: doc/classes/Rect2i.xml:169
-msgid "Size from position to end."
+msgid ""
+"Size from [member position] to [member end]. Typically all components are "
+"positive.\n"
+"If the size is negative, you can use [method abs] to fix it."
msgstr ""
#: doc/classes/AcceptDialog.xml:4
@@ -3735,11 +4101,11 @@ msgstr ""
msgid "The text displayed by the dialog."
msgstr ""
-#: doc/classes/AcceptDialog.xml:82
+#: doc/classes/AcceptDialog.xml:83
msgid "Emitted when the dialog is accepted, i.e. the OK button is pressed."
msgstr ""
-#: doc/classes/AcceptDialog.xml:89
+#: doc/classes/AcceptDialog.xml:90
msgid "Emitted when a custom button is pressed. See [method add_button]."
msgstr ""
@@ -3792,7 +4158,7 @@ msgstr ""
#: doc/classes/AESContext.xml:54
msgid ""
"Get the current IV state for this context (IV gets updated when calling "
-"[method update]). You normally don't need this funciton.\n"
+"[method update]). You normally don't need this function.\n"
"Note: This function only makes sense when the context is started with "
"[constant MODE_CBC_ENCRYPT] or [constant MODE_CBC_DECRYPT]."
msgstr ""
@@ -3870,12 +4236,14 @@ msgid "If [code]true[/code], texture will be centered."
msgstr ""
#: doc/classes/AnimatedSprite2D.xml:46 doc/classes/Sprite2D.xml:41
-#: doc/classes/SpriteBase3D.xml:61 doc/classes/TextureRect.xml:18
+#: doc/classes/SpriteBase3D.xml:61 doc/classes/TextureButton.xml:19
+#: doc/classes/TextureRect.xml:18
msgid "If [code]true[/code], texture is flipped horizontally."
msgstr ""
#: doc/classes/AnimatedSprite2D.xml:49 doc/classes/Sprite2D.xml:44
-#: doc/classes/SpriteBase3D.xml:64 doc/classes/TextureRect.xml:21
+#: doc/classes/SpriteBase3D.xml:64 doc/classes/TextureButton.xml:22
+#: doc/classes/TextureRect.xml:21
msgid "If [code]true[/code], texture is flipped vertically."
msgstr ""
@@ -4042,10 +4410,10 @@ msgid ""
"[codeblock]\n"
"# This creates an animation that makes the node \"Enemy\" move to the right "
"by\n"
-"# 100 pixels in 1 second.\n"
+"# 100 pixels in 0.5 seconds.\n"
"var animation = Animation.new()\n"
"var track_index = animation.add_track(Animation.TYPE_VALUE)\n"
-"animation.track_set_path(track_index, \"Enemy:position.x\")\n"
+"animation.track_set_path(track_index, \"Enemy:position:x\")\n"
"animation.track_insert_key(track_index, 0.0, 0)\n"
"animation.track_insert_key(track_index, 0.5, 100)\n"
"[/codeblock]\n"
@@ -6173,10 +6541,10 @@ msgstr ""
msgid ""
"Returns [code]true[/code] if the array contains the given value.\n"
"[codeblock]\n"
-"[\"inside\", 7].has(\"inside\") == true\n"
-"[\"inside\", 7].has(\"outside\") == false\n"
-"[\"inside\", 7].has(7) == true\n"
-"[\"inside\", 7].has(\"7\") == false\n"
+"print([\"inside\", 7].has(\"inside\")) # True\n"
+"print([\"inside\", 7].has(\"outside\")) # False\n"
+"print([\"inside\", 7].has(7)) # True\n"
+"print([\"inside\", 7].has(\"7\")) # False\n"
"[/codeblock]\n"
"[b]Note:[/b] This is equivalent to using the [code]in[/code] operator as "
"follows:\n"
@@ -6197,11 +6565,11 @@ msgid ""
"valid, or at the end of the array ([code]pos == size()[/code])."
msgstr ""
-#: doc/classes/Array.xml:265 doc/classes/PackedByteArray.xml:107
-#: doc/classes/PackedColorArray.xml:62 doc/classes/PackedFloat32Array.xml:63
-#: doc/classes/PackedFloat64Array.xml:63 doc/classes/PackedInt32Array.xml:63
-#: doc/classes/PackedInt64Array.xml:63 doc/classes/PackedStringArray.xml:62
-#: doc/classes/PackedVector2Array.xml:62 doc/classes/PackedVector3Array.xml:62
+#: doc/classes/Array.xml:265 doc/classes/PackedByteArray.xml:116
+#: doc/classes/PackedColorArray.xml:71 doc/classes/PackedFloat32Array.xml:72
+#: doc/classes/PackedFloat64Array.xml:72 doc/classes/PackedInt32Array.xml:72
+#: doc/classes/PackedInt64Array.xml:72 doc/classes/PackedStringArray.xml:71
+#: doc/classes/PackedVector2Array.xml:71 doc/classes/PackedVector3Array.xml:71
msgid "Reverses the order of the elements in the array."
msgstr ""
@@ -6231,8 +6599,8 @@ msgid ""
"code] if the array is empty."
msgstr ""
-#: doc/classes/Array.xml:302 doc/classes/PackedByteArray.xml:116
-#: doc/classes/PackedFloat32Array.xml:72 doc/classes/PackedFloat64Array.xml:72
+#: doc/classes/Array.xml:302 doc/classes/PackedByteArray.xml:125
+#: doc/classes/PackedFloat32Array.xml:81 doc/classes/PackedFloat64Array.xml:81
msgid "Appends an element at the end of the array."
msgstr ""
@@ -6240,11 +6608,11 @@ msgstr ""
msgid "Adds an element at the beginning of the array."
msgstr ""
-#: doc/classes/Array.xml:320 doc/classes/PackedByteArray.xml:125
-#: doc/classes/PackedColorArray.xml:80 doc/classes/PackedFloat32Array.xml:81
-#: doc/classes/PackedFloat64Array.xml:81 doc/classes/PackedInt32Array.xml:81
-#: doc/classes/PackedInt64Array.xml:81 doc/classes/PackedStringArray.xml:80
-#: doc/classes/PackedVector2Array.xml:80 doc/classes/PackedVector3Array.xml:80
+#: doc/classes/Array.xml:320 doc/classes/PackedByteArray.xml:134
+#: doc/classes/PackedColorArray.xml:89 doc/classes/PackedFloat32Array.xml:90
+#: doc/classes/PackedFloat64Array.xml:90 doc/classes/PackedInt32Array.xml:90
+#: doc/classes/PackedInt64Array.xml:90 doc/classes/PackedStringArray.xml:89
+#: doc/classes/PackedVector2Array.xml:89 doc/classes/PackedVector3Array.xml:89
msgid "Removes an element from the array by index."
msgstr ""
@@ -6527,7 +6895,7 @@ msgid ""
msgstr ""
#: doc/classes/ArrayMesh.xml:235 doc/classes/Mesh.xml:210
-#: doc/classes/RenderingServer.xml:3115
+#: doc/classes/RenderingServer.xml:3111
msgid "Represents the size of the [enum ArrayType] enum."
msgstr ""
@@ -8344,7 +8712,9 @@ msgid ""
msgstr ""
#: doc/classes/BaseButton.xml:16
-msgid "Called when the button is pressed."
+msgid ""
+"Called when the button is pressed. If you need to know the button's pressed "
+"state (and [member toggle_mode] is active), use [method _toggled] instead."
msgstr ""
#: doc/classes/BaseButton.xml:25
@@ -8438,43 +8808,45 @@ msgstr ""
msgid ""
"Emitted when the button is toggled or pressed. This is on [signal "
"button_down] if [member action_mode] is [constant ACTION_MODE_BUTTON_PRESS] "
-"and on [signal button_up] otherwise."
+"and on [signal button_up] otherwise.\n"
+"If you need to know the button's pressed state (and [member toggle_mode] is "
+"active), use [signal toggled] instead."
msgstr ""
-#: doc/classes/BaseButton.xml:98
+#: doc/classes/BaseButton.xml:99
msgid ""
"Emitted when the button was just toggled between pressed and normal states "
"(only if [member toggle_mode] is active). The new state is contained in the "
"[code]button_pressed[/code] argument."
msgstr ""
-#: doc/classes/BaseButton.xml:104
+#: doc/classes/BaseButton.xml:105
msgid ""
"The normal state (i.e. not pressed, not hovered, not toggled and enabled) of "
"buttons."
msgstr ""
-#: doc/classes/BaseButton.xml:107
+#: doc/classes/BaseButton.xml:108
msgid "The state of buttons are pressed."
msgstr ""
-#: doc/classes/BaseButton.xml:110
+#: doc/classes/BaseButton.xml:111
msgid "The state of buttons are hovered."
msgstr ""
-#: doc/classes/BaseButton.xml:113
+#: doc/classes/BaseButton.xml:114
msgid "The state of buttons are disabled."
msgstr ""
-#: doc/classes/BaseButton.xml:116
+#: doc/classes/BaseButton.xml:117
msgid "The state of buttons are both hovered and pressed."
msgstr ""
-#: doc/classes/BaseButton.xml:119
+#: doc/classes/BaseButton.xml:120
msgid "Require just a press to consider the button clicked."
msgstr ""
-#: doc/classes/BaseButton.xml:122
+#: doc/classes/BaseButton.xml:123
msgid ""
"Require a press and a subsequent release before considering the button "
"clicked."
@@ -9167,22 +9539,22 @@ msgstr ""
msgid "Represents the size of the [enum TextureParam] enum."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:451 doc/classes/RenderingServer.xml:3657
-#: doc/classes/Viewport.xml:390
+#: doc/classes/BaseMaterial3D.xml:451 doc/classes/RenderingServer.xml:3668
+#: doc/classes/Viewport.xml:393
msgid ""
"The texture filter reads from the nearest pixel only. The simplest and "
"fastest method of filtering, but the texture will look pixelized."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:454 doc/classes/RenderingServer.xml:3660
-#: doc/classes/Viewport.xml:393
+#: doc/classes/BaseMaterial3D.xml:454 doc/classes/RenderingServer.xml:3671
+#: doc/classes/Viewport.xml:396
msgid ""
"The texture filter blends between the nearest 4 pixels. Use this when you "
"want to avoid a pixelated style, but do not want mipmaps."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:457 doc/classes/RenderingServer.xml:3663
-#: doc/classes/Viewport.xml:396
+#: doc/classes/BaseMaterial3D.xml:457 doc/classes/RenderingServer.xml:3674
+#: doc/classes/Viewport.xml:399
msgid ""
"The texture filter reads from the nearest pixel in the nearest mipmap. The "
"fastest way to read from textures with mipmaps."
@@ -9195,14 +9567,14 @@ msgid ""
"smooth out pixels that are far from the camera."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:463 doc/classes/RenderingServer.xml:3669
+#: doc/classes/BaseMaterial3D.xml:463 doc/classes/RenderingServer.xml:3680
msgid ""
"The texture filter reads from the nearest pixel, but selects a mipmap based "
"on the angle between the surface and the camera view. This reduces artifacts "
"on surfaces that are almost in line with the camera."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:466 doc/classes/RenderingServer.xml:3672
+#: doc/classes/BaseMaterial3D.xml:466 doc/classes/RenderingServer.xml:3683
msgid ""
"The texture filter blends between the nearest 4 pixels and selects a mipmap "
"based on the angle between the surface and the camera view. This reduces "
@@ -9211,7 +9583,7 @@ msgid ""
"texturing."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:469 doc/classes/CanvasItem.xml:685
+#: doc/classes/BaseMaterial3D.xml:469 doc/classes/CanvasItem.xml:695
msgid "Represents the size of the [enum TextureFilter] enum."
msgstr ""
@@ -9434,8 +9806,8 @@ msgstr ""
msgid "Enables the shadow to opacity feature."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:622 doc/classes/RenderingServer.xml:3684
-#: doc/classes/Viewport.xml:408
+#: doc/classes/BaseMaterial3D.xml:622 doc/classes/RenderingServer.xml:3695
+#: doc/classes/Viewport.xml:411
msgid ""
"Enables the texture to repeat when UV coordinates are outside the 0-1 range. "
"If using one of the linear filtering modes, this can result in artifacts at "
@@ -9576,167 +9948,195 @@ msgstr ""
#: doc/classes/Basis.xml:7
msgid ""
-"3×3 matrix used for 3D rotation and scale. Contains 3 vector fields X, Y and "
-"Z as its columns, which can be interpreted as the local basis vectors of a "
-"transformation. Can also be accessed as array of 3D vectors. These vectors "
-"are orthogonal to each other, but are not necessarily normalized (due to "
-"scaling). Almost always used as an orthogonal basis for a [Transform].\n"
-"For such use, it is composed of a scaling and a rotation matrix, in that "
-"order (M = R.S)."
+"3×3 matrix used for 3D rotation and scale. Almost always used as an "
+"orthogonal basis for a Transform.\n"
+"Contains 3 vector fields X, Y and Z as its columns, which are typically "
+"interpreted as the local basis vectors of a transformation. For such use, it "
+"is composed of a scaling and a rotation matrix, in that order (M = R.S).\n"
+"Can also be accessed as array of 3D vectors. These vectors are normally "
+"orthogonal to each other, but are not necessarily normalized (due to "
+"scaling).\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
+msgstr ""
+
+#: doc/classes/Basis.xml:13 doc/classes/Transform.xml:12
+#: doc/classes/Transform2D.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/math/"
+"matrices_and_transforms.html"
msgstr ""
-#: doc/classes/Basis.xml:11 doc/classes/Transform.xml:11
+#: doc/classes/Basis.xml:14 doc/classes/Transform.xml:13
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/using_transforms.html"
msgstr ""
-#: doc/classes/Basis.xml:20
-msgid "Create a rotation matrix from the given quaternion."
+#: doc/classes/Basis.xml:23
+msgid "Constructs a pure rotation basis matrix from the given quaternion."
msgstr ""
-#: doc/classes/Basis.xml:29
+#: doc/classes/Basis.xml:32
msgid ""
-"Create a rotation matrix (in the YXZ convention: first Z, then X, and Y "
-"last) from the specified Euler angles, given in the vector format as (X "
-"angle, Y angle, Z angle)."
+"Constructs a pure rotation basis matrix from the given Euler angles (in the "
+"YXZ convention: when *composing*, first Y, then X, and Z last), given in the "
+"vector format as (X angle, Y angle, Z angle).\n"
+"Consider using the [Quat] constructor instead, which uses a quaternion "
+"instead of Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:40
+#: doc/classes/Basis.xml:44
msgid ""
-"Create a rotation matrix which rotates around the given axis by the "
-"specified angle, in radians. The axis must be a normalized vector."
+"Constructs a pure rotation basis matrix, rotated around the given "
+"[code]axis[/code] by [code]phi[/code], in radians. The axis must be a "
+"normalized vector."
msgstr ""
-#: doc/classes/Basis.xml:53
-msgid "Create a matrix from 3 axis vectors."
+#: doc/classes/Basis.xml:57
+msgid "Constructs a basis matrix from 3 axis vectors (matrix columns)."
msgstr ""
-#: doc/classes/Basis.xml:60
-msgid "Returns the determinant of the matrix."
+#: doc/classes/Basis.xml:64
+msgid ""
+"Returns the determinant of the basis matrix. If the basis is uniformly "
+"scaled, its determinant is the square of the scale.\n"
+"A negative determinant means the basis has a negative scale. A zero "
+"determinant means the basis isn't invertible, and is usually considered "
+"invalid."
msgstr ""
-#: doc/classes/Basis.xml:67
+#: doc/classes/Basis.xml:72
msgid ""
"Returns the basis's rotation in the form of Euler angles (in the YXZ "
-"convention: first Z, then X, and Y last). The returned vector contains the "
-"rotation angles in the format (X angle, Y angle, Z angle). See [method "
-"get_rotation_quat] if you need a quaternion instead."
+"convention: when decomposing, first Z, then X, and Y last). The returned "
+"vector contains the rotation angles in the format (X angle, Y angle, Z "
+"angle).\n"
+"Consider using the [method get_rotation_quat] method instead, which returns "
+"a [Quat] quaternion instead of Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:74
+#: doc/classes/Basis.xml:80
msgid ""
"This function considers a discretization of rotations into 24 points on unit "
"sphere, lying along the vectors (x,y,z) with each component being either -1, "
"0, or 1, and returns the index of the point best representing the "
-"orientation of the object. It is mainly used by the grid map editor. For "
+"orientation of the object. It is mainly used by the [GridMap] editor. For "
"further details, refer to the Godot source code."
msgstr ""
-#: doc/classes/Basis.xml:81
+#: doc/classes/Basis.xml:87
msgid ""
"Returns the basis's rotation in the form of a quaternion. See [method "
"get_euler] if you need Euler angles, but keep in mind quaternions should "
"generally be preferred to Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:88
+#: doc/classes/Basis.xml:94
msgid ""
"Assuming that the matrix is the combination of a rotation and scaling, "
"return the absolute value of scaling factors along each axis."
msgstr ""
-#: doc/classes/Basis.xml:95 doc/classes/Transform2D.xml:49
+#: doc/classes/Basis.xml:101
msgid "Returns the inverse of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:106
+#: doc/classes/Basis.xml:112
msgid ""
"Returns [code]true[/code] if this basis and [code]b[/code] are approximately "
"equal, by calling [code]is_equal_approx[/code] on each component."
msgstr ""
-#: doc/classes/Basis.xml:113
+#: doc/classes/Basis.xml:119
msgid ""
"Returns the orthonormalized version of the matrix (useful to call from time "
"to time to avoid rounding error for orthogonal matrices). This performs a "
"Gram-Schmidt orthonormalization on the basis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:124
+#: doc/classes/Basis.xml:130
msgid ""
"Introduce an additional rotation around the given axis by phi (radians). The "
"axis must be a normalized vector."
msgstr ""
-#: doc/classes/Basis.xml:133
+#: doc/classes/Basis.xml:139
msgid ""
"Introduce an additional scaling specified by the given 3D scaling factor."
msgstr ""
-#: doc/classes/Basis.xml:144
+#: doc/classes/Basis.xml:150
msgid ""
"Assuming that the matrix is a proper rotation matrix, slerp performs a "
"spherical-linear interpolation with another rotation matrix."
msgstr ""
-#: doc/classes/Basis.xml:153
+#: doc/classes/Basis.xml:159
msgid "Transposed dot product with the X axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:162
+#: doc/classes/Basis.xml:168
msgid "Transposed dot product with the Y axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:171
+#: doc/classes/Basis.xml:177
msgid "Transposed dot product with the Z axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:178
+#: doc/classes/Basis.xml:184
msgid "Returns the transposed version of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:187
+#: doc/classes/Basis.xml:193
msgid "Returns a vector transformed (multiplied) by the matrix."
msgstr ""
-#: doc/classes/Basis.xml:196
+#: doc/classes/Basis.xml:202
msgid ""
-"Returns a vector transformed (multiplied) by the transposed matrix.\n"
+"Returns a vector transformed (multiplied) by the transposed basis matrix.\n"
"[b]Note:[/b] This results in a multiplication by the inverse of the matrix "
"only if it represents a rotation-reflection."
msgstr ""
-#: doc/classes/Basis.xml:203
-msgid "The basis matrix's X vector."
+#: doc/classes/Basis.xml:209 doc/classes/Transform2D.xml:181
+msgid ""
+"The basis matrix's X vector (column 0). Equivalent to array index [code]0[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:206
-msgid "The basis matrix's Y vector."
+#: doc/classes/Basis.xml:212 doc/classes/Transform2D.xml:184
+msgid ""
+"The basis matrix's Y vector (column 1). Equivalent to array index [code]1[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:209
-msgid "The basis matrix's Z vector."
+#: doc/classes/Basis.xml:215
+msgid ""
+"The basis matrix's Z vector (column 2). Equivalent to array index [code]2[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:214
+#: doc/classes/Basis.xml:220
msgid ""
-"The identity basis. This is identical to calling [code]Basis()[/code] "
-"without any parameters. This constant can be used to make your code clearer."
+"The identity basis, with no rotation or scaling applied.\n"
+"This is identical to calling [code]Basis()[/code] without any parameters. "
+"This constant can be used to make your code clearer, and for consistency "
+"with C#."
msgstr ""
-#: doc/classes/Basis.xml:217
+#: doc/classes/Basis.xml:224
msgid ""
"The basis that will flip something along the X axis when used in a "
"transformation."
msgstr ""
-#: doc/classes/Basis.xml:220
+#: doc/classes/Basis.xml:227
msgid ""
"The basis that will flip something along the Y axis when used in a "
"transformation."
msgstr ""
-#: doc/classes/Basis.xml:223
+#: doc/classes/Basis.xml:230
msgid ""
"The basis that will flip something along the Z axis when used in a "
"transformation."
@@ -10049,97 +10449,111 @@ msgstr ""
#: doc/classes/Button.xml:7
msgid ""
"Button is the standard themed button. It can contain text and an icon, and "
-"will display them according to the current [Theme]."
+"will display them according to the current [Theme].\n"
+"[b]Example of creating a button and assigning an action when pressed by code:"
+"[/b]\n"
+"[codeblock]\n"
+"func _ready():\n"
+" var button = Button.new()\n"
+" button.text = \"Click me\"\n"
+" button.connect(\"pressed\", self, \"_button_pressed\")\n"
+" add_child(button)\n"
+"\n"
+"func _button_pressed():\n"
+" print(\"Hello world!\")\n"
+"[/codeblock]\n"
+"Buttons (like all Control nodes) can also be created in the editor, but some "
+"situations may require creating them from code."
msgstr ""
-#: doc/classes/Button.xml:15
+#: doc/classes/Button.xml:27
msgid ""
"Text alignment policy for the button's text, use one of the [enum TextAlign] "
"constants."
msgstr ""
-#: doc/classes/Button.xml:18
+#: doc/classes/Button.xml:30
msgid ""
"When this property is enabled, text that is too large to fit the button is "
"clipped, when disabled the Button will always be wide enough to hold the "
"text."
msgstr ""
-#: doc/classes/Button.xml:21
+#: doc/classes/Button.xml:33
msgid ""
"When enabled, the button's icon will expand/shrink to fit the button's size "
"while keeping its aspect."
msgstr ""
-#: doc/classes/Button.xml:24
+#: doc/classes/Button.xml:36
msgid "Flat buttons don't display decoration."
msgstr ""
-#: doc/classes/Button.xml:27
+#: doc/classes/Button.xml:39
msgid ""
"Button's icon, if text is present the icon will be placed before the text."
msgstr ""
-#: doc/classes/Button.xml:30 doc/classes/LinkButton.xml:18
+#: doc/classes/Button.xml:42 doc/classes/LinkButton.xml:18
msgid "The button's text that will be displayed inside the button's area."
msgstr ""
-#: doc/classes/Button.xml:35
+#: doc/classes/Button.xml:47
msgid "Align the text to the left."
msgstr ""
-#: doc/classes/Button.xml:38
+#: doc/classes/Button.xml:50
msgid "Align the text to the center."
msgstr ""
-#: doc/classes/Button.xml:41
+#: doc/classes/Button.xml:53
msgid "Align the text to the right."
msgstr ""
-#: doc/classes/Button.xml:46
+#: doc/classes/Button.xml:58
msgid "[StyleBox] used when the [Button] is disabled."
msgstr ""
-#: doc/classes/Button.xml:49
+#: doc/classes/Button.xml:61
msgid ""
"[StyleBox] used when the [Button] is focused. It is displayed over the "
"current [StyleBox], so using [StyleBoxEmpty] will just disable the focus "
"visual effect."
msgstr ""
-#: doc/classes/Button.xml:52
+#: doc/classes/Button.xml:64
msgid "[Font] of the [Button]'s text."
msgstr ""
-#: doc/classes/Button.xml:55
+#: doc/classes/Button.xml:67
msgid "Default text [Color] of the [Button]."
msgstr ""
-#: doc/classes/Button.xml:58
+#: doc/classes/Button.xml:70
msgid "Text [Color] used when the [Button] is disabled."
msgstr ""
-#: doc/classes/Button.xml:61
+#: doc/classes/Button.xml:73
msgid "Text [Color] used when the [Button] is being hovered."
msgstr ""
-#: doc/classes/Button.xml:64
+#: doc/classes/Button.xml:76
msgid "Text [Color] used when the [Button] is being pressed."
msgstr ""
-#: doc/classes/Button.xml:67
+#: doc/classes/Button.xml:79
msgid "[StyleBox] used when the [Button] is being hovered."
msgstr ""
-#: doc/classes/Button.xml:70
+#: doc/classes/Button.xml:82
msgid "The horizontal space between [Button]'s icon and text."
msgstr ""
-#: doc/classes/Button.xml:73
+#: doc/classes/Button.xml:85
msgid "Default [StyleBox] for the [Button]."
msgstr ""
-#: doc/classes/Button.xml:76
+#: doc/classes/Button.xml:88
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr ""
@@ -10791,7 +11205,7 @@ msgstr ""
#: doc/classes/CameraEffects.xml:37
msgid ""
"The exposure override value to use. Higher values will result in a brighter "
-"scene. Only effective if [member override_exposure_enable] is [code]true[/"
+"scene. Only effective if [member override_exposure_enabled] is [code]true[/"
"code]."
msgstr ""
@@ -11045,265 +11459,282 @@ msgid ""
msgstr ""
#: doc/classes/CanvasItem.xml:319
-msgid "Draws a string using a custom font."
+msgid ""
+"Draws [code]text[/code] using the specified [code]font[/code] at the "
+"[code]position[/code] (top-left corner). The text will have its color "
+"multiplied by [code]modulate[/code]. If [code]clip_w[/code] is greater than "
+"or equal to 0, the text will be clipped if it exceeds the specified width.\n"
+"[b]Example using the default project font:[/b]\n"
+"[codeblock]\n"
+"# If using this method in a script that redraws constantly, move the\n"
+"# `default_font` declaration to a member variable assigned in `_ready()`\n"
+"# so the Control is only created once.\n"
+"var default_font = Control.new().get_font(\"font\")\n"
+"draw_string(default_font, Vector2(64, 64), \"Hello world\")\n"
+"[/codeblock]\n"
+"See also [method Font.draw]."
msgstr ""
-#: doc/classes/CanvasItem.xml:330
+#: doc/classes/CanvasItem.xml:339
msgid "Draws a styled rectangle."
msgstr ""
-#: doc/classes/CanvasItem.xml:353
+#: doc/classes/CanvasItem.xml:362
msgid "Draws a texture at a given position."
msgstr ""
-#: doc/classes/CanvasItem.xml:380
+#: doc/classes/CanvasItem.xml:389
msgid ""
"Draws a textured rectangle at a given position, optionally modulated by a "
"color. If [code]transpose[/code] is [code]true[/code], the texture will have "
"its X and Y coordinates swapped."
msgstr ""
-#: doc/classes/CanvasItem.xml:409
+#: doc/classes/CanvasItem.xml:418
msgid ""
"Draws a textured rectangle region at a given position, optionally modulated "
"by a color. If [code]transpose[/code] is [code]true[/code], the texture will "
"have its X and Y coordinates swapped."
msgstr ""
-#: doc/classes/CanvasItem.xml:416 doc/classes/Node3D.xml:19
+#: doc/classes/CanvasItem.xml:425 doc/classes/Node3D.xml:19
msgid ""
"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."
msgstr ""
-#: doc/classes/CanvasItem.xml:423
+#: doc/classes/CanvasItem.xml:432
msgid "Returns the [RID] of the [World2D] canvas where this item is in."
msgstr ""
-#: doc/classes/CanvasItem.xml:430
+#: doc/classes/CanvasItem.xml:439
msgid "Returns the canvas item RID used by [RenderingServer] for this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:437
+#: doc/classes/CanvasItem.xml:446
msgid "Returns the transform matrix of this item's canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:444
+#: doc/classes/CanvasItem.xml:453
msgid "Returns the global position of the mouse."
msgstr ""
-#: doc/classes/CanvasItem.xml:451
+#: doc/classes/CanvasItem.xml:460
msgid "Returns the global transform matrix of this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:458
+#: doc/classes/CanvasItem.xml:467
msgid ""
"Returns the global transform matrix of this item in relation to the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:465
+#: doc/classes/CanvasItem.xml:474
msgid "Returns the mouse position relative to this item's position."
msgstr ""
-#: doc/classes/CanvasItem.xml:472
+#: doc/classes/CanvasItem.xml:481
msgid "Returns the transform matrix of this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:479
+#: doc/classes/CanvasItem.xml:488
msgid "Returns the viewport's boundaries as a [Rect2]."
msgstr ""
-#: doc/classes/CanvasItem.xml:486
+#: doc/classes/CanvasItem.xml:495
msgid "Returns this item's transform in relation to the viewport."
msgstr ""
-#: doc/classes/CanvasItem.xml:493
+#: doc/classes/CanvasItem.xml:502
msgid "Returns the [World2D] where this item is in."
msgstr ""
-#: doc/classes/CanvasItem.xml:500
+#: doc/classes/CanvasItem.xml:509
msgid "Hide the [CanvasItem] if it's currently visible."
msgstr ""
-#: doc/classes/CanvasItem.xml:507
+#: doc/classes/CanvasItem.xml:516
msgid ""
"Returns [code]true[/code] if local transform notifications are communicated "
"to children."
msgstr ""
-#: doc/classes/CanvasItem.xml:514
+#: doc/classes/CanvasItem.xml:523
msgid ""
"Returns [code]true[/code] if the node is set as top-level. See [method "
"set_as_toplevel]."
msgstr ""
-#: doc/classes/CanvasItem.xml:521
+#: doc/classes/CanvasItem.xml:530
msgid ""
"Returns [code]true[/code] if global transform notifications are communicated "
"to children."
msgstr ""
-#: doc/classes/CanvasItem.xml:528
+#: doc/classes/CanvasItem.xml:537 doc/classes/Node3D.xml:104
msgid ""
"Returns [code]true[/code] if the node is present in the [SceneTree], its "
-"[member visible] property is [code]true[/code] and its inherited visibility "
-"is also [code]true[/code]."
+"[member visible] property is [code]true[/code] and all its antecedents are "
+"also visible. If any antecedent is hidden, this node will not be visible in "
+"the scene tree."
msgstr ""
-#: doc/classes/CanvasItem.xml:537
+#: doc/classes/CanvasItem.xml:546
msgid "Assigns [code]screen_point[/code] as this node's new local transform."
msgstr ""
-#: doc/classes/CanvasItem.xml:546
+#: doc/classes/CanvasItem.xml:555
msgid ""
"Transformations issued by [code]event[/code]'s inputs are applied in local "
"space instead of global space."
msgstr ""
-#: doc/classes/CanvasItem.xml:555
+#: doc/classes/CanvasItem.xml:564
msgid ""
"If [code]enable[/code] is [code]true[/code], the node won't inherit its "
"transform from parent canvas items."
msgstr ""
-#: doc/classes/CanvasItem.xml:564
+#: doc/classes/CanvasItem.xml:573
msgid ""
"If [code]enable[/code] is [code]true[/code], children will be updated with "
"local transform data."
msgstr ""
-#: doc/classes/CanvasItem.xml:573
+#: doc/classes/CanvasItem.xml:582
msgid ""
"If [code]enable[/code] is [code]true[/code], children will be updated with "
"global transform data."
msgstr ""
-#: doc/classes/CanvasItem.xml:580
+#: doc/classes/CanvasItem.xml:589
msgid ""
"Show the [CanvasItem] if it's currently hidden. For controls that inherit "
"[Popup], the correct way to make them visible is to call one of the multiple "
"[code]popup*()[/code] functions instead."
msgstr ""
-#: doc/classes/CanvasItem.xml:587
+#: doc/classes/CanvasItem.xml:596
msgid ""
"Queue the [CanvasItem] for update. [constant NOTIFICATION_DRAW] will be "
"called on idle time to request redraw."
msgstr ""
-#: doc/classes/CanvasItem.xml:593
+#: doc/classes/CanvasItem.xml:602
msgid ""
"The rendering layers in which this [CanvasItem] responds to [Light2D] nodes."
msgstr ""
-#: doc/classes/CanvasItem.xml:596
+#: doc/classes/CanvasItem.xml:605
msgid "The material applied to textures on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:599
+#: doc/classes/CanvasItem.xml:608
msgid "The color applied to textures on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:602
+#: doc/classes/CanvasItem.xml:611
msgid ""
"The color applied to textures on this [CanvasItem]. This is not inherited by "
"children [CanvasItem]s."
msgstr ""
-#: doc/classes/CanvasItem.xml:605
+#: doc/classes/CanvasItem.xml:614
msgid "If [code]true[/code], the object draws behind its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:608
+#: doc/classes/CanvasItem.xml:617
msgid "If [code]true[/code], the object draws on top of its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:611
+#: doc/classes/CanvasItem.xml:620
msgid "The texture filtering mode to use on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:614
+#: doc/classes/CanvasItem.xml:623
msgid "The texture repeating mode to use on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:617
+#: doc/classes/CanvasItem.xml:626
msgid ""
"If [code]true[/code], the parent [CanvasItem]'s [member material] property "
"is used as this one's material."
msgstr ""
-#: doc/classes/CanvasItem.xml:620
+#: doc/classes/CanvasItem.xml:629
msgid ""
-"If [code]true[/code], this [CanvasItem] is drawn. For controls that inherit "
-"[Popup], the correct way to make them visible is to call one of the multiple "
-"[code]popup*()[/code] functions instead."
+"If [code]true[/code], this [CanvasItem] is drawn. The node is only visible "
+"if all of its antecedents are visible as well (in other words, [method "
+"is_visible_in_tree] must return [code]true[/code]).\n"
+"[b]Note:[/b] For controls that inherit [Popup], the correct way to make them "
+"visible is to call one of the multiple [code]popup*()[/code] functions "
+"instead."
msgstr ""
-#: doc/classes/CanvasItem.xml:626
+#: doc/classes/CanvasItem.xml:636
msgid ""
"Emitted when the [CanvasItem] must redraw. This can only be connected "
"realtime, as deferred will not allow drawing."
msgstr ""
-#: doc/classes/CanvasItem.xml:631
+#: doc/classes/CanvasItem.xml:641
msgid "Emitted when becoming hidden."
msgstr ""
-#: doc/classes/CanvasItem.xml:636
+#: doc/classes/CanvasItem.xml:646
msgid "Emitted when the item rect has changed."
msgstr ""
-#: doc/classes/CanvasItem.xml:641
+#: doc/classes/CanvasItem.xml:651
msgid "Emitted when the visibility (hidden/visible) changes."
msgstr ""
-#: doc/classes/CanvasItem.xml:647
+#: doc/classes/CanvasItem.xml:657
msgid ""
"The [CanvasItem]'s transform has changed. This notification is only received "
"if enabled by [method set_notify_transform] or [method "
"set_notify_local_transform]."
msgstr ""
-#: doc/classes/CanvasItem.xml:650
+#: doc/classes/CanvasItem.xml:660
msgid "The [CanvasItem] is requested to draw."
msgstr ""
-#: doc/classes/CanvasItem.xml:653
+#: doc/classes/CanvasItem.xml:663
msgid "The [CanvasItem]'s visibility has changed."
msgstr ""
-#: doc/classes/CanvasItem.xml:656
+#: doc/classes/CanvasItem.xml:666
msgid "The [CanvasItem] has entered the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:659
+#: doc/classes/CanvasItem.xml:669
msgid "The [CanvasItem] has exited the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:662 doc/classes/CanvasItem.xml:688
+#: doc/classes/CanvasItem.xml:672 doc/classes/CanvasItem.xml:698
msgid "The [CanvasItem] will inherit the filter from its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:665
+#: doc/classes/CanvasItem.xml:675
msgid ""
"The texture filter reads from the nearest pixel only. The simplest and "
"fastest method of filtering. Useful for pixel art."
msgstr ""
-#: doc/classes/CanvasItem.xml:668
+#: doc/classes/CanvasItem.xml:678
msgid ""
"The texture filter blends between the nearest four pixels. Use this for most "
"cases where you want to avoid a pixelated style."
msgstr ""
-#: doc/classes/CanvasItem.xml:671
+#: doc/classes/CanvasItem.xml:681
msgid ""
"The texture filter reads from the nearest pixel in the nearest mipmap. This "
"is the fastest way to read from textures with mipmaps."
msgstr ""
-#: doc/classes/CanvasItem.xml:674
+#: doc/classes/CanvasItem.xml:684
msgid ""
"The texture filter blends between the nearest 4 pixels and between the "
"nearest 2 mipmaps. Use this for non-pixel art textures that may be viewed at "
@@ -11311,7 +11742,7 @@ msgid ""
"smooth out pixels that are smaller than on-screen pixels."
msgstr ""
-#: doc/classes/CanvasItem.xml:677
+#: doc/classes/CanvasItem.xml:687
msgid ""
"The texture filter reads from the nearest pixel, but selects a mipmap based "
"on the angle between the surface and the camera view. This reduces artifacts "
@@ -11320,7 +11751,7 @@ msgid ""
"TEXTURE_FILTER_NEAREST_WITH_MIPMAPS] is usually more appropriate."
msgstr ""
-#: doc/classes/CanvasItem.xml:681
+#: doc/classes/CanvasItem.xml:691
msgid ""
"The texture filter blends between the nearest 4 pixels and selects a mipmap "
"based on the angle between the surface and the camera view. This reduces "
@@ -11331,21 +11762,21 @@ msgid ""
"TEXTURE_FILTER_LINEAR_WITH_MIPMAPS] is usually more appropriate."
msgstr ""
-#: doc/classes/CanvasItem.xml:691
+#: doc/classes/CanvasItem.xml:701
msgid "Texture will not repeat."
msgstr ""
-#: doc/classes/CanvasItem.xml:694
+#: doc/classes/CanvasItem.xml:704
msgid "Texture will repeat normally."
msgstr ""
-#: doc/classes/CanvasItem.xml:697
+#: doc/classes/CanvasItem.xml:707
msgid ""
"Texture will repeat in a 2x2 tiled mode, where elements at even positions "
"are mirrored."
msgstr ""
-#: doc/classes/CanvasItem.xml:700
+#: doc/classes/CanvasItem.xml:710
msgid "Represents the size of the [enum TextureRepeat] enum."
msgstr ""
@@ -12418,16 +12849,15 @@ msgid ""
msgstr ""
#: doc/classes/Color.xml:4
-msgid "Color in RGBA format with some support for ARGB format."
+msgid "Color in RGBA format using floats on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:7
msgid ""
-"A color is represented by red, green, and blue [code](r, g, b)[/code] "
-"components. Additionally, [code]a[/code] represents the alpha component, "
-"often used for transparency. Values are in floating-point and usually range "
-"from 0 to 1. Some properties (such as [member CanvasItem.modulate]) may "
-"accept values greater than 1.\n"
+"A color represented by red, green, blue, and alpha (RGBA) components. The "
+"alpha component is often used for transparency. Values are in floating-point "
+"and usually range from 0 to 1. Some properties (such as CanvasItem.modulate) "
+"may accept values greater than 1 (overbright or HDR colors).\n"
"You can also create a color from standardized color names by using [method "
"@GDScript.ColorN] or directly using the color constants defined here. The "
"standardized color set is based on the [url=https://en.wikipedia.org/wiki/"
@@ -12641,47 +13071,48 @@ msgid ""
msgstr ""
#: doc/classes/Color.xml:280
-msgid "Alpha value (range 0 to 1)."
+msgid ""
+"The color's alpha (transparency) component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:283
-msgid "Alpha value (range 0 to 255)."
+msgid "Wrapper for [member a] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:286
-msgid "Blue value (range 0 to 1)."
+msgid "The color's blue component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:289
-msgid "Blue value (range 0 to 255)."
+msgid "Wrapper for [member b] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:292
-msgid "Green value (range 0 to 1)."
+msgid "The color's green component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:295
-msgid "Green value (range 0 to 255)."
+msgid "Wrapper for [member g] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:298
-msgid "HSV hue value (range 0 to 1)."
+msgid "The HSV hue of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:301
-msgid "Red value (range 0 to 1)."
+msgid "The color's red component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:304
-msgid "Red value (range 0 to 255)."
+msgid "Wrapper for [member r] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:307
-msgid "HSV saturation value (range 0 to 1)."
+msgid "The HSV saturation of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:310
-msgid "HSV value (range 0 to 1)."
+msgid "The HSV value (brightness) of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:315
@@ -14601,23 +15032,35 @@ msgstr ""
#: doc/classes/Control.xml:859
msgid ""
"The node's scale, relative to its [member rect_size]. Change this property "
-"to scale the node around its [member rect_pivot_offset]."
-msgstr ""
-
-#: doc/classes/Control.xml:862
+"to scale the node around its [member rect_pivot_offset]. The Control's "
+"[member hint_tooltip] will also scale according to this value.\n"
+"[b]Note:[/b] This property is mainly intended to be used for animation "
+"purposes. Text inside the Control will look pixelated or blurry when the "
+"Control is scaled. To support multiple resolutions in your project, use an "
+"appropriate viewport stretch mode as described in the [url=https://docs."
+"godotengine.org/en/latest/tutorials/viewports/multiple_resolutions."
+"html]documentation[/url] instead of scaling Controls individually.\n"
+"[b]Note:[/b] If the Control node is a child of a [Container] node, the scale "
+"will be reset to [code]Vector2(1, 1)[/code] when the scene is instanced. To "
+"set the Control's scale when it's instanced, wait for one frame using "
+"[code]yield(get_tree(), \"idle_frame\")[/code] then set its [member "
+"rect_scale] property."
+msgstr ""
+
+#: doc/classes/Control.xml:864
msgid ""
"The size of the node's bounding rectangle, in pixels. [Container] nodes "
"update this property automatically."
msgstr ""
-#: doc/classes/Control.xml:865
+#: doc/classes/Control.xml:867
msgid ""
"Tells the parent [Container] nodes how they should resize and place the node "
"on the X axis. Use one of the [enum SizeFlags] constants to change the "
"flags. See the constants to learn what each does."
msgstr ""
-#: doc/classes/Control.xml:868
+#: doc/classes/Control.xml:870
msgid ""
"If the node and at least one of its neighbours uses the [constant "
"SIZE_EXPAND] size flag, the parent [Container] will let it take more or less "
@@ -14626,181 +15069,181 @@ msgid ""
"space."
msgstr ""
-#: doc/classes/Control.xml:871
+#: doc/classes/Control.xml:873
msgid ""
"Tells the parent [Container] nodes how they should resize and place the node "
"on the Y axis. Use one of the [enum SizeFlags] constants to change the "
"flags. See the constants to learn what each does."
msgstr ""
-#: doc/classes/Control.xml:874
+#: doc/classes/Control.xml:876
msgid ""
"Changing this property replaces the current [Theme] resource this node and "
"all its [Control] children use."
msgstr ""
-#: doc/classes/Control.xml:880
+#: doc/classes/Control.xml:882
msgid "Emitted when the node gains keyboard focus."
msgstr ""
-#: doc/classes/Control.xml:885
+#: doc/classes/Control.xml:887
msgid "Emitted when the node loses keyboard focus."
msgstr ""
-#: doc/classes/Control.xml:892
+#: doc/classes/Control.xml:894
msgid "Emitted when the node receives an [InputEvent]."
msgstr ""
-#: doc/classes/Control.xml:897
+#: doc/classes/Control.xml:899
msgid "Emitted when the node's minimum size changes."
msgstr ""
-#: doc/classes/Control.xml:902
+#: doc/classes/Control.xml:904
msgid ""
"Emitted when the mouse enters the control's [code]Rect[/code] area, provided "
"its [member mouse_filter] lets the event reach it."
msgstr ""
-#: doc/classes/Control.xml:907
+#: doc/classes/Control.xml:909
msgid ""
"Emitted when the mouse leaves the control's [code]Rect[/code] area, provided "
"its [member mouse_filter] lets the event reach it."
msgstr ""
-#: doc/classes/Control.xml:912
+#: doc/classes/Control.xml:914
msgid "Emitted when the control changes size."
msgstr ""
-#: doc/classes/Control.xml:917
+#: doc/classes/Control.xml:919
msgid ""
"Emitted when one of the size flags changes. See [member "
"size_flags_horizontal] and [member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:927
+#: doc/classes/Control.xml:929
msgid "The node cannot grab focus. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:930
+#: doc/classes/Control.xml:932
msgid ""
"The node can only grab focus on mouse clicks. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:933
+#: doc/classes/Control.xml:935
msgid ""
"The node can grab focus on mouse click or using the arrows and the Tab keys "
"on the keyboard. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:936
+#: doc/classes/Control.xml:938
msgid ""
"Sent when the node changes size. Use [member rect_size] to get the new size."
msgstr ""
-#: doc/classes/Control.xml:939
+#: doc/classes/Control.xml:941
msgid "Sent when the mouse pointer enters the node."
msgstr ""
-#: doc/classes/Control.xml:942
+#: doc/classes/Control.xml:944
msgid "Sent when the mouse pointer exits the node."
msgstr ""
-#: doc/classes/Control.xml:945
+#: doc/classes/Control.xml:947
msgid "Sent when the node grabs focus."
msgstr ""
-#: doc/classes/Control.xml:948
+#: doc/classes/Control.xml:950
msgid "Sent when the node loses focus."
msgstr ""
-#: doc/classes/Control.xml:951
+#: doc/classes/Control.xml:953
msgid ""
"Sent when the node's [member theme] changes, right before Godot redraws the "
"control. Happens when you call one of the [code]add_theme_*_override[/code] "
"methods."
msgstr ""
-#: doc/classes/Control.xml:954
+#: doc/classes/Control.xml:956
msgid ""
"Sent when this node is inside a [ScrollContainer] which has begun being "
"scrolled."
msgstr ""
-#: doc/classes/Control.xml:957
+#: doc/classes/Control.xml:959
msgid ""
"Sent when this node is inside a [ScrollContainer] which has stopped being "
"scrolled."
msgstr ""
-#: doc/classes/Control.xml:960
+#: doc/classes/Control.xml:962
msgid ""
"Show the system's arrow mouse cursor when the user hovers the node. Use with "
"[member mouse_default_cursor_shape]."
msgstr ""
-#: doc/classes/Control.xml:963
+#: doc/classes/Control.xml:965
msgid ""
"Show the system's I-beam mouse cursor when the user hovers the node. The I-"
"beam pointer has a shape similar to \"I\". It tells the user they can "
"highlight or insert text."
msgstr ""
-#: doc/classes/Control.xml:966
+#: doc/classes/Control.xml:968
msgid ""
"Show the system's pointing hand mouse cursor when the user hovers the node."
msgstr ""
-#: doc/classes/Control.xml:969
+#: doc/classes/Control.xml:971
msgid "Show the system's cross mouse cursor when the user hovers the node."
msgstr ""
-#: doc/classes/Control.xml:972
+#: doc/classes/Control.xml:974
msgid ""
"Show the system's wait mouse cursor, often an hourglass, when the user "
"hovers the node."
msgstr ""
-#: doc/classes/Control.xml:975
+#: doc/classes/Control.xml:977
msgid ""
"Show the system's busy mouse cursor when the user hovers the node. Often an "
"hourglass."
msgstr ""
-#: doc/classes/Control.xml:978
+#: doc/classes/Control.xml:980
msgid ""
"Show the system's drag mouse cursor, often a closed fist or a cross symbol, "
"when the user hovers the node. It tells the user they're currently dragging "
"an item, like a node in the Scene dock."
msgstr ""
-#: doc/classes/Control.xml:981
+#: doc/classes/Control.xml:983
msgid ""
"Show the system's drop mouse cursor when the user hovers the node. It can be "
"an open hand. It tells the user they can drop an item they're currently "
"grabbing, like a node in the Scene dock."
msgstr ""
-#: doc/classes/Control.xml:984
+#: doc/classes/Control.xml:986
msgid ""
"Show the system's forbidden mouse cursor when the user hovers the node. "
"Often a crossed circle."
msgstr ""
-#: doc/classes/Control.xml:987
+#: doc/classes/Control.xml:989
msgid ""
"Show the system's vertical resize mouse cursor when the user hovers the "
"node. A double-headed vertical arrow. It tells the user they can resize the "
"window or the panel vertically."
msgstr ""
-#: doc/classes/Control.xml:990
+#: doc/classes/Control.xml:992
msgid ""
"Show the system's horizontal resize mouse cursor when the user hovers the "
"node. A double-headed horizontal arrow. It tells the user they can resize "
"the window or the panel horizontally."
msgstr ""
-#: doc/classes/Control.xml:993
+#: doc/classes/Control.xml:995
msgid ""
"Show the system's window resize mouse cursor when the user hovers the node. "
"The cursor is a double-headed arrow that goes from the bottom left to the "
@@ -14808,7 +15251,7 @@ msgid ""
"horizontally and vertically."
msgstr ""
-#: doc/classes/Control.xml:996
+#: doc/classes/Control.xml:998
msgid ""
"Show the system's window resize mouse cursor when the user hovers the node. "
"The cursor is a double-headed arrow that goes from the top left to the "
@@ -14816,93 +15259,93 @@ msgid ""
"they can resize the window or the panel both horizontally and vertically."
msgstr ""
-#: doc/classes/Control.xml:999
+#: doc/classes/Control.xml:1001
msgid ""
"Show the system's move mouse cursor when the user hovers the node. It shows "
"2 double-headed arrows at a 90 degree angle. It tells the user they can move "
"a UI element freely."
msgstr ""
-#: doc/classes/Control.xml:1002
+#: doc/classes/Control.xml:1004
msgid ""
"Show the system's vertical split mouse cursor when the user hovers the node. "
"On Windows, it's the same as [constant CURSOR_VSIZE]."
msgstr ""
-#: doc/classes/Control.xml:1005
+#: doc/classes/Control.xml:1007
msgid ""
"Show the system's horizontal split mouse cursor when the user hovers the "
"node. On Windows, it's the same as [constant CURSOR_HSIZE]."
msgstr ""
-#: doc/classes/Control.xml:1008
+#: doc/classes/Control.xml:1010
msgid ""
"Show the system's help mouse cursor when the user hovers the node, a "
"question mark."
msgstr ""
-#: doc/classes/Control.xml:1011
+#: doc/classes/Control.xml:1013
msgid ""
"Snap all 4 anchors to the top-left of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1014
+#: doc/classes/Control.xml:1016
msgid ""
"Snap all 4 anchors to the top-right of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1017
+#: doc/classes/Control.xml:1019
msgid ""
"Snap all 4 anchors to the bottom-left of the parent control's bounds. Use "
"with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1020
+#: doc/classes/Control.xml:1022
msgid ""
"Snap all 4 anchors to the bottom-right of the parent control's bounds. Use "
"with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1023
+#: doc/classes/Control.xml:1025
msgid ""
"Snap all 4 anchors to the center of the left edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1026
+#: doc/classes/Control.xml:1028
msgid ""
"Snap all 4 anchors to the center of the top edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1029
+#: doc/classes/Control.xml:1031
msgid ""
"Snap all 4 anchors to the center of the right edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1032
+#: doc/classes/Control.xml:1034
msgid ""
"Snap all 4 anchors to the center of the bottom edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1035
+#: doc/classes/Control.xml:1037
msgid ""
"Snap all 4 anchors to the center of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1038
+#: doc/classes/Control.xml:1040
msgid ""
"Snap all 4 anchors to the left edge of the parent control. The left margin "
"becomes relative to the left edge and the top margin relative to the top "
"left corner of the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1041
+#: doc/classes/Control.xml:1043
msgid ""
"Snap all 4 anchors to the top edge of the parent control. The left margin "
"becomes relative to the top left corner, the top margin relative to the top "
@@ -14910,14 +15353,14 @@ msgid ""
"parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1044
+#: doc/classes/Control.xml:1046
msgid ""
"Snap all 4 anchors to the right edge of the parent control. The right margin "
"becomes relative to the right edge and the top margin relative to the top "
"right corner of the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1047
+#: doc/classes/Control.xml:1049
msgid ""
"Snap all 4 anchors to the bottom edge of the parent control. The left margin "
"becomes relative to the bottom left corner, the bottom margin relative to "
@@ -14925,19 +15368,19 @@ msgid ""
"the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1050
+#: doc/classes/Control.xml:1052
msgid ""
"Snap all 4 anchors to a vertical line that cuts the parent control in half. "
"Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1053
+#: doc/classes/Control.xml:1055
msgid ""
"Snap all 4 anchors to a horizontal line that cuts the parent control in "
"half. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1056
+#: doc/classes/Control.xml:1058
msgid ""
"Snap all 4 anchors to the respective corners of the parent control. Set all "
"4 margins to 0 after you applied this preset and the [Control] will fit its "
@@ -14945,30 +15388,30 @@ msgid ""
"editor. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1059
+#: doc/classes/Control.xml:1061
msgid "The control will be resized to its minimum size."
msgstr ""
-#: doc/classes/Control.xml:1062
+#: doc/classes/Control.xml:1064
msgid "The control's width will not change."
msgstr ""
-#: doc/classes/Control.xml:1065
+#: doc/classes/Control.xml:1067
msgid "The control's height will not change."
msgstr ""
-#: doc/classes/Control.xml:1068
+#: doc/classes/Control.xml:1070
msgid "The control's size will not change."
msgstr ""
-#: doc/classes/Control.xml:1071
+#: doc/classes/Control.xml:1073
msgid ""
"Tells the parent [Container] to expand the bounds of this node to fill all "
"the available space without pushing any other node. Use with [member "
"size_flags_horizontal] and [member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1074
+#: doc/classes/Control.xml:1076
msgid ""
"Tells the parent [Container] to let this node take all the available space "
"on the axis you flag. If multiple neighboring nodes are set to expand, "
@@ -14977,13 +15420,13 @@ msgid ""
"[member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1077
+#: doc/classes/Control.xml:1079
msgid ""
"Sets the node's size flags to both fill and expand. See the 2 constants "
"above for more information."
msgstr ""
-#: doc/classes/Control.xml:1080
+#: doc/classes/Control.xml:1082
msgid ""
"Tells the parent [Container] to center the node in itself. It centers the "
"control based on its bounding box, so it doesn't work with the fill or "
@@ -14991,7 +15434,7 @@ msgid ""
"size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1083
+#: doc/classes/Control.xml:1085
msgid ""
"Tells the parent [Container] to align the node with its end, either the "
"bottom or the right edge. It doesn't work with the fill or expand size "
@@ -14999,7 +15442,7 @@ msgid ""
"size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1086
+#: doc/classes/Control.xml:1088
msgid ""
"The control will receive mouse button input events through [method "
"_gui_input] if clicked on. And the control will receive the [signal "
@@ -15008,7 +15451,7 @@ msgid ""
"other controls. This also results in blocking signals in other controls."
msgstr ""
-#: doc/classes/Control.xml:1089
+#: doc/classes/Control.xml:1091
msgid ""
"The control will receive mouse button input events through [method "
"_gui_input] if clicked on. And the control will receive the [signal "
@@ -15020,7 +15463,7 @@ msgid ""
"not be fired."
msgstr ""
-#: doc/classes/Control.xml:1092
+#: doc/classes/Control.xml:1094
msgid ""
"The control will not receive mouse button input events through [method "
"_gui_input]. The control will also not receive the [signal mouse_entered] "
@@ -15029,25 +15472,25 @@ msgid ""
"handled automatically."
msgstr ""
-#: doc/classes/Control.xml:1095
+#: doc/classes/Control.xml:1097
msgid ""
"The control will grow to the left or top to make up if its minimum size is "
"changed to be greater than its current size on the respective axis."
msgstr ""
-#: doc/classes/Control.xml:1098
+#: doc/classes/Control.xml:1100
msgid ""
"The control will grow to the right or bottom to make up if its minimum size "
"is changed to be greater than its current size on the respective axis."
msgstr ""
-#: doc/classes/Control.xml:1101
+#: doc/classes/Control.xml:1103
msgid ""
"The control will grow in both directions equally to make up if its minimum "
"size is changed to be greater than its current size."
msgstr ""
-#: doc/classes/Control.xml:1104
+#: doc/classes/Control.xml:1106
msgid ""
"Snaps one of the 4 anchor's sides to the origin of the node's [code]Rect[/"
"code], in the top left. Use it with one of the [code]anchor_*[/code] member "
@@ -15055,7 +15498,7 @@ msgid ""
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1107
+#: doc/classes/Control.xml:1109
msgid ""
"Snaps one of the 4 anchor's sides to the end of the node's [code]Rect[/"
"code], in the bottom right. Use it with one of the [code]anchor_*[/code] "
@@ -16840,7 +17283,7 @@ msgstr ""
msgid ""
"Returns the [Texture2D] associated with the specified [enum DecalTexture]. "
"This is a convenience method, in most cases you should access the texture "
-"directly. \n"
+"directly.\n"
"For example, instead of [code]albedo_tex = $Decal.get_texture(Decal."
"TEXTURE_ALBEDO)[/code], use [code]albedo_tex = $Decal.texture_albedo[/"
"code].\n"
@@ -16856,7 +17299,7 @@ msgstr ""
msgid ""
"Sets the [Texture2D] associated with the specified [enum DecalTexture]. This "
"is a convenience method, in most cases you should access the texture "
-"directly. \n"
+"directly.\n"
"For example, instead of [code]$Decal.set_texture(Decal.TEXTURE_ALBEDO, "
"albedo_tex)[/code], use [code]$Decal.texture_albedo = albedo_tex[/code].\n"
"One case where this is better than accessing the texture directly is when "
@@ -17205,7 +17648,7 @@ msgstr ""
msgid "The light's shadow rendering algorithm. See [enum ShadowMode]."
msgstr ""
-#: doc/classes/DirectionalLight3D.xml:31 doc/classes/RenderingServer.xml:3254
+#: doc/classes/DirectionalLight3D.xml:31 doc/classes/RenderingServer.xml:3250
msgid ""
"Sets the size of the directional shadow pancake. The pancake offsets the "
"start of the shadow's camera frustum to provide a higher effective depth "
@@ -17279,10 +17722,10 @@ msgstr ""
msgid ""
"Directory type. It is used to manage directories and their content (not "
"restricted to the project folder).\n"
-"When creating a new [Directory], its default opened directory will be "
-"[code]res://[/code]. This may change in the future, so it is advised to "
-"always use [method open] to initialize your [Directory] where you want to "
-"operate, with explicit error checking.\n"
+"When creating a new [Directory], it must be explicitly opened using [method "
+"open] before most methods can be used. However, [method file_exists] and "
+"[method dir_exists] can be used without opening a directory. If so, they use "
+"a path relative to [code]res://[/code].\n"
"Here is an example on how to iterate through the files of a directory:\n"
"[codeblock]\n"
"func dir_contents(path):\n"
@@ -17301,7 +17744,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Directory.xml:27 doc/classes/File.xml:25
+#: doc/classes/Directory.xml:27 doc/classes/File.xml:26
msgid ""
"https://docs.godotengine.org/en/latest/getting_started/step_by_step/"
"filesystem.html"
@@ -17335,41 +17778,43 @@ msgstr ""
#: doc/classes/Directory.xml:65
msgid ""
"Returns whether the target directory exists. The argument can be relative to "
-"the current directory, or an absolute path."
+"the current directory, or an absolute path.\n"
+"If the [Directory] is not open, the path is relative to [code]res://[/code]."
msgstr ""
-#: doc/classes/Directory.xml:74
+#: doc/classes/Directory.xml:75
msgid ""
"Returns whether the target file exists. The argument can be relative to the "
-"current directory, or an absolute path."
+"current directory, or an absolute path.\n"
+"If the [Directory] is not open, the path is relative to [code]res://[/code]."
msgstr ""
-#: doc/classes/Directory.xml:81
+#: doc/classes/Directory.xml:83
msgid ""
"Returns the absolute path to the currently opened directory (e.g. "
"[code]res://folder[/code] or [code]C:\\tmp\\folder[/code])."
msgstr ""
-#: doc/classes/Directory.xml:88
+#: doc/classes/Directory.xml:90
msgid ""
"Returns the currently opened directory's drive index. See [method get_drive] "
"to convert returned index to the name of the drive."
msgstr ""
-#: doc/classes/Directory.xml:97
+#: doc/classes/Directory.xml:99
msgid ""
"On Windows, returns the name of the drive (partition) passed as an argument "
"(e.g. [code]C:[/code]). On other platforms, or if the requested drive does "
"not existed, the method returns an empty String."
msgstr ""
-#: doc/classes/Directory.xml:104
+#: doc/classes/Directory.xml:106
msgid ""
"On Windows, returns the number of drives (partitions) mounted on the current "
"filesystem. On other platforms, the method returns 0."
msgstr ""
-#: doc/classes/Directory.xml:111
+#: doc/classes/Directory.xml:113
msgid ""
"Returns the next element (file or directory) in the current directory "
"(including [code].[/code] and [code]..[/code], unless "
@@ -17380,14 +17825,14 @@ msgid ""
"mandatory in such a case)."
msgstr ""
-#: doc/classes/Directory.xml:119
+#: doc/classes/Directory.xml:121
msgid ""
"On UNIX desktop systems, returns the available space on the current "
"directory's disk. On other platforms, this information is not available and "
"the method returns 0 or -1."
msgstr ""
-#: doc/classes/Directory.xml:130
+#: doc/classes/Directory.xml:132
msgid ""
"Initializes the stream used to list all files and directories using the "
"[method get_next] function, closing the current opened stream if needed. "
@@ -17399,13 +17844,13 @@ msgid ""
"out."
msgstr ""
-#: doc/classes/Directory.xml:139
+#: doc/classes/Directory.xml:141
msgid ""
"Closes the current stream opened with [method list_dir_begin] (whether it "
"has been fully processed with [method get_next] or not does not matter)."
msgstr ""
-#: doc/classes/Directory.xml:148
+#: doc/classes/Directory.xml:150
msgid ""
"Creates a directory. The argument can be relative to the current directory, "
"or an absolute path. The target directory should be placed in an already "
@@ -17414,7 +17859,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:158
+#: doc/classes/Directory.xml:160
msgid ""
"Creates a target directory and all necessary intermediate directories in its "
"path, by calling [method make_dir] recursively. The argument can be relative "
@@ -17422,7 +17867,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:168
+#: doc/classes/Directory.xml:170
msgid ""
"Opens an existing directory of the filesystem. The [code]path[/code] "
"argument can be within the project tree ([code]res://folder[/code]), the "
@@ -17431,7 +17876,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:178
+#: doc/classes/Directory.xml:180
msgid ""
"Deletes the target file or an empty directory. The argument can be relative "
"to the current directory, or an absolute path. If the target directory is "
@@ -17439,7 +17884,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:190
+#: doc/classes/Directory.xml:192
msgid ""
"Renames (move) the [code]from[/code] file to the [code]to[/code] "
"destination. Both arguments should be paths to files, either relative or "
@@ -17480,6 +17925,53 @@ msgid ""
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
+#: doc/classes/DisplayServer.xml:530
+msgid ""
+"Return the greatest scale factor of all screens.\n"
+"[b]Note:[/b] On macOS returned value is [code]2.0[/code] if there is at "
+"least one hiDPI (Retina) screen in the system, and [code]1.0[/code] in all "
+"other cases.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:557
+msgid ""
+"Return the scale factor of the specified screen by index.\n"
+"[b]Note:[/b] On macOS returned value is [code]2.0[/code] for hiDPI (Retina) "
+"screen, and [code]1.0[/code] for all other cases.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:630
+msgid ""
+"Returns the on-screen keyboard's height in pixels. Returns 0 if there is no "
+"keyboard or if it is currently hidden."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:637
+msgid "Hides the virtual keyboard if it is shown, does nothing otherwise."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:656
+msgid ""
+"Shows the virtual keyboard if the platform has one.\n"
+"[code]existing_text[/code] parameter is useful for implementing your own "
+"[LineEdit] or [TextEdit], as it tells the virtual keyboard what text has "
+"already been typed (the virtual keyboard uses it for auto-correct and "
+"predictions).\n"
+"[code]position[/code] parameter is the screen space [Rect2] of the edited "
+"text.\n"
+"[code]multiline[/code] parameter needs to be set to [code]true[/code] to be "
+"able to enter multiple lines of text, as in [TextEdit].\n"
+"[code]max_length[/code] limits the number of characters that can be entered "
+"if different from [code]-1[/code].\n"
+"[code]cursor_start[/code] can optionally define the current text cursor "
+"position if [code]cursor_end[/code] is not set.\n"
+"[code]cursor_start[/code] and [code]cursor_end[/code] can optionally define "
+"the current text selection.\n"
+"[b]Note:[/b] This method is implemented on Android, iOS and UWP."
+msgstr ""
+
#: doc/classes/DTLSServer.xml:4
msgid "Helper class to implement a DTLS server."
msgstr ""
@@ -17600,54 +18092,62 @@ msgstr ""
msgid "Adds a fallback font."
msgstr ""
-#: doc/classes/DynamicFont.xml:35
+#: doc/classes/DynamicFont.xml:33
+msgid ""
+"Returns a string containing all the characters available in the main and all "
+"the fallback fonts.\n"
+"If a given character is included in more than one font, it appears only once "
+"in the returned string."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:43
msgid "Returns the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:42
+#: doc/classes/DynamicFont.xml:50
msgid "Returns the number of fallback fonts."
msgstr ""
-#: doc/classes/DynamicFont.xml:51
+#: doc/classes/DynamicFont.xml:59
msgid ""
"Returns the spacing for the given [code]type[/code] (see [enum SpacingType])."
msgstr ""
-#: doc/classes/DynamicFont.xml:60
+#: doc/classes/DynamicFont.xml:68
msgid "Removes the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:71
+#: doc/classes/DynamicFont.xml:79
msgid "Sets the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:82
+#: doc/classes/DynamicFont.xml:90
msgid ""
"Sets the spacing for [code]type[/code] (see [enum SpacingType]) to "
"[code]value[/code] in pixels (not relative to the font size)."
msgstr ""
-#: doc/classes/DynamicFont.xml:88
+#: doc/classes/DynamicFont.xml:96
msgid "Extra spacing at the bottom in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:91
+#: doc/classes/DynamicFont.xml:99
msgid "Extra character spacing in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:94
+#: doc/classes/DynamicFont.xml:102
msgid "Extra space spacing in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:97
+#: doc/classes/DynamicFont.xml:105
msgid "Extra spacing at the top in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:100
+#: doc/classes/DynamicFont.xml:108
msgid "The font data."
msgstr ""
-#: doc/classes/DynamicFont.xml:103
+#: doc/classes/DynamicFont.xml:111
msgid ""
"The font outline's color.\n"
"[b]Note:[/b] It's recommended to leave this at the default value so that you "
@@ -17656,27 +18156,27 @@ msgid ""
"outline modulate theme item."
msgstr ""
-#: doc/classes/DynamicFont.xml:107
+#: doc/classes/DynamicFont.xml:115
msgid "The font outline's thickness in pixels (not relative to the font size)."
msgstr ""
-#: doc/classes/DynamicFont.xml:110
+#: doc/classes/DynamicFont.xml:118
msgid "The font size in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:115
+#: doc/classes/DynamicFont.xml:123
msgid "Spacing at the top."
msgstr ""
-#: doc/classes/DynamicFont.xml:118
+#: doc/classes/DynamicFont.xml:126
msgid "Spacing at the bottom."
msgstr ""
-#: doc/classes/DynamicFont.xml:121
+#: doc/classes/DynamicFont.xml:129
msgid "Character spacing."
msgstr ""
-#: doc/classes/DynamicFont.xml:124
+#: doc/classes/DynamicFont.xml:132
msgid "Space spacing."
msgstr ""
@@ -18058,7 +18558,12 @@ msgstr ""
msgid "Remitted if a resource is reimported."
msgstr ""
-#: doc/classes/EditorFileSystem.xml:106
+#: doc/classes/EditorFileSystem.xml:100
+msgid ""
+"Emitted if at least one resource is reloaded when the filesystem is scanned."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:107
msgid "Emitted if the source of any imported file changed."
msgstr ""
@@ -18100,29 +18605,43 @@ msgstr ""
msgid "Returns the path to the file at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:86
+#: doc/classes/EditorFileSystemDirectory.xml:70
+msgid ""
+"Returns the base class of the script class defined in the file at index "
+"[code]idx[/code]. If the file doesn't define a script class using the "
+"[code]class_name[/code] syntax, this will return an empty string."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:79
+msgid ""
+"Returns the name of the script class defined in the file at index [code]idx[/"
+"code]. If the file doesn't define a script class using the [code]class_name[/"
+"code] syntax, this will return an empty string."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:88
msgid "Returns the file extension of the file at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:93
+#: doc/classes/EditorFileSystemDirectory.xml:95
msgid "Returns the name of this directory."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:100
+#: doc/classes/EditorFileSystemDirectory.xml:102
msgid ""
"Returns the parent directory for this directory or [code]null[/code] if "
"called on a directory at [code]res://[/code] or [code]user://[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:107
+#: doc/classes/EditorFileSystemDirectory.xml:109
msgid "Returns the path to this directory."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:116
+#: doc/classes/EditorFileSystemDirectory.xml:118
msgid "Returns the subdirectory at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:123
+#: doc/classes/EditorFileSystemDirectory.xml:125
msgid "Returns the number of subdirectories in this directory."
msgstr ""
@@ -18213,45 +18732,72 @@ msgstr ""
msgid "Gets the unique name of the importer."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:92
+#: doc/classes/EditorImportPlugin.xml:86
+msgid ""
+"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. For example:\n"
+"[codeblock]\n"
+"func get_option_visibility(option, options):\n"
+" # Only show the lossy quality setting if the compression mode is set to "
+"\"Lossy\".\n"
+" if option == \"compress/lossy_quality\" and options.has(\"compress/mode"
+"\"):\n"
+" return int(options[\"compress/mode\"]) == COMPRESS_LOSSY\n"
+"\n"
+" return true\n"
+"[/codeblock]\n"
+"Return [code]true[/code] to make all options always visible."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:102
msgid ""
"Gets the number of initial presets defined by the plugin. Use [method "
"get_import_options] to get the default options for the preset and [method "
"get_preset_name] to get the name of the preset."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:101
+#: doc/classes/EditorImportPlugin.xml:111
msgid "Gets the name of the options preset at this index."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:108
+#: doc/classes/EditorImportPlugin.xml:118
msgid ""
"Gets the priority of this plugin for the recognized extension. Higher "
"priority plugins will be preferred. The default priority is [code]1.0[/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:115
+#: doc/classes/EditorImportPlugin.xml:125
msgid ""
"Gets the list of file extensions to associate with this loader (case-"
"insensitive). e.g. [code][\"obj\"][/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:122
+#: doc/classes/EditorImportPlugin.xml:132
msgid ""
"Gets the Godot resource type associated with this loader. e.g. [code]\"Mesh"
"\"[/code] or [code]\"Animation\"[/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:129
+#: doc/classes/EditorImportPlugin.xml:139
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:136
+#: doc/classes/EditorImportPlugin.xml:146
msgid "Gets the name to display in the import window."
msgstr ""
+#: doc/classes/EditorImportPlugin.xml:163
+msgid ""
+"Imports [code]source_file[/code] into [code]save_path[/code] with the import "
+"[code]options[/code] specified. The [code]platform_variants[/code] and "
+"[code]gen_files[/code] arrays will be modified by this function.\n"
+"This method must be overridden to do the actual importing work. See this "
+"class' description for an example of overriding this method."
+msgstr ""
+
#: doc/classes/EditorInspector.xml:4
msgid "A tab used to edit properties of the selected node."
msgstr ""
@@ -18267,6 +18813,58 @@ msgid ""
"the singleton using [method EditorInterface.get_inspector]."
msgstr ""
+#: doc/classes/EditorInspector.xml:17
+msgid ""
+"Refreshes the inspector.\n"
+"[b]Note:[/b] To save on CPU resources, calling this method will do nothing "
+"if the time specified in [code]docks/property_editor/auto_refresh_interval[/"
+"code] editor setting hasn't passed yet since this method was last called. "
+"(By default, this interval is set to 0.3 seconds.)"
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:30
+msgid ""
+"Emitted when the Edit button of an [Object] has been pressed in the "
+"inspector. This is mainly used in the remote scene tree inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:37
+msgid "Emitted when a property is removed from the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:44
+msgid "Emitted when a property is edited in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:51
+msgid ""
+"Emitted when a property is keyed in the inspector. Properties can be keyed "
+"by clicking the \"key\" icon next to a property when the Animation panel is "
+"toggled."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:58
+msgid "Emitted when a property is selected in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:67
+msgid ""
+"Emitted when a boolean property is toggled in the inspector.\n"
+"[b]Note:[/b] This signal is never emitted if the internal [code]autoclear[/"
+"code] property enabled. Since this property is always enabled in the editor "
+"inspector, this signal is never emitted by the editor itself."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:77
+msgid "Emitted when a resource is selected in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:82
+msgid ""
+"Emitted when a property that requires a restart to be applied is edited in "
+"the inspector. This is only used in the Project Settings and Editor Settings."
+msgstr ""
+
#: doc/classes/EditorInspectorPlugin.xml:4
msgid "Plugin for adding custom property editors on inspector."
msgstr ""
@@ -18345,91 +18943,156 @@ msgstr ""
#: doc/classes/EditorInterface.xml:26
msgid ""
-"Returns the main container of Godot editor's window. You can use it, for "
-"example, to retrieve the size of the container and place your controls "
+"Returns the main container of Godot editor's window. For example, you can "
+"use it to retrieve the size of the container and place your controls "
"accordingly."
msgstr ""
-#: doc/classes/EditorInterface.xml:39
+#: doc/classes/EditorInterface.xml:33
+msgid "Returns the current path being viewed in the [FileSystemDock]."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:40
msgid "Returns the edited (current) scene's root [Node]."
msgstr ""
-#: doc/classes/EditorInterface.xml:46
-msgid "Returns the [EditorSettings]."
+#: doc/classes/EditorInterface.xml:47
+msgid "Returns the editor's [EditorSettings] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:54
+msgid ""
+"Returns the main editor control. Use this as a parent for main screens.\n"
+"[b]Note:[/b] This returns the main editor control containing the whole "
+"editor, not the 2D or 3D viewports specifically."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:62
+msgid "Returns the editor's [FileSystemDock] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:53
-msgid "Returns the editor [Viewport]."
+#: doc/classes/EditorInterface.xml:69
+msgid "Returns the editor's [EditorInspector] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:72
+#: doc/classes/EditorInterface.xml:76
msgid "Returns an [Array] with the file paths of the currently opened scenes."
msgstr ""
-#: doc/classes/EditorInterface.xml:79
-msgid "Returns the [EditorFileSystem]."
+#: doc/classes/EditorInterface.xml:83
+msgid ""
+"Returns the name of the scene that is being played. If no scene is currently "
+"being played, returns an empty string."
msgstr ""
-#: doc/classes/EditorInterface.xml:86
-msgid "Returns the [EditorResourcePreview]."
+#: doc/classes/EditorInterface.xml:90
+msgid "Returns the editor's [EditorFileSystem] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:93
-msgid "Returns the [ScriptEditor]."
+#: doc/classes/EditorInterface.xml:97
+msgid "Returns the editor's [EditorResourcePreview] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:106
-msgid "Returns the [EditorSelection]."
+#: doc/classes/EditorInterface.xml:104
+msgid "Returns the editor's [ScriptEditor] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:117
+#: doc/classes/EditorInterface.xml:111
msgid ""
-"Shows the given property on the given [code]object[/code] in the Editor's "
+"Returns the path of the directory currently selected in the "
+"[FileSystemDock]. If a file is selected, its base directory will be returned "
+"using [method String.get_base_dir] instead."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:118
+msgid "Returns the editor's [EditorSelection] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:129
+msgid ""
+"Shows the given property on the given [code]object[/code] in the editor's "
"Inspector dock."
msgstr ""
-#: doc/classes/EditorInterface.xml:126
+#: doc/classes/EditorInterface.xml:136
msgid ""
-"Returns the enabled status of a plugin. The plugin name is the same as its "
-"directory name."
+"Returns [code]true[/code] if a scene is currently being played, [code]false[/"
+"code] otherwise. Paused scenes are considered as being played."
msgstr ""
-#: doc/classes/EditorInterface.xml:137
+#: doc/classes/EditorInterface.xml:145
+#, fuzzy
+msgid ""
+"Returns [code]true[/code] if the specified [code]plugin[/code] is enabled. "
+"The plugin name is the same as its directory name."
+msgstr "Vrací [code]true[/code] pokud [code]s[/code] je nula nebo téměř nula."
+
+#: doc/classes/EditorInterface.xml:156
msgid ""
"Returns mesh previews rendered at the given size as an [Array] of "
"[Texture2D]s."
msgstr ""
-#: doc/classes/EditorInterface.xml:146
+#: doc/classes/EditorInterface.xml:165
msgid "Opens the scene at the given path."
msgstr ""
-#: doc/classes/EditorInterface.xml:155
+#: doc/classes/EditorInterface.xml:172
+msgid "Plays the currently active scene."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:181
+msgid "Plays the scene specified by its filepath."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:188
+msgid "Plays the main scene."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:197
msgid "Reloads the scene at the given path."
msgstr ""
-#: doc/classes/EditorInterface.xml:162
+#: doc/classes/EditorInterface.xml:204
msgid ""
"Saves the scene. Returns either [code]OK[/code] or [code]ERR_CANT_CREATE[/"
"code] (see [@GlobalScope] constants)."
msgstr ""
-#: doc/classes/EditorInterface.xml:173
+#: doc/classes/EditorInterface.xml:215
msgid "Saves the scene as a file at [code]path[/code]."
msgstr ""
-#: doc/classes/EditorInterface.xml:182
+#: doc/classes/EditorInterface.xml:224
msgid ""
"Selects the file, with the path provided by [code]file[/code], in the "
"FileSystem dock."
msgstr ""
-#: doc/classes/EditorInterface.xml:201
+#: doc/classes/EditorInterface.xml:233
+msgid ""
+"Sets the editor's current main screen to the one specified in [code]name[/"
+"code]. [code]name[/code] must match the text of the tab in question exactly "
+"([code]2D[/code], [code]3D[/code], [code]Script[/code], [code]AssetLib[/"
+"code])."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:244
msgid ""
"Sets the enabled status of a plugin. The plugin name is the same as its "
"directory name."
msgstr ""
+#: doc/classes/EditorInterface.xml:251
+msgid "Stops the scene that is currently playing."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:257
+msgid ""
+"If [code]true[/code], enables distraction-free mode which hides side docks "
+"to increase the space available for the main view."
+msgstr ""
+
#: doc/classes/EditorNode3DGizmo.xml:4
msgid "Custom gizmo for editing Node3D objects."
msgstr ""
@@ -18441,14 +19104,20 @@ msgid ""
"information."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:26
+#: doc/classes/EditorNode3DGizmo.xml:18
+msgid ""
+"Adds the specified [code]segments[/code] to the gizmo's collision shape for "
+"picking. Call this function during [method redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:27
msgid ""
"Adds collision triangles to the gizmo for picking. A [TriangleMesh] can be "
"generated from a regular [Mesh] too. Call this function during [method "
"redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:41
+#: doc/classes/EditorNode3DGizmo.xml:42
msgid ""
"Adds a list of handles (points) which can be used to deform the object being "
"edited.\n"
@@ -18456,20 +19125,33 @@ msgid ""
"handles. Call this function during [method redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:57
+#: doc/classes/EditorNode3DGizmo.xml:58
msgid ""
"Adds lines to the gizmo (as sets of 2 points), with a given material. The "
"lines are used for visualizing the gizmo. Call this function during [method "
"redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:84
+#: doc/classes/EditorNode3DGizmo.xml:73
+msgid ""
+"Adds a mesh to the gizmo with the specified [code]billboard[/code] state, "
+"[code]skeleton[/code] and [code]material[/code]. If [code]billboard[/code] "
+"is [code]true[/code], the mesh will rotate to always face the camera. Call "
+"this function during [method redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:86
msgid ""
"Adds an unscaled billboard for visualization. Call this function during "
"[method redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:103
+#: doc/classes/EditorNode3DGizmo.xml:93
+msgid ""
+"Removes everything in the gizmo including meshes, collisions and handles."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:106
msgid ""
"Commit a handle being edited (handles must have been previously added by "
"[method add_handles]).\n"
@@ -18477,40 +19159,45 @@ msgid ""
"restore the edited value to the original is provided."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:113
+#: doc/classes/EditorNode3DGizmo.xml:116
msgid ""
"Gets the name of an edited handle (handles must have been previously added "
"by [method add_handles]).\n"
"Handles can be named for reference to the user when editing."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:123
+#: doc/classes/EditorNode3DGizmo.xml:126
msgid ""
"Gets actual value of a handle. This value can be anything and used for "
"eventually undoing the motion when calling [method commit_handle]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:130
+#: doc/classes/EditorNode3DGizmo.xml:133
msgid ""
"Returns the [EditorNode3DGizmoPlugin] that owns this gizmo. It's useful to "
"retrieve materials using [method EditorNode3DGizmoPlugin.get_material]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:137
+#: doc/classes/EditorNode3DGizmo.xml:140
msgid "Returns the Node3D node associated with this gizmo."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:146
-msgid "Gets whether a handle is highlighted or not."
+#: doc/classes/EditorNode3DGizmo.xml:149
+#, fuzzy
+msgid ""
+"Returns [code]true[/code] if the handle at index [code]index[/code] is "
+"highlighted by being hovered with the mouse."
msgstr ""
+"Vrací [code]true[/code] pokud si jsou [code]a[/code] a [code]b[/code] "
+"přiblížně rovny."
-#: doc/classes/EditorNode3DGizmo.xml:153
+#: doc/classes/EditorNode3DGizmo.xml:156
msgid ""
-"This function is called when the Node3D this gizmo refers to changes (the "
+"This function is called when the [Node3D] this gizmo refers to changes (the "
"[method Node3D.update_gizmo] is called)."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:166
+#: doc/classes/EditorNode3DGizmo.xml:169
msgid ""
"This function is used when the user drags a gizmo handle (previously added "
"with [method add_handles]) in screen coordinates.\n"
@@ -18518,6 +19205,18 @@ msgid ""
"raycasts."
msgstr ""
+#: doc/classes/EditorNode3DGizmo.xml:179
+msgid ""
+"Sets the gizmo's hidden state. If [code]true[/code], the gizmo will be "
+"hidden. If [code]false[/code], it will be shown."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:188
+msgid ""
+"Sets the reference [Node3D] node for the gizmo. [code]node[/code] must "
+"inherit from [Node3D]."
+msgstr ""
+
#: doc/classes/EditorNode3DGizmoPlugin.xml:4
msgid "Used by the editor to define Node3D gizmo types."
msgstr ""
@@ -18610,7 +19309,17 @@ msgid ""
"visibility menu."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:150
+#: doc/classes/EditorNode3DGizmoPlugin.xml:142
+msgid ""
+"Override this method to set the gizmo's priority. Higher values correspond "
+"to higher priority. If a gizmo with higher priority conflicts with another "
+"gizmo, only the gizmo with higher priority will be used.\n"
+"All built-in editor gizmos return a priority of [code]-1[/code]. If not "
+"overridden, this method will return [code]0[/code], which means custom "
+"gizmos will automatically override built-in gizmos."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:152
msgid ""
"Override this method to define which Node3D nodes have a gizmo from this "
"plugin. Whenever a [Node3D] node is added to a scene this method is called, "
@@ -18618,25 +19327,25 @@ msgid ""
"assigned and is added to this plugin's list of active gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:161
+#: doc/classes/EditorNode3DGizmoPlugin.xml:163
msgid ""
"Gets whether a handle is highlighted or not. Called for this plugin's active "
"gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:168
+#: doc/classes/EditorNode3DGizmoPlugin.xml:170
msgid ""
"Override this method to define whether Node3D with this gizmo should be "
"selecteble even when the gizmo is hidden."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:177
+#: doc/classes/EditorNode3DGizmoPlugin.xml:179
msgid ""
"Callback to redraw the provided gizmo. Called for this plugin's active "
"gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:192
+#: doc/classes/EditorNode3DGizmoPlugin.xml:194
msgid ""
"Update the value of a handle after it has been updated. Called for this "
"plugin's active gizmos."
@@ -18723,7 +19432,13 @@ msgid ""
"should be cleaned up using [code]remove_tool_menu_item(name)[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:149
+#: doc/classes/EditorPlugin.xml:151
+msgid ""
+"Registers a custom translation parser plugin for extracting translatable "
+"strings from custom files."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:158
msgid ""
"This method is called when the editor is about to save the project, switch "
"to another tab, etc. It asks the plugin to apply any pending state changes "
@@ -18732,32 +19447,32 @@ msgid ""
"must apply the shader code being written by the user to the object."
msgstr ""
-#: doc/classes/EditorPlugin.xml:163
+#: doc/classes/EditorPlugin.xml:172
msgid ""
"Clear all the state and reset the object being edited to zero. This ensures "
"your plugin does not keep editing a currently existing node, or a node from "
"the wrong scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:170
+#: doc/classes/EditorPlugin.xml:179
msgid ""
"Called by the engine when the user disables the [EditorPlugin] in the Plugin "
"tab of the project settings window."
msgstr ""
-#: doc/classes/EditorPlugin.xml:179
+#: doc/classes/EditorPlugin.xml:188
msgid ""
"This function is used for plugins that edit specific object types (nodes or "
"resources). It requests the editor to edit the given object."
msgstr ""
-#: doc/classes/EditorPlugin.xml:186
+#: doc/classes/EditorPlugin.xml:195
msgid ""
"Called by the engine when the user enables the [EditorPlugin] in the Plugin "
"tab of the project settings window."
msgstr ""
-#: doc/classes/EditorPlugin.xml:211
+#: doc/classes/EditorPlugin.xml:220
msgid ""
"Called when there is a root node in the current edited scene, [method "
"handles] is implemented and an [InputEvent] happens in the 2D viewport. "
@@ -18782,7 +19497,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:237
+#: doc/classes/EditorPlugin.xml:246
msgid ""
"Called when there is a root node in the current edited scene, [method "
"handles] is implemented and an [InputEvent] happens in the 3D viewport. "
@@ -18807,20 +19522,20 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:259
+#: doc/classes/EditorPlugin.xml:268
msgid ""
"This is for editors that edit script-based objects. You can return a list of "
"breakpoints in the format ([code]script:line[/code]), for example: "
"[code]res://path_to_script.gd:25[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:266
+#: doc/classes/EditorPlugin.xml:275
msgid ""
"Returns the [EditorInterface] object that gives you control over Godot "
"editor's window and its functionalities."
msgstr ""
-#: doc/classes/EditorPlugin.xml:273
+#: doc/classes/EditorPlugin.xml:282
msgid ""
"Override this method in your plugin to return a [Texture2D] in order to give "
"it an icon.\n"
@@ -18838,7 +19553,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:289
+#: doc/classes/EditorPlugin.xml:298
msgid ""
"Override this method in your plugin to provide the name of the plugin when "
"displayed in the Godot editor.\n"
@@ -18846,33 +19561,33 @@ msgid ""
"of the \"2D\", \"3D\", \"Script\", and \"AssetLib\" buttons."
msgstr ""
-#: doc/classes/EditorPlugin.xml:297
+#: doc/classes/EditorPlugin.xml:306
msgid ""
"Gets the Editor's dialogue used for making scripts.\n"
"[b]Note:[/b] Users can configure it before use."
msgstr ""
-#: doc/classes/EditorPlugin.xml:305
+#: doc/classes/EditorPlugin.xml:314
msgid ""
"Gets the state of your plugin editor. This is used when saving the scene (so "
"state is kept when opening it again) and for switching tabs (so state can be "
"restored when the tab returns)."
msgstr ""
-#: doc/classes/EditorPlugin.xml:312
+#: doc/classes/EditorPlugin.xml:321
msgid ""
"Gets the undo/redo object. Most actions in the editor can be undoable, so "
"use this object to make sure this happens when it's worth it."
msgstr ""
-#: doc/classes/EditorPlugin.xml:321
+#: doc/classes/EditorPlugin.xml:330
msgid ""
"Gets the GUI layout of the plugin. This is used to save the project's editor "
"layout when [method queue_save_layout] is called or the editor layout was "
"changed(For example changing the position of a dock)."
msgstr ""
-#: doc/classes/EditorPlugin.xml:330
+#: doc/classes/EditorPlugin.xml:339
msgid ""
"Implement this function if your plugin edits a specific type of object "
"(Resource or Node). If you return [code]true[/code], then you will get the "
@@ -18882,14 +19597,14 @@ msgid ""
"be called too."
msgstr ""
-#: doc/classes/EditorPlugin.xml:337
+#: doc/classes/EditorPlugin.xml:346
msgid ""
"Returns [code]true[/code] if this is a main screen editor plugin (it goes in "
"the workspace selector together with [b]2D[/b], [b]3D[/b], [b]Script[/b] and "
"[b]AssetLib[/b])."
msgstr ""
-#: doc/classes/EditorPlugin.xml:360
+#: doc/classes/EditorPlugin.xml:369
msgid ""
"This function will be called when the editor is requested to become visible. "
"It is used for plugins that edit a specific object type.\n"
@@ -18897,85 +19612,89 @@ msgid ""
"manually."
msgstr ""
-#: doc/classes/EditorPlugin.xml:368
+#: doc/classes/EditorPlugin.xml:377
msgid "Queue save the project's editor layout."
msgstr ""
-#: doc/classes/EditorPlugin.xml:377
+#: doc/classes/EditorPlugin.xml:386
msgid "Removes an Autoload [code]name[/code] from the list."
msgstr ""
-#: doc/classes/EditorPlugin.xml:386
+#: doc/classes/EditorPlugin.xml:395
msgid ""
"Removes the control from the bottom panel. You have to manually [method Node."
"queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:397
+#: doc/classes/EditorPlugin.xml:406
msgid ""
"Removes the control from the specified container. You have to manually "
"[method Node.queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:406
+#: doc/classes/EditorPlugin.xml:415
msgid ""
"Removes the control from the dock. You have to manually [method Node."
"queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:415
+#: doc/classes/EditorPlugin.xml:424
msgid "Removes a custom type added by [method add_custom_type]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:464
+#: doc/classes/EditorPlugin.xml:473
msgid "Removes a menu [code]name[/code] from [b]Project > Tools[/b]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:471
+#: doc/classes/EditorPlugin.xml:482
+msgid "Removes a registered custom translation parser plugin."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:489
msgid ""
"This method is called after the editor saves the project or when it's "
"closed. It asks the plugin to save edited external scenes/resources."
msgstr ""
-#: doc/classes/EditorPlugin.xml:484
+#: doc/classes/EditorPlugin.xml:502
msgid ""
"Use this method if you always want to receive inputs from 3D view screen "
"inside [method forward_spatial_gui_input]. It might be especially usable if "
"your plugin will want to use raycast in the scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:493
+#: doc/classes/EditorPlugin.xml:511
msgid "Restore the state saved by [method get_state]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:502
+#: doc/classes/EditorPlugin.xml:520
msgid "Restore the plugin GUI layout saved by [method get_window_layout]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:509
+#: doc/classes/EditorPlugin.xml:527
msgid "Updates the overlays of the editor (2D/3D) viewport."
msgstr ""
-#: doc/classes/EditorPlugin.xml:518
+#: doc/classes/EditorPlugin.xml:536
msgid ""
"Emitted when user changes the workspace ([b]2D[/b], [b]3D[/b], [b]Script[/"
"b], [b]AssetLib[/b]). Also works with custom screens defined by plugins."
msgstr ""
-#: doc/classes/EditorPlugin.xml:531
+#: doc/classes/EditorPlugin.xml:549
msgid ""
"Emitted when the scene is changed in the editor. The argument will return "
"the root node of the scene that has just become active. If this scene is new "
"and empty, the argument will be [code]null[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:538
+#: doc/classes/EditorPlugin.xml:556
msgid ""
"Emitted when user closes a scene. The argument is file path to a closed "
"scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:584
+#: doc/classes/EditorPlugin.xml:602
msgid "Represents the size of the [enum DockSlot] enum."
msgstr ""
@@ -19030,64 +19749,83 @@ msgid "When this virtual function is called, you must update your editor."
msgstr ""
#: doc/classes/EditorProperty.xml:76
-msgid "Used by the inspector, set when property is checkable."
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is "
+"checkable."
msgstr ""
#: doc/classes/EditorProperty.xml:79
-msgid "Used by the inspector, when the property is checked."
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is checked."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:82
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property can be "
+"deleted by the user."
msgstr ""
-#: doc/classes/EditorProperty.xml:84
-msgid "Used by the inspector, when the property must draw with error color."
+#: doc/classes/EditorProperty.xml:85
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property must draw "
+"with error color. This is used for editable children's properties."
msgstr ""
-#: doc/classes/EditorProperty.xml:87
-msgid "Used by the inspector, when the property can add keys for animation."
+#: doc/classes/EditorProperty.xml:88
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property can add "
+"keys for animation."
msgstr ""
-#: doc/classes/EditorProperty.xml:90
-msgid "Sets this property to change the label (if you want to show one)."
+#: doc/classes/EditorProperty.xml:91
+msgid "Set this property to change the label (if you want to show one)."
msgstr ""
-#: doc/classes/EditorProperty.xml:93
-msgid "Used by the inspector, when the property is read-only."
+#: doc/classes/EditorProperty.xml:94
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is read-"
+"only."
msgstr ""
-#: doc/classes/EditorProperty.xml:103
+#: doc/classes/EditorProperty.xml:104
msgid ""
"Emit it if you want multiple properties modified at the same time. Do not "
"use if added via [method EditorInspectorPlugin.parse_property]."
msgstr ""
-#: doc/classes/EditorProperty.xml:112
+#: doc/classes/EditorProperty.xml:113
msgid "Used by sub-inspectors. Emit it if what was selected was an Object ID."
msgstr ""
-#: doc/classes/EditorProperty.xml:121
+#: doc/classes/EditorProperty.xml:122
msgid ""
"Do not emit this manually, use the [method emit_changed] method instead."
msgstr ""
-#: doc/classes/EditorProperty.xml:130
+#: doc/classes/EditorProperty.xml:131
msgid "Emitted when a property was checked. Used internally."
msgstr ""
-#: doc/classes/EditorProperty.xml:143
+#: doc/classes/EditorProperty.xml:138
+msgid "Emitted when a property was deleted. Used internally."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:145
msgid ""
"Emit it if you want to add this value as an animation key (check for keying "
"being enabled first)."
msgstr ""
-#: doc/classes/EditorProperty.xml:152
+#: doc/classes/EditorProperty.xml:154
msgid "Emit it if you want to key a property with a single value."
msgstr ""
-#: doc/classes/EditorProperty.xml:161
+#: doc/classes/EditorProperty.xml:163
msgid ""
"If you want a sub-resource to be edited, emit this signal with the resource."
msgstr ""
-#: doc/classes/EditorProperty.xml:170
+#: doc/classes/EditorProperty.xml:172
msgid "Emitted when selected. Used internally."
msgstr ""
@@ -19372,17 +20110,26 @@ msgstr ""
msgid ""
"Object that holds the project-independent editor settings. These settings "
"are generally visible in the [b]Editor > Editor Settings[/b] menu.\n"
-"Accessing the settings is done by using the regular [Object] API, such as:\n"
-"[codeblock]\n"
-"settings.set(prop,value)\n"
-"settings.get(prop)\n"
-"list_of_settings = settings.get_property_list()\n"
+"Property names use slash delimiters to distinguish sections. Setting values "
+"can be of any [Variant] type. It's recommended to use [code]snake_case[/"
+"code] for editor settings to be consistent with the Godot editor itself.\n"
+"Accessing the settings can be done using the following methods, such as:\n"
+"[codeblock]\n"
+"# `settings.set(\"some/property\", value)` also works as this class "
+"overrides `_set()` internally.\n"
+"settings.set_setting(\"some/property\",value)\n"
+"\n"
+"# `settings.get(\"some/property\", value)` also works as this class "
+"overrides `_get()` internally.\n"
+"settings.get_setting(\"some/property\")\n"
+"\n"
+"var list_of_settings = settings.get_property_list()\n"
"[/codeblock]\n"
"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
"the singleton using [method EditorInterface.get_editor_settings]."
msgstr ""
-#: doc/classes/EditorSettings.xml:25
+#: doc/classes/EditorSettings.xml:30
msgid ""
"Adds a custom property info to a property. The dictionary must contain:\n"
"- [code]name[/code]: [String] (the name of the property)\n"
@@ -19404,52 +20151,176 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorSettings.xml:50
-msgid "Erase a given setting (pass full property path)."
+#: doc/classes/EditorSettings.xml:55
+msgid "Erases the setting whose name is specified by [code]property[/code]."
msgstr ""
-#: doc/classes/EditorSettings.xml:57
-msgid "Gets the list of favorite files and directories for this project."
+#: doc/classes/EditorSettings.xml:62
+msgid "Returns the list of favorite files and directories for this project."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:75
+msgid ""
+"Returns project-specific metadata for the [code]section[/code] and "
+"[code]key[/code] specified. If the metadata doesn't exist, [code]default[/"
+"code] will be returned instead. See also [method set_project_metadata]."
msgstr ""
-#: doc/classes/EditorSettings.xml:76
+#: doc/classes/EditorSettings.xml:82
msgid ""
-"Gets the specific project settings path. Projects all have a unique sub-"
-"directory inside the settings path where project specific settings are saved."
+"Returns the project-specific settings path. Projects all have a unique "
+"subdirectory inside the settings path where project-specific settings are "
+"saved."
msgstr ""
-#: doc/classes/EditorSettings.xml:83
+#: doc/classes/EditorSettings.xml:89
msgid ""
-"Gets the list of recently visited folders in the file dialog for this "
+"Returns the list of recently visited folders in the file dialog for this "
"project."
msgstr ""
#: doc/classes/EditorSettings.xml:98
msgid ""
+"Returns the value of the setting specified by [code]name[/code]. This is "
+"equivalent to using [method Object.get] on the EditorSettings instance."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:105
+msgid ""
"Gets the global settings path for the engine. Inside this path, you can find "
"some standard paths such as:\n"
"[code]settings/tmp[/code] - Used for temporary storage of files\n"
"[code]settings/templates[/code] - Where export templates are located"
msgstr ""
-#: doc/classes/EditorSettings.xml:133
+#: doc/classes/EditorSettings.xml:116
+#, fuzzy
+msgid ""
+"Returns [code]true[/code] if the setting specified by [code]name[/code] "
+"exists, [code]false[/code] otherwise."
+msgstr ""
+"Vrací [code]true[/code] pokud si jsou [code]a[/code] a [code]b[/code] "
+"přiblížně rovny."
+
+#: doc/classes/EditorSettings.xml:125
+msgid ""
+"Returns [code]true[/code] if the setting specified by [code]name[/code] can "
+"have its value reverted to the default value, [code]false[/code] otherwise. "
+"When this method returns [code]true[/code], a Revert button will display "
+"next to the setting in the Editor Settings."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:134
+msgid ""
+"Returns the default value of the setting specified by [code]name[/code]. "
+"This is the value that would be applied when clicking the Revert button in "
+"the Editor Settings."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:143
msgid "Sets the list of favorite files and directories for this project."
msgstr ""
-#: doc/classes/EditorSettings.xml:166
+#: doc/classes/EditorSettings.xml:156
+msgid ""
+"Sets the initial value of the setting specified by [code]name[/code] to "
+"[code]value[/code]. This is used to provide a value for the Revert button in "
+"the Editor Settings. If [code]update_current[/code] is true, the current "
+"value of the setting will be set to [code]value[/code] as well."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:169
+msgid ""
+"Sets project-specific metadata with the [code]section[/code], [code]key[/"
+"code] and [code]data[/code] specified. This metadata is stored outside the "
+"project folder and therefore won't be checked into version control. See also "
+"[method get_project_metadata]."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:178
msgid ""
"Sets the list of recently visited folders in the file dialog for this "
"project."
msgstr ""
-#: doc/classes/EditorSettings.xml:183
-msgid "Emitted when editor settings change."
+#: doc/classes/EditorSettings.xml:189
+msgid ""
+"Sets the [code]value[/code] of the setting specified by [code]name[/code]. "
+"This is equivalent to using [method Object.set] on the EditorSettings "
+"instance."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:196
+msgid "Emitted after any editor setting has changed."
msgstr ""
-#: doc/classes/EditorSettings.xml:189
+#: doc/classes/EditorSettings.xml:202
+msgid ""
+"Emitted after any editor setting has changed. It's used by various editor "
+"plugins to update their visuals on theme changes or logic on configuration "
+"changes."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:4
+msgid ""
+"Plugin for adding custom parsers to extract strings that are to be "
+"translated from custom files (.csv, .json etc.)."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:7
+msgid ""
+"Plugins are registered via [method EditorPlugin."
+"add_translation_parser_plugin] method. To define the parsing and string "
+"extraction logic, override the [method parse_file] method in script.\n"
+"The extracted strings will be written into a POT file selected by user under "
+"\"POT Generation\" in \"Localization\" tab in \"Project Settings\" menu.\n"
+"Below shows an example of a custom parser that extracts strings in a CSV "
+"file to write into a POT.\n"
+"[codeblock]\n"
+"tool\n"
+"extends EditorTranslationParserPlugin\n"
+"\n"
+"\n"
+"func parse_file(path, extracted_strings):\n"
+" var file = File.new()\n"
+" file.open(path, File.READ)\n"
+" var text = file.get_as_text()\n"
+" var split_strs = text.split(\",\", false, 0)\n"
+" for s in split_strs:\n"
+" extracted_strings.append(s)\n"
+" #print(\"Extracted string: \" + s)\n"
+"\n"
+"\n"
+"func get_recognized_extensions():\n"
+" return [\"csv\"]\n"
+"[/codeblock]\n"
+"[b]Note:[/b] If you override parsing logic for standard script types "
+"(GDScript, C#, etc.), it would be better to load the [code]path[/code] "
+"argument using [method ResourceLoader.load]. This is because built-in "
+"scripts are loaded as [Resource] type, not [File] type.\n"
+"For example:\n"
+"[codeblock]\n"
+"func parse_file(path, extracted_strings):\n"
+" var res = ResourceLoader.load(path, \"Script\")\n"
+" var text = res.get_source_code()\n"
+" # Parsing logic.\n"
+"\n"
+"\n"
+"func get_recognized_extensions():\n"
+" return [\"gd\"]\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:48
msgid ""
-"Emitted when editor settings change. It used by various editor plugins to "
-"update their visuals on theme changes or logic on configuration changes."
+"Gets the list of file extensions to associate with this parser, e.g. [code]"
+"[\"csv\"][/code]."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:59
+msgid ""
+"Override this method to define a custom parsing logic to extract the "
+"translatable strings."
msgstr ""
#: doc/classes/EditorVCSInterface.xml:4
@@ -20060,15 +20931,15 @@ msgid ""
"to 1.3 to compensate for the lack of HDR rendering."
msgstr ""
-#: doc/classes/Environment.xml:190
+#: doc/classes/Environment.xml:214
msgid "The [Sky] resource used for this [Environment]."
msgstr ""
-#: doc/classes/Environment.xml:197
+#: doc/classes/Environment.xml:221
msgid "The depth tolerance for screen-space reflections."
msgstr ""
-#: doc/classes/Environment.xml:200
+#: doc/classes/Environment.xml:224
msgid ""
"If [code]true[/code], screen-space reflections are enabled. Screen-space "
"reflections are more accurate than reflections from [GIProbe]s or "
@@ -20076,48 +20947,48 @@ msgid ""
"others."
msgstr ""
-#: doc/classes/Environment.xml:203
+#: doc/classes/Environment.xml:227
msgid ""
"The fade-in distance for screen-space reflections. Affects the area from the "
"reflected material to the screen-space reflection)."
msgstr ""
-#: doc/classes/Environment.xml:206
+#: doc/classes/Environment.xml:230
msgid ""
"The fade-out distance for screen-space reflections. Affects the area from "
"the screen-space reflection to the \"global\" reflection."
msgstr ""
-#: doc/classes/Environment.xml:209
+#: doc/classes/Environment.xml:233
msgid ""
"The maximum number of steps for screen-space reflections. Higher values are "
"slower."
msgstr ""
-#: doc/classes/Environment.xml:212
+#: doc/classes/Environment.xml:236
msgid ""
"The screen-space ambient occlusion intensity on materials that have an AO "
"texture defined. Values higher than [code]0[/code] will make the SSAO effect "
"visible in areas darkened by AO textures."
msgstr ""
-#: doc/classes/Environment.xml:215
+#: doc/classes/Environment.xml:239
msgid ""
"The screen-space ambient occlusion bias. This should be kept high enough to "
"prevent \"smooth\" curves from being affected by ambient occlusion."
msgstr ""
-#: doc/classes/Environment.xml:218
+#: doc/classes/Environment.xml:242
msgid ""
"The screen-space ambient occlusion blur quality. See [enum SSAOBlur] for "
"possible values."
msgstr ""
-#: doc/classes/Environment.xml:221
+#: doc/classes/Environment.xml:245
msgid "The screen-space ambient occlusion edge sharpness."
msgstr ""
-#: doc/classes/Environment.xml:224
+#: doc/classes/Environment.xml:248
msgid ""
"If [code]true[/code], the screen-space ambient occlusion effect is enabled. "
"This darkens objects' corners and cavities to simulate ambient light not "
@@ -20128,13 +20999,13 @@ msgid ""
"issues."
msgstr ""
-#: doc/classes/Environment.xml:227
+#: doc/classes/Environment.xml:251
msgid ""
"The primary screen-space ambient occlusion intensity. See also [member "
"ssao_radius]."
msgstr ""
-#: doc/classes/Environment.xml:230
+#: doc/classes/Environment.xml:254
msgid ""
"The screen-space ambient occlusion intensity in direct light. In real life, "
"ambient occlusion only applies to indirect light, which means its effects "
@@ -20142,46 +21013,46 @@ msgid ""
"the SSAO effect visible in direct light."
msgstr ""
-#: doc/classes/Environment.xml:233
+#: doc/classes/Environment.xml:257
msgid "The primary screen-space ambient occlusion radius."
msgstr ""
-#: doc/classes/Environment.xml:236
+#: doc/classes/Environment.xml:260
msgid "The default exposure used for tonemapping."
msgstr ""
-#: doc/classes/Environment.xml:239
+#: doc/classes/Environment.xml:263
msgid ""
"The tonemapping mode to use. Tonemapping is the process that \"converts\" "
"HDR values to be suitable for rendering on a LDR display. (Godot doesn't "
"support rendering on HDR displays yet.)"
msgstr ""
-#: doc/classes/Environment.xml:242
+#: doc/classes/Environment.xml:266
msgid ""
"The white reference value for tonemapping. Only effective if the [member "
"tonemap_mode] isn't set to [constant TONE_MAPPER_LINEAR]."
msgstr ""
-#: doc/classes/Environment.xml:247
+#: doc/classes/Environment.xml:271
msgid ""
"Clears the background using the clear color defined in [member "
"ProjectSettings.rendering/environment/default_clear_color]."
msgstr ""
-#: doc/classes/Environment.xml:250
+#: doc/classes/Environment.xml:274
msgid "Clears the background using a custom clear color."
msgstr ""
-#: doc/classes/Environment.xml:253
+#: doc/classes/Environment.xml:277
msgid "Displays a user-defined sky in the background."
msgstr ""
-#: doc/classes/Environment.xml:256
+#: doc/classes/Environment.xml:280
msgid "Displays a [CanvasLayer] in the background."
msgstr ""
-#: doc/classes/Environment.xml:259
+#: doc/classes/Environment.xml:283
msgid ""
"Keeps on screen every pixel drawn in the background. This is the fastest "
"background mode, but it can only be safely used in fully-interior scenes (no "
@@ -20189,107 +21060,107 @@ msgid ""
"is visible, \"ghost trail\" artifacts will be visible when moving the camera."
msgstr ""
-#: doc/classes/Environment.xml:262 doc/classes/RenderingServer.xml:3446
+#: doc/classes/Environment.xml:286 doc/classes/RenderingServer.xml:3457
msgid "Displays a camera feed in the background."
msgstr ""
-#: doc/classes/Environment.xml:265
+#: doc/classes/Environment.xml:289
msgid "Represents the size of the [enum BGMode] enum."
msgstr ""
-#: doc/classes/Environment.xml:268 doc/classes/RenderingServer.xml:3452
+#: doc/classes/Environment.xml:292 doc/classes/RenderingServer.xml:3463
msgid ""
"Gather ambient light from whichever source is specified as the background."
msgstr ""
-#: doc/classes/Environment.xml:271 doc/classes/RenderingServer.xml:3455
+#: doc/classes/Environment.xml:295 doc/classes/RenderingServer.xml:3466
msgid "Disable ambient light."
msgstr ""
-#: doc/classes/Environment.xml:274 doc/classes/RenderingServer.xml:3458
+#: doc/classes/Environment.xml:298 doc/classes/RenderingServer.xml:3469
msgid "Specify a specific [Color] for ambient light."
msgstr ""
-#: doc/classes/Environment.xml:277 doc/classes/RenderingServer.xml:3461
+#: doc/classes/Environment.xml:301 doc/classes/RenderingServer.xml:3472
msgid ""
"Gather ambient light from the [Sky] regardless of what the background is."
msgstr ""
-#: doc/classes/Environment.xml:280 doc/classes/RenderingServer.xml:3464
+#: doc/classes/Environment.xml:304 doc/classes/RenderingServer.xml:3475
msgid "Use the background for reflections."
msgstr ""
-#: doc/classes/Environment.xml:283 doc/classes/RenderingServer.xml:3467
+#: doc/classes/Environment.xml:307 doc/classes/RenderingServer.xml:3478
msgid "Disable reflections."
msgstr ""
-#: doc/classes/Environment.xml:286 doc/classes/RenderingServer.xml:3470
+#: doc/classes/Environment.xml:310 doc/classes/RenderingServer.xml:3481
msgid "Use the [Sky] for reflections regardless of what the background is."
msgstr ""
-#: doc/classes/Environment.xml:289 doc/classes/RenderingServer.xml:3473
+#: doc/classes/Environment.xml:313
+msgid ""
+"Linear tonemapper operator. Reads the linear data and passes it on "
+"unmodified."
+msgstr ""
+
+#: doc/classes/Environment.xml:316
+msgid ""
+"Reinhardt tonemapper operator. Performs a variation on rendered pixels' "
+"colors by this formula: [code]color = color / (1 + color)[/code]."
+msgstr ""
+
+#: doc/classes/Environment.xml:319
+msgid "Filmic tonemapper operator."
+msgstr ""
+
+#: doc/classes/Environment.xml:322
+msgid "Academy Color Encoding System tonemapper operator."
+msgstr ""
+
+#: doc/classes/Environment.xml:325 doc/classes/RenderingServer.xml:3484
msgid ""
"Additive glow blending mode. Mostly used for particles, glows (bloom), lens "
"flare, bright sources."
msgstr ""
-#: doc/classes/Environment.xml:292 doc/classes/RenderingServer.xml:3476
+#: doc/classes/Environment.xml:328 doc/classes/RenderingServer.xml:3487
msgid ""
"Screen glow blending mode. Increases brightness, used frequently with bloom."
msgstr ""
-#: doc/classes/Environment.xml:295 doc/classes/RenderingServer.xml:3479
+#: doc/classes/Environment.xml:331 doc/classes/RenderingServer.xml:3490
msgid ""
"Soft light glow blending mode. Modifies contrast, exposes shadows and "
"highlights (vivid bloom)."
msgstr ""
-#: doc/classes/Environment.xml:298 doc/classes/RenderingServer.xml:3482
+#: doc/classes/Environment.xml:334 doc/classes/RenderingServer.xml:3493
msgid ""
"Replace glow blending mode. Replaces all pixels' color by the glow value. "
"This can be used to simulate a full-screen blur effect by tweaking the glow "
"parameters to match the original image's brightness."
msgstr ""
-#: doc/classes/Environment.xml:301 doc/classes/RenderingServer.xml:3485
+#: doc/classes/Environment.xml:337 doc/classes/RenderingServer.xml:3496
msgid ""
"Mixes the glow with the underlying color to avoid increasing brightness as "
"much while still maintaining a glow effect."
msgstr ""
-#: doc/classes/Environment.xml:304
-msgid ""
-"Linear tonemapper operator. Reads the linear data and passes it on "
-"unmodified."
-msgstr ""
-
-#: doc/classes/Environment.xml:307
-msgid ""
-"Reinhardt tonemapper operator. Performs a variation on rendered pixels' "
-"colors by this formula: [code]color = color / (1 + color)[/code]."
-msgstr ""
-
-#: doc/classes/Environment.xml:310
-msgid "Filmic tonemapper operator."
-msgstr ""
-
-#: doc/classes/Environment.xml:313
-msgid "Academy Color Encoding System tonemapper operator."
-msgstr ""
-
-#: doc/classes/Environment.xml:316
+#: doc/classes/Environment.xml:340
msgid "No blur for the screen-space ambient occlusion effect (fastest)."
msgstr ""
-#: doc/classes/Environment.xml:319
+#: doc/classes/Environment.xml:343
msgid "1×1 blur for the screen-space ambient occlusion effect."
msgstr ""
-#: doc/classes/Environment.xml:322
+#: doc/classes/Environment.xml:346
msgid "2×2 blur for the screen-space ambient occlusion effect."
msgstr ""
-#: doc/classes/Environment.xml:325
+#: doc/classes/Environment.xml:349
msgid ""
"3×3 blur for the screen-space ambient occlusion effect. Increases the radius "
"of the blur for a smoother look, but can result in checkerboard-like "
@@ -20374,14 +21245,17 @@ msgid ""
" var content = file.get_as_text()\n"
" file.close()\n"
" return content\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"In the example above, the file will be saved in the user data folder as "
+"specified in the [url=https://docs.godotengine.org/en/latest/tutorials/io/"
+"data_paths.html]Data paths[/url] documentation."
msgstr ""
-#: doc/classes/File.xml:32
+#: doc/classes/File.xml:33
msgid "Closes the currently opened file."
msgstr ""
-#: doc/classes/File.xml:39
+#: doc/classes/File.xml:40
msgid ""
"Returns [code]true[/code] if the file cursor has read past the end of the "
"file.\n"
@@ -20392,7 +21266,7 @@ msgid ""
"get_position] to implement a custom logic."
msgstr ""
-#: doc/classes/File.xml:49
+#: doc/classes/File.xml:50
msgid ""
"Returns [code]true[/code] if the file exists in the given path.\n"
"[b]Note:[/b] Many resources types are imported (e.g. textures or sound "
@@ -20405,41 +21279,41 @@ msgid ""
"source asset is present in [code]res://[/code], but fail when exported)."
msgstr ""
-#: doc/classes/File.xml:57
+#: doc/classes/File.xml:58
msgid ""
"Returns the next 16 bits from the file as an integer. See [method store_16] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:64
+#: doc/classes/File.xml:65
msgid ""
"Returns the next 32 bits from the file as an integer. See [method store_32] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:71
+#: doc/classes/File.xml:72
msgid ""
"Returns the next 64 bits from the file as an integer. See [method store_64] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:78
+#: doc/classes/File.xml:79
msgid ""
"Returns the next 8 bits from the file as an integer. See [method store_8] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:85
+#: doc/classes/File.xml:86
msgid ""
"Returns the whole file as a [String].\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:95
+#: doc/classes/File.xml:96
msgid "Returns next [code]len[/code] bytes of the file as a [PackedByteArray]."
msgstr ""
-#: doc/classes/File.xml:104
+#: doc/classes/File.xml:105
msgid ""
"Returns the next value of the file in CSV (Comma-Separated Values) format. "
"You can pass a different delimiter [code]delim[/code] to use other than the "
@@ -20448,37 +21322,37 @@ msgid ""
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:112
+#: doc/classes/File.xml:113
msgid "Returns the next 64 bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:119
+#: doc/classes/File.xml:120
msgid ""
"Returns the last error that happened when trying to perform operations. "
"Compare with the [code]ERR_FILE_*[/code] constants from [enum Error]."
msgstr ""
-#: doc/classes/File.xml:126
+#: doc/classes/File.xml:127
msgid "Returns the next 32 bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:133
+#: doc/classes/File.xml:134
msgid "Returns the size of the file in bytes."
msgstr ""
-#: doc/classes/File.xml:140
+#: doc/classes/File.xml:141
msgid ""
"Returns the next line of the file as a [String].\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:150
+#: doc/classes/File.xml:151
msgid ""
"Returns an MD5 String representing the file at the given path or an empty "
"[String] on failure."
msgstr ""
-#: doc/classes/File.xml:159
+#: doc/classes/File.xml:160
msgid ""
"Returns the last time the [code]file[/code] was modified in unix timestamp "
"format or returns a [String] \"ERROR IN [code]file[/code]\". This unix "
@@ -20486,35 +21360,35 @@ msgid ""
"get_datetime_from_unix_time]."
msgstr ""
-#: doc/classes/File.xml:166
+#: doc/classes/File.xml:167
msgid ""
"Returns a [String] saved in Pascal format from the file.\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:174
+#: doc/classes/File.xml:175
msgid "Returns the path as a [String] for the current open file."
msgstr ""
-#: doc/classes/File.xml:181
+#: doc/classes/File.xml:182
msgid "Returns the absolute path as a [String] for the current open file."
msgstr ""
-#: doc/classes/File.xml:188
+#: doc/classes/File.xml:189
msgid "Returns the file cursor's position."
msgstr ""
-#: doc/classes/File.xml:195
+#: doc/classes/File.xml:196
msgid "Returns the next bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:204
+#: doc/classes/File.xml:205
msgid ""
"Returns a SHA-256 [String] representing the file at the given path or an "
"empty [String] on failure."
msgstr ""
-#: doc/classes/File.xml:213
+#: doc/classes/File.xml:214
msgid ""
"Returns the next [Variant] value from the file. If [code]allow_objects[/"
"code] is [code]true[/code], decoding objects is allowed.\n"
@@ -20523,37 +21397,38 @@ msgid ""
"to avoid potential security threats such as remote code execution."
msgstr ""
-#: doc/classes/File.xml:221
+#: doc/classes/File.xml:222
msgid "Returns [code]true[/code] if the file is currently opened."
msgstr ""
-#: doc/classes/File.xml:232
+#: doc/classes/File.xml:233
msgid "Opens the file for writing or reading, depending on the flags."
msgstr ""
-#: doc/classes/File.xml:245
+#: doc/classes/File.xml:246
msgid "Opens a compressed file for reading or writing."
msgstr ""
-#: doc/classes/File.xml:258
+#: doc/classes/File.xml:259
msgid ""
"Opens an encrypted file in write or read mode. You need to pass a binary key "
-"to encrypt/decrypt it."
+"to encrypt/decrypt it.\n"
+"[b]Note:[/b] The provided key must be 32 bytes long."
msgstr ""
-#: doc/classes/File.xml:271
+#: doc/classes/File.xml:273
msgid ""
"Opens an encrypted file in write or read mode. You need to pass a password "
"to encrypt/decrypt it."
msgstr ""
-#: doc/classes/File.xml:280
+#: doc/classes/File.xml:282
msgid ""
"Changes the file reading/writing cursor to the specified position (in bytes "
"from the beginning of the file)."
msgstr ""
-#: doc/classes/File.xml:289
+#: doc/classes/File.xml:291
msgid ""
"Changes the file reading/writing cursor to the specified position (in bytes "
"from the end of the file).\n"
@@ -20561,7 +21436,7 @@ msgid ""
"cursor will be at the end of the file."
msgstr ""
-#: doc/classes/File.xml:299
+#: doc/classes/File.xml:301
msgid ""
"Stores an integer as 16 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, "
@@ -20589,7 +21464,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/File.xml:328
+#: doc/classes/File.xml:330
msgid ""
"Stores an integer as 32 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, "
@@ -20598,14 +21473,14 @@ msgid ""
"(see [method store_16] for an example)."
msgstr ""
-#: doc/classes/File.xml:339
+#: doc/classes/File.xml:341
msgid ""
"Stores an integer as 64 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] must lie in the interval [code][-2^63, "
"2^63 - 1][/code] (i.e. be a valid [int] value)."
msgstr ""
-#: doc/classes/File.xml:349
+#: doc/classes/File.xml:351
msgid ""
"Stores an integer as 8 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, 255]"
@@ -20614,11 +21489,11 @@ msgid ""
"(see [method store_16] for an example)."
msgstr ""
-#: doc/classes/File.xml:360
+#: doc/classes/File.xml:362
msgid "Stores the given array of bytes in the file."
msgstr ""
-#: doc/classes/File.xml:371
+#: doc/classes/File.xml:373
msgid ""
"Store the given [PackedStringArray] in the file as a line formatted in the "
"CSV (Comma-Separated Values) format. You can pass a different delimiter "
@@ -20627,45 +21502,45 @@ msgid ""
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:381
+#: doc/classes/File.xml:383
msgid "Stores a floating-point number as 64 bits in the file."
msgstr ""
-#: doc/classes/File.xml:390
+#: doc/classes/File.xml:392
msgid "Stores a floating-point number as 32 bits in the file."
msgstr ""
-#: doc/classes/File.xml:399
+#: doc/classes/File.xml:401
msgid ""
"Stores the given [String] as a line in the file.\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:409
+#: doc/classes/File.xml:411
msgid ""
"Stores the given [String] as a line in the file in Pascal format (i.e. also "
"store the length of the string).\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:419
+#: doc/classes/File.xml:421
msgid "Stores a floating-point number in the file."
msgstr ""
-#: doc/classes/File.xml:428
+#: doc/classes/File.xml:430
msgid ""
"Stores the given [String] in the file.\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:440
+#: doc/classes/File.xml:442
msgid ""
"Stores any Variant value in the file. If [code]full_objects[/code] is "
"[code]true[/code], encoding objects is allowed (and can potentially include "
"code)."
msgstr ""
-#: doc/classes/File.xml:446
+#: doc/classes/File.xml:448
msgid ""
"If [code]true[/code], the file's endianness is swapped. Use this if you're "
"dealing with files written on big-endian machines.\n"
@@ -20673,44 +21548,44 @@ msgid ""
"reset to [code]false[/code] whenever you open the file."
msgstr ""
-#: doc/classes/File.xml:452
+#: doc/classes/File.xml:454
msgid "Opens the file for read operations."
msgstr ""
-#: doc/classes/File.xml:455
+#: doc/classes/File.xml:457
msgid ""
"Opens the file for write operations. Create it if the file does not exist "
"and truncate if it exists."
msgstr ""
-#: doc/classes/File.xml:458
+#: doc/classes/File.xml:460
msgid ""
"Opens the file for read and write operations. Does not truncate the file."
msgstr ""
-#: doc/classes/File.xml:461
+#: doc/classes/File.xml:463
msgid ""
"Opens the file for read and write operations. Create it if the file does not "
"exist and truncate if it exists."
msgstr ""
-#: doc/classes/File.xml:464
+#: doc/classes/File.xml:466
msgid "Uses the [url=http://fastlz.org/]FastLZ[/url] compression method."
msgstr ""
-#: doc/classes/File.xml:467
+#: doc/classes/File.xml:469
msgid ""
"Uses the [url=https://en.wikipedia.org/wiki/DEFLATE]DEFLATE[/url] "
"compression method."
msgstr ""
-#: doc/classes/File.xml:470
+#: doc/classes/File.xml:472
msgid ""
"Uses the [url=https://facebook.github.io/zstd/]Zstandard[/url] compression "
"method."
msgstr ""
-#: doc/classes/File.xml:473
+#: doc/classes/File.xml:475
msgid "Uses the [url=https://www.gzip.org/]gzip[/url] compression method."
msgstr ""
@@ -20926,10 +21801,11 @@ msgid ""
"Draw [code]string[/code] into a canvas item using the font at a given "
"position, with [code]modulate[/code] color, and optionally clipping the "
"width. [code]position[/code] specifies the baseline, not the top. To draw "
-"from the top, [i]ascent[/i] must be added to the Y axis."
+"from the top, [i]ascent[/i] must be added to the Y axis.\n"
+"See also [method CanvasItem.draw_string]."
msgstr ""
-#: doc/classes/Font.xml:47
+#: doc/classes/Font.xml:48
msgid ""
"Draw character [code]char[/code] into a canvas item using the font at a "
"given position, with [code]modulate[/code] color, and optionally kerning if "
@@ -20939,39 +21815,39 @@ msgid ""
"making this function useful for drawing strings character by character."
msgstr ""
-#: doc/classes/Font.xml:54
+#: doc/classes/Font.xml:55
msgid "Returns the font ascent (number of pixels above the baseline)."
msgstr ""
-#: doc/classes/Font.xml:65
+#: doc/classes/Font.xml:66
msgid ""
"Returns the size of a character, optionally taking kerning into account if "
"the next character is provided."
msgstr ""
-#: doc/classes/Font.xml:72
+#: doc/classes/Font.xml:73
msgid "Returns the font descent (number of pixels below the baseline)."
msgstr ""
-#: doc/classes/Font.xml:79
+#: doc/classes/Font.xml:80
msgid "Returns the total font height (ascent plus descent) in pixels."
msgstr ""
-#: doc/classes/Font.xml:88
+#: doc/classes/Font.xml:89
msgid "Returns the size of a string, taking kerning and advance into account."
msgstr ""
-#: doc/classes/Font.xml:99
+#: doc/classes/Font.xml:100
msgid ""
"Returns the size that the string would have with word wrapping enabled with "
"a fixed [code]width[/code]."
msgstr ""
-#: doc/classes/Font.xml:106
+#: doc/classes/Font.xml:107
msgid "Returns [code]true[/code] if the font has an outline."
msgstr ""
-#: doc/classes/Font.xml:119
+#: doc/classes/Font.xml:120
msgid ""
"After editing a font (changing size, ascent, char rects, etc.). Call this "
"function to propagate changes to controls that might use it."
@@ -21143,13 +22019,14 @@ msgstr ""
#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:7
msgid ""
-"Calling [method @GDScript.yield] within a function will cause that function "
-"to yield and return its current state as an object of this type. The yielded "
+"FIXME: Outdated docs as of GDScript rewrite in 4.0.\n"
+"Calling [code]yield[/code] within a function will cause that function to "
+"yield and return its current state as an object of this type. The yielded "
"function call can then be resumed later by calling [method resume] on this "
"state object."
msgstr ""
-#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:18
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:19
msgid ""
"Check whether the function call may be resumed. This is not the case if the "
"function state was already resumed.\n"
@@ -21160,12 +22037,12 @@ msgid ""
"script have survived up to that point."
msgstr ""
-#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:28
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:29
msgid ""
"Resume execution of the yielded function call.\n"
-"If handed an argument, return the argument from the [method @GDScript.yield] "
-"call in the yielded function call. You can pass e.g. an [Array] to hand "
-"multiple arguments.\n"
+"If handed an argument, return the argument from the [code]yield[/code] call "
+"in the yielded function call. You can pass e.g. an [Array] to hand multiple "
+"arguments.\n"
"This function returns what the resumed function call returns, possibly "
"another function state if yielded again."
msgstr ""
@@ -21734,10 +22611,20 @@ msgid ""
"code], see [enum PolyJoinType].\n"
"The operation may result in an outer polygon (boundary) and inner polygon "
"(hole) produced which could be distinguished by calling [method "
-"is_polygon_clockwise]."
+"is_polygon_clockwise].\n"
+"[b]Note:[/b] To translate the polygon's vertices specifically, use the "
+"[method Transform2D.xform] method:\n"
+"[codeblock]\n"
+"var polygon = PackedVector2Array([Vector2(0, 0), Vector2(100, 0), "
+"Vector2(100, 100), Vector2(0, 100)])\n"
+"var offset = Vector2(50, 50)\n"
+"polygon = Transform2D(0, offset).xform(polygon)\n"
+"print(polygon) # prints [Vector2(50, 50), Vector2(150, 50), Vector2(150, "
+"150), Vector2(50, 150)]\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/Geometry2D.xml:217
+#: doc/classes/Geometry2D.xml:224
msgid ""
"Inflates or deflates [code]polyline[/code] by [code]delta[/code] units "
"(pixels), producing polygons. If [code]delta[/code] is positive, makes the "
@@ -21753,13 +22640,13 @@ msgid ""
"is_polygon_clockwise]."
msgstr ""
-#: doc/classes/Geometry2D.xml:235
+#: doc/classes/Geometry2D.xml:242
msgid ""
"Returns if [code]point[/code] is inside the triangle specified by [code]a[/"
"code], [code]b[/code] and [code]c[/code]."
msgstr ""
-#: doc/classes/Geometry2D.xml:250
+#: doc/classes/Geometry2D.xml:257
msgid ""
"Checks if the two segments ([code]from_a[/code], [code]to_a[/code]) and "
"([code]from_b[/code], [code]to_b[/code]) intersect. If yes, return the point "
@@ -21767,7 +22654,7 @@ msgid ""
"empty [Variant]."
msgstr ""
-#: doc/classes/Geometry2D.xml:259
+#: doc/classes/Geometry2D.xml:266
msgid ""
"Triangulates the area specified by discrete set of [code]points[/code] such "
"that no point is inside the circumcircle of any resulting triangle. Returns "
@@ -21778,7 +22665,7 @@ msgid ""
"[PackedInt32Array] is returned."
msgstr ""
-#: doc/classes/Geometry2D.xml:268
+#: doc/classes/Geometry2D.xml:275
msgid ""
"Triangulates the polygon specified by the points in [code]polygon[/code]. "
"Returns a [PackedInt32Array] where each triangle consists of three "
@@ -21788,40 +22675,40 @@ msgid ""
"[PackedInt32Array] is returned."
msgstr ""
-#: doc/classes/Geometry2D.xml:274
+#: doc/classes/Geometry2D.xml:281
msgid ""
"Create regions where either subject or clip polygons (or both) are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:277
+#: doc/classes/Geometry2D.xml:284
msgid ""
"Create regions where subject polygons are filled except where clip polygons "
"are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:280
+#: doc/classes/Geometry2D.xml:287
msgid "Create regions where both subject and clip polygons are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:283
+#: doc/classes/Geometry2D.xml:290
msgid ""
"Create regions where either subject or clip polygons are filled but not "
"where both are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:286
+#: doc/classes/Geometry2D.xml:293
msgid ""
"Squaring is applied uniformally at all convex edge joins at [code]1 * delta[/"
"code]."
msgstr ""
-#: doc/classes/Geometry2D.xml:289
+#: doc/classes/Geometry2D.xml:296
msgid ""
"While flattened paths can never perfectly trace an arc, they are "
"approximated by a series of arc chords."
msgstr ""
-#: doc/classes/Geometry2D.xml:292
+#: doc/classes/Geometry2D.xml:299
msgid ""
"There's a necessary limit to mitered joins since offsetting edges that join "
"at very acute angles will produce excessively long and narrow \"spikes\". "
@@ -21829,27 +22716,27 @@ msgid ""
"distance, \"square\" joining is applied."
msgstr ""
-#: doc/classes/Geometry2D.xml:295
+#: doc/classes/Geometry2D.xml:302
msgid ""
"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
"as a polygon."
msgstr ""
-#: doc/classes/Geometry2D.xml:298
+#: doc/classes/Geometry2D.xml:305
msgid ""
"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
"as a polyline."
msgstr ""
-#: doc/classes/Geometry2D.xml:301
+#: doc/classes/Geometry2D.xml:308
msgid "Endpoints are squared off with no extension."
msgstr ""
-#: doc/classes/Geometry2D.xml:304
+#: doc/classes/Geometry2D.xml:311
msgid "Endpoints are squared off and extended by [code]delta[/code] units."
msgstr ""
-#: doc/classes/Geometry2D.xml:307
+#: doc/classes/Geometry2D.xml:314
msgid "Endpoints are rounded off and extended by [code]delta[/code] units."
msgstr ""
@@ -22079,7 +22966,7 @@ msgstr ""
msgid ""
"Bakes the effect from all [GeometryInstance3D]s marked with [constant "
"GeometryInstance3D.GI_MODE_BAKED] and [Light3D]s marked with either "
-"[constant Light3D.BAKE_INDIRECT] or [constant Light3D.BAKE_ALL]. If "
+"[constant Light3D.BAKE_DYNAMIC] or [constant Light3D.BAKE_STATIC]. If "
"[code]create_visual_debug[/code] is [code]true[/code], after baking the "
"light, this will generate a [MultiMesh] that has a cube representing each "
"solid cell with each cube colored to the cell's albedo color. This can be "
@@ -22966,121 +23853,119 @@ msgstr ""
msgid "Clear all cells."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:53
+#: modules/gridmap/doc_classes/GridMap.xml:49
msgid ""
-"The [MeshLibrary] item index located at the grid-based X, Y and Z "
-"coordinates. If the cell is empty, [constant INVALID_CELL_ITEM] will be "
-"returned."
+"The [MeshLibrary] item index located at the given grid coordinates. If the "
+"cell is empty, [constant INVALID_CELL_ITEM] will be returned."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:66
+#: modules/gridmap/doc_classes/GridMap.xml:58
msgid ""
-"The orientation of the cell at the grid-based X, Y and Z coordinates. -1 is "
-"returned if the cell is empty."
+"The orientation of the cell at the given grid coordinates. [code]-1[/code] "
+"is returned if the cell is empty."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:75 doc/classes/PhysicsBody2D.xml:35
+#: modules/gridmap/doc_classes/GridMap.xml:67 doc/classes/PhysicsBody2D.xml:35
#: doc/classes/PhysicsBody3D.xml:35
msgid "Returns an individual bit on the [member collision_layer]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:84 doc/classes/PhysicsBody2D.xml:44
+#: modules/gridmap/doc_classes/GridMap.xml:76 doc/classes/PhysicsBody2D.xml:44
#: doc/classes/PhysicsBody3D.xml:44
msgid "Returns an individual bit on the [member collision_mask]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:91
+#: modules/gridmap/doc_classes/GridMap.xml:83
msgid ""
"Returns an array of [Transform] and [Mesh] references corresponding to the "
"non-empty cells in the grid. The transforms are specified in world space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:98
+#: modules/gridmap/doc_classes/GridMap.xml:90
msgid ""
"Returns an array of [Vector3] with the non-empty cell coordinates in the "
"grid map."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:121
+#: modules/gridmap/doc_classes/GridMap.xml:109
msgid ""
"Returns the position of a grid cell in the GridMap's local coordinate space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:146
+#: modules/gridmap/doc_classes/GridMap.xml:130
msgid ""
-"Sets the mesh index for the cell referenced by its grid-based X, Y and Z "
-"coordinates.\n"
+"Sets the mesh index for the cell referenced by its grid coordinates.\n"
"A negative item index such as [constant INVALID_CELL_ITEM] will clear the "
"cell.\n"
"Optionally, the item's orientation can be passed. For valid orientation "
"values, see [method Basis.get_orthogonal_index]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:173
+#: modules/gridmap/doc_classes/GridMap.xml:157
msgid "Sets an individual bit on the [member collision_layer]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:184
+#: modules/gridmap/doc_classes/GridMap.xml:168
msgid "Sets an individual bit on the [member collision_mask]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:193
+#: modules/gridmap/doc_classes/GridMap.xml:177
msgid ""
"Returns the coordinates of the grid cell containing the given point.\n"
"[code]pos[/code] should be in the GridMap's local coordinate space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:200
+#: modules/gridmap/doc_classes/GridMap.xml:184
msgid "If [code]true[/code], grid items are centered on the X axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:203
+#: modules/gridmap/doc_classes/GridMap.xml:187
msgid "If [code]true[/code], grid items are centered on the Y axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:206
+#: modules/gridmap/doc_classes/GridMap.xml:190
msgid "If [code]true[/code], grid items are centered on the Z axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:209
+#: modules/gridmap/doc_classes/GridMap.xml:193
msgid ""
"The size of each octant measured in number of cells. This applies to all "
"three axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:212
+#: modules/gridmap/doc_classes/GridMap.xml:196
msgid ""
"The scale of the cell items.\n"
"This does not affect the size of the grid cells themselves, only the items "
"in them. This can be used to make cell items overlap their neighbors."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:216
+#: modules/gridmap/doc_classes/GridMap.xml:200
msgid ""
"The dimensions of the grid's cells.\n"
"This does not affect the size of the meshes. See [member cell_scale]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:220
+#: modules/gridmap/doc_classes/GridMap.xml:204
msgid ""
"The physics layers this GridMap is in.\n"
"GridMaps act as static bodies, meaning they aren't affected by gravity or "
"other forces. They only affect other physics bodies that collide with them."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:224
+#: modules/gridmap/doc_classes/GridMap.xml:208
msgid "The physics layers this GridMap detects collisions in."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:227
+#: modules/gridmap/doc_classes/GridMap.xml:211
msgid "The assigned [MeshLibrary]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:235
+#: modules/gridmap/doc_classes/GridMap.xml:219
msgid "Emitted when [member cell_size] changes."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:241
+#: modules/gridmap/doc_classes/GridMap.xml:225
msgid ""
"Invalid cell item that can be used in [method set_cell_item] to clear cells "
"(or represent an empty cell in [method get_cell_item])."
@@ -23445,27 +24330,33 @@ msgid ""
"server's side.\n"
"For more information on HTTP, see https://developer.mozilla.org/en-US/docs/"
"Web/HTTP (or read RFC 2616 to get it straight from the source: https://tools."
-"ietf.org/html/rfc2616)."
+"ietf.org/html/rfc2616).\n"
+"[b]Note:[/b] When performing HTTP requests from a project exported to HTML5, "
+"keep in mind the remote server may not allow requests from foreign origins "
+"due to [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/"
+"url]. If you host the server in question, you should modify its backend to "
+"allow requests from foreign origins by adding the [code]Access-Control-Allow-"
+"Origin: *[/code] HTTP header."
msgstr ""
-#: doc/classes/HTTPClient.xml:13
+#: doc/classes/HTTPClient.xml:14
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/"
"http_client_class.html"
msgstr ""
-#: doc/classes/HTTPClient.xml:14 doc/classes/HTTPRequest.xml:62
+#: doc/classes/HTTPClient.xml:15 doc/classes/HTTPRequest.xml:71
#: doc/classes/StreamPeerSSL.xml:10
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/ssl_certificates."
"html"
msgstr ""
-#: doc/classes/HTTPClient.xml:21
+#: doc/classes/HTTPClient.xml:22
msgid "Closes the current connection, allowing reuse of this [HTTPClient]."
msgstr ""
-#: doc/classes/HTTPClient.xml:36
+#: doc/classes/HTTPClient.xml:37
msgid ""
"Connects to a host. This needs to be done before any requests are sent.\n"
"The host should not have http:// prepended but will strip the protocol "
@@ -23477,7 +24368,7 @@ msgid ""
"[code]true[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:46
+#: doc/classes/HTTPClient.xml:47
msgid ""
"Returns the response's body length.\n"
"[b]Note:[/b] Some Web servers may not send a body length. In this case, the "
@@ -23485,15 +24376,15 @@ msgid ""
"the body length will also be [code]-1[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:54
+#: doc/classes/HTTPClient.xml:55
msgid "Returns the response's HTTP status code."
msgstr ""
-#: doc/classes/HTTPClient.xml:61
+#: doc/classes/HTTPClient.xml:62
msgid "Returns the response headers."
msgstr ""
-#: doc/classes/HTTPClient.xml:68
+#: doc/classes/HTTPClient.xml:69
msgid ""
"Returns all response headers as a Dictionary of structure [code]{ \"key\": "
"\"value1; value2\" }[/code] where the case-sensitivity of the keys and "
@@ -23508,27 +24399,27 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:82
+#: doc/classes/HTTPClient.xml:83
msgid ""
"Returns a [enum Status] constant. Need to call [method poll] in order to get "
"status updates."
msgstr ""
-#: doc/classes/HTTPClient.xml:89
+#: doc/classes/HTTPClient.xml:90
msgid "If [code]true[/code], this [HTTPClient] has a response available."
msgstr ""
-#: doc/classes/HTTPClient.xml:96
+#: doc/classes/HTTPClient.xml:97
msgid "If [code]true[/code], this [HTTPClient] has a response that is chunked."
msgstr ""
-#: doc/classes/HTTPClient.xml:103
+#: doc/classes/HTTPClient.xml:104
msgid ""
"This needs to be called in order to have any request processed. Check "
"results with [method get_status]."
msgstr ""
-#: doc/classes/HTTPClient.xml:112
+#: doc/classes/HTTPClient.xml:113
msgid ""
"Generates a GET/POST application/x-www-form-urlencoded style query string "
"from a provided dictionary, e.g.:\n"
@@ -23548,11 +24439,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:130
+#: doc/classes/HTTPClient.xml:131
msgid "Reads one chunk from the response."
msgstr ""
-#: doc/classes/HTTPClient.xml:145
+#: doc/classes/HTTPClient.xml:146
msgid ""
"Sends a request to the connected host. The URL parameter is just the part "
"after the host, so for [code]http://somehost.com/index.php[/code], it is "
@@ -23570,7 +24461,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:168
+#: doc/classes/HTTPClient.xml:169
msgid ""
"Sends a raw request to the connected host. The URL parameter is just the "
"part after the host, so for [code]http://somehost.com/index.php[/code], it "
@@ -23580,43 +24471,43 @@ msgid ""
"Sends the body data raw, as a byte array and does not encode it in any way."
msgstr ""
-#: doc/classes/HTTPClient.xml:176
+#: doc/classes/HTTPClient.xml:177
msgid ""
"If [code]true[/code], execution will block until all data is read from the "
"response."
msgstr ""
-#: doc/classes/HTTPClient.xml:179
+#: doc/classes/HTTPClient.xml:180
msgid "The connection to use for this client."
msgstr ""
-#: doc/classes/HTTPClient.xml:182
+#: doc/classes/HTTPClient.xml:183
msgid ""
"The size of the buffer used and maximum bytes to read per iteration. See "
"[method read_response_body_chunk]."
msgstr ""
-#: doc/classes/HTTPClient.xml:187
+#: doc/classes/HTTPClient.xml:188
msgid ""
"HTTP GET method. The GET method requests a representation of the specified "
"resource. Requests using GET should only retrieve data."
msgstr ""
-#: doc/classes/HTTPClient.xml:190
+#: doc/classes/HTTPClient.xml:191
msgid ""
"HTTP HEAD method. The HEAD method asks for a response identical to that of a "
"GET request, but without the response body. This is useful to request "
"metadata like HTTP headers or to check if a resource exists."
msgstr ""
-#: doc/classes/HTTPClient.xml:193
+#: doc/classes/HTTPClient.xml:194
msgid ""
"HTTP POST method. The POST method is used to submit an entity to the "
"specified resource, often causing a change in state or side effects on the "
"server. This is often used for forms and submitting data or uploading files."
msgstr ""
-#: doc/classes/HTTPClient.xml:196
+#: doc/classes/HTTPClient.xml:197
msgid ""
"HTTP PUT method. The PUT method asks to replace all current representations "
"of the target resource with the request payload. (You can think of POST as "
@@ -23624,103 +24515,103 @@ msgid ""
"not make a clear distinction or change their meaning)."
msgstr ""
-#: doc/classes/HTTPClient.xml:199
+#: doc/classes/HTTPClient.xml:200
msgid ""
"HTTP DELETE method. The DELETE method requests to delete the specified "
"resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:202
+#: doc/classes/HTTPClient.xml:203
msgid ""
"HTTP OPTIONS method. The OPTIONS method asks for a description of the "
"communication options for the target resource. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:205
+#: doc/classes/HTTPClient.xml:206
msgid ""
"HTTP TRACE method. The TRACE method performs a message loop-back test along "
"the path to the target resource. Returns the entire HTTP request received in "
"the response body. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:208
+#: doc/classes/HTTPClient.xml:209
msgid ""
"HTTP CONNECT method. The CONNECT method establishes a tunnel to the server "
"identified by the target resource. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:211
+#: doc/classes/HTTPClient.xml:212
msgid ""
"HTTP PATCH method. The PATCH method is used to apply partial modifications "
"to a resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:214
+#: doc/classes/HTTPClient.xml:215
msgid "Represents the size of the [enum Method] enum."
msgstr ""
-#: doc/classes/HTTPClient.xml:217
+#: doc/classes/HTTPClient.xml:218
msgid "Status: Disconnected from the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:220
+#: doc/classes/HTTPClient.xml:221
msgid "Status: Currently resolving the hostname for the given URL into an IP."
msgstr ""
-#: doc/classes/HTTPClient.xml:223
+#: doc/classes/HTTPClient.xml:224
msgid "Status: DNS failure: Can't resolve the hostname for the given URL."
msgstr ""
-#: doc/classes/HTTPClient.xml:226
+#: doc/classes/HTTPClient.xml:227
msgid "Status: Currently connecting to server."
msgstr ""
-#: doc/classes/HTTPClient.xml:229
+#: doc/classes/HTTPClient.xml:230
msgid "Status: Can't connect to the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:232
+#: doc/classes/HTTPClient.xml:233
msgid "Status: Connection established."
msgstr ""
-#: doc/classes/HTTPClient.xml:235
+#: doc/classes/HTTPClient.xml:236
msgid "Status: Currently sending request."
msgstr ""
-#: doc/classes/HTTPClient.xml:238
+#: doc/classes/HTTPClient.xml:239
msgid "Status: HTTP body received."
msgstr ""
-#: doc/classes/HTTPClient.xml:241
+#: doc/classes/HTTPClient.xml:242
msgid "Status: Error in HTTP connection."
msgstr ""
-#: doc/classes/HTTPClient.xml:244
+#: doc/classes/HTTPClient.xml:245
msgid "Status: Error in SSL handshake."
msgstr ""
-#: doc/classes/HTTPClient.xml:247
+#: doc/classes/HTTPClient.xml:248
msgid ""
"HTTP status code [code]100 Continue[/code]. Interim response that indicates "
"everything so far is OK and that the client should continue with the request "
"(or ignore this status if already finished)."
msgstr ""
-#: doc/classes/HTTPClient.xml:250
+#: doc/classes/HTTPClient.xml:251
msgid ""
"HTTP status code [code]101 Switching Protocol[/code]. Sent in response to an "
"[code]Upgrade[/code] request header by the client. Indicates the protocol "
"the server is switching to."
msgstr ""
-#: doc/classes/HTTPClient.xml:253
+#: doc/classes/HTTPClient.xml:254
msgid ""
"HTTP status code [code]102 Processing[/code] (WebDAV). Indicates that the "
"server has received and is processing the request, but no response is "
"available yet."
msgstr ""
-#: doc/classes/HTTPClient.xml:256
+#: doc/classes/HTTPClient.xml:257
msgid ""
"HTTP status code [code]200 OK[/code]. The request has succeeded. Default "
"response for successful requests. Meaning varies depending on the request. "
@@ -23731,14 +24622,14 @@ msgid ""
"server."
msgstr ""
-#: doc/classes/HTTPClient.xml:259
+#: doc/classes/HTTPClient.xml:260
msgid ""
"HTTP status code [code]201 Created[/code]. The request has succeeded and a "
"new resource has been created as a result of it. This is typically the "
"response sent after a PUT request."
msgstr ""
-#: doc/classes/HTTPClient.xml:262
+#: doc/classes/HTTPClient.xml:263
msgid ""
"HTTP status code [code]202 Accepted[/code]. The request has been received "
"but not yet acted upon. It is non-committal, meaning that there is no way in "
@@ -23747,7 +24638,7 @@ msgid ""
"server handles the request, or for batch processing."
msgstr ""
-#: doc/classes/HTTPClient.xml:265
+#: doc/classes/HTTPClient.xml:266
msgid ""
"HTTP status code [code]203 Non-Authoritative Information[/code]. This "
"response code means returned meta-information set is not exact set as "
@@ -23756,14 +24647,14 @@ msgid ""
"instead of this response."
msgstr ""
-#: doc/classes/HTTPClient.xml:268
+#: doc/classes/HTTPClient.xml:269
msgid ""
"HTTP status code [code]204 No Content[/code]. There is no content to send "
"for this request, but the headers may be useful. The user-agent may update "
"its cached headers for this resource with the new ones."
msgstr ""
-#: doc/classes/HTTPClient.xml:271
+#: doc/classes/HTTPClient.xml:272
msgid ""
"HTTP status code [code]205 Reset Content[/code]. The server has fulfilled "
"the request and desires that the client resets the \"document view\" that "
@@ -23771,49 +24662,49 @@ msgid ""
"origin server."
msgstr ""
-#: doc/classes/HTTPClient.xml:274
+#: doc/classes/HTTPClient.xml:275
msgid ""
"HTTP status code [code]206 Partial Content[/code]. This response code is "
"used because of a range header sent by the client to separate download into "
"multiple streams."
msgstr ""
-#: doc/classes/HTTPClient.xml:277
+#: doc/classes/HTTPClient.xml:278
msgid ""
"HTTP status code [code]207 Multi-Status[/code] (WebDAV). A Multi-Status "
"response conveys information about multiple resources in situations where "
"multiple status codes might be appropriate."
msgstr ""
-#: doc/classes/HTTPClient.xml:280
+#: doc/classes/HTTPClient.xml:281
msgid ""
"HTTP status code [code]208 Already Reported[/code] (WebDAV). Used inside a "
"DAV: propstat response element to avoid enumerating the internal members of "
"multiple bindings to the same collection repeatedly."
msgstr ""
-#: doc/classes/HTTPClient.xml:283
+#: doc/classes/HTTPClient.xml:284
msgid ""
"HTTP status code [code]226 IM Used[/code] (WebDAV). The server has fulfilled "
"a GET request for the resource, and the response is a representation of the "
"result of one or more instance-manipulations applied to the current instance."
msgstr ""
-#: doc/classes/HTTPClient.xml:286
+#: doc/classes/HTTPClient.xml:287
msgid ""
"HTTP status code [code]300 Multiple Choice[/code]. The request has more than "
"one possible responses and there is no standardized way to choose one of the "
"responses. User-agent or user should choose one of them."
msgstr ""
-#: doc/classes/HTTPClient.xml:289
+#: doc/classes/HTTPClient.xml:290
msgid ""
"HTTP status code [code]301 Moved Permanently[/code]. Redirection. This "
"response code means the URI of requested resource has been changed. The new "
"URI is usually included in the response."
msgstr ""
-#: doc/classes/HTTPClient.xml:292
+#: doc/classes/HTTPClient.xml:293
msgid ""
"HTTP status code [code]302 Found[/code]. Temporary redirection. This "
"response code means the URI of requested resource has been changed "
@@ -23821,7 +24712,7 @@ msgid ""
"this same URI should be used by the client in future requests."
msgstr ""
-#: doc/classes/HTTPClient.xml:295
+#: doc/classes/HTTPClient.xml:296
msgid ""
"HTTP status code [code]303 See Other[/code]. The server is redirecting the "
"user agent to a different resource, as indicated by a URI in the Location "
@@ -23829,39 +24720,39 @@ msgid ""
"original request."
msgstr ""
-#: doc/classes/HTTPClient.xml:298
+#: doc/classes/HTTPClient.xml:299
msgid ""
"HTTP status code [code]304 Not Modified[/code]. A conditional GET or HEAD "
"request has been received and would have resulted in a 200 OK response if it "
"were not for the fact that the condition evaluated to [code]false[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:301
+#: doc/classes/HTTPClient.xml:302
msgid ""
"HTTP status code [code]305 Use Proxy[/code]. [i]Deprecated. Do not use.[/i]"
msgstr ""
-#: doc/classes/HTTPClient.xml:304
+#: doc/classes/HTTPClient.xml:305
msgid ""
"HTTP status code [code]306 Switch Proxy[/code]. [i]Deprecated. Do not use.[/"
"i]"
msgstr ""
-#: doc/classes/HTTPClient.xml:307
+#: doc/classes/HTTPClient.xml:308
msgid ""
"HTTP status code [code]307 Temporary Redirect[/code]. The target resource "
"resides temporarily under a different URI and the user agent MUST NOT change "
"the request method if it performs an automatic redirection to that URI."
msgstr ""
-#: doc/classes/HTTPClient.xml:310
+#: doc/classes/HTTPClient.xml:311
msgid ""
"HTTP status code [code]308 Permanent Redirect[/code]. The target resource "
"has been assigned a new permanent URI and any future references to this "
"resource ought to use one of the enclosed URIs."
msgstr ""
-#: doc/classes/HTTPClient.xml:313
+#: doc/classes/HTTPClient.xml:314
msgid ""
"HTTP status code [code]400 Bad Request[/code]. The request was invalid. The "
"server cannot or will not process the request due to something that is "
@@ -23870,21 +24761,21 @@ msgid ""
"routing)."
msgstr ""
-#: doc/classes/HTTPClient.xml:316
+#: doc/classes/HTTPClient.xml:317
msgid ""
"HTTP status code [code]401 Unauthorized[/code]. Credentials required. The "
"request has not been applied because it lacks valid authentication "
"credentials for the target resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:319
+#: doc/classes/HTTPClient.xml:320
msgid ""
"HTTP status code [code]402 Payment Required[/code]. This response code is "
"reserved for future use. Initial aim for creating this code was using it for "
"digital payment systems, however this is not currently used."
msgstr ""
-#: doc/classes/HTTPClient.xml:322
+#: doc/classes/HTTPClient.xml:323
msgid ""
"HTTP status code [code]403 Forbidden[/code]. The client does not have access "
"rights to the content, i.e. they are unauthorized, so server is rejecting to "
@@ -23892,7 +24783,7 @@ msgid ""
"known to the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:325
+#: doc/classes/HTTPClient.xml:326
msgid ""
"HTTP status code [code]404 Not Found[/code]. The server can not find "
"requested resource. Either the URL is not recognized or the endpoint is "
@@ -23900,7 +24791,7 @@ msgid ""
"403 to hide existence of a resource if the client is not authorized."
msgstr ""
-#: doc/classes/HTTPClient.xml:328
+#: doc/classes/HTTPClient.xml:329
msgid ""
"HTTP status code [code]405 Method Not Allowed[/code]. The request's HTTP "
"method is known by the server but has been disabled and cannot be used. For "
@@ -23908,7 +24799,7 @@ msgid ""
"GET and HEAD, must never be disabled and should not return this error code."
msgstr ""
-#: doc/classes/HTTPClient.xml:331
+#: doc/classes/HTTPClient.xml:332
msgid ""
"HTTP status code [code]406 Not Acceptable[/code]. The target resource does "
"not have a current representation that would be acceptable to the user "
@@ -23916,21 +24807,21 @@ msgid ""
"request. Used when negotiation content."
msgstr ""
-#: doc/classes/HTTPClient.xml:334
+#: doc/classes/HTTPClient.xml:335
msgid ""
"HTTP status code [code]407 Proxy Authentication Required[/code]. Similar to "
"401 Unauthorized, but it indicates that the client needs to authenticate "
"itself in order to use a proxy."
msgstr ""
-#: doc/classes/HTTPClient.xml:337
+#: doc/classes/HTTPClient.xml:338
msgid ""
"HTTP status code [code]408 Request Timeout[/code]. The server did not "
"receive a complete request message within the time that it was prepared to "
"wait."
msgstr ""
-#: doc/classes/HTTPClient.xml:340
+#: doc/classes/HTTPClient.xml:341
msgid ""
"HTTP status code [code]409 Conflict[/code]. The request could not be "
"completed due to a conflict with the current state of the target resource. "
@@ -23938,47 +24829,47 @@ msgid ""
"conflict and resubmit the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:343
+#: doc/classes/HTTPClient.xml:344
msgid ""
"HTTP status code [code]410 Gone[/code]. The target resource is no longer "
"available at the origin server and this condition is likely permanent."
msgstr ""
-#: doc/classes/HTTPClient.xml:346
+#: doc/classes/HTTPClient.xml:347
msgid ""
"HTTP status code [code]411 Length Required[/code]. The server refuses to "
"accept the request without a defined Content-Length header."
msgstr ""
-#: doc/classes/HTTPClient.xml:349
+#: doc/classes/HTTPClient.xml:350
msgid ""
"HTTP status code [code]412 Precondition Failed[/code]. One or more "
"conditions given in the request header fields evaluated to [code]false[/"
"code] when tested on the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:352
+#: doc/classes/HTTPClient.xml:353
msgid ""
"HTTP status code [code]413 Entity Too Large[/code]. The server is refusing "
"to process a request because the request payload is larger than the server "
"is willing or able to process."
msgstr ""
-#: doc/classes/HTTPClient.xml:355
+#: doc/classes/HTTPClient.xml:356
msgid ""
"HTTP status code [code]414 Request-URI Too Long[/code]. The server is "
"refusing to service the request because the request-target is longer than "
"the server is willing to interpret."
msgstr ""
-#: doc/classes/HTTPClient.xml:358
+#: doc/classes/HTTPClient.xml:359
msgid ""
"HTTP status code [code]415 Unsupported Media Type[/code]. The origin server "
"is refusing to service the request because the payload is in a format not "
"supported by this method on the target resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:361
+#: doc/classes/HTTPClient.xml:362
msgid ""
"HTTP status code [code]416 Requested Range Not Satisfiable[/code]. None of "
"the ranges in the request's Range header field overlap the current extent of "
@@ -23986,21 +24877,21 @@ msgid ""
"to invalid ranges or an excessive request of small or overlapping ranges."
msgstr ""
-#: doc/classes/HTTPClient.xml:364
+#: doc/classes/HTTPClient.xml:365
msgid ""
"HTTP status code [code]417 Expectation Failed[/code]. The expectation given "
"in the request's Expect header field could not be met by at least one of the "
"inbound servers."
msgstr ""
-#: doc/classes/HTTPClient.xml:367
+#: doc/classes/HTTPClient.xml:368
msgid ""
"HTTP status code [code]418 I'm A Teapot[/code]. Any attempt to brew coffee "
"with a teapot should result in the error code \"418 I'm a teapot\". The "
"resulting entity body MAY be short and stout."
msgstr ""
-#: doc/classes/HTTPClient.xml:370
+#: doc/classes/HTTPClient.xml:371
msgid ""
"HTTP status code [code]421 Misdirected Request[/code]. The request was "
"directed at a server that is not able to produce a response. This can be "
@@ -24008,7 +24899,7 @@ msgid ""
"combination of scheme and authority that are included in the request URI."
msgstr ""
-#: doc/classes/HTTPClient.xml:373
+#: doc/classes/HTTPClient.xml:374
msgid ""
"HTTP status code [code]422 Unprocessable Entity[/code] (WebDAV). The server "
"understands the content type of the request entity (hence a 415 Unsupported "
@@ -24017,40 +24908,40 @@ msgid ""
"was unable to process the contained instructions."
msgstr ""
-#: doc/classes/HTTPClient.xml:376
+#: doc/classes/HTTPClient.xml:377
msgid ""
"HTTP status code [code]423 Locked[/code] (WebDAV). The source or destination "
"resource of a method is locked."
msgstr ""
-#: doc/classes/HTTPClient.xml:379
+#: doc/classes/HTTPClient.xml:380
msgid ""
"HTTP status code [code]424 Failed Dependency[/code] (WebDAV). The method "
"could not be performed on the resource because the requested action depended "
"on another action and that action failed."
msgstr ""
-#: doc/classes/HTTPClient.xml:382
+#: doc/classes/HTTPClient.xml:383
msgid ""
"HTTP status code [code]426 Upgrade Required[/code]. The server refuses to "
"perform the request using the current protocol but might be willing to do so "
"after the client upgrades to a different protocol."
msgstr ""
-#: doc/classes/HTTPClient.xml:385
+#: doc/classes/HTTPClient.xml:386
msgid ""
"HTTP status code [code]428 Precondition Required[/code]. The origin server "
"requires the request to be conditional."
msgstr ""
-#: doc/classes/HTTPClient.xml:388
+#: doc/classes/HTTPClient.xml:389
msgid ""
"HTTP status code [code]429 Too Many Requests[/code]. The user has sent too "
"many requests in a given amount of time (see \"rate limiting\"). Back off "
"and increase time between requests or try again later."
msgstr ""
-#: doc/classes/HTTPClient.xml:391
+#: doc/classes/HTTPClient.xml:392
msgid ""
"HTTP status code [code]431 Request Header Fields Too Large[/code]. The "
"server is unwilling to process the request because its header fields are too "
@@ -24058,27 +24949,27 @@ msgid ""
"header fields."
msgstr ""
-#: doc/classes/HTTPClient.xml:394
+#: doc/classes/HTTPClient.xml:395
msgid ""
"HTTP status code [code]451 Response Unavailable For Legal Reasons[/code]. "
"The server is denying access to the resource as a consequence of a legal "
"demand."
msgstr ""
-#: doc/classes/HTTPClient.xml:397
+#: doc/classes/HTTPClient.xml:398
msgid ""
"HTTP status code [code]500 Internal Server Error[/code]. The server "
"encountered an unexpected condition that prevented it from fulfilling the "
"request."
msgstr ""
-#: doc/classes/HTTPClient.xml:400
+#: doc/classes/HTTPClient.xml:401
msgid ""
"HTTP status code [code]501 Not Implemented[/code]. The server does not "
"support the functionality required to fulfill the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:403
+#: doc/classes/HTTPClient.xml:404
msgid ""
"HTTP status code [code]502 Bad Gateway[/code]. The server, while acting as a "
"gateway or proxy, received an invalid response from an inbound server it "
@@ -24086,7 +24977,7 @@ msgid ""
"balancers or proxies."
msgstr ""
-#: doc/classes/HTTPClient.xml:406
+#: doc/classes/HTTPClient.xml:407
msgid ""
"HTTP status code [code]503 Service Unavailable[/code]. The server is "
"currently unable to handle the request due to a temporary overload or "
@@ -24094,7 +24985,7 @@ msgid ""
"again later."
msgstr ""
-#: doc/classes/HTTPClient.xml:409
+#: doc/classes/HTTPClient.xml:410
msgid ""
"HTTP status code [code]504 Gateway Timeout[/code]. The server, while acting "
"as a gateway or proxy, did not receive a timely response from an upstream "
@@ -24102,14 +24993,14 @@ msgid ""
"returned by load balancers or proxies."
msgstr ""
-#: doc/classes/HTTPClient.xml:412
+#: doc/classes/HTTPClient.xml:413
msgid ""
"HTTP status code [code]505 HTTP Version Not Supported[/code]. The server "
"does not support, or refuses to support, the major version of HTTP that was "
"used in the request message."
msgstr ""
-#: doc/classes/HTTPClient.xml:415
+#: doc/classes/HTTPClient.xml:416
msgid ""
"HTTP status code [code]506 Variant Also Negotiates[/code]. The server has an "
"internal configuration error: the chosen variant resource is configured to "
@@ -24117,14 +25008,14 @@ msgid ""
"proper end point in the negotiation process."
msgstr ""
-#: doc/classes/HTTPClient.xml:418
+#: doc/classes/HTTPClient.xml:419
msgid ""
"HTTP status code [code]507 Insufficient Storage[/code]. The method could not "
"be performed on the resource because the server is unable to store the "
"representation needed to successfully complete the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:421
+#: doc/classes/HTTPClient.xml:422
msgid ""
"HTTP status code [code]508 Loop Detected[/code]. The server terminated an "
"operation because it encountered an infinite loop while processing a request "
@@ -24132,14 +25023,14 @@ msgid ""
"failed."
msgstr ""
-#: doc/classes/HTTPClient.xml:424
+#: doc/classes/HTTPClient.xml:425
msgid ""
"HTTP status code [code]510 Not Extended[/code]. The policy for accessing the "
"resource has not been met in the request. The server should send back all "
"the information necessary for the client to issue an extended request."
msgstr ""
-#: doc/classes/HTTPClient.xml:427
+#: doc/classes/HTTPClient.xml:428
msgid ""
"HTTP status code [code]511 Network Authentication Required[/code]. The "
"client needs to authenticate to gain network access."
@@ -24165,12 +25056,21 @@ msgid ""
" http_request.connect(\"request_completed\", self, "
"\"_http_request_completed\")\n"
"\n"
-" # Perform the HTTP request. The URL below returns some JSON as of "
-"writing.\n"
+" # Perform a GET request. The URL below returns JSON as of writing.\n"
" var error = http_request.request(\"https://httpbin.org/get\")\n"
" if error != OK:\n"
" push_error(\"An error occurred in the HTTP request.\")\n"
"\n"
+" # Perform a POST request. The URL below returns JSON as of writing.\n"
+" # Note: Don't make simultaneous requests using a single HTTPRequest "
+"node.\n"
+" # The snippet below is provided for reference only.\n"
+" var body = {\"name\": \"Godette\"}\n"
+" var error = http_request.request(\"https://httpbin.org/post\", [], true, "
+"HTTPClient.METHOD_POST, body)\n"
+" if error != OK:\n"
+" push_error(\"An error occurred in the HTTP request.\")\n"
+"\n"
"\n"
"# Called when the HTTP request is completed.\n"
"func _http_request_completed(result, response_code, headers, body):\n"
@@ -24210,20 +25110,26 @@ msgid ""
" var texture_rect = TextureRect.new()\n"
" add_child(texture_rect)\n"
" texture_rect.texture = texture\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] When performing HTTP requests from a project exported to HTML5, "
+"keep in mind the remote server may not allow requests from foreign origins "
+"due to [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/"
+"url]. If you host the server in question, you should modify its backend to "
+"allow requests from foreign origins by adding the [code]Access-Control-Allow-"
+"Origin: *[/code] HTTP header."
msgstr ""
-#: doc/classes/HTTPRequest.xml:61
+#: doc/classes/HTTPRequest.xml:70
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/"
"http_request_class.html"
msgstr ""
-#: doc/classes/HTTPRequest.xml:69
+#: doc/classes/HTTPRequest.xml:78
msgid "Cancels the current request."
msgstr ""
-#: doc/classes/HTTPRequest.xml:76
+#: doc/classes/HTTPRequest.xml:85
msgid ""
"Returns the response body length.\n"
"[b]Note:[/b] Some Web servers may not send a body length. In this case, the "
@@ -24231,17 +25137,17 @@ msgid ""
"the body length will also be [code]-1[/code]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:84
+#: doc/classes/HTTPRequest.xml:93
msgid "Returns the amount of bytes this HTTPRequest downloaded."
msgstr ""
-#: doc/classes/HTTPRequest.xml:91
+#: doc/classes/HTTPRequest.xml:100
msgid ""
"Returns the current status of the underlying [HTTPClient]. See [enum "
"HTTPClient.Status]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:108
+#: doc/classes/HTTPRequest.xml:117
msgid ""
"Creates request on the underlying [HTTPClient]. If there is no configuration "
"errors, it tries to connect using [method HTTPClient.connect_to_host] and "
@@ -24254,11 +25160,11 @@ msgid ""
"connect to host."
msgstr ""
-#: doc/classes/HTTPRequest.xml:115
+#: doc/classes/HTTPRequest.xml:124
msgid "Maximum allowed size for response bodies."
msgstr ""
-#: doc/classes/HTTPRequest.xml:118
+#: doc/classes/HTTPRequest.xml:127
msgid ""
"The size of the buffer used and maximum bytes to read per iteration. See "
"[member HTTPClient.read_chunk_size].\n"
@@ -24266,63 +25172,63 @@ msgid ""
"files to achieve better speeds at the cost of memory."
msgstr ""
-#: doc/classes/HTTPRequest.xml:122
+#: doc/classes/HTTPRequest.xml:131
msgid "The file to download into. Will output any received file into it."
msgstr ""
-#: doc/classes/HTTPRequest.xml:125
+#: doc/classes/HTTPRequest.xml:134
msgid "Maximum number of allowed redirects."
msgstr ""
-#: doc/classes/HTTPRequest.xml:130
+#: doc/classes/HTTPRequest.xml:139
msgid "If [code]true[/code], multithreading is used to improve performance."
msgstr ""
-#: doc/classes/HTTPRequest.xml:144
+#: doc/classes/HTTPRequest.xml:153
msgid "Emitted when a request is completed."
msgstr ""
-#: doc/classes/HTTPRequest.xml:150
+#: doc/classes/HTTPRequest.xml:159
msgid "Request successful."
msgstr ""
-#: doc/classes/HTTPRequest.xml:155
+#: doc/classes/HTTPRequest.xml:164
msgid "Request failed while connecting."
msgstr ""
-#: doc/classes/HTTPRequest.xml:158
+#: doc/classes/HTTPRequest.xml:167
msgid "Request failed while resolving."
msgstr ""
-#: doc/classes/HTTPRequest.xml:161
+#: doc/classes/HTTPRequest.xml:170
msgid "Request failed due to connection (read/write) error."
msgstr ""
-#: doc/classes/HTTPRequest.xml:164
+#: doc/classes/HTTPRequest.xml:173
msgid "Request failed on SSL handshake."
msgstr ""
-#: doc/classes/HTTPRequest.xml:167
+#: doc/classes/HTTPRequest.xml:176
msgid "Request does not have a response (yet)."
msgstr ""
-#: doc/classes/HTTPRequest.xml:170
+#: doc/classes/HTTPRequest.xml:179
msgid "Request exceeded its maximum size limit, see [member body_size_limit]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:173
+#: doc/classes/HTTPRequest.xml:182
msgid "Request failed (currently unused)."
msgstr ""
-#: doc/classes/HTTPRequest.xml:176
+#: doc/classes/HTTPRequest.xml:185
msgid "HTTPRequest couldn't open the download file."
msgstr ""
-#: doc/classes/HTTPRequest.xml:179
+#: doc/classes/HTTPRequest.xml:188
msgid "HTTPRequest couldn't write to the download file."
msgstr ""
-#: doc/classes/HTTPRequest.xml:182
+#: doc/classes/HTTPRequest.xml:191
msgid "Request reached its maximum redirect limit, see [member max_redirects]."
msgstr ""
@@ -24546,42 +25452,46 @@ msgid "Loads an image from the binary contents of a PNG file."
msgstr ""
#: doc/classes/Image.xml:373
+msgid "Loads an image from the binary contents of a TGA file."
+msgstr ""
+
+#: doc/classes/Image.xml:382
msgid "Loads an image from the binary contents of a WebP file."
msgstr ""
-#: doc/classes/Image.xml:380
+#: doc/classes/Image.xml:389
msgid ""
"Converts the image's data to represent coordinates on a 3D plane. This is "
"used when the image represents a normalmap. A normalmap can add lots of "
"detail to a 3D surface without increasing the polygon count."
msgstr ""
-#: doc/classes/Image.xml:387
+#: doc/classes/Image.xml:396
msgid ""
"Multiplies color values with alpha values. Resulting color values for a "
"pixel are [code](color * alpha)/256[/code]."
msgstr ""
-#: doc/classes/Image.xml:400
+#: doc/classes/Image.xml:409
msgid ""
"Resizes the image to the given [code]width[/code] and [code]height[/code]. "
"New pixels are calculated using [code]interpolation[/code]. See "
"[code]interpolation[/code] constants."
msgstr ""
-#: doc/classes/Image.xml:409
+#: doc/classes/Image.xml:418
msgid ""
"Resizes the image to the nearest power of 2 for the width and height. If "
"[code]square[/code] is [code]true[/code] then set width and height to be the "
"same."
msgstr ""
-#: doc/classes/Image.xml:416
+#: doc/classes/Image.xml:425
msgid ""
"Converts a standard RGBE (Red Green Blue Exponent) image to an sRGB image."
msgstr ""
-#: doc/classes/Image.xml:427
+#: doc/classes/Image.xml:436
msgid ""
"Saves the image as an EXR file to [code]path[/code]. If [code]grayscale[/"
"code] is [code]true[/code] and the image has only one channel, it will be "
@@ -24590,11 +25500,11 @@ msgid ""
"TinyEXR module."
msgstr ""
-#: doc/classes/Image.xml:436
+#: doc/classes/Image.xml:445
msgid "Saves the image as a PNG file to [code]path[/code]."
msgstr ""
-#: doc/classes/Image.xml:455
+#: doc/classes/Image.xml:464
msgid ""
"Sets the [Color] of the pixel at [code](x, y)[/code]. Example:\n"
"[codeblock]\n"
@@ -24604,7 +25514,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Image.xml:471
+#: doc/classes/Image.xml:480
msgid ""
"Sets the [Color] of the pixel at [code](dst.x, dst.y)[/code]. Note that the "
"[code]dst[/code] values must be integers. Example:\n"
@@ -24615,51 +25525,51 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Image.xml:483
+#: doc/classes/Image.xml:492
msgid "Shrinks the image by a factor of 2."
msgstr ""
-#: doc/classes/Image.xml:490
+#: doc/classes/Image.xml:499
msgid "Converts the raw data from the sRGB colorspace to a linear scale."
msgstr ""
-#: doc/classes/Image.xml:496
+#: doc/classes/Image.xml:505
msgid ""
"Holds all of the image's color data in a given format. See [enum Format] "
"constants."
msgstr ""
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:510
msgid "The maximal width allowed for [Image] resources."
msgstr ""
-#: doc/classes/Image.xml:504
+#: doc/classes/Image.xml:513
msgid "The maximal height allowed for [Image] resources."
msgstr ""
-#: doc/classes/Image.xml:507
+#: doc/classes/Image.xml:516
msgid "Texture format with a single 8-bit depth representing luminance."
msgstr ""
-#: doc/classes/Image.xml:510
+#: doc/classes/Image.xml:519
msgid ""
"OpenGL texture format with two values, luminance and alpha each stored with "
"8 bits."
msgstr ""
-#: doc/classes/Image.xml:513
+#: doc/classes/Image.xml:522
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
"bitdepth of 8."
msgstr ""
-#: doc/classes/Image.xml:516
+#: doc/classes/Image.xml:525
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
-#: doc/classes/Image.xml:519
+#: doc/classes/Image.xml:528
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -24667,7 +25577,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:523
+#: doc/classes/Image.xml:532
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -24675,67 +25585,67 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:536
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
-#: doc/classes/Image.xml:532
+#: doc/classes/Image.xml:541
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
-#: doc/classes/Image.xml:535
+#: doc/classes/Image.xml:544
msgid ""
"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
"each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:538
+#: doc/classes/Image.xml:547
msgid ""
"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
"components, each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:541
+#: doc/classes/Image.xml:550
msgid ""
"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
"components, each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:544
+#: doc/classes/Image.xml:553
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 16-"
"bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:556
msgid ""
"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
"each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:550
+#: doc/classes/Image.xml:559
msgid ""
"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
"components, each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:553
+#: doc/classes/Image.xml:562
msgid ""
"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
"components, each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:556
+#: doc/classes/Image.xml:565
msgid ""
"A special OpenGL texture format where the three color components have 9 bits "
"of precision and all three share a single 5-bit exponent."
msgstr ""
-#: doc/classes/Image.xml:559
+#: doc/classes/Image.xml:568
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format that uses Block Compression 1, and is the smallest variation "
@@ -24745,7 +25655,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:563
+#: doc/classes/Image.xml:572
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format that uses Block Compression 2, and color data is interpreted "
@@ -24755,7 +25665,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:567
+#: doc/classes/Image.xml:576
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format also known as Block Compression 3 or BC3 that contains 64 "
@@ -24766,7 +25676,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:571
+#: doc/classes/Image.xml:580
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -24774,7 +25684,7 @@ msgid ""
"DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:574
+#: doc/classes/Image.xml:583
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -24782,7 +25692,7 @@ msgid ""
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:577
+#: doc/classes/Image.xml:586
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -24791,21 +25701,21 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:581
+#: doc/classes/Image.xml:590
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with signed floating-point "
"RGB components."
msgstr ""
-#: doc/classes/Image.xml:584
+#: doc/classes/Image.xml:593
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned floating-point "
"RGB components."
msgstr ""
-#: doc/classes/Image.xml:587
+#: doc/classes/Image.xml:596
msgid ""
"Texture format used on PowerVR-supported mobile platforms, uses 2-bit color "
"depth with no alpha. More information can be found [url=https://en.wikipedia."
@@ -24814,25 +25724,25 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:600
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:603
msgid ""
"Similar to [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with 4-"
"bit color depth and no alpha."
msgstr ""
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:606
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:609
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -24840,7 +25750,7 @@ msgid ""
"standard. This format cannot store an alpha channel."
msgstr ""
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:612
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24848,7 +25758,7 @@ msgid ""
"unsigned data."
msgstr ""
-#: doc/classes/Image.xml:606
+#: doc/classes/Image.xml:615
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24856,7 +25766,7 @@ msgid ""
"channel of signed data."
msgstr ""
-#: doc/classes/Image.xml:609
+#: doc/classes/Image.xml:618
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24864,7 +25774,7 @@ msgid ""
"of unsigned data."
msgstr ""
-#: doc/classes/Image.xml:612
+#: doc/classes/Image.xml:621
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24872,7 +25782,7 @@ msgid ""
"channels of signed data."
msgstr ""
-#: doc/classes/Image.xml:615
+#: doc/classes/Image.xml:624
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24882,7 +25792,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:619
+#: doc/classes/Image.xml:628
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24892,7 +25802,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:623
+#: doc/classes/Image.xml:632
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24903,31 +25813,31 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:631
+#: doc/classes/Image.xml:640
msgid "Represents the size of the [enum Format] enum."
msgstr ""
-#: doc/classes/Image.xml:634
+#: doc/classes/Image.xml:643
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
-#: doc/classes/Image.xml:637
+#: doc/classes/Image.xml:646
msgid ""
"Performs bilinear interpolation. If the image is resized, it will be blurry. "
"This mode is faster than [constant INTERPOLATE_CUBIC], but it results in "
"lower quality."
msgstr ""
-#: doc/classes/Image.xml:640
+#: doc/classes/Image.xml:649
msgid ""
"Performs cubic interpolation. If the image is resized, it will be blurry. "
"This mode often gives better results compared to [constant "
"INTERPOLATE_BILINEAR], at the cost of being slower."
msgstr ""
-#: doc/classes/Image.xml:643
+#: doc/classes/Image.xml:652
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -24942,55 +25852,55 @@ msgid ""
"a new set will be generated for the resulting image."
msgstr ""
-#: doc/classes/Image.xml:650
+#: doc/classes/Image.xml:659
msgid ""
"Performs Lanczos interpolation. This is the slowest image resizing mode, but "
"it typically gives the best results, especially when downscalng images."
msgstr ""
-#: doc/classes/Image.xml:653
+#: doc/classes/Image.xml:662
msgid "Image does not have alpha."
msgstr ""
-#: doc/classes/Image.xml:656
+#: doc/classes/Image.xml:665
msgid "Image stores alpha in a single bit."
msgstr ""
-#: doc/classes/Image.xml:659
+#: doc/classes/Image.xml:668
msgid "Image uses alpha."
msgstr ""
-#: doc/classes/Image.xml:662
+#: doc/classes/Image.xml:671
msgid "Use S3TC compression."
msgstr ""
-#: doc/classes/Image.xml:665
+#: doc/classes/Image.xml:674
msgid "Use PVRTC2 compression."
msgstr ""
-#: doc/classes/Image.xml:668
+#: doc/classes/Image.xml:677
msgid "Use PVRTC4 compression."
msgstr ""
-#: doc/classes/Image.xml:671
+#: doc/classes/Image.xml:680
msgid "Use ETC compression."
msgstr ""
-#: doc/classes/Image.xml:674
+#: doc/classes/Image.xml:683
msgid "Use ETC2 compression."
msgstr ""
-#: doc/classes/Image.xml:689
+#: doc/classes/Image.xml:698
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
-#: doc/classes/Image.xml:692
+#: doc/classes/Image.xml:701
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
-#: doc/classes/Image.xml:695
+#: doc/classes/Image.xml:704
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -25809,7 +26719,7 @@ msgid "Contains mouse click information. See [method Node._input]."
msgstr ""
#: doc/classes/InputEventMouseButton.xml:10
-#: doc/classes/InputEventMouseMotion.xml:10
+#: doc/classes/InputEventMouseMotion.xml:11
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/inputs/"
"mouse_and_input_coordinates.html"
@@ -25846,29 +26756,36 @@ msgstr ""
#: doc/classes/InputEventMouseMotion.xml:7
msgid ""
"Contains mouse and pen motion information. Supports relative, absolute "
-"positions and speed. See [method Node._input]."
+"positions and speed. See [method Node._input].\n"
+"[b]Note:[/b] By default, this event is only emitted once per frame rendered "
+"at most. If you need more precise input reporting, call [method Input."
+"set_use_accumulated_input] with [code]false[/code] to make events emitted as "
+"often as possible. If you use InputEventMouseMotion to draw lines, consider "
+"implementing [url=https://en.wikipedia.org/wiki/Bresenham"
+"%27s_line_algorithm]Bresenham's line algorithm[/url] as well to avoid "
+"visible gaps in lines if the user is moving the mouse quickly."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:16
+#: doc/classes/InputEventMouseMotion.xml:17
msgid ""
"Represents the pressure the user puts on the pen. Ranges from [code]0.0[/"
"code] to [code]1.0[/code]."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:19
+#: doc/classes/InputEventMouseMotion.xml:20
msgid ""
"The mouse position relative to the previous position (position at the last "
-"frame). \n"
+"frame).\n"
"[b]Note:[/b] Since [InputEventMouseMotion] is only emitted when the mouse "
"moves, the last event won't have a relative position of [code]Vector2(0, 0)[/"
"code] when the user stops moving the mouse."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:23
+#: doc/classes/InputEventMouseMotion.xml:24
msgid "The mouse speed in pixels per second."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:26
+#: doc/classes/InputEventMouseMotion.xml:27
msgid ""
"Represents the angles of tilt of the pen. Positive X-coordinate value "
"indicates a tilt to the right. Positive Y-coordinate value indicates a tilt "
@@ -26758,14 +27675,17 @@ msgstr ""
#: doc/classes/JSON.xml:18
msgid ""
-"Parses a JSON encoded string and returns a [JSONParseResult] containing the "
+"Parses a JSON-encoded string and returns a [JSONParseResult] containing the "
"result."
msgstr ""
#: doc/classes/JSON.xml:31
msgid ""
"Converts a [Variant] var to JSON text and returns the result. Useful for "
-"serializing data to store or send over the network."
+"serializing data to store or send over the network.\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, converting a Variant to JSON text "
+"will convert all numerical values to [float] types."
msgstr ""
#: doc/classes/JSONParseResult.xml:4
@@ -26788,14 +27708,14 @@ msgstr ""
#: doc/classes/JSONParseResult.xml:18
msgid ""
-"The line number where the error occurred if JSON source was not successfully "
-"parsed."
+"The line number where the error occurred if the JSON source was not "
+"successfully parsed."
msgstr ""
#: doc/classes/JSONParseResult.xml:21
msgid ""
-"The error message if JSON source was not successfully parsed. See the [enum "
-"Error] constants."
+"The error message if the JSON source was not successfully parsed. See the "
+"[enum Error] constants."
msgstr ""
#: doc/classes/JSONParseResult.xml:24
@@ -26803,11 +27723,11 @@ msgid ""
"A [Variant] containing the parsed JSON. Use [method @GDScript.typeof] or the "
"[code]is[/code] keyword to check if it is what you expect. For example, if "
"the JSON source starts with curly braces ([code]{}[/code]), a [Dictionary] "
-"will be returned. If the JSON source starts with braces ([code][][/code]), "
+"will be returned. If the JSON source starts with brackets ([code][][/code]), "
"an [Array] will be returned.\n"
"[b]Note:[/b] The JSON specification does not define integer or float types, "
-"but only a number type. Therefore, parsing a JSON text will convert all "
-"numerical values to float types.\n"
+"but only a [i]number[/i] type. Therefore, parsing a JSON text will convert "
+"all numerical values to [float] types.\n"
"[b]Note:[/b] JSON objects do not preserve key order like Godot dictionaries, "
"thus, you should not rely on keys being in a certain order if a dictionary "
"is constructed from JSON. In contrast, JSON arrays retain the order of their "
@@ -26817,7 +27737,7 @@ msgid ""
"if typeof(p.result) == TYPE_ARRAY:\n"
" print(p.result[0]) # Prints \"hello\"\n"
"else:\n"
-" print(\"unexpected results\")\n"
+" push_error(\"Unexpected results.\")\n"
"[/codeblock]"
msgstr ""
@@ -26933,7 +27853,7 @@ msgid ""
"simulation will run at an incorrect speed.\n"
"[code]linear_velocity[/code] is the velocity vector in pixels per second. "
"Unlike in [method move_and_collide], you should [i]not[/i] multiply it by "
-"[code]delta[/code] — the physics engine handles applying the velocity. \n"
+"[code]delta[/code] — the physics engine handles applying the velocity.\n"
"[code]up_direction[/code] is the up direction, used to determine what is a "
"wall and what is a floor or a ceiling. If set to the default value of "
"[code]Vector2(0, 0)[/code], everything is considered a wall. This is useful "
@@ -27049,7 +27969,7 @@ msgid ""
"[code]linear_velocity[/code] is the velocity vector (typically meters per "
"second). Unlike in [method move_and_collide], you should [i]not[/i] multiply "
"it by [code]delta[/code] — the physics engine handles applying the "
-"velocity. \n"
+"velocity.\n"
"[code]up_direction[/code] is the up direction, used to determine what is a "
"wall and what is a floor or a ceiling. If set to the default value of "
"[code]Vector3(0, 0, 0)[/code], everything is considered a wall.\n"
@@ -27778,17 +28698,6 @@ msgid ""
"[b]Note:[/b] Hiding a light does [i]not[/i] affect baking."
msgstr ""
-#: doc/classes/Light3D.xml:152
-msgid "Only indirect lighting will be baked (default)."
-msgstr ""
-
-#: doc/classes/Light3D.xml:155
-msgid ""
-"Both direct and indirect light will be baked.\n"
-"[b]Note:[/b] You should hide the light if you don't want it to appear twice "
-"(dynamic and baked)."
-msgstr ""
-
#: doc/classes/LightOccluder2D.xml:4
msgid "Occludes light cast by a Light2D, casting shadows."
msgstr ""
@@ -28067,136 +28976,142 @@ msgstr ""
msgid "Text alignment as defined in the [enum Align] enum."
msgstr ""
-#: doc/classes/LineEdit.xml:120 doc/classes/TextEdit.xml:406
+#: doc/classes/LineEdit.xml:120 doc/classes/TextEdit.xml:358
msgid "If [code]true[/code], the caret (visual cursor) blinks."
msgstr ""
-#: doc/classes/LineEdit.xml:123 doc/classes/TextEdit.xml:409
+#: doc/classes/LineEdit.xml:123 doc/classes/TextEdit.xml:361
msgid "Duration (in seconds) of a caret's blinking cycle."
msgstr ""
-#: doc/classes/LineEdit.xml:126
+#: doc/classes/LineEdit.xml:128
msgid ""
"The cursor's position inside the [LineEdit]. When set, the text may scroll "
"to accommodate it."
msgstr ""
-#: doc/classes/LineEdit.xml:129
+#: doc/classes/LineEdit.xml:131
msgid ""
"If [code]true[/code], the [LineEdit] will show a clear button if [code]text[/"
"code] is not empty, which can be used to clear the text quickly."
msgstr ""
-#: doc/classes/LineEdit.xml:132
+#: doc/classes/LineEdit.xml:134
msgid "If [code]true[/code], the context menu will appear when right-clicked."
msgstr ""
-#: doc/classes/LineEdit.xml:135
+#: doc/classes/LineEdit.xml:137
msgid ""
"If [code]false[/code], existing text cannot be modified and new text cannot "
"be added."
msgstr ""
-#: doc/classes/LineEdit.xml:138
+#: doc/classes/LineEdit.xml:140
msgid ""
"If [code]true[/code], the [LineEdit] width will increase to stay longer than "
"the [member text]. It will [b]not[/b] compress if the [member text] is "
"shortened."
msgstr ""
-#: doc/classes/LineEdit.xml:142
+#: doc/classes/LineEdit.xml:144
msgid ""
"Maximum amount of characters that can be entered inside the [LineEdit]. If "
"[code]0[/code], there is no limit."
msgstr ""
-#: doc/classes/LineEdit.xml:146
+#: doc/classes/LineEdit.xml:148
msgid ""
"Opacity of the [member placeholder_text]. From [code]0[/code] to [code]1[/"
"code]."
msgstr ""
-#: doc/classes/LineEdit.xml:149
+#: doc/classes/LineEdit.xml:151
msgid ""
"Text shown when the [LineEdit] is empty. It is [b]not[/b] the [LineEdit]'s "
"default value (see [member text])."
msgstr ""
-#: doc/classes/LineEdit.xml:152
+#: doc/classes/LineEdit.xml:154
msgid ""
"Sets the icon that will appear in the right end of the [LineEdit] if there's "
"no [member text], or always, if [member clear_button_enabled] is set to "
"[code]false[/code]."
msgstr ""
-#: doc/classes/LineEdit.xml:155
+#: doc/classes/LineEdit.xml:157
msgid ""
"If [code]true[/code], every character is replaced with the secret character "
"(see [member secret_character])."
msgstr ""
-#: doc/classes/LineEdit.xml:158
+#: doc/classes/LineEdit.xml:160
msgid ""
"The character to use to mask secret input (defaults to \"*\"). Only a single "
"character can be used as the secret character."
msgstr ""
-#: doc/classes/LineEdit.xml:161
+#: doc/classes/LineEdit.xml:163
msgid ""
"If [code]false[/code], it's impossible to select the text using mouse nor "
"keyboard."
msgstr ""
-#: doc/classes/LineEdit.xml:164
+#: doc/classes/LineEdit.xml:166
msgid "If [code]false[/code], using shortcuts will be disabled."
msgstr ""
-#: doc/classes/LineEdit.xml:167
+#: doc/classes/LineEdit.xml:169
msgid ""
"String value of the [LineEdit].\n"
"[b]Note:[/b] Changing text using this property won't emit the [signal "
"text_changed] signal."
msgstr ""
-#: doc/classes/LineEdit.xml:174
+#: doc/classes/LineEdit.xml:173 doc/classes/TextEdit.xml:434
+msgid ""
+"If [code]true[/code], the native virtual keyboard is shown when focused on "
+"platforms that support it."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:179
msgid ""
"Emitted when trying to append text that would overflow the [member "
"max_length]."
msgstr ""
-#: doc/classes/LineEdit.xml:181 doc/classes/TextEdit.xml:525
+#: doc/classes/LineEdit.xml:186 doc/classes/TextEdit.xml:490
msgid "Emitted when the text changes."
msgstr ""
-#: doc/classes/LineEdit.xml:188
+#: doc/classes/LineEdit.xml:193
msgid "Emitted when the user presses [constant KEY_ENTER] on the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:194
+#: doc/classes/LineEdit.xml:199
msgid "Aligns the text on the left-hand side of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:197
+#: doc/classes/LineEdit.xml:202
msgid "Centers the text in the middle of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:200
+#: doc/classes/LineEdit.xml:205
msgid "Aligns the text on the right-hand side of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:203
+#: doc/classes/LineEdit.xml:208
msgid "Stretches whitespaces to fit the [LineEdit]'s width."
msgstr ""
-#: doc/classes/LineEdit.xml:206 doc/classes/TextEdit.xml:540
+#: doc/classes/LineEdit.xml:211 doc/classes/TextEdit.xml:505
msgid "Cuts (copies and clears) the selected text."
msgstr ""
-#: doc/classes/LineEdit.xml:209 doc/classes/TextEdit.xml:543
+#: doc/classes/LineEdit.xml:214 doc/classes/TextEdit.xml:508
msgid "Copies the selected text."
msgstr ""
-#: doc/classes/LineEdit.xml:212
+#: doc/classes/LineEdit.xml:217
msgid ""
"Pastes the clipboard text over the selected text (or at the cursor's "
"position).\n"
@@ -28204,80 +29119,80 @@ msgid ""
"clipboard via [method String.strip_escapes]."
msgstr ""
-#: doc/classes/LineEdit.xml:216
+#: doc/classes/LineEdit.xml:221
msgid "Erases the whole [LineEdit] text."
msgstr ""
-#: doc/classes/LineEdit.xml:219
+#: doc/classes/LineEdit.xml:224
msgid "Selects the whole [LineEdit] text."
msgstr ""
-#: doc/classes/LineEdit.xml:222 doc/classes/TextEdit.xml:555
+#: doc/classes/LineEdit.xml:227 doc/classes/TextEdit.xml:520
msgid "Undoes the previous action."
msgstr ""
-#: doc/classes/LineEdit.xml:225
+#: doc/classes/LineEdit.xml:230
msgid "Reverse the last undo action."
msgstr ""
-#: doc/classes/LineEdit.xml:228 doc/classes/TextEdit.xml:561
+#: doc/classes/LineEdit.xml:233 doc/classes/TextEdit.xml:526
msgid "Represents the size of the [enum MenuItems] enum."
msgstr ""
-#: doc/classes/LineEdit.xml:233
+#: doc/classes/LineEdit.xml:238
msgid "Texture for the clear button. See [member clear_button_enabled]."
msgstr ""
-#: doc/classes/LineEdit.xml:236
+#: doc/classes/LineEdit.xml:241
msgid "Color used as default tint for the clear button."
msgstr ""
-#: doc/classes/LineEdit.xml:239
+#: doc/classes/LineEdit.xml:244
msgid "Color used for the clear button when it's pressed."
msgstr ""
-#: doc/classes/LineEdit.xml:242
+#: doc/classes/LineEdit.xml:247
msgid "Color of the [LineEdit]'s visual cursor (caret)."
msgstr ""
-#: doc/classes/LineEdit.xml:245
+#: doc/classes/LineEdit.xml:250
msgid "Background used when [LineEdit] has GUI focus."
msgstr ""
-#: doc/classes/LineEdit.xml:248
+#: doc/classes/LineEdit.xml:253
msgid "Font used for the text."
msgstr ""
-#: doc/classes/LineEdit.xml:251
+#: doc/classes/LineEdit.xml:256
msgid "Default font color."
msgstr ""
-#: doc/classes/LineEdit.xml:254
+#: doc/classes/LineEdit.xml:259
msgid "Font color for selected text (inside the selection rectangle)."
msgstr ""
-#: doc/classes/LineEdit.xml:257
+#: doc/classes/LineEdit.xml:262
msgid "Font color when editing is disabled."
msgstr ""
-#: doc/classes/LineEdit.xml:260
+#: doc/classes/LineEdit.xml:265
msgid ""
"Minimum horizontal space for the text (not counting the clear button and "
"content margins). This value is measured in count of space characters (i.e. "
"this amount of space characters can be displayed without scrolling)."
msgstr ""
-#: doc/classes/LineEdit.xml:263
+#: doc/classes/LineEdit.xml:268
msgid "Default background for the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:266
+#: doc/classes/LineEdit.xml:271
msgid ""
"Background used when [LineEdit] is in read-only mode ([member editable] is "
"set to [code]false[/code])."
msgstr ""
-#: doc/classes/LineEdit.xml:269
+#: doc/classes/LineEdit.xml:274
msgid "Color of the selection rectangle."
msgstr ""
@@ -28495,14 +29410,14 @@ msgstr ""
msgid "Emitted when a user responds to a permission request."
msgstr ""
-#: doc/classes/MainLoop.xml:127 doc/classes/Node.xml:948
+#: doc/classes/MainLoop.xml:127 doc/classes/Node.xml:946
msgid ""
"Notification received from the OS when the application is exceeding its "
"allocated memory.\n"
"Specific to the iOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:131 doc/classes/Node.xml:952
+#: doc/classes/MainLoop.xml:131 doc/classes/Node.xml:950
msgid ""
"Notification received when translations may have changed. Can be triggered "
"by the user changing the locale. Can be used to respond to language changes, "
@@ -28510,39 +29425,55 @@ msgid ""
"the built-in translation support, like [method Object.tr]."
msgstr ""
-#: doc/classes/MainLoop.xml:134 doc/classes/Node.xml:955
+#: doc/classes/MainLoop.xml:134 doc/classes/Node.xml:953
msgid ""
"Notification received from the OS when a request for \"About\" information "
"is sent.\n"
"Specific to the macOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:138 doc/classes/Node.xml:959
+#: doc/classes/MainLoop.xml:138 doc/classes/Node.xml:957
msgid ""
"Notification received from Godot's crash handler when the engine is about to "
"crash.\n"
"Implemented on desktop platforms if the crash handler is enabled."
msgstr ""
-#: doc/classes/MainLoop.xml:142 doc/classes/Node.xml:963
+#: doc/classes/MainLoop.xml:142 doc/classes/Node.xml:961
msgid ""
"Notification received from the OS when an update of the Input Method Engine "
"occurs (e.g. change of IME cursor position or composition string).\n"
"Specific to the macOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:146 doc/classes/Node.xml:967
+#: doc/classes/MainLoop.xml:146 doc/classes/Node.xml:965
msgid ""
-"Notification received from the OS when the app is resumed.\n"
+"Notification received from the OS when the application is resumed.\n"
"Specific to the Android platform."
msgstr ""
-#: doc/classes/MainLoop.xml:150 doc/classes/Node.xml:971
+#: doc/classes/MainLoop.xml:150 doc/classes/Node.xml:969
msgid ""
-"Notification received from the OS when the app is paused.\n"
+"Notification received from the OS when the application is paused.\n"
"Specific to the Android platform."
msgstr ""
+#: doc/classes/MainLoop.xml:154 doc/classes/Node.xml:973
+msgid ""
+"Notification received from the OS when the application is focused, i.e. when "
+"changing the focus from the OS desktop or a thirdparty application to any "
+"open window of the Godot instance.\n"
+"Implemented on desktop platforms."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:158 doc/classes/Node.xml:977
+msgid ""
+"Notification received from the OS when the application is defocused, i.e. "
+"when changing the focus from any open window of the Godot instance to the OS "
+"desktop or a thirdparty application.\n"
+"Implemented on desktop platforms."
+msgstr ""
+
#: doc/classes/MarginContainer.xml:4
msgid "Simple margin container."
msgstr ""
@@ -28850,11 +29781,11 @@ msgstr ""
msgid "Render array as triangle strips."
msgstr ""
-#: doc/classes/Mesh.xml:126 doc/classes/RenderingServer.xml:3189
+#: doc/classes/Mesh.xml:126 doc/classes/RenderingServer.xml:3185
msgid "Blend shapes are normalized."
msgstr ""
-#: doc/classes/Mesh.xml:129 doc/classes/RenderingServer.xml:3192
+#: doc/classes/Mesh.xml:129 doc/classes/RenderingServer.xml:3188
msgid "Blend shapes are relative to base weight."
msgstr ""
@@ -28896,37 +29827,37 @@ msgstr ""
msgid "Mesh array uses indices."
msgstr ""
-#: doc/classes/Mesh.xml:159 doc/classes/RenderingServer.xml:3145
+#: doc/classes/Mesh.xml:159 doc/classes/RenderingServer.xml:3141
msgid "Flag used to mark a compressed (half float) normal array."
msgstr ""
-#: doc/classes/Mesh.xml:162 doc/classes/RenderingServer.xml:3148
+#: doc/classes/Mesh.xml:162 doc/classes/RenderingServer.xml:3144
msgid "Flag used to mark a compressed (half float) tangent array."
msgstr ""
-#: doc/classes/Mesh.xml:165 doc/classes/RenderingServer.xml:3151
+#: doc/classes/Mesh.xml:165 doc/classes/RenderingServer.xml:3147
msgid "Flag used to mark a compressed (half float) color array."
msgstr ""
-#: doc/classes/Mesh.xml:168 doc/classes/RenderingServer.xml:3154
+#: doc/classes/Mesh.xml:168 doc/classes/RenderingServer.xml:3150
msgid "Flag used to mark a compressed (half float) UV coordinates array."
msgstr ""
-#: doc/classes/Mesh.xml:171 doc/classes/RenderingServer.xml:3157
+#: doc/classes/Mesh.xml:171 doc/classes/RenderingServer.xml:3153
msgid ""
"Flag used to mark a compressed (half float) UV coordinates array for the "
"second UV coordinates."
msgstr ""
-#: doc/classes/Mesh.xml:174 doc/classes/RenderingServer.xml:3160
+#: doc/classes/Mesh.xml:174 doc/classes/RenderingServer.xml:3156
msgid "Flag used to mark a compressed index array."
msgstr ""
-#: doc/classes/Mesh.xml:177 doc/classes/RenderingServer.xml:3166
+#: doc/classes/Mesh.xml:177 doc/classes/RenderingServer.xml:3162
msgid "Flag used to mark that the array contains 2D vertices."
msgstr ""
-#: doc/classes/Mesh.xml:180 doc/classes/RenderingServer.xml:3163
+#: doc/classes/Mesh.xml:180 doc/classes/RenderingServer.xml:3159
msgid ""
"Used to set flags [constant ARRAY_COMPRESS_NORMAL], [constant "
"ARRAY_COMPRESS_TANGENT], [constant ARRAY_COMPRESS_COLOR], [constant "
@@ -30687,7 +31618,10 @@ msgstr ""
msgid ""
"The number of channels to be used by ENet. Channels are used to separate "
"different kinds of data. In reliable or ordered mode, for example, the "
-"packet delivery order is ensured on a per channel basis."
+"packet delivery order is ensured on a per-channel basis. This is done to "
+"combat latency and reduces ordering restrictions on packets. The delivery "
+"status of a packet in one channel won't stall the delivery of other packets "
+"in another channel."
msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:134
@@ -30714,11 +31648,12 @@ msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:144
msgid ""
"Set the default channel to be used to transfer data. By default, this value "
-"is [code]-1[/code] which means that ENet will only use 2 channels, one for "
-"reliable and one for unreliable packets. Channel [code]0[/code] is reserved, "
-"and cannot be used. Setting this member to any value between [code]0[/code] "
-"and [member channel_count] (excluded) will force ENet to use that channel "
-"for sending data."
+"is [code]-1[/code] which means that ENet will only use 2 channels: one for "
+"reliable packets, and one for unreliable packets. The channel [code]0[/code] "
+"is reserved and cannot be used. Setting this member to any value between "
+"[code]0[/code] and [member channel_count] (excluded) will force ENet to use "
+"that channel for sending data. See [member channel_count] for more "
+"information about ENet channels."
msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:148
@@ -31910,57 +32845,63 @@ msgstr ""
#: doc/classes/Node.xml:930
msgid ""
-"Notification received from the OS when the game window is focused.\n"
-"Implemented on all platforms."
+"Notification received from the OS when the node's parent [Window] is "
+"focused. This may be a change of focus between two windows of the same "
+"engine instance, or from the OS desktop or a third-party application to a "
+"window of the game (in which case [constant "
+"NOTIFICATION_APPLICATION_FOCUS_IN] is also emitted)."
msgstr ""
-#: doc/classes/Node.xml:934
+#: doc/classes/Node.xml:933
msgid ""
-"Notification received from the OS when the game window is unfocused.\n"
-"Implemented on all platforms."
+"Notification received from the OS when the node's parent [Window] is "
+"defocused. This may be a change of focus between two windows of the same "
+"engine instance, or from a window of the game to the OS desktop or a third-"
+"party application (in which case [constant "
+"NOTIFICATION_APPLICATION_FOCUS_OUT] is also emitted)."
msgstr ""
-#: doc/classes/Node.xml:938
+#: doc/classes/Node.xml:936
msgid ""
"Notification received from the OS when a close request is sent (e.g. closing "
"the window with a \"Close\" button or [kbd]Alt + F4[/kbd]).\n"
"Implemented on desktop platforms."
msgstr ""
-#: doc/classes/Node.xml:942
+#: doc/classes/Node.xml:940
msgid ""
"Notification received from the OS when a go back request is sent (e.g. "
"pressing the \"Back\" button on Android).\n"
"Specific to the Android platform."
msgstr ""
-#: doc/classes/Node.xml:975
+#: doc/classes/Node.xml:981
msgid ""
"Inherits pause mode from the node's parent. For the root node, it is "
"equivalent to [constant PAUSE_MODE_STOP]. Default."
msgstr ""
-#: doc/classes/Node.xml:978
+#: doc/classes/Node.xml:984
msgid "Stops processing when the [SceneTree] is paused."
msgstr ""
-#: doc/classes/Node.xml:981
+#: doc/classes/Node.xml:987
msgid "Continue to process regardless of the [SceneTree] pause state."
msgstr ""
-#: doc/classes/Node.xml:984
+#: doc/classes/Node.xml:990
msgid "Duplicate the node's signals."
msgstr ""
-#: doc/classes/Node.xml:987
+#: doc/classes/Node.xml:993
msgid "Duplicate the node's groups."
msgstr ""
-#: doc/classes/Node.xml:990
+#: doc/classes/Node.xml:996
msgid "Duplicate the node's scripts."
msgstr ""
-#: doc/classes/Node.xml:993
+#: doc/classes/Node.xml:999
msgid ""
"Duplicate using instancing.\n"
"An instance stays linked to the original so when the original changes, the "
@@ -32184,12 +33125,6 @@ msgid ""
"changes. [Node3D] will not propagate this by default."
msgstr ""
-#: doc/classes/Node3D.xml:104
-msgid ""
-"Returns whether the node is visible, taking into consideration that its "
-"parents visibility."
-msgstr ""
-
#: doc/classes/Node3D.xml:115
msgid ""
"Rotates itself so that the local -Z axis points towards the [code]target[/"
@@ -32359,7 +33294,10 @@ msgid "Local translation of this node."
msgstr ""
#: doc/classes/Node3D.xml:326
-msgid "If [code]true[/code], this node is drawn."
+msgid ""
+"If [code]true[/code], this node is drawn. The node is only visible if all of "
+"its antecedents are visible as well (in other words, [method "
+"is_visible_in_tree] must return [code]true[/code])."
msgstr ""
#: doc/classes/Node3D.xml:332
@@ -32616,10 +33554,20 @@ msgid ""
"the key exists, even if the value is [code]null[/code].\n"
"Objects also receive notifications. Notifications are a simple way to notify "
"the object about different events, so they can all be handled together. See "
-"[method _notification]."
+"[method _notification].\n"
+"[b]Note:[/b] Unlike references to a [Reference], references to an Object "
+"stored in a variable can become invalid without warning. Therefore, it's "
+"recommended to use [Reference] for data classes instead of [Object]."
+msgstr ""
+
+#: doc/classes/Object.xml:23 doc/classes/Reference.xml:12
+#: doc/classes/Resource.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/getting_started/workflow/"
+"best_practices/node_alternatives.html"
msgstr ""
-#: doc/classes/Object.xml:30
+#: doc/classes/Object.xml:32
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method get].\n"
@@ -32627,7 +33575,7 @@ msgid ""
"code] does not exist."
msgstr ""
-#: doc/classes/Object.xml:38
+#: doc/classes/Object.xml:40
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method get_property_list].\n"
@@ -32639,11 +33587,11 @@ msgid ""
"PropertyUsageFlags])."
msgstr ""
-#: doc/classes/Object.xml:47
+#: doc/classes/Object.xml:49
msgid "Called when the object is initialized."
msgstr ""
-#: doc/classes/Object.xml:56
+#: doc/classes/Object.xml:58
msgid ""
"Called whenever the object receives a notification, which is identified in "
"[code]what[/code] by a constant. The base [Object] has two constants "
@@ -32652,7 +33600,7 @@ msgid ""
"notifications which are also received by this method."
msgstr ""
-#: doc/classes/Object.xml:67
+#: doc/classes/Object.xml:69
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method set].\n"
@@ -32660,7 +33608,7 @@ msgid ""
"exists."
msgstr ""
-#: doc/classes/Object.xml:75
+#: doc/classes/Object.xml:77
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method to_string], and thus the object's representation where it is "
@@ -32669,34 +33617,42 @@ msgid ""
"[code]\"[ClassName:RID]\"[/code]."
msgstr ""
-#: doc/classes/Object.xml:87
+#: doc/classes/Object.xml:89
msgid ""
"Adds a user-defined [code]signal[/code]. Arguments are optional, but can be "
"added as an [Array] of dictionaries, each containing [code]name: String[/"
"code] and [code]type: int[/code] (see [enum Variant.Type]) entries."
msgstr ""
-#: doc/classes/Object.xml:96
+#: doc/classes/Object.xml:98
msgid ""
"Calls the [code]method[/code] on the object and returns the result. This "
"method supports a variable number of arguments, so parameters are passed as "
"a comma separated list. Example:\n"
"[codeblock]\n"
"call(\"set\", \"position\", Vector2(42.0, 0.0))\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] In C#, the method name must be specified as snake_case if it is "
+"defined by a built-in Godot node. This doesn't apply to user-defined methods "
+"where you should use the same convention as in the C# source (typically "
+"PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:108
+#: doc/classes/Object.xml:111
msgid ""
"Calls the [code]method[/code] on the object during idle time. This method "
"supports a variable number of arguments, so parameters are passed as a comma "
"separated list. Example:\n"
"[codeblock]\n"
"call_deferred(\"set\", \"position\", Vector2(42.0, 0.0))\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] In C#, the method name must be specified as snake_case if it is "
+"defined by a built-in Godot node. This doesn't apply to user-defined methods "
+"where you should use the same convention as in the C# source (typically "
+"PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:122
+#: doc/classes/Object.xml:126
msgid ""
"Calls the [code]method[/code] on the object and returns the result. "
"Contrarily to [method call], this method does not support a variable number "
@@ -32706,13 +33662,13 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:132
+#: doc/classes/Object.xml:136
msgid ""
"Returns [code]true[/code] if the object can translate strings. See [method "
"set_message_translation] and [method tr]."
msgstr ""
-#: doc/classes/Object.xml:147
+#: doc/classes/Object.xml:151
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32748,7 +33704,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:174
+#: doc/classes/Object.xml:178
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32759,7 +33715,7 @@ msgid ""
"exists."
msgstr ""
-#: doc/classes/Object.xml:185
+#: doc/classes/Object.xml:189
msgid ""
"Emits the given [code]signal[/code]. The signal must exist, so it should be "
"a built-in signal of this class or one of its parent classes, or a user-"
@@ -32771,24 +33727,28 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:196
+#: doc/classes/Object.xml:200
msgid ""
"Deletes the object from memory. Any pre-existing reference to the freed "
"object will become invalid, e.g. [code]is_instance_valid(object)[/code] will "
"return [code]false[/code]."
msgstr ""
-#: doc/classes/Object.xml:205
+#: doc/classes/Object.xml:209
msgid ""
"Returns the [Variant] value of the given [code]property[/code]. If the "
-"[code]property[/code] doesn't exist, this will return [code]null[/code]."
+"[code]property[/code] doesn't exist, this will return [code]null[/code].\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:212
+#: doc/classes/Object.xml:217
msgid "Returns the object's class as a [String]."
msgstr ""
-#: doc/classes/Object.xml:219
+#: doc/classes/Object.xml:224
msgid ""
"Returns an [Array] of dictionaries with information about signals that are "
"connected to the object.\n"
@@ -32799,7 +33759,7 @@ msgid ""
"connected."
msgstr ""
-#: doc/classes/Object.xml:232
+#: doc/classes/Object.xml:237
msgid ""
"Gets the object's property indexed by the given [NodePath]. The node path "
"should be relative to the current object and can use the colon character "
@@ -32807,26 +33767,26 @@ msgid ""
"\"[/code] or [code]\"material:next_pass:blend_mode\"[/code]."
msgstr ""
-#: doc/classes/Object.xml:239
+#: doc/classes/Object.xml:244
msgid ""
"Returns the object's unique instance ID.\n"
"This ID can be saved in [EncodedObjectAsID], and can be used to retrieve the "
"object instance with [method @GDScript.instance_from_id]."
msgstr ""
-#: doc/classes/Object.xml:249
+#: doc/classes/Object.xml:254
msgid "Returns the object's metadata entry for the given [code]name[/code]."
msgstr ""
-#: doc/classes/Object.xml:256
+#: doc/classes/Object.xml:261
msgid "Returns the object's metadata as a [PackedStringArray]."
msgstr ""
-#: doc/classes/Object.xml:263
+#: doc/classes/Object.xml:268
msgid "Returns the object's methods and their signatures as an [Array]."
msgstr ""
-#: doc/classes/Object.xml:270
+#: doc/classes/Object.xml:275
msgid ""
"Returns the object's property list as an [Array] of dictionaries.\n"
"Each property's [Dictionary] contain at least [code]name: String[/code] and "
@@ -32836,54 +33796,54 @@ msgid ""
"PropertyUsageFlags])."
msgstr ""
-#: doc/classes/Object.xml:278
+#: doc/classes/Object.xml:283
msgid ""
"Returns the object's [Script] instance, or [code]null[/code] if none is "
"assigned."
msgstr ""
-#: doc/classes/Object.xml:287
+#: doc/classes/Object.xml:292
msgid "Returns an [Array] of connections for the given [code]signal[/code]."
msgstr ""
-#: doc/classes/Object.xml:294
+#: doc/classes/Object.xml:299
msgid "Returns the list of signals as an [Array] of dictionaries."
msgstr ""
-#: doc/classes/Object.xml:303
+#: doc/classes/Object.xml:308
msgid ""
"Returns [code]true[/code] if a metadata entry is found with the given "
"[code]name[/code]."
msgstr ""
-#: doc/classes/Object.xml:312
+#: doc/classes/Object.xml:317
msgid ""
"Returns [code]true[/code] if the object contains the given [code]method[/"
"code]."
msgstr ""
-#: doc/classes/Object.xml:321
+#: doc/classes/Object.xml:326
msgid "Returns [code]true[/code] if the given [code]signal[/code] exists."
msgstr ""
-#: doc/classes/Object.xml:330
+#: doc/classes/Object.xml:335
msgid ""
"Returns [code]true[/code] if the given user-defined [code]signal[/code] "
"exists. Only signals added using [method add_user_signal] are taken into "
"account."
msgstr ""
-#: doc/classes/Object.xml:337
+#: doc/classes/Object.xml:342
msgid "Returns [code]true[/code] if signal emission blocking is enabled."
msgstr ""
-#: doc/classes/Object.xml:346
+#: doc/classes/Object.xml:351
msgid ""
"Returns [code]true[/code] if the object inherits from the given [code]class[/"
"code]."
msgstr ""
-#: doc/classes/Object.xml:357
+#: doc/classes/Object.xml:362
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32891,13 +33851,13 @@ msgid ""
"code], [code]target[/code], and [code]method[/code]."
msgstr ""
-#: doc/classes/Object.xml:365
+#: doc/classes/Object.xml:370
msgid ""
"Returns [code]true[/code] if the [method Node.queue_free] method was called "
"for the object."
msgstr ""
-#: doc/classes/Object.xml:376
+#: doc/classes/Object.xml:381
msgid ""
"Send a given notification to the object, which will also trigger a call to "
"the [method _notification] method of all classes that the object inherits "
@@ -32909,34 +33869,42 @@ msgid ""
"and then down to its successive inheriting classes."
msgstr ""
-#: doc/classes/Object.xml:384
+#: doc/classes/Object.xml:389
msgid ""
"Notify the editor that the property list has changed, so that editor plugins "
"can take the new values into account. Does nothing on export builds."
msgstr ""
-#: doc/classes/Object.xml:393
+#: doc/classes/Object.xml:398
msgid "Removes a given entry from the object's metadata."
msgstr ""
-#: doc/classes/Object.xml:404
+#: doc/classes/Object.xml:409
msgid ""
"Assigns a new value to the given property. If the [code]property[/code] does "
-"not exist, nothing will happen."
+"not exist, nothing will happen.\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:413
+#: doc/classes/Object.xml:419
msgid "If set to [code]true[/code], signal emission is blocked."
msgstr ""
-#: doc/classes/Object.xml:424
+#: doc/classes/Object.xml:430
msgid ""
"Assigns a new value to the given property, after the current frame's physics "
"step. This is equivalent to calling [method set] via [method call_deferred], "
-"i.e. [code]call_deferred(\"set\", property, value)[/code]."
+"i.e. [code]call_deferred(\"set\", property, value)[/code].\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:435
+#: doc/classes/Object.xml:442
msgid ""
"Assigns a new value to the property identified by the [NodePath]. The node "
"path should be relative to the current object and can use the colon "
@@ -32948,19 +33916,19 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:449
+#: doc/classes/Object.xml:456
msgid ""
"Defines whether the object can translate strings (with calls to [method "
"tr]). Enabled by default."
msgstr ""
-#: doc/classes/Object.xml:460
+#: doc/classes/Object.xml:467
msgid ""
"Adds or changes a given entry in the object's metadata. Metadata are "
"serialized, and can take any [Variant] value."
msgstr ""
-#: doc/classes/Object.xml:469
+#: doc/classes/Object.xml:476
msgid ""
"Assigns a script to the object. Each object can have a single script "
"assigned to it, which are used to extend its functionality.\n"
@@ -32969,7 +33937,7 @@ msgid ""
"_init] method will be called."
msgstr ""
-#: doc/classes/Object.xml:477
+#: doc/classes/Object.xml:484
msgid ""
"Returns a [String] representing the object. If not overridden, defaults to "
"[code]\"[ClassName:RID]\"[/code].\n"
@@ -32977,7 +33945,7 @@ msgid ""
"representation."
msgstr ""
-#: doc/classes/Object.xml:487
+#: doc/classes/Object.xml:494
msgid ""
"Translates a message using translation catalogs configured in the Project "
"Settings.\n"
@@ -32986,35 +33954,35 @@ msgid ""
"set_message_translation]."
msgstr ""
-#: doc/classes/Object.xml:495
+#: doc/classes/Object.xml:502
msgid "Emitted whenever the object's script is changed."
msgstr ""
-#: doc/classes/Object.xml:501
+#: doc/classes/Object.xml:508
msgid "Called right when the object is initialized. Not available in script."
msgstr ""
-#: doc/classes/Object.xml:504
+#: doc/classes/Object.xml:511
msgid "Called before the object is about to be deleted."
msgstr ""
-#: doc/classes/Object.xml:507
+#: doc/classes/Object.xml:514
msgid ""
"Connects a signal in deferred mode. This way, signal emissions are stored in "
"a queue, then set on idle time."
msgstr ""
-#: doc/classes/Object.xml:510
+#: doc/classes/Object.xml:517
msgid "Persisting connections are saved when the object is serialized to file."
msgstr ""
-#: doc/classes/Object.xml:513
+#: doc/classes/Object.xml:520
msgid "One-shot connections disconnect themselves after emission."
msgstr ""
-#: doc/classes/Object.xml:516
+#: doc/classes/Object.xml:523
msgid ""
-"Connect a signal as reference counted. This means that a given signal can be "
+"Connect a signal as reference-counted. This means that a given signal can be "
"connected several times to the same target, and will only be fully "
"disconnected once no references are left."
msgstr ""
@@ -33479,10 +34447,29 @@ msgid "Returns the keycode of the given string (e.g. \"Escape\")."
msgstr ""
#: doc/classes/OS.xml:115
-msgid "Returns the command line arguments passed to the engine."
+msgid ""
+"Returns the command-line arguments passed to the engine.\n"
+"Command-line arguments can be written in any form, including both [code]--"
+"key value[/code] and [code]--key=value[/code] forms so they can be properly "
+"parsed, as long as custom command-line arguments do not conflict with engine "
+"arguments.\n"
+"You can also incorporate environment variables using the [method "
+"get_environment] method.\n"
+"You can set [code]editor/main_run_args[/code] in the Project Settings to "
+"define command-line arguments to be passed by the editor when running the "
+"project.\n"
+"Here's a minimal example on how to parse command-line arguments into a "
+"dictionary using the [code]--key=value[/code] form for arguments:\n"
+"[codeblock]\n"
+"var arguments = {}\n"
+"for argument in OS.get_cmdline_args():\n"
+" if argument.find(\"=\") > -1:\n"
+" var key_value = argument.split(\"=\")\n"
+" arguments[key_value[0].lstrip(\"--\")] = key_value[1]\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/OS.xml:122
+#: doc/classes/OS.xml:133
msgid ""
"Returns an array of MIDI device names.\n"
"The returned array will be empty if the system MIDI driver has not "
@@ -33490,14 +34477,14 @@ msgid ""
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:133
+#: doc/classes/OS.xml:144
msgid ""
"Returns current date as a dictionary of keys: [code]year[/code], "
"[code]month[/code], [code]day[/code], [code]weekday[/code], [code]dst[/code] "
"(Daylight Savings Time)."
msgstr ""
-#: doc/classes/OS.xml:142
+#: doc/classes/OS.xml:153
msgid ""
"Returns current datetime as a dictionary of keys: [code]year[/code], "
"[code]month[/code], [code]day[/code], [code]weekday[/code], [code]dst[/code] "
@@ -33505,7 +34492,7 @@ msgid ""
"[code]second[/code]."
msgstr ""
-#: doc/classes/OS.xml:151
+#: doc/classes/OS.xml:162
msgid ""
"Gets a dictionary of time values corresponding to the given UNIX epoch time "
"(in seconds).\n"
@@ -33514,22 +34501,22 @@ msgid ""
"the epoch."
msgstr ""
-#: doc/classes/OS.xml:161
+#: doc/classes/OS.xml:172
msgid "Returns an environment variable."
msgstr ""
-#: doc/classes/OS.xml:168
+#: doc/classes/OS.xml:179
msgid "Returns the path to the current engine executable."
msgstr ""
-#: doc/classes/OS.xml:175
+#: doc/classes/OS.xml:186
msgid ""
"With this function you can get the list of dangerous permissions that have "
"been granted to the Android application.\n"
"[b]Note:[/b] This method is implemented on Android."
msgstr ""
-#: doc/classes/OS.xml:185
+#: doc/classes/OS.xml:196
msgid ""
"Returns the given keycode as a string (e.g. Return values: [code]\"Escape\"[/"
"code], [code]\"Shift+Escape\"[/code]).\n"
@@ -33537,18 +34524,18 @@ msgid ""
"get_keycode_with_modifiers]."
msgstr ""
-#: doc/classes/OS.xml:193
+#: doc/classes/OS.xml:204
msgid "Returns the host OS locale."
msgstr ""
-#: doc/classes/OS.xml:200
+#: doc/classes/OS.xml:211
msgid ""
"Returns the model name of the current device.\n"
"[b]Note:[/b] This method is implemented on Android and iOS. Returns "
"[code]\"GenericDevice\"[/code] on unsupported platforms."
msgstr ""
-#: doc/classes/OS.xml:208
+#: doc/classes/OS.xml:219
msgid ""
"Returns the name of the host OS. Possible values are: [code]\"Android\"[/"
"code], [code]\"iOS\"[/code], [code]\"HTML5\"[/code], [code]\"OSX\"[/code], "
@@ -33556,81 +34543,81 @@ msgid ""
"[code]\"X11\"[/code]."
msgstr ""
-#: doc/classes/OS.xml:215
+#: doc/classes/OS.xml:226
msgid ""
"Returns the project's process ID.\n"
"[b]Note:[/b] This method is implemented on Android, iOS, Linux, macOS and "
"Windows."
msgstr ""
-#: doc/classes/OS.xml:223
+#: doc/classes/OS.xml:234
msgid "Returns the number of threads available on the host machine."
msgstr ""
-#: doc/classes/OS.xml:230
+#: doc/classes/OS.xml:241
msgid ""
"Returns the amount of time in milliseconds it took for the boot logo to "
"appear."
msgstr ""
-#: doc/classes/OS.xml:237
+#: doc/classes/OS.xml:248
msgid "Returns the maximum amount of static memory used (only works in debug)."
msgstr ""
-#: doc/classes/OS.xml:244
+#: doc/classes/OS.xml:255
msgid "Returns the amount of static memory being used by the program in bytes."
msgstr ""
-#: doc/classes/OS.xml:253
+#: doc/classes/OS.xml:264
msgid ""
"Returns the actual path to commonly used folders across different platforms. "
"Available locations are specified in [enum SystemDir].\n"
"[b]Note:[/b] This method is implemented on Android, Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:261
+#: doc/classes/OS.xml:272
msgid ""
"Returns the total number of available tablet drivers.\n"
"[b]Note:[/b] This method is implemented on Windows."
msgstr ""
-#: doc/classes/OS.xml:271
+#: doc/classes/OS.xml:282
msgid ""
"Returns the tablet driver name for the given index.\n"
"[b]Note:[/b] This method is implemented on Windows."
msgstr ""
-#: doc/classes/OS.xml:279
+#: doc/classes/OS.xml:290
msgid ""
"Returns the amount of time passed in milliseconds since the engine started."
msgstr ""
-#: doc/classes/OS.xml:286
+#: doc/classes/OS.xml:297
msgid ""
"Returns the amount of time passed in microseconds since the engine started."
msgstr ""
-#: doc/classes/OS.xml:295
+#: doc/classes/OS.xml:306
msgid "Returns current time as a dictionary of keys: hour, minute, second."
msgstr ""
-#: doc/classes/OS.xml:302
+#: doc/classes/OS.xml:313
msgid ""
"Returns the current time zone as a dictionary with the keys: bias and name."
msgstr ""
-#: doc/classes/OS.xml:309
+#: doc/classes/OS.xml:320
msgid ""
"Returns a string that is unique to the device.\n"
"[b]Note:[/b] Returns an empty string on HTML5 and UWP, as this method isn't "
"implemented on those platforms yet."
msgstr ""
-#: doc/classes/OS.xml:317
+#: doc/classes/OS.xml:328
msgid "Returns the current UNIX epoch timestamp."
msgstr ""
-#: doc/classes/OS.xml:326
+#: doc/classes/OS.xml:337
msgid ""
"Gets an epoch time value from a dictionary of time values.\n"
"[code]datetime[/code] must be populated with the following keys: [code]year[/"
@@ -33641,7 +34628,7 @@ msgid ""
"ignored."
msgstr ""
-#: doc/classes/OS.xml:335
+#: doc/classes/OS.xml:346
msgid ""
"Returns the absolute directory path where user data is written ([code]user://"
"[/code]).\n"
@@ -33659,11 +34646,11 @@ msgid ""
"[/code]."
msgstr ""
-#: doc/classes/OS.xml:348
+#: doc/classes/OS.xml:359
msgid "Returns [code]true[/code] if an environment variable exists."
msgstr ""
-#: doc/classes/OS.xml:357
+#: doc/classes/OS.xml:368
msgid ""
"Returns [code]true[/code] if the feature for the given feature tag is "
"supported in the currently running instance, depending on platform, build "
@@ -33674,7 +34661,7 @@ msgid ""
"[b]Note:[/b] Tag names are case-sensitive."
msgstr ""
-#: doc/classes/OS.xml:365
+#: doc/classes/OS.xml:376
msgid ""
"Returns [code]true[/code] if the Godot binary used to run the project is a "
"[i]debug[/i] export template, or when running in the editor.\n"
@@ -33685,26 +34672,26 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/OS.xml:376
+#: doc/classes/OS.xml:387
msgid ""
"Returns [code]true[/code] if the input keycode corresponds to a Unicode "
"character."
msgstr ""
-#: doc/classes/OS.xml:383
+#: doc/classes/OS.xml:394
msgid ""
"Returns [code]true[/code] if the engine was executed with [code]-v[/code] "
"(verbose stdout)."
msgstr ""
-#: doc/classes/OS.xml:390
+#: doc/classes/OS.xml:401
msgid ""
"If [code]true[/code], the [code]user://[/code] file system is persistent, so "
"that its state is the same after a player quits and starts the game again. "
"Relevant to the HTML5 platform, where this persistence may be unavailable."
msgstr ""
-#: doc/classes/OS.xml:399
+#: doc/classes/OS.xml:410
msgid ""
"Kill (terminate) the process identified by the given process ID ([code]pid[/"
"code]), e.g. the one returned by [method execute] in non-blocking mode.\n"
@@ -33714,37 +34701,37 @@ msgid ""
"Windows."
msgstr ""
-#: doc/classes/OS.xml:408
+#: doc/classes/OS.xml:419
msgid ""
"Initialises the singleton for the system MIDI driver.\n"
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:418
+#: doc/classes/OS.xml:429
msgid ""
"Shows all resources in the game. Optionally, the list can be written to a "
"file by specifying a file path in [code]tofile[/code]."
msgstr ""
-#: doc/classes/OS.xml:425
+#: doc/classes/OS.xml:436
msgid "Shows the list of loaded textures sorted by size in memory."
msgstr ""
-#: doc/classes/OS.xml:434
+#: doc/classes/OS.xml:445
msgid "Shows the number of resources loaded by the game of the given types."
msgstr ""
-#: doc/classes/OS.xml:443
+#: doc/classes/OS.xml:454
msgid "Shows all resources currently used by the game."
msgstr ""
-#: doc/classes/OS.xml:452
+#: doc/classes/OS.xml:463
msgid ""
"At the moment this function is only used by [code]AudioDriverOpenSL[/code] "
"to request permission for [code]RECORD_AUDIO[/code] on Android."
msgstr ""
-#: doc/classes/OS.xml:459
+#: doc/classes/OS.xml:470
msgid ""
"With this function you can request dangerous permissions since normal "
"permissions are automatically granted at install time in Android "
@@ -33752,15 +34739,15 @@ msgid ""
"[b]Note:[/b] This method is implemented on Android."
msgstr ""
-#: doc/classes/OS.xml:469
+#: doc/classes/OS.xml:480
msgid "Sets the name of the current thread."
msgstr ""
-#: doc/classes/OS.xml:478
+#: doc/classes/OS.xml:489
msgid "Enables backup saves if [code]enabled[/code] is [code]true[/code]."
msgstr ""
-#: doc/classes/OS.xml:487
+#: doc/classes/OS.xml:498
msgid ""
"Requests the OS to open a resource with the most appropriate program. For "
"example:\n"
@@ -33779,7 +34766,7 @@ msgid ""
"and Windows."
msgstr ""
-#: doc/classes/OS.xml:498
+#: doc/classes/OS.xml:509
msgid ""
"The exit code passed to the OS when the main loop exits. By convention, an "
"exit code of [code]0[/code] indicates success whereas a non-zero exit code "
@@ -33789,137 +34776,137 @@ msgid ""
"with an [code]exit_code[/code] argument passed."
msgstr ""
-#: doc/classes/OS.xml:502
+#: doc/classes/OS.xml:513
msgid ""
"If [code]true[/code], the engine optimizes for low processor usage by only "
"refreshing the screen if needed. Can improve battery consumption on mobile."
msgstr ""
-#: doc/classes/OS.xml:505
+#: doc/classes/OS.xml:516
msgid ""
"The amount of sleeping between frames when the low-processor usage mode is "
"enabled (in microseconds). Higher values will result in lower CPU usage."
msgstr ""
-#: doc/classes/OS.xml:508
-msgid "The current tablet drvier in use."
+#: doc/classes/OS.xml:519
+msgid "The current tablet driver in use."
msgstr ""
-#: doc/classes/OS.xml:513
+#: doc/classes/OS.xml:524
msgid ""
"The GLES2 rendering backend. It uses OpenGL ES 2.0 on mobile devices, OpenGL "
"2.1 on desktop platforms and WebGL 1.0 on the web."
msgstr ""
-#: doc/classes/OS.xml:516
+#: doc/classes/OS.xml:527
msgid "The Vulkan rendering backend."
msgstr ""
-#: doc/classes/OS.xml:519
+#: doc/classes/OS.xml:530
msgid "Sunday."
msgstr ""
-#: doc/classes/OS.xml:522
+#: doc/classes/OS.xml:533
msgid "Monday."
msgstr ""
-#: doc/classes/OS.xml:525
+#: doc/classes/OS.xml:536
msgid "Tuesday."
msgstr ""
-#: doc/classes/OS.xml:528
+#: doc/classes/OS.xml:539
msgid "Wednesday."
msgstr ""
-#: doc/classes/OS.xml:531
+#: doc/classes/OS.xml:542
msgid "Thursday."
msgstr ""
-#: doc/classes/OS.xml:534
+#: doc/classes/OS.xml:545
msgid "Friday."
msgstr ""
-#: doc/classes/OS.xml:537
+#: doc/classes/OS.xml:548
msgid "Saturday."
msgstr ""
-#: doc/classes/OS.xml:540
+#: doc/classes/OS.xml:551
msgid "January."
msgstr ""
-#: doc/classes/OS.xml:543
+#: doc/classes/OS.xml:554
msgid "February."
msgstr ""
-#: doc/classes/OS.xml:546
+#: doc/classes/OS.xml:557
msgid "March."
msgstr ""
-#: doc/classes/OS.xml:549
+#: doc/classes/OS.xml:560
msgid "April."
msgstr ""
-#: doc/classes/OS.xml:552
+#: doc/classes/OS.xml:563
msgid "May."
msgstr ""
-#: doc/classes/OS.xml:555
+#: doc/classes/OS.xml:566
msgid "June."
msgstr ""
-#: doc/classes/OS.xml:558
+#: doc/classes/OS.xml:569
msgid "July."
msgstr ""
-#: doc/classes/OS.xml:561
+#: doc/classes/OS.xml:572
msgid "August."
msgstr ""
-#: doc/classes/OS.xml:564
+#: doc/classes/OS.xml:575
msgid "September."
msgstr ""
-#: doc/classes/OS.xml:567
+#: doc/classes/OS.xml:578
msgid "October."
msgstr ""
-#: doc/classes/OS.xml:570
+#: doc/classes/OS.xml:581
msgid "November."
msgstr ""
-#: doc/classes/OS.xml:573
+#: doc/classes/OS.xml:584
msgid "December."
msgstr ""
-#: doc/classes/OS.xml:576
+#: doc/classes/OS.xml:587
msgid "Desktop directory path."
msgstr ""
-#: doc/classes/OS.xml:579
+#: doc/classes/OS.xml:590
msgid "DCIM (Digital Camera Images) directory path."
msgstr ""
-#: doc/classes/OS.xml:582
+#: doc/classes/OS.xml:593
msgid "Documents directory path."
msgstr ""
-#: doc/classes/OS.xml:585
+#: doc/classes/OS.xml:596
msgid "Downloads directory path."
msgstr ""
-#: doc/classes/OS.xml:588
+#: doc/classes/OS.xml:599
msgid "Movies directory path."
msgstr ""
-#: doc/classes/OS.xml:591
+#: doc/classes/OS.xml:602
msgid "Music directory path."
msgstr ""
-#: doc/classes/OS.xml:594
+#: doc/classes/OS.xml:605
msgid "Pictures directory path."
msgstr ""
-#: doc/classes/OS.xml:597
+#: doc/classes/OS.xml:608
msgid "Ringtones directory path."
msgstr ""
@@ -33974,7 +34961,16 @@ msgid ""
"should always be preferred."
msgstr ""
-#: doc/classes/PackedByteArray.xml:85
+#: doc/classes/PackedByteArray.xml:87 doc/classes/PackedColorArray.xml:53
+#: doc/classes/PackedFloat32Array.xml:54 doc/classes/PackedFloat64Array.xml:54
+#: doc/classes/PackedInt32Array.xml:54 doc/classes/PackedInt64Array.xml:54
+#: doc/classes/PackedStringArray.xml:53 doc/classes/PackedVector2Array.xml:53
+#: doc/classes/PackedVector3Array.xml:53
+#, fuzzy
+msgid "Returns [code]true[/code] if the array contains [code]value[/code]."
+msgstr "Vrací [code]true[/code] pokud [code]s[/code] je nula nebo téměř nula."
+
+#: doc/classes/PackedByteArray.xml:94
msgid ""
"Returns a hexadecimal representation of this array as a [String].\n"
"[codeblock]\n"
@@ -33983,39 +34979,48 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/PackedByteArray.xml:100 doc/classes/PackedColorArray.xml:55
-#: doc/classes/PackedFloat32Array.xml:56 doc/classes/PackedFloat64Array.xml:56
-#: doc/classes/PackedStringArray.xml:55 doc/classes/PackedVector2Array.xml:55
-#: doc/classes/PackedVector3Array.xml:55
+#: doc/classes/PackedByteArray.xml:109 doc/classes/PackedColorArray.xml:64
+#: doc/classes/PackedFloat32Array.xml:65 doc/classes/PackedFloat64Array.xml:65
+#: doc/classes/PackedStringArray.xml:64 doc/classes/PackedVector2Array.xml:64
+#: doc/classes/PackedVector3Array.xml:64
msgid ""
"Inserts a new element at a given position in the array. The position must be "
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PackedByteArray.xml:134 doc/classes/PackedColorArray.xml:89
-#: doc/classes/PackedFloat32Array.xml:90 doc/classes/PackedFloat64Array.xml:90
-#: doc/classes/PackedInt32Array.xml:90 doc/classes/PackedInt64Array.xml:90
-#: doc/classes/PackedStringArray.xml:89 doc/classes/PackedVector2Array.xml:89
-#: doc/classes/PackedVector3Array.xml:89
+#: doc/classes/PackedByteArray.xml:143 doc/classes/PackedColorArray.xml:98
+#: doc/classes/PackedFloat32Array.xml:99 doc/classes/PackedFloat64Array.xml:99
+#: doc/classes/PackedInt32Array.xml:99 doc/classes/PackedInt64Array.xml:99
+#: doc/classes/PackedStringArray.xml:98 doc/classes/PackedVector2Array.xml:98
+#: doc/classes/PackedVector3Array.xml:98
msgid ""
"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."
msgstr ""
-#: doc/classes/PackedByteArray.xml:145
+#: doc/classes/PackedByteArray.xml:154
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PackedByteArray.xml:152 doc/classes/PackedColorArray.xml:107
-#: doc/classes/PackedFloat32Array.xml:108
-#: doc/classes/PackedFloat64Array.xml:108 doc/classes/PackedStringArray.xml:107
-#: doc/classes/PackedVector2Array.xml:107
-#: doc/classes/PackedVector3Array.xml:107
+#: doc/classes/PackedByteArray.xml:161 doc/classes/PackedColorArray.xml:116
+#: doc/classes/PackedFloat32Array.xml:117
+#: doc/classes/PackedFloat64Array.xml:117 doc/classes/PackedStringArray.xml:116
+#: doc/classes/PackedVector2Array.xml:116
+#: doc/classes/PackedVector3Array.xml:116
msgid "Returns the size of the array."
msgstr ""
-#: doc/classes/PackedByteArray.xml:163
+#: doc/classes/PackedByteArray.xml:168 doc/classes/PackedColorArray.xml:123
+#: doc/classes/PackedFloat32Array.xml:124
+#: doc/classes/PackedFloat64Array.xml:124 doc/classes/PackedInt32Array.xml:124
+#: doc/classes/PackedInt64Array.xml:124 doc/classes/PackedStringArray.xml:123
+#: doc/classes/PackedVector2Array.xml:123
+#: doc/classes/PackedVector3Array.xml:123
+msgid "Sorts the elements of the array in ascending order."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:179
msgid ""
"Returns the slice of the [PackedByteArray] between indices (inclusive) as a "
"new [PackedByteArray]. Any negative index is considered to be from the end "
@@ -34043,12 +35048,12 @@ msgstr ""
msgid "Appends a [PackedColorArray] at the end of this array."
msgstr ""
-#: doc/classes/PackedColorArray.xml:71 doc/classes/PackedInt32Array.xml:72
-#: doc/classes/PackedInt64Array.xml:72
+#: doc/classes/PackedColorArray.xml:80 doc/classes/PackedInt32Array.xml:81
+#: doc/classes/PackedInt64Array.xml:81
msgid "Appends a value to the array."
msgstr ""
-#: doc/classes/PackedColorArray.xml:100
+#: doc/classes/PackedColorArray.xml:109
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -34078,8 +35083,8 @@ msgstr ""
msgid "Appends a [PackedFloat32Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedFloat32Array.xml:101
-#: doc/classes/PackedFloat64Array.xml:101
+#: doc/classes/PackedFloat32Array.xml:110
+#: doc/classes/PackedFloat64Array.xml:110
msgid "Changes the float at the given index."
msgstr ""
@@ -34132,17 +35137,17 @@ msgstr ""
msgid "Appends a [PackedInt32Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:56 doc/classes/PackedInt64Array.xml:56
+#: doc/classes/PackedInt32Array.xml:65 doc/classes/PackedInt64Array.xml:65
msgid ""
"Inserts a new integer at a given position in the array. The position must be "
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:101 doc/classes/PackedInt64Array.xml:101
+#: doc/classes/PackedInt32Array.xml:110 doc/classes/PackedInt64Array.xml:110
msgid "Changes the integer at the given index."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:108 doc/classes/PackedInt64Array.xml:108
+#: doc/classes/PackedInt32Array.xml:117 doc/classes/PackedInt64Array.xml:117
msgid "Returns the array size."
msgstr ""
@@ -34183,6 +35188,14 @@ msgid ""
"Can be used to save a node to a file. When saving, the node as well as all "
"the node it owns get saved (see [code]owner[/code] property on [Node]).\n"
"[b]Note:[/b] The node doesn't need to own itself.\n"
+"[b]Example of loading a saved scene:[/b]\n"
+"[codeblock]\n"
+"# Use `load()` instead of `preload()` if the path isn't known at compile-"
+"time.\n"
+"var scene = preload(\"res://scene.tscn\").instance()\n"
+"# Add the node as a child of the node the script is attached to.\n"
+"add_child(scene)\n"
+"[/codeblock]\n"
"[b]Example of saving a node with different owners:[/b] The following example "
"creates 3 objects: [code]Node2D[/code] ([code]node[/code]), "
"[code]RigidBody2D[/code] ([code]rigid[/code]) and [code]CollisionObject2D[/"
@@ -34214,29 +35227,29 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/PackedScene.xml:40
+#: doc/classes/PackedScene.xml:47
msgid "Returns [code]true[/code] if the scene file has nodes."
msgstr ""
-#: doc/classes/PackedScene.xml:47
+#: doc/classes/PackedScene.xml:54
msgid ""
"Returns the [code]SceneState[/code] representing the scene file contents."
msgstr ""
-#: doc/classes/PackedScene.xml:56
+#: doc/classes/PackedScene.xml:63
msgid ""
"Instantiates the scene's node hierarchy. Triggers child scene "
"instantiation(s). Triggers a [constant Node.NOTIFICATION_INSTANCED] "
"notification on the root node."
msgstr ""
-#: doc/classes/PackedScene.xml:65
+#: doc/classes/PackedScene.xml:72
msgid ""
"Pack will ignore any sub-nodes not owned by given node. See [member Node."
"owner]."
msgstr ""
-#: doc/classes/PackedScene.xml:71
+#: doc/classes/PackedScene.xml:78
msgid ""
"A dictionary representation of the scene contents.\n"
"Available keys include \"rnames\" and \"variants\" for resources, "
@@ -34245,18 +35258,18 @@ msgid ""
"connections, and \"version\" for the format style of the PackedScene."
msgstr ""
-#: doc/classes/PackedScene.xml:77
+#: doc/classes/PackedScene.xml:84
msgid "If passed to [method instance], blocks edits to the scene state."
msgstr ""
-#: doc/classes/PackedScene.xml:80
+#: doc/classes/PackedScene.xml:87
msgid ""
"If passed to [method instance], provides local scene resources to the local "
"scene.\n"
"[b]Note:[/b] Only available in editor builds."
msgstr ""
-#: doc/classes/PackedScene.xml:84
+#: doc/classes/PackedScene.xml:91
msgid ""
"If passed to [method instance], provides local scene resources to the local "
"scene. Only the main scene should receive the main edit state.\n"
@@ -34284,11 +35297,11 @@ msgstr ""
msgid "Appends a [PackedStringArray] at the end of this array."
msgstr ""
-#: doc/classes/PackedStringArray.xml:71
+#: doc/classes/PackedStringArray.xml:80
msgid "Appends a string element at end of the array."
msgstr ""
-#: doc/classes/PackedStringArray.xml:100
+#: doc/classes/PackedStringArray.xml:109
msgid "Changes the [String] at the given index."
msgstr ""
@@ -34313,11 +35326,11 @@ msgstr ""
msgid "Appends a [PackedVector2Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedVector2Array.xml:71
+#: doc/classes/PackedVector2Array.xml:80
msgid "Inserts a [Vector2] at the end."
msgstr ""
-#: doc/classes/PackedVector2Array.xml:100
+#: doc/classes/PackedVector2Array.xml:109
msgid "Changes the [Vector2] at the given index."
msgstr ""
@@ -34342,11 +35355,11 @@ msgstr ""
msgid "Appends a [PackedVector3Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedVector3Array.xml:71
+#: doc/classes/PackedVector3Array.xml:80
msgid "Inserts a [Vector3] at the end."
msgstr ""
-#: doc/classes/PackedVector3Array.xml:100
+#: doc/classes/PackedVector3Array.xml:109
msgid "Changes the [Vector3] at the given index."
msgstr ""
@@ -35237,13 +36250,55 @@ msgid ""
"as the values displayed in the [b]Monitor[/b] tab in the editor's "
"[b]Debugger[/b] panel. By using the [method get_monitor] method of this "
"class, you can access this data from your code.\n"
+"You can add custom monitors using the [method add_custom_monitor] method. "
+"Custom monitors are available in [b]Monitor[/b] tab in the editor's "
+"[b]Debugger[/b] panel together with built-in monitors.\n"
"[b]Note:[/b] A few of these monitors are only available in debug mode and "
"will always return 0 when used in a release build.\n"
"[b]Note:[/b] Many of these monitors are not updated in real-time, so there "
-"may be a short delay between changes."
+"may be a short delay between changes.\n"
+"[b]Note:[/b] Custom monitors do not support negative values. Negative values "
+"are clamped to 0."
+msgstr ""
+
+#: doc/classes/Performance.xml:26
+msgid ""
+"Adds a custom monitor with name same as id. You can specify the category of "
+"monitor using '/' in id. If there are more than one '/' then default "
+"category is used. Default category is \"Custom\".\n"
+"[codeblock]\n"
+"Performance.add_custom_monitor(\"MyCategory/MyMonitor\", some_callable) # "
+"Adds monitor with name \"MyName\" to category \"MyCategory\"\n"
+"Performance.add_custom_monitor(\"MyMonitor\", some_callable) # Adds monitor "
+"with name \"MyName\" to category \"Custom\"\n"
+"# Note: \"MyCategory/MyMonitor\" and \"MyMonitor\" have same name but "
+"different ids so above code is valid\n"
+"Performance.add_custom_monitor(\"Custom/MyMonitor\", some_callable) # Adds "
+"monitor with name \"MyName\" to category \"Custom\"\n"
+"# Note: \"MyMonitor\" and \"Custom/MyMonitor\" have same name and same "
+"category but different ids so above code is valid\n"
+"Performance.add_custom_monitor(\"MyCategoryOne/MyCategoryTwo/MyMonitor\", "
+"some_callable) # Adds monitor with name \"MyCategoryOne/MyCategoryTwo/"
+"MyMonitor\" to category \"Custom\"\n"
+"[/codeblock]\n"
+"The debugger calls the callable to get the value of custom monitor. The "
+"callable must return a number.\n"
+"Callables are called with arguments supplied in argument array.\n"
+"[b]Note:[/b] It throws an error if given id is already present."
msgstr ""
-#: doc/classes/Performance.xml:20
+#: doc/classes/Performance.xml:46
+msgid ""
+"Returns the value of custom monitor with given id. The callable is called to "
+"get the value of custom monitor.\n"
+"[b]Note:[/b] It throws an error if the given id is absent."
+msgstr ""
+
+#: doc/classes/Performance.xml:54
+msgid "Returns the names of active custom monitors in an array."
+msgstr ""
+
+#: doc/classes/Performance.xml:63
msgid ""
"Returns the value of one of the available monitors. You should provide one "
"of the [enum Monitor] constants as the argument, like this:\n"
@@ -35253,123 +36308,139 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Performance.xml:29
+#: doc/classes/Performance.xml:73
+msgid "Returns the last tick in which custom monitor was added/removed."
+msgstr ""
+
+#: doc/classes/Performance.xml:82
+msgid ""
+"Returns true if custom monitor with the given id is present otherwise "
+"returns false."
+msgstr ""
+
+#: doc/classes/Performance.xml:91
+msgid ""
+"Removes the custom monitor with given id.\n"
+"[b]Note:[/b] It throws an error if the given id is already absent."
+msgstr ""
+
+#: doc/classes/Performance.xml:98
msgid "Number of frames per second."
msgstr ""
-#: doc/classes/Performance.xml:32
+#: doc/classes/Performance.xml:101
msgid "Time it took to complete one frame, in seconds."
msgstr ""
-#: doc/classes/Performance.xml:35
+#: doc/classes/Performance.xml:104
msgid "Time it took to complete one physics frame, in seconds."
msgstr ""
-#: doc/classes/Performance.xml:38
+#: doc/classes/Performance.xml:107
msgid ""
"Static memory currently used, in bytes. Not available in release builds."
msgstr ""
-#: doc/classes/Performance.xml:41
+#: doc/classes/Performance.xml:110
msgid "Available static memory. Not available in release builds."
msgstr ""
-#: doc/classes/Performance.xml:44
+#: doc/classes/Performance.xml:113
msgid ""
"Largest amount of memory the message queue buffer has used, in bytes. The "
"message queue is used for deferred functions calls and notifications."
msgstr ""
-#: doc/classes/Performance.xml:47
+#: doc/classes/Performance.xml:116
msgid "Number of objects currently instanced (including nodes)."
msgstr ""
-#: doc/classes/Performance.xml:50
+#: doc/classes/Performance.xml:119
msgid "Number of resources currently used."
msgstr ""
-#: doc/classes/Performance.xml:53
+#: doc/classes/Performance.xml:122
msgid ""
"Number of nodes currently instanced in the scene tree. This also includes "
"the root node."
msgstr ""
-#: doc/classes/Performance.xml:56
+#: doc/classes/Performance.xml:125
msgid ""
"Number of orphan nodes, i.e. nodes which are not parented to a node of the "
"scene tree."
msgstr ""
-#: doc/classes/Performance.xml:59
+#: doc/classes/Performance.xml:128
msgid "3D objects drawn per frame."
msgstr ""
-#: doc/classes/Performance.xml:62
+#: doc/classes/Performance.xml:131
msgid "Vertices drawn per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:65
+#: doc/classes/Performance.xml:134
msgid "Material changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:68
+#: doc/classes/Performance.xml:137
msgid "Shader changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:71
+#: doc/classes/Performance.xml:140
msgid "Render surface changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:74
+#: doc/classes/Performance.xml:143
msgid "Draw calls per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:77 doc/classes/RenderingServer.xml:3805
+#: doc/classes/Performance.xml:146 doc/classes/RenderingServer.xml:3816
msgid ""
"The amount of video memory used, i.e. texture and vertex memory combined."
msgstr ""
-#: doc/classes/Performance.xml:80 doc/classes/RenderingServer.xml:3808
+#: doc/classes/Performance.xml:149 doc/classes/RenderingServer.xml:3819
msgid "The amount of texture memory used."
msgstr ""
-#: doc/classes/Performance.xml:83 doc/classes/RenderingServer.xml:3811
+#: doc/classes/Performance.xml:152 doc/classes/RenderingServer.xml:3822
msgid "The amount of vertex memory used."
msgstr ""
-#: doc/classes/Performance.xml:86 doc/classes/RenderingServer.xml:3802
+#: doc/classes/Performance.xml:155 doc/classes/RenderingServer.xml:3813
msgid "Unimplemented in the GLES2 rendering backend, always returns 0."
msgstr ""
-#: doc/classes/Performance.xml:89
+#: doc/classes/Performance.xml:158
msgid "Number of active [RigidBody2D] nodes in the game."
msgstr ""
-#: doc/classes/Performance.xml:92
+#: doc/classes/Performance.xml:161
msgid "Number of collision pairs in the 2D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:95
+#: doc/classes/Performance.xml:164
msgid "Number of islands in the 2D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:98
+#: doc/classes/Performance.xml:167
msgid "Number of active [RigidBody3D] and [VehicleBody3D] nodes in the game."
msgstr ""
-#: doc/classes/Performance.xml:101
+#: doc/classes/Performance.xml:170
msgid "Number of collision pairs in the 3D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:104
+#: doc/classes/Performance.xml:173
msgid "Number of islands in the 3D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:107
+#: doc/classes/Performance.xml:176
msgid "Output latency of the [AudioServer]."
msgstr ""
-#: doc/classes/Performance.xml:110
+#: doc/classes/Performance.xml:179
msgid "Represents the size of the [enum Monitor] enum."
msgstr ""
@@ -35393,27 +36464,27 @@ msgstr ""
msgid "Damps the body's rotation if greater than [code]0[/code]."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:70 doc/classes/RigidBody3D.xml:132
+#: doc/classes/PhysicalBone3D.xml:70 doc/classes/RigidBody3D.xml:139
msgid "Lock the body's rotation in the X axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:73 doc/classes/RigidBody3D.xml:135
+#: doc/classes/PhysicalBone3D.xml:73 doc/classes/RigidBody3D.xml:142
msgid "Lock the body's rotation in the Y axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:76 doc/classes/RigidBody3D.xml:138
+#: doc/classes/PhysicalBone3D.xml:76 doc/classes/RigidBody3D.xml:145
msgid "Lock the body's rotation in the Z axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:79 doc/classes/RigidBody3D.xml:141
+#: doc/classes/PhysicalBone3D.xml:79 doc/classes/RigidBody3D.xml:148
msgid "Lock the body's movement in the X axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:82 doc/classes/RigidBody3D.xml:144
+#: doc/classes/PhysicalBone3D.xml:82 doc/classes/RigidBody3D.xml:151
msgid "Lock the body's movement in the Y axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:85 doc/classes/RigidBody3D.xml:147
+#: doc/classes/PhysicalBone3D.xml:85 doc/classes/RigidBody3D.xml:154
msgid "Lock the body's movement in the Z axis."
msgstr ""
@@ -35468,12 +36539,12 @@ msgstr ""
msgid "Damps the body's movement if greater than [code]0[/code]."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:118 doc/classes/RigidBody2D.xml:158
-#: doc/classes/RigidBody3D.xml:175
+#: doc/classes/PhysicalBone3D.xml:118 doc/classes/RigidBody2D.xml:159
+#: doc/classes/RigidBody3D.xml:183
msgid "The body's mass."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:121 doc/classes/RigidBody3D.xml:188
+#: doc/classes/PhysicalBone3D.xml:121 doc/classes/RigidBody3D.xml:196
msgid ""
"The body's weight based on its mass and the global 3D gravity. Global values "
"are set in [b]Project > Project Settings > Physics > 3d[/b]."
@@ -35780,7 +36851,7 @@ msgid "The inverse of the mass of the body."
msgstr ""
#: doc/classes/PhysicsDirectBodyState2D.xml:195
-#: doc/classes/PhysicsDirectBodyState3D.xml:198 doc/classes/RigidBody2D.xml:155
+#: doc/classes/PhysicsDirectBodyState3D.xml:198 doc/classes/RigidBody2D.xml:156
msgid "The body's linear velocity."
msgstr ""
@@ -36333,7 +37404,7 @@ msgid ""
msgstr ""
#: doc/classes/PhysicsServer2D.xml:620 doc/classes/PhysicsServer3D.xml:637
-#: doc/classes/RigidBody3D.xml:120
+#: doc/classes/RigidBody3D.xml:127
msgid ""
"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."
@@ -37398,47 +38469,64 @@ msgid ""
"collision queries. See also [PhysicsShapeQueryResult2D]."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:18
-msgid ""
-"Sets the [Shape2D] that will be used for collision/intersection queries."
-msgstr ""
-
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:24
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:15
msgid "If [code]true[/code], the query will take [Area2D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:18
msgid ""
"If [code]true[/code], the query will take [PhysicsBody2D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:30
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:30
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:21
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:21
msgid "The physics layer(s) the query will take into account (as a bitmask)."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:33
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:33
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:24
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:24
msgid ""
"The list of objects or object [RID]s that will be excluded from collisions."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:36
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:36 doc/classes/Shape3D.xml:16
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:27 doc/classes/Shape3D.xml:16
msgid "The collision margin for the shape."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:39
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:30
msgid "The motion of the shape being queried for."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:42
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:39
-msgid "The queried shape's [RID]. See also [method set_shape]."
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:33
+msgid ""
+"The [Shape2D] that will be used for collision/intersection queries. This "
+"stores the actual reference which avoids the shape to be released while "
+"being used for queries, so always prefer using this over [member shape_rid]."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:36
+msgid ""
+"The queried shape's [RID] that will be used for collision/intersection "
+"queries. Use this over [member shape] if you want to optimize for "
+"performance using the Servers API:\n"
+"[codeblock]\n"
+"var shape_rid = PhysicsServer2D.circle_shape_create()\n"
+"var radius = 64\n"
+"PhysicsServer2D.shape_set_data(shape_rid, radius)\n"
+"\n"
+"var params = PhysicsShapeQueryParameters2D.new()\n"
+"params.shape_rid = shape_rid\n"
+"\n"
+"# Execute physics queries here...\n"
+"\n"
+"# Release the shape when done with physics queries.\n"
+"PhysicsServer2D.free_rid(shape_rid)\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:45
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:42
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:52
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:49
msgid "The queried shape's transform matrix."
msgstr ""
@@ -37452,18 +38540,40 @@ msgid ""
"collision queries. See also [PhysicsShapeQueryResult3D]."
msgstr ""
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:15
+msgid "If [code]true[/code], the query will take [Area3D]s into account."
+msgstr ""
+
#: doc/classes/PhysicsShapeQueryParameters3D.xml:18
msgid ""
-"Sets the [Shape3D] that will be used for collision/intersection queries."
+"If [code]true[/code], the query will take [PhysicsBody3D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:24
-msgid "If [code]true[/code], the query will take [Area3D]s into account."
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:30
+msgid ""
+"The [Shape3D] that will be used for collision/intersection queries. This "
+"stores the actual reference which avoids the shape to be released while "
+"being used for queries, so always prefer using this over [member shape_rid]."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:33
msgid ""
-"If [code]true[/code], the query will take [PhysicsBody3D]s into account."
+"The queried shape's [RID] that will be used for collision/intersection "
+"queries. Use this over [member shape] if you want to optimize for "
+"performance using the Servers API:\n"
+"[codeblock]\n"
+"var shape_rid = PhysicsServer3D.shape_create(PhysicsServer3D.SHAPE_SPHERE)\n"
+"var radius = 2.0\n"
+"PhysicsServer3D.shape_set_data(shape_rid, radius)\n"
+"\n"
+"var params = PhysicsShapeQueryParameters3D.new()\n"
+"params.shape_rid = shape_rid\n"
+"\n"
+"# Execute physics queries here...\n"
+"\n"
+"# Release the shape when done with physics queries.\n"
+"PhysicsServer3D.free_rid(shape_rid)\n"
+"[/codeblock]"
msgstr ""
#: doc/classes/PhysicsShapeQueryResult2D.xml:4
@@ -37604,92 +38714,94 @@ msgid ""
"code]."
msgstr ""
-#: doc/classes/Plane.xml:72
-msgid "Returns a point on the plane."
-msgstr ""
-
-#: doc/classes/Plane.xml:83
+#: doc/classes/Plane.xml:76
msgid ""
-"Returns [code]true[/code] if [code]point[/code] is inside the plane (by a "
-"very minimum [code]epsilon[/code] threshold)."
+"Returns [code]true[/code] if [code]point[/code] is inside the plane. "
+"Comparison uses a custom minimum [code]epsilon[/code] threshold."
msgstr ""
-#: doc/classes/Plane.xml:94
+#: doc/classes/Plane.xml:87
msgid ""
"Returns the intersection point of the three planes [code]b[/code], [code]c[/"
"code] and this plane. If no intersection is found, [code]null[/code] is "
"returned."
msgstr ""
-#: doc/classes/Plane.xml:105
+#: doc/classes/Plane.xml:98
msgid ""
"Returns the intersection point of a ray consisting of the position "
"[code]from[/code] and the direction normal [code]dir[/code] with this plane. "
"If no intersection is found, [code]null[/code] is returned."
msgstr ""
-#: doc/classes/Plane.xml:116
+#: doc/classes/Plane.xml:109
msgid ""
"Returns the intersection point of a segment from position [code]begin[/code] "
"to position [code]end[/code] with this plane. If no intersection is found, "
"[code]null[/code] is returned."
msgstr ""
-#: doc/classes/Plane.xml:125
+#: doc/classes/Plane.xml:118
msgid ""
"Returns [code]true[/code] if this plane and [code]plane[/code] are "
"approximately equal, by running [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/Plane.xml:134
+#: doc/classes/Plane.xml:127
msgid ""
"Returns [code]true[/code] if [code]point[/code] is located above the plane."
msgstr ""
-#: doc/classes/Plane.xml:141
+#: doc/classes/Plane.xml:134
msgid "Returns a copy of the plane, normalized."
msgstr ""
-#: doc/classes/Plane.xml:150
+#: doc/classes/Plane.xml:143
msgid ""
-"Returns the orthogonal projection of point [code]p[/code] into a point in "
-"the plane."
+"Returns the orthogonal projection of [code]point[/code] into a point in the "
+"plane."
msgstr ""
-#: doc/classes/Plane.xml:156
+#: doc/classes/Plane.xml:149
msgid ""
-"Distance from the origin to the plane, in the direction of [member normal]."
+"The distance from the origin to the plane, in the direction of [member "
+"normal]. This value is typically non-negative.\n"
+"In the scalar equation of the plane [code]ax + by + cz = d[/code], this is "
+"[code]d[/code], while the [code](a, b, c)[/code] coordinates are represented "
+"by the [member normal] property."
msgstr ""
-#: doc/classes/Plane.xml:159
+#: doc/classes/Plane.xml:153
msgid ""
-"The normal of the plane. \"Over\" or \"Above\" the plane is considered the "
-"side of the plane towards where the normal is pointing."
+"The normal of the plane, which must be normalized.\n"
+"In the scalar equation of the plane [code]ax + by + cz = d[/code], this is "
+"the vector [code](a, b, c)[/code], where [code]d[/code] is the [member d] "
+"property."
msgstr ""
-#: doc/classes/Plane.xml:162
-msgid "The [member normal]'s X component."
+#: doc/classes/Plane.xml:157
+msgid "The X component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:165
-msgid "The [member normal]'s Y component."
+#: doc/classes/Plane.xml:160
+msgid "The Y component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:168
-msgid "The [member normal]'s Z component."
+#: doc/classes/Plane.xml:163
+msgid "The Z component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:173
-msgid "A plane that extends in the Y and Z axes."
+#: doc/classes/Plane.xml:168
+msgid "A plane that extends in the Y and Z axes (normal vector points +X)."
msgstr ""
-#: doc/classes/Plane.xml:176
-msgid "A plane that extends in the X and Z axes."
+#: doc/classes/Plane.xml:171
+msgid "A plane that extends in the X and Z axes (normal vector points +Y)."
msgstr ""
-#: doc/classes/Plane.xml:179
-msgid "A plane that extends in the X and Y axes."
+#: doc/classes/Plane.xml:174
+msgid "A plane that extends in the X and Y axes (normal vector points +Z)."
msgstr ""
#: doc/classes/PlaneMesh.xml:4
@@ -38400,18 +39512,25 @@ msgstr ""
#: doc/classes/PrimitiveMesh.xml:16
msgid ""
-"Returns mesh arrays used to constitute surface of [Mesh]. Mesh arrays can be "
-"used with [ArrayMesh] to create new surfaces."
+"Returns mesh arrays used to constitute surface of [Mesh]. The result can be "
+"passed to [method ArrayMesh.add_surface_from_arrays] to create a new "
+"surface. For example:\n"
+"[codeblock]\n"
+"var c := CylinderMesh.new()\n"
+"var arr_mesh := ArrayMesh.new()\n"
+"arr_mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLES, c."
+"get_mesh_arrays())\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:22
+#: doc/classes/PrimitiveMesh.xml:27
msgid ""
"Overrides the [AABB] with one defined by user for use with frustum culling. "
"Especially useful to avoid unnexpected culling when using a shader to "
"offset vertices."
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:25
+#: doc/classes/PrimitiveMesh.xml:30
msgid ""
"If set, the order of the vertices in each triangle are reversed resulting in "
"the backside of the mesh being drawn.\n"
@@ -38419,7 +39538,7 @@ msgid ""
"[member BaseMaterial3D.cull_mode]."
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:29
+#: doc/classes/PrimitiveMesh.xml:34
msgid "The current [Material] of the primitive mesh."
msgstr ""
@@ -38850,11 +39969,17 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:260
msgid ""
+"Safer override for [member audio/output_latency] in the Web platform, to "
+"avoid audio issues especially on mobile devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:263
+msgid ""
"Setting to hardcode audio delay when playing video. Best to leave this "
"untouched unless you know what you are doing."
msgstr ""
-#: doc/classes/ProjectSettings.xml:263
+#: doc/classes/ProjectSettings.xml:266
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -38864,7 +39989,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:269
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -38874,27 +39999,27 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:269
+#: doc/classes/ProjectSettings.xml:272
msgid ""
"The default compression level for Zstandard. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
"speed. Decompression speed is mostly unaffected by the compression level."
msgstr ""
-#: doc/classes/ProjectSettings.xml:272
+#: doc/classes/ProjectSettings.xml:275
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:278
msgid ""
"Largest size limit (in power of 2) allowed when compressing using long-"
"distance matching with Zstandard. Higher values can result in better "
"compression, but will require more memory when compressing and decompressing."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:281
msgid ""
"If [code]true[/code], displays getters and setters in autocompletion results "
"in the script editor. This setting is meant to be used when porting old "
@@ -38902,74 +40027,55 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:281
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:284
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:287
+#: doc/classes/ProjectSettings.xml:294
msgid ""
"If [code]true[/code], enables specific GDScript warnings (see [code]debug/"
"gdscript/warnings/*[/code] settings). If [code]false[/code], disables all "
"GDScript warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
-msgid ""
-"If [code]true[/code], enables warnings when a function is declared with the "
-"same name as a constant."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:296
-msgid ""
-"If [code]true[/code], enables warnings when a function is declared with the "
-"same name as a variable. This will turn into an error in a future version "
-"when first-class functions become supported in GDScript."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:299
-msgid ""
-"If [code]true[/code], enables warnings when a function assigned to a "
-"variable may yield and return a function state instead of a value."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:302
+#: doc/classes/ProjectSettings.xml:300
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:303
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when dividing an integer by another "
"integer (the decimal part will be discarded)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when passing a floating-point value "
"to a function that expects an integer (it will be converted and lose "
"precision)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:314
+#: doc/classes/ProjectSettings.xml:312
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
@@ -38990,102 +40096,85 @@ msgid ""
"member variable)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:323
+#: doc/classes/ProjectSettings.xml:325
msgid ""
"If [code]true[/code], enables warnings when calling an expression that has "
"no effect on the surrounding code, such as writing [code]2 + 2[/code] as a "
"statement."
msgstr ""
-#: doc/classes/ProjectSettings.xml:326
+#: doc/classes/ProjectSettings.xml:328
msgid ""
"If [code]true[/code], enables warnings when calling a ternary expression "
"that has no effect on the surrounding code, such as writing [code]42 if "
"active else 0[/code] as a statement."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:331
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:334
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:335
+#: doc/classes/ProjectSettings.xml:337
msgid ""
"If [code]true[/code], enables warnings when assigning a variable using an "
"assignment operator like [code]+=[/code] if the variable wasn't previously "
"assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:338
+#: doc/classes/ProjectSettings.xml:340
msgid ""
"If [code]true[/code], enables warnings when unreachable code is detected "
"(such as after a [code]return[/code] statement that will always be executed)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:345
msgid ""
"If [code]true[/code], enables warnings when using an expression whose type "
"may not be compatible with the function parameter expected."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:348
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:347
+#: doc/classes/ProjectSettings.xml:351
msgid ""
"If [code]true[/code], enables warnings when calling a method whose presence "
"is not guaranteed at compile-time in the class."
msgstr ""
-#: doc/classes/ProjectSettings.xml:350
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], enables warnings when accessing a property whose "
"presence is not guaranteed at compile-time in the class."
msgstr ""
-#: doc/classes/ProjectSettings.xml:353
-msgid ""
-"If [code]true[/code], enables warnings when a function parameter is unused."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:356
-msgid ""
-"If [code]true[/code], enables warnings when a member variable is unused."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:363
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:362
+#: doc/classes/ProjectSettings.xml:366
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:365
-msgid ""
-"If [code]true[/code], enables warnings when a variable is declared with the "
-"same name as a function. This will turn into an error in a future version "
-"when first-class functions become supported in GDScript."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:368
+#: doc/classes/ProjectSettings.xml:369
msgid ""
"If [code]true[/code], enables warnings when assigning the result of a "
"function that returns [code]void[/code] to a variable."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:374
+#: doc/classes/ProjectSettings.xml:375
msgid ""
"Maximum number of frames per second allowed. The actual number of frames per "
"second may still be below this value if the game is lagging.\n"
@@ -39096,143 +40185,143 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:379
+#: doc/classes/ProjectSettings.xml:380
msgid "Maximum call stack allowed for debugging GDScript."
msgstr ""
-#: doc/classes/ProjectSettings.xml:382
+#: doc/classes/ProjectSettings.xml:383
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:385
+#: doc/classes/ProjectSettings.xml:386
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:388
+#: doc/classes/ProjectSettings.xml:389
msgid ""
"Print more information to standard output when running. It displays "
"information such as memory leaks, which scenes and resources are being "
"loaded, etc."
msgstr ""
-#: doc/classes/ProjectSettings.xml:391
+#: doc/classes/ProjectSettings.xml:392
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:394
+#: doc/classes/ProjectSettings.xml:395
msgid ""
"Color of the contact points between collision shapes, visible when \"Visible "
"Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:397
+#: doc/classes/ProjectSettings.xml:398
msgid ""
"Maximum number of contact points between collision shapes to display when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:400
+#: doc/classes/ProjectSettings.xml:401
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
msgid "Hotspot for the custom mouse cursor image."
msgstr ""
-#: doc/classes/ProjectSettings.xml:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
msgid ""
"If [code]true[/code], allows HiDPI display on Windows and macOS. This "
"setting has no effect on desktop Linux, as DPI-awareness fallbacks are not "
"supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"If [code]true[/code], keeps the screen on (even in case of inactivity), so "
"the screensaver does not take over. Works on desktop and mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
msgid "Default orientation on mobile devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"If [code]true[/code], the home indicator is hidden automatically. This only "
"affects iOS devices without a physical home button."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid "Force the window to be always on top."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid "Force the window to be borderless."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Sets the window to full screen when it starts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid ""
"Sets the game's main viewport height. On desktop platforms, this is the "
"default window size. Stretch mode settings also use this as a reference when "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Allows the window to be resizable by default."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"Sets the game's main viewport width. On desktop platforms, this is the "
"default window size. Stretch mode settings also use this as a reference when "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:454
+#: doc/classes/ProjectSettings.xml:455
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:457
+#: doc/classes/ProjectSettings.xml:458
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -39241,7 +40330,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:460
+#: doc/classes/ProjectSettings.xml:461
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -39252,13 +40341,13 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:464
+#: doc/classes/ProjectSettings.xml:465
msgid ""
"Search path for project-specific script templates. Script templates will be "
"search both in the editor-specific path and in this project-specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:467
+#: doc/classes/ProjectSettings.xml:468
msgid ""
"Text-based file extensions to include in the script editor's \"Find in Files"
"\" feature. You can add e.g. [code]tscn[/code] if you wish to also parse "
@@ -39266,49 +40355,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:470
+#: doc/classes/ProjectSettings.xml:471
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:473
+#: doc/classes/ProjectSettings.xml:474
msgid ""
-"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
+"If [code]true[/code], swaps Cancel and OK buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:478
+#: doc/classes/ProjectSettings.xml:479
msgid ""
"Path to a custom [Theme] resource file to use for the project ([code]theme[/"
"code] or generic [code]tres[/code]/[code]res[/code] extension)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:484
+#: doc/classes/ProjectSettings.xml:485
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:487
+#: doc/classes/ProjectSettings.xml:488
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:490
+#: doc/classes/ProjectSettings.xml:491
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:493
+#: doc/classes/ProjectSettings.xml:494
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:496
+#: doc/classes/ProjectSettings.xml:497
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -39317,7 +40406,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"Default [InputEventAction] to discard a modal or pending input.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39325,7 +40414,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:504
+#: doc/classes/ProjectSettings.xml:505
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39333,7 +40422,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:508
+#: doc/classes/ProjectSettings.xml:509
msgid ""
"Default [InputEventAction] to go to the end position of a [Control] (e.g. "
"last item in an [ItemList] or a [Tree]), matching the behavior of [constant "
@@ -39343,7 +40432,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:512
+#: doc/classes/ProjectSettings.xml:513
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -39352,7 +40441,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:516
+#: doc/classes/ProjectSettings.xml:517
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -39361,7 +40450,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:520
+#: doc/classes/ProjectSettings.xml:521
msgid ""
"Default [InputEventAction] to go to the start position of a [Control] (e.g. "
"first item in an [ItemList] or a [Tree]), matching the behavior of [constant "
@@ -39371,7 +40460,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39379,7 +40468,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:528
+#: doc/classes/ProjectSettings.xml:529
msgid ""
"Default [InputEventAction] to go down a page in a [Control] (e.g. in an "
"[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEDOWN] on "
@@ -39389,7 +40478,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Default [InputEventAction] to go up a page in a [Control] (e.g. in an "
"[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEUP] on "
@@ -39399,7 +40488,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:536
+#: doc/classes/ProjectSettings.xml:537
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39407,7 +40496,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:540
+#: doc/classes/ProjectSettings.xml:541
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -39416,7 +40505,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39424,371 +40513,371 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:548
+#: doc/classes/ProjectSettings.xml:549
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:554
+#: doc/classes/ProjectSettings.xml:555
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:557
+#: doc/classes/ProjectSettings.xml:558
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:560
+#: doc/classes/ProjectSettings.xml:561
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:566
+#: doc/classes/ProjectSettings.xml:567
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:569
+#: doc/classes/ProjectSettings.xml:570
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:572
+#: doc/classes/ProjectSettings.xml:573
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:578
+#: doc/classes/ProjectSettings.xml:579
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:581
+#: doc/classes/ProjectSettings.xml:582
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:584
+#: doc/classes/ProjectSettings.xml:585
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:590
+#: doc/classes/ProjectSettings.xml:591
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:593
+#: doc/classes/ProjectSettings.xml:594
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:596
+#: doc/classes/ProjectSettings.xml:597
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:602
+#: doc/classes/ProjectSettings.xml:603
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid ""
"The locale to fall back to if a translation isn't available in a given "
"language. If left empty, [code]en[/code] (English) will be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "If [code]true[/code], logs all output to files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:806
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:809
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:812
msgid ""
"Godot uses a message queue to defer some function calls. If you run out of "
"space on it (you will see an error), you can increase the size here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:815
msgid ""
"This is used by servers when used in multi-threading mode (servers and "
"visual). RIDs are preallocated to avoid stalling the server requesting them "
@@ -39796,56 +40885,56 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:829
+#: doc/classes/ProjectSettings.xml:832
msgid ""
"Maximum amount of characters allowed to send as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:832
+#: doc/classes/ProjectSettings.xml:835
msgid ""
"Maximum number of errors allowed to be sent from the debugger. Over this "
"value, content is dropped. This helps not to stall the debugger connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:835
+#: doc/classes/ProjectSettings.xml:838
msgid ""
"Maximum amount of messages in the debugger queue. Over this value, content "
"is dropped. This helps to limit the debugger memory usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:838
+#: doc/classes/ProjectSettings.xml:841
msgid ""
"Maximum number of warnings allowed to be sent from the debugger. Over this "
"value, content is dropped. This helps not to stall the debugger connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:841
+#: doc/classes/ProjectSettings.xml:844
msgid ""
"Default size of packet peer stream for deserializing Godot data. Over this "
"size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:844
+#: doc/classes/ProjectSettings.xml:847
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:847
+#: doc/classes/ProjectSettings.xml:850
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:850
+#: doc/classes/ProjectSettings.xml:853
msgid ""
"Amount of read ahead used by remote filesystem. Higher values decrease the "
"effects of latency at the cost of higher bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:853
+#: doc/classes/ProjectSettings.xml:856
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:856
+#: doc/classes/ProjectSettings.xml:859
msgid ""
"The CA certificates bundle to use for SSL connections. If this is set to a "
"non-empty value, this will [i]override[/i] Godot's default [url=https://"
@@ -39855,31 +40944,31 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:863
msgid ""
"When creating node names automatically, set the type of casing in this "
"project. This is mostly an editor setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:866
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:869
msgid "Size of the hash table used for the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:872
msgid "Cell size used for the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:875
msgid "The default angular damp in 2D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:878
msgid ""
"The default gravity strength in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39891,7 +40980,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:883
+#: doc/classes/ProjectSettings.xml:886
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39903,38 +40992,38 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:891
+#: doc/classes/ProjectSettings.xml:894
msgid "The default linear damp in 2D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:894
+#: doc/classes/ProjectSettings.xml:897
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:897
+#: doc/classes/ProjectSettings.xml:900
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics2D\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:901
+#: doc/classes/ProjectSettings.xml:904
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant PhysicsServer2D."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:904
+#: doc/classes/ProjectSettings.xml:907
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant PhysicsServer2D."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:907
+#: doc/classes/ProjectSettings.xml:910
msgid ""
"Sets whether physics is run on the main thread or a separate one. Running "
"the server on a thread increases performance, but restricts API access to "
@@ -39944,23 +41033,23 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:914
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant PhysicsServer2D.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:917
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody3D] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:920
msgid "The default angular damp in 3D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:923
msgid ""
"The default gravity strength in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39972,7 +41061,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:928
+#: doc/classes/ProjectSettings.xml:931
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39984,11 +41073,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:936
+#: doc/classes/ProjectSettings.xml:939
msgid "The default linear damp in 3D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:939
+#: doc/classes/ProjectSettings.xml:942
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -39996,11 +41085,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:943
+#: doc/classes/ProjectSettings.xml:946
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:949
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -40009,7 +41098,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:950
+#: doc/classes/ProjectSettings.xml:953
msgid ""
"Fix to improve physics jitter, specially on monitors where refresh rate is "
"different than the physics FPS.\n"
@@ -40017,7 +41106,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:954
+#: doc/classes/ProjectSettings.xml:957
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -40025,7 +41114,7 @@ msgid ""
"programmatically, use [method RenderingServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:957
+#: doc/classes/ProjectSettings.xml:960
msgid ""
"[Environment] that will be used as a fallback environment in case a scene "
"does not specify its own environment. The default environment is loaded in "
@@ -40035,14 +41124,14 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:986
+#: doc/classes/ProjectSettings.xml:989
msgid ""
"Max amount of elements renderable in a frame. If more than this are visible "
"per frame, they will be dropped. Keep in mind elements refer to mesh "
"surfaces and not meshes themselves."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:994
msgid ""
"Some NVIDIA GPU drivers have a bug which produces flickering issues for the "
"[code]draw_rect[/code] method, especially as used in [TileMap]. Refer to "
@@ -40054,73 +41143,73 @@ msgid ""
"using the Vulkan backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:995
+#: doc/classes/ProjectSettings.xml:998
msgid ""
"If [code]true[/code], forces snapping of polygons to pixels in 2D rendering. "
"May help in some pixel art styles."
msgstr ""
-#: doc/classes/ProjectSettings.xml:998
+#: doc/classes/ProjectSettings.xml:1001
msgid ""
"Sets the quality of the depth of field effect. Higher quality takes more "
"samples, which is slower but looks smoother."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1001
+#: doc/classes/ProjectSettings.xml:1004
msgid ""
"Sets the depth of field shape. Can be Box, Hexagon, or Circle. Box is the "
"fastest. Circle is the most realistic, but also the most expensive to "
"compute."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1004
+#: doc/classes/ProjectSettings.xml:1007
msgid ""
"If [code]true[/code], jitters DOF samples to make effect slightly blurrier "
"and hide lines created from low sample rates. This can result in a slightly "
"grainy appearance when used with a low number of samples."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1010
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1010
+#: doc/classes/ProjectSettings.xml:1013
msgid ""
"If [code]true[/code], performs a previous depth pass before rendering "
"materials. This increases performance in scenes with high overdraw, when "
"complex materials and lighting are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1016
msgid ""
"The directional shadow's size in pixels. Higher values will result in "
"sharper shadows, at the cost of performance. The value will be rounded up to "
"the nearest power of 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1016
+#: doc/classes/ProjectSettings.xml:1019
msgid ""
"Lower-end override for [member rendering/quality/directional_shadow/size] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1019
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"Quality setting for shadows cast by [DirectionalLight3D]s. Higher quality "
"settings use more samples when reading from shadow maps and are thus slower. "
"Low quality settings may result in shadows looking grainy."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1022
+#: doc/classes/ProjectSettings.xml:1025
msgid ""
"Lower-end override for [member rendering/quality/directional_shadow/"
"soft_shadow_quality] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1028
msgid ""
"The video driver to use (\"GLES2\" or \"Vulkan\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -40130,32 +41219,32 @@ msgid ""
"get_current_video_driver[/code] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1031
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"If [code]true[/code], take additional samples when rendering objects "
"affected by a [GIProbe] to reduce artifacts from only sampling in one "
"direction."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1034
+#: doc/classes/ProjectSettings.xml:1037
msgid ""
"Sets the number of cone samples taken when rendering objects affected by "
"[GIProbe]s."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1037
+#: doc/classes/ProjectSettings.xml:1040
msgid ""
"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."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1040
+#: doc/classes/ProjectSettings.xml:1043
msgid ""
"Lower-end override for [member rendering/quality/glow/upscale_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1043
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Strategy used for framebuffer allocation. The simpler it is, the less "
"resources it uses (but the less features it supports). If set to \"2D "
@@ -40165,41 +41254,41 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1046
+#: doc/classes/ProjectSettings.xml:1049
msgid ""
"Lower-end override for [member rendering/quality/intended_usage/"
"framebuffer_allocation] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1052
msgid ""
"Number of cubemaps to store in the reflection atlas. The number of "
"[ReflectionProbe]s in a scene will be limited by this amount. A higher "
"number requires more VRAM."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1052
+#: doc/classes/ProjectSettings.xml:1055
msgid ""
"Size of cubemap faces for [ReflectionProbe]s. A higher number requires more "
"VRAM and may make reflection probe updating slower."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1055
+#: doc/classes/ProjectSettings.xml:1058
msgid ""
"Lower-end override for [member rendering/quality/reflection_atlas/"
"reflection_size] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1058
+#: doc/classes/ProjectSettings.xml:1061
msgid ""
"Use a higher quality variant of the fast filtering algorithm. Significantly "
"slower than using default quality, but results in smoother reflections. "
"Should only be used when the scene is especially detailed."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1061
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Sets the number of samples to take when using importance sampling for [Sky]s "
"and [ReflectionProbe]s. A higher value will result in smoother, higher "
@@ -40209,19 +41298,19 @@ msgid ""
"environments with a high level of detail."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1064
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Lower-end override for [member rendering/quality/reflections/ggx_samples] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1067
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Limits the number of layers to use in radiance maps when using importance "
"sampling. A lower number will be slightly faster and take up less VRAM."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1070
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise and "
@@ -40230,14 +41319,14 @@ msgid ""
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1073
+#: doc/classes/ProjectSettings.xml:1076
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"texture_array_reflections] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1079
msgid ""
"Sets the number of MSAA samples to use (as a power of two). MSAA is used to "
"reduce aliasing around the edges of polygons. A higher MSAA value results in "
@@ -40245,7 +41334,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1080
+#: doc/classes/ProjectSettings.xml:1083
msgid ""
"Sets the screen-space antialiasing mode for the default screen [Viewport]. "
"Screen-space antialiasing works by selectively blurring edges in a post-"
@@ -40254,133 +41343,117 @@ msgid ""
"MSAA and will smooth out specular aliasing, but tend to make scenes appear "
"blurry.\n"
"Another way to combat specular aliasing is to enable [member rendering/"
-"quality/screen_filters/screen_space_roughness_limiter]."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:1084
-msgid ""
-"Enables the screen-space roughness limiter which increases material "
-"roughness in areas with a high normal frequency (i.e. when normals change a "
-"lot from pixel to pixel). This helps to reduce the amount of specular "
-"aliasing in a scene. Specular aliasing looks like random bright pixels that "
-"occur in reflections."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:1087
-msgid ""
-"Curves the amount of the roughness limited effect. A higher value limits the "
-"effect to very sharply curved surfaces, while a lower threshold extends the "
-"effect to smoother surfaces."
+"quality/screen_filters/screen_space_roughness_limiter_enabled]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1090
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"Sets the quality for rough screen-space reflections. Turning off will make "
"all screen space reflections sharp, while higher values make rough "
"reflections look better."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1093
+#: doc/classes/ProjectSettings.xml:1096
msgid ""
"If [code]true[/code], uses faster but lower-quality Blinn model to generate "
"blurred reflections instead of the GGX model."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1099
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_blinn_over_ggx] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1102
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1102
+#: doc/classes/ProjectSettings.xml:1105
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_lambert_over_burley] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1105
+#: doc/classes/ProjectSettings.xml:1108
msgid ""
"If [code]true[/code], forces vertex shading for all rendering. This can "
"increase performance a lot, but also reduces quality immensely. Can be used "
"to optimize performance on low-end mobile devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1108
+#: doc/classes/ProjectSettings.xml:1111
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_vertex_shading] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1111 doc/classes/ProjectSettings.xml:1114
-#: doc/classes/ProjectSettings.xml:1117 doc/classes/ProjectSettings.xml:1120
+#: doc/classes/ProjectSettings.xml:1114 doc/classes/ProjectSettings.xml:1117
+#: doc/classes/ProjectSettings.xml:1120 doc/classes/ProjectSettings.xml:1123
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1123
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1126
+#: doc/classes/ProjectSettings.xml:1129
msgid ""
"Lower-end override for [member rendering/quality/shadow_atlas/size] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1132
msgid ""
"Quality setting for shadows cast by [OmniLight3D]s and [SpotLight3D]s. "
"Higher quality settings use more samples when reading from shadow maps and "
"are thus slower. Low quality settings may result in shadows looking grainy."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1132
+#: doc/classes/ProjectSettings.xml:1135
msgid ""
"Lower-end override for [member rendering/quality/shadows/"
"soft_shadow_quality] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1135
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"If [code]true[/code], screen-space ambient occlusion will be rendered at "
"half size and then upscaled before being added to the scene. This is "
"significantly faster but may miss small details."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1138
+#: doc/classes/ProjectSettings.xml:1141
msgid ""
"Sets the quality of the screen-space ambient occlusion effect. Higher values "
"take more samples and so will result in better quality, at the cost of "
"performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1144
msgid ""
"Scales the depth over which the subsurface scattering effect is applied. A "
"high value may allow light to scatter into a part of the mesh or another "
"mesh that is close in screen space but far in depth."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1144
+#: doc/classes/ProjectSettings.xml:1147
msgid ""
"Sets the quality of the subsurface scattering effect. Higher values are "
"slower but look nicer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1147
+#: doc/classes/ProjectSettings.xml:1150
msgid ""
"Scales the distance over which samples are taken for subsurface scattering "
"effect. Changing this does not impact performance, but higher values will "
@@ -40388,7 +41461,7 @@ msgid ""
"out. A lower value results in a smaller spread of scattered light."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1150
+#: doc/classes/ProjectSettings.xml:1153
msgid ""
"Sets the maximum number of samples to take when using anisotropic filtering "
"on textures (as a power of two). A higher sample count will result in "
@@ -40397,7 +41470,7 @@ msgid ""
"materials where it is enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1153
+#: doc/classes/ProjectSettings.xml:1156
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -40406,49 +41479,49 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Thread model for rendering. Rendering on a thread can vastly improve "
"performance, but synchronizing to the main thread can cause a bit more "
"jitter."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
"only supported on desktop platforms, and only when using the Vulkan renderer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
"doesn't support alpha channels in textures."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
"compression algorithm is only supported when using the Vulkan renderer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1175
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
"compression algorithm is only supported on iOS."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
"supported on desktop platforms and consoles."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1182
+#: doc/classes/ProjectSettings.xml:1189
msgid "Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses."
msgstr ""
@@ -40478,13 +41551,14 @@ msgstr ""
#: doc/classes/Quat.xml:7
msgid ""
-"A unit quaternion used for representing 3D rotations.\n"
-"It is similar to [Basis], which implements matrix representation of "
-"rotations, and can be parametrized using both an axis-angle pair or Euler "
-"angles. But due to its compactness and the way it is stored in memory, "
-"certain operations (obtaining axis-angle and performing SLERP, in "
-"particular) are more efficient and robust against floating-point errors.\n"
-"Quaternions need to be (re)normalized."
+"A unit quaternion used for representing 3D rotations. Quaternions need to be "
+"normalized to be used for rotation.\n"
+"It is similar to Basis, which implements matrix representation of rotations, "
+"and can be parametrized using both an axis-angle pair or Euler angles. Basis "
+"stores rotation, scale, and shearing, while Quat only stores rotation.\n"
+"Due to its compactness and the way it is stored in memory, certain "
+"operations (obtaining axis-angle and performing SLERP, in particular) are "
+"more efficient and robust against floating-point errors."
msgstr ""
#: doc/classes/Quat.xml:12
@@ -40494,29 +41568,31 @@ msgid ""
msgstr ""
#: doc/classes/Quat.xml:21
-msgid "Returns the rotation matrix corresponding to the given quaternion."
+msgid "Constructs a quaternion from the given [Basis]."
msgstr ""
#: doc/classes/Quat.xml:30
msgid ""
-"Returns a quaternion that will perform a rotation specified by Euler angles "
-"(in the YXZ convention: first Z, then X, and Y last), given in the vector "
-"format as (X angle, Y angle, Z angle)."
+"Constructs a quaternion that will perform a rotation specified by Euler "
+"angles (in the YXZ convention: when decomposing, first Z, then X, and Y "
+"last), given in the vector format as (X angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:41
msgid ""
-"Returns a quaternion that will rotate around the given axis by the specified "
-"angle. The axis must be a normalized vector."
+"Constructs a quaternion that will rotate around the given axis by the "
+"specified angle. The axis must be a normalized vector."
msgstr ""
#: doc/classes/Quat.xml:56
-msgid "Returns a quaternion defined by these values."
+msgid "Constructs a quaternion defined by the given values."
msgstr ""
#: doc/classes/Quat.xml:71
msgid ""
-"Performs a cubic spherical-linear interpolation with another quaternion."
+"Performs a cubic spherical interpolation between quaternions [code]preA[/"
+"code], this vector, [code]b[/code], and [code]postB[/code], by the given "
+"amount [code]t[/code]."
msgstr ""
#: doc/classes/Quat.xml:80
@@ -40525,10 +41601,10 @@ msgstr ""
#: doc/classes/Quat.xml:87
msgid ""
-"Returns Euler angles (in the YXZ convention: first Z, then X, and Y last) "
-"corresponding to the rotation represented by the unit quaternion. Returned "
-"vector contains the rotation angles in the format (X angle, Y angle, Z "
-"angle)."
+"Returns Euler angles (in the YXZ convention: when decomposing, first Z, then "
+"X, and Y last) corresponding to the rotation represented by the unit "
+"quaternion. Returned vector contains the rotation angles in the format (X "
+"angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:94
@@ -40567,44 +41643,57 @@ msgstr ""
#: doc/classes/Quat.xml:151
msgid ""
"Sets the quaternion to a rotation specified by Euler angles (in the YXZ "
-"convention: first Z, then X, and Y last), given in the vector format as (X "
-"angle, Y angle, Z angle)."
+"convention: when decomposing, first Z, then X, and Y last), given in the "
+"vector format as (X angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:162
-msgid "Performs a spherical-linear interpolation with another quaternion."
+msgid ""
+"Returns the result of the spherical linear interpolation between this "
+"quaternion and [code]to[/code] by amount [code]weight[/code].\n"
+"[b]Note:[/b] Both quaternions must be normalized."
msgstr ""
-#: doc/classes/Quat.xml:173
+#: doc/classes/Quat.xml:174
msgid ""
-"Performs a spherical-linear interpolation with another quaterion without "
-"checking if the rotation path is not bigger than 90°."
+"Returns the result of the spherical linear interpolation between this "
+"quaternion and [code]to[/code] by amount [code]weight[/code], but without "
+"checking if the rotation path is not bigger than 90 degrees."
msgstr ""
-#: doc/classes/Quat.xml:182
-msgid "Transforms the vector [code]v[/code] by this quaternion."
+#: doc/classes/Quat.xml:183
+msgid "Returns a vector transformed (multiplied) by this quaternion."
msgstr ""
-#: doc/classes/Quat.xml:188
-msgid "W component of the quaternion."
+#: doc/classes/Quat.xml:189
+msgid ""
+"W component of the quaternion (real part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:191
-msgid "X component of the quaternion."
+#: doc/classes/Quat.xml:193
+msgid ""
+"X component of the quaternion (imaginary [code]i[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:194
-msgid "Y component of the quaternion."
+#: doc/classes/Quat.xml:197
+msgid ""
+"Y component of the quaternion (imaginary [code]j[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:197
-msgid "Z component of the quaternion."
+#: doc/classes/Quat.xml:201
+msgid ""
+"Z component of the quaternion (imaginary [code]k[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:202
+#: doc/classes/Quat.xml:207
msgid ""
-"The identity rotation. Equivalent to an identity matrix. If a vector is "
-"transformed by an identity quaternion, it will not change."
+"The identity quaternion, representing no rotation. Equivalent to an identity "
+"[Basis] matrix. If a vector is transformed by an identity quaternion, it "
+"will not change."
msgstr ""
#: doc/classes/RandomNumberGenerator.xml:4
@@ -40807,7 +41896,8 @@ msgid ""
"collision information immediately instead of waiting for the next "
"[code]_physics_process[/code] call, for example if the ray or its parent has "
"changed state.\n"
-"[b]Note:[/b] [code]enabled == true[/code] is not required for this to work."
+"[b]Note:[/b] [member enabled] does not need to be [code]true[/code] for this "
+"to work."
msgstr ""
#: doc/classes/RayCast2D.xml:54 doc/classes/RayCast3D.xml:55
@@ -40913,7 +42003,8 @@ msgid ""
"Use this method to update the collision information immediately instead of "
"waiting for the next [code]_physics_process[/code] call, for example if the "
"ray or its parent has changed state.\n"
-"[b]Note:[/b] [code]enabled == true[/code] is not required for this to work."
+"[b]Note:[/b] [member enabled] does not need to be [code]true[/code] for this "
+"to work."
msgstr ""
#: doc/classes/RayCast3D.xml:71
@@ -41071,14 +42162,6 @@ msgstr ""
msgid "Returns a larger [Rect2] that contains this [Rect2] and [code]b[/code]."
msgstr ""
-#: doc/classes/Rect2.xml:174 doc/classes/Rect2i.xml:163
-msgid "Ending corner."
-msgstr ""
-
-#: doc/classes/Rect2.xml:177 doc/classes/Rect2i.xml:166
-msgid "Position (starting corner)."
-msgstr ""
-
#: doc/classes/Rect2i.xml:4
msgid "2D axis-aligned bounding box using integer coordinates."
msgstr ""
@@ -41191,22 +42274,22 @@ msgstr ""
msgid ""
"Base class for any object that keeps a reference count. [Resource] and many "
"other helper objects inherit this class.\n"
-"References keep an internal reference counter so that they are automatically "
-"released when no longer in use, and only then. References therefore do not "
-"need to be freed manually with [method Object.free].\n"
+"Unlike [Object]s, References keep an internal reference counter so that they "
+"are automatically released when no longer in use, and only then. References "
+"therefore do not need to be freed manually with [method Object.free].\n"
"In the vast majority of use cases, instantiating and using [Reference]-"
"derived types is all you need to do. The methods provided in this class are "
"only for advanced users, and can cause issues if misused."
msgstr ""
-#: doc/classes/Reference.xml:18
+#: doc/classes/Reference.xml:19
msgid ""
"Initializes the internal reference counter. Use this only if you really know "
"what you are doing.\n"
"Returns whether the initialization was successful."
msgstr ""
-#: doc/classes/Reference.xml:26
+#: doc/classes/Reference.xml:27
msgid ""
"Increments the internal reference counter. Use this only if you really know "
"what you are doing.\n"
@@ -41214,7 +42297,7 @@ msgid ""
"code] otherwise."
msgstr ""
-#: doc/classes/Reference.xml:34
+#: doc/classes/Reference.xml:35
msgid ""
"Decrements the internal reference counter. Use this only if you really know "
"what you are doing.\n"
@@ -41263,14 +42346,14 @@ msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/reflection_probes.html"
msgstr ""
-#: doc/classes/ReflectionProbe.xml:17
+#: doc/classes/ReflectionProbe.xml:23
msgid ""
"If [code]true[/code], enables box projection. This makes reflections look "
"more correct in rectangle-shaped rooms by offsetting the reflection center "
"depending on the camera's location."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:20
+#: doc/classes/ReflectionProbe.xml:26
msgid ""
"Sets the cull mask which determines what objects are drawn by this probe. "
"Every [VisualInstance3D] with a layer included in this cull mask will be "
@@ -41279,78 +42362,56 @@ msgid ""
"rendering cost."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:23
+#: doc/classes/ReflectionProbe.xml:29
msgid ""
"If [code]true[/code], computes shadows in the reflection probe. This makes "
"the reflection probe slower to render; you may want to disable this if using "
"the [constant UPDATE_ALWAYS] [member update_mode]."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:26
+#: doc/classes/ReflectionProbe.xml:32
msgid ""
"The size of the reflection probe. The larger the extents the more space "
"covered by the probe which will lower the perceived resolution. It is best "
"to keep the extents only as large as you need them."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:29
+#: doc/classes/ReflectionProbe.xml:35
msgid ""
"Defines the reflection intensity. Intensity modulates the strength of the "
"reflection."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:32
-msgid ""
-"Sets the ambient light color to be used when this probe is set to [member "
-"interior_enable]."
-msgstr ""
-
-#: doc/classes/ReflectionProbe.xml:35
-msgid ""
-"Sets the contribution value for how much the reflection affects the ambient "
-"light for this reflection probe when set to [member interior_enable]. Useful "
-"so that ambient light matches the color of the room."
-msgstr ""
-
#: doc/classes/ReflectionProbe.xml:38
-msgid ""
-"Sets the energy multiplier for this reflection probe's ambient light "
-"contribution when set to [member interior_enable]."
+msgid "If [code]true[/code], reflections will ignore sky contribution."
msgstr ""
#: doc/classes/ReflectionProbe.xml:41
msgid ""
-"If [code]true[/code], reflections will ignore sky contribution. Ambient "
-"lighting is then controlled by the [code]interior_ambient_*[/code] "
-"properties."
-msgstr ""
-
-#: doc/classes/ReflectionProbe.xml:44
-msgid ""
"Sets the max distance away from the probe an object can be before it is "
"culled."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:47
+#: doc/classes/ReflectionProbe.xml:44
msgid ""
"Sets the origin offset to be used when this reflection probe is in box "
"project mode."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:50
+#: doc/classes/ReflectionProbe.xml:47
msgid ""
"Sets how frequently the probe is updated. Can be [constant UPDATE_ONCE] or "
"[constant UPDATE_ALWAYS]."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:55
+#: doc/classes/ReflectionProbe.xml:52
msgid ""
"Update the probe once on the next frame. The corresponding radiance map will "
"be generated over the following six frames. This is slower to update than "
"[constant UPDATE_ALWAYS] but can result in higher quality reflections."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:58
+#: doc/classes/ReflectionProbe.xml:55
msgid ""
"Update the probe every frame. This is needed when you want to capture "
"dynamic objects. However, it results in an increased render time. Use "
@@ -41380,10 +42441,10 @@ msgid ""
"read by RegEx as [code]\\d+[/code]. Similarly, [code]compile(\"\\\"(?:\\\\\\"
"\\.|[^\\\"])*\\\"\")[/code] would be read as [code]\"(?:\\\\.|[^\"])*\"[/"
"code].\n"
-"Using [method search] you can find the pattern within the given text. If a "
+"Using [method search], you can find the pattern within the given text. If a "
"pattern is found, [RegExMatch] is returned and you can retrieve details of "
-"the results using functions such as [method RegExMatch.get_string] and "
-"[method RegExMatch.get_start].\n"
+"the results using methods such as [method RegExMatch.get_string] and [method "
+"RegExMatch.get_start].\n"
"[codeblock]\n"
"var regex = RegEx.new()\n"
"regex.compile(\"\\\\w-(\\\\d+)\")\n"
@@ -41392,7 +42453,7 @@ msgid ""
" print(result.get_string()) # Would print n-0123\n"
"[/codeblock]\n"
"The results of capturing groups [code]()[/code] can be retrieved by passing "
-"the group number to the various functions in [RegExMatch]. Group 0 is the "
+"the group number to the various methods in [RegExMatch]. Group 0 is the "
"default and will always refer to the entire pattern. In the above example, "
"calling [code]result.get_string(1)[/code] would give you [code]0123[/code].\n"
"This version of RegEx also supports named capturing groups, and the names "
@@ -41413,6 +42474,15 @@ msgid ""
" print(result.get_string(\"digit\"))\n"
"# Would print 01 03 0 3f 42\n"
"[/codeblock]\n"
+"[b]Example of splitting a string using a RegEx:[/b]\n"
+"[codeblock]\n"
+"var regex = RegEx.new()\n"
+"regex.compile(\"\\\\S+\") # Negated whitespace character class.\n"
+"var results = []\n"
+"for match in regex.search_all(\"One Two \\n\\tThree\"):\n"
+" results.push_back(match.get_string())\n"
+"# The `results` array now contains \"One\", \"Two\", \"Three\".\n"
+"[/codeblock]\n"
"[b]Note:[/b] Godot's regex implementation is based on the [url=https://www."
"pcre.org/]PCRE2[/url] library. You can view the full pattern reference "
"[url=https://www.pcre.org/current/doc/html/pcre2pattern.html]here[/url].\n"
@@ -41420,38 +42490,38 @@ msgid ""
"regular expressions online."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:47
+#: modules/regex/doc_classes/RegEx.xml:56
msgid ""
"This method resets the state of the object, as if it was freshly created. "
"Namely, it unassigns the regular expression of this object."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:56
+#: modules/regex/doc_classes/RegEx.xml:65
msgid ""
"Compiles and assign the search pattern to use. Returns [constant OK] if the "
"compilation is successful. If an error is encountered, details are printed "
"to standard output and an error is returned."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:63
+#: modules/regex/doc_classes/RegEx.xml:72
msgid "Returns the number of capturing groups in compiled pattern."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:70
+#: modules/regex/doc_classes/RegEx.xml:79
msgid ""
"Returns an array of names of named capturing groups in the compiled pattern. "
"They are ordered by appearance."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:77
+#: modules/regex/doc_classes/RegEx.xml:86
msgid "Returns the original search pattern that was compiled."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:84
+#: modules/regex/doc_classes/RegEx.xml:93
msgid "Returns whether this object has a valid search pattern assigned."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:97
+#: modules/regex/doc_classes/RegEx.xml:106
msgid ""
"Searches the text for the compiled pattern. Returns a [RegExMatch] container "
"of the first matching result if found, otherwise [code]null[/code]. The "
@@ -41459,7 +42529,7 @@ msgid ""
"and end anchor would be."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:110
+#: modules/regex/doc_classes/RegEx.xml:119
msgid ""
"Searches the text for the compiled pattern. Returns an array of [RegExMatch] "
"containers for each non-overlapping result. If no results were found, an "
@@ -41467,7 +42537,7 @@ msgid ""
"specified without modifying where the start and end anchor would be."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:127
+#: modules/regex/doc_classes/RegEx.xml:136
msgid ""
"Searches the text for the compiled pattern and replaces it with the "
"specified string. Escapes and backreferences such as [code]$1[/code] and "
@@ -42194,7 +43264,7 @@ msgid ""
msgstr ""
#: doc/classes/RenderingServer.xml:1222 doc/classes/RenderingServer.xml:1250
-#: doc/classes/RenderingServer.xml:1527
+#: doc/classes/RenderingServer.xml:1537
msgid "Not implemented in Godot 3.x."
msgstr ""
@@ -42341,30 +43411,30 @@ msgid ""
"OmniLight3D.omni_shadow_mode]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1481
+#: doc/classes/RenderingServer.xml:1491
msgid ""
"Sets the color of the light. Equivalent to [member Light3D.light_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1492
+#: doc/classes/RenderingServer.xml:1502
msgid ""
"Sets the cull mask for this Light3D. Lights only affect objects in the "
"selected layers. Equivalent to [member Light3D.light_cull_mask]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1503
+#: doc/classes/RenderingServer.xml:1513
msgid ""
"If [code]true[/code], light will subtract light instead of adding light. "
"Equivalent to [member Light3D.light_negative]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1516
+#: doc/classes/RenderingServer.xml:1526
msgid ""
"Sets the specified light parameter. See [enum LightParam] for options. "
"Equivalent to [method Light3D.set_param]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1538
+#: doc/classes/RenderingServer.xml:1548
msgid ""
"If [code]true[/code], reverses the backface culling of the mesh. This can be "
"useful when you have a flat mesh that has a light behind it. If you need to "
@@ -42373,29 +43443,25 @@ msgid ""
"to [member Light3D.shadow_reverse_cull_face]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1549
+#: doc/classes/RenderingServer.xml:1559
msgid ""
"If [code]true[/code], light will cast shadows. Equivalent to [member Light3D."
"shadow_enabled]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1560
+#: doc/classes/RenderingServer.xml:1570
msgid ""
"Sets the color of the shadow cast by the light. Equivalent to [member "
"Light3D.shadow_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1571
-msgid "Sets whether GI probes capture light information from this light."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:1584
+#: doc/classes/RenderingServer.xml:1583
msgid ""
"Returns a mesh of a sphere with the given amount of horizontal and vertical "
"subdivisions."
msgstr ""
-#: doc/classes/RenderingServer.xml:1591
+#: doc/classes/RenderingServer.xml:1590
msgid ""
"Creates an empty material and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42404,31 +43470,31 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:1603
+#: doc/classes/RenderingServer.xml:1602
msgid "Returns the value of a certain material's parameter."
msgstr ""
-#: doc/classes/RenderingServer.xml:1614
+#: doc/classes/RenderingServer.xml:1613
msgid "Sets an object's next material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1627
+#: doc/classes/RenderingServer.xml:1626
msgid "Sets a material's parameter."
msgstr ""
-#: doc/classes/RenderingServer.xml:1638
+#: doc/classes/RenderingServer.xml:1637
msgid "Sets a material's render priority."
msgstr ""
-#: doc/classes/RenderingServer.xml:1649
+#: doc/classes/RenderingServer.xml:1648
msgid "Sets a shader material's shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:1678
+#: doc/classes/RenderingServer.xml:1677
msgid "Removes all surfaces from a mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1685
+#: doc/classes/RenderingServer.xml:1684
msgid ""
"Creates a new mesh and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all [code]mesh_*[/"
@@ -42439,58 +43505,58 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:1696
+#: doc/classes/RenderingServer.xml:1695
msgid "Returns a mesh's blend shape count."
msgstr ""
-#: doc/classes/RenderingServer.xml:1705
+#: doc/classes/RenderingServer.xml:1704
msgid "Returns a mesh's blend shape mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:1714
+#: doc/classes/RenderingServer.xml:1713
msgid "Returns a mesh's custom aabb."
msgstr ""
-#: doc/classes/RenderingServer.xml:1723
+#: doc/classes/RenderingServer.xml:1722
msgid "Returns a mesh's number of surfaces."
msgstr ""
-#: doc/classes/RenderingServer.xml:1734
+#: doc/classes/RenderingServer.xml:1733
msgid "Sets a mesh's blend shape mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:1745
+#: doc/classes/RenderingServer.xml:1744
msgid "Sets a mesh's custom aabb."
msgstr ""
-#: doc/classes/RenderingServer.xml:1756
+#: doc/classes/RenderingServer.xml:1755
msgid "Returns a mesh's surface's buffer arrays."
msgstr ""
-#: doc/classes/RenderingServer.xml:1767
+#: doc/classes/RenderingServer.xml:1766
msgid "Returns a mesh's surface's arrays for blend shapes."
msgstr ""
-#: doc/classes/RenderingServer.xml:1782 doc/classes/RenderingServer.xml:1795
+#: doc/classes/RenderingServer.xml:1781 doc/classes/RenderingServer.xml:1794
msgid "Function is unused in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:1806
+#: doc/classes/RenderingServer.xml:1805
msgid "Returns a mesh's surface's material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1819
+#: doc/classes/RenderingServer.xml:1818
msgid "Sets a mesh's surface's material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1834
+#: doc/classes/RenderingServer.xml:1833
msgid ""
"Updates a specific region of a vertex buffer for the specified surface. "
"Warning: this function alters the vertex buffer directly with no safety "
"mechanisms, you can easily corrupt your mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1857
+#: doc/classes/RenderingServer.xml:1856
msgid ""
"Creates a new multimesh on the RenderingServer and returns an [RID] handle. "
"This RID will be used in all [code]multimesh_*[/code] RenderingServer "
@@ -42501,82 +43567,82 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:1868
+#: doc/classes/RenderingServer.xml:1867
msgid ""
"Calculates and returns the axis-aligned bounding box that encloses all "
"instances within the multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1885
+#: doc/classes/RenderingServer.xml:1884
msgid "Returns the number of instances allocated for this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1894
+#: doc/classes/RenderingServer.xml:1893
msgid ""
"Returns the RID of the mesh that will be used in drawing this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1903
+#: doc/classes/RenderingServer.xml:1902
msgid "Returns the number of visible instances for this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1914
+#: doc/classes/RenderingServer.xml:1913
msgid "Returns the color by which the specified instance will be modulated."
msgstr ""
-#: doc/classes/RenderingServer.xml:1925
+#: doc/classes/RenderingServer.xml:1924
msgid "Returns the custom data associated with the specified instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:1936
+#: doc/classes/RenderingServer.xml:1935
msgid "Returns the [Transform] of the specified instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:1947
+#: doc/classes/RenderingServer.xml:1946
msgid ""
"Returns the [Transform2D] of the specified instance. For use when the "
"multimesh is set to use 2D transforms."
msgstr ""
-#: doc/classes/RenderingServer.xml:1960
+#: doc/classes/RenderingServer.xml:1959
msgid ""
"Sets the color by which this instance will be modulated. Equivalent to "
"[method MultiMesh.set_instance_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1973
+#: doc/classes/RenderingServer.xml:1972
msgid ""
"Sets the custom data for this instance. Custom data is passed as a [Color], "
"but is interpreted as a [code]vec4[/code] in the shader. Equivalent to "
"[method MultiMesh.set_instance_custom_data]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1986
+#: doc/classes/RenderingServer.xml:1985
msgid ""
"Sets the [Transform] for this instance. Equivalent to [method MultiMesh."
"set_instance_transform]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1999
+#: doc/classes/RenderingServer.xml:1998
msgid ""
"Sets the [Transform2D] for this instance. For use when multimesh is used in "
"2D. Equivalent to [method MultiMesh.set_instance_transform_2d]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2020
+#: doc/classes/RenderingServer.xml:2019
msgid ""
"Sets the mesh to be drawn by the multimesh. Equivalent to [member MultiMesh."
"mesh]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2031
+#: doc/classes/RenderingServer.xml:2030
msgid ""
"Sets the number of instances visible at a given time. If -1, all instances "
"that have been allocated are drawn. Equivalent to [member MultiMesh."
"visible_instance_count]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2038
+#: doc/classes/RenderingServer.xml:2037
msgid ""
"Creates a new omni light and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID can be used in most "
@@ -42587,7 +43653,7 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2047
+#: doc/classes/RenderingServer.xml:2046
msgid ""
"Creates a particle system and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42598,23 +43664,23 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2058
+#: doc/classes/RenderingServer.xml:2057
msgid ""
"Calculates and returns the axis-aligned bounding box that contains all the "
"particles. Equivalent to [method GPUParticles3D.capture_aabb]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2067
+#: doc/classes/RenderingServer.xml:2066
msgid "Returns [code]true[/code] if particles are currently set to emitting."
msgstr ""
-#: doc/classes/RenderingServer.xml:2076
+#: doc/classes/RenderingServer.xml:2075
msgid ""
"Returns [code]true[/code] if particles are not emitting and particles are "
"set to inactive."
msgstr ""
-#: doc/classes/RenderingServer.xml:2085
+#: doc/classes/RenderingServer.xml:2084
msgid ""
"Add particle system to list of particle systems that need to be updated. "
"Update will take place on the next frame, or on the next call to [method "
@@ -42622,121 +43688,121 @@ msgid ""
"instances_cull_ray]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2094
+#: doc/classes/RenderingServer.xml:2093
msgid ""
"Reset the particles on the next update. Equivalent to [method GPUParticles3D."
"restart]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2105
+#: doc/classes/RenderingServer.xml:2104
msgid ""
"Sets the number of particles to be drawn and allocates the memory for them. "
"Equivalent to [member GPUParticles3D.amount]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2116
+#: doc/classes/RenderingServer.xml:2115
msgid ""
"Sets a custom axis-aligned bounding box for the particle system. Equivalent "
"to [member GPUParticles3D.visibility_aabb]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2127
+#: doc/classes/RenderingServer.xml:2126
msgid ""
"Sets the draw order of the particles to one of the named enums from [enum "
"ParticlesDrawOrder]. See [enum ParticlesDrawOrder] for options. Equivalent "
"to [member GPUParticles3D.draw_order]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2140
+#: doc/classes/RenderingServer.xml:2139
msgid ""
"Sets the mesh to be used for the specified draw pass. Equivalent to [member "
"GPUParticles3D.draw_pass_1], [member GPUParticles3D.draw_pass_2], [member "
"GPUParticles3D.draw_pass_3], and [member GPUParticles3D.draw_pass_4]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2151
+#: doc/classes/RenderingServer.xml:2150
msgid ""
"Sets the number of draw passes to use. Equivalent to [member GPUParticles3D."
"draw_passes]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2162
+#: doc/classes/RenderingServer.xml:2161
msgid ""
"Sets the [Transform] that will be used by the particles when they first emit."
msgstr ""
-#: doc/classes/RenderingServer.xml:2173
+#: doc/classes/RenderingServer.xml:2172
msgid ""
"If [code]true[/code], particles will emit over time. Setting to false does "
"not reset the particles, but only stops their emission. Equivalent to "
"[member GPUParticles3D.emitting]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2184
+#: doc/classes/RenderingServer.xml:2183
msgid ""
"Sets the explosiveness ratio. Equivalent to [member GPUParticles3D."
"explosiveness]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2195
+#: doc/classes/RenderingServer.xml:2194
msgid ""
"Sets the frame rate that the particle system rendering will be fixed to. "
"Equivalent to [member GPUParticles3D.fixed_fps]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2206
+#: doc/classes/RenderingServer.xml:2205
msgid ""
"If [code]true[/code], uses fractional delta which smooths the movement of "
"the particles. Equivalent to [member GPUParticles3D.fract_delta]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2217
+#: doc/classes/RenderingServer.xml:2216
msgid ""
"Sets the lifetime of each particle in the system. Equivalent to [member "
"GPUParticles3D.lifetime]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2228
+#: doc/classes/RenderingServer.xml:2227
msgid ""
"If [code]true[/code], particles will emit once and then stop. Equivalent to "
"[member GPUParticles3D.one_shot]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2239
+#: doc/classes/RenderingServer.xml:2238
msgid ""
"Sets the preprocess time for the particles animation. This lets you delay "
"starting an animation until after the particles have begun emitting. "
"Equivalent to [member GPUParticles3D.preprocess]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2250
+#: doc/classes/RenderingServer.xml:2249
msgid ""
"Sets the material for processing the particles. Note: this is not the "
"material used to draw the materials. Equivalent to [member GPUParticles3D."
"process_material]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2261
+#: doc/classes/RenderingServer.xml:2260
msgid ""
"Sets the emission randomness ratio. This randomizes the emission of "
"particles within their phase. Equivalent to [member GPUParticles3D."
"randomness]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2272
+#: doc/classes/RenderingServer.xml:2271
msgid ""
"Sets the speed scale of the particle system. Equivalent to [member "
"GPUParticles3D.speed_scale]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2283
+#: doc/classes/RenderingServer.xml:2282
msgid ""
"If [code]true[/code], particles use local coordinates. If [code]false[/code] "
"they use global coordinates. Equivalent to [member GPUParticles3D."
"local_coords]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2290
+#: doc/classes/RenderingServer.xml:2289
msgid ""
"Creates a reflection probe and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42747,85 +43813,64 @@ msgid ""
"[method instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2303
+#: doc/classes/RenderingServer.xml:2332
msgid ""
"If [code]true[/code], reflections will ignore sky contribution. Equivalent "
-"to [member ReflectionProbe.interior_enable]."
+"to [member ReflectionProbe.interior]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2314
+#: doc/classes/RenderingServer.xml:2343
msgid ""
"Sets the render cull mask for this reflection probe. Only instances with a "
"matching cull mask will be rendered by this probe. Equivalent to [member "
"ReflectionProbe.cull_mask]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2325
+#: doc/classes/RenderingServer.xml:2354
msgid ""
"If [code]true[/code], uses box projection. This can make reflections look "
"more correct in certain situations. Equivalent to [member ReflectionProbe."
"box_projection]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2336
+#: doc/classes/RenderingServer.xml:2365
msgid ""
"If [code]true[/code], computes shadows in the reflection probe. This makes "
"the reflection much slower to compute. Equivalent to [member ReflectionProbe."
"enable_shadows]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2347
+#: doc/classes/RenderingServer.xml:2376
msgid ""
"Sets the size of the area that the reflection probe will capture. Equivalent "
"to [member ReflectionProbe.extents]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2358
+#: doc/classes/RenderingServer.xml:2387
msgid ""
"Sets the intensity of the reflection probe. Intensity modulates the strength "
"of the reflection. Equivalent to [member ReflectionProbe.intensity]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2369
-msgid ""
-"Sets the ambient light color for this reflection probe when set to interior "
-"mode. Equivalent to [member ReflectionProbe.interior_ambient_color]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2380
-msgid ""
-"Sets the energy multiplier for this reflection probes ambient light "
-"contribution when set to interior mode. Equivalent to [member "
-"ReflectionProbe.interior_ambient_energy]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2391
-msgid ""
-"Sets the contribution value for how much the reflection affects the ambient "
-"light for this reflection probe when set to interior mode. Useful so that "
-"ambient light matches the color of the room. Equivalent to [member "
-"ReflectionProbe.interior_ambient_contrib]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2402
+#: doc/classes/RenderingServer.xml:2398
msgid ""
"Sets the max distance away from the probe an object can be before it is "
"culled. Equivalent to [member ReflectionProbe.max_distance]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2413
+#: doc/classes/RenderingServer.xml:2409
msgid ""
"Sets the origin offset to be used when this reflection probe is in box "
"project mode. Equivalent to [member ReflectionProbe.origin_offset]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2424
+#: doc/classes/RenderingServer.xml:2420
msgid ""
"Sets how often the reflection probe updates. Can either be once or every "
"frame. See [enum ReflectionProbeUpdateMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2437
+#: doc/classes/RenderingServer.xml:2433
msgid ""
"Schedules a callback to the corresponding named [code]method[/code] on "
"[code]where[/code] after a frame has been drawn.\n"
@@ -42833,7 +43878,7 @@ msgid ""
"[code]userdata[/code]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2445
+#: doc/classes/RenderingServer.xml:2441
msgid ""
"Creates a scenario and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all "
@@ -42843,24 +43888,24 @@ msgid ""
"The scenario is the 3D world that all the visual instances exist in."
msgstr ""
-#: doc/classes/RenderingServer.xml:2458
+#: doc/classes/RenderingServer.xml:2454
msgid ""
"Sets the [enum ScenarioDebugMode] for this scenario. See [enum "
"ScenarioDebugMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2469
+#: doc/classes/RenderingServer.xml:2465
msgid "Sets the environment that will be used with this scenario."
msgstr ""
-#: doc/classes/RenderingServer.xml:2480
+#: doc/classes/RenderingServer.xml:2476
msgid ""
"Sets the fallback environment to be used by this scenario. The fallback "
"environment is used if no environment is set. Internally, this is used by "
"the editor to provide a default environment."
msgstr ""
-#: doc/classes/RenderingServer.xml:2495
+#: doc/classes/RenderingServer.xml:2491
msgid ""
"Sets a boot image. The color defines the background color. If [code]scale[/"
"code] is [code]true[/code], the image will be scaled to fit the screen size. "
@@ -42869,19 +43914,19 @@ msgid ""
"the image will be scaled with nearest-neighbor interpolation."
msgstr ""
-#: doc/classes/RenderingServer.xml:2504
+#: doc/classes/RenderingServer.xml:2500
msgid ""
"If [code]true[/code], the engine will generate wireframes for use with the "
"wireframe debug mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:2513
+#: doc/classes/RenderingServer.xml:2509
msgid ""
"Sets the default clear color which is used when a specific clear color has "
"not been selected."
msgstr ""
-#: doc/classes/RenderingServer.xml:2520
+#: doc/classes/RenderingServer.xml:2516
msgid ""
"Creates an empty shader and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42890,47 +43935,47 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2530
+#: doc/classes/RenderingServer.xml:2526
msgid "Returns a shader's code."
msgstr ""
-#: doc/classes/RenderingServer.xml:2541
+#: doc/classes/RenderingServer.xml:2537
msgid "Returns a default texture from a shader searched by name."
msgstr ""
-#: doc/classes/RenderingServer.xml:2560
+#: doc/classes/RenderingServer.xml:2556
msgid "Returns the parameters of a shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:2571
+#: doc/classes/RenderingServer.xml:2567
msgid "Sets a shader's code."
msgstr ""
-#: doc/classes/RenderingServer.xml:2584
+#: doc/classes/RenderingServer.xml:2580
msgid "Sets a shader's default texture. Overwrites the texture given by name."
msgstr ""
-#: doc/classes/RenderingServer.xml:2597
+#: doc/classes/RenderingServer.xml:2593
msgid "Allocates the GPU buffers for this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2608
+#: doc/classes/RenderingServer.xml:2604
msgid "Returns the [Transform] set for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2619
+#: doc/classes/RenderingServer.xml:2615
msgid "Returns the [Transform2D] set for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2632
+#: doc/classes/RenderingServer.xml:2628
msgid "Sets the [Transform] for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2645
+#: doc/classes/RenderingServer.xml:2641
msgid "Sets the [Transform2D] for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2652
+#: doc/classes/RenderingServer.xml:2648
msgid ""
"Creates a skeleton and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all "
@@ -42939,11 +43984,11 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2662
+#: doc/classes/RenderingServer.xml:2658
msgid "Returns the number of bones allocated for this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2669
+#: doc/classes/RenderingServer.xml:2665
msgid ""
"Creates an empty sky and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all [code]sky_*[/"
@@ -42952,13 +43997,13 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2681
+#: doc/classes/RenderingServer.xml:2677
msgid ""
"Sets the material that the sky uses to render the background and reflection "
"maps."
msgstr ""
-#: doc/classes/RenderingServer.xml:2688
+#: doc/classes/RenderingServer.xml:2684
msgid ""
"Creates a spot light and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID can be used in most [code]light_*[/"
@@ -42969,15 +44014,15 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2717
+#: doc/classes/RenderingServer.xml:2713
msgid "Sets a viewport's camera."
msgstr ""
-#: doc/classes/RenderingServer.xml:2728
+#: doc/classes/RenderingServer.xml:2724
msgid "Sets a viewport's canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:2741
+#: doc/classes/RenderingServer.xml:2737
msgid ""
"Copies the viewport to a region of the screen specified by [code]rect[/"
"code]. If [method viewport_set_render_direct_to_screen] is [code]true[/"
@@ -42999,7 +44044,7 @@ msgid ""
"viewport_set_render_direct_to_screen]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2755
+#: doc/classes/RenderingServer.xml:2751
msgid ""
"Creates an empty viewport and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -43008,72 +44053,72 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2767
+#: doc/classes/RenderingServer.xml:2763
msgid ""
"Returns a viewport's render information. For options, see the [enum "
"ViewportRenderInfo] constants."
msgstr ""
-#: doc/classes/RenderingServer.xml:2776
+#: doc/classes/RenderingServer.xml:2772
msgid "Returns the viewport's last rendered frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:2787
+#: doc/classes/RenderingServer.xml:2783
msgid "Detaches a viewport from a canvas and vice versa."
msgstr ""
-#: doc/classes/RenderingServer.xml:2798
+#: doc/classes/RenderingServer.xml:2794
msgid "If [code]true[/code], sets the viewport active, else sets it inactive."
msgstr ""
-#: doc/classes/RenderingServer.xml:2813
+#: doc/classes/RenderingServer.xml:2809
msgid ""
"Sets the stacking order for a viewport's canvas.\n"
"[code]layer[/code] is the actual canvas layer, while [code]sublayer[/code] "
"specifies the stacking order of the canvas among those in the same layer."
msgstr ""
-#: doc/classes/RenderingServer.xml:2827
+#: doc/classes/RenderingServer.xml:2823
msgid "Sets the transformation of a viewport's canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:2838
+#: doc/classes/RenderingServer.xml:2834
msgid ""
"Sets the clear mode of a viewport. See [enum ViewportClearMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2849
+#: doc/classes/RenderingServer.xml:2845
msgid ""
"Sets the debug draw mode of a viewport. See [enum ViewportDebugDraw] for "
"options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2860
+#: doc/classes/RenderingServer.xml:2856
msgid ""
"If [code]true[/code], rendering of a viewport's environment is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:2871
+#: doc/classes/RenderingServer.xml:2867
msgid "Sets the viewport's global transformation matrix."
msgstr ""
-#: doc/classes/RenderingServer.xml:2882
+#: doc/classes/RenderingServer.xml:2878
msgid "If [code]true[/code], the viewport's canvas is not rendered."
msgstr ""
-#: doc/classes/RenderingServer.xml:2893
+#: doc/classes/RenderingServer.xml:2889
msgid "Currently unimplemented in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:2904
+#: doc/classes/RenderingServer.xml:2900
msgid "Sets the anti-aliasing mode. See [enum ViewportMSAA] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2915
+#: doc/classes/RenderingServer.xml:2911
msgid "Sets the viewport's parent to another viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:2926
+#: doc/classes/RenderingServer.xml:2922
msgid ""
"If [code]true[/code], render the contents of the viewport directly to "
"screen. This allows a low-level optimization where you can skip drawing a "
@@ -43089,455 +44134,455 @@ msgid ""
"significantly larger than the window size."
msgstr ""
-#: doc/classes/RenderingServer.xml:2937
+#: doc/classes/RenderingServer.xml:2933
msgid ""
"Sets a viewport's scenario.\n"
"The scenario contains information about the [enum ScenarioDebugMode], "
"environment information, reflection atlas etc."
msgstr ""
-#: doc/classes/RenderingServer.xml:2951
+#: doc/classes/RenderingServer.xml:2947
msgid "Sets the shadow atlas quadrant's subdivision."
msgstr ""
-#: doc/classes/RenderingServer.xml:2962
+#: doc/classes/RenderingServer.xml:2958
msgid ""
"Sets the size of the shadow atlas's images (used for omni and spot lights). "
"The value will be rounded up to the nearest power of 2."
msgstr ""
-#: doc/classes/RenderingServer.xml:2975
+#: doc/classes/RenderingServer.xml:2971
msgid "Sets the viewport's width and height."
msgstr ""
-#: doc/classes/RenderingServer.xml:2986
+#: doc/classes/RenderingServer.xml:2982
msgid ""
"If [code]true[/code], the viewport renders its background as transparent."
msgstr ""
-#: doc/classes/RenderingServer.xml:2997
+#: doc/classes/RenderingServer.xml:2993
msgid ""
"Sets when the viewport should be updated. See [enum ViewportUpdateMode] "
"constants for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:3008
+#: doc/classes/RenderingServer.xml:3004
msgid ""
"If [code]true[/code], the viewport uses augmented or virtual reality "
"technologies. See [XRInterface]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3014
+#: doc/classes/RenderingServer.xml:3010
msgid ""
"If [code]false[/code], disables rendering completely, but the engine logic "
"is still being processed. You can call [method force_draw] to draw a frame "
"even with rendering disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3020
+#: doc/classes/RenderingServer.xml:3016
msgid ""
"Emitted at the end of the frame, after the RenderingServer has finished "
"updating all the Viewports."
msgstr ""
-#: doc/classes/RenderingServer.xml:3025
+#: doc/classes/RenderingServer.xml:3021
msgid ""
"Emitted at the beginning of the frame, before the RenderingServer updates "
"all the Viewports."
msgstr ""
-#: doc/classes/RenderingServer.xml:3031
+#: doc/classes/RenderingServer.xml:3027
msgid "Marks an error that shows that the index array is empty."
msgstr ""
-#: doc/classes/RenderingServer.xml:3034
+#: doc/classes/RenderingServer.xml:3030
msgid "Number of weights/bones per vertex."
msgstr ""
-#: doc/classes/RenderingServer.xml:3037
+#: doc/classes/RenderingServer.xml:3033
msgid "The minimum Z-layer for canvas items."
msgstr ""
-#: doc/classes/RenderingServer.xml:3040
+#: doc/classes/RenderingServer.xml:3036
msgid "The maximum Z-layer for canvas items."
msgstr ""
-#: doc/classes/RenderingServer.xml:3043
+#: doc/classes/RenderingServer.xml:3039
msgid ""
"Max number of glow levels that can be used with glow post-process effect."
msgstr ""
-#: doc/classes/RenderingServer.xml:3046
+#: doc/classes/RenderingServer.xml:3042
msgid "Unused enum in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:3067
+#: doc/classes/RenderingServer.xml:3063
msgid "Shader is a 3D shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3070
+#: doc/classes/RenderingServer.xml:3066
msgid "Shader is a 2D shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3073
+#: doc/classes/RenderingServer.xml:3069
msgid "Shader is a particle shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3076
+#: doc/classes/RenderingServer.xml:3072
msgid "Shader is a sky shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3079
+#: doc/classes/RenderingServer.xml:3075
msgid "Represents the size of the [enum ShaderMode] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3082
+#: doc/classes/RenderingServer.xml:3078
msgid "The minimum renderpriority of all materials."
msgstr ""
-#: doc/classes/RenderingServer.xml:3085
+#: doc/classes/RenderingServer.xml:3081
msgid "The maximum renderpriority of all materials."
msgstr ""
-#: doc/classes/RenderingServer.xml:3088
+#: doc/classes/RenderingServer.xml:3084
msgid "Array is a vertex array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3091
+#: doc/classes/RenderingServer.xml:3087
msgid "Array is a normal array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3094
+#: doc/classes/RenderingServer.xml:3090
msgid "Array is a tangent array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3097
+#: doc/classes/RenderingServer.xml:3093
msgid "Array is a color array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3100
+#: doc/classes/RenderingServer.xml:3096
msgid "Array is an UV coordinates array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3103
+#: doc/classes/RenderingServer.xml:3099
msgid "Array is an UV coordinates array for the second UV coordinates."
msgstr ""
-#: doc/classes/RenderingServer.xml:3106
+#: doc/classes/RenderingServer.xml:3102
msgid "Array contains bone information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3109
+#: doc/classes/RenderingServer.xml:3105
msgid "Array is weight information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3112
+#: doc/classes/RenderingServer.xml:3108
msgid "Array is index array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3118
+#: doc/classes/RenderingServer.xml:3114
msgid "Flag used to mark a vertex array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3121
+#: doc/classes/RenderingServer.xml:3117
msgid "Flag used to mark a normal array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3124
+#: doc/classes/RenderingServer.xml:3120
msgid "Flag used to mark a tangent array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3127
+#: doc/classes/RenderingServer.xml:3123
msgid "Flag used to mark a color array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3130
+#: doc/classes/RenderingServer.xml:3126
msgid "Flag used to mark an UV coordinates array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3133
+#: doc/classes/RenderingServer.xml:3129
msgid ""
"Flag used to mark an UV coordinates array for the second UV coordinates."
msgstr ""
-#: doc/classes/RenderingServer.xml:3136
+#: doc/classes/RenderingServer.xml:3132
msgid "Flag used to mark a bone information array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3139
+#: doc/classes/RenderingServer.xml:3135
msgid "Flag used to mark a weights array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3142
+#: doc/classes/RenderingServer.xml:3138
msgid "Flag used to mark an index array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3171
+#: doc/classes/RenderingServer.xml:3167
msgid "Primitive to draw consists of points."
msgstr ""
-#: doc/classes/RenderingServer.xml:3174
+#: doc/classes/RenderingServer.xml:3170
msgid "Primitive to draw consists of lines."
msgstr ""
-#: doc/classes/RenderingServer.xml:3177
+#: doc/classes/RenderingServer.xml:3173
msgid "Primitive to draw consists of a line strip from start to end."
msgstr ""
-#: doc/classes/RenderingServer.xml:3180
+#: doc/classes/RenderingServer.xml:3176
msgid "Primitive to draw consists of triangles."
msgstr ""
-#: doc/classes/RenderingServer.xml:3183
+#: doc/classes/RenderingServer.xml:3179
msgid ""
"Primitive to draw consists of a triangle strip (the last 3 vertices are "
"always combined to make a triangle)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3186
+#: doc/classes/RenderingServer.xml:3182
msgid "Represents the size of the [enum PrimitiveType] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3195
+#: doc/classes/RenderingServer.xml:3191
msgid "Use [Transform2D] to store MultiMesh transform."
msgstr ""
-#: doc/classes/RenderingServer.xml:3198
+#: doc/classes/RenderingServer.xml:3194
msgid "Use [Transform] to store MultiMesh transform."
msgstr ""
-#: doc/classes/RenderingServer.xml:3201
+#: doc/classes/RenderingServer.xml:3197
msgid "Is a directional (sun) light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3204
+#: doc/classes/RenderingServer.xml:3200
msgid "Is an omni light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3207
+#: doc/classes/RenderingServer.xml:3203
msgid "Is a spot light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3210
+#: doc/classes/RenderingServer.xml:3206
msgid "The light's energy."
msgstr ""
-#: doc/classes/RenderingServer.xml:3215
+#: doc/classes/RenderingServer.xml:3211
msgid "The light's influence on specularity."
msgstr ""
-#: doc/classes/RenderingServer.xml:3218
+#: doc/classes/RenderingServer.xml:3214
msgid "The light's range."
msgstr ""
-#: doc/classes/RenderingServer.xml:3221
+#: doc/classes/RenderingServer.xml:3217
msgid ""
"The size of the light when using spot light or omni light. The angular size "
"of the light when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3224
+#: doc/classes/RenderingServer.xml:3220
msgid "The light's attenuation."
msgstr ""
-#: doc/classes/RenderingServer.xml:3227
+#: doc/classes/RenderingServer.xml:3223
msgid "The spotlight's angle."
msgstr ""
-#: doc/classes/RenderingServer.xml:3230
+#: doc/classes/RenderingServer.xml:3226
msgid "The spotlight's attenuation."
msgstr ""
-#: doc/classes/RenderingServer.xml:3233
+#: doc/classes/RenderingServer.xml:3229
msgid "Max distance that shadows will be rendered."
msgstr ""
-#: doc/classes/RenderingServer.xml:3236
+#: doc/classes/RenderingServer.xml:3232
msgid "Proportion of shadow atlas occupied by the first split."
msgstr ""
-#: doc/classes/RenderingServer.xml:3239
+#: doc/classes/RenderingServer.xml:3235
msgid "Proportion of shadow atlas occupied by the second split."
msgstr ""
-#: doc/classes/RenderingServer.xml:3242
+#: doc/classes/RenderingServer.xml:3238
msgid ""
"Proportion of shadow atlas occupied by the third split. The fourth split "
"occupies the rest."
msgstr ""
-#: doc/classes/RenderingServer.xml:3245
+#: doc/classes/RenderingServer.xml:3241
msgid ""
"Proportion of shadow max distance where the shadow will start to fade out."
msgstr ""
-#: doc/classes/RenderingServer.xml:3248
+#: doc/classes/RenderingServer.xml:3244
msgid ""
"Normal bias used to offset shadow lookup by object normal. Can be used to "
"fix self-shadowing artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3251
+#: doc/classes/RenderingServer.xml:3247
msgid "Bias the shadow lookup to fix self-shadowing artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3257
+#: doc/classes/RenderingServer.xml:3253
msgid ""
"Blurs the edges of the shadow. Can be used to hide pixel artifacts in low "
"resolution shadow maps. A high value can make shadows appear grainy and can "
"cause other unwanted artifacts. Try to keep as near default as possible."
msgstr ""
-#: doc/classes/RenderingServer.xml:3262
+#: doc/classes/RenderingServer.xml:3258
msgid "Represents the size of the [enum LightParam] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3265
+#: doc/classes/RenderingServer.xml:3267
msgid "Use a dual paraboloid shadow map for omni lights."
msgstr ""
-#: doc/classes/RenderingServer.xml:3268
+#: doc/classes/RenderingServer.xml:3270
msgid ""
"Use a cubemap shadow map for omni lights. Slower but better quality than "
"dual paraboloid."
msgstr ""
-#: doc/classes/RenderingServer.xml:3271
+#: doc/classes/RenderingServer.xml:3273
msgid "Use orthogonal shadow projection for directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3274
+#: doc/classes/RenderingServer.xml:3276
msgid "Use 2 splits for shadow projection when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3277
+#: doc/classes/RenderingServer.xml:3279
msgid "Use 4 splits for shadow projection when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3280
+#: doc/classes/RenderingServer.xml:3282
msgid ""
"Keeps shadows stable as camera moves but has lower effective resolution."
msgstr ""
-#: doc/classes/RenderingServer.xml:3283
+#: doc/classes/RenderingServer.xml:3285
msgid ""
"Optimize use of shadow maps, increasing the effective resolution. But may "
"result in shadows moving or flickering slightly."
msgstr ""
-#: doc/classes/RenderingServer.xml:3286
+#: doc/classes/RenderingServer.xml:3288
msgid "Reflection probe will update reflections once and then stop."
msgstr ""
-#: doc/classes/RenderingServer.xml:3289
+#: doc/classes/RenderingServer.xml:3291
msgid ""
"Reflection probe will update each frame. This mode is necessary to capture "
"moving objects."
msgstr ""
-#: doc/classes/RenderingServer.xml:3302
+#: doc/classes/RenderingServer.xml:3310
msgid "Draw particles in the order that they appear in the particles array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3305
+#: doc/classes/RenderingServer.xml:3313
msgid "Sort particles based on their lifetime."
msgstr ""
-#: doc/classes/RenderingServer.xml:3308
+#: doc/classes/RenderingServer.xml:3316
msgid "Sort particles based on their distance to the camera."
msgstr ""
-#: doc/classes/RenderingServer.xml:3311
+#: doc/classes/RenderingServer.xml:3319
msgid "Do not update the viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:3314
+#: doc/classes/RenderingServer.xml:3322
msgid "Update the viewport once then set to disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3317
+#: doc/classes/RenderingServer.xml:3325
msgid "Update the viewport whenever it is visible."
msgstr ""
-#: doc/classes/RenderingServer.xml:3322
+#: doc/classes/RenderingServer.xml:3330
msgid "Always update the viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:3325
+#: doc/classes/RenderingServer.xml:3333
msgid "The viewport is always cleared before drawing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3328
+#: doc/classes/RenderingServer.xml:3336
msgid "The viewport is never cleared before drawing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3331
+#: doc/classes/RenderingServer.xml:3339
msgid ""
"The viewport is cleared once, then the clear mode is set to [constant "
"VIEWPORT_CLEAR_NEVER]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3334
+#: doc/classes/RenderingServer.xml:3342
msgid "Multisample antialiasing is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3337
+#: doc/classes/RenderingServer.xml:3345
msgid "Multisample antialiasing uses 2 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3340
+#: doc/classes/RenderingServer.xml:3348
msgid "Multisample antialiasing uses 4 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3343
+#: doc/classes/RenderingServer.xml:3351
msgid "Multisample antialiasing uses 8 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3346
+#: doc/classes/RenderingServer.xml:3354
msgid "Multisample antialiasing uses 16 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3357
+#: doc/classes/RenderingServer.xml:3365
msgid "Number of objects drawn in a single frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3360
+#: doc/classes/RenderingServer.xml:3368
msgid "Number of vertices drawn in a single frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3363
+#: doc/classes/RenderingServer.xml:3371
msgid "Number of material changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3366
+#: doc/classes/RenderingServer.xml:3374
msgid "Number of shader changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3369
+#: doc/classes/RenderingServer.xml:3377
msgid "Number of surface changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3372
+#: doc/classes/RenderingServer.xml:3380
msgid "Number of draw calls during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3375
+#: doc/classes/RenderingServer.xml:3383
msgid "Represents the size of the [enum ViewportRenderInfo] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3378
+#: doc/classes/RenderingServer.xml:3386
msgid "Debug draw is disabled. Default setting."
msgstr ""
-#: doc/classes/RenderingServer.xml:3381 doc/classes/Viewport.xml:348
+#: doc/classes/RenderingServer.xml:3389 doc/classes/Viewport.xml:348
msgid "Objects are displayed without light information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3384
+#: doc/classes/RenderingServer.xml:3392
msgid "Objects are displayed with only light information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3387 doc/classes/Viewport.xml:353
+#: doc/classes/RenderingServer.xml:3395 doc/classes/Viewport.xml:353
msgid ""
"Objects are displayed semi-transparent with additive blending so you can see "
"where they are drawing over top of one another. A higher overdraw means you "
@@ -43545,41 +44590,41 @@ msgid ""
"others."
msgstr ""
-#: doc/classes/RenderingServer.xml:3390
+#: doc/classes/RenderingServer.xml:3398
msgid "Debug draw draws objects in wireframe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3393
+#: doc/classes/RenderingServer.xml:3401
msgid ""
"Normal buffer is drawn instead of regular scene so you can see the per-pixel "
"normals that will be used by post-processing effects."
msgstr ""
-#: doc/classes/RenderingServer.xml:3396 doc/classes/Viewport.xml:361
+#: doc/classes/RenderingServer.xml:3404 doc/classes/Viewport.xml:361
msgid "Objects are displayed with only the albedo value from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3399 doc/classes/Viewport.xml:364
+#: doc/classes/RenderingServer.xml:3407 doc/classes/Viewport.xml:364
msgid "Objects are displayed with only the lighting value from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3402 doc/classes/Viewport.xml:367
+#: doc/classes/RenderingServer.xml:3410 doc/classes/Viewport.xml:367
msgid "Objects are displayed with only the emission color from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3405 doc/classes/Viewport.xml:370
+#: doc/classes/RenderingServer.xml:3413 doc/classes/Viewport.xml:370
msgid ""
"Draws the shadow atlas that stores shadows from [OmniLight3D]s and "
"[SpotLight3D]s in the upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3408 doc/classes/Viewport.xml:373
+#: doc/classes/RenderingServer.xml:3416 doc/classes/Viewport.xml:373
msgid ""
"Draws the shadow atlas that stores shadows from [DirectionalLight3D]s in the "
"upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3413
+#: doc/classes/RenderingServer.xml:3421
msgid ""
"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 "
@@ -43587,21 +44632,14 @@ msgid ""
"your [WorldEnvironment]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3416 doc/classes/Viewport.xml:381
-msgid ""
-"Draws the roughness limiter post process over the Viewport so you can see "
-"where it has an effect. It must be enabled in [member ProjectSettings."
-"rendering/quality/screen_filters/screen_space_roughness_limiter] to work."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:3419
+#: doc/classes/RenderingServer.xml:3424
msgid ""
"Colors each PSSM split for the [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."
msgstr ""
-#: doc/classes/RenderingServer.xml:3424
+#: doc/classes/RenderingServer.xml:3435
msgid ""
"Uses high quality importance sampling to process the radiance map. In "
"general, this results in much higher quality than [constant Sky."
@@ -43612,7 +44650,7 @@ msgid ""
"ggx_samples]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3427
+#: doc/classes/RenderingServer.xml:3438
msgid ""
"Uses the fast filtering algorithm to process the radiance map. In general "
"this results in lower quality, but substantially faster run times.\n"
@@ -43620,347 +44658,347 @@ msgid ""
"[member Sky.radiance_size] must be set to [constant Sky.RADIANCE_SIZE_256]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3431
+#: doc/classes/RenderingServer.xml:3442
msgid "Use the clear color as background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3434
+#: doc/classes/RenderingServer.xml:3445
msgid "Use a specified color as the background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3437
+#: doc/classes/RenderingServer.xml:3448
msgid "Use a sky resource for the background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3440
+#: doc/classes/RenderingServer.xml:3451
msgid ""
"Use a specified canvas layer as the background. This can be useful for "
"instantiating a 2D scene in a 3D world."
msgstr ""
-#: doc/classes/RenderingServer.xml:3443
+#: doc/classes/RenderingServer.xml:3454
msgid ""
"Do not clear the background, use whatever was rendered last frame as the "
"background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3449
+#: doc/classes/RenderingServer.xml:3460
msgid "Represents the size of the [enum EnvironmentBG] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3488
+#: doc/classes/RenderingServer.xml:3499
msgid "Output color as they came in."
msgstr ""
-#: doc/classes/RenderingServer.xml:3491
+#: doc/classes/RenderingServer.xml:3502
msgid "Use the Reinhard tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3494
+#: doc/classes/RenderingServer.xml:3505
msgid "Use the filmic tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3497
+#: doc/classes/RenderingServer.xml:3508
msgid "Use the ACES tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3508
+#: doc/classes/RenderingServer.xml:3519
msgid "Disables the blur set for SSAO. Will make SSAO look noisier."
msgstr ""
-#: doc/classes/RenderingServer.xml:3511
+#: doc/classes/RenderingServer.xml:3522
msgid "Perform a 1x1 blur on the SSAO output."
msgstr ""
-#: doc/classes/RenderingServer.xml:3514
+#: doc/classes/RenderingServer.xml:3525
msgid "Performs a 2x2 blur on the SSAO output."
msgstr ""
-#: doc/classes/RenderingServer.xml:3517
+#: doc/classes/RenderingServer.xml:3528
msgid "Performs a 3x3 blur on the SSAO output. Use this for smoothest SSAO."
msgstr ""
-#: doc/classes/RenderingServer.xml:3520
+#: doc/classes/RenderingServer.xml:3531
msgid "Lowest quality of screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3523
+#: doc/classes/RenderingServer.xml:3534
msgid "Medium quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3526
+#: doc/classes/RenderingServer.xml:3537
msgid "High quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3529
+#: doc/classes/RenderingServer.xml:3540
msgid "Highest quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3540
+#: doc/classes/RenderingServer.xml:3551
msgid ""
"Lowest quality DOF blur. This is the fastest setting, but you may be able to "
"see filtering artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3543
+#: doc/classes/RenderingServer.xml:3554
msgid "Low quality DOF blur."
msgstr ""
-#: doc/classes/RenderingServer.xml:3546
+#: doc/classes/RenderingServer.xml:3557
msgid "Medium quality DOF blur."
msgstr ""
-#: doc/classes/RenderingServer.xml:3549
+#: doc/classes/RenderingServer.xml:3560
msgid ""
"Highest quality DOF blur. Results in the smoothest looking blur by taking "
"the most samples, but is also significantly slower."
msgstr ""
-#: doc/classes/RenderingServer.xml:3552
+#: doc/classes/RenderingServer.xml:3563
msgid ""
"Calculate the DOF blur using a box filter. The fastest option, but results "
"in obvious lines in blur pattern."
msgstr ""
-#: doc/classes/RenderingServer.xml:3555
+#: doc/classes/RenderingServer.xml:3566
msgid "Calculates DOF blur using a hexagon shaped filter."
msgstr ""
-#: doc/classes/RenderingServer.xml:3558
+#: doc/classes/RenderingServer.xml:3569
msgid ""
"Calculates DOF blur using a circle shaped filter. Best quality and most "
"realistic, but slowest. Use only for areas where a lot of performance can be "
"dedicated to post-processing (e.g. cutscenes)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3573
+#: doc/classes/RenderingServer.xml:3584
msgid "Do not use a debug mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:3576
+#: doc/classes/RenderingServer.xml:3587
msgid "Draw all objects as wireframe models."
msgstr ""
-#: doc/classes/RenderingServer.xml:3579
+#: doc/classes/RenderingServer.xml:3590
msgid ""
"Draw all objects in a way that displays how much overdraw is occurring. "
"Overdraw occurs when a section of pixels is drawn and shaded and then "
"another object covers it up. To optimize a scene, you should reduce overdraw."
msgstr ""
-#: doc/classes/RenderingServer.xml:3582
+#: doc/classes/RenderingServer.xml:3593
msgid ""
"Draw all objects without shading. Equivalent to setting all objects shaders "
"to [code]unshaded[/code]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3585
+#: doc/classes/RenderingServer.xml:3596
msgid "The instance does not have a type."
msgstr ""
-#: doc/classes/RenderingServer.xml:3588
+#: doc/classes/RenderingServer.xml:3599
msgid "The instance is a mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:3591
+#: doc/classes/RenderingServer.xml:3602
msgid "The instance is a multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:3594
+#: doc/classes/RenderingServer.xml:3605
msgid "The instance is an immediate geometry."
msgstr ""
-#: doc/classes/RenderingServer.xml:3597
+#: doc/classes/RenderingServer.xml:3608
msgid "The instance is a particle emitter."
msgstr ""
-#: doc/classes/RenderingServer.xml:3600
+#: doc/classes/RenderingServer.xml:3611
msgid "The instance is a light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3603
+#: doc/classes/RenderingServer.xml:3614
msgid "The instance is a reflection probe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3606
+#: doc/classes/RenderingServer.xml:3617
msgid "The instance is a decal."
msgstr ""
-#: doc/classes/RenderingServer.xml:3609
+#: doc/classes/RenderingServer.xml:3620
msgid "The instance is a GI probe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3612
+#: doc/classes/RenderingServer.xml:3623
msgid "The instance is a lightmap."
msgstr ""
-#: doc/classes/RenderingServer.xml:3615
+#: doc/classes/RenderingServer.xml:3626
msgid "Represents the size of the [enum InstanceType] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3618
+#: doc/classes/RenderingServer.xml:3629
msgid ""
"A combination of the flags of geometry instances (mesh, multimesh, immediate "
"and particles)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3621
+#: doc/classes/RenderingServer.xml:3632
msgid "Allows the instance to be used in baked lighting."
msgstr ""
-#: doc/classes/RenderingServer.xml:3624
+#: doc/classes/RenderingServer.xml:3635
msgid "Allows the instance to be used with dynamic global illumination."
msgstr ""
-#: doc/classes/RenderingServer.xml:3627
+#: doc/classes/RenderingServer.xml:3638
msgid "When set, manually requests to draw geometry on next frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3630
+#: doc/classes/RenderingServer.xml:3641
msgid "Represents the size of the [enum InstanceFlags] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3633
+#: doc/classes/RenderingServer.xml:3644
msgid "Disable shadows from this instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:3636
+#: doc/classes/RenderingServer.xml:3647
msgid "Cast shadows from this instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:3639
+#: doc/classes/RenderingServer.xml:3650
msgid ""
"Disable backface culling when rendering the shadow of the object. This is "
"slightly slower but may result in more correct shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3642
+#: doc/classes/RenderingServer.xml:3653
msgid ""
"Only render the shadows from the object. The object itself will not be drawn."
msgstr ""
-#: doc/classes/RenderingServer.xml:3645
+#: doc/classes/RenderingServer.xml:3656
msgid "The nine patch gets stretched where needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3648
+#: doc/classes/RenderingServer.xml:3659
msgid "The nine patch gets filled with tiles where needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3651
+#: doc/classes/RenderingServer.xml:3662
msgid ""
"The nine patch gets filled with tiles where needed and stretches them a bit "
"if needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3654
+#: doc/classes/RenderingServer.xml:3665
msgid "Uses the default filter mode for this [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3666 doc/classes/Viewport.xml:399
+#: doc/classes/RenderingServer.xml:3677 doc/classes/Viewport.xml:402
msgid ""
"The texture filter blends between the nearest 4 pixels and between the "
"nearest 2 mipmaps."
msgstr ""
-#: doc/classes/RenderingServer.xml:3675
+#: doc/classes/RenderingServer.xml:3686
msgid "Max value for [enum CanvasItemTextureFilter] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3678
+#: doc/classes/RenderingServer.xml:3689
msgid "Uses the default repeat mode for this [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3681 doc/classes/Viewport.xml:405
+#: doc/classes/RenderingServer.xml:3692 doc/classes/Viewport.xml:408
msgid ""
"Disables textures repeating. Instead, when reading UVs outside the 0-1 "
"range, the value will be clamped to the edge of the texture, resulting in a "
"stretched out look at the borders of the texture."
msgstr ""
-#: doc/classes/RenderingServer.xml:3687 doc/classes/Viewport.xml:411
+#: doc/classes/RenderingServer.xml:3698 doc/classes/Viewport.xml:414
msgid ""
"Flip the texture when repeating so that the edge lines up instead of "
"abruptly changing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3690
+#: doc/classes/RenderingServer.xml:3701
msgid "Max value for [enum CanvasItemTextureRepeat] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3693
+#: doc/classes/RenderingServer.xml:3704
msgid "Adds light color additive to the canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:3696
+#: doc/classes/RenderingServer.xml:3707
msgid "Adds light color subtractive to the canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:3699
+#: doc/classes/RenderingServer.xml:3710
msgid "The light adds color depending on transparency."
msgstr ""
-#: doc/classes/RenderingServer.xml:3702
+#: doc/classes/RenderingServer.xml:3713
msgid "The light adds color depending on mask."
msgstr ""
-#: doc/classes/RenderingServer.xml:3705
+#: doc/classes/RenderingServer.xml:3716
msgid "Do not apply a filter to canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3708
+#: doc/classes/RenderingServer.xml:3719
msgid "Use PCF5 filtering to filter canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3711
+#: doc/classes/RenderingServer.xml:3722
msgid "Use PCF13 filtering to filter canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3714
+#: doc/classes/RenderingServer.xml:3725
msgid "Max value of the [enum CanvasLightShadowFilter] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3717
+#: doc/classes/RenderingServer.xml:3728
msgid "Culling of the canvas occluder is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3720
+#: doc/classes/RenderingServer.xml:3731
msgid "Culling of the canvas occluder is clockwise."
msgstr ""
-#: doc/classes/RenderingServer.xml:3723
+#: doc/classes/RenderingServer.xml:3734
msgid "Culling of the canvas occluder is counterclockwise."
msgstr ""
-#: doc/classes/RenderingServer.xml:3784
+#: doc/classes/RenderingServer.xml:3795
msgid "The amount of objects in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3787
+#: doc/classes/RenderingServer.xml:3798
msgid "The amount of vertices in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3790
+#: doc/classes/RenderingServer.xml:3801
msgid "The amount of modified materials in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3793
+#: doc/classes/RenderingServer.xml:3804
msgid "The amount of shader rebinds in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3796
+#: doc/classes/RenderingServer.xml:3807
msgid "The amount of surface changes in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3799
+#: doc/classes/RenderingServer.xml:3810
msgid "The amount of draw calls in frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3814
+#: doc/classes/RenderingServer.xml:3825
msgid "Hardware supports shaders. This enum is currently unused in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:3817
+#: doc/classes/RenderingServer.xml:3828
msgid ""
"Hardware supports multithreading. This enum is currently unused in Godot 3.x."
msgstr ""
@@ -43972,13 +45010,13 @@ msgstr ""
#: doc/classes/Resource.xml:7
msgid ""
"Resource is the base class for all Godot-specific resource types, serving "
-"primarily as data containers. They are reference counted and freed when no "
-"longer in use. They are also cached once loaded from disk, so that any "
-"further attempts to load a resource from a given path will return the same "
-"reference (all this in contrast to a [Node], which is not reference counted "
-"and can be instanced from disk as many times as desired). Resources can be "
-"saved externally on disk or bundled into another object, such as a [Node] or "
-"another resource."
+"primarily as data containers. Unlike [Object]s, they are reference-counted "
+"and freed when no longer in use. They are also cached once loaded from disk, "
+"so that any further attempts to load a resource from a given path will "
+"return the same reference (all this in contrast to a [Node], which is not "
+"reference-counted and can be instanced from disk as many times as desired). "
+"Resources can be saved externally on disk or bundled into another object, "
+"such as a [Node] or another resource."
msgstr ""
#: doc/classes/Resource.xml:10
@@ -43987,34 +45025,38 @@ msgid ""
"resources.html"
msgstr ""
-#: doc/classes/Resource.xml:17
+#: doc/classes/Resource.xml:18
msgid ""
"Virtual function which can be overridden to customize the behavior value of "
"[method setup_local_to_scene]."
msgstr ""
-#: doc/classes/Resource.xml:26
+#: doc/classes/Resource.xml:27
msgid ""
"Duplicates the resource, returning a new resource. By default, sub-resources "
-"are shared between resource copies for efficiency, this can be changed by "
-"passing [code]true[/code] to the [code]subresources[/code] argument."
+"are shared between resource copies for efficiency. This can be changed by "
+"passing [code]true[/code] to the [code]subresources[/code] argument which "
+"will copy the subresources.\n"
+"[b]Note:[/b] If [code]subresources[/code] is [code]true[/code], this method "
+"will only perform a shallow copy. Nested resources within subresources will "
+"not be duplicated and will still be shared."
msgstr ""
-#: doc/classes/Resource.xml:33
+#: doc/classes/Resource.xml:35
msgid ""
"If [member resource_local_to_scene] is enabled and the resource was loaded "
"from a [PackedScene] instantiation, returns the local scene where this "
"resource's unique copy is in use. Otherwise, returns [code]null[/code]."
msgstr ""
-#: doc/classes/Resource.xml:40
+#: doc/classes/Resource.xml:42
msgid ""
"Returns the RID of the resource (or an empty RID). Many resources (such as "
"[Texture2D], [Mesh], etc) are high-level abstractions of resources stored in "
"a server, so this function will return the original RID."
msgstr ""
-#: doc/classes/Resource.xml:47
+#: doc/classes/Resource.xml:49
msgid ""
"This method is called when a resource with [member resource_local_to_scene] "
"enabled is loaded from a [PackedScene] instantiation. Its behavior can be "
@@ -44024,7 +45066,7 @@ msgid ""
"local viewport."
msgstr ""
-#: doc/classes/Resource.xml:57
+#: doc/classes/Resource.xml:59
msgid ""
"Sets the path of the resource, potentially overriding an existing cache "
"entry for this path. This differs from setting [member resource_path], as "
@@ -44032,25 +45074,25 @@ msgid ""
"given path."
msgstr ""
-#: doc/classes/Resource.xml:63
+#: doc/classes/Resource.xml:65
msgid ""
"If [code]true[/code], the resource will be made unique in each instance of "
"its local scene. It can thus be modified in a scene instance without "
"impacting other instances of that same scene."
msgstr ""
-#: doc/classes/Resource.xml:66
+#: doc/classes/Resource.xml:68
msgid "The name of the resource. This is an optional identifier."
msgstr ""
-#: doc/classes/Resource.xml:69
+#: doc/classes/Resource.xml:71
msgid ""
"The path to the resource. In case it has its own file, it will return its "
"filepath. If it's tied to the scene, it will return the scene's path, "
"followed by the resource's index."
msgstr ""
-#: doc/classes/Resource.xml:75
+#: doc/classes/Resource.xml:77
msgid "Emitted whenever the resource changes."
msgstr ""
@@ -44869,11 +45911,11 @@ msgid ""
"global coordinate system, but is centered at the object's origin."
msgstr ""
-#: doc/classes/RigidBody2D.xml:87
+#: doc/classes/RigidBody2D.xml:87 doc/classes/RigidBody3D.xml:99
msgid ""
-"Returns a list of the bodies colliding with this one. Use [member "
-"contacts_reported] to set the maximum number reported. You must also set "
-"[member contact_monitor] to [code]true[/code].\n"
+"Returns a list of the bodies colliding with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
"For performance, list of collisions is updated once per frame and before the "
"physics step. Consider using signals instead."
@@ -44910,7 +45952,7 @@ msgstr ""
msgid "The body's total applied torque."
msgstr ""
-#: doc/classes/RigidBody2D.xml:130 doc/classes/RigidBody3D.xml:150
+#: doc/classes/RigidBody2D.xml:130 doc/classes/RigidBody3D.xml:157
msgid ""
"If [code]true[/code], the body can enter sleep mode when there is no "
"movement. See [member sleeping]."
@@ -44922,11 +45964,17 @@ msgid ""
"another RigidBody2D. See also [member contacts_reported]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:136
-msgid "The maximum number of contacts to report."
+#: doc/classes/RigidBody2D.xml:136 doc/classes/RigidBody3D.xml:163
+msgid ""
+"The maximum number of contacts that will be recorded. Requires [member "
+"contact_monitor] to be set to [code]true[/code].\n"
+"[b]Note:[/b] The number of contacts is different from the number of "
+"collisions. Collisions between parallel edges will result in two contacts "
+"(one at each end), and collisions between parallel faces will result in four "
+"contacts (one at each corner)."
msgstr ""
-#: doc/classes/RigidBody2D.xml:139
+#: doc/classes/RigidBody2D.xml:140
msgid ""
"Continuous collision detection mode.\n"
"Continuous collision detection tries to predict where a moving body will "
@@ -44936,21 +45984,21 @@ msgid ""
"methods are available. See [enum CCDMode] for details."
msgstr ""
-#: doc/classes/RigidBody2D.xml:143
+#: doc/classes/RigidBody2D.xml:144
msgid ""
"If [code]true[/code], internal force integration is disabled for this body. "
"Aside from collision response, the body will only move as determined by the "
"[method _integrate_forces] function."
msgstr ""
-#: doc/classes/RigidBody2D.xml:146
+#: doc/classes/RigidBody2D.xml:147
msgid ""
"Multiplies the gravity applied to the body. The body's gravity is calculated "
"from the [b]Default Gravity[/b] value in [b]Project > Project Settings > "
"Physics > 2d[/b] and/or any additional gravity vector applied by [Area2D]s."
msgstr ""
-#: doc/classes/RigidBody2D.xml:149
+#: doc/classes/RigidBody2D.xml:150
msgid ""
"The body's moment of inertia. This is like mass, but for rotation: it "
"determines how much torque it takes to rotate the body. The moment of "
@@ -44959,18 +46007,18 @@ msgid ""
"automatically computing it."
msgstr ""
-#: doc/classes/RigidBody2D.xml:152
+#: doc/classes/RigidBody2D.xml:153
msgid ""
"Damps the body's [member linear_velocity]. If [code]-1[/code], the body will "
"use the [b]Default Linear Damp[/b] in [b]Project > Project Settings > "
"Physics > 2d[/b]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:161
+#: doc/classes/RigidBody2D.xml:162
msgid "The body's mode. See [enum Mode] for possible values."
msgstr ""
-#: doc/classes/RigidBody2D.xml:164 doc/classes/RigidBody3D.xml:181
+#: doc/classes/RigidBody2D.xml:165 doc/classes/RigidBody3D.xml:189
#: doc/classes/StaticBody2D.xml:22 doc/classes/StaticBody3D.xml:22
msgid ""
"The physics material override for the body.\n"
@@ -44978,50 +46026,50 @@ msgid ""
"other physics material, such as an inherited one."
msgstr ""
-#: doc/classes/RigidBody2D.xml:168 doc/classes/RigidBody3D.xml:185
+#: doc/classes/RigidBody2D.xml:169 doc/classes/RigidBody3D.xml:193
msgid ""
"If [code]true[/code], the body will not move and will not calculate forces "
"until woken up by another body through, for example, a collision, or by "
"using the [method apply_impulse] or [method add_force] methods."
msgstr ""
-#: doc/classes/RigidBody2D.xml:171
+#: doc/classes/RigidBody2D.xml:172
msgid ""
"The body's weight based on its mass and the [b]Default Gravity[/b] value in "
"[b]Project > Project Settings > Physics > 2d[/b]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:179
+#: doc/classes/RigidBody2D.xml:180 doc/classes/RigidBody3D.xml:204
msgid ""
-"Emitted when a body enters into contact with this one. [member "
-"contact_monitor] must be [code]true[/code] and [member contacts_reported] "
-"greater than [code]0[/code]."
+"Emitted when a body enters into contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:186
+#: doc/classes/RigidBody2D.xml:187
msgid ""
-"Emitted when a body exits contact with this one. [member contact_monitor] "
-"must be [code]true[/code] and [member contacts_reported] greater than "
-"[code]0[/code]."
+"Emitted when a body exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:199
+#: doc/classes/RigidBody2D.xml:200
msgid ""
"Emitted when a body enters into contact with this one. Reports colliding "
"shape information. See [CollisionObject2D] for shape index information. "
-"[member contact_monitor] must be [code]true[/code] and [member "
-"contacts_reported] greater than [code]0[/code]."
+"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:212
+#: doc/classes/RigidBody2D.xml:213
msgid ""
"Emitted when a body shape exits contact with this one. Reports colliding "
"shape information. See [CollisionObject2D] for shape index information. "
-"[member contact_monitor] must be [code]true[/code] and [member "
-"contacts_reported] greater than [code]0[/code]."
+"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:217 doc/classes/RigidBody3D.xml:236
+#: doc/classes/RigidBody2D.xml:218 doc/classes/RigidBody3D.xml:244
msgid ""
"Emitted when the physics engine changes the body's sleeping state.\n"
"[b]Note:[/b] Changing the value [member sleeping] will not trigger this "
@@ -45029,41 +46077,41 @@ msgid ""
"engine or [code]emit_signal(\"sleeping_state_changed\")[/code] is used."
msgstr ""
-#: doc/classes/RigidBody2D.xml:224
+#: doc/classes/RigidBody2D.xml:225
msgid ""
"Rigid mode. The body behaves as a physical object. It collides with other "
"bodies and responds to forces applied to it. This is the default mode."
msgstr ""
-#: doc/classes/RigidBody2D.xml:227
+#: doc/classes/RigidBody2D.xml:228
msgid "Static mode. The body behaves like a [StaticBody2D] and does not move."
msgstr ""
-#: doc/classes/RigidBody2D.xml:230
+#: doc/classes/RigidBody2D.xml:231
msgid ""
"Character mode. Similar to [constant MODE_RIGID], but the body can not "
"rotate."
msgstr ""
-#: doc/classes/RigidBody2D.xml:233
+#: doc/classes/RigidBody2D.xml:234
msgid ""
"Kinematic mode. The body behaves like a [KinematicBody2D], and must be moved "
"by code."
msgstr ""
-#: doc/classes/RigidBody2D.xml:236
+#: doc/classes/RigidBody2D.xml:237
msgid ""
"Continuous collision detection disabled. This is the fastest way to detect "
"body collisions, but can miss small, fast-moving objects."
msgstr ""
-#: doc/classes/RigidBody2D.xml:239
+#: doc/classes/RigidBody2D.xml:240
msgid ""
"Continuous collision detection enabled using raycasting. This is faster than "
"shapecasting but less precise."
msgstr ""
-#: doc/classes/RigidBody2D.xml:242
+#: doc/classes/RigidBody2D.xml:243
msgid ""
"Continuous collision detection enabled using shapecasting. This is the "
"slowest CCD method and the most precise."
@@ -45149,42 +46197,31 @@ msgid ""
"locked."
msgstr ""
-#: doc/classes/RigidBody3D.xml:99
+#: doc/classes/RigidBody3D.xml:107
msgid ""
-"Returns a list of the bodies colliding with this one. By default, number of "
-"max contacts reported is at 0, see the [member contacts_reported] property "
-"to increase it.\n"
-"[b]Note:[/b] The result of this test is not immediate after moving objects. "
-"For performance, list of collisions is updated once per frame and before the "
-"physics step. Consider using signals instead."
+"Returns the inverse inertia tensor basis. This is used to calculate the "
+"angular acceleration resulting from a torque applied to the [RigidBody3D]."
msgstr ""
-#: doc/classes/RigidBody3D.xml:111
+#: doc/classes/RigidBody3D.xml:118
msgid "Locks the specified linear or rotational axis."
msgstr ""
-#: doc/classes/RigidBody3D.xml:126
+#: doc/classes/RigidBody3D.xml:133
msgid "Damps RigidBody3D's rotational forces."
msgstr ""
-#: doc/classes/RigidBody3D.xml:129
+#: doc/classes/RigidBody3D.xml:136
msgid "RigidBody3D's rotational velocity."
msgstr ""
-#: doc/classes/RigidBody3D.xml:153
+#: doc/classes/RigidBody3D.xml:160
msgid ""
"If [code]true[/code], the RigidBody3D will emit signals when it collides "
-"with another RigidBody3D."
-msgstr ""
-
-#: doc/classes/RigidBody3D.xml:156
-msgid ""
-"The maximum contacts to report. Bodies can keep a log of the contacts with "
-"other bodies, this is enabled by setting the maximum amount of contacts "
-"reported to a number greater than 0."
+"with another RigidBody3D. See also [member contacts_reported]."
msgstr ""
-#: doc/classes/RigidBody3D.xml:159
+#: doc/classes/RigidBody3D.xml:167
msgid ""
"If [code]true[/code], continuous collision detection is used.\n"
"Continuous collision detection tries to predict where a moving body will "
@@ -45194,7 +46231,7 @@ msgid ""
"faster to compute, but can miss small, fast-moving objects."
msgstr ""
-#: doc/classes/RigidBody3D.xml:163
+#: doc/classes/RigidBody3D.xml:171
msgid ""
"If [code]true[/code], internal force integration will be disabled (like "
"gravity or air friction) for this body. Other than collision response, the "
@@ -45202,7 +46239,7 @@ msgid ""
"function, if defined."
msgstr ""
-#: doc/classes/RigidBody3D.xml:166
+#: doc/classes/RigidBody3D.xml:174
msgid ""
"This is multiplied by the global 3D gravity setting found in [b]Project > "
"Project Settings > Physics > 3d[/b] to produce RigidBody3D's gravity. For "
@@ -45210,14 +46247,14 @@ msgid ""
"and 0.5 will apply half gravity to this object."
msgstr ""
-#: doc/classes/RigidBody3D.xml:169
+#: doc/classes/RigidBody3D.xml:177
msgid ""
"The body's linear damp. Cannot be less than -1.0. If this value is different "
"from -1.0, any linear damp derived from the world or areas will be "
"overridden."
msgstr ""
-#: doc/classes/RigidBody3D.xml:172
+#: doc/classes/RigidBody3D.xml:180
msgid ""
"The body's linear velocity. Can be used sporadically, but [b]don't set this "
"every frame[/b], because physics may run in another thread and runs at a "
@@ -45225,60 +46262,57 @@ msgid ""
"for precise control of the body state."
msgstr ""
-#: doc/classes/RigidBody3D.xml:178
+#: doc/classes/RigidBody3D.xml:186
msgid "The body mode. See [enum Mode] for possible values."
msgstr ""
-#: doc/classes/RigidBody3D.xml:196
-msgid ""
-"Emitted when a body enters into contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work."
-msgstr ""
-
-#: doc/classes/RigidBody3D.xml:203
+#: doc/classes/RigidBody3D.xml:211
msgid ""
-"Emitted when a body shape exits contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work."
+"Emitted when a body shape exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody3D.xml:216
+#: doc/classes/RigidBody3D.xml:224
msgid ""
-"Emitted when a body enters into contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work.\n"
+"Emitted when a body enters into contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"This signal not only receives the body that collided with this one, but also "
"its [RID] ([code]body_id[/code]), the shape index from the colliding body "
"([code]body_shape[/code]), and the shape index from this body "
"([code]local_shape[/code]) the other body collided with."
msgstr ""
-#: doc/classes/RigidBody3D.xml:230
+#: doc/classes/RigidBody3D.xml:238
msgid ""
-"Emitted when a body shape exits contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work.\n"
+"Emitted when a body shape exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"This signal not only receives the body that stopped colliding with this one, "
"but also its [RID] ([code]body_id[/code]), the shape index from the "
"colliding body ([code]body_shape[/code]), and the shape index from this body "
"([code]local_shape[/code]) the other body stopped colliding with."
msgstr ""
-#: doc/classes/RigidBody3D.xml:243
+#: doc/classes/RigidBody3D.xml:251
msgid ""
"Rigid body mode. This is the \"natural\" state of a rigid body. It is "
"affected by forces, and can move, rotate, and be affected by user code."
msgstr ""
-#: doc/classes/RigidBody3D.xml:246
+#: doc/classes/RigidBody3D.xml:254
msgid ""
"Static mode. The body behaves like a [StaticBody3D], and can only move by "
"user code."
msgstr ""
-#: doc/classes/RigidBody3D.xml:249
+#: doc/classes/RigidBody3D.xml:257
msgid ""
"Character body mode. This behaves like a rigid body, but can not rotate."
msgstr ""
-#: doc/classes/RigidBody3D.xml:252
+#: doc/classes/RigidBody3D.xml:260
msgid ""
"Kinematic body mode. The body behaves like a [KinematicBody3D], and can only "
"move by user code."
@@ -45785,7 +46819,7 @@ msgstr ""
msgid "The time remaining."
msgstr ""
-#: doc/classes/SceneTreeTimer.xml:28 doc/classes/Timer.xml:62
+#: doc/classes/SceneTreeTimer.xml:28 doc/classes/Timer.xml:63
msgid "Emitted when the timer reaches 0."
msgstr ""
@@ -45908,27 +46942,27 @@ msgid ""
"the singleton using [method EditorInterface.get_script_editor]."
msgstr ""
-#: doc/classes/ScriptEditor.xml:40
+#: doc/classes/ScriptEditor.xml:46
msgid "Returns a [Script] that is currently active in editor."
msgstr ""
-#: doc/classes/ScriptEditor.xml:57
+#: doc/classes/ScriptEditor.xml:69
msgid ""
"Returns an array with all [Script] objects which are currently open in "
"editor."
msgstr ""
-#: doc/classes/ScriptEditor.xml:66
+#: doc/classes/ScriptEditor.xml:78
msgid "Goes to the specified line in the current script."
msgstr ""
-#: doc/classes/ScriptEditor.xml:85
+#: doc/classes/ScriptEditor.xml:113
msgid ""
"Emitted when user changed active script. Argument is a freshly activated "
"[Script]."
msgstr ""
-#: doc/classes/ScriptEditor.xml:92
+#: doc/classes/ScriptEditor.xml:120
msgid ""
"Emitted when editor is about to close the active script. Argument is a "
"[Script] that is going to be closed."
@@ -45990,7 +47024,7 @@ msgid ""
"visible."
msgstr ""
-#: doc/classes/ScrollContainer.xml:37 doc/classes/TextEdit.xml:453
+#: doc/classes/ScrollContainer.xml:37 doc/classes/TextEdit.xml:407
msgid "The current horizontal scroll value."
msgstr ""
@@ -45998,7 +47032,7 @@ msgstr ""
msgid "If [code]true[/code], enables horizontal scrolling."
msgstr ""
-#: doc/classes/ScrollContainer.xml:43 doc/classes/TextEdit.xml:456
+#: doc/classes/ScrollContainer.xml:43 doc/classes/TextEdit.xml:410
msgid "The current vertical scroll value."
msgstr ""
@@ -46517,7 +47551,7 @@ msgstr ""
msgid ""
"Sets the global pose transform, [code]pose[/code], for the bone at "
"[code]bone_idx[/code].\n"
-"[code]amount[/code] is the interpolation strengh that will be used when "
+"[code]amount[/code] is the interpolation strength that will be used when "
"applying the pose, and [code]persistent[/code] determines if the applied "
"pose will remain.\n"
"[b]Note[/b]: The pose transform needs to be in bone space. Use [method "
@@ -46534,7 +47568,7 @@ msgstr ""
#: doc/classes/Skeleton3D.xml:266
msgid ""
-"Returns the pose transform for bone [code]bone_idx[/code].\n"
+"Sets the pose transform for bone [code]bone_idx[/code].\n"
"[b]Note[/b]: The pose transform needs to be in bone space. Use [method "
"world_transform_to_bone_transform] to convert a world transform, like one "
"you can get from a [Node3D], to bone space."
@@ -46627,6 +47661,16 @@ msgstr ""
#: doc/classes/Sky.xml:52
msgid ""
+"Automatically selects the appropriate process mode based on your sky shader. "
+"If your shader uses [code]TIME[/code] or [code]POSITION[/code], this will "
+"use [constant PROCESS_MODE_REALTIME]. If your shader uses any of the "
+"[code]LIGHT_*[/code] variables or any custom uniforms, this uses [constant "
+"PROCESS_MODE_INCREMENTAL]. Otherwise, this defaults to [constant "
+"PROCESS_MODE_QUALITY]."
+msgstr ""
+
+#: doc/classes/Sky.xml:55
+msgid ""
"Uses high quality importance sampling to process the radiance map. In "
"general, this results in much higher quality than [constant "
"PROCESS_MODE_REALTIME] but takes much longer to generate. This should not be "
@@ -46636,10 +47680,22 @@ msgid ""
"ggx_samples]."
msgstr ""
-#: doc/classes/Sky.xml:55
+#: doc/classes/Sky.xml:58
+msgid ""
+"Uses the same high quality importance sampling to process the radiance map "
+"as [constant PROCESS_MODE_QUALITY], but updates over several frames. The "
+"number of frames is determined by [member ProjectSettings.rendering/quality/"
+"reflections/roughness_layers]. Use this when you need highest quality "
+"radiance maps, but have a sky that updates slowly."
+msgstr ""
+
+#: doc/classes/Sky.xml:61
msgid ""
"Uses the fast filtering algorithm to process the radiance map. In general "
-"this results in lower quality, but substantially faster run times.\n"
+"this results in lower quality, but substantially faster run times. If you "
+"need better quality, but still need to update the sky every frame, consider "
+"turning on [member ProjectSettings.rendering/quality/reflections/"
+"fast_filter_high_quality].\n"
"[b]Note:[/b] The fast filtering algorithm is limited to 256x256 cubemaps, so "
"[member radiance_size] must be set to [constant RADIANCE_SIZE_256]."
msgstr ""
@@ -46976,10 +48032,9 @@ msgid ""
msgstr ""
#: doc/classes/SpringArm3D.xml:35
-msgid ""
-"Returns the proportion between the current arm length (after checking for "
-"collisions) and the [member spring_length]. Ranges from 0 to 1."
-msgstr ""
+#, fuzzy
+msgid "Returns the spring arm's current length."
+msgstr "Vrátí sinus parametru."
#: doc/classes/SpringArm3D.xml:44
msgid ""
@@ -47674,7 +48729,7 @@ msgstr ""
msgid ""
"This is the built-in string class (and the one used by GDScript). It "
"supports Unicode and provides all necessary means for string handling. "
-"Strings are reference counted and use a copy-on-write approach, so passing "
+"Strings are reference-counted and use a copy-on-write approach, so passing "
"them around is cheap in resources."
msgstr ""
@@ -47829,26 +48884,32 @@ msgstr ""
#: doc/classes/String.xml:328
msgid ""
"Returns a copy of the string with escaped characters replaced by their "
-"meanings according to the C language standard."
+"meanings. Supported escape sequences are [code]\\'[/code], [code]\\\"[/"
+"code], [code]\\?[/code], [code]\\\\[/code], [code]\\a[/code], [code]\\b[/"
+"code], [code]\\f[/code], [code]\\n[/code], [code]\\r[/code], [code]\\t[/"
+"code], [code]\\v[/code].\n"
+"[b]Note:[/b] Unlike the GDScript parser, this method doesn't support the "
+"[code]\\uXXXX[/code] escape sequence."
msgstr ""
-#: doc/classes/String.xml:335
+#: doc/classes/String.xml:336
msgid ""
-"Changes the case of some letters. Replaces underscores with spaces, converts "
-"all letters to lowercase, then capitalizes first and every letter following "
-"the space character. For [code]capitalize camelCase mixed_with_underscores[/"
-"code], it will return [code]Capitalize Camelcase Mixed With Underscores[/"
+"Changes the case of some letters. Replaces underscores with spaces, adds "
+"spaces before in-word uppercase characters, converts all letters to "
+"lowercase, then capitalizes the first letter and every letter following a "
+"space character. For [code]capitalize camelCase mixed_with_underscores[/"
+"code], it will return [code]Capitalize Camel Case Mixed With Underscores[/"
"code]."
msgstr ""
-#: doc/classes/String.xml:344
+#: doc/classes/String.xml:345
msgid ""
"Performs a case-sensitive comparison to another string. Returns [code]-1[/"
"code] if less than, [code]+1[/code] if greater than, or [code]0[/code] if "
"equal."
msgstr ""
-#: doc/classes/String.xml:357
+#: doc/classes/String.xml:358
msgid ""
"Returns the number of occurrences of substring [code]what[/code] between "
"[code]from[/code] and [code]to[/code] positions. If [code]from[/code] and "
@@ -47856,7 +48917,7 @@ msgid ""
"code] equals 0 the remained substring will be used."
msgstr ""
-#: doc/classes/String.xml:370
+#: doc/classes/String.xml:371
msgid ""
"Returns the number of occurrences of substring [code]what[/code] (ignoring "
"case) between [code]from[/code] and [code]to[/code] positions. If "
@@ -47864,32 +48925,33 @@ msgid ""
"used. If only [code]to[/code] equals 0 the remained substring will be used."
msgstr ""
-#: doc/classes/String.xml:377
+#: doc/classes/String.xml:378
msgid ""
"Returns a copy of the string with indentation (leading tabs and spaces) "
"removed."
msgstr ""
-#: doc/classes/String.xml:384
+#: doc/classes/String.xml:385
msgid ""
"Returns [code]true[/code] if the length of the string equals [code]0[/code]."
msgstr ""
-#: doc/classes/String.xml:393
+#: doc/classes/String.xml:394
msgid "Returns [code]true[/code] if the string ends with the given string."
msgstr ""
-#: doc/classes/String.xml:404
+#: doc/classes/String.xml:405
msgid ""
"Erases [code]chars[/code] characters from the string starting from "
"[code]position[/code]."
msgstr ""
-#: doc/classes/String.xml:415
+#: doc/classes/String.xml:416
msgid ""
-"Finds the first occurrence of a substring. Returns the starting position of "
-"the substring or [code]-1[/code] if not found. Optionally, the initial "
-"search index can be passed.\n"
+"Returns the index of the [b]first[/b] case-sensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the end of the "
+"string.\n"
"[b]Note:[/b] If you just want to know whether a string contains a substring, "
"use the [code]in[/code] operator as follows:\n"
"[codeblock]\n"
@@ -47899,48 +48961,42 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:430
+#: doc/classes/String.xml:433
msgid ""
-"Finds the last occurrence of a substring. Returns the starting position of "
-"the substring or [code]-1[/code] if not found."
+"Returns the index of the [b]first[/b] case-insensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the end of the string."
msgstr ""
-#: doc/classes/String.xml:441
-msgid ""
-"Finds the first occurrence of a substring, ignoring case. Returns the "
-"starting position of the substring or [code]-1[/code] if not found. "
-"Optionally, the initial search index can be passed."
-msgstr ""
-
-#: doc/classes/String.xml:452
+#: doc/classes/String.xml:444
msgid ""
"Formats the string by replacing all occurrences of [code]placeholder[/code] "
"with [code]values[/code]."
msgstr ""
-#: doc/classes/String.xml:459
+#: doc/classes/String.xml:451
msgid "If the string is a valid file path, returns the base directory name."
msgstr ""
-#: doc/classes/String.xml:466
+#: doc/classes/String.xml:458
msgid ""
"If the string is a valid file path, returns the full file path without the "
"extension."
msgstr ""
-#: doc/classes/String.xml:473
+#: doc/classes/String.xml:465
msgid "If the string is a valid file path, returns the extension."
msgstr ""
-#: doc/classes/String.xml:480
+#: doc/classes/String.xml:472
msgid "If the string is a valid file path, returns the filename."
msgstr ""
-#: doc/classes/String.xml:487
+#: doc/classes/String.xml:479
msgid "Hashes the string and returns a 32-bit integer."
msgstr ""
-#: doc/classes/String.xml:494
+#: doc/classes/String.xml:486
msgid ""
"Converts a string containing a hexadecimal number into an integer. "
"Hexadecimal strings are expected to be prefixed with \"[code]0x[/code]\" "
@@ -47950,7 +49006,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:504
+#: doc/classes/String.xml:496
msgid ""
"Escapes (encodes) a string to URL friendly format. Also referred to as 'URL "
"encode'.\n"
@@ -47960,7 +49016,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:514
+#: doc/classes/String.xml:506
msgid ""
"Unescapes (decodes) a string in URL encoded format. Also referred to as 'URL "
"decode'.\n"
@@ -47970,7 +49026,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:526
+#: doc/classes/String.xml:518
msgid ""
"Converts [code]size[/code] represented as number of bytes to human-readable "
"format using internationalized set of data size units, namely: B, KiB, MiB, "
@@ -47983,48 +49039,48 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:542
+#: doc/classes/String.xml:534
msgid ""
"Returns a copy of the string with the substring [code]what[/code] inserted "
"at the given position."
msgstr ""
-#: doc/classes/String.xml:549
+#: doc/classes/String.xml:541
msgid ""
"If the string is a path to a file or directory, returns [code]true[/code] if "
"the path is absolute."
msgstr ""
-#: doc/classes/String.xml:556
+#: doc/classes/String.xml:548
msgid ""
"If the string is a path to a file or directory, returns [code]true[/code] if "
"the path is relative."
msgstr ""
-#: doc/classes/String.xml:565
+#: doc/classes/String.xml:557
msgid ""
"Returns [code]true[/code] if this string is a subsequence of the given "
"string."
msgstr ""
-#: doc/classes/String.xml:574
+#: doc/classes/String.xml:566
msgid ""
"Returns [code]true[/code] if this string is a subsequence of the given "
"string, without considering case."
msgstr ""
-#: doc/classes/String.xml:581
+#: doc/classes/String.xml:573
msgid ""
"Returns [code]true[/code] if this string is free from characters that aren't "
"allowed in file names, those being:\n"
"[code]: / \\ ? * \" | % < >[/code]"
msgstr ""
-#: doc/classes/String.xml:589
+#: doc/classes/String.xml:581
msgid "Returns [code]true[/code] if this string contains a valid float."
msgstr ""
-#: doc/classes/String.xml:598
+#: doc/classes/String.xml:590
msgid ""
"Returns [code]true[/code] if this string contains a valid hexadecimal "
"number. If [code]with_prefix[/code] is [code]true[/code], then a validity of "
@@ -48032,7 +49088,7 @@ msgid ""
"instance: [code]0xDEADC0DE[/code]."
msgstr ""
-#: doc/classes/String.xml:605
+#: doc/classes/String.xml:597
msgid ""
"Returns [code]true[/code] if this string contains a valid color in "
"hexadecimal HTML notation. Other HTML notations such as named colors or "
@@ -48040,22 +49096,22 @@ msgid ""
"return [code]false[/code]."
msgstr ""
-#: doc/classes/String.xml:612
+#: doc/classes/String.xml:604
msgid ""
"Returns [code]true[/code] if this string is a valid identifier. A valid "
"identifier may contain only letters, digits and underscores ([code]_[/code]) "
"and the first character may not be a digit."
msgstr ""
-#: doc/classes/String.xml:619
+#: doc/classes/String.xml:611
msgid "Returns [code]true[/code] if this string contains a valid integer."
msgstr ""
-#: doc/classes/String.xml:626
+#: doc/classes/String.xml:618
msgid "Returns [code]true[/code] if this string contains a valid IP address."
msgstr ""
-#: doc/classes/String.xml:635
+#: doc/classes/String.xml:627
msgid ""
"Return a [String] which is the concatenation of the [code]parts[/code]. The "
"separator between elements is the string providing this method.\n"
@@ -48065,121 +49121,125 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:646
+#: doc/classes/String.xml:638
msgid ""
"Returns a copy of the string with special characters escaped using the JSON "
"standard."
msgstr ""
-#: doc/classes/String.xml:655
+#: doc/classes/String.xml:647
msgid "Returns a number of characters from the left of the string."
msgstr ""
-#: doc/classes/String.xml:662
+#: doc/classes/String.xml:654
msgid "Returns the string's amount of characters."
msgstr ""
-#: doc/classes/String.xml:671
+#: doc/classes/String.xml:663
msgid "Returns a copy of the string with characters removed from the left."
msgstr ""
-#: doc/classes/String.xml:680
+#: doc/classes/String.xml:672
msgid ""
"Does a simple case-sensitive expression match, where [code]\"*\"[/code] "
"matches zero or more arbitrary characters and [code]\"?\"[/code] matches any "
"single character except a period ([code]\".\"[/code])."
msgstr ""
-#: doc/classes/String.xml:689
+#: doc/classes/String.xml:681
msgid ""
"Does a simple case-insensitive expression match, where [code]\"*\"[/code] "
"matches zero or more arbitrary characters and [code]\"?\"[/code] matches any "
"single character except a period ([code]\".\"[/code])."
msgstr ""
-#: doc/classes/String.xml:696
+#: doc/classes/String.xml:688
msgid "Returns the MD5 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:703
+#: doc/classes/String.xml:695
msgid "Returns the MD5 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:712
+#: doc/classes/String.xml:704
msgid ""
"Performs a case-insensitive comparison to another string. Returns [code]-1[/"
"code] if less than, [code]+1[/code] if greater than, or [code]0[/code] if "
"equal."
msgstr ""
-#: doc/classes/String.xml:721
+#: doc/classes/String.xml:713
msgid "Returns the character code at position [code]at[/code]."
msgstr ""
-#: doc/classes/String.xml:730
+#: doc/classes/String.xml:722
msgid ""
"Formats a number to have an exact number of [code]digits[/code] after the "
"decimal point."
msgstr ""
-#: doc/classes/String.xml:739
+#: doc/classes/String.xml:731
msgid ""
"Formats a number to have an exact number of [code]digits[/code] before the "
"decimal point."
msgstr ""
-#: doc/classes/String.xml:746
+#: doc/classes/String.xml:738
msgid "Decode a percent-encoded string. See [method percent_encode]."
msgstr ""
-#: doc/classes/String.xml:753
+#: doc/classes/String.xml:745
msgid ""
"Percent-encodes a string. Encodes parameters in a URL when sending a HTTP "
"GET request (and bodies of form-urlencoded POST requests)."
msgstr ""
-#: doc/classes/String.xml:762
+#: doc/classes/String.xml:754
msgid ""
"If the string is a path, this concatenates [code]file[/code] at the end of "
"the string as a subpath. E.g. [code]\"this/is\".plus_file(\"path\") == "
"\"this/is/path\"[/code]."
msgstr ""
-#: doc/classes/String.xml:771
+#: doc/classes/String.xml:763
msgid ""
"Returns original string repeated a number of times. The number of "
"repetitions is given by the argument."
msgstr ""
-#: doc/classes/String.xml:782
+#: doc/classes/String.xml:774
msgid ""
"Replaces occurrences of a case-sensitive substring with the given one inside "
"the string."
msgstr ""
-#: doc/classes/String.xml:793
+#: doc/classes/String.xml:785
msgid ""
"Replaces occurrences of a case-insensitive substring with the given one "
"inside the string."
msgstr ""
-#: doc/classes/String.xml:804
+#: doc/classes/String.xml:796
msgid ""
-"Performs a case-sensitive search for a substring, but starts from the end of "
-"the string instead of the beginning."
+"Returns the index of the [b]last[/b] case-sensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the beginning of the "
+"string."
msgstr ""
-#: doc/classes/String.xml:815
+#: doc/classes/String.xml:807
msgid ""
-"Performs a case-insensitive search for a substring, but starts from the end "
-"of the string instead of the beginning."
+"Returns the index of the [b]last[/b] case-insensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the beginning of the "
+"string."
msgstr ""
-#: doc/classes/String.xml:824
+#: doc/classes/String.xml:816
msgid "Returns the right side of the string from a given position."
msgstr ""
-#: doc/classes/String.xml:837
+#: doc/classes/String.xml:829
msgid ""
"Splits the string by a [code]delimiter[/code] string and returns an array of "
"the substrings, starting from right.\n"
@@ -48198,39 +49258,39 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:856
+#: doc/classes/String.xml:848
msgid "Returns a copy of the string with characters removed from the right."
msgstr ""
-#: doc/classes/String.xml:863
+#: doc/classes/String.xml:855
msgid "Returns the SHA-1 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:870
+#: doc/classes/String.xml:862
msgid "Returns the SHA-1 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:877
+#: doc/classes/String.xml:869
msgid "Returns the SHA-256 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:884
+#: doc/classes/String.xml:876
msgid "Returns the SHA-256 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:893
+#: doc/classes/String.xml:885
msgid ""
"Returns the similarity index of the text compared to this string. 1 means "
"totally similar and 0 means totally dissimilar."
msgstr ""
-#: doc/classes/String.xml:906
+#: doc/classes/String.xml:898
msgid ""
"Splits the string by a [code]delimiter[/code] string and returns an array of "
-"the substrings.\n"
+"the substrings. The [code]delimiter[/code] can be of any length.\n"
"If [code]maxsplit[/code] is specified, it defines the number of splits to do "
-"from the left up to [code]maxsplit[/code]. The default value of 0 means that "
-"all items are split.\n"
+"from the left up to [code]maxsplit[/code]. The default value of [code]0[/"
+"code] means that all items are split.\n"
"Example:\n"
"[codeblock]\n"
"var some_string = \"One,Two,Three,Four\"\n"
@@ -48238,10 +49298,12 @@ msgid ""
"print(some_array.size()) # Prints 2\n"
"print(some_array[0]) # Prints \"One\"\n"
"print(some_array[1]) # Prints \"Two,Three,Four\"\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"If you need to split strings with more complex rules, use the [RegEx] class "
+"instead."
msgstr ""
-#: doc/classes/String.xml:926
+#: doc/classes/String.xml:919
msgid ""
"Splits the string in floats by using a delimiter string and returns an array "
"of the substrings.\n"
@@ -48249,7 +49311,7 @@ msgid ""
"split by [code]\",\"[/code]."
msgstr ""
-#: doc/classes/String.xml:938
+#: doc/classes/String.xml:931
msgid ""
"Returns a copy of the string stripped of any non-printable character "
"(including tabulations, spaces and line breaks) at the beginning and the "
@@ -48257,7 +49319,7 @@ msgid ""
"right edges respectively."
msgstr ""
-#: doc/classes/String.xml:945
+#: doc/classes/String.xml:938
msgid ""
"Returns a copy of the string stripped of any escape character. These include "
"all non-printable control characters of the first page of the ASCII table (< "
@@ -48265,14 +49327,14 @@ msgid ""
"code] and [code]\\r[/code]) characters, but not spaces."
msgstr ""
-#: doc/classes/String.xml:956
+#: doc/classes/String.xml:949
msgid ""
"Returns part of the string from the position [code]from[/code] with length "
"[code]len[/code]. Argument [code]len[/code] is optional and using [code]-1[/"
"code] will return remaining characters from given position."
msgstr ""
-#: doc/classes/String.xml:963
+#: doc/classes/String.xml:956
msgid ""
"Converts the String (which is a character array) to [PackedByteArray] (which "
"is an array of bytes). The conversion is faster compared to [method "
@@ -48280,25 +49342,25 @@ msgid ""
"ASCII characters."
msgstr ""
-#: doc/classes/String.xml:970
+#: doc/classes/String.xml:963
msgid ""
"Converts a string containing a decimal number into a [code]float[/code]."
msgstr ""
-#: doc/classes/String.xml:977
+#: doc/classes/String.xml:970
msgid ""
"Converts a string containing an integer number into an [code]int[/code]."
msgstr ""
-#: doc/classes/String.xml:984
+#: doc/classes/String.xml:977
msgid "Returns the string converted to lowercase."
msgstr ""
-#: doc/classes/String.xml:991
+#: doc/classes/String.xml:984
msgid "Returns the string converted to uppercase."
msgstr ""
-#: doc/classes/String.xml:998
+#: doc/classes/String.xml:991
msgid ""
"Converts the String (which is an array of characters) to [PackedByteArray] "
"(which is an array of bytes). The conversion is a bit slower than [method "
@@ -48306,25 +49368,25 @@ msgid ""
"this function over [method to_ascii]."
msgstr ""
-#: doc/classes/String.xml:1007
+#: doc/classes/String.xml:1000
msgid ""
"Removes a given string from the start if it starts with it or leaves the "
"string unchanged."
msgstr ""
-#: doc/classes/String.xml:1016
+#: doc/classes/String.xml:1009
msgid ""
"Removes a given string from the end if it ends with it or leaves the string "
"unchanged."
msgstr ""
-#: doc/classes/String.xml:1023
+#: doc/classes/String.xml:1016
msgid ""
"Returns a copy of the string with special characters escaped using the XML "
"standard."
msgstr ""
-#: doc/classes/String.xml:1030
+#: doc/classes/String.xml:1023
msgid ""
"Returns a copy of the string with escaped characters replaced by their "
"meanings according to the XML standard."
@@ -49556,50 +50618,42 @@ msgid ""
"undo/redo."
msgstr ""
-#: doc/classes/TextEdit.xml:24
-msgid "Adds color region (given the delimiters) and its colors."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:35
-msgid "Adds a [code]keyword[/code] and its [Color]."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:44
+#: doc/classes/TextEdit.xml:18
msgid ""
"Returns if the given line is foldable, that is, it has indented lines right "
"below it."
msgstr ""
-#: doc/classes/TextEdit.xml:57
+#: doc/classes/TextEdit.xml:25
msgid ""
-"Clears all custom syntax coloring information previously added with [method "
-"add_color_region] or [method add_keyword_color]."
+"Centers the viewport on the line the editing cursor is at. This also resets "
+"the [member scroll_horizontal] value to [code]0[/code]."
msgstr ""
-#: doc/classes/TextEdit.xml:64
+#: doc/classes/TextEdit.xml:32
msgid "Clears the undo history."
msgstr ""
-#: doc/classes/TextEdit.xml:71
+#: doc/classes/TextEdit.xml:39
msgid "Copy's the current text selection."
msgstr ""
-#: doc/classes/TextEdit.xml:78
+#: doc/classes/TextEdit.xml:46
msgid "Returns the column the editing cursor is at."
msgstr ""
-#: doc/classes/TextEdit.xml:85
+#: doc/classes/TextEdit.xml:53
msgid "Returns the line the editing cursor is at."
msgstr ""
-#: doc/classes/TextEdit.xml:96
+#: doc/classes/TextEdit.xml:64
msgid ""
"Moves the cursor at the specified [code]column[/code] index.\n"
"If [code]adjust_viewport[/code] is set to [code]true[/code], the viewport "
"will center at the cursor position after the move occurs."
msgstr ""
-#: doc/classes/TextEdit.xml:112
+#: doc/classes/TextEdit.xml:80
msgid ""
"Moves the cursor at the specified [code]line[/code] index.\n"
"If [code]adjust_viewport[/code] is set to [code]true[/code], the viewport "
@@ -49608,111 +50662,101 @@ msgid ""
"[code]line[/code] can be hidden using [method set_line_as_hidden]."
msgstr ""
-#: doc/classes/TextEdit.xml:121
+#: doc/classes/TextEdit.xml:89
msgid "Cut's the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:128
+#: doc/classes/TextEdit.xml:96
msgid "Deselects the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:135
+#: doc/classes/TextEdit.xml:103
msgid "Folds all lines that are possible to be folded (see [method can_fold])."
msgstr ""
-#: doc/classes/TextEdit.xml:144
+#: doc/classes/TextEdit.xml:112
msgid "Folds the given line, if possible (see [method can_fold])."
msgstr ""
-#: doc/classes/TextEdit.xml:151
+#: doc/classes/TextEdit.xml:119
msgid "Returns an array containing the line number of each breakpoint."
msgstr ""
-#: doc/classes/TextEdit.xml:160
-msgid "Returns the [Color] of the specified [code]keyword[/code]."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:169
+#: doc/classes/TextEdit.xml:128
msgid "Returns the text of a specific line."
msgstr ""
-#: doc/classes/TextEdit.xml:176
+#: doc/classes/TextEdit.xml:135
msgid "Returns the amount of total lines in the text."
msgstr ""
-#: doc/classes/TextEdit.xml:183
+#: doc/classes/TextEdit.xml:142
msgid ""
"Returns the [PopupMenu] of this [TextEdit]. By default, this menu is "
"displayed when right-clicking on the [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:190
+#: doc/classes/TextEdit.xml:149
msgid "Returns the selection begin column."
msgstr ""
-#: doc/classes/TextEdit.xml:197
+#: doc/classes/TextEdit.xml:156
msgid "Returns the selection begin line."
msgstr ""
-#: doc/classes/TextEdit.xml:204
+#: doc/classes/TextEdit.xml:163
msgid "Returns the text inside the selection."
msgstr ""
-#: doc/classes/TextEdit.xml:211
+#: doc/classes/TextEdit.xml:170
msgid "Returns the selection end column."
msgstr ""
-#: doc/classes/TextEdit.xml:218
+#: doc/classes/TextEdit.xml:177
msgid "Returns the selection end line."
msgstr ""
-#: doc/classes/TextEdit.xml:225
+#: doc/classes/TextEdit.xml:184
msgid "Returns a [String] text with the word under the mouse cursor location."
msgstr ""
-#: doc/classes/TextEdit.xml:234
-msgid ""
-"Returns whether the specified [code]keyword[/code] has a color set to it or "
-"not."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:243
+#: doc/classes/TextEdit.xml:193
msgid "Insert the specified text at the cursor position."
msgstr ""
-#: doc/classes/TextEdit.xml:252
+#: doc/classes/TextEdit.xml:202
msgid "Returns whether the line at the specified index is folded or not."
msgstr ""
-#: doc/classes/TextEdit.xml:261
+#: doc/classes/TextEdit.xml:211
msgid "Returns whether the line at the specified index is hidden or not."
msgstr ""
-#: doc/classes/TextEdit.xml:268
+#: doc/classes/TextEdit.xml:218
msgid "Returns [code]true[/code] if the selection is active."
msgstr ""
-#: doc/classes/TextEdit.xml:277
+#: doc/classes/TextEdit.xml:227
msgid ""
"Triggers a right-click menu action by the specified index. See [enum "
"MenuItems] for a list of available indexes."
msgstr ""
-#: doc/classes/TextEdit.xml:284
+#: doc/classes/TextEdit.xml:234
msgid "Paste the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:291
+#: doc/classes/TextEdit.xml:241
msgid "Perform redo operation."
msgstr ""
-#: doc/classes/TextEdit.xml:298
+#: doc/classes/TextEdit.xml:248
msgid ""
"Removes all the breakpoints. This will not fire the [signal "
"breakpoint_toggled] signal."
msgstr ""
-#: doc/classes/TextEdit.xml:313
+#: doc/classes/TextEdit.xml:263
msgid ""
"Perform a search inside the text. Search flags can be specified in the [enum "
"SearchFlags] enum.\n"
@@ -49728,244 +50772,265 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/TextEdit.xml:336
-msgid "Perform selection, from line/column to line/column."
+#: doc/classes/TextEdit.xml:286
+msgid ""
+"Perform selection, from line/column to line/column.\n"
+"If [member selecting_enabled] is [code]false[/code], no selection will occur."
msgstr ""
-#: doc/classes/TextEdit.xml:343
-msgid "Select all the text."
+#: doc/classes/TextEdit.xml:294
+msgid ""
+"Select all the text.\n"
+"If [member selecting_enabled] is [code]false[/code], no selection will occur."
msgstr ""
-#: doc/classes/TextEdit.xml:354
+#: doc/classes/TextEdit.xml:306
msgid "Sets the text for a specific line."
msgstr ""
-#: doc/classes/TextEdit.xml:365
+#: doc/classes/TextEdit.xml:317
msgid "If [code]true[/code], hides the line of the specified index."
msgstr ""
-#: doc/classes/TextEdit.xml:374
+#: doc/classes/TextEdit.xml:326
msgid "Toggle the folding of the code block at the given line."
msgstr ""
-#: doc/classes/TextEdit.xml:381
+#: doc/classes/TextEdit.xml:333
msgid "Perform undo operation."
msgstr ""
-#: doc/classes/TextEdit.xml:390
+#: doc/classes/TextEdit.xml:342
msgid "Unfolds the given line, if folded."
msgstr ""
-#: doc/classes/TextEdit.xml:397
+#: doc/classes/TextEdit.xml:349
msgid ""
"Unhide all lines that were previously set to hidden by [method "
"set_line_as_hidden]."
msgstr ""
-#: doc/classes/TextEdit.xml:403
+#: doc/classes/TextEdit.xml:355
msgid "If [code]true[/code], the breakpoint gutter is visible."
msgstr ""
-#: doc/classes/TextEdit.xml:412
+#: doc/classes/TextEdit.xml:364
msgid ""
"If [code]true[/code], the caret displays as a rectangle.\n"
"If [code]false[/code], the caret displays as a bar."
msgstr ""
-#: doc/classes/TextEdit.xml:416
+#: doc/classes/TextEdit.xml:368
msgid ""
"If [code]true[/code], a right-click moves the cursor at the mouse position "
"before displaying the context menu.\n"
"If [code]false[/code], the context menu disregards mouse location."
msgstr ""
-#: doc/classes/TextEdit.xml:420
+#: doc/classes/TextEdit.xml:372
msgid "If [code]true[/code], a right-click displays the context menu."
msgstr ""
-#: doc/classes/TextEdit.xml:423
+#: doc/classes/TextEdit.xml:375
msgid ""
"If [code]true[/code], the \"space\" character will have a visible "
"representation."
msgstr ""
-#: doc/classes/TextEdit.xml:426
+#: doc/classes/TextEdit.xml:378
msgid ""
"If [code]true[/code], the \"tab\" character will have a visible "
"representation."
msgstr ""
-#: doc/classes/TextEdit.xml:430
+#: doc/classes/TextEdit.xml:382
msgid ""
"If [code]true[/code], the fold gutter is visible. This enables folding "
"groups of indented lines."
msgstr ""
-#: doc/classes/TextEdit.xml:433
+#: doc/classes/TextEdit.xml:385
msgid ""
"If [code]true[/code], all lines that have been set to hidden by [method "
"set_line_as_hidden], will not be visible."
msgstr ""
-#: doc/classes/TextEdit.xml:436
+#: doc/classes/TextEdit.xml:388
msgid ""
"If [code]true[/code], all occurrences of the selected text will be "
"highlighted."
msgstr ""
-#: doc/classes/TextEdit.xml:439
+#: doc/classes/TextEdit.xml:391
msgid "If [code]true[/code], the line containing the cursor is highlighted."
msgstr ""
-#: doc/classes/TextEdit.xml:447
+#: doc/classes/TextEdit.xml:394
+msgid ""
+"If [code]true[/code], a minimap is shown, providing an outline of your "
+"source code."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:397
+msgid "The width, in pixels, of the minimap."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:401
msgid ""
"If [code]true[/code], custom [code]font_color_selected[/code] will be used "
"for selected text."
msgstr ""
-#: doc/classes/TextEdit.xml:450
+#: doc/classes/TextEdit.xml:404
msgid ""
"If [code]true[/code], read-only mode is enabled. Existing text cannot be "
"modified and new text cannot be added."
msgstr ""
-#: doc/classes/TextEdit.xml:463
+#: doc/classes/TextEdit.xml:413
msgid ""
-"If [code]true[/code], line numbers are displayed to the left of the text."
+"If [code]true[/code], text can be selected.\n"
+"If [code]false[/code], text can not be selected by the user or by the "
+"[method select] or [method select_all] methods."
msgstr ""
-#: doc/classes/TextEdit.xml:466
+#: doc/classes/TextEdit.xml:417
msgid ""
-"If [code]true[/code], sets the [code]step[/code] of the scrollbars to "
-"[code]0.25[/code] which results in smoother scrolling."
+"If [code]true[/code], shortcut keys for context menu items are enabled, even "
+"if the context menu is disabled."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:420
+msgid ""
+"If [code]true[/code], line numbers are displayed to the left of the text."
msgstr ""
-#: doc/classes/TextEdit.xml:469
+#: doc/classes/TextEdit.xml:423
msgid ""
-"If [code]true[/code], any custom color properties that have been set for "
-"this [TextEdit] will be visible."
+"If [code]true[/code], sets the [code]step[/code] of the scrollbars to "
+"[code]0.25[/code] which results in smoother scrolling."
msgstr ""
-#: doc/classes/TextEdit.xml:472
+#: doc/classes/TextEdit.xml:428
msgid "String value of the [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:475
+#: doc/classes/TextEdit.xml:431
msgid "Vertical scroll sensitivity."
msgstr ""
-#: doc/classes/TextEdit.xml:478
+#: doc/classes/TextEdit.xml:437
msgid ""
"If [code]true[/code], enables text wrapping when it goes beyond the edge of "
"what is visible."
msgstr ""
-#: doc/classes/TextEdit.xml:486
+#: doc/classes/TextEdit.xml:445
msgid "Emitted when a breakpoint is placed via the breakpoint gutter."
msgstr ""
-#: doc/classes/TextEdit.xml:491
+#: doc/classes/TextEdit.xml:450
msgid "Emitted when the cursor changes."
msgstr ""
-#: doc/classes/TextEdit.xml:500
+#: doc/classes/TextEdit.xml:459
msgid "Emitted when the info icon is clicked."
msgstr ""
-#: doc/classes/TextEdit.xml:531
+#: doc/classes/TextEdit.xml:496
msgid "Match case when searching."
msgstr ""
-#: doc/classes/TextEdit.xml:534
+#: doc/classes/TextEdit.xml:499
msgid "Match whole words when searching."
msgstr ""
-#: doc/classes/TextEdit.xml:537
+#: doc/classes/TextEdit.xml:502
msgid "Search from end to beginning."
msgstr ""
-#: doc/classes/TextEdit.xml:546
+#: doc/classes/TextEdit.xml:511
msgid ""
"Pastes the clipboard text over the selected text (or at the cursor's "
"position)."
msgstr ""
-#: doc/classes/TextEdit.xml:549
+#: doc/classes/TextEdit.xml:514
msgid "Erases the whole [TextEdit] text."
msgstr ""
-#: doc/classes/TextEdit.xml:552
+#: doc/classes/TextEdit.xml:517
msgid "Selects the whole [TextEdit] text."
msgstr ""
-#: doc/classes/TextEdit.xml:558
+#: doc/classes/TextEdit.xml:523
msgid "Redoes the previous action."
msgstr ""
-#: doc/classes/TextEdit.xml:566
+#: doc/classes/TextEdit.xml:531
msgid ""
"Sets the background [Color] of this [TextEdit]. [member syntax_highlighting] "
"has to be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:569
+#: doc/classes/TextEdit.xml:534
msgid ""
"Sets the [Color] of the bookmark marker. [member syntax_highlighting] has to "
"be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:574 doc/classes/TextEdit.xml:601
+#: doc/classes/TextEdit.xml:539 doc/classes/TextEdit.xml:566
msgid ""
"Sets the [Color] of the breakpoints. [member breakpoint_gutter] has to be "
"enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:612
+#: doc/classes/TextEdit.xml:577
msgid "Sets the default [Font]."
msgstr ""
-#: doc/classes/TextEdit.xml:615
+#: doc/classes/TextEdit.xml:580
msgid "Sets the font [Color]."
msgstr ""
-#: doc/classes/TextEdit.xml:620
+#: doc/classes/TextEdit.xml:585
msgid ""
"Sets the [Color] of the selected text. [member override_selected_font_color] "
"has to be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:625
+#: doc/classes/TextEdit.xml:588
msgid ""
"Sets the [Color] of the line numbers. [member show_line_numbers] has to be "
"enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:628
+#: doc/classes/TextEdit.xml:591
msgid "Sets the spacing between the lines."
msgstr ""
-#: doc/classes/TextEdit.xml:631
+#: doc/classes/TextEdit.xml:594
msgid "Sets the [Color] of marked text."
msgstr ""
-#: doc/classes/TextEdit.xml:636
+#: doc/classes/TextEdit.xml:597
msgid "Sets the [StyleBox] of this [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:641
+#: doc/classes/TextEdit.xml:600
msgid ""
"Sets the [StyleBox] of this [TextEdit] when [member readonly] is enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:646
+#: doc/classes/TextEdit.xml:605
msgid "Sets the highlight [Color] of text selections."
msgstr ""
-#: doc/classes/TextEdit.xml:653
+#: doc/classes/TextEdit.xml:610
msgid "Sets a custom [Texture2D] for tab text characters."
msgstr ""
-#: doc/classes/TextEdit.xml:656
+#: doc/classes/TextEdit.xml:613
msgid ""
"Sets the highlight [Color] of multiple occurrences. [member "
"highlight_all_occurrences] has to be enabled."
@@ -50043,80 +51108,80 @@ msgid ""
"the texture will not scale with the node."
msgstr ""
-#: doc/classes/TextureButton.xml:19
+#: doc/classes/TextureButton.xml:25
msgid ""
"Controls the texture's behavior when you resize the node's bounding "
"rectangle, [b]only if[/b] [member expand] is [code]true[/code]. Set it to "
"one of the [enum StretchMode] constants. See the constants to learn more."
msgstr ""
-#: doc/classes/TextureButton.xml:22
+#: doc/classes/TextureButton.xml:28
msgid ""
"Pure black and white [BitMap] image to use for click detection. On the mask, "
"white pixels represent the button's clickable area. Use it to create buttons "
"with curved shapes."
msgstr ""
-#: doc/classes/TextureButton.xml:25
+#: doc/classes/TextureButton.xml:31
msgid ""
"Texture to display when the node is disabled. See [member BaseButton."
"disabled]."
msgstr ""
-#: doc/classes/TextureButton.xml:28
+#: doc/classes/TextureButton.xml:34
msgid "Texture to display when the node has mouse or keyboard focus."
msgstr ""
-#: doc/classes/TextureButton.xml:31
+#: doc/classes/TextureButton.xml:37
msgid "Texture to display when the mouse hovers the node."
msgstr ""
-#: doc/classes/TextureButton.xml:34
+#: doc/classes/TextureButton.xml:40
msgid ""
"Texture to display by default, when the node is [b]not[/b] in the disabled, "
"focused, hover or pressed state."
msgstr ""
-#: doc/classes/TextureButton.xml:37
+#: doc/classes/TextureButton.xml:43
msgid ""
"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 "
"[member BaseButton.shortcut] key."
msgstr ""
-#: doc/classes/TextureButton.xml:42 doc/classes/TextureRect.xml:36
+#: doc/classes/TextureButton.xml:48 doc/classes/TextureRect.xml:36
msgid "Scale to fit the node's bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:45 doc/classes/TextureRect.xml:39
+#: doc/classes/TextureButton.xml:51 doc/classes/TextureRect.xml:39
msgid "Tile inside the node's bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:48 doc/classes/TextureRect.xml:42
+#: doc/classes/TextureButton.xml:54 doc/classes/TextureRect.xml:42
msgid ""
"The texture keeps its original size and stays in the bounding rectangle's "
"top-left corner."
msgstr ""
-#: doc/classes/TextureButton.xml:51 doc/classes/TextureRect.xml:45
+#: doc/classes/TextureButton.xml:57 doc/classes/TextureRect.xml:45
msgid ""
"The texture keeps its original size and stays centered in the node's "
"bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:54 doc/classes/TextureRect.xml:48
+#: doc/classes/TextureButton.xml:60 doc/classes/TextureRect.xml:48
msgid ""
"Scale the texture to fit the node's bounding rectangle, but maintain the "
"texture's aspect ratio."
msgstr ""
-#: doc/classes/TextureButton.xml:57
+#: doc/classes/TextureButton.xml:63
msgid ""
"Scale the texture to fit the node's bounding rectangle, center it, and "
"maintain its aspect ratio."
msgstr ""
-#: doc/classes/TextureButton.xml:60 doc/classes/TextureRect.xml:54
+#: doc/classes/TextureButton.xml:66 doc/classes/TextureRect.xml:54
msgid ""
"Scale the texture so that the shorter side fits the bounding rectangle. The "
"other side clips to the node's limits."
@@ -50566,19 +51631,25 @@ msgid ""
"advised if working with shared objects."
msgstr ""
-#: doc/classes/Thread.xml:17
+#: doc/classes/Thread.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/threads/thread_safe_apis."
+"html"
+msgstr ""
+
+#: doc/classes/Thread.xml:18
msgid ""
"Returns the current [Thread]'s ID, uniquely identifying it among all threads."
msgstr ""
-#: doc/classes/Thread.xml:24
+#: doc/classes/Thread.xml:25
msgid ""
"Returns [code]true[/code] if this [Thread] is currently active. An active "
"[Thread] cannot start work on a new method but can be joined with [method "
"wait_to_finish]."
msgstr ""
-#: doc/classes/Thread.xml:39
+#: doc/classes/Thread.xml:40
msgid ""
"Starts a new [Thread] that runs [code]method[/code] on object "
"[code]instance[/code] with [code]userdata[/code] passed as an argument. Even "
@@ -50588,21 +51659,21 @@ msgid ""
"Returns [constant OK] on success, or [constant ERR_CANT_CREATE] on failure."
msgstr ""
-#: doc/classes/Thread.xml:47
+#: doc/classes/Thread.xml:48
msgid ""
"Joins the [Thread] and waits for it to finish. Returns what the method "
"called returned."
msgstr ""
-#: doc/classes/Thread.xml:53
+#: doc/classes/Thread.xml:54
msgid "A thread running with lower priority than normally."
msgstr ""
-#: doc/classes/Thread.xml:56
+#: doc/classes/Thread.xml:57
msgid "A thread with a standard priority."
msgstr ""
-#: doc/classes/Thread.xml:59
+#: doc/classes/Thread.xml:60
msgid "A thread running with higher priority than normally."
msgstr ""
@@ -51137,50 +52208,61 @@ msgid "Returns the [Transform2D] of a tile's shape."
msgstr ""
#: doc/classes/TileSet.xml:481
-msgid "Returns an array of the tile's shapes."
+msgid ""
+"Returns an array of dictionaries describing the tile's shapes.\n"
+"[b]Dictionary structure in the array returned by this method:[/b]\n"
+"[codeblock]\n"
+"{\n"
+" \"autotile_coord\": Vector2,\n"
+" \"one_way\": bool,\n"
+" \"one_way_margin\": int,\n"
+" \"shape\": CollisionShape2D,\n"
+" \"shape_transform\": Transform2D,\n"
+"}\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/TileSet.xml:490
+#: doc/classes/TileSet.xml:500
msgid "Returns the tile's texture."
msgstr ""
-#: doc/classes/TileSet.xml:499
+#: doc/classes/TileSet.xml:509
msgid "Returns the texture offset of the tile."
msgstr ""
-#: doc/classes/TileSet.xml:508
+#: doc/classes/TileSet.xml:518
msgid "Returns the tile's [enum TileMode]."
msgstr ""
-#: doc/classes/TileSet.xml:517
+#: doc/classes/TileSet.xml:527
msgid "Returns the tile's Z index (drawing layer)."
msgstr ""
-#: doc/classes/TileSet.xml:528
+#: doc/classes/TileSet.xml:538
msgid "Sets a light occluder for the tile."
msgstr ""
-#: doc/classes/TileSet.xml:539
+#: doc/classes/TileSet.xml:549
msgid "Sets the tile's material."
msgstr ""
-#: doc/classes/TileSet.xml:550
+#: doc/classes/TileSet.xml:560
msgid "Sets the tile's modulation color."
msgstr ""
-#: doc/classes/TileSet.xml:561
+#: doc/classes/TileSet.xml:571
msgid "Sets the tile's name."
msgstr ""
-#: doc/classes/TileSet.xml:572
+#: doc/classes/TileSet.xml:582
msgid "Sets the tile's navigation polygon."
msgstr ""
-#: doc/classes/TileSet.xml:583
+#: doc/classes/TileSet.xml:593
msgid "Sets an offset for the tile's navigation polygon."
msgstr ""
-#: doc/classes/TileSet.xml:594
+#: doc/classes/TileSet.xml:604
msgid ""
"Sets the tile's normal map texture.\n"
"[b]Note:[/b] Godot expects the normal map to use X+, Y-, and Z+ coordinates. "
@@ -51189,48 +52271,48 @@ msgid ""
"a comparison of normal map coordinates expected by popular engines."
msgstr ""
-#: doc/classes/TileSet.xml:606
+#: doc/classes/TileSet.xml:616
msgid "Sets an offset for the tile's light occluder."
msgstr ""
-#: doc/classes/TileSet.xml:617
+#: doc/classes/TileSet.xml:627
msgid ""
"Sets the tile's sub-region in the texture. This is common in texture atlases."
msgstr ""
-#: doc/classes/TileSet.xml:630
+#: doc/classes/TileSet.xml:640
msgid "Sets a shape for the tile, enabling collision."
msgstr ""
-#: doc/classes/TileSet.xml:643
+#: doc/classes/TileSet.xml:653
msgid "Sets the offset of a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:656
+#: doc/classes/TileSet.xml:666
msgid "Enables one-way collision on a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:681
+#: doc/classes/TileSet.xml:691
msgid "Sets a [Transform2D] on a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:692
+#: doc/classes/TileSet.xml:702
msgid "Sets an array of shapes for the tile, enabling collision."
msgstr ""
-#: doc/classes/TileSet.xml:703
+#: doc/classes/TileSet.xml:713
msgid "Sets the tile's texture."
msgstr ""
-#: doc/classes/TileSet.xml:714
+#: doc/classes/TileSet.xml:724
msgid "Sets the tile's texture offset."
msgstr ""
-#: doc/classes/TileSet.xml:725
+#: doc/classes/TileSet.xml:735
msgid "Sets the tile's [enum TileMode]."
msgstr ""
-#: doc/classes/TileSet.xml:736
+#: doc/classes/TileSet.xml:746
msgid "Sets the tile's drawing index."
msgstr ""
@@ -51241,14 +52323,16 @@ msgstr ""
#: doc/classes/Timer.xml:7
msgid ""
"Counts down a specified interval and emits a signal on reaching 0. Can be "
-"set to repeat or \"one-shot\" mode."
+"set to repeat or \"one-shot\" mode.\n"
+"[b]Note:[/b] To create an one-shot timer without instantiating a node, use "
+"[method SceneTree.create_timer]."
msgstr ""
-#: doc/classes/Timer.xml:16
+#: doc/classes/Timer.xml:17
msgid "Returns [code]true[/code] if the timer is stopped."
msgstr ""
-#: doc/classes/Timer.xml:25
+#: doc/classes/Timer.xml:26
msgid ""
"Starts the timer. Sets [code]wait_time[/code] to [code]time_sec[/code] if "
"[code]time_sec > 0[/code]. This also resets the remaining time to "
@@ -51256,11 +52340,11 @@ msgid ""
"[b]Note:[/b] this method will not resume a paused timer. See [member paused]."
msgstr ""
-#: doc/classes/Timer.xml:33
+#: doc/classes/Timer.xml:34
msgid "Stops the timer."
msgstr ""
-#: doc/classes/Timer.xml:39
+#: doc/classes/Timer.xml:40
msgid ""
"If [code]true[/code], the timer will automatically start when entering the "
"scene tree.\n"
@@ -51268,40 +52352,40 @@ msgid ""
"the timer enters the scene tree and starts."
msgstr ""
-#: doc/classes/Timer.xml:43
+#: doc/classes/Timer.xml:44
msgid ""
"If [code]true[/code], the timer will stop when reaching 0. If [code]false[/"
"code], it will restart."
msgstr ""
-#: doc/classes/Timer.xml:46
+#: doc/classes/Timer.xml:47
msgid ""
"If [code]true[/code], the timer is paused and will not process until it is "
"unpaused again, even if [method start] is called."
msgstr ""
-#: doc/classes/Timer.xml:49
+#: doc/classes/Timer.xml:50
msgid "Processing mode. See [enum TimerProcessMode]."
msgstr ""
-#: doc/classes/Timer.xml:52
+#: doc/classes/Timer.xml:53
msgid ""
"The timer's remaining time in seconds. Returns 0 if the timer is inactive.\n"
"[b]Note:[/b] You cannot set this value. To change the timer's remaining "
"time, use [method start]."
msgstr ""
-#: doc/classes/Timer.xml:56
+#: doc/classes/Timer.xml:57
msgid "Wait time in seconds."
msgstr ""
-#: doc/classes/Timer.xml:68
+#: doc/classes/Timer.xml:69
msgid ""
"Update the timer during the physics step at each frame (fixed framerate "
"processing)."
msgstr ""
-#: doc/classes/Timer.xml:71
+#: doc/classes/Timer.xml:72
msgid "Update the timer during the idle time at each frame."
msgstr ""
@@ -51380,60 +52464,66 @@ msgstr ""
#: doc/classes/Transform.xml:7
msgid ""
-"Represents one or many transformations in 3D space such as translation, "
-"rotation, or scaling. It consists of a [member basis] and an [member "
-"origin]. It is similar to a 3×4 matrix."
+"3×4 matrix (3 rows, 4 columns) used for 3D linear transformations. It can "
+"represent transformations such as translation, rotation, or scaling. It "
+"consists of a [member basis] (first 3 columns) and a [Vector3] for the "
+"[member origin] (last column).\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
msgstr ""
-#: doc/classes/Transform.xml:26
+#: doc/classes/Transform.xml:28
msgid ""
-"Constructs the Transform from four [Vector3]. Each axis corresponds to local "
-"basis vectors (some of which may be scaled)."
+"Constructs a Transform from four [Vector3] values (matrix columns). Each "
+"axis corresponds to local basis vectors (some of which may be scaled)."
msgstr ""
-#: doc/classes/Transform.xml:37
-msgid "Constructs the Transform from a [Basis] and [Vector3]."
+#: doc/classes/Transform.xml:39
+msgid "Constructs a Transform from a [Basis] and [Vector3]."
msgstr ""
-#: doc/classes/Transform.xml:46
-msgid "Constructs the Transform from a [Transform2D]."
+#: doc/classes/Transform.xml:48
+msgid "Constructs a Transform from a [Transform2D]."
msgstr ""
-#: doc/classes/Transform.xml:55
+#: doc/classes/Transform.xml:57
msgid ""
-"Constructs the Transform from a [Quat]. The origin will be Vector3(0, 0, 0)."
+"Constructs a Transform from a [Quat]. The origin will be [code]Vector3(0, 0, "
+"0)[/code]."
msgstr ""
-#: doc/classes/Transform.xml:64
+#: doc/classes/Transform.xml:66
msgid ""
"Constructs the Transform from a [Basis]. The origin will be Vector3(0, 0, 0)."
msgstr ""
-#: doc/classes/Transform.xml:71
+#: doc/classes/Transform.xml:73 doc/classes/Transform2D.xml:51
msgid ""
"Returns the inverse of the transform, under the assumption that the "
"transformation is composed of rotation, scaling and translation."
msgstr ""
-#: doc/classes/Transform.xml:82
-msgid "Interpolates the transform to other Transform by weight amount (0-1)."
+#: doc/classes/Transform.xml:84
+msgid ""
+"Interpolates the transform to other Transform by weight amount (on the range "
+"of 0.0 to 1.0)."
msgstr ""
-#: doc/classes/Transform.xml:89 doc/classes/Transform2D.xml:106
+#: doc/classes/Transform.xml:91
msgid ""
"Returns the inverse of the transform, under the assumption that the "
"transformation is composed of rotation and translation (no scaling, use "
"affine_inverse for transforms with scaling)."
msgstr ""
-#: doc/classes/Transform.xml:98 doc/classes/Transform2D.xml:115
+#: doc/classes/Transform.xml:100 doc/classes/Transform2D.xml:119
msgid ""
"Returns [code]true[/code] if this transform and [code]transform[/code] are "
"approximately equal, by calling [code]is_equal_approx[/code] on each "
"component."
msgstr ""
-#: doc/classes/Transform.xml:109
+#: doc/classes/Transform.xml:111
msgid ""
"Returns a copy of the transform rotated such that its -Z axis points towards "
"the [code]target[/code] position.\n"
@@ -51443,25 +52533,25 @@ msgid ""
"Operations take place in global space."
msgstr ""
-#: doc/classes/Transform.xml:118 doc/classes/Transform2D.xml:122
+#: doc/classes/Transform.xml:120
msgid ""
"Returns the transform with the basis orthogonal (90 degrees), and normalized "
"axis vectors."
msgstr ""
-#: doc/classes/Transform.xml:129
+#: doc/classes/Transform.xml:131
msgid ""
"Rotates the transform around the given axis by the given angle (in radians), "
"using matrix multiplication. The axis must be a normalized vector."
msgstr ""
-#: doc/classes/Transform.xml:138
+#: doc/classes/Transform.xml:140
msgid ""
"Scales basis and origin of the transform by the given scale factor, using "
"matrix multiplication."
msgstr ""
-#: doc/classes/Transform.xml:147 doc/classes/Transform2D.xml:149
+#: doc/classes/Transform.xml:149 doc/classes/Transform2D.xml:153
msgid ""
"Translates the transform by the given offset, relative to the transform's "
"basis vectors.\n"
@@ -51469,152 +52559,162 @@ msgid ""
"multiplication."
msgstr ""
-#: doc/classes/Transform.xml:157
+#: doc/classes/Transform.xml:159
msgid ""
"Transforms the given [Vector3], [Plane], [AABB], or [PackedVector3Array] by "
"this transform."
msgstr ""
-#: doc/classes/Transform.xml:166
+#: doc/classes/Transform.xml:168
msgid ""
"Inverse-transforms the given [Vector3], [Plane], [AABB], or "
"[PackedVector3Array] by this transform."
msgstr ""
-#: doc/classes/Transform.xml:172
+#: doc/classes/Transform.xml:174
msgid ""
"The basis is a matrix containing 3 [Vector3] as its columns: X axis, Y axis, "
"and Z axis. These vectors can be interpreted as the basis vectors of local "
"coordinate system traveling with the object."
msgstr ""
-#: doc/classes/Transform.xml:175
-msgid "The translation offset of the transform."
+#: doc/classes/Transform.xml:177
+msgid ""
+"The translation offset of the transform (column 3, the fourth column). "
+"Equivalent to array index [code]3[/code]."
msgstr ""
-#: doc/classes/Transform.xml:180
+#: doc/classes/Transform.xml:182
msgid ""
"[Transform] with no translation, rotation or scaling applied. When applied "
"to other data structures, [constant IDENTITY] performs no transformation."
msgstr ""
-#: doc/classes/Transform.xml:183
+#: doc/classes/Transform.xml:185
msgid "[Transform] with mirroring applied perpendicular to the YZ plane."
msgstr ""
-#: doc/classes/Transform.xml:186
+#: doc/classes/Transform.xml:188
msgid "[Transform] with mirroring applied perpendicular to the XZ plane."
msgstr ""
-#: doc/classes/Transform.xml:189
+#: doc/classes/Transform.xml:191
msgid "[Transform] with mirroring applied perpendicular to the XY plane."
msgstr ""
#: doc/classes/Transform2D.xml:4
-msgid "2D transformation (3×2 matrix)."
+msgid "2D transformation (2×3 matrix)."
msgstr ""
#: doc/classes/Transform2D.xml:7
msgid ""
-"Represents one or many transformations in 2D space such as translation, "
-"rotation, or scaling. It consists of two [member x] and [member y] "
-"[Vector2]s and an [member origin]. It is similar to a 3×2 matrix."
+"2×3 matrix (2 rows, 3 columns) used for 2D linear transformations. It can "
+"represent transformations such as translation, rotation, or scaling. It "
+"consists of a three [Vector2] values: [member x], [member y], and the "
+"[member origin].\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
msgstr ""
-#: doc/classes/Transform2D.xml:18
+#: doc/classes/Transform2D.xml:20
msgid "Constructs the transform from a 3D [Transform]."
msgstr ""
-#: doc/classes/Transform2D.xml:31
+#: doc/classes/Transform2D.xml:33
msgid ""
-"Constructs the transform from 3 [Vector2]s representing x, y, and origin."
+"Constructs the transform from 3 [Vector2] values representing [member x], "
+"[member y], and the [member origin] (the three column vectors)."
msgstr ""
-#: doc/classes/Transform2D.xml:42
+#: doc/classes/Transform2D.xml:44
msgid "Constructs the transform from a given angle (in radians) and position."
msgstr ""
-#: doc/classes/Transform2D.xml:58
-msgid "Transforms the given vector by this transform's basis (no translation)."
+#: doc/classes/Transform2D.xml:60
+msgid ""
+"Returns a vector transformed (multiplied) by the basis matrix.\n"
+"This method does not account for translation (the origin vector)."
msgstr ""
-#: doc/classes/Transform2D.xml:67
+#: doc/classes/Transform2D.xml:70
msgid ""
-"Inverse-transforms the given vector by this transform's basis (no "
-"translation)."
+"Returns a vector transformed (multiplied) by the inverse basis matrix.\n"
+"This method does not account for translation (the origin vector)."
msgstr ""
-#: doc/classes/Transform2D.xml:74
+#: doc/classes/Transform2D.xml:78
msgid "Returns the transform's origin (translation)."
msgstr ""
-#: doc/classes/Transform2D.xml:81
+#: doc/classes/Transform2D.xml:85
msgid "Returns the transform's rotation (in radians)."
msgstr ""
-#: doc/classes/Transform2D.xml:88
+#: doc/classes/Transform2D.xml:92
msgid "Returns the scale."
msgstr ""
-#: doc/classes/Transform2D.xml:99
+#: doc/classes/Transform2D.xml:103
msgid ""
"Returns a transform interpolated between this transform and another by a "
-"given weight (0-1)."
+"given weight (on the range of 0.0 to 1.0)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:110
+msgid ""
+"Returns the inverse of the transform, under the assumption that the "
+"transformation is composed of rotation and translation (no scaling, use "
+"[method affine_inverse] for transforms with scaling)."
msgstr ""
-#: doc/classes/Transform2D.xml:131
+#: doc/classes/Transform2D.xml:126
+msgid ""
+"Returns the transform with the basis orthogonal (90 degrees), and normalized "
+"axis vectors (scale of 1 or -1)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:135
msgid ""
"Rotates the transform by the given angle (in radians), using matrix "
"multiplication."
msgstr ""
-#: doc/classes/Transform2D.xml:140
+#: doc/classes/Transform2D.xml:144
msgid ""
"Scales the transform by the given scale factor, using matrix multiplication."
msgstr ""
-#: doc/classes/Transform2D.xml:159
+#: doc/classes/Transform2D.xml:163
msgid ""
"Transforms the given [Vector2], [Rect2], or [PackedVector2Array] by this "
"transform."
msgstr ""
-#: doc/classes/Transform2D.xml:168
+#: doc/classes/Transform2D.xml:172
msgid ""
"Inverse-transforms the given [Vector2], [Rect2], or [PackedVector2Array] by "
"this transform."
msgstr ""
-#: doc/classes/Transform2D.xml:174
-msgid "The transform's translation offset."
-msgstr ""
-
-#: doc/classes/Transform2D.xml:177
-msgid ""
-"The X axis of 2×2 basis matrix containing 2 [Vector2]s as its columns: X "
-"axis and Y axis. These vectors can be interpreted as the basis vectors of "
-"local coordinate system traveling with the object."
-msgstr ""
-
-#: doc/classes/Transform2D.xml:180
+#: doc/classes/Transform2D.xml:178
msgid ""
-"The Y axis of 2×2 basis matrix containing 2 [Vector2]s as its columns: X "
-"axis and Y axis. These vectors can be interpreted as the basis vectors of "
-"local coordinate system traveling with the object."
+"The origin vector (column 2, the third column). Equivalent to array index "
+"[code]2[/code]. The origin vector represents translation."
msgstr ""
-#: doc/classes/Transform2D.xml:185
+#: doc/classes/Transform2D.xml:189
msgid ""
-"[Transform2D] with no translation, rotation or scaling applied. When applied "
-"to other data structures, [constant IDENTITY] performs no transformation."
+"The identity [Transform2D] with no translation, rotation or scaling applied. "
+"When applied to other data structures, [constant IDENTITY] performs no "
+"transformation."
msgstr ""
-#: doc/classes/Transform2D.xml:188
-msgid "[Transform2D] with mirroring applied parallel to the X axis."
+#: doc/classes/Transform2D.xml:192
+msgid "The [Transform2D] that will flip something along the X axis."
msgstr ""
-#: doc/classes/Transform2D.xml:191
-msgid "[Transform2D] with mirroring applied parallel to the Y axis."
+#: doc/classes/Transform2D.xml:195
+msgid "The [Transform2D] that will flip something along the Y axis."
msgstr ""
#: doc/classes/Translation.xml:4
@@ -52278,7 +53378,8 @@ msgid "Returns the column's cell mode."
msgstr ""
#: doc/classes/TreeItem.xml:121
-msgid "Returns the TreeItem's child items."
+msgid ""
+"Returns the TreeItem's first child item or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:130
@@ -52310,28 +53411,32 @@ msgid "Returns the icon [Texture2D] region as [Rect2]."
msgstr ""
#: doc/classes/TreeItem.xml:199
-msgid "Returns the next TreeItem in the tree."
+msgid ""
+"Returns the next TreeItem in the tree or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:208
msgid ""
-"Returns the next visible TreeItem in the tree.\n"
+"Returns the next visible TreeItem in the tree or a null object if there is "
+"none.\n"
"If [code]wrap[/code] is enabled, the method will wrap around to the first "
"visible element in the tree when called on the last visible element, "
"otherwise it returns [code]null[/code]."
msgstr ""
#: doc/classes/TreeItem.xml:216
-msgid "Returns the parent TreeItem."
+msgid "Returns the parent TreeItem or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:223
-msgid "Returns the previous TreeItem in the tree."
+msgid ""
+"Returns the previous TreeItem in the tree or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:232
msgid ""
-"Returns the previous visible TreeItem in the tree.\n"
+"Returns the previous visible TreeItem in the tree or a null object if there "
+"is none.\n"
"If [code]wrap[/code] is enabled, the method will wrap around to the last "
"visible element in the tree when called on the first visible element, "
"otherwise it returns [code]null[/code]."
@@ -52841,6 +53946,10 @@ msgid ""
"A simple server that opens a UDP socket and returns connected "
"[PacketPeerUDP] upon receiving new packets. See also [method PacketPeerUDP."
"connect_to_host].\n"
+"After starting the server ([method listen]), you will need to [method poll] "
+"it at regular intervals (e.g. inside [method Node._process]) for it to "
+"process new packets, delivering them to the appropriate [PacketPeerUDP], and "
+"taking new connections.\n"
"Below a small example of how it can be used:\n"
"[codeblock]\n"
"# server.gd\n"
@@ -52853,6 +53962,7 @@ msgid ""
" server.listen(4242)\n"
"\n"
"func _process(delta):\n"
+" server.poll() # Important!\n"
" if server.is_connection_available():\n"
" var peer : PacketPeerUDP = server.take_connection()\n"
" var pkt = peer.get_packet()\n"
@@ -52888,35 +53998,55 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/UDPServer.xml:60
+#: doc/classes/UDPServer.xml:62
msgid ""
-"Returns [code]true[/code] if a packet with a new address/port combination is "
-"received on the socket."
+"Returns [code]true[/code] if a packet with a new address/port combination "
+"was received on the socket."
msgstr ""
-#: doc/classes/UDPServer.xml:67
+#: doc/classes/UDPServer.xml:69
msgid ""
"Returns [code]true[/code] if the socket is open and listening on a port."
msgstr ""
-#: doc/classes/UDPServer.xml:78
+#: doc/classes/UDPServer.xml:80
msgid ""
"Starts the server by opening a UDP socket listening on the given port. You "
"can optionally specify a [code]bind_address[/code] to only listen for "
"packets sent to that address. See also [method PacketPeerUDP.listen]."
msgstr ""
-#: doc/classes/UDPServer.xml:85
+#: doc/classes/UDPServer.xml:87
+msgid ""
+"Call this method at regular intervals (e.g. inside [method Node._process]) "
+"to process new packets. And packet from known address/port pair will be "
+"delivered to the appropriate [PacketPeerUDP], any packet received from an "
+"unknown address/port pair will be added as a pending connection (see [method "
+"is_connection_available], [method take_connection]). The maximum number of "
+"pending connection is defined via [member max_pending_connections]."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:94
+msgid ""
+"Stops the server, closing the UDP socket if open. Will close all connected "
+"[PacketPeerUDP] accepted via [method take_connection] (remote peers will not "
+"be notified)."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:101
msgid ""
-"Stops the server, closing the UDP socket if open. Will not disconnect any "
-"connected [PacketPeerUDP]."
+"Returns the first pending connection (connected to the appropriate address/"
+"port). Will return [code]null[/code] if no new connection is available. See "
+"also [method is_connection_available], [method PacketPeerUDP."
+"connect_to_host]."
msgstr ""
-#: doc/classes/UDPServer.xml:92
+#: doc/classes/UDPServer.xml:107
msgid ""
-"Returns a [PacketPeerUDP] connected to the address/port combination of the "
-"first packet in queue. Will return [code]null[/code] if no packet is in "
-"queue. See also [method PacketPeerUDP.connect_to_host]."
+"Define the maximum number of pending connections, during [method poll], any "
+"new pending connection exceeding that value will be automatically dropped. "
+"Setting this value to [code]0[/code] effectively prevents any new pending "
+"connection to be accepted (e.g. when all your players have connected)."
msgstr ""
#: doc/classes/UndoRedo.xml:4
@@ -53557,24 +54687,27 @@ msgstr ""
#: doc/classes/Vector2.xml:46
msgid ""
-"Returns the vector's angle in radians with respect to the X axis, or [code]"
-"(1, 0)[/code] vector.\n"
+"Returns this vector's angle with respect to the X axis, or [code](1, 0)[/"
+"code] vector, in radians.\n"
"Equivalent to the result of [method @GDScript.atan2] when called with the "
-"vector's [member x] and [member y] as parameters: [code]atan2(x, y)[/code]."
+"vector's [member y] and [member x] as parameters: [code]atan2(y, x)[/code]."
msgstr ""
#: doc/classes/Vector2.xml:56
-msgid "Returns the angle in radians between the two vectors."
-msgstr ""
+#, fuzzy
+msgid "Returns the angle to the given vector, in radians."
+msgstr "Vrátí tangens parametru."
#: doc/classes/Vector2.xml:65
msgid ""
-"Returns the angle in radians between the line connecting the two points and "
-"the X coordinate."
+"Returns the angle between the line connecting the two points and the X axis, "
+"in radians."
msgstr ""
-#: doc/classes/Vector2.xml:72 doc/classes/Vector2i.xml:46
-msgid "Returns the ratio of [member x] to [member y]."
+#: doc/classes/Vector2.xml:72
+msgid ""
+"Returns the aspect ratio of this vector, the ratio of [member x] to [member "
+"y]."
msgstr ""
#: doc/classes/Vector2.xml:81 doc/classes/Vector3.xml:59
@@ -53583,24 +54716,27 @@ msgid ""
msgstr ""
#: doc/classes/Vector2.xml:88
-msgid "Returns the vector with all components rounded up."
+msgid ""
+"Returns the vector with all components rounded up (towards positive "
+"infinity)."
msgstr ""
#: doc/classes/Vector2.xml:97
-msgid "Returns the vector with a maximum length."
+msgid ""
+"Returns the vector with a maximum length by limiting its length to "
+"[code]length[/code]."
msgstr ""
#: doc/classes/Vector2.xml:106
-msgid ""
-"Returns the 2-dimensional analog of the cross product with the given vector."
+msgid "Returns the cross product of this vector and [code]with[/code]."
msgstr ""
#: doc/classes/Vector2.xml:121
msgid ""
"Cubically interpolates between this vector and [code]b[/code] using "
"[code]pre_a[/code] and [code]post_b[/code] as handles, and returns the "
-"result at position [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation."
+"result at position [code]t[/code]. [code]t[/code] is on the range of 0.0 to "
+"1.0, representing the amount of interpolation."
msgstr ""
#: doc/classes/Vector2.xml:130 doc/classes/Vector3.xml:99
@@ -53608,182 +54744,200 @@ msgid ""
"Returns the normalized vector pointing from this vector to [code]b[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:139
+#: doc/classes/Vector2.xml:139 doc/classes/Vector3.xml:108
msgid ""
-"Returns the squared distance to vector [code]b[/code]. Prefer this function "
-"over [method distance_to] if you need to sort vectors or need the squared "
-"distance for some formula."
+"Returns the squared distance between this vector and [code]b[/code].\n"
+"This method runs faster than [method distance_to], so prefer it if you need "
+"to compare vectors or need the squared distance for some formula."
msgstr ""
-#: doc/classes/Vector2.xml:148
-msgid "Returns the distance to vector [code]b[/code]."
+#: doc/classes/Vector2.xml:149
+msgid "Returns the distance between this vector and [code]to[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:157
-msgid "Returns the dot product with vector [code]b[/code]."
+#: doc/classes/Vector2.xml:158
+msgid ""
+"Returns the dot product of this vector and [code]with[/code]. This can be "
+"used to compare the angle between two vectors. For example, this can be used "
+"to determine whether an enemy is facing the player.\n"
+"The dot product will be [code]0[/code] for a straight angle (90 degrees), "
+"greater than 0 for angles narrower than 90 degrees and lower than 0 for "
+"angles wider than 90 degrees.\n"
+"When using unit (normalized) vectors, the result will always be between "
+"[code]-1.0[/code] (180 degree angle) when the vectors are facing opposite "
+"directions, and [code]1.0[/code] (0 degree angle) when the vectors are "
+"aligned.\n"
+"[b]Note:[/b] [code]a.dot(b)[/code] is equivalent to [code]b.dot(a)[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:164
-msgid "Returns the vector with all components rounded down."
+#: doc/classes/Vector2.xml:168
+msgid ""
+"Returns the vector with all components rounded down (towards negative "
+"infinity)."
msgstr ""
-#: doc/classes/Vector2.xml:173 doc/classes/Vector3.xml:149
+#: doc/classes/Vector2.xml:177 doc/classes/Vector3.xml:153
msgid ""
"Returns [code]true[/code] if this vector and [code]v[/code] are "
"approximately equal, by running [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/Vector2.xml:180 doc/classes/Vector3.xml:156
-msgid "Returns [code]true[/code] if the vector is normalized."
-msgstr ""
+#: doc/classes/Vector2.xml:184 doc/classes/Vector3.xml:160
+#, fuzzy
+msgid ""
+"Returns [code]true[/code] if the vector is normalized, and false otherwise."
+msgstr "Vrací [code]true[/code] pokud [code]s[/code] je nula nebo téměř nula."
-#: doc/classes/Vector2.xml:187 doc/classes/Vector3.xml:163
-msgid "Returns the vector's length."
-msgstr ""
+#: doc/classes/Vector2.xml:191 doc/classes/Vector3.xml:167
+#, fuzzy
+msgid "Returns the length (magnitude) of this vector."
+msgstr "Vrátí tangens parametru."
-#: doc/classes/Vector2.xml:194
+#: doc/classes/Vector2.xml:198 doc/classes/Vector3.xml:174
msgid ""
-"Returns the vector's length squared. Prefer this method over [method length] "
-"if you need to sort vectors or need the squared length for some formula."
+"Returns the squared length (squared magnitude) of this vector.\n"
+"This method runs faster than [method length], so prefer it if you need to "
+"compare vectors or need the squared distance for some formula."
msgstr ""
-#: doc/classes/Vector2.xml:205
+#: doc/classes/Vector2.xml:210 doc/classes/Vector3.xml:186
msgid ""
"Returns the result of the linear interpolation between this vector and "
-"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation."
+"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is on the range of "
+"0.0 to 1.0, representing the amount of interpolation."
msgstr ""
-#: doc/classes/Vector2.xml:216 doc/classes/Vector3.xml:206
+#: doc/classes/Vector2.xml:221
msgid ""
"Moves the vector toward [code]to[/code] by the fixed [code]delta[/code] "
"amount."
msgstr ""
-#: doc/classes/Vector2.xml:223 doc/classes/Vector3.xml:213
+#: doc/classes/Vector2.xml:228 doc/classes/Vector3.xml:218
msgid ""
"Returns the vector scaled to unit length. Equivalent to [code]v / v.length()"
"[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:232 doc/classes/Vector3.xml:231
+#: doc/classes/Vector2.xml:237 doc/classes/Vector3.xml:236
msgid ""
-"Returns a vector composed of the [code]fposmod[/code] of this vector's "
+"Returns a vector composed of the [method @GDScript.fposmod] of this vector's "
"components and [code]mod[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:241 doc/classes/Vector3.xml:240
+#: doc/classes/Vector2.xml:246 doc/classes/Vector3.xml:245
msgid ""
-"Returns a vector composed of the [code]fposmod[/code] of this vector's "
+"Returns a vector composed of the [method @GDScript.fposmod] of this vector's "
"components and [code]modv[/code]'s components."
msgstr ""
-#: doc/classes/Vector2.xml:250 doc/classes/Vector3.xml:249
+#: doc/classes/Vector2.xml:255
msgid "Returns the vector projected onto the vector [code]b[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:259 doc/classes/Vector3.xml:258
+#: doc/classes/Vector2.xml:264
msgid "Returns the vector reflected from a plane defined by the given normal."
msgstr ""
-#: doc/classes/Vector2.xml:268
+#: doc/classes/Vector2.xml:273
msgid ""
"Returns the vector rotated by [code]phi[/code] radians. See also [method "
"@GDScript.deg2rad]."
msgstr ""
-#: doc/classes/Vector2.xml:275 doc/classes/Vector3.xml:276
+#: doc/classes/Vector2.xml:280
msgid ""
"Returns the vector with all components rounded to the nearest integer, with "
"halfway cases rounded away from zero."
msgstr ""
-#: doc/classes/Vector2.xml:282 doc/classes/Vector2i.xml:53
-#: doc/classes/Vector3.xml:283 doc/classes/Vector3i.xml:55
+#: doc/classes/Vector2.xml:287
msgid ""
"Returns the vector with each component set to one or negative one, depending "
-"on the signs of the components."
+"on the signs of the components, or zero if the component is zero, by calling "
+"[method @GDScript.sign] on each component."
msgstr ""
-#: doc/classes/Vector2.xml:293 doc/classes/Vector3.xml:294
+#: doc/classes/Vector2.xml:298 doc/classes/Vector3.xml:299
msgid ""
"Returns the result of spherical linear interpolation between this vector and "
-"[code]b[/code], by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation.\n"
+"[code]b[/code], by amount [code]t[/code]. [code]t[/code] is on the range of "
+"0.0 to 1.0, representing the amount of interpolation.\n"
"[b]Note:[/b] Both vectors must be normalized."
msgstr ""
-#: doc/classes/Vector2.xml:303 doc/classes/Vector3.xml:304
-msgid ""
-"Returns the component of the vector along a plane defined by the given "
-"normal."
+#: doc/classes/Vector2.xml:308 doc/classes/Vector3.xml:309
+msgid "Returns this vector slid along a plane defined by the given normal."
msgstr ""
-#: doc/classes/Vector2.xml:312 doc/classes/Vector3.xml:313
-msgid "Returns the vector snapped to a grid with the given size."
+#: doc/classes/Vector2.xml:317 doc/classes/Vector3.xml:318
+msgid ""
+"Returns this vector with each component snapped to the nearest multiple of "
+"[code]step[/code]. This can also be used to round to an arbitrary number of "
+"decimals."
msgstr ""
-#: doc/classes/Vector2.xml:319
-msgid "Returns a perpendicular vector."
+#: doc/classes/Vector2.xml:324
+msgid ""
+"Returns a perpendicular vector rotated 90 degrees counter-clockwise compared "
+"to the original, with the same length."
msgstr ""
-#: doc/classes/Vector2.xml:325 doc/classes/Vector2i.xml:59
-#: doc/classes/Vector3.xml:326 doc/classes/Vector3i.xml:61
+#: doc/classes/Vector2.xml:330 doc/classes/Vector2i.xml:59
+#: doc/classes/Vector3.xml:332 doc/classes/Vector3i.xml:61
msgid ""
"The vector's X component. Also accessible by using the index position [code]"
"[0][/code]."
msgstr ""
-#: doc/classes/Vector2.xml:328 doc/classes/Vector2i.xml:62
-#: doc/classes/Vector3.xml:329 doc/classes/Vector3i.xml:64
+#: doc/classes/Vector2.xml:333 doc/classes/Vector2i.xml:62
+#: doc/classes/Vector3.xml:335 doc/classes/Vector3i.xml:64
msgid ""
"The vector's Y component. Also accessible by using the index position [code]"
"[1][/code]."
msgstr ""
-#: doc/classes/Vector2.xml:333 doc/classes/Vector2i.xml:67
+#: doc/classes/Vector2.xml:338 doc/classes/Vector2i.xml:67
#: doc/classes/Vector3i.xml:72
msgid "Enumerated value for the X axis."
msgstr ""
-#: doc/classes/Vector2.xml:336 doc/classes/Vector2i.xml:70
+#: doc/classes/Vector2.xml:341 doc/classes/Vector2i.xml:70
#: doc/classes/Vector3i.xml:75
msgid "Enumerated value for the Y axis."
msgstr ""
-#: doc/classes/Vector2.xml:339 doc/classes/Vector2i.xml:73
-#: doc/classes/Vector3.xml:346 doc/classes/Vector3i.xml:81
-msgid "Zero vector."
+#: doc/classes/Vector2.xml:344 doc/classes/Vector2i.xml:73
+#: doc/classes/Vector3.xml:352 doc/classes/Vector3i.xml:81
+msgid "Zero vector, a vector with all components set to [code]0[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:342 doc/classes/Vector2i.xml:76
-#: doc/classes/Vector3.xml:349 doc/classes/Vector3i.xml:84
-msgid "One vector."
+#: doc/classes/Vector2.xml:347 doc/classes/Vector2i.xml:76
+#: doc/classes/Vector3.xml:355 doc/classes/Vector3i.xml:84
+msgid "One vector, a vector with all components set to [code]1[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:345 doc/classes/Vector3.xml:352
-msgid "Infinity vector."
+#: doc/classes/Vector2.xml:350 doc/classes/Vector3.xml:358
+msgid ""
+"Infinity vector, a vector with all components set to [constant @GDScript."
+"INF]."
msgstr ""
-#: doc/classes/Vector2.xml:348 doc/classes/Vector2i.xml:79
-#: doc/classes/Vector3.xml:355 doc/classes/Vector3i.xml:87
-msgid "Left unit vector."
+#: doc/classes/Vector2.xml:353 doc/classes/Vector2i.xml:79
+msgid "Left unit vector. Represents the direction of left."
msgstr ""
-#: doc/classes/Vector2.xml:351 doc/classes/Vector2i.xml:82
-#: doc/classes/Vector3.xml:358 doc/classes/Vector3i.xml:90
-msgid "Right unit vector."
+#: doc/classes/Vector2.xml:356 doc/classes/Vector2i.xml:82
+msgid "Right unit vector. Represents the direction of right."
msgstr ""
-#: doc/classes/Vector2.xml:354 doc/classes/Vector2i.xml:85
-#: doc/classes/Vector3.xml:361 doc/classes/Vector3i.xml:93
-msgid "Up unit vector."
+#: doc/classes/Vector2.xml:359 doc/classes/Vector2i.xml:85
+msgid "Up unit vector. Y is down in 2D, so this vector points -Y."
msgstr ""
-#: doc/classes/Vector2.xml:357 doc/classes/Vector2i.xml:88
-#: doc/classes/Vector3.xml:364 doc/classes/Vector3i.xml:96
-msgid "Down unit vector."
+#: doc/classes/Vector2.xml:362 doc/classes/Vector2i.xml:88
+msgid "Down unit vector. Y is down in 2D, so this vector points +Y."
msgstr ""
#: doc/classes/Vector2i.xml:4
@@ -53812,6 +54966,16 @@ msgid ""
"will be truncated."
msgstr ""
+#: doc/classes/Vector2i.xml:46
+msgid "Returns the ratio of [member x] to [member y]."
+msgstr ""
+
+#: doc/classes/Vector2i.xml:53 doc/classes/Vector3i.xml:55
+msgid ""
+"Returns the vector with each component set to one or negative one, depending "
+"on the signs of the components."
+msgstr ""
+
#: doc/classes/Vector3.xml:4
msgid "Vector used for 3D math using floating point coordinates."
msgstr ""
@@ -53836,120 +55000,170 @@ msgid "Returns a [Vector3] with the given components."
msgstr ""
#: doc/classes/Vector3.xml:50
-msgid "Returns the minimum angle to the given vector."
+msgid "Returns the minimum angle to the given vector, in radians."
msgstr ""
#: doc/classes/Vector3.xml:66
-msgid "Returns a new vector with all components rounded up."
+msgid ""
+"Returns a new vector with all components rounded up (towards positive "
+"infinity)."
msgstr ""
#: doc/classes/Vector3.xml:75
-msgid "Returns the cross product with [code]b[/code]."
+msgid "Returns the cross product of this vector and [code]b[/code]."
msgstr ""
#: doc/classes/Vector3.xml:90
msgid ""
"Performs a cubic interpolation between vectors [code]pre_a[/code], [code]a[/"
"code], [code]b[/code], [code]post_b[/code] ([code]a[/code] is current), by "
-"the given amount [code]t[/code]. [code]t[/code] is in the range of [code]0.0 "
-"- 1.0[/code], representing the amount of interpolation."
-msgstr ""
-
-#: doc/classes/Vector3.xml:108
-msgid ""
-"Returns the squared distance to [code]b[/code]. Prefer this function over "
-"[method distance_to] if you need to sort vectors or need the squared "
-"distance for some formula."
+"the given amount [code]t[/code]. [code]t[/code] is on the range of 0.0 to "
+"1.0, representing the amount of interpolation."
msgstr ""
-#: doc/classes/Vector3.xml:117
-msgid "Returns the distance to [code]b[/code]."
+#: doc/classes/Vector3.xml:118
+msgid "Returns the distance between this vector and [code]b[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:126
-msgid "Returns the dot product with [code]b[/code]."
+#: doc/classes/Vector3.xml:127
+msgid ""
+"Returns the dot product of this vector and [code]b[/code]. This can be used "
+"to compare the angle between two vectors. For example, this can be used to "
+"determine whether an enemy is facing the player.\n"
+"The dot product will be [code]0[/code] for a straight angle (90 degrees), "
+"greater than 0 for angles narrower than 90 degrees and lower than 0 for "
+"angles wider than 90 degrees.\n"
+"When using unit (normalized) vectors, the result will always be between "
+"[code]-1.0[/code] (180 degree angle) when the vectors are facing opposite "
+"directions, and [code]1.0[/code] (0 degree angle) when the vectors are "
+"aligned.\n"
+"[b]Note:[/b] [code]a.dot(b)[/code] is equivalent to [code]b.dot(a)[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:133
-msgid "Returns a new vector with all components rounded down."
+#: doc/classes/Vector3.xml:137
+msgid ""
+"Returns a new vector with all components rounded down (towards negative "
+"infinity)."
msgstr ""
-#: doc/classes/Vector3.xml:140
+#: doc/classes/Vector3.xml:144
msgid ""
"Returns the inverse of the vector. This is the same as [code]Vector3( 1.0 / "
"v.x, 1.0 / v.y, 1.0 / v.z )[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:170
+#: doc/classes/Vector3.xml:193 doc/classes/Vector3i.xml:41
msgid ""
-"Returns the vector's length squared. Prefer this function over [method "
-"length] if you need to sort vectors or need the squared length for some "
-"formula."
+"Returns the axis of the vector's largest value. See [code]AXIS_*[/code] "
+"constants. If all components are equal, this method returns [constant "
+"AXIS_X]."
msgstr ""
-#: doc/classes/Vector3.xml:181
+#: doc/classes/Vector3.xml:200 doc/classes/Vector3i.xml:48
msgid ""
-"Returns the result of the linear interpolation between this vector and "
-"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation.."
+"Returns the axis of the vector's smallest value. See [code]AXIS_*[/code] "
+"constants. If all components are equal, this method returns [constant "
+"AXIS_Z]."
msgstr ""
-#: doc/classes/Vector3.xml:188 doc/classes/Vector3i.xml:41
+#: doc/classes/Vector3.xml:211
msgid ""
-"Returns the axis of the vector's largest value. See [code]AXIS_*[/code] "
-"constants."
+"Moves this vector toward [code]to[/code] by the fixed [code]delta[/code] "
+"amount."
+msgstr ""
+
+#: doc/classes/Vector3.xml:227
+msgid "Returns the outer product with [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:254
+msgid "Returns this vector projected onto another vector [code]b[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:195 doc/classes/Vector3i.xml:48
+#: doc/classes/Vector3.xml:263
+msgid "Returns this vector reflected from a plane defined by the given normal."
+msgstr ""
+
+#: doc/classes/Vector3.xml:274
msgid ""
-"Returns the axis of the vector's smallest value. See [code]AXIS_*[/code] "
-"constants."
+"Rotates this vector around a given axis by [code]phi[/code] radians. The "
+"axis must be a normalized vector."
msgstr ""
-#: doc/classes/Vector3.xml:222
-msgid "Returns the outer product with [code]b[/code]."
+#: doc/classes/Vector3.xml:281
+msgid ""
+"Returns this vector with all components rounded to the nearest integer, with "
+"halfway cases rounded away from zero."
msgstr ""
-#: doc/classes/Vector3.xml:269
+#: doc/classes/Vector3.xml:288
msgid ""
-"Rotates the vector around a given axis by [code]phi[/code] radians. The axis "
-"must be a normalized vector."
+"Returns a vector with each component set to one or negative one, depending "
+"on the signs of this vector's components, or zero if the component is zero, "
+"by calling [method @GDScript.sign] on each component."
msgstr ""
-#: doc/classes/Vector3.xml:320
-msgid "Returns a diagonal matrix with the vector as main diagonal."
+#: doc/classes/Vector3.xml:325
+msgid ""
+"Returns a diagonal matrix with the vector as main diagonal.\n"
+"This is equivalent to a Basis with no rotation or shearing and this vector's "
+"components set as the scale."
msgstr ""
-#: doc/classes/Vector3.xml:332 doc/classes/Vector3i.xml:67
+#: doc/classes/Vector3.xml:338 doc/classes/Vector3i.xml:67
msgid ""
"The vector's Z component. Also accessible by using the index position [code]"
"[2][/code]."
msgstr ""
-#: doc/classes/Vector3.xml:337
+#: doc/classes/Vector3.xml:343
msgid ""
"Enumerated value for the X axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:340
+#: doc/classes/Vector3.xml:346
msgid ""
"Enumerated value for the Y axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:343
+#: doc/classes/Vector3.xml:349
msgid ""
"Enumerated value for the Z axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:367 doc/classes/Vector3i.xml:99
-msgid "Forward unit vector."
+#: doc/classes/Vector3.xml:361 doc/classes/Vector3i.xml:87
+msgid ""
+"Left unit vector. Represents the local direction of left, and the global "
+"direction of west."
+msgstr ""
+
+#: doc/classes/Vector3.xml:364 doc/classes/Vector3i.xml:90
+msgid ""
+"Right unit vector. Represents the local direction of right, and the global "
+"direction of east."
+msgstr ""
+
+#: doc/classes/Vector3.xml:367 doc/classes/Vector3i.xml:93
+msgid "Up unit vector."
+msgstr ""
+
+#: doc/classes/Vector3.xml:370 doc/classes/Vector3i.xml:96
+msgid "Down unit vector."
msgstr ""
-#: doc/classes/Vector3.xml:370 doc/classes/Vector3i.xml:102
-msgid "Back unit vector."
+#: doc/classes/Vector3.xml:373 doc/classes/Vector3i.xml:99
+msgid ""
+"Forward unit vector. Represents the local direction of forward, and the "
+"global direction of north."
+msgstr ""
+
+#: doc/classes/Vector3.xml:376 doc/classes/Vector3i.xml:102
+msgid ""
+"Back unit vector. Represents the local direction of back, and the global "
+"direction of south."
msgstr ""
#: doc/classes/Vector3i.xml:4
@@ -53998,10 +55212,14 @@ msgid ""
"directly.\n"
"[b]Note:[/b] The origin point of your VehicleBody3D will determine the "
"center of gravity of your vehicle so it is better to keep this low and move "
-"the [CollisionShape3D] and [MeshInstance3D] upwards."
+"the [CollisionShape3D] and [MeshInstance3D] upwards.\n"
+"[b]Note:[/b] This class has known issues and isn't designed to provide "
+"realistic 3D vehicle physics. If you want advanced vehicle physics, you will "
+"probably have to write your own physics integration using another "
+"[PhysicsBody3D] class."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:16
+#: doc/classes/VehicleBody3D.xml:17
msgid ""
"Slows down the vehicle by applying a braking force. The vehicle is only "
"slowed down if the wheels are in contact with a surface. The force you need "
@@ -54010,7 +55228,7 @@ msgid ""
"a value in the 25 - 30 range for hard braking."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:19
+#: doc/classes/VehicleBody3D.xml:20
msgid ""
"Accelerates the vehicle by applying an engine force. The vehicle is only "
"speed up if the wheels that have [member VehicleWheel3D.use_as_traction] set "
@@ -54023,7 +55241,7 @@ msgid ""
"A negative value will result in the vehicle reversing."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:25
+#: doc/classes/VehicleBody3D.xml:26
msgid ""
"The steering angle for the vehicle. Setting this to a non-zero value will "
"result in the vehicle turning when it's moving. Wheels that have [member "
@@ -54039,25 +55257,29 @@ msgstr ""
msgid ""
"This node needs to be used as a child node of [VehicleBody3D] and simulates "
"the behavior of one of its wheels. This node also acts as a collider to "
-"detect if the wheel is touching a surface."
+"detect if the wheel is touching a surface.\n"
+"[b]Note:[/b] This class has known issues and isn't designed to provide "
+"realistic 3D vehicle physics. If you want advanced vehicle physics, you will "
+"probably have to write your own physics integration using another "
+"[PhysicsBody3D] class."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:16
+#: doc/classes/VehicleWheel3D.xml:17
msgid "Returns the rotational speed of the wheel in revolutions per minute."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:23
+#: doc/classes/VehicleWheel3D.xml:24
msgid ""
"Returns a value between 0.0 and 1.0 that indicates whether this wheel is "
"skidding. 0.0 is skidding (the wheel has lost grip, e.g. icy terrain), 1.0 "
"means not skidding (the wheel has full grip, e.g. dry asphalt road)."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:30
+#: doc/classes/VehicleWheel3D.xml:31
msgid "Returns [code]true[/code] if this wheel is in contact with a surface."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:36
+#: doc/classes/VehicleWheel3D.xml:37
msgid ""
"Slows down the wheel by applying a braking force. The wheel is only slowed "
"down if it is in contact with a surface. The force you need to apply to "
@@ -54066,7 +55288,7 @@ msgid ""
"- 30 range for hard braking."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:39
+#: doc/classes/VehicleWheel3D.xml:40
msgid ""
"The damping applied to the spring when the spring is being compressed. This "
"value should be between 0.0 (no damping) and 1.0. A value of 0.0 means the "
@@ -54074,7 +55296,7 @@ msgid ""
"is around 0.3 for a normal car, 0.5 for a race car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:42
+#: doc/classes/VehicleWheel3D.xml:43
msgid ""
"The damping applied to the spring when relaxing. This value should be "
"between 0.0 (no damping) and 1.0. This value should always be slightly "
@@ -54082,7 +55304,7 @@ msgid ""
"damping_compression] value of 0.3, try a relaxation value of 0.5."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:45
+#: doc/classes/VehicleWheel3D.xml:46
msgid ""
"Accelerates the wheel by applying an engine force. The wheel is only speed "
"up if it is in contact with a surface. The [member RigidBody3D.mass] of the "
@@ -54093,13 +55315,13 @@ msgid ""
"A negative value will result in the wheel reversing."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:50
+#: doc/classes/VehicleWheel3D.xml:51
msgid ""
"The steering angle for the wheel. Setting this to a non-zero value will "
"result in the vehicle turning when it's moving."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:53
+#: doc/classes/VehicleWheel3D.xml:54
msgid ""
"The maximum force the spring can resist. This value should be higher than a "
"quarter of the [member RigidBody3D.mass] of the [VehicleBody3D] or the "
@@ -54107,28 +55329,28 @@ msgid ""
"obtained by a value that is about 3× to 4× this number."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:56
+#: doc/classes/VehicleWheel3D.xml:57
msgid ""
"This value defines the stiffness of the suspension. Use a value lower than "
"50 for an off-road car, a value between 50 and 100 for a race car and try "
"something around 200 for something like a Formula 1 car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:59
+#: doc/classes/VehicleWheel3D.xml:60
msgid ""
"This is the distance the suspension can travel. As Godot units are "
"equivalent to meters, keep this setting relatively low. Try a value between "
"0.1 and 0.3 depending on the type of car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:62
+#: doc/classes/VehicleWheel3D.xml:63
msgid ""
"If [code]true[/code], this wheel will be turned when the car steers. This "
"value is used in conjunction with [member VehicleBody3D.steering] and "
"ignored if you are using the per-wheel [member steering] value instead."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:65
+#: doc/classes/VehicleWheel3D.xml:66
msgid ""
"If [code]true[/code], this wheel transfers engine force to the ground to "
"propel the vehicle forward. This value is used in conjunction with [member "
@@ -54136,7 +55358,7 @@ msgid ""
"[member engine_force] value instead."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:68
+#: doc/classes/VehicleWheel3D.xml:69
msgid ""
"This determines how much grip this wheel has. It is combined with the "
"friction setting of the surface the wheel is in contact with. 0.0 means no "
@@ -54146,11 +55368,11 @@ msgid ""
"It's best to set this to 1.0 when starting out."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:72
+#: doc/classes/VehicleWheel3D.xml:73
msgid "The radius of the wheel in meters."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:75
+#: doc/classes/VehicleWheel3D.xml:76
msgid ""
"This is the distance in meters the wheel is lowered from its origin point. "
"Don't set this to 0.0 and move the wheel into position, instead move the "
@@ -54159,7 +55381,7 @@ msgid ""
"down to the position it should be in when the car is in rest."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:78
+#: doc/classes/VehicleWheel3D.xml:79
msgid ""
"This value affects the roll of your vehicle. If set to 1.0 for all wheels, "
"your vehicle will be prone to rolling over, while a value of 0.0 will resist "
@@ -54637,7 +55859,7 @@ msgstr ""
#: doc/classes/Viewport.xml:318
msgid ""
"Use fast approximate antialiasing. FXAA is a popular screen-space "
-"antialising method, which is fast but will make the image look blurry, "
+"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."
msgstr ""
@@ -54690,24 +55912,24 @@ msgid ""
"your [WorldEnvironment]."
msgstr ""
-#: doc/classes/Viewport.xml:384
+#: doc/classes/Viewport.xml:381
msgid ""
"Colors each PSSM split for the [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, and yellow."
msgstr ""
-#: doc/classes/Viewport.xml:387
+#: doc/classes/Viewport.xml:384
msgid ""
"Draws the decal atlas used by [Decal]s and light projector textures in the "
"upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/Viewport.xml:402
+#: doc/classes/Viewport.xml:405
msgid "Max value for [enum DefaultCanvasItemTextureFilter] enum."
msgstr ""
-#: doc/classes/Viewport.xml:414
+#: doc/classes/Viewport.xml:417
msgid "Max value for [enum DefaultCanvasItemTextureRepeat] enum."
msgstr ""
@@ -54738,82 +55960,84 @@ msgid ""
"The VisibilityEnabler2D will disable [RigidBody2D], [AnimationPlayer], and "
"other nodes when they are not visible. It will only affect nodes with the "
"same root node as the VisibilityEnabler2D, and the root node itself.\n"
+"If you just want to receive notifications, use [VisibilityNotifier2D] "
+"instead.\n"
"[b]Note:[/b] For performance reasons, VisibilityEnabler2D uses an "
"approximate heuristic with precision determined by [member ProjectSettings."
-"world/2d/cell_size]. If you need exact visibility checking, use another "
+"world/2d/cell_size]. If you need precise visibility checking, use another "
"method such as adding an [Area2D] node as a child of a [Camera2D] node.\n"
"[b]Note:[/b] VisibilityEnabler2D will not affect nodes added after scene "
"initialization."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:20
-#: doc/classes/VisibilityEnabler3D.xml:20
+#: doc/classes/VisibilityEnabler2D.xml:21
+#: doc/classes/VisibilityEnabler3D.xml:21
msgid ""
"Returns whether the enabler identified by given [enum Enabler] constant is "
"active."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:31
-#: doc/classes/VisibilityEnabler3D.xml:31
+#: doc/classes/VisibilityEnabler2D.xml:32
+#: doc/classes/VisibilityEnabler3D.xml:32
msgid ""
"Sets active state of the enabler identified by given [enum Enabler] constant."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:37
+#: doc/classes/VisibilityEnabler2D.xml:38
msgid "If [code]true[/code], [RigidBody2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:40
+#: doc/classes/VisibilityEnabler2D.xml:41
msgid "If [code]true[/code], [AnimatedSprite2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:43
-#: doc/classes/VisibilityEnabler3D.xml:40
+#: doc/classes/VisibilityEnabler2D.xml:44
+#: doc/classes/VisibilityEnabler3D.xml:41
msgid "If [code]true[/code], [AnimationPlayer] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:46
+#: doc/classes/VisibilityEnabler2D.xml:47
msgid "If [code]true[/code], [GPUParticles2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:49
+#: doc/classes/VisibilityEnabler2D.xml:50
msgid ""
"If [code]true[/code], the parent's [method Node._physics_process] will be "
"stopped."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:52
+#: doc/classes/VisibilityEnabler2D.xml:53
msgid ""
"If [code]true[/code], the parent's [method Node._process] will be stopped."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:57
-#: doc/classes/VisibilityEnabler3D.xml:45
+#: doc/classes/VisibilityEnabler2D.xml:58
+#: doc/classes/VisibilityEnabler3D.xml:46
msgid "This enabler will pause [AnimationPlayer] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:60
+#: doc/classes/VisibilityEnabler2D.xml:61
msgid "This enabler will freeze [RigidBody2D] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:63
+#: doc/classes/VisibilityEnabler2D.xml:64
msgid "This enabler will stop [GPUParticles2D] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:66
+#: doc/classes/VisibilityEnabler2D.xml:67
msgid "This enabler will stop the parent's _process function."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:69
+#: doc/classes/VisibilityEnabler2D.xml:70
msgid "This enabler will stop the parent's _physics_process function."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:72
+#: doc/classes/VisibilityEnabler2D.xml:73
msgid "This enabler will stop [AnimatedSprite2D] nodes animations."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:75
-#: doc/classes/VisibilityEnabler3D.xml:51
+#: doc/classes/VisibilityEnabler2D.xml:76
+#: doc/classes/VisibilityEnabler3D.xml:52
msgid "Represents the size of the [enum Enabler] enum."
msgstr ""
@@ -54822,19 +56046,23 @@ msgid ""
"The VisibilityEnabler3D will disable [RigidBody3D] and [AnimationPlayer] "
"nodes when they are not visible. It will only affect other nodes within the "
"same scene as the VisibilityEnabler3D itself.\n"
+"If you just want to receive notifications, use [VisibilityNotifier3D] "
+"instead.\n"
"[b]Note:[/b] VisibilityEnabler3D uses an approximate heuristic for "
"performance reasons. It doesn't take walls and other occlusion into account. "
-"If you need exact visibility checking, use another method such as adding an "
-"[Area3D] node as a child of a [Camera3D] node.\n"
+"The heuristic is an implementation detail and may change in future versions. "
+"If you need precise visibility checking, use another method such as adding "
+"an [Area3D] node as a child of a [Camera3D] node and/or [method Vector3."
+"dot].\n"
"[b]Note:[/b] VisibilityEnabler3D will not affect nodes added after scene "
"initialization."
msgstr ""
-#: doc/classes/VisibilityEnabler3D.xml:37
+#: doc/classes/VisibilityEnabler3D.xml:38
msgid "If [code]true[/code], [RigidBody3D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler3D.xml:48
+#: doc/classes/VisibilityEnabler3D.xml:49
msgid "This enabler will freeze [RigidBody3D] nodes."
msgstr ""
@@ -54848,13 +56076,15 @@ msgid ""
"The VisibilityNotifier2D detects when it is visible on the screen. It also "
"notifies when its bounding rectangle enters or exits the screen or a "
"viewport.\n"
+"If you want nodes to be disabled automatically when they exit the screen, "
+"use [VisibilityEnabler2D] instead.\n"
"[b]Note:[/b] For performance reasons, VisibilityNotifier2D uses an "
"approximate heuristic with precision determined by [member ProjectSettings."
-"world/2d/cell_size]. If you need exact visibility checking, use another "
+"world/2d/cell_size]. If you need precise visibility checking, use another "
"method such as adding an [Area2D] node as a child of a [Camera2D] node."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:17
+#: doc/classes/VisibilityNotifier2D.xml:18
msgid ""
"If [code]true[/code], the bounding rectangle is on the screen.\n"
"[b]Note:[/b] It takes one frame for the node's visibility to be assessed "
@@ -54863,23 +56093,23 @@ msgid ""
"pass."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:24
+#: doc/classes/VisibilityNotifier2D.xml:25
msgid "The VisibilityNotifier2D's bounding rectangle."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:30
+#: doc/classes/VisibilityNotifier2D.xml:31
msgid "Emitted when the VisibilityNotifier2D enters the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:35
+#: doc/classes/VisibilityNotifier2D.xml:36
msgid "Emitted when the VisibilityNotifier2D exits the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:42
+#: doc/classes/VisibilityNotifier2D.xml:43
msgid "Emitted when the VisibilityNotifier2D enters a [Viewport]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:49
+#: doc/classes/VisibilityNotifier2D.xml:50
msgid "Emitted when the VisibilityNotifier2D exits a [Viewport]'s view."
msgstr ""
@@ -54888,13 +56118,16 @@ msgid ""
"The VisibilityNotifier3D detects when it is visible on the screen. It also "
"notifies when its bounding rectangle enters or exits the screen or a "
"[Camera3D]'s view.\n"
+"If you want nodes to be disabled automatically when they exit the screen, "
+"use [VisibilityEnabler3D] instead.\n"
"[b]Note:[/b] VisibilityNotifier3D uses an approximate heuristic for "
"performance reasons. It doesn't take walls and other occlusion into account. "
-"If you need exact visibility checking, use another method such as adding an "
-"[Area3D] node as a child of a [Camera3D] node."
+"The heuristic is an implementation detail and may change in future versions. "
+"If you need precise visibility checking, use another method such as adding "
+"an [Area3D] node as a child of a [Camera3D] node and/or [method Vector3.dot]."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:17
+#: doc/classes/VisibilityNotifier3D.xml:18
msgid ""
"If [code]true[/code], the bounding box is on the screen.\n"
"[b]Note:[/b] It takes one frame for the node's visibility to be assessed "
@@ -54903,23 +56136,23 @@ msgid ""
"pass."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:24
+#: doc/classes/VisibilityNotifier3D.xml:25
msgid "The VisibilityNotifier3D's bounding box."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:32
+#: doc/classes/VisibilityNotifier3D.xml:33
msgid "Emitted when the VisibilityNotifier3D enters a [Camera3D]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:39
+#: doc/classes/VisibilityNotifier3D.xml:40
msgid "Emitted when the VisibilityNotifier3D exits a [Camera3D]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:44
+#: doc/classes/VisibilityNotifier3D.xml:45
msgid "Emitted when the VisibilityNotifier3D enters the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:49
+#: doc/classes/VisibilityNotifier3D.xml:50
msgid "Emitted when the VisibilityNotifier3D exits the screen."
msgstr ""
@@ -55339,6 +56572,12 @@ msgid ""
"exist."
msgstr ""
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:90
+msgid ""
+"Easing function, based on exponent. 0 is constant, 1 is linear, 0 to 1 is "
+"ease-in, 1+ is ease out. Negative values are in-out/out in."
+msgstr ""
+
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:93
msgid ""
"Return the number of digit places after the decimal that the first non-zero "
@@ -56224,6 +57463,7 @@ msgid "A shader for light calculations."
msgstr ""
#: doc/classes/VisualShader.xml:214
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:26
msgid "Represents the size of the [enum Type] enum."
msgstr ""
@@ -56326,6 +57566,24 @@ msgstr ""
msgid "Translated to [code]uniform bool[/code] in the shader language."
msgstr ""
+#: doc/classes/VisualShaderNodeBooleanUniform.xml:15
+#: doc/classes/VisualShaderNodeColorUniform.xml:15
+#: doc/classes/VisualShaderNodeFloatUniform.xml:15
+#: doc/classes/VisualShaderNodeIntUniform.xml:15
+#: doc/classes/VisualShaderNodeTransformUniform.xml:15
+#: doc/classes/VisualShaderNodeVec3Uniform.xml:15
+msgid "A default value to be assigned within the shader."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeBooleanUniform.xml:18
+#: doc/classes/VisualShaderNodeColorUniform.xml:18
+#: doc/classes/VisualShaderNodeFloatUniform.xml:18
+#: doc/classes/VisualShaderNodeIntUniform.xml:18
+#: doc/classes/VisualShaderNodeTransformUniform.xml:18
+#: doc/classes/VisualShaderNodeVec3Uniform.xml:18
+msgid "Enables usage of the [member default_value]."
+msgstr ""
+
#: doc/classes/VisualShaderNodeColorConstant.xml:4
msgid "A [Color] constant to be used within the visual shader graph."
msgstr ""
@@ -57176,49 +58434,49 @@ msgstr ""
msgid "Translated to [code]uniform float[/code] in the shader language."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:15
-#: doc/classes/VisualShaderNodeIntUniform.xml:15
+#: doc/classes/VisualShaderNodeFloatUniform.xml:21
+#: doc/classes/VisualShaderNodeIntUniform.xml:21
msgid ""
"A hint applied to the uniform, which controls the values it can take when "
"set through the inspector."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:18
-#: doc/classes/VisualShaderNodeIntUniform.xml:18
+#: doc/classes/VisualShaderNodeFloatUniform.xml:24
+#: doc/classes/VisualShaderNodeIntUniform.xml:24
msgid ""
"Minimum value for range hints. Used if [member hint] is set to [constant "
"HINT_RANGE] or [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:21
-#: doc/classes/VisualShaderNodeIntUniform.xml:21
+#: doc/classes/VisualShaderNodeFloatUniform.xml:27
+#: doc/classes/VisualShaderNodeIntUniform.xml:27
msgid ""
"Maximum value for range hints. Used if [member hint] is set to [constant "
"HINT_RANGE] or [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:24
-#: doc/classes/VisualShaderNodeIntUniform.xml:24
+#: doc/classes/VisualShaderNodeFloatUniform.xml:30
+#: doc/classes/VisualShaderNodeIntUniform.xml:30
msgid ""
"Step (increment) value for the range hint with step. Used if [member hint] "
"is set to [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:29
-#: doc/classes/VisualShaderNodeIntUniform.xml:29
+#: doc/classes/VisualShaderNodeFloatUniform.xml:35
+#: doc/classes/VisualShaderNodeIntUniform.xml:35
msgid "No hint used."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:32
-#: doc/classes/VisualShaderNodeIntUniform.xml:32
+#: doc/classes/VisualShaderNodeFloatUniform.xml:38
+#: doc/classes/VisualShaderNodeIntUniform.xml:38
msgid ""
"A range hint for scalar value, which limits possible input values between "
"[member min] and [member max]. Translated to [code]hint_range(min, max)[/"
"code] in shader code."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:35
-#: doc/classes/VisualShaderNodeIntUniform.xml:35
+#: doc/classes/VisualShaderNodeFloatUniform.xml:41
+#: doc/classes/VisualShaderNodeIntUniform.xml:41
msgid ""
"A range hint for scalar value with step, which limits possible input values "
"between [member min] and [member max], with a step (increment) of [member "
@@ -57500,6 +58758,26 @@ msgid ""
"results, e.g. division by zero)."
msgstr ""
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:4
+msgid "Performs a fused multiply-add operation within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:7
+msgid "Uses three operands to compute [code](a * b + c)[/code] expression."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:15
+msgid "A type of operands and returned value."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:20
+msgid "A scalar type."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:23
+msgid "A vector type."
+msgstr ""
+
#: doc/classes/VisualShaderNodeOuterProduct.xml:4
msgid ""
"Calculates an outer product of two vectors within the visual shader graph."
@@ -57522,7 +58800,7 @@ msgstr ""
#: doc/classes/VisualShaderNodeOutput.xml:7
msgid ""
"This visual shader node is present in all shader graphs in form of \"Output"
-"\" block with mutliple output value ports."
+"\" block with multiple output value ports."
msgstr ""
#: doc/classes/VisualShaderNodeSample3D.xml:4
@@ -57886,6 +59164,20 @@ msgid ""
"[ShaderMaterial] properties."
msgstr ""
+#: doc/classes/VisualShaderNodeUniformRef.xml:4
+msgid "A reference to an existing [VisualShaderNodeUniform]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniformRef.xml:7
+msgid ""
+"Creating a reference to a [VisualShaderNodeUniform] allows you to reuse this "
+"uniform in different shaders or shader stages easily."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniformRef.xml:15
+msgid "The name of the uniform which this reference points to."
+msgstr ""
+
#: doc/classes/VisualShaderNodeVec3Constant.xml:4
msgid "A [Vector3] constant to be used within the visual shader graph."
msgstr ""
@@ -57983,7 +59275,7 @@ msgstr ""
#: doc/classes/VisualShaderNodeVectorFunc.xml:26
msgid "Returns the opposite value of the parameter."
-msgstr ""
+msgstr "Vrátí opaÄnou hodnotu parametru."
#: doc/classes/VisualShaderNodeVectorFunc.xml:29
msgid "Returns [code]1/vector[/code]."
@@ -57999,88 +59291,89 @@ msgstr ""
#: doc/classes/VisualShaderNodeVectorFunc.xml:38
msgid "Returns the absolute value of the parameter."
-msgstr ""
+msgstr "Vrátí absolutní hodnotu parametru."
#: doc/classes/VisualShaderNodeVectorFunc.xml:41
msgid "Returns the arc-cosine of the parameter."
-msgstr ""
+msgstr "Vrátí arkus kosinus parametru."
#: doc/classes/VisualShaderNodeVectorFunc.xml:44
msgid "Returns the inverse hyperbolic cosine of the parameter."
-msgstr ""
+msgstr "Vrátí inverzní hyperbolický kosinus parametru."
#: doc/classes/VisualShaderNodeVectorFunc.xml:47
msgid "Returns the arc-sine of the parameter."
-msgstr ""
+msgstr "Vrátí arkus sinus parametru."
#: doc/classes/VisualShaderNodeVectorFunc.xml:50
msgid "Returns the inverse hyperbolic sine of the parameter."
-msgstr ""
+msgstr "Vrátí inverzní hyperbolický sinus parametru."
#: doc/classes/VisualShaderNodeVectorFunc.xml:53
msgid "Returns the arc-tangent of the parameter."
-msgstr ""
+msgstr "Vrátí arkus tangent parametru."
#: doc/classes/VisualShaderNodeVectorFunc.xml:56
msgid "Returns the inverse hyperbolic tangent of the parameter."
-msgstr ""
+msgstr "Vrátí inverzní hyperbolický tangent parametru."
#: doc/classes/VisualShaderNodeVectorFunc.xml:59
msgid ""
"Finds the nearest integer that is greater than or equal to the parameter."
msgstr ""
+"Nalezne nejbližší celé Äíslo, které je vÄ›tší nebo stejné jako parametr."
#: doc/classes/VisualShaderNodeVectorFunc.xml:62
msgid "Returns the cosine of the parameter."
-msgstr ""
+msgstr "Vrátí kosinus parametru."
#: doc/classes/VisualShaderNodeVectorFunc.xml:65
msgid "Returns the hyperbolic cosine of the parameter."
-msgstr ""
+msgstr "Vrátí hyperbolický kosinus parametru."
#: doc/classes/VisualShaderNodeVectorFunc.xml:68
msgid "Converts a quantity in radians to degrees."
-msgstr ""
+msgstr "Konvertuje hodnotu v radiánech na stupně."
#: doc/classes/VisualShaderNodeVectorFunc.xml:71
msgid "Base-e Exponential."
-msgstr ""
+msgstr "Exponenciál se základem e."
#: doc/classes/VisualShaderNodeVectorFunc.xml:74
msgid "Base-2 Exponential."
-msgstr ""
+msgstr "Exponenciál se základem 2."
#: doc/classes/VisualShaderNodeVectorFunc.xml:77
msgid "Finds the nearest integer less than or equal to the parameter."
-msgstr ""
+msgstr "Nalezne nejbližší celé Äíslo menší nebo stejné jako parametr."
#: doc/classes/VisualShaderNodeVectorFunc.xml:80
msgid "Computes the fractional part of the argument."
-msgstr ""
+msgstr "VypoÄítá desetinnou Äást argumentu."
#: doc/classes/VisualShaderNodeVectorFunc.xml:83
msgid "Returns the inverse of the square root of the parameter."
-msgstr ""
+msgstr "Vrátí inverzní odmocninu z parametru."
#: doc/classes/VisualShaderNodeVectorFunc.xml:86
msgid "Natural logarithm."
-msgstr ""
+msgstr "Přirozený logaritmus."
#: doc/classes/VisualShaderNodeVectorFunc.xml:89
msgid "Base-2 logarithm."
-msgstr ""
+msgstr "Logaritmus se základem 2."
#: doc/classes/VisualShaderNodeVectorFunc.xml:92
msgid "Converts a quantity in degrees to radians."
-msgstr ""
+msgstr "Konvertuje hodnotu ve stupních na radiány."
#: doc/classes/VisualShaderNodeVectorFunc.xml:95
msgid "Finds the nearest integer to the parameter."
-msgstr ""
+msgstr "Nalezne nejbližší celé Äíslo k parametru."
#: doc/classes/VisualShaderNodeVectorFunc.xml:98
msgid "Finds the nearest even integer to the parameter."
-msgstr ""
+msgstr "Nalezne nejbližší sudé celé Äíslo k parametru."
#: doc/classes/VisualShaderNodeVectorFunc.xml:101
msgid ""
@@ -58091,23 +59384,23 @@ msgstr ""
#: doc/classes/VisualShaderNodeVectorFunc.xml:104
msgid "Returns the sine of the parameter."
-msgstr ""
+msgstr "Vrátí sinus parametru."
#: doc/classes/VisualShaderNodeVectorFunc.xml:107
msgid "Returns the hyperbolic sine of the parameter."
-msgstr ""
+msgstr "Vrátí hyperbolický sinus parametru."
#: doc/classes/VisualShaderNodeVectorFunc.xml:110
msgid "Returns the square root of the parameter."
-msgstr ""
+msgstr "Vrátí odmocninu parametru."
#: doc/classes/VisualShaderNodeVectorFunc.xml:113
msgid "Returns the tangent of the parameter."
-msgstr ""
+msgstr "Vrátí tangens parametru."
#: doc/classes/VisualShaderNodeVectorFunc.xml:116
msgid "Returns the hyperbolic tangent of the parameter."
-msgstr ""
+msgstr "Vrátí hyperbolický tangens parametru."
#: doc/classes/VisualShaderNodeVectorFunc.xml:119
msgid ""
@@ -58192,7 +59485,7 @@ msgstr ""
#: doc/classes/VisualShaderNodeVectorOp.xml:47
msgid "Returns the arc-tangent of the parameters."
-msgstr ""
+msgstr "Vrátí arkus tangent parametrů."
#: doc/classes/VisualShaderNodeVectorOp.xml:50
msgid ""
@@ -58216,7 +59509,7 @@ msgstr ""
msgid ""
"Translated to [code]refract(I, N, eta)[/code] in the shader language, where "
"[code]I[/code] is the incident vector, [code]N[/code] is the normal vector "
-"and [code]eta[/code] is the ratio of the indicies of the refraction."
+"and [code]eta[/code] is the ratio of the indices of the refraction."
msgstr ""
#: doc/classes/VisualShaderNodeVectorScalarMix.xml:4
@@ -59993,3 +61286,51 @@ msgstr ""
msgid ""
"If [code]true[/code], child nodes are sorted, otherwise sorting is disabled."
msgstr ""
+
+#~ msgid ""
+#~ "Returns the nearest larger power of 2 for integer [code]value[/code].\n"
+#~ "[codeblock]\n"
+#~ "nearest_po2(3) # Returns 4\n"
+#~ "nearest_po2(4) # Returns 4\n"
+#~ "nearest_po2(5) # Returns 8\n"
+#~ "[/codeblock]"
+#~ msgstr ""
+#~ "Vrací nejbližší vÄ›tší celoÄíselnou mocninu dvou od integeru "
+#~ "[code]hodnota[/code].\n"
+#~ "[codeblock]\n"
+#~ "nearest_po2(3) # Vrací 4\n"
+#~ "nearest_po2(4) # Vrací 4\n"
+#~ "nearest_po2(5) # Vrací 8\n"
+#~ "[/codeblock]"
+
+#~ msgid ""
+#~ "Returns a resource from the filesystem that is loaded during script "
+#~ "parsing.\n"
+#~ "[b]Note:[/b] Resource paths can be obtained by right clicking on a "
+#~ "resource in the Assets Panel and choosing \"Copy Path\".\n"
+#~ "[codeblock]\n"
+#~ "# Load a scene called main located in the root of the project directory.\n"
+#~ "var main = preload(\"res://main.tscn\")\n"
+#~ "[/codeblock]"
+#~ msgstr ""
+#~ "Vrací zdroj ze souborového systému, který he nahrán během syntaktické "
+#~ "analýzy (parsing) skriptu.\n"
+#~ "[b]Poznámka:[/b] Zdrojová cesta může být získána kliknutím pravého "
+#~ "tlaÄítka myÅ¡i na zdroj ve zdrojovém panelu a výbÄ›rem \"Kopírovat cestu"
+#~ "\".\n"
+#~ "[codeblock]\n"
+#~ "# Nahraje scénu s názvem main, která se nachází ve zdrojovém adresáři "
+#~ "projektového adresáře.\n"
+#~ "var main = preload(\"res://main.tscn\")\n"
+#~ "[/codeblock]"
+
+#~ msgid ""
+#~ "Returns the square root of [code]s[/code].\n"
+#~ "[codeblock]\n"
+#~ "sqrt(9) # Returns 3\n"
+#~ "[/codeblock]"
+#~ msgstr ""
+#~ "Vrací odmocninu z [code]s[/code].\n"
+#~ "[codeblock]\n"
+#~ "sqrt(9) # Vrací 3\n"
+#~ "[/codeblock]"
diff --git a/doc/translations/de.po b/doc/translations/de.po
index 3000df5236..740d4eed12 100644
--- a/doc/translations/de.po
+++ b/doc/translations/de.po
@@ -7,12 +7,16 @@
# So Wieso <sowieso@dukun.de>, 2020.
# artism90 <artism90@googlemail.com>, 2020.
# HugeGameArt <hugegameartgd@gmail.com>, 2020.
+# Günther Bohn <ciscouser@gmx.de>, 2020.
+# Rémi Verschelde <akien@godotengine.org>, 2020.
+# Julian Pritzi <julian.pritzi@gmail.com>, 2020.
+# Markus Lechner <marcus.lechner@gmail.com>, 2020.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine class reference\n"
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
-"PO-Revision-Date: 2020-06-08 11:41+0000\n"
-"Last-Translator: So Wieso <sowieso@dukun.de>\n"
+"PO-Revision-Date: 2020-08-11 14:39+0000\n"
+"Last-Translator: Günther Bohn <ciscouser@gmx.de>\n"
"Language-Team: German <https://hosted.weblate.org/projects/godot-engine/"
"godot-class-reference/de/>\n"
"Language: de\n"
@@ -20,7 +24,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8-bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
-"X-Generator: Weblate 4.1-dev\n"
+"X-Generator: Weblate 4.2-dev\n"
#: doc/tools/makerst.py
msgid "Description"
@@ -110,18 +114,19 @@ msgid ""
"[/codeblock]\n"
"Supported color names are the same as the constants defined in [Color]."
msgstr ""
-"Gibt eine Farbe gemäß dem standardisierten [code]Namen[/code] zurück, wobei "
+"Gibt eine Farbe gemäß dem standardisierten [code]name[/code] zurück, wobei "
"[code]alpha[/code] im Bereich von 0 bis 1 liegt.\n"
"[codeblock]\n"
-"rot = FarbeN(\"rot\", 1)\n"
+"rot = ColorN(\"red\", 1)\n"
"[/codeblock]\n"
-"Die unterstützten Farbnamen sind die gleichen wie die in [Farbe] definierten "
+"Die unterstützten Farbnamen sind die gleichen wie die in [Color] definierten "
"Konstanten."
#: modules/gdscript/doc_classes/@GDScript.xml:55
+#, fuzzy
msgid ""
-"Returns the absolute value of parameter [code]s[/code] (i.e. unsigned value, "
-"works for integer and float).\n"
+"Returns the absolute value of parameter [code]s[/code] (i.e. positive "
+"value).\n"
"[codeblock]\n"
"# a is 1\n"
"a = abs(-1)\n"
@@ -211,12 +216,13 @@ msgstr ""
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:114
+#, fuzzy
msgid ""
"Returns the arc tangent of [code]s[/code] in radians. Use it to get the "
"angle from an angle's tangent in trigonometry: [code]atan(tan(angle)) == "
"angle[/code].\n"
"The method cannot know in which quadrant the angle should fall. See [method "
-"atan2] if you always want an exact angle.\n"
+"atan2] if you have both [code]y[/code] and [code]x[/code].\n"
"[codeblock]\n"
"a = atan(0.5) # a is 0.463648\n"
"[/codeblock]"
@@ -231,10 +237,12 @@ msgstr ""
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:129
+#, fuzzy
msgid ""
"Returns the arc tangent of [code]y/x[/code] in radians. Use to get the angle "
"of tangent [code]y/x[/code]. To compute the value, the method takes into "
"account the sign of both arguments in order to determine the quadrant.\n"
+"Important note: The Y coordinate comes first, by convention.\n"
"[codeblock]\n"
"a = atan2(0, -1) # a is 3.141593\n"
"[/codeblock]"
@@ -247,7 +255,7 @@ msgstr ""
"a = atan2(0, -1) # a ist 3,141593\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:143
+#: modules/gdscript/doc_classes/@GDScript.xml:144
msgid ""
"Decodes a byte array back to a value. When [code]allow_objects[/code] is "
"[code]true[/code] decoding objects is allowed.\n"
@@ -256,14 +264,14 @@ msgid ""
"avoid potential security threats (remote code execution)."
msgstr ""
"Dekodiert ein Byte-Array zurück zu einem Wert. Wenn [code]allow_objects[/"
-"code] gleich [code]true[/code] ist, ist die Dekodierung von Objekten "
+"code] gleich [code]wahr[/code] ist, ist die Dekodierung von Objekten "
"erlaubt.\n"
-"120]WARNUNG:[/b] Deserialisierte Objekte können Code enthalten, der "
+"[b]WARNUNG:[/b] Deserialisierte Objekte können Code enthalten, der "
"ausgeführt wird. Verwenden Sie diese Option nicht, wenn das serialisierte "
"Objekt aus nicht vertrauenswürdigen Quellen stammt, um potenzielle "
"Sicherheitsbedrohungen zu vermeiden (entfernte Codeausführung)."
-#: modules/gdscript/doc_classes/@GDScript.xml:155
+#: modules/gdscript/doc_classes/@GDScript.xml:156
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:145
msgid ""
"Converts a 2D point expressed in the cartesian coordinate system (X and Y "
@@ -274,10 +282,11 @@ msgstr ""
"Achse) in ein Polarkoordinatensystem (die Distanz vom Ursprung und der "
"Winkel)."
-#: modules/gdscript/doc_classes/@GDScript.xml:164
+#: modules/gdscript/doc_classes/@GDScript.xml:165
+#, fuzzy
msgid ""
-"Rounds [code]s[/code] upward, returning the smallest integral value that is "
-"not less than [code]s[/code].\n"
+"Rounds [code]s[/code] upward (towards positive infinity), returning the "
+"smallest whole number that is not less than [code]s[/code].\n"
"[codeblock]\n"
"i = ceil(1.45) # i is 2\n"
"i = ceil(1.001) # i is 2\n"
@@ -290,7 +299,7 @@ msgstr ""
"i = Ceil (1.001) # i ist 2\n"
"[/ codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:177
+#: modules/gdscript/doc_classes/@GDScript.xml:178
msgid ""
"Returns a character as a String of the given Unicode code point (which is "
"compatible with ASCII code).\n"
@@ -310,7 +319,7 @@ msgstr ""
"[/ codeblock]\n"
"Dies ist die Umkehrung von [method ord]."
-#: modules/gdscript/doc_classes/@GDScript.xml:196
+#: modules/gdscript/doc_classes/@GDScript.xml:197
msgid ""
"Clamps [code]value[/code] and returns a value not less than [code]min[/code] "
"and not more than [code]max[/code].\n"
@@ -336,7 +345,7 @@ msgstr ""
"a = clamp(speed, 1, 20)\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:216
+#: modules/gdscript/doc_classes/@GDScript.xml:217
msgid ""
"Converts from a type to another in the best way possible. The [code]type[/"
"code] parameter uses the [enum Variant.Type] values.\n"
@@ -360,7 +369,7 @@ msgstr ""
"print(a.length())\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:233
+#: modules/gdscript/doc_classes/@GDScript.xml:234
msgid ""
"Returns the cosine of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -376,7 +385,7 @@ msgstr ""
"print(cos(PI))\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:247
+#: modules/gdscript/doc_classes/@GDScript.xml:248
msgid ""
"Returns the hyperbolic cosine of [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -390,11 +399,11 @@ msgstr ""
"print(cosh(1))\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:260
+#: modules/gdscript/doc_classes/@GDScript.xml:261
msgid "Converts from decibels to linear energy (audio)."
msgstr "Konvertiert von Dezibel in lineare Energie (Audio)."
-#: modules/gdscript/doc_classes/@GDScript.xml:273
+#: modules/gdscript/doc_classes/@GDScript.xml:274
msgid ""
"Returns the result of [code]value[/code] decreased by [code]step[/code] * "
"[code]amount[/code].\n"
@@ -410,9 +419,10 @@ msgstr ""
"a = dectime(60, 10, 0.1))\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:286
+#: modules/gdscript/doc_classes/@GDScript.xml:287
+#, fuzzy
msgid ""
-"Returns degrees converted to radians.\n"
+"Converts an angle expressed in degrees to radians.\n"
"[codeblock]\n"
"# r is 3.141593\n"
"r = deg2rad(180)\n"
@@ -424,7 +434,7 @@ msgstr ""
"r = deg2rad(180)\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:299
+#: modules/gdscript/doc_classes/@GDScript.xml:300
msgid ""
"Converts a previously converted instance to a dictionary, back into an "
"instance. Useful for deserializing."
@@ -432,21 +442,24 @@ msgstr ""
"Konvertiert eine zuvor konvertierte Instanz in ein Wörterbuch, zurück in "
"eine Instanz. Nützlich für die Deserialisierung."
-#: modules/gdscript/doc_classes/@GDScript.xml:310
-#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:90
+#: modules/gdscript/doc_classes/@GDScript.xml:311
+#, fuzzy
msgid ""
-"Easing function, based on exponent. 0 is constant, 1 is linear, 0 to 1 is "
-"ease-in, 1+ is ease out. Negative values are in-out/out in."
+"Easing function, based on exponent. The curve values are: 0 is constant, 1 "
+"is linear, 0 to 1 is ease-in, 1+ is ease out. Negative values are in-out/out "
+"in."
msgstr ""
"Erleichternde Funktion, basierend auf dem Exponenten. 0 ist konstant, 1 ist "
"linear, 0 bis 1 ist ease-in, 1+ ist ease-out. Negative Werte sind in-out/out-"
"in."
-#: modules/gdscript/doc_classes/@GDScript.xml:319
+#: modules/gdscript/doc_classes/@GDScript.xml:320
+#, fuzzy
msgid ""
"The natural exponential function. It raises the mathematical constant [b]e[/"
"b] to the power of [code]s[/code] and returns it.\n"
-"[b]e[/b] has an approximate value of 2.71828.\n"
+"[b]e[/b] has an approximate value of 2.71828, and can be obtained with "
+"[code]exp(1)[/code].\n"
"For exponents to other bases use the method [method pow].\n"
"[codeblock]\n"
"a = exp(2) # Approximately 7.39\n"
@@ -460,9 +473,11 @@ msgstr ""
"a = exp(2) # Approximately 7.39\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:333
+#: modules/gdscript/doc_classes/@GDScript.xml:334
+#, fuzzy
msgid ""
-"Rounds [code]s[/code] to the closest smaller integer and returns it.\n"
+"Rounds [code]s[/code] downward (towards negative infinity), returning the "
+"largest whole number that is not more than [code]s[/code].\n"
"[codeblock]\n"
"# a is 2.0\n"
"a = floor(2.99)\n"
@@ -483,7 +498,7 @@ msgstr ""
"[b]Hinweis:[/b] Diese Methode gibt einen Schwimmer zurück. Wenn Sie eine "
"ganze Zahl benötigen, können Sie [code]int(s)[/code] direkt verwenden."
-#: modules/gdscript/doc_classes/@GDScript.xml:351
+#: modules/gdscript/doc_classes/@GDScript.xml:352
msgid ""
"Returns the floating-point remainder of [code]a/b[/code], keeping the sign "
"of [code]a[/code].\n"
@@ -493,8 +508,14 @@ msgid ""
"[/codeblock]\n"
"For the integer remainder operation, use the % operator."
msgstr ""
+"Gibt den Divisionsrest von [code]a/b[/code] mit nachkommastellen zurück\n"
+"[codeblock]\n"
+"# Rest ist 1.5\n"
+"var rest = fmod(7, 5.5)\n"
+"[/codeblock]\n"
+"Für den Integer-Divisionsrest, den % Operator benutzen."
-#: modules/gdscript/doc_classes/@GDScript.xml:367
+#: modules/gdscript/doc_classes/@GDScript.xml:368
msgid ""
"Returns the floating-point modulus of [code]a/b[/code] that wraps equally in "
"positive and negative.\n"
@@ -519,8 +540,30 @@ msgid ""
"4 1\n"
"[/codeblock]"
msgstr ""
+"Gibt den Fließkomma-Betrag von [code]a/b[/code] zurück, der sowohl positiv "
+"als auch negativ sein kann.\n"
+"[codeblock]\n"
+"var i = -6\n"
+"while i < 5:\n"
+" prints(i, fposmod(i, 3))\n"
+" i += 1\n"
+"[/codeblock]\n"
+"Ergibt:\n"
+"[codeblock]\n"
+"-6 0\n"
+"-5 1\n"
+"-4 2\n"
+"-3 0\n"
+"-2 1\n"
+"-1 2\n"
+"0 0\n"
+"1 1\n"
+"2 2\n"
+"3 0\n"
+"4 1\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:398
+#: modules/gdscript/doc_classes/@GDScript.xml:399
msgid ""
"Returns a reference to the specified function [code]funcname[/code] in the "
"[code]instance[/code] node. As functions aren't first-class objects in "
@@ -534,8 +577,19 @@ msgid ""
"print(a.call_func()) # Prints bar\n"
"[/codeblock]"
msgstr ""
+"Liefert eine Reference an die genannte Funktion [code]funcname[/code] in the "
+"[code]instance[/code] node. As functions aren't first-class objects in "
+"GDscript, use [code]funcref[/code] to store a [FuncRef] in a variable and "
+"call it later.\n"
+"[codeblock]\n"
+"func foo():\n"
+" return(\"bar\")\n"
+"\n"
+"a = funcref(self, \"foo\")\n"
+"print(a.call_func()) # Prints bar\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:412
+#: modules/gdscript/doc_classes/@GDScript.xml:413
msgid ""
"Returns an array of dictionaries representing the current call stack.\n"
"[codeblock]\n"
@@ -554,8 +608,25 @@ msgid ""
"source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n"
"[/codeblock]"
msgstr ""
+"Gibt ein Array von Wörterbüchern zurück, das den aktuellen Aufrufstapel "
+"darstellt.\n"
+"[codeblock]\n"
+"func _ready():\n"
+" foo()\n"
+"\n"
+"func foo():\n"
+" bar()\n"
+"\n"
+"func bar():\n"
+" print(get_stack())\n"
+"[/codeblock]\n"
+"würde ausgeben:\n"
+"[codeblock]\n"
+"[{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, "
+"source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:435
+#: modules/gdscript/doc_classes/@GDScript.xml:436
msgid ""
"Returns the integer hash of the variable passed.\n"
"[codeblock]\n"
@@ -563,7 +634,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:447
+#: modules/gdscript/doc_classes/@GDScript.xml:448
msgid ""
"Returns the passed instance converted to a dictionary (useful for "
"serializing).\n"
@@ -581,7 +652,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:468
+#: modules/gdscript/doc_classes/@GDScript.xml:469
msgid ""
"Returns the Object that corresponds to [code]instance_id[/code]. All Objects "
"have a unique instance ID.\n"
@@ -593,8 +664,17 @@ msgid ""
" print(inst.foo) # Prints bar\n"
"[/codeblock]"
msgstr ""
+"Liefert das zugehörige Object zu [code]instance_id[/code]. Alle Objekte "
+"haben eine eindeutige Instanz ID.\n"
+"[codeblock]\n"
+"var foo = \"bar\"\n"
+"func _ready():\n"
+" var id = get_instance_id()\n"
+" var inst = instance_from_id(id)\n"
+" print(inst.foo) # Prints bar\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:488
+#: modules/gdscript/doc_classes/@GDScript.xml:489
msgid ""
"Returns a normalized value considering the given range. This is the opposite "
"of [method lerp].\n"
@@ -608,33 +688,52 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:506
+#: modules/gdscript/doc_classes/@GDScript.xml:507
msgid ""
"Returns [code]true[/code] if [code]a[/code] and [code]b[/code] are "
-"approximately equal to each other."
+"approximately equal to each other.\n"
+"Here, approximately equal means that [code]a[/code] and [code]b[/code] are "
+"within a small internal epsilon of each other, which scales with the "
+"magnitude of the numbers.\n"
+"Infinity values of the same sign are considered equal."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:515
+#: modules/gdscript/doc_classes/@GDScript.xml:518
msgid ""
"Returns whether [code]s[/code] is an infinity value (either positive "
"infinity or negative infinity)."
msgstr ""
+"Liefert als Ergebnis ob [code]s[/code] ein unendlicher Wert ist (entweder "
+"positiv unendlich oder negativ unendlich)."
-#: modules/gdscript/doc_classes/@GDScript.xml:524
+#: modules/gdscript/doc_classes/@GDScript.xml:527
msgid ""
"Returns whether [code]instance[/code] is a valid object (e.g. has not been "
"deleted from memory)."
msgstr ""
+"Liefert als Ergebnis ob [code]instance[/code] ein gültiges Objekt ist (z.B. "
+"wurde es noch nicht aus dem Speicher gelöscht)."
-#: modules/gdscript/doc_classes/@GDScript.xml:533
-msgid "Returns whether [code]s[/code] is a NaN (Not-A-Number) value."
+#: modules/gdscript/doc_classes/@GDScript.xml:536
+#, fuzzy
+msgid ""
+"Returns whether [code]s[/code] is a NaN (\"Not a Number\" or invalid) value."
msgstr ""
+"Liefert als Ergebnis ob [code]s[/code] ein NaN (Not-A-Number = keine Nummer) "
+"ist."
-#: modules/gdscript/doc_classes/@GDScript.xml:542
-msgid "Returns [code]true[/code] if [code]s[/code] is zero or almost zero."
+#: modules/gdscript/doc_classes/@GDScript.xml:545
+#, fuzzy
+msgid ""
+"Returns [code]true[/code] if [code]s[/code] is zero or almost zero.\n"
+"This method is faster than using [method is_equal_approx] with one value as "
+"zero."
msgstr ""
+"Gibt [code]true[/code] falls dieser Vektor und Vektor [code]v[/code] "
+"ungefähr gleich sind, wobei [method @GDScript.is_equal_approx] mit beiden "
+"Komponenten aufgerufen wird."
-#: modules/gdscript/doc_classes/@GDScript.xml:551
+#: modules/gdscript/doc_classes/@GDScript.xml:555
msgid ""
"Returns length of Variant [code]var[/code]. Length is the character count of "
"String, element count of Array, size of Dictionary, etc.\n"
@@ -645,7 +744,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:569
+#: modules/gdscript/doc_classes/@GDScript.xml:573
msgid ""
"Linearly interpolates between two values by a normalized value. This is the "
"opposite of [method inverse_lerp].\n"
@@ -660,7 +759,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:588
+#: modules/gdscript/doc_classes/@GDScript.xml:592
msgid ""
"Linearly interpolates between two angles (in radians) by a normalized "
"value.\n"
@@ -677,7 +776,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:607
+#: modules/gdscript/doc_classes/@GDScript.xml:611
msgid ""
"Converts from linear energy to decibels (audio). This can be used to "
"implement volume sliders that behave as expected (since volume isn't "
@@ -693,20 +792,29 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:622
+#: modules/gdscript/doc_classes/@GDScript.xml:626
msgid ""
-"Loads a resource from the filesystem located at [code]path[/code].\n"
+"Loads a resource from the filesystem located at [code]path[/code]. The "
+"resource is loaded on the method call (unless it's referenced already "
+"elsewhere, e.g. in another script or in the scene), which might cause slight "
+"delay, especially when loading scenes. To avoid unnecessary delays when "
+"loading something multiple times, either store the resource in a variable or "
+"use [method preload].\n"
"[b]Note:[/b] Resource paths can be obtained by right-clicking on a resource "
-"in the FileSystem dock and choosing [b]Copy Path[/b].\n"
+"in the FileSystem dock and choosing \"Copy Path\" or by dragging the file "
+"from the FileSystem dock into the script.\n"
"[codeblock]\n"
-"# Load a scene called main located in the root of the project directory.\n"
-"var main = load(\"res://main.tscn\")\n"
+"# Load a scene called main located in the root of the project directory and "
+"cache it in a variable.\n"
+"var main = load(\"res://main.tscn\") # main will contain a PackedScene "
+"resource.\n"
"[/codeblock]\n"
"[b]Important:[/b] The path must be absolute, a local path will just return "
"[code]null[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:637
+#: modules/gdscript/doc_classes/@GDScript.xml:641
+#, fuzzy
msgid ""
"Natural logarithm. The amount of time needed to reach a certain level of "
"continuous growth.\n"
@@ -714,10 +822,19 @@ msgid ""
"calculators, which uses a base 10 logarithm.\n"
"[codeblock]\n"
"log(10) # Returns 2.302585\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] The logarithm of [code]0[/code] returns [code]-inf[/code], "
+"while negative values return [code]-nan[/code]."
msgstr ""
+"Natürlicher Logarithmus. Der benötigte Zeitwert um eine gewisse Stufe eines "
+"fortlaufenden Wachstums zu erreichen.\n"
+"[b]Hinweis:[/b] Dies ist nicht dasselbe wie die \"log\" Funktion eines "
+"Taschenrechners, welche einen Basis 10 Logarithmus nutzt.\n"
+"[codeblock]\n"
+"log(10) # liefert 2.302585\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:652
+#: modules/gdscript/doc_classes/@GDScript.xml:657
msgid ""
"Returns the maximum of two values.\n"
"[codeblock]\n"
@@ -725,8 +842,13 @@ msgid ""
"max(-3.99, -4) # Returns -3.99\n"
"[/codeblock]"
msgstr ""
+"Liefert das Maximum zweier Werte.\n"
+"[codeblock]\n"
+"max(1, 2) # gibt 2 zurück\n"
+"max(-3.99, -4) # gibt -3.99 zurück\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:667
+#: modules/gdscript/doc_classes/@GDScript.xml:672
msgid ""
"Returns the minimum of two values.\n"
"[codeblock]\n"
@@ -734,28 +856,52 @@ msgid ""
"min(-3.99, -4) # Returns -4\n"
"[/codeblock]"
msgstr ""
+"Liefert das Minimum zweier Werte.\n"
+"[codeblock]\n"
+"min(1, 2) # gibt 1 zurück\n"
+"min(-3.99, -4) # gibt -4 zurück\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:684
+#: modules/gdscript/doc_classes/@GDScript.xml:689
+#, fuzzy
msgid ""
"Moves [code]from[/code] toward [code]to[/code] by the [code]delta[/code] "
"value.\n"
"Use a negative [code]delta[/code] value to move away.\n"
"[codeblock]\n"
+"move_toward(5, 10, 4) # Returns 9\n"
"move_toward(10, 5, 4) # Returns 6\n"
+"move_toward(10, 5, -1.5) # Returns 11.5\n"
"[/codeblock]"
msgstr ""
+"Verschiebt [code]von[/code] nach [code]zu[/code] mittels [code]delta[/code] "
+"Wert.\n"
+"Nutze einen negativen [code]delta[/code] Wert um wegzubewegen.\n"
+"[codeblock]\n"
+"move_toward(10, 5, 4) # liefert 6\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:697
+#: modules/gdscript/doc_classes/@GDScript.xml:704
msgid ""
-"Returns the nearest larger power of 2 for integer [code]value[/code].\n"
+"Returns the nearest equal or larger power of 2 for integer [code]value[/"
+"code].\n"
+"In other words, returns the smallest value [code]a[/code] where [code]a = "
+"pow(2, n)[/code] such that [code]value <= a[/code] for some non-negative "
+"integer [code]n[/code].\n"
"[codeblock]\n"
"nearest_po2(3) # Returns 4\n"
"nearest_po2(4) # Returns 4\n"
"nearest_po2(5) # Returns 8\n"
-"[/codeblock]"
+"\n"
+"nearest_po2(0) # Returns 0 (this may not be what you expect)\n"
+"nearest_po2(-1) # Returns 0 (this may not be what you expect)\n"
+"[/codeblock]\n"
+"[b]WARNING:[/b] Due to the way it is implemented, this function returns "
+"[code]0[/code] rather than [code]1[/code] for non-positive values of "
+"[code]value[/code] (in reality, 1 is the smallest integer power of 2)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:711
+#: modules/gdscript/doc_classes/@GDScript.xml:723
msgid ""
"Returns an integer representing the Unicode code point of the given Unicode "
"character [code]char[/code].\n"
@@ -767,27 +913,28 @@ msgid ""
"This is the inverse of [method char]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:726
+#: modules/gdscript/doc_classes/@GDScript.xml:738
msgid ""
-"Parse JSON text to a Variant (use [method typeof] to check if it is what you "
-"expect).\n"
-"Be aware that the JSON specification does not define integer or float types, "
-"but only a number type. Therefore, parsing a JSON text will convert all "
-"numerical values to [float] types.\n"
-"Note that JSON objects do not preserve key order like Godot dictionaries, "
-"thus you should not rely on keys being in a certain order if a dictionary is "
-"constructed from JSON. In contrast, JSON arrays retain the order of their "
+"Parse JSON text to a Variant. (Use [method typeof] to check if the Variant's "
+"type is what you expect.)\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, parsing a JSON text will convert "
+"all numerical values to [float] types.\n"
+"[b]Note:[/b] JSON objects do not preserve key order like Godot dictionaries, "
+"thus, you should not rely on keys being in a certain order if a dictionary "
+"is constructed from JSON. In contrast, JSON arrays retain the order of their "
"elements:\n"
"[codeblock]\n"
-"p = parse_json('[\"a\", \"b\", \"c\"]')\n"
-"if typeof(p) == TYPE_ARRAY:\n"
-" print(p[0]) # Prints a\n"
+"var p = JSON.parse('[\"hello\", \"world\", \"!\"]')\n"
+"if typeof(p.result) == TYPE_ARRAY:\n"
+" print(p.result[0]) # Prints \"hello\"\n"
"else:\n"
-" print(\"unexpected results\")\n"
-"[/codeblock]"
+" push_error(\"Unexpected results.\")\n"
+"[/codeblock]\n"
+"See also [JSON] for an alternative way to parse JSON text."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:746
+#: modules/gdscript/doc_classes/@GDScript.xml:759
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:142
msgid ""
"Converts a 2D point expressed in the polar coordinate system (a distance "
@@ -795,7 +942,7 @@ msgid ""
"cartesian coordinate system (X and Y axis)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:757
+#: modules/gdscript/doc_classes/@GDScript.xml:770
msgid ""
"Returns the integer modulus of [code]a/b[/code] that wraps equally in "
"positive and negative.\n"
@@ -821,27 +968,35 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:788
+#: modules/gdscript/doc_classes/@GDScript.xml:801
msgid ""
"Returns the result of [code]x[/code] raised to the power of [code]y[/code].\n"
"[codeblock]\n"
"pow(2, 5) # Returns 32\n"
"[/codeblock]"
msgstr ""
+"Liefert das Ergebnis von [code]x[/code] hoch [code]y[/code].\n"
+"[codeblock]\n"
+"pow(2, 5) # liefert 32\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:800
+#: modules/gdscript/doc_classes/@GDScript.xml:813
msgid ""
-"Returns a resource from the filesystem that is loaded during script "
-"parsing.\n"
+"Returns a [Resource] from the filesystem located at [code]path[/code]. The "
+"resource is loaded during script parsing, i.e. is loaded with the script and "
+"[method preload] effectively acts as a reference to that resource. Note that "
+"the method requires a constant path. If you want to load a resource from a "
+"dynamic/variable path, use [method load].\n"
"[b]Note:[/b] Resource paths can be obtained by right clicking on a resource "
-"in the Assets Panel and choosing \"Copy Path\".\n"
+"in the Assets Panel and choosing \"Copy Path\" or by dragging the file from "
+"the FileSystem dock into the script.\n"
"[codeblock]\n"
-"# Load a scene called main located in the root of the project directory.\n"
-"var main = preload(\"res://main.tscn\")\n"
+"# Instance a scene.\n"
+"var diamond = preload(\"res://diamond.tscn\").instance()\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:812
+#: modules/gdscript/doc_classes/@GDScript.xml:825
msgid ""
"Converts one or more arguments to strings in the best way possible and "
"prints them to the console.\n"
@@ -851,11 +1006,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:823
+#: modules/gdscript/doc_classes/@GDScript.xml:836
msgid "Like [method print], but prints only when used in debug mode."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:830
+#: modules/gdscript/doc_classes/@GDScript.xml:843
msgid ""
"Prints a stack track at code location, only works when running with debugger "
"turned on.\n"
@@ -865,7 +1020,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:841
+#: modules/gdscript/doc_classes/@GDScript.xml:854
msgid ""
"Prints one or more arguments to strings in the best way possible to standard "
"error line.\n"
@@ -874,7 +1029,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:851
+#: modules/gdscript/doc_classes/@GDScript.xml:864
msgid ""
"Prints one or more arguments to strings in the best way possible to console. "
"No newline is added at the end.\n"
@@ -888,7 +1043,7 @@ msgid ""
"method, such as [method print]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:864
+#: modules/gdscript/doc_classes/@GDScript.xml:877
msgid ""
"Prints one or more arguments to the console with a space between each "
"argument.\n"
@@ -897,7 +1052,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:874
+#: modules/gdscript/doc_classes/@GDScript.xml:887
msgid ""
"Prints one or more arguments to the console with a tab between each "
"argument.\n"
@@ -906,7 +1061,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:886
+#: modules/gdscript/doc_classes/@GDScript.xml:899
msgid ""
"Pushes an error message to Godot's built-in debugger and to the OS "
"terminal.\n"
@@ -916,7 +1071,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:898
+#: modules/gdscript/doc_classes/@GDScript.xml:911
msgid ""
"Pushes a warning message to Godot's built-in debugger and to the OS "
"terminal.\n"
@@ -926,15 +1081,15 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:910
+#: modules/gdscript/doc_classes/@GDScript.xml:923
msgid ""
-"Converts from radians to degrees.\n"
+"Converts an angle expressed in radians to degrees.\n"
"[codeblock]\n"
"rad2deg(0.523599) # Returns 30\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:924
+#: modules/gdscript/doc_classes/@GDScript.xml:937
msgid ""
"Random range, any floating point value between [code]from[/code] and "
"[code]to[/code].\n"
@@ -943,7 +1098,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:936
+#: modules/gdscript/doc_classes/@GDScript.xml:949
msgid ""
"Random from seed: pass a [code]seed[/code], and an array with both number "
"and new seed is returned. \"Seed\" here refers to the internal state of the "
@@ -951,7 +1106,7 @@ msgid ""
"implementation is 64 bits."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:943
+#: modules/gdscript/doc_classes/@GDScript.xml:956
msgid ""
"Returns a random floating point value on the interval [code][0, 1][/code].\n"
"[codeblock]\n"
@@ -959,7 +1114,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:953
+#: modules/gdscript/doc_classes/@GDScript.xml:966
msgid ""
"Returns a random unsigned 32 bit integer. Use remainder to obtain a random "
"value in the interval [code][0, N - 1][/code] (where N is smaller than "
@@ -972,7 +1127,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:966
+#: modules/gdscript/doc_classes/@GDScript.xml:979
msgid ""
"Randomizes the seed (or the internal state) of the random number generator. "
"Current implementation reseeds using a number based on time.\n"
@@ -982,7 +1137,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:977
+#: modules/gdscript/doc_classes/@GDScript.xml:990
msgid ""
"Returns an array with the given range. Range can be 1 argument N (0 to N-1), "
"two arguments (initial, final-1) or three arguments (initial, final-1, "
@@ -1012,7 +1167,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1017
+#: modules/gdscript/doc_classes/@GDScript.xml:1030
msgid ""
"Maps a [code]value[/code] from range [code][istart, istop][/code] to [code]"
"[ostart, ostop][/code].\n"
@@ -1021,16 +1176,21 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1029
+#: modules/gdscript/doc_classes/@GDScript.xml:1042
+#, fuzzy
msgid ""
-"Returns the integral value that is nearest to [code]s[/code], with halfway "
-"cases rounded away from zero.\n"
+"Rounds [code]s[/code] to the nearest whole number, with halfway cases "
+"rounded away from zero.\n"
"[codeblock]\n"
"round(2.6) # Returns 3\n"
"[/codeblock]"
msgstr ""
+"Liefert das Ergebnis von [code]x[/code] hoch [code]y[/code].\n"
+"[codeblock]\n"
+"pow(2, 5) # liefert 32\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:1041
+#: modules/gdscript/doc_classes/@GDScript.xml:1054
msgid ""
"Sets seed for the random number generator.\n"
"[codeblock]\n"
@@ -1039,7 +1199,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1054
+#: modules/gdscript/doc_classes/@GDScript.xml:1067
msgid ""
"Returns the sign of [code]s[/code]: -1 or 1. Returns 0 if [code]s[/code] is "
"0.\n"
@@ -1050,7 +1210,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1068
+#: modules/gdscript/doc_classes/@GDScript.xml:1081
msgid ""
"Returns the sine of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -1058,7 +1218,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1080
+#: modules/gdscript/doc_classes/@GDScript.xml:1093
msgid ""
"Returns the hyperbolic sine of [code]s[/code].\n"
"[codeblock]\n"
@@ -1067,27 +1227,37 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1097
+#: modules/gdscript/doc_classes/@GDScript.xml:1110
msgid ""
-"Returns a number smoothly interpolated between the [code]from[/code] and "
-"[code]to[/code], based on the [code]weight[/code]. Similar to [method lerp], "
-"but interpolates faster at the beginning and slower at the end.\n"
+"Returns the result of smoothly interpolating the value of [code]s[/code] "
+"between [code]0[/code] and [code]1[/code], based on the where [code]s[/code] "
+"lies with respect to the edges [code]from[/code] and [code]to[/code].\n"
+"The return value is [code]0[/code] if [code]s <= from[/code], and [code]1[/"
+"code] if [code]s >= to[/code]. If [code]s[/code] lies between [code]from[/"
+"code] and [code]to[/code], the returned value follows an S-shaped curve that "
+"maps [code]s[/code] between [code]0[/code] and [code]1[/code].\n"
+"This S-shaped curve is the cubic Hermite interpolator, given by [code]f(s) = "
+"3*s^2 - 2*s^3[/code].\n"
"[codeblock]\n"
-"smoothstep(0, 2, 0.5) # Returns 0.15\n"
+"smoothstep(0, 2, -5.0) # Returns 0.0\n"
+"smoothstep(0, 2, 0.5) # Returns 0.15625\n"
"smoothstep(0, 2, 1.0) # Returns 0.5\n"
"smoothstep(0, 2, 2.0) # Returns 1.0\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1111
+#: modules/gdscript/doc_classes/@GDScript.xml:1127
msgid ""
-"Returns the square root of [code]s[/code].\n"
+"Returns the square root of [code]s[/code], where [code]s[/code] is a non-"
+"negative number.\n"
"[codeblock]\n"
"sqrt(9) # Returns 3\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b]Negative values of [code]s[/code] return NaN. If you need "
+"negative inputs, use [code]System.Numerics.Complex[/code] in C#."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1123
+#: modules/gdscript/doc_classes/@GDScript.xml:1140
msgid ""
"Returns the position of the first non-zero digit, after the decimal point. "
"Note that the maximum return value is 10, which is a design decision in the "
@@ -1102,7 +1272,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1142
+#: modules/gdscript/doc_classes/@GDScript.xml:1159
msgid ""
"Snaps float value [code]s[/code] to a given [code]step[/code]. This can also "
"be used to round a floating point number to an arbitrary number of "
@@ -1113,7 +1283,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1153
+#: modules/gdscript/doc_classes/@GDScript.xml:1170
msgid ""
"Converts one or more arguments to string in the best way possible.\n"
"[codeblock]\n"
@@ -1124,7 +1294,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1168
+#: modules/gdscript/doc_classes/@GDScript.xml:1185
msgid ""
"Converts a formatted string that was returned by [method var2str] to the "
"original value.\n"
@@ -1135,7 +1305,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1182
+#: modules/gdscript/doc_classes/@GDScript.xml:1199
msgid ""
"Returns the tangent of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -1143,7 +1313,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1194
+#: modules/gdscript/doc_classes/@GDScript.xml:1211
msgid ""
"Returns the hyperbolic tangent of [code]s[/code].\n"
"[codeblock]\n"
@@ -1152,18 +1322,25 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1207
+#: modules/gdscript/doc_classes/@GDScript.xml:1224
msgid ""
-"Converts a Variant [code]var[/code] to JSON text and return the result. "
+"Converts a [Variant] [code]var[/code] to JSON text and return the result. "
"Useful for serializing data to store or send over the network.\n"
"[codeblock]\n"
+"# Both numbers below are integers.\n"
"a = { \"a\": 1, \"b\": 2 }\n"
"b = to_json(a)\n"
"print(b) # {\"a\":1, \"b\":2}\n"
-"[/codeblock]"
+"# Both numbers above are floats, even if they display without any decimal "
+"places.\n"
+"[/codeblock]\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, converting a [Variant] to JSON "
+"text will convert all numerical values to [float] types.\n"
+"See also [JSON] for an alternative way to convert a [Variant] to JSON text."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1221
+#: modules/gdscript/doc_classes/@GDScript.xml:1242
msgid ""
"Returns whether the given class exists in [ClassDB].\n"
"[codeblock]\n"
@@ -1172,7 +1349,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1234
+#: modules/gdscript/doc_classes/@GDScript.xml:1255
msgid ""
"Returns the internal type of the given Variant object, using the [enum "
"Variant.Type] values.\n"
@@ -1185,7 +1362,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1250
+#: modules/gdscript/doc_classes/@GDScript.xml:1271
msgid ""
"Checks that [code]json[/code] is valid JSON data. Returns an empty string if "
"valid, or an error message otherwise.\n"
@@ -1193,20 +1370,20 @@ msgid ""
"j = to_json([1, 2, 3])\n"
"v = validate_json(j)\n"
"if not v:\n"
-" print(\"valid\")\n"
+" print(\"Valid JSON.\")\n"
"else:\n"
-" prints(\"invalid\", v)\n"
+" push_error(\"Invalid JSON: \" + v)\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1269
+#: modules/gdscript/doc_classes/@GDScript.xml:1290
msgid ""
"Encodes a variable value to a byte array. When [code]full_objects[/code] is "
"[code]true[/code] encoding objects is allowed (and can potentially include "
"code)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1278
+#: modules/gdscript/doc_classes/@GDScript.xml:1299
msgid ""
"Converts a Variant [code]var[/code] to a formatted string that can later be "
"parsed using [method str2var].\n"
@@ -1223,7 +1400,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1298
+#: modules/gdscript/doc_classes/@GDScript.xml:1319
msgid ""
"Returns a weak reference to an object.\n"
"A weak reference to an object is not enough to keep the object alive: when "
@@ -1233,135 +1410,67 @@ msgid ""
"reference may return the object even if there are no strong references to it."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1312
+#: modules/gdscript/doc_classes/@GDScript.xml:1333
msgid ""
"Wraps float [code]value[/code] between [code]min[/code] and [code]max[/"
"code].\n"
"Usable for creating loop-alike behavior or infinite surfaces.\n"
"[codeblock]\n"
-"# a is 0.5\n"
-"a = wrapf(10.5, 0.0, 10.0)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# a is 9.5\n"
-"a = wrapf(-0.5, 0.0, 10.0)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# Infinite loop between 0.0 and 0.99\n"
-"f = wrapf(f + 0.1, 0.0, 1.0)\n"
+"# Infinite loop between 5.0 and 9.9\n"
+"value = wrapf(value + 0.1, 5.0, 10.0)\n"
"[/codeblock]\n"
"[codeblock]\n"
"# Infinite rotation (in radians)\n"
"angle = wrapf(angle + 0.1, 0.0, TAU)\n"
"[/codeblock]\n"
-"[b]Note:[/b] If you just want to wrap between 0.0 and [code]n[/code] (where "
-"[code]n[/code] is a positive floating-point value), it is better for "
-"performance to use the [method fmod] method like [code]fmod(number, n)[/"
-"code].\n"
-"[code]wrapf[/code] is more flexible than using the [method fmod] approach by "
-"giving the user a simple control over the minimum value. It also fully "
-"supports negative numbers, e.g.\n"
"[codeblock]\n"
"# Infinite rotation (in radians)\n"
"angle = wrapf(angle + 0.1, -PI, PI)\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] If [code]min[/code] is [code]0[/code], this is equivalent to "
+"[method fposmod], so prefer using that instead.\n"
+"[code]wrapf[/code] is more flexible than using the [method fposmod] approach "
+"by giving the user control over the minimum value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1348
+#: modules/gdscript/doc_classes/@GDScript.xml:1361
msgid ""
"Wraps integer [code]value[/code] between [code]min[/code] and [code]max[/"
"code].\n"
"Usable for creating loop-alike behavior or infinite surfaces.\n"
"[codeblock]\n"
-"# a is 0\n"
-"a = wrapi(10, 0, 10)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# a is 9\n"
-"a = wrapi(-1, 0, 10)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# Infinite loop between 0 and 9\n"
-"frame = wrapi(frame + 1, 0, 10)\n"
+"# Infinite loop between 5 and 9\n"
+"frame = wrapi(frame + 1, 5, 10)\n"
"[/codeblock]\n"
-"[b]Note:[/b] If you just want to wrap between 0 and [code]n[/code] (where "
-"[code]n[/code] is a positive integer value), it is better for performance to "
-"use the modulo operator like [code]number % n[/code].\n"
-"[code]wrapi[/code] is more flexible than using the modulo approach by giving "
-"the user a simple control over the minimum value. It also fully supports "
-"negative numbers, e.g.\n"
"[codeblock]\n"
"# result is -2\n"
"var result = wrapi(-6, -5, -1)\n"
-"[/codeblock]"
-msgstr ""
-
-#: modules/gdscript/doc_classes/@GDScript.xml:1378
-msgid ""
-"Stops the function execution and returns the current suspended state to the "
-"calling function.\n"
-"From the caller, call [method GDScriptFunctionState.resume] on the state to "
-"resume execution. This invalidates the state. Within the resumed function, "
-"[code]yield()[/code] returns whatever was passed to the [code]resume()[/"
-"code] function call.\n"
-"If passed an object and a signal, the execution is resumed when the object "
-"emits the given signal. In this case, [code]yield()[/code] returns the "
-"argument passed to [code]emit_signal()[/code] if the signal takes only one "
-"argument, or an array containing all the arguments passed to "
-"[code]emit_signal()[/code] if the signal takes multiple arguments.\n"
-"You can also use [code]yield[/code] to wait for a function to finish:\n"
-"[codeblock]\n"
-"func _ready():\n"
-" yield(countdown(), \"completed\") # waiting for the countdown() function "
-"to complete\n"
-" print('Ready')\n"
-"\n"
-"func countdown():\n"
-" yield(get_tree(), \"idle_frame\") # returns a GDScriptFunctionState "
-"object to _ready()\n"
-" print(3)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-" print(2)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-" print(1)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-"\n"
-"# prints:\n"
-"# 3\n"
-"# 2\n"
-"# 1\n"
-"# Ready\n"
"[/codeblock]\n"
-"When yielding on a function, the [code]completed[/code] signal will be "
-"emitted automatically when the function returns. It can, therefore, be used "
-"as the [code]signal[/code] parameter of the [code]yield[/code] method to "
-"resume.\n"
-"In order to yield on a function, the resulting function should also return a "
-"[code]GDScriptFunctionState[/code]. Notice [code]yield(get_tree(), "
-"\"idle_frame\")[/code] from the above example."
+"[b]Note:[/b] If [code]min[/code] is [code]0[/code], this is equivalent to "
+"[method posmod], so prefer using that instead.\n"
+"[code]wrapi[/code] is more flexible than using the [method posmod] approach "
+"by giving the user control over the minimum value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1409
+#: modules/gdscript/doc_classes/@GDScript.xml:1378
msgid ""
"Constant that represents how many times the diameter of a circle fits around "
-"its perimeter."
+"its perimeter. This is equivalent to [code]TAU / 2[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1412
-msgid "The circle constant, the circumference of the unit circle."
+#: modules/gdscript/doc_classes/@GDScript.xml:1381
+msgid "The circle constant, the circumference of the unit circle in radians."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1415
-msgid "A positive infinity. (For negative infinity, use -INF)."
+#: modules/gdscript/doc_classes/@GDScript.xml:1384
+msgid "Positive infinity. For negative infinity, use -INF."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1418
+#: modules/gdscript/doc_classes/@GDScript.xml:1387
msgid ""
-"Macro constant that expands to an expression of type float that represents a "
-"NaN.\n"
-"The NaN values are used to identify undefined or non-representable values "
-"for floating-point elements, such as the square root of negative numbers or "
-"the result of 0/0."
+"\"Not a Number\", an invalid value. [code]NaN[/code] has special properties, "
+"including that it is not equal to itself. It is output by some invalid "
+"operations, such as dividing zero by zero."
msgstr ""
#: doc/classes/@GlobalScope.xml:4
@@ -1511,19 +1620,19 @@ msgstr ""
#: doc/classes/@GlobalScope.xml:119
msgid "Top-left corner."
-msgstr ""
+msgstr "obere linke Ecke."
#: doc/classes/@GlobalScope.xml:122
msgid "Top-right corner."
-msgstr ""
+msgstr "obere rechte Ecke."
#: doc/classes/@GlobalScope.xml:125
msgid "Bottom-right corner."
-msgstr ""
+msgstr "untere rechte Ecke."
#: doc/classes/@GlobalScope.xml:128
msgid "Bottom-left corner."
-msgstr ""
+msgstr "untere linke Ecke."
#: doc/classes/@GlobalScope.xml:131
msgid ""
@@ -1567,11 +1676,11 @@ msgstr ""
#: doc/classes/@GlobalScope.xml:158
msgid "Escape key."
-msgstr ""
+msgstr "Escape Taste."
#: doc/classes/@GlobalScope.xml:161
msgid "Tab key."
-msgstr ""
+msgstr "Tabulator Taste."
#: doc/classes/@GlobalScope.xml:164
msgid "Shift + Tab key."
@@ -1579,7 +1688,7 @@ msgstr ""
#: doc/classes/@GlobalScope.xml:167
msgid "Backspace key."
-msgstr ""
+msgstr "Backspace Taste."
#: doc/classes/@GlobalScope.xml:170
msgid "Return key (on the main keyboard)."
@@ -1591,15 +1700,15 @@ msgstr ""
#: doc/classes/@GlobalScope.xml:176
msgid "Insert key."
-msgstr ""
+msgstr "Einfügen Taste."
#: doc/classes/@GlobalScope.xml:179
msgid "Delete key."
-msgstr ""
+msgstr "Löschen Taste."
#: doc/classes/@GlobalScope.xml:182
msgid "Pause key."
-msgstr ""
+msgstr "Pausen Taste."
#: doc/classes/@GlobalScope.xml:185
msgid "Print Screen key."
@@ -1615,43 +1724,43 @@ msgstr ""
#: doc/classes/@GlobalScope.xml:194
msgid "Home key."
-msgstr ""
+msgstr "Home Taste."
#: doc/classes/@GlobalScope.xml:197
msgid "End key."
-msgstr ""
+msgstr "Ende Taste."
#: doc/classes/@GlobalScope.xml:200
msgid "Left arrow key."
-msgstr ""
+msgstr "linke Pfeiltaste."
#: doc/classes/@GlobalScope.xml:203
msgid "Up arrow key."
-msgstr ""
+msgstr "obere Pfeiltaste."
#: doc/classes/@GlobalScope.xml:206
msgid "Right arrow key."
-msgstr ""
+msgstr "rechte Pfeiltaste."
#: doc/classes/@GlobalScope.xml:209
msgid "Down arrow key."
-msgstr ""
+msgstr "untere Pfeiltaste."
#: doc/classes/@GlobalScope.xml:212
msgid "Page Up key."
-msgstr ""
+msgstr "Bild hoch Taste."
#: doc/classes/@GlobalScope.xml:215
msgid "Page Down key."
-msgstr ""
+msgstr "Bild runter Taste."
#: doc/classes/@GlobalScope.xml:218
msgid "Shift key."
-msgstr ""
+msgstr "Shift Taste."
#: doc/classes/@GlobalScope.xml:221
msgid "Control key."
-msgstr ""
+msgstr "Control Taste."
#: doc/classes/@GlobalScope.xml:224
msgid "Meta key."
@@ -1659,15 +1768,15 @@ msgstr ""
#: doc/classes/@GlobalScope.xml:227
msgid "Alt key."
-msgstr ""
+msgstr "Alt Taste."
#: doc/classes/@GlobalScope.xml:230
msgid "Caps Lock key."
-msgstr ""
+msgstr "Feststelltaste."
#: doc/classes/@GlobalScope.xml:233
msgid "Num Lock key."
-msgstr ""
+msgstr "Num Lock Taste."
#: doc/classes/@GlobalScope.xml:236
msgid "Scroll Lock key."
@@ -1675,67 +1784,67 @@ msgstr ""
#: doc/classes/@GlobalScope.xml:239
msgid "F1 key."
-msgstr ""
+msgstr "F1 Taste."
#: doc/classes/@GlobalScope.xml:242
msgid "F2 key."
-msgstr ""
+msgstr "F2 Taste."
#: doc/classes/@GlobalScope.xml:245
msgid "F3 key."
-msgstr ""
+msgstr "F3 Taste."
#: doc/classes/@GlobalScope.xml:248
msgid "F4 key."
-msgstr ""
+msgstr "F4 Taste."
#: doc/classes/@GlobalScope.xml:251
msgid "F5 key."
-msgstr ""
+msgstr "F5 Taste."
#: doc/classes/@GlobalScope.xml:254
msgid "F6 key."
-msgstr ""
+msgstr "F6 Taste."
#: doc/classes/@GlobalScope.xml:257
msgid "F7 key."
-msgstr ""
+msgstr "F7 Taste."
#: doc/classes/@GlobalScope.xml:260
msgid "F8 key."
-msgstr ""
+msgstr "F8 Taste."
#: doc/classes/@GlobalScope.xml:263
msgid "F9 key."
-msgstr ""
+msgstr "F9 Taste."
#: doc/classes/@GlobalScope.xml:266
msgid "F10 key."
-msgstr ""
+msgstr "F10 Taste."
#: doc/classes/@GlobalScope.xml:269
msgid "F11 key."
-msgstr ""
+msgstr "F11 Taste."
#: doc/classes/@GlobalScope.xml:272
msgid "F12 key."
-msgstr ""
+msgstr "F12 Taste."
#: doc/classes/@GlobalScope.xml:275
msgid "F13 key."
-msgstr ""
+msgstr "F13 Taste."
#: doc/classes/@GlobalScope.xml:278
msgid "F14 key."
-msgstr ""
+msgstr "F14 Taste."
#: doc/classes/@GlobalScope.xml:281
msgid "F15 key."
-msgstr ""
+msgstr "F15 Taste."
#: doc/classes/@GlobalScope.xml:284
msgid "F16 key."
-msgstr ""
+msgstr "F16 Taste."
#: doc/classes/@GlobalScope.xml:287
msgid "Multiply (*) key on the numeric keypad."
@@ -1819,7 +1928,7 @@ msgstr ""
#: doc/classes/@GlobalScope.xml:347
msgid "Help key."
-msgstr ""
+msgstr "Hilfe Taste."
#: doc/classes/@GlobalScope.xml:350
msgid "Left Direction key."
@@ -1831,19 +1940,19 @@ msgstr ""
#: doc/classes/@GlobalScope.xml:356
msgid "Back key."
-msgstr ""
+msgstr "Zurück Taste."
#: doc/classes/@GlobalScope.xml:359
msgid "Forward key."
-msgstr ""
+msgstr "Forwärts Taste."
#: doc/classes/@GlobalScope.xml:362
msgid "Stop key."
-msgstr ""
+msgstr "Stop Taste."
#: doc/classes/@GlobalScope.xml:365
msgid "Refresh key."
-msgstr ""
+msgstr "Refresh Taste."
#: doc/classes/@GlobalScope.xml:368
msgid "Volume down key."
@@ -1903,15 +2012,15 @@ msgstr ""
#: doc/classes/@GlobalScope.xml:410
msgid "Favorites key."
-msgstr ""
+msgstr "Favoriten Taste."
#: doc/classes/@GlobalScope.xml:413
msgid "Search key."
-msgstr ""
+msgstr "Suchen Taste."
#: doc/classes/@GlobalScope.xml:416
msgid "Standby key."
-msgstr ""
+msgstr "Standby TAste."
#: doc/classes/@GlobalScope.xml:419
msgid "Open URL / Launch Browser key."
@@ -1995,259 +2104,259 @@ msgstr ""
#: doc/classes/@GlobalScope.xml:479
msgid "Space key."
-msgstr ""
+msgstr "Leertaste."
#: doc/classes/@GlobalScope.xml:482
msgid "! key."
-msgstr ""
+msgstr "! Taste."
#: doc/classes/@GlobalScope.xml:485
msgid "\" key."
-msgstr ""
+msgstr "\" Taste."
#: doc/classes/@GlobalScope.xml:488
msgid "# key."
-msgstr ""
+msgstr "# Taste."
#: doc/classes/@GlobalScope.xml:491
msgid "$ key."
-msgstr ""
+msgstr "$ Taste."
#: doc/classes/@GlobalScope.xml:494
msgid "% key."
-msgstr ""
+msgstr "% Taste."
#: doc/classes/@GlobalScope.xml:497
msgid "& key."
-msgstr ""
+msgstr "& Taste."
#: doc/classes/@GlobalScope.xml:500
msgid "' key."
-msgstr ""
+msgstr "' Taste."
#: doc/classes/@GlobalScope.xml:503
msgid "( key."
-msgstr ""
+msgstr "( Taste."
#: doc/classes/@GlobalScope.xml:506
msgid ") key."
-msgstr ""
+msgstr ") Taste."
#: doc/classes/@GlobalScope.xml:509
msgid "* key."
-msgstr ""
+msgstr "* Taste."
#: doc/classes/@GlobalScope.xml:512
msgid "+ key."
-msgstr ""
+msgstr "+ Taste."
#: doc/classes/@GlobalScope.xml:515
msgid ", key."
-msgstr ""
+msgstr ", Taste."
#: doc/classes/@GlobalScope.xml:518
msgid "- key."
-msgstr ""
+msgstr "- Taste."
#: doc/classes/@GlobalScope.xml:521
msgid ". key."
-msgstr ""
+msgstr ". Taste."
#: doc/classes/@GlobalScope.xml:524
msgid "/ key."
-msgstr ""
+msgstr "/ Taste."
#: doc/classes/@GlobalScope.xml:527
msgid "Number 0."
-msgstr ""
+msgstr "Nummer 0."
#: doc/classes/@GlobalScope.xml:530
msgid "Number 1."
-msgstr ""
+msgstr "Nummer 1."
#: doc/classes/@GlobalScope.xml:533
msgid "Number 2."
-msgstr ""
+msgstr "Nummer 2."
#: doc/classes/@GlobalScope.xml:536
msgid "Number 3."
-msgstr ""
+msgstr "Nummer 3."
#: doc/classes/@GlobalScope.xml:539
msgid "Number 4."
-msgstr ""
+msgstr "Nummer 4."
#: doc/classes/@GlobalScope.xml:542
msgid "Number 5."
-msgstr ""
+msgstr "Nummer 5."
#: doc/classes/@GlobalScope.xml:545
msgid "Number 6."
-msgstr ""
+msgstr "Nummer 6."
#: doc/classes/@GlobalScope.xml:548
msgid "Number 7."
-msgstr ""
+msgstr "Nummer 7."
#: doc/classes/@GlobalScope.xml:551
msgid "Number 8."
-msgstr ""
+msgstr "Nummer 8."
#: doc/classes/@GlobalScope.xml:554
msgid "Number 9."
-msgstr ""
+msgstr "Nummer 9."
#: doc/classes/@GlobalScope.xml:557
msgid ": key."
-msgstr ""
+msgstr ": Taste."
#: doc/classes/@GlobalScope.xml:560
msgid "; key."
-msgstr ""
+msgstr "; Taste."
#: doc/classes/@GlobalScope.xml:563
msgid "< key."
-msgstr ""
+msgstr "< Taste."
#: doc/classes/@GlobalScope.xml:566
msgid "= key."
-msgstr ""
+msgstr "= Taste."
#: doc/classes/@GlobalScope.xml:569
msgid "> key."
-msgstr ""
+msgstr "> Taste."
#: doc/classes/@GlobalScope.xml:572
msgid "? key."
-msgstr ""
+msgstr "? Taste."
#: doc/classes/@GlobalScope.xml:575
msgid "@ key."
-msgstr ""
+msgstr "@ Taste."
#: doc/classes/@GlobalScope.xml:578
msgid "A key."
-msgstr ""
+msgstr "A Taste."
#: doc/classes/@GlobalScope.xml:581
msgid "B key."
-msgstr ""
+msgstr "B Taste."
#: doc/classes/@GlobalScope.xml:584
msgid "C key."
-msgstr ""
+msgstr "C Taste."
#: doc/classes/@GlobalScope.xml:587
msgid "D key."
-msgstr ""
+msgstr "D Taste."
#: doc/classes/@GlobalScope.xml:590
msgid "E key."
-msgstr ""
+msgstr "E Taste."
#: doc/classes/@GlobalScope.xml:593
msgid "F key."
-msgstr ""
+msgstr "F Taste."
#: doc/classes/@GlobalScope.xml:596
msgid "G key."
-msgstr ""
+msgstr "G Taste."
#: doc/classes/@GlobalScope.xml:599
msgid "H key."
-msgstr ""
+msgstr "H Taste."
#: doc/classes/@GlobalScope.xml:602
msgid "I key."
-msgstr ""
+msgstr "I Taste."
#: doc/classes/@GlobalScope.xml:605
msgid "J key."
-msgstr ""
+msgstr "J Taste."
#: doc/classes/@GlobalScope.xml:608
msgid "K key."
-msgstr ""
+msgstr "K Taste."
#: doc/classes/@GlobalScope.xml:611
msgid "L key."
-msgstr ""
+msgstr "L Taste."
#: doc/classes/@GlobalScope.xml:614
msgid "M key."
-msgstr ""
+msgstr "M Taste."
#: doc/classes/@GlobalScope.xml:617
msgid "N key."
-msgstr ""
+msgstr "N Taste."
#: doc/classes/@GlobalScope.xml:620
msgid "O key."
-msgstr ""
+msgstr "O Taste."
#: doc/classes/@GlobalScope.xml:623
msgid "P key."
-msgstr ""
+msgstr "P Taste."
#: doc/classes/@GlobalScope.xml:626
msgid "Q key."
-msgstr ""
+msgstr "Q Taste."
#: doc/classes/@GlobalScope.xml:629
msgid "R key."
-msgstr ""
+msgstr "R Taste."
#: doc/classes/@GlobalScope.xml:632
msgid "S key."
-msgstr ""
+msgstr "S Taste."
#: doc/classes/@GlobalScope.xml:635
msgid "T key."
-msgstr ""
+msgstr "T Taste."
#: doc/classes/@GlobalScope.xml:638
msgid "U key."
-msgstr ""
+msgstr "U Taste."
#: doc/classes/@GlobalScope.xml:641
msgid "V key."
-msgstr ""
+msgstr "V Taste."
#: doc/classes/@GlobalScope.xml:644
msgid "W key."
-msgstr ""
+msgstr "W Taste."
#: doc/classes/@GlobalScope.xml:647
msgid "X key."
-msgstr ""
+msgstr "X Taste."
#: doc/classes/@GlobalScope.xml:650
msgid "Y key."
-msgstr ""
+msgstr "Y Taste."
#: doc/classes/@GlobalScope.xml:653
msgid "Z key."
-msgstr ""
+msgstr "Z Taste."
#: doc/classes/@GlobalScope.xml:656
msgid "[ key."
-msgstr ""
+msgstr "[ Taste."
#: doc/classes/@GlobalScope.xml:659
msgid "\\ key."
-msgstr ""
+msgstr "\\ Taste."
#: doc/classes/@GlobalScope.xml:662
msgid "] key."
-msgstr ""
+msgstr "] Taste."
#: doc/classes/@GlobalScope.xml:665
msgid "^ key."
-msgstr ""
+msgstr "^ Taste."
#: doc/classes/@GlobalScope.xml:668
msgid "_ key."
-msgstr ""
+msgstr "_ Taste."
#: doc/classes/@GlobalScope.xml:671
msgid "` key."
@@ -2255,19 +2364,19 @@ msgstr ""
#: doc/classes/@GlobalScope.xml:674
msgid "{ key."
-msgstr ""
+msgstr "{ Taste."
#: doc/classes/@GlobalScope.xml:677
msgid "| key."
-msgstr ""
+msgstr "| Taste."
#: doc/classes/@GlobalScope.xml:680
msgid "} key."
-msgstr ""
+msgstr "} Taste."
#: doc/classes/@GlobalScope.xml:683
msgid "~ key."
-msgstr ""
+msgstr "~ Taste."
#: doc/classes/@GlobalScope.xml:686
msgid "Non-breakable space key."
@@ -2523,7 +2632,7 @@ msgstr ""
#: doc/classes/@GlobalScope.xml:875
msgid "ß key."
-msgstr ""
+msgstr "ß Taste."
#: doc/classes/@GlobalScope.xml:878
msgid "÷ key."
@@ -2922,15 +3031,15 @@ msgstr ""
#: doc/classes/@GlobalScope.xml:1169
msgid "Unavailable error."
-msgstr ""
+msgstr "nicht vorhanden Fehler."
#: doc/classes/@GlobalScope.xml:1172
msgid "Unconfigured error."
-msgstr ""
+msgstr "nicht konfiguriert Fehler."
#: doc/classes/@GlobalScope.xml:1175
msgid "Unauthorized error."
-msgstr ""
+msgstr "nicht autorisiert Fehler."
#: doc/classes/@GlobalScope.xml:1178
msgid "Parameter range error."
@@ -3006,11 +3115,11 @@ msgstr ""
#: doc/classes/@GlobalScope.xml:1232
msgid "Locked error."
-msgstr ""
+msgstr "geblockt Fehler."
#: doc/classes/@GlobalScope.xml:1235
msgid "Timeout error."
-msgstr ""
+msgstr "Timeout Fehler."
#: doc/classes/@GlobalScope.xml:1238
msgid "Can't connect error."
@@ -3022,7 +3131,7 @@ msgstr ""
#: doc/classes/@GlobalScope.xml:1244
msgid "Connection error."
-msgstr ""
+msgstr "Verbindungs-Fehler."
#: doc/classes/@GlobalScope.xml:1247
msgid "Can't acquire resource error."
@@ -3086,11 +3195,11 @@ msgstr ""
#: doc/classes/@GlobalScope.xml:1292
msgid "Parse error."
-msgstr ""
+msgstr "Ãœbersetzungs-Fehler."
#: doc/classes/@GlobalScope.xml:1295
msgid "Busy error."
-msgstr ""
+msgstr "besetzt (busy) Fehler."
#: doc/classes/@GlobalScope.xml:1298
msgid "Skip error."
@@ -3098,11 +3207,11 @@ msgstr ""
#: doc/classes/@GlobalScope.xml:1301
msgid "Help error."
-msgstr ""
+msgstr "Hilfe Fehler."
#: doc/classes/@GlobalScope.xml:1304
msgid "Bug error."
-msgstr ""
+msgstr "Fehler! Fehler."
#: doc/classes/@GlobalScope.xml:1307
msgid ""
@@ -3597,130 +3706,141 @@ msgid ""
msgstr ""
#: doc/classes/AABB.xml:10 doc/classes/Plane.xml:10 doc/classes/Rect2.xml:11
-#: doc/classes/Rect2i.xml:11 doc/classes/Transform.xml:10
+#: doc/classes/Rect2i.xml:11 doc/classes/Transform.xml:11
#: doc/classes/Vector2.xml:12 doc/classes/Vector2i.xml:12
#: doc/classes/Vector3.xml:12 doc/classes/Vector3i.xml:12
msgid "https://docs.godotengine.org/en/latest/tutorials/math/index.html"
msgstr "https://docs.godotengine.org/de/latest/tutorials/math/index.html"
#: doc/classes/AABB.xml:21
-msgid "Optional constructor, accepts position and size."
+msgid "Constructs an [AABB] from a position and size."
+msgstr ""
+
+#: doc/classes/AABB.xml:28
+msgid ""
+"Returns an AABB with equivalent position and size, modified so that the most-"
+"negative corner is the origin and the size is positive."
msgstr ""
-#: doc/classes/AABB.xml:30
+#: doc/classes/AABB.xml:37
msgid ""
"Returns [code]true[/code] if this [AABB] completely encloses another one."
msgstr ""
-#: doc/classes/AABB.xml:39
+#: doc/classes/AABB.xml:46
msgid "Returns this [AABB] expanded to include a given point."
msgstr ""
-#: doc/classes/AABB.xml:46
+#: doc/classes/AABB.xml:53
msgid "Returns the volume of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:55
+#: doc/classes/AABB.xml:62
msgid "Gets the position of the 8 endpoints of the [AABB] in space."
msgstr ""
-#: doc/classes/AABB.xml:62
+#: doc/classes/AABB.xml:69
msgid "Returns the normalized longest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:69
+#: doc/classes/AABB.xml:76
msgid ""
"Returns the index of the longest axis of the [AABB] (according to "
"[Vector3]'s [code]AXIS_*[/code] constants)."
msgstr ""
-#: doc/classes/AABB.xml:76
+#: doc/classes/AABB.xml:83
msgid "Returns the scalar length of the longest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:83
+#: doc/classes/AABB.xml:90
msgid "Returns the normalized shortest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:90
+#: doc/classes/AABB.xml:97
msgid ""
"Returns the index of the shortest axis of the [AABB] (according to "
"[Vector3]::AXIS* enum)."
msgstr ""
-#: doc/classes/AABB.xml:97
+#: doc/classes/AABB.xml:104
msgid "Returns the scalar length of the shortest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:106
+#: doc/classes/AABB.xml:113
msgid ""
"Returns the support point in a given direction. This is useful for collision "
"detection algorithms."
msgstr ""
-#: doc/classes/AABB.xml:115
+#: doc/classes/AABB.xml:122
msgid ""
"Returns a copy of the [AABB] grown a given amount of units towards all the "
"sides."
msgstr ""
-#: doc/classes/AABB.xml:122
+#: doc/classes/AABB.xml:129
msgid "Returns [code]true[/code] if the [AABB] is flat or empty."
msgstr ""
-#: doc/classes/AABB.xml:129
+#: doc/classes/AABB.xml:136
msgid "Returns [code]true[/code] if the [AABB] is empty."
msgstr ""
-#: doc/classes/AABB.xml:138
+#: doc/classes/AABB.xml:145
msgid "Returns [code]true[/code] if the [AABB] contains a point."
msgstr ""
-#: doc/classes/AABB.xml:147
+#: doc/classes/AABB.xml:154
msgid ""
"Returns the intersection between two [AABB]. An empty AABB (size 0,0,0) is "
"returned on failure."
msgstr ""
-#: doc/classes/AABB.xml:156
+#: doc/classes/AABB.xml:163
msgid "Returns [code]true[/code] if the [AABB] overlaps with another."
msgstr ""
-#: doc/classes/AABB.xml:165
+#: doc/classes/AABB.xml:172
msgid "Returns [code]true[/code] if the [AABB] is on both sides of a plane."
msgstr ""
-#: doc/classes/AABB.xml:176
+#: doc/classes/AABB.xml:183
msgid ""
"Returns [code]true[/code] if the [AABB] intersects the line segment between "
"[code]from[/code] and [code]to[/code]."
msgstr ""
-#: doc/classes/AABB.xml:185
+#: doc/classes/AABB.xml:192
msgid ""
"Returns [code]true[/code] if this [AABB] and [code]aabb[/code] are "
"approximately equal, by calling [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/AABB.xml:194
+#: doc/classes/AABB.xml:201
msgid ""
"Returns a larger [AABB] that contains both this [AABB] and [code]with[/code]."
msgstr ""
-#: doc/classes/AABB.xml:200
+#: doc/classes/AABB.xml:207 doc/classes/Rect2.xml:174
+#: doc/classes/Rect2i.xml:163
msgid ""
-"Ending corner. This is calculated as [code]position + size[/code]. Changing "
-"this property changes [member size] accordingly."
+"Ending corner. This is calculated as [code]position + size[/code]. Setting "
+"this value will change the size."
msgstr ""
-#: doc/classes/AABB.xml:203
-msgid "Beginning corner."
+#: doc/classes/AABB.xml:210 doc/classes/Rect2.xml:177
+#: doc/classes/Rect2i.xml:166
+msgid "Beginning corner. Typically has values lower than [member end]."
msgstr ""
-#: doc/classes/AABB.xml:206 doc/classes/Rect2.xml:180
+#: doc/classes/AABB.xml:213 doc/classes/Rect2.xml:180
#: doc/classes/Rect2i.xml:169
-msgid "Size from position to end."
+msgid ""
+"Size from [member position] to [member end]. Typically all components are "
+"positive.\n"
+"If the size is negative, you can use [method abs] to fix it."
msgstr ""
#: doc/classes/AcceptDialog.xml:4
@@ -3784,11 +3904,11 @@ msgstr ""
msgid "The text displayed by the dialog."
msgstr ""
-#: doc/classes/AcceptDialog.xml:82
+#: doc/classes/AcceptDialog.xml:83
msgid "Emitted when the dialog is accepted, i.e. the OK button is pressed."
msgstr ""
-#: doc/classes/AcceptDialog.xml:89
+#: doc/classes/AcceptDialog.xml:90
msgid "Emitted when a custom button is pressed. See [method add_button]."
msgstr ""
@@ -3841,7 +3961,7 @@ msgstr ""
#: doc/classes/AESContext.xml:54
msgid ""
"Get the current IV state for this context (IV gets updated when calling "
-"[method update]). You normally don't need this funciton.\n"
+"[method update]). You normally don't need this function.\n"
"Note: This function only makes sense when the context is started with "
"[constant MODE_CBC_ENCRYPT] or [constant MODE_CBC_DECRYPT]."
msgstr ""
@@ -3919,12 +4039,14 @@ msgid "If [code]true[/code], texture will be centered."
msgstr ""
#: doc/classes/AnimatedSprite2D.xml:46 doc/classes/Sprite2D.xml:41
-#: doc/classes/SpriteBase3D.xml:61 doc/classes/TextureRect.xml:18
+#: doc/classes/SpriteBase3D.xml:61 doc/classes/TextureButton.xml:19
+#: doc/classes/TextureRect.xml:18
msgid "If [code]true[/code], texture is flipped horizontally."
msgstr ""
#: doc/classes/AnimatedSprite2D.xml:49 doc/classes/Sprite2D.xml:44
-#: doc/classes/SpriteBase3D.xml:64 doc/classes/TextureRect.xml:21
+#: doc/classes/SpriteBase3D.xml:64 doc/classes/TextureButton.xml:22
+#: doc/classes/TextureRect.xml:21
msgid "If [code]true[/code], texture is flipped vertically."
msgstr ""
@@ -4091,10 +4213,10 @@ msgid ""
"[codeblock]\n"
"# This creates an animation that makes the node \"Enemy\" move to the right "
"by\n"
-"# 100 pixels in 1 second.\n"
+"# 100 pixels in 0.5 seconds.\n"
"var animation = Animation.new()\n"
"var track_index = animation.add_track(Animation.TYPE_VALUE)\n"
-"animation.track_set_path(track_index, \"Enemy:position.x\")\n"
+"animation.track_set_path(track_index, \"Enemy:position:x\")\n"
"animation.track_insert_key(track_index, 0.0, 0)\n"
"animation.track_insert_key(track_index, 0.5, 100)\n"
"[/codeblock]\n"
@@ -4106,7 +4228,7 @@ msgstr ""
#: doc/classes/Animation.xml:20 doc/classes/AnimationPlayer.xml:13
msgid "https://docs.godotengine.org/en/latest/tutorials/animation/index.html"
-msgstr ""
+msgstr "https://docs.godotengine.org/de/latest/tutorials/animation/index.html"
#: doc/classes/Animation.xml:31
msgid "Adds a track to the Animation."
@@ -4494,7 +4616,7 @@ msgstr ""
#: doc/classes/Animation.xml:727
msgid "Linear interpolation."
-msgstr ""
+msgstr "lineare Interpolation."
#: doc/classes/Animation.xml:730
msgid "Cubic interpolation."
@@ -4550,6 +4672,8 @@ msgid ""
"https://docs.godotengine.org/en/latest/tutorials/animation/animation_tree."
"html"
msgstr ""
+"https://docs.godotengine.org/de/latest/tutorials/animation/animation_tree."
+"html"
#: doc/classes/AnimationNode.xml:20
msgid ""
@@ -5368,6 +5492,8 @@ msgid ""
"https://docs.godotengine.org/en/latest/getting_started/step_by_step/"
"animations.html"
msgstr ""
+"https://docs.godotengine.org/de/latest/getting_started/step_by_step/"
+"animations.html"
#: doc/classes/AnimationPlayer.xml:24
msgid ""
@@ -5633,7 +5759,7 @@ msgstr ""
#: doc/classes/AnimationTree.xml:11
msgid "https://github.com/godotengine/tps-demo"
-msgstr ""
+msgstr "https://github.com/godotengine/tps-demo"
#: doc/classes/AnimationTree.xml:20
msgid "Manually advance the animations by the specified time (in seconds)."
@@ -5709,6 +5835,7 @@ msgstr ""
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/physics/using_area_2d.html"
msgstr ""
+"https://docs.godotengine.org/en/latest/tutorials/physics/using_area_2d.html"
#: doc/classes/Area2D.xml:19
msgid ""
@@ -6223,10 +6350,10 @@ msgstr ""
msgid ""
"Returns [code]true[/code] if the array contains the given value.\n"
"[codeblock]\n"
-"[\"inside\", 7].has(\"inside\") == true\n"
-"[\"inside\", 7].has(\"outside\") == false\n"
-"[\"inside\", 7].has(7) == true\n"
-"[\"inside\", 7].has(\"7\") == false\n"
+"print([\"inside\", 7].has(\"inside\")) # True\n"
+"print([\"inside\", 7].has(\"outside\")) # False\n"
+"print([\"inside\", 7].has(7)) # True\n"
+"print([\"inside\", 7].has(\"7\")) # False\n"
"[/codeblock]\n"
"[b]Note:[/b] This is equivalent to using the [code]in[/code] operator as "
"follows:\n"
@@ -6247,11 +6374,11 @@ msgid ""
"valid, or at the end of the array ([code]pos == size()[/code])."
msgstr ""
-#: doc/classes/Array.xml:265 doc/classes/PackedByteArray.xml:107
-#: doc/classes/PackedColorArray.xml:62 doc/classes/PackedFloat32Array.xml:63
-#: doc/classes/PackedFloat64Array.xml:63 doc/classes/PackedInt32Array.xml:63
-#: doc/classes/PackedInt64Array.xml:63 doc/classes/PackedStringArray.xml:62
-#: doc/classes/PackedVector2Array.xml:62 doc/classes/PackedVector3Array.xml:62
+#: doc/classes/Array.xml:265 doc/classes/PackedByteArray.xml:116
+#: doc/classes/PackedColorArray.xml:71 doc/classes/PackedFloat32Array.xml:72
+#: doc/classes/PackedFloat64Array.xml:72 doc/classes/PackedInt32Array.xml:72
+#: doc/classes/PackedInt64Array.xml:72 doc/classes/PackedStringArray.xml:71
+#: doc/classes/PackedVector2Array.xml:71 doc/classes/PackedVector3Array.xml:71
msgid "Reverses the order of the elements in the array."
msgstr "Kehrt die Reihenfolge der Elemente des Arrays um."
@@ -6281,8 +6408,8 @@ msgid ""
"code] if the array is empty."
msgstr ""
-#: doc/classes/Array.xml:302 doc/classes/PackedByteArray.xml:116
-#: doc/classes/PackedFloat32Array.xml:72 doc/classes/PackedFloat64Array.xml:72
+#: doc/classes/Array.xml:302 doc/classes/PackedByteArray.xml:125
+#: doc/classes/PackedFloat32Array.xml:81 doc/classes/PackedFloat64Array.xml:81
msgid "Appends an element at the end of the array."
msgstr ""
@@ -6290,11 +6417,11 @@ msgstr ""
msgid "Adds an element at the beginning of the array."
msgstr ""
-#: doc/classes/Array.xml:320 doc/classes/PackedByteArray.xml:125
-#: doc/classes/PackedColorArray.xml:80 doc/classes/PackedFloat32Array.xml:81
-#: doc/classes/PackedFloat64Array.xml:81 doc/classes/PackedInt32Array.xml:81
-#: doc/classes/PackedInt64Array.xml:81 doc/classes/PackedStringArray.xml:80
-#: doc/classes/PackedVector2Array.xml:80 doc/classes/PackedVector3Array.xml:80
+#: doc/classes/Array.xml:320 doc/classes/PackedByteArray.xml:134
+#: doc/classes/PackedColorArray.xml:89 doc/classes/PackedFloat32Array.xml:90
+#: doc/classes/PackedFloat64Array.xml:90 doc/classes/PackedInt32Array.xml:90
+#: doc/classes/PackedInt64Array.xml:90 doc/classes/PackedStringArray.xml:89
+#: doc/classes/PackedVector2Array.xml:89 doc/classes/PackedVector3Array.xml:89
msgid "Removes an element from the array by index."
msgstr "Entfernt das Element der Arrays dessen Position übergeben wurde."
@@ -6405,6 +6532,8 @@ msgid ""
"https://docs.godotengine.org/en/latest/tutorials/content/procedural_geometry/"
"arraymesh.html"
msgstr ""
+"https://docs.godotengine.org/en/latest/tutorials/content/procedural_geometry/"
+"arraymesh.html"
#: doc/classes/ArrayMesh.xml:38
msgid ""
@@ -6577,7 +6706,7 @@ msgid ""
msgstr ""
#: doc/classes/ArrayMesh.xml:235 doc/classes/Mesh.xml:210
-#: doc/classes/RenderingServer.xml:3115
+#: doc/classes/RenderingServer.xml:3111
msgid "Represents the size of the [enum ArrayType] enum."
msgstr ""
@@ -7606,6 +7735,8 @@ msgid ""
"https://docs.godotengine.org/en/latest/tutorials/audio/"
"recording_with_microphone.html"
msgstr ""
+"https://docs.godotengine.org/en/latest/tutorials/audio/"
+"recording_with_microphone.html"
#: doc/classes/AudioEffectRecord.xml:17
msgid "Returns the recorded sample."
@@ -7709,6 +7840,7 @@ msgstr ""
#: doc/classes/AudioServer.xml:10
msgid "https://docs.godotengine.org/en/latest/tutorials/audio/audio_buses.html"
msgstr ""
+"https://docs.godotengine.org/en/latest/tutorials/audio/audio_buses.html"
#: doc/classes/AudioServer.xml:19
msgid "Adds a bus at [code]at_position[/code]."
@@ -7907,19 +8039,19 @@ msgstr ""
#: doc/classes/AudioServer.xml:413
msgid "Two or fewer speakers were detected."
-msgstr ""
+msgstr "Zwei oder weniger Lautsprecher wurden erkannt."
#: doc/classes/AudioServer.xml:416
msgid "A 3.1 channel surround setup was detected."
-msgstr ""
+msgstr "Ein 3.1 Kanal Surround Setup wurde erkannt."
#: doc/classes/AudioServer.xml:419
msgid "A 5.1 channel surround setup was detected."
-msgstr ""
+msgstr "Ein 5.1 Kanal Surround Setup wurde erkannt."
#: doc/classes/AudioServer.xml:422
msgid "A 7.1 channel surround setup was detected."
-msgstr ""
+msgstr "Ein 7.1 Kanal Surround Setup wurde erkannt."
#: doc/classes/AudioStream.xml:4
msgid "Base class for audio streams."
@@ -7938,10 +8070,11 @@ msgstr ""
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/audio/audio_streams.html"
msgstr ""
+"https://docs.godotengine.org/en/latest/tutorials/audio/audio_streams.html"
#: doc/classes/AudioStream.xml:17
msgid "Returns the length of the audio stream in seconds."
-msgstr ""
+msgstr "Liefert die Länge des Audio Streams in Sekunden zurück."
#: doc/classes/AudioStreamGenerator.xml:8
#: doc/classes/AudioStreamGeneratorPlayback.xml:8
@@ -7949,21 +8082,25 @@ msgid ""
"https://github.com/godotengine/godot-demo-projects/tree/master/audio/"
"generator"
msgstr ""
+"https://github.com/godotengine/godot-demo-projects/tree/master/audio/"
+"generator"
#: modules/stb_vorbis/doc_classes/AudioStreamOGGVorbis.xml:4
#: modules/stb_vorbis/doc_classes/AudioStreamOGGVorbis.xml:7
msgid "OGG Vorbis audio stream driver."
-msgstr ""
+msgstr "OGG Vorbis Audio Stream Treiber."
#: modules/stb_vorbis/doc_classes/AudioStreamOGGVorbis.xml:15
msgid "Contains the audio data in bytes."
-msgstr ""
+msgstr "Enthält die Audio Daten in Bytes."
#: modules/stb_vorbis/doc_classes/AudioStreamOGGVorbis.xml:18
msgid ""
"If [code]true[/code], the stream will automatically loop when it reaches the "
"end."
msgstr ""
+"Wenn [code]wahr[/code] wird der Stream automatisch neu gestartet wenn er das "
+"Ende erreicht."
#: modules/stb_vorbis/doc_classes/AudioStreamOGGVorbis.xml:21
msgid "Time in seconds at which the stream starts after being looped."
@@ -8004,12 +8141,12 @@ msgstr ""
#: doc/classes/AudioStreamPlayer.xml:42 doc/classes/AudioStreamPlayer2D.xml:42
#: doc/classes/AudioStreamPlayer3D.xml:42
msgid "Sets the position from which audio will be played, in seconds."
-msgstr ""
+msgstr "Legt die Position in Sekunden fest, ab der die Tonausgabe startet."
#: doc/classes/AudioStreamPlayer.xml:49 doc/classes/AudioStreamPlayer2D.xml:49
#: doc/classes/AudioStreamPlayer3D.xml:49
msgid "Stops the audio."
-msgstr ""
+msgstr "Beendet die Tonausgabe."
#: doc/classes/AudioStreamPlayer.xml:55 doc/classes/AudioStreamPlayer2D.xml:61
#: doc/classes/AudioStreamPlayer3D.xml:67
@@ -8053,7 +8190,7 @@ msgstr ""
#: doc/classes/AudioStreamPlayer.xml:76
msgid "Volume of sound, in dB."
-msgstr ""
+msgstr "Lautstärke der Tonausgabe in dB."
#: doc/classes/AudioStreamPlayer.xml:82 doc/classes/AudioStreamPlayer2D.xml:88
#: doc/classes/AudioStreamPlayer3D.xml:115
@@ -8075,7 +8212,7 @@ msgstr ""
#: doc/classes/AudioStreamPlayer2D.xml:4
msgid "Plays audio in 2D."
-msgstr ""
+msgstr "Spielt Audio in 2D."
#: doc/classes/AudioStreamPlayer2D.xml:7
msgid "Plays audio that dampens with distance from screen center."
@@ -8394,7 +8531,9 @@ msgid ""
msgstr ""
#: doc/classes/BaseButton.xml:16
-msgid "Called when the button is pressed."
+msgid ""
+"Called when the button is pressed. If you need to know the button's pressed "
+"state (and [member toggle_mode] is active), use [method _toggled] instead."
msgstr ""
#: doc/classes/BaseButton.xml:25
@@ -8488,43 +8627,45 @@ msgstr ""
msgid ""
"Emitted when the button is toggled or pressed. This is on [signal "
"button_down] if [member action_mode] is [constant ACTION_MODE_BUTTON_PRESS] "
-"and on [signal button_up] otherwise."
+"and on [signal button_up] otherwise.\n"
+"If you need to know the button's pressed state (and [member toggle_mode] is "
+"active), use [signal toggled] instead."
msgstr ""
-#: doc/classes/BaseButton.xml:98
+#: doc/classes/BaseButton.xml:99
msgid ""
"Emitted when the button was just toggled between pressed and normal states "
"(only if [member toggle_mode] is active). The new state is contained in the "
"[code]button_pressed[/code] argument."
msgstr ""
-#: doc/classes/BaseButton.xml:104
+#: doc/classes/BaseButton.xml:105
msgid ""
"The normal state (i.e. not pressed, not hovered, not toggled and enabled) of "
"buttons."
msgstr ""
-#: doc/classes/BaseButton.xml:107
+#: doc/classes/BaseButton.xml:108
msgid "The state of buttons are pressed."
msgstr ""
-#: doc/classes/BaseButton.xml:110
+#: doc/classes/BaseButton.xml:111
msgid "The state of buttons are hovered."
msgstr ""
-#: doc/classes/BaseButton.xml:113
+#: doc/classes/BaseButton.xml:114
msgid "The state of buttons are disabled."
msgstr ""
-#: doc/classes/BaseButton.xml:116
+#: doc/classes/BaseButton.xml:117
msgid "The state of buttons are both hovered and pressed."
msgstr ""
-#: doc/classes/BaseButton.xml:119
+#: doc/classes/BaseButton.xml:120
msgid "Require just a press to consider the button clicked."
msgstr ""
-#: doc/classes/BaseButton.xml:122
+#: doc/classes/BaseButton.xml:123
msgid ""
"Require a press and a subsequent release before considering the button "
"clicked."
@@ -8545,6 +8686,7 @@ msgstr ""
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/spatial_material.html"
msgstr ""
+"https://docs.godotengine.org/en/latest/tutorials/3d/spatial_material.html"
#: doc/classes/BaseMaterial3D.xml:19
msgid "Returns [code]true[/code], if the specified [enum Feature] is enabled."
@@ -9217,22 +9359,22 @@ msgstr ""
msgid "Represents the size of the [enum TextureParam] enum."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:451 doc/classes/RenderingServer.xml:3657
-#: doc/classes/Viewport.xml:390
+#: doc/classes/BaseMaterial3D.xml:451 doc/classes/RenderingServer.xml:3668
+#: doc/classes/Viewport.xml:393
msgid ""
"The texture filter reads from the nearest pixel only. The simplest and "
"fastest method of filtering, but the texture will look pixelized."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:454 doc/classes/RenderingServer.xml:3660
-#: doc/classes/Viewport.xml:393
+#: doc/classes/BaseMaterial3D.xml:454 doc/classes/RenderingServer.xml:3671
+#: doc/classes/Viewport.xml:396
msgid ""
"The texture filter blends between the nearest 4 pixels. Use this when you "
"want to avoid a pixelated style, but do not want mipmaps."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:457 doc/classes/RenderingServer.xml:3663
-#: doc/classes/Viewport.xml:396
+#: doc/classes/BaseMaterial3D.xml:457 doc/classes/RenderingServer.xml:3674
+#: doc/classes/Viewport.xml:399
msgid ""
"The texture filter reads from the nearest pixel in the nearest mipmap. The "
"fastest way to read from textures with mipmaps."
@@ -9245,14 +9387,14 @@ msgid ""
"smooth out pixels that are far from the camera."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:463 doc/classes/RenderingServer.xml:3669
+#: doc/classes/BaseMaterial3D.xml:463 doc/classes/RenderingServer.xml:3680
msgid ""
"The texture filter reads from the nearest pixel, but selects a mipmap based "
"on the angle between the surface and the camera view. This reduces artifacts "
"on surfaces that are almost in line with the camera."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:466 doc/classes/RenderingServer.xml:3672
+#: doc/classes/BaseMaterial3D.xml:466 doc/classes/RenderingServer.xml:3683
msgid ""
"The texture filter blends between the nearest 4 pixels and selects a mipmap "
"based on the angle between the surface and the camera view. This reduces "
@@ -9261,7 +9403,7 @@ msgid ""
"texturing."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:469 doc/classes/CanvasItem.xml:685
+#: doc/classes/BaseMaterial3D.xml:469 doc/classes/CanvasItem.xml:695
msgid "Represents the size of the [enum TextureFilter] enum."
msgstr ""
@@ -9484,8 +9626,8 @@ msgstr ""
msgid "Enables the shadow to opacity feature."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:622 doc/classes/RenderingServer.xml:3684
-#: doc/classes/Viewport.xml:408
+#: doc/classes/BaseMaterial3D.xml:622 doc/classes/RenderingServer.xml:3695
+#: doc/classes/Viewport.xml:411
msgid ""
"Enables the texture to repeat when UV coordinates are outside the 0-1 range. "
"If using one of the linear filtering modes, this can result in artifacts at "
@@ -9584,7 +9726,7 @@ msgstr ""
#: doc/classes/BaseMaterial3D.xml:689
msgid "Currently unused."
-msgstr ""
+msgstr "zu Zeit ungenutzt."
#: doc/classes/BaseMaterial3D.xml:692
msgid "Adds the emission color to the color from the emission texture."
@@ -9626,167 +9768,197 @@ msgstr ""
#: doc/classes/Basis.xml:7
msgid ""
-"3×3 matrix used for 3D rotation and scale. Contains 3 vector fields X, Y and "
-"Z as its columns, which can be interpreted as the local basis vectors of a "
-"transformation. Can also be accessed as array of 3D vectors. These vectors "
-"are orthogonal to each other, but are not necessarily normalized (due to "
-"scaling). Almost always used as an orthogonal basis for a [Transform].\n"
-"For such use, it is composed of a scaling and a rotation matrix, in that "
-"order (M = R.S)."
+"3×3 matrix used for 3D rotation and scale. Almost always used as an "
+"orthogonal basis for a Transform.\n"
+"Contains 3 vector fields X, Y and Z as its columns, which are typically "
+"interpreted as the local basis vectors of a transformation. For such use, it "
+"is composed of a scaling and a rotation matrix, in that order (M = R.S).\n"
+"Can also be accessed as array of 3D vectors. These vectors are normally "
+"orthogonal to each other, but are not necessarily normalized (due to "
+"scaling).\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
msgstr ""
-#: doc/classes/Basis.xml:11 doc/classes/Transform.xml:11
+#: doc/classes/Basis.xml:13 doc/classes/Transform.xml:12
+#: doc/classes/Transform2D.xml:11
+#, fuzzy
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/math/"
+"matrices_and_transforms.html"
+msgstr "https://docs.godotengine.org/en/latest/tutorials/2d/2d_transforms.html"
+
+#: doc/classes/Basis.xml:14 doc/classes/Transform.xml:13
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/using_transforms.html"
msgstr ""
+"https://docs.godotengine.org/en/latest/tutorials/3d/using_transforms.html"
-#: doc/classes/Basis.xml:20
-msgid "Create a rotation matrix from the given quaternion."
+#: doc/classes/Basis.xml:23
+msgid "Constructs a pure rotation basis matrix from the given quaternion."
msgstr ""
-#: doc/classes/Basis.xml:29
+#: doc/classes/Basis.xml:32
msgid ""
-"Create a rotation matrix (in the YXZ convention: first Z, then X, and Y "
-"last) from the specified Euler angles, given in the vector format as (X "
-"angle, Y angle, Z angle)."
+"Constructs a pure rotation basis matrix from the given Euler angles (in the "
+"YXZ convention: when *composing*, first Y, then X, and Z last), given in the "
+"vector format as (X angle, Y angle, Z angle).\n"
+"Consider using the [Quat] constructor instead, which uses a quaternion "
+"instead of Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:40
+#: doc/classes/Basis.xml:44
msgid ""
-"Create a rotation matrix which rotates around the given axis by the "
-"specified angle, in radians. The axis must be a normalized vector."
+"Constructs a pure rotation basis matrix, rotated around the given "
+"[code]axis[/code] by [code]phi[/code], in radians. The axis must be a "
+"normalized vector."
msgstr ""
-#: doc/classes/Basis.xml:53
-msgid "Create a matrix from 3 axis vectors."
+#: doc/classes/Basis.xml:57
+msgid "Constructs a basis matrix from 3 axis vectors (matrix columns)."
msgstr ""
-#: doc/classes/Basis.xml:60
-msgid "Returns the determinant of the matrix."
+#: doc/classes/Basis.xml:64
+msgid ""
+"Returns the determinant of the basis matrix. If the basis is uniformly "
+"scaled, its determinant is the square of the scale.\n"
+"A negative determinant means the basis has a negative scale. A zero "
+"determinant means the basis isn't invertible, and is usually considered "
+"invalid."
msgstr ""
-#: doc/classes/Basis.xml:67
+#: doc/classes/Basis.xml:72
msgid ""
"Returns the basis's rotation in the form of Euler angles (in the YXZ "
-"convention: first Z, then X, and Y last). The returned vector contains the "
-"rotation angles in the format (X angle, Y angle, Z angle). See [method "
-"get_rotation_quat] if you need a quaternion instead."
+"convention: when decomposing, first Z, then X, and Y last). The returned "
+"vector contains the rotation angles in the format (X angle, Y angle, Z "
+"angle).\n"
+"Consider using the [method get_rotation_quat] method instead, which returns "
+"a [Quat] quaternion instead of Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:74
+#: doc/classes/Basis.xml:80
msgid ""
"This function considers a discretization of rotations into 24 points on unit "
"sphere, lying along the vectors (x,y,z) with each component being either -1, "
"0, or 1, and returns the index of the point best representing the "
-"orientation of the object. It is mainly used by the grid map editor. For "
+"orientation of the object. It is mainly used by the [GridMap] editor. For "
"further details, refer to the Godot source code."
msgstr ""
-#: doc/classes/Basis.xml:81
+#: doc/classes/Basis.xml:87
msgid ""
"Returns the basis's rotation in the form of a quaternion. See [method "
"get_euler] if you need Euler angles, but keep in mind quaternions should "
"generally be preferred to Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:88
+#: doc/classes/Basis.xml:94
msgid ""
"Assuming that the matrix is the combination of a rotation and scaling, "
"return the absolute value of scaling factors along each axis."
msgstr ""
-#: doc/classes/Basis.xml:95 doc/classes/Transform2D.xml:49
+#: doc/classes/Basis.xml:101
msgid "Returns the inverse of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:106
+#: doc/classes/Basis.xml:112
msgid ""
"Returns [code]true[/code] if this basis and [code]b[/code] are approximately "
"equal, by calling [code]is_equal_approx[/code] on each component."
msgstr ""
-#: doc/classes/Basis.xml:113
+#: doc/classes/Basis.xml:119
msgid ""
"Returns the orthonormalized version of the matrix (useful to call from time "
"to time to avoid rounding error for orthogonal matrices). This performs a "
"Gram-Schmidt orthonormalization on the basis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:124
+#: doc/classes/Basis.xml:130
msgid ""
"Introduce an additional rotation around the given axis by phi (radians). The "
"axis must be a normalized vector."
msgstr ""
-#: doc/classes/Basis.xml:133
+#: doc/classes/Basis.xml:139
msgid ""
"Introduce an additional scaling specified by the given 3D scaling factor."
msgstr ""
-#: doc/classes/Basis.xml:144
+#: doc/classes/Basis.xml:150
msgid ""
"Assuming that the matrix is a proper rotation matrix, slerp performs a "
"spherical-linear interpolation with another rotation matrix."
msgstr ""
-#: doc/classes/Basis.xml:153
+#: doc/classes/Basis.xml:159
msgid "Transposed dot product with the X axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:162
+#: doc/classes/Basis.xml:168
msgid "Transposed dot product with the Y axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:171
+#: doc/classes/Basis.xml:177
msgid "Transposed dot product with the Z axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:178
+#: doc/classes/Basis.xml:184
msgid "Returns the transposed version of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:187
+#: doc/classes/Basis.xml:193
msgid "Returns a vector transformed (multiplied) by the matrix."
msgstr ""
-#: doc/classes/Basis.xml:196
+#: doc/classes/Basis.xml:202
msgid ""
-"Returns a vector transformed (multiplied) by the transposed matrix.\n"
+"Returns a vector transformed (multiplied) by the transposed basis matrix.\n"
"[b]Note:[/b] This results in a multiplication by the inverse of the matrix "
"only if it represents a rotation-reflection."
msgstr ""
-#: doc/classes/Basis.xml:203
-msgid "The basis matrix's X vector."
+#: doc/classes/Basis.xml:209 doc/classes/Transform2D.xml:181
+msgid ""
+"The basis matrix's X vector (column 0). Equivalent to array index [code]0[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:206
-msgid "The basis matrix's Y vector."
+#: doc/classes/Basis.xml:212 doc/classes/Transform2D.xml:184
+msgid ""
+"The basis matrix's Y vector (column 1). Equivalent to array index [code]1[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:209
-msgid "The basis matrix's Z vector."
+#: doc/classes/Basis.xml:215
+msgid ""
+"The basis matrix's Z vector (column 2). Equivalent to array index [code]2[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:214
+#: doc/classes/Basis.xml:220
msgid ""
-"The identity basis. This is identical to calling [code]Basis()[/code] "
-"without any parameters. This constant can be used to make your code clearer."
+"The identity basis, with no rotation or scaling applied.\n"
+"This is identical to calling [code]Basis()[/code] without any parameters. "
+"This constant can be used to make your code clearer, and for consistency "
+"with C#."
msgstr ""
-#: doc/classes/Basis.xml:217
+#: doc/classes/Basis.xml:224
msgid ""
"The basis that will flip something along the X axis when used in a "
"transformation."
msgstr ""
-#: doc/classes/Basis.xml:220
+#: doc/classes/Basis.xml:227
msgid ""
"The basis that will flip something along the Y axis when used in a "
"transformation."
msgstr ""
-#: doc/classes/Basis.xml:223
+#: doc/classes/Basis.xml:230
msgid ""
"The basis that will flip something along the Z axis when used in a "
"transformation."
@@ -10099,97 +10271,111 @@ msgstr ""
#: doc/classes/Button.xml:7
msgid ""
"Button is the standard themed button. It can contain text and an icon, and "
-"will display them according to the current [Theme]."
+"will display them according to the current [Theme].\n"
+"[b]Example of creating a button and assigning an action when pressed by code:"
+"[/b]\n"
+"[codeblock]\n"
+"func _ready():\n"
+" var button = Button.new()\n"
+" button.text = \"Click me\"\n"
+" button.connect(\"pressed\", self, \"_button_pressed\")\n"
+" add_child(button)\n"
+"\n"
+"func _button_pressed():\n"
+" print(\"Hello world!\")\n"
+"[/codeblock]\n"
+"Buttons (like all Control nodes) can also be created in the editor, but some "
+"situations may require creating them from code."
msgstr ""
-#: doc/classes/Button.xml:15
+#: doc/classes/Button.xml:27
msgid ""
"Text alignment policy for the button's text, use one of the [enum TextAlign] "
"constants."
msgstr ""
-#: doc/classes/Button.xml:18
+#: doc/classes/Button.xml:30
msgid ""
"When this property is enabled, text that is too large to fit the button is "
"clipped, when disabled the Button will always be wide enough to hold the "
"text."
msgstr ""
-#: doc/classes/Button.xml:21
+#: doc/classes/Button.xml:33
msgid ""
"When enabled, the button's icon will expand/shrink to fit the button's size "
"while keeping its aspect."
msgstr ""
-#: doc/classes/Button.xml:24
+#: doc/classes/Button.xml:36
msgid "Flat buttons don't display decoration."
msgstr ""
-#: doc/classes/Button.xml:27
+#: doc/classes/Button.xml:39
msgid ""
"Button's icon, if text is present the icon will be placed before the text."
msgstr ""
-#: doc/classes/Button.xml:30 doc/classes/LinkButton.xml:18
+#: doc/classes/Button.xml:42 doc/classes/LinkButton.xml:18
msgid "The button's text that will be displayed inside the button's area."
msgstr ""
-#: doc/classes/Button.xml:35
+#: doc/classes/Button.xml:47
msgid "Align the text to the left."
msgstr ""
-#: doc/classes/Button.xml:38
+#: doc/classes/Button.xml:50
msgid "Align the text to the center."
msgstr ""
-#: doc/classes/Button.xml:41
+#: doc/classes/Button.xml:53
msgid "Align the text to the right."
msgstr ""
-#: doc/classes/Button.xml:46
+#: doc/classes/Button.xml:58
msgid "[StyleBox] used when the [Button] is disabled."
msgstr ""
-#: doc/classes/Button.xml:49
+#: doc/classes/Button.xml:61
msgid ""
"[StyleBox] used when the [Button] is focused. It is displayed over the "
"current [StyleBox], so using [StyleBoxEmpty] will just disable the focus "
"visual effect."
msgstr ""
-#: doc/classes/Button.xml:52
+#: doc/classes/Button.xml:64
msgid "[Font] of the [Button]'s text."
msgstr ""
-#: doc/classes/Button.xml:55
+#: doc/classes/Button.xml:67
msgid "Default text [Color] of the [Button]."
msgstr ""
-#: doc/classes/Button.xml:58
+#: doc/classes/Button.xml:70
msgid "Text [Color] used when the [Button] is disabled."
msgstr ""
-#: doc/classes/Button.xml:61
+#: doc/classes/Button.xml:73
msgid "Text [Color] used when the [Button] is being hovered."
msgstr ""
-#: doc/classes/Button.xml:64
+#: doc/classes/Button.xml:76
msgid "Text [Color] used when the [Button] is being pressed."
msgstr ""
-#: doc/classes/Button.xml:67
+#: doc/classes/Button.xml:79
msgid "[StyleBox] used when the [Button] is being hovered."
msgstr ""
-#: doc/classes/Button.xml:70
+#: doc/classes/Button.xml:82
msgid "The horizontal space between [Button]'s icon and text."
msgstr ""
-#: doc/classes/Button.xml:73
+#: doc/classes/Button.xml:85
msgid "Default [StyleBox] for the [Button]."
msgstr ""
-#: doc/classes/Button.xml:76
+#: doc/classes/Button.xml:88
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr ""
@@ -10841,7 +11027,7 @@ msgstr ""
#: doc/classes/CameraEffects.xml:37
msgid ""
"The exposure override value to use. Higher values will result in a brighter "
-"scene. Only effective if [member override_exposure_enable] is [code]true[/"
+"scene. Only effective if [member override_exposure_enabled] is [code]true[/"
"code]."
msgstr ""
@@ -10988,13 +11174,14 @@ msgstr ""
#: doc/classes/CanvasItem.xml:15 doc/classes/CanvasLayer.xml:10
#: doc/classes/InputEvent.xml:11 doc/classes/Viewport.xml:15
msgid "https://docs.godotengine.org/en/latest/tutorials/2d/2d_transforms.html"
-msgstr ""
+msgstr "https://docs.godotengine.org/en/latest/tutorials/2d/2d_transforms.html"
#: doc/classes/CanvasItem.xml:16 doc/classes/Control.xml:19
#: doc/classes/Node2D.xml:10
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/2d/custom_drawing_in_2d.html"
msgstr ""
+"https://docs.godotengine.org/en/latest/tutorials/2d/custom_drawing_in_2d.html"
#: doc/classes/CanvasItem.xml:23
msgid ""
@@ -11095,265 +11282,284 @@ msgid ""
msgstr ""
#: doc/classes/CanvasItem.xml:319
-msgid "Draws a string using a custom font."
+msgid ""
+"Draws [code]text[/code] using the specified [code]font[/code] at the "
+"[code]position[/code] (top-left corner). The text will have its color "
+"multiplied by [code]modulate[/code]. If [code]clip_w[/code] is greater than "
+"or equal to 0, the text will be clipped if it exceeds the specified width.\n"
+"[b]Example using the default project font:[/b]\n"
+"[codeblock]\n"
+"# If using this method in a script that redraws constantly, move the\n"
+"# `default_font` declaration to a member variable assigned in `_ready()`\n"
+"# so the Control is only created once.\n"
+"var default_font = Control.new().get_font(\"font\")\n"
+"draw_string(default_font, Vector2(64, 64), \"Hello world\")\n"
+"[/codeblock]\n"
+"See also [method Font.draw]."
msgstr ""
-#: doc/classes/CanvasItem.xml:330
+#: doc/classes/CanvasItem.xml:339
msgid "Draws a styled rectangle."
msgstr ""
-#: doc/classes/CanvasItem.xml:353
+#: doc/classes/CanvasItem.xml:362
msgid "Draws a texture at a given position."
msgstr ""
-#: doc/classes/CanvasItem.xml:380
+#: doc/classes/CanvasItem.xml:389
msgid ""
"Draws a textured rectangle at a given position, optionally modulated by a "
"color. If [code]transpose[/code] is [code]true[/code], the texture will have "
"its X and Y coordinates swapped."
msgstr ""
-#: doc/classes/CanvasItem.xml:409
+#: doc/classes/CanvasItem.xml:418
msgid ""
"Draws a textured rectangle region at a given position, optionally modulated "
"by a color. If [code]transpose[/code] is [code]true[/code], the texture will "
"have its X and Y coordinates swapped."
msgstr ""
-#: doc/classes/CanvasItem.xml:416 doc/classes/Node3D.xml:19
+#: doc/classes/CanvasItem.xml:425 doc/classes/Node3D.xml:19
msgid ""
"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."
msgstr ""
-#: doc/classes/CanvasItem.xml:423
+#: doc/classes/CanvasItem.xml:432
msgid "Returns the [RID] of the [World2D] canvas where this item is in."
msgstr ""
-#: doc/classes/CanvasItem.xml:430
+#: doc/classes/CanvasItem.xml:439
msgid "Returns the canvas item RID used by [RenderingServer] for this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:437
+#: doc/classes/CanvasItem.xml:446
msgid "Returns the transform matrix of this item's canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:444
+#: doc/classes/CanvasItem.xml:453
msgid "Returns the global position of the mouse."
msgstr ""
-#: doc/classes/CanvasItem.xml:451
+#: doc/classes/CanvasItem.xml:460
msgid "Returns the global transform matrix of this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:458
+#: doc/classes/CanvasItem.xml:467
msgid ""
"Returns the global transform matrix of this item in relation to the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:465
+#: doc/classes/CanvasItem.xml:474
msgid "Returns the mouse position relative to this item's position."
msgstr ""
-#: doc/classes/CanvasItem.xml:472
+#: doc/classes/CanvasItem.xml:481
msgid "Returns the transform matrix of this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:479
+#: doc/classes/CanvasItem.xml:488
msgid "Returns the viewport's boundaries as a [Rect2]."
msgstr ""
-#: doc/classes/CanvasItem.xml:486
+#: doc/classes/CanvasItem.xml:495
msgid "Returns this item's transform in relation to the viewport."
msgstr ""
-#: doc/classes/CanvasItem.xml:493
+#: doc/classes/CanvasItem.xml:502
msgid "Returns the [World2D] where this item is in."
msgstr ""
-#: doc/classes/CanvasItem.xml:500
+#: doc/classes/CanvasItem.xml:509
msgid "Hide the [CanvasItem] if it's currently visible."
msgstr ""
-#: doc/classes/CanvasItem.xml:507
+#: doc/classes/CanvasItem.xml:516
msgid ""
"Returns [code]true[/code] if local transform notifications are communicated "
"to children."
msgstr ""
-#: doc/classes/CanvasItem.xml:514
+#: doc/classes/CanvasItem.xml:523
msgid ""
"Returns [code]true[/code] if the node is set as top-level. See [method "
"set_as_toplevel]."
msgstr ""
-#: doc/classes/CanvasItem.xml:521
+#: doc/classes/CanvasItem.xml:530
msgid ""
"Returns [code]true[/code] if global transform notifications are communicated "
"to children."
msgstr ""
-#: doc/classes/CanvasItem.xml:528
+#: doc/classes/CanvasItem.xml:537 doc/classes/Node3D.xml:104
msgid ""
"Returns [code]true[/code] if the node is present in the [SceneTree], its "
-"[member visible] property is [code]true[/code] and its inherited visibility "
-"is also [code]true[/code]."
+"[member visible] property is [code]true[/code] and all its antecedents are "
+"also visible. If any antecedent is hidden, this node will not be visible in "
+"the scene tree."
msgstr ""
-#: doc/classes/CanvasItem.xml:537
+#: doc/classes/CanvasItem.xml:546
msgid "Assigns [code]screen_point[/code] as this node's new local transform."
msgstr ""
-#: doc/classes/CanvasItem.xml:546
+#: doc/classes/CanvasItem.xml:555
msgid ""
"Transformations issued by [code]event[/code]'s inputs are applied in local "
"space instead of global space."
msgstr ""
-#: doc/classes/CanvasItem.xml:555
+#: doc/classes/CanvasItem.xml:564
msgid ""
"If [code]enable[/code] is [code]true[/code], the node won't inherit its "
"transform from parent canvas items."
msgstr ""
-#: doc/classes/CanvasItem.xml:564
+#: doc/classes/CanvasItem.xml:573
msgid ""
"If [code]enable[/code] is [code]true[/code], children will be updated with "
"local transform data."
msgstr ""
-#: doc/classes/CanvasItem.xml:573
+#: doc/classes/CanvasItem.xml:582
msgid ""
"If [code]enable[/code] is [code]true[/code], children will be updated with "
"global transform data."
msgstr ""
-#: doc/classes/CanvasItem.xml:580
+#: doc/classes/CanvasItem.xml:589
msgid ""
"Show the [CanvasItem] if it's currently hidden. For controls that inherit "
"[Popup], the correct way to make them visible is to call one of the multiple "
"[code]popup*()[/code] functions instead."
msgstr ""
-#: doc/classes/CanvasItem.xml:587
+#: doc/classes/CanvasItem.xml:596
msgid ""
"Queue the [CanvasItem] for update. [constant NOTIFICATION_DRAW] will be "
"called on idle time to request redraw."
msgstr ""
-#: doc/classes/CanvasItem.xml:593
+#: doc/classes/CanvasItem.xml:602
msgid ""
"The rendering layers in which this [CanvasItem] responds to [Light2D] nodes."
msgstr ""
-#: doc/classes/CanvasItem.xml:596
+#: doc/classes/CanvasItem.xml:605
msgid "The material applied to textures on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:599
+#: doc/classes/CanvasItem.xml:608
msgid "The color applied to textures on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:602
+#: doc/classes/CanvasItem.xml:611
msgid ""
"The color applied to textures on this [CanvasItem]. This is not inherited by "
"children [CanvasItem]s."
msgstr ""
+"Die Farbe die auf die Textur dieses [CanvasItem] angewendet wird. Dies wird "
+"nicht auf weitere [CanvasItem] vererbt."
-#: doc/classes/CanvasItem.xml:605
+#: doc/classes/CanvasItem.xml:614
msgid "If [code]true[/code], the object draws behind its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:608
+#: doc/classes/CanvasItem.xml:617
msgid "If [code]true[/code], the object draws on top of its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:611
+#: doc/classes/CanvasItem.xml:620
msgid "The texture filtering mode to use on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:614
+#: doc/classes/CanvasItem.xml:623
msgid "The texture repeating mode to use on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:617
+#: doc/classes/CanvasItem.xml:626
msgid ""
"If [code]true[/code], the parent [CanvasItem]'s [member material] property "
"is used as this one's material."
msgstr ""
-#: doc/classes/CanvasItem.xml:620
+#: doc/classes/CanvasItem.xml:629
msgid ""
-"If [code]true[/code], this [CanvasItem] is drawn. For controls that inherit "
-"[Popup], the correct way to make them visible is to call one of the multiple "
-"[code]popup*()[/code] functions instead."
+"If [code]true[/code], this [CanvasItem] is drawn. The node is only visible "
+"if all of its antecedents are visible as well (in other words, [method "
+"is_visible_in_tree] must return [code]true[/code]).\n"
+"[b]Note:[/b] For controls that inherit [Popup], the correct way to make them "
+"visible is to call one of the multiple [code]popup*()[/code] functions "
+"instead."
msgstr ""
-#: doc/classes/CanvasItem.xml:626
+#: doc/classes/CanvasItem.xml:636
msgid ""
"Emitted when the [CanvasItem] must redraw. This can only be connected "
"realtime, as deferred will not allow drawing."
msgstr ""
-#: doc/classes/CanvasItem.xml:631
+#: doc/classes/CanvasItem.xml:641
msgid "Emitted when becoming hidden."
-msgstr ""
+msgstr "Gesendet wenn es versteckt wird."
-#: doc/classes/CanvasItem.xml:636
+#: doc/classes/CanvasItem.xml:646
msgid "Emitted when the item rect has changed."
-msgstr ""
+msgstr "Gesendet wenn das Rechteck Element geändert wurde."
-#: doc/classes/CanvasItem.xml:641
+#: doc/classes/CanvasItem.xml:651
msgid "Emitted when the visibility (hidden/visible) changes."
-msgstr ""
+msgstr "Gesendet wenn die Sichtbarkeit (versteckt/sichtbar) sich verändert."
-#: doc/classes/CanvasItem.xml:647
+#: doc/classes/CanvasItem.xml:657
msgid ""
"The [CanvasItem]'s transform has changed. This notification is only received "
"if enabled by [method set_notify_transform] or [method "
"set_notify_local_transform]."
msgstr ""
-#: doc/classes/CanvasItem.xml:650
+#: doc/classes/CanvasItem.xml:660
msgid "The [CanvasItem] is requested to draw."
-msgstr ""
+msgstr "[CanvasItem] wird aufgefordert zu zeichnen."
-#: doc/classes/CanvasItem.xml:653
+#: doc/classes/CanvasItem.xml:663
msgid "The [CanvasItem]'s visibility has changed."
-msgstr ""
+msgstr "[CanvasItem] Sichtbar/Unsichtbar Modus geändert."
-#: doc/classes/CanvasItem.xml:656
+#: doc/classes/CanvasItem.xml:666
msgid "The [CanvasItem] has entered the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:659
+#: doc/classes/CanvasItem.xml:669
msgid "The [CanvasItem] has exited the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:662 doc/classes/CanvasItem.xml:688
+#: doc/classes/CanvasItem.xml:672 doc/classes/CanvasItem.xml:698
msgid "The [CanvasItem] will inherit the filter from its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:665
+#: doc/classes/CanvasItem.xml:675
msgid ""
"The texture filter reads from the nearest pixel only. The simplest and "
"fastest method of filtering. Useful for pixel art."
msgstr ""
-#: doc/classes/CanvasItem.xml:668
+#: doc/classes/CanvasItem.xml:678
msgid ""
"The texture filter blends between the nearest four pixels. Use this for most "
"cases where you want to avoid a pixelated style."
msgstr ""
-#: doc/classes/CanvasItem.xml:671
+#: doc/classes/CanvasItem.xml:681
msgid ""
"The texture filter reads from the nearest pixel in the nearest mipmap. This "
"is the fastest way to read from textures with mipmaps."
msgstr ""
-#: doc/classes/CanvasItem.xml:674
+#: doc/classes/CanvasItem.xml:684
msgid ""
"The texture filter blends between the nearest 4 pixels and between the "
"nearest 2 mipmaps. Use this for non-pixel art textures that may be viewed at "
@@ -11361,7 +11567,7 @@ msgid ""
"smooth out pixels that are smaller than on-screen pixels."
msgstr ""
-#: doc/classes/CanvasItem.xml:677
+#: doc/classes/CanvasItem.xml:687
msgid ""
"The texture filter reads from the nearest pixel, but selects a mipmap based "
"on the angle between the surface and the camera view. This reduces artifacts "
@@ -11370,7 +11576,7 @@ msgid ""
"TEXTURE_FILTER_NEAREST_WITH_MIPMAPS] is usually more appropriate."
msgstr ""
-#: doc/classes/CanvasItem.xml:681
+#: doc/classes/CanvasItem.xml:691
msgid ""
"The texture filter blends between the nearest 4 pixels and selects a mipmap "
"based on the angle between the surface and the camera view. This reduces "
@@ -11381,27 +11587,29 @@ msgid ""
"TEXTURE_FILTER_LINEAR_WITH_MIPMAPS] is usually more appropriate."
msgstr ""
-#: doc/classes/CanvasItem.xml:691
+#: doc/classes/CanvasItem.xml:701
msgid "Texture will not repeat."
-msgstr ""
+msgstr "Textur wird nicht wiederholt."
-#: doc/classes/CanvasItem.xml:694
+#: doc/classes/CanvasItem.xml:704
msgid "Texture will repeat normally."
-msgstr ""
+msgstr "Textur wird normal wiederholt."
-#: doc/classes/CanvasItem.xml:697
+#: doc/classes/CanvasItem.xml:707
msgid ""
"Texture will repeat in a 2x2 tiled mode, where elements at even positions "
"are mirrored."
msgstr ""
+"Textur wird in einem 2x2 Kachel Modus wiederholt, wobei Elemente an geraden "
+"Positionen gespiegelt werden."
-#: doc/classes/CanvasItem.xml:700
+#: doc/classes/CanvasItem.xml:710
msgid "Represents the size of the [enum TextureRepeat] enum."
-msgstr ""
+msgstr "Steht für die Größe von [enum TextureRepeat] enum."
#: doc/classes/CanvasItemMaterial.xml:4
msgid "A material for [CanvasItem]s."
-msgstr ""
+msgstr "Ein Material für [CanvasItem]."
#: doc/classes/CanvasItemMaterial.xml:7
msgid ""
@@ -11418,7 +11626,7 @@ msgstr ""
#: doc/classes/CanvasItemMaterial.xml:18
msgid "The manner in which material reacts to lighting."
-msgstr ""
+msgstr "Die Art wie ein Material auf Licht reagiert."
#: doc/classes/CanvasItemMaterial.xml:21
msgid ""
@@ -11427,6 +11635,10 @@ msgid ""
"[b]Note:[/b] This property is only used and visible in the editor if [member "
"particles_animation] is [code]true[/code]."
msgstr ""
+"Die Anzahl der Spalten in dem Spritesheet sind wie folgt zugewiesen: "
+"[Texture2D] für ein [GPUParticles2D] oder [CPUParticles2D].\n"
+"[b]Note:[/b] Dieses Merkmal wird nur im Editor genutzt und ist nur dort "
+"sichtbar wenn [member particles_animation] [code]true[/code] ist."
#: doc/classes/CanvasItemMaterial.xml:25
msgid ""
@@ -11507,7 +11719,7 @@ msgstr ""
#: doc/classes/CanvasLayer.xml:11
msgid "https://docs.godotengine.org/en/latest/tutorials/2d/canvas_layers.html"
-msgstr ""
+msgstr "https://docs.godotengine.org/de/latest/tutorials/2d/canvas_layers.html"
#: doc/classes/CanvasLayer.xml:18
msgid "Returns the RID of the canvas used by this layer."
@@ -11638,11 +11850,14 @@ msgid ""
"https://docs.godotengine.org/en/latest/tutorials/gui/bbcode_in_richtextlabel."
"html"
msgstr ""
+"https://docs.godotengine.org/de/latest/tutorials/gui/bbcode_in_richtextlabel."
+"html"
#: doc/classes/CharFXTransform.xml:11 doc/classes/RichTextEffect.xml:17
msgid ""
"https://github.com/Eoin-ONeill-Yokai/Godot-Rich-Text-Effect-Test-Project"
msgstr ""
+"https://github.com/Eoin-ONeill-Yokai/Godot-Rich-Text-Effect-Test-Project"
#: doc/classes/CharFXTransform.xml:17 doc/classes/CharFXTransform.xml:45
msgid ""
@@ -12419,6 +12634,8 @@ msgid ""
"https://docs.godotengine.org/en/latest/tutorials/physics/"
"physics_introduction.html"
msgstr ""
+"https://docs.godotengine.org/de/latest/tutorials/physics/"
+"physics_introduction.html"
#: doc/classes/CollisionShape2D.xml:16 doc/classes/CollisionShape3D.xml:32
msgid "A disabled collision shape has no effect in the world."
@@ -12468,16 +12685,15 @@ msgid ""
msgstr ""
#: doc/classes/Color.xml:4
-msgid "Color in RGBA format with some support for ARGB format."
+msgid "Color in RGBA format using floats on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:7
msgid ""
-"A color is represented by red, green, and blue [code](r, g, b)[/code] "
-"components. Additionally, [code]a[/code] represents the alpha component, "
-"often used for transparency. Values are in floating-point and usually range "
-"from 0 to 1. Some properties (such as [member CanvasItem.modulate]) may "
-"accept values greater than 1.\n"
+"A color represented by red, green, blue, and alpha (RGBA) components. The "
+"alpha component is often used for transparency. Values are in floating-point "
+"and usually range from 0 to 1. Some properties (such as CanvasItem.modulate) "
+"may accept values greater than 1 (overbright or HDR colors).\n"
"You can also create a color from standardized color names by using [method "
"@GDScript.ColorN] or directly using the color constants defined here. The "
"standardized color set is based on the [url=https://en.wikipedia.org/wiki/"
@@ -12691,47 +12907,48 @@ msgid ""
msgstr ""
#: doc/classes/Color.xml:280
-msgid "Alpha value (range 0 to 1)."
+msgid ""
+"The color's alpha (transparency) component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:283
-msgid "Alpha value (range 0 to 255)."
+msgid "Wrapper for [member a] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:286
-msgid "Blue value (range 0 to 1)."
+msgid "The color's blue component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:289
-msgid "Blue value (range 0 to 255)."
+msgid "Wrapper for [member b] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:292
-msgid "Green value (range 0 to 1)."
+msgid "The color's green component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:295
-msgid "Green value (range 0 to 255)."
+msgid "Wrapper for [member g] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:298
-msgid "HSV hue value (range 0 to 1)."
+msgid "The HSV hue of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:301
-msgid "Red value (range 0 to 1)."
+msgid "The color's red component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:304
-msgid "Red value (range 0 to 255)."
+msgid "Wrapper for [member r] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:307
-msgid "HSV saturation value (range 0 to 1)."
+msgid "The HSV saturation of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:310
-msgid "HSV value (range 0 to 1)."
+msgid "The HSV value (brightness) of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:315
@@ -13871,7 +14088,7 @@ msgstr ""
#: doc/classes/Control.xml:18
msgid "https://docs.godotengine.org/en/latest/tutorials/gui/index.html"
-msgstr ""
+msgstr "https://docs.godotengine.org/de/latest/tutorials/gui/index.html"
#: doc/classes/Control.xml:26
msgid ""
@@ -14651,23 +14868,35 @@ msgstr ""
#: doc/classes/Control.xml:859
msgid ""
"The node's scale, relative to its [member rect_size]. Change this property "
-"to scale the node around its [member rect_pivot_offset]."
-msgstr ""
-
-#: doc/classes/Control.xml:862
+"to scale the node around its [member rect_pivot_offset]. The Control's "
+"[member hint_tooltip] will also scale according to this value.\n"
+"[b]Note:[/b] This property is mainly intended to be used for animation "
+"purposes. Text inside the Control will look pixelated or blurry when the "
+"Control is scaled. To support multiple resolutions in your project, use an "
+"appropriate viewport stretch mode as described in the [url=https://docs."
+"godotengine.org/en/latest/tutorials/viewports/multiple_resolutions."
+"html]documentation[/url] instead of scaling Controls individually.\n"
+"[b]Note:[/b] If the Control node is a child of a [Container] node, the scale "
+"will be reset to [code]Vector2(1, 1)[/code] when the scene is instanced. To "
+"set the Control's scale when it's instanced, wait for one frame using "
+"[code]yield(get_tree(), \"idle_frame\")[/code] then set its [member "
+"rect_scale] property."
+msgstr ""
+
+#: doc/classes/Control.xml:864
msgid ""
"The size of the node's bounding rectangle, in pixels. [Container] nodes "
"update this property automatically."
msgstr ""
-#: doc/classes/Control.xml:865
+#: doc/classes/Control.xml:867
msgid ""
"Tells the parent [Container] nodes how they should resize and place the node "
"on the X axis. Use one of the [enum SizeFlags] constants to change the "
"flags. See the constants to learn what each does."
msgstr ""
-#: doc/classes/Control.xml:868
+#: doc/classes/Control.xml:870
msgid ""
"If the node and at least one of its neighbours uses the [constant "
"SIZE_EXPAND] size flag, the parent [Container] will let it take more or less "
@@ -14676,181 +14905,181 @@ msgid ""
"space."
msgstr ""
-#: doc/classes/Control.xml:871
+#: doc/classes/Control.xml:873
msgid ""
"Tells the parent [Container] nodes how they should resize and place the node "
"on the Y axis. Use one of the [enum SizeFlags] constants to change the "
"flags. See the constants to learn what each does."
msgstr ""
-#: doc/classes/Control.xml:874
+#: doc/classes/Control.xml:876
msgid ""
"Changing this property replaces the current [Theme] resource this node and "
"all its [Control] children use."
msgstr ""
-#: doc/classes/Control.xml:880
+#: doc/classes/Control.xml:882
msgid "Emitted when the node gains keyboard focus."
msgstr ""
-#: doc/classes/Control.xml:885
+#: doc/classes/Control.xml:887
msgid "Emitted when the node loses keyboard focus."
msgstr ""
-#: doc/classes/Control.xml:892
+#: doc/classes/Control.xml:894
msgid "Emitted when the node receives an [InputEvent]."
msgstr ""
-#: doc/classes/Control.xml:897
+#: doc/classes/Control.xml:899
msgid "Emitted when the node's minimum size changes."
msgstr ""
-#: doc/classes/Control.xml:902
+#: doc/classes/Control.xml:904
msgid ""
"Emitted when the mouse enters the control's [code]Rect[/code] area, provided "
"its [member mouse_filter] lets the event reach it."
msgstr ""
-#: doc/classes/Control.xml:907
+#: doc/classes/Control.xml:909
msgid ""
"Emitted when the mouse leaves the control's [code]Rect[/code] area, provided "
"its [member mouse_filter] lets the event reach it."
msgstr ""
-#: doc/classes/Control.xml:912
+#: doc/classes/Control.xml:914
msgid "Emitted when the control changes size."
msgstr ""
-#: doc/classes/Control.xml:917
+#: doc/classes/Control.xml:919
msgid ""
"Emitted when one of the size flags changes. See [member "
"size_flags_horizontal] and [member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:927
+#: doc/classes/Control.xml:929
msgid "The node cannot grab focus. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:930
+#: doc/classes/Control.xml:932
msgid ""
"The node can only grab focus on mouse clicks. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:933
+#: doc/classes/Control.xml:935
msgid ""
"The node can grab focus on mouse click or using the arrows and the Tab keys "
"on the keyboard. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:936
+#: doc/classes/Control.xml:938
msgid ""
"Sent when the node changes size. Use [member rect_size] to get the new size."
msgstr ""
-#: doc/classes/Control.xml:939
+#: doc/classes/Control.xml:941
msgid "Sent when the mouse pointer enters the node."
msgstr ""
-#: doc/classes/Control.xml:942
+#: doc/classes/Control.xml:944
msgid "Sent when the mouse pointer exits the node."
msgstr ""
-#: doc/classes/Control.xml:945
+#: doc/classes/Control.xml:947
msgid "Sent when the node grabs focus."
msgstr ""
-#: doc/classes/Control.xml:948
+#: doc/classes/Control.xml:950
msgid "Sent when the node loses focus."
msgstr ""
-#: doc/classes/Control.xml:951
+#: doc/classes/Control.xml:953
msgid ""
"Sent when the node's [member theme] changes, right before Godot redraws the "
"control. Happens when you call one of the [code]add_theme_*_override[/code] "
"methods."
msgstr ""
-#: doc/classes/Control.xml:954
+#: doc/classes/Control.xml:956
msgid ""
"Sent when this node is inside a [ScrollContainer] which has begun being "
"scrolled."
msgstr ""
-#: doc/classes/Control.xml:957
+#: doc/classes/Control.xml:959
msgid ""
"Sent when this node is inside a [ScrollContainer] which has stopped being "
"scrolled."
msgstr ""
-#: doc/classes/Control.xml:960
+#: doc/classes/Control.xml:962
msgid ""
"Show the system's arrow mouse cursor when the user hovers the node. Use with "
"[member mouse_default_cursor_shape]."
msgstr ""
-#: doc/classes/Control.xml:963
+#: doc/classes/Control.xml:965
msgid ""
"Show the system's I-beam mouse cursor when the user hovers the node. The I-"
"beam pointer has a shape similar to \"I\". It tells the user they can "
"highlight or insert text."
msgstr ""
-#: doc/classes/Control.xml:966
+#: doc/classes/Control.xml:968
msgid ""
"Show the system's pointing hand mouse cursor when the user hovers the node."
msgstr ""
-#: doc/classes/Control.xml:969
+#: doc/classes/Control.xml:971
msgid "Show the system's cross mouse cursor when the user hovers the node."
msgstr ""
-#: doc/classes/Control.xml:972
+#: doc/classes/Control.xml:974
msgid ""
"Show the system's wait mouse cursor, often an hourglass, when the user "
"hovers the node."
msgstr ""
-#: doc/classes/Control.xml:975
+#: doc/classes/Control.xml:977
msgid ""
"Show the system's busy mouse cursor when the user hovers the node. Often an "
"hourglass."
msgstr ""
-#: doc/classes/Control.xml:978
+#: doc/classes/Control.xml:980
msgid ""
"Show the system's drag mouse cursor, often a closed fist or a cross symbol, "
"when the user hovers the node. It tells the user they're currently dragging "
"an item, like a node in the Scene dock."
msgstr ""
-#: doc/classes/Control.xml:981
+#: doc/classes/Control.xml:983
msgid ""
"Show the system's drop mouse cursor when the user hovers the node. It can be "
"an open hand. It tells the user they can drop an item they're currently "
"grabbing, like a node in the Scene dock."
msgstr ""
-#: doc/classes/Control.xml:984
+#: doc/classes/Control.xml:986
msgid ""
"Show the system's forbidden mouse cursor when the user hovers the node. "
"Often a crossed circle."
msgstr ""
-#: doc/classes/Control.xml:987
+#: doc/classes/Control.xml:989
msgid ""
"Show the system's vertical resize mouse cursor when the user hovers the "
"node. A double-headed vertical arrow. It tells the user they can resize the "
"window or the panel vertically."
msgstr ""
-#: doc/classes/Control.xml:990
+#: doc/classes/Control.xml:992
msgid ""
"Show the system's horizontal resize mouse cursor when the user hovers the "
"node. A double-headed horizontal arrow. It tells the user they can resize "
"the window or the panel horizontally."
msgstr ""
-#: doc/classes/Control.xml:993
+#: doc/classes/Control.xml:995
msgid ""
"Show the system's window resize mouse cursor when the user hovers the node. "
"The cursor is a double-headed arrow that goes from the bottom left to the "
@@ -14858,7 +15087,7 @@ msgid ""
"horizontally and vertically."
msgstr ""
-#: doc/classes/Control.xml:996
+#: doc/classes/Control.xml:998
msgid ""
"Show the system's window resize mouse cursor when the user hovers the node. "
"The cursor is a double-headed arrow that goes from the top left to the "
@@ -14866,93 +15095,93 @@ msgid ""
"they can resize the window or the panel both horizontally and vertically."
msgstr ""
-#: doc/classes/Control.xml:999
+#: doc/classes/Control.xml:1001
msgid ""
"Show the system's move mouse cursor when the user hovers the node. It shows "
"2 double-headed arrows at a 90 degree angle. It tells the user they can move "
"a UI element freely."
msgstr ""
-#: doc/classes/Control.xml:1002
+#: doc/classes/Control.xml:1004
msgid ""
"Show the system's vertical split mouse cursor when the user hovers the node. "
"On Windows, it's the same as [constant CURSOR_VSIZE]."
msgstr ""
-#: doc/classes/Control.xml:1005
+#: doc/classes/Control.xml:1007
msgid ""
"Show the system's horizontal split mouse cursor when the user hovers the "
"node. On Windows, it's the same as [constant CURSOR_HSIZE]."
msgstr ""
-#: doc/classes/Control.xml:1008
+#: doc/classes/Control.xml:1010
msgid ""
"Show the system's help mouse cursor when the user hovers the node, a "
"question mark."
msgstr ""
-#: doc/classes/Control.xml:1011
+#: doc/classes/Control.xml:1013
msgid ""
"Snap all 4 anchors to the top-left of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1014
+#: doc/classes/Control.xml:1016
msgid ""
"Snap all 4 anchors to the top-right of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1017
+#: doc/classes/Control.xml:1019
msgid ""
"Snap all 4 anchors to the bottom-left of the parent control's bounds. Use "
"with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1020
+#: doc/classes/Control.xml:1022
msgid ""
"Snap all 4 anchors to the bottom-right of the parent control's bounds. Use "
"with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1023
+#: doc/classes/Control.xml:1025
msgid ""
"Snap all 4 anchors to the center of the left edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1026
+#: doc/classes/Control.xml:1028
msgid ""
"Snap all 4 anchors to the center of the top edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1029
+#: doc/classes/Control.xml:1031
msgid ""
"Snap all 4 anchors to the center of the right edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1032
+#: doc/classes/Control.xml:1034
msgid ""
"Snap all 4 anchors to the center of the bottom edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1035
+#: doc/classes/Control.xml:1037
msgid ""
"Snap all 4 anchors to the center of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1038
+#: doc/classes/Control.xml:1040
msgid ""
"Snap all 4 anchors to the left edge of the parent control. The left margin "
"becomes relative to the left edge and the top margin relative to the top "
"left corner of the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1041
+#: doc/classes/Control.xml:1043
msgid ""
"Snap all 4 anchors to the top edge of the parent control. The left margin "
"becomes relative to the top left corner, the top margin relative to the top "
@@ -14960,14 +15189,14 @@ msgid ""
"parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1044
+#: doc/classes/Control.xml:1046
msgid ""
"Snap all 4 anchors to the right edge of the parent control. The right margin "
"becomes relative to the right edge and the top margin relative to the top "
"right corner of the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1047
+#: doc/classes/Control.xml:1049
msgid ""
"Snap all 4 anchors to the bottom edge of the parent control. The left margin "
"becomes relative to the bottom left corner, the bottom margin relative to "
@@ -14975,19 +15204,19 @@ msgid ""
"the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1050
+#: doc/classes/Control.xml:1052
msgid ""
"Snap all 4 anchors to a vertical line that cuts the parent control in half. "
"Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1053
+#: doc/classes/Control.xml:1055
msgid ""
"Snap all 4 anchors to a horizontal line that cuts the parent control in "
"half. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1056
+#: doc/classes/Control.xml:1058
msgid ""
"Snap all 4 anchors to the respective corners of the parent control. Set all "
"4 margins to 0 after you applied this preset and the [Control] will fit its "
@@ -14995,30 +15224,30 @@ msgid ""
"editor. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1059
+#: doc/classes/Control.xml:1061
msgid "The control will be resized to its minimum size."
msgstr ""
-#: doc/classes/Control.xml:1062
+#: doc/classes/Control.xml:1064
msgid "The control's width will not change."
msgstr ""
-#: doc/classes/Control.xml:1065
+#: doc/classes/Control.xml:1067
msgid "The control's height will not change."
msgstr ""
-#: doc/classes/Control.xml:1068
+#: doc/classes/Control.xml:1070
msgid "The control's size will not change."
msgstr ""
-#: doc/classes/Control.xml:1071
+#: doc/classes/Control.xml:1073
msgid ""
"Tells the parent [Container] to expand the bounds of this node to fill all "
"the available space without pushing any other node. Use with [member "
"size_flags_horizontal] and [member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1074
+#: doc/classes/Control.xml:1076
msgid ""
"Tells the parent [Container] to let this node take all the available space "
"on the axis you flag. If multiple neighboring nodes are set to expand, "
@@ -15027,13 +15256,13 @@ msgid ""
"[member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1077
+#: doc/classes/Control.xml:1079
msgid ""
"Sets the node's size flags to both fill and expand. See the 2 constants "
"above for more information."
msgstr ""
-#: doc/classes/Control.xml:1080
+#: doc/classes/Control.xml:1082
msgid ""
"Tells the parent [Container] to center the node in itself. It centers the "
"control based on its bounding box, so it doesn't work with the fill or "
@@ -15041,7 +15270,7 @@ msgid ""
"size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1083
+#: doc/classes/Control.xml:1085
msgid ""
"Tells the parent [Container] to align the node with its end, either the "
"bottom or the right edge. It doesn't work with the fill or expand size "
@@ -15049,7 +15278,7 @@ msgid ""
"size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1086
+#: doc/classes/Control.xml:1088
msgid ""
"The control will receive mouse button input events through [method "
"_gui_input] if clicked on. And the control will receive the [signal "
@@ -15058,7 +15287,7 @@ msgid ""
"other controls. This also results in blocking signals in other controls."
msgstr ""
-#: doc/classes/Control.xml:1089
+#: doc/classes/Control.xml:1091
msgid ""
"The control will receive mouse button input events through [method "
"_gui_input] if clicked on. And the control will receive the [signal "
@@ -15070,7 +15299,7 @@ msgid ""
"not be fired."
msgstr ""
-#: doc/classes/Control.xml:1092
+#: doc/classes/Control.xml:1094
msgid ""
"The control will not receive mouse button input events through [method "
"_gui_input]. The control will also not receive the [signal mouse_entered] "
@@ -15079,25 +15308,25 @@ msgid ""
"handled automatically."
msgstr ""
-#: doc/classes/Control.xml:1095
+#: doc/classes/Control.xml:1097
msgid ""
"The control will grow to the left or top to make up if its minimum size is "
"changed to be greater than its current size on the respective axis."
msgstr ""
-#: doc/classes/Control.xml:1098
+#: doc/classes/Control.xml:1100
msgid ""
"The control will grow to the right or bottom to make up if its minimum size "
"is changed to be greater than its current size on the respective axis."
msgstr ""
-#: doc/classes/Control.xml:1101
+#: doc/classes/Control.xml:1103
msgid ""
"The control will grow in both directions equally to make up if its minimum "
"size is changed to be greater than its current size."
msgstr ""
-#: doc/classes/Control.xml:1104
+#: doc/classes/Control.xml:1106
msgid ""
"Snaps one of the 4 anchor's sides to the origin of the node's [code]Rect[/"
"code], in the top left. Use it with one of the [code]anchor_*[/code] member "
@@ -15105,7 +15334,7 @@ msgid ""
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1107
+#: doc/classes/Control.xml:1109
msgid ""
"Snaps one of the 4 anchor's sides to the end of the node's [code]Rect[/"
"code], in the bottom right. Use it with one of the [code]anchor_*[/code] "
@@ -15172,6 +15401,7 @@ msgstr ""
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/2d/particle_systems_2d.html"
msgstr ""
+"https://docs.godotengine.org/de/latest/tutorials/2d/particle_systems_2d.html"
#: doc/classes/CPUParticles2D.xml:20
msgid ""
@@ -16317,11 +16547,12 @@ msgid ""
msgstr ""
#: modules/mono/doc_classes/CSharpScript.xml:11
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/latest/getting_started/scripting/c_sharp/"
"index.html"
-msgstr "https://docs.godotengine.org/de/latest/tutorials/math/index.html"
+msgstr ""
+"https://docs.godotengine.org/en/latest/getting_started/scripting/c_sharp/"
+"index.html"
#: modules/mono/doc_classes/CSharpScript.xml:18
#: modules/gdnative/doc_classes/PluginScript.xml:14
@@ -16891,7 +17122,7 @@ msgstr ""
msgid ""
"Returns the [Texture2D] associated with the specified [enum DecalTexture]. "
"This is a convenience method, in most cases you should access the texture "
-"directly. \n"
+"directly.\n"
"For example, instead of [code]albedo_tex = $Decal.get_texture(Decal."
"TEXTURE_ALBEDO)[/code], use [code]albedo_tex = $Decal.texture_albedo[/"
"code].\n"
@@ -16907,7 +17138,7 @@ msgstr ""
msgid ""
"Sets the [Texture2D] associated with the specified [enum DecalTexture]. This "
"is a convenience method, in most cases you should access the texture "
-"directly. \n"
+"directly.\n"
"For example, instead of [code]$Decal.set_texture(Decal.TEXTURE_ALBEDO, "
"albedo_tex)[/code], use [code]$Decal.texture_albedo = albedo_tex[/code].\n"
"One case where this is better than accessing the texture directly is when "
@@ -17131,6 +17362,8 @@ msgid ""
"https://docs.godotengine.org/en/latest/getting_started/scripting/gdscript/"
"gdscript_basics.html#dictionary"
msgstr ""
+"https://docs.godotengine.org/de/latest/getting_started/scripting/gdscript/"
+"gdscript_basics.html#dictionary"
#: doc/classes/Dictionary.xml:83
msgid "Clear the dictionary, removing all key/value pairs."
@@ -17228,6 +17461,7 @@ msgstr ""
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/lights_and_shadows.html"
msgstr ""
+"https://docs.godotengine.org/de/latest/tutorials/3d/lights_and_shadows.html"
#: doc/classes/DirectionalLight3D.xml:16
msgid ""
@@ -17256,7 +17490,7 @@ msgstr ""
msgid "The light's shadow rendering algorithm. See [enum ShadowMode]."
msgstr ""
-#: doc/classes/DirectionalLight3D.xml:31 doc/classes/RenderingServer.xml:3254
+#: doc/classes/DirectionalLight3D.xml:31 doc/classes/RenderingServer.xml:3250
msgid ""
"Sets the size of the directional shadow pancake. The pancake offsets the "
"start of the shadow's camera frustum to provide a higher effective depth "
@@ -17330,10 +17564,10 @@ msgstr ""
msgid ""
"Directory type. It is used to manage directories and their content (not "
"restricted to the project folder).\n"
-"When creating a new [Directory], its default opened directory will be "
-"[code]res://[/code]. This may change in the future, so it is advised to "
-"always use [method open] to initialize your [Directory] where you want to "
-"operate, with explicit error checking.\n"
+"When creating a new [Directory], it must be explicitly opened using [method "
+"open] before most methods can be used. However, [method file_exists] and "
+"[method dir_exists] can be used without opening a directory. If so, they use "
+"a path relative to [code]res://[/code].\n"
"Here is an example on how to iterate through the files of a directory:\n"
"[codeblock]\n"
"func dir_contents(path):\n"
@@ -17352,11 +17586,13 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Directory.xml:27 doc/classes/File.xml:25
+#: doc/classes/Directory.xml:27 doc/classes/File.xml:26
msgid ""
"https://docs.godotengine.org/en/latest/getting_started/step_by_step/"
"filesystem.html"
msgstr ""
+"https://docs.godotengine.org/de/latest/getting_started/step_by_step/"
+"filesystem.html"
#: doc/classes/Directory.xml:36
msgid ""
@@ -17386,41 +17622,43 @@ msgstr ""
#: doc/classes/Directory.xml:65
msgid ""
"Returns whether the target directory exists. The argument can be relative to "
-"the current directory, or an absolute path."
+"the current directory, or an absolute path.\n"
+"If the [Directory] is not open, the path is relative to [code]res://[/code]."
msgstr ""
-#: doc/classes/Directory.xml:74
+#: doc/classes/Directory.xml:75
msgid ""
"Returns whether the target file exists. The argument can be relative to the "
-"current directory, or an absolute path."
+"current directory, or an absolute path.\n"
+"If the [Directory] is not open, the path is relative to [code]res://[/code]."
msgstr ""
-#: doc/classes/Directory.xml:81
+#: doc/classes/Directory.xml:83
msgid ""
"Returns the absolute path to the currently opened directory (e.g. "
"[code]res://folder[/code] or [code]C:\\tmp\\folder[/code])."
msgstr ""
-#: doc/classes/Directory.xml:88
+#: doc/classes/Directory.xml:90
msgid ""
"Returns the currently opened directory's drive index. See [method get_drive] "
"to convert returned index to the name of the drive."
msgstr ""
-#: doc/classes/Directory.xml:97
+#: doc/classes/Directory.xml:99
msgid ""
"On Windows, returns the name of the drive (partition) passed as an argument "
"(e.g. [code]C:[/code]). On other platforms, or if the requested drive does "
"not existed, the method returns an empty String."
msgstr ""
-#: doc/classes/Directory.xml:104
+#: doc/classes/Directory.xml:106
msgid ""
"On Windows, returns the number of drives (partitions) mounted on the current "
"filesystem. On other platforms, the method returns 0."
msgstr ""
-#: doc/classes/Directory.xml:111
+#: doc/classes/Directory.xml:113
msgid ""
"Returns the next element (file or directory) in the current directory "
"(including [code].[/code] and [code]..[/code], unless "
@@ -17431,14 +17669,14 @@ msgid ""
"mandatory in such a case)."
msgstr ""
-#: doc/classes/Directory.xml:119
+#: doc/classes/Directory.xml:121
msgid ""
"On UNIX desktop systems, returns the available space on the current "
"directory's disk. On other platforms, this information is not available and "
"the method returns 0 or -1."
msgstr ""
-#: doc/classes/Directory.xml:130
+#: doc/classes/Directory.xml:132
msgid ""
"Initializes the stream used to list all files and directories using the "
"[method get_next] function, closing the current opened stream if needed. "
@@ -17450,13 +17688,13 @@ msgid ""
"out."
msgstr ""
-#: doc/classes/Directory.xml:139
+#: doc/classes/Directory.xml:141
msgid ""
"Closes the current stream opened with [method list_dir_begin] (whether it "
"has been fully processed with [method get_next] or not does not matter)."
msgstr ""
-#: doc/classes/Directory.xml:148
+#: doc/classes/Directory.xml:150
msgid ""
"Creates a directory. The argument can be relative to the current directory, "
"or an absolute path. The target directory should be placed in an already "
@@ -17465,7 +17703,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:158
+#: doc/classes/Directory.xml:160
msgid ""
"Creates a target directory and all necessary intermediate directories in its "
"path, by calling [method make_dir] recursively. The argument can be relative "
@@ -17473,7 +17711,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:168
+#: doc/classes/Directory.xml:170
msgid ""
"Opens an existing directory of the filesystem. The [code]path[/code] "
"argument can be within the project tree ([code]res://folder[/code]), the "
@@ -17482,7 +17720,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:178
+#: doc/classes/Directory.xml:180
msgid ""
"Deletes the target file or an empty directory. The argument can be relative "
"to the current directory, or an absolute path. If the target directory is "
@@ -17490,7 +17728,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:190
+#: doc/classes/Directory.xml:192
msgid ""
"Renames (move) the [code]from[/code] file to the [code]to[/code] "
"destination. Both arguments should be paths to files, either relative or "
@@ -17531,6 +17769,53 @@ msgid ""
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
+#: doc/classes/DisplayServer.xml:530
+msgid ""
+"Return the greatest scale factor of all screens.\n"
+"[b]Note:[/b] On macOS returned value is [code]2.0[/code] if there is at "
+"least one hiDPI (Retina) screen in the system, and [code]1.0[/code] in all "
+"other cases.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:557
+msgid ""
+"Return the scale factor of the specified screen by index.\n"
+"[b]Note:[/b] On macOS returned value is [code]2.0[/code] for hiDPI (Retina) "
+"screen, and [code]1.0[/code] for all other cases.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:630
+msgid ""
+"Returns the on-screen keyboard's height in pixels. Returns 0 if there is no "
+"keyboard or if it is currently hidden."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:637
+msgid "Hides the virtual keyboard if it is shown, does nothing otherwise."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:656
+msgid ""
+"Shows the virtual keyboard if the platform has one.\n"
+"[code]existing_text[/code] parameter is useful for implementing your own "
+"[LineEdit] or [TextEdit], as it tells the virtual keyboard what text has "
+"already been typed (the virtual keyboard uses it for auto-correct and "
+"predictions).\n"
+"[code]position[/code] parameter is the screen space [Rect2] of the edited "
+"text.\n"
+"[code]multiline[/code] parameter needs to be set to [code]true[/code] to be "
+"able to enter multiple lines of text, as in [TextEdit].\n"
+"[code]max_length[/code] limits the number of characters that can be entered "
+"if different from [code]-1[/code].\n"
+"[code]cursor_start[/code] can optionally define the current text cursor "
+"position if [code]cursor_end[/code] is not set.\n"
+"[code]cursor_start[/code] and [code]cursor_end[/code] can optionally define "
+"the current text selection.\n"
+"[b]Note:[/b] This method is implemented on Android, iOS and UWP."
+msgstr ""
+
#: doc/classes/DTLSServer.xml:4
msgid "Helper class to implement a DTLS server."
msgstr ""
@@ -17651,54 +17936,62 @@ msgstr ""
msgid "Adds a fallback font."
msgstr ""
-#: doc/classes/DynamicFont.xml:35
+#: doc/classes/DynamicFont.xml:33
+msgid ""
+"Returns a string containing all the characters available in the main and all "
+"the fallback fonts.\n"
+"If a given character is included in more than one font, it appears only once "
+"in the returned string."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:43
msgid "Returns the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:42
+#: doc/classes/DynamicFont.xml:50
msgid "Returns the number of fallback fonts."
msgstr ""
-#: doc/classes/DynamicFont.xml:51
+#: doc/classes/DynamicFont.xml:59
msgid ""
"Returns the spacing for the given [code]type[/code] (see [enum SpacingType])."
msgstr ""
-#: doc/classes/DynamicFont.xml:60
+#: doc/classes/DynamicFont.xml:68
msgid "Removes the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:71
+#: doc/classes/DynamicFont.xml:79
msgid "Sets the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:82
+#: doc/classes/DynamicFont.xml:90
msgid ""
"Sets the spacing for [code]type[/code] (see [enum SpacingType]) to "
"[code]value[/code] in pixels (not relative to the font size)."
msgstr ""
-#: doc/classes/DynamicFont.xml:88
+#: doc/classes/DynamicFont.xml:96
msgid "Extra spacing at the bottom in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:91
+#: doc/classes/DynamicFont.xml:99
msgid "Extra character spacing in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:94
+#: doc/classes/DynamicFont.xml:102
msgid "Extra space spacing in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:97
+#: doc/classes/DynamicFont.xml:105
msgid "Extra spacing at the top in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:100
+#: doc/classes/DynamicFont.xml:108
msgid "The font data."
msgstr ""
-#: doc/classes/DynamicFont.xml:103
+#: doc/classes/DynamicFont.xml:111
msgid ""
"The font outline's color.\n"
"[b]Note:[/b] It's recommended to leave this at the default value so that you "
@@ -17707,27 +18000,27 @@ msgid ""
"outline modulate theme item."
msgstr ""
-#: doc/classes/DynamicFont.xml:107
+#: doc/classes/DynamicFont.xml:115
msgid "The font outline's thickness in pixels (not relative to the font size)."
msgstr ""
-#: doc/classes/DynamicFont.xml:110
+#: doc/classes/DynamicFont.xml:118
msgid "The font size in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:115
+#: doc/classes/DynamicFont.xml:123
msgid "Spacing at the top."
msgstr ""
-#: doc/classes/DynamicFont.xml:118
+#: doc/classes/DynamicFont.xml:126
msgid "Spacing at the bottom."
msgstr ""
-#: doc/classes/DynamicFont.xml:121
+#: doc/classes/DynamicFont.xml:129
msgid "Character spacing."
msgstr ""
-#: doc/classes/DynamicFont.xml:124
+#: doc/classes/DynamicFont.xml:132
msgid "Space spacing."
msgstr ""
@@ -18109,7 +18402,12 @@ msgstr ""
msgid "Remitted if a resource is reimported."
msgstr ""
-#: doc/classes/EditorFileSystem.xml:106
+#: doc/classes/EditorFileSystem.xml:100
+msgid ""
+"Emitted if at least one resource is reloaded when the filesystem is scanned."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:107
msgid "Emitted if the source of any imported file changed."
msgstr ""
@@ -18151,29 +18449,43 @@ msgstr ""
msgid "Returns the path to the file at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:86
+#: doc/classes/EditorFileSystemDirectory.xml:70
+msgid ""
+"Returns the base class of the script class defined in the file at index "
+"[code]idx[/code]. If the file doesn't define a script class using the "
+"[code]class_name[/code] syntax, this will return an empty string."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:79
+msgid ""
+"Returns the name of the script class defined in the file at index [code]idx[/"
+"code]. If the file doesn't define a script class using the [code]class_name[/"
+"code] syntax, this will return an empty string."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:88
msgid "Returns the file extension of the file at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:93
+#: doc/classes/EditorFileSystemDirectory.xml:95
msgid "Returns the name of this directory."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:100
+#: doc/classes/EditorFileSystemDirectory.xml:102
msgid ""
"Returns the parent directory for this directory or [code]null[/code] if "
"called on a directory at [code]res://[/code] or [code]user://[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:107
+#: doc/classes/EditorFileSystemDirectory.xml:109
msgid "Returns the path to this directory."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:116
+#: doc/classes/EditorFileSystemDirectory.xml:118
msgid "Returns the subdirectory at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:123
+#: doc/classes/EditorFileSystemDirectory.xml:125
msgid "Returns the number of subdirectories in this directory."
msgstr ""
@@ -18244,6 +18556,8 @@ msgid ""
"https://docs.godotengine.org/en/latest/tutorials/plugins/editor/"
"import_plugins.html"
msgstr ""
+"https://docs.godotengine.org/de/latest/tutorials/plugins/editor/"
+"import_plugins.html"
#: doc/classes/EditorImportPlugin.xml:61
msgid ""
@@ -18264,45 +18578,72 @@ msgstr ""
msgid "Gets the unique name of the importer."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:92
+#: doc/classes/EditorImportPlugin.xml:86
+msgid ""
+"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. For example:\n"
+"[codeblock]\n"
+"func get_option_visibility(option, options):\n"
+" # Only show the lossy quality setting if the compression mode is set to "
+"\"Lossy\".\n"
+" if option == \"compress/lossy_quality\" and options.has(\"compress/mode"
+"\"):\n"
+" return int(options[\"compress/mode\"]) == COMPRESS_LOSSY\n"
+"\n"
+" return true\n"
+"[/codeblock]\n"
+"Return [code]true[/code] to make all options always visible."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:102
msgid ""
"Gets the number of initial presets defined by the plugin. Use [method "
"get_import_options] to get the default options for the preset and [method "
"get_preset_name] to get the name of the preset."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:101
+#: doc/classes/EditorImportPlugin.xml:111
msgid "Gets the name of the options preset at this index."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:108
+#: doc/classes/EditorImportPlugin.xml:118
msgid ""
"Gets the priority of this plugin for the recognized extension. Higher "
"priority plugins will be preferred. The default priority is [code]1.0[/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:115
+#: doc/classes/EditorImportPlugin.xml:125
msgid ""
"Gets the list of file extensions to associate with this loader (case-"
"insensitive). e.g. [code][\"obj\"][/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:122
+#: doc/classes/EditorImportPlugin.xml:132
msgid ""
"Gets the Godot resource type associated with this loader. e.g. [code]\"Mesh"
"\"[/code] or [code]\"Animation\"[/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:129
+#: doc/classes/EditorImportPlugin.xml:139
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:136
+#: doc/classes/EditorImportPlugin.xml:146
msgid "Gets the name to display in the import window."
msgstr ""
+#: doc/classes/EditorImportPlugin.xml:163
+msgid ""
+"Imports [code]source_file[/code] into [code]save_path[/code] with the import "
+"[code]options[/code] specified. The [code]platform_variants[/code] and "
+"[code]gen_files[/code] arrays will be modified by this function.\n"
+"This method must be overridden to do the actual importing work. See this "
+"class' description for an example of overriding this method."
+msgstr ""
+
#: doc/classes/EditorInspector.xml:4
msgid "A tab used to edit properties of the selected node."
msgstr ""
@@ -18318,6 +18659,58 @@ msgid ""
"the singleton using [method EditorInterface.get_inspector]."
msgstr ""
+#: doc/classes/EditorInspector.xml:17
+msgid ""
+"Refreshes the inspector.\n"
+"[b]Note:[/b] To save on CPU resources, calling this method will do nothing "
+"if the time specified in [code]docks/property_editor/auto_refresh_interval[/"
+"code] editor setting hasn't passed yet since this method was last called. "
+"(By default, this interval is set to 0.3 seconds.)"
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:30
+msgid ""
+"Emitted when the Edit button of an [Object] has been pressed in the "
+"inspector. This is mainly used in the remote scene tree inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:37
+msgid "Emitted when a property is removed from the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:44
+msgid "Emitted when a property is edited in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:51
+msgid ""
+"Emitted when a property is keyed in the inspector. Properties can be keyed "
+"by clicking the \"key\" icon next to a property when the Animation panel is "
+"toggled."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:58
+msgid "Emitted when a property is selected in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:67
+msgid ""
+"Emitted when a boolean property is toggled in the inspector.\n"
+"[b]Note:[/b] This signal is never emitted if the internal [code]autoclear[/"
+"code] property enabled. Since this property is always enabled in the editor "
+"inspector, this signal is never emitted by the editor itself."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:77
+msgid "Emitted when a resource is selected in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:82
+msgid ""
+"Emitted when a property that requires a restart to be applied is edited in "
+"the inspector. This is only used in the Project Settings and Editor Settings."
+msgstr ""
+
#: doc/classes/EditorInspectorPlugin.xml:4
msgid "Plugin for adding custom property editors on inspector."
msgstr ""
@@ -18396,91 +18789,167 @@ msgstr ""
#: doc/classes/EditorInterface.xml:26
msgid ""
-"Returns the main container of Godot editor's window. You can use it, for "
-"example, to retrieve the size of the container and place your controls "
+"Returns the main container of Godot editor's window. For example, you can "
+"use it to retrieve the size of the container and place your controls "
"accordingly."
msgstr ""
-#: doc/classes/EditorInterface.xml:39
-msgid "Returns the edited (current) scene's root [Node]."
+#: doc/classes/EditorInterface.xml:33
+msgid "Returns the current path being viewed in the [FileSystemDock]."
msgstr ""
-#: doc/classes/EditorInterface.xml:46
-msgid "Returns the [EditorSettings]."
+#: doc/classes/EditorInterface.xml:40
+msgid "Returns the edited (current) scene's root [Node]."
msgstr ""
-#: doc/classes/EditorInterface.xml:53
-msgid "Returns the editor [Viewport]."
+#: doc/classes/EditorInterface.xml:47
+#, fuzzy
+msgid "Returns the editor's [EditorSettings] instance."
+msgstr "Gibt die Länge des Vektors zurück."
+
+#: doc/classes/EditorInterface.xml:54
+msgid ""
+"Returns the main editor control. Use this as a parent for main screens.\n"
+"[b]Note:[/b] This returns the main editor control containing the whole "
+"editor, not the 2D or 3D viewports specifically."
msgstr ""
-#: doc/classes/EditorInterface.xml:72
+#: doc/classes/EditorInterface.xml:62
+#, fuzzy
+msgid "Returns the editor's [FileSystemDock] instance."
+msgstr "Gibt die Länge des Vektors zurück."
+
+#: doc/classes/EditorInterface.xml:69
+#, fuzzy
+msgid "Returns the editor's [EditorInspector] instance."
+msgstr "Gibt die Länge des Vektors zurück."
+
+#: doc/classes/EditorInterface.xml:76
msgid "Returns an [Array] with the file paths of the currently opened scenes."
msgstr ""
-#: doc/classes/EditorInterface.xml:79
-msgid "Returns the [EditorFileSystem]."
+#: doc/classes/EditorInterface.xml:83
+msgid ""
+"Returns the name of the scene that is being played. If no scene is currently "
+"being played, returns an empty string."
msgstr ""
-#: doc/classes/EditorInterface.xml:86
-msgid "Returns the [EditorResourcePreview]."
-msgstr ""
+#: doc/classes/EditorInterface.xml:90
+#, fuzzy
+msgid "Returns the editor's [EditorFileSystem] instance."
+msgstr "Gibt die Länge des Vektors zurück."
-#: doc/classes/EditorInterface.xml:93
-msgid "Returns the [ScriptEditor]."
+#: doc/classes/EditorInterface.xml:97
+msgid "Returns the editor's [EditorResourcePreview] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:106
-msgid "Returns the [EditorSelection]."
+#: doc/classes/EditorInterface.xml:104
+#, fuzzy
+msgid "Returns the editor's [ScriptEditor] instance."
+msgstr "Gibt die Länge des Vektors zurück."
+
+#: doc/classes/EditorInterface.xml:111
+msgid ""
+"Returns the path of the directory currently selected in the "
+"[FileSystemDock]. If a file is selected, its base directory will be returned "
+"using [method String.get_base_dir] instead."
msgstr ""
-#: doc/classes/EditorInterface.xml:117
+#: doc/classes/EditorInterface.xml:118
+#, fuzzy
+msgid "Returns the editor's [EditorSelection] instance."
+msgstr "Gibt die Länge des Vektors zurück."
+
+#: doc/classes/EditorInterface.xml:129
msgid ""
-"Shows the given property on the given [code]object[/code] in the Editor's "
+"Shows the given property on the given [code]object[/code] in the editor's "
"Inspector dock."
msgstr ""
-#: doc/classes/EditorInterface.xml:126
+#: doc/classes/EditorInterface.xml:136
+#, fuzzy
msgid ""
-"Returns the enabled status of a plugin. The plugin name is the same as its "
-"directory name."
+"Returns [code]true[/code] if a scene is currently being played, [code]false[/"
+"code] otherwise. Paused scenes are considered as being played."
+msgstr ""
+"Gibt [code]true[/code] zurück wenn dieser Bereich vollendet ist, ansonsten "
+"[code]false[/code]."
+
+#: doc/classes/EditorInterface.xml:145
+#, fuzzy
+msgid ""
+"Returns [code]true[/code] if the specified [code]plugin[/code] is enabled. "
+"The plugin name is the same as its directory name."
msgstr ""
+"Liefert als Ergebnis [code]wahr[/code] wenn [code]s[/code] Null oder fast "
+"Null ist."
-#: doc/classes/EditorInterface.xml:137
+#: doc/classes/EditorInterface.xml:156
msgid ""
"Returns mesh previews rendered at the given size as an [Array] of "
"[Texture2D]s."
msgstr ""
-#: doc/classes/EditorInterface.xml:146
+#: doc/classes/EditorInterface.xml:165
msgid "Opens the scene at the given path."
msgstr ""
-#: doc/classes/EditorInterface.xml:155
+#: doc/classes/EditorInterface.xml:172
+msgid "Plays the currently active scene."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:181
+msgid "Plays the scene specified by its filepath."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:188
+msgid "Plays the main scene."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:197
msgid "Reloads the scene at the given path."
msgstr ""
-#: doc/classes/EditorInterface.xml:162
+#: doc/classes/EditorInterface.xml:204
msgid ""
"Saves the scene. Returns either [code]OK[/code] or [code]ERR_CANT_CREATE[/"
"code] (see [@GlobalScope] constants)."
msgstr ""
-#: doc/classes/EditorInterface.xml:173
+#: doc/classes/EditorInterface.xml:215
msgid "Saves the scene as a file at [code]path[/code]."
msgstr ""
-#: doc/classes/EditorInterface.xml:182
+#: doc/classes/EditorInterface.xml:224
msgid ""
"Selects the file, with the path provided by [code]file[/code], in the "
"FileSystem dock."
msgstr ""
-#: doc/classes/EditorInterface.xml:201
+#: doc/classes/EditorInterface.xml:233
+msgid ""
+"Sets the editor's current main screen to the one specified in [code]name[/"
+"code]. [code]name[/code] must match the text of the tab in question exactly "
+"([code]2D[/code], [code]3D[/code], [code]Script[/code], [code]AssetLib[/"
+"code])."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:244
msgid ""
"Sets the enabled status of a plugin. The plugin name is the same as its "
"directory name."
msgstr ""
+#: doc/classes/EditorInterface.xml:251
+msgid "Stops the scene that is currently playing."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:257
+msgid ""
+"If [code]true[/code], enables distraction-free mode which hides side docks "
+"to increase the space available for the main view."
+msgstr ""
+
#: doc/classes/EditorNode3DGizmo.xml:4
msgid "Custom gizmo for editing Node3D objects."
msgstr ""
@@ -18492,14 +18961,20 @@ msgid ""
"information."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:26
+#: doc/classes/EditorNode3DGizmo.xml:18
+msgid ""
+"Adds the specified [code]segments[/code] to the gizmo's collision shape for "
+"picking. Call this function during [method redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:27
msgid ""
"Adds collision triangles to the gizmo for picking. A [TriangleMesh] can be "
"generated from a regular [Mesh] too. Call this function during [method "
"redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:41
+#: doc/classes/EditorNode3DGizmo.xml:42
msgid ""
"Adds a list of handles (points) which can be used to deform the object being "
"edited.\n"
@@ -18507,20 +18982,33 @@ msgid ""
"handles. Call this function during [method redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:57
+#: doc/classes/EditorNode3DGizmo.xml:58
msgid ""
"Adds lines to the gizmo (as sets of 2 points), with a given material. The "
"lines are used for visualizing the gizmo. Call this function during [method "
"redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:84
+#: doc/classes/EditorNode3DGizmo.xml:73
+msgid ""
+"Adds a mesh to the gizmo with the specified [code]billboard[/code] state, "
+"[code]skeleton[/code] and [code]material[/code]. If [code]billboard[/code] "
+"is [code]true[/code], the mesh will rotate to always face the camera. Call "
+"this function during [method redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:86
msgid ""
"Adds an unscaled billboard for visualization. Call this function during "
"[method redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:103
+#: doc/classes/EditorNode3DGizmo.xml:93
+msgid ""
+"Removes everything in the gizmo including meshes, collisions and handles."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:106
msgid ""
"Commit a handle being edited (handles must have been previously added by "
"[method add_handles]).\n"
@@ -18528,40 +19016,45 @@ msgid ""
"restore the edited value to the original is provided."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:113
+#: doc/classes/EditorNode3DGizmo.xml:116
msgid ""
"Gets the name of an edited handle (handles must have been previously added "
"by [method add_handles]).\n"
"Handles can be named for reference to the user when editing."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:123
+#: doc/classes/EditorNode3DGizmo.xml:126
msgid ""
"Gets actual value of a handle. This value can be anything and used for "
"eventually undoing the motion when calling [method commit_handle]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:130
+#: doc/classes/EditorNode3DGizmo.xml:133
msgid ""
"Returns the [EditorNode3DGizmoPlugin] that owns this gizmo. It's useful to "
"retrieve materials using [method EditorNode3DGizmoPlugin.get_material]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:137
+#: doc/classes/EditorNode3DGizmo.xml:140
msgid "Returns the Node3D node associated with this gizmo."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:146
-msgid "Gets whether a handle is highlighted or not."
+#: doc/classes/EditorNode3DGizmo.xml:149
+#, fuzzy
+msgid ""
+"Returns [code]true[/code] if the handle at index [code]index[/code] is "
+"highlighted by being hovered with the mouse."
msgstr ""
+"Gibt [code]true[/code] zurück wenn dieser Bereich vollendet ist, ansonsten "
+"[code]false[/code]."
-#: doc/classes/EditorNode3DGizmo.xml:153
+#: doc/classes/EditorNode3DGizmo.xml:156
msgid ""
-"This function is called when the Node3D this gizmo refers to changes (the "
+"This function is called when the [Node3D] this gizmo refers to changes (the "
"[method Node3D.update_gizmo] is called)."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:166
+#: doc/classes/EditorNode3DGizmo.xml:169
msgid ""
"This function is used when the user drags a gizmo handle (previously added "
"with [method add_handles]) in screen coordinates.\n"
@@ -18569,6 +19062,18 @@ msgid ""
"raycasts."
msgstr ""
+#: doc/classes/EditorNode3DGizmo.xml:179
+msgid ""
+"Sets the gizmo's hidden state. If [code]true[/code], the gizmo will be "
+"hidden. If [code]false[/code], it will be shown."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:188
+msgid ""
+"Sets the reference [Node3D] node for the gizmo. [code]node[/code] must "
+"inherit from [Node3D]."
+msgstr ""
+
#: doc/classes/EditorNode3DGizmoPlugin.xml:4
msgid "Used by the editor to define Node3D gizmo types."
msgstr ""
@@ -18586,6 +19091,8 @@ msgid ""
"https://docs.godotengine.org/en/latest/tutorials/plugins/editor/"
"spatial_gizmos.html"
msgstr ""
+"https://docs.godotengine.org/de/latest/tutorials/plugins/editor/"
+"spatial_gizmos.html"
#: doc/classes/EditorNode3DGizmoPlugin.xml:21
msgid ""
@@ -18661,7 +19168,17 @@ msgid ""
"visibility menu."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:150
+#: doc/classes/EditorNode3DGizmoPlugin.xml:142
+msgid ""
+"Override this method to set the gizmo's priority. Higher values correspond "
+"to higher priority. If a gizmo with higher priority conflicts with another "
+"gizmo, only the gizmo with higher priority will be used.\n"
+"All built-in editor gizmos return a priority of [code]-1[/code]. If not "
+"overridden, this method will return [code]0[/code], which means custom "
+"gizmos will automatically override built-in gizmos."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:152
msgid ""
"Override this method to define which Node3D nodes have a gizmo from this "
"plugin. Whenever a [Node3D] node is added to a scene this method is called, "
@@ -18669,25 +19186,25 @@ msgid ""
"assigned and is added to this plugin's list of active gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:161
+#: doc/classes/EditorNode3DGizmoPlugin.xml:163
msgid ""
"Gets whether a handle is highlighted or not. Called for this plugin's active "
"gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:168
+#: doc/classes/EditorNode3DGizmoPlugin.xml:170
msgid ""
"Override this method to define whether Node3D with this gizmo should be "
"selecteble even when the gizmo is hidden."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:177
+#: doc/classes/EditorNode3DGizmoPlugin.xml:179
msgid ""
"Callback to redraw the provided gizmo. Called for this plugin's active "
"gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:192
+#: doc/classes/EditorNode3DGizmoPlugin.xml:194
msgid ""
"Update the value of a handle after it has been updated. Called for this "
"plugin's active gizmos."
@@ -18709,6 +19226,7 @@ msgstr ""
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/plugins/editor/index.html"
msgstr ""
+"https://docs.godotengine.org/de/latest/tutorials/plugins/editor/index.html"
#: doc/classes/EditorPlugin.xml:21
msgid ""
@@ -18774,7 +19292,13 @@ msgid ""
"should be cleaned up using [code]remove_tool_menu_item(name)[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:149
+#: doc/classes/EditorPlugin.xml:151
+msgid ""
+"Registers a custom translation parser plugin for extracting translatable "
+"strings from custom files."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:158
msgid ""
"This method is called when the editor is about to save the project, switch "
"to another tab, etc. It asks the plugin to apply any pending state changes "
@@ -18783,32 +19307,32 @@ msgid ""
"must apply the shader code being written by the user to the object."
msgstr ""
-#: doc/classes/EditorPlugin.xml:163
+#: doc/classes/EditorPlugin.xml:172
msgid ""
"Clear all the state and reset the object being edited to zero. This ensures "
"your plugin does not keep editing a currently existing node, or a node from "
"the wrong scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:170
+#: doc/classes/EditorPlugin.xml:179
msgid ""
"Called by the engine when the user disables the [EditorPlugin] in the Plugin "
"tab of the project settings window."
msgstr ""
-#: doc/classes/EditorPlugin.xml:179
+#: doc/classes/EditorPlugin.xml:188
msgid ""
"This function is used for plugins that edit specific object types (nodes or "
"resources). It requests the editor to edit the given object."
msgstr ""
-#: doc/classes/EditorPlugin.xml:186
+#: doc/classes/EditorPlugin.xml:195
msgid ""
"Called by the engine when the user enables the [EditorPlugin] in the Plugin "
"tab of the project settings window."
msgstr ""
-#: doc/classes/EditorPlugin.xml:211
+#: doc/classes/EditorPlugin.xml:220
msgid ""
"Called when there is a root node in the current edited scene, [method "
"handles] is implemented and an [InputEvent] happens in the 2D viewport. "
@@ -18833,7 +19357,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:237
+#: doc/classes/EditorPlugin.xml:246
msgid ""
"Called when there is a root node in the current edited scene, [method "
"handles] is implemented and an [InputEvent] happens in the 3D viewport. "
@@ -18858,20 +19382,20 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:259
+#: doc/classes/EditorPlugin.xml:268
msgid ""
"This is for editors that edit script-based objects. You can return a list of "
"breakpoints in the format ([code]script:line[/code]), for example: "
"[code]res://path_to_script.gd:25[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:266
+#: doc/classes/EditorPlugin.xml:275
msgid ""
"Returns the [EditorInterface] object that gives you control over Godot "
"editor's window and its functionalities."
msgstr ""
-#: doc/classes/EditorPlugin.xml:273
+#: doc/classes/EditorPlugin.xml:282
msgid ""
"Override this method in your plugin to return a [Texture2D] in order to give "
"it an icon.\n"
@@ -18889,7 +19413,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:289
+#: doc/classes/EditorPlugin.xml:298
msgid ""
"Override this method in your plugin to provide the name of the plugin when "
"displayed in the Godot editor.\n"
@@ -18897,33 +19421,33 @@ msgid ""
"of the \"2D\", \"3D\", \"Script\", and \"AssetLib\" buttons."
msgstr ""
-#: doc/classes/EditorPlugin.xml:297
+#: doc/classes/EditorPlugin.xml:306
msgid ""
"Gets the Editor's dialogue used for making scripts.\n"
"[b]Note:[/b] Users can configure it before use."
msgstr ""
-#: doc/classes/EditorPlugin.xml:305
+#: doc/classes/EditorPlugin.xml:314
msgid ""
"Gets the state of your plugin editor. This is used when saving the scene (so "
"state is kept when opening it again) and for switching tabs (so state can be "
"restored when the tab returns)."
msgstr ""
-#: doc/classes/EditorPlugin.xml:312
+#: doc/classes/EditorPlugin.xml:321
msgid ""
"Gets the undo/redo object. Most actions in the editor can be undoable, so "
"use this object to make sure this happens when it's worth it."
msgstr ""
-#: doc/classes/EditorPlugin.xml:321
+#: doc/classes/EditorPlugin.xml:330
msgid ""
"Gets the GUI layout of the plugin. This is used to save the project's editor "
"layout when [method queue_save_layout] is called or the editor layout was "
"changed(For example changing the position of a dock)."
msgstr ""
-#: doc/classes/EditorPlugin.xml:330
+#: doc/classes/EditorPlugin.xml:339
msgid ""
"Implement this function if your plugin edits a specific type of object "
"(Resource or Node). If you return [code]true[/code], then you will get the "
@@ -18933,14 +19457,14 @@ msgid ""
"be called too."
msgstr ""
-#: doc/classes/EditorPlugin.xml:337
+#: doc/classes/EditorPlugin.xml:346
msgid ""
"Returns [code]true[/code] if this is a main screen editor plugin (it goes in "
"the workspace selector together with [b]2D[/b], [b]3D[/b], [b]Script[/b] and "
"[b]AssetLib[/b])."
msgstr ""
-#: doc/classes/EditorPlugin.xml:360
+#: doc/classes/EditorPlugin.xml:369
msgid ""
"This function will be called when the editor is requested to become visible. "
"It is used for plugins that edit a specific object type.\n"
@@ -18948,85 +19472,89 @@ msgid ""
"manually."
msgstr ""
-#: doc/classes/EditorPlugin.xml:368
+#: doc/classes/EditorPlugin.xml:377
msgid "Queue save the project's editor layout."
msgstr ""
-#: doc/classes/EditorPlugin.xml:377
+#: doc/classes/EditorPlugin.xml:386
msgid "Removes an Autoload [code]name[/code] from the list."
msgstr ""
-#: doc/classes/EditorPlugin.xml:386
+#: doc/classes/EditorPlugin.xml:395
msgid ""
"Removes the control from the bottom panel. You have to manually [method Node."
"queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:397
+#: doc/classes/EditorPlugin.xml:406
msgid ""
"Removes the control from the specified container. You have to manually "
"[method Node.queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:406
+#: doc/classes/EditorPlugin.xml:415
msgid ""
"Removes the control from the dock. You have to manually [method Node."
"queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:415
+#: doc/classes/EditorPlugin.xml:424
msgid "Removes a custom type added by [method add_custom_type]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:464
+#: doc/classes/EditorPlugin.xml:473
msgid "Removes a menu [code]name[/code] from [b]Project > Tools[/b]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:471
+#: doc/classes/EditorPlugin.xml:482
+msgid "Removes a registered custom translation parser plugin."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:489
msgid ""
"This method is called after the editor saves the project or when it's "
"closed. It asks the plugin to save edited external scenes/resources."
msgstr ""
-#: doc/classes/EditorPlugin.xml:484
+#: doc/classes/EditorPlugin.xml:502
msgid ""
"Use this method if you always want to receive inputs from 3D view screen "
"inside [method forward_spatial_gui_input]. It might be especially usable if "
"your plugin will want to use raycast in the scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:493
+#: doc/classes/EditorPlugin.xml:511
msgid "Restore the state saved by [method get_state]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:502
+#: doc/classes/EditorPlugin.xml:520
msgid "Restore the plugin GUI layout saved by [method get_window_layout]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:509
+#: doc/classes/EditorPlugin.xml:527
msgid "Updates the overlays of the editor (2D/3D) viewport."
msgstr ""
-#: doc/classes/EditorPlugin.xml:518
+#: doc/classes/EditorPlugin.xml:536
msgid ""
"Emitted when user changes the workspace ([b]2D[/b], [b]3D[/b], [b]Script[/"
"b], [b]AssetLib[/b]). Also works with custom screens defined by plugins."
msgstr ""
-#: doc/classes/EditorPlugin.xml:531
+#: doc/classes/EditorPlugin.xml:549
msgid ""
"Emitted when the scene is changed in the editor. The argument will return "
"the root node of the scene that has just become active. If this scene is new "
"and empty, the argument will be [code]null[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:538
+#: doc/classes/EditorPlugin.xml:556
msgid ""
"Emitted when user closes a scene. The argument is file path to a closed "
"scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:584
+#: doc/classes/EditorPlugin.xml:602
msgid "Represents the size of the [enum DockSlot] enum."
msgstr ""
@@ -19081,64 +19609,83 @@ msgid "When this virtual function is called, you must update your editor."
msgstr ""
#: doc/classes/EditorProperty.xml:76
-msgid "Used by the inspector, set when property is checkable."
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is "
+"checkable."
msgstr ""
#: doc/classes/EditorProperty.xml:79
-msgid "Used by the inspector, when the property is checked."
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is checked."
msgstr ""
-#: doc/classes/EditorProperty.xml:84
-msgid "Used by the inspector, when the property must draw with error color."
+#: doc/classes/EditorProperty.xml:82
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property can be "
+"deleted by the user."
msgstr ""
-#: doc/classes/EditorProperty.xml:87
-msgid "Used by the inspector, when the property can add keys for animation."
+#: doc/classes/EditorProperty.xml:85
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property must draw "
+"with error color. This is used for editable children's properties."
msgstr ""
-#: doc/classes/EditorProperty.xml:90
-msgid "Sets this property to change the label (if you want to show one)."
+#: doc/classes/EditorProperty.xml:88
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property can add "
+"keys for animation."
msgstr ""
-#: doc/classes/EditorProperty.xml:93
-msgid "Used by the inspector, when the property is read-only."
+#: doc/classes/EditorProperty.xml:91
+msgid "Set this property to change the label (if you want to show one)."
msgstr ""
-#: doc/classes/EditorProperty.xml:103
+#: doc/classes/EditorProperty.xml:94
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is read-"
+"only."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:104
msgid ""
"Emit it if you want multiple properties modified at the same time. Do not "
"use if added via [method EditorInspectorPlugin.parse_property]."
msgstr ""
-#: doc/classes/EditorProperty.xml:112
+#: doc/classes/EditorProperty.xml:113
msgid "Used by sub-inspectors. Emit it if what was selected was an Object ID."
msgstr ""
-#: doc/classes/EditorProperty.xml:121
+#: doc/classes/EditorProperty.xml:122
msgid ""
"Do not emit this manually, use the [method emit_changed] method instead."
msgstr ""
-#: doc/classes/EditorProperty.xml:130
+#: doc/classes/EditorProperty.xml:131
msgid "Emitted when a property was checked. Used internally."
msgstr ""
-#: doc/classes/EditorProperty.xml:143
+#: doc/classes/EditorProperty.xml:138
+msgid "Emitted when a property was deleted. Used internally."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:145
msgid ""
"Emit it if you want to add this value as an animation key (check for keying "
"being enabled first)."
msgstr ""
-#: doc/classes/EditorProperty.xml:152
+#: doc/classes/EditorProperty.xml:154
msgid "Emit it if you want to key a property with a single value."
msgstr ""
-#: doc/classes/EditorProperty.xml:161
+#: doc/classes/EditorProperty.xml:163
msgid ""
"If you want a sub-resource to be edited, emit this signal with the resource."
msgstr ""
-#: doc/classes/EditorProperty.xml:170
+#: doc/classes/EditorProperty.xml:172
msgid "Emitted when selected. Used internally."
msgstr ""
@@ -19317,6 +19864,8 @@ msgid ""
"https://docs.godotengine.org/en/latest/getting_started/workflow/assets/"
"importing_scenes.html#custom-script"
msgstr ""
+"https://docs.godotengine.org/de/latest/getting_started/workflow/assets/"
+"importing_scenes.html#custom-script"
#: doc/classes/EditorScenePostImport.xml:36
msgid ""
@@ -19423,17 +19972,26 @@ msgstr ""
msgid ""
"Object that holds the project-independent editor settings. These settings "
"are generally visible in the [b]Editor > Editor Settings[/b] menu.\n"
-"Accessing the settings is done by using the regular [Object] API, such as:\n"
-"[codeblock]\n"
-"settings.set(prop,value)\n"
-"settings.get(prop)\n"
-"list_of_settings = settings.get_property_list()\n"
+"Property names use slash delimiters to distinguish sections. Setting values "
+"can be of any [Variant] type. It's recommended to use [code]snake_case[/"
+"code] for editor settings to be consistent with the Godot editor itself.\n"
+"Accessing the settings can be done using the following methods, such as:\n"
+"[codeblock]\n"
+"# `settings.set(\"some/property\", value)` also works as this class "
+"overrides `_set()` internally.\n"
+"settings.set_setting(\"some/property\",value)\n"
+"\n"
+"# `settings.get(\"some/property\", value)` also works as this class "
+"overrides `_get()` internally.\n"
+"settings.get_setting(\"some/property\")\n"
+"\n"
+"var list_of_settings = settings.get_property_list()\n"
"[/codeblock]\n"
"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
"the singleton using [method EditorInterface.get_editor_settings]."
msgstr ""
-#: doc/classes/EditorSettings.xml:25
+#: doc/classes/EditorSettings.xml:30
msgid ""
"Adds a custom property info to a property. The dictionary must contain:\n"
"- [code]name[/code]: [String] (the name of the property)\n"
@@ -19455,52 +20013,177 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorSettings.xml:50
-msgid "Erase a given setting (pass full property path)."
+#: doc/classes/EditorSettings.xml:55
+msgid "Erases the setting whose name is specified by [code]property[/code]."
msgstr ""
-#: doc/classes/EditorSettings.xml:57
-msgid "Gets the list of favorite files and directories for this project."
+#: doc/classes/EditorSettings.xml:62
+msgid "Returns the list of favorite files and directories for this project."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:75
+msgid ""
+"Returns project-specific metadata for the [code]section[/code] and "
+"[code]key[/code] specified. If the metadata doesn't exist, [code]default[/"
+"code] will be returned instead. See also [method set_project_metadata]."
msgstr ""
-#: doc/classes/EditorSettings.xml:76
+#: doc/classes/EditorSettings.xml:82
msgid ""
-"Gets the specific project settings path. Projects all have a unique sub-"
-"directory inside the settings path where project specific settings are saved."
+"Returns the project-specific settings path. Projects all have a unique "
+"subdirectory inside the settings path where project-specific settings are "
+"saved."
msgstr ""
-#: doc/classes/EditorSettings.xml:83
+#: doc/classes/EditorSettings.xml:89
msgid ""
-"Gets the list of recently visited folders in the file dialog for this "
+"Returns the list of recently visited folders in the file dialog for this "
"project."
msgstr ""
#: doc/classes/EditorSettings.xml:98
msgid ""
+"Returns the value of the setting specified by [code]name[/code]. This is "
+"equivalent to using [method Object.get] on the EditorSettings instance."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:105
+msgid ""
"Gets the global settings path for the engine. Inside this path, you can find "
"some standard paths such as:\n"
"[code]settings/tmp[/code] - Used for temporary storage of files\n"
"[code]settings/templates[/code] - Where export templates are located"
msgstr ""
-#: doc/classes/EditorSettings.xml:133
+#: doc/classes/EditorSettings.xml:116
+#, fuzzy
+msgid ""
+"Returns [code]true[/code] if the setting specified by [code]name[/code] "
+"exists, [code]false[/code] otherwise."
+msgstr ""
+"Gibt [code]true[/code] zurück wenn dieser Bereich vollendet ist, ansonsten "
+"[code]false[/code]."
+
+#: doc/classes/EditorSettings.xml:125
+msgid ""
+"Returns [code]true[/code] if the setting specified by [code]name[/code] can "
+"have its value reverted to the default value, [code]false[/code] otherwise. "
+"When this method returns [code]true[/code], a Revert button will display "
+"next to the setting in the Editor Settings."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:134
+msgid ""
+"Returns the default value of the setting specified by [code]name[/code]. "
+"This is the value that would be applied when clicking the Revert button in "
+"the Editor Settings."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:143
msgid "Sets the list of favorite files and directories for this project."
msgstr ""
-#: doc/classes/EditorSettings.xml:166
+#: doc/classes/EditorSettings.xml:156
+msgid ""
+"Sets the initial value of the setting specified by [code]name[/code] to "
+"[code]value[/code]. This is used to provide a value for the Revert button in "
+"the Editor Settings. If [code]update_current[/code] is true, the current "
+"value of the setting will be set to [code]value[/code] as well."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:169
+msgid ""
+"Sets project-specific metadata with the [code]section[/code], [code]key[/"
+"code] and [code]data[/code] specified. This metadata is stored outside the "
+"project folder and therefore won't be checked into version control. See also "
+"[method get_project_metadata]."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:178
msgid ""
"Sets the list of recently visited folders in the file dialog for this "
"project."
msgstr ""
-#: doc/classes/EditorSettings.xml:183
-msgid "Emitted when editor settings change."
+#: doc/classes/EditorSettings.xml:189
+msgid ""
+"Sets the [code]value[/code] of the setting specified by [code]name[/code]. "
+"This is equivalent to using [method Object.set] on the EditorSettings "
+"instance."
msgstr ""
-#: doc/classes/EditorSettings.xml:189
+#: doc/classes/EditorSettings.xml:196
+#, fuzzy
+msgid "Emitted after any editor setting has changed."
+msgstr "Gesendet wenn das Rechteck Element geändert wurde."
+
+#: doc/classes/EditorSettings.xml:202
+msgid ""
+"Emitted after any editor setting has changed. It's used by various editor "
+"plugins to update their visuals on theme changes or logic on configuration "
+"changes."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:4
msgid ""
-"Emitted when editor settings change. It used by various editor plugins to "
-"update their visuals on theme changes or logic on configuration changes."
+"Plugin for adding custom parsers to extract strings that are to be "
+"translated from custom files (.csv, .json etc.)."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:7
+msgid ""
+"Plugins are registered via [method EditorPlugin."
+"add_translation_parser_plugin] method. To define the parsing and string "
+"extraction logic, override the [method parse_file] method in script.\n"
+"The extracted strings will be written into a POT file selected by user under "
+"\"POT Generation\" in \"Localization\" tab in \"Project Settings\" menu.\n"
+"Below shows an example of a custom parser that extracts strings in a CSV "
+"file to write into a POT.\n"
+"[codeblock]\n"
+"tool\n"
+"extends EditorTranslationParserPlugin\n"
+"\n"
+"\n"
+"func parse_file(path, extracted_strings):\n"
+" var file = File.new()\n"
+" file.open(path, File.READ)\n"
+" var text = file.get_as_text()\n"
+" var split_strs = text.split(\",\", false, 0)\n"
+" for s in split_strs:\n"
+" extracted_strings.append(s)\n"
+" #print(\"Extracted string: \" + s)\n"
+"\n"
+"\n"
+"func get_recognized_extensions():\n"
+" return [\"csv\"]\n"
+"[/codeblock]\n"
+"[b]Note:[/b] If you override parsing logic for standard script types "
+"(GDScript, C#, etc.), it would be better to load the [code]path[/code] "
+"argument using [method ResourceLoader.load]. This is because built-in "
+"scripts are loaded as [Resource] type, not [File] type.\n"
+"For example:\n"
+"[codeblock]\n"
+"func parse_file(path, extracted_strings):\n"
+" var res = ResourceLoader.load(path, \"Script\")\n"
+" var text = res.get_source_code()\n"
+" # Parsing logic.\n"
+"\n"
+"\n"
+"func get_recognized_extensions():\n"
+" return [\"gd\"]\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:48
+msgid ""
+"Gets the list of file extensions to associate with this parser, e.g. [code]"
+"[\"csv\"][/code]."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:59
+msgid ""
+"Override this method to define a custom parsing logic to extract the "
+"translatable strings."
msgstr ""
#: doc/classes/EditorVCSInterface.xml:4
@@ -19828,11 +20511,14 @@ msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/"
"environment_and_post_processing.html"
msgstr ""
+"https://docs.godotengine.org/de/latest/tutorials/3d/"
+"environment_and_post_processing.html"
#: doc/classes/Environment.xml:15
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/high_dynamic_range.html"
msgstr ""
+"https://docs.godotengine.org/de/latest/tutorials/3d/high_dynamic_range.html"
#: doc/classes/Environment.xml:24
msgid ""
@@ -20111,15 +20797,15 @@ msgid ""
"to 1.3 to compensate for the lack of HDR rendering."
msgstr ""
-#: doc/classes/Environment.xml:190
+#: doc/classes/Environment.xml:214
msgid "The [Sky] resource used for this [Environment]."
msgstr ""
-#: doc/classes/Environment.xml:197
+#: doc/classes/Environment.xml:221
msgid "The depth tolerance for screen-space reflections."
msgstr ""
-#: doc/classes/Environment.xml:200
+#: doc/classes/Environment.xml:224
msgid ""
"If [code]true[/code], screen-space reflections are enabled. Screen-space "
"reflections are more accurate than reflections from [GIProbe]s or "
@@ -20127,48 +20813,48 @@ msgid ""
"others."
msgstr ""
-#: doc/classes/Environment.xml:203
+#: doc/classes/Environment.xml:227
msgid ""
"The fade-in distance for screen-space reflections. Affects the area from the "
"reflected material to the screen-space reflection)."
msgstr ""
-#: doc/classes/Environment.xml:206
+#: doc/classes/Environment.xml:230
msgid ""
"The fade-out distance for screen-space reflections. Affects the area from "
"the screen-space reflection to the \"global\" reflection."
msgstr ""
-#: doc/classes/Environment.xml:209
+#: doc/classes/Environment.xml:233
msgid ""
"The maximum number of steps for screen-space reflections. Higher values are "
"slower."
msgstr ""
-#: doc/classes/Environment.xml:212
+#: doc/classes/Environment.xml:236
msgid ""
"The screen-space ambient occlusion intensity on materials that have an AO "
"texture defined. Values higher than [code]0[/code] will make the SSAO effect "
"visible in areas darkened by AO textures."
msgstr ""
-#: doc/classes/Environment.xml:215
+#: doc/classes/Environment.xml:239
msgid ""
"The screen-space ambient occlusion bias. This should be kept high enough to "
"prevent \"smooth\" curves from being affected by ambient occlusion."
msgstr ""
-#: doc/classes/Environment.xml:218
+#: doc/classes/Environment.xml:242
msgid ""
"The screen-space ambient occlusion blur quality. See [enum SSAOBlur] for "
"possible values."
msgstr ""
-#: doc/classes/Environment.xml:221
+#: doc/classes/Environment.xml:245
msgid "The screen-space ambient occlusion edge sharpness."
msgstr ""
-#: doc/classes/Environment.xml:224
+#: doc/classes/Environment.xml:248
msgid ""
"If [code]true[/code], the screen-space ambient occlusion effect is enabled. "
"This darkens objects' corners and cavities to simulate ambient light not "
@@ -20179,13 +20865,13 @@ msgid ""
"issues."
msgstr ""
-#: doc/classes/Environment.xml:227
+#: doc/classes/Environment.xml:251
msgid ""
"The primary screen-space ambient occlusion intensity. See also [member "
"ssao_radius]."
msgstr ""
-#: doc/classes/Environment.xml:230
+#: doc/classes/Environment.xml:254
msgid ""
"The screen-space ambient occlusion intensity in direct light. In real life, "
"ambient occlusion only applies to indirect light, which means its effects "
@@ -20193,46 +20879,46 @@ msgid ""
"the SSAO effect visible in direct light."
msgstr ""
-#: doc/classes/Environment.xml:233
+#: doc/classes/Environment.xml:257
msgid "The primary screen-space ambient occlusion radius."
msgstr ""
-#: doc/classes/Environment.xml:236
+#: doc/classes/Environment.xml:260
msgid "The default exposure used for tonemapping."
msgstr ""
-#: doc/classes/Environment.xml:239
+#: doc/classes/Environment.xml:263
msgid ""
"The tonemapping mode to use. Tonemapping is the process that \"converts\" "
"HDR values to be suitable for rendering on a LDR display. (Godot doesn't "
"support rendering on HDR displays yet.)"
msgstr ""
-#: doc/classes/Environment.xml:242
+#: doc/classes/Environment.xml:266
msgid ""
"The white reference value for tonemapping. Only effective if the [member "
"tonemap_mode] isn't set to [constant TONE_MAPPER_LINEAR]."
msgstr ""
-#: doc/classes/Environment.xml:247
+#: doc/classes/Environment.xml:271
msgid ""
"Clears the background using the clear color defined in [member "
"ProjectSettings.rendering/environment/default_clear_color]."
msgstr ""
-#: doc/classes/Environment.xml:250
+#: doc/classes/Environment.xml:274
msgid "Clears the background using a custom clear color."
msgstr ""
-#: doc/classes/Environment.xml:253
+#: doc/classes/Environment.xml:277
msgid "Displays a user-defined sky in the background."
msgstr ""
-#: doc/classes/Environment.xml:256
+#: doc/classes/Environment.xml:280
msgid "Displays a [CanvasLayer] in the background."
msgstr ""
-#: doc/classes/Environment.xml:259
+#: doc/classes/Environment.xml:283
msgid ""
"Keeps on screen every pixel drawn in the background. This is the fastest "
"background mode, but it can only be safely used in fully-interior scenes (no "
@@ -20240,107 +20926,107 @@ msgid ""
"is visible, \"ghost trail\" artifacts will be visible when moving the camera."
msgstr ""
-#: doc/classes/Environment.xml:262 doc/classes/RenderingServer.xml:3446
+#: doc/classes/Environment.xml:286 doc/classes/RenderingServer.xml:3457
msgid "Displays a camera feed in the background."
msgstr ""
-#: doc/classes/Environment.xml:265
+#: doc/classes/Environment.xml:289
msgid "Represents the size of the [enum BGMode] enum."
msgstr ""
-#: doc/classes/Environment.xml:268 doc/classes/RenderingServer.xml:3452
+#: doc/classes/Environment.xml:292 doc/classes/RenderingServer.xml:3463
msgid ""
"Gather ambient light from whichever source is specified as the background."
msgstr ""
-#: doc/classes/Environment.xml:271 doc/classes/RenderingServer.xml:3455
+#: doc/classes/Environment.xml:295 doc/classes/RenderingServer.xml:3466
msgid "Disable ambient light."
msgstr ""
-#: doc/classes/Environment.xml:274 doc/classes/RenderingServer.xml:3458
+#: doc/classes/Environment.xml:298 doc/classes/RenderingServer.xml:3469
msgid "Specify a specific [Color] for ambient light."
msgstr ""
-#: doc/classes/Environment.xml:277 doc/classes/RenderingServer.xml:3461
+#: doc/classes/Environment.xml:301 doc/classes/RenderingServer.xml:3472
msgid ""
"Gather ambient light from the [Sky] regardless of what the background is."
msgstr ""
-#: doc/classes/Environment.xml:280 doc/classes/RenderingServer.xml:3464
+#: doc/classes/Environment.xml:304 doc/classes/RenderingServer.xml:3475
msgid "Use the background for reflections."
msgstr ""
-#: doc/classes/Environment.xml:283 doc/classes/RenderingServer.xml:3467
+#: doc/classes/Environment.xml:307 doc/classes/RenderingServer.xml:3478
msgid "Disable reflections."
msgstr ""
-#: doc/classes/Environment.xml:286 doc/classes/RenderingServer.xml:3470
+#: doc/classes/Environment.xml:310 doc/classes/RenderingServer.xml:3481
msgid "Use the [Sky] for reflections regardless of what the background is."
msgstr ""
-#: doc/classes/Environment.xml:289 doc/classes/RenderingServer.xml:3473
+#: doc/classes/Environment.xml:313
+msgid ""
+"Linear tonemapper operator. Reads the linear data and passes it on "
+"unmodified."
+msgstr ""
+
+#: doc/classes/Environment.xml:316
+msgid ""
+"Reinhardt tonemapper operator. Performs a variation on rendered pixels' "
+"colors by this formula: [code]color = color / (1 + color)[/code]."
+msgstr ""
+
+#: doc/classes/Environment.xml:319
+msgid "Filmic tonemapper operator."
+msgstr ""
+
+#: doc/classes/Environment.xml:322
+msgid "Academy Color Encoding System tonemapper operator."
+msgstr ""
+
+#: doc/classes/Environment.xml:325 doc/classes/RenderingServer.xml:3484
msgid ""
"Additive glow blending mode. Mostly used for particles, glows (bloom), lens "
"flare, bright sources."
msgstr ""
-#: doc/classes/Environment.xml:292 doc/classes/RenderingServer.xml:3476
+#: doc/classes/Environment.xml:328 doc/classes/RenderingServer.xml:3487
msgid ""
"Screen glow blending mode. Increases brightness, used frequently with bloom."
msgstr ""
-#: doc/classes/Environment.xml:295 doc/classes/RenderingServer.xml:3479
+#: doc/classes/Environment.xml:331 doc/classes/RenderingServer.xml:3490
msgid ""
"Soft light glow blending mode. Modifies contrast, exposes shadows and "
"highlights (vivid bloom)."
msgstr ""
-#: doc/classes/Environment.xml:298 doc/classes/RenderingServer.xml:3482
+#: doc/classes/Environment.xml:334 doc/classes/RenderingServer.xml:3493
msgid ""
"Replace glow blending mode. Replaces all pixels' color by the glow value. "
"This can be used to simulate a full-screen blur effect by tweaking the glow "
"parameters to match the original image's brightness."
msgstr ""
-#: doc/classes/Environment.xml:301 doc/classes/RenderingServer.xml:3485
+#: doc/classes/Environment.xml:337 doc/classes/RenderingServer.xml:3496
msgid ""
"Mixes the glow with the underlying color to avoid increasing brightness as "
"much while still maintaining a glow effect."
msgstr ""
-#: doc/classes/Environment.xml:304
-msgid ""
-"Linear tonemapper operator. Reads the linear data and passes it on "
-"unmodified."
-msgstr ""
-
-#: doc/classes/Environment.xml:307
-msgid ""
-"Reinhardt tonemapper operator. Performs a variation on rendered pixels' "
-"colors by this formula: [code]color = color / (1 + color)[/code]."
-msgstr ""
-
-#: doc/classes/Environment.xml:310
-msgid "Filmic tonemapper operator."
-msgstr ""
-
-#: doc/classes/Environment.xml:313
-msgid "Academy Color Encoding System tonemapper operator."
-msgstr ""
-
-#: doc/classes/Environment.xml:316
+#: doc/classes/Environment.xml:340
msgid "No blur for the screen-space ambient occlusion effect (fastest)."
msgstr ""
-#: doc/classes/Environment.xml:319
+#: doc/classes/Environment.xml:343
msgid "1×1 blur for the screen-space ambient occlusion effect."
msgstr ""
-#: doc/classes/Environment.xml:322
+#: doc/classes/Environment.xml:346
msgid "2×2 blur for the screen-space ambient occlusion effect."
msgstr ""
-#: doc/classes/Environment.xml:325
+#: doc/classes/Environment.xml:349
msgid ""
"3×3 blur for the screen-space ambient occlusion effect. Increases the radius "
"of the blur for a smoother look, but can result in checkerboard-like "
@@ -20425,14 +21111,17 @@ msgid ""
" var content = file.get_as_text()\n"
" file.close()\n"
" return content\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"In the example above, the file will be saved in the user data folder as "
+"specified in the [url=https://docs.godotengine.org/en/latest/tutorials/io/"
+"data_paths.html]Data paths[/url] documentation."
msgstr ""
-#: doc/classes/File.xml:32
+#: doc/classes/File.xml:33
msgid "Closes the currently opened file."
msgstr ""
-#: doc/classes/File.xml:39
+#: doc/classes/File.xml:40
msgid ""
"Returns [code]true[/code] if the file cursor has read past the end of the "
"file.\n"
@@ -20443,7 +21132,7 @@ msgid ""
"get_position] to implement a custom logic."
msgstr ""
-#: doc/classes/File.xml:49
+#: doc/classes/File.xml:50
msgid ""
"Returns [code]true[/code] if the file exists in the given path.\n"
"[b]Note:[/b] Many resources types are imported (e.g. textures or sound "
@@ -20456,41 +21145,41 @@ msgid ""
"source asset is present in [code]res://[/code], but fail when exported)."
msgstr ""
-#: doc/classes/File.xml:57
+#: doc/classes/File.xml:58
msgid ""
"Returns the next 16 bits from the file as an integer. See [method store_16] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:64
+#: doc/classes/File.xml:65
msgid ""
"Returns the next 32 bits from the file as an integer. See [method store_32] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:71
+#: doc/classes/File.xml:72
msgid ""
"Returns the next 64 bits from the file as an integer. See [method store_64] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:78
+#: doc/classes/File.xml:79
msgid ""
"Returns the next 8 bits from the file as an integer. See [method store_8] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:85
+#: doc/classes/File.xml:86
msgid ""
"Returns the whole file as a [String].\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:95
+#: doc/classes/File.xml:96
msgid "Returns next [code]len[/code] bytes of the file as a [PackedByteArray]."
msgstr ""
-#: doc/classes/File.xml:104
+#: doc/classes/File.xml:105
msgid ""
"Returns the next value of the file in CSV (Comma-Separated Values) format. "
"You can pass a different delimiter [code]delim[/code] to use other than the "
@@ -20499,37 +21188,37 @@ msgid ""
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:112
+#: doc/classes/File.xml:113
msgid "Returns the next 64 bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:119
+#: doc/classes/File.xml:120
msgid ""
"Returns the last error that happened when trying to perform operations. "
"Compare with the [code]ERR_FILE_*[/code] constants from [enum Error]."
msgstr ""
-#: doc/classes/File.xml:126
+#: doc/classes/File.xml:127
msgid "Returns the next 32 bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:133
+#: doc/classes/File.xml:134
msgid "Returns the size of the file in bytes."
msgstr ""
-#: doc/classes/File.xml:140
+#: doc/classes/File.xml:141
msgid ""
"Returns the next line of the file as a [String].\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:150
+#: doc/classes/File.xml:151
msgid ""
"Returns an MD5 String representing the file at the given path or an empty "
"[String] on failure."
msgstr ""
-#: doc/classes/File.xml:159
+#: doc/classes/File.xml:160
msgid ""
"Returns the last time the [code]file[/code] was modified in unix timestamp "
"format or returns a [String] \"ERROR IN [code]file[/code]\". This unix "
@@ -20537,35 +21226,35 @@ msgid ""
"get_datetime_from_unix_time]."
msgstr ""
-#: doc/classes/File.xml:166
+#: doc/classes/File.xml:167
msgid ""
"Returns a [String] saved in Pascal format from the file.\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:174
+#: doc/classes/File.xml:175
msgid "Returns the path as a [String] for the current open file."
msgstr ""
-#: doc/classes/File.xml:181
+#: doc/classes/File.xml:182
msgid "Returns the absolute path as a [String] for the current open file."
msgstr ""
-#: doc/classes/File.xml:188
+#: doc/classes/File.xml:189
msgid "Returns the file cursor's position."
msgstr ""
-#: doc/classes/File.xml:195
+#: doc/classes/File.xml:196
msgid "Returns the next bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:204
+#: doc/classes/File.xml:205
msgid ""
"Returns a SHA-256 [String] representing the file at the given path or an "
"empty [String] on failure."
msgstr ""
-#: doc/classes/File.xml:213
+#: doc/classes/File.xml:214
msgid ""
"Returns the next [Variant] value from the file. If [code]allow_objects[/"
"code] is [code]true[/code], decoding objects is allowed.\n"
@@ -20574,37 +21263,38 @@ msgid ""
"to avoid potential security threats such as remote code execution."
msgstr ""
-#: doc/classes/File.xml:221
+#: doc/classes/File.xml:222
msgid "Returns [code]true[/code] if the file is currently opened."
msgstr ""
-#: doc/classes/File.xml:232
+#: doc/classes/File.xml:233
msgid "Opens the file for writing or reading, depending on the flags."
msgstr ""
-#: doc/classes/File.xml:245
+#: doc/classes/File.xml:246
msgid "Opens a compressed file for reading or writing."
msgstr ""
-#: doc/classes/File.xml:258
+#: doc/classes/File.xml:259
msgid ""
"Opens an encrypted file in write or read mode. You need to pass a binary key "
-"to encrypt/decrypt it."
+"to encrypt/decrypt it.\n"
+"[b]Note:[/b] The provided key must be 32 bytes long."
msgstr ""
-#: doc/classes/File.xml:271
+#: doc/classes/File.xml:273
msgid ""
"Opens an encrypted file in write or read mode. You need to pass a password "
"to encrypt/decrypt it."
msgstr ""
-#: doc/classes/File.xml:280
+#: doc/classes/File.xml:282
msgid ""
"Changes the file reading/writing cursor to the specified position (in bytes "
"from the beginning of the file)."
msgstr ""
-#: doc/classes/File.xml:289
+#: doc/classes/File.xml:291
msgid ""
"Changes the file reading/writing cursor to the specified position (in bytes "
"from the end of the file).\n"
@@ -20612,7 +21302,7 @@ msgid ""
"cursor will be at the end of the file."
msgstr ""
-#: doc/classes/File.xml:299
+#: doc/classes/File.xml:301
msgid ""
"Stores an integer as 16 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, "
@@ -20640,7 +21330,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/File.xml:328
+#: doc/classes/File.xml:330
msgid ""
"Stores an integer as 32 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, "
@@ -20649,14 +21339,14 @@ msgid ""
"(see [method store_16] for an example)."
msgstr ""
-#: doc/classes/File.xml:339
+#: doc/classes/File.xml:341
msgid ""
"Stores an integer as 64 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] must lie in the interval [code][-2^63, "
"2^63 - 1][/code] (i.e. be a valid [int] value)."
msgstr ""
-#: doc/classes/File.xml:349
+#: doc/classes/File.xml:351
msgid ""
"Stores an integer as 8 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, 255]"
@@ -20665,11 +21355,11 @@ msgid ""
"(see [method store_16] for an example)."
msgstr ""
-#: doc/classes/File.xml:360
+#: doc/classes/File.xml:362
msgid "Stores the given array of bytes in the file."
msgstr ""
-#: doc/classes/File.xml:371
+#: doc/classes/File.xml:373
msgid ""
"Store the given [PackedStringArray] in the file as a line formatted in the "
"CSV (Comma-Separated Values) format. You can pass a different delimiter "
@@ -20678,45 +21368,45 @@ msgid ""
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:381
+#: doc/classes/File.xml:383
msgid "Stores a floating-point number as 64 bits in the file."
msgstr ""
-#: doc/classes/File.xml:390
+#: doc/classes/File.xml:392
msgid "Stores a floating-point number as 32 bits in the file."
msgstr ""
-#: doc/classes/File.xml:399
+#: doc/classes/File.xml:401
msgid ""
"Stores the given [String] as a line in the file.\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:409
+#: doc/classes/File.xml:411
msgid ""
"Stores the given [String] as a line in the file in Pascal format (i.e. also "
"store the length of the string).\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:419
+#: doc/classes/File.xml:421
msgid "Stores a floating-point number in the file."
msgstr ""
-#: doc/classes/File.xml:428
+#: doc/classes/File.xml:430
msgid ""
"Stores the given [String] in the file.\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:440
+#: doc/classes/File.xml:442
msgid ""
"Stores any Variant value in the file. If [code]full_objects[/code] is "
"[code]true[/code], encoding objects is allowed (and can potentially include "
"code)."
msgstr ""
-#: doc/classes/File.xml:446
+#: doc/classes/File.xml:448
msgid ""
"If [code]true[/code], the file's endianness is swapped. Use this if you're "
"dealing with files written on big-endian machines.\n"
@@ -20724,44 +21414,44 @@ msgid ""
"reset to [code]false[/code] whenever you open the file."
msgstr ""
-#: doc/classes/File.xml:452
+#: doc/classes/File.xml:454
msgid "Opens the file for read operations."
msgstr ""
-#: doc/classes/File.xml:455
+#: doc/classes/File.xml:457
msgid ""
"Opens the file for write operations. Create it if the file does not exist "
"and truncate if it exists."
msgstr ""
-#: doc/classes/File.xml:458
+#: doc/classes/File.xml:460
msgid ""
"Opens the file for read and write operations. Does not truncate the file."
msgstr ""
-#: doc/classes/File.xml:461
+#: doc/classes/File.xml:463
msgid ""
"Opens the file for read and write operations. Create it if the file does not "
"exist and truncate if it exists."
msgstr ""
-#: doc/classes/File.xml:464
+#: doc/classes/File.xml:466
msgid "Uses the [url=http://fastlz.org/]FastLZ[/url] compression method."
msgstr ""
-#: doc/classes/File.xml:467
+#: doc/classes/File.xml:469
msgid ""
"Uses the [url=https://en.wikipedia.org/wiki/DEFLATE]DEFLATE[/url] "
"compression method."
msgstr ""
-#: doc/classes/File.xml:470
+#: doc/classes/File.xml:472
msgid ""
"Uses the [url=https://facebook.github.io/zstd/]Zstandard[/url] compression "
"method."
msgstr ""
-#: doc/classes/File.xml:473
+#: doc/classes/File.xml:475
msgid "Uses the [url=https://www.gzip.org/]gzip[/url] compression method."
msgstr ""
@@ -20977,10 +21667,11 @@ msgid ""
"Draw [code]string[/code] into a canvas item using the font at a given "
"position, with [code]modulate[/code] color, and optionally clipping the "
"width. [code]position[/code] specifies the baseline, not the top. To draw "
-"from the top, [i]ascent[/i] must be added to the Y axis."
+"from the top, [i]ascent[/i] must be added to the Y axis.\n"
+"See also [method CanvasItem.draw_string]."
msgstr ""
-#: doc/classes/Font.xml:47
+#: doc/classes/Font.xml:48
msgid ""
"Draw character [code]char[/code] into a canvas item using the font at a "
"given position, with [code]modulate[/code] color, and optionally kerning if "
@@ -20990,39 +21681,39 @@ msgid ""
"making this function useful for drawing strings character by character."
msgstr ""
-#: doc/classes/Font.xml:54
+#: doc/classes/Font.xml:55
msgid "Returns the font ascent (number of pixels above the baseline)."
msgstr ""
-#: doc/classes/Font.xml:65
+#: doc/classes/Font.xml:66
msgid ""
"Returns the size of a character, optionally taking kerning into account if "
"the next character is provided."
msgstr ""
-#: doc/classes/Font.xml:72
+#: doc/classes/Font.xml:73
msgid "Returns the font descent (number of pixels below the baseline)."
msgstr ""
-#: doc/classes/Font.xml:79
+#: doc/classes/Font.xml:80
msgid "Returns the total font height (ascent plus descent) in pixels."
msgstr ""
-#: doc/classes/Font.xml:88
+#: doc/classes/Font.xml:89
msgid "Returns the size of a string, taking kerning and advance into account."
msgstr ""
-#: doc/classes/Font.xml:99
+#: doc/classes/Font.xml:100
msgid ""
"Returns the size that the string would have with word wrapping enabled with "
"a fixed [code]width[/code]."
msgstr ""
-#: doc/classes/Font.xml:106
+#: doc/classes/Font.xml:107
msgid "Returns [code]true[/code] if the font has an outline."
msgstr ""
-#: doc/classes/Font.xml:119
+#: doc/classes/Font.xml:120
msgid ""
"After editing a font (changing size, ascent, char rects, etc.). Call this "
"function to propagate changes to controls that might use it."
@@ -21091,12 +21782,16 @@ msgid ""
"https://docs.godotengine.org/en/latest/tutorials/plugins/gdnative/gdnative-c-"
"example.html"
msgstr ""
+"https://docs.godotengine.org/de/latest/tutorials/plugins/gdnative/gdnative-c-"
+"example.html"
#: modules/gdnative/doc_classes/GDNativeLibrary.xml:11
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/plugins/gdnative/gdnative-"
"cpp-example.html"
msgstr ""
+"https://docs.godotengine.org/de/latest/tutorials/plugins/gdnative/gdnative-"
+"cpp-example.html"
#: modules/gdnative/doc_classes/GDNativeLibrary.xml:18
msgid ""
@@ -21172,6 +21867,8 @@ msgid ""
"https://docs.godotengine.org/en/latest/getting_started/scripting/gdscript/"
"index.html"
msgstr ""
+"https://docs.godotengine.org/de/latest/getting_started/scripting/gdscript/"
+"index.html"
#: modules/gdscript/doc_classes/GDScript.xml:18
msgid "Returns byte code for the script source code."
@@ -21194,13 +21891,14 @@ msgstr ""
#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:7
msgid ""
-"Calling [method @GDScript.yield] within a function will cause that function "
-"to yield and return its current state as an object of this type. The yielded "
+"FIXME: Outdated docs as of GDScript rewrite in 4.0.\n"
+"Calling [code]yield[/code] within a function will cause that function to "
+"yield and return its current state as an object of this type. The yielded "
"function call can then be resumed later by calling [method resume] on this "
"state object."
msgstr ""
-#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:18
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:19
msgid ""
"Check whether the function call may be resumed. This is not the case if the "
"function state was already resumed.\n"
@@ -21211,12 +21909,12 @@ msgid ""
"script have survived up to that point."
msgstr ""
-#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:28
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:29
msgid ""
"Resume execution of the yielded function call.\n"
-"If handed an argument, return the argument from the [method @GDScript.yield] "
-"call in the yielded function call. You can pass e.g. an [Array] to hand "
-"multiple arguments.\n"
+"If handed an argument, return the argument from the [code]yield[/code] call "
+"in the yielded function call. You can pass e.g. an [Array] to hand multiple "
+"arguments.\n"
"This function returns what the resumed function call returns, possibly "
"another function state if yielded again."
msgstr ""
@@ -21785,10 +22483,20 @@ msgid ""
"code], see [enum PolyJoinType].\n"
"The operation may result in an outer polygon (boundary) and inner polygon "
"(hole) produced which could be distinguished by calling [method "
-"is_polygon_clockwise]."
+"is_polygon_clockwise].\n"
+"[b]Note:[/b] To translate the polygon's vertices specifically, use the "
+"[method Transform2D.xform] method:\n"
+"[codeblock]\n"
+"var polygon = PackedVector2Array([Vector2(0, 0), Vector2(100, 0), "
+"Vector2(100, 100), Vector2(0, 100)])\n"
+"var offset = Vector2(50, 50)\n"
+"polygon = Transform2D(0, offset).xform(polygon)\n"
+"print(polygon) # prints [Vector2(50, 50), Vector2(150, 50), Vector2(150, "
+"150), Vector2(50, 150)]\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/Geometry2D.xml:217
+#: doc/classes/Geometry2D.xml:224
msgid ""
"Inflates or deflates [code]polyline[/code] by [code]delta[/code] units "
"(pixels), producing polygons. If [code]delta[/code] is positive, makes the "
@@ -21804,13 +22512,13 @@ msgid ""
"is_polygon_clockwise]."
msgstr ""
-#: doc/classes/Geometry2D.xml:235
+#: doc/classes/Geometry2D.xml:242
msgid ""
"Returns if [code]point[/code] is inside the triangle specified by [code]a[/"
"code], [code]b[/code] and [code]c[/code]."
msgstr ""
-#: doc/classes/Geometry2D.xml:250
+#: doc/classes/Geometry2D.xml:257
msgid ""
"Checks if the two segments ([code]from_a[/code], [code]to_a[/code]) and "
"([code]from_b[/code], [code]to_b[/code]) intersect. If yes, return the point "
@@ -21818,7 +22526,7 @@ msgid ""
"empty [Variant]."
msgstr ""
-#: doc/classes/Geometry2D.xml:259
+#: doc/classes/Geometry2D.xml:266
msgid ""
"Triangulates the area specified by discrete set of [code]points[/code] such "
"that no point is inside the circumcircle of any resulting triangle. Returns "
@@ -21829,7 +22537,7 @@ msgid ""
"[PackedInt32Array] is returned."
msgstr ""
-#: doc/classes/Geometry2D.xml:268
+#: doc/classes/Geometry2D.xml:275
msgid ""
"Triangulates the polygon specified by the points in [code]polygon[/code]. "
"Returns a [PackedInt32Array] where each triangle consists of three "
@@ -21839,40 +22547,40 @@ msgid ""
"[PackedInt32Array] is returned."
msgstr ""
-#: doc/classes/Geometry2D.xml:274
+#: doc/classes/Geometry2D.xml:281
msgid ""
"Create regions where either subject or clip polygons (or both) are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:277
+#: doc/classes/Geometry2D.xml:284
msgid ""
"Create regions where subject polygons are filled except where clip polygons "
"are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:280
+#: doc/classes/Geometry2D.xml:287
msgid "Create regions where both subject and clip polygons are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:283
+#: doc/classes/Geometry2D.xml:290
msgid ""
"Create regions where either subject or clip polygons are filled but not "
"where both are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:286
+#: doc/classes/Geometry2D.xml:293
msgid ""
"Squaring is applied uniformally at all convex edge joins at [code]1 * delta[/"
"code]."
msgstr ""
-#: doc/classes/Geometry2D.xml:289
+#: doc/classes/Geometry2D.xml:296
msgid ""
"While flattened paths can never perfectly trace an arc, they are "
"approximated by a series of arc chords."
msgstr ""
-#: doc/classes/Geometry2D.xml:292
+#: doc/classes/Geometry2D.xml:299
msgid ""
"There's a necessary limit to mitered joins since offsetting edges that join "
"at very acute angles will produce excessively long and narrow \"spikes\". "
@@ -21880,27 +22588,27 @@ msgid ""
"distance, \"square\" joining is applied."
msgstr ""
-#: doc/classes/Geometry2D.xml:295
+#: doc/classes/Geometry2D.xml:302
msgid ""
"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
"as a polygon."
msgstr ""
-#: doc/classes/Geometry2D.xml:298
+#: doc/classes/Geometry2D.xml:305
msgid ""
"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
"as a polyline."
msgstr ""
-#: doc/classes/Geometry2D.xml:301
+#: doc/classes/Geometry2D.xml:308
msgid "Endpoints are squared off with no extension."
msgstr ""
-#: doc/classes/Geometry2D.xml:304
+#: doc/classes/Geometry2D.xml:311
msgid "Endpoints are squared off and extended by [code]delta[/code] units."
msgstr ""
-#: doc/classes/Geometry2D.xml:307
+#: doc/classes/Geometry2D.xml:314
msgid "Endpoints are rounded off and extended by [code]delta[/code] units."
msgstr ""
@@ -22124,13 +22832,13 @@ msgstr ""
#: doc/classes/GIProbe.xml:11
msgid "https://docs.godotengine.org/en/latest/tutorials/3d/gi_probes.html"
-msgstr ""
+msgstr "https://docs.godotengine.org/de/latest/tutorials/3d/gi_probes.html"
#: doc/classes/GIProbe.xml:22
msgid ""
"Bakes the effect from all [GeometryInstance3D]s marked with [constant "
"GeometryInstance3D.GI_MODE_BAKED] and [Light3D]s marked with either "
-"[constant Light3D.BAKE_INDIRECT] or [constant Light3D.BAKE_ALL]. If "
+"[constant Light3D.BAKE_DYNAMIC] or [constant Light3D.BAKE_STATIC]. If "
"[code]create_visual_debug[/code] is [code]true[/code], after baking the "
"light, this will generate a [MultiMesh] that has a cube representing each "
"solid cell with each cube colored to the cell's albedo color. This can be "
@@ -22222,36 +22930,40 @@ msgid ""
msgstr ""
#: modules/mono/doc_classes/GodotSharp.xml:49
-#, fuzzy
msgid ""
"Returns [code]true[/code] if the domain is being finalized, [code]false[/"
"code] otherwise."
-msgstr "Gibt [code]true[/code] zurück wenn dieser Vektor normalisiert ist."
+msgstr ""
+"Gibt [code]true[/code] zurück wenn dieser Bereich vollendet ist, ansonsten "
+"[code]false[/code]."
#: modules/mono/doc_classes/GodotSharp.xml:56
-#, fuzzy
msgid ""
"Returns [code]true[/code] if the Mono runtime is initialized, [code]false[/"
"code] otherwise."
-msgstr "Gibt [code]true[/code] zurück wenn dieser Vektor normalisiert ist."
+msgstr ""
+"Gibt [code]true[/code] zurück wenn die Mono Laufzeit initialisiert ist, "
+"ansonsten [code]false[/code]."
#: modules/mono/doc_classes/GodotSharp.xml:63
-#, fuzzy
msgid ""
"Returns [code]true[/code] if the Mono runtime is shutting down, [code]false[/"
"code] otherwise."
-msgstr "Gibt [code]true[/code] zurück wenn dieser Vektor normalisiert ist."
+msgstr ""
+"Gibt [code]true[/code] zurück wenn die Mono Laufzeit sich beendet, ansonsten "
+"[code]false[/code]."
#: modules/mono/doc_classes/GodotSharp.xml:70
-#, fuzzy
msgid ""
"Returns [code]true[/code] if the scripts domain is loaded, [code]false[/"
"code] otherwise."
-msgstr "Gibt [code]true[/code] zurück wenn dieser Vektor normalisiert ist."
+msgstr ""
+"Gibt [code]true[/code] zurück wenn der Skript Bereich lädt, ansonsten "
+"[code]false[/code]."
#: doc/classes/GPUParticles2D.xml:4
msgid "2D particle emitter."
-msgstr ""
+msgstr "2D Partikel Emitter."
#: doc/classes/GPUParticles2D.xml:7
msgid ""
@@ -22283,7 +22995,7 @@ msgstr ""
#: doc/classes/GPUParticles3D.xml:4
msgid "3D particle emitter."
-msgstr ""
+msgstr "3D Partikel Emitter."
#: doc/classes/GPUParticles3D.xml:7
msgid ""
@@ -22300,6 +23012,8 @@ msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/vertex_animation/"
"controlling_thousands_of_fish.html"
msgstr ""
+"https://docs.godotengine.org/de/latest/tutorials/3d/vertex_animation/"
+"controlling_thousands_of_fish.html"
#: doc/classes/GPUParticles3D.xml:18
msgid ""
@@ -23016,126 +23730,125 @@ msgstr ""
#: modules/gridmap/doc_classes/GridMap.xml:13
msgid "https://docs.godotengine.org/en/latest/tutorials/3d/using_gridmaps.html"
msgstr ""
+"https://docs.godotengine.org/de/latest/tutorials/3d/using_gridmaps.html"
#: modules/gridmap/doc_classes/GridMap.xml:20
msgid "Clear all cells."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:53
+#: modules/gridmap/doc_classes/GridMap.xml:49
msgid ""
-"The [MeshLibrary] item index located at the grid-based X, Y and Z "
-"coordinates. If the cell is empty, [constant INVALID_CELL_ITEM] will be "
-"returned."
+"The [MeshLibrary] item index located at the given grid coordinates. If the "
+"cell is empty, [constant INVALID_CELL_ITEM] will be returned."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:66
+#: modules/gridmap/doc_classes/GridMap.xml:58
msgid ""
-"The orientation of the cell at the grid-based X, Y and Z coordinates. -1 is "
-"returned if the cell is empty."
+"The orientation of the cell at the given grid coordinates. [code]-1[/code] "
+"is returned if the cell is empty."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:75 doc/classes/PhysicsBody2D.xml:35
+#: modules/gridmap/doc_classes/GridMap.xml:67 doc/classes/PhysicsBody2D.xml:35
#: doc/classes/PhysicsBody3D.xml:35
msgid "Returns an individual bit on the [member collision_layer]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:84 doc/classes/PhysicsBody2D.xml:44
+#: modules/gridmap/doc_classes/GridMap.xml:76 doc/classes/PhysicsBody2D.xml:44
#: doc/classes/PhysicsBody3D.xml:44
msgid "Returns an individual bit on the [member collision_mask]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:91
+#: modules/gridmap/doc_classes/GridMap.xml:83
msgid ""
"Returns an array of [Transform] and [Mesh] references corresponding to the "
"non-empty cells in the grid. The transforms are specified in world space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:98
+#: modules/gridmap/doc_classes/GridMap.xml:90
msgid ""
"Returns an array of [Vector3] with the non-empty cell coordinates in the "
"grid map."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:121
+#: modules/gridmap/doc_classes/GridMap.xml:109
msgid ""
"Returns the position of a grid cell in the GridMap's local coordinate space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:146
+#: modules/gridmap/doc_classes/GridMap.xml:130
msgid ""
-"Sets the mesh index for the cell referenced by its grid-based X, Y and Z "
-"coordinates.\n"
+"Sets the mesh index for the cell referenced by its grid coordinates.\n"
"A negative item index such as [constant INVALID_CELL_ITEM] will clear the "
"cell.\n"
"Optionally, the item's orientation can be passed. For valid orientation "
"values, see [method Basis.get_orthogonal_index]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:173
+#: modules/gridmap/doc_classes/GridMap.xml:157
msgid "Sets an individual bit on the [member collision_layer]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:184
+#: modules/gridmap/doc_classes/GridMap.xml:168
msgid "Sets an individual bit on the [member collision_mask]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:193
+#: modules/gridmap/doc_classes/GridMap.xml:177
msgid ""
"Returns the coordinates of the grid cell containing the given point.\n"
"[code]pos[/code] should be in the GridMap's local coordinate space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:200
+#: modules/gridmap/doc_classes/GridMap.xml:184
msgid "If [code]true[/code], grid items are centered on the X axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:203
+#: modules/gridmap/doc_classes/GridMap.xml:187
msgid "If [code]true[/code], grid items are centered on the Y axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:206
+#: modules/gridmap/doc_classes/GridMap.xml:190
msgid "If [code]true[/code], grid items are centered on the Z axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:209
+#: modules/gridmap/doc_classes/GridMap.xml:193
msgid ""
"The size of each octant measured in number of cells. This applies to all "
"three axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:212
+#: modules/gridmap/doc_classes/GridMap.xml:196
msgid ""
"The scale of the cell items.\n"
"This does not affect the size of the grid cells themselves, only the items "
"in them. This can be used to make cell items overlap their neighbors."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:216
+#: modules/gridmap/doc_classes/GridMap.xml:200
msgid ""
"The dimensions of the grid's cells.\n"
"This does not affect the size of the meshes. See [member cell_scale]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:220
+#: modules/gridmap/doc_classes/GridMap.xml:204
msgid ""
"The physics layers this GridMap is in.\n"
"GridMaps act as static bodies, meaning they aren't affected by gravity or "
"other forces. They only affect other physics bodies that collide with them."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:224
+#: modules/gridmap/doc_classes/GridMap.xml:208
msgid "The physics layers this GridMap detects collisions in."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:227
+#: modules/gridmap/doc_classes/GridMap.xml:211
msgid "The assigned [MeshLibrary]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:235
+#: modules/gridmap/doc_classes/GridMap.xml:219
msgid "Emitted when [member cell_size] changes."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:241
+#: modules/gridmap/doc_classes/GridMap.xml:225
msgid ""
"Invalid cell item that can be used in [method set_cell_item] to clear cells "
"(or represent an empty cell in [method get_cell_item])."
@@ -23500,27 +24213,37 @@ msgid ""
"server's side.\n"
"For more information on HTTP, see https://developer.mozilla.org/en-US/docs/"
"Web/HTTP (or read RFC 2616 to get it straight from the source: https://tools."
-"ietf.org/html/rfc2616)."
+"ietf.org/html/rfc2616).\n"
+"[b]Note:[/b] When performing HTTP requests from a project exported to HTML5, "
+"keep in mind the remote server may not allow requests from foreign origins "
+"due to [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/"
+"url]. If you host the server in question, you should modify its backend to "
+"allow requests from foreign origins by adding the [code]Access-Control-Allow-"
+"Origin: *[/code] HTTP header."
msgstr ""
-#: doc/classes/HTTPClient.xml:13
+#: doc/classes/HTTPClient.xml:14
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/"
"http_client_class.html"
msgstr ""
+"https://docs.godotengine.org/de/latest/tutorials/networking/"
+"http_client_class.html"
-#: doc/classes/HTTPClient.xml:14 doc/classes/HTTPRequest.xml:62
+#: doc/classes/HTTPClient.xml:15 doc/classes/HTTPRequest.xml:71
#: doc/classes/StreamPeerSSL.xml:10
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/ssl_certificates."
"html"
msgstr ""
+"https://docs.godotengine.org/de/latest/tutorials/networking/ssl_certificates."
+"html"
-#: doc/classes/HTTPClient.xml:21
+#: doc/classes/HTTPClient.xml:22
msgid "Closes the current connection, allowing reuse of this [HTTPClient]."
msgstr ""
-#: doc/classes/HTTPClient.xml:36
+#: doc/classes/HTTPClient.xml:37
msgid ""
"Connects to a host. This needs to be done before any requests are sent.\n"
"The host should not have http:// prepended but will strip the protocol "
@@ -23532,7 +24255,7 @@ msgid ""
"[code]true[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:46
+#: doc/classes/HTTPClient.xml:47
msgid ""
"Returns the response's body length.\n"
"[b]Note:[/b] Some Web servers may not send a body length. In this case, the "
@@ -23540,15 +24263,15 @@ msgid ""
"the body length will also be [code]-1[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:54
+#: doc/classes/HTTPClient.xml:55
msgid "Returns the response's HTTP status code."
msgstr ""
-#: doc/classes/HTTPClient.xml:61
+#: doc/classes/HTTPClient.xml:62
msgid "Returns the response headers."
msgstr ""
-#: doc/classes/HTTPClient.xml:68
+#: doc/classes/HTTPClient.xml:69
msgid ""
"Returns all response headers as a Dictionary of structure [code]{ \"key\": "
"\"value1; value2\" }[/code] where the case-sensitivity of the keys and "
@@ -23563,27 +24286,27 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:82
+#: doc/classes/HTTPClient.xml:83
msgid ""
"Returns a [enum Status] constant. Need to call [method poll] in order to get "
"status updates."
msgstr ""
-#: doc/classes/HTTPClient.xml:89
+#: doc/classes/HTTPClient.xml:90
msgid "If [code]true[/code], this [HTTPClient] has a response available."
msgstr ""
-#: doc/classes/HTTPClient.xml:96
+#: doc/classes/HTTPClient.xml:97
msgid "If [code]true[/code], this [HTTPClient] has a response that is chunked."
msgstr ""
-#: doc/classes/HTTPClient.xml:103
+#: doc/classes/HTTPClient.xml:104
msgid ""
"This needs to be called in order to have any request processed. Check "
"results with [method get_status]."
msgstr ""
-#: doc/classes/HTTPClient.xml:112
+#: doc/classes/HTTPClient.xml:113
msgid ""
"Generates a GET/POST application/x-www-form-urlencoded style query string "
"from a provided dictionary, e.g.:\n"
@@ -23603,11 +24326,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:130
+#: doc/classes/HTTPClient.xml:131
msgid "Reads one chunk from the response."
msgstr ""
-#: doc/classes/HTTPClient.xml:145
+#: doc/classes/HTTPClient.xml:146
msgid ""
"Sends a request to the connected host. The URL parameter is just the part "
"after the host, so for [code]http://somehost.com/index.php[/code], it is "
@@ -23625,7 +24348,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:168
+#: doc/classes/HTTPClient.xml:169
msgid ""
"Sends a raw request to the connected host. The URL parameter is just the "
"part after the host, so for [code]http://somehost.com/index.php[/code], it "
@@ -23635,43 +24358,43 @@ msgid ""
"Sends the body data raw, as a byte array and does not encode it in any way."
msgstr ""
-#: doc/classes/HTTPClient.xml:176
+#: doc/classes/HTTPClient.xml:177
msgid ""
"If [code]true[/code], execution will block until all data is read from the "
"response."
msgstr ""
-#: doc/classes/HTTPClient.xml:179
+#: doc/classes/HTTPClient.xml:180
msgid "The connection to use for this client."
msgstr ""
-#: doc/classes/HTTPClient.xml:182
+#: doc/classes/HTTPClient.xml:183
msgid ""
"The size of the buffer used and maximum bytes to read per iteration. See "
"[method read_response_body_chunk]."
msgstr ""
-#: doc/classes/HTTPClient.xml:187
+#: doc/classes/HTTPClient.xml:188
msgid ""
"HTTP GET method. The GET method requests a representation of the specified "
"resource. Requests using GET should only retrieve data."
msgstr ""
-#: doc/classes/HTTPClient.xml:190
+#: doc/classes/HTTPClient.xml:191
msgid ""
"HTTP HEAD method. The HEAD method asks for a response identical to that of a "
"GET request, but without the response body. This is useful to request "
"metadata like HTTP headers or to check if a resource exists."
msgstr ""
-#: doc/classes/HTTPClient.xml:193
+#: doc/classes/HTTPClient.xml:194
msgid ""
"HTTP POST method. The POST method is used to submit an entity to the "
"specified resource, often causing a change in state or side effects on the "
"server. This is often used for forms and submitting data or uploading files."
msgstr ""
-#: doc/classes/HTTPClient.xml:196
+#: doc/classes/HTTPClient.xml:197
msgid ""
"HTTP PUT method. The PUT method asks to replace all current representations "
"of the target resource with the request payload. (You can think of POST as "
@@ -23679,103 +24402,103 @@ msgid ""
"not make a clear distinction or change their meaning)."
msgstr ""
-#: doc/classes/HTTPClient.xml:199
+#: doc/classes/HTTPClient.xml:200
msgid ""
"HTTP DELETE method. The DELETE method requests to delete the specified "
"resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:202
+#: doc/classes/HTTPClient.xml:203
msgid ""
"HTTP OPTIONS method. The OPTIONS method asks for a description of the "
"communication options for the target resource. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:205
+#: doc/classes/HTTPClient.xml:206
msgid ""
"HTTP TRACE method. The TRACE method performs a message loop-back test along "
"the path to the target resource. Returns the entire HTTP request received in "
"the response body. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:208
+#: doc/classes/HTTPClient.xml:209
msgid ""
"HTTP CONNECT method. The CONNECT method establishes a tunnel to the server "
"identified by the target resource. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:211
+#: doc/classes/HTTPClient.xml:212
msgid ""
"HTTP PATCH method. The PATCH method is used to apply partial modifications "
"to a resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:214
+#: doc/classes/HTTPClient.xml:215
msgid "Represents the size of the [enum Method] enum."
msgstr ""
-#: doc/classes/HTTPClient.xml:217
+#: doc/classes/HTTPClient.xml:218
msgid "Status: Disconnected from the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:220
+#: doc/classes/HTTPClient.xml:221
msgid "Status: Currently resolving the hostname for the given URL into an IP."
msgstr ""
-#: doc/classes/HTTPClient.xml:223
+#: doc/classes/HTTPClient.xml:224
msgid "Status: DNS failure: Can't resolve the hostname for the given URL."
msgstr ""
-#: doc/classes/HTTPClient.xml:226
+#: doc/classes/HTTPClient.xml:227
msgid "Status: Currently connecting to server."
msgstr ""
-#: doc/classes/HTTPClient.xml:229
+#: doc/classes/HTTPClient.xml:230
msgid "Status: Can't connect to the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:232
+#: doc/classes/HTTPClient.xml:233
msgid "Status: Connection established."
msgstr ""
-#: doc/classes/HTTPClient.xml:235
+#: doc/classes/HTTPClient.xml:236
msgid "Status: Currently sending request."
msgstr ""
-#: doc/classes/HTTPClient.xml:238
+#: doc/classes/HTTPClient.xml:239
msgid "Status: HTTP body received."
msgstr ""
-#: doc/classes/HTTPClient.xml:241
+#: doc/classes/HTTPClient.xml:242
msgid "Status: Error in HTTP connection."
msgstr ""
-#: doc/classes/HTTPClient.xml:244
+#: doc/classes/HTTPClient.xml:245
msgid "Status: Error in SSL handshake."
msgstr ""
-#: doc/classes/HTTPClient.xml:247
+#: doc/classes/HTTPClient.xml:248
msgid ""
"HTTP status code [code]100 Continue[/code]. Interim response that indicates "
"everything so far is OK and that the client should continue with the request "
"(or ignore this status if already finished)."
msgstr ""
-#: doc/classes/HTTPClient.xml:250
+#: doc/classes/HTTPClient.xml:251
msgid ""
"HTTP status code [code]101 Switching Protocol[/code]. Sent in response to an "
"[code]Upgrade[/code] request header by the client. Indicates the protocol "
"the server is switching to."
msgstr ""
-#: doc/classes/HTTPClient.xml:253
+#: doc/classes/HTTPClient.xml:254
msgid ""
"HTTP status code [code]102 Processing[/code] (WebDAV). Indicates that the "
"server has received and is processing the request, but no response is "
"available yet."
msgstr ""
-#: doc/classes/HTTPClient.xml:256
+#: doc/classes/HTTPClient.xml:257
msgid ""
"HTTP status code [code]200 OK[/code]. The request has succeeded. Default "
"response for successful requests. Meaning varies depending on the request. "
@@ -23786,14 +24509,14 @@ msgid ""
"server."
msgstr ""
-#: doc/classes/HTTPClient.xml:259
+#: doc/classes/HTTPClient.xml:260
msgid ""
"HTTP status code [code]201 Created[/code]. The request has succeeded and a "
"new resource has been created as a result of it. This is typically the "
"response sent after a PUT request."
msgstr ""
-#: doc/classes/HTTPClient.xml:262
+#: doc/classes/HTTPClient.xml:263
msgid ""
"HTTP status code [code]202 Accepted[/code]. The request has been received "
"but not yet acted upon. It is non-committal, meaning that there is no way in "
@@ -23802,7 +24525,7 @@ msgid ""
"server handles the request, or for batch processing."
msgstr ""
-#: doc/classes/HTTPClient.xml:265
+#: doc/classes/HTTPClient.xml:266
msgid ""
"HTTP status code [code]203 Non-Authoritative Information[/code]. This "
"response code means returned meta-information set is not exact set as "
@@ -23811,14 +24534,14 @@ msgid ""
"instead of this response."
msgstr ""
-#: doc/classes/HTTPClient.xml:268
+#: doc/classes/HTTPClient.xml:269
msgid ""
"HTTP status code [code]204 No Content[/code]. There is no content to send "
"for this request, but the headers may be useful. The user-agent may update "
"its cached headers for this resource with the new ones."
msgstr ""
-#: doc/classes/HTTPClient.xml:271
+#: doc/classes/HTTPClient.xml:272
msgid ""
"HTTP status code [code]205 Reset Content[/code]. The server has fulfilled "
"the request and desires that the client resets the \"document view\" that "
@@ -23826,49 +24549,49 @@ msgid ""
"origin server."
msgstr ""
-#: doc/classes/HTTPClient.xml:274
+#: doc/classes/HTTPClient.xml:275
msgid ""
"HTTP status code [code]206 Partial Content[/code]. This response code is "
"used because of a range header sent by the client to separate download into "
"multiple streams."
msgstr ""
-#: doc/classes/HTTPClient.xml:277
+#: doc/classes/HTTPClient.xml:278
msgid ""
"HTTP status code [code]207 Multi-Status[/code] (WebDAV). A Multi-Status "
"response conveys information about multiple resources in situations where "
"multiple status codes might be appropriate."
msgstr ""
-#: doc/classes/HTTPClient.xml:280
+#: doc/classes/HTTPClient.xml:281
msgid ""
"HTTP status code [code]208 Already Reported[/code] (WebDAV). Used inside a "
"DAV: propstat response element to avoid enumerating the internal members of "
"multiple bindings to the same collection repeatedly."
msgstr ""
-#: doc/classes/HTTPClient.xml:283
+#: doc/classes/HTTPClient.xml:284
msgid ""
"HTTP status code [code]226 IM Used[/code] (WebDAV). The server has fulfilled "
"a GET request for the resource, and the response is a representation of the "
"result of one or more instance-manipulations applied to the current instance."
msgstr ""
-#: doc/classes/HTTPClient.xml:286
+#: doc/classes/HTTPClient.xml:287
msgid ""
"HTTP status code [code]300 Multiple Choice[/code]. The request has more than "
"one possible responses and there is no standardized way to choose one of the "
"responses. User-agent or user should choose one of them."
msgstr ""
-#: doc/classes/HTTPClient.xml:289
+#: doc/classes/HTTPClient.xml:290
msgid ""
"HTTP status code [code]301 Moved Permanently[/code]. Redirection. This "
"response code means the URI of requested resource has been changed. The new "
"URI is usually included in the response."
msgstr ""
-#: doc/classes/HTTPClient.xml:292
+#: doc/classes/HTTPClient.xml:293
msgid ""
"HTTP status code [code]302 Found[/code]. Temporary redirection. This "
"response code means the URI of requested resource has been changed "
@@ -23876,7 +24599,7 @@ msgid ""
"this same URI should be used by the client in future requests."
msgstr ""
-#: doc/classes/HTTPClient.xml:295
+#: doc/classes/HTTPClient.xml:296
msgid ""
"HTTP status code [code]303 See Other[/code]. The server is redirecting the "
"user agent to a different resource, as indicated by a URI in the Location "
@@ -23884,39 +24607,39 @@ msgid ""
"original request."
msgstr ""
-#: doc/classes/HTTPClient.xml:298
+#: doc/classes/HTTPClient.xml:299
msgid ""
"HTTP status code [code]304 Not Modified[/code]. A conditional GET or HEAD "
"request has been received and would have resulted in a 200 OK response if it "
"were not for the fact that the condition evaluated to [code]false[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:301
+#: doc/classes/HTTPClient.xml:302
msgid ""
"HTTP status code [code]305 Use Proxy[/code]. [i]Deprecated. Do not use.[/i]"
msgstr ""
-#: doc/classes/HTTPClient.xml:304
+#: doc/classes/HTTPClient.xml:305
msgid ""
"HTTP status code [code]306 Switch Proxy[/code]. [i]Deprecated. Do not use.[/"
"i]"
msgstr ""
-#: doc/classes/HTTPClient.xml:307
+#: doc/classes/HTTPClient.xml:308
msgid ""
"HTTP status code [code]307 Temporary Redirect[/code]. The target resource "
"resides temporarily under a different URI and the user agent MUST NOT change "
"the request method if it performs an automatic redirection to that URI."
msgstr ""
-#: doc/classes/HTTPClient.xml:310
+#: doc/classes/HTTPClient.xml:311
msgid ""
"HTTP status code [code]308 Permanent Redirect[/code]. The target resource "
"has been assigned a new permanent URI and any future references to this "
"resource ought to use one of the enclosed URIs."
msgstr ""
-#: doc/classes/HTTPClient.xml:313
+#: doc/classes/HTTPClient.xml:314
msgid ""
"HTTP status code [code]400 Bad Request[/code]. The request was invalid. The "
"server cannot or will not process the request due to something that is "
@@ -23925,21 +24648,21 @@ msgid ""
"routing)."
msgstr ""
-#: doc/classes/HTTPClient.xml:316
+#: doc/classes/HTTPClient.xml:317
msgid ""
"HTTP status code [code]401 Unauthorized[/code]. Credentials required. The "
"request has not been applied because it lacks valid authentication "
"credentials for the target resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:319
+#: doc/classes/HTTPClient.xml:320
msgid ""
"HTTP status code [code]402 Payment Required[/code]. This response code is "
"reserved for future use. Initial aim for creating this code was using it for "
"digital payment systems, however this is not currently used."
msgstr ""
-#: doc/classes/HTTPClient.xml:322
+#: doc/classes/HTTPClient.xml:323
msgid ""
"HTTP status code [code]403 Forbidden[/code]. The client does not have access "
"rights to the content, i.e. they are unauthorized, so server is rejecting to "
@@ -23947,7 +24670,7 @@ msgid ""
"known to the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:325
+#: doc/classes/HTTPClient.xml:326
msgid ""
"HTTP status code [code]404 Not Found[/code]. The server can not find "
"requested resource. Either the URL is not recognized or the endpoint is "
@@ -23955,7 +24678,7 @@ msgid ""
"403 to hide existence of a resource if the client is not authorized."
msgstr ""
-#: doc/classes/HTTPClient.xml:328
+#: doc/classes/HTTPClient.xml:329
msgid ""
"HTTP status code [code]405 Method Not Allowed[/code]. The request's HTTP "
"method is known by the server but has been disabled and cannot be used. For "
@@ -23963,7 +24686,7 @@ msgid ""
"GET and HEAD, must never be disabled and should not return this error code."
msgstr ""
-#: doc/classes/HTTPClient.xml:331
+#: doc/classes/HTTPClient.xml:332
msgid ""
"HTTP status code [code]406 Not Acceptable[/code]. The target resource does "
"not have a current representation that would be acceptable to the user "
@@ -23971,21 +24694,21 @@ msgid ""
"request. Used when negotiation content."
msgstr ""
-#: doc/classes/HTTPClient.xml:334
+#: doc/classes/HTTPClient.xml:335
msgid ""
"HTTP status code [code]407 Proxy Authentication Required[/code]. Similar to "
"401 Unauthorized, but it indicates that the client needs to authenticate "
"itself in order to use a proxy."
msgstr ""
-#: doc/classes/HTTPClient.xml:337
+#: doc/classes/HTTPClient.xml:338
msgid ""
"HTTP status code [code]408 Request Timeout[/code]. The server did not "
"receive a complete request message within the time that it was prepared to "
"wait."
msgstr ""
-#: doc/classes/HTTPClient.xml:340
+#: doc/classes/HTTPClient.xml:341
msgid ""
"HTTP status code [code]409 Conflict[/code]. The request could not be "
"completed due to a conflict with the current state of the target resource. "
@@ -23993,47 +24716,47 @@ msgid ""
"conflict and resubmit the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:343
+#: doc/classes/HTTPClient.xml:344
msgid ""
"HTTP status code [code]410 Gone[/code]. The target resource is no longer "
"available at the origin server and this condition is likely permanent."
msgstr ""
-#: doc/classes/HTTPClient.xml:346
+#: doc/classes/HTTPClient.xml:347
msgid ""
"HTTP status code [code]411 Length Required[/code]. The server refuses to "
"accept the request without a defined Content-Length header."
msgstr ""
-#: doc/classes/HTTPClient.xml:349
+#: doc/classes/HTTPClient.xml:350
msgid ""
"HTTP status code [code]412 Precondition Failed[/code]. One or more "
"conditions given in the request header fields evaluated to [code]false[/"
"code] when tested on the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:352
+#: doc/classes/HTTPClient.xml:353
msgid ""
"HTTP status code [code]413 Entity Too Large[/code]. The server is refusing "
"to process a request because the request payload is larger than the server "
"is willing or able to process."
msgstr ""
-#: doc/classes/HTTPClient.xml:355
+#: doc/classes/HTTPClient.xml:356
msgid ""
"HTTP status code [code]414 Request-URI Too Long[/code]. The server is "
"refusing to service the request because the request-target is longer than "
"the server is willing to interpret."
msgstr ""
-#: doc/classes/HTTPClient.xml:358
+#: doc/classes/HTTPClient.xml:359
msgid ""
"HTTP status code [code]415 Unsupported Media Type[/code]. The origin server "
"is refusing to service the request because the payload is in a format not "
"supported by this method on the target resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:361
+#: doc/classes/HTTPClient.xml:362
msgid ""
"HTTP status code [code]416 Requested Range Not Satisfiable[/code]. None of "
"the ranges in the request's Range header field overlap the current extent of "
@@ -24041,21 +24764,21 @@ msgid ""
"to invalid ranges or an excessive request of small or overlapping ranges."
msgstr ""
-#: doc/classes/HTTPClient.xml:364
+#: doc/classes/HTTPClient.xml:365
msgid ""
"HTTP status code [code]417 Expectation Failed[/code]. The expectation given "
"in the request's Expect header field could not be met by at least one of the "
"inbound servers."
msgstr ""
-#: doc/classes/HTTPClient.xml:367
+#: doc/classes/HTTPClient.xml:368
msgid ""
"HTTP status code [code]418 I'm A Teapot[/code]. Any attempt to brew coffee "
"with a teapot should result in the error code \"418 I'm a teapot\". The "
"resulting entity body MAY be short and stout."
msgstr ""
-#: doc/classes/HTTPClient.xml:370
+#: doc/classes/HTTPClient.xml:371
msgid ""
"HTTP status code [code]421 Misdirected Request[/code]. The request was "
"directed at a server that is not able to produce a response. This can be "
@@ -24063,7 +24786,7 @@ msgid ""
"combination of scheme and authority that are included in the request URI."
msgstr ""
-#: doc/classes/HTTPClient.xml:373
+#: doc/classes/HTTPClient.xml:374
msgid ""
"HTTP status code [code]422 Unprocessable Entity[/code] (WebDAV). The server "
"understands the content type of the request entity (hence a 415 Unsupported "
@@ -24072,40 +24795,40 @@ msgid ""
"was unable to process the contained instructions."
msgstr ""
-#: doc/classes/HTTPClient.xml:376
+#: doc/classes/HTTPClient.xml:377
msgid ""
"HTTP status code [code]423 Locked[/code] (WebDAV). The source or destination "
"resource of a method is locked."
msgstr ""
-#: doc/classes/HTTPClient.xml:379
+#: doc/classes/HTTPClient.xml:380
msgid ""
"HTTP status code [code]424 Failed Dependency[/code] (WebDAV). The method "
"could not be performed on the resource because the requested action depended "
"on another action and that action failed."
msgstr ""
-#: doc/classes/HTTPClient.xml:382
+#: doc/classes/HTTPClient.xml:383
msgid ""
"HTTP status code [code]426 Upgrade Required[/code]. The server refuses to "
"perform the request using the current protocol but might be willing to do so "
"after the client upgrades to a different protocol."
msgstr ""
-#: doc/classes/HTTPClient.xml:385
+#: doc/classes/HTTPClient.xml:386
msgid ""
"HTTP status code [code]428 Precondition Required[/code]. The origin server "
"requires the request to be conditional."
msgstr ""
-#: doc/classes/HTTPClient.xml:388
+#: doc/classes/HTTPClient.xml:389
msgid ""
"HTTP status code [code]429 Too Many Requests[/code]. The user has sent too "
"many requests in a given amount of time (see \"rate limiting\"). Back off "
"and increase time between requests or try again later."
msgstr ""
-#: doc/classes/HTTPClient.xml:391
+#: doc/classes/HTTPClient.xml:392
msgid ""
"HTTP status code [code]431 Request Header Fields Too Large[/code]. The "
"server is unwilling to process the request because its header fields are too "
@@ -24113,27 +24836,27 @@ msgid ""
"header fields."
msgstr ""
-#: doc/classes/HTTPClient.xml:394
+#: doc/classes/HTTPClient.xml:395
msgid ""
"HTTP status code [code]451 Response Unavailable For Legal Reasons[/code]. "
"The server is denying access to the resource as a consequence of a legal "
"demand."
msgstr ""
-#: doc/classes/HTTPClient.xml:397
+#: doc/classes/HTTPClient.xml:398
msgid ""
"HTTP status code [code]500 Internal Server Error[/code]. The server "
"encountered an unexpected condition that prevented it from fulfilling the "
"request."
msgstr ""
-#: doc/classes/HTTPClient.xml:400
+#: doc/classes/HTTPClient.xml:401
msgid ""
"HTTP status code [code]501 Not Implemented[/code]. The server does not "
"support the functionality required to fulfill the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:403
+#: doc/classes/HTTPClient.xml:404
msgid ""
"HTTP status code [code]502 Bad Gateway[/code]. The server, while acting as a "
"gateway or proxy, received an invalid response from an inbound server it "
@@ -24141,7 +24864,7 @@ msgid ""
"balancers or proxies."
msgstr ""
-#: doc/classes/HTTPClient.xml:406
+#: doc/classes/HTTPClient.xml:407
msgid ""
"HTTP status code [code]503 Service Unavailable[/code]. The server is "
"currently unable to handle the request due to a temporary overload or "
@@ -24149,7 +24872,7 @@ msgid ""
"again later."
msgstr ""
-#: doc/classes/HTTPClient.xml:409
+#: doc/classes/HTTPClient.xml:410
msgid ""
"HTTP status code [code]504 Gateway Timeout[/code]. The server, while acting "
"as a gateway or proxy, did not receive a timely response from an upstream "
@@ -24157,14 +24880,14 @@ msgid ""
"returned by load balancers or proxies."
msgstr ""
-#: doc/classes/HTTPClient.xml:412
+#: doc/classes/HTTPClient.xml:413
msgid ""
"HTTP status code [code]505 HTTP Version Not Supported[/code]. The server "
"does not support, or refuses to support, the major version of HTTP that was "
"used in the request message."
msgstr ""
-#: doc/classes/HTTPClient.xml:415
+#: doc/classes/HTTPClient.xml:416
msgid ""
"HTTP status code [code]506 Variant Also Negotiates[/code]. The server has an "
"internal configuration error: the chosen variant resource is configured to "
@@ -24172,14 +24895,14 @@ msgid ""
"proper end point in the negotiation process."
msgstr ""
-#: doc/classes/HTTPClient.xml:418
+#: doc/classes/HTTPClient.xml:419
msgid ""
"HTTP status code [code]507 Insufficient Storage[/code]. The method could not "
"be performed on the resource because the server is unable to store the "
"representation needed to successfully complete the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:421
+#: doc/classes/HTTPClient.xml:422
msgid ""
"HTTP status code [code]508 Loop Detected[/code]. The server terminated an "
"operation because it encountered an infinite loop while processing a request "
@@ -24187,14 +24910,14 @@ msgid ""
"failed."
msgstr ""
-#: doc/classes/HTTPClient.xml:424
+#: doc/classes/HTTPClient.xml:425
msgid ""
"HTTP status code [code]510 Not Extended[/code]. The policy for accessing the "
"resource has not been met in the request. The server should send back all "
"the information necessary for the client to issue an extended request."
msgstr ""
-#: doc/classes/HTTPClient.xml:427
+#: doc/classes/HTTPClient.xml:428
msgid ""
"HTTP status code [code]511 Network Authentication Required[/code]. The "
"client needs to authenticate to gain network access."
@@ -24220,12 +24943,21 @@ msgid ""
" http_request.connect(\"request_completed\", self, "
"\"_http_request_completed\")\n"
"\n"
-" # Perform the HTTP request. The URL below returns some JSON as of "
-"writing.\n"
+" # Perform a GET request. The URL below returns JSON as of writing.\n"
" var error = http_request.request(\"https://httpbin.org/get\")\n"
" if error != OK:\n"
" push_error(\"An error occurred in the HTTP request.\")\n"
"\n"
+" # Perform a POST request. The URL below returns JSON as of writing.\n"
+" # Note: Don't make simultaneous requests using a single HTTPRequest "
+"node.\n"
+" # The snippet below is provided for reference only.\n"
+" var body = {\"name\": \"Godette\"}\n"
+" var error = http_request.request(\"https://httpbin.org/post\", [], true, "
+"HTTPClient.METHOD_POST, body)\n"
+" if error != OK:\n"
+" push_error(\"An error occurred in the HTTP request.\")\n"
+"\n"
"\n"
"# Called when the HTTP request is completed.\n"
"func _http_request_completed(result, response_code, headers, body):\n"
@@ -24265,20 +24997,28 @@ msgid ""
" var texture_rect = TextureRect.new()\n"
" add_child(texture_rect)\n"
" texture_rect.texture = texture\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] When performing HTTP requests from a project exported to HTML5, "
+"keep in mind the remote server may not allow requests from foreign origins "
+"due to [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/"
+"url]. If you host the server in question, you should modify its backend to "
+"allow requests from foreign origins by adding the [code]Access-Control-Allow-"
+"Origin: *[/code] HTTP header."
msgstr ""
-#: doc/classes/HTTPRequest.xml:61
+#: doc/classes/HTTPRequest.xml:70
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/"
"http_request_class.html"
msgstr ""
+"https://docs.godotengine.org/de/latest/tutorials/networking/"
+"http_request_class.html"
-#: doc/classes/HTTPRequest.xml:69
+#: doc/classes/HTTPRequest.xml:78
msgid "Cancels the current request."
msgstr ""
-#: doc/classes/HTTPRequest.xml:76
+#: doc/classes/HTTPRequest.xml:85
msgid ""
"Returns the response body length.\n"
"[b]Note:[/b] Some Web servers may not send a body length. In this case, the "
@@ -24286,17 +25026,17 @@ msgid ""
"the body length will also be [code]-1[/code]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:84
+#: doc/classes/HTTPRequest.xml:93
msgid "Returns the amount of bytes this HTTPRequest downloaded."
msgstr ""
-#: doc/classes/HTTPRequest.xml:91
+#: doc/classes/HTTPRequest.xml:100
msgid ""
"Returns the current status of the underlying [HTTPClient]. See [enum "
"HTTPClient.Status]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:108
+#: doc/classes/HTTPRequest.xml:117
msgid ""
"Creates request on the underlying [HTTPClient]. If there is no configuration "
"errors, it tries to connect using [method HTTPClient.connect_to_host] and "
@@ -24309,11 +25049,11 @@ msgid ""
"connect to host."
msgstr ""
-#: doc/classes/HTTPRequest.xml:115
+#: doc/classes/HTTPRequest.xml:124
msgid "Maximum allowed size for response bodies."
msgstr ""
-#: doc/classes/HTTPRequest.xml:118
+#: doc/classes/HTTPRequest.xml:127
msgid ""
"The size of the buffer used and maximum bytes to read per iteration. See "
"[member HTTPClient.read_chunk_size].\n"
@@ -24321,63 +25061,63 @@ msgid ""
"files to achieve better speeds at the cost of memory."
msgstr ""
-#: doc/classes/HTTPRequest.xml:122
+#: doc/classes/HTTPRequest.xml:131
msgid "The file to download into. Will output any received file into it."
msgstr ""
-#: doc/classes/HTTPRequest.xml:125
+#: doc/classes/HTTPRequest.xml:134
msgid "Maximum number of allowed redirects."
msgstr ""
-#: doc/classes/HTTPRequest.xml:130
+#: doc/classes/HTTPRequest.xml:139
msgid "If [code]true[/code], multithreading is used to improve performance."
msgstr ""
-#: doc/classes/HTTPRequest.xml:144
+#: doc/classes/HTTPRequest.xml:153
msgid "Emitted when a request is completed."
msgstr ""
-#: doc/classes/HTTPRequest.xml:150
+#: doc/classes/HTTPRequest.xml:159
msgid "Request successful."
msgstr ""
-#: doc/classes/HTTPRequest.xml:155
+#: doc/classes/HTTPRequest.xml:164
msgid "Request failed while connecting."
msgstr ""
-#: doc/classes/HTTPRequest.xml:158
+#: doc/classes/HTTPRequest.xml:167
msgid "Request failed while resolving."
msgstr ""
-#: doc/classes/HTTPRequest.xml:161
+#: doc/classes/HTTPRequest.xml:170
msgid "Request failed due to connection (read/write) error."
msgstr ""
-#: doc/classes/HTTPRequest.xml:164
+#: doc/classes/HTTPRequest.xml:173
msgid "Request failed on SSL handshake."
msgstr ""
-#: doc/classes/HTTPRequest.xml:167
+#: doc/classes/HTTPRequest.xml:176
msgid "Request does not have a response (yet)."
msgstr ""
-#: doc/classes/HTTPRequest.xml:170
+#: doc/classes/HTTPRequest.xml:179
msgid "Request exceeded its maximum size limit, see [member body_size_limit]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:173
+#: doc/classes/HTTPRequest.xml:182
msgid "Request failed (currently unused)."
msgstr ""
-#: doc/classes/HTTPRequest.xml:176
+#: doc/classes/HTTPRequest.xml:185
msgid "HTTPRequest couldn't open the download file."
msgstr ""
-#: doc/classes/HTTPRequest.xml:179
+#: doc/classes/HTTPRequest.xml:188
msgid "HTTPRequest couldn't write to the download file."
msgstr ""
-#: doc/classes/HTTPRequest.xml:182
+#: doc/classes/HTTPRequest.xml:191
msgid "Request reached its maximum redirect limit, see [member max_redirects]."
msgstr ""
@@ -24601,42 +25341,46 @@ msgid "Loads an image from the binary contents of a PNG file."
msgstr ""
#: doc/classes/Image.xml:373
+msgid "Loads an image from the binary contents of a TGA file."
+msgstr ""
+
+#: doc/classes/Image.xml:382
msgid "Loads an image from the binary contents of a WebP file."
msgstr ""
-#: doc/classes/Image.xml:380
+#: doc/classes/Image.xml:389
msgid ""
"Converts the image's data to represent coordinates on a 3D plane. This is "
"used when the image represents a normalmap. A normalmap can add lots of "
"detail to a 3D surface without increasing the polygon count."
msgstr ""
-#: doc/classes/Image.xml:387
+#: doc/classes/Image.xml:396
msgid ""
"Multiplies color values with alpha values. Resulting color values for a "
"pixel are [code](color * alpha)/256[/code]."
msgstr ""
-#: doc/classes/Image.xml:400
+#: doc/classes/Image.xml:409
msgid ""
"Resizes the image to the given [code]width[/code] and [code]height[/code]. "
"New pixels are calculated using [code]interpolation[/code]. See "
"[code]interpolation[/code] constants."
msgstr ""
-#: doc/classes/Image.xml:409
+#: doc/classes/Image.xml:418
msgid ""
"Resizes the image to the nearest power of 2 for the width and height. If "
"[code]square[/code] is [code]true[/code] then set width and height to be the "
"same."
msgstr ""
-#: doc/classes/Image.xml:416
+#: doc/classes/Image.xml:425
msgid ""
"Converts a standard RGBE (Red Green Blue Exponent) image to an sRGB image."
msgstr ""
-#: doc/classes/Image.xml:427
+#: doc/classes/Image.xml:436
msgid ""
"Saves the image as an EXR file to [code]path[/code]. If [code]grayscale[/"
"code] is [code]true[/code] and the image has only one channel, it will be "
@@ -24645,11 +25389,11 @@ msgid ""
"TinyEXR module."
msgstr ""
-#: doc/classes/Image.xml:436
+#: doc/classes/Image.xml:445
msgid "Saves the image as a PNG file to [code]path[/code]."
msgstr ""
-#: doc/classes/Image.xml:455
+#: doc/classes/Image.xml:464
msgid ""
"Sets the [Color] of the pixel at [code](x, y)[/code]. Example:\n"
"[codeblock]\n"
@@ -24659,7 +25403,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Image.xml:471
+#: doc/classes/Image.xml:480
msgid ""
"Sets the [Color] of the pixel at [code](dst.x, dst.y)[/code]. Note that the "
"[code]dst[/code] values must be integers. Example:\n"
@@ -24670,51 +25414,51 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Image.xml:483
+#: doc/classes/Image.xml:492
msgid "Shrinks the image by a factor of 2."
msgstr ""
-#: doc/classes/Image.xml:490
+#: doc/classes/Image.xml:499
msgid "Converts the raw data from the sRGB colorspace to a linear scale."
msgstr ""
-#: doc/classes/Image.xml:496
+#: doc/classes/Image.xml:505
msgid ""
"Holds all of the image's color data in a given format. See [enum Format] "
"constants."
msgstr ""
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:510
msgid "The maximal width allowed for [Image] resources."
msgstr ""
-#: doc/classes/Image.xml:504
+#: doc/classes/Image.xml:513
msgid "The maximal height allowed for [Image] resources."
msgstr ""
-#: doc/classes/Image.xml:507
+#: doc/classes/Image.xml:516
msgid "Texture format with a single 8-bit depth representing luminance."
msgstr ""
-#: doc/classes/Image.xml:510
+#: doc/classes/Image.xml:519
msgid ""
"OpenGL texture format with two values, luminance and alpha each stored with "
"8 bits."
msgstr ""
-#: doc/classes/Image.xml:513
+#: doc/classes/Image.xml:522
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
"bitdepth of 8."
msgstr ""
-#: doc/classes/Image.xml:516
+#: doc/classes/Image.xml:525
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
-#: doc/classes/Image.xml:519
+#: doc/classes/Image.xml:528
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -24722,7 +25466,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:523
+#: doc/classes/Image.xml:532
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -24730,67 +25474,67 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:536
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
-#: doc/classes/Image.xml:532
+#: doc/classes/Image.xml:541
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
-#: doc/classes/Image.xml:535
+#: doc/classes/Image.xml:544
msgid ""
"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
"each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:538
+#: doc/classes/Image.xml:547
msgid ""
"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
"components, each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:541
+#: doc/classes/Image.xml:550
msgid ""
"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
"components, each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:544
+#: doc/classes/Image.xml:553
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 16-"
"bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:556
msgid ""
"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
"each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:550
+#: doc/classes/Image.xml:559
msgid ""
"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
"components, each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:553
+#: doc/classes/Image.xml:562
msgid ""
"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
"components, each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:556
+#: doc/classes/Image.xml:565
msgid ""
"A special OpenGL texture format where the three color components have 9 bits "
"of precision and all three share a single 5-bit exponent."
msgstr ""
-#: doc/classes/Image.xml:559
+#: doc/classes/Image.xml:568
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format that uses Block Compression 1, and is the smallest variation "
@@ -24800,7 +25544,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:563
+#: doc/classes/Image.xml:572
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format that uses Block Compression 2, and color data is interpreted "
@@ -24810,7 +25554,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:567
+#: doc/classes/Image.xml:576
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format also known as Block Compression 3 or BC3 that contains 64 "
@@ -24821,7 +25565,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:571
+#: doc/classes/Image.xml:580
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -24829,7 +25573,7 @@ msgid ""
"DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:574
+#: doc/classes/Image.xml:583
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -24837,7 +25581,7 @@ msgid ""
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:577
+#: doc/classes/Image.xml:586
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -24846,21 +25590,21 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:581
+#: doc/classes/Image.xml:590
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with signed floating-point "
"RGB components."
msgstr ""
-#: doc/classes/Image.xml:584
+#: doc/classes/Image.xml:593
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned floating-point "
"RGB components."
msgstr ""
-#: doc/classes/Image.xml:587
+#: doc/classes/Image.xml:596
msgid ""
"Texture format used on PowerVR-supported mobile platforms, uses 2-bit color "
"depth with no alpha. More information can be found [url=https://en.wikipedia."
@@ -24869,25 +25613,25 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:600
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:603
msgid ""
"Similar to [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with 4-"
"bit color depth and no alpha."
msgstr ""
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:606
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:609
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -24895,7 +25639,7 @@ msgid ""
"standard. This format cannot store an alpha channel."
msgstr ""
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:612
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24903,7 +25647,7 @@ msgid ""
"unsigned data."
msgstr ""
-#: doc/classes/Image.xml:606
+#: doc/classes/Image.xml:615
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24911,7 +25655,7 @@ msgid ""
"channel of signed data."
msgstr ""
-#: doc/classes/Image.xml:609
+#: doc/classes/Image.xml:618
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24919,7 +25663,7 @@ msgid ""
"of unsigned data."
msgstr ""
-#: doc/classes/Image.xml:612
+#: doc/classes/Image.xml:621
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24927,7 +25671,7 @@ msgid ""
"channels of signed data."
msgstr ""
-#: doc/classes/Image.xml:615
+#: doc/classes/Image.xml:624
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24937,7 +25681,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:619
+#: doc/classes/Image.xml:628
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24947,7 +25691,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:623
+#: doc/classes/Image.xml:632
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24958,31 +25702,31 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:631
+#: doc/classes/Image.xml:640
msgid "Represents the size of the [enum Format] enum."
msgstr ""
-#: doc/classes/Image.xml:634
+#: doc/classes/Image.xml:643
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
-#: doc/classes/Image.xml:637
+#: doc/classes/Image.xml:646
msgid ""
"Performs bilinear interpolation. If the image is resized, it will be blurry. "
"This mode is faster than [constant INTERPOLATE_CUBIC], but it results in "
"lower quality."
msgstr ""
-#: doc/classes/Image.xml:640
+#: doc/classes/Image.xml:649
msgid ""
"Performs cubic interpolation. If the image is resized, it will be blurry. "
"This mode often gives better results compared to [constant "
"INTERPOLATE_BILINEAR], at the cost of being slower."
msgstr ""
-#: doc/classes/Image.xml:643
+#: doc/classes/Image.xml:652
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -24997,55 +25741,55 @@ msgid ""
"a new set will be generated for the resulting image."
msgstr ""
-#: doc/classes/Image.xml:650
+#: doc/classes/Image.xml:659
msgid ""
"Performs Lanczos interpolation. This is the slowest image resizing mode, but "
"it typically gives the best results, especially when downscalng images."
msgstr ""
-#: doc/classes/Image.xml:653
+#: doc/classes/Image.xml:662
msgid "Image does not have alpha."
msgstr ""
-#: doc/classes/Image.xml:656
+#: doc/classes/Image.xml:665
msgid "Image stores alpha in a single bit."
msgstr ""
-#: doc/classes/Image.xml:659
+#: doc/classes/Image.xml:668
msgid "Image uses alpha."
msgstr ""
-#: doc/classes/Image.xml:662
+#: doc/classes/Image.xml:671
msgid "Use S3TC compression."
msgstr ""
-#: doc/classes/Image.xml:665
+#: doc/classes/Image.xml:674
msgid "Use PVRTC2 compression."
msgstr ""
-#: doc/classes/Image.xml:668
+#: doc/classes/Image.xml:677
msgid "Use PVRTC4 compression."
msgstr ""
-#: doc/classes/Image.xml:671
+#: doc/classes/Image.xml:680
msgid "Use ETC compression."
msgstr ""
-#: doc/classes/Image.xml:674
+#: doc/classes/Image.xml:683
msgid "Use ETC2 compression."
msgstr ""
-#: doc/classes/Image.xml:689
+#: doc/classes/Image.xml:698
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
-#: doc/classes/Image.xml:692
+#: doc/classes/Image.xml:701
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
-#: doc/classes/Image.xml:695
+#: doc/classes/Image.xml:704
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -25160,7 +25904,7 @@ msgstr ""
#: doc/classes/Input.xml:10
msgid "https://docs.godotengine.org/en/latest/tutorials/inputs/index.html"
-msgstr ""
+msgstr "https://docs.godotengine.org/de/latest/tutorials/inputs/index.html"
#: doc/classes/Input.xml:21
msgid ""
@@ -25581,6 +26325,7 @@ msgstr ""
#: doc/classes/InputEventWithModifiers.xml:10
msgid "https://docs.godotengine.org/en/latest/tutorials/inputs/inputevent.html"
msgstr ""
+"https://docs.godotengine.org/de/latest/tutorials/inputs/inputevent.html"
#: doc/classes/InputEvent.xml:20
msgid ""
@@ -25680,6 +26425,8 @@ msgid ""
"https://docs.godotengine.org/en/latest/tutorials/inputs/inputevent."
"html#actions"
msgstr ""
+"https://docs.godotengine.org/de/latest/tutorials/inputs/inputevent."
+"html#actions"
#: doc/classes/InputEventAction.xml:16
msgid "The action's name. Actions are accessed via this [String]."
@@ -25864,11 +26611,13 @@ msgid "Contains mouse click information. See [method Node._input]."
msgstr ""
#: doc/classes/InputEventMouseButton.xml:10
-#: doc/classes/InputEventMouseMotion.xml:10
+#: doc/classes/InputEventMouseMotion.xml:11
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/inputs/"
"mouse_and_input_coordinates.html"
msgstr ""
+"https://docs.godotengine.org/de/latest/tutorials/inputs/"
+"mouse_and_input_coordinates.html"
#: doc/classes/InputEventMouseButton.xml:16
msgid ""
@@ -25901,29 +26650,36 @@ msgstr ""
#: doc/classes/InputEventMouseMotion.xml:7
msgid ""
"Contains mouse and pen motion information. Supports relative, absolute "
-"positions and speed. See [method Node._input]."
+"positions and speed. See [method Node._input].\n"
+"[b]Note:[/b] By default, this event is only emitted once per frame rendered "
+"at most. If you need more precise input reporting, call [method Input."
+"set_use_accumulated_input] with [code]false[/code] to make events emitted as "
+"often as possible. If you use InputEventMouseMotion to draw lines, consider "
+"implementing [url=https://en.wikipedia.org/wiki/Bresenham"
+"%27s_line_algorithm]Bresenham's line algorithm[/url] as well to avoid "
+"visible gaps in lines if the user is moving the mouse quickly."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:16
+#: doc/classes/InputEventMouseMotion.xml:17
msgid ""
"Represents the pressure the user puts on the pen. Ranges from [code]0.0[/"
"code] to [code]1.0[/code]."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:19
+#: doc/classes/InputEventMouseMotion.xml:20
msgid ""
"The mouse position relative to the previous position (position at the last "
-"frame). \n"
+"frame).\n"
"[b]Note:[/b] Since [InputEventMouseMotion] is only emitted when the mouse "
"moves, the last event won't have a relative position of [code]Vector2(0, 0)[/"
"code] when the user stops moving the mouse."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:23
+#: doc/classes/InputEventMouseMotion.xml:24
msgid "The mouse speed in pixels per second."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:26
+#: doc/classes/InputEventMouseMotion.xml:27
msgid ""
"Represents the angles of tilt of the pen. Positive X-coordinate value "
"indicates a tilt to the right. Positive Y-coordinate value indicates a tilt "
@@ -26030,6 +26786,8 @@ msgid ""
"https://docs.godotengine.org/en/latest/tutorials/inputs/inputevent."
"html#inputmap"
msgstr ""
+"https://docs.godotengine.org/de/latest/tutorials/inputs/inputevent."
+"html#inputmap"
#: doc/classes/InputMap.xml:21
msgid ""
@@ -26726,6 +27484,8 @@ msgid ""
"https://docs.godotengine.org/en/latest/getting_started/workflow/export/"
"exporting_for_web.html#calling-javascript-from-script"
msgstr ""
+"https://docs.godotengine.org/de/latest/getting_started/workflow/export/"
+"exporting_for_web.html#calling-javascript-from-script"
#: doc/classes/JavaScript.xml:21
msgid ""
@@ -26813,14 +27573,17 @@ msgstr ""
#: doc/classes/JSON.xml:18
msgid ""
-"Parses a JSON encoded string and returns a [JSONParseResult] containing the "
+"Parses a JSON-encoded string and returns a [JSONParseResult] containing the "
"result."
msgstr ""
#: doc/classes/JSON.xml:31
msgid ""
"Converts a [Variant] var to JSON text and returns the result. Useful for "
-"serializing data to store or send over the network."
+"serializing data to store or send over the network.\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, converting a Variant to JSON text "
+"will convert all numerical values to [float] types."
msgstr ""
#: doc/classes/JSONParseResult.xml:4
@@ -26843,14 +27606,14 @@ msgstr ""
#: doc/classes/JSONParseResult.xml:18
msgid ""
-"The line number where the error occurred if JSON source was not successfully "
-"parsed."
+"The line number where the error occurred if the JSON source was not "
+"successfully parsed."
msgstr ""
#: doc/classes/JSONParseResult.xml:21
msgid ""
-"The error message if JSON source was not successfully parsed. See the [enum "
-"Error] constants."
+"The error message if the JSON source was not successfully parsed. See the "
+"[enum Error] constants."
msgstr ""
#: doc/classes/JSONParseResult.xml:24
@@ -26858,11 +27621,11 @@ msgid ""
"A [Variant] containing the parsed JSON. Use [method @GDScript.typeof] or the "
"[code]is[/code] keyword to check if it is what you expect. For example, if "
"the JSON source starts with curly braces ([code]{}[/code]), a [Dictionary] "
-"will be returned. If the JSON source starts with braces ([code][][/code]), "
+"will be returned. If the JSON source starts with brackets ([code][][/code]), "
"an [Array] will be returned.\n"
"[b]Note:[/b] The JSON specification does not define integer or float types, "
-"but only a number type. Therefore, parsing a JSON text will convert all "
-"numerical values to float types.\n"
+"but only a [i]number[/i] type. Therefore, parsing a JSON text will convert "
+"all numerical values to [float] types.\n"
"[b]Note:[/b] JSON objects do not preserve key order like Godot dictionaries, "
"thus, you should not rely on keys being in a certain order if a dictionary "
"is constructed from JSON. In contrast, JSON arrays retain the order of their "
@@ -26872,7 +27635,7 @@ msgid ""
"if typeof(p.result) == TYPE_ARRAY:\n"
" print(p.result[0]) # Prints \"hello\"\n"
"else:\n"
-" print(\"unexpected results\")\n"
+" push_error(\"Unexpected results.\")\n"
"[/codeblock]"
msgstr ""
@@ -26904,12 +27667,16 @@ msgid ""
"https://docs.godotengine.org/en/latest/tutorials/physics/"
"kinematic_character_2d.html"
msgstr ""
+"https://docs.godotengine.org/de/latest/tutorials/physics/"
+"kinematic_character_2d.html"
#: doc/classes/KinematicBody2D.xml:13
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/physics/"
"using_kinematic_body_2d.html"
msgstr ""
+"https://docs.godotengine.org/de/latest/tutorials/physics/"
+"using_kinematic_body_2d.html"
#: doc/classes/KinematicBody2D.xml:20 doc/classes/KinematicBody3D.xml:28
msgid ""
@@ -26988,7 +27755,7 @@ msgid ""
"simulation will run at an incorrect speed.\n"
"[code]linear_velocity[/code] is the velocity vector in pixels per second. "
"Unlike in [method move_and_collide], you should [i]not[/i] multiply it by "
-"[code]delta[/code] — the physics engine handles applying the velocity. \n"
+"[code]delta[/code] — the physics engine handles applying the velocity.\n"
"[code]up_direction[/code] is the up direction, used to determine what is a "
"wall and what is a floor or a ceiling. If set to the default value of "
"[code]Vector2(0, 0)[/code], everything is considered a wall. This is useful "
@@ -27104,7 +27871,7 @@ msgid ""
"[code]linear_velocity[/code] is the velocity vector (typically meters per "
"second). Unlike in [method move_and_collide], you should [i]not[/i] multiply "
"it by [code]delta[/code] — the physics engine handles applying the "
-"velocity. \n"
+"velocity.\n"
"[code]up_direction[/code] is the up direction, used to determine what is a "
"wall and what is a floor or a ceiling. If set to the default value of "
"[code]Vector3(0, 0, 0)[/code], everything is considered a wall.\n"
@@ -27480,6 +28247,8 @@ msgid ""
"https://docs.godotengine.org/en/latest/tutorials/2d/2d_lights_and_shadows."
"html"
msgstr ""
+"https://docs.godotengine.org/de/latest/tutorials/2d/2d_lights_and_shadows."
+"html"
#: doc/classes/Light2D.xml:17
msgid "The Light2D's [Color]."
@@ -27833,17 +28602,6 @@ msgid ""
"[b]Note:[/b] Hiding a light does [i]not[/i] affect baking."
msgstr ""
-#: doc/classes/Light3D.xml:152
-msgid "Only indirect lighting will be baked (default)."
-msgstr ""
-
-#: doc/classes/Light3D.xml:155
-msgid ""
-"Both direct and indirect light will be baked.\n"
-"[b]Note:[/b] You should hide the light if you don't want it to appear twice "
-"(dynamic and baked)."
-msgstr ""
-
#: doc/classes/LightOccluder2D.xml:4
msgid "Occludes light cast by a Light2D, casting shadows."
msgstr ""
@@ -28122,136 +28880,142 @@ msgstr ""
msgid "Text alignment as defined in the [enum Align] enum."
msgstr ""
-#: doc/classes/LineEdit.xml:120 doc/classes/TextEdit.xml:406
+#: doc/classes/LineEdit.xml:120 doc/classes/TextEdit.xml:358
msgid "If [code]true[/code], the caret (visual cursor) blinks."
msgstr ""
-#: doc/classes/LineEdit.xml:123 doc/classes/TextEdit.xml:409
+#: doc/classes/LineEdit.xml:123 doc/classes/TextEdit.xml:361
msgid "Duration (in seconds) of a caret's blinking cycle."
msgstr ""
-#: doc/classes/LineEdit.xml:126
+#: doc/classes/LineEdit.xml:128
msgid ""
"The cursor's position inside the [LineEdit]. When set, the text may scroll "
"to accommodate it."
msgstr ""
-#: doc/classes/LineEdit.xml:129
+#: doc/classes/LineEdit.xml:131
msgid ""
"If [code]true[/code], the [LineEdit] will show a clear button if [code]text[/"
"code] is not empty, which can be used to clear the text quickly."
msgstr ""
-#: doc/classes/LineEdit.xml:132
+#: doc/classes/LineEdit.xml:134
msgid "If [code]true[/code], the context menu will appear when right-clicked."
msgstr ""
-#: doc/classes/LineEdit.xml:135
+#: doc/classes/LineEdit.xml:137
msgid ""
"If [code]false[/code], existing text cannot be modified and new text cannot "
"be added."
msgstr ""
-#: doc/classes/LineEdit.xml:138
+#: doc/classes/LineEdit.xml:140
msgid ""
"If [code]true[/code], the [LineEdit] width will increase to stay longer than "
"the [member text]. It will [b]not[/b] compress if the [member text] is "
"shortened."
msgstr ""
-#: doc/classes/LineEdit.xml:142
+#: doc/classes/LineEdit.xml:144
msgid ""
"Maximum amount of characters that can be entered inside the [LineEdit]. If "
"[code]0[/code], there is no limit."
msgstr ""
-#: doc/classes/LineEdit.xml:146
+#: doc/classes/LineEdit.xml:148
msgid ""
"Opacity of the [member placeholder_text]. From [code]0[/code] to [code]1[/"
"code]."
msgstr ""
-#: doc/classes/LineEdit.xml:149
+#: doc/classes/LineEdit.xml:151
msgid ""
"Text shown when the [LineEdit] is empty. It is [b]not[/b] the [LineEdit]'s "
"default value (see [member text])."
msgstr ""
-#: doc/classes/LineEdit.xml:152
+#: doc/classes/LineEdit.xml:154
msgid ""
"Sets the icon that will appear in the right end of the [LineEdit] if there's "
"no [member text], or always, if [member clear_button_enabled] is set to "
"[code]false[/code]."
msgstr ""
-#: doc/classes/LineEdit.xml:155
+#: doc/classes/LineEdit.xml:157
msgid ""
"If [code]true[/code], every character is replaced with the secret character "
"(see [member secret_character])."
msgstr ""
-#: doc/classes/LineEdit.xml:158
+#: doc/classes/LineEdit.xml:160
msgid ""
"The character to use to mask secret input (defaults to \"*\"). Only a single "
"character can be used as the secret character."
msgstr ""
-#: doc/classes/LineEdit.xml:161
+#: doc/classes/LineEdit.xml:163
msgid ""
"If [code]false[/code], it's impossible to select the text using mouse nor "
"keyboard."
msgstr ""
-#: doc/classes/LineEdit.xml:164
+#: doc/classes/LineEdit.xml:166
msgid "If [code]false[/code], using shortcuts will be disabled."
msgstr ""
-#: doc/classes/LineEdit.xml:167
+#: doc/classes/LineEdit.xml:169
msgid ""
"String value of the [LineEdit].\n"
"[b]Note:[/b] Changing text using this property won't emit the [signal "
"text_changed] signal."
msgstr ""
-#: doc/classes/LineEdit.xml:174
+#: doc/classes/LineEdit.xml:173 doc/classes/TextEdit.xml:434
+msgid ""
+"If [code]true[/code], the native virtual keyboard is shown when focused on "
+"platforms that support it."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:179
msgid ""
"Emitted when trying to append text that would overflow the [member "
"max_length]."
msgstr ""
-#: doc/classes/LineEdit.xml:181 doc/classes/TextEdit.xml:525
+#: doc/classes/LineEdit.xml:186 doc/classes/TextEdit.xml:490
msgid "Emitted when the text changes."
msgstr ""
-#: doc/classes/LineEdit.xml:188
+#: doc/classes/LineEdit.xml:193
msgid "Emitted when the user presses [constant KEY_ENTER] on the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:194
+#: doc/classes/LineEdit.xml:199
msgid "Aligns the text on the left-hand side of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:197
+#: doc/classes/LineEdit.xml:202
msgid "Centers the text in the middle of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:200
+#: doc/classes/LineEdit.xml:205
msgid "Aligns the text on the right-hand side of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:203
+#: doc/classes/LineEdit.xml:208
msgid "Stretches whitespaces to fit the [LineEdit]'s width."
msgstr ""
-#: doc/classes/LineEdit.xml:206 doc/classes/TextEdit.xml:540
+#: doc/classes/LineEdit.xml:211 doc/classes/TextEdit.xml:505
msgid "Cuts (copies and clears) the selected text."
msgstr ""
-#: doc/classes/LineEdit.xml:209 doc/classes/TextEdit.xml:543
+#: doc/classes/LineEdit.xml:214 doc/classes/TextEdit.xml:508
msgid "Copies the selected text."
msgstr ""
-#: doc/classes/LineEdit.xml:212
+#: doc/classes/LineEdit.xml:217
msgid ""
"Pastes the clipboard text over the selected text (or at the cursor's "
"position).\n"
@@ -28259,80 +29023,80 @@ msgid ""
"clipboard via [method String.strip_escapes]."
msgstr ""
-#: doc/classes/LineEdit.xml:216
+#: doc/classes/LineEdit.xml:221
msgid "Erases the whole [LineEdit] text."
msgstr ""
-#: doc/classes/LineEdit.xml:219
+#: doc/classes/LineEdit.xml:224
msgid "Selects the whole [LineEdit] text."
msgstr ""
-#: doc/classes/LineEdit.xml:222 doc/classes/TextEdit.xml:555
+#: doc/classes/LineEdit.xml:227 doc/classes/TextEdit.xml:520
msgid "Undoes the previous action."
msgstr ""
-#: doc/classes/LineEdit.xml:225
+#: doc/classes/LineEdit.xml:230
msgid "Reverse the last undo action."
msgstr ""
-#: doc/classes/LineEdit.xml:228 doc/classes/TextEdit.xml:561
+#: doc/classes/LineEdit.xml:233 doc/classes/TextEdit.xml:526
msgid "Represents the size of the [enum MenuItems] enum."
msgstr ""
-#: doc/classes/LineEdit.xml:233
+#: doc/classes/LineEdit.xml:238
msgid "Texture for the clear button. See [member clear_button_enabled]."
msgstr ""
-#: doc/classes/LineEdit.xml:236
+#: doc/classes/LineEdit.xml:241
msgid "Color used as default tint for the clear button."
msgstr ""
-#: doc/classes/LineEdit.xml:239
+#: doc/classes/LineEdit.xml:244
msgid "Color used for the clear button when it's pressed."
msgstr ""
-#: doc/classes/LineEdit.xml:242
+#: doc/classes/LineEdit.xml:247
msgid "Color of the [LineEdit]'s visual cursor (caret)."
msgstr ""
-#: doc/classes/LineEdit.xml:245
+#: doc/classes/LineEdit.xml:250
msgid "Background used when [LineEdit] has GUI focus."
msgstr ""
-#: doc/classes/LineEdit.xml:248
+#: doc/classes/LineEdit.xml:253
msgid "Font used for the text."
msgstr ""
-#: doc/classes/LineEdit.xml:251
+#: doc/classes/LineEdit.xml:256
msgid "Default font color."
msgstr ""
-#: doc/classes/LineEdit.xml:254
+#: doc/classes/LineEdit.xml:259
msgid "Font color for selected text (inside the selection rectangle)."
msgstr ""
-#: doc/classes/LineEdit.xml:257
+#: doc/classes/LineEdit.xml:262
msgid "Font color when editing is disabled."
msgstr ""
-#: doc/classes/LineEdit.xml:260
+#: doc/classes/LineEdit.xml:265
msgid ""
"Minimum horizontal space for the text (not counting the clear button and "
"content margins). This value is measured in count of space characters (i.e. "
"this amount of space characters can be displayed without scrolling)."
msgstr ""
-#: doc/classes/LineEdit.xml:263
+#: doc/classes/LineEdit.xml:268
msgid "Default background for the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:266
+#: doc/classes/LineEdit.xml:271
msgid ""
"Background used when [LineEdit] is in read-only mode ([member editable] is "
"set to [code]false[/code])."
msgstr ""
-#: doc/classes/LineEdit.xml:269
+#: doc/classes/LineEdit.xml:274
msgid "Color of the selection rectangle."
msgstr ""
@@ -28550,14 +29314,14 @@ msgstr ""
msgid "Emitted when a user responds to a permission request."
msgstr ""
-#: doc/classes/MainLoop.xml:127 doc/classes/Node.xml:948
+#: doc/classes/MainLoop.xml:127 doc/classes/Node.xml:946
msgid ""
"Notification received from the OS when the application is exceeding its "
"allocated memory.\n"
"Specific to the iOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:131 doc/classes/Node.xml:952
+#: doc/classes/MainLoop.xml:131 doc/classes/Node.xml:950
msgid ""
"Notification received when translations may have changed. Can be triggered "
"by the user changing the locale. Can be used to respond to language changes, "
@@ -28565,39 +29329,55 @@ msgid ""
"the built-in translation support, like [method Object.tr]."
msgstr ""
-#: doc/classes/MainLoop.xml:134 doc/classes/Node.xml:955
+#: doc/classes/MainLoop.xml:134 doc/classes/Node.xml:953
msgid ""
"Notification received from the OS when a request for \"About\" information "
"is sent.\n"
"Specific to the macOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:138 doc/classes/Node.xml:959
+#: doc/classes/MainLoop.xml:138 doc/classes/Node.xml:957
msgid ""
"Notification received from Godot's crash handler when the engine is about to "
"crash.\n"
"Implemented on desktop platforms if the crash handler is enabled."
msgstr ""
-#: doc/classes/MainLoop.xml:142 doc/classes/Node.xml:963
+#: doc/classes/MainLoop.xml:142 doc/classes/Node.xml:961
msgid ""
"Notification received from the OS when an update of the Input Method Engine "
"occurs (e.g. change of IME cursor position or composition string).\n"
"Specific to the macOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:146 doc/classes/Node.xml:967
+#: doc/classes/MainLoop.xml:146 doc/classes/Node.xml:965
msgid ""
-"Notification received from the OS when the app is resumed.\n"
+"Notification received from the OS when the application is resumed.\n"
"Specific to the Android platform."
msgstr ""
-#: doc/classes/MainLoop.xml:150 doc/classes/Node.xml:971
+#: doc/classes/MainLoop.xml:150 doc/classes/Node.xml:969
msgid ""
-"Notification received from the OS when the app is paused.\n"
+"Notification received from the OS when the application is paused.\n"
"Specific to the Android platform."
msgstr ""
+#: doc/classes/MainLoop.xml:154 doc/classes/Node.xml:973
+msgid ""
+"Notification received from the OS when the application is focused, i.e. when "
+"changing the focus from the OS desktop or a thirdparty application to any "
+"open window of the Godot instance.\n"
+"Implemented on desktop platforms."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:158 doc/classes/Node.xml:977
+msgid ""
+"Notification received from the OS when the application is defocused, i.e. "
+"when changing the focus from any open window of the Godot instance to the OS "
+"desktop or a thirdparty application.\n"
+"Implemented on desktop platforms."
+msgstr ""
+
#: doc/classes/MarginContainer.xml:4
msgid "Simple margin container."
msgstr ""
@@ -28905,11 +29685,11 @@ msgstr ""
msgid "Render array as triangle strips."
msgstr ""
-#: doc/classes/Mesh.xml:126 doc/classes/RenderingServer.xml:3189
+#: doc/classes/Mesh.xml:126 doc/classes/RenderingServer.xml:3185
msgid "Blend shapes are normalized."
msgstr ""
-#: doc/classes/Mesh.xml:129 doc/classes/RenderingServer.xml:3192
+#: doc/classes/Mesh.xml:129 doc/classes/RenderingServer.xml:3188
msgid "Blend shapes are relative to base weight."
msgstr ""
@@ -28951,37 +29731,37 @@ msgstr ""
msgid "Mesh array uses indices."
msgstr ""
-#: doc/classes/Mesh.xml:159 doc/classes/RenderingServer.xml:3145
+#: doc/classes/Mesh.xml:159 doc/classes/RenderingServer.xml:3141
msgid "Flag used to mark a compressed (half float) normal array."
msgstr ""
-#: doc/classes/Mesh.xml:162 doc/classes/RenderingServer.xml:3148
+#: doc/classes/Mesh.xml:162 doc/classes/RenderingServer.xml:3144
msgid "Flag used to mark a compressed (half float) tangent array."
msgstr ""
-#: doc/classes/Mesh.xml:165 doc/classes/RenderingServer.xml:3151
+#: doc/classes/Mesh.xml:165 doc/classes/RenderingServer.xml:3147
msgid "Flag used to mark a compressed (half float) color array."
msgstr ""
-#: doc/classes/Mesh.xml:168 doc/classes/RenderingServer.xml:3154
+#: doc/classes/Mesh.xml:168 doc/classes/RenderingServer.xml:3150
msgid "Flag used to mark a compressed (half float) UV coordinates array."
msgstr ""
-#: doc/classes/Mesh.xml:171 doc/classes/RenderingServer.xml:3157
+#: doc/classes/Mesh.xml:171 doc/classes/RenderingServer.xml:3153
msgid ""
"Flag used to mark a compressed (half float) UV coordinates array for the "
"second UV coordinates."
msgstr ""
-#: doc/classes/Mesh.xml:174 doc/classes/RenderingServer.xml:3160
+#: doc/classes/Mesh.xml:174 doc/classes/RenderingServer.xml:3156
msgid "Flag used to mark a compressed index array."
msgstr ""
-#: doc/classes/Mesh.xml:177 doc/classes/RenderingServer.xml:3166
+#: doc/classes/Mesh.xml:177 doc/classes/RenderingServer.xml:3162
msgid "Flag used to mark that the array contains 2D vertices."
msgstr ""
-#: doc/classes/Mesh.xml:180 doc/classes/RenderingServer.xml:3163
+#: doc/classes/Mesh.xml:180 doc/classes/RenderingServer.xml:3159
msgid ""
"Used to set flags [constant ARRAY_COMPRESS_NORMAL], [constant "
"ARRAY_COMPRESS_TANGENT], [constant ARRAY_COMPRESS_COLOR], [constant "
@@ -29234,7 +30014,7 @@ msgstr ""
#: doc/classes/MeshInstance2D.xml:10
msgid "https://docs.godotengine.org/en/latest/tutorials/2d/2d_meshes.html"
-msgstr ""
+msgstr "https://docs.godotengine.org/de/latest/tutorials/2d/2d_meshes.html"
#: doc/classes/MeshInstance2D.xml:16
msgid "The [Mesh] that will be drawn by the [MeshInstance2D]."
@@ -29536,12 +30316,16 @@ msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/vertex_animation/"
"animating_thousands_of_fish.html"
msgstr ""
+"https://docs.godotengine.org/de/latest/tutorials/3d/vertex_animation/"
+"animating_thousands_of_fish.html"
#: doc/classes/MultiMesh.xml:14 doc/classes/MultiMeshInstance3D.xml:13
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/optimization/"
"using_multimesh.html"
msgstr ""
+"https://docs.godotengine.org/de/latest/tutorials/optimization/"
+"using_multimesh.html"
#: doc/classes/MultiMesh.xml:21
msgid "Returns the visibility axis-aligned bounding box."
@@ -29660,6 +30444,8 @@ msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/"
"using_multi_mesh_instance.html"
msgstr ""
+"https://docs.godotengine.org/de/latest/tutorials/3d/"
+"using_multi_mesh_instance.html"
#: doc/classes/MultiMeshInstance3D.xml:19
msgid ""
@@ -29879,6 +30665,8 @@ msgid ""
"https://docs.godotengine.org/en/latest/tutorials/threads/"
"using_multiple_threads.html"
msgstr ""
+"https://docs.godotengine.org/de/latest/tutorials/threads/"
+"using_multiple_threads.html"
#: doc/classes/Mutex.xml:17
msgid "Locks this [Mutex], blocks until it is unlocked by the current owner."
@@ -30627,10 +31415,12 @@ msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/"
"high_level_multiplayer.html"
msgstr ""
+"https://docs.godotengine.org/de/latest/tutorials/networking/"
+"high_level_multiplayer.html"
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:11
msgid "http://enet.bespin.org/usergroup0.html"
-msgstr ""
+msgstr "http://enet.bespin.org/usergroup0.html"
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:20
msgid ""
@@ -30742,7 +31532,10 @@ msgstr ""
msgid ""
"The number of channels to be used by ENet. Channels are used to separate "
"different kinds of data. In reliable or ordered mode, for example, the "
-"packet delivery order is ensured on a per channel basis."
+"packet delivery order is ensured on a per-channel basis. This is done to "
+"combat latency and reduces ordering restrictions on packets. The delivery "
+"status of a packet in one channel won't stall the delivery of other packets "
+"in another channel."
msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:134
@@ -30769,11 +31562,12 @@ msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:144
msgid ""
"Set the default channel to be used to transfer data. By default, this value "
-"is [code]-1[/code] which means that ENet will only use 2 channels, one for "
-"reliable and one for unreliable packets. Channel [code]0[/code] is reserved, "
-"and cannot be used. Setting this member to any value between [code]0[/code] "
-"and [member channel_count] (excluded) will force ENet to use that channel "
-"for sending data."
+"is [code]-1[/code] which means that ENet will only use 2 channels: one for "
+"reliable packets, and one for unreliable packets. The channel [code]0[/code] "
+"is reserved and cannot be used. Setting this member to any value between "
+"[code]0[/code] and [member channel_count] (excluded) will force ENet to use "
+"that channel for sending data. See [member channel_count] for more "
+"information about ENet channels."
msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:148
@@ -31076,6 +31870,8 @@ msgid ""
"https://docs.godotengine.org/en/latest/getting_started/step_by_step/"
"scenes_and_nodes.html"
msgstr ""
+"https://docs.godotengine.org/de/latest/getting_started/step_by_step/"
+"scenes_and_nodes.html"
#: doc/classes/Node.xml:27
msgid ""
@@ -31965,57 +32761,63 @@ msgstr ""
#: doc/classes/Node.xml:930
msgid ""
-"Notification received from the OS when the game window is focused.\n"
-"Implemented on all platforms."
+"Notification received from the OS when the node's parent [Window] is "
+"focused. This may be a change of focus between two windows of the same "
+"engine instance, or from the OS desktop or a third-party application to a "
+"window of the game (in which case [constant "
+"NOTIFICATION_APPLICATION_FOCUS_IN] is also emitted)."
msgstr ""
-#: doc/classes/Node.xml:934
+#: doc/classes/Node.xml:933
msgid ""
-"Notification received from the OS when the game window is unfocused.\n"
-"Implemented on all platforms."
+"Notification received from the OS when the node's parent [Window] is "
+"defocused. This may be a change of focus between two windows of the same "
+"engine instance, or from a window of the game to the OS desktop or a third-"
+"party application (in which case [constant "
+"NOTIFICATION_APPLICATION_FOCUS_OUT] is also emitted)."
msgstr ""
-#: doc/classes/Node.xml:938
+#: doc/classes/Node.xml:936
msgid ""
"Notification received from the OS when a close request is sent (e.g. closing "
"the window with a \"Close\" button or [kbd]Alt + F4[/kbd]).\n"
"Implemented on desktop platforms."
msgstr ""
-#: doc/classes/Node.xml:942
+#: doc/classes/Node.xml:940
msgid ""
"Notification received from the OS when a go back request is sent (e.g. "
"pressing the \"Back\" button on Android).\n"
"Specific to the Android platform."
msgstr ""
-#: doc/classes/Node.xml:975
+#: doc/classes/Node.xml:981
msgid ""
"Inherits pause mode from the node's parent. For the root node, it is "
"equivalent to [constant PAUSE_MODE_STOP]. Default."
msgstr ""
-#: doc/classes/Node.xml:978
+#: doc/classes/Node.xml:984
msgid "Stops processing when the [SceneTree] is paused."
msgstr ""
-#: doc/classes/Node.xml:981
+#: doc/classes/Node.xml:987
msgid "Continue to process regardless of the [SceneTree] pause state."
msgstr ""
-#: doc/classes/Node.xml:984
+#: doc/classes/Node.xml:990
msgid "Duplicate the node's signals."
msgstr ""
-#: doc/classes/Node.xml:987
+#: doc/classes/Node.xml:993
msgid "Duplicate the node's groups."
msgstr ""
-#: doc/classes/Node.xml:990
+#: doc/classes/Node.xml:996
msgid "Duplicate the node's scripts."
msgstr ""
-#: doc/classes/Node.xml:993
+#: doc/classes/Node.xml:999
msgid ""
"Duplicate using instancing.\n"
"An instance stays linked to the original so when the original changes, the "
@@ -32104,7 +32906,7 @@ msgstr ""
#: doc/classes/Node2D.xml:119
msgid "Global position."
-msgstr ""
+msgstr "Gobale Position."
#: doc/classes/Node2D.xml:122
msgid "Global rotation in radians."
@@ -32116,7 +32918,7 @@ msgstr ""
#: doc/classes/Node2D.xml:128
msgid "Global scale."
-msgstr ""
+msgstr "Globaler Maßstab."
#: doc/classes/Node2D.xml:131
msgid "Global [Transform2D]."
@@ -32179,6 +32981,7 @@ msgstr ""
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/introduction_to_3d.html"
msgstr ""
+"https://docs.godotengine.org/de/latest/tutorials/3d/introduction_to_3d.html"
#: doc/classes/Node3D.xml:26
msgid ""
@@ -32239,12 +33042,6 @@ msgid ""
"changes. [Node3D] will not propagate this by default."
msgstr ""
-#: doc/classes/Node3D.xml:104
-msgid ""
-"Returns whether the node is visible, taking into consideration that its "
-"parents visibility."
-msgstr ""
-
#: doc/classes/Node3D.xml:115
msgid ""
"Rotates itself so that the local -Z axis points towards the [code]target[/"
@@ -32414,7 +33211,10 @@ msgid "Local translation of this node."
msgstr ""
#: doc/classes/Node3D.xml:326
-msgid "If [code]true[/code], this node is drawn."
+msgid ""
+"If [code]true[/code], this node is drawn. The node is only visible if all of "
+"its antecedents are visible as well (in other words, [method "
+"is_visible_in_tree] must return [code]true[/code])."
msgstr ""
#: doc/classes/Node3D.xml:332
@@ -32671,10 +33471,23 @@ msgid ""
"the key exists, even if the value is [code]null[/code].\n"
"Objects also receive notifications. Notifications are a simple way to notify "
"the object about different events, so they can all be handled together. See "
-"[method _notification]."
+"[method _notification].\n"
+"[b]Note:[/b] Unlike references to a [Reference], references to an Object "
+"stored in a variable can become invalid without warning. Therefore, it's "
+"recommended to use [Reference] for data classes instead of [Object]."
msgstr ""
-#: doc/classes/Object.xml:30
+#: doc/classes/Object.xml:23 doc/classes/Reference.xml:12
+#: doc/classes/Resource.xml:11
+#, fuzzy
+msgid ""
+"https://docs.godotengine.org/en/latest/getting_started/workflow/"
+"best_practices/node_alternatives.html"
+msgstr ""
+"https://docs.godotengine.org/de/latest/getting_started/workflow/assets/"
+"importing_scenes.html#custom-script"
+
+#: doc/classes/Object.xml:32
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method get].\n"
@@ -32682,7 +33495,7 @@ msgid ""
"code] does not exist."
msgstr ""
-#: doc/classes/Object.xml:38
+#: doc/classes/Object.xml:40
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method get_property_list].\n"
@@ -32694,11 +33507,11 @@ msgid ""
"PropertyUsageFlags])."
msgstr ""
-#: doc/classes/Object.xml:47
+#: doc/classes/Object.xml:49
msgid "Called when the object is initialized."
msgstr ""
-#: doc/classes/Object.xml:56
+#: doc/classes/Object.xml:58
msgid ""
"Called whenever the object receives a notification, which is identified in "
"[code]what[/code] by a constant. The base [Object] has two constants "
@@ -32707,7 +33520,7 @@ msgid ""
"notifications which are also received by this method."
msgstr ""
-#: doc/classes/Object.xml:67
+#: doc/classes/Object.xml:69
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method set].\n"
@@ -32715,7 +33528,7 @@ msgid ""
"exists."
msgstr ""
-#: doc/classes/Object.xml:75
+#: doc/classes/Object.xml:77
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method to_string], and thus the object's representation where it is "
@@ -32724,34 +33537,42 @@ msgid ""
"[code]\"[ClassName:RID]\"[/code]."
msgstr ""
-#: doc/classes/Object.xml:87
+#: doc/classes/Object.xml:89
msgid ""
"Adds a user-defined [code]signal[/code]. Arguments are optional, but can be "
"added as an [Array] of dictionaries, each containing [code]name: String[/"
"code] and [code]type: int[/code] (see [enum Variant.Type]) entries."
msgstr ""
-#: doc/classes/Object.xml:96
+#: doc/classes/Object.xml:98
msgid ""
"Calls the [code]method[/code] on the object and returns the result. This "
"method supports a variable number of arguments, so parameters are passed as "
"a comma separated list. Example:\n"
"[codeblock]\n"
"call(\"set\", \"position\", Vector2(42.0, 0.0))\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] In C#, the method name must be specified as snake_case if it is "
+"defined by a built-in Godot node. This doesn't apply to user-defined methods "
+"where you should use the same convention as in the C# source (typically "
+"PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:108
+#: doc/classes/Object.xml:111
msgid ""
"Calls the [code]method[/code] on the object during idle time. This method "
"supports a variable number of arguments, so parameters are passed as a comma "
"separated list. Example:\n"
"[codeblock]\n"
"call_deferred(\"set\", \"position\", Vector2(42.0, 0.0))\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] In C#, the method name must be specified as snake_case if it is "
+"defined by a built-in Godot node. This doesn't apply to user-defined methods "
+"where you should use the same convention as in the C# source (typically "
+"PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:122
+#: doc/classes/Object.xml:126
msgid ""
"Calls the [code]method[/code] on the object and returns the result. "
"Contrarily to [method call], this method does not support a variable number "
@@ -32761,13 +33582,13 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:132
+#: doc/classes/Object.xml:136
msgid ""
"Returns [code]true[/code] if the object can translate strings. See [method "
"set_message_translation] and [method tr]."
msgstr ""
-#: doc/classes/Object.xml:147
+#: doc/classes/Object.xml:151
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32803,7 +33624,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:174
+#: doc/classes/Object.xml:178
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32814,7 +33635,7 @@ msgid ""
"exists."
msgstr ""
-#: doc/classes/Object.xml:185
+#: doc/classes/Object.xml:189
msgid ""
"Emits the given [code]signal[/code]. The signal must exist, so it should be "
"a built-in signal of this class or one of its parent classes, or a user-"
@@ -32826,24 +33647,28 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:196
+#: doc/classes/Object.xml:200
msgid ""
"Deletes the object from memory. Any pre-existing reference to the freed "
"object will become invalid, e.g. [code]is_instance_valid(object)[/code] will "
"return [code]false[/code]."
msgstr ""
-#: doc/classes/Object.xml:205
+#: doc/classes/Object.xml:209
msgid ""
"Returns the [Variant] value of the given [code]property[/code]. If the "
-"[code]property[/code] doesn't exist, this will return [code]null[/code]."
+"[code]property[/code] doesn't exist, this will return [code]null[/code].\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:212
+#: doc/classes/Object.xml:217
msgid "Returns the object's class as a [String]."
msgstr ""
-#: doc/classes/Object.xml:219
+#: doc/classes/Object.xml:224
msgid ""
"Returns an [Array] of dictionaries with information about signals that are "
"connected to the object.\n"
@@ -32854,7 +33679,7 @@ msgid ""
"connected."
msgstr ""
-#: doc/classes/Object.xml:232
+#: doc/classes/Object.xml:237
msgid ""
"Gets the object's property indexed by the given [NodePath]. The node path "
"should be relative to the current object and can use the colon character "
@@ -32862,26 +33687,26 @@ msgid ""
"\"[/code] or [code]\"material:next_pass:blend_mode\"[/code]."
msgstr ""
-#: doc/classes/Object.xml:239
+#: doc/classes/Object.xml:244
msgid ""
"Returns the object's unique instance ID.\n"
"This ID can be saved in [EncodedObjectAsID], and can be used to retrieve the "
"object instance with [method @GDScript.instance_from_id]."
msgstr ""
-#: doc/classes/Object.xml:249
+#: doc/classes/Object.xml:254
msgid "Returns the object's metadata entry for the given [code]name[/code]."
msgstr ""
-#: doc/classes/Object.xml:256
+#: doc/classes/Object.xml:261
msgid "Returns the object's metadata as a [PackedStringArray]."
msgstr ""
-#: doc/classes/Object.xml:263
+#: doc/classes/Object.xml:268
msgid "Returns the object's methods and their signatures as an [Array]."
msgstr ""
-#: doc/classes/Object.xml:270
+#: doc/classes/Object.xml:275
msgid ""
"Returns the object's property list as an [Array] of dictionaries.\n"
"Each property's [Dictionary] contain at least [code]name: String[/code] and "
@@ -32891,54 +33716,54 @@ msgid ""
"PropertyUsageFlags])."
msgstr ""
-#: doc/classes/Object.xml:278
+#: doc/classes/Object.xml:283
msgid ""
"Returns the object's [Script] instance, or [code]null[/code] if none is "
"assigned."
msgstr ""
-#: doc/classes/Object.xml:287
+#: doc/classes/Object.xml:292
msgid "Returns an [Array] of connections for the given [code]signal[/code]."
msgstr ""
-#: doc/classes/Object.xml:294
+#: doc/classes/Object.xml:299
msgid "Returns the list of signals as an [Array] of dictionaries."
msgstr ""
-#: doc/classes/Object.xml:303
+#: doc/classes/Object.xml:308
msgid ""
"Returns [code]true[/code] if a metadata entry is found with the given "
"[code]name[/code]."
msgstr ""
-#: doc/classes/Object.xml:312
+#: doc/classes/Object.xml:317
msgid ""
"Returns [code]true[/code] if the object contains the given [code]method[/"
"code]."
msgstr ""
-#: doc/classes/Object.xml:321
+#: doc/classes/Object.xml:326
msgid "Returns [code]true[/code] if the given [code]signal[/code] exists."
msgstr ""
-#: doc/classes/Object.xml:330
+#: doc/classes/Object.xml:335
msgid ""
"Returns [code]true[/code] if the given user-defined [code]signal[/code] "
"exists. Only signals added using [method add_user_signal] are taken into "
"account."
msgstr ""
-#: doc/classes/Object.xml:337
+#: doc/classes/Object.xml:342
msgid "Returns [code]true[/code] if signal emission blocking is enabled."
msgstr ""
-#: doc/classes/Object.xml:346
+#: doc/classes/Object.xml:351
msgid ""
"Returns [code]true[/code] if the object inherits from the given [code]class[/"
"code]."
msgstr ""
-#: doc/classes/Object.xml:357
+#: doc/classes/Object.xml:362
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32946,13 +33771,13 @@ msgid ""
"code], [code]target[/code], and [code]method[/code]."
msgstr ""
-#: doc/classes/Object.xml:365
+#: doc/classes/Object.xml:370
msgid ""
"Returns [code]true[/code] if the [method Node.queue_free] method was called "
"for the object."
msgstr ""
-#: doc/classes/Object.xml:376
+#: doc/classes/Object.xml:381
msgid ""
"Send a given notification to the object, which will also trigger a call to "
"the [method _notification] method of all classes that the object inherits "
@@ -32964,34 +33789,42 @@ msgid ""
"and then down to its successive inheriting classes."
msgstr ""
-#: doc/classes/Object.xml:384
+#: doc/classes/Object.xml:389
msgid ""
"Notify the editor that the property list has changed, so that editor plugins "
"can take the new values into account. Does nothing on export builds."
msgstr ""
-#: doc/classes/Object.xml:393
+#: doc/classes/Object.xml:398
msgid "Removes a given entry from the object's metadata."
msgstr ""
-#: doc/classes/Object.xml:404
+#: doc/classes/Object.xml:409
msgid ""
"Assigns a new value to the given property. If the [code]property[/code] does "
-"not exist, nothing will happen."
+"not exist, nothing will happen.\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:413
+#: doc/classes/Object.xml:419
msgid "If set to [code]true[/code], signal emission is blocked."
msgstr ""
-#: doc/classes/Object.xml:424
+#: doc/classes/Object.xml:430
msgid ""
"Assigns a new value to the given property, after the current frame's physics "
"step. This is equivalent to calling [method set] via [method call_deferred], "
-"i.e. [code]call_deferred(\"set\", property, value)[/code]."
+"i.e. [code]call_deferred(\"set\", property, value)[/code].\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:435
+#: doc/classes/Object.xml:442
msgid ""
"Assigns a new value to the property identified by the [NodePath]. The node "
"path should be relative to the current object and can use the colon "
@@ -33003,19 +33836,19 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:449
+#: doc/classes/Object.xml:456
msgid ""
"Defines whether the object can translate strings (with calls to [method "
"tr]). Enabled by default."
msgstr ""
-#: doc/classes/Object.xml:460
+#: doc/classes/Object.xml:467
msgid ""
"Adds or changes a given entry in the object's metadata. Metadata are "
"serialized, and can take any [Variant] value."
msgstr ""
-#: doc/classes/Object.xml:469
+#: doc/classes/Object.xml:476
msgid ""
"Assigns a script to the object. Each object can have a single script "
"assigned to it, which are used to extend its functionality.\n"
@@ -33024,7 +33857,7 @@ msgid ""
"_init] method will be called."
msgstr ""
-#: doc/classes/Object.xml:477
+#: doc/classes/Object.xml:484
msgid ""
"Returns a [String] representing the object. If not overridden, defaults to "
"[code]\"[ClassName:RID]\"[/code].\n"
@@ -33032,7 +33865,7 @@ msgid ""
"representation."
msgstr ""
-#: doc/classes/Object.xml:487
+#: doc/classes/Object.xml:494
msgid ""
"Translates a message using translation catalogs configured in the Project "
"Settings.\n"
@@ -33041,35 +33874,35 @@ msgid ""
"set_message_translation]."
msgstr ""
-#: doc/classes/Object.xml:495
+#: doc/classes/Object.xml:502
msgid "Emitted whenever the object's script is changed."
msgstr ""
-#: doc/classes/Object.xml:501
+#: doc/classes/Object.xml:508
msgid "Called right when the object is initialized. Not available in script."
msgstr ""
-#: doc/classes/Object.xml:504
+#: doc/classes/Object.xml:511
msgid "Called before the object is about to be deleted."
msgstr ""
-#: doc/classes/Object.xml:507
+#: doc/classes/Object.xml:514
msgid ""
"Connects a signal in deferred mode. This way, signal emissions are stored in "
"a queue, then set on idle time."
msgstr ""
-#: doc/classes/Object.xml:510
+#: doc/classes/Object.xml:517
msgid "Persisting connections are saved when the object is serialized to file."
msgstr ""
-#: doc/classes/Object.xml:513
+#: doc/classes/Object.xml:520
msgid "One-shot connections disconnect themselves after emission."
msgstr ""
-#: doc/classes/Object.xml:516
+#: doc/classes/Object.xml:523
msgid ""
-"Connect a signal as reference counted. This means that a given signal can be "
+"Connect a signal as reference-counted. This means that a given signal can be "
"connected several times to the same target, and will only be fully "
"disconnected once no references are left."
msgstr ""
@@ -33534,10 +34367,29 @@ msgid "Returns the keycode of the given string (e.g. \"Escape\")."
msgstr ""
#: doc/classes/OS.xml:115
-msgid "Returns the command line arguments passed to the engine."
+msgid ""
+"Returns the command-line arguments passed to the engine.\n"
+"Command-line arguments can be written in any form, including both [code]--"
+"key value[/code] and [code]--key=value[/code] forms so they can be properly "
+"parsed, as long as custom command-line arguments do not conflict with engine "
+"arguments.\n"
+"You can also incorporate environment variables using the [method "
+"get_environment] method.\n"
+"You can set [code]editor/main_run_args[/code] in the Project Settings to "
+"define command-line arguments to be passed by the editor when running the "
+"project.\n"
+"Here's a minimal example on how to parse command-line arguments into a "
+"dictionary using the [code]--key=value[/code] form for arguments:\n"
+"[codeblock]\n"
+"var arguments = {}\n"
+"for argument in OS.get_cmdline_args():\n"
+" if argument.find(\"=\") > -1:\n"
+" var key_value = argument.split(\"=\")\n"
+" arguments[key_value[0].lstrip(\"--\")] = key_value[1]\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/OS.xml:122
+#: doc/classes/OS.xml:133
msgid ""
"Returns an array of MIDI device names.\n"
"The returned array will be empty if the system MIDI driver has not "
@@ -33545,14 +34397,14 @@ msgid ""
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:133
+#: doc/classes/OS.xml:144
msgid ""
"Returns current date as a dictionary of keys: [code]year[/code], "
"[code]month[/code], [code]day[/code], [code]weekday[/code], [code]dst[/code] "
"(Daylight Savings Time)."
msgstr ""
-#: doc/classes/OS.xml:142
+#: doc/classes/OS.xml:153
msgid ""
"Returns current datetime as a dictionary of keys: [code]year[/code], "
"[code]month[/code], [code]day[/code], [code]weekday[/code], [code]dst[/code] "
@@ -33560,7 +34412,7 @@ msgid ""
"[code]second[/code]."
msgstr ""
-#: doc/classes/OS.xml:151
+#: doc/classes/OS.xml:162
msgid ""
"Gets a dictionary of time values corresponding to the given UNIX epoch time "
"(in seconds).\n"
@@ -33569,22 +34421,22 @@ msgid ""
"the epoch."
msgstr ""
-#: doc/classes/OS.xml:161
+#: doc/classes/OS.xml:172
msgid "Returns an environment variable."
msgstr ""
-#: doc/classes/OS.xml:168
+#: doc/classes/OS.xml:179
msgid "Returns the path to the current engine executable."
msgstr ""
-#: doc/classes/OS.xml:175
+#: doc/classes/OS.xml:186
msgid ""
"With this function you can get the list of dangerous permissions that have "
"been granted to the Android application.\n"
"[b]Note:[/b] This method is implemented on Android."
msgstr ""
-#: doc/classes/OS.xml:185
+#: doc/classes/OS.xml:196
msgid ""
"Returns the given keycode as a string (e.g. Return values: [code]\"Escape\"[/"
"code], [code]\"Shift+Escape\"[/code]).\n"
@@ -33592,18 +34444,18 @@ msgid ""
"get_keycode_with_modifiers]."
msgstr ""
-#: doc/classes/OS.xml:193
+#: doc/classes/OS.xml:204
msgid "Returns the host OS locale."
msgstr ""
-#: doc/classes/OS.xml:200
+#: doc/classes/OS.xml:211
msgid ""
"Returns the model name of the current device.\n"
"[b]Note:[/b] This method is implemented on Android and iOS. Returns "
"[code]\"GenericDevice\"[/code] on unsupported platforms."
msgstr ""
-#: doc/classes/OS.xml:208
+#: doc/classes/OS.xml:219
msgid ""
"Returns the name of the host OS. Possible values are: [code]\"Android\"[/"
"code], [code]\"iOS\"[/code], [code]\"HTML5\"[/code], [code]\"OSX\"[/code], "
@@ -33611,81 +34463,81 @@ msgid ""
"[code]\"X11\"[/code]."
msgstr ""
-#: doc/classes/OS.xml:215
+#: doc/classes/OS.xml:226
msgid ""
"Returns the project's process ID.\n"
"[b]Note:[/b] This method is implemented on Android, iOS, Linux, macOS and "
"Windows."
msgstr ""
-#: doc/classes/OS.xml:223
+#: doc/classes/OS.xml:234
msgid "Returns the number of threads available on the host machine."
msgstr ""
-#: doc/classes/OS.xml:230
+#: doc/classes/OS.xml:241
msgid ""
"Returns the amount of time in milliseconds it took for the boot logo to "
"appear."
msgstr ""
-#: doc/classes/OS.xml:237
+#: doc/classes/OS.xml:248
msgid "Returns the maximum amount of static memory used (only works in debug)."
msgstr ""
-#: doc/classes/OS.xml:244
+#: doc/classes/OS.xml:255
msgid "Returns the amount of static memory being used by the program in bytes."
msgstr ""
-#: doc/classes/OS.xml:253
+#: doc/classes/OS.xml:264
msgid ""
"Returns the actual path to commonly used folders across different platforms. "
"Available locations are specified in [enum SystemDir].\n"
"[b]Note:[/b] This method is implemented on Android, Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:261
+#: doc/classes/OS.xml:272
msgid ""
"Returns the total number of available tablet drivers.\n"
"[b]Note:[/b] This method is implemented on Windows."
msgstr ""
-#: doc/classes/OS.xml:271
+#: doc/classes/OS.xml:282
msgid ""
"Returns the tablet driver name for the given index.\n"
"[b]Note:[/b] This method is implemented on Windows."
msgstr ""
-#: doc/classes/OS.xml:279
+#: doc/classes/OS.xml:290
msgid ""
"Returns the amount of time passed in milliseconds since the engine started."
msgstr ""
-#: doc/classes/OS.xml:286
+#: doc/classes/OS.xml:297
msgid ""
"Returns the amount of time passed in microseconds since the engine started."
msgstr ""
-#: doc/classes/OS.xml:295
+#: doc/classes/OS.xml:306
msgid "Returns current time as a dictionary of keys: hour, minute, second."
msgstr ""
-#: doc/classes/OS.xml:302
+#: doc/classes/OS.xml:313
msgid ""
"Returns the current time zone as a dictionary with the keys: bias and name."
msgstr ""
-#: doc/classes/OS.xml:309
+#: doc/classes/OS.xml:320
msgid ""
"Returns a string that is unique to the device.\n"
"[b]Note:[/b] Returns an empty string on HTML5 and UWP, as this method isn't "
"implemented on those platforms yet."
msgstr ""
-#: doc/classes/OS.xml:317
+#: doc/classes/OS.xml:328
msgid "Returns the current UNIX epoch timestamp."
msgstr ""
-#: doc/classes/OS.xml:326
+#: doc/classes/OS.xml:337
msgid ""
"Gets an epoch time value from a dictionary of time values.\n"
"[code]datetime[/code] must be populated with the following keys: [code]year[/"
@@ -33696,7 +34548,7 @@ msgid ""
"ignored."
msgstr ""
-#: doc/classes/OS.xml:335
+#: doc/classes/OS.xml:346
msgid ""
"Returns the absolute directory path where user data is written ([code]user://"
"[/code]).\n"
@@ -33714,11 +34566,11 @@ msgid ""
"[/code]."
msgstr ""
-#: doc/classes/OS.xml:348
+#: doc/classes/OS.xml:359
msgid "Returns [code]true[/code] if an environment variable exists."
msgstr ""
-#: doc/classes/OS.xml:357
+#: doc/classes/OS.xml:368
msgid ""
"Returns [code]true[/code] if the feature for the given feature tag is "
"supported in the currently running instance, depending on platform, build "
@@ -33729,7 +34581,7 @@ msgid ""
"[b]Note:[/b] Tag names are case-sensitive."
msgstr ""
-#: doc/classes/OS.xml:365
+#: doc/classes/OS.xml:376
msgid ""
"Returns [code]true[/code] if the Godot binary used to run the project is a "
"[i]debug[/i] export template, or when running in the editor.\n"
@@ -33740,26 +34592,26 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/OS.xml:376
+#: doc/classes/OS.xml:387
msgid ""
"Returns [code]true[/code] if the input keycode corresponds to a Unicode "
"character."
msgstr ""
-#: doc/classes/OS.xml:383
+#: doc/classes/OS.xml:394
msgid ""
"Returns [code]true[/code] if the engine was executed with [code]-v[/code] "
"(verbose stdout)."
msgstr ""
-#: doc/classes/OS.xml:390
+#: doc/classes/OS.xml:401
msgid ""
"If [code]true[/code], the [code]user://[/code] file system is persistent, so "
"that its state is the same after a player quits and starts the game again. "
"Relevant to the HTML5 platform, where this persistence may be unavailable."
msgstr ""
-#: doc/classes/OS.xml:399
+#: doc/classes/OS.xml:410
msgid ""
"Kill (terminate) the process identified by the given process ID ([code]pid[/"
"code]), e.g. the one returned by [method execute] in non-blocking mode.\n"
@@ -33769,37 +34621,37 @@ msgid ""
"Windows."
msgstr ""
-#: doc/classes/OS.xml:408
+#: doc/classes/OS.xml:419
msgid ""
"Initialises the singleton for the system MIDI driver.\n"
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:418
+#: doc/classes/OS.xml:429
msgid ""
"Shows all resources in the game. Optionally, the list can be written to a "
"file by specifying a file path in [code]tofile[/code]."
msgstr ""
-#: doc/classes/OS.xml:425
+#: doc/classes/OS.xml:436
msgid "Shows the list of loaded textures sorted by size in memory."
msgstr ""
-#: doc/classes/OS.xml:434
+#: doc/classes/OS.xml:445
msgid "Shows the number of resources loaded by the game of the given types."
msgstr ""
-#: doc/classes/OS.xml:443
+#: doc/classes/OS.xml:454
msgid "Shows all resources currently used by the game."
msgstr ""
-#: doc/classes/OS.xml:452
+#: doc/classes/OS.xml:463
msgid ""
"At the moment this function is only used by [code]AudioDriverOpenSL[/code] "
"to request permission for [code]RECORD_AUDIO[/code] on Android."
msgstr ""
-#: doc/classes/OS.xml:459
+#: doc/classes/OS.xml:470
msgid ""
"With this function you can request dangerous permissions since normal "
"permissions are automatically granted at install time in Android "
@@ -33807,15 +34659,15 @@ msgid ""
"[b]Note:[/b] This method is implemented on Android."
msgstr ""
-#: doc/classes/OS.xml:469
+#: doc/classes/OS.xml:480
msgid "Sets the name of the current thread."
msgstr ""
-#: doc/classes/OS.xml:478
+#: doc/classes/OS.xml:489
msgid "Enables backup saves if [code]enabled[/code] is [code]true[/code]."
msgstr ""
-#: doc/classes/OS.xml:487
+#: doc/classes/OS.xml:498
msgid ""
"Requests the OS to open a resource with the most appropriate program. For "
"example:\n"
@@ -33834,7 +34686,7 @@ msgid ""
"and Windows."
msgstr ""
-#: doc/classes/OS.xml:498
+#: doc/classes/OS.xml:509
msgid ""
"The exit code passed to the OS when the main loop exits. By convention, an "
"exit code of [code]0[/code] indicates success whereas a non-zero exit code "
@@ -33844,137 +34696,137 @@ msgid ""
"with an [code]exit_code[/code] argument passed."
msgstr ""
-#: doc/classes/OS.xml:502
+#: doc/classes/OS.xml:513
msgid ""
"If [code]true[/code], the engine optimizes for low processor usage by only "
"refreshing the screen if needed. Can improve battery consumption on mobile."
msgstr ""
-#: doc/classes/OS.xml:505
+#: doc/classes/OS.xml:516
msgid ""
"The amount of sleeping between frames when the low-processor usage mode is "
"enabled (in microseconds). Higher values will result in lower CPU usage."
msgstr ""
-#: doc/classes/OS.xml:508
-msgid "The current tablet drvier in use."
+#: doc/classes/OS.xml:519
+msgid "The current tablet driver in use."
msgstr ""
-#: doc/classes/OS.xml:513
+#: doc/classes/OS.xml:524
msgid ""
"The GLES2 rendering backend. It uses OpenGL ES 2.0 on mobile devices, OpenGL "
"2.1 on desktop platforms and WebGL 1.0 on the web."
msgstr ""
-#: doc/classes/OS.xml:516
+#: doc/classes/OS.xml:527
msgid "The Vulkan rendering backend."
msgstr ""
-#: doc/classes/OS.xml:519
+#: doc/classes/OS.xml:530
msgid "Sunday."
-msgstr ""
+msgstr "Sonntag."
-#: doc/classes/OS.xml:522
+#: doc/classes/OS.xml:533
msgid "Monday."
-msgstr ""
+msgstr "Montag."
-#: doc/classes/OS.xml:525
+#: doc/classes/OS.xml:536
msgid "Tuesday."
-msgstr ""
+msgstr "Dienstag."
-#: doc/classes/OS.xml:528
+#: doc/classes/OS.xml:539
msgid "Wednesday."
-msgstr ""
+msgstr "Wittwoch."
-#: doc/classes/OS.xml:531
+#: doc/classes/OS.xml:542
msgid "Thursday."
-msgstr ""
+msgstr "Donnerstag."
-#: doc/classes/OS.xml:534
+#: doc/classes/OS.xml:545
msgid "Friday."
-msgstr ""
+msgstr "Freitag."
-#: doc/classes/OS.xml:537
+#: doc/classes/OS.xml:548
msgid "Saturday."
-msgstr ""
+msgstr "Samstag."
-#: doc/classes/OS.xml:540
+#: doc/classes/OS.xml:551
msgid "January."
-msgstr ""
+msgstr "Januar."
-#: doc/classes/OS.xml:543
+#: doc/classes/OS.xml:554
msgid "February."
-msgstr ""
+msgstr "Februar."
-#: doc/classes/OS.xml:546
+#: doc/classes/OS.xml:557
msgid "March."
-msgstr ""
+msgstr "März."
-#: doc/classes/OS.xml:549
+#: doc/classes/OS.xml:560
msgid "April."
-msgstr ""
+msgstr "April."
-#: doc/classes/OS.xml:552
+#: doc/classes/OS.xml:563
msgid "May."
-msgstr ""
+msgstr "Mai."
-#: doc/classes/OS.xml:555
+#: doc/classes/OS.xml:566
msgid "June."
-msgstr ""
+msgstr "Juni."
-#: doc/classes/OS.xml:558
+#: doc/classes/OS.xml:569
msgid "July."
-msgstr ""
+msgstr "Juli."
-#: doc/classes/OS.xml:561
+#: doc/classes/OS.xml:572
msgid "August."
-msgstr ""
+msgstr "August."
-#: doc/classes/OS.xml:564
+#: doc/classes/OS.xml:575
msgid "September."
-msgstr ""
+msgstr "September."
-#: doc/classes/OS.xml:567
+#: doc/classes/OS.xml:578
msgid "October."
-msgstr ""
+msgstr "Oktober."
-#: doc/classes/OS.xml:570
+#: doc/classes/OS.xml:581
msgid "November."
-msgstr ""
+msgstr "November."
-#: doc/classes/OS.xml:573
+#: doc/classes/OS.xml:584
msgid "December."
-msgstr ""
+msgstr "Dezember."
-#: doc/classes/OS.xml:576
+#: doc/classes/OS.xml:587
msgid "Desktop directory path."
msgstr ""
-#: doc/classes/OS.xml:579
+#: doc/classes/OS.xml:590
msgid "DCIM (Digital Camera Images) directory path."
msgstr ""
-#: doc/classes/OS.xml:582
+#: doc/classes/OS.xml:593
msgid "Documents directory path."
msgstr ""
-#: doc/classes/OS.xml:585
+#: doc/classes/OS.xml:596
msgid "Downloads directory path."
msgstr ""
-#: doc/classes/OS.xml:588
+#: doc/classes/OS.xml:599
msgid "Movies directory path."
msgstr ""
-#: doc/classes/OS.xml:591
+#: doc/classes/OS.xml:602
msgid "Music directory path."
msgstr ""
-#: doc/classes/OS.xml:594
+#: doc/classes/OS.xml:605
msgid "Pictures directory path."
msgstr ""
-#: doc/classes/OS.xml:597
+#: doc/classes/OS.xml:608
msgid "Ringtones directory path."
msgstr ""
@@ -34029,7 +34881,16 @@ msgid ""
"should always be preferred."
msgstr ""
-#: doc/classes/PackedByteArray.xml:85
+#: doc/classes/PackedByteArray.xml:87 doc/classes/PackedColorArray.xml:53
+#: doc/classes/PackedFloat32Array.xml:54 doc/classes/PackedFloat64Array.xml:54
+#: doc/classes/PackedInt32Array.xml:54 doc/classes/PackedInt64Array.xml:54
+#: doc/classes/PackedStringArray.xml:53 doc/classes/PackedVector2Array.xml:53
+#: doc/classes/PackedVector3Array.xml:53
+#, fuzzy
+msgid "Returns [code]true[/code] if the array contains [code]value[/code]."
+msgstr "Gibt [code]true[/code] zurück falls das Array leer ist."
+
+#: doc/classes/PackedByteArray.xml:94
msgid ""
"Returns a hexadecimal representation of this array as a [String].\n"
"[codeblock]\n"
@@ -34038,10 +34899,10 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/PackedByteArray.xml:100 doc/classes/PackedColorArray.xml:55
-#: doc/classes/PackedFloat32Array.xml:56 doc/classes/PackedFloat64Array.xml:56
-#: doc/classes/PackedStringArray.xml:55 doc/classes/PackedVector2Array.xml:55
-#: doc/classes/PackedVector3Array.xml:55
+#: doc/classes/PackedByteArray.xml:109 doc/classes/PackedColorArray.xml:64
+#: doc/classes/PackedFloat32Array.xml:65 doc/classes/PackedFloat64Array.xml:65
+#: doc/classes/PackedStringArray.xml:64 doc/classes/PackedVector2Array.xml:64
+#: doc/classes/PackedVector3Array.xml:64
msgid ""
"Inserts a new element at a given position in the array. The position must be "
"valid, or at the end of the array ([code]idx == size()[/code])."
@@ -34049,11 +34910,11 @@ msgstr ""
"Fügt ein neues Element an der übergebenen Position ein. Die Position muss "
"innerhalb des Arrays oder eins dahinter liegen([code]index == size()[/code])."
-#: doc/classes/PackedByteArray.xml:134 doc/classes/PackedColorArray.xml:89
-#: doc/classes/PackedFloat32Array.xml:90 doc/classes/PackedFloat64Array.xml:90
-#: doc/classes/PackedInt32Array.xml:90 doc/classes/PackedInt64Array.xml:90
-#: doc/classes/PackedStringArray.xml:89 doc/classes/PackedVector2Array.xml:89
-#: doc/classes/PackedVector3Array.xml:89
+#: doc/classes/PackedByteArray.xml:143 doc/classes/PackedColorArray.xml:98
+#: doc/classes/PackedFloat32Array.xml:99 doc/classes/PackedFloat64Array.xml:99
+#: doc/classes/PackedInt32Array.xml:99 doc/classes/PackedInt64Array.xml:99
+#: doc/classes/PackedStringArray.xml:98 doc/classes/PackedVector2Array.xml:98
+#: doc/classes/PackedVector3Array.xml:98
msgid ""
"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 "
@@ -34063,19 +34924,29 @@ msgstr ""
"neue Elemente am Ende des Arrays reserviert. Sollte es schrumpfen, werden "
"Elemente am Ende entsprechend weggeschnitten."
-#: doc/classes/PackedByteArray.xml:145
+#: doc/classes/PackedByteArray.xml:154
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PackedByteArray.xml:152 doc/classes/PackedColorArray.xml:107
-#: doc/classes/PackedFloat32Array.xml:108
-#: doc/classes/PackedFloat64Array.xml:108 doc/classes/PackedStringArray.xml:107
-#: doc/classes/PackedVector2Array.xml:107
-#: doc/classes/PackedVector3Array.xml:107
+#: doc/classes/PackedByteArray.xml:161 doc/classes/PackedColorArray.xml:116
+#: doc/classes/PackedFloat32Array.xml:117
+#: doc/classes/PackedFloat64Array.xml:117 doc/classes/PackedStringArray.xml:116
+#: doc/classes/PackedVector2Array.xml:116
+#: doc/classes/PackedVector3Array.xml:116
msgid "Returns the size of the array."
msgstr "Gibt die Größe des Arrays zurück."
-#: doc/classes/PackedByteArray.xml:163
+#: doc/classes/PackedByteArray.xml:168 doc/classes/PackedColorArray.xml:123
+#: doc/classes/PackedFloat32Array.xml:124
+#: doc/classes/PackedFloat64Array.xml:124 doc/classes/PackedInt32Array.xml:124
+#: doc/classes/PackedInt64Array.xml:124 doc/classes/PackedStringArray.xml:123
+#: doc/classes/PackedVector2Array.xml:123
+#: doc/classes/PackedVector3Array.xml:123
+#, fuzzy
+msgid "Sorts the elements of the array in ascending order."
+msgstr "Entfernt das Element der Arrays dessen Position übergeben wurde."
+
+#: doc/classes/PackedByteArray.xml:179
msgid ""
"Returns the slice of the [PackedByteArray] between indices (inclusive) as a "
"new [PackedByteArray]. Any negative index is considered to be from the end "
@@ -34103,12 +34974,12 @@ msgstr ""
msgid "Appends a [PackedColorArray] at the end of this array."
msgstr ""
-#: doc/classes/PackedColorArray.xml:71 doc/classes/PackedInt32Array.xml:72
-#: doc/classes/PackedInt64Array.xml:72
+#: doc/classes/PackedColorArray.xml:80 doc/classes/PackedInt32Array.xml:81
+#: doc/classes/PackedInt64Array.xml:81
msgid "Appends a value to the array."
msgstr ""
-#: doc/classes/PackedColorArray.xml:100
+#: doc/classes/PackedColorArray.xml:109
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -34138,8 +35009,8 @@ msgstr ""
msgid "Appends a [PackedFloat32Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedFloat32Array.xml:101
-#: doc/classes/PackedFloat64Array.xml:101
+#: doc/classes/PackedFloat32Array.xml:110
+#: doc/classes/PackedFloat64Array.xml:110
msgid "Changes the float at the given index."
msgstr ""
@@ -34192,17 +35063,17 @@ msgstr ""
msgid "Appends a [PackedInt32Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:56 doc/classes/PackedInt64Array.xml:56
+#: doc/classes/PackedInt32Array.xml:65 doc/classes/PackedInt64Array.xml:65
msgid ""
"Inserts a new integer at a given position in the array. The position must be "
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:101 doc/classes/PackedInt64Array.xml:101
+#: doc/classes/PackedInt32Array.xml:110 doc/classes/PackedInt64Array.xml:110
msgid "Changes the integer at the given index."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:108 doc/classes/PackedInt64Array.xml:108
+#: doc/classes/PackedInt32Array.xml:117 doc/classes/PackedInt64Array.xml:117
msgid "Returns the array size."
msgstr ""
@@ -34243,6 +35114,14 @@ msgid ""
"Can be used to save a node to a file. When saving, the node as well as all "
"the node it owns get saved (see [code]owner[/code] property on [Node]).\n"
"[b]Note:[/b] The node doesn't need to own itself.\n"
+"[b]Example of loading a saved scene:[/b]\n"
+"[codeblock]\n"
+"# Use `load()` instead of `preload()` if the path isn't known at compile-"
+"time.\n"
+"var scene = preload(\"res://scene.tscn\").instance()\n"
+"# Add the node as a child of the node the script is attached to.\n"
+"add_child(scene)\n"
+"[/codeblock]\n"
"[b]Example of saving a node with different owners:[/b] The following example "
"creates 3 objects: [code]Node2D[/code] ([code]node[/code]), "
"[code]RigidBody2D[/code] ([code]rigid[/code]) and [code]CollisionObject2D[/"
@@ -34274,29 +35153,29 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/PackedScene.xml:40
+#: doc/classes/PackedScene.xml:47
msgid "Returns [code]true[/code] if the scene file has nodes."
msgstr ""
-#: doc/classes/PackedScene.xml:47
+#: doc/classes/PackedScene.xml:54
msgid ""
"Returns the [code]SceneState[/code] representing the scene file contents."
msgstr ""
-#: doc/classes/PackedScene.xml:56
+#: doc/classes/PackedScene.xml:63
msgid ""
"Instantiates the scene's node hierarchy. Triggers child scene "
"instantiation(s). Triggers a [constant Node.NOTIFICATION_INSTANCED] "
"notification on the root node."
msgstr ""
-#: doc/classes/PackedScene.xml:65
+#: doc/classes/PackedScene.xml:72
msgid ""
"Pack will ignore any sub-nodes not owned by given node. See [member Node."
"owner]."
msgstr ""
-#: doc/classes/PackedScene.xml:71
+#: doc/classes/PackedScene.xml:78
msgid ""
"A dictionary representation of the scene contents.\n"
"Available keys include \"rnames\" and \"variants\" for resources, "
@@ -34305,18 +35184,18 @@ msgid ""
"connections, and \"version\" for the format style of the PackedScene."
msgstr ""
-#: doc/classes/PackedScene.xml:77
+#: doc/classes/PackedScene.xml:84
msgid "If passed to [method instance], blocks edits to the scene state."
msgstr ""
-#: doc/classes/PackedScene.xml:80
+#: doc/classes/PackedScene.xml:87
msgid ""
"If passed to [method instance], provides local scene resources to the local "
"scene.\n"
"[b]Note:[/b] Only available in editor builds."
msgstr ""
-#: doc/classes/PackedScene.xml:84
+#: doc/classes/PackedScene.xml:91
msgid ""
"If passed to [method instance], provides local scene resources to the local "
"scene. Only the main scene should receive the main edit state.\n"
@@ -34344,11 +35223,11 @@ msgstr ""
msgid "Appends a [PackedStringArray] at the end of this array."
msgstr ""
-#: doc/classes/PackedStringArray.xml:71
+#: doc/classes/PackedStringArray.xml:80
msgid "Appends a string element at end of the array."
msgstr ""
-#: doc/classes/PackedStringArray.xml:100
+#: doc/classes/PackedStringArray.xml:109
msgid "Changes the [String] at the given index."
msgstr ""
@@ -34379,11 +35258,11 @@ msgstr ""
msgid "Appends a [PackedVector2Array] at the end of this array."
msgstr "Hängt ein [PackedVector2Array] am Ende dieses Arrays an."
-#: doc/classes/PackedVector2Array.xml:71
+#: doc/classes/PackedVector2Array.xml:80
msgid "Inserts a [Vector2] at the end."
msgstr "Fügt ein [Vector2] am Ende hinzu."
-#: doc/classes/PackedVector2Array.xml:100
+#: doc/classes/PackedVector2Array.xml:109
msgid "Changes the [Vector2] at the given index."
msgstr "Ändert den [Vector2] am übergeben Index."
@@ -34414,11 +35293,11 @@ msgstr ""
msgid "Appends a [PackedVector3Array] at the end of this array."
msgstr "Hängt ein [PackedVector3Array] am Ende dieses Arrays an."
-#: doc/classes/PackedVector3Array.xml:71
+#: doc/classes/PackedVector3Array.xml:80
msgid "Inserts a [Vector3] at the end."
msgstr "Fügt ein [Vector3] am Ende hinzu."
-#: doc/classes/PackedVector3Array.xml:100
+#: doc/classes/PackedVector3Array.xml:109
msgid "Changes the [Vector3] at the given index."
msgstr "Ändert den [Vector3] am übergeben Index."
@@ -35309,13 +36188,56 @@ msgid ""
"as the values displayed in the [b]Monitor[/b] tab in the editor's "
"[b]Debugger[/b] panel. By using the [method get_monitor] method of this "
"class, you can access this data from your code.\n"
+"You can add custom monitors using the [method add_custom_monitor] method. "
+"Custom monitors are available in [b]Monitor[/b] tab in the editor's "
+"[b]Debugger[/b] panel together with built-in monitors.\n"
"[b]Note:[/b] A few of these monitors are only available in debug mode and "
"will always return 0 when used in a release build.\n"
"[b]Note:[/b] Many of these monitors are not updated in real-time, so there "
-"may be a short delay between changes."
+"may be a short delay between changes.\n"
+"[b]Note:[/b] Custom monitors do not support negative values. Negative values "
+"are clamped to 0."
+msgstr ""
+
+#: doc/classes/Performance.xml:26
+msgid ""
+"Adds a custom monitor with name same as id. You can specify the category of "
+"monitor using '/' in id. If there are more than one '/' then default "
+"category is used. Default category is \"Custom\".\n"
+"[codeblock]\n"
+"Performance.add_custom_monitor(\"MyCategory/MyMonitor\", some_callable) # "
+"Adds monitor with name \"MyName\" to category \"MyCategory\"\n"
+"Performance.add_custom_monitor(\"MyMonitor\", some_callable) # Adds monitor "
+"with name \"MyName\" to category \"Custom\"\n"
+"# Note: \"MyCategory/MyMonitor\" and \"MyMonitor\" have same name but "
+"different ids so above code is valid\n"
+"Performance.add_custom_monitor(\"Custom/MyMonitor\", some_callable) # Adds "
+"monitor with name \"MyName\" to category \"Custom\"\n"
+"# Note: \"MyMonitor\" and \"Custom/MyMonitor\" have same name and same "
+"category but different ids so above code is valid\n"
+"Performance.add_custom_monitor(\"MyCategoryOne/MyCategoryTwo/MyMonitor\", "
+"some_callable) # Adds monitor with name \"MyCategoryOne/MyCategoryTwo/"
+"MyMonitor\" to category \"Custom\"\n"
+"[/codeblock]\n"
+"The debugger calls the callable to get the value of custom monitor. The "
+"callable must return a number.\n"
+"Callables are called with arguments supplied in argument array.\n"
+"[b]Note:[/b] It throws an error if given id is already present."
msgstr ""
-#: doc/classes/Performance.xml:20
+#: doc/classes/Performance.xml:46
+msgid ""
+"Returns the value of custom monitor with given id. The callable is called to "
+"get the value of custom monitor.\n"
+"[b]Note:[/b] It throws an error if the given id is absent."
+msgstr ""
+
+#: doc/classes/Performance.xml:54
+#, fuzzy
+msgid "Returns the names of active custom monitors in an array."
+msgstr "Kehrt die Reihenfolge der Elemente des Arrays um."
+
+#: doc/classes/Performance.xml:63
msgid ""
"Returns the value of one of the available monitors. You should provide one "
"of the [enum Monitor] constants as the argument, like this:\n"
@@ -35325,123 +36247,139 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Performance.xml:29
+#: doc/classes/Performance.xml:73
+msgid "Returns the last tick in which custom monitor was added/removed."
+msgstr ""
+
+#: doc/classes/Performance.xml:82
+msgid ""
+"Returns true if custom monitor with the given id is present otherwise "
+"returns false."
+msgstr ""
+
+#: doc/classes/Performance.xml:91
+msgid ""
+"Removes the custom monitor with given id.\n"
+"[b]Note:[/b] It throws an error if the given id is already absent."
+msgstr ""
+
+#: doc/classes/Performance.xml:98
msgid "Number of frames per second."
msgstr ""
-#: doc/classes/Performance.xml:32
+#: doc/classes/Performance.xml:101
msgid "Time it took to complete one frame, in seconds."
msgstr ""
-#: doc/classes/Performance.xml:35
+#: doc/classes/Performance.xml:104
msgid "Time it took to complete one physics frame, in seconds."
msgstr ""
-#: doc/classes/Performance.xml:38
+#: doc/classes/Performance.xml:107
msgid ""
"Static memory currently used, in bytes. Not available in release builds."
msgstr ""
-#: doc/classes/Performance.xml:41
+#: doc/classes/Performance.xml:110
msgid "Available static memory. Not available in release builds."
msgstr ""
-#: doc/classes/Performance.xml:44
+#: doc/classes/Performance.xml:113
msgid ""
"Largest amount of memory the message queue buffer has used, in bytes. The "
"message queue is used for deferred functions calls and notifications."
msgstr ""
-#: doc/classes/Performance.xml:47
+#: doc/classes/Performance.xml:116
msgid "Number of objects currently instanced (including nodes)."
msgstr ""
-#: doc/classes/Performance.xml:50
+#: doc/classes/Performance.xml:119
msgid "Number of resources currently used."
msgstr ""
-#: doc/classes/Performance.xml:53
+#: doc/classes/Performance.xml:122
msgid ""
"Number of nodes currently instanced in the scene tree. This also includes "
"the root node."
msgstr ""
-#: doc/classes/Performance.xml:56
+#: doc/classes/Performance.xml:125
msgid ""
"Number of orphan nodes, i.e. nodes which are not parented to a node of the "
"scene tree."
msgstr ""
-#: doc/classes/Performance.xml:59
+#: doc/classes/Performance.xml:128
msgid "3D objects drawn per frame."
msgstr ""
-#: doc/classes/Performance.xml:62
+#: doc/classes/Performance.xml:131
msgid "Vertices drawn per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:65
+#: doc/classes/Performance.xml:134
msgid "Material changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:68
+#: doc/classes/Performance.xml:137
msgid "Shader changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:71
+#: doc/classes/Performance.xml:140
msgid "Render surface changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:74
+#: doc/classes/Performance.xml:143
msgid "Draw calls per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:77 doc/classes/RenderingServer.xml:3805
+#: doc/classes/Performance.xml:146 doc/classes/RenderingServer.xml:3816
msgid ""
"The amount of video memory used, i.e. texture and vertex memory combined."
msgstr ""
-#: doc/classes/Performance.xml:80 doc/classes/RenderingServer.xml:3808
+#: doc/classes/Performance.xml:149 doc/classes/RenderingServer.xml:3819
msgid "The amount of texture memory used."
msgstr ""
-#: doc/classes/Performance.xml:83 doc/classes/RenderingServer.xml:3811
+#: doc/classes/Performance.xml:152 doc/classes/RenderingServer.xml:3822
msgid "The amount of vertex memory used."
msgstr ""
-#: doc/classes/Performance.xml:86 doc/classes/RenderingServer.xml:3802
+#: doc/classes/Performance.xml:155 doc/classes/RenderingServer.xml:3813
msgid "Unimplemented in the GLES2 rendering backend, always returns 0."
msgstr ""
-#: doc/classes/Performance.xml:89
+#: doc/classes/Performance.xml:158
msgid "Number of active [RigidBody2D] nodes in the game."
msgstr ""
-#: doc/classes/Performance.xml:92
+#: doc/classes/Performance.xml:161
msgid "Number of collision pairs in the 2D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:95
+#: doc/classes/Performance.xml:164
msgid "Number of islands in the 2D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:98
+#: doc/classes/Performance.xml:167
msgid "Number of active [RigidBody3D] and [VehicleBody3D] nodes in the game."
msgstr ""
-#: doc/classes/Performance.xml:101
+#: doc/classes/Performance.xml:170
msgid "Number of collision pairs in the 3D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:104
+#: doc/classes/Performance.xml:173
msgid "Number of islands in the 3D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:107
+#: doc/classes/Performance.xml:176
msgid "Output latency of the [AudioServer]."
msgstr ""
-#: doc/classes/Performance.xml:110
+#: doc/classes/Performance.xml:179
msgid "Represents the size of the [enum Monitor] enum."
msgstr ""
@@ -35465,27 +36403,27 @@ msgstr ""
msgid "Damps the body's rotation if greater than [code]0[/code]."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:70 doc/classes/RigidBody3D.xml:132
+#: doc/classes/PhysicalBone3D.xml:70 doc/classes/RigidBody3D.xml:139
msgid "Lock the body's rotation in the X axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:73 doc/classes/RigidBody3D.xml:135
+#: doc/classes/PhysicalBone3D.xml:73 doc/classes/RigidBody3D.xml:142
msgid "Lock the body's rotation in the Y axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:76 doc/classes/RigidBody3D.xml:138
+#: doc/classes/PhysicalBone3D.xml:76 doc/classes/RigidBody3D.xml:145
msgid "Lock the body's rotation in the Z axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:79 doc/classes/RigidBody3D.xml:141
+#: doc/classes/PhysicalBone3D.xml:79 doc/classes/RigidBody3D.xml:148
msgid "Lock the body's movement in the X axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:82 doc/classes/RigidBody3D.xml:144
+#: doc/classes/PhysicalBone3D.xml:82 doc/classes/RigidBody3D.xml:151
msgid "Lock the body's movement in the Y axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:85 doc/classes/RigidBody3D.xml:147
+#: doc/classes/PhysicalBone3D.xml:85 doc/classes/RigidBody3D.xml:154
msgid "Lock the body's movement in the Z axis."
msgstr ""
@@ -35540,12 +36478,12 @@ msgstr ""
msgid "Damps the body's movement if greater than [code]0[/code]."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:118 doc/classes/RigidBody2D.xml:158
-#: doc/classes/RigidBody3D.xml:175
+#: doc/classes/PhysicalBone3D.xml:118 doc/classes/RigidBody2D.xml:159
+#: doc/classes/RigidBody3D.xml:183
msgid "The body's mass."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:121 doc/classes/RigidBody3D.xml:188
+#: doc/classes/PhysicalBone3D.xml:121 doc/classes/RigidBody3D.xml:196
msgid ""
"The body's weight based on its mass and the global 3D gravity. Global values "
"are set in [b]Project > Project Settings > Physics > 3d[/b]."
@@ -35733,6 +36671,7 @@ msgstr ""
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/physics/ray-casting.html"
msgstr ""
+"https://docs.godotengine.org/de/latest/tutorials/physics/ray-casting.html"
#: doc/classes/PhysicsDirectBodyState2D.xml:19 doc/classes/RigidBody2D.xml:31
msgid "Adds a constant directional force without affecting rotation."
@@ -35852,7 +36791,7 @@ msgid "The inverse of the mass of the body."
msgstr ""
#: doc/classes/PhysicsDirectBodyState2D.xml:195
-#: doc/classes/PhysicsDirectBodyState3D.xml:198 doc/classes/RigidBody2D.xml:155
+#: doc/classes/PhysicsDirectBodyState3D.xml:198 doc/classes/RigidBody2D.xml:156
msgid "The body's linear velocity."
msgstr ""
@@ -36405,7 +37344,7 @@ msgid ""
msgstr ""
#: doc/classes/PhysicsServer2D.xml:620 doc/classes/PhysicsServer3D.xml:637
-#: doc/classes/RigidBody3D.xml:120
+#: doc/classes/RigidBody3D.xml:127
msgid ""
"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."
@@ -37470,47 +38409,64 @@ msgid ""
"collision queries. See also [PhysicsShapeQueryResult2D]."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:18
-msgid ""
-"Sets the [Shape2D] that will be used for collision/intersection queries."
-msgstr ""
-
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:24
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:15
msgid "If [code]true[/code], the query will take [Area2D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:18
msgid ""
"If [code]true[/code], the query will take [PhysicsBody2D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:30
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:30
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:21
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:21
msgid "The physics layer(s) the query will take into account (as a bitmask)."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:33
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:33
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:24
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:24
msgid ""
"The list of objects or object [RID]s that will be excluded from collisions."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:36
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:36 doc/classes/Shape3D.xml:16
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:27 doc/classes/Shape3D.xml:16
msgid "The collision margin for the shape."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:39
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:30
msgid "The motion of the shape being queried for."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:42
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:39
-msgid "The queried shape's [RID]. See also [method set_shape]."
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:33
+msgid ""
+"The [Shape2D] that will be used for collision/intersection queries. This "
+"stores the actual reference which avoids the shape to be released while "
+"being used for queries, so always prefer using this over [member shape_rid]."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:45
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:42
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:36
+msgid ""
+"The queried shape's [RID] that will be used for collision/intersection "
+"queries. Use this over [member shape] if you want to optimize for "
+"performance using the Servers API:\n"
+"[codeblock]\n"
+"var shape_rid = PhysicsServer2D.circle_shape_create()\n"
+"var radius = 64\n"
+"PhysicsServer2D.shape_set_data(shape_rid, radius)\n"
+"\n"
+"var params = PhysicsShapeQueryParameters2D.new()\n"
+"params.shape_rid = shape_rid\n"
+"\n"
+"# Execute physics queries here...\n"
+"\n"
+"# Release the shape when done with physics queries.\n"
+"PhysicsServer2D.free_rid(shape_rid)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:52
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:49
msgid "The queried shape's transform matrix."
msgstr ""
@@ -37524,18 +38480,40 @@ msgid ""
"collision queries. See also [PhysicsShapeQueryResult3D]."
msgstr ""
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:15
+msgid "If [code]true[/code], the query will take [Area3D]s into account."
+msgstr ""
+
#: doc/classes/PhysicsShapeQueryParameters3D.xml:18
msgid ""
-"Sets the [Shape3D] that will be used for collision/intersection queries."
+"If [code]true[/code], the query will take [PhysicsBody3D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:24
-msgid "If [code]true[/code], the query will take [Area3D]s into account."
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:30
+msgid ""
+"The [Shape3D] that will be used for collision/intersection queries. This "
+"stores the actual reference which avoids the shape to be released while "
+"being used for queries, so always prefer using this over [member shape_rid]."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:33
msgid ""
-"If [code]true[/code], the query will take [PhysicsBody3D]s into account."
+"The queried shape's [RID] that will be used for collision/intersection "
+"queries. Use this over [member shape] if you want to optimize for "
+"performance using the Servers API:\n"
+"[codeblock]\n"
+"var shape_rid = PhysicsServer3D.shape_create(PhysicsServer3D.SHAPE_SPHERE)\n"
+"var radius = 2.0\n"
+"PhysicsServer3D.shape_set_data(shape_rid, radius)\n"
+"\n"
+"var params = PhysicsShapeQueryParameters3D.new()\n"
+"params.shape_rid = shape_rid\n"
+"\n"
+"# Execute physics queries here...\n"
+"\n"
+"# Release the shape when done with physics queries.\n"
+"PhysicsServer3D.free_rid(shape_rid)\n"
+"[/codeblock]"
msgstr ""
#: doc/classes/PhysicsShapeQueryResult2D.xml:4
@@ -37676,92 +38654,94 @@ msgid ""
"code]."
msgstr ""
-#: doc/classes/Plane.xml:72
-msgid "Returns a point on the plane."
-msgstr ""
-
-#: doc/classes/Plane.xml:83
+#: doc/classes/Plane.xml:76
msgid ""
-"Returns [code]true[/code] if [code]point[/code] is inside the plane (by a "
-"very minimum [code]epsilon[/code] threshold)."
+"Returns [code]true[/code] if [code]point[/code] is inside the plane. "
+"Comparison uses a custom minimum [code]epsilon[/code] threshold."
msgstr ""
-#: doc/classes/Plane.xml:94
+#: doc/classes/Plane.xml:87
msgid ""
"Returns the intersection point of the three planes [code]b[/code], [code]c[/"
"code] and this plane. If no intersection is found, [code]null[/code] is "
"returned."
msgstr ""
-#: doc/classes/Plane.xml:105
+#: doc/classes/Plane.xml:98
msgid ""
"Returns the intersection point of a ray consisting of the position "
"[code]from[/code] and the direction normal [code]dir[/code] with this plane. "
"If no intersection is found, [code]null[/code] is returned."
msgstr ""
-#: doc/classes/Plane.xml:116
+#: doc/classes/Plane.xml:109
msgid ""
"Returns the intersection point of a segment from position [code]begin[/code] "
"to position [code]end[/code] with this plane. If no intersection is found, "
"[code]null[/code] is returned."
msgstr ""
-#: doc/classes/Plane.xml:125
+#: doc/classes/Plane.xml:118
msgid ""
"Returns [code]true[/code] if this plane and [code]plane[/code] are "
"approximately equal, by running [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/Plane.xml:134
+#: doc/classes/Plane.xml:127
msgid ""
"Returns [code]true[/code] if [code]point[/code] is located above the plane."
msgstr ""
-#: doc/classes/Plane.xml:141
+#: doc/classes/Plane.xml:134
msgid "Returns a copy of the plane, normalized."
msgstr ""
-#: doc/classes/Plane.xml:150
+#: doc/classes/Plane.xml:143
msgid ""
-"Returns the orthogonal projection of point [code]p[/code] into a point in "
-"the plane."
+"Returns the orthogonal projection of [code]point[/code] into a point in the "
+"plane."
msgstr ""
-#: doc/classes/Plane.xml:156
+#: doc/classes/Plane.xml:149
msgid ""
-"Distance from the origin to the plane, in the direction of [member normal]."
+"The distance from the origin to the plane, in the direction of [member "
+"normal]. This value is typically non-negative.\n"
+"In the scalar equation of the plane [code]ax + by + cz = d[/code], this is "
+"[code]d[/code], while the [code](a, b, c)[/code] coordinates are represented "
+"by the [member normal] property."
msgstr ""
-#: doc/classes/Plane.xml:159
+#: doc/classes/Plane.xml:153
msgid ""
-"The normal of the plane. \"Over\" or \"Above\" the plane is considered the "
-"side of the plane towards where the normal is pointing."
+"The normal of the plane, which must be normalized.\n"
+"In the scalar equation of the plane [code]ax + by + cz = d[/code], this is "
+"the vector [code](a, b, c)[/code], where [code]d[/code] is the [member d] "
+"property."
msgstr ""
-#: doc/classes/Plane.xml:162
-msgid "The [member normal]'s X component."
+#: doc/classes/Plane.xml:157
+msgid "The X component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:165
-msgid "The [member normal]'s Y component."
+#: doc/classes/Plane.xml:160
+msgid "The Y component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:168
-msgid "The [member normal]'s Z component."
+#: doc/classes/Plane.xml:163
+msgid "The Z component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:173
-msgid "A plane that extends in the Y and Z axes."
+#: doc/classes/Plane.xml:168
+msgid "A plane that extends in the Y and Z axes (normal vector points +X)."
msgstr ""
-#: doc/classes/Plane.xml:176
-msgid "A plane that extends in the X and Z axes."
+#: doc/classes/Plane.xml:171
+msgid "A plane that extends in the X and Z axes (normal vector points +Y)."
msgstr ""
-#: doc/classes/Plane.xml:179
-msgid "A plane that extends in the X and Y axes."
+#: doc/classes/Plane.xml:174
+msgid "A plane that extends in the X and Y axes (normal vector points +Z)."
msgstr ""
#: doc/classes/PlaneMesh.xml:4
@@ -38472,18 +39452,25 @@ msgstr ""
#: doc/classes/PrimitiveMesh.xml:16
msgid ""
-"Returns mesh arrays used to constitute surface of [Mesh]. Mesh arrays can be "
-"used with [ArrayMesh] to create new surfaces."
+"Returns mesh arrays used to constitute surface of [Mesh]. The result can be "
+"passed to [method ArrayMesh.add_surface_from_arrays] to create a new "
+"surface. For example:\n"
+"[codeblock]\n"
+"var c := CylinderMesh.new()\n"
+"var arr_mesh := ArrayMesh.new()\n"
+"arr_mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLES, c."
+"get_mesh_arrays())\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:22
+#: doc/classes/PrimitiveMesh.xml:27
msgid ""
"Overrides the [AABB] with one defined by user for use with frustum culling. "
"Especially useful to avoid unnexpected culling when using a shader to "
"offset vertices."
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:25
+#: doc/classes/PrimitiveMesh.xml:30
msgid ""
"If set, the order of the vertices in each triangle are reversed resulting in "
"the backside of the mesh being drawn.\n"
@@ -38491,7 +39478,7 @@ msgid ""
"[member BaseMaterial3D.cull_mode]."
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:29
+#: doc/classes/PrimitiveMesh.xml:34
msgid "The current [Material] of the primitive mesh."
msgstr ""
@@ -38922,11 +39909,17 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:260
msgid ""
+"Safer override for [member audio/output_latency] in the Web platform, to "
+"avoid audio issues especially on mobile devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:263
+msgid ""
"Setting to hardcode audio delay when playing video. Best to leave this "
"untouched unless you know what you are doing."
msgstr ""
-#: doc/classes/ProjectSettings.xml:263
+#: doc/classes/ProjectSettings.xml:266
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -38936,7 +39929,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:269
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -38946,27 +39939,27 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:269
+#: doc/classes/ProjectSettings.xml:272
msgid ""
"The default compression level for Zstandard. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
"speed. Decompression speed is mostly unaffected by the compression level."
msgstr ""
-#: doc/classes/ProjectSettings.xml:272
+#: doc/classes/ProjectSettings.xml:275
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:278
msgid ""
"Largest size limit (in power of 2) allowed when compressing using long-"
"distance matching with Zstandard. Higher values can result in better "
"compression, but will require more memory when compressing and decompressing."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:281
msgid ""
"If [code]true[/code], displays getters and setters in autocompletion results "
"in the script editor. This setting is meant to be used when porting old "
@@ -38974,74 +39967,55 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:281
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:284
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:287
+#: doc/classes/ProjectSettings.xml:294
msgid ""
"If [code]true[/code], enables specific GDScript warnings (see [code]debug/"
"gdscript/warnings/*[/code] settings). If [code]false[/code], disables all "
"GDScript warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
-msgid ""
-"If [code]true[/code], enables warnings when a function is declared with the "
-"same name as a constant."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:296
-msgid ""
-"If [code]true[/code], enables warnings when a function is declared with the "
-"same name as a variable. This will turn into an error in a future version "
-"when first-class functions become supported in GDScript."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:299
-msgid ""
-"If [code]true[/code], enables warnings when a function assigned to a "
-"variable may yield and return a function state instead of a value."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:302
+#: doc/classes/ProjectSettings.xml:300
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:303
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when dividing an integer by another "
"integer (the decimal part will be discarded)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when passing a floating-point value "
"to a function that expects an integer (it will be converted and lose "
"precision)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:314
+#: doc/classes/ProjectSettings.xml:312
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
@@ -39062,102 +40036,85 @@ msgid ""
"member variable)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:323
+#: doc/classes/ProjectSettings.xml:325
msgid ""
"If [code]true[/code], enables warnings when calling an expression that has "
"no effect on the surrounding code, such as writing [code]2 + 2[/code] as a "
"statement."
msgstr ""
-#: doc/classes/ProjectSettings.xml:326
+#: doc/classes/ProjectSettings.xml:328
msgid ""
"If [code]true[/code], enables warnings when calling a ternary expression "
"that has no effect on the surrounding code, such as writing [code]42 if "
"active else 0[/code] as a statement."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:331
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:334
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:335
+#: doc/classes/ProjectSettings.xml:337
msgid ""
"If [code]true[/code], enables warnings when assigning a variable using an "
"assignment operator like [code]+=[/code] if the variable wasn't previously "
"assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:338
+#: doc/classes/ProjectSettings.xml:340
msgid ""
"If [code]true[/code], enables warnings when unreachable code is detected "
"(such as after a [code]return[/code] statement that will always be executed)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:345
msgid ""
"If [code]true[/code], enables warnings when using an expression whose type "
"may not be compatible with the function parameter expected."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:348
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:347
+#: doc/classes/ProjectSettings.xml:351
msgid ""
"If [code]true[/code], enables warnings when calling a method whose presence "
"is not guaranteed at compile-time in the class."
msgstr ""
-#: doc/classes/ProjectSettings.xml:350
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], enables warnings when accessing a property whose "
"presence is not guaranteed at compile-time in the class."
msgstr ""
-#: doc/classes/ProjectSettings.xml:353
-msgid ""
-"If [code]true[/code], enables warnings when a function parameter is unused."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:356
-msgid ""
-"If [code]true[/code], enables warnings when a member variable is unused."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:363
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:362
+#: doc/classes/ProjectSettings.xml:366
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:365
-msgid ""
-"If [code]true[/code], enables warnings when a variable is declared with the "
-"same name as a function. This will turn into an error in a future version "
-"when first-class functions become supported in GDScript."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:368
+#: doc/classes/ProjectSettings.xml:369
msgid ""
"If [code]true[/code], enables warnings when assigning the result of a "
"function that returns [code]void[/code] to a variable."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:374
+#: doc/classes/ProjectSettings.xml:375
msgid ""
"Maximum number of frames per second allowed. The actual number of frames per "
"second may still be below this value if the game is lagging.\n"
@@ -39168,143 +40125,143 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:379
+#: doc/classes/ProjectSettings.xml:380
msgid "Maximum call stack allowed for debugging GDScript."
msgstr ""
-#: doc/classes/ProjectSettings.xml:382
+#: doc/classes/ProjectSettings.xml:383
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:385
+#: doc/classes/ProjectSettings.xml:386
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:388
+#: doc/classes/ProjectSettings.xml:389
msgid ""
"Print more information to standard output when running. It displays "
"information such as memory leaks, which scenes and resources are being "
"loaded, etc."
msgstr ""
-#: doc/classes/ProjectSettings.xml:391
+#: doc/classes/ProjectSettings.xml:392
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:394
+#: doc/classes/ProjectSettings.xml:395
msgid ""
"Color of the contact points between collision shapes, visible when \"Visible "
"Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:397
+#: doc/classes/ProjectSettings.xml:398
msgid ""
"Maximum number of contact points between collision shapes to display when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:400
+#: doc/classes/ProjectSettings.xml:401
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
msgid "Hotspot for the custom mouse cursor image."
msgstr ""
-#: doc/classes/ProjectSettings.xml:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
msgid ""
"If [code]true[/code], allows HiDPI display on Windows and macOS. This "
"setting has no effect on desktop Linux, as DPI-awareness fallbacks are not "
"supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"If [code]true[/code], keeps the screen on (even in case of inactivity), so "
"the screensaver does not take over. Works on desktop and mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
msgid "Default orientation on mobile devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"If [code]true[/code], the home indicator is hidden automatically. This only "
"affects iOS devices without a physical home button."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid "Force the window to be always on top."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid "Force the window to be borderless."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Sets the window to full screen when it starts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid ""
"Sets the game's main viewport height. On desktop platforms, this is the "
"default window size. Stretch mode settings also use this as a reference when "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Allows the window to be resizable by default."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"Sets the game's main viewport width. On desktop platforms, this is the "
"default window size. Stretch mode settings also use this as a reference when "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:454
+#: doc/classes/ProjectSettings.xml:455
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:457
+#: doc/classes/ProjectSettings.xml:458
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -39313,7 +40270,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:460
+#: doc/classes/ProjectSettings.xml:461
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -39324,13 +40281,13 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:464
+#: doc/classes/ProjectSettings.xml:465
msgid ""
"Search path for project-specific script templates. Script templates will be "
"search both in the editor-specific path and in this project-specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:467
+#: doc/classes/ProjectSettings.xml:468
msgid ""
"Text-based file extensions to include in the script editor's \"Find in Files"
"\" feature. You can add e.g. [code]tscn[/code] if you wish to also parse "
@@ -39338,49 +40295,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:470
+#: doc/classes/ProjectSettings.xml:471
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:473
+#: doc/classes/ProjectSettings.xml:474
msgid ""
-"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
+"If [code]true[/code], swaps Cancel and OK buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:478
+#: doc/classes/ProjectSettings.xml:479
msgid ""
"Path to a custom [Theme] resource file to use for the project ([code]theme[/"
"code] or generic [code]tres[/code]/[code]res[/code] extension)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:484
+#: doc/classes/ProjectSettings.xml:485
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:487
+#: doc/classes/ProjectSettings.xml:488
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:490
+#: doc/classes/ProjectSettings.xml:491
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:493
+#: doc/classes/ProjectSettings.xml:494
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:496
+#: doc/classes/ProjectSettings.xml:497
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -39389,7 +40346,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"Default [InputEventAction] to discard a modal or pending input.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39397,7 +40354,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:504
+#: doc/classes/ProjectSettings.xml:505
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39405,7 +40362,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:508
+#: doc/classes/ProjectSettings.xml:509
msgid ""
"Default [InputEventAction] to go to the end position of a [Control] (e.g. "
"last item in an [ItemList] or a [Tree]), matching the behavior of [constant "
@@ -39415,7 +40372,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:512
+#: doc/classes/ProjectSettings.xml:513
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -39424,7 +40381,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:516
+#: doc/classes/ProjectSettings.xml:517
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -39433,7 +40390,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:520
+#: doc/classes/ProjectSettings.xml:521
msgid ""
"Default [InputEventAction] to go to the start position of a [Control] (e.g. "
"first item in an [ItemList] or a [Tree]), matching the behavior of [constant "
@@ -39443,7 +40400,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39451,7 +40408,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:528
+#: doc/classes/ProjectSettings.xml:529
msgid ""
"Default [InputEventAction] to go down a page in a [Control] (e.g. in an "
"[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEDOWN] on "
@@ -39461,7 +40418,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Default [InputEventAction] to go up a page in a [Control] (e.g. in an "
"[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEUP] on "
@@ -39471,7 +40428,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:536
+#: doc/classes/ProjectSettings.xml:537
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39479,7 +40436,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:540
+#: doc/classes/ProjectSettings.xml:541
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -39488,7 +40445,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39496,371 +40453,371 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:548
+#: doc/classes/ProjectSettings.xml:549
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:554
+#: doc/classes/ProjectSettings.xml:555
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:557
+#: doc/classes/ProjectSettings.xml:558
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:560
+#: doc/classes/ProjectSettings.xml:561
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:566
+#: doc/classes/ProjectSettings.xml:567
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:569
+#: doc/classes/ProjectSettings.xml:570
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:572
+#: doc/classes/ProjectSettings.xml:573
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:578
+#: doc/classes/ProjectSettings.xml:579
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:581
+#: doc/classes/ProjectSettings.xml:582
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:584
+#: doc/classes/ProjectSettings.xml:585
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:590
+#: doc/classes/ProjectSettings.xml:591
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:593
+#: doc/classes/ProjectSettings.xml:594
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:596
+#: doc/classes/ProjectSettings.xml:597
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:602
+#: doc/classes/ProjectSettings.xml:603
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid ""
"The locale to fall back to if a translation isn't available in a given "
"language. If left empty, [code]en[/code] (English) will be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "If [code]true[/code], logs all output to files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:806
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:809
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:812
msgid ""
"Godot uses a message queue to defer some function calls. If you run out of "
"space on it (you will see an error), you can increase the size here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:815
msgid ""
"This is used by servers when used in multi-threading mode (servers and "
"visual). RIDs are preallocated to avoid stalling the server requesting them "
@@ -39868,56 +40825,56 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:829
+#: doc/classes/ProjectSettings.xml:832
msgid ""
"Maximum amount of characters allowed to send as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:832
+#: doc/classes/ProjectSettings.xml:835
msgid ""
"Maximum number of errors allowed to be sent from the debugger. Over this "
"value, content is dropped. This helps not to stall the debugger connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:835
+#: doc/classes/ProjectSettings.xml:838
msgid ""
"Maximum amount of messages in the debugger queue. Over this value, content "
"is dropped. This helps to limit the debugger memory usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:838
+#: doc/classes/ProjectSettings.xml:841
msgid ""
"Maximum number of warnings allowed to be sent from the debugger. Over this "
"value, content is dropped. This helps not to stall the debugger connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:841
+#: doc/classes/ProjectSettings.xml:844
msgid ""
"Default size of packet peer stream for deserializing Godot data. Over this "
"size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:844
+#: doc/classes/ProjectSettings.xml:847
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:847
+#: doc/classes/ProjectSettings.xml:850
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:850
+#: doc/classes/ProjectSettings.xml:853
msgid ""
"Amount of read ahead used by remote filesystem. Higher values decrease the "
"effects of latency at the cost of higher bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:853
+#: doc/classes/ProjectSettings.xml:856
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:856
+#: doc/classes/ProjectSettings.xml:859
msgid ""
"The CA certificates bundle to use for SSL connections. If this is set to a "
"non-empty value, this will [i]override[/i] Godot's default [url=https://"
@@ -39927,31 +40884,31 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:863
msgid ""
"When creating node names automatically, set the type of casing in this "
"project. This is mostly an editor setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:866
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:869
msgid "Size of the hash table used for the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:872
msgid "Cell size used for the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:875
msgid "The default angular damp in 2D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:878
msgid ""
"The default gravity strength in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39963,7 +40920,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:883
+#: doc/classes/ProjectSettings.xml:886
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39975,38 +40932,38 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:891
+#: doc/classes/ProjectSettings.xml:894
msgid "The default linear damp in 2D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:894
+#: doc/classes/ProjectSettings.xml:897
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:897
+#: doc/classes/ProjectSettings.xml:900
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics2D\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:901
+#: doc/classes/ProjectSettings.xml:904
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant PhysicsServer2D."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:904
+#: doc/classes/ProjectSettings.xml:907
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant PhysicsServer2D."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:907
+#: doc/classes/ProjectSettings.xml:910
msgid ""
"Sets whether physics is run on the main thread or a separate one. Running "
"the server on a thread increases performance, but restricts API access to "
@@ -40016,23 +40973,23 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:914
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant PhysicsServer2D.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:917
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody3D] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:920
msgid "The default angular damp in 3D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:923
msgid ""
"The default gravity strength in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -40044,7 +41001,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:928
+#: doc/classes/ProjectSettings.xml:931
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -40056,11 +41013,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:936
+#: doc/classes/ProjectSettings.xml:939
msgid "The default linear damp in 3D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:939
+#: doc/classes/ProjectSettings.xml:942
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -40068,11 +41025,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:943
+#: doc/classes/ProjectSettings.xml:946
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:949
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -40081,7 +41038,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:950
+#: doc/classes/ProjectSettings.xml:953
msgid ""
"Fix to improve physics jitter, specially on monitors where refresh rate is "
"different than the physics FPS.\n"
@@ -40089,7 +41046,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:954
+#: doc/classes/ProjectSettings.xml:957
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -40097,7 +41054,7 @@ msgid ""
"programmatically, use [method RenderingServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:957
+#: doc/classes/ProjectSettings.xml:960
msgid ""
"[Environment] that will be used as a fallback environment in case a scene "
"does not specify its own environment. The default environment is loaded in "
@@ -40107,14 +41064,14 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:986
+#: doc/classes/ProjectSettings.xml:989
msgid ""
"Max amount of elements renderable in a frame. If more than this are visible "
"per frame, they will be dropped. Keep in mind elements refer to mesh "
"surfaces and not meshes themselves."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:994
msgid ""
"Some NVIDIA GPU drivers have a bug which produces flickering issues for the "
"[code]draw_rect[/code] method, especially as used in [TileMap]. Refer to "
@@ -40126,73 +41083,73 @@ msgid ""
"using the Vulkan backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:995
+#: doc/classes/ProjectSettings.xml:998
msgid ""
"If [code]true[/code], forces snapping of polygons to pixels in 2D rendering. "
"May help in some pixel art styles."
msgstr ""
-#: doc/classes/ProjectSettings.xml:998
+#: doc/classes/ProjectSettings.xml:1001
msgid ""
"Sets the quality of the depth of field effect. Higher quality takes more "
"samples, which is slower but looks smoother."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1001
+#: doc/classes/ProjectSettings.xml:1004
msgid ""
"Sets the depth of field shape. Can be Box, Hexagon, or Circle. Box is the "
"fastest. Circle is the most realistic, but also the most expensive to "
"compute."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1004
+#: doc/classes/ProjectSettings.xml:1007
msgid ""
"If [code]true[/code], jitters DOF samples to make effect slightly blurrier "
"and hide lines created from low sample rates. This can result in a slightly "
"grainy appearance when used with a low number of samples."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1010
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1010
+#: doc/classes/ProjectSettings.xml:1013
msgid ""
"If [code]true[/code], performs a previous depth pass before rendering "
"materials. This increases performance in scenes with high overdraw, when "
"complex materials and lighting are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1016
msgid ""
"The directional shadow's size in pixels. Higher values will result in "
"sharper shadows, at the cost of performance. The value will be rounded up to "
"the nearest power of 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1016
+#: doc/classes/ProjectSettings.xml:1019
msgid ""
"Lower-end override for [member rendering/quality/directional_shadow/size] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1019
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"Quality setting for shadows cast by [DirectionalLight3D]s. Higher quality "
"settings use more samples when reading from shadow maps and are thus slower. "
"Low quality settings may result in shadows looking grainy."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1022
+#: doc/classes/ProjectSettings.xml:1025
msgid ""
"Lower-end override for [member rendering/quality/directional_shadow/"
"soft_shadow_quality] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1028
msgid ""
"The video driver to use (\"GLES2\" or \"Vulkan\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -40202,32 +41159,32 @@ msgid ""
"get_current_video_driver[/code] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1031
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"If [code]true[/code], take additional samples when rendering objects "
"affected by a [GIProbe] to reduce artifacts from only sampling in one "
"direction."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1034
+#: doc/classes/ProjectSettings.xml:1037
msgid ""
"Sets the number of cone samples taken when rendering objects affected by "
"[GIProbe]s."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1037
+#: doc/classes/ProjectSettings.xml:1040
msgid ""
"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."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1040
+#: doc/classes/ProjectSettings.xml:1043
msgid ""
"Lower-end override for [member rendering/quality/glow/upscale_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1043
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Strategy used for framebuffer allocation. The simpler it is, the less "
"resources it uses (but the less features it supports). If set to \"2D "
@@ -40237,41 +41194,41 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1046
+#: doc/classes/ProjectSettings.xml:1049
msgid ""
"Lower-end override for [member rendering/quality/intended_usage/"
"framebuffer_allocation] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1052
msgid ""
"Number of cubemaps to store in the reflection atlas. The number of "
"[ReflectionProbe]s in a scene will be limited by this amount. A higher "
"number requires more VRAM."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1052
+#: doc/classes/ProjectSettings.xml:1055
msgid ""
"Size of cubemap faces for [ReflectionProbe]s. A higher number requires more "
"VRAM and may make reflection probe updating slower."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1055
+#: doc/classes/ProjectSettings.xml:1058
msgid ""
"Lower-end override for [member rendering/quality/reflection_atlas/"
"reflection_size] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1058
+#: doc/classes/ProjectSettings.xml:1061
msgid ""
"Use a higher quality variant of the fast filtering algorithm. Significantly "
"slower than using default quality, but results in smoother reflections. "
"Should only be used when the scene is especially detailed."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1061
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Sets the number of samples to take when using importance sampling for [Sky]s "
"and [ReflectionProbe]s. A higher value will result in smoother, higher "
@@ -40281,19 +41238,19 @@ msgid ""
"environments with a high level of detail."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1064
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Lower-end override for [member rendering/quality/reflections/ggx_samples] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1067
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Limits the number of layers to use in radiance maps when using importance "
"sampling. A lower number will be slightly faster and take up less VRAM."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1070
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise and "
@@ -40302,14 +41259,14 @@ msgid ""
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1073
+#: doc/classes/ProjectSettings.xml:1076
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"texture_array_reflections] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1079
msgid ""
"Sets the number of MSAA samples to use (as a power of two). MSAA is used to "
"reduce aliasing around the edges of polygons. A higher MSAA value results in "
@@ -40317,7 +41274,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1080
+#: doc/classes/ProjectSettings.xml:1083
msgid ""
"Sets the screen-space antialiasing mode for the default screen [Viewport]. "
"Screen-space antialiasing works by selectively blurring edges in a post-"
@@ -40326,133 +41283,117 @@ msgid ""
"MSAA and will smooth out specular aliasing, but tend to make scenes appear "
"blurry.\n"
"Another way to combat specular aliasing is to enable [member rendering/"
-"quality/screen_filters/screen_space_roughness_limiter]."
+"quality/screen_filters/screen_space_roughness_limiter_enabled]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1084
-msgid ""
-"Enables the screen-space roughness limiter which increases material "
-"roughness in areas with a high normal frequency (i.e. when normals change a "
-"lot from pixel to pixel). This helps to reduce the amount of specular "
-"aliasing in a scene. Specular aliasing looks like random bright pixels that "
-"occur in reflections."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:1087
-msgid ""
-"Curves the amount of the roughness limited effect. A higher value limits the "
-"effect to very sharply curved surfaces, while a lower threshold extends the "
-"effect to smoother surfaces."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:1090
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"Sets the quality for rough screen-space reflections. Turning off will make "
"all screen space reflections sharp, while higher values make rough "
"reflections look better."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1093
+#: doc/classes/ProjectSettings.xml:1096
msgid ""
"If [code]true[/code], uses faster but lower-quality Blinn model to generate "
"blurred reflections instead of the GGX model."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1099
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_blinn_over_ggx] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1102
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1102
+#: doc/classes/ProjectSettings.xml:1105
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_lambert_over_burley] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1105
+#: doc/classes/ProjectSettings.xml:1108
msgid ""
"If [code]true[/code], forces vertex shading for all rendering. This can "
"increase performance a lot, but also reduces quality immensely. Can be used "
"to optimize performance on low-end mobile devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1108
+#: doc/classes/ProjectSettings.xml:1111
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_vertex_shading] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1111 doc/classes/ProjectSettings.xml:1114
-#: doc/classes/ProjectSettings.xml:1117 doc/classes/ProjectSettings.xml:1120
+#: doc/classes/ProjectSettings.xml:1114 doc/classes/ProjectSettings.xml:1117
+#: doc/classes/ProjectSettings.xml:1120 doc/classes/ProjectSettings.xml:1123
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1123
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1126
+#: doc/classes/ProjectSettings.xml:1129
msgid ""
"Lower-end override for [member rendering/quality/shadow_atlas/size] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1132
msgid ""
"Quality setting for shadows cast by [OmniLight3D]s and [SpotLight3D]s. "
"Higher quality settings use more samples when reading from shadow maps and "
"are thus slower. Low quality settings may result in shadows looking grainy."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1132
+#: doc/classes/ProjectSettings.xml:1135
msgid ""
"Lower-end override for [member rendering/quality/shadows/"
"soft_shadow_quality] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1135
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"If [code]true[/code], screen-space ambient occlusion will be rendered at "
"half size and then upscaled before being added to the scene. This is "
"significantly faster but may miss small details."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1138
+#: doc/classes/ProjectSettings.xml:1141
msgid ""
"Sets the quality of the screen-space ambient occlusion effect. Higher values "
"take more samples and so will result in better quality, at the cost of "
"performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1144
msgid ""
"Scales the depth over which the subsurface scattering effect is applied. A "
"high value may allow light to scatter into a part of the mesh or another "
"mesh that is close in screen space but far in depth."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1144
+#: doc/classes/ProjectSettings.xml:1147
msgid ""
"Sets the quality of the subsurface scattering effect. Higher values are "
"slower but look nicer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1147
+#: doc/classes/ProjectSettings.xml:1150
msgid ""
"Scales the distance over which samples are taken for subsurface scattering "
"effect. Changing this does not impact performance, but higher values will "
@@ -40460,7 +41401,7 @@ msgid ""
"out. A lower value results in a smaller spread of scattered light."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1150
+#: doc/classes/ProjectSettings.xml:1153
msgid ""
"Sets the maximum number of samples to take when using anisotropic filtering "
"on textures (as a power of two). A higher sample count will result in "
@@ -40469,7 +41410,7 @@ msgid ""
"materials where it is enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1153
+#: doc/classes/ProjectSettings.xml:1156
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -40478,49 +41419,49 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Thread model for rendering. Rendering on a thread can vastly improve "
"performance, but synchronizing to the main thread can cause a bit more "
"jitter."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
"only supported on desktop platforms, and only when using the Vulkan renderer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
"doesn't support alpha channels in textures."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
"compression algorithm is only supported when using the Vulkan renderer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1175
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
"compression algorithm is only supported on iOS."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
"supported on desktop platforms and consoles."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1182
+#: doc/classes/ProjectSettings.xml:1189
msgid "Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses."
msgstr ""
@@ -40546,17 +41487,18 @@ msgstr ""
#: doc/classes/Quat.xml:4
msgid "Quaternion."
-msgstr ""
+msgstr "Quaternion."
#: doc/classes/Quat.xml:7
msgid ""
-"A unit quaternion used for representing 3D rotations.\n"
-"It is similar to [Basis], which implements matrix representation of "
-"rotations, and can be parametrized using both an axis-angle pair or Euler "
-"angles. But due to its compactness and the way it is stored in memory, "
-"certain operations (obtaining axis-angle and performing SLERP, in "
-"particular) are more efficient and robust against floating-point errors.\n"
-"Quaternions need to be (re)normalized."
+"A unit quaternion used for representing 3D rotations. Quaternions need to be "
+"normalized to be used for rotation.\n"
+"It is similar to Basis, which implements matrix representation of rotations, "
+"and can be parametrized using both an axis-angle pair or Euler angles. Basis "
+"stores rotation, scale, and shearing, while Quat only stores rotation.\n"
+"Due to its compactness and the way it is stored in memory, certain "
+"operations (obtaining axis-angle and performing SLERP, in particular) are "
+"more efficient and robust against floating-point errors."
msgstr ""
#: doc/classes/Quat.xml:12
@@ -40564,31 +41506,35 @@ msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/using_transforms."
"html#interpolating-with-quaternions"
msgstr ""
+"https://docs.godotengine.org/de/latest/tutorials/3d/using_transforms."
+"html#interpolating-with-quaternions"
#: doc/classes/Quat.xml:21
-msgid "Returns the rotation matrix corresponding to the given quaternion."
+msgid "Constructs a quaternion from the given [Basis]."
msgstr ""
#: doc/classes/Quat.xml:30
msgid ""
-"Returns a quaternion that will perform a rotation specified by Euler angles "
-"(in the YXZ convention: first Z, then X, and Y last), given in the vector "
-"format as (X angle, Y angle, Z angle)."
+"Constructs a quaternion that will perform a rotation specified by Euler "
+"angles (in the YXZ convention: when decomposing, first Z, then X, and Y "
+"last), given in the vector format as (X angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:41
msgid ""
-"Returns a quaternion that will rotate around the given axis by the specified "
-"angle. The axis must be a normalized vector."
+"Constructs a quaternion that will rotate around the given axis by the "
+"specified angle. The axis must be a normalized vector."
msgstr ""
#: doc/classes/Quat.xml:56
-msgid "Returns a quaternion defined by these values."
+msgid "Constructs a quaternion defined by the given values."
msgstr ""
#: doc/classes/Quat.xml:71
msgid ""
-"Performs a cubic spherical-linear interpolation with another quaternion."
+"Performs a cubic spherical interpolation between quaternions [code]preA[/"
+"code], this vector, [code]b[/code], and [code]postB[/code], by the given "
+"amount [code]t[/code]."
msgstr ""
#: doc/classes/Quat.xml:80
@@ -40597,10 +41543,10 @@ msgstr ""
#: doc/classes/Quat.xml:87
msgid ""
-"Returns Euler angles (in the YXZ convention: first Z, then X, and Y last) "
-"corresponding to the rotation represented by the unit quaternion. Returned "
-"vector contains the rotation angles in the format (X angle, Y angle, Z "
-"angle)."
+"Returns Euler angles (in the YXZ convention: when decomposing, first Z, then "
+"X, and Y last) corresponding to the rotation represented by the unit "
+"quaternion. Returned vector contains the rotation angles in the format (X "
+"angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:94
@@ -40639,44 +41585,68 @@ msgstr ""
#: doc/classes/Quat.xml:151
msgid ""
"Sets the quaternion to a rotation specified by Euler angles (in the YXZ "
-"convention: first Z, then X, and Y last), given in the vector format as (X "
-"angle, Y angle, Z angle)."
+"convention: when decomposing, first Z, then X, and Y last), given in the "
+"vector format as (X angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:162
-msgid "Performs a spherical-linear interpolation with another quaternion."
+#, fuzzy
+msgid ""
+"Returns the result of the spherical linear interpolation between this "
+"quaternion and [code]to[/code] by amount [code]weight[/code].\n"
+"[b]Note:[/b] Both quaternions must be normalized."
msgstr ""
+"Gibt das Ergebnis der sphärischen Linearinterpolation zwischen diesem Vektor "
+"und [code]b[/code], in Position [code]t[/code] zurück. [code]t[/code] ist im "
+"Interval von [code]0.0[/code] bis [code]1.0[/code] und bezeichnet den Grad "
+"der Interpolation.\n"
+"[b]Hinweis:[/b] Beide Vektoren müssen normalisiert sein."
-#: doc/classes/Quat.xml:173
+#: doc/classes/Quat.xml:174
+#, fuzzy
msgid ""
-"Performs a spherical-linear interpolation with another quaterion without "
-"checking if the rotation path is not bigger than 90°."
+"Returns the result of the spherical linear interpolation between this "
+"quaternion and [code]to[/code] by amount [code]weight[/code], but without "
+"checking if the rotation path is not bigger than 90 degrees."
msgstr ""
+"Gibt das Ergebnis der Linearinterpolation zwischen diesem Vektor und "
+"[code]b[/code] in Position [code]t[/code] zurück. [code]t[/code] ist im "
+"Interval von [code]0.0[/code] bis [code]1.0[/code] und bezeichnet den Grad "
+"der Interpolation."
-#: doc/classes/Quat.xml:182
-msgid "Transforms the vector [code]v[/code] by this quaternion."
+#: doc/classes/Quat.xml:183
+msgid "Returns a vector transformed (multiplied) by this quaternion."
msgstr ""
-#: doc/classes/Quat.xml:188
-msgid "W component of the quaternion."
+#: doc/classes/Quat.xml:189
+msgid ""
+"W component of the quaternion (real part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:191
-msgid "X component of the quaternion."
+#: doc/classes/Quat.xml:193
+msgid ""
+"X component of the quaternion (imaginary [code]i[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:194
-msgid "Y component of the quaternion."
+#: doc/classes/Quat.xml:197
+msgid ""
+"Y component of the quaternion (imaginary [code]j[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:197
-msgid "Z component of the quaternion."
+#: doc/classes/Quat.xml:201
+msgid ""
+"Z component of the quaternion (imaginary [code]k[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:202
+#: doc/classes/Quat.xml:207
msgid ""
-"The identity rotation. Equivalent to an identity matrix. If a vector is "
-"transformed by an identity quaternion, it will not change."
+"The identity quaternion, representing no rotation. Equivalent to an identity "
+"[Basis] matrix. If a vector is transformed by an identity quaternion, it "
+"will not change."
msgstr ""
#: doc/classes/RandomNumberGenerator.xml:4
@@ -40879,7 +41849,8 @@ msgid ""
"collision information immediately instead of waiting for the next "
"[code]_physics_process[/code] call, for example if the ray or its parent has "
"changed state.\n"
-"[b]Note:[/b] [code]enabled == true[/code] is not required for this to work."
+"[b]Note:[/b] [member enabled] does not need to be [code]true[/code] for this "
+"to work."
msgstr ""
#: doc/classes/RayCast2D.xml:54 doc/classes/RayCast3D.xml:55
@@ -40985,7 +41956,8 @@ msgid ""
"Use this method to update the collision information immediately instead of "
"waiting for the next [code]_physics_process[/code] call, for example if the "
"ray or its parent has changed state.\n"
-"[b]Note:[/b] [code]enabled == true[/code] is not required for this to work."
+"[b]Note:[/b] [member enabled] does not need to be [code]true[/code] for this "
+"to work."
msgstr ""
#: doc/classes/RayCast3D.xml:71
@@ -41143,14 +42115,6 @@ msgstr ""
msgid "Returns a larger [Rect2] that contains this [Rect2] and [code]b[/code]."
msgstr ""
-#: doc/classes/Rect2.xml:174 doc/classes/Rect2i.xml:163
-msgid "Ending corner."
-msgstr ""
-
-#: doc/classes/Rect2.xml:177 doc/classes/Rect2i.xml:166
-msgid "Position (starting corner)."
-msgstr ""
-
#: doc/classes/Rect2i.xml:4
msgid "2D axis-aligned bounding box using integer coordinates."
msgstr ""
@@ -41189,10 +42153,11 @@ msgid "Returns the intersection of this [Rect2i] and b."
msgstr "Gibt die Größe des Arrays zurück."
#: doc/classes/Rect2i.xml:71
-#, fuzzy
msgid ""
"Returns [code]true[/code] if this [Rect2i] completely encloses another one."
-msgstr "Gibt [code]true[/code] zurück wenn dieser Vektor normalisiert ist."
+msgstr ""
+"Liefert [code]true[/code] wenn dieser [Rect2i] einen anderen komplett "
+"umschließt."
#: doc/classes/Rect2i.xml:80
#, fuzzy
@@ -41202,9 +42167,8 @@ msgstr ""
"Größe, zurück."
#: doc/classes/Rect2i.xml:87
-#, fuzzy
msgid "Returns the area of the [Rect2i]."
-msgstr "Gibt die Größe des Arrays zurück."
+msgstr "Liefert die Fläche des [Rect2i]."
#: doc/classes/Rect2i.xml:96
msgid ""
@@ -41225,14 +42189,12 @@ msgid ""
msgstr ""
#: doc/classes/Rect2i.xml:129
-#, fuzzy
msgid "Returns [code]true[/code] if the [Rect2i] is flat or empty."
-msgstr "Gibt [code]true[/code] zurück falls das Array leer ist."
+msgstr "Liefert [code]true[/code] wenn das [Rect2i] leer ist."
#: doc/classes/Rect2i.xml:138
-#, fuzzy
msgid "Returns [code]true[/code] if the [Rect2i] contains a point."
-msgstr "Gibt [code]true[/code] zurück wenn dieser Vektor normalisiert ist."
+msgstr "Liefert [code]true[/code] wenn das [Rect2i] einen Punkt beinhaltet."
#: doc/classes/Rect2i.xml:147
msgid ""
@@ -41272,22 +42234,22 @@ msgstr ""
msgid ""
"Base class for any object that keeps a reference count. [Resource] and many "
"other helper objects inherit this class.\n"
-"References keep an internal reference counter so that they are automatically "
-"released when no longer in use, and only then. References therefore do not "
-"need to be freed manually with [method Object.free].\n"
+"Unlike [Object]s, References keep an internal reference counter so that they "
+"are automatically released when no longer in use, and only then. References "
+"therefore do not need to be freed manually with [method Object.free].\n"
"In the vast majority of use cases, instantiating and using [Reference]-"
"derived types is all you need to do. The methods provided in this class are "
"only for advanced users, and can cause issues if misused."
msgstr ""
-#: doc/classes/Reference.xml:18
+#: doc/classes/Reference.xml:19
msgid ""
"Initializes the internal reference counter. Use this only if you really know "
"what you are doing.\n"
"Returns whether the initialization was successful."
msgstr ""
-#: doc/classes/Reference.xml:26
+#: doc/classes/Reference.xml:27
msgid ""
"Increments the internal reference counter. Use this only if you really know "
"what you are doing.\n"
@@ -41295,7 +42257,7 @@ msgid ""
"code] otherwise."
msgstr ""
-#: doc/classes/Reference.xml:34
+#: doc/classes/Reference.xml:35
msgid ""
"Decrements the internal reference counter. Use this only if you really know "
"what you are doing.\n"
@@ -41343,15 +42305,16 @@ msgstr ""
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/reflection_probes.html"
msgstr ""
+"https://docs.godotengine.org/de/latest/tutorials/3d/reflection_probes.html"
-#: doc/classes/ReflectionProbe.xml:17
+#: doc/classes/ReflectionProbe.xml:23
msgid ""
"If [code]true[/code], enables box projection. This makes reflections look "
"more correct in rectangle-shaped rooms by offsetting the reflection center "
"depending on the camera's location."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:20
+#: doc/classes/ReflectionProbe.xml:26
msgid ""
"Sets the cull mask which determines what objects are drawn by this probe. "
"Every [VisualInstance3D] with a layer included in this cull mask will be "
@@ -41360,78 +42323,56 @@ msgid ""
"rendering cost."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:23
+#: doc/classes/ReflectionProbe.xml:29
msgid ""
"If [code]true[/code], computes shadows in the reflection probe. This makes "
"the reflection probe slower to render; you may want to disable this if using "
"the [constant UPDATE_ALWAYS] [member update_mode]."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:26
+#: doc/classes/ReflectionProbe.xml:32
msgid ""
"The size of the reflection probe. The larger the extents the more space "
"covered by the probe which will lower the perceived resolution. It is best "
"to keep the extents only as large as you need them."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:29
+#: doc/classes/ReflectionProbe.xml:35
msgid ""
"Defines the reflection intensity. Intensity modulates the strength of the "
"reflection."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:32
-msgid ""
-"Sets the ambient light color to be used when this probe is set to [member "
-"interior_enable]."
-msgstr ""
-
-#: doc/classes/ReflectionProbe.xml:35
-msgid ""
-"Sets the contribution value for how much the reflection affects the ambient "
-"light for this reflection probe when set to [member interior_enable]. Useful "
-"so that ambient light matches the color of the room."
-msgstr ""
-
#: doc/classes/ReflectionProbe.xml:38
-msgid ""
-"Sets the energy multiplier for this reflection probe's ambient light "
-"contribution when set to [member interior_enable]."
+msgid "If [code]true[/code], reflections will ignore sky contribution."
msgstr ""
#: doc/classes/ReflectionProbe.xml:41
msgid ""
-"If [code]true[/code], reflections will ignore sky contribution. Ambient "
-"lighting is then controlled by the [code]interior_ambient_*[/code] "
-"properties."
-msgstr ""
-
-#: doc/classes/ReflectionProbe.xml:44
-msgid ""
"Sets the max distance away from the probe an object can be before it is "
"culled."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:47
+#: doc/classes/ReflectionProbe.xml:44
msgid ""
"Sets the origin offset to be used when this reflection probe is in box "
"project mode."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:50
+#: doc/classes/ReflectionProbe.xml:47
msgid ""
"Sets how frequently the probe is updated. Can be [constant UPDATE_ONCE] or "
"[constant UPDATE_ALWAYS]."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:55
+#: doc/classes/ReflectionProbe.xml:52
msgid ""
"Update the probe once on the next frame. The corresponding radiance map will "
"be generated over the following six frames. This is slower to update than "
"[constant UPDATE_ALWAYS] but can result in higher quality reflections."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:58
+#: doc/classes/ReflectionProbe.xml:55
msgid ""
"Update the probe every frame. This is needed when you want to capture "
"dynamic objects. However, it results in an increased render time. Use "
@@ -41461,10 +42402,10 @@ msgid ""
"read by RegEx as [code]\\d+[/code]. Similarly, [code]compile(\"\\\"(?:\\\\\\"
"\\.|[^\\\"])*\\\"\")[/code] would be read as [code]\"(?:\\\\.|[^\"])*\"[/"
"code].\n"
-"Using [method search] you can find the pattern within the given text. If a "
+"Using [method search], you can find the pattern within the given text. If a "
"pattern is found, [RegExMatch] is returned and you can retrieve details of "
-"the results using functions such as [method RegExMatch.get_string] and "
-"[method RegExMatch.get_start].\n"
+"the results using methods such as [method RegExMatch.get_string] and [method "
+"RegExMatch.get_start].\n"
"[codeblock]\n"
"var regex = RegEx.new()\n"
"regex.compile(\"\\\\w-(\\\\d+)\")\n"
@@ -41473,7 +42414,7 @@ msgid ""
" print(result.get_string()) # Would print n-0123\n"
"[/codeblock]\n"
"The results of capturing groups [code]()[/code] can be retrieved by passing "
-"the group number to the various functions in [RegExMatch]. Group 0 is the "
+"the group number to the various methods in [RegExMatch]. Group 0 is the "
"default and will always refer to the entire pattern. In the above example, "
"calling [code]result.get_string(1)[/code] would give you [code]0123[/code].\n"
"This version of RegEx also supports named capturing groups, and the names "
@@ -41494,6 +42435,15 @@ msgid ""
" print(result.get_string(\"digit\"))\n"
"# Would print 01 03 0 3f 42\n"
"[/codeblock]\n"
+"[b]Example of splitting a string using a RegEx:[/b]\n"
+"[codeblock]\n"
+"var regex = RegEx.new()\n"
+"regex.compile(\"\\\\S+\") # Negated whitespace character class.\n"
+"var results = []\n"
+"for match in regex.search_all(\"One Two \\n\\tThree\"):\n"
+" results.push_back(match.get_string())\n"
+"# The `results` array now contains \"One\", \"Two\", \"Three\".\n"
+"[/codeblock]\n"
"[b]Note:[/b] Godot's regex implementation is based on the [url=https://www."
"pcre.org/]PCRE2[/url] library. You can view the full pattern reference "
"[url=https://www.pcre.org/current/doc/html/pcre2pattern.html]here[/url].\n"
@@ -41501,38 +42451,38 @@ msgid ""
"regular expressions online."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:47
+#: modules/regex/doc_classes/RegEx.xml:56
msgid ""
"This method resets the state of the object, as if it was freshly created. "
"Namely, it unassigns the regular expression of this object."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:56
+#: modules/regex/doc_classes/RegEx.xml:65
msgid ""
"Compiles and assign the search pattern to use. Returns [constant OK] if the "
"compilation is successful. If an error is encountered, details are printed "
"to standard output and an error is returned."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:63
+#: modules/regex/doc_classes/RegEx.xml:72
msgid "Returns the number of capturing groups in compiled pattern."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:70
+#: modules/regex/doc_classes/RegEx.xml:79
msgid ""
"Returns an array of names of named capturing groups in the compiled pattern. "
"They are ordered by appearance."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:77
+#: modules/regex/doc_classes/RegEx.xml:86
msgid "Returns the original search pattern that was compiled."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:84
+#: modules/regex/doc_classes/RegEx.xml:93
msgid "Returns whether this object has a valid search pattern assigned."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:97
+#: modules/regex/doc_classes/RegEx.xml:106
msgid ""
"Searches the text for the compiled pattern. Returns a [RegExMatch] container "
"of the first matching result if found, otherwise [code]null[/code]. The "
@@ -41540,7 +42490,7 @@ msgid ""
"and end anchor would be."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:110
+#: modules/regex/doc_classes/RegEx.xml:119
msgid ""
"Searches the text for the compiled pattern. Returns an array of [RegExMatch] "
"containers for each non-overlapping result. If no results were found, an "
@@ -41548,7 +42498,7 @@ msgid ""
"specified without modifying where the start and end anchor would be."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:127
+#: modules/regex/doc_classes/RegEx.xml:136
msgid ""
"Searches the text for the compiled pattern and replaces it with the "
"specified string. Escapes and backreferences such as [code]$1[/code] and "
@@ -41728,6 +42678,8 @@ msgid ""
"https://docs.godotengine.org/en/latest/tutorials/optimization/using_servers."
"html"
msgstr ""
+"https://docs.godotengine.org/de/latest/tutorials/optimization/using_servers."
+"html"
#: doc/classes/RenderingServer.xml:33
msgid "Sets images to be rendered in the window margin."
@@ -42275,7 +43227,7 @@ msgid ""
msgstr ""
#: doc/classes/RenderingServer.xml:1222 doc/classes/RenderingServer.xml:1250
-#: doc/classes/RenderingServer.xml:1527
+#: doc/classes/RenderingServer.xml:1537
msgid "Not implemented in Godot 3.x."
msgstr ""
@@ -42422,30 +43374,30 @@ msgid ""
"OmniLight3D.omni_shadow_mode]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1481
+#: doc/classes/RenderingServer.xml:1491
msgid ""
"Sets the color of the light. Equivalent to [member Light3D.light_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1492
+#: doc/classes/RenderingServer.xml:1502
msgid ""
"Sets the cull mask for this Light3D. Lights only affect objects in the "
"selected layers. Equivalent to [member Light3D.light_cull_mask]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1503
+#: doc/classes/RenderingServer.xml:1513
msgid ""
"If [code]true[/code], light will subtract light instead of adding light. "
"Equivalent to [member Light3D.light_negative]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1516
+#: doc/classes/RenderingServer.xml:1526
msgid ""
"Sets the specified light parameter. See [enum LightParam] for options. "
"Equivalent to [method Light3D.set_param]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1538
+#: doc/classes/RenderingServer.xml:1548
msgid ""
"If [code]true[/code], reverses the backface culling of the mesh. This can be "
"useful when you have a flat mesh that has a light behind it. If you need to "
@@ -42454,29 +43406,25 @@ msgid ""
"to [member Light3D.shadow_reverse_cull_face]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1549
+#: doc/classes/RenderingServer.xml:1559
msgid ""
"If [code]true[/code], light will cast shadows. Equivalent to [member Light3D."
"shadow_enabled]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1560
+#: doc/classes/RenderingServer.xml:1570
msgid ""
"Sets the color of the shadow cast by the light. Equivalent to [member "
"Light3D.shadow_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1571
-msgid "Sets whether GI probes capture light information from this light."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:1584
+#: doc/classes/RenderingServer.xml:1583
msgid ""
"Returns a mesh of a sphere with the given amount of horizontal and vertical "
"subdivisions."
msgstr ""
-#: doc/classes/RenderingServer.xml:1591
+#: doc/classes/RenderingServer.xml:1590
msgid ""
"Creates an empty material and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42485,31 +43433,31 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:1603
+#: doc/classes/RenderingServer.xml:1602
msgid "Returns the value of a certain material's parameter."
msgstr ""
-#: doc/classes/RenderingServer.xml:1614
+#: doc/classes/RenderingServer.xml:1613
msgid "Sets an object's next material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1627
+#: doc/classes/RenderingServer.xml:1626
msgid "Sets a material's parameter."
msgstr ""
-#: doc/classes/RenderingServer.xml:1638
+#: doc/classes/RenderingServer.xml:1637
msgid "Sets a material's render priority."
msgstr ""
-#: doc/classes/RenderingServer.xml:1649
+#: doc/classes/RenderingServer.xml:1648
msgid "Sets a shader material's shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:1678
+#: doc/classes/RenderingServer.xml:1677
msgid "Removes all surfaces from a mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1685
+#: doc/classes/RenderingServer.xml:1684
msgid ""
"Creates a new mesh and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all [code]mesh_*[/"
@@ -42520,58 +43468,58 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:1696
+#: doc/classes/RenderingServer.xml:1695
msgid "Returns a mesh's blend shape count."
msgstr ""
-#: doc/classes/RenderingServer.xml:1705
+#: doc/classes/RenderingServer.xml:1704
msgid "Returns a mesh's blend shape mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:1714
+#: doc/classes/RenderingServer.xml:1713
msgid "Returns a mesh's custom aabb."
msgstr ""
-#: doc/classes/RenderingServer.xml:1723
+#: doc/classes/RenderingServer.xml:1722
msgid "Returns a mesh's number of surfaces."
msgstr ""
-#: doc/classes/RenderingServer.xml:1734
+#: doc/classes/RenderingServer.xml:1733
msgid "Sets a mesh's blend shape mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:1745
+#: doc/classes/RenderingServer.xml:1744
msgid "Sets a mesh's custom aabb."
msgstr ""
-#: doc/classes/RenderingServer.xml:1756
+#: doc/classes/RenderingServer.xml:1755
msgid "Returns a mesh's surface's buffer arrays."
msgstr ""
-#: doc/classes/RenderingServer.xml:1767
+#: doc/classes/RenderingServer.xml:1766
msgid "Returns a mesh's surface's arrays for blend shapes."
msgstr ""
-#: doc/classes/RenderingServer.xml:1782 doc/classes/RenderingServer.xml:1795
+#: doc/classes/RenderingServer.xml:1781 doc/classes/RenderingServer.xml:1794
msgid "Function is unused in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:1806
+#: doc/classes/RenderingServer.xml:1805
msgid "Returns a mesh's surface's material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1819
+#: doc/classes/RenderingServer.xml:1818
msgid "Sets a mesh's surface's material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1834
+#: doc/classes/RenderingServer.xml:1833
msgid ""
"Updates a specific region of a vertex buffer for the specified surface. "
"Warning: this function alters the vertex buffer directly with no safety "
"mechanisms, you can easily corrupt your mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1857
+#: doc/classes/RenderingServer.xml:1856
msgid ""
"Creates a new multimesh on the RenderingServer and returns an [RID] handle. "
"This RID will be used in all [code]multimesh_*[/code] RenderingServer "
@@ -42582,82 +43530,82 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:1868
+#: doc/classes/RenderingServer.xml:1867
msgid ""
"Calculates and returns the axis-aligned bounding box that encloses all "
"instances within the multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1885
+#: doc/classes/RenderingServer.xml:1884
msgid "Returns the number of instances allocated for this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1894
+#: doc/classes/RenderingServer.xml:1893
msgid ""
"Returns the RID of the mesh that will be used in drawing this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1903
+#: doc/classes/RenderingServer.xml:1902
msgid "Returns the number of visible instances for this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1914
+#: doc/classes/RenderingServer.xml:1913
msgid "Returns the color by which the specified instance will be modulated."
msgstr ""
-#: doc/classes/RenderingServer.xml:1925
+#: doc/classes/RenderingServer.xml:1924
msgid "Returns the custom data associated with the specified instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:1936
+#: doc/classes/RenderingServer.xml:1935
msgid "Returns the [Transform] of the specified instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:1947
+#: doc/classes/RenderingServer.xml:1946
msgid ""
"Returns the [Transform2D] of the specified instance. For use when the "
"multimesh is set to use 2D transforms."
msgstr ""
-#: doc/classes/RenderingServer.xml:1960
+#: doc/classes/RenderingServer.xml:1959
msgid ""
"Sets the color by which this instance will be modulated. Equivalent to "
"[method MultiMesh.set_instance_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1973
+#: doc/classes/RenderingServer.xml:1972
msgid ""
"Sets the custom data for this instance. Custom data is passed as a [Color], "
"but is interpreted as a [code]vec4[/code] in the shader. Equivalent to "
"[method MultiMesh.set_instance_custom_data]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1986
+#: doc/classes/RenderingServer.xml:1985
msgid ""
"Sets the [Transform] for this instance. Equivalent to [method MultiMesh."
"set_instance_transform]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1999
+#: doc/classes/RenderingServer.xml:1998
msgid ""
"Sets the [Transform2D] for this instance. For use when multimesh is used in "
"2D. Equivalent to [method MultiMesh.set_instance_transform_2d]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2020
+#: doc/classes/RenderingServer.xml:2019
msgid ""
"Sets the mesh to be drawn by the multimesh. Equivalent to [member MultiMesh."
"mesh]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2031
+#: doc/classes/RenderingServer.xml:2030
msgid ""
"Sets the number of instances visible at a given time. If -1, all instances "
"that have been allocated are drawn. Equivalent to [member MultiMesh."
"visible_instance_count]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2038
+#: doc/classes/RenderingServer.xml:2037
msgid ""
"Creates a new omni light and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID can be used in most "
@@ -42668,7 +43616,7 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2047
+#: doc/classes/RenderingServer.xml:2046
msgid ""
"Creates a particle system and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42679,23 +43627,23 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2058
+#: doc/classes/RenderingServer.xml:2057
msgid ""
"Calculates and returns the axis-aligned bounding box that contains all the "
"particles. Equivalent to [method GPUParticles3D.capture_aabb]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2067
+#: doc/classes/RenderingServer.xml:2066
msgid "Returns [code]true[/code] if particles are currently set to emitting."
msgstr ""
-#: doc/classes/RenderingServer.xml:2076
+#: doc/classes/RenderingServer.xml:2075
msgid ""
"Returns [code]true[/code] if particles are not emitting and particles are "
"set to inactive."
msgstr ""
-#: doc/classes/RenderingServer.xml:2085
+#: doc/classes/RenderingServer.xml:2084
msgid ""
"Add particle system to list of particle systems that need to be updated. "
"Update will take place on the next frame, or on the next call to [method "
@@ -42703,121 +43651,121 @@ msgid ""
"instances_cull_ray]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2094
+#: doc/classes/RenderingServer.xml:2093
msgid ""
"Reset the particles on the next update. Equivalent to [method GPUParticles3D."
"restart]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2105
+#: doc/classes/RenderingServer.xml:2104
msgid ""
"Sets the number of particles to be drawn and allocates the memory for them. "
"Equivalent to [member GPUParticles3D.amount]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2116
+#: doc/classes/RenderingServer.xml:2115
msgid ""
"Sets a custom axis-aligned bounding box for the particle system. Equivalent "
"to [member GPUParticles3D.visibility_aabb]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2127
+#: doc/classes/RenderingServer.xml:2126
msgid ""
"Sets the draw order of the particles to one of the named enums from [enum "
"ParticlesDrawOrder]. See [enum ParticlesDrawOrder] for options. Equivalent "
"to [member GPUParticles3D.draw_order]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2140
+#: doc/classes/RenderingServer.xml:2139
msgid ""
"Sets the mesh to be used for the specified draw pass. Equivalent to [member "
"GPUParticles3D.draw_pass_1], [member GPUParticles3D.draw_pass_2], [member "
"GPUParticles3D.draw_pass_3], and [member GPUParticles3D.draw_pass_4]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2151
+#: doc/classes/RenderingServer.xml:2150
msgid ""
"Sets the number of draw passes to use. Equivalent to [member GPUParticles3D."
"draw_passes]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2162
+#: doc/classes/RenderingServer.xml:2161
msgid ""
"Sets the [Transform] that will be used by the particles when they first emit."
msgstr ""
-#: doc/classes/RenderingServer.xml:2173
+#: doc/classes/RenderingServer.xml:2172
msgid ""
"If [code]true[/code], particles will emit over time. Setting to false does "
"not reset the particles, but only stops their emission. Equivalent to "
"[member GPUParticles3D.emitting]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2184
+#: doc/classes/RenderingServer.xml:2183
msgid ""
"Sets the explosiveness ratio. Equivalent to [member GPUParticles3D."
"explosiveness]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2195
+#: doc/classes/RenderingServer.xml:2194
msgid ""
"Sets the frame rate that the particle system rendering will be fixed to. "
"Equivalent to [member GPUParticles3D.fixed_fps]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2206
+#: doc/classes/RenderingServer.xml:2205
msgid ""
"If [code]true[/code], uses fractional delta which smooths the movement of "
"the particles. Equivalent to [member GPUParticles3D.fract_delta]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2217
+#: doc/classes/RenderingServer.xml:2216
msgid ""
"Sets the lifetime of each particle in the system. Equivalent to [member "
"GPUParticles3D.lifetime]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2228
+#: doc/classes/RenderingServer.xml:2227
msgid ""
"If [code]true[/code], particles will emit once and then stop. Equivalent to "
"[member GPUParticles3D.one_shot]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2239
+#: doc/classes/RenderingServer.xml:2238
msgid ""
"Sets the preprocess time for the particles animation. This lets you delay "
"starting an animation until after the particles have begun emitting. "
"Equivalent to [member GPUParticles3D.preprocess]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2250
+#: doc/classes/RenderingServer.xml:2249
msgid ""
"Sets the material for processing the particles. Note: this is not the "
"material used to draw the materials. Equivalent to [member GPUParticles3D."
"process_material]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2261
+#: doc/classes/RenderingServer.xml:2260
msgid ""
"Sets the emission randomness ratio. This randomizes the emission of "
"particles within their phase. Equivalent to [member GPUParticles3D."
"randomness]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2272
+#: doc/classes/RenderingServer.xml:2271
msgid ""
"Sets the speed scale of the particle system. Equivalent to [member "
"GPUParticles3D.speed_scale]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2283
+#: doc/classes/RenderingServer.xml:2282
msgid ""
"If [code]true[/code], particles use local coordinates. If [code]false[/code] "
"they use global coordinates. Equivalent to [member GPUParticles3D."
"local_coords]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2290
+#: doc/classes/RenderingServer.xml:2289
msgid ""
"Creates a reflection probe and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42828,85 +43776,64 @@ msgid ""
"[method instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2303
+#: doc/classes/RenderingServer.xml:2332
msgid ""
"If [code]true[/code], reflections will ignore sky contribution. Equivalent "
-"to [member ReflectionProbe.interior_enable]."
+"to [member ReflectionProbe.interior]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2314
+#: doc/classes/RenderingServer.xml:2343
msgid ""
"Sets the render cull mask for this reflection probe. Only instances with a "
"matching cull mask will be rendered by this probe. Equivalent to [member "
"ReflectionProbe.cull_mask]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2325
+#: doc/classes/RenderingServer.xml:2354
msgid ""
"If [code]true[/code], uses box projection. This can make reflections look "
"more correct in certain situations. Equivalent to [member ReflectionProbe."
"box_projection]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2336
+#: doc/classes/RenderingServer.xml:2365
msgid ""
"If [code]true[/code], computes shadows in the reflection probe. This makes "
"the reflection much slower to compute. Equivalent to [member ReflectionProbe."
"enable_shadows]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2347
+#: doc/classes/RenderingServer.xml:2376
msgid ""
"Sets the size of the area that the reflection probe will capture. Equivalent "
"to [member ReflectionProbe.extents]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2358
+#: doc/classes/RenderingServer.xml:2387
msgid ""
"Sets the intensity of the reflection probe. Intensity modulates the strength "
"of the reflection. Equivalent to [member ReflectionProbe.intensity]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2369
-msgid ""
-"Sets the ambient light color for this reflection probe when set to interior "
-"mode. Equivalent to [member ReflectionProbe.interior_ambient_color]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2380
-msgid ""
-"Sets the energy multiplier for this reflection probes ambient light "
-"contribution when set to interior mode. Equivalent to [member "
-"ReflectionProbe.interior_ambient_energy]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2391
-msgid ""
-"Sets the contribution value for how much the reflection affects the ambient "
-"light for this reflection probe when set to interior mode. Useful so that "
-"ambient light matches the color of the room. Equivalent to [member "
-"ReflectionProbe.interior_ambient_contrib]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2402
+#: doc/classes/RenderingServer.xml:2398
msgid ""
"Sets the max distance away from the probe an object can be before it is "
"culled. Equivalent to [member ReflectionProbe.max_distance]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2413
+#: doc/classes/RenderingServer.xml:2409
msgid ""
"Sets the origin offset to be used when this reflection probe is in box "
"project mode. Equivalent to [member ReflectionProbe.origin_offset]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2424
+#: doc/classes/RenderingServer.xml:2420
msgid ""
"Sets how often the reflection probe updates. Can either be once or every "
"frame. See [enum ReflectionProbeUpdateMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2437
+#: doc/classes/RenderingServer.xml:2433
msgid ""
"Schedules a callback to the corresponding named [code]method[/code] on "
"[code]where[/code] after a frame has been drawn.\n"
@@ -42914,7 +43841,7 @@ msgid ""
"[code]userdata[/code]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2445
+#: doc/classes/RenderingServer.xml:2441
msgid ""
"Creates a scenario and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all "
@@ -42924,24 +43851,24 @@ msgid ""
"The scenario is the 3D world that all the visual instances exist in."
msgstr ""
-#: doc/classes/RenderingServer.xml:2458
+#: doc/classes/RenderingServer.xml:2454
msgid ""
"Sets the [enum ScenarioDebugMode] for this scenario. See [enum "
"ScenarioDebugMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2469
+#: doc/classes/RenderingServer.xml:2465
msgid "Sets the environment that will be used with this scenario."
msgstr ""
-#: doc/classes/RenderingServer.xml:2480
+#: doc/classes/RenderingServer.xml:2476
msgid ""
"Sets the fallback environment to be used by this scenario. The fallback "
"environment is used if no environment is set. Internally, this is used by "
"the editor to provide a default environment."
msgstr ""
-#: doc/classes/RenderingServer.xml:2495
+#: doc/classes/RenderingServer.xml:2491
msgid ""
"Sets a boot image. The color defines the background color. If [code]scale[/"
"code] is [code]true[/code], the image will be scaled to fit the screen size. "
@@ -42950,19 +43877,19 @@ msgid ""
"the image will be scaled with nearest-neighbor interpolation."
msgstr ""
-#: doc/classes/RenderingServer.xml:2504
+#: doc/classes/RenderingServer.xml:2500
msgid ""
"If [code]true[/code], the engine will generate wireframes for use with the "
"wireframe debug mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:2513
+#: doc/classes/RenderingServer.xml:2509
msgid ""
"Sets the default clear color which is used when a specific clear color has "
"not been selected."
msgstr ""
-#: doc/classes/RenderingServer.xml:2520
+#: doc/classes/RenderingServer.xml:2516
msgid ""
"Creates an empty shader and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42971,47 +43898,47 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2530
+#: doc/classes/RenderingServer.xml:2526
msgid "Returns a shader's code."
msgstr ""
-#: doc/classes/RenderingServer.xml:2541
+#: doc/classes/RenderingServer.xml:2537
msgid "Returns a default texture from a shader searched by name."
msgstr ""
-#: doc/classes/RenderingServer.xml:2560
+#: doc/classes/RenderingServer.xml:2556
msgid "Returns the parameters of a shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:2571
+#: doc/classes/RenderingServer.xml:2567
msgid "Sets a shader's code."
msgstr ""
-#: doc/classes/RenderingServer.xml:2584
+#: doc/classes/RenderingServer.xml:2580
msgid "Sets a shader's default texture. Overwrites the texture given by name."
msgstr ""
-#: doc/classes/RenderingServer.xml:2597
+#: doc/classes/RenderingServer.xml:2593
msgid "Allocates the GPU buffers for this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2608
+#: doc/classes/RenderingServer.xml:2604
msgid "Returns the [Transform] set for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2619
+#: doc/classes/RenderingServer.xml:2615
msgid "Returns the [Transform2D] set for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2632
+#: doc/classes/RenderingServer.xml:2628
msgid "Sets the [Transform] for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2645
+#: doc/classes/RenderingServer.xml:2641
msgid "Sets the [Transform2D] for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2652
+#: doc/classes/RenderingServer.xml:2648
msgid ""
"Creates a skeleton and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all "
@@ -43020,11 +43947,11 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2662
+#: doc/classes/RenderingServer.xml:2658
msgid "Returns the number of bones allocated for this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2669
+#: doc/classes/RenderingServer.xml:2665
msgid ""
"Creates an empty sky and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all [code]sky_*[/"
@@ -43033,13 +43960,13 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2681
+#: doc/classes/RenderingServer.xml:2677
msgid ""
"Sets the material that the sky uses to render the background and reflection "
"maps."
msgstr ""
-#: doc/classes/RenderingServer.xml:2688
+#: doc/classes/RenderingServer.xml:2684
msgid ""
"Creates a spot light and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID can be used in most [code]light_*[/"
@@ -43050,15 +43977,15 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2717
+#: doc/classes/RenderingServer.xml:2713
msgid "Sets a viewport's camera."
msgstr ""
-#: doc/classes/RenderingServer.xml:2728
+#: doc/classes/RenderingServer.xml:2724
msgid "Sets a viewport's canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:2741
+#: doc/classes/RenderingServer.xml:2737
msgid ""
"Copies the viewport to a region of the screen specified by [code]rect[/"
"code]. If [method viewport_set_render_direct_to_screen] is [code]true[/"
@@ -43080,7 +44007,7 @@ msgid ""
"viewport_set_render_direct_to_screen]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2755
+#: doc/classes/RenderingServer.xml:2751
msgid ""
"Creates an empty viewport and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -43089,72 +44016,72 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2767
+#: doc/classes/RenderingServer.xml:2763
msgid ""
"Returns a viewport's render information. For options, see the [enum "
"ViewportRenderInfo] constants."
msgstr ""
-#: doc/classes/RenderingServer.xml:2776
+#: doc/classes/RenderingServer.xml:2772
msgid "Returns the viewport's last rendered frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:2787
+#: doc/classes/RenderingServer.xml:2783
msgid "Detaches a viewport from a canvas and vice versa."
msgstr ""
-#: doc/classes/RenderingServer.xml:2798
+#: doc/classes/RenderingServer.xml:2794
msgid "If [code]true[/code], sets the viewport active, else sets it inactive."
msgstr ""
-#: doc/classes/RenderingServer.xml:2813
+#: doc/classes/RenderingServer.xml:2809
msgid ""
"Sets the stacking order for a viewport's canvas.\n"
"[code]layer[/code] is the actual canvas layer, while [code]sublayer[/code] "
"specifies the stacking order of the canvas among those in the same layer."
msgstr ""
-#: doc/classes/RenderingServer.xml:2827
+#: doc/classes/RenderingServer.xml:2823
msgid "Sets the transformation of a viewport's canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:2838
+#: doc/classes/RenderingServer.xml:2834
msgid ""
"Sets the clear mode of a viewport. See [enum ViewportClearMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2849
+#: doc/classes/RenderingServer.xml:2845
msgid ""
"Sets the debug draw mode of a viewport. See [enum ViewportDebugDraw] for "
"options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2860
+#: doc/classes/RenderingServer.xml:2856
msgid ""
"If [code]true[/code], rendering of a viewport's environment is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:2871
+#: doc/classes/RenderingServer.xml:2867
msgid "Sets the viewport's global transformation matrix."
msgstr ""
-#: doc/classes/RenderingServer.xml:2882
+#: doc/classes/RenderingServer.xml:2878
msgid "If [code]true[/code], the viewport's canvas is not rendered."
msgstr ""
-#: doc/classes/RenderingServer.xml:2893
+#: doc/classes/RenderingServer.xml:2889
msgid "Currently unimplemented in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:2904
+#: doc/classes/RenderingServer.xml:2900
msgid "Sets the anti-aliasing mode. See [enum ViewportMSAA] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2915
+#: doc/classes/RenderingServer.xml:2911
msgid "Sets the viewport's parent to another viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:2926
+#: doc/classes/RenderingServer.xml:2922
msgid ""
"If [code]true[/code], render the contents of the viewport directly to "
"screen. This allows a low-level optimization where you can skip drawing a "
@@ -43170,455 +44097,455 @@ msgid ""
"significantly larger than the window size."
msgstr ""
-#: doc/classes/RenderingServer.xml:2937
+#: doc/classes/RenderingServer.xml:2933
msgid ""
"Sets a viewport's scenario.\n"
"The scenario contains information about the [enum ScenarioDebugMode], "
"environment information, reflection atlas etc."
msgstr ""
-#: doc/classes/RenderingServer.xml:2951
+#: doc/classes/RenderingServer.xml:2947
msgid "Sets the shadow atlas quadrant's subdivision."
msgstr ""
-#: doc/classes/RenderingServer.xml:2962
+#: doc/classes/RenderingServer.xml:2958
msgid ""
"Sets the size of the shadow atlas's images (used for omni and spot lights). "
"The value will be rounded up to the nearest power of 2."
msgstr ""
-#: doc/classes/RenderingServer.xml:2975
+#: doc/classes/RenderingServer.xml:2971
msgid "Sets the viewport's width and height."
msgstr ""
-#: doc/classes/RenderingServer.xml:2986
+#: doc/classes/RenderingServer.xml:2982
msgid ""
"If [code]true[/code], the viewport renders its background as transparent."
msgstr ""
-#: doc/classes/RenderingServer.xml:2997
+#: doc/classes/RenderingServer.xml:2993
msgid ""
"Sets when the viewport should be updated. See [enum ViewportUpdateMode] "
"constants for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:3008
+#: doc/classes/RenderingServer.xml:3004
msgid ""
"If [code]true[/code], the viewport uses augmented or virtual reality "
"technologies. See [XRInterface]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3014
+#: doc/classes/RenderingServer.xml:3010
msgid ""
"If [code]false[/code], disables rendering completely, but the engine logic "
"is still being processed. You can call [method force_draw] to draw a frame "
"even with rendering disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3020
+#: doc/classes/RenderingServer.xml:3016
msgid ""
"Emitted at the end of the frame, after the RenderingServer has finished "
"updating all the Viewports."
msgstr ""
-#: doc/classes/RenderingServer.xml:3025
+#: doc/classes/RenderingServer.xml:3021
msgid ""
"Emitted at the beginning of the frame, before the RenderingServer updates "
"all the Viewports."
msgstr ""
-#: doc/classes/RenderingServer.xml:3031
+#: doc/classes/RenderingServer.xml:3027
msgid "Marks an error that shows that the index array is empty."
msgstr ""
-#: doc/classes/RenderingServer.xml:3034
+#: doc/classes/RenderingServer.xml:3030
msgid "Number of weights/bones per vertex."
msgstr ""
-#: doc/classes/RenderingServer.xml:3037
+#: doc/classes/RenderingServer.xml:3033
msgid "The minimum Z-layer for canvas items."
msgstr ""
-#: doc/classes/RenderingServer.xml:3040
+#: doc/classes/RenderingServer.xml:3036
msgid "The maximum Z-layer for canvas items."
msgstr ""
-#: doc/classes/RenderingServer.xml:3043
+#: doc/classes/RenderingServer.xml:3039
msgid ""
"Max number of glow levels that can be used with glow post-process effect."
msgstr ""
-#: doc/classes/RenderingServer.xml:3046
+#: doc/classes/RenderingServer.xml:3042
msgid "Unused enum in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:3067
+#: doc/classes/RenderingServer.xml:3063
msgid "Shader is a 3D shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3070
+#: doc/classes/RenderingServer.xml:3066
msgid "Shader is a 2D shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3073
+#: doc/classes/RenderingServer.xml:3069
msgid "Shader is a particle shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3076
+#: doc/classes/RenderingServer.xml:3072
msgid "Shader is a sky shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3079
+#: doc/classes/RenderingServer.xml:3075
msgid "Represents the size of the [enum ShaderMode] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3082
+#: doc/classes/RenderingServer.xml:3078
msgid "The minimum renderpriority of all materials."
msgstr ""
-#: doc/classes/RenderingServer.xml:3085
+#: doc/classes/RenderingServer.xml:3081
msgid "The maximum renderpriority of all materials."
msgstr ""
-#: doc/classes/RenderingServer.xml:3088
+#: doc/classes/RenderingServer.xml:3084
msgid "Array is a vertex array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3091
+#: doc/classes/RenderingServer.xml:3087
msgid "Array is a normal array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3094
+#: doc/classes/RenderingServer.xml:3090
msgid "Array is a tangent array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3097
+#: doc/classes/RenderingServer.xml:3093
msgid "Array is a color array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3100
+#: doc/classes/RenderingServer.xml:3096
msgid "Array is an UV coordinates array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3103
+#: doc/classes/RenderingServer.xml:3099
msgid "Array is an UV coordinates array for the second UV coordinates."
msgstr ""
-#: doc/classes/RenderingServer.xml:3106
+#: doc/classes/RenderingServer.xml:3102
msgid "Array contains bone information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3109
+#: doc/classes/RenderingServer.xml:3105
msgid "Array is weight information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3112
+#: doc/classes/RenderingServer.xml:3108
msgid "Array is index array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3118
+#: doc/classes/RenderingServer.xml:3114
msgid "Flag used to mark a vertex array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3121
+#: doc/classes/RenderingServer.xml:3117
msgid "Flag used to mark a normal array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3124
+#: doc/classes/RenderingServer.xml:3120
msgid "Flag used to mark a tangent array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3127
+#: doc/classes/RenderingServer.xml:3123
msgid "Flag used to mark a color array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3130
+#: doc/classes/RenderingServer.xml:3126
msgid "Flag used to mark an UV coordinates array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3133
+#: doc/classes/RenderingServer.xml:3129
msgid ""
"Flag used to mark an UV coordinates array for the second UV coordinates."
msgstr ""
-#: doc/classes/RenderingServer.xml:3136
+#: doc/classes/RenderingServer.xml:3132
msgid "Flag used to mark a bone information array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3139
+#: doc/classes/RenderingServer.xml:3135
msgid "Flag used to mark a weights array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3142
+#: doc/classes/RenderingServer.xml:3138
msgid "Flag used to mark an index array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3171
+#: doc/classes/RenderingServer.xml:3167
msgid "Primitive to draw consists of points."
msgstr ""
-#: doc/classes/RenderingServer.xml:3174
+#: doc/classes/RenderingServer.xml:3170
msgid "Primitive to draw consists of lines."
msgstr ""
-#: doc/classes/RenderingServer.xml:3177
+#: doc/classes/RenderingServer.xml:3173
msgid "Primitive to draw consists of a line strip from start to end."
msgstr ""
-#: doc/classes/RenderingServer.xml:3180
+#: doc/classes/RenderingServer.xml:3176
msgid "Primitive to draw consists of triangles."
msgstr ""
-#: doc/classes/RenderingServer.xml:3183
+#: doc/classes/RenderingServer.xml:3179
msgid ""
"Primitive to draw consists of a triangle strip (the last 3 vertices are "
"always combined to make a triangle)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3186
+#: doc/classes/RenderingServer.xml:3182
msgid "Represents the size of the [enum PrimitiveType] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3195
+#: doc/classes/RenderingServer.xml:3191
msgid "Use [Transform2D] to store MultiMesh transform."
msgstr ""
-#: doc/classes/RenderingServer.xml:3198
+#: doc/classes/RenderingServer.xml:3194
msgid "Use [Transform] to store MultiMesh transform."
msgstr ""
-#: doc/classes/RenderingServer.xml:3201
+#: doc/classes/RenderingServer.xml:3197
msgid "Is a directional (sun) light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3204
+#: doc/classes/RenderingServer.xml:3200
msgid "Is an omni light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3207
+#: doc/classes/RenderingServer.xml:3203
msgid "Is a spot light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3210
+#: doc/classes/RenderingServer.xml:3206
msgid "The light's energy."
msgstr ""
-#: doc/classes/RenderingServer.xml:3215
+#: doc/classes/RenderingServer.xml:3211
msgid "The light's influence on specularity."
msgstr ""
-#: doc/classes/RenderingServer.xml:3218
+#: doc/classes/RenderingServer.xml:3214
msgid "The light's range."
msgstr ""
-#: doc/classes/RenderingServer.xml:3221
+#: doc/classes/RenderingServer.xml:3217
msgid ""
"The size of the light when using spot light or omni light. The angular size "
"of the light when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3224
+#: doc/classes/RenderingServer.xml:3220
msgid "The light's attenuation."
msgstr ""
-#: doc/classes/RenderingServer.xml:3227
+#: doc/classes/RenderingServer.xml:3223
msgid "The spotlight's angle."
msgstr ""
-#: doc/classes/RenderingServer.xml:3230
+#: doc/classes/RenderingServer.xml:3226
msgid "The spotlight's attenuation."
msgstr ""
-#: doc/classes/RenderingServer.xml:3233
+#: doc/classes/RenderingServer.xml:3229
msgid "Max distance that shadows will be rendered."
msgstr ""
-#: doc/classes/RenderingServer.xml:3236
+#: doc/classes/RenderingServer.xml:3232
msgid "Proportion of shadow atlas occupied by the first split."
msgstr ""
-#: doc/classes/RenderingServer.xml:3239
+#: doc/classes/RenderingServer.xml:3235
msgid "Proportion of shadow atlas occupied by the second split."
msgstr ""
-#: doc/classes/RenderingServer.xml:3242
+#: doc/classes/RenderingServer.xml:3238
msgid ""
"Proportion of shadow atlas occupied by the third split. The fourth split "
"occupies the rest."
msgstr ""
-#: doc/classes/RenderingServer.xml:3245
+#: doc/classes/RenderingServer.xml:3241
msgid ""
"Proportion of shadow max distance where the shadow will start to fade out."
msgstr ""
-#: doc/classes/RenderingServer.xml:3248
+#: doc/classes/RenderingServer.xml:3244
msgid ""
"Normal bias used to offset shadow lookup by object normal. Can be used to "
"fix self-shadowing artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3251
+#: doc/classes/RenderingServer.xml:3247
msgid "Bias the shadow lookup to fix self-shadowing artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3257
+#: doc/classes/RenderingServer.xml:3253
msgid ""
"Blurs the edges of the shadow. Can be used to hide pixel artifacts in low "
"resolution shadow maps. A high value can make shadows appear grainy and can "
"cause other unwanted artifacts. Try to keep as near default as possible."
msgstr ""
-#: doc/classes/RenderingServer.xml:3262
+#: doc/classes/RenderingServer.xml:3258
msgid "Represents the size of the [enum LightParam] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3265
+#: doc/classes/RenderingServer.xml:3267
msgid "Use a dual paraboloid shadow map for omni lights."
msgstr ""
-#: doc/classes/RenderingServer.xml:3268
+#: doc/classes/RenderingServer.xml:3270
msgid ""
"Use a cubemap shadow map for omni lights. Slower but better quality than "
"dual paraboloid."
msgstr ""
-#: doc/classes/RenderingServer.xml:3271
+#: doc/classes/RenderingServer.xml:3273
msgid "Use orthogonal shadow projection for directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3274
+#: doc/classes/RenderingServer.xml:3276
msgid "Use 2 splits for shadow projection when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3277
+#: doc/classes/RenderingServer.xml:3279
msgid "Use 4 splits for shadow projection when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3280
+#: doc/classes/RenderingServer.xml:3282
msgid ""
"Keeps shadows stable as camera moves but has lower effective resolution."
msgstr ""
-#: doc/classes/RenderingServer.xml:3283
+#: doc/classes/RenderingServer.xml:3285
msgid ""
"Optimize use of shadow maps, increasing the effective resolution. But may "
"result in shadows moving or flickering slightly."
msgstr ""
-#: doc/classes/RenderingServer.xml:3286
+#: doc/classes/RenderingServer.xml:3288
msgid "Reflection probe will update reflections once and then stop."
msgstr ""
-#: doc/classes/RenderingServer.xml:3289
+#: doc/classes/RenderingServer.xml:3291
msgid ""
"Reflection probe will update each frame. This mode is necessary to capture "
"moving objects."
msgstr ""
-#: doc/classes/RenderingServer.xml:3302
+#: doc/classes/RenderingServer.xml:3310
msgid "Draw particles in the order that they appear in the particles array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3305
+#: doc/classes/RenderingServer.xml:3313
msgid "Sort particles based on their lifetime."
msgstr ""
-#: doc/classes/RenderingServer.xml:3308
+#: doc/classes/RenderingServer.xml:3316
msgid "Sort particles based on their distance to the camera."
msgstr ""
-#: doc/classes/RenderingServer.xml:3311
+#: doc/classes/RenderingServer.xml:3319
msgid "Do not update the viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:3314
+#: doc/classes/RenderingServer.xml:3322
msgid "Update the viewport once then set to disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3317
+#: doc/classes/RenderingServer.xml:3325
msgid "Update the viewport whenever it is visible."
msgstr ""
-#: doc/classes/RenderingServer.xml:3322
+#: doc/classes/RenderingServer.xml:3330
msgid "Always update the viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:3325
+#: doc/classes/RenderingServer.xml:3333
msgid "The viewport is always cleared before drawing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3328
+#: doc/classes/RenderingServer.xml:3336
msgid "The viewport is never cleared before drawing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3331
+#: doc/classes/RenderingServer.xml:3339
msgid ""
"The viewport is cleared once, then the clear mode is set to [constant "
"VIEWPORT_CLEAR_NEVER]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3334
+#: doc/classes/RenderingServer.xml:3342
msgid "Multisample antialiasing is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3337
+#: doc/classes/RenderingServer.xml:3345
msgid "Multisample antialiasing uses 2 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3340
+#: doc/classes/RenderingServer.xml:3348
msgid "Multisample antialiasing uses 4 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3343
+#: doc/classes/RenderingServer.xml:3351
msgid "Multisample antialiasing uses 8 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3346
+#: doc/classes/RenderingServer.xml:3354
msgid "Multisample antialiasing uses 16 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3357
+#: doc/classes/RenderingServer.xml:3365
msgid "Number of objects drawn in a single frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3360
+#: doc/classes/RenderingServer.xml:3368
msgid "Number of vertices drawn in a single frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3363
+#: doc/classes/RenderingServer.xml:3371
msgid "Number of material changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3366
+#: doc/classes/RenderingServer.xml:3374
msgid "Number of shader changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3369
+#: doc/classes/RenderingServer.xml:3377
msgid "Number of surface changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3372
+#: doc/classes/RenderingServer.xml:3380
msgid "Number of draw calls during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3375
+#: doc/classes/RenderingServer.xml:3383
msgid "Represents the size of the [enum ViewportRenderInfo] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3378
+#: doc/classes/RenderingServer.xml:3386
msgid "Debug draw is disabled. Default setting."
msgstr ""
-#: doc/classes/RenderingServer.xml:3381 doc/classes/Viewport.xml:348
+#: doc/classes/RenderingServer.xml:3389 doc/classes/Viewport.xml:348
msgid "Objects are displayed without light information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3384
+#: doc/classes/RenderingServer.xml:3392
msgid "Objects are displayed with only light information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3387 doc/classes/Viewport.xml:353
+#: doc/classes/RenderingServer.xml:3395 doc/classes/Viewport.xml:353
msgid ""
"Objects are displayed semi-transparent with additive blending so you can see "
"where they are drawing over top of one another. A higher overdraw means you "
@@ -43626,41 +44553,41 @@ msgid ""
"others."
msgstr ""
-#: doc/classes/RenderingServer.xml:3390
+#: doc/classes/RenderingServer.xml:3398
msgid "Debug draw draws objects in wireframe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3393
+#: doc/classes/RenderingServer.xml:3401
msgid ""
"Normal buffer is drawn instead of regular scene so you can see the per-pixel "
"normals that will be used by post-processing effects."
msgstr ""
-#: doc/classes/RenderingServer.xml:3396 doc/classes/Viewport.xml:361
+#: doc/classes/RenderingServer.xml:3404 doc/classes/Viewport.xml:361
msgid "Objects are displayed with only the albedo value from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3399 doc/classes/Viewport.xml:364
+#: doc/classes/RenderingServer.xml:3407 doc/classes/Viewport.xml:364
msgid "Objects are displayed with only the lighting value from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3402 doc/classes/Viewport.xml:367
+#: doc/classes/RenderingServer.xml:3410 doc/classes/Viewport.xml:367
msgid "Objects are displayed with only the emission color from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3405 doc/classes/Viewport.xml:370
+#: doc/classes/RenderingServer.xml:3413 doc/classes/Viewport.xml:370
msgid ""
"Draws the shadow atlas that stores shadows from [OmniLight3D]s and "
"[SpotLight3D]s in the upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3408 doc/classes/Viewport.xml:373
+#: doc/classes/RenderingServer.xml:3416 doc/classes/Viewport.xml:373
msgid ""
"Draws the shadow atlas that stores shadows from [DirectionalLight3D]s in the "
"upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3413
+#: doc/classes/RenderingServer.xml:3421
msgid ""
"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 "
@@ -43668,21 +44595,14 @@ msgid ""
"your [WorldEnvironment]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3416 doc/classes/Viewport.xml:381
-msgid ""
-"Draws the roughness limiter post process over the Viewport so you can see "
-"where it has an effect. It must be enabled in [member ProjectSettings."
-"rendering/quality/screen_filters/screen_space_roughness_limiter] to work."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:3419
+#: doc/classes/RenderingServer.xml:3424
msgid ""
"Colors each PSSM split for the [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."
msgstr ""
-#: doc/classes/RenderingServer.xml:3424
+#: doc/classes/RenderingServer.xml:3435
msgid ""
"Uses high quality importance sampling to process the radiance map. In "
"general, this results in much higher quality than [constant Sky."
@@ -43693,7 +44613,7 @@ msgid ""
"ggx_samples]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3427
+#: doc/classes/RenderingServer.xml:3438
msgid ""
"Uses the fast filtering algorithm to process the radiance map. In general "
"this results in lower quality, but substantially faster run times.\n"
@@ -43701,347 +44621,347 @@ msgid ""
"[member Sky.radiance_size] must be set to [constant Sky.RADIANCE_SIZE_256]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3431
+#: doc/classes/RenderingServer.xml:3442
msgid "Use the clear color as background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3434
+#: doc/classes/RenderingServer.xml:3445
msgid "Use a specified color as the background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3437
+#: doc/classes/RenderingServer.xml:3448
msgid "Use a sky resource for the background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3440
+#: doc/classes/RenderingServer.xml:3451
msgid ""
"Use a specified canvas layer as the background. This can be useful for "
"instantiating a 2D scene in a 3D world."
msgstr ""
-#: doc/classes/RenderingServer.xml:3443
+#: doc/classes/RenderingServer.xml:3454
msgid ""
"Do not clear the background, use whatever was rendered last frame as the "
"background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3449
+#: doc/classes/RenderingServer.xml:3460
msgid "Represents the size of the [enum EnvironmentBG] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3488
+#: doc/classes/RenderingServer.xml:3499
msgid "Output color as they came in."
msgstr ""
-#: doc/classes/RenderingServer.xml:3491
+#: doc/classes/RenderingServer.xml:3502
msgid "Use the Reinhard tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3494
+#: doc/classes/RenderingServer.xml:3505
msgid "Use the filmic tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3497
+#: doc/classes/RenderingServer.xml:3508
msgid "Use the ACES tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3508
+#: doc/classes/RenderingServer.xml:3519
msgid "Disables the blur set for SSAO. Will make SSAO look noisier."
msgstr ""
-#: doc/classes/RenderingServer.xml:3511
+#: doc/classes/RenderingServer.xml:3522
msgid "Perform a 1x1 blur on the SSAO output."
msgstr ""
-#: doc/classes/RenderingServer.xml:3514
+#: doc/classes/RenderingServer.xml:3525
msgid "Performs a 2x2 blur on the SSAO output."
msgstr ""
-#: doc/classes/RenderingServer.xml:3517
+#: doc/classes/RenderingServer.xml:3528
msgid "Performs a 3x3 blur on the SSAO output. Use this for smoothest SSAO."
msgstr ""
-#: doc/classes/RenderingServer.xml:3520
+#: doc/classes/RenderingServer.xml:3531
msgid "Lowest quality of screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3523
+#: doc/classes/RenderingServer.xml:3534
msgid "Medium quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3526
+#: doc/classes/RenderingServer.xml:3537
msgid "High quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3529
+#: doc/classes/RenderingServer.xml:3540
msgid "Highest quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3540
+#: doc/classes/RenderingServer.xml:3551
msgid ""
"Lowest quality DOF blur. This is the fastest setting, but you may be able to "
"see filtering artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3543
+#: doc/classes/RenderingServer.xml:3554
msgid "Low quality DOF blur."
msgstr ""
-#: doc/classes/RenderingServer.xml:3546
+#: doc/classes/RenderingServer.xml:3557
msgid "Medium quality DOF blur."
msgstr ""
-#: doc/classes/RenderingServer.xml:3549
+#: doc/classes/RenderingServer.xml:3560
msgid ""
"Highest quality DOF blur. Results in the smoothest looking blur by taking "
"the most samples, but is also significantly slower."
msgstr ""
-#: doc/classes/RenderingServer.xml:3552
+#: doc/classes/RenderingServer.xml:3563
msgid ""
"Calculate the DOF blur using a box filter. The fastest option, but results "
"in obvious lines in blur pattern."
msgstr ""
-#: doc/classes/RenderingServer.xml:3555
+#: doc/classes/RenderingServer.xml:3566
msgid "Calculates DOF blur using a hexagon shaped filter."
msgstr ""
-#: doc/classes/RenderingServer.xml:3558
+#: doc/classes/RenderingServer.xml:3569
msgid ""
"Calculates DOF blur using a circle shaped filter. Best quality and most "
"realistic, but slowest. Use only for areas where a lot of performance can be "
"dedicated to post-processing (e.g. cutscenes)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3573
+#: doc/classes/RenderingServer.xml:3584
msgid "Do not use a debug mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:3576
+#: doc/classes/RenderingServer.xml:3587
msgid "Draw all objects as wireframe models."
msgstr ""
-#: doc/classes/RenderingServer.xml:3579
+#: doc/classes/RenderingServer.xml:3590
msgid ""
"Draw all objects in a way that displays how much overdraw is occurring. "
"Overdraw occurs when a section of pixels is drawn and shaded and then "
"another object covers it up. To optimize a scene, you should reduce overdraw."
msgstr ""
-#: doc/classes/RenderingServer.xml:3582
+#: doc/classes/RenderingServer.xml:3593
msgid ""
"Draw all objects without shading. Equivalent to setting all objects shaders "
"to [code]unshaded[/code]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3585
+#: doc/classes/RenderingServer.xml:3596
msgid "The instance does not have a type."
msgstr ""
-#: doc/classes/RenderingServer.xml:3588
+#: doc/classes/RenderingServer.xml:3599
msgid "The instance is a mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:3591
+#: doc/classes/RenderingServer.xml:3602
msgid "The instance is a multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:3594
+#: doc/classes/RenderingServer.xml:3605
msgid "The instance is an immediate geometry."
msgstr ""
-#: doc/classes/RenderingServer.xml:3597
+#: doc/classes/RenderingServer.xml:3608
msgid "The instance is a particle emitter."
msgstr ""
-#: doc/classes/RenderingServer.xml:3600
+#: doc/classes/RenderingServer.xml:3611
msgid "The instance is a light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3603
+#: doc/classes/RenderingServer.xml:3614
msgid "The instance is a reflection probe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3606
+#: doc/classes/RenderingServer.xml:3617
msgid "The instance is a decal."
msgstr ""
-#: doc/classes/RenderingServer.xml:3609
+#: doc/classes/RenderingServer.xml:3620
msgid "The instance is a GI probe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3612
+#: doc/classes/RenderingServer.xml:3623
msgid "The instance is a lightmap."
msgstr ""
-#: doc/classes/RenderingServer.xml:3615
+#: doc/classes/RenderingServer.xml:3626
msgid "Represents the size of the [enum InstanceType] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3618
+#: doc/classes/RenderingServer.xml:3629
msgid ""
"A combination of the flags of geometry instances (mesh, multimesh, immediate "
"and particles)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3621
+#: doc/classes/RenderingServer.xml:3632
msgid "Allows the instance to be used in baked lighting."
msgstr ""
-#: doc/classes/RenderingServer.xml:3624
+#: doc/classes/RenderingServer.xml:3635
msgid "Allows the instance to be used with dynamic global illumination."
msgstr ""
-#: doc/classes/RenderingServer.xml:3627
+#: doc/classes/RenderingServer.xml:3638
msgid "When set, manually requests to draw geometry on next frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3630
+#: doc/classes/RenderingServer.xml:3641
msgid "Represents the size of the [enum InstanceFlags] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3633
+#: doc/classes/RenderingServer.xml:3644
msgid "Disable shadows from this instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:3636
+#: doc/classes/RenderingServer.xml:3647
msgid "Cast shadows from this instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:3639
+#: doc/classes/RenderingServer.xml:3650
msgid ""
"Disable backface culling when rendering the shadow of the object. This is "
"slightly slower but may result in more correct shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3642
+#: doc/classes/RenderingServer.xml:3653
msgid ""
"Only render the shadows from the object. The object itself will not be drawn."
msgstr ""
-#: doc/classes/RenderingServer.xml:3645
+#: doc/classes/RenderingServer.xml:3656
msgid "The nine patch gets stretched where needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3648
+#: doc/classes/RenderingServer.xml:3659
msgid "The nine patch gets filled with tiles where needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3651
+#: doc/classes/RenderingServer.xml:3662
msgid ""
"The nine patch gets filled with tiles where needed and stretches them a bit "
"if needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3654
+#: doc/classes/RenderingServer.xml:3665
msgid "Uses the default filter mode for this [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3666 doc/classes/Viewport.xml:399
+#: doc/classes/RenderingServer.xml:3677 doc/classes/Viewport.xml:402
msgid ""
"The texture filter blends between the nearest 4 pixels and between the "
"nearest 2 mipmaps."
msgstr ""
-#: doc/classes/RenderingServer.xml:3675
+#: doc/classes/RenderingServer.xml:3686
msgid "Max value for [enum CanvasItemTextureFilter] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3678
+#: doc/classes/RenderingServer.xml:3689
msgid "Uses the default repeat mode for this [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3681 doc/classes/Viewport.xml:405
+#: doc/classes/RenderingServer.xml:3692 doc/classes/Viewport.xml:408
msgid ""
"Disables textures repeating. Instead, when reading UVs outside the 0-1 "
"range, the value will be clamped to the edge of the texture, resulting in a "
"stretched out look at the borders of the texture."
msgstr ""
-#: doc/classes/RenderingServer.xml:3687 doc/classes/Viewport.xml:411
+#: doc/classes/RenderingServer.xml:3698 doc/classes/Viewport.xml:414
msgid ""
"Flip the texture when repeating so that the edge lines up instead of "
"abruptly changing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3690
+#: doc/classes/RenderingServer.xml:3701
msgid "Max value for [enum CanvasItemTextureRepeat] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3693
+#: doc/classes/RenderingServer.xml:3704
msgid "Adds light color additive to the canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:3696
+#: doc/classes/RenderingServer.xml:3707
msgid "Adds light color subtractive to the canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:3699
+#: doc/classes/RenderingServer.xml:3710
msgid "The light adds color depending on transparency."
msgstr ""
-#: doc/classes/RenderingServer.xml:3702
+#: doc/classes/RenderingServer.xml:3713
msgid "The light adds color depending on mask."
msgstr ""
-#: doc/classes/RenderingServer.xml:3705
+#: doc/classes/RenderingServer.xml:3716
msgid "Do not apply a filter to canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3708
+#: doc/classes/RenderingServer.xml:3719
msgid "Use PCF5 filtering to filter canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3711
+#: doc/classes/RenderingServer.xml:3722
msgid "Use PCF13 filtering to filter canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3714
+#: doc/classes/RenderingServer.xml:3725
msgid "Max value of the [enum CanvasLightShadowFilter] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3717
+#: doc/classes/RenderingServer.xml:3728
msgid "Culling of the canvas occluder is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3720
+#: doc/classes/RenderingServer.xml:3731
msgid "Culling of the canvas occluder is clockwise."
msgstr ""
-#: doc/classes/RenderingServer.xml:3723
+#: doc/classes/RenderingServer.xml:3734
msgid "Culling of the canvas occluder is counterclockwise."
msgstr ""
-#: doc/classes/RenderingServer.xml:3784
+#: doc/classes/RenderingServer.xml:3795
msgid "The amount of objects in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3787
+#: doc/classes/RenderingServer.xml:3798
msgid "The amount of vertices in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3790
+#: doc/classes/RenderingServer.xml:3801
msgid "The amount of modified materials in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3793
+#: doc/classes/RenderingServer.xml:3804
msgid "The amount of shader rebinds in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3796
+#: doc/classes/RenderingServer.xml:3807
msgid "The amount of surface changes in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3799
+#: doc/classes/RenderingServer.xml:3810
msgid "The amount of draw calls in frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3814
+#: doc/classes/RenderingServer.xml:3825
msgid "Hardware supports shaders. This enum is currently unused in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:3817
+#: doc/classes/RenderingServer.xml:3828
msgid ""
"Hardware supports multithreading. This enum is currently unused in Godot 3.x."
msgstr ""
@@ -44053,13 +44973,13 @@ msgstr ""
#: doc/classes/Resource.xml:7
msgid ""
"Resource is the base class for all Godot-specific resource types, serving "
-"primarily as data containers. They are reference counted and freed when no "
-"longer in use. They are also cached once loaded from disk, so that any "
-"further attempts to load a resource from a given path will return the same "
-"reference (all this in contrast to a [Node], which is not reference counted "
-"and can be instanced from disk as many times as desired). Resources can be "
-"saved externally on disk or bundled into another object, such as a [Node] or "
-"another resource."
+"primarily as data containers. Unlike [Object]s, they are reference-counted "
+"and freed when no longer in use. They are also cached once loaded from disk, "
+"so that any further attempts to load a resource from a given path will "
+"return the same reference (all this in contrast to a [Node], which is not "
+"reference-counted and can be instanced from disk as many times as desired). "
+"Resources can be saved externally on disk or bundled into another object, "
+"such as a [Node] or another resource."
msgstr ""
#: doc/classes/Resource.xml:10
@@ -44067,35 +44987,41 @@ msgid ""
"https://docs.godotengine.org/en/latest/getting_started/step_by_step/"
"resources.html"
msgstr ""
+"https://docs.godotengine.org/de/latest/getting_started/step_by_step/"
+"resources.html"
-#: doc/classes/Resource.xml:17
+#: doc/classes/Resource.xml:18
msgid ""
"Virtual function which can be overridden to customize the behavior value of "
"[method setup_local_to_scene]."
msgstr ""
-#: doc/classes/Resource.xml:26
+#: doc/classes/Resource.xml:27
msgid ""
"Duplicates the resource, returning a new resource. By default, sub-resources "
-"are shared between resource copies for efficiency, this can be changed by "
-"passing [code]true[/code] to the [code]subresources[/code] argument."
+"are shared between resource copies for efficiency. This can be changed by "
+"passing [code]true[/code] to the [code]subresources[/code] argument which "
+"will copy the subresources.\n"
+"[b]Note:[/b] If [code]subresources[/code] is [code]true[/code], this method "
+"will only perform a shallow copy. Nested resources within subresources will "
+"not be duplicated and will still be shared."
msgstr ""
-#: doc/classes/Resource.xml:33
+#: doc/classes/Resource.xml:35
msgid ""
"If [member resource_local_to_scene] is enabled and the resource was loaded "
"from a [PackedScene] instantiation, returns the local scene where this "
"resource's unique copy is in use. Otherwise, returns [code]null[/code]."
msgstr ""
-#: doc/classes/Resource.xml:40
+#: doc/classes/Resource.xml:42
msgid ""
"Returns the RID of the resource (or an empty RID). Many resources (such as "
"[Texture2D], [Mesh], etc) are high-level abstractions of resources stored in "
"a server, so this function will return the original RID."
msgstr ""
-#: doc/classes/Resource.xml:47
+#: doc/classes/Resource.xml:49
msgid ""
"This method is called when a resource with [member resource_local_to_scene] "
"enabled is loaded from a [PackedScene] instantiation. Its behavior can be "
@@ -44105,7 +45031,7 @@ msgid ""
"local viewport."
msgstr ""
-#: doc/classes/Resource.xml:57
+#: doc/classes/Resource.xml:59
msgid ""
"Sets the path of the resource, potentially overriding an existing cache "
"entry for this path. This differs from setting [member resource_path], as "
@@ -44113,25 +45039,25 @@ msgid ""
"given path."
msgstr ""
-#: doc/classes/Resource.xml:63
+#: doc/classes/Resource.xml:65
msgid ""
"If [code]true[/code], the resource will be made unique in each instance of "
"its local scene. It can thus be modified in a scene instance without "
"impacting other instances of that same scene."
msgstr ""
-#: doc/classes/Resource.xml:66
+#: doc/classes/Resource.xml:68
msgid "The name of the resource. This is an optional identifier."
msgstr ""
-#: doc/classes/Resource.xml:69
+#: doc/classes/Resource.xml:71
msgid ""
"The path to the resource. In case it has its own file, it will return its "
"filepath. If it's tied to the scene, it will return the scene's path, "
"followed by the resource's index."
msgstr ""
-#: doc/classes/Resource.xml:75
+#: doc/classes/Resource.xml:77
msgid "Emitted whenever the resource changes."
msgstr ""
@@ -44950,11 +45876,11 @@ msgid ""
"global coordinate system, but is centered at the object's origin."
msgstr ""
-#: doc/classes/RigidBody2D.xml:87
+#: doc/classes/RigidBody2D.xml:87 doc/classes/RigidBody3D.xml:99
msgid ""
-"Returns a list of the bodies colliding with this one. Use [member "
-"contacts_reported] to set the maximum number reported. You must also set "
-"[member contact_monitor] to [code]true[/code].\n"
+"Returns a list of the bodies colliding with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
"For performance, list of collisions is updated once per frame and before the "
"physics step. Consider using signals instead."
@@ -44991,7 +45917,7 @@ msgstr ""
msgid "The body's total applied torque."
msgstr ""
-#: doc/classes/RigidBody2D.xml:130 doc/classes/RigidBody3D.xml:150
+#: doc/classes/RigidBody2D.xml:130 doc/classes/RigidBody3D.xml:157
msgid ""
"If [code]true[/code], the body can enter sleep mode when there is no "
"movement. See [member sleeping]."
@@ -45003,11 +45929,17 @@ msgid ""
"another RigidBody2D. See also [member contacts_reported]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:136
-msgid "The maximum number of contacts to report."
+#: doc/classes/RigidBody2D.xml:136 doc/classes/RigidBody3D.xml:163
+msgid ""
+"The maximum number of contacts that will be recorded. Requires [member "
+"contact_monitor] to be set to [code]true[/code].\n"
+"[b]Note:[/b] The number of contacts is different from the number of "
+"collisions. Collisions between parallel edges will result in two contacts "
+"(one at each end), and collisions between parallel faces will result in four "
+"contacts (one at each corner)."
msgstr ""
-#: doc/classes/RigidBody2D.xml:139
+#: doc/classes/RigidBody2D.xml:140
msgid ""
"Continuous collision detection mode.\n"
"Continuous collision detection tries to predict where a moving body will "
@@ -45017,21 +45949,21 @@ msgid ""
"methods are available. See [enum CCDMode] for details."
msgstr ""
-#: doc/classes/RigidBody2D.xml:143
+#: doc/classes/RigidBody2D.xml:144
msgid ""
"If [code]true[/code], internal force integration is disabled for this body. "
"Aside from collision response, the body will only move as determined by the "
"[method _integrate_forces] function."
msgstr ""
-#: doc/classes/RigidBody2D.xml:146
+#: doc/classes/RigidBody2D.xml:147
msgid ""
"Multiplies the gravity applied to the body. The body's gravity is calculated "
"from the [b]Default Gravity[/b] value in [b]Project > Project Settings > "
"Physics > 2d[/b] and/or any additional gravity vector applied by [Area2D]s."
msgstr ""
-#: doc/classes/RigidBody2D.xml:149
+#: doc/classes/RigidBody2D.xml:150
msgid ""
"The body's moment of inertia. This is like mass, but for rotation: it "
"determines how much torque it takes to rotate the body. The moment of "
@@ -45040,18 +45972,18 @@ msgid ""
"automatically computing it."
msgstr ""
-#: doc/classes/RigidBody2D.xml:152
+#: doc/classes/RigidBody2D.xml:153
msgid ""
"Damps the body's [member linear_velocity]. If [code]-1[/code], the body will "
"use the [b]Default Linear Damp[/b] in [b]Project > Project Settings > "
"Physics > 2d[/b]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:161
+#: doc/classes/RigidBody2D.xml:162
msgid "The body's mode. See [enum Mode] for possible values."
msgstr ""
-#: doc/classes/RigidBody2D.xml:164 doc/classes/RigidBody3D.xml:181
+#: doc/classes/RigidBody2D.xml:165 doc/classes/RigidBody3D.xml:189
#: doc/classes/StaticBody2D.xml:22 doc/classes/StaticBody3D.xml:22
msgid ""
"The physics material override for the body.\n"
@@ -45059,50 +45991,50 @@ msgid ""
"other physics material, such as an inherited one."
msgstr ""
-#: doc/classes/RigidBody2D.xml:168 doc/classes/RigidBody3D.xml:185
+#: doc/classes/RigidBody2D.xml:169 doc/classes/RigidBody3D.xml:193
msgid ""
"If [code]true[/code], the body will not move and will not calculate forces "
"until woken up by another body through, for example, a collision, or by "
"using the [method apply_impulse] or [method add_force] methods."
msgstr ""
-#: doc/classes/RigidBody2D.xml:171
+#: doc/classes/RigidBody2D.xml:172
msgid ""
"The body's weight based on its mass and the [b]Default Gravity[/b] value in "
"[b]Project > Project Settings > Physics > 2d[/b]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:179
+#: doc/classes/RigidBody2D.xml:180 doc/classes/RigidBody3D.xml:204
msgid ""
-"Emitted when a body enters into contact with this one. [member "
-"contact_monitor] must be [code]true[/code] and [member contacts_reported] "
-"greater than [code]0[/code]."
+"Emitted when a body enters into contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:186
+#: doc/classes/RigidBody2D.xml:187
msgid ""
-"Emitted when a body exits contact with this one. [member contact_monitor] "
-"must be [code]true[/code] and [member contacts_reported] greater than "
-"[code]0[/code]."
+"Emitted when a body exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:199
+#: doc/classes/RigidBody2D.xml:200
msgid ""
"Emitted when a body enters into contact with this one. Reports colliding "
"shape information. See [CollisionObject2D] for shape index information. "
-"[member contact_monitor] must be [code]true[/code] and [member "
-"contacts_reported] greater than [code]0[/code]."
+"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:212
+#: doc/classes/RigidBody2D.xml:213
msgid ""
"Emitted when a body shape exits contact with this one. Reports colliding "
"shape information. See [CollisionObject2D] for shape index information. "
-"[member contact_monitor] must be [code]true[/code] and [member "
-"contacts_reported] greater than [code]0[/code]."
+"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:217 doc/classes/RigidBody3D.xml:236
+#: doc/classes/RigidBody2D.xml:218 doc/classes/RigidBody3D.xml:244
msgid ""
"Emitted when the physics engine changes the body's sleeping state.\n"
"[b]Note:[/b] Changing the value [member sleeping] will not trigger this "
@@ -45110,41 +46042,41 @@ msgid ""
"engine or [code]emit_signal(\"sleeping_state_changed\")[/code] is used."
msgstr ""
-#: doc/classes/RigidBody2D.xml:224
+#: doc/classes/RigidBody2D.xml:225
msgid ""
"Rigid mode. The body behaves as a physical object. It collides with other "
"bodies and responds to forces applied to it. This is the default mode."
msgstr ""
-#: doc/classes/RigidBody2D.xml:227
+#: doc/classes/RigidBody2D.xml:228
msgid "Static mode. The body behaves like a [StaticBody2D] and does not move."
msgstr ""
-#: doc/classes/RigidBody2D.xml:230
+#: doc/classes/RigidBody2D.xml:231
msgid ""
"Character mode. Similar to [constant MODE_RIGID], but the body can not "
"rotate."
msgstr ""
-#: doc/classes/RigidBody2D.xml:233
+#: doc/classes/RigidBody2D.xml:234
msgid ""
"Kinematic mode. The body behaves like a [KinematicBody2D], and must be moved "
"by code."
msgstr ""
-#: doc/classes/RigidBody2D.xml:236
+#: doc/classes/RigidBody2D.xml:237
msgid ""
"Continuous collision detection disabled. This is the fastest way to detect "
"body collisions, but can miss small, fast-moving objects."
msgstr ""
-#: doc/classes/RigidBody2D.xml:239
+#: doc/classes/RigidBody2D.xml:240
msgid ""
"Continuous collision detection enabled using raycasting. This is faster than "
"shapecasting but less precise."
msgstr ""
-#: doc/classes/RigidBody2D.xml:242
+#: doc/classes/RigidBody2D.xml:243
msgid ""
"Continuous collision detection enabled using shapecasting. This is the "
"slowest CCD method and the most precise."
@@ -45230,42 +46162,31 @@ msgid ""
"locked."
msgstr ""
-#: doc/classes/RigidBody3D.xml:99
+#: doc/classes/RigidBody3D.xml:107
msgid ""
-"Returns a list of the bodies colliding with this one. By default, number of "
-"max contacts reported is at 0, see the [member contacts_reported] property "
-"to increase it.\n"
-"[b]Note:[/b] The result of this test is not immediate after moving objects. "
-"For performance, list of collisions is updated once per frame and before the "
-"physics step. Consider using signals instead."
+"Returns the inverse inertia tensor basis. This is used to calculate the "
+"angular acceleration resulting from a torque applied to the [RigidBody3D]."
msgstr ""
-#: doc/classes/RigidBody3D.xml:111
+#: doc/classes/RigidBody3D.xml:118
msgid "Locks the specified linear or rotational axis."
msgstr ""
-#: doc/classes/RigidBody3D.xml:126
+#: doc/classes/RigidBody3D.xml:133
msgid "Damps RigidBody3D's rotational forces."
msgstr ""
-#: doc/classes/RigidBody3D.xml:129
+#: doc/classes/RigidBody3D.xml:136
msgid "RigidBody3D's rotational velocity."
msgstr ""
-#: doc/classes/RigidBody3D.xml:153
+#: doc/classes/RigidBody3D.xml:160
msgid ""
"If [code]true[/code], the RigidBody3D will emit signals when it collides "
-"with another RigidBody3D."
+"with another RigidBody3D. See also [member contacts_reported]."
msgstr ""
-#: doc/classes/RigidBody3D.xml:156
-msgid ""
-"The maximum contacts to report. Bodies can keep a log of the contacts with "
-"other bodies, this is enabled by setting the maximum amount of contacts "
-"reported to a number greater than 0."
-msgstr ""
-
-#: doc/classes/RigidBody3D.xml:159
+#: doc/classes/RigidBody3D.xml:167
msgid ""
"If [code]true[/code], continuous collision detection is used.\n"
"Continuous collision detection tries to predict where a moving body will "
@@ -45275,7 +46196,7 @@ msgid ""
"faster to compute, but can miss small, fast-moving objects."
msgstr ""
-#: doc/classes/RigidBody3D.xml:163
+#: doc/classes/RigidBody3D.xml:171
msgid ""
"If [code]true[/code], internal force integration will be disabled (like "
"gravity or air friction) for this body. Other than collision response, the "
@@ -45283,7 +46204,7 @@ msgid ""
"function, if defined."
msgstr ""
-#: doc/classes/RigidBody3D.xml:166
+#: doc/classes/RigidBody3D.xml:174
msgid ""
"This is multiplied by the global 3D gravity setting found in [b]Project > "
"Project Settings > Physics > 3d[/b] to produce RigidBody3D's gravity. For "
@@ -45291,14 +46212,14 @@ msgid ""
"and 0.5 will apply half gravity to this object."
msgstr ""
-#: doc/classes/RigidBody3D.xml:169
+#: doc/classes/RigidBody3D.xml:177
msgid ""
"The body's linear damp. Cannot be less than -1.0. If this value is different "
"from -1.0, any linear damp derived from the world or areas will be "
"overridden."
msgstr ""
-#: doc/classes/RigidBody3D.xml:172
+#: doc/classes/RigidBody3D.xml:180
msgid ""
"The body's linear velocity. Can be used sporadically, but [b]don't set this "
"every frame[/b], because physics may run in another thread and runs at a "
@@ -45306,60 +46227,57 @@ msgid ""
"for precise control of the body state."
msgstr ""
-#: doc/classes/RigidBody3D.xml:178
+#: doc/classes/RigidBody3D.xml:186
msgid "The body mode. See [enum Mode] for possible values."
msgstr ""
-#: doc/classes/RigidBody3D.xml:196
-msgid ""
-"Emitted when a body enters into contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work."
-msgstr ""
-
-#: doc/classes/RigidBody3D.xml:203
+#: doc/classes/RigidBody3D.xml:211
msgid ""
-"Emitted when a body shape exits contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work."
+"Emitted when a body shape exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody3D.xml:216
+#: doc/classes/RigidBody3D.xml:224
msgid ""
-"Emitted when a body enters into contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work.\n"
+"Emitted when a body enters into contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"This signal not only receives the body that collided with this one, but also "
"its [RID] ([code]body_id[/code]), the shape index from the colliding body "
"([code]body_shape[/code]), and the shape index from this body "
"([code]local_shape[/code]) the other body collided with."
msgstr ""
-#: doc/classes/RigidBody3D.xml:230
+#: doc/classes/RigidBody3D.xml:238
msgid ""
-"Emitted when a body shape exits contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work.\n"
+"Emitted when a body shape exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"This signal not only receives the body that stopped colliding with this one, "
"but also its [RID] ([code]body_id[/code]), the shape index from the "
"colliding body ([code]body_shape[/code]), and the shape index from this body "
"([code]local_shape[/code]) the other body stopped colliding with."
msgstr ""
-#: doc/classes/RigidBody3D.xml:243
+#: doc/classes/RigidBody3D.xml:251
msgid ""
"Rigid body mode. This is the \"natural\" state of a rigid body. It is "
"affected by forces, and can move, rotate, and be affected by user code."
msgstr ""
-#: doc/classes/RigidBody3D.xml:246
+#: doc/classes/RigidBody3D.xml:254
msgid ""
"Static mode. The body behaves like a [StaticBody3D], and can only move by "
"user code."
msgstr ""
-#: doc/classes/RigidBody3D.xml:249
+#: doc/classes/RigidBody3D.xml:257
msgid ""
"Character body mode. This behaves like a rigid body, but can not rotate."
msgstr ""
-#: doc/classes/RigidBody3D.xml:252
+#: doc/classes/RigidBody3D.xml:260
msgid ""
"Kinematic body mode. The body behaves like a [KinematicBody3D], and can only "
"move by user code."
@@ -45541,12 +46459,16 @@ msgid ""
"https://docs.godotengine.org/en/latest/getting_started/step_by_step/"
"scene_tree.html"
msgstr ""
+"https://docs.godotengine.org/de/latest/getting_started/step_by_step/"
+"scene_tree.html"
#: doc/classes/SceneTree.xml:13
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/viewports/"
"multiple_resolutions.html"
msgstr ""
+"https://docs.godotengine.org/de/latest/tutorials/viewports/"
+"multiple_resolutions.html"
#: doc/classes/SceneTree.xml:24
msgid "Calls [code]method[/code] on each member of the given group."
@@ -45866,7 +46788,7 @@ msgstr ""
msgid "The time remaining."
msgstr ""
-#: doc/classes/SceneTreeTimer.xml:28 doc/classes/Timer.xml:62
+#: doc/classes/SceneTreeTimer.xml:28 doc/classes/Timer.xml:63
msgid "Emitted when the timer reaches 0."
msgstr ""
@@ -45888,6 +46810,8 @@ msgid ""
"https://docs.godotengine.org/en/latest/getting_started/step_by_step/"
"scripting.html"
msgstr ""
+"https://docs.godotengine.org/de/latest/getting_started/step_by_step/"
+"scripting.html"
#: doc/classes/Script.xml:18
msgid "Returns [code]true[/code] if the script can be instanced."
@@ -45989,27 +46913,27 @@ msgid ""
"the singleton using [method EditorInterface.get_script_editor]."
msgstr ""
-#: doc/classes/ScriptEditor.xml:40
+#: doc/classes/ScriptEditor.xml:46
msgid "Returns a [Script] that is currently active in editor."
msgstr ""
-#: doc/classes/ScriptEditor.xml:57
+#: doc/classes/ScriptEditor.xml:69
msgid ""
"Returns an array with all [Script] objects which are currently open in "
"editor."
msgstr ""
-#: doc/classes/ScriptEditor.xml:66
+#: doc/classes/ScriptEditor.xml:78
msgid "Goes to the specified line in the current script."
msgstr ""
-#: doc/classes/ScriptEditor.xml:85
+#: doc/classes/ScriptEditor.xml:113
msgid ""
"Emitted when user changed active script. Argument is a freshly activated "
"[Script]."
msgstr ""
-#: doc/classes/ScriptEditor.xml:92
+#: doc/classes/ScriptEditor.xml:120
msgid ""
"Emitted when editor is about to close the active script. Argument is a "
"[Script] that is going to be closed."
@@ -46071,7 +46995,7 @@ msgid ""
"visible."
msgstr ""
-#: doc/classes/ScrollContainer.xml:37 doc/classes/TextEdit.xml:453
+#: doc/classes/ScrollContainer.xml:37 doc/classes/TextEdit.xml:407
msgid "The current horizontal scroll value."
msgstr ""
@@ -46079,7 +47003,7 @@ msgstr ""
msgid "If [code]true[/code], enables horizontal scrolling."
msgstr ""
-#: doc/classes/ScrollContainer.xml:43 doc/classes/TextEdit.xml:456
+#: doc/classes/ScrollContainer.xml:43 doc/classes/TextEdit.xml:410
msgid "The current vertical scroll value."
msgstr ""
@@ -46168,13 +47092,15 @@ msgstr ""
#: doc/classes/Shader.xml:10 doc/classes/ShaderMaterial.xml:10
msgid "https://docs.godotengine.org/en/latest/tutorials/shading/index.html"
-msgstr ""
+msgstr "https://docs.godotengine.org/de/latest/tutorials/shading/index.html"
#: doc/classes/Shader.xml:11
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/shading/your_first_shader/"
"what_are_shaders.html"
msgstr ""
+"https://docs.godotengine.org/de/latest/tutorials/shading/your_first_shader/"
+"what_are_shaders.html"
#: doc/classes/Shader.xml:20
msgid ""
@@ -46436,6 +47362,7 @@ msgstr ""
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/animation/2d_skeletons.html"
msgstr ""
+"https://docs.godotengine.org/de/latest/tutorials/animation/2d_skeletons.html"
#: doc/classes/Skeleton2D.xml:19
msgid ""
@@ -46599,7 +47526,7 @@ msgstr ""
msgid ""
"Sets the global pose transform, [code]pose[/code], for the bone at "
"[code]bone_idx[/code].\n"
-"[code]amount[/code] is the interpolation strengh that will be used when "
+"[code]amount[/code] is the interpolation strength that will be used when "
"applying the pose, and [code]persistent[/code] determines if the applied "
"pose will remain.\n"
"[b]Note[/b]: The pose transform needs to be in bone space. Use [method "
@@ -46616,7 +47543,7 @@ msgstr ""
#: doc/classes/Skeleton3D.xml:266
msgid ""
-"Returns the pose transform for bone [code]bone_idx[/code].\n"
+"Sets the pose transform for bone [code]bone_idx[/code].\n"
"[b]Note[/b]: The pose transform needs to be in bone space. Use [method "
"world_transform_to_bone_transform] to convert a world transform, like one "
"you can get from a [Node3D], to bone space."
@@ -46709,6 +47636,16 @@ msgstr ""
#: doc/classes/Sky.xml:52
msgid ""
+"Automatically selects the appropriate process mode based on your sky shader. "
+"If your shader uses [code]TIME[/code] or [code]POSITION[/code], this will "
+"use [constant PROCESS_MODE_REALTIME]. If your shader uses any of the "
+"[code]LIGHT_*[/code] variables or any custom uniforms, this uses [constant "
+"PROCESS_MODE_INCREMENTAL]. Otherwise, this defaults to [constant "
+"PROCESS_MODE_QUALITY]."
+msgstr ""
+
+#: doc/classes/Sky.xml:55
+msgid ""
"Uses high quality importance sampling to process the radiance map. In "
"general, this results in much higher quality than [constant "
"PROCESS_MODE_REALTIME] but takes much longer to generate. This should not be "
@@ -46718,10 +47655,22 @@ msgid ""
"ggx_samples]."
msgstr ""
-#: doc/classes/Sky.xml:55
+#: doc/classes/Sky.xml:58
+msgid ""
+"Uses the same high quality importance sampling to process the radiance map "
+"as [constant PROCESS_MODE_QUALITY], but updates over several frames. The "
+"number of frames is determined by [member ProjectSettings.rendering/quality/"
+"reflections/roughness_layers]. Use this when you need highest quality "
+"radiance maps, but have a sky that updates slowly."
+msgstr ""
+
+#: doc/classes/Sky.xml:61
msgid ""
"Uses the fast filtering algorithm to process the radiance map. In general "
-"this results in lower quality, but substantially faster run times.\n"
+"this results in lower quality, but substantially faster run times. If you "
+"need better quality, but still need to update the sky every frame, consider "
+"turning on [member ProjectSettings.rendering/quality/reflections/"
+"fast_filter_high_quality].\n"
"[b]Note:[/b] The fast filtering algorithm is limited to 256x256 cubemaps, so "
"[member radiance_size] must be set to [constant RADIANCE_SIZE_256]."
msgstr ""
@@ -46814,6 +47763,7 @@ msgstr ""
#: doc/classes/SoftBody3D.xml:10
msgid "https://docs.godotengine.org/en/latest/tutorials/physics/soft_body.html"
msgstr ""
+"https://docs.godotengine.org/de/latest/tutorials/physics/soft_body.html"
#: doc/classes/SoftBody3D.xml:83
msgid ""
@@ -47058,10 +48008,9 @@ msgid ""
msgstr ""
#: doc/classes/SpringArm3D.xml:35
-msgid ""
-"Returns the proportion between the current arm length (after checking for "
-"collisions) and the [member spring_length]. Ranges from 0 to 1."
-msgstr ""
+#, fuzzy
+msgid "Returns the spring arm's current length."
+msgstr "Gibt die Länge des Vektors zurück."
#: doc/classes/SpringArm3D.xml:44
msgid ""
@@ -47756,7 +48705,7 @@ msgstr ""
msgid ""
"This is the built-in string class (and the one used by GDScript). It "
"supports Unicode and provides all necessary means for string handling. "
-"Strings are reference counted and use a copy-on-write approach, so passing "
+"Strings are reference-counted and use a copy-on-write approach, so passing "
"them around is cheap in resources."
msgstr ""
@@ -47765,6 +48714,8 @@ msgid ""
"https://docs.godotengine.org/en/latest/getting_started/scripting/gdscript/"
"gdscript_format_string.html"
msgstr ""
+"https://docs.godotengine.org/de/latest/getting_started/scripting/gdscript/"
+"gdscript_format_string.html"
#: doc/classes/String.xml:19
msgid "Constructs a new String from the given [bool]."
@@ -47911,26 +48862,32 @@ msgstr ""
#: doc/classes/String.xml:328
msgid ""
"Returns a copy of the string with escaped characters replaced by their "
-"meanings according to the C language standard."
+"meanings. Supported escape sequences are [code]\\'[/code], [code]\\\"[/"
+"code], [code]\\?[/code], [code]\\\\[/code], [code]\\a[/code], [code]\\b[/"
+"code], [code]\\f[/code], [code]\\n[/code], [code]\\r[/code], [code]\\t[/"
+"code], [code]\\v[/code].\n"
+"[b]Note:[/b] Unlike the GDScript parser, this method doesn't support the "
+"[code]\\uXXXX[/code] escape sequence."
msgstr ""
-#: doc/classes/String.xml:335
+#: doc/classes/String.xml:336
msgid ""
-"Changes the case of some letters. Replaces underscores with spaces, converts "
-"all letters to lowercase, then capitalizes first and every letter following "
-"the space character. For [code]capitalize camelCase mixed_with_underscores[/"
-"code], it will return [code]Capitalize Camelcase Mixed With Underscores[/"
+"Changes the case of some letters. Replaces underscores with spaces, adds "
+"spaces before in-word uppercase characters, converts all letters to "
+"lowercase, then capitalizes the first letter and every letter following a "
+"space character. For [code]capitalize camelCase mixed_with_underscores[/"
+"code], it will return [code]Capitalize Camel Case Mixed With Underscores[/"
"code]."
msgstr ""
-#: doc/classes/String.xml:344
+#: doc/classes/String.xml:345
msgid ""
"Performs a case-sensitive comparison to another string. Returns [code]-1[/"
"code] if less than, [code]+1[/code] if greater than, or [code]0[/code] if "
"equal."
msgstr ""
-#: doc/classes/String.xml:357
+#: doc/classes/String.xml:358
msgid ""
"Returns the number of occurrences of substring [code]what[/code] between "
"[code]from[/code] and [code]to[/code] positions. If [code]from[/code] and "
@@ -47938,7 +48895,7 @@ msgid ""
"code] equals 0 the remained substring will be used."
msgstr ""
-#: doc/classes/String.xml:370
+#: doc/classes/String.xml:371
msgid ""
"Returns the number of occurrences of substring [code]what[/code] (ignoring "
"case) between [code]from[/code] and [code]to[/code] positions. If "
@@ -47946,33 +48903,34 @@ msgid ""
"used. If only [code]to[/code] equals 0 the remained substring will be used."
msgstr ""
-#: doc/classes/String.xml:377
+#: doc/classes/String.xml:378
msgid ""
"Returns a copy of the string with indentation (leading tabs and spaces) "
"removed."
msgstr ""
-#: doc/classes/String.xml:384
-#, fuzzy
+#: doc/classes/String.xml:385
msgid ""
"Returns [code]true[/code] if the length of the string equals [code]0[/code]."
-msgstr "Gibt [code]true[/code] zurück wenn dieser Vektor normalisiert ist."
+msgstr ""
+"Liefert [code]true[/code] wenn die Länge der Zeichenkette [code]0[/code] ist."
-#: doc/classes/String.xml:393
+#: doc/classes/String.xml:394
msgid "Returns [code]true[/code] if the string ends with the given string."
msgstr ""
-#: doc/classes/String.xml:404
+#: doc/classes/String.xml:405
msgid ""
"Erases [code]chars[/code] characters from the string starting from "
"[code]position[/code]."
msgstr ""
-#: doc/classes/String.xml:415
+#: doc/classes/String.xml:416
msgid ""
-"Finds the first occurrence of a substring. Returns the starting position of "
-"the substring or [code]-1[/code] if not found. Optionally, the initial "
-"search index can be passed.\n"
+"Returns the index of the [b]first[/b] case-sensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the end of the "
+"string.\n"
"[b]Note:[/b] If you just want to know whether a string contains a substring, "
"use the [code]in[/code] operator as follows:\n"
"[codeblock]\n"
@@ -47982,48 +48940,42 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:430
+#: doc/classes/String.xml:433
msgid ""
-"Finds the last occurrence of a substring. Returns the starting position of "
-"the substring or [code]-1[/code] if not found."
+"Returns the index of the [b]first[/b] case-insensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the end of the string."
msgstr ""
-#: doc/classes/String.xml:441
-msgid ""
-"Finds the first occurrence of a substring, ignoring case. Returns the "
-"starting position of the substring or [code]-1[/code] if not found. "
-"Optionally, the initial search index can be passed."
-msgstr ""
-
-#: doc/classes/String.xml:452
+#: doc/classes/String.xml:444
msgid ""
"Formats the string by replacing all occurrences of [code]placeholder[/code] "
"with [code]values[/code]."
msgstr ""
-#: doc/classes/String.xml:459
+#: doc/classes/String.xml:451
msgid "If the string is a valid file path, returns the base directory name."
msgstr ""
-#: doc/classes/String.xml:466
+#: doc/classes/String.xml:458
msgid ""
"If the string is a valid file path, returns the full file path without the "
"extension."
msgstr ""
-#: doc/classes/String.xml:473
+#: doc/classes/String.xml:465
msgid "If the string is a valid file path, returns the extension."
msgstr ""
-#: doc/classes/String.xml:480
+#: doc/classes/String.xml:472
msgid "If the string is a valid file path, returns the filename."
msgstr ""
-#: doc/classes/String.xml:487
+#: doc/classes/String.xml:479
msgid "Hashes the string and returns a 32-bit integer."
msgstr ""
-#: doc/classes/String.xml:494
+#: doc/classes/String.xml:486
msgid ""
"Converts a string containing a hexadecimal number into an integer. "
"Hexadecimal strings are expected to be prefixed with \"[code]0x[/code]\" "
@@ -48033,7 +48985,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:504
+#: doc/classes/String.xml:496
msgid ""
"Escapes (encodes) a string to URL friendly format. Also referred to as 'URL "
"encode'.\n"
@@ -48043,7 +48995,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:514
+#: doc/classes/String.xml:506
msgid ""
"Unescapes (decodes) a string in URL encoded format. Also referred to as 'URL "
"decode'.\n"
@@ -48053,7 +49005,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:526
+#: doc/classes/String.xml:518
msgid ""
"Converts [code]size[/code] represented as number of bytes to human-readable "
"format using internationalized set of data size units, namely: B, KiB, MiB, "
@@ -48066,48 +49018,48 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:542
+#: doc/classes/String.xml:534
msgid ""
"Returns a copy of the string with the substring [code]what[/code] inserted "
"at the given position."
msgstr ""
-#: doc/classes/String.xml:549
+#: doc/classes/String.xml:541
msgid ""
"If the string is a path to a file or directory, returns [code]true[/code] if "
"the path is absolute."
msgstr ""
-#: doc/classes/String.xml:556
+#: doc/classes/String.xml:548
msgid ""
"If the string is a path to a file or directory, returns [code]true[/code] if "
"the path is relative."
msgstr ""
-#: doc/classes/String.xml:565
+#: doc/classes/String.xml:557
msgid ""
"Returns [code]true[/code] if this string is a subsequence of the given "
"string."
msgstr ""
-#: doc/classes/String.xml:574
+#: doc/classes/String.xml:566
msgid ""
"Returns [code]true[/code] if this string is a subsequence of the given "
"string, without considering case."
msgstr ""
-#: doc/classes/String.xml:581
+#: doc/classes/String.xml:573
msgid ""
"Returns [code]true[/code] if this string is free from characters that aren't "
"allowed in file names, those being:\n"
"[code]: / \\ ? * \" | % < >[/code]"
msgstr ""
-#: doc/classes/String.xml:589
+#: doc/classes/String.xml:581
msgid "Returns [code]true[/code] if this string contains a valid float."
msgstr ""
-#: doc/classes/String.xml:598
+#: doc/classes/String.xml:590
msgid ""
"Returns [code]true[/code] if this string contains a valid hexadecimal "
"number. If [code]with_prefix[/code] is [code]true[/code], then a validity of "
@@ -48115,7 +49067,7 @@ msgid ""
"instance: [code]0xDEADC0DE[/code]."
msgstr ""
-#: doc/classes/String.xml:605
+#: doc/classes/String.xml:597
msgid ""
"Returns [code]true[/code] if this string contains a valid color in "
"hexadecimal HTML notation. Other HTML notations such as named colors or "
@@ -48123,22 +49075,22 @@ msgid ""
"return [code]false[/code]."
msgstr ""
-#: doc/classes/String.xml:612
+#: doc/classes/String.xml:604
msgid ""
"Returns [code]true[/code] if this string is a valid identifier. A valid "
"identifier may contain only letters, digits and underscores ([code]_[/code]) "
"and the first character may not be a digit."
msgstr ""
-#: doc/classes/String.xml:619
+#: doc/classes/String.xml:611
msgid "Returns [code]true[/code] if this string contains a valid integer."
msgstr ""
-#: doc/classes/String.xml:626
+#: doc/classes/String.xml:618
msgid "Returns [code]true[/code] if this string contains a valid IP address."
msgstr ""
-#: doc/classes/String.xml:635
+#: doc/classes/String.xml:627
msgid ""
"Return a [String] which is the concatenation of the [code]parts[/code]. The "
"separator between elements is the string providing this method.\n"
@@ -48148,121 +49100,125 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:646
+#: doc/classes/String.xml:638
msgid ""
"Returns a copy of the string with special characters escaped using the JSON "
"standard."
msgstr ""
-#: doc/classes/String.xml:655
+#: doc/classes/String.xml:647
msgid "Returns a number of characters from the left of the string."
msgstr ""
-#: doc/classes/String.xml:662
+#: doc/classes/String.xml:654
msgid "Returns the string's amount of characters."
msgstr ""
-#: doc/classes/String.xml:671
+#: doc/classes/String.xml:663
msgid "Returns a copy of the string with characters removed from the left."
msgstr ""
-#: doc/classes/String.xml:680
+#: doc/classes/String.xml:672
msgid ""
"Does a simple case-sensitive expression match, where [code]\"*\"[/code] "
"matches zero or more arbitrary characters and [code]\"?\"[/code] matches any "
"single character except a period ([code]\".\"[/code])."
msgstr ""
-#: doc/classes/String.xml:689
+#: doc/classes/String.xml:681
msgid ""
"Does a simple case-insensitive expression match, where [code]\"*\"[/code] "
"matches zero or more arbitrary characters and [code]\"?\"[/code] matches any "
"single character except a period ([code]\".\"[/code])."
msgstr ""
-#: doc/classes/String.xml:696
+#: doc/classes/String.xml:688
msgid "Returns the MD5 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:703
+#: doc/classes/String.xml:695
msgid "Returns the MD5 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:712
+#: doc/classes/String.xml:704
msgid ""
"Performs a case-insensitive comparison to another string. Returns [code]-1[/"
"code] if less than, [code]+1[/code] if greater than, or [code]0[/code] if "
"equal."
msgstr ""
-#: doc/classes/String.xml:721
+#: doc/classes/String.xml:713
msgid "Returns the character code at position [code]at[/code]."
msgstr ""
-#: doc/classes/String.xml:730
+#: doc/classes/String.xml:722
msgid ""
"Formats a number to have an exact number of [code]digits[/code] after the "
"decimal point."
msgstr ""
-#: doc/classes/String.xml:739
+#: doc/classes/String.xml:731
msgid ""
"Formats a number to have an exact number of [code]digits[/code] before the "
"decimal point."
msgstr ""
-#: doc/classes/String.xml:746
+#: doc/classes/String.xml:738
msgid "Decode a percent-encoded string. See [method percent_encode]."
msgstr ""
-#: doc/classes/String.xml:753
+#: doc/classes/String.xml:745
msgid ""
"Percent-encodes a string. Encodes parameters in a URL when sending a HTTP "
"GET request (and bodies of form-urlencoded POST requests)."
msgstr ""
-#: doc/classes/String.xml:762
+#: doc/classes/String.xml:754
msgid ""
"If the string is a path, this concatenates [code]file[/code] at the end of "
"the string as a subpath. E.g. [code]\"this/is\".plus_file(\"path\") == "
"\"this/is/path\"[/code]."
msgstr ""
-#: doc/classes/String.xml:771
+#: doc/classes/String.xml:763
msgid ""
"Returns original string repeated a number of times. The number of "
"repetitions is given by the argument."
msgstr ""
-#: doc/classes/String.xml:782
+#: doc/classes/String.xml:774
msgid ""
"Replaces occurrences of a case-sensitive substring with the given one inside "
"the string."
msgstr ""
-#: doc/classes/String.xml:793
+#: doc/classes/String.xml:785
msgid ""
"Replaces occurrences of a case-insensitive substring with the given one "
"inside the string."
msgstr ""
-#: doc/classes/String.xml:804
+#: doc/classes/String.xml:796
msgid ""
-"Performs a case-sensitive search for a substring, but starts from the end of "
-"the string instead of the beginning."
+"Returns the index of the [b]last[/b] case-sensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the beginning of the "
+"string."
msgstr ""
-#: doc/classes/String.xml:815
+#: doc/classes/String.xml:807
msgid ""
-"Performs a case-insensitive search for a substring, but starts from the end "
-"of the string instead of the beginning."
+"Returns the index of the [b]last[/b] case-insensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the beginning of the "
+"string."
msgstr ""
-#: doc/classes/String.xml:824
+#: doc/classes/String.xml:816
msgid "Returns the right side of the string from a given position."
msgstr ""
-#: doc/classes/String.xml:837
+#: doc/classes/String.xml:829
msgid ""
"Splits the string by a [code]delimiter[/code] string and returns an array of "
"the substrings, starting from right.\n"
@@ -48281,39 +49237,39 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:856
+#: doc/classes/String.xml:848
msgid "Returns a copy of the string with characters removed from the right."
msgstr ""
-#: doc/classes/String.xml:863
+#: doc/classes/String.xml:855
msgid "Returns the SHA-1 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:870
+#: doc/classes/String.xml:862
msgid "Returns the SHA-1 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:877
+#: doc/classes/String.xml:869
msgid "Returns the SHA-256 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:884
+#: doc/classes/String.xml:876
msgid "Returns the SHA-256 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:893
+#: doc/classes/String.xml:885
msgid ""
"Returns the similarity index of the text compared to this string. 1 means "
"totally similar and 0 means totally dissimilar."
msgstr ""
-#: doc/classes/String.xml:906
+#: doc/classes/String.xml:898
msgid ""
"Splits the string by a [code]delimiter[/code] string and returns an array of "
-"the substrings.\n"
+"the substrings. The [code]delimiter[/code] can be of any length.\n"
"If [code]maxsplit[/code] is specified, it defines the number of splits to do "
-"from the left up to [code]maxsplit[/code]. The default value of 0 means that "
-"all items are split.\n"
+"from the left up to [code]maxsplit[/code]. The default value of [code]0[/"
+"code] means that all items are split.\n"
"Example:\n"
"[codeblock]\n"
"var some_string = \"One,Two,Three,Four\"\n"
@@ -48321,10 +49277,12 @@ msgid ""
"print(some_array.size()) # Prints 2\n"
"print(some_array[0]) # Prints \"One\"\n"
"print(some_array[1]) # Prints \"Two,Three,Four\"\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"If you need to split strings with more complex rules, use the [RegEx] class "
+"instead."
msgstr ""
-#: doc/classes/String.xml:926
+#: doc/classes/String.xml:919
msgid ""
"Splits the string in floats by using a delimiter string and returns an array "
"of the substrings.\n"
@@ -48332,7 +49290,7 @@ msgid ""
"split by [code]\",\"[/code]."
msgstr ""
-#: doc/classes/String.xml:938
+#: doc/classes/String.xml:931
msgid ""
"Returns a copy of the string stripped of any non-printable character "
"(including tabulations, spaces and line breaks) at the beginning and the "
@@ -48340,7 +49298,7 @@ msgid ""
"right edges respectively."
msgstr ""
-#: doc/classes/String.xml:945
+#: doc/classes/String.xml:938
msgid ""
"Returns a copy of the string stripped of any escape character. These include "
"all non-printable control characters of the first page of the ASCII table (< "
@@ -48348,7 +49306,7 @@ msgid ""
"code] and [code]\\r[/code]) characters, but not spaces."
msgstr ""
-#: doc/classes/String.xml:956
+#: doc/classes/String.xml:949
#, fuzzy
msgid ""
"Returns part of the string from the position [code]from[/code] with length "
@@ -48360,7 +49318,7 @@ msgstr ""
"Interval von [code]0.0[/code] bis [code]1.0[/code] und bezeichnet den Grad "
"der Interpolation."
-#: doc/classes/String.xml:963
+#: doc/classes/String.xml:956
msgid ""
"Converts the String (which is a character array) to [PackedByteArray] (which "
"is an array of bytes). The conversion is faster compared to [method "
@@ -48368,25 +49326,25 @@ msgid ""
"ASCII characters."
msgstr ""
-#: doc/classes/String.xml:970
+#: doc/classes/String.xml:963
msgid ""
"Converts a string containing a decimal number into a [code]float[/code]."
msgstr ""
-#: doc/classes/String.xml:977
+#: doc/classes/String.xml:970
msgid ""
"Converts a string containing an integer number into an [code]int[/code]."
msgstr ""
-#: doc/classes/String.xml:984
+#: doc/classes/String.xml:977
msgid "Returns the string converted to lowercase."
msgstr ""
-#: doc/classes/String.xml:991
+#: doc/classes/String.xml:984
msgid "Returns the string converted to uppercase."
msgstr ""
-#: doc/classes/String.xml:998
+#: doc/classes/String.xml:991
msgid ""
"Converts the String (which is an array of characters) to [PackedByteArray] "
"(which is an array of bytes). The conversion is a bit slower than [method "
@@ -48394,25 +49352,25 @@ msgid ""
"this function over [method to_ascii]."
msgstr ""
-#: doc/classes/String.xml:1007
+#: doc/classes/String.xml:1000
msgid ""
"Removes a given string from the start if it starts with it or leaves the "
"string unchanged."
msgstr ""
-#: doc/classes/String.xml:1016
+#: doc/classes/String.xml:1009
msgid ""
"Removes a given string from the end if it ends with it or leaves the string "
"unchanged."
msgstr ""
-#: doc/classes/String.xml:1023
+#: doc/classes/String.xml:1016
msgid ""
"Returns a copy of the string with special characters escaped using the XML "
"standard."
msgstr ""
-#: doc/classes/String.xml:1030
+#: doc/classes/String.xml:1023
msgid ""
"Returns a copy of the string with escaped characters replaced by their "
"meanings according to the XML standard."
@@ -49644,50 +50602,42 @@ msgid ""
"undo/redo."
msgstr ""
-#: doc/classes/TextEdit.xml:24
-msgid "Adds color region (given the delimiters) and its colors."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:35
-msgid "Adds a [code]keyword[/code] and its [Color]."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:44
+#: doc/classes/TextEdit.xml:18
msgid ""
"Returns if the given line is foldable, that is, it has indented lines right "
"below it."
msgstr ""
-#: doc/classes/TextEdit.xml:57
+#: doc/classes/TextEdit.xml:25
msgid ""
-"Clears all custom syntax coloring information previously added with [method "
-"add_color_region] or [method add_keyword_color]."
+"Centers the viewport on the line the editing cursor is at. This also resets "
+"the [member scroll_horizontal] value to [code]0[/code]."
msgstr ""
-#: doc/classes/TextEdit.xml:64
+#: doc/classes/TextEdit.xml:32
msgid "Clears the undo history."
msgstr ""
-#: doc/classes/TextEdit.xml:71
+#: doc/classes/TextEdit.xml:39
msgid "Copy's the current text selection."
msgstr ""
-#: doc/classes/TextEdit.xml:78
+#: doc/classes/TextEdit.xml:46
msgid "Returns the column the editing cursor is at."
msgstr ""
-#: doc/classes/TextEdit.xml:85
+#: doc/classes/TextEdit.xml:53
msgid "Returns the line the editing cursor is at."
msgstr ""
-#: doc/classes/TextEdit.xml:96
+#: doc/classes/TextEdit.xml:64
msgid ""
"Moves the cursor at the specified [code]column[/code] index.\n"
"If [code]adjust_viewport[/code] is set to [code]true[/code], the viewport "
"will center at the cursor position after the move occurs."
msgstr ""
-#: doc/classes/TextEdit.xml:112
+#: doc/classes/TextEdit.xml:80
msgid ""
"Moves the cursor at the specified [code]line[/code] index.\n"
"If [code]adjust_viewport[/code] is set to [code]true[/code], the viewport "
@@ -49696,111 +50646,101 @@ msgid ""
"[code]line[/code] can be hidden using [method set_line_as_hidden]."
msgstr ""
-#: doc/classes/TextEdit.xml:121
+#: doc/classes/TextEdit.xml:89
msgid "Cut's the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:128
+#: doc/classes/TextEdit.xml:96
msgid "Deselects the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:135
+#: doc/classes/TextEdit.xml:103
msgid "Folds all lines that are possible to be folded (see [method can_fold])."
msgstr ""
-#: doc/classes/TextEdit.xml:144
+#: doc/classes/TextEdit.xml:112
msgid "Folds the given line, if possible (see [method can_fold])."
msgstr ""
-#: doc/classes/TextEdit.xml:151
+#: doc/classes/TextEdit.xml:119
msgid "Returns an array containing the line number of each breakpoint."
msgstr ""
-#: doc/classes/TextEdit.xml:160
-msgid "Returns the [Color] of the specified [code]keyword[/code]."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:169
+#: doc/classes/TextEdit.xml:128
msgid "Returns the text of a specific line."
msgstr ""
-#: doc/classes/TextEdit.xml:176
+#: doc/classes/TextEdit.xml:135
msgid "Returns the amount of total lines in the text."
msgstr ""
-#: doc/classes/TextEdit.xml:183
+#: doc/classes/TextEdit.xml:142
msgid ""
"Returns the [PopupMenu] of this [TextEdit]. By default, this menu is "
"displayed when right-clicking on the [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:190
+#: doc/classes/TextEdit.xml:149
msgid "Returns the selection begin column."
msgstr ""
-#: doc/classes/TextEdit.xml:197
+#: doc/classes/TextEdit.xml:156
msgid "Returns the selection begin line."
msgstr ""
-#: doc/classes/TextEdit.xml:204
+#: doc/classes/TextEdit.xml:163
msgid "Returns the text inside the selection."
msgstr ""
-#: doc/classes/TextEdit.xml:211
+#: doc/classes/TextEdit.xml:170
msgid "Returns the selection end column."
msgstr ""
-#: doc/classes/TextEdit.xml:218
+#: doc/classes/TextEdit.xml:177
msgid "Returns the selection end line."
msgstr ""
-#: doc/classes/TextEdit.xml:225
+#: doc/classes/TextEdit.xml:184
msgid "Returns a [String] text with the word under the mouse cursor location."
msgstr ""
-#: doc/classes/TextEdit.xml:234
-msgid ""
-"Returns whether the specified [code]keyword[/code] has a color set to it or "
-"not."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:243
+#: doc/classes/TextEdit.xml:193
msgid "Insert the specified text at the cursor position."
msgstr ""
-#: doc/classes/TextEdit.xml:252
+#: doc/classes/TextEdit.xml:202
msgid "Returns whether the line at the specified index is folded or not."
msgstr ""
-#: doc/classes/TextEdit.xml:261
+#: doc/classes/TextEdit.xml:211
msgid "Returns whether the line at the specified index is hidden or not."
msgstr ""
-#: doc/classes/TextEdit.xml:268
+#: doc/classes/TextEdit.xml:218
msgid "Returns [code]true[/code] if the selection is active."
msgstr ""
-#: doc/classes/TextEdit.xml:277
+#: doc/classes/TextEdit.xml:227
msgid ""
"Triggers a right-click menu action by the specified index. See [enum "
"MenuItems] for a list of available indexes."
msgstr ""
-#: doc/classes/TextEdit.xml:284
+#: doc/classes/TextEdit.xml:234
msgid "Paste the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:291
+#: doc/classes/TextEdit.xml:241
msgid "Perform redo operation."
msgstr ""
-#: doc/classes/TextEdit.xml:298
+#: doc/classes/TextEdit.xml:248
msgid ""
"Removes all the breakpoints. This will not fire the [signal "
"breakpoint_toggled] signal."
msgstr ""
-#: doc/classes/TextEdit.xml:313
+#: doc/classes/TextEdit.xml:263
msgid ""
"Perform a search inside the text. Search flags can be specified in the [enum "
"SearchFlags] enum.\n"
@@ -49816,244 +50756,265 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/TextEdit.xml:336
-msgid "Perform selection, from line/column to line/column."
+#: doc/classes/TextEdit.xml:286
+msgid ""
+"Perform selection, from line/column to line/column.\n"
+"If [member selecting_enabled] is [code]false[/code], no selection will occur."
msgstr ""
-#: doc/classes/TextEdit.xml:343
-msgid "Select all the text."
+#: doc/classes/TextEdit.xml:294
+msgid ""
+"Select all the text.\n"
+"If [member selecting_enabled] is [code]false[/code], no selection will occur."
msgstr ""
-#: doc/classes/TextEdit.xml:354
+#: doc/classes/TextEdit.xml:306
msgid "Sets the text for a specific line."
msgstr ""
-#: doc/classes/TextEdit.xml:365
+#: doc/classes/TextEdit.xml:317
msgid "If [code]true[/code], hides the line of the specified index."
msgstr ""
-#: doc/classes/TextEdit.xml:374
+#: doc/classes/TextEdit.xml:326
msgid "Toggle the folding of the code block at the given line."
msgstr ""
-#: doc/classes/TextEdit.xml:381
+#: doc/classes/TextEdit.xml:333
msgid "Perform undo operation."
msgstr ""
-#: doc/classes/TextEdit.xml:390
+#: doc/classes/TextEdit.xml:342
msgid "Unfolds the given line, if folded."
msgstr ""
-#: doc/classes/TextEdit.xml:397
+#: doc/classes/TextEdit.xml:349
msgid ""
"Unhide all lines that were previously set to hidden by [method "
"set_line_as_hidden]."
msgstr ""
-#: doc/classes/TextEdit.xml:403
+#: doc/classes/TextEdit.xml:355
msgid "If [code]true[/code], the breakpoint gutter is visible."
msgstr ""
-#: doc/classes/TextEdit.xml:412
+#: doc/classes/TextEdit.xml:364
msgid ""
"If [code]true[/code], the caret displays as a rectangle.\n"
"If [code]false[/code], the caret displays as a bar."
msgstr ""
-#: doc/classes/TextEdit.xml:416
+#: doc/classes/TextEdit.xml:368
msgid ""
"If [code]true[/code], a right-click moves the cursor at the mouse position "
"before displaying the context menu.\n"
"If [code]false[/code], the context menu disregards mouse location."
msgstr ""
-#: doc/classes/TextEdit.xml:420
+#: doc/classes/TextEdit.xml:372
msgid "If [code]true[/code], a right-click displays the context menu."
msgstr ""
-#: doc/classes/TextEdit.xml:423
+#: doc/classes/TextEdit.xml:375
msgid ""
"If [code]true[/code], the \"space\" character will have a visible "
"representation."
msgstr ""
-#: doc/classes/TextEdit.xml:426
+#: doc/classes/TextEdit.xml:378
msgid ""
"If [code]true[/code], the \"tab\" character will have a visible "
"representation."
msgstr ""
-#: doc/classes/TextEdit.xml:430
+#: doc/classes/TextEdit.xml:382
msgid ""
"If [code]true[/code], the fold gutter is visible. This enables folding "
"groups of indented lines."
msgstr ""
-#: doc/classes/TextEdit.xml:433
+#: doc/classes/TextEdit.xml:385
msgid ""
"If [code]true[/code], all lines that have been set to hidden by [method "
"set_line_as_hidden], will not be visible."
msgstr ""
-#: doc/classes/TextEdit.xml:436
+#: doc/classes/TextEdit.xml:388
msgid ""
"If [code]true[/code], all occurrences of the selected text will be "
"highlighted."
msgstr ""
-#: doc/classes/TextEdit.xml:439
+#: doc/classes/TextEdit.xml:391
msgid "If [code]true[/code], the line containing the cursor is highlighted."
msgstr ""
-#: doc/classes/TextEdit.xml:447
+#: doc/classes/TextEdit.xml:394
+msgid ""
+"If [code]true[/code], a minimap is shown, providing an outline of your "
+"source code."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:397
+msgid "The width, in pixels, of the minimap."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:401
msgid ""
"If [code]true[/code], custom [code]font_color_selected[/code] will be used "
"for selected text."
msgstr ""
-#: doc/classes/TextEdit.xml:450
+#: doc/classes/TextEdit.xml:404
msgid ""
"If [code]true[/code], read-only mode is enabled. Existing text cannot be "
"modified and new text cannot be added."
msgstr ""
-#: doc/classes/TextEdit.xml:463
+#: doc/classes/TextEdit.xml:413
msgid ""
-"If [code]true[/code], line numbers are displayed to the left of the text."
+"If [code]true[/code], text can be selected.\n"
+"If [code]false[/code], text can not be selected by the user or by the "
+"[method select] or [method select_all] methods."
msgstr ""
-#: doc/classes/TextEdit.xml:466
+#: doc/classes/TextEdit.xml:417
msgid ""
-"If [code]true[/code], sets the [code]step[/code] of the scrollbars to "
-"[code]0.25[/code] which results in smoother scrolling."
+"If [code]true[/code], shortcut keys for context menu items are enabled, even "
+"if the context menu is disabled."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:420
+msgid ""
+"If [code]true[/code], line numbers are displayed to the left of the text."
msgstr ""
-#: doc/classes/TextEdit.xml:469
+#: doc/classes/TextEdit.xml:423
msgid ""
-"If [code]true[/code], any custom color properties that have been set for "
-"this [TextEdit] will be visible."
+"If [code]true[/code], sets the [code]step[/code] of the scrollbars to "
+"[code]0.25[/code] which results in smoother scrolling."
msgstr ""
-#: doc/classes/TextEdit.xml:472
+#: doc/classes/TextEdit.xml:428
msgid "String value of the [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:475
+#: doc/classes/TextEdit.xml:431
msgid "Vertical scroll sensitivity."
msgstr ""
-#: doc/classes/TextEdit.xml:478
+#: doc/classes/TextEdit.xml:437
msgid ""
"If [code]true[/code], enables text wrapping when it goes beyond the edge of "
"what is visible."
msgstr ""
-#: doc/classes/TextEdit.xml:486
+#: doc/classes/TextEdit.xml:445
msgid "Emitted when a breakpoint is placed via the breakpoint gutter."
msgstr ""
-#: doc/classes/TextEdit.xml:491
+#: doc/classes/TextEdit.xml:450
msgid "Emitted when the cursor changes."
msgstr ""
-#: doc/classes/TextEdit.xml:500
+#: doc/classes/TextEdit.xml:459
msgid "Emitted when the info icon is clicked."
msgstr ""
-#: doc/classes/TextEdit.xml:531
+#: doc/classes/TextEdit.xml:496
msgid "Match case when searching."
msgstr ""
-#: doc/classes/TextEdit.xml:534
+#: doc/classes/TextEdit.xml:499
msgid "Match whole words when searching."
msgstr ""
-#: doc/classes/TextEdit.xml:537
+#: doc/classes/TextEdit.xml:502
msgid "Search from end to beginning."
msgstr ""
-#: doc/classes/TextEdit.xml:546
+#: doc/classes/TextEdit.xml:511
msgid ""
"Pastes the clipboard text over the selected text (or at the cursor's "
"position)."
msgstr ""
-#: doc/classes/TextEdit.xml:549
+#: doc/classes/TextEdit.xml:514
msgid "Erases the whole [TextEdit] text."
msgstr ""
-#: doc/classes/TextEdit.xml:552
+#: doc/classes/TextEdit.xml:517
msgid "Selects the whole [TextEdit] text."
msgstr ""
-#: doc/classes/TextEdit.xml:558
+#: doc/classes/TextEdit.xml:523
msgid "Redoes the previous action."
msgstr ""
-#: doc/classes/TextEdit.xml:566
+#: doc/classes/TextEdit.xml:531
msgid ""
"Sets the background [Color] of this [TextEdit]. [member syntax_highlighting] "
"has to be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:569
+#: doc/classes/TextEdit.xml:534
msgid ""
"Sets the [Color] of the bookmark marker. [member syntax_highlighting] has to "
"be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:574 doc/classes/TextEdit.xml:601
+#: doc/classes/TextEdit.xml:539 doc/classes/TextEdit.xml:566
msgid ""
"Sets the [Color] of the breakpoints. [member breakpoint_gutter] has to be "
"enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:612
+#: doc/classes/TextEdit.xml:577
msgid "Sets the default [Font]."
msgstr ""
-#: doc/classes/TextEdit.xml:615
+#: doc/classes/TextEdit.xml:580
msgid "Sets the font [Color]."
msgstr ""
-#: doc/classes/TextEdit.xml:620
+#: doc/classes/TextEdit.xml:585
msgid ""
"Sets the [Color] of the selected text. [member override_selected_font_color] "
"has to be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:625
+#: doc/classes/TextEdit.xml:588
msgid ""
"Sets the [Color] of the line numbers. [member show_line_numbers] has to be "
"enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:628
+#: doc/classes/TextEdit.xml:591
msgid "Sets the spacing between the lines."
msgstr ""
-#: doc/classes/TextEdit.xml:631
+#: doc/classes/TextEdit.xml:594
msgid "Sets the [Color] of marked text."
msgstr ""
-#: doc/classes/TextEdit.xml:636
+#: doc/classes/TextEdit.xml:597
msgid "Sets the [StyleBox] of this [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:641
+#: doc/classes/TextEdit.xml:600
msgid ""
"Sets the [StyleBox] of this [TextEdit] when [member readonly] is enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:646
+#: doc/classes/TextEdit.xml:605
msgid "Sets the highlight [Color] of text selections."
msgstr ""
-#: doc/classes/TextEdit.xml:653
+#: doc/classes/TextEdit.xml:610
msgid "Sets a custom [Texture2D] for tab text characters."
msgstr ""
-#: doc/classes/TextEdit.xml:656
+#: doc/classes/TextEdit.xml:613
msgid ""
"Sets the highlight [Color] of multiple occurrences. [member "
"highlight_all_occurrences] has to be enabled."
@@ -50131,80 +51092,80 @@ msgid ""
"the texture will not scale with the node."
msgstr ""
-#: doc/classes/TextureButton.xml:19
+#: doc/classes/TextureButton.xml:25
msgid ""
"Controls the texture's behavior when you resize the node's bounding "
"rectangle, [b]only if[/b] [member expand] is [code]true[/code]. Set it to "
"one of the [enum StretchMode] constants. See the constants to learn more."
msgstr ""
-#: doc/classes/TextureButton.xml:22
+#: doc/classes/TextureButton.xml:28
msgid ""
"Pure black and white [BitMap] image to use for click detection. On the mask, "
"white pixels represent the button's clickable area. Use it to create buttons "
"with curved shapes."
msgstr ""
-#: doc/classes/TextureButton.xml:25
+#: doc/classes/TextureButton.xml:31
msgid ""
"Texture to display when the node is disabled. See [member BaseButton."
"disabled]."
msgstr ""
-#: doc/classes/TextureButton.xml:28
+#: doc/classes/TextureButton.xml:34
msgid "Texture to display when the node has mouse or keyboard focus."
msgstr ""
-#: doc/classes/TextureButton.xml:31
+#: doc/classes/TextureButton.xml:37
msgid "Texture to display when the mouse hovers the node."
msgstr ""
-#: doc/classes/TextureButton.xml:34
+#: doc/classes/TextureButton.xml:40
msgid ""
"Texture to display by default, when the node is [b]not[/b] in the disabled, "
"focused, hover or pressed state."
msgstr ""
-#: doc/classes/TextureButton.xml:37
+#: doc/classes/TextureButton.xml:43
msgid ""
"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 "
"[member BaseButton.shortcut] key."
msgstr ""
-#: doc/classes/TextureButton.xml:42 doc/classes/TextureRect.xml:36
+#: doc/classes/TextureButton.xml:48 doc/classes/TextureRect.xml:36
msgid "Scale to fit the node's bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:45 doc/classes/TextureRect.xml:39
+#: doc/classes/TextureButton.xml:51 doc/classes/TextureRect.xml:39
msgid "Tile inside the node's bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:48 doc/classes/TextureRect.xml:42
+#: doc/classes/TextureButton.xml:54 doc/classes/TextureRect.xml:42
msgid ""
"The texture keeps its original size and stays in the bounding rectangle's "
"top-left corner."
msgstr ""
-#: doc/classes/TextureButton.xml:51 doc/classes/TextureRect.xml:45
+#: doc/classes/TextureButton.xml:57 doc/classes/TextureRect.xml:45
msgid ""
"The texture keeps its original size and stays centered in the node's "
"bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:54 doc/classes/TextureRect.xml:48
+#: doc/classes/TextureButton.xml:60 doc/classes/TextureRect.xml:48
msgid ""
"Scale the texture to fit the node's bounding rectangle, but maintain the "
"texture's aspect ratio."
msgstr ""
-#: doc/classes/TextureButton.xml:57
+#: doc/classes/TextureButton.xml:63
msgid ""
"Scale the texture to fit the node's bounding rectangle, center it, and "
"maintain its aspect ratio."
msgstr ""
-#: doc/classes/TextureButton.xml:60 doc/classes/TextureRect.xml:54
+#: doc/classes/TextureButton.xml:66 doc/classes/TextureRect.xml:54
msgid ""
"Scale the texture so that the shorter side fits the bounding rectangle. The "
"other side clips to the node's limits."
@@ -50456,7 +51417,7 @@ msgstr ""
#: doc/classes/Theme.xml:11
msgid "https://docs.godotengine.org/en/latest/tutorials/gui/gui_skinning.html"
-msgstr ""
+msgstr "https://docs.godotengine.org/de/latest/tutorials/gui/gui_skinning.html"
#: doc/classes/Theme.xml:18
msgid "Clears all values on the theme."
@@ -50654,19 +51615,28 @@ msgid ""
"advised if working with shared objects."
msgstr ""
-#: doc/classes/Thread.xml:17
+#: doc/classes/Thread.xml:11
+#, fuzzy
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/threads/thread_safe_apis."
+"html"
+msgstr ""
+"https://docs.godotengine.org/de/latest/tutorials/threads/"
+"using_multiple_threads.html"
+
+#: doc/classes/Thread.xml:18
msgid ""
"Returns the current [Thread]'s ID, uniquely identifying it among all threads."
msgstr ""
-#: doc/classes/Thread.xml:24
+#: doc/classes/Thread.xml:25
msgid ""
"Returns [code]true[/code] if this [Thread] is currently active. An active "
"[Thread] cannot start work on a new method but can be joined with [method "
"wait_to_finish]."
msgstr ""
-#: doc/classes/Thread.xml:39
+#: doc/classes/Thread.xml:40
msgid ""
"Starts a new [Thread] that runs [code]method[/code] on object "
"[code]instance[/code] with [code]userdata[/code] passed as an argument. Even "
@@ -50676,21 +51646,21 @@ msgid ""
"Returns [constant OK] on success, or [constant ERR_CANT_CREATE] on failure."
msgstr ""
-#: doc/classes/Thread.xml:47
+#: doc/classes/Thread.xml:48
msgid ""
"Joins the [Thread] and waits for it to finish. Returns what the method "
"called returned."
msgstr ""
-#: doc/classes/Thread.xml:53
+#: doc/classes/Thread.xml:54
msgid "A thread running with lower priority than normally."
msgstr ""
-#: doc/classes/Thread.xml:56
+#: doc/classes/Thread.xml:57
msgid "A thread with a standard priority."
msgstr ""
-#: doc/classes/Thread.xml:59
+#: doc/classes/Thread.xml:60
msgid "A thread running with higher priority than normally."
msgstr ""
@@ -50708,6 +51678,7 @@ msgstr ""
#: doc/classes/TileMap.xml:10
msgid "https://docs.godotengine.org/en/latest/tutorials/2d/using_tilemaps.html"
msgstr ""
+"https://docs.godotengine.org/de/latest/tutorials/2d/using_tilemaps.html"
#: doc/classes/TileMap.xml:17
msgid "Clears all cells."
@@ -51226,50 +52197,61 @@ msgid "Returns the [Transform2D] of a tile's shape."
msgstr ""
#: doc/classes/TileSet.xml:481
-msgid "Returns an array of the tile's shapes."
+msgid ""
+"Returns an array of dictionaries describing the tile's shapes.\n"
+"[b]Dictionary structure in the array returned by this method:[/b]\n"
+"[codeblock]\n"
+"{\n"
+" \"autotile_coord\": Vector2,\n"
+" \"one_way\": bool,\n"
+" \"one_way_margin\": int,\n"
+" \"shape\": CollisionShape2D,\n"
+" \"shape_transform\": Transform2D,\n"
+"}\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/TileSet.xml:490
+#: doc/classes/TileSet.xml:500
msgid "Returns the tile's texture."
msgstr ""
-#: doc/classes/TileSet.xml:499
+#: doc/classes/TileSet.xml:509
msgid "Returns the texture offset of the tile."
msgstr ""
-#: doc/classes/TileSet.xml:508
+#: doc/classes/TileSet.xml:518
msgid "Returns the tile's [enum TileMode]."
msgstr ""
-#: doc/classes/TileSet.xml:517
+#: doc/classes/TileSet.xml:527
msgid "Returns the tile's Z index (drawing layer)."
msgstr ""
-#: doc/classes/TileSet.xml:528
+#: doc/classes/TileSet.xml:538
msgid "Sets a light occluder for the tile."
msgstr ""
-#: doc/classes/TileSet.xml:539
+#: doc/classes/TileSet.xml:549
msgid "Sets the tile's material."
msgstr ""
-#: doc/classes/TileSet.xml:550
+#: doc/classes/TileSet.xml:560
msgid "Sets the tile's modulation color."
msgstr ""
-#: doc/classes/TileSet.xml:561
+#: doc/classes/TileSet.xml:571
msgid "Sets the tile's name."
msgstr ""
-#: doc/classes/TileSet.xml:572
+#: doc/classes/TileSet.xml:582
msgid "Sets the tile's navigation polygon."
msgstr ""
-#: doc/classes/TileSet.xml:583
+#: doc/classes/TileSet.xml:593
msgid "Sets an offset for the tile's navigation polygon."
msgstr ""
-#: doc/classes/TileSet.xml:594
+#: doc/classes/TileSet.xml:604
msgid ""
"Sets the tile's normal map texture.\n"
"[b]Note:[/b] Godot expects the normal map to use X+, Y-, and Z+ coordinates. "
@@ -51278,48 +52260,48 @@ msgid ""
"a comparison of normal map coordinates expected by popular engines."
msgstr ""
-#: doc/classes/TileSet.xml:606
+#: doc/classes/TileSet.xml:616
msgid "Sets an offset for the tile's light occluder."
msgstr ""
-#: doc/classes/TileSet.xml:617
+#: doc/classes/TileSet.xml:627
msgid ""
"Sets the tile's sub-region in the texture. This is common in texture atlases."
msgstr ""
-#: doc/classes/TileSet.xml:630
+#: doc/classes/TileSet.xml:640
msgid "Sets a shape for the tile, enabling collision."
msgstr ""
-#: doc/classes/TileSet.xml:643
+#: doc/classes/TileSet.xml:653
msgid "Sets the offset of a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:656
+#: doc/classes/TileSet.xml:666
msgid "Enables one-way collision on a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:681
+#: doc/classes/TileSet.xml:691
msgid "Sets a [Transform2D] on a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:692
+#: doc/classes/TileSet.xml:702
msgid "Sets an array of shapes for the tile, enabling collision."
msgstr ""
-#: doc/classes/TileSet.xml:703
+#: doc/classes/TileSet.xml:713
msgid "Sets the tile's texture."
msgstr ""
-#: doc/classes/TileSet.xml:714
+#: doc/classes/TileSet.xml:724
msgid "Sets the tile's texture offset."
msgstr ""
-#: doc/classes/TileSet.xml:725
+#: doc/classes/TileSet.xml:735
msgid "Sets the tile's [enum TileMode]."
msgstr ""
-#: doc/classes/TileSet.xml:736
+#: doc/classes/TileSet.xml:746
msgid "Sets the tile's drawing index."
msgstr ""
@@ -51330,14 +52312,16 @@ msgstr ""
#: doc/classes/Timer.xml:7
msgid ""
"Counts down a specified interval and emits a signal on reaching 0. Can be "
-"set to repeat or \"one-shot\" mode."
+"set to repeat or \"one-shot\" mode.\n"
+"[b]Note:[/b] To create an one-shot timer without instantiating a node, use "
+"[method SceneTree.create_timer]."
msgstr ""
-#: doc/classes/Timer.xml:16
+#: doc/classes/Timer.xml:17
msgid "Returns [code]true[/code] if the timer is stopped."
msgstr ""
-#: doc/classes/Timer.xml:25
+#: doc/classes/Timer.xml:26
msgid ""
"Starts the timer. Sets [code]wait_time[/code] to [code]time_sec[/code] if "
"[code]time_sec > 0[/code]. This also resets the remaining time to "
@@ -51345,11 +52329,11 @@ msgid ""
"[b]Note:[/b] this method will not resume a paused timer. See [member paused]."
msgstr ""
-#: doc/classes/Timer.xml:33
+#: doc/classes/Timer.xml:34
msgid "Stops the timer."
msgstr ""
-#: doc/classes/Timer.xml:39
+#: doc/classes/Timer.xml:40
msgid ""
"If [code]true[/code], the timer will automatically start when entering the "
"scene tree.\n"
@@ -51357,40 +52341,40 @@ msgid ""
"the timer enters the scene tree and starts."
msgstr ""
-#: doc/classes/Timer.xml:43
+#: doc/classes/Timer.xml:44
msgid ""
"If [code]true[/code], the timer will stop when reaching 0. If [code]false[/"
"code], it will restart."
msgstr ""
-#: doc/classes/Timer.xml:46
+#: doc/classes/Timer.xml:47
msgid ""
"If [code]true[/code], the timer is paused and will not process until it is "
"unpaused again, even if [method start] is called."
msgstr ""
-#: doc/classes/Timer.xml:49
+#: doc/classes/Timer.xml:50
msgid "Processing mode. See [enum TimerProcessMode]."
msgstr ""
-#: doc/classes/Timer.xml:52
+#: doc/classes/Timer.xml:53
msgid ""
"The timer's remaining time in seconds. Returns 0 if the timer is inactive.\n"
"[b]Note:[/b] You cannot set this value. To change the timer's remaining "
"time, use [method start]."
msgstr ""
-#: doc/classes/Timer.xml:56
+#: doc/classes/Timer.xml:57
msgid "Wait time in seconds."
msgstr ""
-#: doc/classes/Timer.xml:68
+#: doc/classes/Timer.xml:69
msgid ""
"Update the timer during the physics step at each frame (fixed framerate "
"processing)."
msgstr ""
-#: doc/classes/Timer.xml:71
+#: doc/classes/Timer.xml:72
msgid "Update the timer during the idle time at each frame."
msgstr ""
@@ -51469,60 +52453,68 @@ msgstr ""
#: doc/classes/Transform.xml:7
msgid ""
-"Represents one or many transformations in 3D space such as translation, "
-"rotation, or scaling. It consists of a [member basis] and an [member "
-"origin]. It is similar to a 3×4 matrix."
+"3×4 matrix (3 rows, 4 columns) used for 3D linear transformations. It can "
+"represent transformations such as translation, rotation, or scaling. It "
+"consists of a [member basis] (first 3 columns) and a [Vector3] for the "
+"[member origin] (last column).\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
msgstr ""
-#: doc/classes/Transform.xml:26
+#: doc/classes/Transform.xml:28
msgid ""
-"Constructs the Transform from four [Vector3]. Each axis corresponds to local "
-"basis vectors (some of which may be scaled)."
+"Constructs a Transform from four [Vector3] values (matrix columns). Each "
+"axis corresponds to local basis vectors (some of which may be scaled)."
msgstr ""
-#: doc/classes/Transform.xml:37
-msgid "Constructs the Transform from a [Basis] and [Vector3]."
-msgstr ""
+#: doc/classes/Transform.xml:39
+#, fuzzy
+msgid "Constructs a Transform from a [Basis] and [Vector3]."
+msgstr "Erzeugt einen neuen [Vector2] aus einem [Vector2i]."
-#: doc/classes/Transform.xml:46
-msgid "Constructs the Transform from a [Transform2D]."
-msgstr ""
+#: doc/classes/Transform.xml:48
+#, fuzzy
+msgid "Constructs a Transform from a [Transform2D]."
+msgstr "Erzeugt einen neuen [Vector2] aus einem [Vector2i]."
-#: doc/classes/Transform.xml:55
+#: doc/classes/Transform.xml:57
msgid ""
-"Constructs the Transform from a [Quat]. The origin will be Vector3(0, 0, 0)."
+"Constructs a Transform from a [Quat]. The origin will be [code]Vector3(0, 0, "
+"0)[/code]."
msgstr ""
-#: doc/classes/Transform.xml:64
+#: doc/classes/Transform.xml:66
msgid ""
"Constructs the Transform from a [Basis]. The origin will be Vector3(0, 0, 0)."
msgstr ""
-#: doc/classes/Transform.xml:71
+#: doc/classes/Transform.xml:73 doc/classes/Transform2D.xml:51
msgid ""
"Returns the inverse of the transform, under the assumption that the "
"transformation is composed of rotation, scaling and translation."
msgstr ""
-#: doc/classes/Transform.xml:82
-msgid "Interpolates the transform to other Transform by weight amount (0-1)."
+#: doc/classes/Transform.xml:84
+msgid ""
+"Interpolates the transform to other Transform by weight amount (on the range "
+"of 0.0 to 1.0)."
msgstr ""
-#: doc/classes/Transform.xml:89 doc/classes/Transform2D.xml:106
+#: doc/classes/Transform.xml:91
msgid ""
"Returns the inverse of the transform, under the assumption that the "
"transformation is composed of rotation and translation (no scaling, use "
"affine_inverse for transforms with scaling)."
msgstr ""
-#: doc/classes/Transform.xml:98 doc/classes/Transform2D.xml:115
+#: doc/classes/Transform.xml:100 doc/classes/Transform2D.xml:119
msgid ""
"Returns [code]true[/code] if this transform and [code]transform[/code] are "
"approximately equal, by calling [code]is_equal_approx[/code] on each "
"component."
msgstr ""
-#: doc/classes/Transform.xml:109
+#: doc/classes/Transform.xml:111
msgid ""
"Returns a copy of the transform rotated such that its -Z axis points towards "
"the [code]target[/code] position.\n"
@@ -51532,25 +52524,25 @@ msgid ""
"Operations take place in global space."
msgstr ""
-#: doc/classes/Transform.xml:118 doc/classes/Transform2D.xml:122
+#: doc/classes/Transform.xml:120
msgid ""
"Returns the transform with the basis orthogonal (90 degrees), and normalized "
"axis vectors."
msgstr ""
-#: doc/classes/Transform.xml:129
+#: doc/classes/Transform.xml:131
msgid ""
"Rotates the transform around the given axis by the given angle (in radians), "
"using matrix multiplication. The axis must be a normalized vector."
msgstr ""
-#: doc/classes/Transform.xml:138
+#: doc/classes/Transform.xml:140
msgid ""
"Scales basis and origin of the transform by the given scale factor, using "
"matrix multiplication."
msgstr ""
-#: doc/classes/Transform.xml:147 doc/classes/Transform2D.xml:149
+#: doc/classes/Transform.xml:149 doc/classes/Transform2D.xml:153
msgid ""
"Translates the transform by the given offset, relative to the transform's "
"basis vectors.\n"
@@ -51558,157 +52550,167 @@ msgid ""
"multiplication."
msgstr ""
-#: doc/classes/Transform.xml:157
+#: doc/classes/Transform.xml:159
msgid ""
"Transforms the given [Vector3], [Plane], [AABB], or [PackedVector3Array] by "
"this transform."
msgstr ""
-#: doc/classes/Transform.xml:166
+#: doc/classes/Transform.xml:168
msgid ""
"Inverse-transforms the given [Vector3], [Plane], [AABB], or "
"[PackedVector3Array] by this transform."
msgstr ""
-#: doc/classes/Transform.xml:172
+#: doc/classes/Transform.xml:174
msgid ""
"The basis is a matrix containing 3 [Vector3] as its columns: X axis, Y axis, "
"and Z axis. These vectors can be interpreted as the basis vectors of local "
"coordinate system traveling with the object."
msgstr ""
-#: doc/classes/Transform.xml:175
-msgid "The translation offset of the transform."
+#: doc/classes/Transform.xml:177
+msgid ""
+"The translation offset of the transform (column 3, the fourth column). "
+"Equivalent to array index [code]3[/code]."
msgstr ""
-#: doc/classes/Transform.xml:180
+#: doc/classes/Transform.xml:182
msgid ""
"[Transform] with no translation, rotation or scaling applied. When applied "
"to other data structures, [constant IDENTITY] performs no transformation."
msgstr ""
-#: doc/classes/Transform.xml:183
+#: doc/classes/Transform.xml:185
msgid "[Transform] with mirroring applied perpendicular to the YZ plane."
msgstr ""
-#: doc/classes/Transform.xml:186
+#: doc/classes/Transform.xml:188
msgid "[Transform] with mirroring applied perpendicular to the XZ plane."
msgstr ""
-#: doc/classes/Transform.xml:189
+#: doc/classes/Transform.xml:191
msgid "[Transform] with mirroring applied perpendicular to the XY plane."
msgstr ""
#: doc/classes/Transform2D.xml:4
-msgid "2D transformation (3×2 matrix)."
+msgid "2D transformation (2×3 matrix)."
msgstr ""
#: doc/classes/Transform2D.xml:7
msgid ""
-"Represents one or many transformations in 2D space such as translation, "
-"rotation, or scaling. It consists of two [member x] and [member y] "
-"[Vector2]s and an [member origin]. It is similar to a 3×2 matrix."
+"2×3 matrix (2 rows, 3 columns) used for 2D linear transformations. It can "
+"represent transformations such as translation, rotation, or scaling. It "
+"consists of a three [Vector2] values: [member x], [member y], and the "
+"[member origin].\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
msgstr ""
-#: doc/classes/Transform2D.xml:18
+#: doc/classes/Transform2D.xml:20
msgid "Constructs the transform from a 3D [Transform]."
msgstr ""
-#: doc/classes/Transform2D.xml:31
+#: doc/classes/Transform2D.xml:33
msgid ""
-"Constructs the transform from 3 [Vector2]s representing x, y, and origin."
+"Constructs the transform from 3 [Vector2] values representing [member x], "
+"[member y], and the [member origin] (the three column vectors)."
msgstr ""
-#: doc/classes/Transform2D.xml:42
+#: doc/classes/Transform2D.xml:44
msgid "Constructs the transform from a given angle (in radians) and position."
msgstr ""
-#: doc/classes/Transform2D.xml:58
-msgid "Transforms the given vector by this transform's basis (no translation)."
+#: doc/classes/Transform2D.xml:60
+msgid ""
+"Returns a vector transformed (multiplied) by the basis matrix.\n"
+"This method does not account for translation (the origin vector)."
msgstr ""
-#: doc/classes/Transform2D.xml:67
+#: doc/classes/Transform2D.xml:70
msgid ""
-"Inverse-transforms the given vector by this transform's basis (no "
-"translation)."
+"Returns a vector transformed (multiplied) by the inverse basis matrix.\n"
+"This method does not account for translation (the origin vector)."
msgstr ""
-#: doc/classes/Transform2D.xml:74
+#: doc/classes/Transform2D.xml:78
msgid "Returns the transform's origin (translation)."
msgstr ""
-#: doc/classes/Transform2D.xml:81
+#: doc/classes/Transform2D.xml:85
msgid "Returns the transform's rotation (in radians)."
msgstr ""
-#: doc/classes/Transform2D.xml:88
+#: doc/classes/Transform2D.xml:92
msgid "Returns the scale."
msgstr ""
-#: doc/classes/Transform2D.xml:99
+#: doc/classes/Transform2D.xml:103
msgid ""
"Returns a transform interpolated between this transform and another by a "
-"given weight (0-1)."
+"given weight (on the range of 0.0 to 1.0)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:110
+msgid ""
+"Returns the inverse of the transform, under the assumption that the "
+"transformation is composed of rotation and translation (no scaling, use "
+"[method affine_inverse] for transforms with scaling)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:126
+msgid ""
+"Returns the transform with the basis orthogonal (90 degrees), and normalized "
+"axis vectors (scale of 1 or -1)."
msgstr ""
-#: doc/classes/Transform2D.xml:131
+#: doc/classes/Transform2D.xml:135
msgid ""
"Rotates the transform by the given angle (in radians), using matrix "
"multiplication."
msgstr ""
-#: doc/classes/Transform2D.xml:140
+#: doc/classes/Transform2D.xml:144
msgid ""
"Scales the transform by the given scale factor, using matrix multiplication."
msgstr ""
-#: doc/classes/Transform2D.xml:159
+#: doc/classes/Transform2D.xml:163
msgid ""
"Transforms the given [Vector2], [Rect2], or [PackedVector2Array] by this "
"transform."
msgstr ""
-#: doc/classes/Transform2D.xml:168
+#: doc/classes/Transform2D.xml:172
msgid ""
"Inverse-transforms the given [Vector2], [Rect2], or [PackedVector2Array] by "
"this transform."
msgstr ""
-#: doc/classes/Transform2D.xml:174
-msgid "The transform's translation offset."
-msgstr ""
-
-#: doc/classes/Transform2D.xml:177
-msgid ""
-"The X axis of 2×2 basis matrix containing 2 [Vector2]s as its columns: X "
-"axis and Y axis. These vectors can be interpreted as the basis vectors of "
-"local coordinate system traveling with the object."
-msgstr ""
-
-#: doc/classes/Transform2D.xml:180
+#: doc/classes/Transform2D.xml:178
msgid ""
-"The Y axis of 2×2 basis matrix containing 2 [Vector2]s as its columns: X "
-"axis and Y axis. These vectors can be interpreted as the basis vectors of "
-"local coordinate system traveling with the object."
+"The origin vector (column 2, the third column). Equivalent to array index "
+"[code]2[/code]. The origin vector represents translation."
msgstr ""
-#: doc/classes/Transform2D.xml:185
+#: doc/classes/Transform2D.xml:189
msgid ""
-"[Transform2D] with no translation, rotation or scaling applied. When applied "
-"to other data structures, [constant IDENTITY] performs no transformation."
+"The identity [Transform2D] with no translation, rotation or scaling applied. "
+"When applied to other data structures, [constant IDENTITY] performs no "
+"transformation."
msgstr ""
-#: doc/classes/Transform2D.xml:188
-msgid "[Transform2D] with mirroring applied parallel to the X axis."
+#: doc/classes/Transform2D.xml:192
+msgid "The [Transform2D] that will flip something along the X axis."
msgstr ""
-#: doc/classes/Transform2D.xml:191
-msgid "[Transform2D] with mirroring applied parallel to the Y axis."
+#: doc/classes/Transform2D.xml:195
+msgid "The [Transform2D] that will flip something along the Y axis."
msgstr ""
#: doc/classes/Translation.xml:4
msgid "Language Translation."
-msgstr ""
+msgstr "Sprachübersetzung."
#: doc/classes/Translation.xml:7
msgid ""
@@ -51721,10 +52723,12 @@ msgid ""
"https://docs.godotengine.org/en/latest/tutorials/i18n/"
"internationalizing_games.html"
msgstr ""
+"https://docs.godotengine.org/de/latest/tutorials/i18n/"
+"internationalizing_games.html"
#: doc/classes/Translation.xml:11 doc/classes/TranslationServer.xml:11
msgid "https://docs.godotengine.org/en/latest/tutorials/i18n/locales.html"
-msgstr ""
+msgstr "https://docs.godotengine.org/de/latest/tutorials/i18n/locales.html"
#: doc/classes/Translation.xml:22
msgid "Adds a message if nonexistent, followed by its translation."
@@ -52367,7 +53371,8 @@ msgid "Returns the column's cell mode."
msgstr ""
#: doc/classes/TreeItem.xml:121
-msgid "Returns the TreeItem's child items."
+msgid ""
+"Returns the TreeItem's first child item or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:130
@@ -52399,28 +53404,32 @@ msgid "Returns the icon [Texture2D] region as [Rect2]."
msgstr ""
#: doc/classes/TreeItem.xml:199
-msgid "Returns the next TreeItem in the tree."
+msgid ""
+"Returns the next TreeItem in the tree or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:208
msgid ""
-"Returns the next visible TreeItem in the tree.\n"
+"Returns the next visible TreeItem in the tree or a null object if there is "
+"none.\n"
"If [code]wrap[/code] is enabled, the method will wrap around to the first "
"visible element in the tree when called on the last visible element, "
"otherwise it returns [code]null[/code]."
msgstr ""
#: doc/classes/TreeItem.xml:216
-msgid "Returns the parent TreeItem."
+msgid "Returns the parent TreeItem or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:223
-msgid "Returns the previous TreeItem in the tree."
+msgid ""
+"Returns the previous TreeItem in the tree or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:232
msgid ""
-"Returns the previous visible TreeItem in the tree.\n"
+"Returns the previous visible TreeItem in the tree or a null object if there "
+"is none.\n"
"If [code]wrap[/code] is enabled, the method will wrap around to the last "
"visible element in the tree when called on the first visible element, "
"otherwise it returns [code]null[/code]."
@@ -52930,6 +53939,10 @@ msgid ""
"A simple server that opens a UDP socket and returns connected "
"[PacketPeerUDP] upon receiving new packets. See also [method PacketPeerUDP."
"connect_to_host].\n"
+"After starting the server ([method listen]), you will need to [method poll] "
+"it at regular intervals (e.g. inside [method Node._process]) for it to "
+"process new packets, delivering them to the appropriate [PacketPeerUDP], and "
+"taking new connections.\n"
"Below a small example of how it can be used:\n"
"[codeblock]\n"
"# server.gd\n"
@@ -52942,6 +53955,7 @@ msgid ""
" server.listen(4242)\n"
"\n"
"func _process(delta):\n"
+" server.poll() # Important!\n"
" if server.is_connection_available():\n"
" var peer : PacketPeerUDP = server.take_connection()\n"
" var pkt = peer.get_packet()\n"
@@ -52977,35 +53991,58 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/UDPServer.xml:60
+#: doc/classes/UDPServer.xml:62
+#, fuzzy
msgid ""
-"Returns [code]true[/code] if a packet with a new address/port combination is "
-"received on the socket."
+"Returns [code]true[/code] if a packet with a new address/port combination "
+"was received on the socket."
msgstr ""
+"Gibt [code]true[/code] zurück wenn der Skript Bereich lädt, ansonsten "
+"[code]false[/code]."
-#: doc/classes/UDPServer.xml:67
+#: doc/classes/UDPServer.xml:69
msgid ""
"Returns [code]true[/code] if the socket is open and listening on a port."
msgstr ""
-#: doc/classes/UDPServer.xml:78
+#: doc/classes/UDPServer.xml:80
msgid ""
"Starts the server by opening a UDP socket listening on the given port. You "
"can optionally specify a [code]bind_address[/code] to only listen for "
"packets sent to that address. See also [method PacketPeerUDP.listen]."
msgstr ""
-#: doc/classes/UDPServer.xml:85
+#: doc/classes/UDPServer.xml:87
+msgid ""
+"Call this method at regular intervals (e.g. inside [method Node._process]) "
+"to process new packets. And packet from known address/port pair will be "
+"delivered to the appropriate [PacketPeerUDP], any packet received from an "
+"unknown address/port pair will be added as a pending connection (see [method "
+"is_connection_available], [method take_connection]). The maximum number of "
+"pending connection is defined via [member max_pending_connections]."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:94
+msgid ""
+"Stops the server, closing the UDP socket if open. Will close all connected "
+"[PacketPeerUDP] accepted via [method take_connection] (remote peers will not "
+"be notified)."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:101
msgid ""
-"Stops the server, closing the UDP socket if open. Will not disconnect any "
-"connected [PacketPeerUDP]."
+"Returns the first pending connection (connected to the appropriate address/"
+"port). Will return [code]null[/code] if no new connection is available. See "
+"also [method is_connection_available], [method PacketPeerUDP."
+"connect_to_host]."
msgstr ""
-#: doc/classes/UDPServer.xml:92
+#: doc/classes/UDPServer.xml:107
msgid ""
-"Returns a [PacketPeerUDP] connected to the address/port combination of the "
-"first packet in queue. Will return [code]null[/code] if no packet is in "
-"queue. See also [method PacketPeerUDP.connect_to_host]."
+"Define the maximum number of pending connections, during [method poll], any "
+"new pending connection exceeding that value will be automatically dropped. "
+"Setting this value to [code]0[/code] effectively prevents any new pending "
+"connection to be accepted (e.g. when all your players have connected)."
msgstr ""
#: doc/classes/UndoRedo.xml:4
@@ -53356,40 +54393,40 @@ msgstr ""
#: modules/upnp/doc_classes/UPNP.xml:197
msgid "Invalid gateway."
-msgstr ""
+msgstr "ungültiges Gateway."
#: modules/upnp/doc_classes/UPNP.xml:200
msgid "Invalid port."
-msgstr ""
+msgstr "ungültiger Port."
#: modules/upnp/doc_classes/UPNP.xml:203
msgid "Invalid protocol."
-msgstr ""
+msgstr "ungültiges Protokoll."
#: modules/upnp/doc_classes/UPNP.xml:206
msgid "Invalid duration."
-msgstr ""
+msgstr "ungültige Zeitdauer."
#: modules/upnp/doc_classes/UPNP.xml:209
msgid "Invalid arguments."
-msgstr ""
+msgstr "ungültiges Argument."
#: modules/upnp/doc_classes/UPNP.xml:212
msgid "Invalid response."
-msgstr ""
+msgstr "ungültige Antwort."
#: modules/upnp/doc_classes/UPNP.xml:215
msgid "Invalid parameter."
-msgstr ""
+msgstr "ungültiger Parameter."
#: modules/upnp/doc_classes/UPNP.xml:218
#: modules/upnp/doc_classes/UPNPDevice.xml:80
msgid "HTTP error."
-msgstr ""
+msgstr "HTTP Fehler."
#: modules/upnp/doc_classes/UPNP.xml:221
msgid "Socket error."
-msgstr ""
+msgstr "Socket Fehler."
#: modules/upnp/doc_classes/UPNP.xml:224
msgid "Error allocating memory."
@@ -53410,11 +54447,11 @@ msgstr ""
#: modules/upnp/doc_classes/UPNP.xml:233
#: modules/upnp/doc_classes/UPNPDevice.xml:104
msgid "Unknown error."
-msgstr ""
+msgstr "unbekannter Fehler."
#: modules/upnp/doc_classes/UPNPDevice.xml:4
msgid "UPNP device."
-msgstr ""
+msgstr "UPNP Gerät."
#: modules/upnp/doc_classes/UPNPDevice.xml:7
msgid ""
@@ -53473,11 +54510,11 @@ msgstr ""
#: modules/upnp/doc_classes/UPNPDevice.xml:72
msgid "Service type."
-msgstr ""
+msgstr "Service Typ."
#: modules/upnp/doc_classes/UPNPDevice.xml:77
msgid "OK."
-msgstr ""
+msgstr "OK."
#: modules/upnp/doc_classes/UPNPDevice.xml:83
msgid "Empty HTTP response."
@@ -53493,11 +54530,11 @@ msgstr ""
#: modules/upnp/doc_classes/UPNPDevice.xml:92
msgid "Disconnected."
-msgstr ""
+msgstr "getrennt."
#: modules/upnp/doc_classes/UPNPDevice.xml:95
msgid "Unknown device."
-msgstr ""
+msgstr "unbekanntes Gerät."
#: modules/upnp/doc_classes/UPNPDevice.xml:98
msgid "Invalid control."
@@ -53601,6 +54638,7 @@ msgstr ""
msgid ""
"https://docs.godotengine.org/en/latest/development/cpp/variant_class.html"
msgstr ""
+"https://docs.godotengine.org/de/latest/development/cpp/variant_class.html"
#: doc/classes/VBoxContainer.xml:4
msgid "Vertical box container."
@@ -53649,11 +54687,12 @@ msgstr ""
"Erzeugt einen neuen Vektor mit allen Komponenten als Beträge (also positiv)."
#: doc/classes/Vector2.xml:46
+#, fuzzy
msgid ""
-"Returns the vector's angle in radians with respect to the X axis, or [code]"
-"(1, 0)[/code] vector.\n"
+"Returns this vector's angle with respect to the X axis, or [code](1, 0)[/"
+"code] vector, in radians.\n"
"Equivalent to the result of [method @GDScript.atan2] when called with the "
-"vector's [member x] and [member y] as parameters: [code]atan2(x, y)[/code]."
+"vector's [member y] and [member x] as parameters: [code]atan2(y, x)[/code]."
msgstr ""
"Gibt den Winkel des Vektors zur x-Achse, bzw [code](1, 0)[/code], im "
"Bogenmaß zurück.\n"
@@ -53662,19 +54701,24 @@ msgstr ""
"[code]atan2(x, y)[/code]."
#: doc/classes/Vector2.xml:56
-msgid "Returns the angle in radians between the two vectors."
-msgstr "Gibt den Winkel zwischen zwei Vektoren im Bogenmaß zurück."
+#, fuzzy
+msgid "Returns the angle to the given vector, in radians."
+msgstr "Gibt den Rest einer Division zweier Vektoren zurück."
#: doc/classes/Vector2.xml:65
+#, fuzzy
msgid ""
-"Returns the angle in radians between the line connecting the two points and "
-"the X coordinate."
+"Returns the angle between the line connecting the two points and the X axis, "
+"in radians."
msgstr ""
"Gibt den Winkel zwischen der Linie, die die zwei Punkte verbindet, und der x-"
"Achse im Bogenmaß zurück."
-#: doc/classes/Vector2.xml:72 doc/classes/Vector2i.xml:46
-msgid "Returns the ratio of [member x] to [member y]."
+#: doc/classes/Vector2.xml:72
+#, fuzzy
+msgid ""
+"Returns the aspect ratio of this vector, the ratio of [member x] to [member "
+"y]."
msgstr "Gibt das Verhältnis von [member x] zu [member y] zurück."
#: doc/classes/Vector2.xml:81 doc/classes/Vector3.xml:59
@@ -53683,28 +54727,35 @@ msgid ""
msgstr "Gibt den Vektor reflektiert an der Ebene des Normalenvektors zurück."
#: doc/classes/Vector2.xml:88
-msgid "Returns the vector with all components rounded up."
+#, fuzzy
+msgid ""
+"Returns the vector with all components rounded up (towards positive "
+"infinity)."
msgstr ""
-"Gibt den Vektor zurück der entsteht wenn alle Komponenten aufgerundet werden."
+"Gibt den Vektor zurück der entsteht wenn alle Komponenten abgerundet werden."
#: doc/classes/Vector2.xml:97
-msgid "Returns the vector with a maximum length."
+#, fuzzy
+msgid ""
+"Returns the vector with a maximum length by limiting its length to "
+"[code]length[/code]."
msgstr ""
-"Gibt diesen Vektor, abgeschnitten auf die entsprechende Maximallänge, zurück."
+"Gibt den Vektor auf Einheitslänge skaliert zurück. Dh gibt den "
+"Einheitsvektor in die gleiche Richtung zurück. Entspricht [code]v / v."
+"length()[/code]."
#: doc/classes/Vector2.xml:106
-msgid ""
-"Returns the 2-dimensional analog of the cross product with the given vector."
-msgstr ""
-"Gibt das zweidimensionale Gegenstück zum Kreuzprodukt der gegeben Vektoren "
-"zurück."
+#, fuzzy
+msgid "Returns the cross product of this vector and [code]with[/code]."
+msgstr "Gibt das Skalarprodukt mit Vektor [code]b[/code] zurück."
#: doc/classes/Vector2.xml:121
+#, fuzzy
msgid ""
"Cubically interpolates between this vector and [code]b[/code] using "
"[code]pre_a[/code] and [code]post_b[/code] as handles, and returns the "
-"result at position [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation."
+"result at position [code]t[/code]. [code]t[/code] is on the range of 0.0 to "
+"1.0, representing the amount of interpolation."
msgstr ""
"Interpoliert kubisch zwischen diesem Vektor und [code]b[/code], wobei "
"[code]pre_a[/code] und [code]post_b[/code] als Griffe benutzt werden, und "
@@ -53717,31 +54768,47 @@ msgid ""
"Returns the normalized vector pointing from this vector to [code]b[/code]."
msgstr "Gibt den Einheitsvektor der von diesem zu [code]b[/code] zeigt zurück."
-#: doc/classes/Vector2.xml:139
+#: doc/classes/Vector2.xml:139 doc/classes/Vector3.xml:108
+#, fuzzy
msgid ""
-"Returns the squared distance to vector [code]b[/code]. Prefer this function "
-"over [method distance_to] if you need to sort vectors or need the squared "
-"distance for some formula."
+"Returns the squared distance between this vector and [code]b[/code].\n"
+"This method runs faster than [method distance_to], so prefer it if you need "
+"to compare vectors or need the squared distance for some formula."
msgstr ""
"Gibt den quadrierten Abstand zu Vektor [code]b[/code] zurück. Diese Funktion "
"ist aus Geschwindigkeitsgründen [method distance_to] vorzuziehen, wenn der "
"genaue Abstand nicht nötig ist, bspw beim Sortieren nach Abstand oder in "
"Formeln wo das Quadrat des Abstands vorkommt."
-#: doc/classes/Vector2.xml:148
-msgid "Returns the distance to vector [code]b[/code]."
+#: doc/classes/Vector2.xml:149
+#, fuzzy
+msgid "Returns the distance between this vector and [code]to[/code]."
msgstr "Gibt den Abstand zu Vektor [code]b[/code] zurück."
-#: doc/classes/Vector2.xml:157
-msgid "Returns the dot product with vector [code]b[/code]."
-msgstr "Gibt das Skalarprodukt mit Vektor [code]b[/code] zurück."
+#: doc/classes/Vector2.xml:158
+msgid ""
+"Returns the dot product of this vector and [code]with[/code]. This can be "
+"used to compare the angle between two vectors. For example, this can be used "
+"to determine whether an enemy is facing the player.\n"
+"The dot product will be [code]0[/code] for a straight angle (90 degrees), "
+"greater than 0 for angles narrower than 90 degrees and lower than 0 for "
+"angles wider than 90 degrees.\n"
+"When using unit (normalized) vectors, the result will always be between "
+"[code]-1.0[/code] (180 degree angle) when the vectors are facing opposite "
+"directions, and [code]1.0[/code] (0 degree angle) when the vectors are "
+"aligned.\n"
+"[b]Note:[/b] [code]a.dot(b)[/code] is equivalent to [code]b.dot(a)[/code]."
+msgstr ""
-#: doc/classes/Vector2.xml:164
-msgid "Returns the vector with all components rounded down."
+#: doc/classes/Vector2.xml:168
+#, fuzzy
+msgid ""
+"Returns the vector with all components rounded down (towards negative "
+"infinity)."
msgstr ""
"Gibt den Vektor zurück der entsteht wenn alle Komponenten abgerundet werden."
-#: doc/classes/Vector2.xml:173 doc/classes/Vector3.xml:149
+#: doc/classes/Vector2.xml:177 doc/classes/Vector3.xml:153
msgid ""
"Returns [code]true[/code] if this vector and [code]v[/code] are "
"approximately equal, by running [method @GDScript.is_equal_approx] on each "
@@ -53751,36 +54818,42 @@ msgstr ""
"ungefähr gleich sind, wobei [method @GDScript.is_equal_approx] mit beiden "
"Komponenten aufgerufen wird."
-#: doc/classes/Vector2.xml:180 doc/classes/Vector3.xml:156
-msgid "Returns [code]true[/code] if the vector is normalized."
+#: doc/classes/Vector2.xml:184 doc/classes/Vector3.xml:160
+#, fuzzy
+msgid ""
+"Returns [code]true[/code] if the vector is normalized, and false otherwise."
msgstr "Gibt [code]true[/code] zurück wenn dieser Vektor normalisiert ist."
-#: doc/classes/Vector2.xml:187 doc/classes/Vector3.xml:163
-msgid "Returns the vector's length."
-msgstr "Gibt die Länge des Vektors zurück."
+#: doc/classes/Vector2.xml:191 doc/classes/Vector3.xml:167
+#, fuzzy
+msgid "Returns the length (magnitude) of this vector."
+msgstr "Gibt den Rest einer Division zweier Vektoren zurück."
-#: doc/classes/Vector2.xml:194
+#: doc/classes/Vector2.xml:198 doc/classes/Vector3.xml:174
+#, fuzzy
msgid ""
-"Returns the vector's length squared. Prefer this method over [method length] "
-"if you need to sort vectors or need the squared length for some formula."
+"Returns the squared length (squared magnitude) of this vector.\n"
+"This method runs faster than [method length], so prefer it if you need to "
+"compare vectors or need the squared distance for some formula."
msgstr ""
"Gibt die quadrierte Länge des Vektors zurück. Diese Funktion ist aus "
"Geschwindigkeitsgründen [method length] vorzuziehen, wenn die genaue Länge "
"nicht nötig ist, bspw beim Sortieren nach Länge oder in Formeln wo das "
"Quadrat der Länge vorkommt."
-#: doc/classes/Vector2.xml:205
+#: doc/classes/Vector2.xml:210 doc/classes/Vector3.xml:186
+#, fuzzy
msgid ""
"Returns the result of the linear interpolation between this vector and "
-"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation."
+"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is on the range of "
+"0.0 to 1.0, representing the amount of interpolation."
msgstr ""
"Gibt das Ergebnis der Linearinterpolation zwischen diesem Vektor und "
"[code]b[/code] in Position [code]t[/code] zurück. [code]t[/code] ist im "
"Interval von [code]0.0[/code] bis [code]1.0[/code] und bezeichnet den Grad "
"der Interpolation."
-#: doc/classes/Vector2.xml:216 doc/classes/Vector3.xml:206
+#: doc/classes/Vector2.xml:221
msgid ""
"Moves the vector toward [code]to[/code] by the fixed [code]delta[/code] "
"amount."
@@ -53788,7 +54861,7 @@ msgstr ""
"Bewegt den Vektor Richtung [code]to[/code] für den festen Betrag "
"[code]delta[/code]."
-#: doc/classes/Vector2.xml:223 doc/classes/Vector3.xml:213
+#: doc/classes/Vector2.xml:228 doc/classes/Vector3.xml:218
msgid ""
"Returns the vector scaled to unit length. Equivalent to [code]v / v.length()"
"[/code]."
@@ -53797,34 +54870,36 @@ msgstr ""
"Einheitsvektor in die gleiche Richtung zurück. Entspricht [code]v / v."
"length()[/code]."
-#: doc/classes/Vector2.xml:232 doc/classes/Vector3.xml:231
+#: doc/classes/Vector2.xml:237 doc/classes/Vector3.xml:236
+#, fuzzy
msgid ""
-"Returns a vector composed of the [code]fposmod[/code] of this vector's "
+"Returns a vector composed of the [method @GDScript.fposmod] of this vector's "
"components and [code]mod[/code]."
msgstr ""
"Gibt den Vektor zurück der entsteht wenn [code]fposmod[/code] auf die "
"Komponenten dieses Vektors und [code]mod[/code] ausgeführt werden."
-#: doc/classes/Vector2.xml:241 doc/classes/Vector3.xml:240
+#: doc/classes/Vector2.xml:246 doc/classes/Vector3.xml:245
+#, fuzzy
msgid ""
-"Returns a vector composed of the [code]fposmod[/code] of this vector's "
+"Returns a vector composed of the [method @GDScript.fposmod] of this vector's "
"components and [code]modv[/code]'s components."
msgstr ""
"Gibt den Vektor zurück der entsteht wenn [code]fposmod[/code] auf die "
"Komponenten dieses Vektors und die Komponenten von [code]modv[/code] "
"ausgeführt werden."
-#: doc/classes/Vector2.xml:250 doc/classes/Vector3.xml:249
+#: doc/classes/Vector2.xml:255
msgid "Returns the vector projected onto the vector [code]b[/code]."
msgstr "Gibt die Projektion dieses Vektors auf [code]b[/code] zurück."
-#: doc/classes/Vector2.xml:259 doc/classes/Vector3.xml:258
+#: doc/classes/Vector2.xml:264
msgid "Returns the vector reflected from a plane defined by the given normal."
msgstr ""
"Gibt die Reflexion dieses Vektors auf die Ebene des übergebenen "
"Normalenvektors zurück."
-#: doc/classes/Vector2.xml:268
+#: doc/classes/Vector2.xml:273
msgid ""
"Returns the vector rotated by [code]phi[/code] radians. See also [method "
"@GDScript.deg2rad]."
@@ -53832,7 +54907,7 @@ msgstr ""
"Gibt den Vektor rotiert um [code]phi[/code] rad zurück. Siehe auch [method "
"@GDScript.deg2rad]."
-#: doc/classes/Vector2.xml:275 doc/classes/Vector3.xml:276
+#: doc/classes/Vector2.xml:280
msgid ""
"Returns the vector with all components rounded to the nearest integer, with "
"halfway cases rounded away from zero."
@@ -53840,20 +54915,22 @@ msgstr ""
"Gibt den Vektor zurück der entsteht wenn alle Komponenten zur nächsten "
"Ganzzahl gerundet werden, wobei 0,5 immer weg von der Null gerundet wird."
-#: doc/classes/Vector2.xml:282 doc/classes/Vector2i.xml:53
-#: doc/classes/Vector3.xml:283 doc/classes/Vector3i.xml:55
+#: doc/classes/Vector2.xml:287
+#, fuzzy
msgid ""
"Returns the vector with each component set to one or negative one, depending "
-"on the signs of the components."
+"on the signs of the components, or zero if the component is zero, by calling "
+"[method @GDScript.sign] on each component."
msgstr ""
"Gibt den Vektor zurück der entsteht wenn alle Komponenten 1 oder -1 gesetzt "
"werden, je nach ihren Vorzeichen."
-#: doc/classes/Vector2.xml:293 doc/classes/Vector3.xml:294
+#: doc/classes/Vector2.xml:298 doc/classes/Vector3.xml:299
+#, fuzzy
msgid ""
"Returns the result of spherical linear interpolation between this vector and "
-"[code]b[/code], by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation.\n"
+"[code]b[/code], by amount [code]t[/code]. [code]t[/code] is on the range of "
+"0.0 to 1.0, representing the amount of interpolation.\n"
"[b]Note:[/b] Both vectors must be normalized."
msgstr ""
"Gibt das Ergebnis der sphärischen Linearinterpolation zwischen diesem Vektor "
@@ -53862,26 +54939,31 @@ msgstr ""
"der Interpolation.\n"
"[b]Hinweis:[/b] Beide Vektoren müssen normalisiert sein."
-#: doc/classes/Vector2.xml:303 doc/classes/Vector3.xml:304
-msgid ""
-"Returns the component of the vector along a plane defined by the given "
-"normal."
+#: doc/classes/Vector2.xml:308 doc/classes/Vector3.xml:309
+#, fuzzy
+msgid "Returns this vector slid along a plane defined by the given normal."
msgstr ""
-"Gibt den Teil des Vektors, der in der Ebene definiert durch den übergeben "
-"Normalenvektor liegt, zurück."
+"Gibt die Reflexion dieses Vektors auf die Ebene des übergebenen "
+"Normalenvektors zurück."
-#: doc/classes/Vector2.xml:312 doc/classes/Vector3.xml:313
-msgid "Returns the vector snapped to a grid with the given size."
+#: doc/classes/Vector2.xml:317 doc/classes/Vector3.xml:318
+#, fuzzy
+msgid ""
+"Returns this vector with each component snapped to the nearest multiple of "
+"[code]step[/code]. This can also be used to round to an arbitrary number of "
+"decimals."
msgstr ""
-"Gibt den Vektor, eingerastet auf das Gitter entstehend aus der übergebenen "
-"Größe, zurück."
+"Gibt den Vektor zurück der entsteht wenn alle Komponenten zur nächsten "
+"Ganzzahl gerundet werden, wobei 0,5 immer weg von der Null gerundet wird."
-#: doc/classes/Vector2.xml:319
-msgid "Returns a perpendicular vector."
-msgstr "Gibt einen senkrechten Vektor zurück."
+#: doc/classes/Vector2.xml:324
+msgid ""
+"Returns a perpendicular vector rotated 90 degrees counter-clockwise compared "
+"to the original, with the same length."
+msgstr ""
-#: doc/classes/Vector2.xml:325 doc/classes/Vector2i.xml:59
-#: doc/classes/Vector3.xml:326 doc/classes/Vector3i.xml:61
+#: doc/classes/Vector2.xml:330 doc/classes/Vector2i.xml:59
+#: doc/classes/Vector3.xml:332 doc/classes/Vector3i.xml:61
msgid ""
"The vector's X component. Also accessible by using the index position [code]"
"[0][/code]."
@@ -53889,8 +54971,8 @@ msgstr ""
"Die x-Komponente des Vektors. Ebenfalls verfügbar unter der Indexposition "
"[code][0][/code]."
-#: doc/classes/Vector2.xml:328 doc/classes/Vector2i.xml:62
-#: doc/classes/Vector3.xml:329 doc/classes/Vector3i.xml:64
+#: doc/classes/Vector2.xml:333 doc/classes/Vector2i.xml:62
+#: doc/classes/Vector3.xml:335 doc/classes/Vector3i.xml:64
msgid ""
"The vector's Y component. Also accessible by using the index position [code]"
"[1][/code]."
@@ -53898,49 +54980,51 @@ msgstr ""
"Die y-Komponente des Vektors. Ebenfalls verfügbar unter der Indexposition "
"[code][1][/code]."
-#: doc/classes/Vector2.xml:333 doc/classes/Vector2i.xml:67
+#: doc/classes/Vector2.xml:338 doc/classes/Vector2i.xml:67
#: doc/classes/Vector3i.xml:72
msgid "Enumerated value for the X axis."
msgstr "Numerischer Wert für die x-Achse."
-#: doc/classes/Vector2.xml:336 doc/classes/Vector2i.xml:70
+#: doc/classes/Vector2.xml:341 doc/classes/Vector2i.xml:70
#: doc/classes/Vector3i.xml:75
msgid "Enumerated value for the Y axis."
msgstr "Numerischer Wert für die y-Achse."
-#: doc/classes/Vector2.xml:339 doc/classes/Vector2i.xml:73
-#: doc/classes/Vector3.xml:346 doc/classes/Vector3i.xml:81
-msgid "Zero vector."
-msgstr "Nullvektor."
+#: doc/classes/Vector2.xml:344 doc/classes/Vector2i.xml:73
+#: doc/classes/Vector3.xml:352 doc/classes/Vector3i.xml:81
+#, fuzzy
+msgid "Zero vector, a vector with all components set to [code]0[/code]."
+msgstr ""
+"Gibt den Vektor zurück der entsteht wenn alle Komponenten aufgerundet werden."
-#: doc/classes/Vector2.xml:342 doc/classes/Vector2i.xml:76
-#: doc/classes/Vector3.xml:349 doc/classes/Vector3i.xml:84
-msgid "One vector."
-msgstr "Einsvektor."
+#: doc/classes/Vector2.xml:347 doc/classes/Vector2i.xml:76
+#: doc/classes/Vector3.xml:355 doc/classes/Vector3i.xml:84
+#, fuzzy
+msgid "One vector, a vector with all components set to [code]1[/code]."
+msgstr ""
+"Gibt den Vektor zurück der entsteht wenn alle Komponenten aufgerundet werden."
-#: doc/classes/Vector2.xml:345 doc/classes/Vector3.xml:352
-msgid "Infinity vector."
-msgstr "Unendlichvektor."
+#: doc/classes/Vector2.xml:350 doc/classes/Vector3.xml:358
+msgid ""
+"Infinity vector, a vector with all components set to [constant @GDScript."
+"INF]."
+msgstr ""
-#: doc/classes/Vector2.xml:348 doc/classes/Vector2i.xml:79
-#: doc/classes/Vector3.xml:355 doc/classes/Vector3i.xml:87
-msgid "Left unit vector."
-msgstr "Links-Einheitsvektor."
+#: doc/classes/Vector2.xml:353 doc/classes/Vector2i.xml:79
+msgid "Left unit vector. Represents the direction of left."
+msgstr ""
-#: doc/classes/Vector2.xml:351 doc/classes/Vector2i.xml:82
-#: doc/classes/Vector3.xml:358 doc/classes/Vector3i.xml:90
-msgid "Right unit vector."
-msgstr "Rechts-Einheitsvektor."
+#: doc/classes/Vector2.xml:356 doc/classes/Vector2i.xml:82
+msgid "Right unit vector. Represents the direction of right."
+msgstr ""
-#: doc/classes/Vector2.xml:354 doc/classes/Vector2i.xml:85
-#: doc/classes/Vector3.xml:361 doc/classes/Vector3i.xml:93
-msgid "Up unit vector."
-msgstr "Hoch-Einheitsvektor."
+#: doc/classes/Vector2.xml:359 doc/classes/Vector2i.xml:85
+msgid "Up unit vector. Y is down in 2D, so this vector points -Y."
+msgstr ""
-#: doc/classes/Vector2.xml:357 doc/classes/Vector2i.xml:88
-#: doc/classes/Vector3.xml:364 doc/classes/Vector3i.xml:96
-msgid "Down unit vector."
-msgstr "Runter-Einheitsvektor."
+#: doc/classes/Vector2.xml:362 doc/classes/Vector2i.xml:88
+msgid "Down unit vector. Y is down in 2D, so this vector points +Y."
+msgstr ""
#: doc/classes/Vector2i.xml:4
msgid "Vector used for 2D math using integer coordinates."
@@ -53968,6 +55052,18 @@ msgid ""
"will be truncated."
msgstr ""
+#: doc/classes/Vector2i.xml:46
+msgid "Returns the ratio of [member x] to [member y]."
+msgstr "Gibt das Verhältnis von [member x] zu [member y] zurück."
+
+#: doc/classes/Vector2i.xml:53 doc/classes/Vector3i.xml:55
+msgid ""
+"Returns the vector with each component set to one or negative one, depending "
+"on the signs of the components."
+msgstr ""
+"Gibt den Vektor zurück der entsteht wenn alle Komponenten 1 oder -1 gesetzt "
+"werden, je nach ihren Vorzeichen."
+
#: doc/classes/Vector3.xml:4
msgid "Vector used for 3D math using floating point coordinates."
msgstr ""
@@ -53992,120 +55088,199 @@ msgid "Returns a [Vector3] with the given components."
msgstr ""
#: doc/classes/Vector3.xml:50
-msgid "Returns the minimum angle to the given vector."
-msgstr ""
+#, fuzzy
+msgid "Returns the minimum angle to the given vector, in radians."
+msgstr "Gibt den Rest einer Division zweier Vektoren zurück."
#: doc/classes/Vector3.xml:66
-msgid "Returns a new vector with all components rounded up."
+#, fuzzy
+msgid ""
+"Returns a new vector with all components rounded up (towards positive "
+"infinity)."
msgstr ""
+"Erzeugt einen neuen Vektor mit allen Komponenten als Beträge (also positiv)."
#: doc/classes/Vector3.xml:75
-msgid "Returns the cross product with [code]b[/code]."
-msgstr ""
+#, fuzzy
+msgid "Returns the cross product of this vector and [code]b[/code]."
+msgstr "Gibt das Skalarprodukt mit Vektor [code]b[/code] zurück."
#: doc/classes/Vector3.xml:90
+#, fuzzy
msgid ""
"Performs a cubic interpolation between vectors [code]pre_a[/code], [code]a[/"
"code], [code]b[/code], [code]post_b[/code] ([code]a[/code] is current), by "
-"the given amount [code]t[/code]. [code]t[/code] is in the range of [code]0.0 "
-"- 1.0[/code], representing the amount of interpolation."
-msgstr ""
-
-#: doc/classes/Vector3.xml:108
-msgid ""
-"Returns the squared distance to [code]b[/code]. Prefer this function over "
-"[method distance_to] if you need to sort vectors or need the squared "
-"distance for some formula."
+"the given amount [code]t[/code]. [code]t[/code] is on the range of 0.0 to "
+"1.0, representing the amount of interpolation."
msgstr ""
+"Interpoliert kubisch zwischen diesem Vektor und [code]b[/code], wobei "
+"[code]pre_a[/code] und [code]post_b[/code] als Griffe benutzt werden, und "
+"gibt das Ergebnis an der Stelle [code]t[/code] zurück. [code]t[/code] ist im "
+"Interval von [code]0.0[/code] bis [code]1.0[/code] und bezeichnet den Grad "
+"der Interpolation."
-#: doc/classes/Vector3.xml:117
-msgid "Returns the distance to [code]b[/code]."
-msgstr ""
+#: doc/classes/Vector3.xml:118
+#, fuzzy
+msgid "Returns the distance between this vector and [code]b[/code]."
+msgstr "Gibt den Abstand zu Vektor [code]b[/code] zurück."
-#: doc/classes/Vector3.xml:126
-msgid "Returns the dot product with [code]b[/code]."
+#: doc/classes/Vector3.xml:127
+msgid ""
+"Returns the dot product of this vector and [code]b[/code]. This can be used "
+"to compare the angle between two vectors. For example, this can be used to "
+"determine whether an enemy is facing the player.\n"
+"The dot product will be [code]0[/code] for a straight angle (90 degrees), "
+"greater than 0 for angles narrower than 90 degrees and lower than 0 for "
+"angles wider than 90 degrees.\n"
+"When using unit (normalized) vectors, the result will always be between "
+"[code]-1.0[/code] (180 degree angle) when the vectors are facing opposite "
+"directions, and [code]1.0[/code] (0 degree angle) when the vectors are "
+"aligned.\n"
+"[b]Note:[/b] [code]a.dot(b)[/code] is equivalent to [code]b.dot(a)[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:133
-msgid "Returns a new vector with all components rounded down."
+#: doc/classes/Vector3.xml:137
+#, fuzzy
+msgid ""
+"Returns a new vector with all components rounded down (towards negative "
+"infinity)."
msgstr ""
+"Gibt den Vektor zurück der entsteht wenn alle Komponenten abgerundet werden."
-#: doc/classes/Vector3.xml:140
+#: doc/classes/Vector3.xml:144
msgid ""
"Returns the inverse of the vector. This is the same as [code]Vector3( 1.0 / "
"v.x, 1.0 / v.y, 1.0 / v.z )[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:170
+#: doc/classes/Vector3.xml:193 doc/classes/Vector3i.xml:41
msgid ""
-"Returns the vector's length squared. Prefer this function over [method "
-"length] if you need to sort vectors or need the squared length for some "
-"formula."
+"Returns the axis of the vector's largest value. See [code]AXIS_*[/code] "
+"constants. If all components are equal, this method returns [constant "
+"AXIS_X]."
msgstr ""
-#: doc/classes/Vector3.xml:181
+#: doc/classes/Vector3.xml:200 doc/classes/Vector3i.xml:48
msgid ""
-"Returns the result of the linear interpolation between this vector and "
-"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation.."
+"Returns the axis of the vector's smallest value. See [code]AXIS_*[/code] "
+"constants. If all components are equal, this method returns [constant "
+"AXIS_Z]."
msgstr ""
-#: doc/classes/Vector3.xml:188 doc/classes/Vector3i.xml:41
+#: doc/classes/Vector3.xml:211
+#, fuzzy
msgid ""
-"Returns the axis of the vector's largest value. See [code]AXIS_*[/code] "
-"constants."
+"Moves this vector toward [code]to[/code] by the fixed [code]delta[/code] "
+"amount."
msgstr ""
+"Bewegt den Vektor Richtung [code]to[/code] für den festen Betrag "
+"[code]delta[/code]."
-#: doc/classes/Vector3.xml:195 doc/classes/Vector3i.xml:48
+#: doc/classes/Vector3.xml:227
+msgid "Returns the outer product with [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:254
+#, fuzzy
+msgid "Returns this vector projected onto another vector [code]b[/code]."
+msgstr "Gibt die Projektion dieses Vektors auf [code]b[/code] zurück."
+
+#: doc/classes/Vector3.xml:263
+#, fuzzy
+msgid "Returns this vector reflected from a plane defined by the given normal."
+msgstr ""
+"Gibt die Reflexion dieses Vektors auf die Ebene des übergebenen "
+"Normalenvektors zurück."
+
+#: doc/classes/Vector3.xml:274
+#, fuzzy
msgid ""
-"Returns the axis of the vector's smallest value. See [code]AXIS_*[/code] "
-"constants."
+"Rotates this vector around a given axis by [code]phi[/code] radians. The "
+"axis must be a normalized vector."
msgstr ""
+"Gibt den Vektor rotiert um [code]phi[/code] rad zurück. Siehe auch [method "
+"@GDScript.deg2rad]."
-#: doc/classes/Vector3.xml:222
-msgid "Returns the outer product with [code]b[/code]."
+#: doc/classes/Vector3.xml:281
+#, fuzzy
+msgid ""
+"Returns this vector with all components rounded to the nearest integer, with "
+"halfway cases rounded away from zero."
msgstr ""
+"Gibt den Vektor zurück der entsteht wenn alle Komponenten zur nächsten "
+"Ganzzahl gerundet werden, wobei 0,5 immer weg von der Null gerundet wird."
-#: doc/classes/Vector3.xml:269
+#: doc/classes/Vector3.xml:288
+#, fuzzy
msgid ""
-"Rotates the vector around a given axis by [code]phi[/code] radians. The axis "
-"must be a normalized vector."
+"Returns a vector with each component set to one or negative one, depending "
+"on the signs of this vector's components, or zero if the component is zero, "
+"by calling [method @GDScript.sign] on each component."
msgstr ""
+"Gibt den Vektor zurück der entsteht wenn alle Komponenten 1 oder -1 gesetzt "
+"werden, je nach ihren Vorzeichen."
-#: doc/classes/Vector3.xml:320
-msgid "Returns a diagonal matrix with the vector as main diagonal."
+#: doc/classes/Vector3.xml:325
+msgid ""
+"Returns a diagonal matrix with the vector as main diagonal.\n"
+"This is equivalent to a Basis with no rotation or shearing and this vector's "
+"components set as the scale."
msgstr ""
-#: doc/classes/Vector3.xml:332 doc/classes/Vector3i.xml:67
+#: doc/classes/Vector3.xml:338 doc/classes/Vector3i.xml:67
msgid ""
"The vector's Z component. Also accessible by using the index position [code]"
"[2][/code]."
msgstr ""
-#: doc/classes/Vector3.xml:337
+#: doc/classes/Vector3.xml:343
msgid ""
"Enumerated value for the X axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:340
+#: doc/classes/Vector3.xml:346
msgid ""
"Enumerated value for the Y axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:343
+#: doc/classes/Vector3.xml:349
msgid ""
"Enumerated value for the Z axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:367 doc/classes/Vector3i.xml:99
-msgid "Forward unit vector."
+#: doc/classes/Vector3.xml:361 doc/classes/Vector3i.xml:87
+msgid ""
+"Left unit vector. Represents the local direction of left, and the global "
+"direction of west."
+msgstr ""
+
+#: doc/classes/Vector3.xml:364 doc/classes/Vector3i.xml:90
+msgid ""
+"Right unit vector. Represents the local direction of right, and the global "
+"direction of east."
+msgstr ""
+
+#: doc/classes/Vector3.xml:367 doc/classes/Vector3i.xml:93
+msgid "Up unit vector."
+msgstr "Hoch-Einheitsvektor."
+
+#: doc/classes/Vector3.xml:370 doc/classes/Vector3i.xml:96
+msgid "Down unit vector."
+msgstr "Runter-Einheitsvektor."
+
+#: doc/classes/Vector3.xml:373 doc/classes/Vector3i.xml:99
+msgid ""
+"Forward unit vector. Represents the local direction of forward, and the "
+"global direction of north."
msgstr ""
-#: doc/classes/Vector3.xml:370 doc/classes/Vector3i.xml:102
-msgid "Back unit vector."
+#: doc/classes/Vector3.xml:376 doc/classes/Vector3i.xml:102
+msgid ""
+"Back unit vector. Represents the local direction of back, and the global "
+"direction of south."
msgstr ""
#: doc/classes/Vector3i.xml:4
@@ -54154,10 +55329,14 @@ msgid ""
"directly.\n"
"[b]Note:[/b] The origin point of your VehicleBody3D will determine the "
"center of gravity of your vehicle so it is better to keep this low and move "
-"the [CollisionShape3D] and [MeshInstance3D] upwards."
+"the [CollisionShape3D] and [MeshInstance3D] upwards.\n"
+"[b]Note:[/b] This class has known issues and isn't designed to provide "
+"realistic 3D vehicle physics. If you want advanced vehicle physics, you will "
+"probably have to write your own physics integration using another "
+"[PhysicsBody3D] class."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:16
+#: doc/classes/VehicleBody3D.xml:17
msgid ""
"Slows down the vehicle by applying a braking force. The vehicle is only "
"slowed down if the wheels are in contact with a surface. The force you need "
@@ -54166,7 +55345,7 @@ msgid ""
"a value in the 25 - 30 range for hard braking."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:19
+#: doc/classes/VehicleBody3D.xml:20
msgid ""
"Accelerates the vehicle by applying an engine force. The vehicle is only "
"speed up if the wheels that have [member VehicleWheel3D.use_as_traction] set "
@@ -54179,7 +55358,7 @@ msgid ""
"A negative value will result in the vehicle reversing."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:25
+#: doc/classes/VehicleBody3D.xml:26
msgid ""
"The steering angle for the vehicle. Setting this to a non-zero value will "
"result in the vehicle turning when it's moving. Wheels that have [member "
@@ -54195,25 +55374,29 @@ msgstr ""
msgid ""
"This node needs to be used as a child node of [VehicleBody3D] and simulates "
"the behavior of one of its wheels. This node also acts as a collider to "
-"detect if the wheel is touching a surface."
+"detect if the wheel is touching a surface.\n"
+"[b]Note:[/b] This class has known issues and isn't designed to provide "
+"realistic 3D vehicle physics. If you want advanced vehicle physics, you will "
+"probably have to write your own physics integration using another "
+"[PhysicsBody3D] class."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:16
+#: doc/classes/VehicleWheel3D.xml:17
msgid "Returns the rotational speed of the wheel in revolutions per minute."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:23
+#: doc/classes/VehicleWheel3D.xml:24
msgid ""
"Returns a value between 0.0 and 1.0 that indicates whether this wheel is "
"skidding. 0.0 is skidding (the wheel has lost grip, e.g. icy terrain), 1.0 "
"means not skidding (the wheel has full grip, e.g. dry asphalt road)."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:30
+#: doc/classes/VehicleWheel3D.xml:31
msgid "Returns [code]true[/code] if this wheel is in contact with a surface."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:36
+#: doc/classes/VehicleWheel3D.xml:37
msgid ""
"Slows down the wheel by applying a braking force. The wheel is only slowed "
"down if it is in contact with a surface. The force you need to apply to "
@@ -54222,7 +55405,7 @@ msgid ""
"- 30 range for hard braking."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:39
+#: doc/classes/VehicleWheel3D.xml:40
msgid ""
"The damping applied to the spring when the spring is being compressed. This "
"value should be between 0.0 (no damping) and 1.0. A value of 0.0 means the "
@@ -54230,7 +55413,7 @@ msgid ""
"is around 0.3 for a normal car, 0.5 for a race car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:42
+#: doc/classes/VehicleWheel3D.xml:43
msgid ""
"The damping applied to the spring when relaxing. This value should be "
"between 0.0 (no damping) and 1.0. This value should always be slightly "
@@ -54238,7 +55421,7 @@ msgid ""
"damping_compression] value of 0.3, try a relaxation value of 0.5."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:45
+#: doc/classes/VehicleWheel3D.xml:46
msgid ""
"Accelerates the wheel by applying an engine force. The wheel is only speed "
"up if it is in contact with a surface. The [member RigidBody3D.mass] of the "
@@ -54249,13 +55432,13 @@ msgid ""
"A negative value will result in the wheel reversing."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:50
+#: doc/classes/VehicleWheel3D.xml:51
msgid ""
"The steering angle for the wheel. Setting this to a non-zero value will "
"result in the vehicle turning when it's moving."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:53
+#: doc/classes/VehicleWheel3D.xml:54
msgid ""
"The maximum force the spring can resist. This value should be higher than a "
"quarter of the [member RigidBody3D.mass] of the [VehicleBody3D] or the "
@@ -54263,28 +55446,28 @@ msgid ""
"obtained by a value that is about 3× to 4× this number."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:56
+#: doc/classes/VehicleWheel3D.xml:57
msgid ""
"This value defines the stiffness of the suspension. Use a value lower than "
"50 for an off-road car, a value between 50 and 100 for a race car and try "
"something around 200 for something like a Formula 1 car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:59
+#: doc/classes/VehicleWheel3D.xml:60
msgid ""
"This is the distance the suspension can travel. As Godot units are "
"equivalent to meters, keep this setting relatively low. Try a value between "
"0.1 and 0.3 depending on the type of car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:62
+#: doc/classes/VehicleWheel3D.xml:63
msgid ""
"If [code]true[/code], this wheel will be turned when the car steers. This "
"value is used in conjunction with [member VehicleBody3D.steering] and "
"ignored if you are using the per-wheel [member steering] value instead."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:65
+#: doc/classes/VehicleWheel3D.xml:66
msgid ""
"If [code]true[/code], this wheel transfers engine force to the ground to "
"propel the vehicle forward. This value is used in conjunction with [member "
@@ -54292,7 +55475,7 @@ msgid ""
"[member engine_force] value instead."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:68
+#: doc/classes/VehicleWheel3D.xml:69
msgid ""
"This determines how much grip this wheel has. It is combined with the "
"friction setting of the surface the wheel is in contact with. 0.0 means no "
@@ -54302,11 +55485,11 @@ msgid ""
"It's best to set this to 1.0 when starting out."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:72
+#: doc/classes/VehicleWheel3D.xml:73
msgid "The radius of the wheel in meters."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:75
+#: doc/classes/VehicleWheel3D.xml:76
msgid ""
"This is the distance in meters the wheel is lowered from its origin point. "
"Don't set this to 0.0 and move the wheel into position, instead move the "
@@ -54315,7 +55498,7 @@ msgid ""
"down to the position it should be in when the car is in rest."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:78
+#: doc/classes/VehicleWheel3D.xml:79
msgid ""
"This value affects the roll of your vehicle. If set to 1.0 for all wheels, "
"your vehicle will be prone to rolling over, while a value of 0.0 will resist "
@@ -54509,7 +55692,7 @@ msgstr ""
#: doc/classes/Viewport.xml:16
msgid "https://docs.godotengine.org/en/latest/tutorials/viewports/index.html"
-msgstr ""
+msgstr "https://docs.godotengine.org/de/latest/tutorials/viewports/index.html"
#: doc/classes/Viewport.xml:23
msgid "Returns the 2D world of the viewport."
@@ -54793,7 +55976,7 @@ msgstr ""
#: doc/classes/Viewport.xml:318
msgid ""
"Use fast approximate antialiasing. FXAA is a popular screen-space "
-"antialising method, which is fast but will make the image look blurry, "
+"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."
msgstr ""
@@ -54846,24 +56029,24 @@ msgid ""
"your [WorldEnvironment]."
msgstr ""
-#: doc/classes/Viewport.xml:384
+#: doc/classes/Viewport.xml:381
msgid ""
"Colors each PSSM split for the [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, and yellow."
msgstr ""
-#: doc/classes/Viewport.xml:387
+#: doc/classes/Viewport.xml:384
msgid ""
"Draws the decal atlas used by [Decal]s and light projector textures in the "
"upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/Viewport.xml:402
+#: doc/classes/Viewport.xml:405
msgid "Max value for [enum DefaultCanvasItemTextureFilter] enum."
msgstr ""
-#: doc/classes/Viewport.xml:414
+#: doc/classes/Viewport.xml:417
msgid "Max value for [enum DefaultCanvasItemTextureRepeat] enum."
msgstr ""
@@ -54894,82 +56077,84 @@ msgid ""
"The VisibilityEnabler2D will disable [RigidBody2D], [AnimationPlayer], and "
"other nodes when they are not visible. It will only affect nodes with the "
"same root node as the VisibilityEnabler2D, and the root node itself.\n"
+"If you just want to receive notifications, use [VisibilityNotifier2D] "
+"instead.\n"
"[b]Note:[/b] For performance reasons, VisibilityEnabler2D uses an "
"approximate heuristic with precision determined by [member ProjectSettings."
-"world/2d/cell_size]. If you need exact visibility checking, use another "
+"world/2d/cell_size]. If you need precise visibility checking, use another "
"method such as adding an [Area2D] node as a child of a [Camera2D] node.\n"
"[b]Note:[/b] VisibilityEnabler2D will not affect nodes added after scene "
"initialization."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:20
-#: doc/classes/VisibilityEnabler3D.xml:20
+#: doc/classes/VisibilityEnabler2D.xml:21
+#: doc/classes/VisibilityEnabler3D.xml:21
msgid ""
"Returns whether the enabler identified by given [enum Enabler] constant is "
"active."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:31
-#: doc/classes/VisibilityEnabler3D.xml:31
+#: doc/classes/VisibilityEnabler2D.xml:32
+#: doc/classes/VisibilityEnabler3D.xml:32
msgid ""
"Sets active state of the enabler identified by given [enum Enabler] constant."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:37
+#: doc/classes/VisibilityEnabler2D.xml:38
msgid "If [code]true[/code], [RigidBody2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:40
+#: doc/classes/VisibilityEnabler2D.xml:41
msgid "If [code]true[/code], [AnimatedSprite2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:43
-#: doc/classes/VisibilityEnabler3D.xml:40
+#: doc/classes/VisibilityEnabler2D.xml:44
+#: doc/classes/VisibilityEnabler3D.xml:41
msgid "If [code]true[/code], [AnimationPlayer] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:46
+#: doc/classes/VisibilityEnabler2D.xml:47
msgid "If [code]true[/code], [GPUParticles2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:49
+#: doc/classes/VisibilityEnabler2D.xml:50
msgid ""
"If [code]true[/code], the parent's [method Node._physics_process] will be "
"stopped."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:52
+#: doc/classes/VisibilityEnabler2D.xml:53
msgid ""
"If [code]true[/code], the parent's [method Node._process] will be stopped."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:57
-#: doc/classes/VisibilityEnabler3D.xml:45
+#: doc/classes/VisibilityEnabler2D.xml:58
+#: doc/classes/VisibilityEnabler3D.xml:46
msgid "This enabler will pause [AnimationPlayer] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:60
+#: doc/classes/VisibilityEnabler2D.xml:61
msgid "This enabler will freeze [RigidBody2D] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:63
+#: doc/classes/VisibilityEnabler2D.xml:64
msgid "This enabler will stop [GPUParticles2D] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:66
+#: doc/classes/VisibilityEnabler2D.xml:67
msgid "This enabler will stop the parent's _process function."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:69
+#: doc/classes/VisibilityEnabler2D.xml:70
msgid "This enabler will stop the parent's _physics_process function."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:72
+#: doc/classes/VisibilityEnabler2D.xml:73
msgid "This enabler will stop [AnimatedSprite2D] nodes animations."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:75
-#: doc/classes/VisibilityEnabler3D.xml:51
+#: doc/classes/VisibilityEnabler2D.xml:76
+#: doc/classes/VisibilityEnabler3D.xml:52
msgid "Represents the size of the [enum Enabler] enum."
msgstr ""
@@ -54978,19 +56163,23 @@ msgid ""
"The VisibilityEnabler3D will disable [RigidBody3D] and [AnimationPlayer] "
"nodes when they are not visible. It will only affect other nodes within the "
"same scene as the VisibilityEnabler3D itself.\n"
+"If you just want to receive notifications, use [VisibilityNotifier3D] "
+"instead.\n"
"[b]Note:[/b] VisibilityEnabler3D uses an approximate heuristic for "
"performance reasons. It doesn't take walls and other occlusion into account. "
-"If you need exact visibility checking, use another method such as adding an "
-"[Area3D] node as a child of a [Camera3D] node.\n"
+"The heuristic is an implementation detail and may change in future versions. "
+"If you need precise visibility checking, use another method such as adding "
+"an [Area3D] node as a child of a [Camera3D] node and/or [method Vector3."
+"dot].\n"
"[b]Note:[/b] VisibilityEnabler3D will not affect nodes added after scene "
"initialization."
msgstr ""
-#: doc/classes/VisibilityEnabler3D.xml:37
+#: doc/classes/VisibilityEnabler3D.xml:38
msgid "If [code]true[/code], [RigidBody3D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler3D.xml:48
+#: doc/classes/VisibilityEnabler3D.xml:49
msgid "This enabler will freeze [RigidBody3D] nodes."
msgstr ""
@@ -55004,13 +56193,15 @@ msgid ""
"The VisibilityNotifier2D detects when it is visible on the screen. It also "
"notifies when its bounding rectangle enters or exits the screen or a "
"viewport.\n"
+"If you want nodes to be disabled automatically when they exit the screen, "
+"use [VisibilityEnabler2D] instead.\n"
"[b]Note:[/b] For performance reasons, VisibilityNotifier2D uses an "
"approximate heuristic with precision determined by [member ProjectSettings."
-"world/2d/cell_size]. If you need exact visibility checking, use another "
+"world/2d/cell_size]. If you need precise visibility checking, use another "
"method such as adding an [Area2D] node as a child of a [Camera2D] node."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:17
+#: doc/classes/VisibilityNotifier2D.xml:18
msgid ""
"If [code]true[/code], the bounding rectangle is on the screen.\n"
"[b]Note:[/b] It takes one frame for the node's visibility to be assessed "
@@ -55019,23 +56210,23 @@ msgid ""
"pass."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:24
+#: doc/classes/VisibilityNotifier2D.xml:25
msgid "The VisibilityNotifier2D's bounding rectangle."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:30
+#: doc/classes/VisibilityNotifier2D.xml:31
msgid "Emitted when the VisibilityNotifier2D enters the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:35
+#: doc/classes/VisibilityNotifier2D.xml:36
msgid "Emitted when the VisibilityNotifier2D exits the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:42
+#: doc/classes/VisibilityNotifier2D.xml:43
msgid "Emitted when the VisibilityNotifier2D enters a [Viewport]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:49
+#: doc/classes/VisibilityNotifier2D.xml:50
msgid "Emitted when the VisibilityNotifier2D exits a [Viewport]'s view."
msgstr ""
@@ -55044,13 +56235,16 @@ msgid ""
"The VisibilityNotifier3D detects when it is visible on the screen. It also "
"notifies when its bounding rectangle enters or exits the screen or a "
"[Camera3D]'s view.\n"
+"If you want nodes to be disabled automatically when they exit the screen, "
+"use [VisibilityEnabler3D] instead.\n"
"[b]Note:[/b] VisibilityNotifier3D uses an approximate heuristic for "
"performance reasons. It doesn't take walls and other occlusion into account. "
-"If you need exact visibility checking, use another method such as adding an "
-"[Area3D] node as a child of a [Camera3D] node."
+"The heuristic is an implementation detail and may change in future versions. "
+"If you need precise visibility checking, use another method such as adding "
+"an [Area3D] node as a child of a [Camera3D] node and/or [method Vector3.dot]."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:17
+#: doc/classes/VisibilityNotifier3D.xml:18
msgid ""
"If [code]true[/code], the bounding box is on the screen.\n"
"[b]Note:[/b] It takes one frame for the node's visibility to be assessed "
@@ -55059,23 +56253,23 @@ msgid ""
"pass."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:24
+#: doc/classes/VisibilityNotifier3D.xml:25
msgid "The VisibilityNotifier3D's bounding box."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:32
+#: doc/classes/VisibilityNotifier3D.xml:33
msgid "Emitted when the VisibilityNotifier3D enters a [Camera3D]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:39
+#: doc/classes/VisibilityNotifier3D.xml:40
msgid "Emitted when the VisibilityNotifier3D exits a [Camera3D]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:44
+#: doc/classes/VisibilityNotifier3D.xml:45
msgid "Emitted when the VisibilityNotifier3D enters the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:49
+#: doc/classes/VisibilityNotifier3D.xml:50
msgid "Emitted when the VisibilityNotifier3D exits the screen."
msgstr ""
@@ -55164,6 +56358,8 @@ msgid ""
"https://docs.godotengine.org/en/latest/getting_started/scripting/"
"visual_script/index.html"
msgstr ""
+"https://docs.godotengine.org/de/latest/getting_started/scripting/"
+"visual_script/index.html"
#: modules/visual_script/doc_classes/VisualScript.xml:21
msgid "Add a custom signal with the specified name to the VisualScript."
@@ -55495,6 +56691,15 @@ msgid ""
"exist."
msgstr ""
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:90
+msgid ""
+"Easing function, based on exponent. 0 is constant, 1 is linear, 0 to 1 is "
+"ease-in, 1+ is ease out. Negative values are in-out/out in."
+msgstr ""
+"Erleichternde Funktion, basierend auf dem Exponenten. 0 ist konstant, 1 ist "
+"linear, 0 bis 1 ist ease-in, 1+ ist ease-out. Negative Werte sind in-out/out-"
+"in."
+
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:93
msgid ""
"Return the number of digit places after the decimal that the first non-zero "
@@ -56040,11 +57245,11 @@ msgstr ""
#: modules/visual_script/doc_classes/VisualScriptMathConstant.xml:24
msgid "Unity: [code]1[/code]."
-msgstr ""
+msgstr "Unity: [code]1[/code]."
#: modules/visual_script/doc_classes/VisualScriptMathConstant.xml:27
msgid "Pi: [code]3.141593[/code]."
-msgstr ""
+msgstr "Pi: [code]3.141593[/code]."
#: modules/visual_script/doc_classes/VisualScriptMathConstant.xml:30
msgid "Pi divided by two: [code]1.570796[/code]."
@@ -56052,7 +57257,7 @@ msgstr ""
#: modules/visual_script/doc_classes/VisualScriptMathConstant.xml:33
msgid "Tau: [code]6.283185[/code]."
-msgstr ""
+msgstr "Tau: [code]6.283185[/code]."
#: modules/visual_script/doc_classes/VisualScriptMathConstant.xml:36
msgid ""
@@ -56380,6 +57585,7 @@ msgid "A shader for light calculations."
msgstr ""
#: doc/classes/VisualShader.xml:214
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:26
msgid "Represents the size of the [enum Type] enum."
msgstr ""
@@ -56391,6 +57597,7 @@ msgstr ""
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/shading/visual_shaders.html"
msgstr ""
+"https://docs.godotengine.org/de/latest/tutorials/shading/visual_shaders.html"
#: doc/classes/VisualShaderNode.xml:16
msgid ""
@@ -56482,6 +57689,24 @@ msgstr ""
msgid "Translated to [code]uniform bool[/code] in the shader language."
msgstr ""
+#: doc/classes/VisualShaderNodeBooleanUniform.xml:15
+#: doc/classes/VisualShaderNodeColorUniform.xml:15
+#: doc/classes/VisualShaderNodeFloatUniform.xml:15
+#: doc/classes/VisualShaderNodeIntUniform.xml:15
+#: doc/classes/VisualShaderNodeTransformUniform.xml:15
+#: doc/classes/VisualShaderNodeVec3Uniform.xml:15
+msgid "A default value to be assigned within the shader."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeBooleanUniform.xml:18
+#: doc/classes/VisualShaderNodeColorUniform.xml:18
+#: doc/classes/VisualShaderNodeFloatUniform.xml:18
+#: doc/classes/VisualShaderNodeIntUniform.xml:18
+#: doc/classes/VisualShaderNodeTransformUniform.xml:18
+#: doc/classes/VisualShaderNodeVec3Uniform.xml:18
+msgid "Enables usage of the [member default_value]."
+msgstr ""
+
#: doc/classes/VisualShaderNodeColorConstant.xml:4
msgid "A [Color] constant to be used within the visual shader graph."
msgstr ""
@@ -56847,6 +58072,8 @@ msgid ""
"https://docs.godotengine.org/en/latest/tutorials/plugins/editor/"
"visual_shader_plugins.html"
msgstr ""
+"https://docs.godotengine.org/de/latest/tutorials/plugins/editor/"
+"visual_shader_plugins.html"
#: doc/classes/VisualShaderNodeCustom.xml:23
msgid ""
@@ -57332,49 +58559,49 @@ msgstr ""
msgid "Translated to [code]uniform float[/code] in the shader language."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:15
-#: doc/classes/VisualShaderNodeIntUniform.xml:15
+#: doc/classes/VisualShaderNodeFloatUniform.xml:21
+#: doc/classes/VisualShaderNodeIntUniform.xml:21
msgid ""
"A hint applied to the uniform, which controls the values it can take when "
"set through the inspector."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:18
-#: doc/classes/VisualShaderNodeIntUniform.xml:18
+#: doc/classes/VisualShaderNodeFloatUniform.xml:24
+#: doc/classes/VisualShaderNodeIntUniform.xml:24
msgid ""
"Minimum value for range hints. Used if [member hint] is set to [constant "
"HINT_RANGE] or [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:21
-#: doc/classes/VisualShaderNodeIntUniform.xml:21
+#: doc/classes/VisualShaderNodeFloatUniform.xml:27
+#: doc/classes/VisualShaderNodeIntUniform.xml:27
msgid ""
"Maximum value for range hints. Used if [member hint] is set to [constant "
"HINT_RANGE] or [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:24
-#: doc/classes/VisualShaderNodeIntUniform.xml:24
+#: doc/classes/VisualShaderNodeFloatUniform.xml:30
+#: doc/classes/VisualShaderNodeIntUniform.xml:30
msgid ""
"Step (increment) value for the range hint with step. Used if [member hint] "
"is set to [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:29
-#: doc/classes/VisualShaderNodeIntUniform.xml:29
+#: doc/classes/VisualShaderNodeFloatUniform.xml:35
+#: doc/classes/VisualShaderNodeIntUniform.xml:35
msgid "No hint used."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:32
-#: doc/classes/VisualShaderNodeIntUniform.xml:32
+#: doc/classes/VisualShaderNodeFloatUniform.xml:38
+#: doc/classes/VisualShaderNodeIntUniform.xml:38
msgid ""
"A range hint for scalar value, which limits possible input values between "
"[member min] and [member max]. Translated to [code]hint_range(min, max)[/"
"code] in shader code."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:35
-#: doc/classes/VisualShaderNodeIntUniform.xml:35
+#: doc/classes/VisualShaderNodeFloatUniform.xml:41
+#: doc/classes/VisualShaderNodeIntUniform.xml:41
msgid ""
"A range hint for scalar value with step, which limits possible input values "
"between [member min] and [member max], with a step (increment) of [member "
@@ -57553,11 +58780,12 @@ msgid ""
msgstr ""
#: doc/classes/VisualShaderNodeInput.xml:10
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/stable/tutorials/shading/shading_reference/"
"index.html"
-msgstr "https://docs.godotengine.org/de/latest/tutorials/math/index.html"
+msgstr ""
+"https://docs.godotengine.org/de/stable/tutorials/shading/shading_reference/"
+"index.html"
#: doc/classes/VisualShaderNodeInput.xml:17
msgid ""
@@ -57657,6 +58885,27 @@ msgid ""
"results, e.g. division by zero)."
msgstr ""
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:4
+msgid "Performs a fused multiply-add operation within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:7
+msgid "Uses three operands to compute [code](a * b + c)[/code] expression."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:15
+msgid "A type of operands and returned value."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:20
+msgid "A scalar type."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:23
+#, fuzzy
+msgid "A vector type."
+msgstr "Einsvektor."
+
#: doc/classes/VisualShaderNodeOuterProduct.xml:4
msgid ""
"Calculates an outer product of two vectors within the visual shader graph."
@@ -57679,7 +58928,7 @@ msgstr ""
#: doc/classes/VisualShaderNodeOutput.xml:7
msgid ""
"This visual shader node is present in all shader graphs in form of \"Output"
-"\" block with mutliple output value ports."
+"\" block with multiple output value ports."
msgstr ""
#: doc/classes/VisualShaderNodeSample3D.xml:4
@@ -58060,6 +59309,20 @@ msgid ""
"[ShaderMaterial] properties."
msgstr ""
+#: doc/classes/VisualShaderNodeUniformRef.xml:4
+msgid "A reference to an existing [VisualShaderNodeUniform]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniformRef.xml:7
+msgid ""
+"Creating a reference to a [VisualShaderNodeUniform] allows you to reuse this "
+"uniform in different shaders or shader stages easily."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniformRef.xml:15
+msgid "The name of the uniform which this reference points to."
+msgstr ""
+
#: doc/classes/VisualShaderNodeVec3Constant.xml:4
msgid "A [Vector3] constant to be used within the visual shader graph."
msgstr ""
@@ -58159,9 +59422,8 @@ msgstr ""
"code]."
#: doc/classes/VisualShaderNodeVectorFunc.xml:26
-#, fuzzy
msgid "Returns the opposite value of the parameter."
-msgstr "Gibt die Größe des Arrays zurück."
+msgstr "Gibt den inversen Wert des Parameters zurück."
#: doc/classes/VisualShaderNodeVectorFunc.xml:29
#, fuzzy
@@ -58170,106 +59432,96 @@ msgstr "Gibt den Abstand zu Vektor [code]b[/code] zurück."
#: doc/classes/VisualShaderNodeVectorFunc.xml:32
msgid "Converts RGB vector to HSV equivalent."
-msgstr ""
+msgstr "Wandelt RGB-Vektor in HSV-Gegenwert um."
#: doc/classes/VisualShaderNodeVectorFunc.xml:35
msgid "Converts HSV vector to RGB equivalent."
-msgstr ""
+msgstr "Wandelt HSV-Vektor in RGB-Gegenwert um."
#: doc/classes/VisualShaderNodeVectorFunc.xml:38
-#, fuzzy
msgid "Returns the absolute value of the parameter."
-msgstr "Gibt die Größe des Arrays zurück."
+msgstr "Gibt den absoluten Betrag des Parameters zurück."
#: doc/classes/VisualShaderNodeVectorFunc.xml:41
-#, fuzzy
msgid "Returns the arc-cosine of the parameter."
-msgstr "Gibt die Größe des Arrays zurück."
+msgstr "Gibt den Arkuskosinus des Parameters zurück."
#: doc/classes/VisualShaderNodeVectorFunc.xml:44
-#, fuzzy
msgid "Returns the inverse hyperbolic cosine of the parameter."
-msgstr "Gibt die Größe des Arrays zurück."
+msgstr "Gibt den inversen hyperbolischen Kosinus des Parameters zurück."
#: doc/classes/VisualShaderNodeVectorFunc.xml:47
-#, fuzzy
msgid "Returns the arc-sine of the parameter."
-msgstr "Gibt die Größe des Arrays zurück."
+msgstr "Gibt den Arkussinus des Parameters zurück."
#: doc/classes/VisualShaderNodeVectorFunc.xml:50
-#, fuzzy
msgid "Returns the inverse hyperbolic sine of the parameter."
-msgstr "Gibt die Größe des Arrays zurück."
+msgstr "Gibt den inversen hyperbolischen Sinus des Parameters zurück."
#: doc/classes/VisualShaderNodeVectorFunc.xml:53
-#, fuzzy
msgid "Returns the arc-tangent of the parameter."
-msgstr "Gibt die Größe des Arrays zurück."
+msgstr "Gibt den Arkustangens des Parameters zurück."
#: doc/classes/VisualShaderNodeVectorFunc.xml:56
-#, fuzzy
msgid "Returns the inverse hyperbolic tangent of the parameter."
-msgstr "Gibt die Größe des Arrays zurück."
+msgstr "Gibt den inversen hyperbolischen Tangens des Parameters zurück."
#: doc/classes/VisualShaderNodeVectorFunc.xml:59
msgid ""
"Finds the nearest integer that is greater than or equal to the parameter."
-msgstr ""
+msgstr "Gibt die nächste Ganzzahl größer gleich dem Parameters zurück."
#: doc/classes/VisualShaderNodeVectorFunc.xml:62
-#, fuzzy
msgid "Returns the cosine of the parameter."
-msgstr "Gibt die Größe des Arrays zurück."
+msgstr "Gibt den Kosinus des Parameters zurück."
#: doc/classes/VisualShaderNodeVectorFunc.xml:65
-#, fuzzy
msgid "Returns the hyperbolic cosine of the parameter."
-msgstr "Gibt die Größe des Arrays zurück."
+msgstr "Gibt den hyperbolischen Kosinus des Parameters zurück."
#: doc/classes/VisualShaderNodeVectorFunc.xml:68
msgid "Converts a quantity in radians to degrees."
-msgstr ""
+msgstr "Wandelt einen Wert von Bogenmaß zu Grad um."
#: doc/classes/VisualShaderNodeVectorFunc.xml:71
msgid "Base-e Exponential."
-msgstr ""
+msgstr "Basis-e exponentiell."
#: doc/classes/VisualShaderNodeVectorFunc.xml:74
msgid "Base-2 Exponential."
-msgstr ""
+msgstr "Basis-2 exponentiell."
#: doc/classes/VisualShaderNodeVectorFunc.xml:77
msgid "Finds the nearest integer less than or equal to the parameter."
-msgstr ""
+msgstr "Gibt die nächste Ganzzahl kleiner gleich dem Parameters zurück."
#: doc/classes/VisualShaderNodeVectorFunc.xml:80
msgid "Computes the fractional part of the argument."
-msgstr ""
+msgstr "Berechnet den Bruchteil des Parameters."
#: doc/classes/VisualShaderNodeVectorFunc.xml:83
-#, fuzzy
msgid "Returns the inverse of the square root of the parameter."
-msgstr "Gibt die Größe des Arrays zurück."
+msgstr "Gibt die inverse Quadratwurzel des Parameters zurück."
#: doc/classes/VisualShaderNodeVectorFunc.xml:86
msgid "Natural logarithm."
-msgstr ""
+msgstr "Natürlicher Logarithmus."
#: doc/classes/VisualShaderNodeVectorFunc.xml:89
msgid "Base-2 logarithm."
-msgstr ""
+msgstr "Basis-2 Logarithmus."
#: doc/classes/VisualShaderNodeVectorFunc.xml:92
msgid "Converts a quantity in degrees to radians."
-msgstr ""
+msgstr "Wandelt einen Wert von Grad zu Bogenmaß um."
#: doc/classes/VisualShaderNodeVectorFunc.xml:95
msgid "Finds the nearest integer to the parameter."
-msgstr ""
+msgstr "Gibt die nächste Ganzzahl vom Parameter zurück."
#: doc/classes/VisualShaderNodeVectorFunc.xml:98
msgid "Finds the nearest even integer to the parameter."
-msgstr ""
+msgstr "Gibt die nächste gerade Ganzzahl vom Parameter zurück."
#: doc/classes/VisualShaderNodeVectorFunc.xml:101
msgid ""
@@ -58279,29 +59531,24 @@ msgid ""
msgstr ""
#: doc/classes/VisualShaderNodeVectorFunc.xml:104
-#, fuzzy
msgid "Returns the sine of the parameter."
-msgstr "Gibt die Größe des Arrays zurück."
+msgstr "Gibt den Sinus des Parameters zurück."
#: doc/classes/VisualShaderNodeVectorFunc.xml:107
-#, fuzzy
msgid "Returns the hyperbolic sine of the parameter."
-msgstr "Gibt die Größe des Arrays zurück."
+msgstr "Gibt den hyperbolischen Sinus des Parameters zurück."
#: doc/classes/VisualShaderNodeVectorFunc.xml:110
-#, fuzzy
msgid "Returns the square root of the parameter."
-msgstr "Gibt die Größe des Arrays zurück."
+msgstr "Gibt die Quadratwurzel des Parameters zurück."
#: doc/classes/VisualShaderNodeVectorFunc.xml:113
-#, fuzzy
msgid "Returns the tangent of the parameter."
-msgstr "Gibt die Größe des Arrays zurück."
+msgstr "Gibt den Tangens des Parameters zurück."
#: doc/classes/VisualShaderNodeVectorFunc.xml:116
-#, fuzzy
msgid "Returns the hyperbolic tangent of the parameter."
-msgstr "Gibt die Größe des Arrays zurück."
+msgstr "Gibt den hyperbolischen Tangens des Parameters zurück."
#: doc/classes/VisualShaderNodeVectorFunc.xml:119
msgid ""
@@ -58363,12 +59610,11 @@ msgstr ""
#: doc/classes/VisualShaderNodeVectorOp.xml:29
msgid "Divides vector by vector."
-msgstr ""
+msgstr "Teilt Vektor durch Vektor."
#: doc/classes/VisualShaderNodeVectorOp.xml:32
-#, fuzzy
msgid "Returns the remainder of the two vectors."
-msgstr "Gibt den Winkel zwischen zwei Vektoren im Bogenmaß zurück."
+msgstr "Gibt den Rest einer Division zweier Vektoren zurück."
#: doc/classes/VisualShaderNodeVectorOp.xml:35
msgid ""
@@ -58386,12 +59632,11 @@ msgstr ""
#: doc/classes/VisualShaderNodeVectorOp.xml:44
msgid "Calculates the cross product of two vectors."
-msgstr ""
+msgstr "Berechnet das Kreuzprodukt zweier Vektoren."
#: doc/classes/VisualShaderNodeVectorOp.xml:47
-#, fuzzy
msgid "Returns the arc-tangent of the parameters."
-msgstr "Gibt die Größe des Arrays zurück."
+msgstr "Gibt den Arkuskosinus2 der Parameter zurück."
#: doc/classes/VisualShaderNodeVectorOp.xml:50
msgid ""
@@ -58415,7 +59660,7 @@ msgstr ""
msgid ""
"Translated to [code]refract(I, N, eta)[/code] in the shader language, where "
"[code]I[/code] is the incident vector, [code]N[/code] is the normal vector "
-"and [code]eta[/code] is the ratio of the indicies of the refraction."
+"and [code]eta[/code] is the ratio of the indices of the refraction."
msgstr ""
#: doc/classes/VisualShaderNodeVectorScalarMix.xml:4
@@ -59511,7 +60756,7 @@ msgstr ""
#: doc/classes/XMLParser.xml:168
msgid "Unknown node."
-msgstr ""
+msgstr "unbekanntes Node."
#: doc/classes/XRAnchor3D.xml:4
msgid "An anchor point in AR space."
@@ -59605,7 +60850,7 @@ msgstr ""
#: doc/classes/XRInterface.xml:11 doc/classes/XROrigin3D.xml:13
#: doc/classes/XRPositionalTracker.xml:12 doc/classes/XRServer.xml:10
msgid "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
-msgstr ""
+msgstr "https://docs.godotengine.org/de/latest/tutorials/vr/index.html"
#: doc/classes/XRController3D.xml:4
msgid "A spatial node representing a spatially-tracked controller."
@@ -60194,6 +61439,61 @@ msgid ""
msgstr ""
#~ msgid ""
+#~ "Returns [code]true[/code] if [code]a[/code] and [code]b[/code] are "
+#~ "approximately equal to each other."
+#~ msgstr ""
+#~ "Liefert [code]wahr[/code] als Ergebnis wenn [code]a[/code] und [code]b[/"
+#~ "code] ungefähr gleich sind."
+
+#~ msgid "Beginning corner."
+#~ msgstr "Anfangsecke."
+
+#~ msgid "Ending corner."
+#~ msgstr "Zielecke."
+
+#~ msgid "Returns the angle in radians between the two vectors."
+#~ msgstr "Gibt den Winkel zwischen zwei Vektoren im Bogenmaß zurück."
+
+#~ msgid "Returns the vector with a maximum length."
+#~ msgstr ""
+#~ "Gibt diesen Vektor, abgeschnitten auf die entsprechende Maximallänge, "
+#~ "zurück."
+
+#~ msgid ""
+#~ "Returns the 2-dimensional analog of the cross product with the given "
+#~ "vector."
+#~ msgstr ""
+#~ "Gibt das zweidimensionale Gegenstück zum Kreuzprodukt der gegeben "
+#~ "Vektoren zurück."
+
+#~ msgid ""
+#~ "Returns the component of the vector along a plane defined by the given "
+#~ "normal."
+#~ msgstr ""
+#~ "Gibt den Teil des Vektors, der in der Ebene definiert durch den übergeben "
+#~ "Normalenvektor liegt, zurück."
+
+#~ msgid "Returns the vector snapped to a grid with the given size."
+#~ msgstr ""
+#~ "Gibt den Vektor, eingerastet auf das Gitter entstehend aus der "
+#~ "übergebenen Größe, zurück."
+
+#~ msgid "Returns a perpendicular vector."
+#~ msgstr "Gibt einen senkrechten Vektor zurück."
+
+#~ msgid "Zero vector."
+#~ msgstr "Nullvektor."
+
+#~ msgid "Infinity vector."
+#~ msgstr "Unendlichvektor."
+
+#~ msgid "Left unit vector."
+#~ msgstr "Links-Einheitsvektor."
+
+#~ msgid "Right unit vector."
+#~ msgstr "Rechts-Einheitsvektor."
+
+#~ msgid ""
#~ "2-element structure that can be used to represent positions in 2D space "
#~ "or any other pair of numeric values.\n"
#~ "It uses floating point coordinates."
diff --git a/doc/translations/es.po b/doc/translations/es.po
index e206ed5f07..4d71c12010 100644
--- a/doc/translations/es.po
+++ b/doc/translations/es.po
@@ -9,11 +9,13 @@
# Serk Lintur <serk.lintur@gmail.com>, 2020.
# Lambientan <pedrogtzr@protonmail.com>, 2020.
# paco <pacosoftfree@protonmail.com>, 2020.
+# No te interesa <soxahop585@inmail3.com>, 2020.
+# Jonatan <arandajonatan94@tuta.io>, 2020.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine class reference\n"
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
-"PO-Revision-Date: 2020-06-25 08:53+0000\n"
+"PO-Revision-Date: 2020-08-11 14:39+0000\n"
"Last-Translator: paco <pacosoftfree@protonmail.com>\n"
"Language-Team: Spanish <https://hosted.weblate.org/projects/godot-engine/"
"godot-class-reference/es/>\n"
@@ -120,9 +122,10 @@ msgstr ""
"definidas en [Color]."
#: modules/gdscript/doc_classes/@GDScript.xml:55
+#, fuzzy
msgid ""
-"Returns the absolute value of parameter [code]s[/code] (i.e. unsigned value, "
-"works for integer and float).\n"
+"Returns the absolute value of parameter [code]s[/code] (i.e. positive "
+"value).\n"
"[codeblock]\n"
"# a is 1\n"
"a = abs(-1)\n"
@@ -209,12 +212,13 @@ msgstr ""
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:114
+#, fuzzy
msgid ""
"Returns the arc tangent of [code]s[/code] in radians. Use it to get the "
"angle from an angle's tangent in trigonometry: [code]atan(tan(angle)) == "
"angle[/code].\n"
"The method cannot know in which quadrant the angle should fall. See [method "
-"atan2] if you always want an exact angle.\n"
+"atan2] if you have both [code]y[/code] and [code]x[/code].\n"
"[codeblock]\n"
"a = atan(0.5) # a is 0.463648\n"
"[/codeblock]"
@@ -229,10 +233,12 @@ msgstr ""
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:129
+#, fuzzy
msgid ""
"Returns the arc tangent of [code]y/x[/code] in radians. Use to get the angle "
"of tangent [code]y/x[/code]. To compute the value, the method takes into "
"account the sign of both arguments in order to determine the quadrant.\n"
+"Important note: The Y coordinate comes first, by convention.\n"
"[codeblock]\n"
"a = atan2(0, -1) # a is 3.141593\n"
"[/codeblock]"
@@ -244,7 +250,7 @@ msgstr ""
"a = atan2(0, -1) # a is 3.141593\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:143
+#: modules/gdscript/doc_classes/@GDScript.xml:144
msgid ""
"Decodes a byte array back to a value. When [code]allow_objects[/code] is "
"[code]true[/code] decoding objects is allowed.\n"
@@ -259,7 +265,7 @@ msgstr ""
"fuentes en las que no confie para evitar posibles amenazas a la seguridad "
"(ejecución remota de código)."
-#: modules/gdscript/doc_classes/@GDScript.xml:155
+#: modules/gdscript/doc_classes/@GDScript.xml:156
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:145
msgid ""
"Converts a 2D point expressed in the cartesian coordinate system (X and Y "
@@ -270,10 +276,11 @@ msgstr ""
"(ejes X e Y) en el sistema de coordenadas polares (una distancia del origen "
"y un ángulo)."
-#: modules/gdscript/doc_classes/@GDScript.xml:164
+#: modules/gdscript/doc_classes/@GDScript.xml:165
+#, fuzzy
msgid ""
-"Rounds [code]s[/code] upward, returning the smallest integral value that is "
-"not less than [code]s[/code].\n"
+"Rounds [code]s[/code] upward (towards positive infinity), returning the "
+"smallest whole number that is not less than [code]s[/code].\n"
"[codeblock]\n"
"i = ceil(1.45) # i is 2\n"
"i = ceil(1.001) # i is 2\n"
@@ -286,7 +293,7 @@ msgstr ""
"i = ceil(1.001) # i es 2\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:177
+#: modules/gdscript/doc_classes/@GDScript.xml:178
msgid ""
"Returns a character as a String of the given Unicode code point (which is "
"compatible with ASCII code).\n"
@@ -306,7 +313,7 @@ msgstr ""
"[/codeblock]\n"
"Esto es el inverso de [method ord]."
-#: modules/gdscript/doc_classes/@GDScript.xml:196
+#: modules/gdscript/doc_classes/@GDScript.xml:197
msgid ""
"Clamps [code]value[/code] and returns a value not less than [code]min[/code] "
"and not more than [code]max[/code].\n"
@@ -332,7 +339,7 @@ msgstr ""
"a = clamp(velocidad, 1, 20)\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:216
+#: modules/gdscript/doc_classes/@GDScript.xml:217
msgid ""
"Converts from a type to another in the best way possible. The [code]type[/"
"code] parameter uses the [enum Variant.Type] values.\n"
@@ -357,7 +364,7 @@ msgstr ""
"print(a.length())\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:233
+#: modules/gdscript/doc_classes/@GDScript.xml:234
msgid ""
"Returns the cosine of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -373,7 +380,7 @@ msgstr ""
"print(cos(PI))\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:247
+#: modules/gdscript/doc_classes/@GDScript.xml:248
msgid ""
"Returns the hyperbolic cosine of [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -387,11 +394,11 @@ msgstr ""
"print(cosh(1))\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:260
+#: modules/gdscript/doc_classes/@GDScript.xml:261
msgid "Converts from decibels to linear energy (audio)."
msgstr "Convierte de decibeles a energía lineal (audio)."
-#: modules/gdscript/doc_classes/@GDScript.xml:273
+#: modules/gdscript/doc_classes/@GDScript.xml:274
msgid ""
"Returns the result of [code]value[/code] decreased by [code]step[/code] * "
"[code]amount[/code].\n"
@@ -407,9 +414,10 @@ msgstr ""
"a = dectime(60, 10, 0.1)\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:286
+#: modules/gdscript/doc_classes/@GDScript.xml:287
+#, fuzzy
msgid ""
-"Returns degrees converted to radians.\n"
+"Converts an angle expressed in degrees to radians.\n"
"[codeblock]\n"
"# r is 3.141593\n"
"r = deg2rad(180)\n"
@@ -421,7 +429,7 @@ msgstr ""
"r = deg2rad(180)\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:299
+#: modules/gdscript/doc_classes/@GDScript.xml:300
msgid ""
"Converts a previously converted instance to a dictionary, back into an "
"instance. Useful for deserializing."
@@ -429,20 +437,23 @@ msgstr ""
"Convierte una instancia previamente convertida en un diccionario, de nuevo "
"en una instancia. Es útil para deserializar."
-#: modules/gdscript/doc_classes/@GDScript.xml:310
-#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:90
+#: modules/gdscript/doc_classes/@GDScript.xml:311
+#, fuzzy
msgid ""
-"Easing function, based on exponent. 0 is constant, 1 is linear, 0 to 1 is "
-"ease-in, 1+ is ease out. Negative values are in-out/out in."
+"Easing function, based on exponent. The curve values are: 0 is constant, 1 "
+"is linear, 0 to 1 is ease-in, 1+ is ease out. Negative values are in-out/out "
+"in."
msgstr ""
"Función de easing, basada en el exponente. 0 es constante, 1 es lineal, 0 a "
"1 es de ease-in, 1+ es de ease-out. Los valores negativos son in-out/out in."
-#: modules/gdscript/doc_classes/@GDScript.xml:319
+#: modules/gdscript/doc_classes/@GDScript.xml:320
+#, fuzzy
msgid ""
"The natural exponential function. It raises the mathematical constant [b]e[/"
"b] to the power of [code]s[/code] and returns it.\n"
-"[b]e[/b] has an approximate value of 2.71828.\n"
+"[b]e[/b] has an approximate value of 2.71828, and can be obtained with "
+"[code]exp(1)[/code].\n"
"For exponents to other bases use the method [method pow].\n"
"[codeblock]\n"
"a = exp(2) # Approximately 7.39\n"
@@ -456,9 +467,11 @@ msgstr ""
"a = exp(2) # Aproximadamente 7.39\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:333
+#: modules/gdscript/doc_classes/@GDScript.xml:334
+#, fuzzy
msgid ""
-"Rounds [code]s[/code] to the closest smaller integer and returns it.\n"
+"Rounds [code]s[/code] downward (towards negative infinity), returning the "
+"largest whole number that is not more than [code]s[/code].\n"
"[codeblock]\n"
"# a is 2.0\n"
"a = floor(2.99)\n"
@@ -478,7 +491,7 @@ msgstr ""
"[b]Nota:[/b] Este método devuelve un real. Si necesitas un entero, puedes "
"usar [code]int(s)[/code] directamente."
-#: modules/gdscript/doc_classes/@GDScript.xml:351
+#: modules/gdscript/doc_classes/@GDScript.xml:352
msgid ""
"Returns the floating-point remainder of [code]a/b[/code], keeping the sign "
"of [code]a[/code].\n"
@@ -496,7 +509,7 @@ msgstr ""
"[/codeblock]\n"
"Para la operación del resto de los números enteros, utilice el operador %."
-#: modules/gdscript/doc_classes/@GDScript.xml:367
+#: modules/gdscript/doc_classes/@GDScript.xml:368
msgid ""
"Returns the floating-point modulus of [code]a/b[/code] that wraps equally in "
"positive and negative.\n"
@@ -544,7 +557,7 @@ msgstr ""
"4 1\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:398
+#: modules/gdscript/doc_classes/@GDScript.xml:399
msgid ""
"Returns a reference to the specified function [code]funcname[/code] in the "
"[code]instance[/code] node. As functions aren't first-class objects in "
@@ -570,7 +583,7 @@ msgstr ""
"print(a.call_func()) # Imprime bar\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:412
+#: modules/gdscript/doc_classes/@GDScript.xml:413
msgid ""
"Returns an array of dictionaries representing the current call stack.\n"
"[codeblock]\n"
@@ -607,7 +620,7 @@ msgstr ""
"source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:435
+#: modules/gdscript/doc_classes/@GDScript.xml:436
msgid ""
"Returns the integer hash of the variable passed.\n"
"[codeblock]\n"
@@ -619,7 +632,7 @@ msgstr ""
"print(hash(\"a)) # Imprime 177670\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:447
+#: modules/gdscript/doc_classes/@GDScript.xml:448
msgid ""
"Returns the passed instance converted to a dictionary (useful for "
"serializing).\n"
@@ -651,7 +664,7 @@ msgstr ""
"[, res://test.gd, bar]\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:468
+#: modules/gdscript/doc_classes/@GDScript.xml:469
msgid ""
"Returns the Object that corresponds to [code]instance_id[/code]. All Objects "
"have a unique instance ID.\n"
@@ -673,7 +686,7 @@ msgstr ""
" print(inst.foo) # Prints bar\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:488
+#: modules/gdscript/doc_classes/@GDScript.xml:489
msgid ""
"Returns a normalized value considering the given range. This is the opposite "
"of [method lerp].\n"
@@ -697,15 +710,17 @@ msgstr ""
"# `ratio` es ahora 0.75.\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:506
+#: modules/gdscript/doc_classes/@GDScript.xml:507
msgid ""
"Returns [code]true[/code] if [code]a[/code] and [code]b[/code] are "
-"approximately equal to each other."
+"approximately equal to each other.\n"
+"Here, approximately equal means that [code]a[/code] and [code]b[/code] are "
+"within a small internal epsilon of each other, which scales with the "
+"magnitude of the numbers.\n"
+"Infinity values of the same sign are considered equal."
msgstr ""
-"Devuelve [code]true[/code] si [code]a[/code] y [code]b[/code] son "
-"aproximadamente iguales entre sí."
-#: modules/gdscript/doc_classes/@GDScript.xml:515
+#: modules/gdscript/doc_classes/@GDScript.xml:518
msgid ""
"Returns whether [code]s[/code] is an infinity value (either positive "
"infinity or negative infinity)."
@@ -713,7 +728,7 @@ msgstr ""
"Devuelve si [code]s[/code] es un valor de infinito (infinito positivo o "
"infinito negativo)."
-#: modules/gdscript/doc_classes/@GDScript.xml:524
+#: modules/gdscript/doc_classes/@GDScript.xml:527
msgid ""
"Returns whether [code]instance[/code] is a valid object (e.g. has not been "
"deleted from memory)."
@@ -721,15 +736,24 @@ msgstr ""
"Devuelve si [code]instance[/code] es un objeto válido (por ejemplo, no ha "
"sido borrado de la memoria)."
-#: modules/gdscript/doc_classes/@GDScript.xml:533
-msgid "Returns whether [code]s[/code] is a NaN (Not-A-Number) value."
+#: modules/gdscript/doc_classes/@GDScript.xml:536
+#, fuzzy
+msgid ""
+"Returns whether [code]s[/code] is a NaN (\"Not a Number\" or invalid) value."
msgstr "Devuelve si [code]s[/code] es un valor NaN (Not-A-Number)."
-#: modules/gdscript/doc_classes/@GDScript.xml:542
-msgid "Returns [code]true[/code] if [code]s[/code] is zero or almost zero."
-msgstr "Devuelve [code]true[/code] si [code]s[/code] es cero o casi cero."
+#: modules/gdscript/doc_classes/@GDScript.xml:545
+#, fuzzy
+msgid ""
+"Returns [code]true[/code] if [code]s[/code] is zero or almost zero.\n"
+"This method is faster than using [method is_equal_approx] with one value as "
+"zero."
+msgstr ""
+"Devuelve [code]true[/code] si este color y [code]color[/code] son "
+"aproximadamente iguales, ejecutando [method @GDScript.is_equal_approx] en "
+"cada componente."
-#: modules/gdscript/doc_classes/@GDScript.xml:551
+#: modules/gdscript/doc_classes/@GDScript.xml:555
msgid ""
"Returns length of Variant [code]var[/code]. Length is the character count of "
"String, element count of Array, size of Dictionary, etc.\n"
@@ -749,7 +773,7 @@ msgstr ""
"len(a) # Devuelve 4\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:569
+#: modules/gdscript/doc_classes/@GDScript.xml:573
msgid ""
"Linearly interpolates between two values by a normalized value. This is the "
"opposite of [method inverse_lerp].\n"
@@ -775,7 +799,7 @@ msgstr ""
"lerp(Vector2(1, 5), Vector2(3, 2), 0.5) # Devuelve el Vector2(2, 3.5)\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:588
+#: modules/gdscript/doc_classes/@GDScript.xml:592
msgid ""
"Linearly interpolates between two angles (in radians) by a normalized "
"value.\n"
@@ -805,7 +829,7 @@ msgstr ""
" elapsed += delta\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:607
+#: modules/gdscript/doc_classes/@GDScript.xml:611
msgid ""
"Converts from linear energy to decibels (audio). This can be used to "
"implement volume sliders that behave as expected (since volume isn't "
@@ -832,14 +856,23 @@ msgstr ""
"linear2db($Slider.value))\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:622
+#: modules/gdscript/doc_classes/@GDScript.xml:626
+#, fuzzy
msgid ""
-"Loads a resource from the filesystem located at [code]path[/code].\n"
+"Loads a resource from the filesystem located at [code]path[/code]. The "
+"resource is loaded on the method call (unless it's referenced already "
+"elsewhere, e.g. in another script or in the scene), which might cause slight "
+"delay, especially when loading scenes. To avoid unnecessary delays when "
+"loading something multiple times, either store the resource in a variable or "
+"use [method preload].\n"
"[b]Note:[/b] Resource paths can be obtained by right-clicking on a resource "
-"in the FileSystem dock and choosing [b]Copy Path[/b].\n"
+"in the FileSystem dock and choosing \"Copy Path\" or by dragging the file "
+"from the FileSystem dock into the script.\n"
"[codeblock]\n"
-"# Load a scene called main located in the root of the project directory.\n"
-"var main = load(\"res://main.tscn\")\n"
+"# Load a scene called main located in the root of the project directory and "
+"cache it in a variable.\n"
+"var main = load(\"res://main.tscn\") # main will contain a PackedScene "
+"resource.\n"
"[/codeblock]\n"
"[b]Important:[/b] The path must be absolute, a local path will just return "
"[code]null[/code]."
@@ -856,7 +889,8 @@ msgstr ""
"[b]Importante:[/b] La ruta debe ser absoluta, una ruta local devolverá un "
"[code]null[/code]."
-#: modules/gdscript/doc_classes/@GDScript.xml:637
+#: modules/gdscript/doc_classes/@GDScript.xml:641
+#, fuzzy
msgid ""
"Natural logarithm. The amount of time needed to reach a certain level of "
"continuous growth.\n"
@@ -864,7 +898,9 @@ msgid ""
"calculators, which uses a base 10 logarithm.\n"
"[codeblock]\n"
"log(10) # Returns 2.302585\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] The logarithm of [code]0[/code] returns [code]-inf[/code], "
+"while negative values return [code]-nan[/code]."
msgstr ""
"Logaritmo natural. La cantidad de tiempo necesaria para alcanzar un cierto "
"nivel de crecimiento continuo.\n"
@@ -874,7 +910,7 @@ msgstr ""
"log(10) # Devuelve 2.302585\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:652
+#: modules/gdscript/doc_classes/@GDScript.xml:657
msgid ""
"Returns the maximum of two values.\n"
"[codeblock]\n"
@@ -888,7 +924,7 @@ msgstr ""
"max(-3.99, -4) # Devuelve -3.99\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:667
+#: modules/gdscript/doc_classes/@GDScript.xml:672
msgid ""
"Returns the minimum of two values.\n"
"[codeblock]\n"
@@ -902,13 +938,16 @@ msgstr ""
"min(-3.99, -4) # Devuelve -4\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:684
+#: modules/gdscript/doc_classes/@GDScript.xml:689
+#, fuzzy
msgid ""
"Moves [code]from[/code] toward [code]to[/code] by the [code]delta[/code] "
"value.\n"
"Use a negative [code]delta[/code] value to move away.\n"
"[codeblock]\n"
+"move_toward(5, 10, 4) # Returns 9\n"
"move_toward(10, 5, 4) # Returns 6\n"
+"move_toward(10, 5, -1.5) # Returns 11.5\n"
"[/codeblock]"
msgstr ""
"Mueve [code]from[/code] hacia [code]to[/code] por el valor [code]delta[/"
@@ -919,24 +958,27 @@ msgstr ""
"move_toward(10, 5, 4) # Devuelve 6\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:697
+#: modules/gdscript/doc_classes/@GDScript.xml:704
msgid ""
-"Returns the nearest larger power of 2 for integer [code]value[/code].\n"
+"Returns the nearest equal or larger power of 2 for integer [code]value[/"
+"code].\n"
+"In other words, returns the smallest value [code]a[/code] where [code]a = "
+"pow(2, n)[/code] such that [code]value <= a[/code] for some non-negative "
+"integer [code]n[/code].\n"
"[codeblock]\n"
"nearest_po2(3) # Returns 4\n"
"nearest_po2(4) # Returns 4\n"
"nearest_po2(5) # Returns 8\n"
-"[/codeblock]"
+"\n"
+"nearest_po2(0) # Returns 0 (this may not be what you expect)\n"
+"nearest_po2(-1) # Returns 0 (this may not be what you expect)\n"
+"[/codeblock]\n"
+"[b]WARNING:[/b] Due to the way it is implemented, this function returns "
+"[code]0[/code] rather than [code]1[/code] for non-positive values of "
+"[code]value[/code] (in reality, 1 is the smallest integer power of 2)."
msgstr ""
-"Devuelve la potencia mayor más cercana de 2 para el entero "
-"[code]value[code].\n"
-"[codeblock]\n"
-"nearest_po2(3) # Devuelve 4\n"
-"nearest_po2(4) # Devuelve 4\n"
-"nearest_po2(5) # Devuelve 8\n"
-"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:711
+#: modules/gdscript/doc_classes/@GDScript.xml:723
msgid ""
"Returns an integer representing the Unicode code point of the given Unicode "
"character [code]char[/code].\n"
@@ -955,24 +997,26 @@ msgstr ""
"[/codeblock]\n"
"Este es el metodo inverso a [method char]."
-#: modules/gdscript/doc_classes/@GDScript.xml:726
+#: modules/gdscript/doc_classes/@GDScript.xml:738
+#, fuzzy
msgid ""
-"Parse JSON text to a Variant (use [method typeof] to check if it is what you "
-"expect).\n"
-"Be aware that the JSON specification does not define integer or float types, "
-"but only a number type. Therefore, parsing a JSON text will convert all "
-"numerical values to [float] types.\n"
-"Note that JSON objects do not preserve key order like Godot dictionaries, "
-"thus you should not rely on keys being in a certain order if a dictionary is "
-"constructed from JSON. In contrast, JSON arrays retain the order of their "
+"Parse JSON text to a Variant. (Use [method typeof] to check if the Variant's "
+"type is what you expect.)\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, parsing a JSON text will convert "
+"all numerical values to [float] types.\n"
+"[b]Note:[/b] JSON objects do not preserve key order like Godot dictionaries, "
+"thus, you should not rely on keys being in a certain order if a dictionary "
+"is constructed from JSON. In contrast, JSON arrays retain the order of their "
"elements:\n"
"[codeblock]\n"
-"p = parse_json('[\"a\", \"b\", \"c\"]')\n"
-"if typeof(p) == TYPE_ARRAY:\n"
-" print(p[0]) # Prints a\n"
+"var p = JSON.parse('[\"hello\", \"world\", \"!\"]')\n"
+"if typeof(p.result) == TYPE_ARRAY:\n"
+" print(p.result[0]) # Prints \"hello\"\n"
"else:\n"
-" print(\"unexpected results\")\n"
-"[/codeblock]"
+" push_error(\"Unexpected results.\")\n"
+"[/codeblock]\n"
+"See also [JSON] for an alternative way to parse JSON text."
msgstr ""
"Analizar el texto de JSON en una variante (usar [method typeof] para "
"comprobar si es lo que esperas).\n"
@@ -991,7 +1035,7 @@ msgstr ""
" print(\"resultados inesperados\")\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:746
+#: modules/gdscript/doc_classes/@GDScript.xml:759
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:142
msgid ""
"Converts a 2D point expressed in the polar coordinate system (a distance "
@@ -1002,7 +1046,7 @@ msgstr ""
"distancia del origen [code]r[/code] y un ángulo [code]th[/code]) en el "
"sistema de coordenadas cartesianas (ejes X e Y)."
-#: modules/gdscript/doc_classes/@GDScript.xml:757
+#: modules/gdscript/doc_classes/@GDScript.xml:770
msgid ""
"Returns the integer modulus of [code]a/b[/code] that wraps equally in "
"positive and negative.\n"
@@ -1050,7 +1094,7 @@ msgstr ""
"4 1\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:788
+#: modules/gdscript/doc_classes/@GDScript.xml:801
msgid ""
"Returns the result of [code]x[/code] raised to the power of [code]y[/code].\n"
"[codeblock]\n"
@@ -1063,29 +1107,23 @@ msgstr ""
"pow(2, 5) # Devuelve 32\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:800
+#: modules/gdscript/doc_classes/@GDScript.xml:813
msgid ""
-"Returns a resource from the filesystem that is loaded during script "
-"parsing.\n"
+"Returns a [Resource] from the filesystem located at [code]path[/code]. The "
+"resource is loaded during script parsing, i.e. is loaded with the script and "
+"[method preload] effectively acts as a reference to that resource. Note that "
+"the method requires a constant path. If you want to load a resource from a "
+"dynamic/variable path, use [method load].\n"
"[b]Note:[/b] Resource paths can be obtained by right clicking on a resource "
-"in the Assets Panel and choosing \"Copy Path\".\n"
+"in the Assets Panel and choosing \"Copy Path\" or by dragging the file from "
+"the FileSystem dock into the script.\n"
"[codeblock]\n"
-"# Load a scene called main located in the root of the project directory.\n"
-"var main = preload(\"res://main.tscn\")\n"
+"# Instance a scene.\n"
+"var diamond = preload(\"res://diamond.tscn\").instance()\n"
"[/codeblock]"
msgstr ""
-"Devuelve un recurso del sistema de archivos que se carga durante el análisis "
-"de script.\n"
-"[b]Nota:[/b] Las rutas de los recursos pueden obtenerse haciendo clic con el "
-"botón derecho del ratón en un recurso del Panel de recursos y eligiendo "
-"\"Copy Path\".\n"
-"[codeblock]\n"
-"# Cargar una escena llamada principal ubicada en la raíz del directorio del "
-"proyecto.\n"
-"var main = preload(\"res://main.tscn\")\n"
-"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:812
+#: modules/gdscript/doc_classes/@GDScript.xml:825
msgid ""
"Converts one or more arguments to strings in the best way possible and "
"prints them to the console.\n"
@@ -1101,12 +1139,12 @@ msgstr ""
"print(\"a\", \"b\", a) # Imprime ab[1, 2, 3]\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:823
+#: modules/gdscript/doc_classes/@GDScript.xml:836
msgid "Like [method print], but prints only when used in debug mode."
msgstr ""
"Como [method print], pero imprime sólo cuando se usa en modo de depuración."
-#: modules/gdscript/doc_classes/@GDScript.xml:830
+#: modules/gdscript/doc_classes/@GDScript.xml:843
msgid ""
"Prints a stack track at code location, only works when running with debugger "
"turned on.\n"
@@ -1122,7 +1160,7 @@ msgstr ""
"Frame 0 - res://test.gd:16 in function '_process'\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:841
+#: modules/gdscript/doc_classes/@GDScript.xml:854
msgid ""
"Prints one or more arguments to strings in the best way possible to standard "
"error line.\n"
@@ -1136,7 +1174,7 @@ msgstr ""
"printerr(\"Imprime a stderr\")\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:851
+#: modules/gdscript/doc_classes/@GDScript.xml:864
msgid ""
"Prints one or more arguments to strings in the best way possible to console. "
"No newline is added at the end.\n"
@@ -1160,7 +1198,7 @@ msgstr ""
"esto sólo imprime a la terminal. Si necesita imprimir en el editor, utilice "
"otro método, como [method print]."
-#: modules/gdscript/doc_classes/@GDScript.xml:864
+#: modules/gdscript/doc_classes/@GDScript.xml:877
msgid ""
"Prints one or more arguments to the console with a space between each "
"argument.\n"
@@ -1174,7 +1212,7 @@ msgstr ""
"prints(\"A\", \"B\", \"C\") # Imprime A B C\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:874
+#: modules/gdscript/doc_classes/@GDScript.xml:887
msgid ""
"Prints one or more arguments to the console with a tab between each "
"argument.\n"
@@ -1188,7 +1226,7 @@ msgstr ""
"printt(\"A\",\"B\",\"C\") # Imprime A\\tB\\tC\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:886
+#: modules/gdscript/doc_classes/@GDScript.xml:899
msgid ""
"Pushes an error message to Godot's built-in debugger and to the OS "
"terminal.\n"
@@ -1204,7 +1242,7 @@ msgstr ""
"terminal como una llamada de error\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:898
+#: modules/gdscript/doc_classes/@GDScript.xml:911
msgid ""
"Pushes a warning message to Godot's built-in debugger and to the OS "
"terminal.\n"
@@ -1220,9 +1258,10 @@ msgstr ""
"terminal como una llamada de aviso.\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:910
+#: modules/gdscript/doc_classes/@GDScript.xml:923
+#, fuzzy
msgid ""
-"Converts from radians to degrees.\n"
+"Converts an angle expressed in radians to degrees.\n"
"[codeblock]\n"
"rad2deg(0.523599) # Returns 30\n"
"[/codeblock]"
@@ -1232,7 +1271,7 @@ msgstr ""
"rad2deg(0.523599) # Devuelve 30\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:924
+#: modules/gdscript/doc_classes/@GDScript.xml:937
msgid ""
"Random range, any floating point value between [code]from[/code] and "
"[code]to[/code].\n"
@@ -1246,7 +1285,7 @@ msgstr ""
"prints(rand_range(0, 1), rand_range(0, 1)) # Imprime dos numeros aleatorios\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:936
+#: modules/gdscript/doc_classes/@GDScript.xml:949
msgid ""
"Random from seed: pass a [code]seed[/code], and an array with both number "
"and new seed is returned. \"Seed\" here refers to the internal state of the "
@@ -1258,7 +1297,7 @@ msgstr ""
"estado interno del generador de números pseudo aleatorios. El estado interno "
"de la implementación actual es de 64 bits."
-#: modules/gdscript/doc_classes/@GDScript.xml:943
+#: modules/gdscript/doc_classes/@GDScript.xml:956
msgid ""
"Returns a random floating point value on the interval [code][0, 1][/code].\n"
"[codeblock]\n"
@@ -1270,7 +1309,7 @@ msgstr ""
"randf() # Devuelve un aleatorio entre 0 y 1 como 0.375671\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:953
+#: modules/gdscript/doc_classes/@GDScript.xml:966
msgid ""
"Returns a random unsigned 32 bit integer. Use remainder to obtain a random "
"value in the interval [code][0, N - 1][/code] (where N is smaller than "
@@ -1292,7 +1331,7 @@ msgstr ""
"randi() % 100 + 1 # Devuelve un entero aleatoria entre 1 y 100\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:966
+#: modules/gdscript/doc_classes/@GDScript.xml:979
msgid ""
"Randomizes the seed (or the internal state) of the random number generator. "
"Current implementation reseeds using a number based on time.\n"
@@ -1309,7 +1348,7 @@ msgstr ""
"\\t randomize()\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:977
+#: modules/gdscript/doc_classes/@GDScript.xml:990
msgid ""
"Returns an array with the given range. Range can be 1 argument N (0 to N-1), "
"two arguments (initial, final-1) or three arguments (initial, final-1, "
@@ -1365,7 +1404,7 @@ msgstr ""
"4\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:1017
+#: modules/gdscript/doc_classes/@GDScript.xml:1030
msgid ""
"Maps a [code]value[/code] from range [code][istart, istop][/code] to [code]"
"[ostart, ostop][/code].\n"
@@ -1379,10 +1418,11 @@ msgstr ""
"range_lerp(75, 0, 100, -1, 1) # Devuelve 0.5\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:1029
+#: modules/gdscript/doc_classes/@GDScript.xml:1042
+#, fuzzy
msgid ""
-"Returns the integral value that is nearest to [code]s[/code], with halfway "
-"cases rounded away from zero.\n"
+"Rounds [code]s[/code] to the nearest whole number, with halfway cases "
+"rounded away from zero.\n"
"[codeblock]\n"
"round(2.6) # Returns 3\n"
"[/codeblock]"
@@ -1393,7 +1433,7 @@ msgstr ""
"round(2.6) # Devuelve 3\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:1041
+#: modules/gdscript/doc_classes/@GDScript.xml:1054
msgid ""
"Sets seed for the random number generator.\n"
"[codeblock]\n"
@@ -1407,7 +1447,7 @@ msgstr ""
"seed(mi_semilla.hash())\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:1054
+#: modules/gdscript/doc_classes/@GDScript.xml:1067
msgid ""
"Returns the sign of [code]s[/code]: -1 or 1. Returns 0 if [code]s[/code] is "
"0.\n"
@@ -1425,7 +1465,7 @@ msgstr ""
"sign(6) # Devuelve 1\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:1068
+#: modules/gdscript/doc_classes/@GDScript.xml:1081
msgid ""
"Returns the sine of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -1437,7 +1477,7 @@ msgstr ""
"sin(0.523599) # Devuelve 0.5\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:1080
+#: modules/gdscript/doc_classes/@GDScript.xml:1093
msgid ""
"Returns the hyperbolic sine of [code]s[/code].\n"
"[codeblock]\n"
@@ -1451,39 +1491,37 @@ msgstr ""
"sinh(a) # Devuelve 0.75\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:1097
-msgid ""
-"Returns a number smoothly interpolated between the [code]from[/code] and "
-"[code]to[/code], based on the [code]weight[/code]. Similar to [method lerp], "
-"but interpolates faster at the beginning and slower at the end.\n"
+#: modules/gdscript/doc_classes/@GDScript.xml:1110
+msgid ""
+"Returns the result of smoothly interpolating the value of [code]s[/code] "
+"between [code]0[/code] and [code]1[/code], based on the where [code]s[/code] "
+"lies with respect to the edges [code]from[/code] and [code]to[/code].\n"
+"The return value is [code]0[/code] if [code]s <= from[/code], and [code]1[/"
+"code] if [code]s >= to[/code]. If [code]s[/code] lies between [code]from[/"
+"code] and [code]to[/code], the returned value follows an S-shaped curve that "
+"maps [code]s[/code] between [code]0[/code] and [code]1[/code].\n"
+"This S-shaped curve is the cubic Hermite interpolator, given by [code]f(s) = "
+"3*s^2 - 2*s^3[/code].\n"
"[codeblock]\n"
-"smoothstep(0, 2, 0.5) # Returns 0.15\n"
+"smoothstep(0, 2, -5.0) # Returns 0.0\n"
+"smoothstep(0, 2, 0.5) # Returns 0.15625\n"
"smoothstep(0, 2, 1.0) # Returns 0.5\n"
"smoothstep(0, 2, 2.0) # Returns 1.0\n"
"[/codeblock]"
msgstr ""
-"Devuelve un número interpolado suavemente entre el [code]from[/code] y el "
-"[code]to[/code], basado en el [code]weight[/code]. Es similar al [método "
-"lerp], pero interpola más rápido al inicio y más lento al final.\n"
-"[codeblock]\n"
-"smoothstep(0, 2, 0.5) # Devuelve 0.15\n"
-"smoothstep(0, 2, 1.0) # Devuelve 0.5\n"
-"smoothstep(0, 2, 2.0) # Devuelve 1.0\n"
-"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:1111
+#: modules/gdscript/doc_classes/@GDScript.xml:1127
msgid ""
-"Returns the square root of [code]s[/code].\n"
+"Returns the square root of [code]s[/code], where [code]s[/code] is a non-"
+"negative number.\n"
"[codeblock]\n"
"sqrt(9) # Returns 3\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b]Negative values of [code]s[/code] return NaN. If you need "
+"negative inputs, use [code]System.Numerics.Complex[/code] in C#."
msgstr ""
-"Devuelve la raíz cuadrada de [code]s[/code].\n"
-"[codeblock]\n"
-"sqrt(9) # Devuelve 3\n"
-"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:1123
+#: modules/gdscript/doc_classes/@GDScript.xml:1140
msgid ""
"Returns the position of the first non-zero digit, after the decimal point. "
"Note that the maximum return value is 10, which is a design decision in the "
@@ -1509,7 +1547,7 @@ msgstr ""
"n = step_decimals(0.000000005)\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:1142
+#: modules/gdscript/doc_classes/@GDScript.xml:1159
msgid ""
"Snaps float value [code]s[/code] to a given [code]step[/code]. This can also "
"be used to round a floating point number to an arbitrary number of "
@@ -1527,7 +1565,7 @@ msgstr ""
"stepify(3.14159, 0.01) # Devuelve 3.14\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:1153
+#: modules/gdscript/doc_classes/@GDScript.xml:1170
msgid ""
"Converts one or more arguments to string in the best way possible.\n"
"[codeblock]\n"
@@ -1545,7 +1583,7 @@ msgstr ""
"len(b) # Devuelve 12\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:1168
+#: modules/gdscript/doc_classes/@GDScript.xml:1185
msgid ""
"Converts a formatted string that was returned by [method var2str] to the "
"original value.\n"
@@ -1563,7 +1601,7 @@ msgstr ""
"print(b[\"a\"]) # Imprime 1\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:1182
+#: modules/gdscript/doc_classes/@GDScript.xml:1199
msgid ""
"Returns the tangent of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -1575,7 +1613,7 @@ msgstr ""
"tan(deg2rad(45)) # Devuelve 1\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:1194
+#: modules/gdscript/doc_classes/@GDScript.xml:1211
msgid ""
"Returns the hyperbolic tangent of [code]s[/code].\n"
"[codeblock]\n"
@@ -1589,26 +1627,25 @@ msgstr ""
"tanh(a) # Devuelve 0.6\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:1207
+#: modules/gdscript/doc_classes/@GDScript.xml:1224
msgid ""
-"Converts a Variant [code]var[/code] to JSON text and return the result. "
+"Converts a [Variant] [code]var[/code] to JSON text and return the result. "
"Useful for serializing data to store or send over the network.\n"
"[codeblock]\n"
+"# Both numbers below are integers.\n"
"a = { \"a\": 1, \"b\": 2 }\n"
"b = to_json(a)\n"
"print(b) # {\"a\":1, \"b\":2}\n"
-"[/codeblock]"
+"# Both numbers above are floats, even if they display without any decimal "
+"places.\n"
+"[/codeblock]\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, converting a [Variant] to JSON "
+"text will convert all numerical values to [float] types.\n"
+"See also [JSON] for an alternative way to convert a [Variant] to JSON text."
msgstr ""
-"Convierte una variable [code]var[/code] en texto JSON y devuelve el "
-"resultado. Es útil para serializar datos y almacenarlos o enviarlos a través "
-"de la red.\n"
-"[codeblock]\n"
-"a = { \"a\": 1, \"b\": 2 }\n"
-"b = to_json(a)\n"
-"print(b) # {\"a\":1, \"b\":2}\n"
-"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:1221
+#: modules/gdscript/doc_classes/@GDScript.xml:1242
msgid ""
"Returns whether the given class exists in [ClassDB].\n"
"[codeblock]\n"
@@ -1622,7 +1659,7 @@ msgstr ""
"type_exists(\"Variant\") # Devuelve false\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:1234
+#: modules/gdscript/doc_classes/@GDScript.xml:1255
msgid ""
"Returns the internal type of the given Variant object, using the [enum "
"Variant.Type] values.\n"
@@ -1644,7 +1681,8 @@ msgstr ""
" print(\"resultados inesperados\")\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:1250
+#: modules/gdscript/doc_classes/@GDScript.xml:1271
+#, fuzzy
msgid ""
"Checks that [code]json[/code] is valid JSON data. Returns an empty string if "
"valid, or an error message otherwise.\n"
@@ -1652,9 +1690,9 @@ msgid ""
"j = to_json([1, 2, 3])\n"
"v = validate_json(j)\n"
"if not v:\n"
-" print(\"valid\")\n"
+" print(\"Valid JSON.\")\n"
"else:\n"
-" prints(\"invalid\", v)\n"
+" push_error(\"Invalid JSON: \" + v)\n"
"[/codeblock]"
msgstr ""
"Comprueba que [code]json[/code] es un dato JSON válido. Devuelve una cadena "
@@ -1668,7 +1706,7 @@ msgstr ""
" prints(\"invalido\", v)\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:1269
+#: modules/gdscript/doc_classes/@GDScript.xml:1290
msgid ""
"Encodes a variable value to a byte array. When [code]full_objects[/code] is "
"[code]true[/code] encoding objects is allowed (and can potentially include "
@@ -1678,7 +1716,7 @@ msgstr ""
"code] es [code]true[/code] se permite la codificación de objetos (y puede "
"potencialmente incluir código)."
-#: modules/gdscript/doc_classes/@GDScript.xml:1278
+#: modules/gdscript/doc_classes/@GDScript.xml:1299
msgid ""
"Converts a Variant [code]var[/code] to a formatted string that can later be "
"parsed using [method str2var].\n"
@@ -1708,7 +1746,7 @@ msgstr ""
"}\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:1298
+#: modules/gdscript/doc_classes/@GDScript.xml:1319
msgid ""
"Returns a weak reference to an object.\n"
"A weak reference to an object is not enough to keep the object alive: when "
@@ -1725,38 +1763,28 @@ msgstr ""
"realmente destruido la referencia débil puede devolver el objeto aunque no "
"haya referencias fuertes a él."
-#: modules/gdscript/doc_classes/@GDScript.xml:1312
+#: modules/gdscript/doc_classes/@GDScript.xml:1333
+#, fuzzy
msgid ""
"Wraps float [code]value[/code] between [code]min[/code] and [code]max[/"
"code].\n"
"Usable for creating loop-alike behavior or infinite surfaces.\n"
"[codeblock]\n"
-"# a is 0.5\n"
-"a = wrapf(10.5, 0.0, 10.0)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# a is 9.5\n"
-"a = wrapf(-0.5, 0.0, 10.0)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# Infinite loop between 0.0 and 0.99\n"
-"f = wrapf(f + 0.1, 0.0, 1.0)\n"
+"# Infinite loop between 5.0 and 9.9\n"
+"value = wrapf(value + 0.1, 5.0, 10.0)\n"
"[/codeblock]\n"
"[codeblock]\n"
"# Infinite rotation (in radians)\n"
"angle = wrapf(angle + 0.1, 0.0, TAU)\n"
"[/codeblock]\n"
-"[b]Note:[/b] If you just want to wrap between 0.0 and [code]n[/code] (where "
-"[code]n[/code] is a positive floating-point value), it is better for "
-"performance to use the [method fmod] method like [code]fmod(number, n)[/"
-"code].\n"
-"[code]wrapf[/code] is more flexible than using the [method fmod] approach by "
-"giving the user a simple control over the minimum value. It also fully "
-"supports negative numbers, e.g.\n"
"[codeblock]\n"
"# Infinite rotation (in radians)\n"
"angle = wrapf(angle + 0.1, -PI, PI)\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] If [code]min[/code] is [code]0[/code], this is equivalent to "
+"[method fposmod], so prefer using that instead.\n"
+"[code]wrapf[/code] is more flexible than using the [method fposmod] approach "
+"by giving the user control over the minimum value."
msgstr ""
"Convierte el real [code]value[/code] entre [code]min[/code] y [code]max[/"
"code].\n"
@@ -1789,33 +1817,24 @@ msgstr ""
"angulo = wrapf(angulo + 0.1, -PI, PI)\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:1348
+#: modules/gdscript/doc_classes/@GDScript.xml:1361
+#, fuzzy
msgid ""
"Wraps integer [code]value[/code] between [code]min[/code] and [code]max[/"
"code].\n"
"Usable for creating loop-alike behavior or infinite surfaces.\n"
"[codeblock]\n"
-"# a is 0\n"
-"a = wrapi(10, 0, 10)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# a is 9\n"
-"a = wrapi(-1, 0, 10)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# Infinite loop between 0 and 9\n"
-"frame = wrapi(frame + 1, 0, 10)\n"
+"# Infinite loop between 5 and 9\n"
+"frame = wrapi(frame + 1, 5, 10)\n"
"[/codeblock]\n"
-"[b]Note:[/b] If you just want to wrap between 0 and [code]n[/code] (where "
-"[code]n[/code] is a positive integer value), it is better for performance to "
-"use the modulo operator like [code]number % n[/code].\n"
-"[code]wrapi[/code] is more flexible than using the modulo approach by giving "
-"the user a simple control over the minimum value. It also fully supports "
-"negative numbers, e.g.\n"
"[codeblock]\n"
"# result is -2\n"
"var result = wrapi(-6, -5, -1)\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] If [code]min[/code] is [code]0[/code], this is equivalent to "
+"[method posmod], so prefer using that instead.\n"
+"[code]wrapi[/code] is more flexible than using the [method posmod] approach "
+"by giving the user control over the minimum value."
msgstr ""
"Convierte el numero entero [code]value[/code] que esta entre [code]min[/"
"code] y [code]max[/code].\n"
@@ -1843,121 +1862,30 @@ msgstr ""
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:1378
-msgid ""
-"Stops the function execution and returns the current suspended state to the "
-"calling function.\n"
-"From the caller, call [method GDScriptFunctionState.resume] on the state to "
-"resume execution. This invalidates the state. Within the resumed function, "
-"[code]yield()[/code] returns whatever was passed to the [code]resume()[/"
-"code] function call.\n"
-"If passed an object and a signal, the execution is resumed when the object "
-"emits the given signal. In this case, [code]yield()[/code] returns the "
-"argument passed to [code]emit_signal()[/code] if the signal takes only one "
-"argument, or an array containing all the arguments passed to "
-"[code]emit_signal()[/code] if the signal takes multiple arguments.\n"
-"You can also use [code]yield[/code] to wait for a function to finish:\n"
-"[codeblock]\n"
-"func _ready():\n"
-" yield(countdown(), \"completed\") # waiting for the countdown() function "
-"to complete\n"
-" print('Ready')\n"
-"\n"
-"func countdown():\n"
-" yield(get_tree(), \"idle_frame\") # returns a GDScriptFunctionState "
-"object to _ready()\n"
-" print(3)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-" print(2)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-" print(1)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-"\n"
-"# prints:\n"
-"# 3\n"
-"# 2\n"
-"# 1\n"
-"# Ready\n"
-"[/codeblock]\n"
-"When yielding on a function, the [code]completed[/code] signal will be "
-"emitted automatically when the function returns. It can, therefore, be used "
-"as the [code]signal[/code] parameter of the [code]yield[/code] method to "
-"resume.\n"
-"In order to yield on a function, the resulting function should also return a "
-"[code]GDScriptFunctionState[/code]. Notice [code]yield(get_tree(), "
-"\"idle_frame\")[/code] from the above example."
-msgstr ""
-"Detiene la ejecución de la función y devuelve el estado suspendido actual a "
-"la función que lo ha llamado.\n"
-"Desde el llamador, llama [method GDScriptFunctionState.resume] al estado "
-"para reanudar la ejecución. Esto invalida el estado. Dentro de la función "
-"reanudada, [code]yield()[/code] devuelve lo que se pasó a la llamada de la "
-"función [code]resume()[/code].\n"
-"Si se pasa un objeto y una señal, la ejecución se reanuda cuando el objeto "
-"emite la señal dada. En este caso, [code]yield()[/code] devuelve el "
-"argumento pasado a [code]emit_signal()[/code] si la señal toma un solo "
-"argumento, o un array que contiene todos los argumentos pasados a "
-"[code]emit_signal()[/code] si la señal toma múltiples argumentos.\n"
-"También puedes usar [code]yield[/code] para esperar a que una función "
-"termine:\n"
-"[codeblock]\n"
-"func _ready():\n"
-" yield(cuentaAtras(), \"completed\") # esperando por la funcion "
-"cuentaAtras() a que termine\n"
-" print('Preparado')\n"
-"\n"
-"func cuentaAtras():\n"
-" yield(get_tree(), \"idle_frame\") # devuelve un objeto "
-"GDScriptFunctionState a _ready()\n"
-" print(3)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-" print(2)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-" print(1)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-"\n"
-"# prints:\n"
-"# 3\n"
-"# 2\n"
-"# 1\n"
-"# Ready\n"
-"[/codeblock]\n"
-"Al ceder una función, la señal [code]completed[/code] se emitirá "
-"automáticamente cuando la función retorne. Por lo tanto, puede utilizarse "
-"como parámetro [code]signal[/code] del método [code]yield[/code] para "
-"reanudar.\n"
-"Para ceder una función, la función resultante también debe devolver un "
-"[code]GDScriptFunctionState[/code]. Observe [code]yield(get_tree(), "
-"\"idle_frame\")[/code] del ejemplo anterior."
-
-#: modules/gdscript/doc_classes/@GDScript.xml:1409
+#, fuzzy
msgid ""
"Constant that represents how many times the diameter of a circle fits around "
-"its perimeter."
+"its perimeter. This is equivalent to [code]TAU / 2[/code]."
msgstr ""
"Constante que representa cuántas veces el diámetro de un círculo se "
"encuentra contenido en su perímetro."
-#: modules/gdscript/doc_classes/@GDScript.xml:1412
-msgid "The circle constant, the circumference of the unit circle."
+#: modules/gdscript/doc_classes/@GDScript.xml:1381
+#, fuzzy
+msgid "The circle constant, the circumference of the unit circle in radians."
msgstr "La constante del círculo, la circunferencia del círculo."
-#: modules/gdscript/doc_classes/@GDScript.xml:1415
-msgid "A positive infinity. (For negative infinity, use -INF)."
+#: modules/gdscript/doc_classes/@GDScript.xml:1384
+#, fuzzy
+msgid "Positive infinity. For negative infinity, use -INF."
msgstr "Un infinito positivo. (Para el infinito negativo, usa -INF)."
-#: modules/gdscript/doc_classes/@GDScript.xml:1418
+#: modules/gdscript/doc_classes/@GDScript.xml:1387
msgid ""
-"Macro constant that expands to an expression of type float that represents a "
-"NaN.\n"
-"The NaN values are used to identify undefined or non-representable values "
-"for floating-point elements, such as the square root of negative numbers or "
-"the result of 0/0."
+"\"Not a Number\", an invalid value. [code]NaN[/code] has special properties, "
+"including that it is not equal to itself. It is output by some invalid "
+"operations, such as dividing zero by zero."
msgstr ""
-"Macro constante que se expande a una expresión de tipo real que representa "
-"un NaN.\n"
-"Los valores de NaN se utilizan para identificar valores indefinidos o no "
-"representables de elementos reales como la raíz cuadrada de los números "
-"negativos o el resultado de 0/0."
#: doc/classes/@GlobalScope.xml:4
msgid "Global scope constants and variables."
@@ -1997,19 +1925,16 @@ msgid "The [Engine] singleton."
msgstr "El singleton [Engine]."
#: doc/classes/@GlobalScope.xml:31
-#, fuzzy
msgid "The [Geometry2D] singleton."
-msgstr "El singleton [Geometry]."
+msgstr "El singleton [Geometry2D]."
#: doc/classes/@GlobalScope.xml:34
-#, fuzzy
msgid "The [Geometry3D] singleton."
-msgstr "El singleton [Geometry]."
+msgstr "El singleton [Geometry3D]."
#: doc/classes/@GlobalScope.xml:37
-#, fuzzy
msgid "The [GodotSharp] singleton."
-msgstr "El singleton [Geometry]."
+msgstr "El singleton [GodotSharp]."
#: doc/classes/@GlobalScope.xml:40
msgid "The [IP] singleton."
@@ -2032,8 +1957,8 @@ msgid ""
"The [JavaClassWrapper] singleton.\n"
"[b]Note:[/b] Only implemented on Android."
msgstr ""
-"El singleton [JavaClassWrapper].\n"
-"[b]Nota:[/b] Solo implementado en Android."
+"El singleton [JavaClassWrapper] .\n"
+"[b]Nota:[/b] Sólo implementado en Android."
#: doc/classes/@GlobalScope.xml:56
msgid ""
@@ -2041,7 +1966,7 @@ msgid ""
"[b]Note:[/b] Only implemented on HTML5."
msgstr ""
"El singleton [JavaScript].\n"
-"[b]Nota:[/b] Solo implementado en HTML5."
+"[b]Nota:[/b] Sólo implementado en HTML5."
#: doc/classes/@GlobalScope.xml:60
msgid "The [Marshalls] singleton."
@@ -2053,7 +1978,7 @@ msgstr "El singleton [NavigationMeshGenerator]."
#: doc/classes/@GlobalScope.xml:66 doc/classes/@GlobalScope.xml:69
msgid "The [NavigationServer2D] singleton."
-msgstr "El singleton[NavigationServer2D]."
+msgstr "El singleton [NavigationServer2D]."
#: doc/classes/@GlobalScope.xml:72
msgid "The [OS] singleton."
@@ -2102,50 +2027,50 @@ msgstr "El singleton [XRServer]."
#: doc/classes/@GlobalScope.xml:107
msgid "Left margin, usually used for [Control] or [StyleBox]-derived classes."
msgstr ""
-"Margen izquierdo, generalmente utilizado para [Control] o clases derivadas "
-"de [StyleBox]."
+"Margen izquierdo, normalmente usado para las clases derivadas de [Control] o "
+"[StyleBox]."
#: doc/classes/@GlobalScope.xml:110
msgid "Top margin, usually used for [Control] or [StyleBox]-derived classes."
msgstr ""
-"Margen superior, generalmente utilizado para [Control] o clases derivadas de "
+"Margen superior, normalmente usado para las clases derivadas de [Control] o "
"[StyleBox]."
#: doc/classes/@GlobalScope.xml:113
msgid "Right margin, usually used for [Control] or [StyleBox]-derived classes."
msgstr ""
-"Margen derecho, generalmente utilizado para [Control] o clases derivadas de "
+"Margen derecho, normalmente usado para las clases derivadas de [Control] o "
"[StyleBox]."
#: doc/classes/@GlobalScope.xml:116
msgid ""
"Bottom margin, usually used for [Control] or [StyleBox]-derived classes."
msgstr ""
-"Margen inferior, generalmente utilizado para [Control]o clases derivadas de "
+"Margen inferior, normalmente usado para las clases derivadas de [Control] o "
"[StyleBox]."
#: doc/classes/@GlobalScope.xml:119
msgid "Top-left corner."
-msgstr "Esquina Superior-Izquierda."
+msgstr "Esquina Superior Izquierda."
#: doc/classes/@GlobalScope.xml:122
msgid "Top-right corner."
-msgstr "Esquina Superior-Derecha."
+msgstr "Esquina Superior Derecha."
#: doc/classes/@GlobalScope.xml:125
msgid "Bottom-right corner."
-msgstr "Esquina Inferior-Derecha."
+msgstr "Esquina Inferior Derecha."
#: doc/classes/@GlobalScope.xml:128
msgid "Bottom-left corner."
-msgstr "Esquina Inferior-Izquierda."
+msgstr "Esquina Inferior Izquierda."
#: doc/classes/@GlobalScope.xml:131
msgid ""
"General vertical alignment, usually used for [Separator], [ScrollBar], "
"[Slider], etc."
msgstr ""
-"Alineación vertical general, usualmente usada para [Separator], "
+"Alineación vertical general, generalmente usada para [Separator], "
"[ScrollBar], [Slider], etc."
#: doc/classes/@GlobalScope.xml:134
@@ -2153,7 +2078,7 @@ msgid ""
"General horizontal alignment, usually used for [Separator], [ScrollBar], "
"[Slider], etc."
msgstr ""
-"Alineación horizontal general, generalmente utilizada para [Separator], "
+"Alineación horizontal general, generalmente usada para [Separator], "
"[ScrollBar], [Slider], etc."
#: doc/classes/@GlobalScope.xml:137
@@ -3262,274 +3187,276 @@ msgid "Extra mouse button 2 mask."
msgstr "Máscara de botón de ratón extra 2."
#: doc/classes/@GlobalScope.xml:953
-#, fuzzy
msgid "An invalid game controller button."
-msgstr "Botón A del mando de Nintendo."
+msgstr "Un botón de control de juego inválido."
#: doc/classes/@GlobalScope.xml:956
-#, fuzzy
msgid "Game controller SDL button A."
-msgstr "Botón B del mando de Xbox."
+msgstr "Botón A del mando de juego SDL."
#: doc/classes/@GlobalScope.xml:959
-#, fuzzy
msgid "Game controller SDL button B."
-msgstr "Botón B del mando de Xbox."
+msgstr "Botón B del mando de juego SDL."
#: doc/classes/@GlobalScope.xml:962
-#, fuzzy
msgid "Game controller SDL button X."
-msgstr "Botón B del mando de Xbox."
+msgstr "Botón X del mando de juego SDL."
#: doc/classes/@GlobalScope.xml:965
-#, fuzzy
msgid "Game controller SDL button Y."
-msgstr "Botón B del mando de Xbox."
+msgstr "Botón Y del mando de juego SDL."
#: doc/classes/@GlobalScope.xml:968
-#, fuzzy
msgid "Game controller SDL back button."
-msgstr "Botón B del mando de Xbox."
+msgstr "Botón volver del mando de juego SDL."
#: doc/classes/@GlobalScope.xml:971
-#, fuzzy
msgid "Game controller SDL guide button."
-msgstr "Botón B del mando de Xbox."
+msgstr "Botón guía del mando de juego SDL."
#: doc/classes/@GlobalScope.xml:974
-#, fuzzy
msgid "Game controller SDL start button."
-msgstr "Botón B del mando de Xbox."
+msgstr "Botón start del mando de juego SDL."
#: doc/classes/@GlobalScope.xml:977
-#, fuzzy
msgid "Game controller SDL left stick button."
-msgstr "Botón B del mando de Xbox."
+msgstr "Botón stick izquierdo del mando de juego SDL."
#: doc/classes/@GlobalScope.xml:980
-#, fuzzy
msgid "Game controller SDL right stick button."
-msgstr "Botón B del mando de Xbox."
+msgstr "Botón stick derecho del mando de juego SDL."
#: doc/classes/@GlobalScope.xml:983
-#, fuzzy
msgid "Game controller SDL left shoulder button."
-msgstr "Botón del hombro izquierdo del mando de videojuegos."
+msgstr "Botón del hombro izquierdo del mando de juego SDL."
#: doc/classes/@GlobalScope.xml:986
-#, fuzzy
msgid "Game controller SDL right shoulder button."
-msgstr "Botón del hombro derecho del mando de videojuegos."
+msgstr "Botón del hombro derecho del mando de juego SDL."
#: doc/classes/@GlobalScope.xml:989
-#, fuzzy
msgid "Game controller SDL D-pad up button."
-msgstr "Botón B del mando de Xbox."
+msgstr "Botón D-Pad arriba del mando de juego SDL."
#: doc/classes/@GlobalScope.xml:992
-#, fuzzy
msgid "Game controller SDL D-pad down button."
-msgstr "Botón B del mando de Xbox."
+msgstr "Botón D-Pad abajo del mando de juego SDL."
#: doc/classes/@GlobalScope.xml:995
-#, fuzzy
msgid "Game controller SDL D-pad left button."
-msgstr "Botón B del mando de Xbox."
+msgstr "Botón D-Pad izquierda del mando de juego SDL."
#: doc/classes/@GlobalScope.xml:998
-#, fuzzy
msgid "Game controller SDL D-pad right button."
-msgstr "Botón B del mando de Xbox."
+msgstr "Botón D-Pad derecha del mando de juego SDL."
#: doc/classes/@GlobalScope.xml:1001
-#, fuzzy
msgid "The number of SDL game controller buttons."
-msgstr "Botón B del mando de Xbox."
+msgstr "El número de botones del mando de juego SDL."
#: doc/classes/@GlobalScope.xml:1004
msgid "Sony DualShock controller X button maps to SDL button A."
-msgstr ""
+msgstr "El botón X del mando DualShock de Sony se asigna al botón A del SDL."
#: doc/classes/@GlobalScope.xml:1007
msgid "Sony DualShock controller cross button maps to SDL button A."
msgstr ""
+"El botón cruz del mando DualShock de Sony se asigna al botón A del SDL."
#: doc/classes/@GlobalScope.xml:1010
msgid "Sony DualShock controller circle button maps to SDL button B."
msgstr ""
+"El botón círculo del mando DualShock de Sony se asigna al botón B del SDL."
#: doc/classes/@GlobalScope.xml:1013
msgid "Sony DualShock controller square button maps to SDL button X."
msgstr ""
+"El botón cuadrado del mando DualShock de Sony se asigna al botón X del SDL."
#: doc/classes/@GlobalScope.xml:1016
msgid "Sony DualShock controller triangle button maps to SDL button Y."
msgstr ""
+"El botón del triángulo del mando de Sony DualShock se asigna al botón Y de "
+"SDL."
#: doc/classes/@GlobalScope.xml:1019
msgid "Sony DualShock controller select button maps to SDL back button."
msgstr ""
+"El mando de Sony DualShock selecciona los mapas de botones para el botón de "
+"volver del SDL."
#: doc/classes/@GlobalScope.xml:1022
msgid "Sony DualShock controller start button maps to SDL start button."
msgstr ""
+"El botón de inicio del mando Sony DualShock se asigna al botón de start de "
+"SDL."
#: doc/classes/@GlobalScope.xml:1025
msgid "Sony DualShock controller PS button maps to SDL guide button."
msgstr ""
+"El botón PS del mando Sony DualShock se asigna al botón de guía de SDL."
#: doc/classes/@GlobalScope.xml:1028
msgid "Sony DualShock controller L1 button maps to SDL left shoulder button."
msgstr ""
+"El botón L1 del mando Sony DualShock se asigna al botón del hombro izquierdo "
+"de SDL."
#: doc/classes/@GlobalScope.xml:1031
msgid "Sony DualShock controller R1 button maps to SDL right shoulder button."
msgstr ""
+"El botón R1 del mando Sony DualShock se asigna al botón del hombro derecho "
+"de SDL."
#: doc/classes/@GlobalScope.xml:1034
msgid "Sony DualShock controller L3 button maps to SDL left stick button."
msgstr ""
+"El botón L3 del mando DualShock de Sony se asigna al botón del stick "
+"izquierdo del SDL."
#: doc/classes/@GlobalScope.xml:1037
msgid "Sony DualShock controller R3 button maps to SDL right stick button."
msgstr ""
+"El botón R3 del mando DualShock de Sony se asigna al botón del stick derecho "
+"del SDL."
#: doc/classes/@GlobalScope.xml:1040
-#, fuzzy
msgid "Xbox game controller A button maps to SDL button A."
-msgstr "Botón A del mando de Xbox."
+msgstr "El botón A del mando de juego de Xbox se asigna al botón A de SDL."
#: doc/classes/@GlobalScope.xml:1043
-#, fuzzy
msgid "Xbox game controller B button maps to SDL button B."
-msgstr "Botón B del mando de Xbox."
+msgstr "El botón B del mando de juego de Xbox se asigna al botón B de SDL."
#: doc/classes/@GlobalScope.xml:1046
-#, fuzzy
msgid "Xbox game controller X button maps to SDL button X."
-msgstr "Botón X del mando de Xbox."
+msgstr "El botón X del mando de juego de Xbox se asigna al botón X de SDL."
#: doc/classes/@GlobalScope.xml:1049
-#, fuzzy
msgid "Xbox game controller Y button maps to SDL button Y."
-msgstr "Boton Y del mando Xbox."
+msgstr "El botón Y del mando de juego de Xbox se asigna al botón Y de SDL."
#: doc/classes/@GlobalScope.xml:1052
msgid "Xbox game controller back button maps to SDL back button."
msgstr ""
+"El botón back del mando de juego de Xbox se mapea con el botón back del SDL."
#: doc/classes/@GlobalScope.xml:1055
msgid "Xbox game controller start button maps to SDL start button."
msgstr ""
+"El botón start del mando de juego de Xbox se mapea al botón start del SDL."
#: doc/classes/@GlobalScope.xml:1058
msgid "Xbox game controller home button maps to SDL guide button."
msgstr ""
+"El botón home del mando de juego de la Xbox se conecta con el botón de la "
+"guía de SDL."
#: doc/classes/@GlobalScope.xml:1061
msgid "Xbox game controller left stick button maps to SDL left stick button."
msgstr ""
+"El botón stick izquierdo del mando de juego de la Xbox se mapea con el botón "
+"stick izquierdo del SDL."
#: doc/classes/@GlobalScope.xml:1064
msgid "Xbox game controller right stick button maps to SDL right stick button."
msgstr ""
+"El botón stick derecho del mando de juego de la Xbox se mapea con el botón "
+"stick derecho del SDL."
#: doc/classes/@GlobalScope.xml:1067
msgid ""
"Xbox game controller left bumper button maps to SDL left shoulder button."
msgstr ""
+"El botón del bumper izquierdo del mando de juego de la Xbox se mapea con el "
+"botón del hombro izquierdo del SDL."
#: doc/classes/@GlobalScope.xml:1070
msgid ""
"Xbox game controller right bumper button maps to SDL right shoulder button."
msgstr ""
+"El botón del bumper derecho del mando de juego de la Xbox se mapea con el "
+"botón del hombro derecho del SDL."
#: doc/classes/@GlobalScope.xml:1073
-#, fuzzy
msgid "The maximum number of game controller buttons."
-msgstr "Botón A del mando de Nintendo."
+msgstr "El número máximo de botones del mando del juego."
#: doc/classes/@GlobalScope.xml:1076
msgid "An invalid game controller axis."
-msgstr ""
+msgstr "Un eje de control de juego inválido."
#: doc/classes/@GlobalScope.xml:1079
-#, fuzzy
msgid "Game controller left joystick x-axis."
-msgstr "Palo izquierdo del eje vertical del mando de videojuegos."
+msgstr "Mando del juego eje X izquierdo del joystick."
#: doc/classes/@GlobalScope.xml:1082
-#, fuzzy
msgid "Game controller left joystick y-axis."
-msgstr "Palo izquierdo del eje vertical del mando de videojuegos."
+msgstr "Mando del juego eje Y izquierdo del joystick."
#: doc/classes/@GlobalScope.xml:1085
-#, fuzzy
msgid "Game controller right joystick x-axis."
-msgstr "Palo derecho del eje vertical del mando de videojuegos."
+msgstr "Mando del juego eje X derecho del joystick."
#: doc/classes/@GlobalScope.xml:1088
-#, fuzzy
msgid "Game controller right joystick y-axis."
-msgstr "Palo derecho del eje vertical del mando de videojuegos."
+msgstr "Mando del juego eje Y derecho del joystick."
#: doc/classes/@GlobalScope.xml:1091
-#, fuzzy
msgid "Game controller left trigger axis."
msgstr "Eje analógico del gatillo izquierdo del mando de videojuegos."
#: doc/classes/@GlobalScope.xml:1094
-#, fuzzy
msgid "Game controller right trigger axis."
-msgstr "Gatillo derecho de eje analogico del mando de juegos."
+msgstr "Gatillo derecho de eje analógico del mando de juegos."
#: doc/classes/@GlobalScope.xml:1097
msgid "The number of SDL game controller axes."
-msgstr ""
+msgstr "El número de ejes del mando de juego SDL."
#: doc/classes/@GlobalScope.xml:1100
msgid "Game controller joystick 0 x-axis."
-msgstr ""
+msgstr "El joystick 0 eje-x del mando del juego."
#: doc/classes/@GlobalScope.xml:1103
msgid "Game controller joystick 0 y-axis."
-msgstr ""
+msgstr "El joystick 0 eje-y del mando del juego."
#: doc/classes/@GlobalScope.xml:1106
msgid "Game controller joystick 1 x-axis."
-msgstr ""
+msgstr "El joystick 1 eje-x del mando del juego."
#: doc/classes/@GlobalScope.xml:1109
msgid "Game controller joystick 1 y-axis."
-msgstr ""
+msgstr "El joystick 1 eje-y del mando del juego."
#: doc/classes/@GlobalScope.xml:1112
msgid "Game controller joystick 2 x-axis."
-msgstr ""
+msgstr "El joystick 2 eje-x del mando del juego."
#: doc/classes/@GlobalScope.xml:1115
msgid "Game controller joystick 2 y-axis."
-msgstr ""
+msgstr "El joystick 2 eje-y del mando del juego."
#: doc/classes/@GlobalScope.xml:1118
msgid "Game controller joystick 3 x-axis."
-msgstr ""
+msgstr "El joystick 3 eje-x del mando del juego."
#: doc/classes/@GlobalScope.xml:1121
msgid "Game controller joystick 3 y-axis."
-msgstr ""
+msgstr "El joystick 3 eje-y del mando del juego."
#: doc/classes/@GlobalScope.xml:1124
msgid "Game controller joystick 4 x-axis."
-msgstr ""
+msgstr "El joystick 4 eje-x del mando del juego."
#: doc/classes/@GlobalScope.xml:1127
msgid "Game controller joystick 4 y-axis."
-msgstr ""
+msgstr "El joystick 4 eje-y del mando del juego."
#: doc/classes/@GlobalScope.xml:1130
msgid "The maximum number of game controller axes."
-msgstr ""
+msgstr "El número máximo de ejes del mando de juego."
#: doc/classes/@GlobalScope.xml:1133
msgid "MIDI note OFF message."
@@ -3541,7 +3468,7 @@ msgstr "Nota MIDI Mensaje ON."
#: doc/classes/@GlobalScope.xml:1139
msgid "MIDI aftertouch message."
-msgstr "Nota MIDI Mensaje Despues de tocar."
+msgstr "Nota MIDI Mensaje Despues de tocar."
#: doc/classes/@GlobalScope.xml:1142
msgid "MIDI control change message."
@@ -3560,7 +3487,6 @@ msgid "MIDI pitch bend message."
msgstr "Nota MIDI Cambio de Tono."
#: doc/classes/@GlobalScope.xml:1154
-#, fuzzy
msgid ""
"Methods that return [enum Error] return [constant OK] when no error "
"occurred. Note that many functions don't return an error code but will print "
@@ -4346,40 +4272,46 @@ msgstr ""
"Se utiliza típicamente para pruebas de superposición rápida."
#: doc/classes/AABB.xml:10 doc/classes/Plane.xml:10 doc/classes/Rect2.xml:11
-#: doc/classes/Rect2i.xml:11 doc/classes/Transform.xml:10
+#: doc/classes/Rect2i.xml:11 doc/classes/Transform.xml:11
#: doc/classes/Vector2.xml:12 doc/classes/Vector2i.xml:12
#: doc/classes/Vector3.xml:12 doc/classes/Vector3i.xml:12
msgid "https://docs.godotengine.org/en/latest/tutorials/math/index.html"
msgstr "https://docs.godotengine.org/es/latest/tutorials/math/index.html"
#: doc/classes/AABB.xml:21
-msgid "Optional constructor, accepts position and size."
+#, fuzzy
+msgid "Constructs an [AABB] from a position and size."
msgstr "Constructor opcional, acepta la posición y el tamaño."
-#: doc/classes/AABB.xml:30
+#: doc/classes/AABB.xml:28
+msgid ""
+"Returns an AABB with equivalent position and size, modified so that the most-"
+"negative corner is the origin and the size is positive."
+msgstr ""
+
+#: doc/classes/AABB.xml:37
msgid ""
"Returns [code]true[/code] if this [AABB] completely encloses another one."
msgstr ""
"Devuelve [code]true[/code] si este [AABB] contiene completamente a otro."
-#: doc/classes/AABB.xml:39
+#: doc/classes/AABB.xml:46
msgid "Returns this [AABB] expanded to include a given point."
msgstr "Devuelve este [AABB] ampliado para incluir un punto dado."
-#: doc/classes/AABB.xml:46
+#: doc/classes/AABB.xml:53
msgid "Returns the volume of the [AABB]."
msgstr "Devuelve el volumen del [AABB]."
-#: doc/classes/AABB.xml:55
+#: doc/classes/AABB.xml:62
msgid "Gets the position of the 8 endpoints of the [AABB] in space."
msgstr "Obtiene la posición de los 8 puntos finales del [AABB] en el espacio."
-#: doc/classes/AABB.xml:62
+#: doc/classes/AABB.xml:69
msgid "Returns the normalized longest axis of the [AABB]."
msgstr "Devuelve el eje más largo normalizado del [AABB]."
-#: doc/classes/AABB.xml:69
-#, fuzzy
+#: doc/classes/AABB.xml:76
msgid ""
"Returns the index of the longest axis of the [AABB] (according to "
"[Vector3]'s [code]AXIS_*[/code] constants)."
@@ -4387,15 +4319,15 @@ msgstr ""
"Devuelve el indice del eje mas grande de [AABB] (segun la constante "
"[Vector3] [code]AXIS_*[/code])."
-#: doc/classes/AABB.xml:76
+#: doc/classes/AABB.xml:83
msgid "Returns the scalar length of the longest axis of the [AABB]."
msgstr "Devuelve la longitud escalar del eje más largo del [AABB]."
-#: doc/classes/AABB.xml:83
+#: doc/classes/AABB.xml:90
msgid "Returns the normalized shortest axis of the [AABB]."
msgstr "Devuelve el eje más corto normalizado de la [AABB]."
-#: doc/classes/AABB.xml:90
+#: doc/classes/AABB.xml:97
msgid ""
"Returns the index of the shortest axis of the [AABB] (according to "
"[Vector3]::AXIS* enum)."
@@ -4403,11 +4335,11 @@ msgstr ""
"Devuelve el índice del eje más corto del [AABB] (según el enumerado "
"[Vector3]::AXIS* )."
-#: doc/classes/AABB.xml:97
+#: doc/classes/AABB.xml:104
msgid "Returns the scalar length of the shortest axis of the [AABB]."
msgstr "Devuelve la longitud escalar del eje más corto del [AABB]."
-#: doc/classes/AABB.xml:106
+#: doc/classes/AABB.xml:113
msgid ""
"Returns the support point in a given direction. This is useful for collision "
"detection algorithms."
@@ -4415,7 +4347,7 @@ msgstr ""
"Devuelve el punto de apoyo en una dirección determinada. Esto es útil para "
"los algoritmos de detección de colisiones."
-#: doc/classes/AABB.xml:115
+#: doc/classes/AABB.xml:122
msgid ""
"Returns a copy of the [AABB] grown a given amount of units towards all the "
"sides."
@@ -4423,19 +4355,19 @@ msgstr ""
"Devuelve una copia de la [AABB] crecida una cantidad dada de unidades hacia "
"todos los lados."
-#: doc/classes/AABB.xml:122
+#: doc/classes/AABB.xml:129
msgid "Returns [code]true[/code] if the [AABB] is flat or empty."
msgstr "Devuelve [code]true[/code] si el [AABB] es plano o vacío."
-#: doc/classes/AABB.xml:129
+#: doc/classes/AABB.xml:136
msgid "Returns [code]true[/code] if the [AABB] is empty."
msgstr "Devuelve [code]true[/code] si el [AABB] está vacío."
-#: doc/classes/AABB.xml:138
+#: doc/classes/AABB.xml:145
msgid "Returns [code]true[/code] if the [AABB] contains a point."
msgstr "Devuelve [code]true[/code] si el [AABB] contiene un punto."
-#: doc/classes/AABB.xml:147
+#: doc/classes/AABB.xml:154
msgid ""
"Returns the intersection between two [AABB]. An empty AABB (size 0,0,0) is "
"returned on failure."
@@ -4443,16 +4375,16 @@ msgstr ""
"Devuelve la intersección entre dos [AABB]. Un AABB vacío (tamaño 0,0,0) se "
"devuelve al fallar."
-#: doc/classes/AABB.xml:156
+#: doc/classes/AABB.xml:163
msgid "Returns [code]true[/code] if the [AABB] overlaps with another."
msgstr "Devuelve [code]true[/code] si el [AABB] se solapa con otro."
-#: doc/classes/AABB.xml:165
+#: doc/classes/AABB.xml:172
msgid "Returns [code]true[/code] if the [AABB] is on both sides of a plane."
msgstr ""
"Devuelve [code]true[/code] si el [AABB] está a ambos lados de un plano."
-#: doc/classes/AABB.xml:176
+#: doc/classes/AABB.xml:183
msgid ""
"Returns [code]true[/code] if the [AABB] intersects the line segment between "
"[code]from[/code] and [code]to[/code]."
@@ -4460,7 +4392,7 @@ msgstr ""
"Devuelve [code]true[/code] si el [AABB] intersecta el segmento de línea "
"entre [code]from[/code] y [code]to[/code]."
-#: doc/classes/AABB.xml:185
+#: doc/classes/AABB.xml:192
msgid ""
"Returns [code]true[/code] if this [AABB] and [code]aabb[/code] are "
"approximately equal, by calling [method @GDScript.is_equal_approx] on each "
@@ -4470,29 +4402,35 @@ msgstr ""
"aproximadamente iguales, llamando al [método @GDScript.is_equal_aprox] en "
"cada componente."
-#: doc/classes/AABB.xml:194
+#: doc/classes/AABB.xml:201
msgid ""
"Returns a larger [AABB] that contains both this [AABB] and [code]with[/code]."
msgstr ""
"Devuelve un [AABB] más grande que contiene tanto este [AABB] como el "
"[code]with[/code]."
-#: doc/classes/AABB.xml:200
+#: doc/classes/AABB.xml:207 doc/classes/Rect2.xml:174
+#: doc/classes/Rect2i.xml:163
+#, fuzzy
msgid ""
-"Ending corner. This is calculated as [code]position + size[/code]. Changing "
-"this property changes [member size] accordingly."
+"Ending corner. This is calculated as [code]position + size[/code]. Setting "
+"this value will change the size."
msgstr ""
"Esquina final. Esto se calcula como [code]position + size[/code]. Cambiar "
"esta propiedad cambia [member size]."
-#: doc/classes/AABB.xml:203
-msgid "Beginning corner."
-msgstr "Esquina de inicial."
+#: doc/classes/AABB.xml:210 doc/classes/Rect2.xml:177
+#: doc/classes/Rect2i.xml:166
+msgid "Beginning corner. Typically has values lower than [member end]."
+msgstr ""
-#: doc/classes/AABB.xml:206 doc/classes/Rect2.xml:180
+#: doc/classes/AABB.xml:213 doc/classes/Rect2.xml:180
#: doc/classes/Rect2i.xml:169
-msgid "Size from position to end."
-msgstr "Tamaño desde la posición hasta el final."
+msgid ""
+"Size from [member position] to [member end]. Typically all components are "
+"positive.\n"
+"If the size is negative, you can use [method abs] to fix it."
+msgstr ""
#: doc/classes/AcceptDialog.xml:4
msgid "Base dialog for user notification."
@@ -4577,18 +4515,18 @@ msgstr ""
msgid "The text displayed by the dialog."
msgstr "El texto mostrado en el diálogo."
-#: doc/classes/AcceptDialog.xml:82
+#: doc/classes/AcceptDialog.xml:83
msgid "Emitted when the dialog is accepted, i.e. the OK button is pressed."
msgstr "Se emite cuando se acepta el diálogo, es decir, se pulsa el botón OK."
-#: doc/classes/AcceptDialog.xml:89
+#: doc/classes/AcceptDialog.xml:90
msgid "Emitted when a custom button is pressed. See [method add_button]."
msgstr ""
"Se emite cuando se presiona un botón personalizado. Ver [method add_button]."
#: doc/classes/AESContext.xml:4
msgid "Interface to low level AES encryption features."
-msgstr ""
+msgstr "Interfaz para las características de encriptación AES de bajo nivel."
#: doc/classes/AESContext.xml:7
msgid ""
@@ -4627,18 +4565,60 @@ msgid ""
" assert(decrypted == data.to_utf8())\n"
"[/codeblock]"
msgstr ""
+"Esta clase proporciona acceso a la encriptación/desencriptación AES de los "
+"datos en bruto. Tanto el modo AES-ECB como el AES-CBC están soportados.\n"
+"[codeblock]\n"
+"extends Node\n"
+"\n"
+"var aes = AESContext.new()\n"
+"\n"
+"func _ready():\n"
+" var clave = \"Mi clave secreta!!!\" # La clave debe ser de 16 o 32 "
+"bytes. (1 byte = 1 char) normalmdlkd\n"
+" var datos = \"Mi clave secreta\" # El tamaño de datos debe ser multiplo "
+"de 16, ponga algún relleno para completar de ser necesario.\n"
+" # Encriptar ECB\n"
+" aes.start(AESContext.MODE_ECB_ENCRYPT, clave.to_utf8())\n"
+" var encriptado = aes.update(datos.to_utf8())\n"
+" aes.finish()\n"
+" # Desencriptar ECB\n"
+" aes.start(AESContext.MODE_ECB_DECRYPT, clave.to_utf8())\n"
+" var desencriptado = aes.update(encriptado)\n"
+" aes.finish()\n"
+" # Comprobar ECB\n"
+" assert(desencriptado == datos.to_utf8())\n"
+"\n"
+" var iv = \"Mi secreto iv!!!\" # IV debe ser de tamaño 16 bytes.\n"
+" # Encriptar CBC\n"
+" aes.start(AESContext.MODE_CBC_ENCRYPT, clave.to_utf8(), iv.to_utf8())\n"
+" encriptado = aes.update(datos.to_utf8())\n"
+" aes.finish()\n"
+" # Desencriptar CBC\n"
+" aes.start(AESContext.MODE_CBC_DECRYPT, clave.to_utf8(), iv.to_utf8())\n"
+" desencriptado = aes.update(encriptado)\n"
+" aes.finish()\n"
+" # Comprobar CBC\n"
+" assert(desencriptado == datos.to_utf8())\n"
+"[/codeblock]"
#: doc/classes/AESContext.xml:47
msgid "Close this AES context so it can be started again. See [method start]."
msgstr ""
+"Cerrar este contexto AES para que pueda ser iniciado de nuevo. Ver [method "
+"start]."
#: doc/classes/AESContext.xml:54
+#, fuzzy
msgid ""
"Get the current IV state for this context (IV gets updated when calling "
-"[method update]). You normally don't need this funciton.\n"
+"[method update]). You normally don't need this function.\n"
"Note: This function only makes sense when the context is started with "
"[constant MODE_CBC_ENCRYPT] or [constant MODE_CBC_DECRYPT]."
msgstr ""
+"Obtener el estado actual de la IV para este contexto (la IV se actualiza "
+"cuando se llama a [method update]). Normalmente no necesitas este función.\n"
+"Nota: Esta función sólo tiene sentido cuando el contexto se inicia con "
+"[constant MODE_CBC_ENCRYPT] o [constant MODE_CBC_DECRYPT]."
#: doc/classes/AESContext.xml:68
msgid ""
@@ -4647,6 +4627,11 @@ msgid ""
"(initialization vector) of exactly 16 bytes, is only needed when [code]mode[/"
"code] is either [constant MODE_CBC_ENCRYPT] or [constant MODE_CBC_DECRYPT]."
msgstr ""
+"Inicia el contexto AES en el [code]mode[/code]. Siempre debe proporcionarse "
+"un [code]key[/code] de 16 o 32 bytes, mientras que un [code]iv[/code] "
+"(vector de inicialización) de exactamente 16 bytes, sólo se necesitará "
+"cuando el [code]mode[/code] es o bien [constant MODE_CBC_ENCRYPT] o bien "
+"[constant MODE_CBC_DECRYPT]."
#: doc/classes/AESContext.xml:77
msgid ""
@@ -4656,26 +4641,32 @@ msgid ""
"Note: The size of [code]src[/code] must be a multiple of 16. Apply some "
"padding if needed."
msgstr ""
+"Ejecute la operación deseada para este contexto de AES. Devolverá un "
+"[PackedByteArray] que contiene el resultado de encriptar (o desencriptar) el "
+"[code]src[/code] dado. Consulte [start method] para conocer el modo de "
+"operación.\n"
+"Nota: El tamaño de [code]src[/code] debe ser un múltiplo de 16. Aplique algo "
+"de relleno si fuera necesario."
#: doc/classes/AESContext.xml:84
msgid "AES electronic codebook encryption mode."
-msgstr ""
+msgstr "Modo encripción AES electronic codebook(ECB)."
#: doc/classes/AESContext.xml:87
msgid "AES electronic codebook decryption mode."
-msgstr ""
+msgstr "Modo desencripción AES electronic codebook(ECB)."
#: doc/classes/AESContext.xml:90
msgid "AES cipher blocker chaining encryption mode."
-msgstr ""
+msgstr "Modo encripción AES cipher blocker chaining (CBC)."
#: doc/classes/AESContext.xml:93
msgid "AES cipher blocker chaining decryption mode."
-msgstr ""
+msgstr "Modo desencripción AES cipher blocker chaining (CBC)."
#: doc/classes/AESContext.xml:96
msgid "Maximum value for the mode enum."
-msgstr ""
+msgstr "Valor máximo para el modo enum."
#: doc/classes/AnimatedSprite2D.xml:4
msgid "Sprite node that can use multiple textures for animation."
@@ -4720,12 +4711,14 @@ msgid "If [code]true[/code], texture will be centered."
msgstr "Si [code]true[/code], la textura se centrará."
#: doc/classes/AnimatedSprite2D.xml:46 doc/classes/Sprite2D.xml:41
-#: doc/classes/SpriteBase3D.xml:61 doc/classes/TextureRect.xml:18
+#: doc/classes/SpriteBase3D.xml:61 doc/classes/TextureButton.xml:19
+#: doc/classes/TextureRect.xml:18
msgid "If [code]true[/code], texture is flipped horizontally."
msgstr "Si [code]true[/code], la textura se voltea horizontalmente."
#: doc/classes/AnimatedSprite2D.xml:49 doc/classes/Sprite2D.xml:44
-#: doc/classes/SpriteBase3D.xml:64 doc/classes/TextureRect.xml:21
+#: doc/classes/SpriteBase3D.xml:64 doc/classes/TextureButton.xml:22
+#: doc/classes/TextureRect.xml:21
msgid "If [code]true[/code], texture is flipped vertically."
msgstr "Si [code]true[/code], la textura se voltea verticalmente."
@@ -4948,6 +4941,7 @@ msgid "Contains data used to animate everything in the engine."
msgstr "Contiene datos usados para animar todo en el motor."
#: doc/classes/Animation.xml:7
+#, fuzzy
msgid ""
"An Animation resource contains data used to animate everything in the "
"engine. Animations are divided into tracks, and each track must be linked to "
@@ -4956,10 +4950,10 @@ msgid ""
"[codeblock]\n"
"# This creates an animation that makes the node \"Enemy\" move to the right "
"by\n"
-"# 100 pixels in 1 second.\n"
+"# 100 pixels in 0.5 seconds.\n"
"var animation = Animation.new()\n"
"var track_index = animation.add_track(Animation.TYPE_VALUE)\n"
-"animation.track_set_path(track_index, \"Enemy:position.x\")\n"
+"animation.track_set_path(track_index, \"Enemy:position:x\")\n"
"animation.track_insert_key(track_index, 0.0, 0)\n"
"animation.track_insert_key(track_index, 0.5, 100)\n"
"[/codeblock]\n"
@@ -6738,20 +6732,20 @@ msgstr ""
msgid ""
"Returns a list of the animation names that are currently queued to play."
msgstr ""
-"Devuelve una lista de los nombres de animaciones que estan actualmente en la "
-"cola de reproduccion."
+"Devuelve una lista de los nombres de las animaciones que están actualmente "
+"en cola para ser reproducidas."
#: doc/classes/AnimationPlayer.xml:126
msgid ""
"Returns [code]true[/code] if the [AnimationPlayer] stores an [Animation] "
"with key [code]name[/code]."
msgstr ""
-"Devuelve [code]true[/code] is la [AnimationPlayer] almacena una [Animation] "
-"con clave [code]name[/code]."
+"Devuelve [code]true[/code] si el [AnimationPlayer] almacena una [Animation] "
+"con la clave [code]name[/code]."
#: doc/classes/AnimationPlayer.xml:133
msgid "Returns [code]true[/code] if playing an animation."
-msgstr "Devuelve [code]true[/code] si se reproduce una animacion."
+msgstr "Devuelve [code]true[/code] si se esta reproduciendo una animación."
#: doc/classes/AnimationPlayer.xml:148
msgid ""
@@ -6770,21 +6764,22 @@ msgid ""
"time this is called, they may be updated too early. To perform the update "
"immediately, call [code]advance(0)[/code]."
msgstr ""
-"Reproduce la animacioncon clave [code]name[/code]. Personaliza los tiempos "
-"de mezcla y la velocidad puede ser configurada. Si [code]custom_speed[/code] "
-"es negativo y [code]from_end[/code] es [code]true[/code], la animacion se "
-"reproducira hacia atras (identico a la llamada [method play_backwards]).\n"
-"La [AnimationPlayer] mantiene la informacion de su actual o ultima animacion "
-"reproducida com [member assigned_animation]. Si este methodo es llamada con "
-"la misma animacion [code]name[/code], o con ningun parametro [code]name[/"
-"code], la animacion asignada retomara su reproduccion si estaba pausada, o "
-"se reiniciara si estaba parada (ver [method stop] para pausar y parar). Si "
-"la animacion ya se esta reproduciendo, se mantendra reproduciendose.\n"
-"[b]Nota:[/b] La animacion sera actualizada la proxima ves que "
-"[AnimationPlayer es procesado. Si otras variables son actualizadas al mismo "
-"tiempo que esta es llamada, ellas pueden ser actualizadas tambien "
-"tempranamente. Para ejecutar la actualizacion inmediatamente, llamar "
-"[code]advance(0)[/code]."
+"Reproduce la animación con la clave [code]name[/code]. Se pueden establecer "
+"tiempos de mezcla y velocidad personalizados. Si [code]custom_speed[/code] "
+"es negativo y [code]from_end[/code] es [code]true[/code], la animación se "
+"reproducirá hacia atrás (lo que equivale a llamar a [method "
+"play_backwards]).\n"
+"El [AnimationPlayer] mantiene un registro de su animación actual o la última "
+"que se ha reproducido con [member assigned_animation]. Si se llama a este "
+"método con ese mismo nombre de animación [code]name[/code], o sin el "
+"parámetro [code]name[/code], la animación asignada se reproducirá de nuevo "
+"si se ha detenido, o se reiniciará si se ha detenido (ver [method stop] "
+"tanto para la pausa como para la parada). Si la animación ya se estaba "
+"reproduciendo, seguirá reproduciéndose.\n"
+"[b]Nota:[/b] La animación se actualizará la próxima vez que se procese el "
+"[AnimationPlayer]. Si se actualizan otras variables al mismo tiempo que esta "
+"llamada, puede que se actualicen demasiado pronto. Para ejecutar la "
+"actualización inmediatamente, llame a [code]advance(0)[/code]."
#: doc/classes/AnimationPlayer.xml:161
msgid ""
@@ -6793,10 +6788,10 @@ msgid ""
"code] and [code]from_end = true[/code], so see its description for more "
"information."
msgstr ""
-"Reproduce la animacion con clave [code]name[/code] invertida.\n"
-"Este metodo es una abreviatura para el [method play] con "
-"[code]custom_speed=-1.0[/code] y [code]from_end = true[/code], para mas "
-"informacion vea su descripcion."
+"Reproduce la animación con la clave [code]name[/code] al revés.\n"
+"Este método es una abreviatura de [method play] con [code]custom_speed = "
+"-1.0[/code] y [code]from_end = true[/code], por lo que para mayor "
+"información vea su descripción."
#: doc/classes/AnimationPlayer.xml:171
msgid ""
@@ -6804,21 +6799,22 @@ msgid ""
"[b]Note:[/b] If a looped animation is currently playing, the queued "
"animation will never play unless the looped animation is stopped somehow."
msgstr ""
-"Encola una animacion para reproducirse una vez la actual acabe.\n"
-"[b]Nota:[/b] Si una animacion en bucle se esta reproduciendo, la cola de "
-"animacion nunca se ejecutara hasta que el bucle de la animacion sea detenido "
-"de alguna manera."
+"Pone en cola una animación para su reproducción una vez que la actual haya "
+"terminado.\n"
+"[b]Nota:[/b] Si una animación en bucle se está reproduciendo actualmente, la "
+"animación en cola nunca se reproducirá a menos que la animación en bucle se "
+"detenga de alguna manera."
#: doc/classes/AnimationPlayer.xml:181
msgid "Removes the animation with key [code]name[/code]."
-msgstr "Elimina la animacion con clave [code]name[/code]."
+msgstr "Elimina la animación con la clave [code]name[/code]."
#: doc/classes/AnimationPlayer.xml:192
msgid ""
"Renames an existing animation with key [code]name[/code] to [code]newname[/"
"code]."
msgstr ""
-"Renombra una animacion existente con clave [code]name[/code] a "
+"Renombra una animación existente con la clave [code]name[/code] a "
"[code]newname[/code]."
#: doc/classes/AnimationPlayer.xml:203
@@ -6828,10 +6824,10 @@ msgid ""
"otherwise it updates at process time. Events between the current frame and "
"[code]seconds[/code] are skipped."
msgstr ""
-"Busca la animacion en el punto de tiempo en [code]seconds[/code]. Si "
-"[code]update[/code] es [code]true[/code], la animacion se actualiza tambien, "
-"de otra forma se actualiza al tiempo de proceso. Eventos entre el frame "
-"actual y [code]seconds[/code] son saltados."
+"Busca la animación hasta el punto en el tiempo de [code]seconds[/code]. Si "
+"[code]update[/code] es [code]true[/code], la animación se actualiza también, "
+"de lo contrario se actualiza en el momento del proceso. Los eventos entre el "
+"fotograma actual y [code]seconds[/code] se saltan."
#: doc/classes/AnimationPlayer.xml:216
msgid ""
@@ -6839,7 +6835,7 @@ msgid ""
"their names."
msgstr ""
"Especifica un tiempo de mezcla (en segundos) entre dos animaciones, "
-"referenciada por sus nombres."
+"referenciadas por sus nombres."
#: doc/classes/AnimationPlayer.xml:225
msgid ""
@@ -6851,13 +6847,14 @@ msgid ""
"[method play_backwards] without arguments or with the same animation name as "
"[member assigned_animation] will resume the animation."
msgstr ""
-"Para o pausa la actual animacion en reproduccion. Si [code]reset[/code] es "
-"[code]true[/code], la posicion de la animacion es reiniciada a [code]0[/"
-"code] y la velocidad de reproduccion es reiniciadad a [code]1.0[/code].\n"
-"Si [code]reset[/code] es [code]false[/code], el [member "
-"current_animation_position] se mantendra y llamara a [method play] or "
-"[method play_backwards] sin argumentos o con el mismo nombre de animacion "
-"[member assigned_animation] continuara la animacion."
+"Detiene o pausa la animación que se está reproduciendo. Si [code]reset[/"
+"code] es [code]true[/code], la posición de la animación se restablece a "
+"[code]0[/code] y la velocidad de reproducción se restablece a [code]1.0[/"
+"code].\n"
+"Si [code]reset[/code] es [code]false[/code], se mantendrá la [member "
+"current_animation_position] y llamará a [method play] o [method "
+"play_backwards] sin argumentos o con el mismo nombre de animación que "
+"[member assigned_animation] reanudará la animación."
#: doc/classes/AnimationPlayer.xml:232
msgid ""
@@ -6865,54 +6862,57 @@ msgid ""
"When set, would change the animation, but would not play it unless currently "
"playing. See also [member current_animation]."
msgstr ""
-"Si se ejecuta , la actual animacion, de otra forma, la ultima animacion. "
-"Cuando configurada, cambiara la animacion, pero no se ejecutara a menso que "
-"la actual se este ejecutando. Ver tambien [member current_animation]."
+"Si se está reproduciendo, la animación actual; si no, la última animación "
+"reproducida. Cuando se establece, cambiaría la animación, pero no la "
+"reproduciría a menos que se esté reproduciendo actualmente. Ver también "
+"[member current_animation]."
#: doc/classes/AnimationPlayer.xml:235
msgid "The name of the animation to play when the scene loads."
-msgstr "El nombre de la animacion a ejecutar cuando la escena se cargue."
+msgstr ""
+"El nombre de la animación que se reproducirá cuando se cargue la escena."
#: doc/classes/AnimationPlayer.xml:238
msgid ""
"The name of the current animation, \"\" if not playing anything. When being "
"set, does not restart the animation. See also [method play]."
msgstr ""
-"El nombre de la animacion actual, \"\" si no se reproduce nada. Cuando este "
-"configurado, no reiniciara la animacion. Ver tambien [method play]."
+"El nombre de la animación actual, \"\" si no está reproduciendo nada. Cuando "
+"se establece, no se reinicia la animación. Ver también [method play]."
#: doc/classes/AnimationPlayer.xml:241
msgid "The length (in seconds) of the currently being played animation."
msgstr ""
-"La longitud (en segundos) de la animacion actualmente siendo reproducida."
+"La duración (en segundos) de la animación que se está reproduciendo "
+"actualmente."
#: doc/classes/AnimationPlayer.xml:244
msgid "The position (in seconds) of the currently playing animation."
-msgstr "La posicion (en segundos) de la actual animacion en reproduccion."
+msgstr "La posición (en segundos) de la animación que se está reproduciendo."
#: doc/classes/AnimationPlayer.xml:247
msgid "The call mode to use for Call Method tracks."
-msgstr "El modo llamada a utilizar para Call Method Tracks."
+msgstr "El modo de llamada a utilizar para las Call Method Tracks."
#: doc/classes/AnimationPlayer.xml:250
msgid ""
"If [code]true[/code], updates animations in response to process-related "
"notifications."
msgstr ""
-"Si [code]true[/code], actualiza animaciones en respuesta a notificaciones de "
-"procesos relacionados."
+"Si [code]true[/code], actualiza las animaciones en respuesta a las "
+"notificaciones relacionadas con el proceso."
#: doc/classes/AnimationPlayer.xml:253
msgid ""
"The default time in which to blend animations. Ranges from 0 to 4096 with "
"0.01 precision."
msgstr ""
-"El tiempo por defecto en el que se mezclan animaciones. Rangos desde 0 a "
-"4096 con 0.01 precision."
+"El tiempo por defecto para mezclar las animaciones. Va de 0 a 4096 con una "
+"precisión de 0,01."
#: doc/classes/AnimationPlayer.xml:256
msgid "The process notification in which to update animations."
-msgstr "El proceso de notificacion en el cual actualizar animaciones."
+msgstr "La notificación de proceso en la que se actualizan las animaciones."
#: doc/classes/AnimationPlayer.xml:259
msgid ""
@@ -6920,56 +6920,57 @@ msgid ""
"animation plays at normal speed. If it's 0.5, then it plays at half speed. "
"If it's 2, then it plays at double speed."
msgstr ""
-"El ratio de velocidad escalada. Por ejemplo, si este valor es 1, entonces la "
-"animacion se ejecuta a la velocidad normal. Si es 0.5, se ejecuta a la mitad "
-"de velocidad.Si esta a 2 al doble de velocidad."
+"La relación de escala de velocidad. Por ejemplo, si este valor es 1, "
+"entonces la animación se reproduce a velocidad normal. Si es 0,5, entonces "
+"se reproduce a media velocidad. Si es 2, entonces se reproduce a doble "
+"velocidad."
#: doc/classes/AnimationPlayer.xml:262
msgid "The node from which node path references will travel."
-msgstr "El nodo desde el cual nodos de referencia de ruta viajaran."
+msgstr "El nodo desde el cual viajarán las referencias de la ruta de nodos."
#: doc/classes/AnimationPlayer.xml:272
msgid ""
"If the currently being played animation changes, this signal will notify of "
"such change."
msgstr ""
-"Si la actual animacion en reproduccion cambia, esta señal notificara tal "
-"cambio."
+"Si la animación que se está reproduciendo actualmente cambia, esta señal "
+"notificará dicho cambio."
#: doc/classes/AnimationPlayer.xml:279
msgid "Notifies when an animation finished playing."
-msgstr "Notifica cuando una animacion a terminado de reproducirse."
+msgstr "Notifica cuando una animación ha terminado de reproducirse."
#: doc/classes/AnimationPlayer.xml:286
msgid "Notifies when an animation starts playing."
-msgstr "Notifica cuando un animacion comienza a reproducirse."
+msgstr "Notifica cuando una animación comienza a reproducirse."
#: doc/classes/AnimationPlayer.xml:291
msgid ""
"Notifies when the caches have been cleared, either automatically, or "
"manually via [method clear_caches]."
msgstr ""
-"Notifica cuando la cache ha sido limpiada: automaticamento o manualmente via "
-"[method clear_caches]."
+"Notifica cuando las cachés se han limpiado, ya sea automáticamente o "
+"manualmente a través del [method clear_caches]."
#: doc/classes/AnimationPlayer.xml:297
msgid ""
"Process animation during the physics process. This is especially useful when "
"animating physics bodies."
msgstr ""
-"El proceso de animacion durante el proceso de fisica. Este es especialmente "
-"util con objetos animados con fisica."
+"Animación del proceso durante el proceso de la física. Esto es especialmente "
+"útil cuando se animan los cuerpos físicos."
#: doc/classes/AnimationPlayer.xml:300
msgid "Process animation during the idle process."
-msgstr "El proceso de animacion durante el tiempo ocioso."
+msgstr "Animación del proceso durante el proceso de inactividad."
#: doc/classes/AnimationPlayer.xml:303
msgid ""
"Do not process animation. Use [method advance] to process the animation "
"manually."
msgstr ""
-"No procesa la animacion. Usa [method advance] para procesar la animacion "
+"No procese la animación. Utilice [method advance] para procesar la animación "
"manualmente."
#: doc/classes/AnimationPlayer.xml:306
@@ -6978,21 +6979,21 @@ msgid ""
"events are processed. This avoids bugs involving deleting nodes or modifying "
"the AnimationPlayer while playing."
msgstr ""
-"Metodo batch llamado durante el proceso de animacion, despues hace las "
-"llamadas despues de el procesamiento de los eventos. Esto evita bugs que "
-"involucran la eliminacion de nodos o la modificacion de AnimationPlayer "
-"mientras se esta reproduciendo."
+"Metodos de procesos por lotes llamados durante el proceso de animación, y "
+"despues que los eventos son procesados hacer los llamados. Esto evita los "
+"errores que implican borrar nodos o modificar el AnimationPlayer mientras se "
+"está reproduciendo."
#: doc/classes/AnimationPlayer.xml:309
msgid "Make method calls immediately when reached in the animation."
msgstr ""
-"Realiza llamadas a metodos inmediatamente cuando se alcanza en la animacion."
+"Hace llamadas a método inmediatamente cuando se alcanza en la animación."
#: doc/classes/AnimationTree.xml:4
msgid ""
"A node to be used for advanced animation transitions in an [AnimationPlayer]."
msgstr ""
-"Un nodo utilizado para transiciones avanzadas de animacion en un "
+"Un nodo para ser usado para transiciones de animación avanzadas en un "
"[AnimationPlayer]."
#: doc/classes/AnimationTree.xml:7
@@ -7003,6 +7004,12 @@ msgid ""
"and its constituent [AnimationNode](s). The [AnimationPlayer] node should be "
"used solely for adding, deleting, and editing animations."
msgstr ""
+"Nota: Cuando se enlazan con un [AnimationPlayer], varias propiedades y "
+"métodos del correspondiente [AnimationPlayer] , estas no funcionarán como se "
+"esperaba. La reproducción y las transiciones deben ser manejadas usando "
+"solamente el [AnimationTree] y su(s) [AnimationNode](s) que lo constituyen. "
+"El nodo [AnimationPlayer] debe usarse únicamente para añadir, borrar y "
+"editar animaciones."
#: doc/classes/AnimationTree.xml:11
msgid "https://github.com/godotengine/tps-demo"
@@ -7010,7 +7017,8 @@ msgstr "https://github.com/godotengine/tps-demo"
#: doc/classes/AnimationTree.xml:20
msgid "Manually advance the animations by the specified time (in seconds)."
-msgstr "Avanza las animaciones mediante el tiempo especificado (en segundos)."
+msgstr ""
+"Avanza manualmente las animaciones en el tiempo especificado (en segundos)."
#: doc/classes/AnimationTree.xml:27
msgid ""
@@ -7019,10 +7027,14 @@ msgid ""
"track of type [constant Animation.TYPE_TRANSFORM], returns an identity "
"transformation."
msgstr ""
+"Recupera el movimiento del [member root_motion_track] como un [Transform] "
+"que puede ser usado en otro lugar. Si [member root_motion_track] no es un "
+"camino a una pista de tipo [constant Animation.TYPE_TRANSFORM], devuelve una "
+"transformación de identidad."
#: doc/classes/AnimationTree.xml:43
msgid "If [code]true[/code], the [AnimationTree] will be processing."
-msgstr "Si [code]true[/code], la [AnimationTree] sera procesado."
+msgstr "Si [code]true[/code], el [AnimationTree] se procesará."
#: doc/classes/AnimationTree.xml:46
msgid "The path to the [AnimationPlayer] used for animating."
@@ -7033,11 +7045,10 @@ msgid ""
"The process mode of this [AnimationTree]. See [enum AnimationProcessMode] "
"for available modes."
msgstr ""
-"El modo de proceso de esta [AnimationTree]. Ver [enum AnimationProcessMode] "
+"El modo de proceso de este [AnimationTree]. Ver [enum AnimationProcessMode] "
"para los modos disponibles."
#: doc/classes/AnimationTree.xml:52
-#, fuzzy
msgid ""
"The path to the Animation track used for root motion. Paths must be valid "
"scene-tree paths to a node, and must be specified starting from the parent "
@@ -7060,31 +7071,31 @@ msgstr ""
#: doc/classes/AnimationTree.xml:56
msgid "The root animation node of this [AnimationTree]. See [AnimationNode]."
msgstr ""
-"El nodo de animacion raiz de este [AnimationTree]. Ver [AnimationNode]."
+"El nodo de animación raíz de este [AnimationTree]. Ver [AnimationNode]."
#: doc/classes/AnimationTree.xml:61
msgid ""
"The animations will progress during the physics frame (i.e. [method Node."
"_physics_process])."
msgstr ""
-"Las animaciones progresaran durante los frame fisicos (es decir, [method "
-"Node._physics_process])."
+"Las animaciones progresarán durante el fotograma de la física (es decir, "
+"[method Node.physics_process])."
#: doc/classes/AnimationTree.xml:64
msgid ""
"The animations will progress during the idle frame (i.e. [method Node."
"_process])."
msgstr ""
-"Las animaciones progresaran durante el tiempo ocioso(es decir, [metodo Node."
-"_process])."
+"Las animaciones progresarán durante el fotograma inactivo (es decir, [método "
+"Node._process])."
#: doc/classes/AnimationTree.xml:67
msgid "The animations will only progress manually (see [method advance])."
-msgstr "Las animaciones solo progresaran manualmente (ver [method advance])."
+msgstr "Las animaciones sólo progresarán manualmente (ver [method advance])."
#: doc/classes/Area2D.xml:4
msgid "2D area for detection and 2D physics influence."
-msgstr "El area 2D para deteccion e influencia de fisica 2D."
+msgstr "Ãrea 2D para la detección y la influencia de la física 2D."
#: doc/classes/Area2D.xml:7
msgid ""
@@ -7092,9 +7103,9 @@ msgid ""
"exiting. Can also alter or override local physics parameters (gravity, "
"damping)."
msgstr ""
-"Area 2D que detecta nodos [CollisionObject2D] superponiendose, entrando o "
-"saliendo. Tambien puede alterar o sobreescribir parametros de fisica local "
-"(gravedad, amortiguacion)."
+"Ãrea 2D que detecta nodos [CollisionObject2D] superpuestos, entrando o "
+"saliendo. También puede alterar o anular los parámetros de la física local "
+"(gravedad, amortiguación)."
#: doc/classes/Area2D.xml:10
msgid ""
@@ -7107,16 +7118,16 @@ msgid ""
"Returns an individual bit on the layer mask. Describes whether other areas "
"will collide with this one on the given layer."
msgstr ""
-"Devuelve un bit individual de una mascara de capa. Describe si otras area "
-"colisionaran con esta en una misma capa."
+"Devuelve un bit individual de la máscara de la capa. Describe si otras áreas "
+"colisionarán con ésta en la capa dada."
#: doc/classes/Area2D.xml:28
msgid ""
"Returns an individual bit on the collision mask. Describes whether this area "
"will collide with others on the given layer."
msgstr ""
-"Devuelve un bit individual de una mascara de colision. Describe si esta area "
-"colisionaran con otras en una misma capa."
+"Devuelve un bit individual en la máscara de colisión. Describe si esta área "
+"colisionará con otras en la capa dada."
#: doc/classes/Area2D.xml:35
msgid ""
@@ -7125,11 +7136,11 @@ msgid ""
"during the physics step, not immediately after objects are moved. Consider "
"using signals instead."
msgstr ""
-"Devuelve una lista de intersecciones [Area2D]. Por razones de rendimiento "
-"(las colisiones son todas procesadas al mismo tiempo) esta lista es "
-"modificada solo una vez durante el paso de fisicas, no inmediatamente "
-"despues que los objetos son movidos. Considera utilizar señales para obtener "
-"colisiones cuando un objeto es movido."
+"Devuelve una lista de los [Area2D] que se intersectan. Por razones de "
+"rendimiento (las colisiones se procesan todas al mismo tiempo) esta lista se "
+"modifica una vez durante el paso de la física, no inmediatamente después de "
+"que los objetos se muevan. Considere la posibilidad de usar señales en su "
+"lugar."
#: doc/classes/Area2D.xml:42
msgid ""
@@ -7138,11 +7149,11 @@ msgid ""
"during the physics step, not immediately after objects are moved. Consider "
"using signals instead."
msgstr ""
-"Devuelve una lista de intersecciones [PhysicsBody2D]. Por razones de "
-"ejecucion (las colisiones son todas procesadas al mismo tiempo) esta lista "
-"es modificada una vez durante el paso fisicas, no inmediatamente despues que "
-"los objetos son movidos. Considera utilizar señales para obtener colisiones "
-"cuando un objecto es movido."
+"Devuelve una lista de [PhysicsBody2D] que se intersectan. Por razones de "
+"rendimiento (las colisiones se procesan todas al mismo tiempo) esta lista se "
+"modifica una vez durante el paso de la física, no inmediatamente después de "
+"que los objetos se muevan. Considere la posibilidad de utilizar señales en "
+"su lugar."
#: doc/classes/Area2D.xml:51
msgid ""
@@ -7151,11 +7162,11 @@ msgid ""
"For performance, list of overlaps is updated once per frame and before the "
"physics step. Consider using signals instead."
msgstr ""
-"Si [code]true[/code], el area dada superpone el area2D.\n"
-"[b]Nota:[/b] El resultado de este test no es inmediato despues de mover "
-"objectos. Por rendimientos, las listas de solapamientos son actualizadas una "
-"vez por frame y despues del paso de fisicas. Considera utilizar señales para "
-"obtener colisiones cuando un objecto es movido."
+"Si [code]true[/code], el área dada se superpone al Area2D.\n"
+"[b]Nota:[/b] El resultado de esta prueba no es inmediato después de mover "
+"los objetos. Para el rendimiento, la lista de superposiciones se actualiza "
+"una vez por cuadro y antes del paso de física. Considere la posibilidad de "
+"utilizar señales en su lugar."
#: doc/classes/Area2D.xml:61
msgid ""
@@ -7167,14 +7178,14 @@ msgid ""
"[TileMap] instance (while TileMaps are not physics body themselves, they "
"register their tiles with collision shapes as a virtual physics body)."
msgstr ""
-"Si [code]true[/code], el cuerpo de fisicas dada se superpone al Area2D.\n"
-"[b]Nota:[/b]El resultado de este test no es inmediato despues de mover "
-"objectos. Por rendimientos, las listas de solapamientos son actualizadas una "
-"vez por frame y despues del paso de fisicas. Considera utilizar señales para "
-"obtener colisiones cuando un objecto es movido.\n"
-"El argumento [code]body[/code] puede ser un [PhysicsBody2D o una instancia "
-"[TileMap] (mientras que los TileMaps no son cuerpos fisicos, ellos registran "
-"sus piezas con formas de colision como un cuerpo fisico virtual."
+"Si [code]true[/code], el cuerpo físico dado se superpone al Area2D.\n"
+"[b]Nota:[/b] El resultado de esta prueba no es inmediato después de mover "
+"los objetos. Para el rendimiento, la lista de superposiciones se actualiza "
+"una vez por fotograma y antes del paso de la física. Considere la "
+"posibilidad de utilizar señales en su lugar.\n"
+"El argumento [code]body[/code] puede ser una instancia de [PhysicsBody2D] o "
+"de [TileMap] (aunque los TileMaps no son un cuerpo físico en sí mismos, "
+"registran sus piezas con formas de colisión como un cuerpo físico virtual)."
#: doc/classes/Area2D.xml:74
msgid ""
@@ -7182,15 +7193,15 @@ msgid ""
"out of only one layer easier."
msgstr ""
"Coloca/limpia bits individuales de una mascara de capa. Esto hace mas facil "
-"poner o sacar una area."
+"poner o sacar una capa."
#: doc/classes/Area2D.xml:85
msgid ""
"Set/clear individual bits on the collision mask. This makes selecting the "
"areas scanned easier."
msgstr ""
-"Coloca/limpia bits individuales de una mascara de colision. Esto hace "
-"seleccionar mas facil las areas escaneadas."
+"Pone/borra bits individuales en la máscara de colisión. Esto hace que la "
+"selección de las áreas escaneadas sea más fácil."
#: doc/classes/Area2D.xml:91 doc/classes/Area3D.xml:90
msgid ""
@@ -7198,19 +7209,19 @@ msgid ""
"velocity lost per second. Values range from [code]0[/code] (no damping) to "
"[code]1[/code] (full damping)."
msgstr ""
-"El ratio al cual los objetos para de girar en esta area. Representa la "
-"velocidad angular perdida por segundo. Los valores van desde [code]0[/code]"
-"(sin freno ninguno) a [code]1[/code](Parado total)."
+"La velocidad a la que los objetos dejan de girar en esta área. Representa la "
+"velocidad angular perdida por segundo. Los valores van desde [code]0[/code] "
+"(sin amortiguación) hasta [code]1[/code] (amortiguación completa)."
#: doc/classes/Area2D.xml:94 doc/classes/Area3D.xml:93
msgid "The name of the area's audio bus."
-msgstr "El nombre de la area del bus de audio."
+msgstr "El nombre del bus de audio de la zona."
#: doc/classes/Area2D.xml:97 doc/classes/Area3D.xml:96
msgid ""
"If [code]true[/code], the area's audio bus overrides the default audio bus."
msgstr ""
-"Si [code]true[/code], el area del bus de audio sobreescribe el bus de audio "
+"Si [code]true[/code], el área del bus de audio sobrescribe el bus de audio "
"por defecto."
#: doc/classes/Area2D.xml:100 doc/classes/Area3D.xml:99
@@ -7220,15 +7231,16 @@ msgid ""
"that object B scans, or object B is in any layers that object A scans. See "
"also [member collision_mask]."
msgstr ""
-"Las capa fisica de areas. Objetos colisionables que pueden existir en una de "
-"las 32 capas. Un contacto es detectado is el objeto A esta en cualquier capa "
-"que el objeto B escanee, o el objecto B esta en cualquier capa que el objeto "
-"B escanee. Ver tambien [member collision_mask]."
+"La(s) capa(s) física(s) del área. Los objetos coleccionables pueden existir "
+"en cualquiera de las 32 capas diferentes. Se detecta un contacto si el "
+"objeto A está en cualquiera de las capas que el objeto B escanea, o si el "
+"objeto B está en cualquiera de las capas que el objeto A escanea. Véase "
+"también [member collision_mask]."
#: doc/classes/Area2D.xml:103 doc/classes/Area3D.xml:102
msgid "The physics layers this area scans to determine collision detection."
msgstr ""
-"Las capas fisica que esta area escanea para determinar la deteccion de "
+"Las capas físicas de esta área se escanean para determinar la detección de "
"colisiones."
#: doc/classes/Area2D.xml:106 doc/classes/Area3D.xml:105
@@ -7237,33 +7249,34 @@ msgid ""
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-"La intensidad de la gravedad en el area (rangos desde -1024 a 1024). Este "
-"valor multiplica el vector gravedad. Esto es util para alterar la fuerza de "
-"la gravedad sin alterar su direccion."
+"La intensidad de la gravedad del área (va de -1024 a 1024). Este valor "
+"multiplica el vector de gravedad. Esto es útil para alterar la fuerza de "
+"gravedad sin alterar su dirección."
#: doc/classes/Area2D.xml:109 doc/classes/Area3D.xml:108
msgid ""
"The falloff factor for point gravity. The greater the value, the faster "
"gravity decreases with distance."
msgstr ""
-"El factor de caida para la gravedad puntual. Mayor el valor, mas rapida la "
-"gravedad decrece con la distancia."
+"El factor de caída para la gravedad puntual. Cuanto mayor es el valor, más "
+"rápido disminuye la gravedad con la distancia."
#: doc/classes/Area2D.xml:112 doc/classes/Area3D.xml:111
msgid ""
"If [code]true[/code], gravity is calculated from a point (set via [member "
"gravity_vec]). See also [member space_override]."
msgstr ""
-"Si [code]true[/code], la gravedad es calculada desde un punto (configurada "
-"via [member gravity_vec]). Ver tambien [member space_override]."
+"Si [code]true[/code], la gravedad se calcula a partir de un punto "
+"(establecido mediante [member gravity_vec]). Ver también [member "
+"space_override]."
#: doc/classes/Area2D.xml:115 doc/classes/Area3D.xml:114
msgid ""
"The area's gravity vector (not normalized). If gravity is a point (see "
"[member gravity_point]), this will be the point of attraction."
msgstr ""
-"El vector de gravedad del area(No normalido). Si la gravedad es un punto "
-"(ver [member gravity_point), esto sera el punto de atraccion."
+"El vector de gravedad del área (no normalizado). Si la gravedad es un punto "
+"(véase [member gravity_point]), éste será el punto de atracción."
#: doc/classes/Area2D.xml:118 doc/classes/Area3D.xml:117
msgid ""
@@ -7271,43 +7284,43 @@ msgid ""
"velocity lost per second. Values range from [code]0[/code] (no damping) to "
"[code]1[/code] (full damping)."
msgstr ""
-"El ratio al cual los objetos para de moverse en esta area. Representa la "
-"velocidad lineal perdida en segundos. El rango de valores va desde [code]0[/"
-"code](no freno) a [code]1[/code](frenado total)."
+"La tasa a la que los objetos dejan de moverse en esta área. Representa la "
+"velocidad lineal perdida por segundo. Los valores van desde [code]0[/code] "
+"(sin amortiguación) hasta [code]1[/code] (amortiguación completa)."
#: doc/classes/Area2D.xml:121 doc/classes/Area3D.xml:120
msgid "If [code]true[/code], other monitoring areas can detect this area."
msgstr ""
-"Si [code]true[/code], otras areas monitorizadas pueden detectar este area."
+"Si [code]true[/code], otras áreas de monitoreo pueden detectar esta área."
#: doc/classes/Area2D.xml:124 doc/classes/Area3D.xml:123
msgid ""
"If [code]true[/code], the area detects bodies or areas entering and exiting "
"it."
msgstr ""
-"Si [code]true[/code], el area detecta cuerpos o areas entrando y saliendo."
+"Si [code]true[/code], el área detecta cuerpos o áreas que entran y salen de "
+"ella."
#: doc/classes/Area2D.xml:127 doc/classes/Area3D.xml:126
msgid "The area's priority. Higher priority areas are processed first."
msgstr ""
-"La prioridad de area. Areas de prioridad mas alta son procesadas en primer "
-"lugar."
+"La prioridad de la zona. Las áreas de mayor prioridad se procesan primero."
#: doc/classes/Area2D.xml:130 doc/classes/Area3D.xml:141
msgid ""
"Override mode for gravity and damping calculations within this area. See "
"[enum SpaceOverride] for possible values."
msgstr ""
-"Modo sobreescritura para gravedad y calculos de amortiguacion dentro de esta "
-"area. Ver [enum SpaceOverride] para posibles valores."
+"Modo de sobreescritura para los cálculos de gravedad y amortiguación dentro "
+"de esta área. Ver [enum SpaceOverride] para los posibles valores."
#: doc/classes/Area2D.xml:138 doc/classes/Area3D.xml:149
msgid "Emitted when another area enters."
-msgstr "Emitida cuando otra area entra."
+msgstr "Emitido cuando entra otra área."
#: doc/classes/Area2D.xml:145 doc/classes/Area3D.xml:156
msgid "Emitted when another area exits."
-msgstr "Emitida cuando otra area sale."
+msgstr "Emitido cuando sale otra área."
#: doc/classes/Area2D.xml:158
msgid ""
@@ -7315,15 +7328,14 @@ msgid ""
"[code]shape_owner_get_owner(shape_find_owner(shape))[/code] returns the "
"parent object of the owner of the [code]shape[/code]."
msgstr ""
-"Emitida cuando otra area entra, reportando que formas se solapan. "
+"Emitido cuando entra otra área, informando qué formas se superponen. "
"[code]shape_owner_get_owner(shape_find_owner(shape))[/code] devuelve el "
-"objeto padre del propietarion de [code]shape[/code]."
+"objeto padre del propietario de la [code]shape[/code]."
#: doc/classes/Area2D.xml:171
msgid ""
"Emitted when another area exits, reporting which shapes were overlapping."
-msgstr ""
-"Emitida cuando otra area sale, reportando cuales formas estaban solapadas."
+msgstr "Emitida cuando sale otra área, informando qué formas se superponían."
#: doc/classes/Area2D.xml:178
msgid ""
@@ -7332,11 +7344,10 @@ msgid ""
"[TileMap] instance (while TileMaps are not physics body themselves, they "
"register their tiles with collision shapes as a virtual physics body)."
msgstr ""
-"Emitida cuando un cuerpo fisico entra.\n"
-"El argumento [code]body[/code] puede ser un [PhysicsBody2D] o una instancia "
-"[TileMap] (mientras que los TileMaps no son cuerpos fisicos por si mismos, "
-"ellos registran sus piezas con formas de colisiones como un cuerpo fisico "
-"virtual)."
+"Emitida cuando entra un cuerpo físico.\n"
+"El argumento [code]body[/code] puede ser una instancia de [PhysicsBody2D] o "
+"de [TileMap] (aunque los TileMaps no son cuerpos físicos propiamente dichos, "
+"registran sus piezas con formas de colisión como un cuerpo físico virtual)."
#: doc/classes/Area2D.xml:186
msgid ""
@@ -7345,11 +7356,10 @@ msgid ""
"[TileMap] instance (while TileMaps are not physics body themselves, they "
"register their tiles with collision shapes as a virtual physics body)."
msgstr ""
-"Emitida cuando un cuerpo fisico sale.\n"
-"El argumento [code]body[/code] puede ser un [PhysicsBody2D] o una instancia "
-"[TileMap] (mientras que los TileMaps no son cuerpos fisicos por si mismos, "
-"ellos registran sus piezas con formas de colisiones como un cuerpo fisico "
-"virtual)."
+"Emitida cuando un cuerpo físico sale.\n"
+"El argumento [code]body[/code] puede ser una instancia de [PhysicsBody2D] o "
+"de [TileMap] (aunque los TileMaps no son cuerpos físicos propiamente dichos, "
+"registran sus piezas con formas de colisión como un cuerpo físico virtual)."
#: doc/classes/Area2D.xml:200
msgid ""
@@ -7358,11 +7368,10 @@ msgid ""
"[TileMap] instance (while TileMaps are not physics body themselves, they "
"register their tiles with collision shapes as a virtual physics body)."
msgstr ""
-"Emitida cuando un cuerpo fisico entra, reportando cuales formas se solapan.\n"
-"El argumento [code]body[/code] puede ser un [PhysicsBody2D] o una instancia "
-"[TileMap] (mientras que los TileMaps no son cuerpos fisicos por si mismos, "
-"ellos registran sus piezas con formas de colisiones como un cuerpo fisico "
-"virtual)."
+"Emitida cuando entra un cuerpo físico, informando qué formas se superponen.\n"
+"El argumento [code]body[/code] puede ser una instancia de [PhysicsBody2D] o "
+"de [TileMap] (aunque los TileMaps no son cuerpos físicos propiamente dichos, "
+"registran sus piezas con formas de colisión como un cuerpo físico virtual)."
#: doc/classes/Area2D.xml:214
msgid ""
@@ -7371,53 +7380,53 @@ msgid ""
"[TileMap] instance (while TileMaps are not physics body themselves, they "
"register their tiles with collision shapes as a virtual physics body)."
msgstr ""
-"Emitida cuando un cuerpo fisico sale, reportando cuales formas se solapan.\n"
-"El argumento [code]body[/code] puede ser un [PhysicsBody2D] o una instancia "
-"[TileMap] (mientras que los TileMaps no son cuerpos fisicos por si mismos, "
-"ellos registran sus piezas con formas de colisiones como un cuerpo fisico "
-"virtual)."
+"Emitido cuando un cuerpo físico sale, informando qué formas se superponen.\n"
+"El argumento [code]body[/code] puede ser una instancia de [PhysicsBody2D] o "
+"de [TileMap] (aunque los TileMaps no son cuerpos físicos propiamente dichos, "
+"registran sus piezas con formas de colisión como un cuerpo físico virtual)."
#: doc/classes/Area2D.xml:221 doc/classes/Area3D.xml:232
msgid "This area does not affect gravity/damping."
-msgstr "Esta area no afecta a la gravedad/amortiguacion."
+msgstr "Esta zona no afecta a la gravedad/amortiguación."
#: doc/classes/Area2D.xml:224 doc/classes/Area3D.xml:235
msgid ""
"This area adds its gravity/damping values to whatever has been calculated so "
"far (in [member priority] order)."
msgstr ""
-"Esta area añade sus valores de gravedad/amortiguacion a lo que haya sido "
-"calculado hasta ahor (en orden [member priority])."
+"Esta área añade sus valores de gravedad/amortiguación a lo que se ha "
+"calculado hasta ahora (en el orden [member priority])."
#: doc/classes/Area2D.xml:227 doc/classes/Area3D.xml:238
msgid ""
"This area adds its gravity/damping values to whatever has been calculated so "
"far (in [member priority] order), ignoring any lower priority areas."
msgstr ""
-"Esta area añade sus valores de gravedad/amortiguacion a lo que haya sido "
-"calculado hasta ahora (en orden [member prority], ignorando cualquier areas "
-"de baja prioridad."
+"Esta área añade sus valores de gravedad/amortiguación a lo que se ha "
+"calculado hasta ahora (en el orden [member priority]), ignorando cualquier "
+"área de menor prioridad."
#: doc/classes/Area2D.xml:230 doc/classes/Area3D.xml:241
msgid ""
"This area replaces any gravity/damping, even the defaults, ignoring any "
"lower priority areas."
msgstr ""
-"Esta area reemplaza cualquier gravedad/amortiguacion, incluidas las puestas "
-"por defecto, ignorando cualquier areas de baja prioridad."
+"Esta área reemplaza cualquier gravedad/amortiguación, incluso las "
+"predeterminadas, ignorando cualquier área de menor prioridad."
#: doc/classes/Area2D.xml:233 doc/classes/Area3D.xml:244
msgid ""
"This area replaces any gravity/damping calculated so far (in [member "
"priority] order), but keeps calculating the rest of the areas."
msgstr ""
-"Esta area reemplaza cualquier gravedad/amortiguacion calculada hasta ahora "
-"(en orden [member priority], pero sigue calculando el resto de areas."
+"Esta área reemplaza cualquier gravedad/amortiguación calculada hasta ahora "
+"(en orden de [member priority]), pero sigue calculando el resto de las áreas."
#: doc/classes/Area3D.xml:4
msgid "General-purpose area node for detection and 3D physics influence."
msgstr ""
-"Nodo de area de proposito general para deteccion e influencia de fisicas 3D."
+"Nodo de área de propósito general para la detección e influencia de la "
+"física 3D."
#: doc/classes/Area3D.xml:7
msgid ""
@@ -7425,19 +7434,19 @@ msgid ""
"exiting. Can also alter or override local physics parameters (gravity, "
"damping)."
msgstr ""
-"Area 3D que detecta [nodos [CollisionObject3D] solapandose, entrando o "
-"saliendo. Puedn tambien alterar o sobrescribir parametros fisicos locales "
-"(gravedad, amortiguacion)."
+"Ãrea 3D que detecta nodos [CollisionObject3D] superpuestos, entrando o "
+"saliendo. También puede alterar o anular los parámetros de la física local "
+"(gravedad, amortiguación)."
#: doc/classes/Area3D.xml:18
msgid "Returns an individual bit on the layer mask."
-msgstr "Devuelve un bit individual en la mascara de capa."
+msgstr "Devuelve un bit individual de la máscara de la capa."
#: doc/classes/Area3D.xml:27 modules/csg/doc_classes/CSGShape3D.xml:18
#: modules/csg/doc_classes/CSGShape3D.xml:27 doc/classes/RayCast2D.xml:70
#: doc/classes/SoftBody3D.xml:35 doc/classes/SoftBody3D.xml:44
msgid "Returns an individual bit on the collision mask."
-msgstr "Devuelve un bit individual en la mascara de colision."
+msgstr "Devuelve un bit individual de la máscara de colisión."
#: doc/classes/Area3D.xml:34
msgid ""
@@ -7446,11 +7455,11 @@ msgid ""
"during the physics step, not immediately after objects are moved. Consider "
"using signals instead."
msgstr ""
-"Devueve una lista de intersecciones [area3D]. Por razones de rendimiento "
-"(las colisiones son todas procesadas al mismo tiempo). esta lista es "
-"modificada durante el paso fisico, no inmediatamente despues de que los "
-"objetos son movidos. Considera usar señales si se desea el comportamiento "
-"anterior."
+"Devuelve una lista de los [Area3D] que se intersectan. Por razones de "
+"rendimiento (las colisiones se procesan todas al mismo tiempo) esta lista se "
+"modifica una vez durante el paso de la física, no inmediatamente después de "
+"que los objetos se muevan. Considere la posibilidad de usar señales en su "
+"lugar."
#: doc/classes/Area3D.xml:41
msgid ""
@@ -7459,11 +7468,11 @@ msgid ""
"during the physics step, not immediately after objects are moved. Consider "
"using signals instead."
msgstr ""
-"Devueve una lista de intersecciones [PhysicsBody3D]. Por razones de "
-"rendimiento (las colisiones son todas procesadas al mismo tiempo). esta "
-"lista es modificada durante el paso fisico, no inmediatamente despues de que "
-"los objetos se muevan. Considera usar señales si se desea el comportamiento "
-"anterior."
+"Devuelve una lista de los [PhysicsBody3D] que se intersectan. Por razones de "
+"rendimiento (las colisiones se procesan todas al mismo tiempo) esta lista se "
+"modifica una vez durante el paso de la física, no inmediatamente después de "
+"que los objetos se muevan. Considere la posibilidad de utilizar señales en "
+"su lugar."
#: doc/classes/Area3D.xml:50
msgid ""
@@ -7472,11 +7481,11 @@ msgid ""
"For performance, list of overlaps is updated once per frame and before the "
"physics step. Consider using signals instead."
msgstr ""
-"si [code]true[/code], el area dada solapa el Area3D.\n"
-"[b]Nota:[/b] El resultado de este test no es inmediato despues de mover "
-"objetos. Por rendimiento, la lista de solapamientos, es actualizada una vez "
-"por frame y despues des paso fisico, Considera usar señales para el anterior "
-"comportamiento."
+"Si [code]true[/code], el área dada se superpone al Area3D.\n"
+"[b]Nota:[/b] El resultado de esta prueba no es inmediato después de mover "
+"los objetos. Para el rendimiento, la lista de superposiciones se actualiza "
+"una vez por fotograma y antes del paso de física. Considere la posibilidad "
+"de utilizar señales en su lugar."
#: doc/classes/Area3D.xml:60
msgid ""
@@ -7488,59 +7497,58 @@ msgid ""
"[GridMap] instance (while GridMaps are not physics body themselves, they "
"register their tiles with collision shapes as a virtual physics body)."
msgstr ""
-"Si [code]true[/code], el cuerpo fisico dado solapa el Area3D.\n"
-"[b]Nota:[/b] El resultado de este test no es inmediato despues de mover "
-"objetos. Por rendimiento, la lista solapada solo es actualizada una vez por "
-"frame y despues del paso de la fisica. Considera usar señales para obtener "
-"el comportamiento mencionado.\n"
-"El argumento [code]body[/code] puede o ser un [PhysicoBody3D] o una "
-"instancia [GridMap] (mientras que los GridMaps no son cuerpos fisicos por si "
-"mismo, ellos registran sus partes con formas de colision con un cuerpo "
-"fisico virtual)."
+"Si [code]true[/code], el cuerpo físico dado se superpone al Area3D.\n"
+"[b]Nota:[/b] El resultado de esta prueba no es inmediato después de mover "
+"los objetos. Para el rendimiento, la lista de superposiciones se actualiza "
+"una vez por fotograma y antes del paso de la física. Considere la "
+"posibilidad de usar señales en su lugar.\n"
+"El argumento [code]body[/code] puede ser una instancia de [PhysicsBody3D] o "
+"de [GridMap] (aunque los GridMaps no son un cuerpo de física en sí mismos, "
+"registran sus piezas con formas de colisión como un cuerpo de física "
+"virtual)."
#: doc/classes/Area3D.xml:73
msgid ""
"Set/clear individual bits on the layer mask. This simplifies editing this "
"[Area3D]'s layers."
msgstr ""
-"Coloca/limpia bits individuales en la mascara de capa. Esto simplifica la "
-"edicion de estas capas [Area3D]."
+"Pone/borra bits individuales en la máscara de la capa. Esto simplifica la "
+"edición de las capas de este [Area3D]."
#: doc/classes/Area3D.xml:84
msgid ""
"Set/clear individual bits on the collision mask. This simplifies editing "
"which [Area3D] layers this [Area3D] scans."
msgstr ""
-"Coloca/limpia bits individuales en la mascara de colisiones. Esto simplifica "
-"la edicion de cuales capasa [Area3d] esta escanea[Area3D]."
+"Pone/borra bits individuales en la máscara de colisión. Esto simplifica la "
+"edición de las capas de [Area3D] que este [Area3D] escanea."
#: doc/classes/Area3D.xml:129
msgid ""
"The degree to which this area applies reverb to its associated audio. Ranges "
"from [code]0[/code] to [code]1[/code] with [code]0.1[/code] precision."
msgstr ""
-"El grado por el cual esta area aplica reverberacion al audio asociado. "
-"Rangos van desde [code]0[/code] a [code]1[/code] con precision de [code]0.1[/"
-"code]."
+"El grado en que esta área aplica reverberación a su audio asociado. Va de "
+"[code]0[/code] a [code]1[/code] con una precisión de [code]0.1[/code]."
#: doc/classes/Area3D.xml:132
msgid "If [code]true[/code], the area applies reverb to its associated audio."
msgstr ""
-"Si [code]true[/code], el area aplica reverberacion a su audio asociado."
+"Si [code]true[/code], el área aplica reverberación a su audio asociado."
#: doc/classes/Area3D.xml:135
msgid "The reverb bus name to use for this area's associated audio."
msgstr ""
-"El nombre del bus de reverberacion usado para el area de audio asociado."
+"El nombre del bus de reverberación que se usará para el audio asociado a "
+"esta área."
#: doc/classes/Area3D.xml:138
msgid ""
"The degree to which this area's reverb is a uniform effect. Ranges from "
"[code]0[/code] to [code]1[/code] with [code]0.1[/code] precision."
msgstr ""
-"El grado por el cual el area de reverberacion tiene un efecto uniforme. "
-"Rangos van desde [code]0[/code] a [code]1[/code] con precision de [code]0.1[/"
-"code]."
+"El grado de reverberación de esta área es un efecto uniforme. Va de [code]0[/"
+"code] a [code]1[/code] con una precisión de [code]0,1[/code]."
#: doc/classes/Area3D.xml:169
msgid ""
@@ -7548,15 +7556,14 @@ msgid ""
"[code]shape_owner_get_owner(shape_find_owner(shape))[/code] returns the "
"parent object of the owner of the [code]shape[/code]."
msgstr ""
-"Emitida cuando otra area entra, reportando que areas son solapadas. "
+"Emitida cuando entra otra área, informando qué áreas se superponen. "
"[code]shape_owner_get_owner(shape_find_owner(shape))[/code] devuelve el "
"objeto padre del propietario de [code]shape[/code]."
#: doc/classes/Area3D.xml:182
msgid ""
"Emitted when another area exits, reporting which areas were overlapping."
-msgstr ""
-"Emitida cuando otra area sale, reportando cuales areas estaban solapadas."
+msgstr "Emitida cuando sale otra área, informando qué áreas se superponían."
#: doc/classes/Area3D.xml:189
msgid ""
@@ -7565,10 +7572,10 @@ msgid ""
"[GridMap] instance (while GridMaps are not physics body themselves, they "
"register their tiles with collision shapes as a virtual physics body)."
msgstr ""
-"Emitida cuando un cuerpo fisico entra.\n"
-"El argumento [code]body[/code] puede ser un [PhysicsBody3D] o una instancia "
-"[GridMap] (mientras GripMaps no son cuerpos fisico por si mismos, ellos "
-"registran sus partes con formas de colisiones como un cuerpo fisico virtual)."
+"Emitida cuando entra un cuerpo físico.\n"
+"El argumento [code]body[/code] puede ser una instancia de [PhysicsBody3D] o "
+"de [GridMap] (aunque los GridMaps no son cuerpos físicos propiamente dichos, "
+"registran sus piezas con formas de colisión como un cuerpo físico virtual)."
#: doc/classes/Area3D.xml:197
msgid ""
@@ -7577,11 +7584,10 @@ msgid ""
"[GridMap] instance (while GridMaps are not physics body themselves, they "
"register their tiles with collision shapes as a virtual physics body)."
msgstr ""
-"Emitida cuando un cuerpo fisico sale.\n"
-"El argumento [code]body[/code] puede ser un [PhysicsBody3D] o una instancia "
-"[GridMap] (mientras que los GridMaps no son cuerpos fisicos por si mismos, "
-"ellos registran sus partes con formas de colision como un cuerpo fisico "
-"virtual."
+"Emitido cuando un cuerpo físico sale.\n"
+"El argumento [code]body[/code] puede ser una instancia de [PhysicsBody3D] o "
+"de [GridMap] (aunque los GridMaps no son cuerpos físicos propiamente dichos, "
+"registran sus piezas con formas de colisión como un cuerpo físico virtual)."
#: doc/classes/Area3D.xml:211
msgid ""
@@ -7590,12 +7596,10 @@ msgid ""
"[GridMap] instance (while GridMaps are not physics body themselves, they "
"register their tiles with collision shapes as a virtual physics body)."
msgstr ""
-"Emitida cuando un cuerpo fisico entra, reportado cuales formas son "
-"solapadas.\n"
-"El argumento [code]body[/code] puede ser un [PhysicsBody3D] o una instancia "
-"[GridMap] (mientras que los GridMaps no son cuerpos fisicos por si mismos, "
-"ellos registran sus partes con formas de colision como un cuerpo fisico "
-"virtual."
+"Emitido cuando entra un cuerpo físico, informando qué formas se superponen.\n"
+"El argumento [code]body[/code] puede ser una instancia de [PhysicsBody3D] o "
+"de [GridMap] (aunque los GridMaps no son cuerpos físicos propiamente dichos, "
+"registran sus piezas con formas de colisión como un cuerpo físico virtual)."
#: doc/classes/Area3D.xml:225
msgid ""
@@ -7604,19 +7608,16 @@ msgid ""
"[GridMap] instance (while GridMaps are not physics body themselves, they "
"register their tiles with collision shapes as a virtual physics body)."
msgstr ""
-"Emitida cuando un cuerpo fisico sale, reportando cuales formas estaba "
-"solapadas.\n"
-"El argumento [code]body[/code] puede ser un [PhysicsBody3D] o una instancia "
-"[GridMap] (mientras que los GridMaps no son cuerpos fisicos por si mismos, "
-"ellos registran sus partes con formas de colision como un cuerpo fisico "
-"virtual."
+"Emitida cuando un cuerpo físico sale, informando qué formas se superponen.\n"
+"El argumento [code]body[/code] puede ser una instancia de [PhysicsBody3D] o "
+"de [GridMap] (aunque los GridMaps no son cuerpos físicos propiamente dichos, "
+"registran sus piezas con formas de colisión como un cuerpo físico virtual)."
#: doc/classes/Array.xml:4
msgid "Generic array datatype."
-msgstr "Tipo de datos array generico."
+msgstr "Tipo de datos array genérico."
#: doc/classes/Array.xml:7
-#, fuzzy
msgid ""
"Generic array which can contain several elements of any type, accessible by "
"a numerical index starting at 0. Negative indices can be used to count from "
@@ -7643,7 +7644,7 @@ msgid ""
msgstr ""
"Array generico que contiene varios elementos de cualquier tipo, accesibles "
"por un indice empezando por 0. Indices negativos puedes ser usados contando "
-"hacia atras, como en Python (-1 es el ultimo elemento, -2 el penultimo, "
+"hacia atras, como en Python (-1 es el ultimo elemento, -2 el penultimo, "
"etc.).\n"
"[b]Ejemplo:[/b]\n"
"[codeblock]\n"
@@ -7660,43 +7661,45 @@ msgstr ""
"var array2 = [3, \"Cuatro\"]\n"
"print(array1 + array2) # [\"Uno\", 2, 3, \"Cuatro\"]\n"
"[/codeblock]\n"
-"Los arrays siempre son pasados por referencia."
+"Los arrays siempre son pasados por referencia. Para obtener una copia de el "
+"array que pueda ser modificada independientemente de la matriz original, "
+"utilice [method duplicate]."
#: doc/classes/Array.xml:34
msgid "Constructs an array from a [PackedColorArray]."
-msgstr "Construye un array desde un [PackedColorArray]."
+msgstr "Construye un array a partir de un [PackedColorArray]."
#: doc/classes/Array.xml:43
msgid "Constructs an array from a [PackedVector3Array]."
-msgstr "Construye un array desde un [PackedVector3Array]."
+msgstr "Construye un array a partir de un [PackedVector3Array]."
#: doc/classes/Array.xml:52
msgid "Constructs an array from a [PackedVector2Array]."
-msgstr "Construye un array desde un [PackedVector2Array]."
+msgstr "Construye un array a partir de un [PackedVector2Array]."
#: doc/classes/Array.xml:61
msgid "Constructs an array from a [PackedStringArray]."
-msgstr "Construye un array desde un [PackedStringArray]."
+msgstr "Construye un array a partir de un [PackedStringArray]."
#: doc/classes/Array.xml:70
msgid "Constructs an array from a [PackedFloat64Array]."
-msgstr "Construye un array desde un [PackedFloat64Array]."
+msgstr "Construye un array a partir de un [PackedFloat64Array]."
#: doc/classes/Array.xml:79
msgid "Constructs an array from a [PackedFloat32Array]."
-msgstr "Construye un array desde un [PackedFloat32Array]."
+msgstr "Construye un array a partir de un [PackedFloat32Array]."
#: doc/classes/Array.xml:88
msgid "Constructs an array from a [PackedInt64Array]."
-msgstr "Construye un array desde un [PackedInt64Array]."
+msgstr "Construye un array a partir de un [PackedInt64Array]."
#: doc/classes/Array.xml:97
msgid "Constructs an array from a [PackedInt32Array]."
-msgstr "Construye un array desde un [PackedInt32Array]."
+msgstr "Construye un array a partir de un [PackedInt32Array]."
#: doc/classes/Array.xml:106
msgid "Constructs an array from a [PackedByteArray]."
-msgstr "Construye un array desde un [PackedByteArray]."
+msgstr "Construye un array a partir de un [PackedByteArray]."
#: doc/classes/Array.xml:115 doc/classes/PackedByteArray.xml:28
#: doc/classes/PackedColorArray.xml:28 doc/classes/PackedFloat32Array.xml:29
@@ -7713,8 +7716,8 @@ msgid ""
"Returns the last element of the array, or [code]null[/code] if the array is "
"empty."
msgstr ""
-"Devuelve el ultimo element del array, or [code]null[/code] si este esta "
-"vacio."
+"Devuelve el último elemento del array, o [code]null[/code] si el array está "
+"vacío."
#: doc/classes/Array.xml:133
msgid ""
@@ -7802,22 +7805,20 @@ msgid "Removes the first occurrence of a value from the array."
msgstr "Elimina la primera ocurrencia de un valor en un array."
#: doc/classes/Array.xml:203
-#, fuzzy
msgid ""
"Searches the array for a value and returns its index or [code]-1[/code] if "
"not found. Optionally, the initial search index can be passed."
msgstr ""
-"Busca el array por un valor y devuelve su indice o -1 sino se encuentra. "
-"Opcionalmente, el indice de busqueda inicial puede ser pasado."
+"Busca el array por un valor y devuelve su indice o [code]-1[/code] sino se "
+"encuentra. Opcionalmente, el indice de busqueda inicial puede ser pasado."
#: doc/classes/Array.xml:212
-#, fuzzy
msgid ""
"Searches the array in reverse order for a value and returns its index or "
"[code]-1[/code] if not found."
msgstr ""
-"Busca el array en orden inverso por un valor y devuelve su indice o -1 sino "
-"es encontrado."
+"Busca el array en orden inverso por un valor y devuelve su indice o "
+"[code]-1[/code] sino es encontrado."
#: doc/classes/Array.xml:219
msgid ""
@@ -7832,10 +7833,10 @@ msgstr ""
msgid ""
"Returns [code]true[/code] if the array contains the given value.\n"
"[codeblock]\n"
-"[\"inside\", 7].has(\"inside\") == true\n"
-"[\"inside\", 7].has(\"outside\") == false\n"
-"[\"inside\", 7].has(7) == true\n"
-"[\"inside\", 7].has(\"7\") == false\n"
+"print([\"inside\", 7].has(\"inside\")) # True\n"
+"print([\"inside\", 7].has(\"outside\")) # False\n"
+"print([\"inside\", 7].has(7)) # True\n"
+"print([\"inside\", 7].has(\"7\")) # False\n"
"[/codeblock]\n"
"[b]Note:[/b] This is equivalent to using the [code]in[/code] operator as "
"follows:\n"
@@ -7851,6 +7852,11 @@ msgstr ""
"[\"dentro\", 7].has(\"fuera\") == false\n"
"[\"dentro\", 7].has(7) == true\n"
"[\"dentro\", 7].has(\"7\") == false\n"
+"[/codeblock]\n"
+"[codeblock]\n"
+"# Se evaluará a `true`.\n"
+"if 2 in [2, 4, 6, 8]:\n"
+" pass\n"
"[/codeblock]"
#: doc/classes/Array.xml:247
@@ -7867,11 +7873,11 @@ msgstr ""
"Inserta un nuevo elemento en la posicion dada en el array.La posicion debe "
"ser valido, o el final del array ([code]pos == size()[/code])."
-#: doc/classes/Array.xml:265 doc/classes/PackedByteArray.xml:107
-#: doc/classes/PackedColorArray.xml:62 doc/classes/PackedFloat32Array.xml:63
-#: doc/classes/PackedFloat64Array.xml:63 doc/classes/PackedInt32Array.xml:63
-#: doc/classes/PackedInt64Array.xml:63 doc/classes/PackedStringArray.xml:62
-#: doc/classes/PackedVector2Array.xml:62 doc/classes/PackedVector3Array.xml:62
+#: doc/classes/Array.xml:265 doc/classes/PackedByteArray.xml:116
+#: doc/classes/PackedColorArray.xml:71 doc/classes/PackedFloat32Array.xml:72
+#: doc/classes/PackedFloat64Array.xml:72 doc/classes/PackedInt32Array.xml:72
+#: doc/classes/PackedInt64Array.xml:72 doc/classes/PackedStringArray.xml:71
+#: doc/classes/PackedVector2Array.xml:71 doc/classes/PackedVector3Array.xml:71
msgid "Reverses the order of the elements in the array."
msgstr "Invierte el orden de los elementos en el array."
@@ -7911,8 +7917,8 @@ msgstr ""
"Elimina y devuelve el primer elemento del array. Devuelve [code]null[/code] "
"si el array esta vacio."
-#: doc/classes/Array.xml:302 doc/classes/PackedByteArray.xml:116
-#: doc/classes/PackedFloat32Array.xml:72 doc/classes/PackedFloat64Array.xml:72
+#: doc/classes/Array.xml:302 doc/classes/PackedByteArray.xml:125
+#: doc/classes/PackedFloat32Array.xml:81 doc/classes/PackedFloat64Array.xml:81
msgid "Appends an element at the end of the array."
msgstr "Concatena un elemen al final del array."
@@ -7920,11 +7926,11 @@ msgstr "Concatena un elemen al final del array."
msgid "Adds an element at the beginning of the array."
msgstr "Añade un elemento al principio del array."
-#: doc/classes/Array.xml:320 doc/classes/PackedByteArray.xml:125
-#: doc/classes/PackedColorArray.xml:80 doc/classes/PackedFloat32Array.xml:81
-#: doc/classes/PackedFloat64Array.xml:81 doc/classes/PackedInt32Array.xml:81
-#: doc/classes/PackedInt64Array.xml:81 doc/classes/PackedStringArray.xml:80
-#: doc/classes/PackedVector2Array.xml:80 doc/classes/PackedVector3Array.xml:80
+#: doc/classes/Array.xml:320 doc/classes/PackedByteArray.xml:134
+#: doc/classes/PackedColorArray.xml:89 doc/classes/PackedFloat32Array.xml:90
+#: doc/classes/PackedFloat64Array.xml:90 doc/classes/PackedInt32Array.xml:90
+#: doc/classes/PackedInt64Array.xml:90 doc/classes/PackedStringArray.xml:89
+#: doc/classes/PackedVector2Array.xml:89 doc/classes/PackedVector3Array.xml:89
msgid "Removes an element from the array by index."
msgstr "Elimina un elemento del array por indice."
@@ -8336,7 +8342,7 @@ msgstr ""
"indices esta emparejado indicando el inicio y final de cada linea."
#: doc/classes/ArrayMesh.xml:235 doc/classes/Mesh.xml:210
-#: doc/classes/RenderingServer.xml:3115
+#: doc/classes/RenderingServer.xml:3111
msgid "Represents the size of the [enum ArrayType] enum."
msgstr "Representa el tamaño del enum [enum ArrayType]."
@@ -8546,7 +8552,6 @@ msgstr ""
"Devuelve el punto de Ide proximo disponible con ningun punto asociado a el."
#: doc/classes/AStar.xml:134 doc/classes/AStar2D.xml:117
-#, fuzzy
msgid ""
"Returns the ID of the closest point to [code]to_position[/code], optionally "
"taking disabled points into account. Returns [code]-1[/code] if there are no "
@@ -8556,8 +8561,11 @@ msgid ""
"result."
msgstr ""
"Devuelve el ID del punto mas cercano a [code]to_position[/code], "
-"opcionalmente tomando puntos deshabilitados en cuenta. Devuelve -1 si no hay "
-"puntos el grupo(pool) de puntos."
+"opcionalmente tomando puntos deshabilitados en cuenta. Devuelve [code]-1[/"
+"code] si no hay puntos el grupo(pool) de puntos.\n"
+"[b]Nota:[/b] Si varios puntos son los más cercanos a [code]to_position[/"
+"code], el pundo con el menor ID será devuelto, asegurando un resultado "
+"deterministico."
#: doc/classes/AStar.xml:144
msgid ""
@@ -9778,6 +9786,10 @@ msgid ""
"compressed). It checks whether or not the recording is active, and if it is, "
"records the sound. It then returns the recorded sample."
msgstr ""
+"Permite al usuario grabar el sonido desde un micrófono. Establece y obtiene "
+"el formato en el que se grabará el archivo de audio (8-bit, 16-bit o "
+"comprimido). Comprueba si la grabación está activa o no, y si lo está, graba "
+"el sonido. Luego devuelve la muestra grabada."
#: doc/classes/AudioEffectRecord.xml:10
msgid ""
@@ -10742,8 +10754,13 @@ msgstr ""
"ella."
#: doc/classes/BaseButton.xml:16
-msgid "Called when the button is pressed."
-msgstr "Se llama cuando se pulsa el boton."
+#, fuzzy
+msgid ""
+"Called when the button is pressed. If you need to know the button's pressed "
+"state (and [member toggle_mode] is active), use [method _toggled] instead."
+msgstr ""
+"Si [code]true[/code], el estado del botón es presionado. Significa que el "
+"botón está presionado o se conmuta (si [member toggle_mode] está activo)."
#: doc/classes/BaseButton.xml:25
msgid ""
@@ -10818,86 +10835,111 @@ msgid ""
"Signals will be emitted at the same moment regardless of this property's "
"value."
msgstr ""
+"Si [code]true[/code], el botón permanece pulsado cuando se mueve el cursor "
+"fuera del botón mientras lo pulsa.\n"
+"[b]Nota:[/b] Esta propiedad sólo afecta al aspecto visual del botón. Se "
+"emitirán señales en el mismo momento independientemente del valor de esta "
+"propiedad."
#: doc/classes/BaseButton.xml:66
msgid ""
"If [code]true[/code], the button's state is pressed. Means the button is "
"pressed down or toggled (if [member toggle_mode] is active)."
msgstr ""
+"Si [code]true[/code], el estado del botón es presionado. Significa que el "
+"botón está presionado o se conmuta (si [member toggle_mode] está activo)."
#: doc/classes/BaseButton.xml:69
msgid "[ShortCut] associated to the button."
-msgstr ""
+msgstr "[ShortCut] asociado al botón."
#: doc/classes/BaseButton.xml:72
msgid ""
"If [code]true[/code], the button will add information about its shortcut in "
"the tooltip."
msgstr ""
+"Si [code]true[/code], el botón añadirá información sobre su atajo en el "
+"mensaje de ayuda."
#: doc/classes/BaseButton.xml:75
msgid ""
"If [code]true[/code], the button is in toggle mode. Makes the button flip "
"state between pressed and unpressed each time its area is clicked."
msgstr ""
+"Si [code]true[/code], el botón está en modo de conmutación. Hace que el "
+"botón cambie de estado entre presionado y no presionado cada vez que se hace "
+"clic en su área."
#: doc/classes/BaseButton.xml:81
msgid "Emitted when the button starts being held down."
-msgstr ""
+msgstr "Emitido cuando el botón comienza a ser presionado."
#: doc/classes/BaseButton.xml:86
msgid "Emitted when the button stops being held down."
-msgstr ""
+msgstr "Emitido cuando el botón deja de ser presionado."
#: doc/classes/BaseButton.xml:91
+#, fuzzy
msgid ""
"Emitted when the button is toggled or pressed. This is on [signal "
"button_down] if [member action_mode] is [constant ACTION_MODE_BUTTON_PRESS] "
-"and on [signal button_up] otherwise."
+"and on [signal button_up] otherwise.\n"
+"If you need to know the button's pressed state (and [member toggle_mode] is "
+"active), use [signal toggled] instead."
msgstr ""
+"Se emite cuando el botón se conmuta o se presiona. Esto está en [signal "
+"button_down] si el [member action_mode] es [constant "
+"ACTION_MODE_BUTTON_PRESS] y en [signal button_up] en caso contrario."
-#: doc/classes/BaseButton.xml:98
+#: doc/classes/BaseButton.xml:99
msgid ""
"Emitted when the button was just toggled between pressed and normal states "
"(only if [member toggle_mode] is active). The new state is contained in the "
"[code]button_pressed[/code] argument."
msgstr ""
+"Emitido cuando el botón acaba de conmutar entre los estados de pulsado y "
+"normal (sólo si [member toggle_mode] está activo). El nuevo estado está "
+"contenido en el argumento [code]button_pressed[/code]."
-#: doc/classes/BaseButton.xml:104
+#: doc/classes/BaseButton.xml:105
msgid ""
"The normal state (i.e. not pressed, not hovered, not toggled and enabled) of "
"buttons."
msgstr ""
+"El estado normal (es decir, no presionado, no encima del botón, no activado "
+"y activado) de los botones."
-#: doc/classes/BaseButton.xml:107
+#: doc/classes/BaseButton.xml:108
msgid "The state of buttons are pressed."
-msgstr ""
+msgstr "El estado de los botones se presiona."
-#: doc/classes/BaseButton.xml:110
+#: doc/classes/BaseButton.xml:111
msgid "The state of buttons are hovered."
-msgstr ""
+msgstr "El estado de los botones que tienen el cursor encima."
-#: doc/classes/BaseButton.xml:113
+#: doc/classes/BaseButton.xml:114
msgid "The state of buttons are disabled."
-msgstr ""
+msgstr "El estado de los botones está desactivado."
-#: doc/classes/BaseButton.xml:116
+#: doc/classes/BaseButton.xml:117
msgid "The state of buttons are both hovered and pressed."
-msgstr ""
+msgstr "El estado de los botones cuyo cursor esta encima y se presiona."
-#: doc/classes/BaseButton.xml:119
+#: doc/classes/BaseButton.xml:120
msgid "Require just a press to consider the button clicked."
-msgstr ""
+msgstr "Requiere sólo una pulsación para considerar el botón pulsado."
-#: doc/classes/BaseButton.xml:122
+#: doc/classes/BaseButton.xml:123
msgid ""
"Require a press and a subsequent release before considering the button "
"clicked."
msgstr ""
+"Requiere de una pulsación y una posterior liberación antes de considerar el "
+"botón pulsado."
#: doc/classes/BaseMaterial3D.xml:4
msgid "Default 3D rendering material."
-msgstr ""
+msgstr "Material de renderizado 3D por defecto."
#: doc/classes/BaseMaterial3D.xml:7
msgid ""
@@ -10905,26 +10947,33 @@ msgid ""
"and properties without the need to write shader code. See the tutorial below "
"for details."
msgstr ""
+"Esto proporciona un material por defecto con una amplia variedad de "
+"características y propiedades de renderizado sin necesidad de escribir "
+"codigo shader. Consulte el siguiente tutorial para obtener más detalles."
#: doc/classes/BaseMaterial3D.xml:10
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/spatial_material.html"
msgstr ""
+"https://docs.godotengine.org/es/latest/tutorials/3d/spatial_material.html"
#: doc/classes/BaseMaterial3D.xml:19
msgid "Returns [code]true[/code], if the specified [enum Feature] is enabled."
msgstr ""
+"Devuelve [code]true[/code], si el [enum Feature] especificado está activado."
#: doc/classes/BaseMaterial3D.xml:28
msgid ""
"Returns [code]true[/code], if the specified flag is enabled. See [enum "
"Flags] enumerator for options."
msgstr ""
+"Devuelve [code]true[/code], si el flag especificado está activado. Ver el "
+"enumerador [enum Flags] para las opciones."
#: doc/classes/BaseMaterial3D.xml:37
msgid ""
"Returns the [Texture] associated with the specified [enum TextureParam]."
-msgstr ""
+msgstr "Devuelve la [Texture] asociada a la [enum TextureParam] especificada."
#: doc/classes/BaseMaterial3D.xml:48
msgid ""
@@ -10933,6 +10982,12 @@ msgid ""
"way the cost for using the feature is only incurred when specified. Features "
"can also be enabled by setting the corresponding member to [code]true[/code]."
msgstr ""
+"Si [code]true[/code], habilita la [enum Feature] especificada. Muchas de las "
+"características que están disponibles en [BaseMaterial3D] deben ser "
+"habilitadas antes de su uso. De esta manera, el costo de usar la "
+"característica sólo se incurre cuando se especifica. Las características "
+"también pueden ser habilitadas estableciendo el miembro correspondiente en "
+"[code]true[/code]."
#: doc/classes/BaseMaterial3D.xml:59
msgid ""
@@ -10943,36 +10998,48 @@ msgid ""
"setting the corresponding member to [code]true[/code]. See [enum Flags] "
"enumerator for options."
msgstr ""
+"Si [code]true[/code], habilita la [enum Feature] especificada. Muchas de las "
+"características que están disponibles en [BaseMaterial3D] deben ser "
+"habilitadas antes de su uso. De esta manera, el costo de usar la "
+"característica sólo se incurre cuando se especifica. Las características "
+"también pueden ser habilitadas estableciendo el miembro correspondiente en "
+"[code]true[/code]."
#: doc/classes/BaseMaterial3D.xml:70
msgid ""
"Sets the texture for the slot specified by [code]param[/code]. See [enum "
"TextureParam] for available slots."
msgstr ""
+"Establece la textura para la ranura especificada por [code]param[/code]. "
+"Véase [enum TextureParam] para los espacios disponibles."
#: doc/classes/BaseMaterial3D.xml:76
msgid "The material's base color."
-msgstr ""
+msgstr "El color base del material."
#: doc/classes/BaseMaterial3D.xml:79
msgid ""
"Forces a conversion of the [member albedo_texture] from sRGB space to linear "
"space."
msgstr ""
+"Fuerza una conversión del [member albedo_texture] del espacio sRGB al "
+"espacio lineal."
#: doc/classes/BaseMaterial3D.xml:82
msgid ""
"Texture to multiply by [member albedo_color]. Used for basic texturing of "
"objects."
msgstr ""
+"La textura se multiplica por [member albedo_color]. Se utiliza para la "
+"textura básica de los objetos."
#: doc/classes/BaseMaterial3D.xml:85
msgid "Threshold at which the alpha scissor will discard values."
-msgstr ""
+msgstr "Umbral en el que el alpha scissor descartará los valores."
#: doc/classes/BaseMaterial3D.xml:88
msgid "The strength of the anisotropy effect."
-msgstr ""
+msgstr "La fuerza del efecto de anisotropía."
#: doc/classes/BaseMaterial3D.xml:91
msgid ""
@@ -10981,16 +11048,23 @@ msgid ""
"this to work. If the mesh does not contain tangents the anisotropy effect "
"will appear broken."
msgstr ""
+"Si [code]true[/code], la anisotropía está activada. Cambia la forma de la "
+"mancha especular y la alinea con el espacio tangente. Las tangentes de malla "
+"son necesarias para que esto funcione. Si la malla no contiene tangentes el "
+"efecto de anisotropía aparecerá roto."
#: doc/classes/BaseMaterial3D.xml:94
msgid "Texture that offsets the tangent map for anisotropy calculations."
msgstr ""
+"Textura que desplaza el mapa de la tangente para los cálculos de anisotropía."
#: doc/classes/BaseMaterial3D.xml:97
msgid ""
"If [code]true[/code], ambient occlusion is enabled. Ambient occlusion "
"darkens areas based on the [member ao_texture]."
msgstr ""
+"Si [code]true[/code], se activa la oclusión ambiental. La oclusión ambiental "
+"oscurece las áreas basadas en el [member ao_texture]."
#: doc/classes/BaseMaterial3D.xml:100
msgid ""
@@ -11000,18 +11074,27 @@ msgid ""
"This can be used to impact the strength of the ambient occlusion effect, but "
"typically looks unrealistic."
msgstr ""
+"La cantidad que la oclusión ambiental afecta a la iluminación de las luces. "
+"Si [code]0[/code], la oclusión ambiental sólo afecta a la luz ambiental. Si "
+"[code]1[/code], la oclusión ambiental afecta a las luces tanto como a la luz "
+"ambiental. Esto puede utilizarse para influir en la intensidad del efecto de "
+"la oclusión ambiental, pero normalmente tiene un aspecto poco realista."
#: doc/classes/BaseMaterial3D.xml:103
msgid ""
"If [code]true[/code], use [code]UV2[/code] coordinates to look up from the "
"[member ao_texture]."
msgstr ""
+"Si [code]true[/code], usa las coordenadas [code]UV2[/code] para mirar hacia "
+"arriba desde el [member ao_texture]."
#: doc/classes/BaseMaterial3D.xml:106
msgid ""
"Texture that defines the amount of ambient occlusion for a given point on "
"the object."
msgstr ""
+"Textura que define la cantidad de oclusión ambiental para un punto "
+"determinado del objeto."
#: doc/classes/BaseMaterial3D.xml:109 doc/classes/BaseMaterial3D.xml:286
#: doc/classes/BaseMaterial3D.xml:307
@@ -11022,22 +11105,31 @@ msgid ""
"stored metallic in the red channel, roughness in the blue, and ambient "
"occlusion in the green you could reduce the number of textures you use."
msgstr ""
+"Especifica el canal del [member ao_texture] en el que se almacena la "
+"información de oclusión ambiental. Esto es útil cuando se almacena la "
+"información de múltiples efectos en una sola textura. Por ejemplo, si "
+"almacena metálico en el canal rojo, rugosidad en el azul y oclusión "
+"ambiental en el verde podría reducir el número de texturas que utiliza."
#: doc/classes/BaseMaterial3D.xml:112
msgid ""
"The color used by the backlight effect. Represents the light passing through "
"an object."
msgstr ""
+"El color usado por el efecto de luz de fondo. Representa la luz que pasa a "
+"través de un objeto."
#: doc/classes/BaseMaterial3D.xml:115
msgid "If [code]true[/code], the backlight effect is enabled."
-msgstr ""
+msgstr "Si [code]true[/code], se activa el efecto de luz de fondo."
#: doc/classes/BaseMaterial3D.xml:118
msgid ""
"Texture used to control the backlight effect per-pixel. Added to [member "
"backlight]."
msgstr ""
+"Textura utilizada para controlar el efecto de luz de fondo por píxel. "
+"Añadido a [member backlight]."
#: doc/classes/BaseMaterial3D.xml:121
msgid ""
@@ -11045,10 +11137,16 @@ msgid ""
"Otherwise the scale is lost when billboarding. Only applies when [member "
"billboard_mode] is [constant BILLBOARD_ENABLED]."
msgstr ""
+"Si [code]true[/code], el shader mantendrá la escala establecida para la "
+"malla. De lo contrario, la escala se perderá cuando se haga billboarding. "
+"Sólo se aplica cuando [member billboard_mode] es [constant "
+"BILLBOARD_ENABLED]."
#: doc/classes/BaseMaterial3D.xml:124
msgid "Controls how the object faces the camera. See [enum BillboardMode]."
msgstr ""
+"Controla la forma en que el objeto está de cara a la cámara. Ver [enum "
+"BillboardMode]."
#: doc/classes/BaseMaterial3D.xml:127
msgid ""
@@ -11056,12 +11154,17 @@ msgid ""
"[b]Note:[/b] Values other than [code]Mix[/code] force the object into the "
"transparent pipeline. See [enum BlendMode]."
msgstr ""
+"El modo de mezcla del material.\n"
+"[b]Nota:[/b] Los valores distintos a [code]Mix[/code] obligan al objeto a "
+"entrar en el pipeline transparente. Ver [enum BlendMode]."
#: doc/classes/BaseMaterial3D.xml:131
msgid ""
"Sets the strength of the clearcoat effect. Setting to [code]0[/code] looks "
"the same as disabling the clearcoat effect."
msgstr ""
+"Establece la fuerza del efecto del barniz. Ajustar a [code]0[/code] se ve "
+"igual que desactivar el efecto de barniz."
#: doc/classes/BaseMaterial3D.xml:134
msgid ""
@@ -11070,12 +11173,19 @@ msgid ""
"blob. This makes materials appear as if they have a clear layer on them that "
"can be either glossy or rough."
msgstr ""
+"Si [code]true[/code], se habilita la renderización de barniz. Añade un pase "
+"transparente secundario al cálculo de iluminación, lo que resulta en una "
+"mancha especular añadida. Esto hace que los materiales aparezcan como si "
+"tuvieran una capa transparente sobre ellos que puede ser brillante o rugosa."
#: doc/classes/BaseMaterial3D.xml:137
msgid ""
"Sets the roughness of the clearcoat pass. A higher value results in a "
"smoother clearcoat while a lower value results in a rougher clearcoat."
msgstr ""
+"Establece la rugosidad del paso del barniz. Un valor más alto resulta en un "
+"barniz más suave mientras que un valor más bajo resulta en un barniz más "
+"áspero."
#: doc/classes/BaseMaterial3D.xml:140
msgid ""
@@ -11083,28 +11193,37 @@ msgid ""
"of the clearcoat. Strength is specified in the red channel while glossiness "
"is specified in the green channel."
msgstr ""
+"Textura que define la fuerza del efecto del barniz y el brillo del barniz. "
+"La fuerza se especifica en el canal rojo mientras que el brillo se "
+"especifica en el canal verde."
#: doc/classes/BaseMaterial3D.xml:143
msgid ""
"Which side of the object is not drawn when backfaces are rendered. See [enum "
"CullMode]."
msgstr ""
+"Cual lado del objeto no se dibuja cuando se renderizan las caras traseras. "
+"Ver [enum CullMode]."
#: doc/classes/BaseMaterial3D.xml:146
msgid ""
"Determines when depth rendering takes place. See [enum DepthDrawMode]. See "
"also [member transparency]."
msgstr ""
+"Determina cuándo el renderizado de profundidad se lleva a cabo. Ver [enum "
+"DepthDrawMode]. Ver también [member transparency]."
#: doc/classes/BaseMaterial3D.xml:149
msgid "Texture that specifies the color of the detail overlay."
-msgstr ""
+msgstr "Textura que especifica el color de la superposición de los detalles."
#: doc/classes/BaseMaterial3D.xml:152
msgid ""
"Specifies how the [member detail_albedo] should blend with the current "
"[code]ALBEDO[/code]. See [enum BlendMode] for options."
msgstr ""
+"Especifica cómo el [member detail_albedo] debe mezclarse con el actual "
+"[code]ALBEDO[/code]. Ver [enum BlendMode] para las opciones."
#: doc/classes/BaseMaterial3D.xml:155
msgid ""
@@ -11113,12 +11232,18 @@ msgid ""
"detail_mask]. This can be used to add variation to objects, or to blend "
"between two different albedo/normal textures."
msgstr ""
+"Si [code]true[/code], permite la superposición de detalles. El detalle es "
+"una segunda textura que se mezcla sobre la superficie del objeto basada en "
+"[miembro detail_mask]. Esto puede ser usado para añadir variación a los "
+"objetos, o para mezclar entre dos diferentes texturas de albedo/normal."
#: doc/classes/BaseMaterial3D.xml:158
msgid ""
"Texture used to specify how the detail textures get blended with the base "
"textures."
msgstr ""
+"La textura usada para especificar cómo las texturas de detalle se mezclan "
+"con las texturas de base."
#: doc/classes/BaseMaterial3D.xml:161
msgid ""
@@ -11128,47 +11253,65 @@ msgid ""
"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]this page[/url] for "
"a comparison of normal map coordinates expected by popular engines."
msgstr ""
+"Textura que especifica la normalidad por píxel de la superposición de "
+"detalles.\n"
+"[b]Nota:[/b] Godot espera que el mapa de normales utilice las coordenadas X"
+"+, Y-, y Z+. Ver [url=http://wiki.polycount.com/wiki/"
+"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]esta página[/url] "
+"para una comparación de las coordenadas del mapa normal esperadas por los "
+"motores populares."
#: doc/classes/BaseMaterial3D.xml:165
msgid ""
"Specifies whether to use [code]UV[/code] or [code]UV2[/code] for the detail "
"layer. See [enum DetailUV] for options."
msgstr ""
+"Especifica si se utiliza [code]UV[/code] o [code]UV2[/code] para la capa de "
+"detalle. Ver [enum DetailUV] para las opciones."
#: doc/classes/BaseMaterial3D.xml:168
msgid ""
"The algorithm used for diffuse light scattering. See [enum DiffuseMode]."
msgstr ""
+"El algoritmo utilizado para la dispersión de la luz difusa. Véase [enum "
+"DiffuseMode]."
#: doc/classes/BaseMaterial3D.xml:171
msgid "If [code]true[/code], the object receives no ambient light."
-msgstr ""
+msgstr "Si [code]true[/code], el objeto no recibe luz ambiental."
#: doc/classes/BaseMaterial3D.xml:174
msgid ""
"If [code]true[/code], the object receives no shadow that would otherwise be "
"cast onto it."
msgstr ""
+"Si [code]true[/code], el objeto no recibe ninguna sombra que de otra manera "
+"sería arrojada sobre él."
#: doc/classes/BaseMaterial3D.xml:177
msgid "Distance at which the object fades fully and is no longer visible."
msgstr ""
+"Distancia a la que el objeto se desvanece completamente y ya no es visible."
#: doc/classes/BaseMaterial3D.xml:180
msgid ""
"Distance at which the object starts to fade. If the object is less than this "
"distance away it will appear normal."
msgstr ""
+"Distancia a la que el objeto comienza a desvanecerse. Si el objeto está a "
+"menos de esta distancia, parecerá normal."
#: doc/classes/BaseMaterial3D.xml:183
msgid ""
"Specifies which type of fade to use. Can be any of the [enum "
"DistanceFadeMode]s."
msgstr ""
+"Especifica el tipo de desvanecimiento a utilizar. Puede ser cualquiera de "
+"los [enum DistanceFadeMode]s."
#: doc/classes/BaseMaterial3D.xml:186
msgid "The emitted light's color. See [member emission_enabled]."
-msgstr ""
+msgstr "El color de la luz emitida. Ver [member emission_enabled]."
#: doc/classes/BaseMaterial3D.xml:189
msgid ""
@@ -11176,40 +11319,51 @@ msgid ""
"appear brighter. The object can also cast light on other objects if a "
"[GIProbe] is used and this object is used in baked lighting."
msgstr ""
+"Si [code]true[/code], el cuerpo emite luz. Emitir luz hace que el objeto "
+"parezca más brillante. El objeto también puede emitir luz sobre otros "
+"objetos si se utiliza un [GIProbe] y este objeto se utiliza en el mapa de "
+"iluminacion cocinada."
#: doc/classes/BaseMaterial3D.xml:192
msgid "The emitted light's strength. See [member emission_enabled]."
-msgstr ""
+msgstr "La fuerza de la luz emitida. Ver [member emission_enabled]."
#: doc/classes/BaseMaterial3D.xml:195
msgid "Use [code]UV2[/code] to read from the [member emission_texture]."
-msgstr ""
+msgstr "Utilice [code]UV2[/code] para leer de la [member emission_texture]."
#: doc/classes/BaseMaterial3D.xml:198
msgid ""
"Sets how [member emission] interacts with [member emission_texture]. Can "
"either add or multiply. See [enum EmissionOperator] for options."
msgstr ""
+"Establece cómo interactúa [member emission] con [member emission_texture]. "
+"Puede sumar o multiplicar. Ver [enum EmissionOperator] para las opciones."
#: doc/classes/BaseMaterial3D.xml:201
msgid "Texture that specifies how much surface emits light at a given point."
msgstr ""
+"Textura que especifica cuánta superficie emite luz en un punto determinado."
#: doc/classes/BaseMaterial3D.xml:204
msgid ""
"If [code]true[/code], the object is rendered at the same size regardless of "
"distance."
msgstr ""
+"Si [code]true[/code], el objeto se renderiza con el mismo tamaño "
+"independientemente de la distancia."
#: doc/classes/BaseMaterial3D.xml:207
msgid ""
"If [code]true[/code], enables the vertex grow setting. See [member "
"grow_amount]."
msgstr ""
+"Si [code]true[/code], permite el ajuste de crecimiento del vértice. Ver "
+"[member grow_amount]."
#: doc/classes/BaseMaterial3D.xml:210
msgid "Grows object vertices in the direction of their normals."
-msgstr ""
+msgstr "Crecen los vértices de los objetos en la dirección de sus normales."
#: doc/classes/BaseMaterial3D.xml:231
msgid ""
@@ -11223,6 +11377,15 @@ msgid ""
"metal and non-metal sections. To alter the amount of reflection use [member "
"roughness]."
msgstr ""
+"Un valor alto hace que el material parezca más como un metal. Los no "
+"metálicos usan su albedo como color difuso y añaden difusión a la reflexión "
+"especular. Con los no metálicos, la reflexión aparece sobre el color del "
+"albedo. Los metales usan su albedo como multiplicador de la reflexión "
+"especular y ponen el color difuso en negro, lo que resulta en una reflexión "
+"teñida. Los materiales funcionan mejor cuando son totalmente metálicos o "
+"totalmente no metálicos, los valores entre [code]0[/code] y [code]1[/code] "
+"sólo deben utilizarse para la mezcla entre secciones metálicas y no "
+"metálicas. Para alterar la cantidad de reflexión utilice [member roughness]."
#: doc/classes/BaseMaterial3D.xml:234
msgid ""
@@ -11232,12 +11395,19 @@ msgid ""
"should be left at [code]0.5[/code] in most cases. See also [member "
"roughness]."
msgstr ""
+"Establece el tamaño del lóbulo especular. El lóbulo especular es el punto "
+"brillante que se refleja en las fuentes de luz.\n"
+"[b]Nota:[/b] a diferencia de [member metallic], este no es un conservador de "
+"energía, por lo que debe dejarse en [code]0.5[/code] en la mayoría de los "
+"casos. Véase también [member roughness]."
#: doc/classes/BaseMaterial3D.xml:238
msgid ""
"Texture used to specify metallic for an object. This is multiplied by "
"[member metallic]."
msgstr ""
+"Textura utilizada para especificar el metal de un objeto. Se multiplica por "
+"[member metallic]."
#: doc/classes/BaseMaterial3D.xml:241
msgid ""
@@ -11247,20 +11417,27 @@ msgid ""
"the red channel, roughness in the blue, and ambient occlusion in the green "
"you could reduce the number of textures you use."
msgstr ""
+"Especifica el canal de la [member metallic_texture] en el que se almacena la "
+"información metálica. Esto es útil cuando se almacena la información para "
+"múltiples efectos en una sola textura. Por ejemplo, si almacenas metálicos "
+"en el canal rojo, rugosidad en el azul y oclusión ambiental en el verde, "
+"podrías reducir el número de texturas que utilizas."
#: doc/classes/BaseMaterial3D.xml:244
msgid ""
"If [code]true[/code], depth testing is disabled and the object will be drawn "
"in render order."
msgstr ""
+"Si [code]true[/code], la prueba de profundidad está desactivada y el objeto "
+"se dibujará en orden de renderización."
#: doc/classes/BaseMaterial3D.xml:247
msgid "If [code]true[/code], normal mapping is enabled."
-msgstr ""
+msgstr "Si [code]true[/code], se habilita el mapeado normal."
#: doc/classes/BaseMaterial3D.xml:250
msgid "The strength of the normal map's effect."
-msgstr ""
+msgstr "La fuerza del efecto del mapa normal."
#: doc/classes/BaseMaterial3D.xml:253
msgid ""
@@ -11273,72 +11450,103 @@ msgid ""
"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]this page[/url] for "
"a comparison of normal map coordinates expected by popular engines."
msgstr ""
+"Textura utilizada para especificar la normal en un pixel determinado. La "
+"[code]normal_texture[/code] sólo utiliza los canales rojo y verde. El normal "
+"leído de [code]normal_texture[/code] se orienta alrededor del normal de la "
+"superficie proporcionado por la [Mesh].\n"
+"[b]Nota:[/b] Godot espera que el mapa de normales utilice las coordenadas X"
+"+, Y-, y Z+. Ver [url=http://wiki.polycount.com/wiki/"
+"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]esta página[/url] "
+"para una comparación de las coordenadas del mapa normal esperadas por los "
+"motores populares."
#: doc/classes/BaseMaterial3D.xml:259
msgid ""
"The number of horizontal frames in the particle sprite sheet. Only enabled "
"when using [constant BILLBOARD_PARTICLES]. See [member billboard_mode]."
msgstr ""
+"El número de fotogramas horizontales en la hoja de sprites de partículas. "
+"Sólo se habilita cuando se usa la constante [BILLBOARD_PARTICLES]. Ver "
+"[member billboard_mode]."
#: doc/classes/BaseMaterial3D.xml:262
msgid ""
"If [code]true[/code], particle animations are looped. Only enabled when "
"using [constant BILLBOARD_PARTICLES]. See [member billboard_mode]."
msgstr ""
+"Si [code]true[/code], las animaciones de las partículas se hacen en bucle. "
+"Sólo se activa cuando se usa [constante BILLBOARD_PARTICLES]. Ver [member "
+"billboard_mode]."
#: doc/classes/BaseMaterial3D.xml:265
msgid ""
"The number of vertical frames in the particle sprite sheet. Only enabled "
"when using [constant BILLBOARD_PARTICLES]. See [member billboard_mode]."
msgstr ""
+"El número de fotogramas verticales en la hoja de sprites de partículas. Sólo "
+"se habilita cuando se usa la constante [BILLBOARD_PARTICLES]. Ver [member "
+"billboard_mode]."
#: doc/classes/BaseMaterial3D.xml:268
msgid "The point size in pixels. See [member use_point_size]."
-msgstr ""
+msgstr "El tamaño del punto en píxeles. Ver [member use_point_size]."
#: doc/classes/BaseMaterial3D.xml:271
msgid ""
"Distance over which the fade effect takes place. The larger the distance the "
"longer it takes for an object to fade."
msgstr ""
+"Distancia a la que se produce el efecto de desvanecimiento. Cuanto mayor es "
+"la distancia, más tiempo tarda un objeto en desvanecerse."
#: doc/classes/BaseMaterial3D.xml:274
msgid ""
"If [code]true[/code], the proximity fade effect is enabled. The proximity "
"fade effect fades out each pixel based on its distance to another object."
msgstr ""
+"Si [code]true[/code], se activa el efecto de desvanecimiento por proximidad. "
+"El efecto de desvanecimiento por proximidad se desvanece cada píxel basado "
+"en su distancia a otro objeto."
#: doc/classes/BaseMaterial3D.xml:277
msgid ""
"If [code]true[/code], the refraction effect is enabled. Distorts "
"transparency based on light from behind the object."
msgstr ""
+"Si [code]true[/code], se activa el efecto de refracción. Distorsiona la "
+"transparencia basada en la luz que viene de detrás del objeto."
#: doc/classes/BaseMaterial3D.xml:280
msgid "The strength of the refraction effect."
-msgstr ""
+msgstr "La fuerza del efecto de refracción."
#: doc/classes/BaseMaterial3D.xml:283
msgid ""
"Texture that controls the strength of the refraction per-pixel. Multiplied "
"by [member refraction_scale]."
msgstr ""
+"Textura que controla la fuerza de la refracción por píxel. Multiplicado por "
+"[member refraction_scale]."
#: doc/classes/BaseMaterial3D.xml:289
msgid "Sets the strength of the rim lighting effect."
-msgstr ""
+msgstr "Establece la fuerza del efecto de iluminación del borde."
#: doc/classes/BaseMaterial3D.xml:292
msgid ""
"If [code]true[/code], rim effect is enabled. Rim lighting increases the "
"brightness at glancing angles on an object."
msgstr ""
+"Si [code]true[/code], el efecto de borde está activado. La iluminación de "
+"los bordes aumenta el brillo en los ángulos de visión de un objeto."
#: doc/classes/BaseMaterial3D.xml:295
msgid ""
"Texture used to set the strength of the rim lighting effect per-pixel. "
"Multiplied by [member rim]."
msgstr ""
+"La textura utilizada para establecer la fuerza del efecto de iluminación del "
+"borde por píxel. Multiplicado por el [member rim]."
#: doc/classes/BaseMaterial3D.xml:298
msgid ""
@@ -11346,6 +11554,10 @@ msgid ""
"[code]0[/code] the light color is used, while [code]1[/code] means albedo "
"color is used. An intermediate value generally works best."
msgstr ""
+"La cantidad de luz de mezclia y el color del albedo cuando se renderiza el "
+"efecto de borde. Si se utiliza [code]0[/code] el color de la luz, mientras "
+"que [code]1[/code] significa que se utiliza el color del albedo. Un valor "
+"intermedio generalmente funciona mejor."
#: doc/classes/BaseMaterial3D.xml:301
msgid ""
@@ -11353,12 +11565,17 @@ msgid ""
"while a value of [code]1[/code] completely blurs the reflection. See also "
"[member metallic]."
msgstr ""
+"Reflexión de la superficie. Un valor de [code]0[/code] representa un espejo "
+"perfecto mientras que un valor de [code]1[/code] difumina completamente el "
+"reflejo. Véase también [member metallic]."
#: doc/classes/BaseMaterial3D.xml:304
msgid ""
"Texture used to control the roughness per-pixel. Multiplied by [member "
"roughness]."
msgstr ""
+"La textura utilizada para controlar la rugosidad por píxel. Multiplicado por "
+"[member roughness]."
#: doc/classes/BaseMaterial3D.xml:310
msgid ""
@@ -11366,6 +11583,10 @@ msgid ""
"lighting is faster, making it the best choice for mobile applications, "
"however it looks considerably worse than per-pixel."
msgstr ""
+"Establece si el sombreado se produce por píxel o por vértice. La iluminación "
+"por vértice es más rápida, lo que la convierte en la mejor opción para las "
+"aplicaciones móviles, sin embargo se ve considerablemente peor que la de por "
+"píxel."
#: doc/classes/BaseMaterial3D.xml:313
msgid ""
@@ -11374,46 +11595,62 @@ msgid ""
"areas are transparent. Useful for overlaying shadows onto a camera feed in "
"AR."
msgstr ""
+"Si [code]true[/code], habilita el modo de representación \"sombra a opacidad"
+"\" en el que la iluminación modifica el alfa de modo que las áreas "
+"sombreadas son opacas y las áreas no sombreadas son transparentes. Es útil "
+"para superponer sombras en una cámara de alimentación en AR."
#: doc/classes/BaseMaterial3D.xml:316
msgid "The method for rendering the specular blob. See [enum SpecularMode]."
msgstr ""
+"El método para renderizar la mancha especular. Ver [enum SpecularMode]."
#: doc/classes/BaseMaterial3D.xml:319
msgid ""
"If [code]true[/code], subsurface scattering is enabled. Emulates light that "
"penetrates an object's surface, is scattered, and then emerges."
msgstr ""
+"Si [code]true[/code], se activa la dispersión subterránea. Emula la luz que "
+"penetra en la superficie de un objeto, se dispersa y luego emerge."
#: doc/classes/BaseMaterial3D.xml:322
msgid ""
"If [code]true[/code], subsurface scattering will use a special mode "
"optimized for the color and density of human skin."
msgstr ""
+"Si [code]true[/code], la dispersión del subsuelo utilizará un modo especial "
+"optimizado para el color y la densidad de la piel humana."
#: doc/classes/BaseMaterial3D.xml:325
msgid "The strength of the subsurface scattering effect."
-msgstr ""
+msgstr "La fuerza del efecto de dispersión del subsuelo."
#: doc/classes/BaseMaterial3D.xml:328
msgid ""
"Texture used to control the subsurface scattering strength. Stored in the "
"red texture channel. Multiplied by [member subsurf_scatter_strength]."
msgstr ""
+"La textura utilizada para controlar la fuerza del subsurface scattering. Se "
+"almacena en el canal rojo de la textura. Multiplicado por [member "
+"subsurf_scatter_strength]."
#: doc/classes/BaseMaterial3D.xml:343
msgid "Filter flags for the texture. See [enum TextureFilter] for options."
msgstr ""
+"Filtro de flags para la textura. Ver [enum TextureFilter] para las opciones."
#: doc/classes/BaseMaterial3D.xml:346
msgid "Repeat flags for the texture. See [enum TextureFilter] for options."
msgstr ""
+"Repita las flags para la textura. Ver [enum TextureFilter] para las opciones."
#: doc/classes/BaseMaterial3D.xml:349
msgid ""
"If [code]true[/code], transparency is enabled on the body. See also [member "
"blend_mode]."
msgstr ""
+"Si [code]true[/code], se habilita la transparencia en el cuerpo. Véase "
+"también [member blend_mode]."
#: doc/classes/BaseMaterial3D.xml:352
msgid ""
@@ -11421,6 +11658,10 @@ msgid ""
"[b]Note:[/b] this is only effective for objects whose geometry is point-"
"based rather than triangle-based. See also [member point_size]."
msgstr ""
+"Si [code]true[/code], el tamaño del punto de renderizado puede ser "
+"cambiado.\n"
+"[b]Nota:[/b] esto sólo es efectivo para los objetos cuya geometría se basa "
+"en puntos en vez de en triángulos. Ver también [member point_size]."
#: doc/classes/BaseMaterial3D.xml:356
msgid ""
@@ -11428,12 +11669,17 @@ msgid ""
"added to [code]UV[/code] in the vertex function. This can be used to offset "
"a texture."
msgstr ""
+"Cuánto desplazar las coordenadas [code]UV[/code]. Esta cantidad se añadirá a "
+"[code]UV[/code] en la función de vértice. Esto puede ser usado para "
+"desplazar una textura."
#: doc/classes/BaseMaterial3D.xml:359
msgid ""
"How much to scale the [code]UV[/code] coordinates. This is multiplied by "
"[code]UV[/code] in the vertex function."
msgstr ""
+"Cuánto escalar las coordenadas [code]UV[/code]. Esto se multiplica por "
+"[code]UV[/code] en la función de vértice."
#: doc/classes/BaseMaterial3D.xml:362
msgid ""
@@ -11448,18 +11694,34 @@ msgid ""
"because it is blending the texture between the three axes, it is unsuitable "
"when you are trying to achieve crisp texturing."
msgstr ""
+"Si [code]true[/code], en lugar de usar [code]UV[/code] las texturas usarán "
+"una búsqueda de texturas triplanares para determinar cómo aplicarlas. "
+"Triplanar usa la orientación de la superficie del objeto para mezclar entre "
+"las coordenadas de la textura. Lee de la textura fuente 3 veces, una para "
+"cada eje y luego se mezcla entre los resultados en base a cuán cerca se "
+"alinea el píxel con cada eje. Esto se utiliza a menudo para las "
+"características naturales para obtener una mezcla realista de los "
+"materiales. Debido a que la textura triplanar requiere muchas más lecturas "
+"de textura por píxel, es mucho más lenta que la textura UV normal. Además, "
+"debido a que está mezclando la textura entre los tres ejes, es inadecuado "
+"cuando se trata de lograr una textura nítida."
#: doc/classes/BaseMaterial3D.xml:365 doc/classes/BaseMaterial3D.xml:380
msgid ""
"A lower number blends the texture more softly while a higher number blends "
"the texture more sharply."
msgstr ""
+"Un número más bajo mezcla la textura más suavemente mientras que un número "
+"más alto mezcla la textura más bruscamente."
#: doc/classes/BaseMaterial3D.xml:368
msgid ""
"If [code]true[/code], triplanar mapping for [code]UV[/code] is calculated in "
"world space rather than object local space. See also [member uv1_triplanar]."
msgstr ""
+"Si [code]true[/code], el mapeado triplanar para [code]UV[/code] se calcula "
+"en el espacio del mundo en lugar de en el espacio local de los objetos. Ver "
+"también [member uv1_triplanar]."
#: doc/classes/BaseMaterial3D.xml:371
msgid ""
@@ -11467,12 +11729,17 @@ msgid ""
"added to [code]UV2[/code] in the vertex function. This can be used to offset "
"a texture."
msgstr ""
+"Cuánto desplazar las coordenadas [code]UV2[/code]. Esta cantidad se añadirá "
+"a [code]UV2[/code] en la función de vértice. Esto puede ser usado para "
+"compensar una textura."
#: doc/classes/BaseMaterial3D.xml:374
msgid ""
"How much to scale the [code]UV2[/code] coordinates. This is multiplied by "
"[code]UV2[/code] in the vertex function."
msgstr ""
+"Cuánto escalar las coordenadas de [code]UV2[/code]. Esto se multiplica por "
+"[code]UV2[/code] en la función de vértice."
#: doc/classes/BaseMaterial3D.xml:377
msgid ""
@@ -11487,6 +11754,17 @@ msgid ""
"because it is blending the texture between the three axes, it is unsuitable "
"when you are trying to achieve crisp texturing."
msgstr ""
+"Si [code]true[/code], en lugar de usar [code]UV2[/code] las texturas usarán "
+"una búsqueda de texturas triplanares para determinar cómo aplicarlas. "
+"Triplanar usa la orientación de la superficie del objeto para mezclar entre "
+"las coordenadas de la textura. Lee de la textura fuente 3 veces, una para "
+"cada eje y luego se mezcla entre los resultados en base a cuán cerca se "
+"alinea el píxel con cada eje. Esto se utiliza a menudo para las "
+"características naturales para obtener una mezcla realista de los "
+"materiales. Debido a que la textura triplanar requiere muchas más lecturas "
+"de textura por píxel, es mucho más lenta que la textura UV normal. Además, "
+"debido a que está mezclando la textura entre los tres ejes, es inadecuado "
+"cuando se trata de lograr una textura nítida."
#: doc/classes/BaseMaterial3D.xml:383
msgid ""
@@ -11494,114 +11772,134 @@ msgid ""
"in world space rather than object local space. See also [member "
"uv2_triplanar]."
msgstr ""
+"Si [code]true[/code], la cartografía triplanar para [code]UV2[/code] se "
+"calcula en el espacio del mundo en lugar de en el espacio local de los "
+"objetos. Ver también [member uv2_triplanar]."
#: doc/classes/BaseMaterial3D.xml:386
msgid ""
"If [code]true[/code], the model's vertex colors are processed as sRGB mode."
msgstr ""
+"Si [code]true[/code], los colores de los vértices del modelo se procesan "
+"como modo sRGB."
#: doc/classes/BaseMaterial3D.xml:389
msgid "If [code]true[/code], the vertex color is used as albedo color."
msgstr ""
+"Si [code]true[/code], el color del vértice se utiliza como color del albedo."
#: doc/classes/BaseMaterial3D.xml:394
msgid "Texture specifying per-pixel color."
-msgstr ""
+msgstr "Textura que especifica el color por píxel."
#: doc/classes/BaseMaterial3D.xml:397
msgid "Texture specifying per-pixel metallic value."
-msgstr ""
+msgstr "Textura que especifica el valor metálico por píxel."
#: doc/classes/BaseMaterial3D.xml:400
msgid "Texture specifying per-pixel roughness value."
-msgstr ""
+msgstr "Textura que especifica el valor de rugosidad por píxel."
#: doc/classes/BaseMaterial3D.xml:403
msgid "Texture specifying per-pixel emission color."
-msgstr ""
+msgstr "Textura que especifica el color de emisión por píxel."
#: doc/classes/BaseMaterial3D.xml:406
msgid "Texture specifying per-pixel normal vector."
-msgstr ""
+msgstr "Textura que especifica el vector normal por píxel."
#: doc/classes/BaseMaterial3D.xml:409
msgid "Texture specifying per-pixel rim value."
-msgstr ""
+msgstr "Textura que especifica el valor del borde por píxel."
#: doc/classes/BaseMaterial3D.xml:412
msgid "Texture specifying per-pixel clearcoat value."
-msgstr ""
+msgstr "Textura que especifica el valor del barniz por píxel."
#: doc/classes/BaseMaterial3D.xml:415
msgid ""
"Texture specifying per-pixel flowmap direction for use with [member "
"anisotropy]."
msgstr ""
+"Textura que especifica la dirección del mapa de flujo por píxel para su uso "
+"con [member anisotropy]."
#: doc/classes/BaseMaterial3D.xml:418
msgid "Texture specifying per-pixel ambient occlusion value."
-msgstr ""
+msgstr "Textura que especifica el valor de oclusión ambiental por píxel."
#: doc/classes/BaseMaterial3D.xml:421
msgid "Texture specifying per-pixel height."
-msgstr ""
+msgstr "Textura que especifica la altura por píxel."
#: doc/classes/BaseMaterial3D.xml:424
msgid "Texture specifying per-pixel subsurface scattering."
-msgstr ""
+msgstr "Textura que especifica la subsurface scattering por pixel."
#: doc/classes/BaseMaterial3D.xml:427
msgid "Texture specifying per-pixel transmittance for subsurface scattering."
msgstr ""
+"Textura que especifica la transmisión por píxel para la subsurface "
+"scattering."
#: doc/classes/BaseMaterial3D.xml:430
msgid "Texture specifying per-pixel backlight color."
-msgstr ""
+msgstr "Textura que especifica el color de la luz de fondo por píxel."
#: doc/classes/BaseMaterial3D.xml:433
msgid "Texture specifying per-pixel refraction strength."
-msgstr ""
+msgstr "Textura que especifica la fuerza de refracción por píxel."
#: doc/classes/BaseMaterial3D.xml:436
msgid "Texture specifying per-pixel detail mask blending value."
msgstr ""
+"Textura que especifica el valor de mezcla de la máscara de detalles por "
+"píxel."
#: doc/classes/BaseMaterial3D.xml:439
msgid "Texture specifying per-pixel detail color."
-msgstr ""
+msgstr "Textura que especifica el color de detalle por píxel."
#: doc/classes/BaseMaterial3D.xml:442
msgid "Texture specifying per-pixel detail normal."
-msgstr ""
+msgstr "La textura que especifica el detalle de la normal por píxel."
#: doc/classes/BaseMaterial3D.xml:445
msgid "Texture holding ambient occlusion, roughness, and metallic."
msgstr ""
+"Textura que mantiene los valores de la oclusión ambiental, la rugosidad y el "
+"metal."
#: doc/classes/BaseMaterial3D.xml:448
msgid "Represents the size of the [enum TextureParam] enum."
-msgstr ""
+msgstr "Representa el tamaño del enum [enum TextureParam]."
-#: doc/classes/BaseMaterial3D.xml:451 doc/classes/RenderingServer.xml:3657
-#: doc/classes/Viewport.xml:390
+#: doc/classes/BaseMaterial3D.xml:451 doc/classes/RenderingServer.xml:3668
+#: doc/classes/Viewport.xml:393
msgid ""
"The texture filter reads from the nearest pixel only. The simplest and "
"fastest method of filtering, but the texture will look pixelized."
msgstr ""
+"El filtro de textura se lee sólo desde el píxel más cercano. Es el método "
+"más simple y rápido de filtrar, pero la textura se verá pixelada."
-#: doc/classes/BaseMaterial3D.xml:454 doc/classes/RenderingServer.xml:3660
-#: doc/classes/Viewport.xml:393
+#: doc/classes/BaseMaterial3D.xml:454 doc/classes/RenderingServer.xml:3671
+#: doc/classes/Viewport.xml:396
msgid ""
"The texture filter blends between the nearest 4 pixels. Use this when you "
"want to avoid a pixelated style, but do not want mipmaps."
msgstr ""
+"El filtro de textura se mezcla entre los 4 píxeles más cercanos. Úsalo "
+"cuando quieras evitar un estilo pixelado, pero no quieras mipmaps."
-#: doc/classes/BaseMaterial3D.xml:457 doc/classes/RenderingServer.xml:3663
-#: doc/classes/Viewport.xml:396
+#: doc/classes/BaseMaterial3D.xml:457 doc/classes/RenderingServer.xml:3674
+#: doc/classes/Viewport.xml:399
msgid ""
"The texture filter reads from the nearest pixel in the nearest mipmap. The "
"fastest way to read from textures with mipmaps."
msgstr ""
+"El filtro de textura se lee desde el píxel más cercano en el mipmap más "
+"cercano. La forma más rápida de leer de las texturas con mipmaps."
#: doc/classes/BaseMaterial3D.xml:460
msgid ""
@@ -11609,15 +11907,23 @@ msgid ""
"nearest 2 mipmaps. Use this for most cases as mipmaps are important to "
"smooth out pixels that are far from the camera."
msgstr ""
+"El filtro de textura se mezcla entre los 4 píxeles más cercanos y entre los "
+"2 mipmaps más cercanos. Utilízalo en la mayoría de los casos, ya que los "
+"mipmaps son importantes para suavizar los píxeles que están lejos de la "
+"cámara."
-#: doc/classes/BaseMaterial3D.xml:463 doc/classes/RenderingServer.xml:3669
+#: doc/classes/BaseMaterial3D.xml:463 doc/classes/RenderingServer.xml:3680
msgid ""
"The texture filter reads from the nearest pixel, but selects a mipmap based "
"on the angle between the surface and the camera view. This reduces artifacts "
"on surfaces that are almost in line with the camera."
msgstr ""
+"El filtro de textura lee desde el píxel más cercano, pero selecciona un "
+"mipmap basado en el ángulo entre la superficie y la vista de la cámara. Esto "
+"reduce los artefactos en las superficies que están casi en línea con la "
+"cámara."
-#: doc/classes/BaseMaterial3D.xml:466 doc/classes/RenderingServer.xml:3672
+#: doc/classes/BaseMaterial3D.xml:466 doc/classes/RenderingServer.xml:3683
msgid ""
"The texture filter blends between the nearest 4 pixels and selects a mipmap "
"based on the angle between the surface and the camera view. This reduces "
@@ -11625,171 +11931,200 @@ msgid ""
"slowest of the filtering options, but results in the highest quality "
"texturing."
msgstr ""
+"El filtro de textura se mezcla entre los 4 píxeles más cercanos y selecciona "
+"un mipmap basado en el ángulo entre la superficie y la vista de la cámara. "
+"Esto reduce los artefactos en las superficies que están casi en línea con la "
+"cámara. Esta es la más lenta de las opciones de filtrado, pero da como "
+"resultado una textura de la más alta calidad."
-#: doc/classes/BaseMaterial3D.xml:469 doc/classes/CanvasItem.xml:685
+#: doc/classes/BaseMaterial3D.xml:469 doc/classes/CanvasItem.xml:695
msgid "Represents the size of the [enum TextureFilter] enum."
-msgstr ""
+msgstr "Representa el tamaño del enum [enum TextureFilter]."
#: doc/classes/BaseMaterial3D.xml:472
msgid "Use [code]UV[/code] with the detail texture."
-msgstr ""
+msgstr "Usa [code]UV[/code] con la textura de detalle."
#: doc/classes/BaseMaterial3D.xml:475
msgid "Use [code]UV2[/code] with the detail texture."
-msgstr ""
+msgstr "Usa [code]UV2[/code] con la textura de detalle."
#: doc/classes/BaseMaterial3D.xml:478
msgid "The material will not use transparency."
-msgstr ""
+msgstr "El material no utilizará la transparencia."
#: doc/classes/BaseMaterial3D.xml:481
msgid "The material will use the texture's alpha values for transparency."
msgstr ""
+"El material usará los valores alfa de la textura para la transparencia."
#: doc/classes/BaseMaterial3D.xml:484
msgid ""
"The material will cut off all values below a threshold, the rest will remain "
"opaque."
msgstr ""
+"El material cortará todos los valores por debajo de un umbral, el resto "
+"permanecerá opaco."
#: doc/classes/BaseMaterial3D.xml:487
msgid ""
"The material will use the texture's alpha value for transparency, but will "
"still be rendered in the pre-pass."
msgstr ""
+"El material utilizará el valor alfa de la textura para la transparencia, "
+"pero aún así se renderizará en el paso previo."
#: doc/classes/BaseMaterial3D.xml:490
msgid "Represents the size of the [enum Transparency] enum."
-msgstr ""
+msgstr "Representa el tamaño del enum [enum Transparency]."
#: doc/classes/BaseMaterial3D.xml:493
msgid "The object will not receive shadows."
-msgstr ""
+msgstr "El objeto no recibirá sombras."
#: doc/classes/BaseMaterial3D.xml:496
msgid ""
"The object will be shaded per pixel. Useful for realistic shading effect."
msgstr ""
+"El objeto se sombreará por píxel. Es útil para un efecto de sombreado "
+"realista."
#: doc/classes/BaseMaterial3D.xml:499
msgid ""
"The object will be shaded per vertex. Useful when you want cheaper shaders "
"and do not care about visual quality."
msgstr ""
+"El objeto será sombreado por vértice. Es útil cuando quieres sombreadores "
+"más baratos y no te importa la calidad visual."
#: doc/classes/BaseMaterial3D.xml:502
msgid "Represents the size of the [enum ShadingMode] enum."
-msgstr ""
+msgstr "Representa el tamaño del enum [enum ShadingMode]."
#: doc/classes/BaseMaterial3D.xml:505
msgid "Constant for setting [member emission_enabled]."
-msgstr ""
+msgstr "Constante para establecer [member emission_enabled]."
#: doc/classes/BaseMaterial3D.xml:508
msgid "Constant for setting [member normal_enabled]."
-msgstr ""
+msgstr "Constante para configuración [member normal_enabled]."
#: doc/classes/BaseMaterial3D.xml:511
msgid "Constant for setting [member rim_enabled]."
-msgstr ""
+msgstr "Constante para configuración [member rim_enabled]."
#: doc/classes/BaseMaterial3D.xml:514
msgid "Constant for setting [member clearcoat_enabled]."
-msgstr ""
+msgstr "Constante para configuración [member clearcoat_enabled]."
#: doc/classes/BaseMaterial3D.xml:517
msgid "Constant for setting [member anisotropy_enabled]."
-msgstr ""
+msgstr "Constante para configuración [member anisotropy_enabled]."
#: doc/classes/BaseMaterial3D.xml:520
msgid "Constant for setting [member ao_enabled]."
-msgstr ""
+msgstr "Constante para configuración [member ao_enabled]."
#: doc/classes/BaseMaterial3D.xml:523
msgid "Constant for setting [member heightmap_enabled]."
-msgstr ""
+msgstr "Constante para configuración [member heightmap_enabled]."
#: doc/classes/BaseMaterial3D.xml:526
msgid "Constant for setting [member subsurf_scatter_enabled]."
-msgstr ""
+msgstr "Constante para configuración [member subsurf_scatter_enabled]."
#: doc/classes/BaseMaterial3D.xml:529
msgid "Constant for setting [member subsurf_scatter_transmittance_enabled]."
msgstr ""
+"Constante para configuración [member subsurf_scatter_transmittance_enabled]."
#: doc/classes/BaseMaterial3D.xml:532
msgid "Constant for setting [member backlight_enabled]."
-msgstr ""
+msgstr "Constante para configuración [member backlight_enabled]."
#: doc/classes/BaseMaterial3D.xml:535
msgid "Constant for setting [member refraction_enabled]."
-msgstr ""
+msgstr "Constante para configuración [member refraction_enabled]."
#: doc/classes/BaseMaterial3D.xml:538
msgid "Constant for setting [member detail_enabled]."
-msgstr ""
+msgstr "Constante para configuración [member detail_enabled]."
#: doc/classes/BaseMaterial3D.xml:541 doc/classes/EditorFeatureProfile.xml:148
msgid "Represents the size of the [enum Feature] enum."
-msgstr ""
+msgstr "Representa el tamaño del enum [enum Feature]."
#: doc/classes/BaseMaterial3D.xml:544
msgid ""
"Default blend mode. The color of the object is blended over the background "
"based on the object's alpha value."
msgstr ""
+"Modo de mezcla por defecto. El color del objeto se mezcla sobre el fondo en "
+"base al valor alfa del objeto."
#: doc/classes/BaseMaterial3D.xml:547
msgid "The color of the object is added to the background."
-msgstr ""
+msgstr "El color del objeto se añade al fondo."
#: doc/classes/BaseMaterial3D.xml:550
msgid "The color of the object is subtracted from the background."
-msgstr ""
+msgstr "El color del objeto se resta del fondo."
#: doc/classes/BaseMaterial3D.xml:553
msgid "The color of the object is multiplied by the background."
-msgstr ""
+msgstr "El color del objeto se multiplica por el fondo."
#: doc/classes/BaseMaterial3D.xml:556
msgid "Default depth draw mode. Depth is drawn only for opaque objects."
msgstr ""
+"Modo de dibujo de profundidad predeterminado. La profundidad se dibuja sólo "
+"para los objetos opacos."
#: doc/classes/BaseMaterial3D.xml:559
msgid "Depth draw is calculated for both opaque and transparent objects."
msgstr ""
+"El dibujo de profundidad se calcula tanto para objetos opacos como "
+"transparentes."
#: doc/classes/BaseMaterial3D.xml:562
msgid "No depth draw."
-msgstr ""
+msgstr "No hay dibujo de profundidad."
#: doc/classes/BaseMaterial3D.xml:565
msgid "Default cull mode. The back of the object is culled when not visible."
msgstr ""
+"Modo descarte por defecto. La parte trasera del objeto es descartada(no se "
+"dibuja) cuando no está visible."
#: doc/classes/BaseMaterial3D.xml:568
msgid "The front of the object is culled when not visible."
-msgstr ""
+msgstr "La parte delantera del objeto es descartada cuando no está visible."
#: doc/classes/BaseMaterial3D.xml:571
msgid "No culling is performed."
-msgstr ""
+msgstr "No se realiza ningún descarte."
#: doc/classes/BaseMaterial3D.xml:574
msgid ""
"Disables the depth test, so this object is drawn on top of all others. "
"However, objects drawn after it in the draw order may cover it."
msgstr ""
+"Desactiva la prueba de profundidad, así que este objeto se dibuja encima de "
+"todos los demás. Sin embargo, los objetos dibujados después de él en el "
+"orden de dibujo pueden cubrirlo."
#: doc/classes/BaseMaterial3D.xml:577
msgid "Set [code]ALBEDO[/code] to the per-vertex color specified in the mesh."
msgstr ""
+"Ponga [code]ALBEDO[/code] en el color por vértice especificado en la malla."
#: doc/classes/BaseMaterial3D.xml:580
msgid ""
"Vertex color is in sRGB space and needs to be converted to linear. Only "
"applies in the Vulkan renderer."
msgstr ""
+"El color del vértice está en el espacio sRGB y necesita ser convertido a "
+"lineal. Sólo se aplica en el renderizador de Vulkan."
#: doc/classes/BaseMaterial3D.xml:583
msgid ""
@@ -11797,11 +12132,16 @@ msgid ""
"albedo texture lookup to use [code]POINT_COORD[/code] instead of [code]UV[/"
"code]."
msgstr ""
+"Utiliza el tamaño de los puntos para alterar el tamaño de los puntos "
+"primitivos. También cambia la búsqueda de la textura del albedo para usar "
+"[code]POINT_COORD[/code] en lugar de [code]UV[/code]."
#: doc/classes/BaseMaterial3D.xml:586
msgid ""
"Object is scaled by depth so that it always appears the same size on screen."
msgstr ""
+"El objeto se escala según la profundidad para que siempre aparezca del mismo "
+"tamaño en la pantalla."
#: doc/classes/BaseMaterial3D.xml:589
msgid ""
@@ -11809,119 +12149,144 @@ msgid ""
"when billboarding. Only applies when [member billboard_mode] is [constant "
"BILLBOARD_ENABLED]."
msgstr ""
+"Shader mantendrá la escala establecida para la malla. De lo contrario, la "
+"escala se perderá cuando se haga la billboarding. Sólo se aplica cuando "
+"[member billboard_mode] es [constant BILLBOARD_ENABLED]."
#: doc/classes/BaseMaterial3D.xml:592 doc/classes/BaseMaterial3D.xml:598
msgid ""
"Use triplanar texture lookup for all texture lookups that would normally use "
"[code]UV[/code]."
msgstr ""
+"Use la búsqueda de texturas triplanares para todas las búsquedas de texturas "
+"que normalmente usarían [code]UV[/code]."
#: doc/classes/BaseMaterial3D.xml:595 doc/classes/BaseMaterial3D.xml:601
msgid ""
"Use triplanar texture lookup for all texture lookups that would normally use "
"[code]UV2[/code]."
msgstr ""
+"Use la búsqueda de texturas triplanares para todas las búsquedas de texturas "
+"que normalmente usarían [code]UV2[/code]."
#: doc/classes/BaseMaterial3D.xml:604
msgid ""
"Use [code]UV2[/code] coordinates to look up from the [member ao_texture]."
msgstr ""
+"Use las coordenadas [code]UV2[/code] para mirar hacia arriba desde el "
+"[member ao_texture]."
#: doc/classes/BaseMaterial3D.xml:607
msgid ""
"Use [code]UV2[/code] coordinates to look up from the [member "
"emission_texture]."
msgstr ""
+"Utilice las coordenadas [code]UV2[/code] para mirar hacia arriba desde la "
+"[member emission_texture]."
#: doc/classes/BaseMaterial3D.xml:610
msgid "Forces the shader to convert albedo from sRGB space to linear space."
msgstr ""
+"Obliga al shader a convertir el albedo del espacio sRGB al espacio lineal."
#: doc/classes/BaseMaterial3D.xml:613
msgid "Disables receiving shadows from other objects."
-msgstr ""
+msgstr "Desactiva la recepción de sombras de otros objetos."
#: doc/classes/BaseMaterial3D.xml:616
msgid "Disables receiving ambient light."
-msgstr ""
+msgstr "Desactiva la recepción de luz ambiental."
#: doc/classes/BaseMaterial3D.xml:619
msgid "Enables the shadow to opacity feature."
-msgstr ""
+msgstr "Habilita la característica de opacidad de la sombra."
-#: doc/classes/BaseMaterial3D.xml:622 doc/classes/RenderingServer.xml:3684
-#: doc/classes/Viewport.xml:408
+#: doc/classes/BaseMaterial3D.xml:622 doc/classes/RenderingServer.xml:3695
+#: doc/classes/Viewport.xml:411
msgid ""
"Enables the texture to repeat when UV coordinates are outside the 0-1 range. "
"If using one of the linear filtering modes, this can result in artifacts at "
"the edges of a texture when the sampler filters across the edges of the "
"texture."
msgstr ""
+"Habilita que la textura se repita cuando las coordenadas UV están fuera del "
+"rango 0-1. Si se utiliza uno de los modos de filtrado lineal, esto puede dar "
+"lugar a artefactos en los bordes de una textura cuando el muestreador se "
+"filtra a través de los bordes de la textura."
#: doc/classes/BaseMaterial3D.xml:625
msgid ""
"Invert values read from a depth texture to convert them to height values "
"(heightmap)."
msgstr ""
+"Invertir los valores leídos de una textura de profundidad para convertirlos "
+"en valores de altura (mapa de altura)."
#: doc/classes/BaseMaterial3D.xml:628
msgid ""
"Enables the skin mode for subsurface scattering which is used to improve the "
"look of subsurface scattering when used for human skin."
msgstr ""
+"Habilita el modo de piel para la subsurface scattering el cual se utiliza "
+"para mejorar el aspecto de la subsurface scattering cuando se utiliza para "
+"la piel humana."
#: doc/classes/BaseMaterial3D.xml:631 doc/classes/CPUParticles2D.xml:356
#: doc/classes/CPUParticles3D.xml:364 doc/classes/ParticlesMaterial.xml:315
msgid "Represents the size of the [enum Flags] enum."
-msgstr ""
+msgstr "Representa el tamaño del enum [enum Flags]."
#: doc/classes/BaseMaterial3D.xml:634
msgid "Default diffuse scattering algorithm."
-msgstr ""
+msgstr "Algoritmo de dispersión difusa por defecto."
#: doc/classes/BaseMaterial3D.xml:637
msgid "Diffuse scattering ignores roughness."
-msgstr ""
+msgstr "La dispersión difusa ignora las rugosidades."
#: doc/classes/BaseMaterial3D.xml:640
msgid "Extends Lambert to cover more than 90 degrees when roughness increases."
msgstr ""
+"Extiende a Lambert para cubrir más de 90 grados cuando la rugosidad aumenta."
#: doc/classes/BaseMaterial3D.xml:643
msgid "Attempts to use roughness to emulate microsurfacing."
-msgstr ""
+msgstr "Intenta usar la rugosidad para emular la micro superficie."
#: doc/classes/BaseMaterial3D.xml:646
msgid "Uses a hard cut for lighting, with smoothing affected by roughness."
msgstr ""
+"Utiliza un corte duro para la iluminación, con el alisado afectado por la "
+"aspereza."
#: doc/classes/BaseMaterial3D.xml:649
msgid "Default specular blob."
-msgstr ""
+msgstr "Bola especular por defecto."
#: doc/classes/BaseMaterial3D.xml:652 doc/classes/BaseMaterial3D.xml:655
msgid "Older specular algorithm, included for compatibility."
-msgstr ""
+msgstr "Algoritmo especular más antiguo, incluido por compatibilidad."
#: doc/classes/BaseMaterial3D.xml:658
msgid "Toon blob which changes size based on roughness."
msgstr ""
+"La mancha de un dibujo que cambia de tamaño en función de la rugosidad."
#: doc/classes/BaseMaterial3D.xml:661
msgid "No specular blob."
-msgstr ""
+msgstr "No hay manchas especulares."
#: doc/classes/BaseMaterial3D.xml:664
msgid "Billboard mode is disabled."
-msgstr ""
+msgstr "Modo Billboard esta desactivado."
#: doc/classes/BaseMaterial3D.xml:667
msgid "The object's Z axis will always face the camera."
-msgstr ""
+msgstr "El eje Z del objeto siempre estará de cara a la cámara."
#: doc/classes/BaseMaterial3D.xml:670
msgid "The object's X axis will always face the camera."
-msgstr ""
+msgstr "El eje X del objeto siempre estará de cara a la cámara."
#: doc/classes/BaseMaterial3D.xml:673
msgid ""
@@ -11930,44 +12295,53 @@ msgid ""
"The [member ParticlesMaterial.anim_speed] or [member CPUParticles3D."
"anim_speed] should also be set to a positive value for the animation to play."
msgstr ""
+"Se utiliza para sistemas de partículas cuando se asigna a los nodos "
+"[GPUParticles3D] y [CPUParticles3D]. Habilita las propiedades de "
+"[code]partículas_anim_*[/code].\n"
+"El [member ParticlesMaterial.anim_speed] o [member CPUParticles3D."
+"anim_speed] también debe tener un valor positivo para que la animación se "
+"reproduzca."
#: doc/classes/BaseMaterial3D.xml:677
msgid "Used to read from the red channel of a texture."
-msgstr ""
+msgstr "Se usa para leer del canal rojo de una textura."
#: doc/classes/BaseMaterial3D.xml:680
msgid "Used to read from the green channel of a texture."
-msgstr ""
+msgstr "Se usa para leer del canal verde de una textura."
#: doc/classes/BaseMaterial3D.xml:683
msgid "Used to read from the blue channel of a texture."
-msgstr ""
+msgstr "Se usa para leer del canal azul de una textura."
#: doc/classes/BaseMaterial3D.xml:686
msgid "Used to read from the alpha channel of a texture."
-msgstr ""
+msgstr "Se usa para leer del canal azul de una textura."
#: doc/classes/BaseMaterial3D.xml:689
msgid "Currently unused."
-msgstr ""
+msgstr "Actualmente sin uso."
#: doc/classes/BaseMaterial3D.xml:692
msgid "Adds the emission color to the color from the emission texture."
-msgstr ""
+msgstr "Añade el color de la emisión al color de la textura de la emisión."
#: doc/classes/BaseMaterial3D.xml:695
msgid "Multiplies the emission color by the color from the emission texture."
msgstr ""
+"Multiplica el color de la emisión por el color de la textura de la emisión."
#: doc/classes/BaseMaterial3D.xml:698
msgid "Do not use distance fade."
-msgstr ""
+msgstr "No utilice el desvanecimiento de la distancia."
#: doc/classes/BaseMaterial3D.xml:701
msgid ""
"Smoothly fades the object out based on each pixel's distance from the camera "
"using the alpha channel."
msgstr ""
+"Suavemente se desvanece el objeto en base a la distancia de cada píxel de la "
+"cámara usando el canal alfa."
#: doc/classes/BaseMaterial3D.xml:704
msgid ""
@@ -11976,6 +12350,11 @@ msgid ""
"smoothly fade without enabling transparency. On certain hardware this can be "
"faster than [constant DISTANCE_FADE_PIXEL_ALPHA]."
msgstr ""
+"Suavemente desvanece el objeto en base a la distancia de cada píxel de la "
+"cámara usando un enfoque de titubeo. Los píxeles descartados siguen un "
+"patrón establecido para desvanecerse suavemente sin permitir la "
+"transparencia. En cierto hardware esto puede ser más rápido que [constant "
+"DISTANCE_FADE_PIXEL_ALPHA]."
#: doc/classes/BaseMaterial3D.xml:707
msgid ""
@@ -11984,182 +12363,278 @@ msgid ""
"smoothly fade without enabling transparency. On certain hardware this can be "
"faster than [constant DISTANCE_FADE_PIXEL_ALPHA]."
msgstr ""
+"Suavemente desvanece el objeto en base a la distancia de cada píxel de la "
+"cámara usando un enfoque de titubeo. Los píxeles descartados siguen un "
+"patrón establecido para desvanecerse suavemente sin permitir la "
+"transparencia. En cierto hardware esto puede ser más rápido que [constant "
+"DISTANCE_FADE_PIXEL_ALPHA]."
#: doc/classes/Basis.xml:4
msgid "3×3 matrix datatype."
-msgstr ""
+msgstr "Tipo de datos de matriz 3×3."
#: doc/classes/Basis.xml:7
+#, fuzzy
msgid ""
-"3×3 matrix used for 3D rotation and scale. Contains 3 vector fields X, Y and "
-"Z as its columns, which can be interpreted as the local basis vectors of a "
-"transformation. Can also be accessed as array of 3D vectors. These vectors "
-"are orthogonal to each other, but are not necessarily normalized (due to "
-"scaling). Almost always used as an orthogonal basis for a [Transform].\n"
-"For such use, it is composed of a scaling and a rotation matrix, in that "
-"order (M = R.S)."
-msgstr ""
+"3×3 matrix used for 3D rotation and scale. Almost always used as an "
+"orthogonal basis for a Transform.\n"
+"Contains 3 vector fields X, Y and Z as its columns, which are typically "
+"interpreted as the local basis vectors of a transformation. For such use, it "
+"is composed of a scaling and a rotation matrix, in that order (M = R.S).\n"
+"Can also be accessed as array of 3D vectors. These vectors are normally "
+"orthogonal to each other, but are not necessarily normalized (due to "
+"scaling).\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
+msgstr ""
+"Matriz de 3×3 usada para la rotación y la escala 3D. Contiene 3 campos "
+"vectoriales X, Y y Z como sus columnas, que pueden ser interpretados como "
+"los vectores base locales de una transformación. También se puede acceder "
+"como matriz de vectores 3D. Estos vectores son ortogonales entre sí, pero no "
+"están necesariamente normalizados (debido a la escala). Casi siempre se "
+"utilizan como base ortogonal de una [Transform].\n"
+"Para tal uso, se compone de una matriz de escalamiento y una matriz de "
+"rotación, en ese orden (M = R.S)."
+
+#: doc/classes/Basis.xml:13 doc/classes/Transform.xml:12
+#: doc/classes/Transform2D.xml:11
+#, fuzzy
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/math/"
+"matrices_and_transforms.html"
+msgstr "https://docs.godotengine.org/es/latest/tutorials/2d/2d_transforms.html"
-#: doc/classes/Basis.xml:11 doc/classes/Transform.xml:11
+#: doc/classes/Basis.xml:14 doc/classes/Transform.xml:13
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/using_transforms.html"
msgstr ""
+"https://docs.godotengine.org/es/latest/tutorials/3d/using_transforms.html"
-#: doc/classes/Basis.xml:20
-msgid "Create a rotation matrix from the given quaternion."
-msgstr ""
+#: doc/classes/Basis.xml:23
+#, fuzzy
+msgid "Constructs a pure rotation basis matrix from the given quaternion."
+msgstr "Crear una matriz de rotación a partir del cuaternario dado."
-#: doc/classes/Basis.xml:29
+#: doc/classes/Basis.xml:32
+#, fuzzy
msgid ""
-"Create a rotation matrix (in the YXZ convention: first Z, then X, and Y "
-"last) from the specified Euler angles, given in the vector format as (X "
-"angle, Y angle, Z angle)."
+"Constructs a pure rotation basis matrix from the given Euler angles (in the "
+"YXZ convention: when *composing*, first Y, then X, and Z last), given in the "
+"vector format as (X angle, Y angle, Z angle).\n"
+"Consider using the [Quat] constructor instead, which uses a quaternion "
+"instead of Euler angles."
msgstr ""
+"Devuelve la rotación de la base en forma de ángulos de Euler (en la "
+"convención YXZ: primero Z, luego X, y por último Y). El vector devuelto "
+"contiene los ángulos de rotación en el formato (ángulo X, ángulo Y, ángulo "
+"Z). Ver [method get_rotation_quat] si necesitas un cuaternario en su lugar."
-#: doc/classes/Basis.xml:40
+#: doc/classes/Basis.xml:44
+#, fuzzy
msgid ""
-"Create a rotation matrix which rotates around the given axis by the "
-"specified angle, in radians. The axis must be a normalized vector."
+"Constructs a pure rotation basis matrix, rotated around the given "
+"[code]axis[/code] by [code]phi[/code], in radians. The axis must be a "
+"normalized vector."
msgstr ""
+"Crea una matriz de rotación que gira alrededor del eje dado por el ángulo "
+"especificado, en radianes. El eje debe ser un vector normalizado."
-#: doc/classes/Basis.xml:53
-msgid "Create a matrix from 3 axis vectors."
-msgstr ""
+#: doc/classes/Basis.xml:57
+#, fuzzy
+msgid "Constructs a basis matrix from 3 axis vectors (matrix columns)."
+msgstr "Crear una matriz a partir de 3 vectores de ejes."
-#: doc/classes/Basis.xml:60
-msgid "Returns the determinant of the matrix."
+#: doc/classes/Basis.xml:64
+msgid ""
+"Returns the determinant of the basis matrix. If the basis is uniformly "
+"scaled, its determinant is the square of the scale.\n"
+"A negative determinant means the basis has a negative scale. A zero "
+"determinant means the basis isn't invertible, and is usually considered "
+"invalid."
msgstr ""
-#: doc/classes/Basis.xml:67
+#: doc/classes/Basis.xml:72
+#, fuzzy
msgid ""
"Returns the basis's rotation in the form of Euler angles (in the YXZ "
-"convention: first Z, then X, and Y last). The returned vector contains the "
-"rotation angles in the format (X angle, Y angle, Z angle). See [method "
-"get_rotation_quat] if you need a quaternion instead."
+"convention: when decomposing, first Z, then X, and Y last). The returned "
+"vector contains the rotation angles in the format (X angle, Y angle, Z "
+"angle).\n"
+"Consider using the [method get_rotation_quat] method instead, which returns "
+"a [Quat] quaternion instead of Euler angles."
msgstr ""
+"Devuelve la rotación de la base en forma de ángulos de Euler (en la "
+"convención YXZ: primero Z, luego X, y por último Y). El vector devuelto "
+"contiene los ángulos de rotación en el formato (ángulo X, ángulo Y, ángulo "
+"Z). Ver [method get_rotation_quat] si necesitas un cuaternario en su lugar."
-#: doc/classes/Basis.xml:74
+#: doc/classes/Basis.xml:80
+#, fuzzy
msgid ""
"This function considers a discretization of rotations into 24 points on unit "
"sphere, lying along the vectors (x,y,z) with each component being either -1, "
"0, or 1, and returns the index of the point best representing the "
-"orientation of the object. It is mainly used by the grid map editor. For "
+"orientation of the object. It is mainly used by the [GridMap] editor. For "
"further details, refer to the Godot source code."
msgstr ""
+"Esta función considera una discretización de las rotaciones en 24 puntos de "
+"la unidad de la esfera, situados a lo largo de los vectores (x,y,z), siendo "
+"cada componente -1, 0, o 1, y devuelve el índice del punto que mejor "
+"representa la orientación del objeto. Es utilizado principalmente por el "
+"editor de mapas de cuadrículas. Para más detalles, consulte el código fuente "
+"de Godot."
-#: doc/classes/Basis.xml:81
+#: doc/classes/Basis.xml:87
msgid ""
"Returns the basis's rotation in the form of a quaternion. See [method "
"get_euler] if you need Euler angles, but keep in mind quaternions should "
"generally be preferred to Euler angles."
msgstr ""
+"Devuelve la rotación de la base en forma de cuaternario. Véase [method "
+"get_euler] si necesita ángulos de Euler, pero tenga en cuenta que las "
+"cuaterniones generalmente deben ser preferidas a los ángulos de Euler."
-#: doc/classes/Basis.xml:88
+#: doc/classes/Basis.xml:94
msgid ""
"Assuming that the matrix is the combination of a rotation and scaling, "
"return the absolute value of scaling factors along each axis."
msgstr ""
+"Asumiendo que la matriz es la combinación de una rotación y un escalado, "
+"devuelve el valor absoluto de los factores de escala a lo largo de cada eje."
-#: doc/classes/Basis.xml:95 doc/classes/Transform2D.xml:49
+#: doc/classes/Basis.xml:101
msgid "Returns the inverse of the matrix."
-msgstr ""
+msgstr "Devuelve el inverso de la matriz."
-#: doc/classes/Basis.xml:106
+#: doc/classes/Basis.xml:112
msgid ""
"Returns [code]true[/code] if this basis and [code]b[/code] are approximately "
"equal, by calling [code]is_equal_approx[/code] on each component."
msgstr ""
+"Devuelve [code]true[/code] si esta base y [code]b[/code] son aproximadamente "
+"iguales, llamando a [code]is_equal_approx[/code] en cada componente."
-#: doc/classes/Basis.xml:113
+#: doc/classes/Basis.xml:119
msgid ""
"Returns the orthonormalized version of the matrix (useful to call from time "
"to time to avoid rounding error for orthogonal matrices). This performs a "
"Gram-Schmidt orthonormalization on the basis of the matrix."
msgstr ""
+"Devuelve la versión ortonormalizada de la matriz (útil para llamar de vez en "
+"cuando para evitar el error de redondeo de las matrices ortogonales). "
+"Realiza una ortonormalización de Gram-Schmidt sobre la base de la matriz."
-#: doc/classes/Basis.xml:124
+#: doc/classes/Basis.xml:130
msgid ""
"Introduce an additional rotation around the given axis by phi (radians). The "
"axis must be a normalized vector."
msgstr ""
+"Introducir una rotación adicional alrededor del eje dado por phi (radianes). "
+"El eje debe ser un vector normalizado."
-#: doc/classes/Basis.xml:133
+#: doc/classes/Basis.xml:139
msgid ""
"Introduce an additional scaling specified by the given 3D scaling factor."
msgstr ""
+"Introducir una escalado adicional especificada por el factor de escala 3D "
+"dado."
-#: doc/classes/Basis.xml:144
+#: doc/classes/Basis.xml:150
msgid ""
"Assuming that the matrix is a proper rotation matrix, slerp performs a "
"spherical-linear interpolation with another rotation matrix."
msgstr ""
+"Asumiendo que la matriz es una matriz de rotación adecuada, slerp realiza "
+"una interpolación esférica-lineal con otra matriz de rotación."
-#: doc/classes/Basis.xml:153
+#: doc/classes/Basis.xml:159
msgid "Transposed dot product with the X axis of the matrix."
-msgstr ""
+msgstr "Producto vectorial transpuesto con el eje X de la matriz."
-#: doc/classes/Basis.xml:162
+#: doc/classes/Basis.xml:168
msgid "Transposed dot product with the Y axis of the matrix."
-msgstr ""
+msgstr "Producto vectorial transpuesto con el eje Y de la matriz."
-#: doc/classes/Basis.xml:171
+#: doc/classes/Basis.xml:177
msgid "Transposed dot product with the Z axis of the matrix."
-msgstr ""
+msgstr "Producto vectorial transpuesto con el eje Z de la matriz."
-#: doc/classes/Basis.xml:178
+#: doc/classes/Basis.xml:184
msgid "Returns the transposed version of the matrix."
-msgstr ""
+msgstr "Devuelve la versión transpuesta de la matriz."
-#: doc/classes/Basis.xml:187
+#: doc/classes/Basis.xml:193
msgid "Returns a vector transformed (multiplied) by the matrix."
-msgstr ""
+msgstr "Devuelve un vector transformado (multiplicado) por la matriz."
-#: doc/classes/Basis.xml:196
+#: doc/classes/Basis.xml:202
+#, fuzzy
msgid ""
-"Returns a vector transformed (multiplied) by the transposed matrix.\n"
+"Returns a vector transformed (multiplied) by the transposed basis matrix.\n"
"[b]Note:[/b] This results in a multiplication by the inverse of the matrix "
"only if it represents a rotation-reflection."
msgstr ""
+"Devuelve un vector transformado (multiplicado) por la matriz transpuesta.\n"
+"[b]Nota:[/b] Esto da como resultado una multiplicación por el inverso de la "
+"matriz sólo si representa una rotación-reflexión."
-#: doc/classes/Basis.xml:203
-msgid "The basis matrix's X vector."
+#: doc/classes/Basis.xml:209 doc/classes/Transform2D.xml:181
+msgid ""
+"The basis matrix's X vector (column 0). Equivalent to array index [code]0[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:206
-msgid "The basis matrix's Y vector."
+#: doc/classes/Basis.xml:212 doc/classes/Transform2D.xml:184
+msgid ""
+"The basis matrix's Y vector (column 1). Equivalent to array index [code]1[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:209
-msgid "The basis matrix's Z vector."
+#: doc/classes/Basis.xml:215
+msgid ""
+"The basis matrix's Z vector (column 2). Equivalent to array index [code]2[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:214
+#: doc/classes/Basis.xml:220
+#, fuzzy
msgid ""
-"The identity basis. This is identical to calling [code]Basis()[/code] "
-"without any parameters. This constant can be used to make your code clearer."
+"The identity basis, with no rotation or scaling applied.\n"
+"This is identical to calling [code]Basis()[/code] without any parameters. "
+"This constant can be used to make your code clearer, and for consistency "
+"with C#."
msgstr ""
+"La base de la identidad. Es idéntico a llamar a [code]Basis()[/code] sin "
+"ningún parámetro. Esta constante puede ser usada para hacer su código más "
+"claro."
-#: doc/classes/Basis.xml:217
+#: doc/classes/Basis.xml:224
msgid ""
"The basis that will flip something along the X axis when used in a "
"transformation."
msgstr ""
+"La base que volteará algo a lo largo del eje X cuando se use en una "
+"transformación."
-#: doc/classes/Basis.xml:220
+#: doc/classes/Basis.xml:227
msgid ""
"The basis that will flip something along the Y axis when used in a "
"transformation."
msgstr ""
+"La base que volteará algo a lo largo del eje Y cuando se use en una "
+"transformación."
-#: doc/classes/Basis.xml:223
+#: doc/classes/Basis.xml:230
msgid ""
"The basis that will flip something along the Z axis when used in a "
"transformation."
msgstr ""
+"La base que volteará algo a lo largo del eje Z cuando se use en una "
+"transformación."
#: doc/classes/BitMap.xml:4
msgid "Boolean matrix."
-msgstr ""
+msgstr "Matriz booleana."
#: doc/classes/BitMap.xml:7
msgid ""
@@ -12167,11 +12642,16 @@ msgid ""
"a binary matrix (every matrix element takes only one bit) and query the "
"values using natural cartesian coordinates."
msgstr ""
+"Una matriz bidimensional de valores booleanos, puede ser usada para "
+"almacenar eficientemente una matriz binaria (cada elemento de la matriz toma "
+"sólo un bit) y consultar los valores usando coordenadas cartesianas "
+"naturales."
#: doc/classes/BitMap.xml:18
msgid ""
"Creates a bitmap with the specified size, filled with [code]false[/code]."
msgstr ""
+"Crea un mapa de bits con el tamaño especificado, lleno de [code]false[/code]."
#: doc/classes/BitMap.xml:29
msgid ""
@@ -12180,28 +12660,37 @@ msgid ""
"that position is equal to [code]threshold[/code] or less, and [code]true[/"
"code] in other case."
msgstr ""
+"Crea un mapa de bits que coincide con las dimensiones de la imagen dada, "
+"cada elemento del mapa de bits se establece en [code]false[/code] si el "
+"valor alfa de la imagen en esa posición es igual al umbral [code]threshold[/"
+"code] o menor, y [code]true[/code] en otro caso."
#: doc/classes/BitMap.xml:38
msgid "Returns bitmap's value at the specified position."
-msgstr ""
+msgstr "Devuelve el valor del mapa de bits en la posición especificada."
#: doc/classes/BitMap.xml:45
msgid "Returns bitmap's dimensions."
-msgstr ""
+msgstr "Devuelve las dimensiones del mapa de bits."
#: doc/classes/BitMap.xml:52
msgid ""
"Returns the amount of bitmap elements that are set to [code]true[/code]."
msgstr ""
+"Devuelve la cantidad de elementos de mapa de bits que están configurados a "
+"[code]true[/code]."
#: doc/classes/BitMap.xml:83
msgid ""
"Sets the bitmap's element at the specified position, to the specified value."
msgstr ""
+"Establece el elemento del mapa de bits en la posición especificada, al valor "
+"especificado."
#: doc/classes/BitMap.xml:94
msgid "Sets a rectangular portion of the bitmap to the specified value."
msgstr ""
+"Establece una porción rectangular del mapa de bits al valor especificado."
#: doc/classes/BitmapFont.xml:4
msgid ""
@@ -12209,6 +12698,9 @@ msgid ""
"bmfont/]BMFont[/url] format.\n"
"Handles files with the [code].fnt[/code] extension."
msgstr ""
+"Renderiza el texto usando fuentes en el formato [url=https://www.angelcode."
+"com/products/bmfont/]BMFont[/url].\n"
+"Maneja archivos con la extensión [code].fnt[/code]."
#: doc/classes/BitmapFont.xml:8
msgid ""
@@ -12216,6 +12708,9 @@ msgid ""
"Supports distance fields. For using vector font files like TTF directly, see "
"[DynamicFont]."
msgstr ""
+"Presenta el texto usando fuentes [code]*.fnt[/code] que contienen atlas de "
+"texturas. Soporta campos de distancia. Para usar directamente archivos de "
+"fuentes vectoriales como TTF, ver [DynamicFont]."
#: doc/classes/BitmapFont.xml:27
msgid ""
@@ -12225,57 +12720,70 @@ msgid ""
"alignment for the character and [code]advance[/code] is the (optional) "
"advance."
msgstr ""
+"Añade un carácter a la fuente, donde [code]character[/code] es el valor "
+"Unicode, [code]texture[/code] es el índice de la textura, [code]rect[/code] "
+"es la región de la textura (¡en píxeles!), [code]align[/code] es la "
+"alineación (opcional) del carácter y [code]advance[/code] es el avance "
+"(opcional)."
#: doc/classes/BitmapFont.xml:40
msgid ""
"Adds a kerning pair to the [BitmapFont] as a difference. Kerning pairs are "
"special cases where a typeface advance is determined by the next character."
msgstr ""
+"Añade un par de kerning a la [BitmapFont] como diferencia. Los pares de "
+"Kerning son casos especiales en los que el avance de un tipo de letra viene "
+"determinado por el siguiente carácter."
#: doc/classes/BitmapFont.xml:49
msgid "Adds a texture to the [BitmapFont]."
-msgstr ""
+msgstr "Añade una textura al [BitmapFont]."
#: doc/classes/BitmapFont.xml:56
msgid "Clears all the font data and settings."
-msgstr ""
+msgstr "Borra todos los datos y ajustes de la fuente."
#: doc/classes/BitmapFont.xml:65
msgid ""
"Creates a BitmapFont from the [code]*.fnt[/code] file at [code]path[/code]."
msgstr ""
+"Crea una fuente de mapa de bits a partir del archivo [code]*.fnt[/code] en "
+"[code]path[/code]."
#: doc/classes/BitmapFont.xml:76
msgid "Returns a kerning pair as a difference."
-msgstr ""
+msgstr "Devuelve un par de kerning como diferencia."
#: doc/classes/BitmapFont.xml:85
msgid "Returns the font atlas texture at index [code]idx[/code]."
msgstr ""
+"Devuelve la textura de la fuente del atlas en el índice [code]idx[/code]."
#: doc/classes/BitmapFont.xml:92
msgid "Returns the number of textures in the BitmapFont atlas."
-msgstr ""
+msgstr "Devuelve el número de texturas en el atlas de BitmapFont."
#: doc/classes/BitmapFont.xml:98
msgid "Ascent (number of pixels above the baseline)."
-msgstr ""
+msgstr "Ascenso (número de píxeles por encima de la línea de base)."
#: doc/classes/BitmapFont.xml:101
msgid "If [code]true[/code], distance field hint is enabled."
msgstr ""
+"Si [code]true[/code], la sugerencia de campo de distancia está activada."
#: doc/classes/BitmapFont.xml:104
msgid "The fallback font."
-msgstr ""
+msgstr "La fuente alternativa."
#: doc/classes/BitmapFont.xml:107
msgid "Total font height (ascent plus descent) in pixels."
-msgstr ""
+msgstr "Altura total de la fuente (ascenso más descenso) en píxeles."
#: doc/classes/Bone2D.xml:4
msgid "Joint used with [Skeleton2D] to control and animate other nodes."
msgstr ""
+"Articulación usada con [Skeleton2D] para controlar y animar otros nodos."
#: doc/classes/Bone2D.xml:7
msgid ""
@@ -12289,36 +12797,54 @@ msgid ""
"menu option, from the code, you need to iterate over the bones to set their "
"individual rest poses."
msgstr ""
+"Usar una jerarquía de [code]Bone2D[/code] unido a un [Skeleton2D] para "
+"controlar, y animar otros nodos [Node2D].\n"
+"Puedes usar [code]Bone2D[/code] y [code]Skeleton2D[/code] nodos para animar "
+"mallas 2D creadas con el editor UV de Polygon 2D.\n"
+"Cada hueso tiene una transformación [member rest] a la que puedes volver con "
+"[method apply_rest]. Estas poses de reposo son relativas al padre del "
+"hueso.\n"
+"Si en el editor puedes establecer la pose de reposo de un esqueleto entero "
+"usando una opción del menú, desde el código, necesitas iterar sobre los "
+"huesos para establecer sus poses de reposo individuales."
#: doc/classes/Bone2D.xml:19
msgid "Stores the node's current transforms in [member rest]."
-msgstr ""
+msgstr "Almacena las transformaciones del nodo actual en [member rest]."
#: doc/classes/Bone2D.xml:26
msgid ""
"Returns the node's index as part of the entire skeleton. See [Skeleton2D]."
msgstr ""
+"Devuelve el índice del nodo como parte de todo el esqueleto. Ver "
+"[Skeleton2D]."
#: doc/classes/Bone2D.xml:33
msgid ""
"Returns the node's [member rest] [code]Transform2D[/code] if it doesn't have "
"a parent, or its rest pose relative to its parent."
msgstr ""
+"Devuelve el [member rest] [code]Transform2D[/code] del nodo si no tiene un "
+"padre, o su pose de reposo en relación con su padre."
#: doc/classes/Bone2D.xml:39
msgid ""
"Length of the bone's representation drawn in the editor's viewport in pixels."
msgstr ""
+"La longitud de la representación del hueso dibujada en la vista del editor "
+"en píxeles."
#: doc/classes/Bone2D.xml:42
msgid ""
"Rest transform of the bone. You can reset the node's transforms to this "
"value using [method apply_rest]."
msgstr ""
+"La transformación en reposo del hueso. Puedes reajustar las transformaciones "
+"del nodo a este valor usando [method apply_rest]."
#: doc/classes/BoneAttachment3D.xml:4
msgid "A node that will attach to a bone."
-msgstr ""
+msgstr "Un nodo que se unirá a un hueso."
#: doc/classes/BoneAttachment3D.xml:7
msgid ""
@@ -12326,14 +12852,17 @@ msgid ""
"bone for this node to attach to. The BoneAttachment3D node will copy the "
"transform of the selected bone."
msgstr ""
+"Este nodo debe ser hijo de un nodo [Skeleton3D]. Entonces puedes seleccionar "
+"un hueso para este nodo para que se una a él. El nodo BoneAttachment3D "
+"copiará la transformación del hueso seleccionado."
#: doc/classes/BoneAttachment3D.xml:15
msgid "The name of the attached bone."
-msgstr ""
+msgstr "El nombre del hueso unido."
#: doc/classes/bool.xml:4
msgid "Boolean built-in type."
-msgstr ""
+msgstr "Tipo booleano incorporado."
#: doc/classes/bool.xml:7
msgid ""
@@ -12384,6 +12913,53 @@ msgid ""
" can_shoot = true\n"
"[/codeblock]"
msgstr ""
+"El booleano es un tipo incorporado. Hay dos valores booleanos: [code]true[/"
+"code] y [code]false[/code]. Puedes pensar en ello como un interruptor con un "
+"ajuste de encendido o apagado (1 o 0). Los valores booleanos se usan en la "
+"programación de la lógica de las declaraciones de condición, como las "
+"declaraciones [code]if[/code].\n"
+"Los booleanos se pueden utilizar directamente en las sentencias [code]if[/"
+"code]. El código que se muestra a continuación lo demuestra en la línea "
+"[code]if puede_disparar:[/code]. No es necesario usar [code]== true[/code], "
+"sólo necesitas [code]if puede_disparar:[/code]. De manera similar, usa "
+"[code]if not puede_dispara:[/code] en lugar de [code]== false[/code].\n"
+"[codeblock]\n"
+"var puede_disparar = true\n"
+"\n"
+"func dispara():\n"
+" si puede disparar:\n"
+" pass # Realizar acciones de disparo aquí.\n"
+"[/codeblock]\n"
+"El siguiente código sólo creará una bala si se cumplen ambas condiciones: se "
+"pulsa la acción \"disparar\" y si [code]puede_disparar[/code] es [code]true[/"
+"code].\n"
+"[b]Nota:[/b] [code]Input.is_action_pressed(\"disparar\")[/code] es también "
+"un booleano que es [code]true[/code] cuando se pulsa \"disparar\" y "
+"[code]false[/code] cuando no se pulsa \"disparar\".\n"
+"[codeblock]\n"
+"var puede_disparar = true\n"
+"\n"
+"func shoot():\n"
+" if puede disparar and Input.is_action_pressed(\"dispara\"):\n"
+" crear_bala()\n"
+"[/codebloque]\n"
+"El siguiente código pondrá [code]puede_disparar[/code] en [code]false[/code] "
+"e iniciará un temporizador. Esto evitará que el jugador dispare hasta que el "
+"temporizador se agote. El siguiente [code]puede_disparar[/code] se ajustará "
+"a [code]true[/code] de nuevo permitiendo al jugador disparar una vez más.\n"
+"[codeblock]\n"
+"var puede_disparar = true\n"
+"onready var enfriado = $CoolDownTimer\n"
+"\n"
+"func disparar():\n"
+" if puede_disparar y Input.is_action_pressed(\"dispara\"):\n"
+" crear_bala()\n"
+" puede_disparar = false\n"
+" enfriado.start()\n"
+"\n"
+"func _on_CoolDownTimer_timeout():\n"
+" puede_disparar = true\n"
+"[/codebloque]"
#: doc/classes/bool.xml:49
msgid ""
@@ -12391,6 +12967,9 @@ msgid ""
"code] if [code]0[/code] is passed in, and [code]true[/code] for all other "
"ints."
msgstr ""
+"Convierte un valor [int] a un valor booleano, este método devolverá "
+"[code]false[/code] si se pasa [code]0[/code], y [code]true[/code] para todos "
+"los demás valores enteros."
#: doc/classes/bool.xml:58
msgid ""
@@ -12398,6 +12977,9 @@ msgid ""
"[code]false[/code] if [code]0.0[/code] is passed in, and [code]true[/code] "
"for all other floats."
msgstr ""
+"Convierte un [float] a un valor booleano, este método devolverá [code]false[/"
+"code] si se pasa [code]0.0[/code], y [code]true[/code] para todos los demás "
+"números reales."
#: doc/classes/bool.xml:67
msgid ""
@@ -12407,16 +12989,23 @@ msgid ""
"Examples: [code]bool(\"False\")[/code] returns [code]true[/code], "
"[code]bool(\"\")[/code] returns [code]false[/code]."
msgstr ""
+"Convierte un valor [String] a un valor booleano, este método devolverá "
+"[code]false[/code] si se pasa [code]\"[/code], y [code]true[/code] para "
+"todas las cadenas no vacías.\n"
+"Ejemplos: [code]bool(\" False\")[/code] devuelve [code]true[/code], "
+"[code]bool(\"\")[/code] devuelve [code]false[/code]."
#: doc/classes/BoxContainer.xml:4
msgid "Base class for box containers."
-msgstr ""
+msgstr "Clase de base para contenedores de caja."
#: doc/classes/BoxContainer.xml:7
msgid ""
"Arranges child [Control] nodes vertically or horizontally, and rearranges "
"them automatically when their minimum size changes."
msgstr ""
+"Dispone los nodos infantiles [Control] vertical u horizontalmente, y los "
+"reordena automáticamente cuando cambia su tamaño mínimo."
#: doc/classes/BoxContainer.xml:18
msgid ""
@@ -12424,143 +13013,177 @@ msgid ""
"[code]true[/code], it will insert the [Control] node in front of all other "
"children."
msgstr ""
+"Añade un nodo [Control] a la caja como espaciador. Si [code]begin[/code] es "
+"[code]true[/code], insertará el nodo [Control] delante de todos los demás "
+"niños."
#: doc/classes/BoxContainer.xml:24
msgid ""
"The alignment of the container's children (must be one of [constant "
"ALIGN_BEGIN], [constant ALIGN_CENTER], or [constant ALIGN_END])."
msgstr ""
+"La alineación de los hijos del contenedor (debe ser una de [constant "
+"ALIGN_BEGIN], [constant ALIGN_CENTER], o [constant ALIGN_END])."
#: doc/classes/BoxContainer.xml:29
msgid "Aligns children with the beginning of the container."
-msgstr ""
+msgstr "Alinea a los niños con el principio del contenedor."
#: doc/classes/BoxContainer.xml:32
msgid "Aligns children with the center of the container."
-msgstr ""
+msgstr "Alinea a los niños con el centro del contenedor."
#: doc/classes/BoxContainer.xml:35
msgid "Aligns children with the end of the container."
-msgstr ""
+msgstr "Alinea a los niños con el final del contenedor."
#: doc/classes/BoxShape3D.xml:4
msgid "Box shape resource."
-msgstr ""
+msgstr "Recurso en forma de caja."
#: doc/classes/BoxShape3D.xml:7
msgid "3D box shape that can be a child of a [PhysicsBody3D] or [Area3D]."
msgstr ""
+"Forma de caja 3D que puede ser un hijo de un [PhysicsBody3D] o [Area3D]."
#: doc/classes/BoxShape3D.xml:15
msgid ""
"The box's half extents. The width, height and depth of this shape is twice "
"the half extents."
msgstr ""
+"La caja es la mitad de la extensión. El ancho, la altura y la profundidad de "
+"esta forma es el doble de la mitad de la extensión."
#: doc/classes/Button.xml:4
msgid "Standard themed Button."
-msgstr ""
+msgstr "Botón temático estándar."
#: doc/classes/Button.xml:7
msgid ""
"Button is the standard themed button. It can contain text and an icon, and "
-"will display them according to the current [Theme]."
+"will display them according to the current [Theme].\n"
+"[b]Example of creating a button and assigning an action when pressed by code:"
+"[/b]\n"
+"[codeblock]\n"
+"func _ready():\n"
+" var button = Button.new()\n"
+" button.text = \"Click me\"\n"
+" button.connect(\"pressed\", self, \"_button_pressed\")\n"
+" add_child(button)\n"
+"\n"
+"func _button_pressed():\n"
+" print(\"Hello world!\")\n"
+"[/codeblock]\n"
+"Buttons (like all Control nodes) can also be created in the editor, but some "
+"situations may require creating them from code."
msgstr ""
-#: doc/classes/Button.xml:15
+#: doc/classes/Button.xml:27
msgid ""
"Text alignment policy for the button's text, use one of the [enum TextAlign] "
"constants."
msgstr ""
+"Política de alineación de texto para el texto del botón, usa una de las "
+"constantes [enum TextAlign]."
-#: doc/classes/Button.xml:18
+#: doc/classes/Button.xml:30
msgid ""
"When this property is enabled, text that is too large to fit the button is "
"clipped, when disabled the Button will always be wide enough to hold the "
"text."
msgstr ""
+"Cuando esta propiedad está activada, el texto que es demasiado grande para "
+"caber en el botón se recorta, cuando está desactivada el botón siempre será "
+"lo suficientemente ancho para contener el texto."
-#: doc/classes/Button.xml:21
+#: doc/classes/Button.xml:33
msgid ""
"When enabled, the button's icon will expand/shrink to fit the button's size "
"while keeping its aspect."
msgstr ""
+"Cuando se habilita, el icono del botón se expandirá o encogerá para "
+"adaptarse al tamaño del botón, manteniendo su aspecto."
-#: doc/classes/Button.xml:24
+#: doc/classes/Button.xml:36
msgid "Flat buttons don't display decoration."
-msgstr ""
+msgstr "Los botones planos no muestran decoración."
-#: doc/classes/Button.xml:27
+#: doc/classes/Button.xml:39
msgid ""
"Button's icon, if text is present the icon will be placed before the text."
msgstr ""
+"Icono del botón, si el texto está presente el icono se colocará antes del "
+"texto."
-#: doc/classes/Button.xml:30 doc/classes/LinkButton.xml:18
+#: doc/classes/Button.xml:42 doc/classes/LinkButton.xml:18
msgid "The button's text that will be displayed inside the button's area."
-msgstr ""
+msgstr "El texto del botón que se mostrará dentro del área del botón."
-#: doc/classes/Button.xml:35
+#: doc/classes/Button.xml:47
msgid "Align the text to the left."
-msgstr ""
+msgstr "Alinea el texto a la izquierda."
-#: doc/classes/Button.xml:38
+#: doc/classes/Button.xml:50
msgid "Align the text to the center."
-msgstr ""
+msgstr "Alinea el texto con el centro."
-#: doc/classes/Button.xml:41
+#: doc/classes/Button.xml:53
msgid "Align the text to the right."
-msgstr ""
+msgstr "Alinea el texto a la derecha."
-#: doc/classes/Button.xml:46
+#: doc/classes/Button.xml:58
msgid "[StyleBox] used when the [Button] is disabled."
-msgstr ""
+msgstr "[StyleBox] usado cuando el [Button] está desactivado."
-#: doc/classes/Button.xml:49
+#: doc/classes/Button.xml:61
msgid ""
"[StyleBox] used when the [Button] is focused. It is displayed over the "
"current [StyleBox], so using [StyleBoxEmpty] will just disable the focus "
"visual effect."
msgstr ""
+"[StyleBox] que se usa cuando el [Button] está enfocado. Se muestra sobre el "
+"[StyleBox] actual, por lo que al usar [StyleBoxEmpty] sólo desactivará el "
+"efecto visual de enfoque."
-#: doc/classes/Button.xml:52
+#: doc/classes/Button.xml:64
msgid "[Font] of the [Button]'s text."
-msgstr ""
+msgstr "[Font] del texto del [Button]."
-#: doc/classes/Button.xml:55
+#: doc/classes/Button.xml:67
msgid "Default text [Color] of the [Button]."
-msgstr ""
+msgstr "[Color] del texto predeterminado del [Button]."
-#: doc/classes/Button.xml:58
+#: doc/classes/Button.xml:70
msgid "Text [Color] used when the [Button] is disabled."
-msgstr ""
+msgstr "[Color] del texto utilizado cuando el [Button] está desactivado."
-#: doc/classes/Button.xml:61
+#: doc/classes/Button.xml:73
msgid "Text [Color] used when the [Button] is being hovered."
-msgstr ""
+msgstr "[Color] del texto usado cuando el [Button] tiene encima el cursor."
-#: doc/classes/Button.xml:64
+#: doc/classes/Button.xml:76
msgid "Text [Color] used when the [Button] is being pressed."
-msgstr ""
+msgstr "[Color] del texto utilizado cuando se pulsa el [Button]."
-#: doc/classes/Button.xml:67
+#: doc/classes/Button.xml:79
msgid "[StyleBox] used when the [Button] is being hovered."
-msgstr ""
+msgstr "[StyleBox] que se usa cuando el [Button] tiene encima el cursor."
-#: doc/classes/Button.xml:70
+#: doc/classes/Button.xml:82
msgid "The horizontal space between [Button]'s icon and text."
-msgstr ""
+msgstr "El espacio horizontal entre el icono y el texto de [Button]."
-#: doc/classes/Button.xml:73
+#: doc/classes/Button.xml:85
msgid "Default [StyleBox] for the [Button]."
-msgstr ""
+msgstr "[StyleBox] por defecto para el [Button]."
-#: doc/classes/Button.xml:76
+#: doc/classes/Button.xml:88
msgid "[StyleBox] used when the [Button] is being pressed."
-msgstr ""
+msgstr "[StyleBox] que se usa cuando se presiona el [Button]."
#: doc/classes/ButtonGroup.xml:4
msgid "Group of Buttons."
-msgstr ""
+msgstr "Grupo de Botones."
#: doc/classes/ButtonGroup.xml:7
msgid ""
@@ -12568,20 +13191,27 @@ msgid ""
"Only one allows being pressed.\n"
"[member BaseButton.toggle_mode] should be [code]true[/code]."
msgstr ""
+"Grupo de [Button]. Todos los botones hijos directos e indirectos se "
+"convierten en radios. Sólo se permite a uno estar seleccionado.\n"
+"[member BaseButton.toggle_mode] debe ser [code]true[/code]."
#: doc/classes/ButtonGroup.xml:17
msgid ""
"Returns an [Array] of [Button]s who have this as their [ButtonGroup] (see "
"[member BaseButton.group])."
msgstr ""
+"Devuelve una [Array] de [Button] que tiene esto como su [ButtonGroup] (ver "
+"[member BaseButton.group])."
#: doc/classes/ButtonGroup.xml:24
msgid "Returns the current pressed button."
-msgstr ""
+msgstr "Devuelve el botón pulsado."
#: doc/classes/Callable.xml:4
msgid "An object representing a method in a certain object that can be called."
msgstr ""
+"Un objeto que representa un método en un determinado objeto que puede ser "
+"llamado."
#: doc/classes/Callable.xml:7
msgid ""
@@ -12601,18 +13231,37 @@ msgid ""
"arguments.\n"
"[/codeblock]"
msgstr ""
+"[Callabl] es un objeto de primera clase que puede ser mantenido en variables "
+"y pasado a funciones. Representa un método dado en un [Objecto], y es "
+"típicamente usado para señalar llamadas.\n"
+"[b]Ejemplo:[/b]\n"
+"[codeblock]\n"
+"var llamable = Callable(self, \"imprimir_argumentos\")\n"
+"func imprimir_argumentos(arg1, arg2, arg3 = \"\"):\n"
+" prints(arg1, arg2, arg3)\n"
+"func test():\n"
+" llamable.call(\"hola\", \"mundo\") # Imprime \"hola mundo\".\n"
+" llamable.call(Vector2.UP, 42, callable) # Imprime \"(0, -1) 42 Node(Node."
+"gd)::imprimir_argumentos\".\n"
+" llamable.call(\"invalid\") # Llamada inválida, debe tener al menos 2 "
+"argumentos.\n"
+"[/codeblock]"
#: doc/classes/Callable.xml:30
msgid ""
"Creates a new [Callable] for the method called [code]method_name[/code] in "
"the specified [code]object[/code]."
msgstr ""
+"Crea un nuevo [Callable] para el método llamado [code]method_name[/code] en "
+"el [code]object[/code] especificado."
#: doc/classes/Callable.xml:37
msgid ""
"Calls the method represented by this [Callable]. Arguments can be passed and "
"should match the method's signature."
msgstr ""
+"Llama al método representado por este [Callable]. Los argumentos pueden ser "
+"pasados y deben coincidir con los indicados por el método."
#: doc/classes/Callable.xml:44
msgid ""
@@ -12620,24 +13269,29 @@ msgid ""
"during the idle frame. Arguments can be passed and should match the method's "
"signature."
msgstr ""
+"Llama al método representado por este [Callable] en modo diferido, es decir, "
+"durante los fotogramas de inactividad. Los argumentos pueden ser pasados y "
+"deben coincidir con los indicados por el método."
#: doc/classes/Callable.xml:51
msgid "Returns the name of the method represented by this [Callable]."
-msgstr ""
+msgstr "Devuelve el nombre del método representado por este [Callable]."
#: doc/classes/Callable.xml:58
msgid "Returns the object on which this [Callable] is called."
-msgstr ""
+msgstr "Devuelve el objeto sobre el que se llama este [Callable]."
#: doc/classes/Callable.xml:65
msgid ""
"Returns the ID of this [Callable]'s object (see [method Object."
"get_instance_id])."
msgstr ""
+"Devuelve el ID del objeto de este [Callable] (ver [method Object."
+"get_instance_id])."
#: doc/classes/Camera2D.xml:4
msgid "Camera node for 2D scenes."
-msgstr ""
+msgstr "Nodo de cámara para escenas 2D."
#: doc/classes/Camera2D.xml:7
msgid ""
@@ -12655,48 +13309,74 @@ msgid ""
"limits. You can use [method get_camera_screen_center] to get the real "
"position."
msgstr ""
+"Nodo de cámara para escenas 2D. Obliga a la pantalla (capa actual) a "
+"desplazarse siguiendo este nodo. Esto hace que sea más fácil (y rápido) "
+"programar escenas desplazables que cambiar manualmente la posición de los "
+"nodos basados en [CanvasItem].\n"
+"Este nodo pretende ser un simple ayudante para poner las cosas en marcha "
+"rápidamente y puede suceder que se desee más funcionalidad para cambiar el "
+"funcionamiento de la cámara. Para hacer tu propio nodo de cámara "
+"personalizado, hereda de [Node2D] y cambia la transformación del lienzo "
+"estableciendo [member Viewport.canvas_transform] en [Viewport] (puedes "
+"obtener el [Viewport] actual usando el [method Node.get_viewport]).\n"
+"Tenga en cuenta que la[code]position[/code] del nodo [Camera2D] no "
+"representa la posición real de la pantalla, que puede diferir debido al "
+"suavizado o a los límites aplicados. Puedes usar [method "
+"get_camera_screen_center] para obtener la posición real."
#: doc/classes/Camera2D.xml:18
msgid "Aligns the camera to the tracked node."
-msgstr ""
+msgstr "Alinea la cámara con el nodo de seguimiento."
#: doc/classes/Camera2D.xml:25
msgid ""
"Removes any [Camera2D] from the ancestor [Viewport]'s internal currently-"
"assigned camera."
msgstr ""
+"Quita cualquier [Camera2D] de la cámara interna del antepasado [Viewport] "
+"actualmente asignada."
#: doc/classes/Camera2D.xml:32
msgid "Forces the camera to update scroll immediately."
-msgstr ""
+msgstr "Obliga a la cámara a actualizar el scroll inmediatamente."
#: doc/classes/Camera2D.xml:39
msgid "Returns the camera position."
-msgstr ""
+msgstr "Devuelve la posición de la cámara."
#: doc/classes/Camera2D.xml:46
msgid ""
"Returns the location of the [Camera2D]'s screen-center, relative to the "
"origin."
msgstr ""
+"Devuelve la ubicación del centro de la pantalla de la [Camera2D], en "
+"relación con el origen."
#: doc/classes/Camera2D.xml:55
msgid ""
"Returns the specified margin. See also [member drag_margin_bottom], [member "
"drag_margin_top], [member drag_margin_left], and [member drag_margin_right]."
msgstr ""
+"Devuelve el margen especificado. Véase también [member drag_margin_bottom], "
+"[member drag_margin_top], [member drag_margin_left], y [member "
+"drag_margin_right]."
#: doc/classes/Camera2D.xml:64
msgid ""
"Returns the specified camera limit. See also [member limit_bottom], [member "
"limit_top], [member limit_left], and [member limit_right]."
msgstr ""
+"Devuelve el límite de cámara especificado. Consulte también [member "
+"limit_bottom], [member limit_top], [member limit_left] y [member "
+"limit_right]."
#: doc/classes/Camera2D.xml:71
msgid ""
"Make this the current 2D camera for the scene (viewport and layer), in case "
"there are many cameras in the scene."
msgstr ""
+"Haz que esta sea la cámara 2D actual para la escena (viewport y layer), en "
+"caso de que haya muchas cámaras en la escena."
#: doc/classes/Camera2D.xml:78
msgid ""
@@ -12704,22 +13384,32 @@ msgid ""
"destination.\n"
"This has no effect if smoothing is disabled."
msgstr ""
+"Establece la posición de la cámara inmediatamente a su destino de suavizado "
+"actual.\n"
+"Esto no tiene ningún efecto si el suavizado está desactivado."
#: doc/classes/Camera2D.xml:90
msgid ""
"Sets the specified margin. See also [member drag_margin_bottom], [member "
"drag_margin_top], [member drag_margin_left], and [member drag_margin_right]."
msgstr ""
+"Establece el margen especificado. Véase también [member drag_margin_bottom], "
+"[member drag_margin_top], [member drag_margin_left], y [member "
+"drag_margin_right]."
#: doc/classes/Camera2D.xml:101
msgid ""
"Sets the specified camera limit. See also [member limit_bottom], [member "
"limit_top], [member limit_left], and [member limit_right]."
msgstr ""
+"Establece el límite de cámara especificado. Consulte también [member "
+"limit_bottom], [member limit_top], [member limit_left] y [member "
+"limit_right]."
#: doc/classes/Camera2D.xml:107
msgid "The Camera2D's anchor point. See [enum AnchorMode] constants."
msgstr ""
+"El punto de anclaje de Camera2D. Ver las constantes de [enum AnchorMode]."
#: doc/classes/Camera2D.xml:110
msgid ""
@@ -12727,18 +13417,26 @@ msgid ""
"Only one camera can be current, so setting a different camera [code]current[/"
"code] will disable this one."
msgstr ""
+"Si [code]true[/code], la cámara es la cámara activa para la escena actual. "
+"Sólo una cámara puede ser actual, por lo que configurar una cámara diferente "
+"[code]current[/code] deshabilitará ésta."
#: doc/classes/Camera2D.xml:113
msgid ""
"The custom [Viewport] node attached to the [Camera2D]. If [code]null[/code] "
"or not a [Viewport], uses the default viewport instead."
msgstr ""
+"El nodo personalizado de [Viewport] unido a [Camera2D]. Si [code]null[/code] "
+"o no es un [Viewport], usa el viewport por defecto en su lugar."
#: doc/classes/Camera2D.xml:116
msgid ""
"Bottom margin needed to drag the camera. A value of [code]1[/code] makes the "
"camera move only when reaching the edge of the screen."
msgstr ""
+"El margen inferior se necesita para arrastrar la cámara. Un valor de "
+"[code]1[/code] hace que la cámara se mueva sólo cuando llega al borde de la "
+"pantalla."
#: doc/classes/Camera2D.xml:119
msgid ""
@@ -12746,24 +13444,35 @@ msgid ""
"drag margins. If [code]false[/code], the camera moves horizontally "
"regardless of margins."
msgstr ""
+"Si [code]true[/code], la cámara sólo se mueve cuando alcanza los márgenes de "
+"arrastre horizontal. Si [code]false[/code], la cámara se mueve "
+"horizontalmente independientemente de los márgenes."
#: doc/classes/Camera2D.xml:122
msgid ""
"Left margin needed to drag the camera. A value of [code]1[/code] makes the "
"camera move only when reaching the edge of the screen."
msgstr ""
+"El margen izquierdo se necesita para arrastrar la cámara. Un valor de "
+"[code]1[/code] hace que la cámara se mueva sólo cuando llega al borde de la "
+"pantalla."
#: doc/classes/Camera2D.xml:125
msgid ""
"Right margin needed to drag the camera. A value of [code]1[/code] makes the "
"camera move only when reaching the edge of the screen."
msgstr ""
+"Se necesita un margen derecho para arrastrar la cámara. Un valor de [code]1[/"
+"code] hace que la cámara se mueva sólo cuando llega al borde de la pantalla."
#: doc/classes/Camera2D.xml:128
msgid ""
"Top margin needed to drag the camera. A value of [code]1[/code] makes the "
"camera move only when reaching the edge of the screen."
msgstr ""
+"Se necesita un margen superior para arrastrar la cámara. Un valor de "
+"[code]1[/code] hace que la cámara se mueva sólo cuando llega al borde de la "
+"pantalla."
#: doc/classes/Camera2D.xml:131
msgid ""
@@ -12771,54 +13480,75 @@ msgid ""
"margins. If [code]false[/code], the camera moves vertically regardless of "
"margins."
msgstr ""
+"Si [code]true[/code], la cámara sólo se mueve cuando alcanza los márgenes de "
+"arrastre vertical. Si [code]false[/code], la cámara se mueve verticalmente "
+"sin importar los márgenes."
#: doc/classes/Camera2D.xml:134
msgid ""
"If [code]true[/code], draws the camera's drag margin rectangle in the editor."
msgstr ""
+"Si [code]true[/code], dibuja el rectángulo de margen de arrastre de la "
+"cámara en el editor."
#: doc/classes/Camera2D.xml:137
msgid ""
"If [code]true[/code], draws the camera's limits rectangle in the editor."
msgstr ""
+"Si [code]true[/code], dibuja el rectángulo de límites de la cámara en el "
+"editor."
#: doc/classes/Camera2D.xml:140
msgid ""
"If [code]true[/code], draws the camera's screen rectangle in the editor."
msgstr ""
+"Si [code]true[/code], dibuja el rectángulo de la pantalla de la cámara en el "
+"editor."
#: doc/classes/Camera2D.xml:143
msgid ""
"Bottom scroll limit in pixels. The camera stops moving when reaching this "
"value."
msgstr ""
+"Límite inferior de desplazamiento en píxeles. La cámara deja de moverse "
+"cuando alcanza este valor."
#: doc/classes/Camera2D.xml:146
msgid ""
"Left scroll limit in pixels. The camera stops moving when reaching this "
"value."
msgstr ""
+"Límite de scroll izquierdo en píxeles. La cámara deja de moverse cuando "
+"alcanza este valor."
#: doc/classes/Camera2D.xml:149
msgid ""
"Right scroll limit in pixels. The camera stops moving when reaching this "
"value."
msgstr ""
+"Límite de scroll derecho en píxeles. La cámara deja de moverse cuando "
+"alcanza este valor."
#: doc/classes/Camera2D.xml:152
msgid ""
"If [code]true[/code], the camera smoothly stops when reaches its limits."
msgstr ""
+"Si [code]true[/code], la cámara se detiene suavemente cuando llega a sus "
+"límites."
#: doc/classes/Camera2D.xml:155
msgid ""
"Top scroll limit in pixels. The camera stops moving when reaching this value."
msgstr ""
+"Límite superior de scroll en píxeles. La cámara deja de moverse cuando "
+"alcanza este valor."
#: doc/classes/Camera2D.xml:158
msgid ""
"The camera's offset, useful for looking around or camera shake animations."
msgstr ""
+"El desplazamiento de la camara, útil para mirar alrededor o para las "
+"animaciones de agitación de la camara."
#: doc/classes/Camera2D.xml:161
msgid ""
@@ -12827,32 +13557,45 @@ msgid ""
"not updated in any way if drag margins are enabled and can be used to set "
"initial offset."
msgstr ""
+"El desplazamiento horizontal de la cámara, relativo a los márgenes de "
+"arrastre.\n"
+"[b]Nota:[/b] El desplazamiento H se utiliza sólo para forzar el "
+"desplazamiento relativo a los márgenes. No se actualiza de ninguna manera si "
+"los márgenes de arrastre están activados y puede utilizarse para establecer "
+"el desplazamiento inicial."
#: doc/classes/Camera2D.xml:165
msgid ""
"The vertical offset of the camera, relative to the drag margins.\n"
"[b]Note:[/b] Used the same as [member offset_h]."
msgstr ""
+"El desplazamiento vertical de la cámara, relativo a los márgenes de "
+"arrastre.\n"
+"[b]Nota:[/b] Se utiliza igual que [member offset_h]."
#: doc/classes/Camera2D.xml:169
msgid "The camera's process callback. See [enum Camera2DProcessMode]."
-msgstr ""
+msgstr "La llamada al proceso de la cámara. Ver [enum Camera2DProcessMode]."
#: doc/classes/Camera2D.xml:172
msgid "If [code]true[/code], the camera rotates with the target."
-msgstr ""
+msgstr "Si [code]true[/code], la cámara gira con el objetivo."
#: doc/classes/Camera2D.xml:175
msgid ""
"If [code]true[/code], the camera smoothly moves towards the target at "
"[member smoothing_speed]."
msgstr ""
+"Si [code]true[/code], la cámara se mueve suavemente hacia el objetivo a "
+"[member smoothing_speed]."
#: doc/classes/Camera2D.xml:178
msgid ""
"Speed in pixels per second of the camera's smoothing effect when [member "
"smoothing_enabled] is [code]true[/code]."
msgstr ""
+"Velocidad en píxeles por segundo del efecto de suavizado de la cámara cuando "
+"[member smoothing_enabled] es [code]true[/code]."
#: doc/classes/Camera2D.xml:181
msgid ""
@@ -12861,30 +13604,38 @@ msgid ""
"example, use [code]Vector2(0.5, 0.5)[/code] for a 2× zoom-in, and "
"[code]Vector2(4, 4)[/code] for a 4× zoom-out."
msgstr ""
+"El zoom de la cámara en relación con el punto de vista. Los valores mayores "
+"que [code]Vector2(1, 1)[/code] se alejan y los valores menores se acercan. "
+"Para un ejemplo, use [code]Vector2(0,5, 0,5)[/code] para un zoom invertido "
+"de 2×, y [code]Vector2(4, 4)[/code] para un zoom de 4×."
#: doc/classes/Camera2D.xml:186
msgid ""
"The camera's position is fixed so that the top-left corner is always at the "
"origin."
msgstr ""
+"La posición de la cámara está fijada de tal manera que la esquina superior "
+"izquierda está siempre en el origen."
#: doc/classes/Camera2D.xml:189
msgid ""
"The camera's position takes into account vertical/horizontal offsets and the "
"screen size."
msgstr ""
+"La posición de la cámara tiene en cuenta los desplazamientos verticales/"
+"horizontales y el tamaño de la pantalla."
#: doc/classes/Camera2D.xml:192 doc/classes/ClippedCamera3D.xml:104
msgid "The camera updates with the [code]_physics_process[/code] callback."
-msgstr ""
+msgstr "La cámara se actualiza con la llamada [code]_physics_process[/code]."
#: doc/classes/Camera2D.xml:195 doc/classes/ClippedCamera3D.xml:107
msgid "The camera updates with the [code]_process[/code] callback."
-msgstr ""
+msgstr "La cámara se actualiza con la llamada de [code]process[/code]."
#: doc/classes/Camera3D.xml:4
msgid "Camera node, displays from a point of view."
-msgstr ""
+msgstr "Nodo de cámara, muestra desde un punto de vista."
#: doc/classes/Camera3D.xml:7
msgid ""
@@ -12896,6 +13647,14 @@ msgid ""
"capabilities to a [Viewport], and, without one, a scene registered in that "
"[Viewport] (or higher viewports) can't be displayed."
msgstr ""
+"[Camera3D] es un nodo especial que muestra lo que es visible desde su "
+"ubicación actual. Las cámaras se registran en el nodo [Viewport] más cercano "
+"(al ascender al árbol). Sólo una cámara puede estar activa por cada "
+"Viewport. Si no hay ninguna ventana disponible al ascender el árbol, la "
+"cámara se registrará en la ventana global. En otras palabras, una cámara "
+"sólo proporciona capacidades de visualización 3D a un [Viewport], y sin uno, "
+"una escena registrada en ese [Viewport] (o en los Viewports superiores) no "
+"puede visualizarse."
#: doc/classes/Camera3D.xml:18
msgid ""
@@ -12903,22 +13662,30 @@ msgid ""
"[code]enable_next[/code] is [code]true[/code], request to make the next "
"camera current, if any."
msgstr ""
+"Si esta es la cámara actual, quítala de ser la actul. Si [code]enable_next[/"
+"code] es [code]true[/code], pide que se actualice la siguiente cámara, si la "
+"hay."
#: doc/classes/Camera3D.xml:25
msgid "Returns the camera's RID from the [RenderingServer]."
-msgstr ""
+msgstr "Devuelve el RID de la cámara del [RenderingServer]."
#: doc/classes/Camera3D.xml:32
msgid ""
"Gets the camera transform. Subclassed cameras such as [ClippedCamera3D] may "
"provide different transforms than the [Node] transform."
msgstr ""
+"Obtiene la transformada de la cámara. Las subclases de cámaras como "
+"[ClippedCamera3D] pueden proveer transformaciones diferentes que la "
+"transformación de [Nodo]."
#: doc/classes/Camera3D.xml:41
msgid ""
"Returns [code]true[/code] if the given [code]layer[/code] in the [member "
"cull_mask] is enabled, [code]false[/code] otherwise."
msgstr ""
+"Devuelve [code]true[/code] si el [code]layer[/code] dado en el [member "
+"cull_mask] está activado, [code]false[/code] en caso contrario."
#: doc/classes/Camera3D.xml:48
msgid ""
@@ -12926,6 +13693,9 @@ msgid ""
"[Plane]s in the following order: near, far, left, top, right, bottom. Not to "
"be confused with [member frustum_offset]."
msgstr ""
+"Devuelve los planos de frustum de la cámara en unidades del espacio mundo "
+"como un conjunto de [Plane]s en el siguiente orden: cerca, lejos, izquierda, "
+"arriba, derecha, abajo. No debe confundirse con [member frustum_offset]."
#: doc/classes/Camera3D.xml:57
msgid ""
@@ -12933,6 +13703,9 @@ msgid ""
"[b]Note:[/b] A position which returns [code]false[/code] may still be "
"outside the camera's field of view."
msgstr ""
+"Devuelve [code]true[/code] si la posición dada está detrás de la cámara.\n"
+"[b]Nota:[/b] Una posición que devuelva [code]false[/code] puede seguir "
+"estando fuera del campo de visión de la camara."
#: doc/classes/Camera3D.xml:65
msgid ""
@@ -12940,6 +13713,9 @@ msgid ""
"description). If the camera node is outside the scene tree, it will attempt "
"to become current once it's added."
msgstr ""
+"Hace que esta cámara sea la cámara actual para el [Viewport] (ver "
+"descripción de la clase). Si el nodo de la cámara está fuera del árbol de la "
+"escena, intentará convertirse en actual una vez que se añada."
#: doc/classes/Camera3D.xml:74
msgid ""
@@ -12947,6 +13723,10 @@ msgid ""
"camera. Orthogonal cameras are normalized. Perspective cameras account for "
"perspective, screen width/height, etc."
msgstr ""
+"Devuelve un vector normal de la ubicación del punto de la pantalla dirigido "
+"a lo largo de la cámara. Las cámaras ortogonales están normalizadas. Las "
+"cámaras de perspectiva tienen en cuenta la perspectiva, la anchura y la "
+"altura de la pantalla, etc."
#: doc/classes/Camera3D.xml:85
msgid ""
@@ -12954,6 +13734,9 @@ msgid ""
"the [Viewport] rectangle on a plane that is the given [code]z_depth[/code] "
"distance into the scene away from the camera."
msgstr ""
+"Devuelve el punto 3D en el espacio del mundo que se mapea a la coordenada 2D "
+"dada en el rectángulo [Viewport] en un plano que es la distancia "
+"[code]z_profundidad[/code] dada en la escena lejos de la cámara."
#: doc/classes/Camera3D.xml:94
msgid ""
@@ -12962,6 +13745,10 @@ msgid ""
"for casting rays in the form of (origin, normal) for object intersection or "
"picking."
msgstr ""
+"Devuelve un vector normal en el espacio del mundo, que es el resultado de "
+"proyectar un punto en el rectángulo [Viewport] por la proyección de la "
+"cámara. Esto es útil para proyectar rayos en forma de (origen, normal) para "
+"la intersección o recolección de objetos."
#: doc/classes/Camera3D.xml:103
msgid ""
@@ -12970,11 +13757,16 @@ msgid ""
"for casting rays in the form of (origin, normal) for object intersection or "
"picking."
msgstr ""
+"Devuelve una posición 3D en el espacio mundo, que es el resultado de "
+"proyectar un punto en el rectángulo [Viewport] por la proyección de la "
+"cámara. Esto es útil para proyectar rayos en forma de (origen, normal) para "
+"la intersección o recolección de objetos."
#: doc/classes/Camera3D.xml:114
msgid ""
"Enables or disables the given [code]layer[/code] in the [member cull_mask]."
msgstr ""
+"Habilita o deshabilita la [code]layer[/code] dada en el [member cull_mask]."
#: doc/classes/Camera3D.xml:129
msgid ""
@@ -12983,6 +13775,10 @@ msgid ""
"code], and the [code]z_near[/code] and [code]z_far[/code] clip planes in "
"world-space units."
msgstr ""
+"Establece la proyección de la cámara en modo frustum (ver [constant "
+"PROJECTION_FRUSTUM]), especificando un [code]size[/code], un [code]offset[/"
+"code], y los planos de corte [code]z_near[/code] y [code]z_far[/code] en "
+"unidades del espacio mundo."
#: doc/classes/Camera3D.xml:142
msgid ""
@@ -12992,6 +13788,11 @@ msgid ""
"(As a hint, 2D games often use this projection, with values specified in "
"pixels.)"
msgstr ""
+"Establece la proyección de la cámara en modo ortogonal (ver [constant "
+"PROJECTION_ORTHOGONAL]), especificando un [code]tamaño[/code], y los planos "
+"de corte [code]z_near[/code] y [code]z_far[/code] en unidades del espacio "
+"mundo. (Como pista, los juegos 2D suelen utilizar esta proyección, con "
+"valores especificados en píxeles.)"
#: doc/classes/Camera3D.xml:155
msgid ""
@@ -13000,23 +13801,33 @@ msgid ""
"angle in degrees, and the [code]z_near[/code] and [code]z_far[/code] clip "
"planes in world-space units."
msgstr ""
+"Establece la proyección de la cámara en modo de perspectiva (ver [constant "
+"PROJECTION_PERSPECTIVE]), especificando un ángulo [code]fov[/code] (campo de "
+"visión) en grados, y los planos de corte [code]z_near[/code] y [code]z_far[/"
+"code] en unidades del espacio mundo."
#: doc/classes/Camera3D.xml:164
msgid ""
"Returns the 2D coordinate in the [Viewport] rectangle that maps to the given "
"3D point in worldspace."
msgstr ""
+"Devuelve la coordenada 2D en el rectángulo [Viewport] que mapea al punto 3D "
+"dado en el espacio del mundo."
#: doc/classes/Camera3D.xml:170
msgid ""
"The culling mask that describes which 3D render layers are rendered by this "
"camera."
msgstr ""
+"La máscara de selección que describe qué capas de renderizado 3D son "
+"renderizadas por esta cámara."
#: doc/classes/Camera3D.xml:173
msgid ""
"If [code]true[/code], the ancestor [Viewport] is currently using this camera."
msgstr ""
+"Si [code]true[/code], el ancestro [Viewport] está actualmente usando esta "
+"cámara."
#: doc/classes/Camera3D.xml:176
msgid ""
@@ -13025,20 +13836,26 @@ msgid ""
"objects changed in particular [code]_process[/code] methods. See [enum "
"DopplerTracking] for possible values."
msgstr ""
+"Si no [constant DOPPLER_TRACKING_DISABLED], esta cámara simulará el efecto "
+"[url=https://en.wikipedia.org/wiki/Doppler_effect]Doppler[/url] para los "
+"objetos cambiados en los métodos particulares de [code]_process[/code]. Ver "
+"[enum DopplerTracking] para los posibles valores."
#: doc/classes/Camera3D.xml:179
msgid "The [CameraEffects] to use for this camera."
-msgstr ""
+msgstr "El [CameraEffects] a utilizar para esta cámara."
#: doc/classes/Camera3D.xml:182
msgid "The [Environment] to use for this camera."
-msgstr ""
+msgstr "El [Environment] a utilizar para esta cámara."
#: doc/classes/Camera3D.xml:185
msgid ""
"The distance to the far culling boundary for this camera relative to its "
"local Z axis."
msgstr ""
+"La distancia al límite lejano de selección de esta cámara en relación con su "
+"eje Z local."
#: doc/classes/Camera3D.xml:188
msgid ""
@@ -13052,6 +13869,15 @@ msgid ""
"- ~107.51 degrees in a 16:9 viewport\n"
"- ~121.63 degrees in a 21:9 viewport"
msgstr ""
+"El ángulo del campo de visión de la cámara (en grados). Sólo aplicable en "
+"modo de perspectiva. Dado que [member keep_aspect] bloquea un eje, "
+"[code]fov[/code] establece el ángulo de campo de visión del otro eje.\n"
+"Como referencia, el valor por defecto del campo de visión vertical "
+"([code]75.0[/code]) es equivalente a un FOV horizontal de:\n"
+"- ~91.31 grados en una vista de 4:3\n"
+"- ~101.67 grados en un ángulo de visión de 16:10\n"
+"- ~107,51 grados en una vista de 16:9\n"
+"- ~121,63 grados en una vista de 21:9"
#: doc/classes/Camera3D.xml:196
msgid ""
@@ -13059,22 +13885,29 @@ msgid ""
"\"tilted frustum\" effects such as [url=https://zdoom.org/wiki/Y-shearing]Y-"
"shearing[/url]."
msgstr ""
+"El desplazamiento de la cámara de frustum. Se puede cambiar desde el valor "
+"predeterminado para crear efectos de \"frustum inclinado\" como [url=https://"
+"zdoom.org/wiki/Y-shearing]Y-shearing[/url]."
#: doc/classes/Camera3D.xml:199
msgid "The horizontal (X) offset of the camera viewport."
-msgstr ""
+msgstr "El desplazamiento horizontal (X) de la vista de la cámara."
#: doc/classes/Camera3D.xml:202
msgid ""
"The axis to lock during [member fov]/[member size] adjustments. Can be "
"either [constant KEEP_WIDTH] or [constant KEEP_HEIGHT]."
msgstr ""
+"El eje a bloquear durante los ajustes de [member fov]/[member size]. Puede "
+"ser [constant KEEP_WIDTH] o [constant KEEP_HEIGHT]."
#: doc/classes/Camera3D.xml:205
msgid ""
"The distance to the near culling boundary for this camera relative to its "
"local Z axis."
msgstr ""
+"La distancia al límite cercano de selección de esta cámara en relación con "
+"su eje Z local."
#: doc/classes/Camera3D.xml:208
msgid ""
@@ -13082,6 +13915,9 @@ msgid ""
"objects' Z distance from the camera's local space scales their perceived "
"size."
msgstr ""
+"El modo de proyección de la cámara. En el modo [constant "
+"PROJECTION_PERSPECTIVE], la distancia Z de los objetos al espacio local de "
+"la cámara escala su tamaño percibido."
#: doc/classes/Camera3D.xml:211
msgid ""
@@ -13089,28 +13925,38 @@ msgid ""
"orthogonal mode. Since [member keep_aspect] locks on axis, [code]size[/code] "
"sets the other axis' size length."
msgstr ""
+"El tamaño de la cámara se mide como la mitad de la anchura o la altura. Sólo "
+"aplicable en modo ortogonal. Dado que [member keep_aspect] se bloquea en el "
+"eje, [code]size[/code] establece la longitud del tamaño del otro eje."
#: doc/classes/Camera3D.xml:214
msgid "The vertical (Y) offset of the camera viewport."
-msgstr ""
+msgstr "El desplazamiento vertical (Y) del viewport de la cámara."
#: doc/classes/Camera3D.xml:219
msgid ""
"Perspective projection. Objects on the screen becomes smaller when they are "
"far away."
msgstr ""
+"Proyección de la perspectiva. Los objetos en la pantalla se hacen más "
+"pequeños cuando están lejos."
#: doc/classes/Camera3D.xml:222
msgid ""
"Orthogonal projection, also known as orthographic projection. Objects remain "
"the same size on the screen no matter how far away they are."
msgstr ""
+"Proyección ortogonal, también conocida como proyección ortográfica. Los "
+"objetos permanecen del mismo tamaño en la pantalla sin importar lo lejos que "
+"estén."
#: doc/classes/Camera3D.xml:225
msgid ""
"Frustum projection. This mode allows adjusting [member frustum_offset] to "
"create \"tilted frustum\" effects."
msgstr ""
+"Proyección de Frustum. Este modo permite ajustar [member frustum_offset] "
+"para crear efectos de \"frustum inclinado\"."
#: doc/classes/Camera3D.xml:228
msgid ""
@@ -13118,6 +13964,10 @@ msgid ""
"usually the best option for projects running in portrait mode, as taller "
"aspect ratios will benefit from a wider vertical FOV."
msgstr ""
+"Preserva la relación de aspecto horizontal; también conocida como escala de "
+"Vert-. Esta suele ser la mejor opción para los proyectos que se ejecutan en "
+"modo de retrato, ya que las proporciones de aspecto más altas se "
+"beneficiarán de un mayor FOV vertical."
#: doc/classes/Camera3D.xml:231
msgid ""
@@ -13125,12 +13975,18 @@ msgid ""
"usually the best option for projects running in landscape mode, as wider "
"aspect ratios will automatically benefit from a wider horizontal FOV."
msgstr ""
+"Preserva la relación de aspecto vertical; también conocida como escala Hor+. "
+"Esta suele ser la mejor opción para los proyectos que se ejecutan en modo "
+"paisaje, ya que las relaciones de aspecto más amplias se beneficiarán "
+"automáticamente de un FOV horizontal más amplio."
#: doc/classes/Camera3D.xml:234
msgid ""
"Disables [url=https://en.wikipedia.org/wiki/Doppler_effect]Doppler effect[/"
"url] simulation (default)."
msgstr ""
+"Desactiva la simulación del efecto Doppler [url=https://en.wikipedia.org/"
+"wiki/Doppler_effect]/url] (por defecto)."
#: doc/classes/Camera3D.xml:237
msgid ""
@@ -13140,6 +13996,11 @@ msgid ""
"objects affect how Audio is perceived (changing the Audio's [code]pitch "
"shift[/code])."
msgstr ""
+"Simular el [url=https://en.wikipedia.org/wiki/Doppler_effect]efecto Doppler[/"
+"url] rastreando las posiciones de los objetos que se cambian en el "
+"[code]_proceso[/code]. Los cambios en la velocidad relativa de esta cámara "
+"comparada con esos objetos afectan a la forma en que se percibe el Audio "
+"(cambiando el [code]pitch shift[/code] del Audio)."
#: doc/classes/Camera3D.xml:240
msgid ""
@@ -13149,12 +14010,19 @@ msgid ""
"camera compared to those objects affect how Audio is perceived (changing the "
"Audio's [code]pitch shift[/code])."
msgstr ""
+"Simular el [url=https://en.wikipedia.org/wiki/Doppler_effect]efecto Doppler[/"
+"url] rastreando las posiciones de los objetos que se cambian en el "
+"[code]_physics_process[/code]. Los cambios en la velocidad relativa de esta "
+"cámara comparada con esos objetos afectan a la forma en que se percibe el "
+"Audio (cambiando el [code]pitch shift[/code] del Audio)."
#: doc/classes/CameraEffects.xml:4
msgid ""
"Contains camera-specific effects such as depth of field and exposure "
"override."
msgstr ""
+"Contiene efectos específicos de la cámara como la profundidad de campo y la "
+"anulación de la exposición."
#: doc/classes/CameraEffects.xml:7
msgid ""
@@ -13162,6 +14030,9 @@ msgid ""
"override.\n"
"See also [Environment] for general 3D environment settings."
msgstr ""
+"Contiene efectos específicos de la cámara como la profundidad de campo y la "
+"anulación de la exposición.\n"
+"Véase también [Environment] para los ajustes generales del entorno 3D."
#: doc/classes/CameraEffects.xml:16
msgid ""
@@ -13170,11 +14041,18 @@ msgid ""
"blurrier. However, If the amount is too high, you might start to see lines "
"appearing, especially when using a low quality blur."
msgstr ""
+"La cantidad de borrosidad para los efectos de profundidad de campo tanto de "
+"cerca como de lejos. La cantidad de desenfoque aumenta el radio del efecto "
+"de desenfoque, haciendo más borrosa la zona afectada. Sin embargo, si la "
+"cantidad es demasiado alta, es posible que empiece a ver aparecer líneas, "
+"especialmente cuando se utiliza un desenfoque de baja calidad."
#: doc/classes/CameraEffects.xml:19
msgid ""
"The distance from the camera where the far blur effect affects the rendering."
msgstr ""
+"La distancia desde la cámara en la que el efecto de borrosidad afecta a la "
+"representación."
#: doc/classes/CameraEffects.xml:22
msgid ""
@@ -13182,15 +14060,21 @@ msgid ""
"significant performance cost. Consider disabling it in scenes where there "
"are no far away objects."
msgstr ""
+"Si [code]true[/code], permite el efecto de borrosidad de profundidad de "
+"campo. Esto tiene un costo de rendimiento significativo. Considere la "
+"posibilidad de desactivarlo en escenas en las que no haya objetos lejanos."
#: doc/classes/CameraEffects.xml:25
msgid "The length of the transition between the no-blur area and far blur."
msgstr ""
+"La longitud de la transición entre la zona no borrosa y la borrosa lejana."
#: doc/classes/CameraEffects.xml:28
msgid ""
"Distance from the camera where the near blur effect affects the rendering."
msgstr ""
+"Distancia desde la cámara donde el efecto de casi borrosidad afecta al "
+"renderizado."
#: doc/classes/CameraEffects.xml:31
msgid ""
@@ -13198,29 +14082,41 @@ msgid ""
"a significant performance cost. Consider disabling it in scenes where there "
"are no nearby objects."
msgstr ""
+"Si [code]true[/code], activa la profundidad de campo cerca del efecto de "
+"borrosidad. Esto tiene un costo de rendimiento significativo. Considere la "
+"posibilidad de desactivarlo en escenas en las que no haya objetos cercanos."
#: doc/classes/CameraEffects.xml:34
msgid "The length of the transition between the near blur and no-blur area."
msgstr ""
+"La longitud de la transición entre la zona casi borrosa y la zona no borrosa."
#: doc/classes/CameraEffects.xml:37
+#, fuzzy
msgid ""
"The exposure override value to use. Higher values will result in a brighter "
-"scene. Only effective if [member override_exposure_enable] is [code]true[/"
+"scene. Only effective if [member override_exposure_enabled] is [code]true[/"
"code]."
msgstr ""
+"El valor de anulación de la exposición a utilizar. Valores más altos "
+"resultarán en una escena más brillante. Sólo es efectivo si [member "
+"override_exposure_enable] es [code]true[/code]."
#: doc/classes/CameraEffects.xml:40
msgid ""
"If [code]true[/code], overrides the manual or automatic exposure defined in "
"the [Environment] with the value in [member override_exposure]."
msgstr ""
+"Si [code]true[/code], anula la exposición manual o automática definida en el "
+"[Environment] con el valor en [member override_exposure]."
#: doc/classes/CameraFeed.xml:4
msgid ""
"A camera feed gives you access to a single physical camera attached to your "
"device."
msgstr ""
+"La alimentación de la cámara le da acceso a una única cámara física "
+"conectada a tu dispositivo."
#: doc/classes/CameraFeed.xml:7
msgid ""
@@ -13232,10 +14128,20 @@ msgid ""
"for you if you set the environment to show the camera image in the "
"background."
msgstr ""
+"La alimentación de la cámara le da acceso a una única cámara física "
+"conectada a su dispositivo. Cuando se habilita, Godot comenzará a capturar "
+"fotogramas de la cámara que luego pueden ser utilizados. Véase también "
+"[CameraServer].\n"
+"[b]Nota:[/b] Muchas cámaras devolverán imágenes YCbCr que están divididas en "
+"dos texturas y necesitan ser combinadas en un sombreador. Godot hace esto "
+"automáticamente para ti, si configuras el entorno para mostrar la imagen de "
+"la cámara en el fondo."
#: doc/classes/CameraServer.xml:4
msgid "Server keeping track of different cameras accessible in Godot."
msgstr ""
+"El servidor mantiene un seguimiento de las diferentes cámaras accesibles en "
+"Godot."
#: doc/classes/CameraServer.xml:7
msgid ""
@@ -13245,56 +14151,70 @@ msgid ""
"[b]Note:[/b] This class is currently only implemented on macOS and iOS. On "
"other platforms, no [CameraFeed]s will be available."
msgstr ""
+"El [CameraServer] lleva un registro de las diferentes cámaras accesibles en "
+"Godot. Estas son cámaras externas como las webcams o las cámaras de su "
+"teléfono.\n"
+"Se utiliza principalmente para proporcionar a los módulos de AR una "
+"alimentación de vídeo de la cámara.\n"
+"[b]Nota:[/b] Esta clase sólo se implementa actualmente en macOS e iOS. En "
+"otras plataformas, no habrá [CameraFeed]s disponibles."
#: doc/classes/CameraServer.xml:20
msgid "Adds the camera [code]feed[/code] to the camera server."
-msgstr ""
+msgstr "Añade la cámara [code]feed[/code] al servidor de la cámara."
#: doc/classes/CameraServer.xml:27
msgid "Returns an array of [CameraFeed]s."
-msgstr ""
+msgstr "Devuelve una array de [CameraFeed]s."
#: doc/classes/CameraServer.xml:36
msgid ""
"Returns the [CameraFeed] corresponding to the camera with the given "
"[code]index[/code]."
msgstr ""
+"Devuelve el [CameraFeed] correspondiente a la cámara con el [code]index[/"
+"code] dado."
#: doc/classes/CameraServer.xml:43
msgid "Returns the number of [CameraFeed]s registered."
-msgstr ""
+msgstr "Devuelve el número de [CameraFeed]s registrados."
#: doc/classes/CameraServer.xml:52
msgid "Removes the specified camera [code]feed[/code]."
-msgstr ""
+msgstr "Elimina la cámara especificada [code]feed[/code]."
#: doc/classes/CameraServer.xml:61
msgid "Emitted when a [CameraFeed] is added (e.g. a webcam is plugged in)."
msgstr ""
+"Se emite cuando se agrega una [CameraFeed] (por ejemplo, se conecta una "
+"cámara web)."
#: doc/classes/CameraServer.xml:68
msgid "Emitted when a [CameraFeed] is removed (e.g. a webcam is unplugged)."
msgstr ""
+"Se emite cuando se retira una [CameraFeed] (por ejemplo, se desenchufa una "
+"cámara web)."
#: doc/classes/CameraServer.xml:74
msgid "The RGBA camera image."
-msgstr ""
+msgstr "La imagen de la cámara RGBA."
#: doc/classes/CameraServer.xml:77
msgid "The [url=https://en.wikipedia.org/wiki/YCbCr]YCbCr[/url] camera image."
msgstr ""
+"La imagen de la cámara [url=https://en.wikipedia.org/wiki/YCbCr]YCbCr[/url]."
#: doc/classes/CameraServer.xml:80
msgid "The Y component camera image."
-msgstr ""
+msgstr "La imagen de la cámara del componente Y."
#: doc/classes/CameraServer.xml:83
msgid "The CbCr component camera image."
-msgstr ""
+msgstr "La imagen de la cámara del componente CbCr."
#: doc/classes/CameraTexture.xml:4
msgid "Texture provided by a [CameraFeed]."
-msgstr ""
+msgstr "Textura proporcionada por un [CameraFeed]."
#: doc/classes/CameraTexture.xml:7
msgid ""
@@ -13302,26 +14222,34 @@ msgid ""
"[b]Note:[/b] Many cameras supply YCbCr images which need to be converted in "
"a shader."
msgstr ""
+"Esta textura da acceso a la textura de la cámara proporcionada por un "
+"[CameraFeed].\n"
+"[b]Nota:[/b] Muchas cámaras suministran imágenes YCbCr que necesitan ser "
+"convertidas en un sombreador."
#: doc/classes/CameraTexture.xml:16
msgid "The ID of the [CameraFeed] for which we want to display the image."
-msgstr ""
+msgstr "El ID del [CameraFeed] para el cual queremos mostrar la imagen."
#: doc/classes/CameraTexture.xml:19
msgid ""
"Convenience property that gives access to the active property of the "
"[CameraFeed]."
msgstr ""
+"Propiedad de conveniencia que da acceso a la propiedad activa de la "
+"[CameraFeed]."
#: doc/classes/CameraTexture.xml:22
msgid ""
"Which image within the [CameraFeed] we want access to, important if the "
"camera image is split in a Y and CbCr component."
msgstr ""
+"La imagen dentro de la [CameraFeed] a la que queremos acceder, es importante "
+"si la imagen de la cámara está dividida en un componente Y y CbCr."
#: doc/classes/CanvasItem.xml:4
msgid "Base class of anything 2D."
-msgstr ""
+msgstr "Clase base de cualquier cosa 2D."
#: doc/classes/CanvasItem.xml:7
msgid ""
@@ -13349,57 +14277,98 @@ msgid ""
"parameters must have angles specified as [i]radians[/i]. To convert degrees "
"to radians, use [method @GDScript.deg2rad]."
msgstr ""
+"Clase base de cualquier cosa 2D. Los objetos de Canvas se colocan en un "
+"árbol; los niños heredan y extienden la la transformada de su padre. "
+"[CanvasItem] se extiende por [Control] para cualquier cosa relacionada con "
+"la GUI, y por [Node2D] para cualquier cosa relacionada con el motor 2D.\n"
+"Cualquier [CanvasItem] puede dibujar. Para ello, se debe llamar a [method "
+"update], luego se recibirá [constant NOTIFICATION_DRAW] en tiempo de "
+"inactividad para solicitar el redibujo. Debido a esto, los elementos de "
+"canvas no necesitan ser redibujados en cada cuadro, mejorando el rendimiento "
+"significativamente. Se proporcionan varias funciones para dibujar en el "
+"[CanvasItem] (ver las funciones [code]draw_*[/code]). Sin embargo, sólo "
+"pueden utilizarse dentro de las funciones virtuales [método Object."
+"_notification], de señal o [método _draw].\n"
+"Los elementos de Canvas se dibujan en orden del árbol. Por defecto, los "
+"niños están encima de sus padres, por lo que una raíz [CanvasItem] se "
+"dibujará detrás de todo. Este comportamiento puede ser cambiado por cada "
+"elemento.\n"
+"Un [CanvasItem] también puede ser escondido, lo que también esconderá a sus "
+"hijos. Proporciona muchas maneras de cambiar parámetros como la modulación "
+"(para sí mismo y sus hijos) y la auto-modulación (sólo para sí mismo), así "
+"como su modo de mezcla.\n"
+"En última instancia, se puede solicitar una notificación de transformación, "
+"que notificará al nodo que su posición global ha cambiado en caso de que el "
+"árbol padre haya cambiado.\n"
+"[b]Nota:[/b] A menos que se especifique lo contrario, todos los métodos que "
+"tienen parámetros de ángulo deben tener ángulos especificados como "
+"[i]radianes[/i]. Para convertir los grados a radianes, use [method @GDScript."
+"deg2rad]."
#: doc/classes/CanvasItem.xml:15 doc/classes/CanvasLayer.xml:10
#: doc/classes/InputEvent.xml:11 doc/classes/Viewport.xml:15
msgid "https://docs.godotengine.org/en/latest/tutorials/2d/2d_transforms.html"
-msgstr ""
+msgstr "https://docs.godotengine.org/es/latest/tutorials/2d/2d_transforms.html"
#: doc/classes/CanvasItem.xml:16 doc/classes/Control.xml:19
#: doc/classes/Node2D.xml:10
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/2d/custom_drawing_in_2d.html"
msgstr ""
+"https://docs.godotengine.org/es/latest/tutorials/2d/custom_drawing_in_2d.html"
#: doc/classes/CanvasItem.xml:23
msgid ""
"Overridable function called by the engine (if defined) to draw the canvas "
"item."
msgstr ""
+"Función sobreescribible llamada por el motor (si está definida) para dibujar "
+"el objeto canvas."
#: doc/classes/CanvasItem.xml:44
msgid ""
"Draws an arc between the given angles. The larger the value of "
"[code]point_count[/code], the smoother the curve."
msgstr ""
+"Dibuja un arco entre los ángulos dados. Cuanto mayor sea el valor de "
+"[code]point_count[/code], más suave será la curva."
#: doc/classes/CanvasItem.xml:61
msgid ""
"Draws a string character using a custom font. Returns the advance, depending "
"on the character width and kerning with an optional next character."
msgstr ""
+"Dibuja un carácter de cadena usando una fuente personalizada. Devuelve el "
+"avance, dependiendo del ancho del carácter y del kerning con un opcional "
+"siguiente carácter."
#: doc/classes/CanvasItem.xml:74
msgid "Draws a colored circle."
-msgstr ""
+msgstr "Dibuja un círculo de color."
#: doc/classes/CanvasItem.xml:99
msgid "Draws a colored polygon of any amount of points, convex or concave."
msgstr ""
+"Dibuja un polígono coloreado de cualquier cantidad de puntos, convexo o "
+"cóncavo."
#: doc/classes/CanvasItem.xml:114
msgid "Draws a line from a 2D point to another, with a given color and width."
msgstr ""
+"Dibuja una línea desde un punto 2D a otro, con un color y un ancho "
+"determinados."
#: doc/classes/CanvasItem.xml:139
msgid ""
"Draws a [Mesh] in 2D, using the provided texture. See [MeshInstance2D] for "
"related documentation."
msgstr ""
+"Dibuja una [Mesh] en 2D, usando la textura proporcionada. Ver "
+"[MeshInstance2D] para la documentación relacionada."
#: doc/classes/CanvasItem.xml:152
msgid "Draws multiple, parallel lines with a uniform [code]color[/code]."
-msgstr ""
+msgstr "Dibuja múltiples líneas paralelas con un [code]color[/code] uniforme."
#: doc/classes/CanvasItem.xml:165
msgid ""
@@ -13407,22 +14376,29 @@ msgid ""
"by-segment coloring. Colors assigned to line segments match by index between "
"[code]points[/code] and [code]colors[/code]."
msgstr ""
+"Dibuja múltiples líneas paralelas con un [code]width[/code] uniforme y "
+"coloración segmento por segmento. Los colores asignados a los segmentos de "
+"línea coinciden por índice entre [code]points[/code] y [code]colors[/code]."
#: doc/classes/CanvasItem.xml:186
msgid ""
"Draws a [MultiMesh] in 2D with the provided texture. See "
"[MultiMeshInstance2D] for related documentation."
msgstr ""
+"Dibuja una [MultiMesh] en 2D con la textura proporcionada. Ver "
+"[MultiMeshInstance2D] para la documentación relacionada."
#: doc/classes/CanvasItem.xml:211
msgid "Draws a polygon of any amount of points, convex or concave."
-msgstr ""
+msgstr "Dibuja un polígono de cualquier cantidad de puntos, convexo o cóncavo."
#: doc/classes/CanvasItem.xml:224
msgid ""
"Draws interconnected line segments with a uniform [code]color[/code] and "
"[code]width[/code]."
msgstr ""
+"Dibuja segmentos de línea interconectados con un [code]color[/code] y un "
+"[code]width[/code] uniformes."
#: doc/classes/CanvasItem.xml:237
msgid ""
@@ -13430,12 +14406,18 @@ msgid ""
"segment-by-segment coloring. Colors assigned to line segments match by index "
"between [code]points[/code] and [code]colors[/code]."
msgstr ""
+"Dibuja segmentos de líneas interconectadas con un [code]width[/code] "
+"uniforme y coloración segmento por segmento. Los colores asignados a los "
+"segmentos de línea coinciden por índice entre [code]points[/code] y "
+"[code]colors[/code]."
#: doc/classes/CanvasItem.xml:264
msgid ""
"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."
msgstr ""
+"Dibuja un primitiva personalizada. 1 punto por un punto, 2 puntos por una "
+"línea, 3 puntos por un triángulo y 4 puntos para un cuadrilátero."
#: doc/classes/CanvasItem.xml:279
msgid ""
@@ -13446,287 +14428,382 @@ msgid ""
"[b]Note:[/b] [code]width[/code] is only effective if [code]filled[/code] is "
"[code]false[/code]."
msgstr ""
+"Dibuja un rectángulo. Si [code]filled[/code] es [code]true[/code], el "
+"rectángulo se llenará con el [code]color[/code] especificado. Si "
+"[code]filled[/code] es [code]false[/code], el rectángulo se dibujará como un "
+"trazo con el [code]color[/code] y el [code]width[/code] especificados.\n"
+"[b]Nota: [/b] [code]width[/code] sólo es efectivo si [code]filled[/code] es "
+"[code]false[/code]."
#: doc/classes/CanvasItem.xml:293
msgid ""
"Sets a custom transform for drawing via components. Anything drawn "
"afterwards will be transformed by this."
msgstr ""
+"Establece una transformación personalizada para el dibujo a través de los "
+"componentes. Todo lo que se dibuje después será transformado por esto."
#: doc/classes/CanvasItem.xml:302
msgid ""
"Sets a custom transform for drawing via matrix. Anything drawn afterwards "
"will be transformed by this."
msgstr ""
+"Establece una transformación personalizada para dibujar a través de la "
+"matriz. Todo lo que se dibuje después será transformado por esto."
#: doc/classes/CanvasItem.xml:319
-msgid "Draws a string using a custom font."
+msgid ""
+"Draws [code]text[/code] using the specified [code]font[/code] at the "
+"[code]position[/code] (top-left corner). The text will have its color "
+"multiplied by [code]modulate[/code]. If [code]clip_w[/code] is greater than "
+"or equal to 0, the text will be clipped if it exceeds the specified width.\n"
+"[b]Example using the default project font:[/b]\n"
+"[codeblock]\n"
+"# If using this method in a script that redraws constantly, move the\n"
+"# `default_font` declaration to a member variable assigned in `_ready()`\n"
+"# so the Control is only created once.\n"
+"var default_font = Control.new().get_font(\"font\")\n"
+"draw_string(default_font, Vector2(64, 64), \"Hello world\")\n"
+"[/codeblock]\n"
+"See also [method Font.draw]."
msgstr ""
-#: doc/classes/CanvasItem.xml:330
+#: doc/classes/CanvasItem.xml:339
msgid "Draws a styled rectangle."
-msgstr ""
+msgstr "Dibuja un rectángulo con estilo."
-#: doc/classes/CanvasItem.xml:353
+#: doc/classes/CanvasItem.xml:362
msgid "Draws a texture at a given position."
-msgstr ""
+msgstr "Dibuja una textura en una posición determinada."
-#: doc/classes/CanvasItem.xml:380
+#: doc/classes/CanvasItem.xml:389
msgid ""
"Draws a textured rectangle at a given position, optionally modulated by a "
"color. If [code]transpose[/code] is [code]true[/code], the texture will have "
"its X and Y coordinates swapped."
msgstr ""
+"Dibuja un rectángulo con textura en una posición determinada, opcionalmente "
+"modulada por un color. Si [code]transpose[/code] es [code]true[/code], la "
+"textura tendrá sus coordenadas X e Y intercambiadas."
-#: doc/classes/CanvasItem.xml:409
+#: doc/classes/CanvasItem.xml:418
msgid ""
"Draws a textured rectangle region at a given position, optionally modulated "
"by a color. If [code]transpose[/code] is [code]true[/code], the texture will "
"have its X and Y coordinates swapped."
msgstr ""
+"Dibuja una región de rectángulo con textura en una posición determinada, "
+"opcionalmente modulada por un color. Si [code]transpose[/code] es "
+"[code]true[/code], la textura tendrá sus coordenadas X e Y intercambiadas."
-#: doc/classes/CanvasItem.xml:416 doc/classes/Node3D.xml:19
+#: doc/classes/CanvasItem.xml:425 doc/classes/Node3D.xml:19
msgid ""
"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."
msgstr ""
+"Obliga a la transformación a actualizarse. Los cambios en la física de las "
+"transformaciones no son instantáneos por razones de rendimiento. Las "
+"transformaciones se acumulan y luego se fijan. Usa esto si necesitas una "
+"transformación actualizada cuando hagas operaciones de física."
-#: doc/classes/CanvasItem.xml:423
+#: doc/classes/CanvasItem.xml:432
msgid "Returns the [RID] of the [World2D] canvas where this item is in."
-msgstr ""
+msgstr "Devuelve el [RID] del canvas [World2D] donde el objeto esta contenido."
-#: doc/classes/CanvasItem.xml:430
+#: doc/classes/CanvasItem.xml:439
msgid "Returns the canvas item RID used by [RenderingServer] for this item."
msgstr ""
+"Devuelve el RID del objecto canvas utilizado por [RenderingServer] para este "
+"objeto."
-#: doc/classes/CanvasItem.xml:437
+#: doc/classes/CanvasItem.xml:446
msgid "Returns the transform matrix of this item's canvas."
-msgstr ""
+msgstr "Devuelve la matriz de transformación de este objeto canvas."
-#: doc/classes/CanvasItem.xml:444
+#: doc/classes/CanvasItem.xml:453
msgid "Returns the global position of the mouse."
-msgstr ""
+msgstr "Devuelve la posición global del ratón."
-#: doc/classes/CanvasItem.xml:451
+#: doc/classes/CanvasItem.xml:460
msgid "Returns the global transform matrix of this item."
-msgstr ""
+msgstr "Devuelve la matriz de transformación global de este objeto."
-#: doc/classes/CanvasItem.xml:458
+#: doc/classes/CanvasItem.xml:467
msgid ""
"Returns the global transform matrix of this item in relation to the canvas."
msgstr ""
+"Devuelve la matriz de transformación global de este objeto en relación con "
+"el canvas."
-#: doc/classes/CanvasItem.xml:465
+#: doc/classes/CanvasItem.xml:474
msgid "Returns the mouse position relative to this item's position."
-msgstr ""
+msgstr "Devuelve la posición del ratón relativa a la posición de este objeto."
-#: doc/classes/CanvasItem.xml:472
+#: doc/classes/CanvasItem.xml:481
msgid "Returns the transform matrix of this item."
-msgstr ""
+msgstr "Devuelve la matriz de transformación de este objecto."
-#: doc/classes/CanvasItem.xml:479
+#: doc/classes/CanvasItem.xml:488
msgid "Returns the viewport's boundaries as a [Rect2]."
msgstr ""
+"Devuelve los límites del viewport como un [Rect2].Devuelve los límites del "
+"viewport como un [Rect2]."
-#: doc/classes/CanvasItem.xml:486
+#: doc/classes/CanvasItem.xml:495
msgid "Returns this item's transform in relation to the viewport."
-msgstr ""
+msgstr "Devuelve la transformación de este objeto en relación con el viewport."
-#: doc/classes/CanvasItem.xml:493
+#: doc/classes/CanvasItem.xml:502
msgid "Returns the [World2D] where this item is in."
-msgstr ""
+msgstr "Devuelve el [World2D] donde está este objeto."
-#: doc/classes/CanvasItem.xml:500
+#: doc/classes/CanvasItem.xml:509
msgid "Hide the [CanvasItem] if it's currently visible."
-msgstr ""
+msgstr "Ocultar el [CanvasItem] si es visible actualmente."
-#: doc/classes/CanvasItem.xml:507
+#: doc/classes/CanvasItem.xml:516
msgid ""
"Returns [code]true[/code] if local transform notifications are communicated "
"to children."
msgstr ""
+"Devuelve [code]true[/code] si se comunican notificaciones de transformación "
+"local a los hijos."
-#: doc/classes/CanvasItem.xml:514
+#: doc/classes/CanvasItem.xml:523
msgid ""
"Returns [code]true[/code] if the node is set as top-level. See [method "
"set_as_toplevel]."
msgstr ""
+"Devuelve [code]true[/code] si el nodo está configurado como de nivel "
+"superior. Ver [method set_as_toplevel]."
-#: doc/classes/CanvasItem.xml:521
+#: doc/classes/CanvasItem.xml:530
msgid ""
"Returns [code]true[/code] if global transform notifications are communicated "
"to children."
msgstr ""
+"Devuelve [code]true[/code] si las notificaciones de transformación global se "
+"comunican a los hijos."
-#: doc/classes/CanvasItem.xml:528
+#: doc/classes/CanvasItem.xml:537 doc/classes/Node3D.xml:104
+#, fuzzy
msgid ""
"Returns [code]true[/code] if the node is present in the [SceneTree], its "
-"[member visible] property is [code]true[/code] and its inherited visibility "
-"is also [code]true[/code]."
+"[member visible] property is [code]true[/code] and all its antecedents are "
+"also visible. If any antecedent is hidden, this node will not be visible in "
+"the scene tree."
msgstr ""
+"Devuelve [code]true[/code] si el nodo está presente en el [SceneTree], su "
+"propiedad [member visible] es [code]true[/code] y su visibilidad heredada es "
+"también [code]true[/code]."
-#: doc/classes/CanvasItem.xml:537
+#: doc/classes/CanvasItem.xml:546
msgid "Assigns [code]screen_point[/code] as this node's new local transform."
msgstr ""
+"Asigna [code]screen_point[/code] como la nueva transformación local de este "
+"nodo."
-#: doc/classes/CanvasItem.xml:546
+#: doc/classes/CanvasItem.xml:555
msgid ""
"Transformations issued by [code]event[/code]'s inputs are applied in local "
"space instead of global space."
msgstr ""
+"Las transformaciones emitidas por los [code]event[/code]s de entrada se "
+"aplican en el espacio local en lugar del espacio global."
-#: doc/classes/CanvasItem.xml:555
+#: doc/classes/CanvasItem.xml:564
msgid ""
"If [code]enable[/code] is [code]true[/code], the node won't inherit its "
"transform from parent canvas items."
msgstr ""
+"Si [code]enable[/code] es [code]true[/code], el nodo no heredará su "
+"transformación de los objetos del canvas padre."
-#: doc/classes/CanvasItem.xml:564
+#: doc/classes/CanvasItem.xml:573
msgid ""
"If [code]enable[/code] is [code]true[/code], children will be updated with "
"local transform data."
msgstr ""
+"Si [code]enable[/code] es [code]true[/code], los hijos serán actualizados "
+"con datos de transformación local."
-#: doc/classes/CanvasItem.xml:573
+#: doc/classes/CanvasItem.xml:582
msgid ""
"If [code]enable[/code] is [code]true[/code], children will be updated with "
"global transform data."
msgstr ""
+"Si [code]enable[/code] es [code]true[/code], los hijos serán actualizados "
+"con los datos de transformación global."
-#: doc/classes/CanvasItem.xml:580
+#: doc/classes/CanvasItem.xml:589
msgid ""
"Show the [CanvasItem] if it's currently hidden. For controls that inherit "
"[Popup], the correct way to make them visible is to call one of the multiple "
"[code]popup*()[/code] functions instead."
msgstr ""
+"Muestra el [CanvasItem] si está actualmente oculto. Para los controles que "
+"heredan [Popup], la forma correcta de hacerlos visibles es llamar a una de "
+"las múltiples funciones [code]popup*()[/code] en su lugar."
-#: doc/classes/CanvasItem.xml:587
+#: doc/classes/CanvasItem.xml:596
msgid ""
"Queue the [CanvasItem] for update. [constant NOTIFICATION_DRAW] will be "
"called on idle time to request redraw."
msgstr ""
+"Pone en la cola el [CanvasItem] para la actualización. La [constant "
+"NOTIFICATION_DRAW] será llamada en tiempo de inactividad para solicitar el "
+"redibujado."
-#: doc/classes/CanvasItem.xml:593
+#: doc/classes/CanvasItem.xml:602
msgid ""
"The rendering layers in which this [CanvasItem] responds to [Light2D] nodes."
msgstr ""
+"Las capas de renderización en las que este [CanvasItem] responde a los nodos "
+"[Light2D]."
-#: doc/classes/CanvasItem.xml:596
+#: doc/classes/CanvasItem.xml:605
msgid "The material applied to textures on this [CanvasItem]."
-msgstr ""
+msgstr "El material aplicado a las texturas en este [CanvasItem]."
-#: doc/classes/CanvasItem.xml:599
+#: doc/classes/CanvasItem.xml:608
msgid "The color applied to textures on this [CanvasItem]."
-msgstr ""
+msgstr "El color aplicado a las texturas en este [CanvasItem]."
-#: doc/classes/CanvasItem.xml:602
+#: doc/classes/CanvasItem.xml:611
msgid ""
"The color applied to textures on this [CanvasItem]. This is not inherited by "
"children [CanvasItem]s."
msgstr ""
+"El color aplicado a las texturas en este [CanvasItem]. Esto no es heredado "
+"por los hijos de [CanvasItem]."
-#: doc/classes/CanvasItem.xml:605
+#: doc/classes/CanvasItem.xml:614
msgid "If [code]true[/code], the object draws behind its parent."
-msgstr ""
+msgstr "Si [code]true[/code], el objeto se dibuja detrás de su padre."
-#: doc/classes/CanvasItem.xml:608
+#: doc/classes/CanvasItem.xml:617
msgid "If [code]true[/code], the object draws on top of its parent."
-msgstr ""
+msgstr "Si [code]true[/code], el objeto se dibuja encima de su padre."
-#: doc/classes/CanvasItem.xml:611
+#: doc/classes/CanvasItem.xml:620
msgid "The texture filtering mode to use on this [CanvasItem]."
-msgstr ""
+msgstr "El modo de filtrado de texturas a utilizar en este [CanvasItem]."
-#: doc/classes/CanvasItem.xml:614
+#: doc/classes/CanvasItem.xml:623
msgid "The texture repeating mode to use on this [CanvasItem]."
-msgstr ""
+msgstr "El modo de repetición de texturas para usar en este [CanvasItem]."
-#: doc/classes/CanvasItem.xml:617
+#: doc/classes/CanvasItem.xml:626
msgid ""
"If [code]true[/code], the parent [CanvasItem]'s [member material] property "
"is used as this one's material."
msgstr ""
+"Si [code]true[/code], la propiedad del [member material] de [CanvasItem] se "
+"utiliza como el material para este elemento."
-#: doc/classes/CanvasItem.xml:620
+#: doc/classes/CanvasItem.xml:629
+#, fuzzy
msgid ""
-"If [code]true[/code], this [CanvasItem] is drawn. For controls that inherit "
-"[Popup], the correct way to make them visible is to call one of the multiple "
-"[code]popup*()[/code] functions instead."
+"If [code]true[/code], this [CanvasItem] is drawn. The node is only visible "
+"if all of its antecedents are visible as well (in other words, [method "
+"is_visible_in_tree] must return [code]true[/code]).\n"
+"[b]Note:[/b] For controls that inherit [Popup], the correct way to make them "
+"visible is to call one of the multiple [code]popup*()[/code] functions "
+"instead."
msgstr ""
+"Si [code]true[/code], se dibuja este [CanvasItem]. Para los controles que "
+"heredan [Popup], la forma correcta de hacerlos visibles es llamar a una de "
+"las múltiples funciones [code]popup*()[/code] en su lugar."
-#: doc/classes/CanvasItem.xml:626
+#: doc/classes/CanvasItem.xml:636
msgid ""
"Emitted when the [CanvasItem] must redraw. This can only be connected "
"realtime, as deferred will not allow drawing."
msgstr ""
+"Emitido cuando el [CanvasItem] debe ser dibujado de nuevo. Esto sólo puede "
+"ser conectado en tiempo real, ya que en diferido no se podrá dibujar."
-#: doc/classes/CanvasItem.xml:631
+#: doc/classes/CanvasItem.xml:641
msgid "Emitted when becoming hidden."
-msgstr ""
+msgstr "Emitido al ocultarse."
-#: doc/classes/CanvasItem.xml:636
+#: doc/classes/CanvasItem.xml:646
msgid "Emitted when the item rect has changed."
-msgstr ""
+msgstr "Emitido cuando el objeto rect ha cambiado."
-#: doc/classes/CanvasItem.xml:641
+#: doc/classes/CanvasItem.xml:651
msgid "Emitted when the visibility (hidden/visible) changes."
-msgstr ""
+msgstr "Emitido cuando la visibilidad (oculta/visible) cambia."
-#: doc/classes/CanvasItem.xml:647
+#: doc/classes/CanvasItem.xml:657
msgid ""
"The [CanvasItem]'s transform has changed. This notification is only received "
"if enabled by [method set_notify_transform] or [method "
"set_notify_local_transform]."
msgstr ""
+"La transformada del [CanvasItem] ha cambiado. Esta notificación sólo se "
+"recibe si está habilitada por [method set_notify_transform] o [method "
+"set_notify_local_transform]."
-#: doc/classes/CanvasItem.xml:650
+#: doc/classes/CanvasItem.xml:660
msgid "The [CanvasItem] is requested to draw."
-msgstr ""
+msgstr "Se solicita al [CanvasItem] que dibuje."
-#: doc/classes/CanvasItem.xml:653
+#: doc/classes/CanvasItem.xml:663
msgid "The [CanvasItem]'s visibility has changed."
-msgstr ""
+msgstr "La visibilidad del [CanvasItem] ha cambiado."
-#: doc/classes/CanvasItem.xml:656
+#: doc/classes/CanvasItem.xml:666
msgid "The [CanvasItem] has entered the canvas."
-msgstr ""
+msgstr "El [CanvasItem] ha entrado en el canvas."
-#: doc/classes/CanvasItem.xml:659
+#: doc/classes/CanvasItem.xml:669
msgid "The [CanvasItem] has exited the canvas."
-msgstr ""
+msgstr "El [CanvasItem] ha salido del canvas."
-#: doc/classes/CanvasItem.xml:662 doc/classes/CanvasItem.xml:688
+#: doc/classes/CanvasItem.xml:672 doc/classes/CanvasItem.xml:698
msgid "The [CanvasItem] will inherit the filter from its parent."
-msgstr ""
+msgstr "El [CanvasItem] heredará el filtro de su padre."
-#: doc/classes/CanvasItem.xml:665
+#: doc/classes/CanvasItem.xml:675
msgid ""
"The texture filter reads from the nearest pixel only. The simplest and "
"fastest method of filtering. Useful for pixel art."
msgstr ""
+"El filtro de textura se lee sólo desde el píxel más cercano. El método más "
+"simple y rápido de filtrado. Útil para el pixel art."
-#: doc/classes/CanvasItem.xml:668
+#: doc/classes/CanvasItem.xml:678
msgid ""
"The texture filter blends between the nearest four pixels. Use this for most "
"cases where you want to avoid a pixelated style."
msgstr ""
+"El filtro de textura se mezcla entre los cuatro píxeles más cercanos. Úsalo "
+"para la mayoría de los casos en los que quieras evitar un estilo pixelado."
-#: doc/classes/CanvasItem.xml:671
+#: doc/classes/CanvasItem.xml:681
msgid ""
"The texture filter reads from the nearest pixel in the nearest mipmap. This "
"is the fastest way to read from textures with mipmaps."
msgstr ""
+"El filtro de textura se lee desde el píxel más cercano en el mipmap más "
+"cercano. Esta es la forma más rápida de leer de las texturas con mipmaps."
-#: doc/classes/CanvasItem.xml:674
+#: doc/classes/CanvasItem.xml:684
msgid ""
"The texture filter blends between the nearest 4 pixels and between the "
"nearest 2 mipmaps. Use this for non-pixel art textures that may be viewed at "
"a low scale (e.g. due to [Camera2D] zoom), as mipmaps are important to "
"smooth out pixels that are smaller than on-screen pixels."
msgstr ""
+"El filtro de textura se mezcla entre los 4 píxeles más cercanos y entre los "
+"2 mipmaps más cercanos. Utilízalo para texturas artísticas que no sean "
+"píxeles y que se puedan ver a baja escala (por ejemplo, debido al zoom "
+"[Camera2D]), ya que los mipmaps son importantes para suavizar los píxeles "
+"que son más pequeños que los de la pantalla."
-#: doc/classes/CanvasItem.xml:677
+#: doc/classes/CanvasItem.xml:687
msgid ""
"The texture filter reads from the nearest pixel, but selects a mipmap based "
"on the angle between the surface and the camera view. This reduces artifacts "
@@ -13734,8 +14811,14 @@ msgid ""
"[b]Note:[/b] This texture filter is rarely useful in 2D projects. [constant "
"TEXTURE_FILTER_NEAREST_WITH_MIPMAPS] is usually more appropriate."
msgstr ""
+"El filtro de textura lee desde el píxel más cercano, pero selecciona un "
+"mipmap basado en el ángulo entre la superficie y la vista de la cámara. Esto "
+"reduce los artefactos en las superficies que están casi en línea con la "
+"cámara.\n"
+"[b]Nota:[/b] Este filtro de textura es raramente útil en proyectos 2D. La "
+"[constant TEXTURE_FILTER_NEAREST_WITH_MIPMAPS] es normalmente más apropiada."
-#: doc/classes/CanvasItem.xml:681
+#: doc/classes/CanvasItem.xml:691
msgid ""
"The texture filter blends between the nearest 4 pixels and selects a mipmap "
"based on the angle between the surface and the camera view. This reduces "
@@ -13745,28 +14828,37 @@ msgid ""
"[b]Note:[/b] This texture filter is rarely useful in 2D projects. [constant "
"TEXTURE_FILTER_LINEAR_WITH_MIPMAPS] is usually more appropriate."
msgstr ""
+"El filtro de textura se mezcla entre los 4 píxeles más cercanos y selecciona "
+"un mipmap basado en el ángulo entre la superficie y la vista de la cámara. "
+"Esto reduce los artefactos en las superficies que están casi en línea con la "
+"cámara. Esta es la más lenta de las opciones de filtrado, pero da como "
+"resultado una textura de la más alta calidad.\n"
+"[b]Nota:[/b] Este filtro de textura es raramente útil en proyectos 2D. La "
+"[constant TEXTURE_FILTER_LINEAR_WITH_MIPMAPS] es normalmente más apropiada."
-#: doc/classes/CanvasItem.xml:691
+#: doc/classes/CanvasItem.xml:701
msgid "Texture will not repeat."
-msgstr ""
+msgstr "La textura no se repetirá."
-#: doc/classes/CanvasItem.xml:694
+#: doc/classes/CanvasItem.xml:704
msgid "Texture will repeat normally."
-msgstr ""
+msgstr "La textura se repetirá normalmente."
-#: doc/classes/CanvasItem.xml:697
+#: doc/classes/CanvasItem.xml:707
msgid ""
"Texture will repeat in a 2x2 tiled mode, where elements at even positions "
"are mirrored."
msgstr ""
+"La textura se repetirá en un modo de mosaico 2x2, donde los elementos en "
+"posiciones impares se reflejan."
-#: doc/classes/CanvasItem.xml:700
+#: doc/classes/CanvasItem.xml:710
msgid "Represents the size of the [enum TextureRepeat] enum."
-msgstr ""
+msgstr "Representa el tamaño del enum [enum TextureRepeat]."
#: doc/classes/CanvasItemMaterial.xml:4
msgid "A material for [CanvasItem]s."
-msgstr ""
+msgstr "Un material para [CanvasItem]s."
#: doc/classes/CanvasItemMaterial.xml:7
msgid ""
@@ -13775,15 +14867,22 @@ msgid ""
"behaviors for textures. Use a [ShaderMaterial] to more fully customize a "
"material's interactions with a [CanvasItem]."
msgstr ""
+"Los [CanvasItemMaterial]s proporcionan un medio de modificar las texturas "
+"asociadas a un CanvasItem. Se especializan en describir los comportamientos "
+"de mezcla e iluminación de las texturas. Utiliza un [ShaderMaterial] para "
+"personalizar más completamente las interacciones de un material con un "
+"[CanvasItem]."
#: doc/classes/CanvasItemMaterial.xml:15
msgid ""
"The manner in which a material's rendering is applied to underlying textures."
msgstr ""
+"La manera en que la representación de un material se aplica a las texturas "
+"inferiores."
#: doc/classes/CanvasItemMaterial.xml:18
msgid "The manner in which material reacts to lighting."
-msgstr ""
+msgstr "La manera en que el material reacciona a la iluminación."
#: doc/classes/CanvasItemMaterial.xml:21
msgid ""
@@ -13792,6 +14891,10 @@ msgid ""
"[b]Note:[/b] This property is only used and visible in the editor if [member "
"particles_animation] is [code]true[/code]."
msgstr ""
+"El número de columnas en la spritesheet asignada como [Texture2D] para un "
+"[GPUParticles2D] o [CPUParticles2D].\n"
+"[b]Nota:[/b] Esta propiedad sólo se utiliza y es visible en el editor si "
+"[member particles_animation] es [code]true[/code]."
#: doc/classes/CanvasItemMaterial.xml:25
msgid ""
@@ -13799,6 +14902,9 @@ msgid ""
"[b]Note:[/b] This property is only used and visible in the editor if [member "
"particles_animation] is [code]true[/code]."
msgstr ""
+"Si [code]true[/code], la animación de las partículas se hará en bucle.\n"
+"[b]Nota:[/b] Esta propiedad sólo se usa y es visible en el editor si [member "
+"particles_animation] es [code]true[/code]."
#: doc/classes/CanvasItemMaterial.xml:29
msgid ""
@@ -13807,6 +14913,10 @@ msgid ""
"[b]Note:[/b] This property is only used and visible in the editor if [member "
"particles_animation] is [code]true[/code]."
msgstr ""
+"El número de filas en la spriteheet asignado como [Texture2D] para un "
+"[GPUParticles2D] o [CPUParticles2D].\n"
+"[b]Nota:[/b] Esta propiedad sólo se usa y es visible en el editor si [member "
+"particles_animation] es [code]true[/code]."
#: doc/classes/CanvasItemMaterial.xml:33
msgid ""
@@ -13817,48 +14927,61 @@ msgid ""
"This property (and other [code]particles_anim_*[/code] properties that "
"depend on it) has no effect on other types of nodes."
msgstr ""
+"Si [code]true[/code], habilitar las características de animación basadas en "
+"spritesheets cuando se asignen a los nodos [GPUParticles2D] y "
+"[CPUParticles2D]. El [member ParticlesMaterial.anim_speed] o el [member "
+"CPUParticles2D.anim_speed] también debe estar configurado con un valor "
+"positivo para que la animación se reproduzca.\n"
+"Esta propiedad (y otras propiedades [code]particles_anim_*[/code] que "
+"dependen de ella) no tiene ningún efecto sobre otros tipos de nodos."
#: doc/classes/CanvasItemMaterial.xml:39
msgid ""
"Mix blending mode. Colors are assumed to be independent of the alpha "
"(opacity) value."
msgstr ""
+"Modo de mezcla. Se supone que los colores son independientes del valor alfa "
+"(opacidad)."
#: doc/classes/CanvasItemMaterial.xml:42
msgid "Additive blending mode."
-msgstr ""
+msgstr "Modo de mezcla de añadidos."
#: doc/classes/CanvasItemMaterial.xml:45
msgid "Subtractive blending mode."
-msgstr ""
+msgstr "Modo de mezcla de substracción."
#: doc/classes/CanvasItemMaterial.xml:48
msgid "Multiplicative blending mode."
-msgstr ""
+msgstr "Modo de mezcla multiplicativo."
#: doc/classes/CanvasItemMaterial.xml:51
msgid ""
"Mix blending mode. Colors are assumed to be premultiplied by the alpha "
"(opacity) value."
msgstr ""
+"Modo de mezcla Mix. Se supone que los colores se premultiplican por el valor "
+"alfa (opacidad)."
#: doc/classes/CanvasItemMaterial.xml:54
msgid ""
"Render the material using both light and non-light sensitive material "
"properties."
msgstr ""
+"Renderizar el material utilizando tanto las propiedades de los materiales "
+"sensibles a la luz como las que no lo son."
#: doc/classes/CanvasItemMaterial.xml:57
msgid "Render the material as if there were no light."
-msgstr ""
+msgstr "Renderiza el material como si no hubiera luz."
#: doc/classes/CanvasItemMaterial.xml:60
msgid "Render the material as if there were only light."
-msgstr ""
+msgstr "Renderizar el material como si sólo hubiera luz."
#: doc/classes/CanvasLayer.xml:4
msgid "Canvas drawing layer."
-msgstr ""
+msgstr "Capa de dibujo de canvas."
#: doc/classes/CanvasLayer.xml:7
msgid ""
@@ -13869,26 +14992,35 @@ msgid ""
"index 1 will be drawn above. This is very useful for HUDs (in layer 1+ or "
"above), or backgrounds (in layer -1 or below)."
msgstr ""
+"Capa de dibujo de canvas. Los nodos que son hijos directos o indirectos de "
+"una [CanvasLayer] serán dibujados en esa capa. La capa es un índice numérico "
+"que define el orden de dibujo. La escena 2D por defecto se dibuja con el "
+"índice 0, por lo que una [CanvasLayer] con índice -1 se dibujará abajo, y "
+"una con índice 1 se dibujará arriba. Esto es muy útil para los HUD (en la "
+"capa 1+ o superior), o para los fondos (en la capa -1 o inferior)."
#: doc/classes/CanvasLayer.xml:11
msgid "https://docs.godotengine.org/en/latest/tutorials/2d/canvas_layers.html"
-msgstr ""
+msgstr "https://docs.godotengine.org/es/latest/tutorials/2d/canvas_layers.html"
#: doc/classes/CanvasLayer.xml:18
msgid "Returns the RID of the canvas used by this layer."
-msgstr ""
+msgstr "Devuelve el RID del canvas usado por esta capa."
#: doc/classes/CanvasLayer.xml:24
msgid ""
"The custom [Viewport] node assigned to the [CanvasLayer]. If [code]null[/"
"code], uses the default viewport instead."
msgstr ""
+"El nodo personalizado [Viewport] asignado al [CanvasLayer]. Si [code]null[/"
+"code], utiliza en su lugar la vista por defecto."
#: doc/classes/CanvasLayer.xml:27
msgid ""
"Sets the layer to follow the viewport in order to simulate a pseudo 3D "
"effect."
msgstr ""
+"Establece la capa que sigue a la vista para simular un pseudo efecto 3D."
#: doc/classes/CanvasLayer.xml:30
msgid ""
@@ -13896,106 +15028,120 @@ msgid ""
"into the foreground should have increasing scales, while layers moving into "
"the background should have decreasing scales."
msgstr ""
+"Escala la capa cuando utiliza [member follow_viewport_enable]. Las capas que "
+"se mueven en el primer plano deben tener escalas crecientes, mientras que "
+"las capas que se mueven en el fondo deben tener escalas decrecientes."
#: doc/classes/CanvasLayer.xml:33
msgid "Layer index for draw order. Lower values are drawn first."
msgstr ""
+"Ãndice de capas para el orden de dibujado. Los valores más bajos se dibujan "
+"primero."
#: doc/classes/CanvasLayer.xml:36
msgid "The layer's base offset."
-msgstr ""
+msgstr "El desplazamiento de la capa base."
#: doc/classes/CanvasLayer.xml:39
msgid "The layer's rotation in radians."
-msgstr ""
+msgstr "La rotación de la capa en radianes."
#: doc/classes/CanvasLayer.xml:42
msgid "The layer's rotation in degrees."
-msgstr ""
+msgstr "La rotación de la capa en grados."
#: doc/classes/CanvasLayer.xml:45
msgid "The layer's scale."
-msgstr ""
+msgstr "La escala de la capa."
#: doc/classes/CanvasLayer.xml:48
msgid "The layer's transform."
-msgstr ""
+msgstr "La transformada de la capa."
#: doc/classes/CanvasModulate.xml:4
msgid "Tint the entire canvas."
-msgstr ""
+msgstr "Tiñe todo el canvas."
#: doc/classes/CanvasModulate.xml:7
msgid ""
"[CanvasModulate] tints the canvas elements using its assigned [member color]."
msgstr ""
+"[CanvasModulate] tiñe los elementos del lienzo usando su [member color] "
+"asignado."
#: doc/classes/CanvasModulate.xml:15
msgid "The tint color to apply."
-msgstr ""
+msgstr "El color del tinte a aplicar."
#: doc/classes/CapsuleMesh.xml:4 doc/classes/CapsuleMesh.xml:7
msgid "Class representing a capsule-shaped [PrimitiveMesh]."
-msgstr ""
+msgstr "Clase que representa una forma de capsula [PrimitiveMesh]."
#: doc/classes/CapsuleMesh.xml:15
msgid "Height of the capsule mesh from the center point."
-msgstr ""
+msgstr "La altura de la malla de la cápsula desde el punto central."
#: doc/classes/CapsuleMesh.xml:18
msgid "Number of radial segments on the capsule mesh."
-msgstr ""
+msgstr "Número de segmentos radiales en la malla de la cápsula."
#: doc/classes/CapsuleMesh.xml:21
msgid "Radius of the capsule mesh."
-msgstr ""
+msgstr "El radio de la malla de la cápsula."
#: doc/classes/CapsuleMesh.xml:24
msgid "Number of rings along the height of the capsule."
-msgstr ""
+msgstr "Número de anillos a lo largo de la altura de la cápsula."
#: doc/classes/CapsuleShape2D.xml:4 doc/classes/CapsuleShape2D.xml:7
msgid "Capsule shape for 2D collisions."
-msgstr ""
+msgstr "Forma de la cápsula para colisiones en 2D."
#: doc/classes/CapsuleShape2D.xml:15 doc/classes/CapsuleShape3D.xml:15
msgid "The capsule's height."
-msgstr ""
+msgstr "La altura de la cápsula."
#: doc/classes/CapsuleShape2D.xml:18 doc/classes/CapsuleShape3D.xml:18
msgid "The capsule's radius."
-msgstr ""
+msgstr "El radio de la cápsula."
#: doc/classes/CapsuleShape3D.xml:4 doc/classes/CapsuleShape3D.xml:7
msgid "Capsule shape for collisions."
-msgstr ""
+msgstr "Forma cápsula para las colisiones."
#: doc/classes/CenterContainer.xml:4
msgid "Keeps children controls centered."
-msgstr ""
+msgstr "Mantiene los controles de los hijos centrados."
#: doc/classes/CenterContainer.xml:7
msgid ""
"CenterContainer keeps children controls centered. This container keeps all "
"children to their minimum size, in the center."
msgstr ""
+"CenterContainer mantiene los controles de los niños centrados. Este "
+"contenedor mantiene a todos los niños a su tamaño mínimo, en el centro."
#: doc/classes/CenterContainer.xml:15
msgid ""
"If [code]true[/code], centers children relative to the [CenterContainer]'s "
"top left corner."
msgstr ""
+"Si [code]true[/code], centra a los hijos en relación con la esquina superior "
+"izquierda del [CenterContainer]."
#: doc/classes/CharFXTransform.xml:4
msgid ""
"Controls how an individual character will be displayed in a [RichTextEffect]."
msgstr ""
+"Controla cómo se mostrará un personaje individual en un [RichTextEffect]."
#: doc/classes/CharFXTransform.xml:7
msgid ""
"By setting various properties on this object, you can control how individual "
"characters will be displayed in a [RichTextEffect]."
msgstr ""
+"Al establecer varias propiedades en este objeto, puede controlar cómo se "
+"mostrarán los caracteres individuales en un [RichTextEffect]."
#: doc/classes/CharFXTransform.xml:10 doc/classes/RichTextEffect.xml:16
#: doc/classes/RichTextLabel.xml:11
@@ -14003,17 +15149,22 @@ msgid ""
"https://docs.godotengine.org/en/latest/tutorials/gui/bbcode_in_richtextlabel."
"html"
msgstr ""
+"https://docs.godotengine.org/es/latest/tutorials/gui/bbcode_in_richtextlabel."
+"html"
#: doc/classes/CharFXTransform.xml:11 doc/classes/RichTextEffect.xml:17
msgid ""
"https://github.com/Eoin-ONeill-Yokai/Godot-Rich-Text-Effect-Test-Project"
msgstr ""
+"https://github.com/Eoin-ONeill-Yokai/Godot-Rich-Text-Effect-Test-Project"
#: doc/classes/CharFXTransform.xml:17 doc/classes/CharFXTransform.xml:45
msgid ""
"The index of the current character (starting from 0). Setting this property "
"won't affect drawing."
msgstr ""
+"El índice del carácter actual (a partir de 0). Establecer esta propiedad no "
+"afectará al dibujo."
#: doc/classes/CharFXTransform.xml:20
msgid ""
@@ -14026,10 +15177,18 @@ msgid ""
"char_fx.character = ord(\"*\")\n"
"[/codeblock]"
msgstr ""
+"El código Unicode que el carácter usará. Esto sólo afecta a los caracteres "
+"no blancos. El [método @GDScript.ord] puede ser útil aquí. Por ejemplo, lo "
+"siguiente reemplazará todos los caracteres con asteriscos:\n"
+"[codeblock]\n"
+"# \"Char_fx\" es el parámetro CharFXTransform de \"process_custom_fx()`.\n"
+"# Ver la documentación de RichTextEffect para más detalles.\n"
+"char_fx.character = ord(\"*\")\n"
+"[/codeblock]"
#: doc/classes/CharFXTransform.xml:28
msgid "The color the character will be drawn with."
-msgstr ""
+msgstr "El color con el que se dibujará el carácter."
#: doc/classes/CharFXTransform.xml:31
msgid ""
@@ -14039,6 +15198,11 @@ msgid ""
"PAUSE_MODE_PROCESS].\n"
"[b]Note:[/b] Time still passes while the [RichTextLabel] is hidden."
msgstr ""
+"El tiempo transcurrido desde que el [RichTextLabel] fue añadido al árbol de "
+"la escena (en segundos). El tiempo se detiene cuando el proyecto se pausa, a "
+"menos que el [RichTextLabel] del [member Node.pause_mode] esté ajustado a "
+"[constant Node.PAUSE_MODE_PROCESS].\n"
+"[b]Nota:[/b] El tiempo sigue pasando mientras el [RichTextLabel] está oculto."
#: doc/classes/CharFXTransform.xml:35
msgid ""
@@ -14055,10 +15219,26 @@ msgid ""
"1)}\n"
"[/codeblock]"
msgstr ""
+"Contiene los argumentos pasados en la etiqueta de apertura de BBCode. Por "
+"defecto, los argumentos son cadenas; si su contenido coincide con un tipo "
+"como [bool], [int] o [float], se convertirán automáticamente. Los códigos de "
+"color en la forma [code]#rrggbb[/code] o [code]#rgb[/code] se convertirán en "
+"un [Color] opaco. Los argumentos de string pueden no contener espacios, "
+"incluso si son citados. Si están presentes, las comillas también estarán "
+"presentes en la string final.\n"
+"Por ejemplo, la etiqueta de apertura de BBCode [code][example foo=hello "
+"bar=true baz=42 color=#ffffff][/code] se asignará al siguiente "
+"[Dictionary]:\n"
+"[codeblock]\n"
+"{\"foo\": \"hola\", \"bar\": true, \"baz\": 42, \"color\": Color(1, 1, 1, "
+"1)}\n"
+"[/codeblock]"
#: doc/classes/CharFXTransform.xml:42
msgid "The position offset the character will be drawn with (in pixels)."
msgstr ""
+"La posición de desplazamiento con el que el carácter será dibujado (en "
+"píxeles)."
#: doc/classes/CharFXTransform.xml:48
msgid ""
@@ -14067,10 +15247,17 @@ msgid ""
"reflow to take the space of hidden characters. If this is not desired, set "
"their [member color] to [code]Color(1, 1, 1, 0)[/code] instead."
msgstr ""
+"Si [code]true[/code], el carácter será dibujado. Si [code]false[/code], el "
+"carácter se ocultará. Los caracteres alrededor de los caracteres ocultos se "
+"posicionarán para tomar el espacio de los caracteres ocultos. Si no se desea "
+"esto, establezca su [member color] a [code]Color(1, 1, 1, 0)[/code] en su "
+"lugar."
#: doc/classes/CheckBox.xml:4
msgid "Binary choice user interface widget. See also [CheckButton]."
msgstr ""
+"Widget de interfaz de usuario de elección binaria. Véase también "
+"[CheckButton]."
#: doc/classes/CheckBox.xml:7
msgid ""
@@ -14081,92 +15268,113 @@ msgid ""
"on something. For instance, it should be used when toggling it will only do "
"something once a confirmation button is pressed."
msgstr ""
+"Un checkbox permite al usuario hacer una elección binaria (eligiendo sólo "
+"una de las dos opciones posibles). Es similar a [CheckButton] en "
+"funcionalidad, pero tiene una apariencia diferente. Para seguir los patrones "
+"UX establecidos, se recomienda usar CheckBox cuando la selección [b]no[/b] "
+"tiene efecto inmediato en algo. Por ejemplo, debería usarse cuando al "
+"seleccionar, sólo se hará algo una vez que se pulse un botón de confirmación."
#: doc/classes/CheckBox.xml:21
msgid "The vertical offset used when rendering the check icons (in pixels)."
msgstr ""
+"El desplazamiento vertical utilizado al renderizar los check icons (en "
+"píxeles)."
#: doc/classes/CheckBox.xml:24
msgid "The check icon to display when the [CheckBox] is checked."
-msgstr ""
+msgstr "El check icon que se muestra cuando se marca el [CheckBox]."
#: doc/classes/CheckBox.xml:27
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is disabled."
msgstr ""
+"El [StyleBox] a mostrar como fondo cuando el [CheckBox] está desactivado."
#: doc/classes/CheckBox.xml:30
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is focused."
-msgstr ""
+msgstr "El [StyleBox] a mostrar como fondo cuando se enfoca el [CheckBox]."
#: doc/classes/CheckBox.xml:33
msgid "The [Font] to use for the [CheckBox] text."
-msgstr ""
+msgstr "La [Font] a usar para el texto de [CheckBox]."
#: doc/classes/CheckBox.xml:36
msgid "The [CheckBox] text's font color."
-msgstr ""
+msgstr "El color de la fuente del texto [CheckBox]."
#: doc/classes/CheckBox.xml:39
msgid "The [CheckBox] text's font color when it's disabled."
-msgstr ""
+msgstr "El color de la fuente del texto [CheckBox] cuando está desactivado."
#: doc/classes/CheckBox.xml:42
msgid "The [CheckBox] text's font color when it's hovered."
msgstr ""
+"El color de la fuente del texto [CheckBox] cuando es cursor esta encima de "
+"él."
#: doc/classes/CheckBox.xml:45
msgid "The [CheckBox] text's font color when it's hovered and pressed."
msgstr ""
+"El color de la fuente del texto del [CheckBox] cuando el cursor se encuentra "
+"encima de él y se presiona."
#: doc/classes/CheckBox.xml:48
msgid "The [CheckBox] text's font color when it's pressed."
-msgstr ""
+msgstr "El color de la fuente del texto [CheckBox] cuando se presiona."
#: doc/classes/CheckBox.xml:51
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered."
msgstr ""
+"El [StyleBox] para mostrar como fondo cuando el cursor esta encima de el "
+"[CheckBox]."
#: doc/classes/CheckBox.xml:54
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered and "
"pressed."
msgstr ""
+"El [StyleBox] a mostrar como fondo cuando el cursor se encuentra encima de "
+"el [CheckBox] y se presiona."
#: doc/classes/CheckBox.xml:57
msgid "The separation between the check icon and the text (in pixels)."
-msgstr ""
+msgstr "La separación entre el check icon y el texto (en píxeles)."
#: doc/classes/CheckBox.xml:60 doc/classes/CheckButton.xml:57
msgid "The [StyleBox] to display as a background."
-msgstr ""
+msgstr "El [StyleBox] para mostrar como fondo."
#: doc/classes/CheckBox.xml:63
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is pressed."
-msgstr ""
+msgstr "El [StyleBox] para mostrar como fondo cuando se pulsa el [CheckBox]."
#: doc/classes/CheckBox.xml:66
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is checked."
msgstr ""
+"Si el [CheckBox] está configurado como un botón de radio, el icono que se "
+"muestra cuando se marca el [CheckBox]."
#: doc/classes/CheckBox.xml:69
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is unchecked."
msgstr ""
+"Si el [CheckBox] está configurado como un botón de radio, el icono que "
+"aparece cuando el [CheckBox] esta deseleccionado."
#: doc/classes/CheckBox.xml:72
msgid "The check icon to display when the [CheckBox] is unchecked."
-msgstr ""
+msgstr "El check icon que aparece cuando el [CheckBox] está deseleccionado."
#: doc/classes/CheckButton.xml:4
msgid "Checkable button. See also [CheckBox]."
-msgstr ""
+msgstr "Botón chequeable. Véase también [CheckBox]."
#: doc/classes/CheckButton.xml:7
msgid ""
@@ -14177,84 +15385,110 @@ msgid ""
"used if toggling it enables/disables a setting without requiring the user to "
"press a confirmation button."
msgstr ""
+"CheckButton es un botón de selección que se muestra como un campo de "
+"selección. Es similar a [CheckBox] en funcionalidad, pero tiene una "
+"apariencia diferente. Para seguir los patrones UX establecidos, se "
+"recomienda usar CheckButton cuando al conmutar se tiene un efecto "
+"[b]inmediato[/b] sobre algo. Por ejemplo, debería usarse si al conmutar se "
+"activa/desactiva una configuración sin necesidad de que el usuario pulse un "
+"botón de confirmación."
#: doc/classes/CheckButton.xml:21
msgid "The vertical offset used when rendering the toggle icons (in pixels)."
msgstr ""
+"El desplazamiento vertical que se utiliza al renderizar los iconos de "
+"conmutación (en píxeles)."
#: doc/classes/CheckButton.xml:24
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is disabled."
msgstr ""
+"El [StyleBox] a mostrar como fondo cuando el [CheckButton] está desactivado."
#: doc/classes/CheckButton.xml:27
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is focused."
msgstr ""
+"El [StyleBox] a mostrar como fondo cuando el [CheckButton] está enfocado."
#: doc/classes/CheckButton.xml:30
msgid "The [Font] to use for the [CheckButton] text."
-msgstr ""
+msgstr "La [Font] que se usará para el texto del [CheckButton]."
#: doc/classes/CheckButton.xml:33
msgid "The [CheckButton] text's font color."
-msgstr ""
+msgstr "El color de la fuente del texto del [CheckButton]."
#: doc/classes/CheckButton.xml:36
msgid "The [CheckButton] text's font color when it's disabled."
msgstr ""
+"El color de la fuente del texto del [CheckButton] cuando esté esta "
+"desactivado."
#: doc/classes/CheckButton.xml:39
msgid "The [CheckButton] text's font color when it's hovered."
msgstr ""
+"El color de la fuente del texto del [CheckButton] cuando el cursor esta "
+"encima de él."
#: doc/classes/CheckButton.xml:42
msgid "The [CheckButton] text's font color when it's hovered and pressed."
msgstr ""
+"El color de la fuente del texto del [CheckButton] cuando el cursor se "
+"mantiene encima de él y se presiona."
#: doc/classes/CheckButton.xml:45
msgid "The [CheckButton] text's font color when it's pressed."
-msgstr ""
+msgstr "El color de la fuente del texto del [CheckButton] cuando se presiona."
#: doc/classes/CheckButton.xml:48
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered."
msgstr ""
+"El [StyleBox] a mostrar como fondo cuando el cursor esta encima de el "
+"[CheckButton]."
#: doc/classes/CheckButton.xml:51
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered "
"and pressed."
msgstr ""
+"El [StyleBox] para mostrar como fondo cuando el cursor esta encima del "
+"[CheckButton] y se presiona."
#: doc/classes/CheckButton.xml:54
msgid "The separation between the toggle icon and the text (in pixels)."
-msgstr ""
+msgstr "La separación entre el icono de conmutación y el texto (en píxeles)."
#: doc/classes/CheckButton.xml:60
msgid "The icon to display when the [CheckButton] is unchecked."
-msgstr ""
+msgstr "El icono que se muestra cuando el [CheckButton] está deseleccionado."
#: doc/classes/CheckButton.xml:63
msgid "The icon to display when the [CheckButton] is unchecked and disabled."
msgstr ""
+"El icono que se muestra cuando el [CheckButton] está deseleccionado y "
+"desactivado."
#: doc/classes/CheckButton.xml:66
msgid "The icon to display when the [CheckButton] is checked."
-msgstr ""
+msgstr "El icono que se muestra cuando se selecciona el [CheckButton]."
#: doc/classes/CheckButton.xml:69
msgid "The icon to display when the [CheckButton] is checked and disabled."
msgstr ""
+"El icono que se muestra cuando el [CheckButton] está seleccionado y "
+"desactivado."
#: doc/classes/CheckButton.xml:72
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is pressed."
msgstr ""
+"El [StyleBox] para mostrar como fondo cuando se pulsa el [CheckButton]."
#: doc/classes/CircleShape2D.xml:4
msgid "Circular shape for 2D collisions."
-msgstr ""
+msgstr "Forma circular para colisiones 2D."
#: doc/classes/CircleShape2D.xml:7
msgid ""
@@ -14262,46 +15496,59 @@ msgid ""
"small characters and its collision detection with everything else is very "
"fast."
msgstr ""
+"Forma circular para colisiones 2D. Esta forma es útil para modelar bolas o "
+"pequeños personajes y su detección de colisiones con todo lo demás es muy "
+"rápida."
#: doc/classes/CircleShape2D.xml:15
msgid "The circle's radius."
-msgstr ""
+msgstr "El radio del círculo."
#: doc/classes/ClassDB.xml:4
msgid "Class information repository."
-msgstr ""
+msgstr "Clase Depósito Información."
#: doc/classes/ClassDB.xml:7
msgid "Provides access to metadata stored for every available class."
msgstr ""
+"Proporciona acceso a los metadatos almacenados para cada clase disponible."
#: doc/classes/ClassDB.xml:18
msgid ""
"Returns [code]true[/code] if you can instance objects from the specified "
"[code]class[/code], [code]false[/code] in other case."
msgstr ""
+"Devuelve [code]true[/code] si se pueden incluir objetos de la clase "
+"[code]class[/code] especificada, [code]false[/code] en otro caso."
#: doc/classes/ClassDB.xml:27
msgid "Returns whether the specified [code]class[/code] is available or not."
-msgstr ""
+msgstr "Devuelve si la [code]class[/code] especificada está disponible o no."
#: doc/classes/ClassDB.xml:36
msgid ""
"Returns a category associated with the class for use in documentation and "
"the Asset Library. Debug mode required."
msgstr ""
+"Devuelve una categoría asociada a la clase para su uso en la documentación y "
+"la Biblioteca de recursos. Se requiere el modo de depuración."
#: doc/classes/ClassDB.xml:47
msgid ""
"Returns the value of the integer constant [code]name[/code] of [code]class[/"
"code] or its ancestry. Always returns 0 when the constant could not be found."
msgstr ""
+"Devuelve el valor de la constante entera [code]name[/code] de [code]class[/"
+"code] o su ascendencia. Siempre devuelve 0 cuando la constante no se ha "
+"podido encontrar."
#: doc/classes/ClassDB.xml:58
msgid ""
"Returns an array with the names all the integer constants of [code]class[/"
"code] or its ancestry."
msgstr ""
+"Devuelve un arrayt con los nombres de todas las constantes enteras de "
+"[code]class[/code] o su ascendencia."
#: doc/classes/ClassDB.xml:69
msgid ""
@@ -14312,18 +15559,28 @@ msgid ""
"code], [code]return: (class_name, hint, hint_string, name, type, usage)[/"
"code]."
msgstr ""
+"Devuelve un array con todos los métodos de [code]class[/code] o su "
+"ascendencia si [code]no_inheritance[/code] es [code]false[/code]. Cada "
+"elemento del array es un [Dictionary] con las siguientes claves: [code]args[/"
+"code], [code]default_args[/code], [code]flags[/code], [code]id[/code], "
+"[code]name[/code], [code]return: (class_name, hint, hint_string, name, type, "
+"usage)[/code]."
#: doc/classes/ClassDB.xml:80
msgid ""
"Returns the value of [code]property[/code] of [code]class[/code] or its "
"ancestry."
msgstr ""
+"Devuelve el valor de la [code]property[/code] de la [code]class[/code] o de "
+"sus ancestros."
#: doc/classes/ClassDB.xml:91
msgid ""
"Returns an array with all the properties of [code]class[/code] or its "
"ancestry if [code]no_inheritance[/code] is [code]false[/code]."
msgstr ""
+"Devuelve un array con todas las propiedades de [code]class[/code] o su "
+"ascendencia si [code]no_inheritance[/code] es [code]false[/code]."
#: doc/classes/ClassDB.xml:102
msgid ""
@@ -14333,6 +15590,11 @@ msgid ""
"[code]name[/code], [code]return: (class_name, hint, hint_string, name, type, "
"usage)[/code]."
msgstr ""
+"Devuelve los datos de la [code]signal[/code] de la [code]class[/code] o su "
+"ascendencia. El valor devuelto es un [Dictionary] con las siguientes claves: "
+"[code]args[/code], [code]default_args[/code], [code]flags[/code], [code]id[/"
+"code], [code]name[/code], [code]return: (class_name, hint, hint_string, "
+"name, type, usage)[/code]."
#: doc/classes/ClassDB.xml:113
msgid ""
@@ -14340,136 +15602,173 @@ msgid ""
"if [code]no_inheritance[/code] is [code]false[/code]. Every element of the "
"array is a [Dictionary] as described in [method class_get_signal]."
msgstr ""
+"Devuelve un array con todas las señales de [code]class[/code] o su "
+"ascendencia si [code]no_inheritance[/code] es [code]false[/code]. Cada "
+"elemento del array es un [Dictionary] como se describe en [method "
+"class_get_signal]."
#: doc/classes/ClassDB.xml:124
msgid ""
"Returns whether [code]class[/code] or its ancestry has an integer constant "
"called [code]name[/code] or not."
msgstr ""
+"Devuelve si [code]class[/code] o su ascendencia tiene una constante entera "
+"llamada [code]name[/code] o no."
#: doc/classes/ClassDB.xml:137
msgid ""
"Returns whether [code]class[/code] (or its ancestry if [code]no_inheritance[/"
"code] is [code]false[/code]) has a method called [code]method[/code] or not."
msgstr ""
+"Devuelve si [code]class[/code] (o su ascendencia si [code]no_inheritance[/"
+"code] es [code]false[/code]) tiene un método llamado [code]method[/code] o "
+"no."
#: doc/classes/ClassDB.xml:148
msgid ""
"Returns whether [code]class[/code] or its ancestry has a signal called "
"[code]signal[/code] or not."
msgstr ""
+"Devuelve si [code]class[/code] o su ascendencia tiene una señal llamada "
+"[code]signal[/code] o no."
#: doc/classes/ClassDB.xml:161
msgid ""
"Sets [code]property[/code] value of [code]class[/code] to [code]value[/code]."
msgstr ""
+"Establece el valor de [code]property[/code] de [code]class[/code] a "
+"[code]value[/code]."
#: doc/classes/ClassDB.xml:168
msgid "Returns the names of all the classes available."
-msgstr ""
+msgstr "Devuelve los nombres de todas las clases disponibles."
#: doc/classes/ClassDB.xml:177
msgid ""
"Returns the names of all the classes that directly or indirectly inherit "
"from [code]class[/code]."
msgstr ""
+"Devuelve los nombres de todas las clases que directa o indirectamente "
+"heredan de [code]class[/code]."
#: doc/classes/ClassDB.xml:186
msgid "Returns the parent class of [code]class[/code]."
-msgstr ""
+msgstr "Devuelve la clase padre de [code]class[/code]."
#: doc/classes/ClassDB.xml:195
msgid "Creates an instance of [code]class[/code]."
-msgstr ""
+msgstr "Crea una instancia de [code]class[/code]."
#: doc/classes/ClassDB.xml:204
msgid "Returns whether this [code]class[/code] is enabled or not."
-msgstr ""
+msgstr "Devuelve si esta [code]clase[/code] está habilitada o no."
#: doc/classes/ClassDB.xml:215
msgid ""
"Returns whether [code]inherits[/code] is an ancestor of [code]class[/code] "
"or not."
msgstr ""
+"Devuelve si [code]inherits[/code] es un ancestro de [code]class[/code] o no."
#: doc/classes/ClippedCamera3D.xml:4
msgid "A [Camera3D] that includes collision."
-msgstr ""
+msgstr "Una [Camera3D] que incluye colisión."
#: doc/classes/ClippedCamera3D.xml:7
msgid ""
"This node extends [Camera3D] to add collisions with [Area3D] and/or "
"[PhysicsBody3D] nodes. The camera cannot move through colliding objects."
msgstr ""
+"Este nodo extiende la [Camera3D] para añadir colisiones con los nodos "
+"[Area3D] y/o [PhysicsBody3D]. La cámara no puede moverse a través de los "
+"objetos que colisionan."
#: doc/classes/ClippedCamera3D.xml:18
msgid ""
"Adds a collision exception so the camera does not collide with the specified "
"node."
msgstr ""
+"Añade una excepción de colisión para que la cámara no colisione con el nodo "
+"especificado."
#: doc/classes/ClippedCamera3D.xml:27
msgid ""
"Adds a collision exception so the camera does not collide with the specified "
"[RID]."
msgstr ""
+"Añade una excepción de colisión para que la cámara no colisione con el [RID] "
+"especificado."
#: doc/classes/ClippedCamera3D.xml:34
msgid "Removes all collision exceptions."
-msgstr ""
+msgstr "Elimina todas las excepciones de colisión."
#: doc/classes/ClippedCamera3D.xml:41
msgid "Returns the distance the camera has been offset due to a collision."
msgstr ""
+"Devuelve la distancia a la que la cámara ha sido desplazada debido a una "
+"colisión."
#: doc/classes/ClippedCamera3D.xml:50
msgid ""
"Returns [code]true[/code] if the specified bit index is on.\n"
"[b]Note:[/b] Bit indices range from 0-19."
msgstr ""
+"Devuelve [code]true[/code] si el índice de bits especificado está activado.\n"
+"[b]Nota:[/b] Los índices de bits van de 0 a 19."
#: doc/classes/ClippedCamera3D.xml:60
msgid "Removes a collision exception with the specified node."
-msgstr ""
+msgstr "Elimina una excepción de colisión con el nodo especificado."
#: doc/classes/ClippedCamera3D.xml:69
msgid "Removes a collision exception with the specified [RID]."
-msgstr ""
+msgstr "Elimina una excepción de colisión con el [RID] especificado."
#: doc/classes/ClippedCamera3D.xml:80
msgid ""
"Sets the specified bit index to the [code]value[/code].\n"
"[b]Note:[/b] Bit indices range from 0-19."
msgstr ""
+"Establece el índice de bits especificado en el [code]value[/code].\n"
+"[b]Nota:[/b] Los índices de bits van de 0 a 19."
#: doc/classes/ClippedCamera3D.xml:87
msgid "If [code]true[/code], the camera stops on contact with [Area3D]s."
msgstr ""
+"Si [code]true[/code], la cámara se detiene al contacto con la o las "
+"[Area3D]s."
#: doc/classes/ClippedCamera3D.xml:90
msgid ""
"If [code]true[/code], the camera stops on contact with [PhysicsBody3D]s."
msgstr ""
+"Si [code]true[/code], la cámara se detiene al contacto con el o los "
+"[PhysicsBody3D]s."
#: doc/classes/ClippedCamera3D.xml:93
msgid ""
"The camera's collision mask. Only objects in at least one collision layer "
"matching the mask will be detected."
msgstr ""
+"La máscara de colisión de la cámara. Sólo se detectarán los objetos en se "
+"encuentren al menos en una capa de colisión que coincida con la máscara."
#: doc/classes/ClippedCamera3D.xml:96
msgid ""
"The camera's collision margin. The camera can't get closer than this "
"distance to a colliding object."
msgstr ""
+"El margen de colisión de la cámara. La cámara no puede acercarse más que "
+"esta distancia a un objeto en colisión."
#: doc/classes/ClippedCamera3D.xml:99
msgid "The camera's process callback. See [enum ProcessMode]."
-msgstr ""
+msgstr "El proceso de llamada de la cámara. Ver [enum ProcessMode]."
#: doc/classes/CollisionObject2D.xml:4
msgid "Base node for 2D collision objects."
-msgstr ""
+msgstr "Nodo base para objetos de colisión 2D."
#: doc/classes/CollisionObject2D.xml:7
msgid ""
@@ -14479,6 +15778,12 @@ msgid ""
"owners are not nodes and do not appear in the editor, but are accessible "
"through code using the [code]shape_owner_*[/code] methods."
msgstr ""
+"CollisionObject2D es la clase base de los objetos de física 2D. Puede "
+"contener cualquier número de colisiones 2D [Shape2D]. Cada forma debe ser "
+"asignada a un [i]propietario de la forma[/i]. El CollisionObject2D puede "
+"tener cualquier número de propietarios de formas. Los propietarios de formas "
+"no son nodos y no aparecen en el editor, pero son accesibles a través del "
+"código usando los métodos [code]shape_owner_*[/code]."
#: doc/classes/CollisionObject2D.xml:22
msgid ""
@@ -14487,32 +15792,44 @@ msgid ""
"[Shape2D]. Connect to the [code]input_event[/code] signal to easily pick up "
"these events."
msgstr ""
+"Acepta [InputEvent]s no manipulados. Requiere que [miembro input_pickable] "
+"sea [code]true[/code]. [code]shape_idx[/code] es el índice hijo de la "
+"[Shape2D] seleccionada. Conecta con la señal [code]input_event[/code] para "
+"recoger fácilmente estos eventos."
#: doc/classes/CollisionObject2D.xml:31 doc/classes/CollisionObject3D.xml:35
msgid ""
"Creates a new shape owner for the given object. Returns [code]owner_id[/"
"code] of the new owner for future reference."
msgstr ""
+"Crea un nuevo dueño de la forma para el objeto dado. Devuelve "
+"[code]owner_id[/code] del nuevo propietario para futuras referencias."
#: doc/classes/CollisionObject2D.xml:38 doc/classes/CollisionObject3D.xml:42
msgid "Returns the object's [RID]."
-msgstr ""
+msgstr "Devuelve el [RID] del objeto."
#: doc/classes/CollisionObject2D.xml:47
msgid ""
"Returns the [code]one_way_collision_margin[/code] of the shape owner "
"identified by given [code]owner_id[/code]."
msgstr ""
+"Devuelve el [code]one_way_collision_margin[/code] del propietario de la "
+"forma identificado por el [code]owner_id[/code] dado."
#: doc/classes/CollisionObject2D.xml:54 doc/classes/CollisionObject3D.xml:49
msgid ""
"Returns an [Array] of [code]owner_id[/code] identifiers. You can use these "
"ids in other methods that take [code]owner_id[/code] as an argument."
msgstr ""
+"Devuelve un [Array] de identificadores [code]owner_id[/code]. Puedes usar "
+"estos identificadores en otros métodos que toman [code]owner_id[/code] como "
+"argumento."
#: doc/classes/CollisionObject2D.xml:63 doc/classes/CollisionObject3D.xml:58
msgid "If [code]true[/code], the shape owner and its shapes are disabled."
msgstr ""
+"Si [code]true[/code], el propietario de la forma y sus formas se desactivan."
#: doc/classes/CollisionObject2D.xml:72
msgid ""
@@ -14520,52 +15837,59 @@ msgid ""
"this [CollisionObject2D] will not be reported to collided with "
"[CollisionObject2D]s."
msgstr ""
+"Devuelve [code]true[/code] si las colisiones para el propietario de la forma "
+"originadas por este [CollisionObject2D] no serán reportadas como "
+"colisionadas con los [CollisionObject2D]s."
#: doc/classes/CollisionObject2D.xml:81 doc/classes/CollisionObject3D.xml:67
msgid "Removes the given shape owner."
-msgstr ""
+msgstr "Elimina al dueño de la forma dada."
#: doc/classes/CollisionObject2D.xml:90 doc/classes/CollisionObject3D.xml:76
msgid "Returns the [code]owner_id[/code] of the given shape."
-msgstr ""
+msgstr "Devuelve el [code]owner_id[/code] de la forma dada."
#: doc/classes/CollisionObject2D.xml:101
msgid "Adds a [Shape2D] to the shape owner."
-msgstr ""
+msgstr "Añade un [Shape2D] al dueño de la forma."
#: doc/classes/CollisionObject2D.xml:110 doc/classes/CollisionObject3D.xml:96
msgid "Removes all shapes from the shape owner."
-msgstr ""
+msgstr "Elimina todas las formas del dueño de la forma."
#: doc/classes/CollisionObject2D.xml:119 doc/classes/CollisionObject3D.xml:105
msgid "Returns the parent object of the given shape owner."
-msgstr ""
+msgstr "Devuelve el objeto padre del propietario de la forma dada."
#: doc/classes/CollisionObject2D.xml:130
msgid "Returns the [Shape2D] with the given id from the given shape owner."
msgstr ""
+"Devuelve el [Shape2D] con la identificación dada por el dueño de la forma."
#: doc/classes/CollisionObject2D.xml:139 doc/classes/CollisionObject3D.xml:125
msgid "Returns the number of shapes the given shape owner contains."
msgstr ""
+"Devuelve el número de formas que contiene el propietario de la forma dada."
#: doc/classes/CollisionObject2D.xml:150
msgid ""
"Returns the child index of the [Shape2D] with the given id from the given "
"shape owner."
msgstr ""
+"Devuelve el índice de hijos de la [Shape2D] con el id dado del propietario "
+"de la forma."
#: doc/classes/CollisionObject2D.xml:159
msgid "Returns the shape owner's [Transform2D]."
-msgstr ""
+msgstr "Devuelve la forma del dueño [Transform2D]."
#: doc/classes/CollisionObject2D.xml:170 doc/classes/CollisionObject3D.xml:156
msgid "Removes a shape from the given shape owner."
-msgstr ""
+msgstr "Quita una forma del dueño de la forma dada."
#: doc/classes/CollisionObject2D.xml:181 doc/classes/CollisionObject3D.xml:167
msgid "If [code]true[/code], disables the given shape owner."
-msgstr ""
+msgstr "Si [code]true[/code], deshabilita al dueño de la forma dada."
#: doc/classes/CollisionObject2D.xml:192
msgid ""
@@ -14573,16 +15897,22 @@ msgid ""
"originating from this [CollisionObject2D] will not be reported to collided "
"with [CollisionObject2D]s."
msgstr ""
+"Si [code]enable[/code] es [code]true[/code], las colisiones para el "
+"propietario de la forma originadas por este [CollisionObject2D] no se "
+"comunicarán como colisiones con las de [CollisionObject2D]."
#: doc/classes/CollisionObject2D.xml:203
msgid ""
"Sets the [code]one_way_collision_margin[/code] of the shape owner identified "
"by given [code]owner_id[/code] to [code]margin[/code] pixels."
msgstr ""
+"Establece el [code]one_way_collision_margin[/code] del propietario de la "
+"forma identificado por el [code]owner_id[/code] dado a los píxeles del "
+"[code]margin[/code]."
#: doc/classes/CollisionObject2D.xml:214
msgid "Sets the [Transform2D] of the given shape owner."
-msgstr ""
+msgstr "Establece la [Transform2D] del propietario de la forma dada."
#: doc/classes/CollisionObject2D.xml:220
msgid ""
@@ -14591,6 +15921,10 @@ msgid ""
"input events. Requires at least one [code]collision_layer[/code] bit to be "
"set."
msgstr ""
+"Si [code]true[/code], este objeto es seleccionable. Un objeto seleccionable "
+"puede detectar el puntero del ratón entrando y saliendo, y si el ratón está "
+"dentro de él, informar de los eventos de entrada. Requiere al menos un bit "
+"[code]collision_layer[/code] para ser establecido."
#: doc/classes/CollisionObject2D.xml:232
msgid ""
@@ -14598,6 +15932,9 @@ msgid ""
"[code]true[/code] and at least one [code]collision_layer[/code] bit to be "
"set. See [method _input_event] for details."
msgstr ""
+"Emitido cuando ocurre un evento de entrada. Requiere que [member "
+"input_pickable] sea [code]true[/code] y que se establezca al menos un bit "
+"[code]collision_layer[/code]. Ver [method _input_event] para más detalles."
#: doc/classes/CollisionObject2D.xml:237
msgid ""
@@ -14605,6 +15942,9 @@ msgid ""
"[member input_pickable] to be [code]true[/code] and at least one "
"[code]collision_layer[/code] bit to be set."
msgstr ""
+"Emitido cuando el puntero del ratón entra en cualquiera de las formas de "
+"este objeto. Requiere que [member input_pickable] sea [code]true[/code] y "
+"que al menos un bit [code]collision_layer[/code] sea establecido."
#: doc/classes/CollisionObject2D.xml:242
msgid ""
@@ -14612,10 +15952,13 @@ msgid ""
"[member input_pickable] to be [code]true[/code] and at least one "
"[code]collision_layer[/code] bit to be set."
msgstr ""
+"Emitido cuando el puntero del ratón sale de todas las formas de este objeto. "
+"Requiere que [member input_pickable] sea [code]true[/code] y que al menos un "
+"bit [code]collision_layer[/code] esté activado."
#: doc/classes/CollisionObject3D.xml:4
msgid "Base node for collision objects."
-msgstr ""
+msgstr "Nodo base para objetos de colisión."
#: doc/classes/CollisionObject3D.xml:7
msgid ""
@@ -14625,6 +15968,12 @@ msgid ""
"owners are not nodes and do not appear in the editor, but are accessible "
"through code using the [code]shape_owner_*[/code] methods."
msgstr ""
+"CollisionObject3D es la clase base de los objetos de física. Puede contener "
+"cualquier número de colisiones [Shape3D]. Cada forma debe ser asignada a un "
+"[i]propietario de la forma[/i]. El CollisionObject3D puede tener cualquier "
+"número de propietarios de formas. Los propietarios de formas no son nodos y "
+"no aparecen en el editor, pero son accesibles a través del código usando los "
+"métodos [code]shape_owner_*[/code]."
#: doc/classes/CollisionObject3D.xml:26
msgid ""
@@ -14634,78 +15983,102 @@ msgid ""
"code]. Connect to the [code]input_event[/code] signal to easily pick up "
"these events."
msgstr ""
+"Acepta [InputEvent]s no manipulados. [code]click_position[/code] es la "
+"ubicación seleccionada en el espacio del mundo y [code]click_normal[/code] "
+"es el vector normal que se extiende desde la superficie seleccionada de la "
+"[Shape3D] en [code]shape_idx[/code]. Conéctese a la señal [code]input_event[/"
+"code] para recoger fácilmente estos eventos."
#: doc/classes/CollisionObject3D.xml:87
msgid "Adds a [Shape3D] to the shape owner."
-msgstr ""
+msgstr "Añade un [Shape3D] al dueño de la forma."
#: doc/classes/CollisionObject3D.xml:116
msgid "Returns the [Shape3D] with the given id from the given shape owner."
msgstr ""
+"Devuelve el [Shape3D] con la identificación dada por el dueño de la forma."
#: doc/classes/CollisionObject3D.xml:136
msgid ""
"Returns the child index of the [Shape3D] with the given id from the given "
"shape owner."
msgstr ""
+"Devuelve el índice de hijos de la [Forma3D] con la identificación dada del "
+"propietario de la forma."
#: doc/classes/CollisionObject3D.xml:145
msgid "Returns the shape owner's [Transform]."
-msgstr ""
+msgstr "Devuelve el [Transform] del dueño de la forma."
#: doc/classes/CollisionObject3D.xml:178
msgid "Sets the [Transform] of the given shape owner."
-msgstr ""
+msgstr "Establece la [Transform] del dueño de la forma dada."
#: doc/classes/CollisionObject3D.xml:184
msgid ""
"If [code]true[/code], the [CollisionObject3D] will continue to receive input "
"events as the mouse is dragged across its shapes."
msgstr ""
+"Si [code]true[/code], el [CollisionObject3D] continuará recibiendo eventos "
+"de entrada mientras el ratón es arrastrado a través de sus formas."
#: doc/classes/CollisionObject3D.xml:187
msgid ""
"If [code]true[/code], the [CollisionObject3D]'s shapes will respond to "
"[RayCast3D]s."
msgstr ""
+"Si [code]true[/code], las formas de [ColisiónObjeto3D] responderán a las de "
+"[RayCast3D]."
#: doc/classes/CollisionObject3D.xml:203
msgid ""
"Emitted when [method _input_event] receives an event. See its description "
"for details."
msgstr ""
+"Emitido cuando [method _input_event] recibe un evento. Vea su descripción "
+"para más detalles."
#: doc/classes/CollisionObject3D.xml:208
msgid "Emitted when the mouse pointer enters any of this object's shapes."
msgstr ""
+"Emitido cuando el puntero del ratón entra en cualquiera de las formas de "
+"este objeto."
#: doc/classes/CollisionObject3D.xml:213
msgid "Emitted when the mouse pointer exits all this object's shapes."
msgstr ""
+"Emitido cuando el puntero del ratón sale de todas las formas de este objeto."
#: doc/classes/CollisionPolygon2D.xml:4
msgid "Defines a 2D collision polygon."
-msgstr ""
+msgstr "Define un polígono de colisión en 2D."
#: doc/classes/CollisionPolygon2D.xml:7
msgid ""
"Provides a 2D collision polygon to a [CollisionObject2D] parent. Polygons "
"can be drawn in the editor or specified by a list of vertices."
msgstr ""
+"Proporciona un polígono de colisión 2D a un padre [CollisionObject2D]. Los "
+"polígonos pueden ser dibujados en el editor o especificados por una lista de "
+"vértices."
#: doc/classes/CollisionPolygon2D.xml:15
msgid "Collision build mode. Use one of the [enum BuildMode] constants."
msgstr ""
+"Modo de construcción de colisión. Use una de las constantes de [enum "
+"BuildMode]."
#: doc/classes/CollisionPolygon2D.xml:18
msgid "If [code]true[/code], no collisions will be detected."
-msgstr ""
+msgstr "Si [code]true[/code], no se detectarán colisiones."
#: doc/classes/CollisionPolygon2D.xml:21
msgid ""
"If [code]true[/code], only edges that face up, relative to "
"[CollisionPolygon2D]'s rotation, will collide with other objects."
msgstr ""
+"Si [code]true[/code], sólo los bordes que están boca arriba, en relación con "
+"la rotación de [CollisionPolygon2D], colisionarán con otros objetos."
#: doc/classes/CollisionPolygon2D.xml:24
msgid ""
@@ -14713,6 +16086,9 @@ msgid ""
"the shape thicker, and work better for colliders that enter the polygon at a "
"high velocity."
msgstr ""
+"El margen utilizado para la colisión en un sentido (en píxeles). Valores más "
+"altos harán la forma más gruesa, y funcionará mejor para los colisionadores "
+"que entran en el polígono a alta velocidad."
#: doc/classes/CollisionPolygon2D.xml:27
msgid ""
@@ -14720,18 +16096,22 @@ msgid ""
"first. The returned value is a clone of the [PackedVector2Array], not a "
"reference."
msgstr ""
+"La lista de vértices del polígono. El punto final estará conectado al "
+"primero. El valor devuelto es un clon del [PackedVector2Array], no una "
+"referencia."
#: doc/classes/CollisionPolygon2D.xml:32
msgid "Collisions will include the polygon and its contained area."
-msgstr ""
+msgstr "Las colisiones incluirán el polígono y su área de contención."
#: doc/classes/CollisionPolygon2D.xml:35
msgid "Collisions will only include the polygon edges."
-msgstr ""
+msgstr "Las colisiones sólo incluirán los bordes del polígono."
#: doc/classes/CollisionPolygon3D.xml:4
msgid "Editor-only class for defining a collision polygon in 3D space."
msgstr ""
+"Clase de edición para definir un polígono de colisión en el espacio 3D."
#: doc/classes/CollisionPolygon3D.xml:7
msgid ""
@@ -14741,16 +16121,23 @@ msgid ""
"[Shape3D] for gameplay. Properties modified during gameplay will have no "
"effect."
msgstr ""
+"Permite editar los vértices de un polígono de colisión en un plano "
+"seleccionado. También puede establecer una profundidad perpendicular a ese "
+"plano. Esta clase sólo está disponible en el editor. No aparecerá en el "
+"árbol de la escena en tiempo de ejecución. Crea una [Shape3D] para el juego. "
+"Las propiedades modificadas durante el juego no tendrán ningún efecto."
#: doc/classes/CollisionPolygon3D.xml:15
msgid ""
"Length that the resulting collision extends in either direction "
"perpendicular to its polygon."
msgstr ""
+"Longitud que la colisión resultante se extiende en cualquier dirección "
+"perpendicular a su polígono."
#: doc/classes/CollisionPolygon3D.xml:18
msgid "If [code]true[/code], no collision will be produced."
-msgstr ""
+msgstr "Si [code]true[/code], no se producirá ninguna colisión."
#: doc/classes/CollisionPolygon3D.xml:21
msgid ""
@@ -14761,10 +16148,17 @@ msgid ""
"temporary variable and make changes before reassigning the [code]polygon[/"
"code] member."
msgstr ""
+"Conjunto de vértices que definen el polígono.\n"
+"[b]Nota:[/b] El valor devuelto es una copia del original. Los métodos que "
+"mutan el tamaño o las propiedades del valor de retorno no afectarán al "
+"polígono original. Para cambiar las propiedades del polígono, asígnalo a una "
+"variable temporal y haz los cambios antes de reasignar el miembro "
+"[code]polygon[/code]."
#: doc/classes/CollisionShape2D.xml:4
msgid "Node that represents collision shape data in 2D space."
msgstr ""
+"Nodo que representa los datos de la forma de colisión en el espacio 2D."
#: doc/classes/CollisionShape2D.xml:7
msgid ""
@@ -14775,6 +16169,12 @@ msgid ""
"Editor-only helper to create shapes, use [method CollisionObject2D."
"shape_owner_get_shape] to get the actual shape."
msgstr ""
+"Servicio de edición para crear y editar formas de colisión en el espacio 2D. "
+"Puede usar este nodo para representar todo tipo de formas de colisión, por "
+"ejemplo, añadirlo a un [Area2D] para darle una forma de detección, o "
+"añadirlo a un [PhysicsBody2D] para crear un objeto sólido. [b]IMPORTANTE[/"
+"b]: este es un ayudante sólo para el editor para crear formas, usa el "
+"[método CollisionObject2D.shape_owner_get_shape] para obtener la forma real."
#: doc/classes/CollisionShape2D.xml:10 doc/classes/CollisionShape3D.xml:10
#: doc/classes/PhysicsBody2D.xml:10 doc/classes/PhysicsBody3D.xml:10
@@ -14784,16 +16184,20 @@ msgid ""
"https://docs.godotengine.org/en/latest/tutorials/physics/"
"physics_introduction.html"
msgstr ""
+"https://docs.godotengine.org/es/latest/tutorials/physics/"
+"physics_introduction.html"
#: doc/classes/CollisionShape2D.xml:16 doc/classes/CollisionShape3D.xml:32
msgid "A disabled collision shape has no effect in the world."
-msgstr ""
+msgstr "Una forma de colisión desactivada no tiene ningún efecto en el mundo."
#: doc/classes/CollisionShape2D.xml:19
msgid ""
"Sets whether this collision shape should only detect collision on one side "
"(top or bottom)."
msgstr ""
+"Establece si esta forma de colisión sólo debe detectar la colisión en un "
+"lado (superior o inferior)."
#: doc/classes/CollisionShape2D.xml:22
msgid ""
@@ -14801,14 +16205,18 @@ msgid ""
"the shape thicker, and work better for colliders that enter the shape at a "
"high velocity."
msgstr ""
+"El margen utilizado para la colisión en un sentido (en píxeles). Valores más "
+"altos harán la forma más gruesa, y funcionará mejor para los colisionadores "
+"que entran en la forma a alta velocidad."
#: doc/classes/CollisionShape2D.xml:25 doc/classes/CollisionShape3D.xml:35
msgid "The actual shape owned by this collision shape."
-msgstr ""
+msgstr "La forma actual que posee esta forma de colisión."
#: doc/classes/CollisionShape3D.xml:4
msgid "Node that represents collision shape data in 3D space."
msgstr ""
+"Nodo que representa los datos de la forma de la colisión en el espacio 3D."
#: doc/classes/CollisionShape3D.xml:7
msgid ""
@@ -14819,30 +16227,41 @@ msgid ""
"Editor-only helper to create shapes, use [method CollisionObject3D."
"shape_owner_get_shape] to get the actual shape."
msgstr ""
+"Servicio de edición para crear y editar formas de colisión en el espacio 3D. "
+"Puede usar este nodo para representar todo tipo de formas de colisión, por "
+"ejemplo, añadirlo a un [Area3D] para darle una forma de detección, o "
+"añadirlo a un [PhysicsBody3D] para crear un objeto sólido. [b]IMPORTANTE[/"
+"b]: este es un ayudante sólo para el editor para crear formas, usa el "
+"[método CollisionObject3D.shape_owner_get_shape] para obtener la forma real."
#: doc/classes/CollisionShape3D.xml:17
msgid ""
"Sets the collision shape's shape to the addition of all its convexed "
"[MeshInstance3D] siblings geometry."
msgstr ""
+"Establece la forma de la colisión a la suma de toda la geometría convexa de "
+"sus hermanos [MeshInstance3D]."
#: doc/classes/CollisionShape3D.xml:26
msgid ""
"If this method exists within a script it will be called whenever the shape "
"resource has been modified."
msgstr ""
+"Si este método existe dentro de un script se llamará siempre que el recurso "
+"de forma haya sido modificado."
#: doc/classes/Color.xml:4
-msgid "Color in RGBA format with some support for ARGB format."
-msgstr ""
+#, fuzzy
+msgid "Color in RGBA format using floats on the range of 0 to 1."
+msgstr "Color en formato RGBA con algo de soporte para el formato ARGB."
#: doc/classes/Color.xml:7
+#, fuzzy
msgid ""
-"A color is represented by red, green, and blue [code](r, g, b)[/code] "
-"components. Additionally, [code]a[/code] represents the alpha component, "
-"often used for transparency. Values are in floating-point and usually range "
-"from 0 to 1. Some properties (such as [member CanvasItem.modulate]) may "
-"accept values greater than 1.\n"
+"A color represented by red, green, blue, and alpha (RGBA) components. The "
+"alpha component is often used for transparency. Values are in floating-point "
+"and usually range from 0 to 1. Some properties (such as CanvasItem.modulate) "
+"may accept values greater than 1 (overbright or HDR colors).\n"
"You can also create a color from standardized color names by using [method "
"@GDScript.ColorN] or directly using the color constants defined here. The "
"standardized color set is based on the [url=https://en.wikipedia.org/wiki/"
@@ -14853,6 +16272,21 @@ msgid ""
"code] if it's equal to [code]Color(0, 0, 0, 1)[/code] (opaque black). "
"Otherwise, a Color will always evaluate to [code]true[/code]."
msgstr ""
+"Un color es representado por los componentes rojo, verde y azul [code](r, g, "
+"b)[/code]. Además, [code]a[/code] representa el componente alfa, a menudo "
+"utilizado para la transparencia. Los valores son reales y normalmente van de "
+"0 a 1. Algunas propiedades (como [member CanvasItem.modulate]) pueden "
+"aceptar valores superiores a 1.\n"
+"También se puede crear un color a partir de nombres de colores "
+"estandarizados utilizando [method @GDScript.ColorN] o directamente "
+"utilizando las constantes de color definidas aquí. El conjunto de colores "
+"estandarizados se basa en los nombres de colores [url=https://en.wikipedia."
+"org/wiki/X11_color_names]X11[/url].\n"
+"Si desea suministrar valores en un rango de 0 a 255, debe utilizar [method "
+"@GDScript.Color8].\n"
+"[b]Nota:[/b] En un contexto booleano, un Color evaluará a [code]false[/code] "
+"si es igual a [code]Color(0, 0, 0, 1)[/code] (negro opaco). De lo contrario, "
+"un Color siempre se evaluará a [code]true[/code]."
#: doc/classes/Color.xml:21
msgid ""
@@ -14866,6 +16300,15 @@ msgid ""
"var c4 = Color(\"b2d90a\") # RGB format.\n"
"[/codeblock]"
msgstr ""
+"Construye un color a partir de una cadena de color hexadecimal HTML en "
+"formato ARGB o RGB. Véase también [método @GDScript.ColorN].\n"
+"[codeblock]\n"
+"# Cada uno de los siguientes crea el mismo color RGBA(178, 217, 10, 255).\n"
+"var c1 = Color(\"#ffb2d90a\") # Formato ARGB con \"#\".\n"
+"var c2 = Color(\"ffb2d90a\") # Formato ARGB.\n"
+"var c3 = Color(\"#b2d90a\") # Formato RGB con \"#\".\n"
+"var c4 = Color(\"b2d90a\") # Formato RGB.\n"
+"[/codeblock]"
#: doc/classes/Color.xml:37
msgid ""
@@ -14875,6 +16318,11 @@ msgid ""
"var c = Color(274) # Equivalent to RGBA(0, 0, 1, 18)\n"
"[/codeblock]"
msgstr ""
+"Construye un color a partir de un entero de 32 bits (cada byte representa un "
+"componente del perfil RGBA).\n"
+"[codeblock]\n"
+"var c = Color(274) # Equivalente a RGBA(0, 0, 1, 18)\n"
+"[/codeblock]"
#: doc/classes/Color.xml:51
msgid ""
@@ -14883,6 +16331,11 @@ msgid ""
"var red = Color(Color.red, 0.5) # 50% transparent red.\n"
"[/codeblock]"
msgstr ""
+"Construye un color a partir de un color existente, pero con un valor alfa "
+"personalizado.\n"
+"[codeblock]\n"
+"var rojo = Color(Color.red, 0.5) # 50% rojo transaparente.\n"
+"[/codeblock]"
#: doc/classes/Color.xml:67
msgid ""
@@ -14892,6 +16345,11 @@ msgid ""
"var c = Color(0.2, 1.0, 0.7) # Equivalent to RGBA(51, 255, 178, 255)\n"
"[/codeblock]"
msgstr ""
+"Construye un color a partir de un perfil RGB usando valores entre 0 y 1. "
+"Alfa siempre será 1.\n"
+"[codeblock]\n"
+"var c = Color(0.2, 1.0, 0.7) # Equivalente a RGBA(51, 255, 178, 255)\n"
+"[/codeblock]"
#: doc/classes/Color.xml:85
msgid ""
@@ -14900,6 +16358,10 @@ msgid ""
"var c = Color(0.2, 1.0, 0.7, 0.8) # Equivalent to RGBA(51, 255, 178, 204)\n"
"[/codeblock]"
msgstr ""
+"Construye un color a partir de un perfil RGBA usando valores entre 0 y 1.\n"
+"[codeblock]\n"
+"var c = Color(0.2, 1.0, 0.7, 0.8) # Equivalente a RGBA(51, 255, 178, 204)\n"
+"[/codeblock]"
#: doc/classes/Color.xml:97
msgid ""
@@ -14912,6 +16374,14 @@ msgid ""
"var blended_color = bg.blend(fg) # Brown with alpha of 75%\n"
"[/codeblock]"
msgstr ""
+"Devuelve un nuevo color resultante de mezclar este color con otro. Si el "
+"color es opaco, el resultado también es opaco. El segundo color puede tener "
+"un rango de valores alfa.\n"
+"[codeblock]\n"
+"var bg = Color(0.0, 1.0, 0.0, 0.5) # Verde con alfa a 50%\n"
+"var fg = Color(1.0, 0.0, 0.0, 0.5) # Rojo con alfa a 50%\n"
+"var blended_color = bg.blend(fg) # Marron con alfa a 75%\n"
+"[/codeblock]"
#: doc/classes/Color.xml:109
msgid ""
@@ -14922,6 +16392,12 @@ msgid ""
"255)\n"
"[/codeblock]"
msgstr ""
+"Devuelve el color más contrastado.\n"
+"[codeblock]\n"
+"var c = Color(0.3, 0.4, 0.9)\n"
+"var color_constrastado = c.contrasted() # Equivalente a RGBA(204, 229, 102, "
+"255)\n"
+"[/codeblock]"
#: doc/classes/Color.xml:122
msgid ""
@@ -14932,6 +16408,12 @@ msgid ""
"var darkgreen = green.darkened(0.2) # 20% darker than regular green\n"
"[/codeblock]"
msgstr ""
+"Devuelve un nuevo color resultante de oscurecer este color en el porcentaje "
+"especificado (proporción de 0 a 1).\n"
+"[codeblock]\n"
+"var verde = Color(0.0, 1.0, 0.0)\n"
+"var verdeoscuro = green.darkened(0.2) # 20% más oscuro que el verde\n"
+"[/codeblock]"
#: doc/classes/Color.xml:141
msgid ""
@@ -14942,6 +16424,12 @@ msgid ""
"79, 0.8) or Color8(100, 151, 201, 0.8)\n"
"[/codeblock]"
msgstr ""
+"Construye un color a partir de un perfil de HSV. [code]h[/code], [code]s[/"
+"code], y [code]v[/code] son valores entre 0 y 1.\n"
+"[codeblock]\n"
+"var c = Color.from_hsv(0.58, 0.5, 0.79, 0.8) # Equivalente a HSV(210, 50, "
+"79, 0.8) or Color8(100, 151, 201, 0.8)\n"
+"[/codeblock]"
#: doc/classes/Color.xml:151
msgid ""
@@ -14951,6 +16439,11 @@ msgid ""
"var inverted_color = c.inverted() # A color of an RGBA(178, 153, 26, 255)\n"
"[/codeblock]"
msgstr ""
+"Devuelve el color invertido [code](1 - r, 1 - g, 1 - b, a)[/code].\n"
+"[codeblock]\n"
+"var c = Color(0.3, 0.4, 0.9)\n"
+"var color_invertido = c.inverted() # Un color de un RGBA(178, 153, 26, 255)\n"
+"[/codeblock]"
#: doc/classes/Color.xml:164
msgid ""
@@ -14958,6 +16451,9 @@ msgid ""
"approximately equal, by running [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
+"Devuelve [code]true[/code] si este color y [code]color[/code] son "
+"aproximadamente iguales, ejecutando [method @GDScript.is_equal_approx] en "
+"cada componente."
#: doc/classes/Color.xml:175
msgid ""
@@ -14969,6 +16465,13 @@ msgid ""
"var li_c = c1.lerp(c2, 0.5) # A color of an RGBA(128, 128, 0, 255)\n"
"[/codeblock]"
msgstr ""
+"Devuelve la interpolación lineal con otro color. El factor de interpolación "
+"[code]t[/code] está entre 0 y 1.\n"
+"[codeblock]\n"
+"var c1 = Color(1.0, 0.0, 0.0)\n"
+"var c2 = Color(0.0, 1.0, 0.0)\n"
+"var li_c = c1.lerp(c2, 0.5) # Un color de un RGBA(128, 128, 0, 255)\n"
+"[/codeblock]"
#: doc/classes/Color.xml:189
msgid ""
@@ -14979,6 +16482,12 @@ msgid ""
"var lightgreen = green.lightened(0.2) # 20% lighter than regular green\n"
"[/codeblock]"
msgstr ""
+"Devuelve un nuevo color resultante de hacer este color más claro en el "
+"porcentaje especificado (proporción de 0 a 1).\n"
+"[codeblock]\n"
+"var verde = Color(0.0, 1.0, 0.0)\n"
+"var verdeclaro = green.lightened(0.2) # 20% más claro que el verde regular\n"
+"[/codeblock]"
#: doc/classes/Color.xml:200
msgid ""
@@ -14990,6 +16499,13 @@ msgid ""
"print(c.to_abgr32()) # Prints 4281565439\n"
"[/codeblock]"
msgstr ""
+"Devuelve el entero de 32 bits del color en formato ABGR (cada byte "
+"representa un componente del perfil ABGR). ABGR es la versión invertida del "
+"formato por defecto.\n"
+"[codeblock]\n"
+"var c = Color(1, 0.5, 0.2)\n"
+"print(c.to_abgr32()) # Imprime 4281565439\n"
+"[/codeblock]"
#: doc/classes/Color.xml:211
msgid ""
@@ -15001,6 +16517,13 @@ msgid ""
"print(c.to_abgr64()) # Prints -225178692812801\n"
"[/codeblock]"
msgstr ""
+"Devuelve el entero de 64 bits del color en formato ABGR (cada palabra "
+"representa un componente del perfil ABGR). ABGR es la versión invertida del "
+"formato por defecto.\n"
+"[codeblock]\n"
+"var c = Color(1, 0.5, 0.2)\n"
+"print(c.to_abgr64()) # Imprime -225178692812801\n"
+"[/codeblock]"
#: doc/classes/Color.xml:222
msgid ""
@@ -15011,6 +16534,13 @@ msgid ""
"print(c.to_argb32()) # Prints 4294934323\n"
"[/codeblock]"
msgstr ""
+"Devuelve el entero de 32 bits del color en formato ARGB (cada byte "
+"representa un componente del perfil ARGB). ARGB es más compatible con "
+"DirectX.\n"
+"[codeblock]\n"
+"var c = Color(1, 0.5, 0.2)\n"
+"print(c.to_argb32()) # Imprime 4294934323\n"
+"[/codeblock]"
#: doc/classes/Color.xml:233
msgid ""
@@ -15021,6 +16551,13 @@ msgid ""
"print(c.to_argb64()) # Prints -2147470541\n"
"[/codeblock]"
msgstr ""
+"Devuelve el entero de 64 bits del color en formato ARGB (cada palabra "
+"representa un componente del perfil ARGB). ARGB es más compatible con "
+"DirectX.\n"
+"[codeblock]\n"
+"var c = Color(1, 0.5, 0.2)\n"
+"print(c.to_argb64()) # Imprime -2147470541\n"
+"[/codeblock]"
#: doc/classes/Color.xml:246
msgid ""
@@ -15034,6 +16571,15 @@ msgid ""
"var s2 = c.to_html(false) # Returns \"ffffff\"\n"
"[/codeblock]"
msgstr ""
+"Devuelve la cadena de color hexadecimal HTML del color en formato ARGB (ex: "
+"[code]ff34f822[/code]).\n"
+"Poniendo [code]with_alpha[/code] en [code]false[/code] se excluye el alfa de "
+"la cadena hexadecimal.\n"
+"[codeblock]\n"
+"var c = Color(1, 1, 1, 0.5)\n"
+"var s1 = c.to_html() # Devuelve \"7fffffff\"\n"
+"var s2 = c.to_html(false) # Devuelve \"ffffff\"\n"
+"[/codeblock]"
#: doc/classes/Color.xml:259
msgid ""
@@ -15044,6 +16590,13 @@ msgid ""
"print(c.to_rgba32()) # Prints 4286526463\n"
"[/codeblock]"
msgstr ""
+"Devuelve el entero de 32 bits del color en formato RGBA (cada byte "
+"representa un componente del perfil RGBA). RGBA es el formato por defecto de "
+"Godot.\n"
+"[codeblock]\n"
+"var c = Color(1, 0.5, 0.2)\n"
+"print(c.to_rgba32()) # Imprime 4286526463\n"
+"[/codeblock]"
#: doc/classes/Color.xml:270
msgid ""
@@ -15054,644 +16607,656 @@ msgid ""
"print(c.to_rgba64()) # Prints -140736629309441\n"
"[/codeblock]"
msgstr ""
+"Devuelve el entero de 64 bits del color en formato RGBA (cada palabra "
+"representa un componente del perfil RGBA). RGBA es el formato por defecto de "
+"Godot.\n"
+"[codeblock]\n"
+"var c = Color(1, 0.5, 0.2)\n"
+"print(c.to_rgba64()) # Imprime -140736629309441\n"
+"[/codeblock]"
#: doc/classes/Color.xml:280
-msgid "Alpha value (range 0 to 1)."
+msgid ""
+"The color's alpha (transparency) component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:283
-msgid "Alpha value (range 0 to 255)."
+msgid "Wrapper for [member a] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:286
-msgid "Blue value (range 0 to 1)."
+msgid "The color's blue component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:289
-msgid "Blue value (range 0 to 255)."
+msgid "Wrapper for [member b] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:292
-msgid "Green value (range 0 to 1)."
+msgid "The color's green component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:295
-msgid "Green value (range 0 to 255)."
+msgid "Wrapper for [member g] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:298
-msgid "HSV hue value (range 0 to 1)."
-msgstr ""
+#, fuzzy
+msgid "The HSV hue of this color, on the range 0 to 1."
+msgstr "Valor del tono HSV (rango 0 a 1)."
#: doc/classes/Color.xml:301
-msgid "Red value (range 0 to 1)."
+msgid "The color's red component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:304
-msgid "Red value (range 0 to 255)."
+msgid "Wrapper for [member r] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:307
-msgid "HSV saturation value (range 0 to 1)."
-msgstr ""
+#, fuzzy
+msgid "The HSV saturation of this color, on the range 0 to 1."
+msgstr "Valor de saturación del HSV (rango 0 a 1)."
#: doc/classes/Color.xml:310
-msgid "HSV value (range 0 to 1)."
+msgid "The HSV value (brightness) of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:315
msgid "Alice blue color."
-msgstr ""
+msgstr "El color azul Alicia."
#: doc/classes/Color.xml:318
msgid "Antique white color."
-msgstr ""
+msgstr "Color blanco antiguo."
#: doc/classes/Color.xml:321
msgid "Aqua color."
-msgstr ""
+msgstr "Color agua."
#: doc/classes/Color.xml:324
msgid "Aquamarine color."
-msgstr ""
+msgstr "Color aguamarina."
#: doc/classes/Color.xml:327
msgid "Azure color."
-msgstr ""
+msgstr "Color Azure."
#: doc/classes/Color.xml:330
msgid "Beige color."
-msgstr ""
+msgstr "Color beige."
#: doc/classes/Color.xml:333
msgid "Bisque color."
-msgstr ""
+msgstr "Color bizcocho."
#: doc/classes/Color.xml:336
msgid "Black color."
-msgstr ""
+msgstr "Color negro."
#: doc/classes/Color.xml:339
msgid "Blanche almond color."
-msgstr ""
+msgstr "Color almendra blanca."
#: doc/classes/Color.xml:342
msgid "Blue color."
-msgstr ""
+msgstr "Color azul."
#: doc/classes/Color.xml:345
msgid "Blue violet color."
-msgstr ""
+msgstr "Color azul violáceo."
#: doc/classes/Color.xml:348
msgid "Brown color."
-msgstr ""
+msgstr "Color marrón."
#: doc/classes/Color.xml:351
msgid "Burly wood color."
-msgstr ""
+msgstr "El color de la madera fuerte."
#: doc/classes/Color.xml:354
msgid "Cadet blue color."
-msgstr ""
+msgstr "Color azul cadete."
#: doc/classes/Color.xml:357
msgid "Chartreuse color."
-msgstr ""
+msgstr "Color cartujo."
#: doc/classes/Color.xml:360
msgid "Chocolate color."
-msgstr ""
+msgstr "Color chocolate."
#: doc/classes/Color.xml:363
msgid "Coral color."
-msgstr ""
+msgstr "Color coral."
#: doc/classes/Color.xml:366
msgid "Cornflower color."
-msgstr ""
+msgstr "Color aciano."
#: doc/classes/Color.xml:369
msgid "Corn silk color."
-msgstr ""
+msgstr "Color de seda de maíz."
#: doc/classes/Color.xml:372
msgid "Crimson color."
-msgstr ""
+msgstr "Color carmesí."
#: doc/classes/Color.xml:375
msgid "Cyan color."
-msgstr ""
+msgstr "Color cian."
#: doc/classes/Color.xml:378
msgid "Dark blue color."
-msgstr ""
+msgstr "Color azul oscuro."
#: doc/classes/Color.xml:381
msgid "Dark cyan color."
-msgstr ""
+msgstr "Color cian oscuro."
#: doc/classes/Color.xml:384
msgid "Dark goldenrod color."
-msgstr ""
+msgstr "Color de vara dorada oscura."
#: doc/classes/Color.xml:387
msgid "Dark gray color."
-msgstr ""
+msgstr "Color gris oscuro."
#: doc/classes/Color.xml:390
msgid "Dark green color."
-msgstr ""
+msgstr "Color verde oscuro."
#: doc/classes/Color.xml:393
msgid "Dark khaki color."
-msgstr ""
+msgstr "Color caqui oscuro."
#: doc/classes/Color.xml:396
msgid "Dark magenta color."
-msgstr ""
+msgstr "Color magenta oscuro."
#: doc/classes/Color.xml:399
msgid "Dark olive green color."
-msgstr ""
+msgstr "Color verde oliva oscuro."
#: doc/classes/Color.xml:402
msgid "Dark orange color."
-msgstr ""
+msgstr "Color naranja oscuro."
#: doc/classes/Color.xml:405
msgid "Dark orchid color."
-msgstr ""
+msgstr "Color de orquídea oscura."
#: doc/classes/Color.xml:408
msgid "Dark red color."
-msgstr ""
+msgstr "Color rojo oscuro."
#: doc/classes/Color.xml:411
msgid "Dark salmon color."
-msgstr ""
+msgstr "Color salmón oscuro."
#: doc/classes/Color.xml:414
msgid "Dark sea green color."
-msgstr ""
+msgstr "Color verde mar oscuro."
#: doc/classes/Color.xml:417
msgid "Dark slate blue color."
-msgstr ""
+msgstr "Color azul pizarra oscuro."
#: doc/classes/Color.xml:420
msgid "Dark slate gray color."
-msgstr ""
+msgstr "Color gris pizarra oscuro."
#: doc/classes/Color.xml:423
msgid "Dark turquoise color."
-msgstr ""
+msgstr "Color turquesa oscuro."
#: doc/classes/Color.xml:426
msgid "Dark violet color."
-msgstr ""
+msgstr "Color violeta oscuro."
#: doc/classes/Color.xml:429
msgid "Deep pink color."
-msgstr ""
+msgstr "Color rosa intenso."
#: doc/classes/Color.xml:432
msgid "Deep sky blue color."
-msgstr ""
+msgstr "Color azul cielo profundo."
#: doc/classes/Color.xml:435
msgid "Dim gray color."
-msgstr ""
+msgstr "Color gris oscuro."
#: doc/classes/Color.xml:438
msgid "Dodger blue color."
-msgstr ""
+msgstr "Color azul de los Dodgers."
#: doc/classes/Color.xml:441
msgid "Firebrick color."
-msgstr ""
+msgstr "Color de ladrillo de fuego."
#: doc/classes/Color.xml:444
msgid "Floral white color."
-msgstr ""
+msgstr "Color blanco floral."
#: doc/classes/Color.xml:447
msgid "Forest green color."
-msgstr ""
+msgstr "Color verde del bosque."
#: doc/classes/Color.xml:450
msgid "Fuchsia color."
-msgstr ""
+msgstr "Color fucsia."
#: doc/classes/Color.xml:453
msgid "Gainsboro color."
-msgstr ""
+msgstr "Color Gainsboro."
#: doc/classes/Color.xml:456
msgid "Ghost white color."
-msgstr ""
+msgstr "Color blanco fantasma."
#: doc/classes/Color.xml:459
msgid "Gold color."
-msgstr ""
+msgstr "Color oro."
#: doc/classes/Color.xml:462
msgid "Goldenrod color."
-msgstr ""
+msgstr "Color de la vara de oro."
#: doc/classes/Color.xml:465
msgid "Gray color."
-msgstr ""
+msgstr "Color gris."
#: doc/classes/Color.xml:468
msgid "Green color."
-msgstr ""
+msgstr "Color verde."
#: doc/classes/Color.xml:471
msgid "Green yellow color."
-msgstr ""
+msgstr "Color amarillo verde."
#: doc/classes/Color.xml:474
msgid "Honeydew color."
-msgstr ""
+msgstr "Color melón."
#: doc/classes/Color.xml:477
msgid "Hot pink color."
-msgstr ""
+msgstr "Color rosa vivo."
#: doc/classes/Color.xml:480
msgid "Indian red color."
-msgstr ""
+msgstr "Color rojo indio."
#: doc/classes/Color.xml:483
msgid "Indigo color."
-msgstr ""
+msgstr "Color índigo."
#: doc/classes/Color.xml:486
msgid "Ivory color."
-msgstr ""
+msgstr "Color marfil."
#: doc/classes/Color.xml:489
msgid "Khaki color."
-msgstr ""
+msgstr "Color caqui."
#: doc/classes/Color.xml:492
msgid "Lavender color."
-msgstr ""
+msgstr "Color lavanda."
#: doc/classes/Color.xml:495
msgid "Lavender blush color."
-msgstr ""
+msgstr "Color de rubor lavanda."
#: doc/classes/Color.xml:498
msgid "Lawn green color."
-msgstr ""
+msgstr "Color verde césped."
#: doc/classes/Color.xml:501
msgid "Lemon chiffon color."
-msgstr ""
+msgstr "Color chifón limón."
#: doc/classes/Color.xml:504
msgid "Light blue color."
-msgstr ""
+msgstr "Color azul claro."
#: doc/classes/Color.xml:507
msgid "Light coral color."
-msgstr ""
+msgstr "Color coral claro."
#: doc/classes/Color.xml:510
msgid "Light cyan color."
-msgstr ""
+msgstr "Color cian claro."
#: doc/classes/Color.xml:513
msgid "Light goldenrod color."
-msgstr ""
+msgstr "Color de vara de oro claro."
#: doc/classes/Color.xml:516
msgid "Light gray color."
-msgstr ""
+msgstr "Color gris claro."
#: doc/classes/Color.xml:519
msgid "Light green color."
-msgstr ""
+msgstr "Color verde claro."
#: doc/classes/Color.xml:522
msgid "Light pink color."
-msgstr ""
+msgstr "Color rosa claro."
#: doc/classes/Color.xml:525
msgid "Light salmon color."
-msgstr ""
+msgstr "Color salmón claro."
#: doc/classes/Color.xml:528
msgid "Light sea green color."
-msgstr ""
+msgstr "Color verde mar claro."
#: doc/classes/Color.xml:531
msgid "Light sky blue color."
-msgstr ""
+msgstr "Color azul celeste."
#: doc/classes/Color.xml:534
msgid "Light slate gray color."
-msgstr ""
+msgstr "Color gris pizarra claro."
#: doc/classes/Color.xml:537
msgid "Light steel blue color."
-msgstr ""
+msgstr "Color azul acero claro."
#: doc/classes/Color.xml:540
msgid "Light yellow color."
-msgstr ""
+msgstr "Color amarillo claro."
#: doc/classes/Color.xml:543
msgid "Lime color."
-msgstr ""
+msgstr "Color lima."
#: doc/classes/Color.xml:546
msgid "Lime green color."
-msgstr ""
+msgstr "Color verde lima."
#: doc/classes/Color.xml:549
msgid "Linen color."
-msgstr ""
+msgstr "Color lino."
#: doc/classes/Color.xml:552
msgid "Magenta color."
-msgstr ""
+msgstr "Color magenta."
#: doc/classes/Color.xml:555
msgid "Maroon color."
-msgstr ""
+msgstr "Color granate."
#: doc/classes/Color.xml:558
msgid "Medium aquamarine color."
-msgstr ""
+msgstr "Color aguamarina medio."
#: doc/classes/Color.xml:561
msgid "Medium blue color."
-msgstr ""
+msgstr "Color azul medio."
#: doc/classes/Color.xml:564
msgid "Medium orchid color."
-msgstr ""
+msgstr "Color de orquídea medio."
#: doc/classes/Color.xml:567
msgid "Medium purple color."
-msgstr ""
+msgstr "Color púrpura medio."
#: doc/classes/Color.xml:570
msgid "Medium sea green color."
-msgstr ""
+msgstr "Color verde marino medio."
#: doc/classes/Color.xml:573
msgid "Medium slate blue color."
-msgstr ""
+msgstr "Color azul pizarra medio."
#: doc/classes/Color.xml:576
msgid "Medium spring green color."
-msgstr ""
+msgstr "Color verde primaveral medio."
#: doc/classes/Color.xml:579
msgid "Medium turquoise color."
-msgstr ""
+msgstr "Color turquesa medio."
#: doc/classes/Color.xml:582
msgid "Medium violet red color."
-msgstr ""
+msgstr "Color rojo violáceo medio."
#: doc/classes/Color.xml:585
msgid "Midnight blue color."
-msgstr ""
+msgstr "Color azul medianoche."
#: doc/classes/Color.xml:588
msgid "Mint cream color."
-msgstr ""
+msgstr "Color crema de menta."
#: doc/classes/Color.xml:591
msgid "Misty rose color."
-msgstr ""
+msgstr "Color rosa niebla."
#: doc/classes/Color.xml:594
msgid "Moccasin color."
-msgstr ""
+msgstr "Color mocasín."
#: doc/classes/Color.xml:597
msgid "Navajo white color."
-msgstr ""
+msgstr "Color blanco navajo."
#: doc/classes/Color.xml:600
msgid "Navy blue color."
-msgstr ""
+msgstr "Color azul marino."
#: doc/classes/Color.xml:603
msgid "Old lace color."
-msgstr ""
+msgstr "Color de encaje antiguo."
#: doc/classes/Color.xml:606
msgid "Olive color."
-msgstr ""
+msgstr "Color oliva."
#: doc/classes/Color.xml:609
msgid "Olive drab color."
-msgstr ""
+msgstr "Color aceituna monótono."
#: doc/classes/Color.xml:612
msgid "Orange color."
-msgstr ""
+msgstr "Color naranja."
#: doc/classes/Color.xml:615
msgid "Orange red color."
-msgstr ""
+msgstr "Color rojo anaranjado."
#: doc/classes/Color.xml:618
msgid "Orchid color."
-msgstr ""
+msgstr "Color orquídea."
#: doc/classes/Color.xml:621
msgid "Pale goldenrod color."
-msgstr ""
+msgstr "Color de vara de oro pálido."
#: doc/classes/Color.xml:624
msgid "Pale green color."
-msgstr ""
+msgstr "Color verde pálido."
#: doc/classes/Color.xml:627
msgid "Pale turquoise color."
-msgstr ""
+msgstr "Color turquesa pálido."
#: doc/classes/Color.xml:630
msgid "Pale violet red color."
-msgstr ""
+msgstr "Color rojo violeta pálido."
#: doc/classes/Color.xml:633
msgid "Papaya whip color."
-msgstr ""
+msgstr "Color del látigo de papaya."
#: doc/classes/Color.xml:636
msgid "Peach puff color."
-msgstr ""
+msgstr "Color melocotón."
#: doc/classes/Color.xml:639
msgid "Peru color."
-msgstr ""
+msgstr "Color Perú."
#: doc/classes/Color.xml:642
msgid "Pink color."
-msgstr ""
+msgstr "Color rosa."
#: doc/classes/Color.xml:645
msgid "Plum color."
-msgstr ""
+msgstr "Color ciruela."
#: doc/classes/Color.xml:648
msgid "Powder blue color."
-msgstr ""
+msgstr "Color azul de polvo."
#: doc/classes/Color.xml:651
msgid "Purple color."
-msgstr ""
+msgstr "Color púrpura."
#: doc/classes/Color.xml:654
msgid "Rebecca purple color."
-msgstr ""
+msgstr "Color púrpura de Rebecca."
#: doc/classes/Color.xml:657
msgid "Red color."
-msgstr ""
+msgstr "Color rojo."
#: doc/classes/Color.xml:660
msgid "Rosy brown color."
-msgstr ""
+msgstr "Color marrón rosado."
#: doc/classes/Color.xml:663
msgid "Royal blue color."
-msgstr ""
+msgstr "Color azul real."
#: doc/classes/Color.xml:666
msgid "Saddle brown color."
-msgstr ""
+msgstr "Color marrón silla de montar."
#: doc/classes/Color.xml:669
msgid "Salmon color."
-msgstr ""
+msgstr "Color salmón."
#: doc/classes/Color.xml:672
msgid "Sandy brown color."
-msgstr ""
+msgstr "Color marrón arenoso."
#: doc/classes/Color.xml:675
msgid "Sea green color."
-msgstr ""
+msgstr "Color verde mar."
#: doc/classes/Color.xml:678
msgid "Seashell color."
-msgstr ""
+msgstr "Color de la concha marina."
#: doc/classes/Color.xml:681
msgid "Sienna color."
-msgstr ""
+msgstr "Color siena."
#: doc/classes/Color.xml:684
msgid "Silver color."
-msgstr ""
+msgstr "Color plata."
#: doc/classes/Color.xml:687
msgid "Sky blue color."
-msgstr ""
+msgstr "Color azul cielo."
#: doc/classes/Color.xml:690
msgid "Slate blue color."
-msgstr ""
+msgstr "Color azul pizarra."
#: doc/classes/Color.xml:693
msgid "Slate gray color."
-msgstr ""
+msgstr "Color gris pizarra."
#: doc/classes/Color.xml:696
msgid "Snow color."
-msgstr ""
+msgstr "Color nieve."
#: doc/classes/Color.xml:699
msgid "Spring green color."
-msgstr ""
+msgstr "Color verde primaveral."
#: doc/classes/Color.xml:702
msgid "Steel blue color."
-msgstr ""
+msgstr "Color azul acero."
#: doc/classes/Color.xml:705
msgid "Tan color."
-msgstr ""
+msgstr "Color bronceado."
#: doc/classes/Color.xml:708
msgid "Teal color."
-msgstr ""
+msgstr "Color verde azulado."
#: doc/classes/Color.xml:711
msgid "Thistle color."
-msgstr ""
+msgstr "Color cardo."
#: doc/classes/Color.xml:714
msgid "Tomato color."
-msgstr ""
+msgstr "Color tomate."
#: doc/classes/Color.xml:717
msgid "Transparent color (white with no alpha)."
-msgstr ""
+msgstr "Color transparente (blanco sin alfa)."
#: doc/classes/Color.xml:720
msgid "Turquoise color."
-msgstr ""
+msgstr "Color turquesa."
#: doc/classes/Color.xml:723
msgid "Violet color."
-msgstr ""
+msgstr "Color violeta."
#: doc/classes/Color.xml:726
msgid "Web gray color."
-msgstr ""
+msgstr "Color gris web."
#: doc/classes/Color.xml:729
msgid "Web green color."
-msgstr ""
+msgstr "Color verde web."
#: doc/classes/Color.xml:732
msgid "Web maroon color."
-msgstr ""
+msgstr "Color granate web."
#: doc/classes/Color.xml:735
msgid "Web purple color."
-msgstr ""
+msgstr "Color púrpura web."
#: doc/classes/Color.xml:738
msgid "Wheat color."
-msgstr ""
+msgstr "Color trigo."
#: doc/classes/Color.xml:741
msgid "White color."
-msgstr ""
+msgstr "Color blanco."
#: doc/classes/Color.xml:744
msgid "White smoke color."
-msgstr ""
+msgstr "Color humo blanco."
#: doc/classes/Color.xml:747
msgid "Yellow color."
-msgstr ""
+msgstr "Color amarillo."
#: doc/classes/Color.xml:750
msgid "Yellow green color."
-msgstr ""
+msgstr "Color verde amarillo."
#: doc/classes/ColorPicker.xml:4
msgid "Color picker control."
-msgstr ""
+msgstr "Control de selección de color."
#: doc/classes/ColorPicker.xml:7
msgid ""
"Displays a color picker widget. Useful for selecting a color from an RGB/"
"RGBA colorspace."
msgstr ""
+"Muestra un widget de selección de color. Es útil para seleccionar un color "
+"de un espacio de color RGB/RGBA."
#: doc/classes/ColorPicker.xml:18
msgid ""
@@ -15699,19 +17264,26 @@ msgid ""
"in the color picker and the user will be able to select them.\n"
"[b]Note:[/b] the presets list is only for [i]this[/i] color picker."
msgstr ""
+"Añade el color dado a una lista de preselecciones de color. Los preajustes "
+"se muestran en el selector de colores y el usuario podrá seleccionarlos.\n"
+"[b]Nota:[/b] la lista de preajustes es sólo para [i]este[/i] selector de "
+"colores."
#: doc/classes/ColorPicker.xml:28
msgid ""
"Removes the given color from the list of color presets of this color picker."
msgstr ""
+"Elimina el color dado de la lista de colores predefinidos de este selector "
+"de colores."
#: doc/classes/ColorPicker.xml:35
msgid "Returns the list of colors in the presets of the color picker."
msgstr ""
+"Devuelve la lista de colores en los preajustes del selector de colores."
#: doc/classes/ColorPicker.xml:41 doc/classes/ColorPickerButton.xml:29
msgid "The currently selected color."
-msgstr ""
+msgstr "El color actualmente seleccionado."
#: doc/classes/ColorPicker.xml:44
msgid ""
@@ -15719,10 +17291,15 @@ msgid ""
"mouse button, otherwise it will apply immediately even in mouse motion event "
"(which can cause performance issues)."
msgstr ""
+"Si [code]true[/code], el color se aplicará sólo después de que el usuario "
+"suelte el botón del ratón, de lo contrario se aplicará inmediatamente "
+"incluso en el evento de movimiento del ratón (lo que puede causar problemas "
+"de rendimiento)."
#: doc/classes/ColorPicker.xml:47
msgid "If [code]true[/code], shows an alpha channel slider (transparency)."
msgstr ""
+"Si [code]true[/code], muestra un deslizador de canal alfa (transparencia)."
#: doc/classes/ColorPicker.xml:50
msgid ""
@@ -15730,14 +17307,17 @@ msgid ""
"sliders.\n"
"[b]Note:[/b] Cannot be enabled if raw mode is on."
msgstr ""
+"Si [code]true[/code], permite editar el color con los deslizadores de Tono/"
+"Saturación/Valor.\n"
+"[b]Nota:[/b] No puede ser activado si el modo raw está activado."
#: doc/classes/ColorPicker.xml:54
msgid "If [code]true[/code], the \"add preset\" button is enabled."
-msgstr ""
+msgstr "Si [code]true[/code], el botón \"añadir preajuste\" está activado."
#: doc/classes/ColorPicker.xml:57
msgid "If [code]true[/code], saved color presets are visible."
-msgstr ""
+msgstr "Si [code]true[/code], los preajustes de color guardados son visibles."
#: doc/classes/ColorPicker.xml:60
msgid ""
@@ -15746,66 +17326,76 @@ msgid ""
"tinting without darkening or rendering sprites in HDR).\n"
"[b]Note:[/b] Cannot be enabled if HSV mode is on."
msgstr ""
+"Si [code]true[/code], permite que los valores de los componentes de color R, "
+"G, B vayan más allá de 1.0, lo que puede ser usado para ciertas operaciones "
+"especiales que lo requieran (como teñir sin oscurecer o renderizar sprites "
+"en HDR).\n"
+"[b]Nota:[/b] No se puede activar si el modo HSV está activado."
#: doc/classes/ColorPicker.xml:69
msgid "Emitted when the color is changed."
-msgstr ""
+msgstr "Emitido cuando se cambia el color."
#: doc/classes/ColorPicker.xml:76
msgid "Emitted when a preset is added."
-msgstr ""
+msgstr "Emitido cuando se añade un preajuste."
#: doc/classes/ColorPicker.xml:83
msgid "Emitted when a preset is removed."
-msgstr ""
+msgstr "Se emite cuando se elimina una preajuste."
#: doc/classes/ColorPicker.xml:91
msgid "The icon for the \"Add Preset\" button."
-msgstr ""
+msgstr "El icono del botón \"Añadir Preajuste\"."
#: doc/classes/ColorPicker.xml:94
msgid "Custom texture for the hue selection slider on the right."
msgstr ""
+"Textura personalizada para el deslizador de selección de tonos de la derecha."
#: doc/classes/ColorPicker.xml:99
msgid "The width of the hue selection slider."
-msgstr ""
+msgstr "El ancho del deslizador de selección de tonos."
#: doc/classes/ColorPicker.xml:104
msgid "The margin around the [ColorPicker]."
-msgstr ""
+msgstr "El margen alrededor del [ColorPicker]."
#: doc/classes/ColorPicker.xml:107
msgid ""
"The indicator used to signalize that the color value is outside the 0-1 "
"range."
msgstr ""
+"El indicador utilizado para señalar que el valor del color está fuera del "
+"rango de 0-1."
#: doc/classes/ColorPicker.xml:112
msgid "The icon for the screen color picker button."
-msgstr ""
+msgstr "El icono del botón del selector de color de la pantalla."
#: doc/classes/ColorPicker.xml:115
msgid "The height of the saturation-value selection box."
-msgstr ""
+msgstr "La altura del cuadro de selección del valor de la saturación."
#: doc/classes/ColorPicker.xml:118
msgid "The width of the saturation-value selection box."
-msgstr ""
+msgstr "El ancho de la caja de selección del valor de saturación."
#: doc/classes/ColorPickerButton.xml:4
msgid "Button that pops out a [ColorPicker]."
-msgstr ""
+msgstr "Botón que hace aparecer un [ColorPicker]."
#: doc/classes/ColorPickerButton.xml:7
msgid ""
"Encapsulates a [ColorPicker] making it accessible by pressing a button. "
"Pressing the button will toggle the [ColorPicker] visibility."
msgstr ""
+"Encapsula un [ColorPicker] haciéndolo accesible al presionar un botón. Al "
+"pulsar el botón se cambia la visibilidad de [ColorPicker]."
#: doc/classes/ColorPickerButton.xml:16
msgid "Returns the [ColorPicker] that this node toggles."
-msgstr ""
+msgstr "Devuelve el [ColorPicker] que este nodo conmuta."
#: doc/classes/ColorPickerButton.xml:23
msgid ""
@@ -15813,34 +17403,40 @@ msgid ""
"signals. This allows you to handle events when the ColorPicker is shown or "
"hidden."
msgstr ""
+"Devuelve el [PopupPanel] del control que le permite conectarse a las señales "
+"popup. Esto le permite manejar los eventos cuando el ColorPicker se muestra "
+"u oculta."
#: doc/classes/ColorPickerButton.xml:32
msgid ""
"If [code]true[/code], the alpha channel in the displayed [ColorPicker] will "
"be visible."
msgstr ""
+"Si [code]true[/code], el canal alfa en el [ColorPicker] visualizado será "
+"visible."
#: doc/classes/ColorPickerButton.xml:41
msgid "Emitted when the color changes."
-msgstr ""
+msgstr "Emitido cuando el color cambia."
#: doc/classes/ColorPickerButton.xml:46
msgid ""
"Emitted when the [ColorPicker] is created (the button is pressed for the "
"first time)."
msgstr ""
+"Se emite cuando se crea el [ColorPicker] (se pulsa el botón por primera vez)."
#: doc/classes/ColorPickerButton.xml:51
msgid "Emitted when the [ColorPicker] is closed."
-msgstr ""
+msgstr "Emitido cuando el [ColorPicker] está cerrado."
#: doc/classes/ColorPickerButton.xml:59
msgid "The background of the color preview rect on the button."
-msgstr ""
+msgstr "El fondo del rectángulo de vista previa de color en el botón."
#: doc/classes/ColorPickerButton.xml:62
msgid "[StyleBox] used when the [ColorPickerButton] is disabled."
-msgstr ""
+msgstr "[StyleBox] utilizado cuando el [ColorPickerButton] está desactivado."
#: doc/classes/ColorPickerButton.xml:65
msgid ""
@@ -15848,50 +17444,56 @@ msgid ""
"over the current [StyleBox], so using [StyleBoxEmpty] will just disable the "
"focus visual effect."
msgstr ""
+"[StyleBox] usado cuando el [ColorPickerButton] está enfocado. Se muestra "
+"sobre el [StyleBox] actual, por lo que al usar [StyleBoxEmpty] sólo se "
+"desactivará el efecto visual de enfoque."
#: doc/classes/ColorPickerButton.xml:68
msgid "[Font] of the [ColorPickerButton]'s text."
-msgstr ""
+msgstr "[Font] del texto de [ColorPickerButton]."
#: doc/classes/ColorPickerButton.xml:71
msgid "Default text [Color] of the [ColorPickerButton]."
-msgstr ""
+msgstr "El [Color] del texto predeterminado para el [ColorPickerButton]."
#: doc/classes/ColorPickerButton.xml:74
msgid "Text [Color] used when the [ColorPickerButton] is disabled."
msgstr ""
+"[Color] del texto utilizado cuando el [ColorPickerButton] está desactivado."
#: doc/classes/ColorPickerButton.xml:77
msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
msgstr ""
+"[Color] del texto usado cuando el [ColorpickerButtor] tiene el cursor encima."
#: doc/classes/ColorPickerButton.xml:80
msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
-msgstr ""
+msgstr "[Color] del texto utilizado cuando se pulsa el [ColorPickerButton]."
#: doc/classes/ColorPickerButton.xml:83
msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
-msgstr ""
+msgstr "[StyleBox] usado cuando el [ColorPickerButton] tiene el cursor encima."
#: doc/classes/ColorPickerButton.xml:86
msgid "The horizontal space between [ColorPickerButton]'s icon and text."
msgstr ""
+"El espacio horizontal entre el icono y el texto de [ColorPickerButton]."
#: doc/classes/ColorPickerButton.xml:89
msgid "Default [StyleBox] for the [ColorPickerButton]."
-msgstr ""
+msgstr "[StyleBox] por defecto para el [ColorPickerButton]."
#: doc/classes/ColorPickerButton.xml:92
msgid "[StyleBox] used when the [ColorPickerButton] is being pressed."
-msgstr ""
+msgstr "[StyleBox] que se utiliza cuando se pulsa el [ColorPickerButton]."
#: doc/classes/ColorRect.xml:4
msgid "Colored rectangle."
-msgstr ""
+msgstr "Rectángulo coloreado."
#: doc/classes/ColorRect.xml:7
msgid "Displays a colored rectangle."
-msgstr ""
+msgstr "Muestra un rectángulo coloreado."
#: doc/classes/ColorRect.xml:15
msgid ""
@@ -15900,10 +17502,15 @@ msgid ""
"$ColorRect.color = Color(1, 0, 0, 1) # Set ColorRect's color to red.\n"
"[/codeblock]"
msgstr ""
+"El color de relleno.\n"
+"[codeblock]\n"
+"$ColorRect.color = Color(1, 0, 0, 1) # Establece el color de ColorRect a "
+"rojo.\n"
+"[/codeblock]"
#: doc/classes/ConcavePolygonShape2D.xml:4
msgid "Concave polygon 2D shape resource for physics."
-msgstr ""
+msgstr "Forma 2D polígonal cóncavo es un recurso para la física."
#: doc/classes/ConcavePolygonShape2D.xml:7
msgid ""
@@ -15918,15 +17525,27 @@ msgid ""
"uses a more complex method of collision detection, and a convex one forces "
"itself to be convex in order to speed up collision detection."
msgstr ""
+"Forma 2D polígonal cóncavo es un recurso para la física. Está hecho de "
+"segmentos y es óptimo para colisiones poligonales cóncavas complejas. Sin "
+"embargo, no se aconseja su uso para nodos [RigidBody2D]. Un "
+"CollisionPolygon2D en modo de descomposición convexa (sólidos) o varios "
+"objetos convexos se aconsejan para ello. De lo contrario, una forma cóncava "
+"de polígono 2D es mejor para colisiones estáticas.\n"
+"La principal diferencia entre un [ConvexPolygonShape2D] y un "
+"[ConcavePolygonShape2D] es que un polígono cóncavo asume que es cóncavo y "
+"utiliza un método más complejo de detección de colisiones, y uno convexo se "
+"fuerza a sí mismo a ser convexo para acelerar la detección de colisiones."
#: doc/classes/ConcavePolygonShape2D.xml:16
msgid ""
"The array of points that make up the [ConcavePolygonShape2D]'s line segments."
msgstr ""
+"El array de puntos que forman los segmentos de línea de un "
+"[ConcavePolygonShape2D]."
#: doc/classes/ConcavePolygonShape3D.xml:4
msgid "Concave polygon shape."
-msgstr ""
+msgstr "Forma de polígono cóncavo."
#: doc/classes/ConcavePolygonShape3D.xml:7
msgid ""
@@ -15936,18 +17555,25 @@ msgid ""
"with static [PhysicsBody3D] nodes like [StaticBody3D] and will not work with "
"[KinematicBody3D] or [RigidBody3D] with a mode other than Static."
msgstr ""
+"Recurso de forma poligonal cóncava, que se puede establecer en un "
+"[PhysicsBody3D] o área. Esta forma se crea alimentando una lista de "
+"triángulos.\n"
+"Nota: cuando se usa para la colisión, [ConcavePolygonShape3D] está pensado "
+"para trabajar con nodos estáticos [PhysicsBody3D] como [StaticBody3D] y no "
+"funcionará con [KinematicBody3D] o [RigidBody3D] con un modo distinto al "
+"estático."
#: doc/classes/ConcavePolygonShape3D.xml:17
msgid "Returns the faces (an array of triangles)."
-msgstr ""
+msgstr "Devuelve las caras (un array de triángulos)."
#: doc/classes/ConcavePolygonShape3D.xml:26
msgid "Sets the faces (an array of triangles)."
-msgstr ""
+msgstr "Establece las caras (un array de triángulos)."
#: doc/classes/ConeTwistJoint3D.xml:4
msgid "A twist joint between two 3D bodies."
-msgstr ""
+msgstr "Una articulación de torsión entre dos cuerpos 3D."
#: doc/classes/ConeTwistJoint3D.xml:7
msgid ""
@@ -15957,6 +17583,11 @@ msgid ""
"Once the Bodies swing, the twist axis is calculated as the middle of the x-"
"axes of the Joint3D in the local space of the two Bodies."
msgstr ""
+"La articulación puede rotar los cuerpos a través de un eje definido por los "
+"ejes x locales de la [Joint3D].\n"
+"El eje de giro se inicia como el eje X de la [Joint3D].\n"
+"Una vez que los cuerpos giran, el eje de giro se calcula como el medio de "
+"los ejes x de la [Joint3D] en el espacio local de los dos cuerpos."
#: doc/classes/ConeTwistJoint3D.xml:35 doc/classes/ConeTwistJoint3D.xml:67
#: doc/classes/PhysicsServer3D.xml:1400
@@ -15964,6 +17595,8 @@ msgid ""
"The speed with which the swing or twist will take place.\n"
"The higher, the faster."
msgstr ""
+"La velocidad con la que se producirá la oscilación o la torsión.\n"
+"Cuanto más alto, más rápido."
#: doc/classes/ConeTwistJoint3D.xml:39 doc/classes/ConeTwistJoint3D.xml:74
#: doc/classes/PhysicsServer3D.xml:1407
@@ -15971,12 +17604,16 @@ msgid ""
"Defines, how fast the swing- and twist-speed-difference on both sides gets "
"synced."
msgstr ""
+"Define cuán rápido se sincroniza la diferencia de velocidad de giro en ambos "
+"lados."
#: doc/classes/ConeTwistJoint3D.xml:42 doc/classes/ConeTwistJoint3D.xml:71
msgid ""
"The ease with which the joint starts to twist. If it's too low, it takes "
"more force to start twisting the joint."
msgstr ""
+"La facilidad con la que la articulación comienza a girar. Si es demasiado "
+"baja, se necesita más fuerza para empezar a torcer la articulación."
#: doc/classes/ConeTwistJoint3D.xml:45 doc/classes/ConeTwistJoint3D.xml:57
#: doc/classes/PhysicsServer3D.xml:1390
@@ -15988,6 +17625,12 @@ msgid ""
"Could be defined as looseness in the [ConeTwistJoint3D].\n"
"If below 0.05, this behavior is locked."
msgstr ""
+"La oscilación es la rotación de lado a lado, alrededor del eje perpendicular "
+"al eje de giro.\n"
+"La amplitud de la oscilación define, cuánta rotación no se corregirá a lo "
+"largo del eje de oscilación.\n"
+"Podría definirse como la holgura en el [ConeTwistJoint3D].\n"
+"Si está por debajo de 0,05, este comportamiento se bloquea."
#: doc/classes/ConeTwistJoint3D.xml:51 doc/classes/ConeTwistJoint3D.xml:63
#: doc/classes/PhysicsServer3D.xml:1396
@@ -15996,16 +17639,19 @@ msgid ""
"joint can twist.\n"
"Twist is locked if below 0.05."
msgstr ""
+"La torsión es la rotación alrededor del eje de la torsión, este valor "
+"definió cuán lejos puede torcerse la articulación.\n"
+"La torsión se bloquea si está por debajo de 0,05."
#: doc/classes/ConeTwistJoint3D.xml:77 doc/classes/Generic6DOFJoint3D.xml:416
#: doc/classes/HingeJoint3D.xml:109 doc/classes/Light3D.xml:145
#: doc/classes/SliderJoint3D.xml:170
msgid "Represents the size of the [enum Param] enum."
-msgstr ""
+msgstr "Representa el tamaño del enum [enum Param]."
#: doc/classes/ConfigFile.xml:4
msgid "Helper class to handle INI-style files."
-msgstr ""
+msgstr "Clase de ayuda para manejar los archivos de tipo INI."
#: doc/classes/ConfigFile.xml:7
msgid ""
@@ -16042,28 +17688,72 @@ msgid ""
"still be useful for dedicated server configuration files, which are "
"typically never overwritten without explicit user action."
msgstr ""
+"Esta clase de ayuda se puede utilizar para almacenar los valores [Variant] "
+"en el sistema de archivos utilizando el formato de estilo INI. Los valores "
+"almacenados se identifican por una sección y una clave:\n"
+"[codeblock]\n"
+"[section]\n"
+"alguna_clave=42\n"
+"string_ejemplo=\"Hola Mundo 3D!\"\n"
+"a_vector=Vector3( 1, 0, 2 )\n"
+"[/codeblock]\n"
+"Los datos almacenados pueden guardarse en un archivo o analizarse desde él, "
+"aunque los objetos ConfigFile también pueden utilizarse directamente sin "
+"acceder al sistema de archivos.\n"
+"El siguiente ejemplo muestra cómo analizar un archivo de tipo INI del "
+"sistema, leer su contenido y almacenar nuevos valores en él:\n"
+"[codeblock]\n"
+"var configuracion = ConfigFile.new()\n"
+"var error = configuracion.load(\"user://ajustes.cfg\")\n"
+"if error == OK: # Si no , algo fue mal con la carga del archivo\n"
+" # Mira al par pantalla/ancho, por defecto es 1024 si no se encuentra el "
+"par\n"
+" var pantalla_ancho = configuracion.get_value(\"pantalla\", \"ancho\", "
+"1024)\n"
+" # Almacena un variable sí y solo sí no ha sido definida\n"
+" if not configuracion.has_section_key(\"audio\", \"silenciadomute\"):\n"
+" configuracion.set_value(\"audio\", \"silenciado\", false)\n"
+" # Guarda los cambios sobreescribiendo el archivo previo\n"
+" configuracion.save(\"user://ajustes.cfg\")\n"
+"[/codeblock]\n"
+"Tengan en cuenta que los nombres de las secciones y propiedades no pueden "
+"contener espacios. Cualquier cosa después de un espacio será ignorada al "
+"guardarla y al cargarla.\n"
+"Los archivos de configuración también pueden contener líneas de comentarios "
+"escritas manualmente que empiecen con un punto y coma ([code];[/code]). Esas "
+"líneas serán ignoradas al analizar el archivo. Tenga en cuenta que los "
+"comentarios se perderán al guardar el ConfigFile. Esto puede ser útil para "
+"los archivos de configuración del servidor dedicado, que normalmente nunca "
+"se sobrescriben sin una acción explícita del usuario."
#: doc/classes/ConfigFile.xml:40
msgid ""
"Deletes the specified section along with all the key-value pairs inside. "
"Raises an error if the section does not exist."
msgstr ""
+"Borra la sección especificada junto con todos los pares clave-valor que hay "
+"dentro. Provoca un error si la sección no existe."
#: doc/classes/ConfigFile.xml:51
msgid ""
"Deletes the specified key in a section. Raises an error if either the "
"section or the key do not exist."
msgstr ""
+"Borra la clave especificada en una sección. Provoca un error si la sección o "
+"la clave no existen."
#: doc/classes/ConfigFile.xml:60
msgid ""
"Returns an array of all defined key identifiers in the specified section. "
"Raises an error and returns an empty array if the section does not exist."
msgstr ""
+"Devuelve un array de todos los identificadores clave definidos en la sección "
+"especificada. Levanta un error y devuelve un array vacío si la sección no "
+"existe."
#: doc/classes/ConfigFile.xml:67
msgid "Returns an array of all defined section identifiers."
-msgstr ""
+msgstr "Devuelve un array de todos los identificadores de sección definidos."
#: doc/classes/ConfigFile.xml:80
msgid ""
@@ -16072,14 +17762,20 @@ msgid ""
"[code]default[/code] value. If [code]default[/code] is not specified or set "
"to [code]null[/code], an error is also raised."
msgstr ""
+"Devuelve el valor actual de la sección y la clave especificadas. Si la "
+"sección o la clave no existen, el método devuelve el valor de reserva "
+"[code]default[/code]. Si no se especifica [code]default[/code] o se "
+"establece en [code]null[/code], también se produce un error."
#: doc/classes/ConfigFile.xml:89
msgid "Returns [code]true[/code] if the specified section exists."
-msgstr ""
+msgstr "Devuelve [code]true[/code] si existe la sección especificada."
#: doc/classes/ConfigFile.xml:100
msgid "Returns [code]true[/code] if the specified section-key pair exists."
msgstr ""
+"Devuelve [code]true[/code] si existe el par de claves de lasección "
+"especificada."
#: doc/classes/ConfigFile.xml:109
msgid ""
@@ -16088,6 +17784,11 @@ msgid ""
"on.\n"
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
+"Carga el archivo de configuración especificado como parámetro. El contenido "
+"del archivo es analizado y cargado en el objeto [ConfigFile] al que se llamó "
+"el método.\n"
+"Devuelve una de las constantes de código [enum Error] ([code]OK[/code] en "
+"caso de éxito)."
#: doc/classes/ConfigFile.xml:121
msgid ""
@@ -16096,6 +17797,12 @@ msgid ""
"the [ConfigFile] object which the method was called on.\n"
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
+"Carga el archivo de configuración cifrado especificado como parámetro, "
+"utilizando la [code]clave[/code] proporcionada para descifrarlo. El "
+"contenido del archivo es analizado y cargado en el objeto [ConfigFile] al "
+"que el método fue llamado.\n"
+"Devuelve una de las constantes de código [enum Error] ([code]OK[/code] en "
+"caso de éxito)."
#: doc/classes/ConfigFile.xml:133
msgid ""
@@ -16104,6 +17811,12 @@ msgid ""
"loaded in the [ConfigFile] object which the method was called on.\n"
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
+"Carga el archivo de configuración cifrado especificado como parámetro, "
+"utilizando la [code]password[/code] proporcionado para descifrarlo. El "
+"contenido del archivo es analizado y cargado en el objeto [ConfigFile] al "
+"que el método fue llamado.\n"
+"Devuelve una de las constantes de código [enum Error] ([code]OK[/code] en "
+"caso de éxito)."
#: doc/classes/ConfigFile.xml:143
msgid ""
@@ -16111,6 +17824,11 @@ msgid ""
"parsed and loaded in the ConfigFile object which the method was called on.\n"
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
+"Analiza la string pasada como el contenido de un archivo de configuración. "
+"La string es analizada y cargada en el objeto ConfigFile en el que el método "
+"fue llamado.\n"
+"Devuelve una de las constantes de código [enum Error] ([code]OK[/code] en "
+"caso de éxito)."
#: doc/classes/ConfigFile.xml:153
msgid ""
@@ -16118,6 +17836,10 @@ msgid ""
"parameter. The output file uses an INI-style structure.\n"
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
+"Guarda el contenido del objeto [ConfigFile] en el archivo especificado como "
+"parámetro. El archivo de salida utiliza una estructura tipo INI.\n"
+"Devuelve una de las constantes de código [enum Error] ([code]OK[/code] en el "
+"éxito)."
#: doc/classes/ConfigFile.xml:165
msgid ""
@@ -16126,6 +17848,11 @@ msgid ""
"The output file uses an INI-style structure.\n"
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
+"Guarda el contenido del objeto [ConfigFile] en el archivo cifrado AES-256 "
+"especificado como parámetro, utilizando la [code]key[/code] proporcionada "
+"para cifrarlo. El archivo de salida utiliza una estructura tipo INI.\n"
+"Devuelve una de las constantes de código [enum Error] ([code]OK[/code] en "
+"caso de éxito)."
#: doc/classes/ConfigFile.xml:177
msgid ""
@@ -16134,6 +17861,12 @@ msgid ""
"encrypt it. The output file uses an INI-style structure.\n"
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
+"Guarda el contenido del objeto [ConfigFile] en el archivo encriptado AES-256 "
+"especificado como parámetro, utilizando la [code]password[/code] "
+"proporcionada para encriptarlo. El archivo de salida utiliza una estructura "
+"de tipo INI.\n"
+"Devuelve una de las constantes de código [enum Error] ([code]OK[/code] en "
+"caso de éxito)."
#: doc/classes/ConfigFile.xml:191
msgid ""
@@ -16142,10 +17875,14 @@ msgid ""
"code] value deletes the specified key if it exists, and deletes the section "
"if it ends up empty once the key has been removed."
msgstr ""
+"Asigna un valor a la clave especificada de la sección especificada. Si la "
+"sección o la clave no existen, se crean. Al pasar un valor [code]null[/code] "
+"se borra la clave especificada si existe, y se borra la sección si termina "
+"vacía una vez que se ha eliminado la clave."
#: doc/classes/ConfirmationDialog.xml:4
msgid "Dialog for confirmation of actions."
-msgstr ""
+msgstr "Diálogo para la confirmación de las acciones."
#: doc/classes/ConfirmationDialog.xml:7
msgid ""
@@ -16157,14 +17894,21 @@ msgid ""
"get_cancel().connect(\"pressed\", self, \"cancelled\")\n"
"[/codeblock]."
msgstr ""
+"Diálogo para la confirmación de las acciones. Este diálogo hereda de "
+"[AcceptDialog], pero tiene por defecto un botón de OK y Cancelar (en el "
+"orden del sistema operativo).\n"
+"Para obtener la acción de cancelación, puedes usar:\n"
+"[codeblock]\n"
+"get_cancel().connect(\"pressed\", self, \"cancelled\")\n"
+"[/codeblock]."
#: doc/classes/ConfirmationDialog.xml:20
msgid "Returns the cancel button."
-msgstr ""
+msgstr "Devuelve el botón de cancelación."
#: doc/classes/Container.xml:4
msgid "Base node for containers."
-msgstr ""
+msgstr "Nodo base para los contenedores."
#: doc/classes/Container.xml:7
msgid ""
@@ -16172,33 +17916,46 @@ msgid ""
"automatically arranges them in a certain way.\n"
"A Control can inherit this to create custom container classes."
msgstr ""
+"Nodo base para los contenedores. Un [container] contiene otros controles y "
+"los ordena automáticamente de cierta manera.\n"
+"Un Control puede heredar esto para crear clases de contenedores "
+"personalizados."
#: doc/classes/Container.xml:21
msgid ""
"Fit a child control in a given rect. This is mainly a helper for creating "
"custom container classes."
msgstr ""
+"Ajustar un control hijo en un rectángulo dado. Esto es principalmente una "
+"ayuda para crear clases de contenedores personalizados."
#: doc/classes/Container.xml:28
msgid ""
"Queue resort of the contained children. This is called automatically anyway, "
"but can be called upon request."
msgstr ""
+"El recurso de la cola de los hijos contenidos. Esto se llama automáticamente "
+"de todos modos, pero puede ser llamado a petición."
#: doc/classes/Container.xml:38
msgid "Emitted when sorting the children is needed."
-msgstr ""
+msgstr "Emitido cuando se necesita ordenar a los hijos."
#: doc/classes/Container.xml:44
msgid ""
"Notification for when sorting the children, it must be obeyed immediately."
msgstr ""
+"La notificación, para cuando se ordenan los hijos, debe ser obedecida "
+"inmediatamente."
#: doc/classes/Control.xml:4
msgid ""
"All user interface nodes inherit from Control. A control's anchors and "
"margins adapt its position and size relative to its parent."
msgstr ""
+"Todos los nodos de la interfaz de usuario heredan de Control. Los anclajes y "
+"márgenes de un control adaptan su posición y tamaño en relación con su "
+"padre.."
#: doc/classes/Control.xml:7
msgid ""
@@ -16233,10 +17990,43 @@ msgid ""
"methods, like [method add_theme_font_override]. You can override the theme "
"with the inspector."
msgstr ""
+"Clase base para todos los nodos relacionados con la UI. [Control] presenta "
+"un rectángulo delimitador que define su extensión, una posición de anclaje "
+"relativa a su control padre o a la vista actual, y márgenes que representan "
+"un desplazamiento al ancla. Los márgenes se actualizan automáticamente "
+"cuando el nodo, cualquiera de sus padres o el tamaño de la pantalla "
+"cambian.\n"
+"Para obtener más información sobre el sistema de interfaz de usuario de "
+"Godot, los anclajes, los márgenes y los contenedores, consulte los "
+"tutoriales relacionados en el manual. Para construir interfaces flexibles, "
+"necesitarás una mezcla de elementos de interfaz de usuario que heredan de "
+"los nodos [Control] y [Container].\n"
+"[b]Nodos de la interfaz de usuario y entrada[/b]\n"
+"Godot envía los eventos de entrada al nodo raíz de la escena primero, "
+"llamando a [Nodo de método._input]. [método Nodo._input] reenvía el evento "
+"por el árbol de nodos a los nodos bajo el cursor del ratón, o en el foco del "
+"teclado. Para ello, llama a [code]MainLoop._input_event[/code].\n"
+"[b]FIXME:[/b] Ya no es válido después de la división del DisplayServer y la "
+"refactorización de la entrada.\n"
+"Llama a [method accept_event] para que ningún otro nodo reciba el evento. "
+"Una vez que se acepta una entrada, ésta se maneja de manera que [method Node."
+"_unhandled_input] no la procesará.\n"
+"Sólo un nodo [Control] puede estar en el foco del teclado. Sólo el nodo en "
+"foco recibirá eventos de teclado. Para obtener el foco, llama a [method "
+"grab_focus]. Los nodos [Control] pierden el foco cuando otro nodo lo agarra, "
+"o si ocultas el nodo en foco.\n"
+"Establece [member mouse_filter] en [constant MOUSE_FILTER_IGNORE] para "
+"decirle al nodo [Control] que ignore el ratón o que toque los eventos. Lo "
+"necesitarás si colocas un icono encima de un botón.\n"
+"Los recursos [Theme] cambian la apariencia del Control. Si cambia el [Theme] "
+"de un nodo [Control], afecta a todos sus hijos. Para anular algunos de los "
+"parámetros del tema, llama a uno de los métodos [code]add_theme_*_override[/"
+"code], como [method add_theme_font_override]. Puedes anular el tema con el "
+"inspector."
#: doc/classes/Control.xml:18
msgid "https://docs.godotengine.org/en/latest/tutorials/gui/index.html"
-msgstr ""
+msgstr "https://docs.godotengine.org/es/latest/tutorials/gui/index.html"
#: doc/classes/Control.xml:26
msgid ""
@@ -16246,6 +18036,12 @@ msgid ""
"Similar to [member rect_clip_content], but doesn't affect visibility.\n"
"If not overridden, defaults to [code]false[/code]."
msgstr ""
+"Método virtual a ser implementado por el usuario. Devuelve si [method "
+"_gui_input] no debe ser llamado para los controles hijos fuera del "
+"rectángulo de este control. La entrada será recortada al rectángulo de este "
+"[Control]. Similar a [member rect_clip_content], pero no afecta a la "
+"visibilidad.\n"
+"Si no se anula, el valor por defecto es [code]false[/code]."
#: doc/classes/Control.xml:34
msgid ""
@@ -16255,6 +18051,11 @@ msgid ""
"(in each axis separately).\n"
"If not overridden, defaults to [constant Vector2.ZERO]."
msgstr ""
+"Método virtual a ser implementado por el usuario. Devuelve el tamaño mínimo "
+"para este control. Alternativa a [member rect_min_size] para controlar el "
+"tamaño mínimo mediante código. El tamaño mínimo real será el valor máximo de "
+"estos dos (en cada eje por separado).\n"
+"Si no se anula, el valor por defecto es [constant Vector2.ZERO]."
#: doc/classes/Control.xml:44
msgid ""
@@ -16277,6 +18078,26 @@ msgid ""
"* it happens outside parent's rectangle and the parent has either [member "
"rect_clip_content] or [method _clips_input] enabled."
msgstr ""
+"Método virtual a ser implementado por el usuario. Utilice este método para "
+"procesar y aceptar entradas en los elementos de la interfaz de usuario. "
+"Véase [method accept_event].\n"
+"Ejemplo: hacer clic en un control.\n"
+"[codeblock]\n"
+"func _gui_input(event):\n"
+" if event is InputEventMouseButton:\n"
+" if event.button_index == BUTTON_LEFT and event.pressed:\n"
+" print(\"Me han hecho click D:\")\n"
+"[/codeblock]\n"
+"El evento no se desencadenará si:\n"
+"* haciendo clic fuera del control (ver [method point]);\n"
+"* el control tiene [member mouse_filter] establecido en [constant "
+"MOUSE_FILTER_IGNORE];\n"
+"* el control está obstruido por otro [Control] encima de él, que no tiene el "
+"[member mouse_filter] puesto a [constant MOUSE_FILTER_IGNORE];\n"
+"* El padre de control tiene el [member mouse_filter] ajustado a [constant "
+"MOUSE_FILTER_STOP] o ha aceptado el evento;\n"
+"* sucede fuera del rectángulo del padre y el padre tiene o bien [member "
+"rect_clip_content] o [method _clips_input] activado."
#: doc/classes/Control.xml:66
msgid ""
@@ -16307,6 +18128,32 @@ msgid ""
" return tooltip\n"
"[/codeblock]"
msgstr ""
+"Método virtual a ser implementado por el usuario. Devuelve un nodo [Control] "
+"que debe ser usado como un tooltip en lugar del predeterminado. Utilice el "
+"parámetro [code]for_text[/code] para determinar qué texto debe contener la "
+"sugerencia (probablemente el contenido de [member hint_tooltip]).\n"
+"El nodo devuelto debe ser de tipo [Control] o derivado de Control. Puede "
+"tener nodos hijos de cualquier tipo. Se libera cuando la \"sugerencia\" "
+"desaparece, así que asegúrese de proporcionar siempre una nueva instancia, "
+"no por ejemplo un nodo de la escena. Cuando se devuelve [code]null[/code] o "
+"un nodo no Control, se utilizará en su lugar la sugerencia por defecto.\n"
+"[b]Nota:[/b] La sugerencia se ha reducido a un tamaño mínimo. Si quiere "
+"asegurarse de que sea completamente visible, puede establecer su [member "
+"rect_min_size] a algún valor distinto de cero.\n"
+"Ejemplo de uso con un nodo construido a medida:\n"
+"[codeblock]\n"
+"func _make_custom_tooltip(for_text):\n"
+" var etiqueta = Label.new()\n"
+" etiqueta.text = para_texto\n"
+" return etiqueta\n"
+"[/codeblock]\n"
+"Ejemplo de uso con una instancia de una escena personalizada<\n"
+"[codeblock]\n"
+"func _make_custom_tooltip(for_text):\n"
+" var sugerencia = preload(\"algunaEscenaSugerencia.tscn\").instance()\n"
+" tooltip.get_node(\"etiqueta\").text = para_texto\n"
+" return sugerencia\n"
+"[/codeblock]"
#: doc/classes/Control.xml:89
msgid ""
@@ -16314,6 +18161,9 @@ msgid ""
"propagating, even to nodes listening to [method Node._unhandled_input] or "
"[method Node._unhandled_key_input]."
msgstr ""
+"Marca un evento de entrada como manejado. Una vez que aceptas un evento de "
+"entrada, deja de propagarse, incluso a los nodos que escuchan [method Node."
+"_unhandled_input] o [method Node._unhandled_key_input]."
#: doc/classes/Control.xml:100
msgid ""
@@ -16321,6 +18171,9 @@ msgid ""
"resource the control uses. If the [code]color[/code] is empty or invalid, "
"the override is cleared and the color from assigned [Theme] is used."
msgstr ""
+"Sobreescribe el [Color] con el [code]name[/code] dado en el recurso [member "
+"theme] que utiliza el control. Si el [code]color[/code] está vacío o no es "
+"válido, la anulación se borra y se utiliza el color del [Theme] asignado."
#: doc/classes/Control.xml:111
msgid ""
@@ -16329,6 +18182,10 @@ msgid ""
"invalid, the override is cleared and the constant from assigned [Theme] is "
"used."
msgstr ""
+"Sobreescribe una constante entera con el [code]name[/code] dado en el "
+"recurso [member theme] que utiliza el control. Si la constante "
+"[code]constant[/code] está vacía o no es válida, la sobreescritura se borra "
+"y se utiliza la constante del [Theme] es asignada."
#: doc/classes/Control.xml:122
msgid ""
@@ -16336,6 +18193,10 @@ msgid ""
"resource the control uses. If [code]font[/code] is empty or invalid, the "
"override is cleared and the font from assigned [Theme] is used."
msgstr ""
+"Sobrescribe la fuente con el [code]name[/code] dado en el recurso [member "
+"theme] que utiliza el control. Si la fuente [code]font[/code] está vacía o "
+"no es válida, la anulación se borra y se utiliza la fuente del [Theme] "
+"asignado."
#: doc/classes/Control.xml:133
msgid ""
@@ -16343,6 +18204,10 @@ msgid ""
"resource the control uses. If [code]icon[/code] is empty or invalid, the "
"override is cleared and the icon from assigned [Theme] is used."
msgstr ""
+"Sobreescribe el icono con el [code]name[/code] dado en el recurso [member "
+"theme] que utiliza el control. Si el icono [code]icon[/code] está vacío o no "
+"es válido, la sobreescritura se borra y se utiliza el icono del [Theme] "
+"asignado."
#: doc/classes/Control.xml:144
msgid ""
@@ -16350,6 +18215,10 @@ msgid ""
"resource the control uses. If [code]shader[/code] is empty or invalid, the "
"override is cleared and the shader from assigned [Theme] is used."
msgstr ""
+"Sobrescribe el [Shader] con el [code]name[/code] dado en el recurso [member "
+"theme] que utiliza el control. Si [code]shader[/code] está vacío o no es "
+"válido, la sobreescritura se borra y se utiliza el shader del [Theme] "
+"asignado."
#: doc/classes/Control.xml:155
msgid ""
@@ -16357,6 +18226,10 @@ msgid ""
"resource the control uses. If [code]stylebox[/code] is empty or invalid, the "
"override is cleared and the [StyleBox] from assigned [Theme] is used."
msgstr ""
+"Sobreescribe el [StyleBox] con el [code]name[/code] dado en el recurso "
+"[member theme] que utiliza el control. Si [code]stylebox[/code] está vacío o "
+"no es válido, la sobrees se borra y se utiliza el [StyleBox] del [Theme] "
+"asignado."
#: doc/classes/Control.xml:166
msgid ""
@@ -16372,6 +18245,17 @@ msgid ""
" return typeof(data) == TYPE_DICTIONARY and data.has(\"expected\")\n"
"[/codeblock]"
msgstr ""
+"Godot llama a este método para probar si [code]data[/code] de un control "
+"[method get_drag_data] puede ser lanzado en [code]position[/code]. "
+"[code]position[/code] es local a este control.\n"
+"Este método sólo debe usarse para probar los datos. Procesa los datos en "
+"[method drop_data].\n"
+"[codeblock]\n"
+"func can_drop_data(position, data):\n"
+" # Cheque la posición is es relevante para ti\n"
+" # De otra forma solo chequea los datos\n"
+" return typeof(data) == TYPE_DICTIONARY and data.has(\"esperado\")\n"
+"[/codeblock]"
#: doc/classes/Control.xml:184
msgid ""
@@ -16387,6 +18271,17 @@ msgid ""
" color = data[\"color\"]\n"
"[/codeblock]"
msgstr ""
+"Godot llama a este método para pasarle el [code]data[/code] del resultado "
+"del [method get_drag_data] de un control. Godot primero llama a [method "
+"can_drop_data] para probar si [code]data[/code] puede caer en "
+"[code]position[/code] donde [code]position[/code] es local a este control.\n"
+"[codeblock]\n"
+"func can_drop_data(position, data):\n"
+" return typeof(data) == TYPE_DICTIONARY and data.has(\"color\")\n"
+"\n"
+"func drop_data(position, data):\n"
+" color = data[\"color\"]\n"
+"[/codeblock]"
#: doc/classes/Control.xml:202
msgid ""
@@ -16397,6 +18292,12 @@ msgid ""
"The methods [method can_drop_data] and [method drop_data] must be "
"implemented on controls that want to receive drop data."
msgstr ""
+"Fuerza el arrastre y desvía [method get_drag_data] y [method "
+"set_drag_preview] pasando [code]data[/code] y [code]preview[/code]. El "
+"arrastre se iniciará incluso si el ratón no está encima ni presionado en "
+"este control.\n"
+"Los métodos [method can_drop_data] y [method drop_data] deben ser "
+"implementados en los controles que quieran recibir datos de arrastre."
#: doc/classes/Control.xml:212
msgid ""
@@ -16404,24 +18305,33 @@ msgid ""
"Margin] enum. A getter method for [member anchor_bottom], [member "
"anchor_left], [member anchor_right] and [member anchor_top]."
msgstr ""
+"Devuelve el ancla identificada por la constante [code]margin[/code] de enum "
+"[enum Margin]. Un método de obtención para [member anchor_bottom], [member "
+"anchor_left], [member anchor_right] y [member anchor_top]."
#: doc/classes/Control.xml:219
msgid ""
"Returns [member margin_left] and [member margin_top]. See also [member "
"rect_position]."
msgstr ""
+"Devuelve [member margin_left] y [member margin_top]. Véase también [member "
+"rect_position]."
#: doc/classes/Control.xml:226
msgid ""
"Returns combined minimum size from [member rect_min_size] and [method "
"get_minimum_size]."
msgstr ""
+"Devuelve el tamaño mínimo combinado de [member rect_min_size] y [method "
+"get_minimum_size]."
#: doc/classes/Control.xml:235
msgid ""
"Returns the mouse cursor shape the control displays on mouse hover. See "
"[enum CursorShape]."
msgstr ""
+"Devuelve la forma del cursor del ratón que el control muestra al pasar el "
+"ratón por encima. Ver [enum CursorShape]."
#: doc/classes/Control.xml:244
msgid ""
@@ -16440,10 +18350,25 @@ msgid ""
" return mydata\n"
"[/codeblock]"
msgstr ""
+"Godot llama a este método para obtener datos que pueden ser arrastrados y "
+"soltados en los controles que esperan datos de caída. Devuelve [code]null[/"
+"code] si no hay datos que arrastrar. Los controles que quieran recibir datos "
+"de arrastre deben implementar [method can_drop_data] y [method drop_data]. "
+"[code]position[/code] es local para este control. El arrastre puede ser "
+"forzado con [method force_drag].\n"
+"Una vista previa que seguirá al ratón que debe representar los datos se "
+"puede fijar con [method set_drag_preview]. Un buen momento para establecer "
+"la vista previa es en este método.\n"
+"[codeblock]\n"
+"func get_drag_data(position):\n"
+" var misdatos = fabricar_datos()\n"
+" set_drag_preview(make_preview(mydata))\n"
+" return misdatos\n"
+"[/codeblock]"
#: doc/classes/Control.xml:258
msgid "Returns [member margin_right] and [member margin_bottom]."
-msgstr ""
+msgstr "Devuelve [member margin_right] y [member margin_bottom]."
#: doc/classes/Control.xml:267
msgid ""
@@ -16452,17 +18377,26 @@ msgid ""
"[member focus_neighbour_left], [member focus_neighbour_right] and [member "
"focus_neighbour_top]."
msgstr ""
+"Devuelve el vecino de enfocado identificado por la constante [code]margin[/"
+"code] del enum [enum Margin]. Un método de obtención para [member "
+"focus_neighbour_bottom], [member focus_neighbour_left], [member "
+"focus_neighbour_right] y [member focus_neighbour_top]."
#: doc/classes/Control.xml:274
msgid ""
"Returns the control that has the keyboard focus or [code]null[/code] if none."
msgstr ""
+"Devuelve el control que tiene el foco del teclado o [code]null[/code] si no "
+"hay ninguno."
#: doc/classes/Control.xml:281
msgid ""
"Returns the position and size of the control relative to the top-left corner "
"of the screen. See [member rect_position] and [member rect_size]."
msgstr ""
+"Devuelve la posición y el tamaño del control en relación con la esquina "
+"superior izquierda de la pantalla. Ver [member rect_positiov] y [member "
+"rect_size]."
#: doc/classes/Control.xml:290
msgid ""
@@ -16470,28 +18404,35 @@ msgid ""
"Margin] enum. A getter method for [member margin_bottom], [member "
"margin_left], [member margin_right] and [member margin_top]."
msgstr ""
+"Devuelve el ancla identificada por la constante [code]margin[/code] del enum "
+"[enum Margin]. Un método de obtención para [member margin_bottom], [member "
+"margin_left], [member margin_right] y [member margin_top]."
#: doc/classes/Control.xml:297
msgid "Returns the minimum size for this control. See [member rect_min_size]."
msgstr ""
+"Devuelve el tamaño mínimo para este control. Ver [member rect_min_size]."
#: doc/classes/Control.xml:304
msgid "Returns the width/height occupied in the parent control."
-msgstr ""
+msgstr "Devuelve la anchura/altura ocupada en el control parental."
#: doc/classes/Control.xml:311
msgid "Returns the parent control node."
-msgstr ""
+msgstr "Devuelve el nodo de control del padre."
#: doc/classes/Control.xml:318
msgid ""
"Returns the position and size of the control relative to the top-left corner "
"of the parent Control. See [member rect_position] and [member rect_size]."
msgstr ""
+"Devuelve la posición y el tamaño del control en relación con la esquina "
+"superior izquierda del control principal. Ver [member rect_position] y "
+"[member rect_size]."
#: doc/classes/Control.xml:325
msgid "Returns the rotation (in radians)."
-msgstr ""
+msgstr "Devuelve la rotación (en radianes)."
#: doc/classes/Control.xml:336
msgid ""
@@ -16503,36 +18444,53 @@ msgid ""
"defined for button fonts\n"
"[/codeblock]"
msgstr ""
+"Devuelve un color del [Theme] asignado con el [code]name[/code] dado y "
+"asociado con el [Control] del [code]type[/code] dado.\n"
+"[codeblock]\n"
+"func _ready():\n"
+" modulate = get_theme_color(\"font_color\", \"Button\") # obtiene el "
+"color definido por la fuente del botón\n"
+"[/codeblock]"
#: doc/classes/Control.xml:351
msgid ""
"Returns a constant from assigned [Theme] with given [code]name[/code] and "
"associated with [Control] of given [code]type[/code]."
msgstr ""
+"Devuelve una constante de [Theme] asignada con un [code]name[/code] dado y "
+"asociada a [Control] de un [code]type[/code] dado."
#: doc/classes/Control.xml:362
msgid ""
"Returns a font from assigned [Theme] with given [code]name[/code] and "
"associated with [Control] of given [code]type[/code]."
msgstr ""
+"Devuelve una fuente de [Theme] asignada con un [code]name[/code] dado y "
+"asociada a [Control] de [code]type[/code] dado."
#: doc/classes/Control.xml:373
msgid ""
"Returns an icon from assigned [Theme] with given [code]name[/code] and "
"associated with [Control] of given [code]type[/code]."
msgstr ""
+"Devuelve un icono de [Theme] asignado con un [code]name[/code] dado y "
+"asociado con [Control] de [code]type[/code] dado."
#: doc/classes/Control.xml:384
msgid ""
"Returns a [StyleBox] from assigned [Theme] with given [code]name[/code] and "
"associated with [Control] of given [code]type[/code]."
msgstr ""
+"Devuelve un [StyleBox] de [Theme] asignado con un [code]name[/code] dado y "
+"asociado a [Control] de [code]type[/code] dado."
#: doc/classes/Control.xml:393
msgid ""
"Returns the tooltip, which will appear when the cursor is resting over this "
"control. See [member hint_tooltip]."
msgstr ""
+"Devuelve la sugerencia, que aparecerá cuando el cursor se apoye sobre este "
+"control. Ver [member hint_tooltip]."
#: doc/classes/Control.xml:400
msgid ""
@@ -16544,18 +18502,29 @@ msgid ""
"be clicked instead\n"
"[/codeblock]"
msgstr ""
+"Crea un [InputEventMouseButton] que intenta hacer clic en el control. Si se "
+"recibe el evento, el control adquiere el enfoque.\n"
+"[codeblock]\n"
+"func _process(delta):\n"
+" grab_click_focus() # cuando se hace click otro nodo control, este nodo "
+"sera clickado en vez del previo\n"
+"[/codeblock]"
#: doc/classes/Control.xml:411
msgid ""
"Steal the focus from another control and become the focused control (see "
"[member focus_mode])."
msgstr ""
+"Roba el foco de otro control y pasa a ser el control enfocado (ver [member "
+"focus_mode])."
#: doc/classes/Control.xml:418
msgid ""
"Returns [code]true[/code] if this is the current focused control. See "
"[member focus_mode]."
msgstr ""
+"Devuelve [code]true[/code] si este es el control enfocado actual. Ver "
+"[member focus_mode]."
#: doc/classes/Control.xml:427
msgid ""
@@ -16566,6 +18535,12 @@ msgid ""
"[b]Note:[/b] If you want to check if a point is inside the control, you can "
"use [code]get_rect().has_point(point)[/code]."
msgstr ""
+"Método virtual a ser implementado por el usuario. Devuelve si el "
+"[code]point[/code] dado está dentro de este control.\n"
+"Si no está sobreescrito, el comportamiento por defecto es comprobar si el "
+"punto está dentro del Rectángulo del control.\n"
+"[b]Nota:[/b] Si quieres comprobar si un punto está dentro del control, "
+"puedes usar [code]get_rect().has_point(point)[/code]."
#: doc/classes/Control.xml:440
msgid ""
@@ -16573,12 +18548,17 @@ msgid ""
"associated with [Control] of given [code]type[/code] exists in assigned "
"[Theme]."
msgstr ""
+"Devuelve [code]true[/code] si el [Color] con el [code]name[/code] dado y "
+"asociado con el [Control] del [code]type[/code] dado existe en el [Theme] "
+"asignado."
#: doc/classes/Control.xml:449
msgid ""
"Returns [code]true[/code] if [Color] with given [code]name[/code] has a "
"valid override in this [Control] node."
msgstr ""
+"Devuelve [code]true[/code] si [Color] con el [code]name[/code] dado tiene "
+"una sobreescritura válida en este nodo [Control]."
#: doc/classes/Control.xml:460
msgid ""
@@ -16586,12 +18566,17 @@ msgid ""
"associated with [Control] of given [code]type[/code] exists in assigned "
"[Theme]."
msgstr ""
+"Devuelve [code]true[/code] si la constante con el [code]name[/code] dado y "
+"asociada al [Control] del [code]type[/code] dado existe en el [Theme] "
+"asignado."
#: doc/classes/Control.xml:469
msgid ""
"Returns [code]true[/code] if constant with given [code]name[/code] has a "
"valid override in this [Control] node."
msgstr ""
+"Devuelve [code]true[/code] si la constante con el [code]name[/code] dado "
+"tiene una sobreescritura válida en este nodo [Control]."
#: doc/classes/Control.xml:480
msgid ""
@@ -16599,12 +18584,17 @@ msgid ""
"associated with [Control] of given [code]type[/code] exists in assigned "
"[Theme]."
msgstr ""
+"Devuelve [code]true[/code] si la fuente con el [code]name[/code] dado y "
+"asociada al [Control] del [code]type[/code] dado existe en el [Theme] "
+"asignado."
#: doc/classes/Control.xml:489
msgid ""
"Returns [code]true[/code] if font with given [code]name[/code] has a valid "
"override in this [Control] node."
msgstr ""
+"Devuelve [code]true[/code] si la fuente con el [code]name[/code] dado tiene "
+"una sobreescritura válida en este nodo [Control]."
#: doc/classes/Control.xml:500
msgid ""
@@ -16612,18 +18602,25 @@ msgid ""
"associated with [Control] of given [code]type[/code] exists in assigned "
"[Theme]."
msgstr ""
+"Devuelve [code]true[/code] si el icono con el [code]nombre[/code] dado y "
+"asociado con el [Control] del [code]type[/code] dado existe en el [Theme] "
+"asignado."
#: doc/classes/Control.xml:509
msgid ""
"Returns [code]true[/code] if icon with given [code]name[/code] has a valid "
"override in this [Control] node."
msgstr ""
+"Devuelve [code]true[/code] si el icono con el nombre [code]name[/code] dado "
+"tiene una sobreescritura válida en este nodo [Control]."
#: doc/classes/Control.xml:518
msgid ""
"Returns [code]true[/code] if [Shader] with given [code]name[/code] has a "
"valid override in this [Control] node."
msgstr ""
+"Devuelve [code]true[/code] si [Shader] con el nombre [code]name[/code] dado "
+"tiene una sobreescritura válida en este nodo [Control]."
#: doc/classes/Control.xml:529
msgid ""
@@ -16631,12 +18628,17 @@ msgid ""
"associated with [Control] of given [code]type[/code] exists in assigned "
"[Theme]."
msgstr ""
+"Devuelve [code]true[/code] si [StyleBox] con el [code]name[/code] dado y "
+"asociado con el [Control] del [code]type[/code] dado existe en el [theme] "
+"asignado."
#: doc/classes/Control.xml:538
msgid ""
"Returns [code]true[/code] if [StyleBox] with given [code]name[/code] has a "
"valid override in this [Control] node."
msgstr ""
+"Devuelve [code]true[/code] si el [StyleBox] con el nombre [code]name[/code] "
+"dado tiene una sobreescritura válida en este nodo [Control]."
#: doc/classes/Control.xml:545
msgid ""
@@ -16645,11 +18647,17 @@ msgid ""
"changed. Setting [member rect_min_size] directly calls this method "
"automatically."
msgstr ""
+"Invalida el tamaño de la memoria caché en este nodo y en los nodos padres "
+"hasta el nivel superior. Está pensado para ser usado con [method "
+"get_minimum_size] cuando se cambia el valor de retorno. Si se establece "
+"[member rect_min_size] se llama directamente a este método de forma "
+"automática."
#: doc/classes/Control.xml:552
msgid ""
"Give up the focus. No other control will be able to receive keyboard input."
msgstr ""
+"Deje el enfoque. Ningún otro control podrá recibir la entrada del teclado."
#: doc/classes/Control.xml:567
msgid ""
@@ -16666,6 +18674,18 @@ msgid ""
"[code]push_opposite_anchor[/code] was [code]false[/code], the left anchor "
"would get value 0.5."
msgstr ""
+"Establece el ancla identificada por la constante [code]margin[/code] del "
+"enum [enum Margen] al valor [code]anchor[/code]. Un método de fijación para "
+"[member anchor_bottom], [member anchor_left], [member anchor_right] y "
+"[member anchor_top].\n"
+"Si [code]keep_margin[/code] es [code]true[/code], los márgenes no se "
+"actualizan después de esta operación.\n"
+"Si [code]push_opposite_anchor[/code] es [code]true[/code] y el ancla opuesta "
+"se superpone a esta ancla, la opuesta tendrá su valor sobreescrito. Por "
+"ejemplo, cuando se ajusta el ancla izquierda a 1 y el ancla derecha tiene el "
+"valor de 0,5, el ancla derecha también obtendrá el valor de 1. Si "
+"[code]push_opposite_anchor[/code] fuera [code]false[/code], el ancla "
+"izquierda obtendría el valor 0,5."
#: doc/classes/Control.xml:584
msgid ""
@@ -16673,12 +18693,18 @@ msgid ""
"code] argument and automatic update of margin, it allows to set the margin "
"offset yourself (see [method set_margin])."
msgstr ""
+"Funciona igual que [method set_anchor], pero en lugar del argumento "
+"[code]keep_margin[/code] y la actualización automática del margen, permite "
+"establecer el desplazamiento del margen por sí mismo (ver [method "
+"set_margin])."
#: doc/classes/Control.xml:597
msgid ""
"Sets both anchor preset and margin preset. See [method set_anchors_preset] "
"and [method set_margins_preset]."
msgstr ""
+"Establece tanto la preselección del ancla como la preselección del margen. "
+"Ver [method set_anchors_preset] y [method set_margins_preset]."
#: doc/classes/Control.xml:608
msgid ""
@@ -16687,12 +18713,19 @@ msgid ""
"If [code]keep_margins[/code] is [code]true[/code], control's position will "
"also be updated."
msgstr ""
+"Establece los anclajes a un [code]preestablecido[/code] del enum [enum "
+"Control.LayoutPreset]. Este es el código equivalente a usar el menú de "
+"diseño en el editor 2D.\n"
+"Si [code]keep_margins[/code] es [code]true[/code], la posición del control "
+"también se actualizará."
#: doc/classes/Control.xml:618
msgid ""
"Sets [member margin_left] and [member margin_top] at the same time. "
"Equivalent of changing [member rect_position]."
msgstr ""
+"Establece [member margin_left] y [member margin_top] al mismo tiempo. "
+"Equivale a cambiar [member rect_position]."
#: doc/classes/Control.xml:627
msgid ""
@@ -16723,6 +18756,32 @@ msgid ""
" return my_data()\n"
"[/codeblock]"
msgstr ""
+"Adelanta el manejo del arrastre y suelta de este control al control de "
+"[code]target[/code].\n"
+"El reenvío puede ser implementado en el control de destino de manera similar "
+"a los métodos [method get_drag_data], [method can_drop_data], y [method "
+"drop_data] pero con dos diferencias:\n"
+"1. El nombre de la función debe ser sufijado con [b]_fw[/b]\n"
+"2. La función debe tener un argumento extra que es el control que hace el "
+"reenvío\n"
+"[codeblock]\n"
+"# EsteControl.gd\n"
+"extends Control\n"
+"func _ready():\n"
+" set_drag_forwarding(control_objetivo)\n"
+"\n"
+"# ControlObjetivo.gd\n"
+"extends Control\n"
+"func puede_arrastrar_datos_fw(posicion, datos, desde_control):\n"
+" return true\n"
+"\n"
+"func arrastra_datos_fw(posicion, datos, desde_control):\n"
+" mi_manejo_de_datos(data)\n"
+"\n"
+"func obtener_datos_arrastrados_fw(posicion, datos, desde_control):\n"
+" set_drag_preview(mi_prevista)\n"
+" return misdatos()\n"
+"[/codeblock]"
#: doc/classes/Control.xml:657
msgid ""
@@ -16741,10 +18800,25 @@ msgid ""
" return color\n"
"[/codeblock]"
msgstr ""
+"Muestra el control dado en el puntero del ratón. Un buen momento para llamar "
+"a este método es en [method get_drag_data]. El control no debe estar en el "
+"árbol de la escena.\n"
+"[codeblock]\n"
+"export (Color, RGBA) var color = Color(1, 0, 0, 1)\n"
+"\n"
+"func get_drag_data(position):\n"
+" # Usa un control que no esta en el arbol\n"
+" var cpb = ColorPickerButton.new()\n"
+" cpb.color = color\n"
+" cpb.rect_size = Vector2(50, 50)\n"
+" set_drag_preview(cpb)\n"
+" return color\n"
+"[/codeblock]"
#: doc/classes/Control.xml:677
msgid "Sets [member margin_right] and [member margin_bottom] at the same time."
msgstr ""
+"Establece [member margin_right] y [member margin_bottom] al mismo tiempo."
#: doc/classes/Control.xml:688
msgid ""
@@ -16753,6 +18827,11 @@ msgid ""
"method for [member focus_neighbour_bottom], [member focus_neighbour_left], "
"[member focus_neighbour_right] and [member focus_neighbour_top]."
msgstr ""
+"Establece el ancla identificada por la constante [code]margin[/code] desde "
+"el [enum Margin] hasta [Control] en la ruta del nodo [code]neighbour[/code]. "
+"Un método de fijación para [member focus_neighbour_bottom], [member "
+"focus_neighbour_left], [member focus_neighbour_right] y [member "
+"focus_neighbour_top]."
#: doc/classes/Control.xml:699
msgid ""
@@ -16760,6 +18839,9 @@ msgid ""
"If [code]keep_margins[/code] is [code]true[/code], control's anchors will be "
"updated instead of margins."
msgstr ""
+"Establece el [member rect_global_position] a la [code]position[/code] dada.\n"
+"Si [code]keep_margins[/code] es [code]true[/code], los anclajes del control "
+"se actualizarán en lugar de los márgenes."
#: doc/classes/Control.xml:711
msgid ""
@@ -16768,6 +18850,10 @@ msgid ""
"margin_bottom], [member margin_left], [member margin_right] and [member "
"margin_top]."
msgstr ""
+"Establece el margen identificado por [code]margin[/code] constante desde el "
+"enum [enum Margin] hasta determinado [code]offset[/code]. Un método de "
+"fijación para [member margin_bottom], [member margin_left], [member "
+"margin_right] y [member margin_top]."
#: doc/classes/Control.xml:724
msgid ""
@@ -16780,6 +18866,15 @@ msgid ""
"Use parameter [code]margin[/code] to determine the gap between the [Control] "
"and the edges."
msgstr ""
+"Establece los márgenes a un [code]preset[/code] del enum [enum Control."
+"LayoutPreset]. Esto es un código equivalente a usar el menú de diseño en el "
+"editor 2D.\n"
+"Utilice el parámetro [code]resize_mode[/code] con las constantes de [enum "
+"Control.LayoutPresetMode] para determinar mejor el tamaño resultante del "
+"[Control]. El tamaño constante será ignorado si se usa con preajustes que "
+"cambian de tamaño, por ejemplo, [code]PRESET_LEFT_WIDE[/code].\n"
+"Utilice el parámetro [code]margin[/code] para determinar el espacio entre el "
+"[Control] y los bordes."
#: doc/classes/Control.xml:737
msgid ""
@@ -16787,10 +18882,13 @@ msgid ""
"If [code]keep_margins[/code] is [code]true[/code], control's anchors will be "
"updated instead of margins."
msgstr ""
+"Establece la [member rect_position] a la [code]position[/code] dada.\n"
+"Si [code]keep_margins[/code] es [code]true[/code], los anclajes del control "
+"se actualizarán en lugar de los márgenes."
#: doc/classes/Control.xml:747
msgid "Sets the rotation (in radians)."
-msgstr ""
+msgstr "Establece la rotación (en radianes)."
#: doc/classes/Control.xml:758
msgid ""
@@ -16798,12 +18896,17 @@ msgid ""
"If [code]keep_margins[/code] is [code]true[/code], control's anchors will be "
"updated instead of margins."
msgstr ""
+"Establece el tamaño (ver [member rect_size]).\n"
+"Si [code]keep_margins[/code] es [code]true[/code], los anclajes del control "
+"se actualizarán en lugar de los márgenes."
#: doc/classes/Control.xml:768
msgid ""
"Moves the mouse cursor to [code]to_position[/code], relative to [member "
"rect_position] of this [Control]."
msgstr ""
+"Mueve el cursor del ratón a [code]to_position[/code], relativo a la [member "
+"rect_position] de este [Control]."
#: doc/classes/Control.xml:774
msgid ""
@@ -16812,6 +18915,10 @@ msgid ""
"moves or changes size. You can use one of the [enum Anchor] constants for "
"convenience."
msgstr ""
+"Ancla el borde inferior del nodo al origen, el centro o el final de su "
+"control parental. Cambia la forma en que el margen inferior se actualiza "
+"cuando el nodo se mueve o cambia de tamaño. Puedes usar una de las "
+"constantes [enum Anchor] por conveniencia."
#: doc/classes/Control.xml:777
msgid ""
@@ -16820,6 +18927,10 @@ msgid ""
"moves or changes size. You can use one of the [enum Anchor] constants for "
"convenience."
msgstr ""
+"Ancla el borde izquierdo del nodo al origen, el centro o el final de su "
+"control parental. Cambia la forma en que el margen izquierdo se actualiza "
+"cuando el nodo se mueve o cambia de tamaño. Puedes usar una de las "
+"constantes [enum Anchor] por conveniencia."
#: doc/classes/Control.xml:780
msgid ""
@@ -16828,6 +18939,10 @@ msgid ""
"moves or changes size. You can use one of the [enum Anchor] constants for "
"convenience."
msgstr ""
+"Ancla el borde derecho del nodo al origen, el centro o el final de su "
+"control parental. Cambia la forma en que el margen derecho se actualiza "
+"cuando el nodo se mueve o cambia de tamaño. Puedes usar una de las "
+"constantes [enum Anchor] por conveniencia."
#: doc/classes/Control.xml:783
msgid ""
@@ -16836,12 +18951,19 @@ msgid ""
"changes size. You can use one of the [enum Anchor] constants for "
"convenience."
msgstr ""
+"Ancla el borde superior del nodo al origen, el centro o el final de su "
+"control parental. Cambia la forma en que el margen superior se actualiza "
+"cuando el nodo se mueve o cambia de tamaño. Puedes usar una de las "
+"constantes [enum Anchor] por conveniencia."
#: doc/classes/Control.xml:786
msgid ""
"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 signals."
msgstr ""
+"El modo de acceso de enfoque para el control (Ninguno, Clic o Todos). Sólo "
+"un Control puede ser enfocado al mismo tiempo, y recibirá señales del "
+"teclado."
#: doc/classes/Control.xml:789
msgid ""
@@ -16851,6 +18973,11 @@ msgid ""
"must be a [Control]. If this property is not set, Godot will give focus to "
"the closest [Control] to the bottom of this one."
msgstr ""
+"Le dice a Godot a qué nodo debe darle enfoque de teclado si el usuario "
+"presiona la flecha hacia abajo en el teclado o hacia abajo en un gamepad por "
+"defecto. Puede cambiar la tecla editando la acción de entrada [code]ui_down[/"
+"code]. El nodo debe ser un [Control]. Si no se establece esta propiedad, "
+"Godot dará el foco al [Control] más cercano a la parte inferior de éste."
#: doc/classes/Control.xml:792
msgid ""
@@ -16860,6 +18987,11 @@ msgid ""
"must be a [Control]. If this property is not set, Godot will give focus to "
"the closest [Control] to the left of this one."
msgstr ""
+"Le dice a Godot a qué nodo debe dar enfoque de teclado si el usuario "
+"presiona la flecha izquierda en el teclado o la izquierda en un gamepad por "
+"defecto. Puede cambiar la tecla editando la acción de entrada [code]ui_left[/"
+"code]. El nodo debe ser un [Control]. Si no se establece esta propiedad, "
+"Godot dará el foco al [Control] más cercano a la izquierda de éste."
#: doc/classes/Control.xml:795
msgid ""
@@ -16869,6 +19001,12 @@ msgid ""
"must be a [Control]. If this property is not set, Godot will give focus to "
"the closest [Control] to the bottom of this one."
msgstr ""
+"Le dice a Godot a qué nodo debe darle enfoque de teclado si el usuario "
+"presiona la flecha derecha en el teclado o la derecha en un gamepad por "
+"defecto. Puede cambiar la tecla editando la acción de entrada "
+"[code]ui_right[/code]. El nodo debe ser un [Control]. Si no se establece "
+"esta propiedad, Godot dará el foco al [Control] más cercano a la parte "
+"inferior de éste."
#: doc/classes/Control.xml:798
msgid ""
@@ -16878,6 +19016,11 @@ msgid ""
"[Control]. If this property is not set, Godot will give focus to the closest "
"[Control] to the bottom of this one."
msgstr ""
+"Le dice a Godot a qué nodo debe darle enfoque de teclado si el usuario "
+"presiona la flecha superior del teclado o el arriba de un gamepad por "
+"defecto. Puede cambiar la tecla editando la acción de entrada [code]ui_top[/"
+"code]. El nodo debe ser un [Control]. Si no se establece esta propiedad, "
+"Godot dará el foco al [Control] más cercano a la parte inferior de éste."
#: doc/classes/Control.xml:801
msgid ""
@@ -16887,6 +19030,11 @@ msgid ""
"If this property is not set, Godot will select a \"best guess\" based on "
"surrounding nodes in the scene tree."
msgstr ""
+"Le dice a Godot a qué nodo debe dar enfoque de teclado si el usuario "
+"presiona [kbd]Tab[/kbd] en un teclado por defecto. Puede cambiar la tecla "
+"editando la acción de entrada [code]ui_focus_next[/code].\n"
+"Si esta propiedad no está establecida, Godot seleccionará una \"mejor "
+"suposición\" basada en los nodos circundantes en el árbol de la escena."
#: doc/classes/Control.xml:805
msgid ""
@@ -16896,6 +19044,11 @@ msgid ""
"If this property is not set, Godot will select a \"best guess\" based on "
"surrounding nodes in the scene tree."
msgstr ""
+"Le dice a Godot a qué nodo debe dar enfoque de teclado si el usuario "
+"presiona [kbd]Shift + Tab[/kbd] en un teclado por defecto. Puede cambiar la "
+"tecla editando la acción de entrada [code]ui_focus_prev[/code].\n"
+"Si esta propiedad no está establecida, Godot seleccionará una \"mejor "
+"suposición\" basada en los nodos circundantes en el árbol de la escena."
#: doc/classes/Control.xml:809
msgid ""
@@ -16903,6 +19056,9 @@ msgid ""
"grow if its horizontal minimum size is changed to be greater than its "
"current size, as the control always has to be at least the minimum size."
msgstr ""
+"Controla la dirección en el eje horizontal en la que el control debe crecer "
+"si su tamaño mínimo horizontal se cambia para que sea mayor que su tamaño "
+"actual, ya que el control siempre tiene que ser al menos del tamaño mínimo."
#: doc/classes/Control.xml:812
msgid ""
@@ -16910,6 +19066,9 @@ msgid ""
"if its vertical minimum size is changed to be greater than its current size, "
"as the control always has to be at least the minimum size."
msgstr ""
+"Controla la dirección en el eje vertical en la que el control debe crecer si "
+"su tamaño mínimo vertical se cambia para que sea mayor que su tamaño actual, "
+"ya que el control siempre tiene que ser al menos del tamaño mínimo."
#: doc/classes/Control.xml:815
msgid ""
@@ -16919,6 +19078,12 @@ msgid ""
"the time required for the tooltip to appear with [code]gui/timers/"
"tooltip_delay_sec[/code] option in Project Settings."
msgstr ""
+"Cambia el texto de la sugerenica. La sugerencia aparece cuando el cursor del "
+"ratón del usuario permanece inactivo sobre este control por unos momentos, "
+"siempre que la propiedad [member mouse_filter] no sea [constant "
+"MOUSE_FILTER_IGNORE]. Se puede modificar el tiempo necesario para que la "
+"sugerencia aparezca con la opción [code]gui/timers/tooltip_delay_sec[/code] "
+"en los parámetros del proyecto."
#: doc/classes/Control.xml:818
msgid ""
@@ -16928,6 +19093,12 @@ msgid ""
"you should not modify them manually if your node is a direct child of a "
"[Container]. Margins update automatically when you move or resize the node."
msgstr ""
+"Distancia entre el borde inferior del nodo y su control padre, basado en "
+"[member anchor_bottom].\n"
+"Los márgenes suelen estar controlados por uno o varios nodos padre "
+"[Container], por lo que no debe modificarlos manualmente si su nodo es hijo "
+"directo de un [Container]. Los márgenes se actualizan automáticamente cuando "
+"mueve o cambia el tamaño del nodo."
#: doc/classes/Control.xml:822
msgid ""
@@ -16937,6 +19108,12 @@ msgid ""
"you should not modify them manually if your node is a direct child of a "
"[Container]. Margins update automatically when you move or resize the node."
msgstr ""
+"Distancia entre el borde izquierdo del nodo y su control padre, basado en "
+"[member anchor_left].\n"
+"Los márgenes suelen estar controlados por uno o varios nodos padre "
+"[Container], por lo que no debe modificarlos manualmente si su nodo es hijo "
+"directo de un [Container]. Los márgenes se actualizan automáticamente cuando "
+"mueve o cambia el tamaño del nodo."
#: doc/classes/Control.xml:826
msgid ""
@@ -16946,6 +19123,12 @@ msgid ""
"you should not modify them manually if your node is a direct child of a "
"[Container]. Margins update automatically when you move or resize the node."
msgstr ""
+"Distancia entre el borde derecho del nodo y su control padre, basado en "
+"[member anchor_right].\n"
+"Los márgenes suelen estar controlados por uno o varios nodos padre "
+"[Container], por lo que no debe modificarlos manualmente si su nodo es hijo "
+"directo de un [Container]. Los márgenes se actualizan automáticamente cuando "
+"mueve o cambia el tamaño del nodo."
#: doc/classes/Control.xml:830
msgid ""
@@ -16955,6 +19138,12 @@ msgid ""
"you should not modify them manually if your node is a direct child of a "
"[Container]. Margins update automatically when you move or resize the node."
msgstr ""
+"Distancia entre el borde superior del nodo y su control padre, basado en "
+"[member anchor_top].\n"
+"Los márgenes suelen estar controlados por uno o varios nodos padre "
+"[Container], por lo que no debe modificarlos manualmente si su nodo es hijo "
+"directo de un [Container]. Los márgenes se actualizan automáticamente cuando "
+"mueve o cambia el tamaño del nodo."
#: doc/classes/Control.xml:834
msgid ""
@@ -16963,6 +19152,11 @@ msgid ""
"[b]Note:[/b] On Linux, shapes may vary depending on the cursor theme of the "
"system."
msgstr ""
+"La forma del cursor por defecto para este control. Útil para los plugins de "
+"Godot y las aplicaciones o juegos que utilizan los cursores del ratón del "
+"sistema.\n"
+"[b]Nota:[/b] En Linux, las formas pueden variar dependiendo del tema del "
+"cursor del sistema."
#: doc/classes/Control.xml:838
msgid ""
@@ -16971,6 +19165,11 @@ msgid ""
"Also controls whether the control can receive the [signal mouse_entered], "
"and [signal mouse_exited] signals. See the constants to learn what each does."
msgstr ""
+"Controla si el control será capaz de recibir eventos de entrada del botón "
+"del ratón a través del [method _gui_input] y cómo estos eventos deben ser "
+"manejados. También controla si el control puede recibir las señales [signal "
+"mouse_entered], y [signal mouse_exited]. Mira las constantes para aprender "
+"lo que hace cada una."
#: doc/classes/Control.xml:841
msgid ""
@@ -16978,12 +19177,18 @@ msgid ""
"to this control's rectangle. If [code]true[/code], parts of a child which "
"would be visibly outside of this control's rectangle will not be rendered."
msgstr ""
+"Permite si la representación de los hijos basados en [CanvasItem] debe ser "
+"recortada al rectángulo de este control. Si [code]true[/code], no se "
+"renderizarán las partes de un hijo que estarían visiblemente fuera del "
+"rectángulo de este control."
#: doc/classes/Control.xml:844
msgid ""
"The node's global position, relative to the world (usually to the top-left "
"corner of the window)."
msgstr ""
+"La posición global del nodo, en relación con el mundo (normalmente en la "
+"esquina superior izquierda de la ventana)."
#: doc/classes/Control.xml:847
msgid ""
@@ -16992,6 +19197,11 @@ msgid ""
"this size, even if its content is smaller. If it's set to (0, 0), the node "
"sizes automatically to fit its content, be it a texture or child nodes."
msgstr ""
+"El tamaño mínimo del rectángulo delimitador del nodo. Si lo fijas en un "
+"valor mayor que (0, 0), el rectángulo delimitador del nodo siempre tendrá al "
+"menos este tamaño, aunque su contenido sea menor. Si se establece en (0, 0), "
+"el nodo se dimensiona automáticamente para ajustarse a su contenido, ya sea "
+"una textura o un nodo hijo."
#: doc/classes/Control.xml:850
msgid ""
@@ -16999,6 +19209,10 @@ msgid ""
"[member rect_scale], it will scale around this pivot. Set this property to "
"[member rect_size] / 2 to center the pivot in the node's rectangle."
msgstr ""
+"Por defecto, el pivote del nodo es su esquina superior izquierda. Cuando "
+"cambias su [member rect_scale], se escalará alrededor de este pivote. "
+"Establezca esta propiedad en [member rect_size] / 2 para centrar el pivote "
+"en el rectángulo del nodo."
#: doc/classes/Control.xml:853
msgid ""
@@ -17006,33 +19220,55 @@ msgid ""
"rectangle's top-left corner. The property is not affected by [member "
"rect_pivot_offset]."
msgstr ""
+"La posición del nodo, en relación con su padre. Corresponde a la esquina "
+"superior izquierda del rectángulo. La propiedad no se ve afectada por "
+"[member rect_pivot_offset]."
#: doc/classes/Control.xml:856
msgid ""
"The node's rotation around its pivot, in degrees. See [member "
"rect_pivot_offset] to change the pivot's position."
msgstr ""
+"La rotación del nodo alrededor de su pivote, en grados. Ver [member "
+"rect_pivot_offset] para cambiar la posición del pivote."
#: doc/classes/Control.xml:859
msgid ""
"The node's scale, relative to its [member rect_size]. Change this property "
-"to scale the node around its [member rect_pivot_offset]."
-msgstr ""
-
-#: doc/classes/Control.xml:862
+"to scale the node around its [member rect_pivot_offset]. The Control's "
+"[member hint_tooltip] will also scale according to this value.\n"
+"[b]Note:[/b] This property is mainly intended to be used for animation "
+"purposes. Text inside the Control will look pixelated or blurry when the "
+"Control is scaled. To support multiple resolutions in your project, use an "
+"appropriate viewport stretch mode as described in the [url=https://docs."
+"godotengine.org/en/latest/tutorials/viewports/multiple_resolutions."
+"html]documentation[/url] instead of scaling Controls individually.\n"
+"[b]Note:[/b] If the Control node is a child of a [Container] node, the scale "
+"will be reset to [code]Vector2(1, 1)[/code] when the scene is instanced. To "
+"set the Control's scale when it's instanced, wait for one frame using "
+"[code]yield(get_tree(), \"idle_frame\")[/code] then set its [member "
+"rect_scale] property."
+msgstr ""
+
+#: doc/classes/Control.xml:864
msgid ""
"The size of the node's bounding rectangle, in pixels. [Container] nodes "
"update this property automatically."
msgstr ""
+"El tamaño del rectángulo delimitador del nodo, en píxeles. Los nodos "
+"[Container] actualizan esta propiedad automáticamente."
-#: doc/classes/Control.xml:865
+#: doc/classes/Control.xml:867
msgid ""
"Tells the parent [Container] nodes how they should resize and place the node "
"on the X axis. Use one of the [enum SizeFlags] constants to change the "
"flags. See the constants to learn what each does."
msgstr ""
+"Le dice a los nodos padre [Container] cómo deben cambiar de tamaño y colocar "
+"el nodo en el eje X. Usa una de las constantes [enum SizeFlags] para cambiar "
+"los flags. Vea las constantes para aprender lo que hace cada una."
-#: doc/classes/Control.xml:868
+#: doc/classes/Control.xml:870
msgid ""
"If the node and at least one of its neighbours uses the [constant "
"SIZE_EXPAND] size flag, the parent [Container] will let it take more or less "
@@ -17040,350 +19276,477 @@ msgid ""
"its neighbour a ratio of 1, this node will take two thirds of the available "
"space."
msgstr ""
+"Si el nodo y al menos uno de sus vecinos utiliza el flag de tamaño [constant "
+"SIZE_EXPAND], el padre [Container] le dejará ocupar más o menos espacio "
+"dependiendo de esta propiedad. Si este nodo tiene un ratio de estiramiento "
+"de 2 y su vecino un ratio de 1, este nodo tomará dos tercios del espacio "
+"disponible."
-#: doc/classes/Control.xml:871
+#: doc/classes/Control.xml:873
msgid ""
"Tells the parent [Container] nodes how they should resize and place the node "
"on the Y axis. Use one of the [enum SizeFlags] constants to change the "
"flags. See the constants to learn what each does."
msgstr ""
+"Le dice a los nodos padres [Container] cómo deben cambiar de tamaño y "
+"colocar el nodo en el eje Y. Usa una de las constantes [enum SizeFlags] para "
+"cambiar los flags. Vea las constantes para aprender lo que hace cada una."
-#: doc/classes/Control.xml:874
+#: doc/classes/Control.xml:876
msgid ""
"Changing this property replaces the current [Theme] resource this node and "
"all its [Control] children use."
msgstr ""
+"Cambiar esta propiedad reemplaza el actual recurso [Theme] que este nodo y "
+"todos sus hijos [Control] utilizan."
-#: doc/classes/Control.xml:880
+#: doc/classes/Control.xml:882
msgid "Emitted when the node gains keyboard focus."
-msgstr ""
+msgstr "Se emite cuando el nodo obtiene el foco del teclado."
-#: doc/classes/Control.xml:885
+#: doc/classes/Control.xml:887
msgid "Emitted when the node loses keyboard focus."
-msgstr ""
+msgstr "Emitido cuando el nodo pierde el foco del teclado."
-#: doc/classes/Control.xml:892
+#: doc/classes/Control.xml:894
msgid "Emitted when the node receives an [InputEvent]."
-msgstr ""
+msgstr "Emitido cuando el nodo recibe un [InputEvent]."
-#: doc/classes/Control.xml:897
+#: doc/classes/Control.xml:899
msgid "Emitted when the node's minimum size changes."
-msgstr ""
+msgstr "Emitido cuando el tamaño mínimo del nodo cambia."
-#: doc/classes/Control.xml:902
+#: doc/classes/Control.xml:904
msgid ""
"Emitted when the mouse enters the control's [code]Rect[/code] area, provided "
"its [member mouse_filter] lets the event reach it."
msgstr ""
+"Emitido cuando el ratón entra en el área de [code]Rect[/code] del control, "
+"siempre que su [member mouse_filter] permita que el evento llegue a él."
-#: doc/classes/Control.xml:907
+#: doc/classes/Control.xml:909
msgid ""
"Emitted when the mouse leaves the control's [code]Rect[/code] area, provided "
"its [member mouse_filter] lets the event reach it."
msgstr ""
+"Emitido cuando el ratón abandona el área de [code]Rect[/code] del control, "
+"siempre que su [member mouse_filter] permita que el evento llegue a él."
-#: doc/classes/Control.xml:912
+#: doc/classes/Control.xml:914
msgid "Emitted when the control changes size."
-msgstr ""
+msgstr "Emitido cuando el control cambia de tamaño."
-#: doc/classes/Control.xml:917
+#: doc/classes/Control.xml:919
msgid ""
"Emitted when one of the size flags changes. See [member "
"size_flags_horizontal] and [member size_flags_vertical]."
msgstr ""
+"Emitido cuando una de las flags de tamaño cambia. Ver [size del "
+"size_flags_horizontal] y [size size_flags_vertical]."
-#: doc/classes/Control.xml:927
+#: doc/classes/Control.xml:929
msgid "The node cannot grab focus. Use with [member focus_mode]."
-msgstr ""
+msgstr "El nodo no puede captar el foco. Usar con [member focus_mode]."
-#: doc/classes/Control.xml:930
+#: doc/classes/Control.xml:932
msgid ""
"The node can only grab focus on mouse clicks. Use with [member focus_mode]."
msgstr ""
+"El nodo sólo puede captar el foco en los clics del ratón. Usar con [member "
+"focus_mode]."
-#: doc/classes/Control.xml:933
+#: doc/classes/Control.xml:935
msgid ""
"The node can grab focus on mouse click or using the arrows and the Tab keys "
"on the keyboard. Use with [member focus_mode]."
msgstr ""
+"El nodo sólo puede captar el foco en los clics del ratón. Usar con [member "
+"focus_mode]."
-#: doc/classes/Control.xml:936
+#: doc/classes/Control.xml:938
msgid ""
"Sent when the node changes size. Use [member rect_size] to get the new size."
msgstr ""
+"Enviado cuando el nodo cambia de tamaño. Usa [member rect_size] para obtener "
+"el nuevo tamaño."
-#: doc/classes/Control.xml:939
+#: doc/classes/Control.xml:941
msgid "Sent when the mouse pointer enters the node."
-msgstr ""
+msgstr "Se envía cuando el puntero del ratón entra en el nodo."
-#: doc/classes/Control.xml:942
+#: doc/classes/Control.xml:944
msgid "Sent when the mouse pointer exits the node."
-msgstr ""
+msgstr "Se envía cuando el puntero del ratón sale del nodo."
-#: doc/classes/Control.xml:945
+#: doc/classes/Control.xml:947
msgid "Sent when the node grabs focus."
-msgstr ""
+msgstr "Enviado cuando el nodo agarra el foco."
-#: doc/classes/Control.xml:948
+#: doc/classes/Control.xml:950
msgid "Sent when the node loses focus."
-msgstr ""
+msgstr "Enviado cuando el nodo pierde el enfoque."
-#: doc/classes/Control.xml:951
+#: doc/classes/Control.xml:953
msgid ""
"Sent when the node's [member theme] changes, right before Godot redraws the "
"control. Happens when you call one of the [code]add_theme_*_override[/code] "
"methods."
msgstr ""
+"Enviado cuando el nodo [member theme] cambia, justo antes de que Godot "
+"redibuje el control. Ocurre cuando llamas a uno de los métodos "
+"[code]add_theme_*_override[/code]."
-#: doc/classes/Control.xml:954
+#: doc/classes/Control.xml:956
msgid ""
"Sent when this node is inside a [ScrollContainer] which has begun being "
"scrolled."
msgstr ""
+"Enviado cuando este nodo está dentro de un [ScrollContainer] que ha "
+"comenzado a ser desplazado."
-#: doc/classes/Control.xml:957
+#: doc/classes/Control.xml:959
msgid ""
"Sent when this node is inside a [ScrollContainer] which has stopped being "
"scrolled."
msgstr ""
+"Enviado cuando este nodo está dentro de un [ScrollContainer] que ha dejado "
+"de ser desplazado."
-#: doc/classes/Control.xml:960
+#: doc/classes/Control.xml:962
msgid ""
"Show the system's arrow mouse cursor when the user hovers the node. Use with "
"[member mouse_default_cursor_shape]."
msgstr ""
+"Mostrar el cursor del ratón de la flecha del sistema cuando el usuario pasa "
+"por encima del nodo. Usar con [member mouse_default_cursor_shape]."
-#: doc/classes/Control.xml:963
+#: doc/classes/Control.xml:965
msgid ""
"Show the system's I-beam mouse cursor when the user hovers the node. The I-"
"beam pointer has a shape similar to \"I\". It tells the user they can "
"highlight or insert text."
msgstr ""
+"Muestra el cursor del ratón del sistema I-beam cuando el usuario pasa por "
+"encima del nodo. El puntero del I-beam tiene una forma similar a la de la \"I"
+"\". Le dice al usuario que puede resaltar o insertar texto."
-#: doc/classes/Control.xml:966
+#: doc/classes/Control.xml:968
msgid ""
"Show the system's pointing hand mouse cursor when the user hovers the node."
msgstr ""
+"Muestra el cursor del ratón de la mano del sistema cuando el usuario pasa "
+"por encima del nodo."
-#: doc/classes/Control.xml:969
+#: doc/classes/Control.xml:971
msgid "Show the system's cross mouse cursor when the user hovers the node."
msgstr ""
+"Muestra el cursor cruzado del ratón del sistema cuando el usuario pasa por "
+"encima del nodo."
-#: doc/classes/Control.xml:972
+#: doc/classes/Control.xml:974
msgid ""
"Show the system's wait mouse cursor, often an hourglass, when the user "
"hovers the node."
msgstr ""
+"Muestra el cursor del ratón de espera del sistema, a menudo un reloj de "
+"arena, cuando el usuario pasa por encima del nodo."
-#: doc/classes/Control.xml:975
+#: doc/classes/Control.xml:977
msgid ""
"Show the system's busy mouse cursor when the user hovers the node. Often an "
"hourglass."
msgstr ""
+"Muestra el cursor del ratón ocupado del sistema cuando el usuario pasa por "
+"encima del nodo. A menudo un reloj de arena."
-#: doc/classes/Control.xml:978
+#: doc/classes/Control.xml:980
msgid ""
"Show the system's drag mouse cursor, often a closed fist or a cross symbol, "
"when the user hovers the node. It tells the user they're currently dragging "
"an item, like a node in the Scene dock."
msgstr ""
+"Muestra el cursor del ratón de arrastre del sistema, a menudo un puño "
+"cerrado o un símbolo de cruz, cuando el usuario pasa por encima del nodo. Le "
+"dice al usuario que está arrastrando un elemento, como un nodo en el Dock de "
+"la escena."
-#: doc/classes/Control.xml:981
+#: doc/classes/Control.xml:983
msgid ""
"Show the system's drop mouse cursor when the user hovers the node. It can be "
"an open hand. It tells the user they can drop an item they're currently "
"grabbing, like a node in the Scene dock."
msgstr ""
+"Muestra el cursor del ratón del sistema cuando el usuario pasa por encima "
+"del nodo. Puede ser una mano abierta. Le dice al usuario que puede soltar un "
+"elemento que está agarrando, como un nodo en el Dock de la escena."
-#: doc/classes/Control.xml:984
+#: doc/classes/Control.xml:986
msgid ""
"Show the system's forbidden mouse cursor when the user hovers the node. "
"Often a crossed circle."
msgstr ""
+"Muestra el cursor del ratón prohibido del sistema cuando el usuario pasa por "
+"encima del nodo. A menudo un círculo cruzado."
-#: doc/classes/Control.xml:987
+#: doc/classes/Control.xml:989
msgid ""
"Show the system's vertical resize mouse cursor when the user hovers the "
"node. A double-headed vertical arrow. It tells the user they can resize the "
"window or the panel vertically."
msgstr ""
+"Muestra el cursor del ratón de tamaño vertical del sistema cuando el usuario "
+"pasa por encima del nodo. Una flecha vertical de doble punta. Le dice al "
+"usuario que puede cambiar el tamaño de la ventana o del panel verticalmente."
-#: doc/classes/Control.xml:990
+#: doc/classes/Control.xml:992
msgid ""
"Show the system's horizontal resize mouse cursor when the user hovers the "
"node. A double-headed horizontal arrow. It tells the user they can resize "
"the window or the panel horizontally."
msgstr ""
+"Muestra el cursor del ratón de tamaño horizontal del sistema cuando el "
+"usuario pasa por encima del nodo. Una flecha horizontal de doble punta. Le "
+"dice al usuario que puede cambiar el tamaño de la ventana o del panel "
+"horizontalmente."
-#: doc/classes/Control.xml:993
+#: doc/classes/Control.xml:995
msgid ""
"Show the system's window resize mouse cursor when the user hovers the node. "
"The cursor is a double-headed arrow that goes from the bottom left to the "
"top right. It tells the user they can resize the window or the panel both "
"horizontally and vertically."
msgstr ""
+"Muestra el cursor de cambio de tamaño de la ventana del sistema del ratón "
+"cuando el usuario pasa por encima del nodo. El cursor es una flecha de doble "
+"punta que va de abajo a la izquierda a arriba a la derecha. Le dice al "
+"usuario que puede cambiar el tamaño de la ventana o del panel tanto "
+"horizontal como verticalmente."
-#: doc/classes/Control.xml:996
+#: doc/classes/Control.xml:998
msgid ""
"Show the system's window resize mouse cursor when the user hovers the node. "
"The cursor is a double-headed arrow that goes from the top left to the "
"bottom right, the opposite of [constant CURSOR_BDIAGSIZE]. It tells the user "
"they can resize the window or the panel both horizontally and vertically."
msgstr ""
+"Muestra el cursor del cambio de tamaño de la ventana del sistema cuando el "
+"usuario pasa por encima del nodo. El cursor es una flecha de doble punta que "
+"va de arriba a la izquierda a abajo a la derecha, lo opuesto a [constant "
+"CURSOR_BDIAGSIZE]. Le dice al usuario que puede cambiar el tamaño de la "
+"ventana o del panel tanto horizontal como verticalmente."
-#: doc/classes/Control.xml:999
+#: doc/classes/Control.xml:1001
msgid ""
"Show the system's move mouse cursor when the user hovers the node. It shows "
"2 double-headed arrows at a 90 degree angle. It tells the user they can move "
"a UI element freely."
msgstr ""
+"Muestra el cursor del ratón del sistema cuando el usuario pasa por encima "
+"del nodo. Muestra 2 flechas de doble cabeza en un ángulo de 90 grados. Le "
+"dice al usuario que puede mover libremente un elemento de la interfaz de "
+"usuario."
-#: doc/classes/Control.xml:1002
+#: doc/classes/Control.xml:1004
msgid ""
"Show the system's vertical split mouse cursor when the user hovers the node. "
"On Windows, it's the same as [constant CURSOR_VSIZE]."
msgstr ""
+"Muestra el cursor del ratón dividido verticalmente del sistema cuando el "
+"usuario pasa por encima del nodo. En Windows, es lo mismo que [constant "
+"CURSOR_VSIZE]."
-#: doc/classes/Control.xml:1005
+#: doc/classes/Control.xml:1007
msgid ""
"Show the system's horizontal split mouse cursor when the user hovers the "
"node. On Windows, it's the same as [constant CURSOR_HSIZE]."
msgstr ""
+"Muestra el cursor del ratón dividido horizontalmente del sistema cuando el "
+"usuario pasa por encima del nodo. En Windows, es lo mismo que [constante "
+"CURSOR_HSIZE]."
-#: doc/classes/Control.xml:1008
+#: doc/classes/Control.xml:1010
msgid ""
"Show the system's help mouse cursor when the user hovers the node, a "
"question mark."
msgstr ""
+"Mostrar el cursor del ratón de ayuda del sistema cuando el usuario pasa por "
+"encima del nodo, un signo de interrogación."
-#: doc/classes/Control.xml:1011
+#: doc/classes/Control.xml:1013
msgid ""
"Snap all 4 anchors to the top-left of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
+"Pone las cuatro anclas en la parte superior izquierda de los límites del "
+"control parental. Usar con [method set_anchors_preset]."
-#: doc/classes/Control.xml:1014
+#: doc/classes/Control.xml:1016
msgid ""
"Snap all 4 anchors to the top-right of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
+"Pone las cuatro anclas en la parte superior derecha de los límites del "
+"control parental. Usar con [method set_anchors_preset]."
-#: doc/classes/Control.xml:1017
+#: doc/classes/Control.xml:1019
msgid ""
"Snap all 4 anchors to the bottom-left of the parent control's bounds. Use "
"with [method set_anchors_preset]."
msgstr ""
+"Pone las cuatro anclas en la parte inferior izquierda de los límites del "
+"control parental. Usar con [method set_anchors_preset]."
-#: doc/classes/Control.xml:1020
+#: doc/classes/Control.xml:1022
msgid ""
"Snap all 4 anchors to the bottom-right of the parent control's bounds. Use "
"with [method set_anchors_preset]."
msgstr ""
+"Pone las cuatro anclas en la parte inferior derecha de los límites del "
+"control parental. Usar con [method set_anchors_preset]."
-#: doc/classes/Control.xml:1023
+#: doc/classes/Control.xml:1025
msgid ""
"Snap all 4 anchors to the center of the left edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
+"Pone las 4 anclas en el centro del borde izquierdo de los límites del "
+"control parental. Usar con [method set_anchors_preset]."
-#: doc/classes/Control.xml:1026
+#: doc/classes/Control.xml:1028
msgid ""
"Snap all 4 anchors to the center of the top edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
+"Pone las 4 anclas en el centro del borde superior de los límites del control "
+"parental. Usar con [method set_anchors_preset]."
-#: doc/classes/Control.xml:1029
+#: doc/classes/Control.xml:1031
msgid ""
"Snap all 4 anchors to the center of the right edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
+"Pone las 4 anclas en el centro del borde derecho de los límites del control "
+"parental. Usar con [method set_anchors_preset]."
-#: doc/classes/Control.xml:1032
+#: doc/classes/Control.xml:1034
msgid ""
"Snap all 4 anchors to the center of the bottom edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
+"Pone las 4 anclas en el centro del borde inferior de los límites del control "
+"parental. Usar con [method set_anchors_preset]."
-#: doc/classes/Control.xml:1035
+#: doc/classes/Control.xml:1037
msgid ""
"Snap all 4 anchors to the center of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
+"Pone las cuatro anclas en el centro de los límites del control parental. "
+"Usar con [method set_anchors_preset]."
-#: doc/classes/Control.xml:1038
+#: doc/classes/Control.xml:1040
msgid ""
"Snap all 4 anchors to the left edge of the parent control. The left margin "
"becomes relative to the left edge and the top margin relative to the top "
"left corner of the node's parent. Use with [method set_anchors_preset]."
msgstr ""
+"Pone las 4 anclas en el borde izquierdo del control parental. El margen "
+"izquierdo se convierte en relativo al borde izquierdo y el margen superior "
+"en relativo a la esquina superior izquierda del nodo padre. Usar con [method "
+"set_anchors_preset]."
-#: doc/classes/Control.xml:1041
+#: doc/classes/Control.xml:1043
msgid ""
"Snap all 4 anchors to the top edge of the parent control. The left margin "
"becomes relative to the top left corner, the top margin relative to the top "
"edge, and the right margin relative to the top right corner of the node's "
"parent. Use with [method set_anchors_preset]."
msgstr ""
+"Pone las 4 anclas en el borde superior del control parental. El margen "
+"izquierdo se convierte en relativo a la esquina superior izquierda, el "
+"margen superior relativo al borde superior, y el margen derecho relativo a "
+"la esquina superior derecha del nodo padre. Usar con [method "
+"set_anchors_preset]."
-#: doc/classes/Control.xml:1044
+#: doc/classes/Control.xml:1046
msgid ""
"Snap all 4 anchors to the right edge of the parent control. The right margin "
"becomes relative to the right edge and the top margin relative to the top "
"right corner of the node's parent. Use with [method set_anchors_preset]."
msgstr ""
+"Pone las 4 anclas en el borde derecho del control parental. El margen "
+"derecho se convierte en relativo al borde derecho y el margen superior en "
+"relativo a la esquina superior derecha del nodo padre. Usar con [method "
+"set_anchors_preset]."
-#: doc/classes/Control.xml:1047
+#: doc/classes/Control.xml:1049
msgid ""
"Snap all 4 anchors to the bottom edge of the parent control. The left margin "
"becomes relative to the bottom left corner, the bottom margin relative to "
"the bottom edge, and the right margin relative to the bottom right corner of "
"the node's parent. Use with [method set_anchors_preset]."
msgstr ""
+"Pone las 4 anclas en el borde inferior del control parental. El margen "
+"izquierdo se convierte en relativo a la esquina inferior izquierda, el "
+"margen inferior relativo al borde inferior, y el margen derecho relativo a "
+"la esquina inferior derecha del nodo padre. Usar con [method "
+"set_anchors_preset]."
-#: doc/classes/Control.xml:1050
+#: doc/classes/Control.xml:1052
msgid ""
"Snap all 4 anchors to a vertical line that cuts the parent control in half. "
"Use with [method set_anchors_preset]."
msgstr ""
+"Pone las 4 anclas en una línea vertical que corta el control parental por la "
+"mitad. Usar con [method set_anchors_preset]."
-#: doc/classes/Control.xml:1053
+#: doc/classes/Control.xml:1055
msgid ""
"Snap all 4 anchors to a horizontal line that cuts the parent control in "
"half. Use with [method set_anchors_preset]."
msgstr ""
+"Pone las 4 anclas en una línea horizontal que corta el control parental por "
+"la mitad. Usar con [method set_anchors_preset]."
-#: doc/classes/Control.xml:1056
+#: doc/classes/Control.xml:1058
msgid ""
"Snap all 4 anchors to the respective corners of the parent control. Set all "
"4 margins to 0 after you applied this preset and the [Control] will fit its "
"parent control. This is equivalent to the \"Full Rect\" layout option in the "
"editor. Use with [method set_anchors_preset]."
msgstr ""
+"Pone las 4 anclas en las respectivas esquinas del control parental. Ponga "
+"los 4 márgenes a 0 después de aplicar este preajuste y el [Control] se "
+"ajustará a su control de padres. Esto equivale a la opción de diseño \"Full "
+"Rect\" del editor. Utilícela con [method set_anchors_preset]."
-#: doc/classes/Control.xml:1059
+#: doc/classes/Control.xml:1061
msgid "The control will be resized to its minimum size."
-msgstr ""
+msgstr "El control será redimensionado a su tamaño mínimo."
-#: doc/classes/Control.xml:1062
+#: doc/classes/Control.xml:1064
msgid "The control's width will not change."
-msgstr ""
+msgstr "El ancho del control no cambiará."
-#: doc/classes/Control.xml:1065
+#: doc/classes/Control.xml:1067
msgid "The control's height will not change."
-msgstr ""
+msgstr "La altura del control no cambiará."
-#: doc/classes/Control.xml:1068
+#: doc/classes/Control.xml:1070
msgid "The control's size will not change."
-msgstr ""
+msgstr "El tamaño del control no cambiará."
-#: doc/classes/Control.xml:1071
+#: doc/classes/Control.xml:1073
msgid ""
"Tells the parent [Container] to expand the bounds of this node to fill all "
"the available space without pushing any other node. Use with [member "
"size_flags_horizontal] and [member size_flags_vertical]."
msgstr ""
+"Le dice al padre [Container] que expanda los límites de este nodo para "
+"llenar todo el espacio disponible sin empujar ningún otro nodo. Usar con "
+"[member size_flags_horizontal] y [member size_flags_vertical]."
-#: doc/classes/Control.xml:1074
+#: doc/classes/Control.xml:1076
msgid ""
"Tells the parent [Container] to let this node take all the available space "
"on the axis you flag. If multiple neighboring nodes are set to expand, "
@@ -17391,30 +19754,45 @@ msgid ""
"size_flags_stretch_ratio]. Use with [member size_flags_horizontal] and "
"[member size_flags_vertical]."
msgstr ""
+"Le dice al padre [Container] que deje que este nodo tome todo el espacio "
+"disponible en el eje que marque. Si varios nodos vecinos están configurados "
+"para expandirse, compartirán el espacio basado en su relación de "
+"estiramiento. Ver [member size_flags_stretch_ratio]. Utilízalo con [member "
+"size_flag_horizontal] y [member size_flags_vertical]."
-#: doc/classes/Control.xml:1077
+#: doc/classes/Control.xml:1079
msgid ""
"Sets the node's size flags to both fill and expand. See the 2 constants "
"above for more information."
msgstr ""
+"Establece las flags de tamaño del nodo para que se llenen y se expandan. Vea "
+"las 2 constantes anteriores para más información."
-#: doc/classes/Control.xml:1080
+#: doc/classes/Control.xml:1082
msgid ""
"Tells the parent [Container] to center the node in itself. It centers the "
"control based on its bounding box, so it doesn't work with the fill or "
"expand size flags. Use with [member size_flags_horizontal] and [member "
"size_flags_vertical]."
msgstr ""
+"Le dice al padre [Container] que centre el nodo en sí mismo. Centra el "
+"control basado en su caja delimitadora, por lo que no funciona con las flags "
+"de tamaño de relleno o expansión. Úsalo con [member size_flags_horizontal] y "
+"[member size_flags_vertical]."
-#: doc/classes/Control.xml:1083
+#: doc/classes/Control.xml:1085
msgid ""
"Tells the parent [Container] to align the node with its end, either the "
"bottom or the right edge. It doesn't work with the fill or expand size "
"flags. Use with [member size_flags_horizontal] and [member "
"size_flags_vertical]."
msgstr ""
+"Le dice al padre [Container] que alinee el nodo con su extremo, ya sea el "
+"inferior o el derecho. No funciona con las flags de tamaño de relleno o "
+"expansión. Úsalo con [member size_flags_horizontal] y [member "
+"size_flags_vertical]."
-#: doc/classes/Control.xml:1086
+#: doc/classes/Control.xml:1088
msgid ""
"The control will receive mouse button input events through [method "
"_gui_input] if clicked on. And the control will receive the [signal "
@@ -17422,8 +19800,13 @@ msgid ""
"automatically marked as handled, and they will not propagate further to "
"other controls. This also results in blocking signals in other controls."
msgstr ""
+"El control recibirá los eventos de entrada del botón del ratón a través del "
+"[method _gui_input] si se hace clic en él. Y el control recibirá las señales "
+"[signal mouse_entered] y [signal mouse_exited]. Estos eventos se marcan "
+"automáticamente como manejados, y no se propagarán más a otros controles. "
+"Esto también resulta en el bloqueo de señales en otros controles."
-#: doc/classes/Control.xml:1089
+#: doc/classes/Control.xml:1091
msgid ""
"The control will receive mouse button input events through [method "
"_gui_input] if clicked on. And the control will receive the [signal "
@@ -17434,8 +19817,16 @@ msgid ""
"all, the event will still be handled automatically, so unhandled input will "
"not be fired."
msgstr ""
+"El control recibirá los eventos de entrada del botón del ratón a través del "
+"[method _gui_input] si se hace clic en él. Y el control recibirá las señales "
+"[signal mouse_entered] y [signal mouse_exited]. Si este control no maneja el "
+"evento, se considerará el control padre (si lo hay), y así sucesivamente "
+"hasta que no haya más control padre para manejarlo potencialmente. Esto "
+"también permite que las señales se disparen en otros controles. Incluso si "
+"ningún control lo maneja, el evento será manejado automáticamente, por lo "
+"que las entradas no manejadas no se dispararán."
-#: doc/classes/Control.xml:1092
+#: doc/classes/Control.xml:1094
msgid ""
"The control will not receive mouse button input events through [method "
"_gui_input]. The control will also not receive the [signal mouse_entered] "
@@ -17443,44 +19834,65 @@ msgid ""
"receiving these events or firing the signals. Ignored events will not be "
"handled automatically."
msgstr ""
+"El control no recibirá eventos de entrada del botón del ratón a través del "
+"[method _gui_input]. El control tampoco recibirá las señales [signal "
+"mouse_entered] ni [signal mouse_exited]. Esto no bloqueará a otros controles "
+"para que no reciban estos eventos o para que no disparen las señales. Los "
+"eventos ignorados no se manejarán automáticamente."
-#: doc/classes/Control.xml:1095
+#: doc/classes/Control.xml:1097
msgid ""
"The control will grow to the left or top to make up if its minimum size is "
"changed to be greater than its current size on the respective axis."
msgstr ""
+"El control crecerá hacia la izquierda o hacia arriba para compensar si su "
+"tamaño mínimo se cambia para que sea mayor que su tamaño actual en el eje "
+"respectivo."
-#: doc/classes/Control.xml:1098
+#: doc/classes/Control.xml:1100
msgid ""
"The control will grow to the right or bottom to make up if its minimum size "
"is changed to be greater than its current size on the respective axis."
msgstr ""
+"El control crecerá hacia la derecha o hacia abajo para compensar si su "
+"tamaño mínimo se cambia para que sea mayor que su tamaño actual en el eje "
+"respectivo."
-#: doc/classes/Control.xml:1101
+#: doc/classes/Control.xml:1103
msgid ""
"The control will grow in both directions equally to make up if its minimum "
"size is changed to be greater than its current size."
msgstr ""
+"El control crecerá en ambas direcciones por igual para compensar si su "
+"tamaño mínimo se cambia para que sea mayor que su tamaño actual."
-#: doc/classes/Control.xml:1104
+#: doc/classes/Control.xml:1106
msgid ""
"Snaps one of the 4 anchor's sides to the origin of the node's [code]Rect[/"
"code], in the top left. Use it with one of the [code]anchor_*[/code] member "
"variables, like [member anchor_left]. To change all 4 anchors at once, use "
"[method set_anchors_preset]."
msgstr ""
+"Encaja uno de los 4 lados del ancla en el origen del nodo [code]Rect[/code], "
+"en la parte superior izquierda. Úsalo con una de las variables miembro "
+"[code]anchor_*[/code], como [member anchor_left]. Para cambiar las 4 anclas "
+"a la vez, usa [method set_anchors_preset]."
-#: doc/classes/Control.xml:1107
+#: doc/classes/Control.xml:1109
msgid ""
"Snaps one of the 4 anchor's sides to the end of the node's [code]Rect[/"
"code], in the bottom right. Use it with one of the [code]anchor_*[/code] "
"member variables, like [member anchor_left]. To change all 4 anchors at "
"once, use [method set_anchors_preset]."
msgstr ""
+"Pone uno de los 4 lados del ancla al final del nodo [code]Rect[/code], en la "
+"parte inferior derecha. Úsalo con una de las variables miembros "
+"[code]anchor_*[/code], como [member anchor_left]. Para cambiar las 4 anclas "
+"a la vez, usa [method set_anchors_preset]."
#: doc/classes/ConvexPolygonShape2D.xml:4
msgid "Convex polygon shape for 2D physics."
-msgstr ""
+msgstr "Forma de polígono convexo para la física 2D."
#: doc/classes/ConvexPolygonShape2D.xml:7
msgid ""
@@ -17493,6 +19905,15 @@ msgid ""
"uses a more complex method of collision detection, and a convex one forces "
"itself to be convex in order to speed up collision detection."
msgstr ""
+"Forma de polígono convexo para la física 2D. Un polígono convexo, sea cual "
+"sea su forma, se descompone internamente en tantos polígonos convexos como "
+"sea necesario para asegurar que todas las comprobaciones de colisión contra "
+"él se hagan siempre en polígonos convexos (que son más rápidos de "
+"comprobar).\n"
+"La principal diferencia entre un [ConvexPolygonShape2D] y un "
+"[ConcavePolygonShape2D] es que un polígono cóncavo asume que es cóncavo y "
+"utiliza un método más complejo de detección de colisiones, y uno convexo se "
+"fuerza a sí mismo a ser convexo para acelerar la detección de colisiones."
#: doc/classes/ConvexPolygonShape2D.xml:19
msgid ""
@@ -17500,30 +19921,38 @@ msgid ""
"points] property using the convex hull algorithm. Removing all unneeded "
"points. See [method Geometry2D.convex_hull] for details."
msgstr ""
+"Basándose en el conjunto de puntos proporcionados, esto crea y asigna la "
+"propiedad [member points] utilizando el algoritmo de envolvente convexa. "
+"Eliminando todos los puntos innecesarios. Ver [method Geometry2D."
+"convex_hull] para más detalles."
#: doc/classes/ConvexPolygonShape2D.xml:25
msgid ""
"The polygon's list of vertices. Can be in either clockwise or "
"counterclockwise order."
msgstr ""
+"La lista de vértices del polígono. Puede ser en el sentido de las agujas del "
+"reloj o en el sentido contrario."
#: doc/classes/ConvexPolygonShape3D.xml:4
msgid "Convex polygon shape for 3D physics."
-msgstr ""
+msgstr "Forma de polígono convexo para la física 3D."
#: doc/classes/ConvexPolygonShape3D.xml:7
msgid ""
"Convex polygon shape resource, which can be added to a [PhysicsBody3D] or "
"area."
msgstr ""
+"Recurso de forma poligonal convexa, que puede añadirse a un [PhysicsBody3D] "
+"o área."
#: doc/classes/ConvexPolygonShape3D.xml:15
msgid "The list of 3D points forming the convex polygon shape."
-msgstr ""
+msgstr "La lista de puntos 3D que forman la forma de polígono convexo."
#: doc/classes/CPUParticles2D.xml:4
msgid "CPU-based 2D particle emitter."
-msgstr ""
+msgstr "Emisor de partículas 2D basado en la CPU."
#: doc/classes/CPUParticles2D.xml:7
msgid ""
@@ -17532,192 +19961,232 @@ msgid ""
"See also [GPUParticles2D], which provides the same functionality with "
"hardware acceleration, but may not run on older devices."
msgstr ""
+"Nodo de partículas 2D basado en la CPU utilizado para crear una variedad de "
+"sistemas de partículas y efectos.\n"
+"Véase también [GPUParticles2D], que proporciona la misma funcionalidad con "
+"la aceleración por hardware, pero puede no funcionar en dispositivos más "
+"antiguos."
#: doc/classes/CPUParticles2D.xml:11 doc/classes/GPUParticles2D.xml:11
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/2d/particle_systems_2d.html"
msgstr ""
+"https://docs.godotengine.org/es/latest/tutorials/2d/particle_systems_2d.html"
#: doc/classes/CPUParticles2D.xml:20
msgid ""
"Sets this node's properties to match a given [GPUParticles2D] node with an "
"assigned [ParticlesMaterial]."
msgstr ""
+"Establece las propiedades de este nodo para hacer coincidir un nodo "
+"[GPUParticles2D] dado con un [ParticlesMaterial] asignado."
#: doc/classes/CPUParticles2D.xml:29 doc/classes/CPUParticles3D.xml:28
msgid "Returns the base value of the parameter specified by [enum Parameter]."
msgstr ""
+"Devuelve el valor base del parámetro especificado por [enum Parameter]."
#: doc/classes/CPUParticles2D.xml:38 doc/classes/CPUParticles3D.xml:37
msgid "Returns the [Curve] of the parameter specified by [enum Parameter]."
-msgstr ""
+msgstr "Devuelve la [Curve] del parámetro especificado por [enum Parameter]."
#: doc/classes/CPUParticles2D.xml:47 doc/classes/CPUParticles3D.xml:46
msgid ""
"Returns the randomness factor of the parameter specified by [enum Parameter]."
msgstr ""
+"Devuelve el factor de aleatoriedad del parámetro especificado por [enum "
+"Parameter]."
#: doc/classes/CPUParticles2D.xml:56 doc/classes/CPUParticles3D.xml:55
msgid ""
"Returns the enabled state of the given flag (see [enum Flags] for options)."
msgstr ""
+"Devuelve el estado habilitado del flag dado (véase [enum Flags] para las "
+"opciones)."
#: doc/classes/CPUParticles2D.xml:63 doc/classes/CPUParticles3D.xml:62
msgid "Restarts the particle emitter."
-msgstr ""
+msgstr "Reinicia el emisor de partículas."
#: doc/classes/CPUParticles2D.xml:74 doc/classes/CPUParticles3D.xml:73
msgid "Sets the base value of the parameter specified by [enum Parameter]."
msgstr ""
+"Establece el valor base del parámetro especificado por [enum Parameter]."
#: doc/classes/CPUParticles2D.xml:85 doc/classes/CPUParticles3D.xml:84
msgid "Sets the [Curve] of the parameter specified by [enum Parameter]."
-msgstr ""
+msgstr "Establece la [Curve] del parámetro especificado por [enum Parámetro]."
#: doc/classes/CPUParticles2D.xml:96 doc/classes/CPUParticles3D.xml:95
msgid ""
"Sets the randomness factor of the parameter specified by [enum Parameter]."
msgstr ""
+"Establece el factor de aleatoriedad del parámetro especificado por [enum "
+"Parameter]."
#: doc/classes/CPUParticles2D.xml:107 doc/classes/CPUParticles3D.xml:106
msgid "Enables or disables the given flag (see [enum Flags] for options)."
msgstr ""
+"Habilita o deshabilita la flag dada (véase [enum Flags] para las opciones)."
#: doc/classes/CPUParticles2D.xml:113 doc/classes/CPUParticles3D.xml:112
#: doc/classes/GPUParticles2D.xml:31
msgid "Number of particles emitted in one emission cycle."
-msgstr ""
+msgstr "Número de partículas emitidas en un ciclo de emisión."
#: doc/classes/CPUParticles2D.xml:116 doc/classes/CPUParticles3D.xml:115
msgid "Initial rotation applied to each particle, in degrees."
-msgstr ""
+msgstr "Rotación inicial aplicada a cada partícula, en grados."
#: doc/classes/CPUParticles2D.xml:119 doc/classes/CPUParticles3D.xml:118
msgid "Each particle's rotation will be animated along this [Curve]."
-msgstr ""
+msgstr "La rotación de cada partícula será animada a lo largo de esta [Curve]."
#: doc/classes/CPUParticles2D.xml:122 doc/classes/CPUParticles3D.xml:121
#: doc/classes/ParticlesMaterial.xml:104
msgid "Rotation randomness ratio."
-msgstr ""
+msgstr "Ratio de aleatoriedad de la rotación."
#: doc/classes/CPUParticles2D.xml:125 doc/classes/CPUParticles3D.xml:124
msgid ""
"Initial angular velocity applied to each particle. Sets the speed of "
"rotation of the particle."
msgstr ""
+"Velocidad angular inicial aplicada a cada partícula. Establece la velocidad "
+"de rotación de la partícula."
#: doc/classes/CPUParticles2D.xml:128 doc/classes/CPUParticles3D.xml:127
msgid "Each particle's angular velocity will vary along this [Curve]."
msgstr ""
+"La velocidad angular de cada partícula variará a lo largo de esta [Curve]."
#: doc/classes/CPUParticles2D.xml:131 doc/classes/CPUParticles3D.xml:130
#: doc/classes/ParticlesMaterial.xml:114
msgid "Angular velocity randomness ratio."
-msgstr ""
+msgstr "Relación de aleatoriedad de la velocidad angular."
#: doc/classes/CPUParticles2D.xml:134 doc/classes/CPUParticles3D.xml:133
#: doc/classes/ParticlesMaterial.xml:117
msgid "Particle animation offset."
-msgstr ""
+msgstr "Desplazamiento de la animación de partículas."
#: doc/classes/CPUParticles2D.xml:137 doc/classes/CPUParticles3D.xml:136
msgid "Each particle's animation offset will vary along this [Curve]."
msgstr ""
+"El desplazamiento de la animación de cada partícula variará a lo largo de "
+"esta [Curve]."
#: doc/classes/CPUParticles2D.xml:140 doc/classes/CPUParticles3D.xml:139
#: doc/classes/ParticlesMaterial.xml:123
msgid "Animation offset randomness ratio."
-msgstr ""
+msgstr "La animación desplaza la proporción de aleatoriedad."
#: doc/classes/CPUParticles2D.xml:143 doc/classes/CPUParticles3D.xml:142
#: doc/classes/ParticlesMaterial.xml:126
msgid "Particle animation speed."
-msgstr ""
+msgstr "Velocidad de animación de partículas."
#: doc/classes/CPUParticles2D.xml:146 doc/classes/CPUParticles3D.xml:145
msgid "Each particle's animation speed will vary along this [Curve]."
msgstr ""
+"La velocidad de animación de cada partícula variará a lo largo de esta "
+"[Curve]."
#: doc/classes/CPUParticles2D.xml:149 doc/classes/CPUParticles3D.xml:148
#: doc/classes/ParticlesMaterial.xml:132
msgid "Animation speed randomness ratio."
-msgstr ""
+msgstr "Ratio de aleatoriedad de la velocidad de la animación."
#: doc/classes/CPUParticles2D.xml:152
msgid ""
"Each particle's initial color. If [member texture] is defined, it will be "
"multiplied by this color."
msgstr ""
+"El color inicial de cada partícula. Si se define [member texture], se "
+"multiplicará por este color."
#: doc/classes/CPUParticles2D.xml:155
msgid "Each particle's color will vary along this [Gradient]."
-msgstr ""
+msgstr "El color de cada partícula variará a lo largo de este [Gradient]."
#: doc/classes/CPUParticles2D.xml:158 doc/classes/CPUParticles3D.xml:157
#: doc/classes/ParticlesMaterial.xml:141
msgid "The rate at which particles lose velocity."
-msgstr ""
+msgstr "La velocidad a la que las partículas pierden velocidad."
#: doc/classes/CPUParticles2D.xml:161 doc/classes/CPUParticles3D.xml:160
msgid "Damping will vary along this [Curve]."
-msgstr ""
+msgstr "La amortiguación variará a lo largo de esta [Curve]."
#: doc/classes/CPUParticles2D.xml:164 doc/classes/CPUParticles3D.xml:163
#: doc/classes/ParticlesMaterial.xml:147
msgid "Damping randomness ratio."
-msgstr ""
+msgstr "Amortiguando la proporción de aleatoriedad."
#: doc/classes/CPUParticles2D.xml:167 doc/classes/CPUParticles3D.xml:166
#: doc/classes/ParticlesMaterial.xml:150
msgid "Unit vector specifying the particles' emission direction."
msgstr ""
+"Vector unitario que especifica la dirección de emisión de las partículas."
#: doc/classes/CPUParticles2D.xml:170 doc/classes/CPUParticles3D.xml:169
#: doc/classes/GPUParticles2D.xml:34 doc/classes/GPUParticles3D.xml:54
msgid "Particle draw order. Uses [enum DrawOrder] values."
msgstr ""
+"Orden de dibujo de las partículas. Utiliza los valores de [enum DrawOrder]."
#: doc/classes/CPUParticles2D.xml:173 doc/classes/CPUParticles3D.xml:175
msgid ""
"Sets the [Color]s to modulate particles by when using [constant "
"EMISSION_SHAPE_POINTS] or [constant EMISSION_SHAPE_DIRECTED_POINTS]."
msgstr ""
+"Establece los [Color]s para modular las partículas al usar [constant "
+"EMISSION_SHAPE_POINTS] o [constant EMISSION_SHAPE_DIRECTED_POINTS]."
#: doc/classes/CPUParticles2D.xml:176 doc/classes/CPUParticles3D.xml:178
msgid ""
"Sets the direction the particles will be emitted in when using [constant "
"EMISSION_SHAPE_DIRECTED_POINTS]."
msgstr ""
+"Establece la dirección en la que las partículas serán emitidas cuando se use "
+"[constant EMISSION_SHAPE_DIRECTED_POINTS]."
#: doc/classes/CPUParticles2D.xml:179 doc/classes/CPUParticles3D.xml:181
msgid ""
"Sets the initial positions to spawn particles when using [constant "
"EMISSION_SHAPE_POINTS] or [constant EMISSION_SHAPE_DIRECTED_POINTS]."
msgstr ""
+"Establece las posiciones iniciales para generar partículas cuando se utiliza "
+"[constant EMISSION_SHAPE_POINTS] o [constant EMISSION_SHAPE_DIRECTED_POINTS]."
#: doc/classes/CPUParticles2D.xml:182
msgid ""
"The rectangle's extents if [member emission_shape] is set to [constant "
"EMISSION_SHAPE_RECTANGLE]."
msgstr ""
+"La extensión del rectángulo si [member emission_shape] se fija en [constant "
+"EMISSION_SHAPE_RECTANGLE]."
#: doc/classes/CPUParticles2D.xml:185 doc/classes/CPUParticles3D.xml:184
msgid ""
"Particles will be emitted inside this region. See [enum EmissionShape] for "
"possible values."
msgstr ""
+"Se emitirán partículas dentro de esta región. Ver [enum EmissionShape] para "
+"los posibles valores."
#: doc/classes/CPUParticles2D.xml:188
msgid ""
"The sphere's radius if [member emission_shape] is set to [constant "
"EMISSION_SHAPE_SPHERE]."
msgstr ""
+"El radio de la esfera si [member emission_shape] se fija en [constant "
+"EMISSION_SHAPE_SPHERE]."
#: doc/classes/CPUParticles2D.xml:191 doc/classes/CPUParticles3D.xml:190
#: doc/classes/GPUParticles2D.xml:37 doc/classes/GPUParticles3D.xml:72
msgid "If [code]true[/code], particles are being emitted."
-msgstr ""
+msgstr "Si [code]true[/code], se están emitiendo partículas."
#: doc/classes/CPUParticles2D.xml:194 doc/classes/CPUParticles3D.xml:193
#: doc/classes/GPUParticles2D.xml:40
@@ -17726,6 +20195,9 @@ msgid ""
"[code]0[/code], there will be a gap in emissions before the next cycle "
"begins."
msgstr ""
+"La rapidez con la que se emiten las partículas en un ciclo de emisión. Si es "
+"mayor que [code]0[/code], habrá una espacio de tiempo en las emisiones antes "
+"de que comience el siguiente ciclo."
#: doc/classes/CPUParticles2D.xml:197 doc/classes/GPUParticles2D.xml:43
#: doc/classes/GPUParticles3D.xml:78
@@ -17734,11 +20206,15 @@ msgid ""
"the value to 2 will make the particles render at 2 frames per second. Note "
"this does not slow down the simulation of the particle system itself."
msgstr ""
+"La velocidad de fotogramas del sistema de partículas está fijada a un valor. "
+"Por ejemplo, cambiando el valor a 2 hará que las partículas se rendericen a "
+"2 fotogramas por segundo. Ten en cuenta que esto no ralentiza la simulación "
+"del sistema de partículas en sí."
#: doc/classes/CPUParticles2D.xml:200 doc/classes/CPUParticles3D.xml:199
#: doc/classes/ParticlesMaterial.xml:174
msgid "Align Y axis of particle with the direction of its velocity."
-msgstr ""
+msgstr "Alinea el eje Y de la partícula con la dirección de su velocidad."
#: doc/classes/CPUParticles2D.xml:203 doc/classes/CPUParticles3D.xml:211
#: doc/classes/GPUParticles2D.xml:46 doc/classes/GPUParticles3D.xml:81
@@ -17746,25 +20222,27 @@ msgid ""
"If [code]true[/code], results in fractional delta calculation which has a "
"smoother particles display effect."
msgstr ""
+"Si [code]true[/code], resulta en un cálculo delta fraccionario que tiene un "
+"efecto de visualización de partículas más suave."
#: doc/classes/CPUParticles2D.xml:206 doc/classes/CPUParticles3D.xml:214
#: doc/classes/ParticlesMaterial.xml:186
msgid "Gravity applied to every particle."
-msgstr ""
+msgstr "La gravedad aplicada a cada partícula."
#: doc/classes/CPUParticles2D.xml:209 doc/classes/CPUParticles3D.xml:217
#: doc/classes/ParticlesMaterial.xml:189
msgid "Initial hue variation applied to each particle."
-msgstr ""
+msgstr "Variación de tono inicial aplicada a cada partícula."
#: doc/classes/CPUParticles2D.xml:212 doc/classes/CPUParticles3D.xml:220
msgid "Each particle's hue will vary along this [Curve]."
-msgstr ""
+msgstr "El tono de cada partícula variará a lo largo de esta [Curve]."
#: doc/classes/CPUParticles2D.xml:215 doc/classes/CPUParticles3D.xml:223
#: doc/classes/ParticlesMaterial.xml:195
msgid "Hue variation randomness ratio."
-msgstr ""
+msgstr "Relación de aleatoriedad de la variación del tono."
#: doc/classes/CPUParticles2D.xml:218 doc/classes/CPUParticles3D.xml:226
#: doc/classes/ParticlesMaterial.xml:198
@@ -17772,36 +20250,40 @@ msgid ""
"Initial velocity magnitude for each particle. Direction comes from [member "
"spread] and the node's orientation."
msgstr ""
+"La magnitud de la velocidad inicial de cada partícula. La dirección viene de "
+"[member spread] y la orientación del nodo."
#: doc/classes/CPUParticles2D.xml:221 doc/classes/CPUParticles3D.xml:229
#: doc/classes/ParticlesMaterial.xml:201
msgid "Initial velocity randomness ratio."
-msgstr ""
+msgstr "Ratio de aleatoriedad de la velocidad inicial."
#: doc/classes/CPUParticles2D.xml:224 doc/classes/CPUParticles3D.xml:232
#: doc/classes/GPUParticles2D.xml:49 doc/classes/GPUParticles3D.xml:84
msgid "Amount of time each particle will exist."
-msgstr ""
+msgstr "La cantidad de tiempo que cada partícula existirá."
#: doc/classes/CPUParticles2D.xml:227 doc/classes/CPUParticles3D.xml:235
#: doc/classes/ParticlesMaterial.xml:204
msgid "Particle lifetime randomness ratio."
-msgstr ""
+msgstr "El ratio de aleatoriedad del tiempo de vida de las partículas."
#: doc/classes/CPUParticles2D.xml:230 doc/classes/CPUParticles3D.xml:238
#: doc/classes/ParticlesMaterial.xml:207
msgid ""
"Linear acceleration applied to each particle in the direction of motion."
msgstr ""
+"Aceleración lineal aplicada a cada partícula en la dirección del movimiento."
#: doc/classes/CPUParticles2D.xml:233 doc/classes/CPUParticles3D.xml:241
msgid "Each particle's linear acceleration will vary along this [Curve]."
msgstr ""
+"La aceleración lineal de cada partícula variará a lo largo de esta [Curve]."
#: doc/classes/CPUParticles2D.xml:236 doc/classes/CPUParticles3D.xml:244
#: doc/classes/ParticlesMaterial.xml:213
msgid "Linear acceleration randomness ratio."
-msgstr ""
+msgstr "Ratio de aleatoriedad de aceleración lineal."
#: doc/classes/CPUParticles2D.xml:239 doc/classes/CPUParticles3D.xml:247
#: doc/classes/GPUParticles2D.xml:52 doc/classes/GPUParticles3D.xml:87
@@ -17809,6 +20291,8 @@ msgid ""
"If [code]true[/code], particles use the parent node's coordinate space. If "
"[code]false[/code], they use global coordinates."
msgstr ""
+"Si [code]true[/code], las partículas usan el espacio de coordenadas del nodo "
+"padre. Si [code]false[/code], usan las coordenadas globales."
#: doc/classes/CPUParticles2D.xml:242 doc/classes/GPUParticles2D.xml:55
msgid ""
@@ -17818,6 +20302,12 @@ msgid ""
"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]this page[/url] for "
"a comparison of normal map coordinates expected by popular engines."
msgstr ""
+"Mapa normal para ser usado por la propiedad [member texture].\n"
+"[b]Nota:[/b] Godot espera que el mapa normal utilice las coordenadas X+, Y-, "
+"y Z+. Ver [url=http://wiki.polycount.com/wiki/"
+"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]esta página[/url] "
+"para una comparación de las coordenadas del mapa normal esperadas por los "
+"motores más populares."
#: doc/classes/CPUParticles2D.xml:246 doc/classes/CPUParticles3D.xml:253
#: doc/classes/GPUParticles2D.xml:59
@@ -17825,26 +20315,35 @@ msgid ""
"If [code]true[/code], only one emission cycle occurs. If set [code]true[/"
"code] during a cycle, emission will stop at the cycle's end."
msgstr ""
+"Si [code]true[/code], sólo se produce un ciclo de emisión. Si se establece "
+"[code]true[/code] durante un ciclo, la emisión se detendrá al final del "
+"ciclo."
#: doc/classes/CPUParticles2D.xml:249
msgid ""
"Orbital velocity applied to each particle. Makes the particles circle around "
"origin. Specified in number of full rotations around origin per second."
msgstr ""
+"Velocidad orbital aplicada a cada partícula. Hace que las partículas giren "
+"alrededor de su origen. Especificada en el número de rotaciones completas "
+"alrededor del origen por segundo."
#: doc/classes/CPUParticles2D.xml:252 doc/classes/CPUParticles3D.xml:260
msgid "Each particle's orbital velocity will vary along this [Curve]."
msgstr ""
+"La velocidad orbital de cada partícula variará a lo largo de esta [Curve]."
#: doc/classes/CPUParticles2D.xml:255 doc/classes/CPUParticles3D.xml:263
#: doc/classes/ParticlesMaterial.xml:223
msgid "Orbital velocity randomness ratio."
-msgstr ""
+msgstr "Ratio de aleatoriedad de la velocidad orbital."
#: doc/classes/CPUParticles2D.xml:258 doc/classes/CPUParticles3D.xml:266
#: doc/classes/GPUParticles2D.xml:62
msgid "Particle system starts as if it had already run for this many seconds."
msgstr ""
+"El sistema de partículas se inicia como si ya hubiera funcionado durante "
+"este número de segundos."
#: doc/classes/CPUParticles2D.xml:261 doc/classes/CPUParticles3D.xml:269
#: doc/classes/ParticlesMaterial.xml:226
@@ -17852,34 +20351,37 @@ msgid ""
"Radial acceleration applied to each particle. Makes particle accelerate away "
"from origin."
msgstr ""
+"Aceleración radial aplicada a cada partícula. Hace que la partícula se "
+"acelere lejos de su origen."
#: doc/classes/CPUParticles2D.xml:264 doc/classes/CPUParticles3D.xml:272
msgid "Each particle's radial acceleration will vary along this [Curve]."
msgstr ""
+"La aceleración radial de cada partícula variará a lo largo de esta [Curve]."
#: doc/classes/CPUParticles2D.xml:267 doc/classes/CPUParticles3D.xml:275
#: doc/classes/ParticlesMaterial.xml:232
msgid "Radial acceleration randomness ratio."
-msgstr ""
+msgstr "Ratio de aleatoriedad de la aceleración radial."
#: doc/classes/CPUParticles2D.xml:270 doc/classes/CPUParticles3D.xml:278
#: doc/classes/GPUParticles2D.xml:68
msgid "Emission lifetime randomness ratio."
-msgstr ""
+msgstr "Proporción de aleatoriedad de la vida útil de las emisiones."
#: doc/classes/CPUParticles2D.xml:273 doc/classes/CPUParticles3D.xml:281
#: doc/classes/ParticlesMaterial.xml:235
msgid "Initial scale applied to each particle."
-msgstr ""
+msgstr "Escala inicial aplicada a cada partícula."
#: doc/classes/CPUParticles2D.xml:276 doc/classes/CPUParticles3D.xml:284
msgid "Each particle's scale will vary along this [Curve]."
-msgstr ""
+msgstr "Escala inicial aplicada a cada partícula."
#: doc/classes/CPUParticles2D.xml:279 doc/classes/CPUParticles3D.xml:287
#: doc/classes/ParticlesMaterial.xml:241
msgid "Scale randomness ratio."
-msgstr ""
+msgstr "Ratio de la aleatoriedad de la escala."
#: doc/classes/CPUParticles2D.xml:282 doc/classes/CPUParticles3D.xml:290
#: doc/classes/GPUParticles2D.xml:71
@@ -17887,12 +20389,16 @@ msgid ""
"Particle system's running speed scaling ratio. A value of [code]0[/code] can "
"be used to pause the particles."
msgstr ""
+"El sistema de partículas está funcionando a una velocidad de escalada. Un "
+"valor de [code]0[/code] puede ser usado para pausar las partículas."
#: doc/classes/CPUParticles2D.xml:285
msgid ""
"Each particle's initial direction range from [code]+spread[/code] to [code]-"
"spread[/code] degrees."
msgstr ""
+"La dirección inicial de cada partícula va desde [code]+spread[/code] hasta "
+"[code]-spread[/code] grados."
#: doc/classes/CPUParticles2D.xml:288 doc/classes/CPUParticles3D.xml:296
#: doc/classes/ParticlesMaterial.xml:247
@@ -17901,129 +20407,168 @@ msgid ""
"perpendicular to the particle's velocity giving the particles a swirling "
"motion."
msgstr ""
+"Aceleración tangencial aplicada a cada partícula. La aceleración tangencial "
+"es perpendicular a la velocidad de la partícula, lo que le da a las "
+"partículas un movimiento giratorio."
#: doc/classes/CPUParticles2D.xml:291 doc/classes/CPUParticles3D.xml:299
msgid "Each particle's tangential acceleration will vary along this [Curve]."
msgstr ""
+"La aceleración tangencial de cada partícula variará a lo largo de esta "
+"[Curve]."
#: doc/classes/CPUParticles2D.xml:294 doc/classes/CPUParticles3D.xml:302
#: doc/classes/ParticlesMaterial.xml:253
msgid "Tangential acceleration randomness ratio."
-msgstr ""
+msgstr "Ratio de aleatoriedad de la aceleración tangencial."
#: doc/classes/CPUParticles2D.xml:297 doc/classes/GPUParticles2D.xml:74
msgid "Particle texture. If [code]null[/code], particles will be squares."
msgstr ""
+"La textura de las partículas. Si [code]null[/code], las partículas serán "
+"cuadradas."
#: doc/classes/CPUParticles2D.xml:302 doc/classes/CPUParticles3D.xml:307
#: doc/classes/GPUParticles2D.xml:82 doc/classes/GPUParticles3D.xml:110
msgid "Particles are drawn in the order emitted."
-msgstr ""
+msgstr "Las partículas se dibujan en el orden en que se emiten."
#: doc/classes/CPUParticles2D.xml:305 doc/classes/CPUParticles3D.xml:310
#: doc/classes/GPUParticles2D.xml:85 doc/classes/GPUParticles3D.xml:113
msgid "Particles are drawn in order of remaining lifetime."
-msgstr ""
+msgstr "Las partículas se dibujan en orden según el tiempo de vida restante."
#: doc/classes/CPUParticles2D.xml:308 doc/classes/CPUParticles3D.xml:316
msgid ""
"Use with [method set_param], [method set_param_randomness], and [method "
"set_param_curve] to set initial velocity properties."
msgstr ""
+"Utilízalo con [method set_param], [method set_param_randomness], y [method "
+"set_param_curve] para establecer las propiedades iniciales de la velocidad."
#: doc/classes/CPUParticles2D.xml:311 doc/classes/CPUParticles3D.xml:319
msgid ""
"Use with [method set_param], [method set_param_randomness], and [method "
"set_param_curve] to set angular velocity properties."
msgstr ""
+"Utilízalo con [method set_param], [method set_param_randomness], y [method "
+"set_param_curve] para establecer las propiedades de la velocidad angular."
#: doc/classes/CPUParticles2D.xml:314 doc/classes/CPUParticles3D.xml:322
msgid ""
"Use with [method set_param], [method set_param_randomness], and [method "
"set_param_curve] to set orbital velocity properties."
msgstr ""
+"Utilízalo con [method set_param], [method set_param_randomness], y [method "
+"set_param_curve] para establecer las propiedades de la velocidad orbital."
#: doc/classes/CPUParticles2D.xml:317 doc/classes/CPUParticles3D.xml:325
msgid ""
"Use with [method set_param], [method set_param_randomness], and [method "
"set_param_curve] to set linear acceleration properties."
msgstr ""
+"Utilízalo con [method set_param], [method set_param_randomness], y [method "
+"set_param_curve] para establecer las propiedades de la aceleración lineal."
#: doc/classes/CPUParticles2D.xml:320 doc/classes/CPUParticles3D.xml:328
msgid ""
"Use with [method set_param], [method set_param_randomness], and [method "
"set_param_curve] to set radial acceleration properties."
msgstr ""
+"Utilízalo con [method set_param], [method set_param_randomness], y [method "
+"set_param_curve] para establecer las propiedades de la aceleración radial."
#: doc/classes/CPUParticles2D.xml:323 doc/classes/CPUParticles3D.xml:331
msgid ""
"Use with [method set_param], [method set_param_randomness], and [method "
"set_param_curve] to set tangential acceleration properties."
msgstr ""
+"Utilízalo con [method set_param], [method set_param_randomness], y [method "
+"set_param_curve] para establecer las propiedades de la aceleración "
+"tangencial."
#: doc/classes/CPUParticles2D.xml:326 doc/classes/CPUParticles3D.xml:334
msgid ""
"Use with [method set_param], [method set_param_randomness], and [method "
"set_param_curve] to set damping properties."
msgstr ""
+"Utilízalo con [method set_param], [method set_param_randomness], y [method "
+"set_param_curve] para establecer las propiedades de amortiguación."
#: doc/classes/CPUParticles2D.xml:329 doc/classes/CPUParticles3D.xml:337
msgid ""
"Use with [method set_param], [method set_param_randomness], and [method "
"set_param_curve] to set angle properties."
msgstr ""
+"Utilízalo con [method set_param], [method set_param_randomness], y [method "
+"set_param_curve] para establecer las propiedades de los ángulos."
#: doc/classes/CPUParticles2D.xml:332 doc/classes/CPUParticles3D.xml:340
msgid ""
"Use with [method set_param], [method set_param_randomness], and [method "
"set_param_curve] to set scale properties."
msgstr ""
+"Utilízalo con [method set_param], [method set_param_randomness], y [method "
+"set_param_curve] para establecer las propiedades de la escala."
#: doc/classes/CPUParticles2D.xml:335 doc/classes/CPUParticles3D.xml:343
msgid ""
"Use with [method set_param], [method set_param_randomness], and [method "
"set_param_curve] to set hue variation properties."
msgstr ""
+"Utilízalo con [method set_param], [method set_param_randomness], y [method "
+"set_param_curve] para establecer las propiedades de la variación del tono."
#: doc/classes/CPUParticles2D.xml:338 doc/classes/CPUParticles3D.xml:346
msgid ""
"Use with [method set_param], [method set_param_randomness], and [method "
"set_param_curve] to set animation speed properties."
msgstr ""
+"Utilízalo con [method set_param], [method set_param_randomness], y [method "
+"set_param_curve] para establecer las propiedades de velocidad de la "
+"animación."
#: doc/classes/CPUParticles2D.xml:341 doc/classes/CPUParticles3D.xml:349
msgid ""
"Use with [method set_param], [method set_param_randomness], and [method "
"set_param_curve] to set animation offset properties."
msgstr ""
+"Utilízalo con [method set_param], [method set_param_randomness], y [method "
+"set_param_curve] para establecer las propiedades de desplazamiento de la "
+"animación."
#: doc/classes/CPUParticles2D.xml:344 doc/classes/CPUParticles3D.xml:352
#: doc/classes/ParticlesMaterial.xml:303
msgid "Represents the size of the [enum Parameter] enum."
-msgstr ""
+msgstr "Representa el tamaño del enum[parámetro enum]."
#: doc/classes/CPUParticles2D.xml:347 doc/classes/CPUParticles3D.xml:355
msgid "Use with [method set_particle_flag] to set [member flag_align_y]."
msgstr ""
+"Utilízalo con [method set_particle_flag] para establecer [member "
+"flag_align_y]."
#: doc/classes/CPUParticles2D.xml:350 doc/classes/CPUParticles2D.xml:353
msgid "Present for consistency with 3D particle nodes, not used in 2D."
msgstr ""
+"Presente por coherencia con los nodos de partículas en 3D, no usado en 2D."
#: doc/classes/CPUParticles2D.xml:359 doc/classes/CPUParticles3D.xml:367
#: doc/classes/ParticlesMaterial.xml:318
msgid "All particles will be emitted from a single point."
-msgstr ""
+msgstr "Todas las partículas serán emitidas desde un único punto."
#: doc/classes/CPUParticles2D.xml:362
msgid ""
"Particles will be emitted on the surface of a sphere flattened to two "
"dimensions."
msgstr ""
+"Se emitirán partículas en la superficie de una esfera aplanada en dos "
+"dimensiones."
#: doc/classes/CPUParticles2D.xml:365
msgid "Particles will be emitted in the area of a rectangle."
-msgstr ""
+msgstr "Se emitirán partículas en el área de un rectángulo."
#: doc/classes/CPUParticles2D.xml:368 doc/classes/CPUParticles3D.xml:376
msgid ""
@@ -18031,6 +20576,9 @@ msgid ""
"emission_points]. Particle color will be modulated by [member "
"emission_colors]."
msgstr ""
+"Las partículas se emitirán en una posición elegida al azar entre [member "
+"emission_points]. El color de las partículas será modulado por [member "
+"emission_colors]."
#: doc/classes/CPUParticles2D.xml:371 doc/classes/CPUParticles3D.xml:379
msgid ""
@@ -18039,15 +20587,19 @@ msgid ""
"[member emission_normals]. Particle color will be modulated by [member "
"emission_colors]."
msgstr ""
+"Las partículas se emitirán en una posición elegida al azar entre [member "
+"emission_points]. La velocidad y rotación de las partículas se fijarán en "
+"base a [member emission_normals]. El color de las partículas será modulado "
+"por [member emission_colors]."
#: doc/classes/CPUParticles2D.xml:374 doc/classes/CPUParticles3D.xml:382
#: doc/classes/ParticlesMaterial.xml:333
msgid "Represents the size of the [enum EmissionShape] enum."
-msgstr ""
+msgstr "Representa el tamaño del enum [enum EmissionShape]."
#: doc/classes/CPUParticles3D.xml:4
msgid "CPU-based 3D particle emitter."
-msgstr ""
+msgstr "Emisor de partículas 3D que utiliza la CPU."
#: doc/classes/CPUParticles3D.xml:7
msgid ""
@@ -18056,28 +20608,39 @@ msgid ""
"See also [GPUParticles3D], which provides the same functionality with "
"hardware acceleration, but may not run on older devices."
msgstr ""
+"Nodo de partículas 3D que utiliza la CPU usado para crear una variedad de "
+"sistemas de partículas y efectos.\n"
+"Véase también [GPUParticles3D], que proporciona la misma funcionalidad con "
+"la aceleración por hardware, pero puede no funcionar en dispositivos más "
+"antiguos."
#: doc/classes/CPUParticles3D.xml:19
msgid ""
"Sets this node's properties to match a given [GPUParticles3D] node with an "
"assigned [ParticlesMaterial]."
msgstr ""
+"Establece las propiedades de este nodo para hacer coincidir un nodo "
+"[GPUParticles3D] dado con un [ParticlesMaterial] asignado."
#: doc/classes/CPUParticles3D.xml:151 doc/classes/CPUParticles3D.xml:154
msgid "Unused for 3D particles."
-msgstr ""
+msgstr "No se usa para partículas 3D."
#: doc/classes/CPUParticles3D.xml:172
msgid ""
"The rectangle's extents if [member emission_shape] is set to [constant "
"EMISSION_SHAPE_BOX]."
msgstr ""
+"La extensión del rectángulo si [member emission_shape] se fija en [constant "
+"EMISSION_SHAPE_BOX]."
#: doc/classes/CPUParticles3D.xml:187
msgid ""
"The sphere's radius if [enum EmissionShape] is set to [constant "
"EMISSION_SHAPE_SPHERE]."
msgstr ""
+"El radio de la esfera si [enum EmissionShape] se fija en [constant "
+"EMISSION_SHAPE_SPHERE]."
#: doc/classes/CPUParticles3D.xml:196
msgid ""
@@ -18085,26 +20648,36 @@ msgid ""
"the value to 2 will make the particles render at 2 frames per second. Note "
"this does not slow down the particle system itself."
msgstr ""
+"La velocidad de fotogramas del sistema de partículas está fijada en un "
+"valor. Por ejemplo, cambiando el valor a 2 hará que las partículas se "
+"rendericen a 2 fotogramas por segundo. Ten en cuenta que esto no ralentiza "
+"el sistema de partículas en sí mismo."
#: doc/classes/CPUParticles3D.xml:202 doc/classes/ParticlesMaterial.xml:177
msgid "If [code]true[/code], particles will not move on the z axis."
-msgstr ""
+msgstr "Si [code]true[/code], las partículas no se moverán en el eje z."
#: doc/classes/CPUParticles3D.xml:205 doc/classes/ParticlesMaterial.xml:180
msgid "If [code]true[/code], particles rotate around Y axis by [member angle]."
msgstr ""
+"Si [code]true[/code], las partículas giran alrededor del eje Y por [member "
+"angle]."
#: doc/classes/CPUParticles3D.xml:208 doc/classes/ParticlesMaterial.xml:183
msgid ""
"Amount of [member spread] in Y/Z plane. A value of [code]1[/code] restricts "
"particles to X/Z plane."
msgstr ""
+"Cantidad de [member spread] en el plano Y/Z. Un valor de [code]1[/code] "
+"restringe las partículas al plano X/Z."
#: doc/classes/CPUParticles3D.xml:250
msgid ""
"The [Mesh] used for each particle. If [code]null[/code], particles will be "
"spheres."
msgstr ""
+"La [Mesh] usada para cada partícula. Si [code]null[/code], las partículas "
+"serán esferas."
#: doc/classes/CPUParticles3D.xml:256
msgid ""
@@ -18114,36 +20687,46 @@ msgid ""
"This property is only available when [member flag_disable_z] is [code]true[/"
"code]."
msgstr ""
+"Velocidad orbital aplicada a cada partícula. Hace que las partículas giren "
+"alrededor de su origen en el plano XY local. Se especifica en el número de "
+"rotaciones completas alrededor del origen por segundo.\n"
+"Esta propiedad sólo está disponible cuando [member flag_disable_z] es "
+"[code]true[/code]."
#: doc/classes/CPUParticles3D.xml:293 doc/classes/ParticlesMaterial.xml:244
msgid ""
"Each particle's initial direction range from [code]+spread[/code] to [code]-"
"spread[/code] degrees. Applied to X/Z plane and Y/Z planes."
msgstr ""
+"La dirección inicial de cada partícula va desde [code]+spread[/code] hasta "
+"[code]-spread[/code] grados. Aplicado a los planos X/Z y Y/Z."
#: doc/classes/CPUParticles3D.xml:313 doc/classes/GPUParticles3D.xml:116
msgid "Particles are drawn in order of depth."
-msgstr ""
+msgstr "Las partículas se dibujan en orden de profundidad."
#: doc/classes/CPUParticles3D.xml:358
msgid "Use with [method set_particle_flag] to set [member flag_rotate_y]."
msgstr ""
+"Utilícelo con [method set_particle_flag] para establecer [member "
+"flag_rotate_y]."
#: doc/classes/CPUParticles3D.xml:361
msgid "Use with [method set_particle_flag] to set [member flag_disable_z]."
msgstr ""
+"Usar con [method set_particle_flag] para establecer [member flag_disable_z]."
#: doc/classes/CPUParticles3D.xml:370 doc/classes/ParticlesMaterial.xml:321
msgid "Particles will be emitted in the volume of a sphere."
-msgstr ""
+msgstr "Las partículas se emitirán en el volumen de una esfera."
#: doc/classes/CPUParticles3D.xml:373 doc/classes/ParticlesMaterial.xml:324
msgid "Particles will be emitted in the volume of a box."
-msgstr ""
+msgstr "Se emitirán partículas en el volumen de una caja."
#: doc/classes/Crypto.xml:4
msgid "Access to advanced cryptographic functionalities."
-msgstr ""
+msgstr "Acceso a funcionalidades criptográficas avanzadas."
#: doc/classes/Crypto.xml:7
msgid ""
@@ -18185,6 +20768,43 @@ msgid ""
"[/codeblock]\n"
"[b]Note:[/b] Not available in HTML5 exports."
msgstr ""
+"La clase Criptográfica le permite acceder a algunas funcionalidades "
+"criptográficas más avanzadas en Godot.\n"
+"Por ahora, esto incluye la generación de bytes aleatorios criptográficamente "
+"seguros, claves RSA y generación de certificados X509 autofirmados, "
+"encriptación/desencriptación de claves asimétricas y firma/verificación.\n"
+"[codeblock]\n"
+"extends Node\n"
+"\n"
+"var crypto = Crypto.new()\n"
+"var clave = CryptoKey.new()\n"
+"var certificado = X509Certificate.new()\n"
+"\n"
+"func _ready():\n"
+" # Genera una clave nueva RSA.\n"
+" clave = crypto.generate_rsa(4096)\n"
+" # Genera un certificado autofirmado con la clave dada.\n"
+" certificado = crypto.generate_self_signed_certificate(clave, "
+"\"CN=mydomain.com,O=My Game Company,C=IT\")\n"
+" # Guarda la clave y el certificado en un directorio del usuario.\n"
+" clave.save(\"user://generada.key\")\n"
+" certificado.save(\"user://generada.crt\")\n"
+" # Encripción\n"
+" var datos = \"Algunos datos\"\n"
+" var encriptado = crypto.encrypt(clave, datos.to_utf8())\n"
+" # Desencriptado\n"
+" var desencriptado = crypto.decrypt(clave, encriptado)\n"
+" # Firmada\n"
+" var firma = crypto.sign(HashingContext.HASH_SHA256, datos."
+"sha256_buffer(), clave)\n"
+" # Verificar\n"
+" var verificado = crypto.verify(HashingContext.HASH_SHA256, datos."
+"sha256_buffer(), firma, clave)\n"
+" # Cheque\n"
+" assert(verificado)\n"
+" assert(datos.to_utf8() == desencriptado)\n"
+"[/codeblock]\n"
+"[b]Nota:[/b] No disponible en los exportables HTML5."
#: doc/classes/Crypto.xml:50
msgid ""
@@ -18193,6 +20813,10 @@ msgid ""
"[b]Note[/b]: The maximum size of accepted ciphertext is limited by the key "
"size."
msgstr ""
+"Descifrar el [code]ciphertext[/code] dado con la [code]key[/code] privada "
+"proporcionada.\n"
+"[b]Nota[/b]: El tamaño máximo del texto cifrado aceptado está limitado por "
+"el tamaño de la clave."
#: doc/classes/Crypto.xml:62
msgid ""
@@ -18201,18 +20825,26 @@ msgid ""
"[b]Note[/b]: The maximum size of accepted plaintext is limited by the key "
"size."
msgstr ""
+"Cifrar el [code]plaintext[/code] dado con la [code]key[/code] pública "
+"proporcionada.\n"
+"[b]Nota[/b]: El tamaño máximo del texto plano aceptado está limitado por el "
+"tamaño de la clave."
#: doc/classes/Crypto.xml:72
msgid ""
"Generates a [PackedByteArray] of cryptographically secure random bytes with "
"given [code]size[/code]."
msgstr ""
+"Genera un [PackedByteArray] de bytes aleatorios criptográficamente seguros "
+"con un [code]size[/code] dado."
#: doc/classes/Crypto.xml:81
msgid ""
"Generates an RSA [CryptoKey] that can be used for creating self-signed "
"certificates and passed to [method StreamPeerSSL.accept_stream]."
msgstr ""
+"Genera una RSA [CryptoKey] que puede ser utilizada para crear certificados "
+"autofirmados y pasarla a [method StreamPeerSSL.accept_stream]."
#: doc/classes/Crypto.xml:96
msgid ""
@@ -18233,22 +20865,44 @@ msgid ""
"Game Company,C=IT\")\n"
"[/codeblock]"
msgstr ""
+"Genera un [X509Certificado] autofirmado a partir de la [CryptoKey] y el "
+"[code]issuer_name[/code] dados. La validez del certificado se definirá "
+"mediante [code]not_before[/code] y [code]not_after[/code] (primera fecha de "
+"validez y última fecha de validez). El [code]issuer_name[/code] debe "
+"contener al menos \"CN=\" (nombre común, es decir, el nombre del dominio), "
+"\"O=\" (organización, es decir, el nombre de su empresa), \"C=\" (país, es "
+"decir, el código ISO-3166 de dos letras del país en el que la organización "
+"tiene su sede).\n"
+"Un pequeño ejemplo para generar una clave RSA y un certificado autofirmado "
+"X509.\n"
+"[codeblock]\n"
+"var criptografia = Crypto.new()\n"
+"# Genera una clave de 4096 bits RSA.\n"
+"var clave = criptografia.generate_rsa(4096)\n"
+"# Genera un certificado autofirmado usando la clave.\n"
+"var certificado = criptografia.generate_self_signed_certificate(key, "
+"\"CN=example.com,O=A Game Company,C=IT\")\n"
+"[/codeblock]"
#: doc/classes/Crypto.xml:117
msgid ""
"Sign a given [code]hash[/code] of type [code]hash_type[/code] with the "
"provided private [code]key[/code]."
msgstr ""
+"Firma un [code]hash[/code] de tipo [code]hash_type[/code] con la [code]key[/"
+"code] privada proporcionada."
#: doc/classes/Crypto.xml:132
msgid ""
"Verify that a given [code]signature[/code] for [code]hash[/code] of type "
"[code]hash_type[/code] against the provided public [code]key[/code]."
msgstr ""
+"Verifique que un [code]signature[/code] dado para [code]hash[/code] de tipo "
+"[code]hash_tipo[/code] contra el [code]key[/code] público proporcionado."
#: doc/classes/CryptoKey.xml:4
msgid "A cryptographic key (RSA)."
-msgstr ""
+msgstr "Una clave criptográfica (RSA)."
#: doc/classes/CryptoKey.xml:7
msgid ""
@@ -18259,15 +20913,21 @@ msgid ""
"StreamPeerSSL.accept_stream] along with the appropriate certificate.\n"
"[b]Note:[/b] Not available in HTML5 exports."
msgstr ""
+"La clase CryptoKey representa una clave criptográfica. Las claves pueden ser "
+"cargadas y guardadas como cualquier otro [Resource].\n"
+"Pueden utilizarse para generar un [X509Certificate] autofirmado a través del "
+"[method Crypto.generate_self_signed_certificate] y como clave privada en el "
+"[method StreamPeerSSL.accept_stream] junto con el certificado "
+"correspondiente.\n"
+"[b]Nota:[/b] No está disponible en los exportados en HTML5."
#: doc/classes/CryptoKey.xml:18
-#, fuzzy
msgid ""
"Return [code]true[/code] if this CryptoKey only has the public part, and not "
"the private one."
msgstr ""
-"Devuelve [code]true[/code] si el ratón ha entrado en el botón y no lo ha "
-"dejado todavía."
+"Devuelve [code]true[/code] si esta CryptoKey sólo tiene la parte pública, y "
+"no la privada."
#: doc/classes/CryptoKey.xml:29
msgid ""
@@ -18276,12 +20936,19 @@ msgid ""
"[b]Note[/b]: [code]path[/code] should should be a \"*.pub\" file if "
"[code]public_only[/code] is [code]true[/code], a \"*.key\" file otherwise."
msgstr ""
+"Carga una clave de [code]path[/code]. Si [code]public_only[/code] es "
+"[code]true[/code], sólo se cargará la clave pública.\n"
+"[b]Nota[/b]: [code]path[/code] debe ser un archivo \"*.pub\" si "
+"[code]public_only[/code] es [code]true[/code], un archivo \"*.key\" en caso "
+"contrario."
#: doc/classes/CryptoKey.xml:41
msgid ""
"Loads a key from the given [code]string[/code]. If [code]public_only[/code] "
"is [code]true[/code], only the public key will be loaded."
msgstr ""
+"Carga una clave de la [code]string[/code] dada. Si [code]public_only[/code] "
+"es [code]true[/code], sólo se cargará la clave pública."
#: doc/classes/CryptoKey.xml:52
msgid ""
@@ -18290,40 +20957,48 @@ msgid ""
"[b]Note[/b]: [code]path[/code] should should be a \"*.pub\" file if "
"[code]public_only[/code] is [code]true[/code], a \"*.key\" file otherwise."
msgstr ""
+"Guarda una clave para el camino [code]path[/code]. Si [code]public_only[/"
+"code] es [code]true[/code], sólo se guardará la clave pública.\n"
+"[b]Nota[/b]: [code]path[/code] debe ser un archivo \"*.pub\" si "
+"[code]public_only[/code] es [code]true[/code], un archivo \"*.key\" en caso "
+"contrario."
#: doc/classes/CryptoKey.xml:62
msgid ""
"Returns a string containing the key in PEM format. If [code]public_only[/"
"code] is [code]true[/code], only the public key will be included."
msgstr ""
+"Devuelve una string que contiene la clave en formato PEM. Si "
+"[code]public_only[/code] es [code]true[/code], sólo se incluirá la clave "
+"pública."
#: modules/csg/doc_classes/CSGBox3D.xml:4
msgid "A CSG Box shape."
-msgstr ""
+msgstr "Una forma de caja CSG."
#: modules/csg/doc_classes/CSGBox3D.xml:7
msgid "This node allows you to create a box for use with the CSG system."
-msgstr ""
+msgstr "Este nodo permite crear una caja para usarla con el sistema CSG."
#: modules/csg/doc_classes/CSGBox3D.xml:15
msgid "Depth of the box measured from the center of the box."
-msgstr ""
+msgstr "Profundidad de la caja medida desde el centro de la caja."
#: modules/csg/doc_classes/CSGBox3D.xml:18
msgid "Height of the box measured from the center of the box."
-msgstr ""
+msgstr "La altura de la caja medida desde el centro de la caja."
#: modules/csg/doc_classes/CSGBox3D.xml:21
msgid "The material used to render the box."
-msgstr ""
+msgstr "El material utilizado para fabricar la caja."
#: modules/csg/doc_classes/CSGBox3D.xml:24
msgid "Width of the box measured from the center of the box."
-msgstr ""
+msgstr "El ancho de la caja medido desde el centro de la caja."
#: modules/csg/doc_classes/CSGCombiner3D.xml:4
msgid "A CSG node that allows you to combine other CSG modifiers."
-msgstr ""
+msgstr "Un nodo CSG que permite combinar otros modificadores CSG."
#: modules/csg/doc_classes/CSGCombiner3D.xml:7
msgid ""
@@ -18336,40 +21011,53 @@ msgid ""
"CSGCombiner3D node, and then do an operation that takes the two end results "
"as its input to create the final shape."
msgstr ""
+"Para arreglos complejos de formas, a veces es necesario añadir estructura a "
+"sus nodos CSG. El nodo CSGCombiner3D te permite crear esta estructura. El "
+"nodo encapsula el resultado de las operaciones CSG de sus hijos. De esta "
+"manera, es posible hacer operaciones en un conjunto de figuras que son hijos "
+"de un nodo CSGCombiner3D, y un conjunto de operaciones separadas en un "
+"segundo conjunto de figuras que son hijos de un segundo nodo CSGCombiner3D, "
+"y luego hacer una operación que toma los dos resultados finales como su "
+"entrada para crear la forma final."
#: modules/csg/doc_classes/CSGCylinder3D.xml:4
msgid "A CSG Cylinder shape."
-msgstr ""
+msgstr "Una forma de cilindro CSG."
#: modules/csg/doc_classes/CSGCylinder3D.xml:7
msgid ""
"This node allows you to create a cylinder (or cone) for use with the CSG "
"system."
msgstr ""
+"Este nodo permite crear un cilindro (o cono) para su uso con el sistema CSG."
#: modules/csg/doc_classes/CSGCylinder3D.xml:15
msgid ""
"If [code]true[/code] a cone is created, the [member radius] will only apply "
"to one side."
msgstr ""
+"Si se crea un cono de [code]true[/code], el [member radius] sólo se aplicará "
+"a un lado."
#: modules/csg/doc_classes/CSGCylinder3D.xml:18
msgid "The height of the cylinder."
-msgstr ""
+msgstr "La altura del cilindro."
#: modules/csg/doc_classes/CSGCylinder3D.xml:21
msgid "The material used to render the cylinder."
-msgstr ""
+msgstr "El material utilizado para la renderización del cilindro."
#: modules/csg/doc_classes/CSGCylinder3D.xml:24
msgid "The radius of the cylinder."
-msgstr ""
+msgstr "El radio del cilindro."
#: modules/csg/doc_classes/CSGCylinder3D.xml:27
msgid ""
"The number of sides of the cylinder, the higher this number the more detail "
"there will be in the cylinder."
msgstr ""
+"Cuanto más alto sea el número de lados del cilindro, más detalles habrá en "
+"él."
#: modules/csg/doc_classes/CSGCylinder3D.xml:30
msgid ""
@@ -18377,10 +21065,13 @@ msgid ""
"effect making the cylinder seem rounded. If [code]false[/code] the cylinder "
"will have a flat shaded look."
msgstr ""
+"Si [code]true[/code] las normales del cilindro se ajustan para dar un efecto "
+"suave haciendo que el cilindro parezca redondeado. Si [code]false[/code] el "
+"cilindro tendrá un aspecto de sombra plana."
#: modules/csg/doc_classes/CSGMesh3D.xml:4
msgid "A CSG Mesh shape that uses a mesh resource."
-msgstr ""
+msgstr "Una forma de malla de CSG que utiliza un recurso de malla."
#: modules/csg/doc_classes/CSGMesh3D.xml:7
msgid ""
@@ -18388,34 +21079,39 @@ msgid ""
"it is closed, does not self-intersect, does not contain internal faces and "
"has no edges that connect to more then two faces."
msgstr ""
+"Este nodo CSG permite utilizar cualquier recurso de malla como una forma "
+"CSG, siempre que esté cerrado, no se auto-interfiera, no contenga caras "
+"internas y no tenga bordes que se conecten a más de dos caras."
#: modules/csg/doc_classes/CSGMesh3D.xml:15
msgid "The [Material] used in drawing the CSG shape."
-msgstr ""
+msgstr "El [Material] utilizado en el dibujo de la forma CSG."
#: modules/csg/doc_classes/CSGMesh3D.xml:18
msgid "The [Mesh] resource to use as a CSG shape."
-msgstr ""
+msgstr "El recurso [Malla] para usar como una forma de CSG."
#: modules/csg/doc_classes/CSGPolygon3D.xml:4
msgid "Extrudes a 2D polygon shape to create a 3D mesh."
-msgstr ""
+msgstr "Extrae una forma de polígono 2D para crear una malla 3D."
#: modules/csg/doc_classes/CSGPolygon3D.xml:7
msgid "This node takes a 2D polygon shape and extrudes it to create a 3D mesh."
msgstr ""
+"Este nodo toma una forma de polígono 2D y lo extrae para crear una malla 3D."
#: modules/csg/doc_classes/CSGPolygon3D.xml:15
msgid "Extrusion depth when [member mode] is [constant MODE_DEPTH]."
msgstr ""
+"Profundidad de extrusión cuando el [member mode] es [constant MODE_DEPTH]."
#: modules/csg/doc_classes/CSGPolygon3D.xml:18
msgid "Material to use for the resulting mesh."
-msgstr ""
+msgstr "Material a utilizar para la malla resultante."
#: modules/csg/doc_classes/CSGPolygon3D.xml:21
msgid "Extrusion mode."
-msgstr ""
+msgstr "Modo extrusión."
#: modules/csg/doc_classes/CSGPolygon3D.xml:24
msgid ""
@@ -18423,18 +21119,26 @@ msgid ""
"unison with the distance traveled along our path when [member mode] is "
"[constant MODE_PATH]."
msgstr ""
+"Si [code]true[/code] el componente u de nuestro uv aumentará continuamente "
+"al unísono con la distancia recorrida a lo largo de nuestro camino cuando "
+"[member mode] sea [constant MODE_PATH]."
#: modules/csg/doc_classes/CSGPolygon3D.xml:27
msgid ""
"Interval at which a new extrusion slice is added along the path when [member "
"mode] is [constant MODE_PATH]."
msgstr ""
+"Intervalo en el que se añade un nuevo trozo de extrusión a lo largo de la "
+"ruta cuando el [member mode] es [constant MODE_PATH]."
#: modules/csg/doc_classes/CSGPolygon3D.xml:30
msgid ""
"If [code]true[/code] the start and end of our path are joined together "
"ensuring there is no seam when [member mode] is [constant MODE_PATH]."
msgstr ""
+"Si [code]true[/code] el comienzo y el final de nuestro camino se unen "
+"asegurando que no haya ninguna costura cuando [member mode] es [constant "
+"MODE_PATH]."
#: modules/csg/doc_classes/CSGPolygon3D.xml:33
msgid ""
@@ -18442,66 +21146,80 @@ msgid ""
"we extrude in relation to the position of our CSGPolygon3D when [member "
"mode] is [constant MODE_PATH]."
msgstr ""
+"Si [code]false[/code] extruimos centrado en nuestra cuha, si [code]true[/"
+"code] extruimos en relación con la posición de nuestro CSGPolygon3D cuando "
+"[member mode] es [constant MODE_PATH]."
#: modules/csg/doc_classes/CSGPolygon3D.xml:36
msgid ""
"The [Shape3D] object containing the path along which we extrude when [member "
"mode] is [constant MODE_PATH]."
msgstr ""
+"El objeto [Shape3D] que contiene el camino a lo largo del cual realizamos "
+"una extrusión cuando [member mode] es [constant MODE_PATH]."
#: modules/csg/doc_classes/CSGPolygon3D.xml:39
msgid ""
"The method by which each slice is rotated along the path when [member mode] "
"is [constant MODE_PATH]."
msgstr ""
+"El método por el cual cada pedazo se rota a lo largo del camino cuando "
+"[member mode] es [constant MODE_PATH]."
#: modules/csg/doc_classes/CSGPolygon3D.xml:42
msgid "Point array that defines the shape that we'll extrude."
msgstr ""
+"Una array de puntos que define la forma que vamos a realizar la extrusión."
#: modules/csg/doc_classes/CSGPolygon3D.xml:45
msgid "Generates smooth normals so smooth shading is applied to our mesh."
msgstr ""
+"Genera normales suaves para que se aplique un sombreado suave a nuestra "
+"malla."
#: modules/csg/doc_classes/CSGPolygon3D.xml:48
msgid ""
"Degrees to rotate our extrusion for each slice when [member mode] is "
"[constant MODE_SPIN]."
msgstr ""
+"Grados a rotar nuestra extrusión para cada pedazo cuando el [member mode] es "
+"[constant MODE_SPIN]."
#: modules/csg/doc_classes/CSGPolygon3D.xml:51
msgid "Number of extrusion when [member mode] is [constant MODE_SPIN]."
-msgstr ""
+msgstr "Número de extrusiónes cuando el [member mode] es [constant MODE_SPIN]."
#: modules/csg/doc_classes/CSGPolygon3D.xml:56
msgid "Shape3D is extruded to [member depth]."
-msgstr ""
+msgstr "A una Shape3D se le realiza una extrusión a [member depth]."
#: modules/csg/doc_classes/CSGPolygon3D.xml:59
msgid "Shape3D is extruded by rotating it around an axis."
-msgstr ""
+msgstr "Shape3D se extruye girándolo alrededor de un eje."
#: modules/csg/doc_classes/CSGPolygon3D.xml:62
msgid ""
"Shape3D is extruded along a path set by a [Shape3D] set in [member "
"path_node]."
msgstr ""
+"Shape3D es extruido a lo largo de un camino establecido por una [Shape3D] "
+"establecido en [member path_node]."
#: modules/csg/doc_classes/CSGPolygon3D.xml:65
msgid "Slice is not rotated."
-msgstr ""
+msgstr "El trozo no se rota."
#: modules/csg/doc_classes/CSGPolygon3D.xml:68
msgid "Slice is rotated around the up vector of the path."
-msgstr ""
+msgstr "El trozo se rota alrededor del vector ascendente del camino."
#: modules/csg/doc_classes/CSGPolygon3D.xml:71
msgid "Slice is rotate to match the path exactly."
-msgstr ""
+msgstr "El trozo se rota para que coincida exactamente con la trayectoria."
#: modules/csg/doc_classes/CSGPrimitive3D.xml:4
msgid "Base class for CSG primitives."
-msgstr ""
+msgstr "Clase base para primitivas CSG."
#: modules/csg/doc_classes/CSGPrimitive3D.xml:7
msgid ""
@@ -18509,20 +21227,25 @@ msgid ""
"that is common between them. It cannot be used directly. Instead use one of "
"the various classes that inherit from it."
msgstr ""
+"Clase padre para varias primitivas de CSG. Contiene el código y la "
+"funcionalidad que es común entre ellos. No puede ser usado directamente. En "
+"su lugar, usa una de las varias clases que heredan de ella."
#: modules/csg/doc_classes/CSGPrimitive3D.xml:15
msgid "Invert the faces of the mesh."
-msgstr ""
+msgstr "Invierte las caras de la malla."
#: modules/csg/doc_classes/CSGShape3D.xml:4
msgid "The CSG base class."
-msgstr ""
+msgstr "La clase base del CSG."
#: modules/csg/doc_classes/CSGShape3D.xml:7
msgid ""
"This is the CSG base class that provides CSG operation support to the "
"various CSG nodes in Godot."
msgstr ""
+"Esta es la clase base de CSG que proporciona el soporte de operación de CSG "
+"a los diversos nodos de CSG en Godot."
#: modules/csg/doc_classes/CSGShape3D.xml:34
msgid ""
@@ -18530,30 +21253,42 @@ msgid ""
"node and the second is the root [Mesh] of this node. Only works when this "
"node is the root shape."
msgstr ""
+"Devuelve un [Array] con dos elementos, el primero es la [Transform] de este "
+"nodo y el segundo es la raíz [Mesh] de este nodo. Sólo funciona cuando este "
+"nodo es la forma raíz."
#: modules/csg/doc_classes/CSGShape3D.xml:41
msgid ""
"Returns [code]true[/code] if this is a root shape and is thus the object "
"that is rendered."
msgstr ""
+"Devuelve [code]true[/code] si se trata de una forma de raíz y por lo tanto "
+"es el objeto que se renderiza."
#: modules/csg/doc_classes/CSGShape3D.xml:52 doc/classes/SoftBody3D.xml:64
msgid ""
"Sets individual bits on the layer mask. Use this if you only need to change "
"one layer's value."
msgstr ""
+"Establece bits individuales en la máscara de la capa. Utilízala si sólo "
+"necesitas cambiar el valor de una capa."
#: modules/csg/doc_classes/CSGShape3D.xml:63 doc/classes/SoftBody3D.xml:75
msgid ""
"Sets individual bits on the collision mask. Use this if you only need to "
"change one layer's value."
msgstr ""
+"Establece bits individuales en la máscara de colisión. Utilízala si sólo "
+"necesitas cambiar el valor de una capa."
#: modules/csg/doc_classes/CSGShape3D.xml:69
msgid ""
"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."
msgstr ""
+"Calcular las tangentes para la forma CSG que permite el uso de mapas "
+"normales. Esto sólo se aplica a la forma de la raíz, este ajuste se ignora "
+"en cualquier hijo."
#: modules/csg/doc_classes/CSGShape3D.xml:72
msgid ""
@@ -18565,10 +21300,19 @@ msgid ""
"A contact is detected if object A is in any of the layers that object B "
"scans, or object B is in any layer scanned by object A."
msgstr ""
+"Las capas físicas en las que se encuentra esta área.\n"
+"Los objetos coleccionables pueden existir en cualquiera de las 32 capas "
+"diferentes. Estas capas funcionan como un sistema de etiquetado, y no son "
+"visuales. Un colisionable puede usar estas capas para seleccionar con qué "
+"objetos puede colisionar, usando la propiedad collision_mask.\n"
+"Se detecta un contacto si el objeto A está en cualquiera de las capas que el "
+"objeto B explora, o si el objeto B está en cualquier capa explorada por el "
+"objeto A."
#: modules/csg/doc_classes/CSGShape3D.xml:77
msgid "The physics layers this CSG shape scans for collisions."
msgstr ""
+"Las capas de física que esta forma de CSG explora en busca de colisiones."
#: modules/csg/doc_classes/CSGShape3D.xml:80
msgid ""
@@ -18576,6 +21320,9 @@ msgid ""
"CSG child node as the operation is between this node and the previous child "
"of this nodes parent."
msgstr ""
+"La operación que se realiza en esta forma. Esto se ignora para el primer "
+"nodo hijo de CSG ya que la operación es entre este nodo y el hijo previo a "
+"este nodo padre."
#: modules/csg/doc_classes/CSGShape3D.xml:83
msgid ""
@@ -18583,6 +21330,10 @@ msgid ""
"can be perfectly aligned. A lower value results in greater precision but may "
"be harder to adjust."
msgstr ""
+"El recorte hace que la malla se ajuste a una distancia determinada para que "
+"las caras de dos mallas puedan estar perfectamente alineadas. Un valor más "
+"bajo da como resultado una mayor precisión pero puede ser más difícil de "
+"ajustar."
#: modules/csg/doc_classes/CSGShape3D.xml:86
msgid ""
@@ -18590,44 +21341,50 @@ msgid ""
"always act like a static body. Note that the collision shape is still active "
"even if the CSG shape itself is hidden."
msgstr ""
+"Añade una forma de colisión al motor de física para nuestra forma CSG. Esto "
+"siempre actuará como un cuerpo estático. Ten en cuenta que la forma de "
+"colisión sigue activa incluso si la propia forma CSG está oculta."
#: modules/csg/doc_classes/CSGShape3D.xml:91
msgid ""
"Geometry of both primitives is merged, intersecting geometry is removed."
msgstr ""
+"La geometría de ambas primitivas se fusiona, la geometría que se intersecta "
+"se elimina."
#: modules/csg/doc_classes/CSGShape3D.xml:94
msgid "Only intersecting geometry remains, the rest is removed."
-msgstr ""
+msgstr "Sólo queda la geometría de intersección, el resto se elimina."
#: modules/csg/doc_classes/CSGShape3D.xml:97
msgid ""
"The second shape is subtracted from the first, leaving a dent with its shape."
msgstr ""
+"La segunda forma se resta de la primera, dejando una depresión con su forma."
#: modules/csg/doc_classes/CSGSphere3D.xml:4
msgid "A CSG Sphere shape."
-msgstr ""
+msgstr "Una forma de esfera CSG."
#: modules/csg/doc_classes/CSGSphere3D.xml:7
msgid "This node allows you to create a sphere for use with the CSG system."
-msgstr ""
+msgstr "Este nodo permite crear una esfera para usarla con el sistema CSG."
#: modules/csg/doc_classes/CSGSphere3D.xml:15
msgid "The material used to render the sphere."
-msgstr ""
+msgstr "El material utilizado para la fabricación de la esfera."
#: modules/csg/doc_classes/CSGSphere3D.xml:18
msgid "Number of vertical slices for the sphere."
-msgstr ""
+msgstr "Número de cortes verticales para la esfera."
#: modules/csg/doc_classes/CSGSphere3D.xml:21
msgid "Radius of the sphere."
-msgstr ""
+msgstr "Radio de la esfera."
#: modules/csg/doc_classes/CSGSphere3D.xml:24
msgid "Number of horizontal slices for the sphere."
-msgstr ""
+msgstr "Número de cortes horizontales para la esfera."
#: modules/csg/doc_classes/CSGSphere3D.xml:27
msgid ""
@@ -18635,34 +21392,37 @@ msgid ""
"effect making the sphere seem rounded. If [code]false[/code] the sphere will "
"have a flat shaded look."
msgstr ""
+"Si [code]true[/code] los normales de la esfera se fijan para dar un efecto "
+"suave haciendo que la esfera parezca redondeada. Si [code]false[/code] la "
+"esfera tendrá un aspecto de sombra plana."
#: modules/csg/doc_classes/CSGTorus3D.xml:4
msgid "A CSG Torus shape."
-msgstr ""
+msgstr "Una forma de Toroide CSG."
#: modules/csg/doc_classes/CSGTorus3D.xml:7
msgid "This node allows you to create a torus for use with the CSG system."
-msgstr ""
+msgstr "Este nodo permite crear un toroide para su uso con el sistema CSG."
#: modules/csg/doc_classes/CSGTorus3D.xml:15
msgid "The inner radius of the torus."
-msgstr ""
+msgstr "El radio interior del toroide."
#: modules/csg/doc_classes/CSGTorus3D.xml:18
msgid "The material used to render the torus."
-msgstr ""
+msgstr "El material utilizado para la fabricación del toroide."
#: modules/csg/doc_classes/CSGTorus3D.xml:21
msgid "The outer radius of the torus."
-msgstr ""
+msgstr "El radio exterior del toroide."
#: modules/csg/doc_classes/CSGTorus3D.xml:24
msgid "The number of edges each ring of the torus is constructed of."
-msgstr ""
+msgstr "El número de bordes con que se construye cada anillo del toroide."
#: modules/csg/doc_classes/CSGTorus3D.xml:27
msgid "The number of slices the torus is constructed of."
-msgstr ""
+msgstr "El número de piezas de las que está construido el toroide."
#: modules/csg/doc_classes/CSGTorus3D.xml:30
msgid ""
@@ -18670,12 +21430,17 @@ msgid ""
"effect making the torus seem rounded. If [code]false[/code] the torus will "
"have a flat shaded look."
msgstr ""
+"Si [code]true[/code] las normales del toro se fijan para dar un efecto suave "
+"haciendo que el toro parezca redondeado. Si [code]false[/code] el toro "
+"tendrá un aspecto de sombra plana."
#: modules/mono/doc_classes/CSharpScript.xml:4
msgid ""
"A script implemented in the C# programming language (Mono-enabled builds "
"only)."
msgstr ""
+"Un script implementado en el lenguaje de programación C# (sólo para "
+"construcciones habilitadas en mono)."
#: modules/mono/doc_classes/CSharpScript.xml:7
msgid ""
@@ -18683,9 +21448,12 @@ msgid ""
"class and is only available in Mono-enabled Godot builds.\n"
"See also [GodotSharp]."
msgstr ""
+"Esta clase representa un guión de C#. Es el equivalente en C# de la clase "
+"[GDScript] y sólo está disponible en construcciones Godot habilitadas para "
+"Mono.\n"
+"Vea también [GodotSharp]."
#: modules/mono/doc_classes/CSharpScript.xml:11
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/latest/getting_started/scripting/c_sharp/"
"index.html"
@@ -18696,11 +21464,11 @@ msgstr ""
#: modules/mono/doc_classes/CSharpScript.xml:18
#: modules/gdnative/doc_classes/PluginScript.xml:14
msgid "Returns a new instance of the script."
-msgstr ""
+msgstr "Devuelve una nueva instancia del script."
#: doc/classes/CubeMesh.xml:4
msgid "Generate an axis-aligned cuboid [PrimitiveMesh]."
-msgstr ""
+msgstr "Generar un cuboide alineado con el eje [PrimitiveMesh]."
#: doc/classes/CubeMesh.xml:7
msgid ""
@@ -18709,26 +21477,31 @@ msgid ""
"face individually. To apply the same texture on all faces, change the "
"material's UV property to [code]Vector3(3, 2, 1)[/code]."
msgstr ""
+"Generar un cuboide alineado con el eje [PrimitiveMesh].\n"
+"El diseño UV del cubo está dispuesto en una disposición de 3×2 que permite "
+"texturizar cada cara individualmente. Para aplicar la misma textura en todas "
+"las caras, cambia la propiedad UV del material a [code]Vector3(3, 2, 1)[/"
+"code]."
#: doc/classes/CubeMesh.xml:16
msgid "Size of the cuboid mesh."
-msgstr ""
+msgstr "El tamaño de la malla del cuboide."
#: doc/classes/CubeMesh.xml:19
msgid "Number of extra edge loops inserted along the Z axis."
-msgstr ""
+msgstr "Número de bucles de borde extra insertados a lo largo del eje Z."
#: doc/classes/CubeMesh.xml:22
msgid "Number of extra edge loops inserted along the Y axis."
-msgstr ""
+msgstr "Número de bucles de borde extra insertados a lo largo del eje Y."
#: doc/classes/CubeMesh.xml:25
msgid "Number of extra edge loops inserted along the X axis."
-msgstr ""
+msgstr "Número de bucles de borde extra insertados a lo largo del eje X."
#: doc/classes/Curve.xml:4
msgid "A mathematic curve."
-msgstr ""
+msgstr "Una curva matemática."
#: doc/classes/Curve.xml:7
msgid ""
@@ -18736,6 +21509,9 @@ msgid ""
"ranges between [code]0[/code] and [code]1[/code] on the Y axis and positions "
"points relative to the [code]0.5[/code] Y position."
msgstr ""
+"Una curva que puede ser guardada y reutilizada para otros objetos. Por "
+"defecto, oscila entre [code]0[/code] y [code]1[/code] en el eje Y y "
+"posiciona los puntos relativos a la posición [code]0,5[/code] Y."
#: doc/classes/Curve.xml:26
msgid ""
@@ -18745,58 +21521,74 @@ msgid ""
"assignments to the [code]*_tangent[/code] angle if [code]*_mode[/code] is "
"set to [constant TANGENT_FREE]."
msgstr ""
+"Añade un punto a la curva. Para cada lado, si el [code]*_mode[/code] es "
+"[constant TANGENT_LINEAR], el ángulo [code]*_tangent[/code] (en grados) "
+"utiliza la pendiente de la curva a mitad de camino del punto adyacente. "
+"Permite asignaciones personalizadas al ángulo [code]*_tangent[/code] si "
+"[code]*_mode[/code] se establece en [constant TANGENT_FREE]."
#: doc/classes/Curve.xml:33
msgid "Recomputes the baked cache of points for the curve."
-msgstr ""
+msgstr "Recompone la ca ché de puntos cocinada para la curva."
#: doc/classes/Curve.xml:40
msgid ""
"Removes points that are closer than [code]CMP_EPSILON[/code] (0.00001) units "
"to their neighbor on the curve."
msgstr ""
+"Elimina los puntos que están más cerca de las unidades [code]CMP_EPSILON[/"
+"code] (0.00001) de su vecino en la curva."
#: doc/classes/Curve.xml:47 doc/classes/Curve2D.xml:33
#: doc/classes/Curve3D.xml:33
msgid "Removes all points from the curve."
-msgstr ""
+msgstr "Elimina todos los puntos de la curva."
#: doc/classes/Curve.xml:54 doc/classes/Curve2D.xml:74
#: doc/classes/Curve3D.xml:89
msgid "Returns the number of points describing the curve."
-msgstr ""
+msgstr "Devuelve el número de puntos que describen la curva."
#: doc/classes/Curve.xml:63
msgid ""
"Returns the left [enum TangentMode] for the point at [code]index[/code]."
msgstr ""
+"Devuelve la izquierda [enum TangentMode] para el punto en [code]index[/code]."
#: doc/classes/Curve.xml:72
msgid ""
"Returns the left tangent angle (in degrees) for the point at [code]index[/"
"code]."
msgstr ""
+"Devuelve el ángulo de la tangente izquierda (en grados) para el punto en "
+"[code]index[/code]."
#: doc/classes/Curve.xml:81
msgid "Returns the curve coordinates for the point at [code]index[/code]."
msgstr ""
+"Devuelve las coordenadas de la curva para el punto en [code]index[/code]."
#: doc/classes/Curve.xml:90
msgid ""
"Returns the right [enum TangentMode] for the point at [code]index[/code]."
msgstr ""
+"Devuelve el derecho [enum TangentMode] para el punto en [code]index[/code]."
#: doc/classes/Curve.xml:99
msgid ""
"Returns the right tangent angle (in degrees) for the point at [code]index[/"
"code]."
msgstr ""
+"Devuelve el ángulo de la tangente derecha (en grados) para el punto en "
+"[code]index[/code]."
#: doc/classes/Curve.xml:108
msgid ""
"Returns the Y value for the point that would exist at the X position "
"[code]offset[/code] along the curve."
msgstr ""
+"Devuelve el valor de Y para el punto que existiría en la posición X "
+"[code]offset[/code] a lo largo de la curva."
#: doc/classes/Curve.xml:117
msgid ""
@@ -18804,78 +21596,94 @@ msgid ""
"[code]offset[/code] along the curve using the baked cache. Bakes the curve's "
"points if not already baked."
msgstr ""
+"Devuelve el valor de Y para el punto que existiría en la posición X "
+"[code]offset[/code] a lo largo de la curva usando la caché cocinada. Cocina "
+"los puntos de la curva si no están ya cocinados."
#: doc/classes/Curve.xml:126
msgid "Removes the point at [code]index[/code] from the curve."
-msgstr ""
+msgstr "Elimina el punto de [code]index[/code] de la curva."
#: doc/classes/Curve.xml:137
msgid ""
"Sets the left [enum TangentMode] for the point at [code]index[/code] to "
"[code]mode[/code]."
msgstr ""
+"Establece el [enum TangentMode] izquierdo para el punto en [code]index[/"
+"code] a [code]mode[/code]."
#: doc/classes/Curve.xml:148
msgid ""
"Sets the left tangent angle for the point at [code]index[/code] to "
"[code]tangent[/code]."
msgstr ""
+"Establece el ángulo de la tangente izquierda del punto en [code]index[/code] "
+"a [code]tangent[/code]."
#: doc/classes/Curve.xml:159
msgid "Sets the offset from [code]0.5[/code]."
-msgstr ""
+msgstr "Establece el desplazamiento a [code]0.5[/code]."
#: doc/classes/Curve.xml:170
msgid ""
"Sets the right [enum TangentMode] for the point at [code]index[/code] to "
"[code]mode[/code]."
msgstr ""
+"Establece el [enum TangentMode] derecho para el punto de [code]index[/code] "
+"a [code]mode[/code]."
#: doc/classes/Curve.xml:181
msgid ""
"Sets the right tangent angle for the point at [code]index[/code] to "
"[code]tangent[/code]."
msgstr ""
+"Establece el ángulo de la tangente derecha para el punto en [code]index[/"
+"code] a [code]tangent[/code]."
#: doc/classes/Curve.xml:192
msgid ""
"Assigns the vertical position [code]y[/code] to the point at [code]index[/"
"code]."
msgstr ""
+"Asigna la posición vertical [code]y[/code] al punto de [code]index[/code]."
#: doc/classes/Curve.xml:198
msgid "The number of points to include in the baked (i.e. cached) curve data."
msgstr ""
+"El número de puntos a incluir en los datos de la curva cocinados (es decir, "
+"en caché)."
#: doc/classes/Curve.xml:201
msgid "The maximum value the curve can reach."
-msgstr ""
+msgstr "El valor máximo que puede alcanzar la curva."
#: doc/classes/Curve.xml:204
msgid "The minimum value the curve can reach."
-msgstr ""
+msgstr "El valor mínimo que la curva puede alcanzar."
#: doc/classes/Curve.xml:210
msgid "Emitted when [member max_value] or [member min_value] is changed."
-msgstr ""
+msgstr "Emitido cuando se cambia [member max_value] o [member min_value]."
#: doc/classes/Curve.xml:216
msgid "The tangent on this side of the point is user-defined."
-msgstr ""
+msgstr "La tangente de este lado del punto es definida por el usuario."
#: doc/classes/Curve.xml:219
msgid ""
"The curve calculates the tangent on this side of the point as the slope "
"halfway towards the adjacent point."
msgstr ""
+"La curva calcula la tangente de este lado del punto como la pendiente a "
+"mitad de camino hacia el punto adyacente."
#: doc/classes/Curve.xml:222
msgid "The total number of available tangent modes."
-msgstr ""
+msgstr "El número total de modos tangentes disponibles."
#: doc/classes/Curve2D.xml:4
msgid "Describes a Bézier curve in 2D space."
-msgstr ""
+msgstr "Describe una curva de Bézier en el espacio 2D."
#: doc/classes/Curve2D.xml:7
msgid ""
@@ -18884,6 +21692,11 @@ msgid ""
"It keeps a cache of precalculated points along the curve, to speed up "
"further calculations."
msgstr ""
+"Esta clase describe una curva de Bézier en el espacio 2D. Se utiliza "
+"principalmente para dar una forma a un [Path2D], pero puede ser muestreada "
+"manualmente para otros propósitos.\n"
+"Mantiene un cacheo de puntos precalculados a lo largo de la curva, para "
+"acelerar los cálculos."
#: doc/classes/Curve2D.xml:25 doc/classes/Curve3D.xml:25
msgid ""
@@ -18896,16 +21709,27 @@ msgid ""
"get_point_count][/code]), the point will be appended at the end of the point "
"list."
msgstr ""
+"Añade un punto a una curva en la posición [code]position[/code], con puntos "
+"de control [code]in[/code] y [code]out[/code].\n"
+"Si se da [code]at_position[/code], el punto se inserta antes del número de "
+"punto [code]at_position[/code], desplazando ese punto (y todos los puntos "
+"posteriores) después del punto insertado. Si no se da [code]at_position[/"
+"code], o es un valor ilegal ([code]at_position <0[/code] o [code]at_position "
+">= [method get_point_count][/code]), el punto se añadirá al final de la "
+"lista de puntos."
#: doc/classes/Curve2D.xml:40 doc/classes/Curve3D.xml:40
msgid ""
"Returns the total length of the curve, based on the cached points. Given "
"enough density (see [member bake_interval]), it should be approximate enough."
msgstr ""
+"Devuelve la longitud total de la curva, basada en los puntos cacheados. Si "
+"se le da suficiente densidad (ver [member bake_interval]), debe ser bastante "
+"aproximada."
#: doc/classes/Curve2D.xml:47
msgid "Returns the cache of points as a [PackedVector2Array]."
-msgstr ""
+msgstr "Devuelve el caché de puntos como un [PackedVector2Array]."
#: doc/classes/Curve2D.xml:56
msgid ""
@@ -18913,6 +21737,10 @@ msgid ""
"be used in [method interpolate_baked].\n"
"[code]to_point[/code] must be in this curve's local space."
msgstr ""
+"Devuelve el desplazamiento más cercano a [code]to_point[/code]. Este "
+"desplazamiento está destinado a ser utilizado en [method "
+"interpolate_baked].\n"
+"[code]to_point[/code] debe estar en el espacio local de esta curva."
#: doc/classes/Curve2D.xml:66 doc/classes/Curve3D.xml:81
msgid ""
@@ -18920,6 +21748,9 @@ msgid ""
"code].\n"
"[code]to_point[/code] must be in this curve's local space."
msgstr ""
+"Devuelve el punto más cercano (en el espacio local de la curva) a "
+"[code]to_point[/code].\n"
+"[code]to_point[/code] debe estar en el espacio local de esta curva."
#: doc/classes/Curve2D.xml:83
msgid ""
@@ -18927,6 +21758,9 @@ msgid ""
"code]. If the index is out of bounds, the function sends an error to the "
"console, and returns [code](0, 0)[/code]."
msgstr ""
+"Devuelve la posición del punto de control que lleva al vértice [code]idx[/"
+"code]. Si el índice está fuera de los límites, la función envía un error a "
+"la consola, y devuelve [code](0, 0)[/code]."
#: doc/classes/Curve2D.xml:92
msgid ""
@@ -18934,6 +21768,9 @@ msgid ""
"[code]idx[/code]. If the index is out of bounds, the function sends an error "
"to the console, and returns [code](0, 0)[/code]."
msgstr ""
+"Devuelve la posición del punto de control que sale del vértice [code]idx[/"
+"code]. Si el índice está fuera de los límites, la función envía un error a "
+"la consola, y devuelve [code](0, 0)[/code]."
#: doc/classes/Curve2D.xml:101
msgid ""
@@ -18941,6 +21778,9 @@ msgid ""
"bounds, the function sends an error to the console, and returns [code](0, 0)"
"[/code]."
msgstr ""
+"Devuelve la posición del vértice [code]idx[/code]. Si el índice está fuera "
+"de los límites, la función envía un error a la consola, y devuelve [code](0, "
+"0)[/code]."
#: doc/classes/Curve2D.xml:112
msgid ""
@@ -18953,6 +21793,14 @@ msgid ""
"vertex, and [code]t[/code] is ignored. If the curve has no points, the "
"function sends an error to the console, and returns [code](0, 0)[/code]."
msgstr ""
+"Devuelve la posición entre el vértice [code]idx[/code] y el vértice "
+"[code]idx + 1[/code], donde [code]t[/code] controla si el punto es el primer "
+"vértice ([code]t = 0.0[/code]), el último vértice ([code]t = 1.0[/code]), o "
+"en medio. Los valores de [code]t[/code] fuera del rango ([code]0.0 >= t <=1[/"
+"code]) dan resultados extraños, pero predecibles.\n"
+"Si [code]idx[/code] está fuera de los límites se trunca el primer o último "
+"vértice, y [code]t[/code] se ignora. Si la curva no tiene puntos, la función "
+"envía un error a la consola, y devuelve [code](0, 0)[/code]."
#: doc/classes/Curve2D.xml:124 doc/classes/Curve3D.xml:148
msgid ""
@@ -18965,6 +21813,15 @@ msgid ""
"Cubic interpolation tends to follow the curves better, but linear is faster "
"(and often, precise enough)."
msgstr ""
+"Devuelve un punto dentro de la curva en la posición [code]offset[/code], "
+"donde [code]offset[/code] se mide como una distancia en píxeles a lo largo "
+"de la curva.\n"
+"Para ello, encuentra los dos puntos en caché entre los que se encuentra "
+"[code]offset[/code], e interpola los valores. Esta interpolación es cúbica "
+"si [code]cubic[/code] se establece en [code]true[/code], o lineal si se "
+"establece en [code]false[/code].\n"
+"La interpolación cúbica tiende a seguir mejor las curvas, pero la lineal es "
+"más rápida (y a menudo, suficientemente precisa)."
#: doc/classes/Curve2D.xml:135 doc/classes/Curve3D.xml:172
msgid ""
@@ -18972,12 +21829,17 @@ msgid ""
"interpolate] using the integer part of [code]fofs[/code] as [code]idx[/"
"code], and its fractional part as [code]t[/code]."
msgstr ""
+"Devuelve la posición en el vértice [code]fofs[/code]. Llama a [method "
+"interpolate] usando la parte entera de [code]fofs[/code] como [code]idx[/"
+"code], y su parte fraccionaria como [code]t[/code]."
#: doc/classes/Curve2D.xml:144 doc/classes/Curve3D.xml:181
msgid ""
"Deletes the point [code]idx[/code] from the curve. Sends an error to the "
"console if [code]idx[/code] is out of bounds."
msgstr ""
+"Suprime el punto [code]idx[/code] de la curva. Envía un error a la consola "
+"si [code]idx[/code] está fuera de los límites."
#: doc/classes/Curve2D.xml:155 doc/classes/Curve3D.xml:192
msgid ""
@@ -18985,6 +21847,9 @@ msgid ""
"code]. If the index is out of bounds, the function sends an error to the "
"console."
msgstr ""
+"Establece la posición del punto de control que conduce al vértice [code]idx[/"
+"code]. Si el índice está fuera de los límites, la función envía un error a "
+"la consola."
#: doc/classes/Curve2D.xml:166 doc/classes/Curve3D.xml:203
msgid ""
@@ -18992,12 +21857,17 @@ msgid ""
"code]. If the index is out of bounds, the function sends an error to the "
"console."
msgstr ""
+"Establece la posición del punto de control que sale del vértice [code]idx[/"
+"code]. Si el índice está fuera de los límites, la función envía un error a "
+"la consola."
#: doc/classes/Curve2D.xml:177 doc/classes/Curve3D.xml:214
msgid ""
"Sets the position for the vertex [code]idx[/code]. If the index is out of "
"bounds, the function sends an error to the console."
msgstr ""
+"Establece la posición del vértice [code]idx[/code]. Si el índice está fuera "
+"de los límites, la función envía un error a la consola."
#: doc/classes/Curve2D.xml:188 doc/classes/Curve3D.xml:237
msgid ""
@@ -19014,6 +21884,19 @@ msgid ""
"segment may deviate from the real curve, before the segment has to be "
"subdivided."
msgstr ""
+"Devuelve una lista de puntos a lo largo de la curva, con una densidad de "
+"puntos controlada por la curvatura. Es decir, las partes más curvadas "
+"tendrán más puntos que las partes más rectas.\n"
+"Esta aproximación hace segmentos rectos entre cada punto, luego subdivide "
+"esos segmentos hasta que la forma resultante es lo suficientemente similar.\n"
+"[code]max_stages[/code] controla cuántas subdivisiones puede afrontar un "
+"segmento de curva antes de que se considere suficientemente aproximado. Cada "
+"subdivisión divide el segmento por la mitad, por lo que las 5 etapas "
+"predeterminadas pueden significar hasta 32 subdivisiones por segmento de "
+"curva. Aumenta con cuidado!\n"
+"[code]tolerance_degrees[/code] controla cuántos grados puede desviarse el "
+"punto medio de un segmento de la curva real, antes de que el segmento tenga "
+"que ser subdividido."
#: doc/classes/Curve2D.xml:197
msgid ""
@@ -19023,10 +21906,15 @@ msgid ""
"smaller the distance, the more points in the cache and the more memory it "
"will consume, so use with care."
msgstr ""
+"La distancia en píxeles entre dos puntos cacheados adyacentes. Cambiarlo "
+"obliga a recomponer la caché la próxima vez que se llame a la función "
+"[method get_baked_points] o [method get_baked_length]. Cuanto menor sea la "
+"distancia, más puntos en el cache y más memoria consumirá, así que úsala con "
+"cuidado."
#: doc/classes/Curve3D.xml:4
msgid "Describes a Bézier curve in 3D space."
-msgstr ""
+msgstr "Describe una curva de Bézier en el espacio 3D."
#: doc/classes/Curve3D.xml:7
msgid ""
@@ -19035,20 +21923,27 @@ msgid ""
"It keeps a cache of precalculated points along the curve, to speed up "
"further calculations."
msgstr ""
+"Esta clase describe una curva Bézier en el espacio 3D. Se utiliza "
+"principalmente para dar una forma a un [Path3D], pero puede ser muestreada "
+"manualmente para otros propósitos.\n"
+"Mantiene un cacheo de puntos precalculados a lo largo de la curva, para "
+"acelerar los cálculos posteriores."
#: doc/classes/Curve3D.xml:47
msgid "Returns the cache of points as a [PackedVector3Array]."
-msgstr ""
+msgstr "Devuelve el caché de puntos como un [PackedVector3Array]."
#: doc/classes/Curve3D.xml:54
msgid "Returns the cache of tilts as a [PackedFloat32Array]."
-msgstr ""
+msgstr "Devuelve el caché de inclinaciones como un [PackedFloat32Array]."
#: doc/classes/Curve3D.xml:61
msgid ""
"Returns the cache of up vectors as a [PackedVector3Array].\n"
"If [member up_vector_enabled] is [code]false[/code], the cache will be empty."
msgstr ""
+"Devuelve la caché de los vectores como un [PackedVector3Array].\n"
+"Si [member up_vector_enabled] es [code]false[/code], el caché estará vacío."
#: doc/classes/Curve3D.xml:71
msgid ""
@@ -19057,6 +21952,10 @@ msgid ""
"interpolate_baked_up_vector].\n"
"[code]to_point[/code] must be in this curve's local space."
msgstr ""
+"Devuelve el desplazamiento más cercano a [code]to_point[/code]. Este "
+"desplazamiento está destinado a ser utilizado en [method interpolate_baked] "
+"o [method interpolate_baked_up_vector].\n"
+"[code]to_point[/code] debe estar en el espacio local de esta curva."
#: doc/classes/Curve3D.xml:98
msgid ""
@@ -19064,6 +21963,9 @@ msgid ""
"code]. If the index is out of bounds, the function sends an error to the "
"console, and returns [code](0, 0, 0)[/code]."
msgstr ""
+"Devuelve la posición del punto de control que lleva al vértice [code]idx[/"
+"code]. Si el índice está fuera de los límites, la función envía un error a "
+"la consola, y devuelve [code](0, 0, 0)[/code]."
#: doc/classes/Curve3D.xml:107
msgid ""
@@ -19071,6 +21973,9 @@ msgid ""
"[code]idx[/code]. If the index is out of bounds, the function sends an error "
"to the console, and returns [code](0, 0, 0)[/code]."
msgstr ""
+"Devuelve la posición del punto de control que sale del vértice [code]idx[/"
+"code]. Si el índice está fuera de los límites, la función envía un error a "
+"la consola, y devuelve [code](0, 0, 0)[/code]."
#: doc/classes/Curve3D.xml:116
msgid ""
@@ -19078,6 +21983,9 @@ msgid ""
"bounds, the function sends an error to the console, and returns [code](0, 0, "
"0)[/code]."
msgstr ""
+"Devuelve la posición del vértice [code]idx[/code]. Si el índice está fuera "
+"de los límites, la función envía un error a la consola, y devuelve [code](0, "
+"0, 0)[/code]."
#: doc/classes/Curve3D.xml:125
msgid ""
@@ -19085,6 +21993,9 @@ msgid ""
"index is out of bounds, the function sends an error to the console, and "
"returns [code]0[/code]."
msgstr ""
+"Devuelve el ángulo de inclinación en radianes para el punto [code]idx[/"
+"code]. Si el índice está fuera de los límites, la función envía un error a "
+"la consola, y devuelve [code]0[/code]."
#: doc/classes/Curve3D.xml:136
msgid ""
@@ -19097,6 +22008,14 @@ msgid ""
"vertex, and [code]t[/code] is ignored. If the curve has no points, the "
"function sends an error to the console, and returns [code](0, 0, 0)[/code]."
msgstr ""
+"Devuelve la posición entre el vértice [code]idx[/code] y el vértice "
+"[code]idx + 1[/code], donde [code]t[/code] controla si el punto es el primer "
+"vértice ([code]t = 0.0[/code]), el último vértice ([code]t = 1.0[/code]), o "
+"en medio. Los valores de [code]t[/code] fuera del rango ([code]0.0 >= t <=1[/"
+"code]) dan resultados extraños, pero predecibles.\n"
+"Si [code]idx[/code] está fuera de los límites se trunca al primer o último "
+"vértice, y [code]t[/code] se ignora. Si la curva no tiene puntos, la función "
+"envía un error a la consola, y devuelve [code](0, 0, 0)[/code]."
#: doc/classes/Curve3D.xml:161
msgid ""
@@ -19109,6 +22028,15 @@ msgid ""
"If the curve has no up vectors, the function sends an error to the console, "
"and returns [code](0, 1, 0)[/code]."
msgstr ""
+"Devuelve un vector ascendente dentro de la curva en la posición "
+"[code]offset[/code], donde [code]offset[/code] se mide como una distancia en "
+"unidades 3D a lo largo de la curva.\n"
+"Para ello, encuentra los dos vectores ascendentes donde se encuentra el "
+"[code]offset[/code] entre ellos, y luego interpola los valores. Si "
+"[code]apply_tilt[/code] es [code]true[/code], se aplica una inclinación "
+"interpolada al vector interpolado hacia arriba.\n"
+"Si la curva no tiene vectores ascendentes, la función envía un error a la "
+"consola, y devuelve [code](0, 1, 0)[/code]."
#: doc/classes/Curve3D.xml:225
msgid ""
@@ -19118,6 +22046,13 @@ msgid ""
"the path would have. In the case of a curve controlling a [PathFollow3D], "
"this tilt is an offset over the natural tilt the [PathFollow3D] calculates."
msgstr ""
+"Establece el ángulo de inclinación en radianes para el punto [code]idx[/"
+"code]. Si el índice está fuera de los límites, la función envía un error a "
+"la consola.\n"
+"La inclinación controla la rotación a lo largo del eje de observación que "
+"tendría un objeto que viajara por el camino. En el caso de una curva que "
+"controla un [PathFollow3D], esta inclinación es un desplazamiento sobre la "
+"inclinación natural que calcula el [PathFollow3D]."
#: doc/classes/Curve3D.xml:246
msgid ""
@@ -19127,6 +22062,11 @@ msgid ""
"smaller the distance, the more points in the cache and the more memory it "
"will consume, so use with care."
msgstr ""
+"La distancia en metros entre dos puntos cacheados adyacentes. Cambiarlo "
+"obliga a recomponer la caché la próxima vez que se llame a la función "
+"[method get_baked_points] o [method get_baked_length]. Cuanto más pequeña "
+"sea la distancia, más puntos en el cache y más memoria consumirá, así que "
+"úsala con cuidado."
#: doc/classes/Curve3D.xml:249
msgid ""
@@ -19135,28 +22075,34 @@ msgid ""
"PathFollow3D.ROTATION_ORIENTED]. Changing it forces the cache to be "
"recomputed."
msgstr ""
+"Si [code]true[/code], la curva cocinará los vectores utilizados para la "
+"orientación. Esto se utiliza cuando [member PathFollow3D.rotation_mode] se "
+"establece en [constant PathFollow3D.ROTATION_ORIENTED]. Al cambiarlo se "
+"fuerza a la caché a ser recalculada."
#: doc/classes/CurveTexture.xml:4
msgid "A texture that shows a curve."
-msgstr ""
+msgstr "Una textura que muestra una curva."
#: doc/classes/CurveTexture.xml:7
msgid ""
"Renders a given [Curve] provided to it. Simplifies the task of drawing "
"curves and/or saving them as image files."
msgstr ""
+"Hace que una determinada [Curve] le sea proporcionada. Simplifica la tarea "
+"de dibujar curvas y/o guardarlas como archivos de imagen."
#: doc/classes/CurveTexture.xml:15
msgid "The [code]curve[/code] rendered onto the texture."
-msgstr ""
+msgstr "La [code]curve[/code] renderizada en la textura."
#: doc/classes/CurveTexture.xml:18
msgid "The width of the texture."
-msgstr ""
+msgstr "El ancho de la textura."
#: doc/classes/CylinderMesh.xml:4
msgid "Class representing a cylindrical [PrimitiveMesh]."
-msgstr ""
+msgstr "Clase que representa un cilindro [PrimitiveMesh]."
#: doc/classes/CylinderMesh.xml:7
msgid ""
@@ -19164,48 +22110,53 @@ msgid ""
"create cones by setting either the [member top_radius] or [member "
"bottom_radius] properties to 0.0."
msgstr ""
+"Clase que representa un cilindro [PrimitiveMesh]. Esta clase puede ser usada "
+"para crear conos estableciendo las propiedades [member top_radius] o [member "
+"bottom_radius] a 0.0."
#: doc/classes/CylinderMesh.xml:15
msgid "Bottom radius of the cylinder."
-msgstr ""
+msgstr "El radio inferior del cilindro."
#: doc/classes/CylinderMesh.xml:18
msgid "Full height of the cylinder."
-msgstr ""
+msgstr "La altura total del cilindro."
#: doc/classes/CylinderMesh.xml:21
msgid "Number of radial segments on the cylinder."
-msgstr ""
+msgstr "Número de segmentos radiales en el cilindro."
#: doc/classes/CylinderMesh.xml:24
msgid "Number of edge rings along the height of the cylinder."
-msgstr ""
+msgstr "Número de anillos a lo largo de la altura del cilindro."
#: doc/classes/CylinderMesh.xml:27
msgid "Top radius of the cylinder."
-msgstr ""
+msgstr "El radio superior del cilindro."
#: doc/classes/CylinderShape3D.xml:4 doc/classes/CylinderShape3D.xml:7
msgid "Cylinder shape for collisions."
-msgstr ""
+msgstr "Forma de cilindro para colisiones."
#: doc/classes/CylinderShape3D.xml:15
msgid "The cylinder's height."
-msgstr ""
+msgstr "La altura del cilindro."
#: doc/classes/CylinderShape3D.xml:18
msgid "The cylinder's radius."
-msgstr ""
+msgstr "El radio del cilindro."
#: doc/classes/DampedSpringJoint2D.xml:4
msgid "Damped spring constraint for 2D physics."
-msgstr ""
+msgstr "Restricción de muelle amortiguado para la física 2D."
#: doc/classes/DampedSpringJoint2D.xml:7
msgid ""
"Damped spring constraint for 2D physics. This resembles a spring joint that "
"always wants to go back to a given length."
msgstr ""
+"Restricción de muelle amortiguado para la física 2D. Esto se asemeja a una "
+"articulación de resorte que siempre quiere volver a una longitud determinada."
#: doc/classes/DampedSpringJoint2D.xml:15
msgid ""
@@ -19214,18 +22165,28 @@ msgid ""
"system tries to align them to the spring axis again. A high [code]damping[/"
"code] value forces the attached bodies to align faster."
msgstr ""
+"El ratio de amortiguación de la articulación del resorte. Un valor entre "
+"[code]0[/code] y [code]1[/code]. Cuando los dos cuerpos se mueven en "
+"direcciones diferentes el sistema intenta alinearlos de nuevo al eje del "
+"resorte. Un valor alto de [code]damping[/code] obliga a los cuerpos adjuntos "
+"a alinearse más rápido."
#: doc/classes/DampedSpringJoint2D.xml:18
msgid ""
"The spring joint's maximum length. The two attached bodies cannot stretch it "
"past this value."
msgstr ""
+"La longitud máxima de la articulación del resorte. Los dos cuerpos unidos no "
+"pueden estirarse más allá de este valor."
#: doc/classes/DampedSpringJoint2D.xml:21
msgid ""
"When the bodies attached to the spring joint move they stretch or squash it. "
"The joint always tries to resize towards this length."
msgstr ""
+"Cuando los cuerpos unidos a la articulación de resorte se mueven, se estiran "
+"o se aplastan. La articulación siempre trata de redimensionarse hacia esta "
+"longitud."
#: doc/classes/DampedSpringJoint2D.xml:24
msgid ""
@@ -19233,10 +22194,14 @@ msgid ""
"it. The joint applies an opposing force to the bodies, the product of the "
"stiffness multiplied by the size difference from its resting length."
msgstr ""
+"Cuanto más alto sea el valor, menos los cuerpos adheridos a la articulación "
+"la deformarán. La articulación aplica una fuerza opuesta a los cuerpos, "
+"producto de la rigidez multiplicada por la diferencia de tamaño de su "
+"longitud en reposo."
#: doc/classes/Decal.xml:4
msgid "Node that projects a texture onto a [MeshInstance3D]."
-msgstr ""
+msgstr "Nodo que proyecta una textura en un [MeshInstance3D]."
#: doc/classes/Decal.xml:7
msgid ""
@@ -19256,12 +22221,32 @@ msgid ""
"cluster data and drawn when the mesh is drawn, they are not drawn as a "
"postprocessing effect after."
msgstr ""
+"Las [Decal]s se usan para proyectar una textura sobre una [Mesh] en la "
+"escena. Utilice las calcomanías para añadir detalles a una escena sin "
+"afectar a la [Mesh] subyacente. A menudo se utilizan para añadir intemperie "
+"a un edificio, añadir tierra o barro al suelo, o añadir variedad a los "
+"accesorios. Las calcomanías pueden ser movidas en cualquier momento, "
+"haciéndolas adecuadas para cosas como sombras de manchas o puntos de vista "
+"de láser.\n"
+"Están hechas de un [AABB] y un grupo de [Texture2D] especificando [Color], "
+"normal, ORM (oclusión ambiental, rugosidad, metálico), y emisión. Las "
+"calcomanías se proyectan dentro de su [AABB] por lo que alterar la "
+"orientación de la calcomanía afecta a la dirección en la que se proyectan. "
+"Por defecto, las calcomanías se proyectan hacia abajo (es decir, de Y "
+"positivo a Y negativo).\n"
+"Las [Texture2D]s asociadas con la Calcomanía se almacenan automáticamente en "
+"un atlas de texturas que se utiliza para dibujar las calcomanías, de modo "
+"que todas las calcomanías pueden ser dibujadas a la vez. Godot utiliza "
+"calcomanías agrupadas, lo que significa que se almacenan en datos agrupados "
+"y se dibujan cuando se dibuja la malla, no se dibujan como un efecto de post-"
+"procesamiento después."
#: doc/classes/Decal.xml:20
+#, fuzzy
msgid ""
"Returns the [Texture2D] associated with the specified [enum DecalTexture]. "
"This is a convenience method, in most cases you should access the texture "
-"directly. \n"
+"directly.\n"
"For example, instead of [code]albedo_tex = $Decal.get_texture(Decal."
"TEXTURE_ALBEDO)[/code], use [code]albedo_tex = $Decal.texture_albedo[/"
"code].\n"
@@ -19272,12 +22257,25 @@ msgid ""
" $NewDecal.set_texture(i, $OldDecal.get_texture(i))\n"
"[/codeblock]"
msgstr ""
+"Devuelve la [Texture2D] asociada a la [enum DecalTexture] especificada. Este "
+"es un método conveniente, en la mayoría de los casos se debe acceder a la "
+"textura directamente. \n"
+"Por ejemplo, en lugar de [code]albedo_tex = $Decal.get_texture(Decal."
+"TEXTURE_ALBEDO)[/code], usa [code]albedo_tex = $Decal.texture_albedo[/"
+"code].\n"
+"Un caso en el que esto es mejor que acceder a la textura directamente es "
+"cuando quieres copiar las texturas de una calcomanía a otra. Por ejemplo:\n"
+"[codeblock]\n"
+"for i in Decal.TEXTURE_MAX:\n"
+" $NuevaCalcomania.set_texture(i, $ViejaCalcomania.get_texture(i))\n"
+"[/codeblock]"
#: doc/classes/Decal.xml:37
+#, fuzzy
msgid ""
"Sets the [Texture2D] associated with the specified [enum DecalTexture]. This "
"is a convenience method, in most cases you should access the texture "
-"directly. \n"
+"directly.\n"
"For example, instead of [code]$Decal.set_texture(Decal.TEXTURE_ALBEDO, "
"albedo_tex)[/code], use [code]$Decal.texture_albedo = albedo_tex[/code].\n"
"One case where this is better than accessing the texture directly is when "
@@ -19287,12 +22285,25 @@ msgid ""
" $NewDecal.set_texture(i, $OldDecal.get_texture(i))\n"
"[/codeblock]"
msgstr ""
+"Establece la [Texture2D] asociada a la [enum DecalTexture] especificada. "
+"Este es un método conveniente, en la mayoría de los casos se debe acceder a "
+"la textura directamente. \n"
+"Por ejemplo, en lugar de [code]$Decal.set_texture(Decal.TEXTURE_ALBEDO, "
+"albedo_tex)[/code], usa [code]$Decal.texture_albedo = albedo_tex[/code].\n"
+"Un caso en el que esto es mejor que acceder a la textura directamente es "
+"cuando quieres copiar las texturas de una Calcomanía a otra. Por ejemplo:\n"
+"[codeblock]\n"
+"for i in Decal.TEXTURE_MAX:\n"
+" $NuevaCalcomania.set_texture(i, $ViejaCalcomania.get_texture(i))\n"
+"[/codeblock]"
#: doc/classes/Decal.xml:49
msgid ""
"Blends the albedo [Color] of the decal with albedo [Color] of the underlying "
"mesh."
msgstr ""
+"Mezcla el albedo [Color] de la calcomanía con el albedo [Color] de la malla "
+"subyacente."
#: doc/classes/Decal.xml:52
msgid ""
@@ -19302,10 +22313,17 @@ msgid ""
"useful so you an ensure that dynamic objects don't accidentally receive a "
"Decal intended for the terrain under them."
msgstr ""
+"Especifica sobre qué [member VisualInstance3D.layers] se proyectará esta "
+"calcomanía. Por defecto, las calcomanías afectan a todas las capas. Esto se "
+"utiliza para poder especificar qué tipos de objetos reciben la calcomanía y "
+"cuáles no. Esto es especialmente útil para asegurarte de que los objetos "
+"dinámicos no reciban accidentalmente una calcomanía destinada al terreno "
+"debajo de ellos."
#: doc/classes/Decal.xml:55
msgid "Distance from the camera at which the Decal begins to fade away."
msgstr ""
+"Distancia de la cámara en la que la calcomanía comienza a desvanecerse."
#: doc/classes/Decal.xml:58
msgid ""
@@ -19315,34 +22333,49 @@ msgid ""
"and not sent to the shader at all. Use this to reduce the number of active "
"Decals in a scene and thus improve performance."
msgstr ""
+"Si [code]true[/code], las calcomanías se desvanecerán suavemente cuando "
+"estén lejos de la [Camera3D] activa, comenzando en [member "
+"distance_fade_begin]. La calcomanía se desvanecerá en [member "
+"distance_fade_length], después de lo cual será eliminada y no será enviada "
+"al shader en absoluto. Usa esto para reducir el número de calcomanías "
+"activas en una escena y así mejorar el rendimiento."
#: doc/classes/Decal.xml:61
msgid ""
"Distance over which the Decal fades. The Decal becomes slowly more "
"transparent over this distance and is completely invisible at the end."
msgstr ""
+"Distancia a la que la calcomanía se desvanece. La calcomanía se vuelve "
+"lentamente más transparente a esta distancia y es completamente invisible al "
+"final."
#: doc/classes/Decal.xml:64
msgid ""
"Energy multiplier for the emission texture. This will make the decal emit "
"light at a higher intensity."
msgstr ""
+"Multiplicador de energía para la textura de la emisión. Esto hará que la "
+"calcomanía emita luz a una mayor intensidad."
#: doc/classes/Decal.xml:67
msgid ""
"Sets the size of the [AABB] used by the decal. The AABB goes from [code]-"
"extents[/code] to [code]extents[/code]."
msgstr ""
+"Establece el tamaño del [AABB] usado por la calcomanía. El AABB va de [code]-"
+"extents[/code] a [code]-extents[/code]."
#: doc/classes/Decal.xml:70 doc/classes/Decal.xml:91
msgid ""
"Sets the curve over which the decal will fade as the surface gets further "
"from the center of the [AABB]."
msgstr ""
+"Establece la curva sobre la cual la calcomanía se desvanecerá a medida que "
+"la superficie se aleje del centro del [AABB]."
#: doc/classes/Decal.xml:73
msgid "Changes the [Color] of the Decal by multiplying it with this value."
-msgstr ""
+msgstr "Cambia el [color] de la calcomanía multiplicándolo por este valor."
#: doc/classes/Decal.xml:76
msgid ""
@@ -19351,6 +22384,10 @@ msgid ""
"regardless of angle, a value of [code]1[/code] limits the Decal to surfaces "
"that are nearly perpendicular."
msgstr ""
+"Se desvanece la calcomanía si el ángulo entre la calcomanía [AABB] y la "
+"superficie del objetivo se hace demasiado grande. Un valor de [code]0[/code] "
+"proyecta la calcomanía sin importar el ángulo, un valor de [code]1[/code] "
+"limita la calcomanía a las superficies que son casi perpendiculares."
#: doc/classes/Decal.xml:79
msgid ""
@@ -19359,6 +22396,10 @@ msgid ""
"channel like a mask to smoothly blend the edges of the decal with the "
"underlying object."
msgstr ""
+"[Textura2D] con la base [Color] de la calcomanía. Esto o el [member "
+"texture_emission] debe ser establecido para que la calcomanía sea visible. "
+"Utilice el canal alfa como una máscara para mezclar suavemente los bordes de "
+"la calcomanía con el objeto subyacente."
#: doc/classes/Decal.xml:82
msgid ""
@@ -19367,42 +22408,50 @@ msgid ""
"alpha channel like a mask to smoothly blend the edges of the decal with the "
"underlying object."
msgstr ""
+"[Textura2D] con la emisión [Color] de la calcomanía. Esto o la [member "
+"texture_emission] debe ser establecido para que la calcomanía sea visible. "
+"Utilice el canal alfa como una máscara para mezclar suavemente los bordes de "
+"la calcomanía con el objeto subyacente."
#: doc/classes/Decal.xml:85
msgid ""
"[Texture2D] with the per-pixel normalmap for the decal. Use this to add "
"extra detail to decals."
msgstr ""
+"[Textura2D] con el mapa normal por píxel para la calcomanía. Usa esto para "
+"añadir detalles extra a las calcomanías."
#: doc/classes/Decal.xml:88
msgid ""
"[Texture2D] storing ambient occlusion, roughness, and metallic for the "
"decal. Use this to add extra detail to decals."
msgstr ""
+"[Textura2D] almacenando la oclusión ambiental, la rugosidad y el metal para "
+"la calcomanía. Usa esto para añadir detalles adicionales a las calcomanías."
#: doc/classes/Decal.xml:96
msgid "[Texture2D] corresponding to [member texture_albedo]."
-msgstr ""
+msgstr "[Texture2D] correspondiente a [member texture_albedo]."
#: doc/classes/Decal.xml:99
msgid "[Texture2D] corresponding to [member texture_normal]."
-msgstr ""
+msgstr "[Texture2D] correspondiente a [member texture_normal]."
#: doc/classes/Decal.xml:102
msgid "[Texture2D] corresponding to [member texture_orm]."
-msgstr ""
+msgstr "[Texture2D] correspondiente a [member texture_orm]."
#: doc/classes/Decal.xml:105
msgid "[Texture2D] corresponding to [member texture_emission]."
-msgstr ""
+msgstr "[Texture2D] correspondiente a [member texture_emission]."
#: doc/classes/Decal.xml:108
msgid "Max size of [enum DecalTexture] enum."
-msgstr ""
+msgstr "Tamaño máximo del enum [enum DecalTexture]."
#: doc/classes/Dictionary.xml:4
msgid "Dictionary type."
-msgstr ""
+msgstr "Tipo diccionario."
#: doc/classes/Dictionary.xml:7
msgid ""
@@ -19495,16 +22544,113 @@ msgid ""
" print(dir1.hash() == dir2.hash()) # Will print true.\n"
"[/codeblock]"
msgstr ""
+"Tipo de diccionario. Contenedor asociativo que contiene valores "
+"referenciados por claves únicas. Los diccionarios se componen de pares de "
+"claves (que deben ser únicas) y valores. Los diccionarios conservarán el "
+"orden de inserción al añadir elementos, aunque esto no se refleje al "
+"imprimir el diccionario. En otros lenguajes de programación, esta estructura "
+"de datos se denomina a veces hashmap o array asociativo.\n"
+"Se puede definir un diccionario colocando una lista separada por comas de "
+"los pares de valores [code]key: value[/code] entre llaves [code]{}[/code].\n"
+"Borrar elementos mientras se itera sobre ellos [b]no está soportado[/b] y "
+"resultará en un comportamiento indefinido.\n"
+"[b]Nota:[/b] Los diccionarios siempre se pasan por referencia. Para obtener "
+"una copia de un diccionario que pueda ser modificado independientemente del "
+"diccionario original, utilice [method duplicate].\n"
+"Creación de un diccionario:\n"
+"[codeblock]\n"
+"var mi_diccionario = {} # Crea un diccionario vacio\n"
+"var diccionario_puntos = {\"Blanco\": 50, \"Amarillo\": 75, \"Naranja\": "
+"100}\n"
+"var otro_diccionario = {\n"
+" clave1: valor1,\n"
+" clave2: valor2,\n"
+" clave3: valor3,\n"
+"}\n"
+"[/codeblock]\n"
+"Puede acceder a los valores de un diccionario haciendo referencia a la clave "
+"apropiada. En el ejemplo anterior, [code]points_dir[\"Blanco\"][/code] "
+"devolverá [code]50[/code]. También puede escribir [code]points_dir.White[/"
+"code], que es equivalente. Sin embargo, tendrás que usar la sintaxis entre "
+"paréntesis si la clave con la que estás accediendo al diccionario no es una "
+"string fija (como un número o una variable).\n"
+"[codeblock]\n"
+"export(String, \"Blanco\", \"Amarillo\", \"Naranja\") var mi_color\n"
+"var diccionario_puntos = {\"Blanco\": 50, \"Amarillo\": 75, \"Naranja\": "
+"100}\n"
+"\n"
+"func _ready():\n"
+" # Nosotros no podemos usar la forma punto ya que `mi_color` es una "
+"variable.\n"
+" var puntos = diccionario_puntos[mi_color]\n"
+"[/codeblock]\n"
+"En el código anterior, se asignará a [code]points[/code] el valor que se "
+"empareje con el color apropiado seleccionado en [code]my_color[/code].\n"
+"Los diccionarios pueden contener datos más complejos:\n"
+"[codeblock]\n"
+"mi_diccionario = {\"Primer Array\": [1, 2, 3, 4]} # Asigna un Array a una "
+"clave String.\n"
+"[/codeblock]\n"
+"Para añadir una clave a un diccionario existente, acceda a ella como una "
+"clave existente y asígnela:\n"
+"[codeblock]\n"
+"var diccionario_puntos = {\"Blanco\": 50, \"Amarillo\": 75, \"Naranja\": "
+"100}\n"
+"diccionario_puntos[\"Azul\"] = 150 # Añade \"Azul\" como una clave y le "
+"asigna el valor 150.\n"
+"[/codeblock]\n"
+"Finalmente, los diccionarios puede contener diferentes tipos de claves y "
+"valores en el mismo diccionario:\n"
+"[codeblock]\n"
+"# Este es un diccionario válido.\n"
+"# Para acceder a la string \"Valor anidado\" que aparece a continuación, "
+"utilice `mi_diccionario.sub_directorio.sub_clave\"`o \" "
+"mi_diccionario[\"sub_directorio\"][\"sub_clave\"]`.\n"
+"# Los estilos de indexación pueden ser mezclados y adaptados dependiendo de "
+"sus necesidades.\n"
+"var mi_diccionario = {\n"
+" \"Clave String\": 5,\n"
+" 4: [1, 2, 3],\n"
+" 7: \"Hola\",\n"
+" \"sub_directorio\": {\"sub_clave\": \"Valor anidado\"},\n"
+"}\n"
+"[/codeblock]\n"
+"Nota: A diferencia de los [Array]s, no se pueden comparar directamente los "
+"diccionarios:\n"
+"[codeblock]\n"
+"array1 = [1, 2, 3]\n"
+"array2 = [1, 2, 3]\n"
+"\n"
+"func comparar_arrays():\n"
+" print(array1 == array2) # Imprimirá true.\n"
+"\n"
+"dir1 = {\"a\": 1, \"b\": 2, \"c\": 3}\n"
+"dir2 = {\"a\": 1, \"b\": 2, \"c\": 3}\n"
+"\n"
+"func compare_dictionaries():\n"
+" print(dir1 == dir2) # No imprimirá true.\n"
+"[/codeblock]\n"
+"Tienes que calcular primero el hash del diccionario con [method hash] antes "
+"de poder compararlos:\n"
+"[codeblock]\n"
+"dir1 = {\"a\": 1, \"b\": 2, \"c\": 3}\n"
+"dir2 = {\"a\": 1, \"b\": 2, \"c\": 3}\n"
+"\n"
+"func comparar_diccionarios(): \n"
+" print(dir1.hash() == dir2.hash()) # Imprimirá true\n"
+"[/codeblock]"
#: doc/classes/Dictionary.xml:76
msgid ""
"https://docs.godotengine.org/en/latest/getting_started/scripting/gdscript/"
"gdscript_basics.html#dictionary"
msgstr ""
+"https://docs.godotengine.org/es/latest/getting_started/scripting/gdscript/"
+"gdscript_basics.html#dictionary"
#: doc/classes/Dictionary.xml:83
msgid "Clear the dictionary, removing all key/value pairs."
-msgstr ""
+msgstr "Limpia el diccionario, eliminando todos los pares clave/valor."
#: doc/classes/Dictionary.xml:92
msgid ""
@@ -19512,10 +22658,13 @@ msgid ""
"parameter causes inner dictionaries and arrays to be copied recursively, but "
"does not apply to objects."
msgstr ""
+"Crea una copia del diccionario y la devuelve. El parámetro [code]deep[/code] "
+"hace que los diccionarios y arrays internos se copien de forma recursiva, "
+"pero no se aplica a los objetos."
#: doc/classes/Dictionary.xml:99
msgid "Returns [code]true[/code] if the dictionary is empty."
-msgstr ""
+msgstr "Devuelve [code]true[/code] si el diccionario está vacío."
#: doc/classes/Dictionary.xml:108
msgid ""
@@ -19523,6 +22672,9 @@ msgid ""
"given key was present in the dictionary, [code]false[/code] otherwise. Does "
"not erase elements while iterating over the dictionary."
msgstr ""
+"Borra un par clave/valor del diccionario por clave. Devuelve [code]true[/"
+"code] si la clave dada estaba presente en el diccionario, [code]false[/code] "
+"en caso contrario. No borra elementos mientras itera sobre el diccionario."
#: doc/classes/Dictionary.xml:119
msgid ""
@@ -19530,6 +22682,9 @@ msgid ""
"key does not exist, the method returns the value of the optional default "
"argument, or [code]null[/code] if it is omitted."
msgstr ""
+"Devuelve el valor actual de la clave especificada en el [Dictionary]. Si la "
+"clave no existe, el método devuelve el valor del argumento opcional por "
+"defecto, o [code]null[/code] si se omite."
#: doc/classes/Dictionary.xml:128
msgid ""
@@ -19545,12 +22700,24 @@ msgid ""
"code] as long as the key exists, even if the associated value is [code]null[/"
"code]."
msgstr ""
+"Devuelve [code]true[/code] si el diccionario tiene una clave determinada.\n"
+"[b]Nota:[/b] Esto equivale a utilizar el operador [code]en[/code] de la "
+"siguiente manera:\n"
+"[codeblock]\n"
+"# Evaluará a \"true\".\n"
+"if \"godot\" en {\"godot\": \"motor\":}\n"
+" pass\n"
+"[/codebloque]\n"
+"Este método (como el operador [code]in[/code]) evaluará a [code]true[/code] "
+"mientras exista la clave, incluso si el valor asociado es [code]null[/code]."
#: doc/classes/Dictionary.xml:144
msgid ""
"Returns [code]true[/code] if the dictionary has all of the keys in the given "
"array."
msgstr ""
+"Devuelve [code]true[/code] si el diccionario tiene todas las claves del "
+"array dada."
#: doc/classes/Dictionary.xml:151
msgid ""
@@ -19566,22 +22733,33 @@ msgid ""
"[b]Note:[/b] Dictionaries with the same keys/values but in a different order "
"will have a different hash."
msgstr ""
+"Devuelve un valor entero hash que representa el contenido del diccionario. "
+"Esto puede ser usado para comparar los diccionarios por su valor:\n"
+"[codeblock]\n"
+"var diccionario1 = {0: 10}\n"
+"var diccionario2 = {0: 10}\n"
+"# La línea de abajo imprime \"true\", mientras que habría impreso \"false\" "
+"si ambas variables se compararan directamente.\n"
+"print(dict1.hash() == dict2.hash())\n"
+"[/codeblock]\n"
+"[b]Nota:[/b] Los diccionarios con las mismas claves/valores pero en un orden "
+"diferente tendrán un hash diferente."
#: doc/classes/Dictionary.xml:165
msgid "Returns the list of keys in the [Dictionary]."
-msgstr ""
+msgstr "Devuelve la lista de claves en el [Dictionary]."
#: doc/classes/Dictionary.xml:172
msgid "Returns the size of the dictionary (in pairs)."
-msgstr ""
+msgstr "Devuelve el tamaño del diccionario (en pares)."
#: doc/classes/Dictionary.xml:179
msgid "Returns the list of values in the [Dictionary]."
-msgstr ""
+msgstr "Devuelve la lista de valores del [Dictionary]."
#: doc/classes/DirectionalLight3D.xml:4
msgid "Directional light from a distance, as from the Sun."
-msgstr ""
+msgstr "Luz direccional desde una distancia, como desde el Sol."
#: doc/classes/DirectionalLight3D.xml:7
msgid ""
@@ -19592,24 +22770,35 @@ msgid ""
"transform (origin) is ignored. Only the basis is used to determine light "
"direction."
msgstr ""
+"Una luz direccional es un tipo de nodo [Light3D] que modela un número "
+"infinito de rayos paralelos que cubren toda la escena. Se utiliza para luces "
+"de gran intensidad que se ubican lejos de la escena para modelar la luz del "
+"sol o la luz de la luna. Se ignora la ubicación en el espacio del mundo de "
+"la transformada DirectionalLight3D (origen). Sólo se utiliza la base para "
+"determinar la dirección de la luz."
#: doc/classes/DirectionalLight3D.xml:10 doc/classes/Light3D.xml:10
#: doc/classes/OmniLight3D.xml:10 doc/classes/SpotLight3D.xml:10
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/lights_and_shadows.html"
msgstr ""
+"https://docs.godotengine.org/es/latest/tutorials/3d/lights_and_shadows.html"
#: doc/classes/DirectionalLight3D.xml:16
msgid ""
"If [code]true[/code], shadow detail is sacrificed in exchange for smoother "
"transitions between splits."
msgstr ""
+"Si [code]true[/code], el detalle de la sombra se sacrifica a cambio de "
+"transiciones más suaves entre las divisiones."
#: doc/classes/DirectionalLight3D.xml:19
msgid ""
"Optimizes shadow rendering for detail versus movement. See [enum "
"ShadowDepthRange]."
msgstr ""
+"Optimiza la representación de las sombras para los detalles frente al "
+"movimiento. Ver [enum ShadowDepthRange]."
#: doc/classes/DirectionalLight3D.xml:22
msgid ""
@@ -19617,16 +22806,20 @@ msgid ""
"shadow starts to fade. At [member directional_shadow_max_distance] the "
"shadow will disappear."
msgstr ""
+"Proporción de [member directional_shadow_max_distance] en el que la sombra "
+"comienza a desvanecerse. En [member directional_shadow_max_distance] la "
+"sombra desaparecerá."
#: doc/classes/DirectionalLight3D.xml:25
msgid "The maximum distance for shadow splits."
-msgstr ""
+msgstr "La distancia máxima para las divisiones de la sombra."
#: doc/classes/DirectionalLight3D.xml:28
msgid "The light's shadow rendering algorithm. See [enum ShadowMode]."
msgstr ""
+"El algoritmo de renderizado de las sombras de la luz. Ver [enum ShadowMode]."
-#: doc/classes/DirectionalLight3D.xml:31 doc/classes/RenderingServer.xml:3254
+#: doc/classes/DirectionalLight3D.xml:31 doc/classes/RenderingServer.xml:3250
msgid ""
"Sets the size of the directional shadow pancake. The pancake offsets the "
"start of the shadow's camera frustum to provide a higher effective depth "
@@ -19635,6 +22828,12 @@ msgid ""
"Reducing the pancake size can help. Setting the size to [code]0[/code] turns "
"off the pancaking effect."
msgstr ""
+"Establece el tamaño de la tortita de sombra direccional. La tortita compensa "
+"el inicio del frustum de la cámara de la sombra para proporcionar una mayor "
+"resolución de profundidad efectiva para la sombra. Sin embargo, un tamaño de "
+"tortita alto puede causar artefactos en las sombras de objetos grandes que "
+"están cerca del borde del frustum. Reducir el tamaño de la tortita puede "
+"ayudar. Ajustar el tamaño a [code]0[/code] desactiva el efecto de tortita."
#: doc/classes/DirectionalLight3D.xml:34
msgid ""
@@ -19643,6 +22842,10 @@ msgid ""
"directional_shadow_mode] is [code]SHADOW_PARALLEL_2_SPLITS[/code] or "
"[code]SHADOW_PARALLEL_4_SPLITS[/code]."
msgstr ""
+"La distancia de la cámara a la sombra se divide en 1. Relativo a [member "
+"directional_shadow_max_distance]. Sólo se utiliza cuando [member "
+"directional_shadow_mode] es [code]SHADOW_PARALLEL_2_SPLITS[/code] o "
+"[code]SHADOW_PARALLEL_4_SPLITS[/code]."
#: doc/classes/DirectionalLight3D.xml:37
msgid ""
@@ -19651,6 +22854,10 @@ msgid ""
"directional_shadow_mode] is [code]SHADOW_PARALLEL_2_SPLITS[/code] or "
"[code]SHADOW_PARALLEL_4_SPLITS[/code]."
msgstr ""
+"La distancia de la sombra se divide en dos. Relativo a [member "
+"directional_shadow_max_distance]. Sólo se utiliza cuando [member "
+"directionaL_shadow_mode] es [code]SHADOW_PARALLEL_2_SPLITS[/code] o "
+"[code]SHADOW_PARALLEL_4_SPLITS[/code]."
#: doc/classes/DirectionalLight3D.xml:40
msgid ""
@@ -19658,6 +22865,9 @@ msgid ""
"directional_shadow_max_distance]. Only used when [member "
"directional_shadow_mode] is [code]SHADOW_PARALLEL_4_SPLITS[/code]."
msgstr ""
+"La distancia de la sombra se divide en dos y tres. Relativo a [member "
+"directional_shadow_max_distance]. Sólo se usa cuando [member "
+"directional_shadow_mode] es [code]SHADOW_PARALLEL_4_SPLITS[/code]."
#: doc/classes/DirectionalLight3D.xml:47
msgid ""
@@ -19665,6 +22875,9 @@ msgid ""
"is the fastest directional shadow mode. May result in blurrier shadows on "
"close objects."
msgstr ""
+"Renderiza el mapa de sombras de toda la escena desde un punto de vista "
+"ortogonal. Este es el modo de sombra de dirección más rápida. Puede dar "
+"lugar a sombras más borrosas en objetos cercanos."
#: doc/classes/DirectionalLight3D.xml:50
msgid ""
@@ -19672,18 +22885,26 @@ msgid ""
"shadow mode is a compromise between [constant SHADOW_ORTHOGONAL] and "
"[constant SHADOW_PARALLEL_4_SPLITS] in terms of performance."
msgstr ""
+"Divide la vista del frustum en 2 áreas, cada una con su propio mapa de "
+"sombras. Este modo de sombra es un compromiso entre [constant "
+"SHADOW_ORTHOGONAL] y [constant SHADOW_PARALLEL_4_SPLITS] en términos de "
+"rendimiento."
#: doc/classes/DirectionalLight3D.xml:53
msgid ""
"Splits the view frustum in 4 areas, each with its own shadow map. This is "
"the slowest directional shadow mode."
msgstr ""
+"Divide el frustum de la vista en 4 áreas, cada una con su propio mapa de "
+"sombras. Este es el modo de sombra direccional más lento."
#: doc/classes/DirectionalLight3D.xml:56
msgid ""
"Keeps the shadow stable when the camera moves, at the cost of lower "
"effective shadow resolution."
msgstr ""
+"Mantiene la sombra estable cuando la cámara se mueve, a costa de una menor "
+"resolución efectiva de la sombra."
#: doc/classes/DirectionalLight3D.xml:59
msgid ""
@@ -19691,19 +22912,24 @@ msgid ""
"shadow edges. This mode typically works best in games where the camera will "
"often move at high speeds, such as most racing games."
msgstr ""
+"Intenta conseguir la máxima resolución de las sombras. Puede resultar en un "
+"efecto de sierra en los bordes de la sombra. Este modo suele funcionar mejor "
+"en juegos en los que la cámara suele moverse a altas velocidades, como la "
+"mayoría de los juegos de carreras."
#: doc/classes/Directory.xml:4
msgid "Type used to handle the filesystem."
-msgstr ""
+msgstr "Tipo utilizado para manejar el sistema de archivos."
#: doc/classes/Directory.xml:7
+#, fuzzy
msgid ""
"Directory type. It is used to manage directories and their content (not "
"restricted to the project folder).\n"
-"When creating a new [Directory], its default opened directory will be "
-"[code]res://[/code]. This may change in the future, so it is advised to "
-"always use [method open] to initialize your [Directory] where you want to "
-"operate, with explicit error checking.\n"
+"When creating a new [Directory], it must be explicitly opened using [method "
+"open] before most methods can be used. However, [method file_exists] and "
+"[method dir_exists] can be used without opening a directory. If so, they use "
+"a path relative to [code]res://[/code].\n"
"Here is an example on how to iterate through the files of a directory:\n"
"[codeblock]\n"
"func dir_contents(path):\n"
@@ -19721,12 +22947,37 @@ msgid ""
" print(\"An error occurred when trying to access the path.\")\n"
"[/codeblock]"
msgstr ""
+"Tipo de directorio. Se utiliza para gestionar los directorios y su contenido "
+"(no se limita a la carpeta de proyectos).\n"
+"Cuando se crea un nuevo [Directory], su directorio abierto por defecto será "
+"[code]res://[/code]. Esto puede cambiar en el futuro, por lo que se aconseja "
+"utilizar siempre [method open] para inicializar el [Directory] en el que se "
+"desea operar, con una comprobación explícita de errores.\n"
+"Aquí hay un ejemplo de cómo iterar a través de los archivos de un "
+"directorio:\n"
+"[codeblock]\n"
+"func contenidos_directorio(ruta):\n"
+" var directorio = Directory.new()\n"
+" if directorio.open(ruta) == OK:\n"
+" directorio.list_dir_begin()\n"
+" var nombre_archivo = dir.get_next()\n"
+" while nombre_archivo != \"\":\n"
+" if directorio.current_is_dir():\n"
+" print(\"Encontrado directorio: \" + nombre_archivo)\n"
+" else:\n"
+" print(\"Encontrado archivo: \" + nombre_archivo)\n"
+" nombre_archivo = dir.get_next()\n"
+" else:\n"
+" print(\"Un error ocurrió cuando se intentaba acceder a la ruta.\")\n"
+"[/codeblock]"
-#: doc/classes/Directory.xml:27 doc/classes/File.xml:25
+#: doc/classes/Directory.xml:27 doc/classes/File.xml:26
msgid ""
"https://docs.godotengine.org/en/latest/getting_started/step_by_step/"
"filesystem.html"
msgstr ""
+"https://docs.godotengine.org/es/latest/getting_started/step_by_step/"
+"filesystem.html"
#: doc/classes/Directory.xml:36
msgid ""
@@ -19736,6 +22987,12 @@ msgid ""
"code] or [code]res://somedir/newdir[/code]).\n"
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
+"Cambia el directorio actualmente abierto por el que se pasa como argumento. "
+"El argumento puede ser una ruta relativa al directorio actual (por ejemplo, "
+"[code]newdir[/code] o [code]../newdir[/code]), o una ruta absoluta (por "
+"ejemplo, [code]/tmp/newdir[/code] o [code]res://somedir/newdir[/code]).\n"
+"Devuelve una de las constantes del código [enum Error] o si tiene éxito "
+"[code]OK[/code]."
#: doc/classes/Directory.xml:48
msgid ""
@@ -19745,6 +23002,12 @@ msgid ""
"overwritten.\n"
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
+"Copia el archivo [code]from[/code] al destino [code]to[/code]. Ambos "
+"argumentos deben ser rutas de acceso a los archivos, ya sea relativas o "
+"absolutas. Si el archivo de destino existe y no está protegido contra el "
+"acceso, será sobrescrito.\n"
+"Devuelve una de las constantes del código [enum Error] o en caso de éxito "
+"[code]OK[/code]."
#: doc/classes/Directory.xml:56
msgid ""
@@ -19752,45 +23015,66 @@ msgid ""
"call is a directory ([code].[/code] and [code]..[/code] are considered "
"directories)."
msgstr ""
+"Devuelve si el objeto actual procesado con la última llamada a [method "
+"get_next] es un directorio. [code].[/code] y [code]..[/code] son "
+"considerados directorios."
#: doc/classes/Directory.xml:65
+#, fuzzy
msgid ""
"Returns whether the target directory exists. The argument can be relative to "
-"the current directory, or an absolute path."
+"the current directory, or an absolute path.\n"
+"If the [Directory] is not open, the path is relative to [code]res://[/code]."
msgstr ""
+"Devuelve si el directorio de destino existe. El argumento puede ser relativo "
+"al directorio actual, o una ruta absoluta."
-#: doc/classes/Directory.xml:74
+#: doc/classes/Directory.xml:75
+#, fuzzy
msgid ""
"Returns whether the target file exists. The argument can be relative to the "
-"current directory, or an absolute path."
+"current directory, or an absolute path.\n"
+"If the [Directory] is not open, the path is relative to [code]res://[/code]."
msgstr ""
+"Devuelve si el archivo de destino existe. El argumento puede ser relativo al "
+"directorio actual, o una ruta absoluta."
-#: doc/classes/Directory.xml:81
+#: doc/classes/Directory.xml:83
msgid ""
"Returns the absolute path to the currently opened directory (e.g. "
"[code]res://folder[/code] or [code]C:\\tmp\\folder[/code])."
msgstr ""
+"Devuelve la ruta absoluta del directorio abierto actualmente (por ejemplo, "
+"[code]res://folder[/code] o [code]C:\\tmp\\folder[/code])."
-#: doc/classes/Directory.xml:88
+#: doc/classes/Directory.xml:90
msgid ""
"Returns the currently opened directory's drive index. See [method get_drive] "
"to convert returned index to the name of the drive."
msgstr ""
+"Devuelve el índice de la unidad de disco del directorio abierto actualmente. "
+"Vea [method get_drive] para convertir el índice devuelto al nombre de la "
+"unidad."
-#: doc/classes/Directory.xml:97
+#: doc/classes/Directory.xml:99
msgid ""
"On Windows, returns the name of the drive (partition) passed as an argument "
"(e.g. [code]C:[/code]). On other platforms, or if the requested drive does "
"not existed, the method returns an empty String."
msgstr ""
+"En Windows, devuelve el nombre de la unidad (partición) pasado como "
+"argumento (por ejemplo, [code]C:[/code]). En otras plataformas, o si la "
+"unidad de disco solicitada no existe, el método devuelve un String vacío."
-#: doc/classes/Directory.xml:104
+#: doc/classes/Directory.xml:106
msgid ""
"On Windows, returns the number of drives (partitions) mounted on the current "
"filesystem. On other platforms, the method returns 0."
msgstr ""
+"En Windows, devuelve el número de unidades (particiones) montadas en el "
+"sistema de archivos actual. En otras plataformas, el método devuelve 0."
-#: doc/classes/Directory.xml:111
+#: doc/classes/Directory.xml:113
msgid ""
"Returns the next element (file or directory) in the current directory "
"(including [code].[/code] and [code]..[/code], unless "
@@ -19800,15 +23084,25 @@ msgid ""
"closes the stream automatically (i.e. [method list_dir_end] would not be "
"mandatory in such a case)."
msgstr ""
+"Devuelve el siguiente elemento (archivo o directorio) en el directorio "
+"actual (incluyendo [code].[/code] y [code]..[/code], a menos que "
+"[code]skip_navigational[/code] haya sido dado a [method list_dir_begin]).\n"
+"Se devuelve el nombre del archivo o directorio (y no su ruta completa). Una "
+"vez que la secuencia se ha procesado completamente, el método devuelve una "
+"cadena vacía y cierra la secuencia automáticamente (es decir, [method "
+"list_dir_end] no sería obligatorio en tal caso)."
-#: doc/classes/Directory.xml:119
+#: doc/classes/Directory.xml:121
msgid ""
"On UNIX desktop systems, returns the available space on the current "
"directory's disk. On other platforms, this information is not available and "
"the method returns 0 or -1."
msgstr ""
+"En los sistemas de escritorio UNIX, devuelve el espacio disponible en el "
+"disco del directorio actual. En otras plataformas, esta información no está "
+"disponible y el método devuelve 0 o -1."
-#: doc/classes/Directory.xml:130
+#: doc/classes/Directory.xml:132
msgid ""
"Initializes the stream used to list all files and directories using the "
"[method get_next] function, closing the current opened stream if needed. "
@@ -19819,14 +23113,24 @@ msgid ""
"If [code]skip_hidden[/code] is [code]true[/code], hidden files are filtered "
"out."
msgstr ""
+"Inicializa el stream usado para listar todos los archivos y directorios "
+"usando la función [method get_next], cerrando el flujo abierto actual si es "
+"necesario. Una vez que la secuencia ha sido procesada, típicamente debería "
+"ser cerrada con [method list_dir_end].\n"
+"Si [code]skip_navigational[/code] es [code]true[/code], [code].[/code] y "
+"[code]..[/code] son filtrados.\n"
+"Si [code]skip_hidden[/code] es [code]true[/code], los archivos ocultos se "
+"filtran."
-#: doc/classes/Directory.xml:139
+#: doc/classes/Directory.xml:141
msgid ""
"Closes the current stream opened with [method list_dir_begin] (whether it "
"has been fully processed with [method get_next] or not does not matter)."
msgstr ""
+"Cierra el stream actual abierto con [method list_dir_begin] (no importa si "
+"se ha procesado completamente con [method get_next] o no)."
-#: doc/classes/Directory.xml:148
+#: doc/classes/Directory.xml:150
msgid ""
"Creates a directory. The argument can be relative to the current directory, "
"or an absolute path. The target directory should be placed in an already "
@@ -19834,16 +23138,27 @@ msgid ""
"make_dir_recursive]).\n"
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
+"Crea un directorio. El argumento puede ser relativo al directorio actual, o "
+"una ruta absoluta. El directorio de destino debe colocarse en un directorio "
+"ya existente (para crear la ruta completa de forma recursiva, véase [method "
+"make_dir_recursive]).\n"
+"Devuelve una de las constantes de código de [enum Error] ([code]OK[/code] en "
+"el éxito)."
-#: doc/classes/Directory.xml:158
+#: doc/classes/Directory.xml:160
msgid ""
"Creates a target directory and all necessary intermediate directories in its "
"path, by calling [method make_dir] recursively. The argument can be relative "
"to the current directory, or an absolute path.\n"
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
+"Crea un directorio de destino y todos los directorios intermedios necesarios "
+"en su camino, llamando a [method make_dir] recursivamente. El argumento "
+"puede ser relativo al directorio actual, o un camino absoluto.\n"
+"Devuelve una de las constantes de código de [enum Error] ([code]OK[/code] en "
+"el éxito)."
-#: doc/classes/Directory.xml:168
+#: doc/classes/Directory.xml:170
msgid ""
"Opens an existing directory of the filesystem. The [code]path[/code] "
"argument can be within the project tree ([code]res://folder[/code]), the "
@@ -19851,16 +23166,28 @@ msgid ""
"filesystem (e.g. [code]/tmp/folder[/code] or [code]C:\\tmp\\folder[/code]).\n"
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
+"Abre un directorio existente del sistema de archivos. El argumento "
+"[code]path[/code] puede estar dentro del árbol del proyecto ([code]res://"
+"folder[/code]), el directorio de usuario ([code]user://folder[/code]) o una "
+"ruta absoluta del sistema de archivos de usuario (por ejemplo, [code]/tmp/"
+"folder[/code] o [code]C:\\tmp\\folder[/code]).\n"
+"Devuelve una de las constantes del código [enum Error] ([code]OK[/code] en "
+"caso de éxito)."
-#: doc/classes/Directory.xml:178
+#: doc/classes/Directory.xml:180
msgid ""
"Deletes the target file or an empty directory. The argument can be relative "
"to the current directory, or an absolute path. If the target directory is "
"not empty, the operation will fail.\n"
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
+"Borra el archivo de destino o un directorio vacío. El argumento puede ser "
+"relativo al directorio actual, o una ruta absoluta. Si el directorio de "
+"destino no está vacío, la operación fallará.\n"
+"Devuelve una de las constantes del código [enum Error] ([code]OK[/code] en "
+"caso de éxito)."
-#: doc/classes/Directory.xml:190
+#: doc/classes/Directory.xml:192
msgid ""
"Renames (move) the [code]from[/code] file to the [code]to[/code] "
"destination. Both arguments should be paths to files, either relative or "
@@ -19868,18 +23195,28 @@ msgid ""
"will be overwritten.\n"
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
+"Renombra (mueve) el [code]from [/code] archivo al destino [code]to[/code]. "
+"Ambos argumentos deben ser rutas a los archivos, ya sea relativas o "
+"absolutas. Si el archivo de destino existe y no está protegido contra el "
+"acceso, se sobrescribirá.\n"
+"Devuelve una de las constantes del código [enum Error] ([code]OK[/code] en "
+"caso de éxito)."
#: doc/classes/DisplayServer.xml:390
msgid ""
"Returns active keyboard layout index.\n"
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
+"Devuelve el índice de disposición del teclado activo.\n"
+"[b]Nota:[/b] Este método está implementado en Linux, macOS y Windows."
#: doc/classes/DisplayServer.xml:398
msgid ""
"Returns the number of keyboard layouts.\n"
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
+"Devuelve el número de disposiciones del teclado.\n"
+"[b]Nota:[/b] Este método está implementado en Linux, macOS y Windows."
#: doc/classes/DisplayServer.xml:408
msgid ""
@@ -19887,6 +23224,9 @@ msgid ""
"[code]index[/code].\n"
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
+"Devuelve el código de idioma ISO-639/BCP-47 de la disposición del teclado en "
+"la posición [code]index[/code].\n"
+"[b]Nota:[/b] Este método está implementado en Linux, macOS y Windows."
#: doc/classes/DisplayServer.xml:418
msgid ""
@@ -19894,16 +23234,68 @@ msgid ""
"code].\n"
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
+"Devuelve el nombre localizado de la disposición del teclado en la posición "
+"[code]index[/code].\n"
+"[b]Nota:[/b] Este método está implementado en Linux, macOS y Windows."
#: doc/classes/DisplayServer.xml:428
msgid ""
"Sets active keyboard layout.\n"
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
+"Establece una disposición de teclado activa.\n"
+"[b]Nota:[/b] Este método está implementado en Linux, macOS y Windows."
+
+#: doc/classes/DisplayServer.xml:530
+msgid ""
+"Return the greatest scale factor of all screens.\n"
+"[b]Note:[/b] On macOS returned value is [code]2.0[/code] if there is at "
+"least one hiDPI (Retina) screen in the system, and [code]1.0[/code] in all "
+"other cases.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:557
+msgid ""
+"Return the scale factor of the specified screen by index.\n"
+"[b]Note:[/b] On macOS returned value is [code]2.0[/code] for hiDPI (Retina) "
+"screen, and [code]1.0[/code] for all other cases.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:630
+msgid ""
+"Returns the on-screen keyboard's height in pixels. Returns 0 if there is no "
+"keyboard or if it is currently hidden."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:637
+msgid "Hides the virtual keyboard if it is shown, does nothing otherwise."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:656
+msgid ""
+"Shows the virtual keyboard if the platform has one.\n"
+"[code]existing_text[/code] parameter is useful for implementing your own "
+"[LineEdit] or [TextEdit], as it tells the virtual keyboard what text has "
+"already been typed (the virtual keyboard uses it for auto-correct and "
+"predictions).\n"
+"[code]position[/code] parameter is the screen space [Rect2] of the edited "
+"text.\n"
+"[code]multiline[/code] parameter needs to be set to [code]true[/code] to be "
+"able to enter multiple lines of text, as in [TextEdit].\n"
+"[code]max_length[/code] limits the number of characters that can be entered "
+"if different from [code]-1[/code].\n"
+"[code]cursor_start[/code] can optionally define the current text cursor "
+"position if [code]cursor_end[/code] is not set.\n"
+"[code]cursor_start[/code] and [code]cursor_end[/code] can optionally define "
+"the current text selection.\n"
+"[b]Note:[/b] This method is implemented on Android, iOS and UWP."
+msgstr ""
#: doc/classes/DTLSServer.xml:4
msgid "Helper class to implement a DTLS server."
-msgstr ""
+msgstr "Clase de ayuda para implementar un servidor DTLS."
#: doc/classes/DTLSServer.xml:7
msgid ""
@@ -19969,6 +23361,68 @@ msgid ""
" connected = true\n"
"[/codeblock]"
msgstr ""
+"Esta clase se utiliza para almacenar el estado de un servidor DTLS. Al "
+"[method setup] convierte los [PacketPeerUDP] conectados a [PacketPeerDTLS] "
+"aceptándolos a través del [method take_connection] como clientes DTLS. Bajo "
+"el capó, esta clase se utiliza para almacenar el estado de DTLS y las "
+"cookies del servidor. La razón por la que el estado y las cookies son "
+"necesarios está fuera del alcance de esta documentación.\n"
+"A continuación un pequeño ejemplo de cómo utilizarlo:\n"
+"[codeblock]\n"
+"# server.gd\n"
+"extends Node\n"
+"\n"
+"var dtlsServidor := DTLSServer.new()\n"
+"var udpServidor := UDPServer.new()\n"
+"var pares = []\n"
+"\n"
+"func _ready():\n"
+" UDPServidor.listen(4242)\n"
+" var clave = load(\"clave.key\") # Tu clave privada.\n"
+" var certificado = load(\"certificado.crt\") # Tu certificado X509.\n"
+" dtlsServidor.setup(clave, certificado)\n"
+"\n"
+"func _process(delta):\n"
+" while udpServidor.is_connection_available():\n"
+" var par : PacketPeerUDP = udpServidor.take_connection()\n"
+" var dtls_par : PacketPeerDTLS = dtlsServidor.take_connection(par)\n"
+" if dtls_par.get_status() != PacketPeerDTLS.STATUS_HANDSHAKING:\n"
+" continue # Es normal que aproximadamente la mitad de las "
+"conexiones fallen debido al intercambio de cookies.\n"
+" print(\"Par conectado!\")\n"
+" pares.append(dtls_par)\n"
+" for p in pares:\n"
+" p.poll() # Debe hacer poll para actualizar el estado.\n"
+" if p.get_status() == PacketPeerDTLS.STATUS_CONNECTED:\n"
+" while p.get_available_packet_count() > 0:\n"
+" print(\"Mensaje recibido desde el cliente: %s\" % p."
+"get_packet().get_string_from_utf8())\n"
+" p.put_packet(\"Hola cliente DTLS\".to_utf8())\n"
+"[/codeblock]\n"
+"[codeblock]\n"
+"# client.gd\n"
+"extends Node\n"
+"\n"
+"var dtls := PacketPeerDTLS.new()\n"
+"var udp := PacketPeerUDP.new()\n"
+"var conectado = false\n"
+"\n"
+"func _ready():\n"
+" udp.connect_to_host(\"127.0.0.1\", 4242)\n"
+" dtls.connect_to_peer(udp, false) # Usa verdadero en producción para la "
+"validación del certifícado!\n"
+"\n"
+"func _process(delta):\n"
+" dtls.poll()\n"
+" if dtls.get_status() == PacketPeerDTLS.STATUS_CONNECTED:\n"
+" if !conectado:\n"
+" # Intenta conectar con el servidor\n"
+" dtls.put_packet(\"La respuesta es ... 42!\".to_utf8())\n"
+" while dtls.get_available_packet_count() > 0:\n"
+" print(\"Conectado: %s\" % dtls.get_packet()."
+"get_string_from_utf8())\n"
+" conectado = true\n"
+"[/codeblock]"
#: doc/classes/DTLSServer.xml:74
msgid ""
@@ -19977,6 +23431,10 @@ msgid ""
"[code]chain[/code] parameter to provide additional CA chain information "
"along with the certificate."
msgstr ""
+"Configurar el servidor de DTLS para usar el [code]private_key[/code] dado y "
+"proporcionar el [code]certificate[/code] dado a los clientes. Puede pasar el "
+"parámetro opcional [code]chain[/code] para proporcionar información "
+"adicional de la cadena de CA junto con el certificado."
#: doc/classes/DTLSServer.xml:83
msgid ""
@@ -19987,10 +23445,16 @@ msgid ""
"[constant PacketPeerDTLS.STATUS_HANDSHAKING], as it is normal that 50% of "
"the new connections will be invalid due to cookie exchange."
msgstr ""
+"Intente iniciar el handshake de DTLS con el [code]udp_peer[/code] dado que "
+"debe estar ya conectado (ver [method PacketPeerUDP.connect_to_host]).\n"
+"[b]Nota[/b]: Debe comprobar que el estado del retorno PacketPeerUDP es "
+"[constant PacketPeerDTLS.STATUS_HANDSHAKING], ya que es normal que el 50% de "
+"las nuevas conexiones sean inválidas debido al intercambio de cookies."
#: doc/classes/DynamicFont.xml:4
msgid "DynamicFont renders vector font files at runtime."
msgstr ""
+"DynamicFont renderiza archivos de fuentes vectoriales en tiempo de ejecución."
#: doc/classes/DynamicFont.xml:7
msgid ""
@@ -20016,59 +23480,95 @@ msgid ""
"In FontForge, use [b]File > Generate Fonts[/b], click [b]Options[/b], choose "
"the desired features then generate the font."
msgstr ""
+"DynamicFont renderiza los archivos de fuentes vectoriales (como TTF u OTF) "
+"dinámicamente en tiempo de ejecución en lugar de usar un atlas de texturas "
+"pre-renderizado como [BitmapFont]. Esto cambia el tiempo de carga más rápido "
+"de [BitmapFont] por la capacidad de cambiar los parámetros de la fuente como "
+"el tamaño y el espaciado durante el tiempo de ejecución. [DynamicFontData] "
+"se utiliza para referenciar las rutas de los archivos de fuentes. "
+"DynamicFont también soporta la definición de una o más fuentes alternativas, "
+"que se utilizarán cuando se muestre un carácter no soportado por la fuente "
+"principal.\n"
+"DynamicFont utiliza la biblioteca [url=https://www.freetype.org/]FreeType[/"
+"url] para la rasterización.\n"
+"[codeblock]\n"
+"var fuente_dinamica = DynamicFont.new()\n"
+"fuente_dinamica.font_data = load(\"res://BarlowCondensed-Bold.ttf\")\n"
+"fuente_dinamica.size = 64\n"
+"$\"Etiqueta\".set(\"custom_fonts/font\", fuernte_dinamica)\n"
+"[/codeblock]\n"
+"[b]Nota:[/b] DynamicFont no soporta aún características como composición "
+"tipográfica de derecha a izquierda, ligaduras, formación de texto, fuentes "
+"variables y características de fuentes opcionales. Si deseas \"cocinar\" una "
+"característica de fuente opcional en un archivo de fuente TTF, puedes usar "
+"[url=https://fontforge.org/]FontForge[/url] para hacerlo. En FontForge, usa "
+"[b]File > Generate Fonts[/b], haz clic en [b]Options[/b], elige las "
+"características deseadas y luego genera la fuente."
#: doc/classes/DynamicFont.xml:26
msgid "Adds a fallback font."
+msgstr "Añade una fuente alternativa."
+
+#: doc/classes/DynamicFont.xml:33
+msgid ""
+"Returns a string containing all the characters available in the main and all "
+"the fallback fonts.\n"
+"If a given character is included in more than one font, it appears only once "
+"in the returned string."
msgstr ""
-#: doc/classes/DynamicFont.xml:35
+#: doc/classes/DynamicFont.xml:43
msgid "Returns the fallback font at index [code]idx[/code]."
-msgstr ""
+msgstr "Devuelve la fuente de reserva en el índice [code]idx[/code]."
-#: doc/classes/DynamicFont.xml:42
+#: doc/classes/DynamicFont.xml:50
msgid "Returns the number of fallback fonts."
-msgstr ""
+msgstr "Devuelve el número de fuentes de reserva."
-#: doc/classes/DynamicFont.xml:51
+#: doc/classes/DynamicFont.xml:59
msgid ""
"Returns the spacing for the given [code]type[/code] (see [enum SpacingType])."
msgstr ""
+"Devuelve el espacio para el [code]type[/code] dado (véase [enum "
+"SpacingType])."
-#: doc/classes/DynamicFont.xml:60
+#: doc/classes/DynamicFont.xml:68
msgid "Removes the fallback font at index [code]idx[/code]."
-msgstr ""
+msgstr "Elimina la fuente de reserva en el índice [code]idx[/code]."
-#: doc/classes/DynamicFont.xml:71
+#: doc/classes/DynamicFont.xml:79
msgid "Sets the fallback font at index [code]idx[/code]."
-msgstr ""
+msgstr "Establece la fuente alternativa en el índice [code]idx[/code]."
-#: doc/classes/DynamicFont.xml:82
+#: doc/classes/DynamicFont.xml:90
msgid ""
"Sets the spacing for [code]type[/code] (see [enum SpacingType]) to "
"[code]value[/code] in pixels (not relative to the font size)."
msgstr ""
+"Establece el espacio para [code]type[/code] (véase [enum SpacingType]) en "
+"[code]value[/code] en píxeles (no en relación con el tamaño de la fuente)."
-#: doc/classes/DynamicFont.xml:88
+#: doc/classes/DynamicFont.xml:96
msgid "Extra spacing at the bottom in pixels."
-msgstr ""
+msgstr "Espacio extra en la parte inferior en píxeles."
-#: doc/classes/DynamicFont.xml:91
+#: doc/classes/DynamicFont.xml:99
msgid "Extra character spacing in pixels."
-msgstr ""
+msgstr "Espacio extra de caracteres en píxeles."
-#: doc/classes/DynamicFont.xml:94
+#: doc/classes/DynamicFont.xml:102
msgid "Extra space spacing in pixels."
-msgstr ""
+msgstr "Espacio extra en píxeles."
-#: doc/classes/DynamicFont.xml:97
+#: doc/classes/DynamicFont.xml:105
msgid "Extra spacing at the top in pixels."
-msgstr ""
+msgstr "Espacio extra en la parte superior en píxeles."
-#: doc/classes/DynamicFont.xml:100
+#: doc/classes/DynamicFont.xml:108
msgid "The font data."
-msgstr ""
+msgstr "Los datos de la fuente."
-#: doc/classes/DynamicFont.xml:103
+#: doc/classes/DynamicFont.xml:111
msgid ""
"The font outline's color.\n"
"[b]Note:[/b] It's recommended to leave this at the default value so that you "
@@ -20076,87 +23576,111 @@ msgid ""
"black here, it won't be possible to change its color using a Label's font "
"outline modulate theme item."
msgstr ""
+"El color del contorno de la fuente.\n"
+"[b]Nota:[/b] Se recomienda dejar este valor por defecto para poder ajustarlo "
+"en los controles individuales. Por ejemplo, si el contorno se hace negro "
+"aquí, no será posible cambiar su color usando un elemento del tema modular "
+"el contorno de la fuente de una etiqueta."
-#: doc/classes/DynamicFont.xml:107
+#: doc/classes/DynamicFont.xml:115
msgid "The font outline's thickness in pixels (not relative to the font size)."
msgstr ""
+"El grosor del contorno de la fuente en píxeles (no en relación con el tamaño "
+"de la fuente)."
-#: doc/classes/DynamicFont.xml:110
+#: doc/classes/DynamicFont.xml:118
msgid "The font size in pixels."
-msgstr ""
+msgstr "El tamaño de la fuente en píxeles."
-#: doc/classes/DynamicFont.xml:115
+#: doc/classes/DynamicFont.xml:123
msgid "Spacing at the top."
-msgstr ""
+msgstr "El espacio en la parte superior."
-#: doc/classes/DynamicFont.xml:118
+#: doc/classes/DynamicFont.xml:126
msgid "Spacing at the bottom."
-msgstr ""
+msgstr "El espacio en la parte inferior."
-#: doc/classes/DynamicFont.xml:121
+#: doc/classes/DynamicFont.xml:129
msgid "Character spacing."
-msgstr ""
+msgstr "El espaciado de caracteres."
-#: doc/classes/DynamicFont.xml:124
+#: doc/classes/DynamicFont.xml:132
msgid "Space spacing."
-msgstr ""
+msgstr "El espaciado del espacio."
#: doc/classes/DynamicFontData.xml:4
msgid "Used with [DynamicFont] to describe the location of a font file."
msgstr ""
+"Se usa con [DynamicFont] para describir la ubicación de un archivo de "
+"fuentes."
#: doc/classes/DynamicFontData.xml:7
msgid ""
"Used with [DynamicFont] to describe the location of a vector font file for "
"dynamic rendering at runtime."
msgstr ""
+"Se utiliza con [DynamicFont] para describir la ubicación de un archivo de "
+"fuente vectorial para la representación dinámica en tiempo de ejecución."
#: doc/classes/DynamicFontData.xml:15
msgid ""
"If [code]true[/code], the font is rendered with anti-aliasing. This property "
"applies both to the main font and its outline (if it has one)."
msgstr ""
+"Si [code]true[/code], la fuente se renderiza con anti-aliasing. Esta "
+"propiedad se aplica tanto a la fuente principal como a su contorno (si lo "
+"tiene)."
#: doc/classes/DynamicFontData.xml:18
msgid "The path to the vector font file."
-msgstr ""
+msgstr "La ruta del archivo de la fuente vectorial."
#: doc/classes/DynamicFontData.xml:21
msgid "The font hinting mode used by FreeType. See [enum Hinting] for options."
msgstr ""
+"El modo de sugerencia de fuentes usado por FreeType. Ver [enum Hinting] para "
+"las opciones."
#: doc/classes/DynamicFontData.xml:26
msgid "Disables font hinting (smoother but less crisp)."
-msgstr ""
+msgstr "Desactiva la indicación de la fuente (más suave pero menos nítida)."
#: doc/classes/DynamicFontData.xml:29
msgid "Use the light font hinting mode."
-msgstr ""
+msgstr "Utilice el modo de indicación de la fuente de luz."
#: doc/classes/DynamicFontData.xml:32
msgid "Use the default font hinting mode (crisper but less smooth)."
msgstr ""
+"Utilice el modo de sugerencia de fuentes predeterminado (más nítido pero "
+"menos suave)."
#: doc/classes/EditorExportPlugin.xml:4
msgid "A script that is executed when exporting projects."
-msgstr ""
+msgstr "Un script que se ejecuta al exportar proyectos."
#: doc/classes/EditorExportPlugin.xml:23
msgid ""
"Virtual method to be overridden by the user. It is called when the export "
"starts and provides all information about the export."
msgstr ""
+"Método virtual que debe ser sobreescrito por el usuario. Se llama cuando se "
+"inicia la exportación y proporciona toda la información sobre la misma."
#: doc/classes/EditorExportPlugin.xml:30
msgid ""
"Virtual method to be overridden by the user. Called when the export is "
"finished."
msgstr ""
+"Método virtual que debe ser sobrescrito por el usuario. Llamado cuando la "
+"exportación esté terminada."
#: doc/classes/EditorFeatureProfile.xml:4
msgid ""
"An editor feature profile which can be used to disable specific features."
msgstr ""
+"Un perfil de características del editor que puede ser usado para "
+"deshabilitar características específicas."
#: doc/classes/EditorFeatureProfile.xml:7
msgid ""
@@ -20169,10 +23693,22 @@ msgid ""
"To manage editor feature profiles visually, use [b]Editor > Manage Feature "
"Profiles...[/b] at the top of the editor window."
msgstr ""
+"Un perfil de características del editor puede ser usado para deshabilitar "
+"características específicas del editor de Godot. Cuando se deshabilita, las "
+"características no aparecen en el editor, lo que hace que el editor esté "
+"menos desordenado. Esto es útil en entornos educativos para reducir la "
+"confusión o cuando se trabaja en equipo. Por ejemplo, los artistas y los "
+"diseñadores de niveles podrían utilizar un perfil de características que "
+"deshabilite el editor de scripts para evitar hacer accidentalmente cambios "
+"en los archivos que no deben editar.\n"
+"Para gestionar visualmente los perfiles de característica del editor, "
+"utiliza [b]Editor > Manage Feature Profiles...[/b] en la parte superior de "
+"la ventana del editor."
#: doc/classes/EditorFeatureProfile.xml:19
msgid "Returns the specified [code]feature[/code]'s human-readable name."
msgstr ""
+"Devuelve el nombre legible para los humanos de la [code]feature[/code]."
#: doc/classes/EditorFeatureProfile.xml:28
msgid ""
@@ -20180,6 +23716,9 @@ msgid ""
"is disabled. When disabled, the class won't appear in the Create New Node "
"dialog."
msgstr ""
+"Devuelve [code]true[/code] si la clase especificada por [code]class_name[/"
+"code] está desactivada. Cuando esté desactivada, la clase no aparecerá en el "
+"diálogo Crear nuevo nodo."
#: doc/classes/EditorFeatureProfile.xml:37
msgid ""
@@ -20188,6 +23727,10 @@ msgid ""
"appear in the Create New Node dialog but the inspector will be read-only "
"when selecting a node that extends the class."
msgstr ""
+"Devuelve [code]true[/code] si la edición para la clase especificada por "
+"[code]class_name[/code] está desactivada. Cuando esté deshabilitada, la "
+"clase seguirá apareciendo en el diálogo Crear nuevo nodo, pero el inspector "
+"será de sólo lectura cuando seleccione un nodo que extienda la clase."
#: doc/classes/EditorFeatureProfile.xml:48
msgid ""
@@ -20196,12 +23739,19 @@ msgid ""
"appear in the inspector when selecting a node that extends the class "
"specified by [code]class_name[/code]."
msgstr ""
+"Devuelve [code]true[/code] si [code]property[/code] está desactivado en la "
+"clase especificada por [code]class_name[/code]. Cuando una propiedad está "
+"deshabilitada, no aparecerá en el inspector cuando se seleccione un nodo que "
+"extienda la clase especificada por [code]class_name[/code]."
#: doc/classes/EditorFeatureProfile.xml:57
msgid ""
"Returns [code]true[/code] if the [code]feature[/code] is disabled. When a "
"feature is disabled, it will disappear from the editor entirely."
msgstr ""
+"Devuelve [code]true[/code] si la función [code]feature[/code] está "
+"desactivada. Cuando una característica está deshabilitada, desaparecerá por "
+"completo del editor."
#: doc/classes/EditorFeatureProfile.xml:66
msgid ""
@@ -20209,6 +23759,10 @@ msgid ""
"format obtained by using the feature profile manager's [b]Export[/b] button "
"or the [method save_to_file] method."
msgstr ""
+"Carga un perfil de características de editor desde un archivo. El archivo "
+"debe seguir el formato JSON obtenido mediante el botón [b]Exportar[/b] del "
+"administrador de perfiles de características o el método [method "
+"save_to_file]."
#: doc/classes/EditorFeatureProfile.xml:75
msgid ""
@@ -20216,6 +23770,10 @@ msgid ""
"imported using the feature profile manager's [b]Import[/b] button or the "
"[method load_from_file] button."
msgstr ""
+"Guarda el perfil de características del editor en un archivo en formato "
+"JSON. Luego puede ser importado usando el botón [b]Import[/b] del "
+"administrador del perfil de característica o el botón [method "
+"load_from_file]."
#: doc/classes/EditorFeatureProfile.xml:86
msgid ""
@@ -20223,6 +23781,9 @@ msgid ""
"by [code]class_name[/code]. When disabled, the class won't appear in the "
"Create New Node dialog."
msgstr ""
+"Si [code]disable[/code] es [code]true[/code], se desactiva la clase "
+"especificada por [code]class_name[/code]. Cuando esté desactivada, la clase "
+"no aparecerá en el diálogo Crear nuevo nodo."
#: doc/classes/EditorFeatureProfile.xml:97
msgid ""
@@ -20231,6 +23792,10 @@ msgid ""
"appear in the Create New Node dialog but the inspector will be read-only "
"when selecting a node that extends the class."
msgstr ""
+"Si [code]disable[/code] es [code]true[/code], desactiva la edición para la "
+"clase especificada por [code]class_name[/code]. Cuando esté desactivada, la "
+"clase seguirá apareciendo en el diálogo Crear nuevo nodo, pero el inspector "
+"será de sólo lectura cuando seleccione un nodo que extienda la clase."
#: doc/classes/EditorFeatureProfile.xml:110
msgid ""
@@ -20239,6 +23804,11 @@ msgid ""
"When a property is disabled, it won't appear in the inspector when selecting "
"a node that extends the class specified by [code]class_name[/code]."
msgstr ""
+"Si [code]disable[/code] es [code]true[/code], desactiva la edición para "
+"[code]property[/code] en la clase especificada por [code]class_name[/code]. "
+"Cuando una propiedad está deshabilitada, no aparecerá en el inspector cuando "
+"se seleccione un nodo que extienda la clase especificada por "
+"[code]class_name[/code]."
#: doc/classes/EditorFeatureProfile.xml:121
msgid ""
@@ -20246,52 +23816,72 @@ msgid ""
"specified in [code]feature[/code]. When a feature is disabled, it will "
"disappear from the editor entirely."
msgstr ""
+"Si [code]disable[/code] es [code]true[/code], se desactiva la función de "
+"edición especificada en [code]feature[/code]. Cuando una característica está "
+"deshabilitada, desaparecerá por completo del editor."
#: doc/classes/EditorFeatureProfile.xml:127
msgid ""
"The 3D editor. If this feature is disabled, the 3D editor won't display but "
"3D nodes will still display in the Create New Node dialog."
msgstr ""
+"El editor 3D. Si esta característica está desactivada, el editor 3D no se "
+"mostrará, pero los nodos 3D seguirán mostrándose en el diálogo Crear nuevo "
+"nodo."
#: doc/classes/EditorFeatureProfile.xml:130
msgid ""
"The Script tab, which contains the script editor and class reference "
"browser. If this feature is disabled, the Script tab won't display."
msgstr ""
+"La pestaña Script, que contiene el editor de scripts y el navegador de "
+"referencia de clases. Si esta característica está desactivada, la pestaña "
+"Script no se mostrará."
#: doc/classes/EditorFeatureProfile.xml:133
msgid ""
"The AssetLib tab. If this feature is disabled, the AssetLib tab won't "
"display."
msgstr ""
+"La pestaña AssetLib. Si esta función está desactivada, la pestaña AssetLib "
+"no se mostrará."
#: doc/classes/EditorFeatureProfile.xml:136
msgid ""
"Scene tree editing. If this feature is disabled, the Scene tree dock will "
"still be visible but will be read-only."
msgstr ""
+"Edición del árbol de la escena. Si esta función está desactivada, el "
+"acoplamiento del árbol de escenas seguirá siendo visible pero será de sólo "
+"lectura."
#: doc/classes/EditorFeatureProfile.xml:139
msgid ""
"The Import dock. If this feature is disabled, the Import dock won't be "
"visible."
msgstr ""
+"El Import dock. Si esta función está desactivada, el muelle de importación "
+"no será visible."
#: doc/classes/EditorFeatureProfile.xml:142
msgid ""
"The Node dock. If this feature is disabled, signals and groups won't be "
"visible and modifiable from the editor."
msgstr ""
+"El nodo dock. Si esta característica está desactivada, las señales y grupos "
+"no serán visibles y modificables desde el editor."
#: doc/classes/EditorFeatureProfile.xml:145
msgid ""
"The FileSystem dock. If this feature is disabled, the FileSystem dock won't "
"be visible."
msgstr ""
+"El dock del Sistema de Archivo. Si esta función está desactivada, el "
+"acoplamiento del Sistema de archivos no será visible."
#: doc/classes/EditorFileDialog.xml:4
msgid "A modified version of [FileDialog] used by the editor."
-msgstr ""
+msgstr "Una versión modificada de [FileDialog] utilizada por el editor."
#: doc/classes/EditorFileDialog.xml:17
msgid ""
@@ -20300,130 +23890,165 @@ msgid ""
"For example, [code]\"*.tscn, *.scn; Scenes\"[/code] results in filter text "
"\"Scenes (*.tscn, *.scn)\"."
msgstr ""
+"Añade una opción de filtro de extensión de archivo delimitada por comas al "
+"[EditorFileDialog] con una etiqueta opcional delimitada por punto y coma.\n"
+"Por ejemplo, [code]\"*.tscn, *.scn; Scenes\"[/code] da como resultado el "
+"texto del filtro \"Scenes (*.tscn, *.scn)\"."
#: doc/classes/EditorFileDialog.xml:25
msgid "Removes all filters except for \"All Files (*)\"."
-msgstr ""
+msgstr "Elimina todos los filtros excepto el de \"Todos los archivos (*)\"."
#: doc/classes/EditorFileDialog.xml:32
msgid "Returns the [code]VBoxContainer[/code] used to display the file system."
msgstr ""
+"Devuelve el [code]VBoxContainer[/code] utilizado para mostrar el sistema de "
+"archivos."
#: doc/classes/EditorFileDialog.xml:39
msgid ""
"Notify the [EditorFileDialog] that its view of the data is no longer "
"accurate. Updates the view contents on next view update."
msgstr ""
+"Notifique al [EditorFileDialog] que su visión de los datos ya no es precisa. "
+"Actualiza el contenido de la vista en la próxima actualización de la misma."
#: doc/classes/EditorFileDialog.xml:45
msgid ""
"The location from which the user may select a file, including [code]res://[/"
"code], [code]user://[/code], and the local file system."
msgstr ""
+"La ubicación desde la cual el usuario puede seleccionar un archivo, "
+"incluyendo [code]res://[/code], [code]user://[/code], y el sistema de "
+"archivos local."
#: doc/classes/EditorFileDialog.xml:48
msgid "The currently occupied directory."
-msgstr ""
+msgstr "El directorio actualmente ocupado."
#: doc/classes/EditorFileDialog.xml:51
msgid "The currently selected file."
-msgstr ""
+msgstr "El archivo actualmente seleccionado."
#: doc/classes/EditorFileDialog.xml:54
msgid "The file system path in the address bar."
-msgstr ""
+msgstr "La ruta del sistema de archivos en la barra de direcciones."
#: doc/classes/EditorFileDialog.xml:58
msgid ""
"If [code]true[/code], the [EditorFileDialog] will not warn the user before "
"overwriting files."
msgstr ""
+"Si [code]true[/code], el [EditorFileDialog] no avisará al usuario antes de "
+"sobrescribir los archivos."
#: doc/classes/EditorFileDialog.xml:61
msgid ""
"The view format in which the [EditorFileDialog] displays resources to the "
"user."
msgstr ""
+"El formato de visualización en el que el [EditorFileDialog] muestra los "
+"recursos al usuario."
#: doc/classes/EditorFileDialog.xml:64
msgid ""
"The dialog's open or save mode, which affects the selection behavior. See "
"[enum FileMode]"
msgstr ""
+"El diálogo está en modo abierto o guardado, lo que afecta al comportamiento "
+"de la selección. Ver [enum FileMode]"
#: doc/classes/EditorFileDialog.xml:67
msgid ""
"If [code]true[/code], hidden files and directories will be visible in the "
"[EditorFileDialog]."
msgstr ""
+"Si [code]true[/code], los archivos y directorios ocultos serán visibles en "
+"el [EditorFileDialog]."
#: doc/classes/EditorFileDialog.xml:76
msgid "Emitted when a directory is selected."
-msgstr ""
+msgstr "Emitido cuando se selecciona un directorio."
#: doc/classes/EditorFileDialog.xml:83
msgid "Emitted when a file is selected."
-msgstr ""
+msgstr "Emitido cuando se selecciona un archivo."
#: doc/classes/EditorFileDialog.xml:90
msgid "Emitted when multiple files are selected."
-msgstr ""
+msgstr "Emitido cuando se seleccionan varios archivos."
#: doc/classes/EditorFileDialog.xml:96
msgid ""
"The [EditorFileDialog] can select only one file. Accepting the window will "
"open the file."
msgstr ""
+"El [EditorFileDialog] puede seleccionar sólo un archivo. Al aceptar la "
+"ventana se abrirá el archivo."
#: doc/classes/EditorFileDialog.xml:99
msgid ""
"The [EditorFileDialog] can select multiple files. Accepting the window will "
"open all files."
msgstr ""
+"El [EditorFileDialog] puede seleccionar varios archivos. Al aceptar la "
+"ventana se abrirán todos los archivos."
#: doc/classes/EditorFileDialog.xml:102
msgid ""
"The [EditorFileDialog] can select only one directory. Accepting the window "
"will open the directory."
msgstr ""
+"El [EditorFileDialog] puede seleccionar sólo un directorio. Al aceptar la "
+"ventana se abrirá el directorio."
#: doc/classes/EditorFileDialog.xml:105
msgid ""
"The [EditorFileDialog] can select a file or directory. Accepting the window "
"will open it."
msgstr ""
+"El [EditorFileDialog] puede seleccionar un archivo o directorio. Aceptando "
+"la ventana se abrirá."
#: doc/classes/EditorFileDialog.xml:108
msgid ""
"The [EditorFileDialog] can select only one file. Accepting the window will "
"save the file."
msgstr ""
+"El [EditorFileDialog] puede seleccionar sólo un archivo. Al aceptar la "
+"ventana se guardará el archivo."
#: doc/classes/EditorFileDialog.xml:111
msgid ""
"The [EditorFileDialog] can only view [code]res://[/code] directory contents."
msgstr ""
+"El [EditorFileDialog] sólo puede ver el contenido del directorio [code]res://"
+"[/code]."
#: doc/classes/EditorFileDialog.xml:114
msgid ""
"The [EditorFileDialog] can only view [code]user://[/code] directory contents."
msgstr ""
+"El [EditorFileDialog] sólo puede ver el contenido del directorio "
+"[code]user://[/code]."
#: doc/classes/EditorFileDialog.xml:117
msgid "The [EditorFileDialog] can view the entire local file system."
-msgstr ""
+msgstr "El [EditorFileDialog] puede ver todo el sistema de archivos locales."
#: doc/classes/EditorFileDialog.xml:120
msgid "The [EditorFileDialog] displays resources as thumbnails."
-msgstr ""
+msgstr "El [EditorFileDialog] muestra los recursos como miniaturas."
#: doc/classes/EditorFileDialog.xml:123
msgid "The [EditorFileDialog] displays resources as a list of filenames."
msgstr ""
+"El [EditorFileDialog] muestra los recursos como una lista de nombres de "
+"archivos."
#: doc/classes/EditorFileSystem.xml:4
msgid "Resource filesystem, as the editor sees it."
-msgstr ""
+msgstr "Sistema de archivos de recursos, como lo ve el editor."
#: doc/classes/EditorFileSystem.xml:7
msgid ""
@@ -20432,126 +24057,167 @@ msgid ""
"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
"the singleton using [method EditorInterface.get_resource_filesystem]."
msgstr ""
+"Este objeto contiene información de todos los recursos del sistema de "
+"archivos, sus tipos, etc.\n"
+"[b]Nota:[/b] Esta clase no debe ser instanciada directamente. En su lugar, "
+"accede al singleton usando [method EditorInterface.get_resource_filesystem]."
#: doc/classes/EditorFileSystem.xml:19
msgid "Gets the type of the file, given the full path."
-msgstr ""
+msgstr "Obtiene el tipo de archivo, dada la ruta completa."
#: doc/classes/EditorFileSystem.xml:26
msgid "Gets the root directory object."
-msgstr ""
+msgstr "Obtiene el objeto del directorio raíz."
#: doc/classes/EditorFileSystem.xml:35
msgid "Returns a view into the filesystem at [code]path[/code]."
-msgstr ""
+msgstr "Devuelve una vista en el sistema de archivos en [code]path[/code]."
#: doc/classes/EditorFileSystem.xml:42
msgid "Returns the scan progress for 0 to 1 if the FS is being scanned."
msgstr ""
+"Devuelve el progreso del escaneo de 0 a 1 si el FS está siendo escaneado."
#: doc/classes/EditorFileSystem.xml:49
msgid "Returns [code]true[/code] of the filesystem is being scanned."
msgstr ""
+"Devuelve [code]true[/code] del sistema de archivos está siendo escaneado."
#: doc/classes/EditorFileSystem.xml:56
msgid "Scan the filesystem for changes."
-msgstr ""
+msgstr "Escanea el sistema de archivos en busca de cambios."
#: doc/classes/EditorFileSystem.xml:63
msgid "Check if the source of any imported resource changed."
-msgstr ""
+msgstr "Compruebe si ha cambiado la fuente de algún recurso importado."
#: doc/classes/EditorFileSystem.xml:72
msgid ""
"Update a file information. Call this if an external program (not Godot) "
"modified the file."
msgstr ""
+"Actualizar la información de un archivo. Llámalo si un programa externo (no "
+"Godot) modificó el archivo."
#: doc/classes/EditorFileSystem.xml:79
msgid "Scans the script files and updates the list of custom class names."
msgstr ""
+"Escanea los archivos de script y actualiza la lista de nombres de clase "
+"personalizados."
#: doc/classes/EditorFileSystem.xml:86
msgid "Emitted if the filesystem changed."
-msgstr ""
+msgstr "Emitido si el sistema de archivos cambió."
#: doc/classes/EditorFileSystem.xml:93
msgid "Remitted if a resource is reimported."
-msgstr ""
+msgstr "Remitido si un recurso es reimportado."
-#: doc/classes/EditorFileSystem.xml:106
+#: doc/classes/EditorFileSystem.xml:100
+#, fuzzy
+msgid ""
+"Emitted if at least one resource is reloaded when the filesystem is scanned."
+msgstr "Emitido si la fuente de cualquier archivo importado cambia."
+
+#: doc/classes/EditorFileSystem.xml:107
msgid "Emitted if the source of any imported file changed."
-msgstr ""
+msgstr "Emitido si la fuente de cualquier archivo importado cambia."
#: doc/classes/EditorFileSystemDirectory.xml:4
msgid "A directory for the resource filesystem."
-msgstr ""
+msgstr "Un directorio para el sistema de archivos de recursos."
#: doc/classes/EditorFileSystemDirectory.xml:7
msgid "A more generalized, low-level variation of the directory concept."
msgstr ""
+"Una variación más generalizada y de bajo nivel del concepto de directorio."
#: doc/classes/EditorFileSystemDirectory.xml:18
msgid ""
"Returns the index of the directory with name [code]name[/code] or [code]-1[/"
"code] if not found."
msgstr ""
+"Devuelve el índice del directorio con el nombre [code]name[/code] o "
+"[code]-1[/code] si no se encuentra."
#: doc/classes/EditorFileSystemDirectory.xml:27
msgid ""
"Returns the index of the file with name [code]name[/code] or [code]-1[/code] "
"if not found."
msgstr ""
+"Devuelve el índice del archivo con el nombre [code]name[/code] o [code]-1[/"
+"code] si no se encuentra."
#: doc/classes/EditorFileSystemDirectory.xml:36
msgid "Returns the name of the file at index [code]idx[/code]."
-msgstr ""
+msgstr "Devuelve el nombre del archivo en el índice [code]idx[/code]."
#: doc/classes/EditorFileSystemDirectory.xml:43
msgid "Returns the number of files in this directory."
-msgstr ""
+msgstr "Devuelve el número de archivos en este directorio."
#: doc/classes/EditorFileSystemDirectory.xml:52
msgid ""
"Returns [code]true[/code] if the file at index [code]idx[/code] imported "
"properly."
msgstr ""
+"Devuelve [code]true[/code] si el archivo en el índice [code]idx[/code] se "
+"importó correctamente."
#: doc/classes/EditorFileSystemDirectory.xml:61
msgid "Returns the path to the file at index [code]idx[/code]."
+msgstr "Devuelve la ruta del archivo en el índice [code]idx[/code]."
+
+#: doc/classes/EditorFileSystemDirectory.xml:70
+msgid ""
+"Returns the base class of the script class defined in the file at index "
+"[code]idx[/code]. If the file doesn't define a script class using the "
+"[code]class_name[/code] syntax, this will return an empty string."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:86
-msgid "Returns the file extension of the file at index [code]idx[/code]."
+#: doc/classes/EditorFileSystemDirectory.xml:79
+msgid ""
+"Returns the name of the script class defined in the file at index [code]idx[/"
+"code]. If the file doesn't define a script class using the [code]class_name[/"
+"code] syntax, this will return an empty string."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:93
+#: doc/classes/EditorFileSystemDirectory.xml:88
+msgid "Returns the file extension of the file at index [code]idx[/code]."
+msgstr "Devuelve la extensión del archivo en el índice [code]idx[/code]."
+
+#: doc/classes/EditorFileSystemDirectory.xml:95
msgid "Returns the name of this directory."
-msgstr ""
+msgstr "Devuelve el nombre de este directorio."
-#: doc/classes/EditorFileSystemDirectory.xml:100
+#: doc/classes/EditorFileSystemDirectory.xml:102
msgid ""
"Returns the parent directory for this directory or [code]null[/code] if "
"called on a directory at [code]res://[/code] or [code]user://[/code]."
msgstr ""
+"Devuelve el directorio principal de este directorio o [code]null[/code] si "
+"se llama a un directorio en [code]res://[/code] o [code]user://[/code]."
-#: doc/classes/EditorFileSystemDirectory.xml:107
+#: doc/classes/EditorFileSystemDirectory.xml:109
msgid "Returns the path to this directory."
-msgstr ""
+msgstr "Devuelve la ruta de este directorio."
-#: doc/classes/EditorFileSystemDirectory.xml:116
+#: doc/classes/EditorFileSystemDirectory.xml:118
msgid "Returns the subdirectory at index [code]idx[/code]."
-msgstr ""
+msgstr "Devuelve el subdirectorio en el índice [code]idx[/code]."
-#: doc/classes/EditorFileSystemDirectory.xml:123
+#: doc/classes/EditorFileSystemDirectory.xml:125
msgid "Returns the number of subdirectories in this directory."
-msgstr ""
+msgstr "Devuelve el número de subdirectorios en este directorio."
#: doc/classes/EditorImportPlugin.xml:4
msgid ""
"Registers a custom resource importer in the editor. Use the class to parse "
"any file and import it as a new resource type."
msgstr ""
+"Registra un importador de recursos personalizados en el editor. Usa la clase "
+"para analizar cualquier archivo e importarlo como un nuevo tipo de recurso."
#: doc/classes/EditorImportPlugin.xml:7
msgid ""
@@ -20608,12 +24274,69 @@ msgid ""
" return OK\n"
"[/codeblock]"
msgstr ""
+"EditorImportPlugins proporcionan una forma de ampliar la funcionalidad de "
+"importación de recursos del editor. Utilícelos para importar recursos de "
+"archivos personalizados o para proporcionar alternativas a los importadores "
+"existentes del editor. Registra tu [EditorPlugin] con el [método "
+"EditorPlugin.add_import_plugin].\n"
+"Los EditorImportPlugins funcionan asociándose a extensiones de archivo "
+"específicas y a un tipo de recurso. Ver [method get_recognized_extensions] y "
+"[method get_resource_type]. Opcionalmente, pueden especificar algunos "
+"preajustes de importación que afectan al proceso de importación. Los "
+"EditorImportPlugins se encargan de crear los recursos y de guardarlos en el "
+"directorio [code].import[/code].\n"
+"A continuación se muestra un ejemplo de EditorImportPlugin que importa un "
+"[Mesh] de un archivo con la extensión \".special\" o \".spec\":\n"
+"[codeblock]\n"
+"tool\n"
+"extends EditorImportPlugin\n"
+"\n"
+"func get_importer_name():\n"
+" return \"my.special.plugin\"\n"
+"\n"
+"func get_visible_name():\n"
+" return \"Importador de malla especial\"\n"
+"\n"
+"func get_recognized_extensions():\n"
+" return [\"special\", \"spec\"]\n"
+"\n"
+"func get_save_extension():\n"
+" return \"malla\"\n"
+"\n"
+"func get_resource_type():\n"
+" return \"Malla\"\n"
+"\n"
+"func get_preset_count():\n"
+" return 1\n"
+"\n"
+"func get_preset_name(i):\n"
+" return \"Default\"\n"
+"\n"
+"func get_import_options(i):\n"
+" return [{\"name\": \"mi_opcion\", \"default_value\": false}]\n"
+"\n"
+"func import(archivo_fuente, salvar_ruta, opciones, variables_plataforma, "
+"archivos_generados):\n"
+" var archivo = File.new()\n"
+" if archivo.open(archivo_fuente, File.READ) != OK:\n"
+" return FAILED\n"
+"\n"
+" var malla = Mesh.new()\n"
+" # Rellena la malla con los datos leidos de archivo, se deje como un "
+"ejecicio al lector\n"
+"\n"
+" var nombreArchivo = salvar_ruta + \".\" + get_save_extension()\n"
+" ResourceSaver.save(nombreArchivo, malla)\n"
+" return OK\n"
+"[/codeblock]"
#: doc/classes/EditorImportPlugin.xml:52
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/plugins/editor/"
"import_plugins.html"
msgstr ""
+"https://docs.godotengine.org/es/latest/tutorials/plugins/editor/"
+"import_plugins.html"
#: doc/classes/EditorImportPlugin.xml:61
msgid ""
@@ -20622,6 +24345,10 @@ msgid ""
"[code]default_value[/code], [code]property_hint[/code] (optional), "
"[code]hint_string[/code] (optional), [code]usage[/code] (optional)."
msgstr ""
+"Obtiene las opciones y los valores por defecto para el preajuste en este "
+"índice. Devuelve un array de diccionarios con las siguientes claves: "
+"[code]name[/code], [code]default_value[/code], [code]property_hint[/code] "
+"(opcional), [code]hint_string[/code] (opcional), [code]uso[/code] (opcional)."
#: doc/classes/EditorImportPlugin.xml:68
msgid ""
@@ -20629,53 +24356,97 @@ msgid ""
"values will be called later. Use this to ensure the importer runs after the "
"dependencies are already imported."
msgstr ""
+"Se ejecuta el orden de este importador al importar recursos. Los valores más "
+"altos serán llamados más tarde. Utiliza esto para asegurar que el importador "
+"se ejecuta después de que las dependencias ya han sido importadas."
#: doc/classes/EditorImportPlugin.xml:75
msgid "Gets the unique name of the importer."
+msgstr "Obtiene el nombre único del importador."
+
+#: doc/classes/EditorImportPlugin.xml:86
+msgid ""
+"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. For example:\n"
+"[codeblock]\n"
+"func get_option_visibility(option, options):\n"
+" # Only show the lossy quality setting if the compression mode is set to "
+"\"Lossy\".\n"
+" if option == \"compress/lossy_quality\" and options.has(\"compress/mode"
+"\"):\n"
+" return int(options[\"compress/mode\"]) == COMPRESS_LOSSY\n"
+"\n"
+" return true\n"
+"[/codeblock]\n"
+"Return [code]true[/code] to make all options always visible."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:92
+#: doc/classes/EditorImportPlugin.xml:102
msgid ""
"Gets the number of initial presets defined by the plugin. Use [method "
"get_import_options] to get the default options for the preset and [method "
"get_preset_name] to get the name of the preset."
msgstr ""
+"Obtiene el número de preajustes iniciales definidos por el plugin. Usa "
+"[method get_import_options] para obtener las opciones por defecto de "
+"preajuste y [method get_preset_name] para obtener el nombre del preajuste."
-#: doc/classes/EditorImportPlugin.xml:101
+#: doc/classes/EditorImportPlugin.xml:111
msgid "Gets the name of the options preset at this index."
-msgstr ""
+msgstr "Obtiene el nombre de las opciones de preajuste en este índice."
-#: doc/classes/EditorImportPlugin.xml:108
+#: doc/classes/EditorImportPlugin.xml:118
msgid ""
"Gets the priority of this plugin for the recognized extension. Higher "
"priority plugins will be preferred. The default priority is [code]1.0[/code]."
msgstr ""
+"Obtiene la prioridad de este plugin para la extensión reconocida. Se "
+"preferirán los plugins de mayor prioridad. La prioridad por defecto es "
+"[code]1.0[/code]."
-#: doc/classes/EditorImportPlugin.xml:115
+#: doc/classes/EditorImportPlugin.xml:125
msgid ""
"Gets the list of file extensions to associate with this loader (case-"
"insensitive). e.g. [code][\"obj\"][/code]."
msgstr ""
+"Obtiene la lista de extensiones de archivos para asociar con este cargador "
+"(sin distinción de mayúsculas y minúsculas). Por ejemplo, [code][\"obj\"][/"
+"code]."
-#: doc/classes/EditorImportPlugin.xml:122
+#: doc/classes/EditorImportPlugin.xml:132
msgid ""
"Gets the Godot resource type associated with this loader. e.g. [code]\"Mesh"
"\"[/code] or [code]\"Animation\"[/code]."
msgstr ""
+"Obtiene el tipo de recurso Godot asociado a este cargador. Por ejemplo, "
+"[code]\"Mesh\"[/code] o [code]\"Animation\"[/code]."
-#: doc/classes/EditorImportPlugin.xml:129
+#: doc/classes/EditorImportPlugin.xml:139
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory."
msgstr ""
+"Obtiene la extensión utilizada para guardar este recurso en el directorio "
+"[code].import[/code]."
-#: doc/classes/EditorImportPlugin.xml:136
+#: doc/classes/EditorImportPlugin.xml:146
msgid "Gets the name to display in the import window."
+msgstr "Obtiene el nombre para mostrarlo en la ventana de importación."
+
+#: doc/classes/EditorImportPlugin.xml:163
+msgid ""
+"Imports [code]source_file[/code] into [code]save_path[/code] with the import "
+"[code]options[/code] specified. The [code]platform_variants[/code] and "
+"[code]gen_files[/code] arrays will be modified by this function.\n"
+"This method must be overridden to do the actual importing work. See this "
+"class' description for an example of overriding this method."
msgstr ""
#: doc/classes/EditorInspector.xml:4
msgid "A tab used to edit properties of the selected node."
msgstr ""
+"Una pestaña que se utiliza para editar las propiedades del nodo seleccionado."
#: doc/classes/EditorInspector.xml:7
msgid ""
@@ -20687,10 +24458,75 @@ msgid ""
"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
"the singleton using [method EditorInterface.get_inspector]."
msgstr ""
+"El inspector de la edición se encuentra por defecto en la parte derecha del "
+"editor. Se utiliza para editar las propiedades del nodo seleccionado. Por "
+"ejemplo, puedes seleccionar un nodo como el Sprite2D y luego editar su "
+"transformación a través de la herramienta de inspección. El inspector del "
+"editor es una herramienta esencial en el flujo de trabajo del desarrollo del "
+"juego.\n"
+"[b]Nota:[/b] Esta clase no debe ser instanciada directamente. En lugar de "
+"eso, accede al singleton usando el [method EditorInterface.get_inspector]."
+
+#: doc/classes/EditorInspector.xml:17
+msgid ""
+"Refreshes the inspector.\n"
+"[b]Note:[/b] To save on CPU resources, calling this method will do nothing "
+"if the time specified in [code]docks/property_editor/auto_refresh_interval[/"
+"code] editor setting hasn't passed yet since this method was last called. "
+"(By default, this interval is set to 0.3 seconds.)"
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:30
+msgid ""
+"Emitted when the Edit button of an [Object] has been pressed in the "
+"inspector. This is mainly used in the remote scene tree inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:37
+#, fuzzy
+msgid "Emitted when a property is removed from the inspector."
+msgstr "Se emite cuando se elimina una preajuste."
+
+#: doc/classes/EditorInspector.xml:44
+#, fuzzy
+msgid "Emitted when a property is edited in the inspector."
+msgstr "La propiedad se comprueba en el inspector de edición."
+
+#: doc/classes/EditorInspector.xml:51
+msgid ""
+"Emitted when a property is keyed in the inspector. Properties can be keyed "
+"by clicking the \"key\" icon next to a property when the Animation panel is "
+"toggled."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:58
+#, fuzzy
+msgid "Emitted when a property is selected in the inspector."
+msgstr "La propiedad se comprueba en el inspector de edición."
+
+#: doc/classes/EditorInspector.xml:67
+msgid ""
+"Emitted when a boolean property is toggled in the inspector.\n"
+"[b]Note:[/b] This signal is never emitted if the internal [code]autoclear[/"
+"code] property enabled. Since this property is always enabled in the editor "
+"inspector, this signal is never emitted by the editor itself."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:77
+#, fuzzy
+msgid "Emitted when a resource is selected in the inspector."
+msgstr "Emitido cuando se selecciona un directorio."
+
+#: doc/classes/EditorInspector.xml:82
+msgid ""
+"Emitted when a property that requires a restart to be applied is edited in "
+"the inspector. This is only used in the Project Settings and Editor Settings."
+msgstr ""
#: doc/classes/EditorInspectorPlugin.xml:4
msgid "Plugin for adding custom property editors on inspector."
msgstr ""
+"Plugin para añadir editores de propiedades personalizados en el inspector."
#: doc/classes/EditorInspectorPlugin.xml:7
msgid ""
@@ -20706,36 +24542,55 @@ msgid ""
"Finally [method parse_end] will be called.\n"
"On each of these calls, the \"add\" functions can be called."
msgstr ""
+"Este plugin permite añadir editores de propiedades personalizados a "
+"[EditorInspector].\n"
+"Los plugins se registran a través del [method EditorPlugin."
+"add_inspector_plugin].\n"
+"Cuando se edita un objeto, se llama a la función [method can_handle] y debe "
+"devolver [code]true[/code] si el tipo de objeto está soportado.\n"
+"Si está soportada, se llamará a la función [method parse_begin], lo que "
+"permitirá colocar controles personalizados al principio de la clase.\n"
+"Posteriormente, el [method parse_category] y el [method parse_property] son "
+"llamados para cada categoría y propiedad. Ofrecen la posibilidad de añadir "
+"controles personalizados al inspector también.\n"
+"Finalmente, se llamará a [method parse_end].\n"
+"En cada una de estas llamadas, las funciones \"add\" pueden ser llamadas."
#: doc/classes/EditorInspectorPlugin.xml:24
msgid "Adds a custom control, not necessarily a property editor."
msgstr ""
+"Añade un control personalizado, no necesariamente un editor de propiedades."
#: doc/classes/EditorInspectorPlugin.xml:35
msgid "Adds a property editor, this must inherit [EditorProperty]."
-msgstr ""
+msgstr "Añade un editor de propiedades, este debe heredar [EditorPropiedad]."
#: doc/classes/EditorInspectorPlugin.xml:48
msgid ""
"Adds an editor that allows modifying multiple properties, this must inherit "
"[EditorProperty]."
msgstr ""
+"Añade un editor que permite modificar múltiples propiedades, este debe "
+"heredar [EditorProperty]."
#: doc/classes/EditorInspectorPlugin.xml:57
msgid "Returns [code]true[/code] if this object can be handled by this plugin."
msgstr ""
+"Devuelve [code]true[/code] si este objeto puede ser manejado por este plugin."
#: doc/classes/EditorInspectorPlugin.xml:66
msgid "Called to allow adding controls at the beginning of the list."
msgstr ""
+"Llamado para permitir la adición de controles al principio de la lista."
#: doc/classes/EditorInspectorPlugin.xml:77
msgid "Called to allow adding controls at the beginning of the category."
msgstr ""
+"Llamado para permitir la adición de controles al principio de la categoría."
#: doc/classes/EditorInspectorPlugin.xml:84
msgid "Called to allow adding controls at the end of the list."
-msgstr ""
+msgstr "Llamado para permitir la adición de controles al final de la lista."
#: doc/classes/EditorInspectorPlugin.xml:103
msgid ""
@@ -20744,10 +24599,14 @@ msgid ""
"built-in editor for this property, otherwise allows to insert a custom "
"editor before the built-in one."
msgstr ""
+"Llamado a permitir que se añadan editores de propiedades específicas al "
+"inspector. Normalmente estos heredan [EditorProperty]. Devolver [code]true[/"
+"code] elimina el editor incorporado para esta propiedad, de lo contrario "
+"permite insertar un editor personalizado antes del incorporado."
#: doc/classes/EditorInterface.xml:4
msgid "Godot editor's interface."
-msgstr ""
+msgstr "La interfaz del editor de Godot."
#: doc/classes/EditorInterface.xml:7
msgid ""
@@ -20759,101 +24618,215 @@ msgid ""
"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
"the singleton using [method EditorPlugin.get_editor_interface]."
msgstr ""
+"EditorInterface te da el control sobre la ventana del editor de Godot. "
+"Permite personalizar la ventana, guardar y (re)cargar escenas, renderizar "
+"vistas previas de la malla, inspeccionar y editar recursos y objetos, y "
+"proporciona acceso a [EditorSettings], [EditorFileSystem], "
+"[EditorResourcePreview], [ScriptEditor], la vista del editor e información "
+"sobre las escenas.\n"
+"[b]Nota:[/b] Esta clase no debe ser instanciada directamente. En lugar de "
+"eso, accede al singleton usando el [method EditorPlugin."
+"get_editor_interface]."
#: doc/classes/EditorInterface.xml:19
msgid "Edits the given [Resource]."
-msgstr ""
+msgstr "Edita el [Resource] dado."
#: doc/classes/EditorInterface.xml:26
+#, fuzzy
msgid ""
-"Returns the main container of Godot editor's window. You can use it, for "
-"example, to retrieve the size of the container and place your controls "
+"Returns the main container of Godot editor's window. For example, you can "
+"use it to retrieve the size of the container and place your controls "
"accordingly."
msgstr ""
+"Devuelve el contenedor principal de la ventana del editor de Godot. Puedes "
+"usarlo, por ejemplo, para recuperar el tamaño del contenedor y colocar los "
+"controles en consecuencia."
-#: doc/classes/EditorInterface.xml:39
-msgid "Returns the edited (current) scene's root [Node]."
+#: doc/classes/EditorInterface.xml:33
+#, fuzzy
+msgid "Returns the current path being viewed in the [FileSystemDock]."
msgstr ""
+"Devuelve el estado de la animacion que se esta reproduciendo actualmente."
-#: doc/classes/EditorInterface.xml:46
-msgid "Returns the [EditorSettings]."
-msgstr ""
+#: doc/classes/EditorInterface.xml:40
+msgid "Returns the edited (current) scene's root [Node]."
+msgstr "Devuelve la raíz de la escena editada (actual) [Nodo]."
-#: doc/classes/EditorInterface.xml:53
-msgid "Returns the editor [Viewport]."
+#: doc/classes/EditorInterface.xml:47
+#, fuzzy
+msgid "Returns the editor's [EditorSettings] instance."
+msgstr "Devuelve el [EditorSettings]."
+
+#: doc/classes/EditorInterface.xml:54
+msgid ""
+"Returns the main editor control. Use this as a parent for main screens.\n"
+"[b]Note:[/b] This returns the main editor control containing the whole "
+"editor, not the 2D or 3D viewports specifically."
msgstr ""
-#: doc/classes/EditorInterface.xml:72
+#: doc/classes/EditorInterface.xml:62
+#, fuzzy
+msgid "Returns the editor's [FileSystemDock] instance."
+msgstr "Devuelve el [EditorFileSystem]."
+
+#: doc/classes/EditorInterface.xml:69
+#, fuzzy
+msgid "Returns the editor's [EditorInspector] instance."
+msgstr "Devuelve la instancia del singleton [EditorInterface]."
+
+#: doc/classes/EditorInterface.xml:76
msgid "Returns an [Array] with the file paths of the currently opened scenes."
msgstr ""
+"Devuelve una [Array] con las rutas de archivo de las escenas abiertas "
+"actualmente."
-#: doc/classes/EditorInterface.xml:79
-msgid "Returns the [EditorFileSystem]."
+#: doc/classes/EditorInterface.xml:83
+#, fuzzy
+msgid ""
+"Returns the name of the scene that is being played. If no scene is currently "
+"being played, returns an empty string."
msgstr ""
+"Devuelve el nombre del VCS si el VCS ha sido inicializado, si no, devuelve "
+"una cadena vacía."
-#: doc/classes/EditorInterface.xml:86
-msgid "Returns the [EditorResourcePreview]."
-msgstr ""
+#: doc/classes/EditorInterface.xml:90
+#, fuzzy
+msgid "Returns the editor's [EditorFileSystem] instance."
+msgstr "Devuelve el [EditorFileSystem]."
-#: doc/classes/EditorInterface.xml:93
-msgid "Returns the [ScriptEditor]."
-msgstr ""
+#: doc/classes/EditorInterface.xml:97
+#, fuzzy
+msgid "Returns the editor's [EditorResourcePreview] instance."
+msgstr "Devuelve el [EditorResourcePreview]."
-#: doc/classes/EditorInterface.xml:106
-msgid "Returns the [EditorSelection]."
+#: doc/classes/EditorInterface.xml:104
+#, fuzzy
+msgid "Returns the editor's [ScriptEditor] instance."
+msgstr "Devuelve el [ScriptEditor]."
+
+#: doc/classes/EditorInterface.xml:111
+msgid ""
+"Returns the path of the directory currently selected in the "
+"[FileSystemDock]. If a file is selected, its base directory will be returned "
+"using [method String.get_base_dir] instead."
msgstr ""
-#: doc/classes/EditorInterface.xml:117
+#: doc/classes/EditorInterface.xml:118
+#, fuzzy
+msgid "Returns the editor's [EditorSelection] instance."
+msgstr "Devuelve el [EditorSelection]."
+
+#: doc/classes/EditorInterface.xml:129
+#, fuzzy
msgid ""
-"Shows the given property on the given [code]object[/code] in the Editor's "
+"Shows the given property on the given [code]object[/code] in the editor's "
"Inspector dock."
msgstr ""
+"Muestra la propiedad dada en el [code]object[/code] dado en el dock del "
+"Inspector del Editor."
-#: doc/classes/EditorInterface.xml:126
+#: doc/classes/EditorInterface.xml:136
+#, fuzzy
msgid ""
-"Returns the enabled status of a plugin. The plugin name is the same as its "
-"directory name."
+"Returns [code]true[/code] if a scene is currently being played, [code]false[/"
+"code] otherwise. Paused scenes are considered as being played."
+msgstr ""
+"Devuelve [code]true[/code] si el dominio esta siendo finalizado, "
+"[code]false[/code] en caso contrario."
+
+#: doc/classes/EditorInterface.xml:145
+#, fuzzy
+msgid ""
+"Returns [code]true[/code] if the specified [code]plugin[/code] is enabled. "
+"The plugin name is the same as its directory name."
msgstr ""
+"Devuelve el estado habilitado de un plugin. El nombre del plugin es el mismo "
+"que su nombre de directorio."
-#: doc/classes/EditorInterface.xml:137
+#: doc/classes/EditorInterface.xml:156
msgid ""
"Returns mesh previews rendered at the given size as an [Array] of "
"[Texture2D]s."
msgstr ""
+"Devuelve las previsualizaciones de la malla renderizadas al tamaño dado como "
+"una [Array] de [Texture2D]."
-#: doc/classes/EditorInterface.xml:146
+#: doc/classes/EditorInterface.xml:165
msgid "Opens the scene at the given path."
+msgstr "Abre la escena en de la ruta dada."
+
+#: doc/classes/EditorInterface.xml:172
+#, fuzzy
+msgid "Plays the currently active scene."
+msgstr "Devuelve la escena actualmente activa del editor."
+
+#: doc/classes/EditorInterface.xml:181
+#, fuzzy
+msgid "Plays the scene specified by its filepath."
+msgstr "Recarga la escena de la ruta dada."
+
+#: doc/classes/EditorInterface.xml:188
+msgid "Plays the main scene."
msgstr ""
-#: doc/classes/EditorInterface.xml:155
+#: doc/classes/EditorInterface.xml:197
msgid "Reloads the scene at the given path."
-msgstr ""
+msgstr "Recarga la escena de la ruta dada."
-#: doc/classes/EditorInterface.xml:162
+#: doc/classes/EditorInterface.xml:204
msgid ""
"Saves the scene. Returns either [code]OK[/code] or [code]ERR_CANT_CREATE[/"
"code] (see [@GlobalScope] constants)."
msgstr ""
+"Guarda la escena. Devuelve [code]OK[/code] o [code]ERR_CANT_CREATE[/code] "
+"(ver las constantes de [@GlobalScope])."
-#: doc/classes/EditorInterface.xml:173
+#: doc/classes/EditorInterface.xml:215
msgid "Saves the scene as a file at [code]path[/code]."
-msgstr ""
+msgstr "Guarda la escena como un archivo en [code]path[/code]."
-#: doc/classes/EditorInterface.xml:182
+#: doc/classes/EditorInterface.xml:224
msgid ""
"Selects the file, with the path provided by [code]file[/code], in the "
"FileSystem dock."
msgstr ""
+"Selecciona el archivo, con la ruta proporcionada por [code]file[/code], en "
+"el dock de archivos del sistema."
+
+#: doc/classes/EditorInterface.xml:233
+msgid ""
+"Sets the editor's current main screen to the one specified in [code]name[/"
+"code]. [code]name[/code] must match the text of the tab in question exactly "
+"([code]2D[/code], [code]3D[/code], [code]Script[/code], [code]AssetLib[/"
+"code])."
+msgstr ""
-#: doc/classes/EditorInterface.xml:201
+#: doc/classes/EditorInterface.xml:244
msgid ""
"Sets the enabled status of a plugin. The plugin name is the same as its "
"directory name."
msgstr ""
+"Establece el estado habilitado de un plugin. El nombre del plugin es el "
+"mismo que su nombre de directorio."
+
+#: doc/classes/EditorInterface.xml:251
+#, fuzzy
+msgid "Stops the scene that is currently playing."
+msgstr "Para la animacion en ejecucion."
+
+#: doc/classes/EditorInterface.xml:257
+#, fuzzy
+msgid ""
+"If [code]true[/code], enables distraction-free mode which hides side docks "
+"to increase the space available for the main view."
+msgstr ""
+"Si [code]true[/code], permite la desconexión de las conexiones existentes en "
+"el GraphEdit arrastrando el extremo derecho."
#: doc/classes/EditorNode3DGizmo.xml:4
msgid "Custom gizmo for editing Node3D objects."
-msgstr ""
+msgstr "Un gizmo personalizado para editar objetos de Node3D."
#: doc/classes/EditorNode3DGizmo.xml:7
msgid ""
@@ -20861,87 +24834,165 @@ msgid ""
"(handles) for Node3D objects. See [EditorNode3DGizmoPlugin] for more "
"information."
msgstr ""
+"Gizmo personalizado que se utiliza para proporcionar visualización y edición "
+"personalizada (handles) para los objetos de Node3D. Ver "
+"[EditorNode3DGizmoPlugin] para más información."
+
+#: doc/classes/EditorNode3DGizmo.xml:18
+#, fuzzy
+msgid ""
+"Adds the specified [code]segments[/code] to the gizmo's collision shape for "
+"picking. Call this function during [method redraw]."
+msgstr ""
+"Añade una billboard sin escala para la visualización. Llame a esta función "
+"durante el [method redraw]."
-#: doc/classes/EditorNode3DGizmo.xml:26
+#: doc/classes/EditorNode3DGizmo.xml:27
msgid ""
"Adds collision triangles to the gizmo for picking. A [TriangleMesh] can be "
"generated from a regular [Mesh] too. Call this function during [method "
"redraw]."
msgstr ""
+"Añade triángulos de colisión al gizmo para recoger. También se puede generar "
+"un [TriangleMesh] a partir de un [Mesh] normal. Llama a esta función durante "
+"el [method redraw]."
-#: doc/classes/EditorNode3DGizmo.xml:41
+#: doc/classes/EditorNode3DGizmo.xml:42
msgid ""
"Adds a list of handles (points) which can be used to deform the object being "
"edited.\n"
"There are virtual functions which will be called upon editing of these "
"handles. Call this function during [method redraw]."
msgstr ""
+"Añade una lista de manejadores (puntos) que pueden utilizarse para deformar "
+"el objeto que se está editando.\n"
+"Hay funciones virtuales que serán llamadas al editar estos \"manejadores\". "
+"Llama a esta función durante el [method redraw]."
-#: doc/classes/EditorNode3DGizmo.xml:57
+#: doc/classes/EditorNode3DGizmo.xml:58
msgid ""
"Adds lines to the gizmo (as sets of 2 points), with a given material. The "
"lines are used for visualizing the gizmo. Call this function during [method "
"redraw]."
msgstr ""
+"Añade líneas al gizmo (como conjuntos de 2 puntos), con un material "
+"determinado. Las líneas se utilizan para visualizar el aparato. Llama a esta "
+"función durante [method redraw]."
+
+#: doc/classes/EditorNode3DGizmo.xml:73
+msgid ""
+"Adds a mesh to the gizmo with the specified [code]billboard[/code] state, "
+"[code]skeleton[/code] and [code]material[/code]. If [code]billboard[/code] "
+"is [code]true[/code], the mesh will rotate to always face the camera. Call "
+"this function during [method redraw]."
+msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:84
+#: doc/classes/EditorNode3DGizmo.xml:86
msgid ""
"Adds an unscaled billboard for visualization. Call this function during "
"[method redraw]."
msgstr ""
+"Añade una billboard sin escala para la visualización. Llame a esta función "
+"durante el [method redraw]."
+
+#: doc/classes/EditorNode3DGizmo.xml:93
+msgid ""
+"Removes everything in the gizmo including meshes, collisions and handles."
+msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:103
+#: doc/classes/EditorNode3DGizmo.xml:106
msgid ""
"Commit a handle being edited (handles must have been previously added by "
"[method add_handles]).\n"
"If the [code]cancel[/code] parameter is [code]true[/code], an option to "
"restore the edited value to the original is provided."
msgstr ""
+"Comprueba que un \"manejador\" está siendo editado (los \"handles\" deben "
+"haber sido añadidos previamente por [method add_handles]).\n"
+"Si el parámetro [code]cancel[/code] es [code]true[/code], se proporciona una "
+"opción para restaurar el valor editado al original."
-#: doc/classes/EditorNode3DGizmo.xml:113
+#: doc/classes/EditorNode3DGizmo.xml:116
msgid ""
"Gets the name of an edited handle (handles must have been previously added "
"by [method add_handles]).\n"
"Handles can be named for reference to the user when editing."
msgstr ""
+"Obtiene el nombre de un \"manejador\" editado (los \"manejadores\" deben "
+"haber sido añadidos previamente por [method add_handles]).\n"
+"Los \"manejadores\" pueden ser nombrados por referencia al usuario cuando se "
+"edita."
-#: doc/classes/EditorNode3DGizmo.xml:123
+#: doc/classes/EditorNode3DGizmo.xml:126
msgid ""
"Gets actual value of a handle. This value can be anything and used for "
"eventually undoing the motion when calling [method commit_handle]."
msgstr ""
+"Obtiene el valor real de un manejador. Este valor puede ser cualquier cosa y "
+"se usa para eventualmente deshacer el movimiento cuando se llama a [method "
+"commit_handle]."
-#: doc/classes/EditorNode3DGizmo.xml:130
+#: doc/classes/EditorNode3DGizmo.xml:133
msgid ""
"Returns the [EditorNode3DGizmoPlugin] that owns this gizmo. It's useful to "
"retrieve materials using [method EditorNode3DGizmoPlugin.get_material]."
msgstr ""
+"Devuelve el [EditorNode3DGizmoPlugin] que posee este gizmo. Es útil para "
+"recuperar materiales usando el [method EditorNode3DGizmoPlugin.get_material]."
-#: doc/classes/EditorNode3DGizmo.xml:137
+#: doc/classes/EditorNode3DGizmo.xml:140
msgid "Returns the Node3D node associated with this gizmo."
-msgstr ""
+msgstr "Devuelve el nodo Node3D asociado a este gizmo."
-#: doc/classes/EditorNode3DGizmo.xml:146
-msgid "Gets whether a handle is highlighted or not."
+#: doc/classes/EditorNode3DGizmo.xml:149
+#, fuzzy
+msgid ""
+"Returns [code]true[/code] if the handle at index [code]index[/code] is "
+"highlighted by being hovered with the mouse."
msgstr ""
+"Devuelve [code]true[/code] si la pista en el índice [code]idx[/code] está "
+"habilitada."
-#: doc/classes/EditorNode3DGizmo.xml:153
+#: doc/classes/EditorNode3DGizmo.xml:156
+#, fuzzy
msgid ""
-"This function is called when the Node3D this gizmo refers to changes (the "
+"This function is called when the [Node3D] this gizmo refers to changes (the "
"[method Node3D.update_gizmo] is called)."
msgstr ""
+"Esta función se llama cuando el Node3D este gizmo se refiere a los cambios "
+"(se llama el [method Node3D.update_gizmo])."
-#: doc/classes/EditorNode3DGizmo.xml:166
+#: doc/classes/EditorNode3DGizmo.xml:169
msgid ""
"This function is used when the user drags a gizmo handle (previously added "
"with [method add_handles]) in screen coordinates.\n"
"The [Camera3D] is also provided so screen coordinates can be converted to "
"raycasts."
msgstr ""
+"Esta función se utiliza cuando el usuario arrastra un manejador gizmo "
+"(previamente añadido con [method add_handles]) en las coordenadas de la "
+"pantalla.\n"
+"También se proporciona la [Camera3D] para que las coordenadas de la pantalla "
+"puedan ser convertidas a raycasts."
+
+#: doc/classes/EditorNode3DGizmo.xml:179
+msgid ""
+"Sets the gizmo's hidden state. If [code]true[/code], the gizmo will be "
+"hidden. If [code]false[/code], it will be shown."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:188
+#, fuzzy
+msgid ""
+"Sets the reference [Node3D] node for the gizmo. [code]node[/code] must "
+"inherit from [Node3D]."
+msgstr ""
+"Establece el [enum TangentMode] izquierdo para el punto en [code]index[/"
+"code] a [code]mode[/code]."
#: doc/classes/EditorNode3DGizmoPlugin.xml:4
msgid "Used by the editor to define Node3D gizmo types."
-msgstr ""
+msgstr "Usado por el editor para definir los tipos de gizmo de Node3D."
#: doc/classes/EditorNode3DGizmoPlugin.xml:7
msgid ""
@@ -20950,30 +25001,43 @@ msgid ""
"gizmos, or creating a new [EditorNode3DGizmo] type. See the tutorial in the "
"documentation for more info."
msgstr ""
+"EditorNode3DGizmoPlugin te permite definir un nuevo tipo de Gizmo. Hay dos "
+"formas principales de hacerlo: extendiendo [EditorNode3DGizmoPlugin] para "
+"los gizmos más simples, o creando un nuevo tipo [EditorNode3DGizmo]. Mira el "
+"tutorial en la documentación para más información."
#: doc/classes/EditorNode3DGizmoPlugin.xml:10
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/plugins/editor/"
"spatial_gizmos.html"
msgstr ""
+"https://docs.godotengine.org/es/latest/tutorials/plugins/editor/"
+"spatial_gizmos.html"
#: doc/classes/EditorNode3DGizmoPlugin.xml:21
msgid ""
"Adds a new material to the internal material list for the plugin. It can "
"then be accessed with [method get_material]. Should not be overridden."
msgstr ""
+"Añade un nuevo material a la lista de material interno para el plugin. "
+"Entonces se puede acceder a él con [method get_material]. No debe ser "
+"sobreescrito."
#: doc/classes/EditorNode3DGizmoPlugin.xml:28
msgid ""
"Override this method to define whether the gizmo can be hidden or not. "
"Returns [code]true[/code] if not overridden."
msgstr ""
+"Sobreescribe este método para definir si el gizmo puede ser escondido o no. "
+"Devuelve [code]true[/code] si no está sobrescrito."
#: doc/classes/EditorNode3DGizmoPlugin.xml:43
msgid ""
"Override this method to commit gizmo handles. Called for this plugin's "
"active gizmos."
msgstr ""
+"Sobreescribe este método para confirmar los manejadores de los gizmos. "
+"Llamado por los gizmos activos de este plugin."
#: doc/classes/EditorNode3DGizmoPlugin.xml:52
msgid ""
@@ -20981,6 +25045,9 @@ msgid ""
"nodes of your choice, return [code]null[/code] for the rest of nodes. See "
"also [method has_gizmo]."
msgstr ""
+"Sobreescribe este método para devolver un [EditorNode3DGizmo] personalizado "
+"para los nodos espaciales de su elección, devuelve [code]null[/code] para el "
+"resto de los nodos. Ver también [method has_gizmo]."
#: doc/classes/EditorNode3DGizmoPlugin.xml:63
msgid ""
@@ -20989,6 +25056,10 @@ msgid ""
"[method get_material] and used in [method EditorNode3DGizmo.add_handles]. "
"Should not be overridden."
msgstr ""
+"Crea un material manejador con sus variantes (seleccionadas y/o editables) y "
+"las añade a la lista de material interno. Entonces se puede acceder a ellas "
+"con [method get_material] y utilizarlas en [method EditorNode3DGizmo."
+"add_handles]. No debe ser sobreescrito."
#: doc/classes/EditorNode3DGizmoPlugin.xml:78
msgid ""
@@ -20997,6 +25068,10 @@ msgid ""
"[method get_material] and used in [method EditorNode3DGizmo."
"add_unscaled_billboard]. Should not be overridden."
msgstr ""
+"Crea un material de iconos con sus variantes (seleccionadas y/o editables) y "
+"las añade a la lista de material interno. Entonces se puede acceder a ellos "
+"con [method get_material] y utilizarlos en [method EditorNode3DGizmo."
+"add_unscaled_billboard]. No debe ser sobrescrito."
#: doc/classes/EditorNode3DGizmoPlugin.xml:95
msgid ""
@@ -21005,18 +25080,26 @@ msgid ""
"[method get_material] and used in [method EditorNode3DGizmo.add_mesh] and "
"[method EditorNode3DGizmo.add_lines]. Should not be overridden."
msgstr ""
+"Crea un material sin sombras con sus variantes (seleccionadas y/o editables) "
+"y las añade a la lista de material interno. A continuación, se puede acceder "
+"a ellos con [method get_material] y utilizarlos en [method EditorNode3DGizmo."
+"add_mesh] y [method EditorNode3DGizmo.add_lines]. No deben ser sobreescrito."
#: doc/classes/EditorNode3DGizmoPlugin.xml:106
msgid ""
"Override this method to provide gizmo's handle names. Called for this "
"plugin's active gizmos."
msgstr ""
+"Sobreescribir este método para proporcionar los nombres de los manejadores "
+"de los gizmos. Llamado por los gizmos activos de este plugin."
#: doc/classes/EditorNode3DGizmoPlugin.xml:117
msgid ""
"Gets actual value of a handle from gizmo. Called for this plugin's active "
"gizmos."
msgstr ""
+"Obtiene el valor real de un manejador de un aparato. Llamado por los gizmos "
+"activos de este plugin."
#: doc/classes/EditorNode3DGizmoPlugin.xml:128
msgid ""
@@ -21024,48 +25107,76 @@ msgid ""
"is provided, it will try to get the corresponding variant (selected and/or "
"editable)."
msgstr ""
+"Obtiene el material de la lista interna de materiales. Si se proporciona un "
+"[EditorNode3DGizmo], intentará obtener la variable correspondiente "
+"(seleccionada y/o editable)."
#: doc/classes/EditorNode3DGizmoPlugin.xml:135
msgid ""
"Override this method to provide the name that will appear in the gizmo "
"visibility menu."
msgstr ""
+"Sobrescribe este método para proporcionar el nombre que aparecerá en el menú "
+"de visibilidad del gizmo."
-#: doc/classes/EditorNode3DGizmoPlugin.xml:150
+#: doc/classes/EditorNode3DGizmoPlugin.xml:142
+msgid ""
+"Override this method to set the gizmo's priority. Higher values correspond "
+"to higher priority. If a gizmo with higher priority conflicts with another "
+"gizmo, only the gizmo with higher priority will be used.\n"
+"All built-in editor gizmos return a priority of [code]-1[/code]. If not "
+"overridden, this method will return [code]0[/code], which means custom "
+"gizmos will automatically override built-in gizmos."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:152
msgid ""
"Override this method to define which Node3D nodes have a gizmo from this "
"plugin. Whenever a [Node3D] node is added to a scene this method is called, "
"if it returns [code]true[/code] the node gets a generic [EditorNode3DGizmo] "
"assigned and is added to this plugin's list of active gizmos."
msgstr ""
+"Sobrescribe este método para definir qué nodos de Node3D tienen un gizmo de "
+"este plugin. Cada vez que se añade un nodo [Node3D] a una escena se llama a "
+"este método, si devuelve [code]true[/code] el nodo obtiene un "
+"[EditorNode3DGizmo] genérico asignado y se añade a la lista de gizmos "
+"activos de este plugin."
-#: doc/classes/EditorNode3DGizmoPlugin.xml:161
+#: doc/classes/EditorNode3DGizmoPlugin.xml:163
msgid ""
"Gets whether a handle is highlighted or not. Called for this plugin's active "
"gizmos."
msgstr ""
+"Averigua si un manejador está resaltado o no. Llamado por los gizmos activos "
+"de este plugin."
-#: doc/classes/EditorNode3DGizmoPlugin.xml:168
+#: doc/classes/EditorNode3DGizmoPlugin.xml:170
msgid ""
"Override this method to define whether Node3D with this gizmo should be "
"selecteble even when the gizmo is hidden."
msgstr ""
+"Sobrescribe este método para definir si Node3D con este aparato debe ser "
+"seleccionable incluso cuando el aparato está oculto."
-#: doc/classes/EditorNode3DGizmoPlugin.xml:177
+#: doc/classes/EditorNode3DGizmoPlugin.xml:179
msgid ""
"Callback to redraw the provided gizmo. Called for this plugin's active "
"gizmos."
msgstr ""
+"Llamada para redibujar el gizmo suministrado. Llamado por los gizmos activos "
+"de este plugin."
-#: doc/classes/EditorNode3DGizmoPlugin.xml:192
+#: doc/classes/EditorNode3DGizmoPlugin.xml:194
msgid ""
"Update the value of a handle after it has been updated. Called for this "
"plugin's active gizmos."
msgstr ""
+"Actualizar el valor de un manejador después de haber sido actualizado. "
+"Llamado por los artilugios activos de este plugin."
#: doc/classes/EditorPlugin.xml:4
msgid "Used by the editor to extend its functionality."
-msgstr ""
+msgstr "Utilizado por el editor para ampliar su funcionalidad."
#: doc/classes/EditorPlugin.xml:7
msgid ""
@@ -21074,16 +25185,23 @@ msgid ""
"plugins and export plugins. See also [EditorScript] to add functions to the "
"editor."
msgstr ""
+"Los plugins son usados por el editor para extender la funcionalidad. Los "
+"tipos más comunes de plugins son los que editan un determinado nodo o tipo "
+"de recurso, importan plugins y exportan plugins. Véase también "
+"[EditorScript] para añadir funciones al editor."
#: doc/classes/EditorPlugin.xml:10
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/plugins/editor/index.html"
msgstr ""
+"https://docs.godotengine.org/es/latest/tutorials/plugins/editor/index.html"
#: doc/classes/EditorPlugin.xml:21
msgid ""
"Adds a script at [code]path[/code] to the Autoload list as [code]name[/code]."
msgstr ""
+"Añade un script en [code]path[/code] a la lista de Autoload como [code]name[/"
+"code]."
#: doc/classes/EditorPlugin.xml:32
msgid ""
@@ -21093,6 +25211,11 @@ msgid ""
"your custom control with [method remove_control_from_bottom_panel] and free "
"it with [method Node.queue_free]."
msgstr ""
+"Añade un control al panel inferior (junto con la salida, depuración, "
+"animación, etc.). Devuelve una referencia al botón añadido. Depende de ti "
+"ocultar/mostrar el botón cuando sea necesario. Cuando tu plugin está "
+"desactivado, asegúrate de quitar tu control personalizado con [method "
+"remove_control_from_bottom_panel] y libéralo con [method Node.queue_free]."
#: doc/classes/EditorPlugin.xml:43
msgid ""
@@ -21105,6 +25228,14 @@ msgid ""
"with [method remove_control_from_container] and free it with [method Node."
"queue_free]."
msgstr ""
+"Añade un control personalizado a un contenedor (véase [enum "
+"CustomControlContainer]). Hay muchas ubicaciones donde se pueden agregar "
+"controles personalizados en la interfaz de usuario del editor.\n"
+"Por favor, recuerde que tiene que gestionar la visibilidad de sus controles "
+"personalizados usted mismo (y probablemente lo oculte después de añadirlo).\n"
+"Cuando tu plugin esté desactivado, asegúrate de eliminar tu control "
+"personalizado con [method remove_control_from_container] y libéralo con "
+"[method Node.queue_free]."
#: doc/classes/EditorPlugin.xml:56
msgid ""
@@ -21115,6 +25246,13 @@ msgid ""
"with [method remove_control_from_docks] and free it with [method Node."
"queue_free]."
msgstr ""
+"Añade el control a una ranura específica del dock (ver [enum DockSlot] para "
+"las opciones).\n"
+"Si se reposiciona el dock y mientras el plugin esté activo, el editor "
+"guardará la posición del dock en sesiones posteriores.\n"
+"Cuando tu plugin esté desactivado, asegúrate de eliminar tu control "
+"personalizado con [method remove_control_from_docks] y libéralo con [method "
+"Node.queue_free]."
#: doc/classes/EditorPlugin.xml:73
msgid ""
@@ -21129,6 +25267,16 @@ msgid ""
"During run-time, this will be a simple object with a script so this function "
"does not need to be called then."
msgstr ""
+"Añade un tipo personalizado, que aparecerá en la lista de nodos o recursos. "
+"Opcionalmente se puede pasar un icono.\n"
+"Cuando se selecciona un nodo o recurso dado, se instanciará el tipo base "
+"(por ejemplo, \"Nodo3D\", \"Control\", \"Recurso\"), luego el script se "
+"cargará y se establecerá en este objeto.\n"
+"Puedes usar el método virtual [method handles] para comprobar si tu objeto "
+"personalizado se está editando comprobando el script o usando la palabra "
+"clave [code]is[/code].\n"
+"Durante el tiempo de ejecución, este será un objeto simple con un script, "
+"por lo que esta función no necesita ser llamada entonces."
#: doc/classes/EditorPlugin.xml:131
msgid ""
@@ -21136,6 +25284,10 @@ msgid ""
"calls [code]callback[/code] on an instance of [code]handler[/code] with a "
"parameter [code]ud[/code] when user activates it."
msgstr ""
+"Añade un elemento de menú personalizado a [b]Proyecto > Herramientas[/b] "
+"como [code]name[/code] que llama a [code]callback[/code] en una instancia de "
+"[code]handler[/code] con un parámetro [code]ud[/code] cuando el usuario lo "
+"activa."
#: doc/classes/EditorPlugin.xml:142
msgid ""
@@ -21143,8 +25295,18 @@ msgid ""
"[code]submenu[/code] should be an object of class [PopupMenu]. This submenu "
"should be cleaned up using [code]remove_tool_menu_item(name)[/code]."
msgstr ""
+"Añade un submenú personalizado en [b]Proyecto > Herramientas >[/b] "
+"[code]name[/code]. El [code]submenu[/code] debe ser un objeto de la clase "
+"[PopupMenu]. Este submenú debe ser limpiado usando "
+"[code]remove_tool_menu_item(name)[/code]."
+
+#: doc/classes/EditorPlugin.xml:151
+msgid ""
+"Registers a custom translation parser plugin for extracting translatable "
+"strings from custom files."
+msgstr ""
-#: doc/classes/EditorPlugin.xml:149
+#: doc/classes/EditorPlugin.xml:158
msgid ""
"This method is called when the editor is about to save the project, switch "
"to another tab, etc. It asks the plugin to apply any pending state changes "
@@ -21152,33 +25314,48 @@ msgid ""
"This is used, for example, in shader editors to let the plugin know that it "
"must apply the shader code being written by the user to the object."
msgstr ""
+"Este método se llama cuando el editor está a punto de guardar el proyecto, "
+"cambiar a otra pestaña, etc. Le pide al plugin que aplique cualquier cambio "
+"de estado pendiente para asegurar la consistencia.\n"
+"Se utiliza, por ejemplo, en los editores de sombreadores para que el plugin "
+"sepa que debe aplicar el código de sombreado que está escribiendo el usuario "
+"al objeto."
-#: doc/classes/EditorPlugin.xml:163
+#: doc/classes/EditorPlugin.xml:172
msgid ""
"Clear all the state and reset the object being edited to zero. This ensures "
"your plugin does not keep editing a currently existing node, or a node from "
"the wrong scene."
msgstr ""
+"Borra todo el estado y pone a cero el objeto que se está editando. Esto "
+"asegura que tu plugin no siga editando un nodo existente o un nodo de la "
+"escena equivocada."
-#: doc/classes/EditorPlugin.xml:170
+#: doc/classes/EditorPlugin.xml:179
msgid ""
"Called by the engine when the user disables the [EditorPlugin] in the Plugin "
"tab of the project settings window."
msgstr ""
+"Llamado por el motor cuando el usuario desactiva el [EditorPlugin] en la "
+"pestaña Plugin de la ventana de configuración del proyecto."
-#: doc/classes/EditorPlugin.xml:179
+#: doc/classes/EditorPlugin.xml:188
msgid ""
"This function is used for plugins that edit specific object types (nodes or "
"resources). It requests the editor to edit the given object."
msgstr ""
+"Esta función se utiliza para los plugins que editan tipos de objetos "
+"específicos (nodos o recursos). Solicita al editor que edite el objeto dado."
-#: doc/classes/EditorPlugin.xml:186
+#: doc/classes/EditorPlugin.xml:195
msgid ""
"Called by the engine when the user enables the [EditorPlugin] in the Plugin "
"tab of the project settings window."
msgstr ""
+"Llamado por el motor cuando el usuario habilita el [EditorPlugin] en la "
+"pestaña Plugin de la ventana de configuración del proyecto."
-#: doc/classes/EditorPlugin.xml:211
+#: doc/classes/EditorPlugin.xml:220
msgid ""
"Called when there is a root node in the current edited scene, [method "
"handles] is implemented and an [InputEvent] happens in the 2D viewport. "
@@ -21202,8 +25379,29 @@ msgid ""
" return forward\n"
"[/codeblock]"
msgstr ""
+"Llamado cuando hay un nodo raíz en la escena editada actual, se implementa "
+"[method handles] y se produce un [InputEvent] en la vista 2D. Intercepta el "
+"[InputEvent], si [code]return true[/code] [EditorPlugin] consume el "
+"[code]event[/code], de lo contrario reenvía el [code]event[/code] a otras "
+"clases de Editor. Ejemplo:\n"
+"[codeblock]\n"
+"# Previene que el InputEvent se reenvie a otras clases Editor\n"
+"func forward_canvas_gui_input(event):\n"
+" var adelante = true\n"
+" return adelante\n"
+"[/codeblock]\n"
+"Obliga [code]return false[/code] para reenviar a otras clases Editor el "
+"[InputEvent]. Ejemplo:\n"
+"[codeblock]\n"
+"# Consume InputEventMouseMotion y lo reenvia hacia otros tipos InputEvent\n"
+"func forward_canvas_gui_input(event):\n"
+" var adelante = false\n"
+" if event is InputEventMouseMotion:\n"
+" adelante = true\n"
+" return adelante\n"
+"[/codeblock]"
-#: doc/classes/EditorPlugin.xml:237
+#: doc/classes/EditorPlugin.xml:246
msgid ""
"Called when there is a root node in the current edited scene, [method "
"handles] is implemented and an [InputEvent] happens in the 3D viewport. "
@@ -21227,21 +25425,47 @@ msgid ""
" return forward\n"
"[/codeblock]"
msgstr ""
+"Llamado cuando hay un nodo raíz en la escena editada actual, se implementa "
+"[method handles] y se produce un [InputEvent] en el puerto de visualización "
+"3D. Intercepta el [InputEvent], si [code]devuelve true[/code] [EditorPlugin] "
+"consume el [code]event[/code], de lo contrario reenvía el [code]event[/code] "
+"a otras clases de Editor. Ejemplo:\n"
+"[codeblock]\n"
+"# Evita que el InputEvent llegue a otras clases de editores\n"
+"func forward_spatial_gui_input(camera, event):\n"
+" var adelante = true\n"
+" return adelante\n"
+"[/codeblock]\n"
+"Debe [code]return false[/code] para reenviar el [InputEvent] a otras clases "
+"de editores. Ejemplo:\n"
+"[codeblock]\n"
+"# Consume el InputEventMouseMotion y reenvía otros tipos de InputEvent\n"
+"func forward_spatial_gui_input(camera, event):\n"
+" var adelante = false\n"
+" if event is InputEventMouseMotion:\n"
+" adelante = true\n"
+" return adelante\n"
+"[/codeblock]"
-#: doc/classes/EditorPlugin.xml:259
+#: doc/classes/EditorPlugin.xml:268
msgid ""
"This is for editors that edit script-based objects. You can return a list of "
"breakpoints in the format ([code]script:line[/code]), for example: "
"[code]res://path_to_script.gd:25[/code]."
msgstr ""
+"Esto es para los editores que editan objetos basados en scripts. Puede "
+"devolver una lista de puntos de interrupción en el formato ([code]script:"
+"line[/code]), por ejemplo: [code]res://ruta_a_script.gd:25[/code]."
-#: doc/classes/EditorPlugin.xml:266
+#: doc/classes/EditorPlugin.xml:275
msgid ""
"Returns the [EditorInterface] object that gives you control over Godot "
"editor's window and its functionalities."
msgstr ""
+"Devuelve el objeto [EditorInterface] que le da el control sobre la ventana "
+"del editor de Godot y sus funcionalidades."
-#: doc/classes/EditorPlugin.xml:273
+#: doc/classes/EditorPlugin.xml:282
msgid ""
"Override this method in your plugin to return a [Texture2D] in order to give "
"it an icon.\n"
@@ -21258,42 +25482,74 @@ msgid ""
"\"EditorIcons\")\n"
"[/codeblock]"
msgstr ""
+"Sobrrescribe este método en tu plugin para devolver un [Texture2D] para "
+"darle un icono.\n"
+"Para los plugins de la pantalla principal, esto aparece en la parte superior "
+"de la pantalla, a la derecha de los botones \"2D\", \"3D\", \"Script\" y "
+"\"AssetLib\".\n"
+"Lo ideal es que el icono del plugin sea blanco con un fondo transparente y "
+"un tamaño de 16x16 píxeles.\n"
+"[codeblock]\n"
+"func get_plugin_icon():\n"
+" # Puedes usar un icono personalizado:\n"
+" return preload(\"res://addons/my_plugin/my_plugin_icon.svg\")\n"
+" # O usar uno interno:\n"
+" return get_editor_interface().get_base_control().get_icon(\"Node\", "
+"\"EditorIcons\")\n"
+"[/codeblock]"
-#: doc/classes/EditorPlugin.xml:289
+#: doc/classes/EditorPlugin.xml:298
msgid ""
"Override this method in your plugin to provide the name of the plugin when "
"displayed in the Godot editor.\n"
"For main screen plugins, this appears at the top of the screen, to the right "
"of the \"2D\", \"3D\", \"Script\", and \"AssetLib\" buttons."
msgstr ""
+"Sobrescribe este método en tu plugin para proporcionar el nombre del plugin "
+"cuando se muestra en el editor de Godot.\n"
+"Para los plugins de la pantalla principal, esto aparece en la parte superior "
+"de la pantalla, a la derecha de los botones \"2D\", \"3D\", \"Script\" y "
+"\"AssetLib\"."
-#: doc/classes/EditorPlugin.xml:297
+#: doc/classes/EditorPlugin.xml:306
msgid ""
"Gets the Editor's dialogue used for making scripts.\n"
"[b]Note:[/b] Users can configure it before use."
msgstr ""
+"Hace que el diálogo del editor se use para hacer los guiones.\n"
+"[b]Nota:[/b] Los usuarios pueden configurarlo antes de su uso."
-#: doc/classes/EditorPlugin.xml:305
+#: doc/classes/EditorPlugin.xml:314
msgid ""
"Gets the state of your plugin editor. This is used when saving the scene (so "
"state is kept when opening it again) and for switching tabs (so state can be "
"restored when the tab returns)."
msgstr ""
+"Obtiene el estado de su editor de plugins. Se usa cuando se guarda la escena "
+"(así que el estado se mantiene al abrirla de nuevo) y para cambiar de "
+"pestaña (así que el estado puede ser restaurado cuando la pestaña vuelve)."
-#: doc/classes/EditorPlugin.xml:312
+#: doc/classes/EditorPlugin.xml:321
msgid ""
"Gets the undo/redo object. Most actions in the editor can be undoable, so "
"use this object to make sure this happens when it's worth it."
msgstr ""
+"Consigue el objeto deshacer/rehacer. La mayoría de las acciones del editor "
+"pueden deshacerse, así que usa este objeto para asegurarte de que esto "
+"ocurra cuando valga la pena."
-#: doc/classes/EditorPlugin.xml:321
+#: doc/classes/EditorPlugin.xml:330
msgid ""
"Gets the GUI layout of the plugin. This is used to save the project's editor "
"layout when [method queue_save_layout] is called or the editor layout was "
"changed(For example changing the position of a dock)."
msgstr ""
+"Consigue el diseño de la interfaz gráfica del plugin. Se utiliza para "
+"guardar la disposición del editor del proyecto cuando se llama a [method "
+"queue_save_layout] o se ha cambiado la disposición del editor (por ejemplo, "
+"cambiando la posición de un dock)."
-#: doc/classes/EditorPlugin.xml:330
+#: doc/classes/EditorPlugin.xml:339
msgid ""
"Implement this function if your plugin edits a specific type of object "
"(Resource or Node). If you return [code]true[/code], then you will get the "
@@ -21302,119 +25558,162 @@ msgid ""
"forward_canvas_gui_input] and [method forward_spatial_gui_input] these will "
"be called too."
msgstr ""
+"Implementa esta función si tu plugin edita un tipo específico de objeto "
+"(Recurso o Nodo). Si devuelves [code]true[/code], entonces obtendrás las "
+"funciones [method edit] y [method make_visible] llamadas cuando el editor "
+"las solicite. Si has declarado los métodos [method forward_canvas_gui_input] "
+"y [method forward_spatial_gui_input] estos serán llamados también."
-#: doc/classes/EditorPlugin.xml:337
+#: doc/classes/EditorPlugin.xml:346
msgid ""
"Returns [code]true[/code] if this is a main screen editor plugin (it goes in "
"the workspace selector together with [b]2D[/b], [b]3D[/b], [b]Script[/b] and "
"[b]AssetLib[/b])."
msgstr ""
+"Devuelve [code]true[/code] si se trata de un plugin de editor de pantalla "
+"principal (va en el selector de espacio de trabajo junto con [b]2D[/b], "
+"[b]3D[/b], [b]Script[/b] y [b]AssetLib[/b])."
-#: doc/classes/EditorPlugin.xml:360
+#: doc/classes/EditorPlugin.xml:369
msgid ""
"This function will be called when the editor is requested to become visible. "
"It is used for plugins that edit a specific object type.\n"
"Remember that you have to manage the visibility of all your editor controls "
"manually."
msgstr ""
+"Esta función será llamada cuando se solicite que el editor se haga visible. "
+"Se utiliza para los plugins que editan un tipo de objeto específico.\n"
+"Recuerda que tienes que gestionar la visibilidad de todos los controles del "
+"editor de forma manual."
-#: doc/classes/EditorPlugin.xml:368
+#: doc/classes/EditorPlugin.xml:377
msgid "Queue save the project's editor layout."
-msgstr ""
+msgstr "La cola guarda el diseño del editor del proyecto."
-#: doc/classes/EditorPlugin.xml:377
+#: doc/classes/EditorPlugin.xml:386
msgid "Removes an Autoload [code]name[/code] from the list."
-msgstr ""
+msgstr "Elimina un Autoload [code]name[/code] de la lista."
-#: doc/classes/EditorPlugin.xml:386
+#: doc/classes/EditorPlugin.xml:395
msgid ""
"Removes the control from the bottom panel. You have to manually [method Node."
"queue_free] the control."
msgstr ""
+"Quita el control del panel inferior. Tienes que manualmente [method Node."
+"queue_free] el control."
-#: doc/classes/EditorPlugin.xml:397
+#: doc/classes/EditorPlugin.xml:406
msgid ""
"Removes the control from the specified container. You have to manually "
"[method Node.queue_free] the control."
msgstr ""
+"Retira el control del contenedor especificado. Tienes que hacer manualmente "
+"[method Node.queue_free] el control."
-#: doc/classes/EditorPlugin.xml:406
+#: doc/classes/EditorPlugin.xml:415
msgid ""
"Removes the control from the dock. You have to manually [method Node."
"queue_free] the control."
msgstr ""
+"Quita el control del dock. Tienes que manualmente [method Node.queue_free] "
+"el control."
-#: doc/classes/EditorPlugin.xml:415
+#: doc/classes/EditorPlugin.xml:424
msgid "Removes a custom type added by [method add_custom_type]."
-msgstr ""
+msgstr "Elimina un tipo personalizado añadido por [method add_custom_type]."
-#: doc/classes/EditorPlugin.xml:464
+#: doc/classes/EditorPlugin.xml:473
msgid "Removes a menu [code]name[/code] from [b]Project > Tools[/b]."
+msgstr "Elimina un menú [code]name[/code] de [b]Proyecto > Herramientas[/b]."
+
+#: doc/classes/EditorPlugin.xml:482
+msgid "Removes a registered custom translation parser plugin."
msgstr ""
-#: doc/classes/EditorPlugin.xml:471
+#: doc/classes/EditorPlugin.xml:489
msgid ""
"This method is called after the editor saves the project or when it's "
"closed. It asks the plugin to save edited external scenes/resources."
msgstr ""
+"Este método se llama después de que el editor guarda el proyecto o cuando se "
+"cierra. Le pide al plugin que guarde las escenas/recursos externos editados."
-#: doc/classes/EditorPlugin.xml:484
+#: doc/classes/EditorPlugin.xml:502
msgid ""
"Use this method if you always want to receive inputs from 3D view screen "
"inside [method forward_spatial_gui_input]. It might be especially usable if "
"your plugin will want to use raycast in the scene."
msgstr ""
+"Utilice este método si siempre quiere recibir entradas de la pantalla de "
+"vista 3D dentro de [method forward_spatial_gui_input]. Puede ser "
+"especialmente útil si tu plugin quiere usar raycast en la escena."
-#: doc/classes/EditorPlugin.xml:493
+#: doc/classes/EditorPlugin.xml:511
msgid "Restore the state saved by [method get_state]."
-msgstr ""
+msgstr "Restaurar el estado guardado por [method get_state]."
-#: doc/classes/EditorPlugin.xml:502
+#: doc/classes/EditorPlugin.xml:520
msgid "Restore the plugin GUI layout saved by [method get_window_layout]."
msgstr ""
+"Restaurar el diseño del plugin GUI guardado por [method get_window_layout]."
-#: doc/classes/EditorPlugin.xml:509
+#: doc/classes/EditorPlugin.xml:527
msgid "Updates the overlays of the editor (2D/3D) viewport."
-msgstr ""
+msgstr "Actualiza las capas superiores de la vista del editor (2D/3D)."
-#: doc/classes/EditorPlugin.xml:518
+#: doc/classes/EditorPlugin.xml:536
msgid ""
"Emitted when user changes the workspace ([b]2D[/b], [b]3D[/b], [b]Script[/"
"b], [b]AssetLib[/b]). Also works with custom screens defined by plugins."
msgstr ""
+"Emitido cuando el usuario cambia el espacio de trabajo ([b]2D[/b], [b]3D[/"
+"b], [b]Script[/b], [b]AssetLib[/b]). También funciona con pantallas "
+"personalizadas definidas por plugins."
-#: doc/classes/EditorPlugin.xml:531
+#: doc/classes/EditorPlugin.xml:549
msgid ""
"Emitted when the scene is changed in the editor. The argument will return "
"the root node of the scene that has just become active. If this scene is new "
"and empty, the argument will be [code]null[/code]."
msgstr ""
+"Emitido cuando se cambia la escena en el editor. El argumento devolverá el "
+"nodo raíz de la escena que se acaba de activar. Si esta escena es nueva y "
+"está vacía, el argumento será [code]null[/code]."
-#: doc/classes/EditorPlugin.xml:538
+#: doc/classes/EditorPlugin.xml:556
msgid ""
"Emitted when user closes a scene. The argument is file path to a closed "
"scene."
msgstr ""
+"Emitido cuando el usuario cierra una escena. El argumento es la ruta de "
+"archivo a una escena cerrada."
-#: doc/classes/EditorPlugin.xml:584
+#: doc/classes/EditorPlugin.xml:602
msgid "Represents the size of the [enum DockSlot] enum."
-msgstr ""
+msgstr "Representa el tamaño del enum [enum DockSlot]."
#: doc/classes/EditorProperty.xml:4
msgid "Custom control to edit properties for adding into the inspector."
msgstr ""
+"Control personalizado para editar las propiedades para añadirlas al "
+"inspector."
#: doc/classes/EditorProperty.xml:7
msgid ""
"This control allows property editing for one or multiple properties into "
"[EditorInspector]. It is added via [EditorInspectorPlugin]."
msgstr ""
+"Este control permite la edición de propiedades para una o varias propiedades "
+"en [EditorInspector]. Se agrega a través de [EditorInspectorPlugin]."
#: doc/classes/EditorProperty.xml:18
msgid ""
"If any of the controls added can gain keyboard focus, add it here. This "
"ensures that focus will be restored if the inspector is refreshed."
msgstr ""
+"Si alguno de los controles añadidos puede obtener el enfoque del teclado, "
+"añádalo aquí. Esto asegura que el enfoque se restaurará si el inspector se "
+"refresca."
#: doc/classes/EditorProperty.xml:33
msgid ""
@@ -21424,10 +25723,15 @@ msgid ""
"requesting this property to be refreshed (leave as [code]false[/code] if "
"unsure)."
msgstr ""
+"Si una o varias propiedades han cambiado, esto debe ser llamado. "
+"[code]field[/code] se utiliza en caso de que tu editor pueda modificar los "
+"campos por separado (como ejemplo, Vector3.x). El argumento [code]changing[/"
+"code] evita que el editor pida que se actualice esta propiedad (deja como "
+"[code]false[/code] si no estás seguro)."
#: doc/classes/EditorProperty.xml:40
msgid "Gets the edited object."
-msgstr ""
+msgstr "Obtiene el objeto editado."
#: doc/classes/EditorProperty.xml:47
msgid ""
@@ -21435,86 +25739,135 @@ msgid ""
"[method EditorInspectorPlugin.parse_property]), then this will return the "
"property."
msgstr ""
+"Obtiene la propiedad editada. Si tu editor es para una sola propiedad "
+"(añadida mediante el método [método EditorInspectorPlugin.parse_property]), "
+"entonces esto devolverá la propiedad."
#: doc/classes/EditorProperty.xml:54
msgid "Override if you want to allow a custom tooltip over your property."
msgstr ""
+"Sobrescribe si quieres permitir que una sugerencia personalizada sobre tu "
+"propiedad."
#: doc/classes/EditorProperty.xml:63
msgid ""
"Adds controls with this function if you want them on the bottom (below the "
"label)."
msgstr ""
+"Añade controles con esta función si los quieres en la parte inferior (debajo "
+"de la etiqueta)."
#: doc/classes/EditorProperty.xml:70
msgid "When this virtual function is called, you must update your editor."
-msgstr ""
+msgstr "Cuando se llama a esta función virtual, tu debes actualizar tu editor."
#: doc/classes/EditorProperty.xml:76
-msgid "Used by the inspector, set when property is checkable."
-msgstr ""
+#, fuzzy
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is "
+"checkable."
+msgstr "Usado por el inspector, establecido cuando la propiedad es chequeable."
#: doc/classes/EditorProperty.xml:79
-msgid "Used by the inspector, when the property is checked."
-msgstr ""
+#, fuzzy
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is checked."
+msgstr "Utilizado por el inspector, cuando se comprueba la propiedad."
-#: doc/classes/EditorProperty.xml:84
-msgid "Used by the inspector, when the property must draw with error color."
+#: doc/classes/EditorProperty.xml:82
+#, fuzzy
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property can be "
+"deleted by the user."
msgstr ""
+"Usado por el inspector, cuando la propiedad puede añadir claves para la "
+"animación."
-#: doc/classes/EditorProperty.xml:87
-msgid "Used by the inspector, when the property can add keys for animation."
+#: doc/classes/EditorProperty.xml:85
+#, fuzzy
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property must draw "
+"with error color. This is used for editable children's properties."
msgstr ""
+"Usado por el inspector, cuando la propiedad debe dibujar con un color de "
+"error."
-#: doc/classes/EditorProperty.xml:90
-msgid "Sets this property to change the label (if you want to show one)."
+#: doc/classes/EditorProperty.xml:88
+#, fuzzy
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property can add "
+"keys for animation."
msgstr ""
+"Usado por el inspector, cuando la propiedad puede añadir claves para la "
+"animación."
-#: doc/classes/EditorProperty.xml:93
-msgid "Used by the inspector, when the property is read-only."
+#: doc/classes/EditorProperty.xml:91
+#, fuzzy
+msgid "Set this property to change the label (if you want to show one)."
msgstr ""
+"Establece esta propiedad para cambiar la etiqueta (si quieres mostrar una)."
+
+#: doc/classes/EditorProperty.xml:94
+#, fuzzy
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is read-"
+"only."
+msgstr "Usado por el inspector, cuando la propiedad es de sólo lectura."
-#: doc/classes/EditorProperty.xml:103
+#: doc/classes/EditorProperty.xml:104
msgid ""
"Emit it if you want multiple properties modified at the same time. Do not "
"use if added via [method EditorInspectorPlugin.parse_property]."
msgstr ""
+"Emitelo si quieres que se modifiquen varias propiedades al mismo tiempo. No "
+"lo utilice si se agrega a través de [method EditorInspectorPlugin."
+"parse_property]."
-#: doc/classes/EditorProperty.xml:112
+#: doc/classes/EditorProperty.xml:113
msgid "Used by sub-inspectors. Emit it if what was selected was an Object ID."
msgstr ""
+"Utilizado por los subinspectores. Emitelo si lo que se seleccionó fue una "
+"idde objeto."
-#: doc/classes/EditorProperty.xml:121
+#: doc/classes/EditorProperty.xml:122
msgid ""
"Do not emit this manually, use the [method emit_changed] method instead."
msgstr ""
+"No lo emita manualmente, utilice en su lugar el método [method emit_changed]."
-#: doc/classes/EditorProperty.xml:130
+#: doc/classes/EditorProperty.xml:131
msgid "Emitted when a property was checked. Used internally."
-msgstr ""
+msgstr "Emitido cuando una propiedad fue comprobada. Usado internamente."
+
+#: doc/classes/EditorProperty.xml:138
+#, fuzzy
+msgid "Emitted when a property was deleted. Used internally."
+msgstr "Emitido cuando una propiedad fue comprobada. Usado internamente."
-#: doc/classes/EditorProperty.xml:143
+#: doc/classes/EditorProperty.xml:145
msgid ""
"Emit it if you want to add this value as an animation key (check for keying "
"being enabled first)."
msgstr ""
+"Emite si quieres añadir este valor como una clave de animación (comprueba "
+"que la clave esté activada primero)."
-#: doc/classes/EditorProperty.xml:152
+#: doc/classes/EditorProperty.xml:154
msgid "Emit it if you want to key a property with a single value."
-msgstr ""
+msgstr "Emitelo si quieres poner una llave en una propiedad con un solo valor."
-#: doc/classes/EditorProperty.xml:161
+#: doc/classes/EditorProperty.xml:163
msgid ""
"If you want a sub-resource to be edited, emit this signal with the resource."
-msgstr ""
+msgstr "Si quiere que se edite un subrecurso, emita esta señal con el recurso."
-#: doc/classes/EditorProperty.xml:170
+#: doc/classes/EditorProperty.xml:172
msgid "Emitted when selected. Used internally."
-msgstr ""
+msgstr "Emitido cuando se selecciona. Se utiliza internamente."
#: doc/classes/EditorResourcePreview.xml:4
msgid "Helper to generate previews of resources or files."
-msgstr ""
+msgstr "Ayudante para generar vistas previas de recursos o archivos."
#: doc/classes/EditorResourcePreview.xml:7
msgid ""
@@ -21522,16 +25875,22 @@ msgid ""
"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
"the singleton using [method EditorInterface.get_resource_previewer]."
msgstr ""
+"Este objeto se utiliza para generar vistas previas de los recursos de los "
+"archivos.\n"
+"[b]Nota:[/b] Esta clase no debe ser instanciada directamente. En su lugar, "
+"accede al singleton usando [method EditorInterface.get_resource_previewer]."
#: doc/classes/EditorResourcePreview.xml:19
msgid "Create an own, custom preview generator."
-msgstr ""
+msgstr "Crear un generador de previsualización propio y personalizado."
#: doc/classes/EditorResourcePreview.xml:28
msgid ""
"Check if the resource changed, if so, it will be invalidated and the "
"corresponding signal emitted."
msgstr ""
+"Compruebe si el recurso ha cambiado, si es así, se invalidará y se emitirá "
+"la señal correspondiente."
#: doc/classes/EditorResourcePreview.xml:43
msgid ""
@@ -21541,6 +25900,12 @@ msgid ""
"possible). Callback must have the format: (path,texture,userdata). Userdata "
"can be anything."
msgstr ""
+"Pone en cola un recurso que se está editando para una vista previa (usando "
+"una instancia). Una vez que la vista previa esté lista, se llamará a tu "
+"receiver.receiver_func, ya sea conteniendo la textura de la vista previa o "
+"una textura vacía (si no fue posible la vista previa). La llamada debe tener "
+"el formato: (path,textura,datos de usuario). Los datos de usuario pueden ser "
+"cualquier cosa."
#: doc/classes/EditorResourcePreview.xml:58
msgid ""
@@ -21549,20 +25914,28 @@ msgid ""
"texture or an empty texture (if no preview was possible). Callback must have "
"the format: (path,texture,userdata). Userdata can be anything."
msgstr ""
+"Pone en cola un archivo de recursos para una vista previa (usando una ruta). "
+"Una vez que la vista previa esté lista, se llamará a tu receiver."
+"receiver_func, que contendrá la textura de la vista previa o una textura "
+"vacía (si no fue posible la vista previa). La llamada debe tener el formato: "
+"(path,textura,datos de usuario). Los datos de usuario pueden ser cualquier "
+"cosa."
#: doc/classes/EditorResourcePreview.xml:67
msgid "Removes a custom preview generator."
-msgstr ""
+msgstr "Elimina un generador de previsualización personalizado."
#: doc/classes/EditorResourcePreview.xml:76
msgid ""
"Emitted if a preview was invalidated (changed). [code]path[/code] "
"corresponds to the path of the preview."
msgstr ""
+"Emitido si se invalida (cambia) una vista previa. [code]path[/code] "
+"corresponde a la ruta de la vista previa."
#: doc/classes/EditorResourcePreviewGenerator.xml:4
msgid "Custom generator of previews."
-msgstr ""
+msgstr "Generador personalizado de vistas previas."
#: doc/classes/EditorResourcePreviewGenerator.xml:7
msgid ""
@@ -21570,6 +25943,9 @@ msgid ""
"thumbnail_size[/code] in [EditorSettings] to find out the right size to do "
"previews at."
msgstr ""
+"Código personalizado para generar vistas previas. Por favor, comprueba "
+"[code]file_dialog/thumbnail_size[/code] en [EditorSettings] para saber el "
+"tamaño adecuado para hacer las vistas previas."
#: doc/classes/EditorResourcePreviewGenerator.xml:16
msgid ""
@@ -21577,6 +25953,10 @@ msgid ""
"generate] or [method generate_from_path] for small previews as well.\n"
"By default, it returns [code]false[/code]."
msgstr ""
+"Si esta función devuelve [code]true[/code], el generador llamará a [method "
+"generate] o [method generate_from_path] para pequeñas vistas previas "
+"también.\n"
+"Por defecto, devuelve [code]false[/code]."
#: doc/classes/EditorResourcePreviewGenerator.xml:28
msgid ""
@@ -21587,6 +25967,12 @@ msgid ""
"Care must be taken because this function is always called from a thread (not "
"the main thread)."
msgstr ""
+"Generar una vista previa de un recurso dado con el tamaño especificado. Esto "
+"siempre debe ser implementado.\n"
+"Devolver una textura vacía es una buena manera de fallar y dejar que otro "
+"generador se encargue.\n"
+"Hay que tener cuidado porque esta función siempre se llama desde un hilo (no "
+"desde el hilo principal)."
#: doc/classes/EditorResourcePreviewGenerator.xml:41
msgid ""
@@ -21598,6 +25984,13 @@ msgid ""
"Care must be taken because this function is always called from a thread (not "
"the main thread)."
msgstr ""
+"Generar una vista previa directamente de una ruta con el tamaño "
+"especificado. La implementación de esto es opcional, ya que el código por "
+"defecto se cargará y llamará [method generate].\n"
+"Devolver una textura vacía es una buena manera de fallar y dejar que otro "
+"generador se encargue.\n"
+"Hay que tener cuidado porque esta función siempre se llama desde un hilo (no "
+"desde el hilo principal)."
#: doc/classes/EditorResourcePreviewGenerator.xml:50
msgid ""
@@ -21606,20 +25999,28 @@ msgid ""
"methods [method generate] or [method generate_from_path].\n"
"By default, it returns [code]false[/code]."
msgstr ""
+"Si esta función devuelve [code]true[/code], el generador generará "
+"automáticamente las pequeñas vistas previas de la textura de vista previa "
+"normal generada por los métodos [method generate] o [method "
+"generate_from_path].\n"
+"Por defecto, devuelve [code]false[/code]."
#: doc/classes/EditorResourcePreviewGenerator.xml:60
msgid ""
"Returns [code]true[/code] if your generator supports the resource of type "
"[code]type[/code]."
msgstr ""
+"Devuelve [code]true[/code] si tu generador soporta el recurso de tipo "
+"[code]type[/code]."
#: doc/classes/EditorSceneImporter.xml:4
msgid "Imports scenes from third-parties' 3D files."
-msgstr ""
+msgstr "Importa escenas de archivos 3D de terceros."
#: doc/classes/EditorSceneImporterAssimp.xml:4
msgid "FBX 3D asset importer based on [url=http://assimp.org/]Assimp[/url]."
msgstr ""
+"Importador de recursos FBX 3D basado en [url=http://assimp.org/]Assimp[/url]."
#: doc/classes/EditorSceneImporterAssimp.xml:7
msgid ""
@@ -21650,10 +26051,40 @@ msgid ""
"- Binary format in FBX 2017\n"
"[/codeblock]"
msgstr ""
+"Este es un importador de recursos FBX 3D basado en [url=http://assimp."
+"org/]Assimp[/url]. Actualmente tiene muchas limitaciones conocidas y "
+"funciona mejor con mallas estáticas. La mayoría de las mallas animadas no se "
+"importan correctamente.\n"
+"Si exporta una escena FBX desde Autodesk Maya, use estos ajustes de "
+"exportación FBX:\n"
+"[codeblock]\n"
+"- Smoothing Groups -Suavizado de grupos\n"
+"- Smooth Mesh - Suavizado de malla.\n"
+"- Triangulate (for meshes with blend shapes) - Triangular (para mallas con "
+"formas mezcladas)\n"
+"- Bake Animation -Cocinado de animación\n"
+"- Resample All\n"
+"- Deformed Models - Modelos deformados\n"
+"- Skins -Pieles\n"
+"- Blend Shapes - Formas mezcladas\n"
+"- Curve Filters -Filtros de Curvas\n"
+"- Constant Key Reducer - Reductor clave Constante\n"
+"- Auto Tangents Only - Solo auto tangentes\n"
+"- No compruebe las Constraints (ya que romperá el archivo)\n"
+"- Puede checkear la media embebida (texturas incrustadas en el archivo FBX "
+"exportado)\n"
+"- Note que cuando se importa media incrustada, las textura y malla estará "
+"contenida en únicor archivo immutable.\n"
+"- Tendrás que reexportar y despues reimportar a FBX si la textura ha "
+"cambiado.\n"
+"- Unidades: Centímetros\n"
+"- Eje superior: Y\n"
+"- Formatio Binario en FBX 2017\n"
+"[/codeblock]"
#: doc/classes/EditorScenePostImport.xml:4
msgid "Post-processes scenes after import."
-msgstr ""
+msgstr "Post-procesa las escenas después de la importación."
#: doc/classes/EditorScenePostImport.xml:7
msgid ""
@@ -21681,32 +26112,65 @@ msgid ""
" iterate(child)\n"
"[/codeblock]"
msgstr ""
+"Las escenas importadas pueden ser modificadas automáticamente justo después "
+"de la importación estableciendo su propiedad de importación [b]Custom "
+"Script[/b] a un script [code]tool[/code] que herede de esta clase.\n"
+"La llamada de retorno [method post_import] recibe el nodo raíz de la escena "
+"importada y devuelve la versión modificada de la escena. Ejemplo de uso:\n"
+"[codeblock]\n"
+"tool # Necesita ser ejecutado en el editor\n"
+"extends EditorScenePostImport\n"
+"\n"
+"# Este ejemplo cambia todos los nombres de los nodos\n"
+"\n"
+"# Llamado justo despues de que la escena sea importada y llegue al nodo "
+"raiz\n"
+"func post_import(scene):\n"
+" # Cambia todos los nombres de nodos a modificado_[antiguonombrenodo]\"\n"
+" iterate(scene)\n"
+" return scene # Recuerda devolver la escena importada\n"
+"\n"
+"func iterate(node):\n"
+" if node != null:\n"
+" node.name = \"modificado_\" + node.name\n"
+" for child in node.get_children():\n"
+" iterate(child)\n"
+"[/codeblock]"
#: doc/classes/EditorScenePostImport.xml:29
msgid ""
"https://docs.godotengine.org/en/latest/getting_started/workflow/assets/"
"importing_scenes.html#custom-script"
msgstr ""
+"https://docs.godotengine.org/es/latest/getting_started/workflow/assets/"
+"importing_scenes.html#custom-script"
#: doc/classes/EditorScenePostImport.xml:36
msgid ""
"Returns the source file path which got imported (e.g. [code]res://scene.dae[/"
"code])."
msgstr ""
+"Devuelve la ruta del archivo de origen que se importó (por ejemplo, "
+"[code]res://scene.dae[/code])."
#: doc/classes/EditorScenePostImport.xml:43
msgid "Returns the resource folder the imported scene file is located in."
msgstr ""
+"Devuelve la carpeta de recursos en la que se encuentra el archivo de la "
+"escena importada."
#: doc/classes/EditorScenePostImport.xml:52
msgid ""
"Called after the scene was imported. This method must return the modified "
"version of the scene."
msgstr ""
+"Llamado después de que la escena sea importada. Este método debe devolver la "
+"versión modificada de la escena."
#: doc/classes/EditorScript.xml:4
msgid "Base script that can be used to add extension functions to the editor."
msgstr ""
+"Script base que puede ser usado para añadir funciones de extensión al editor."
#: doc/classes/EditorScript.xml:7
msgid ""
@@ -21728,28 +26192,53 @@ msgid ""
"is visible in the console window started with the Editor (stdout) instead of "
"the usual Godot [b]Output[/b] dock."
msgstr ""
+"Los scripts que extienden esta clase e implementan su método [method _run] "
+"pueden ser ejecutados desde la opción de menú [b]File > Run[/b] del editor "
+"de scripts (o presionando [kbd]Ctrl + Shift + X[/kbd]) mientras el editor "
+"está funcionando. Esto es útil para añadir funcionalidad personalizada en el "
+"editor a Godot. Para adiciones más complejas, considera la posibilidad de "
+"usar [EditorPlugin]s en su lugar.\n"
+"[b]Nota:[/b] Los scripts de extensión necesitan tener el modo [code]tool[/"
+"code] habilitado.\n"
+"[b]Script de ejemplo:[/b]\n"
+"[codeblock]\n"
+"tool\n"
+"extends EditorScript\n"
+"\n"
+"func _run():\n"
+" print(\"Hola desde el Editor de Godot!\")\n"
+"[/codeblock]\n"
+"[b]Nota:[/b] El guión se ejecuta en el contexto del Editor, lo que significa "
+"que la salida es visible en la ventana de la consola iniciada con el Editor "
+"(stdout) en lugar del habitual dock de Godot [b]Salida[/b]."
#: doc/classes/EditorScript.xml:26
msgid "This method is executed by the Editor when [b]File > Run[/b] is used."
msgstr ""
+"Este método es ejecutado por el Editor cuando se utiliza [b]Archivo > "
+"Ejecutar[/b]."
#: doc/classes/EditorScript.xml:35
msgid ""
"Adds [code]node[/code] as a child of the root node in the editor context.\n"
"[b]Warning:[/b] The implementation of this method is currently disabled."
msgstr ""
+"Añade el [code]node[/code] como hijo del nodo raíz en el contexto del "
+"editor.\n"
+"[b]Advertencia:[/b] La implementación de este método está actualmente "
+"desactivada."
#: doc/classes/EditorScript.xml:43
msgid "Returns the [EditorInterface] singleton instance."
-msgstr ""
+msgstr "Devuelve la instancia del singleton [EditorInterface]."
#: doc/classes/EditorScript.xml:50
msgid "Returns the Editor's currently active scene."
-msgstr ""
+msgstr "Devuelve la escena actualmente activa del editor."
#: doc/classes/EditorSelection.xml:4
msgid "Manages the SceneTree selection in the editor."
-msgstr ""
+msgstr "Gestiona la selección de SceneTree en el editor."
#: doc/classes/EditorSelection.xml:7
msgid ""
@@ -21757,18 +26246,21 @@ msgid ""
"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
"the singleton using [method EditorInterface.get_selection]."
msgstr ""
+"Este objeto gestiona la selección de SceneTree en el editor.\n"
+"[b]Nota:[/b] Esta clase no debe ser instanciada directamente. En su lugar, "
+"accede al singleton usando [method EditorInterface.get_selection]."
#: doc/classes/EditorSelection.xml:19
msgid "Adds a node to the selection."
-msgstr ""
+msgstr "Añade un nodo a la selección."
#: doc/classes/EditorSelection.xml:26
msgid "Clear the selection."
-msgstr ""
+msgstr "Despeja la selección."
#: doc/classes/EditorSelection.xml:33
msgid "Gets the list of selected nodes."
-msgstr ""
+msgstr "Obtiene la lista de nodos seleccionados."
#: doc/classes/EditorSelection.xml:40
msgid ""
@@ -21776,34 +26268,60 @@ msgid ""
"moving them, rotating, etc). This list avoids situations where a node is "
"selected and also child/grandchild."
msgstr ""
+"Obtiene la lista de nodos seleccionados, optimizada para operaciones de "
+"transformación (es decir, moverlos, rotarlos, etc.). Esta lista evita las "
+"situaciones en las que un nodo es seleccionado y también el hijo/nieto."
#: doc/classes/EditorSelection.xml:49
msgid "Removes a node from the selection."
-msgstr ""
+msgstr "Elimina un nodo de la selección."
#: doc/classes/EditorSelection.xml:56
msgid "Emitted when the selection changes."
-msgstr ""
+msgstr "Emitido cuando la selección cambia."
#: doc/classes/EditorSettings.xml:4
msgid "Object that holds the project-independent editor settings."
msgstr ""
+"Objeto que contiene la configuración del editor independiente del proyecto."
#: doc/classes/EditorSettings.xml:7
+#, fuzzy
msgid ""
"Object that holds the project-independent editor settings. These settings "
"are generally visible in the [b]Editor > Editor Settings[/b] menu.\n"
-"Accessing the settings is done by using the regular [Object] API, such as:\n"
+"Property names use slash delimiters to distinguish sections. Setting values "
+"can be of any [Variant] type. It's recommended to use [code]snake_case[/"
+"code] for editor settings to be consistent with the Godot editor itself.\n"
+"Accessing the settings can be done using the following methods, such as:\n"
"[codeblock]\n"
-"settings.set(prop,value)\n"
-"settings.get(prop)\n"
-"list_of_settings = settings.get_property_list()\n"
+"# `settings.set(\"some/property\", value)` also works as this class "
+"overrides `_set()` internally.\n"
+"settings.set_setting(\"some/property\",value)\n"
+"\n"
+"# `settings.get(\"some/property\", value)` also works as this class "
+"overrides `_get()` internally.\n"
+"settings.get_setting(\"some/property\")\n"
+"\n"
+"var list_of_settings = settings.get_property_list()\n"
"[/codeblock]\n"
"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
"the singleton using [method EditorInterface.get_editor_settings]."
msgstr ""
+"Objeto que contiene la configuración del editor independiente del proyecto. "
+"Estos ajustes son generalmente visibles en el menú [b]Editor > Ajustes del "
+"editor[/b].\n"
+"El acceso a los ajustes se realiza mediante el uso de la API [Objeto] "
+"normal, como por ejemplo:\n"
+"[codeblock]\n"
+"settings.set(propiedad,valor)\n"
+"settings.get(propiedad)\n"
+"list_of_settings = settings.get_property_list()\n"
+"[/codeblock]\n"
+"[b]Nota:[/b] Esta clase no debe ser instanciada directamente. En su lugar, "
+"accede al singleton usando [methodEditorInterface.get_editor_settings]."
-#: doc/classes/EditorSettings.xml:25
+#: doc/classes/EditorSettings.xml:30
msgid ""
"Adds a custom property info to a property. The dictionary must contain:\n"
"- [code]name[/code]: [String] (the name of the property)\n"
@@ -21824,53 +26342,224 @@ msgid ""
"editor_settings.add_property_info(property_info)\n"
"[/codeblock]"
msgstr ""
+"Añade una información de propiedad personalizada a una propiedad. El "
+"diccionario debe contener:\n"
+"- [code]name[/code]: [String] (el nombre de la propiedad)\n"
+"- [code]type[/code]: [int] (véase [enum Variant.Type])\n"
+"- opcionalmente [code]sugerencia[/code]: [int] (ver [enum PropertyHint]) y "
+"[code]hint_string[/code]: [String]\n"
+"[b]Ejemplo:[/b]\n"
+"[codeblock]\n"
+"editor_settings.set(\"category/property_name\", 0)\n"
+"\n"
+"var informacion_propiedad = {\n"
+" \"name\": \"categoria/nombre_propiedad\",\n"
+" \"type\": TYPE_INT,\n"
+" \"hint\": PROPERTY_HINT_ENUM,\n"
+" \"hint_string\": \"uno, dos, tres\"\n"
+"}\n"
+"\n"
+"editor_settings.add_property_info(property_info)\n"
+"[/codeblock]"
+
+#: doc/classes/EditorSettings.xml:55
+#, fuzzy
+msgid "Erases the setting whose name is specified by [code]property[/code]."
+msgstr "Devuelve el color interpolado especificado por [code]offset[/code]."
-#: doc/classes/EditorSettings.xml:50
-msgid "Erase a given setting (pass full property path)."
+#: doc/classes/EditorSettings.xml:62
+#, fuzzy
+msgid "Returns the list of favorite files and directories for this project."
msgstr ""
+"Obtiene la lista de archivos y directorios favoritos para este proyecto."
-#: doc/classes/EditorSettings.xml:57
-msgid "Gets the list of favorite files and directories for this project."
+#: doc/classes/EditorSettings.xml:75
+msgid ""
+"Returns project-specific metadata for the [code]section[/code] and "
+"[code]key[/code] specified. If the metadata doesn't exist, [code]default[/"
+"code] will be returned instead. See also [method set_project_metadata]."
msgstr ""
-#: doc/classes/EditorSettings.xml:76
+#: doc/classes/EditorSettings.xml:82
+#, fuzzy
msgid ""
-"Gets the specific project settings path. Projects all have a unique sub-"
-"directory inside the settings path where project specific settings are saved."
+"Returns the project-specific settings path. Projects all have a unique "
+"subdirectory inside the settings path where project-specific settings are "
+"saved."
msgstr ""
+"Obtiene la ruta de configuración del proyecto específico. Todos los "
+"proyectos tienen un subdirectorio único dentro de la ruta de ajustes donde "
+"se guardan los ajustes específicos del proyecto."
-#: doc/classes/EditorSettings.xml:83
+#: doc/classes/EditorSettings.xml:89
+#, fuzzy
msgid ""
-"Gets the list of recently visited folders in the file dialog for this "
+"Returns the list of recently visited folders in the file dialog for this "
"project."
msgstr ""
+"Obtiene la lista de las carpetas visitadas recientemente en el diálogo de "
+"archivos de este proyecto."
#: doc/classes/EditorSettings.xml:98
msgid ""
+"Returns the value of the setting specified by [code]name[/code]. This is "
+"equivalent to using [method Object.get] on the EditorSettings instance."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:105
+msgid ""
"Gets the global settings path for the engine. Inside this path, you can find "
"some standard paths such as:\n"
"[code]settings/tmp[/code] - Used for temporary storage of files\n"
"[code]settings/templates[/code] - Where export templates are located"
msgstr ""
+"Obtiene la ruta de configuración global para el motor. Dentro de esta ruta, "
+"puedes encontrar algunas rutas estándar como:\n"
+"[code]settings/tmp[/code] - Se utiliza para el almacenamiento temporal de "
+"archivos\n"
+"[code]settings/templates[/code] - Donde se encuentran las plantillas de "
+"exportación"
-#: doc/classes/EditorSettings.xml:133
+#: doc/classes/EditorSettings.xml:116
+#, fuzzy
+msgid ""
+"Returns [code]true[/code] if the setting specified by [code]name[/code] "
+"exists, [code]false[/code] otherwise."
+msgstr ""
+"Devuelve [code]true[/code] si se especifica el nivel de brillo [code]idx[/"
+"code], [code]false[/code] en caso contrario."
+
+#: doc/classes/EditorSettings.xml:125
+msgid ""
+"Returns [code]true[/code] if the setting specified by [code]name[/code] can "
+"have its value reverted to the default value, [code]false[/code] otherwise. "
+"When this method returns [code]true[/code], a Revert button will display "
+"next to the setting in the Editor Settings."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:134
+msgid ""
+"Returns the default value of the setting specified by [code]name[/code]. "
+"This is the value that would be applied when clicking the Revert button in "
+"the Editor Settings."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:143
msgid "Sets the list of favorite files and directories for this project."
msgstr ""
+"Establece la lista de archivos y directorios favoritos para este proyecto."
-#: doc/classes/EditorSettings.xml:166
+#: doc/classes/EditorSettings.xml:156
+msgid ""
+"Sets the initial value of the setting specified by [code]name[/code] to "
+"[code]value[/code]. This is used to provide a value for the Revert button in "
+"the Editor Settings. If [code]update_current[/code] is true, the current "
+"value of the setting will be set to [code]value[/code] as well."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:169
+msgid ""
+"Sets project-specific metadata with the [code]section[/code], [code]key[/"
+"code] and [code]data[/code] specified. This metadata is stored outside the "
+"project folder and therefore won't be checked into version control. See also "
+"[method get_project_metadata]."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:178
msgid ""
"Sets the list of recently visited folders in the file dialog for this "
"project."
msgstr ""
+"Establece la lista de carpetas visitadas recientemente en el diálogo de "
+"archivos de este proyecto."
+
+#: doc/classes/EditorSettings.xml:189
+msgid ""
+"Sets the [code]value[/code] of the setting specified by [code]name[/code]. "
+"This is equivalent to using [method Object.set] on the EditorSettings "
+"instance."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:196
+#, fuzzy
+msgid "Emitted after any editor setting has changed."
+msgstr "Emitido cuando cambian los ajustes del editor."
-#: doc/classes/EditorSettings.xml:183
-msgid "Emitted when editor settings change."
+#: doc/classes/EditorSettings.xml:202
+#, fuzzy
+msgid ""
+"Emitted after any editor setting has changed. It's used by various editor "
+"plugins to update their visuals on theme changes or logic on configuration "
+"changes."
msgstr ""
+"Emitido cuando cambian los ajustes del editor. Es usado por varios plugins "
+"de editor para actualizar sus visuales en los cambios de tema o la lógica en "
+"los cambios de configuración."
-#: doc/classes/EditorSettings.xml:189
+#: doc/classes/EditorTranslationParserPlugin.xml:4
msgid ""
-"Emitted when editor settings change. It used by various editor plugins to "
-"update their visuals on theme changes or logic on configuration changes."
+"Plugin for adding custom parsers to extract strings that are to be "
+"translated from custom files (.csv, .json etc.)."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:7
+msgid ""
+"Plugins are registered via [method EditorPlugin."
+"add_translation_parser_plugin] method. To define the parsing and string "
+"extraction logic, override the [method parse_file] method in script.\n"
+"The extracted strings will be written into a POT file selected by user under "
+"\"POT Generation\" in \"Localization\" tab in \"Project Settings\" menu.\n"
+"Below shows an example of a custom parser that extracts strings in a CSV "
+"file to write into a POT.\n"
+"[codeblock]\n"
+"tool\n"
+"extends EditorTranslationParserPlugin\n"
+"\n"
+"\n"
+"func parse_file(path, extracted_strings):\n"
+" var file = File.new()\n"
+" file.open(path, File.READ)\n"
+" var text = file.get_as_text()\n"
+" var split_strs = text.split(\",\", false, 0)\n"
+" for s in split_strs:\n"
+" extracted_strings.append(s)\n"
+" #print(\"Extracted string: \" + s)\n"
+"\n"
+"\n"
+"func get_recognized_extensions():\n"
+" return [\"csv\"]\n"
+"[/codeblock]\n"
+"[b]Note:[/b] If you override parsing logic for standard script types "
+"(GDScript, C#, etc.), it would be better to load the [code]path[/code] "
+"argument using [method ResourceLoader.load]. This is because built-in "
+"scripts are loaded as [Resource] type, not [File] type.\n"
+"For example:\n"
+"[codeblock]\n"
+"func parse_file(path, extracted_strings):\n"
+" var res = ResourceLoader.load(path, \"Script\")\n"
+" var text = res.get_source_code()\n"
+" # Parsing logic.\n"
+"\n"
+"\n"
+"func get_recognized_extensions():\n"
+" return [\"gd\"]\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:48
+#, fuzzy
+msgid ""
+"Gets the list of file extensions to associate with this parser, e.g. [code]"
+"[\"csv\"][/code]."
+msgstr ""
+"Obtiene la lista de extensiones de archivos para asociar con este cargador "
+"(sin distinción de mayúsculas y minúsculas). Por ejemplo, [code][\"obj\"][/"
+"code]."
+
+#: doc/classes/EditorTranslationParserPlugin.xml:59
+msgid ""
+"Override this method to define a custom parsing logic to extract the "
+"translatable strings."
msgstr ""
#: doc/classes/EditorVCSInterface.xml:4
@@ -21878,6 +26567,8 @@ msgid ""
"Version Control System (VCS) interface which reads and writes to the local "
"VCS in use."
msgstr ""
+"Interfaz del Sistema de Control de Versiones (VCS) que lee y escribe en el "
+"VCS local en uso."
#: doc/classes/EditorVCSInterface.xml:7
msgid ""
@@ -21889,6 +26580,14 @@ msgid ""
"performing the task themselves, they call the internally defined functions "
"in the VCS addons to provide a plug-n-play experience."
msgstr ""
+"Usado por el editor para mostrar la información extraída del VCS en el "
+"editor. La implementación de esta API está incluida en los addons de VCS, "
+"que son esencialmente plugins GDNative que deben ser puestos en la carpeta "
+"del proyecto. Estos addons VCS son scripts que se adjuntan (bajo demanda) a "
+"la instancia de objeto de [code]EditorVCSInterface[/code]. Todas las "
+"funciones enumeradas a continuación, en lugar de realizar la tarea por sí "
+"mismas, llaman a las funciones definidas internamente en los addons VCS para "
+"proporcionar una experiencia de plug-n-play."
#: doc/classes/EditorVCSInterface.xml:18
msgid ""
@@ -21896,6 +26595,10 @@ msgid ""
"doing anything. Uses the files which have been staged previously, with the "
"commit message set to a value as provided as in the argument."
msgstr ""
+"Crea un commit de versión si el addon se inicializa, si no, regresa sin "
+"hacer nada. Utiliza los archivos que han sido preparados previamente, con el "
+"mensaje de confirmación establecido en un valor como el proporcionado en el "
+"argumento."
#: doc/classes/EditorVCSInterface.xml:27
msgid ""
@@ -21918,6 +26621,27 @@ msgid ""
"- [code]\"offset\"[/code] to store the offset of the line change since the "
"first contextual line content."
msgstr ""
+"Devuelve una [Array] de objetos del [Dictionary] que contiene la diferencia "
+"desdel el VCS en uso, si se inicializa un addon VCS, si no, devuelve un "
+"objeto [Array] vacio. El contenido de la diferencia también consiste en "
+"algunas líneas contextuales que proporcionan contexto al cambio de línea "
+"observado en el archivo.\n"
+"Cada objeto [Dictionary] tiene el contenido de la línea diferencia bajo las "
+"claves:\n"
+"- [code]\"content\"[/code] para almacenar una [String] que contiene el "
+"contenido de la línea\n"
+"- [code]\"status\"[/code] para almacenar una [String] que contiene [code]\"+"
+"\"[/code] en caso de que el contenido sea una adición de línea pero almacena "
+"un [code]\"-\"[/code] en caso de eliminación y una cadena vacía en caso de "
+"que el contenido de la línea no sea ni una adición ni una eliminación.\n"
+"- [code]\"new_line_number\"[/code] para almacenar un número entero que "
+"contenga el nuevo número de línea del contenido de la línea.\n"
+"- [code]\"line_count\"[/code] para almacenar un entero que contenga el "
+"número de líneas del contenido de la línea.\n"
+"- [code]\"old_line_number\"[/code] para almacenar un entero que contiene el "
+"número de línea antiguo del contenido de la línea.\n"
+"- [code]\"offset\"[/code] para almacenar el offset del cambio de línea desde "
+"el primer contenido de línea contextual."
#: doc/classes/EditorVCSInterface.xml:41
msgid ""
@@ -21932,16 +26656,28 @@ msgid ""
"- [code]3[/code]: Deleted\n"
"- [code]4[/code]: Typechanged"
msgstr ""
+"Devuelve un [Dictionary] que contiene la ruta del cambio de archivo "
+"detectado mapeado a un número entero, lo que significa qué tipo de cambio ha "
+"experimentado el archivo correspondiente.\n"
+"Los siguientes valores enteros se están utilizando para significar que el "
+"archivo detectado es:\n"
+"- [code]0[/code]: Nuevo en el directorio de trabajo del VCS\n"
+"- [code]1[/code]: Modificado\n"
+"- [code]2[/code]: Renombrado\n"
+"- [code]3[/code]: Borrado\n"
+"- [code]4[/code]: Cambiado de tipo"
#: doc/classes/EditorVCSInterface.xml:54
msgid "Returns the project name of the VCS working directory."
-msgstr ""
+msgstr "Devuelve el nombre del proyecto del directorio de trabajo del VCS."
#: doc/classes/EditorVCSInterface.xml:61
msgid ""
"Returns the name of the VCS if the VCS has been initialized, else return an "
"empty string."
msgstr ""
+"Devuelve el nombre del VCS si el VCS ha sido inicializado, si no, devuelve "
+"una cadena vacía."
#: doc/classes/EditorVCSInterface.xml:70
msgid ""
@@ -21950,30 +26686,43 @@ msgid ""
"required. Returns [code]true[/code] if no failure occurs, else returns "
"[code]false[/code]."
msgstr ""
+"Inicializa el addon VCS si no lo ha hecho ya. Usa el valor del argumento "
+"como la ruta al directorio de trabajo del proyecto. Crea el commit inicial "
+"si es necesario. Devuelve [code]true[/code] si no se produce ningún fallo, "
+"si no, devuelve [code]false[/code]."
#: doc/classes/EditorVCSInterface.xml:77
msgid ""
"Returns [code]true[/code] if the addon is ready to respond to function "
"calls, else returns [code]false[/code]."
msgstr ""
+"Devuelve [code]true[/code] si el addon está listo para responder a las "
+"llamadas de la función, si no, devuelve [code]false[/code]."
#: doc/classes/EditorVCSInterface.xml:84
msgid ""
"Returns [code]true[/code] if the VCS addon has been initialized, else "
"returns [code]false[/code]."
msgstr ""
+"Devuelve [code]true[/code] si el addon VCS ha sido inicializado, si no, "
+"devuelve [code]false[/code]."
#: doc/classes/EditorVCSInterface.xml:91
msgid ""
"Shuts down the VCS addon to allow cleanup code to run on call. Returns "
"[code]true[/code] is no failure occurs, else returns [code]false[/code]."
msgstr ""
+"Apaga el complemento del VCS para permitir que el código de limpieza se "
+"ejecute cuando sea necesario. Devuelve [code]true[/code] si no se produce "
+"ningún fallo, si no devuelve [code]false[/code]."
#: doc/classes/EditorVCSInterface.xml:100
msgid ""
"Stages the file which should be committed when [method EditorVCSInterface."
"commit] is called. Argument should contain the absolute path."
msgstr ""
+"Establece el archivo que debe ser confirmado cuando se llama al [method "
+"EditorVCSInterface.commit]. El argumento debería contener la ruta absoluta."
#: doc/classes/EditorVCSInterface.xml:109
msgid ""
@@ -21981,10 +26730,13 @@ msgid ""
"no longer committed when [method EditorVCSInterface.commit] is called. "
"Argument should contain the absolute path."
msgstr ""
+"Devuelve al estado sin añadir el archivo que se preparó previamente para ser "
+"confirmado, de modo que ya no se confirma cuando se llama al [method "
+"EditorVCSInterface.commit]. El argumento debe contener la ruta absoluta."
#: doc/classes/EncodedObjectAsID.xml:4
msgid "Holds a reference to an [Object]'s instance ID."
-msgstr ""
+msgstr "Contiene una referencia a la id de la instancia de un [Object]."
#: doc/classes/EncodedObjectAsID.xml:7
msgid ""
@@ -21995,22 +26747,35 @@ msgid ""
"This class is used internally by the editor inspector and script debugger, "
"but can also be used in plugins to pass and display objects as their IDs."
msgstr ""
+"Clase de utilidad que contiene una referencia al identificador interno de "
+"una instancia de [Object], según lo indicado por el [method Object."
+"get_instance_id]. Este identificador puede utilizarse para recuperar la "
+"instancia del objeto con [method @GDScript.instance_from_id].\n"
+"Esta clase es utilizada internamente por el inspector de editores y el "
+"depurador de scripts, pero también puede ser utilizada en los plugins para "
+"pasar y mostrar los objetos como sus IDs."
#: doc/classes/EncodedObjectAsID.xml:16
msgid ""
"The [Object] identifier stored in this [EncodedObjectAsID] instance. The "
"object instance can be retrieved with [method @GDScript.instance_from_id]."
msgstr ""
+"El identificador de [Object] almacenado en esta instancia "
+"[EncodedObjectAsID]. La instancia del objeto puede ser recuperada con "
+"[method @GDScript.instance_from_id]."
#: doc/classes/Engine.xml:4
msgid "Access to engine properties."
-msgstr ""
+msgstr "Acceso a las propiedades del motor."
#: doc/classes/Engine.xml:7
msgid ""
"The [Engine] singleton allows you to query and modify the project's run-time "
"parameters, such as frames per second, time scale, and others."
msgstr ""
+"El singleton [Engine] permite consultar y modificar los parámetros de tiempo "
+"de ejecución del proyecto, como los fotogramas por segundo, la escala de "
+"tiempo y otros."
#: doc/classes/Engine.xml:16
msgid ""
@@ -22020,6 +26785,13 @@ msgid ""
"[code]project_managers[/code] - Array of Strings, project manager names\n"
"[code]developers[/code] - Array of Strings, developer names"
msgstr ""
+"Devuelve la información del autor del motor en un diccionario.\n"
+"[code]lead_developers[/code] - Array de cadenas, nombres de los "
+"desarrolladores principales\n"
+"[code]founders[/code] - Array of Strings, nombres de los fundadores\n"
+"[code]project_managers[/code] - Array de Strings, nombres de los directores "
+"de proyecto\n"
+"[code]developers[/code] - Array de Strings, nombres de desarrolladores"
#: doc/classes/Engine.xml:27
msgid ""
@@ -22029,6 +26801,12 @@ msgid ""
"[code]copyright[/code], [code]license[/code]} describing subsections of the "
"component"
msgstr ""
+"Devuelve un conjunto de diccionarios de información sobre derechos de "
+"autor.\n"
+"[code]name[/code] - String, nombre del componente\n"
+"[code]parts[/code] - Array de diccionarios{ [code]files[/code], "
+"[code]copyright[/code], [code]license[/code]} que describen las subsecciones "
+"del componente"
#: doc/classes/Engine.xml:36
msgid ""
@@ -22037,6 +26815,10 @@ msgid ""
"[code]mini_sponsors[/code], [code]gold_donors[/code], [code]silver_donors[/"
"code], [code]bronze_donors[/code]}"
msgstr ""
+"Devuelve un diccionario de Arrays del nombres de donantes.\n"
+"{[code]platinum_sponsors[/code], [code]gold_sponsors[/code], "
+"[code]mini_sponsors[/code], [code]gold_donors[/code], [code]silver_donors[/"
+"code], [code]bronze_donors[/code]}"
#: doc/classes/Engine.xml:44
msgid ""
@@ -22044,10 +26826,14 @@ msgid ""
"with [code]--disable-render-loop[/code] via command line, this returns "
"[code]0[/code]. See also [method get_idle_frames]."
msgstr ""
+"Devuelve el número total de fotogramas dibujados. Si el bucle de "
+"renderización se desactiva con [code]--disable-render-loop[/code] mediante "
+"la línea de comandos, esto devuelve [code]0[/code]. Ver también [method "
+"get_idle_frames]."
#: doc/classes/Engine.xml:51
msgid "Returns the frames per second of the running game."
-msgstr ""
+msgstr "Devuelve los fotogramas por segundo del juego en marcha."
#: doc/classes/Engine.xml:58
msgid ""
@@ -22055,26 +26841,34 @@ msgid ""
"is advanced on each [b]idle frame[/b], regardless of whether the render loop "
"is enabled. See also [method get_frames_drawn]."
msgstr ""
+"Devuelve el número total de fotogramas pasados desde la inicialización del "
+"motor que se avanza en cada [b]fotograma inactivo[/b], independientemente de "
+"si el bucle de renderización está activado. Ver también [method "
+"get_frames_drawn]."
#: doc/classes/Engine.xml:65
msgid ""
"Returns Dictionary of licenses used by Godot and included third party "
"components."
msgstr ""
+"Devuelve el diccionario de licencias utilizado por Godot e incluye "
+"componentes de terceros."
#: doc/classes/Engine.xml:72
msgid "Returns Godot license text."
-msgstr ""
+msgstr "Devuelve el texto de la licencia de Godot."
#: doc/classes/Engine.xml:79
msgid "Returns the main loop object (see [MainLoop] and [SceneTree])."
-msgstr ""
+msgstr "Devuelve el objeto del bucle principal (ver [MainLoop] y [SceneTree])."
#: doc/classes/Engine.xml:86
msgid ""
"Returns the total number of frames passed since engine initialization which "
"is advanced on each [b]physics frame[/b]."
msgstr ""
+"Devuelve el número total de fotogramas pasados desde la inicialización del "
+"motor que se avanza en cada [b]fotograma de la física[/b]."
#: doc/classes/Engine.xml:93
msgid ""
@@ -22082,12 +26876,17 @@ msgid ""
"rendering the frame. This can be used to implement fixed timestep "
"interpolation."
msgstr ""
+"Devuelve la fracción a través de la marca de la física actual en la que "
+"estamos en el momento de renderizar el cuadro. Esto puede ser usado para "
+"implementar una interpolación de pasos de tiempo fijos."
#: doc/classes/Engine.xml:102
msgid ""
"Returns a global singleton with given [code]name[/code]. Often used for "
"plugins, e.g. GodotPayments."
msgstr ""
+"Devuelve un singleton global con un [code]name[/code] dado. A menudo se "
+"utiliza para los plugins, por ejemplo, GodotPayments."
#: doc/classes/Engine.xml:109
msgid ""
@@ -22120,24 +26919,59 @@ msgid ""
" # Do things specific to versions before 3.2\n"
"[/codeblock]"
msgstr ""
+"Devuelve la información de la versión actual del motor en un diccionario.\n"
+"[code]major[/code] - Contiene el número de la versión principal como un int\n"
+"[code]minor[/code] - Contiene el número de la versión menor como un int\n"
+"[code]patch[/code] - Contiene el número de versión del parche como un int\n"
+"[code]hex[/code] - Contiene el número de versión completo codificado como un "
+"int hexadecimal con un byte (2 lugares) por número (ver ejemplo abajo)\n"
+"[code]status[/code] - Mantiene el estado (por ejemplo \"beta\", \"rc1\", "
+"\"rc2\", ... \"estable\") como una String\n"
+"[code]build[/code] - Mantiene el nombre de la construcción (por ejemplo, "
+"\"custom_build\") como una string\n"
+"[code]hash[/code] - Contiene el hash completo del commit de Git como una "
+"string\n"
+"[code]year[/code] - Contiene el año en que la versión fue lanzada como un "
+"int\n"
+"[code]string[/code] - [code]major[/code] + [code]minor[/code] + [code]patch[/"
+"code] + [code]status[/code] + [code]build[/code] en una sola string\n"
+"El valor [code]hex[/code] se codifica de la siguiente manera, de izquierda a "
+"derecha: un byte para el mayor, un byte para el menor, un byte para la "
+"versión de parche. Por ejemplo, \"3.1.12\" sería [code]0x03010C[/code]. "
+"[b]Nota:[/b] Sigue siendo un int interno, e imprimirlo le dará su "
+"representación decimal, que no es particularmente significativa. Utilice los "
+"literales hexadecimales para facilitar las comparaciones de versiones a "
+"partir del código:\n"
+"[codeblock]\n"
+"si Engine.get_version_info().hex >= 0x030200:\n"
+" # Haz cosas específicas de la versión 3.2 o posterior\n"
+"...sino..:\n"
+" # Hacer cosas específicas de las versiones anteriores a la 3.2\n"
+"[/codeblock]"
#: doc/classes/Engine.xml:134
msgid ""
"Returns [code]true[/code] if a singleton with given [code]name[/code] exists "
"in global scope."
msgstr ""
+"Devuelve [code]true[/code] si existe en el ámbito global un singleton con un "
+"[code]name[/code] dado."
#: doc/classes/Engine.xml:141
msgid ""
"Returns [code]true[/code] if the game is inside the fixed process and "
"physics phase of the game loop."
msgstr ""
+"Devuelve [code]true[/code] si el juego está dentro del proceso fijo y la "
+"fase de física del bucle de juego."
#: doc/classes/Engine.xml:147
msgid ""
"If [code]true[/code], it is running inside the editor. Useful for tool "
"scripts."
msgstr ""
+"Si [code]true[/code], se está ejecutando dentro del editor. Es útil para los "
+"scripts de herramientas."
#: doc/classes/Engine.xml:150
msgid ""
@@ -22149,6 +26983,14 @@ msgid ""
"or work around tunneling issues, but keep in mind doing so will increase CPU "
"usage."
msgstr ""
+"El número de iteraciones fijas por segundo. Esto controla la frecuencia con "
+"la que se ejecutan los métodos de simulación física y [method Node."
+"_physics_process]. Por lo general, este valor debe fijarse siempre en "
+"[code]60[/code] o superior, ya que Godot no interpola el paso de la física. "
+"Como resultado, los valores inferiores a [code]60[/code] parecerán "
+"atascados. Este valor puede aumentarse para hacer que la entrada sea más "
+"reactiva o para trabajar en temas de túneles, pero tenga en cuenta que al "
+"hacerlo aumentará el uso de la CPU."
#: doc/classes/Engine.xml:153
msgid ""
@@ -22160,12 +27002,23 @@ msgid ""
"above 2 could cause the game to react to dropped frames with a noticeable "
"delay and are not recommended."
msgstr ""
+"Controla cuánto se sincronizan los ticks de la física con el tiempo real. "
+"Para 0 o menos, los ticks están sincronizadas. Estos valores se recomiendan "
+"para los juegos en red, donde la sincronización del reloj es importante. Los "
+"valores más altos causan una mayor desviación del reloj del juego y del "
+"reloj real, pero permiten suavizar los cambios bruscos en la tasa de "
+"fotogramas. El valor predeterminado de 0,5 debería estar bien para la "
+"mayoría; los valores superiores a 2 podrían hacer que el juego reaccionara a "
+"los fotogramas caídos con un retraso notable y no se recomiendan."
#: doc/classes/Engine.xml:156
msgid ""
"The desired frames per second. If the hardware cannot keep up, this setting "
"may not be respected. A value of 0 means no limit."
msgstr ""
+"Los fotogramas deseados por segundo. Si el hardware no puede mantener el "
+"ritmo, este ajuste puede no ser respetado. Un valor de 0 significa que no "
+"hay límite."
#: doc/classes/Engine.xml:159
msgid ""
@@ -22174,12 +27027,19 @@ msgid ""
"real life, whilst a value of 0.5 means the game moves at half the regular "
"speed."
msgstr ""
+"Controla la velocidad o la lentitud del reloj del juego en comparación con "
+"el de la vida real. El valor por defecto es 1.0. Un valor de 2.0 significa "
+"que el juego se mueve el doble de rápido que en la vida real, mientras que "
+"un valor de 0.5 significa que el juego se mueve a la mitad de la velocidad "
+"normal."
#: doc/classes/Environment.xml:4
msgid ""
"Resource for environment nodes (like [WorldEnvironment]) that define "
"multiple rendering options."
msgstr ""
+"Recurso para nodos del entorno (como [WorldEnvironment]) que definen "
+"múltiples opciones de renderización."
#: doc/classes/Environment.xml:7
msgid ""
@@ -22192,23 +27052,36 @@ msgid ""
"- Tonemap (Auto Exposure)\n"
"- Adjustments"
msgstr ""
+"Recurso para los nodos del entorno (como [WorldEnvironment]) que definen "
+"múltiples operaciones del entorno (como el fondo [Sky] o [Color], la luz "
+"ambiental, la niebla, la profundidad de campo...). Estos parámetros afectan "
+"al renderizado final de la escena. El orden de estas operaciones es:\n"
+"- Desenfoque de profundidad de campo\n"
+"- Brillo\n"
+"- Mapa de tonos (Autoexposición)\n"
+"- Ajustes"
#: doc/classes/Environment.xml:14 doc/classes/WorldEnvironment.xml:12
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/"
"environment_and_post_processing.html"
msgstr ""
+"https://docs.godotengine.org/es/latest/tutorials/3d/"
+"environment_and_post_processing.html"
#: doc/classes/Environment.xml:15
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/high_dynamic_range.html"
msgstr ""
+"https://docs.godotengine.org/es/latest/tutorials/3d/high_dynamic_range.html"
#: doc/classes/Environment.xml:24
msgid ""
"Returns [code]true[/code] if the glow level [code]idx[/code] is specified, "
"[code]false[/code] otherwise."
msgstr ""
+"Devuelve [code]true[/code] si se especifica el nivel de brillo [code]idx[/"
+"code], [code]false[/code] en caso contrario."
#: doc/classes/Environment.xml:35
msgid ""
@@ -22217,12 +27090,18 @@ msgid ""
"will slow down the glow effect rendering, even if previous levels aren't "
"enabled."
msgstr ""
+"Activa o desactiva el nivel de brillo en el índice [code]idx[/code]. Cada "
+"nivel se basa en el nivel anterior. Esto significa que habilitar niveles de "
+"brillo más altos ralentizará la representación del efecto de brillo, incluso "
+"si los niveles anteriores no están habilitados."
#: doc/classes/Environment.xml:41
msgid ""
"The global brightness value of the rendered scene. Effective only if "
"[code]adjustment_enabled[/code] is [code]true[/code]."
msgstr ""
+"El valor de brillo global de la escena renderizada. Efectivo sólo si "
+"[code]adjustment_enabled[/code] es [code]true[/code]."
#: doc/classes/Environment.xml:44
msgid ""
@@ -22230,12 +27109,17 @@ msgid ""
"of the rendered scene. Effective only if [code]adjustment_enabled[/code] is "
"[code]true[/code]."
msgstr ""
+"Aplica el recurso proporcionado [Textura2D] para afectar el aspecto de color "
+"global de la escena renderizada. Efectivo sólo si [code]adjustment_enabled[/"
+"code] es [code]true[/code]."
#: doc/classes/Environment.xml:47
msgid ""
"The global contrast value of the rendered scene (default value is 1). "
"Effective only if [code]adjustment_enabled[/code] is [code]true[/code]."
msgstr ""
+"El valor de contraste global de la escena renderizada (el valor por defecto "
+"es 1). Efectivo sólo si [code]adjustment_enabled[/code] es [code]true[/code]."
#: doc/classes/Environment.xml:50
msgid ""
@@ -22244,21 +27128,30 @@ msgid ""
"[code]adjustment_*[/code] properties will have no effect on the rendered "
"scene."
msgstr ""
+"Si [code]true[/code], activa las propiedades [code]adjustment_*[/code] "
+"proporcionadas por este recurso. Si [code]false[/code], las modificaciones "
+"de las propiedades de [code]adjustment_*[/code] no tendrán ningún efecto en "
+"la escena renderizada."
#: doc/classes/Environment.xml:53
msgid ""
"The global color saturation value of the rendered scene (default value is "
"1). Effective only if [code]adjustment_enabled[/code] is [code]true[/code]."
msgstr ""
+"El valor de saturación de color global de la escena renderizada (el valor "
+"por defecto es 1). Efectivo sólo si [code]adjustment_enabled[/code] es "
+"[code]true[/code]."
#: doc/classes/Environment.xml:56
msgid "The ambient light's [Color]."
-msgstr ""
+msgstr "El [Color] de la luz ambiental."
#: doc/classes/Environment.xml:59
msgid ""
"The ambient light's energy. The higher the value, the stronger the light."
msgstr ""
+"La energía de la luz ambiental. Cuanto más alto es el valor, más fuerte es "
+"la luz."
#: doc/classes/Environment.xml:64
msgid ""
@@ -22269,6 +27162,12 @@ msgid ""
"provided by the sky, thus the ambient light parameter has no effect on the "
"scene."
msgstr ""
+"Define la cantidad de luz que el cielo trae a la escena. Un valor de 0 "
+"significa que la emisión de luz del cielo no tiene efecto en la iluminación "
+"de la escena, por lo tanto toda la iluminación ambiental es proporcionada "
+"por la luz ambiental. Por el contrario, un valor de 1 significa que toda la "
+"luz que afecta a la escena es proporcionada por el cielo, por lo tanto el "
+"parámetro de luz ambiental no tiene efecto en la escena."
#: doc/classes/Environment.xml:69
msgid ""
@@ -22277,76 +27176,96 @@ msgid ""
"determine the exposure setting to adapt to the scene's illumination and the "
"observed light."
msgstr ""
+"Si [code]true[/code], habilita el modo de exposición automática del mapa de "
+"tonos del renderizador de escenas. Si [code]true[/code], el renderizador "
+"determinará automáticamente el ajuste de exposición para adaptarse a la "
+"iluminación de la escena y a la luz observada."
#: doc/classes/Environment.xml:72
msgid "The maximum luminance value for the auto exposure."
-msgstr ""
+msgstr "El valor máximo de luminosidad para la exposición automática."
#: doc/classes/Environment.xml:75
msgid "The minimum luminance value for the auto exposure."
-msgstr ""
+msgstr "El valor mínimo de luminosidad para la exposición automática."
#: doc/classes/Environment.xml:78
msgid ""
"The scale of the auto exposure effect. Affects the intensity of auto "
"exposure."
msgstr ""
+"La escala del efecto de la exposición automática. Afecta a la intensidad de "
+"la exposición automática."
#: doc/classes/Environment.xml:81
msgid ""
"The speed of the auto exposure effect. Affects the time needed for the "
"camera to perform auto exposure."
msgstr ""
+"La velocidad del efecto de la exposición automática. Afecta al tiempo "
+"necesario para que la cámara realice la exposición automática."
#: doc/classes/Environment.xml:84
msgid "The ID of the camera feed to show in the background."
-msgstr ""
+msgstr "La identificación de la feed de la cámara para mostrarla en el fondo."
#: doc/classes/Environment.xml:87
msgid ""
"The maximum layer ID to display. Only effective when using the [constant "
"BG_CANVAS] background mode."
msgstr ""
+"El ID de la capa maxima a mostrar. Sólo es efectivo cuando se utiliza el "
+"modo de fondo [constant BG_CANVAS]."
#: doc/classes/Environment.xml:90
msgid ""
"The [Color] displayed for clear areas of the scene. Only effective when "
"using the [constant BG_COLOR] background mode."
msgstr ""
+"El [Color] se muestra para las zonas claras de la escena. Sólo es efectivo "
+"cuando se utiliza el modo de fondo [BG_COLOR constant]."
#: doc/classes/Environment.xml:93
msgid "The power of the light emitted by the background."
-msgstr ""
+msgstr "El poder de la luz emitida por el fondo."
#: doc/classes/Environment.xml:96
msgid "The background mode. See [enum BGMode] for possible values."
-msgstr ""
+msgstr "El modo de fondo. Ver [enum BGMode] para los posibles valores."
#: doc/classes/Environment.xml:99
msgid "The fog's [Color]."
-msgstr ""
+msgstr "El [Color] de la niebla."
#: doc/classes/Environment.xml:102
msgid "The fog's depth starting distance from the camera."
-msgstr ""
+msgstr "La profundidad de la niebla es la distancia inicial de la cámara."
#: doc/classes/Environment.xml:105
msgid ""
"The fog depth's intensity curve. A number of presets are available in the "
"[b]Inspector[/b] by right-clicking the curve."
msgstr ""
+"La curva de intensidad de la profundidad de la niebla. En el [b]Inspector[/"
+"b] se puede acceder a una serie de preajustes haciendo clic con el botón "
+"derecho del ratón en la curva."
#: doc/classes/Environment.xml:108
msgid ""
"If [code]true[/code], the depth fog effect is enabled. When enabled, fog "
"will appear in the distance (relative to the camera)."
msgstr ""
+"Si [code]true[/code], se activa el efecto de niebla de profundidad. Cuando "
+"se habilita, la niebla aparecerá en la distancia (relativa a la cámara)."
#: doc/classes/Environment.xml:111
msgid ""
"The fog's depth end distance from the camera. If this value is set to 0, it "
"will be equal to the current camera's [member Camera3D.far] value."
msgstr ""
+"La profundidad de la niebla termina a la distancia de la cámara. Si este "
+"valor se ajusta a 0, será igual al valor actual de la cámara [member "
+"Camera3D.far]."
#: doc/classes/Environment.xml:114
msgid ""
@@ -22354,12 +27273,17 @@ msgid ""
"and/or [member fog_depth_enabled] must be set to [code]true[/code] to "
"actually display fog."
msgstr ""
+"Si [code]true[/code], se activan los efectos de la niebla. [member "
+"fog_height_enabled] y/o [member fog_depth_enabled] deben estar ajustados a "
+"[code]true[/code] para mostrar realmente la niebla."
#: doc/classes/Environment.xml:117
msgid ""
"The height fog's intensity. A number of presets are available in the "
"[b]Inspector[/b] by right-clicking the curve."
msgstr ""
+"La intensidad de la niebla de altura. Se puede acceder a un número de "
+"preajustes en el [b]Inspector[/b] haciendo clic derecho en la curva."
#: doc/classes/Environment.xml:120
msgid ""
@@ -22368,6 +27292,11 @@ msgid ""
"camera. This can be used to simulate \"deep water\" effects with a lower "
"performance cost compared to a dedicated shader."
msgstr ""
+"Si [code]true[/code], se activa el efecto de niebla de altura. Cuando se "
+"habilita, la niebla aparecerá en un rango de altura definido, "
+"independientemente de la distancia de la cámara. Esto puede utilizarse para "
+"simular efectos de \"aguas profundas\" con un coste de rendimiento menor en "
+"comparación con un sombreador dedicado."
#: doc/classes/Environment.xml:123
msgid ""
@@ -22375,6 +27304,9 @@ msgid ""
"value is greater than [member fog_height_min], fog will be displayed from "
"bottom to top. Otherwise, it will be displayed from top to bottom."
msgstr ""
+"La coordenada Y donde la niebla de altura será más intensa. Si este valor es "
+"mayor que [member fog_height_min], la niebla se mostrará de abajo hacia "
+"arriba. De lo contrario, se mostrará de arriba a abajo."
#: doc/classes/Environment.xml:126
msgid ""
@@ -22382,6 +27314,9 @@ msgid ""
"value is greater than [member fog_height_max], fog will be displayed from "
"top to bottom. Otherwise, it will be displayed from bottom to top."
msgstr ""
+"La coordenada Y donde la niebla de altura será menos intensa. Si este valor "
+"es mayor que [member fog_height_max], la niebla se mostrará de arriba a "
+"abajo. De lo contrario, se mostrará de abajo hacia arriba."
#: doc/classes/Environment.xml:129
msgid ""
@@ -22389,46 +27324,59 @@ msgid ""
"sun. The sun's direction is determined automatically using the "
"DirectionalLight3D node in the scene."
msgstr ""
+"La intensidad de la transición del color de la niebla de profundidad cuando "
+"se mira hacia el sol. La dirección del sol se determina automáticamente "
+"usando el nodo DirectionalLight3D de la escena."
#: doc/classes/Environment.xml:132
msgid "The depth fog's [Color] when looking towards the sun."
-msgstr ""
+msgstr "El [Color] de la niebla profunda cuando se mira hacia el sol."
#: doc/classes/Environment.xml:135
msgid ""
"The intensity of the fog light transmittance effect. Amount of light that "
"the fog transmits."
msgstr ""
+"La intensidad del efecto de transmisión de la luz de la niebla. La cantidad "
+"de luz que la niebla transmite."
#: doc/classes/Environment.xml:138
msgid ""
"Enables fog's light transmission effect. If [code]true[/code], light will be "
"more visible in the fog to simulate light scattering as in real life."
msgstr ""
+"Permite el efecto de transmisión de la luz de la niebla. Si [code]true[/"
+"code], la luz será más visible en la niebla para simular la dispersión de la "
+"luz como en la vida real."
#: doc/classes/Environment.xml:141
msgid "The glow blending mode."
-msgstr ""
+msgstr "El modo de mezcla de brillo."
#: doc/classes/Environment.xml:144
msgid ""
"The bloom's intensity. If set to a value higher than [code]0[/code], this "
"will make glow visible in areas darker than the [member glow_hdr_threshold]."
msgstr ""
+"La intensidad del bloom. Si se ajusta a un valor superior a [code]0[/code], "
+"esto hará que el brillo sea visible en áreas más oscuras que el [member "
+"glow_hdr_threshold]."
#: doc/classes/Environment.xml:147
msgid "If [code]true[/code], the glow effect is enabled."
-msgstr ""
+msgstr "Si [code]true[/code], se activa el efecto de brillo."
#: doc/classes/Environment.xml:150
msgid ""
"The higher threshold of the HDR glow. Areas brighter than this threshold "
"will be clamped for the purposes of the glow effect."
msgstr ""
+"El umbral más alto del brillo del HDR. Las áreas más brillantes que este "
+"umbral serán fijadas para el efecto de brillo."
#: doc/classes/Environment.xml:153
msgid "The bleed scale of the HDR glow."
-msgstr ""
+msgstr "La escala de sangrado del brillo del HDR."
#: doc/classes/Environment.xml:156
msgid ""
@@ -22436,109 +27384,143 @@ msgid ""
"doesn't support HDR), this needs to be below [code]1.0[/code] for glow to be "
"visible. A value of [code]0.9[/code] works well in this case."
msgstr ""
+"El umbral inferior del brillo del HDR. Cuando se utiliza el renderizador "
+"GLES2 (que no soporta HDR), este debe estar por debajo de [code]1.0[/code] "
+"para que el brillo sea visible. Un valor de [code]0.9[/code] funciona bien "
+"en este caso."
#: doc/classes/Environment.xml:159
msgid ""
"The glow intensity. When using the GLES2 renderer, this should be increased "
"to 1.5 to compensate for the lack of HDR rendering."
msgstr ""
+"La intensidad del brillo. Cuando se utiliza el renderizador GLES2, debe "
+"aumentarse a 1,5 para compensar la falta de renderización HDR."
#: doc/classes/Environment.xml:162
msgid ""
"If [code]true[/code], the 1st level of glow is enabled. This is the most "
"\"local\" level (least blurry)."
msgstr ""
+"Si [code]true[/code], el 1er nivel de brillo está activado. Este es el nivel "
+"más \"local\" (menos borroso)."
#: doc/classes/Environment.xml:165
msgid "If [code]true[/code], the 2th level of glow is enabled."
-msgstr ""
+msgstr "Si [code]true[/code], se activa el 2º nivel de brillo."
#: doc/classes/Environment.xml:168
msgid "If [code]true[/code], the 3th level of glow is enabled."
-msgstr ""
+msgstr "Si [code]true[/code], se activa el 3º nivel de brillo."
#: doc/classes/Environment.xml:171
msgid "If [code]true[/code], the 4th level of glow is enabled."
-msgstr ""
+msgstr "Si [code]true[/code], se activa el 4º nivel de brillo."
#: doc/classes/Environment.xml:174
msgid "If [code]true[/code], the 5th level of glow is enabled."
-msgstr ""
+msgstr "Si [code]true[/code], el 5º nivel de brillo está activado."
#: doc/classes/Environment.xml:177
msgid "If [code]true[/code], the 6th level of glow is enabled."
-msgstr ""
+msgstr "Si [code]true[/code], el 6º nivel de brillo está activado."
#: doc/classes/Environment.xml:180
msgid ""
"If [code]true[/code], the 7th level of glow is enabled. This is the most "
"\"global\" level (blurriest)."
msgstr ""
+"Si [code]true[/code], el 7º nivel de brillo está activado. Este es el nivel "
+"más \"global\" (más borroso)."
#: doc/classes/Environment.xml:185
msgid ""
"The glow strength. When using the GLES2 renderer, this should be increased "
"to 1.3 to compensate for the lack of HDR rendering."
msgstr ""
+"La fuerza del brillo. Cuando se utiliza el renderizador GLES2, debe "
+"aumentarse a 1,3 para compensar la falta de renderización HDR."
-#: doc/classes/Environment.xml:190
+#: doc/classes/Environment.xml:214
msgid "The [Sky] resource used for this [Environment]."
-msgstr ""
+msgstr "El recurso [Sky] utilizado para este [Environment]."
-#: doc/classes/Environment.xml:197
+#: doc/classes/Environment.xml:221
msgid "The depth tolerance for screen-space reflections."
msgstr ""
+"La tolerancia de profundidad para los reflejos del espacio de la pantalla."
-#: doc/classes/Environment.xml:200
+#: doc/classes/Environment.xml:224
msgid ""
"If [code]true[/code], screen-space reflections are enabled. Screen-space "
"reflections are more accurate than reflections from [GIProbe]s or "
"[ReflectionProbe]s, but are slower and can't reflect surfaces occluded by "
"others."
msgstr ""
+"Si [code]true[/code], se activan los reflejos en el espacio de la pantalla. "
+"Los reflejos del espacio de la pantalla son más precisos que los de "
+"[GIProbe]s o [ReflectionProbe]s, pero son más lentos y no pueden reflejar "
+"superficies ocluidas por otros."
-#: doc/classes/Environment.xml:203
+#: doc/classes/Environment.xml:227
msgid ""
"The fade-in distance for screen-space reflections. Affects the area from the "
"reflected material to the screen-space reflection)."
msgstr ""
+"La distancia de desvanecimiento para los reflejos del espacio de la "
+"pantalla. afecta al área desde el material reflejado hasta el reflejo del "
+"espacio de la pantalla)."
-#: doc/classes/Environment.xml:206
+#: doc/classes/Environment.xml:230
msgid ""
"The fade-out distance for screen-space reflections. Affects the area from "
"the screen-space reflection to the \"global\" reflection."
msgstr ""
+"La distancia de desvanecimiento para los reflejos del espacio de la "
+"pantalla. afecta al área que va desde el reflejo del espacio de la pantalla "
+"hasta el reflejo \"global\"."
-#: doc/classes/Environment.xml:209
+#: doc/classes/Environment.xml:233
msgid ""
"The maximum number of steps for screen-space reflections. Higher values are "
"slower."
msgstr ""
+"El número máximo de pasos para los reflejos en el espacio de la pantalla. "
+"Los valores más altos son más lentos."
-#: doc/classes/Environment.xml:212
+#: doc/classes/Environment.xml:236
msgid ""
"The screen-space ambient occlusion intensity on materials that have an AO "
"texture defined. Values higher than [code]0[/code] will make the SSAO effect "
"visible in areas darkened by AO textures."
msgstr ""
+"La intensidad de la oclusión ambiental del espacio de pantalla en los "
+"materiales que tienen una textura de AO definida. Los valores superiores a "
+"[code]0[/code] harán visible el efecto SSAO en las áreas oscurecidas por las "
+"texturas de AO."
-#: doc/classes/Environment.xml:215
+#: doc/classes/Environment.xml:239
msgid ""
"The screen-space ambient occlusion bias. This should be kept high enough to "
"prevent \"smooth\" curves from being affected by ambient occlusion."
msgstr ""
+"El sesgo de oclusión ambiental del espacio de la pantalla. Debe mantenerse "
+"lo suficientemente alto para evitar que las curvas \"suaves\" se vean "
+"afectadas por la oclusión ambiental."
-#: doc/classes/Environment.xml:218
+#: doc/classes/Environment.xml:242
msgid ""
"The screen-space ambient occlusion blur quality. See [enum SSAOBlur] for "
"possible values."
msgstr ""
+"La calidad de la difusión de la oclusión ambiental del espacio de la "
+"pantalla. Ver [enum SSAOBlur] para los posibles valores."
-#: doc/classes/Environment.xml:221
+#: doc/classes/Environment.xml:245
msgid "The screen-space ambient occlusion edge sharpness."
-msgstr ""
+msgstr "La nitidez del borde de oclusión ambiental del espacio de la pantalla."
-#: doc/classes/Environment.xml:224
+#: doc/classes/Environment.xml:248
msgid ""
"If [code]true[/code], the screen-space ambient occlusion effect is enabled. "
"This darkens objects' corners and cavities to simulate ambient light not "
@@ -22548,178 +27530,233 @@ msgid ""
"a costly effect and should be disabled first when running into performance "
"issues."
msgstr ""
+"Si [code]true[/code], se activa el efecto de oclusión ambiental del espacio "
+"de pantalla. Esto oscurece las esquinas y cavidades de los objetos para "
+"simular que la luz ambiental no llega a todo el objeto como en la vida real. "
+"Esto funciona bien para objetos pequeños y dinámicos, pero la iluminación "
+"cocinada o las texturas de oclusión ambiental funcionarán mejor para mostrar "
+"la oclusión ambiental en grandes objetos estáticos. Este es un efecto "
+"costoso y debe ser desactivado primero cuando se presenten problemas de "
+"rendimiento."
-#: doc/classes/Environment.xml:227
+#: doc/classes/Environment.xml:251
msgid ""
"The primary screen-space ambient occlusion intensity. See also [member "
"ssao_radius]."
msgstr ""
+"La intensidad de oclusión ambiental del espacio de pantalla principal. Véase "
+"también [member ssao_radius]."
-#: doc/classes/Environment.xml:230
+#: doc/classes/Environment.xml:254
msgid ""
"The screen-space ambient occlusion intensity in direct light. In real life, "
"ambient occlusion only applies to indirect light, which means its effects "
"can't be seen in direct light. Values higher than [code]0[/code] will make "
"the SSAO effect visible in direct light."
msgstr ""
+"La intensidad de la oclusión ambiental del espacio de la pantalla en luz "
+"directa. En la vida real, la oclusión ambiental sólo se aplica a la luz "
+"indirecta, lo que significa que sus efectos no se pueden ver con luz "
+"directa. Los valores superiores a [code]0[/code] harán que el efecto SSAO "
+"sea visible en luz directa."
-#: doc/classes/Environment.xml:233
+#: doc/classes/Environment.xml:257
msgid "The primary screen-space ambient occlusion radius."
-msgstr ""
+msgstr "El radio de oclusión ambiental del espacio de pantalla principal."
-#: doc/classes/Environment.xml:236
+#: doc/classes/Environment.xml:260
msgid "The default exposure used for tonemapping."
-msgstr ""
+msgstr "La exposición predeterminada que se utiliza para el mapeo de tonos."
-#: doc/classes/Environment.xml:239
+#: doc/classes/Environment.xml:263
msgid ""
"The tonemapping mode to use. Tonemapping is the process that \"converts\" "
"HDR values to be suitable for rendering on a LDR display. (Godot doesn't "
"support rendering on HDR displays yet.)"
msgstr ""
+"El modo de mapeo de tonos a utilizar. El \"tonemapping\" es el proceso que "
+"\"convierte\" los valores HDR para que sean adecuados para su representación "
+"en una pantalla LDR. (Godot todavía no soporta la renderización en pantallas "
+"HDR)."
-#: doc/classes/Environment.xml:242
+#: doc/classes/Environment.xml:266
msgid ""
"The white reference value for tonemapping. Only effective if the [member "
"tonemap_mode] isn't set to [constant TONE_MAPPER_LINEAR]."
msgstr ""
+"El valor de referencia del blanco para el mapa de tonos. Sólo es efectivo si "
+"el [member tonemap_mode] no se establece en [constant TONE_MAPPER_LINEAR]."
-#: doc/classes/Environment.xml:247
+#: doc/classes/Environment.xml:271
msgid ""
"Clears the background using the clear color defined in [member "
"ProjectSettings.rendering/environment/default_clear_color]."
msgstr ""
+"Borra el fondo usando el color claro definido en [member ProjectSettings."
+"rendering/environment/default_clear_color]."
-#: doc/classes/Environment.xml:250
+#: doc/classes/Environment.xml:274
msgid "Clears the background using a custom clear color."
-msgstr ""
+msgstr "Despeja el fondo usando un color claro personalizado."
-#: doc/classes/Environment.xml:253
+#: doc/classes/Environment.xml:277
msgid "Displays a user-defined sky in the background."
-msgstr ""
+msgstr "Muestra un cielo definido por el usuario en el fondo."
-#: doc/classes/Environment.xml:256
+#: doc/classes/Environment.xml:280
msgid "Displays a [CanvasLayer] in the background."
-msgstr ""
+msgstr "Muestra una [CanvasLayer] en el fondo."
-#: doc/classes/Environment.xml:259
+#: doc/classes/Environment.xml:283
msgid ""
"Keeps on screen every pixel drawn in the background. This is the fastest "
"background mode, but it can only be safely used in fully-interior scenes (no "
"visible sky or sky reflections). If enabled in a scene where the background "
"is visible, \"ghost trail\" artifacts will be visible when moving the camera."
msgstr ""
+"Mantiene en pantalla cada píxel dibujado en el fondo. Este es el modo de "
+"fondo más rápido, pero sólo puede ser usado con seguridad en escenas de "
+"interior (sin reflejos visibles en el cielo o en el cielo). Si se activa en "
+"una escena en la que el fondo es visible, los artefactos de \"rastro fantasma"
+"\" serán visibles al mover la cámara."
-#: doc/classes/Environment.xml:262 doc/classes/RenderingServer.xml:3446
+#: doc/classes/Environment.xml:286 doc/classes/RenderingServer.xml:3457
msgid "Displays a camera feed in the background."
-msgstr ""
+msgstr "Muestra un feed de una cámara en el fondo."
-#: doc/classes/Environment.xml:265
+#: doc/classes/Environment.xml:289
msgid "Represents the size of the [enum BGMode] enum."
-msgstr ""
+msgstr "Representa el tamaño del enum [enum BGMode]."
-#: doc/classes/Environment.xml:268 doc/classes/RenderingServer.xml:3452
+#: doc/classes/Environment.xml:292 doc/classes/RenderingServer.xml:3463
msgid ""
"Gather ambient light from whichever source is specified as the background."
msgstr ""
+"Recoge la luz ambiental de cualquier fuente que se especifique como fondo."
-#: doc/classes/Environment.xml:271 doc/classes/RenderingServer.xml:3455
+#: doc/classes/Environment.xml:295 doc/classes/RenderingServer.xml:3466
msgid "Disable ambient light."
-msgstr ""
+msgstr "Deshabilita la luz ambiental."
-#: doc/classes/Environment.xml:274 doc/classes/RenderingServer.xml:3458
+#: doc/classes/Environment.xml:298 doc/classes/RenderingServer.xml:3469
msgid "Specify a specific [Color] for ambient light."
-msgstr ""
+msgstr "Especifique un [Color] específico para la luz ambiental."
-#: doc/classes/Environment.xml:277 doc/classes/RenderingServer.xml:3461
+#: doc/classes/Environment.xml:301 doc/classes/RenderingServer.xml:3472
msgid ""
"Gather ambient light from the [Sky] regardless of what the background is."
-msgstr ""
+msgstr "Recoge la luz ambiental del [Sky] sin importar cuál sea el fondo."
-#: doc/classes/Environment.xml:280 doc/classes/RenderingServer.xml:3464
+#: doc/classes/Environment.xml:304 doc/classes/RenderingServer.xml:3475
msgid "Use the background for reflections."
-msgstr ""
+msgstr "Usar el fondo para los reflejos."
-#: doc/classes/Environment.xml:283 doc/classes/RenderingServer.xml:3467
+#: doc/classes/Environment.xml:307 doc/classes/RenderingServer.xml:3478
msgid "Disable reflections."
-msgstr ""
+msgstr "Deshabilita los reflejos."
-#: doc/classes/Environment.xml:286 doc/classes/RenderingServer.xml:3470
+#: doc/classes/Environment.xml:310 doc/classes/RenderingServer.xml:3481
msgid "Use the [Sky] for reflections regardless of what the background is."
+msgstr "Usar el [Sky] para los reflejos sin importar cuál es el fondo."
+
+#: doc/classes/Environment.xml:313
+msgid ""
+"Linear tonemapper operator. Reads the linear data and passes it on "
+"unmodified."
+msgstr ""
+"Operador lineal de mapas de tonos. Lee los datos lineales y los transmite "
+"sin modificar."
+
+#: doc/classes/Environment.xml:316
+msgid ""
+"Reinhardt tonemapper operator. Performs a variation on rendered pixels' "
+"colors by this formula: [code]color = color / (1 + color)[/code]."
msgstr ""
+"Operador de mapeado de tonos Reinhardt. Realiza una variación de los colores "
+"de los píxeles renderizados por esta fórmula: [code]color = color / (1 + "
+"color)[/code]."
-#: doc/classes/Environment.xml:289 doc/classes/RenderingServer.xml:3473
+#: doc/classes/Environment.xml:319
+msgid "Filmic tonemapper operator."
+msgstr "Operador de mazos fílmicos."
+
+#: doc/classes/Environment.xml:322
+msgid "Academy Color Encoding System tonemapper operator."
+msgstr "Operador del Sistema de Codificación de Color de la Academia."
+
+#: doc/classes/Environment.xml:325 doc/classes/RenderingServer.xml:3484
msgid ""
"Additive glow blending mode. Mostly used for particles, glows (bloom), lens "
"flare, bright sources."
msgstr ""
+"Modo de mezcla de brillo aditivo. Se utiliza principalmente para partículas, "
+"brillos (florecimiento), destellos de lentes, fuentes brillantes."
-#: doc/classes/Environment.xml:292 doc/classes/RenderingServer.xml:3476
+#: doc/classes/Environment.xml:328 doc/classes/RenderingServer.xml:3487
msgid ""
"Screen glow blending mode. Increases brightness, used frequently with bloom."
msgstr ""
+"Modo de mezcla de brillo de pantalla. Aumenta el brillo, se usa "
+"frecuentemente con el bloom."
-#: doc/classes/Environment.xml:295 doc/classes/RenderingServer.xml:3479
+#: doc/classes/Environment.xml:331 doc/classes/RenderingServer.xml:3490
msgid ""
"Soft light glow blending mode. Modifies contrast, exposes shadows and "
"highlights (vivid bloom)."
msgstr ""
+"Modo de mezcla de brillo de luz suave. Modifica el contraste, expone sombras "
+"y luces (bloom vivo)."
-#: doc/classes/Environment.xml:298 doc/classes/RenderingServer.xml:3482
+#: doc/classes/Environment.xml:334 doc/classes/RenderingServer.xml:3493
msgid ""
"Replace glow blending mode. Replaces all pixels' color by the glow value. "
"This can be used to simulate a full-screen blur effect by tweaking the glow "
"parameters to match the original image's brightness."
msgstr ""
+"Reemplazar el modo de mezcla de brillo. Reemplaza el color de todos los "
+"píxeles por el valor de brillo. Puede utilizarse para simular un efecto de "
+"desenfoque en pantalla completa ajustando los parámetros de brillo para que "
+"coincidan con el brillo de la imagen original."
-#: doc/classes/Environment.xml:301 doc/classes/RenderingServer.xml:3485
+#: doc/classes/Environment.xml:337 doc/classes/RenderingServer.xml:3496
msgid ""
"Mixes the glow with the underlying color to avoid increasing brightness as "
"much while still maintaining a glow effect."
msgstr ""
+"Mezcla el resplandor con el color subyacente para evitar aumentar el brillo "
+"tanto como sea posible manteniendo el efecto de resplandor."
-#: doc/classes/Environment.xml:304
-msgid ""
-"Linear tonemapper operator. Reads the linear data and passes it on "
-"unmodified."
-msgstr ""
-
-#: doc/classes/Environment.xml:307
-msgid ""
-"Reinhardt tonemapper operator. Performs a variation on rendered pixels' "
-"colors by this formula: [code]color = color / (1 + color)[/code]."
-msgstr ""
-
-#: doc/classes/Environment.xml:310
-msgid "Filmic tonemapper operator."
-msgstr ""
-
-#: doc/classes/Environment.xml:313
-msgid "Academy Color Encoding System tonemapper operator."
-msgstr ""
-
-#: doc/classes/Environment.xml:316
+#: doc/classes/Environment.xml:340
msgid "No blur for the screen-space ambient occlusion effect (fastest)."
msgstr ""
+"No hay desenfoque para el efecto de oclusión ambiental del espacio de la "
+"pantalla (más rápido)."
-#: doc/classes/Environment.xml:319
+#: doc/classes/Environment.xml:343
msgid "1×1 blur for the screen-space ambient occlusion effect."
msgstr ""
+"Desenfoque de 1×1 para el efecto de oclusión ambiental del espacio de la "
+"pantalla."
-#: doc/classes/Environment.xml:322
+#: doc/classes/Environment.xml:346
msgid "2×2 blur for the screen-space ambient occlusion effect."
msgstr ""
+"Desenfoque de 2×2 para el efecto de oclusión ambiental del espacio de la "
+"pantalla."
-#: doc/classes/Environment.xml:325
+#: doc/classes/Environment.xml:349
msgid ""
"3×3 blur for the screen-space ambient occlusion effect. Increases the radius "
"of the blur for a smoother look, but can result in checkerboard-like "
"artifacts."
msgstr ""
+"Desenfoque de 3×3 para el efecto de oclusión ambiental del espacio de la "
+"pantalla. Aumenta el radio del desenfoque para una apariencia más suave, "
+"pero puede dar lugar a artefactos similares al tablero de ajedrez."
#: doc/classes/Expression.xml:4
msgid "A class that stores an expression you can execute."
-msgstr ""
+msgstr "Una clase que almacena una expresión que puedes ejecutar."
#: doc/classes/Expression.xml:7
msgid ""
@@ -22746,6 +27783,28 @@ msgid ""
" $LineEdit.text = str(result)\n"
"[/codeblock]"
msgstr ""
+"Se puede hacer una expresión de cualquier operación aritmética, llamada de "
+"función matemática incorporada, llamada de método de una instancia pasada o "
+"llamada de construcción de tipo incorporado.\n"
+"Un ejemplo de expresión de texto utilizando las funciones matemáticas "
+"incorporadas podría ser [code]sqrt(pow(3,2) + pow(4,2))[/code].\n"
+"En el siguiente ejemplo usamos un nodo [LineEdit] para escribir nuestra "
+"expresión y mostrar el resultado.\n"
+"[codeblock]\n"
+"onready var expression = Expression.new()\n"
+"\n"
+"func _ready():\n"
+" $LineEdit.connect(\"text_entered\", self, \"_on_text_entered\")\n"
+"\n"
+"func _on_text_entered(command):\n"
+" var error = expression.parse(command, [])\n"
+" if error != OK:\n"
+" print(expression.get_error_text())\n"
+" return\n"
+" var result = expression.execute([], null, true)\n"
+" if not expression.has_execute_failed():\n"
+" $LineEdit.text = str(result)\n"
+"[/codeblock]"
#: doc/classes/Expression.xml:39
msgid ""
@@ -22755,14 +27814,19 @@ msgid ""
"If you defined input variables in [method parse], you can specify their "
"values in the inputs array, in the same order."
msgstr ""
+"Ejecuta la expresión que fue previamente analizada por [method parse] y "
+"devuelve el resultado. Antes de usar el objeto devuelto, debería comprobar "
+"si el método falló llamando a [method has_execute_failed].\n"
+"Si ha definido las variables de entrada en [method parse], puede especificar "
+"sus valores en el array de entradas, en el mismo orden."
#: doc/classes/Expression.xml:47
msgid "Returns the error text if [method parse] has failed."
-msgstr ""
+msgstr "Devuelve el texto de error si el [method parse] ha fallado."
#: doc/classes/Expression.xml:54
msgid "Returns [code]true[/code] if [method execute] has failed."
-msgstr ""
+msgstr "Devuelve [code]true[/code] si [method execute] ha fallado."
#: doc/classes/Expression.xml:65
msgid ""
@@ -22771,12 +27835,18 @@ msgid ""
"expression with [code]input_names[/code], so that you can bind them when it "
"gets executed."
msgstr ""
+"Analiza la expresión y devuelve un código [enum Error].\n"
+"Opcionalmente puedes especificar los nombres de las variables que pueden "
+"aparecer en la expresión con [code]input_names[/code], para que puedas "
+"enlazarlas cuando se ejecute."
#: doc/classes/File.xml:4
msgid "Type to handle file reading and writing operations."
msgstr ""
+"Escriba para manejar las operaciones de lectura y escritura de archivos."
#: doc/classes/File.xml:7
+#, fuzzy
msgid ""
"File type. This is used to permanently store data into the user device's "
"file system and to read from it. This can be used to store game save data or "
@@ -22795,14 +27865,36 @@ msgid ""
" var content = file.get_as_text()\n"
" file.close()\n"
" return content\n"
+"[/codeblock]\n"
+"In the example above, the file will be saved in the user data folder as "
+"specified in the [url=https://docs.godotengine.org/en/latest/tutorials/io/"
+"data_paths.html]Data paths[/url] documentation."
+msgstr ""
+"Tipo de archivo. Se utiliza para almacenar permanentemente datos en el "
+"sistema de archivos del dispositivo de usuario y para leer de él. Puede "
+"utilizarse para almacenar datos de guardado de juegos o archivos de "
+"configuración de jugadores, por ejemplo.\n"
+"Aquí hay un ejemplo de cómo escribir y leer de un archivo:\n"
+"[codeblock]\n"
+"func save(content):\n"
+" var archivo = File.new()\n"
+" archivo.open(\"user://guardado_juego.dat\", File.WRITE)\n"
+" archivo.store_string(contenido)\n"
+" archivo.close()\n"
+"\n"
+"func load():\n"
+" var archivo = File.new()\n"
+" file.open(\"user://guardado_juego.dat\", File.READ)\n"
+" var contenido = file.get_as_text()\n"
+" archivo.close()\n"
+" return contenido\n"
"[/codeblock]"
-msgstr ""
-#: doc/classes/File.xml:32
+#: doc/classes/File.xml:33
msgid "Closes the currently opened file."
-msgstr ""
+msgstr "Cierra el archivo actualmente abierto."
-#: doc/classes/File.xml:39
+#: doc/classes/File.xml:40
msgid ""
"Returns [code]true[/code] if the file cursor has read past the end of the "
"file.\n"
@@ -22812,8 +27904,16 @@ msgid ""
"operating systems. There is always [method get_len] and [method "
"get_position] to implement a custom logic."
msgstr ""
+"Devuelve [code]true[/code] si el cursor del archivo ha leído más allá del "
+"final del mismo.\n"
+"[b]Nota:[/b] Esta función seguirá devolviendo [code]false[/code] mientras se "
+"encuentre al final del archivo y sólo se activa cuando se lee más allá de "
+"él. Esto puede ser confuso pero se ajusta a la forma en que funciona el "
+"acceso a archivos de bajo nivel en todos los sistemas operativos. Siempre "
+"hay [method get_len] y [method get_position] para implementar una lógica "
+"personalizada."
-#: doc/classes/File.xml:49
+#: doc/classes/File.xml:50
msgid ""
"Returns [code]true[/code] if the file exists in the given path.\n"
"[b]Note:[/b] Many resources types are imported (e.g. textures or sound "
@@ -22825,42 +27925,68 @@ msgid ""
"imported resource would work while you are developing in the editor (the "
"source asset is present in [code]res://[/code], but fail when exported)."
msgstr ""
+"Devuelve [code]true[/code] si el archivo existe en la ruta dada.\n"
+"[b]Nota:[/b] Se importan muchos tipos de recursos (por ejemplo, texturas o "
+"archivos de sonido), y que su activo fuente no se incluirá en el juego "
+"exportado, ya que sólo se utiliza la versión importada (en la carpeta "
+"[code]res://.import[/code]). Para comprobar la existencia de dichos recursos "
+"teniendo en cuenta la redistribución a su ubicación importada, utilice el "
+"[method ResourceLoader.exists]. Normalmente, el uso de [code]File."
+"file_exists[/code] en un recurso importado funcionaría mientras está "
+"desarrollando en el editor (el activo fuente está presente en [code]res://[/"
+"code], pero falla cuando se exporta)."
-#: doc/classes/File.xml:57
+#: doc/classes/File.xml:58
msgid ""
"Returns the next 16 bits from the file as an integer. See [method store_16] "
"for details on what values can be stored and retrieved this way."
msgstr ""
+"Devuelve los siguientes 16 bits del archivo como un número entero. Ver "
+"[method store_16] para detalles sobre qué valores pueden ser almacenados y "
+"recuperados de esta manera."
-#: doc/classes/File.xml:64
+#: doc/classes/File.xml:65
msgid ""
"Returns the next 32 bits from the file as an integer. See [method store_32] "
"for details on what values can be stored and retrieved this way."
msgstr ""
+"Devuelve los siguientes 32 bits del archivo como un número entero. Ver "
+"[method store_32] para detalles sobre qué valores pueden ser almacenados y "
+"recuperados de esta manera."
-#: doc/classes/File.xml:71
+#: doc/classes/File.xml:72
msgid ""
"Returns the next 64 bits from the file as an integer. See [method store_64] "
"for details on what values can be stored and retrieved this way."
msgstr ""
+"Devuelve los siguientes 64 bits del archivo como un entero. Ver [method "
+"store_64] para detalles sobre qué valores pueden ser almacenados y "
+"recuperados de esta manera."
-#: doc/classes/File.xml:78
+#: doc/classes/File.xml:79
msgid ""
"Returns the next 8 bits from the file as an integer. See [method store_8] "
"for details on what values can be stored and retrieved this way."
msgstr ""
+"Devuelve los siguientes 8 bits del archivo como un entero. Ver [method "
+"store_8] para detalles sobre qué valores pueden ser almacenados y "
+"recuperados de esta manera."
-#: doc/classes/File.xml:85
+#: doc/classes/File.xml:86
msgid ""
"Returns the whole file as a [String].\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
+"Devuelve todo el archivo como una [String].\n"
+"El texto se interpreta como codificado en UTF-8."
-#: doc/classes/File.xml:95
+#: doc/classes/File.xml:96
msgid "Returns next [code]len[/code] bytes of the file as a [PackedByteArray]."
msgstr ""
+"Devuelve los siguientes [code]len[/code] bytes del archivo como un "
+"[PackedByteArray]."
-#: doc/classes/File.xml:104
+#: doc/classes/File.xml:105
msgid ""
"Returns the next value of the file in CSV (Comma-Separated Values) format. "
"You can pass a different delimiter [code]delim[/code] to use other than the "
@@ -22868,74 +27994,94 @@ msgid ""
"long.\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
+"Devuelve el siguiente valor del archivo en formato CSV (Comma-Separated "
+"Values). Puedes pasar un delimitador diferente [code]delim[/code] para usar "
+"otro que no sea el predeterminado [code]\",\"[/code] (coma). Este "
+"delimitador debe tener un carácter de longitud.\n"
+"El texto se interpreta como si estuviera codificado en UTF-8."
-#: doc/classes/File.xml:112
+#: doc/classes/File.xml:113
msgid "Returns the next 64 bits from the file as a floating-point number."
-msgstr ""
+msgstr "Devuelve los siguientes 64 bits del archivo como un real."
-#: doc/classes/File.xml:119
+#: doc/classes/File.xml:120
msgid ""
"Returns the last error that happened when trying to perform operations. "
"Compare with the [code]ERR_FILE_*[/code] constants from [enum Error]."
msgstr ""
+"Devuelve el último error que ocurrió al intentar realizar las operaciones. "
+"Compare con las constantes [code]ERR_FILE_*[/code] de [enum Error]."
-#: doc/classes/File.xml:126
+#: doc/classes/File.xml:127
msgid "Returns the next 32 bits from the file as a floating-point number."
-msgstr ""
+msgstr "Devuelve los siguientes 32 bits del archivo como un número real."
-#: doc/classes/File.xml:133
+#: doc/classes/File.xml:134
msgid "Returns the size of the file in bytes."
-msgstr ""
+msgstr "Devuelve el tamaño del archivo en bytes."
-#: doc/classes/File.xml:140
+#: doc/classes/File.xml:141
msgid ""
"Returns the next line of the file as a [String].\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
+"Devuelve la siguiente línea del archivo como una [String].\n"
+"El texto se interpreta como codificado en UTF-8."
-#: doc/classes/File.xml:150
+#: doc/classes/File.xml:151
msgid ""
"Returns an MD5 String representing the file at the given path or an empty "
"[String] on failure."
msgstr ""
+"Devuelve una string MD5 que representa el archivo en la ruta dada o una "
+"[String] vacía al fallar."
-#: doc/classes/File.xml:159
+#: doc/classes/File.xml:160
msgid ""
"Returns the last time the [code]file[/code] was modified in unix timestamp "
"format or returns a [String] \"ERROR IN [code]file[/code]\". This unix "
"timestamp can be converted to datetime by using [method OS."
"get_datetime_from_unix_time]."
msgstr ""
+"Devuelve la última vez que se modificó el archivo [code]file[/code] en "
+"formato de marca de tiempo unix o devuelve un [String] \"ERROR EN EL "
+"[code]file[/code]\". Esta marca de tiempo unix puede ser convertida en fecha "
+"y hora usando el [method OS.get_datetime_from_unix_time]."
-#: doc/classes/File.xml:166
+#: doc/classes/File.xml:167
msgid ""
"Returns a [String] saved in Pascal format from the file.\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
+"Devuelve una [String] guardada en formato Pascal del archivo.\n"
+"El texto se interpreta como codificado en UTF-8."
-#: doc/classes/File.xml:174
+#: doc/classes/File.xml:175
msgid "Returns the path as a [String] for the current open file."
-msgstr ""
+msgstr "Devuelve la ruta como una [String] para el archivo abierto actual."
-#: doc/classes/File.xml:181
+#: doc/classes/File.xml:182
msgid "Returns the absolute path as a [String] for the current open file."
msgstr ""
+"Devuelve la ruta absoluta como una [String] para el archivo abierto actual."
-#: doc/classes/File.xml:188
+#: doc/classes/File.xml:189
msgid "Returns the file cursor's position."
-msgstr ""
+msgstr "Devuelve la posición del cursor del archivo."
-#: doc/classes/File.xml:195
+#: doc/classes/File.xml:196
msgid "Returns the next bits from the file as a floating-point number."
-msgstr ""
+msgstr "Devuelve los siguientes bits del archivo como un número real."
-#: doc/classes/File.xml:204
+#: doc/classes/File.xml:205
msgid ""
"Returns a SHA-256 [String] representing the file at the given path or an "
"empty [String] on failure."
msgstr ""
+"Devuelve un SHA-256 [String] que representa el archivo en la ruta dada o un "
+"[String] vacío al fallar."
-#: doc/classes/File.xml:213
+#: doc/classes/File.xml:214
msgid ""
"Returns the next [Variant] value from the file. If [code]allow_objects[/"
"code] is [code]true[/code], decoding objects is allowed.\n"
@@ -22943,46 +28089,64 @@ msgid ""
"Do not use this option if the serialized object comes from untrusted sources "
"to avoid potential security threats such as remote code execution."
msgstr ""
+"Devuelve el siguiente valor [Variant] del archivo. Si [code]allow_objects[/"
+"code] es [code]true[/code], se permite la decodificación de objetos.\n"
+"[b]Advertencia:[/b] Los objetos deserializados pueden contener código que se "
+"ejecuta. No utilice esta opción si el objeto serializado proviene de fuentes "
+"no fiables para evitar posibles amenazas a la seguridad, como la ejecución "
+"remota de código."
-#: doc/classes/File.xml:221
+#: doc/classes/File.xml:222
msgid "Returns [code]true[/code] if the file is currently opened."
-msgstr ""
+msgstr "Devuelve [code]true[/code] si el archivo está actualmente abierto."
-#: doc/classes/File.xml:232
+#: doc/classes/File.xml:233
msgid "Opens the file for writing or reading, depending on the flags."
-msgstr ""
+msgstr "Abre el archivo para escribir o leer, dependiendo de las flags."
-#: doc/classes/File.xml:245
+#: doc/classes/File.xml:246
msgid "Opens a compressed file for reading or writing."
-msgstr ""
+msgstr "Abre un archivo comprimido para leer o escribir."
-#: doc/classes/File.xml:258
+#: doc/classes/File.xml:259
+#, fuzzy
msgid ""
"Opens an encrypted file in write or read mode. You need to pass a binary key "
-"to encrypt/decrypt it."
+"to encrypt/decrypt it.\n"
+"[b]Note:[/b] The provided key must be 32 bytes long."
msgstr ""
+"Abre un archivo encriptado en modo de escritura o lectura. Necesitas pasar "
+"una clave binaria para encriptarlo/desencriptarlo."
-#: doc/classes/File.xml:271
+#: doc/classes/File.xml:273
msgid ""
"Opens an encrypted file in write or read mode. You need to pass a password "
"to encrypt/decrypt it."
msgstr ""
+"Abre un archivo encriptado en modo de escritura o lectura. Necesitas pasar "
+"una contraseña para encriptarlo/desencriptarlo."
-#: doc/classes/File.xml:280
+#: doc/classes/File.xml:282
msgid ""
"Changes the file reading/writing cursor to the specified position (in bytes "
"from the beginning of the file)."
msgstr ""
+"Cambia el cursor de lectura/escritura del archivo a la posición especificada "
+"(en bytes desde el principio del archivo)."
-#: doc/classes/File.xml:289
+#: doc/classes/File.xml:291
msgid ""
"Changes the file reading/writing cursor to the specified position (in bytes "
"from the end of the file).\n"
"[b]Note:[/b] This is an offset, so you should use negative numbers or the "
"cursor will be at the end of the file."
msgstr ""
+"Cambia el cursor de lectura/escritura del archivo a la posición especificada "
+"(en bytes desde el final del archivo).\n"
+"[b]Nota:[/b] Se trata de un desplazamiento, por lo que debe utilizar números "
+"negativos o el cursor estará al final del archivo."
-#: doc/classes/File.xml:299
+#: doc/classes/File.xml:301
msgid ""
"Stores an integer as 16 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, "
@@ -23009,8 +28173,33 @@ msgid ""
" var converted2 = unsigned16_to_signed(read2) # 121\n"
"[/codeblock]"
msgstr ""
+"Almacena un entero como 16 bits en el archivo.\n"
+"[b]Nota:[/b] El valor [code]value[/code] debe estar en el intervalo [code]"
+"[0, 2^16 - 1][/code]. Cualquier otro valor se desbordará y se envolverá.\n"
+"Para almacenar un entero con signo, use [method store_64] o almacene un "
+"entero con signo del intervalo [code][-2^15, 2^15 - 1][/code] (es decir, "
+"manteniendo un bit para el signo) y calcule su signo manualmente al leer. "
+"Por ejemplo:\n"
+"[codeblock]\n"
+"const MAX_15B = 1 << 15\n"
+"const MAX_16B = 1 << 16\n"
+"\n"
+"func unsigned16_to_signed(unsigned):\n"
+" return (unsigned + MAX_15B) % MAX_16B - MAX_15B\n"
+"\n"
+"func _ready():\n"
+" var f = File.new()\n"
+" f.open(\"user://file.dat\", File.WRITE_READ)\n"
+" f.store_16(-42) # Esto envuelve y almacena 65494 (2^16 - 42).\n"
+" f.store_16(121) # En los límites, almacenará 121.\n"
+" f.seek(0) # Vuelve al comienzo a leer el valor almacenado.\n"
+" var lectura1 = f.get_16() # 65494\n"
+" var lectura2 = f.get_16() # 121\n"
+" var convertido1 = unsigned16_to_signed(lectura2) # -42\n"
+" var convertido2 = unsigned16_to_signed(lectura2) # 121\n"
+"[/codeblock]"
-#: doc/classes/File.xml:328
+#: doc/classes/File.xml:330
msgid ""
"Stores an integer as 32 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, "
@@ -23018,15 +28207,23 @@ msgid ""
"To store a signed integer, use [method store_64], or convert it manually "
"(see [method store_16] for an example)."
msgstr ""
+"Almacena un entero como 32 bits en el archivo.\n"
+"[b]Nota:[/b] El valor [code]value[/code] debe estar en el intervalo [code]"
+"[0, 2^32 - 1][/code]. Cualquier otro valor se desbordará y se envolverá.\n"
+"Para almacenar un entero con signo, usa [method store_64], o conviértelo "
+"manualmente (ver [method store_16] para un ejemplo)."
-#: doc/classes/File.xml:339
+#: doc/classes/File.xml:341
msgid ""
"Stores an integer as 64 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] must lie in the interval [code][-2^63, "
"2^63 - 1][/code] (i.e. be a valid [int] value)."
msgstr ""
+"Almacena un entero como 64 bits en el archivo.\n"
+"[b]Nota:[/b] El [code]value[/code] debe estar en el intervalo [code][-2^63, "
+"2^63 - 1][/code] (es decir, ser un valor [int] válido)."
-#: doc/classes/File.xml:349
+#: doc/classes/File.xml:351
msgid ""
"Stores an integer as 8 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, 255]"
@@ -23034,12 +28231,17 @@ msgid ""
"To store a signed integer, use [method store_64], or convert it manually "
"(see [method store_16] for an example)."
msgstr ""
+"Almacena un entero como 8 bits en el archivo.\n"
+"[b]Nota:[/b] El [code]value[/code] debe estar en el intervalo [code][0, 255]"
+"[/code]. Cualquier otro valor se desbordará y se envolverá.\n"
+"Para almacenar un entero firmado, usa [method store_64], o conviértelo "
+"manualmente (ver [method store_16] para un ejemplo)."
-#: doc/classes/File.xml:360
+#: doc/classes/File.xml:362
msgid "Stores the given array of bytes in the file."
-msgstr ""
+msgstr "Almacena el array de bytes dados en el archivo."
-#: doc/classes/File.xml:371
+#: doc/classes/File.xml:373
msgid ""
"Store the given [PackedStringArray] in the file as a line formatted in the "
"CSV (Comma-Separated Values) format. You can pass a different delimiter "
@@ -23047,97 +28249,127 @@ msgid ""
"This delimiter must be one-character long.\n"
"Text will be encoded as UTF-8."
msgstr ""
+"Almacena el [PackedStringArray] dado en el archivo como una línea formateada "
+"en el formato CSV (Comma-Separated Values). Puede pasar un delimitador "
+"diferente [code]delim[/code] para usar otro que no sea el [code]\",\"[/code] "
+"(coma). Este delimitador debe tener un carácter de longitud.\n"
+"El texto se codificará como UTF-8."
-#: doc/classes/File.xml:381
+#: doc/classes/File.xml:383
msgid "Stores a floating-point number as 64 bits in the file."
-msgstr ""
+msgstr "Almacena un número de punto flotante como 64 bits en el archivo."
-#: doc/classes/File.xml:390
+#: doc/classes/File.xml:392
msgid "Stores a floating-point number as 32 bits in the file."
-msgstr ""
+msgstr "Almacena un número de real como 32 bits en el archivo."
-#: doc/classes/File.xml:399
+#: doc/classes/File.xml:401
msgid ""
"Stores the given [String] as a line in the file.\n"
"Text will be encoded as UTF-8."
msgstr ""
+"Almacena la [String] dada como una línea en el archivo.\n"
+"El texto será codificado como UTF-8."
-#: doc/classes/File.xml:409
+#: doc/classes/File.xml:411
msgid ""
"Stores the given [String] as a line in the file in Pascal format (i.e. also "
"store the length of the string).\n"
"Text will be encoded as UTF-8."
msgstr ""
+"Almacena la [String] dada como una línea en el archivo en formato Pascal (es "
+"decir, también almacena la longitud de la string).\n"
+"El texto será codificado como UTF-8."
-#: doc/classes/File.xml:419
+#: doc/classes/File.xml:421
msgid "Stores a floating-point number in the file."
-msgstr ""
+msgstr "Almacena un número de real en el archivo."
-#: doc/classes/File.xml:428
+#: doc/classes/File.xml:430
msgid ""
"Stores the given [String] in the file.\n"
"Text will be encoded as UTF-8."
msgstr ""
+"Almacena el [String] dado en el archivo.\n"
+"El texto será codificado como UTF-8."
-#: doc/classes/File.xml:440
+#: doc/classes/File.xml:442
msgid ""
"Stores any Variant value in the file. If [code]full_objects[/code] is "
"[code]true[/code], encoding objects is allowed (and can potentially include "
"code)."
msgstr ""
+"Almacena cualquier valor variable en el archivo. Si [code]full_objects[/"
+"code] es [code]true[/code], se permite codificar objetos (y potencialmente "
+"puede incluir código)."
-#: doc/classes/File.xml:446
+#: doc/classes/File.xml:448
msgid ""
"If [code]true[/code], the file's endianness is swapped. Use this if you're "
"dealing with files written on big-endian machines.\n"
"[b]Note:[/b] This is about the file format, not CPU type. This is always "
"reset to [code]false[/code] whenever you open the file."
msgstr ""
+"Si [code]true[/code], la custodia del archivo se intercambia. Usa esto si "
+"estás tratando con archivos escritos en máquinas big-endian.\n"
+"[b]Nota:[/b] Se trata del formato del archivo, no del tipo de CPU. Esto "
+"siempre se reajusta a [code]false[/code] cada vez que se abre el archivo."
-#: doc/classes/File.xml:452
+#: doc/classes/File.xml:454
msgid "Opens the file for read operations."
-msgstr ""
+msgstr "Abre el archivo para operaciones de lectura."
-#: doc/classes/File.xml:455
+#: doc/classes/File.xml:457
msgid ""
"Opens the file for write operations. Create it if the file does not exist "
"and truncate if it exists."
msgstr ""
+"Abre el archivo para las operaciones de escritura. Créalo si el archivo no "
+"existe y truncalo si existe."
-#: doc/classes/File.xml:458
+#: doc/classes/File.xml:460
msgid ""
"Opens the file for read and write operations. Does not truncate the file."
msgstr ""
+"Abre el archivo para operaciones de lectura y escritura. No trunca el "
+"archivo."
-#: doc/classes/File.xml:461
+#: doc/classes/File.xml:463
msgid ""
"Opens the file for read and write operations. Create it if the file does not "
"exist and truncate if it exists."
msgstr ""
+"Abre el archivo para operaciones de lectura y escritura. Créalo si el "
+"archivo no existe y truncalo si existe."
-#: doc/classes/File.xml:464
+#: doc/classes/File.xml:466
msgid "Uses the [url=http://fastlz.org/]FastLZ[/url] compression method."
-msgstr ""
+msgstr "Utiliza el método de compresión [url=http://fastlz.org/]FastLZ[/url]."
-#: doc/classes/File.xml:467
+#: doc/classes/File.xml:469
msgid ""
"Uses the [url=https://en.wikipedia.org/wiki/DEFLATE]DEFLATE[/url] "
"compression method."
msgstr ""
+"Utiliza el método de compresión [url=https://en.wikipedia.org/wiki/"
+"DEFLATE]DEFLATE[/url]."
-#: doc/classes/File.xml:470
+#: doc/classes/File.xml:472
msgid ""
"Uses the [url=https://facebook.github.io/zstd/]Zstandard[/url] compression "
"method."
msgstr ""
+"Utiliza el método de compresión [url=https://facebook.github.io/"
+"zstd/]Zstandard[/url]."
-#: doc/classes/File.xml:473
+#: doc/classes/File.xml:475
msgid "Uses the [url=https://www.gzip.org/]gzip[/url] compression method."
-msgstr ""
+msgstr "Utiliza el método de compresión [url=https://www.gzip.org/]gzip[/url]."
#: doc/classes/FileDialog.xml:4
msgid "Dialog for selecting files or directories in the filesystem."
msgstr ""
+"Diálogo para seleccionar archivos o directorios en el sistema de archivos."
#: doc/classes/FileDialog.xml:7
msgid ""
@@ -23147,6 +28379,11 @@ msgid ""
"custom title, disable this by setting [member mode_overrides_title] to "
"[code]false[/code]."
msgstr ""
+"FileDialog es un diálogo preestablecido que se utiliza para elegir archivos "
+"y directorios en el sistema de archivos. Soporta máscaras de filtro. El "
+"FileDialog establece automáticamente el título de su ventana según el "
+"[member file_mode]. Si quieres usar un título personalizado, desactívalo "
+"estableciendo [member mode_overrides_title] en [code]false[/code]."
#: doc/classes/FileDialog.xml:18
msgid ""
@@ -23154,50 +28391,59 @@ msgid ""
"of the form [code]\"filename.extension ; Description\"[/code]. For example, "
"[code]\"*.png ; PNG Images\"[/code]."
msgstr ""
+"Añade [code]filter[/code] como filtro personalizado; [code]filter[/code] "
+"debe tener la forma [code]\"filename.extension ; Description\"[/code]. Por "
+"ejemplo, [code]\"*.png ; Imágenes PNG\"[/code]."
#: doc/classes/FileDialog.xml:25
msgid "Clear all the added filters in the dialog."
-msgstr ""
+msgstr "Borra todos los filtros añadidos en el diálogo."
#: doc/classes/FileDialog.xml:32
msgid "Clear currently selected items in the dialog."
-msgstr ""
+msgstr "Borra los elementos actualmente seleccionados en el diálogo."
#: doc/classes/FileDialog.xml:39
msgid "Returns the LineEdit for the selected file."
-msgstr ""
+msgstr "Devuelve el LineEdit del archivo seleccionado."
#: doc/classes/FileDialog.xml:46
msgid ""
"Returns the vertical box container of the dialog, custom controls can be "
"added to it."
msgstr ""
+"Devuelve el contenedor de la caja vertical del diálogo, se le pueden añadir "
+"controles personalizados."
#: doc/classes/FileDialog.xml:53
msgid "Invalidate and update the current dialog content list."
-msgstr ""
+msgstr "Invalida y actualiza la lista de contenido del diálogo actual."
#: doc/classes/FileDialog.xml:59
msgid "The file system access scope. See enum [code]Access[/code] constants."
msgstr ""
+"El ámbito de acceso al sistema de archivos. Ver las constantes enum "
+"[code]Access[/code]."
#: doc/classes/FileDialog.xml:62
msgid "The current working directory of the file dialog."
-msgstr ""
+msgstr "El directorio de trabajo actual del diálogo de archivos."
#: doc/classes/FileDialog.xml:65
msgid "The currently selected file of the file dialog."
-msgstr ""
+msgstr "El archivo actualmente seleccionado del diálogo de archivos."
#: doc/classes/FileDialog.xml:68
msgid "The currently selected file path of the file dialog."
-msgstr ""
+msgstr "La ruta de archivo actualmente seleccionada del diálogo de archivo."
#: doc/classes/FileDialog.xml:72
msgid ""
"The dialog's open or save mode, which affects the selection behavior. See "
"[enum FileMode]."
msgstr ""
+"El diálogo está en modo abierto o guardado, lo que afecta al comportamiento "
+"de la selección. Ver [enum FileMode]."
#: doc/classes/FileDialog.xml:75
msgid ""
@@ -23205,6 +28451,10 @@ msgid ""
"code] and [code].gd[/code] files: [code]set_filters(PackedStringArray([\"*."
"png ; PNG Images\",\"*.gd ; GDScript Files\"]))[/code]."
msgstr ""
+"Los filtros de tipo de archivo disponibles. Por ejemplo, esto muestra sólo "
+"los archivos [code].png[/code] y [code].gd[/code]: "
+"[code]set_filters(PackedStringArray([\"*.png ; Imágenes PNG\", \"*.gd ; "
+"Archivos GDScript\"]))[/code]."
#: doc/classes/FileDialog.xml:78
msgid ""
@@ -23212,112 +28462,131 @@ msgid ""
"window title accordingly (e.g. setting mode to [constant "
"FILE_MODE_OPEN_FILE] will change the window title to \"Open a File\")."
msgstr ""
+"Si [code]true[/code], al cambiar la propiedad [code]Mode[/code] el título de "
+"la ventana se ajustará en consecuencia (por ejemplo, al ajustar el modo a "
+"[constant FILE_MODE_OPEN_FILE] se cambiará el título de la ventana a \"Open "
+"a File\")."
#: doc/classes/FileDialog.xml:81
msgid "If [code]true[/code], the dialog will show hidden files."
-msgstr ""
+msgstr "Si [code]true[/code], el diálogo mostrará los archivos ocultos."
#: doc/classes/FileDialog.xml:90
msgid "Emitted when the user selects a directory."
-msgstr ""
+msgstr "Emitido cuando el usuario selecciona un directorio."
#: doc/classes/FileDialog.xml:97
msgid ""
"Emitted when the user selects a file by double-clicking it or pressing the "
"[b]OK[/b] button."
msgstr ""
+"Se emite cuando el usuario selecciona un archivo haciendo doble clic en él o "
+"pulsando el botón [b]OK[/b]."
#: doc/classes/FileDialog.xml:104
msgid "Emitted when the user selects multiple files."
-msgstr ""
+msgstr "Emitido cuando el usuario selecciona varios archivos."
#: doc/classes/FileDialog.xml:110
msgid "The dialog allows selecting one, and only one file."
-msgstr ""
+msgstr "El diálogo permite seleccionar uno, y sólo un archivo."
#: doc/classes/FileDialog.xml:113
msgid "The dialog allows selecting multiple files."
-msgstr ""
+msgstr "El diálogo permite seleccionar varios archivos."
#: doc/classes/FileDialog.xml:116
msgid ""
"The dialog only allows selecting a directory, disallowing the selection of "
"any file."
msgstr ""
+"El diálogo sólo permite seleccionar un directorio, no permitiendo la "
+"selección de ningún archivo."
#: doc/classes/FileDialog.xml:119
msgid "The dialog allows selecting one file or directory."
-msgstr ""
+msgstr "El diálogo permite seleccionar un archivo o directorio."
#: doc/classes/FileDialog.xml:122
msgid "The dialog will warn when a file exists."
-msgstr ""
+msgstr "El diálogo avisará cuando exista un archivo."
#: doc/classes/FileDialog.xml:125
msgid ""
"The dialog only allows accessing files under the [Resource] path "
"([code]res://[/code])."
msgstr ""
+"El diálogo sólo permite acceder a los archivos bajo la ruta [Resource] "
+"([code]res://[/code])."
#: doc/classes/FileDialog.xml:128
msgid ""
"The dialog only allows accessing files under user data path ([code]user://[/"
"code])."
msgstr ""
+"El diálogo sólo permite acceder a los archivos bajo la ruta de datos del "
+"usuario ([code]user://[/code])."
#: doc/classes/FileDialog.xml:131
msgid "The dialog allows accessing files on the whole file system."
msgstr ""
+"El diálogo permite acceder a los archivos de todo el sistema de archivos."
#: doc/classes/FileDialog.xml:136
msgid "Custom icon for files."
-msgstr ""
+msgstr "Icono personalizado para los archivos."
#: doc/classes/FileDialog.xml:139
msgid "The color modulation applied to the file icon."
-msgstr ""
+msgstr "La modulación del color aplicada al icono del archivo."
#: doc/classes/FileDialog.xml:142
msgid ""
"The color tint for disabled files (when the [FileDialog] is used in open "
"folder mode)."
msgstr ""
+"El tinte de color para los archivos desactivados (cuando se utiliza "
+"[FileDialog] en el modo de carpeta abierta)."
#: doc/classes/FileDialog.xml:145
msgid "Custom icon for folders."
-msgstr ""
+msgstr "Icono personalizado para las carpetas."
#: doc/classes/FileDialog.xml:148
msgid "The color modulation applied to the folder icon."
-msgstr ""
+msgstr "La modulación del color aplicada al icono de la carpeta."
#: doc/classes/FileDialog.xml:151
msgid "Custom icon for the parent folder arrow."
-msgstr ""
+msgstr "Icono personalizado para la flecha de la carpeta principal."
#: doc/classes/FileDialog.xml:154
msgid "Custom icon for the reload button."
-msgstr ""
+msgstr "Icono personalizado para el botón de recarga."
#: doc/classes/FileDialog.xml:157
msgid "Custom icon for the toggle hidden button."
-msgstr ""
+msgstr "Icono personalizado para el botón oculto de commutación."
#: doc/classes/float.xml:4 doc/classes/float.xml:7
msgid "Float built-in type."
-msgstr ""
+msgstr "Tipo real."
#: doc/classes/float.xml:18
msgid ""
"Cast a [bool] value to a floating-point value, [code]float(true)[/code] will "
"be equal to 1.0 and [code]float(false)[/code] will be equal to 0.0."
msgstr ""
+"Convierte un valor [bool] a un valor de real, [code]float(true)[/code] será "
+"igual a 1.0 y [code]float(false)[/code] será igual a 0.0."
#: doc/classes/float.xml:27
msgid ""
"Cast an [int] value to a floating-point value, [code]float(1)[/code] will be "
"equal to 1.0."
msgstr ""
+"Convierte un valor [int] a un valor de real, [code]float(1)[/code] será "
+"igual a 1.0."
#: doc/classes/float.xml:36
msgid ""
@@ -23330,10 +28599,19 @@ msgid ""
"calling [code]float(\"1a3\")[/code] will return 1 while calling "
"[code]float(\"1e3a2\")[/code] will return 1000.0."
msgstr ""
+"Convierte un valor [String] a un valor de real. Este método acepta strings "
+"de reales como [code]\"1.23\"[/code] y strings de notación exponencial para "
+"su parámetro, de modo que al llamar a [code]float(\"1e3\")[/code] devolverá "
+"1000.0 y al llamar a [code]float(\"1e-3\")[/code] devolverá 0.001. Llamar a "
+"este método con una string real inválida devolverá 0. Este método deja de "
+"analizar el primer carácter inválido y devolverá el resultado analizado "
+"hasta el momento, por lo que si se llama a [code]float(\"1a3\")[/code] "
+"devolverá 1 mientras que si se llama a [code]float(\"1e3a2\")[/code] "
+"devolverá 1000.0."
#: doc/classes/Font.xml:4
msgid "Internationalized font and text drawing support."
-msgstr ""
+msgstr "Soporte de fuentes y dibujos de texto internacionalizados."
#: doc/classes/Font.xml:7
msgid ""
@@ -23341,16 +28619,27 @@ msgid ""
"draw it with variable width, ascent, descent and kerning. For creating fonts "
"from TTF files (or other font formats), see the editor support for fonts."
msgstr ""
+"La fuente contiene un conjunto de caracteres compatibles con Unicode, así "
+"como la posibilidad de dibujarla con ancho, ascenso, descenso y kerning "
+"variables. Para crear fuentes a partir de archivos TTF (u otros formatos de "
+"fuentes), consulta el soporte del editor de fuentes."
#: doc/classes/Font.xml:28
+#, fuzzy
msgid ""
"Draw [code]string[/code] into a canvas item using the font at a given "
"position, with [code]modulate[/code] color, and optionally clipping the "
"width. [code]position[/code] specifies the baseline, not the top. To draw "
-"from the top, [i]ascent[/i] must be added to the Y axis."
+"from the top, [i]ascent[/i] must be added to the Y axis.\n"
+"See also [method CanvasItem.draw_string]."
msgstr ""
+"Dibuja [code]string[/code] en un objecto canvas usando la fuente en una "
+"posición determinada, con [code]modulate[/code] color, y opcionalmente "
+"recortando el ancho. [code]position[/code] especifica la línea de base, no "
+"la parte superior. Para dibujar desde la cima, [i]ascent[/i] debe añadirse "
+"al eje Y."
-#: doc/classes/Font.xml:47
+#: doc/classes/Font.xml:48
msgid ""
"Draw character [code]char[/code] into a canvas item using the font at a "
"given position, with [code]modulate[/code] color, and optionally kerning if "
@@ -23359,48 +28648,69 @@ msgid ""
"must be added to the Y axis. The width used by the character is returned, "
"making this function useful for drawing strings character by character."
msgstr ""
+"Dibuja el carácter [code]char[/code] en un elemento del canvas utilizando la "
+"fuente en una posición determinada, con [code]modular[/code] color, y "
+"opcionalmente kerning si se pasa [code]next[/code]. recortando el ancho. "
+"[code]position[/code] especifica la línea de base, no la parte superior. "
+"Para dibujar desde la cima, [i]ascent[/i] debe añadirse al eje Y. Se "
+"devuelve el ancho utilizado por el carácter, lo que hace que esta función "
+"sea útil para dibujar cadenas carácter por carácter."
-#: doc/classes/Font.xml:54
+#: doc/classes/Font.xml:55
msgid "Returns the font ascent (number of pixels above the baseline)."
msgstr ""
+"Devuelve el ascenso de la fuente (número de píxeles por encima de la línea "
+"de base)."
-#: doc/classes/Font.xml:65
+#: doc/classes/Font.xml:66
msgid ""
"Returns the size of a character, optionally taking kerning into account if "
"the next character is provided."
msgstr ""
+"Devuelve el tamaño de un carácter, opcionalmente teniendo en cuenta el "
+"kerning si se proporciona el siguiente carácter."
-#: doc/classes/Font.xml:72
+#: doc/classes/Font.xml:73
msgid "Returns the font descent (number of pixels below the baseline)."
msgstr ""
+"Devuelve el descenso de la fuente (número de píxeles por debajo de la línea "
+"de base)."
-#: doc/classes/Font.xml:79
+#: doc/classes/Font.xml:80
msgid "Returns the total font height (ascent plus descent) in pixels."
msgstr ""
+"Devuelve el descenso de la fuente (número de píxeles por debajo de la línea "
+"de base)."
-#: doc/classes/Font.xml:88
+#: doc/classes/Font.xml:89
msgid "Returns the size of a string, taking kerning and advance into account."
msgstr ""
+"Devuelve el tamaño de una string, teniendo en cuenta el kerning y el avance."
-#: doc/classes/Font.xml:99
+#: doc/classes/Font.xml:100
msgid ""
"Returns the size that the string would have with word wrapping enabled with "
"a fixed [code]width[/code]."
msgstr ""
+"Devuelve el tamaño que tendría la string con la envoltura de palabras "
+"habilitada con un [code]width[/code] fijo."
-#: doc/classes/Font.xml:106
+#: doc/classes/Font.xml:107
msgid "Returns [code]true[/code] if the font has an outline."
-msgstr ""
+msgstr "Devuelve [code]true[/code] si la fuente tiene un contorno."
-#: doc/classes/Font.xml:119
+#: doc/classes/Font.xml:120
msgid ""
"After editing a font (changing size, ascent, char rects, etc.). Call this "
"function to propagate changes to controls that might use it."
msgstr ""
+"Después de editar una fuente (cambiar el tamaño, el ascenso, los caracteres, "
+"etc.). Llame a esta función para propagar los cambios a los controles que "
+"puedan utilizarla."
#: doc/classes/FuncRef.xml:4
msgid "Reference to a function in an object."
-msgstr ""
+msgstr "Referencia a una función en un objeto."
#: doc/classes/FuncRef.xml:7
msgid ""
@@ -23411,12 +28721,20 @@ msgid ""
"function, a reference to a function in a given object can be created, passed "
"around and called."
msgstr ""
+"En GDScript, las funciones no son [i]objetos de primera clase[/i]. Esto "
+"significa que es imposible almacenarlas directamente como variables, "
+"devolverlas desde otra función, o pasarlas como argumentos.\n"
+"Sin embargo, al crear una [FuncRef] usando la función [method @GDScript."
+"funcref], se puede crear, pasar y llamar una referencia a una función en un "
+"objeto dado."
#: doc/classes/FuncRef.xml:17
msgid ""
"Calls the referenced function previously set by [method set_function] or "
"[method @GDScript.funcref]."
msgstr ""
+"Llama a la función referenciada previamente establecida por [method "
+"set_function] o [method @GDScript.funcref]."
#: doc/classes/FuncRef.xml:26
msgid ""
@@ -23425,16 +28743,22 @@ msgid ""
"does not support a variable number of arguments but expects all parameters "
"to be passed via a single [Array]."
msgstr ""
+"Llama a la función referenciada previamente establecida por [method "
+"set_function] o [method @GDScript.funcref]. A diferencia de [method "
+"call_func], este método no soporta un número variable de argumentos, sino "
+"que espera que todos los parámetros se pasen a través de un único [Array]."
#: doc/classes/FuncRef.xml:33
msgid "Returns whether the object still exists and has the function assigned."
-msgstr ""
+msgstr "Devuelve si el objeto todavía existe y tiene la función asignada."
#: doc/classes/FuncRef.xml:42
msgid ""
"The name of the referenced function to call on the object, without "
"parentheses or any parameters."
msgstr ""
+"El nombre de la función referenciada para llamar al objeto, sin paréntesis "
+"ni parámetros."
#: doc/classes/FuncRef.xml:51
msgid ""
@@ -23442,11 +28766,16 @@ msgid ""
"actually inheriting from [Object], not a built-in type such as [int], "
"[Vector2] or [Dictionary]."
msgstr ""
+"El objeto que contiene la función referida. Este objeto debe ser de un tipo "
+"realmente heredado de [Object], no de un tipo interno como [int], [Vector2] "
+"o [Dictionary]."
#: modules/gdnative/doc_classes/GDNativeLibrary.xml:4
msgid ""
"An external library containing functions or script classes to use in Godot."
msgstr ""
+"Una biblioteca externa que contiene funciones o clases de script para usar "
+"en Godot."
#: modules/gdnative/doc_classes/GDNativeLibrary.xml:7
msgid ""
@@ -23455,36 +28784,51 @@ msgid ""
"such as [XRInterfaceGDNative]. The library must be compiled for each "
"platform and architecture that the project will run on."
msgstr ""
+"Una biblioteca GDNative puede implementar [NativeScript], funciones globales "
+"para llamar con la clase [GDNative], o extensiones de motor de bajo nivel a "
+"través de interfaces como [XRInterfaceGDNative]. La biblioteca debe ser "
+"compilada para cada plataforma y arquitectura en la que se ejecute el "
+"proyecto."
#: modules/gdnative/doc_classes/GDNativeLibrary.xml:10
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/plugins/gdnative/gdnative-c-"
"example.html"
msgstr ""
+"https://docs.godotengine.org/es/latest/tutorials/plugins/gdnative/gdnative-c-"
+"example.html"
#: modules/gdnative/doc_classes/GDNativeLibrary.xml:11
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/plugins/gdnative/gdnative-"
"cpp-example.html"
msgstr ""
+"https://docs.godotengine.org/es/latest/tutorials/plugins/gdnative/gdnative-"
+"cpp-example.html"
#: modules/gdnative/doc_classes/GDNativeLibrary.xml:18
msgid ""
"Returns paths to all dependency libraries for the current platform and "
"architecture."
msgstr ""
+"Devuelve los caminos a todas las bibliotecas de dependencia para la "
+"plataforma y la arquitectura actuales."
#: modules/gdnative/doc_classes/GDNativeLibrary.xml:25
msgid ""
"Returns the path to the dynamic library file for the current platform and "
"architecture."
msgstr ""
+"Devuelve la ruta del archivo de la biblioteca dinámica para la plataforma y "
+"la arquitectura actuales."
#: modules/gdnative/doc_classes/GDNativeLibrary.xml:31
msgid ""
"This resource in INI-style [ConfigFile] format, as in [code].gdnlib[/code] "
"files."
msgstr ""
+"Este recurso en formato [ConfigFile] de tipo INI, como en los archivos "
+"[code].gdnlib[/code]."
#: modules/gdnative/doc_classes/GDNativeLibrary.xml:34
msgid ""
@@ -23494,6 +28838,11 @@ msgid ""
"If [code]false[/code], Godot loads a separate copy of the library into "
"memory for each script that references it."
msgstr ""
+"Si [code]true[/code], Godot carga sólo una copia de la biblioteca y cada "
+"script que hace referencia a la biblioteca compartirá datos estáticos como "
+"variables estáticas o globales.\n"
+"Si [code]false[/code], Godot carga una copia separada de la biblioteca en la "
+"memoria para cada script que hace referencia a ella."
#: modules/gdnative/doc_classes/GDNativeLibrary.xml:38
msgid ""
@@ -23504,6 +28853,13 @@ msgid ""
"[code]reloadable[/code] must be [code]false[/code]. Otherwise, the editor "
"will attempt to unload the tool scripts while they're in use and crash."
msgstr ""
+"Si [code]true[/code], el editor descargará temporalmente la biblioteca cada "
+"vez que el usuario se aleje de la ventana del editor, permitiendo al usuario "
+"recompilar la biblioteca sin reiniciar Godot.\n"
+"[b]Nota:[/b] Si la biblioteca define los scripts de herramientas que se "
+"ejecutan dentro del editor, [code]recargable[/code] debe ser [code]false[/"
+"code]. En caso contrario, el editor intentará descargar los scripts de la "
+"herramienta mientras están en uso y se bloqueará."
#: modules/gdnative/doc_classes/GDNativeLibrary.xml:42
msgid ""
@@ -23514,6 +28870,13 @@ msgid ""
"loaded as long as Godot is running.\n"
"[b]Note:[/b] A singleton library cannot be [member reloadable]."
msgstr ""
+"Si [code]true[/code], Godot carga la biblioteca al inicio en lugar de la "
+"primera vez que un script utiliza la biblioteca, llamando a [code]{prefix}"
+"gdnative_singleton[/code] después de inicializar la biblioteca (donde [code]"
+"{prefix}[/code] es el valor de [member symbol_prefix]). La biblioteca "
+"permanece cargada mientras Godot esté en funcionamiento.\n"
+"[b]Nota:[/b] Una biblioteca de un solo botón no puede ser [member "
+"reloadable]."
#: modules/gdnative/doc_classes/GDNativeLibrary.xml:46
msgid ""
@@ -23523,10 +28886,17 @@ msgid ""
"On platforms that require statically linking libraries (currently only iOS), "
"each library must have a different [code]symbol_prefix[/code]."
msgstr ""
+"El prefijo con el que empiezan las funciones del punto de entrada de esta "
+"biblioteca. Por ejemplo, una GDNativeLibrary declararía su función "
+"[code]gdnative_init[/code] como [code]godot_gdnative_init[/code] por "
+"defecto.\n"
+"En las plataformas que requieren bibliotecas de enlace estático (actualmente "
+"sólo iOS), cada biblioteca debe tener un [code]symbol_prefix[/code] "
+"diferente."
#: modules/gdscript/doc_classes/GDScript.xml:4
msgid "A script implemented in the GDScript programming language."
-msgstr ""
+msgstr "Un guión implementado en el lenguaje de programación GDScript."
#: modules/gdscript/doc_classes/GDScript.xml:7
msgid ""
@@ -23536,16 +28906,23 @@ msgid ""
"set_script] extends an existing object, if that object's class matches one "
"of the script's base classes."
msgstr ""
+"Un guión implementado en el lenguaje de programación GDScript. El script "
+"extiende la funcionalidad de todos los objetos que lo ejemplifican.\n"
+"[method new] crea una nueva instancia del script. El [method Object."
+"set_script] extiende un objeto existente, si la clase de ese objeto coincide "
+"con una de las clases base del script."
#: modules/gdscript/doc_classes/GDScript.xml:11
msgid ""
"https://docs.godotengine.org/en/latest/getting_started/scripting/gdscript/"
"index.html"
msgstr ""
+"https://docs.godotengine.org/es/latest/getting_started/scripting/gdscript/"
+"index.html"
#: modules/gdscript/doc_classes/GDScript.xml:18
msgid "Returns byte code for the script source code."
-msgstr ""
+msgstr "Devuelve el código de bytes para el código fuente del script."
#: modules/gdscript/doc_classes/GDScript.xml:25
msgid ""
@@ -23557,20 +28934,33 @@ msgid ""
"assert(instance.get_script() == MyClass)\n"
"[/codeblock]"
msgstr ""
+"Devuelve una nueva instancia del script.\n"
+"Por ejemplo:\n"
+"[codeblock]\n"
+"var MiClase = load(\"miclase.gd\")\n"
+"var instancia = MiClase.new()\n"
+"assert(instancia.get_script() == MiClase)\n"
+"[/codebloque]"
#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:4
msgid "State of a function call after yielding."
-msgstr ""
+msgstr "Estado de una llamada de función después de ceder."
#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:7
+#, fuzzy
msgid ""
-"Calling [method @GDScript.yield] within a function will cause that function "
-"to yield and return its current state as an object of this type. The yielded "
+"FIXME: Outdated docs as of GDScript rewrite in 4.0.\n"
+"Calling [code]yield[/code] within a function will cause that function to "
+"yield and return its current state as an object of this type. The yielded "
"function call can then be resumed later by calling [method resume] on this "
"state object."
msgstr ""
+"Llamar a [método @GDScript.yield] dentro de una función hará que esa función "
+"ceda y devuelva su estado actual como un objeto de este tipo. La llamada a "
+"la función cedida puede reanudarse más tarde llamando a [method resume] en "
+"este objeto de estado."
-#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:18
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:19
msgid ""
"Check whether the function call may be resumed. This is not the case if the "
"function state was already resumed.\n"
@@ -23580,22 +28970,40 @@ msgid ""
"know you may be trying to resume without knowing for sure the object and/or "
"script have survived up to that point."
msgstr ""
+"Comprueba si se puede reanudar la llamada de función. No es así si el estado "
+"de la función ya se ha reanudado.\n"
+"Si [code]extended_check[/code] está activado, también comprueba si el script "
+"y el objeto asociados siguen existiendo. La comprobación extendida se "
+"realiza en modo de depuración como parte del [method GDScriptFunctionState."
+"resume], pero puedes utilizarlo si sabes que puedes estar intentando "
+"reanudar sin saber con seguridad que el objeto y/o el script han sobrevivido "
+"hasta ese momento."
-#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:28
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:29
+#, fuzzy
msgid ""
"Resume execution of the yielded function call.\n"
-"If handed an argument, return the argument from the [method @GDScript.yield] "
-"call in the yielded function call. You can pass e.g. an [Array] to hand "
-"multiple arguments.\n"
+"If handed an argument, return the argument from the [code]yield[/code] call "
+"in the yielded function call. You can pass e.g. an [Array] to hand multiple "
+"arguments.\n"
"This function returns what the resumed function call returns, possibly "
"another function state if yielded again."
msgstr ""
+"Reanudar la ejecución de la llamada de la función cedida.\n"
+"Si se le entrega un argumento, devuelva el argumento de la llamada [method "
+"@GDScript.yield] en la llamada a la función cedida. Se puede pasar, por "
+"ejemplo, un [Array] para entregar varios argumentos.\n"
+"Esta función devuelve lo que devuelve la llamada a la función reanudada, "
+"posiblemente otro estado de la función si se cede de nuevo."
#: doc/classes/Generic6DOFJoint3D.xml:4
msgid ""
"The generic 6-degrees-of-freedom joint can implement a variety of joint "
"types by locking certain axes' rotation or translation."
msgstr ""
+"La articulación genérica de 6 grados de libertad puede implementar una "
+"variedad de tipos de articulaciones bloqueando la rotación o traslación de "
+"ciertos ejes."
#: doc/classes/Generic6DOFJoint3D.xml:7
msgid ""
@@ -23603,6 +29011,9 @@ msgid ""
"and the latter 3 DOF axes represent the angular motion. Each axis can be "
"either locked, or limited."
msgstr ""
+"Los primeros 3 ejes DOF son ejes lineales, que representan la traslación de "
+"los cuerpos, y los últimos 3 ejes DOF representan el movimiento angular. "
+"Cada eje puede ser bloqueado o limitado."
#: doc/classes/Generic6DOFJoint3D.xml:123
msgid ""
@@ -23610,403 +29021,492 @@ msgid ""
"The lower, the longer an impulse from one side takes to travel to the other "
"side."
msgstr ""
+"La cantidad de amortiguación rotacional a través del eje X.\n"
+"Cuanto más bajo, más tiempo tarda un impulso de un lado en viajar al otro "
+"lado."
#: doc/classes/Generic6DOFJoint3D.xml:127
msgid "If [code]true[/code], rotation across the X axis is limited."
-msgstr ""
+msgstr "Si [code]true[/code], la rotación a través del eje X es limitada."
#: doc/classes/Generic6DOFJoint3D.xml:130
msgid ""
"When rotating across the X axis, this error tolerance factor defines how "
"much the correction gets slowed down. The lower, the slower."
msgstr ""
+"Al girar a través del eje X, este factor de tolerancia al error define "
+"cuánto se ralentiza la corrección. Cuanto más baja, más lenta."
#: doc/classes/Generic6DOFJoint3D.xml:133
msgid ""
"The maximum amount of force that can occur, when rotating around the X axis."
msgstr ""
+"La máxima cantidad de fuerza que puede ocurrir, al girar alrededor del eje X."
#: doc/classes/Generic6DOFJoint3D.xml:136
msgid ""
"The minimum rotation in negative direction to break loose and rotate around "
"the X axis."
msgstr ""
+"La rotación mínima en dirección negativa para soltarse y girar alrededor del "
+"eje X."
#: doc/classes/Generic6DOFJoint3D.xml:139
msgid ""
"The amount of rotational restitution across the X axis. The lower, the more "
"restitution occurs."
msgstr ""
+"La cantidad de restitución rotacional a través del eje X. Cuanto más bajo, "
+"más restitución se produce."
#: doc/classes/Generic6DOFJoint3D.xml:142
msgid "The speed of all rotations across the X axis."
-msgstr ""
+msgstr "La velocidad de todas las rotaciones a través del eje X."
#: doc/classes/Generic6DOFJoint3D.xml:145
msgid ""
"The minimum rotation in positive direction to break loose and rotate around "
"the X axis."
msgstr ""
+"La mínima rotación en dirección positiva para soltarse y girar alrededor del "
+"eje X."
#: doc/classes/Generic6DOFJoint3D.xml:148
msgid ""
"The amount of rotational damping across the Y axis. The lower, the more "
"dampening occurs."
msgstr ""
+"La cantidad de amortiguación rotacional a través del eje Y. Cuanto más bajo, "
+"más amortiguación se produce."
#: doc/classes/Generic6DOFJoint3D.xml:151
msgid "If [code]true[/code], rotation across the Y axis is limited."
-msgstr ""
+msgstr "Si [code]true[/code], la rotación a través del eje Y está limitada."
#: doc/classes/Generic6DOFJoint3D.xml:154
msgid ""
"When rotating across the Y axis, this error tolerance factor defines how "
"much the correction gets slowed down. The lower, the slower."
msgstr ""
+"Al girar sobre el eje Y, este factor de tolerancia al error define cuánto se "
+"ralentiza la corrección. Cuanto más baja, más lenta."
#: doc/classes/Generic6DOFJoint3D.xml:157
msgid ""
"The maximum amount of force that can occur, when rotating around the Y axis."
msgstr ""
+"La máxima cantidad de fuerza que puede ocurrir, al girar alrededor del eje Y."
#: doc/classes/Generic6DOFJoint3D.xml:160
msgid ""
"The minimum rotation in negative direction to break loose and rotate around "
"the Y axis."
msgstr ""
+"La mínima rotación en dirección negativa para soltarse y girar alrededor del "
+"eje Y."
#: doc/classes/Generic6DOFJoint3D.xml:163
msgid ""
"The amount of rotational restitution across the Y axis. The lower, the more "
"restitution occurs."
msgstr ""
+"La cantidad de restitución rotacional a través del eje Y. Cuanto más bajo, "
+"más restitución se produce."
#: doc/classes/Generic6DOFJoint3D.xml:166
msgid "The speed of all rotations across the Y axis."
-msgstr ""
+msgstr "La velocidad de todas las rotaciones a través del eje Y."
#: doc/classes/Generic6DOFJoint3D.xml:169
msgid ""
"The minimum rotation in positive direction to break loose and rotate around "
"the Y axis."
msgstr ""
+"La mínima rotación en dirección positiva para soltarse y girar alrededor del "
+"eje Y."
#: doc/classes/Generic6DOFJoint3D.xml:172
msgid ""
"The amount of rotational damping across the Z axis. The lower, the more "
"dampening occurs."
msgstr ""
+"La cantidad de amortiguación rotacional a través del eje Z. Cuanto más bajo, "
+"más amortiguación se produce."
#: doc/classes/Generic6DOFJoint3D.xml:175
msgid "If [code]true[/code], rotation across the Z axis is limited."
-msgstr ""
+msgstr "Si [code]true[/code], la rotación a través del eje Z está limitada."
#: doc/classes/Generic6DOFJoint3D.xml:178
msgid ""
"When rotating across the Z axis, this error tolerance factor defines how "
"much the correction gets slowed down. The lower, the slower."
msgstr ""
+"Al girar a través del eje Z, este factor de tolerancia al error define "
+"cuánto se ralentiza la corrección. Cuanto más baja, más lenta."
#: doc/classes/Generic6DOFJoint3D.xml:181
msgid ""
"The maximum amount of force that can occur, when rotating around the Z axis."
msgstr ""
+"La máxima cantidad de fuerza que puede ocurrir, al girar alrededor del eje Z."
#: doc/classes/Generic6DOFJoint3D.xml:184
msgid ""
"The minimum rotation in negative direction to break loose and rotate around "
"the Z axis."
msgstr ""
+"La rotación mínima en dirección negativa para soltarse y girar alrededor del "
+"eje Z."
#: doc/classes/Generic6DOFJoint3D.xml:187
msgid ""
"The amount of rotational restitution across the Z axis. The lower, the more "
"restitution occurs."
msgstr ""
+"La cantidad de restitución rotacional a través del eje Z. Cuanto más bajo, "
+"más restitución se produce."
#: doc/classes/Generic6DOFJoint3D.xml:190
msgid "The speed of all rotations across the Z axis."
-msgstr ""
+msgstr "La velocidad de todas las rotaciones a través del eje Z."
#: doc/classes/Generic6DOFJoint3D.xml:193
msgid ""
"The minimum rotation in positive direction to break loose and rotate around "
"the Z axis."
msgstr ""
+"La rotación mínima en dirección positiva para soltarse y girar alrededor del "
+"eje Z."
#: doc/classes/Generic6DOFJoint3D.xml:196
msgid "If [code]true[/code], a rotating motor at the X axis is enabled."
-msgstr ""
+msgstr "Si [code]true[/code], se activa un motor rotativo en el eje X."
#: doc/classes/Generic6DOFJoint3D.xml:199
msgid "Maximum acceleration for the motor at the X axis."
-msgstr ""
+msgstr "Aceleración máxima para el motor en el eje X."
#: doc/classes/Generic6DOFJoint3D.xml:202
msgid "Target speed for the motor at the X axis."
-msgstr ""
+msgstr "Velocidad objetivo para el motor en el eje X."
#: doc/classes/Generic6DOFJoint3D.xml:205
msgid "If [code]true[/code], a rotating motor at the Y axis is enabled."
-msgstr ""
+msgstr "Si [code]true[/code], se habilita un motor rotativo en el eje Y."
#: doc/classes/Generic6DOFJoint3D.xml:208
msgid "Maximum acceleration for the motor at the Y axis."
-msgstr ""
+msgstr "Aceleración máxima para el motor en el eje Y."
#: doc/classes/Generic6DOFJoint3D.xml:211
msgid "Target speed for the motor at the Y axis."
-msgstr ""
+msgstr "Velocidad objetivo para el motor en el eje Y."
#: doc/classes/Generic6DOFJoint3D.xml:214
msgid "If [code]true[/code], a rotating motor at the Z axis is enabled."
-msgstr ""
+msgstr "Si [code]true[/code], se habilita un motor rotativo en el eje Z."
#: doc/classes/Generic6DOFJoint3D.xml:217
msgid "Maximum acceleration for the motor at the Z axis."
-msgstr ""
+msgstr "Aceleración máxima para el motor en el eje Z."
#: doc/classes/Generic6DOFJoint3D.xml:220
msgid "Target speed for the motor at the Z axis."
-msgstr ""
+msgstr "La velocidad del objetivo para el motor en el eje Z."
#: doc/classes/Generic6DOFJoint3D.xml:247
msgid "The amount of damping that happens at the X motion."
-msgstr ""
+msgstr "La cantidad de amortiguación que ocurre en el movimiento X."
#: doc/classes/Generic6DOFJoint3D.xml:250
msgid "If [code]true[/code], the linear motion across the X axis is limited."
msgstr ""
+"Si [code]true[/code], el movimiento lineal a través del eje X está limitado."
#: doc/classes/Generic6DOFJoint3D.xml:253
msgid "The minimum difference between the pivot points' X axis."
-msgstr ""
+msgstr "La diferencia mínima entre los puntos de pivote del eje X."
#: doc/classes/Generic6DOFJoint3D.xml:256
msgid ""
"The amount of restitution on the X axis movement. The lower, the more "
"momentum gets lost."
msgstr ""
+"La cantidad de restitución en el movimiento del eje X. Cuanto más bajo, más "
+"impulso se pierde."
#: doc/classes/Generic6DOFJoint3D.xml:259
msgid ""
"A factor applied to the movement across the X axis. The lower, the slower "
"the movement."
msgstr ""
+"Un factor aplicado al movimiento a través del eje X. Cuanto más bajo, más "
+"lento es el movimiento."
#: doc/classes/Generic6DOFJoint3D.xml:262
msgid "The maximum difference between the pivot points' X axis."
-msgstr ""
+msgstr "La diferencia máxima entre los puntos de pivote del eje X."
#: doc/classes/Generic6DOFJoint3D.xml:265
msgid "The amount of damping that happens at the Y motion."
-msgstr ""
+msgstr "La cantidad de amortiguación que ocurre en el movimiento Y."
#: doc/classes/Generic6DOFJoint3D.xml:268
msgid "If [code]true[/code], the linear motion across the Y axis is limited."
msgstr ""
+"Si [code]true[/code], el movimiento lineal a través del eje Y está limitado."
#: doc/classes/Generic6DOFJoint3D.xml:271
msgid "The minimum difference between the pivot points' Y axis."
-msgstr ""
+msgstr "La diferencia mínima entre los puntos de pivote del eje Y."
#: doc/classes/Generic6DOFJoint3D.xml:274
msgid ""
"The amount of restitution on the Y axis movement. The lower, the more "
"momentum gets lost."
msgstr ""
+"La cantidad de restitución en el movimiento del eje Y. Cuanto más bajo, más "
+"impulso se pierde."
#: doc/classes/Generic6DOFJoint3D.xml:277
msgid ""
"A factor applied to the movement across the Y axis. The lower, the slower "
"the movement."
msgstr ""
+"Un factor aplicado al movimiento a través del eje Y. Cuanto más bajo, más "
+"lento es el movimiento."
#: doc/classes/Generic6DOFJoint3D.xml:280
msgid "The maximum difference between the pivot points' Y axis."
-msgstr ""
+msgstr "La máxima diferencia entre los puntos de pivote del eje Y ."
#: doc/classes/Generic6DOFJoint3D.xml:283
msgid "The amount of damping that happens at the Z motion."
-msgstr ""
+msgstr "La cantidad de amortiguación que ocurre en el movimiento Z."
#: doc/classes/Generic6DOFJoint3D.xml:286
msgid "If [code]true[/code], the linear motion across the Z axis is limited."
msgstr ""
+"Si [code]true[/code], el movimiento lineal a través del eje Z está limitado."
#: doc/classes/Generic6DOFJoint3D.xml:289
msgid "The minimum difference between the pivot points' Z axis."
-msgstr ""
+msgstr "La diferencia mínima entre los puntos de pivote del eje Z."
#: doc/classes/Generic6DOFJoint3D.xml:292
msgid ""
"The amount of restitution on the Z axis movement. The lower, the more "
"momentum gets lost."
msgstr ""
+"La cantidad de restitución en el movimiento del eje Z. Cuanto más bajo, más "
+"impulso se pierde."
#: doc/classes/Generic6DOFJoint3D.xml:295
msgid ""
"A factor applied to the movement across the Z axis. The lower, the slower "
"the movement."
msgstr ""
+"Un factor aplicado al movimiento a través del eje Z. Cuanto más bajo, más "
+"lento es el movimiento."
#: doc/classes/Generic6DOFJoint3D.xml:298
msgid "The maximum difference between the pivot points' Z axis."
-msgstr ""
+msgstr "La máxima diferencia entre los puntos de pivote del eje Z ."
#: doc/classes/Generic6DOFJoint3D.xml:301
msgid ""
"If [code]true[/code], then there is a linear motor on the X axis. It will "
"attempt to reach the target velocity while staying within the force limits."
msgstr ""
+"Si [code]true[/code], entonces hay un motor lineal en el eje X. Intentará "
+"alcanzar la velocidad objetivo mientras se mantiene dentro de los límites de "
+"la fuerza."
#: doc/classes/Generic6DOFJoint3D.xml:304
msgid ""
"The maximum force the linear motor can apply on the X axis while trying to "
"reach the target velocity."
msgstr ""
+"La máxima fuerza que el motor lineal puede aplicar en el eje X mientras "
+"intenta alcanzar la velocidad objetivo."
#: doc/classes/Generic6DOFJoint3D.xml:307
msgid "The speed that the linear motor will attempt to reach on the X axis."
-msgstr ""
+msgstr "La velocidad que el motor lineal intentará alcanzar en el eje X."
#: doc/classes/Generic6DOFJoint3D.xml:310
msgid ""
"If [code]true[/code], then there is a linear motor on the Y axis. It will "
"attempt to reach the target velocity while staying within the force limits."
msgstr ""
+"Si [code]true[/code], entonces hay un motor lineal en el eje Y. Intentará "
+"alcanzar la velocidad objetivo mientras se mantiene dentro de los límites de "
+"la fuerza."
#: doc/classes/Generic6DOFJoint3D.xml:313
msgid ""
"The maximum force the linear motor can apply on the Y axis while trying to "
"reach the target velocity."
msgstr ""
+"La máxima fuerza que el motor lineal puede aplicar sobre el eje Y mientras "
+"intenta alcanzar la velocidad objetivo."
#: doc/classes/Generic6DOFJoint3D.xml:316
msgid "The speed that the linear motor will attempt to reach on the Y axis."
-msgstr ""
+msgstr "La velocidad que el motor lineal intentará alcanzar en el eje Y."
#: doc/classes/Generic6DOFJoint3D.xml:319
msgid ""
"If [code]true[/code], then there is a linear motor on the Z axis. It will "
"attempt to reach the target velocity while staying within the force limits."
msgstr ""
+"Si [code]true[/code], entonces hay un motor lineal en el eje Z. Intentará "
+"alcanzar la velocidad objetivo mientras se mantiene dentro de los límites de "
+"la fuerza."
#: doc/classes/Generic6DOFJoint3D.xml:322
msgid ""
"The maximum force the linear motor can apply on the Z axis while trying to "
"reach the target velocity."
msgstr ""
+"La máxima fuerza que el motor lineal puede aplicar en el eje Z mientras "
+"intenta alcanzar la velocidad objetivo."
#: doc/classes/Generic6DOFJoint3D.xml:325
msgid "The speed that the linear motor will attempt to reach on the Z axis."
-msgstr ""
+msgstr "La velocidad que el motor lineal intentará alcanzar en el eje Z."
#: doc/classes/Generic6DOFJoint3D.xml:356 doc/classes/PhysicsServer3D.xml:1410
msgid "The minimum difference between the pivot points' axes."
-msgstr ""
+msgstr "La diferencia mínima entre los puntos de pivote de sus ejes."
#: doc/classes/Generic6DOFJoint3D.xml:359 doc/classes/PhysicsServer3D.xml:1413
msgid "The maximum difference between the pivot points' axes."
-msgstr ""
+msgstr "La diferencia máxima entre los puntos de pivote de sus ejes."
#: doc/classes/Generic6DOFJoint3D.xml:362
msgid ""
"A factor applied to the movement across the axes. The lower, the slower the "
"movement."
msgstr ""
+"Un factor aplicado al movimiento a través de los ejes. Cuanto más bajo, más "
+"lento es el movimiento."
#: doc/classes/Generic6DOFJoint3D.xml:365
msgid ""
"The amount of restitution on the axes' movement. The lower, the more "
"momentum gets lost."
msgstr ""
+"La cantidad de restitución en el movimiento de los ejes. Cuanto más bajo, "
+"más impulso se pierde."
#: doc/classes/Generic6DOFJoint3D.xml:368 doc/classes/PhysicsServer3D.xml:1422
msgid ""
"The amount of damping that happens at the linear motion across the axes."
msgstr ""
+"La cantidad de amortiguación que ocurre en el movimiento lineal a través de "
+"los ejes."
#: doc/classes/Generic6DOFJoint3D.xml:371
msgid "The velocity the linear motor will try to reach."
-msgstr ""
+msgstr "La velocidad que el motor lineal intentará alcanzar."
#: doc/classes/Generic6DOFJoint3D.xml:374
msgid ""
"The maximum force the linear motor will apply while trying to reach the "
"velocity target."
msgstr ""
+"La máxima fuerza que el motor lineal aplicará al intentar alcanzar el "
+"objetivo de velocidad."
#: doc/classes/Generic6DOFJoint3D.xml:383 doc/classes/PhysicsServer3D.xml:1431
msgid ""
"The minimum rotation in negative direction to break loose and rotate around "
"the axes."
msgstr ""
+"La rotación mínima en dirección negativa para soltarse y girar alrededor de "
+"los ejes."
#: doc/classes/Generic6DOFJoint3D.xml:386 doc/classes/PhysicsServer3D.xml:1434
msgid ""
"The minimum rotation in positive direction to break loose and rotate around "
"the axes."
msgstr ""
+"La rotación mínima en dirección positiva para soltarse y girar alrededor de "
+"los ejes."
#: doc/classes/Generic6DOFJoint3D.xml:389
msgid "The speed of all rotations across the axes."
-msgstr ""
+msgstr "La velocidad de todas las rotaciones a través de los ejes."
#: doc/classes/Generic6DOFJoint3D.xml:392 doc/classes/PhysicsServer3D.xml:1440
msgid ""
"The amount of rotational damping across the axes. The lower, the more "
"dampening occurs."
msgstr ""
+"La cantidad de amortiguación rotacional a través de los ejes. Cuanto más "
+"bajo, más amortiguación se produce."
#: doc/classes/Generic6DOFJoint3D.xml:395 doc/classes/PhysicsServer3D.xml:1443
msgid ""
"The amount of rotational restitution across the axes. The lower, the more "
"restitution occurs."
msgstr ""
+"La cantidad de amortiguación rotacional a través de los ejes. Cuanto más "
+"bajo, más amortiguación se produce."
#: doc/classes/Generic6DOFJoint3D.xml:398 doc/classes/PhysicsServer3D.xml:1446
msgid ""
"The maximum amount of force that can occur, when rotating around the axes."
msgstr ""
+"La máxima cantidad de fuerza que puede ocurrir, al girar alrededor de los "
+"ejes."
#: doc/classes/Generic6DOFJoint3D.xml:401
msgid ""
"When rotating across the axes, this error tolerance factor defines how much "
"the correction gets slowed down. The lower, the slower."
msgstr ""
+"Al girar sobre los ejes, este factor de tolerancia al error define cuánto se "
+"ralentiza la corrección. Cuanto más bajo, más lento."
#: doc/classes/Generic6DOFJoint3D.xml:404 doc/classes/PhysicsServer3D.xml:1452
msgid "Target speed for the motor at the axes."
-msgstr ""
+msgstr "La velocidad del objetivo para el motor en los ejes."
#: doc/classes/Generic6DOFJoint3D.xml:407 doc/classes/PhysicsServer3D.xml:1455
msgid "Maximum acceleration for the motor at the axes."
-msgstr ""
+msgstr "Aceleración máxima para el motor en los ejes."
#: doc/classes/Generic6DOFJoint3D.xml:419
msgid "If enabled, linear motion is possible within the given limits."
msgstr ""
+"Si se activa, el movimiento lineal es posible dentro de los límites dados."
#: doc/classes/Generic6DOFJoint3D.xml:422
msgid "If enabled, rotational motion is possible within the given limits."
msgstr ""
+"Si está activado, el movimiento de rotación es posible dentro de los límites "
+"dados."
#: doc/classes/Generic6DOFJoint3D.xml:429
msgid "If enabled, there is a rotational motor across these axes."
-msgstr ""
+msgstr "Si se activa, hay un motor de rotación a través de estos ejes."
#: doc/classes/Generic6DOFJoint3D.xml:432
msgid "If enabled, there is a linear motor across these axes."
-msgstr ""
+msgstr "Si se activa, hay un motor lineal a través de estos ejes."
#: doc/classes/Generic6DOFJoint3D.xml:435 doc/classes/HingeJoint3D.xml:118
msgid "Represents the size of the [enum Flag] enum."
-msgstr ""
+msgstr "Representa el tamaño del enum [enum Flag]."
#: doc/classes/Geometry2D.xml:4
msgid "Helper node to calculate generic geometry operations in 2D space."
msgstr ""
+"Nodo de ayuda para calcular operaciones de geometría genérica en el espacio "
+"2D."
#: doc/classes/Geometry2D.xml:7
msgid ""
@@ -24014,6 +29514,9 @@ msgid ""
"shapes, compute intersections between shapes, and process various other "
"geometric operations."
msgstr ""
+"Geometry2D proporciona a los usuarios un conjunto de funciones de ayuda para "
+"crear formas geométricas, calcular las intersecciones entre las formas y "
+"procesar varias otras operaciones geométricas."
#: doc/classes/Geometry2D.xml:20
msgid ""
@@ -24025,6 +29528,13 @@ msgid ""
"outer polygon (boundary) and inner polygon (hole) which could be "
"distinguished by calling [method is_polygon_clockwise]."
msgstr ""
+"Recorta el [code]polygon_a[/code] contra [code]polygon_b[/code] y devuelve "
+"un array de polígonos recortados. Esto realiza [constant "
+"OPERATION_DIFFERENCE] entre los polígonos. Devuelve un array vacío si "
+"[code]polygon_b[/code] se superpone completamente a [code]polygon_a[/code].\n"
+"Si [code]polygon_b[/code] está encerrado por [code]polygon_a[/code], "
+"devuelve un polígono exterior (límite) y un polígono interior (agujero) que "
+"se pueden distinguir llamando a [method is_polygon_clockwise]."
#: doc/classes/Geometry2D.xml:32
msgid ""
@@ -24033,12 +29543,18 @@ msgid ""
"between the polyline and the polygon. This operation can be thought of as "
"cutting a line with a closed shape."
msgstr ""
+"Recorta [code]polyline[/code] contra [code]polygon[/code] y devuelve un "
+"conjunto de polilíneas recortadas. Esto realiza [constant "
+"OPERATION_DIFFERENCE] entre la polilínea y el polígono. Esta operación puede "
+"ser pensada como el corte de una línea con una forma cerrada."
#: doc/classes/Geometry2D.xml:41
msgid ""
"Given an array of [Vector2]s, returns the convex hull as a list of points in "
"counterclockwise order. The last point is the same as the first one."
msgstr ""
+"Dado un conjunto de [Vector2], devuelve el casco convexo como una lista de "
+"puntos en orden antihorario. El último punto es el mismo que el primero."
#: doc/classes/Geometry2D.xml:52
msgid ""
@@ -24051,6 +29567,14 @@ msgid ""
"(hole) produced which could be distinguished by calling [method "
"is_polygon_clockwise]."
msgstr ""
+"Excluye mutuamente el área común definida por la intersección de "
+"[code]polygon_a[/code] y [code]polygon_b[/code] (véase [method "
+"intersect_polygons]) y devuelve un array de polígonos excluidos. Esto "
+"realiza [constant OPERATION_XOR] entre los polígonos. En otras palabras, "
+"devuelve todos los polígonos excepto el área común entre ellos.\n"
+"La operación puede dar como resultado un polígono exterior (límite) y un "
+"polígono interior (agujero) producidos que pueden ser distinguidos llamando "
+"a [method is_polygon_clockwise]."
#: doc/classes/Geometry2D.xml:66
msgid ""
@@ -24058,6 +29582,9 @@ msgid ""
"that is closest to [code]point[/code]. The returned point will always be "
"inside the specified segment."
msgstr ""
+"Devuelve el punto 2D en el segmento 2D ([code]s1[/code], [code]s2[/code]) "
+"que está más cerca del [code]point[/code]. El punto devuelto siempre estará "
+"dentro del segmento especificado."
#: doc/classes/Geometry2D.xml:79
msgid ""
@@ -24066,6 +29593,10 @@ msgid ""
"inside the segment ([code]s1[/code], [code]s2[/code]) or outside of it, i.e. "
"somewhere on the line extending from the segment."
msgstr ""
+"Devuelve el punto 2D en la línea 2D definida por ([code]s1[/code], [code]s2[/"
+"code]) que está más cerca del [code]point[/code]. El punto devuelto puede "
+"estar dentro del segmento ([code]s1[/code], [code]s2[/code]) o fuera de él, "
+"es decir, en algún lugar de la línea que se extiende desde el segmento."
#: doc/classes/Geometry2D.xml:94
msgid ""
@@ -24075,6 +29606,11 @@ msgid ""
"point on ([code]p1[/code], [code]p2[/code]) as well the accompanying point "
"on ([code]q1[/code], [code]q2[/code])."
msgstr ""
+"Dados los dos segmentos 2D ([code]p1[/code], [code]p2[/code]) y ([code]q1[/"
+"code], [code]q2[/code]), encuentra esos dos puntos en los dos segmentos que "
+"están más cerca uno del otro. Devuelve un [PackedVector2Array] que contiene "
+"este punto en ([code]p1[/code], [code]p2[/code]) así como el punto que lo "
+"acompaña en ([code]q1[/code], [code]q2[/code])."
#: doc/classes/Geometry2D.xml:105
msgid ""
@@ -24086,6 +29622,14 @@ msgid ""
"(hole) produced which could be distinguished by calling [method "
"is_polygon_clockwise]."
msgstr ""
+"Intersecta [code]polygon_a[/code] con [code]polygon_b[/code] y devuelve una "
+"matriz de polígonos intersectados. Esto realiza [constant "
+"OPERATION_INTERSECTION] entre los polígonos. En otras palabras, devuelve el "
+"área común compartida por los polígonos. Devuelve una matriz vacía si no se "
+"produce ninguna intersección.\n"
+"La operación puede dar como resultado un polígono exterior (límite) y un "
+"polígono interior (agujero) producidos que se podrían distinguir llamando a "
+"[method is_polygon_clockwise]."
#: doc/classes/Geometry2D.xml:117
msgid ""
@@ -24094,6 +29638,10 @@ msgid ""
"OPERATION_INTERSECTION] between the polyline and the polygon. This operation "
"can be thought of as chopping a line with a closed shape."
msgstr ""
+"Intersecta [code]polyline[/code] con [code]polygon[/code] y devuelve un "
+"conjunto de polilíneas intersectadas. Esto realiza [constant "
+"OPERATION_INTERSECTION] entre la polilínea y el polígono. Esta operación "
+"puede ser pensada como cortar una línea con una forma cerrada."
#: doc/classes/Geometry2D.xml:130
msgid ""
@@ -24101,6 +29649,9 @@ msgid ""
"it's located exactly [i]on[/i] the circle's boundary, otherwise returns "
"[code]false[/code]."
msgstr ""
+"Devuelve [code]true[/code] si [code]point[/code] está dentro del círculo o "
+"si está situado exactamente [i]on[/i] el límite del círculo, de lo contrario "
+"devuelve [code]false[/code]."
#: doc/classes/Geometry2D.xml:141
msgid ""
@@ -24108,12 +29659,18 @@ msgid ""
"code] or if it's located exactly [i]on[/i] polygon's boundary, otherwise "
"returns [code]false[/code]."
msgstr ""
+"Devuelve [code]true[/code] si [code]point[/code] está dentro de "
+"[code]polygon[/code] o si se encuentra exactamente en el límite del "
+"polígono, de lo contrario devuelve [code]false[/code]."
#: doc/classes/Geometry2D.xml:150
msgid ""
"Returns [code]true[/code] if [code]polygon[/code]'s vertices are ordered in "
"clockwise order, otherwise returns [code]false[/code]."
msgstr ""
+"Devuelve [code]true[/code] si los vértices de [code]polygon[/code] están "
+"ordenados en el sentido de las agujas del reloj, de lo contrario devuelve "
+"[code]false[/code]."
#: doc/classes/Geometry2D.xml:165
msgid ""
@@ -24123,6 +29680,12 @@ msgid ""
"an empty [Variant].\n"
"[b]Note:[/b] The lines are specified using direction vectors, not end points."
msgstr ""
+"Comprueba si las dos líneas ([code]from_a[/code], [code]dir_a[/code]) y "
+"([code]from_b[/code], [code]dir_b[/code]) se cruzan. Si es así, devuelve el "
+"punto de intersección como [Vector2]. Si no hay intersección, devuelve un "
+"[Variante] vacío.\n"
+"[b]Nota:[/b] Las rectas se especifican usando vectores de dirección, no "
+"puntos finales."
#: doc/classes/Geometry2D.xml:175
msgid ""
@@ -24131,6 +29694,10 @@ msgid ""
"[Vector2] that specifies the positions of each tile, [code]size[/code] "
"contains the overall size of the whole atlas as [Vector2]."
msgstr ""
+"Dada una serie de [Vector2]s que representan piezas que construye un atlas. "
+"El diccionario devuelto tiene dos claves: [code]points[/code] es un vector "
+"de [Vector2] que especifica las posiciones de cada pieza, [code]size[/code] "
+"contiene el tamaño global de todo el atlas como [Vector2]."
#: doc/classes/Geometry2D.xml:186
msgid ""
@@ -24141,8 +29708,15 @@ msgid ""
"(hole) produced which could be distinguished by calling [method "
"is_polygon_clockwise]."
msgstr ""
+"Fusiona (combina) [code]polygon_a[/code] y [code]polygon_b[/code] y devuelve "
+"una matriz de polígonos fusionados. Esto realiza [constant OPERATION_UNION] "
+"entre los polígonos.\n"
+"La operación puede dar como resultado un polígono exterior (límite) y un "
+"polígono interior (agujero) producidos que pueden distinguirse llamando a "
+"[method is_polygon_clockwise]."
#: doc/classes/Geometry2D.xml:200
+#, fuzzy
msgid ""
"Inflates or deflates [code]polygon[/code] by [code]delta[/code] units "
"(pixels). If [code]delta[/code] is positive, makes the polygon grow outward. "
@@ -24155,10 +29729,32 @@ msgid ""
"code], see [enum PolyJoinType].\n"
"The operation may result in an outer polygon (boundary) and inner polygon "
"(hole) produced which could be distinguished by calling [method "
-"is_polygon_clockwise]."
+"is_polygon_clockwise].\n"
+"[b]Note:[/b] To translate the polygon's vertices specifically, use the "
+"[method Transform2D.xform] method:\n"
+"[codeblock]\n"
+"var polygon = PackedVector2Array([Vector2(0, 0), Vector2(100, 0), "
+"Vector2(100, 100), Vector2(0, 100)])\n"
+"var offset = Vector2(50, 50)\n"
+"polygon = Transform2D(0, offset).xform(polygon)\n"
+"print(polygon) # prints [Vector2(50, 50), Vector2(150, 50), Vector2(150, "
+"150), Vector2(50, 150)]\n"
+"[/codeblock]"
msgstr ""
+"Infla o desinfla el [code]polygon[/code] por [code]delta[/code] unidades "
+"(píxeles). Si [code]delta[/code] es positivo, hace que el polígono crezca "
+"hacia afuera. Si [code]delta[/code] es negativo, hace que el polígono crezca "
+"hacia adentro. Devuelve un conjunto de polígonos porque inflarse/desinflarse "
+"puede resultar en múltiples polígonos discretos. Devuelve una matriz vacía "
+"si [code]delta[/code] es negativo y su valor absoluto excede aproximadamente "
+"las dimensiones mínimas del rectángulo delimitador del polígono.\n"
+"Los vértices de cada polígono se redondearán según lo determinado por "
+"[code]join_type[/code], véase [enum PolyJoinType].\n"
+"La operación puede dar como resultado un polígono exterior (límite) y un "
+"polígono interior (agujero) que se pueden distinguir llamando a [method "
+"is_polygon_clockwise]."
-#: doc/classes/Geometry2D.xml:217
+#: doc/classes/Geometry2D.xml:224
msgid ""
"Inflates or deflates [code]polyline[/code] by [code]delta[/code] units "
"(pixels), producing polygons. If [code]delta[/code] is positive, makes the "
@@ -24173,22 +29769,40 @@ msgid ""
"(hole) produced which could be distinguished by calling [method "
"is_polygon_clockwise]."
msgstr ""
-
-#: doc/classes/Geometry2D.xml:235
+"Infla o desinfla la [code]polyline[/code] por unidades [code]delta[/code] "
+"(píxeles), produciendo polígonos. Si [code]delta[/code] es positivo, hace "
+"que la polilínea crezca hacia afuera. Devuelve un conjunto de polígonos "
+"porque inflarse/desinflarse puede resultar en múltiples polígonos discretos. "
+"Si [code]delta[/code] es negativo, devuelve una matriz vacía.\n"
+"Los vértices de cada polígono se redondearán según lo determinado por "
+"[code]join_type[/code], ver [enum PolyJoinType].\n"
+"Los vértices de cada polígono se redondearán según lo determinado por "
+"[code]end_type[/code], ver [enum PolyEndType].\n"
+"La operación puede dar como resultado un polígono exterior (límite) y un "
+"polígono interior (agujero) producidos que pueden distinguirse llamando a "
+"[method is_polygon_clockwise]."
+
+#: doc/classes/Geometry2D.xml:242
msgid ""
"Returns if [code]point[/code] is inside the triangle specified by [code]a[/"
"code], [code]b[/code] and [code]c[/code]."
msgstr ""
+"Regresa si [code]point[/code] está dentro del triángulo especificado por "
+"[code]a[/code], [code]b[/code] y [code]c[/code]."
-#: doc/classes/Geometry2D.xml:250
+#: doc/classes/Geometry2D.xml:257
msgid ""
"Checks if the two segments ([code]from_a[/code], [code]to_a[/code]) and "
"([code]from_b[/code], [code]to_b[/code]) intersect. If yes, return the point "
"of intersection as [Vector2]. If no intersection takes place, returns an "
"empty [Variant]."
msgstr ""
+"Comprueba si los dos segmentos ([code]from_a[/code], [code]to_a[/code]) y "
+"([code]from_b[/code], [code]to_b[/code]) se cruzan. Si es así, devuelve el "
+"punto de intersección como [Vector2]. Si no hay intersección, devuelve un "
+"[Variant] vacío."
-#: doc/classes/Geometry2D.xml:259
+#: doc/classes/Geometry2D.xml:266
msgid ""
"Triangulates the area specified by discrete set of [code]points[/code] such "
"that no point is inside the circumcircle of any resulting triangle. Returns "
@@ -24198,8 +29812,15 @@ msgid ""
"triangles). If the triangulation did not succeed, an empty "
"[PackedInt32Array] is returned."
msgstr ""
+"Triangula el área especificada por un conjunto discreto de [code]points[/"
+"code] de tal manera que ningún punto está dentro del círculo de cualquier "
+"triángulo resultante. Devuelve un [PackedInt32Array] donde cada triángulo "
+"consiste en tres índices de puntos consecutivos en [code]points[/code] (es "
+"decir, el array devuelto tendrá [code]n * 3[/code] elementos, siendo "
+"[code]n[/code] el número de triángulos encontrados). Si la triangulación no "
+"tuvo éxito, se devuelve un [PackedInt32Array] vacío."
-#: doc/classes/Geometry2D.xml:268
+#: doc/classes/Geometry2D.xml:275
msgid ""
"Triangulates the polygon specified by the points in [code]polygon[/code]. "
"Returns a [PackedInt32Array] where each triangle consists of three "
@@ -24208,75 +29829,106 @@ msgid ""
"of found triangles). If the triangulation did not succeed, an empty "
"[PackedInt32Array] is returned."
msgstr ""
+"Triangula el polígono especificado por los puntos en [code]polygon[/code]. "
+"Devuelve un [PackedInt32Array] donde cada triángulo consiste en tres índices "
+"de puntos consecutivos en [code]polygon[/code] (es decir, el array devuelto "
+"tendrá [code]n * 3[/code] elementos, siendo [code]n[/code] el número de "
+"triángulos encontrados). Si la triangulación no tuvo éxito, se devuelve un "
+"[PackedInt32Array] vacío."
-#: doc/classes/Geometry2D.xml:274
+#: doc/classes/Geometry2D.xml:281
msgid ""
"Create regions where either subject or clip polygons (or both) are filled."
msgstr ""
+"Crear regiones en las que se llenen los polígonos del sujeto o del recorte "
+"(o ambos)."
-#: doc/classes/Geometry2D.xml:277
+#: doc/classes/Geometry2D.xml:284
msgid ""
"Create regions where subject polygons are filled except where clip polygons "
"are filled."
msgstr ""
+"Crea regiones en las que se rellenen los polígonos del sujeto, excepto "
+"cuando se rellenen los polígonos de clips."
-#: doc/classes/Geometry2D.xml:280
+#: doc/classes/Geometry2D.xml:287
msgid "Create regions where both subject and clip polygons are filled."
msgstr ""
+"Crea regiones en las que se llenen tanto los polígonos del sujeto como los "
+"del recorte."
-#: doc/classes/Geometry2D.xml:283
+#: doc/classes/Geometry2D.xml:290
msgid ""
"Create regions where either subject or clip polygons are filled but not "
"where both are filled."
msgstr ""
+"Crea regiones en las que se llenen los polígonos del sujeto o del recorte "
+"pero no en las que se llenen ambos."
-#: doc/classes/Geometry2D.xml:286
+#: doc/classes/Geometry2D.xml:293
msgid ""
"Squaring is applied uniformally at all convex edge joins at [code]1 * delta[/"
"code]."
msgstr ""
+"La cuadratura se aplica uniformemente en todas las uniones de bordes "
+"convexos en [code]1 * delta[/code]."
-#: doc/classes/Geometry2D.xml:289
+#: doc/classes/Geometry2D.xml:296
msgid ""
"While flattened paths can never perfectly trace an arc, they are "
"approximated by a series of arc chords."
msgstr ""
+"Mientras que los caminos aplanados nunca pueden trazar perfectamente un "
+"arco, son aproximados por una serie de acordes de arco."
-#: doc/classes/Geometry2D.xml:292
+#: doc/classes/Geometry2D.xml:299
msgid ""
"There's a necessary limit to mitered joins since offsetting edges that join "
"at very acute angles will produce excessively long and narrow \"spikes\". "
"For any given edge join, when miter offsetting would exceed that maximum "
"distance, \"square\" joining is applied."
msgstr ""
+"Hay un límite necesario para las uniones a inglete, ya que los bordes "
+"desplazados que se unen en ángulos muy agudos producirán \"picos\" "
+"excesivamente largos y estrechos. Para cualquier unión de borde, cuando la "
+"compensación de inglete exceda esa distancia máxima, se aplica la unión "
+"\"cuadrada\"."
-#: doc/classes/Geometry2D.xml:295
+#: doc/classes/Geometry2D.xml:302
msgid ""
"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
"as a polygon."
msgstr ""
+"Los puntos finales se unen usando el valor [enum PolyJoinType] y el camino "
+"llenado como un polígono."
-#: doc/classes/Geometry2D.xml:298
+#: doc/classes/Geometry2D.xml:305
msgid ""
"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
"as a polyline."
msgstr ""
+"Los puntos finales se unen usando el valor [enum PolyJoinType] y el camino "
+"llenado como una polilínea."
-#: doc/classes/Geometry2D.xml:301
+#: doc/classes/Geometry2D.xml:308
msgid "Endpoints are squared off with no extension."
-msgstr ""
+msgstr "Los puntos finales son cuadrados sin extensión."
-#: doc/classes/Geometry2D.xml:304
+#: doc/classes/Geometry2D.xml:311
msgid "Endpoints are squared off and extended by [code]delta[/code] units."
msgstr ""
+"Los puntos finales se cuadran y se amplían con unidades [code]delta[/code]."
-#: doc/classes/Geometry2D.xml:307
+#: doc/classes/Geometry2D.xml:314
msgid "Endpoints are rounded off and extended by [code]delta[/code] units."
msgstr ""
+"Los puntos finales se redondean y se amplían con unidades [code]delta[/code]."
#: doc/classes/Geometry3D.xml:4
msgid "Helper node to calculate generic geometry operations in 3D space."
msgstr ""
+"Nodo de ayuda para calcular operaciones de geometría genérica en el espacio "
+"3D."
#: doc/classes/Geometry3D.xml:7
msgid ""
@@ -24284,6 +29936,9 @@ msgid ""
"shapes, compute intersections between shapes, and process various other "
"geometric operations."
msgstr ""
+"Geometry3D proporciona a los usuarios un conjunto de funciones de ayuda para "
+"crear formas geométricas, calcular las intersecciones entre las formas y "
+"procesar varias otras operaciones geométricas."
#: doc/classes/Geometry3D.xml:18
msgid ""
@@ -24291,6 +29946,10 @@ msgid ""
"at the origin. The box size is defined by [code]extents[/code], which "
"represents one (positive) corner of the box (i.e. half its actual size)."
msgstr ""
+"Devuelve un array con 6 [Plane]s que describen los lados de una caja "
+"centrada en el origen. El tamaño de la caja está definido por [code]extents[/"
+"code], que representa una esquina (positiva) de la caja (es decir, la mitad "
+"de su tamaño real)."
#: doc/classes/Geometry3D.xml:35
msgid ""
@@ -24302,6 +29961,13 @@ msgid ""
"[code]axis[/code] describes the axis along which the capsule is oriented (0 "
"for X, 1 for Y, 2 for Z)."
msgstr ""
+"Devuelve un conjunto de [Plane]s que delimita estrechamente una cápsula con "
+"caras centrada en el origen con radio [code]radio[/code] y altura "
+"[code]height[/code]. El parámetro [code]sides[/code] define cuántos planos "
+"se generarán para la parte lateral de la cápsula, mientras que [code]lats[/"
+"code] da el número de pasos latitudinales en la parte inferior y superior de "
+"la cápsula. El parámetro [code]axis[/code] describe el eje a lo largo del "
+"cual se orienta la cápsula (0 para X, 1 para Y, 2 para Z)."
#: doc/classes/Geometry3D.xml:50
msgid ""
@@ -24312,12 +29978,20 @@ msgid ""
"describes the axis along which the cylinder is oriented (0 for X, 1 for Y, 2 "
"for Z)."
msgstr ""
+"Devuelve un conjunto de [Plano]s que delimita estrechamente un cilindro "
+"facetado centrado en el origen con radio [code]radio[/code] y altura "
+"[code]height[/code]. El parámetro [code]sides[/code] define cuántos planos "
+"se generarán para la parte redonda del cilindro. El parámetro [code]eje[/"
+"code] describe el eje a lo largo del cual se orienta el cilindro (0 para X, "
+"1 para Y, 2 para Z)."
#: doc/classes/Geometry3D.xml:61
msgid ""
"Clips the polygon defined by the points in [code]points[/code] against the "
"[code]plane[/code] and returns the points of the clipped polygon."
msgstr ""
+"Recorta el polígono definido por los puntos en [code]points[/code] contra el "
+"[code]plane[/code] y devuelve los puntos del polígono recortado."
#: doc/classes/Geometry3D.xml:74
msgid ""
@@ -24325,6 +29999,9 @@ msgid ""
"that is closest to [code]point[/code]. The returned point will always be "
"inside the specified segment."
msgstr ""
+"Devuelve el punto 3D en el segmento 3D ([code]s1[/code], [code]s2[/code]) "
+"que está más cerca del [code]point[/code]. El punto devuelto siempre estará "
+"dentro del segmento especificado."
#: doc/classes/Geometry3D.xml:87
msgid ""
@@ -24333,6 +30010,10 @@ msgid ""
"inside the segment ([code]s1[/code], [code]s2[/code]) or outside of it, i.e. "
"somewhere on the line extending from the segment."
msgstr ""
+"Devuelve el punto 3D en la línea 3D definida por ([code]s1[/code], [code]s2[/"
+"code]) que está más cerca de [code]point[/code]. El punto devuelto puede "
+"estar dentro del segmento ([code]s1[/code], [code]s2[/code]) o fuera de él, "
+"es decir, en algún lugar de la línea que se extiende desde el segmento."
#: doc/classes/Geometry3D.xml:102
msgid ""
@@ -24342,10 +30023,15 @@ msgid ""
"point on ([code]p1[/code], [code]p2[/code]) as well the accompanying point "
"on ([code]q1[/code], [code]q2[/code])."
msgstr ""
+"Dados los dos segmentos tridimensionales ([code]p1[/code], [code]p2[/code]) "
+"y ([code]q1[/code], [code]q2[/code]), encuentra esos dos puntos en los dos "
+"segmentos que están más cerca uno del otro. Devuelve un [PackedVector3Array] "
+"que contiene este punto en ([code]p1[/code], [code]p2[/code]) así como el "
+"punto que lo acompaña en ([code]q1[/code], [code]q2[/code])."
#: doc/classes/Geometry3D.xml:111
msgid "Used internally by the engine."
-msgstr ""
+msgstr "Usado internamente por el motor."
#: doc/classes/Geometry3D.xml:128
msgid ""
@@ -24354,6 +30040,11 @@ msgid ""
"[code]b[/code] and [code]c[/code]. If yes, returns the point of intersection "
"as [Vector3]. If no intersection takes place, an empty [Variant] is returned."
msgstr ""
+"Comprueba si el rayo 3D que comienza en [code]from[/code] con la dirección "
+"de [code]dir[/code] intersecta el triángulo especificado por [code]a[/code], "
+"[code]b[/code] y [code]c[/code]. Si es así, devuelve el punto de "
+"intersección como [Vector3]. Si no hay intersección, se devuelve una "
+"[Variant] vacía."
#: doc/classes/Geometry3D.xml:141
msgid ""
@@ -24363,6 +30054,12 @@ msgid ""
"containing the point the intersection and the hull's normal. If no "
"intersecion is found, an the returned array is empty."
msgstr ""
+"Dado un casco convexo definido a través de los [Plane]s en el array "
+"[code]planes[/code], se comprueba si el segmento ([code]de[/code], [code]a[/"
+"code]) se cruza con ese casco. Si se encuentra una intersección, devuelve un "
+"[PackedVector3Array] que contiene el punto de la intersección y la "
+"normalidad del casco. Si no se encuentra ninguna intersección, el array "
+"devuelto está vacío."
#: doc/classes/Geometry3D.xml:156
msgid ""
@@ -24373,6 +30070,11 @@ msgid ""
"contains the point of intersection and the cylinder's normal at the point of "
"intersection."
msgstr ""
+"Comprueba si el segmento ([code]de[/code], [code]a[/code]) intersecta el "
+"cilindro con altura [code]height[/code] que está centrado en el origen y "
+"tiene radio [code]radio[/code]. Si no, devuelve un [PackedVector3Array] "
+"vacío. Si se produce una intersección, el array devuelto contiene el punto "
+"de intersección y la normalidad del cilindro en el punto de intersección."
#: doc/classes/Geometry3D.xml:171
msgid ""
@@ -24382,6 +30084,11 @@ msgid ""
"yes, returns a [PackedVector3Array] containing the point of intersection and "
"the sphere's normal at the point of intersection."
msgstr ""
+"Comprueba si el segmento ([code]de[/code], [code]a[/code]) intersecta la "
+"esfera que se encuentra en [code]sphere_position[/code] y tiene radio "
+"[code]sphere_radius[/code]. Si no, devuelve un [PackedVector3Array] vacío. "
+"Si es así, devuelve un [PackedVector3Array] que contiene el punto de "
+"intersección y la normalidad de la esfera en el punto de intersección."
#: doc/classes/Geometry3D.xml:188
msgid ""
@@ -24390,58 +30097,78 @@ msgid ""
"point of intersection as [Vector3]. If no intersection takes place, an empty "
"[Variant] is returned."
msgstr ""
+"Comprueba si el segmento ([code]de[/code], [code]a[/code]) intersecta el "
+"triángulo [code]a[/code], [code]b[/code], [code]c[/code]. Si es así, "
+"devuelve el punto de intersección como [Vector3]. Si no hay intersección, se "
+"devuelve una [Variant] vacía."
#: doc/classes/GeometryInstance3D.xml:4
msgid "Base node for geometry-based visual instances."
-msgstr ""
+msgstr "Nodo base para instancias visuales basadas en la geometría."
#: doc/classes/GeometryInstance3D.xml:7
msgid ""
"Base node for geometry-based visual instances. Shares some common "
"functionality like visibility and custom materials."
msgstr ""
+"Nodo base para instancias visuales basadas en la geometría. Comparte algunas "
+"funciones comunes como la visibilidad y los materiales personalizados."
#: doc/classes/GeometryInstance3D.xml:26
msgid ""
"Overrides the bounding box of this node with a custom one. To remove it, set "
"an [AABB] with all fields set to zero."
msgstr ""
+"Anula el cuadro delimitador de este nodo con uno personalizado. Para "
+"eliminarlo, establece un [AABB] con todos los campos puestos a cero."
#: doc/classes/GeometryInstance3D.xml:42
msgid ""
"The selected shadow casting flag. See [enum ShadowCastingSetting] for "
"possible values."
msgstr ""
+"El flag de sombra seleccionada. Ver [enum ShadowCastingSetting] para los "
+"posibles valores."
#: doc/classes/GeometryInstance3D.xml:45
msgid ""
"The extra distance added to the GeometryInstance3D's bounding box ([AABB]) "
"to increase its cull box."
msgstr ""
+"La distancia extra añadida al cuadro delimitador de GeometryInstance3D "
+"([AABB]) para aumentar su cuadro de selección."
#: doc/classes/GeometryInstance3D.xml:52
msgid ""
"The GeometryInstance3D's max LOD distance.\n"
"[b]Note:[/b] This property currently has no effect."
msgstr ""
+"La distancia máxima de LOD de GeometryInstance3D.\n"
+"[b]Nota[/b]: Esta propiedad no tiene actualmente ningún efecto."
#: doc/classes/GeometryInstance3D.xml:56
msgid ""
"The GeometryInstance3D's max LOD margin.\n"
"[b]Note:[/b] This property currently has no effect."
msgstr ""
+"El margen máximo de LOD de GeometryInstance3D.\n"
+"[b]Nota:[/b] Esta propiedad no tiene actualmente ningún efecto."
#: doc/classes/GeometryInstance3D.xml:60
msgid ""
"The GeometryInstance3D's min LOD distance.\n"
"[b]Note:[/b] This property currently has no effect."
msgstr ""
+"El margen máximo de LOD de GeometryInstance3D.\n"
+"[b]Nota:[/b] Esta propiedad no tiene actualmente ningún efecto."
#: doc/classes/GeometryInstance3D.xml:64
msgid ""
"The GeometryInstance3D's min LOD margin.\n"
"[b]Note:[/b] This property currently has no effect."
msgstr ""
+"El margen de LOD mínimo de GeometryInstance3D.\n"
+"[b]Nota:[/b] Esta propiedad no tiene actualmente ningún efecto."
#: doc/classes/GeometryInstance3D.xml:68
msgid ""
@@ -24449,10 +30176,13 @@ msgid ""
"If a material is assigned to this property, it will be used instead of any "
"material set in any material slot of the mesh."
msgstr ""
+"La sobreescritura del material para toda la geometría.\n"
+"Si se asigna un material a esta propiedad, se utilizará en lugar de "
+"cualquier material establecido en cualquier ranura de material de la malla."
#: doc/classes/GeometryInstance3D.xml:74
msgid "Will not cast any shadows."
-msgstr ""
+msgstr "No arrojará ninguna sombra."
#: doc/classes/GeometryInstance3D.xml:77
msgid ""
@@ -24460,6 +30190,9 @@ msgid ""
"Will take culling into account, so faces not being rendered will not be "
"taken into account when shadow casting."
msgstr ""
+"Arrojará sombras de todas las caras visibles en la GeometryInstance3D.\n"
+"Tendrá en cuenta la selección, por lo que las caras que no se renderizan no "
+"se tendrán en cuenta al proyectar las sombras."
#: doc/classes/GeometryInstance3D.xml:81
msgid ""
@@ -24467,6 +30200,9 @@ msgid ""
"Will not take culling into account, so all faces will be taken into account "
"when shadow casting."
msgstr ""
+"Arrojará sombras de todas las caras visibles en la GeometryInstance3D.\n"
+"No se tendrá en cuenta la selección, por lo que todas las caras se tendrán "
+"en cuenta al proyectar las sombras."
#: doc/classes/GeometryInstance3D.xml:85
msgid ""
@@ -24474,10 +30210,13 @@ msgid ""
"In other words, the actual mesh will not be visible, only the shadows casted "
"from the mesh will be."
msgstr ""
+"Sólo mostrará las sombras proyectadas por este objeto.\n"
+"En otras palabras, la malla real no será visible, sólo las sombras "
+"proyectadas desde la malla lo serán."
#: doc/classes/GIProbe.xml:4
msgid "Real-time global illumination (GI) probe."
-msgstr ""
+msgstr "Sonda de iluminación global (GI) en tiempo real."
#: doc/classes/GIProbe.xml:7
msgid ""
@@ -24491,30 +30230,49 @@ msgid ""
"be turned down in exchange for better performance in the [ProjectSettings] "
"using [member ProjectSettings.rendering/quality/gi_probes/quality]."
msgstr ""
+"Los GIProbe se utilizan para proporcionar luz indirecta de alta calidad en "
+"tiempo real a las escenas. Precálculan el efecto de los objetos que emiten "
+"luz y el efecto de la geometría estática para simular el comportamiento de "
+"la luz compleja en tiempo real. Las GIProbe necesitan ser cocinadas antes de "
+"ser usadas, sin embargo, una vez cocinadas, los objetos dinámicos recibirán "
+"luz de ellas. Además, las luces pueden ser completamente dinámicas o "
+"cocidas.\n"
+"Tener [GIProbe]s en una escena puede ser costoso, la calidad de la sonda "
+"puede ser rechazada a cambio de un mejor rendimiento en el [ProjectSettings] "
+"usando [member ProjectSettings.rendering/quality/gi_probes/quality]."
#: doc/classes/GIProbe.xml:11
msgid "https://docs.godotengine.org/en/latest/tutorials/3d/gi_probes.html"
-msgstr ""
+msgstr "https://docs.godotengine.org/es/latest/tutorials/3d/gi_probes.html"
#: doc/classes/GIProbe.xml:22
+#, fuzzy
msgid ""
"Bakes the effect from all [GeometryInstance3D]s marked with [constant "
"GeometryInstance3D.GI_MODE_BAKED] and [Light3D]s marked with either "
-"[constant Light3D.BAKE_INDIRECT] or [constant Light3D.BAKE_ALL]. If "
+"[constant Light3D.BAKE_DYNAMIC] or [constant Light3D.BAKE_STATIC]. If "
"[code]create_visual_debug[/code] is [code]true[/code], after baking the "
"light, this will generate a [MultiMesh] that has a cube representing each "
"solid cell with each cube colored to the cell's albedo color. This can be "
"used to visualize the [GIProbe]'s data and debug any issues that may be "
"occurring."
msgstr ""
+"Hace el efecto de todas las [GeometryInstance3D]s marcadas con [constant "
+"GeometryInstance3D.GI_MODE_BAKED] y [Light3D]s marcadas con [constant "
+"Light3D.BAKE_INDIRECT] o [constant Light3D.BAKE_ALL]. Si "
+"[code]create_visual_debug[/code] es [code]true[/code], después de cocinar la "
+"luz, esto generará una [MultiMesh] que tiene un cubo que representa cada "
+"celda sólida con cada cubo coloreado al color del albedo de la celda. Esto "
+"puede ser usado para visualizar los datos del [GIProbe] y depurar cualquier "
+"problema que pueda estar ocurriendo."
#: doc/classes/GIProbe.xml:29
msgid "Calls [method bake] with [code]create_visual_debug[/code] enabled."
-msgstr ""
+msgstr "Llama a [method bake] con [code]create_visual_debug[/code] activado."
#: doc/classes/GIProbe.xml:35
msgid "The [GIProbeData] resource that holds the data for this [GIProbe]."
-msgstr ""
+msgstr "El recurso [GIProbeData] que contiene los datos para este [GIProbe]."
#: doc/classes/GIProbe.xml:38
msgid ""
@@ -24522,6 +30280,9 @@ msgid ""
"larger without increasing the subdivisions with [member subdiv], the size of "
"each cell will increase and result in lower detailed lighting."
msgstr ""
+"El tamaño del área cubierta por la [GIProbe]. Si haces las extensiones más "
+"grandes sin aumentar las subdivisiones con [member subdivisión], el tamaño "
+"de cada celda aumentará y resultará en una menor iluminación detallada."
#: doc/classes/GIProbe.xml:41
msgid ""
@@ -24529,34 +30290,44 @@ msgid ""
"higher number results in finer detail and thus higher visual quality, while "
"lower numbers result in better performance."
msgstr ""
+"Número de veces para subdividir la red en la que opera el [GIProbe]. Un "
+"número mayor resulta en un detalle más fino y por lo tanto en una mayor "
+"calidad visual, mientras que un número menor resulta en un mejor rendimiento."
#: doc/classes/GIProbe.xml:46
msgid ""
"Use 64 subdivisions. This is the lowest quality setting, but the fastest. "
"Use it if you can, but especially use it on lower-end hardware."
msgstr ""
+"Utilice las 64 subdivisiones. Este es el ajuste de menor calidad, pero el "
+"más rápido. Úsalo si puedes, pero sobre todo úsalo en el hardware de gama "
+"baja."
#: doc/classes/GIProbe.xml:49
msgid "Use 128 subdivisions. This is the default quality setting."
msgstr ""
+"Utiliza 128 subdivisiones. Este es el ajuste de calidad predeterminado."
#: doc/classes/GIProbe.xml:52
msgid "Use 256 subdivisions."
-msgstr ""
+msgstr "Utilice 256 subdivisiones."
#: doc/classes/GIProbe.xml:55
msgid ""
"Use 512 subdivisions. This is the highest quality setting, but the slowest. "
"On lower-end hardware this could cause the GPU to stall."
msgstr ""
+"Use las subdivisiones 512. Este es el ajuste de mayor calidad, pero el más "
+"lento. En el hardware de gama baja esto podría causar que la GPU se atasque."
#: doc/classes/GIProbe.xml:58
msgid "Represents the size of the [enum Subdiv] enum."
-msgstr ""
+msgstr "Representa el tamaño del enum [enum Subdiv]."
#: modules/mono/doc_classes/GodotSharp.xml:4
msgid "Bridge between Godot and the Mono runtime (Mono-enabled builds only)."
msgstr ""
+"Puente entre Godot y el Mono runtime (sólo builds habilitadas para Mono)."
#: modules/mono/doc_classes/GodotSharp.xml:7
msgid ""
@@ -24565,14 +30336,18 @@ msgid ""
"builds.\n"
"See also [CSharpScript]."
msgstr ""
+"Esta clase es un puente entre Godot y el Mono runtime. Expone varias "
+"operaciones de bajo nivel y sólo está disponible en builds de Godot en "
+"mono.\n"
+" Ver también [CSharpScript]."
#: modules/mono/doc_classes/GodotSharp.xml:17
msgid "Attaches the current thread to the Mono runtime."
-msgstr ""
+msgstr "Adjunta el hilo actual al Mono runtime."
#: modules/mono/doc_classes/GodotSharp.xml:24
msgid "Detaches the current thread from the Mono runtime."
-msgstr ""
+msgstr "Desconecta el hilo actual del Mono runtime."
#: modules/mono/doc_classes/GodotSharp.xml:31
msgid ""
@@ -24581,6 +30356,11 @@ msgid ""
"(use [method is_runtime_initialized] to check). If the Mono runtime isn't "
"initialized at the time this method is called, the engine will crash."
msgstr ""
+"Devuelve el actual ID del MonoDominio.\n"
+"[b]Nota:[/b] El tiempo de ejecución de Mono debe ser inicializado para que "
+"este método funcione (use [method is_runtime_initialized] para comprobarlo). "
+"Si el tiempo de ejecución Mono no está inicializado en el momento en que se "
+"llama a este método, el motor se bloqueará."
#: modules/mono/doc_classes/GodotSharp.xml:39
msgid ""
@@ -24590,46 +30370,49 @@ msgid ""
"(use [method is_runtime_initialized] to check). If the Mono runtime isn't "
"initialized at the time this method is called, the engine will crash."
msgstr ""
+"Devuelve el ID de MonoDominio de los guiones. Este será el mismo ID de "
+"MonoDominio que [method get_domain_id], a menos que el dominio de los "
+"scripts no esté cargado.\n"
+"[b]Nota:[/b] El tiempo de ejecución de Mono debe ser inicializado para que "
+"este método funcione (usa [method is_runtime_initialized] para comprobarlo). "
+"Si el tiempo de ejecución de Mono no está inicializado en el momento en que "
+"se llama a este método, el motor se bloqueará."
#: modules/mono/doc_classes/GodotSharp.xml:49
-#, fuzzy
msgid ""
"Returns [code]true[/code] if the domain is being finalized, [code]false[/"
"code] otherwise."
msgstr ""
-"Devuelve [code]true[/code] si existe un subnodo con el [code]name[/code] "
-"especificado."
+"Devuelve [code]true[/code] si el dominio esta siendo finalizado, "
+"[code]false[/code] en caso contrario."
#: modules/mono/doc_classes/GodotSharp.xml:56
-#, fuzzy
msgid ""
"Returns [code]true[/code] if the Mono runtime is initialized, [code]false[/"
"code] otherwise."
msgstr ""
-"Devuelve [code]true[/code] si la pista dada es importada. Si no, devuelve "
-"[code]false[/code]."
+"Devuelve [code]true[/code] si el Mono runtime está inicializado, "
+"[code]false[/code] en caso contrario."
#: modules/mono/doc_classes/GodotSharp.xml:63
-#, fuzzy
msgid ""
"Returns [code]true[/code] if the Mono runtime is shutting down, [code]false[/"
"code] otherwise."
msgstr ""
-"Devuelve [code]true[/code] si la pista dada es importada. Si no, devuelve "
-"[code]false[/code]."
+"Devuelve [code]true[/code] si el Mono runtime se está apagando, [code]false[/"
+"code] en caso contrario."
#: modules/mono/doc_classes/GodotSharp.xml:70
-#, fuzzy
msgid ""
"Returns [code]true[/code] if the scripts domain is loaded, [code]false[/"
"code] otherwise."
msgstr ""
-"Devuelve [code]true[/code] si la pista en el índice [code]idx[/code] está "
-"habilitada."
+"Devuelve [code]true[/code] si los scripts de dominio están cargados, "
+"[code]false[/code] en caso contrario."
#: doc/classes/GPUParticles2D.xml:4
msgid "2D particle emitter."
-msgstr ""
+msgstr "Emisor de partículas 2D."
#: doc/classes/GPUParticles2D.xml:7
msgid ""
@@ -24640,28 +30423,39 @@ msgid ""
"to configure particle appearance and behavior. Alternatively, you can add a "
"[ShaderMaterial] which will be applied to all particles."
msgstr ""
+"Nodo de partículas 2D utilizado para crear una variedad de sistemas de "
+"partículas y efectos. [GPUParticles2D] tiene un emisor que genera un cierto "
+"número de partículas a una velocidad determinada.\n"
+"Utiliza la propiedad [code]process_material[/code] para añadir un "
+"[ParticlesMaterial] para configurar la apariencia y el comportamiento de las "
+"partículas. Alternativamente, puede agregar un [ShaderMaterial] que se "
+"aplicará a todas las partículas."
#: doc/classes/GPUParticles2D.xml:18
msgid "Returns a rectangle containing the positions of all existing particles."
msgstr ""
+"Devuelve un rectángulo que contiene las posiciones de todas las partículas "
+"existentes."
#: doc/classes/GPUParticles2D.xml:25
msgid "Restarts all the existing particles."
-msgstr ""
+msgstr "Reinicia todas las partículas existentes."
#: doc/classes/GPUParticles2D.xml:65 doc/classes/GPUParticles3D.xml:96
msgid ""
"[Material] for processing particles. Can be a [ParticlesMaterial] or a "
"[ShaderMaterial]."
msgstr ""
+"[Material] para procesar partículas. Puede ser un [ParticlesMaterial] o un "
+"[ShaderMaterial]."
#: doc/classes/GPUParticles2D.xml:77
msgid "Editor visibility helper."
-msgstr ""
+msgstr "Ayudante de visibilidad del editor."
#: doc/classes/GPUParticles3D.xml:4
msgid "3D particle emitter."
-msgstr ""
+msgstr "Emisor de partículas en 3D."
#: doc/classes/GPUParticles3D.xml:7
msgid ""
@@ -24672,97 +30466,122 @@ msgid ""
"to configure particle appearance and behavior. Alternatively, you can add a "
"[ShaderMaterial] which will be applied to all particles."
msgstr ""
+"Nodo de partículas 3D utilizado para crear una variedad de sistemas de "
+"partículas y efectos. [GPUParticles3D] tiene un emisor que genera un cierto "
+"número de partículas a una velocidad determinada.\n"
+"Utiliza la propiedad [code]process_material[/code] para añadir un "
+"[ParticlesMaterial] para configurar la apariencia y el comportamiento de las "
+"partículas. Alternativamente, puede agregar un [ShaderMaterial] que se "
+"aplicará a todas las partículas."
#: doc/classes/GPUParticles3D.xml:11
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/vertex_animation/"
"controlling_thousands_of_fish.html"
msgstr ""
+"https://docs.godotengine.org/es/latest/tutorials/3d/vertex_animation/"
+"controlling_thousands_of_fish.html"
#: doc/classes/GPUParticles3D.xml:18
msgid ""
"Returns the axis-aligned bounding box that contains all the particles that "
"are active in the current frame."
msgstr ""
+"Devuelve el cuadro delimitador alineado con el eje que contiene todas las "
+"partículas que están activas en el cuadro actual."
#: doc/classes/GPUParticles3D.xml:27
msgid "Returns the [Mesh] that is drawn at index [code]pass[/code]."
-msgstr ""
+msgstr "Devuelve la [Mesh] que se dibuja en el índice [code]pass[/code]."
#: doc/classes/GPUParticles3D.xml:34
msgid "Restarts the particle emission, clearing existing particles."
msgstr ""
+"Reinicia la emisión de partículas, limpiando las partículas existentes."
#: doc/classes/GPUParticles3D.xml:45
msgid "Sets the [Mesh] that is drawn at index [code]pass[/code]."
-msgstr ""
+msgstr "Establece la [Mesh] que se dibuja en el índice [code]pass[/code]."
#: doc/classes/GPUParticles3D.xml:51
msgid "Number of particles to emit."
-msgstr ""
+msgstr "Número de partículas a emitir."
#: doc/classes/GPUParticles3D.xml:57
msgid "[Mesh] that is drawn for the first draw pass."
-msgstr ""
+msgstr "[Mesh] que se dibuja para el primer pase de dibujado."
#: doc/classes/GPUParticles3D.xml:60
msgid "[Mesh] that is drawn for the second draw pass."
-msgstr ""
+msgstr "[Mesh] que se dibuja para el segundo pase de dibujado."
#: doc/classes/GPUParticles3D.xml:63
msgid "[Mesh] that is drawn for the third draw pass."
-msgstr ""
+msgstr "[Mesh] que se dibuja para el tercer pase de dibujado."
#: doc/classes/GPUParticles3D.xml:66
msgid "[Mesh] that is drawn for the fourth draw pass."
-msgstr ""
+msgstr "[Mesh] que se dibuja para el cuarto pase de dibujado."
#: doc/classes/GPUParticles3D.xml:69
msgid "The number of draw passes when rendering particles."
-msgstr ""
+msgstr "El número de pases de dibujado cuando se renderizan las partículas."
#: doc/classes/GPUParticles3D.xml:75
msgid ""
"Time ratio between each emission. If [code]0[/code], particles are emitted "
"continuously. If [code]1[/code], all particles are emitted simultaneously."
msgstr ""
+"Ratio de tiempo entre cada emisión. Si [code]0[/code], las partículas se "
+"emiten continuamente. Si [code]1[/code], todas las partículas se emiten "
+"simultáneamente."
#: doc/classes/GPUParticles3D.xml:90
msgid ""
"If [code]true[/code], only [code]amount[/code] particles will be emitted."
msgstr ""
+"Si [code]true[/code], sólo se emitirán partículas de [code]amount[/code]."
#: doc/classes/GPUParticles3D.xml:93
msgid ""
"Amount of time to preprocess the particles before animation starts. Lets you "
"start the animation some time after particles have started emitting."
msgstr ""
+"Cantidad de tiempo para preprocesar las partículas antes de que comience la "
+"animación. Te permite iniciar la animación un tiempo después de que las "
+"partículas hayan empezado a emitir."
#: doc/classes/GPUParticles3D.xml:99
msgid "Emission randomness ratio."
-msgstr ""
+msgstr "Ratio de aleatoriedad de las emisiones."
#: doc/classes/GPUParticles3D.xml:102
msgid ""
"Speed scaling ratio. A value of [code]0[/code] can be used to pause the "
"particles."
msgstr ""
+"Relación de escala de velocidad. Un valor de [code]0[/code] puede ser usado "
+"para pausar las partículas."
#: doc/classes/GPUParticles3D.xml:105
msgid ""
"The [AABB] that determines the area of the world part of which needs to be "
"visible on screen for the particle system to be active."
msgstr ""
+"El [AABB] que determina el área del mundo cuya parte necesita ser visible en "
+"pantalla para que el sistema de partículas esté activo."
#: doc/classes/GPUParticles3D.xml:119
msgid "Maximum number of draw passes supported."
-msgstr ""
+msgstr "Número máximo de pases de dibujado soportados."
#: doc/classes/Gradient.xml:4
msgid ""
"A color interpolator resource which can be used to generate colors between "
"user-defined color points."
msgstr ""
+"Un recurso interpolador de color que puede ser usado para generar colores "
+"entre puntos de color definidos por el usuario."
#: doc/classes/Gradient.xml:7
msgid ""
@@ -24772,51 +30591,64 @@ msgid ""
"will initially have 2 colors (black and white), one (black) at ramp lower "
"offset 0 and the other (white) at the ramp higher offset 1."
msgstr ""
+"Dado un conjunto de colores, este recurso los interpolará en orden. Esto "
+"significa que si tiene el color 1, el color 2 y el color 3, la rampa "
+"interpolará del color 1 al color 2 y del color 2 al color 3. La rampa tendrá "
+"inicialmente 2 colores (blanco y negro), uno (negro) en la rampa de menor "
+"desplazamiento 0 y el otro (blanco) en la rampa de mayor desplazamiento 1."
#: doc/classes/Gradient.xml:20
msgid ""
"Adds the specified color to the end of the ramp, with the specified offset."
msgstr ""
+"Añade el color especificado al final de la rampa, con el desplazamiento "
+"especificado."
#: doc/classes/Gradient.xml:29
msgid "Returns the color of the ramp color at index [code]point[/code]."
msgstr ""
+"Devuelve el color del color de la rampa en el índice [code]point[/code]."
#: doc/classes/Gradient.xml:38
msgid "Returns the offset of the ramp color at index [code]point[/code]."
msgstr ""
+"Devuelve el color del color de la rampa en el índice [code]point[/code]."
#: doc/classes/Gradient.xml:45
msgid "Returns the number of colors in the ramp."
-msgstr ""
+msgstr "Devuelve el número de colores de la rampa."
#: doc/classes/Gradient.xml:54
msgid "Returns the interpolated color specified by [code]offset[/code]."
-msgstr ""
+msgstr "Devuelve el color interpolado especificado por [code]offset[/code]."
#: doc/classes/Gradient.xml:63
msgid "Removes the color at the index [code]offset[/code]."
-msgstr ""
+msgstr "Elimina el color en el índice [code]offset[/code]."
#: doc/classes/Gradient.xml:74
msgid "Sets the color of the ramp color at index [code]point[/code]."
msgstr ""
+"Establece el color del color de la rampa en el índice [code]point[/code]."
#: doc/classes/Gradient.xml:85
msgid "Sets the offset for the ramp color at index [code]point[/code]."
msgstr ""
+"Establece el desplazamiento del color de la rampa en el índice [code]point[/"
+"code]."
#: doc/classes/Gradient.xml:91
msgid "Gradient's colors returned as a [PackedColorArray]."
-msgstr ""
+msgstr "Los colores de gradiente devueltos como un [PackedColorArray]."
#: doc/classes/Gradient.xml:94
msgid "Gradient's offsets returned as a [PackedFloat32Array]."
msgstr ""
+"Los desplazamientos de gradiente devueltos como un [PackedFloat32Array]."
#: doc/classes/GradientTexture.xml:4
msgid "Gradient-filled texture."
-msgstr ""
+msgstr "Textura llena de gradientes."
#: doc/classes/GradientTexture.xml:7
msgid ""
@@ -24826,20 +30658,27 @@ msgid ""
"gradient, but instead an interpolation of samples obtained from the gradient "
"at fixed steps (see [member width])."
msgstr ""
+"GradientTexture utiliza un [Gradient] para rellenar los datos de la textura. "
+"El gradiente se rellenará de izquierda a derecha usando los colores "
+"obtenidos del gradiente. Esto significa que la textura no representa "
+"necesariamente una copia exacta del gradiente, sino una interpolación de "
+"muestras obtenidas del gradiente a pasos fijos (ver [member width])."
#: doc/classes/GradientTexture.xml:15
msgid "The [Gradient] that will be used to fill the texture."
-msgstr ""
+msgstr "El [Gradient] que se usará para rellenar la textura."
#: doc/classes/GradientTexture.xml:18
msgid "The number of color samples that will be obtained from the [Gradient]."
-msgstr ""
+msgstr "El número de muestras de color que se obtendrán del [Gradient]."
#: doc/classes/GraphEdit.xml:4
msgid ""
"GraphEdit is an area capable of showing various GraphNodes. It manages "
"connection events between them."
msgstr ""
+"GraphEdit es un área capaz de mostrar varios GraphNodes. Gestiona los "
+"eventos de conexión entre ellos."
#: doc/classes/GraphEdit.xml:7
msgid ""
@@ -24850,28 +30689,40 @@ msgid ""
"It is greatly advised to enable low-processor usage mode (see [member OS."
"low_processor_usage_mode]) when using GraphEdits."
msgstr ""
+"GraphEdit gestiona la visualización de los GraphNodes que contiene, así como "
+"las conexiones y desconexiones entre ellos. Se envían señales para cada uno "
+"de estos dos eventos. La desconexión entre las ranuras de GraphNode está "
+"desactivada por defecto.\n"
+"Se recomienda encarecidamente habilitar el modo de uso de bajo procesador "
+"(ver [member OS.low_processor_usage_mode]) al usar GraphEdits."
#: doc/classes/GraphEdit.xml:21
msgid ""
"Makes possible the connection between two different slot types. The type is "
"defined with the [method GraphNode.set_slot] method."
msgstr ""
+"Hace posible la conexión entre dos tipos de ranuras diferentes. El tipo se "
+"define con el método [method GraphNode.set_slot]."
#: doc/classes/GraphEdit.xml:30
msgid ""
"Makes possible to disconnect nodes when dragging from the slot at the left "
"if it has the specified type."
msgstr ""
+"Permite desconectar los nodos al arrastrarlos desde la ranura de la "
+"izquierda si tiene el tipo especificado."
#: doc/classes/GraphEdit.xml:39
msgid ""
"Makes possible to disconnect nodes when dragging from the slot at the right "
"if it has the specified type."
msgstr ""
+"Permite desconectar los nodos al arrastrarlos desde la ranura de la derecha "
+"si tiene el tipo especificado."
#: doc/classes/GraphEdit.xml:46
msgid "Removes all connections between nodes."
-msgstr ""
+msgstr "Elimina todas las conexiones entre los nodos."
#: doc/classes/GraphEdit.xml:61
msgid ""
@@ -24880,6 +30731,9 @@ msgid ""
"[code]to[/code] GraphNode. If the connection already exists, no connection "
"is created."
msgstr ""
+"Crear una conexión entre la ranura [code]from_port[/code] del [code]from[/"
+"code] GraphNode y la ranura [code]to_port[/code] del [code]to[/code] "
+"GraphNode. Si la conexión ya existe, no se crea ninguna conexión."
#: doc/classes/GraphEdit.xml:76
msgid ""
@@ -24888,6 +30742,9 @@ msgid ""
"[code]to[/code] GraphNode. If the connection does not exist, no connection "
"is removed."
msgstr ""
+"Elimina la conexión entre la ranura [code]from_port[/code] del [code]from[/"
+"code] GraphNode y la ranura [code]to_port[/code] del [code]to[/code] "
+"GraphNode. Si la conexión no existe, no se elimina ninguna conexión."
#: doc/classes/GraphEdit.xml:83
msgid ""
@@ -24895,6 +30752,9 @@ msgid ""
"in a structure of the form [code]{ from_port: 0, from: \"GraphNode name 0\", "
"to_port: 1, to: \"GraphNode name 1\" }[/code]."
msgstr ""
+"Devuelve un Array que contiene la lista de conexiones. Una conexión consiste "
+"en una estructura de la forma [code]{ from_port: 0, from: \"GraphNode name "
+"0\", to_port: 1, to: \"GraphNode name 1\" }[/code]."
#: doc/classes/GraphEdit.xml:90
msgid ""
@@ -24905,6 +30765,13 @@ msgid ""
"control and as such should not be freed. If you wish to hide this or any of "
"it's children use their [member CanvasItem.visible] property instead."
msgstr ""
+"Tiene el [HBoxContainer] que contiene los controles de zoom y de cuadrícula "
+"en la parte superior izquierda del gráfico.\n"
+"Advertencia: El uso previsto de esta función es permitirle reposicionar o "
+"añadir sus propios controles personalizados al contenedor. Este es un "
+"control interno y como tal no debe ser liberado. Si desea ocultar este o "
+"cualquiera de sus hijos utilice su propiedad [member CanvasItem.visible] en "
+"su lugar."
#: doc/classes/GraphEdit.xml:106
msgid ""
@@ -24912,28 +30779,37 @@ msgid ""
"[code]from[/code] GraphNode is connected to the [code]to_port[/code] slot of "
"the [code]to[/code] GraphNode."
msgstr ""
+"Devuelve [code]true[/code] si la ranura [code]from_port[/code] del "
+"[code]from[/code] GraphNode está conectada a la ranura [code]to_port[/code] "
+"del [code]to[/code] GraphNode."
#: doc/classes/GraphEdit.xml:117
msgid "Returns whether it's possible to connect slots of the specified types."
-msgstr ""
+msgstr "Devuelve si es posible conectar ranuras de los tipos especificados."
#: doc/classes/GraphEdit.xml:128
msgid ""
"Makes it not possible to connect between two different slot types. The type "
"is defined with the [method GraphNode.set_slot] method."
msgstr ""
+"No es posible conectar entre dos tipos de ranuras diferentes. El tipo se "
+"define con el método [method GraphNode.set_slot]."
#: doc/classes/GraphEdit.xml:137
msgid ""
"Removes the possibility to disconnect nodes when dragging from the slot at "
"the left if it has the specified type."
msgstr ""
+"Elimina la posibilidad de desconectar los nodos al arrastrarlos de la ranura "
+"de la izquierda si tiene el tipo especificado."
#: doc/classes/GraphEdit.xml:146
msgid ""
"Removes the possibility to disconnect nodes when dragging from the slot at "
"the right if it has the specified type."
msgstr ""
+"Elimina la posibilidad de desconectar los nodos al arrastrarlos de la ranura "
+"de la derecha si tiene el tipo especificado."
#: doc/classes/GraphEdit.xml:163
msgid ""
@@ -24941,46 +30817,53 @@ msgid ""
"[code]from_port[/code] and [code]to[/code]'s [code]to_port[/code] with the "
"color provided in the [code]activity[/code] theme property."
msgstr ""
+"Establece la coloración de la conexión entre [code]from[/code]'s "
+"[code]from_port[/code] y [code]to[/code]'s [code]to_port[/code] con el color "
+"proporcionado en la propiedad del tema [code]activity[/code]."
#: doc/classes/GraphEdit.xml:172
msgid "Sets the specified [code]node[/code] as the one selected."
-msgstr ""
+msgstr "Establece el [code]nodo[/code] especificado como el seleccionado."
#: doc/classes/GraphEdit.xml:180
msgid ""
"If [code]true[/code], enables disconnection of existing connections in the "
"GraphEdit by dragging the right end."
msgstr ""
+"Si [code]true[/code], permite la desconexión de las conexiones existentes en "
+"el GraphEdit arrastrando el extremo derecho."
#: doc/classes/GraphEdit.xml:183
msgid "The scroll offset."
-msgstr ""
+msgstr "El desplazamiento del scroll."
#: doc/classes/GraphEdit.xml:186
msgid "The snapping distance in pixels."
-msgstr ""
+msgstr "La distancia de snapping en pixeles."
#: doc/classes/GraphEdit.xml:189
msgid "If [code]true[/code], enables snapping."
-msgstr ""
+msgstr "Si [code]true[/code], habilita el snapping."
#: doc/classes/GraphEdit.xml:192
msgid "The current zoom value."
-msgstr ""
+msgstr "El valor de zoom actual."
#: doc/classes/GraphEdit.xml:198
msgid "Emitted at the beginning of a GraphNode movement."
-msgstr ""
+msgstr "Emitido al principio de un movimiento de GraphNode."
#: doc/classes/GraphEdit.xml:203
msgid "Emitted at the end of a GraphNode movement."
-msgstr ""
+msgstr "Emitido al principio de un GraphNode."
#: doc/classes/GraphEdit.xml:214
msgid ""
"Emitted when user dragging connection from input port into empty space of "
"the graph."
msgstr ""
+"Emitido cuando el usuario arrastra la conexión del puerto de entrada al "
+"espacio vacío del gráfico."
#: doc/classes/GraphEdit.xml:227
msgid ""
@@ -24988,20 +30871,25 @@ msgid ""
"code] slot of the [code]from[/code] GraphNode and the [code]to_slot[/code] "
"slot of the [code]to[/code] GraphNode is attempted to be created."
msgstr ""
+"Emitido al GraphEdit cuando se intenta crear la conexión entre la ranura "
+"[code]from_slot[/code] del [code]from[/code] GraphNode y la ranura "
+"[code]to_slot[/code] del [code]to[/code] GraphNode."
#: doc/classes/GraphEdit.xml:238
msgid ""
"Emitted when user dragging connection from output port into empty space of "
"the graph."
msgstr ""
+"Emitido cuando el usuario arrastra la conexión del puerto de salida al "
+"espacio vacío del gráfico."
#: doc/classes/GraphEdit.xml:243
msgid "Emitted when the user presses [kbd]Ctrl + C[/kbd]."
-msgstr ""
+msgstr "Se emite cuando el usuario pulsa [kbd]Ctrl + C[/kbd]."
#: doc/classes/GraphEdit.xml:248
msgid "Emitted when a GraphNode is attempted to be removed from the GraphEdit."
-msgstr ""
+msgstr "Emitido cuando se intenta eliminar un GraphNode del GraphEdit."
#: doc/classes/GraphEdit.xml:261
msgid ""
@@ -25009,19 +30897,22 @@ msgid ""
"slot of [code]from[/code] GraphNode and [code]to_slot[/code] slot of "
"[code]to[/code] GraphNode is attempted to be removed."
msgstr ""
+"Emitido al GraphEdit cuando se intenta eliminar la conexión entre la ranura "
+"[code]from_slot[/code] de [code]from[/code] GraphNode y la ranura "
+"[code]to_slot[/code] de [code]to[/code] GraphNode."
#: doc/classes/GraphEdit.xml:266
msgid ""
"Emitted when a GraphNode is attempted to be duplicated in the GraphEdit."
-msgstr ""
+msgstr "Emitido cuando se intenta duplicar un GraphNode en el GraphEdit."
#: doc/classes/GraphEdit.xml:273
msgid "Emitted when a GraphNode is selected."
-msgstr ""
+msgstr "Emitido cuando se selecciona un GraphNode."
#: doc/classes/GraphEdit.xml:284
msgid "Emitted when the user presses [kbd]Ctrl + V[/kbd]."
-msgstr ""
+msgstr "Se emite cuando el usuario pulsa [kbd]Ctrl + V[/kbd]."
#: doc/classes/GraphEdit.xml:291
msgid ""
@@ -25029,57 +30920,66 @@ msgid ""
"GraphEdit. [code]position[/code] is the position of the mouse pointer when "
"the signal is sent."
msgstr ""
+"Emitido cuando se solicita un popup. Ocurre al hacer clic con el botón "
+"derecho del ratón en el GraphEdit. [code]position[/code] es la posición del "
+"puntero del ratón cuando se envía la señal."
#: doc/classes/GraphEdit.xml:298
msgid ""
"Emitted when the scroll offset is changed by the user. It will not be "
"emitted when changed in code."
msgstr ""
+"Emitido cuando el desplazamiento de la pantalla es cambiado por el usuario. "
+"No se emitirá cuando se cambie el código."
#: doc/classes/GraphEdit.xml:312
msgid "The background drawn under the grid."
-msgstr ""
+msgstr "El fondo dibujado bajo la cuadrícula."
#: doc/classes/GraphEdit.xml:315
msgid "Color of major grid lines."
-msgstr ""
+msgstr "El color de las principales líneas de la cuadrícula."
#: doc/classes/GraphEdit.xml:318
msgid "Color of minor grid lines."
-msgstr ""
+msgstr "El color de las líneas de la cuadrícula menor."
#: doc/classes/GraphEdit.xml:321
msgid "The icon for the zoom out button."
-msgstr ""
+msgstr "El icono para el botón de alejamiento del zoom."
#: doc/classes/GraphEdit.xml:324
msgid "The icon for the zoom in button."
-msgstr ""
+msgstr "El icono para el botón de acercamiento del zoom."
#: doc/classes/GraphEdit.xml:327
msgid ""
"The horizontal range within which a port can be grabbed (on both sides)."
msgstr ""
+"El rango horizontal dentro del cual se puede agarrar un puerto (en ambos "
+"lados)."
#: doc/classes/GraphEdit.xml:330
msgid "The vertical range within which a port can be grabbed (on both sides)."
msgstr ""
+"El rango vertical dentro del cual se puede agarrar un puerto (en ambos "
+"lados)."
#: doc/classes/GraphEdit.xml:333
msgid "The icon for the zoom reset button."
-msgstr ""
+msgstr "El icono del botón de reinicio del zoom."
#: doc/classes/GraphEdit.xml:336
msgid "The fill color of the selection rectangle."
-msgstr ""
+msgstr "El color de relleno del rectángulo de selección."
#: doc/classes/GraphEdit.xml:339
msgid "The outline color of the selection rectangle."
-msgstr ""
+msgstr "El color del contorno del rectángulo de selección."
#: doc/classes/GraphEdit.xml:342
msgid "The icon for the snap toggle button."
-msgstr ""
+msgstr "El icono para el botón de conmutado de encaje."
#: doc/classes/GraphNode.xml:4
msgid ""
@@ -25087,6 +30987,9 @@ msgid ""
"allowing connections between GraphNodes. Slots can have different, "
"incompatible types."
msgstr ""
+"Un GraphNode es un contenedor con potencialmente varias ranuras de entrada y "
+"salida que permiten conexiones entre los GraphNodes. Las ranuras pueden "
+"tener tipos diferentes e incompatibles."
#: doc/classes/GraphNode.xml:7
msgid ""
@@ -25107,76 +31010,108 @@ msgid ""
"are on the right side of GraphNode. Only enabled slots are counted as "
"connections."
msgstr ""
+"Un GraphNode es un contenedor. Cada GraphNode puede tener varias ranuras de "
+"entrada y salida, a veces denominadas puertos, que permiten conexiones entre "
+"los GraphNodes. Para agregar una ranura a un GraphNode, agrega cualquier "
+"nodo hijo derivado de [Control].\n"
+"Después de añadir al menos un hijo a GraphNode se crearán automáticamente "
+"nuevas secciones en el Inspector llamadas 'Slot'. Cuando \"Slot\" se "
+"expande, verás una lista con el número de índice de cada slot. Puedes hacer "
+"clic en cada uno de ellos para expandirlos más.\n"
+"En el Inspector puedes habilitar (mostrar) o deshabilitar (ocultar) los "
+"slots. Por defecto todos los slots están deshabilitados, por lo que es "
+"posible que no veas ningún slot en tu GraphNode inicialmente. Puedes asignar "
+"un tipo a cada ranura. Sólo las ranuras del mismo tipo podrán conectarse "
+"entre sí. También puedes asignar colores a las ranuras. Se define una tupla "
+"de ranuras de entrada y salida para cada elemento GUI incluido en el "
+"GraphNode. Las conexiones de entrada están a la izquierda y las de salida a "
+"la derecha de GraphNode. Sólo las ranuras habilitadas se cuentan como "
+"conexiones."
#: doc/classes/GraphNode.xml:18
msgid "Disables all input and output slots of the GraphNode."
-msgstr ""
+msgstr "Deshabilita todas las ranuras de entrada y salida del GraphNode."
#: doc/classes/GraphNode.xml:27
msgid "Disables input and output slot whose index is [code]idx[/code]."
msgstr ""
+"Desactiva la ranura de entrada y salida cuyo índice es [code]idx[/code]."
#: doc/classes/GraphNode.xml:36
msgid "Returns the color of the input connection [code]idx[/code]."
-msgstr ""
+msgstr "Devuelve el color de la conexión de entrada [code]idx[/code]."
#: doc/classes/GraphNode.xml:43
msgid ""
"Returns the number of enabled input slots (connections) to the GraphNode."
msgstr ""
+"Devuelve el número de ranuras de entrada (conexiones) habilitadas al "
+"GraphNode."
#: doc/classes/GraphNode.xml:52
msgid "Returns the position of the input connection [code]idx[/code]."
-msgstr ""
+msgstr "Devuelve la posición de la conexión de entrada [code]idx[/code]."
#: doc/classes/GraphNode.xml:61
msgid "Returns the type of the input connection [code]idx[/code]."
-msgstr ""
+msgstr "Devuelve el tipo de la conexión de entrada [code]idx[/code]."
#: doc/classes/GraphNode.xml:70
msgid "Returns the color of the output connection [code]idx[/code]."
-msgstr ""
+msgstr "Devuelve el color de la conexión de salida [code]idx[/code]."
#: doc/classes/GraphNode.xml:77
msgid ""
"Returns the number of enabled output slots (connections) of the GraphNode."
msgstr ""
+"Devuelve el número de ranuras de salida (conexiones) habilitadas del "
+"GraphNode."
#: doc/classes/GraphNode.xml:86
msgid "Returns the position of the output connection [code]idx[/code]."
-msgstr ""
+msgstr "Devuelve la posición de la conexión de salida [code]idx[/code]."
#: doc/classes/GraphNode.xml:95
msgid "Returns the type of the output connection [code]idx[/code]."
-msgstr ""
+msgstr "Devuelve el tipo de la conexión de salida [code]idx[/code]."
#: doc/classes/GraphNode.xml:104
msgid "Returns the color set to [code]idx[/code] left (input) slot."
msgstr ""
+"Devuelve el color colocado a [code]idx[/code] en la ranura (de entrada) "
+"izquierda."
#: doc/classes/GraphNode.xml:113
msgid "Returns the color set to [code]idx[/code] right (output) slot."
msgstr ""
+"Devuelve el color fijado en la ranura derecha (de salida) de [code]idx[/"
+"code]."
#: doc/classes/GraphNode.xml:122
msgid "Returns the (integer) type of left (input) [code]idx[/code] slot."
msgstr ""
+"Devuelve el tipo (entero) de la ranura izquierda (entrada) [code]idx[/code]."
#: doc/classes/GraphNode.xml:131
msgid "Returns the (integer) type of right (output) [code]idx[/code] slot."
msgstr ""
+"Devuelve el tipo (entero) de la ranura derecha (salida) [code]idx[/code]."
#: doc/classes/GraphNode.xml:140
msgid ""
"Returns [code]true[/code] if left (input) slot [code]idx[/code] is enabled, "
"[code]false[/code] otherwise."
msgstr ""
+"Devuelve [code]true[/code] si la ranura (de entrada) izquierda [code]idx[/"
+"code] está activada, [code]false[/code] en caso contrario."
#: doc/classes/GraphNode.xml:149
msgid ""
"Returns [code]true[/code] if right (output) slot [code]idx[/code] is "
"enabled, [code]false[/code] otherwise."
msgstr ""
+"Devuelve [code]true[/code] si la ranura derecha (de salida) [code]idx[/code] "
+"está activada, [code]false[/code] en caso contrario."
#: doc/classes/GraphNode.xml:174
msgid ""
@@ -25192,10 +31127,21 @@ msgid ""
"[b]Note:[/b] This method only sets properties of the slot. To create the "
"slot, add a [Control]-derived child to the GraphNode."
msgstr ""
+"Establece las propiedades de la ranura con ID [code]idx[/code].\n"
+"Si [code]enable_left[/code]/[code]right[/code], aparecerá un puerto y la "
+"ranura podrá conectarse desde este lado.\n"
+"[code]type_left[/code]/[code]right[/code] es un tipo arbitrario de puerto. "
+"Sólo se pueden conectar puertos con los mismos valores de tipo.\n"
+"[code]color_left[/code]/[code]right[/code] es el matiz del icono del puerto "
+"en este lado.\n"
+"[code]custom_left[/code]/[code]right[/code] es una textura personalizada "
+"para el puerto de este lado.\n"
+"[b]Nota:[/b] Este método sólo establece las propiedades de la ranura. Para "
+"crear el slot, añade un hijo derivado de [Control] al GraphNode."
#: doc/classes/GraphNode.xml:185
msgid "If [code]true[/code], the GraphNode is a comment node."
-msgstr ""
+msgstr "Si [code]true[/code], el GraphNode es un nodo de comentario."
#: doc/classes/GraphNode.xml:189
msgid ""
@@ -25204,10 +31150,16 @@ msgid ""
"[b]Note:[/b] You cannot use position directly, as [GraphEdit] is a "
"[Container]."
msgstr ""
+"El desplazamiento del GraphNode, relativo al desplazamiento del "
+"[GraphEdit].\n"
+"[b]Nota:[/b] No puedes usar la posición directamente, ya que [GraphEdit] es "
+"un [Container]."
#: doc/classes/GraphNode.xml:193
msgid "Sets the overlay shown above the GraphNode. See [enum Overlay]."
msgstr ""
+"Establece la superposición que se muestra sobre el GraphNode. Ver [enum "
+"Overlay]."
#: doc/classes/GraphNode.xml:196
msgid ""
@@ -25215,10 +31167,13 @@ msgid ""
"[b]Note:[/b] Dragging the handle will only emit the [signal resize_request] "
"signal, the GraphNode needs to be resized manually."
msgstr ""
+"Si [code]true[/code], el usuario puede cambiar el tamaño del GraphNode.\n"
+"[b]Nota:[/b] Arrastrando el manejador sólo se emitirá la señal [signal "
+"resize_request], el GraphNode necesita ser redimensionado manualmente."
#: doc/classes/GraphNode.xml:200
msgid "If [code]true[/code], the GraphNode is selected."
-msgstr ""
+msgstr "Si [code]true[/code], se selecciona el GraphNode."
#: doc/classes/GraphNode.xml:203
msgid ""
@@ -25226,127 +31181,151 @@ msgid ""
"[b]Note:[/b] Pressing it will only emit the [signal close_request] signal, "
"the GraphNode needs to be removed manually."
msgstr ""
+"Si [code]true[/code], el botón de cerrado será visible.\n"
+"[b]Nota:[/b] Al pulsarlo sólo se emitirá la señal [signal close_request], el "
+"GraphNode debe ser eliminado manualmente."
#: doc/classes/GraphNode.xml:207
msgid "The text displayed in the GraphNode's title bar."
-msgstr ""
+msgstr "El texto que se muestra en la barra de título del GraphNode."
#: doc/classes/GraphNode.xml:213
msgid ""
"Emitted when the GraphNode is requested to be closed. Happens on clicking "
"the close button (see [member show_close])."
msgstr ""
+"Emitido cuando se solicita el cierre del GraphNode. Ocurre al hacer clic en "
+"el botón de cierre (ver [member show_close])."
#: doc/classes/GraphNode.xml:222
msgid "Emitted when the GraphNode is dragged."
-msgstr ""
+msgstr "Se emite cuando se arrastra el GraphNode."
#: doc/classes/GraphNode.xml:227
msgid "Emitted when the GraphNode is moved."
-msgstr ""
+msgstr "Emitido cuando se mueve el GraphNode."
#: doc/classes/GraphNode.xml:232
msgid ""
"Emitted when the GraphNode is requested to be displayed over other ones. "
"Happens on focusing (clicking into) the GraphNode."
msgstr ""
+"Emitido cuando se solicita que el GraphNode se muestre sobre otros. Ocurre "
+"al enfocar (hacer clic en) el GraphNode."
#: doc/classes/GraphNode.xml:239
msgid ""
"Emitted when the GraphNode is requested to be resized. Happens on dragging "
"the resizer handle (see [member resizable])."
msgstr ""
+"Emitido cuando se pide que el GraphNode sea redimensionado. Ocurre al "
+"arrastrar el mango de redimensionamiento (ver [member resizable])."
#: doc/classes/GraphNode.xml:245
msgid "No overlay is shown."
-msgstr ""
+msgstr "No se muestra ninguna capa superpuesta."
#: doc/classes/GraphNode.xml:248
msgid "Show overlay set in the [code]breakpoint[/code] theme property."
msgstr ""
+"Muestra la capa superpuesta establecida en la propiedad del tema "
+"[code]breakpoint[/code]."
#: doc/classes/GraphNode.xml:251
msgid "Show overlay set in the [code]position[/code] theme property."
msgstr ""
+"Muestra la capa superpuesta establecida en la propiedad del tema "
+"[code]position[/code]."
#: doc/classes/GraphNode.xml:256
msgid ""
"The background used when [member overlay] is set to [constant "
"OVERLAY_BREAKPOINT]."
msgstr ""
+"El fondo utilizado cuando [member overlay] se establece en [constant "
+"OVERLAY_BREAKPOINT]."
#: doc/classes/GraphNode.xml:259
msgid ""
"The icon for the close button, visible when [member show_close] is enabled."
msgstr ""
+"El icono del botón de cierre, visible cuando [member show_close] está "
+"activado."
#: doc/classes/GraphNode.xml:262
msgid "The color modulation applied to the close button icon."
-msgstr ""
+msgstr "La modulación de color aplicada al icono del botón de cierre."
#: doc/classes/GraphNode.xml:265
msgid "The vertical offset of the close button."
-msgstr ""
+msgstr "El desplazamiento vertical del botón de cierre."
#: doc/classes/GraphNode.xml:268
msgid "The [StyleBox] used when [member comment] is enabled."
-msgstr ""
+msgstr "El [StyleBox] utilizado cuando el [member comment] está activado."
#: doc/classes/GraphNode.xml:271
msgid ""
"The [StyleBox] used when [member comment] is enabled and the [GraphNode] is "
"focused."
msgstr ""
+"El [StyleBox] utilizado cuando el [member comment] está habilitado y el "
+"[GraphNode] está enfocado."
#: doc/classes/GraphNode.xml:278
msgid "The default background for [GraphNode]."
-msgstr ""
+msgstr "El fondo por defecto para [GraphNode]."
#: doc/classes/GraphNode.xml:281
msgid "The icon used for representing ports."
-msgstr ""
+msgstr "El icono utilizado para representar los puertos."
#: doc/classes/GraphNode.xml:284
msgid "Horizontal offset for the ports."
-msgstr ""
+msgstr "Desplazamiento horizontal de los puertos."
#: doc/classes/GraphNode.xml:287
msgid ""
"The background used when [member overlay] is set to [constant "
"OVERLAY_POSITION]."
msgstr ""
+"El fondo utilizado cuando [member overlay] se establece en [constant "
+"OVERLAY_POSITION]."
#: doc/classes/GraphNode.xml:290
msgid "The icon used for resizer, visible when [member resizable] is enabled."
msgstr ""
+"El icono utilizado para el redimensionamiento, visible cuando está activado "
+"el [member resizable]."
#: doc/classes/GraphNode.xml:293
msgid "The color modulation applied to the resizer icon."
-msgstr ""
+msgstr "La modulación de color aplicada al icono de redimensionamiento."
#: doc/classes/GraphNode.xml:296
msgid "The background used when the [GraphNode] is selected."
-msgstr ""
+msgstr "El fondo utilizado cuando se selecciona el [GraphNode]."
#: doc/classes/GraphNode.xml:299
msgid "The vertical distance between ports."
-msgstr ""
+msgstr "La distancia vertical entre los puertos."
#: doc/classes/GraphNode.xml:302
msgid "Color of the title text."
-msgstr ""
+msgstr "El color del texto del título."
#: doc/classes/GraphNode.xml:305
msgid "Font used for the title text."
-msgstr ""
+msgstr "Fuente usada para el texto del título."
#: doc/classes/GraphNode.xml:308
msgid "Vertical offset of the title text."
-msgstr ""
+msgstr "Desplazamiento vertical del texto del título."
#: doc/classes/GridContainer.xml:4
msgid "Grid container used to arrange elements in a grid like layout."
msgstr ""
+"Contenedor de rejilla utilizado para organizar los elementos en una rejilla."
#: doc/classes/GridContainer.xml:7
msgid ""
@@ -25358,24 +31337,34 @@ msgid ""
"Notice that grid layout will preserve the columns and rows for every size of "
"the container, and that empty columns will be expanded automatically."
msgstr ""
+"El contenedor de la cuadrícula dispondrá sus hijos en una estructura similar "
+"a una cuadrícula, las columnas de la cuadrícula se especifican utilizando la "
+"propiedad [member columns] y el número de filas será igual al número de "
+"hijos del contenedor dividido por el número de columnas. Por ejemplo, si el "
+"contenedor tiene 5 hijos y 2 columnas, habrá 3 filas en el contenedor.\n"
+"Obsérvese que la disposición en cuadrícula preservará las columnas y filas "
+"para cada tamaño del contenedor, y que las columnas vacías se expandirán "
+"automáticamente."
#: doc/classes/GridContainer.xml:16
msgid ""
"The number of columns in the [GridContainer]. If modified, [GridContainer] "
"reorders its children to accommodate the new layout."
msgstr ""
+"El número de columnas en el [GridContainer]. Si se modifica, el "
+"[GridContainer] reordena sus hijos para acomodar el nuevo diseño."
#: doc/classes/GridContainer.xml:23
msgid "The horizontal separation of children nodes."
-msgstr ""
+msgstr "La separación horizontal de los nodos de los niños."
#: doc/classes/GridContainer.xml:26
msgid "The vertical separation of children nodes."
-msgstr ""
+msgstr "La separación vertical de los nodos de los hijos."
#: modules/gridmap/doc_classes/GridMap.xml:4
msgid "Node for 3D tile-based maps."
-msgstr ""
+msgstr "Nodo para mapas en 3D basados en tiles."
#: modules/gridmap/doc_classes/GridMap.xml:7
msgid ""
@@ -25390,144 +31379,199 @@ msgid ""
"efficient rendering and physics processing. Every octant has the same "
"dimensions and can contain several cells."
msgstr ""
+"GridMap te permite colocar mallas en una cuadrícula de forma interactiva. "
+"Funciona tanto desde el editor como desde los scripts, que pueden ayudarte a "
+"crear editores de nivel de juego.\n"
+"GridMaps utiliza una [MeshLibrary] que contiene una lista de mallas. Cada "
+"tile es una malla con materiales y formas de colisión y navegación "
+"opcionales.\n"
+"Un GridMap contiene una colección de celdas. Cada celda de la cuadrícula se "
+"refiere a un tile de la [MeshLibrary]. Todas las celdas del mapa tienen las "
+"mismas dimensiones.\n"
+"Internamente, un GridMap se divide en una colección dispersa de octantes "
+"para una representación eficiente y un procesamiento físico. Cada octante "
+"tiene las mismas dimensiones y puede contener varias células."
#: modules/gridmap/doc_classes/GridMap.xml:13
msgid "https://docs.godotengine.org/en/latest/tutorials/3d/using_gridmaps.html"
msgstr ""
+"https://docs.godotengine.org/es/latest/tutorials/3d/using_gridmaps.html"
#: modules/gridmap/doc_classes/GridMap.xml:20
msgid "Clear all cells."
-msgstr ""
+msgstr "Despeja todas las celdas."
-#: modules/gridmap/doc_classes/GridMap.xml:53
+#: modules/gridmap/doc_classes/GridMap.xml:49
+#, fuzzy
msgid ""
-"The [MeshLibrary] item index located at the grid-based X, Y and Z "
-"coordinates. If the cell is empty, [constant INVALID_CELL_ITEM] will be "
-"returned."
+"The [MeshLibrary] item index located at the given grid coordinates. If the "
+"cell is empty, [constant INVALID_CELL_ITEM] will be returned."
msgstr ""
+"El índice de elementos [MeshLibrary] situado en las coordenadas X, Y y Z de "
+"la cuadrícula. Si la celda está vacía, se devolverá [constant "
+"INVALID_CELL_ITEM]."
-#: modules/gridmap/doc_classes/GridMap.xml:66
+#: modules/gridmap/doc_classes/GridMap.xml:58
+#, fuzzy
msgid ""
-"The orientation of the cell at the grid-based X, Y and Z coordinates. -1 is "
-"returned if the cell is empty."
+"The orientation of the cell at the given grid coordinates. [code]-1[/code] "
+"is returned if the cell is empty."
msgstr ""
+"La orientación de la celda en las coordenadas X, Y y Z de la cuadrícula. Se "
+"devuelve -1 si la celda está vacía."
-#: modules/gridmap/doc_classes/GridMap.xml:75 doc/classes/PhysicsBody2D.xml:35
+#: modules/gridmap/doc_classes/GridMap.xml:67 doc/classes/PhysicsBody2D.xml:35
#: doc/classes/PhysicsBody3D.xml:35
msgid "Returns an individual bit on the [member collision_layer]."
-msgstr ""
+msgstr "Devuelve un bit individual en el [member collision_layer]."
-#: modules/gridmap/doc_classes/GridMap.xml:84 doc/classes/PhysicsBody2D.xml:44
+#: modules/gridmap/doc_classes/GridMap.xml:76 doc/classes/PhysicsBody2D.xml:44
#: doc/classes/PhysicsBody3D.xml:44
msgid "Returns an individual bit on the [member collision_mask]."
-msgstr ""
+msgstr "Devuelve un bit individual en la [member collision_mask]."
-#: modules/gridmap/doc_classes/GridMap.xml:91
+#: modules/gridmap/doc_classes/GridMap.xml:83
msgid ""
"Returns an array of [Transform] and [Mesh] references corresponding to the "
"non-empty cells in the grid. The transforms are specified in world space."
msgstr ""
+"Devuelve un array referencias de [Transform] y [Mesh] correspondientes a las "
+"celdas no vacías de la cuadrícula. Las transformaciones se especifican en el "
+"espacio del mundo."
-#: modules/gridmap/doc_classes/GridMap.xml:98
+#: modules/gridmap/doc_classes/GridMap.xml:90
msgid ""
"Returns an array of [Vector3] with the non-empty cell coordinates in the "
"grid map."
msgstr ""
+"Devuelve un array de [Vector3] con las coordenadas de la celda no vacía en "
+"el mapa de la cuadrícula."
-#: modules/gridmap/doc_classes/GridMap.xml:121
+#: modules/gridmap/doc_classes/GridMap.xml:109
msgid ""
"Returns the position of a grid cell in the GridMap's local coordinate space."
msgstr ""
+"Devuelve la posición de una celda de la cuadrícula en el espacio de "
+"coordenadas locales del mapa de la cuadrícula."
-#: modules/gridmap/doc_classes/GridMap.xml:146
+#: modules/gridmap/doc_classes/GridMap.xml:130
+#, fuzzy
msgid ""
-"Sets the mesh index for the cell referenced by its grid-based X, Y and Z "
-"coordinates.\n"
+"Sets the mesh index for the cell referenced by its grid coordinates.\n"
"A negative item index such as [constant INVALID_CELL_ITEM] will clear the "
"cell.\n"
"Optionally, the item's orientation can be passed. For valid orientation "
"values, see [method Basis.get_orthogonal_index]."
msgstr ""
+"Establece el índice de malla para la celda referenciada por sus coordenadas "
+"X, Y y Z.\n"
+"Un índice de ítem negativo como [constant INVALID_CELL_ITEM] borrará la "
+"celda.\n"
+"Opcionalmente, se puede pasar la orientación del ítem. Para valores de "
+"orientación válidos, ver [method Basis.get_orthogonal_index]."
-#: modules/gridmap/doc_classes/GridMap.xml:173
+#: modules/gridmap/doc_classes/GridMap.xml:157
msgid "Sets an individual bit on the [member collision_layer]."
-msgstr ""
+msgstr "Establece un bit individual en el [member collision_layer]."
-#: modules/gridmap/doc_classes/GridMap.xml:184
+#: modules/gridmap/doc_classes/GridMap.xml:168
msgid "Sets an individual bit on the [member collision_mask]."
-msgstr ""
+msgstr "Establece un bit individual en la [member collision_mask]."
-#: modules/gridmap/doc_classes/GridMap.xml:193
+#: modules/gridmap/doc_classes/GridMap.xml:177
msgid ""
"Returns the coordinates of the grid cell containing the given point.\n"
"[code]pos[/code] should be in the GridMap's local coordinate space."
msgstr ""
+"Devuelve las coordenadas de la celda de la cuadrícula que contiene el punto "
+"dado.\n"
+"[code]pos[/code] debería estar en el espacio de coordenadas locales del "
+"GridMap."
-#: modules/gridmap/doc_classes/GridMap.xml:200
+#: modules/gridmap/doc_classes/GridMap.xml:184
msgid "If [code]true[/code], grid items are centered on the X axis."
msgstr ""
+"Si [code]true[/code], los elementos de la cuadrícula se centran en el eje X."
-#: modules/gridmap/doc_classes/GridMap.xml:203
+#: modules/gridmap/doc_classes/GridMap.xml:187
msgid "If [code]true[/code], grid items are centered on the Y axis."
msgstr ""
+"Si [code]true[/code], los elementos de la cuadrícula se centran en el eje Y."
-#: modules/gridmap/doc_classes/GridMap.xml:206
+#: modules/gridmap/doc_classes/GridMap.xml:190
msgid "If [code]true[/code], grid items are centered on the Z axis."
msgstr ""
+"Si [code]true[/code], los elementos de la cuadrícula se centran en el eje Z."
-#: modules/gridmap/doc_classes/GridMap.xml:209
+#: modules/gridmap/doc_classes/GridMap.xml:193
msgid ""
"The size of each octant measured in number of cells. This applies to all "
"three axis."
msgstr ""
+"El tamaño de cada octante medido en número de celdas. Esto se aplica a los "
+"tres ejes."
-#: modules/gridmap/doc_classes/GridMap.xml:212
+#: modules/gridmap/doc_classes/GridMap.xml:196
msgid ""
"The scale of the cell items.\n"
"This does not affect the size of the grid cells themselves, only the items "
"in them. This can be used to make cell items overlap their neighbors."
msgstr ""
+"La escala de los elementos de celda.\n"
+"Esto no afecta al tamaño de las celdas de la cuadrícula en sí, sólo a los "
+"ítems en ellas. Esto puede ser usado para hacer que los elementos de la "
+"celda se superpongan a sus vecinos."
-#: modules/gridmap/doc_classes/GridMap.xml:216
+#: modules/gridmap/doc_classes/GridMap.xml:200
msgid ""
"The dimensions of the grid's cells.\n"
"This does not affect the size of the meshes. See [member cell_scale]."
msgstr ""
+"Las dimensiones de las celdas de rejilla.\n"
+"Esto no afecta al tamaño de las mallas. Ver [member cell_scale]."
-#: modules/gridmap/doc_classes/GridMap.xml:220
+#: modules/gridmap/doc_classes/GridMap.xml:204
msgid ""
"The physics layers this GridMap is in.\n"
"GridMaps act as static bodies, meaning they aren't affected by gravity or "
"other forces. They only affect other physics bodies that collide with them."
msgstr ""
+"Las capas físicas en las que se encuentra este GridMap.\n"
+"Los GridMaps actúan como cuerpos estáticos, lo que significa que no son "
+"afectados por la gravedad u otras fuerzas. Sólo afectan a otros cuerpos "
+"físicos que colisionan con ellos."
-#: modules/gridmap/doc_classes/GridMap.xml:224
+#: modules/gridmap/doc_classes/GridMap.xml:208
msgid "The physics layers this GridMap detects collisions in."
-msgstr ""
+msgstr "Las capas físicas en las que este GridMap detecta las colisiones."
-#: modules/gridmap/doc_classes/GridMap.xml:227
+#: modules/gridmap/doc_classes/GridMap.xml:211
msgid "The assigned [MeshLibrary]."
-msgstr ""
+msgstr "La [MeshLibrary] asignada."
-#: modules/gridmap/doc_classes/GridMap.xml:235
+#: modules/gridmap/doc_classes/GridMap.xml:219
msgid "Emitted when [member cell_size] changes."
-msgstr ""
+msgstr "Emitido cuando [member cell_size] cambia."
-#: modules/gridmap/doc_classes/GridMap.xml:241
+#: modules/gridmap/doc_classes/GridMap.xml:225
msgid ""
"Invalid cell item that can be used in [method set_cell_item] to clear cells "
"(or represent an empty cell in [method get_cell_item])."
msgstr ""
+"Elemento celular inválido que puede ser usado en [method set_cell_item] para "
+"borrar células (o representar una célula vacía en [method get_cell_item])."
#: doc/classes/GrooveJoint2D.xml:4
msgid "Groove constraint for 2D physics."
-msgstr ""
+msgstr "Restricción de ranura para la física 2D."
#: doc/classes/GrooveJoint2D.xml:7
msgid ""
"Groove constraint for 2D physics. This is useful for making a body \"slide\" "
"through a segment placed in another."
msgstr ""
+"Restricción de surcos para la física 2D. Esto es útil para hacer que un "
+"cuerpo se \"deslice\" a través de un segmento colocado en otro."
#: doc/classes/GrooveJoint2D.xml:15
msgid ""
@@ -25535,16 +31579,22 @@ msgid ""
"local offset [member initial_offset] along the joint's Y axis (along the "
"groove)."
msgstr ""
+"La posición de anclaje inicial del cuerpo B definida por el origen de la "
+"junta y un desplazamiento local [member initial_offset] a lo largo del eje Y "
+"de la junta (a lo largo de la ranura)."
#: doc/classes/GrooveJoint2D.xml:18
msgid ""
"The groove's length. The groove is from the joint's origin towards [member "
"length] along the joint's local Y axis."
msgstr ""
+"La longitud del surco. La ranura va desde el origen de la unión hacia "
+"[member length] a lo largo del eje Y local de la unión."
#: doc/classes/HashingContext.xml:4
msgid "Context to compute cryptographic hashes over multiple iterations."
msgstr ""
+"Contexto para calcular los hashes criptográficos en múltiples iteraciones."
#: doc/classes/HashingContext.xml:7
msgid ""
@@ -25576,99 +31626,139 @@ msgid ""
"[/codeblock]\n"
"[b]Note:[/b] Not available in HTML5 exports."
msgstr ""
+"La clase HashingContext proporciona una interfaz para computar hashes "
+"criptográficos en múltiples iteraciones. Esto es útil, por ejemplo, cuando "
+"se calculan hashes de archivos grandes (para no tener que cargarlos todos en "
+"la memoria), flujos de red y flujos de datos en general (para no tener que "
+"mantener búferes).\n"
+"El [enum HashType] enum muestra los algoritmos de hash soportados.\n"
+"[codeblock]\n"
+"const TAMANO_PORCION = 1024\n"
+"\n"
+"func hash_archivo(ruta):\n"
+" var contexto = HashingContext.new()\n"
+" var archivo = File.new()\n"
+" # Empieza un contexto SHA-256\n"
+" contexto.start(HashingContext.HASH_SHA256)\n"
+" # Comprueba que el archivo existe.\n"
+" if not archivo.file_exists(ruta):\n"
+" return\n"
+" # Abre el archivo a hashear.\n"
+" archivo.open(ruta, File.READ)\n"
+" # Actualiza el contexto despues de leer cada porción.\n"
+" while not archivo.eof_reached():\n"
+" contexto.update(file.get_buffer(TAMANO_PORCION))\n"
+" # Obtiene el hash computado.\n"
+" var resultado = contexto.finish()\n"
+" # Imprime el resultado como una string hexadecimal y array.\n"
+" printt(resultado.hex_encode(), Array(resultado))\n"
+"[/codeblock]\n"
+"[b]Nota:[/b] No disponible para exportar HTML5."
#: doc/classes/HashingContext.xml:39
msgid "Closes the current context, and return the computed hash."
-msgstr ""
+msgstr "Cierra el contexto actual, y devuelve el hash calculado."
#: doc/classes/HashingContext.xml:48
msgid ""
"Starts a new hash computation of the given [code]type[/code] (e.g. [constant "
"HASH_SHA256] to start computation of a SHA-256)."
msgstr ""
+"Inicia un nuevo cálculo de hash del [code]tipo[/code] dado (por ejemplo, "
+"[constant HASH_SHA256] para iniciar el cálculo de un SHA-256)."
#: doc/classes/HashingContext.xml:57
msgid "Updates the computation with the given [code]chunk[/code] of data."
-msgstr ""
+msgstr "Actualiza el cálculo con el [code]chunk[/code] de datos dado."
#: doc/classes/HashingContext.xml:63
msgid "Hashing algorithm: MD5."
-msgstr ""
+msgstr "Algoritmo de Hasheado: MD5."
#: doc/classes/HashingContext.xml:66
msgid "Hashing algorithm: SHA-1."
-msgstr ""
+msgstr "Algoritmo de Hasheado: SHA-1."
#: doc/classes/HashingContext.xml:69
msgid "Hashing algorithm: SHA-256."
-msgstr ""
+msgstr "Algoritmo de Hasheado: SHA-256."
#: doc/classes/HBoxContainer.xml:4
msgid "Horizontal box container."
-msgstr ""
+msgstr "Contenedor de caja horizontal."
#: doc/classes/HBoxContainer.xml:7
msgid "Horizontal box container. See [BoxContainer]."
-msgstr ""
+msgstr "Contenedor de caja horizontal. Véase [BoxContainer]."
#: doc/classes/HBoxContainer.xml:17
msgid "The horizontal space between the [HBoxContainer]'s elements."
-msgstr ""
+msgstr "El espacio horizontal entre los elementos del [HBoxContainer]."
#: doc/classes/HeightMapShape3D.xml:4
msgid "Height map shape for 3D physics (Bullet only)."
-msgstr ""
+msgstr "Forma de mapa de altura para la física en 3D (Sólo la bala)."
#: doc/classes/HeightMapShape3D.xml:7
msgid ""
"Height map shape resource, which can be added to a [PhysicsBody3D] or "
"[Area3D]."
msgstr ""
+"Recurso de forma de mapa de altura, que puede ser añadido a un "
+"[PhysicsBody3D] o [Area3D]."
#: doc/classes/HeightMapShape3D.xml:15
msgid ""
"Height map data, pool array must be of [member map_width] * [member "
"map_depth] size."
msgstr ""
+"El tamaño de los datos del mapa de altura , debe ser de tamaño [member "
+"map_width] * [member map_depth] ."
#: doc/classes/HeightMapShape3D.xml:18
msgid ""
"Depth of the height map data. Changing this will resize the [member "
"map_data]."
msgstr ""
+"Los datos del mapa de la altura. Si se cambia esto, se redimensionará el "
+"[member map_data]."
#: doc/classes/HeightMapShape3D.xml:21
msgid ""
"Width of the height map data. Changing this will resize the [member "
"map_data]."
msgstr ""
+"Ancho de los datos del mapa de altura. Si se cambia esto, se redimensionará "
+"el [member map_data]."
#: doc/classes/HingeJoint3D.xml:4
msgid "A hinge between two 3D bodies."
-msgstr ""
+msgstr "Una bisagra entre dos cuerpos 3D."
#: doc/classes/HingeJoint3D.xml:7
msgid ""
"A HingeJoint3D normally uses the Z axis of body A as the hinge axis, another "
"axis can be specified when adding it manually though."
msgstr ""
+"Un HingeJoint3D normalmente utiliza el eje Z del cuerpo A como eje de "
+"bisagra, aunque se puede especificar otro eje al añadirlo manualmente."
#: doc/classes/HingeJoint3D.xml:18 doc/classes/SpriteBase3D.xml:24
msgid "Returns the value of the specified flag."
-msgstr ""
+msgstr "Devuelve el valor de la flag especificada."
#: doc/classes/HingeJoint3D.xml:27 doc/classes/ParticlesMaterial.xml:29
#: doc/classes/PinJoint3D.xml:18
msgid "Returns the value of the specified parameter."
-msgstr ""
+msgstr "Devuelve el valor del parámetro especificado."
#: doc/classes/HingeJoint3D.xml:38
msgid "If [code]true[/code], enables the specified flag."
-msgstr ""
+msgstr "Si [code]true[/code], activa la flag especificada."
#: doc/classes/HingeJoint3D.xml:49 doc/classes/PinJoint3D.xml:29
msgid "Sets the value of the specified parameter."
-msgstr ""
+msgstr "Establece el valor del parámetro especificado."
#: doc/classes/HingeJoint3D.xml:55 doc/classes/HingeJoint3D.xml:95
#: doc/classes/PhysicsServer3D.xml:1301
@@ -25676,43 +31766,52 @@ msgid ""
"The speed with which the rotation across the axis perpendicular to the hinge "
"gets corrected."
msgstr ""
+"La velocidad con la que se corrige la rotación a través del eje "
+"perpendicular a la bisagra."
#: doc/classes/HingeJoint3D.xml:58 doc/classes/HingeJoint3D.xml:112
msgid ""
"If [code]true[/code], the hinges maximum and minimum rotation, defined by "
"[member angular_limit/lower] and [member angular_limit/upper] has effects."
msgstr ""
+"Si [code]true[/code], la rotación máxima y mínima de las bisagras, definida "
+"por [member angular_limit/lower] y [member angular_limit/upper] tiene "
+"efectos."
#: doc/classes/HingeJoint3D.xml:61 doc/classes/HingeJoint3D.xml:92
msgid ""
"The minimum rotation. Only active if [member angular_limit/enable] is "
"[code]true[/code]."
msgstr ""
+"La rotación mínima. Sólo está activa si [member angular_limit/enable] es "
+"[code]true[/code]."
#: doc/classes/HingeJoint3D.xml:64 doc/classes/HingeJoint3D.xml:100
#: doc/classes/PhysicsServer3D.xml:1306
msgid "The lower this value, the more the rotation gets slowed down."
-msgstr ""
+msgstr "Cuanto más bajo es este valor, más se ralentiza la rotación."
#: doc/classes/HingeJoint3D.xml:69 doc/classes/HingeJoint3D.xml:89
msgid ""
"The maximum rotation. Only active if [member angular_limit/enable] is "
"[code]true[/code]."
msgstr ""
+"La rotación máxima. Sólo está activa si [member angular_limit/enable] es "
+"[code]true[/code]."
#: doc/classes/HingeJoint3D.xml:72 doc/classes/HingeJoint3D.xml:115
msgid "When activated, a motor turns the hinge."
-msgstr ""
+msgstr "Cuando se activa, un motor gira la bisagra."
#: doc/classes/HingeJoint3D.xml:75 doc/classes/HingeJoint3D.xml:106
#: doc/classes/PhysicsServer3D.xml:1312
msgid "Maximum acceleration for the motor."
-msgstr ""
+msgstr "Aceleración máxima para el motor."
#: doc/classes/HingeJoint3D.xml:78 doc/classes/HingeJoint3D.xml:103
#: doc/classes/PhysicsServer3D.xml:1309
msgid "Target speed for the motor."
-msgstr ""
+msgstr "Velocidad objetivo para el motor."
#: doc/classes/HingeJoint3D.xml:81 doc/classes/HingeJoint3D.xml:86
#: doc/classes/PhysicsServer3D.xml:1292
@@ -25720,125 +31819,154 @@ msgid ""
"The speed with which the two bodies get pulled together when they move in "
"different directions."
msgstr ""
+"La velocidad con la que los dos cuerpos se juntan cuando se mueven en "
+"diferentes direcciones."
#: doc/classes/HScrollBar.xml:4
msgid "Horizontal scroll bar."
-msgstr ""
+msgstr "Barra de desplazamiento horizontal."
#: doc/classes/HScrollBar.xml:7
msgid ""
"Horizontal version of [ScrollBar], which goes from left (min) to right (max)."
msgstr ""
+"Versión horizontal de la [ScrollBar], que va de izquierda (min) a derecha "
+"(máx)."
#: doc/classes/HScrollBar.xml:17
msgid ""
"Icon used as a button to scroll the [ScrollBar] left. Supports custom step "
"using the [member ScrollBar.custom_step] property."
msgstr ""
+"Icono utilizado como botón para desplazar la [ScrollBar] hacia la izquierda. "
+"Soporta el paso personalizado usando la propiedad [member ScrollBar."
+"custom_step]."
#: doc/classes/HScrollBar.xml:20 doc/classes/VScrollBar.xml:24
msgid "Displayed when the mouse cursor hovers over the decrement button."
msgstr ""
+"Se muestra cuando el cursor del ratón pasa por encima del botón de "
+"disminución."
#: doc/classes/HScrollBar.xml:23 doc/classes/VScrollBar.xml:27
msgid ""
"Used as texture for the grabber, the draggable element representing current "
"scroll."
msgstr ""
+"Usado como textura para el grabber, el elemento arrastrable que representa "
+"el scroll actual."
#: doc/classes/HScrollBar.xml:26 doc/classes/VScrollBar.xml:30
msgid "Used when the mouse hovers over the grabber."
-msgstr ""
+msgstr "Se usa cuando el ratón esta encima del agarrador."
#: doc/classes/HScrollBar.xml:29 doc/classes/VScrollBar.xml:33
msgid "Used when the grabber is being dragged."
-msgstr ""
+msgstr "Se usa cuando el agarrador está siendo arrastrado."
#: doc/classes/HScrollBar.xml:32
msgid ""
"Icon used as a button to scroll the [ScrollBar] right. Supports custom step "
"using the [member ScrollBar.custom_step] property."
msgstr ""
+"Icono utilizado como botón para desplazar la [ScrollBar] hacia la derecha. "
+"Soporta el paso personalizado usando la propiedad [member ScrollBar."
+"custom_step]."
#: doc/classes/HScrollBar.xml:35 doc/classes/VScrollBar.xml:39
msgid "Displayed when the mouse cursor hovers over the increment button."
msgstr ""
+"Se muestra cuando el cursor del ratón pasa por encima del botón de "
+"incremento."
#: doc/classes/HScrollBar.xml:38 doc/classes/VScrollBar.xml:42
msgid "Used as background of this [ScrollBar]."
-msgstr ""
+msgstr "Usado como fondo de esta [ScrollBar]."
#: doc/classes/HScrollBar.xml:41 doc/classes/VScrollBar.xml:45
msgid "Used as background when the [ScrollBar] has the GUI focus."
-msgstr ""
+msgstr "Se usa como fondo cuando la [ScrollBar] tiene el foco de la GUI."
#: doc/classes/HSeparator.xml:4
msgid "Horizontal separator."
-msgstr ""
+msgstr "Separador horizontal."
#: doc/classes/HSeparator.xml:7
msgid ""
"Horizontal separator. See [Separator]. Even though it looks horizontal, it "
"is used to separate objects vertically."
msgstr ""
+"Separador horizontal. Ver [Separator]. Aunque parece horizontal, se usa para "
+"separar objetos verticalmente."
#: doc/classes/HSeparator.xml:17
msgid ""
"The height of the area covered by the separator. Effectively works like a "
"minimum height."
msgstr ""
+"La altura del área cubierta por el separador. Efectivamente funciona como "
+"una altura mínima."
#: doc/classes/HSeparator.xml:20
msgid "The style for the separator line. Works best with [StyleBoxLine]."
msgstr ""
+"El estilo de la línea de separación. Funciona mejor con [StyleBoxLine]."
#: doc/classes/HSlider.xml:4
msgid "Horizontal slider."
-msgstr ""
+msgstr "Deslizador horizontal."
#: doc/classes/HSlider.xml:7
msgid ""
"Horizontal slider. See [Slider]. This one goes from left (min) to right "
"(max)."
msgstr ""
+"Deslizador horizontal. Ver [Slider]. Éste va de izquierda (min) a derecha "
+"(máx)."
#: doc/classes/HSlider.xml:17 doc/classes/VSlider.xml:21
msgid "The texture for the grabber (the draggable element)."
-msgstr ""
+msgstr "La textura para el grabber (el elemento arrastrable)."
#: doc/classes/HSlider.xml:20
msgid "The background of the area to the left of the grabber."
-msgstr ""
+msgstr "El fondo de la zona a la izquierda del agarrador."
#: doc/classes/HSlider.xml:25 doc/classes/VSlider.xml:29
msgid "The texture for the grabber when it's disabled."
-msgstr ""
+msgstr "La textura para el agarrador cuando está desactivado."
#: doc/classes/HSlider.xml:28 doc/classes/VSlider.xml:32
msgid "The texture for the grabber when it's focused."
-msgstr ""
+msgstr "La textura para el agarrador cuando está enfocado."
#: doc/classes/HSlider.xml:31
msgid ""
"The background for the whole slider. Determines the height of the "
"[code]grabber_area[/code]."
msgstr ""
+"El fondo para el deslizador completo. Determina la altura del "
+"[code]grabber_area[/code]."
#: doc/classes/HSlider.xml:34 doc/classes/VSlider.xml:38
msgid ""
"The texture for the ticks, visible when [member Slider.tick_count] is "
"greater than 0."
msgstr ""
+"La textura de las marcas, visible cuando [member Slider.tick_count] es mayor "
+"que 0."
#: doc/classes/HSplitContainer.xml:4
msgid "Horizontal split container."
-msgstr ""
+msgstr "Contenedor dividido horizontalmente."
#: doc/classes/HSplitContainer.xml:7
msgid ""
"Horizontal split container. See [SplitContainer]. This goes from left to "
"right."
msgstr ""
+"Contenedor dividido horizontalmente. Véase [SplitContainer]. Esto va de "
+"izquierda a derecha."
#: doc/classes/HSplitContainer.xml:17 doc/classes/VSplitContainer.xml:17
msgid ""
@@ -25846,20 +31974,24 @@ msgid ""
"when it isn't under the cursor. If 0 ([code]false[/code]), it's always "
"visible."
msgstr ""
+"Valor booleano. Si 1 ([code]true[/code]), el grabador se esconderá "
+"automáticamente cuando no esté bajo el cursor. Si 0 ([code]false[/code]), "
+"siempre está visible."
#: doc/classes/HSplitContainer.xml:22 doc/classes/VSplitContainer.xml:22
msgid "The icon used for the grabber drawn in the middle area."
-msgstr ""
+msgstr "El icono usado para el agarrador dibujado en la area media."
#: doc/classes/HSplitContainer.xml:25 doc/classes/VSplitContainer.xml:25
msgid "The space between sides of the container."
-msgstr ""
+msgstr "El espacio entre los lados del contenedor."
#: doc/classes/HTTPClient.xml:4
msgid "Hyper-text transfer protocol client."
-msgstr ""
+msgstr "Cliente HTTP(Hyper-text transfer protocol)."
#: doc/classes/HTTPClient.xml:7
+#, fuzzy
msgid ""
"Hyper-text transfer protocol client (sometimes called \"User Agent\"). Used "
"to make HTTP requests to download web content, upload files and other data "
@@ -25878,27 +32010,57 @@ msgid ""
"server's side.\n"
"For more information on HTTP, see https://developer.mozilla.org/en-US/docs/"
"Web/HTTP (or read RFC 2616 to get it straight from the source: https://tools."
-"ietf.org/html/rfc2616)."
-msgstr ""
-
-#: doc/classes/HTTPClient.xml:13
+"ietf.org/html/rfc2616).\n"
+"[b]Note:[/b] When performing HTTP requests from a project exported to HTML5, "
+"keep in mind the remote server may not allow requests from foreign origins "
+"due to [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/"
+"url]. If you host the server in question, you should modify its backend to "
+"allow requests from foreign origins by adding the [code]Access-Control-Allow-"
+"Origin: *[/code] HTTP header."
+msgstr ""
+"Cliente de protocolo de transferencia de hipertexto (a veces llamado \"User "
+"Agent\"). Se utiliza para hacer peticiones HTTP para descargar contenido "
+"web, cargar archivos y otros datos o para comunicarse con diversos "
+"servicios, entre otros casos de uso. Véase [HTTPRequest] para una "
+"alternativa de nivel superior.\n"
+"[b]Nota:[/b] Este cliente sólo necesita conectarse a un host una vez (véase "
+"[method connect_to_host]) para enviar varias solicitudes. Debido a esto, los "
+"métodos que toman URLs normalmente toman sólo la parte después del host en "
+"lugar de la URL completa, ya que el cliente ya está conectado a un host. "
+"Consulta [method request] para ver un ejemplo completo y para empezar.\n"
+"Un [HTTPClient] debería ser reutilizado entre múltiples peticiones o para "
+"conectar a diferentes hosts en lugar de crear un cliente por petición. "
+"Admite la verificación de certificados SSL y de certificados de servidor "
+"SSL. Los códigos de estado HTTP en el rango de 2xx indican éxito, 3xx "
+"redirección (es decir, \"intentarlo de nuevo, pero por aquí\"), 4xx algo "
+"estaba mal con la solicitud, y 5xx algo salió mal en el lado del servidor.\n"
+"Para más información sobre HTTP, ver https://developer.mozilla.org/en-US/"
+"docs/Web/HTTP (o leer RFC 2616 para obtenerlo directamente de la fuente: "
+"https://tools.ietf.org/html/rfc2616)."
+
+#: doc/classes/HTTPClient.xml:14
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/"
"http_client_class.html"
msgstr ""
+"https://docs.godotengine.org/es/latest/tutorials/networking/"
+"http_client_class.html"
-#: doc/classes/HTTPClient.xml:14 doc/classes/HTTPRequest.xml:62
+#: doc/classes/HTTPClient.xml:15 doc/classes/HTTPRequest.xml:71
#: doc/classes/StreamPeerSSL.xml:10
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/ssl_certificates."
"html"
msgstr ""
+"https://docs.godotengine.org/es/latest/tutorials/networking/ssl_certificates."
+"html"
-#: doc/classes/HTTPClient.xml:21
+#: doc/classes/HTTPClient.xml:22
msgid "Closes the current connection, allowing reuse of this [HTTPClient]."
msgstr ""
+"Cierra la conexión actual, permitiendo la reutilización de este [HTTPClient]."
-#: doc/classes/HTTPClient.xml:36
+#: doc/classes/HTTPClient.xml:37
msgid ""
"Connects to a host. This needs to be done before any requests are sent.\n"
"The host should not have http:// prepended but will strip the protocol "
@@ -25909,24 +32071,38 @@ msgid ""
"[code]verify_host[/code] will check the SSL identity of the host if set to "
"[code]true[/code]."
msgstr ""
+"Se conecta a un host. Esto debe hacerse antes de que se envíe cualquier "
+"solicitud.\n"
+"El host no debe tener preparado http://, pero eliminará el identificador del "
+"protocolo si se le proporciona.\n"
+"Si no se especifica [code]port[/code] (o se utiliza [code]-1[/code]), se "
+"establece automáticamente en 80 para HTTP y en 443 para HTTPS (si se activa "
+"[code]use_ssl[/code]).\n"
+"[code]verify_host[/code] comprobará la identidad SSL del host si se "
+"establece en [code]true[/code]."
-#: doc/classes/HTTPClient.xml:46
+#: doc/classes/HTTPClient.xml:47
msgid ""
"Returns the response's body length.\n"
"[b]Note:[/b] Some Web servers may not send a body length. In this case, the "
"value returned will be [code]-1[/code]. If using chunked transfer encoding, "
"the body length will also be [code]-1[/code]."
msgstr ""
+"Devuelve la longitud del cuerpo de la respuesta.\n"
+"[b]Nota:[/b] Algunos servidores web pueden no enviar la longitud del cuerpo. "
+"En este caso, el valor devuelto será [code]-1[/code]. Si se utiliza la "
+"codificación de transferencia de trozos, la longitud del cuerpo también será "
+"[code]-1[/code]."
-#: doc/classes/HTTPClient.xml:54
+#: doc/classes/HTTPClient.xml:55
msgid "Returns the response's HTTP status code."
-msgstr ""
+msgstr "Devuelve el código de estado HTTP de la respuesta."
-#: doc/classes/HTTPClient.xml:61
+#: doc/classes/HTTPClient.xml:62
msgid "Returns the response headers."
-msgstr ""
+msgstr "Devuelve las cabeceras de la respuesta."
-#: doc/classes/HTTPClient.xml:68
+#: doc/classes/HTTPClient.xml:69
msgid ""
"Returns all response headers as a Dictionary of structure [code]{ \"key\": "
"\"value1; value2\" }[/code] where the case-sensitivity of the keys and "
@@ -25940,28 +32116,46 @@ msgid ""
"}\n"
"[/codeblock]"
msgstr ""
+"Devuelve todos los encabezados de respuesta como un diccionario de "
+"estructura [code]{\"key\": \"value1; value2\" }[/code] donde la sensibilidad "
+"a mayúsculas y minúsculas de las claves y valores se mantiene como el "
+"servidor lo entrega. Un valor es una simple String, esta string puede tener "
+"más de un valor donde \"; \" se utiliza como separador.\n"
+"[b]Ejemplo:[/b]\n"
+"[codeblock]\n"
+"{\n"
+" \"content-length\": 12,\n"
+" \"Content-Type\": \"application/json; charset=UTF-8\",\n"
+"}\n"
+"[/codeblock]"
-#: doc/classes/HTTPClient.xml:82
+#: doc/classes/HTTPClient.xml:83
msgid ""
"Returns a [enum Status] constant. Need to call [method poll] in order to get "
"status updates."
msgstr ""
+"Devuelve una constant [enum Status]. Necesito llamar a [method poll] para "
+"obtener actualizaciones de estado."
-#: doc/classes/HTTPClient.xml:89
+#: doc/classes/HTTPClient.xml:90
msgid "If [code]true[/code], this [HTTPClient] has a response available."
msgstr ""
+"Si [code]true[/code], este [HTTPClient] tiene una respuesta disponible."
-#: doc/classes/HTTPClient.xml:96
+#: doc/classes/HTTPClient.xml:97
msgid "If [code]true[/code], this [HTTPClient] has a response that is chunked."
msgstr ""
+"Si [code]true[/code], este [HTTPClient] tiene una respuesta que es troceada."
-#: doc/classes/HTTPClient.xml:103
+#: doc/classes/HTTPClient.xml:104
msgid ""
"This needs to be called in order to have any request processed. Check "
"results with [method get_status]."
msgstr ""
+"Hay que llamar a esto para que se procese cualquier solicitud. Comprueba los "
+"resultados con [method get_status]."
-#: doc/classes/HTTPClient.xml:112
+#: doc/classes/HTTPClient.xml:113
msgid ""
"Generates a GET/POST application/x-www-form-urlencoded style query string "
"from a provided dictionary, e.g.:\n"
@@ -25980,12 +32174,28 @@ msgid ""
"# Returns \"single=123&not_valued&multiple=22&multiple=33&multiple=44\"\n"
"[/codeblock]"
msgstr ""
+"Genera una string de consulta de estilo GET/POST/x-www-form-urlencoded desde "
+"un diccionario proporcionado, por ejemplo:\n"
+"codeblock]\n"
+"var campos = {\"nombreusuario\": \"usuario\", \"password\": \"contrasena\"}\n"
+"var query_string = http_client.query_string_from_dict(campos)\n"
+"# Returns \"nombreusuario=usuario&password=contrasena\"\n"
+"[/codeblock]\n"
+"Además, si una clave tiene un valor [code]null[/code], sólo se añade la "
+"propia clave, sin igual signo y valor. Si el valor es un array, por cada "
+"valor en ella se añade un par con la misma clave.\n"
+"[codeblock]\n"
+"var campos = {\"unico\": 123, \"no_valor\": null, \"multiple\": [22, 33, "
+"44]}\n"
+"var query_string = http_client.query_string_from_dict(fields)\n"
+"# Devuelve \"unico=123&no_valor&multiple=22&multiple=33&multiple=44\"\n"
+"[/codeblock]"
-#: doc/classes/HTTPClient.xml:130
+#: doc/classes/HTTPClient.xml:131
msgid "Reads one chunk from the response."
-msgstr ""
+msgstr "Lee un trozo de la respuesta."
-#: doc/classes/HTTPClient.xml:145
+#: doc/classes/HTTPClient.xml:146
msgid ""
"Sends a request to the connected host. The URL parameter is just the part "
"after the host, so for [code]http://somehost.com/index.php[/code], it is "
@@ -26002,8 +32212,24 @@ msgid ""
"headers, query_string)\n"
"[/codeblock]"
msgstr ""
+"Envía una solicitud al anfitrión conectado. El parámetro URL es sólo la "
+"parte después del host, así que para [code]http://algunhost.com/index.php[/"
+"code], es [code]index.php[/code].\n"
+"Las cabeceras son cabeceras de peticiones HTTP. Para los métodos HTTP "
+"disponibles, ver [enum Method].\n"
+"Para crear una petición POST con cadenas de consulta para empujar al "
+"servidor, hazlo:\n"
+"[codeblock]\n"
+"var campos = {\"nombreUsuario\" : \"usuario\", \"password\" : \"contrasena"
+"\"}\n"
+"var query = http_client.query_string_from_dict(campos)\n"
+"var headers = [\"Content-Type: application/x-www-form-urlencoded\", "
+"\"Content-Length: \" + str(query_string.length())]]\n"
+"var resultado = http_client.request(http_client.METHOD_POST, \"index.php\", "
+"headers, query)\n"
+"[/codeblock]"
-#: doc/classes/HTTPClient.xml:168
+#: doc/classes/HTTPClient.xml:169
msgid ""
"Sends a raw request to the connected host. The URL parameter is just the "
"part after the host, so for [code]http://somehost.com/index.php[/code], it "
@@ -26012,148 +32238,197 @@ msgid ""
"Method].\n"
"Sends the body data raw, as a byte array and does not encode it in any way."
msgstr ""
+"Envía una solicitud raw al host conectado. El parámetro URL es sólo la parte "
+"después del host, así que para [code]http://algunhost.com/index.php[/code], "
+"es [code]index.php[/code].\n"
+"Las cabeceras son cabeceras de peticiones HTTP. Para los métodos HTTP "
+"disponibles, ver [enum Method].\n"
+"Envía los datos del cuerpo en bruto, como un array de bytes y no los "
+"codifica de ninguna manera."
-#: doc/classes/HTTPClient.xml:176
+#: doc/classes/HTTPClient.xml:177
msgid ""
"If [code]true[/code], execution will block until all data is read from the "
"response."
msgstr ""
+"Si [code]true[/code], la ejecución se bloqueará hasta que se lean todos los "
+"datos de la respuesta."
-#: doc/classes/HTTPClient.xml:179
+#: doc/classes/HTTPClient.xml:180
msgid "The connection to use for this client."
-msgstr ""
+msgstr "La conexión a usar para este cliente."
-#: doc/classes/HTTPClient.xml:182
+#: doc/classes/HTTPClient.xml:183
msgid ""
"The size of the buffer used and maximum bytes to read per iteration. See "
"[method read_response_body_chunk]."
msgstr ""
+"El tamaño de la memoria intermedia utilizada y el máximo de bytes a leer por "
+"iteración. Véase [method read_response_body_chunk]."
-#: doc/classes/HTTPClient.xml:187
+#: doc/classes/HTTPClient.xml:188
msgid ""
"HTTP GET method. The GET method requests a representation of the specified "
"resource. Requests using GET should only retrieve data."
msgstr ""
+"Método HTTP GET. El método GET solicita una representación del recurso "
+"especificado. Las solicitudes que utilizan GET sólo deben recuperar datos."
-#: doc/classes/HTTPClient.xml:190
+#: doc/classes/HTTPClient.xml:191
msgid ""
"HTTP HEAD method. The HEAD method asks for a response identical to that of a "
"GET request, but without the response body. This is useful to request "
"metadata like HTTP headers or to check if a resource exists."
msgstr ""
+"Método HTTP HEAD. El método HEAD pide una respuesta idéntica a la de una "
+"petición GET, pero sin el cuerpo de respuesta. Esto es útil para solicitar "
+"metadatos como cabeceras HTTP o para comprobar si existe un recurso."
-#: doc/classes/HTTPClient.xml:193
+#: doc/classes/HTTPClient.xml:194
msgid ""
"HTTP POST method. The POST method is used to submit an entity to the "
"specified resource, often causing a change in state or side effects on the "
"server. This is often used for forms and submitting data or uploading files."
msgstr ""
+"Método HTTP POST. El método POST se utiliza para someter una entidad al "
+"recurso especificado, a menudo causando un cambio de estado o efectos "
+"secundarios en el servidor. A menudo se utiliza para formularios y para "
+"enviar datos o cargar archivos."
-#: doc/classes/HTTPClient.xml:196
+#: doc/classes/HTTPClient.xml:197
msgid ""
"HTTP PUT method. The PUT method asks to replace all current representations "
"of the target resource with the request payload. (You can think of POST as "
"\"create or update\" and PUT as \"update\", although many services tend to "
"not make a clear distinction or change their meaning)."
msgstr ""
+"Método HTTP PUT. El método PUT pide reemplazar todas las representaciones "
+"actuales del recurso de destino con la carga útil de la solicitud. (Puedes "
+"pensar en POST como \"crear o actualizar\" y en PUT como \"actualizar\", "
+"aunque muchos servicios tienden a no hacer una distinción clara o a cambiar "
+"su significado)."
-#: doc/classes/HTTPClient.xml:199
+#: doc/classes/HTTPClient.xml:200
msgid ""
"HTTP DELETE method. The DELETE method requests to delete the specified "
"resource."
msgstr ""
+"Método HTTP DELETE. El método DELETE pide que se elimine el recurso "
+"especificado."
-#: doc/classes/HTTPClient.xml:202
+#: doc/classes/HTTPClient.xml:203
msgid ""
"HTTP OPTIONS method. The OPTIONS method asks for a description of the "
"communication options for the target resource. Rarely used."
msgstr ""
+"Método OPTIONS HTTP. El método OPTIONS pide una descripción de las opciones "
+"de comunicación para el recurso objetivo. Rara vez se utiliza."
-#: doc/classes/HTTPClient.xml:205
+#: doc/classes/HTTPClient.xml:206
msgid ""
"HTTP TRACE method. The TRACE method performs a message loop-back test along "
"the path to the target resource. Returns the entire HTTP request received in "
"the response body. Rarely used."
msgstr ""
+"Método HTTP TRACE. El método TRACE realiza una prueba de bucle de mensajes a "
+"lo largo del camino hacia el recurso objetivo. Devuelve toda la petición "
+"HTTP recibida en el cuerpo de respuesta. Rara vez se usa."
-#: doc/classes/HTTPClient.xml:208
+#: doc/classes/HTTPClient.xml:209
msgid ""
"HTTP CONNECT method. The CONNECT method establishes a tunnel to the server "
"identified by the target resource. Rarely used."
msgstr ""
+"Método HTTP CONNECT. El método CONNECT establece un túnel hacia el servidor "
+"identificado por el recurso objetivo. Rara vez se utiliza."
-#: doc/classes/HTTPClient.xml:211
+#: doc/classes/HTTPClient.xml:212
msgid ""
"HTTP PATCH method. The PATCH method is used to apply partial modifications "
"to a resource."
msgstr ""
+"Método HTTP PATCH. El método PATCH se utiliza para aplicar modificaciones "
+"parciales a un recurso."
-#: doc/classes/HTTPClient.xml:214
+#: doc/classes/HTTPClient.xml:215
msgid "Represents the size of the [enum Method] enum."
-msgstr ""
+msgstr "Representa el tamaño del enum [Method enum]."
-#: doc/classes/HTTPClient.xml:217
+#: doc/classes/HTTPClient.xml:218
msgid "Status: Disconnected from the server."
-msgstr ""
+msgstr "Estado: Desconectado del servidor."
-#: doc/classes/HTTPClient.xml:220
+#: doc/classes/HTTPClient.xml:221
msgid "Status: Currently resolving the hostname for the given URL into an IP."
msgstr ""
+"Estado: Actualmente resolviendo el nombre del host para la URL dada, en una "
+"IP."
-#: doc/classes/HTTPClient.xml:223
+#: doc/classes/HTTPClient.xml:224
msgid "Status: DNS failure: Can't resolve the hostname for the given URL."
msgstr ""
+"Estado: Fallo del DNS: No se puede resolver el nombre de host para la URL "
+"dada."
-#: doc/classes/HTTPClient.xml:226
+#: doc/classes/HTTPClient.xml:227
msgid "Status: Currently connecting to server."
-msgstr ""
+msgstr "Estado: Actualmente conectándose al servidor."
-#: doc/classes/HTTPClient.xml:229
+#: doc/classes/HTTPClient.xml:230
msgid "Status: Can't connect to the server."
-msgstr ""
+msgstr "Estado: No puede conectarse al servidor."
-#: doc/classes/HTTPClient.xml:232
+#: doc/classes/HTTPClient.xml:233
msgid "Status: Connection established."
-msgstr ""
+msgstr "Estado: Conexión establecida."
-#: doc/classes/HTTPClient.xml:235
+#: doc/classes/HTTPClient.xml:236
msgid "Status: Currently sending request."
-msgstr ""
+msgstr "Estado: Actualmente enviando la petición."
-#: doc/classes/HTTPClient.xml:238
+#: doc/classes/HTTPClient.xml:239
msgid "Status: HTTP body received."
-msgstr ""
+msgstr "Estado: Cuerpo HTTP recibido."
-#: doc/classes/HTTPClient.xml:241
+#: doc/classes/HTTPClient.xml:242
msgid "Status: Error in HTTP connection."
-msgstr ""
+msgstr "Estado: Error en la conexión HTTP."
-#: doc/classes/HTTPClient.xml:244
+#: doc/classes/HTTPClient.xml:245
msgid "Status: Error in SSL handshake."
-msgstr ""
+msgstr "Estado: Error en el handshake SSL."
-#: doc/classes/HTTPClient.xml:247
+#: doc/classes/HTTPClient.xml:248
msgid ""
"HTTP status code [code]100 Continue[/code]. Interim response that indicates "
"everything so far is OK and that the client should continue with the request "
"(or ignore this status if already finished)."
msgstr ""
+"Código de estado HTTP [code]100 Continuar [/code]. Respuesta provisional que "
+"indica que todo hasta ahora está bien y que el cliente debe continuar con la "
+"solicitud (o ignorar este estado si ya ha terminado)."
-#: doc/classes/HTTPClient.xml:250
+#: doc/classes/HTTPClient.xml:251
msgid ""
"HTTP status code [code]101 Switching Protocol[/code]. Sent in response to an "
"[code]Upgrade[/code] request header by the client. Indicates the protocol "
"the server is switching to."
msgstr ""
+"Código de estado HTTP [code]101 Switching Protocol[/code]. Enviado en "
+"respuesta a una solicitud de [code]Upgrade[/code] por el cliente. Indica el "
+"protocolo al que el servidor está cambiando."
-#: doc/classes/HTTPClient.xml:253
+#: doc/classes/HTTPClient.xml:254
msgid ""
"HTTP status code [code]102 Processing[/code] (WebDAV). Indicates that the "
"server has received and is processing the request, but no response is "
"available yet."
msgstr ""
+"Código de estado HTTP [code]102 Processing[/code] (WebDAV). Indica que el "
+"servidor ha recibido y está procesando la solicitud, pero aún no hay "
+"respuesta disponible."
-#: doc/classes/HTTPClient.xml:256
+#: doc/classes/HTTPClient.xml:257
msgid ""
"HTTP status code [code]200 OK[/code]. The request has succeeded. Default "
"response for successful requests. Meaning varies depending on the request. "
@@ -26163,15 +32438,25 @@ msgid ""
"TRACE: The message body contains the request message as received by the "
"server."
msgstr ""
+"Código de estado HTTP [code]200 OK[/code]. La petición ha tenido éxito. "
+"Respuesta por defecto para las solicitudes con exito. El significado varía "
+"dependiendo de la solicitud. GET: El recurso ha sido recuperado y se "
+"transmite en el cuerpo del mensaje. HEAD: Las cabeceras de la entidad están "
+"en el cuerpo del mensaje. POST: El recurso que describe el resultado de la "
+"acción se transmite en el cuerpo del mensaje. TRACE: El cuerpo del mensaje "
+"contiene el mensaje de solicitud tal y como lo recibió el servidor."
-#: doc/classes/HTTPClient.xml:259
+#: doc/classes/HTTPClient.xml:260
msgid ""
"HTTP status code [code]201 Created[/code]. The request has succeeded and a "
"new resource has been created as a result of it. This is typically the "
"response sent after a PUT request."
msgstr ""
+"Código de estado HTTP [code]201 Creado[/code]. La petición ha tenido éxito y "
+"se ha creado un nuevo recurso como resultado de ella. Esta es típicamente la "
+"respuesta enviada después de una solicitud PUT."
-#: doc/classes/HTTPClient.xml:262
+#: doc/classes/HTTPClient.xml:263
msgid ""
"HTTP status code [code]202 Accepted[/code]. The request has been received "
"but not yet acted upon. It is non-committal, meaning that there is no way in "
@@ -26179,8 +32464,14 @@ msgid ""
"processing the request. It is intended for cases where another process or "
"server handles the request, or for batch processing."
msgstr ""
+"Código de estado HTTP [code]202 Accepted[/code]. La solicitud ha sido "
+"recibida pero aún no se ha actuado al respecto. No se ha tomado ninguna "
+"medida, lo que significa que no hay forma de que HTTP envíe más tarde una "
+"respuesta asincrónica que indique el resultado del procesamiento de la "
+"solicitud. Está destinado a los casos en que otro proceso o servidor se "
+"encarga de la solicitud, o para el procesamiento por lotes."
-#: doc/classes/HTTPClient.xml:265
+#: doc/classes/HTTPClient.xml:266
msgid ""
"HTTP status code [code]203 Non-Authoritative Information[/code]. This "
"response code means returned meta-information set is not exact set as "
@@ -26188,113 +32479,168 @@ msgid ""
"party copy. Except this condition, 200 OK response should be preferred "
"instead of this response."
msgstr ""
+"Código de estado HTTP [code]203 Información no autorizada [/code]. Este "
+"código de respuesta significa que el conjunto de meta-información devuelta "
+"no está exactamente establecida como disponible en el servidor de origen, "
+"sino que se ha recogido de una copia local o de un tercero. Excepto en esta "
+"condición, se debe preferir la respuesta 200 OK en lugar de esta respuesta."
-#: doc/classes/HTTPClient.xml:268
+#: doc/classes/HTTPClient.xml:269
msgid ""
"HTTP status code [code]204 No Content[/code]. There is no content to send "
"for this request, but the headers may be useful. The user-agent may update "
"its cached headers for this resource with the new ones."
msgstr ""
+"Código de estado HTTP [code]204 No hay contenido [/code]. No hay contenido "
+"que enviar para esta petición, pero los encabezados pueden ser útiles. El "
+"user-agent puede actualizar sus cabeceras en caché para este recurso con las "
+"nuevas."
-#: doc/classes/HTTPClient.xml:271
+#: doc/classes/HTTPClient.xml:272
msgid ""
"HTTP status code [code]205 Reset Content[/code]. The server has fulfilled "
"the request and desires that the client resets the \"document view\" that "
"caused the request to be sent to its original state as received from the "
"origin server."
msgstr ""
+"Código de estado HTTP [code]205 Reset Content[/code]. El servidor ha "
+"cumplido la solicitud y desea que el cliente restablezca la \"vista del "
+"documento\" que causó que la solicitud se enviara a su estado original tal "
+"como se recibió del servidor de origen."
-#: doc/classes/HTTPClient.xml:274
+#: doc/classes/HTTPClient.xml:275
msgid ""
"HTTP status code [code]206 Partial Content[/code]. This response code is "
"used because of a range header sent by the client to separate download into "
"multiple streams."
msgstr ""
+"Código de estado HTTP [code]206 Partial Content[/code]. Este código de "
+"respuesta se utiliza debido a un encabezado de rango enviado por el cliente "
+"para separar la descarga en múltiples flujos."
-#: doc/classes/HTTPClient.xml:277
+#: doc/classes/HTTPClient.xml:278
msgid ""
"HTTP status code [code]207 Multi-Status[/code] (WebDAV). A Multi-Status "
"response conveys information about multiple resources in situations where "
"multiple status codes might be appropriate."
msgstr ""
+"Código de estado HTTP [code]207 Multi-Status[/code] (WebDAV). Una respuesta "
+"Multi-Status transmite información sobre múltiples recursos en situaciones "
+"en las que podrían ser apropiados múltiples códigos de estado."
-#: doc/classes/HTTPClient.xml:280
+#: doc/classes/HTTPClient.xml:281
msgid ""
"HTTP status code [code]208 Already Reported[/code] (WebDAV). Used inside a "
"DAV: propstat response element to avoid enumerating the internal members of "
"multiple bindings to the same collection repeatedly."
msgstr ""
+"Código de estado HTTP [code]208 Already Reported[/code] (WebDAV). Utilizado "
+"dentro de un DAV: elemento de respuesta propstat para evitar enumerar los "
+"miembros internos de múltiples enlaces a la misma colección repetidamente."
-#: doc/classes/HTTPClient.xml:283
+#: doc/classes/HTTPClient.xml:284
msgid ""
"HTTP status code [code]226 IM Used[/code] (WebDAV). The server has fulfilled "
"a GET request for the resource, and the response is a representation of the "
"result of one or more instance-manipulations applied to the current instance."
msgstr ""
+"Código de estado HTTP [code]226 IM Used[/code] (WebDAV). El servidor ha "
+"cumplido una solicitud GET para el recurso, y la respuesta es una "
+"representación del resultado de una o más manipulaciones de instancia "
+"aplicadas a la instancia actual."
-#: doc/classes/HTTPClient.xml:286
+#: doc/classes/HTTPClient.xml:287
msgid ""
"HTTP status code [code]300 Multiple Choice[/code]. The request has more than "
"one possible responses and there is no standardized way to choose one of the "
"responses. User-agent or user should choose one of them."
msgstr ""
+"Código de estado HTTP [code]300 Multiple Choice[/code]. La solicitud tiene "
+"más de una respuesta posible y no hay una forma estandarizada de elegir una "
+"de las respuestas. El user-agent o el usuario debe elegir una de ellas."
-#: doc/classes/HTTPClient.xml:289
+#: doc/classes/HTTPClient.xml:290
msgid ""
"HTTP status code [code]301 Moved Permanently[/code]. Redirection. This "
"response code means the URI of requested resource has been changed. The new "
"URI is usually included in the response."
msgstr ""
+"Código de estado HTTP [code]301 Moved Permanently[/code]. Redirección. Este "
+"código de respuesta significa que la URI del recurso solicitado ha sido "
+"cambiada. La nueva URI suele estar incluida en la respuesta."
-#: doc/classes/HTTPClient.xml:292
+#: doc/classes/HTTPClient.xml:293
msgid ""
"HTTP status code [code]302 Found[/code]. Temporary redirection. This "
"response code means the URI of requested resource has been changed "
"temporarily. New changes in the URI might be made in the future. Therefore, "
"this same URI should be used by the client in future requests."
msgstr ""
+"Código de estado HTTP [code]302 Found[/code]. Redireccionamiento temporal. "
+"Este código de respuesta significa que la URI del recurso solicitado ha sido "
+"cambiada temporalmente. Nuevos cambios en la URI podrían hacerse en el "
+"futuro. Por lo tanto, esta misma URI debería ser utilizada por el cliente en "
+"futuras solicitudes."
-#: doc/classes/HTTPClient.xml:295
+#: doc/classes/HTTPClient.xml:296
msgid ""
"HTTP status code [code]303 See Other[/code]. The server is redirecting the "
"user agent to a different resource, as indicated by a URI in the Location "
"header field, which is intended to provide an indirect response to the "
"original request."
msgstr ""
+"Código de estado HTTP [code]303 See Other[/code]. El servidor está "
+"redirigiendo el user agent a un recurso diferente, como se indica en una URI "
+"en el campo de encabezamiento de la localización, que tiene por objeto "
+"proporcionar una respuesta indirecta a la solicitud original."
-#: doc/classes/HTTPClient.xml:298
+#: doc/classes/HTTPClient.xml:299
msgid ""
"HTTP status code [code]304 Not Modified[/code]. A conditional GET or HEAD "
"request has been received and would have resulted in a 200 OK response if it "
"were not for the fact that the condition evaluated to [code]false[/code]."
msgstr ""
+"Código de estado HTTP [code]304 Not Modified[/code]. Se ha recibido una "
+"solicitud condicional GET o HEAD que habría dado lugar a una respuesta de "
+"200 OK si no fuera por el hecho de que la condición fue evaluada a "
+"[code]false[/code]."
-#: doc/classes/HTTPClient.xml:301
+#: doc/classes/HTTPClient.xml:302
msgid ""
"HTTP status code [code]305 Use Proxy[/code]. [i]Deprecated. Do not use.[/i]"
msgstr ""
+"Código de estado HTTP [code]305 Use Proxy[/code]. [i]Descartado. No Usar.[/i]"
-#: doc/classes/HTTPClient.xml:304
+#: doc/classes/HTTPClient.xml:305
msgid ""
"HTTP status code [code]306 Switch Proxy[/code]. [i]Deprecated. Do not use.[/"
"i]"
msgstr ""
+"Código de estado HTTP [code]306 Switch Proxy[/code]. [i]Descartado. No Usar."
+"[/i]"
-#: doc/classes/HTTPClient.xml:307
+#: doc/classes/HTTPClient.xml:308
msgid ""
"HTTP status code [code]307 Temporary Redirect[/code]. The target resource "
"resides temporarily under a different URI and the user agent MUST NOT change "
"the request method if it performs an automatic redirection to that URI."
msgstr ""
+"Código de estado HTTP [code]307 Temporary Redirect[/code]. El recurso "
+"objetivo reside temporalmente bajo una URI diferente y el user-agent NO DEBE "
+"cambiar el método de solicitud si realiza una redirección automática a esa "
+"URI."
-#: doc/classes/HTTPClient.xml:310
+#: doc/classes/HTTPClient.xml:311
msgid ""
"HTTP status code [code]308 Permanent Redirect[/code]. The target resource "
"has been assigned a new permanent URI and any future references to this "
"resource ought to use one of the enclosed URIs."
msgstr ""
+"Código de estado HTTP [code]308 Permanent Redirect[/code]. Al recurso "
+"objetivo se le ha asignado una nueva URI permanente y cualquier referencia "
+"futura a este recurso deberá utilizar una de las URI adjuntas."
-#: doc/classes/HTTPClient.xml:313
+#: doc/classes/HTTPClient.xml:314
msgid ""
"HTTP status code [code]400 Bad Request[/code]. The request was invalid. The "
"server cannot or will not process the request due to something that is "
@@ -26302,146 +32648,220 @@ msgid ""
"request message framing, invalid request contents, or deceptive request "
"routing)."
msgstr ""
+"Código de estado HTTP [code]400 Bad Request[/code]. La solicitud era "
+"inválida. El servidor no puede o no quiere procesar la solicitud debido a "
+"algo que se percibe como un error del cliente (por ejemplo, sintaxis de "
+"solicitud mal formada, enmarcado de mensaje de solicitud inválido, contenido "
+"de solicitud inválido o enrutamiento de solicitud engañoso)."
-#: doc/classes/HTTPClient.xml:316
+#: doc/classes/HTTPClient.xml:317
msgid ""
"HTTP status code [code]401 Unauthorized[/code]. Credentials required. The "
"request has not been applied because it lacks valid authentication "
"credentials for the target resource."
msgstr ""
+"Código de estado HTTP [code]401 Unauthorized[/code]. Se requieren "
+"credenciales. La solicitud no se ha aplicado porque carece de credenciales "
+"de autenticación válidas para el recurso de destino."
-#: doc/classes/HTTPClient.xml:319
+#: doc/classes/HTTPClient.xml:320
msgid ""
"HTTP status code [code]402 Payment Required[/code]. This response code is "
"reserved for future use. Initial aim for creating this code was using it for "
"digital payment systems, however this is not currently used."
msgstr ""
+"Código de estado HTTP [code]402 Payment Required[/code]. Este código de "
+"respuesta está reservado para un uso futuro. El objetivo inicial para crear "
+"este código era usarlo para sistemas de pago digitales, sin embargo no se "
+"usa actualmente."
-#: doc/classes/HTTPClient.xml:322
+#: doc/classes/HTTPClient.xml:323
msgid ""
"HTTP status code [code]403 Forbidden[/code]. The client does not have access "
"rights to the content, i.e. they are unauthorized, so server is rejecting to "
"give proper response. Unlike [code]401[/code], the client's identity is "
"known to the server."
msgstr ""
+"Código de estado HTTP [code]403 Forbidden[/code]. El cliente no tiene "
+"derechos de acceso al contenido, es decir, no están autorizados, por lo que "
+"el servidor se está negando a dar una respuesta adecuada. A diferencia de "
+"[code]401[/code], la identidad del cliente es conocida por el servidor."
-#: doc/classes/HTTPClient.xml:325
+#: doc/classes/HTTPClient.xml:326
msgid ""
"HTTP status code [code]404 Not Found[/code]. The server can not find "
"requested resource. Either the URL is not recognized or the endpoint is "
"valid but the resource itself does not exist. May also be sent instead of "
"403 to hide existence of a resource if the client is not authorized."
msgstr ""
+"Código de estado HTTP [code]404 Not Found[/code]. El servidor no puede "
+"encontrar el recurso solicitado. La URL no se reconoce o el punto final es "
+"válido pero el recurso en sí no existe. También puede ser enviado en lugar "
+"de 403 para ocultar la existencia de un recurso si el cliente no está "
+"autorizado."
-#: doc/classes/HTTPClient.xml:328
+#: doc/classes/HTTPClient.xml:329
msgid ""
"HTTP status code [code]405 Method Not Allowed[/code]. The request's HTTP "
"method is known by the server but has been disabled and cannot be used. For "
"example, an API may forbid DELETE-ing a resource. The two mandatory methods, "
"GET and HEAD, must never be disabled and should not return this error code."
msgstr ""
+"Código de estado HTTP [code]405 Method Not Allowed[/code]. El método HTTP de "
+"la petición es conocido por el servidor pero ha sido desactivado y no puede "
+"ser utilizado. Por ejemplo, una API puede prohibir la eliminación de un "
+"recurso. Los dos métodos obligatorios, GET y HEAD, nunca deben ser "
+"desactivados y no deben devolver este código de error."
-#: doc/classes/HTTPClient.xml:331
+#: doc/classes/HTTPClient.xml:332
msgid ""
"HTTP status code [code]406 Not Acceptable[/code]. The target resource does "
"not have a current representation that would be acceptable to the user "
"agent, according to the proactive negotiation header fields received in the "
"request. Used when negotiation content."
msgstr ""
+"Código de estado HTTP [code]406 Not Acceptable[/code]. El recurso de destino "
+"no tiene una representación actual que sería aceptable para el agente "
+"usuario, según los campos del encabezado de negociación proactiva recibidos "
+"en la solicitud. Se utiliza cuando el contenido de la negociación."
-#: doc/classes/HTTPClient.xml:334
+#: doc/classes/HTTPClient.xml:335
msgid ""
"HTTP status code [code]407 Proxy Authentication Required[/code]. Similar to "
"401 Unauthorized, but it indicates that the client needs to authenticate "
"itself in order to use a proxy."
msgstr ""
+"Código de estado HTTP [code]407 Proxy Authentication Required[/code]. "
+"Similar a 401 No autorizado, pero indica que el cliente necesita "
+"autenticarse para usar un proxy."
-#: doc/classes/HTTPClient.xml:337
+#: doc/classes/HTTPClient.xml:338
msgid ""
"HTTP status code [code]408 Request Timeout[/code]. The server did not "
"receive a complete request message within the time that it was prepared to "
"wait."
msgstr ""
+"Código de estado HTTP [code]408 Solicitud de tiempo de espera [/code]. El "
+"servidor no recibió un mensaje de solicitud completo en el tiempo que estaba "
+"preparado para esperar."
-#: doc/classes/HTTPClient.xml:340
+#: doc/classes/HTTPClient.xml:341
msgid ""
"HTTP status code [code]409 Conflict[/code]. The request could not be "
"completed due to a conflict with the current state of the target resource. "
"This code is used in situations where the user might be able to resolve the "
"conflict and resubmit the request."
msgstr ""
+"Código de estado HTTP [code]409 Conflict[/code]. La solicitud no pudo "
+"completarse debido a un conflicto con el estado actual del recurso objetivo. "
+"Este código se utiliza en situaciones en las que el usuario podría resolver "
+"el conflicto y volver a enviar la solicitud."
-#: doc/classes/HTTPClient.xml:343
+#: doc/classes/HTTPClient.xml:344
msgid ""
"HTTP status code [code]410 Gone[/code]. The target resource is no longer "
"available at the origin server and this condition is likely permanent."
msgstr ""
+"Código de estado HTTP [code]410 Gone[/code]. El recurso objetivo ya no está "
+"disponible en el servidor de origen y esta condición es probablemente "
+"permanente."
-#: doc/classes/HTTPClient.xml:346
+#: doc/classes/HTTPClient.xml:347
msgid ""
"HTTP status code [code]411 Length Required[/code]. The server refuses to "
"accept the request without a defined Content-Length header."
msgstr ""
+"Código de estado HTTP [code]411 Length Required[/code]. El servidor se niega "
+"a aceptar la solicitud sin un encabezado de longitud de contenido definido."
-#: doc/classes/HTTPClient.xml:349
+#: doc/classes/HTTPClient.xml:350
msgid ""
"HTTP status code [code]412 Precondition Failed[/code]. One or more "
"conditions given in the request header fields evaluated to [code]false[/"
"code] when tested on the server."
msgstr ""
+"Código de estado HTTP [code]412 Precondition Failed[/code]. Una o más "
+"condiciones dadas en los campos de la cabecera de la petición evaluadas a "
+"[code]false[/code] al ser probadas en el servidor."
-#: doc/classes/HTTPClient.xml:352
+#: doc/classes/HTTPClient.xml:353
msgid ""
"HTTP status code [code]413 Entity Too Large[/code]. The server is refusing "
"to process a request because the request payload is larger than the server "
"is willing or able to process."
msgstr ""
+"Código de estado HTTP [code]413 Entity Too large[/code]. El servidor se "
+"niega a procesar una solicitud porque la carga útil de la solicitud es mayor "
+"de lo que el servidor está dispuesto o puede procesar."
-#: doc/classes/HTTPClient.xml:355
+#: doc/classes/HTTPClient.xml:356
msgid ""
"HTTP status code [code]414 Request-URI Too Long[/code]. The server is "
"refusing to service the request because the request-target is longer than "
"the server is willing to interpret."
msgstr ""
+"Código de estado HTTP [code]414 Request-URI Too Long[/code]. El servidor se "
+"niega a atender la solicitud porque el objetivo de la solicitud es más largo "
+"de lo que el servidor está dispuesto a interpretar."
-#: doc/classes/HTTPClient.xml:358
+#: doc/classes/HTTPClient.xml:359
msgid ""
"HTTP status code [code]415 Unsupported Media Type[/code]. The origin server "
"is refusing to service the request because the payload is in a format not "
"supported by this method on the target resource."
msgstr ""
+"Código de estado HTTP [code]415 Unsupported Media Type[/code]. El servidor "
+"de origen se niega a atender la solicitud porque la carga útil está en un "
+"formato no soportado por este método en el recurso de destino."
-#: doc/classes/HTTPClient.xml:361
+#: doc/classes/HTTPClient.xml:362
msgid ""
"HTTP status code [code]416 Requested Range Not Satisfiable[/code]. None of "
"the ranges in the request's Range header field overlap the current extent of "
"the selected resource or the set of ranges requested has been rejected due "
"to invalid ranges or an excessive request of small or overlapping ranges."
msgstr ""
+"Código de estado HTTP [code]416 Requested Range Not Satisfiable[/code]. "
+"Ninguno de los rangos en el campo de encabezamiento del rango de la "
+"solicitud se superpone a la extensión actual del recurso seleccionado o el "
+"conjunto de rangos solicitados ha sido rechazado debido a rangos inválidos o "
+"a una solicitud excesiva de rangos pequeños o superpuestos."
-#: doc/classes/HTTPClient.xml:364
+#: doc/classes/HTTPClient.xml:365
msgid ""
"HTTP status code [code]417 Expectation Failed[/code]. The expectation given "
"in the request's Expect header field could not be met by at least one of the "
"inbound servers."
msgstr ""
+"Código de estado HTTP [code]417 Expectation Failed[/code]. La expectativa "
+"dada en el campo de encabezado Expect de la solicitud no pudo ser satisfecha "
+"por al menos uno de los servidores de entrada."
-#: doc/classes/HTTPClient.xml:367
+#: doc/classes/HTTPClient.xml:368
msgid ""
"HTTP status code [code]418 I'm A Teapot[/code]. Any attempt to brew coffee "
"with a teapot should result in the error code \"418 I'm a teapot\". The "
"resulting entity body MAY be short and stout."
msgstr ""
+"Código de estado HTTP [code]418 I'm A Teapot[/code]. Cualquier intento de "
+"preparar café con una tetera debería dar como resultado el código de error "
+"\"418 I'm a Teapot\". El cuerpo de la entidad resultante PUEDE ser corto y "
+"robusto."
-#: doc/classes/HTTPClient.xml:370
+#: doc/classes/HTTPClient.xml:371
msgid ""
"HTTP status code [code]421 Misdirected Request[/code]. The request was "
"directed at a server that is not able to produce a response. This can be "
"sent by a server that is not configured to produce responses for the "
"combination of scheme and authority that are included in the request URI."
msgstr ""
+"Código de estado HTTP [code]421 Misdirected Request[/code]. La solicitud fue "
+"dirigida a un servidor que no es capaz de producir una respuesta. Esto puede "
+"ser enviado por un servidor que no está configurado para producir respuestas "
+"para la combinación de esquema y autoridad que se incluyen en la URI de la "
+"solicitud."
-#: doc/classes/HTTPClient.xml:373
+#: doc/classes/HTTPClient.xml:374
msgid ""
"HTTP status code [code]422 Unprocessable Entity[/code] (WebDAV). The server "
"understands the content type of the request entity (hence a 415 Unsupported "
@@ -26449,140 +32869,207 @@ msgid ""
"entity is correct (thus a 400 Bad Request status code is inappropriate) but "
"was unable to process the contained instructions."
msgstr ""
+"Código de estado HTTP [code]422 Unprocessable Entity[/code] (WebDAV). El "
+"servidor entiende el tipo de contenido de la entidad de solicitud (por lo "
+"tanto, un código de estado 415 Unsupported Media Type es inapropiado), y la "
+"sintaxis de la entidad de solicitud es correcta (por lo tanto, un código de "
+"estado 400 Bad Request es inapropiado) pero no pudo procesar las "
+"instrucciones contenidas."
-#: doc/classes/HTTPClient.xml:376
+#: doc/classes/HTTPClient.xml:377
msgid ""
"HTTP status code [code]423 Locked[/code] (WebDAV). The source or destination "
"resource of a method is locked."
msgstr ""
+"Código de estado HTTP [code]423 Locked[/code] (WebDAV). El recurso de origen "
+"o destino de un método está bloqueado."
-#: doc/classes/HTTPClient.xml:379
+#: doc/classes/HTTPClient.xml:380
msgid ""
"HTTP status code [code]424 Failed Dependency[/code] (WebDAV). The method "
"could not be performed on the resource because the requested action depended "
"on another action and that action failed."
msgstr ""
+"Código de estado HTTP [code]424 Failed Dependency[/code] (WebDAV). El método "
+"no pudo realizarse en el recurso porque la acción solicitada dependía de "
+"otra acción y esa acción falló."
-#: doc/classes/HTTPClient.xml:382
+#: doc/classes/HTTPClient.xml:383
msgid ""
"HTTP status code [code]426 Upgrade Required[/code]. The server refuses to "
"perform the request using the current protocol but might be willing to do so "
"after the client upgrades to a different protocol."
msgstr ""
+"Código de estado HTTP [code]426 Upgrade Required[/code]. El servidor se "
+"niega a realizar la solicitud utilizando el protocolo actual, pero podría "
+"estar dispuesto a hacerlo después de que el cliente se actualice a un "
+"protocolo diferente."
-#: doc/classes/HTTPClient.xml:385
+#: doc/classes/HTTPClient.xml:386
msgid ""
"HTTP status code [code]428 Precondition Required[/code]. The origin server "
"requires the request to be conditional."
msgstr ""
+"Código de estado HTTP [code]428 Precondition Required[/code]. El servidor de "
+"origen requiere que la petición sea condicional."
-#: doc/classes/HTTPClient.xml:388
+#: doc/classes/HTTPClient.xml:389
msgid ""
"HTTP status code [code]429 Too Many Requests[/code]. The user has sent too "
"many requests in a given amount of time (see \"rate limiting\"). Back off "
"and increase time between requests or try again later."
msgstr ""
+"Código de estado HTTP [code]429 Too Many Requests[/code]. El usuario ha "
+"enviado demasiadas solicitudes en un período de tiempo determinado (véase "
+"\"limitación de la tasa\"). Retroceda y aumente el tiempo entre las "
+"solicitudes o inténtelo de nuevo más tarde."
-#: doc/classes/HTTPClient.xml:391
+#: doc/classes/HTTPClient.xml:392
msgid ""
"HTTP status code [code]431 Request Header Fields Too Large[/code]. The "
"server is unwilling to process the request because its header fields are too "
"large. The request MAY be resubmitted after reducing the size of the request "
"header fields."
msgstr ""
+"Código de estado HTTP [code]431 Request Header Fields Too Large[/code]. El "
+"servidor no está dispuesto a procesar la solicitud porque los campos de la "
+"cabecera son demasiado grandes. La solicitud PUEDE volver a enviarse después "
+"de reducir el tamaño de los campos de la cabecera de la solicitud."
-#: doc/classes/HTTPClient.xml:394
+#: doc/classes/HTTPClient.xml:395
msgid ""
"HTTP status code [code]451 Response Unavailable For Legal Reasons[/code]. "
"The server is denying access to the resource as a consequence of a legal "
"demand."
msgstr ""
+"Código de estado HTTP [code]451 Response Unavailable for Legal Reasons[/"
+"code]. El servidor está negando el acceso al recurso como consecuencia de "
+"una demanda legal."
-#: doc/classes/HTTPClient.xml:397
+#: doc/classes/HTTPClient.xml:398
msgid ""
"HTTP status code [code]500 Internal Server Error[/code]. The server "
"encountered an unexpected condition that prevented it from fulfilling the "
"request."
msgstr ""
+"Código de estado HTTP [code]500 Internal Server Error[/code]. El servidor se "
+"encontró con una condición inesperada que le impidió cumplir con la "
+"solicitud."
-#: doc/classes/HTTPClient.xml:400
+#: doc/classes/HTTPClient.xml:401
msgid ""
"HTTP status code [code]501 Not Implemented[/code]. The server does not "
"support the functionality required to fulfill the request."
msgstr ""
+"Código de estado HTTP [code]501 Not Implemented[/code]. El servidor no "
+"soporta la funcionalidad requerida para cumplir con la solicitud."
-#: doc/classes/HTTPClient.xml:403
+#: doc/classes/HTTPClient.xml:404
msgid ""
"HTTP status code [code]502 Bad Gateway[/code]. The server, while acting as a "
"gateway or proxy, received an invalid response from an inbound server it "
"accessed while attempting to fulfill the request. Usually returned by load "
"balancers or proxies."
msgstr ""
+"Código de estado HTTP [code]502 Bad Gateway[/code]. El servidor, mientras "
+"actuaba como gateway o proxy, recibió una respuesta inválida de un servidor "
+"entrante al que accedió mientras intentaba cumplir la solicitud. Normalmente "
+"devuelta por los balanceadores de carga o proxies."
-#: doc/classes/HTTPClient.xml:406
+#: doc/classes/HTTPClient.xml:407
msgid ""
"HTTP status code [code]503 Service Unavailable[/code]. The server is "
"currently unable to handle the request due to a temporary overload or "
"scheduled maintenance, which will likely be alleviated after some delay. Try "
"again later."
msgstr ""
+"Código de estado HTTP [code]503 Service Unavailable[/code]. El servidor no "
+"puede actualmente atender la solicitud debido a una sobrecarga temporal o a "
+"un mantenimiento programado, que probablemente se aliviará después de algún "
+"retraso. Inténtelo de nuevo más tarde."
-#: doc/classes/HTTPClient.xml:409
+#: doc/classes/HTTPClient.xml:410
msgid ""
"HTTP status code [code]504 Gateway Timeout[/code]. The server, while acting "
"as a gateway or proxy, did not receive a timely response from an upstream "
"server it needed to access in order to complete the request. Usually "
"returned by load balancers or proxies."
msgstr ""
+"Código de estado HTTP [code]504 Gateway Timeout[/code]. El servidor, aunque "
+"actuaba como gateway o proxy, no recibía una respuesta oportuna de un "
+"servidor ascendente al que necesitaba acceder para completar la solicitud. "
+"Normalmente se devuelve por los balanceadores de carga o proxies."
-#: doc/classes/HTTPClient.xml:412
+#: doc/classes/HTTPClient.xml:413
msgid ""
"HTTP status code [code]505 HTTP Version Not Supported[/code]. The server "
"does not support, or refuses to support, the major version of HTTP that was "
"used in the request message."
msgstr ""
+"Código de estado HTTP [code]505 Versión HTTP Not Supported[/code]. El "
+"servidor no soporta, o se niega a soportar, la versión principal de HTTP que "
+"se utilizó en el mensaje de solicitud."
-#: doc/classes/HTTPClient.xml:415
+#: doc/classes/HTTPClient.xml:416
msgid ""
"HTTP status code [code]506 Variant Also Negotiates[/code]. The server has an "
"internal configuration error: the chosen variant resource is configured to "
"engage in transparent content negotiation itself, and is therefore not a "
"proper end point in the negotiation process."
msgstr ""
+"Código de estado HTTP [code]506 Variant Also Negotiates[/code]. El servidor "
+"tiene un error de configuración interna: el recurso de la variante elegida "
+"está configurado para participar en una negociación de contenido "
+"transparente en sí misma, y por lo tanto no es un punto final adecuado en el "
+"proceso de negociación."
-#: doc/classes/HTTPClient.xml:418
+#: doc/classes/HTTPClient.xml:419
msgid ""
"HTTP status code [code]507 Insufficient Storage[/code]. The method could not "
"be performed on the resource because the server is unable to store the "
"representation needed to successfully complete the request."
msgstr ""
+"Código de estado HTTP [code]507 Insufficient Storage[/code]. El método no "
+"pudo realizarse en el recurso porque el servidor no puede almacenar la "
+"representación necesaria para completar con éxito la solicitud."
-#: doc/classes/HTTPClient.xml:421
+#: doc/classes/HTTPClient.xml:422
msgid ""
"HTTP status code [code]508 Loop Detected[/code]. The server terminated an "
"operation because it encountered an infinite loop while processing a request "
"with \"Depth: infinity\". This status indicates that the entire operation "
"failed."
msgstr ""
+"Código de estado HTTP [code]508 Loop Detected[/code]. El servidor terminó "
+"una operación porque encontró un bucle infinito mientras procesaba una "
+"petición con \"Depth:infinity\". Este estado indica que la operación entera "
+"falló."
-#: doc/classes/HTTPClient.xml:424
+#: doc/classes/HTTPClient.xml:425
msgid ""
"HTTP status code [code]510 Not Extended[/code]. The policy for accessing the "
"resource has not been met in the request. The server should send back all "
"the information necessary for the client to issue an extended request."
msgstr ""
+"Código de estado HTTP [code]510 Not Extended[/code]. La política de acceso "
+"al recurso no se ha cumplido en la solicitud. El servidor debería devolver "
+"toda la información necesaria para que el cliente emita una solicitud "
+"extendida."
-#: doc/classes/HTTPClient.xml:427
+#: doc/classes/HTTPClient.xml:428
msgid ""
"HTTP status code [code]511 Network Authentication Required[/code]. The "
"client needs to authenticate to gain network access."
msgstr ""
+"Código de estado HTTP [code]511 Network Authentication Required[/code]. El "
+"cliente necesita autenticarse para obtener acceso a la red."
#: doc/classes/HTTPRequest.xml:4
msgid "A node with the ability to send HTTP(S) requests."
-msgstr ""
+msgstr "Un nodo con la capacidad de enviar peticiones HTTP(S)."
#: doc/classes/HTTPRequest.xml:7
+#, fuzzy
msgid ""
"A node with the ability to send HTTP requests. Uses [HTTPClient] "
"internally.\n"
@@ -26598,12 +33085,21 @@ msgid ""
" http_request.connect(\"request_completed\", self, "
"\"_http_request_completed\")\n"
"\n"
-" # Perform the HTTP request. The URL below returns some JSON as of "
-"writing.\n"
+" # Perform a GET request. The URL below returns JSON as of writing.\n"
" var error = http_request.request(\"https://httpbin.org/get\")\n"
" if error != OK:\n"
" push_error(\"An error occurred in the HTTP request.\")\n"
"\n"
+" # Perform a POST request. The URL below returns JSON as of writing.\n"
+" # Note: Don't make simultaneous requests using a single HTTPRequest "
+"node.\n"
+" # The snippet below is provided for reference only.\n"
+" var body = {\"name\": \"Godette\"}\n"
+" var error = http_request.request(\"https://httpbin.org/post\", [], true, "
+"HTTPClient.METHOD_POST, body)\n"
+" if error != OK:\n"
+" push_error(\"An error occurred in the HTTP request.\")\n"
+"\n"
"\n"
"# Called when the HTTP request is completed.\n"
"func _http_request_completed(result, response_code, headers, body):\n"
@@ -26643,38 +33139,113 @@ msgid ""
" var texture_rect = TextureRect.new()\n"
" add_child(texture_rect)\n"
" texture_rect.texture = texture\n"
+"[/codeblock]\n"
+"[b]Note:[/b] When performing HTTP requests from a project exported to HTML5, "
+"keep in mind the remote server may not allow requests from foreign origins "
+"due to [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/"
+"url]. If you host the server in question, you should modify its backend to "
+"allow requests from foreign origins by adding the [code]Access-Control-Allow-"
+"Origin: *[/code] HTTP header."
+msgstr ""
+"Un nodo con la capacidad de enviar peticiones HTTP. Utiliza [HTTPClient] "
+"internamente.\n"
+"Puede ser usado para hacer peticiones HTTP, es decir, descargar o subir "
+"archivos o contenido web a través de HTTP.\n"
+"[b]Ejemplo de contactar una REST API e imprimir uno de sus campos devueltos:"
+"[/b]\n"
+"[codeblock]\n"
+"func _ready():\n"
+" # Crear un nodo de solicitud HTTP y conectar su señal de finalización.\n"
+" var http_request = HTTPRequest.new()\n"
+" add_child(http_request)\n"
+" http_request.connect(\"request_completed\", self, "
+"\"_http_request_completed\")\n"
+"\n"
+" # Realizar la petición HTTP. La siguiente URL devuelve algo de JSON al "
+"momento de escribir.\n"
+" var error = http_request.request(\"https://httpbin.org/get\")\n"
+" iferror != OK:\n"
+" push_error(\"Se ha producido un error en la solicitud HTTP\")\n"
+"\n"
+"\n"
+"# Llamado cuando la petición HTTP se completa.\n"
+"func _http_request_completed(result, response_code, headers, body):\n"
+" var response = parse_json(body.get_string_from_utf8())\n"
+"\n"
+" # Imprimirá la cadena de agente de usuario usada por el nodo HTTPRequest "
+"(como lo reconoce httpbin.org).\n"
+" print(response.headers[\"User-Agent\"])\n"
+"[/codeblock]\n"
+"[b]Ejemplo de carga y visualización de una imagen mediante HTTPRequest:[/b]\n"
+"[codeblock]\n"
+"func _ready():\n"
+" # Crear un nodo de solicitud HTTP y conectar su señal de finalización.\n"
+" var http_request = HTTPRequest.new()\n"
+" add_child(http_request)\n"
+" http_request.connect(\"request_completed\", self, "
+"\"_http_request_completed\")\n"
+"\n"
+" # Realizar la petición HTTP. La siguiente URL devuelve una imagen PNG al "
+"momento de escribir.\n"
+" var error = http_request.request(\"https://via.placeholder.com/512\")\n"
+" if error != OK:\n"
+" push_error(\"Se ha producido un error en la solicitud HTTP\")\n"
+"\n"
+"\n"
+"# Llamado cuando la petición HTTP se completa.\n"
+"func _http_request_completed(result, response_code, headers, body):\n"
+" var image = Image.new()\n"
+" var error = image.load_png_from_buffer(body)\n"
+" if error != OK:\n"
+" push_error(\"No se pudo cargar la imagen.\")\n"
+"\n"
+" var texture = ImageTexture.new()\n"
+" texture.create_from_image(image)\n"
+"\n"
+" # Mostrar la imagen en un nodo de TextureRect.\n"
+" var texture_rect = TextureRect.new()\n"
+" add_child(texture_rect)\n"
+" texture_rect.texture = texture\n"
"[/codeblock]"
-msgstr ""
-#: doc/classes/HTTPRequest.xml:61
+#: doc/classes/HTTPRequest.xml:70
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/"
"http_request_class.html"
msgstr ""
+"https://docs.godotengine.org/es/latest/tutorials/networking/"
+"http_request_class.html"
-#: doc/classes/HTTPRequest.xml:69
+#: doc/classes/HTTPRequest.xml:78
msgid "Cancels the current request."
-msgstr ""
+msgstr "Cancela la solicitud actual."
-#: doc/classes/HTTPRequest.xml:76
+#: doc/classes/HTTPRequest.xml:85
msgid ""
"Returns the response body length.\n"
"[b]Note:[/b] Some Web servers may not send a body length. In this case, the "
"value returned will be [code]-1[/code]. If using chunked transfer encoding, "
"the body length will also be [code]-1[/code]."
msgstr ""
+"Devuelve la longitud del cuerpo de respuesta.\n"
+"[b]Nota:[/b] Algunos servidores web pueden no enviar la longitud del cuerpo. "
+"En este caso, el valor devuelto será [code]-1[/code]. Si se utiliza la "
+"codificación de transferencia de trozos, la longitud del cuerpo también será "
+"[code]-1[/code]."
-#: doc/classes/HTTPRequest.xml:84
+#: doc/classes/HTTPRequest.xml:93
msgid "Returns the amount of bytes this HTTPRequest downloaded."
-msgstr ""
+msgstr "Devuelve la cantidad de bytes que esta HTTPRequest ha descargado."
-#: doc/classes/HTTPRequest.xml:91
+#: doc/classes/HTTPRequest.xml:100
msgid ""
"Returns the current status of the underlying [HTTPClient]. See [enum "
"HTTPClient.Status]."
msgstr ""
+"Devuelve el estado actual del [HTTPClient] subyacente. Véase [enumerar el "
+"HTTPClient.Status]."
-#: doc/classes/HTTPRequest.xml:108
+#: doc/classes/HTTPRequest.xml:117
msgid ""
"Creates request on the underlying [HTTPClient]. If there is no configuration "
"errors, it tries to connect using [method HTTPClient.connect_to_host] and "
@@ -26686,82 +33257,101 @@ msgid ""
"[constant ERR_CANT_CONNECT] if not using thread and the [HTTPClient] cannot "
"connect to host."
msgstr ""
-
-#: doc/classes/HTTPRequest.xml:115
+"Crea una solicitud en el [HTTPClient] subyacente. Si no hay errores de "
+"configuración, intenta conectarse usando [method HTTPClient.connect_to_host] "
+"y pasa los parámetros a [method HTTPClient.request].\n"
+"Devuelve [constant OK] si la petición se crea con éxito. (No implica que el "
+"servidor haya respondido), [constante ERR_UNCONFIGURED] si no está en el "
+"árbol, [constant ERR_BUSY] si aún está procesando la solicitud anterior, "
+"[constant ERR_INVALID_PARAMETER] si la cadena dada no es un formato de URL "
+"válido, o [constanteERR_CANT_CONNECT] si no está usando el hilo y el "
+"[HTTPClient] no puede conectarse al host."
+
+#: doc/classes/HTTPRequest.xml:124
msgid "Maximum allowed size for response bodies."
-msgstr ""
+msgstr "Tamaño máximo permitido para los cuerpos de la respuesta."
-#: doc/classes/HTTPRequest.xml:118
+#: doc/classes/HTTPRequest.xml:127
msgid ""
"The size of the buffer used and maximum bytes to read per iteration. See "
"[member HTTPClient.read_chunk_size].\n"
"Set this to a higher value (e.g. 65536 for 64 KiB) when downloading large "
"files to achieve better speeds at the cost of memory."
msgstr ""
+"El tamaño del buffer utilizado y el máximo de bytes a leer por iteración. "
+"Ver [member HTTPClient.read_chunk_size].\n"
+"Ponga este valor más alto (por ejemplo, 65536 para 64 KiB) cuando descargue "
+"archivos grandes para lograr mejores velocidades a costa de la memoria."
-#: doc/classes/HTTPRequest.xml:122
+#: doc/classes/HTTPRequest.xml:131
msgid "The file to download into. Will output any received file into it."
msgstr ""
+"El archivo para descargar. dará salida a cualquier archivo recibido en él."
-#: doc/classes/HTTPRequest.xml:125
+#: doc/classes/HTTPRequest.xml:134
msgid "Maximum number of allowed redirects."
-msgstr ""
+msgstr "Número máximo de redirecciones permitidas."
-#: doc/classes/HTTPRequest.xml:130
+#: doc/classes/HTTPRequest.xml:139
msgid "If [code]true[/code], multithreading is used to improve performance."
msgstr ""
+"Si [code]true[/code], se utiliza el multihilo para mejorar el rendimiento."
-#: doc/classes/HTTPRequest.xml:144
+#: doc/classes/HTTPRequest.xml:153
msgid "Emitted when a request is completed."
-msgstr ""
+msgstr "Emitido cuando se completa una solicitud."
-#: doc/classes/HTTPRequest.xml:150
+#: doc/classes/HTTPRequest.xml:159
msgid "Request successful."
-msgstr ""
+msgstr "Solicitud con éxito."
-#: doc/classes/HTTPRequest.xml:155
+#: doc/classes/HTTPRequest.xml:164
msgid "Request failed while connecting."
-msgstr ""
+msgstr "La solicitud falló mientras se conectaba."
-#: doc/classes/HTTPRequest.xml:158
+#: doc/classes/HTTPRequest.xml:167
msgid "Request failed while resolving."
-msgstr ""
+msgstr "La solicitud falló al resolverse."
-#: doc/classes/HTTPRequest.xml:161
+#: doc/classes/HTTPRequest.xml:170
msgid "Request failed due to connection (read/write) error."
-msgstr ""
+msgstr "La solicitud falló debido a un error de conexión (lectura/escritura)."
-#: doc/classes/HTTPRequest.xml:164
+#: doc/classes/HTTPRequest.xml:173
msgid "Request failed on SSL handshake."
-msgstr ""
+msgstr "La solicitud falló en el handshake del SSL."
-#: doc/classes/HTTPRequest.xml:167
+#: doc/classes/HTTPRequest.xml:176
msgid "Request does not have a response (yet)."
-msgstr ""
+msgstr "La solicitud no tiene respuesta (todavía)."
-#: doc/classes/HTTPRequest.xml:170
+#: doc/classes/HTTPRequest.xml:179
msgid "Request exceeded its maximum size limit, see [member body_size_limit]."
msgstr ""
+"La solicitud excedió su límite de tamaño máximo, ver [member "
+"body_size_limit]."
-#: doc/classes/HTTPRequest.xml:173
+#: doc/classes/HTTPRequest.xml:182
msgid "Request failed (currently unused)."
-msgstr ""
+msgstr "Solicitud fallida (actualmente no utilizada)."
-#: doc/classes/HTTPRequest.xml:176
+#: doc/classes/HTTPRequest.xml:185
msgid "HTTPRequest couldn't open the download file."
-msgstr ""
+msgstr "HTTPRequest no pudo abrir el archivo descargado."
-#: doc/classes/HTTPRequest.xml:179
+#: doc/classes/HTTPRequest.xml:188
msgid "HTTPRequest couldn't write to the download file."
-msgstr ""
+msgstr "HTTPRequest no pudo escribir el archivo descargado."
-#: doc/classes/HTTPRequest.xml:182
+#: doc/classes/HTTPRequest.xml:191
msgid "Request reached its maximum redirect limit, see [member max_redirects]."
msgstr ""
+"La solicitud alcanzó su límite máximo de redireccionamiento, ver [member "
+"max_redirects]."
#: doc/classes/Image.xml:4
msgid "Image datatype."
-msgstr ""
+msgstr "Tipo de datos de imagen."
#: doc/classes/Image.xml:7
msgid ""
@@ -26772,12 +33362,21 @@ msgid ""
"[b]Note:[/b] The maximum image size is 16384×16384 pixels due to graphics "
"hardware limitations. Larger images will fail to import."
msgstr ""
+"Tipo de datos imagen nativa. Contiene datos de imagen, que pueden ser "
+"convertidos en un [Texture2D], y varias funciones para interactuar con él. "
+"El máximo ancho y alto para una [Image] son [constant MAX_WIDTH] y [constant "
+"MAX_HEIGHT].\n"
+"[b]Nota:[/b] El tamaño máximo de la imagen es de 16384×16384 píxeles debido "
+"a las limitaciones del hardware de gráficos. Las imágenes más grandes no se "
+"importarán."
#: doc/classes/Image.xml:23
msgid ""
"Alpha-blends [code]src_rect[/code] from [code]src[/code] image to this image "
"at coordinates [code]dest[/code]."
msgstr ""
+"Mezcla usando Alfa [code]src_rect[/code] de la imagen [code]src[/code] a "
+"esta imagen en las coordenadas [code]dest[/code]."
#: doc/classes/Image.xml:38
msgid ""
@@ -26789,12 +33388,22 @@ msgid ""
"[code]mask[/code] image [b]must[/b] have the same size (width and height) "
"but they can have different formats."
msgstr ""
+"Mezcla usando alfa[code]src_rect[/code] de la imagen [code]src[/code] a esta "
+"imagen usando la imagen [code]mask[/code] en las coordenadas [code]dst[/"
+"code]. Se requieren canales alfa tanto para [code]src[/code] como para "
+"[code]mask[/code]. Los píxeles de [code]dst[/code] y los píxeles de "
+"[code]src[/code] se mezclarán si el valor alfa del píxel de la máscara "
+"correspondiente no es 0. La imagen [code]src[/code] y la imagen [code]mask[/"
+"code] [b] deben[/b] tener el mismo tamaño (ancho y alto) pero pueden tener "
+"formatos diferentes."
#: doc/classes/Image.xml:51
msgid ""
"Copies [code]src_rect[/code] from [code]src[/code] image to this image at "
"coordinates [code]dst[/code]."
msgstr ""
+"Copia [code]src_rect[/code] de la imagen [code]src[/code] a esta imagen en "
+"las coordenadas [code]dst[/code]."
#: doc/classes/Image.xml:66
msgid ""
@@ -26805,16 +33414,25 @@ msgid ""
"[b]must[/b] have the same size (width and height) but they can have "
"different formats."
msgstr ""
+"[code]src_rect[/code] área de bits de la imagen [code]src[/code] a esta "
+"imagen en las coordenadas dadas por [code]dst[/code]. El pixel de [code]src[/"
+"code] se copia en [code]dst[/code] si el valor alfa del pixel "
+"correspondiente de [code]mask[/code] no es 0. La imagen [code]src[/code] y "
+"la imagen [code]mask[/code] [b]deben[/b] tener el mismo tamaño (anchura y "
+"altura) pero pueden tener formatos diferentes."
#: doc/classes/Image.xml:75
msgid ""
"Converts a bumpmap to a normalmap. A bumpmap provides a height offset per-"
"pixel, while a normalmap provides a normal direction per pixel."
msgstr ""
+"Convierte un bumpmap en un mapa normal. Un bumpmap proporciona un "
+"desplazamiento de altura por píxel, mientras que un mapa normal proporciona "
+"una dirección normal por píxel."
#: doc/classes/Image.xml:82
msgid "Removes the image's mipmaps."
-msgstr ""
+msgstr "Elimina los mipmaps de la imagen."
#: doc/classes/Image.xml:95
msgid ""
@@ -26823,14 +33441,18 @@ msgid ""
"is not available. See [enum CompressMode] and [enum CompressSource] "
"constants."
msgstr ""
+"Comprime la imagen para usar menos memoria. No se puede acceder directamente "
+"a los datos de los píxeles mientras la imagen está comprimida. Devuelve el "
+"error si el modo de compresión elegido no está disponible. Vea las "
+"constantes [enum CompressMode] y [enum CompressSource]."
#: doc/classes/Image.xml:116
msgid "Converts the image's format. See [enum Format] constants."
-msgstr ""
+msgstr "Convierte el formato de la imagen. Ver las constantes [enum Format]."
#: doc/classes/Image.xml:125
msgid "Copies [code]src[/code] image to this image."
-msgstr ""
+msgstr "Copia la imagen [code]src[/code] a esta imagen."
#: doc/classes/Image.xml:140
msgid ""
@@ -26838,6 +33460,9 @@ msgid ""
"constants. If [code]use_mipmaps[/code] is [code]true[/code] then generate "
"mipmaps for this image. See the [method generate_mipmaps]."
msgstr ""
+"Crea una imagen vacía de un tamaño y formato determinados. Ver las "
+"constantes [enum Format]. Si [code]use_mipmaps[/code] es [code]true[/code] "
+"entonces genera mipmaps para esta imagen. Ver el [method generate_mipmaps]."
#: doc/classes/Image.xml:157
msgid ""
@@ -26846,6 +33471,10 @@ msgid ""
"[code]true[/code] then loads mipmaps for this image from [code]data[/code]. "
"See [method generate_mipmaps]."
msgstr ""
+"Crea una nueva imagen de un tamaño y formato determinado. Ver las constantes "
+"[enum Format]. Llena la imagen con los datos en bruto dados. Si "
+"[code]use_mipmaps[/code] es [code]true[/code] entonces carga los mipmaps de "
+"esta imagen a partir de [code]data[/code]. Ver [method generate_mipmaps]."
#: doc/classes/Image.xml:168
msgid ""
@@ -26853,12 +33482,17 @@ msgid ""
"the specified size is larger than the current size, the extra area is filled "
"with black pixels."
msgstr ""
+"Recorta la imagen al [code]width[/code] y [code]alto[/code] dados. Si el "
+"tamaño especificado es mayor que el actual, el área extra se rellena con "
+"píxeles negros."
#: doc/classes/Image.xml:175
msgid ""
"Decompresses the image if it is compressed. Returns an error if decompress "
"function is not available."
msgstr ""
+"Descomprime la imagen si está comprimida. Devuelve un error si la función de "
+"descompresión no está disponible."
#: doc/classes/Image.xml:182
msgid ""
@@ -26866,22 +33500,26 @@ msgid ""
"Returns [constant ALPHA_BIT] if all the alpha values are stored in a single "
"bit. Returns [constant ALPHA_NONE] if no data for alpha values is found."
msgstr ""
+"Devuelve [constant ALPHA_BLEND] si la imagen tiene datos para valores alfa. "
+"Devuelve [constant ALPHA_BIT] si todos los valores alfa están almacenados en "
+"un solo bit. Devuelve [constant ALFA_NONE] si no se encuentran datos para "
+"valores alfa."
#: doc/classes/Image.xml:199
msgid "Fills the image with a given [Color]."
-msgstr ""
+msgstr "Llena la imagen con un determinado [Color]."
#: doc/classes/Image.xml:206
msgid "Blends low-alpha pixels with nearby pixels."
-msgstr ""
+msgstr "Mezcla píxeles con el nivel alfa bajo con píxeles cercanos."
#: doc/classes/Image.xml:213
msgid "Flips the image horizontally."
-msgstr ""
+msgstr "Voltea la imagen horizontalmente."
#: doc/classes/Image.xml:220
msgid "Flips the image vertically."
-msgstr ""
+msgstr "Voltea la imagen verticalmente."
#: doc/classes/Image.xml:229
msgid ""
@@ -26891,24 +33529,32 @@ msgid ""
"performance of the rendering. Returns an error if the image is compressed, "
"in a custom format or if the image's width/height is 0."
msgstr ""
+"Genera mipmaps para la imagen. Los mipmaps son copias precalculadas y de "
+"menor resolución de la imagen. Los mipmaps se utilizan automáticamente si la "
+"imagen necesita ser reducida cuando se renderiza. Esto mejora la calidad de "
+"la imagen y el rendimiento de la renderización. Devuelve un error si la "
+"imagen está comprimida, en un formato personalizado o si el ancho/alto de la "
+"imagen es 0."
#: doc/classes/Image.xml:236
msgid "Returns the image's raw data."
-msgstr ""
+msgstr "Devuelve los datos en bruto de la imagen."
#: doc/classes/Image.xml:243
msgid "Returns the image's format. See [enum Format] constants."
-msgstr ""
+msgstr "Devuelve el formato de la imagen. Ver las constantes [enum Format]."
#: doc/classes/Image.xml:250
msgid "Returns the image's height."
-msgstr ""
+msgstr "Devuelve la altura de la imagen."
#: doc/classes/Image.xml:259
msgid ""
"Returns the offset where the image's mipmap with index [code]mipmap[/code] "
"is stored in the [code]data[/code] dictionary."
msgstr ""
+"Devuelve el desplazamiento donde el mipmap de la imagen con el índice "
+"[code]mipmap[/code] se almacena en el diccionario [code]data[/code]."
#: doc/classes/Image.xml:270
msgid ""
@@ -26916,6 +33562,9 @@ msgid ""
"[method get_pixelv], but with two integer arguments instead of a [Vector2] "
"argument."
msgstr ""
+"Devuelve el color del píxel en [code](x, y)[/code]. Es lo mismo que [method "
+"get_pixelv], pero con dos argumentos enteros en lugar de un argumento "
+"[Vector2]."
#: doc/classes/Image.xml:279
msgid ""
@@ -26923,44 +33572,54 @@ msgid ""
"[method get_pixel], but with a [Vector2] argument instead of two integer "
"arguments."
msgstr ""
+"Devuelve el color del píxel en [code]src[/code]. Es lo mismo que [method "
+"get_pixel], pero con un argumento [Vector2] en lugar de dos argumentos "
+"enteros."
#: doc/classes/Image.xml:288
msgid ""
"Returns a new image that is a copy of the image's area specified with "
"[code]rect[/code]."
msgstr ""
+"Devuelve una nueva imagen que es una copia del área de la imagen "
+"especificada con [code]rect[/code]."
#: doc/classes/Image.xml:295
msgid "Returns the image's size (width and height)."
-msgstr ""
+msgstr "Devuelve el tamaño de la imagen (anchura y altura)."
#: doc/classes/Image.xml:302
msgid ""
"Returns a [Rect2] enclosing the visible portion of the image, considering "
"each pixel with a non-zero alpha channel as visible."
msgstr ""
+"Devuelve un [Rect2] que encierra la porción visible de la imagen, "
+"considerando cada píxel con un canal alfa no nulo como visible."
#: doc/classes/Image.xml:309
msgid "Returns the image's width."
-msgstr ""
+msgstr "Devuelve el ancho de la imagen."
#: doc/classes/Image.xml:316
msgid "Returns [code]true[/code] if the image has generated mipmaps."
-msgstr ""
+msgstr "Devuelve [code]true[/code] si la imagen ha generado mipmaps."
#: doc/classes/Image.xml:323
msgid "Returns [code]true[/code] if the image is compressed."
-msgstr ""
+msgstr "Devuelve [code]true[/code] si la imagen está comprimida."
#: doc/classes/Image.xml:330
msgid "Returns [code]true[/code] if the image has no data."
-msgstr ""
+msgstr "Devuelve [code]true[/code] si la imagen no tiene datos."
#: doc/classes/Image.xml:337
msgid ""
"Returns [code]true[/code] if all the image's pixels have an alpha value of "
"0. Returns [code]false[/code] if any pixel has an alpha value higher than 0."
msgstr ""
+"Devuelve [code]true[/code] si todos los píxeles de la imagen tienen un valor "
+"alfa de 0. Devuelve [code]false[/code] si algún píxel tiene un valor alfa "
+"superior a 0."
#: doc/classes/Image.xml:346
msgid ""
@@ -26969,52 +33628,75 @@ msgid ""
"html#supported-image-formats]Supported image formats[/url] for a list of "
"supported image formats and limitations."
msgstr ""
+"Carga una imagen del archivo [code]path[/code]. Ver [url=https://docs."
+"godotengine.org/en/latest/getting_started/workflow/assets/importing_images."
+"html#supported-image-formats]Formatos de imagen soportados[/url] para una "
+"lista de formatos de imagen soportados y sus limitaciones."
#: doc/classes/Image.xml:355
msgid "Loads an image from the binary contents of a JPEG file."
-msgstr ""
+msgstr "Carga una imagen del contenido binario de un archivo JPEG."
#: doc/classes/Image.xml:364
msgid "Loads an image from the binary contents of a PNG file."
-msgstr ""
+msgstr "Carga una imagen del contenido binario de un archivo PNG."
#: doc/classes/Image.xml:373
+#, fuzzy
+msgid "Loads an image from the binary contents of a TGA file."
+msgstr "Carga una imagen del contenido binario de un archivo PNG."
+
+#: doc/classes/Image.xml:382
msgid "Loads an image from the binary contents of a WebP file."
-msgstr ""
+msgstr "Carga una imagen del contenido binario de un archivo WebP."
-#: doc/classes/Image.xml:380
+#: doc/classes/Image.xml:389
msgid ""
"Converts the image's data to represent coordinates on a 3D plane. This is "
"used when the image represents a normalmap. A normalmap can add lots of "
"detail to a 3D surface without increasing the polygon count."
msgstr ""
+"Convierte los datos de la imagen para representar las coordenadas en un "
+"plano 3D. Esto se usa cuando la imagen representa un mapa normal. Un mapa "
+"normal puede añadir muchos detalles a una superficie tridimensional sin "
+"aumentar el número de polígonos."
-#: doc/classes/Image.xml:387
+#: doc/classes/Image.xml:396
msgid ""
"Multiplies color values with alpha values. Resulting color values for a "
"pixel are [code](color * alpha)/256[/code]."
msgstr ""
+"Multiplica los valores de color por los valores alfa. Los valores de color "
+"resultantes para un píxel son [code](color * alfa)/256[/code]."
-#: doc/classes/Image.xml:400
+#: doc/classes/Image.xml:409
msgid ""
"Resizes the image to the given [code]width[/code] and [code]height[/code]. "
"New pixels are calculated using [code]interpolation[/code]. See "
"[code]interpolation[/code] constants."
msgstr ""
+"Redimensiona la imagen al [code]width[/code] y [code]height[/code] dados. "
+"Los nuevos píxeles se calculan usando [code]interpolation[/code]. Ver las "
+"constantes de [code]interpolation[/code]."
-#: doc/classes/Image.xml:409
+#: doc/classes/Image.xml:418
msgid ""
"Resizes the image to the nearest power of 2 for the width and height. If "
"[code]square[/code] is [code]true[/code] then set width and height to be the "
"same."
msgstr ""
+"Redimensiona la imagen a la potencia más cercana de 2 para el ancho y la "
+"altura. Si [code]square[/code] es [code]true[/code] entonces establece que "
+"el ancho y el alto sean iguales."
-#: doc/classes/Image.xml:416
+#: doc/classes/Image.xml:425
msgid ""
"Converts a standard RGBE (Red Green Blue Exponent) image to an sRGB image."
msgstr ""
+"Convierte una imagen estándar RGBE (Red Green Blue Exponent) en una imagen "
+"sRGB."
-#: doc/classes/Image.xml:427
+#: doc/classes/Image.xml:436
msgid ""
"Saves the image as an EXR file to [code]path[/code]. If [code]grayscale[/"
"code] is [code]true[/code] and the image has only one channel, it will be "
@@ -27022,12 +33704,17 @@ msgid ""
"will return [constant ERR_UNAVAILABLE] if Godot was compiled without the "
"TinyEXR module."
msgstr ""
+"Guarda la imagen como un archivo EXR en [code]path[/code]. Si "
+"[code]grayscale[/code] es [code]true[/code] y la imagen tiene sólo un canal, "
+"se guardará explícitamente como monocromo en lugar de un canal rojo. Esta "
+"función devolverá [constant ERR_UNAVAILABLE] si Godot fue compilado sin el "
+"módulo TinyEXR."
-#: doc/classes/Image.xml:436
+#: doc/classes/Image.xml:445
msgid "Saves the image as a PNG file to [code]path[/code]."
-msgstr ""
+msgstr "Guarda la imagen como un archivo PNG en [code]path[/code]."
-#: doc/classes/Image.xml:455
+#: doc/classes/Image.xml:464
msgid ""
"Sets the [Color] of the pixel at [code](x, y)[/code]. Example:\n"
"[codeblock]\n"
@@ -27036,8 +33723,14 @@ msgid ""
"img.set_pixel(x, y, color)\n"
"[/codeblock]"
msgstr ""
+"Establece el [Color] del píxel en [code](x, y)[/code]. Ejemplo:\n"
+"[codeblock]\n"
+"var imagen = Image.new()\n"
+"imagen.create(imagen_ancho, imagen_alto, false, Image.FORMAT_RGBA8)\n"
+"imagen.set_pixel(x, y, color)\n"
+"[/codeblock]"
-#: doc/classes/Image.xml:471
+#: doc/classes/Image.xml:480
msgid ""
"Sets the [Color] of the pixel at [code](dst.x, dst.y)[/code]. Note that the "
"[code]dst[/code] values must be integers. Example:\n"
@@ -27047,128 +33740,175 @@ msgid ""
"img.set_pixelv(Vector2(x, y), color)\n"
"[/codeblock]"
msgstr ""
+"Establece el [Color] del píxel en [code](dst.x, dst.y)[/code]. Ten en cuenta "
+"que los valores de [code]dst[/code] deben ser enteros. Ejemplo:\n"
+"[codeblock]\n"
+"var imagen = Image.new()\n"
+"imagen.create(imagen_ancho, imagen_alto, false, Image.FORMAT_RGBA8)\n"
+"imagen.set_pixelv(Vector2(x, y), color)\n"
+"[/codeblock]"
-#: doc/classes/Image.xml:483
+#: doc/classes/Image.xml:492
msgid "Shrinks the image by a factor of 2."
-msgstr ""
+msgstr "Reduce la imagen en un factor de 2."
-#: doc/classes/Image.xml:490
+#: doc/classes/Image.xml:499
msgid "Converts the raw data from the sRGB colorspace to a linear scale."
msgstr ""
+"Convierte los datos en bruto del espacio de color sRGB a una escala lineal."
-#: doc/classes/Image.xml:496
+#: doc/classes/Image.xml:505
msgid ""
"Holds all of the image's color data in a given format. See [enum Format] "
"constants."
msgstr ""
+"Contiene todos los datos de color de la imagen en un formato determinado. "
+"Ver las constantes [enum Format]."
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:510
msgid "The maximal width allowed for [Image] resources."
-msgstr ""
+msgstr "El ancho máximo permitido para los recursos [Image]."
-#: doc/classes/Image.xml:504
+#: doc/classes/Image.xml:513
msgid "The maximal height allowed for [Image] resources."
-msgstr ""
+msgstr "La altura máxima permitida para los recursos [Image]."
-#: doc/classes/Image.xml:507
+#: doc/classes/Image.xml:516
msgid "Texture format with a single 8-bit depth representing luminance."
msgstr ""
+"Formato de textura con una única profundidad de 8 bits que representa la "
+"luminancia."
-#: doc/classes/Image.xml:510
+#: doc/classes/Image.xml:519
msgid ""
"OpenGL texture format with two values, luminance and alpha each stored with "
"8 bits."
msgstr ""
+"Formato de textura OpenGL con dos valores, luminancia y alfa, cada uno "
+"almacenado con 8 bits."
-#: doc/classes/Image.xml:513
+#: doc/classes/Image.xml:522
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
"bitdepth of 8."
msgstr ""
+"Formato de textura OpenGL [code]RED[/code] con un solo componente y una "
+"profundidad de bits de 8."
-#: doc/classes/Image.xml:516
+#: doc/classes/Image.xml:525
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
+"Formato de textura OpenGL [code]RG[/code] con dos componentes y una "
+"profundidad de bits de 8 para cada uno."
-#: doc/classes/Image.xml:519
+#: doc/classes/Image.xml:528
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
"[b]Note:[/b] When creating an [ImageTexture], an sRGB to linear color space "
"conversion is performed."
msgstr ""
+"Formato de textura OpenGL [code]RGB[/code] con tres componentes, cada uno "
+"con una profundidad de 8 bits.\n"
+"[b]Nota:[/b] Al crear una [ImageTexture], se realiza una conversión del "
+"espacio de color sRGB a lineal."
-#: doc/classes/Image.xml:523
+#: doc/classes/Image.xml:532
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
"[b]Note:[/b] When creating an [ImageTexture], an sRGB to linear color space "
"conversion is performed."
msgstr ""
+"Formato de textura OpenGL [code]RGB[/code] con tres componentes, cada uno "
+"con una profundidad de 8 bits.\n"
+"[b]Nota:[/b] Al crear una [ImageTexture], se realiza una conversión del "
+"espacio de color sRGB a lineal."
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:536
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
+"Formato de textura OpenGL [code]RGBA[/code] con cuatro componentes, cada uno "
+"con una profundidad de bits de 4."
-#: doc/classes/Image.xml:532
+#: doc/classes/Image.xml:541
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
+"Formato de textura OpenGL [code]GL_R32F[/code] donde hay un componente, un "
+"valor de 32 bits de punto flotante."
-#: doc/classes/Image.xml:535
+#: doc/classes/Image.xml:544
msgid ""
"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
"each a 32-bit floating-point values."
msgstr ""
+"Formato de textura OpenGL [code]GL_RG32F[/code] donde hay dos componentes, "
+"cada uno con valores de 32 bits de real."
-#: doc/classes/Image.xml:538
+#: doc/classes/Image.xml:547
msgid ""
"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
"components, each a 32-bit floating-point values."
msgstr ""
+"Formato de textura OpenGL [code]GL_RGB32F[/code] donde hay tres componentes, "
+"cada uno con valores de 32 bits real."
-#: doc/classes/Image.xml:541
+#: doc/classes/Image.xml:550
msgid ""
"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
"components, each a 32-bit floating-point values."
msgstr ""
+"Formato de textura OpenGL [code]GL_RGBA32F[/code] donde hay cuatro "
+"componentes, cada uno con valores de 32 bits real."
-#: doc/classes/Image.xml:544
+#: doc/classes/Image.xml:553
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 16-"
"bit \"half-precision\" floating-point value."
msgstr ""
+"Formato de textura OpenGL [code]GL_R32F[/code] donde hay un componente, un "
+"valor de punto flotante de 16 bits de \"media precisión\" real."
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:556
msgid ""
"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
"each a 16-bit \"half-precision\" floating-point value."
msgstr ""
+"Formato de textura OpenGL [code]GL_RG32F[/code] donde hay dos componentes, "
+"cada uno un valor de 16 bits de \"media precisión\" real."
-#: doc/classes/Image.xml:550
+#: doc/classes/Image.xml:559
msgid ""
"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
"components, each a 16-bit \"half-precision\" floating-point value."
msgstr ""
+"Formato de textura OpenGL [code]GL_RGB32F[/code] donde hay tres componentes, "
+"cada uno de ellos un valor de 16 bits de \"media precisión\" real."
-#: doc/classes/Image.xml:553
+#: doc/classes/Image.xml:562
msgid ""
"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
"components, each a 16-bit \"half-precision\" floating-point value."
msgstr ""
+"Formato de textura OpenGL [code]GL_RGBA32F[/code] donde hay cuatro "
+"componentes, cada uno de ellos un valor de 16 bits de \"media precisión\" "
+"real."
-#: doc/classes/Image.xml:556
+#: doc/classes/Image.xml:565
msgid ""
"A special OpenGL texture format where the three color components have 9 bits "
"of precision and all three share a single 5-bit exponent."
msgstr ""
+"Un formato especial de textura OpenGL donde los tres componentes de color "
+"tienen 9 bits de precisión y los tres comparten un único exponente de 5 bits."
-#: doc/classes/Image.xml:559
+#: doc/classes/Image.xml:568
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format that uses Block Compression 1, and is the smallest variation "
@@ -27177,8 +33917,14 @@ msgid ""
"[b]Note:[/b] When creating an [ImageTexture], an sRGB to linear color space "
"conversion is performed."
msgstr ""
+"El formato de textura [url=https://en.wikipedia.org/wiki/"
+"S3_Texture_Compression]S3TC[/url] que utiliza la Compresión de Bloque 1, y "
+"es la variación más pequeña de S3TC, sólo proporciona 1 bit de datos alfa y "
+"de color siendo premultiplicado con alfa.\n"
+"[b]Nota:[/b] Al crear una [ImageTexture], se realiza una conversión del "
+"espacio de color sRGB a lineal."
-#: doc/classes/Image.xml:563
+#: doc/classes/Image.xml:572
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format that uses Block Compression 2, and color data is interpreted "
@@ -27187,8 +33933,15 @@ msgid ""
"[b]Note:[/b] When creating an [ImageTexture], an sRGB to linear color space "
"conversion is performed."
msgstr ""
+"El formato de textura [url=https://en.wikipedia.org/wiki/"
+"S3_Texture_Compression]S3TC[/url] que utiliza la Compresión de Bloque 2, y "
+"los datos de color se interpretan como que no han sido premultiplicados por "
+"el alfa. Es muy adecuado para imágenes con transiciones alfa nítidas entre "
+"áreas translúcidas y opacas.\n"
+"[b]Nota:[/b] Al crear una [ImagenTexture], se realiza una conversión del "
+"espacio de color sRGB a lineal."
-#: doc/classes/Image.xml:567
+#: doc/classes/Image.xml:576
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format also known as Block Compression 3 or BC3 that contains 64 "
@@ -27198,24 +33951,41 @@ msgid ""
"[b]Note:[/b] When creating an [ImageTexture], an sRGB to linear color space "
"conversion is performed."
msgstr ""
+"El formato de textura [url=https://en.wikipedia.org/wiki/"
+"S3_Texture_Compression]S3TC[/url] también conocido como Compresión de Bloque "
+"3 o BC3 que contiene 64 bits de datos de canal alfa seguidos de 64 bits de "
+"datos de color codificados en DXT1. Los datos de color no son "
+"premultiplicados por el alfa, igual que el DXT3. DXT5 generalmente produce "
+"resultados superiores para gradientes transparentes en comparación con "
+"DXT3.\n"
+"[b]Nota:[/b] Al crear una [ImageTexture], se realiza una conversión del "
+"espacio de color sRGB a lineal."
-#: doc/classes/Image.xml:571
+#: doc/classes/Image.xml:580
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
"normalizing the red channel data using the same compression algorithm that "
"DXT5 uses for the alpha channel."
msgstr ""
+"Formato de textura que utiliza [url=https://www.khronos.org/opengl/wiki/"
+"Red_Green_Texture_Compression]Compresión de textura rojo-verde[/url], "
+"normalizando los datos del canal rojo utilizando el mismo algoritmo de "
+"compresión que DXT5 utiliza para el canal alfa."
-#: doc/classes/Image.xml:574
+#: doc/classes/Image.xml:583
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
"normalizing the red and green channel data using the same compression "
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
+"Formato de textura que utiliza [url=https://www.khronos.org/opengl/wiki/"
+"Red_Green_Texture_Compression]Compresión de textura rojo-verde[/url], "
+"normalizando los datos de los canales rojo y verde utilizando el mismo "
+"algoritmo de compresión que DXT5 utiliza para el canal alfa."
-#: doc/classes/Image.xml:577
+#: doc/classes/Image.xml:586
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -27223,22 +33993,33 @@ msgid ""
"[b]Note:[/b] When creating an [ImageTexture], an sRGB to linear color space "
"conversion is performed."
msgstr ""
+"Formato de textura que utiliza la compresión [url=https://www.khronos.org/"
+"opengl/wiki/BPTC_Texture_Compression]BPTC[/url] con componentes RGBA "
+"normalizados sin signo.\n"
+"[b]Nota:[/b] Al crear una [ImageTexture], se realiza una conversión del "
+"espacio de color sRGB a lineal."
-#: doc/classes/Image.xml:581
+#: doc/classes/Image.xml:590
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with signed floating-point "
"RGB components."
msgstr ""
+"Formato de textura que utiliza la compresión [url=https://www.khronos.org/"
+"opengl/wiki/BPTC_Texture_Compression]BPTC[/url] con componentes RGB reales "
+"firmados."
-#: doc/classes/Image.xml:584
+#: doc/classes/Image.xml:593
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned floating-point "
"RGB components."
msgstr ""
+"Formato de textura que utiliza la compresión [url=https://www.khronos.org/"
+"opengl/wiki/BPTC_Texture_Compression]BPTC[/url] con componentes RGB reales "
+"sin firmar."
-#: doc/classes/Image.xml:587
+#: doc/classes/Image.xml:596
msgid ""
"Texture format used on PowerVR-supported mobile platforms, uses 2-bit color "
"depth with no alpha. More information can be found [url=https://en.wikipedia."
@@ -27246,66 +34027,97 @@ msgid ""
"[b]Note:[/b] When creating an [ImageTexture], an sRGB to linear color space "
"conversion is performed."
msgstr ""
+"El formato de textura usado en las plataformas móviles soportadas por "
+"PowerVR, usa una profundidad de color de 2 bits sin alfa. Más información "
+"puede ser encontrada [url=https://en.wikipedia.org/wiki/PVRTC]aquí[/url].\n"
+"[b]Nota:[/b] Al crear una [ImageTexture], se realiza una conversión del "
+"espacio de color sRGB a lineal."
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:600
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
+"Igual que [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], pero con un "
+"componente alfa."
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:603
msgid ""
"Similar to [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with 4-"
"bit color depth and no alpha."
msgstr ""
+"Similar a [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], pero con "
+"una profundidad de color de 4 bits y sin alfa."
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:606
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
+"Igual que [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], pero con un "
+"componente alfa."
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:609
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
"url], also referred to as \"ETC1\", and is part of the OpenGL ES graphics "
"standard. This format cannot store an alpha channel."
msgstr ""
+"[url=https://en.wikipedia.org/wiki/Ericsson_Texture_Compression#ETC1]Formato "
+"de Compresión de Textura Ericsson 1[/url], también conocido como \"ETC1\", y "
+"es parte del estándar de gráficos OpenGL ES. Este formato no puede almacenar "
+"un canal alfa."
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:612
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
"format 2[/url] ([code]R11_EAC[/code] variant), which provides one channel of "
"unsigned data."
msgstr ""
+"[url=https://en.wikipedia.org/wiki/"
+"Ericsson_Texture_Compression#ETC2_and_EAC]Formato de compresión de textura "
+"Ericsson 2[/url] ([code]R11_EAC[/code] variant), que proporciona un canal de "
+"datos sin firmar."
-#: doc/classes/Image.xml:606
+#: doc/classes/Image.xml:615
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
"format 2[/url] ([code]SIGNED_R11_EAC[/code] variant), which provides one "
"channel of signed data."
msgstr ""
+"[url=https://en.wikipedia.org/wiki/"
+"Ericsson_Texture_Compression#ETC2_and_EAC]Formato de compresión de textura "
+"de Ericsson 2[/url] (variante de [code]SIGNED_R11_EAC[/code]), que "
+"proporciona un canal de datos firmado."
-#: doc/classes/Image.xml:609
+#: doc/classes/Image.xml:618
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
"format 2[/url] ([code]RG11_EAC[/code] variant), which provides two channels "
"of unsigned data."
msgstr ""
+"[url=https://en.wikipedia.org/wiki/"
+"Ericsson_Texture_Compression#ETC2_and_EAC]Formato de compresión de textura "
+"de Ericsson 2[/url] ([code]RG11_EAC[/code] variant), que proporciona dos "
+"canales de datos sin firmar."
-#: doc/classes/Image.xml:612
+#: doc/classes/Image.xml:621
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
"format 2[/url] ([code]SIGNED_RG11_EAC[/code] variant), which provides two "
"channels of signed data."
msgstr ""
+"[url=https://en.wikipedia.org/wiki/"
+"Ericsson_Texture_Compression#ETC2_and_EAC]Formato de compresión de textura "
+"de Ericsson 2[/url] (variante de [code]SIGNED_RG11_EAC[/code]), que "
+"proporciona dos canales de datos firmados."
-#: doc/classes/Image.xml:615
+#: doc/classes/Image.xml:624
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27314,8 +34126,14 @@ msgid ""
"[b]Note:[/b] When creating an [ImageTexture], an sRGB to linear color space "
"conversion is performed."
msgstr ""
+"[url=https://en.wikipedia.org/wiki/"
+"Ericsson_Texture_Compression#ETC2_and_EAC]Formato de compresión de textura "
+"de Ericsson 2[/url] ([code]RGB8[/code] variant), que es una continuación del "
+"ETC1 y comprime los datos del RGB888.\n"
+"[b]Nota:[/b] Al crear una [ImageTexture], se realiza una conversión del "
+"espacio de color sRGB a lineal."
-#: doc/classes/Image.xml:619
+#: doc/classes/Image.xml:628
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27324,8 +34142,14 @@ msgid ""
"[b]Note:[/b] When creating an [ImageTexture], an sRGB to linear color space "
"conversion is performed."
msgstr ""
+"[url=https://en.wikipedia.org/wiki/"
+"Ericsson_Texture_Compression#ETC2_and_EAC]Formato de compresión de textura "
+"de Ericsson 2[/url] ([code]RGBA8[/code]variant), que comprime los datos de "
+"RGBA8888 con soporte alfa completo.\n"
+"[b]Nota:[/b] Al crear una [ImageTexture], se realiza una conversión del "
+"espacio de color sRGB a lineal."
-#: doc/classes/Image.xml:623
+#: doc/classes/Image.xml:632
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27335,32 +34159,47 @@ msgid ""
"[b]Note:[/b] When creating an [ImageTexture], an sRGB to linear color space "
"conversion is performed."
msgstr ""
+"[url=https://en.wikipedia.org/wiki/"
+"Ericsson_Texture_Compression#ETC2_and_EAC]Formato de compresión de textura "
+"de Ericsson 2[/url] ([code]RGB8_PUNCHTHROUGH_ALPHA1[/code] variant), que "
+"comprime los datos de RGBA para hacer el alfa totalmente transparente o "
+"totalmente opaco.\n"
+"[b]Nota:[/b] Al crear una [ImageTexture], se realiza una conversión del "
+"espacio de color sRGB a lineal."
-#: doc/classes/Image.xml:631
+#: doc/classes/Image.xml:640
msgid "Represents the size of the [enum Format] enum."
-msgstr ""
+msgstr "Representa el tamaño del enum [enum Format]."
-#: doc/classes/Image.xml:634
+#: doc/classes/Image.xml:643
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
+"Realiza la interpolación del vecino más cercano. Si se cambia el tamaño de "
+"la imagen, será pixelada."
-#: doc/classes/Image.xml:637
+#: doc/classes/Image.xml:646
msgid ""
"Performs bilinear interpolation. If the image is resized, it will be blurry. "
"This mode is faster than [constant INTERPOLATE_CUBIC], but it results in "
"lower quality."
msgstr ""
+"Realiza una interpolación bilineal. Si se cambia el tamaño de la imagen, "
+"será borrosa. Este modo es más rápido que [constant INTERPOLATE_CUBIC], pero "
+"da como resultado una menor calidad."
-#: doc/classes/Image.xml:640
+#: doc/classes/Image.xml:649
msgid ""
"Performs cubic interpolation. If the image is resized, it will be blurry. "
"This mode often gives better results compared to [constant "
"INTERPOLATE_BILINEAR], at the cost of being slower."
msgstr ""
+"Realiza una interpolación cúbica. Si se cambia el tamaño de la imagen, será "
+"borrosa. Este modo a menudo da mejores resultados en comparación con "
+"[constanteINTERPOLATE_BILINEAR], a costa de ser más lento."
-#: doc/classes/Image.xml:643
+#: doc/classes/Image.xml:652
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -27374,64 +34213,83 @@ msgid ""
"On the other hand, if the image already has mipmaps, they will be used, and "
"a new set will be generated for the resulting image."
msgstr ""
+"Realiza una operación bilineal por separado en los dos niveles más adecuados "
+"del mipmap, y luego interpola linealmente entre ellos.\n"
+"Es más lento que [constant INTERPOLATE_BILINEAR], pero produce resultados de "
+"mayor calidad con muchos menos artefactos de aliasing.\n"
+"Si la imagen no tiene mipmaps, se generarán y utilizarán internamente, pero "
+"no se generarán mipmaps en la imagen resultante.\n"
+"[b]Nota:[/b] Si se pretende escalar varias copias de la imagen original, es "
+"mejor llamar al [method generate_mipmaps]] con antelación, para evitar "
+"desperdiciar la potencia de procesamiento en generarlas una y otra vez.\n"
+"Por otro lado, si la imagen ya tiene mipmaps, se usarán, y se generará un "
+"nuevo conjunto para la imagen resultante."
-#: doc/classes/Image.xml:650
+#: doc/classes/Image.xml:659
msgid ""
"Performs Lanczos interpolation. This is the slowest image resizing mode, but "
"it typically gives the best results, especially when downscalng images."
msgstr ""
+"Realiza la interpolación de Lanczos. Es el modo de redimensionamiento de "
+"imágenes más lento, pero suele dar los mejores resultados, especialmente "
+"cuando se reducen las imágenes."
-#: doc/classes/Image.xml:653
+#: doc/classes/Image.xml:662
msgid "Image does not have alpha."
-msgstr ""
+msgstr "La imagen no tiene alfa."
-#: doc/classes/Image.xml:656
+#: doc/classes/Image.xml:665
msgid "Image stores alpha in a single bit."
-msgstr ""
+msgstr "La imagen almacena el alfa en un solo bit."
-#: doc/classes/Image.xml:659
+#: doc/classes/Image.xml:668
msgid "Image uses alpha."
-msgstr ""
+msgstr "La imagen usa el alfa."
-#: doc/classes/Image.xml:662
+#: doc/classes/Image.xml:671
msgid "Use S3TC compression."
-msgstr ""
+msgstr "Use la compresión S3TC."
-#: doc/classes/Image.xml:665
+#: doc/classes/Image.xml:674
msgid "Use PVRTC2 compression."
-msgstr ""
+msgstr "Use la compresión PVRTC2."
-#: doc/classes/Image.xml:668
+#: doc/classes/Image.xml:677
msgid "Use PVRTC4 compression."
-msgstr ""
+msgstr "Use la compresión PVRTC4."
-#: doc/classes/Image.xml:671
+#: doc/classes/Image.xml:680
msgid "Use ETC compression."
-msgstr ""
+msgstr "Use la compresión ETC."
-#: doc/classes/Image.xml:674
+#: doc/classes/Image.xml:683
msgid "Use ETC2 compression."
-msgstr ""
+msgstr "Use la compresión ETC2."
-#: doc/classes/Image.xml:689
+#: doc/classes/Image.xml:698
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
+"La textura de la fuente (antes de la compresión) es una textura regular. Por "
+"defecto para todas las texturas."
-#: doc/classes/Image.xml:692
+#: doc/classes/Image.xml:701
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
+"La textura de la fuente (antes de la compresión) está en el espacio sRGB."
-#: doc/classes/Image.xml:695
+#: doc/classes/Image.xml:704
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
msgstr ""
+"La textura de la fuente (antes de la compresión) es una textura normal (por "
+"ejemplo, puede ser comprimida en dos canales)."
#: doc/classes/ImageTexture.xml:4
msgid "A [Texture2D] based on an [Image]."
-msgstr ""
+msgstr "Una [Texture2D] basada en una [Image]."
#: doc/classes/ImageTexture.xml:7
msgid ""
@@ -27440,18 +34298,24 @@ msgid ""
"[b]Note:[/b] The maximum image size is 16384×16384 pixels due to graphics "
"hardware limitations. Larger images will fail to import."
msgstr ""
+"Una [Texture2D] basada en una [Image]. Puede ser creada a partir de una "
+"[Image] con el [method create_from_image].\n"
+"[b]Nota:[/b] El tamaño máximo de la imagen es de 16384×16384 píxeles debido "
+"a las limitaciones del hardware de gráficos. Las imágenes más grandes no se "
+"importarán."
#: doc/classes/ImageTexture.xml:19
msgid "Create a new [ImageTexture] from an [Image]."
-msgstr ""
+msgstr "Crear un nuevo [ImageTexture] a partir de un [Image]."
#: doc/classes/ImageTexture.xml:26
msgid "Returns the format of the [ImageTexture], one of [enum Image.Format]."
msgstr ""
+"Devuelve el formato de la [ImageTexture], uno de los [enum Image.Format]."
#: doc/classes/ImageTexture.xml:35
msgid "Resizes the [ImageTexture] to the specified dimensions."
-msgstr ""
+msgstr "Redimensiona el [ImageTexture] a las dimensiones especificadas."
#: doc/classes/ImageTexture.xml:46
msgid ""
@@ -27459,10 +34323,13 @@ msgid ""
"[code]immediate[/code] is [code]true[/code], it will take effect immediately "
"after the call."
msgstr ""
+"Sustituye los datos de la textura por una nueva [code]image[/code]. Si "
+"[code]immediate[/code] es [code]true[/code], tendrá efecto inmediatamente "
+"después de la llamada."
#: doc/classes/ImmediateGeometry3D.xml:4
msgid "Draws simple geometry from code."
-msgstr ""
+msgstr "Dibuja una geometría simple desde código."
#: doc/classes/ImmediateGeometry3D.xml:7
msgid ""
@@ -27477,16 +34344,31 @@ msgid ""
"OpenGL/Face-culling]winding order[/url] for front faces of triangle "
"primitive modes."
msgstr ""
+"Dibuja la geometría simple del código. Utiliza un modo de dibujo similar al "
+"de OpenGL 1.x.\n"
+"Ver también [ArrayMesh], [MeshDataTool] y [SurfaceTool] para la generación "
+"de la geometría de procedimiento.\n"
+"[b]Nota:[/b] ImmediateGeometry3D se adapta mejor a pequeñas cantidades de "
+"datos de malla que cambian cada cuadro. Será lenta cuando se manejen grandes "
+"cantidades de datos de malla. Si los datos de la malla no cambian a menudo, "
+"use [ArrayMesh], [MeshDataTool] o [SurfaceTool] en su lugar.\n"
+"[b]Nota:[/b] Godot usa el sentido de las agujas del reloj [url=https://"
+"learnopengl.com/Advanced-OpenGL/Face-culling]orden de giro[/url] para las "
+"caras frontales de los modos primitivos de los triángulos."
#: doc/classes/ImmediateGeometry3D.xml:27
msgid ""
"Simple helper to draw an UV sphere with given latitude, longitude and radius."
msgstr ""
+"Un simple ayudante para dibujar una esfera ultravioleta con la latitud, "
+"longitud y radio dados."
#: doc/classes/ImmediateGeometry3D.xml:36
msgid ""
"Adds a vertex in local coordinate space with the currently set color/uv/etc."
msgstr ""
+"Añade un vértice en el espacio de coordenadas locales con el color/uv/etc "
+"actualmente establecido."
#: doc/classes/ImmediateGeometry3D.xml:47
msgid ""
@@ -27495,38 +34377,43 @@ msgid ""
"[code]glBegin()[/code] and [code]glEnd()[/code] references.\n"
"For the type of primitive, see the [enum Mesh.PrimitiveType] enum."
msgstr ""
+"Comienza a dibujar (y opcionalmente pasa una anulación de la textura). "
+"Cuando termine, llame a [method end. Para más información sobre cómo "
+"funciona, busca las referencias [code]glBegin()[/code] y [code]glEnd()[/"
+"code].\n"
+"Para el tipo de primitivo, ver el enum [enum Mesh.PrimitiveType]."
#: doc/classes/ImmediateGeometry3D.xml:55
msgid "Clears everything that was drawn using begin/end."
-msgstr ""
+msgstr "Borra todo lo que fue dibujado usando el principio/fin."
#: doc/classes/ImmediateGeometry3D.xml:62
msgid "Ends a drawing context and displays the results."
-msgstr ""
+msgstr "Termina un contexto de dibujo y muestra los resultados."
#: doc/classes/ImmediateGeometry3D.xml:71
msgid "The current drawing color."
-msgstr ""
+msgstr "El color del dibujado actual."
#: doc/classes/ImmediateGeometry3D.xml:80
msgid "The next vertex's normal."
-msgstr ""
+msgstr "La normal del próximo vértice."
#: doc/classes/ImmediateGeometry3D.xml:89
msgid "The next vertex's tangent (and binormal facing)."
-msgstr ""
+msgstr "La próxima tangente del vértice (y la orientación binormal)."
#: doc/classes/ImmediateGeometry3D.xml:98
msgid "The next vertex's UV."
-msgstr ""
+msgstr "El próximo vértice es UV."
#: doc/classes/ImmediateGeometry3D.xml:107
msgid "The next vertex's second layer UV."
-msgstr ""
+msgstr "La segunda capa del próximo vértice es UV."
#: doc/classes/Input.xml:4
msgid "A singleton that deals with inputs."
-msgstr ""
+msgstr "Un singleton que se ocupa de las entradas."
#: doc/classes/Input.xml:7
msgid ""
@@ -27535,10 +34422,15 @@ msgid ""
"set in the [b]Input Map[/b] tab in the [b]Project > Project Settings[/b], or "
"with the [InputMap] class."
msgstr ""
+"Un singleton que se ocupa de las entradas. Esto incluye pulsaciones de "
+"teclas, botones del ratón y movimiento, joypads y acciones de entrada. Las "
+"acciones y sus eventos se pueden configurar en la pestaña [b]Mapa de "
+"entradas[/b] en el [b]Proyecto > Configuración del proyecto[/b], o con la "
+"clase [InputMap]."
#: doc/classes/Input.xml:10
msgid "https://docs.godotengine.org/en/latest/tutorials/inputs/index.html"
-msgstr ""
+msgstr "https://docs.godotengine.org/es/latest/tutorials/inputs/index.html"
#: doc/classes/Input.xml:21
msgid ""
@@ -27550,16 +34442,25 @@ msgid ""
"is_action_just_pressed]. If you want to simulate [code]_input[/code], use "
"[method parse_input_event] instead."
msgstr ""
+"Esto simulará pulsar la acción específica.\n"
+"La fuerza puede ser usada para acciones no booleanas, está entre 0 y 1 "
+"representando la intensidad de la acción dada.\n"
+"[b]Nota:[/b] Este método no causará ninguna llamada al [method Node._input]. "
+"Está pensado para ser usado con [method is_action_pressed] y [method "
+"is_action_just_pressed]. Si quieres simular [code]_input[/code], usa en su "
+"lugar [method parse_input_event]."
#: doc/classes/Input.xml:32
msgid "If the specified action is already pressed, this will release it."
-msgstr ""
+msgstr "Si la acción especificada ya está presionada, esto la liberará."
#: doc/classes/Input.xml:43
msgid ""
"Adds a new mapping entry (in SDL2 format) to the mapping database. "
"Optionally update already connected devices."
msgstr ""
+"Añade una nueva entrada de mapeo (en formato SDL2) a la base de datos de "
+"mapeo. Opcionalmente actualiza los dispositivos ya conectados."
#: doc/classes/Input.xml:50
msgid ""
@@ -27569,6 +34470,12 @@ msgid ""
"even when your device has an accelerometer. You must export your project to "
"a supported device to read values from the accelerometer."
msgstr ""
+"Si el dispositivo tiene un acelerómetro, éste devolverá la aceleración. De "
+"lo contrario, devuelve un [Vector3] vacío.\n"
+"Tenga en cuenta que este método devuelve un [Vector3] vacío cuando se "
+"ejecuta desde el editor, incluso cuando el dispositivo tiene un "
+"acelerómetro. Debe exportar su proyecto a un dispositivo compatible para "
+"leer los valores del acelerómetro."
#: doc/classes/Input.xml:60
msgid ""
@@ -27578,22 +34485,32 @@ msgid ""
"1. If the action is mapped to a control that has no axis as the keyboard, "
"the value returned will be 0 or 1."
msgstr ""
+"Devuelve un valor entre 0 y 1 que representa la intensidad de la acción "
+"dada. En un joypad, por ejemplo, cuanto más lejos esté el eje (palos "
+"analógicos o gatillos L2, R2) de la zona muerta, más cerca estará el valor a "
+"1. Si la acción se asigna a un control que no tiene un eje como el teclado, "
+"el valor devuelto será 0 o 1."
#: doc/classes/Input.xml:67
msgid ""
"Returns an [Array] containing the device IDs of all currently connected "
"joypads."
msgstr ""
+"Devuelve un [Array] que contiene los Ids de los dispositivos de todos los "
+"joypads conectados actualmente."
#: doc/classes/Input.xml:74
msgid "Returns the currently assigned cursor shape (see [enum CursorShape])."
msgstr ""
+"Devuelve la forma del cursor actualmente asignada (véase [enum CursorShape])."
#: doc/classes/Input.xml:81
msgid ""
"If the device has an accelerometer, this will return the gravity. Otherwise, "
"it returns an empty [Vector3]."
msgstr ""
+"Si el dispositivo tiene un acelerómetro, esto devolverá la gravedad. De lo "
+"contrario, devuelve un [Vector3] vacío."
#: doc/classes/Input.xml:88
msgid ""
@@ -27601,52 +34518,67 @@ msgid ""
"s around a device's X, Y, and Z axes. Otherwise, it returns an empty "
"[Vector3]."
msgstr ""
+"Si el dispositivo tiene un giroscopio, éste devolverá la tasa de rotación en "
+"rad/s alrededor de los ejes X, Y y Z del dispositivo. De lo contrario, "
+"devuelve un [Vector3] vacío."
#: doc/classes/Input.xml:99
msgid ""
"Returns the current value of the joypad axis at given index (see [enum "
"JoyAxisList])."
msgstr ""
+"Devuelve el valor actual del eje del joypad en un índice determinado (véase "
+"[enum JoyAxisList])."
#: doc/classes/Input.xml:108
msgid "Returns the index of the provided axis name."
-msgstr ""
+msgstr "Devuelve el índice del nombre del eje suministrado."
#: doc/classes/Input.xml:117
msgid ""
"Receives a [enum JoyAxisList] axis and returns its equivalent name as a "
"string."
msgstr ""
+"Recibe un eje [enum JoyAxisList] y devuelve su nombre equivalente como una "
+"String."
#: doc/classes/Input.xml:126
msgid "Returns the index of the provided button name."
-msgstr ""
+msgstr "Devuelve el índice del nombre del botón proporcionado."
#: doc/classes/Input.xml:135
msgid ""
"Receives a gamepad button from [enum JoyButtonList] and returns its "
"equivalent name as a string."
msgstr ""
+"Recibe un botón del gamepad de [enum JoyButtonList] y devuelve su nombre "
+"equivalente en forma de cadena."
#: doc/classes/Input.xml:144
msgid ""
"Returns a SDL2-compatible device GUID on platforms that use gamepad "
"remapping. Returns [code]\"Default Gamepad\"[/code] otherwise."
msgstr ""
+"Devuelve una GUID de dispositivo compatible con SDL2 en las plataformas que "
+"usan remapeo de gamepad. Devuelve [code]\"Default Gamepad\"[/code] de otra "
+"manera."
#: doc/classes/Input.xml:153
msgid "Returns the name of the joypad at the specified device index."
msgstr ""
+"Devuelve el nombre del joypad en el índice del dispositivo especificado."
#: doc/classes/Input.xml:162
msgid "Returns the duration of the current vibration effect in seconds."
-msgstr ""
+msgstr "Devuelve la duración del efecto de la vibración actual en segundos."
#: doc/classes/Input.xml:171
msgid ""
"Returns the strength of the joypad vibration: x is the strength of the weak "
"motor, and y is the strength of the strong motor."
msgstr ""
+"Devuelve la fuerza de la vibración del joypad: x es la fuerza del motor "
+"débil, e y es la fuerza del motor fuerte."
#: doc/classes/Input.xml:178
msgid ""
@@ -27655,22 +34587,30 @@ msgid ""
"mouse is not moving, this function will still return the value of the last "
"motion."
msgstr ""
+"Devuelve la velocidad del ratón, la última vez que se movió el cursor, y "
+"esto hasta el siguiente fotograma donde el ratón se mueve. Esto significa "
+"que aunque el ratón no se mueva, esta función seguirá devolviendo el valor "
+"del último movimiento."
#: doc/classes/Input.xml:185
msgid ""
"If the device has a magnetometer, this will return the magnetic field "
"strength in micro-Tesla for all axes."
msgstr ""
+"Si el dispositivo tiene un magnetómetro, éste devolverá la fuerza del campo "
+"magnético en micro-Tesla para todos los ejes."
#: doc/classes/Input.xml:192
msgid ""
"Returns mouse buttons as a bitmask. If multiple mouse buttons are pressed at "
"the same time, the bits are added together."
msgstr ""
+"Devuelve los botones del ratón como una máscara de bits. Si se pulsan varios "
+"botones del ratón al mismo tiempo, los bits se suman."
#: doc/classes/Input.xml:199
msgid "Returns the mouse mode. See the constants for more information."
-msgstr ""
+msgstr "Devuelve el modo de ratón. Vea las constantes para más información."
#: doc/classes/Input.xml:208
msgid ""
@@ -27680,6 +34620,11 @@ msgid ""
"This is useful for code that needs to run only once when an action is "
"pressed, instead of every frame while it's pressed."
msgstr ""
+"Devuelve [code]true[/code] cuando el usuario empieza a pulsar el evento de "
+"acción, lo que significa que es [code]true[/code] sólo en el marco en el que "
+"el usuario ha pulsado el botón.\n"
+"Esto es útil para el código que necesita ejecutarse sólo una vez cuando se "
+"presiona una acción, en lugar de cada marco mientras se presiona."
#: doc/classes/Input.xml:218
msgid ""
@@ -27687,6 +34632,9 @@ msgid ""
"meaning it's [code]true[/code] only on the frame that the user released the "
"button."
msgstr ""
+"Devuelve [code]true[/code] cuando el usuario deja de pulsar el evento de "
+"acción, lo que significa que es [code]true[/code] sólo en el fotograma en el "
+"que el usuario soltó el botón."
#: doc/classes/Input.xml:227
msgid ""
@@ -27695,9 +34643,12 @@ msgid ""
"pressed, releasing one button will release the action, even if some other "
"button assigned to this action is still pressed."
msgstr ""
+"Devuelve [code]true[/code] si está pulsando el evento de acción. Ten en "
+"cuenta que si una acción tiene varios botones asignados y se pulsa más de "
+"uno, al soltar un botón se liberará la acción, incluso si algún otro botón "
+"asignado a esta acción sigue estando pulsado."
#: doc/classes/Input.xml:238
-#, fuzzy
msgid ""
"Returns [code]true[/code] if you are pressing the joypad button (see [enum "
"JoyButtonList])."
@@ -27712,18 +34663,26 @@ msgid ""
"expected to match these constants, but you can still retrieve events from "
"them."
msgstr ""
+"Devuelve [code]true[/code] si el sistema conoce el dispositivo especificado. "
+"Esto significa que establece todos los índices de botones y ejes. No se "
+"espera que los joypads desconocidos coincidan con estas constantes, pero aún "
+"así se pueden recuperar eventos de ellos."
#: doc/classes/Input.xml:256
msgid ""
"Returns [code]true[/code] if you are pressing the key in the current "
"keyboard layout. You can pass a [enum KeyList] constant."
msgstr ""
+"Devuelve [code]true[/code] si está pulsando la tecla en la disposición "
+"actual del teclado. Puedes pasar una constante [enum KeyList]."
#: doc/classes/Input.xml:265
msgid ""
"Returns [code]true[/code] if you are pressing the mouse button specified "
"with [enum ButtonList]."
msgstr ""
+"Devuelve [code]true[/code] si se pulsa el botón del ratón especificado con "
+"[enum ButtonList]."
#: doc/classes/Input.xml:280
msgid ""
@@ -27733,6 +34692,11 @@ msgid ""
"See [signal joy_connection_changed] for the signal emitted when this is "
"triggered internally."
msgstr ""
+"Notifica al singleton [Input] que una conexión ha cambiado, para actualizar "
+"el estado del índice del [code]device[/code].\n"
+"Este índice se utiliza internamente y no debería tener que ser llamado desde "
+"los scripts de usuario. Véase [signal joy_connection_changed] para la señal "
+"emitida cuando se activa internamente."
#: doc/classes/Input.xml:290
msgid ""
@@ -27746,11 +34710,23 @@ msgid ""
"Input.parse_input_event(a)\n"
"[/codeblock]"
msgstr ""
+"Alimenta un [InputEvent] al juego. Puede ser usado para disparar "
+"artificialmente eventos de entrada desde el código. También genera llamadas "
+"de [método Node._input].\n"
+"Ejemplo:\n"
+"[codeblock]\n"
+"var evento = InputEventAction.new()\n"
+"evento.action = \"ui_cancel\"\n"
+"evento.pressed = true\n"
+"Input.parse_input_event(evento)\n"
+"[/codeblock]"
#: doc/classes/Input.xml:306
msgid ""
"Removes all mappings from the internal database that match the given GUID."
msgstr ""
+"Elimina todos los mapeos de la base de datos interna que coincidan con la "
+"GUID dada."
#: doc/classes/Input.xml:319
msgid ""
@@ -27766,6 +34742,19 @@ msgid ""
"[b]Uncompressed[/b] compression modes are supported. The [b]Video RAM[/b] "
"compression mode can't be used for custom cursors."
msgstr ""
+"Establece una imagen personalizada del cursor del ratón, que sólo es visible "
+"dentro de la ventana del juego. También se puede especificar el punto de "
+"acceso. Al pasar [code]null[/code] al parámetro de la imagen se restablece "
+"el cursor del sistema. Ver [enum CursorShape] para la lista de formas.\n"
+"[code]image[/code] debe ser inferior a 256×256.\n"
+"[code]hotspot[/code] debe estar dentro del tamaño de [code]image[/code].\n"
+"[b]Nota: [/b] [AnimatedTexture]s no están soportados como cursores de ratón "
+"personalizados. Si se utiliza una [AnimatedTexture], sólo se mostrará el "
+"primer fotograma.\n"
+"[b]Nota:[/b] Sólo se admiten las imágenes importadas con los modos de "
+"compresión [b]SinPerdida[/b], [b]ConPerdida[/b] o [b]SinCompresion[/b]. El "
+"modo de compresión [b]Video RAM[/b] no puede utilizarse para cursores "
+"personalizados."
#: doc/classes/Input.xml:332
msgid ""
@@ -27776,10 +34765,17 @@ msgid ""
"[b]Note:[/b] This method generates an [InputEventMouseMotion] to update "
"cursor immediately."
msgstr ""
+"Establece la forma del cursor por defecto para ser usado en la vista en "
+"lugar de la [constant CURSOR_ARROW].\n"
+"[b]Nota:[/b] Si quieres cambiar la forma del cursor por defecto para los "
+"nodos de [Control], usa [member Control.mouse_default_cursor_shape] en su "
+"lugar.\n"
+"[b]Nota:[/b] Este método genera un [InputEventMouseMotion] para actualizar "
+"el cursor inmediatamente."
#: doc/classes/Input.xml:343
msgid "Sets the mouse mode. See the constants for more information."
-msgstr ""
+msgstr "Establece el modo del ratón. Vea las constantes para más información."
#: doc/classes/Input.xml:352
msgid ""
@@ -27794,6 +34790,18 @@ msgid ""
"should generally be disabled while the user is drawing the line to get "
"results that closely follow the actual input."
msgstr ""
+"Habilita o deshabilita la acumulación de eventos de entrada similares "
+"enviados por el sistema operativo. Cuando la acumulación de entrada está "
+"activada, todos los eventos de entrada generados durante una trama se "
+"fusionarán y se emitirán cuando la trama se termine de renderizar. Por lo "
+"tanto, esto limita el número de llamadas del método de entrada por segundo "
+"al FPS de renderización.\n"
+"La acumulación de entrada está habilitada por defecto. Se puede desactivar "
+"para obtener una entrada ligeramente más precisa/reactiva a costa de un "
+"mayor uso de la CPU. En aplicaciones donde se requiere dibujar líneas a mano "
+"alzada, la acumulación de entrada generalmente debe deshabilitarse mientras "
+"el usuario está dibujando la línea para obtener resultados que sigan de "
+"cerca la entrada real."
#: doc/classes/Input.xml:368
msgid ""
@@ -27807,10 +34815,19 @@ msgid ""
"is recommended to restart an effect if it has to be played for more than a "
"few seconds."
msgstr ""
+"Empieza a vibrar el joypad. Los joypads suelen tener dos motores de "
+"vibración, uno fuerte y otro débil. [code]weak_magnitude[/code] es la fuerza "
+"del motor débil (entre 0 y 1) y [code]strong_magnitude[/code] es la fuerza "
+"del motor fuerte (entre 0 y 1). [code]duración[/code] es la duración del "
+"efecto en segundos (una duración de 0 intentará reproducir la vibración "
+"indefinidamente).\n"
+"[b]Nota:[/b] No todos los equipos son compatibles con las duraciones de "
+"efecto largas; se recomienda reiniciar un efecto si tiene que ser "
+"reproducido durante más de unos pocos segundos."
#: doc/classes/Input.xml:378
msgid "Stops the vibration of the joypad."
-msgstr ""
+msgstr "Detiene la vibración del joypad."
#: doc/classes/Input.xml:387
msgid ""
@@ -27818,22 +34835,25 @@ msgid ""
"[b]Note:[/b] It needs VIBRATE permission for Android at export settings. iOS "
"does not support duration."
msgstr ""
+"Vibración de los dispositivos Android e iOS.\n"
+"[b]Nota:[/b] Necesita permiso de VIBRATE para Android en la configuración de "
+"exportación. iOS no admite duración."
#: doc/classes/Input.xml:397
msgid "Sets the mouse position to the specified vector."
-msgstr ""
+msgstr "Establece la posición del ratón en el vector especificado."
#: doc/classes/Input.xml:408
msgid "Emitted when a joypad device has been connected or disconnected."
-msgstr ""
+msgstr "Se emite cuando se ha conectado o desconectado un dispositivo joypad."
#: doc/classes/Input.xml:414
msgid "Makes the mouse cursor visible if it is hidden."
-msgstr ""
+msgstr "Hace que el cursor del ratón sea visible si está oculto."
#: doc/classes/Input.xml:417
msgid "Makes the mouse cursor hidden if it is visible."
-msgstr ""
+msgstr "Hace que el cursor del ratón se oculte si es visible."
#: doc/classes/Input.xml:420
msgid ""
@@ -27842,32 +34862,44 @@ msgid ""
"Windows and Linux, the mouse will use raw input mode, which means the "
"reported movement will be unaffected by the OS' mouse acceleration settings."
msgstr ""
+"Captura el ratón. El ratón estará oculto y no podrá salir de la ventana del "
+"juego, pero aún así registrará el movimiento y las pulsaciones del botón del "
+"ratón. En Windows y Linux, el ratón utilizará el modo de entrada en bruto, "
+"lo que significa que el movimiento reportado no se verá afectado por la "
+"configuración de la aceleración del ratón del sistema operativo."
#: doc/classes/Input.xml:423
msgid "Makes the mouse cursor visible but confines it to the game window."
msgstr ""
+"Hace visible el cursor del ratón pero lo limita a la ventana del juego."
#: doc/classes/Input.xml:426
msgid "Arrow cursor. Standard, default pointing cursor."
-msgstr ""
+msgstr "Cursor de la flecha. Cursor puntero estándar y predeterminado."
#: doc/classes/Input.xml:429
msgid ""
"I-beam cursor. Usually used to show where the text cursor will appear when "
"the mouse is clicked."
msgstr ""
+"Cursor del rayo I. Normalmente se usa para mostrar dónde aparecerá el cursor "
+"de texto cuando se haga clic con el ratón."
#: doc/classes/Input.xml:432
msgid ""
"Pointing hand cursor. Usually used to indicate the pointer is over a link or "
"other interactable item."
msgstr ""
+"Apuntando con el cursor de la mano. Normalmente se usa para indicar que el "
+"puntero está sobre un enlace u otro elemento interactivo."
#: doc/classes/Input.xml:435
msgid ""
"Cross cursor. Typically appears over regions in which a drawing operation "
"can be performed or for selections."
msgstr ""
+"Cursor en cruz. Normalmente aparece sobre las regiones en las que se puede "
+"realizar una operación de dibujo o para realizar selecciones."
#: doc/classes/Input.xml:438
msgid ""
@@ -27875,6 +34907,9 @@ msgid ""
"This cursor shape denotes that the application is still usable during the "
"operation."
msgstr ""
+"Espera el cursor. Indica que la aplicación está ocupada realizando una "
+"operación. La forma del cursor indica que la aplicación sigue siendo "
+"utilizable durante la operación."
#: doc/classes/Input.xml:441
msgid ""
@@ -27882,16 +34917,21 @@ msgid ""
"This cursor shape denotes that the application isn't usable during the "
"operation (e.g. something is blocking its main thread)."
msgstr ""
+"Cursor ocupado. Indica que la aplicación está ocupada realizando una "
+"operación. Esta forma de cursor denota que la aplicación no es utilizable "
+"durante la operación (por ejemplo, algo está bloqueando su hilo principal)."
#: doc/classes/Input.xml:444
msgid "Drag cursor. Usually displayed when dragging something."
-msgstr ""
+msgstr "Cursor de arrastre. Normalmente se muestra cuando se arrastra algo."
#: doc/classes/Input.xml:447
msgid ""
"Can drop cursor. Usually displayed when dragging something to indicate that "
"it can be dropped at the current position."
msgstr ""
+"Puede soltar el cursor. Normalmente se muestra cuando se arrastra algo para "
+"indicar que se puede soltar en la posición actual."
#: doc/classes/Input.xml:450
msgid ""
@@ -27899,18 +34939,26 @@ msgid ""
"example, when dragging something) or that the control at a position is "
"disabled."
msgstr ""
+"Cursor prohibido. Indica que la acción actual está prohibida (por ejemplo, "
+"al arrastrar algo) o que el control en una posición está desactivado."
#: doc/classes/Input.xml:453
msgid ""
"Vertical resize mouse cursor. A double-headed vertical arrow. It tells the "
"user they can resize the window or the panel vertically."
msgstr ""
+"Cursor del ratón de tamaño vertical. Una flecha vertical de doble punta. Le "
+"dice al usuario que puede cambiar el tamaño de la ventana o del panel "
+"verticalmente."
#: doc/classes/Input.xml:456
msgid ""
"Horizontal resize mouse cursor. A double-headed horizontal arrow. It tells "
"the user they can resize the window or the panel horizontally."
msgstr ""
+"Cursor del ratón de tamaño horizontal. Una flecha horizontal de doble "
+"cabeza. Le dice al usuario que puede cambiar el tamaño de la ventana o del "
+"panel horizontalmente."
#: doc/classes/Input.xml:459
msgid ""
@@ -27918,6 +34966,10 @@ msgid ""
"from the bottom left to the top right. It tells the user they can resize the "
"window or the panel both horizontally and vertically."
msgstr ""
+"La ventana cambia el tamaño del cursor del ratón. El cursor es una flecha de "
+"doble punta que va de abajo a la izquierda a arriba a la derecha. Le dice al "
+"usuario que puede cambiar el tamaño de la ventana o del panel tanto "
+"horizontal como verticalmente."
#: doc/classes/Input.xml:462
msgid ""
@@ -27926,34 +34978,43 @@ msgid ""
"CURSOR_BDIAGSIZE]. It tells the user they can resize the window or the panel "
"both horizontally and vertically."
msgstr ""
+"La ventana cambia el tamaño del cursor del ratón. El cursor es una flecha de "
+"doble punta que va de arriba a la izquierda a abajo a la derecha, lo opuesto "
+"a [constant CURSOR_BDIAGSIZE]. Le dice al usuario que puede cambiar el "
+"tamaño de la ventana o del panel tanto horizontal como verticalmente."
#: doc/classes/Input.xml:465
msgid "Move cursor. Indicates that something can be moved."
-msgstr ""
+msgstr "Mueve el cursor. Indica que algo puede ser movido."
#: doc/classes/Input.xml:468
msgid ""
"Vertical split mouse cursor. On Windows, it's the same as [constant "
"CURSOR_VSIZE]."
msgstr ""
+"Cursor del ratón dividido verticalmente. En Windows, es lo mismo que "
+"[constant CURSOR_VSIZE]."
#: doc/classes/Input.xml:471
msgid ""
"Horizontal split mouse cursor. On Windows, it's the same as [constant "
"CURSOR_HSIZE]."
msgstr ""
+"Cursor del ratón dividido horizontalmente. En Windows, es lo mismo que "
+"[constant CURSOR_HSIZE]."
#: doc/classes/Input.xml:474
msgid "Help cursor. Usually a question mark."
-msgstr ""
+msgstr "Cursor de ayuda. Normalmente un signo de interrogación."
#: doc/classes/InputEvent.xml:4
msgid "Generic input event."
-msgstr ""
+msgstr "Evento de entrada genérico."
#: doc/classes/InputEvent.xml:7
msgid "Base class of all sort of input event. See [method Node._input]."
msgstr ""
+"Clase base de todo tipo de evento de entrada. Ver [method Nodo._input]."
#: doc/classes/InputEvent.xml:10 doc/classes/InputEventJoypadButton.xml:10
#: doc/classes/InputEventJoypadMotion.xml:10 doc/classes/InputEventKey.xml:10
@@ -27962,6 +35023,7 @@ msgstr ""
#: doc/classes/InputEventWithModifiers.xml:10
msgid "https://docs.godotengine.org/en/latest/tutorials/inputs/inputevent.html"
msgstr ""
+"https://docs.godotengine.org/es/latest/tutorials/inputs/inputevent.html"
#: doc/classes/InputEvent.xml:20
msgid ""
@@ -27971,22 +35033,33 @@ msgid ""
"The resulting [code]relative[/code] is a sum of both events. Both events' "
"modifiers have to be identical."
msgstr ""
+"Devuelve [code]true[/code] si el evento de entrada dado y este evento de "
+"entrada se pueden sumar (sólo para eventos del tipo "
+"[InputEventMouseMotion]).\n"
+"Se copiarán la posición, la posición global y la velocidad del evento de "
+"entrada dado. El [code]relativo[/code] resultante es una suma de ambos "
+"eventos. Los modificadores de ambos eventos tienen que ser idénticos."
#: doc/classes/InputEvent.xml:28
msgid "Returns a [String] representation of the event."
-msgstr ""
+msgstr "Devuelve una representación [String] del evento."
#: doc/classes/InputEvent.xml:37
msgid ""
"Returns a value between 0.0 and 1.0 depending on the given actions' state. "
"Useful for getting the value of events of type [InputEventJoypadMotion]."
msgstr ""
+"Devuelve un valor entre 0.0 y 1.0 dependiendo del estado de las acciones "
+"dadas. Es útil para obtener el valor de los eventos del tipo "
+"[InputEventJoypadMotion]."
#: doc/classes/InputEvent.xml:46
msgid ""
"Returns [code]true[/code] if this input event matches a pre-defined action "
"of any type."
msgstr ""
+"Devuelve [code]true[/code] si este evento de entrada coincide con una acción "
+"predefinida de cualquier tipo."
#: doc/classes/InputEvent.xml:57
msgid ""
@@ -27995,6 +35068,10 @@ msgid ""
"[code]true[/code]). Not relevant for events of type [InputEventMouseMotion] "
"or [InputEventScreenDrag]."
msgstr ""
+"Devuelve [code]true[/code] si se está pulsando la acción dada (y no es un "
+"evento de eco para los eventos [InputEventKey], a menos que "
+"[code]allow_echo[/code] sea [code]true[/code]). No es relevante para los "
+"eventos de tipo [InputEventMouseMotion] o [InputEventScreenDrag]."
#: doc/classes/InputEvent.xml:66
msgid ""
@@ -28002,24 +35079,34 @@ msgid ""
"pressed). Not relevant for events of type [InputEventMouseMotion] or "
"[InputEventScreenDrag]."
msgstr ""
+"Devuelve [code]true[/code] si la acción dada se libera (es decir, no se "
+"presiona). No es relevante para eventos del tipo [InputEventMouseMotion] o "
+"[InputEventScreenDrag]."
#: doc/classes/InputEvent.xml:73
msgid ""
"Returns [code]true[/code] if this input event's type is one that can be "
"assigned to an input action."
msgstr ""
+"Devuelve [code]true[/code] si el tipo de este evento de entrada es uno que "
+"puede ser asignado a una acción de entrada."
#: doc/classes/InputEvent.xml:80
msgid ""
"Returns [code]true[/code] if this input event is an echo event (only for "
"events of type [InputEventKey])."
msgstr ""
+"Devuelve [code]true[/code] si este evento de entrada es un evento de eco "
+"(sólo para eventos del tipo [InputEventKey])."
#: doc/classes/InputEvent.xml:87
msgid ""
"Returns [code]true[/code] if this input event is pressed. Not relevant for "
"events of type [InputEventMouseMotion] or [InputEventScreenDrag]."
msgstr ""
+"Devuelve [code]true[/code] si se pulsa este evento de entrada. No es "
+"relevante para eventos del tipo [InputEventMouseMotion] o "
+"[InputEventScreenDrag]."
#: doc/classes/InputEvent.xml:96
msgid ""
@@ -28027,6 +35114,9 @@ msgid ""
"key ([InputEventKey]), button ([InputEventJoypadButton]) or action "
"([InputEventAction])."
msgstr ""
+"Devuelve [code]true[/code] si el evento de entrada dado está comprobando la "
+"misma tecla ([InputEventKey]), botón ([InputEventJoypadButton]) o acción "
+"([InputEventAction])."
#: doc/classes/InputEvent.xml:107
msgid ""
@@ -28036,6 +35126,11 @@ msgid ""
"[InputEventScreenTouch], [InputEventScreenDrag], [InputEventMagnifyGesture] "
"and [InputEventPanGesture]."
msgstr ""
+"Devuelve una copia del evento de entrada dado que ha sido dezplazado por "
+"[code]local_ofs[/code] y transformado por [code]xform[/code]. Relevante para "
+"eventos del tipo [InputEventMouseButton], [InputEventMouseMotion], "
+"[InputEventScreenTouch], [InputEventScreenDrag], [InputEventMagnifyGesture] "
+"y [InputEventPanGesture]."
#: doc/classes/InputEvent.xml:113
msgid ""
@@ -28044,10 +35139,14 @@ msgid ""
"mouse input from a touchscreen. This can be used to distinguish emulated "
"mouse input from physical mouse input."
msgstr ""
+"El ID del dispositivo del evento.\n"
+"[b]Nota:[/b] Este ID de dispositivo siempre será [code]-1[/code] para la "
+"entrada emulada del ratón desde una pantalla táctil. Puede utilizarse para "
+"distinguir la entrada de ratón emulada de la entrada de ratón física."
#: doc/classes/InputEventAction.xml:4
msgid "Input event type for actions."
-msgstr ""
+msgstr "Tipo de evento de entrada para las acciones."
#: doc/classes/InputEventAction.xml:7
msgid ""
@@ -28055,22 +35154,31 @@ msgid ""
"inputs. Actions can be created from the [b]Input Map[/b] tab in the "
"[b]Project > Project Settings[/b] menu. See [method Node._input]."
msgstr ""
+"Contiene una acción genérica que puede ser dirigida desde varios tipos de "
+"entradas. Las acciones pueden crearse desde la pestaña [b]Mapa de entrada[/"
+"b] del menú [b]Proyecto > Configuración del proyecto[/b]. Ver [method Nodo."
+"_input]."
#: doc/classes/InputEventAction.xml:10
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/inputs/inputevent."
"html#actions"
msgstr ""
+"https://docs.godotengine.org/es/latest/tutorials/inputs/inputevent."
+"html#actions"
#: doc/classes/InputEventAction.xml:16
msgid "The action's name. Actions are accessed via this [String]."
msgstr ""
+"El nombre de la acción. Se accede a las acciones a través de esta [String]."
#: doc/classes/InputEventAction.xml:19
msgid ""
"If [code]true[/code], the action's state is pressed. If [code]false[/code], "
"the action's state is released."
msgstr ""
+"Si [code]true[/code], se presiona el estado de la acción. Si [code]false[/"
+"code], se libera el estado de la acción."
#: doc/classes/InputEventAction.xml:22
msgid ""
@@ -28079,10 +35187,14 @@ msgid ""
"joypad motion events, by precising how strongly is the joypad axis bent or "
"pressed."
msgstr ""
+"La fuerza de la acción entre 0 y 1. Este valor se considera igual a 0 si se "
+"pulsa es [code]false[/code]. La fuerza del evento permite falsificar eventos "
+"de movimiento del joypad analógico, precisando la fuerza con la que se dobla "
+"o presiona el eje del joypad."
#: doc/classes/InputEventGesture.xml:4
msgid "Base class for touch control gestures."
-msgstr ""
+msgstr "Clase base para gestos de control de tacto."
#: doc/classes/InputEventGesture.xml:14
msgid ""
@@ -28090,48 +35202,64 @@ msgid ""
"Control._gui_input], the position is relative to the current [Control] that "
"received this gesture."
msgstr ""
+"La posición de gesto local relativa al [Viewport]. Si se utiliza en [method "
+"Control._gui_input], la posición es relativa al [Control] actual que recibió "
+"este gesto."
#: doc/classes/InputEventJoypadButton.xml:4
msgid "Input event for gamepad buttons."
-msgstr ""
+msgstr "Evento de entrada para los botones del gamepad."
#: doc/classes/InputEventJoypadButton.xml:7
msgid ""
"Input event type for gamepad buttons. For gamepad analog sticks and "
"joysticks, see [InputEventJoypadMotion]."
msgstr ""
+"Tipo de evento de entrada para los botones del gamepad. Para los palos y "
+"joysticks analógicos de gamepad, ver [InputEventJoypadMotion]."
#: doc/classes/InputEventJoypadButton.xml:16
msgid "Button identifier. One of the [enum JoyButtonList] button constants."
msgstr ""
+"Identificador de botones. Una de las constantes del botón [enum "
+"JoyButtonList]."
#: doc/classes/InputEventJoypadButton.xml:19
msgid ""
"If [code]true[/code], the button's state is pressed. If [code]false[/code], "
"the button's state is released."
msgstr ""
+"Si [code]true[/code], el estado del botón es presionado. Si [code]false[/"
+"code], se libera el estado del botón."
#: doc/classes/InputEventJoypadButton.xml:22
msgid ""
"Represents the pressure the user puts on the button with his finger, if the "
"controller supports it. Ranges from [code]0[/code] to [code]1[/code]."
msgstr ""
+"Representa la presión que el usuario ejerce sobre el botón con su dedo, si "
+"el controlador lo soporta. Va de [code]0[/code] a [code]1[/code]."
#: doc/classes/InputEventJoypadMotion.xml:4
msgid ""
"Input event type for gamepad joysticks and other motions. For buttons, see "
"[code]InputEventJoypadButton[/code]."
msgstr ""
+"Tipo de evento de entrada para los joysticks del gamepad y otros "
+"movimientos. Para los botones, ver [code]InputEventJoypadButton[/code]."
#: doc/classes/InputEventJoypadMotion.xml:7
msgid ""
"Stores information about joystick motions. One [InputEventJoypadMotion] "
"represents one axis at a time."
msgstr ""
+"Almacena información sobre los movimientos del joystick. Un "
+"[InputEventJoypadMotion] representa un eje a la vez."
#: doc/classes/InputEventJoypadMotion.xml:16
msgid "Axis identifier. Use one of the [enum JoyAxisList] axis constants."
msgstr ""
+"Identificador del eje. Use una de las constantes del eje [enum JoyAxisList]."
#: doc/classes/InputEventJoypadMotion.xml:19
msgid ""
@@ -28139,16 +35267,21 @@ msgid ""
"[code]-1.0[/code] to [code]1.0[/code]. A value of [code]0[/code] means the "
"axis is in its resting position."
msgstr ""
+"Posición actual del joystick en el eje dado. El valor va de [code]-1,0[/"
+"code] a [code]1,0[/code]. Un valor de [code]0[/code] significa que el eje "
+"está en su posición de reposo."
#: doc/classes/InputEventKey.xml:4
msgid "Input event type for keyboard events."
-msgstr ""
+msgstr "Tipo de evento de entrada para eventos de teclado."
#: doc/classes/InputEventKey.xml:7
msgid ""
"Stores key presses on the keyboard. Supports key presses, key releases and "
"[member echo] events."
msgstr ""
+"Almacena las pulsaciones de teclas en el teclado. Soporta pulsaciones de "
+"teclas, liberaciones de teclas y eventos de [member echo]."
#: doc/classes/InputEventKey.xml:17
msgid ""
@@ -28159,6 +35292,12 @@ msgid ""
"get_keycode_with_modifiers())[/code] where [code]event[/code] is the "
"[InputEventKey]."
msgstr ""
+"Devuelve el código clave combinado con teclas modificadoras como [kbd]Shift[/"
+"kbd] o [kbd]Alt[/kbd]. Véase también [InputEventWithModifiers].\n"
+"Para obtener una representación legible para los humanos de la "
+"[InputEventKey] con modificadores, utiliza [code]OS.get_keycode_string(event."
+"get_keycode_with_modifiers())[/code] donde [code]event[/code] es la "
+"[InputEventKey]."
#: doc/classes/InputEventKey.xml:25
msgid ""
@@ -28169,12 +35308,20 @@ msgid ""
"get_physical_keycode_with_modifiers())[/code] where [code]event[/code] is "
"the [InputEventKey]."
msgstr ""
+"Devuelve el código de tecla físico combinado con teclas modificadoras como "
+"[kbd]Shift[/kbd] o [kbd]Alt[/kbd]. Véase también [InputEventWithModifiers].\n"
+"Para obtener una representación legible para los humanos de la "
+"[InputEventKey] con modificadores, utiliza [code]OS.get_keycode_string(event."
+"get_physical_keycode_with_modifiers())[/code] donde [code]event[/code] es la "
+"[InputEventKey]."
#: doc/classes/InputEventKey.xml:32
msgid ""
"If [code]true[/code], the key was already pressed before this event. It "
"means the user is holding the key down."
msgstr ""
+"Si [code]true[/code], la tecla ya estaba pulsada antes de este evento. "
+"Significa que el usuario está manteniendo la tecla pulsada."
#: doc/classes/InputEventKey.xml:35
msgid ""
@@ -28184,6 +35331,11 @@ msgid ""
"get_keycode_string(event.keycode)[/code] where [code]event[/code] is the "
"[InputEventKey]."
msgstr ""
+"El código de la clave de teclado, que corresponde a una de las constantes de "
+"[enum KeyList]. Representa la tecla en la disposición actual del teclado.\n"
+"Para obtener una representación legible para el ser humano de la "
+"[InputEventKey], utilice [code]OS.get_keycode_string(event.keycode)[/code] "
+"donde [code]event[/code] es la [InputEventKey]."
#: doc/classes/InputEventKey.xml:39
msgid ""
@@ -28194,12 +35346,20 @@ msgid ""
"get_keycode_string(event.keycode)[/code] where [code]event[/code] is the "
"[InputEventKey]."
msgstr ""
+"Código clave físico de teclado, que corresponde a una de las constantes de "
+"[enum KeyList]. Representa la ubicación física de una tecla en el teclado US "
+"QWERTY de 101/102 teclas.\n"
+"Para obtener una representación legible para los humanos de la "
+"[InputEventKey], utilice [code]OS.get_keycode_string(event.keycode)[/code] "
+"donde [code]event[/code] es la [InputEventKey]."
#: doc/classes/InputEventKey.xml:43
msgid ""
"If [code]true[/code], the key's state is pressed. If [code]false[/code], the "
"key's state is released."
msgstr ""
+"Si [code]true[/code], se pulsa el estado de la tecla. Si [code]false[/code], "
+"el estado de la tecla se libera."
#: doc/classes/InputEventKey.xml:46
msgid ""
@@ -28208,26 +35368,34 @@ msgid ""
"input mode is active. See [method Window.set_ime_active] for more "
"information."
msgstr ""
+"El identificador clave de Unicode (cuando sea relevante). Es posible que los "
+"identificadores Unicode para los caracteres compuestos y las escrituras "
+"complejas no estén disponibles a menos que el modo de entrada IME esté "
+"activo. Consulte [method Window.set_ime_active] para obtener más información."
#: doc/classes/InputEventMouse.xml:4
msgid "Base input event type for mouse events."
-msgstr ""
+msgstr "Tipo de evento de entrada base para eventos de ratón."
#: doc/classes/InputEventMouse.xml:7
msgid "Stores general mouse events information."
-msgstr ""
+msgstr "Almacena información general de los eventos del ratón."
#: doc/classes/InputEventMouse.xml:16
msgid ""
"The mouse button mask identifier, one of or a bitwise combination of the "
"[enum ButtonList] button masks."
msgstr ""
+"El identificador de la máscara del botón del ratón, una de las máscaras del "
+"botón [enum ButtonList] o una combinación de ellas."
#: doc/classes/InputEventMouse.xml:19
msgid ""
"The global mouse position relative to the current [Viewport] when used in "
"[method Control._gui_input], otherwise is at 0,0."
msgstr ""
+"La posición global del ratón en relación con el [Viewport] actual cuando se "
+"utiliza en el [method Control._gui_input], de lo contrario está a 0,0."
#: doc/classes/InputEventMouse.xml:22
msgid ""
@@ -28235,31 +35403,39 @@ msgid ""
"Control._gui_input], the position is relative to the current [Control] which "
"is under the mouse."
msgstr ""
+"La posición local del ratón relativa al [Viewport]. Si se utiliza en [method "
+"Control._gui_input], la posición es relativa al [Control] actual que está "
+"bajo el ratón."
#: doc/classes/InputEventMouseButton.xml:4
msgid "Input event type for mouse button events."
-msgstr ""
+msgstr "Tipo de evento de entrada para los eventos del botón del ratón."
#: doc/classes/InputEventMouseButton.xml:7
msgid "Contains mouse click information. See [method Node._input]."
msgstr ""
+"Contiene información sobre los clics del ratón. Ver [method Node._input]."
#: doc/classes/InputEventMouseButton.xml:10
-#: doc/classes/InputEventMouseMotion.xml:10
+#: doc/classes/InputEventMouseMotion.xml:11
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/inputs/"
"mouse_and_input_coordinates.html"
msgstr ""
+"https://docs.godotengine.org/es/latest/tutorials/inputs/"
+"mouse_and_input_coordinates.html"
#: doc/classes/InputEventMouseButton.xml:16
msgid ""
"The mouse button identifier, one of the [enum ButtonList] button or button "
"wheel constants."
msgstr ""
+"El identificador del botón del ratón, una de las constantes del botón [enum "
+"ButtonList] o de la rueda de botones."
#: doc/classes/InputEventMouseButton.xml:19
msgid "If [code]true[/code], the mouse button's state is a double-click."
-msgstr ""
+msgstr "Si [code]true[/code], el estado del botón del ratón es un doble clic."
#: doc/classes/InputEventMouseButton.xml:22
msgid ""
@@ -28268,135 +35444,176 @@ msgid ""
"only supported on some platforms; the reported sensitivity varies depending "
"on the platform. May be [code]0[/code] if not supported."
msgstr ""
+"La cantidad (o delta) del evento. Cuando se usa para eventos de "
+"desplazamiento de alta precisión, esto indica la cantidad de desplazamiento "
+"(vertical u horizontal). Esto sólo se admite en algunas plataformas; la "
+"sensibilidad notificada varía según la plataforma. Puede ser [code]0[/code] "
+"si no está soportada."
#: doc/classes/InputEventMouseButton.xml:25
msgid ""
"If [code]true[/code], the mouse button's state is pressed. If [code]false[/"
"code], the mouse button's state is released."
msgstr ""
+"Si [code]true[/code], el estado del botón del ratón está presionado. Si "
+"[code]false[/code], el estado del botón del ratón se libera."
#: doc/classes/InputEventMouseMotion.xml:4
msgid "Input event type for mouse motion events."
-msgstr ""
+msgstr "Tipo de evento de entrada para los eventos de movimiento del ratón."
#: doc/classes/InputEventMouseMotion.xml:7
msgid ""
"Contains mouse and pen motion information. Supports relative, absolute "
-"positions and speed. See [method Node._input]."
+"positions and speed. See [method Node._input].\n"
+"[b]Note:[/b] By default, this event is only emitted once per frame rendered "
+"at most. If you need more precise input reporting, call [method Input."
+"set_use_accumulated_input] with [code]false[/code] to make events emitted as "
+"often as possible. If you use InputEventMouseMotion to draw lines, consider "
+"implementing [url=https://en.wikipedia.org/wiki/Bresenham"
+"%27s_line_algorithm]Bresenham's line algorithm[/url] as well to avoid "
+"visible gaps in lines if the user is moving the mouse quickly."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:16
+#: doc/classes/InputEventMouseMotion.xml:17
msgid ""
"Represents the pressure the user puts on the pen. Ranges from [code]0.0[/"
"code] to [code]1.0[/code]."
msgstr ""
+"Representa la presión que el usuario ejerce sobre el bolígrafo. Va desde "
+"[code]0.0[/code] hasta [code]1.0[/code]."
-#: doc/classes/InputEventMouseMotion.xml:19
+#: doc/classes/InputEventMouseMotion.xml:20
+#, fuzzy
msgid ""
"The mouse position relative to the previous position (position at the last "
-"frame). \n"
+"frame).\n"
"[b]Note:[/b] Since [InputEventMouseMotion] is only emitted when the mouse "
"moves, the last event won't have a relative position of [code]Vector2(0, 0)[/"
"code] when the user stops moving the mouse."
msgstr ""
+"La posición del ratón en relación con la posición anterior (posición en el "
+"último fotograma). \n"
+"[b]Nota:[/b] Dado que [InputEventMouseMotion] sólo se emite cuando el ratón "
+"se mueve, el último evento no tendrá una posición relativa de "
+"[code]Vector2(0, 0)[/code] cuando el usuario deje de mover el ratón."
-#: doc/classes/InputEventMouseMotion.xml:23
+#: doc/classes/InputEventMouseMotion.xml:24
msgid "The mouse speed in pixels per second."
-msgstr ""
+msgstr "La velocidad del ratón en píxeles por segundo."
-#: doc/classes/InputEventMouseMotion.xml:26
+#: doc/classes/InputEventMouseMotion.xml:27
msgid ""
"Represents the angles of tilt of the pen. Positive X-coordinate value "
"indicates a tilt to the right. Positive Y-coordinate value indicates a tilt "
"toward the user. Ranges from [code]-1.0[/code] to [code]1.0[/code] for both "
"axes."
msgstr ""
+"Representa los ángulos de inclinación del bolígrafo. El valor positivo de la "
+"coordenada X indica una inclinación hacia la derecha. El valor positivo de "
+"la coordenada Y indica una inclinación hacia el usuario. Va de [code]-1.0[/"
+"code] a [code]1.0[/code] para ambos ejes."
#: doc/classes/InputEventScreenDrag.xml:4
msgid ""
"Input event type for screen drag events. Only available on mobile devices."
msgstr ""
+"Tipo de evento de entrada para eventos de arrastre de pantalla. Sólo "
+"disponible en dispositivos móviles."
#: doc/classes/InputEventScreenDrag.xml:7
msgid "Contains screen drag information. See [method Node._input]."
msgstr ""
+"Contiene información de arrastre de pantalla. Ver [method Nodo._input]."
#: doc/classes/InputEventScreenDrag.xml:16
msgid "The drag event index in the case of a multi-drag event."
msgstr ""
+"El índice de eventos de arrastre en el caso de un evento de arrastre "
+"múltiple."
#: doc/classes/InputEventScreenDrag.xml:19
msgid "The drag position."
-msgstr ""
+msgstr "La posición de arrastre."
#: doc/classes/InputEventScreenDrag.xml:22
msgid "The drag position relative to its start position."
-msgstr ""
+msgstr "La posición de arrastre relativa a su posición inicial."
#: doc/classes/InputEventScreenDrag.xml:25
msgid "The drag speed."
-msgstr ""
+msgstr "La velocidad de arrastre."
#: doc/classes/InputEventScreenTouch.xml:4
msgid ""
"Input event type for screen touch events.\n"
"(only available on mobile devices)"
msgstr ""
+"Tipo de evento de entrada para los eventos táctiles de la pantalla.\n"
+"(sólo disponible en dispositivos móviles)"
#: doc/classes/InputEventScreenTouch.xml:8
msgid ""
"Stores multi-touch press/release information. Supports touch press, touch "
"release and [member index] for multi-touch count and order."
msgstr ""
+"Almacena información de presión/liberación multitáctil. Soporta presión "
+"táctil, liberación táctil y [member index] para el recuento y el orden "
+"multitáctil."
#: doc/classes/InputEventScreenTouch.xml:17
msgid ""
"The touch index in the case of a multi-touch event. One index = one finger."
msgstr ""
+"El índice táctil en el caso de un evento multitáctil. Un índice = un dedo."
#: doc/classes/InputEventScreenTouch.xml:20
msgid "The touch position."
-msgstr ""
+msgstr "La posición del toque."
#: doc/classes/InputEventScreenTouch.xml:23
msgid ""
"If [code]true[/code], the touch's state is pressed. If [code]false[/code], "
"the touch's state is released."
msgstr ""
+"Si [code]true[/code], el estado del toque se pulsa. Si [code]false[/code], "
+"el estado del toque se libera."
#: doc/classes/InputEventWithModifiers.xml:4
msgid "Base class for keys events with modifiers."
-msgstr ""
+msgstr "Clase base para eventos clave con modificadores."
#: doc/classes/InputEventWithModifiers.xml:7
msgid ""
"Contains keys events information with modifiers support like [kbd]Shift[/"
"kbd] or [kbd]Alt[/kbd]. See [method Node._input]."
msgstr ""
+"Contiene información de eventos clave con soporte de modificadores como "
+"[kbd]Shift[/kbd] o [kbd]Alt[/kbd]. Véase [method Node._input]."
#: doc/classes/InputEventWithModifiers.xml:16
msgid "State of the [kbd]Alt[/kbd] modifier."
-msgstr ""
+msgstr "Estado del modificador [kbd]Alt[/kbd]."
#: doc/classes/InputEventWithModifiers.xml:19
msgid "State of the [kbd]Cmd[/kbd] modifier."
-msgstr ""
+msgstr "Estado del modificador [kbd]Cmd[/kbd]."
#: doc/classes/InputEventWithModifiers.xml:22
msgid "State of the [kbd]Ctrl[/kbd] modifier."
-msgstr ""
+msgstr "Estado del modificador [kbd]Ctrl[/kbd]."
#: doc/classes/InputEventWithModifiers.xml:25
msgid "State of the [kbd]Meta[/kbd] modifier."
-msgstr ""
+msgstr "Estado del modificador [kbd]Meta[/kbd]."
#: doc/classes/InputEventWithModifiers.xml:28
msgid "State of the [kbd]Shift[/kbd] modifier."
-msgstr ""
+msgstr "Estado del modificador [kbd]Shift[/kbd]."
#: doc/classes/InputMap.xml:4
msgid "Singleton that manages [InputEventAction]."
-msgstr ""
+msgstr "Singleton que gestiona [InputEventAction]."
#: doc/classes/InputMap.xml:7
msgid ""
@@ -28405,39 +35622,49 @@ msgid ""
"code with [method add_action] and [method action_add_event]. See [method "
"Node._input]."
msgstr ""
+"Gestiona todos los [InputEventAction] que pueden ser creados/modificados "
+"desde el menú de configuración del proyecto [b]Proyecto > Configuración del "
+"proyecto > Mapa de entrada[/b] o en código con [method add_action] y [method "
+"action_add_event]. Ver [method Node._input]."
#: doc/classes/InputMap.xml:10
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/inputs/inputevent."
"html#inputmap"
msgstr ""
+"https://docs.godotengine.org/es/latest/tutorials/inputs/inputevent."
+"html#inputmap"
#: doc/classes/InputMap.xml:21
msgid ""
"Adds an [InputEvent] to an action. This [InputEvent] will trigger the action."
msgstr ""
+"Añade un [InputEvent] a una acción. Este [InputEvent] desencadenará la "
+"acción."
#: doc/classes/InputMap.xml:32
msgid "Removes an [InputEvent] from an action."
-msgstr ""
+msgstr "Elimina un [InputEvent] de una acción."
#: doc/classes/InputMap.xml:41
msgid "Removes all events from an action."
-msgstr ""
+msgstr "Elimina todos los eventos de una acción."
#: doc/classes/InputMap.xml:50
msgid "Returns an array of [InputEvent]s associated with a given action."
msgstr ""
+"Devuelve un conjunto de [InputEvent]s asociados a una acción determinada."
#: doc/classes/InputMap.xml:61
msgid ""
"Returns [code]true[/code] if the action has the given [InputEvent] "
"associated with it."
msgstr ""
+"Devuelve [code]true[/code] si la acción tiene asociado el [InputEvent] dado."
#: doc/classes/InputMap.xml:72
msgid "Sets a deadzone value for the action."
-msgstr ""
+msgstr "Establece un valor de zona muerta para la acción."
#: doc/classes/InputMap.xml:83
msgid ""
@@ -28446,10 +35673,14 @@ msgid ""
"An [InputEvent] can then be added to this action with [method "
"action_add_event]."
msgstr ""
+"Añade una acción vacía al [InputMap] con una zona muerta [code]configurable "
+"[/code].\n"
+"A continuación, se puede añadir un [InputEvent] a esta acción con el [method "
+"action_add_event]."
#: doc/classes/InputMap.xml:93
msgid "Removes an action from the [InputMap]."
-msgstr ""
+msgstr "Elimina una acción del [InputMap]."
#: doc/classes/InputMap.xml:104
msgid ""
@@ -28458,26 +35689,34 @@ msgid ""
"pressed (for proper release detection). See [method action_has_event] if you "
"don't want this behavior."
msgstr ""
+"Devuelve [code]true[/code] si el evento dado es parte de una acción "
+"existente. Este método ignora los modificadores de teclado si no se pulsa el "
+"[InputEvent] dado (para una detección de liberación adecuada). Ver [method "
+"action_has_event] si no quieres este comportamiento."
#: doc/classes/InputMap.xml:111
msgid "Returns an array of all actions in the [InputMap]."
-msgstr ""
+msgstr "Devuelve un conjunto de todas las acciones en el [InputMap]."
#: doc/classes/InputMap.xml:120
msgid ""
"Returns [code]true[/code] if the [InputMap] has a registered action with the "
"given name."
msgstr ""
+"Devuelve [code]true[/code] si el [InputMap] tiene una acción registrada con "
+"el nombre dado."
#: doc/classes/InputMap.xml:127
msgid ""
"Clears all [InputEventAction] in the [InputMap] and load it anew from "
"[ProjectSettings]."
msgstr ""
+"Borra todo [InputEventAction] en el [InputMap] y cárgalo de nuevo desde "
+"[ProjectSettings]."
#: doc/classes/InstancePlaceholder.xml:4
msgid "Placeholder for the root [Node] of a [PackedScene]."
-msgstr ""
+msgstr "Marcador de posición para la raíz [Node] de una [PackedScene]."
#: doc/classes/InstancePlaceholder.xml:7
msgid ""
@@ -28492,16 +35731,29 @@ msgid ""
"a scene with a transform will transform children relatively to their parent "
"again."
msgstr ""
+"Activar la opción [b]Carga como marcador de posición[/b] para una escena "
+"instantánea en el editor hace que se sustituya por un [InstancePlaceholder] "
+"al ejecutar el juego. Esto hace posible retrasar la carga real de la escena "
+"hasta que se llame a [method create_instance]. Esto es útil para evitar "
+"cargar grandes escenas de una sola vez, cargando partes de ellas de forma "
+"selectiva.\n"
+"El [InstancePlaceholder] no tiene una transformación. Esto hace que "
+"cualquier nodo hijo se posicione de forma relativa al [Viewport] desde el "
+"punto (0,0), en lugar de su padre como se muestra en el editor. Reemplazar "
+"el marcador de posición por una escena con una transformación transformará a "
+"los hijos de forma relativa a su padre de nuevo."
#: doc/classes/InstancePlaceholder.xml:27
msgid ""
"Gets the path to the [PackedScene] resource file that is loaded by default "
"when calling [method create_instance]."
msgstr ""
+"Obtiene la ruta del archivo de recursos de [PackedScene] que se carga por "
+"defecto cuando se llama a [method create_instance]."
#: doc/classes/int.xml:4
msgid "Integer built-in type."
-msgstr ""
+msgstr "Tipo entero interno."
#: doc/classes/int.xml:7
msgid ""
@@ -28526,12 +35778,36 @@ msgid ""
"print(max_int) # -9223372036854775808, we overflowed and wrapped around.\n"
"[/codeblock]"
msgstr ""
+"Tipo entero de 64 bits con signo.\n"
+"Puede tomar valores en el intervalo [code][-2^63, 2^63 - 1][/code], es "
+"decir, [code][-9223372036854775808, 9223372036854775807][/code]. Si se "
+"superan esos límites, se puede supera.\n"
+"[int] es un tipo de [Variant], y por lo tanto se utilizará cuando se asigne "
+"un valor entero a una [Variant]. También se puede hacer cumplir con la pista "
+"del tipo [code]: int[/code].\n"
+"[codeblock]\n"
+"var mi_variable = 0 # entero, valor 0.\n"
+"mi_variable += 4.2 # real, valor 4.2.\n"
+"var mi_entero: int = 1 # entero, valor 1.\n"
+"mi_entero = 4.2 # entero, valor 4, el valor entero es implicitamente "
+"transformado a 4.\n"
+"mi_entero = int(\"6.7\") # entero, valor 6, La string es implicitamente "
+"transformada a un entero.\n"
+"\n"
+"var max_entero = 9223372036854775807\n"
+"print(max_entero) # 9223372036854775807, OK.\n"
+"max_entero += 1\n"
+"print(max_entero) # -9223372036854775808, se sobrepasa y se comienza por el "
+"menor valor posible\n"
+"[/codeblock]"
#: doc/classes/int.xml:32
msgid ""
"Cast a [bool] value to an integer value, [code]int(true)[/code] will be "
"equals to 1 and [code]int(false)[/code] will be equals to 0."
msgstr ""
+"Transforma un valor [bool] a un valor entero, [code]int(true)[/code] será "
+"igual a 1 y [code]int(false)[/code] será igual a 0."
#: doc/classes/int.xml:41
msgid ""
@@ -28540,6 +35816,10 @@ msgid ""
"[code]int(.1)[/code] will be equals to 0 and [code]int(-2.7)[/code] will be "
"equals to -2."
msgstr ""
+"Transforma un valor real a un valor entero, este método simplemente elimina "
+"las fracciones numéricas, así por ejemplo [code]int(2.7)[/code] será igual a "
+"2, [code]int(.1)[/code] será igual a 0 y [code]int(-2.7)[/code] será igual a "
+"-2."
#: doc/classes/int.xml:50
msgid ""
@@ -28549,10 +35829,17 @@ msgid ""
"method will ignore all non-number characters, so calling [code]int('1e3')[/"
"code] will return 13."
msgstr ""
+"Transforma un valor [String] a un valor entero, este método es un analizador "
+"de enteros de una cadena, por lo que llamar a este método con una cadena de "
+"enteros inválida devolverá 0, una cadena válida será algo así como "
+"[code]'1.7'[/code]. Este método ignorará todos los caracteres no numéricos, "
+"por lo que al llamar a [code]int('1e3')[/code] devolverá 13."
#: doc/classes/IP.xml:4
msgid "Internet protocol (IP) support functions such as DNS resolution."
msgstr ""
+"Funciones de soporte del protocolo de Internet (IP) como la resolución del "
+"DNS."
#: doc/classes/IP.xml:7
msgid ""
@@ -28560,22 +35847,34 @@ msgid ""
"is in different classes (see [StreamPeerTCP] and [TCP_Server]). IP provides "
"DNS hostname resolution support, both blocking and threaded."
msgstr ""
+"IP contiene funciones de apoyo al Protocolo de Internet (IP). El soporte de "
+"TCP/IP está en diferentes clases (ver [StreamPeerTCP] y [TCP_Server]). IP "
+"proporciona soporte para la resolución de nombres de host DNS, tanto de "
+"bloques como en hilos."
#: doc/classes/IP.xml:18
msgid ""
"Removes all of a [code]hostname[/code]'s cached references. If no "
"[code]hostname[/code] is given, all cached IP addresses are removed."
msgstr ""
+"Elimina todas las referencias de un [code]hostname[/code] en la caché. Si no "
+"se da un [code]hostname[/code], se eliminan todas las direcciones IP en "
+"caché."
#: doc/classes/IP.xml:27
msgid ""
"Removes a given item [code]id[/code] from the queue. This should be used to "
"free a queue after it has completed to enable more queries to happen."
msgstr ""
+"Elimina un determinado elemento [code]id[/code] de la cola. Esto debería "
+"usarse para liberar una cola después de que se haya completado para permitir "
+"que ocurran más consultas."
#: doc/classes/IP.xml:34
msgid "Returns all of the user's current IPv4 and IPv6 addresses as an array."
msgstr ""
+"Devuelve todas las direcciones IPv4 e IPv6 actuales del usuario como una "
+"array."
#: doc/classes/IP.xml:41
msgid ""
@@ -28591,6 +35890,17 @@ msgid ""
"}\n"
"[/codeblock]"
msgstr ""
+"Devuelve todos los adaptadores de red como un array.\n"
+"Cada adaptador es un diccionario de la forma:\n"
+"[codeblock]\n"
+"{\n"
+" \"index\": \"1\", # indice interfaz.\n"
+" \"name\": \"eth0\", # nombre interfaz.\n"
+" \"friendly\": \"Ethernet One\", # Un nombre amigable (puede ser vacio).\n"
+" \"addresses\": [\"192.168.1.101\"], # Un array de direcciones IP "
+"asociadas a esta interfaz.\n"
+"}\n"
+"[/codeblock]"
#: doc/classes/IP.xml:59
msgid ""
@@ -28598,12 +35908,17 @@ msgid ""
"Returns an empty string on error or if resolution hasn't happened yet (see "
"[method get_resolve_item_status])."
msgstr ""
+"Devuelve una elemento encolado de una direccion IP de un hostname, dada su "
+"cola [code]id[/code]. Devuelve una string vacía en caso de error o si la "
+"resolución no se ha producido todavía (ver [method get_resolve_item_status])."
#: doc/classes/IP.xml:68
msgid ""
"Returns a queued hostname's status as a [enum ResolverStatus] constant, "
"given its queue [code]id[/code]."
msgstr ""
+"Devuelve el estado de un encolado de hostname como una constante de [enum "
+"ResolverStatus], dada su cola [code]id[/code]."
#: doc/classes/IP.xml:79
msgid ""
@@ -28611,6 +35926,9 @@ msgid ""
"method). The address type returned depends on the [enum Type] constant given "
"as [code]ip_type[/code]."
msgstr ""
+"Devuelve la dirección IPv4 o IPv6 de un determinado nombre de host cuando se "
+"resuelve (método de bloqueo). El tipo de dirección devuelto depende de la "
+"constante [enum Type] dada como [code]ip_type[/code]."
#: doc/classes/IP.xml:90
msgid ""
@@ -28618,55 +35936,65 @@ msgid ""
"depending on the [enum Type] constant given as [code]ip_type[/code]. Returns "
"the queue ID if successful, or [constant RESOLVER_INVALID_ID] on error."
msgstr ""
+"Crea un elemento de cola para resolver un nombre de host a una dirección "
+"IPv4 o IPv6 dependiendo de la constante [enum Type] dada como [code]ip_type[/"
+"code]. Devuelve el ID de la cola si tiene éxito, o la constante [constant "
+"RESOLVER_INVALID_ID] en caso de error."
#: doc/classes/IP.xml:96
msgid "DNS hostname resolver status: No status."
-msgstr ""
+msgstr "Estado de la resolución del nombre de host del DNS: No hay estado."
#: doc/classes/IP.xml:99
msgid "DNS hostname resolver status: Waiting."
-msgstr ""
+msgstr "Estado de la resolución del nombre de host del DNS: Esperando."
#: doc/classes/IP.xml:102
msgid "DNS hostname resolver status: Done."
-msgstr ""
+msgstr "Estado de la resolución del nombre de host del DNS: Hecho."
#: doc/classes/IP.xml:105
msgid "DNS hostname resolver status: Error."
-msgstr ""
+msgstr "Estado de la resolución del nombre de host del DNS: Error."
#: doc/classes/IP.xml:108
msgid ""
"Maximum number of concurrent DNS resolver queries allowed, [constant "
"RESOLVER_INVALID_ID] is returned if exceeded."
msgstr ""
+"El máximo número de consultas de resolución DNS concurrentes permitidas, "
+"[constant RESOLVER_INVALID_ID] se devuelve si se excede."
#: doc/classes/IP.xml:111
msgid ""
"Invalid ID constant. Returned if [constant RESOLVER_MAX_QUERIES] is exceeded."
msgstr ""
+"Constante de identificación inválida. Devuelta si se supera la constant "
+"[RESOLVER_MAX_QUERIES]."
#: doc/classes/IP.xml:114
msgid "Address type: None."
-msgstr ""
+msgstr "Tipo de dirección: Ninguna."
#: doc/classes/IP.xml:117
msgid "Address type: Internet protocol version 4 (IPv4)."
-msgstr ""
+msgstr "Tipo de dirección: Protocolo de Internet versión 4 (IPv4)."
#: doc/classes/IP.xml:120
msgid "Address type: Internet protocol version 6 (IPv6)."
-msgstr ""
+msgstr "Tipo de dirección: Protocolo de Internet versión 6 (IPv6)."
#: doc/classes/IP.xml:123
msgid "Address type: Any."
-msgstr ""
+msgstr "Tipo de dirección: Cualquiera."
#: doc/classes/ItemList.xml:4
msgid ""
"Control that provides a list of selectable items (and/or icons) in a single "
"column, or optionally in multiple columns."
msgstr ""
+"Control que proporciona una lista de elementos (y/o iconos) seleccionables "
+"en una sola columna, u opcionalmente en varias columnas."
#: doc/classes/ItemList.xml:7
msgid ""
@@ -28683,10 +36011,25 @@ msgid ""
"fully fit its content by default. You need to set [member "
"fixed_column_width] greater than zero to wrap the text."
msgstr ""
+"Este control proporciona una lista seleccionable de elementos que pueden "
+"estar en una sola (o varias columnas) con opción de texto, iconos o ambos. "
+"Se admiten sugerencias y pueden ser diferentes para cada elemento de la "
+"lista.\n"
+"Los elementos seleccionables de la lista pueden ser seleccionados o "
+"deseleccionados y se puede activar la selección múltiple. La selección con "
+"el botón derecho del ratón también puede habilitarse para permitir el uso de "
+"menús contextuales emergentes. Los elementos también pueden \"activarse\" "
+"haciendo doble clic en ellos o pulsando [kbd]Enter[/kbd].\n"
+"El texto del elemento sólo admite strings de una sola línea, los caracteres "
+"de nueva línea (por ejemplo, [code]\\n[/code]) en la cadena no producirán "
+"una nueva línea. La envoltura de texto está habilitada en el modo [constant "
+"ICON_MODE_TOP], pero el ancho de la columna se ajusta de forma "
+"predeterminada para que se ajuste totalmente a su contenido. Es necesario "
+"establecer [member fixed_column_width] mayor que cero para envolver el texto."
#: doc/classes/ItemList.xml:22
msgid "Adds an item to the item list with no text, only an icon."
-msgstr ""
+msgstr "Añade un elemento a la lista de elementos sin texto, sólo un icono."
#: doc/classes/ItemList.xml:35
msgid ""
@@ -28695,16 +36038,23 @@ msgid ""
"with no icon.\n"
"If selectable is [code]true[/code], the list item will be selectable."
msgstr ""
+"Añade un elemento a la lista de elementos con un texto especificado. "
+"Especifique un [code]icon[/code], o utilice [code]null[/code] como el "
+"[code]icon[/code] para un elemento de la lista sin icono.\n"
+"Si el elemento de la lista que se puede seleccionar es [code]true[/code], el "
+"elemento de la lista será seleccionable."
#: doc/classes/ItemList.xml:43
msgid "Removes all items from the list."
-msgstr ""
+msgstr "Elimina todos los elementos de la lista."
#: doc/classes/ItemList.xml:50
msgid ""
"Ensure current selection is visible, adjusting the scroll position as "
"necessary."
msgstr ""
+"Asegúrese de que la selección actual sea visible, ajustando la posición del "
+"scroll según sea necesario."
#: doc/classes/ItemList.xml:61
msgid ""
@@ -28713,101 +36063,128 @@ msgid ""
"code] is [code]true[/code], and the closest item index will be returned "
"otherwise."
msgstr ""
+"Devuelve el índice del artículo en la [code]position[/code] dada.\n"
+"Cuando no hay ningún elemento en ese punto, se devolverá -1 si [code]exact[/"
+"code] es [code]true[/code], y de lo contrario se devolverá el índice de "
+"elemento más cercano."
#: doc/classes/ItemList.xml:69
msgid "Returns the number of items currently in the list."
-msgstr ""
+msgstr "Devuelve el número de elementos actualmente en la lista."
#: doc/classes/ItemList.xml:78
msgid ""
"Returns the custom background color of the item specified by [code]idx[/"
"code] index."
msgstr ""
+"Devuelve el color de fondo personalizado del elemento especificado por el "
+"índice [code]idx[/code]."
#: doc/classes/ItemList.xml:87
msgid ""
"Returns the custom foreground color of the item specified by [code]idx[/"
"code] index."
msgstr ""
+"Devuelve el color de primer plano personalizado del artículo especificado "
+"por el índice [code]idx[/code]."
#: doc/classes/ItemList.xml:96
msgid "Returns the icon associated with the specified index."
-msgstr ""
+msgstr "Devuelve el icono asociado al índice especificado."
#: doc/classes/ItemList.xml:105
msgid "Returns a [Color] modulating item's icon at the specified index."
msgstr ""
+"Devuelve un [Color] del icono de un elemento modulador en el índice "
+"especificado."
#: doc/classes/ItemList.xml:114
msgid ""
"Returns the region of item's icon used. The whole icon will be used if the "
"region has no area."
msgstr ""
+"Devuelve la región del icono del elemento utilizado. El icono completo será "
+"utilizado si la región no tiene área."
#: doc/classes/ItemList.xml:123
msgid "Returns the metadata value of the specified index."
-msgstr ""
+msgstr "Devuelve el valor de los metadatos del índice especificado."
#: doc/classes/ItemList.xml:132
msgid "Returns the text associated with the specified index."
-msgstr ""
+msgstr "Devuelve el texto asociado al índice especificado."
#: doc/classes/ItemList.xml:141
msgid "Returns the tooltip hint associated with the specified index."
msgstr ""
+"Devuelve la sugerencia de la herramienta asociada con el índice especificado."
#: doc/classes/ItemList.xml:148
msgid "Returns an array with the indexes of the selected items."
-msgstr ""
+msgstr "Devuelve un array con los índices de los elementos seleccionados."
#: doc/classes/ItemList.xml:155
msgid "Returns the [Object] ID associated with the list."
-msgstr ""
+msgstr "Devuelve el ID de [Object] asociado a la lista."
#: doc/classes/ItemList.xml:162
msgid "Returns [code]true[/code] if one or more items are selected."
-msgstr ""
+msgstr "Devuelve [code]true[/code] si se seleccionan uno o más elementos."
#: doc/classes/ItemList.xml:171
msgid ""
"Returns [code]true[/code] if the item at the specified index is disabled."
msgstr ""
+"Devuelve [code]true[/code] si el elemento del índice especificado está "
+"desactivado."
#: doc/classes/ItemList.xml:180
msgid ""
"Returns [code]true[/code] if the item icon will be drawn transposed, i.e. "
"the X and Y axes are swapped."
msgstr ""
+"Devuelve [code]true[/code] si el icono del elemento se dibujará transpuesto, "
+"es decir, los ejes X e Y se intercambian."
#: doc/classes/ItemList.xml:189
msgid ""
"Returns [code]true[/code] if the item at the specified index is selectable."
msgstr ""
+"Devuelve [code]true[/code] si el elemento en el índice especificado es "
+"seleccionable."
#: doc/classes/ItemList.xml:198
msgid ""
"Returns [code]true[/code] if the tooltip is enabled for specified item index."
msgstr ""
+"Devuelve [code]true[/code] si la sugerencia está habilitada para el índice "
+"del artículo especificado."
#: doc/classes/ItemList.xml:207
msgid ""
"Returns [code]true[/code] if the item at the specified index is currently "
"selected."
msgstr ""
+"Devuelve [code]true[/code] si el elemento del índice especificado está "
+"actualmente seleccionado."
#: doc/classes/ItemList.xml:218
msgid "Moves item from index [code]from_idx[/code] to [code]to_idx[/code]."
msgstr ""
+"Mueve el elemento del índice [code]from_idx[/code] a [code]to_idx[/code]."
#: doc/classes/ItemList.xml:227
msgid "Removes the item specified by [code]idx[/code] index from the list."
msgstr ""
+"Elimina de la lista el elemento especificado por el índice [code]idx[/code]."
#: doc/classes/ItemList.xml:238
msgid ""
"Select the item at the specified index.\n"
"[b]Note:[/b] This method does not trigger the item selection signal."
msgstr ""
+"Seleccione el elemento en el índice especificado.\n"
+"[b]Nota:[/b] Este método no dispara la señal de selección del elemento."
#: doc/classes/ItemList.xml:250
msgid ""
@@ -28819,6 +36196,13 @@ msgid ""
"background color of the first item of the control to red.\n"
"[/codeblock]"
msgstr ""
+"Establece el color de fondo del elemento especificado por el índice "
+"[code]idx[/code] al [Color] especificado.\n"
+"[codeblock]\n"
+"var una_string = \"Algun texto\"\n"
+"una_string.set_item_custom_bg_color(0,Color(1, 0, 0, 1) # Esto pondrá el "
+"color de fondo del primer elemento del control en rojo.\n"
+"[/codeblock]"
#: doc/classes/ItemList.xml:265
msgid ""
@@ -28830,6 +36214,13 @@ msgid ""
"foreground color of the first item of the control to red.\n"
"[/codeblock]"
msgstr ""
+"Establece el color de primer plano del elemento especificado por el índice "
+"[code]idx[/code] al [Color] especificado.\n"
+"[codeblock]\n"
+"var una_string = \"Algun texto\"\n"
+"una_string.set_item_custom_fg_color(0,Color(1, 0, 0, 1) #Esto pondrá el "
+"color de primer plano del primer elemento del control en rojo.\n"
+"[/codeblock]"
#: doc/classes/ItemList.xml:280
msgid ""
@@ -28837,78 +36228,98 @@ msgid ""
"Disabled items cannot be selected and do not trigger activation signals "
"(when double-clicking or pressing [kbd]Enter[/kbd])."
msgstr ""
+"Desactiva (o activa) el artículo en el índice especificado.\n"
+"Los elementos desactivados no pueden seleccionarse y no activan las señales "
+"de activación (cuando se hace doble clic o se pulsa [kbd]Enter[/kbd])."
#: doc/classes/ItemList.xml:292
msgid ""
"Sets (or replaces) the icon's [Texture2D] associated with the specified "
"index."
msgstr ""
+"Establece (o reemplaza) el icono [Texture2D] asociado al índice especificado."
#: doc/classes/ItemList.xml:303
msgid ""
"Sets a modulating [Color] of the item associated with the specified index."
msgstr ""
+"Establece un [Color] modulador del elemento asociado al índice especificado."
#: doc/classes/ItemList.xml:314
msgid ""
"Sets the region of item's icon used. The whole icon will be used if the "
"region has no area."
msgstr ""
+"Establece la región del icono del elemento utilizado. El icono completo se "
+"utilizará si la región no tiene área."
#: doc/classes/ItemList.xml:325
msgid "Sets whether the item icon will be drawn transposed."
-msgstr ""
+msgstr "Establece si el icono del elemento se dibujará transpuesto."
#: doc/classes/ItemList.xml:336
msgid ""
"Sets a value (of any type) to be stored with the item associated with the "
"specified index."
msgstr ""
+"Establece un valor (de cualquier tipo) que se almacenará con el elemento "
+"asociado al índice especificado."
#: doc/classes/ItemList.xml:347
msgid ""
"Allows or disallows selection of the item associated with the specified "
"index."
msgstr ""
+"Permite o no la selección del elemento asociado al índice especificado."
#: doc/classes/ItemList.xml:358
msgid "Sets text of the item associated with the specified index."
-msgstr ""
+msgstr "Establece el texto del elemento asociado con el índice especificado."
#: doc/classes/ItemList.xml:369
msgid "Sets the tooltip hint for the item associated with the specified index."
msgstr ""
+"Establece la sugerencia para el elemento asociado con el índice especificado."
#: doc/classes/ItemList.xml:380
msgid "Sets whether the tooltip hint is enabled for specified item index."
msgstr ""
+"Establece si la sugerencia está habilitada para el índice de elementos "
+"especificados."
#: doc/classes/ItemList.xml:387
msgid "Sorts items in the list by their text."
-msgstr ""
+msgstr "Ordena los elementos de la lista por su texto."
#: doc/classes/ItemList.xml:396
msgid "Ensures the item associated with the specified index is not selected."
msgstr ""
+"Asegura que no se seleccione el elemento asociado al índice especificado."
#: doc/classes/ItemList.xml:403
msgid "Ensures there are no items selected."
-msgstr ""
+msgstr "Se asegura de que no haya elementos seleccionados."
#: doc/classes/ItemList.xml:409
msgid ""
"If [code]true[/code], the currently selected item can be selected again."
msgstr ""
+"Si [code]true[/code], el elemento actualmente seleccionado puede ser "
+"seleccionado de nuevo."
#: doc/classes/ItemList.xml:412
msgid "If [code]true[/code], right mouse button click can select items."
msgstr ""
+"Si [code]true[/code], al hacer clic con el botón derecho del ratón se pueden "
+"seleccionar elementos."
#: doc/classes/ItemList.xml:415
msgid ""
"If [code]true[/code], the control will automatically resize the height to "
"fit its content."
msgstr ""
+"Si [code]true[/code], el control redimensionará automáticamente la altura "
+"para que se ajuste a su contenido."
#: doc/classes/ItemList.xml:418
msgid ""
@@ -28916,6 +36327,9 @@ msgid ""
"A value of zero disables the adjustment, each item will have a width equal "
"to the width of its content and the columns will have an uneven width."
msgstr ""
+"El ancho de todas las columnas se ajustará.\n"
+"Un valor de cero desactiva el ajuste, cada elemento tendrá una anchura igual "
+"a la de su contenido y las columnas tendrán una anchura desigual."
#: doc/classes/ItemList.xml:422
msgid ""
@@ -28923,18 +36337,25 @@ msgid ""
"If either X or Y component is not greater than zero, icon size won't be "
"affected."
msgstr ""
+"El tamaño de todos los iconos se ajustará.\n"
+"Si el componente X o Y no es mayor que cero, el tamaño del icono no se verá "
+"afectado."
#: doc/classes/ItemList.xml:427
msgid ""
"The icon position, whether above or to the left of the text. See the [enum "
"IconMode] constants."
msgstr ""
+"La posición del icono, ya sea arriba o a la izquierda del texto. Vea las "
+"constantes [enum IconMode]."
#: doc/classes/ItemList.xml:430
msgid ""
"The scale of icon applied after [member fixed_icon_size] and transposing "
"takes effect."
msgstr ""
+"La escala de icono aplicada después de [member fixed_icon_size] y la "
+"transposición tiene efecto."
#: doc/classes/ItemList.xml:433
msgid ""
@@ -28944,6 +36365,11 @@ msgid ""
"A value of zero means unlimited columns, i.e. all items will be put in the "
"same row."
msgstr ""
+"Columnas máximas que tendrá la lista.\n"
+"Si es mayor que cero, el contenido se dividirá entre las columnas "
+"especificadas.\n"
+"Un valor de cero significa que las columnas son ilimitadas, es decir, que "
+"todos los artículos se pondrán en la misma fila."
#: doc/classes/ItemList.xml:438
msgid ""
@@ -28953,6 +36379,11 @@ msgid ""
"[constant ICON_MODE_TOP]. To make the text wrap, [member fixed_column_width] "
"should be greater than zero."
msgstr ""
+"Líneas de texto máximas permitidas en cada elemento. Se reservará espacio "
+"incluso cuando no haya suficientes líneas de texto para mostrar.\n"
+"[b]Nota:[/b] Esta propiedad sólo tiene efecto cuando [member icon_mode] es "
+"[constant ICON_MODE_TOP]. Para hacer la envoltura de texto, [member "
+"fixed_column_width] debe ser mayor que cero."
#: doc/classes/ItemList.xml:443
msgid ""
@@ -28960,18 +36391,24 @@ msgid ""
"If [code]true[/code], the width is equal to the largest column width of all "
"columns."
msgstr ""
+"Si todas las columnas tendrán el mismo ancho.\n"
+"Si [code]true[/code], el ancho es igual al mayor ancho de todas las columnas."
#: doc/classes/ItemList.xml:447
msgid ""
"Allows single or multiple item selection. See the [enum SelectMode] "
"constants."
msgstr ""
+"Permite la selección de uno o varios elementos. Vea las constantes [enum "
+"SelectMode]."
#: doc/classes/ItemList.xml:455
msgid ""
"Triggered when specified list item is activated via double-clicking or by "
"pressing [kbd]Enter[/kbd]."
msgstr ""
+"Se activa cuando el elemento de la lista especificado se activa haciendo "
+"doble clic o pulsando [kbd]Enter[/kbd]."
#: doc/classes/ItemList.xml:464
msgid ""
@@ -28981,24 +36418,36 @@ msgid ""
"menus at the correct location.\n"
"[member allow_rmb_select] must be enabled."
msgstr ""
+"Se activa cuando se ha seleccionado un elemento de la lista especificado "
+"mediante un clic del botón derecho del ratón.\n"
+"La posición del clic también se proporciona para permitir la aparición de "
+"menús contextuales apropiados en la ubicación correcta.\n"
+"La opción [member allow_rmb_select] debe estar activada."
#: doc/classes/ItemList.xml:473
msgid ""
"Triggered when specified item has been selected.\n"
"[member allow_reselect] must be enabled to reselect an item."
msgstr ""
+"Se activa cuando se selecciona un elemento específico.\n"
+"Para poder volver a seleccionar un elemento, se debe activar la opción "
+"[member allow_reselect]."
#: doc/classes/ItemList.xml:483
msgid ""
"Triggered when a multiple selection is altered on a list allowing multiple "
"selection."
msgstr ""
+"Se activa cuando se altera una selección múltiple en una lista que permite "
+"la selección múltiple."
#: doc/classes/ItemList.xml:488
msgid ""
"Triggered when a left mouse click is issued within the rect of the list but "
"on empty space."
msgstr ""
+"Se activa cuando se hace un clic con el botón izquierdo del ratón dentro del "
+"rectángulo de la lista pero en el espacio vacío."
#: doc/classes/ItemList.xml:495
msgid ""
@@ -29006,94 +36455,112 @@ msgid ""
"on empty space.\n"
"[member allow_rmb_select] must be enabled."
msgstr ""
+"Se activa cuando se hace un clic con el botón derecho del ratón dentro del "
+"rectángulo de la lista pero en el espacio vacío.\n"
+"[member allow_rmb_select] debe estar activado."
#: doc/classes/ItemList.xml:502
msgid "Icon is drawn above the text."
-msgstr ""
+msgstr "El icono se dibuja sobre el texto."
#: doc/classes/ItemList.xml:505
msgid "Icon is drawn to the left of the text."
-msgstr ""
+msgstr "El icono se dibuja a la izquierda del texto."
#: doc/classes/ItemList.xml:508
msgid "Only allow selecting a single item."
-msgstr ""
+msgstr "Sólo permite seleccionar un único elemento."
#: doc/classes/ItemList.xml:511
msgid ""
"Allows selecting multiple items by holding [kbd]Ctrl[/kbd] or [kbd]Shift[/"
"kbd]."
msgstr ""
+"Permite seleccionar varios elementos manteniendo pulsada la tecla [kbd]Ctrl[/"
+"kbd] o [kbd]Shift[/kbd]."
#: doc/classes/ItemList.xml:516
msgid ""
"Default [StyleBox] for the [ItemList], i.e. used when the control is not "
"being focused."
msgstr ""
+"Por defecto, [StyleBox] para la [ItemList], es decir, se utiliza cuando el "
+"control no está siendo enfocado."
#: doc/classes/ItemList.xml:519
msgid "[StyleBox] used when the [ItemList] is being focused."
-msgstr ""
+msgstr "[StyleBox] que se usa cuando se enfoca la [ItemList]."
#: doc/classes/ItemList.xml:522
msgid "[StyleBox] used for the cursor, when the [ItemList] is being focused."
msgstr ""
+"[StyleBox] usado para el cursor, cuando el [ItemList] está siendo enfocado."
#: doc/classes/ItemList.xml:525
msgid ""
"[StyleBox] used for the cursor, when the [ItemList] is not being focused."
msgstr ""
+"[StyleBox] usado para el cursor, cuando el [ItemList] no está siendo "
+"enfocado."
#: doc/classes/ItemList.xml:528 doc/classes/Tree.xml:439
msgid "[Font] of the item's text."
-msgstr ""
+msgstr "[Font] del texto del elemento."
#: doc/classes/ItemList.xml:531 doc/classes/Tree.xml:442
msgid "Default text [Color] of the item."
-msgstr ""
+msgstr "[Color] del texto predeterminado del elemento."
#: doc/classes/ItemList.xml:534 doc/classes/Tree.xml:445
msgid "Text [Color] used when the item is selected."
-msgstr ""
+msgstr "[Color] del texto utilizado cuando se selecciona el elemento."
#: doc/classes/ItemList.xml:537
msgid ""
"[Color] of the guideline. The guideline is a line drawn between each row of "
"items."
msgstr ""
+"[Color] de la pauta. La pauta es una línea trazada entre cada fila de "
+"elementos."
#: doc/classes/ItemList.xml:540
msgid "The horizontal spacing between items."
-msgstr ""
+msgstr "El espacio horizontal entre los elementos."
#: doc/classes/ItemList.xml:543
msgid "The spacing between item's icon and text."
-msgstr ""
+msgstr "El espacio entre el icono del elemento y el texto."
#: doc/classes/ItemList.xml:546
msgid "The vertical spacing between each line of text."
-msgstr ""
+msgstr "El espacio vertical entre cada línea de texto."
#: doc/classes/ItemList.xml:549
msgid ""
"[StyleBox] for the selected items, used when the [ItemList] is not being "
"focused."
msgstr ""
+"[StyleBox] para los elementos seleccionados, utilizado cuando la [ItemList] "
+"no está siendo enfocada."
#: doc/classes/ItemList.xml:552
msgid ""
"[StyleBox] for the selected items, used when the [ItemList] is being focused."
msgstr ""
+"[StyleBox] para los elementos seleccionados, que se utiliza cuando se enfoca "
+"la [ItemList]."
#: doc/classes/ItemList.xml:555
msgid "The vertical spacing between items."
-msgstr ""
+msgstr "El espacio vertical entre los artículos."
#: doc/classes/JavaScript.xml:4
msgid ""
"Singleton that connects the engine with the browser's JavaScript context in "
"HTML5 export."
msgstr ""
+"Singleton que conecta el motor con el contexto JavaScript del navegador en "
+"la exportación HTML5."
#: doc/classes/JavaScript.xml:7
msgid ""
@@ -29101,12 +36568,18 @@ msgid ""
"to access the browser's JavaScript context. This allows interaction with "
"embedding pages or calling third-party JavaScript APIs."
msgstr ""
+"El singleton de JavaScript se implementa sólo en la exportación a HTML5. Se "
+"usa para acceder al contexto de JavaScript del navegador. Esto permite "
+"interactuar con páginas incrustadas o llamar a APIs de JavaScript de "
+"terceros."
#: doc/classes/JavaScript.xml:10
msgid ""
"https://docs.godotengine.org/en/latest/getting_started/workflow/export/"
"exporting_for_web.html#calling-javascript-from-script"
msgstr ""
+"https://docs.godotengine.org/es/latest/getting_started/workflow/export/"
+"exporting_for_web.html#calling-javascript-from-script"
#: doc/classes/JavaScript.xml:21
msgid ""
@@ -29118,16 +36591,26 @@ msgid ""
"evaluated in the execution context of a function within the engine's runtime "
"environment."
msgstr ""
+"Ejecute la string [code]code[/code] como código JavaScript dentro de la "
+"ventana del navegador. Esta es una llamada a la función global actual de "
+"JavaScript [code]eval()[/code].\n"
+"Si [code]use_global_execution_context[/code] es [code]true[/code], el código "
+"será evaluado en el contexto de ejecución global. De lo contrario, se "
+"evaluará en el contexto de ejecución de una función dentro del entorno de "
+"tiempo de ejecución del motor."
#: doc/classes/Joint2D.xml:4
msgid "Base node for all joint constraints in 2D physics."
-msgstr ""
+msgstr "Nodo base para todas las restricciones conjuntas en la física 2D."
#: doc/classes/Joint2D.xml:7
msgid ""
"Base node for all joint constraints in 2D physics. Joints take 2 bodies and "
"apply a custom constraint."
msgstr ""
+"Nodo base para todas las restricciones de las articulaciones en la física "
+"2D. Las articulaciones toman 2 cuerpos y aplican una restricción "
+"personalizada."
#: doc/classes/Joint2D.xml:15
msgid ""
@@ -29136,27 +36619,31 @@ msgid ""
"original position. The lower the [code]bias[/code] the more the two bodies "
"can pull on the joint."
msgstr ""
+"Cuando [member node_a] y [member node_b] se mueven en diferentes "
+"direcciones, el [code]bias[/code] controla la rapidez con que la "
+"articulación los devuelve a su posición original. Cuanto más bajo sea el "
+"[code]bias[/code], más pueden los dos cuerpos tirar de la articulación."
#: doc/classes/Joint2D.xml:18
-#, fuzzy
msgid ""
"If [code]true[/code], [member node_a] and [member node_b] can not collide."
msgstr ""
-"Si [code]true[/code], la [member animation] se está reproduciendo "
-"actualmente."
+"Si [code]true[/code], [member node_a] y [member node_b] no pueden colisionar."
#: doc/classes/Joint2D.xml:21
msgid "The first body attached to the joint. Must derive from [PhysicsBody2D]."
msgstr ""
+"El primer cuerpo unido a la articulación. Debe derivar de [PhysicsBody2D]."
#: doc/classes/Joint2D.xml:24
msgid ""
"The second body attached to the joint. Must derive from [PhysicsBody2D]."
msgstr ""
+"El segundo cuerpo unido a la articulación. Debe derivar de [PhysicsBody2D]."
#: doc/classes/Joint3D.xml:4
msgid "Base class for all 3D joints."
-msgstr ""
+msgstr "Clase de base para todas las articulaciones 3D."
#: doc/classes/Joint3D.xml:7
msgid ""
@@ -29164,52 +36651,68 @@ msgid ""
"priority and can define if the bodies of the two attached nodes should be "
"able to collide with each other."
msgstr ""
+"Las articulaciones se usan para unir dos cuerpos físicos. Tienen una "
+"prioridad de resolución y pueden definir si los cuerpos de los dos nodos "
+"unidos deben ser capaces de colisionar entre sí."
#: doc/classes/Joint3D.xml:15
msgid ""
"If [code]true[/code], the two bodies of the nodes are not able to collide "
"with each other."
msgstr ""
+"Si [code]true[/code], los dos cuerpos de los nodos no son capaces de "
+"colisionar entre sí."
#: doc/classes/Joint3D.xml:18
msgid "The node attached to the first side (A) of the joint."
-msgstr ""
+msgstr "El nodo unido al primer lado (A) de la articulación."
#: doc/classes/Joint3D.xml:21
msgid "The node attached to the second side (B) of the joint."
-msgstr ""
+msgstr "El nodo unido al segundo lado (B) de la articulación."
#: doc/classes/Joint3D.xml:24
msgid ""
"The priority used to define which solver is executed first for multiple "
"joints. The lower the value, the higher the priority."
msgstr ""
+"La prioridad usada para definir qué solucionador se ejecuta primero para "
+"múltiples articulaciones. Cuanto más bajo es el valor, más alta es la "
+"prioridad."
#: doc/classes/JSON.xml:4
msgid "Helper class for parsing JSON data."
-msgstr ""
+msgstr "Clase de ayuda para analizar los datos de JSON."
#: doc/classes/JSON.xml:7
msgid ""
"Helper class for parsing JSON data. For usage example and other important "
"hints, see [JSONParseResult]."
msgstr ""
+"Clase de ayuda para analizar los datos de JSON. Para el ejemplo de uso y "
+"otros consejos importantes, ver [JSONParseResult]."
#: doc/classes/JSON.xml:18
+#, fuzzy
msgid ""
-"Parses a JSON encoded string and returns a [JSONParseResult] containing the "
+"Parses a JSON-encoded string and returns a [JSONParseResult] containing the "
"result."
msgstr ""
+"Analiza una cadena codificada JSON y devuelve un [JSONParseResult] que "
+"contiene el resultado."
#: doc/classes/JSON.xml:31
msgid ""
"Converts a [Variant] var to JSON text and returns the result. Useful for "
-"serializing data to store or send over the network."
+"serializing data to store or send over the network.\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, converting a Variant to JSON text "
+"will convert all numerical values to [float] types."
msgstr ""
#: doc/classes/JSONParseResult.xml:4
msgid "Data class wrapper for decoded JSON."
-msgstr ""
+msgstr "Envoltura de clase de datos para JSON decodificado."
#: doc/classes/JSONParseResult.xml:7
msgid ""
@@ -29218,35 +36721,48 @@ msgid ""
"check if the JSON source was successfully parsed with [code]if json_result."
"error == OK[/code]."
msgstr ""
+"Devuelto por [method JSON.parse], [JSONParseResult] contiene el JSON "
+"decodificado o la información de error si la fuente JSON no fue analizada "
+"con éxito. Puedes comprobar si la fuente JSON fue analizada con éxito con "
+"[code]if json_result.error == OK[/code]."
#: doc/classes/JSONParseResult.xml:15
msgid ""
"The error type if the JSON source was not successfully parsed. See the [enum "
"Error] constants."
msgstr ""
+"El tipo de error si la fuente JSON no fue analizada con éxito. Vea las "
+"constantes [enum Error]."
#: doc/classes/JSONParseResult.xml:18
+#, fuzzy
msgid ""
-"The line number where the error occurred if JSON source was not successfully "
-"parsed."
+"The line number where the error occurred if the JSON source was not "
+"successfully parsed."
msgstr ""
+"El número de línea donde ocurrió el error si la fuente JSON no fue analizada "
+"con éxito."
#: doc/classes/JSONParseResult.xml:21
+#, fuzzy
msgid ""
-"The error message if JSON source was not successfully parsed. See the [enum "
-"Error] constants."
+"The error message if the JSON source was not successfully parsed. See the "
+"[enum Error] constants."
msgstr ""
+"El mensaje de error si la fuente de JSON no fue analizada con éxito. Vea las "
+"constantes [enum Error]."
#: doc/classes/JSONParseResult.xml:24
+#, fuzzy
msgid ""
"A [Variant] containing the parsed JSON. Use [method @GDScript.typeof] or the "
"[code]is[/code] keyword to check if it is what you expect. For example, if "
"the JSON source starts with curly braces ([code]{}[/code]), a [Dictionary] "
-"will be returned. If the JSON source starts with braces ([code][][/code]), "
+"will be returned. If the JSON source starts with brackets ([code][][/code]), "
"an [Array] will be returned.\n"
"[b]Note:[/b] The JSON specification does not define integer or float types, "
-"but only a number type. Therefore, parsing a JSON text will convert all "
-"numerical values to float types.\n"
+"but only a [i]number[/i] type. Therefore, parsing a JSON text will convert "
+"all numerical values to [float] types.\n"
"[b]Note:[/b] JSON objects do not preserve key order like Godot dictionaries, "
"thus, you should not rely on keys being in a certain order if a dictionary "
"is constructed from JSON. In contrast, JSON arrays retain the order of their "
@@ -29256,13 +36772,32 @@ msgid ""
"if typeof(p.result) == TYPE_ARRAY:\n"
" print(p.result[0]) # Prints \"hello\"\n"
"else:\n"
-" print(\"unexpected results\")\n"
+" push_error(\"Unexpected results.\")\n"
"[/codeblock]"
msgstr ""
+"Una [Variant] que contiene el JSON analizado. Utilice [method @GDScript."
+"typeof] o la palabra clave [code]is[/code] para comprobar si es lo que "
+"espera. Por ejemplo, si la fuente de JSON comienza con llaves ([code]{}[/"
+"code]), se devolverá un [Dictionary]. Si la fuente de JSON comienza con "
+"llaves ([code][][/code]), se devolverá un [Array].\n"
+"[b]Nota:[/b] La especificación JSON no define los tipos enteros o reales, "
+"sino sólo un tipo de número. Por lo tanto, el análisis sintáctico de un "
+"texto JSON convertirá todos los valores numéricos en tipos reales.\n"
+"[b]Nota:[/b] Los objetos JSON no conservan el orden de las claves como los "
+"diccionarios Godot, por lo tanto, no debe confiar en que las claves estén en "
+"un cierto orden si un diccionario se construye a partir de JSON. Por el "
+"contrario, los conjuntos de JSON conservan el orden de sus elementos:\n"
+"[codeblock]\n"
+"var array = JSON.parse('[\"hola\", \"mundo\", \"!\"]')\n"
+"if typeof(array.result) == TYPE_ARRAY:\n"
+" print(array.result[0]) # Imprime \"hola\"\n"
+"else:\n"
+" print(\"resultados inesperados\")\n"
+"[/codeblock]"
#: doc/classes/KinematicBody2D.xml:4
msgid "Kinematic body 2D node."
-msgstr ""
+msgstr "Nodo 2D del cuerpo cinético."
#: doc/classes/KinematicBody2D.xml:7
msgid ""
@@ -29282,18 +36817,38 @@ msgid ""
"characters that collide against a world, but that don't require advanced "
"physics."
msgstr ""
+"Los cuerpos cinéticos son tipos especiales de cuerpos que están destinados a "
+"ser controlados por el usuario. No se ven afectados por la física en "
+"absoluto; para otros tipos de cuerpos, como un personaje o un cuerpo rígido, "
+"son lo mismo que un cuerpo estático. Sin embargo, tienen dos usos "
+"principales:\n"
+"[b]Movimiento simulado:[/b] Cuando estos cuerpos se mueven manualmente, ya "
+"sea desde el código o desde un [AnimationPlayer] (con el [member "
+"AnimationPlayer.playback_process_mode] ajustado a \"física\"), la física "
+"calculará automáticamente una estimación de su velocidad lineal y angular. "
+"Esto los hace muy útiles para mover plataformas u otros objetos controlados "
+"por AnimationPlayer (como una puerta, un puente que se abre, etc.).\n"
+"[b]Caracteres cinéticos:[/b] KinematicBody2D también tiene una API para "
+"mover objetos (los métodos [method move_and_collide] y [method "
+"move_and_slide]) mientras se realizan pruebas de colisión. Esto los hace "
+"realmente útiles para implementar personajes que colisionan contra un mundo, "
+"pero que no requieren de una física avanzada."
#: doc/classes/KinematicBody2D.xml:12 doc/classes/KinematicBody3D.xml:12
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/physics/"
"kinematic_character_2d.html"
msgstr ""
+"https://docs.godotengine.org/es/latest/tutorials/physics/"
+"kinematic_character_2d.html"
#: doc/classes/KinematicBody2D.xml:13
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/physics/"
"using_kinematic_body_2d.html"
msgstr ""
+"https://docs.godotengine.org/es/latest/tutorials/physics/"
+"using_kinematic_body_2d.html"
#: doc/classes/KinematicBody2D.xml:20 doc/classes/KinematicBody3D.xml:28
msgid ""
@@ -29302,6 +36857,10 @@ msgid ""
"move_and_slide_with_snap] and when [method is_on_floor] returns [code]true[/"
"code]."
msgstr ""
+"Devuelve la normal de la superficie del suelo en el último punto de "
+"colisión. Sólo válido después de llamar a [method move_and_slide] o [method "
+"move_and_slide_with_snap] y cuando [method is_on_floor] devuelve [code]true[/"
+"code]."
#: doc/classes/KinematicBody2D.xml:27 doc/classes/KinematicBody3D.xml:35
msgid ""
@@ -29310,6 +36869,10 @@ msgid ""
"move_and_slide_with_snap] and when [method is_on_floor] returns [code]true[/"
"code]."
msgstr ""
+"Devuelve la velocidad lineal del suelo en el último punto de colisión. Sólo "
+"es válido después de llamar a [method move_and_slide] o [method "
+"move_and_slide_with_snap] y cuando [method is_on_floor] devuelve [code]true[/"
+"code]."
#: doc/classes/KinematicBody2D.xml:36
msgid ""
@@ -29325,30 +36888,49 @@ msgid ""
" print(\"Collided with: \", collision.collider.name)\n"
"[/codeblock]"
msgstr ""
+"Devuelve un [KinematicCollision2D], que contiene información acerca de una "
+"colisión que ocurrió durante la última llamada del [method move_and_slide]. "
+"Dado que el cuerpo puede colisionar varias veces en una sola llamada a "
+"[method move_and_slide], debes especificar el índice de la colisión en el "
+"rango 0 a ([method get_slide_count] - 1).\n"
+"[b]Ejemplo de uso:[/b]\n"
+"[codeblock]\n"
+"for i in get_slide_count():\n"
+" var colision = get_slide_collision(i)\n"
+" print(\"Colisionó con: \", colision.collider.name)\n"
+"[/codeblock]"
#: doc/classes/KinematicBody2D.xml:49 doc/classes/KinematicBody3D.xml:51
msgid ""
"Returns the number of times the body collided and changed direction during "
"the last call to [method move_and_slide]."
msgstr ""
+"Devuelve el número de veces que el cuerpo chocó y cambió de dirección "
+"durante la última llamada a [method move_and_slide]."
#: doc/classes/KinematicBody2D.xml:56 doc/classes/KinematicBody3D.xml:58
msgid ""
"Returns [code]true[/code] if the body is on the ceiling. Only updates when "
"calling [method move_and_slide]."
msgstr ""
+"Devuelve [code]true[/code] si el cuerpo está en el techo. Sólo se actualiza "
+"cuando se llama a [method move_and_slide]."
#: doc/classes/KinematicBody2D.xml:63 doc/classes/KinematicBody3D.xml:65
msgid ""
"Returns [code]true[/code] if the body is on the floor. Only updates when "
"calling [method move_and_slide]."
msgstr ""
+"Devuelve [code]true[/code] si el cuerpo está en el suelo. Sólo se actualiza "
+"cuando se llama a [method move_and_slide]."
#: doc/classes/KinematicBody2D.xml:70 doc/classes/KinematicBody3D.xml:72
msgid ""
"Returns [code]true[/code] if the body is on a wall. Only updates when "
"calling [method move_and_slide]."
msgstr ""
+"Devuelve [code]true[/code] si el cuerpo está en una pared. Sólo se actualiza "
+"cuando se llama a [method move_and_slide]."
#: doc/classes/KinematicBody2D.xml:85
msgid ""
@@ -29358,8 +36940,14 @@ msgid ""
"If [code]test_only[/code] is [code]true[/code], the body does not move but "
"the would-be collision information is given."
msgstr ""
+"Mueve el cuerpo a lo largo del vector [code]rel_vec[/code]. El cuerpo se "
+"detendrá si colisiona. Devuelve un [KinematicCollision2D], que contiene "
+"información sobre la colisión.\n"
+"Si [code]test_only[/code] es [code]true[/code], el cuerpo no se mueve pero "
+"se da la información de la posible colisión."
#: doc/classes/KinematicBody2D.xml:105
+#, fuzzy
msgid ""
"Moves the body along a vector. If the body collides with another, it will "
"slide along the other body rather than stop immediately. If the other body "
@@ -29372,7 +36960,7 @@ msgid ""
"simulation will run at an incorrect speed.\n"
"[code]linear_velocity[/code] is the velocity vector in pixels per second. "
"Unlike in [method move_and_collide], you should [i]not[/i] multiply it by "
-"[code]delta[/code] — the physics engine handles applying the velocity. \n"
+"[code]delta[/code] — the physics engine handles applying the velocity.\n"
"[code]up_direction[/code] is the up direction, used to determine what is a "
"wall and what is a floor or a ceiling. If set to the default value of "
"[code]Vector2(0, 0)[/code], everything is considered a wall. This is useful "
@@ -29393,6 +36981,39 @@ msgid ""
"slide collision occurred. To get detailed information about collisions that "
"occurred, use [method get_slide_collision]."
msgstr ""
+"Mueve el cuerpo a lo largo de un vector. Si el cuerpo choca con otro, se "
+"deslizará a lo largo del otro cuerpo en lugar de detenerse inmediatamente. "
+"Si el otro cuerpo es un [KinematicBody2d] o un [RigidBody2D], también se "
+"verá afectado por el movimiento del otro cuerpo. Puedes usar esto para hacer "
+"plataformas móviles o giratorias, o para hacer que los nodos empujen a otros "
+"nodos.\n"
+"Este método debe ser usado en [method Node._physics_process] (o en un método "
+"llamado por [method Node._physics_process]), ya que usa el valor del paso de "
+"física [code]delta[/code] automáticamente en los cálculos. De lo contrario, "
+"la simulación se ejecutará a una velocidad incorrecta.\n"
+"[code]linear_velocity[/code] es el vector de velocidad en píxeles por "
+"segundo. A diferencia del [method move_and_collide], debes [i]no[/i] "
+"multiplicarlo por [code]delta[/code] - el motor de física se encarga de "
+"aplicar la velocidad. \n"
+"[code]up_direction[/code] es la dirección hacia arriba, usada para "
+"determinar qué es una pared y qué es un piso o un techo. Si se establece el "
+"valor por defecto de [code]Vector2(0, 0)[/code], todo se considera una "
+"pared. Esto es útil para los juegos de arriba hacia abajo.\n"
+"Si [code]stop_on_slope[/code] es [code]true[/code], el cuerpo no se "
+"deslizará por las pendientes cuando incluyas la gravedad en "
+"[code]linear_velocity[/code] y el cuerpo se quede quieto.\n"
+"Si el cuerpo colisiona, cambiará de dirección un máximo de [code]max_slides[/"
+"code] veces antes de detenerse.\n"
+"[code]floor_max_angle[/code] es el ángulo máximo (en radianes) en el que una "
+"pendiente se considera todavía un suelo (o un techo), en lugar de una pared. "
+"El valor por defecto es igual a 45 grados.\n"
+"Si [code]infinite_inertia[/code] es [code]true[/code], el cuerpo podrá "
+"empujar los nodos de [RigidBody2D], pero no detectará ninguna colisión con "
+"ellos. Si [code]false[/code], interactuará con los nodos de [RigidBody2D] "
+"como con [StaticBody2D].\n"
+"Devuelve el vector [code]linear_velocity[/code], rotado y/o escalado si se "
+"produjo una colisión de deslizamiento. Para obtener información detallada "
+"sobre las colisiones ocurridas, usa [method get_slide_collision]."
#: doc/classes/KinematicBody2D.xml:134
msgid ""
@@ -29403,6 +37024,13 @@ msgid ""
"in order to jump, for example. You can do this by setting [code]snap[/code] "
"to [code](0, 0)[/code] or by using [method move_and_slide] instead."
msgstr ""
+"Mueve el cuerpo mientras lo mantiene unido a las laderas. Similar al [method "
+"move_and_slide].\n"
+"Mientras el vector [code]snap[/code] esté en contacto con el suelo, el "
+"cuerpo permanecerá unido a la superficie. Esto significa que debes "
+"desactivar el snap para poder saltar, por ejemplo. Puedes hacerlo poniendo "
+"[code]snap[/code] en [code](0, 0)[/code] o usando [method move_and_slide] en "
+"su lugar."
#: doc/classes/KinematicBody2D.xml:148
msgid ""
@@ -29411,12 +37039,18 @@ msgid ""
"to move the body along the vector [code]rel_vec[/code]. Returns [code]true[/"
"code] if a collision would occur."
msgstr ""
+"Comprueba si hay colisiones sin mover el cuerpo. Virtualmente establece la "
+"posición, escala y rotación del nodo a la de la [Transform2D] dada, luego "
+"intenta mover el cuerpo a lo largo del vector [code]rel_vec[/code]. Devuelve "
+"[code]true[/code] si se produce una colisión."
#: doc/classes/KinematicBody2D.xml:154 doc/classes/KinematicBody3D.xml:176
msgid ""
"If the body is at least this close to another body, this body will consider "
"them to be colliding."
msgstr ""
+"Si el cuerpo está al menos así de cerca de otro cuerpo, este cuerpo "
+"considerará que están chocando."
#: doc/classes/KinematicBody2D.xml:157
msgid ""
@@ -29425,10 +37059,14 @@ msgid ""
"for example on moving platforms. Do [b]not[/b] use together with [method "
"move_and_slide] or [method move_and_collide] functions."
msgstr ""
+"Si [code]true[/code], el movimiento del cuerpo se sincronizará con el marco "
+"de la física. Esto es útil cuando se anima el movimiento a través de "
+"[AnimationPlayer], por ejemplo en plataformas móviles. No uses [b]not[/b] "
+"junto con las funciones [method move_and_slide] o [method move_and_collide]."
#: doc/classes/KinematicBody3D.xml:4
msgid "Kinematic body 3D node."
-msgstr ""
+msgstr "Nodo 3D del cuerpo cinético."
#: doc/classes/KinematicBody3D.xml:7
msgid ""
@@ -29448,6 +37086,22 @@ msgid ""
"characters that collide against a world, but that don't require advanced "
"physics."
msgstr ""
+"Los cuerpos cinéticos son tipos especiales de cuerpos que están destinados a "
+"ser controlados por el usuario. No se ven afectados por la física en "
+"absoluto; para otros tipos de cuerpos, como un personaje o un cuerpo rígido, "
+"son lo mismo que un cuerpo estático. Sin embargo, tienen dos usos "
+"principales:\n"
+"[b]Movimiento simulado:[/b] Cuando estos cuerpos se mueven manualmente, ya "
+"sea desde el código o desde un [AnimationPlayer] (con el [member "
+"AnimationPlayer.playback_process_mode] ajustado a \"física\"), la física "
+"calculará automáticamente una estimación de su velocidad lineal y angular. "
+"Esto los hace muy útiles para mover plataformas u otros objetos controlados "
+"por AnimationPlayer (como una puerta, un puente que se abre, etc.).\n"
+"[b]Caracteres cinemáticos:[/b] KinematicBody3D también tiene una API para "
+"mover objetos (los métodos [method move_and_collide] y [method "
+"move_and_slide]) mientras se realizan pruebas de colisión. Esto los hace "
+"realmente útiles para implementar personajes que colisionan contra un mundo, "
+"pero que no requieren de una física avanzada."
#: doc/classes/KinematicBody3D.xml:21
msgid ""
@@ -29455,6 +37109,9 @@ msgid ""
"also [member axis_lock_motion_x], [member axis_lock_motion_y] and [member "
"axis_lock_motion_z]."
msgstr ""
+"Devuelve [code]true[/code] si el eje [code]axis[/code] especificado está "
+"bloqueado. Véase también [member axis_lock_motion_x], [member "
+"axis_lock_motion_y] y [member axis_lock_motion_z]."
#: doc/classes/KinematicBody3D.xml:44
msgid ""
@@ -29464,6 +37121,11 @@ msgid ""
"move_and_slide], you must specify the index of the collision in the range 0 "
"to ([method get_slide_count] - 1)."
msgstr ""
+"Devuelve un [KinematicCollision3D], que contiene información acerca de una "
+"colisión que ocurrió durante la última llamada del [method move_and_slide]. "
+"Dado que el cuerpo puede colisionar varias veces en una sola llamada a "
+"[method move_and_slide], debes especificar el índice de la colisión en el "
+"rango 0 a ([method get_slide_count] - 1)."
#: doc/classes/KinematicBody3D.xml:87
msgid ""
@@ -29473,8 +37135,14 @@ msgid ""
"If [code]test_only[/code] is [code]true[/code], the body does not move but "
"the would-be collision information is given."
msgstr ""
+"Mueve el cuerpo a lo largo del vector [code]rel_vec[/code]. El cuerpo se "
+"detendrá si colisiona. Devuelve un [KinematicCollision3D], que contiene "
+"información sobre la colisión.\n"
+"Si [code]test_only[/code] es [code]true[/code], el cuerpo no se mueve pero "
+"se da la información de la posible colisión."
#: doc/classes/KinematicBody3D.xml:107
+#, fuzzy
msgid ""
"Moves the body along a vector. If the body collides with another, it will "
"slide along the other body rather than stop immediately. If the other body "
@@ -29488,7 +37156,7 @@ msgid ""
"[code]linear_velocity[/code] is the velocity vector (typically meters per "
"second). Unlike in [method move_and_collide], you should [i]not[/i] multiply "
"it by [code]delta[/code] — the physics engine handles applying the "
-"velocity. \n"
+"velocity.\n"
"[code]up_direction[/code] is the up direction, used to determine what is a "
"wall and what is a floor or a ceiling. If set to the default value of "
"[code]Vector3(0, 0, 0)[/code], everything is considered a wall.\n"
@@ -29508,6 +37176,39 @@ msgid ""
"slide collision occurred. To get detailed information about collisions that "
"occurred, use [method get_slide_collision]."
msgstr ""
+"Mueve el cuerpo a lo largo de un vector. Si el cuerpo choca con otro, se "
+"deslizará a lo largo del otro cuerpo en lugar de detenerse inmediatamente. "
+"Si el otro cuerpo es un [KinematicBody3D] o un [RigidBody3D], también se "
+"verá afectado por el movimiento del otro cuerpo. Puedes usar esto para hacer "
+"plataformas móviles o giratorias, o para hacer que los nodos empujen a otros "
+"nodos.\n"
+"Este método debe ser usado en [method Node._physics_process] (o en un método "
+"llamado por [method Node._physics_process]), ya que usa el valor del paso de "
+"física [code]delta[/code] automáticamente en los cálculos. De lo contrario, "
+"la simulación se ejecutará a una velocidad incorrecta.\n"
+"[code]linear_velocity[/code] es el vector de velocidad (típicamente metros "
+"por segundo). A diferencia del [method move_and_collide], debes [i]no[/i] "
+"multiplicarlo por [code]delta[/code] - el motor de física se encarga de "
+"aplicar la velocidad. \n"
+"[code]up_direction[/code] es la dirección hacia arriba, usada para "
+"determinar qué es una pared y qué es un piso o un techo. Si se establece el "
+"valor por defecto de [code]Vector3(0, 0, 0)[/code], todo se considera una "
+"pared.\n"
+"Si [code]stop_on_slope[/code] es [code]true[/code], el cuerpo no se "
+"deslizará en las pendientes cuando incluyas la gravedad en "
+"[code]linear_velocity[/code] y el cuerpo se quede quieto.\n"
+"Si el cuerpo colisiona, cambiará de dirección un máximo de [code]max_slides[/"
+"code] veces antes de detenerse.\n"
+"[code]floor_max_angle[/code] es el ángulo máximo (en radianes) en el que una "
+"pendiente se considera todavía un suelo (o un techo), en lugar de una pared. "
+"El valor por defecto es igual a 45 grados.\n"
+"Si [code]infinite_inertia[/code] es [code]true[/code], el cuerpo podrá "
+"empujar los nodos de [RigidBody3D], pero no detectará ninguna colisión con "
+"ellos. Si [code]false[/code], interactuará con los nodos de [RigidBody3D] "
+"como con [StaticBody3D].\n"
+"Devuelve el vector [code]linear_velocity[/code], rotado y/o escalado si se "
+"produjo una colisión de deslizamiento. Para obtener información detallada "
+"sobre las colisiones ocurridas, usa [method get_slide_collision]."
#: doc/classes/KinematicBody3D.xml:136
msgid ""
@@ -29518,6 +37219,13 @@ msgid ""
"in order to jump, for example. You can do this by setting [code]snap[/code] "
"to [code](0, 0, 0)[/code] or by using [method move_and_slide] instead."
msgstr ""
+"Mueve el cuerpo mientras lo mantiene unido a las laderas. Similar al [method "
+"move_and_slide].\n"
+"Mientras el vector [code]snap[/code] esté en contacto con el suelo, el "
+"cuerpo permanecerá unido a la superficie. Esto significa que debes "
+"desactivar el snap para poder saltar, por ejemplo. Puedes hacerlo poniendo "
+"[code]snap[/code] en [code](0, 0, 0)[/code] o usando [method move_and_slide] "
+"en su lugar."
#: doc/classes/KinematicBody3D.xml:148
msgid ""
@@ -29525,6 +37233,9 @@ msgid ""
"[code]lock[/code]. See also [member axis_lock_motion_x], [member "
"axis_lock_motion_y] and [member axis_lock_motion_z]."
msgstr ""
+"Bloquea o desbloquea el [code]axis[/code] dependiendo del valor de "
+"[code]lock[/code]. Véase también [member axis_lock_motion_x], [member "
+"axis_lock_motion_y] y [member axis_lock_motion_z]."
#: doc/classes/KinematicBody3D.xml:161
msgid ""
@@ -29533,22 +37244,26 @@ msgid ""
"move the body along the vector [code]rel_vec[/code]. Returns [code]true[/"
"code] if a collision would occur."
msgstr ""
+"Comprueba si hay colisiones sin mover el cuerpo. Virtualmente establece la "
+"posición, escala y rotación del nodo a la de la [Transform] dada, luego "
+"intenta mover el cuerpo a lo largo del vector [code]rel_vec[/code]. Devuelve "
+"[code]true[/code] si se produce una colisión."
#: doc/classes/KinematicBody3D.xml:167
msgid "Lock the body's X axis movement."
-msgstr ""
+msgstr "Bloquea el movimiento del eje X del cuerpo."
#: doc/classes/KinematicBody3D.xml:170
msgid "Lock the body's Y axis movement."
-msgstr ""
+msgstr "Bloquea el movimiento del eje X del cuerpo."
#: doc/classes/KinematicBody3D.xml:173
msgid "Lock the body's Z axis movement."
-msgstr ""
+msgstr "Bloquea el movimiento del eje Z del cuerpo."
#: doc/classes/KinematicCollision2D.xml:4
msgid "Collision data for [KinematicBody2D] collisions."
-msgstr ""
+msgstr "Datos de colisiones de [KinematicBody2D]."
#: doc/classes/KinematicCollision2D.xml:7
msgid ""
@@ -29560,65 +37275,74 @@ msgid ""
"colliding object, the remaining motion, and the collision position. This "
"information can be used to calculate a collision response."
msgstr ""
+"Contiene los datos de las colisiones de [KinematicBody2D]. Cuando se mueve "
+"un [KinematicBody2D] usando el [method KinematicBody2D.move_and_collide], se "
+"detiene si detecta una colisión con otro cuerpo. Si se detecta una colisión, "
+"se devuelve un objeto KinematicCollision2D.\n"
+"Este objeto contiene información sobre la colisión, incluyendo el objeto que "
+"colisiona, el movimiento restante y la posición de la colisión. Esta "
+"información puede utilizarse para calcular una respuesta de colisión."
#: doc/classes/KinematicCollision2D.xml:16
#: doc/classes/KinematicCollision3D.xml:16
msgid "The colliding body."
-msgstr ""
+msgstr "El cuerpo en colisión."
#: doc/classes/KinematicCollision2D.xml:19
#: doc/classes/KinematicCollision3D.xml:19
msgid ""
"The colliding body's unique instance ID. See [method Object.get_instance_id]."
msgstr ""
+"La identificación de la instancia única del cuerpo que colisiona. Ver "
+"[method Object.get_instance_id]."
#: doc/classes/KinematicCollision2D.xml:22
#: doc/classes/KinematicCollision3D.xml:22
msgid "The colliding body's metadata. See [Object]."
-msgstr ""
+msgstr "Los metadatos del cuerpo en colisión. Ver [Object]."
#: doc/classes/KinematicCollision2D.xml:25
#: doc/classes/KinematicCollision3D.xml:25
msgid "The colliding body's shape."
-msgstr ""
+msgstr "La forma del cuerpo en colisión."
#: doc/classes/KinematicCollision2D.xml:28
msgid "The colliding shape's index. See [CollisionObject2D]."
-msgstr ""
+msgstr "El índice de la forma de colisión. Ver [CollisionObject2D]."
#: doc/classes/KinematicCollision2D.xml:31
#: doc/classes/KinematicCollision3D.xml:31
msgid "The colliding object's velocity."
-msgstr ""
+msgstr "La velocidad del objeto que colisiona."
#: doc/classes/KinematicCollision2D.xml:34
#: doc/classes/KinematicCollision3D.xml:34
msgid "The moving object's colliding shape."
-msgstr ""
+msgstr "La forma de colisión del objeto en movimiento."
#: doc/classes/KinematicCollision2D.xml:37
#: doc/classes/KinematicCollision3D.xml:37
msgid "The colliding body's shape's normal at the point of collision."
-msgstr ""
+msgstr "La normal de la forma del cuerpo que choca en el punto de colisión."
#: doc/classes/KinematicCollision2D.xml:40
#: doc/classes/KinematicCollision3D.xml:40
msgid "The point of collision, in global coordinates."
-msgstr ""
+msgstr "El punto de colisión, en coordenadas globales."
#: doc/classes/KinematicCollision2D.xml:43
#: doc/classes/KinematicCollision3D.xml:43
msgid "The moving object's remaining movement vector."
-msgstr ""
+msgstr "El vector de movimiento restante del objeto en movimiento."
#: doc/classes/KinematicCollision2D.xml:46
#: doc/classes/KinematicCollision3D.xml:46
msgid "The distance the moving object traveled before collision."
-msgstr ""
+msgstr "La distancia que el objeto en movimiento viajó antes de la colisión."
#: doc/classes/KinematicCollision3D.xml:4
msgid "Collision data for [KinematicBody3D] collisions."
-msgstr ""
+msgstr "Datos de colisiones de [KinematicBody3D]."
#: doc/classes/KinematicCollision3D.xml:7
msgid ""
@@ -29630,16 +37354,25 @@ msgid ""
"colliding object, the remaining motion, and the collision position. This "
"information can be used to calculate a collision response."
msgstr ""
+"Contiene los datos de las colisiones de [KinematicBody3D]. Cuando un "
+"[KinematicBody3D] se mueve usando el [method KinematicBody3D."
+"move_and_collide], se detiene si detecta una colisión con otro cuerpo. Si se "
+"detecta una colisión, se devuelve un objeto KinematicCollision3D.\n"
+"Este objeto contiene información sobre la colisión, incluyendo el objeto que "
+"colisiona, el movimiento restante y la posición de la colisión. Esta "
+"información puede utilizarse para calcular una respuesta de colisión."
#: doc/classes/KinematicCollision3D.xml:28
msgid "The colliding shape's index. See [CollisionObject3D]."
-msgstr ""
+msgstr "El índice de la forma de colisión. Ver [CollisionObject3D]."
#: doc/classes/Label.xml:4
msgid ""
"Displays plain text in a line or wrapped inside a rectangle. For formatted "
"text, use [RichTextLabel]."
msgstr ""
+"Muestra un texto simple en una línea o envuelto dentro de un rectángulo. "
+"Para texto formateado, use [RichTextLabel]."
#: doc/classes/Label.xml:7
msgid ""
@@ -29653,32 +37386,48 @@ msgid ""
"display any configured [member Control.hint_tooltip], unless you change its "
"mouse filter."
msgstr ""
+"La etiqueta muestra texto simple en la pantalla. Te da control sobre la "
+"alineación horizontal y vertical, y puede envolver el texto dentro del "
+"rectángulo delimitador del nodo. No admite negrita, cursiva u otro formato. "
+"Para eso, usa [RichTextLabel] en su lugar.\n"
+"[b]Nota:[/b] A diferencia de la mayoría de los otros [Control]s, el [member "
+"Control.mouse_filter] de la etiqueta tiene como valor por defecto [constant "
+"Control.MOUSE_FILTER_IGNORE] (es decir, no reacciona a los eventos de "
+"entrada del ratón). Esto implica que una etiqueta no mostrará ningún [member "
+"Control.hint_tooltip] configurado, a menos que cambie su filtro de ratón."
#: doc/classes/Label.xml:17
msgid "Returns the amount of lines of text the Label has."
-msgstr ""
+msgstr "Devuelve la cantidad de líneas de texto que tiene la etiqueta."
#: doc/classes/Label.xml:24
msgid "Returns the font size in pixels."
-msgstr ""
+msgstr "Devuelve el tamaño de la fuente en píxeles."
#: doc/classes/Label.xml:31
msgid ""
"Returns the total number of printable characters in the text (excluding "
"spaces and newlines)."
msgstr ""
+"Devuelve el número total de caracteres imprimibles en el texto (excluyendo "
+"espacios y líneas nuevas)."
#: doc/classes/Label.xml:38
msgid ""
"Returns the number of lines shown. Useful if the [Label]'s height cannot "
"currently display all lines."
msgstr ""
+"Devuelve el número de líneas mostradas. Es útil si la altura de la [Label] "
+"no puede mostrar actualmente todas las líneas."
#: doc/classes/Label.xml:44
msgid ""
"Controls the text's horizontal align. Supports left, center, right, and "
"fill, or justify. Set it to one of the [enum Align] constants."
msgstr ""
+"Controla la alineación horizontal del texto. Apoya la izquierda, el centro, "
+"la derecha, y el relleno, o la justificación. Ponlo en una de las constantes "
+"[enum Align]."
#: doc/classes/Label.xml:47
msgid ""
@@ -29686,22 +37435,30 @@ msgid ""
"If you resize the node, it will change its height automatically to show all "
"the text."
msgstr ""
+"Si [code]true[/code], envuelve el texto dentro del rectángulo delimitador "
+"del nodo. Si cambias el tamaño del nodo, éste cambiará su altura "
+"automáticamente para mostrar todo el texto."
#: doc/classes/Label.xml:50
msgid ""
"If [code]true[/code], the Label only shows the text that fits inside its "
"bounding rectangle. It also lets you scale the node down freely."
msgstr ""
+"Si [code]true[/code], la etiqueta sólo muestra el texto que cabe dentro de "
+"su rectángulo delimitador. También te permite reducir la escala del nodo "
+"libremente."
#: doc/classes/Label.xml:53
msgid ""
"The node ignores the first [code]lines_skipped[/code] lines before it starts "
"to display text."
msgstr ""
+"El nodo ignora las primeras líneas [code]lines_skipped[/code] antes de "
+"empezar a mostrar el texto."
#: doc/classes/Label.xml:56
msgid "Limits the lines of text the node shows on screen."
-msgstr ""
+msgstr "Limita las líneas de texto que el nodo muestra en la pantalla."
#: doc/classes/Label.xml:60
msgid ""
@@ -29709,98 +37466,112 @@ msgid ""
"code] to 0.5, only up to half of the text's characters will display on "
"screen. Useful to animate the text in a dialog box."
msgstr ""
+"Limita la cantidad de caracteres visibles. Si establece "
+"[code]percent_visible[/code] en 0,5, sólo se mostrará en pantalla hasta la "
+"mitad de los caracteres del texto. Es útil para animar el texto en un cuadro "
+"de diálogo."
#: doc/classes/Label.xml:64
msgid "The text to display on screen."
-msgstr ""
+msgstr "El texto a mostrar en la pantalla."
#: doc/classes/Label.xml:67
msgid "If [code]true[/code], all the text displays as UPPERCASE."
-msgstr ""
+msgstr "Si [code]true[/code], todo el texto se muestra como MAYÚSCULAS."
#: doc/classes/Label.xml:70
msgid ""
"Controls the text's vertical align. Supports top, center, bottom, and fill. "
"Set it to one of the [enum VAlign] constants."
msgstr ""
+"Controla la alineación vertical del texto. Soporta la parte superior, el "
+"centro, la parte inferior y el relleno. Ponlo en una de las constantes [enum "
+"VAlign]."
#: doc/classes/Label.xml:73
msgid "Restricts the number of characters to display. Set to -1 to disable."
msgstr ""
+"Restringe el número de caracteres a mostrar. Ponlo en -1 para desactivarlo."
#: doc/classes/Label.xml:78
msgid "Align rows to the left (default)."
-msgstr ""
+msgstr "Alinea las filas a la izquierda (por defecto)."
#: doc/classes/Label.xml:81
msgid "Align rows centered."
-msgstr ""
+msgstr "Alinea las filas centradas."
#: doc/classes/Label.xml:84
msgid "Align rows to the right."
-msgstr ""
+msgstr "Alinea las filas a la derecha."
#: doc/classes/Label.xml:87
msgid "Expand row whitespaces to fit the width."
msgstr ""
+"Ampliar los espacios en blanco de las filas para que se ajusten al ancho."
#: doc/classes/Label.xml:90
msgid "Align the whole text to the top."
-msgstr ""
+msgstr "Alinea todo el texto en la parte superior."
#: doc/classes/Label.xml:93
msgid "Align the whole text to the center."
-msgstr ""
+msgstr "Alinea todo el texto al centro."
#: doc/classes/Label.xml:96
msgid "Align the whole text to the bottom."
-msgstr ""
+msgstr "Alinea todo el texto al fondo."
#: doc/classes/Label.xml:99
msgid "Align the whole text by spreading the rows."
-msgstr ""
+msgstr "Alinear todo el texto extendiendo las filas."
#: doc/classes/Label.xml:104
msgid "[Font] used for the [Label]'s text."
-msgstr ""
+msgstr "[Font] que se usa para el texto de las [Label]."
#: doc/classes/Label.xml:107
msgid "Default text [Color] of the [Label]."
-msgstr ""
+msgstr "[Color] del texto predeterminado de la [Label]."
#: doc/classes/Label.xml:110
msgid "[Color] of the text's shadow effect."
-msgstr ""
+msgstr "[Color] del efecto de sombra del texto."
#: doc/classes/Label.xml:113
msgid "The tint of [Font]'s outline. See [member DynamicFont.outline_color]."
msgstr ""
+"El tinte del contorno de [Font]. Ver [member DynamicFont.outline_color]."
#: doc/classes/Label.xml:116
msgid "Vertical space between lines in multiline [Label]."
-msgstr ""
+msgstr "Espacio vertical entre líneas en multilínea [Label]."
#: doc/classes/Label.xml:119
msgid "Background [StyleBox] for the [Label]."
-msgstr ""
+msgstr "Fondo [StyleBox] para la [Label]."
#: doc/classes/Label.xml:122
msgid ""
"Boolean value. If set to 1 ([code]true[/code]), the shadow will be displayed "
"around the whole text as an outline."
msgstr ""
+"Valor booleano. Si se ajusta a 1 ([code]true[/code]), la sombra se mostrará "
+"alrededor de todo el texto como un contorno."
#: doc/classes/Label.xml:125
msgid "The horizontal offset of the text's shadow."
-msgstr ""
+msgstr "El desplazamiento horizontal de la sombra del texto."
#: doc/classes/Label.xml:128
msgid "The vertical offset of the text's shadow."
-msgstr ""
+msgstr "El desplazamiento vertical de la sombra del texto."
#: doc/classes/LargeTexture.xml:4
msgid "A [Texture2D] capable of storing many smaller textures with offsets."
msgstr ""
+"Una [Texture2D] capaz de almacenar muchas texturas más pequeñas con "
+"desplazamientos."
#: doc/classes/LargeTexture.xml:7
msgid ""
@@ -29808,48 +37579,59 @@ msgid ""
"You can dynamically add pieces ([Texture2D]s) to this [LargeTexture] using "
"different offsets."
msgstr ""
+"Una [Texture2D] capaz de almacenar muchas texturas más pequeñas con "
+"desplazamientos.\n"
+"Puedes añadir dinámicamente piezas ([Texture2D]) a esta [LargeTexture] "
+"usando diferentes desplazamientos."
#: doc/classes/LargeTexture.xml:21
msgid ""
"Adds [code]texture[/code] to this [LargeTexture], starting on offset "
"[code]ofs[/code]."
msgstr ""
+"Añade [code]texture[/code] a esta [LargeTexture], empezando por el "
+"desplazamiento [code]ofs[/code]."
#: doc/classes/LargeTexture.xml:28
msgid "Clears the [LargeTexture]."
-msgstr ""
+msgstr "Limpia la [LargeTexture]."
#: doc/classes/LargeTexture.xml:35
msgid "Returns the number of pieces currently in this [LargeTexture]."
msgstr ""
+"Devuelve el número de piezas que hay actualmente en este [LargeTexture]."
#: doc/classes/LargeTexture.xml:44
msgid "Returns the offset of the piece with the index [code]idx[/code]."
-msgstr ""
+msgstr "Devuelve el desplazamiento de la pieza con el índice [code]idx[/code]."
#: doc/classes/LargeTexture.xml:53
msgid "Returns the [Texture2D] of the piece with the index [code]idx[/code]."
-msgstr ""
+msgstr "Devuelve la [Texture2D] de la pieza con el índice [code]idx[/code]."
#: doc/classes/LargeTexture.xml:64
msgid ""
"Sets the offset of the piece with the index [code]idx[/code] to [code]ofs[/"
"code]."
msgstr ""
+"Establece el desplazamiento de la pieza con el índice [code]idx[/code] a "
+"[code]ofs[/code]."
#: doc/classes/LargeTexture.xml:75
msgid ""
"Sets the [Texture2D] of the piece with index [code]idx[/code] to "
"[code]texture[/code]."
msgstr ""
+"Establece la [Texture2D] de la pieza con el índice [code]idx[/code] a "
+"[code]texture[/code]."
#: doc/classes/LargeTexture.xml:84
msgid "Sets the size of this [LargeTexture]."
-msgstr ""
+msgstr "Establece el tamaño de este [LargeTexture]."
#: doc/classes/Light2D.xml:4
msgid "Casts light in a 2D environment."
-msgstr ""
+msgstr "Emite luz en un entorno 2D."
#: doc/classes/Light2D.xml:7
msgid ""
@@ -29858,117 +37640,139 @@ msgid ""
"parameters (range and shadows-related).\n"
"[b]Note:[/b] Light2D can also be used as a mask."
msgstr ""
+"Emite luz en un entorno 2D. La luz se define por una textura (normalmente en "
+"escala de grises), un color, un valor de energía, un modo (ver constantes), "
+"y varios otros parámetros (relacionados con el rango y las sombras).\n"
+"[b]Nota:[/b] Light2D también puede ser usado como una máscara."
#: doc/classes/Light2D.xml:11 doc/classes/LightOccluder2D.xml:10
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/2d/2d_lights_and_shadows."
"html"
msgstr ""
+"https://docs.godotengine.org/es/latest/tutorials/2d/2d_lights_and_shadows."
+"html"
#: doc/classes/Light2D.xml:17
msgid "The Light2D's [Color]."
-msgstr ""
+msgstr "El [Color] de la Light2D."
#: doc/classes/Light2D.xml:20
msgid "If [code]true[/code], Light2D will only appear when editing the scene."
msgstr ""
+"Si [code]true[/code], Light2D sólo aparecerá cuando se edite la escena."
#: doc/classes/Light2D.xml:23
msgid "If [code]true[/code], Light2D will emit light."
-msgstr ""
+msgstr "Si [code]true[/code], Light2D emitirá luz."
#: doc/classes/Light2D.xml:26
msgid ""
"The Light2D's energy value. The larger the value, the stronger the light."
msgstr ""
+"El valor energético de Light2D. Cuanto mayor sea el valor, más fuerte es la "
+"luz."
#: doc/classes/Light2D.xml:29
msgid "The Light2D's mode. See [enum Mode] constants for values."
-msgstr ""
+msgstr "El modo de Light2D. Vea las constantes [enum Mode] para los valores."
#: doc/classes/Light2D.xml:32
msgid "The offset of the Light2D's [code]texture[/code]."
-msgstr ""
+msgstr "El desplazamiento de la [code]texture[/code] de Light2D."
#: doc/classes/Light2D.xml:35
msgid "The height of the Light2D. Used with 2D normal mapping."
-msgstr ""
+msgstr "La altura de Light2D. Usado con el mapeo de normales 2D."
#: doc/classes/Light2D.xml:38
msgid ""
"The layer mask. Only objects with a matching mask will be affected by the "
"Light2D."
msgstr ""
+"La máscara de la capa. Sólo los objetos con una máscara adecuada se verán "
+"afectados por Light2D."
#: doc/classes/Light2D.xml:41
msgid "Maximum layer value of objects that are affected by the Light2D."
-msgstr ""
+msgstr "Valor máximo de la capa de los objetos afectados por Light2D."
#: doc/classes/Light2D.xml:44
msgid "Minimum layer value of objects that are affected by the Light2D."
-msgstr ""
+msgstr "Valor mínimo de la capa de los objetos afectados por Light2D."
#: doc/classes/Light2D.xml:47
msgid ""
"Maximum [code]z[/code] value of objects that are affected by the Light2D."
-msgstr ""
+msgstr "Valor máximo de [code]z[/code] de los objetos afectados por Light2D."
#: doc/classes/Light2D.xml:50
msgid ""
"Minimum [code]z[/code] value of objects that are affected by the Light2D."
-msgstr ""
+msgstr "Valor mínimo de [code]z[/code] de los objetos afectados por Light2D."
#: doc/classes/Light2D.xml:53
msgid "Shadow buffer size."
-msgstr ""
+msgstr "El tamaño del buffer de la sombra."
#: doc/classes/Light2D.xml:56
msgid "[Color] of shadows cast by the Light2D."
-msgstr ""
+msgstr "[Color] de las sombras proyectadas por el Light2D."
#: doc/classes/Light2D.xml:59
msgid "If [code]true[/code], the Light2D will cast shadows."
-msgstr ""
+msgstr "Si [code]true[/code], Light2D proyectará sombras."
#: doc/classes/Light2D.xml:62
msgid "Shadow filter type. See [enum ShadowFilter] for possible values."
msgstr ""
+"Tipo de filtro de sombra. Ver [enum ShadowFilter] para los posibles valores."
#: doc/classes/Light2D.xml:65
msgid "Smoothing value for shadows."
-msgstr ""
+msgstr "Suavizar el valor de las sombras."
#: doc/classes/Light2D.xml:68
msgid ""
"The shadow mask. Used with [LightOccluder2D] to cast shadows. Only occluders "
"with a matching light mask will cast shadows."
msgstr ""
+"La máscara de sombra. Se usa con [LightOccluder2D] para proyectar sombras. "
+"Sólo los oclusores con una máscara de luz pueden proyectar sombras."
#: doc/classes/Light2D.xml:71
msgid "[Texture2D] used for the Light2D's appearance."
-msgstr ""
+msgstr "[Texture2D] usada para la apariencia de Light2D."
#: doc/classes/Light2D.xml:74
msgid "The [code]texture[/code]'s scale factor."
-msgstr ""
+msgstr "El factor de escala de la [code]texture[/code]."
#: doc/classes/Light2D.xml:79
msgid ""
"Adds the value of pixels corresponding to the Light2D to the values of "
"pixels under it. This is the common behavior of a light."
msgstr ""
+"Añade el valor de los píxeles correspondientes a Light2D a los valores de "
+"los píxeles que están debajo de él. Este es el comportamiento común de una "
+"luz."
#: doc/classes/Light2D.xml:82
msgid ""
"Subtracts the value of pixels corresponding to the Light2D to the values of "
"pixels under it, resulting in inversed light effect."
msgstr ""
+"Resta el valor de los píxeles correspondientes a Light2D a los valores de "
+"los píxeles que están debajo de él, lo que resulta en un efecto de luz "
+"invertida."
#: doc/classes/Light2D.xml:85
msgid ""
"Mix the value of pixels corresponding to the Light2D to the values of pixels "
"under it by linear interpolation."
msgstr ""
+"Mezcla el valor de los píxeles correspondientes a Light2D con los valores de "
+"los píxeles que están debajo de él por interpolación lineal."
#: doc/classes/Light2D.xml:88
msgid ""
@@ -29976,26 +37780,34 @@ msgid ""
"parts of the screen underneath depending on the value of each pixel of the "
"light (mask) texture."
msgstr ""
+"La textura de luz de Light2D se utiliza como una máscara, ocultando o "
+"revelando partes de la pantalla debajo dependiendo del valor de cada píxel "
+"de la textura de luz (máscara)."
#: doc/classes/Light2D.xml:91
msgid "No filter applies to the shadow map. See [member shadow_filter]."
msgstr ""
+"No se aplica ningún filtro al mapa de sombras. Ver [member shadow_filter]."
#: doc/classes/Light2D.xml:94
msgid ""
"Percentage closer filtering (5 samples) applies to the shadow map. See "
"[member shadow_filter]."
msgstr ""
+"El porcentaje de filtrado más cercano (5 muestras) se aplica al mapa de "
+"sombras. Ver [member shadow_filter]."
#: doc/classes/Light2D.xml:97
msgid ""
"Percentage closer filtering (13 samples) applies to the shadow map. See "
"[member shadow_filter]."
msgstr ""
+"El porcentaje de filtrado más cercano (5 muestras) se aplica al mapa de "
+"sombras. Ver [member shadow_filter]."
#: doc/classes/Light3D.xml:4
msgid "Provides a base class for different kinds of light nodes."
-msgstr ""
+msgstr "Proporciona una clase base para diferentes tipos de nodos de luz."
#: doc/classes/Light3D.xml:7
msgid ""
@@ -30004,20 +37816,26 @@ msgid ""
"from it. Light3D contains the common variables and parameters used for "
"lighting."
msgstr ""
+"Light3D es la clase de base [i]abstract[/i] para los nodos de luz. Como no "
+"puede ser instanciado, no debe ser usado directamente. Otros tipos de nodos "
+"de luz heredan de ella. Light3D contiene las variables y parámetros comunes "
+"usados para la iluminación."
#: doc/classes/Light3D.xml:19
msgid "Returns the value of the specified [enum Light3D.Param] parameter."
-msgstr ""
+msgstr "Devuelve el valor del parámetro [enum Light3D.Param] especificado."
#: doc/classes/Light3D.xml:30
msgid "Sets the value of the specified [enum Light3D.Param] parameter."
-msgstr ""
+msgstr "Establece el valor del parámetro especificado [enum Light3D.Param]."
#: doc/classes/Light3D.xml:36
msgid ""
"If [code]true[/code], the light only appears in the editor and will not be "
"visible at runtime."
msgstr ""
+"Si [code]true[/code], la luz sólo aparece en el editor y no será visible en "
+"tiempo de ejecución."
#: doc/classes/Light3D.xml:39
msgid ""
@@ -30025,20 +37843,26 @@ msgid ""
"[DirectionalLight3D]s. For reference, the Sun from the Earth is "
"approximately [code]0.5[/code]."
msgstr ""
+"El tamaño angular de la luz en grados. Sólo disponible para "
+"[DirectionalLight3D]. Como referencia, el Sol desde la Tierra es "
+"aproximadamente [code]0,5[/code]."
#: doc/classes/Light3D.xml:42
msgid "The light's bake mode. See [enum BakeMode]."
-msgstr ""
+msgstr "La luz está en modo cocinado. Ver [enum BakeMode]."
#: doc/classes/Light3D.xml:45
msgid ""
"The light's color. An [i]overbright[/i] color can be used to achieve a "
"result equivalent to increasing the light's [member light_energy]."
msgstr ""
+"El color de la luz. Un color [i]sobrebrillante[/i] puede ser usado para "
+"lograr un resultado equivalente a incrementar la [member light_energy] de la "
+"luz."
#: doc/classes/Light3D.xml:48
msgid "The light will affect objects in the selected layers."
-msgstr ""
+msgstr "La luz afectará a los objetos en las capas seleccionadas."
#: doc/classes/Light3D.xml:51
msgid ""
@@ -30046,18 +37870,25 @@ msgid ""
"[OmniLight3D] and [SpotLight3D], changing this value will only change the "
"light color's intensity, not the light's radius."
msgstr ""
+"El multiplicador de la fuerza de la luz (esto no es una unidad física). Para "
+"[OmniLight3D] y [SpotLight3D], cambiar este valor sólo cambiará la "
+"intensidad del color de la luz, no el radio de la luz."
#: doc/classes/Light3D.xml:54
msgid ""
"Secondary multiplier used with indirect light (light bounces). Used with "
"[GIProbe]."
msgstr ""
+"Multiplicador secundario utilizado con luz indirecta (rebote de luz). "
+"Utilizado con [GIProbe]."
#: doc/classes/Light3D.xml:57
msgid ""
"If [code]true[/code], the light's effect is reversed, darkening areas and "
"casting bright shadows."
msgstr ""
+"Si [code]true[/code], el efecto de la luz se invierte, oscureciendo áreas y "
+"proyectando sombras brillantes."
#: doc/classes/Light3D.xml:60
msgid ""
@@ -30066,6 +37897,10 @@ msgid ""
"shining through a colored but transparent object, almost like light shining "
"through stained glass."
msgstr ""
+"[Texture2D] proyectada por la luz. [member shadow_enabled] debe estar "
+"encendido para que el proyector funcione. Los proyectores de luz hacen que "
+"la luz parezca como si brillara a través de un objeto de color pero "
+"transparente, casi como la luz que brilla a través de un vidrio de color."
#: doc/classes/Light3D.xml:63
msgid ""
@@ -30074,6 +37909,10 @@ msgid ""
"and shadows appear blurrier. This can be used to simulate area lights to an "
"extent."
msgstr ""
+"El tamaño de la luz en unidades Godot. Sólo disponible para [OmniLight3D] y "
+"[SpotLight3D]. Aumentar este valor hará que la luz se desvanezca más "
+"lentamente y que las sombras se vean más borrosas. Esto puede ser usado para "
+"simular las luces del área hasta cierto punto."
#: doc/classes/Light3D.xml:66
msgid ""
@@ -30082,6 +37921,10 @@ msgid ""
"emission, this can be used to avoid unrealistic reflections when placing "
"lights above an emissive surface."
msgstr ""
+"La intensidad de la mancha especular en los objetos afectados por la luz. En "
+"[code]0[/code], la luz se convierte en una luz difusa pura. Cuando no se "
+"emite, puede utilizarse para evitar reflejos poco realistas al colocar las "
+"luces sobre una superficie emisora."
#: doc/classes/Light3D.xml:69
msgid ""
@@ -30089,6 +37932,10 @@ msgid ""
"shadowing (\"shadow acne\"), while too large a value causes shadows to "
"separate from casters (\"peter-panning\"). Adjust as needed."
msgstr ""
+"Se usa para ajustar la apariencia de las sombras. Un valor demasiado pequeño "
+"da como resultado una sombra propia (\"shadow acne\"), mientras que un valor "
+"demasiado grande hace que las sombras se separen de las ruedas (\"peter-"
+"panning\"). Ajústelo según sea necesario."
#: doc/classes/Light3D.xml:72
msgid ""
@@ -30097,14 +37944,19 @@ msgid ""
"appear grainy and can cause other unwanted artifacts. Try to keep as near "
"default as possible."
msgstr ""
+"Desdibuja los bordes de la sombra. Se puede usar para ocultar artefactos de "
+"píxeles en mapas de sombras de baja resolución. Un valor alto puede impactar "
+"el rendimiento, hacer que las sombras parezcan granuladas y puede causar "
+"otros artefactos no deseados. Intente mantener un valor lo más cercano "
+"posible al valor por defecto."
#: doc/classes/Light3D.xml:75
msgid "The color of shadows cast by this light."
-msgstr ""
+msgstr "El color de las sombras proyectadas por esta luz."
#: doc/classes/Light3D.xml:78
msgid "If [code]true[/code], the light will cast shadows."
-msgstr ""
+msgstr "Si [code]true[/code], la luz proyectará sombras."
#: doc/classes/Light3D.xml:81
msgid ""
@@ -30113,6 +37965,10 @@ msgid ""
"In practice, this value should be tweaked along with [member shadow_bias] to "
"reduce artifacts as much as possible."
msgstr ""
+"Desplaza la búsqueda en el mapa de sombras por la normal del objeto. Esto "
+"puede ser usado para reducir los artefactos de auto-sombra sin usar [member "
+"shadow_bias]. En la práctica, este valor debe ser ajustado junto con [member "
+"shadow_bias] para reducir los artefactos tanto como sea posible."
#: doc/classes/Light3D.xml:84
msgid ""
@@ -30122,115 +37978,127 @@ msgid ""
"shadows with [constant GeometryInstance3D."
"SHADOW_CASTING_SETTING_DOUBLE_SIDED]."
msgstr ""
+"Si [code]true[/code], invierte la selección de la malla. Esto puede ser útil "
+"cuando se tiene una malla plana que tiene una luz detrás de ella. Si "
+"necesitas proyectar una sombra en ambos lados de la malla, establece la "
+"malla para usar sombras de doble cara con [constant GeometryInstance3D."
+"SHADOW_CASTING_SETTING_DOUBLE_SIDED]."
#: doc/classes/Light3D.xml:91
msgid "Constant for accessing [member light_energy]."
-msgstr ""
+msgstr "Constante para acceder a [member light_energy]."
#: doc/classes/Light3D.xml:94
msgid "Constant for accessing [member light_indirect_energy]."
-msgstr ""
+msgstr "Constante para acceder a [member light_indirect_energy]."
#: doc/classes/Light3D.xml:97
msgid "Constant for accessing [member light_specular]."
-msgstr ""
+msgstr "Constante para acceder a [member light_specular]."
#: doc/classes/Light3D.xml:100
msgid ""
"Constant for accessing [member OmniLight3D.omni_range] or [member "
"SpotLight3D.spot_range]."
msgstr ""
+"Constante para acceder a [member OmniLight3D.omni_range] o [member "
+"SpotLight3D.spot_range]."
#: doc/classes/Light3D.xml:103
msgid "Constant for accessing [member light_size]."
-msgstr ""
+msgstr "Constante para el acceso a [member light_size]."
#: doc/classes/Light3D.xml:106
msgid ""
"Constant for accessing [member OmniLight3D.omni_attenuation] or [member "
"SpotLight3D.spot_attenuation]."
msgstr ""
+"Constante para acceder a [member OmniLight3D.omni_attenuation] o [member "
+"SpotLight3D.spot_attenuation]."
#: doc/classes/Light3D.xml:109
msgid "Constant for accessing [member SpotLight3D.spot_angle]."
-msgstr ""
+msgstr "Constante para acceder a [member SpotLight3D.spot_angle]."
#: doc/classes/Light3D.xml:112
msgid "Constant for accessing [member SpotLight3D.spot_angle_attenuation]."
-msgstr ""
+msgstr "Constante para acceder a [member SpotLight3D.spot_angle_attenuation]."
#: doc/classes/Light3D.xml:115
msgid ""
"Constant for accessing [member DirectionalLight3D."
"directional_shadow_max_distance]."
msgstr ""
+"Constante para acceder a [member DirectionalLight3D."
+"directional_shadow_max_distance]."
#: doc/classes/Light3D.xml:118
msgid ""
"Constant for accessing [member DirectionalLight3D."
"directional_shadow_split_1]."
msgstr ""
+"Constante para acceder a [member DirectionalLight3D."
+"directional_shadow_split_1]."
#: doc/classes/Light3D.xml:121
msgid ""
"Constant for accessing [member DirectionalLight3D."
"directional_shadow_split_2]."
msgstr ""
+"Constante para acceder a [member DirectionalLight3D."
+"directional_shadow_split_2]."
#: doc/classes/Light3D.xml:124
msgid ""
"Constant for accessing [member DirectionalLight3D."
"directional_shadow_split_3]."
msgstr ""
+"Constante para acceder a [member DirectionalLight3D."
+"directional_shadow_split_3]."
#: doc/classes/Light3D.xml:127
msgid ""
"Constant for accessing [member DirectionalLight3D."
"directional_shadow_fade_start]."
msgstr ""
+"Constante para acceder a [member DirectionalLight3D."
+"directional_shadow_fade_start]."
#: doc/classes/Light3D.xml:130
msgid "Constant for accessing [member shadow_normal_bias]."
-msgstr ""
+msgstr "Constante para acceder a [member shadow_normal_bias]."
#: doc/classes/Light3D.xml:133
msgid "Constant for accessing [member shadow_bias]."
-msgstr ""
+msgstr "Constante para acceder a [member shadow_bias]."
#: doc/classes/Light3D.xml:136
msgid ""
"Constant for accessing [member DirectionalLight3D."
"directional_shadow_pancake_size]."
msgstr ""
+"Constante para acceder a [member DirectionalLight3D."
+"directional_shadow_pancake_size]."
#: doc/classes/Light3D.xml:139
msgid "Constant for accessing [member shadow_blur]."
-msgstr ""
+msgstr "Constante para acceder a [member shadow_blur]."
#: doc/classes/Light3D.xml:142
msgid "Constant for accessing [member shadow_transmittance_bias]."
-msgstr ""
+msgstr "Constante para acceder a [member shadow_transmittance_bias]."
#: doc/classes/Light3D.xml:148
msgid ""
"Light is ignored when baking.\n"
"[b]Note:[/b] Hiding a light does [i]not[/i] affect baking."
msgstr ""
-
-#: doc/classes/Light3D.xml:152
-msgid "Only indirect lighting will be baked (default)."
-msgstr ""
-
-#: doc/classes/Light3D.xml:155
-msgid ""
-"Both direct and indirect light will be baked.\n"
-"[b]Note:[/b] You should hide the light if you don't want it to appear twice "
-"(dynamic and baked)."
-msgstr ""
+"La luz es ignorada cuando se cocina.\n"
+"[b]Nota[/b]: Ocultar una luz [i]no[/i] afecta al cocinado."
#: doc/classes/LightOccluder2D.xml:4
msgid "Occludes light cast by a Light2D, casting shadows."
-msgstr ""
+msgstr "Ocluye la luz emitida por un Light2D, proyectando sombras."
#: doc/classes/LightOccluder2D.xml:7
msgid ""
@@ -30238,24 +38106,29 @@ msgid ""
"be provided with an [OccluderPolygon2D] in order for the shadow to be "
"computed."
msgstr ""
+"Ocluye la luz emitida por un Light2D, proyectando sombras. El "
+"LightOccluder2D debe estar provisto de un [OccluderPolygon2D] para que la "
+"sombra sea computada."
#: doc/classes/LightOccluder2D.xml:16
msgid ""
"The LightOccluder2D's light mask. The LightOccluder2D will cast shadows only "
"from Light2D(s) that have the same light mask(s)."
msgstr ""
+"La máscara de luz del LightOccluder2D. El LightOccluder2D arrojará sombras "
+"sólo de Light2D(s) que tengan la(s) misma(s) máscara(s) de luz."
#: doc/classes/LightOccluder2D.xml:19
msgid "The [OccluderPolygon2D] used to compute the shadow."
-msgstr ""
+msgstr "El [OccluderPolygon2D] utilizado para calcular la sombra."
#: doc/classes/Line2D.xml:4
msgid "A 2D line."
-msgstr ""
+msgstr "Una línea 2D."
#: doc/classes/Line2D.xml:7
msgid "A line through several points in 2D space."
-msgstr ""
+msgstr "Una línea que atraviesa varios puntos en el espacio 2D."
#: doc/classes/Line2D.xml:20
msgid ""
@@ -30268,145 +38141,182 @@ msgid ""
"get_point_count][/code]), the point will be appended at the end of the point "
"list."
msgstr ""
+"Añade un punto en la [code]position[/code]. Añade el punto al final de la "
+"línea.\n"
+"Si se da [code]at_position[/code], el punto se inserta antes del número de "
+"punto [code]at_position[/code], desplazando ese punto (y todos los puntos "
+"posteriores) después del punto insertado. Si no se da [code]at_position[/"
+"code], o es un valor ilegal ([code]at_position < 0[/code] o "
+"[code]at_position >= [method get_point_count][/code]), el punto se añadirá "
+"al final de la lista de puntos."
#: doc/classes/Line2D.xml:28
msgid "Removes all points from the line."
-msgstr ""
+msgstr "Elimina todos los puntos de la línea."
#: doc/classes/Line2D.xml:35
msgid "Returns the Line2D's amount of points."
-msgstr ""
+msgstr "Devuelve la cantidad de puntos de Line2D."
#: doc/classes/Line2D.xml:44
msgid "Returns point [code]i[/code]'s position."
-msgstr ""
+msgstr "Devuelve la posición del punto [code]i[/code]."
#: doc/classes/Line2D.xml:53
msgid "Removes the point at index [code]i[/code] from the line."
-msgstr ""
+msgstr "Elimina el punto en el índice [code]i[/code] de la línea."
#: doc/classes/Line2D.xml:64
msgid ""
"Overwrites the position in point [code]i[/code] with the supplied "
"[code]position[/code]."
msgstr ""
+"Sobrescribe la posición en el punto [code]i[/code] con la [code]position[/"
+"code] suministrada."
#: doc/classes/Line2D.xml:70
msgid "If [code]true[/code], the line's border will be anti-aliased."
-msgstr ""
+msgstr "Si [code]true[/code], el borde de la línea será anti-aliased."
#: doc/classes/Line2D.xml:73
msgid ""
"Controls the style of the line's first point. Use [enum LineCapMode] "
"constants."
msgstr ""
+"Controla el estilo del primer punto de la línea. Usa las constantes [enum "
+"LineCapMode]."
#: doc/classes/Line2D.xml:76
msgid "The line's color. Will not be used if a gradient is set."
-msgstr ""
+msgstr "El color de la línea. No se usará si se establece un gradiente."
#: doc/classes/Line2D.xml:79
msgid ""
"Controls the style of the line's last point. Use [enum LineCapMode] "
"constants."
msgstr ""
+"Controla el estilo del último punto de la línea. Usa las constantes [enum "
+"LineCapMode]."
#: doc/classes/Line2D.xml:82
msgid ""
"The gradient is drawn through the whole line from start to finish. The "
"default color will not be used if a gradient is set."
msgstr ""
+"El gradiente se dibuja a través de toda la línea de principio a fin. El "
+"color por defecto no se usará si se establece un gradiente."
#: doc/classes/Line2D.xml:85
msgid "The style for the points between the start and the end."
-msgstr ""
+msgstr "El estilo de los puntos entre el comienzo y el final."
#: doc/classes/Line2D.xml:88
msgid ""
"The points that form the lines. The line is drawn between every point set in "
"this array."
msgstr ""
+"Los puntos que forman las líneas. La línea se dibuja entre cada punto "
+"establecido en esta array."
#: doc/classes/Line2D.xml:91
msgid ""
"The smoothness of the rounded joints and caps. This is only used if a cap or "
"joint is set as round."
msgstr ""
+"La suavidad de las articulaciones redondeadas y las cubiertas. Esto sólo se "
+"usa si una cubierta o articulación se establece como redonda."
#: doc/classes/Line2D.xml:94
msgid ""
"The direction difference in radians between vector points. This value is "
"only used if [code]joint mode[/code] is set to [constant LINE_JOINT_SHARP]."
msgstr ""
+"La diferencia de dirección en radianes entre puntos de vectores. Este valor "
+"sólo se utiliza si [code]joint mode[/code] se establece en [constant "
+"LINE_JOINT_SHARP]."
#: doc/classes/Line2D.xml:97
msgid ""
"The texture used for the line's texture. Uses [code]texture_mode[/code] for "
"drawing style."
msgstr ""
+"La textura usada para la textura de la línea. Utiliza [code]texture_mode[/"
+"code] para el estilo de dibujo."
#: doc/classes/Line2D.xml:100
msgid ""
"The style to render the [code]texture[/code] on the line. Use [enum "
"LineTextureMode] constants."
msgstr ""
+"El estilo para renderizar la [code]texture[/code] en la línea. Usa las "
+"constantes de [enum LineTextureMode]."
#: doc/classes/Line2D.xml:103
msgid "The line's width."
-msgstr ""
+msgstr "El ancho de la línea."
#: doc/classes/Line2D.xml:106
msgid ""
"The line's width varies with the curve. The original width is simply "
"multiply by the value of the Curve."
msgstr ""
+"El ancho de la línea varía con la curva. El ancho original simplemente se "
+"multiplica por el valor de la curva."
#: doc/classes/Line2D.xml:111
msgid ""
"The line's joints will be pointy. If [code]sharp_limit[/code] is greater "
"than the rotation of a joint, it becomes a bevel joint instead."
msgstr ""
+"Las articulaciones de la línea serán puntiagudas. Si [code]sharp_limit[/"
+"code] es mayor que la rotación de una articulación, se convierte en una "
+"articulación en bisel en su lugar."
#: doc/classes/Line2D.xml:114
msgid "The line's joints will be bevelled/chamfered."
-msgstr ""
+msgstr "Las uniones de la línea serán biseladas/chamfered."
#: doc/classes/Line2D.xml:117
msgid "The line's joints will be rounded."
-msgstr ""
+msgstr "Las articulaciones de la línea serán redondeadas."
#: doc/classes/Line2D.xml:120
msgid "Don't draw a line cap."
-msgstr ""
+msgstr "No dibujes una cubierta de línea."
#: doc/classes/Line2D.xml:123
msgid "Draws the line cap as a box."
-msgstr ""
+msgstr "Dibuja la cubierta de la línea como una caja."
#: doc/classes/Line2D.xml:126
msgid "Draws the line cap as a circle."
-msgstr ""
+msgstr "Dibuja la cubierta de la línea como un círculo."
#: doc/classes/Line2D.xml:129
msgid ""
"Takes the left pixels of the texture and renders it over the whole line."
msgstr ""
+"Toma los píxeles izquierdos de la textura y la renderiza sobre toda la línea."
#: doc/classes/Line2D.xml:132
msgid ""
"Tiles the texture over the line. The texture must be imported with "
"[b]Repeat[/b] enabled for it to work properly."
msgstr ""
+"Tesela la textura sobre la línea. La textura debe ser importada con "
+"[b]Repeat[/b] habilitado para que funcione correctamente."
#: doc/classes/Line2D.xml:135
msgid ""
"Stretches the texture across the line. Import the texture with [b]Repeat[/b] "
"disabled for best results."
msgstr ""
+"Estira la textura a través de la línea. Importa la textura con [b]Repeat[/b] "
+"desactivado para obtener mejores resultados."
#: doc/classes/LineEdit.xml:4
msgid "Control that provides single-line string editing."
-msgstr ""
+msgstr "Control que proporciona la edición de string de una sola línea."
#: doc/classes/LineEdit.xml:7
msgid ""
@@ -30447,22 +38357,63 @@ msgid ""
"- [kbd]Cmd + Right Arrow[/kbd]: Same as [kbd]End[/kbd], move the cursor to "
"the end of the line"
msgstr ""
+"LineEdit proporciona un editor de string de una sola línea, utilizado para "
+"los campos de texto.\n"
+"Tiene muchos atajos incorporados que siempre estarán disponibles ([kbd]Ctrl[/"
+"kbd] aquí se mapea a [kbd]Cmd[/kbd] en macOS):\n"
+"- [kbd]Ctrl + C[/kbd]: Copia\n"
+"- [kbd]Ctrl + X[/kbd]: Cortar\n"
+"- [kbd]Ctrl + V[/kbd] o [kbd]Ctrl + Y[/kbd]: Pegar/\"tirar\"\n"
+"- [kbd]Ctrl + Z[/kbd]: Deshacer\n"
+"- [kbd]Ctrl + Shift + Z[/kbd]: Rehacer\n"
+"- [kbd]Ctrl + U[/kbd]: Suprimir el texto desde la posición del cursor hasta "
+"el comienzo de la línea\n"
+"- [kbd]Ctrl + K[/kbd]: Suprimir el texto desde la posición del cursor hasta "
+"el final de la línea\n"
+"- [kbd]Ctrl + A[/kbd]: Seleccionar todo el texto\n"
+"- [kbd]Flecha Arriba[/kbd] y [kbd]Flecha Abajo[/kbd]: Mueve el cursor al "
+"principio/fin de la línea\n"
+"En MacOS, hay disponibles algunos atajos de teclado adicionales:\n"
+"- [kbd]Ctrl + F[/kbd]: Igual que [kbd]Flecha derecha[/kbd], mueve el cursor "
+"un carácter hacia la derecha\n"
+"- [kbd]Ctrl + B[/kbd]: Igual que [kbd]Flecha izquierda[/kbd], mueve el "
+"cursor un carácter a la izquierda\n"
+"- [kbd]Ctrl + P[/kbd]: Igual que [kbd]Flecha arriba[/kbd], mueve el cursor a "
+"la línea anterior\n"
+"- [kbd]Ctrl + N[/kbd]: Igual que [kbd]Flecha abajo[/kbd], mueve el cursor a "
+"la siguiente línea\n"
+"- [kbd]Ctrl + D[/kbd]: Al igual que [kbd]Suprimir[/kbd], suprimir el "
+"carácter a la derecha del cursor\n"
+"- [kbd]Ctrl + H[/kbd]: Igual que [kbd]Retroceso[/kbd], borra el carácter a "
+"la izquierda del cursor\n"
+"- [kbd]Ctrl + A[/kbd]: Igual que [kbd]Home[/kbd], mueve el cursor al "
+"principio de la línea\n"
+"- [kbd]Ctrl + E[/kbd]: Igual que [kbd]End[/kbd], mueve el cursor al final de "
+"la línea\n"
+"- [kbd]Cmd + Flecha Izquierda[/kbd]: Igual que [kbd]Inicio[/kbd], mueve el "
+"cursor al principio de la línea\n"
+"- [kbd]Cmd + Flecha derecha[/kbd]: Igual que [kbd]End[/kbd], mueve el cursor "
+"al final de la línea"
#: doc/classes/LineEdit.xml:39
msgid ""
"Adds [code]text[/code] after the cursor. If the resulting value is longer "
"than [member max_length], nothing happens."
msgstr ""
+"Añade [code]text[/code] después del cursor. Si el valor resultante es mayor "
+"que [member max_length], no pasa nada."
#: doc/classes/LineEdit.xml:46
msgid "Erases the [LineEdit]'s [member text]."
-msgstr ""
+msgstr "Borra el [member text] de [LineEdit]."
#: doc/classes/LineEdit.xml:53
msgid ""
"Deletes one character at the cursor's current position (equivalent to "
"pressing [kbd]Delete[/kbd])."
msgstr ""
+"Borra un carácter en la posición actual del cursor (equivalente a pulsar "
+"[kbd]Suprimir[/kbd])."
#: doc/classes/LineEdit.xml:64
msgid ""
@@ -30470,20 +38421,27 @@ msgid ""
"[code]from_column[/code] to [code]to_column[/code]. Both parameters should "
"be within the text's length."
msgstr ""
+"Elimina una sección del [member text] que va de la posición "
+"[code]from_column[/code] a [code]to_column[/code]. Ambos parámetros deben "
+"estar dentro de la longitud del texto."
#: doc/classes/LineEdit.xml:71
msgid "Clears the current selection."
-msgstr ""
+msgstr "Borra la selección actual."
#: doc/classes/LineEdit.xml:78
msgid ""
"Returns the [PopupMenu] of this [LineEdit]. By default, this menu is "
"displayed when right-clicking on the [LineEdit]."
msgstr ""
+"Devuelve el [PopupMenu] de este [LineEdit]. Por defecto, este menú se "
+"visualiza cuando se hace clic con el botón derecho del ratón en la "
+"[LineEdit]."
#: doc/classes/LineEdit.xml:87
msgid "Executes a given action as defined in the [enum MenuItems] enum."
msgstr ""
+"Ejecuta una acción determinada según se define en el enum [enum MenuItems]."
#: doc/classes/LineEdit.xml:98
msgid ""
@@ -30497,232 +38455,299 @@ msgid ""
"select(2, 5) # Will select \"lco\".\n"
"[/codeblock]"
msgstr ""
+"Selecciona los caracteres dentro de [LineEdit] entre [code]from[/code] y "
+"[code]to[/code]. Por defecto, [code]from[/code] está al principio y "
+"[code]to[/code] al final.\n"
+"[codeblock]\n"
+"text = \"Bienvenido\"\n"
+"select() # Seleccionará \"Bienvenido\".\n"
+"select(4) # Seleccionará \"venido\".\n"
+"select(2, 5) # Seleccionará \"env\".\n"
+"[/codeblock]"
#: doc/classes/LineEdit.xml:111
msgid "Selects the whole [String]."
-msgstr ""
+msgstr "Selecciona toda la [String]."
#: doc/classes/LineEdit.xml:117
msgid "Text alignment as defined in the [enum Align] enum."
-msgstr ""
+msgstr "Alineación del texto como se define en el enum [enum Align]."
-#: doc/classes/LineEdit.xml:120 doc/classes/TextEdit.xml:406
+#: doc/classes/LineEdit.xml:120 doc/classes/TextEdit.xml:358
msgid "If [code]true[/code], the caret (visual cursor) blinks."
-msgstr ""
+msgstr "Si [code]true[/code], el caret (cursor visual) parpadea."
-#: doc/classes/LineEdit.xml:123 doc/classes/TextEdit.xml:409
+#: doc/classes/LineEdit.xml:123 doc/classes/TextEdit.xml:361
msgid "Duration (in seconds) of a caret's blinking cycle."
-msgstr ""
+msgstr "Duración (en segundos) del ciclo de parpadeo de un caret."
-#: doc/classes/LineEdit.xml:126
+#: doc/classes/LineEdit.xml:128
msgid ""
"The cursor's position inside the [LineEdit]. When set, the text may scroll "
"to accommodate it."
msgstr ""
+"La posición del cursor dentro de la [LineEdit]. Cuando se ajusta, el texto "
+"puede desplazarse para acomodarlo."
-#: doc/classes/LineEdit.xml:129
+#: doc/classes/LineEdit.xml:131
msgid ""
"If [code]true[/code], the [LineEdit] will show a clear button if [code]text[/"
"code] is not empty, which can be used to clear the text quickly."
msgstr ""
+"Si [code]true[/code], el [LineEdit] mostrará un botón de borrado si "
+"[code]text[/code] no está vacío, que puede utilizarse para borrar el texto "
+"rápidamente."
-#: doc/classes/LineEdit.xml:132
+#: doc/classes/LineEdit.xml:134
msgid "If [code]true[/code], the context menu will appear when right-clicked."
msgstr ""
+"Si [code]true[/code], el menú contextual aparecerá al hacer clic con el "
+"botón derecho del ratón."
-#: doc/classes/LineEdit.xml:135
+#: doc/classes/LineEdit.xml:137
msgid ""
"If [code]false[/code], existing text cannot be modified and new text cannot "
"be added."
msgstr ""
+"Si [code]false[/code], el texto existente no puede ser modificado y no se "
+"puede añadir un nuevo texto."
-#: doc/classes/LineEdit.xml:138
+#: doc/classes/LineEdit.xml:140
msgid ""
"If [code]true[/code], the [LineEdit] width will increase to stay longer than "
"the [member text]. It will [b]not[/b] compress if the [member text] is "
"shortened."
msgstr ""
+"Si [code]true[/code], el ancho de [LineEdit] aumentará para permanecer más "
+"tiempo que el [member text].[b]No[/b] se comprimirá si el [member text] se "
+"acorta."
-#: doc/classes/LineEdit.xml:142
+#: doc/classes/LineEdit.xml:144
msgid ""
"Maximum amount of characters that can be entered inside the [LineEdit]. If "
"[code]0[/code], there is no limit."
msgstr ""
+"La cantidad máxima de caracteres que se pueden introducir dentro de la "
+"[LineEdit]. Si [code]0[/code], no hay límite."
-#: doc/classes/LineEdit.xml:146
+#: doc/classes/LineEdit.xml:148
msgid ""
"Opacity of the [member placeholder_text]. From [code]0[/code] to [code]1[/"
"code]."
msgstr ""
+"Opacidad del [member placeholder_text]. De [code]0[/code] a [code]1[/code]."
-#: doc/classes/LineEdit.xml:149
+#: doc/classes/LineEdit.xml:151
msgid ""
"Text shown when the [LineEdit] is empty. It is [b]not[/b] the [LineEdit]'s "
"default value (see [member text])."
msgstr ""
+"El texto se muestra cuando la [LineEdit] está vacía. Es [b]no[/b] el valor "
+"por defecto de [LineEdit] (véase el [member text])."
-#: doc/classes/LineEdit.xml:152
+#: doc/classes/LineEdit.xml:154
msgid ""
"Sets the icon that will appear in the right end of the [LineEdit] if there's "
"no [member text], or always, if [member clear_button_enabled] is set to "
"[code]false[/code]."
msgstr ""
+"Establece el icono que aparecerá en el extremo derecho de la [LineEdit] si "
+"no hay [member text], o siempre, si [member clear_button_enabled] está "
+"establecido en [code]false[/code]."
-#: doc/classes/LineEdit.xml:155
+#: doc/classes/LineEdit.xml:157
msgid ""
"If [code]true[/code], every character is replaced with the secret character "
"(see [member secret_character])."
msgstr ""
+"Si [code]true[/code], cada carácter se sustituye por el carácter secreto "
+"(véase [member secret_character])."
-#: doc/classes/LineEdit.xml:158
+#: doc/classes/LineEdit.xml:160
msgid ""
"The character to use to mask secret input (defaults to \"*\"). Only a single "
"character can be used as the secret character."
msgstr ""
+"El carácter que se usará para enmascarar la entrada secreta (por defecto es "
+"\"*\"). Sólo se puede utilizar un único carácter como el carácter secreto."
-#: doc/classes/LineEdit.xml:161
+#: doc/classes/LineEdit.xml:163
msgid ""
"If [code]false[/code], it's impossible to select the text using mouse nor "
"keyboard."
msgstr ""
+"Si [code]false[/code], es imposible seleccionar el texto usando el ratón o "
+"el teclado."
-#: doc/classes/LineEdit.xml:164
+#: doc/classes/LineEdit.xml:166
msgid "If [code]false[/code], using shortcuts will be disabled."
-msgstr ""
+msgstr "Si [code]false[/code], el uso de atajos se desactivará."
-#: doc/classes/LineEdit.xml:167
+#: doc/classes/LineEdit.xml:169
msgid ""
"String value of the [LineEdit].\n"
"[b]Note:[/b] Changing text using this property won't emit the [signal "
"text_changed] signal."
msgstr ""
+"Valor de la strting de la [LineEdit].\n"
+"[b]Nota:[/b] Cambiar el texto usando esta propiedad no emitirá la señal "
+"[signal text_changed]."
-#: doc/classes/LineEdit.xml:174
+#: doc/classes/LineEdit.xml:173 doc/classes/TextEdit.xml:434
+#, fuzzy
+msgid ""
+"If [code]true[/code], the native virtual keyboard is shown when focused on "
+"platforms that support it."
+msgstr ""
+"Si [code]true[/code], el objeto no recibe ninguna sombra que de otra manera "
+"sería arrojada sobre él."
+
+#: doc/classes/LineEdit.xml:179
msgid ""
"Emitted when trying to append text that would overflow the [member "
"max_length]."
msgstr ""
+"Emitido cuando se intentaba añadir un texto que desbordaba el [member "
+"max_length]."
-#: doc/classes/LineEdit.xml:181 doc/classes/TextEdit.xml:525
+#: doc/classes/LineEdit.xml:186 doc/classes/TextEdit.xml:490
msgid "Emitted when the text changes."
-msgstr ""
+msgstr "Emitido cuando el texto cambia."
-#: doc/classes/LineEdit.xml:188
+#: doc/classes/LineEdit.xml:193
msgid "Emitted when the user presses [constant KEY_ENTER] on the [LineEdit]."
msgstr ""
+"Emitido cuando el usuario presiona [constant KEY_ENTER] en la [LineEdit]."
-#: doc/classes/LineEdit.xml:194
+#: doc/classes/LineEdit.xml:199
msgid "Aligns the text on the left-hand side of the [LineEdit]."
-msgstr ""
+msgstr "Alinea el texto en el lado izquierdo de la [LineEdit]."
-#: doc/classes/LineEdit.xml:197
+#: doc/classes/LineEdit.xml:202
msgid "Centers the text in the middle of the [LineEdit]."
-msgstr ""
+msgstr "Centra el texto en el centro de la [LineEdit]."
-#: doc/classes/LineEdit.xml:200
+#: doc/classes/LineEdit.xml:205
msgid "Aligns the text on the right-hand side of the [LineEdit]."
-msgstr ""
+msgstr "Alinea el texto en el lado derecho de la [LineEdit]."
-#: doc/classes/LineEdit.xml:203
+#: doc/classes/LineEdit.xml:208
msgid "Stretches whitespaces to fit the [LineEdit]'s width."
msgstr ""
+"Estira los espacios en blanco para que se ajusten al ancho de la [LineEdit]."
-#: doc/classes/LineEdit.xml:206 doc/classes/TextEdit.xml:540
+#: doc/classes/LineEdit.xml:211 doc/classes/TextEdit.xml:505
msgid "Cuts (copies and clears) the selected text."
-msgstr ""
+msgstr "Corta (copia y borra) el texto seleccionado."
-#: doc/classes/LineEdit.xml:209 doc/classes/TextEdit.xml:543
+#: doc/classes/LineEdit.xml:214 doc/classes/TextEdit.xml:508
msgid "Copies the selected text."
-msgstr ""
+msgstr "Copia el texto seleccionado."
-#: doc/classes/LineEdit.xml:212
+#: doc/classes/LineEdit.xml:217
msgid ""
"Pastes the clipboard text over the selected text (or at the cursor's "
"position).\n"
"Non-printable escape characters are automatically stripped from the OS "
"clipboard via [method String.strip_escapes]."
msgstr ""
+"Pega el texto del portapapeles sobre el texto seleccionado (o en la posición "
+"del cursor).\n"
+"Los caracteres de escape no imprimibles se eliminan automáticamente del "
+"portapapeles del sistema operativo a través del [method String."
+"strip_escapes]."
-#: doc/classes/LineEdit.xml:216
+#: doc/classes/LineEdit.xml:221
msgid "Erases the whole [LineEdit] text."
-msgstr ""
+msgstr "Borra todo el texto [LineEdit]."
-#: doc/classes/LineEdit.xml:219
+#: doc/classes/LineEdit.xml:224
msgid "Selects the whole [LineEdit] text."
-msgstr ""
+msgstr "Selecciona todo el texto [LineEdit]."
-#: doc/classes/LineEdit.xml:222 doc/classes/TextEdit.xml:555
+#: doc/classes/LineEdit.xml:227 doc/classes/TextEdit.xml:520
msgid "Undoes the previous action."
-msgstr ""
+msgstr "Deshace la acción anterior."
-#: doc/classes/LineEdit.xml:225
+#: doc/classes/LineEdit.xml:230
msgid "Reverse the last undo action."
-msgstr ""
+msgstr "Invierte la última acción de deshacer."
-#: doc/classes/LineEdit.xml:228 doc/classes/TextEdit.xml:561
+#: doc/classes/LineEdit.xml:233 doc/classes/TextEdit.xml:526
msgid "Represents the size of the [enum MenuItems] enum."
-msgstr ""
+msgstr "Representa el tamaño del enum [enum MenuItems]."
-#: doc/classes/LineEdit.xml:233
+#: doc/classes/LineEdit.xml:238
msgid "Texture for the clear button. See [member clear_button_enabled]."
msgstr ""
+"La textura para el botón de despejar. Ver [member clear_button_enabled]."
-#: doc/classes/LineEdit.xml:236
+#: doc/classes/LineEdit.xml:241
msgid "Color used as default tint for the clear button."
-msgstr ""
+msgstr "Color utilizado como tinte predeterminado para el botón de despejar."
-#: doc/classes/LineEdit.xml:239
+#: doc/classes/LineEdit.xml:244
msgid "Color used for the clear button when it's pressed."
-msgstr ""
+msgstr "Color usado para el botón de borrado cuando se presiona."
-#: doc/classes/LineEdit.xml:242
+#: doc/classes/LineEdit.xml:247
msgid "Color of the [LineEdit]'s visual cursor (caret)."
-msgstr ""
+msgstr "Color del cursor visual (caret) de la [LineEdit]."
-#: doc/classes/LineEdit.xml:245
+#: doc/classes/LineEdit.xml:250
msgid "Background used when [LineEdit] has GUI focus."
msgstr ""
+"Fondo utilizado cuando [LineEdit] tiene el enfoque de la interfaz gráfica de "
+"usuario(GUI)."
-#: doc/classes/LineEdit.xml:248
+#: doc/classes/LineEdit.xml:253
msgid "Font used for the text."
-msgstr ""
+msgstr "Fuente usada para el texto."
-#: doc/classes/LineEdit.xml:251
+#: doc/classes/LineEdit.xml:256
msgid "Default font color."
-msgstr ""
+msgstr "Color de fuente predeterminado."
-#: doc/classes/LineEdit.xml:254
+#: doc/classes/LineEdit.xml:259
msgid "Font color for selected text (inside the selection rectangle)."
msgstr ""
+"Color de fuente para el texto seleccionado (dentro del rectángulo de "
+"selección)."
-#: doc/classes/LineEdit.xml:257
+#: doc/classes/LineEdit.xml:262
msgid "Font color when editing is disabled."
-msgstr ""
+msgstr "El color de la fuente cuando la edición está desactivada."
-#: doc/classes/LineEdit.xml:260
+#: doc/classes/LineEdit.xml:265
msgid ""
"Minimum horizontal space for the text (not counting the clear button and "
"content margins). This value is measured in count of space characters (i.e. "
"this amount of space characters can be displayed without scrolling)."
msgstr ""
+"Espacio horizontal mínimo para el texto (sin contar el botón de borrar y los "
+"márgenes de contenido). Este valor se mide en el recuento de caracteres de "
+"espacio (es decir, esta cantidad de caracteres de espacio pueden ser "
+"mostrados sin desplazamiento)."
-#: doc/classes/LineEdit.xml:263
+#: doc/classes/LineEdit.xml:268
msgid "Default background for the [LineEdit]."
-msgstr ""
+msgstr "Fondo predeterminado para la [LineEdit]."
-#: doc/classes/LineEdit.xml:266
+#: doc/classes/LineEdit.xml:271
msgid ""
"Background used when [LineEdit] is in read-only mode ([member editable] is "
"set to [code]false[/code])."
msgstr ""
+"Fondo utilizado cuando [LineEdit] está en modo de sólo lectura ([member "
+"editable] está configurado como [code]false[/code])."
-#: doc/classes/LineEdit.xml:269
+#: doc/classes/LineEdit.xml:274
msgid "Color of the selection rectangle."
-msgstr ""
+msgstr "Color del rectángulo de selección."
#: doc/classes/LineShape2D.xml:4
msgid "Line shape for 2D collisions."
-msgstr ""
+msgstr "Forma de línea para colisiones 2D."
#: doc/classes/LineShape2D.xml:7
msgid ""
@@ -30731,43 +38756,55 @@ msgid ""
"bodies, and usually not recommended for static bodies either because it "
"forces checks against it on every frame."
msgstr ""
+"Forma de línea para colisiones 2D. Funciona como un plano 2D y no permitirá "
+"que ningún cuerpo físico vaya al lado negativo. No se recomienda para "
+"cuerpos rígidos, y normalmente tampoco se recomienda para cuerpos estáticos "
+"porque fuerza las comprobaciones contra él en cada cuadro."
#: doc/classes/LineShape2D.xml:15
msgid "The line's distance from the origin."
-msgstr ""
+msgstr "La distancia de la línea desde el origen."
#: doc/classes/LineShape2D.xml:18
msgid "The line's normal."
-msgstr ""
+msgstr "La normal de la línea."
#: doc/classes/LinkButton.xml:4
msgid "Simple button used to represent a link to some resource."
-msgstr ""
+msgstr "Un simple botón usado para representar un enlace a algún recurso."
#: doc/classes/LinkButton.xml:7
msgid ""
"This kind of button is primarily used when the interaction with the button "
"causes a context change (like linking to a web page)."
msgstr ""
+"Este tipo de botón se utiliza principalmente cuando la interacción con el "
+"botón provoca un cambio de contexto (como el enlace a una página web)."
#: doc/classes/LinkButton.xml:21
msgid ""
"Determines when to show the underline. See [enum UnderlineMode] for options."
msgstr ""
+"Determina cuándo mostrar el subrayado. Ver [enum UnderlineMode] para las "
+"opciones."
#: doc/classes/LinkButton.xml:26
msgid "The LinkButton will always show an underline at the bottom of its text."
msgstr ""
+"El LinkButton siempre mostrará un subrayado en la parte inferior de su texto."
#: doc/classes/LinkButton.xml:29
msgid ""
"The LinkButton will show an underline at the bottom of its text when the "
"mouse cursor is over it."
msgstr ""
+"El LinkButton mostrará un subrayado en la parte inferior de su texto cuando "
+"el cursor del ratón esté sobre él."
#: doc/classes/LinkButton.xml:32
msgid "The LinkButton will never show an underline at the bottom of its text."
msgstr ""
+"El LinkButton nunca mostrará un subrayado en la parte inferior de su texto."
#: doc/classes/LinkButton.xml:37
msgid ""
@@ -30775,30 +38812,33 @@ msgid ""
"current [StyleBox], so using [StyleBoxEmpty] will just disable the focus "
"visual effect."
msgstr ""
+"[StyleBox] usado cuando el [LinkButton] está enfocado. Se muestra sobre el "
+"[StyleBox] actual, por lo que al usar [StyleBoxEmpty] sólo se desactivará el "
+"efecto visual de enfoque."
#: doc/classes/LinkButton.xml:40
msgid "[Font] of the [LinkButton]'s text."
-msgstr ""
+msgstr "[Font] del texto del [LinkButton]."
#: doc/classes/LinkButton.xml:43
msgid "Default text [Color] of the [LinkButton]."
-msgstr ""
+msgstr "[Color] del texto predeterminado del [LinkButton]."
#: doc/classes/LinkButton.xml:46
msgid "Text [Color] used when the [LinkButton] is being hovered."
-msgstr ""
+msgstr "[Color] del texto usado cuando el [LinkButton] está siendo movido."
#: doc/classes/LinkButton.xml:49
msgid "Text [Color] used when the [LinkButton] is being pressed."
-msgstr ""
+msgstr "[Color] del texto utilizado cuando se pulsa el [LinkButton]."
#: doc/classes/LinkButton.xml:52
msgid "The vertical space between the baseline of text and the underline."
-msgstr ""
+msgstr "El espacio vertical entre la línea de base del texto y el subrayado."
#: doc/classes/Listener3D.xml:4
msgid "Overrides the location sounds are heard from."
-msgstr ""
+msgstr "Anula los sonidos de localización que se escuchan."
#: doc/classes/Listener3D.xml:7
msgid ""
@@ -30807,14 +38847,19 @@ msgid ""
"listen from a location different from the [Camera3D].\n"
"[b]Note:[/b] There is no 2D equivalent for this node yet."
msgstr ""
+"Una vez añadido al árbol de la escena y activado con [method make_current], "
+"este nodo anulará los sonidos de localización que se escuchen. Esto puede "
+"ser usado para escuchar desde una ubicación diferente a la [Camera3D].\n"
+"[b]Nota:[/b] No hay equivalente 2D para este nodo todavía."
#: doc/classes/Listener3D.xml:17
msgid "Disables the listener to use the current camera's listener instead."
msgstr ""
+"Desactiva la escucha para usar la escucha de la cámara actual en su lugar."
#: doc/classes/Listener3D.xml:24
msgid "Returns the listener's global orthonormalized [Transform]."
-msgstr ""
+msgstr "Devuelve al listener la [Transform] de la global ortonormalizada."
#: doc/classes/Listener3D.xml:31
msgid ""
@@ -30823,14 +38868,18 @@ msgid ""
"[b]Note:[/b] There may be more than one Listener3D marked as \"current\" in "
"the scene tree, but only the one that was made current last will be used."
msgstr ""
+"Devuelve [code]true[/code] si el listener se hizo actualmente usando [method "
+"make_current], [code]false[/code] en caso contrario.\n"
+"[b]Nota:[/b] Puede haber más de un Listener3D marcado como \"actual\" en el "
+"árbol de la escena, pero sólo se usará el que se hizo actual en último lugar."
#: doc/classes/Listener3D.xml:39
msgid "Enables the listener. This will override the current camera's listener."
-msgstr ""
+msgstr "Habilita el listener. Esto anulará el listener de la cámara actual."
#: doc/classes/MainLoop.xml:4
msgid "Abstract base class for the game's main loop."
-msgstr ""
+msgstr "Clase base abstracta para el bucle principal del juego."
#: doc/classes/MainLoop.xml:7
msgid ""
@@ -30879,10 +38928,55 @@ msgid ""
" print(\" Keys typed: %s\" % var2str(keys_typed))\n"
"[/codeblock]"
msgstr ""
+"[MainLoop] es la clase base abstracta para el bucle de juego de un proyecto "
+"Godot. Es heredada por [SceneTree], que es la implementación por defecto del "
+"bucle del juego usado en los proyectos de Godot, aunque también es posible "
+"escribir y usar su propia subclase [MainLoop] en lugar del árbol de la "
+"escena.\n"
+"Al iniciar la aplicación, se debe proporcionar una implementación [MainLoop] "
+"al SO; de lo contrario, la aplicación terminará. Esto sucede automáticamente "
+"(y se crea un [Ãrbol de Escenas]) a menos que se proporcione un [Script] "
+"principal desde la línea de comandos (con, por ejemplo, [code]godot -s "
+"my_loop.gd[/code], que entonces debería ser una implementación [MainLoop].\n"
+"Aquí hay un ejemplo de script que implementa un simple [MainLoop]:\n"
+"[b]Arreglame:[/b] Ya no es válido después de la división del DisplayServer y "
+"la refactorización de la entrada.\n"
+"[codeblock]\n"
+"extends MainLoop\n"
+"\n"
+"var tiempo_pasado = 0\n"
+"var teclas_escritas = []\n"
+"var quitar = false\n"
+"\n"
+"func _initialize():\n"
+" print(\"Iniciado:\")\n"
+" print(\" Tiempo de comienzo: %s\" % str(tiempo_pasado))\n"
+"\n"
+"func _idle(delta):\n"
+" tiempo_pasado += delta\n"
+" # Devuelve verdadero al finalizar el bucle principal.\n"
+" return quitar\n"
+"\n"
+"func _input_event(event):\n"
+" # Graba claves.\n"
+" if event is InputEventKey and event.pressed and !event.echo:\n"
+" keys_typed.append(OS.get_keycode_string(event.keycode))\n"
+" # Sale del bucle si se pulsa Escape.\n"
+" if event.keycode == KEY_ESCAPE:\n"
+" quitar = true\n"
+" # Si se pulsa cualquier click con el ratón.\n"
+" if event is InputEventMouseButton:\n"
+" quitar = true\n"
+"\n"
+"func _finalize():\n"
+" print(\"Finalizado:\")\n"
+" print(\" Tiempo final: %s\" % str(tiempo_pasado))\n"
+" print(\" Teclas pulsadas: %s\" % var2str(keys_typed))\n"
+"[/codeblock]"
#: doc/classes/MainLoop.xml:51
msgid "Called before the program exits."
-msgstr ""
+msgstr "Llamada previa a la salida del programa."
#: doc/classes/MainLoop.xml:60
msgid ""
@@ -30892,10 +38986,15 @@ msgid ""
"ends the main loop, while [code]false[/code] lets it proceed to the next "
"frame."
msgstr ""
+"Llamada a cada fotograma ocioso con el tiempo desde el último fotograma "
+"ocioso como argumento (en segundos). Equivalente a [method Node.process].\n"
+"Si se implementa, el método debe devolver un valor booleano. [code]true[/"
+"code] termina el bucle principal, mientras que [code]false[/code] le permite "
+"pasar al siguiente fotograma."
#: doc/classes/MainLoop.xml:68
msgid "Called once during initialization."
-msgstr ""
+msgstr "Llamado una vez durante la inicialización."
#: doc/classes/MainLoop.xml:77
msgid ""
@@ -30905,86 +39004,152 @@ msgid ""
"ends the main loop, while [code]false[/code] lets it proceed to the next "
"frame."
msgstr ""
+"Llamado a cada fotograma de la física con el tiempo desde el último "
+"fotograma de la física como argumento (en segundos). Equivalente a [method "
+"Node._physics_process].\n"
+"Si se implementa, el método debe devolver un valor booleano. [code]true[/"
+"code] termina el bucle principal, mientras que [code]false[/code] le permite "
+"pasar al siguiente marco."
#: doc/classes/MainLoop.xml:85
msgid ""
"Should not be called manually, override [method _finalize] instead. Will be "
"removed in Godot 4.0."
msgstr ""
+"No debe llamarse manualmente, en su lugar, anular [method finalize]. Será "
+"eliminado en Godot 4.0."
#: doc/classes/MainLoop.xml:94
msgid ""
"Should not be called manually, override [method _idle] instead. Will be "
"removed in Godot 4.0."
msgstr ""
+"No se debe llamar manualmente, anular [method _idle] en su lugar. Será "
+"eliminado en Godot 4.0."
#: doc/classes/MainLoop.xml:101
msgid ""
"Should not be called manually, override [method _initialize] instead. Will "
"be removed in Godot 4.0."
msgstr ""
+"No se debe llamar manualmente, anular [method _initialize] en su lugar. Será "
+"eliminado en Godot 4.0."
#: doc/classes/MainLoop.xml:110
msgid ""
"Should not be called manually, override [method _iteration] instead. Will be "
"removed in Godot 4.0."
msgstr ""
+"No se debe llamar manualmente, anular [method iteration] en su lugar. Será "
+"eliminado en Godot 4.0."
#: doc/classes/MainLoop.xml:121
msgid "Emitted when a user responds to a permission request."
-msgstr ""
+msgstr "Emitido cuando un usuario responde a una solicitud de permiso."
-#: doc/classes/MainLoop.xml:127 doc/classes/Node.xml:948
+#: doc/classes/MainLoop.xml:127 doc/classes/Node.xml:946
msgid ""
"Notification received from the OS when the application is exceeding its "
"allocated memory.\n"
"Specific to the iOS platform."
msgstr ""
+"Notificación recibida del sistema operativo cuando la aplicación supera su "
+"memoria asignada.\n"
+"Específico de la plataforma iOS."
-#: doc/classes/MainLoop.xml:131 doc/classes/Node.xml:952
+#: doc/classes/MainLoop.xml:131 doc/classes/Node.xml:950
msgid ""
"Notification received when translations may have changed. Can be triggered "
"by the user changing the locale. Can be used to respond to language changes, "
"for example to change the UI strings on the fly. Useful when working with "
"the built-in translation support, like [method Object.tr]."
msgstr ""
+"Notificación recibida cuando las traducciones pueden haber cambiado. Puede "
+"ser activada por el usuario al cambiar el locale. Puede utilizarse para "
+"responder a los cambios de idioma, por ejemplo, para cambiar las strings de "
+"la interfaz de usuario sobre la marcha. Útil cuando se trabaja con el "
+"soporte de traducción incorporado, como [method Object.tr]."
-#: doc/classes/MainLoop.xml:134 doc/classes/Node.xml:955
+#: doc/classes/MainLoop.xml:134 doc/classes/Node.xml:953
msgid ""
"Notification received from the OS when a request for \"About\" information "
"is sent.\n"
"Specific to the macOS platform."
msgstr ""
+"Notificación recibida del sistema operativo cuando se envía una solicitud de "
+"información \"Acerca de\".\n"
+"Específico de la plataforma MacOS."
-#: doc/classes/MainLoop.xml:138 doc/classes/Node.xml:959
+#: doc/classes/MainLoop.xml:138 doc/classes/Node.xml:957
msgid ""
"Notification received from Godot's crash handler when the engine is about to "
"crash.\n"
"Implemented on desktop platforms if the crash handler is enabled."
msgstr ""
+"Notificación recibida del controlador de fallos de Godot cuando el motor "
+"está a punto de fallar.\n"
+"Implementado en las plataformas de escritorio si el manejador de fallos está "
+"habilitado."
-#: doc/classes/MainLoop.xml:142 doc/classes/Node.xml:963
+#: doc/classes/MainLoop.xml:142 doc/classes/Node.xml:961
msgid ""
"Notification received from the OS when an update of the Input Method Engine "
"occurs (e.g. change of IME cursor position or composition string).\n"
"Specific to the macOS platform."
msgstr ""
+"Notificación recibida del sistema operativo cuando se produce una "
+"actualización del motor del método de entrada (por ejemplo, cambio de la "
+"posición del cursor de la IME o de la string de composición).\n"
+"Específico de la plataforma MacOS."
-#: doc/classes/MainLoop.xml:146 doc/classes/Node.xml:967
+#: doc/classes/MainLoop.xml:146 doc/classes/Node.xml:965
+#, fuzzy
msgid ""
-"Notification received from the OS when the app is resumed.\n"
+"Notification received from the OS when the application is resumed.\n"
"Specific to the Android platform."
msgstr ""
+"Notificación recibida del sistema operativo cuando se reanuda la "
+"aplicación.\n"
+"Específica de la plataforma Android."
-#: doc/classes/MainLoop.xml:150 doc/classes/Node.xml:971
+#: doc/classes/MainLoop.xml:150 doc/classes/Node.xml:969
+#, fuzzy
msgid ""
-"Notification received from the OS when the app is paused.\n"
+"Notification received from the OS when the application is paused.\n"
"Specific to the Android platform."
msgstr ""
+"Notificación recibida del sistema operativo cuando la aplicación está en "
+"pausa.\n"
+"Específico de la plataforma Android."
+
+#: doc/classes/MainLoop.xml:154 doc/classes/Node.xml:973
+#, fuzzy
+msgid ""
+"Notification received from the OS when the application is focused, i.e. when "
+"changing the focus from the OS desktop or a thirdparty application to any "
+"open window of the Godot instance.\n"
+"Implemented on desktop platforms."
+msgstr ""
+"Notificación recibida del sistema operativo cuando el ratón entra en la "
+"ventana del juego.\n"
+"Implementado en plataformas de escritorio y web."
+
+#: doc/classes/MainLoop.xml:158 doc/classes/Node.xml:977
+#, fuzzy
+msgid ""
+"Notification received from the OS when the application is defocused, i.e. "
+"when changing the focus from any open window of the Godot instance to the OS "
+"desktop or a thirdparty application.\n"
+"Implemented on desktop platforms."
+msgstr ""
+"Notificación recibida del sistema operativo cuando se envía una solicitud de "
+"cierre (por ejemplo, cerrando la ventana con un botón de \"Cerrar\" o "
+"[kbd]Alt + F4[/kbd]).\n"
+"Implementado en plataformas de escritorio."
#: doc/classes/MarginContainer.xml:4
msgid "Simple margin container."
-msgstr ""
+msgstr "Un simple contenedor de margen."
#: doc/classes/MarginContainer.xml:7
msgid ""
@@ -31002,50 +39167,78 @@ msgid ""
"set(\"custom_constants/margin_right\", margin_value)\n"
"[/codeblock]"
msgstr ""
+"Añade un margen superior, izquierdo, inferior y derecho a todos los nodos "
+"[Control] que son hijos directos del contenedor. Para controlar el margen "
+"del [MarginContainer], utiliza las propiedades del tema [code]margin_*[/"
+"code] que se indican a continuación.\n"
+"[b]Nota:[/b] Ten cuidado, los valores de margen de [Control] son diferentes "
+"de los valores de margen constantes. Si desea cambiar los valores de margen "
+"personalizados del [MarginContainer] por código, debe utilizar los "
+"siguientes ejemplos:\n"
+"[codeblock]\n"
+"var valor_de_margen = 100\n"
+"set(\"custom_constants/margin_top\", valor_de_margen)\n"
+"set(\"custom_constants/margin_left\", valor_de_margen)\n"
+"set(\"custom_constants/margin_bottom\", valor_de_margen)\n"
+"set(\"custom_constants/margin_right\", valor_de_margen)\n"
+"[/codeblock]"
#: doc/classes/MarginContainer.xml:25
msgid ""
"All direct children of [MarginContainer] will have a bottom margin of "
"[code]margin_bottom[/code] pixels."
msgstr ""
+"Todos los hijos directos de [MarginContainer] tendrán un margen inferior de "
+"[code]margin_bottom[/code] píxeles."
#: doc/classes/MarginContainer.xml:28
msgid ""
"All direct children of [MarginContainer] will have a left margin of "
"[code]margin_left[/code] pixels."
msgstr ""
+"Todos los hijos directos de [MarginContainer] tendrán un margen izquierdo de "
+"[code]margin_left[/code] píxeles."
#: doc/classes/MarginContainer.xml:31
msgid ""
"All direct children of [MarginContainer] will have a right margin of "
"[code]margin_right[/code] pixels."
msgstr ""
+"Todos los hijos directos de [MarginContainer] tendrán un margen derecho de "
+"[code]margin_right[/code] píxeles."
#: doc/classes/MarginContainer.xml:34
msgid ""
"All direct children of [MarginContainer] will have a top margin of "
"[code]margin_top[/code] pixels."
msgstr ""
+"Todos los hijos directos de [MarginContainer] tendrán un margen superior de "
+"[code]margin_top[/code] píxeles."
#: doc/classes/Marshalls.xml:4
msgid "Data transformation (marshalling) and encoding helpers."
-msgstr ""
+msgstr "Ayudantes de transformación(marshalling) y codificación de datos."
#: doc/classes/Marshalls.xml:7
msgid "Provides data transformation and encoding utility functions."
msgstr ""
+"Proporciona funciones de utilidad de transformación y codificación de datos."
#: doc/classes/Marshalls.xml:18
msgid ""
"Returns a decoded [PackedByteArray] corresponding to the Base64-encoded "
"string [code]base64_str[/code]."
msgstr ""
+"Devuelve un [PackedByteArray] decodificado que corresponde a la string "
+"[code]base64_str[/code] codificada en Base64."
#: doc/classes/Marshalls.xml:27
msgid ""
"Returns a decoded string corresponding to the Base64-encoded string "
"[code]base64_str[/code]."
msgstr ""
+"Devuelve una cadena decodificada que corresponde a la string codificada en "
+"Base64 [code]base64_str[/code]."
#: doc/classes/Marshalls.xml:38
msgid ""
@@ -31056,15 +39249,25 @@ msgid ""
"Do not use this option if the serialized object comes from untrusted sources "
"to avoid potential security threats such as remote code execution."
msgstr ""
+"Devuelve una [Variant] decodificada que corresponde a la string "
+"[code]base64_str[/code] codificada en Base64. Si [code]allow_objects[/code] "
+"es [code]true[/code], se permite decodificar los objetos.\n"
+"[b]Advertencia:[/b] Los objetos deserializados pueden contener código que se "
+"ejecuta. No utilice esta opción si el objeto serializado proviene de fuentes "
+"no fiables para evitar posibles amenazas a la seguridad, como la ejecución "
+"remota de código."
#: doc/classes/Marshalls.xml:48
msgid "Returns a Base64-encoded string of a given [PackedByteArray]."
msgstr ""
+"Devuelve una string codificada en Base64 de un determinado [PackedByteArray]."
#: doc/classes/Marshalls.xml:57
msgid ""
"Returns a Base64-encoded string of the UTF-8 string [code]utf8_str[/code]."
msgstr ""
+"Devuelve una string codificada en Base64 de la cadena UTF-8 [code]utf8_str[/"
+"code]."
#: doc/classes/Marshalls.xml:68
msgid ""
@@ -31072,10 +39275,13 @@ msgid ""
"[code]full_objects[/code] is [code]true[/code], encoding objects is allowed "
"(and can potentially include code)."
msgstr ""
+"Devuelve una string codificada en Base64 de la [Variant] [code]variant[/"
+"code]. Si [code]full_objects[/code] es [code]true[/code], se permite "
+"codificar objetos (y potencialmente puede incluir código)."
#: doc/classes/Material.xml:4
msgid "Abstract base [Resource] for coloring and shading geometry."
-msgstr ""
+msgstr "Base abstracta [Resource] para colorear y sombrear la geometría."
#: doc/classes/Material.xml:7
msgid ""
@@ -31084,6 +39290,11 @@ msgid ""
"carry a Material. A few flags and parameters are shared between all material "
"types and are configured here."
msgstr ""
+"El material es un [Recurso] base usado para colorear y sombrear la "
+"geometría. Todos los materiales heredan de él y casi todos los nodos "
+"derivados de [VisualInstance3D] llevan un Material. Algunos indicadores y "
+"parámetros son compartidos por todos los tipos de materiales y se configuran "
+"aquí."
#: doc/classes/Material.xml:15
msgid ""
@@ -31092,6 +39303,10 @@ msgid ""
"[b]Note:[/b] only applies to [StandardMaterial3D]s and [ShaderMaterial]s "
"with type \"Spatial\"."
msgstr ""
+"Establece el [Material] que se usará para la siguiente pasada. Esto hace que "
+"el objeto vuelva a utilizar un material diferente.\n"
+"[b]Nota:[/b] sólo se aplica a los [StandardMaterial3D] y a los "
+"[ShaderMaterial]s con el tipo \"Espacial\"."
#: doc/classes/Material.xml:19
msgid ""
@@ -31102,18 +39317,26 @@ msgid ""
"This is because opaque objects are not sorted, while transparent objects are "
"sorted from back to front (subject to priority)."
msgstr ""
+"Establece la prioridad de renderización de los objetos transparentes en las "
+"escenas 3D. Los objetos de mayor prioridad se clasificarán delante de los de "
+"menor prioridad.\n"
+"[b]Nota:[/b] esto sólo se aplica a la clasificación de los objetos "
+"transparentes. Esto no afectará a la forma en que se clasifican los objetos "
+"transparentes en relación con los opacos. Esto se debe a que los objetos "
+"opacos no se clasifican, mientras que los transparentes se clasifican de "
+"atrás hacia adelante (sujetos a prioridad)."
#: doc/classes/Material.xml:25
msgid "Maximum value for the [member render_priority] parameter."
-msgstr ""
+msgstr "Valor máximo del parámetro [member render_priority]."
#: doc/classes/Material.xml:28
msgid "Minimum value for the [member render_priority] parameter."
-msgstr ""
+msgstr "Valor mínimo del parámetro [member render_priority]."
#: doc/classes/MenuButton.xml:4
msgid "Special button that brings up a [PopupMenu] when clicked."
-msgstr ""
+msgstr "Botón especial que hace aparecer un [PopupMenu] cuando se hace clic."
#: doc/classes/MenuButton.xml:7
msgid ""
@@ -31124,16 +39347,25 @@ msgid ""
"the top of the 2D editor, click [b]Items[/b] then click [b]Add[/b] in the "
"popup. You will be able to give each items new properties."
msgstr ""
+"Botón especial que hace aparecer un [PopupMenu] cuando se hace clic.\n"
+"Se pueden crear nuevos elementos dentro de este [PopupMenu] usando "
+"[code]get_popup().add_item(\"My Item Name\")[/code]. También puedes crearlos "
+"directamente desde el editor. Para ello, selecciona el nodo [MenuButton], "
+"luego en la barra de herramientas en la parte superior del editor 2D, haz "
+"clic en [b]Items[/b] y luego en [b]Add[/b] en el popup. Podrás dar a cada "
+"ítem nuevas propiedades."
#: doc/classes/MenuButton.xml:17 doc/classes/OptionButton.xml:106
msgid "Returns the [PopupMenu] contained in this button."
-msgstr ""
+msgstr "Devuelve el [PopupMenu] contenido en este botón."
#: doc/classes/MenuButton.xml:26
msgid ""
"If [code]true[/code], shortcuts are disabled and cannot be used to trigger "
"the button."
msgstr ""
+"Si [code]true[/code], los atajos están desactivados y no se pueden utilizar "
+"para activar el botón."
#: doc/classes/MenuButton.xml:36
msgid ""
@@ -31141,14 +39373,18 @@ msgid ""
"within the same parent which also has [code]switch_on_hover[/code] enabled, "
"it will close the current [MenuButton] and open the other one."
msgstr ""
+"Si [code]true[/code], cuando el cursor se sitúe sobre otro [MenuButton] "
+"dentro del mismo padre que también tenga activado [code]switch_on_hover[/"
+"code], cerrará el [MenuButton] actual y abrirá el otro."
#: doc/classes/MenuButton.xml:43
msgid "Emitted when the [PopupMenu] of this MenuButton is about to show."
msgstr ""
+"Emitido cuando el [PopupMenu] de este MenuButton está a punto de aparecer."
#: doc/classes/MenuButton.xml:51
msgid "[StyleBox] used when the [MenuButton] is disabled."
-msgstr ""
+msgstr "[StyleBox] utilizado cuando el [MenuButton] está desactivado."
#: doc/classes/MenuButton.xml:54
msgid ""
@@ -31156,46 +39392,50 @@ msgid ""
"current [StyleBox], so using [StyleBoxEmpty] will just disable the focus "
"visual effect."
msgstr ""
+"[StyleBox] usado cuando el [MenuButton] está enfocado. Se muestra sobre el "
+"[StyleBox] actual, por lo que al usar [StyleBoxEmpty] sólo se desactivará el "
+"efecto visual de enfoque."
#: doc/classes/MenuButton.xml:57
msgid "[Font] of the [MenuButton]'s text."
-msgstr ""
+msgstr "[Font] del texto del [MenuButton]."
#: doc/classes/MenuButton.xml:60
msgid "Default text [Color] of the [MenuButton]."
-msgstr ""
+msgstr "[Color] del Texto predeterminado del [MenuButton]."
#: doc/classes/MenuButton.xml:63
msgid "Text [Color] used when the [MenuButton] is disabled."
-msgstr ""
+msgstr "[Color] del texto utilizado cuando el [MenuButton] está desactivado."
#: doc/classes/MenuButton.xml:66
msgid "Text [Color] used when the [MenuButton] is being hovered."
-msgstr ""
+msgstr "[Color] del texto usado cuando el puntero esta sobre el [MenuButton]."
#: doc/classes/MenuButton.xml:69
msgid "Text [Color] used when the [MenuButton] is being pressed."
-msgstr ""
+msgstr "[Color] del texto utilizado cuando se pulsa el [MenuButton]."
#: doc/classes/MenuButton.xml:72
msgid "[StyleBox] used when the [MenuButton] is being hovered."
msgstr ""
+"[StyleBox] usado cuando el puntero del ratón esta sobre el [MenuButton]."
#: doc/classes/MenuButton.xml:75
msgid "The horizontal space between [MenuButton]'s icon and text."
-msgstr ""
+msgstr "El espacio horizontal entre el icono y el texto de [MenuButton]."
#: doc/classes/MenuButton.xml:78
msgid "Default [StyleBox] for the [MenuButton]."
-msgstr ""
+msgstr "[StyleBox] por defecto para el [MenuButton]."
#: doc/classes/MenuButton.xml:81
msgid "[StyleBox] used when the [MenuButton] is being pressed."
-msgstr ""
+msgstr "[StyleBox] que se utiliza cuando se pulsa el [MenuButton]."
#: doc/classes/Mesh.xml:4
msgid "A [Resource] that contains vertex array-based geometry."
-msgstr ""
+msgstr "Un [Resource] que contiene un array de vértices de una geometría."
#: doc/classes/Mesh.xml:7
msgid ""
@@ -31205,10 +39445,16 @@ msgid ""
"surfaces is preferred to a single surface, because objects created in 3D "
"editing software commonly contain multiple materials."
msgstr ""
+"La malla es un tipo de [Recurso] que contiene una geometría basada en un "
+"array de vértices, dividida en [i]superficies[/i]. Cada superficie contiene "
+"un array completamente separado y un material utilizado para dibujarlo. En "
+"cuanto al diseño, se prefiere una malla con múltiples superficies a una sola "
+"superficie, porque los objetos creados en un software de edición 3D suelen "
+"contener múltiples materiales."
#: doc/classes/Mesh.xml:16
msgid "Calculate a [ConvexPolygonShape3D] from the mesh."
-msgstr ""
+msgstr "Calcula un [ConvexPolygonShape3D] desde la malla."
#: doc/classes/Mesh.xml:25
msgid ""
@@ -31217,14 +39463,18 @@ msgid ""
"[b]Note:[/b] This method typically returns the vertices in reverse order (e."
"g. clockwise to counterclockwise)."
msgstr ""
+"Calcular una malla de contorno en un desplazamiento definido (margen) de la "
+"malla original.\n"
+"[b]Nota:[/b] Este método típicamente devuelve los vértices en orden inverso "
+"(por ejemplo, de derecha a izquierda)."
#: doc/classes/Mesh.xml:33
msgid "Calculate a [ConcavePolygonShape3D] from the mesh."
-msgstr ""
+msgstr "Calcula un [ConcavePolygonShape3D] desde la malla."
#: doc/classes/Mesh.xml:40
msgid "Generate a [TriangleMesh] from the mesh."
-msgstr ""
+msgstr "Genera un [TriangleMesh] desde la malla."
#: doc/classes/Mesh.xml:47
msgid ""
@@ -31232,185 +39482,207 @@ msgid ""
"[code]custom_aabb[/code].\n"
"[b]Note:[/b] This is only implemented for [ArrayMesh] and [PrimitiveMesh]."
msgstr ""
+"Devuelve el más pequeño [AABB] que encierra esta malla. No está afectado por "
+"[code]custom_aabb[/code].\n"
+"[b]Nota:[/b] Esto está sólo implementado para [ArrayMesh] y [PrimitiveMesh]."
#: doc/classes/Mesh.xml:55
msgid ""
"Returns all the vertices that make up the faces of the mesh. Each three "
"vertices represent one triangle."
msgstr ""
+"Devuelve todos los vértices que forman las caras de la malla. Cada tres "
+"vértices representan un triángulo."
#: doc/classes/Mesh.xml:62
msgid "Returns the amount of surfaces that the [Mesh] holds."
-msgstr ""
+msgstr "Devuelve la cantidad de superficies que la [Mesh] sostiene."
#: doc/classes/Mesh.xml:71
msgid ""
"Returns the arrays for the vertices, normals, uvs, etc. that make up the "
"requested surface (see [method ArrayMesh.add_surface_from_arrays])."
msgstr ""
+"Devuelve los arrays para los vértices, normales, uvs, etc. que conforman la "
+"superficie solicitada (ver [method ArrayMesh.add_surface_from_arrays])."
#: doc/classes/Mesh.xml:80
msgid "Returns the blend shape arrays for the requested surface."
-msgstr ""
+msgstr "Devuelve los arrays de formas de mezcla para la superficie solicitada."
#: doc/classes/Mesh.xml:89
msgid ""
"Returns a [Material] in a given surface. Surface is rendered using this "
"material."
msgstr ""
+"Devuelve un [Material] en una superficie determinada. La superficie se "
+"renderiza usando este material."
#: doc/classes/Mesh.xml:100
msgid ""
"Sets a [Material] for a given surface. Surface will be rendered using this "
"material."
msgstr ""
+"Establece un [Material] para una superficie determinada. La superficie se "
+"renderizará usando este material."
#: doc/classes/Mesh.xml:106
msgid "Sets a hint to be used for lightmap resolution."
msgstr ""
+"Establece una sugerencia para ser usada para la resolución de los mapas de "
+"luz."
#: doc/classes/Mesh.xml:111
msgid "Render array as points (one vertex equals one point)."
-msgstr ""
+msgstr "Renderizar un array como puntos (un vértice es igual a un punto)."
#: doc/classes/Mesh.xml:114
msgid "Render array as lines (every two vertices a line is created)."
-msgstr ""
+msgstr "Renderiza el array como líneas (cada dos vértices se crea una línea)."
#: doc/classes/Mesh.xml:117
msgid "Render array as line strip."
-msgstr ""
+msgstr "Renderiza un array como una tira de líneas."
#: doc/classes/Mesh.xml:120
msgid "Render array as triangles (every three vertices a triangle is created)."
msgstr ""
+"Renderizar la matriz como triángulos (cada tres vértices se crea un "
+"triángulo)."
#: doc/classes/Mesh.xml:123
msgid "Render array as triangle strips."
-msgstr ""
+msgstr "Renderizar un array como tiras de triángulo."
-#: doc/classes/Mesh.xml:126 doc/classes/RenderingServer.xml:3189
+#: doc/classes/Mesh.xml:126 doc/classes/RenderingServer.xml:3185
msgid "Blend shapes are normalized."
-msgstr ""
+msgstr "Las formas de la mezcla se normalizan."
-#: doc/classes/Mesh.xml:129 doc/classes/RenderingServer.xml:3192
+#: doc/classes/Mesh.xml:129 doc/classes/RenderingServer.xml:3188
msgid "Blend shapes are relative to base weight."
-msgstr ""
+msgstr "Las formas de la mezcla son relativas al peso base."
#: doc/classes/Mesh.xml:132
msgid ""
"Mesh array contains vertices. All meshes require a vertex array so this "
"should always be present."
msgstr ""
+"El array de malla contiene vértices. Todas las mallas requieren un array de "
+"vértices, así que esto siempre debe estar presente."
#: doc/classes/Mesh.xml:135
msgid "Mesh array contains normals."
-msgstr ""
+msgstr "El array de malla contiene normales."
#: doc/classes/Mesh.xml:138
msgid "Mesh array contains tangents."
-msgstr ""
+msgstr "El array de malla contiene tangentes."
#: doc/classes/Mesh.xml:141
msgid "Mesh array contains colors."
-msgstr ""
+msgstr "El array de malla contiene colores."
#: doc/classes/Mesh.xml:144
msgid "Mesh array contains UVs."
-msgstr ""
+msgstr "El array de malla contiene UVs."
#: doc/classes/Mesh.xml:147
msgid "Mesh array contains second UV."
-msgstr ""
+msgstr "El array de malla contiene un segundo UV."
#: doc/classes/Mesh.xml:150
msgid "Mesh array contains bones."
-msgstr ""
+msgstr "El array de malla contiene huesos."
#: doc/classes/Mesh.xml:153
msgid "Mesh array contains bone weights."
-msgstr ""
+msgstr "El array de malla contiene pesos de huesos."
#: doc/classes/Mesh.xml:156
msgid "Mesh array uses indices."
-msgstr ""
+msgstr "El array de malla usa índices."
-#: doc/classes/Mesh.xml:159 doc/classes/RenderingServer.xml:3145
+#: doc/classes/Mesh.xml:159 doc/classes/RenderingServer.xml:3141
msgid "Flag used to mark a compressed (half float) normal array."
-msgstr ""
+msgstr "Flag utilizada para marcar un array normal comprimido (real)."
-#: doc/classes/Mesh.xml:162 doc/classes/RenderingServer.xml:3148
+#: doc/classes/Mesh.xml:162 doc/classes/RenderingServer.xml:3144
msgid "Flag used to mark a compressed (half float) tangent array."
-msgstr ""
+msgstr "Flag utilizada para marcar un array tangencial comprimido (real)."
-#: doc/classes/Mesh.xml:165 doc/classes/RenderingServer.xml:3151
+#: doc/classes/Mesh.xml:165 doc/classes/RenderingServer.xml:3147
msgid "Flag used to mark a compressed (half float) color array."
-msgstr ""
+msgstr "Flag usada para marcar una array de colores comprimida (real)."
-#: doc/classes/Mesh.xml:168 doc/classes/RenderingServer.xml:3154
+#: doc/classes/Mesh.xml:168 doc/classes/RenderingServer.xml:3150
msgid "Flag used to mark a compressed (half float) UV coordinates array."
-msgstr ""
+msgstr "Flag usada para marcar un array de coordenadas UV comprimidas (real)."
-#: doc/classes/Mesh.xml:171 doc/classes/RenderingServer.xml:3157
+#: doc/classes/Mesh.xml:171 doc/classes/RenderingServer.xml:3153
msgid ""
"Flag used to mark a compressed (half float) UV coordinates array for the "
"second UV coordinates."
msgstr ""
+"Flag usada para marcar un array de coordenadas UV comprimidas (real) para "
+"las segundas coordenadas UV."
-#: doc/classes/Mesh.xml:174 doc/classes/RenderingServer.xml:3160
+#: doc/classes/Mesh.xml:174 doc/classes/RenderingServer.xml:3156
msgid "Flag used to mark a compressed index array."
-msgstr ""
+msgstr "Flag usada para marcar un array de índices comprimida."
-#: doc/classes/Mesh.xml:177 doc/classes/RenderingServer.xml:3166
+#: doc/classes/Mesh.xml:177 doc/classes/RenderingServer.xml:3162
msgid "Flag used to mark that the array contains 2D vertices."
-msgstr ""
+msgstr "Flag usada para marcar que el array contiene vértices 2D."
-#: doc/classes/Mesh.xml:180 doc/classes/RenderingServer.xml:3163
+#: doc/classes/Mesh.xml:180 doc/classes/RenderingServer.xml:3159
msgid ""
"Used to set flags [constant ARRAY_COMPRESS_NORMAL], [constant "
"ARRAY_COMPRESS_TANGENT], [constant ARRAY_COMPRESS_COLOR], [constant "
"ARRAY_COMPRESS_TEX_UV] and [constant ARRAY_COMPRESS_TEX_UV2] quickly."
msgstr ""
+"Se usa para poner las banderas [constante ARRAY_COMPRESS_NORMAL], [constant "
+"ARRAY_COMPRESS_TANGENT], [constant ARRAY_COMPRESS_COLOR], [constant "
+"ARRAY_COMPRESS_TEX_UV] y [constant ARRAY_COMPRESS_TEX_UV2] rápidamente."
#: doc/classes/Mesh.xml:183
msgid "Array of vertices."
-msgstr ""
+msgstr "Array de vértices."
#: doc/classes/Mesh.xml:186
msgid "Array of normals."
-msgstr ""
+msgstr "Array de normales."
#: doc/classes/Mesh.xml:189
msgid "Array of tangents as an array of floats, 4 floats per tangent."
-msgstr ""
+msgstr "Array de tangentes como un array de reales, 4 reales por tangente."
#: doc/classes/Mesh.xml:192
msgid "Array of colors."
-msgstr ""
+msgstr "Array de colores."
#: doc/classes/Mesh.xml:195
msgid "Array of UV coordinates."
-msgstr ""
+msgstr "Array de coordenadas UV."
#: doc/classes/Mesh.xml:198
msgid "Array of second set of UV coordinates."
-msgstr ""
+msgstr "Array de un segundo conjunto de coordenadas UV."
#: doc/classes/Mesh.xml:201
msgid "Array of bone data."
-msgstr ""
+msgstr "Array de datos de los huesos."
#: doc/classes/Mesh.xml:204
msgid "Array of weights."
-msgstr ""
+msgstr "Array de pesos."
#: doc/classes/Mesh.xml:207
msgid "Array of indices."
-msgstr ""
+msgstr "Array de índices."
#: doc/classes/MeshDataTool.xml:4
msgid "Helper tool to access and edit [Mesh] data."
-msgstr ""
+msgstr "Herramienta de ayuda para acceder y editar los datos de la [Mesh]."
#: doc/classes/MeshDataTool.xml:7
msgid ""
@@ -31437,32 +39709,58 @@ msgid ""
"OpenGL/Face-culling]winding order[/url] for front faces of triangle "
"primitive modes."
msgstr ""
+"La MeshDataTool proporciona acceso a los vértices individuales de una "
+"[Mesh]. Permite a los usuarios leer y editar los datos de los vértices de "
+"las mallas. También crea un conjunto de caras y bordes.\n"
+"Para usar MeshDataTool, cargue una malla con [method create_from_surface]. "
+"Cuando termines de editar los datos, confirma los datos a una malla con "
+"[method commit_to_surface].\n"
+"A continuación se muestra un ejemplo de cómo se puede usar MeshDataTool.\n"
+"[codeblock]\n"
+"var herramientaDeDatosDeMalla = MeshDataTool.new()\n"
+"herramientaDeDatosDeMalla.create_from_surface(malla, 0)\n"
+"for i in range(herramientaDeDatosDeMalla.get_vertex_count()):\n"
+" var vertice =herramientaDeDatosDeMalla .get_vertex(i)\n"
+" ...\n"
+" herramientaDeDatosDeMalla.set_vertex(i, vertice)\n"
+"malla.surface_remove(0)\n"
+"herramientaDeDatosDeMalla.commit_to_surface(malla)\n"
+"[/codeblock]\n"
+"Ver también [ArrayMesh], [ImmediateGeometry3D] y [SurfaceTool] para la "
+"generación de la geometría de procedimiento.\n"
+"[b]Nota:[/b] Godot utiliza el orden de giro en el sentido de las agujas del "
+"reloj [url=https://learnopengl.com/Advanced-OpenGL/Face-culling] para las "
+"caras frontales de los modos primitivos de los triángulos."
#: doc/classes/MeshDataTool.xml:30
msgid "Clears all data currently in MeshDataTool."
-msgstr ""
+msgstr "Borra todos los datos que actualmente están en la MeshDataTool."
#: doc/classes/MeshDataTool.xml:39
msgid "Adds a new surface to specified [Mesh] with edited data."
msgstr ""
+"Añade una nueva superficie a la [Mesh] especificada con datos editados."
#: doc/classes/MeshDataTool.xml:50
msgid ""
"Uses specified surface of given [Mesh] to populate data for MeshDataTool.\n"
"Requires [Mesh] with primitive type [constant Mesh.PRIMITIVE_TRIANGLES]."
msgstr ""
+"Utiliza la superficie especificada de la [Mesh] dada para poblar los datos "
+"de la MeshDataTool.\n"
+"Requiere [Mesh] con el tipo primitivo [constant Mesh.PRIMITIVE_TRIANGLES]."
#: doc/classes/MeshDataTool.xml:58
msgid "Returns the number of edges in this [Mesh]."
-msgstr ""
+msgstr "Devuelve el número de bordes en esta [Mesh]."
#: doc/classes/MeshDataTool.xml:67
msgid "Returns array of faces that touch given edge."
-msgstr ""
+msgstr "Devuelve el conjunto de rostros que tocan el borde dado."
#: doc/classes/MeshDataTool.xml:76
msgid "Returns meta information assigned to given edge."
-msgstr ""
+msgstr "Devuelve la meta información asignada a un borde dado."
#: doc/classes/MeshDataTool.xml:87
msgid ""
@@ -31470,30 +39768,40 @@ msgid ""
"Vertex argument can only be 0 or 1 because edges are comprised of two "
"vertices."
msgstr ""
+"Devuelve el índice de un vértice específico conectado a un borde "
+"determinado.\n"
+"El argumento de vértice sólo puede ser 0 o 1 porque los bordes están "
+"compuestos por dos vértices."
#: doc/classes/MeshDataTool.xml:95
msgid "Returns the number of faces in this [Mesh]."
-msgstr ""
+msgstr "Devuelve el número de caras en esta [Mesh]."
#: doc/classes/MeshDataTool.xml:106
msgid ""
"Returns specified edge associated with given face.\n"
"Edge argument must 2 or less because a face only has three edges."
msgstr ""
+"Devuelve un borde específico asociado a una cara determinada.\n"
+"El argumento de borde debe ser 2 o menos porque una cara sólo tiene tres "
+"bordes."
#: doc/classes/MeshDataTool.xml:116
msgid "Returns the metadata associated with the given face."
-msgstr ""
+msgstr "Devuelve los metadatos asociados con la cara dada."
#: doc/classes/MeshDataTool.xml:125
msgid "Calculates and returns the face normal of the given face."
-msgstr ""
+msgstr "Calcula y devuelve la cara normal de la cara dada."
#: doc/classes/MeshDataTool.xml:136
msgid ""
"Returns the specified vertex of the given face.\n"
"Vertex argument must be 2 or less because faces contain three vertices."
msgstr ""
+"Devuelve el vértice especificado de la cara dada.\n"
+"El argumento del vértice debe ser 2 o menos porque las caras contienen tres "
+"vértices."
#: doc/classes/MeshDataTool.xml:144
msgid ""
@@ -31504,110 +39812,116 @@ msgid ""
"ARRAY_FORMAT_NORMAL] is [code]2[/code].\n"
"See [enum ArrayMesh.ArrayFormat] for a list of format flags."
msgstr ""
+"Devuelve el formato de la [Mesh]. El formato es un entero compuesto de "
+"banderas de formato [Mesh] combinadas entre sí. Por ejemplo, una malla que "
+"contiene tanto vértices como normales devolvería un formato de [code]3[/"
+"code] porque [constant ArrayMesh.ARRAY_FORMAT_VERTEX] es [code]1[/code] y "
+"[constant ArrayMesh.ARRAY_FORMAT_NORMAL] es [code]2[/code].\n"
+"Ver [enum ArrayMesh.ArrayFormat] para una lista de flags de formato."
#: doc/classes/MeshDataTool.xml:152
msgid "Returns the material assigned to the [Mesh]."
-msgstr ""
+msgstr "Devuelve el material asignado a la [Mesh]."
#: doc/classes/MeshDataTool.xml:161
msgid "Returns the vertex at given index."
-msgstr ""
+msgstr "Devuelve el vértice en un índice determinado."
#: doc/classes/MeshDataTool.xml:170
msgid "Returns the bones of the given vertex."
-msgstr ""
+msgstr "Devuelve los huesos del vértice dado."
#: doc/classes/MeshDataTool.xml:179
msgid "Returns the color of the given vertex."
-msgstr ""
+msgstr "Devuelve el color del vértice dado."
#: doc/classes/MeshDataTool.xml:186
msgid "Returns the total number of vertices in [Mesh]."
-msgstr ""
+msgstr "Devuelve el número total de vértices en [Mesh]."
#: doc/classes/MeshDataTool.xml:195
msgid "Returns an array of edges that share the given vertex."
-msgstr ""
+msgstr "Devuelve un array de bordes que comparten el vértice dado."
#: doc/classes/MeshDataTool.xml:204
msgid "Returns an array of faces that share the given vertex."
-msgstr ""
+msgstr "Devuelve un array de caras que comparten el vértice dado."
#: doc/classes/MeshDataTool.xml:213
msgid "Returns the metadata associated with the given vertex."
-msgstr ""
+msgstr "Devuelve los metadatos asociados con el vértice dado."
#: doc/classes/MeshDataTool.xml:222
msgid "Returns the normal of the given vertex."
-msgstr ""
+msgstr "Devuelve la normal del vértice dado."
#: doc/classes/MeshDataTool.xml:231
msgid "Returns the tangent of the given vertex."
-msgstr ""
+msgstr "Devuelve la tangente del vértice dado."
#: doc/classes/MeshDataTool.xml:240
msgid "Returns the UV of the given vertex."
-msgstr ""
+msgstr "Devuelve el UV del vértice dado."
#: doc/classes/MeshDataTool.xml:249
msgid "Returns the UV2 of the given vertex."
-msgstr ""
+msgstr "Devuelve el UV2 del vértice dado."
#: doc/classes/MeshDataTool.xml:258
msgid "Returns bone weights of the given vertex."
-msgstr ""
+msgstr "Devuelve los pesos del hueso del vértice dado."
#: doc/classes/MeshDataTool.xml:269
msgid "Sets the metadata of the given edge."
-msgstr ""
+msgstr "Establece los metadatos del borde dado."
#: doc/classes/MeshDataTool.xml:280
msgid "Sets the metadata of the given face."
-msgstr ""
+msgstr "Establece los metadatos de la cara dada."
#: doc/classes/MeshDataTool.xml:289
msgid "Sets the material to be used by newly-constructed [Mesh]."
-msgstr ""
+msgstr "Establece el material a ser usado por la [Mesh] recién construida."
#: doc/classes/MeshDataTool.xml:300
msgid "Sets the position of the given vertex."
-msgstr ""
+msgstr "Establece la posición del vértice dado."
#: doc/classes/MeshDataTool.xml:311
msgid "Sets the bones of the given vertex."
-msgstr ""
+msgstr "Establece los huesos del vértice dado."
#: doc/classes/MeshDataTool.xml:322
msgid "Sets the color of the given vertex."
-msgstr ""
+msgstr "Establece el color del vértice dado."
#: doc/classes/MeshDataTool.xml:333
msgid "Sets the metadata associated with the given vertex."
-msgstr ""
+msgstr "Establece los metadatos asociados con el vértice dado."
#: doc/classes/MeshDataTool.xml:344
msgid "Sets the normal of the given vertex."
-msgstr ""
+msgstr "Establece la normal del vértice dado."
#: doc/classes/MeshDataTool.xml:355
msgid "Sets the tangent of the given vertex."
-msgstr ""
+msgstr "Establece la tangente del vértice dado."
#: doc/classes/MeshDataTool.xml:366
msgid "Sets the UV of the given vertex."
-msgstr ""
+msgstr "Establece el UV del vértice dado."
#: doc/classes/MeshDataTool.xml:377
msgid "Sets the UV2 of the given vertex."
-msgstr ""
+msgstr "Establece el UV2 del vértice dado."
#: doc/classes/MeshDataTool.xml:388
msgid "Sets the bone weights of the given vertex."
-msgstr ""
+msgstr "Establece los pesos del hueso del vértice dado."
#: doc/classes/MeshInstance2D.xml:4
msgid "Node used for displaying a [Mesh] in 2D."
-msgstr ""
+msgstr "Nodo utilizado para mostrar una [Mesh] en 2D."
#: doc/classes/MeshInstance2D.xml:7
msgid ""
@@ -31615,14 +39929,18 @@ msgid ""
"[Sprite2D] via a tool in the editor toolbar. Select \"Sprite2D\" then "
"\"Convert to Mesh2D\", select settings in popup and press \"Create Mesh2D\"."
msgstr ""
+"Nodo utilizado para mostrar una [Mesh] en 2D. Puede ser construido a partir "
+"de un [Sprite2D] existente mediante una herramienta en la barra de "
+"herramientas del editor. Selecciona \"Sprite2D\" y luego \"Convertir a Mesh2D"
+"\", selecciona los ajustes en el popup y pulsa \"Crear Mesh2D\"."
#: doc/classes/MeshInstance2D.xml:10
msgid "https://docs.godotengine.org/en/latest/tutorials/2d/2d_meshes.html"
-msgstr ""
+msgstr "https://docs.godotengine.org/es/latest/tutorials/2d/2d_meshes.html"
#: doc/classes/MeshInstance2D.xml:16
msgid "The [Mesh] that will be drawn by the [MeshInstance2D]."
-msgstr ""
+msgstr "La [Mesh] que será dibujada por la [MeshInstance2D]."
#: doc/classes/MeshInstance2D.xml:19 doc/classes/MultiMeshInstance2D.xml:19
msgid ""
@@ -31632,20 +39950,30 @@ msgid ""
"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]this page[/url] for "
"a comparison of normal map coordinates expected by popular engines."
msgstr ""
+"El mapa normal que se utilizará si se utiliza el [CanvasItemMaterial] "
+"predeterminado.\n"
+"[b]Nota:[/b] Godot espera que el mapa normal use las coordenadas X+, Y-, y Z"
+"+. Ver [url=http://wiki.polycount.com/wiki/"
+"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]esta página[/url] "
+"para una comparación de las coordenadas del mapa normal esperadas por los "
+"motores populares."
#: doc/classes/MeshInstance2D.xml:23 doc/classes/MultiMeshInstance2D.xml:23
msgid ""
"The [Texture2D] that will be used if using the default [CanvasItemMaterial]. "
"Can be accessed as [code]TEXTURE[/code] in CanvasItem shader."
msgstr ""
+"La [Textura2D] que se utilizará si se usa el [CanvasItemMaterial] por "
+"defecto. Se puede acceder como [code]TEXTURE[/code] en el sombreador "
+"CanvasItem."
#: doc/classes/MeshInstance2D.xml:29 doc/classes/MultiMeshInstance2D.xml:29
msgid "Emitted when the [member texture] is changed."
-msgstr ""
+msgstr "Emitido cuando se cambia la [member texture]."
#: doc/classes/MeshInstance3D.xml:4
msgid "Node that instances meshes into a scenario."
-msgstr ""
+msgstr "Nodo que instancia mallas en un escenario."
#: doc/classes/MeshInstance3D.xml:7
msgid ""
@@ -31656,6 +39984,13 @@ msgid ""
"[Mesh] has to be instanced more than thousands of times at close proximity, "
"consider using a [MultiMesh] in a [MultiMeshInstance3D] instead."
msgstr ""
+"MeshInstance3D es un nodo que toma un recurso [Mesh] y lo añade al escenario "
+"actual creando una instancia del mismo. Esta es la clase más usada para "
+"representar la geometría 3D y puede ser usada para dar una instancia a una "
+"sola [Mesh] en muchos lugares. Esto permite la reutilización de la "
+"geometría, lo que puede ahorrar recursos. Cuando una [Mesh] tiene que ser "
+"instanciada más de miles de veces en una proximidad cercana, considere el "
+"uso de una [MultiMesh] en una [MultiMeshInstance3D] en su lugar."
#: doc/classes/MeshInstance3D.xml:16
msgid ""
@@ -31663,12 +39998,18 @@ msgid ""
"[ConvexPolygonShape3D] collision shape calculated from the mesh geometry. "
"It's mainly used for testing."
msgstr ""
+"Este ayudante crea un nodo hijo [StaticBody3D] con una forma de colisión "
+"[ConvexPolygonShape3D] calculada a partir de la geometría de la malla. Se "
+"usa principalmente para pruebas."
#: doc/classes/MeshInstance3D.xml:23
msgid ""
"This helper creates a [MeshInstance3D] child node with gizmos at every "
"vertex calculated from the mesh geometry. It's mainly used for testing."
msgstr ""
+"Este ayudante crea un nodo hijo [MeshInstance3D] con gizmos en cada vértice "
+"calculados a partir de la geometría de la malla. Se utiliza principalmente "
+"para las pruebas."
#: doc/classes/MeshInstance3D.xml:30
msgid ""
@@ -31676,6 +40017,9 @@ msgid ""
"[ConcavePolygonShape3D] collision shape calculated from the mesh geometry. "
"It's mainly used for testing."
msgstr ""
+"Este ayudante crea un nodo hijo [StaticBody3D] con una forma de colisión "
+"[ConcavePolygonShape3D] calculada a partir de la geometría de la malla. Se "
+"usa principalmente para pruebas."
#: doc/classes/MeshInstance3D.xml:39
msgid ""
@@ -31685,16 +40029,24 @@ msgid ""
"[Material] defined in the [Mesh]. For example, if [member GeometryInstance3D."
"material_override] is used, all surfaces will return the override material."
msgstr ""
+"Devuelve el [Material] que será utilizado por la [Malla] al dibujar. Puede "
+"devolver el [member GeometryInstance3D.material_override], la anulación de "
+"la superficie [Material] definida en esta [MeshInstance3D], o la superficie "
+"[Material] definida en la [Mesh]. Por ejemplo, si se utiliza "
+"[GeometryInstance3D.material_override], todas las superficies devolverán el "
+"material de anulación."
#: doc/classes/MeshInstance3D.xml:48
msgid ""
"Returns the override [Material] for the specified surface of the [Mesh] "
"resource."
msgstr ""
+"Devuelve el [Material] sobreescrito para la superficie especificada del "
+"recurso [Mesh]."
#: doc/classes/MeshInstance3D.xml:55
msgid "Returns the number of surface materials."
-msgstr ""
+msgstr "Devuelve el número de materiales de la superficie."
#: doc/classes/MeshInstance3D.xml:66
msgid ""
@@ -31702,22 +40054,25 @@ msgid ""
"resource. This material is associated with this [MeshInstance3D] rather than "
"with the [Mesh] resource."
msgstr ""
+"Establece la sobreescritura del [Material] para la superficie especificada "
+"del recurso [Mesh]. Este material está asociado con este [MeshInstance3D] en "
+"lugar de con el recurso [Mesh]."
#: doc/classes/MeshInstance3D.xml:72
msgid "The [Mesh] resource for the instance."
-msgstr ""
+msgstr "El recurso [Mesh] para la instancia."
#: doc/classes/MeshInstance3D.xml:75
msgid "[NodePath] to the [Skeleton3D] associated with the instance."
-msgstr ""
+msgstr "[NodePath] al [Skeleton3D] asociado con la instancia."
#: doc/classes/MeshInstance3D.xml:78
msgid "Sets the skin to be used by this instance."
-msgstr ""
+msgstr "Establece la piel que se utilizará en esta instancia."
#: doc/classes/MeshLibrary.xml:4
msgid "Library of meshes."
-msgstr ""
+msgstr "Biblioteca de mallas."
#: doc/classes/MeshLibrary.xml:7
msgid ""
@@ -31725,40 +40080,45 @@ msgid ""
"and ID. Each item can also include collision and navigation shapes. This "
"resource is used in [GridMap]."
msgstr ""
+"Una biblioteca de mallas. Contiene una lista de recursos de [Mesh], cada uno "
+"con un nombre y una identificación. Cada elemento también puede incluir "
+"formas de colisión y de navegación. Este recurso se utiliza en [GridMap]."
#: doc/classes/MeshLibrary.xml:16
msgid "Clears the library."
-msgstr ""
+msgstr "Limpia la biblioteca."
#: doc/classes/MeshLibrary.xml:25
msgid ""
"Creates a new item in the library with the given ID.\n"
"You can get an unused ID from [method get_last_unused_item_id]."
msgstr ""
+"Crea un nuevo artículo en la biblioteca con la identificación dada.\n"
+"Puedes obtener un ID sin usar con el [method get_last_unused_item_id]."
#: doc/classes/MeshLibrary.xml:35
msgid "Returns the first item with the given name."
-msgstr ""
+msgstr "Devuelve el primer objeto con el nombre dado."
#: doc/classes/MeshLibrary.xml:42
msgid "Returns the list of item IDs in use."
-msgstr ""
+msgstr "Devuelve la lista de ids de objetos en uso."
#: doc/classes/MeshLibrary.xml:51
msgid "Returns the item's mesh."
-msgstr ""
+msgstr "Devuelve la malla del objeto."
#: doc/classes/MeshLibrary.xml:60
msgid "Returns the item's name."
-msgstr ""
+msgstr "Devuelve el nombre del artículo."
#: doc/classes/MeshLibrary.xml:69
msgid "Returns the item's navigation mesh."
-msgstr ""
+msgstr "Devuelve la malla de navegación del objeto."
#: doc/classes/MeshLibrary.xml:78
msgid "Returns the transform applied to the item's navigation mesh."
-msgstr ""
+msgstr "Devuelve la transformada aplicada a la malla de navegación del objeto."
#: doc/classes/MeshLibrary.xml:87
msgid ""
@@ -31768,24 +40128,32 @@ msgid ""
"set_item_preview]. Returns an empty [Texture2D] if no preview was manually "
"set in a running project."
msgstr ""
+"Cuando se ejecuta en el editor, devuelve una vista previa del elemento "
+"generado (una representación 3D en perspectiva isométrica). Cuando se "
+"utiliza en un proyecto en ejecución, devuelve la vista previa del elemento "
+"definido manualmente que puede ser establecida usando [method "
+"set_item_preview]. Devuelve un [Texture2D] vacío si no se ha establecido "
+"manualmente una vista previa en un proyecto en ejecución."
#: doc/classes/MeshLibrary.xml:96
msgid ""
"Returns an item's collision shapes.\n"
"The array consists of each [Shape3D] followed by its [Transform]."
msgstr ""
+"Devuelve las formas de colisión de un objeto.\n"
+"El array consiste en cada [Shape3D] seguido de su [Transform]."
#: doc/classes/MeshLibrary.xml:104
msgid "Gets an unused ID for a new item."
-msgstr ""
+msgstr "Obtiene un id sin usar para un nuevo objeto."
#: doc/classes/MeshLibrary.xml:113
msgid "Removes the item."
-msgstr ""
+msgstr "Quita el objeto."
#: doc/classes/MeshLibrary.xml:124
msgid "Sets the item's mesh."
-msgstr ""
+msgstr "Establece la malla del objeto."
#: doc/classes/MeshLibrary.xml:135
msgid ""
@@ -31793,18 +40161,24 @@ msgid ""
"This name is shown in the editor. It can also be used to look up the item "
"later using [method find_item_by_name]."
msgstr ""
+"Establece el nombre del artículo.\n"
+"Este nombre se muestra en el editor. También puede ser usado para buscar el "
+"ítem más tarde usando [method find_item_by_name]."
#: doc/classes/MeshLibrary.xml:147
msgid "Sets the item's navigation mesh."
-msgstr ""
+msgstr "Establece la malla de navegación del objeto."
#: doc/classes/MeshLibrary.xml:158
msgid "Sets the transform to apply to the item's navigation mesh."
msgstr ""
+"Establece la transformada para aplicarla a la malla de navegación del objeto."
#: doc/classes/MeshLibrary.xml:169
msgid "Sets a texture to use as the item's preview icon in the editor."
msgstr ""
+"Establece una textura para usar como el icono de vista previa del objeto en "
+"el editor."
#: doc/classes/MeshLibrary.xml:180
msgid ""
@@ -31813,32 +40187,41 @@ msgid ""
"[Transform] that will be applied to it. For shapes that should not have a "
"transform, use [constant Transform.IDENTITY]."
msgstr ""
+"Establece las formas de colisión de un objeto.\n"
+"El array debe consistir en objetos [Shape3D], cada uno seguido de una "
+"[Transform] que se le aplicará. Para las formas que no deben tener una "
+"transformación, usa [constant Transform.IDENTITY]."
#: doc/classes/MeshTexture.xml:4
msgid "Simple texture that uses a mesh to draw itself."
-msgstr ""
+msgstr "Una simple textura que usa una malla para dibujarse a sí misma."
#: doc/classes/MeshTexture.xml:7
msgid ""
"Simple texture that uses a mesh to draw itself. It's limited because flags "
"can't be changed and region drawing is not supported."
msgstr ""
+"Una textura simple que usa una malla para dibujarse a sí misma. Es limitada "
+"porque las flags no pueden ser cambiadas y el dibujo de la región no esta "
+"soportado."
#: doc/classes/MeshTexture.xml:15
msgid "Sets the base texture that the Mesh will use to draw."
-msgstr ""
+msgstr "Establece la textura base que la malla usará para dibujar."
#: doc/classes/MeshTexture.xml:18
msgid "Sets the size of the image, needed for reference."
-msgstr ""
+msgstr "Establece el tamaño de la imagen, necesario para la referencia."
#: doc/classes/MeshTexture.xml:21
msgid "Sets the mesh used to draw. It must be a mesh using 2D vertices."
msgstr ""
+"Establece la malla utilizada para dibujar. Debe ser una malla que usa "
+"vértices 2D."
#: modules/mobile_vr/doc_classes/MobileVRInterface.xml:4
msgid "Generic mobile VR implementation."
-msgstr ""
+msgstr "Implementación de la RealidadVirtual(VR) móvil genérica."
#: modules/mobile_vr/doc_classes/MobileVRInterface.xml:7
msgid ""
@@ -31856,38 +40239,61 @@ msgid ""
" get_viewport().xr = true\n"
"[/codeblock]"
msgstr ""
+"Se trata de una implementación genérica de RealidadVirtual(VR) móvil en la "
+"que es necesario proporcionar detalles sobre el teléfono y el HMD utilizado. "
+"No se basa en ningún framework existente. Esta es la interfaz más básica que "
+"tenemos. Para obtener el mejor efecto, se necesita un teléfono móvil con un "
+"giroscopio y un acelerómetro.\n"
+"Tenga en cuenta que aunque no hay un seguimiento posicional, la cámara "
+"asumirá que el auricular está a una altura de 1,85 metros. Puedes cambiar "
+"esto ajustando [member eye_height].\n"
+"Puede inicializar esta interfaz de la siguiente manera:\n"
+"[codeblock]\n"
+"var interfaz = XRServer.find_interface(\"Native mobile\")\n"
+"if interfaz and interfaz.initialize():\n"
+" get_viewport().xr = true\n"
+"[/codeblock]"
#: modules/mobile_vr/doc_classes/MobileVRInterface.xml:22
msgid ""
"The distance between the display and the lenses inside of the device in "
"centimeters."
msgstr ""
+"La distancia entre la pantalla y las lentes dentro del dispositivo en "
+"centímetros."
#: modules/mobile_vr/doc_classes/MobileVRInterface.xml:25
msgid "The width of the display in centimeters."
-msgstr ""
+msgstr "El ancho de la pantalla en centímetros."
#: modules/mobile_vr/doc_classes/MobileVRInterface.xml:28
msgid ""
"The height at which the camera is placed in relation to the ground (i.e. "
"[XROrigin3D] node)."
msgstr ""
+"La altura a la que se coloca la cámara en relación con el suelo (es decir, "
+"el nodo [XROrigin3D])."
#: modules/mobile_vr/doc_classes/MobileVRInterface.xml:31
msgid ""
"The interocular distance, also known as the interpupillary distance. The "
"distance between the pupils of the left and right eye."
msgstr ""
+"La distancia interocular, también conocida como distancia interpupilar. La "
+"distancia entre las pupilas del ojo izquierdo y del derecho."
#: modules/mobile_vr/doc_classes/MobileVRInterface.xml:34
msgid ""
"The k1 lens factor is one of the two constants that define the strength of "
"the lens used and directly influences the lens distortion effect."
msgstr ""
+"El factor k1 de la lente es una de las dos constantes que definen la fuerza "
+"de la lente utilizada e influye directamente en el efecto de distorsión de "
+"la lente."
#: modules/mobile_vr/doc_classes/MobileVRInterface.xml:37
msgid "The k2 lens factor, see k1."
-msgstr ""
+msgstr "El factor de lente k2, ver k1."
#: modules/mobile_vr/doc_classes/MobileVRInterface.xml:40
msgid ""
@@ -31896,10 +40302,14 @@ msgid ""
"between 1.5 and 2.0 often provides good results but at the cost of "
"performance."
msgstr ""
+"El ajuste de sobremuestreo. Debido a la distorsión de la lente, tenemos que "
+"renderizar nuestros buffers a una resolución más alta de la que la pantalla "
+"puede manejar nativamente. Un valor entre 1,5 y 2,0 a menudo proporciona "
+"buenos resultados pero a costa del rendimiento."
#: doc/classes/MultiMesh.xml:4
msgid "Provides high-performance mesh instancing."
-msgstr ""
+msgstr "Proporciona un instanciamiento de malla de alto rendimiento."
#: doc/classes/MultiMesh.xml:7
msgid ""
@@ -31914,38 +40324,55 @@ msgid ""
"Since instances may have any behavior, the AABB used for visibility must be "
"provided by the user."
msgstr ""
+"MultiMesh proporciona una malla de bajo nivel de instanciación. Dibujar "
+"miles de nodos [MeshInstance3D] puede ser lento, ya que cada objeto se "
+"somete a la GPU y luego se dibuja individualmente.\n"
+"MultiMesh es mucho más rápido ya que puede dibujar miles de instancias con "
+"una sola llamada de dibujo, lo que resulta en una menor sobrecarga de la "
+"API.\n"
+"Como desventaja, si las instancias están demasiado lejos unas de otras, el "
+"rendimiento puede reducirse ya que cada instancia individual siempre se "
+"renderizará (se indexan espacialmente como una sola, para todo el objeto).\n"
+"Dado que las instancias pueden tener cualquier comportamiento, el AABB "
+"utilizado para la visibilidad debe ser proporcionado por el usuario."
#: doc/classes/MultiMesh.xml:13 doc/classes/MultiMeshInstance3D.xml:11
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/vertex_animation/"
"animating_thousands_of_fish.html"
msgstr ""
+"https://docs.godotengine.org/es/latest/tutorials/3d/vertex_animation/"
+"animating_thousands_of_fish.html"
#: doc/classes/MultiMesh.xml:14 doc/classes/MultiMeshInstance3D.xml:13
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/optimization/"
"using_multimesh.html"
msgstr ""
+"https://docs.godotengine.org/es/latest/tutorials/optimization/"
+"using_multimesh.html"
#: doc/classes/MultiMesh.xml:21
msgid "Returns the visibility axis-aligned bounding box."
-msgstr ""
+msgstr "Devuelve el cuadro delimitador del eje de visibilidad."
#: doc/classes/MultiMesh.xml:30
msgid "Gets a specific instance's color."
-msgstr ""
+msgstr "Obtiene el color de una instancia específica."
#: doc/classes/MultiMesh.xml:39
msgid "Returns the custom data that has been set for a specific instance."
msgstr ""
+"Devuelve los datos personalizados que se han establecido para una instancia "
+"específica."
#: doc/classes/MultiMesh.xml:48
msgid "Returns the [Transform] of a specific instance."
-msgstr ""
+msgstr "Devuelve la [Transform] de una instancia específica."
#: doc/classes/MultiMesh.xml:57
msgid "Returns the [Transform2D] of a specific instance."
-msgstr ""
+msgstr "Devuelve la [Transform2D] de una instancia específica."
#: doc/classes/MultiMesh.xml:68
msgid ""
@@ -31954,6 +40381,10 @@ msgid ""
"code] on the [MultiMesh] and [member BaseMaterial3D."
"vertex_color_use_as_albedo] is [code]true[/code] on the material."
msgstr ""
+"Establece el color de una instancia específica.\n"
+"Para que el color tenga efecto, asegúrate de que [member use_colors] es "
+"[code]true[/code] en el [MultiMesh] y [member BaseMaterial3D."
+"vertex_color_use_as_albedo] es [code]true[/code] en el material."
#: doc/classes/MultiMesh.xml:80
msgid ""
@@ -31962,14 +40393,18 @@ msgid ""
"For the custom data to be used, ensure that [member use_custom_data] is "
"[code]true[/code]."
msgstr ""
+"Establece datos personalizados para una instancia específica. Aunque se "
+"utiliza [Color], es sólo un contenedor para 4 números reales.\n"
+"Para que se utilicen los datos personalizados, asegúrese de que [member "
+"use_custom_data] es [code]true[/code]."
#: doc/classes/MultiMesh.xml:92
msgid "Sets the [Transform] for a specific instance."
-msgstr ""
+msgstr "Establece la [Transform] para una instancia específica."
#: doc/classes/MultiMesh.xml:103
msgid "Sets the [Transform2D] for a specific instance."
-msgstr ""
+msgstr "Establece el [Transform2D] para una instancia específica."
#: doc/classes/MultiMesh.xml:115
msgid ""
@@ -31977,44 +40412,54 @@ msgid ""
"buffers. By default, all instances are drawn but you can limit this with "
"[member visible_instance_count]."
msgstr ""
+"Número de instancias que se dibujarán. Esto limpia y (re)dimensiona los "
+"buffers. Por defecto, todas las instancias se dibujan pero puedes limitar "
+"esto con [member visible_instance_count]."
#: doc/classes/MultiMesh.xml:118
msgid "Mesh to be drawn."
-msgstr ""
+msgstr "Malla para ser dibujada."
#: doc/classes/MultiMesh.xml:125
msgid "Format of transform used to transform mesh, either 2D or 3D."
msgstr ""
+"Formato de transformación usado para transformar la malla, ya sea 2D o 3D."
#: doc/classes/MultiMesh.xml:128
msgid ""
"If [code]true[/code], the [MultiMesh] will use color data (see [member "
"color_array])."
msgstr ""
+"Si [code]true[/code], el [MultiMesh] utilizará datos de color (ver [member "
+"color_array])."
#: doc/classes/MultiMesh.xml:131
msgid ""
"If [code]true[/code], the [MultiMesh] will use custom data (see [member "
"custom_data_array])."
msgstr ""
+"Si [code]true[/code], el [MultiMesh] utilizará datos personalizados (véase "
+"[member custom_data_array])."
#: doc/classes/MultiMesh.xml:134
msgid ""
"Limits the number of instances drawn, -1 draws all instances. Changing this "
"does not change the sizes of the buffers."
msgstr ""
+"Limita el número de instancias dibujadas, -1 dibuja todas las instancias. "
+"Cambiar esto no cambia el tamaño de los buffers."
#: doc/classes/MultiMesh.xml:139
msgid "Use this when using 2D transforms."
-msgstr ""
+msgstr "Utiliza esto cuando uses las transformadas 2D."
#: doc/classes/MultiMesh.xml:142
msgid "Use this when using 3D transforms."
-msgstr ""
+msgstr "Utiliza esto cuando uses las transformadas 3D."
#: doc/classes/MultiMeshInstance2D.xml:4
msgid "Node that instances a [MultiMesh] in 2D."
-msgstr ""
+msgstr "Nodo que instancia un [MultiMesh] en 2D."
#: doc/classes/MultiMeshInstance2D.xml:7
msgid ""
@@ -32022,14 +40467,17 @@ msgid ""
"resource in 2D.\n"
"Usage is the same as [MultiMeshInstance3D]."
msgstr ""
+"[MultiMeshInstance2D] es un nodo especializado para la instancia de un "
+"recurso [MultiMesh] en 2D.\n"
+"El uso es el mismo que el de [MultiMeshInstance3D]."
#: doc/classes/MultiMeshInstance2D.xml:16
msgid "The [MultiMesh] that will be drawn by the [MultiMeshInstance2D]."
-msgstr ""
+msgstr "La [MultiMesh] que será dibujada por la [MultiMeshInstance2D]."
#: doc/classes/MultiMeshInstance3D.xml:4
msgid "Node that instances a [MultiMesh]."
-msgstr ""
+msgstr "Nodo que instancia un [MultiMesh]."
#: doc/classes/MultiMeshInstance3D.xml:7
msgid ""
@@ -32038,22 +40486,31 @@ msgid ""
"This is useful to optimize the rendering of a high amount of instances of a "
"given mesh (for example trees in a forest or grass strands)."
msgstr ""
+"[MultiMeshInstance3D] es un nodo especializado para instancias "
+"[GeometryInstance3D] basadas en un recurso [MultiMesh].\n"
+"Esto es útil para optimizar la representación de una gran cantidad de "
+"instancias de una malla determinada (por ejemplo, árboles en un bosque o "
+"hebras de hierba)."
#: doc/classes/MultiMeshInstance3D.xml:12
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/"
"using_multi_mesh_instance.html"
msgstr ""
+"https://docs.godotengine.org/es/latest/tutorials/3d/"
+"using_multi_mesh_instance.html"
#: doc/classes/MultiMeshInstance3D.xml:19
msgid ""
"The [MultiMesh] resource that will be used and shared among all instances of "
"the [MultiMeshInstance3D]."
msgstr ""
+"El recurso [MultiMesh] que se utilizará y compartirá entre todas las "
+"instancias de la [MultiMeshInstance3D]."
#: doc/classes/MultiplayerAPI.xml:4
msgid "High-level multiplayer API."
-msgstr ""
+msgstr "API multijugador de alto nivel."
#: doc/classes/MultiplayerAPI.xml:7
msgid ""
@@ -32065,39 +40522,59 @@ msgid ""
"Nodes by setting the [member Node.custom_multiplayer] property, effectively "
"allowing to run both client and server in the same scene."
msgstr ""
+"Esta clase implementa la mayor parte de la lógica detrás de la API "
+"multijugador de alto nivel.\n"
+"Por defecto, [SceneTree] tiene una referencia a esta clase que se utiliza "
+"para proporcionar capacidades multijugador (es decir, RPC/RSET) en toda la "
+"escena.\n"
+"Es posible anular la instancia de la API multijugador utilizada por nodos "
+"específicos estableciendo la propiedad [member Node.custom_multiplayer], lo "
+"que permite ejecutar de forma efectiva tanto el cliente como el servidor en "
+"la misma escena."
#: doc/classes/MultiplayerAPI.xml:18
msgid ""
"Clears the current MultiplayerAPI network state (you shouldn't call this "
"unless you know what you are doing)."
msgstr ""
+"Borra el estado actual de la red MultiplayerAPI (no deberías llamar a esto a "
+"menos que sepas lo que estás haciendo)."
#: doc/classes/MultiplayerAPI.xml:25
msgid ""
"Returns the peer IDs of all connected peers of this MultiplayerAPI's [member "
"network_peer]."
msgstr ""
+"Devuelve los ID de todos los pares conectados de esta MultiplayerAPI's "
+"[member network_peer]."
#: doc/classes/MultiplayerAPI.xml:32
msgid ""
"Returns the unique peer ID of this MultiplayerAPI's [member network_peer]."
msgstr ""
+"Devuelve el ID de par único de este MultiplayerAPI's [member network_peer]."
#: doc/classes/MultiplayerAPI.xml:39
msgid ""
"Returns the sender's peer ID for the RPC currently being executed.\n"
"[b]Note:[/b] If not inside an RPC this method will return 0."
msgstr ""
+"Devuelve la identificación del remitente para la RPC que se está ejecutando "
+"actualmente.\n"
+"[b]Nota:[/b] Si no está dentro de una RPC este método devolverá 0."
#: doc/classes/MultiplayerAPI.xml:47 doc/classes/SceneTree.xml:135
msgid "Returns [code]true[/code] if there is a [member network_peer] set."
msgstr ""
+"Devuelve [code]true[/code] si hay un conjunto de [member network_peer]."
#: doc/classes/MultiplayerAPI.xml:54
msgid ""
"Returns [code]true[/code] if this MultiplayerAPI's [member network_peer] is "
"in server mode (listening for connections)."
msgstr ""
+"Devuelve [code]true[/code] si esta MultiplayerAPI's [member network_peer] "
+"está en modo servidor (escuchando las conexiones)."
#: doc/classes/MultiplayerAPI.xml:61
msgid ""
@@ -32109,6 +40586,14 @@ msgid ""
"will be executed in the same context of this function (e.g. [code]_process[/"
"code], [code]physics[/code], [Thread])."
msgstr ""
+"Método utilizado para la votación del MultiplayerAPI. Sólo tienes que "
+"preocuparte por esto si utilizas la anulación de [member Node."
+"custom_multiplayer] o pones [member SceneTree.multiplayer_poll] en "
+"[code]false[/code]. De forma predeterminada, [SceneTree] sondeará su API "
+"multijugador por ti.\n"
+"[b]Nota:[/b] Este método hace que se llamen RPC y RSET, por lo que se "
+"ejecutarán en el mismo contexto de esta función (por ejemplo, "
+"[code]_process[/code], [code]physics[/code], [Thread])."
#: doc/classes/MultiplayerAPI.xml:75
msgid ""
@@ -32116,6 +40601,10 @@ msgid ""
"[code]id[/code] (see [method NetworkedMultiplayerPeer.set_target_peer]). "
"Default ID is [code]0[/code], i.e. broadcast to all peers."
msgstr ""
+"Envía los [code]bytes[/code] en bruto dados a un par específico identificado "
+"por [code]id[/code] (véase el [method NetworkedMultiplayerPeer."
+"set_target_peer]). El ID predeterminado es [code]0[/code], es decir, la "
+"difusión a todos los pares."
#: doc/classes/MultiplayerAPI.xml:84
msgid ""
@@ -32126,6 +40615,12 @@ msgid ""
"managed by different MultiplayerAPI, allowing for example to run both client "
"and server in the same scene."
msgstr ""
+"Establece el nodo base de la raíz para utilizarlo para las RPC. En lugar de "
+"una ruta absoluta, se usará una ruta relativa para encontrar el nodo sobre "
+"el que se debe ejecutar la RPC.\n"
+"Esto permite efectivamente tener diferentes ramas del árbol de la escena "
+"para ser gestionadas por diferentes MultiplayerAPI, permitiendo por ejemplo "
+"ejecutar tanto el cliente como el servidor en la misma escena."
#: doc/classes/MultiplayerAPI.xml:91
msgid ""
@@ -32135,6 +40630,12 @@ msgid ""
"Do not use this option if the serialized object comes from untrusted sources "
"to avoid potential security threats such as remote code execution."
msgstr ""
+"Si [code]true[/code], la MultiplayerAPI permitirá la codificación y "
+"decodificación del objeto durante los RPCs/RSETs.\n"
+"[b]Advertencia:[/b] Los objetos deserializados pueden contener código que se "
+"ejecuta. No utilice esta opción si el objeto serializado proviene de fuentes "
+"no fiables para evitar posibles amenazas a la seguridad, como la ejecución "
+"remota de código."
#: doc/classes/MultiplayerAPI.xml:95
msgid ""
@@ -32146,24 +40647,39 @@ msgid ""
"default. Handling of networking-related events (connection, disconnection, "
"new clients) is done by connecting to MultiplayerAPI's signals."
msgstr ""
+"El objeto paritario para manejar el sistema RPC (que permite efectivamente "
+"la conexión en red cuando se establece). Dependiendo del par en sí mismo, el "
+"MultiplayerAPI se convertirá en un servidor de red (compruébelo con [method "
+"is_network_server]) y establecerá el modo de red del nodo raíz como maestro, "
+"o se convertirá en un par normal con el nodo raíz establecido como "
+"marioneta. Todos los nodos hijos están configurados para heredar el modo de "
+"red por defecto. El manejo de los eventos relacionados con la red (conexión, "
+"desconexión, nuevos clientes) se hace conectando a las señales de "
+"MultiplayerAPI."
#: doc/classes/MultiplayerAPI.xml:98
msgid ""
"If [code]true[/code], the MultiplayerAPI's [member network_peer] refuses new "
"incoming connections."
msgstr ""
+"Si [code]true[/code], el MultiplayerAPI's [member network_peer] rechaza las "
+"nuevas conexiones entrantes."
#: doc/classes/MultiplayerAPI.xml:104
msgid ""
"Emitted when this MultiplayerAPI's [member network_peer] successfully "
"connected to a server. Only emitted on clients."
msgstr ""
+"Emitido cuando esta MultiplayerAPI's [member network_peer] se conectó con "
+"éxito a un servidor. Sólo se emite en los clientes."
#: doc/classes/MultiplayerAPI.xml:109
msgid ""
"Emitted when this MultiplayerAPI's [member network_peer] fails to establish "
"a connection to a server. Only emitted on clients."
msgstr ""
+"Emitido cuando esta MultiplayerAPI [member network_peer] falla al "
+"establecer una conexión con un servidor. Sólo se emite en los clientes."
#: doc/classes/MultiplayerAPI.xml:116
msgid ""
@@ -32172,6 +40688,10 @@ msgid ""
"clients connect to the same server. Upon connecting to a server, a client "
"also receives this signal for the server (with ID being 1)."
msgstr ""
+"Emitido cuando este MultiplayerAPI's [member de la red_peer] se conecta con "
+"un nuevo par. ID es el ID del nuevo par. Los clientes son notificados cuando "
+"otros clientes se conectan al mismo servidor. Al conectarse a un servidor, "
+"un cliente también recibe esta señal para el servidor (con el ID siendo 1)."
#: doc/classes/MultiplayerAPI.xml:123
msgid ""
@@ -32179,6 +40699,9 @@ msgid ""
"peer. Clients get notified when other clients disconnect from the same "
"server."
msgstr ""
+"Emitida cuando esta MultiplayerAPI [member network_peer] se desconecta de un "
+"par. Los clientes son notificados cuando otros clientes se desconectan del "
+"mismo servidor."
#: doc/classes/MultiplayerAPI.xml:132
msgid ""
@@ -32186,12 +40709,17 @@ msgid ""
"[code]packet[/code] with custom data (see [method send_bytes]). ID is the "
"peer ID of the peer that sent the packet."
msgstr ""
+"Se emite cuando esta MultiplayerAPI [member network_peer] recibe un "
+"[code]packet[/code] con datos personalizados (ver [method send_bytes]). ID "
+"es el ID del par que envió el paquete."
#: doc/classes/MultiplayerAPI.xml:137
msgid ""
"Emitted when this MultiplayerAPI's [member network_peer] disconnects from "
"server. Only emitted on clients."
msgstr ""
+"Emitida cuando esta MultiplayerAPI de [member network_peer] se desconecta "
+"del servidor. Sólo se emite en los clientes."
#: doc/classes/MultiplayerAPI.xml:143
msgid ""
@@ -32199,6 +40727,9 @@ msgid ""
"method or property for all RPC calls, making it unavailable. Default for all "
"methods."
msgstr ""
+"Se utiliza con [method Node.rpc_config] o [method Node.rset_config] para "
+"desactivar un método o propiedad para todas las llamadas RPC, por lo que no "
+"está disponible. Por defecto para todos los métodos."
#: doc/classes/MultiplayerAPI.xml:146
msgid ""
@@ -32208,6 +40739,11 @@ msgid ""
"changes are accepted from all remote peers, no matter if they are node's "
"master or puppets."
msgstr ""
+"Se utiliza con [method Node.rpc_config] o [method Node.rset_config] para "
+"establecer un método a ser llamado o una propiedad a ser cambiada sólo en el "
+"extremo remoto, no localmente. Análogo a la palabra clave [code]remote[/"
+"code]. Las llamadas y los cambios de propiedad se aceptan de todos los pares "
+"remotos, sin importar si son maestros o títeres del nodo."
#: doc/classes/MultiplayerAPI.xml:149
msgid ""
@@ -32217,6 +40753,11 @@ msgid ""
"calls or property changes from the node's network puppets, see [method Node."
"set_network_master]."
msgstr ""
+"Se utiliza con [method Node.rpc_config] o [method Node.rset_config] para "
+"establecer un método a ser llamado o una propiedad a ser cambiada sólo en el "
+"maestro de la red para este nodo. Análogo a la palabra clave [code]master[/"
+"code]. Sólo acepta llamadas o cambios de propiedades de los títeres de red "
+"del nodo, ver [method Node.set_network_master]."
#: doc/classes/MultiplayerAPI.xml:152
msgid ""
@@ -32226,28 +40767,42 @@ msgid ""
"property changes from the node's network master, see [method Node."
"set_network_master]."
msgstr ""
+"Se utiliza con [method Node.rpc_config] o [method Node.rset_config] para "
+"establecer un método a ser llamado o una propiedad a ser cambiada sólo en "
+"las marionetas para este nodo. Análogo a la palabra clave [code]puppet[/"
+"code]. Sólo acepta llamadas o cambios de propiedades del maestro de red del "
+"nodo, ver [method Node.set_network_master]."
#: doc/classes/MultiplayerAPI.xml:155
msgid ""
"Behave like [constant RPC_MODE_REMOTE] but also make the call or property "
"change locally. Analogous to the [code]remotesync[/code] keyword."
msgstr ""
+"Se comporta como [constant RPC_MODE_REMOTE] pero también hace que la llamada "
+"o la propiedad cambie localmente. Análogo a la palabra clave "
+"[code]remotesync[/code]."
#: doc/classes/MultiplayerAPI.xml:158
msgid ""
"Behave like [constant RPC_MODE_MASTER] but also make the call or property "
"change locally. Analogous to the [code]mastersync[/code] keyword."
msgstr ""
+"Se comporta como [constant RPC_MODE_MASTER] pero también hace que la llamada "
+"o la propiedad cambie localmente. Análogo a la palabra clave "
+"[code]mastersync[/code]."
#: doc/classes/MultiplayerAPI.xml:161
msgid ""
"Behave like [constant RPC_MODE_PUPPET] but also make the call or property "
"change locally. Analogous to the [code]puppetsync[/code] keyword."
msgstr ""
+"Se comporta como [constant RPC_MODE_PUPPET] pero también hace que la llamada "
+"o la propiedad cambie localmente. Análogo a la palabra clave "
+"[code]puppetsync[/code]."
#: doc/classes/Mutex.xml:4
msgid "A synchronization mutex (mutual exclusion)."
-msgstr ""
+msgstr "Un mutex de sincronización (exclusión mutua)."
#: doc/classes/Mutex.xml:7
msgid ""
@@ -32256,6 +40811,11 @@ msgid ""
"that only one thread can ever acquire the lock at a time. A mutex can be "
"used to protect a critical section; however, be careful to avoid deadlocks."
msgstr ""
+"Un mutex de sincronización (exclusión mutua). Se utiliza para sincronizar "
+"múltiples [Thread]s, y equivale a un [Semaphore] binario. Garantiza que sólo "
+"un hilo puede adquirir el bloqueo a la vez. Un mutex puede utilizarse para "
+"proteger una sección crítica; sin embargo, hay que tener cuidado de evitar "
+"los bloqueos."
#: doc/classes/Mutex.xml:10 doc/classes/Semaphore.xml:10
#: doc/classes/Thread.xml:10
@@ -32263,44 +40823,58 @@ msgid ""
"https://docs.godotengine.org/en/latest/tutorials/threads/"
"using_multiple_threads.html"
msgstr ""
+"https://docs.godotengine.org/es/latest/tutorials/threads/"
+"using_multiple_threads.html"
#: doc/classes/Mutex.xml:17
msgid "Locks this [Mutex], blocks until it is unlocked by the current owner."
msgstr ""
+"Bloquea este [Mutex], lo bloquea hasta que es desbloqueado por el actual "
+"propietario."
#: doc/classes/Mutex.xml:24
msgid ""
"Tries locking this [Mutex], but does not block. Returns [constant OK] on "
"success, [constant ERR_BUSY] otherwise."
msgstr ""
+"Trata de bloquear este [Mutex], pero no bloquea. Devuelve [constant OK] en "
+"el éxito, [constant ERR_BUSY] en caso contrario."
#: doc/classes/Mutex.xml:31
msgid "Unlocks this [Mutex], leaving it to other threads."
-msgstr ""
+msgstr "Desbloquea este [Mutex], dejándolo a otros hilos."
#: modules/gdnative/doc_classes/NativeScript.xml:14
msgid ""
"Returns the documentation string that was previously set with "
"[code]godot_nativescript_set_class_documentation[/code]."
msgstr ""
+"Devuelve la string de documentación que se estableció previamente con "
+"[code]godot_nativescript_set_class_documentation[/code]."
#: modules/gdnative/doc_classes/NativeScript.xml:23
msgid ""
"Returns the documentation string that was previously set with "
"[code]godot_nativescript_set_method_documentation[/code]."
msgstr ""
+"Devuelve la string de documentación que se estableció previamente con "
+"[code]godot_nativescript_set_method_documentation[/code]."
#: modules/gdnative/doc_classes/NativeScript.xml:32
msgid ""
"Returns the documentation string that was previously set with "
"[code]godot_nativescript_set_property_documentation[/code]."
msgstr ""
+"Devuelve la string de documentación que se estableció previamente con "
+"[code]godot_nativescript_set_property_documentation[/code]."
#: modules/gdnative/doc_classes/NativeScript.xml:41
msgid ""
"Returns the documentation string that was previously set with "
"[code]godot_nativescript_set_signal_documentation[/code]."
msgstr ""
+"Devuelve la string de documentación que se estableció previamente con "
+"[code]godot_nativescript_set_signal_documentation[/code]."
#: modules/gdnative/doc_classes/NativeScript.xml:48
msgid ""
@@ -32310,10 +40884,15 @@ msgid ""
"passed to the native constructor function. This will change with in a future "
"API extension."
msgstr ""
+"Construye un nuevo objeto del tipo base con un script de este tipo ya "
+"adjunto.\n"
+"[i]Nota [/i]: Cualquier argumento que se pase a esta función será ignorado y "
+"no se pasará a la función constructora nativa. Esto cambiará con una futura "
+"extensión de la API."
#: doc/classes/Navigation2D.xml:4
msgid "2D navigation and pathfinding node."
-msgstr ""
+msgstr "Navegación 2D y nodo de búsqueda de caminos."
#: doc/classes/Navigation2D.xml:7
msgid ""
@@ -32321,6 +40900,9 @@ msgid ""
"as a collection of [NavigationPolygon] resources. These are automatically "
"collected from child [NavigationRegion2D] nodes."
msgstr ""
+"Navigation2D proporciona navegación y busqueda de caminos dentro de un área "
+"2D, especificada como una colección de recursos de [NavigationPolygon]. "
+"Estos se recogen automáticamente de los nodos hijos de [NavigationRegion2D]."
#: doc/classes/Navigation2D.xml:18 doc/classes/Navigation3D.xml:18
#: doc/classes/NavigationServer2D.xml:175
@@ -32328,12 +40910,16 @@ msgid ""
"Returns the point closest to the provided [code]to_point[/code] on the "
"navigation mesh surface."
msgstr ""
+"Devuelve el punto más cercano al [code]to_point[/code] proporcionado en la "
+"superficie de la malla de navegación."
#: doc/classes/Navigation2D.xml:27 doc/classes/Navigation3D.xml:36
msgid ""
"Returns the owner region RID for the point returned by [method "
"get_closest_point]."
msgstr ""
+"Devuelve la región propietaria RID para el punto devuelto por [method "
+"get_closest_point]."
#: doc/classes/Navigation2D.xml:46
msgid ""
@@ -32341,10 +40927,14 @@ msgid ""
"space. If [code]optimize[/code] is [code]true[/code] (the default), the path "
"is smoothed by merging path segments where possible."
msgstr ""
+"Devuelve el camino entre dos puntos dados. Los puntos están en el espacio de "
+"coordenadas locales. Si [code]optimize[/code] es [code]true[/code] (el valor "
+"por defecto), el camino se suaviza fusionando los segmentos de camino cuando "
+"es posible."
#: doc/classes/Navigation3D.xml:4
msgid "Mesh-based navigation and pathfinding node."
-msgstr ""
+msgstr "Nodo de navegación y busqueda de caminos basado en una malla."
#: doc/classes/Navigation3D.xml:7
msgid ""
@@ -32354,16 +40944,24 @@ msgid ""
"also assists with aligning navigation agents with the meshes they are "
"navigating on."
msgstr ""
+"Proporciona navegación y búsqueda de caminos dentro de una colección de "
+"[NavigationMesh]es. Estos serán recogidos automáticamente de los nodos hijos "
+"de [NavigationRegion3D]. Además de la búsqueda básica, esta clase también "
+"ayuda a alinear los agentes de navegación con las mallas en las que están "
+"navegando."
#: doc/classes/Navigation3D.xml:27
msgid ""
"Returns the normal for the point returned by [method get_closest_point]."
msgstr ""
+"Devuelve la normalidad para el punto devuelto por [method get_closest_point]."
#: doc/classes/Navigation3D.xml:49 doc/classes/NavigationServer3D.xml:212
msgid ""
"Returns the closest point between the navigation surface and the segment."
msgstr ""
+"Devuelve el punto más cercano entre la superficie de navegación y el "
+"segmento."
#: doc/classes/Navigation3D.xml:68
msgid ""
@@ -32372,16 +40970,23 @@ msgid ""
"agent properties associated with each [NavigationMesh] (radius, height, "
"etc.) are considered in the path calculation, otherwise they are ignored."
msgstr ""
+"Devuelve el camino entre dos puntos dados. Los puntos están en el espacio de "
+"coordenadas locales. Si [code]optimize[/code] es [code]true[/code] (el valor "
+"por defecto), las propiedades del agente asociadas a cada [NavigationMesh] "
+"(radio, altura, etc.) se consideran en el cálculo del camino, de lo "
+"contrario se ignoran."
#: doc/classes/Navigation3D.xml:78
msgid ""
"Defines which direction is up. By default, this is [code](0, 1, 0)[/code], "
"which is the world's \"up\" direction."
msgstr ""
+"Define qué dirección es hacia arriba. Por defecto, esto es [code](0, 1, 0)[/"
+"code], que es la dirección \"arriba\" del mundo."
#: doc/classes/NavigationAgent2D.xml:4
msgid "2D Agent used in navigation for collision avoidance."
-msgstr ""
+msgstr "Agente 2D utilizado en la navegación para evitar colisiones."
#: doc/classes/NavigationAgent2D.xml:7
msgid ""
@@ -32391,6 +40996,12 @@ msgid ""
"can be done by having the agent as a child of a [Navigation2D] node, or "
"using [method set_navigation]. [NavigationAgent2D] is physics safe."
msgstr ""
+"Agente 2D que se utiliza en la navegación para llegar a un lugar mientras se "
+"evitan los obstáculos estáticos y dinámicos. Los obstáculos dinámicos se "
+"evitan usando la evitación de colisiones RVO. El agente necesita datos de "
+"navegación para funcionar correctamente. Esto puede hacerse teniendo el "
+"agente como hijo de un nodo [Navigation2D], o usando [method "
+"set_navigation]. [NavigationAgent2D] que es seguro para la física."
#: doc/classes/NavigationAgent2D.xml:16 doc/classes/NavigationAgent3D.xml:16
msgid ""
@@ -32398,28 +41009,37 @@ msgid ""
"position. The user must set the target location with [method "
"set_target_location] in order for this to be accurate."
msgstr ""
+"Devuelve la distancia al lugar del objetivo, usando la posición global del "
+"agente. El usuario debe establecer la ubicación del objetivo con [method "
+"set_target_location] para que esto sea preciso."
#: doc/classes/NavigationAgent2D.xml:23
msgid ""
"Returns the reachable final location in global coordinates. This can change "
"if the navigation path is altered in any way."
msgstr ""
+"Devuelve la ubicación final alcanzable en coordenadas globales. Esto puede "
+"cambiar si la ruta de navegación se altera de alguna manera."
#: doc/classes/NavigationAgent2D.xml:30 doc/classes/NavigationAgent3D.xml:30
msgid "Returns the path from start to finish in global coordinates."
-msgstr ""
+msgstr "Devuelve el camino de principio a fin en coordenadas globales."
#: doc/classes/NavigationAgent2D.xml:37
msgid ""
"Returns which index the agent is currently on in the navigation path's "
"[PackedVector2Array]."
msgstr ""
+"Devuelve el índice en el que se encuentra actualmente el agente en la ruta "
+"de navegación de [PackedVector2Array]."
#: doc/classes/NavigationAgent2D.xml:44
msgid ""
"Returns the [Navigation2D] node that the agent is using for its navigation "
"system."
msgstr ""
+"Devuelve el nodo [Navigation2D] que el agente está usando para su sistema de "
+"navegación."
#: doc/classes/NavigationAgent2D.xml:51
msgid ""
@@ -32427,20 +41047,29 @@ msgid ""
"that there are no static objects in the way. If the agent does not have a "
"navigation path, it will return the position of the agent's parent."
msgstr ""
+"Devuelve un [Vector2] en coordenadas globales, al que se puede desplazar, "
+"asegurándose de que no haya objetos estáticos en el camino. Si el agente no "
+"tiene una ruta de navegación, devolverá la posición del padre del agente."
#: doc/classes/NavigationAgent2D.xml:58
msgid "Returns the user defined [Vector2] after setting the target location."
msgstr ""
+"Devuelve el [Vector2] definido por el usuario después de establecer la "
+"ubicación del objetivo."
#: doc/classes/NavigationAgent2D.xml:65 doc/classes/NavigationAgent3D.xml:65
msgid "Returns true if the navigation path's final location has been reached."
msgstr ""
+"Vuelve a ser cierto si se ha alcanzado la ubicación final de la ruta de "
+"navegación."
#: doc/classes/NavigationAgent2D.xml:72 doc/classes/NavigationAgent3D.xml:72
msgid ""
"Returns true if the target location is reachable. The target location is set "
"using [method set_target_location]."
msgstr ""
+"Devuelve verdadero si la ubicación del objetivo es alcanzable. La ubicación "
+"de destino se establece mediante [method set_target_location]."
#: doc/classes/NavigationAgent2D.xml:79 doc/classes/NavigationAgent3D.xml:79
msgid ""
@@ -32449,18 +41078,27 @@ msgid ""
"the target location. It should always be possible to reach the final "
"location though. See [method get_final_location]."
msgstr ""
+"Vuelve verdadero si se alcanza la ubicación del objetivo. La ubicación de "
+"destino se establece mediante [method set_target_location]. Puede que no "
+"siempre sea posible alcanzar la ubicación de destino. Sin embargo, siempre "
+"debería ser posible llegar a la ubicación final. Ver [method "
+"get_final_location]."
#: doc/classes/NavigationAgent2D.xml:88
msgid ""
"Sets the [Navigation2D] node used by the agent. Useful when you don't want "
"to make the agent a child of a [Navigation2D] node."
msgstr ""
+"Establece el nodo [Navegación2D] utilizado por el agente. Es útil cuando no "
+"quieres hacer del agente un hijo de un nodo [Navigation2D]."
#: doc/classes/NavigationAgent2D.xml:97 doc/classes/NavigationAgent3D.xml:97
msgid ""
"Sets the user desired final location. This will clear the current navigation "
"path."
msgstr ""
+"Establece la ubicación final deseada por el usuario. Esto despejará la ruta "
+"de navegación actual."
#: doc/classes/NavigationAgent2D.xml:106 doc/classes/NavigationAgent3D.xml:106
msgid ""
@@ -32468,18 +41106,21 @@ msgid ""
"adjust the velocity to avoid collisions. Once the adjustment to the velocity "
"is complete, it will emit the [signal velocity_computed] signal."
msgstr ""
+"Envía el paso en velocidad al algoritmo de evitación de colisiones. Ajustará "
+"la velocidad para evitar las colisiones. Una vez completado el ajuste de la "
+"velocidad, emitirá la [signal velocity_computed]."
#: doc/classes/NavigationAgent2D.xml:112 doc/classes/NavigationAgent3D.xml:118
msgid "The maximum number of neighbors for the agent to consider."
-msgstr ""
+msgstr "El número máximo de vecinos a considerar por el agente."
#: doc/classes/NavigationAgent2D.xml:115 doc/classes/NavigationAgent3D.xml:121
msgid "The maximum speed that an agent can move."
-msgstr ""
+msgstr "La máxima velocidad que un agente puede alcanzar."
#: doc/classes/NavigationAgent2D.xml:118 doc/classes/NavigationAgent3D.xml:124
msgid "The distance to search for other agents."
-msgstr ""
+msgstr "La distancia para buscar otros agentes."
#: doc/classes/NavigationAgent2D.xml:121 doc/classes/NavigationAgent3D.xml:127
msgid ""
@@ -32487,10 +41128,14 @@ msgid ""
"final location. This can happen due to trying to avoid collisions. When the "
"maximum distance is exceeded, it recalculates the ideal path."
msgstr ""
+"La distancia máxima que se permite al agente para alejarse del camino ideal "
+"hasta la ubicación final. Esto puede suceder debido a que se intenta evitar "
+"las colisiones. Cuando se excede la distancia máxima, se recalcula el camino "
+"ideal."
#: doc/classes/NavigationAgent2D.xml:124 doc/classes/NavigationAgent3D.xml:130
msgid "The radius of the agent."
-msgstr ""
+msgstr "El radio del agente."
#: doc/classes/NavigationAgent2D.xml:127 doc/classes/NavigationAgent3D.xml:133
msgid ""
@@ -32498,6 +41143,9 @@ msgid ""
"will allow an agent to not have to hit a point on the path exactly, but in "
"the area."
msgstr ""
+"El umbral de distancia antes de que se considere que se ha alcanzado un "
+"objetivo. Esto permitirá que un agente no tenga que llegar a un punto en el "
+"camino exactamente, sino en el área."
#: doc/classes/NavigationAgent2D.xml:130 doc/classes/NavigationAgent3D.xml:136
msgid ""
@@ -32506,30 +41154,39 @@ msgid ""
"other agents. The larger the number, the sooner the agent will respond to "
"other agents, but less freedom in choosing its velocities. Must be positive."
msgstr ""
+"La cantidad mínima de tiempo durante el cual las velocidades de este agente, "
+"que se calculan con el algoritmo de evitación de colisiones, son seguras con "
+"respecto a otros agentes. Cuanto mayor sea el número, más pronto el agente "
+"responderá a otros agentes, pero menos libertad para elegir sus velocidades. "
+"Debe ser positivo."
#: doc/classes/NavigationAgent2D.xml:136 doc/classes/NavigationAgent3D.xml:142
msgid "Notifies when the final location is reached."
-msgstr ""
+msgstr "Notifica cuando se alcanza la ubicación final."
#: doc/classes/NavigationAgent2D.xml:141 doc/classes/NavigationAgent3D.xml:147
msgid "Notifies when the navigation path changes."
-msgstr ""
+msgstr "Notifica cuando la ruta de navegación cambia."
#: doc/classes/NavigationAgent2D.xml:146 doc/classes/NavigationAgent3D.xml:152
msgid ""
"Notifies when the player defined target, set with [method "
"set_target_location], is reached."
msgstr ""
+"Notifica cuando se alcanza el objetivo definido por el jugador, establecido "
+"con [method set_target_location]."
#: doc/classes/NavigationAgent2D.xml:153 doc/classes/NavigationAgent3D.xml:159
msgid ""
"Notifies when the collision avoidance velocity is calculated. Emitted by "
"[method set_velocity]."
msgstr ""
+"Notifica cuando se calcula la velocidad de prevención de colisiones. Emitido "
+"por [method set_velocity]."
#: doc/classes/NavigationAgent3D.xml:4
msgid "3D Agent used in navigation for collision avoidance."
-msgstr ""
+msgstr "Agente 3D utilizado en la navegación para evitar colisiones."
#: doc/classes/NavigationAgent3D.xml:7
msgid ""
@@ -32539,6 +41196,12 @@ msgid ""
"can be done by having the agent as a child of a [Navigation3D] node, or "
"using [method set_navigation]. [NavigationAgent3D] is physics safe."
msgstr ""
+"Agente 3D que se utiliza en la navegación para llegar a un lugar mientras se "
+"evitan los obstáculos estáticos y dinámicos. Los obstáculos dinámicos se "
+"evitan usando la evitación de colisiones RVO. El agente necesita los datos "
+"de navegación para funcionar correctamente. Esto puede hacerse teniendo el "
+"agente como hijo de un nodo [Navigation3D], o usando [method "
+"set_navigation]. [NavigationAgent3D] es seguro para la física."
#: doc/classes/NavigationAgent3D.xml:23
msgid ""
@@ -32546,18 +41209,25 @@ msgid ""
"if the navigation path is altered in any way. Because of this, it would be "
"best to check this each frame."
msgstr ""
+"Devuelve la ubicación final alcanzable en coordenadas globales. Esto puede "
+"cambiar si la ruta de navegación se altera de alguna manera. Debido a esto, "
+"sería mejor comprobar esto en cada fotograma."
#: doc/classes/NavigationAgent3D.xml:37
msgid ""
"Returns which index the agent is currently on in the navigation path's "
"[PackedVector3Array]."
msgstr ""
+"Devuelve el índice en el que se encuentra el agente en la ruta de navegación "
+"[PackedVector3Array]."
#: doc/classes/NavigationAgent3D.xml:44
msgid ""
"Returns the [Navigation3D] node that the agent is using for its navigation "
"system."
msgstr ""
+"Devuelve el nodo [Navegación3D] que el agente está usando para su sistema de "
+"navegación."
#: doc/classes/NavigationAgent3D.xml:51
msgid ""
@@ -32565,29 +41235,39 @@ msgid ""
"that there are no static objects in the way. If the agent does not have a "
"navigation path, it will return the origin of the agent's parent."
msgstr ""
+"Devuelve un [Vector3] en coordenadas globales, al que se puede desplazar, "
+"asegurándose de que no haya objetos estáticos en el camino. Si el agente no "
+"tiene una ruta de navegación, devolverá el origen del padre del agente."
#: doc/classes/NavigationAgent3D.xml:58
msgid "Returns the user defined [Vector3] after setting the target location."
msgstr ""
+"Devuelve el [Vector3] definido por el usuario después de establecer la "
+"ubicación del objetivo."
#: doc/classes/NavigationAgent3D.xml:88
msgid ""
"Sets the [Navigation3D] node used by the agent. Useful when you don't want "
"to make the agent a child of a [Navigation3D] node."
msgstr ""
+"Establece el nodo [Navigation3D] utilizado por el agente. Es útil cuando no "
+"quieres hacer del agente un hijo de un nodo [Navigation3D]."
#: doc/classes/NavigationAgent3D.xml:112
msgid "The agent height offset to match the navigation mesh height."
msgstr ""
+"La altura del agente se compensa con la altura de la malla de navegación."
#: doc/classes/NavigationAgent3D.xml:115
msgid ""
"Ignores collisions on the Y axis. Must be true to move on a horizontal plane."
msgstr ""
+"Ignora las colisiones en el eje Y. Debe ser cierto para moverse en un plano "
+"horizontal."
#: doc/classes/NavigationObstacle2D.xml:4
msgid "2D Obstacle used in navigation for collision avoidance."
-msgstr ""
+msgstr "Obstáculo 2D utilizado en la navegación para evitar colisiones."
#: doc/classes/NavigationObstacle2D.xml:7
msgid ""
@@ -32596,22 +41276,30 @@ msgid ""
"as a child of a [Navigation2D] node, or using [method set_navigation]. "
"[NavigationObstacle2D] is physics safe."
msgstr ""
+"Obstáculo 2D utilizado en la navegación para evitar colisiones. El obstáculo "
+"necesita datos de navegación para funcionar correctamente. Esto puede "
+"hacerse teniendo el obstáculo como hijo de un nodo [Navigation2D], o usando "
+"[method set_navigation]. [NavigationObstacle2D] es seguro para la física."
#: doc/classes/NavigationObstacle2D.xml:16
msgid ""
"Returns the [Navigation2D] node that the obstacle is using for its "
"navigation system."
msgstr ""
+"Devuelve el nodo [Navigation2D] que el obstáculo está usando para su sistema "
+"de navegación."
#: doc/classes/NavigationObstacle2D.xml:25
msgid ""
"Sets the [Navigation2D] node used by the obstacle. Useful when you don't "
"want to make the obstacle a child of a [Navigation2D] node."
msgstr ""
+"Establece el nodo [Navigation2D] utilizado por el obstáculo. Es útil cuando "
+"no quieres que el obstáculo sea hijo de un nodo [Navigation2D]."
#: doc/classes/NavigationObstacle3D.xml:4
msgid "3D Obstacle used in navigation for collision avoidance."
-msgstr ""
+msgstr "Obstáculo 3D utilizado en la navegación para evitar colisiones."
#: doc/classes/NavigationObstacle3D.xml:7
msgid ""
@@ -32620,24 +41308,34 @@ msgid ""
"as a child of a [Navigation3D] node, or using [method set_navigation]. "
"[NavigationObstacle3D] is physics safe."
msgstr ""
+"Obstáculo 3D utilizado en la navegación para evitar colisiones. El obstáculo "
+"necesita datos de navegación para funcionar correctamente. Esto puede "
+"hacerse teniendo el obstáculo como hijo de un nodo [Navigation3D], o usando "
+"[method set_navigation]. [NavigationObstacle3D] es seguro para la física."
#: doc/classes/NavigationObstacle3D.xml:16
msgid ""
"Returns the [Navigation3D] node that the obstacle is using for its "
"navigation system."
msgstr ""
+"Devuelve el nodo [Navegación3D] que el obstáculo está usando para su sistema "
+"de navegación."
#: doc/classes/NavigationObstacle3D.xml:25
msgid ""
"Sets the [Navigation3D] node used by the obstacle. Useful when you don't "
"want to make the obstacle a child of a [Navigation3D] node."
msgstr ""
+"Establece el nodo [Navegación3D] utilizado por el obstáculo. Es útil cuando "
+"no quieres que el obstáculo sea hijo de un nodo [Navigation3D]."
#: doc/classes/NavigationPolygon.xml:4
msgid ""
"A node that has methods to draw outlines or use indices of vertices to "
"create navigation polygons."
msgstr ""
+"Un nodo que tiene métodos para dibujar contornos o usar índices de vértices "
+"para crear polígonos de navegación."
#: doc/classes/NavigationPolygon.xml:7
msgid ""
@@ -32663,6 +41361,27 @@ msgid ""
"$NavigationRegion2D.navpoly = polygon\n"
"[/codeblock]"
msgstr ""
+"Hay dos formas de crear polígonos. O bien usando el método [method "
+"add_outline], o bien usando el método [method add_polygon].\n"
+"Usando el método [method add_outline]:\n"
+"[codeblock]\n"
+"var poligono = NavigationPolygon.new()\n"
+"var contorno = PackedVector2Array([Vector2(0, 0), Vector2(0, 50), "
+"Vector2(50, 50), Vector2(50, 0)])\n"
+"poligono.add_outline(contorno)\n"
+"poligono.make_polygons_from_outlines()\n"
+"$NavigationRegion2D.navpoly = poligono\n"
+"[/codeblock]\n"
+"Usando [method add_polygon] y los índices del array de vértices.\n"
+"[codeblock]\n"
+"var poligono = NavigationPolygon.new()\n"
+"var vertices = PackedVector2Array([Vector2(0, 0), Vector2(0, 50), "
+"Vector2(50, 50), Vector2(50, 0)])\n"
+"poligono.set_vertices(vertices)\n"
+"var indices = PackedInt32Array(0, 3, 1)\n"
+"polygon.add_polygon(indices)\n"
+"$NavigationRegion2D.navpoly = poligono\n"
+"[/codeblock]"
#: doc/classes/NavigationPolygon.xml:35
msgid ""
@@ -32671,6 +41390,10 @@ msgid ""
"make_polygons_from_outlines] in order for this array to be converted to "
"polygons that the engine will use."
msgstr ""
+"Añade un [PackedVector2Array] que contiene los vértices de un contorno al "
+"array interno que contiene todos los contornos. Tienes que llamar a [method "
+"make_polygons_from_outlines] para que este array se convierta en polígonos "
+"que el motor utilizará."
#: doc/classes/NavigationPolygon.xml:46
msgid ""
@@ -32679,77 +41402,103 @@ msgid ""
"to call [method make_polygons_from_outlines] in order for this array to be "
"converted to polygons that the engine will use."
msgstr ""
+"Añade un [PackedVector2Array] que contiene los vértices de un contorno al "
+"array interno que contiene todos los contornos en una posición fija. Tienes "
+"que llamar a [method make_polygons_from_outlines] para que este array se "
+"convierta en polígonos que el motor utilizará."
#: doc/classes/NavigationPolygon.xml:55
msgid ""
"Adds a polygon using the indices of the vertices you get when calling "
"[method get_vertices]."
msgstr ""
+"Añade un polígono usando los índices de los vértices que obtienes al llamar "
+"a [method get_vertices]."
#: doc/classes/NavigationPolygon.xml:62
msgid ""
"Clears the array of the outlines, but it doesn't clear the vertices and the "
"polygons that were created by them."
msgstr ""
+"Limpia el array de los contornos, pero no limpia los vértices y los "
+"polígonos que fueron creados por ellos."
#: doc/classes/NavigationPolygon.xml:69
msgid ""
"Clears the array of polygons, but it doesn't clear the array of outlines and "
"vertices."
msgstr ""
+"Limpia el array de polígonos, pero no limpia el array de contornos y "
+"vértices."
#: doc/classes/NavigationPolygon.xml:78
msgid ""
"Returns a [PackedVector2Array] containing the vertices of an outline that "
"was created in the editor or by script."
msgstr ""
+"Devuelve un [PackedVector2Array] que contiene los vértices de un contorno "
+"que fue creado en el editor o mediante un script."
#: doc/classes/NavigationPolygon.xml:85
msgid ""
"Returns the number of outlines that were created in the editor or by script."
msgstr ""
+"Devuelve el número de contornos que fueron creados en el editor o por el "
+"script."
#: doc/classes/NavigationPolygon.xml:94
msgid ""
"Returns a [PackedInt32Array] containing the indices of the vertices of a "
"created polygon."
msgstr ""
+"Devuelve un [PackedInt32Array] que contiene los índices de los vértices de "
+"un polígono creado."
#: doc/classes/NavigationPolygon.xml:101
msgid "Returns the count of all polygons."
-msgstr ""
+msgstr "Devuelve el recuento de todos los polígonos."
#: doc/classes/NavigationPolygon.xml:108
msgid ""
"Returns a [PackedVector2Array] containing all the vertices being used to "
"create the polygons."
msgstr ""
+"Devuelve un [PackedVector2Array] que contiene todos los vértices que se "
+"están usando para crear los polígonos."
#: doc/classes/NavigationPolygon.xml:115
msgid "Creates polygons from the outlines added in the editor or by script."
msgstr ""
+"Crea polígonos a partir de los contornos añadidos en el editor o por el "
+"script."
#: doc/classes/NavigationPolygon.xml:124
msgid ""
"Removes an outline created in the editor or by script. You have to call "
"[method make_polygons_from_outlines] for the polygons to update."
msgstr ""
+"Elimina un esquema creado en el editor o por el guión. Tienes que llamar a "
+"[method make_polygons_from_outlines] para que los polígonos se actualicen."
#: doc/classes/NavigationPolygon.xml:135
msgid ""
"Changes an outline created in the editor or by script. You have to call "
"[method make_polygons_from_outlines] for the polygons to update."
msgstr ""
+"Cambia un contorno creado en el editor o por el script. Tienes que llamar a "
+"[method make_polygons_from_outlines] para que los polígonos se actualicen."
#: doc/classes/NavigationPolygon.xml:144
msgid ""
"Sets the vertices that can be then indexed to create polygons with the "
"[method add_polygon] method."
msgstr ""
+"Establece los vértices que pueden ser indexados para crear polígonos con el "
+"método [method add_polygon]."
#: doc/classes/NavigationRegion3D.xml:4
msgid "A region of the navigation map."
-msgstr ""
+msgstr "Una región del mapa de navegación."
#: doc/classes/NavigationRegion3D.xml:7
msgid ""
@@ -32757,6 +41506,9 @@ msgid ""
"navigated and what cannot, based on the [NavigationMesh] resource. This "
"should be a child of a [Navigation3D] node (even not a direct child)."
msgstr ""
+"Una región del mapa de navegación. Le dice al nodo [Navegation3D] lo que "
+"puede ser navegado y lo que no, basado en el recurso [NavigationMesh]. Este "
+"debe ser un hijo de un nodo [Navigation3D] (aunque no sea un hijo directo)."
#: doc/classes/NavigationRegion3D.xml:16
msgid ""
@@ -32764,26 +41516,32 @@ msgid ""
"navigation baking is not a cheap operation. This can be done at runtime. "
"When it is completed, it automatically sets the new [NavigationMesh]."
msgstr ""
+"Cocina la [NavigationMesh]. El cocinado se hace en un hilo separado porque "
+"el cocinado de navegación no es una operación barata. Esto se puede hacer en "
+"tiempo de ejecución. Cuando se completa, automáticamente establece la nueva "
+"[NavigationMesh]."
#: doc/classes/NavigationRegion3D.xml:22
msgid "Determines if the [NavigationRegion3D] is enabled or disabled."
-msgstr ""
+msgstr "Determina si la [NavigationRegion3D] está activada o desactivada."
#: doc/classes/NavigationRegion3D.xml:25
msgid "The [NavigationMesh] resource to use."
-msgstr ""
+msgstr "El recurso [NavigationMesh] a utilizar."
#: doc/classes/NavigationRegion3D.xml:31
msgid "Notifies when the navigation mesh bake operation is completed."
msgstr ""
+"Notifica cuando la operación de cocinado de la malla de navegación se ha "
+"completado."
#: doc/classes/NavigationRegion3D.xml:36
msgid "Notifies when the [NavigationMesh] has changed."
-msgstr ""
+msgstr "Notifica cuando la [NavigationMesh] ha cambiado."
#: doc/classes/NavigationServer2D.xml:4
msgid "Server interface for low-level 2D navigation access"
-msgstr ""
+msgstr "Interfaz de servidor para el acceso a la navegación 2D de bajo nivel"
#: doc/classes/NavigationServer2D.xml:7
msgid ""
@@ -32793,22 +41551,27 @@ msgid ""
"means that you can request any change to the map, using any thread, without "
"worrying."
msgstr ""
+"NavigationServer2D es el servidor responsable de toda la navegación 2D. Crea "
+"los agentes, mapas y regiones para que la navegación funcione como se "
+"espera. Esto mantiene un registro de cualquier llamada y las ejecuta durante "
+"la fase de sincronización. Esto significa que puede solicitar cualquier "
+"cambio en el mapa, usando cualquier hilo, sin preocuparse."
#: doc/classes/NavigationServer2D.xml:16 doc/classes/NavigationServer3D.xml:16
msgid "Creates the agent."
-msgstr ""
+msgstr "Crea el agente."
#: doc/classes/NavigationServer2D.xml:25 doc/classes/NavigationServer3D.xml:25
msgid "Returns true if the map got changed the previous frame."
-msgstr ""
+msgstr "Devuelve verdadero si el mapa fue cambiado en el fotograma anterior."
#: doc/classes/NavigationServer2D.xml:40 doc/classes/NavigationServer3D.xml:40
msgid "Callback called at the end of the RVO process."
-msgstr ""
+msgstr "La llamada de hecha al final del proceso de RVO."
#: doc/classes/NavigationServer2D.xml:51 doc/classes/NavigationServer3D.xml:51
msgid "Puts the agent in the map."
-msgstr ""
+msgstr "Pone al agente en el mapa."
#: doc/classes/NavigationServer2D.xml:62 doc/classes/NavigationServer3D.xml:62
msgid ""
@@ -32816,10 +41579,14 @@ msgid ""
"navigation. The larger this number, the longer the running time of the "
"simulation. If the number is too low, the simulation will not be safe."
msgstr ""
+"Establece el número máximo de otros agentes que el agente tiene en cuenta en "
+"la navegación. Cuanto mayor sea este número, mayor será el tiempo de "
+"ejecución de la simulación. Si el número es demasiado bajo, la simulación no "
+"será segura."
#: doc/classes/NavigationServer2D.xml:73 doc/classes/NavigationServer3D.xml:73
msgid "Sets the maximum speed of the agent. Must be positive."
-msgstr ""
+msgstr "Establece la velocidad máxima del agente. Debe ser positivo."
#: doc/classes/NavigationServer2D.xml:84 doc/classes/NavigationServer3D.xml:84
msgid ""
@@ -32827,20 +41594,24 @@ msgid ""
"the navigation. The larger this number, the longer the running time of the "
"simulation. If the number is too low, the simulation will not be safe."
msgstr ""
+"Establece la distancia máxima a otros agentes que este agente tiene en "
+"cuenta en la navegación. Cuanto mayor sea este número, mayor será el tiempo "
+"de ejecución de la simulación. Si el número es demasiado bajo, la simulación "
+"no será segura."
#: doc/classes/NavigationServer2D.xml:95 doc/classes/NavigationServer3D.xml:95
msgid "Sets the position of the agent in world space."
-msgstr ""
+msgstr "Establece la posición del agente en el espacio del mundo."
#: doc/classes/NavigationServer2D.xml:106
#: doc/classes/NavigationServer3D.xml:106
msgid "Sets the radius of the agent."
-msgstr ""
+msgstr "Establece el radio del agente."
#: doc/classes/NavigationServer2D.xml:117
#: doc/classes/NavigationServer3D.xml:117
msgid "Sets the new target velocity."
-msgstr ""
+msgstr "Establece la nueva velocidad del objetivo."
#: doc/classes/NavigationServer2D.xml:128
#: doc/classes/NavigationServer3D.xml:128
@@ -32851,26 +41622,31 @@ msgid ""
"agents, but the less freedom this agent has in choosing its velocities. Must "
"be positive."
msgstr ""
+"La cantidad mínima de tiempo durante el cual las velocidades del agente que "
+"se calculan mediante la simulación son seguras con respecto a otros agentes. "
+"Cuanto mayor sea este número, antes responderá este agente a la presencia de "
+"otros agentes, pero menos libertad tiene este agente para elegir sus "
+"velocidades. Debe ser positivo."
#: doc/classes/NavigationServer2D.xml:139
#: doc/classes/NavigationServer3D.xml:139
msgid "Sets the current velocity of the agent."
-msgstr ""
+msgstr "Establece la velocidad actual del agente."
#: doc/classes/NavigationServer2D.xml:148
#: doc/classes/NavigationServer3D.xml:148
msgid "Destroy the RID"
-msgstr ""
+msgstr "Destruye el RID"
#: doc/classes/NavigationServer2D.xml:155
#: doc/classes/NavigationServer3D.xml:155
msgid "Create a new map."
-msgstr ""
+msgstr "Crear un nuevo mapa."
#: doc/classes/NavigationServer2D.xml:164
#: doc/classes/NavigationServer3D.xml:164
msgid "Returns the map cell size."
-msgstr ""
+msgstr "Devuelve el tamaño de la celda del mapa."
#: doc/classes/NavigationServer2D.xml:186
#: doc/classes/NavigationServer3D.xml:197
@@ -32878,62 +41654,72 @@ msgid ""
"Returns the owner region RID for the point returned by [method "
"map_get_closest_point]."
msgstr ""
+"Devuelve la región propietaria RID para el punto devuelto por [method "
+"map_get_closest_point]."
#: doc/classes/NavigationServer2D.xml:195
msgid ""
"Returns the edge connection margin of the map. The edge connection margin is "
"a distance used to connect two regions."
msgstr ""
+"Devuelve el margen de conexión del borde del mapa. El margen de conexión del "
+"borde es una distancia usada para conectar dos regiones."
#: doc/classes/NavigationServer2D.xml:210
msgid ""
"Returns the navigation path to reach the destination from the origin, while "
"avoiding static obstacles."
msgstr ""
+"Devuelve la ruta de navegación para llegar al destino desde el origen, "
+"evitando los obstáculos estáticos."
#: doc/classes/NavigationServer2D.xml:219
#: doc/classes/NavigationServer3D.xml:254
msgid "Returns true if the map is active."
-msgstr ""
+msgstr "Devuelve verdadero si el mapa está activo."
#: doc/classes/NavigationServer2D.xml:230
#: doc/classes/NavigationServer3D.xml:265
msgid "Sets the map active."
-msgstr ""
+msgstr "Establece el mapa a activo."
#: doc/classes/NavigationServer2D.xml:241
#: doc/classes/NavigationServer3D.xml:276
msgid "Set the map cell size used to weld the navigation mesh polygons."
msgstr ""
+"Establece el tamaño de la celda del mapa usada para soldar los polígonos de "
+"la malla de navegación."
#: doc/classes/NavigationServer2D.xml:252
msgid ""
"Set the map edge connection margin used to weld the compatible region edges."
msgstr ""
+"Establece el margen de conexión del borde del mapa usado para soldar los "
+"bordes de la región compatible."
#: doc/classes/NavigationServer2D.xml:259
#: doc/classes/NavigationServer3D.xml:327
msgid "Creates a new region."
-msgstr ""
+msgstr "Crea una nueva región."
#: doc/classes/NavigationServer2D.xml:270
#: doc/classes/NavigationServer3D.xml:338
msgid "Sets the map for the region."
-msgstr ""
+msgstr "Establece el mapa de la región."
#: doc/classes/NavigationServer2D.xml:281
#: doc/classes/NavigationServer3D.xml:349
msgid "Sets the navigation mesh for the region."
-msgstr ""
+msgstr "Establece la malla de navegación para la región."
#: doc/classes/NavigationServer2D.xml:292
#: doc/classes/NavigationServer3D.xml:360
msgid "Sets the global transformation for the region."
-msgstr ""
+msgstr "Establece la transformación global de la región."
#: doc/classes/NavigationServer3D.xml:4
msgid "Server interface for low-level 3D navigation access"
-msgstr ""
+msgstr "Interfaz de servidor para el acceso a la navegación 3D de bajo nivel"
#: doc/classes/NavigationServer3D.xml:7
msgid ""
@@ -32943,38 +41729,48 @@ msgid ""
"means that you can request any change to the map, using any thread, without "
"worrying."
msgstr ""
+"NavigationServer3D es el servidor responsable de toda la navegación 3D. Crea "
+"los agentes, mapas y regiones para que la navegación funcione como se "
+"espera. Esto mantiene un registro de cualquier llamada y las ejecuta durante "
+"la fase de sincronización. Esto significa que puede solicitar cualquier "
+"cambio en el mapa, usando cualquier hilo, sin preocuparse."
#: doc/classes/NavigationServer3D.xml:175
msgid ""
"Returns the point closest to the provided [code]point[/code] on the "
"navigation mesh surface."
msgstr ""
+"Devuelve el punto más cercano al [code]point[/code] provisto en la "
+"superficie de la malla de navegación."
#: doc/classes/NavigationServer3D.xml:186
msgid ""
"Returns the normal for the point returned by [method map_get_closest_point]."
msgstr ""
+"Devuelve la normal para el punto devuelto por [method map_get_closest_point]."
#: doc/classes/NavigationServer3D.xml:221
msgid "Returns the edge connection margin of the map."
-msgstr ""
+msgstr "Devuelve el margen de conexión del borde del mapa."
#: doc/classes/NavigationServer3D.xml:236
msgid "Returns the navigation path to reach the destination from the origin."
-msgstr ""
+msgstr "Devuelve la ruta de navegación para llegar al destino desde el origen."
#: doc/classes/NavigationServer3D.xml:245
msgid "Returns the map's up direction."
-msgstr ""
+msgstr "Devuelve la dirección del mapa hacia arriba."
#: doc/classes/NavigationServer3D.xml:287
msgid ""
"Set the map edge connection margein used to weld the compatible region edges."
msgstr ""
+"Establece el margen de la conexión del borde del mapa que se uso para soldar "
+"los bordes de la región compatible."
#: doc/classes/NavigationServer3D.xml:298
msgid "Sets the map up direction."
-msgstr ""
+msgstr "Establece la dirección del mapa."
#: doc/classes/NavigationServer3D.xml:307
msgid ""
@@ -32983,20 +41779,26 @@ msgid ""
"called in the main thread.\n"
"Note: This function is not thread safe."
msgstr ""
+"Procesa los agentes de evitación de colisiones.\n"
+"El resultado de este proceso es necesario para el servidor de física, por lo "
+"que debe ser llamado en el hilo principal.\n"
+"Nota: Esta función no es segura para el hilo."
#: doc/classes/NavigationServer3D.xml:320
msgid "Bakes the navigation mesh."
-msgstr ""
+msgstr "Cocina la malla de navegación."
#: doc/classes/NavigationServer3D.xml:369
msgid "Control activation of this server."
-msgstr ""
+msgstr "Controla la activación de este servidor."
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:4
msgid ""
"PacketPeer implementation using the [url=http://enet.bespin.org/index."
"html]ENet[/url] library."
msgstr ""
+"Implementación de PacketPeer usando la biblioteca [url=http://enet.bespin."
+"org/index.html]ENet[/url]."
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:7
msgid ""
@@ -33004,6 +41806,9 @@ msgid ""
"network_peer] after being initialized as either a client or server. Events "
"can then be handled by connecting to [SceneTree] signals."
msgstr ""
+"Una implementación de PacketPeer que debe ser pasada a [member SceneTree."
+"network_peer] después de ser inicializada como cliente o servidor. Los "
+"eventos se pueden manejar entonces conectándose a las señales de [SceneTree]."
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:10
#: doc/classes/NetworkedMultiplayerPeer.xml:10
@@ -33011,10 +41816,12 @@ msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/"
"high_level_multiplayer.html"
msgstr ""
+"https://docs.godotengine.org/es/latest/tutorials/networking/"
+"high_level_multiplayer.html"
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:11
msgid "http://enet.bespin.org/usergroup0.html"
-msgstr ""
+msgstr "http://enet.bespin.org/usergroup0.html"
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:20
msgid ""
@@ -33023,6 +41830,10 @@ msgid ""
"disconnecting them. If this is a client it simply closes the connection to "
"the server."
msgstr ""
+"Cierra la conexión. Ignorado si no se establece ninguna conexión "
+"actualmente. Si se trata de un servidor, intenta notificar a todos los "
+"clientes antes de desconectarlos por la fuerza. Si se trata de un cliente, "
+"simplemente cierra la conexión con el servidor."
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:37
msgid ""
@@ -33045,6 +41856,26 @@ msgid ""
"code] is specified, the client will also listen to the given port; this is "
"useful for some NAT traversal techniques."
msgstr ""
+"Crear el cliente que se conecta a un servidor en la [code]address[/code] "
+"usando el [code]port[/code] especificado. La dirección especificada debe ser "
+"un nombre de dominio completamente cualificado (por ejemplo, [code]\"www."
+"example.com\"[/code]) o una dirección IP en formato IPv4 o IPv6 (por "
+"ejemplo, [code]\"192.168.1.1\"[/code]). El [code]port[/code] es el puerto en "
+"el que el servidor está escuchando. Los parámetros [code]in_bandwith[/code] "
+"y [code]out_bandwidth[/code] pueden utilizarse para limitar el ancho de "
+"banda de entrada y de salida al número dado de bytes por segundo. El valor "
+"predeterminado de 0 significa ancho de banda ilimitado. Tenga en cuenta que "
+"el ENet dejará caer estratégicamente paquetes en lados específicos de una "
+"conexión entre pares para asegurarse de que el ancho de banda del par no se "
+"vea sobrepasado. Los parámetros de ancho de banda también determinan el "
+"tamaño de la ventana de una conexión que limita la cantidad de paquetes "
+"confiables que pueden estar en tránsito en un momento dado. Devuelve "
+"[constant OK] si se creó un cliente, [constant ERR_ALREADY_IN_USE] si esta "
+"instancia NetworkedMultiplayerENet ya tiene una conexión abierta (en cuyo "
+"caso necesita llamar primero a [method close_connection]) o [constant "
+"ERR_CANT_CREATE] si no se pudo crear el cliente. Si se especifica "
+"[code]client_port[/code], el cliente también escuchará el puerto dado; esto "
+"es útil para algunas técnicas de travesía de NAT."
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:52
msgid ""
@@ -33063,34 +41894,56 @@ msgid ""
"case you need to call [method close_connection] first) or [constant "
"ERR_CANT_CREATE] if the server could not be created."
msgstr ""
+"Crear un servidor que escuche las conexiones a través de [code]port[/code]. "
+"El puerto debe ser un puerto disponible y no utilizado entre 0 y 65535. "
+"Tenga en cuenta que los puertos por debajo de 1024 son privilegiados y "
+"pueden requerir permisos elevados dependiendo de la plataforma. Para cambiar "
+"la interfaz en la que escucha el servidor, utilice [method set_bind_ip]. La "
+"IP por defecto es el comodín [code]\"*\"[/code], que escucha en todas las "
+"interfaces disponibles. [code]max_clients[/code] es el número máximo de "
+"clientes que se permiten a la vez, se puede utilizar cualquier número hasta "
+"4095, aunque el número alcanzable de clientes simultáneos puede ser muy "
+"inferior y depende de la aplicación. Para más detalles sobre los parámetros "
+"de ancho de banda, véase [method create_client]. Devuelve [constant OK] si "
+"se ha creado un servidor, [constant ERR_ALREADY_IN_USE] si esta instancia "
+"NetworkedMultiplayerENet ya tiene una conexión abierta (en cuyo caso hay que "
+"llamar primero a [method close_connection]) o [constant ERR_CANT_CREATE] si "
+"no se ha podido crear el servidor."
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:63
msgid ""
"Disconnect the given peer. If \"now\" is set to [code]true[/code], the "
"connection will be closed immediately without flushing queued messages."
msgstr ""
+"Desconecta el par dado. Si \"ahora\" está configurado como [code]true[/"
+"code], la conexión se cerrará inmediatamente sin eliminar los mensajes de la "
+"cola."
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:70
msgid ""
"Returns the channel of the last packet fetched via [method PacketPeer."
"get_packet]."
msgstr ""
+"Devuelve el canal del último paquete obtenido a través del [method "
+"PacketPeer.get_packet]."
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:77
msgid ""
"Returns the channel of the next packet that will be retrieved via [method "
"PacketPeer.get_packet]."
msgstr ""
+"Devuelve el canal del siguiente paquete que será recuperado a través del "
+"[method PacketPeer.get_packet]."
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:86
#: modules/websocket/doc_classes/WebSocketServer.xml:33
msgid "Returns the IP address of the given peer."
-msgstr ""
+msgstr "Devuelve la dirección IP del par dado."
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:95
#: modules/websocket/doc_classes/WebSocketServer.xml:42
msgid "Returns the remote port of the given peer."
-msgstr ""
+msgstr "Devuelve el puerto remoto del par dado."
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:104
msgid ""
@@ -33099,6 +41952,10 @@ msgid ""
"needs to be in IPv4 or IPv6 address format, for example: "
"[code]\"192.168.1.1\"[/code]."
msgstr ""
+"La IP usada cuando se crea un servidor. Está configurada por defecto con el "
+"comodín [code]\"*\"[/code], que se une a todas las interfaces disponibles. "
+"La IP dada debe estar en formato de dirección IPv4 o IPv6, por ejemplo: "
+"[code]\"192.168.1.1\"[/code]."
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:113
msgid ""
@@ -33106,6 +41963,12 @@ msgid ""
"code]. For servers, you must also setup the [CryptoKey] via [method "
"set_dtls_key]."
msgstr ""
+"Configure el [X509Certificate] para usarlo cuando [member use_dtls] sea "
+"[code]true[/code Configure el [X509Certificate] para usarlo cuando [member "
+"use_dtls] sea [code]true[/code]. Para los servidores, también debe "
+"configurar la [CryptoKey] mediante el [method set_dtls_key].]. Para los "
+"servidores, también debe configurar la [CryptoKey] a través de [method "
+"set_dtls_key]."
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:122
msgid ""
@@ -33113,6 +41976,9 @@ msgid ""
"code]. Remember to also call [method set_dtls_certificate] to setup your "
"[X509Certificate]."
msgstr ""
+"Configure el [X509Certificate] para usarlo cuando [member use_dtls] sea "
+"[code]true[/code]. Para los servidores, también debe configurar la "
+"[CryptoKey] mediante el [method set_dtls_key]."
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:128
msgid ""
@@ -33121,13 +41987,25 @@ msgid ""
"NetworkedMultiplayerPeer.TRANSFER_MODE_UNRELIABLE_ORDERED]). This is the "
"only way to use ordering with the RPC system."
msgstr ""
+"Fuerza el orden de los paquetes cuando se utiliza [constant "
+"NetworkedMultiplayerPeer.TRANSFER_MODE_UNRELIABLE] (por lo que se comporta "
+"de manera similar a [constant NetworkedMultiplayerPeer."
+"TRANSFER_MODE_UNRELIABLE_ORDERED]). Esta es la única manera de usar el "
+"sistema de pedidos con el sistema RPC."
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:131
+#, fuzzy
msgid ""
"The number of channels to be used by ENet. Channels are used to separate "
"different kinds of data. In reliable or ordered mode, for example, the "
-"packet delivery order is ensured on a per channel basis."
+"packet delivery order is ensured on a per-channel basis. This is done to "
+"combat latency and reduces ordering restrictions on packets. The delivery "
+"status of a packet in one channel won't stall the delivery of other packets "
+"in another channel."
msgstr ""
+"El número de canales que será usado por ENet. Los canales se usan para "
+"separar diferentes tipos de datos. En el modo fiable u ordenado, por "
+"ejemplo, la orden de entrega de paquetes se asegura por cada canal."
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:134
msgid ""
@@ -33135,12 +42013,18 @@ msgid ""
"tradeoffs of compression speed versus bandwidth, you may need to test which "
"one works best for your use case if you use compression at all."
msgstr ""
+"El método de compresión utilizado para los paquetes de red. Estos tienen "
+"diferentes compensaciones de velocidad de compresión versus ancho de banda, "
+"puede que necesite probar cuál funciona mejor para su caso de uso, si es que "
+"utiliza la compresión en absoluto."
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:137
msgid ""
"Enable or disable certificate verification when [member use_dtls] "
"[code]true[/code]."
msgstr ""
+"Habilitar o deshabilitar la verificación del certificado cuando [member "
+"use_dtls] [code]true[/code]."
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:141
msgid ""
@@ -33149,16 +42033,30 @@ msgid ""
"is [code]false[/code], clients won't be automatically notified of other "
"peers and won't be able to send them packets through the server."
msgstr ""
+"Habilitar o deshabilitar la función del servidor que notifica a los clientes "
+"de la conexión/desconexión de otros compañeros, y retransmitir mensajes "
+"entre ellos. Cuando esta opción es [code]false[/code], los clientes no serán "
+"notificados automáticamente de la conexión/desconexión de otros compañeros y "
+"no podrán enviarles paquetes a través del servidor."
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:144
+#, fuzzy
msgid ""
"Set the default channel to be used to transfer data. By default, this value "
-"is [code]-1[/code] which means that ENet will only use 2 channels, one for "
-"reliable and one for unreliable packets. Channel [code]0[/code] is reserved, "
-"and cannot be used. Setting this member to any value between [code]0[/code] "
-"and [member channel_count] (excluded) will force ENet to use that channel "
-"for sending data."
-msgstr ""
+"is [code]-1[/code] which means that ENet will only use 2 channels: one for "
+"reliable packets, and one for unreliable packets. The channel [code]0[/code] "
+"is reserved and cannot be used. Setting this member to any value between "
+"[code]0[/code] and [member channel_count] (excluded) will force ENet to use "
+"that channel for sending data. See [member channel_count] for more "
+"information about ENet channels."
+msgstr ""
+"Establezca el canal predeterminado que se utilizará para la transferencia de "
+"datos. Por defecto, este valor es [code]-1[/code], lo que significa que ENet "
+"sólo utilizará 2 canales, uno para los paquetes fiables y otro para los no "
+"fiables. El canal [code]0[/code] está reservado y no puede ser utilizado. "
+"Ajustar este miembro a cualquier valor entre [code]0[/code] y [member "
+"channel_count] (excluido) obligará a ENet a utilizar ese canal para enviar "
+"datos."
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:148
msgid ""
@@ -33171,16 +42069,27 @@ msgid ""
"clients, have a look at the [member dtls_verify] option, and configure the "
"certificate accordingly via [method set_dtls_certificate]."
msgstr ""
+"Cuando esta habilitado, el cliente o servidor creado por este par, usará "
+"[PacketPeerDTLS] en lugar de los sockets UDP en bruto para comunicarse con "
+"el par remoto. Esto hará que la comunicación se cifre con DTLS a costa de un "
+"mayor uso de recursos y un tamaño de paquete potencialmente mayor.\n"
+"Nota: Al crear un servidor DTLS, asegúrese de configurar el par clave/"
+"certificado mediante [method set_dtls_key] y [method set_dtls_certificate]. "
+"Para los clientes DTLS, eche un vistazo a la opción [member dtls_verify], y "
+"configure el certificado en consecuencia a través de [method "
+"set_dtls_certificate]."
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:154
msgid ""
"No compression. This uses the most bandwidth, but has the upside of "
"requiring the fewest CPU resources."
msgstr ""
+"No hay compresión. Esto utiliza la mayor cantidad de ancho de banda, pero "
+"tiene la ventaja de que requiere menos recursos de CPU."
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:157
msgid "ENet's built-in range encoding."
-msgstr ""
+msgstr "La codificación de rango incorporada de ENet."
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:160
msgid ""
@@ -33188,6 +42097,9 @@ msgid ""
"resources compared to [constant COMPRESS_ZLIB], at the expense of using more "
"bandwidth."
msgstr ""
+"[url=http://fastlz.org/]Compresión FastLZ[/url]. Esta opción utiliza menos "
+"recursos de CPU en comparación con [constant COMPRESS_ZLIB], a expensas de "
+"utilizar más ancho de banda."
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:163
msgid ""
@@ -33195,39 +42107,48 @@ msgid ""
"bandwidth compared to [constant COMPRESS_FASTLZ], at the expense of using "
"more CPU resources."
msgstr ""
+"[url=https://www.zlib.net/]Zlib[/url] compresión. Esta opción utiliza menos "
+"ancho de banda en comparación con [constant COMPRESS_FASTLZ], a expensas de "
+"utilizar más recursos de la CPU."
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:166
msgid "[url=https://facebook.github.io/zstd/]Zstandard[/url] compression."
-msgstr ""
+msgstr "[url=https://facebook.github.io/zstd/]Compresión estándar [/url]."
#: doc/classes/NetworkedMultiplayerPeer.xml:4
msgid "A high-level network interface to simplify multiplayer interactions."
msgstr ""
+"Una interfaz de red de alto nivel para simplificar las interacciones "
+"multijugador."
#: doc/classes/NetworkedMultiplayerPeer.xml:7
msgid ""
"Manages the connection to network peers. Assigns unique IDs to each client "
"connected to the server."
msgstr ""
+"Gestiona la conexión con los compañeros de la red. Asigna identificaciones "
+"únicas a cada cliente conectado al servidor."
#: doc/classes/NetworkedMultiplayerPeer.xml:17
msgid ""
"Returns the current state of the connection. See [enum ConnectionStatus]."
-msgstr ""
+msgstr "Devuelve el estado actual de la conexión. Ver [enum ConnectionStatus]."
#: doc/classes/NetworkedMultiplayerPeer.xml:24
msgid ""
"Returns the ID of the [NetworkedMultiplayerPeer] who sent the most recent "
"packet."
msgstr ""
+"Devuelve el ID del [NetworkedMultiplayerPeer] que envió el paquete más "
+"reciente."
#: doc/classes/NetworkedMultiplayerPeer.xml:31
msgid "Returns the ID of this [NetworkedMultiplayerPeer]."
-msgstr ""
+msgstr "Devuelve el ID de este [NetworkedMultiplayerPeer]."
#: doc/classes/NetworkedMultiplayerPeer.xml:38
msgid "Waits up to 1 second to receive a new network event."
-msgstr ""
+msgstr "Espera hasta 1 segundo para recibir un nuevo evento de red."
#: doc/classes/NetworkedMultiplayerPeer.xml:47
msgid ""
@@ -33238,38 +42159,48 @@ msgid ""
"peer ID to send to all peers except that one. By default, the target peer is "
"[constant TARGET_PEER_BROADCAST]."
msgstr ""
+"Establece el par al que se enviarán los paquetes.\n"
+"El [code]id[/code] puede ser uno de: [constant TARGET_PEER_BROADCAST] para "
+"enviar a todos los pares conectados, [constant TARGET_PEER_SERVER] para "
+"enviar al par que actúa como servidor, un ID de par válido para enviar a ese "
+"par específico, un ID de par negativo para enviar a todos los pares excepto "
+"a ese. Por defecto, el par objetivo es [constant TARGET_PEER_BROADCAST]."
#: doc/classes/NetworkedMultiplayerPeer.xml:54
msgid ""
"If [code]true[/code], this [NetworkedMultiplayerPeer] refuses new "
"connections."
msgstr ""
+"Si [code]true[/code], este [NetworkedMultiplayerPeer] rechaza las nuevas "
+"conexiones."
#: doc/classes/NetworkedMultiplayerPeer.xml:57
msgid ""
"The manner in which to send packets to the [code]target_peer[/code]. See "
"[enum TransferMode]."
msgstr ""
+"La manera de enviar paquetes al [code]target_peer[/code]. Véase [enum "
+"TransferMode]."
#: doc/classes/NetworkedMultiplayerPeer.xml:63
msgid "Emitted when a connection attempt fails."
-msgstr ""
+msgstr "Emitido cuando falla un intento de conexión."
#: doc/classes/NetworkedMultiplayerPeer.xml:68
msgid "Emitted when a connection attempt succeeds."
-msgstr ""
+msgstr "Emitido cuando un intento de conexión tiene éxito."
#: doc/classes/NetworkedMultiplayerPeer.xml:75
msgid "Emitted by the server when a client connects."
-msgstr ""
+msgstr "Emitido por el servidor cuando un cliente se conecta."
#: doc/classes/NetworkedMultiplayerPeer.xml:82
msgid "Emitted by the server when a client disconnects."
-msgstr ""
+msgstr "Emitido por el servidor cuando un cliente se desconecta."
#: doc/classes/NetworkedMultiplayerPeer.xml:87
msgid "Emitted by clients when the server disconnects."
-msgstr ""
+msgstr "Emitido por los clientes cuando el servidor se desconecta."
#: doc/classes/NetworkedMultiplayerPeer.xml:93
msgid ""
@@ -33278,6 +42209,10 @@ msgid ""
"TRANSFER_MODE_UNRELIABLE_ORDERED]. Use for non-critical data, and always "
"consider whether the order matters."
msgstr ""
+"No se reconocen los paquetes, no se hacen intentos de reenvío de los "
+"paquetes perdidos. Los paquetes pueden llegar en cualquier orden. "
+"Potencialmente más rápido que [constant TRANSFER_MODE_UNRELIABLE_ORDERED]. "
+"Utilícela para datos no críticos, y siempre considere si el orden importa."
#: doc/classes/NetworkedMultiplayerPeer.xml:96
msgid ""
@@ -33287,6 +42222,12 @@ msgid ""
"would be outdated if received late due to resend attempt(s) anyway, for "
"example movement and positional data."
msgstr ""
+"No se reconocen los paquetes, no se hacen intentos de reenvío de los "
+"paquetes perdidos. Los paquetes se reciben en el orden en que fueron "
+"enviados. Potencialmente más rápido que [constant TRANSFER_MODE_RELIABLE]. "
+"Se utiliza para datos no críticos o datos que estarían desactualizados si se "
+"recibieran tarde debido a un intento de reenvío de todas formas, por "
+"ejemplo, datos de movimiento y de posición."
#: doc/classes/NetworkedMultiplayerPeer.xml:99
msgid ""
@@ -33297,32 +42238,44 @@ msgid ""
"order, for example an ability being triggered or a chat message. Consider "
"carefully if the information really is critical, and use sparingly."
msgstr ""
+"Los paquetes deben ser recibidos y se debe intentar reenviarlos hasta que se "
+"acuse recibo de los mismos. Los paquetes deben ser recibidos en el orden en "
+"que fueron enviados. Es el modo de transferencia más fiable, pero "
+"potencialmente el más lento debido a la sobrecarga. Se utiliza para los "
+"datos críticos que deben transmitirse y llegar en orden, por ejemplo, una "
+"capacidad que se está activando o un mensaje de chat. Considere "
+"cuidadosamente si la información es realmente crítica, y utilícela con "
+"moderación."
#: doc/classes/NetworkedMultiplayerPeer.xml:102
msgid "The ongoing connection disconnected."
-msgstr ""
+msgstr "La conexión en curso se ha desconectado."
#: doc/classes/NetworkedMultiplayerPeer.xml:105
msgid "A connection attempt is ongoing."
-msgstr ""
+msgstr "Un intento de conexión está en curso."
#: doc/classes/NetworkedMultiplayerPeer.xml:108
msgid "The connection attempt succeeded."
-msgstr ""
+msgstr "El intento de conexión tuvo éxito."
#: doc/classes/NetworkedMultiplayerPeer.xml:111
msgid "Packets are sent to the server and then redistributed to other peers."
msgstr ""
+"Los paquetes se envían al servidor y luego se redistribuyen a otros pares."
#: doc/classes/NetworkedMultiplayerPeer.xml:114
msgid "Packets are sent to the server alone."
-msgstr ""
+msgstr "Los paquetes se envían sólo al servidor."
#: doc/classes/NinePatchRect.xml:4
msgid ""
"Scalable texture-based frame that tiles the texture's centers and sides, but "
"keeps the corners' original size. Perfect for panels and dialog boxes."
msgstr ""
+"Un fotograma escalable basado en la textura que enmarca el centro y los "
+"lados de la textura, pero mantiene el tamaño original de las esquinas. "
+"Perfecto para paneles y cuadros de diálogo."
#: doc/classes/NinePatchRect.xml:7
msgid ""
@@ -33331,30 +42284,41 @@ msgid ""
"grid. When you scale the node, it tiles the texture's sides horizontally or "
"vertically, the center on both axes but it doesn't scale or tile the corners."
msgstr ""
+"También conocido como paneles de 9 cortes, el NinePatchRect produce paneles "
+"limpios de cualquier tamaño, basados en una pequeña textura. Para ello, "
+"divide la textura en una cuadrícula de 3×3. Cuando escalas el nodo, se "
+"nivelan los lados de la textura horizontal o verticalmente, el centro en "
+"ambos ejes, pero no se escalan o se nivelan las esquinas."
#: doc/classes/NinePatchRect.xml:18
msgid ""
"Returns the size of the margin identified by the given [enum Margin] "
"constant."
msgstr ""
+"Devuelve el tamaño del margen identificado por la constante [enum Margin] "
+"dada."
#: doc/classes/NinePatchRect.xml:29
msgid ""
"Sets the size of the margin identified by the given [enum Margin] constant "
"to [code]value[/code] in pixels."
msgstr ""
+"Establece el tamaño del margen identificado por la constante [enum Margin] "
+"dada a [code]value[/code] en píxeles."
#: doc/classes/NinePatchRect.xml:35 doc/classes/NinePatchRect.xml:38
#: doc/classes/NinePatchRect.xml:72 doc/classes/NinePatchRect.xml:75
#: doc/classes/NinePatchRect.xml:78
msgid "Doesn't do anything at the time of writing."
-msgstr ""
+msgstr "No hace nada en el momento de escribir este artículo."
#: doc/classes/NinePatchRect.xml:41
msgid ""
"If [code]true[/code], draw the panel's center. Else, only draw the 9-slice's "
"borders."
msgstr ""
+"Si [code]true[/code], dibuja el centro del panel. Si no, sólo dibuja los "
+"bordes de los 9 cortes."
#: doc/classes/NinePatchRect.xml:45
msgid ""
@@ -33362,18 +42326,22 @@ msgid ""
"bottom corners and side will have a height of 16 pixels. You can set all 4 "
"margin values individually to create panels with non-uniform borders."
msgstr ""
+"La altura de la fila inferior del 9-cortes. Un margen de 16 significa que "
+"las esquinas inferiores y el lado de los 9 cortes tendrán una altura de 16 "
+"píxeles. Puede establecer los 4 valores de margen individualmente para crear "
+"paneles con bordes no uniformes."
#: doc/classes/NinePatchRect.xml:48
msgid "The height of the 9-slice's left column."
-msgstr ""
+msgstr "La altura de la columna izquierda del 9-cortes."
#: doc/classes/NinePatchRect.xml:51
msgid "The height of the 9-slice's right column."
-msgstr ""
+msgstr "La altura de la columna derecha del 9-cortes."
#: doc/classes/NinePatchRect.xml:54
msgid "The height of the 9-slice's top row."
-msgstr ""
+msgstr "La altura de la fila superior de los 9-cortes."
#: doc/classes/NinePatchRect.xml:57
msgid ""
@@ -33382,18 +42350,22 @@ msgid ""
"other properties are relative to this one. If the rect is empty, "
"NinePatchRect will use the whole texture."
msgstr ""
+"Región rectangular de la textura de la que tomar la muestra. Si trabajas con "
+"un atlas, usa esta propiedad para definir el área que el 9-cortes debe usar. "
+"Todas las demás propiedades son relativas a esta. Si el rectángulo está "
+"vacío, el NinePatchRect usará toda la textura."
#: doc/classes/NinePatchRect.xml:60
msgid "The node's texture resource."
-msgstr ""
+msgstr "El recurso de textura del nodo."
#: doc/classes/NinePatchRect.xml:66
msgid "Emitted when the node's texture changes."
-msgstr ""
+msgstr "Emitido cuando la textura del nodo cambia."
#: doc/classes/Node.xml:4
msgid "Base class for all [i]scene[/i] objects."
-msgstr ""
+msgstr "Clase base para todos los objetos [i]escena[/i]."
#: doc/classes/Node.xml:7
msgid ""
@@ -33454,12 +42426,76 @@ msgid ""
"(make sure node names are the same on all peers). Also, take a look at the "
"high-level networking tutorial and corresponding demos."
msgstr ""
+"Los nodos son los bloques de construcción de Godot. Pueden ser asignados "
+"como hijos de otro nodo, lo que resulta en un esquema de árbol. Un nodo dado "
+"puede contener cualquier número de nodos como hijos con el requisito de que "
+"todos los hermanos (hijos directos de un nodo) deben tener nombres únicos.\n"
+"Un árbol de nodos se denomina [i]scene[/i]. Las escenas pueden ser guardadas "
+"en el disco y luego instanciadas en otras escenas. Esto permite una gran "
+"flexibilidad en la arquitectura y el modelo de datos de los proyectos de "
+"Godot.\n"
+"[b]Ãrbol de escenas:[/b] El [SceneTree] contiene el árbol de nodos activo. "
+"Cuando se añade un nodo al árbol de la escena, recibe la notificación "
+"[constant NOTIFICATION_ENTER_TREE] y se dispara su llamada [method "
+"_enter_tree]. Los nodos hijos siempre se añaden [i]después de[/i] su nodo "
+"padre, es decir, la llamada de retorno [method _enter_tree] de un nodo padre "
+"se disparará antes que la de su hijo.\n"
+"Una vez que todos los nodos se han añadido al árbol de la escena, reciben la "
+"notificación [constant NOTIFICATION_READY] y se activan sus respectivas "
+"devoluciones de llamada [method _ready]. Para grupos de nodos, la llamada de "
+"retorno [method _ready] se hace en orden inverso, comenzando con los hijos y "
+"subiendo hasta los nodos padres.\n"
+"Esto significa que cuando se añade un nodo al árbol de la escena, se utiliza "
+"el siguiente orden para las devoluciones de llamada: [method _enter_tree] "
+"del padre, [method _enter_tree] de los hijos, [method _ready] de los hijos y "
+"finalmente [method _ready] del padre (de forma recursiva para todo el árbol "
+"de la escena).\n"
+"b]Procesamiento:[/b] Los nodos pueden anular el estado de \"proceso\", de "
+"modo que reciben una llamada en cada fotograma solicitándoles que procesen "
+"(hagan algo). El procesamiento normal (devolución de llamada [method "
+"_process], alternado con [method set_process]) ocurre lo más rápido posible "
+"y depende de la velocidad de fotogramas, por lo que el tiempo de "
+"procesamiento [i]delta[/i] se pasa como argumento. El procesamiento de la "
+"física (devolución de llamada [method _physics_process], conmutada con "
+"[method set_physics_process]) ocurre un número fijo de veces por segundo (60 "
+"por defecto) y es útil para el código relacionado con el motor de física.\n"
+"Los nodos también pueden procesar eventos de entrada. Cuando estén "
+"presentes, la función [method _input] será llamada para cada entrada que el "
+"programa reciba. En muchos casos, esto puede ser exagerado (a menos que se "
+"use para proyectos simples), y la función [method _unhandled_input] podría "
+"ser preferida; se llama cuando el evento de entrada no fue manejado por "
+"nadie más (típicamente, nodos GUI [Control]), asegurando que el nodo sólo "
+"recibe los eventos que estaban destinados a él.\n"
+"Para realizar un seguimiento de la jerarquía de escenas (especialmente "
+"cuando se instalan escenas en otras escenas), se puede establecer un "
+"\"propietario\" para el nodo con la propiedad [member owner]. Esto mantiene "
+"un registro de quién instala qué. Sin embargo, esto es muy útil cuando se "
+"escriben editores y herramientas.\n"
+"Finalmente, cuando un nodo se libera con [method Object.free] o [method "
+"queue_free], también liberará a todos sus hijos.\n"
+"[b]Grupos:[/b] Los nodos pueden ser añadidos a tantos grupos como quieras "
+"para que sea fácil de manejar, puedes crear grupos como \"enemigos\" o "
+"\"coleccionables\" por ejemplo, dependiendo de tu juego. Ver [method "
+"add_to_group], [method is_in_group] y [method remove_from_group]. Entonces "
+"puedes recuperar todos los nodos de estos grupos, iterarlos e incluso llamar "
+"a los métodos de los grupos a través de los métodos de [SceneTree].\n"
+"[b]Conexión en red con los nodos:[/b] Después de conectarse a un servidor (o "
+"hacer uno, ver [NetworkedMultiplayerENet]), es posible usar el sistema RPC "
+"(remote procedure call) incorporado para comunicarse a través de la red. "
+"Llamando a [method rpc] con un nombre de método, se llamará localmente y en "
+"todos los pares conectados (pares = clientes y el servidor que acepta las "
+"conexiones). Para identificar qué nodo recibe la llamada RPC, Godot "
+"utilizará su [NodePath] (asegúrese de que los nombres de los nodos son los "
+"mismos en todos los pares). Además, echa un vistazo al tutorial de redes de "
+"alto nivel y a las demostraciones correspondientes."
#: doc/classes/Node.xml:20
msgid ""
"https://docs.godotengine.org/en/latest/getting_started/step_by_step/"
"scenes_and_nodes.html"
msgstr ""
+"https://docs.godotengine.org/es/latest/getting_started/step_by_step/"
+"scenes_and_nodes.html"
#: doc/classes/Node.xml:27
msgid ""
@@ -33470,6 +42506,12 @@ msgid ""
"Corresponds to the [constant NOTIFICATION_ENTER_TREE] notification in "
"[method Object._notification]."
msgstr ""
+"Llamado cuando el nodo entra en el [SceneTree] (por ejemplo, al instalarse, "
+"al cambiar de escena o después de llamar a [method add_child] en un script). "
+"Si el nodo tiene hijos, su llamada a [method _enter_tree] se llamará "
+"primero, y luego la de los hijos.\n"
+"Corresponde a la notificación [constant NOTIFICATION_ENTER_TREE] en [method "
+"Object._notification]."
#: doc/classes/Node.xml:35
msgid ""
@@ -33482,6 +42524,15 @@ msgid ""
"the node has already left the active tree, connect to the [signal "
"tree_exited]."
msgstr ""
+"Llamado cuando el nodo está a punto de salir del [SceneTree] (por ejemplo, "
+"al liberarse, al cambiar de escena o después de llamar a [method "
+"remove_child] en un script). Si el nodo tiene hijos, su llamada a [method "
+"_exit_tree] se llamará al final, después de que todos sus hijos hayan dejado "
+"el árbol.\n"
+"Corresponde a la notificación [constant NOTIFICATION_EXIT_TREE] en [method "
+"Object._notification] y a la señal [signal tree_exiting]. Para ser "
+"notificado cuando el nodo ya ha dejado el árbol activo, conéctese al [signal "
+"tree_exited]."
#: doc/classes/Node.xml:43
msgid ""
@@ -33491,6 +42542,12 @@ msgid ""
"Call [method update_configuration_warning] when the warning needs to be "
"updated for this node."
msgstr ""
+"La string devuelta por este método se muestra como una advertencia en el "
+"Scene Dock si el script que la tsobreescribe es un script [code]tool[/"
+"code].\n"
+"Devolver una string vacía no produce ninguna advertencia.\n"
+"Llame a [method update_configuration_warning] cuando necesite actualizar el "
+"aviso para este nodo."
#: doc/classes/Node.xml:54
msgid ""
@@ -33507,6 +42564,18 @@ msgid ""
"[b]Note:[/b] This method is only called if the node is present in the scene "
"tree (i.e. if it's not orphan)."
msgstr ""
+"Llamado cuando hay un evento de entrada. El evento de entrada se propaga a "
+"través del árbol de nodos hasta que un nodo lo consume.\n"
+"Sólo se llama si el procesamiento de entrada está activado, lo que se hace "
+"automáticamente si este método se anula, y se puede conmutar con [method "
+"set_process_input].\n"
+"Para consumir el evento de entrada y evitar que se propague a otros nodos, "
+"se puede llamar al [method Viewport.set_input_as_handled].\n"
+"Para la entrada del juego, [method _unhandled_input] y [method "
+"_unhandled_key_input] suelen ser más adecuados ya que permiten que la GUI "
+"intercepte los eventos primero.\n"
+"[b]Nota:[/b] Este método sólo se llama si el nodo está presente en el árbol "
+"de la escena (es decir, si no es huérfano)."
#: doc/classes/Node.xml:67
msgid ""
@@ -33521,6 +42590,17 @@ msgid ""
"[b]Note:[/b] This method is only called if the node is present in the scene "
"tree (i.e. if it's not orphan)."
msgstr ""
+"Llamado durante el paso de procesamiento físico del bucle principal. El "
+"procesamiento físico significa que la velocidad de fotograma está "
+"sincronizada con la física, es decir, la variable [code]delta[/code] debe "
+"ser constante.\n"
+"Sólo se llama si se habilita el procesamiento físico, lo que se hace "
+"automáticamente si se anula este método, y puede conmutarse con [method "
+"set_physics_process].\n"
+"Corresponde a la notificación [constante NOTIFICATION_PHYSICS_PROCESS] en "
+"[method Object._notification].\n"
+"[b]Nota:[/b] Este método sólo se llama si el nodo está presente en el árbol "
+"de la escena (es decir, si no es huérfano)."
#: doc/classes/Node.xml:79
msgid ""
@@ -33534,6 +42614,17 @@ msgid ""
"[b]Note:[/b] This method is only called if the node is present in the scene "
"tree (i.e. if it's not orphan)."
msgstr ""
+"Llamado durante la etapa de procesamiento del bucle principal. El "
+"procesamiento se realiza en cada fotograma y lo más rápido posible, por lo "
+"que el tiempo [code]delta[/code] desde el fotograma anterior no es "
+"constante.\n"
+"Sólo se llama si el procesamiento está habilitado, lo que se hace "
+"automáticamente si este método es anulado, y puede ser conmutado con [method "
+"set_process].\n"
+"Corresponde a la notificación [constant NOTIFICATION_PROCESS] en [método "
+"Object._notification].\n"
+"[b]Nota:[/b] Este método sólo se llama si el nodo está presente en el árbol "
+"de la escena (es decir, si no es huérfano)."
#: doc/classes/Node.xml:89
msgid ""
@@ -33552,6 +42643,21 @@ msgid ""
"another call with [method request_ready], which may be called anywhere "
"before adding the node again."
msgstr ""
+"Se llama cuando el nodo está \"listo\", es decir, cuando tanto el nodo como "
+"sus hijos han entrado en el árbol de la escena. Si el nodo tiene hijos, sus "
+"llamadas [method _ready] se activan primero, y el nodo padre recibirá la "
+"notificación de listo después.\n"
+"Corresponde a la notificación [constant NOTIFICATION_READY] en [method "
+"Object._notification]. Véase también la palabra clave [code]onready[/code] "
+"para las variables.\n"
+"Normalmente se utiliza para la inicialización. Para una inicialización aún "
+"más temprana, se puede utilizar [método Object._init]. Véase también [method "
+"_enter_tree].\n"
+"[b]Nota:[/b] [method _ready] puede ser llamado sólo una vez para cada nodo. "
+"Después de eliminar un nodo del árbol de la escena y volver a añadirlo, "
+"[code]_ready[/code] no se llamará por segunda vez. Esto puede ser obviado "
+"con la petición de otra llamada con [method request_ready], que puede ser "
+"llamada en cualquier lugar antes de añadir el nodo de nuevo."
#: doc/classes/Node.xml:101
msgid ""
@@ -33569,6 +42675,19 @@ msgid ""
"[b]Note:[/b] This method is only called if the node is present in the scene "
"tree (i.e. if it's not orphan)."
msgstr ""
+"Llamado cuando un [InputEvent] no ha sido consumido por [method _input] o "
+"cualquier GUI. El evento de entrada se propaga a través del árbol de nodos "
+"hasta que un nodo lo consume.\n"
+"Sólo se llama si se activa el procesamiento de entrada no manejado, lo que "
+"se hace automáticamente si se anula este método, y se puede conmutar con "
+"[method set_process_unhandled_input].\n"
+"Para consumir el evento de entrada y evitar que se propague a otros nodos, "
+"se puede llamar al [method Viewport.set_input_as_handled].\n"
+"Para la entrada del juego, este y [method _unhandled_key_input] suelen "
+"encajar mejor que [method _input] ya que permiten que la GUI intercepte los "
+"eventos primero.\n"
+"[b]Nota:[/b] Este método sólo se llama si el nodo está presente en el árbol "
+"de la escena (es decir, si no es huérfano)."
#: doc/classes/Node.xml:114
msgid ""
@@ -33586,6 +42705,19 @@ msgid ""
"[b]Note:[/b] This method is only called if the node is present in the scene "
"tree (i.e. if it's not orphan)."
msgstr ""
+"Llamado cuando un [InputEventKey] no ha sido consumido por [method _input] o "
+"cualquier GUI. El evento de entrada se propaga a través del árbol de nodos "
+"hasta que un nodo lo consume.\n"
+"Sólo se llama si se activa el procesamiento de entrada de clave no "
+"manipulada, lo que se hace automáticamente si se anula este método, y se "
+"puede conmutar con [method set_process_unhandled_key_input].\n"
+"Para consumir el evento de entrada y evitar que se propague a otros nodos, "
+"se puede llamar al [method Viewport.set_input_as_handled].\n"
+"Para la entrada del juego, esto y [method _unhandled_input] suelen encajar "
+"mejor que [method _input] ya que permiten que la GUI intercepte los eventos "
+"primero.\n"
+"[b]Nota:[/b] Este método sólo se llama si el nodo está presente en el árbol "
+"de la escena (es decir, si no es huérfano)."
#: doc/classes/Node.xml:129
msgid ""
@@ -33615,6 +42747,32 @@ msgid ""
"owner], the newly added [Node] will not be visible in the scene tree, though "
"it will be visible in the 2D/3D view."
msgstr ""
+"Añade un nodo infantil. Los nodos pueden tener cualquier número de niños, "
+"pero cada niño debe tener un nombre único. Los nodos hijos se eliminan "
+"automáticamente cuando se elimina el nodo padre, por lo que una escena "
+"entera puede ser eliminada eliminando su nodo superior.\n"
+"Si [code]legible_unique_name[/code] es [code]true[/code], el nodo hijo "
+"tendrá un nombre legible para los humanos basado en el nombre del nodo que "
+"se instale en lugar de su tipo.\n"
+"[b]Nota:[/b] Si el nodo hijo ya tiene un padre, la función fallará. Use "
+"[method remove_child] primero para eliminar el nodo de su padre actual. Por "
+"ejemplo:\n"
+"[codeblock]\n"
+"if child_node.get_parent():\n"
+" child_node.get_parent().remove_child(child_node)\n"
+"add_child(child_node)\n"
+"[/codeblock]\n"
+"Si necesita que el nodo hijo se añada debajo de un nodo específico en la "
+"lista de hijos, use [method add_sibling] en lugar de este método.\n"
+"[b]Nota:[/b] Si quieres que un hijo sea perseguido en un [PackedScene], "
+"debes establecer [member owner] además de llamar a [method add_child]. Esto "
+"es típicamente relevante para los scripts de la herramienta [url=https://"
+"godot.readthedocs.io/es/latest/tutorials/misc/running_code_in_the_editor."
+"html]tool[/url] y para los plugins de edición [/url] de [url=https://godot."
+"readthedocs.io/es/latest/tutorials/plugins/editor/index.html]. Si se llama a "
+"[method add_child] sin establecer [member owner], el [Node] recién agregado "
+"no será visible en el árbol de la escena, aunque sí lo será en la vista "
+"2D/3D."
#: doc/classes/Node.xml:149
msgid ""
@@ -33626,6 +42784,13 @@ msgid ""
"Use [method add_child] instead of this method if you don't need the child "
"node to be added below a specific node in the list of children."
msgstr ""
+"Añade un nodo [code]sibling[/code] al nodo padre de la corriente, al mismo "
+"nivel que ese nodo, justo debajo de él.\n"
+"Si [code]legible_unique_name[/code] es [code]true[/code], el nodo hijo "
+"tendrá un nombre legible para los humanos basado en el nombre del nodo que "
+"se instale en lugar de su tipo.\n"
+"Usa [method add_child] en lugar de este método si no necesitas que el nodo "
+"hijo se añada debajo de un nodo específico en la lista de hijos."
#: doc/classes/Node.xml:162
msgid ""
@@ -33637,6 +42802,15 @@ msgid ""
"The [code]persistent[/code] option is used when packing node to "
"[PackedScene] and saving to file. Non-persistent groups aren't stored."
msgstr ""
+"Añade el nodo a un grupo. Los grupos ayudan a nombrar y organizar un "
+"subconjunto de nodos, por ejemplo \"enemigos\" o \"coleccionables\". Un nodo "
+"puede estar en cualquier número de grupos. A los nodos se les puede asignar "
+"un grupo en cualquier momento, pero no se añadirán hasta que estén dentro "
+"del árbol de la escena (ver [method is_inside_tree]). Vea las notas en la "
+"descripción, y los métodos de grupo en [SceneTree].\n"
+"La opción [code]persistent[/code] se usa cuando se empaqueta el nodo en "
+"[PackedScene] y se guarda en un archivo. Los grupos no persistentes no se "
+"almacenan."
#: doc/classes/Node.xml:170
msgid ""
@@ -33645,6 +42819,10 @@ msgid ""
"scene tree is not paused, and [code]false[/code] if the node is not in the "
"tree."
msgstr ""
+"Devuelve [code]true[/code] si el nodo puede procesar mientras el árbol de la "
+"escena está en pausa (ver [member pause_mode]). Siempre devuelve [code]true[/"
+"code] si el árbol de la escena no está pausado, y [code]false[/code] si el "
+"nodo no está en el árbol."
#: doc/classes/Node.xml:179
msgid ""
@@ -33655,6 +42833,13 @@ msgid ""
"constructor arguments (i.e. needs to supply arguments to [method Object."
"_init] method). In that case, the node will be duplicated without a script."
msgstr ""
+"Duplica el nodo, devolviendo un nuevo nodo.\n"
+"Puedes afinar el comportamiento usando las [code]flags[/code] (ver [enum "
+"DuplicateFlags]).\n"
+"[b]Nota:[/b] No funcionará correctamente si el nodo contiene un script con "
+"argumentos de constructor (es decir, necesita suministrar argumentos al "
+"método [method Object._init]). En ese caso, el nodo se duplicará sin un "
+"script."
#: doc/classes/Node.xml:194
msgid ""
@@ -33668,6 +42853,17 @@ msgid ""
"whose owner is this node. This is especially important for scenes "
"instantiated through a script, because those scenes don't have an owner."
msgstr ""
+"Encuentra un descendiente de este nodo cuyo nombre coincide con [code]mask[/"
+"code] como en el [method String.match] (es decir, distingue entre mayúsculas "
+"y minúsculas, pero [code]\"*\"[/code] coincide con cero o más caracteres y "
+"[code]\"?\"[/code] coincide con cualquier carácter individual excepto con "
+"[code]\".\"[/code]).\n"
+"[b]Nota:[/b] No coincide con la ruta completa, sólo con los nombres de los "
+"nodos individuales.\n"
+"Si [code]owned[/code] es [code]true[/code], este método sólo encuentra nodos "
+"cuyo propietario es este nodo. Esto es especialmente importante para las "
+"escenas instanciadas a través de un guión, porque esas escenas no tienen "
+"dueño."
#: doc/classes/Node.xml:205
msgid ""
@@ -33678,6 +42874,13 @@ msgid ""
"[b]Note:[/b] It does not match against the full path, just against "
"individual node names."
msgstr ""
+"Encuentra el primer padre del nodo actual cuyo nombre coincide con "
+"[code]mask[/code] como en el [method String.match] (es decir, distingue "
+"entre mayúsculas y minúsculas, pero [code]\"*\"[/code] coincide con cero o "
+"más caracteres y [code]\"?\"[/code] coincide con cualquier carácter "
+"individual excepto con [code]\".\"[/code]).\n"
+"[b]Nota:[/b] No coincide con la ruta completa, sólo con los nombres de los "
+"nodos individuales."
#: doc/classes/Node.xml:215
msgid ""
@@ -33685,30 +42888,38 @@ msgid ""
"method is often used for iterating all children of a node.\n"
"To access a child node via its name, use [method get_node]."
msgstr ""
+"Devuelve un nodo hijo por su índice (ver [method get_child_count]). Este "
+"método se usa a menudo para iterar todos los hijos de un nodo.\n"
+"Para acceder a un nodo hijo a través de su nombre, usa [method get_node]."
#: doc/classes/Node.xml:223
msgid "Returns the number of child nodes."
-msgstr ""
+msgstr "Devuelve el número de nodos infantiles."
#: doc/classes/Node.xml:230
msgid "Returns an array of references to node's children."
-msgstr ""
+msgstr "Devuelve un array de referencias a los hijos del nodo."
#: doc/classes/Node.xml:237
msgid "Returns an array listing the groups that the node is a member of."
msgstr ""
+"Devuelve un array que enumerando los grupos de los que el nodo es miembro."
#: doc/classes/Node.xml:244
msgid ""
"Returns the node's order in the scene tree branch. For example, if called on "
"the first child node the position is [code]0[/code]."
msgstr ""
+"Devuelve el orden del nodo en la rama del árbol de la escena. Por ejemplo, "
+"si se llama al primer nodo hijo la posición es [code]0[/code]."
#: doc/classes/Node.xml:251
msgid ""
"Returns the peer ID of the network master for this node. See [method "
"set_network_master]."
msgstr ""
+"Devuelve el ID del par del maestro de la red para este nodo. Ver [method "
+"set_network_master]."
#: doc/classes/Node.xml:260
msgid ""
@@ -33739,6 +42950,32 @@ msgid ""
"get_node(\"/root/MyGame\")\n"
"[/codeblock]"
msgstr ""
+"Busca un nodo. El [NodePath] puede ser un camino relativo (desde el nodo "
+"actual) o un camino absoluto (en el árbol de la escena) a un nodo. Si la "
+"ruta no existe, se devuelve una instancia [code]null[/code] y se registra un "
+"error. Los intentos de acceder a los métodos en el valor de retorno darán "
+"como resultado un error \"Attempt to call <method> on a null instance\".\n"
+"[b]Nota:[/b] La búsqueda de rutas absolutas sólo funciona cuando el nodo "
+"está dentro del árbol de la escena (ver [method is_inside_tree]).\n"
+"[b]Ejemplo:[/b] Supongamos que tu nodo actual es Character y el siguiente "
+"árbol:\n"
+"[codeblock]\n"
+"/root\n"
+"/root/Personaje\n"
+"/root/Personaje/Espada\n"
+"/root/Personaje/Mochila/Daga\n"
+"/root/MiJuego\n"
+"/root/Pantano/Caimán\n"
+"/root/Pantano/Mosquito\n"
+"/root/Pantano/Goblin\n"
+"[/codeblock]\n"
+"Las posibles rutas son:\n"
+"[codeblock]\n"
+"get_node(\"Espada\")\n"
+"get_node(\"Mochila/Daga\")\n"
+"get_node(\"../Pantano/Caimán\")\n"
+"get_node(\"/root/MiJuego\")\n"
+"[/codeblock]"
#: doc/classes/Node.xml:288
msgid ""
@@ -33761,33 +42998,58 @@ msgid ""
"[[CollisionShape2D:1161], [RectangleShape2D:1156], :extents]\n"
"[/codeblock]"
msgstr ""
+"Busca un nodo y uno de sus recursos como se especifica en el subnombre de "
+"[NodePath] (por ejemplo, [code]Area2D/CollisionShape2D:shape[/code]). Si se "
+"especifican varios recursos anidados en el [NodePath], el último será "
+"recuperado.\n"
+"El valor de retorno es un array de tamaño 3: el primer índice apunta al "
+"[Node] (o al [code]null[/code] si no se encuentra), el segundo índice apunta "
+"al [Resource] (o al [code]null[/code] si no se encuentra), y el tercero es "
+"el [NodePath] restante, si lo hay.\n"
+"Por ejemplo, suponiendo que [code]Area2D/CollisionShape2D[/code] es un nodo "
+"válido y que a su propiedad [code]shape[/code] se le ha asignado un recurso "
+"[RectangleShape2D], se podría tener este tipo de salida:\n"
+"[codeblock]\n"
+"print(get_node_and_resource(\"Area2D/CollisionShape2D\")) # "
+"[[CollisionShape2D:1161], Null, ]\n"
+"print(get_node_and_resource(\"Area2D/CollisionShape2D:shape\")) # "
+"[[CollisionShape2D:1161], [RectangleShape2D:1156], ]\n"
+"print(get_node_and_resource(\"Area2D/CollisionShape2D:shape:extents\")) # "
+"[[CollisionShape2D:1161], [RectangleShape2D:1156], :extents]\n"
+"[/codeblock]"
#: doc/classes/Node.xml:304
msgid ""
"Similar to [method get_node], but does not log an error if [code]path[/code] "
"does not point to a valid [Node]."
msgstr ""
+"Similar a [method get_node], pero no registra un error si [code]path[/code] "
+"no apunta a un [Node] válido."
#: doc/classes/Node.xml:311
-#, fuzzy
msgid ""
"Returns the parent node of the current node, or a [code]null instance[/code] "
"if the node lacks a parent."
msgstr ""
-"Devuelve el ultimo element del array, or [code]null[/code] si este esta "
-"vacio."
+"Devuelve el nodo padre del nodo actual, o una instancia [code]null [/code] "
+"si el nodo carece de un padre."
#: doc/classes/Node.xml:318
msgid ""
"Returns the absolute path of the current node. This only works if the "
"current node is inside the scene tree (see [method is_inside_tree])."
msgstr ""
+"Devuelve la ruta absoluta del nodo actual. Esto sólo funciona si el nodo "
+"actual está dentro del árbol de la escena (ver [method is_inside_tree])."
#: doc/classes/Node.xml:327
msgid ""
"Returns the relative [NodePath] from this node to the specified [code]node[/"
"code]. Both nodes must be in the same scene or the function will fail."
msgstr ""
+"Devuelve la ruta relativa [NodePath] de este nodo al [code]node[/code] "
+"especificado. Ambos nodos deben estar en la misma escena o la función "
+"fallará."
#: doc/classes/Node.xml:334
msgid ""
@@ -33796,31 +43058,39 @@ msgid ""
"unless the frames per second is changed via [member Engine."
"iterations_per_second]."
msgstr ""
+"Devuelve el tiempo transcurrido desde el último fotograma vinculado a la "
+"física (ver [method _physics_process]). Este es siempre un valor constante "
+"en el procesamiento de la física, a menos que se cambien las tramas por "
+"segundo a través del [member Engine.iterations_per_second]."
#: doc/classes/Node.xml:341
msgid ""
"Returns the time elapsed (in seconds) since the last process callback. This "
"value may vary from frame to frame."
msgstr ""
+"Devuelve el tiempo transcurrido (en segundos) desde la última llamada del "
+"proceso. Este valor puede variar de un fotograma a otro."
#: doc/classes/Node.xml:348
msgid ""
"Returns [code]true[/code] if this is an instance load placeholder. See "
"[InstancePlaceholder]."
msgstr ""
+"Devuelve [code]true[/code] si se trata de un marcador de posición de carga "
+"de instancia. Ver [InstancePlaceholder]."
#: doc/classes/Node.xml:355
msgid "Returns the [SceneTree] that contains this node."
-msgstr ""
+msgstr "Devuelve el [SceneTree] que contiene este nodo."
#: doc/classes/Node.xml:362
msgid "Returns the node's [Viewport]."
-msgstr ""
+msgstr "Devuelve el [Viewport] del nodo."
#: doc/classes/Node.xml:371
msgid ""
"Returns [code]true[/code] if the node that the [NodePath] points to exists."
-msgstr ""
+msgstr "Devuelve [code]true[/code] si el nodo al que apunta [NodePath] existe."
#: doc/classes/Node.xml:380
msgid ""
@@ -33829,82 +43099,112 @@ msgid ""
"shape[/code]. Properties with a non-[Resource] type (e.g. nodes or primitive "
"math types) are not considered resources."
msgstr ""
+"Devuelve [code]true[/code] si el [NodePath] apunta a un nodo válido y su "
+"subnombre apunta a un recurso válido, por ejemplo, [code]Area2D/"
+"CollisionShape2D:shape[/code]. Las propiedades que no son de tipo [Resource] "
+"(por ejemplo, nodos o tipos matemáticos primitivos) no se consideran "
+"recursos."
#: doc/classes/Node.xml:389
msgid ""
"Returns [code]true[/code] if the given node is a direct or indirect child of "
"the current node."
msgstr ""
+"Devuelve [code]true[/code] si el nodo dado es un hijo directo o indirecto "
+"del nodo actual."
#: doc/classes/Node.xml:396
msgid ""
"Returns [code]true[/code] if the node is folded (collapsed) in the Scene "
"dock."
msgstr ""
+"Devuelve [code]true[/code] si el nodo está plegado (colapsado) en el muelle "
+"de la escena."
#: doc/classes/Node.xml:405
msgid ""
"Returns [code]true[/code] if the given node occurs later in the scene "
"hierarchy than the current node."
msgstr ""
+"Devuelve [code]true[/code] si el nodo dado se produce más tarde en la "
+"jerarquía de la escena que el nodo actual."
#: doc/classes/Node.xml:414
msgid ""
"Returns [code]true[/code] if this node is in the specified group. See notes "
"in the description, and the group methods in [SceneTree]."
msgstr ""
+"Devuelve [code]true[/code] si este nodo está en el grupo especificado. Vea "
+"las notas en la descripción, y los métodos de grupo en [SceneTree]."
#: doc/classes/Node.xml:421
msgid ""
"Returns [code]true[/code] if this node is currently inside a [SceneTree]."
msgstr ""
+"Devuelve [code]true[/code] si este nodo está actualmente dentro de un "
+"[SceneTree]."
#: doc/classes/Node.xml:428
msgid ""
"Returns [code]true[/code] if the local system is the master of this node."
msgstr ""
+"Devuelve [code]true[/code] si el sistema local es el maestro de este nodo."
#: doc/classes/Node.xml:435
msgid ""
"Returns [code]true[/code] if physics processing is enabled (see [method "
"set_physics_process])."
msgstr ""
+"Devuelve [code]true[/code] si el procesamiento de la física está activado "
+"(véase [method set_physics_process])."
#: doc/classes/Node.xml:442
msgid ""
"Returns [code]true[/code] if internal physics processing is enabled (see "
"[method set_physics_process_internal])."
msgstr ""
+"Devuelve [code]true[/code] si el procesamiento de la física interna está "
+"activado (véase [method set_physics_process_internal])."
#: doc/classes/Node.xml:449
msgid ""
"Returns [code]true[/code] if processing is enabled (see [method "
"set_process])."
msgstr ""
+"Devuelve [code]true[/code] si el procesamiento está activado (véase [method "
+"set_process])."
#: doc/classes/Node.xml:456
msgid ""
"Returns [code]true[/code] if the node is processing input (see [method "
"set_process_input])."
msgstr ""
+"Devuelve [code]true[/code] si el nodo está procesando la entrada (ver "
+"[method set_process_input])."
#: doc/classes/Node.xml:463
msgid ""
"Returns [code]true[/code] if internal processing is enabled (see [method "
"set_process_internal])."
msgstr ""
+"Devuelve [code]true[/code] si el procesamiento interno está activado (véase "
+"[method set_process_internal])."
#: doc/classes/Node.xml:470
msgid ""
"Returns [code]true[/code] if the node is processing unhandled input (see "
"[method set_process_unhandled_input])."
msgstr ""
+"Devuelve [code]true[/code] si el nodo está procesando una entrada no "
+"manejada (ver [method set_process_unhandled_input])."
#: doc/classes/Node.xml:477
msgid ""
"Returns [code]true[/code] if the node is processing unhandled key input (see "
"[method set_process_unhandled_key_input])."
msgstr ""
+"Devuelve [code]true[/code] si el nodo está procesando una entrada de clave "
+"no manejada (ver [method set_process_unhandled_key_input])."
#: doc/classes/Node.xml:488
msgid ""
@@ -33912,12 +43212,17 @@ msgid ""
"Since calls, signals, etc are performed by tree order, changing the order of "
"children nodes may be useful."
msgstr ""
+"Mueve un nodo hijo a una posición diferente (orden) entre los otros hijos. "
+"Dado que las llamadas, señales, etc. se realizan por orden de árbol, cambiar "
+"el orden de los nodos hijos puede ser útil."
#: doc/classes/Node.xml:495
msgid ""
"Prints all stray nodes (nodes outside the [SceneTree]). Used for debugging. "
"Works only in debug builds."
msgstr ""
+"Imprime todos los nodos perdidos (nodos fuera del [SceneTree]). Se utiliza "
+"para la depuración. Funciona sólo en construcciones de depuración."
#: doc/classes/Node.xml:502
msgid ""
@@ -33934,6 +43239,18 @@ msgid ""
"TheGame/SplashScreen/Camera2D\n"
"[/codeblock]"
msgstr ""
+"Imprime el árbol a stdout. Se utiliza principalmente para fines de "
+"depuración. Esta versión muestra la ruta relativa al nodo actual, y es buena "
+"para copiar/pegar en la función [method get_node].\n"
+"[b]Ejemplo de salida:[/b]\n"
+"[codeblock]\n"
+"ElJuego\n"
+"ElJuego/Menu\n"
+"ElJuego/Menu/Label\n"
+"ElJuego/Menu/Camera2D\n"
+"ElJuego/PantallaInicial\n"
+"ElJuego/PantallaInicial/Camera2D\n"
+"[/codeblock]"
#: doc/classes/Node.xml:518
msgid ""
@@ -33950,6 +43267,18 @@ msgid ""
" â”–â•´Camera2D\n"
"[/codeblock]"
msgstr ""
+"Similar al [method print_tree], este imprime el árbol a stdout. Esta versión "
+"muestra una representación más gráfica similar a la que se muestra en el "
+"inspector de escenas. Es útil para inspeccionar árboles más grandes.\n"
+"[b]Ejemplo de salida:[/b]\n"
+"[codeblock]\n"
+" â”–â•´ElJuego\n"
+" â” â•´Menu\n"
+" ┃ ┠╴Label\n"
+" ┃ ┖╴Camera2D\n"
+" â”–-PantallaInicial\n"
+" â”–â•´Camera2D\n"
+"[/codeblock]"
#: doc/classes/Node.xml:540
msgid ""
@@ -33960,12 +43289,20 @@ msgid ""
"[code]parent_first[/code] is [code]false[/code], the children will be called "
"first."
msgstr ""
+"Llama al método dado (si está presente) con los argumentos dados en "
+"[code]args[/code] en este nodo y recursivamente en todos sus hijos. Si el "
+"argumento [code]parent_first[/code] es [code]true[/code], el método será "
+"llamado primero al nodo actual, y luego a todos sus hijos. Si "
+"[code]parent_first[/code] es [code]false[/code], los hijos serán llamados "
+"primero."
#: doc/classes/Node.xml:549
msgid ""
"Notifies the current node and all its children recursively by calling "
"[method Object.notification] on all of them."
msgstr ""
+"Notifica al nodo actual y a todos sus hijos de forma recursiva llamando al "
+"[method Object.notification] en todos ellos."
#: doc/classes/Node.xml:556
msgid ""
@@ -33975,6 +43312,11 @@ msgid ""
"Object.is_queued_for_deletion] to check whether a node will be deleted at "
"the end of the frame."
msgstr ""
+"Coloca en cola un nodo para su eliminación al final del fotograma actual. "
+"Cuando se elimine, todos sus nodos hijos también serán eliminados. Este "
+"método asegura que es seguro borrar el nodo, al contrario que el [method "
+"Object.free]. Utilice [method Object.is_queued_for_deletion] para comprobar "
+"si un nodo será eliminado al final del fotograma."
#: doc/classes/Node.xml:563
msgid ""
@@ -33984,6 +43326,11 @@ msgid ""
"list, the higher they are drawn. After using [code]raise[/code], a Control "
"will be drawn on top of their siblings."
msgstr ""
+"Mueve este nodo al fondo de la jerarquía de los hijos del nodo padre. Esto "
+"suele ser útil en los GUI (nodos [Control]), porque su orden de dibujo "
+"depende de su orden en el árbol, es decir, cuanto más lejos estén en la "
+"lista de nodos, más alto se dibujarán. Después de usar [code]raise[/code], "
+"un Control se dibujará encima de sus hermanos."
#: doc/classes/Node.xml:570
msgid ""
@@ -33991,23 +43338,31 @@ msgid ""
"it exists). All event subscriptions that pass by the removed node will be "
"unsubscribed."
msgstr ""
+"Quita un nodo y pone a todos sus hijos como hijos del nodo padre (si "
+"existe). Todas las suscripciones de eventos que pasen por el nodo eliminado "
+"serán canceladas."
#: doc/classes/Node.xml:579
msgid ""
"Removes a child node. The node is NOT deleted and must be deleted manually."
msgstr ""
+"Elimina un nodo hijo. El nodo NO se elimina y debe ser eliminado manualmente."
#: doc/classes/Node.xml:588
msgid ""
"Removes a node from a group. See notes in the description, and the group "
"methods in [SceneTree]."
msgstr ""
+"Elimina un nodo de un grupo. Vea las notas en la descripción, y los métodos "
+"de grupo en [SceneTree]."
#: doc/classes/Node.xml:599
msgid ""
"Replaces a node in a scene by the given one. Subscriptions that pass through "
"this node will be lost."
msgstr ""
+"Reemplaza un nodo en una escena por el dado. Las suscripciones que pasen por "
+"este nodo se perderán."
#: doc/classes/Node.xml:606
msgid ""
@@ -34019,6 +43374,13 @@ msgid ""
"which case, [code]_ready[/code] will be called in the same order as it would "
"normally)."
msgstr ""
+"Solicita que se llame de nuevo a [code]_ready[/code]. Tenga en cuenta que el "
+"método no se llamará inmediatamente, sino que está programado para cuando el "
+"nodo se añada de nuevo al árbol de la escena (véase [method _ready]). "
+"[code]_ready[/code] se llama sólo para el nodo que lo ha solicitado, lo que "
+"significa que necesita solicitar ready para cada niño si quiere que también "
+"llamen a [code]_ready[/code] (en cuyo caso, se llamará a [code]_ready[/code] "
+"en el mismo orden que normalmente)."
#: doc/classes/Node.xml:615
msgid ""
@@ -34036,6 +43398,21 @@ msgid ""
"like [code]server_disconnected[/code] or by checking [code]SceneTree."
"network_peer.get_connection_status() == CONNECTION_CONNECTED[/code]."
msgstr ""
+"Envía una solicitud de llamada de procedimiento a distancia para el "
+"[code]method[/code] dado a los pares en la red (y localmente), opcionalmente "
+"enviando todos los argumentos adicionales como argumentos al método llamado "
+"por la RPC. La solicitud de llamada sólo será recibida por nodos con el "
+"mismo [NodePath], incluyendo exactamente el mismo nombre de nodo. El "
+"comportamiento depende de la configuración de la RPC para el método dado, "
+"véase [method rpc_config]. Los métodos no están expuestos a las RPC por "
+"defecto. Véase también [method rset] y [method rset_config] para las "
+"propiedades. Devuelve una [Variant] vacía.\n"
+"[b]Nota:[/b] Sólo se pueden utilizar RPCs de forma segura en clientes "
+"después de haber recibido la señal [code]connected_to_server[/code] de la "
+"[SceneTree]. También es necesario hacer un seguimiento del estado de la "
+"conexión, ya sea por las señales de [SceneTree] como "
+"[code]server_disconnected[/code] o comprobando [code]SceneTree.network_peer."
+"get_connection_status() == CONNECTION_CONNECTED[/code]."
#: doc/classes/Node.xml:627
msgid ""
@@ -34047,6 +43424,13 @@ msgid ""
"By default, methods are not exposed to networking (and RPCs). See also "
"[method rset] and [method rset_config] for properties."
msgstr ""
+"Cambia el modo RPC para el [code]method[/code] dado al [code]mode[/code] "
+"dado. Ver [enum MultiplayerAPI.RPCMode]. Una alternativa es anotar los "
+"métodos y propiedades con las palabras clave correspondientes ([code]remote[/"
+"code], [code]master[/code], [code]puppet[/code], [code]remotesync[/code], "
+"[code]mastersync[/code], [code]puppetsync[/code]). Por defecto, los métodos "
+"no están expuestos a las redes (y a los RPC). Ver también [method rset] y "
+"[method rset_config] para las propiedades."
#: doc/classes/Node.xml:638
msgid ""
@@ -34054,12 +43438,17 @@ msgid ""
"(see [method NetworkedMultiplayerPeer.set_target_peer]). Returns an empty "
"[Variant]."
msgstr ""
+"Envía un [method rpc] a un par específico identificado por [code]peer_id[/"
+"code] (véase [method NetworkedMultiplayerPeer.set_target_peer]). Devuelve "
+"una [Variant] vacía."
#: doc/classes/Node.xml:647
msgid ""
"Sends a [method rpc] using an unreliable protocol. Returns an empty "
"[Variant]."
msgstr ""
+"Envía un [method rpc] usando un protocolo poco fiable. Devuelve una "
+"[Variant] vacía."
#: doc/classes/Node.xml:658
msgid ""
@@ -34067,6 +43456,9 @@ msgid ""
"using an unreliable protocol (see [method NetworkedMultiplayerPeer."
"set_target_peer]). Returns an empty [Variant]."
msgstr ""
+"Envía un [método rpc] a un par específico identificado por [code]peer_id[/"
+"code] utilizando un protocolo poco fiable (véase [method "
+"NetworkedMultiplayerPeer.set_target_peer]). Devuelve una [Variant] vacía."
#: doc/classes/Node.xml:669
msgid ""
@@ -34075,6 +43467,10 @@ msgid ""
"rset_config]. See also [method rpc] for RPCs for methods, most information "
"applies to this method as well."
msgstr ""
+"Cambia remotamente el valor de una propiedad en otros pares (y localmente). "
+"El comportamiento depende de la configuración RPC de la propiedad dada, ver "
+"[method rset_config]. Véase también [method rpc] para los métodos RPC, la "
+"mayoría de la información se aplica también a este método."
#: doc/classes/Node.xml:680
msgid ""
@@ -34086,18 +43482,30 @@ msgid ""
"By default, properties are not exposed to networking (and RPCs). See also "
"[method rpc] and [method rpc_config] for methods."
msgstr ""
+"Cambia el modo RPC para la [code]property[/code] dada al [code]mode[/code] "
+"dado. Ver [enum MultiplayerAPI.RPCMode]. Una alternativa es anotar los "
+"métodos y propiedades con las palabras clave correspondientes ([code]remote[/"
+"code], [code]master[/code], [code]puppet[/code], [code]remotesync[/code], "
+"[code]mastersync[/code], [code]puppetsync[/code]). Por defecto, las "
+"propiedades no están expuestas a las redes (y a los RPCs). Ver también "
+"[method rpc] y [method rpc_config] para los métodos."
#: doc/classes/Node.xml:693
msgid ""
"Remotely changes the property's value on a specific peer identified by "
"[code]peer_id[/code] (see [method NetworkedMultiplayerPeer.set_target_peer])."
msgstr ""
+"Cambia remotamente el valor de la propiedad en un par específico "
+"identificado por [code]peer_id[/code] (véase el [method "
+"NetworkedMultiplayerPeer.set_target_peer])."
#: doc/classes/Node.xml:704
msgid ""
"Remotely changes the property's value on other peers (and locally) using an "
"unreliable protocol."
msgstr ""
+"Cambia remotamente el valor de la propiedad en otros pares (y localmente) "
+"usando un protocolo poco fiable."
#: doc/classes/Node.xml:717
msgid ""
@@ -34105,10 +43513,13 @@ msgid ""
"[code]peer_id[/code] using an unreliable protocol (see [method "
"NetworkedMultiplayerPeer.set_target_peer])."
msgstr ""
+"Cambia remotamente el valor de la propiedad en un par específico "
+"identificado por [code]peer_id[/code] utilizando un protocolo poco fiable "
+"(véase el [method NetworkedMultiplayerPeer.set_target_peer])."
#: doc/classes/Node.xml:726
msgid "Sets the folded state of the node in the Scene dock."
-msgstr ""
+msgstr "Establece el estado de plegado del nodo en el muelle de la escena."
#: doc/classes/Node.xml:737
msgid ""
@@ -34119,6 +43530,13 @@ msgid ""
"defaults to peer ID 1 (the server). If [code]recursive[/code], the given "
"peer is recursively set as the master for all children of this node."
msgstr ""
+"Establece el maestro de la red del nodo al par con el ID del par dado. El "
+"maestro de la red es el par que tiene autoridad sobre el nodo de la red. "
+"Útil en conjunción con las palabras clave [code]master[/code] y "
+"[code]puppet[/code]. Heredado del nodo padre por defecto, que en última "
+"instancia es el ID del par 1 (el servidor). Si [code]recursive[/code], el "
+"par dado se establece recursivamente como el maestro para todos los hijos de "
+"este nodo."
#: doc/classes/Node.xml:746
msgid ""
@@ -34130,6 +43548,13 @@ msgid ""
"if [method _physics_process] is overridden. Any calls to this before [method "
"_ready] will be ignored."
msgstr ""
+"Activa o desactiva el procesamiento físico (es decir, la velocidad de "
+"fotogramas fijos). Cuando un nodo está siendo procesado, recibirá una "
+"[constant NOTIFICATION_PHYSICS_PROCESS] a un intervalo fijo (normalmente 60 "
+"FPS, ver [member Engine.iterations_per_second] para cambiar) (y se llamará a "
+"la devolución de llamada de [method _physics_process] si existe). Se "
+"habilita automáticamente si se anula [method _physics_process]. Cualquier "
+"llamada a esto antes de [method _ready] será ignorada."
#: doc/classes/Node.xml:755
msgid ""
@@ -34140,6 +43565,13 @@ msgid ""
"([method set_physics_process]). Only useful for advanced uses to manipulate "
"built-in nodes' behaviour."
msgstr ""
+"Habilita o deshabilita la física interna de este nodo. El procesamiento de "
+"la física interna ocurre de forma aislada de las llamadas normales de "
+"[method _physics_process] y es usado por algunos nodos internamente para "
+"garantizar el correcto funcionamiento incluso si el nodo está en pausa o el "
+"procesamiento de la física está deshabilitado para el scripting ([method "
+"set_physics_process]). Sólo es útil para usos avanzados para manipular el "
+"comportamiento de los nodos incorporados."
#: doc/classes/Node.xml:764
msgid ""
@@ -34149,6 +43581,11 @@ msgid ""
"if [method _process] is overridden. Any calls to this before [method _ready] "
"will be ignored."
msgstr ""
+"Habilita o deshabilita el procesamiento. Cuando un nodo está siendo "
+"procesado, recibirá una [constant NOTIFICATION_PROCESS] en cada fotograma "
+"dibujado (y se llamará a la devolución de llamada [method _process] si "
+"existe). Se habilita automáticamente si se anula [method _process]. "
+"Cualquier llamada a esto antes de [method _ready] será ignorada."
#: doc/classes/Node.xml:773
msgid ""
@@ -34156,6 +43593,9 @@ msgid ""
"Enabled automatically if [method _input] is overridden. Any calls to this "
"before [method _ready] will be ignored."
msgstr ""
+"Habilita o deshabilita el procesamiento de la entrada. ¡Esto no es necesario "
+"para los controles GUI! Se activa automáticamente si se anula [method "
+"_input]. Cualquier llamada a esto antes de [method _ready] será ignorada."
#: doc/classes/Node.xml:782
msgid ""
@@ -34165,6 +43605,13 @@ msgid ""
"paused or processing is disabled for scripting ([method set_process]). Only "
"useful for advanced uses to manipulate built-in nodes' behaviour."
msgstr ""
+"Habilita o deshabilita el procesamiento interno de este nodo. El "
+"procesamiento interno ocurre de forma aislada de las llamadas normales de "
+"[method _process] y es usado por algunos nodos internamente para garantizar "
+"el correcto funcionamiento incluso si el nodo está en pausa o el "
+"procesamiento está deshabilitado para la escritura ([method set_process]). "
+"Sólo es útil para usos avanzados para manipular el comportamiento de los "
+"nodos incorporados."
#: doc/classes/Node.xml:791
msgid ""
@@ -34173,6 +43620,11 @@ msgid ""
"(usually by a [Control]). Enabled automatically if [method _unhandled_input] "
"is overridden. Any calls to this before [method _ready] will be ignored."
msgstr ""
+"Permite el procesamiento de entradas sin manejar. ¡Esto no es necesario para "
+"los controles GUI! Permite que el nodo reciba todas las entradas que no "
+"hayan sido manejadas previamente (normalmente por un [Control]). Se habilita "
+"automáticamente si se anula [method _unhandled_input]. Cualquier llamada a "
+"esto antes de [method _ready] será ignorada."
#: doc/classes/Node.xml:800
msgid ""
@@ -34180,11 +43632,16 @@ msgid ""
"_unhandled_key_input] is overridden. Any calls to this before [method "
"_ready] will be ignored."
msgstr ""
+"Permite el procesamiento de entradas de claves sin manejar. Se activa "
+"automáticamente si se anula [method _unhandled_key_input]. Cualquier llamada "
+"a esto antes de [method _ready] será ignorada."
#: doc/classes/Node.xml:809
msgid ""
"Sets whether this is an instance load placeholder. See [InstancePlaceholder]."
msgstr ""
+"Establece si se trata de un marcador de posición de carga de instancia. Ver "
+"[InstancePlaceholder]."
#: doc/classes/Node.xml:816
msgid ""
@@ -34192,24 +43649,34 @@ msgid ""
"Use [method _get_configuration_warning] to setup the warning message to "
"display."
msgstr ""
+"Actualiza la advertencia que se muestra para este nodo en el Scene Dock.\n"
+"Utiliza [method _get_configuration_warning] para configurar el mensaje de "
+"advertencia a mostrar."
#: doc/classes/Node.xml:823
msgid ""
"The override to the default [MultiplayerAPI]. Set to [code]null[/code] to "
"use the default [SceneTree] one."
msgstr ""
+"La anulación del valor por defecto [MultiplayerAPI]. La anulación a "
+"[code]null[/code] para usar la predeterminada [SceneTree]."
#: doc/classes/Node.xml:826
msgid ""
"When a scene is instanced from a file, its topmost node contains the "
"filename from which it was loaded."
msgstr ""
+"Cuando una escena es instanciada desde un archivo, su nodo superior contiene "
+"el nombre del archivo desde el cual fue cargado."
#: doc/classes/Node.xml:829
msgid ""
"The [MultiplayerAPI] instance associated with this node. Either the [member "
"custom_multiplayer], or the default SceneTree one (if inside tree)."
msgstr ""
+"La instancia [MultiplayerAPI] asociada a este nodo. O bien el [member "
+"custom_multiplayer], o el predeterminado SceneTree uno (si está dentro del "
+"árbol)."
#: doc/classes/Node.xml:832
msgid ""
@@ -34217,6 +43684,9 @@ msgid ""
"nodes from the same parent). When set to an existing name, the node will be "
"automatically renamed."
msgstr ""
+"El nombre del nodo. Este nombre es único entre los hermanos (otros nodos "
+"hijos del mismo padre). Cuando se establece un nombre existente, el nodo "
+"será renombrado automáticamente."
#: doc/classes/Node.xml:835
msgid ""
@@ -34226,10 +43696,16 @@ msgid ""
"allows for the creation of complex [SceneTree]s, with instancing and "
"subinstancing."
msgstr ""
+"El dueño del nodo. Un nodo puede tener cualquier otro nodo como propietario "
+"(siempre que sea un padre, abuelo, etc. válido ascendente en el árbol). "
+"Cuando se guarda un nodo (usando [PackedScene]), todos los nodos que posee "
+"se guardarán con él. Esto permite la creación de [SceneTree] complejos, con "
+"instanciación y subinstanciación."
#: doc/classes/Node.xml:838
msgid "Pause mode. How the node will behave if the [SceneTree] is paused."
msgstr ""
+"Modo de pausa. Cómo se comportará el nodo si el [SceneTree] está en pausa."
#: doc/classes/Node.xml:841
msgid ""
@@ -34239,181 +43715,229 @@ msgid ""
"process priority value is [i]lower[/i] will have their processing callbacks "
"executed first."
msgstr ""
+"La prioridad del nodo en el orden de ejecución de las llamadas de "
+"procesamiento habilitadas (es decir, [constant NOTIFICATION_PROCESS], "
+"[constant NOTIFICATION_PHYSICS_PROCESS] y sus contrapartes internas). Los "
+"nodos cuyo valor de prioridad de proceso sea [i]lower[/i] tendrán sus "
+"devoluciones de procesamiento ejecutadas primero."
#: doc/classes/Node.xml:847
msgid "Emitted when the node is ready."
-msgstr ""
+msgstr "Emitido cuando el nodo esté listo."
#: doc/classes/Node.xml:852
msgid "Emitted when the node is renamed."
-msgstr ""
+msgstr "Emitido cuando el nodo es renombrado."
#: doc/classes/Node.xml:857
msgid "Emitted when the node enters the tree."
-msgstr ""
+msgstr "Emitido cuando el nodo entra en el árbol."
#: doc/classes/Node.xml:862
msgid "Emitted after the node exits the tree and is no longer active."
-msgstr ""
+msgstr "Emitido después de que el nodo sale del árbol y ya no está activo."
#: doc/classes/Node.xml:867
msgid ""
"Emitted when the node is still active but about to exit the tree. This is "
"the right place for de-initialization (or a \"destructor\", if you will)."
msgstr ""
+"Emitido cuando el nodo está todavía activo pero a punto de salir del árbol. "
+"Este es el lugar adecuado para la des-inicialización (o un \"destructor\", "
+"si se quiere)."
#: doc/classes/Node.xml:873
msgid "Notification received when the node enters a [SceneTree]."
-msgstr ""
+msgstr "Notificación recibida cuando el nodo entra en un [SceneTree]."
#: doc/classes/Node.xml:876
msgid "Notification received when the node is about to exit a [SceneTree]."
msgstr ""
+"Notificación recibida cuando el nodo está a punto de salir de un [SceneTree]."
#: doc/classes/Node.xml:879
msgid "Notification received when the node is moved in the parent."
-msgstr ""
+msgstr "Notificación recibida cuando el nodo se mueve en el padre."
#: doc/classes/Node.xml:882
msgid "Notification received when the node is ready. See [method _ready]."
msgstr ""
+"Notificación recibida cuando el nodo esté listo. Véase [method _ready]."
#: doc/classes/Node.xml:885
msgid "Notification received when the node is paused."
-msgstr ""
+msgstr "Notificación recibida cuando el nodo está en pausa."
#: doc/classes/Node.xml:888
msgid "Notification received when the node is unpaused."
-msgstr ""
+msgstr "Notificación recibida cuando el nodo no está en pausa."
#: doc/classes/Node.xml:891
msgid ""
"Notification received every frame when the physics process flag is set (see "
"[method set_physics_process])."
msgstr ""
+"Notificación recibida en cada fotograma cuando se fija el indicador de "
+"proceso físico (ver [method set_physics_process])."
#: doc/classes/Node.xml:894
msgid ""
"Notification received every frame when the process flag is set (see [method "
"set_process])."
msgstr ""
+"Notificación recibida en cada fotograma cuando se fija el indicador de "
+"proceso (véase [method set_process])."
#: doc/classes/Node.xml:897
msgid ""
"Notification received when a node is set as a child of another node.\n"
"[b]Note:[/b] This doesn't mean that a node entered the [SceneTree]."
msgstr ""
+"Notificación recibida cuando un nodo se establece como hijo de otro nodo.\n"
+"[b]Nota:[/b] Esto no significa que un nodo haya entrado en el [SceneTree]."
#: doc/classes/Node.xml:901
msgid ""
"Notification received when a node is unparented (parent removed it from the "
"list of children)."
msgstr ""
+"Notificación recibida cuando un nodo no tiene padre (el padre o la madre lo "
+"ha eliminado de la lista de hijos)."
#: doc/classes/Node.xml:904
msgid "Notification received when the node is instanced."
-msgstr ""
+msgstr "Notificación recibida cuando el nodo es instanciado."
#: doc/classes/Node.xml:907
msgid "Notification received when a drag begins."
-msgstr ""
+msgstr "Notificación recibida cuando comienza un arrastre."
#: doc/classes/Node.xml:910
msgid "Notification received when a drag ends."
-msgstr ""
+msgstr "Notificación recibida cuando termina un arrastre."
#: doc/classes/Node.xml:913
msgid "Notification received when the node's [NodePath] changed."
-msgstr ""
+msgstr "Notificación recibida cuando el [NodePath] del nodo cambió."
#: doc/classes/Node.xml:916
msgid ""
"Notification received every frame when the internal process flag is set (see "
"[method set_process_internal])."
msgstr ""
+"Notificación recibida en cada fotograma cuando se fija el indicador de "
+"proceso interno (véase [method set_process_internal])."
#: doc/classes/Node.xml:919
msgid ""
"Notification received every frame when the internal physics process flag is "
"set (see [method set_physics_process_internal])."
msgstr ""
+"Notificación recibida en cada fotograma cuando se fija el flag de proceso de "
+"física interna (véase [method set_physics_process_internal])."
#: doc/classes/Node.xml:922
msgid ""
"Notification received from the OS when the mouse enters the game window.\n"
"Implemented on desktop and web platforms."
msgstr ""
+"Notificación recibida del sistema operativo cuando el ratón entra en la "
+"ventana del juego.\n"
+"Implementado en plataformas de escritorio y web."
#: doc/classes/Node.xml:926
msgid ""
"Notification received from the OS when the mouse leaves the game window.\n"
"Implemented on desktop and web platforms."
msgstr ""
+"Notificación recibida del sistema operativo cuando el ratón sale de la "
+"ventana del juego.\n"
+"Implementado en plataformas de escritorio y web."
#: doc/classes/Node.xml:930
msgid ""
-"Notification received from the OS when the game window is focused.\n"
-"Implemented on all platforms."
+"Notification received from the OS when the node's parent [Window] is "
+"focused. This may be a change of focus between two windows of the same "
+"engine instance, or from the OS desktop or a third-party application to a "
+"window of the game (in which case [constant "
+"NOTIFICATION_APPLICATION_FOCUS_IN] is also emitted)."
msgstr ""
-#: doc/classes/Node.xml:934
+#: doc/classes/Node.xml:933
msgid ""
-"Notification received from the OS when the game window is unfocused.\n"
-"Implemented on all platforms."
+"Notification received from the OS when the node's parent [Window] is "
+"defocused. This may be a change of focus between two windows of the same "
+"engine instance, or from a window of the game to the OS desktop or a third-"
+"party application (in which case [constant "
+"NOTIFICATION_APPLICATION_FOCUS_OUT] is also emitted)."
msgstr ""
-#: doc/classes/Node.xml:938
+#: doc/classes/Node.xml:936
msgid ""
"Notification received from the OS when a close request is sent (e.g. closing "
"the window with a \"Close\" button or [kbd]Alt + F4[/kbd]).\n"
"Implemented on desktop platforms."
msgstr ""
+"Notificación recibida del sistema operativo cuando se envía una solicitud de "
+"cierre (por ejemplo, cerrando la ventana con un botón de \"Cerrar\" o "
+"[kbd]Alt + F4[/kbd]).\n"
+"Implementado en plataformas de escritorio."
-#: doc/classes/Node.xml:942
+#: doc/classes/Node.xml:940
msgid ""
"Notification received from the OS when a go back request is sent (e.g. "
"pressing the \"Back\" button on Android).\n"
"Specific to the Android platform."
msgstr ""
+"Notificación recibida del sistema operativo cuando se envía una solicitud de "
+"retroceso (por ejemplo, pulsando el botón \"Back\" en Android).\n"
+"Específico de la plataforma Android."
-#: doc/classes/Node.xml:975
+#: doc/classes/Node.xml:981
msgid ""
"Inherits pause mode from the node's parent. For the root node, it is "
"equivalent to [constant PAUSE_MODE_STOP]. Default."
msgstr ""
+"Heredó el modo de pausa del padre del nodo. Para el nodo raíz, es "
+"equivalente a [constant PAUSE_MODE_STOP]. Por defecto."
-#: doc/classes/Node.xml:978
+#: doc/classes/Node.xml:984
msgid "Stops processing when the [SceneTree] is paused."
-msgstr ""
+msgstr "Detiene el procesamiento cuando el [SceneTree] está en pausa."
-#: doc/classes/Node.xml:981
+#: doc/classes/Node.xml:987
msgid "Continue to process regardless of the [SceneTree] pause state."
-msgstr ""
+msgstr "Continúe el proceso sin importar el estado de pausa de [SceneTree]."
-#: doc/classes/Node.xml:984
+#: doc/classes/Node.xml:990
msgid "Duplicate the node's signals."
-msgstr ""
+msgstr "Duplica las señales del nodo."
-#: doc/classes/Node.xml:987
+#: doc/classes/Node.xml:993
msgid "Duplicate the node's groups."
-msgstr ""
+msgstr "Duplica los grupos del nodo."
-#: doc/classes/Node.xml:990
+#: doc/classes/Node.xml:996
msgid "Duplicate the node's scripts."
-msgstr ""
+msgstr "Duplica los scripts del nodo."
-#: doc/classes/Node.xml:993
+#: doc/classes/Node.xml:999
msgid ""
"Duplicate using instancing.\n"
"An instance stays linked to the original so when the original changes, the "
"instance changes too."
msgstr ""
+"Duplicar usando instancias.\n"
+"Una instancia permanece ligado al original, así que cuando el original "
+"cambia, la instancia también cambia."
#: doc/classes/Node2D.xml:4
msgid ""
"A 2D game object, inherited by all 2D-related nodes. Has a position, "
"rotation, scale, and Z index."
msgstr ""
+"Un objeto de juego en 2D, heredado por todos los nodos relacionados con el "
+"2D. Tiene una posición, rotación, escala e índice Z."
#: doc/classes/Node2D.xml:7
msgid ""
@@ -34422,29 +43946,36 @@ msgid ""
"Node2D as a parent node to move, scale and rotate children in a 2D project. "
"Also gives control of the node's render order."
msgstr ""
+"Un objeto de juego 2D, con una transformada (posición, rotación y escala). "
+"Todos los nodos 2D, incluyendo los objetos de física y los sprites, heredan "
+"de Node2D. Utiliza Node2D como nodo padre para mover, escalar y rotar a los "
+"niños en un proyecto 2D. También da control del orden de renderización del "
+"nodo."
#: doc/classes/Node2D.xml:19
msgid "Multiplies the current scale by the [code]ratio[/code] vector."
-msgstr ""
+msgstr "Multiplica la escala actual por el vector [code]ratio[/code]."
#: doc/classes/Node2D.xml:28
msgid ""
"Returns the angle between the node and the [code]point[/code] in radians."
-msgstr ""
+msgstr "Devuelve el ángulo entre el nodo y el [code]point[/code] en radianes."
#: doc/classes/Node2D.xml:37
msgid "Returns the [Transform2D] relative to this node's parent."
-msgstr ""
+msgstr "Devuelve el [Transform2D] relativo al padre de este nodo."
#: doc/classes/Node2D.xml:46
msgid "Adds the [code]offset[/code] vector to the node's global position."
-msgstr ""
+msgstr "Añade el vector [code]offset[/code] a la posición global del nodo."
#: doc/classes/Node2D.xml:55
msgid ""
"Rotates the node so it points towards the [code]point[/code], which is "
"expected to use global coordinates."
msgstr ""
+"Gira el nodo para que apunte hacia el [code]punto[/code], que se espera que "
+"utilice coordenadas globales."
#: doc/classes/Node2D.xml:66
msgid ""
@@ -34452,6 +43983,9 @@ msgid ""
"_process]'s [code]delta[/code]. If [code]scaled[/code] is [code]false[/"
"code], normalizes the movement."
msgstr ""
+"Aplica una traducción local en el eje X del nodo basada en la [code]delta[/"
+"code] del [method Node._process]. Si [code]scaled[/code] es [code]false[/"
+"code], normaliza el movimiento."
#: doc/classes/Node2D.xml:77
msgid ""
@@ -34459,12 +43993,16 @@ msgid ""
"_process]'s [code]delta[/code]. If [code]scaled[/code] is [code]false[/"
"code], normalizes the movement."
msgstr ""
+"Aplica una traducción local en el eje Y del nodo basada en el [method Node."
+"_process]'s [code]delta[/code]. Si [code]scaled[/code] es [code]false[/"
+"code], normaliza el movimiento."
#: doc/classes/Node2D.xml:86
msgid ""
"Applies a rotation to the node, in radians, starting from its current "
"rotation."
msgstr ""
+"Aplica una rotación al nodo, en radianes, a partir de su rotación actual."
#: doc/classes/Node2D.xml:95
msgid ""
@@ -34475,6 +44013,13 @@ msgid ""
"applying it to a node's own position will give an incorrect result, as it "
"will incorporate the node's own transformation into its global position."
msgstr ""
+"Transforma la posición local proporcionada en una posición en el espacio de "
+"coordenadas globales. Se espera que la entrada sea local en relación con el "
+"[Node2D] al que se llama. Por ejemplo, aplicar este método a las posiciones "
+"de los nodos hijos transformará correctamente sus posiciones en el espacio "
+"de coordenadas globales, pero aplicarlo a la propia posición de un nodo dará "
+"un resultado incorrecto, ya que incorporará la propia transformación del "
+"nodo en su posición global."
#: doc/classes/Node2D.xml:104
msgid ""
@@ -34483,51 +44028,57 @@ msgid ""
"g. It is appropriate for determining the positions of child nodes, but it is "
"not appropriate for determining its own position relative to its parent."
msgstr ""
+"Transforma la posición global proporcionada en una posición en el espacio de "
+"coordenadas locales. La salida será local en relación con el [Node2D] al que "
+"se llama. Por ejemplo, es apropiado para determinar las posiciones de los "
+"nodos hijos, pero no es apropiado para determinar su propia posición en "
+"relación con su padre."
#: doc/classes/Node2D.xml:113
msgid ""
"Translates the node by the given [code]offset[/code] in local coordinates."
msgstr ""
+"Traduce el nodo por el [code]offset[/code] dado en coordenadas locales."
#: doc/classes/Node2D.xml:119
msgid "Global position."
-msgstr ""
+msgstr "Posición global."
#: doc/classes/Node2D.xml:122
msgid "Global rotation in radians."
-msgstr ""
+msgstr "Rotación global en radianes."
#: doc/classes/Node2D.xml:125
msgid "Global rotation in degrees."
-msgstr ""
+msgstr "Rotación global en grados."
#: doc/classes/Node2D.xml:128
msgid "Global scale."
-msgstr ""
+msgstr "Escala global."
#: doc/classes/Node2D.xml:131
msgid "Global [Transform2D]."
-msgstr ""
+msgstr "[Transform2D] Global."
#: doc/classes/Node2D.xml:134
msgid "Position, relative to the node's parent."
-msgstr ""
+msgstr "Posición, relativa al padre del nodo."
#: doc/classes/Node2D.xml:137
msgid "Rotation in radians, relative to the node's parent."
-msgstr ""
+msgstr "Rotación en radianes, en relación con el padre del nodo."
#: doc/classes/Node2D.xml:140
msgid "Rotation in degrees, relative to the node's parent."
-msgstr ""
+msgstr "Rotación en grados, en relación con el padre del nodo."
#: doc/classes/Node2D.xml:143
msgid "The node's scale. Unscaled value: [code](1, 1)[/code]."
-msgstr ""
+msgstr "La escala del nodo. Valor no escalado: [code](1, 1)[/code]."
#: doc/classes/Node2D.xml:150
msgid "Local [Transform2D]."
-msgstr ""
+msgstr "[Transform2D] Local ."
#: doc/classes/Node2D.xml:153
msgid ""
@@ -34535,16 +44086,23 @@ msgid ""
"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."
msgstr ""
+"Si [code]true[/code], el índice Z del nodo es relativo al índice Z de su "
+"padre. Si el índice Z de este nodo es 2 y el índice Z efectivo de su padre "
+"es 3, entonces el índice Z efectivo de este nodo será 2 + 3 = 5."
#: doc/classes/Node2D.xml:156
msgid ""
"Z index. Controls the order in which the nodes render. A node with a higher "
"Z index will display in front of others."
msgstr ""
+"Ãndice Z. Controla el orden en el que los nodos se renderizan. Un nodo con "
+"un índice Z más alto se mostrará delante de los demás."
#: doc/classes/Node3D.xml:4
msgid "Most basic 3D game object, parent of all 3D-related nodes."
msgstr ""
+"El objeto de juego 3D más básico, padre de todos los nodos relacionados con "
+"el 3D."
#: doc/classes/Node3D.xml:7
msgid ""
@@ -34561,76 +44119,107 @@ msgid ""
"parameters must have angles specified as [i]radians[/i]. To convert degrees "
"to radians, use [method @GDScript.deg2rad]."
msgstr ""
+"El objeto más básico de un juego en 3D, con un [Transform] 3D y ajustes de "
+"visibilidad. Todos los demás objetos de juegos 3D heredan de Node3D. Utiliza "
+"[Node3D] como nodo padre para mover, escalar, rotar y mostrar/esconder a los "
+"hijos en un proyecto 3D.\n"
+"Las operaciones de afinación (rotar, escalar, traducir) ocurren en el "
+"sistema de coordenadas locales del padre, a menos que el objeto [Node3D] se "
+"establezca como de nivel superior. Las operaciones afines en este sistema de "
+"coordenadas corresponden a operaciones afines directas en la transformación "
+"de [Node3D]. La palabra local a continuación se refiere a este sistema de "
+"coordenadas. El sistema de coordenadas que está unido al propio objeto "
+"[Node3D] se denomina sistema de coordenadas objeto-local.\n"
+"[b]Nota:[/b] A menos que se especifique lo contrario, todos los métodos que "
+"tienen parámetros de ángulo deben tener ángulos especificados como "
+"[i]radianes[/i]. Para convertir los grados en radianes, utilice [método "
+"@GDScript.deg2rad]."
#: doc/classes/Node3D.xml:12
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/introduction_to_3d.html"
msgstr ""
+"https://docs.godotengine.org/es/latest/tutorials/3d/introduction_to_3d.html"
#: doc/classes/Node3D.xml:26
msgid ""
"Returns the parent [Node3D], or an empty [Object] if no parent exists or "
"parent is not of type [Node3D]."
msgstr ""
+"Devuelve el padre [Node3D], o un [Object] vacío si no existe un padre o el "
+"padre no es de tipo [Node3D]."
#: doc/classes/Node3D.xml:33
msgid ""
"Returns the current [World3D] resource this [Node3D] node is registered to."
msgstr ""
+"Devuelve el recurso actual [World3D] al que este nodo [Node3D] está "
+"registrado."
#: doc/classes/Node3D.xml:44
msgid ""
"Rotates the global (world) transformation around axis, a unit [Vector3], by "
"specified angle in radians. The rotation axis is in global coordinate system."
msgstr ""
+"Gira la transformación global (del mundo) alrededor del eje, una unidad "
+"[Vector3], por un ángulo especificado en radianes. El eje de rotación está "
+"en el sistema de coordenadas globales."
#: doc/classes/Node3D.xml:53
msgid ""
"Scales the global (world) transformation by the given [Vector3] scale "
"factors."
msgstr ""
+"Escala la transformación global (del mundo) por los factores de escala "
+"[Vector3] dados."
#: doc/classes/Node3D.xml:62
msgid ""
"Moves the global (world) transformation by [Vector3] offset. The offset is "
"in global coordinate system."
msgstr ""
+"Mueve la transformación global (del mundo) por el desplazamiento del "
+"[Vector3]. El desplazamiento está en el sistema de coordenadas globales."
#: doc/classes/Node3D.xml:69
msgid ""
"Disables rendering of this node. Changes [member visible] to [code]false[/"
"code]."
msgstr ""
+"Desactiva la representación de este nodo. Cambia [member visible] por "
+"[code]false[/code]."
#: doc/classes/Node3D.xml:76
msgid ""
"Returns whether node notifies about its local transformation changes. "
"[Node3D] will not propagate this by default."
msgstr ""
+"Devuelve si el nodo notifica sobre sus cambios de transformación local. "
+"[Nodo3D] no propagará esto por defecto."
#: doc/classes/Node3D.xml:83
msgid ""
"Returns whether this node uses a scale of [code](1, 1, 1)[/code] or its "
"local transformation scale."
msgstr ""
+"Devuelve si este nodo utiliza una escala de [code](1, 1, 1)[/code] o su "
+"escala de transformación local."
#: doc/classes/Node3D.xml:90
msgid ""
"Returns whether this node is set as Toplevel, that is whether it ignores its "
"parent nodes transformations."
msgstr ""
+"Devuelve si este nodo se establece como Toplevel, es decir, si ignora las "
+"transformaciones de sus nodos padres."
#: doc/classes/Node3D.xml:97
msgid ""
"Returns whether the node notifies about its global and local transformation "
"changes. [Node3D] will not propagate this by default."
msgstr ""
-
-#: doc/classes/Node3D.xml:104
-msgid ""
-"Returns whether the node is visible, taking into consideration that its "
-"parents visibility."
-msgstr ""
+"Devuelve si el nodo notifica sobre sus cambios de transformación global y "
+"local. [Nodo3D] no propagará esto por defecto."
#: doc/classes/Node3D.xml:115
msgid ""
@@ -34641,6 +44230,13 @@ msgid ""
"perpendicular to both the [code]target[/code] and [code]up[/code] vectors.\n"
"Operations take place in global space."
msgstr ""
+"Se rota a sí mismo para que el eje -Z local apunte hacia la posición del "
+"[code]target[/code].\n"
+"La transformación girará primero alrededor del vector [code]up[/code] dado, "
+"y luego se alineará completamente con el objetivo mediante una nueva "
+"rotación alrededor de un eje perpendicular tanto al vector [code]target[/"
+"code] como al [code]up[/code].\n"
+"Las operaciones tienen lugar en el espacio global."
#: doc/classes/Node3D.xml:130
msgid ""
@@ -34648,6 +44244,9 @@ msgid ""
"itself to point toward the [code]target[/code] as per [method look_at]. "
"Operations take place in global space."
msgstr ""
+"Mueve el nodo a la posición [code]position[/code] especificada, y luego se "
+"rota para apuntar hacia el [code]target[/code] según el [method look_at]. "
+"Las operaciones tienen lugar en el espacio global."
#: doc/classes/Node3D.xml:137
msgid ""
@@ -34655,42 +44254,57 @@ msgid ""
"its rotation and translation by performing Gram-Schmidt orthonormalization "
"on this node's [Transform]."
msgstr ""
+"Restablece las transformaciones de este nodo (como escala, sesgo y "
+"conicidad) preservando su rotación y traslación al realizar la "
+"ortonormalización de Gram-Schmidt en la [Transform] de este nodo."
#: doc/classes/Node3D.xml:148
msgid ""
"Rotates the local transformation around axis, a unit [Vector3], by specified "
"angle in radians."
msgstr ""
+"Gira la transformación local alrededor del eje, una unidad [Vector3], por un "
+"ángulo especificado en radianes."
#: doc/classes/Node3D.xml:159
msgid ""
"Rotates the local transformation around axis, a unit [Vector3], by specified "
"angle in radians. The rotation axis is in object-local coordinate system."
msgstr ""
+"Gira la transformación local alrededor del eje, una unidad [Vector3], por un "
+"ángulo especificado en radianes. El eje de rotación está en el sistema de "
+"coordenadas locales del objeto."
#: doc/classes/Node3D.xml:168
msgid "Rotates the local transformation around the X axis by angle in radians."
msgstr ""
+"Gira la transformación local alrededor del eje X por el ángulo en radianes."
#: doc/classes/Node3D.xml:177
msgid "Rotates the local transformation around the Y axis by angle in radians."
msgstr ""
+"Gira la transformación local alrededor del eje Y por el ángulo en radianes."
#: doc/classes/Node3D.xml:186
msgid "Rotates the local transformation around the Z axis by angle in radians."
msgstr ""
+"Gira la transformación local alrededor del eje Z por el ángulo en radianes."
#: doc/classes/Node3D.xml:195
msgid ""
"Scales the local transformation by given 3D scale factors in object-local "
"coordinate system."
msgstr ""
+"Escala la transformación local mediante factores de escala tridimensionales "
+"dados en el sistema de coordenadas objeto-local."
#: doc/classes/Node3D.xml:204
msgid ""
"Makes the node ignore its parents transformations. Node transformations are "
"only in global space."
msgstr ""
+"Hace que el nodo ignore las transformaciones de sus padres. Las "
+"transformaciones del nodo sólo se dan en el espacio global."
#: doc/classes/Node3D.xml:213
msgid ""
@@ -34698,48 +44312,65 @@ msgid ""
"transformation scale. Changes to the local transformation scale are "
"preserved."
msgstr ""
+"Establece si el nodo utiliza una escala de [code](1, 1, 1)[/code] o su "
+"escala de transformación local. Los cambios en la escala de transformación "
+"local se conservan."
#: doc/classes/Node3D.xml:220
msgid ""
"Reset all transformations for this node (sets its [Transform] to the "
"identity matrix)."
msgstr ""
+"Reinicia todas las transformaciones para este nodo (establece su [Transform] "
+"a la matriz de identidad)."
#: doc/classes/Node3D.xml:229
msgid ""
"Sets whether the node ignores notification that its transformation (global "
"or local) changed."
msgstr ""
+"Establece si el nodo ignora la notificación de que su transformación (global "
+"o local) ha cambiado."
#: doc/classes/Node3D.xml:238
msgid ""
"Sets whether the node notifies about its local transformation changes. "
"[Node3D] will not propagate this by default."
msgstr ""
+"Establece si el nodo notifica sobre sus cambios de transformación local. "
+"[Nodo3D] no propagará esto por defecto."
#: doc/classes/Node3D.xml:247
msgid ""
"Sets whether the node notifies about its global and local transformation "
"changes. [Node3D] will not propagate this by default."
msgstr ""
+"Establece si el nodo notifica sobre sus cambios de transformación global y "
+"local. [Node3D] no propagará esto por defecto."
#: doc/classes/Node3D.xml:254
msgid ""
"Enables rendering of this node. Changes [member visible] to [code]true[/"
"code]."
msgstr ""
+"Permite la representación de este nodo. Cambia [member visible] a "
+"[code]true[/code]."
#: doc/classes/Node3D.xml:263
msgid ""
"Transforms [code]local_point[/code] from this node's local space to world "
"space."
msgstr ""
+"Transforma [code]local_point[/code] del espacio local de este nodo al "
+"espacio mundial."
#: doc/classes/Node3D.xml:272
msgid ""
"Transforms [code]global_point[/code] from world space to this node's local "
"space."
msgstr ""
+"Transforma [code]global_point[/code] del espacio mundial al espacio local de "
+"este nodo."
#: doc/classes/Node3D.xml:281
msgid ""
@@ -34749,25 +44380,34 @@ msgid ""
"offset of [code](2, 0, 0)[/code] would actually add 20 ([code]2 * 10[/code]) "
"to the X coordinate."
msgstr ""
+"Cambia la posición del nodo por el desplazamiento dado [Vector3].\n"
+"Observe que la traslación [code]offset[/code] se ve afectada por la escala "
+"del nodo, de modo que si se escalara por ejemplo por [code](10, 1, 1)[/"
+"code], una traslación por un offset de [code](2, 0, 0)[/code] añadiría en "
+"realidad 20 ([code]2 * 10[/code]) a la coordenada X."
#: doc/classes/Node3D.xml:291
msgid ""
"Changes the node's position by the given offset [Vector3] in local space."
msgstr ""
+"Cambia la posición del nodo por el desplazamiento dado [Vector3] en el "
+"espacio local."
#: doc/classes/Node3D.xml:298
msgid "Updates the [Node3DGizmo] of this node."
-msgstr ""
+msgstr "Actualiza el [Nodo3DGizmo] de este nodo."
#: doc/classes/Node3D.xml:304
msgid ""
"The [Node3DGizmo] for this node. Used for example in [EditorNode3DGizmo] as "
"custom visualization and editing handles in Editor."
msgstr ""
+"El [Node3DGizmo] para este nodo. Usado por ejemplo en [EditorNode3DGizmo] "
+"como visualización personalizada y manejadores de edición en el Editor."
#: doc/classes/Node3D.xml:307
msgid "World3D space (global) [Transform] of this node."
-msgstr ""
+msgstr "World3D espacio (global) [Transform] de este nodo."
#: doc/classes/Node3D.xml:310
msgid ""
@@ -34781,32 +44421,47 @@ msgid ""
"point numbers. Therefore, applying affine operations on the rotation \"vector"
"\" is not meaningful."
msgstr ""
+"Parte de la rotación de la transformación local en radianes, especificada en "
+"términos de ángulos YXZ-Euler en el formato (ángulo X, ángulo Y, ángulo Z).\n"
+"[b]Nota:[/b] En el sentido matemático, la rotación es una matriz y no un "
+"vector. Los tres ángulos de Euler, que son los tres parámetros "
+"independientes de la parametrización del ángulo de Euler de la matriz de "
+"rotación, se almacenan en una estructura de datos [Vector3] no porque la "
+"rotación sea un vector, sino sólo porque el [Vector3] existe como una "
+"estructura de datos conveniente para almacenar 3 números reales. Por lo "
+"tanto, la aplicación de operaciones afines en el \"vector\" de rotación no "
+"es significativa."
#: doc/classes/Node3D.xml:314
msgid ""
"Rotation part of the local transformation in degrees, specified in terms of "
"YXZ-Euler angles in the format (X angle, Y angle, Z angle)."
msgstr ""
+"Parte de la rotación de la transformación local en grados, especificada en "
+"términos de ángulos YXZ-Euler en el formato (ángulo X, ángulo Y, ángulo Z)."
#: doc/classes/Node3D.xml:317
msgid "Scale part of the local transformation."
-msgstr ""
+msgstr "Parte de Escala de la transformación local."
#: doc/classes/Node3D.xml:320
msgid "Local space [Transform] of this node, with respect to the parent node."
-msgstr ""
+msgstr "El espacio local [Transform] de este nodo, con respecto al nodo padre."
#: doc/classes/Node3D.xml:323
msgid "Local translation of this node."
-msgstr ""
+msgstr "Traducción local de este nodo."
#: doc/classes/Node3D.xml:326
-msgid "If [code]true[/code], this node is drawn."
+msgid ""
+"If [code]true[/code], this node is drawn. The node is only visible if all of "
+"its antecedents are visible as well (in other words, [method "
+"is_visible_in_tree] must return [code]true[/code])."
msgstr ""
#: doc/classes/Node3D.xml:332
msgid "Emitted when node visibility changes."
-msgstr ""
+msgstr "Emitido cuando cambia la visibilidad del nodo."
#: doc/classes/Node3D.xml:338
msgid ""
@@ -34815,26 +44470,36 @@ msgid ""
"In order for [constant NOTIFICATION_TRANSFORM_CHANGED] to work, users first "
"need to ask for it, with [method set_notify_transform]."
msgstr ""
+"Los nodos de Node3D reciben esta notificación cuando su transformación "
+"global cambia. Esto significa que o bien el nodo actual o bien un nodo padre "
+"cambió su transformación.\n"
+"Para que [constant NOTIFICATION_TRANSFORM_CHANGED] funcione, los usuarios "
+"primero tienen que pedirlo, con [method set_notify_transform]."
#: doc/classes/Node3D.xml:342
msgid ""
"Node3D nodes receives this notification when they are registered to new "
"[World3D] resource."
msgstr ""
+"Los nodos de Node3D reciben esta notificación cuando se registran en el "
+"nuevo recurso [World3D]."
#: doc/classes/Node3D.xml:345
msgid ""
"Node3D nodes receives this notification when they are unregistered from "
"current [World3D] resource."
msgstr ""
+"Los nodos de Node3D reciben esta notificación cuando no están registrados en "
+"el recurso actual [World3D]."
#: doc/classes/Node3D.xml:348
msgid "Node3D nodes receives this notification when their visibility changes."
msgstr ""
+"Los nodos de Node3D reciben esta notificación cuando su visibilidad cambia."
#: doc/classes/NodePath.xml:4
msgid "Pre-parsed scene tree path."
-msgstr ""
+msgstr "Camino del árbol de la escena pre-parseado."
#: doc/classes/NodePath.xml:7
msgid ""
@@ -34867,6 +44532,36 @@ msgid ""
"@\"/root/MyAutoload\" # If you have an autoloaded node or scene.\n"
"[/codeblock]"
msgstr ""
+"Una ruta relativa o absoluta pre-parseada en un árbol de escena, para ser "
+"usada con [method Node.get_node] y funciones similares. Puede hacer "
+"referencia a un nodo, a un recurso dentro de un nodo o a una propiedad de un "
+"nodo o recurso. Por ejemplo, [code]\"Path2D/PathFollow2D/Sprite2D:texture:"
+"size\"[/code] se referiría a la propiedad [code]size[/code] del recurso "
+"[code]texture[/code] en el nodo llamado [code]\"Sprite2D\"[/code] que es "
+"hijo de los otros nodos nombrados en el camino.\n"
+"Normalmente sólo pasarás una string a [method Node.get_node] y se convertirá "
+"automáticamente, pero puede que ocasionalmente quieras analizar un camino "
+"por adelantado con [NodePath] o la sintaxis literal [code]@\"path\"[/code]. "
+"Exportar una variable [NodePath] te dará un widget de selección de nodos en "
+"el panel de propiedades del editor, que a menudo puede ser útil.\n"
+"Una [NodePath] está compuesta por una lista de nombres de nodos separados "
+"por barras (como una ruta de sistema de archivos) y una lista opcional de "
+"\"subnombres\" separados por dos puntos que pueden ser recursos o "
+"propiedades.\n"
+"Algunos ejemplos de NodePaths son los siguientes:\n"
+"[bloque de código]\n"
+"# Sin barra inclinada significa que es relativa al nodo actual.\n"
+"@\"A\" # Hijo inmediato A\n"
+"@\"A/B\" # El hijo de A B\n"
+"@\".\" # El nodo actual.\n"
+"@\"..\" # El nodo padre.\n"
+"@\"../C\" # El nodo hermano C.\n"
+"# Una barra inclinada significa que es absoluta del Ãrbol de Escenas.\n"
+"@\"/root\" # Equivalente a get_tree().get_root().\n"
+"@\"/root/Main\" # Si el nodo raíz de tu escena principal se llamara \"Main"
+"\".\n"
+"@\"/root/MyAutoload\" # Si tienes un nodo o escena autocargada.\n"
+"[/codeblock]"
#: doc/classes/NodePath.xml:33
msgid ""
@@ -34895,6 +44590,32 @@ msgid ""
"\"/root/Level/Path2D\"\n"
"[/codeblock]"
msgstr ""
+"Crea un NodePath a partir de una string, por ejemplo, [code]\"Path2D/"
+"PathFollow2D/Sprite2D:texture:size\"[/code]. Un camino es absoluto si "
+"comienza con una barra. Los caminos absolutos sólo son válidos en el árbol "
+"de escenas global, no dentro de las escenas individuales. En un camino "
+"relativo, [code]\".\"[/code] y [code]\"..\"[/code] indican el nodo actual y "
+"su padre.\n"
+"Los \"subnombres\" incluidos opcionalmente después de la ruta al nodo "
+"objetivo pueden apuntar a recursos o propiedades, y también pueden "
+"anidarse.\n"
+"Ejemplos de NodePaths válidos (suponiendo que esos nodos existan y tengan "
+"los recursos o propiedades referenciados):\n"
+"[codeblock]\n"
+"# Apunta al nodo Sprite2D\n"
+"\"Path2D/PathFollow2D/Sprite2D\"\n"
+"# Apunta al nodo Sprite2D y su recurso de \"textura\".\n"
+"# get_node() recuperaría \"Sprite2D\", mientras que get_node_and_resource()\n"
+"# recuperaría tanto el nodo Sprite2D como el recurso de \"textura\".\n"
+"\"Path2D/PathFollow2D/Sprite2D:texture\"\n"
+"# Apunta al nodo Sprite2D y su propiedad de \"posición\".\n"
+"\"Path2D/PathFollow2D/Sprite2D:position\"\n"
+"# Apunta al nodo Sprite2D y al componente \"x\" de su propiedad \"posición"
+"\".\n"
+"\"Path2D/PathFollow2D/Sprite2D:position:x\"\n"
+"# Camino absoluto (desde la \"raíz\")\n"
+"\"/root/Level/Path2D\"\n"
+"[/codeblock]"
#: doc/classes/NodePath.xml:56
msgid ""
@@ -34911,6 +44632,18 @@ msgid ""
"print(property_path) # :position:x\n"
"[/codeblock]"
msgstr ""
+"Devuelve un camino de nodos con un carácter de dos puntos ([code]:[/code]) "
+"preparado, transformándolo en un camino de propiedades puras sin nombre de "
+"nodo (por defecto para resolver desde el nodo actual).\n"
+"[codeblock]\n"
+"# Esto será analizado como una ruta de nodo a la propiedad \"x\" en el nodo "
+"\"posición\".\n"
+"var node_path = NodePath(\"position:x\")\n"
+"# Esto será analizado como una ruta de nodo al componente \"x\" de la "
+"propiedad \"position\" en el nodo actual\n"
+"var ruta_propiedad = node_path. get_as_property_path()\n"
+"print(ruta_propiedad) # :position:x\n"
+"[/codeblock]"
#: doc/classes/NodePath.xml:70
msgid ""
@@ -34921,6 +44654,14 @@ msgid ""
"print(nodepath.get_concatenated_subnames()) # texture:load_path\n"
"[/codeblock]"
msgstr ""
+"Devuelve todos los subnombres concatenados con un carácter de dos puntos "
+"([code]:[/code]) como separador, es decir, el lado derecho del primer punto "
+"del recorrido de un nodo.\n"
+"[codeblock]\n"
+"var ruta_nodo = NodePath(\"Path2D/PathFollow2D/Sprite2D:texture:load_path"
+"\")\n"
+"print(ruta_nodo.get_concatenated_subnames()) #textura:texture:load_path\n"
+"[/codebloque]"
#: doc/classes/NodePath.xml:83
msgid ""
@@ -34933,6 +44674,14 @@ msgid ""
"print(node_path.get_name(2)) # Sprite\n"
"[/codeblock]"
msgstr ""
+"Obtiene el nombre del nodo indicado por [code]idx[/code] (0 a [method "
+"get_name_count]).\n"
+"[codeblock]\n"
+"var ruta_nodo = NodePath(\"Path2D/PathFollow2D/Sprite2D\")\n"
+"print(ruta_nodo.get_name(0)) # Path2D\n"
+"print(ruta_nodo.get_name(1)) # PathFollow2D\n"
+"print(ruta_nodo.get_name(2)) # Sprite\n"
+"[/codebloque]"
#: doc/classes/NodePath.xml:96
msgid ""
@@ -34940,6 +44689,9 @@ msgid ""
"get_subname_count]) are not included.\n"
"For example, [code]\"Path2D/PathFollow2D/Sprite2D\"[/code] has 3 names."
msgstr ""
+"Obtiene el número de nombres de los nodos que componen el camino. Los "
+"subnombres (ver [method get_subname_count]) no están incluidos.\n"
+"Por ejemplo, [code]\"Path2D/PathFollow2D/Sprite2D\"[/code] tiene 3 nombres."
#: doc/classes/NodePath.xml:106
msgid ""
@@ -34952,6 +44704,14 @@ msgid ""
"print(node_path.get_subname(1)) # load_path\n"
"[/codeblock]"
msgstr ""
+"Obtiene el nombre del recurso o propiedad indicado por [code]idx[/code] (0 a "
+"[method get_subname_count]).\n"
+"[codeblock]\n"
+"var ruta_nodo = NodePath(\"Path2D/PathFollow2D/Sprite2D:textura:load_path"
+"\")\n"
+"print(ruta_nodo.get_subname(0)) # texture\n"
+"print(ruta_nodo.get_subname(1)) # load_path\n"
+"[/codeblock]"
#: doc/classes/NodePath.xml:118
msgid ""
@@ -34961,6 +44721,11 @@ msgid ""
"For example, [code]\"Path2D/PathFollow2D/Sprite2D:texture:load_path\"[/code] "
"has 2 subnames."
msgstr ""
+"Obtiene el número de nombres de recursos o propiedades (\"subnombres\") en "
+"el camino. Cada subnombre aparece después de un carácter de dos puntos "
+"([code]:[/code]) en la ruta de nodos.\n"
+"Por ejemplo, [code]\"Path2D/PathFollow2D/Sprite2D:texture:load_path\"[/code] "
+"tiene 2 subnombres."
#: doc/classes/NodePath.xml:126
msgid ""
@@ -34970,14 +44735,20 @@ msgid ""
"root\"[/code]) or autoloads (e.g. [code]\"/global\"[/code] if a \"global\" "
"autoload was registered)."
msgstr ""
+"Devuelve [code]true[/code] si la ruta del nodo es absoluta (en "
+"contraposición a la relativa), lo que significa que comienza con un carácter "
+"de barra inclinada ([code]/[/code]). Las rutas de nodo absolutas pueden "
+"utilizarse para acceder al nodo raíz ([code]\"/root\"[/code]) o a las "
+"autocargas (por ejemplo, [code]\"/global\"[/code] si se registró un "
+"autocarga \"global\")."
#: doc/classes/NodePath.xml:133
msgid "Returns [code]true[/code] if the node path is empty."
-msgstr ""
+msgstr "Devuelve [code]true[/code] si la ruta del nodo está vacía."
#: modules/opensimplex/doc_classes/NoiseTexture.xml:4
msgid "[OpenSimplexNoise] filled texture."
-msgstr ""
+msgstr "Textura rellenada [OpenSimplexNoise]."
#: modules/opensimplex/doc_classes/NoiseTexture.xml:7
msgid ""
@@ -34995,42 +44766,65 @@ msgid ""
"var image = texture.get_data()\n"
"[/codeblock]"
msgstr ""
+"Utiliza un [OpenSimplexNoise] para rellenar los datos de la textura. Puedes "
+"especificar el tamaño de la textura pero ten en cuenta que las texturas más "
+"grandes tardarán más tiempo en generarse y el ruido sin fisuras sólo "
+"funciona con texturas de tamaño cuadrado.\n"
+"NoiseTexture también puede generar texturas de mapa normal.\n"
+"La clase utiliza [Thread]s para generar los datos de la textura "
+"internamente, por lo que el [method Texture2D.get_data] puede devolver "
+"[code]null[/code] si el proceso de generación no se ha completado todavía. "
+"En ese caso, es necesario esperar a que se genere la textura antes de "
+"acceder a los datos:\n"
+"[codeblock]\n"
+"var textura = preload(\"res://ruido.tres\")\n"
+"yield(textura, \"changed\")\n"
+"var imagen = textura.get_data()\n"
+"[/codeblock]"
#: modules/opensimplex/doc_classes/NoiseTexture.xml:22
msgid ""
"If [code]true[/code], the resulting texture contains a normal map created "
"from the original noise interpreted as a bump map."
msgstr ""
+"Si [code]true[/code], la textura resultante contiene un mapa normal creado a "
+"partir del ruido original interpretado como un bump map."
#: modules/opensimplex/doc_classes/NoiseTexture.xml:25
msgid ""
"Strength of the bump maps used in this texture. A higher value will make the "
"bump maps appear larger while a lower value will make them appear softer."
msgstr ""
+"La fuerza de los bump maps usados en esta textura. Un valor más alto hará "
+"que los bump maps parezcan más grandes mientras que un valor más bajo los "
+"hará parecer más suaves."
#: modules/opensimplex/doc_classes/NoiseTexture.xml:28
msgid "Height of the generated texture."
-msgstr ""
+msgstr "Altura de la textura generada."
#: modules/opensimplex/doc_classes/NoiseTexture.xml:31
msgid "The [OpenSimplexNoise] instance used to generate the noise."
-msgstr ""
+msgstr "La instancia [OpenSimplexNoise] utilizada para generar el ruido."
#: modules/opensimplex/doc_classes/NoiseTexture.xml:34
msgid ""
"Whether the texture can be tiled without visible seams or not. Seamless "
"textures take longer to generate."
msgstr ""
+"Si la textura puede ser colocada en azulejos sin costuras visibles o no. Las "
+"texturas sin costuras tardan más tiempo en generarse."
#: modules/opensimplex/doc_classes/NoiseTexture.xml:37
msgid "Width of the generated texture."
-msgstr ""
+msgstr "El ancho de la textura generada."
#: doc/classes/Object.xml:4
msgid "Base class for all non built-in types."
-msgstr ""
+msgstr "Clase base para todos los tipos no integrados."
#: doc/classes/Object.xml:7
+#, fuzzy
msgid ""
"Every class which is not a built-in type inherits from this class.\n"
"You can construct Objects from scripting languages, using [code]Object.new()"
@@ -35058,18 +44852,64 @@ msgid ""
"the key exists, even if the value is [code]null[/code].\n"
"Objects also receive notifications. Notifications are a simple way to notify "
"the object about different events, so they can all be handled together. See "
-"[method _notification]."
+"[method _notification].\n"
+"[b]Note:[/b] Unlike references to a [Reference], references to an Object "
+"stored in a variable can become invalid without warning. Therefore, it's "
+"recommended to use [Reference] for data classes instead of [Object]."
+msgstr ""
+"Toda clase que no es un tipo integrado hereda de esta clase.\n"
+"Puedes construir Objetos desde lenguajes de scripting, usando [code]Object."
+"new()[/code] en GDScript, [code]new Object[/code] en C#, o el nodo "
+"\"Construct Object\" en VisualScript.\n"
+"Los objetos no administran la memoria. Si una clase hereda de Object, "
+"tendrás que eliminar manualmente las instancias de la misma. Para ello, "
+"llama al método [method free] desde tu script o elimina la instancia desde C+"
+"+.\n"
+"Algunas clases que extienden a Object añaden gestión de memoria. Este es el "
+"caso de [Reference], que cuenta las referencias y se borra a sí misma "
+"automáticamente cuando deja de estar referenciada. [Node], otro tipo "
+"fundamental, borra todos sus hijos cuando se libera de la memoria.\n"
+"Los objetos exportan propiedades, que son principalmente útiles para el "
+"almacenamiento y la edición, pero no tanto en la programación. Las "
+"propiedades se exportan en [method _get_property_list] y se manejan en "
+"[method _get] y [method _set]. Sin embargo, los lenguajes de scripting y C++ "
+"tienen medios más sencillos para exportarlas.\n"
+"La pertenencia de las propiedades puede ser probada directamente en GDScript "
+"usando [code]in[/code]:\n"
+"[codeblock]\n"
+"var nodo = Node2D.new()\n"
+"print(\"position\" in nodo) # Imprime \"True\".\n"
+"print(\"otra_propiedad\" in nodo) # Imprime \"False\".\n"
+"[/codeblock]\n"
+"El operador [code]in[/code] evaluará a [code]true[/code] siempre que la "
+"clave exista, incluso si el valor es [code]null[/code].\n"
+"Los objetos también reciben notificaciones. Las notificaciones son una forma "
+"sencilla de notificar al objeto sobre diferentes eventos, de modo que todos "
+"ellos pueden ser manejados juntos. Véase [method _notification]."
+
+#: doc/classes/Object.xml:23 doc/classes/Reference.xml:12
+#: doc/classes/Resource.xml:11
+#, fuzzy
+msgid ""
+"https://docs.godotengine.org/en/latest/getting_started/workflow/"
+"best_practices/node_alternatives.html"
msgstr ""
+"https://docs.godotengine.org/es/latest/getting_started/workflow/assets/"
+"importing_scenes.html#custom-script"
-#: doc/classes/Object.xml:30
+#: doc/classes/Object.xml:32
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method get].\n"
"Returns the given property. Returns [code]null[/code] if the [code]property[/"
"code] does not exist."
msgstr ""
+"Método virtual que puede ser anulado para personalizar el valor de retorno "
+"de [method get].\n"
+"Devuelve la propiedad dada. Devuelve [code]null[/code] si la [code]property[/"
+"code] no existe."
-#: doc/classes/Object.xml:38
+#: doc/classes/Object.xml:40
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method get_property_list].\n"
@@ -35080,12 +44920,21 @@ msgid ""
"[code]hint_string: String[/code], and [code]usage: int[/code] (see [enum "
"PropertyUsageFlags])."
msgstr ""
-
-#: doc/classes/Object.xml:47
+"Método virtual que puede ser anulado para personalizar el valor de retorno "
+"de [method get_property_list].\n"
+"Devuelve la lista de propiedades del objeto como un [Array] de "
+"diccionarios.\n"
+"El [Dictionary] de cada propiedad debe contener al menos entradas de "
+"[code]name: String[/code] y [code]type: int[/code] (ver [enum Variant."
+"Type]). Opcionalmente, también puede incluir [code]hint: int[/code] (ver "
+"[enum PropertyHint]), [code]hint_string: String[/code], y [code]usage: int[/"
+"code] (ver [enum PropertyUsageFlags])."
+
+#: doc/classes/Object.xml:49
msgid "Called when the object is initialized."
-msgstr ""
+msgstr "Se llama cuando el objeto se inicializa."
-#: doc/classes/Object.xml:56
+#: doc/classes/Object.xml:58
msgid ""
"Called whenever the object receives a notification, which is identified in "
"[code]what[/code] by a constant. The base [Object] has two constants "
@@ -35093,16 +44942,25 @@ msgid ""
"NOTIFICATION_PREDELETE], but subclasses such as [Node] define a lot more "
"notifications which are also received by this method."
msgstr ""
+"Llamado cada vez que el objeto recibe una notificación, que se identifica en "
+"[code]what[/code] por una constante. La base [Object] tiene dos constantes "
+"[constant NOTIFICATION_POSTINITIALIZE] y [constant NOTIFICATION_PREDELETE], "
+"pero subclases como [Node] definen muchas más notificaciones que también se "
+"reciben por este método."
-#: doc/classes/Object.xml:67
+#: doc/classes/Object.xml:69
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method set].\n"
"Sets a property. Returns [code]true[/code] if the [code]property[/code] "
"exists."
msgstr ""
+"Método virtual que puede ser anulado para personalizar el valor de retorno "
+"de [method set].\n"
+"Establece una propiedad. Devuelve [code]true[/code] si existe la "
+"[code]property[/code]."
-#: doc/classes/Object.xml:75
+#: doc/classes/Object.xml:77
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method to_string], and thus the object's representation where it is "
@@ -35110,35 +44968,66 @@ msgid ""
"Returns a [String] representing the object. If not overridden, defaults to "
"[code]\"[ClassName:RID]\"[/code]."
msgstr ""
+"Método virtual que puede ser anulado para personalizar el valor de retorno "
+"de [method to_string], y por lo tanto la representación del objeto donde se "
+"convierte en una cadena, por ejemplo con [code]print(obj)[/code].\n"
+"Devuelve una [String] que representa el objeto. Si no se anula, por defecto "
+"es [code]\"[ClassName:RID]\"[/code]."
-#: doc/classes/Object.xml:87
+#: doc/classes/Object.xml:89
msgid ""
"Adds a user-defined [code]signal[/code]. Arguments are optional, but can be "
"added as an [Array] of dictionaries, each containing [code]name: String[/"
"code] and [code]type: int[/code] (see [enum Variant.Type]) entries."
msgstr ""
+"Añade una [code]signal[/code] definida por el usuario. Los argumentos son "
+"opcionales, pero pueden añadirse como una [Array] de diccionarios, cada uno "
+"de los cuales contiene entradas de [code]name: String[/code] y [code]type: "
+"int[/code] (véase [enum Variant.Type])."
-#: doc/classes/Object.xml:96
+#: doc/classes/Object.xml:98
+#, fuzzy
msgid ""
"Calls the [code]method[/code] on the object and returns the result. This "
"method supports a variable number of arguments, so parameters are passed as "
"a comma separated list. Example:\n"
"[codeblock]\n"
"call(\"set\", \"position\", Vector2(42.0, 0.0))\n"
+"[/codeblock]\n"
+"[b]Note:[/b] In C#, the method name must be specified as snake_case if it is "
+"defined by a built-in Godot node. This doesn't apply to user-defined methods "
+"where you should use the same convention as in the C# source (typically "
+"PascalCase)."
+msgstr ""
+"Llama al [code]method[/code] en el objeto y devuelve el resultado. Este "
+"método soporta un número variable de argumentos, por lo que los parámetros "
+"se pasan como una lista separada por comas. Ejemplo:\n"
+"[codeblock]\n"
+"call(\"set\", \"position\", Vector2(42.0, 0.0))\n"
"[/codeblock]"
-msgstr ""
-#: doc/classes/Object.xml:108
+#: doc/classes/Object.xml:111
+#, fuzzy
msgid ""
"Calls the [code]method[/code] on the object during idle time. This method "
"supports a variable number of arguments, so parameters are passed as a comma "
"separated list. Example:\n"
"[codeblock]\n"
"call_deferred(\"set\", \"position\", Vector2(42.0, 0.0))\n"
+"[/codeblock]\n"
+"[b]Note:[/b] In C#, the method name must be specified as snake_case if it is "
+"defined by a built-in Godot node. This doesn't apply to user-defined methods "
+"where you should use the same convention as in the C# source (typically "
+"PascalCase)."
+msgstr ""
+"Llama al [code]method[/code] en el objeto durante el tiempo de inactividad. "
+"Este método soporta un número variable de argumentos, por lo que los "
+"parámetros se pasan como una lista separada por comas. Ejemplo:\n"
+"[codeblock]\n"
+"call_deferred(\"set\", \"position\", Vector2(42.0, 0.0))\n"
"[/codeblock]"
-msgstr ""
-#: doc/classes/Object.xml:122
+#: doc/classes/Object.xml:126
msgid ""
"Calls the [code]method[/code] on the object and returns the result. "
"Contrarily to [method call], this method does not support a variable number "
@@ -35147,14 +45036,24 @@ msgid ""
"callv(\"set\", [ \"position\", Vector2(42.0, 0.0) ])\n"
"[/codeblock]"
msgstr ""
+"Llama al [code]method[/code] en el objeto y devuelve el resultado. A "
+"diferencia de [method call], este método no soporta un número variable de "
+"argumentos, sino que espera que todos los parámetros sean a través de un "
+"único [array].\n"
+"[codeblock]\n"
+"callv(\"set\", [ \"position\", Vector2(42.0, 0.0) ])\n"
+"[/codeblock]"
-#: doc/classes/Object.xml:132
+#: doc/classes/Object.xml:136
msgid ""
"Returns [code]true[/code] if the object can translate strings. See [method "
"set_message_translation] and [method tr]."
msgstr ""
+"Devuelve [code]true[/code] si el objeto puede traducir cadenas. Ver [method "
+"set_message_translation] y [method tr]."
-#: doc/classes/Object.xml:147
+#: doc/classes/Object.xml:151
+#, fuzzy
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -35189,8 +45088,42 @@ msgid ""
"level, weapon_type, damage])\n"
"[/codeblock]"
msgstr ""
+"[b]ARREGLAME:[/b] La sintaxis cambió con la adición de [Callable], esto "
+"debería ser actualizado.\n"
+"Conecta una [code]signal[code] a un [code]method[/code] en un objeto "
+"[code]target[/code]. Pasa la señal opcional [code]binds[/code] a la llamada "
+"como un [Array] de parámetros. Estos parámetros se pasarán al método después "
+"de cualquier parámetro utilizado en la llamada a [method emit_signal]. "
+"Utilice [code]flags[/code] para establecer conexiones diferidas o de un solo "
+"disparo. Ver las constantes de [enum ConnectFlags].\n"
+"Una señal [code]signal[/code] sólo puede ser conectada una vez a un "
+"[code]method[/code]. Lanzará un error si ya está conectada, a menos que la "
+"señal se haya conectado con la [constant CONNECT_REFERENCE_COUNTED]. Para "
+"evitar esto, primero, usa [method is_connected] para comprobar las "
+"conexiones existentes.\n"
+"Si el [code]target[/code] se destruye en el ciclo de vida del juego, la "
+"conexión se perderá.\n"
+"Ejemplos:\n"
+"[codeblock]\n"
+"connect(\"pulsado\", self, \"_on_Button_pressed\") # Señal BaseButton \n"
+"connect(\"ha_entrado_en_texto\", self, \"_on_LineEdit_text_entered\") # "
+"Señal LineEdit \n"
+"connect(\"golpe\", self, \"_on_Player_hit\", [ tipo_arma, daño ]) # Señal "
+"User-defined \n"
+"[/codeblock]\n"
+"Un ejemplo de la relación entre [code]binds[/code] pasado a [method connect] "
+"y los parámetros utilizados al llamar a [method emit_signal]:\n"
+"[codeblock]\n"
+"connect(\"golpe\", self, \"_on_Player_hit\", [ tipo_arma, daño ]) # tipo de "
+"arma y daño son pasados en último lugar\n"
+"emit_signal(\"golpe\", \"Señor de la Oscuridad\", 5) # \"Señor de la "
+"Oscuridad\" y 5 son pasados en primer lugar\n"
+"func _on_Player_hit(golpeado_por, nivel, tipo_arma, daño):\n"
+" print(\"Golpeado por %s (lvl %d) con arma %s con daño %d\" % "
+"[golpeado_por, nivel, tipo_arma, daño]);\n"
+"[/codeblock]"
-#: doc/classes/Object.xml:174
+#: doc/classes/Object.xml:178
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -35200,8 +45133,15 @@ msgid ""
"throw an error. Use [method is_connected] to ensure that the connection "
"exists."
msgstr ""
+"[b]ARREGLAME[/b] La sintaxis cambió con el añadido de [Callable], esto "
+"debería ser actualizado.\n"
+"Desconecta una [code]signal[/code] de un [code]method[/code] en el "
+"[code]target[/code] dado.\n"
+"Si intentas desconectar una conexión que no existe, el método arrojará un "
+"error. Utiliza [method is_connected] para asegurarte de que la conexión "
+"existe."
-#: doc/classes/Object.xml:185
+#: doc/classes/Object.xml:189
msgid ""
"Emits the given [code]signal[/code]. The signal must exist, so it should be "
"a built-in signal of this class or one of its parent classes, or a user-"
@@ -35212,25 +45152,41 @@ msgid ""
"emit_signal(\"game_over\")\n"
"[/codeblock]"
msgstr ""
+"Emite la [code]signal[/code]. La señal debe existir, por lo que debe ser una "
+"señal incorporada de esta clase o de una de sus clases superiores, o una "
+"señal definida por el usuario. Este método admite un número variable de "
+"argumentos, por lo que los parámetros se pasan como una lista separada por "
+"comas. Ejemplo:\n"
+"[codeblock]\n"
+"emit_signal(\"golpe\", tipo_arma, daño)\n"
+"emit_signal(\"Juego_Terminado\")\n"
+"[/codeblock]"
-#: doc/classes/Object.xml:196
+#: doc/classes/Object.xml:200
msgid ""
"Deletes the object from memory. Any pre-existing reference to the freed "
"object will become invalid, e.g. [code]is_instance_valid(object)[/code] will "
"return [code]false[/code]."
msgstr ""
+"Borra el objeto de la memoria. Cualquier referencia preexistente al objeto "
+"liberado se convertirá en inválida, por ejemplo, "
+"[code]is_instance_valid(object)[/code] devolverá [code]false[/code]."
-#: doc/classes/Object.xml:205
+#: doc/classes/Object.xml:209
msgid ""
"Returns the [Variant] value of the given [code]property[/code]. If the "
-"[code]property[/code] doesn't exist, this will return [code]null[/code]."
+"[code]property[/code] doesn't exist, this will return [code]null[/code].\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:212
+#: doc/classes/Object.xml:217
msgid "Returns the object's class as a [String]."
-msgstr ""
+msgstr "Devuelve la clase del objeto como una [String]."
-#: doc/classes/Object.xml:219
+#: doc/classes/Object.xml:224
msgid ""
"Returns an [Array] of dictionaries with information about signals that are "
"connected to the object.\n"
@@ -35240,35 +45196,50 @@ msgid ""
"- [code]method_name[/code] is the name of the method to which the signal is "
"connected."
msgstr ""
+"Devuelve un [Array] de diccionarios con información sobre las señales que "
+"están conectadas al objeto.\n"
+"Cada [Dictionary] contiene tres entradas String:\n"
+"- [code]source[/code] es una referencia al emisor de la señal.\n"
+"- [code]signal_name[/code] es el nombre de la señal conectada.\n"
+"- [code]method_name[/code] es el nombre del método al que está conectada la "
+"señal."
-#: doc/classes/Object.xml:232
+#: doc/classes/Object.xml:237
msgid ""
"Gets the object's property indexed by the given [NodePath]. The node path "
"should be relative to the current object and can use the colon character "
"([code]:[/code]) to access nested properties. Examples: [code]\"position:x"
"\"[/code] or [code]\"material:next_pass:blend_mode\"[/code]."
msgstr ""
+"Obtiene la propiedad del objeto indexada por la [NodePath] dada. La ruta del "
+"nodo debe ser relativa al objeto actual y puede utilizar el carácter de dos "
+"puntos ([code]:[/code]) para acceder a las propiedades anidadas. Ejemplos: "
+"[code]\"posición:x\"[/code] o [code]\"material:next_pass:blend_mode\"[/code]."
-#: doc/classes/Object.xml:239
+#: doc/classes/Object.xml:244
msgid ""
"Returns the object's unique instance ID.\n"
"This ID can be saved in [EncodedObjectAsID], and can be used to retrieve the "
"object instance with [method @GDScript.instance_from_id]."
msgstr ""
+"Devuelve la identificación de instancia única del objeto.\n"
+"Este ID puede guardarse en [EncodedObjectAsID], y puede utilizarse para "
+"recuperar la instancia del objeto con [method @GDScript.instance_from_id]."
-#: doc/classes/Object.xml:249
+#: doc/classes/Object.xml:254
msgid "Returns the object's metadata entry for the given [code]name[/code]."
msgstr ""
+"Devuelve la entrada de metadatos del objeto para el [code]name[/code] dado."
-#: doc/classes/Object.xml:256
+#: doc/classes/Object.xml:261
msgid "Returns the object's metadata as a [PackedStringArray]."
-msgstr ""
+msgstr "Devuelve los metadatos del objeto como un [PackedStringArray]."
-#: doc/classes/Object.xml:263
+#: doc/classes/Object.xml:268
msgid "Returns the object's methods and their signatures as an [Array]."
-msgstr ""
+msgstr "Devuelve los métodos del objeto y sus firmas como un [Array]."
-#: doc/classes/Object.xml:270
+#: doc/classes/Object.xml:275
msgid ""
"Returns the object's property list as an [Array] of dictionaries.\n"
"Each property's [Dictionary] contain at least [code]name: String[/code] and "
@@ -35277,55 +45248,67 @@ msgid ""
"[code]hint_string: String[/code], and [code]usage: int[/code] (see [enum "
"PropertyUsageFlags])."
msgstr ""
+"Devuelve la lista de propiedades del objeto como una [Array] de "
+"diccionarios.\n"
+"El [Dictionary] de cada propiedad contiene al menos entradas de [code]name: "
+"String[/code] y [code]type: int[/code] (véase [enum Variant.Type]). "
+"Opcionalmente, también puede incluir [code]hint: int[/code] (ver [enum "
+"PropertyHint]), [code]hint_string: String[/code], y [code]usage: int[/code] "
+"(ver [enum PropertyUsageFlags])."
-#: doc/classes/Object.xml:278
+#: doc/classes/Object.xml:283
msgid ""
"Returns the object's [Script] instance, or [code]null[/code] if none is "
"assigned."
msgstr ""
+"Devuelve la instancia de [Script] del objeto, o [code]null[/code] si no hay "
+"ninguna asignada."
-#: doc/classes/Object.xml:287
+#: doc/classes/Object.xml:292
msgid "Returns an [Array] of connections for the given [code]signal[/code]."
-msgstr ""
+msgstr "Devuelve un [Array] de conexiones para la [code]signal[/code] dada."
-#: doc/classes/Object.xml:294
+#: doc/classes/Object.xml:299
msgid "Returns the list of signals as an [Array] of dictionaries."
-msgstr ""
+msgstr "Devuelve la lista de señales como un [Array] de diccionarios."
-#: doc/classes/Object.xml:303
+#: doc/classes/Object.xml:308
msgid ""
"Returns [code]true[/code] if a metadata entry is found with the given "
"[code]name[/code]."
msgstr ""
+"Devuelve [code]true[/code] si se encuentra una entrada de metadatos con el "
+"[code]name[/code] dado."
-#: doc/classes/Object.xml:312
+#: doc/classes/Object.xml:317
msgid ""
"Returns [code]true[/code] if the object contains the given [code]method[/"
"code]."
msgstr ""
+"Devuelve [code]true[/code] si el objeto contiene el [code]method[/code] dado."
-#: doc/classes/Object.xml:321
+#: doc/classes/Object.xml:326
msgid "Returns [code]true[/code] if the given [code]signal[/code] exists."
-msgstr ""
+msgstr "Devuelve [code]true[/code] si existe la [code]signal[/code] dada."
-#: doc/classes/Object.xml:330
+#: doc/classes/Object.xml:335
msgid ""
"Returns [code]true[/code] if the given user-defined [code]signal[/code] "
"exists. Only signals added using [method add_user_signal] are taken into "
"account."
msgstr ""
-#: doc/classes/Object.xml:337
+#: doc/classes/Object.xml:342
msgid "Returns [code]true[/code] if signal emission blocking is enabled."
msgstr ""
-#: doc/classes/Object.xml:346
+#: doc/classes/Object.xml:351
msgid ""
"Returns [code]true[/code] if the object inherits from the given [code]class[/"
"code]."
msgstr ""
-#: doc/classes/Object.xml:357
+#: doc/classes/Object.xml:362
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -35333,13 +45316,13 @@ msgid ""
"code], [code]target[/code], and [code]method[/code]."
msgstr ""
-#: doc/classes/Object.xml:365
+#: doc/classes/Object.xml:370
msgid ""
"Returns [code]true[/code] if the [method Node.queue_free] method was called "
"for the object."
msgstr ""
-#: doc/classes/Object.xml:376
+#: doc/classes/Object.xml:381
msgid ""
"Send a given notification to the object, which will also trigger a call to "
"the [method _notification] method of all classes that the object inherits "
@@ -35351,34 +45334,42 @@ msgid ""
"and then down to its successive inheriting classes."
msgstr ""
-#: doc/classes/Object.xml:384
+#: doc/classes/Object.xml:389
msgid ""
"Notify the editor that the property list has changed, so that editor plugins "
"can take the new values into account. Does nothing on export builds."
msgstr ""
-#: doc/classes/Object.xml:393
+#: doc/classes/Object.xml:398
msgid "Removes a given entry from the object's metadata."
msgstr ""
-#: doc/classes/Object.xml:404
+#: doc/classes/Object.xml:409
msgid ""
"Assigns a new value to the given property. If the [code]property[/code] does "
-"not exist, nothing will happen."
+"not exist, nothing will happen.\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:413
+#: doc/classes/Object.xml:419
msgid "If set to [code]true[/code], signal emission is blocked."
msgstr ""
-#: doc/classes/Object.xml:424
+#: doc/classes/Object.xml:430
msgid ""
"Assigns a new value to the given property, after the current frame's physics "
"step. This is equivalent to calling [method set] via [method call_deferred], "
-"i.e. [code]call_deferred(\"set\", property, value)[/code]."
+"i.e. [code]call_deferred(\"set\", property, value)[/code].\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:435
+#: doc/classes/Object.xml:442
msgid ""
"Assigns a new value to the property identified by the [NodePath]. The node "
"path should be relative to the current object and can use the colon "
@@ -35390,19 +45381,19 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:449
+#: doc/classes/Object.xml:456
msgid ""
"Defines whether the object can translate strings (with calls to [method "
"tr]). Enabled by default."
msgstr ""
-#: doc/classes/Object.xml:460
+#: doc/classes/Object.xml:467
msgid ""
"Adds or changes a given entry in the object's metadata. Metadata are "
"serialized, and can take any [Variant] value."
msgstr ""
-#: doc/classes/Object.xml:469
+#: doc/classes/Object.xml:476
msgid ""
"Assigns a script to the object. Each object can have a single script "
"assigned to it, which are used to extend its functionality.\n"
@@ -35411,7 +45402,7 @@ msgid ""
"_init] method will be called."
msgstr ""
-#: doc/classes/Object.xml:477
+#: doc/classes/Object.xml:484
msgid ""
"Returns a [String] representing the object. If not overridden, defaults to "
"[code]\"[ClassName:RID]\"[/code].\n"
@@ -35419,7 +45410,7 @@ msgid ""
"representation."
msgstr ""
-#: doc/classes/Object.xml:487
+#: doc/classes/Object.xml:494
msgid ""
"Translates a message using translation catalogs configured in the Project "
"Settings.\n"
@@ -35428,35 +45419,35 @@ msgid ""
"set_message_translation]."
msgstr ""
-#: doc/classes/Object.xml:495
+#: doc/classes/Object.xml:502
msgid "Emitted whenever the object's script is changed."
msgstr ""
-#: doc/classes/Object.xml:501
+#: doc/classes/Object.xml:508
msgid "Called right when the object is initialized. Not available in script."
msgstr ""
-#: doc/classes/Object.xml:504
+#: doc/classes/Object.xml:511
msgid "Called before the object is about to be deleted."
msgstr ""
-#: doc/classes/Object.xml:507
+#: doc/classes/Object.xml:514
msgid ""
"Connects a signal in deferred mode. This way, signal emissions are stored in "
"a queue, then set on idle time."
msgstr ""
-#: doc/classes/Object.xml:510
+#: doc/classes/Object.xml:517
msgid "Persisting connections are saved when the object is serialized to file."
msgstr ""
-#: doc/classes/Object.xml:513
+#: doc/classes/Object.xml:520
msgid "One-shot connections disconnect themselves after emission."
msgstr ""
-#: doc/classes/Object.xml:516
+#: doc/classes/Object.xml:523
msgid ""
-"Connect a signal as reference counted. This means that a given signal can be "
+"Connect a signal as reference-counted. This means that a given signal can be "
"connected several times to the same target, and will only be fully "
"disconnected once no references are left."
msgstr ""
@@ -35921,10 +45912,29 @@ msgid "Returns the keycode of the given string (e.g. \"Escape\")."
msgstr ""
#: doc/classes/OS.xml:115
-msgid "Returns the command line arguments passed to the engine."
+msgid ""
+"Returns the command-line arguments passed to the engine.\n"
+"Command-line arguments can be written in any form, including both [code]--"
+"key value[/code] and [code]--key=value[/code] forms so they can be properly "
+"parsed, as long as custom command-line arguments do not conflict with engine "
+"arguments.\n"
+"You can also incorporate environment variables using the [method "
+"get_environment] method.\n"
+"You can set [code]editor/main_run_args[/code] in the Project Settings to "
+"define command-line arguments to be passed by the editor when running the "
+"project.\n"
+"Here's a minimal example on how to parse command-line arguments into a "
+"dictionary using the [code]--key=value[/code] form for arguments:\n"
+"[codeblock]\n"
+"var arguments = {}\n"
+"for argument in OS.get_cmdline_args():\n"
+" if argument.find(\"=\") > -1:\n"
+" var key_value = argument.split(\"=\")\n"
+" arguments[key_value[0].lstrip(\"--\")] = key_value[1]\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/OS.xml:122
+#: doc/classes/OS.xml:133
msgid ""
"Returns an array of MIDI device names.\n"
"The returned array will be empty if the system MIDI driver has not "
@@ -35932,14 +45942,14 @@ msgid ""
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:133
+#: doc/classes/OS.xml:144
msgid ""
"Returns current date as a dictionary of keys: [code]year[/code], "
"[code]month[/code], [code]day[/code], [code]weekday[/code], [code]dst[/code] "
"(Daylight Savings Time)."
msgstr ""
-#: doc/classes/OS.xml:142
+#: doc/classes/OS.xml:153
msgid ""
"Returns current datetime as a dictionary of keys: [code]year[/code], "
"[code]month[/code], [code]day[/code], [code]weekday[/code], [code]dst[/code] "
@@ -35947,7 +45957,7 @@ msgid ""
"[code]second[/code]."
msgstr ""
-#: doc/classes/OS.xml:151
+#: doc/classes/OS.xml:162
msgid ""
"Gets a dictionary of time values corresponding to the given UNIX epoch time "
"(in seconds).\n"
@@ -35956,22 +45966,22 @@ msgid ""
"the epoch."
msgstr ""
-#: doc/classes/OS.xml:161
+#: doc/classes/OS.xml:172
msgid "Returns an environment variable."
msgstr ""
-#: doc/classes/OS.xml:168
+#: doc/classes/OS.xml:179
msgid "Returns the path to the current engine executable."
msgstr ""
-#: doc/classes/OS.xml:175
+#: doc/classes/OS.xml:186
msgid ""
"With this function you can get the list of dangerous permissions that have "
"been granted to the Android application.\n"
"[b]Note:[/b] This method is implemented on Android."
msgstr ""
-#: doc/classes/OS.xml:185
+#: doc/classes/OS.xml:196
msgid ""
"Returns the given keycode as a string (e.g. Return values: [code]\"Escape\"[/"
"code], [code]\"Shift+Escape\"[/code]).\n"
@@ -35979,18 +45989,18 @@ msgid ""
"get_keycode_with_modifiers]."
msgstr ""
-#: doc/classes/OS.xml:193
+#: doc/classes/OS.xml:204
msgid "Returns the host OS locale."
msgstr ""
-#: doc/classes/OS.xml:200
+#: doc/classes/OS.xml:211
msgid ""
"Returns the model name of the current device.\n"
"[b]Note:[/b] This method is implemented on Android and iOS. Returns "
"[code]\"GenericDevice\"[/code] on unsupported platforms."
msgstr ""
-#: doc/classes/OS.xml:208
+#: doc/classes/OS.xml:219
msgid ""
"Returns the name of the host OS. Possible values are: [code]\"Android\"[/"
"code], [code]\"iOS\"[/code], [code]\"HTML5\"[/code], [code]\"OSX\"[/code], "
@@ -35998,81 +46008,81 @@ msgid ""
"[code]\"X11\"[/code]."
msgstr ""
-#: doc/classes/OS.xml:215
+#: doc/classes/OS.xml:226
msgid ""
"Returns the project's process ID.\n"
"[b]Note:[/b] This method is implemented on Android, iOS, Linux, macOS and "
"Windows."
msgstr ""
-#: doc/classes/OS.xml:223
+#: doc/classes/OS.xml:234
msgid "Returns the number of threads available on the host machine."
msgstr ""
-#: doc/classes/OS.xml:230
+#: doc/classes/OS.xml:241
msgid ""
"Returns the amount of time in milliseconds it took for the boot logo to "
"appear."
msgstr ""
-#: doc/classes/OS.xml:237
+#: doc/classes/OS.xml:248
msgid "Returns the maximum amount of static memory used (only works in debug)."
msgstr ""
-#: doc/classes/OS.xml:244
+#: doc/classes/OS.xml:255
msgid "Returns the amount of static memory being used by the program in bytes."
msgstr ""
-#: doc/classes/OS.xml:253
+#: doc/classes/OS.xml:264
msgid ""
"Returns the actual path to commonly used folders across different platforms. "
"Available locations are specified in [enum SystemDir].\n"
"[b]Note:[/b] This method is implemented on Android, Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:261
+#: doc/classes/OS.xml:272
msgid ""
"Returns the total number of available tablet drivers.\n"
"[b]Note:[/b] This method is implemented on Windows."
msgstr ""
-#: doc/classes/OS.xml:271
+#: doc/classes/OS.xml:282
msgid ""
"Returns the tablet driver name for the given index.\n"
"[b]Note:[/b] This method is implemented on Windows."
msgstr ""
-#: doc/classes/OS.xml:279
+#: doc/classes/OS.xml:290
msgid ""
"Returns the amount of time passed in milliseconds since the engine started."
msgstr ""
-#: doc/classes/OS.xml:286
+#: doc/classes/OS.xml:297
msgid ""
"Returns the amount of time passed in microseconds since the engine started."
msgstr ""
-#: doc/classes/OS.xml:295
+#: doc/classes/OS.xml:306
msgid "Returns current time as a dictionary of keys: hour, minute, second."
msgstr ""
-#: doc/classes/OS.xml:302
+#: doc/classes/OS.xml:313
msgid ""
"Returns the current time zone as a dictionary with the keys: bias and name."
msgstr ""
-#: doc/classes/OS.xml:309
+#: doc/classes/OS.xml:320
msgid ""
"Returns a string that is unique to the device.\n"
"[b]Note:[/b] Returns an empty string on HTML5 and UWP, as this method isn't "
"implemented on those platforms yet."
msgstr ""
-#: doc/classes/OS.xml:317
+#: doc/classes/OS.xml:328
msgid "Returns the current UNIX epoch timestamp."
msgstr ""
-#: doc/classes/OS.xml:326
+#: doc/classes/OS.xml:337
msgid ""
"Gets an epoch time value from a dictionary of time values.\n"
"[code]datetime[/code] must be populated with the following keys: [code]year[/"
@@ -36083,7 +46093,7 @@ msgid ""
"ignored."
msgstr ""
-#: doc/classes/OS.xml:335
+#: doc/classes/OS.xml:346
msgid ""
"Returns the absolute directory path where user data is written ([code]user://"
"[/code]).\n"
@@ -36101,11 +46111,11 @@ msgid ""
"[/code]."
msgstr ""
-#: doc/classes/OS.xml:348
+#: doc/classes/OS.xml:359
msgid "Returns [code]true[/code] if an environment variable exists."
msgstr ""
-#: doc/classes/OS.xml:357
+#: doc/classes/OS.xml:368
msgid ""
"Returns [code]true[/code] if the feature for the given feature tag is "
"supported in the currently running instance, depending on platform, build "
@@ -36116,7 +46126,7 @@ msgid ""
"[b]Note:[/b] Tag names are case-sensitive."
msgstr ""
-#: doc/classes/OS.xml:365
+#: doc/classes/OS.xml:376
msgid ""
"Returns [code]true[/code] if the Godot binary used to run the project is a "
"[i]debug[/i] export template, or when running in the editor.\n"
@@ -36127,26 +46137,26 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/OS.xml:376
+#: doc/classes/OS.xml:387
msgid ""
"Returns [code]true[/code] if the input keycode corresponds to a Unicode "
"character."
msgstr ""
-#: doc/classes/OS.xml:383
+#: doc/classes/OS.xml:394
msgid ""
"Returns [code]true[/code] if the engine was executed with [code]-v[/code] "
"(verbose stdout)."
msgstr ""
-#: doc/classes/OS.xml:390
+#: doc/classes/OS.xml:401
msgid ""
"If [code]true[/code], the [code]user://[/code] file system is persistent, so "
"that its state is the same after a player quits and starts the game again. "
"Relevant to the HTML5 platform, where this persistence may be unavailable."
msgstr ""
-#: doc/classes/OS.xml:399
+#: doc/classes/OS.xml:410
msgid ""
"Kill (terminate) the process identified by the given process ID ([code]pid[/"
"code]), e.g. the one returned by [method execute] in non-blocking mode.\n"
@@ -36156,37 +46166,37 @@ msgid ""
"Windows."
msgstr ""
-#: doc/classes/OS.xml:408
+#: doc/classes/OS.xml:419
msgid ""
"Initialises the singleton for the system MIDI driver.\n"
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:418
+#: doc/classes/OS.xml:429
msgid ""
"Shows all resources in the game. Optionally, the list can be written to a "
"file by specifying a file path in [code]tofile[/code]."
msgstr ""
-#: doc/classes/OS.xml:425
+#: doc/classes/OS.xml:436
msgid "Shows the list of loaded textures sorted by size in memory."
msgstr ""
-#: doc/classes/OS.xml:434
+#: doc/classes/OS.xml:445
msgid "Shows the number of resources loaded by the game of the given types."
msgstr ""
-#: doc/classes/OS.xml:443
+#: doc/classes/OS.xml:454
msgid "Shows all resources currently used by the game."
msgstr ""
-#: doc/classes/OS.xml:452
+#: doc/classes/OS.xml:463
msgid ""
"At the moment this function is only used by [code]AudioDriverOpenSL[/code] "
"to request permission for [code]RECORD_AUDIO[/code] on Android."
msgstr ""
-#: doc/classes/OS.xml:459
+#: doc/classes/OS.xml:470
msgid ""
"With this function you can request dangerous permissions since normal "
"permissions are automatically granted at install time in Android "
@@ -36194,15 +46204,15 @@ msgid ""
"[b]Note:[/b] This method is implemented on Android."
msgstr ""
-#: doc/classes/OS.xml:469
+#: doc/classes/OS.xml:480
msgid "Sets the name of the current thread."
msgstr ""
-#: doc/classes/OS.xml:478
+#: doc/classes/OS.xml:489
msgid "Enables backup saves if [code]enabled[/code] is [code]true[/code]."
msgstr ""
-#: doc/classes/OS.xml:487
+#: doc/classes/OS.xml:498
msgid ""
"Requests the OS to open a resource with the most appropriate program. For "
"example:\n"
@@ -36221,7 +46231,7 @@ msgid ""
"and Windows."
msgstr ""
-#: doc/classes/OS.xml:498
+#: doc/classes/OS.xml:509
msgid ""
"The exit code passed to the OS when the main loop exits. By convention, an "
"exit code of [code]0[/code] indicates success whereas a non-zero exit code "
@@ -36231,137 +46241,138 @@ msgid ""
"with an [code]exit_code[/code] argument passed."
msgstr ""
-#: doc/classes/OS.xml:502
+#: doc/classes/OS.xml:513
msgid ""
"If [code]true[/code], the engine optimizes for low processor usage by only "
"refreshing the screen if needed. Can improve battery consumption on mobile."
msgstr ""
-#: doc/classes/OS.xml:505
+#: doc/classes/OS.xml:516
msgid ""
"The amount of sleeping between frames when the low-processor usage mode is "
"enabled (in microseconds). Higher values will result in lower CPU usage."
msgstr ""
-#: doc/classes/OS.xml:508
-msgid "The current tablet drvier in use."
-msgstr ""
+#: doc/classes/OS.xml:519
+#, fuzzy
+msgid "The current tablet driver in use."
+msgstr "El archivo actualmente seleccionado."
-#: doc/classes/OS.xml:513
+#: doc/classes/OS.xml:524
msgid ""
"The GLES2 rendering backend. It uses OpenGL ES 2.0 on mobile devices, OpenGL "
"2.1 on desktop platforms and WebGL 1.0 on the web."
msgstr ""
-#: doc/classes/OS.xml:516
+#: doc/classes/OS.xml:527
msgid "The Vulkan rendering backend."
msgstr ""
-#: doc/classes/OS.xml:519
+#: doc/classes/OS.xml:530
msgid "Sunday."
msgstr ""
-#: doc/classes/OS.xml:522
+#: doc/classes/OS.xml:533
msgid "Monday."
msgstr ""
-#: doc/classes/OS.xml:525
+#: doc/classes/OS.xml:536
msgid "Tuesday."
msgstr ""
-#: doc/classes/OS.xml:528
+#: doc/classes/OS.xml:539
msgid "Wednesday."
msgstr ""
-#: doc/classes/OS.xml:531
+#: doc/classes/OS.xml:542
msgid "Thursday."
msgstr ""
-#: doc/classes/OS.xml:534
+#: doc/classes/OS.xml:545
msgid "Friday."
msgstr ""
-#: doc/classes/OS.xml:537
+#: doc/classes/OS.xml:548
msgid "Saturday."
msgstr ""
-#: doc/classes/OS.xml:540
+#: doc/classes/OS.xml:551
msgid "January."
msgstr ""
-#: doc/classes/OS.xml:543
+#: doc/classes/OS.xml:554
msgid "February."
msgstr ""
-#: doc/classes/OS.xml:546
+#: doc/classes/OS.xml:557
msgid "March."
msgstr ""
-#: doc/classes/OS.xml:549
+#: doc/classes/OS.xml:560
msgid "April."
msgstr ""
-#: doc/classes/OS.xml:552
+#: doc/classes/OS.xml:563
msgid "May."
msgstr ""
-#: doc/classes/OS.xml:555
+#: doc/classes/OS.xml:566
msgid "June."
msgstr ""
-#: doc/classes/OS.xml:558
+#: doc/classes/OS.xml:569
msgid "July."
msgstr ""
-#: doc/classes/OS.xml:561
+#: doc/classes/OS.xml:572
msgid "August."
msgstr ""
-#: doc/classes/OS.xml:564
+#: doc/classes/OS.xml:575
msgid "September."
msgstr ""
-#: doc/classes/OS.xml:567
+#: doc/classes/OS.xml:578
msgid "October."
msgstr ""
-#: doc/classes/OS.xml:570
+#: doc/classes/OS.xml:581
msgid "November."
msgstr ""
-#: doc/classes/OS.xml:573
+#: doc/classes/OS.xml:584
msgid "December."
msgstr ""
-#: doc/classes/OS.xml:576
+#: doc/classes/OS.xml:587
msgid "Desktop directory path."
msgstr ""
-#: doc/classes/OS.xml:579
+#: doc/classes/OS.xml:590
msgid "DCIM (Digital Camera Images) directory path."
msgstr ""
-#: doc/classes/OS.xml:582
+#: doc/classes/OS.xml:593
msgid "Documents directory path."
msgstr ""
-#: doc/classes/OS.xml:585
+#: doc/classes/OS.xml:596
msgid "Downloads directory path."
msgstr ""
-#: doc/classes/OS.xml:588
+#: doc/classes/OS.xml:599
msgid "Movies directory path."
msgstr ""
-#: doc/classes/OS.xml:591
+#: doc/classes/OS.xml:602
msgid "Music directory path."
msgstr ""
-#: doc/classes/OS.xml:594
+#: doc/classes/OS.xml:605
msgid "Pictures directory path."
msgstr ""
-#: doc/classes/OS.xml:597
+#: doc/classes/OS.xml:608
msgid "Ringtones directory path."
msgstr ""
@@ -36416,7 +46427,16 @@ msgid ""
"should always be preferred."
msgstr ""
-#: doc/classes/PackedByteArray.xml:85
+#: doc/classes/PackedByteArray.xml:87 doc/classes/PackedColorArray.xml:53
+#: doc/classes/PackedFloat32Array.xml:54 doc/classes/PackedFloat64Array.xml:54
+#: doc/classes/PackedInt32Array.xml:54 doc/classes/PackedInt64Array.xml:54
+#: doc/classes/PackedStringArray.xml:53 doc/classes/PackedVector2Array.xml:53
+#: doc/classes/PackedVector3Array.xml:53
+#, fuzzy
+msgid "Returns [code]true[/code] if the array contains [code]value[/code]."
+msgstr "Devuelve [code]true[/code] si el grafico contiene el nodo dado."
+
+#: doc/classes/PackedByteArray.xml:94
msgid ""
"Returns a hexadecimal representation of this array as a [String].\n"
"[codeblock]\n"
@@ -36425,39 +46445,49 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/PackedByteArray.xml:100 doc/classes/PackedColorArray.xml:55
-#: doc/classes/PackedFloat32Array.xml:56 doc/classes/PackedFloat64Array.xml:56
-#: doc/classes/PackedStringArray.xml:55 doc/classes/PackedVector2Array.xml:55
-#: doc/classes/PackedVector3Array.xml:55
+#: doc/classes/PackedByteArray.xml:109 doc/classes/PackedColorArray.xml:64
+#: doc/classes/PackedFloat32Array.xml:65 doc/classes/PackedFloat64Array.xml:65
+#: doc/classes/PackedStringArray.xml:64 doc/classes/PackedVector2Array.xml:64
+#: doc/classes/PackedVector3Array.xml:64
msgid ""
"Inserts a new element at a given position in the array. The position must be "
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PackedByteArray.xml:134 doc/classes/PackedColorArray.xml:89
-#: doc/classes/PackedFloat32Array.xml:90 doc/classes/PackedFloat64Array.xml:90
-#: doc/classes/PackedInt32Array.xml:90 doc/classes/PackedInt64Array.xml:90
-#: doc/classes/PackedStringArray.xml:89 doc/classes/PackedVector2Array.xml:89
-#: doc/classes/PackedVector3Array.xml:89
+#: doc/classes/PackedByteArray.xml:143 doc/classes/PackedColorArray.xml:98
+#: doc/classes/PackedFloat32Array.xml:99 doc/classes/PackedFloat64Array.xml:99
+#: doc/classes/PackedInt32Array.xml:99 doc/classes/PackedInt64Array.xml:99
+#: doc/classes/PackedStringArray.xml:98 doc/classes/PackedVector2Array.xml:98
+#: doc/classes/PackedVector3Array.xml:98
msgid ""
"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."
msgstr ""
-#: doc/classes/PackedByteArray.xml:145
+#: doc/classes/PackedByteArray.xml:154
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PackedByteArray.xml:152 doc/classes/PackedColorArray.xml:107
-#: doc/classes/PackedFloat32Array.xml:108
-#: doc/classes/PackedFloat64Array.xml:108 doc/classes/PackedStringArray.xml:107
-#: doc/classes/PackedVector2Array.xml:107
-#: doc/classes/PackedVector3Array.xml:107
+#: doc/classes/PackedByteArray.xml:161 doc/classes/PackedColorArray.xml:116
+#: doc/classes/PackedFloat32Array.xml:117
+#: doc/classes/PackedFloat64Array.xml:117 doc/classes/PackedStringArray.xml:116
+#: doc/classes/PackedVector2Array.xml:116
+#: doc/classes/PackedVector3Array.xml:116
msgid "Returns the size of the array."
msgstr ""
-#: doc/classes/PackedByteArray.xml:163
+#: doc/classes/PackedByteArray.xml:168 doc/classes/PackedColorArray.xml:123
+#: doc/classes/PackedFloat32Array.xml:124
+#: doc/classes/PackedFloat64Array.xml:124 doc/classes/PackedInt32Array.xml:124
+#: doc/classes/PackedInt64Array.xml:124 doc/classes/PackedStringArray.xml:123
+#: doc/classes/PackedVector2Array.xml:123
+#: doc/classes/PackedVector3Array.xml:123
+#, fuzzy
+msgid "Sorts the elements of the array in ascending order."
+msgstr "Elimina un elemento del array por indice."
+
+#: doc/classes/PackedByteArray.xml:179
msgid ""
"Returns the slice of the [PackedByteArray] between indices (inclusive) as a "
"new [PackedByteArray]. Any negative index is considered to be from the end "
@@ -36485,12 +46515,12 @@ msgstr ""
msgid "Appends a [PackedColorArray] at the end of this array."
msgstr ""
-#: doc/classes/PackedColorArray.xml:71 doc/classes/PackedInt32Array.xml:72
-#: doc/classes/PackedInt64Array.xml:72
+#: doc/classes/PackedColorArray.xml:80 doc/classes/PackedInt32Array.xml:81
+#: doc/classes/PackedInt64Array.xml:81
msgid "Appends a value to the array."
msgstr ""
-#: doc/classes/PackedColorArray.xml:100
+#: doc/classes/PackedColorArray.xml:109
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -36520,8 +46550,8 @@ msgstr ""
msgid "Appends a [PackedFloat32Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedFloat32Array.xml:101
-#: doc/classes/PackedFloat64Array.xml:101
+#: doc/classes/PackedFloat32Array.xml:110
+#: doc/classes/PackedFloat64Array.xml:110
msgid "Changes the float at the given index."
msgstr ""
@@ -36574,17 +46604,17 @@ msgstr ""
msgid "Appends a [PackedInt32Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:56 doc/classes/PackedInt64Array.xml:56
+#: doc/classes/PackedInt32Array.xml:65 doc/classes/PackedInt64Array.xml:65
msgid ""
"Inserts a new integer at a given position in the array. The position must be "
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:101 doc/classes/PackedInt64Array.xml:101
+#: doc/classes/PackedInt32Array.xml:110 doc/classes/PackedInt64Array.xml:110
msgid "Changes the integer at the given index."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:108 doc/classes/PackedInt64Array.xml:108
+#: doc/classes/PackedInt32Array.xml:117 doc/classes/PackedInt64Array.xml:117
msgid "Returns the array size."
msgstr ""
@@ -36625,6 +46655,14 @@ msgid ""
"Can be used to save a node to a file. When saving, the node as well as all "
"the node it owns get saved (see [code]owner[/code] property on [Node]).\n"
"[b]Note:[/b] The node doesn't need to own itself.\n"
+"[b]Example of loading a saved scene:[/b]\n"
+"[codeblock]\n"
+"# Use `load()` instead of `preload()` if the path isn't known at compile-"
+"time.\n"
+"var scene = preload(\"res://scene.tscn\").instance()\n"
+"# Add the node as a child of the node the script is attached to.\n"
+"add_child(scene)\n"
+"[/codeblock]\n"
"[b]Example of saving a node with different owners:[/b] The following example "
"creates 3 objects: [code]Node2D[/code] ([code]node[/code]), "
"[code]RigidBody2D[/code] ([code]rigid[/code]) and [code]CollisionObject2D[/"
@@ -36656,29 +46694,29 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/PackedScene.xml:40
+#: doc/classes/PackedScene.xml:47
msgid "Returns [code]true[/code] if the scene file has nodes."
msgstr ""
-#: doc/classes/PackedScene.xml:47
+#: doc/classes/PackedScene.xml:54
msgid ""
"Returns the [code]SceneState[/code] representing the scene file contents."
msgstr ""
-#: doc/classes/PackedScene.xml:56
+#: doc/classes/PackedScene.xml:63
msgid ""
"Instantiates the scene's node hierarchy. Triggers child scene "
"instantiation(s). Triggers a [constant Node.NOTIFICATION_INSTANCED] "
"notification on the root node."
msgstr ""
-#: doc/classes/PackedScene.xml:65
+#: doc/classes/PackedScene.xml:72
msgid ""
"Pack will ignore any sub-nodes not owned by given node. See [member Node."
"owner]."
msgstr ""
-#: doc/classes/PackedScene.xml:71
+#: doc/classes/PackedScene.xml:78
msgid ""
"A dictionary representation of the scene contents.\n"
"Available keys include \"rnames\" and \"variants\" for resources, "
@@ -36687,18 +46725,18 @@ msgid ""
"connections, and \"version\" for the format style of the PackedScene."
msgstr ""
-#: doc/classes/PackedScene.xml:77
+#: doc/classes/PackedScene.xml:84
msgid "If passed to [method instance], blocks edits to the scene state."
msgstr ""
-#: doc/classes/PackedScene.xml:80
+#: doc/classes/PackedScene.xml:87
msgid ""
"If passed to [method instance], provides local scene resources to the local "
"scene.\n"
"[b]Note:[/b] Only available in editor builds."
msgstr ""
-#: doc/classes/PackedScene.xml:84
+#: doc/classes/PackedScene.xml:91
msgid ""
"If passed to [method instance], provides local scene resources to the local "
"scene. Only the main scene should receive the main edit state.\n"
@@ -36726,11 +46764,11 @@ msgstr ""
msgid "Appends a [PackedStringArray] at the end of this array."
msgstr ""
-#: doc/classes/PackedStringArray.xml:71
+#: doc/classes/PackedStringArray.xml:80
msgid "Appends a string element at end of the array."
msgstr ""
-#: doc/classes/PackedStringArray.xml:100
+#: doc/classes/PackedStringArray.xml:109
msgid "Changes the [String] at the given index."
msgstr ""
@@ -36755,11 +46793,11 @@ msgstr ""
msgid "Appends a [PackedVector2Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedVector2Array.xml:71
+#: doc/classes/PackedVector2Array.xml:80
msgid "Inserts a [Vector2] at the end."
msgstr ""
-#: doc/classes/PackedVector2Array.xml:100
+#: doc/classes/PackedVector2Array.xml:109
msgid "Changes the [Vector2] at the given index."
msgstr ""
@@ -36784,11 +46822,11 @@ msgstr ""
msgid "Appends a [PackedVector3Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedVector3Array.xml:71
+#: doc/classes/PackedVector3Array.xml:80
msgid "Inserts a [Vector3] at the end."
msgstr ""
-#: doc/classes/PackedVector3Array.xml:100
+#: doc/classes/PackedVector3Array.xml:109
msgid "Changes the [Vector3] at the given index."
msgstr ""
@@ -37679,13 +47717,56 @@ msgid ""
"as the values displayed in the [b]Monitor[/b] tab in the editor's "
"[b]Debugger[/b] panel. By using the [method get_monitor] method of this "
"class, you can access this data from your code.\n"
+"You can add custom monitors using the [method add_custom_monitor] method. "
+"Custom monitors are available in [b]Monitor[/b] tab in the editor's "
+"[b]Debugger[/b] panel together with built-in monitors.\n"
"[b]Note:[/b] A few of these monitors are only available in debug mode and "
"will always return 0 when used in a release build.\n"
"[b]Note:[/b] Many of these monitors are not updated in real-time, so there "
-"may be a short delay between changes."
+"may be a short delay between changes.\n"
+"[b]Note:[/b] Custom monitors do not support negative values. Negative values "
+"are clamped to 0."
+msgstr ""
+
+#: doc/classes/Performance.xml:26
+msgid ""
+"Adds a custom monitor with name same as id. You can specify the category of "
+"monitor using '/' in id. If there are more than one '/' then default "
+"category is used. Default category is \"Custom\".\n"
+"[codeblock]\n"
+"Performance.add_custom_monitor(\"MyCategory/MyMonitor\", some_callable) # "
+"Adds monitor with name \"MyName\" to category \"MyCategory\"\n"
+"Performance.add_custom_monitor(\"MyMonitor\", some_callable) # Adds monitor "
+"with name \"MyName\" to category \"Custom\"\n"
+"# Note: \"MyCategory/MyMonitor\" and \"MyMonitor\" have same name but "
+"different ids so above code is valid\n"
+"Performance.add_custom_monitor(\"Custom/MyMonitor\", some_callable) # Adds "
+"monitor with name \"MyName\" to category \"Custom\"\n"
+"# Note: \"MyMonitor\" and \"Custom/MyMonitor\" have same name and same "
+"category but different ids so above code is valid\n"
+"Performance.add_custom_monitor(\"MyCategoryOne/MyCategoryTwo/MyMonitor\", "
+"some_callable) # Adds monitor with name \"MyCategoryOne/MyCategoryTwo/"
+"MyMonitor\" to category \"Custom\"\n"
+"[/codeblock]\n"
+"The debugger calls the callable to get the value of custom monitor. The "
+"callable must return a number.\n"
+"Callables are called with arguments supplied in argument array.\n"
+"[b]Note:[/b] It throws an error if given id is already present."
msgstr ""
-#: doc/classes/Performance.xml:20
+#: doc/classes/Performance.xml:46
+msgid ""
+"Returns the value of custom monitor with given id. The callable is called to "
+"get the value of custom monitor.\n"
+"[b]Note:[/b] It throws an error if the given id is absent."
+msgstr ""
+
+#: doc/classes/Performance.xml:54
+#, fuzzy
+msgid "Returns the names of active custom monitors in an array."
+msgstr "Devuelve el numer de veces que un elemento es encuentra en el array."
+
+#: doc/classes/Performance.xml:63
msgid ""
"Returns the value of one of the available monitors. You should provide one "
"of the [enum Monitor] constants as the argument, like this:\n"
@@ -37695,123 +47776,139 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Performance.xml:29
+#: doc/classes/Performance.xml:73
+msgid "Returns the last tick in which custom monitor was added/removed."
+msgstr ""
+
+#: doc/classes/Performance.xml:82
+msgid ""
+"Returns true if custom monitor with the given id is present otherwise "
+"returns false."
+msgstr ""
+
+#: doc/classes/Performance.xml:91
+msgid ""
+"Removes the custom monitor with given id.\n"
+"[b]Note:[/b] It throws an error if the given id is already absent."
+msgstr ""
+
+#: doc/classes/Performance.xml:98
msgid "Number of frames per second."
msgstr ""
-#: doc/classes/Performance.xml:32
+#: doc/classes/Performance.xml:101
msgid "Time it took to complete one frame, in seconds."
msgstr ""
-#: doc/classes/Performance.xml:35
+#: doc/classes/Performance.xml:104
msgid "Time it took to complete one physics frame, in seconds."
msgstr ""
-#: doc/classes/Performance.xml:38
+#: doc/classes/Performance.xml:107
msgid ""
"Static memory currently used, in bytes. Not available in release builds."
msgstr ""
-#: doc/classes/Performance.xml:41
+#: doc/classes/Performance.xml:110
msgid "Available static memory. Not available in release builds."
msgstr ""
-#: doc/classes/Performance.xml:44
+#: doc/classes/Performance.xml:113
msgid ""
"Largest amount of memory the message queue buffer has used, in bytes. The "
"message queue is used for deferred functions calls and notifications."
msgstr ""
-#: doc/classes/Performance.xml:47
+#: doc/classes/Performance.xml:116
msgid "Number of objects currently instanced (including nodes)."
msgstr ""
-#: doc/classes/Performance.xml:50
+#: doc/classes/Performance.xml:119
msgid "Number of resources currently used."
msgstr ""
-#: doc/classes/Performance.xml:53
+#: doc/classes/Performance.xml:122
msgid ""
"Number of nodes currently instanced in the scene tree. This also includes "
"the root node."
msgstr ""
-#: doc/classes/Performance.xml:56
+#: doc/classes/Performance.xml:125
msgid ""
"Number of orphan nodes, i.e. nodes which are not parented to a node of the "
"scene tree."
msgstr ""
-#: doc/classes/Performance.xml:59
+#: doc/classes/Performance.xml:128
msgid "3D objects drawn per frame."
msgstr ""
-#: doc/classes/Performance.xml:62
+#: doc/classes/Performance.xml:131
msgid "Vertices drawn per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:65
+#: doc/classes/Performance.xml:134
msgid "Material changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:68
+#: doc/classes/Performance.xml:137
msgid "Shader changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:71
+#: doc/classes/Performance.xml:140
msgid "Render surface changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:74
+#: doc/classes/Performance.xml:143
msgid "Draw calls per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:77 doc/classes/RenderingServer.xml:3805
+#: doc/classes/Performance.xml:146 doc/classes/RenderingServer.xml:3816
msgid ""
"The amount of video memory used, i.e. texture and vertex memory combined."
msgstr ""
-#: doc/classes/Performance.xml:80 doc/classes/RenderingServer.xml:3808
+#: doc/classes/Performance.xml:149 doc/classes/RenderingServer.xml:3819
msgid "The amount of texture memory used."
msgstr ""
-#: doc/classes/Performance.xml:83 doc/classes/RenderingServer.xml:3811
+#: doc/classes/Performance.xml:152 doc/classes/RenderingServer.xml:3822
msgid "The amount of vertex memory used."
msgstr ""
-#: doc/classes/Performance.xml:86 doc/classes/RenderingServer.xml:3802
+#: doc/classes/Performance.xml:155 doc/classes/RenderingServer.xml:3813
msgid "Unimplemented in the GLES2 rendering backend, always returns 0."
msgstr ""
-#: doc/classes/Performance.xml:89
+#: doc/classes/Performance.xml:158
msgid "Number of active [RigidBody2D] nodes in the game."
msgstr ""
-#: doc/classes/Performance.xml:92
+#: doc/classes/Performance.xml:161
msgid "Number of collision pairs in the 2D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:95
+#: doc/classes/Performance.xml:164
msgid "Number of islands in the 2D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:98
+#: doc/classes/Performance.xml:167
msgid "Number of active [RigidBody3D] and [VehicleBody3D] nodes in the game."
msgstr ""
-#: doc/classes/Performance.xml:101
+#: doc/classes/Performance.xml:170
msgid "Number of collision pairs in the 3D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:104
+#: doc/classes/Performance.xml:173
msgid "Number of islands in the 3D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:107
+#: doc/classes/Performance.xml:176
msgid "Output latency of the [AudioServer]."
msgstr ""
-#: doc/classes/Performance.xml:110
+#: doc/classes/Performance.xml:179
msgid "Represents the size of the [enum Monitor] enum."
msgstr ""
@@ -37835,27 +47932,27 @@ msgstr ""
msgid "Damps the body's rotation if greater than [code]0[/code]."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:70 doc/classes/RigidBody3D.xml:132
+#: doc/classes/PhysicalBone3D.xml:70 doc/classes/RigidBody3D.xml:139
msgid "Lock the body's rotation in the X axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:73 doc/classes/RigidBody3D.xml:135
+#: doc/classes/PhysicalBone3D.xml:73 doc/classes/RigidBody3D.xml:142
msgid "Lock the body's rotation in the Y axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:76 doc/classes/RigidBody3D.xml:138
+#: doc/classes/PhysicalBone3D.xml:76 doc/classes/RigidBody3D.xml:145
msgid "Lock the body's rotation in the Z axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:79 doc/classes/RigidBody3D.xml:141
+#: doc/classes/PhysicalBone3D.xml:79 doc/classes/RigidBody3D.xml:148
msgid "Lock the body's movement in the X axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:82 doc/classes/RigidBody3D.xml:144
+#: doc/classes/PhysicalBone3D.xml:82 doc/classes/RigidBody3D.xml:151
msgid "Lock the body's movement in the Y axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:85 doc/classes/RigidBody3D.xml:147
+#: doc/classes/PhysicalBone3D.xml:85 doc/classes/RigidBody3D.xml:154
msgid "Lock the body's movement in the Z axis."
msgstr ""
@@ -37910,12 +48007,12 @@ msgstr ""
msgid "Damps the body's movement if greater than [code]0[/code]."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:118 doc/classes/RigidBody2D.xml:158
-#: doc/classes/RigidBody3D.xml:175
+#: doc/classes/PhysicalBone3D.xml:118 doc/classes/RigidBody2D.xml:159
+#: doc/classes/RigidBody3D.xml:183
msgid "The body's mass."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:121 doc/classes/RigidBody3D.xml:188
+#: doc/classes/PhysicalBone3D.xml:121 doc/classes/RigidBody3D.xml:196
msgid ""
"The body's weight based on its mass and the global 3D gravity. Global values "
"are set in [b]Project > Project Settings > Physics > 3d[/b]."
@@ -38222,7 +48319,7 @@ msgid "The inverse of the mass of the body."
msgstr ""
#: doc/classes/PhysicsDirectBodyState2D.xml:195
-#: doc/classes/PhysicsDirectBodyState3D.xml:198 doc/classes/RigidBody2D.xml:155
+#: doc/classes/PhysicsDirectBodyState3D.xml:198 doc/classes/RigidBody2D.xml:156
msgid "The body's linear velocity."
msgstr ""
@@ -38775,7 +48872,7 @@ msgid ""
msgstr ""
#: doc/classes/PhysicsServer2D.xml:620 doc/classes/PhysicsServer3D.xml:637
-#: doc/classes/RigidBody3D.xml:120
+#: doc/classes/RigidBody3D.xml:127
msgid ""
"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."
@@ -39840,47 +49937,64 @@ msgid ""
"collision queries. See also [PhysicsShapeQueryResult2D]."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:18
-msgid ""
-"Sets the [Shape2D] that will be used for collision/intersection queries."
-msgstr ""
-
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:24
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:15
msgid "If [code]true[/code], the query will take [Area2D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:18
msgid ""
"If [code]true[/code], the query will take [PhysicsBody2D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:30
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:30
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:21
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:21
msgid "The physics layer(s) the query will take into account (as a bitmask)."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:33
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:33
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:24
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:24
msgid ""
"The list of objects or object [RID]s that will be excluded from collisions."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:36
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:36 doc/classes/Shape3D.xml:16
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:27 doc/classes/Shape3D.xml:16
msgid "The collision margin for the shape."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:39
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:30
msgid "The motion of the shape being queried for."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:42
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:39
-msgid "The queried shape's [RID]. See also [method set_shape]."
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:33
+msgid ""
+"The [Shape2D] that will be used for collision/intersection queries. This "
+"stores the actual reference which avoids the shape to be released while "
+"being used for queries, so always prefer using this over [member shape_rid]."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:45
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:42
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:36
+msgid ""
+"The queried shape's [RID] that will be used for collision/intersection "
+"queries. Use this over [member shape] if you want to optimize for "
+"performance using the Servers API:\n"
+"[codeblock]\n"
+"var shape_rid = PhysicsServer2D.circle_shape_create()\n"
+"var radius = 64\n"
+"PhysicsServer2D.shape_set_data(shape_rid, radius)\n"
+"\n"
+"var params = PhysicsShapeQueryParameters2D.new()\n"
+"params.shape_rid = shape_rid\n"
+"\n"
+"# Execute physics queries here...\n"
+"\n"
+"# Release the shape when done with physics queries.\n"
+"PhysicsServer2D.free_rid(shape_rid)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:52
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:49
msgid "The queried shape's transform matrix."
msgstr ""
@@ -39894,18 +50008,40 @@ msgid ""
"collision queries. See also [PhysicsShapeQueryResult3D]."
msgstr ""
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:15
+msgid "If [code]true[/code], the query will take [Area3D]s into account."
+msgstr ""
+
#: doc/classes/PhysicsShapeQueryParameters3D.xml:18
msgid ""
-"Sets the [Shape3D] that will be used for collision/intersection queries."
+"If [code]true[/code], the query will take [PhysicsBody3D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:24
-msgid "If [code]true[/code], the query will take [Area3D]s into account."
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:30
+msgid ""
+"The [Shape3D] that will be used for collision/intersection queries. This "
+"stores the actual reference which avoids the shape to be released while "
+"being used for queries, so always prefer using this over [member shape_rid]."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:33
msgid ""
-"If [code]true[/code], the query will take [PhysicsBody3D]s into account."
+"The queried shape's [RID] that will be used for collision/intersection "
+"queries. Use this over [member shape] if you want to optimize for "
+"performance using the Servers API:\n"
+"[codeblock]\n"
+"var shape_rid = PhysicsServer3D.shape_create(PhysicsServer3D.SHAPE_SPHERE)\n"
+"var radius = 2.0\n"
+"PhysicsServer3D.shape_set_data(shape_rid, radius)\n"
+"\n"
+"var params = PhysicsShapeQueryParameters3D.new()\n"
+"params.shape_rid = shape_rid\n"
+"\n"
+"# Execute physics queries here...\n"
+"\n"
+"# Release the shape when done with physics queries.\n"
+"PhysicsServer3D.free_rid(shape_rid)\n"
+"[/codeblock]"
msgstr ""
#: doc/classes/PhysicsShapeQueryResult2D.xml:4
@@ -40046,92 +50182,102 @@ msgid ""
"code]."
msgstr ""
-#: doc/classes/Plane.xml:72
-msgid "Returns a point on the plane."
-msgstr ""
-
-#: doc/classes/Plane.xml:83
+#: doc/classes/Plane.xml:76
+#, fuzzy
msgid ""
-"Returns [code]true[/code] if [code]point[/code] is inside the plane (by a "
-"very minimum [code]epsilon[/code] threshold)."
+"Returns [code]true[/code] if [code]point[/code] is inside the plane. "
+"Comparison uses a custom minimum [code]epsilon[/code] threshold."
msgstr ""
+"Devuelve [code]true[/code] si [code]point[/code] está dentro del círculo o "
+"si está situado exactamente [i]on[/i] el límite del círculo, de lo contrario "
+"devuelve [code]false[/code]."
-#: doc/classes/Plane.xml:94
+#: doc/classes/Plane.xml:87
msgid ""
"Returns the intersection point of the three planes [code]b[/code], [code]c[/"
"code] and this plane. If no intersection is found, [code]null[/code] is "
"returned."
msgstr ""
-#: doc/classes/Plane.xml:105
+#: doc/classes/Plane.xml:98
msgid ""
"Returns the intersection point of a ray consisting of the position "
"[code]from[/code] and the direction normal [code]dir[/code] with this plane. "
"If no intersection is found, [code]null[/code] is returned."
msgstr ""
-#: doc/classes/Plane.xml:116
+#: doc/classes/Plane.xml:109
msgid ""
"Returns the intersection point of a segment from position [code]begin[/code] "
"to position [code]end[/code] with this plane. If no intersection is found, "
"[code]null[/code] is returned."
msgstr ""
-#: doc/classes/Plane.xml:125
+#: doc/classes/Plane.xml:118
msgid ""
"Returns [code]true[/code] if this plane and [code]plane[/code] are "
"approximately equal, by running [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/Plane.xml:134
+#: doc/classes/Plane.xml:127
msgid ""
"Returns [code]true[/code] if [code]point[/code] is located above the plane."
msgstr ""
-#: doc/classes/Plane.xml:141
+#: doc/classes/Plane.xml:134
msgid "Returns a copy of the plane, normalized."
msgstr ""
-#: doc/classes/Plane.xml:150
+#: doc/classes/Plane.xml:143
+#, fuzzy
msgid ""
-"Returns the orthogonal projection of point [code]p[/code] into a point in "
-"the plane."
+"Returns the orthogonal projection of [code]point[/code] into a point in the "
+"plane."
msgstr ""
+"Devuelve el punto más cercano al [code]point[/code] provisto en la "
+"superficie de la malla de navegación."
-#: doc/classes/Plane.xml:156
+#: doc/classes/Plane.xml:149
msgid ""
-"Distance from the origin to the plane, in the direction of [member normal]."
+"The distance from the origin to the plane, in the direction of [member "
+"normal]. This value is typically non-negative.\n"
+"In the scalar equation of the plane [code]ax + by + cz = d[/code], this is "
+"[code]d[/code], while the [code](a, b, c)[/code] coordinates are represented "
+"by the [member normal] property."
msgstr ""
-#: doc/classes/Plane.xml:159
+#: doc/classes/Plane.xml:153
msgid ""
-"The normal of the plane. \"Over\" or \"Above\" the plane is considered the "
-"side of the plane towards where the normal is pointing."
+"The normal of the plane, which must be normalized.\n"
+"In the scalar equation of the plane [code]ax + by + cz = d[/code], this is "
+"the vector [code](a, b, c)[/code], where [code]d[/code] is the [member d] "
+"property."
msgstr ""
-#: doc/classes/Plane.xml:162
-msgid "The [member normal]'s X component."
+#: doc/classes/Plane.xml:157
+msgid "The X component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:165
-msgid "The [member normal]'s Y component."
-msgstr ""
+#: doc/classes/Plane.xml:160
+#, fuzzy
+msgid "The Y component of the plane's [member normal] vector."
+msgstr "La imagen de la cámara del componente Y."
-#: doc/classes/Plane.xml:168
-msgid "The [member normal]'s Z component."
+#: doc/classes/Plane.xml:163
+msgid "The Z component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:173
-msgid "A plane that extends in the Y and Z axes."
+#: doc/classes/Plane.xml:168
+msgid "A plane that extends in the Y and Z axes (normal vector points +X)."
msgstr ""
-#: doc/classes/Plane.xml:176
-msgid "A plane that extends in the X and Z axes."
+#: doc/classes/Plane.xml:171
+msgid "A plane that extends in the X and Z axes (normal vector points +Y)."
msgstr ""
-#: doc/classes/Plane.xml:179
-msgid "A plane that extends in the X and Y axes."
+#: doc/classes/Plane.xml:174
+msgid "A plane that extends in the X and Y axes (normal vector points +Z)."
msgstr ""
#: doc/classes/PlaneMesh.xml:4
@@ -40842,18 +50988,25 @@ msgstr ""
#: doc/classes/PrimitiveMesh.xml:16
msgid ""
-"Returns mesh arrays used to constitute surface of [Mesh]. Mesh arrays can be "
-"used with [ArrayMesh] to create new surfaces."
+"Returns mesh arrays used to constitute surface of [Mesh]. The result can be "
+"passed to [method ArrayMesh.add_surface_from_arrays] to create a new "
+"surface. For example:\n"
+"[codeblock]\n"
+"var c := CylinderMesh.new()\n"
+"var arr_mesh := ArrayMesh.new()\n"
+"arr_mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLES, c."
+"get_mesh_arrays())\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:22
+#: doc/classes/PrimitiveMesh.xml:27
msgid ""
"Overrides the [AABB] with one defined by user for use with frustum culling. "
"Especially useful to avoid unnexpected culling when using a shader to "
"offset vertices."
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:25
+#: doc/classes/PrimitiveMesh.xml:30
msgid ""
"If set, the order of the vertices in each triangle are reversed resulting in "
"the backside of the mesh being drawn.\n"
@@ -40861,7 +51014,7 @@ msgid ""
"[member BaseMaterial3D.cull_mode]."
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:29
+#: doc/classes/PrimitiveMesh.xml:34
msgid "The current [Material] of the primitive mesh."
msgstr ""
@@ -41292,11 +51445,17 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:260
msgid ""
+"Safer override for [member audio/output_latency] in the Web platform, to "
+"avoid audio issues especially on mobile devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:263
+msgid ""
"Setting to hardcode audio delay when playing video. Best to leave this "
"untouched unless you know what you are doing."
msgstr ""
-#: doc/classes/ProjectSettings.xml:263
+#: doc/classes/ProjectSettings.xml:266
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -41306,7 +51465,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:269
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -41316,27 +51475,27 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:269
+#: doc/classes/ProjectSettings.xml:272
msgid ""
"The default compression level for Zstandard. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
"speed. Decompression speed is mostly unaffected by the compression level."
msgstr ""
-#: doc/classes/ProjectSettings.xml:272
+#: doc/classes/ProjectSettings.xml:275
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:278
msgid ""
"Largest size limit (in power of 2) allowed when compressing using long-"
"distance matching with Zstandard. Higher values can result in better "
"compression, but will require more memory when compressing and decompressing."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:281
msgid ""
"If [code]true[/code], displays getters and setters in autocompletion results "
"in the script editor. This setting is meant to be used when porting old "
@@ -41344,74 +51503,55 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:281
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:284
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:287
+#: doc/classes/ProjectSettings.xml:294
msgid ""
"If [code]true[/code], enables specific GDScript warnings (see [code]debug/"
"gdscript/warnings/*[/code] settings). If [code]false[/code], disables all "
"GDScript warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
-msgid ""
-"If [code]true[/code], enables warnings when a function is declared with the "
-"same name as a constant."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:296
-msgid ""
-"If [code]true[/code], enables warnings when a function is declared with the "
-"same name as a variable. This will turn into an error in a future version "
-"when first-class functions become supported in GDScript."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:299
-msgid ""
-"If [code]true[/code], enables warnings when a function assigned to a "
-"variable may yield and return a function state instead of a value."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:302
+#: doc/classes/ProjectSettings.xml:300
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:303
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when dividing an integer by another "
"integer (the decimal part will be discarded)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when passing a floating-point value "
"to a function that expects an integer (it will be converted and lose "
"precision)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:314
+#: doc/classes/ProjectSettings.xml:312
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
@@ -41432,102 +51572,85 @@ msgid ""
"member variable)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:323
+#: doc/classes/ProjectSettings.xml:325
msgid ""
"If [code]true[/code], enables warnings when calling an expression that has "
"no effect on the surrounding code, such as writing [code]2 + 2[/code] as a "
"statement."
msgstr ""
-#: doc/classes/ProjectSettings.xml:326
+#: doc/classes/ProjectSettings.xml:328
msgid ""
"If [code]true[/code], enables warnings when calling a ternary expression "
"that has no effect on the surrounding code, such as writing [code]42 if "
"active else 0[/code] as a statement."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:331
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:334
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:335
+#: doc/classes/ProjectSettings.xml:337
msgid ""
"If [code]true[/code], enables warnings when assigning a variable using an "
"assignment operator like [code]+=[/code] if the variable wasn't previously "
"assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:338
+#: doc/classes/ProjectSettings.xml:340
msgid ""
"If [code]true[/code], enables warnings when unreachable code is detected "
"(such as after a [code]return[/code] statement that will always be executed)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:345
msgid ""
"If [code]true[/code], enables warnings when using an expression whose type "
"may not be compatible with the function parameter expected."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:348
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:347
+#: doc/classes/ProjectSettings.xml:351
msgid ""
"If [code]true[/code], enables warnings when calling a method whose presence "
"is not guaranteed at compile-time in the class."
msgstr ""
-#: doc/classes/ProjectSettings.xml:350
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], enables warnings when accessing a property whose "
"presence is not guaranteed at compile-time in the class."
msgstr ""
-#: doc/classes/ProjectSettings.xml:353
-msgid ""
-"If [code]true[/code], enables warnings when a function parameter is unused."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:356
-msgid ""
-"If [code]true[/code], enables warnings when a member variable is unused."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:363
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:362
+#: doc/classes/ProjectSettings.xml:366
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:365
-msgid ""
-"If [code]true[/code], enables warnings when a variable is declared with the "
-"same name as a function. This will turn into an error in a future version "
-"when first-class functions become supported in GDScript."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:368
+#: doc/classes/ProjectSettings.xml:369
msgid ""
"If [code]true[/code], enables warnings when assigning the result of a "
"function that returns [code]void[/code] to a variable."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:374
+#: doc/classes/ProjectSettings.xml:375
msgid ""
"Maximum number of frames per second allowed. The actual number of frames per "
"second may still be below this value if the game is lagging.\n"
@@ -41538,143 +51661,143 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:379
+#: doc/classes/ProjectSettings.xml:380
msgid "Maximum call stack allowed for debugging GDScript."
msgstr ""
-#: doc/classes/ProjectSettings.xml:382
+#: doc/classes/ProjectSettings.xml:383
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:385
+#: doc/classes/ProjectSettings.xml:386
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:388
+#: doc/classes/ProjectSettings.xml:389
msgid ""
"Print more information to standard output when running. It displays "
"information such as memory leaks, which scenes and resources are being "
"loaded, etc."
msgstr ""
-#: doc/classes/ProjectSettings.xml:391
+#: doc/classes/ProjectSettings.xml:392
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:394
+#: doc/classes/ProjectSettings.xml:395
msgid ""
"Color of the contact points between collision shapes, visible when \"Visible "
"Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:397
+#: doc/classes/ProjectSettings.xml:398
msgid ""
"Maximum number of contact points between collision shapes to display when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:400
+#: doc/classes/ProjectSettings.xml:401
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
msgid "Hotspot for the custom mouse cursor image."
msgstr ""
-#: doc/classes/ProjectSettings.xml:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
msgid ""
"If [code]true[/code], allows HiDPI display on Windows and macOS. This "
"setting has no effect on desktop Linux, as DPI-awareness fallbacks are not "
"supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"If [code]true[/code], keeps the screen on (even in case of inactivity), so "
"the screensaver does not take over. Works on desktop and mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
msgid "Default orientation on mobile devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"If [code]true[/code], the home indicator is hidden automatically. This only "
"affects iOS devices without a physical home button."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid "Force the window to be always on top."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid "Force the window to be borderless."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Sets the window to full screen when it starts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid ""
"Sets the game's main viewport height. On desktop platforms, this is the "
"default window size. Stretch mode settings also use this as a reference when "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Allows the window to be resizable by default."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"Sets the game's main viewport width. On desktop platforms, this is the "
"default window size. Stretch mode settings also use this as a reference when "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:454
+#: doc/classes/ProjectSettings.xml:455
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:457
+#: doc/classes/ProjectSettings.xml:458
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -41683,7 +51806,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:460
+#: doc/classes/ProjectSettings.xml:461
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -41694,13 +51817,13 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:464
+#: doc/classes/ProjectSettings.xml:465
msgid ""
"Search path for project-specific script templates. Script templates will be "
"search both in the editor-specific path and in this project-specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:467
+#: doc/classes/ProjectSettings.xml:468
msgid ""
"Text-based file extensions to include in the script editor's \"Find in Files"
"\" feature. You can add e.g. [code]tscn[/code] if you wish to also parse "
@@ -41708,49 +51831,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:470
+#: doc/classes/ProjectSettings.xml:471
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:473
+#: doc/classes/ProjectSettings.xml:474
msgid ""
-"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
+"If [code]true[/code], swaps Cancel and OK buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:478
+#: doc/classes/ProjectSettings.xml:479
msgid ""
"Path to a custom [Theme] resource file to use for the project ([code]theme[/"
"code] or generic [code]tres[/code]/[code]res[/code] extension)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:484
+#: doc/classes/ProjectSettings.xml:485
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:487
+#: doc/classes/ProjectSettings.xml:488
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:490
+#: doc/classes/ProjectSettings.xml:491
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:493
+#: doc/classes/ProjectSettings.xml:494
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:496
+#: doc/classes/ProjectSettings.xml:497
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -41759,7 +51882,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"Default [InputEventAction] to discard a modal or pending input.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -41767,7 +51890,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:504
+#: doc/classes/ProjectSettings.xml:505
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -41775,7 +51898,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:508
+#: doc/classes/ProjectSettings.xml:509
msgid ""
"Default [InputEventAction] to go to the end position of a [Control] (e.g. "
"last item in an [ItemList] or a [Tree]), matching the behavior of [constant "
@@ -41785,7 +51908,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:512
+#: doc/classes/ProjectSettings.xml:513
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -41794,7 +51917,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:516
+#: doc/classes/ProjectSettings.xml:517
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -41803,7 +51926,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:520
+#: doc/classes/ProjectSettings.xml:521
msgid ""
"Default [InputEventAction] to go to the start position of a [Control] (e.g. "
"first item in an [ItemList] or a [Tree]), matching the behavior of [constant "
@@ -41813,7 +51936,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -41821,7 +51944,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:528
+#: doc/classes/ProjectSettings.xml:529
msgid ""
"Default [InputEventAction] to go down a page in a [Control] (e.g. in an "
"[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEDOWN] on "
@@ -41831,7 +51954,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Default [InputEventAction] to go up a page in a [Control] (e.g. in an "
"[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEUP] on "
@@ -41841,7 +51964,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:536
+#: doc/classes/ProjectSettings.xml:537
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -41849,7 +51972,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:540
+#: doc/classes/ProjectSettings.xml:541
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -41858,7 +51981,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -41866,371 +51989,371 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:548
+#: doc/classes/ProjectSettings.xml:549
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:554
+#: doc/classes/ProjectSettings.xml:555
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:557
+#: doc/classes/ProjectSettings.xml:558
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:560
+#: doc/classes/ProjectSettings.xml:561
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:566
+#: doc/classes/ProjectSettings.xml:567
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:569
+#: doc/classes/ProjectSettings.xml:570
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:572
+#: doc/classes/ProjectSettings.xml:573
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:578
+#: doc/classes/ProjectSettings.xml:579
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:581
+#: doc/classes/ProjectSettings.xml:582
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:584
+#: doc/classes/ProjectSettings.xml:585
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:590
+#: doc/classes/ProjectSettings.xml:591
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:593
+#: doc/classes/ProjectSettings.xml:594
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:596
+#: doc/classes/ProjectSettings.xml:597
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:602
+#: doc/classes/ProjectSettings.xml:603
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid ""
"The locale to fall back to if a translation isn't available in a given "
"language. If left empty, [code]en[/code] (English) will be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "If [code]true[/code], logs all output to files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:806
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:809
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:812
msgid ""
"Godot uses a message queue to defer some function calls. If you run out of "
"space on it (you will see an error), you can increase the size here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:815
msgid ""
"This is used by servers when used in multi-threading mode (servers and "
"visual). RIDs are preallocated to avoid stalling the server requesting them "
@@ -42238,56 +52361,56 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:829
+#: doc/classes/ProjectSettings.xml:832
msgid ""
"Maximum amount of characters allowed to send as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:832
+#: doc/classes/ProjectSettings.xml:835
msgid ""
"Maximum number of errors allowed to be sent from the debugger. Over this "
"value, content is dropped. This helps not to stall the debugger connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:835
+#: doc/classes/ProjectSettings.xml:838
msgid ""
"Maximum amount of messages in the debugger queue. Over this value, content "
"is dropped. This helps to limit the debugger memory usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:838
+#: doc/classes/ProjectSettings.xml:841
msgid ""
"Maximum number of warnings allowed to be sent from the debugger. Over this "
"value, content is dropped. This helps not to stall the debugger connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:841
+#: doc/classes/ProjectSettings.xml:844
msgid ""
"Default size of packet peer stream for deserializing Godot data. Over this "
"size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:844
+#: doc/classes/ProjectSettings.xml:847
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:847
+#: doc/classes/ProjectSettings.xml:850
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:850
+#: doc/classes/ProjectSettings.xml:853
msgid ""
"Amount of read ahead used by remote filesystem. Higher values decrease the "
"effects of latency at the cost of higher bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:853
+#: doc/classes/ProjectSettings.xml:856
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:856
+#: doc/classes/ProjectSettings.xml:859
msgid ""
"The CA certificates bundle to use for SSL connections. If this is set to a "
"non-empty value, this will [i]override[/i] Godot's default [url=https://"
@@ -42297,31 +52420,31 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:863
msgid ""
"When creating node names automatically, set the type of casing in this "
"project. This is mostly an editor setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:866
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:869
msgid "Size of the hash table used for the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:872
msgid "Cell size used for the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:875
msgid "The default angular damp in 2D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:878
msgid ""
"The default gravity strength in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -42333,7 +52456,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:883
+#: doc/classes/ProjectSettings.xml:886
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -42345,38 +52468,38 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:891
+#: doc/classes/ProjectSettings.xml:894
msgid "The default linear damp in 2D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:894
+#: doc/classes/ProjectSettings.xml:897
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:897
+#: doc/classes/ProjectSettings.xml:900
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics2D\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:901
+#: doc/classes/ProjectSettings.xml:904
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant PhysicsServer2D."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:904
+#: doc/classes/ProjectSettings.xml:907
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant PhysicsServer2D."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:907
+#: doc/classes/ProjectSettings.xml:910
msgid ""
"Sets whether physics is run on the main thread or a separate one. Running "
"the server on a thread increases performance, but restricts API access to "
@@ -42386,23 +52509,23 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:914
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant PhysicsServer2D.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:917
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody3D] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:920
msgid "The default angular damp in 3D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:923
msgid ""
"The default gravity strength in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -42414,7 +52537,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:928
+#: doc/classes/ProjectSettings.xml:931
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -42426,11 +52549,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:936
+#: doc/classes/ProjectSettings.xml:939
msgid "The default linear damp in 3D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:939
+#: doc/classes/ProjectSettings.xml:942
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -42438,11 +52561,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:943
+#: doc/classes/ProjectSettings.xml:946
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:949
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -42451,7 +52574,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:950
+#: doc/classes/ProjectSettings.xml:953
msgid ""
"Fix to improve physics jitter, specially on monitors where refresh rate is "
"different than the physics FPS.\n"
@@ -42459,7 +52582,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:954
+#: doc/classes/ProjectSettings.xml:957
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -42467,7 +52590,7 @@ msgid ""
"programmatically, use [method RenderingServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:957
+#: doc/classes/ProjectSettings.xml:960
msgid ""
"[Environment] that will be used as a fallback environment in case a scene "
"does not specify its own environment. The default environment is loaded in "
@@ -42477,14 +52600,14 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:986
+#: doc/classes/ProjectSettings.xml:989
msgid ""
"Max amount of elements renderable in a frame. If more than this are visible "
"per frame, they will be dropped. Keep in mind elements refer to mesh "
"surfaces and not meshes themselves."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:994
msgid ""
"Some NVIDIA GPU drivers have a bug which produces flickering issues for the "
"[code]draw_rect[/code] method, especially as used in [TileMap]. Refer to "
@@ -42496,73 +52619,73 @@ msgid ""
"using the Vulkan backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:995
+#: doc/classes/ProjectSettings.xml:998
msgid ""
"If [code]true[/code], forces snapping of polygons to pixels in 2D rendering. "
"May help in some pixel art styles."
msgstr ""
-#: doc/classes/ProjectSettings.xml:998
+#: doc/classes/ProjectSettings.xml:1001
msgid ""
"Sets the quality of the depth of field effect. Higher quality takes more "
"samples, which is slower but looks smoother."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1001
+#: doc/classes/ProjectSettings.xml:1004
msgid ""
"Sets the depth of field shape. Can be Box, Hexagon, or Circle. Box is the "
"fastest. Circle is the most realistic, but also the most expensive to "
"compute."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1004
+#: doc/classes/ProjectSettings.xml:1007
msgid ""
"If [code]true[/code], jitters DOF samples to make effect slightly blurrier "
"and hide lines created from low sample rates. This can result in a slightly "
"grainy appearance when used with a low number of samples."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1010
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1010
+#: doc/classes/ProjectSettings.xml:1013
msgid ""
"If [code]true[/code], performs a previous depth pass before rendering "
"materials. This increases performance in scenes with high overdraw, when "
"complex materials and lighting are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1016
msgid ""
"The directional shadow's size in pixels. Higher values will result in "
"sharper shadows, at the cost of performance. The value will be rounded up to "
"the nearest power of 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1016
+#: doc/classes/ProjectSettings.xml:1019
msgid ""
"Lower-end override for [member rendering/quality/directional_shadow/size] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1019
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"Quality setting for shadows cast by [DirectionalLight3D]s. Higher quality "
"settings use more samples when reading from shadow maps and are thus slower. "
"Low quality settings may result in shadows looking grainy."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1022
+#: doc/classes/ProjectSettings.xml:1025
msgid ""
"Lower-end override for [member rendering/quality/directional_shadow/"
"soft_shadow_quality] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1028
msgid ""
"The video driver to use (\"GLES2\" or \"Vulkan\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -42572,32 +52695,32 @@ msgid ""
"get_current_video_driver[/code] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1031
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"If [code]true[/code], take additional samples when rendering objects "
"affected by a [GIProbe] to reduce artifacts from only sampling in one "
"direction."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1034
+#: doc/classes/ProjectSettings.xml:1037
msgid ""
"Sets the number of cone samples taken when rendering objects affected by "
"[GIProbe]s."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1037
+#: doc/classes/ProjectSettings.xml:1040
msgid ""
"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."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1040
+#: doc/classes/ProjectSettings.xml:1043
msgid ""
"Lower-end override for [member rendering/quality/glow/upscale_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1043
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Strategy used for framebuffer allocation. The simpler it is, the less "
"resources it uses (but the less features it supports). If set to \"2D "
@@ -42607,41 +52730,41 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1046
+#: doc/classes/ProjectSettings.xml:1049
msgid ""
"Lower-end override for [member rendering/quality/intended_usage/"
"framebuffer_allocation] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1052
msgid ""
"Number of cubemaps to store in the reflection atlas. The number of "
"[ReflectionProbe]s in a scene will be limited by this amount. A higher "
"number requires more VRAM."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1052
+#: doc/classes/ProjectSettings.xml:1055
msgid ""
"Size of cubemap faces for [ReflectionProbe]s. A higher number requires more "
"VRAM and may make reflection probe updating slower."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1055
+#: doc/classes/ProjectSettings.xml:1058
msgid ""
"Lower-end override for [member rendering/quality/reflection_atlas/"
"reflection_size] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1058
+#: doc/classes/ProjectSettings.xml:1061
msgid ""
"Use a higher quality variant of the fast filtering algorithm. Significantly "
"slower than using default quality, but results in smoother reflections. "
"Should only be used when the scene is especially detailed."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1061
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Sets the number of samples to take when using importance sampling for [Sky]s "
"and [ReflectionProbe]s. A higher value will result in smoother, higher "
@@ -42651,19 +52774,19 @@ msgid ""
"environments with a high level of detail."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1064
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Lower-end override for [member rendering/quality/reflections/ggx_samples] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1067
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Limits the number of layers to use in radiance maps when using importance "
"sampling. A lower number will be slightly faster and take up less VRAM."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1070
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise and "
@@ -42672,14 +52795,14 @@ msgid ""
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1073
+#: doc/classes/ProjectSettings.xml:1076
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"texture_array_reflections] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1079
msgid ""
"Sets the number of MSAA samples to use (as a power of two). MSAA is used to "
"reduce aliasing around the edges of polygons. A higher MSAA value results in "
@@ -42687,7 +52810,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1080
+#: doc/classes/ProjectSettings.xml:1083
msgid ""
"Sets the screen-space antialiasing mode for the default screen [Viewport]. "
"Screen-space antialiasing works by selectively blurring edges in a post-"
@@ -42696,133 +52819,117 @@ msgid ""
"MSAA and will smooth out specular aliasing, but tend to make scenes appear "
"blurry.\n"
"Another way to combat specular aliasing is to enable [member rendering/"
-"quality/screen_filters/screen_space_roughness_limiter]."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:1084
-msgid ""
-"Enables the screen-space roughness limiter which increases material "
-"roughness in areas with a high normal frequency (i.e. when normals change a "
-"lot from pixel to pixel). This helps to reduce the amount of specular "
-"aliasing in a scene. Specular aliasing looks like random bright pixels that "
-"occur in reflections."
+"quality/screen_filters/screen_space_roughness_limiter_enabled]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1087
-msgid ""
-"Curves the amount of the roughness limited effect. A higher value limits the "
-"effect to very sharply curved surfaces, while a lower threshold extends the "
-"effect to smoother surfaces."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:1090
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"Sets the quality for rough screen-space reflections. Turning off will make "
"all screen space reflections sharp, while higher values make rough "
"reflections look better."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1093
+#: doc/classes/ProjectSettings.xml:1096
msgid ""
"If [code]true[/code], uses faster but lower-quality Blinn model to generate "
"blurred reflections instead of the GGX model."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1099
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_blinn_over_ggx] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1102
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1102
+#: doc/classes/ProjectSettings.xml:1105
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_lambert_over_burley] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1105
+#: doc/classes/ProjectSettings.xml:1108
msgid ""
"If [code]true[/code], forces vertex shading for all rendering. This can "
"increase performance a lot, but also reduces quality immensely. Can be used "
"to optimize performance on low-end mobile devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1108
+#: doc/classes/ProjectSettings.xml:1111
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_vertex_shading] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1111 doc/classes/ProjectSettings.xml:1114
-#: doc/classes/ProjectSettings.xml:1117 doc/classes/ProjectSettings.xml:1120
+#: doc/classes/ProjectSettings.xml:1114 doc/classes/ProjectSettings.xml:1117
+#: doc/classes/ProjectSettings.xml:1120 doc/classes/ProjectSettings.xml:1123
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1123
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1126
+#: doc/classes/ProjectSettings.xml:1129
msgid ""
"Lower-end override for [member rendering/quality/shadow_atlas/size] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1132
msgid ""
"Quality setting for shadows cast by [OmniLight3D]s and [SpotLight3D]s. "
"Higher quality settings use more samples when reading from shadow maps and "
"are thus slower. Low quality settings may result in shadows looking grainy."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1132
+#: doc/classes/ProjectSettings.xml:1135
msgid ""
"Lower-end override for [member rendering/quality/shadows/"
"soft_shadow_quality] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1135
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"If [code]true[/code], screen-space ambient occlusion will be rendered at "
"half size and then upscaled before being added to the scene. This is "
"significantly faster but may miss small details."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1138
+#: doc/classes/ProjectSettings.xml:1141
msgid ""
"Sets the quality of the screen-space ambient occlusion effect. Higher values "
"take more samples and so will result in better quality, at the cost of "
"performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1144
msgid ""
"Scales the depth over which the subsurface scattering effect is applied. A "
"high value may allow light to scatter into a part of the mesh or another "
"mesh that is close in screen space but far in depth."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1144
+#: doc/classes/ProjectSettings.xml:1147
msgid ""
"Sets the quality of the subsurface scattering effect. Higher values are "
"slower but look nicer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1147
+#: doc/classes/ProjectSettings.xml:1150
msgid ""
"Scales the distance over which samples are taken for subsurface scattering "
"effect. Changing this does not impact performance, but higher values will "
@@ -42830,7 +52937,7 @@ msgid ""
"out. A lower value results in a smaller spread of scattered light."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1150
+#: doc/classes/ProjectSettings.xml:1153
msgid ""
"Sets the maximum number of samples to take when using anisotropic filtering "
"on textures (as a power of two). A higher sample count will result in "
@@ -42839,7 +52946,7 @@ msgid ""
"materials where it is enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1153
+#: doc/classes/ProjectSettings.xml:1156
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -42848,49 +52955,49 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Thread model for rendering. Rendering on a thread can vastly improve "
"performance, but synchronizing to the main thread can cause a bit more "
"jitter."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
"only supported on desktop platforms, and only when using the Vulkan renderer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
"doesn't support alpha channels in textures."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
"compression algorithm is only supported when using the Vulkan renderer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1175
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
"compression algorithm is only supported on iOS."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
"supported on desktop platforms and consoles."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1182
+#: doc/classes/ProjectSettings.xml:1189
msgid "Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses."
msgstr ""
@@ -42920,13 +53027,14 @@ msgstr ""
#: doc/classes/Quat.xml:7
msgid ""
-"A unit quaternion used for representing 3D rotations.\n"
-"It is similar to [Basis], which implements matrix representation of "
-"rotations, and can be parametrized using both an axis-angle pair or Euler "
-"angles. But due to its compactness and the way it is stored in memory, "
-"certain operations (obtaining axis-angle and performing SLERP, in "
-"particular) are more efficient and robust against floating-point errors.\n"
-"Quaternions need to be (re)normalized."
+"A unit quaternion used for representing 3D rotations. Quaternions need to be "
+"normalized to be used for rotation.\n"
+"It is similar to Basis, which implements matrix representation of rotations, "
+"and can be parametrized using both an axis-angle pair or Euler angles. Basis "
+"stores rotation, scale, and shearing, while Quat only stores rotation.\n"
+"Due to its compactness and the way it is stored in memory, certain "
+"operations (obtaining axis-angle and performing SLERP, in particular) are "
+"more efficient and robust against floating-point errors."
msgstr ""
#: doc/classes/Quat.xml:12
@@ -42936,29 +53044,39 @@ msgid ""
msgstr ""
#: doc/classes/Quat.xml:21
-msgid "Returns the rotation matrix corresponding to the given quaternion."
-msgstr ""
+#, fuzzy
+msgid "Constructs a quaternion from the given [Basis]."
+msgstr "Crear una matriz de rotación a partir del cuaternario dado."
#: doc/classes/Quat.xml:30
+#, fuzzy
msgid ""
-"Returns a quaternion that will perform a rotation specified by Euler angles "
-"(in the YXZ convention: first Z, then X, and Y last), given in the vector "
-"format as (X angle, Y angle, Z angle)."
+"Constructs a quaternion that will perform a rotation specified by Euler "
+"angles (in the YXZ convention: when decomposing, first Z, then X, and Y "
+"last), given in the vector format as (X angle, Y angle, Z angle)."
msgstr ""
+"Crear una matriz de rotación (en la convención YXZ: primero Z, luego X e Y "
+"por último) a partir de los ángulos de Euler especificados, dados en el "
+"formato vectorial como (ángulo X, ángulo Y, ángulo Z)."
#: doc/classes/Quat.xml:41
+#, fuzzy
msgid ""
-"Returns a quaternion that will rotate around the given axis by the specified "
-"angle. The axis must be a normalized vector."
+"Constructs a quaternion that will rotate around the given axis by the "
+"specified angle. The axis must be a normalized vector."
msgstr ""
+"Crea una matriz de rotación que gira alrededor del eje dado por el ángulo "
+"especificado, en radianes. El eje debe ser un vector normalizado."
#: doc/classes/Quat.xml:56
-msgid "Returns a quaternion defined by these values."
+msgid "Constructs a quaternion defined by the given values."
msgstr ""
#: doc/classes/Quat.xml:71
msgid ""
-"Performs a cubic spherical-linear interpolation with another quaternion."
+"Performs a cubic spherical interpolation between quaternions [code]preA[/"
+"code], this vector, [code]b[/code], and [code]postB[/code], by the given "
+"amount [code]t[/code]."
msgstr ""
#: doc/classes/Quat.xml:80
@@ -42966,12 +53084,17 @@ msgid "Returns the dot product of two quaternions."
msgstr ""
#: doc/classes/Quat.xml:87
+#, fuzzy
msgid ""
-"Returns Euler angles (in the YXZ convention: first Z, then X, and Y last) "
-"corresponding to the rotation represented by the unit quaternion. Returned "
-"vector contains the rotation angles in the format (X angle, Y angle, Z "
-"angle)."
+"Returns Euler angles (in the YXZ convention: when decomposing, first Z, then "
+"X, and Y last) corresponding to the rotation represented by the unit "
+"quaternion. Returned vector contains the rotation angles in the format (X "
+"angle, Y angle, Z angle)."
msgstr ""
+"Devuelve la rotación de la base en forma de ángulos de Euler (en la "
+"convención YXZ: primero Z, luego X, y por último Y). El vector devuelto "
+"contiene los ángulos de rotación en el formato (ángulo X, ángulo Y, ángulo "
+"Z). Ver [method get_rotation_quat] si necesitas un cuaternario en su lugar."
#: doc/classes/Quat.xml:94
msgid "Returns the inverse of the quaternion."
@@ -43007,46 +53130,64 @@ msgid ""
msgstr ""
#: doc/classes/Quat.xml:151
+#, fuzzy
msgid ""
"Sets the quaternion to a rotation specified by Euler angles (in the YXZ "
-"convention: first Z, then X, and Y last), given in the vector format as (X "
-"angle, Y angle, Z angle)."
+"convention: when decomposing, first Z, then X, and Y last), given in the "
+"vector format as (X angle, Y angle, Z angle)."
msgstr ""
+"Crear una matriz de rotación (en la convención YXZ: primero Z, luego X e Y "
+"por último) a partir de los ángulos de Euler especificados, dados en el "
+"formato vectorial como (ángulo X, ángulo Y, ángulo Z)."
#: doc/classes/Quat.xml:162
-msgid "Performs a spherical-linear interpolation with another quaternion."
+msgid ""
+"Returns the result of the spherical linear interpolation between this "
+"quaternion and [code]to[/code] by amount [code]weight[/code].\n"
+"[b]Note:[/b] Both quaternions must be normalized."
msgstr ""
-#: doc/classes/Quat.xml:173
+#: doc/classes/Quat.xml:174
msgid ""
-"Performs a spherical-linear interpolation with another quaterion without "
-"checking if the rotation path is not bigger than 90°."
+"Returns the result of the spherical linear interpolation between this "
+"quaternion and [code]to[/code] by amount [code]weight[/code], but without "
+"checking if the rotation path is not bigger than 90 degrees."
msgstr ""
-#: doc/classes/Quat.xml:182
-msgid "Transforms the vector [code]v[/code] by this quaternion."
-msgstr ""
+#: doc/classes/Quat.xml:183
+#, fuzzy
+msgid "Returns a vector transformed (multiplied) by this quaternion."
+msgstr "Devuelve un vector transformado (multiplicado) por la matriz."
-#: doc/classes/Quat.xml:188
-msgid "W component of the quaternion."
+#: doc/classes/Quat.xml:189
+msgid ""
+"W component of the quaternion (real part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:191
-msgid "X component of the quaternion."
+#: doc/classes/Quat.xml:193
+msgid ""
+"X component of the quaternion (imaginary [code]i[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:194
-msgid "Y component of the quaternion."
+#: doc/classes/Quat.xml:197
+msgid ""
+"Y component of the quaternion (imaginary [code]j[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:197
-msgid "Z component of the quaternion."
+#: doc/classes/Quat.xml:201
+msgid ""
+"Z component of the quaternion (imaginary [code]k[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:202
+#: doc/classes/Quat.xml:207
msgid ""
-"The identity rotation. Equivalent to an identity matrix. If a vector is "
-"transformed by an identity quaternion, it will not change."
+"The identity quaternion, representing no rotation. Equivalent to an identity "
+"[Basis] matrix. If a vector is transformed by an identity quaternion, it "
+"will not change."
msgstr ""
#: doc/classes/RandomNumberGenerator.xml:4
@@ -43249,7 +53390,8 @@ msgid ""
"collision information immediately instead of waiting for the next "
"[code]_physics_process[/code] call, for example if the ray or its parent has "
"changed state.\n"
-"[b]Note:[/b] [code]enabled == true[/code] is not required for this to work."
+"[b]Note:[/b] [member enabled] does not need to be [code]true[/code] for this "
+"to work."
msgstr ""
#: doc/classes/RayCast2D.xml:54 doc/classes/RayCast3D.xml:55
@@ -43355,7 +53497,8 @@ msgid ""
"Use this method to update the collision information immediately instead of "
"waiting for the next [code]_physics_process[/code] call, for example if the "
"ray or its parent has changed state.\n"
-"[b]Note:[/b] [code]enabled == true[/code] is not required for this to work."
+"[b]Note:[/b] [member enabled] does not need to be [code]true[/code] for this "
+"to work."
msgstr ""
#: doc/classes/RayCast3D.xml:71
@@ -43513,14 +53656,6 @@ msgstr ""
msgid "Returns a larger [Rect2] that contains this [Rect2] and [code]b[/code]."
msgstr ""
-#: doc/classes/Rect2.xml:174 doc/classes/Rect2i.xml:163
-msgid "Ending corner."
-msgstr ""
-
-#: doc/classes/Rect2.xml:177 doc/classes/Rect2i.xml:166
-msgid "Position (starting corner)."
-msgstr ""
-
#: doc/classes/Rect2i.xml:4
msgid "2D axis-aligned bounding box using integer coordinates."
msgstr ""
@@ -43652,22 +53787,22 @@ msgstr ""
msgid ""
"Base class for any object that keeps a reference count. [Resource] and many "
"other helper objects inherit this class.\n"
-"References keep an internal reference counter so that they are automatically "
-"released when no longer in use, and only then. References therefore do not "
-"need to be freed manually with [method Object.free].\n"
+"Unlike [Object]s, References keep an internal reference counter so that they "
+"are automatically released when no longer in use, and only then. References "
+"therefore do not need to be freed manually with [method Object.free].\n"
"In the vast majority of use cases, instantiating and using [Reference]-"
"derived types is all you need to do. The methods provided in this class are "
"only for advanced users, and can cause issues if misused."
msgstr ""
-#: doc/classes/Reference.xml:18
+#: doc/classes/Reference.xml:19
msgid ""
"Initializes the internal reference counter. Use this only if you really know "
"what you are doing.\n"
"Returns whether the initialization was successful."
msgstr ""
-#: doc/classes/Reference.xml:26
+#: doc/classes/Reference.xml:27
msgid ""
"Increments the internal reference counter. Use this only if you really know "
"what you are doing.\n"
@@ -43675,7 +53810,7 @@ msgid ""
"code] otherwise."
msgstr ""
-#: doc/classes/Reference.xml:34
+#: doc/classes/Reference.xml:35
msgid ""
"Decrements the internal reference counter. Use this only if you really know "
"what you are doing.\n"
@@ -43724,14 +53859,14 @@ msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/reflection_probes.html"
msgstr ""
-#: doc/classes/ReflectionProbe.xml:17
+#: doc/classes/ReflectionProbe.xml:23
msgid ""
"If [code]true[/code], enables box projection. This makes reflections look "
"more correct in rectangle-shaped rooms by offsetting the reflection center "
"depending on the camera's location."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:20
+#: doc/classes/ReflectionProbe.xml:26
msgid ""
"Sets the cull mask which determines what objects are drawn by this probe. "
"Every [VisualInstance3D] with a layer included in this cull mask will be "
@@ -43740,78 +53875,57 @@ msgid ""
"rendering cost."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:23
+#: doc/classes/ReflectionProbe.xml:29
msgid ""
"If [code]true[/code], computes shadows in the reflection probe. This makes "
"the reflection probe slower to render; you may want to disable this if using "
"the [constant UPDATE_ALWAYS] [member update_mode]."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:26
+#: doc/classes/ReflectionProbe.xml:32
msgid ""
"The size of the reflection probe. The larger the extents the more space "
"covered by the probe which will lower the perceived resolution. It is best "
"to keep the extents only as large as you need them."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:29
+#: doc/classes/ReflectionProbe.xml:35
msgid ""
"Defines the reflection intensity. Intensity modulates the strength of the "
"reflection."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:32
-msgid ""
-"Sets the ambient light color to be used when this probe is set to [member "
-"interior_enable]."
-msgstr ""
-
-#: doc/classes/ReflectionProbe.xml:35
-msgid ""
-"Sets the contribution value for how much the reflection affects the ambient "
-"light for this reflection probe when set to [member interior_enable]. Useful "
-"so that ambient light matches the color of the room."
-msgstr ""
-
#: doc/classes/ReflectionProbe.xml:38
-msgid ""
-"Sets the energy multiplier for this reflection probe's ambient light "
-"contribution when set to [member interior_enable]."
-msgstr ""
+#, fuzzy
+msgid "If [code]true[/code], reflections will ignore sky contribution."
+msgstr "Si [code]true[/code], este nodo se dibuja."
#: doc/classes/ReflectionProbe.xml:41
msgid ""
-"If [code]true[/code], reflections will ignore sky contribution. Ambient "
-"lighting is then controlled by the [code]interior_ambient_*[/code] "
-"properties."
-msgstr ""
-
-#: doc/classes/ReflectionProbe.xml:44
-msgid ""
"Sets the max distance away from the probe an object can be before it is "
"culled."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:47
+#: doc/classes/ReflectionProbe.xml:44
msgid ""
"Sets the origin offset to be used when this reflection probe is in box "
"project mode."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:50
+#: doc/classes/ReflectionProbe.xml:47
msgid ""
"Sets how frequently the probe is updated. Can be [constant UPDATE_ONCE] or "
"[constant UPDATE_ALWAYS]."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:55
+#: doc/classes/ReflectionProbe.xml:52
msgid ""
"Update the probe once on the next frame. The corresponding radiance map will "
"be generated over the following six frames. This is slower to update than "
"[constant UPDATE_ALWAYS] but can result in higher quality reflections."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:58
+#: doc/classes/ReflectionProbe.xml:55
msgid ""
"Update the probe every frame. This is needed when you want to capture "
"dynamic objects. However, it results in an increased render time. Use "
@@ -43841,10 +53955,10 @@ msgid ""
"read by RegEx as [code]\\d+[/code]. Similarly, [code]compile(\"\\\"(?:\\\\\\"
"\\.|[^\\\"])*\\\"\")[/code] would be read as [code]\"(?:\\\\.|[^\"])*\"[/"
"code].\n"
-"Using [method search] you can find the pattern within the given text. If a "
+"Using [method search], you can find the pattern within the given text. If a "
"pattern is found, [RegExMatch] is returned and you can retrieve details of "
-"the results using functions such as [method RegExMatch.get_string] and "
-"[method RegExMatch.get_start].\n"
+"the results using methods such as [method RegExMatch.get_string] and [method "
+"RegExMatch.get_start].\n"
"[codeblock]\n"
"var regex = RegEx.new()\n"
"regex.compile(\"\\\\w-(\\\\d+)\")\n"
@@ -43853,7 +53967,7 @@ msgid ""
" print(result.get_string()) # Would print n-0123\n"
"[/codeblock]\n"
"The results of capturing groups [code]()[/code] can be retrieved by passing "
-"the group number to the various functions in [RegExMatch]. Group 0 is the "
+"the group number to the various methods in [RegExMatch]. Group 0 is the "
"default and will always refer to the entire pattern. In the above example, "
"calling [code]result.get_string(1)[/code] would give you [code]0123[/code].\n"
"This version of RegEx also supports named capturing groups, and the names "
@@ -43874,6 +53988,15 @@ msgid ""
" print(result.get_string(\"digit\"))\n"
"# Would print 01 03 0 3f 42\n"
"[/codeblock]\n"
+"[b]Example of splitting a string using a RegEx:[/b]\n"
+"[codeblock]\n"
+"var regex = RegEx.new()\n"
+"regex.compile(\"\\\\S+\") # Negated whitespace character class.\n"
+"var results = []\n"
+"for match in regex.search_all(\"One Two \\n\\tThree\"):\n"
+" results.push_back(match.get_string())\n"
+"# The `results` array now contains \"One\", \"Two\", \"Three\".\n"
+"[/codeblock]\n"
"[b]Note:[/b] Godot's regex implementation is based on the [url=https://www."
"pcre.org/]PCRE2[/url] library. You can view the full pattern reference "
"[url=https://www.pcre.org/current/doc/html/pcre2pattern.html]here[/url].\n"
@@ -43881,38 +54004,38 @@ msgid ""
"regular expressions online."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:47
+#: modules/regex/doc_classes/RegEx.xml:56
msgid ""
"This method resets the state of the object, as if it was freshly created. "
"Namely, it unassigns the regular expression of this object."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:56
+#: modules/regex/doc_classes/RegEx.xml:65
msgid ""
"Compiles and assign the search pattern to use. Returns [constant OK] if the "
"compilation is successful. If an error is encountered, details are printed "
"to standard output and an error is returned."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:63
+#: modules/regex/doc_classes/RegEx.xml:72
msgid "Returns the number of capturing groups in compiled pattern."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:70
+#: modules/regex/doc_classes/RegEx.xml:79
msgid ""
"Returns an array of names of named capturing groups in the compiled pattern. "
"They are ordered by appearance."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:77
+#: modules/regex/doc_classes/RegEx.xml:86
msgid "Returns the original search pattern that was compiled."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:84
+#: modules/regex/doc_classes/RegEx.xml:93
msgid "Returns whether this object has a valid search pattern assigned."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:97
+#: modules/regex/doc_classes/RegEx.xml:106
msgid ""
"Searches the text for the compiled pattern. Returns a [RegExMatch] container "
"of the first matching result if found, otherwise [code]null[/code]. The "
@@ -43920,7 +54043,7 @@ msgid ""
"and end anchor would be."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:110
+#: modules/regex/doc_classes/RegEx.xml:119
msgid ""
"Searches the text for the compiled pattern. Returns an array of [RegExMatch] "
"containers for each non-overlapping result. If no results were found, an "
@@ -43928,7 +54051,7 @@ msgid ""
"specified without modifying where the start and end anchor would be."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:127
+#: modules/regex/doc_classes/RegEx.xml:136
msgid ""
"Searches the text for the compiled pattern and replaces it with the "
"specified string. Escapes and backreferences such as [code]$1[/code] and "
@@ -44655,7 +54778,7 @@ msgid ""
msgstr ""
#: doc/classes/RenderingServer.xml:1222 doc/classes/RenderingServer.xml:1250
-#: doc/classes/RenderingServer.xml:1527
+#: doc/classes/RenderingServer.xml:1537
msgid "Not implemented in Godot 3.x."
msgstr ""
@@ -44802,30 +54925,30 @@ msgid ""
"OmniLight3D.omni_shadow_mode]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1481
+#: doc/classes/RenderingServer.xml:1491
msgid ""
"Sets the color of the light. Equivalent to [member Light3D.light_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1492
+#: doc/classes/RenderingServer.xml:1502
msgid ""
"Sets the cull mask for this Light3D. Lights only affect objects in the "
"selected layers. Equivalent to [member Light3D.light_cull_mask]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1503
+#: doc/classes/RenderingServer.xml:1513
msgid ""
"If [code]true[/code], light will subtract light instead of adding light. "
"Equivalent to [member Light3D.light_negative]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1516
+#: doc/classes/RenderingServer.xml:1526
msgid ""
"Sets the specified light parameter. See [enum LightParam] for options. "
"Equivalent to [method Light3D.set_param]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1538
+#: doc/classes/RenderingServer.xml:1548
msgid ""
"If [code]true[/code], reverses the backface culling of the mesh. This can be "
"useful when you have a flat mesh that has a light behind it. If you need to "
@@ -44834,29 +54957,25 @@ msgid ""
"to [member Light3D.shadow_reverse_cull_face]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1549
+#: doc/classes/RenderingServer.xml:1559
msgid ""
"If [code]true[/code], light will cast shadows. Equivalent to [member Light3D."
"shadow_enabled]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1560
+#: doc/classes/RenderingServer.xml:1570
msgid ""
"Sets the color of the shadow cast by the light. Equivalent to [member "
"Light3D.shadow_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1571
-msgid "Sets whether GI probes capture light information from this light."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:1584
+#: doc/classes/RenderingServer.xml:1583
msgid ""
"Returns a mesh of a sphere with the given amount of horizontal and vertical "
"subdivisions."
msgstr ""
-#: doc/classes/RenderingServer.xml:1591
+#: doc/classes/RenderingServer.xml:1590
msgid ""
"Creates an empty material and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -44865,31 +54984,31 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:1603
+#: doc/classes/RenderingServer.xml:1602
msgid "Returns the value of a certain material's parameter."
msgstr ""
-#: doc/classes/RenderingServer.xml:1614
+#: doc/classes/RenderingServer.xml:1613
msgid "Sets an object's next material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1627
+#: doc/classes/RenderingServer.xml:1626
msgid "Sets a material's parameter."
msgstr ""
-#: doc/classes/RenderingServer.xml:1638
+#: doc/classes/RenderingServer.xml:1637
msgid "Sets a material's render priority."
msgstr ""
-#: doc/classes/RenderingServer.xml:1649
+#: doc/classes/RenderingServer.xml:1648
msgid "Sets a shader material's shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:1678
+#: doc/classes/RenderingServer.xml:1677
msgid "Removes all surfaces from a mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1685
+#: doc/classes/RenderingServer.xml:1684
msgid ""
"Creates a new mesh and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all [code]mesh_*[/"
@@ -44900,58 +55019,58 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:1696
+#: doc/classes/RenderingServer.xml:1695
msgid "Returns a mesh's blend shape count."
msgstr ""
-#: doc/classes/RenderingServer.xml:1705
+#: doc/classes/RenderingServer.xml:1704
msgid "Returns a mesh's blend shape mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:1714
+#: doc/classes/RenderingServer.xml:1713
msgid "Returns a mesh's custom aabb."
msgstr ""
-#: doc/classes/RenderingServer.xml:1723
+#: doc/classes/RenderingServer.xml:1722
msgid "Returns a mesh's number of surfaces."
msgstr ""
-#: doc/classes/RenderingServer.xml:1734
+#: doc/classes/RenderingServer.xml:1733
msgid "Sets a mesh's blend shape mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:1745
+#: doc/classes/RenderingServer.xml:1744
msgid "Sets a mesh's custom aabb."
msgstr ""
-#: doc/classes/RenderingServer.xml:1756
+#: doc/classes/RenderingServer.xml:1755
msgid "Returns a mesh's surface's buffer arrays."
msgstr ""
-#: doc/classes/RenderingServer.xml:1767
+#: doc/classes/RenderingServer.xml:1766
msgid "Returns a mesh's surface's arrays for blend shapes."
msgstr ""
-#: doc/classes/RenderingServer.xml:1782 doc/classes/RenderingServer.xml:1795
+#: doc/classes/RenderingServer.xml:1781 doc/classes/RenderingServer.xml:1794
msgid "Function is unused in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:1806
+#: doc/classes/RenderingServer.xml:1805
msgid "Returns a mesh's surface's material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1819
+#: doc/classes/RenderingServer.xml:1818
msgid "Sets a mesh's surface's material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1834
+#: doc/classes/RenderingServer.xml:1833
msgid ""
"Updates a specific region of a vertex buffer for the specified surface. "
"Warning: this function alters the vertex buffer directly with no safety "
"mechanisms, you can easily corrupt your mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1857
+#: doc/classes/RenderingServer.xml:1856
msgid ""
"Creates a new multimesh on the RenderingServer and returns an [RID] handle. "
"This RID will be used in all [code]multimesh_*[/code] RenderingServer "
@@ -44962,82 +55081,82 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:1868
+#: doc/classes/RenderingServer.xml:1867
msgid ""
"Calculates and returns the axis-aligned bounding box that encloses all "
"instances within the multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1885
+#: doc/classes/RenderingServer.xml:1884
msgid "Returns the number of instances allocated for this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1894
+#: doc/classes/RenderingServer.xml:1893
msgid ""
"Returns the RID of the mesh that will be used in drawing this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1903
+#: doc/classes/RenderingServer.xml:1902
msgid "Returns the number of visible instances for this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1914
+#: doc/classes/RenderingServer.xml:1913
msgid "Returns the color by which the specified instance will be modulated."
msgstr ""
-#: doc/classes/RenderingServer.xml:1925
+#: doc/classes/RenderingServer.xml:1924
msgid "Returns the custom data associated with the specified instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:1936
+#: doc/classes/RenderingServer.xml:1935
msgid "Returns the [Transform] of the specified instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:1947
+#: doc/classes/RenderingServer.xml:1946
msgid ""
"Returns the [Transform2D] of the specified instance. For use when the "
"multimesh is set to use 2D transforms."
msgstr ""
-#: doc/classes/RenderingServer.xml:1960
+#: doc/classes/RenderingServer.xml:1959
msgid ""
"Sets the color by which this instance will be modulated. Equivalent to "
"[method MultiMesh.set_instance_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1973
+#: doc/classes/RenderingServer.xml:1972
msgid ""
"Sets the custom data for this instance. Custom data is passed as a [Color], "
"but is interpreted as a [code]vec4[/code] in the shader. Equivalent to "
"[method MultiMesh.set_instance_custom_data]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1986
+#: doc/classes/RenderingServer.xml:1985
msgid ""
"Sets the [Transform] for this instance. Equivalent to [method MultiMesh."
"set_instance_transform]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1999
+#: doc/classes/RenderingServer.xml:1998
msgid ""
"Sets the [Transform2D] for this instance. For use when multimesh is used in "
"2D. Equivalent to [method MultiMesh.set_instance_transform_2d]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2020
+#: doc/classes/RenderingServer.xml:2019
msgid ""
"Sets the mesh to be drawn by the multimesh. Equivalent to [member MultiMesh."
"mesh]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2031
+#: doc/classes/RenderingServer.xml:2030
msgid ""
"Sets the number of instances visible at a given time. If -1, all instances "
"that have been allocated are drawn. Equivalent to [member MultiMesh."
"visible_instance_count]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2038
+#: doc/classes/RenderingServer.xml:2037
msgid ""
"Creates a new omni light and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID can be used in most "
@@ -45048,7 +55167,7 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2047
+#: doc/classes/RenderingServer.xml:2046
msgid ""
"Creates a particle system and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -45059,23 +55178,23 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2058
+#: doc/classes/RenderingServer.xml:2057
msgid ""
"Calculates and returns the axis-aligned bounding box that contains all the "
"particles. Equivalent to [method GPUParticles3D.capture_aabb]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2067
+#: doc/classes/RenderingServer.xml:2066
msgid "Returns [code]true[/code] if particles are currently set to emitting."
msgstr ""
-#: doc/classes/RenderingServer.xml:2076
+#: doc/classes/RenderingServer.xml:2075
msgid ""
"Returns [code]true[/code] if particles are not emitting and particles are "
"set to inactive."
msgstr ""
-#: doc/classes/RenderingServer.xml:2085
+#: doc/classes/RenderingServer.xml:2084
msgid ""
"Add particle system to list of particle systems that need to be updated. "
"Update will take place on the next frame, or on the next call to [method "
@@ -45083,121 +55202,121 @@ msgid ""
"instances_cull_ray]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2094
+#: doc/classes/RenderingServer.xml:2093
msgid ""
"Reset the particles on the next update. Equivalent to [method GPUParticles3D."
"restart]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2105
+#: doc/classes/RenderingServer.xml:2104
msgid ""
"Sets the number of particles to be drawn and allocates the memory for them. "
"Equivalent to [member GPUParticles3D.amount]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2116
+#: doc/classes/RenderingServer.xml:2115
msgid ""
"Sets a custom axis-aligned bounding box for the particle system. Equivalent "
"to [member GPUParticles3D.visibility_aabb]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2127
+#: doc/classes/RenderingServer.xml:2126
msgid ""
"Sets the draw order of the particles to one of the named enums from [enum "
"ParticlesDrawOrder]. See [enum ParticlesDrawOrder] for options. Equivalent "
"to [member GPUParticles3D.draw_order]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2140
+#: doc/classes/RenderingServer.xml:2139
msgid ""
"Sets the mesh to be used for the specified draw pass. Equivalent to [member "
"GPUParticles3D.draw_pass_1], [member GPUParticles3D.draw_pass_2], [member "
"GPUParticles3D.draw_pass_3], and [member GPUParticles3D.draw_pass_4]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2151
+#: doc/classes/RenderingServer.xml:2150
msgid ""
"Sets the number of draw passes to use. Equivalent to [member GPUParticles3D."
"draw_passes]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2162
+#: doc/classes/RenderingServer.xml:2161
msgid ""
"Sets the [Transform] that will be used by the particles when they first emit."
msgstr ""
-#: doc/classes/RenderingServer.xml:2173
+#: doc/classes/RenderingServer.xml:2172
msgid ""
"If [code]true[/code], particles will emit over time. Setting to false does "
"not reset the particles, but only stops their emission. Equivalent to "
"[member GPUParticles3D.emitting]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2184
+#: doc/classes/RenderingServer.xml:2183
msgid ""
"Sets the explosiveness ratio. Equivalent to [member GPUParticles3D."
"explosiveness]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2195
+#: doc/classes/RenderingServer.xml:2194
msgid ""
"Sets the frame rate that the particle system rendering will be fixed to. "
"Equivalent to [member GPUParticles3D.fixed_fps]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2206
+#: doc/classes/RenderingServer.xml:2205
msgid ""
"If [code]true[/code], uses fractional delta which smooths the movement of "
"the particles. Equivalent to [member GPUParticles3D.fract_delta]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2217
+#: doc/classes/RenderingServer.xml:2216
msgid ""
"Sets the lifetime of each particle in the system. Equivalent to [member "
"GPUParticles3D.lifetime]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2228
+#: doc/classes/RenderingServer.xml:2227
msgid ""
"If [code]true[/code], particles will emit once and then stop. Equivalent to "
"[member GPUParticles3D.one_shot]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2239
+#: doc/classes/RenderingServer.xml:2238
msgid ""
"Sets the preprocess time for the particles animation. This lets you delay "
"starting an animation until after the particles have begun emitting. "
"Equivalent to [member GPUParticles3D.preprocess]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2250
+#: doc/classes/RenderingServer.xml:2249
msgid ""
"Sets the material for processing the particles. Note: this is not the "
"material used to draw the materials. Equivalent to [member GPUParticles3D."
"process_material]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2261
+#: doc/classes/RenderingServer.xml:2260
msgid ""
"Sets the emission randomness ratio. This randomizes the emission of "
"particles within their phase. Equivalent to [member GPUParticles3D."
"randomness]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2272
+#: doc/classes/RenderingServer.xml:2271
msgid ""
"Sets the speed scale of the particle system. Equivalent to [member "
"GPUParticles3D.speed_scale]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2283
+#: doc/classes/RenderingServer.xml:2282
msgid ""
"If [code]true[/code], particles use local coordinates. If [code]false[/code] "
"they use global coordinates. Equivalent to [member GPUParticles3D."
"local_coords]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2290
+#: doc/classes/RenderingServer.xml:2289
msgid ""
"Creates a reflection probe and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -45208,85 +55327,64 @@ msgid ""
"[method instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2303
+#: doc/classes/RenderingServer.xml:2332
msgid ""
"If [code]true[/code], reflections will ignore sky contribution. Equivalent "
-"to [member ReflectionProbe.interior_enable]."
+"to [member ReflectionProbe.interior]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2314
+#: doc/classes/RenderingServer.xml:2343
msgid ""
"Sets the render cull mask for this reflection probe. Only instances with a "
"matching cull mask will be rendered by this probe. Equivalent to [member "
"ReflectionProbe.cull_mask]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2325
+#: doc/classes/RenderingServer.xml:2354
msgid ""
"If [code]true[/code], uses box projection. This can make reflections look "
"more correct in certain situations. Equivalent to [member ReflectionProbe."
"box_projection]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2336
+#: doc/classes/RenderingServer.xml:2365
msgid ""
"If [code]true[/code], computes shadows in the reflection probe. This makes "
"the reflection much slower to compute. Equivalent to [member ReflectionProbe."
"enable_shadows]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2347
+#: doc/classes/RenderingServer.xml:2376
msgid ""
"Sets the size of the area that the reflection probe will capture. Equivalent "
"to [member ReflectionProbe.extents]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2358
+#: doc/classes/RenderingServer.xml:2387
msgid ""
"Sets the intensity of the reflection probe. Intensity modulates the strength "
"of the reflection. Equivalent to [member ReflectionProbe.intensity]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2369
-msgid ""
-"Sets the ambient light color for this reflection probe when set to interior "
-"mode. Equivalent to [member ReflectionProbe.interior_ambient_color]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2380
-msgid ""
-"Sets the energy multiplier for this reflection probes ambient light "
-"contribution when set to interior mode. Equivalent to [member "
-"ReflectionProbe.interior_ambient_energy]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2391
-msgid ""
-"Sets the contribution value for how much the reflection affects the ambient "
-"light for this reflection probe when set to interior mode. Useful so that "
-"ambient light matches the color of the room. Equivalent to [member "
-"ReflectionProbe.interior_ambient_contrib]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2402
+#: doc/classes/RenderingServer.xml:2398
msgid ""
"Sets the max distance away from the probe an object can be before it is "
"culled. Equivalent to [member ReflectionProbe.max_distance]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2413
+#: doc/classes/RenderingServer.xml:2409
msgid ""
"Sets the origin offset to be used when this reflection probe is in box "
"project mode. Equivalent to [member ReflectionProbe.origin_offset]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2424
+#: doc/classes/RenderingServer.xml:2420
msgid ""
"Sets how often the reflection probe updates. Can either be once or every "
"frame. See [enum ReflectionProbeUpdateMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2437
+#: doc/classes/RenderingServer.xml:2433
msgid ""
"Schedules a callback to the corresponding named [code]method[/code] on "
"[code]where[/code] after a frame has been drawn.\n"
@@ -45294,7 +55392,7 @@ msgid ""
"[code]userdata[/code]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2445
+#: doc/classes/RenderingServer.xml:2441
msgid ""
"Creates a scenario and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all "
@@ -45304,24 +55402,24 @@ msgid ""
"The scenario is the 3D world that all the visual instances exist in."
msgstr ""
-#: doc/classes/RenderingServer.xml:2458
+#: doc/classes/RenderingServer.xml:2454
msgid ""
"Sets the [enum ScenarioDebugMode] for this scenario. See [enum "
"ScenarioDebugMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2469
+#: doc/classes/RenderingServer.xml:2465
msgid "Sets the environment that will be used with this scenario."
msgstr ""
-#: doc/classes/RenderingServer.xml:2480
+#: doc/classes/RenderingServer.xml:2476
msgid ""
"Sets the fallback environment to be used by this scenario. The fallback "
"environment is used if no environment is set. Internally, this is used by "
"the editor to provide a default environment."
msgstr ""
-#: doc/classes/RenderingServer.xml:2495
+#: doc/classes/RenderingServer.xml:2491
msgid ""
"Sets a boot image. The color defines the background color. If [code]scale[/"
"code] is [code]true[/code], the image will be scaled to fit the screen size. "
@@ -45330,19 +55428,19 @@ msgid ""
"the image will be scaled with nearest-neighbor interpolation."
msgstr ""
-#: doc/classes/RenderingServer.xml:2504
+#: doc/classes/RenderingServer.xml:2500
msgid ""
"If [code]true[/code], the engine will generate wireframes for use with the "
"wireframe debug mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:2513
+#: doc/classes/RenderingServer.xml:2509
msgid ""
"Sets the default clear color which is used when a specific clear color has "
"not been selected."
msgstr ""
-#: doc/classes/RenderingServer.xml:2520
+#: doc/classes/RenderingServer.xml:2516
msgid ""
"Creates an empty shader and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -45351,47 +55449,47 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2530
+#: doc/classes/RenderingServer.xml:2526
msgid "Returns a shader's code."
msgstr ""
-#: doc/classes/RenderingServer.xml:2541
+#: doc/classes/RenderingServer.xml:2537
msgid "Returns a default texture from a shader searched by name."
msgstr ""
-#: doc/classes/RenderingServer.xml:2560
+#: doc/classes/RenderingServer.xml:2556
msgid "Returns the parameters of a shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:2571
+#: doc/classes/RenderingServer.xml:2567
msgid "Sets a shader's code."
msgstr ""
-#: doc/classes/RenderingServer.xml:2584
+#: doc/classes/RenderingServer.xml:2580
msgid "Sets a shader's default texture. Overwrites the texture given by name."
msgstr ""
-#: doc/classes/RenderingServer.xml:2597
+#: doc/classes/RenderingServer.xml:2593
msgid "Allocates the GPU buffers for this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2608
+#: doc/classes/RenderingServer.xml:2604
msgid "Returns the [Transform] set for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2619
+#: doc/classes/RenderingServer.xml:2615
msgid "Returns the [Transform2D] set for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2632
+#: doc/classes/RenderingServer.xml:2628
msgid "Sets the [Transform] for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2645
+#: doc/classes/RenderingServer.xml:2641
msgid "Sets the [Transform2D] for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2652
+#: doc/classes/RenderingServer.xml:2648
msgid ""
"Creates a skeleton and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all "
@@ -45400,11 +55498,11 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2662
+#: doc/classes/RenderingServer.xml:2658
msgid "Returns the number of bones allocated for this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2669
+#: doc/classes/RenderingServer.xml:2665
msgid ""
"Creates an empty sky and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all [code]sky_*[/"
@@ -45413,13 +55511,13 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2681
+#: doc/classes/RenderingServer.xml:2677
msgid ""
"Sets the material that the sky uses to render the background and reflection "
"maps."
msgstr ""
-#: doc/classes/RenderingServer.xml:2688
+#: doc/classes/RenderingServer.xml:2684
msgid ""
"Creates a spot light and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID can be used in most [code]light_*[/"
@@ -45430,15 +55528,15 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2717
+#: doc/classes/RenderingServer.xml:2713
msgid "Sets a viewport's camera."
msgstr ""
-#: doc/classes/RenderingServer.xml:2728
+#: doc/classes/RenderingServer.xml:2724
msgid "Sets a viewport's canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:2741
+#: doc/classes/RenderingServer.xml:2737
msgid ""
"Copies the viewport to a region of the screen specified by [code]rect[/"
"code]. If [method viewport_set_render_direct_to_screen] is [code]true[/"
@@ -45460,7 +55558,7 @@ msgid ""
"viewport_set_render_direct_to_screen]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2755
+#: doc/classes/RenderingServer.xml:2751
msgid ""
"Creates an empty viewport and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -45469,72 +55567,72 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2767
+#: doc/classes/RenderingServer.xml:2763
msgid ""
"Returns a viewport's render information. For options, see the [enum "
"ViewportRenderInfo] constants."
msgstr ""
-#: doc/classes/RenderingServer.xml:2776
+#: doc/classes/RenderingServer.xml:2772
msgid "Returns the viewport's last rendered frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:2787
+#: doc/classes/RenderingServer.xml:2783
msgid "Detaches a viewport from a canvas and vice versa."
msgstr ""
-#: doc/classes/RenderingServer.xml:2798
+#: doc/classes/RenderingServer.xml:2794
msgid "If [code]true[/code], sets the viewport active, else sets it inactive."
msgstr ""
-#: doc/classes/RenderingServer.xml:2813
+#: doc/classes/RenderingServer.xml:2809
msgid ""
"Sets the stacking order for a viewport's canvas.\n"
"[code]layer[/code] is the actual canvas layer, while [code]sublayer[/code] "
"specifies the stacking order of the canvas among those in the same layer."
msgstr ""
-#: doc/classes/RenderingServer.xml:2827
+#: doc/classes/RenderingServer.xml:2823
msgid "Sets the transformation of a viewport's canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:2838
+#: doc/classes/RenderingServer.xml:2834
msgid ""
"Sets the clear mode of a viewport. See [enum ViewportClearMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2849
+#: doc/classes/RenderingServer.xml:2845
msgid ""
"Sets the debug draw mode of a viewport. See [enum ViewportDebugDraw] for "
"options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2860
+#: doc/classes/RenderingServer.xml:2856
msgid ""
"If [code]true[/code], rendering of a viewport's environment is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:2871
+#: doc/classes/RenderingServer.xml:2867
msgid "Sets the viewport's global transformation matrix."
msgstr ""
-#: doc/classes/RenderingServer.xml:2882
+#: doc/classes/RenderingServer.xml:2878
msgid "If [code]true[/code], the viewport's canvas is not rendered."
msgstr ""
-#: doc/classes/RenderingServer.xml:2893
+#: doc/classes/RenderingServer.xml:2889
msgid "Currently unimplemented in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:2904
+#: doc/classes/RenderingServer.xml:2900
msgid "Sets the anti-aliasing mode. See [enum ViewportMSAA] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2915
+#: doc/classes/RenderingServer.xml:2911
msgid "Sets the viewport's parent to another viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:2926
+#: doc/classes/RenderingServer.xml:2922
msgid ""
"If [code]true[/code], render the contents of the viewport directly to "
"screen. This allows a low-level optimization where you can skip drawing a "
@@ -45550,455 +55648,455 @@ msgid ""
"significantly larger than the window size."
msgstr ""
-#: doc/classes/RenderingServer.xml:2937
+#: doc/classes/RenderingServer.xml:2933
msgid ""
"Sets a viewport's scenario.\n"
"The scenario contains information about the [enum ScenarioDebugMode], "
"environment information, reflection atlas etc."
msgstr ""
-#: doc/classes/RenderingServer.xml:2951
+#: doc/classes/RenderingServer.xml:2947
msgid "Sets the shadow atlas quadrant's subdivision."
msgstr ""
-#: doc/classes/RenderingServer.xml:2962
+#: doc/classes/RenderingServer.xml:2958
msgid ""
"Sets the size of the shadow atlas's images (used for omni and spot lights). "
"The value will be rounded up to the nearest power of 2."
msgstr ""
-#: doc/classes/RenderingServer.xml:2975
+#: doc/classes/RenderingServer.xml:2971
msgid "Sets the viewport's width and height."
msgstr ""
-#: doc/classes/RenderingServer.xml:2986
+#: doc/classes/RenderingServer.xml:2982
msgid ""
"If [code]true[/code], the viewport renders its background as transparent."
msgstr ""
-#: doc/classes/RenderingServer.xml:2997
+#: doc/classes/RenderingServer.xml:2993
msgid ""
"Sets when the viewport should be updated. See [enum ViewportUpdateMode] "
"constants for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:3008
+#: doc/classes/RenderingServer.xml:3004
msgid ""
"If [code]true[/code], the viewport uses augmented or virtual reality "
"technologies. See [XRInterface]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3014
+#: doc/classes/RenderingServer.xml:3010
msgid ""
"If [code]false[/code], disables rendering completely, but the engine logic "
"is still being processed. You can call [method force_draw] to draw a frame "
"even with rendering disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3020
+#: doc/classes/RenderingServer.xml:3016
msgid ""
"Emitted at the end of the frame, after the RenderingServer has finished "
"updating all the Viewports."
msgstr ""
-#: doc/classes/RenderingServer.xml:3025
+#: doc/classes/RenderingServer.xml:3021
msgid ""
"Emitted at the beginning of the frame, before the RenderingServer updates "
"all the Viewports."
msgstr ""
-#: doc/classes/RenderingServer.xml:3031
+#: doc/classes/RenderingServer.xml:3027
msgid "Marks an error that shows that the index array is empty."
msgstr ""
-#: doc/classes/RenderingServer.xml:3034
+#: doc/classes/RenderingServer.xml:3030
msgid "Number of weights/bones per vertex."
msgstr ""
-#: doc/classes/RenderingServer.xml:3037
+#: doc/classes/RenderingServer.xml:3033
msgid "The minimum Z-layer for canvas items."
msgstr ""
-#: doc/classes/RenderingServer.xml:3040
+#: doc/classes/RenderingServer.xml:3036
msgid "The maximum Z-layer for canvas items."
msgstr ""
-#: doc/classes/RenderingServer.xml:3043
+#: doc/classes/RenderingServer.xml:3039
msgid ""
"Max number of glow levels that can be used with glow post-process effect."
msgstr ""
-#: doc/classes/RenderingServer.xml:3046
+#: doc/classes/RenderingServer.xml:3042
msgid "Unused enum in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:3067
+#: doc/classes/RenderingServer.xml:3063
msgid "Shader is a 3D shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3070
+#: doc/classes/RenderingServer.xml:3066
msgid "Shader is a 2D shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3073
+#: doc/classes/RenderingServer.xml:3069
msgid "Shader is a particle shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3076
+#: doc/classes/RenderingServer.xml:3072
msgid "Shader is a sky shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3079
+#: doc/classes/RenderingServer.xml:3075
msgid "Represents the size of the [enum ShaderMode] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3082
+#: doc/classes/RenderingServer.xml:3078
msgid "The minimum renderpriority of all materials."
msgstr ""
-#: doc/classes/RenderingServer.xml:3085
+#: doc/classes/RenderingServer.xml:3081
msgid "The maximum renderpriority of all materials."
msgstr ""
-#: doc/classes/RenderingServer.xml:3088
+#: doc/classes/RenderingServer.xml:3084
msgid "Array is a vertex array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3091
+#: doc/classes/RenderingServer.xml:3087
msgid "Array is a normal array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3094
+#: doc/classes/RenderingServer.xml:3090
msgid "Array is a tangent array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3097
+#: doc/classes/RenderingServer.xml:3093
msgid "Array is a color array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3100
+#: doc/classes/RenderingServer.xml:3096
msgid "Array is an UV coordinates array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3103
+#: doc/classes/RenderingServer.xml:3099
msgid "Array is an UV coordinates array for the second UV coordinates."
msgstr ""
-#: doc/classes/RenderingServer.xml:3106
+#: doc/classes/RenderingServer.xml:3102
msgid "Array contains bone information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3109
+#: doc/classes/RenderingServer.xml:3105
msgid "Array is weight information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3112
+#: doc/classes/RenderingServer.xml:3108
msgid "Array is index array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3118
+#: doc/classes/RenderingServer.xml:3114
msgid "Flag used to mark a vertex array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3121
+#: doc/classes/RenderingServer.xml:3117
msgid "Flag used to mark a normal array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3124
+#: doc/classes/RenderingServer.xml:3120
msgid "Flag used to mark a tangent array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3127
+#: doc/classes/RenderingServer.xml:3123
msgid "Flag used to mark a color array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3130
+#: doc/classes/RenderingServer.xml:3126
msgid "Flag used to mark an UV coordinates array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3133
+#: doc/classes/RenderingServer.xml:3129
msgid ""
"Flag used to mark an UV coordinates array for the second UV coordinates."
msgstr ""
-#: doc/classes/RenderingServer.xml:3136
+#: doc/classes/RenderingServer.xml:3132
msgid "Flag used to mark a bone information array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3139
+#: doc/classes/RenderingServer.xml:3135
msgid "Flag used to mark a weights array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3142
+#: doc/classes/RenderingServer.xml:3138
msgid "Flag used to mark an index array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3171
+#: doc/classes/RenderingServer.xml:3167
msgid "Primitive to draw consists of points."
msgstr ""
-#: doc/classes/RenderingServer.xml:3174
+#: doc/classes/RenderingServer.xml:3170
msgid "Primitive to draw consists of lines."
msgstr ""
-#: doc/classes/RenderingServer.xml:3177
+#: doc/classes/RenderingServer.xml:3173
msgid "Primitive to draw consists of a line strip from start to end."
msgstr ""
-#: doc/classes/RenderingServer.xml:3180
+#: doc/classes/RenderingServer.xml:3176
msgid "Primitive to draw consists of triangles."
msgstr ""
-#: doc/classes/RenderingServer.xml:3183
+#: doc/classes/RenderingServer.xml:3179
msgid ""
"Primitive to draw consists of a triangle strip (the last 3 vertices are "
"always combined to make a triangle)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3186
+#: doc/classes/RenderingServer.xml:3182
msgid "Represents the size of the [enum PrimitiveType] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3195
+#: doc/classes/RenderingServer.xml:3191
msgid "Use [Transform2D] to store MultiMesh transform."
msgstr ""
-#: doc/classes/RenderingServer.xml:3198
+#: doc/classes/RenderingServer.xml:3194
msgid "Use [Transform] to store MultiMesh transform."
msgstr ""
-#: doc/classes/RenderingServer.xml:3201
+#: doc/classes/RenderingServer.xml:3197
msgid "Is a directional (sun) light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3204
+#: doc/classes/RenderingServer.xml:3200
msgid "Is an omni light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3207
+#: doc/classes/RenderingServer.xml:3203
msgid "Is a spot light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3210
+#: doc/classes/RenderingServer.xml:3206
msgid "The light's energy."
msgstr ""
-#: doc/classes/RenderingServer.xml:3215
+#: doc/classes/RenderingServer.xml:3211
msgid "The light's influence on specularity."
msgstr ""
-#: doc/classes/RenderingServer.xml:3218
+#: doc/classes/RenderingServer.xml:3214
msgid "The light's range."
msgstr ""
-#: doc/classes/RenderingServer.xml:3221
+#: doc/classes/RenderingServer.xml:3217
msgid ""
"The size of the light when using spot light or omni light. The angular size "
"of the light when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3224
+#: doc/classes/RenderingServer.xml:3220
msgid "The light's attenuation."
msgstr ""
-#: doc/classes/RenderingServer.xml:3227
+#: doc/classes/RenderingServer.xml:3223
msgid "The spotlight's angle."
msgstr ""
-#: doc/classes/RenderingServer.xml:3230
+#: doc/classes/RenderingServer.xml:3226
msgid "The spotlight's attenuation."
msgstr ""
-#: doc/classes/RenderingServer.xml:3233
+#: doc/classes/RenderingServer.xml:3229
msgid "Max distance that shadows will be rendered."
msgstr ""
-#: doc/classes/RenderingServer.xml:3236
+#: doc/classes/RenderingServer.xml:3232
msgid "Proportion of shadow atlas occupied by the first split."
msgstr ""
-#: doc/classes/RenderingServer.xml:3239
+#: doc/classes/RenderingServer.xml:3235
msgid "Proportion of shadow atlas occupied by the second split."
msgstr ""
-#: doc/classes/RenderingServer.xml:3242
+#: doc/classes/RenderingServer.xml:3238
msgid ""
"Proportion of shadow atlas occupied by the third split. The fourth split "
"occupies the rest."
msgstr ""
-#: doc/classes/RenderingServer.xml:3245
+#: doc/classes/RenderingServer.xml:3241
msgid ""
"Proportion of shadow max distance where the shadow will start to fade out."
msgstr ""
-#: doc/classes/RenderingServer.xml:3248
+#: doc/classes/RenderingServer.xml:3244
msgid ""
"Normal bias used to offset shadow lookup by object normal. Can be used to "
"fix self-shadowing artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3251
+#: doc/classes/RenderingServer.xml:3247
msgid "Bias the shadow lookup to fix self-shadowing artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3257
+#: doc/classes/RenderingServer.xml:3253
msgid ""
"Blurs the edges of the shadow. Can be used to hide pixel artifacts in low "
"resolution shadow maps. A high value can make shadows appear grainy and can "
"cause other unwanted artifacts. Try to keep as near default as possible."
msgstr ""
-#: doc/classes/RenderingServer.xml:3262
+#: doc/classes/RenderingServer.xml:3258
msgid "Represents the size of the [enum LightParam] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3265
+#: doc/classes/RenderingServer.xml:3267
msgid "Use a dual paraboloid shadow map for omni lights."
msgstr ""
-#: doc/classes/RenderingServer.xml:3268
+#: doc/classes/RenderingServer.xml:3270
msgid ""
"Use a cubemap shadow map for omni lights. Slower but better quality than "
"dual paraboloid."
msgstr ""
-#: doc/classes/RenderingServer.xml:3271
+#: doc/classes/RenderingServer.xml:3273
msgid "Use orthogonal shadow projection for directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3274
+#: doc/classes/RenderingServer.xml:3276
msgid "Use 2 splits for shadow projection when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3277
+#: doc/classes/RenderingServer.xml:3279
msgid "Use 4 splits for shadow projection when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3280
+#: doc/classes/RenderingServer.xml:3282
msgid ""
"Keeps shadows stable as camera moves but has lower effective resolution."
msgstr ""
-#: doc/classes/RenderingServer.xml:3283
+#: doc/classes/RenderingServer.xml:3285
msgid ""
"Optimize use of shadow maps, increasing the effective resolution. But may "
"result in shadows moving or flickering slightly."
msgstr ""
-#: doc/classes/RenderingServer.xml:3286
+#: doc/classes/RenderingServer.xml:3288
msgid "Reflection probe will update reflections once and then stop."
msgstr ""
-#: doc/classes/RenderingServer.xml:3289
+#: doc/classes/RenderingServer.xml:3291
msgid ""
"Reflection probe will update each frame. This mode is necessary to capture "
"moving objects."
msgstr ""
-#: doc/classes/RenderingServer.xml:3302
+#: doc/classes/RenderingServer.xml:3310
msgid "Draw particles in the order that they appear in the particles array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3305
+#: doc/classes/RenderingServer.xml:3313
msgid "Sort particles based on their lifetime."
msgstr ""
-#: doc/classes/RenderingServer.xml:3308
+#: doc/classes/RenderingServer.xml:3316
msgid "Sort particles based on their distance to the camera."
msgstr ""
-#: doc/classes/RenderingServer.xml:3311
+#: doc/classes/RenderingServer.xml:3319
msgid "Do not update the viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:3314
+#: doc/classes/RenderingServer.xml:3322
msgid "Update the viewport once then set to disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3317
+#: doc/classes/RenderingServer.xml:3325
msgid "Update the viewport whenever it is visible."
msgstr ""
-#: doc/classes/RenderingServer.xml:3322
+#: doc/classes/RenderingServer.xml:3330
msgid "Always update the viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:3325
+#: doc/classes/RenderingServer.xml:3333
msgid "The viewport is always cleared before drawing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3328
+#: doc/classes/RenderingServer.xml:3336
msgid "The viewport is never cleared before drawing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3331
+#: doc/classes/RenderingServer.xml:3339
msgid ""
"The viewport is cleared once, then the clear mode is set to [constant "
"VIEWPORT_CLEAR_NEVER]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3334
+#: doc/classes/RenderingServer.xml:3342
msgid "Multisample antialiasing is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3337
+#: doc/classes/RenderingServer.xml:3345
msgid "Multisample antialiasing uses 2 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3340
+#: doc/classes/RenderingServer.xml:3348
msgid "Multisample antialiasing uses 4 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3343
+#: doc/classes/RenderingServer.xml:3351
msgid "Multisample antialiasing uses 8 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3346
+#: doc/classes/RenderingServer.xml:3354
msgid "Multisample antialiasing uses 16 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3357
+#: doc/classes/RenderingServer.xml:3365
msgid "Number of objects drawn in a single frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3360
+#: doc/classes/RenderingServer.xml:3368
msgid "Number of vertices drawn in a single frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3363
+#: doc/classes/RenderingServer.xml:3371
msgid "Number of material changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3366
+#: doc/classes/RenderingServer.xml:3374
msgid "Number of shader changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3369
+#: doc/classes/RenderingServer.xml:3377
msgid "Number of surface changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3372
+#: doc/classes/RenderingServer.xml:3380
msgid "Number of draw calls during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3375
+#: doc/classes/RenderingServer.xml:3383
msgid "Represents the size of the [enum ViewportRenderInfo] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3378
+#: doc/classes/RenderingServer.xml:3386
msgid "Debug draw is disabled. Default setting."
msgstr ""
-#: doc/classes/RenderingServer.xml:3381 doc/classes/Viewport.xml:348
+#: doc/classes/RenderingServer.xml:3389 doc/classes/Viewport.xml:348
msgid "Objects are displayed without light information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3384
+#: doc/classes/RenderingServer.xml:3392
msgid "Objects are displayed with only light information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3387 doc/classes/Viewport.xml:353
+#: doc/classes/RenderingServer.xml:3395 doc/classes/Viewport.xml:353
msgid ""
"Objects are displayed semi-transparent with additive blending so you can see "
"where they are drawing over top of one another. A higher overdraw means you "
@@ -46006,41 +56104,41 @@ msgid ""
"others."
msgstr ""
-#: doc/classes/RenderingServer.xml:3390
+#: doc/classes/RenderingServer.xml:3398
msgid "Debug draw draws objects in wireframe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3393
+#: doc/classes/RenderingServer.xml:3401
msgid ""
"Normal buffer is drawn instead of regular scene so you can see the per-pixel "
"normals that will be used by post-processing effects."
msgstr ""
-#: doc/classes/RenderingServer.xml:3396 doc/classes/Viewport.xml:361
+#: doc/classes/RenderingServer.xml:3404 doc/classes/Viewport.xml:361
msgid "Objects are displayed with only the albedo value from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3399 doc/classes/Viewport.xml:364
+#: doc/classes/RenderingServer.xml:3407 doc/classes/Viewport.xml:364
msgid "Objects are displayed with only the lighting value from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3402 doc/classes/Viewport.xml:367
+#: doc/classes/RenderingServer.xml:3410 doc/classes/Viewport.xml:367
msgid "Objects are displayed with only the emission color from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3405 doc/classes/Viewport.xml:370
+#: doc/classes/RenderingServer.xml:3413 doc/classes/Viewport.xml:370
msgid ""
"Draws the shadow atlas that stores shadows from [OmniLight3D]s and "
"[SpotLight3D]s in the upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3408 doc/classes/Viewport.xml:373
+#: doc/classes/RenderingServer.xml:3416 doc/classes/Viewport.xml:373
msgid ""
"Draws the shadow atlas that stores shadows from [DirectionalLight3D]s in the "
"upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3413
+#: doc/classes/RenderingServer.xml:3421
msgid ""
"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 "
@@ -46048,21 +56146,14 @@ msgid ""
"your [WorldEnvironment]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3416 doc/classes/Viewport.xml:381
-msgid ""
-"Draws the roughness limiter post process over the Viewport so you can see "
-"where it has an effect. It must be enabled in [member ProjectSettings."
-"rendering/quality/screen_filters/screen_space_roughness_limiter] to work."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:3419
+#: doc/classes/RenderingServer.xml:3424
msgid ""
"Colors each PSSM split for the [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."
msgstr ""
-#: doc/classes/RenderingServer.xml:3424
+#: doc/classes/RenderingServer.xml:3435
msgid ""
"Uses high quality importance sampling to process the radiance map. In "
"general, this results in much higher quality than [constant Sky."
@@ -46073,7 +56164,7 @@ msgid ""
"ggx_samples]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3427
+#: doc/classes/RenderingServer.xml:3438
msgid ""
"Uses the fast filtering algorithm to process the radiance map. In general "
"this results in lower quality, but substantially faster run times.\n"
@@ -46081,347 +56172,347 @@ msgid ""
"[member Sky.radiance_size] must be set to [constant Sky.RADIANCE_SIZE_256]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3431
+#: doc/classes/RenderingServer.xml:3442
msgid "Use the clear color as background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3434
+#: doc/classes/RenderingServer.xml:3445
msgid "Use a specified color as the background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3437
+#: doc/classes/RenderingServer.xml:3448
msgid "Use a sky resource for the background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3440
+#: doc/classes/RenderingServer.xml:3451
msgid ""
"Use a specified canvas layer as the background. This can be useful for "
"instantiating a 2D scene in a 3D world."
msgstr ""
-#: doc/classes/RenderingServer.xml:3443
+#: doc/classes/RenderingServer.xml:3454
msgid ""
"Do not clear the background, use whatever was rendered last frame as the "
"background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3449
+#: doc/classes/RenderingServer.xml:3460
msgid "Represents the size of the [enum EnvironmentBG] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3488
+#: doc/classes/RenderingServer.xml:3499
msgid "Output color as they came in."
msgstr ""
-#: doc/classes/RenderingServer.xml:3491
+#: doc/classes/RenderingServer.xml:3502
msgid "Use the Reinhard tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3494
+#: doc/classes/RenderingServer.xml:3505
msgid "Use the filmic tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3497
+#: doc/classes/RenderingServer.xml:3508
msgid "Use the ACES tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3508
+#: doc/classes/RenderingServer.xml:3519
msgid "Disables the blur set for SSAO. Will make SSAO look noisier."
msgstr ""
-#: doc/classes/RenderingServer.xml:3511
+#: doc/classes/RenderingServer.xml:3522
msgid "Perform a 1x1 blur on the SSAO output."
msgstr ""
-#: doc/classes/RenderingServer.xml:3514
+#: doc/classes/RenderingServer.xml:3525
msgid "Performs a 2x2 blur on the SSAO output."
msgstr ""
-#: doc/classes/RenderingServer.xml:3517
+#: doc/classes/RenderingServer.xml:3528
msgid "Performs a 3x3 blur on the SSAO output. Use this for smoothest SSAO."
msgstr ""
-#: doc/classes/RenderingServer.xml:3520
+#: doc/classes/RenderingServer.xml:3531
msgid "Lowest quality of screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3523
+#: doc/classes/RenderingServer.xml:3534
msgid "Medium quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3526
+#: doc/classes/RenderingServer.xml:3537
msgid "High quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3529
+#: doc/classes/RenderingServer.xml:3540
msgid "Highest quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3540
+#: doc/classes/RenderingServer.xml:3551
msgid ""
"Lowest quality DOF blur. This is the fastest setting, but you may be able to "
"see filtering artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3543
+#: doc/classes/RenderingServer.xml:3554
msgid "Low quality DOF blur."
msgstr ""
-#: doc/classes/RenderingServer.xml:3546
+#: doc/classes/RenderingServer.xml:3557
msgid "Medium quality DOF blur."
msgstr ""
-#: doc/classes/RenderingServer.xml:3549
+#: doc/classes/RenderingServer.xml:3560
msgid ""
"Highest quality DOF blur. Results in the smoothest looking blur by taking "
"the most samples, but is also significantly slower."
msgstr ""
-#: doc/classes/RenderingServer.xml:3552
+#: doc/classes/RenderingServer.xml:3563
msgid ""
"Calculate the DOF blur using a box filter. The fastest option, but results "
"in obvious lines in blur pattern."
msgstr ""
-#: doc/classes/RenderingServer.xml:3555
+#: doc/classes/RenderingServer.xml:3566
msgid "Calculates DOF blur using a hexagon shaped filter."
msgstr ""
-#: doc/classes/RenderingServer.xml:3558
+#: doc/classes/RenderingServer.xml:3569
msgid ""
"Calculates DOF blur using a circle shaped filter. Best quality and most "
"realistic, but slowest. Use only for areas where a lot of performance can be "
"dedicated to post-processing (e.g. cutscenes)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3573
+#: doc/classes/RenderingServer.xml:3584
msgid "Do not use a debug mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:3576
+#: doc/classes/RenderingServer.xml:3587
msgid "Draw all objects as wireframe models."
msgstr ""
-#: doc/classes/RenderingServer.xml:3579
+#: doc/classes/RenderingServer.xml:3590
msgid ""
"Draw all objects in a way that displays how much overdraw is occurring. "
"Overdraw occurs when a section of pixels is drawn and shaded and then "
"another object covers it up. To optimize a scene, you should reduce overdraw."
msgstr ""
-#: doc/classes/RenderingServer.xml:3582
+#: doc/classes/RenderingServer.xml:3593
msgid ""
"Draw all objects without shading. Equivalent to setting all objects shaders "
"to [code]unshaded[/code]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3585
+#: doc/classes/RenderingServer.xml:3596
msgid "The instance does not have a type."
msgstr ""
-#: doc/classes/RenderingServer.xml:3588
+#: doc/classes/RenderingServer.xml:3599
msgid "The instance is a mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:3591
+#: doc/classes/RenderingServer.xml:3602
msgid "The instance is a multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:3594
+#: doc/classes/RenderingServer.xml:3605
msgid "The instance is an immediate geometry."
msgstr ""
-#: doc/classes/RenderingServer.xml:3597
+#: doc/classes/RenderingServer.xml:3608
msgid "The instance is a particle emitter."
msgstr ""
-#: doc/classes/RenderingServer.xml:3600
+#: doc/classes/RenderingServer.xml:3611
msgid "The instance is a light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3603
+#: doc/classes/RenderingServer.xml:3614
msgid "The instance is a reflection probe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3606
+#: doc/classes/RenderingServer.xml:3617
msgid "The instance is a decal."
msgstr ""
-#: doc/classes/RenderingServer.xml:3609
+#: doc/classes/RenderingServer.xml:3620
msgid "The instance is a GI probe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3612
+#: doc/classes/RenderingServer.xml:3623
msgid "The instance is a lightmap."
msgstr ""
-#: doc/classes/RenderingServer.xml:3615
+#: doc/classes/RenderingServer.xml:3626
msgid "Represents the size of the [enum InstanceType] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3618
+#: doc/classes/RenderingServer.xml:3629
msgid ""
"A combination of the flags of geometry instances (mesh, multimesh, immediate "
"and particles)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3621
+#: doc/classes/RenderingServer.xml:3632
msgid "Allows the instance to be used in baked lighting."
msgstr ""
-#: doc/classes/RenderingServer.xml:3624
+#: doc/classes/RenderingServer.xml:3635
msgid "Allows the instance to be used with dynamic global illumination."
msgstr ""
-#: doc/classes/RenderingServer.xml:3627
+#: doc/classes/RenderingServer.xml:3638
msgid "When set, manually requests to draw geometry on next frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3630
+#: doc/classes/RenderingServer.xml:3641
msgid "Represents the size of the [enum InstanceFlags] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3633
+#: doc/classes/RenderingServer.xml:3644
msgid "Disable shadows from this instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:3636
+#: doc/classes/RenderingServer.xml:3647
msgid "Cast shadows from this instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:3639
+#: doc/classes/RenderingServer.xml:3650
msgid ""
"Disable backface culling when rendering the shadow of the object. This is "
"slightly slower but may result in more correct shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3642
+#: doc/classes/RenderingServer.xml:3653
msgid ""
"Only render the shadows from the object. The object itself will not be drawn."
msgstr ""
-#: doc/classes/RenderingServer.xml:3645
+#: doc/classes/RenderingServer.xml:3656
msgid "The nine patch gets stretched where needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3648
+#: doc/classes/RenderingServer.xml:3659
msgid "The nine patch gets filled with tiles where needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3651
+#: doc/classes/RenderingServer.xml:3662
msgid ""
"The nine patch gets filled with tiles where needed and stretches them a bit "
"if needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3654
+#: doc/classes/RenderingServer.xml:3665
msgid "Uses the default filter mode for this [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3666 doc/classes/Viewport.xml:399
+#: doc/classes/RenderingServer.xml:3677 doc/classes/Viewport.xml:402
msgid ""
"The texture filter blends between the nearest 4 pixels and between the "
"nearest 2 mipmaps."
msgstr ""
-#: doc/classes/RenderingServer.xml:3675
+#: doc/classes/RenderingServer.xml:3686
msgid "Max value for [enum CanvasItemTextureFilter] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3678
+#: doc/classes/RenderingServer.xml:3689
msgid "Uses the default repeat mode for this [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3681 doc/classes/Viewport.xml:405
+#: doc/classes/RenderingServer.xml:3692 doc/classes/Viewport.xml:408
msgid ""
"Disables textures repeating. Instead, when reading UVs outside the 0-1 "
"range, the value will be clamped to the edge of the texture, resulting in a "
"stretched out look at the borders of the texture."
msgstr ""
-#: doc/classes/RenderingServer.xml:3687 doc/classes/Viewport.xml:411
+#: doc/classes/RenderingServer.xml:3698 doc/classes/Viewport.xml:414
msgid ""
"Flip the texture when repeating so that the edge lines up instead of "
"abruptly changing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3690
+#: doc/classes/RenderingServer.xml:3701
msgid "Max value for [enum CanvasItemTextureRepeat] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3693
+#: doc/classes/RenderingServer.xml:3704
msgid "Adds light color additive to the canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:3696
+#: doc/classes/RenderingServer.xml:3707
msgid "Adds light color subtractive to the canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:3699
+#: doc/classes/RenderingServer.xml:3710
msgid "The light adds color depending on transparency."
msgstr ""
-#: doc/classes/RenderingServer.xml:3702
+#: doc/classes/RenderingServer.xml:3713
msgid "The light adds color depending on mask."
msgstr ""
-#: doc/classes/RenderingServer.xml:3705
+#: doc/classes/RenderingServer.xml:3716
msgid "Do not apply a filter to canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3708
+#: doc/classes/RenderingServer.xml:3719
msgid "Use PCF5 filtering to filter canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3711
+#: doc/classes/RenderingServer.xml:3722
msgid "Use PCF13 filtering to filter canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3714
+#: doc/classes/RenderingServer.xml:3725
msgid "Max value of the [enum CanvasLightShadowFilter] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3717
+#: doc/classes/RenderingServer.xml:3728
msgid "Culling of the canvas occluder is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3720
+#: doc/classes/RenderingServer.xml:3731
msgid "Culling of the canvas occluder is clockwise."
msgstr ""
-#: doc/classes/RenderingServer.xml:3723
+#: doc/classes/RenderingServer.xml:3734
msgid "Culling of the canvas occluder is counterclockwise."
msgstr ""
-#: doc/classes/RenderingServer.xml:3784
+#: doc/classes/RenderingServer.xml:3795
msgid "The amount of objects in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3787
+#: doc/classes/RenderingServer.xml:3798
msgid "The amount of vertices in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3790
+#: doc/classes/RenderingServer.xml:3801
msgid "The amount of modified materials in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3793
+#: doc/classes/RenderingServer.xml:3804
msgid "The amount of shader rebinds in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3796
+#: doc/classes/RenderingServer.xml:3807
msgid "The amount of surface changes in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3799
+#: doc/classes/RenderingServer.xml:3810
msgid "The amount of draw calls in frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3814
+#: doc/classes/RenderingServer.xml:3825
msgid "Hardware supports shaders. This enum is currently unused in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:3817
+#: doc/classes/RenderingServer.xml:3828
msgid ""
"Hardware supports multithreading. This enum is currently unused in Godot 3.x."
msgstr ""
@@ -46433,13 +56524,13 @@ msgstr ""
#: doc/classes/Resource.xml:7
msgid ""
"Resource is the base class for all Godot-specific resource types, serving "
-"primarily as data containers. They are reference counted and freed when no "
-"longer in use. They are also cached once loaded from disk, so that any "
-"further attempts to load a resource from a given path will return the same "
-"reference (all this in contrast to a [Node], which is not reference counted "
-"and can be instanced from disk as many times as desired). Resources can be "
-"saved externally on disk or bundled into another object, such as a [Node] or "
-"another resource."
+"primarily as data containers. Unlike [Object]s, they are reference-counted "
+"and freed when no longer in use. They are also cached once loaded from disk, "
+"so that any further attempts to load a resource from a given path will "
+"return the same reference (all this in contrast to a [Node], which is not "
+"reference-counted and can be instanced from disk as many times as desired). "
+"Resources can be saved externally on disk or bundled into another object, "
+"such as a [Node] or another resource."
msgstr ""
#: doc/classes/Resource.xml:10
@@ -46448,34 +56539,38 @@ msgid ""
"resources.html"
msgstr ""
-#: doc/classes/Resource.xml:17
+#: doc/classes/Resource.xml:18
msgid ""
"Virtual function which can be overridden to customize the behavior value of "
"[method setup_local_to_scene]."
msgstr ""
-#: doc/classes/Resource.xml:26
+#: doc/classes/Resource.xml:27
msgid ""
"Duplicates the resource, returning a new resource. By default, sub-resources "
-"are shared between resource copies for efficiency, this can be changed by "
-"passing [code]true[/code] to the [code]subresources[/code] argument."
+"are shared between resource copies for efficiency. This can be changed by "
+"passing [code]true[/code] to the [code]subresources[/code] argument which "
+"will copy the subresources.\n"
+"[b]Note:[/b] If [code]subresources[/code] is [code]true[/code], this method "
+"will only perform a shallow copy. Nested resources within subresources will "
+"not be duplicated and will still be shared."
msgstr ""
-#: doc/classes/Resource.xml:33
+#: doc/classes/Resource.xml:35
msgid ""
"If [member resource_local_to_scene] is enabled and the resource was loaded "
"from a [PackedScene] instantiation, returns the local scene where this "
"resource's unique copy is in use. Otherwise, returns [code]null[/code]."
msgstr ""
-#: doc/classes/Resource.xml:40
+#: doc/classes/Resource.xml:42
msgid ""
"Returns the RID of the resource (or an empty RID). Many resources (such as "
"[Texture2D], [Mesh], etc) are high-level abstractions of resources stored in "
"a server, so this function will return the original RID."
msgstr ""
-#: doc/classes/Resource.xml:47
+#: doc/classes/Resource.xml:49
msgid ""
"This method is called when a resource with [member resource_local_to_scene] "
"enabled is loaded from a [PackedScene] instantiation. Its behavior can be "
@@ -46485,7 +56580,7 @@ msgid ""
"local viewport."
msgstr ""
-#: doc/classes/Resource.xml:57
+#: doc/classes/Resource.xml:59
msgid ""
"Sets the path of the resource, potentially overriding an existing cache "
"entry for this path. This differs from setting [member resource_path], as "
@@ -46493,25 +56588,25 @@ msgid ""
"given path."
msgstr ""
-#: doc/classes/Resource.xml:63
+#: doc/classes/Resource.xml:65
msgid ""
"If [code]true[/code], the resource will be made unique in each instance of "
"its local scene. It can thus be modified in a scene instance without "
"impacting other instances of that same scene."
msgstr ""
-#: doc/classes/Resource.xml:66
+#: doc/classes/Resource.xml:68
msgid "The name of the resource. This is an optional identifier."
msgstr ""
-#: doc/classes/Resource.xml:69
+#: doc/classes/Resource.xml:71
msgid ""
"The path to the resource. In case it has its own file, it will return its "
"filepath. If it's tied to the scene, it will return the scene's path, "
"followed by the resource's index."
msgstr ""
-#: doc/classes/Resource.xml:75
+#: doc/classes/Resource.xml:77
msgid "Emitted whenever the resource changes."
msgstr ""
@@ -47330,15 +57425,21 @@ msgid ""
"global coordinate system, but is centered at the object's origin."
msgstr ""
-#: doc/classes/RigidBody2D.xml:87
+#: doc/classes/RigidBody2D.xml:87 doc/classes/RigidBody3D.xml:99
+#, fuzzy
msgid ""
-"Returns a list of the bodies colliding with this one. Use [member "
-"contacts_reported] to set the maximum number reported. You must also set "
-"[member contact_monitor] to [code]true[/code].\n"
+"Returns a list of the bodies colliding with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
"For performance, list of collisions is updated once per frame and before the "
"physics step. Consider using signals instead."
msgstr ""
+"Si [code]true[/code], el área dada se superpone al Area2D.\n"
+"[b]Nota:[/b] El resultado de esta prueba no es inmediato después de mover "
+"los objetos. Para el rendimiento, la lista de superposiciones se actualiza "
+"una vez por cuadro y antes del paso de física. Considere la posibilidad de "
+"utilizar señales en su lugar."
#: doc/classes/RigidBody2D.xml:97
msgid ""
@@ -47371,7 +57472,7 @@ msgstr ""
msgid "The body's total applied torque."
msgstr ""
-#: doc/classes/RigidBody2D.xml:130 doc/classes/RigidBody3D.xml:150
+#: doc/classes/RigidBody2D.xml:130 doc/classes/RigidBody3D.xml:157
msgid ""
"If [code]true[/code], the body can enter sleep mode when there is no "
"movement. See [member sleeping]."
@@ -47383,11 +57484,17 @@ msgid ""
"another RigidBody2D. See also [member contacts_reported]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:136
-msgid "The maximum number of contacts to report."
+#: doc/classes/RigidBody2D.xml:136 doc/classes/RigidBody3D.xml:163
+msgid ""
+"The maximum number of contacts that will be recorded. Requires [member "
+"contact_monitor] to be set to [code]true[/code].\n"
+"[b]Note:[/b] The number of contacts is different from the number of "
+"collisions. Collisions between parallel edges will result in two contacts "
+"(one at each end), and collisions between parallel faces will result in four "
+"contacts (one at each corner)."
msgstr ""
-#: doc/classes/RigidBody2D.xml:139
+#: doc/classes/RigidBody2D.xml:140
msgid ""
"Continuous collision detection mode.\n"
"Continuous collision detection tries to predict where a moving body will "
@@ -47397,21 +57504,21 @@ msgid ""
"methods are available. See [enum CCDMode] for details."
msgstr ""
-#: doc/classes/RigidBody2D.xml:143
+#: doc/classes/RigidBody2D.xml:144
msgid ""
"If [code]true[/code], internal force integration is disabled for this body. "
"Aside from collision response, the body will only move as determined by the "
"[method _integrate_forces] function."
msgstr ""
-#: doc/classes/RigidBody2D.xml:146
+#: doc/classes/RigidBody2D.xml:147
msgid ""
"Multiplies the gravity applied to the body. The body's gravity is calculated "
"from the [b]Default Gravity[/b] value in [b]Project > Project Settings > "
"Physics > 2d[/b] and/or any additional gravity vector applied by [Area2D]s."
msgstr ""
-#: doc/classes/RigidBody2D.xml:149
+#: doc/classes/RigidBody2D.xml:150
msgid ""
"The body's moment of inertia. This is like mass, but for rotation: it "
"determines how much torque it takes to rotate the body. The moment of "
@@ -47420,18 +57527,18 @@ msgid ""
"automatically computing it."
msgstr ""
-#: doc/classes/RigidBody2D.xml:152
+#: doc/classes/RigidBody2D.xml:153
msgid ""
"Damps the body's [member linear_velocity]. If [code]-1[/code], the body will "
"use the [b]Default Linear Damp[/b] in [b]Project > Project Settings > "
"Physics > 2d[/b]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:161
+#: doc/classes/RigidBody2D.xml:162
msgid "The body's mode. See [enum Mode] for possible values."
msgstr ""
-#: doc/classes/RigidBody2D.xml:164 doc/classes/RigidBody3D.xml:181
+#: doc/classes/RigidBody2D.xml:165 doc/classes/RigidBody3D.xml:189
#: doc/classes/StaticBody2D.xml:22 doc/classes/StaticBody3D.xml:22
msgid ""
"The physics material override for the body.\n"
@@ -47439,50 +57546,50 @@ msgid ""
"other physics material, such as an inherited one."
msgstr ""
-#: doc/classes/RigidBody2D.xml:168 doc/classes/RigidBody3D.xml:185
+#: doc/classes/RigidBody2D.xml:169 doc/classes/RigidBody3D.xml:193
msgid ""
"If [code]true[/code], the body will not move and will not calculate forces "
"until woken up by another body through, for example, a collision, or by "
"using the [method apply_impulse] or [method add_force] methods."
msgstr ""
-#: doc/classes/RigidBody2D.xml:171
+#: doc/classes/RigidBody2D.xml:172
msgid ""
"The body's weight based on its mass and the [b]Default Gravity[/b] value in "
"[b]Project > Project Settings > Physics > 2d[/b]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:179
+#: doc/classes/RigidBody2D.xml:180 doc/classes/RigidBody3D.xml:204
msgid ""
-"Emitted when a body enters into contact with this one. [member "
-"contact_monitor] must be [code]true[/code] and [member contacts_reported] "
-"greater than [code]0[/code]."
+"Emitted when a body enters into contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:186
+#: doc/classes/RigidBody2D.xml:187
msgid ""
-"Emitted when a body exits contact with this one. [member contact_monitor] "
-"must be [code]true[/code] and [member contacts_reported] greater than "
-"[code]0[/code]."
+"Emitted when a body exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:199
+#: doc/classes/RigidBody2D.xml:200
msgid ""
"Emitted when a body enters into contact with this one. Reports colliding "
"shape information. See [CollisionObject2D] for shape index information. "
-"[member contact_monitor] must be [code]true[/code] and [member "
-"contacts_reported] greater than [code]0[/code]."
+"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:212
+#: doc/classes/RigidBody2D.xml:213
msgid ""
"Emitted when a body shape exits contact with this one. Reports colliding "
"shape information. See [CollisionObject2D] for shape index information. "
-"[member contact_monitor] must be [code]true[/code] and [member "
-"contacts_reported] greater than [code]0[/code]."
+"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:217 doc/classes/RigidBody3D.xml:236
+#: doc/classes/RigidBody2D.xml:218 doc/classes/RigidBody3D.xml:244
msgid ""
"Emitted when the physics engine changes the body's sleeping state.\n"
"[b]Note:[/b] Changing the value [member sleeping] will not trigger this "
@@ -47490,41 +57597,41 @@ msgid ""
"engine or [code]emit_signal(\"sleeping_state_changed\")[/code] is used."
msgstr ""
-#: doc/classes/RigidBody2D.xml:224
+#: doc/classes/RigidBody2D.xml:225
msgid ""
"Rigid mode. The body behaves as a physical object. It collides with other "
"bodies and responds to forces applied to it. This is the default mode."
msgstr ""
-#: doc/classes/RigidBody2D.xml:227
+#: doc/classes/RigidBody2D.xml:228
msgid "Static mode. The body behaves like a [StaticBody2D] and does not move."
msgstr ""
-#: doc/classes/RigidBody2D.xml:230
+#: doc/classes/RigidBody2D.xml:231
msgid ""
"Character mode. Similar to [constant MODE_RIGID], but the body can not "
"rotate."
msgstr ""
-#: doc/classes/RigidBody2D.xml:233
+#: doc/classes/RigidBody2D.xml:234
msgid ""
"Kinematic mode. The body behaves like a [KinematicBody2D], and must be moved "
"by code."
msgstr ""
-#: doc/classes/RigidBody2D.xml:236
+#: doc/classes/RigidBody2D.xml:237
msgid ""
"Continuous collision detection disabled. This is the fastest way to detect "
"body collisions, but can miss small, fast-moving objects."
msgstr ""
-#: doc/classes/RigidBody2D.xml:239
+#: doc/classes/RigidBody2D.xml:240
msgid ""
"Continuous collision detection enabled using raycasting. This is faster than "
"shapecasting but less precise."
msgstr ""
-#: doc/classes/RigidBody2D.xml:242
+#: doc/classes/RigidBody2D.xml:243
msgid ""
"Continuous collision detection enabled using shapecasting. This is the "
"slowest CCD method and the most precise."
@@ -47610,42 +57717,34 @@ msgid ""
"locked."
msgstr ""
-#: doc/classes/RigidBody3D.xml:99
+#: doc/classes/RigidBody3D.xml:107
msgid ""
-"Returns a list of the bodies colliding with this one. By default, number of "
-"max contacts reported is at 0, see the [member contacts_reported] property "
-"to increase it.\n"
-"[b]Note:[/b] The result of this test is not immediate after moving objects. "
-"For performance, list of collisions is updated once per frame and before the "
-"physics step. Consider using signals instead."
+"Returns the inverse inertia tensor basis. This is used to calculate the "
+"angular acceleration resulting from a torque applied to the [RigidBody3D]."
msgstr ""
-#: doc/classes/RigidBody3D.xml:111
+#: doc/classes/RigidBody3D.xml:118
msgid "Locks the specified linear or rotational axis."
msgstr ""
-#: doc/classes/RigidBody3D.xml:126
+#: doc/classes/RigidBody3D.xml:133
msgid "Damps RigidBody3D's rotational forces."
msgstr ""
-#: doc/classes/RigidBody3D.xml:129
+#: doc/classes/RigidBody3D.xml:136
msgid "RigidBody3D's rotational velocity."
msgstr ""
-#: doc/classes/RigidBody3D.xml:153
+#: doc/classes/RigidBody3D.xml:160
+#, fuzzy
msgid ""
"If [code]true[/code], the RigidBody3D will emit signals when it collides "
-"with another RigidBody3D."
+"with another RigidBody3D. See also [member contacts_reported]."
msgstr ""
+"Si [code]true[/code], se habilita la transparencia en el cuerpo. Véase "
+"también [member blend_mode]."
-#: doc/classes/RigidBody3D.xml:156
-msgid ""
-"The maximum contacts to report. Bodies can keep a log of the contacts with "
-"other bodies, this is enabled by setting the maximum amount of contacts "
-"reported to a number greater than 0."
-msgstr ""
-
-#: doc/classes/RigidBody3D.xml:159
+#: doc/classes/RigidBody3D.xml:167
msgid ""
"If [code]true[/code], continuous collision detection is used.\n"
"Continuous collision detection tries to predict where a moving body will "
@@ -47655,7 +57754,7 @@ msgid ""
"faster to compute, but can miss small, fast-moving objects."
msgstr ""
-#: doc/classes/RigidBody3D.xml:163
+#: doc/classes/RigidBody3D.xml:171
msgid ""
"If [code]true[/code], internal force integration will be disabled (like "
"gravity or air friction) for this body. Other than collision response, the "
@@ -47663,7 +57762,7 @@ msgid ""
"function, if defined."
msgstr ""
-#: doc/classes/RigidBody3D.xml:166
+#: doc/classes/RigidBody3D.xml:174
msgid ""
"This is multiplied by the global 3D gravity setting found in [b]Project > "
"Project Settings > Physics > 3d[/b] to produce RigidBody3D's gravity. For "
@@ -47671,14 +57770,14 @@ msgid ""
"and 0.5 will apply half gravity to this object."
msgstr ""
-#: doc/classes/RigidBody3D.xml:169
+#: doc/classes/RigidBody3D.xml:177
msgid ""
"The body's linear damp. Cannot be less than -1.0. If this value is different "
"from -1.0, any linear damp derived from the world or areas will be "
"overridden."
msgstr ""
-#: doc/classes/RigidBody3D.xml:172
+#: doc/classes/RigidBody3D.xml:180
msgid ""
"The body's linear velocity. Can be used sporadically, but [b]don't set this "
"every frame[/b], because physics may run in another thread and runs at a "
@@ -47686,60 +57785,57 @@ msgid ""
"for precise control of the body state."
msgstr ""
-#: doc/classes/RigidBody3D.xml:178
+#: doc/classes/RigidBody3D.xml:186
msgid "The body mode. See [enum Mode] for possible values."
msgstr ""
-#: doc/classes/RigidBody3D.xml:196
-msgid ""
-"Emitted when a body enters into contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work."
-msgstr ""
-
-#: doc/classes/RigidBody3D.xml:203
+#: doc/classes/RigidBody3D.xml:211
msgid ""
-"Emitted when a body shape exits contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work."
+"Emitted when a body shape exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody3D.xml:216
+#: doc/classes/RigidBody3D.xml:224
msgid ""
-"Emitted when a body enters into contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work.\n"
+"Emitted when a body enters into contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"This signal not only receives the body that collided with this one, but also "
"its [RID] ([code]body_id[/code]), the shape index from the colliding body "
"([code]body_shape[/code]), and the shape index from this body "
"([code]local_shape[/code]) the other body collided with."
msgstr ""
-#: doc/classes/RigidBody3D.xml:230
+#: doc/classes/RigidBody3D.xml:238
msgid ""
-"Emitted when a body shape exits contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work.\n"
+"Emitted when a body shape exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"This signal not only receives the body that stopped colliding with this one, "
"but also its [RID] ([code]body_id[/code]), the shape index from the "
"colliding body ([code]body_shape[/code]), and the shape index from this body "
"([code]local_shape[/code]) the other body stopped colliding with."
msgstr ""
-#: doc/classes/RigidBody3D.xml:243
+#: doc/classes/RigidBody3D.xml:251
msgid ""
"Rigid body mode. This is the \"natural\" state of a rigid body. It is "
"affected by forces, and can move, rotate, and be affected by user code."
msgstr ""
-#: doc/classes/RigidBody3D.xml:246
+#: doc/classes/RigidBody3D.xml:254
msgid ""
"Static mode. The body behaves like a [StaticBody3D], and can only move by "
"user code."
msgstr ""
-#: doc/classes/RigidBody3D.xml:249
+#: doc/classes/RigidBody3D.xml:257
msgid ""
"Character body mode. This behaves like a rigid body, but can not rotate."
msgstr ""
-#: doc/classes/RigidBody3D.xml:252
+#: doc/classes/RigidBody3D.xml:260
msgid ""
"Kinematic body mode. The body behaves like a [KinematicBody3D], and can only "
"move by user code."
@@ -48246,7 +58342,7 @@ msgstr ""
msgid "The time remaining."
msgstr ""
-#: doc/classes/SceneTreeTimer.xml:28 doc/classes/Timer.xml:62
+#: doc/classes/SceneTreeTimer.xml:28 doc/classes/Timer.xml:63
msgid "Emitted when the timer reaches 0."
msgstr ""
@@ -48369,27 +58465,27 @@ msgid ""
"the singleton using [method EditorInterface.get_script_editor]."
msgstr ""
-#: doc/classes/ScriptEditor.xml:40
+#: doc/classes/ScriptEditor.xml:46
msgid "Returns a [Script] that is currently active in editor."
msgstr ""
-#: doc/classes/ScriptEditor.xml:57
+#: doc/classes/ScriptEditor.xml:69
msgid ""
"Returns an array with all [Script] objects which are currently open in "
"editor."
msgstr ""
-#: doc/classes/ScriptEditor.xml:66
+#: doc/classes/ScriptEditor.xml:78
msgid "Goes to the specified line in the current script."
msgstr ""
-#: doc/classes/ScriptEditor.xml:85
+#: doc/classes/ScriptEditor.xml:113
msgid ""
"Emitted when user changed active script. Argument is a freshly activated "
"[Script]."
msgstr ""
-#: doc/classes/ScriptEditor.xml:92
+#: doc/classes/ScriptEditor.xml:120
msgid ""
"Emitted when editor is about to close the active script. Argument is a "
"[Script] that is going to be closed."
@@ -48451,7 +58547,7 @@ msgid ""
"visible."
msgstr ""
-#: doc/classes/ScrollContainer.xml:37 doc/classes/TextEdit.xml:453
+#: doc/classes/ScrollContainer.xml:37 doc/classes/TextEdit.xml:407
msgid "The current horizontal scroll value."
msgstr ""
@@ -48459,7 +58555,7 @@ msgstr ""
msgid "If [code]true[/code], enables horizontal scrolling."
msgstr ""
-#: doc/classes/ScrollContainer.xml:43 doc/classes/TextEdit.xml:456
+#: doc/classes/ScrollContainer.xml:43 doc/classes/TextEdit.xml:410
msgid "The current vertical scroll value."
msgstr ""
@@ -48982,7 +59078,7 @@ msgstr ""
msgid ""
"Sets the global pose transform, [code]pose[/code], for the bone at "
"[code]bone_idx[/code].\n"
-"[code]amount[/code] is the interpolation strengh that will be used when "
+"[code]amount[/code] is the interpolation strength that will be used when "
"applying the pose, and [code]persistent[/code] determines if the applied "
"pose will remain.\n"
"[b]Note[/b]: The pose transform needs to be in bone space. Use [method "
@@ -48999,7 +59095,7 @@ msgstr ""
#: doc/classes/Skeleton3D.xml:266
msgid ""
-"Returns the pose transform for bone [code]bone_idx[/code].\n"
+"Sets the pose transform for bone [code]bone_idx[/code].\n"
"[b]Note[/b]: The pose transform needs to be in bone space. Use [method "
"world_transform_to_bone_transform] to convert a world transform, like one "
"you can get from a [Node3D], to bone space."
@@ -49092,6 +59188,16 @@ msgstr ""
#: doc/classes/Sky.xml:52
msgid ""
+"Automatically selects the appropriate process mode based on your sky shader. "
+"If your shader uses [code]TIME[/code] or [code]POSITION[/code], this will "
+"use [constant PROCESS_MODE_REALTIME]. If your shader uses any of the "
+"[code]LIGHT_*[/code] variables or any custom uniforms, this uses [constant "
+"PROCESS_MODE_INCREMENTAL]. Otherwise, this defaults to [constant "
+"PROCESS_MODE_QUALITY]."
+msgstr ""
+
+#: doc/classes/Sky.xml:55
+msgid ""
"Uses high quality importance sampling to process the radiance map. In "
"general, this results in much higher quality than [constant "
"PROCESS_MODE_REALTIME] but takes much longer to generate. This should not be "
@@ -49101,10 +59207,22 @@ msgid ""
"ggx_samples]."
msgstr ""
-#: doc/classes/Sky.xml:55
+#: doc/classes/Sky.xml:58
+msgid ""
+"Uses the same high quality importance sampling to process the radiance map "
+"as [constant PROCESS_MODE_QUALITY], but updates over several frames. The "
+"number of frames is determined by [member ProjectSettings.rendering/quality/"
+"reflections/roughness_layers]. Use this when you need highest quality "
+"radiance maps, but have a sky that updates slowly."
+msgstr ""
+
+#: doc/classes/Sky.xml:61
msgid ""
"Uses the fast filtering algorithm to process the radiance map. In general "
-"this results in lower quality, but substantially faster run times.\n"
+"this results in lower quality, but substantially faster run times. If you "
+"need better quality, but still need to update the sky every frame, consider "
+"turning on [member ProjectSettings.rendering/quality/reflections/"
+"fast_filter_high_quality].\n"
"[b]Note:[/b] The fast filtering algorithm is limited to 256x256 cubemaps, so "
"[member radiance_size] must be set to [constant RADIANCE_SIZE_256]."
msgstr ""
@@ -49441,10 +59559,9 @@ msgid ""
msgstr ""
#: doc/classes/SpringArm3D.xml:35
-msgid ""
-"Returns the proportion between the current arm length (after checking for "
-"collisions) and the [member spring_length]. Ranges from 0 to 1."
-msgstr ""
+#, fuzzy
+msgid "Returns the spring arm's current length."
+msgstr "Devuelve la escena actualmente activa del editor."
#: doc/classes/SpringArm3D.xml:44
msgid ""
@@ -50139,7 +60256,7 @@ msgstr ""
msgid ""
"This is the built-in string class (and the one used by GDScript). It "
"supports Unicode and provides all necessary means for string handling. "
-"Strings are reference counted and use a copy-on-write approach, so passing "
+"Strings are reference-counted and use a copy-on-write approach, so passing "
"them around is cheap in resources."
msgstr ""
@@ -50294,26 +60411,32 @@ msgstr ""
#: doc/classes/String.xml:328
msgid ""
"Returns a copy of the string with escaped characters replaced by their "
-"meanings according to the C language standard."
+"meanings. Supported escape sequences are [code]\\'[/code], [code]\\\"[/"
+"code], [code]\\?[/code], [code]\\\\[/code], [code]\\a[/code], [code]\\b[/"
+"code], [code]\\f[/code], [code]\\n[/code], [code]\\r[/code], [code]\\t[/"
+"code], [code]\\v[/code].\n"
+"[b]Note:[/b] Unlike the GDScript parser, this method doesn't support the "
+"[code]\\uXXXX[/code] escape sequence."
msgstr ""
-#: doc/classes/String.xml:335
+#: doc/classes/String.xml:336
msgid ""
-"Changes the case of some letters. Replaces underscores with spaces, converts "
-"all letters to lowercase, then capitalizes first and every letter following "
-"the space character. For [code]capitalize camelCase mixed_with_underscores[/"
-"code], it will return [code]Capitalize Camelcase Mixed With Underscores[/"
+"Changes the case of some letters. Replaces underscores with spaces, adds "
+"spaces before in-word uppercase characters, converts all letters to "
+"lowercase, then capitalizes the first letter and every letter following a "
+"space character. For [code]capitalize camelCase mixed_with_underscores[/"
+"code], it will return [code]Capitalize Camel Case Mixed With Underscores[/"
"code]."
msgstr ""
-#: doc/classes/String.xml:344
+#: doc/classes/String.xml:345
msgid ""
"Performs a case-sensitive comparison to another string. Returns [code]-1[/"
"code] if less than, [code]+1[/code] if greater than, or [code]0[/code] if "
"equal."
msgstr ""
-#: doc/classes/String.xml:357
+#: doc/classes/String.xml:358
msgid ""
"Returns the number of occurrences of substring [code]what[/code] between "
"[code]from[/code] and [code]to[/code] positions. If [code]from[/code] and "
@@ -50321,7 +60444,7 @@ msgid ""
"code] equals 0 the remained substring will be used."
msgstr ""
-#: doc/classes/String.xml:370
+#: doc/classes/String.xml:371
msgid ""
"Returns the number of occurrences of substring [code]what[/code] (ignoring "
"case) between [code]from[/code] and [code]to[/code] positions. If "
@@ -50329,13 +60452,13 @@ msgid ""
"used. If only [code]to[/code] equals 0 the remained substring will be used."
msgstr ""
-#: doc/classes/String.xml:377
+#: doc/classes/String.xml:378
msgid ""
"Returns a copy of the string with indentation (leading tabs and spaces) "
"removed."
msgstr ""
-#: doc/classes/String.xml:384
+#: doc/classes/String.xml:385
#, fuzzy
msgid ""
"Returns [code]true[/code] if the length of the string equals [code]0[/code]."
@@ -50343,21 +60466,22 @@ msgstr ""
"Devuelve [code]true[/code] si la pista en el índice [code]idx[/code] está "
"habilitada."
-#: doc/classes/String.xml:393
+#: doc/classes/String.xml:394
msgid "Returns [code]true[/code] if the string ends with the given string."
msgstr ""
-#: doc/classes/String.xml:404
+#: doc/classes/String.xml:405
msgid ""
"Erases [code]chars[/code] characters from the string starting from "
"[code]position[/code]."
msgstr ""
-#: doc/classes/String.xml:415
+#: doc/classes/String.xml:416
msgid ""
-"Finds the first occurrence of a substring. Returns the starting position of "
-"the substring or [code]-1[/code] if not found. Optionally, the initial "
-"search index can be passed.\n"
+"Returns the index of the [b]first[/b] case-sensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the end of the "
+"string.\n"
"[b]Note:[/b] If you just want to know whether a string contains a substring, "
"use the [code]in[/code] operator as follows:\n"
"[codeblock]\n"
@@ -50367,51 +60491,42 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:430
-msgid ""
-"Finds the last occurrence of a substring. Returns the starting position of "
-"the substring or [code]-1[/code] if not found."
-msgstr ""
-
-#: doc/classes/String.xml:441
-#, fuzzy
+#: doc/classes/String.xml:433
msgid ""
-"Finds the first occurrence of a substring, ignoring case. Returns the "
-"starting position of the substring or [code]-1[/code] if not found. "
-"Optionally, the initial search index can be passed."
+"Returns the index of the [b]first[/b] case-insensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the end of the string."
msgstr ""
-"Busca el array por un valor y devuelve su indice o -1 sino se encuentra. "
-"Opcionalmente, el indice de busqueda inicial puede ser pasado."
-#: doc/classes/String.xml:452
+#: doc/classes/String.xml:444
msgid ""
"Formats the string by replacing all occurrences of [code]placeholder[/code] "
"with [code]values[/code]."
msgstr ""
-#: doc/classes/String.xml:459
+#: doc/classes/String.xml:451
msgid "If the string is a valid file path, returns the base directory name."
msgstr ""
-#: doc/classes/String.xml:466
+#: doc/classes/String.xml:458
msgid ""
"If the string is a valid file path, returns the full file path without the "
"extension."
msgstr ""
-#: doc/classes/String.xml:473
+#: doc/classes/String.xml:465
msgid "If the string is a valid file path, returns the extension."
msgstr ""
-#: doc/classes/String.xml:480
+#: doc/classes/String.xml:472
msgid "If the string is a valid file path, returns the filename."
msgstr ""
-#: doc/classes/String.xml:487
+#: doc/classes/String.xml:479
msgid "Hashes the string and returns a 32-bit integer."
msgstr ""
-#: doc/classes/String.xml:494
+#: doc/classes/String.xml:486
msgid ""
"Converts a string containing a hexadecimal number into an integer. "
"Hexadecimal strings are expected to be prefixed with \"[code]0x[/code]\" "
@@ -50421,7 +60536,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:504
+#: doc/classes/String.xml:496
msgid ""
"Escapes (encodes) a string to URL friendly format. Also referred to as 'URL "
"encode'.\n"
@@ -50431,7 +60546,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:514
+#: doc/classes/String.xml:506
msgid ""
"Unescapes (decodes) a string in URL encoded format. Also referred to as 'URL "
"decode'.\n"
@@ -50441,7 +60556,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:526
+#: doc/classes/String.xml:518
msgid ""
"Converts [code]size[/code] represented as number of bytes to human-readable "
"format using internationalized set of data size units, namely: B, KiB, MiB, "
@@ -50454,48 +60569,48 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:542
+#: doc/classes/String.xml:534
msgid ""
"Returns a copy of the string with the substring [code]what[/code] inserted "
"at the given position."
msgstr ""
-#: doc/classes/String.xml:549
+#: doc/classes/String.xml:541
msgid ""
"If the string is a path to a file or directory, returns [code]true[/code] if "
"the path is absolute."
msgstr ""
-#: doc/classes/String.xml:556
+#: doc/classes/String.xml:548
msgid ""
"If the string is a path to a file or directory, returns [code]true[/code] if "
"the path is relative."
msgstr ""
-#: doc/classes/String.xml:565
+#: doc/classes/String.xml:557
msgid ""
"Returns [code]true[/code] if this string is a subsequence of the given "
"string."
msgstr ""
-#: doc/classes/String.xml:574
+#: doc/classes/String.xml:566
msgid ""
"Returns [code]true[/code] if this string is a subsequence of the given "
"string, without considering case."
msgstr ""
-#: doc/classes/String.xml:581
+#: doc/classes/String.xml:573
msgid ""
"Returns [code]true[/code] if this string is free from characters that aren't "
"allowed in file names, those being:\n"
"[code]: / \\ ? * \" | % < >[/code]"
msgstr ""
-#: doc/classes/String.xml:589
+#: doc/classes/String.xml:581
msgid "Returns [code]true[/code] if this string contains a valid float."
msgstr ""
-#: doc/classes/String.xml:598
+#: doc/classes/String.xml:590
msgid ""
"Returns [code]true[/code] if this string contains a valid hexadecimal "
"number. If [code]with_prefix[/code] is [code]true[/code], then a validity of "
@@ -50503,7 +60618,7 @@ msgid ""
"instance: [code]0xDEADC0DE[/code]."
msgstr ""
-#: doc/classes/String.xml:605
+#: doc/classes/String.xml:597
msgid ""
"Returns [code]true[/code] if this string contains a valid color in "
"hexadecimal HTML notation. Other HTML notations such as named colors or "
@@ -50511,22 +60626,22 @@ msgid ""
"return [code]false[/code]."
msgstr ""
-#: doc/classes/String.xml:612
+#: doc/classes/String.xml:604
msgid ""
"Returns [code]true[/code] if this string is a valid identifier. A valid "
"identifier may contain only letters, digits and underscores ([code]_[/code]) "
"and the first character may not be a digit."
msgstr ""
-#: doc/classes/String.xml:619
+#: doc/classes/String.xml:611
msgid "Returns [code]true[/code] if this string contains a valid integer."
msgstr ""
-#: doc/classes/String.xml:626
+#: doc/classes/String.xml:618
msgid "Returns [code]true[/code] if this string contains a valid IP address."
msgstr ""
-#: doc/classes/String.xml:635
+#: doc/classes/String.xml:627
msgid ""
"Return a [String] which is the concatenation of the [code]parts[/code]. The "
"separator between elements is the string providing this method.\n"
@@ -50536,121 +60651,125 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:646
+#: doc/classes/String.xml:638
msgid ""
"Returns a copy of the string with special characters escaped using the JSON "
"standard."
msgstr ""
-#: doc/classes/String.xml:655
+#: doc/classes/String.xml:647
msgid "Returns a number of characters from the left of the string."
msgstr ""
-#: doc/classes/String.xml:662
+#: doc/classes/String.xml:654
msgid "Returns the string's amount of characters."
msgstr ""
-#: doc/classes/String.xml:671
+#: doc/classes/String.xml:663
msgid "Returns a copy of the string with characters removed from the left."
msgstr ""
-#: doc/classes/String.xml:680
+#: doc/classes/String.xml:672
msgid ""
"Does a simple case-sensitive expression match, where [code]\"*\"[/code] "
"matches zero or more arbitrary characters and [code]\"?\"[/code] matches any "
"single character except a period ([code]\".\"[/code])."
msgstr ""
-#: doc/classes/String.xml:689
+#: doc/classes/String.xml:681
msgid ""
"Does a simple case-insensitive expression match, where [code]\"*\"[/code] "
"matches zero or more arbitrary characters and [code]\"?\"[/code] matches any "
"single character except a period ([code]\".\"[/code])."
msgstr ""
-#: doc/classes/String.xml:696
+#: doc/classes/String.xml:688
msgid "Returns the MD5 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:703
+#: doc/classes/String.xml:695
msgid "Returns the MD5 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:712
+#: doc/classes/String.xml:704
msgid ""
"Performs a case-insensitive comparison to another string. Returns [code]-1[/"
"code] if less than, [code]+1[/code] if greater than, or [code]0[/code] if "
"equal."
msgstr ""
-#: doc/classes/String.xml:721
+#: doc/classes/String.xml:713
msgid "Returns the character code at position [code]at[/code]."
msgstr ""
-#: doc/classes/String.xml:730
+#: doc/classes/String.xml:722
msgid ""
"Formats a number to have an exact number of [code]digits[/code] after the "
"decimal point."
msgstr ""
-#: doc/classes/String.xml:739
+#: doc/classes/String.xml:731
msgid ""
"Formats a number to have an exact number of [code]digits[/code] before the "
"decimal point."
msgstr ""
-#: doc/classes/String.xml:746
+#: doc/classes/String.xml:738
msgid "Decode a percent-encoded string. See [method percent_encode]."
msgstr ""
-#: doc/classes/String.xml:753
+#: doc/classes/String.xml:745
msgid ""
"Percent-encodes a string. Encodes parameters in a URL when sending a HTTP "
"GET request (and bodies of form-urlencoded POST requests)."
msgstr ""
-#: doc/classes/String.xml:762
+#: doc/classes/String.xml:754
msgid ""
"If the string is a path, this concatenates [code]file[/code] at the end of "
"the string as a subpath. E.g. [code]\"this/is\".plus_file(\"path\") == "
"\"this/is/path\"[/code]."
msgstr ""
-#: doc/classes/String.xml:771
+#: doc/classes/String.xml:763
msgid ""
"Returns original string repeated a number of times. The number of "
"repetitions is given by the argument."
msgstr ""
-#: doc/classes/String.xml:782
+#: doc/classes/String.xml:774
msgid ""
"Replaces occurrences of a case-sensitive substring with the given one inside "
"the string."
msgstr ""
-#: doc/classes/String.xml:793
+#: doc/classes/String.xml:785
msgid ""
"Replaces occurrences of a case-insensitive substring with the given one "
"inside the string."
msgstr ""
-#: doc/classes/String.xml:804
+#: doc/classes/String.xml:796
msgid ""
-"Performs a case-sensitive search for a substring, but starts from the end of "
-"the string instead of the beginning."
+"Returns the index of the [b]last[/b] case-sensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the beginning of the "
+"string."
msgstr ""
-#: doc/classes/String.xml:815
+#: doc/classes/String.xml:807
msgid ""
-"Performs a case-insensitive search for a substring, but starts from the end "
-"of the string instead of the beginning."
+"Returns the index of the [b]last[/b] case-insensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the beginning of the "
+"string."
msgstr ""
-#: doc/classes/String.xml:824
+#: doc/classes/String.xml:816
msgid "Returns the right side of the string from a given position."
msgstr ""
-#: doc/classes/String.xml:837
+#: doc/classes/String.xml:829
msgid ""
"Splits the string by a [code]delimiter[/code] string and returns an array of "
"the substrings, starting from right.\n"
@@ -50669,39 +60788,39 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:856
+#: doc/classes/String.xml:848
msgid "Returns a copy of the string with characters removed from the right."
msgstr ""
-#: doc/classes/String.xml:863
+#: doc/classes/String.xml:855
msgid "Returns the SHA-1 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:870
+#: doc/classes/String.xml:862
msgid "Returns the SHA-1 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:877
+#: doc/classes/String.xml:869
msgid "Returns the SHA-256 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:884
+#: doc/classes/String.xml:876
msgid "Returns the SHA-256 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:893
+#: doc/classes/String.xml:885
msgid ""
"Returns the similarity index of the text compared to this string. 1 means "
"totally similar and 0 means totally dissimilar."
msgstr ""
-#: doc/classes/String.xml:906
+#: doc/classes/String.xml:898
msgid ""
"Splits the string by a [code]delimiter[/code] string and returns an array of "
-"the substrings.\n"
+"the substrings. The [code]delimiter[/code] can be of any length.\n"
"If [code]maxsplit[/code] is specified, it defines the number of splits to do "
-"from the left up to [code]maxsplit[/code]. The default value of 0 means that "
-"all items are split.\n"
+"from the left up to [code]maxsplit[/code]. The default value of [code]0[/"
+"code] means that all items are split.\n"
"Example:\n"
"[codeblock]\n"
"var some_string = \"One,Two,Three,Four\"\n"
@@ -50709,10 +60828,12 @@ msgid ""
"print(some_array.size()) # Prints 2\n"
"print(some_array[0]) # Prints \"One\"\n"
"print(some_array[1]) # Prints \"Two,Three,Four\"\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"If you need to split strings with more complex rules, use the [RegEx] class "
+"instead."
msgstr ""
-#: doc/classes/String.xml:926
+#: doc/classes/String.xml:919
msgid ""
"Splits the string in floats by using a delimiter string and returns an array "
"of the substrings.\n"
@@ -50720,7 +60841,7 @@ msgid ""
"split by [code]\",\"[/code]."
msgstr ""
-#: doc/classes/String.xml:938
+#: doc/classes/String.xml:931
msgid ""
"Returns a copy of the string stripped of any non-printable character "
"(including tabulations, spaces and line breaks) at the beginning and the "
@@ -50728,7 +60849,7 @@ msgid ""
"right edges respectively."
msgstr ""
-#: doc/classes/String.xml:945
+#: doc/classes/String.xml:938
msgid ""
"Returns a copy of the string stripped of any escape character. These include "
"all non-printable control characters of the first page of the ASCII table (< "
@@ -50736,14 +60857,14 @@ msgid ""
"code] and [code]\\r[/code]) characters, but not spaces."
msgstr ""
-#: doc/classes/String.xml:956
+#: doc/classes/String.xml:949
msgid ""
"Returns part of the string from the position [code]from[/code] with length "
"[code]len[/code]. Argument [code]len[/code] is optional and using [code]-1[/"
"code] will return remaining characters from given position."
msgstr ""
-#: doc/classes/String.xml:963
+#: doc/classes/String.xml:956
msgid ""
"Converts the String (which is a character array) to [PackedByteArray] (which "
"is an array of bytes). The conversion is faster compared to [method "
@@ -50751,25 +60872,25 @@ msgid ""
"ASCII characters."
msgstr ""
-#: doc/classes/String.xml:970
+#: doc/classes/String.xml:963
msgid ""
"Converts a string containing a decimal number into a [code]float[/code]."
msgstr ""
-#: doc/classes/String.xml:977
+#: doc/classes/String.xml:970
msgid ""
"Converts a string containing an integer number into an [code]int[/code]."
msgstr ""
-#: doc/classes/String.xml:984
+#: doc/classes/String.xml:977
msgid "Returns the string converted to lowercase."
msgstr ""
-#: doc/classes/String.xml:991
+#: doc/classes/String.xml:984
msgid "Returns the string converted to uppercase."
msgstr ""
-#: doc/classes/String.xml:998
+#: doc/classes/String.xml:991
msgid ""
"Converts the String (which is an array of characters) to [PackedByteArray] "
"(which is an array of bytes). The conversion is a bit slower than [method "
@@ -50777,25 +60898,25 @@ msgid ""
"this function over [method to_ascii]."
msgstr ""
-#: doc/classes/String.xml:1007
+#: doc/classes/String.xml:1000
msgid ""
"Removes a given string from the start if it starts with it or leaves the "
"string unchanged."
msgstr ""
-#: doc/classes/String.xml:1016
+#: doc/classes/String.xml:1009
msgid ""
"Removes a given string from the end if it ends with it or leaves the string "
"unchanged."
msgstr ""
-#: doc/classes/String.xml:1023
+#: doc/classes/String.xml:1016
msgid ""
"Returns a copy of the string with special characters escaped using the XML "
"standard."
msgstr ""
-#: doc/classes/String.xml:1030
+#: doc/classes/String.xml:1023
msgid ""
"Returns a copy of the string with escaped characters replaced by their "
"meanings according to the XML standard."
@@ -52027,50 +62148,42 @@ msgid ""
"undo/redo."
msgstr ""
-#: doc/classes/TextEdit.xml:24
-msgid "Adds color region (given the delimiters) and its colors."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:35
-msgid "Adds a [code]keyword[/code] and its [Color]."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:44
+#: doc/classes/TextEdit.xml:18
msgid ""
"Returns if the given line is foldable, that is, it has indented lines right "
"below it."
msgstr ""
-#: doc/classes/TextEdit.xml:57
+#: doc/classes/TextEdit.xml:25
msgid ""
-"Clears all custom syntax coloring information previously added with [method "
-"add_color_region] or [method add_keyword_color]."
+"Centers the viewport on the line the editing cursor is at. This also resets "
+"the [member scroll_horizontal] value to [code]0[/code]."
msgstr ""
-#: doc/classes/TextEdit.xml:64
+#: doc/classes/TextEdit.xml:32
msgid "Clears the undo history."
msgstr ""
-#: doc/classes/TextEdit.xml:71
+#: doc/classes/TextEdit.xml:39
msgid "Copy's the current text selection."
msgstr ""
-#: doc/classes/TextEdit.xml:78
+#: doc/classes/TextEdit.xml:46
msgid "Returns the column the editing cursor is at."
msgstr ""
-#: doc/classes/TextEdit.xml:85
+#: doc/classes/TextEdit.xml:53
msgid "Returns the line the editing cursor is at."
msgstr ""
-#: doc/classes/TextEdit.xml:96
+#: doc/classes/TextEdit.xml:64
msgid ""
"Moves the cursor at the specified [code]column[/code] index.\n"
"If [code]adjust_viewport[/code] is set to [code]true[/code], the viewport "
"will center at the cursor position after the move occurs."
msgstr ""
-#: doc/classes/TextEdit.xml:112
+#: doc/classes/TextEdit.xml:80
msgid ""
"Moves the cursor at the specified [code]line[/code] index.\n"
"If [code]adjust_viewport[/code] is set to [code]true[/code], the viewport "
@@ -52079,111 +62192,101 @@ msgid ""
"[code]line[/code] can be hidden using [method set_line_as_hidden]."
msgstr ""
-#: doc/classes/TextEdit.xml:121
+#: doc/classes/TextEdit.xml:89
msgid "Cut's the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:128
+#: doc/classes/TextEdit.xml:96
msgid "Deselects the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:135
+#: doc/classes/TextEdit.xml:103
msgid "Folds all lines that are possible to be folded (see [method can_fold])."
msgstr ""
-#: doc/classes/TextEdit.xml:144
+#: doc/classes/TextEdit.xml:112
msgid "Folds the given line, if possible (see [method can_fold])."
msgstr ""
-#: doc/classes/TextEdit.xml:151
+#: doc/classes/TextEdit.xml:119
msgid "Returns an array containing the line number of each breakpoint."
msgstr ""
-#: doc/classes/TextEdit.xml:160
-msgid "Returns the [Color] of the specified [code]keyword[/code]."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:169
+#: doc/classes/TextEdit.xml:128
msgid "Returns the text of a specific line."
msgstr ""
-#: doc/classes/TextEdit.xml:176
+#: doc/classes/TextEdit.xml:135
msgid "Returns the amount of total lines in the text."
msgstr ""
-#: doc/classes/TextEdit.xml:183
+#: doc/classes/TextEdit.xml:142
msgid ""
"Returns the [PopupMenu] of this [TextEdit]. By default, this menu is "
"displayed when right-clicking on the [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:190
+#: doc/classes/TextEdit.xml:149
msgid "Returns the selection begin column."
msgstr ""
-#: doc/classes/TextEdit.xml:197
+#: doc/classes/TextEdit.xml:156
msgid "Returns the selection begin line."
msgstr ""
-#: doc/classes/TextEdit.xml:204
+#: doc/classes/TextEdit.xml:163
msgid "Returns the text inside the selection."
msgstr ""
-#: doc/classes/TextEdit.xml:211
+#: doc/classes/TextEdit.xml:170
msgid "Returns the selection end column."
msgstr ""
-#: doc/classes/TextEdit.xml:218
+#: doc/classes/TextEdit.xml:177
msgid "Returns the selection end line."
msgstr ""
-#: doc/classes/TextEdit.xml:225
+#: doc/classes/TextEdit.xml:184
msgid "Returns a [String] text with the word under the mouse cursor location."
msgstr ""
-#: doc/classes/TextEdit.xml:234
-msgid ""
-"Returns whether the specified [code]keyword[/code] has a color set to it or "
-"not."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:243
+#: doc/classes/TextEdit.xml:193
msgid "Insert the specified text at the cursor position."
msgstr ""
-#: doc/classes/TextEdit.xml:252
+#: doc/classes/TextEdit.xml:202
msgid "Returns whether the line at the specified index is folded or not."
msgstr ""
-#: doc/classes/TextEdit.xml:261
+#: doc/classes/TextEdit.xml:211
msgid "Returns whether the line at the specified index is hidden or not."
msgstr ""
-#: doc/classes/TextEdit.xml:268
+#: doc/classes/TextEdit.xml:218
msgid "Returns [code]true[/code] if the selection is active."
msgstr ""
-#: doc/classes/TextEdit.xml:277
+#: doc/classes/TextEdit.xml:227
msgid ""
"Triggers a right-click menu action by the specified index. See [enum "
"MenuItems] for a list of available indexes."
msgstr ""
-#: doc/classes/TextEdit.xml:284
+#: doc/classes/TextEdit.xml:234
msgid "Paste the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:291
+#: doc/classes/TextEdit.xml:241
msgid "Perform redo operation."
msgstr ""
-#: doc/classes/TextEdit.xml:298
+#: doc/classes/TextEdit.xml:248
msgid ""
"Removes all the breakpoints. This will not fire the [signal "
"breakpoint_toggled] signal."
msgstr ""
-#: doc/classes/TextEdit.xml:313
+#: doc/classes/TextEdit.xml:263
msgid ""
"Perform a search inside the text. Search flags can be specified in the [enum "
"SearchFlags] enum.\n"
@@ -52199,245 +62302,269 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/TextEdit.xml:336
-msgid "Perform selection, from line/column to line/column."
+#: doc/classes/TextEdit.xml:286
+msgid ""
+"Perform selection, from line/column to line/column.\n"
+"If [member selecting_enabled] is [code]false[/code], no selection will occur."
msgstr ""
-#: doc/classes/TextEdit.xml:343
-msgid "Select all the text."
+#: doc/classes/TextEdit.xml:294
+msgid ""
+"Select all the text.\n"
+"If [member selecting_enabled] is [code]false[/code], no selection will occur."
msgstr ""
-#: doc/classes/TextEdit.xml:354
+#: doc/classes/TextEdit.xml:306
#, fuzzy
msgid "Sets the text for a specific line."
msgstr "Establece la hora de una clave existente."
-#: doc/classes/TextEdit.xml:365
+#: doc/classes/TextEdit.xml:317
msgid "If [code]true[/code], hides the line of the specified index."
msgstr ""
-#: doc/classes/TextEdit.xml:374
+#: doc/classes/TextEdit.xml:326
msgid "Toggle the folding of the code block at the given line."
msgstr ""
-#: doc/classes/TextEdit.xml:381
+#: doc/classes/TextEdit.xml:333
msgid "Perform undo operation."
msgstr ""
-#: doc/classes/TextEdit.xml:390
+#: doc/classes/TextEdit.xml:342
msgid "Unfolds the given line, if folded."
msgstr ""
-#: doc/classes/TextEdit.xml:397
+#: doc/classes/TextEdit.xml:349
msgid ""
"Unhide all lines that were previously set to hidden by [method "
"set_line_as_hidden]."
msgstr ""
-#: doc/classes/TextEdit.xml:403
+#: doc/classes/TextEdit.xml:355
msgid "If [code]true[/code], the breakpoint gutter is visible."
msgstr ""
-#: doc/classes/TextEdit.xml:412
+#: doc/classes/TextEdit.xml:364
msgid ""
"If [code]true[/code], the caret displays as a rectangle.\n"
"If [code]false[/code], the caret displays as a bar."
msgstr ""
-#: doc/classes/TextEdit.xml:416
+#: doc/classes/TextEdit.xml:368
msgid ""
"If [code]true[/code], a right-click moves the cursor at the mouse position "
"before displaying the context menu.\n"
"If [code]false[/code], the context menu disregards mouse location."
msgstr ""
-#: doc/classes/TextEdit.xml:420
+#: doc/classes/TextEdit.xml:372
msgid "If [code]true[/code], a right-click displays the context menu."
msgstr ""
-#: doc/classes/TextEdit.xml:423
+#: doc/classes/TextEdit.xml:375
msgid ""
"If [code]true[/code], the \"space\" character will have a visible "
"representation."
msgstr ""
-#: doc/classes/TextEdit.xml:426
+#: doc/classes/TextEdit.xml:378
msgid ""
"If [code]true[/code], the \"tab\" character will have a visible "
"representation."
msgstr ""
-#: doc/classes/TextEdit.xml:430
+#: doc/classes/TextEdit.xml:382
msgid ""
"If [code]true[/code], the fold gutter is visible. This enables folding "
"groups of indented lines."
msgstr ""
-#: doc/classes/TextEdit.xml:433
+#: doc/classes/TextEdit.xml:385
msgid ""
"If [code]true[/code], all lines that have been set to hidden by [method "
"set_line_as_hidden], will not be visible."
msgstr ""
-#: doc/classes/TextEdit.xml:436
+#: doc/classes/TextEdit.xml:388
msgid ""
"If [code]true[/code], all occurrences of the selected text will be "
"highlighted."
msgstr ""
-#: doc/classes/TextEdit.xml:439
+#: doc/classes/TextEdit.xml:391
msgid "If [code]true[/code], the line containing the cursor is highlighted."
msgstr ""
-#: doc/classes/TextEdit.xml:447
+#: doc/classes/TextEdit.xml:394
+msgid ""
+"If [code]true[/code], a minimap is shown, providing an outline of your "
+"source code."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:397
+msgid "The width, in pixels, of the minimap."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:401
msgid ""
"If [code]true[/code], custom [code]font_color_selected[/code] will be used "
"for selected text."
msgstr ""
-#: doc/classes/TextEdit.xml:450
+#: doc/classes/TextEdit.xml:404
msgid ""
"If [code]true[/code], read-only mode is enabled. Existing text cannot be "
"modified and new text cannot be added."
msgstr ""
-#: doc/classes/TextEdit.xml:463
+#: doc/classes/TextEdit.xml:413
msgid ""
-"If [code]true[/code], line numbers are displayed to the left of the text."
+"If [code]true[/code], text can be selected.\n"
+"If [code]false[/code], text can not be selected by the user or by the "
+"[method select] or [method select_all] methods."
msgstr ""
-#: doc/classes/TextEdit.xml:466
+#: doc/classes/TextEdit.xml:417
+#, fuzzy
msgid ""
-"If [code]true[/code], sets the [code]step[/code] of the scrollbars to "
-"[code]0.25[/code] which results in smoother scrolling."
+"If [code]true[/code], shortcut keys for context menu items are enabled, even "
+"if the context menu is disabled."
msgstr ""
+"Si es [code]true[/code], los nodos hijos están ordenados, de lo contrario el "
+"orden está desactivado."
-#: doc/classes/TextEdit.xml:469
+#: doc/classes/TextEdit.xml:420
+msgid ""
+"If [code]true[/code], line numbers are displayed to the left of the text."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:423
msgid ""
-"If [code]true[/code], any custom color properties that have been set for "
-"this [TextEdit] will be visible."
+"If [code]true[/code], sets the [code]step[/code] of the scrollbars to "
+"[code]0.25[/code] which results in smoother scrolling."
msgstr ""
-#: doc/classes/TextEdit.xml:472
+#: doc/classes/TextEdit.xml:428
msgid "String value of the [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:475
+#: doc/classes/TextEdit.xml:431
msgid "Vertical scroll sensitivity."
msgstr ""
-#: doc/classes/TextEdit.xml:478
+#: doc/classes/TextEdit.xml:437
msgid ""
"If [code]true[/code], enables text wrapping when it goes beyond the edge of "
"what is visible."
msgstr ""
-#: doc/classes/TextEdit.xml:486
+#: doc/classes/TextEdit.xml:445
msgid "Emitted when a breakpoint is placed via the breakpoint gutter."
msgstr ""
-#: doc/classes/TextEdit.xml:491
+#: doc/classes/TextEdit.xml:450
msgid "Emitted when the cursor changes."
msgstr ""
-#: doc/classes/TextEdit.xml:500
+#: doc/classes/TextEdit.xml:459
msgid "Emitted when the info icon is clicked."
msgstr ""
-#: doc/classes/TextEdit.xml:531
+#: doc/classes/TextEdit.xml:496
msgid "Match case when searching."
msgstr ""
-#: doc/classes/TextEdit.xml:534
+#: doc/classes/TextEdit.xml:499
msgid "Match whole words when searching."
msgstr ""
-#: doc/classes/TextEdit.xml:537
+#: doc/classes/TextEdit.xml:502
msgid "Search from end to beginning."
msgstr ""
-#: doc/classes/TextEdit.xml:546
+#: doc/classes/TextEdit.xml:511
msgid ""
"Pastes the clipboard text over the selected text (or at the cursor's "
"position)."
msgstr ""
-#: doc/classes/TextEdit.xml:549
+#: doc/classes/TextEdit.xml:514
msgid "Erases the whole [TextEdit] text."
msgstr ""
-#: doc/classes/TextEdit.xml:552
+#: doc/classes/TextEdit.xml:517
msgid "Selects the whole [TextEdit] text."
msgstr ""
-#: doc/classes/TextEdit.xml:558
+#: doc/classes/TextEdit.xml:523
msgid "Redoes the previous action."
msgstr ""
-#: doc/classes/TextEdit.xml:566
+#: doc/classes/TextEdit.xml:531
msgid ""
"Sets the background [Color] of this [TextEdit]. [member syntax_highlighting] "
"has to be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:569
+#: doc/classes/TextEdit.xml:534
msgid ""
"Sets the [Color] of the bookmark marker. [member syntax_highlighting] has to "
"be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:574 doc/classes/TextEdit.xml:601
+#: doc/classes/TextEdit.xml:539 doc/classes/TextEdit.xml:566
msgid ""
"Sets the [Color] of the breakpoints. [member breakpoint_gutter] has to be "
"enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:612
+#: doc/classes/TextEdit.xml:577
msgid "Sets the default [Font]."
msgstr ""
-#: doc/classes/TextEdit.xml:615
+#: doc/classes/TextEdit.xml:580
msgid "Sets the font [Color]."
msgstr ""
-#: doc/classes/TextEdit.xml:620
+#: doc/classes/TextEdit.xml:585
msgid ""
"Sets the [Color] of the selected text. [member override_selected_font_color] "
"has to be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:625
+#: doc/classes/TextEdit.xml:588
msgid ""
"Sets the [Color] of the line numbers. [member show_line_numbers] has to be "
"enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:628
+#: doc/classes/TextEdit.xml:591
msgid "Sets the spacing between the lines."
msgstr ""
-#: doc/classes/TextEdit.xml:631
+#: doc/classes/TextEdit.xml:594
msgid "Sets the [Color] of marked text."
msgstr ""
-#: doc/classes/TextEdit.xml:636
+#: doc/classes/TextEdit.xml:597
msgid "Sets the [StyleBox] of this [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:641
+#: doc/classes/TextEdit.xml:600
msgid ""
"Sets the [StyleBox] of this [TextEdit] when [member readonly] is enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:646
+#: doc/classes/TextEdit.xml:605
msgid "Sets the highlight [Color] of text selections."
msgstr ""
-#: doc/classes/TextEdit.xml:653
+#: doc/classes/TextEdit.xml:610
msgid "Sets a custom [Texture2D] for tab text characters."
msgstr ""
-#: doc/classes/TextEdit.xml:656
+#: doc/classes/TextEdit.xml:613
msgid ""
"Sets the highlight [Color] of multiple occurrences. [member "
"highlight_all_occurrences] has to be enabled."
@@ -52515,80 +62642,80 @@ msgid ""
"the texture will not scale with the node."
msgstr ""
-#: doc/classes/TextureButton.xml:19
+#: doc/classes/TextureButton.xml:25
msgid ""
"Controls the texture's behavior when you resize the node's bounding "
"rectangle, [b]only if[/b] [member expand] is [code]true[/code]. Set it to "
"one of the [enum StretchMode] constants. See the constants to learn more."
msgstr ""
-#: doc/classes/TextureButton.xml:22
+#: doc/classes/TextureButton.xml:28
msgid ""
"Pure black and white [BitMap] image to use for click detection. On the mask, "
"white pixels represent the button's clickable area. Use it to create buttons "
"with curved shapes."
msgstr ""
-#: doc/classes/TextureButton.xml:25
+#: doc/classes/TextureButton.xml:31
msgid ""
"Texture to display when the node is disabled. See [member BaseButton."
"disabled]."
msgstr ""
-#: doc/classes/TextureButton.xml:28
+#: doc/classes/TextureButton.xml:34
msgid "Texture to display when the node has mouse or keyboard focus."
msgstr ""
-#: doc/classes/TextureButton.xml:31
+#: doc/classes/TextureButton.xml:37
msgid "Texture to display when the mouse hovers the node."
msgstr ""
-#: doc/classes/TextureButton.xml:34
+#: doc/classes/TextureButton.xml:40
msgid ""
"Texture to display by default, when the node is [b]not[/b] in the disabled, "
"focused, hover or pressed state."
msgstr ""
-#: doc/classes/TextureButton.xml:37
+#: doc/classes/TextureButton.xml:43
msgid ""
"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 "
"[member BaseButton.shortcut] key."
msgstr ""
-#: doc/classes/TextureButton.xml:42 doc/classes/TextureRect.xml:36
+#: doc/classes/TextureButton.xml:48 doc/classes/TextureRect.xml:36
msgid "Scale to fit the node's bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:45 doc/classes/TextureRect.xml:39
+#: doc/classes/TextureButton.xml:51 doc/classes/TextureRect.xml:39
msgid "Tile inside the node's bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:48 doc/classes/TextureRect.xml:42
+#: doc/classes/TextureButton.xml:54 doc/classes/TextureRect.xml:42
msgid ""
"The texture keeps its original size and stays in the bounding rectangle's "
"top-left corner."
msgstr ""
-#: doc/classes/TextureButton.xml:51 doc/classes/TextureRect.xml:45
+#: doc/classes/TextureButton.xml:57 doc/classes/TextureRect.xml:45
msgid ""
"The texture keeps its original size and stays centered in the node's "
"bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:54 doc/classes/TextureRect.xml:48
+#: doc/classes/TextureButton.xml:60 doc/classes/TextureRect.xml:48
msgid ""
"Scale the texture to fit the node's bounding rectangle, but maintain the "
"texture's aspect ratio."
msgstr ""
-#: doc/classes/TextureButton.xml:57
+#: doc/classes/TextureButton.xml:63
msgid ""
"Scale the texture to fit the node's bounding rectangle, center it, and "
"maintain its aspect ratio."
msgstr ""
-#: doc/classes/TextureButton.xml:60 doc/classes/TextureRect.xml:54
+#: doc/classes/TextureButton.xml:66 doc/classes/TextureRect.xml:54
msgid ""
"Scale the texture so that the shorter side fits the bounding rectangle. The "
"other side clips to the node's limits."
@@ -53038,19 +63165,28 @@ msgid ""
"advised if working with shared objects."
msgstr ""
-#: doc/classes/Thread.xml:17
+#: doc/classes/Thread.xml:11
+#, fuzzy
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/threads/thread_safe_apis."
+"html"
+msgstr ""
+"https://docs.godotengine.org/es/latest/tutorials/threads/"
+"using_multiple_threads.html"
+
+#: doc/classes/Thread.xml:18
msgid ""
"Returns the current [Thread]'s ID, uniquely identifying it among all threads."
msgstr ""
-#: doc/classes/Thread.xml:24
+#: doc/classes/Thread.xml:25
msgid ""
"Returns [code]true[/code] if this [Thread] is currently active. An active "
"[Thread] cannot start work on a new method but can be joined with [method "
"wait_to_finish]."
msgstr ""
-#: doc/classes/Thread.xml:39
+#: doc/classes/Thread.xml:40
msgid ""
"Starts a new [Thread] that runs [code]method[/code] on object "
"[code]instance[/code] with [code]userdata[/code] passed as an argument. Even "
@@ -53060,21 +63196,21 @@ msgid ""
"Returns [constant OK] on success, or [constant ERR_CANT_CREATE] on failure."
msgstr ""
-#: doc/classes/Thread.xml:47
+#: doc/classes/Thread.xml:48
msgid ""
"Joins the [Thread] and waits for it to finish. Returns what the method "
"called returned."
msgstr ""
-#: doc/classes/Thread.xml:53
+#: doc/classes/Thread.xml:54
msgid "A thread running with lower priority than normally."
msgstr ""
-#: doc/classes/Thread.xml:56
+#: doc/classes/Thread.xml:57
msgid "A thread with a standard priority."
msgstr ""
-#: doc/classes/Thread.xml:59
+#: doc/classes/Thread.xml:60
msgid "A thread running with higher priority than normally."
msgstr ""
@@ -53610,50 +63746,61 @@ msgid "Returns the [Transform2D] of a tile's shape."
msgstr ""
#: doc/classes/TileSet.xml:481
-msgid "Returns an array of the tile's shapes."
+msgid ""
+"Returns an array of dictionaries describing the tile's shapes.\n"
+"[b]Dictionary structure in the array returned by this method:[/b]\n"
+"[codeblock]\n"
+"{\n"
+" \"autotile_coord\": Vector2,\n"
+" \"one_way\": bool,\n"
+" \"one_way_margin\": int,\n"
+" \"shape\": CollisionShape2D,\n"
+" \"shape_transform\": Transform2D,\n"
+"}\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/TileSet.xml:490
+#: doc/classes/TileSet.xml:500
msgid "Returns the tile's texture."
msgstr ""
-#: doc/classes/TileSet.xml:499
+#: doc/classes/TileSet.xml:509
msgid "Returns the texture offset of the tile."
msgstr ""
-#: doc/classes/TileSet.xml:508
+#: doc/classes/TileSet.xml:518
msgid "Returns the tile's [enum TileMode]."
msgstr ""
-#: doc/classes/TileSet.xml:517
+#: doc/classes/TileSet.xml:527
msgid "Returns the tile's Z index (drawing layer)."
msgstr ""
-#: doc/classes/TileSet.xml:528
+#: doc/classes/TileSet.xml:538
msgid "Sets a light occluder for the tile."
msgstr ""
-#: doc/classes/TileSet.xml:539
+#: doc/classes/TileSet.xml:549
msgid "Sets the tile's material."
msgstr ""
-#: doc/classes/TileSet.xml:550
+#: doc/classes/TileSet.xml:560
msgid "Sets the tile's modulation color."
msgstr ""
-#: doc/classes/TileSet.xml:561
+#: doc/classes/TileSet.xml:571
msgid "Sets the tile's name."
msgstr ""
-#: doc/classes/TileSet.xml:572
+#: doc/classes/TileSet.xml:582
msgid "Sets the tile's navigation polygon."
msgstr ""
-#: doc/classes/TileSet.xml:583
+#: doc/classes/TileSet.xml:593
msgid "Sets an offset for the tile's navigation polygon."
msgstr ""
-#: doc/classes/TileSet.xml:594
+#: doc/classes/TileSet.xml:604
msgid ""
"Sets the tile's normal map texture.\n"
"[b]Note:[/b] Godot expects the normal map to use X+, Y-, and Z+ coordinates. "
@@ -53662,48 +63809,48 @@ msgid ""
"a comparison of normal map coordinates expected by popular engines."
msgstr ""
-#: doc/classes/TileSet.xml:606
+#: doc/classes/TileSet.xml:616
msgid "Sets an offset for the tile's light occluder."
msgstr ""
-#: doc/classes/TileSet.xml:617
+#: doc/classes/TileSet.xml:627
msgid ""
"Sets the tile's sub-region in the texture. This is common in texture atlases."
msgstr ""
-#: doc/classes/TileSet.xml:630
+#: doc/classes/TileSet.xml:640
msgid "Sets a shape for the tile, enabling collision."
msgstr ""
-#: doc/classes/TileSet.xml:643
+#: doc/classes/TileSet.xml:653
msgid "Sets the offset of a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:656
+#: doc/classes/TileSet.xml:666
msgid "Enables one-way collision on a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:681
+#: doc/classes/TileSet.xml:691
msgid "Sets a [Transform2D] on a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:692
+#: doc/classes/TileSet.xml:702
msgid "Sets an array of shapes for the tile, enabling collision."
msgstr ""
-#: doc/classes/TileSet.xml:703
+#: doc/classes/TileSet.xml:713
msgid "Sets the tile's texture."
msgstr ""
-#: doc/classes/TileSet.xml:714
+#: doc/classes/TileSet.xml:724
msgid "Sets the tile's texture offset."
msgstr ""
-#: doc/classes/TileSet.xml:725
+#: doc/classes/TileSet.xml:735
msgid "Sets the tile's [enum TileMode]."
msgstr ""
-#: doc/classes/TileSet.xml:736
+#: doc/classes/TileSet.xml:746
msgid "Sets the tile's drawing index."
msgstr ""
@@ -53714,14 +63861,16 @@ msgstr ""
#: doc/classes/Timer.xml:7
msgid ""
"Counts down a specified interval and emits a signal on reaching 0. Can be "
-"set to repeat or \"one-shot\" mode."
+"set to repeat or \"one-shot\" mode.\n"
+"[b]Note:[/b] To create an one-shot timer without instantiating a node, use "
+"[method SceneTree.create_timer]."
msgstr ""
-#: doc/classes/Timer.xml:16
+#: doc/classes/Timer.xml:17
msgid "Returns [code]true[/code] if the timer is stopped."
msgstr ""
-#: doc/classes/Timer.xml:25
+#: doc/classes/Timer.xml:26
msgid ""
"Starts the timer. Sets [code]wait_time[/code] to [code]time_sec[/code] if "
"[code]time_sec > 0[/code]. This also resets the remaining time to "
@@ -53729,11 +63878,11 @@ msgid ""
"[b]Note:[/b] this method will not resume a paused timer. See [member paused]."
msgstr ""
-#: doc/classes/Timer.xml:33
+#: doc/classes/Timer.xml:34
msgid "Stops the timer."
msgstr ""
-#: doc/classes/Timer.xml:39
+#: doc/classes/Timer.xml:40
msgid ""
"If [code]true[/code], the timer will automatically start when entering the "
"scene tree.\n"
@@ -53741,40 +63890,40 @@ msgid ""
"the timer enters the scene tree and starts."
msgstr ""
-#: doc/classes/Timer.xml:43
+#: doc/classes/Timer.xml:44
msgid ""
"If [code]true[/code], the timer will stop when reaching 0. If [code]false[/"
"code], it will restart."
msgstr ""
-#: doc/classes/Timer.xml:46
+#: doc/classes/Timer.xml:47
msgid ""
"If [code]true[/code], the timer is paused and will not process until it is "
"unpaused again, even if [method start] is called."
msgstr ""
-#: doc/classes/Timer.xml:49
+#: doc/classes/Timer.xml:50
msgid "Processing mode. See [enum TimerProcessMode]."
msgstr ""
-#: doc/classes/Timer.xml:52
+#: doc/classes/Timer.xml:53
msgid ""
"The timer's remaining time in seconds. Returns 0 if the timer is inactive.\n"
"[b]Note:[/b] You cannot set this value. To change the timer's remaining "
"time, use [method start]."
msgstr ""
-#: doc/classes/Timer.xml:56
+#: doc/classes/Timer.xml:57
msgid "Wait time in seconds."
msgstr ""
-#: doc/classes/Timer.xml:68
+#: doc/classes/Timer.xml:69
msgid ""
"Update the timer during the physics step at each frame (fixed framerate "
"processing)."
msgstr ""
-#: doc/classes/Timer.xml:71
+#: doc/classes/Timer.xml:72
msgid "Update the timer during the idle time at each frame."
msgstr ""
@@ -53853,60 +64002,68 @@ msgstr ""
#: doc/classes/Transform.xml:7
msgid ""
-"Represents one or many transformations in 3D space such as translation, "
-"rotation, or scaling. It consists of a [member basis] and an [member "
-"origin]. It is similar to a 3×4 matrix."
+"3×4 matrix (3 rows, 4 columns) used for 3D linear transformations. It can "
+"represent transformations such as translation, rotation, or scaling. It "
+"consists of a [member basis] (first 3 columns) and a [Vector3] for the "
+"[member origin] (last column).\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
msgstr ""
-#: doc/classes/Transform.xml:26
+#: doc/classes/Transform.xml:28
msgid ""
-"Constructs the Transform from four [Vector3]. Each axis corresponds to local "
-"basis vectors (some of which may be scaled)."
+"Constructs a Transform from four [Vector3] values (matrix columns). Each "
+"axis corresponds to local basis vectors (some of which may be scaled)."
msgstr ""
-#: doc/classes/Transform.xml:37
-msgid "Constructs the Transform from a [Basis] and [Vector3]."
-msgstr ""
+#: doc/classes/Transform.xml:39
+#, fuzzy
+msgid "Constructs a Transform from a [Basis] and [Vector3]."
+msgstr "Construye un array a partir de un [PackedVector3Array]."
-#: doc/classes/Transform.xml:46
-msgid "Constructs the Transform from a [Transform2D]."
-msgstr ""
+#: doc/classes/Transform.xml:48
+#, fuzzy
+msgid "Constructs a Transform from a [Transform2D]."
+msgstr "Inserte una clave de transformación para una pista de transformación."
-#: doc/classes/Transform.xml:55
+#: doc/classes/Transform.xml:57
msgid ""
-"Constructs the Transform from a [Quat]. The origin will be Vector3(0, 0, 0)."
+"Constructs a Transform from a [Quat]. The origin will be [code]Vector3(0, 0, "
+"0)[/code]."
msgstr ""
-#: doc/classes/Transform.xml:64
+#: doc/classes/Transform.xml:66
msgid ""
"Constructs the Transform from a [Basis]. The origin will be Vector3(0, 0, 0)."
msgstr ""
-#: doc/classes/Transform.xml:71
+#: doc/classes/Transform.xml:73 doc/classes/Transform2D.xml:51
msgid ""
"Returns the inverse of the transform, under the assumption that the "
"transformation is composed of rotation, scaling and translation."
msgstr ""
-#: doc/classes/Transform.xml:82
-msgid "Interpolates the transform to other Transform by weight amount (0-1)."
+#: doc/classes/Transform.xml:84
+msgid ""
+"Interpolates the transform to other Transform by weight amount (on the range "
+"of 0.0 to 1.0)."
msgstr ""
-#: doc/classes/Transform.xml:89 doc/classes/Transform2D.xml:106
+#: doc/classes/Transform.xml:91
msgid ""
"Returns the inverse of the transform, under the assumption that the "
"transformation is composed of rotation and translation (no scaling, use "
"affine_inverse for transforms with scaling)."
msgstr ""
-#: doc/classes/Transform.xml:98 doc/classes/Transform2D.xml:115
+#: doc/classes/Transform.xml:100 doc/classes/Transform2D.xml:119
msgid ""
"Returns [code]true[/code] if this transform and [code]transform[/code] are "
"approximately equal, by calling [code]is_equal_approx[/code] on each "
"component."
msgstr ""
-#: doc/classes/Transform.xml:109
+#: doc/classes/Transform.xml:111
msgid ""
"Returns a copy of the transform rotated such that its -Z axis points towards "
"the [code]target[/code] position.\n"
@@ -53916,25 +64073,25 @@ msgid ""
"Operations take place in global space."
msgstr ""
-#: doc/classes/Transform.xml:118 doc/classes/Transform2D.xml:122
+#: doc/classes/Transform.xml:120
msgid ""
"Returns the transform with the basis orthogonal (90 degrees), and normalized "
"axis vectors."
msgstr ""
-#: doc/classes/Transform.xml:129
+#: doc/classes/Transform.xml:131
msgid ""
"Rotates the transform around the given axis by the given angle (in radians), "
"using matrix multiplication. The axis must be a normalized vector."
msgstr ""
-#: doc/classes/Transform.xml:138
+#: doc/classes/Transform.xml:140
msgid ""
"Scales basis and origin of the transform by the given scale factor, using "
"matrix multiplication."
msgstr ""
-#: doc/classes/Transform.xml:147 doc/classes/Transform2D.xml:149
+#: doc/classes/Transform.xml:149 doc/classes/Transform2D.xml:153
msgid ""
"Translates the transform by the given offset, relative to the transform's "
"basis vectors.\n"
@@ -53942,153 +64099,179 @@ msgid ""
"multiplication."
msgstr ""
-#: doc/classes/Transform.xml:157
+#: doc/classes/Transform.xml:159
msgid ""
"Transforms the given [Vector3], [Plane], [AABB], or [PackedVector3Array] by "
"this transform."
msgstr ""
-#: doc/classes/Transform.xml:166
+#: doc/classes/Transform.xml:168
msgid ""
"Inverse-transforms the given [Vector3], [Plane], [AABB], or "
"[PackedVector3Array] by this transform."
msgstr ""
-#: doc/classes/Transform.xml:172
+#: doc/classes/Transform.xml:174
msgid ""
"The basis is a matrix containing 3 [Vector3] as its columns: X axis, Y axis, "
"and Z axis. These vectors can be interpreted as the basis vectors of local "
"coordinate system traveling with the object."
msgstr ""
-#: doc/classes/Transform.xml:175
-msgid "The translation offset of the transform."
+#: doc/classes/Transform.xml:177
+#, fuzzy
+msgid ""
+"The translation offset of the transform (column 3, the fourth column). "
+"Equivalent to array index [code]3[/code]."
msgstr ""
+"Devuelve el color del color de la rampa en el índice [code]point[/code]."
-#: doc/classes/Transform.xml:180
+#: doc/classes/Transform.xml:182
msgid ""
"[Transform] with no translation, rotation or scaling applied. When applied "
"to other data structures, [constant IDENTITY] performs no transformation."
msgstr ""
-#: doc/classes/Transform.xml:183
+#: doc/classes/Transform.xml:185
msgid "[Transform] with mirroring applied perpendicular to the YZ plane."
msgstr ""
-#: doc/classes/Transform.xml:186
+#: doc/classes/Transform.xml:188
msgid "[Transform] with mirroring applied perpendicular to the XZ plane."
msgstr ""
-#: doc/classes/Transform.xml:189
+#: doc/classes/Transform.xml:191
msgid "[Transform] with mirroring applied perpendicular to the XY plane."
msgstr ""
#: doc/classes/Transform2D.xml:4
-msgid "2D transformation (3×2 matrix)."
+msgid "2D transformation (2×3 matrix)."
msgstr ""
#: doc/classes/Transform2D.xml:7
msgid ""
-"Represents one or many transformations in 2D space such as translation, "
-"rotation, or scaling. It consists of two [member x] and [member y] "
-"[Vector2]s and an [member origin]. It is similar to a 3×2 matrix."
+"2×3 matrix (2 rows, 3 columns) used for 2D linear transformations. It can "
+"represent transformations such as translation, rotation, or scaling. It "
+"consists of a three [Vector2] values: [member x], [member y], and the "
+"[member origin].\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
msgstr ""
-#: doc/classes/Transform2D.xml:18
+#: doc/classes/Transform2D.xml:20
msgid "Constructs the transform from a 3D [Transform]."
msgstr ""
-#: doc/classes/Transform2D.xml:31
+#: doc/classes/Transform2D.xml:33
msgid ""
-"Constructs the transform from 3 [Vector2]s representing x, y, and origin."
+"Constructs the transform from 3 [Vector2] values representing [member x], "
+"[member y], and the [member origin] (the three column vectors)."
msgstr ""
-#: doc/classes/Transform2D.xml:42
+#: doc/classes/Transform2D.xml:44
msgid "Constructs the transform from a given angle (in radians) and position."
msgstr ""
-#: doc/classes/Transform2D.xml:58
-msgid "Transforms the given vector by this transform's basis (no translation)."
+#: doc/classes/Transform2D.xml:60
+#, fuzzy
+msgid ""
+"Returns a vector transformed (multiplied) by the basis matrix.\n"
+"This method does not account for translation (the origin vector)."
msgstr ""
+"Devuelve un vector transformado (multiplicado) por la matriz transpuesta.\n"
+"[b]Nota:[/b] Esto da como resultado una multiplicación por el inverso de la "
+"matriz sólo si representa una rotación-reflexión."
-#: doc/classes/Transform2D.xml:67
+#: doc/classes/Transform2D.xml:70
+#, fuzzy
msgid ""
-"Inverse-transforms the given vector by this transform's basis (no "
-"translation)."
+"Returns a vector transformed (multiplied) by the inverse basis matrix.\n"
+"This method does not account for translation (the origin vector)."
msgstr ""
+"Devuelve un vector transformado (multiplicado) por la matriz transpuesta.\n"
+"[b]Nota:[/b] Esto da como resultado una multiplicación por el inverso de la "
+"matriz sólo si representa una rotación-reflexión."
-#: doc/classes/Transform2D.xml:74
+#: doc/classes/Transform2D.xml:78
msgid "Returns the transform's origin (translation)."
msgstr ""
-#: doc/classes/Transform2D.xml:81
+#: doc/classes/Transform2D.xml:85
msgid "Returns the transform's rotation (in radians)."
msgstr ""
-#: doc/classes/Transform2D.xml:88
+#: doc/classes/Transform2D.xml:92
msgid "Returns the scale."
msgstr ""
-#: doc/classes/Transform2D.xml:99
+#: doc/classes/Transform2D.xml:103
msgid ""
"Returns a transform interpolated between this transform and another by a "
-"given weight (0-1)."
+"given weight (on the range of 0.0 to 1.0)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:110
+msgid ""
+"Returns the inverse of the transform, under the assumption that the "
+"transformation is composed of rotation and translation (no scaling, use "
+"[method affine_inverse] for transforms with scaling)."
msgstr ""
-#: doc/classes/Transform2D.xml:131
+#: doc/classes/Transform2D.xml:126
+msgid ""
+"Returns the transform with the basis orthogonal (90 degrees), and normalized "
+"axis vectors (scale of 1 or -1)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:135
msgid ""
"Rotates the transform by the given angle (in radians), using matrix "
"multiplication."
msgstr ""
-#: doc/classes/Transform2D.xml:140
+#: doc/classes/Transform2D.xml:144
msgid ""
"Scales the transform by the given scale factor, using matrix multiplication."
msgstr ""
-#: doc/classes/Transform2D.xml:159
+#: doc/classes/Transform2D.xml:163
msgid ""
"Transforms the given [Vector2], [Rect2], or [PackedVector2Array] by this "
"transform."
msgstr ""
-#: doc/classes/Transform2D.xml:168
+#: doc/classes/Transform2D.xml:172
msgid ""
"Inverse-transforms the given [Vector2], [Rect2], or [PackedVector2Array] by "
"this transform."
msgstr ""
-#: doc/classes/Transform2D.xml:174
-msgid "The transform's translation offset."
-msgstr ""
-
-#: doc/classes/Transform2D.xml:177
+#: doc/classes/Transform2D.xml:178
msgid ""
-"The X axis of 2×2 basis matrix containing 2 [Vector2]s as its columns: X "
-"axis and Y axis. These vectors can be interpreted as the basis vectors of "
-"local coordinate system traveling with the object."
+"The origin vector (column 2, the third column). Equivalent to array index "
+"[code]2[/code]. The origin vector represents translation."
msgstr ""
-#: doc/classes/Transform2D.xml:180
+#: doc/classes/Transform2D.xml:189
msgid ""
-"The Y axis of 2×2 basis matrix containing 2 [Vector2]s as its columns: X "
-"axis and Y axis. These vectors can be interpreted as the basis vectors of "
-"local coordinate system traveling with the object."
-msgstr ""
-
-#: doc/classes/Transform2D.xml:185
-msgid ""
-"[Transform2D] with no translation, rotation or scaling applied. When applied "
-"to other data structures, [constant IDENTITY] performs no transformation."
+"The identity [Transform2D] with no translation, rotation or scaling applied. "
+"When applied to other data structures, [constant IDENTITY] performs no "
+"transformation."
msgstr ""
-#: doc/classes/Transform2D.xml:188
-msgid "[Transform2D] with mirroring applied parallel to the X axis."
+#: doc/classes/Transform2D.xml:192
+#, fuzzy
+msgid "The [Transform2D] that will flip something along the X axis."
msgstr ""
+"La base que volteará algo a lo largo del eje X cuando se use en una "
+"transformación."
-#: doc/classes/Transform2D.xml:191
-msgid "[Transform2D] with mirroring applied parallel to the Y axis."
+#: doc/classes/Transform2D.xml:195
+#, fuzzy
+msgid "The [Transform2D] that will flip something along the Y axis."
msgstr ""
+"La base que volteará algo a lo largo del eje Y cuando se use en una "
+"transformación."
#: doc/classes/Translation.xml:4
msgid "Language Translation."
@@ -54751,7 +64934,8 @@ msgid "Returns the column's cell mode."
msgstr ""
#: doc/classes/TreeItem.xml:121
-msgid "Returns the TreeItem's child items."
+msgid ""
+"Returns the TreeItem's first child item or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:130
@@ -54783,28 +64967,39 @@ msgid "Returns the icon [Texture2D] region as [Rect2]."
msgstr ""
#: doc/classes/TreeItem.xml:199
-msgid "Returns the next TreeItem in the tree."
+#, fuzzy
+msgid ""
+"Returns the next TreeItem in the tree or a null object if there is none."
msgstr ""
+"Devuelve el último elemento del array, o [code]null[/code] si el array está "
+"vacío."
#: doc/classes/TreeItem.xml:208
msgid ""
-"Returns the next visible TreeItem in the tree.\n"
+"Returns the next visible TreeItem in the tree or a null object if there is "
+"none.\n"
"If [code]wrap[/code] is enabled, the method will wrap around to the first "
"visible element in the tree when called on the last visible element, "
"otherwise it returns [code]null[/code]."
msgstr ""
#: doc/classes/TreeItem.xml:216
-msgid "Returns the parent TreeItem."
-msgstr ""
+#, fuzzy
+msgid "Returns the parent TreeItem or a null object if there is none."
+msgstr "Devuelve el objeto padre del propietario de la forma dada."
#: doc/classes/TreeItem.xml:223
-msgid "Returns the previous TreeItem in the tree."
+#, fuzzy
+msgid ""
+"Returns the previous TreeItem in the tree or a null object if there is none."
msgstr ""
+"Devuelve el primer elemento del array, o [code]null[/code] si el array es "
+"vacio."
#: doc/classes/TreeItem.xml:232
msgid ""
-"Returns the previous visible TreeItem in the tree.\n"
+"Returns the previous visible TreeItem in the tree or a null object if there "
+"is none.\n"
"If [code]wrap[/code] is enabled, the method will wrap around to the last "
"visible element in the tree when called on the first visible element, "
"otherwise it returns [code]null[/code]."
@@ -55310,10 +65505,15 @@ msgid "Helper class to implement a UDP server."
msgstr ""
#: doc/classes/UDPServer.xml:7
+#, fuzzy
msgid ""
"A simple server that opens a UDP socket and returns connected "
"[PacketPeerUDP] upon receiving new packets. See also [method PacketPeerUDP."
"connect_to_host].\n"
+"After starting the server ([method listen]), you will need to [method poll] "
+"it at regular intervals (e.g. inside [method Node._process]) for it to "
+"process new packets, delivering them to the appropriate [PacketPeerUDP], and "
+"taking new connections.\n"
"Below a small example of how it can be used:\n"
"[codeblock]\n"
"# server.gd\n"
@@ -55326,6 +65526,7 @@ msgid ""
" server.listen(4242)\n"
"\n"
"func _process(delta):\n"
+" server.poll() # Important!\n"
" if server.is_connection_available():\n"
" var peer : PacketPeerUDP = server.take_connection()\n"
" var pkt = peer.get_packet()\n"
@@ -55360,36 +65561,119 @@ msgid ""
" connected = true\n"
"[/codeblock]"
msgstr ""
+"Esta clase se utiliza para almacenar el estado de un servidor DTLS. Al "
+"[method setup] convierte los [PacketPeerUDP] conectados a [PacketPeerDTLS] "
+"aceptándolos a través del [method take_connection] como clientes DTLS. Bajo "
+"el capó, esta clase se utiliza para almacenar el estado de DTLS y las "
+"cookies del servidor. La razón por la que el estado y las cookies son "
+"necesarios está fuera del alcance de esta documentación.\n"
+"A continuación un pequeño ejemplo de cómo utilizarlo:\n"
+"[codeblock]\n"
+"# server.gd\n"
+"extends Node\n"
+"\n"
+"var dtlsServidor := DTLSServer.new()\n"
+"var udpServidor := UDPServer.new()\n"
+"var pares = []\n"
+"\n"
+"func _ready():\n"
+" UDPServidor.listen(4242)\n"
+" var clave = load(\"clave.key\") # Tu clave privada.\n"
+" var certificado = load(\"certificado.crt\") # Tu certificado X509.\n"
+" dtlsServidor.setup(clave, certificado)\n"
+"\n"
+"func _process(delta):\n"
+" while udpServidor.is_connection_available():\n"
+" var par : PacketPeerUDP = udpServidor.take_connection()\n"
+" var dtls_par : PacketPeerDTLS = dtlsServidor.take_connection(par)\n"
+" if dtls_par.get_status() != PacketPeerDTLS.STATUS_HANDSHAKING:\n"
+" continue # Es normal que aproximadamente la mitad de las "
+"conexiones fallen debido al intercambio de cookies.\n"
+" print(\"Par conectado!\")\n"
+" pares.append(dtls_par)\n"
+" for p in pares:\n"
+" p.poll() # Debe hacer poll para actualizar el estado.\n"
+" if p.get_status() == PacketPeerDTLS.STATUS_CONNECTED:\n"
+" while p.get_available_packet_count() > 0:\n"
+" print(\"Mensaje recibido desde el cliente: %s\" % p."
+"get_packet().get_string_from_utf8())\n"
+" p.put_packet(\"Hola cliente DTLS\".to_utf8())\n"
+"[/codeblock]\n"
+"[codeblock]\n"
+"# client.gd\n"
+"extends Node\n"
+"\n"
+"var dtls := PacketPeerDTLS.new()\n"
+"var udp := PacketPeerUDP.new()\n"
+"var conectado = false\n"
+"\n"
+"func _ready():\n"
+" udp.connect_to_host(\"127.0.0.1\", 4242)\n"
+" dtls.connect_to_peer(udp, false) # Usa verdadero en producción para la "
+"validación del certifícado!\n"
+"\n"
+"func _process(delta):\n"
+" dtls.poll()\n"
+" if dtls.get_status() == PacketPeerDTLS.STATUS_CONNECTED:\n"
+" if !conectado:\n"
+" # Intenta conectar con el servidor\n"
+" dtls.put_packet(\"La respuesta es ... 42!\".to_utf8())\n"
+" while dtls.get_available_packet_count() > 0:\n"
+" print(\"Conectado: %s\" % dtls.get_packet()."
+"get_string_from_utf8())\n"
+" conectado = true\n"
+"[/codeblock]"
-#: doc/classes/UDPServer.xml:60
+#: doc/classes/UDPServer.xml:62
+#, fuzzy
msgid ""
-"Returns [code]true[/code] if a packet with a new address/port combination is "
-"received on the socket."
-msgstr ""
+"Returns [code]true[/code] if a packet with a new address/port combination "
+"was received on the socket."
+msgstr "Devuelve [code]true[/code] si el grafico contiene el nodo dado."
-#: doc/classes/UDPServer.xml:67
+#: doc/classes/UDPServer.xml:69
msgid ""
"Returns [code]true[/code] if the socket is open and listening on a port."
msgstr ""
-#: doc/classes/UDPServer.xml:78
+#: doc/classes/UDPServer.xml:80
msgid ""
"Starts the server by opening a UDP socket listening on the given port. You "
"can optionally specify a [code]bind_address[/code] to only listen for "
"packets sent to that address. See also [method PacketPeerUDP.listen]."
msgstr ""
-#: doc/classes/UDPServer.xml:85
+#: doc/classes/UDPServer.xml:87
+msgid ""
+"Call this method at regular intervals (e.g. inside [method Node._process]) "
+"to process new packets. And packet from known address/port pair will be "
+"delivered to the appropriate [PacketPeerUDP], any packet received from an "
+"unknown address/port pair will be added as a pending connection (see [method "
+"is_connection_available], [method take_connection]). The maximum number of "
+"pending connection is defined via [member max_pending_connections]."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:94
+msgid ""
+"Stops the server, closing the UDP socket if open. Will close all connected "
+"[PacketPeerUDP] accepted via [method take_connection] (remote peers will not "
+"be notified)."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:101
msgid ""
-"Stops the server, closing the UDP socket if open. Will not disconnect any "
-"connected [PacketPeerUDP]."
+"Returns the first pending connection (connected to the appropriate address/"
+"port). Will return [code]null[/code] if no new connection is available. See "
+"also [method is_connection_available], [method PacketPeerUDP."
+"connect_to_host]."
msgstr ""
-#: doc/classes/UDPServer.xml:92
+#: doc/classes/UDPServer.xml:107
msgid ""
-"Returns a [PacketPeerUDP] connected to the address/port combination of the "
-"first packet in queue. Will return [code]null[/code] if no packet is in "
-"queue. See also [method PacketPeerUDP.connect_to_host]."
+"Define the maximum number of pending connections, during [method poll], any "
+"new pending connection exceeding that value will be automatically dropped. "
+"Setting this value to [code]0[/code] effectively prevents any new pending "
+"connection to be accepted (e.g. when all your players have connected)."
msgstr ""
#: doc/classes/UndoRedo.xml:4
@@ -56030,24 +66314,28 @@ msgstr ""
#: doc/classes/Vector2.xml:46
msgid ""
-"Returns the vector's angle in radians with respect to the X axis, or [code]"
-"(1, 0)[/code] vector.\n"
+"Returns this vector's angle with respect to the X axis, or [code](1, 0)[/"
+"code] vector, in radians.\n"
"Equivalent to the result of [method @GDScript.atan2] when called with the "
-"vector's [member x] and [member y] as parameters: [code]atan2(x, y)[/code]."
+"vector's [member y] and [member x] as parameters: [code]atan2(y, x)[/code]."
msgstr ""
#: doc/classes/Vector2.xml:56
-msgid "Returns the angle in radians between the two vectors."
-msgstr ""
+#, fuzzy
+msgid "Returns the angle to the given vector, in radians."
+msgstr "Devuelve la tangente del vértice dado."
#: doc/classes/Vector2.xml:65
+#, fuzzy
msgid ""
-"Returns the angle in radians between the line connecting the two points and "
-"the X coordinate."
-msgstr ""
+"Returns the angle between the line connecting the two points and the X axis, "
+"in radians."
+msgstr "Devuelve el ángulo entre el nodo y el [code]point[/code] en radianes."
-#: doc/classes/Vector2.xml:72 doc/classes/Vector2i.xml:46
-msgid "Returns the ratio of [member x] to [member y]."
+#: doc/classes/Vector2.xml:72
+msgid ""
+"Returns the aspect ratio of this vector, the ratio of [member x] to [member "
+"y]."
msgstr ""
#: doc/classes/Vector2.xml:81 doc/classes/Vector3.xml:59
@@ -56056,24 +66344,32 @@ msgid ""
msgstr ""
#: doc/classes/Vector2.xml:88
-msgid "Returns the vector with all components rounded up."
+msgid ""
+"Returns the vector with all components rounded up (towards positive "
+"infinity)."
msgstr ""
#: doc/classes/Vector2.xml:97
-msgid "Returns the vector with a maximum length."
+#, fuzzy
+msgid ""
+"Returns the vector with a maximum length by limiting its length to "
+"[code]length[/code]."
msgstr ""
+"Devuelve la cantidad de elementos de mapa de bits que están configurados a "
+"[code]true[/code]."
#: doc/classes/Vector2.xml:106
-msgid ""
-"Returns the 2-dimensional analog of the cross product with the given vector."
+#, fuzzy
+msgid "Returns the cross product of this vector and [code]with[/code]."
msgstr ""
+"Devuelve el color del color de la rampa en el índice [code]point[/code]."
#: doc/classes/Vector2.xml:121
msgid ""
"Cubically interpolates between this vector and [code]b[/code] using "
"[code]pre_a[/code] and [code]post_b[/code] as handles, and returns the "
-"result at position [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation."
+"result at position [code]t[/code]. [code]t[/code] is on the range of 0.0 to "
+"1.0, representing the amount of interpolation."
msgstr ""
#: doc/classes/Vector2.xml:130 doc/classes/Vector3.xml:99
@@ -56081,182 +66377,208 @@ msgid ""
"Returns the normalized vector pointing from this vector to [code]b[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:139
+#: doc/classes/Vector2.xml:139 doc/classes/Vector3.xml:108
msgid ""
-"Returns the squared distance to vector [code]b[/code]. Prefer this function "
-"over [method distance_to] if you need to sort vectors or need the squared "
-"distance for some formula."
+"Returns the squared distance between this vector and [code]b[/code].\n"
+"This method runs faster than [method distance_to], so prefer it if you need "
+"to compare vectors or need the squared distance for some formula."
msgstr ""
-#: doc/classes/Vector2.xml:148
-msgid "Returns the distance to vector [code]b[/code]."
-msgstr ""
+#: doc/classes/Vector2.xml:149
+#, fuzzy
+msgid "Returns the distance between this vector and [code]to[/code]."
+msgstr "Devuelve el ángulo entre el nodo y el [code]point[/code] en radianes."
-#: doc/classes/Vector2.xml:157
-msgid "Returns the dot product with vector [code]b[/code]."
+#: doc/classes/Vector2.xml:158
+msgid ""
+"Returns the dot product of this vector and [code]with[/code]. This can be "
+"used to compare the angle between two vectors. For example, this can be used "
+"to determine whether an enemy is facing the player.\n"
+"The dot product will be [code]0[/code] for a straight angle (90 degrees), "
+"greater than 0 for angles narrower than 90 degrees and lower than 0 for "
+"angles wider than 90 degrees.\n"
+"When using unit (normalized) vectors, the result will always be between "
+"[code]-1.0[/code] (180 degree angle) when the vectors are facing opposite "
+"directions, and [code]1.0[/code] (0 degree angle) when the vectors are "
+"aligned.\n"
+"[b]Note:[/b] [code]a.dot(b)[/code] is equivalent to [code]b.dot(a)[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:164
-msgid "Returns the vector with all components rounded down."
+#: doc/classes/Vector2.xml:168
+msgid ""
+"Returns the vector with all components rounded down (towards negative "
+"infinity)."
msgstr ""
-#: doc/classes/Vector2.xml:173 doc/classes/Vector3.xml:149
+#: doc/classes/Vector2.xml:177 doc/classes/Vector3.xml:153
msgid ""
"Returns [code]true[/code] if this vector and [code]v[/code] are "
"approximately equal, by running [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/Vector2.xml:180 doc/classes/Vector3.xml:156
-msgid "Returns [code]true[/code] if the vector is normalized."
+#: doc/classes/Vector2.xml:184 doc/classes/Vector3.xml:160
+#, fuzzy
+msgid ""
+"Returns [code]true[/code] if the vector is normalized, and false otherwise."
msgstr ""
+"Devuelve [code]true[/code] si el Mono runtime está inicializado, "
+"[code]false[/code] en caso contrario."
-#: doc/classes/Vector2.xml:187 doc/classes/Vector3.xml:163
-msgid "Returns the vector's length."
-msgstr ""
+#: doc/classes/Vector2.xml:191 doc/classes/Vector3.xml:167
+#, fuzzy
+msgid "Returns the length (magnitude) of this vector."
+msgstr "Devuelve el nombre de este directorio."
-#: doc/classes/Vector2.xml:194
+#: doc/classes/Vector2.xml:198 doc/classes/Vector3.xml:174
msgid ""
-"Returns the vector's length squared. Prefer this method over [method length] "
-"if you need to sort vectors or need the squared length for some formula."
+"Returns the squared length (squared magnitude) of this vector.\n"
+"This method runs faster than [method length], so prefer it if you need to "
+"compare vectors or need the squared distance for some formula."
msgstr ""
-#: doc/classes/Vector2.xml:205
+#: doc/classes/Vector2.xml:210 doc/classes/Vector3.xml:186
msgid ""
"Returns the result of the linear interpolation between this vector and "
-"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation."
+"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is on the range of "
+"0.0 to 1.0, representing the amount of interpolation."
msgstr ""
-#: doc/classes/Vector2.xml:216 doc/classes/Vector3.xml:206
+#: doc/classes/Vector2.xml:221
msgid ""
"Moves the vector toward [code]to[/code] by the fixed [code]delta[/code] "
"amount."
msgstr ""
-#: doc/classes/Vector2.xml:223 doc/classes/Vector3.xml:213
+#: doc/classes/Vector2.xml:228 doc/classes/Vector3.xml:218
msgid ""
"Returns the vector scaled to unit length. Equivalent to [code]v / v.length()"
"[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:232 doc/classes/Vector3.xml:231
+#: doc/classes/Vector2.xml:237 doc/classes/Vector3.xml:236
msgid ""
-"Returns a vector composed of the [code]fposmod[/code] of this vector's "
+"Returns a vector composed of the [method @GDScript.fposmod] of this vector's "
"components and [code]mod[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:241 doc/classes/Vector3.xml:240
+#: doc/classes/Vector2.xml:246 doc/classes/Vector3.xml:245
msgid ""
-"Returns a vector composed of the [code]fposmod[/code] of this vector's "
+"Returns a vector composed of the [method @GDScript.fposmod] of this vector's "
"components and [code]modv[/code]'s components."
msgstr ""
-#: doc/classes/Vector2.xml:250 doc/classes/Vector3.xml:249
+#: doc/classes/Vector2.xml:255
msgid "Returns the vector projected onto the vector [code]b[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:259 doc/classes/Vector3.xml:258
+#: doc/classes/Vector2.xml:264
msgid "Returns the vector reflected from a plane defined by the given normal."
msgstr ""
-#: doc/classes/Vector2.xml:268
+#: doc/classes/Vector2.xml:273
msgid ""
"Returns the vector rotated by [code]phi[/code] radians. See also [method "
"@GDScript.deg2rad]."
msgstr ""
-#: doc/classes/Vector2.xml:275 doc/classes/Vector3.xml:276
+#: doc/classes/Vector2.xml:280
msgid ""
"Returns the vector with all components rounded to the nearest integer, with "
"halfway cases rounded away from zero."
msgstr ""
-#: doc/classes/Vector2.xml:282 doc/classes/Vector2i.xml:53
-#: doc/classes/Vector3.xml:283 doc/classes/Vector3i.xml:55
+#: doc/classes/Vector2.xml:287
msgid ""
"Returns the vector with each component set to one or negative one, depending "
-"on the signs of the components."
+"on the signs of the components, or zero if the component is zero, by calling "
+"[method @GDScript.sign] on each component."
msgstr ""
-#: doc/classes/Vector2.xml:293 doc/classes/Vector3.xml:294
+#: doc/classes/Vector2.xml:298 doc/classes/Vector3.xml:299
msgid ""
"Returns the result of spherical linear interpolation between this vector and "
-"[code]b[/code], by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation.\n"
+"[code]b[/code], by amount [code]t[/code]. [code]t[/code] is on the range of "
+"0.0 to 1.0, representing the amount of interpolation.\n"
"[b]Note:[/b] Both vectors must be normalized."
msgstr ""
-#: doc/classes/Vector2.xml:303 doc/classes/Vector3.xml:304
-msgid ""
-"Returns the component of the vector along a plane defined by the given "
-"normal."
+#: doc/classes/Vector2.xml:308 doc/classes/Vector3.xml:309
+#, fuzzy
+msgid "Returns this vector slid along a plane defined by the given normal."
msgstr ""
+"Devuelve el tamaño del margen identificado por la constante [enum Margin] "
+"dada."
-#: doc/classes/Vector2.xml:312 doc/classes/Vector3.xml:313
-msgid "Returns the vector snapped to a grid with the given size."
+#: doc/classes/Vector2.xml:317 doc/classes/Vector3.xml:318
+msgid ""
+"Returns this vector with each component snapped to the nearest multiple of "
+"[code]step[/code]. This can also be used to round to an arbitrary number of "
+"decimals."
msgstr ""
-#: doc/classes/Vector2.xml:319
-msgid "Returns a perpendicular vector."
+#: doc/classes/Vector2.xml:324
+msgid ""
+"Returns a perpendicular vector rotated 90 degrees counter-clockwise compared "
+"to the original, with the same length."
msgstr ""
-#: doc/classes/Vector2.xml:325 doc/classes/Vector2i.xml:59
-#: doc/classes/Vector3.xml:326 doc/classes/Vector3i.xml:61
+#: doc/classes/Vector2.xml:330 doc/classes/Vector2i.xml:59
+#: doc/classes/Vector3.xml:332 doc/classes/Vector3i.xml:61
msgid ""
"The vector's X component. Also accessible by using the index position [code]"
"[0][/code]."
msgstr ""
-#: doc/classes/Vector2.xml:328 doc/classes/Vector2i.xml:62
-#: doc/classes/Vector3.xml:329 doc/classes/Vector3i.xml:64
+#: doc/classes/Vector2.xml:333 doc/classes/Vector2i.xml:62
+#: doc/classes/Vector3.xml:335 doc/classes/Vector3i.xml:64
msgid ""
"The vector's Y component. Also accessible by using the index position [code]"
"[1][/code]."
msgstr ""
-#: doc/classes/Vector2.xml:333 doc/classes/Vector2i.xml:67
+#: doc/classes/Vector2.xml:338 doc/classes/Vector2i.xml:67
#: doc/classes/Vector3i.xml:72
msgid "Enumerated value for the X axis."
msgstr ""
-#: doc/classes/Vector2.xml:336 doc/classes/Vector2i.xml:70
+#: doc/classes/Vector2.xml:341 doc/classes/Vector2i.xml:70
#: doc/classes/Vector3i.xml:75
msgid "Enumerated value for the Y axis."
msgstr ""
-#: doc/classes/Vector2.xml:339 doc/classes/Vector2i.xml:73
-#: doc/classes/Vector3.xml:346 doc/classes/Vector3i.xml:81
-msgid "Zero vector."
-msgstr ""
+#: doc/classes/Vector2.xml:344 doc/classes/Vector2i.xml:73
+#: doc/classes/Vector3.xml:352 doc/classes/Vector3i.xml:81
+#, fuzzy
+msgid "Zero vector, a vector with all components set to [code]0[/code]."
+msgstr "Devuelve una vista en el sistema de archivos en [code]path[/code]."
-#: doc/classes/Vector2.xml:342 doc/classes/Vector2i.xml:76
-#: doc/classes/Vector3.xml:349 doc/classes/Vector3i.xml:84
-msgid "One vector."
-msgstr ""
+#: doc/classes/Vector2.xml:347 doc/classes/Vector2i.xml:76
+#: doc/classes/Vector3.xml:355 doc/classes/Vector3i.xml:84
+#, fuzzy
+msgid "One vector, a vector with all components set to [code]1[/code]."
+msgstr "Devuelve una vista en el sistema de archivos en [code]path[/code]."
-#: doc/classes/Vector2.xml:345 doc/classes/Vector3.xml:352
-msgid "Infinity vector."
+#: doc/classes/Vector2.xml:350 doc/classes/Vector3.xml:358
+msgid ""
+"Infinity vector, a vector with all components set to [constant @GDScript."
+"INF]."
msgstr ""
-#: doc/classes/Vector2.xml:348 doc/classes/Vector2i.xml:79
-#: doc/classes/Vector3.xml:355 doc/classes/Vector3i.xml:87
-msgid "Left unit vector."
+#: doc/classes/Vector2.xml:353 doc/classes/Vector2i.xml:79
+msgid "Left unit vector. Represents the direction of left."
msgstr ""
-#: doc/classes/Vector2.xml:351 doc/classes/Vector2i.xml:82
-#: doc/classes/Vector3.xml:358 doc/classes/Vector3i.xml:90
-msgid "Right unit vector."
+#: doc/classes/Vector2.xml:356 doc/classes/Vector2i.xml:82
+msgid "Right unit vector. Represents the direction of right."
msgstr ""
-#: doc/classes/Vector2.xml:354 doc/classes/Vector2i.xml:85
-#: doc/classes/Vector3.xml:361 doc/classes/Vector3i.xml:93
-msgid "Up unit vector."
+#: doc/classes/Vector2.xml:359 doc/classes/Vector2i.xml:85
+msgid "Up unit vector. Y is down in 2D, so this vector points -Y."
msgstr ""
-#: doc/classes/Vector2.xml:357 doc/classes/Vector2i.xml:88
-#: doc/classes/Vector3.xml:364 doc/classes/Vector3i.xml:96
-msgid "Down unit vector."
+#: doc/classes/Vector2.xml:362 doc/classes/Vector2i.xml:88
+msgid "Down unit vector. Y is down in 2D, so this vector points +Y."
msgstr ""
#: doc/classes/Vector2i.xml:4
@@ -56285,6 +66607,16 @@ msgid ""
"will be truncated."
msgstr ""
+#: doc/classes/Vector2i.xml:46
+msgid "Returns the ratio of [member x] to [member y]."
+msgstr ""
+
+#: doc/classes/Vector2i.xml:53 doc/classes/Vector3i.xml:55
+msgid ""
+"Returns the vector with each component set to one or negative one, depending "
+"on the signs of the components."
+msgstr ""
+
#: doc/classes/Vector3.xml:4
msgid "Vector used for 3D math using floating point coordinates."
msgstr ""
@@ -56309,120 +66641,181 @@ msgid "Returns a [Vector3] with the given components."
msgstr ""
#: doc/classes/Vector3.xml:50
-msgid "Returns the minimum angle to the given vector."
-msgstr ""
+#, fuzzy
+msgid "Returns the minimum angle to the given vector, in radians."
+msgstr "Devuelve la normal del vértice dado."
#: doc/classes/Vector3.xml:66
-msgid "Returns a new vector with all components rounded up."
+msgid ""
+"Returns a new vector with all components rounded up (towards positive "
+"infinity)."
msgstr ""
#: doc/classes/Vector3.xml:75
-msgid "Returns the cross product with [code]b[/code]."
-msgstr ""
+#, fuzzy
+msgid "Returns the cross product of this vector and [code]b[/code]."
+msgstr "Devuelve el color de la conexión de entrada [code]idx[/code]."
#: doc/classes/Vector3.xml:90
msgid ""
"Performs a cubic interpolation between vectors [code]pre_a[/code], [code]a[/"
"code], [code]b[/code], [code]post_b[/code] ([code]a[/code] is current), by "
-"the given amount [code]t[/code]. [code]t[/code] is in the range of [code]0.0 "
-"- 1.0[/code], representing the amount of interpolation."
-msgstr ""
-
-#: doc/classes/Vector3.xml:108
-msgid ""
-"Returns the squared distance to [code]b[/code]. Prefer this function over "
-"[method distance_to] if you need to sort vectors or need the squared "
-"distance for some formula."
+"the given amount [code]t[/code]. [code]t[/code] is on the range of 0.0 to "
+"1.0, representing the amount of interpolation."
msgstr ""
-#: doc/classes/Vector3.xml:117
-msgid "Returns the distance to [code]b[/code]."
-msgstr ""
+#: doc/classes/Vector3.xml:118
+#, fuzzy
+msgid "Returns the distance between this vector and [code]b[/code]."
+msgstr "Devuelve el ángulo entre el nodo y el [code]point[/code] en radianes."
-#: doc/classes/Vector3.xml:126
-msgid "Returns the dot product with [code]b[/code]."
+#: doc/classes/Vector3.xml:127
+msgid ""
+"Returns the dot product of this vector and [code]b[/code]. This can be used "
+"to compare the angle between two vectors. For example, this can be used to "
+"determine whether an enemy is facing the player.\n"
+"The dot product will be [code]0[/code] for a straight angle (90 degrees), "
+"greater than 0 for angles narrower than 90 degrees and lower than 0 for "
+"angles wider than 90 degrees.\n"
+"When using unit (normalized) vectors, the result will always be between "
+"[code]-1.0[/code] (180 degree angle) when the vectors are facing opposite "
+"directions, and [code]1.0[/code] (0 degree angle) when the vectors are "
+"aligned.\n"
+"[b]Note:[/b] [code]a.dot(b)[/code] is equivalent to [code]b.dot(a)[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:133
-msgid "Returns a new vector with all components rounded down."
+#: doc/classes/Vector3.xml:137
+msgid ""
+"Returns a new vector with all components rounded down (towards negative "
+"infinity)."
msgstr ""
-#: doc/classes/Vector3.xml:140
+#: doc/classes/Vector3.xml:144
msgid ""
"Returns the inverse of the vector. This is the same as [code]Vector3( 1.0 / "
"v.x, 1.0 / v.y, 1.0 / v.z )[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:170
+#: doc/classes/Vector3.xml:193 doc/classes/Vector3i.xml:41
msgid ""
-"Returns the vector's length squared. Prefer this function over [method "
-"length] if you need to sort vectors or need the squared length for some "
-"formula."
+"Returns the axis of the vector's largest value. See [code]AXIS_*[/code] "
+"constants. If all components are equal, this method returns [constant "
+"AXIS_X]."
msgstr ""
-#: doc/classes/Vector3.xml:181
+#: doc/classes/Vector3.xml:200 doc/classes/Vector3i.xml:48
msgid ""
-"Returns the result of the linear interpolation between this vector and "
-"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation.."
+"Returns the axis of the vector's smallest value. See [code]AXIS_*[/code] "
+"constants. If all components are equal, this method returns [constant "
+"AXIS_Z]."
msgstr ""
-#: doc/classes/Vector3.xml:188 doc/classes/Vector3i.xml:41
+#: doc/classes/Vector3.xml:211
+#, fuzzy
msgid ""
-"Returns the axis of the vector's largest value. See [code]AXIS_*[/code] "
-"constants."
+"Moves this vector toward [code]to[/code] by the fixed [code]delta[/code] "
+"amount."
+msgstr "Operador OR lógico ([code]or[/code] o [code]||[/code])."
+
+#: doc/classes/Vector3.xml:227
+msgid "Returns the outer product with [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:254
+#, fuzzy
+msgid "Returns this vector projected onto another vector [code]b[/code]."
+msgstr "Devuelve el color de la conexión de entrada [code]idx[/code]."
+
+#: doc/classes/Vector3.xml:263
+#, fuzzy
+msgid "Returns this vector reflected from a plane defined by the given normal."
msgstr ""
+"Devuelve el tamaño del margen identificado por la constante [enum Margin] "
+"dada."
-#: doc/classes/Vector3.xml:195 doc/classes/Vector3i.xml:48
+#: doc/classes/Vector3.xml:274
+#, fuzzy
msgid ""
-"Returns the axis of the vector's smallest value. See [code]AXIS_*[/code] "
-"constants."
+"Rotates this vector around a given axis by [code]phi[/code] radians. The "
+"axis must be a normalized vector."
msgstr ""
+"Introducir una rotación adicional alrededor del eje dado por phi (radianes). "
+"El eje debe ser un vector normalizado."
-#: doc/classes/Vector3.xml:222
-msgid "Returns the outer product with [code]b[/code]."
+#: doc/classes/Vector3.xml:281
+msgid ""
+"Returns this vector with all components rounded to the nearest integer, with "
+"halfway cases rounded away from zero."
msgstr ""
-#: doc/classes/Vector3.xml:269
+#: doc/classes/Vector3.xml:288
msgid ""
-"Rotates the vector around a given axis by [code]phi[/code] radians. The axis "
-"must be a normalized vector."
+"Returns a vector with each component set to one or negative one, depending "
+"on the signs of this vector's components, or zero if the component is zero, "
+"by calling [method @GDScript.sign] on each component."
msgstr ""
-#: doc/classes/Vector3.xml:320
-msgid "Returns a diagonal matrix with the vector as main diagonal."
+#: doc/classes/Vector3.xml:325
+msgid ""
+"Returns a diagonal matrix with the vector as main diagonal.\n"
+"This is equivalent to a Basis with no rotation or shearing and this vector's "
+"components set as the scale."
msgstr ""
-#: doc/classes/Vector3.xml:332 doc/classes/Vector3i.xml:67
+#: doc/classes/Vector3.xml:338 doc/classes/Vector3i.xml:67
msgid ""
"The vector's Z component. Also accessible by using the index position [code]"
"[2][/code]."
msgstr ""
-#: doc/classes/Vector3.xml:337
+#: doc/classes/Vector3.xml:343
msgid ""
"Enumerated value for the X axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:340
+#: doc/classes/Vector3.xml:346
msgid ""
"Enumerated value for the Y axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:343
+#: doc/classes/Vector3.xml:349
msgid ""
"Enumerated value for the Z axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:367 doc/classes/Vector3i.xml:99
-msgid "Forward unit vector."
+#: doc/classes/Vector3.xml:361 doc/classes/Vector3i.xml:87
+msgid ""
+"Left unit vector. Represents the local direction of left, and the global "
+"direction of west."
+msgstr ""
+
+#: doc/classes/Vector3.xml:364 doc/classes/Vector3i.xml:90
+msgid ""
+"Right unit vector. Represents the local direction of right, and the global "
+"direction of east."
+msgstr ""
+
+#: doc/classes/Vector3.xml:367 doc/classes/Vector3i.xml:93
+msgid "Up unit vector."
+msgstr ""
+
+#: doc/classes/Vector3.xml:370 doc/classes/Vector3i.xml:96
+msgid "Down unit vector."
+msgstr ""
+
+#: doc/classes/Vector3.xml:373 doc/classes/Vector3i.xml:99
+msgid ""
+"Forward unit vector. Represents the local direction of forward, and the "
+"global direction of north."
msgstr ""
-#: doc/classes/Vector3.xml:370 doc/classes/Vector3i.xml:102
-msgid "Back unit vector."
+#: doc/classes/Vector3.xml:376 doc/classes/Vector3i.xml:102
+msgid ""
+"Back unit vector. Represents the local direction of back, and the global "
+"direction of south."
msgstr ""
#: doc/classes/Vector3i.xml:4
@@ -56471,10 +66864,14 @@ msgid ""
"directly.\n"
"[b]Note:[/b] The origin point of your VehicleBody3D will determine the "
"center of gravity of your vehicle so it is better to keep this low and move "
-"the [CollisionShape3D] and [MeshInstance3D] upwards."
+"the [CollisionShape3D] and [MeshInstance3D] upwards.\n"
+"[b]Note:[/b] This class has known issues and isn't designed to provide "
+"realistic 3D vehicle physics. If you want advanced vehicle physics, you will "
+"probably have to write your own physics integration using another "
+"[PhysicsBody3D] class."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:16
+#: doc/classes/VehicleBody3D.xml:17
msgid ""
"Slows down the vehicle by applying a braking force. The vehicle is only "
"slowed down if the wheels are in contact with a surface. The force you need "
@@ -56483,7 +66880,7 @@ msgid ""
"a value in the 25 - 30 range for hard braking."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:19
+#: doc/classes/VehicleBody3D.xml:20
msgid ""
"Accelerates the vehicle by applying an engine force. The vehicle is only "
"speed up if the wheels that have [member VehicleWheel3D.use_as_traction] set "
@@ -56496,7 +66893,7 @@ msgid ""
"A negative value will result in the vehicle reversing."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:25
+#: doc/classes/VehicleBody3D.xml:26
msgid ""
"The steering angle for the vehicle. Setting this to a non-zero value will "
"result in the vehicle turning when it's moving. Wheels that have [member "
@@ -56512,25 +66909,29 @@ msgstr ""
msgid ""
"This node needs to be used as a child node of [VehicleBody3D] and simulates "
"the behavior of one of its wheels. This node also acts as a collider to "
-"detect if the wheel is touching a surface."
+"detect if the wheel is touching a surface.\n"
+"[b]Note:[/b] This class has known issues and isn't designed to provide "
+"realistic 3D vehicle physics. If you want advanced vehicle physics, you will "
+"probably have to write your own physics integration using another "
+"[PhysicsBody3D] class."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:16
+#: doc/classes/VehicleWheel3D.xml:17
msgid "Returns the rotational speed of the wheel in revolutions per minute."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:23
+#: doc/classes/VehicleWheel3D.xml:24
msgid ""
"Returns a value between 0.0 and 1.0 that indicates whether this wheel is "
"skidding. 0.0 is skidding (the wheel has lost grip, e.g. icy terrain), 1.0 "
"means not skidding (the wheel has full grip, e.g. dry asphalt road)."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:30
+#: doc/classes/VehicleWheel3D.xml:31
msgid "Returns [code]true[/code] if this wheel is in contact with a surface."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:36
+#: doc/classes/VehicleWheel3D.xml:37
msgid ""
"Slows down the wheel by applying a braking force. The wheel is only slowed "
"down if it is in contact with a surface. The force you need to apply to "
@@ -56539,7 +66940,7 @@ msgid ""
"- 30 range for hard braking."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:39
+#: doc/classes/VehicleWheel3D.xml:40
msgid ""
"The damping applied to the spring when the spring is being compressed. This "
"value should be between 0.0 (no damping) and 1.0. A value of 0.0 means the "
@@ -56547,7 +66948,7 @@ msgid ""
"is around 0.3 for a normal car, 0.5 for a race car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:42
+#: doc/classes/VehicleWheel3D.xml:43
msgid ""
"The damping applied to the spring when relaxing. This value should be "
"between 0.0 (no damping) and 1.0. This value should always be slightly "
@@ -56555,7 +66956,7 @@ msgid ""
"damping_compression] value of 0.3, try a relaxation value of 0.5."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:45
+#: doc/classes/VehicleWheel3D.xml:46
msgid ""
"Accelerates the wheel by applying an engine force. The wheel is only speed "
"up if it is in contact with a surface. The [member RigidBody3D.mass] of the "
@@ -56566,13 +66967,13 @@ msgid ""
"A negative value will result in the wheel reversing."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:50
+#: doc/classes/VehicleWheel3D.xml:51
msgid ""
"The steering angle for the wheel. Setting this to a non-zero value will "
"result in the vehicle turning when it's moving."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:53
+#: doc/classes/VehicleWheel3D.xml:54
msgid ""
"The maximum force the spring can resist. This value should be higher than a "
"quarter of the [member RigidBody3D.mass] of the [VehicleBody3D] or the "
@@ -56580,28 +66981,28 @@ msgid ""
"obtained by a value that is about 3× to 4× this number."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:56
+#: doc/classes/VehicleWheel3D.xml:57
msgid ""
"This value defines the stiffness of the suspension. Use a value lower than "
"50 for an off-road car, a value between 50 and 100 for a race car and try "
"something around 200 for something like a Formula 1 car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:59
+#: doc/classes/VehicleWheel3D.xml:60
msgid ""
"This is the distance the suspension can travel. As Godot units are "
"equivalent to meters, keep this setting relatively low. Try a value between "
"0.1 and 0.3 depending on the type of car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:62
+#: doc/classes/VehicleWheel3D.xml:63
msgid ""
"If [code]true[/code], this wheel will be turned when the car steers. This "
"value is used in conjunction with [member VehicleBody3D.steering] and "
"ignored if you are using the per-wheel [member steering] value instead."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:65
+#: doc/classes/VehicleWheel3D.xml:66
msgid ""
"If [code]true[/code], this wheel transfers engine force to the ground to "
"propel the vehicle forward. This value is used in conjunction with [member "
@@ -56609,7 +67010,7 @@ msgid ""
"[member engine_force] value instead."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:68
+#: doc/classes/VehicleWheel3D.xml:69
msgid ""
"This determines how much grip this wheel has. It is combined with the "
"friction setting of the surface the wheel is in contact with. 0.0 means no "
@@ -56619,11 +67020,11 @@ msgid ""
"It's best to set this to 1.0 when starting out."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:72
+#: doc/classes/VehicleWheel3D.xml:73
msgid "The radius of the wheel in meters."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:75
+#: doc/classes/VehicleWheel3D.xml:76
msgid ""
"This is the distance in meters the wheel is lowered from its origin point. "
"Don't set this to 0.0 and move the wheel into position, instead move the "
@@ -56632,7 +67033,7 @@ msgid ""
"down to the position it should be in when the car is in rest."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:78
+#: doc/classes/VehicleWheel3D.xml:79
msgid ""
"This value affects the roll of your vehicle. If set to 1.0 for all wheels, "
"your vehicle will be prone to rolling over, while a value of 0.0 will resist "
@@ -57110,7 +67511,7 @@ msgstr ""
#: doc/classes/Viewport.xml:318
msgid ""
"Use fast approximate antialiasing. FXAA is a popular screen-space "
-"antialising method, which is fast but will make the image look blurry, "
+"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."
msgstr ""
@@ -57163,24 +67564,24 @@ msgid ""
"your [WorldEnvironment]."
msgstr ""
-#: doc/classes/Viewport.xml:384
+#: doc/classes/Viewport.xml:381
msgid ""
"Colors each PSSM split for the [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, and yellow."
msgstr ""
-#: doc/classes/Viewport.xml:387
+#: doc/classes/Viewport.xml:384
msgid ""
"Draws the decal atlas used by [Decal]s and light projector textures in the "
"upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/Viewport.xml:402
+#: doc/classes/Viewport.xml:405
msgid "Max value for [enum DefaultCanvasItemTextureFilter] enum."
msgstr ""
-#: doc/classes/Viewport.xml:414
+#: doc/classes/Viewport.xml:417
msgid "Max value for [enum DefaultCanvasItemTextureRepeat] enum."
msgstr ""
@@ -57211,82 +67612,84 @@ msgid ""
"The VisibilityEnabler2D will disable [RigidBody2D], [AnimationPlayer], and "
"other nodes when they are not visible. It will only affect nodes with the "
"same root node as the VisibilityEnabler2D, and the root node itself.\n"
+"If you just want to receive notifications, use [VisibilityNotifier2D] "
+"instead.\n"
"[b]Note:[/b] For performance reasons, VisibilityEnabler2D uses an "
"approximate heuristic with precision determined by [member ProjectSettings."
-"world/2d/cell_size]. If you need exact visibility checking, use another "
+"world/2d/cell_size]. If you need precise visibility checking, use another "
"method such as adding an [Area2D] node as a child of a [Camera2D] node.\n"
"[b]Note:[/b] VisibilityEnabler2D will not affect nodes added after scene "
"initialization."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:20
-#: doc/classes/VisibilityEnabler3D.xml:20
+#: doc/classes/VisibilityEnabler2D.xml:21
+#: doc/classes/VisibilityEnabler3D.xml:21
msgid ""
"Returns whether the enabler identified by given [enum Enabler] constant is "
"active."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:31
-#: doc/classes/VisibilityEnabler3D.xml:31
+#: doc/classes/VisibilityEnabler2D.xml:32
+#: doc/classes/VisibilityEnabler3D.xml:32
msgid ""
"Sets active state of the enabler identified by given [enum Enabler] constant."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:37
+#: doc/classes/VisibilityEnabler2D.xml:38
msgid "If [code]true[/code], [RigidBody2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:40
+#: doc/classes/VisibilityEnabler2D.xml:41
msgid "If [code]true[/code], [AnimatedSprite2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:43
-#: doc/classes/VisibilityEnabler3D.xml:40
+#: doc/classes/VisibilityEnabler2D.xml:44
+#: doc/classes/VisibilityEnabler3D.xml:41
msgid "If [code]true[/code], [AnimationPlayer] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:46
+#: doc/classes/VisibilityEnabler2D.xml:47
msgid "If [code]true[/code], [GPUParticles2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:49
+#: doc/classes/VisibilityEnabler2D.xml:50
msgid ""
"If [code]true[/code], the parent's [method Node._physics_process] will be "
"stopped."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:52
+#: doc/classes/VisibilityEnabler2D.xml:53
msgid ""
"If [code]true[/code], the parent's [method Node._process] will be stopped."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:57
-#: doc/classes/VisibilityEnabler3D.xml:45
+#: doc/classes/VisibilityEnabler2D.xml:58
+#: doc/classes/VisibilityEnabler3D.xml:46
msgid "This enabler will pause [AnimationPlayer] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:60
+#: doc/classes/VisibilityEnabler2D.xml:61
msgid "This enabler will freeze [RigidBody2D] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:63
+#: doc/classes/VisibilityEnabler2D.xml:64
msgid "This enabler will stop [GPUParticles2D] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:66
+#: doc/classes/VisibilityEnabler2D.xml:67
msgid "This enabler will stop the parent's _process function."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:69
+#: doc/classes/VisibilityEnabler2D.xml:70
msgid "This enabler will stop the parent's _physics_process function."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:72
+#: doc/classes/VisibilityEnabler2D.xml:73
msgid "This enabler will stop [AnimatedSprite2D] nodes animations."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:75
-#: doc/classes/VisibilityEnabler3D.xml:51
+#: doc/classes/VisibilityEnabler2D.xml:76
+#: doc/classes/VisibilityEnabler3D.xml:52
msgid "Represents the size of the [enum Enabler] enum."
msgstr ""
@@ -57295,19 +67698,23 @@ msgid ""
"The VisibilityEnabler3D will disable [RigidBody3D] and [AnimationPlayer] "
"nodes when they are not visible. It will only affect other nodes within the "
"same scene as the VisibilityEnabler3D itself.\n"
+"If you just want to receive notifications, use [VisibilityNotifier3D] "
+"instead.\n"
"[b]Note:[/b] VisibilityEnabler3D uses an approximate heuristic for "
"performance reasons. It doesn't take walls and other occlusion into account. "
-"If you need exact visibility checking, use another method such as adding an "
-"[Area3D] node as a child of a [Camera3D] node.\n"
+"The heuristic is an implementation detail and may change in future versions. "
+"If you need precise visibility checking, use another method such as adding "
+"an [Area3D] node as a child of a [Camera3D] node and/or [method Vector3."
+"dot].\n"
"[b]Note:[/b] VisibilityEnabler3D will not affect nodes added after scene "
"initialization."
msgstr ""
-#: doc/classes/VisibilityEnabler3D.xml:37
+#: doc/classes/VisibilityEnabler3D.xml:38
msgid "If [code]true[/code], [RigidBody3D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler3D.xml:48
+#: doc/classes/VisibilityEnabler3D.xml:49
msgid "This enabler will freeze [RigidBody3D] nodes."
msgstr ""
@@ -57321,13 +67728,15 @@ msgid ""
"The VisibilityNotifier2D detects when it is visible on the screen. It also "
"notifies when its bounding rectangle enters or exits the screen or a "
"viewport.\n"
+"If you want nodes to be disabled automatically when they exit the screen, "
+"use [VisibilityEnabler2D] instead.\n"
"[b]Note:[/b] For performance reasons, VisibilityNotifier2D uses an "
"approximate heuristic with precision determined by [member ProjectSettings."
-"world/2d/cell_size]. If you need exact visibility checking, use another "
+"world/2d/cell_size]. If you need precise visibility checking, use another "
"method such as adding an [Area2D] node as a child of a [Camera2D] node."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:17
+#: doc/classes/VisibilityNotifier2D.xml:18
msgid ""
"If [code]true[/code], the bounding rectangle is on the screen.\n"
"[b]Note:[/b] It takes one frame for the node's visibility to be assessed "
@@ -57336,23 +67745,23 @@ msgid ""
"pass."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:24
+#: doc/classes/VisibilityNotifier2D.xml:25
msgid "The VisibilityNotifier2D's bounding rectangle."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:30
+#: doc/classes/VisibilityNotifier2D.xml:31
msgid "Emitted when the VisibilityNotifier2D enters the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:35
+#: doc/classes/VisibilityNotifier2D.xml:36
msgid "Emitted when the VisibilityNotifier2D exits the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:42
+#: doc/classes/VisibilityNotifier2D.xml:43
msgid "Emitted when the VisibilityNotifier2D enters a [Viewport]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:49
+#: doc/classes/VisibilityNotifier2D.xml:50
msgid "Emitted when the VisibilityNotifier2D exits a [Viewport]'s view."
msgstr ""
@@ -57361,13 +67770,16 @@ msgid ""
"The VisibilityNotifier3D detects when it is visible on the screen. It also "
"notifies when its bounding rectangle enters or exits the screen or a "
"[Camera3D]'s view.\n"
+"If you want nodes to be disabled automatically when they exit the screen, "
+"use [VisibilityEnabler3D] instead.\n"
"[b]Note:[/b] VisibilityNotifier3D uses an approximate heuristic for "
"performance reasons. It doesn't take walls and other occlusion into account. "
-"If you need exact visibility checking, use another method such as adding an "
-"[Area3D] node as a child of a [Camera3D] node."
+"The heuristic is an implementation detail and may change in future versions. "
+"If you need precise visibility checking, use another method such as adding "
+"an [Area3D] node as a child of a [Camera3D] node and/or [method Vector3.dot]."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:17
+#: doc/classes/VisibilityNotifier3D.xml:18
msgid ""
"If [code]true[/code], the bounding box is on the screen.\n"
"[b]Note:[/b] It takes one frame for the node's visibility to be assessed "
@@ -57376,23 +67788,23 @@ msgid ""
"pass."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:24
+#: doc/classes/VisibilityNotifier3D.xml:25
msgid "The VisibilityNotifier3D's bounding box."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:32
+#: doc/classes/VisibilityNotifier3D.xml:33
msgid "Emitted when the VisibilityNotifier3D enters a [Camera3D]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:39
+#: doc/classes/VisibilityNotifier3D.xml:40
msgid "Emitted when the VisibilityNotifier3D exits a [Camera3D]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:44
+#: doc/classes/VisibilityNotifier3D.xml:45
msgid "Emitted when the VisibilityNotifier3D enters the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:49
+#: doc/classes/VisibilityNotifier3D.xml:50
msgid "Emitted when the VisibilityNotifier3D exits the screen."
msgstr ""
@@ -57812,6 +68224,14 @@ msgid ""
"exist."
msgstr ""
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:90
+msgid ""
+"Easing function, based on exponent. 0 is constant, 1 is linear, 0 to 1 is "
+"ease-in, 1+ is ease out. Negative values are in-out/out in."
+msgstr ""
+"Función de easing, basada en el exponente. 0 es constante, 1 es lineal, 0 a "
+"1 es de ease-in, 1+ es de ease-out. Los valores negativos son in-out/out in."
+
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:93
msgid ""
"Return the number of digit places after the decimal that the first non-zero "
@@ -58697,6 +69117,7 @@ msgid "A shader for light calculations."
msgstr ""
#: doc/classes/VisualShader.xml:214
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:26
msgid "Represents the size of the [enum Type] enum."
msgstr ""
@@ -58799,6 +69220,24 @@ msgstr ""
msgid "Translated to [code]uniform bool[/code] in the shader language."
msgstr ""
+#: doc/classes/VisualShaderNodeBooleanUniform.xml:15
+#: doc/classes/VisualShaderNodeColorUniform.xml:15
+#: doc/classes/VisualShaderNodeFloatUniform.xml:15
+#: doc/classes/VisualShaderNodeIntUniform.xml:15
+#: doc/classes/VisualShaderNodeTransformUniform.xml:15
+#: doc/classes/VisualShaderNodeVec3Uniform.xml:15
+msgid "A default value to be assigned within the shader."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeBooleanUniform.xml:18
+#: doc/classes/VisualShaderNodeColorUniform.xml:18
+#: doc/classes/VisualShaderNodeFloatUniform.xml:18
+#: doc/classes/VisualShaderNodeIntUniform.xml:18
+#: doc/classes/VisualShaderNodeTransformUniform.xml:18
+#: doc/classes/VisualShaderNodeVec3Uniform.xml:18
+msgid "Enables usage of the [member default_value]."
+msgstr ""
+
#: doc/classes/VisualShaderNodeColorConstant.xml:4
msgid "A [Color] constant to be used within the visual shader graph."
msgstr ""
@@ -59649,49 +70088,49 @@ msgstr ""
msgid "Translated to [code]uniform float[/code] in the shader language."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:15
-#: doc/classes/VisualShaderNodeIntUniform.xml:15
+#: doc/classes/VisualShaderNodeFloatUniform.xml:21
+#: doc/classes/VisualShaderNodeIntUniform.xml:21
msgid ""
"A hint applied to the uniform, which controls the values it can take when "
"set through the inspector."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:18
-#: doc/classes/VisualShaderNodeIntUniform.xml:18
+#: doc/classes/VisualShaderNodeFloatUniform.xml:24
+#: doc/classes/VisualShaderNodeIntUniform.xml:24
msgid ""
"Minimum value for range hints. Used if [member hint] is set to [constant "
"HINT_RANGE] or [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:21
-#: doc/classes/VisualShaderNodeIntUniform.xml:21
+#: doc/classes/VisualShaderNodeFloatUniform.xml:27
+#: doc/classes/VisualShaderNodeIntUniform.xml:27
msgid ""
"Maximum value for range hints. Used if [member hint] is set to [constant "
"HINT_RANGE] or [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:24
-#: doc/classes/VisualShaderNodeIntUniform.xml:24
+#: doc/classes/VisualShaderNodeFloatUniform.xml:30
+#: doc/classes/VisualShaderNodeIntUniform.xml:30
msgid ""
"Step (increment) value for the range hint with step. Used if [member hint] "
"is set to [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:29
-#: doc/classes/VisualShaderNodeIntUniform.xml:29
+#: doc/classes/VisualShaderNodeFloatUniform.xml:35
+#: doc/classes/VisualShaderNodeIntUniform.xml:35
msgid "No hint used."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:32
-#: doc/classes/VisualShaderNodeIntUniform.xml:32
+#: doc/classes/VisualShaderNodeFloatUniform.xml:38
+#: doc/classes/VisualShaderNodeIntUniform.xml:38
msgid ""
"A range hint for scalar value, which limits possible input values between "
"[member min] and [member max]. Translated to [code]hint_range(min, max)[/"
"code] in shader code."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:35
-#: doc/classes/VisualShaderNodeIntUniform.xml:35
+#: doc/classes/VisualShaderNodeFloatUniform.xml:41
+#: doc/classes/VisualShaderNodeIntUniform.xml:41
msgid ""
"A range hint for scalar value with step, which limits possible input values "
"between [member min] and [member max], with a step (increment) of [member "
@@ -59977,6 +70416,29 @@ msgid ""
"results, e.g. division by zero)."
msgstr ""
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:4
+#, fuzzy
+msgid "Performs a fused multiply-add operation within the visual shader graph."
+msgstr "Devuelve el numero de conexiones en el grafico."
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:7
+msgid "Uses three operands to compute [code](a * b + c)[/code] expression."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:15
+msgid "A type of operands and returned value."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:20
+#, fuzzy
+msgid "A scalar type."
+msgstr "Tipo diccionario."
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:23
+#, fuzzy
+msgid "A vector type."
+msgstr "Tipo diccionario."
+
#: doc/classes/VisualShaderNodeOuterProduct.xml:4
msgid ""
"Calculates an outer product of two vectors within the visual shader graph."
@@ -59999,7 +70461,7 @@ msgstr ""
#: doc/classes/VisualShaderNodeOutput.xml:7
msgid ""
"This visual shader node is present in all shader graphs in form of \"Output"
-"\" block with mutliple output value ports."
+"\" block with multiple output value ports."
msgstr ""
#: doc/classes/VisualShaderNodeSample3D.xml:4
@@ -60379,6 +70841,21 @@ msgid ""
"[ShaderMaterial] properties."
msgstr ""
+#: doc/classes/VisualShaderNodeUniformRef.xml:4
+msgid "A reference to an existing [VisualShaderNodeUniform]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniformRef.xml:7
+msgid ""
+"Creating a reference to a [VisualShaderNodeUniform] allows you to reuse this "
+"uniform in different shaders or shader stages easily."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniformRef.xml:15
+#, fuzzy
+msgid "The name of the uniform which this reference points to."
+msgstr "El nodo desde el cual viajarán las referencias de la ruta de nodos."
+
#: doc/classes/VisualShaderNodeVec3Constant.xml:4
msgid "A [Vector3] constant to be used within the visual shader graph."
msgstr ""
@@ -60735,7 +71212,7 @@ msgstr ""
msgid ""
"Translated to [code]refract(I, N, eta)[/code] in the shader language, where "
"[code]I[/code] is the incident vector, [code]N[/code] is the normal vector "
-"and [code]eta[/code] is the ratio of the indicies of the refraction."
+"and [code]eta[/code] is the ratio of the indices of the refraction."
msgstr ""
#: doc/classes/VisualShaderNodeVectorScalarMix.xml:4
@@ -62512,9 +72989,346 @@ msgid ""
msgstr ""
#: doc/classes/YSort.xml:16
+#, fuzzy
msgid ""
"If [code]true[/code], child nodes are sorted, otherwise sorting is disabled."
msgstr ""
+"Si es [code]true[/code], los nodos hijos están ordenados, de lo contrario el "
+"orden está desactivado."
+
+#~ msgid ""
+#~ "Returns [code]true[/code] if [code]a[/code] and [code]b[/code] are "
+#~ "approximately equal to each other."
+#~ msgstr ""
+#~ "Devuelve [code]true[/code] si [code]a[/code] y [code]b[/code] son "
+#~ "aproximadamente iguales entre sí."
+
+#~ msgid "Returns [code]true[/code] if [code]s[/code] is zero or almost zero."
+#~ msgstr "Devuelve [code]true[/code] si [code]s[/code] es cero o casi cero."
+
+#~ msgid ""
+#~ "Returns the nearest larger power of 2 for integer [code]value[/code].\n"
+#~ "[codeblock]\n"
+#~ "nearest_po2(3) # Returns 4\n"
+#~ "nearest_po2(4) # Returns 4\n"
+#~ "nearest_po2(5) # Returns 8\n"
+#~ "[/codeblock]"
+#~ msgstr ""
+#~ "Devuelve la potencia mayor más cercana de 2 para el entero "
+#~ "[code]value[code].\n"
+#~ "[codeblock]\n"
+#~ "nearest_po2(3) # Devuelve 4\n"
+#~ "nearest_po2(4) # Devuelve 4\n"
+#~ "nearest_po2(5) # Devuelve 8\n"
+#~ "[/codeblock]"
+
+#~ msgid ""
+#~ "Returns a resource from the filesystem that is loaded during script "
+#~ "parsing.\n"
+#~ "[b]Note:[/b] Resource paths can be obtained by right clicking on a "
+#~ "resource in the Assets Panel and choosing \"Copy Path\".\n"
+#~ "[codeblock]\n"
+#~ "# Load a scene called main located in the root of the project directory.\n"
+#~ "var main = preload(\"res://main.tscn\")\n"
+#~ "[/codeblock]"
+#~ msgstr ""
+#~ "Devuelve un recurso del sistema de archivos que se carga durante el "
+#~ "análisis de script.\n"
+#~ "[b]Nota:[/b] Las rutas de los recursos pueden obtenerse haciendo clic con "
+#~ "el botón derecho del ratón en un recurso del Panel de recursos y "
+#~ "eligiendo \"Copy Path\".\n"
+#~ "[codeblock]\n"
+#~ "# Cargar una escena llamada principal ubicada en la raíz del directorio "
+#~ "del proyecto.\n"
+#~ "var main = preload(\"res://main.tscn\")\n"
+#~ "[/codeblock]"
+
+#~ msgid ""
+#~ "Returns a number smoothly interpolated between the [code]from[/code] and "
+#~ "[code]to[/code], based on the [code]weight[/code]. Similar to [method "
+#~ "lerp], but interpolates faster at the beginning and slower at the end.\n"
+#~ "[codeblock]\n"
+#~ "smoothstep(0, 2, 0.5) # Returns 0.15\n"
+#~ "smoothstep(0, 2, 1.0) # Returns 0.5\n"
+#~ "smoothstep(0, 2, 2.0) # Returns 1.0\n"
+#~ "[/codeblock]"
+#~ msgstr ""
+#~ "Devuelve un número interpolado suavemente entre el [code]from[/code] y el "
+#~ "[code]to[/code], basado en el [code]weight[/code]. Es similar al [método "
+#~ "lerp], pero interpola más rápido al inicio y más lento al final.\n"
+#~ "[codeblock]\n"
+#~ "smoothstep(0, 2, 0.5) # Devuelve 0.15\n"
+#~ "smoothstep(0, 2, 1.0) # Devuelve 0.5\n"
+#~ "smoothstep(0, 2, 2.0) # Devuelve 1.0\n"
+#~ "[/codeblock]"
+
+#~ msgid ""
+#~ "Returns the square root of [code]s[/code].\n"
+#~ "[codeblock]\n"
+#~ "sqrt(9) # Returns 3\n"
+#~ "[/codeblock]"
+#~ msgstr ""
+#~ "Devuelve la raíz cuadrada de [code]s[/code].\n"
+#~ "[codeblock]\n"
+#~ "sqrt(9) # Devuelve 3\n"
+#~ "[/codeblock]"
+
+#~ msgid ""
+#~ "Converts a Variant [code]var[/code] to JSON text and return the result. "
+#~ "Useful for serializing data to store or send over the network.\n"
+#~ "[codeblock]\n"
+#~ "a = { \"a\": 1, \"b\": 2 }\n"
+#~ "b = to_json(a)\n"
+#~ "print(b) # {\"a\":1, \"b\":2}\n"
+#~ "[/codeblock]"
+#~ msgstr ""
+#~ "Convierte una variable [code]var[/code] en texto JSON y devuelve el "
+#~ "resultado. Es útil para serializar datos y almacenarlos o enviarlos a "
+#~ "través de la red.\n"
+#~ "[codeblock]\n"
+#~ "a = { \"a\": 1, \"b\": 2 }\n"
+#~ "b = to_json(a)\n"
+#~ "print(b) # {\"a\":1, \"b\":2}\n"
+#~ "[/codeblock]"
+
+#~ msgid ""
+#~ "Stops the function execution and returns the current suspended state to "
+#~ "the calling function.\n"
+#~ "From the caller, call [method GDScriptFunctionState.resume] on the state "
+#~ "to resume execution. This invalidates the state. Within the resumed "
+#~ "function, [code]yield()[/code] returns whatever was passed to the "
+#~ "[code]resume()[/code] function call.\n"
+#~ "If passed an object and a signal, the execution is resumed when the "
+#~ "object emits the given signal. In this case, [code]yield()[/code] returns "
+#~ "the argument passed to [code]emit_signal()[/code] if the signal takes "
+#~ "only one argument, or an array containing all the arguments passed to "
+#~ "[code]emit_signal()[/code] if the signal takes multiple arguments.\n"
+#~ "You can also use [code]yield[/code] to wait for a function to finish:\n"
+#~ "[codeblock]\n"
+#~ "func _ready():\n"
+#~ " yield(countdown(), \"completed\") # waiting for the countdown() "
+#~ "function to complete\n"
+#~ " print('Ready')\n"
+#~ "\n"
+#~ "func countdown():\n"
+#~ " yield(get_tree(), \"idle_frame\") # returns a GDScriptFunctionState "
+#~ "object to _ready()\n"
+#~ " print(3)\n"
+#~ " yield(get_tree().create_timer(1.0), \"timeout\")\n"
+#~ " print(2)\n"
+#~ " yield(get_tree().create_timer(1.0), \"timeout\")\n"
+#~ " print(1)\n"
+#~ " yield(get_tree().create_timer(1.0), \"timeout\")\n"
+#~ "\n"
+#~ "# prints:\n"
+#~ "# 3\n"
+#~ "# 2\n"
+#~ "# 1\n"
+#~ "# Ready\n"
+#~ "[/codeblock]\n"
+#~ "When yielding on a function, the [code]completed[/code] signal will be "
+#~ "emitted automatically when the function returns. It can, therefore, be "
+#~ "used as the [code]signal[/code] parameter of the [code]yield[/code] "
+#~ "method to resume.\n"
+#~ "In order to yield on a function, the resulting function should also "
+#~ "return a [code]GDScriptFunctionState[/code]. Notice "
+#~ "[code]yield(get_tree(), \"idle_frame\")[/code] from the above example."
+#~ msgstr ""
+#~ "Detiene la ejecución de la función y devuelve el estado suspendido actual "
+#~ "a la función que lo ha llamado.\n"
+#~ "Desde el llamador, llama [method GDScriptFunctionState.resume] al estado "
+#~ "para reanudar la ejecución. Esto invalida el estado. Dentro de la función "
+#~ "reanudada, [code]yield()[/code] devuelve lo que se pasó a la llamada de "
+#~ "la función [code]resume()[/code].\n"
+#~ "Si se pasa un objeto y una señal, la ejecución se reanuda cuando el "
+#~ "objeto emite la señal dada. En este caso, [code]yield()[/code] devuelve "
+#~ "el argumento pasado a [code]emit_signal()[/code] si la señal toma un solo "
+#~ "argumento, o un array que contiene todos los argumentos pasados a "
+#~ "[code]emit_signal()[/code] si la señal toma múltiples argumentos.\n"
+#~ "También puedes usar [code]yield[/code] para esperar a que una función "
+#~ "termine:\n"
+#~ "[codeblock]\n"
+#~ "func _ready():\n"
+#~ " yield(cuentaAtras(), \"completed\") # esperando por la funcion "
+#~ "cuentaAtras() a que termine\n"
+#~ " print('Preparado')\n"
+#~ "\n"
+#~ "func cuentaAtras():\n"
+#~ " yield(get_tree(), \"idle_frame\") # devuelve un objeto "
+#~ "GDScriptFunctionState a _ready()\n"
+#~ " print(3)\n"
+#~ " yield(get_tree().create_timer(1.0), \"timeout\")\n"
+#~ " print(2)\n"
+#~ " yield(get_tree().create_timer(1.0), \"timeout\")\n"
+#~ " print(1)\n"
+#~ " yield(get_tree().create_timer(1.0), \"timeout\")\n"
+#~ "\n"
+#~ "# prints:\n"
+#~ "# 3\n"
+#~ "# 2\n"
+#~ "# 1\n"
+#~ "# Ready\n"
+#~ "[/codeblock]\n"
+#~ "Al ceder una función, la señal [code]completed[/code] se emitirá "
+#~ "automáticamente cuando la función retorne. Por lo tanto, puede utilizarse "
+#~ "como parámetro [code]signal[/code] del método [code]yield[/code] para "
+#~ "reanudar.\n"
+#~ "Para ceder una función, la función resultante también debe devolver un "
+#~ "[code]GDScriptFunctionState[/code]. Observe [code]yield(get_tree(), "
+#~ "\"idle_frame\")[/code] del ejemplo anterior."
+
+#~ msgid ""
+#~ "Macro constant that expands to an expression of type float that "
+#~ "represents a NaN.\n"
+#~ "The NaN values are used to identify undefined or non-representable values "
+#~ "for floating-point elements, such as the square root of negative numbers "
+#~ "or the result of 0/0."
+#~ msgstr ""
+#~ "Macro constante que se expande a una expresión de tipo real que "
+#~ "representa un NaN.\n"
+#~ "Los valores de NaN se utilizan para identificar valores indefinidos o no "
+#~ "representables de elementos reales como la raíz cuadrada de los números "
+#~ "negativos o el resultado de 0/0."
+
+#~ msgid "Beginning corner."
+#~ msgstr "Esquina de inicial."
+
+#~ msgid "Size from position to end."
+#~ msgstr "Tamaño desde la posición hasta el final."
+
+#~ msgid "Called when the button is pressed."
+#~ msgstr "Se llama cuando se pulsa el boton."
+
+#~ msgid "Returns the determinant of the matrix."
+#~ msgstr "Devuelve el determinante de la matriz."
+
+#~ msgid "The basis matrix's X vector."
+#~ msgstr "El vector X de la matriz base."
+
+#~ msgid "The basis matrix's Y vector."
+#~ msgstr "El vector Y de la matriz base."
+
+#~ msgid "The basis matrix's Z vector."
+#~ msgstr "El vector Z de la matriz base."
+
+#~ msgid ""
+#~ "Button is the standard themed button. It can contain text and an icon, "
+#~ "and will display them according to the current [Theme]."
+#~ msgstr ""
+#~ "El botón es el botón temático estándar. Puede contener texto y un icono, "
+#~ "y los mostrará de acuerdo con el [Theme] actual."
+
+#~ msgid "Draws a string using a custom font."
+#~ msgstr "Dibuja una string usando una fuente personalizada."
+
+#~ msgid "Alpha value (range 0 to 1)."
+#~ msgstr "Valor alfa (rango 0 a 1)."
+
+#~ msgid "Alpha value (range 0 to 255)."
+#~ msgstr "Valor alfa (rango de 0 a 255)."
+
+#~ msgid "Blue value (range 0 to 1)."
+#~ msgstr "Valor azul (rango 0 a 1)."
+
+#~ msgid "Blue value (range 0 to 255)."
+#~ msgstr "Valor azul (rango de 0 a 255)."
+
+#~ msgid "Green value (range 0 to 1)."
+#~ msgstr "Valor verde (rango 0 a 1)."
+
+#~ msgid "Green value (range 0 to 255)."
+#~ msgstr "Valor verde (rango de 0 a 255)."
+
+#~ msgid "Red value (range 0 to 1)."
+#~ msgstr "Valor rojo (rango 0 a 1)."
+
+#~ msgid "Red value (range 0 to 255)."
+#~ msgstr "Valor rojo (rango de 0 a 255)."
+
+#~ msgid "HSV value (range 0 to 1)."
+#~ msgstr "Valor HSV (rango 0 a 1)."
+
+#~ msgid ""
+#~ "The node's scale, relative to its [member rect_size]. Change this "
+#~ "property to scale the node around its [member rect_pivot_offset]."
+#~ msgstr ""
+#~ "La escala del nodo, relativa a su [member rect_size]. Cambie esta "
+#~ "propiedad para escalar el nodo alrededor de su [member rect_pivot_offset]."
+
+#~ msgid "Returns the editor [Viewport]."
+#~ msgstr "Devuelve el editor [Viewport]."
+
+#~ msgid "Gets whether a handle is highlighted or not."
+#~ msgstr "Averigua si una manejador está resaltado o no."
+
+#~ msgid "Erase a given setting (pass full property path)."
+#~ msgstr "Borra un ajuste dado (pasar ruta absoluta de la propiedad)."
+
+#~ msgid ""
+#~ "Contains mouse and pen motion information. Supports relative, absolute "
+#~ "positions and speed. See [method Node._input]."
+#~ msgstr ""
+#~ "Contiene información sobre el movimiento del ratón y el bolígrafo. "
+#~ "Soporta posiciones y velocidades relativas y absolutas. Ver [method Node."
+#~ "_input]."
+
+#~ msgid ""
+#~ "Converts a [Variant] var to JSON text and returns the result. Useful for "
+#~ "serializing data to store or send over the network."
+#~ msgstr ""
+#~ "Convierte una [Variant] var a texto JSON y devuelve el resultado. Es útil "
+#~ "para serializar datos para almacenarlos o enviarlos a través de la red."
+
+#~ msgid "Only indirect lighting will be baked (default)."
+#~ msgstr "Sólo se cocinará la iluminación indirecta (por defecto)."
+
+#~ msgid ""
+#~ "Both direct and indirect light will be baked.\n"
+#~ "[b]Note:[/b] You should hide the light if you don't want it to appear "
+#~ "twice (dynamic and baked)."
+#~ msgstr ""
+#~ "Tanto la luz directa como la indirecta serán cocinadas.\n"
+#~ "[b]Nota:[/b] Debes ocultar la luz si no quieres que aparezca dos veces "
+#~ "(dinámica y cocinada)."
+
+#~ msgid ""
+#~ "Notification received from the OS when the game window is focused.\n"
+#~ "Implemented on all platforms."
+#~ msgstr ""
+#~ "Notificación recibida del sistema operativo cuando la ventana del juego "
+#~ "está enfocada.\n"
+#~ "Implementado en todas las plataformas."
+
+#~ msgid ""
+#~ "Notification received from the OS when the game window is unfocused.\n"
+#~ "Implemented on all platforms."
+#~ msgstr ""
+#~ "Notificación recibida del sistema operativo cuando la ventana del juego "
+#~ "está desenfocada.\n"
+#~ "Implementado en todas las plataformas."
+
+#~ msgid ""
+#~ "Returns whether the node is visible, taking into consideration that its "
+#~ "parents visibility."
+#~ msgstr ""
+#~ "Devuelve si el nodo es visible, teniendo en cuenta que sus padres son "
+#~ "visibles."
+
+#~ msgid ""
+#~ "Returns the [Variant] value of the given [code]property[/code]. If the "
+#~ "[code]property[/code] doesn't exist, this will return [code]null[/code]."
+#~ msgstr ""
+#~ "Devuelve el valor de la [Variant] de la [code]property[/code]. Si la "
+#~ "[code]property[/code] no existe, esto devolverá [code]null[/code]."
+
+#, fuzzy
+#~ msgid ""
+#~ "Finds the first occurrence of a substring, ignoring case. Returns the "
+#~ "starting position of the substring or [code]-1[/code] if not found. "
+#~ "Optionally, the initial search index can be passed."
+#~ msgstr ""
+#~ "Busca el array por un valor y devuelve su indice o -1 sino se encuentra. "
+#~ "Opcionalmente, el indice de busqueda inicial puede ser pasado."
#~ msgid "Gamepad button 0."
#~ msgstr "Botón 0 del mando de videojuegos."
diff --git a/doc/translations/fa.po b/doc/translations/fa.po
new file mode 100644
index 0000000000..874d3273c3
--- /dev/null
+++ b/doc/translations/fa.po
@@ -0,0 +1,60788 @@
+# LANGUAGE translation of the Godot Engine class reference.
+# Copyright (c) 2007-2020 Juan Linietsky, Ariel Manzur.
+# Copyright (c) 2014-2020 Godot Engine contributors (cf. AUTHORS.md).
+# This file is distributed under the same license as the Godot source code.
+#
+# Tetra Homer <tetrahomer@gmail.com>, 2020.
+msgid ""
+msgstr ""
+"Project-Id-Version: Godot Engine class reference\n"
+"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
+"PO-Revision-Date: 2020-07-22 08:42+0000\n"
+"Last-Translator: Tetra Homer <tetrahomer@gmail.com>\n"
+"Language-Team: Persian <https://hosted.weblate.org/projects/godot-engine/"
+"godot-class-reference/fa/>\n"
+"Language: fa\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8-bit\n"
+"Plural-Forms: nplurals=2; plural=n > 1;\n"
+"X-Generator: Weblate 4.2-dev\n"
+
+#: doc/tools/makerst.py
+msgid "Description"
+msgstr "توضیح"
+
+#: doc/tools/makerst.py
+msgid "Tutorials"
+msgstr "آموزش‌ها"
+
+#: doc/tools/makerst.py
+msgid "Properties"
+msgstr "خصوصیات"
+
+#: doc/tools/makerst.py
+msgid "Methods"
+msgstr "توابع"
+
+#: doc/tools/makerst.py
+msgid "Theme Properties"
+msgstr "خصوصیات زمینه"
+
+#: doc/tools/makerst.py
+msgid "Signals"
+msgstr "سیگنال‌ها"
+
+#: doc/tools/makerst.py
+msgid "Enumerations"
+msgstr "شمارش ها"
+
+#: doc/tools/makerst.py
+msgid "Constants"
+msgstr "ثوابت"
+
+#: doc/tools/makerst.py
+msgid "Property Descriptions"
+msgstr "توضیحات خصیصه"
+
+#: doc/tools/makerst.py
+msgid "Method Descriptions"
+msgstr "توضیحات تابع"
+
+#: modules/gdscript/doc_classes/@GDScript.xml:4
+msgid "Built-in GDScript functions."
+msgstr "توابع داخلی GDScript."
+
+#: modules/gdscript/doc_classes/@GDScript.xml:7
+msgid ""
+"List of core built-in GDScript functions. Math functions and other "
+"utilities. Everything else is provided by objects. (Keywords: builtin, built "
+"in, global functions.)"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:24
+msgid ""
+"Returns a color constructed from integer red, green, blue, and alpha "
+"channels. Each channel should have 8 bits of information ranging from 0 to "
+"255.\n"
+"[code]r8[/code] red channel\n"
+"[code]g8[/code] green channel\n"
+"[code]b8[/code] blue channel\n"
+"[code]a8[/code] alpha channel\n"
+"[codeblock]\n"
+"red = Color8(255, 0, 0)\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:42
+msgid ""
+"Returns a color according to the standardized [code]name[/code] with "
+"[code]alpha[/code] ranging from 0 to 1.\n"
+"[codeblock]\n"
+"red = ColorN(\"red\", 1)\n"
+"[/codeblock]\n"
+"Supported color names are the same as the constants defined in [Color]."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:55
+msgid ""
+"Returns the absolute value of parameter [code]s[/code] (i.e. positive "
+"value).\n"
+"[codeblock]\n"
+"# a is 1\n"
+"a = abs(-1)\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:68
+msgid ""
+"Returns the arc cosine of [code]s[/code] in radians. Use to get the angle of "
+"cosine [code]s[/code].\n"
+"[codeblock]\n"
+"# c is 0.523599 or 30 degrees if converted with rad2deg(s)\n"
+"c = acos(0.866025)\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:81
+msgid ""
+"Returns the arc sine of [code]s[/code] in radians. Use to get the angle of "
+"sine [code]s[/code].\n"
+"[codeblock]\n"
+"# s is 0.523599 or 30 degrees if converted with rad2deg(s)\n"
+"s = asin(0.5)\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:96
+msgid ""
+"Asserts that the [code]condition[/code] is [code]true[/code]. If the "
+"[code]condition[/code] is [code]false[/code], an error is generated and the "
+"program is halted until you resume it. Only executes in debug builds, or "
+"when running the game from the editor. Use it for debugging purposes, to "
+"make sure a statement is [code]true[/code] during development.\n"
+"The optional [code]message[/code] argument, if given, is shown in addition "
+"to the generic \"Assertion failed\" message. You can use this to provide "
+"additional details about why the assertion failed.\n"
+"[codeblock]\n"
+"# Imagine we always want speed to be between 0 and 20\n"
+"speed = -10\n"
+"assert(speed < 20) # True, the program will continue\n"
+"assert(speed >= 0) # False, the program will stop\n"
+"assert(speed >= 0 && speed < 20) # You can also combine the two conditional "
+"statements in one check\n"
+"assert(speed < 20, \"speed = %f, but the speed limit is 20\" % speed) # Show "
+"a message with clarifying details\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:114
+msgid ""
+"Returns the arc tangent of [code]s[/code] in radians. Use it to get the "
+"angle from an angle's tangent in trigonometry: [code]atan(tan(angle)) == "
+"angle[/code].\n"
+"The method cannot know in which quadrant the angle should fall. See [method "
+"atan2] if you have both [code]y[/code] and [code]x[/code].\n"
+"[codeblock]\n"
+"a = atan(0.5) # a is 0.463648\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:129
+msgid ""
+"Returns the arc tangent of [code]y/x[/code] in radians. Use to get the angle "
+"of tangent [code]y/x[/code]. To compute the value, the method takes into "
+"account the sign of both arguments in order to determine the quadrant.\n"
+"Important note: The Y coordinate comes first, by convention.\n"
+"[codeblock]\n"
+"a = atan2(0, -1) # a is 3.141593\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:144
+msgid ""
+"Decodes a byte array back to a value. When [code]allow_objects[/code] is "
+"[code]true[/code] decoding objects is allowed.\n"
+"[b]WARNING:[/b] Deserialized object can contain code which gets executed. Do "
+"not use this option if the serialized object comes from untrusted sources to "
+"avoid potential security threats (remote code execution)."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:156
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:145
+msgid ""
+"Converts a 2D point expressed in the cartesian coordinate system (X and Y "
+"axis) to the polar coordinate system (a distance from the origin and an "
+"angle)."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:165
+msgid ""
+"Rounds [code]s[/code] upward (towards positive infinity), returning the "
+"smallest whole number that is not less than [code]s[/code].\n"
+"[codeblock]\n"
+"i = ceil(1.45) # i is 2\n"
+"i = ceil(1.001) # i is 2\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:178
+msgid ""
+"Returns a character as a String of the given Unicode code point (which is "
+"compatible with ASCII code).\n"
+"[codeblock]\n"
+"a = char(65) # a is \"A\"\n"
+"a = char(65 + 32) # a is \"a\"\n"
+"a = char(8364) # a is \"€\"\n"
+"[/codeblock]\n"
+"This is the inverse of [method ord]."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:197
+msgid ""
+"Clamps [code]value[/code] and returns a value not less than [code]min[/code] "
+"and not more than [code]max[/code].\n"
+"[codeblock]\n"
+"speed = 1000\n"
+"# a is 20\n"
+"a = clamp(speed, 1, 20)\n"
+"\n"
+"speed = -10\n"
+"# a is 1\n"
+"a = clamp(speed, 1, 20)\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:217
+msgid ""
+"Converts from a type to another in the best way possible. The [code]type[/"
+"code] parameter uses the [enum Variant.Type] values.\n"
+"[codeblock]\n"
+"a = Vector2(1, 0)\n"
+"# Prints 1\n"
+"print(a.length())\n"
+"a = convert(a, TYPE_STRING)\n"
+"# Prints 6 as \"(1, 0)\" is 6 characters\n"
+"print(a.length())\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:234
+msgid ""
+"Returns the cosine of angle [code]s[/code] in radians.\n"
+"[codeblock]\n"
+"# Prints 1 then -1\n"
+"print(cos(PI * 2))\n"
+"print(cos(PI))\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:248
+msgid ""
+"Returns the hyperbolic cosine of [code]s[/code] in radians.\n"
+"[codeblock]\n"
+"# Prints 1.543081\n"
+"print(cosh(1))\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:261
+msgid "Converts from decibels to linear energy (audio)."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:274
+msgid ""
+"Returns the result of [code]value[/code] decreased by [code]step[/code] * "
+"[code]amount[/code].\n"
+"[codeblock]\n"
+"# a = 59\n"
+"a = dectime(60, 10, 0.1))\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:287
+msgid ""
+"Converts an angle expressed in degrees to radians.\n"
+"[codeblock]\n"
+"# r is 3.141593\n"
+"r = deg2rad(180)\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:300
+msgid ""
+"Converts a previously converted instance to a dictionary, back into an "
+"instance. Useful for deserializing."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:311
+msgid ""
+"Easing function, based on exponent. The curve values are: 0 is constant, 1 "
+"is linear, 0 to 1 is ease-in, 1+ is ease out. Negative values are in-out/out "
+"in."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:320
+msgid ""
+"The natural exponential function. It raises the mathematical constant [b]e[/"
+"b] to the power of [code]s[/code] and returns it.\n"
+"[b]e[/b] has an approximate value of 2.71828, and can be obtained with "
+"[code]exp(1)[/code].\n"
+"For exponents to other bases use the method [method pow].\n"
+"[codeblock]\n"
+"a = exp(2) # Approximately 7.39\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:334
+msgid ""
+"Rounds [code]s[/code] downward (towards negative infinity), returning the "
+"largest whole number that is not more than [code]s[/code].\n"
+"[codeblock]\n"
+"# a is 2.0\n"
+"a = floor(2.99)\n"
+"# a is -3.0\n"
+"a = floor(-2.99)\n"
+"[/codeblock]\n"
+"[b]Note:[/b] This method returns a float. If you need an integer, you can "
+"use [code]int(s)[/code] directly."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:352
+msgid ""
+"Returns the floating-point remainder of [code]a/b[/code], keeping the sign "
+"of [code]a[/code].\n"
+"[codeblock]\n"
+"# Remainder is 1.5\n"
+"var remainder = fmod(7, 5.5)\n"
+"[/codeblock]\n"
+"For the integer remainder operation, use the % operator."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:368
+msgid ""
+"Returns the floating-point modulus of [code]a/b[/code] that wraps equally in "
+"positive and negative.\n"
+"[codeblock]\n"
+"var i = -6\n"
+"while i < 5:\n"
+" prints(i, fposmod(i, 3))\n"
+" i += 1\n"
+"[/codeblock]\n"
+"Produces:\n"
+"[codeblock]\n"
+"-6 0\n"
+"-5 1\n"
+"-4 2\n"
+"-3 0\n"
+"-2 1\n"
+"-1 2\n"
+"0 0\n"
+"1 1\n"
+"2 2\n"
+"3 0\n"
+"4 1\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:399
+msgid ""
+"Returns a reference to the specified function [code]funcname[/code] in the "
+"[code]instance[/code] node. As functions aren't first-class objects in "
+"GDscript, use [code]funcref[/code] to store a [FuncRef] in a variable and "
+"call it later.\n"
+"[codeblock]\n"
+"func foo():\n"
+" return(\"bar\")\n"
+"\n"
+"a = funcref(self, \"foo\")\n"
+"print(a.call_func()) # Prints bar\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:413
+msgid ""
+"Returns an array of dictionaries representing the current call stack.\n"
+"[codeblock]\n"
+"func _ready():\n"
+" foo()\n"
+"\n"
+"func foo():\n"
+" bar()\n"
+"\n"
+"func bar():\n"
+" print(get_stack())\n"
+"[/codeblock]\n"
+"would print\n"
+"[codeblock]\n"
+"[{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, "
+"source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:436
+msgid ""
+"Returns the integer hash of the variable passed.\n"
+"[codeblock]\n"
+"print(hash(\"a\")) # Prints 177670\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:448
+msgid ""
+"Returns the passed instance converted to a dictionary (useful for "
+"serializing).\n"
+"[codeblock]\n"
+"var foo = \"bar\"\n"
+"func _ready():\n"
+" var d = inst2dict(self)\n"
+" print(d.keys())\n"
+" print(d.values())\n"
+"[/codeblock]\n"
+"Prints out:\n"
+"[codeblock]\n"
+"[@subpath, @path, foo]\n"
+"[, res://test.gd, bar]\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:469
+msgid ""
+"Returns the Object that corresponds to [code]instance_id[/code]. All Objects "
+"have a unique instance ID.\n"
+"[codeblock]\n"
+"var foo = \"bar\"\n"
+"func _ready():\n"
+" var id = get_instance_id()\n"
+" var inst = instance_from_id(id)\n"
+" print(inst.foo) # Prints bar\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:489
+msgid ""
+"Returns a normalized value considering the given range. This is the opposite "
+"of [method lerp].\n"
+"[codeblock]\n"
+"var middle = lerp(20, 30, 0.75)\n"
+"# `middle` is now 27.5.\n"
+"# Now, we pretend to have forgotten the original ratio and want to get it "
+"back.\n"
+"var ratio = inverse_lerp(20, 30, 27.5)\n"
+"# `ratio` is now 0.75.\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:507
+msgid ""
+"Returns [code]true[/code] if [code]a[/code] and [code]b[/code] are "
+"approximately equal to each other.\n"
+"Here, approximately equal means that [code]a[/code] and [code]b[/code] are "
+"within a small internal epsilon of each other, which scales with the "
+"magnitude of the numbers.\n"
+"Infinity values of the same sign are considered equal."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:518
+msgid ""
+"Returns whether [code]s[/code] is an infinity value (either positive "
+"infinity or negative infinity)."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:527
+msgid ""
+"Returns whether [code]instance[/code] is a valid object (e.g. has not been "
+"deleted from memory)."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:536
+msgid ""
+"Returns whether [code]s[/code] is a NaN (\"Not a Number\" or invalid) value."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:545
+msgid ""
+"Returns [code]true[/code] if [code]s[/code] is zero or almost zero.\n"
+"This method is faster than using [method is_equal_approx] with one value as "
+"zero."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:555
+msgid ""
+"Returns length of Variant [code]var[/code]. Length is the character count of "
+"String, element count of Array, size of Dictionary, etc.\n"
+"[b]Note:[/b] Generates a fatal error if Variant can not provide a length.\n"
+"[codeblock]\n"
+"a = [1, 2, 3, 4]\n"
+"len(a) # Returns 4\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:573
+msgid ""
+"Linearly interpolates between two values by a normalized value. This is the "
+"opposite of [method inverse_lerp].\n"
+"If the [code]from[/code] and [code]to[/code] arguments are of type [int] or "
+"[float], the return value is a [float].\n"
+"If both are of the same vector type ([Vector2], [Vector3] or [Color]), the "
+"return value will be of the same type ([code]lerp[/code] then calls the "
+"vector type's [code]lerp[/code] method).\n"
+"[codeblock]\n"
+"lerp(0, 4, 0.75) # Returns 3.0\n"
+"lerp(Vector2(1, 5), Vector2(3, 2), 0.5) # Returns Vector2(2, 3.5)\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:592
+msgid ""
+"Linearly interpolates between two angles (in radians) by a normalized "
+"value.\n"
+"Similar to [method lerp], but interpolates correctly when the angles wrap "
+"around [constant @GDScript.TAU].\n"
+"[codeblock]\n"
+"extends Sprite\n"
+"var elapsed = 0.0\n"
+"func _process(delta):\n"
+" var min_angle = deg2rad(0.0)\n"
+" var max_angle = deg2rad(90.0)\n"
+" rotation = lerp_angle(min_angle, max_angle, elapsed)\n"
+" elapsed += delta\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:611
+msgid ""
+"Converts from linear energy to decibels (audio). This can be used to "
+"implement volume sliders that behave as expected (since volume isn't "
+"linear). Example:\n"
+"[codeblock]\n"
+"# \"Slider\" refers to a node that inherits Range such as HSlider or "
+"VSlider.\n"
+"# Its range must be configured to go from 0 to 1.\n"
+"# Change the bus name if you'd like to change the volume of a specific bus "
+"only.\n"
+"AudioServer.set_bus_volume_db(AudioServer.get_bus_index(\"Master\"), "
+"linear2db($Slider.value))\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:626
+msgid ""
+"Loads a resource from the filesystem located at [code]path[/code]. The "
+"resource is loaded on the method call (unless it's referenced already "
+"elsewhere, e.g. in another script or in the scene), which might cause slight "
+"delay, especially when loading scenes. To avoid unnecessary delays when "
+"loading something multiple times, either store the resource in a variable or "
+"use [method preload].\n"
+"[b]Note:[/b] Resource paths can be obtained by right-clicking on a resource "
+"in the FileSystem dock and choosing \"Copy Path\" or by dragging the file "
+"from the FileSystem dock into the script.\n"
+"[codeblock]\n"
+"# Load a scene called main located in the root of the project directory and "
+"cache it in a variable.\n"
+"var main = load(\"res://main.tscn\") # main will contain a PackedScene "
+"resource.\n"
+"[/codeblock]\n"
+"[b]Important:[/b] The path must be absolute, a local path will just return "
+"[code]null[/code]."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:641
+msgid ""
+"Natural logarithm. The amount of time needed to reach a certain level of "
+"continuous growth.\n"
+"[b]Note:[/b] This is not the same as the \"log\" function on most "
+"calculators, which uses a base 10 logarithm.\n"
+"[codeblock]\n"
+"log(10) # Returns 2.302585\n"
+"[/codeblock]\n"
+"[b]Note:[/b] The logarithm of [code]0[/code] returns [code]-inf[/code], "
+"while negative values return [code]-nan[/code]."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:657
+msgid ""
+"Returns the maximum of two values.\n"
+"[codeblock]\n"
+"max(1, 2) # Returns 2\n"
+"max(-3.99, -4) # Returns -3.99\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:672
+msgid ""
+"Returns the minimum of two values.\n"
+"[codeblock]\n"
+"min(1, 2) # Returns 1\n"
+"min(-3.99, -4) # Returns -4\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:689
+msgid ""
+"Moves [code]from[/code] toward [code]to[/code] by the [code]delta[/code] "
+"value.\n"
+"Use a negative [code]delta[/code] value to move away.\n"
+"[codeblock]\n"
+"move_toward(5, 10, 4) # Returns 9\n"
+"move_toward(10, 5, 4) # Returns 6\n"
+"move_toward(10, 5, -1.5) # Returns 11.5\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:704
+msgid ""
+"Returns the nearest equal or larger power of 2 for integer [code]value[/"
+"code].\n"
+"In other words, returns the smallest value [code]a[/code] where [code]a = "
+"pow(2, n)[/code] such that [code]value <= a[/code] for some non-negative "
+"integer [code]n[/code].\n"
+"[codeblock]\n"
+"nearest_po2(3) # Returns 4\n"
+"nearest_po2(4) # Returns 4\n"
+"nearest_po2(5) # Returns 8\n"
+"\n"
+"nearest_po2(0) # Returns 0 (this may not be what you expect)\n"
+"nearest_po2(-1) # Returns 0 (this may not be what you expect)\n"
+"[/codeblock]\n"
+"[b]WARNING:[/b] Due to the way it is implemented, this function returns "
+"[code]0[/code] rather than [code]1[/code] for non-positive values of "
+"[code]value[/code] (in reality, 1 is the smallest integer power of 2)."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:723
+msgid ""
+"Returns an integer representing the Unicode code point of the given Unicode "
+"character [code]char[/code].\n"
+"[codeblock]\n"
+"a = ord(\"A\") # a is 65\n"
+"a = ord(\"a\") # a is 97\n"
+"a = ord(\"€\") # a is 8364\n"
+"[/codeblock]\n"
+"This is the inverse of [method char]."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:738
+msgid ""
+"Parse JSON text to a Variant. (Use [method typeof] to check if the Variant's "
+"type is what you expect.)\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, parsing a JSON text will convert "
+"all numerical values to [float] types.\n"
+"[b]Note:[/b] JSON objects do not preserve key order like Godot dictionaries, "
+"thus, you should not rely on keys being in a certain order if a dictionary "
+"is constructed from JSON. In contrast, JSON arrays retain the order of their "
+"elements:\n"
+"[codeblock]\n"
+"var p = JSON.parse('[\"hello\", \"world\", \"!\"]')\n"
+"if typeof(p.result) == TYPE_ARRAY:\n"
+" print(p.result[0]) # Prints \"hello\"\n"
+"else:\n"
+" push_error(\"Unexpected results.\")\n"
+"[/codeblock]\n"
+"See also [JSON] for an alternative way to parse JSON text."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:759
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:142
+msgid ""
+"Converts a 2D point expressed in the polar coordinate system (a distance "
+"from the origin [code]r[/code] and an angle [code]th[/code]) to the "
+"cartesian coordinate system (X and Y axis)."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:770
+msgid ""
+"Returns the integer modulus of [code]a/b[/code] that wraps equally in "
+"positive and negative.\n"
+"[codeblock]\n"
+"var i = -6\n"
+"while i < 5:\n"
+" prints(i, posmod(i, 3))\n"
+" i += 1\n"
+"[/codeblock]\n"
+"Produces:\n"
+"[codeblock]\n"
+"-6 0\n"
+"-5 1\n"
+"-4 2\n"
+"-3 0\n"
+"-2 1\n"
+"-1 2\n"
+"0 0\n"
+"1 1\n"
+"2 2\n"
+"3 0\n"
+"4 1\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:801
+msgid ""
+"Returns the result of [code]x[/code] raised to the power of [code]y[/code].\n"
+"[codeblock]\n"
+"pow(2, 5) # Returns 32\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:813
+msgid ""
+"Returns a [Resource] from the filesystem located at [code]path[/code]. The "
+"resource is loaded during script parsing, i.e. is loaded with the script and "
+"[method preload] effectively acts as a reference to that resource. Note that "
+"the method requires a constant path. If you want to load a resource from a "
+"dynamic/variable path, use [method load].\n"
+"[b]Note:[/b] Resource paths can be obtained by right clicking on a resource "
+"in the Assets Panel and choosing \"Copy Path\" or by dragging the file from "
+"the FileSystem dock into the script.\n"
+"[codeblock]\n"
+"# Instance a scene.\n"
+"var diamond = preload(\"res://diamond.tscn\").instance()\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:825
+msgid ""
+"Converts one or more arguments to strings in the best way possible and "
+"prints them to the console.\n"
+"[codeblock]\n"
+"a = [1, 2, 3]\n"
+"print(\"a\", \"b\", a) # Prints ab[1, 2, 3]\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:836
+msgid "Like [method print], but prints only when used in debug mode."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:843
+msgid ""
+"Prints a stack track at code location, only works when running with debugger "
+"turned on.\n"
+"Output in the console would look something like this:\n"
+"[codeblock]\n"
+"Frame 0 - res://test.gd:16 in function '_process'\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:854
+msgid ""
+"Prints one or more arguments to strings in the best way possible to standard "
+"error line.\n"
+"[codeblock]\n"
+"printerr(\"prints to stderr\")\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:864
+msgid ""
+"Prints one or more arguments to strings in the best way possible to console. "
+"No newline is added at the end.\n"
+"[codeblock]\n"
+"printraw(\"A\")\n"
+"printraw(\"B\")\n"
+"# Prints AB\n"
+"[/codeblock]\n"
+"[b]Note:[/b] Due to limitations with Godot's built-in console, this only "
+"prints to the terminal. If you need to print in the editor, use another "
+"method, such as [method print]."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:877
+msgid ""
+"Prints one or more arguments to the console with a space between each "
+"argument.\n"
+"[codeblock]\n"
+"prints(\"A\", \"B\", \"C\") # Prints A B C\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:887
+msgid ""
+"Prints one or more arguments to the console with a tab between each "
+"argument.\n"
+"[codeblock]\n"
+"printt(\"A\", \"B\", \"C\") # Prints A B C\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:899
+msgid ""
+"Pushes an error message to Godot's built-in debugger and to the OS "
+"terminal.\n"
+"[codeblock]\n"
+"push_error(\"test error\") # Prints \"test error\" to debugger and terminal "
+"as error call\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:911
+msgid ""
+"Pushes a warning message to Godot's built-in debugger and to the OS "
+"terminal.\n"
+"[codeblock]\n"
+"push_warning(\"test warning\") # Prints \"test warning\" to debugger and "
+"terminal as warning call\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:923
+msgid ""
+"Converts an angle expressed in radians to degrees.\n"
+"[codeblock]\n"
+"rad2deg(0.523599) # Returns 30\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:937
+msgid ""
+"Random range, any floating point value between [code]from[/code] and "
+"[code]to[/code].\n"
+"[codeblock]\n"
+"prints(rand_range(0, 1), rand_range(0, 1)) # Prints e.g. 0.135591 0.405263\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:949
+msgid ""
+"Random from seed: pass a [code]seed[/code], and an array with both number "
+"and new seed is returned. \"Seed\" here refers to the internal state of the "
+"pseudo random number generator. The internal state of the current "
+"implementation is 64 bits."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:956
+msgid ""
+"Returns a random floating point value on the interval [code][0, 1][/code].\n"
+"[codeblock]\n"
+"randf() # Returns e.g. 0.375671\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:966
+msgid ""
+"Returns a random unsigned 32 bit integer. Use remainder to obtain a random "
+"value in the interval [code][0, N - 1][/code] (where N is smaller than "
+"2^32).\n"
+"[codeblock]\n"
+"randi() # Returns random integer between 0 and 2^32 - 1\n"
+"randi() % 20 # Returns random integer between 0 and 19\n"
+"randi() % 100 # Returns random integer between 0 and 99\n"
+"randi() % 100 + 1 # Returns random integer between 1 and 100\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:979
+msgid ""
+"Randomizes the seed (or the internal state) of the random number generator. "
+"Current implementation reseeds using a number based on time.\n"
+"[codeblock]\n"
+"func _ready():\n"
+" randomize()\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:990
+msgid ""
+"Returns an array with the given range. Range can be 1 argument N (0 to N-1), "
+"two arguments (initial, final-1) or three arguments (initial, final-1, "
+"increment).\n"
+"[codeblock]\n"
+"for i in range(4):\n"
+" print(i)\n"
+"for i in range(2, 5):\n"
+" print(i)\n"
+"for i in range(0, 6, 2):\n"
+" print(i)\n"
+"[/codeblock]\n"
+"Output:\n"
+"[codeblock]\n"
+"0\n"
+"1\n"
+"2\n"
+"3\n"
+"\n"
+"2\n"
+"3\n"
+"4\n"
+"\n"
+"0\n"
+"2\n"
+"4\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1030
+msgid ""
+"Maps a [code]value[/code] from range [code][istart, istop][/code] to [code]"
+"[ostart, ostop][/code].\n"
+"[codeblock]\n"
+"range_lerp(75, 0, 100, -1, 1) # Returns 0.5\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1042
+msgid ""
+"Rounds [code]s[/code] to the nearest whole number, with halfway cases "
+"rounded away from zero.\n"
+"[codeblock]\n"
+"round(2.6) # Returns 3\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1054
+msgid ""
+"Sets seed for the random number generator.\n"
+"[codeblock]\n"
+"my_seed = \"Godot Rocks\"\n"
+"seed(my_seed.hash())\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1067
+msgid ""
+"Returns the sign of [code]s[/code]: -1 or 1. Returns 0 if [code]s[/code] is "
+"0.\n"
+"[codeblock]\n"
+"sign(-6) # Returns -1\n"
+"sign(0) # Returns 0\n"
+"sign(6) # Returns 1\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1081
+msgid ""
+"Returns the sine of angle [code]s[/code] in radians.\n"
+"[codeblock]\n"
+"sin(0.523599) # Returns 0.5\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1093
+msgid ""
+"Returns the hyperbolic sine of [code]s[/code].\n"
+"[codeblock]\n"
+"a = log(2.0) # Returns 0.693147\n"
+"sinh(a) # Returns 0.75\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1110
+msgid ""
+"Returns the result of smoothly interpolating the value of [code]s[/code] "
+"between [code]0[/code] and [code]1[/code], based on the where [code]s[/code] "
+"lies with respect to the edges [code]from[/code] and [code]to[/code].\n"
+"The return value is [code]0[/code] if [code]s <= from[/code], and [code]1[/"
+"code] if [code]s >= to[/code]. If [code]s[/code] lies between [code]from[/"
+"code] and [code]to[/code], the returned value follows an S-shaped curve that "
+"maps [code]s[/code] between [code]0[/code] and [code]1[/code].\n"
+"This S-shaped curve is the cubic Hermite interpolator, given by [code]f(s) = "
+"3*s^2 - 2*s^3[/code].\n"
+"[codeblock]\n"
+"smoothstep(0, 2, -5.0) # Returns 0.0\n"
+"smoothstep(0, 2, 0.5) # Returns 0.15625\n"
+"smoothstep(0, 2, 1.0) # Returns 0.5\n"
+"smoothstep(0, 2, 2.0) # Returns 1.0\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1127
+msgid ""
+"Returns the square root of [code]s[/code], where [code]s[/code] is a non-"
+"negative number.\n"
+"[codeblock]\n"
+"sqrt(9) # Returns 3\n"
+"[/codeblock]\n"
+"[b]Note:[/b]Negative values of [code]s[/code] return NaN. If you need "
+"negative inputs, use [code]System.Numerics.Complex[/code] in C#."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1140
+msgid ""
+"Returns the position of the first non-zero digit, after the decimal point. "
+"Note that the maximum return value is 10, which is a design decision in the "
+"implementation.\n"
+"[codeblock]\n"
+"# n is 0\n"
+"n = step_decimals(5)\n"
+"# n is 4\n"
+"n = step_decimals(1.0005)\n"
+"# n is 9\n"
+"n = step_decimals(0.000000005)\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1159
+msgid ""
+"Snaps float value [code]s[/code] to a given [code]step[/code]. This can also "
+"be used to round a floating point number to an arbitrary number of "
+"decimals.\n"
+"[codeblock]\n"
+"stepify(100, 32) # Returns 96\n"
+"stepify(3.14159, 0.01) # Returns 3.14\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1170
+msgid ""
+"Converts one or more arguments to string in the best way possible.\n"
+"[codeblock]\n"
+"var a = [10, 20, 30]\n"
+"var b = str(a);\n"
+"len(a) # Returns 3\n"
+"len(b) # Returns 12\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1185
+msgid ""
+"Converts a formatted string that was returned by [method var2str] to the "
+"original value.\n"
+"[codeblock]\n"
+"a = '{ \"a\": 1, \"b\": 2 }'\n"
+"b = str2var(a)\n"
+"print(b[\"a\"]) # Prints 1\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1199
+msgid ""
+"Returns the tangent of angle [code]s[/code] in radians.\n"
+"[codeblock]\n"
+"tan(deg2rad(45)) # Returns 1\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1211
+msgid ""
+"Returns the hyperbolic tangent of [code]s[/code].\n"
+"[codeblock]\n"
+"a = log(2.0) # Returns 0.693147\n"
+"tanh(a) # Returns 0.6\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1224
+msgid ""
+"Converts a [Variant] [code]var[/code] to JSON text and return the result. "
+"Useful for serializing data to store or send over the network.\n"
+"[codeblock]\n"
+"# Both numbers below are integers.\n"
+"a = { \"a\": 1, \"b\": 2 }\n"
+"b = to_json(a)\n"
+"print(b) # {\"a\":1, \"b\":2}\n"
+"# Both numbers above are floats, even if they display without any decimal "
+"places.\n"
+"[/codeblock]\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, converting a [Variant] to JSON "
+"text will convert all numerical values to [float] types.\n"
+"See also [JSON] for an alternative way to convert a [Variant] to JSON text."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1242
+msgid ""
+"Returns whether the given class exists in [ClassDB].\n"
+"[codeblock]\n"
+"type_exists(\"Sprite2D\") # Returns true\n"
+"type_exists(\"Variant\") # Returns false\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1255
+msgid ""
+"Returns the internal type of the given Variant object, using the [enum "
+"Variant.Type] values.\n"
+"[codeblock]\n"
+"p = parse_json('[\"a\", \"b\", \"c\"]')\n"
+"if typeof(p) == TYPE_ARRAY:\n"
+" print(p[0]) # Prints a\n"
+"else:\n"
+" print(\"unexpected results\")\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1271
+msgid ""
+"Checks that [code]json[/code] is valid JSON data. Returns an empty string if "
+"valid, or an error message otherwise.\n"
+"[codeblock]\n"
+"j = to_json([1, 2, 3])\n"
+"v = validate_json(j)\n"
+"if not v:\n"
+" print(\"Valid JSON.\")\n"
+"else:\n"
+" push_error(\"Invalid JSON: \" + v)\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1290
+msgid ""
+"Encodes a variable value to a byte array. When [code]full_objects[/code] is "
+"[code]true[/code] encoding objects is allowed (and can potentially include "
+"code)."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1299
+msgid ""
+"Converts a Variant [code]var[/code] to a formatted string that can later be "
+"parsed using [method str2var].\n"
+"[codeblock]\n"
+"a = { \"a\": 1, \"b\": 2 }\n"
+"print(var2str(a))\n"
+"[/codeblock]\n"
+"prints\n"
+"[codeblock]\n"
+"{\n"
+"\"a\": 1,\n"
+"\"b\": 2\n"
+"}\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1319
+msgid ""
+"Returns a weak reference to an object.\n"
+"A weak reference to an object is not enough to keep the object alive: when "
+"the only remaining references to a referent are weak references, garbage "
+"collection is free to destroy the referent and reuse its memory for "
+"something else. However, until the object is actually destroyed the weak "
+"reference may return the object even if there are no strong references to it."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1333
+msgid ""
+"Wraps float [code]value[/code] between [code]min[/code] and [code]max[/"
+"code].\n"
+"Usable for creating loop-alike behavior or infinite surfaces.\n"
+"[codeblock]\n"
+"# Infinite loop between 5.0 and 9.9\n"
+"value = wrapf(value + 0.1, 5.0, 10.0)\n"
+"[/codeblock]\n"
+"[codeblock]\n"
+"# Infinite rotation (in radians)\n"
+"angle = wrapf(angle + 0.1, 0.0, TAU)\n"
+"[/codeblock]\n"
+"[codeblock]\n"
+"# Infinite rotation (in radians)\n"
+"angle = wrapf(angle + 0.1, -PI, PI)\n"
+"[/codeblock]\n"
+"[b]Note:[/b] If [code]min[/code] is [code]0[/code], this is equivalent to "
+"[method fposmod], so prefer using that instead.\n"
+"[code]wrapf[/code] is more flexible than using the [method fposmod] approach "
+"by giving the user control over the minimum value."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1361
+msgid ""
+"Wraps integer [code]value[/code] between [code]min[/code] and [code]max[/"
+"code].\n"
+"Usable for creating loop-alike behavior or infinite surfaces.\n"
+"[codeblock]\n"
+"# Infinite loop between 5 and 9\n"
+"frame = wrapi(frame + 1, 5, 10)\n"
+"[/codeblock]\n"
+"[codeblock]\n"
+"# result is -2\n"
+"var result = wrapi(-6, -5, -1)\n"
+"[/codeblock]\n"
+"[b]Note:[/b] If [code]min[/code] is [code]0[/code], this is equivalent to "
+"[method posmod], so prefer using that instead.\n"
+"[code]wrapi[/code] is more flexible than using the [method posmod] approach "
+"by giving the user control over the minimum value."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1378
+msgid ""
+"Constant that represents how many times the diameter of a circle fits around "
+"its perimeter. This is equivalent to [code]TAU / 2[/code]."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1381
+msgid "The circle constant, the circumference of the unit circle in radians."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1384
+msgid "Positive infinity. For negative infinity, use -INF."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1387
+msgid ""
+"\"Not a Number\", an invalid value. [code]NaN[/code] has special properties, "
+"including that it is not equal to itself. It is output by some invalid "
+"operations, such as dividing zero by zero."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:4
+msgid "Global scope constants and variables."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:7
+msgid ""
+"Global scope constants and variables. This is all that resides in the "
+"globals, constants regarding error codes, keycodes, property hints, etc.\n"
+"Singletons are also documented here, since they can be accessed from "
+"anywhere."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:16
+msgid "The [AudioServer] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:19
+msgid "The [CameraServer] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:22
+msgid "The [ClassDB] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:25
+msgid "The [DisplayServer] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:28
+msgid "The [Engine] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:31
+msgid "The [Geometry2D] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:34
+msgid "The [Geometry3D] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:37
+msgid "The [GodotSharp] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:40
+msgid "The [IP] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:43
+msgid "The [Input] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:46
+msgid "The [InputMap] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:49
+msgid "The [JSON] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:52
+msgid ""
+"The [JavaClassWrapper] singleton.\n"
+"[b]Note:[/b] Only implemented on Android."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:56
+msgid ""
+"The [JavaScript] singleton.\n"
+"[b]Note:[/b] Only implemented on HTML5."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:60
+msgid "The [Marshalls] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:63
+msgid "The [NavigationMeshGenerator] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:66 doc/classes/@GlobalScope.xml:69
+msgid "The [NavigationServer2D] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:72
+msgid "The [OS] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:75
+msgid "The [Performance] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:78
+msgid "The [PhysicsServer2D] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:81
+msgid "The [PhysicsServer3D] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:84
+msgid "The [ProjectSettings] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:87
+msgid "The [RenderingServer] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:90
+msgid "The [ResourceLoader] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:93
+msgid "The [ResourceSaver] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:96
+msgid "The [TranslationServer] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:99
+msgid "The [VisualScriptEditor] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:102
+msgid "The [XRServer] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:107
+msgid "Left margin, usually used for [Control] or [StyleBox]-derived classes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:110
+msgid "Top margin, usually used for [Control] or [StyleBox]-derived classes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:113
+msgid "Right margin, usually used for [Control] or [StyleBox]-derived classes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:116
+msgid ""
+"Bottom margin, usually used for [Control] or [StyleBox]-derived classes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:119
+msgid "Top-left corner."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:122
+msgid "Top-right corner."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:125
+msgid "Bottom-right corner."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:128
+msgid "Bottom-left corner."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:131
+msgid ""
+"General vertical alignment, usually used for [Separator], [ScrollBar], "
+"[Slider], etc."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:134
+msgid ""
+"General horizontal alignment, usually used for [Separator], [ScrollBar], "
+"[Slider], etc."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:137
+msgid "Horizontal left alignment, usually for text-derived classes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:140
+msgid "Horizontal center alignment, usually for text-derived classes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:143
+msgid "Horizontal right alignment, usually for text-derived classes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:146
+msgid "Vertical top alignment, usually for text-derived classes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:149
+msgid "Vertical center alignment, usually for text-derived classes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:152
+msgid "Vertical bottom alignment, usually for text-derived classes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:155
+msgid "Keycodes with this bit applied are non-printable."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:158
+msgid "Escape key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:161
+msgid "Tab key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:164
+msgid "Shift + Tab key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:167
+msgid "Backspace key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:170
+msgid "Return key (on the main keyboard)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:173
+msgid "Enter key on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:176
+msgid "Insert key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:179
+msgid "Delete key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:182
+msgid "Pause key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:185
+msgid "Print Screen key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:188
+msgid "System Request key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:191
+msgid "Clear key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:194
+msgid "Home key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:197
+msgid "End key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:200
+msgid "Left arrow key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:203
+msgid "Up arrow key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:206
+msgid "Right arrow key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:209
+msgid "Down arrow key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:212
+msgid "Page Up key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:215
+msgid "Page Down key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:218
+msgid "Shift key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:221
+msgid "Control key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:224
+msgid "Meta key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:227
+msgid "Alt key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:230
+msgid "Caps Lock key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:233
+msgid "Num Lock key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:236
+msgid "Scroll Lock key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:239
+msgid "F1 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:242
+msgid "F2 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:245
+msgid "F3 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:248
+msgid "F4 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:251
+msgid "F5 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:254
+msgid "F6 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:257
+msgid "F7 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:260
+msgid "F8 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:263
+msgid "F9 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:266
+msgid "F10 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:269
+msgid "F11 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:272
+msgid "F12 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:275
+msgid "F13 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:278
+msgid "F14 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:281
+msgid "F15 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:284
+msgid "F16 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:287
+msgid "Multiply (*) key on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:290
+msgid "Divide (/) key on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:293
+msgid "Subtract (-) key on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:296
+msgid "Period (.) key on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:299
+msgid "Add (+) key on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:302
+msgid "Number 0 on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:305
+msgid "Number 1 on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:308
+msgid "Number 2 on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:311
+msgid "Number 3 on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:314
+msgid "Number 4 on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:317
+msgid "Number 5 on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:320
+msgid "Number 6 on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:323
+msgid "Number 7 on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:326
+msgid "Number 8 on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:329
+msgid "Number 9 on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:332
+msgid "Left Super key (Windows key)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:335
+msgid "Right Super key (Windows key)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:338
+msgid "Context menu key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:341
+msgid "Left Hyper key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:344
+msgid "Right Hyper key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:347
+msgid "Help key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:350
+msgid "Left Direction key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:353
+msgid "Right Direction key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:356
+msgid "Back key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:359
+msgid "Forward key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:362
+msgid "Stop key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:365
+msgid "Refresh key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:368
+msgid "Volume down key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:371
+msgid "Mute volume key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:374
+msgid "Volume up key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:377
+msgid "Bass Boost key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:380
+msgid "Bass up key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:383
+msgid "Bass down key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:386
+msgid "Treble up key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:389
+msgid "Treble down key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:392
+msgid "Media play key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:395
+msgid "Media stop key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:398
+msgid "Previous song key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:401
+msgid "Next song key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:404
+msgid "Media record key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:407
+msgid "Home page key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:410
+msgid "Favorites key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:413
+msgid "Search key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:416
+msgid "Standby key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:419
+msgid "Open URL / Launch Browser key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:422
+msgid "Launch Mail key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:425
+msgid "Launch Media key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:428
+msgid "Launch Shortcut 0 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:431
+msgid "Launch Shortcut 1 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:434
+msgid "Launch Shortcut 2 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:437
+msgid "Launch Shortcut 3 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:440
+msgid "Launch Shortcut 4 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:443
+msgid "Launch Shortcut 5 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:446
+msgid "Launch Shortcut 6 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:449
+msgid "Launch Shortcut 7 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:452
+msgid "Launch Shortcut 8 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:455
+msgid "Launch Shortcut 9 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:458
+msgid "Launch Shortcut A key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:461
+msgid "Launch Shortcut B key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:464
+msgid "Launch Shortcut C key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:467
+msgid "Launch Shortcut D key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:470
+msgid "Launch Shortcut E key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:473
+msgid "Launch Shortcut F key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:476
+msgid "Unknown key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:479
+msgid "Space key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:482
+msgid "! key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:485
+msgid "\" key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:488
+msgid "# key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:491
+msgid "$ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:494
+msgid "% key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:497
+msgid "& key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:500
+msgid "' key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:503
+msgid "( key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:506
+msgid ") key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:509
+msgid "* key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:512
+msgid "+ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:515
+msgid ", key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:518
+msgid "- key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:521
+msgid ". key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:524
+msgid "/ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:527
+msgid "Number 0."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:530
+msgid "Number 1."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:533
+msgid "Number 2."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:536
+msgid "Number 3."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:539
+msgid "Number 4."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:542
+msgid "Number 5."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:545
+msgid "Number 6."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:548
+msgid "Number 7."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:551
+msgid "Number 8."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:554
+msgid "Number 9."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:557
+msgid ": key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:560
+msgid "; key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:563
+msgid "< key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:566
+msgid "= key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:569
+msgid "> key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:572
+msgid "? key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:575
+msgid "@ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:578
+msgid "A key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:581
+msgid "B key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:584
+msgid "C key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:587
+msgid "D key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:590
+msgid "E key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:593
+msgid "F key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:596
+msgid "G key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:599
+msgid "H key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:602
+msgid "I key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:605
+msgid "J key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:608
+msgid "K key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:611
+msgid "L key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:614
+msgid "M key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:617
+msgid "N key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:620
+msgid "O key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:623
+msgid "P key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:626
+msgid "Q key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:629
+msgid "R key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:632
+msgid "S key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:635
+msgid "T key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:638
+msgid "U key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:641
+msgid "V key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:644
+msgid "W key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:647
+msgid "X key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:650
+msgid "Y key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:653
+msgid "Z key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:656
+msgid "[ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:659
+msgid "\\ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:662
+msgid "] key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:665
+msgid "^ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:668
+msgid "_ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:671
+msgid "` key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:674
+msgid "{ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:677
+msgid "| key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:680
+msgid "} key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:683
+msgid "~ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:686
+msgid "Non-breakable space key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:689
+msgid "¡ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:692
+msgid "¢ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:695
+msgid "£ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:698
+msgid "¤ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:701
+msgid "Â¥ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:704
+msgid "¦ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:707
+msgid "§ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:710
+msgid "¨ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:713
+msgid "© key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:716
+msgid "ª key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:719
+msgid "« key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:722
+msgid "¬ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:725
+msgid "Soft hyphen key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:728
+msgid "® key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:731
+msgid "¯ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:734
+msgid "° key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:737
+msgid "± key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:740
+msgid "² key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:743
+msgid "³ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:746
+msgid "´ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:749
+msgid "µ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:752
+msgid "¶ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:755
+msgid "· key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:758
+msgid "¸ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:761
+msgid "¹ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:764
+msgid "º key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:767
+msgid "» key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:770
+msgid "¼ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:773
+msgid "½ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:776
+msgid "¾ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:779
+msgid "¿ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:782
+msgid "À key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:785
+msgid "Ã key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:788
+msgid "Â key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:791
+msgid "Ã key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:794
+msgid "Ä key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:797
+msgid "Ã… key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:800
+msgid "Æ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:803
+msgid "Ç key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:806
+msgid "È key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:809
+msgid "É key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:812
+msgid "Ê key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:815
+msgid "Ë key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:818
+msgid "Ì key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:821
+msgid "Ã key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:824
+msgid "ÃŽ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:827
+msgid "Ã key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:830
+msgid "Ã key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:833
+msgid "Ñ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:836
+msgid "Ã’ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:839
+msgid "Ó key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:842
+msgid "Ô key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:845
+msgid "Õ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:848
+msgid "Ö key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:851
+msgid "× key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:854
+msgid "Ø key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:857
+msgid "Ù key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:860
+msgid "Ú key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:863
+msgid "Û key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:866
+msgid "Ü key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:869
+msgid "Ã key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:872
+msgid "Þ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:875
+msgid "ß key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:878
+msgid "÷ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:881
+msgid "ÿ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:884
+msgid "Key Code mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:887
+msgid "Modifier key mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:890
+msgid "Shift key mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:893
+msgid "Alt key mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:896
+msgid "Meta key mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:899
+msgid "Ctrl key mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:902
+msgid ""
+"Command key mask. On macOS, this is equivalent to [constant KEY_MASK_META]. "
+"On other platforms, this is equivalent to [constant KEY_MASK_CTRL]. This "
+"mask should be preferred to [constant KEY_MASK_META] or [constant "
+"KEY_MASK_CTRL] for system shortcuts as it handles all platforms correctly."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:905
+msgid "Keypad key mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:908
+msgid "Group Switch key mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:911
+msgid "Left mouse button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:914
+msgid "Right mouse button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:917
+msgid "Middle mouse button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:920
+msgid "Extra mouse button 1 (only present on some mice)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:923
+msgid "Extra mouse button 2 (only present on some mice)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:926
+msgid "Mouse wheel up."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:929
+msgid "Mouse wheel down."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:932
+msgid "Mouse wheel left button (only present on some mice)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:935
+msgid "Mouse wheel right button (only present on some mice)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:938
+msgid "Left mouse button mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:941
+msgid "Right mouse button mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:944
+msgid "Middle mouse button mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:947
+msgid "Extra mouse button 1 mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:950
+msgid "Extra mouse button 2 mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:953
+msgid "An invalid game controller button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:956
+msgid "Game controller SDL button A."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:959
+msgid "Game controller SDL button B."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:962
+msgid "Game controller SDL button X."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:965
+msgid "Game controller SDL button Y."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:968
+msgid "Game controller SDL back button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:971
+msgid "Game controller SDL guide button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:974
+msgid "Game controller SDL start button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:977
+msgid "Game controller SDL left stick button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:980
+msgid "Game controller SDL right stick button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:983
+msgid "Game controller SDL left shoulder button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:986
+msgid "Game controller SDL right shoulder button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:989
+msgid "Game controller SDL D-pad up button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:992
+msgid "Game controller SDL D-pad down button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:995
+msgid "Game controller SDL D-pad left button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:998
+msgid "Game controller SDL D-pad right button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1001
+msgid "The number of SDL game controller buttons."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1004
+msgid "Sony DualShock controller X button maps to SDL button A."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1007
+msgid "Sony DualShock controller cross button maps to SDL button A."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1010
+msgid "Sony DualShock controller circle button maps to SDL button B."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1013
+msgid "Sony DualShock controller square button maps to SDL button X."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1016
+msgid "Sony DualShock controller triangle button maps to SDL button Y."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1019
+msgid "Sony DualShock controller select button maps to SDL back button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1022
+msgid "Sony DualShock controller start button maps to SDL start button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1025
+msgid "Sony DualShock controller PS button maps to SDL guide button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1028
+msgid "Sony DualShock controller L1 button maps to SDL left shoulder button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1031
+msgid "Sony DualShock controller R1 button maps to SDL right shoulder button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1034
+msgid "Sony DualShock controller L3 button maps to SDL left stick button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1037
+msgid "Sony DualShock controller R3 button maps to SDL right stick button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1040
+msgid "Xbox game controller A button maps to SDL button A."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1043
+msgid "Xbox game controller B button maps to SDL button B."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1046
+msgid "Xbox game controller X button maps to SDL button X."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1049
+msgid "Xbox game controller Y button maps to SDL button Y."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1052
+msgid "Xbox game controller back button maps to SDL back button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1055
+msgid "Xbox game controller start button maps to SDL start button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1058
+msgid "Xbox game controller home button maps to SDL guide button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1061
+msgid "Xbox game controller left stick button maps to SDL left stick button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1064
+msgid "Xbox game controller right stick button maps to SDL right stick button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1067
+msgid ""
+"Xbox game controller left bumper button maps to SDL left shoulder button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1070
+msgid ""
+"Xbox game controller right bumper button maps to SDL right shoulder button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1073
+msgid "The maximum number of game controller buttons."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1076
+msgid "An invalid game controller axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1079
+msgid "Game controller left joystick x-axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1082
+msgid "Game controller left joystick y-axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1085
+msgid "Game controller right joystick x-axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1088
+msgid "Game controller right joystick y-axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1091
+msgid "Game controller left trigger axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1094
+msgid "Game controller right trigger axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1097
+msgid "The number of SDL game controller axes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1100
+msgid "Game controller joystick 0 x-axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1103
+msgid "Game controller joystick 0 y-axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1106
+msgid "Game controller joystick 1 x-axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1109
+msgid "Game controller joystick 1 y-axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1112
+msgid "Game controller joystick 2 x-axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1115
+msgid "Game controller joystick 2 y-axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1118
+msgid "Game controller joystick 3 x-axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1121
+msgid "Game controller joystick 3 y-axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1124
+msgid "Game controller joystick 4 x-axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1127
+msgid "Game controller joystick 4 y-axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1130
+msgid "The maximum number of game controller axes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1133
+msgid "MIDI note OFF message."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1136
+msgid "MIDI note ON message."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1139
+msgid "MIDI aftertouch message."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1142
+msgid "MIDI control change message."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1145
+msgid "MIDI program change message."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1148
+msgid "MIDI channel pressure message."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1151
+msgid "MIDI pitch bend message."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1154
+msgid ""
+"Methods that return [enum Error] return [constant OK] when no error "
+"occurred. Note that many functions don't return an error code but will print "
+"error messages to standard output.\n"
+"Since [constant OK] has value 0, and all other failure codes are positive "
+"integers, it can also be used in boolean checks, e.g.:\n"
+"[codeblock]\n"
+"var err = method_that_returns_error()\n"
+"if err != OK:\n"
+" print(\"Failure!\")\n"
+"# Or, equivalent:\n"
+"if err:\n"
+" print(\"Still failing!\")\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1166
+msgid "Generic error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1169
+msgid "Unavailable error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1172
+msgid "Unconfigured error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1175
+msgid "Unauthorized error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1178
+msgid "Parameter range error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1181
+msgid "Out of memory (OOM) error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1184
+msgid "File: Not found error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1187
+msgid "File: Bad drive error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1190
+msgid "File: Bad path error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1193
+msgid "File: No permission error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1196
+msgid "File: Already in use error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1199
+msgid "File: Can't open error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1202
+msgid "File: Can't write error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1205
+msgid "File: Can't read error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1208
+msgid "File: Unrecognized error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1211
+msgid "File: Corrupt error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1214
+msgid "File: Missing dependencies error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1217
+msgid "File: End of file (EOF) error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1220
+msgid "Can't open error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1223
+msgid "Can't create error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1226
+msgid "Query failed error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1229
+msgid "Already in use error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1232
+msgid "Locked error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1235
+msgid "Timeout error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1238
+msgid "Can't connect error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1241
+msgid "Can't resolve error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1244
+msgid "Connection error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1247
+msgid "Can't acquire resource error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1250
+msgid "Can't fork process error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1253
+msgid "Invalid data error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1256
+msgid "Invalid parameter error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1259
+msgid "Already exists error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1262
+msgid "Does not exist error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1265
+msgid "Database: Read error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1268
+msgid "Database: Write error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1271
+msgid "Compilation failed error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1274
+msgid "Method not found error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1277
+msgid "Linking failed error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1280
+msgid "Script failed error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1283
+msgid "Cycling link (import cycle) error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1286
+msgid "Invalid declaration error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1289
+msgid "Duplicate symbol error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1292
+msgid "Parse error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1295
+msgid "Busy error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1298
+msgid "Skip error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1301
+msgid "Help error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1304
+msgid "Bug error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1307
+msgid ""
+"Printer on fire error. (This is an easter egg, no engine methods return this "
+"error code.)"
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1310
+msgid "No hint for the edited property."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1313
+msgid ""
+"Hints that an integer or float property should be within a range specified "
+"via the hint string [code]\"min,max\"[/code] or [code]\"min,max,step\"[/"
+"code]. The hint string can optionally include [code]\"or_greater\"[/code] "
+"and/or [code]\"or_lesser\"[/code] to allow manual input going respectively "
+"above the max or below the min values. Example: [code]\"-360,360,1,"
+"or_greater,or_lesser\"[/code]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1316
+msgid ""
+"Hints that an integer or float property should be within an exponential "
+"range specified via the hint string [code]\"min,max\"[/code] or [code]\"min,"
+"max,step\"[/code]. The hint string can optionally include [code]\"or_greater"
+"\"[/code] and/or [code]\"or_lesser\"[/code] to allow manual input going "
+"respectively above the max or below the min values. Example: "
+"[code]\"0.01,100,0.01,or_greater\"[/code]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1319
+msgid ""
+"Hints that an integer, float or string property is an enumerated value to "
+"pick in a list specified via a hint string such as [code]\"Hello,Something,"
+"Else\"[/code]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1322
+msgid ""
+"Hints that a float property should be edited via an exponential easing "
+"function. The hint string can include [code]\"attenuation\"[/code] to flip "
+"the curve horizontally and/or [code]\"inout\"[/code] to also include in/out "
+"easing."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1325 doc/classes/@GlobalScope.xml:1328
+msgid "Deprecated hint, unused."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1331
+msgid ""
+"Hints that an integer property is a bitmask with named bit flags. For "
+"example, to allow toggling bits 0, 1, 2 and 4, the hint could be something "
+"like [code]\"Bit0,Bit1,Bit2,,Bit4\"[/code]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1334
+msgid ""
+"Hints that an integer property is a bitmask using the optionally named 2D "
+"render layers."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1337
+msgid ""
+"Hints that an integer property is a bitmask using the optionally named 2D "
+"physics layers."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1340
+msgid ""
+"Hints that an integer property is a bitmask using the optionally named 3D "
+"render layers."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1343
+msgid ""
+"Hints that an integer property is a bitmask using the optionally named 3D "
+"physics layers."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1346
+msgid ""
+"Hints that a 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 [code]\"*.png,*.jpg\"[/code]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1349
+msgid ""
+"Hints that a string property is a path to a directory. Editing it will show "
+"a file dialog for picking the path."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1352
+msgid ""
+"Hints that a string property is an absolute path to a file outside the "
+"project folder. Editing it will show a file dialog for picking the path. The "
+"hint string can be a set of filters with wildcards like [code]\"*.png,*.jpg"
+"\"[/code]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1355
+msgid ""
+"Hints that a string property is an absolute path to a directory outside the "
+"project folder. Editing it will show a file dialog for picking the path."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1358
+msgid ""
+"Hints that a property is an instance of a [Resource]-derived type, "
+"optionally specified via the hint string (e.g. [code]\"Texture2D\"[/code]). "
+"Editing it will show a popup menu of valid resource types to instantiate."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1361
+msgid ""
+"Hints that a string property is text with line breaks. Editing it will show "
+"a text input field where line breaks can be typed."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1364
+msgid ""
+"Hints that a string property should have a placeholder text visible on its "
+"input field, whenever the property is empty. The hint string is the "
+"placeholder text to use."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1367
+msgid ""
+"Hints that a color property should be edited without changing its alpha "
+"component, i.e. only R, G and B channels are edited."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1370
+msgid "Hints that an image is compressed using lossy compression."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1373
+msgid "Hints that an image is compressed using lossless compression."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1376
+msgid "The property is serialized and saved in the scene file (default)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1379
+msgid "The property is shown in the editor inspector (default)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1382 doc/classes/@GlobalScope.xml:1385
+msgid "Deprecated usage flag, unused."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1388
+msgid "The property can be checked in the editor inspector."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1391
+msgid "The property is checked in the editor inspector."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1394
+msgid "The property is a translatable string."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1397
+msgid "Used to group properties together in the editor."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1400
+msgid "Used to categorize properties together in the editor."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1403
+msgid ""
+"Used to group properties together in the editor in a subgroup (under a "
+"group)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1406
+msgid "The property does not save its state in [PackedScene]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1409
+msgid "Editing the property prompts the user for restarting the editor."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1412
+msgid ""
+"The property is a script variable which should be serialized and saved in "
+"the scene file."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1415
+msgid "Default usage (storage, editor and network)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1418
+msgid ""
+"Default usage for translatable strings (storage, editor, network and "
+"internationalized)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1421
+msgid ""
+"Default usage but without showing the property in the editor (storage, "
+"network)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1424
+msgid "Flag for a normal method."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1427
+msgid "Flag for an editor method."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1430 doc/classes/@GlobalScope.xml:1436
+#: doc/classes/@GlobalScope.xml:1442
+msgid "Deprecated method flag, unused."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1433
+msgid "Flag for a constant method."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1439
+msgid "Flag for a virtual method."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1445
+msgid "Default method flags."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1448
+msgid "Variable is [code]null[/code]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1451
+msgid "Variable is of type [bool]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1454
+msgid "Variable is of type [int]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1457
+msgid "Variable is of type [float] (real)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1460
+msgid "Variable is of type [String]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1463
+msgid "Variable is of type [Vector2]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1466
+msgid "Variable is of type [Vector2i]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1469
+msgid "Variable is of type [Rect2]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1472
+msgid "Variable is of type [Rect2i]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1475
+msgid "Variable is of type [Vector3]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1478
+msgid "Variable is of type [Vector3i]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1481
+msgid "Variable is of type [Transform2D]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1484
+msgid "Variable is of type [Plane]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1487
+msgid "Variable is of type [Quat]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1490
+msgid "Variable is of type [AABB]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1493
+msgid "Variable is of type [Basis]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1496
+msgid "Variable is of type [Transform]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1499
+msgid "Variable is of type [Color]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1502
+msgid "Variable is of type [StringName]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1505
+msgid "Variable is of type [NodePath]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1508
+msgid "Variable is of type [RID]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1511
+msgid "Variable is of type [Object]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1514
+msgid "Variable is of type [Callable]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1517
+msgid "Variable is of type [Signal]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1520
+msgid "Variable is of type [Dictionary]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1523
+msgid "Variable is of type [Array]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1526
+msgid "Variable is of type [PackedByteArray]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1529
+msgid "Variable is of type [PackedInt32Array]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1532
+msgid "Variable is of type [PackedInt64Array]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1535
+msgid "Variable is of type [PackedFloat32Array]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1538
+msgid "Variable is of type [PackedFloat64Array]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1541
+msgid "Variable is of type [PackedStringArray]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1544
+msgid "Variable is of type [PackedVector2Array]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1547
+msgid "Variable is of type [PackedVector3Array]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1550
+msgid "Variable is of type [PackedColorArray]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1553
+msgid "Represents the size of the [enum Variant.Type] enum."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1556
+msgid "Equality operator ([code]==[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1559
+msgid "Inequality operator ([code]!=[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1562
+msgid "Less than operator ([code]<[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1565
+msgid "Less than or equal operator ([code]<=[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1568
+msgid "Greater than operator ([code]>[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1571
+msgid "Greater than or equal operator ([code]>=[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1574
+msgid "Addition operator ([code]+[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1577
+msgid "Subtraction operator ([code]-[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1580
+msgid "Multiplication operator ([code]*[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1583
+msgid "Division operator ([code]/[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1586
+msgid "Unary negation operator ([code]-[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1589
+msgid "Unary plus operator ([code]+[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1592
+msgid "Remainder/modulo operator ([code]%[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1595
+msgid "String concatenation operator ([code]+[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1598
+msgid "Left shift operator ([code]<<[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1601
+msgid "Right shift operator ([code]>>[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1604
+msgid "Bitwise AND operator ([code]&[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1607
+msgid "Bitwise OR operator ([code]|[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1610
+msgid "Bitwise XOR operator ([code]^[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1613
+msgid "Bitwise NOT operator ([code]~[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1616
+msgid "Logical AND operator ([code]and[/code] or [code]&&[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1619
+msgid "Logical OR operator ([code]or[/code] or [code]||[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1622
+msgid "Logical XOR operator (not implemented in GDScript)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1625
+msgid "Logical NOT operator ([code]not[/code] or [code]![/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1628
+msgid "Logical IN operator ([code]in[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1631
+msgid "Represents the size of the [enum Variant.Operator] enum."
+msgstr ""
+
+#: doc/classes/AABB.xml:4
+msgid "Axis-Aligned Bounding Box."
+msgstr ""
+
+#: doc/classes/AABB.xml:7
+msgid ""
+"AABB consists of a position, a size, and several utility functions. It is "
+"typically used for fast overlap tests."
+msgstr ""
+
+#: doc/classes/AABB.xml:10 doc/classes/Plane.xml:10 doc/classes/Rect2.xml:11
+#: doc/classes/Rect2i.xml:11 doc/classes/Transform.xml:11
+#: doc/classes/Vector2.xml:12 doc/classes/Vector2i.xml:12
+#: doc/classes/Vector3.xml:12 doc/classes/Vector3i.xml:12
+msgid "https://docs.godotengine.org/en/latest/tutorials/math/index.html"
+msgstr ""
+
+#: doc/classes/AABB.xml:21
+msgid "Constructs an [AABB] from a position and size."
+msgstr ""
+
+#: doc/classes/AABB.xml:28
+msgid ""
+"Returns an AABB with equivalent position and size, modified so that the most-"
+"negative corner is the origin and the size is positive."
+msgstr ""
+
+#: doc/classes/AABB.xml:37
+msgid ""
+"Returns [code]true[/code] if this [AABB] completely encloses another one."
+msgstr ""
+
+#: doc/classes/AABB.xml:46
+msgid "Returns this [AABB] expanded to include a given point."
+msgstr ""
+
+#: doc/classes/AABB.xml:53
+msgid "Returns the volume of the [AABB]."
+msgstr ""
+
+#: doc/classes/AABB.xml:62
+msgid "Gets the position of the 8 endpoints of the [AABB] in space."
+msgstr ""
+
+#: doc/classes/AABB.xml:69
+msgid "Returns the normalized longest axis of the [AABB]."
+msgstr ""
+
+#: doc/classes/AABB.xml:76
+msgid ""
+"Returns the index of the longest axis of the [AABB] (according to "
+"[Vector3]'s [code]AXIS_*[/code] constants)."
+msgstr ""
+
+#: doc/classes/AABB.xml:83
+msgid "Returns the scalar length of the longest axis of the [AABB]."
+msgstr ""
+
+#: doc/classes/AABB.xml:90
+msgid "Returns the normalized shortest axis of the [AABB]."
+msgstr ""
+
+#: doc/classes/AABB.xml:97
+msgid ""
+"Returns the index of the shortest axis of the [AABB] (according to "
+"[Vector3]::AXIS* enum)."
+msgstr ""
+
+#: doc/classes/AABB.xml:104
+msgid "Returns the scalar length of the shortest axis of the [AABB]."
+msgstr ""
+
+#: doc/classes/AABB.xml:113
+msgid ""
+"Returns the support point in a given direction. This is useful for collision "
+"detection algorithms."
+msgstr ""
+
+#: doc/classes/AABB.xml:122
+msgid ""
+"Returns a copy of the [AABB] grown a given amount of units towards all the "
+"sides."
+msgstr ""
+
+#: doc/classes/AABB.xml:129
+msgid "Returns [code]true[/code] if the [AABB] is flat or empty."
+msgstr ""
+
+#: doc/classes/AABB.xml:136
+msgid "Returns [code]true[/code] if the [AABB] is empty."
+msgstr ""
+
+#: doc/classes/AABB.xml:145
+msgid "Returns [code]true[/code] if the [AABB] contains a point."
+msgstr ""
+
+#: doc/classes/AABB.xml:154
+msgid ""
+"Returns the intersection between two [AABB]. An empty AABB (size 0,0,0) is "
+"returned on failure."
+msgstr ""
+
+#: doc/classes/AABB.xml:163
+msgid "Returns [code]true[/code] if the [AABB] overlaps with another."
+msgstr ""
+
+#: doc/classes/AABB.xml:172
+msgid "Returns [code]true[/code] if the [AABB] is on both sides of a plane."
+msgstr ""
+
+#: doc/classes/AABB.xml:183
+msgid ""
+"Returns [code]true[/code] if the [AABB] intersects the line segment between "
+"[code]from[/code] and [code]to[/code]."
+msgstr ""
+
+#: doc/classes/AABB.xml:192
+msgid ""
+"Returns [code]true[/code] if this [AABB] and [code]aabb[/code] are "
+"approximately equal, by calling [method @GDScript.is_equal_approx] on each "
+"component."
+msgstr ""
+
+#: doc/classes/AABB.xml:201
+msgid ""
+"Returns a larger [AABB] that contains both this [AABB] and [code]with[/code]."
+msgstr ""
+
+#: doc/classes/AABB.xml:207 doc/classes/Rect2.xml:174
+#: doc/classes/Rect2i.xml:163
+msgid ""
+"Ending corner. This is calculated as [code]position + size[/code]. Setting "
+"this value will change the size."
+msgstr ""
+
+#: doc/classes/AABB.xml:210 doc/classes/Rect2.xml:177
+#: doc/classes/Rect2i.xml:166
+msgid "Beginning corner. Typically has values lower than [member end]."
+msgstr ""
+
+#: doc/classes/AABB.xml:213 doc/classes/Rect2.xml:180
+#: doc/classes/Rect2i.xml:169
+msgid ""
+"Size from [member position] to [member end]. Typically all components are "
+"positive.\n"
+"If the size is negative, you can use [method abs] to fix it."
+msgstr ""
+
+#: doc/classes/AcceptDialog.xml:4
+msgid "Base dialog for user notification."
+msgstr ""
+
+#: doc/classes/AcceptDialog.xml:7
+msgid ""
+"This dialog is useful for small notifications to the user about an event. It "
+"can only be accepted or closed, with the same result."
+msgstr ""
+
+#: doc/classes/AcceptDialog.xml:22
+msgid ""
+"Adds a button with label [code]text[/code] and a custom [code]action[/code] "
+"to the dialog and returns the created button. [code]action[/code] will be "
+"passed to the [signal custom_action] signal when pressed.\n"
+"If [code]true[/code], [code]right[/code] will place the button to the right "
+"of any sibling buttons."
+msgstr ""
+
+#: doc/classes/AcceptDialog.xml:32
+msgid ""
+"Adds a button with label [code]name[/code] and a cancel action to the dialog "
+"and returns the created button."
+msgstr ""
+
+#: doc/classes/AcceptDialog.xml:39
+msgid "Returns the label used for built-in text."
+msgstr ""
+
+#: doc/classes/AcceptDialog.xml:46
+msgid "Returns the OK [Button] instance."
+msgstr ""
+
+#: doc/classes/AcceptDialog.xml:55
+msgid ""
+"Registers a [LineEdit] in the dialog. When the enter key is pressed, the "
+"dialog will be accepted."
+msgstr ""
+
+#: doc/classes/AcceptDialog.xml:61
+msgid "Sets autowrapping for the text in the dialog."
+msgstr ""
+
+#: doc/classes/AcceptDialog.xml:64
+msgid ""
+"If [code]true[/code], the dialog is hidden when the OK button is pressed. "
+"You can set it to [code]false[/code] if you want to do e.g. input validation "
+"when receiving the [signal confirmed] signal, and handle hiding the dialog "
+"in your own logic.\n"
+"[b]Note:[/b] Some nodes derived from this class can have a different default "
+"value, and potentially their own built-in logic overriding this setting. For "
+"example [FileDialog] defaults to [code]false[/code], and has its own input "
+"validation code that is called when you press OK, which eventually hides the "
+"dialog if the input is valid. As such, this property can't be used in "
+"[FileDialog] to disable hiding the dialog when pressing OK."
+msgstr ""
+
+#: doc/classes/AcceptDialog.xml:68
+msgid "The text displayed by the dialog."
+msgstr ""
+
+#: doc/classes/AcceptDialog.xml:83
+msgid "Emitted when the dialog is accepted, i.e. the OK button is pressed."
+msgstr ""
+
+#: doc/classes/AcceptDialog.xml:90
+msgid "Emitted when a custom button is pressed. See [method add_button]."
+msgstr ""
+
+#: doc/classes/AESContext.xml:4
+msgid "Interface to low level AES encryption features."
+msgstr ""
+
+#: doc/classes/AESContext.xml:7
+msgid ""
+"This class provides access to AES encryption/decryption of raw data. Both "
+"AES-ECB and AES-CBC mode are supported.\n"
+"[codeblock]\n"
+"extends Node\n"
+"\n"
+"var aes = AESContext.new()\n"
+"\n"
+"func _ready():\n"
+" var key = \"My secret key!!!\" # Key must be either 16 or 32 bytes.\n"
+" var data = \"My secret text!!\" # Data size must be multiple of 16 "
+"bytes, apply padding if needed.\n"
+" # Encrypt ECB\n"
+" aes.start(AESContext.MODE_ECB_ENCRYPT, key.to_utf8())\n"
+" var encrypted = aes.update(data.to_utf8())\n"
+" aes.finish()\n"
+" # Decrypt ECB\n"
+" aes.start(AESContext.MODE_ECB_DECRYPT, key.to_utf8())\n"
+" var decrypted = aes.update(encrypted)\n"
+" aes.finish()\n"
+" # Check ECB\n"
+" assert(decrypted == data.to_utf8())\n"
+"\n"
+" var iv = \"My secret iv!!!!\" # IV must be of exactly 16 bytes.\n"
+" # Encrypt CBC\n"
+" aes.start(AESContext.MODE_CBC_ENCRYPT, key.to_utf8(), iv.to_utf8())\n"
+" encrypted = aes.update(data.to_utf8())\n"
+" aes.finish()\n"
+" # Decrypt CBC\n"
+" aes.start(AESContext.MODE_CBC_DECRYPT, key.to_utf8(), iv.to_utf8())\n"
+" decrypted = aes.update(encrypted)\n"
+" aes.finish()\n"
+" # Check CBC\n"
+" assert(decrypted == data.to_utf8())\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/AESContext.xml:47
+msgid "Close this AES context so it can be started again. See [method start]."
+msgstr ""
+
+#: doc/classes/AESContext.xml:54
+msgid ""
+"Get the current IV state for this context (IV gets updated when calling "
+"[method update]). You normally don't need this function.\n"
+"Note: This function only makes sense when the context is started with "
+"[constant MODE_CBC_ENCRYPT] or [constant MODE_CBC_DECRYPT]."
+msgstr ""
+
+#: doc/classes/AESContext.xml:68
+msgid ""
+"Start the AES context in the given [code]mode[/code]. A [code]key[/code] of "
+"either 16 or 32 bytes must always be provided, while an [code]iv[/code] "
+"(initialization vector) of exactly 16 bytes, is only needed when [code]mode[/"
+"code] is either [constant MODE_CBC_ENCRYPT] or [constant MODE_CBC_DECRYPT]."
+msgstr ""
+
+#: doc/classes/AESContext.xml:77
+msgid ""
+"Run the desired operation for this AES context. Will return a "
+"[PackedByteArray] containing the result of encrypting (or decrypting) the "
+"given [code]src[/code]. See [method start] for mode of operation.\n"
+"Note: The size of [code]src[/code] must be a multiple of 16. Apply some "
+"padding if needed."
+msgstr ""
+
+#: doc/classes/AESContext.xml:84
+msgid "AES electronic codebook encryption mode."
+msgstr ""
+
+#: doc/classes/AESContext.xml:87
+msgid "AES electronic codebook decryption mode."
+msgstr ""
+
+#: doc/classes/AESContext.xml:90
+msgid "AES cipher blocker chaining encryption mode."
+msgstr ""
+
+#: doc/classes/AESContext.xml:93
+msgid "AES cipher blocker chaining decryption mode."
+msgstr ""
+
+#: doc/classes/AESContext.xml:96
+msgid "Maximum value for the mode enum."
+msgstr ""
+
+#: doc/classes/AnimatedSprite2D.xml:4
+msgid "Sprite node that can use multiple textures for animation."
+msgstr ""
+
+#: doc/classes/AnimatedSprite2D.xml:7 doc/classes/AnimatedSprite3D.xml:7
+msgid ""
+"Animations are created using a [SpriteFrames] resource, which can be "
+"configured in the editor via the SpriteFrames panel."
+msgstr ""
+
+#: doc/classes/AnimatedSprite2D.xml:16 doc/classes/AnimatedSprite3D.xml:16
+msgid "Returns [code]true[/code] if an animation is currently being played."
+msgstr ""
+
+#: doc/classes/AnimatedSprite2D.xml:27
+msgid ""
+"Plays the animation named [code]anim[/code]. If no [code]anim[/code] is "
+"provided, the current animation is played. If [code]backwards[/code] is "
+"[code]true[/code], the animation will be played in reverse."
+msgstr ""
+
+#: doc/classes/AnimatedSprite2D.xml:34 doc/classes/AnimatedSprite3D.xml:32
+msgid "Stops the current animation (does not reset the frame counter)."
+msgstr ""
+
+#: doc/classes/AnimatedSprite2D.xml:40 doc/classes/AnimatedSprite3D.xml:38
+msgid ""
+"The current animation from the [code]frames[/code] resource. If this value "
+"changes, the [code]frame[/code] counter is reset."
+msgstr ""
+
+#: doc/classes/AnimatedSprite2D.xml:43 doc/classes/SpriteBase3D.xml:55
+msgid "If [code]true[/code], texture will be centered."
+msgstr ""
+
+#: doc/classes/AnimatedSprite2D.xml:46 doc/classes/Sprite2D.xml:41
+#: doc/classes/SpriteBase3D.xml:61 doc/classes/TextureButton.xml:19
+#: doc/classes/TextureRect.xml:18
+msgid "If [code]true[/code], texture is flipped horizontally."
+msgstr ""
+
+#: doc/classes/AnimatedSprite2D.xml:49 doc/classes/Sprite2D.xml:44
+#: doc/classes/SpriteBase3D.xml:64 doc/classes/TextureButton.xml:22
+#: doc/classes/TextureRect.xml:21
+msgid "If [code]true[/code], texture is flipped vertically."
+msgstr ""
+
+#: doc/classes/AnimatedSprite2D.xml:52 doc/classes/AnimatedSprite3D.xml:41
+msgid "The displayed animation frame's index."
+msgstr ""
+
+#: doc/classes/AnimatedSprite2D.xml:55 doc/classes/AnimatedSprite3D.xml:44
+msgid "The [SpriteFrames] resource containing the animation(s)."
+msgstr ""
+
+#: doc/classes/AnimatedSprite2D.xml:58 doc/classes/Sprite2D.xml:60
+#: doc/classes/SpriteBase3D.xml:70
+msgid "The texture's drawing offset."
+msgstr ""
+
+#: doc/classes/AnimatedSprite2D.xml:61 doc/classes/AnimatedSprite3D.xml:47
+msgid "If [code]true[/code], the [member animation] is currently playing."
+msgstr ""
+
+#: doc/classes/AnimatedSprite2D.xml:64
+msgid "Strength of the specular light effect of this [AnimatedSprite2D]."
+msgstr ""
+
+#: doc/classes/AnimatedSprite2D.xml:67 doc/classes/Sprite2D.xml:75
+msgid "The color of the specular light effect."
+msgstr ""
+
+#: doc/classes/AnimatedSprite2D.xml:70
+msgid "The animation speed is multiplied by this value."
+msgstr ""
+
+#: doc/classes/AnimatedSprite2D.xml:76
+msgid ""
+"Emitted when the animation is finished (when it plays the last frame). If "
+"the animation is looping, this signal is emitted every time the last frame "
+"is drawn."
+msgstr ""
+
+#: doc/classes/AnimatedSprite2D.xml:81 doc/classes/AnimatedSprite3D.xml:53
+msgid "Emitted when [member frame] changed."
+msgstr ""
+
+#: doc/classes/AnimatedSprite3D.xml:4
+msgid ""
+"2D sprite node in 3D world, that can use multiple 2D textures for animation."
+msgstr ""
+
+#: doc/classes/AnimatedSprite3D.xml:25
+msgid ""
+"Plays the animation named [code]anim[/code]. If no [code]anim[/code] is "
+"provided, the current animation is played."
+msgstr ""
+
+#: doc/classes/AnimatedTexture.xml:4
+msgid "Proxy texture for simple frame-based animations."
+msgstr ""
+
+#: doc/classes/AnimatedTexture.xml:7
+msgid ""
+"[AnimatedTexture] is a resource format for frame-based animations, where "
+"multiple textures can be chained automatically with a predefined delay for "
+"each frame. Unlike [AnimationPlayer] or [AnimatedSprite2D], it isn't a "
+"[Node], but has the advantage of being usable anywhere a [Texture2D] "
+"resource can be used, e.g. in a [TileSet].\n"
+"The playback of the animation is controlled by the [member fps] property as "
+"well as each frame's optional delay (see [method set_frame_delay]). The "
+"animation loops, i.e. it will restart at frame 0 automatically after playing "
+"the last frame.\n"
+"[AnimatedTexture] currently requires all frame textures to have the same "
+"size, otherwise the bigger ones will be cropped to match the smallest one. "
+"Also, it doesn't support [AtlasTexture]. Each frame needs to be separate "
+"image."
+msgstr ""
+
+#: doc/classes/AnimatedTexture.xml:20
+msgid "Returns the given frame's delay value."
+msgstr ""
+
+#: doc/classes/AnimatedTexture.xml:29
+msgid "Returns the given frame's [Texture2D]."
+msgstr ""
+
+#: doc/classes/AnimatedTexture.xml:40
+msgid ""
+"Sets an additional delay (in seconds) between this frame and the next one, "
+"that will be added to the time interval defined by [member fps]. By default, "
+"frames have no delay defined. If a delay value is defined, the final time "
+"interval between this frame and the next will be [code]1.0 / fps + delay[/"
+"code].\n"
+"For example, for an animation with 3 frames, 2 FPS and a frame delay on the "
+"second frame of 1.2, the resulting playback will be:\n"
+"[codeblock]\n"
+"Frame 0: 0.5 s (1 / fps)\n"
+"Frame 1: 1.7 s (1 / fps + 1.2)\n"
+"Frame 2: 0.5 s (1 / fps)\n"
+"Total duration: 2.7 s\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/AnimatedTexture.xml:58
+msgid ""
+"Assigns a [Texture2D] to the given frame. Frame IDs start at 0, so the first "
+"frame has ID 0, and the last frame of the animation has ID [member frames] - "
+"1.\n"
+"You can define any number of textures up to [constant MAX_FRAMES], but keep "
+"in mind that only frames from 0 to [member frames] - 1 will be part of the "
+"animation."
+msgstr ""
+
+#: doc/classes/AnimatedTexture.xml:65
+msgid "Sets the currently visible frame of the texture."
+msgstr ""
+
+#: doc/classes/AnimatedTexture.xml:68
+msgid ""
+"Animation speed in frames per second. This value defines the default time "
+"interval between two frames of the animation, and thus the overall duration "
+"of the animation loop based on the [member frames] property. A value of 0 "
+"means no predefined number of frames per second, the animation will play "
+"according to each frame's frame delay (see [method set_frame_delay]).\n"
+"For example, an animation with 8 frames, no frame delay and a [code]fps[/"
+"code] value of 2 will run for 4 seconds, with each frame lasting 0.5 seconds."
+msgstr ""
+
+#: doc/classes/AnimatedTexture.xml:72
+msgid ""
+"Number of frames to use in the animation. While you can create the frames "
+"independently with [method set_frame_texture], you need to set this value "
+"for the animation to take new frames into account. The maximum number of "
+"frames is [constant MAX_FRAMES]."
+msgstr ""
+
+#: doc/classes/AnimatedTexture.xml:75
+msgid ""
+"If [code]true[/code], the animation will only play once and will not loop "
+"back to the first frame after reaching the end. Note that reaching the end "
+"will not set [member pause] to [code]true[/code]."
+msgstr ""
+
+#: doc/classes/AnimatedTexture.xml:78
+msgid ""
+"If [code]true[/code], the animation will pause where it currently is (i.e. "
+"at [member current_frame]). The animation will continue from where it was "
+"paused when changing this property to [code]false[/code]."
+msgstr ""
+
+#: doc/classes/AnimatedTexture.xml:83
+msgid ""
+"The maximum number of frames supported by [AnimatedTexture]. If you need "
+"more frames in your animation, use [AnimationPlayer] or [AnimatedSprite2D]."
+msgstr ""
+
+#: doc/classes/Animation.xml:4
+msgid "Contains data used to animate everything in the engine."
+msgstr ""
+
+#: doc/classes/Animation.xml:7
+msgid ""
+"An Animation resource contains data used to animate everything in the "
+"engine. Animations are divided into tracks, and each track must be linked to "
+"a node. The state of that node can be changed through time, by adding timed "
+"keys (events) to the track.\n"
+"[codeblock]\n"
+"# This creates an animation that makes the node \"Enemy\" move to the right "
+"by\n"
+"# 100 pixels in 0.5 seconds.\n"
+"var animation = Animation.new()\n"
+"var track_index = animation.add_track(Animation.TYPE_VALUE)\n"
+"animation.track_set_path(track_index, \"Enemy:position:x\")\n"
+"animation.track_insert_key(track_index, 0.0, 0)\n"
+"animation.track_insert_key(track_index, 0.5, 100)\n"
+"[/codeblock]\n"
+"Animations are just data containers, and must be added to nodes such as an "
+"[AnimationPlayer] to be played back. Animation tracks have different types, "
+"each with its own set of dedicated methods. Check [enum TrackType] to see "
+"available types."
+msgstr ""
+
+#: doc/classes/Animation.xml:20 doc/classes/AnimationPlayer.xml:13
+msgid "https://docs.godotengine.org/en/latest/tutorials/animation/index.html"
+msgstr ""
+
+#: doc/classes/Animation.xml:31
+msgid "Adds a track to the Animation."
+msgstr ""
+
+#: doc/classes/Animation.xml:42
+msgid ""
+"Returns the animation name at the key identified by [code]key_idx[/code]. "
+"The [code]track_idx[/code] must be the index of an Animation Track."
+msgstr ""
+
+#: doc/classes/Animation.xml:55
+msgid ""
+"Inserts a key with value [code]animation[/code] at the given [code]time[/"
+"code] (in seconds). The [code]track_idx[/code] must be the index of an "
+"Animation Track."
+msgstr ""
+
+#: doc/classes/Animation.xml:68
+msgid ""
+"Sets the key identified by [code]key_idx[/code] to value [code]animation[/"
+"code]. The [code]track_idx[/code] must be the index of an Animation Track."
+msgstr ""
+
+#: doc/classes/Animation.xml:79
+msgid ""
+"Returns the end offset of the key identified by [code]key_idx[/code]. The "
+"[code]track_idx[/code] must be the index of an Audio Track.\n"
+"End offset is the number of seconds cut off at the ending of the audio "
+"stream."
+msgstr ""
+
+#: doc/classes/Animation.xml:91
+msgid ""
+"Returns the start offset of the key identified by [code]key_idx[/code]. The "
+"[code]track_idx[/code] must be the index of an Audio Track.\n"
+"Start offset is the number of seconds cut off at the beginning of the audio "
+"stream."
+msgstr ""
+
+#: doc/classes/Animation.xml:103
+msgid ""
+"Returns the audio stream of the key identified by [code]key_idx[/code]. The "
+"[code]track_idx[/code] must be the index of an Audio Track."
+msgstr ""
+
+#: doc/classes/Animation.xml:120
+msgid ""
+"Inserts an Audio Track key at the given [code]time[/code] in seconds. The "
+"[code]track_idx[/code] must be the index of an Audio Track.\n"
+"[code]stream[/code] is the [AudioStream] resource to play. "
+"[code]start_offset[/code] is the number of seconds cut off at the beginning "
+"of the audio stream, while [code]end_offset[/code] is at the ending."
+msgstr ""
+
+#: doc/classes/Animation.xml:134
+msgid ""
+"Sets the end offset of the key identified by [code]key_idx[/code] to value "
+"[code]offset[/code]. The [code]track_idx[/code] must be the index of an "
+"Audio Track."
+msgstr ""
+
+#: doc/classes/Animation.xml:147
+msgid ""
+"Sets the start offset of the key identified by [code]key_idx[/code] to value "
+"[code]offset[/code]. The [code]track_idx[/code] must be the index of an "
+"Audio Track."
+msgstr ""
+
+#: doc/classes/Animation.xml:160
+msgid ""
+"Sets the stream of the key identified by [code]key_idx[/code] to value "
+"[code]offset[/code]. The [code]track_idx[/code] must be the index of an "
+"Audio Track."
+msgstr ""
+
+#: doc/classes/Animation.xml:171
+msgid ""
+"Returns the in handle of the key identified by [code]key_idx[/code]. The "
+"[code]track_idx[/code] must be the index of a Bezier Track."
+msgstr ""
+
+#: doc/classes/Animation.xml:182
+msgid ""
+"Returns the out handle of the key identified by [code]key_idx[/code]. The "
+"[code]track_idx[/code] must be the index of a Bezier Track."
+msgstr ""
+
+#: doc/classes/Animation.xml:193
+msgid ""
+"Returns the value of the key identified by [code]key_idx[/code]. The "
+"[code]track_idx[/code] must be the index of a Bezier Track."
+msgstr ""
+
+#: doc/classes/Animation.xml:210
+msgid ""
+"Inserts a Bezier Track key at the given [code]time[/code] in seconds. The "
+"[code]track_idx[/code] must be the index of a Bezier Track.\n"
+"[code]in_handle[/code] is the left-side weight of the added Bezier curve "
+"point, [code]out_handle[/code] is the right-side one, while [code]value[/"
+"code] is the actual value at this point."
+msgstr ""
+
+#: doc/classes/Animation.xml:222
+msgid ""
+"Returns the interpolated value at the given [code]time[/code] (in seconds). "
+"The [code]track_idx[/code] must be the index of a Bezier Track."
+msgstr ""
+
+#: doc/classes/Animation.xml:235
+msgid ""
+"Sets the in handle of the key identified by [code]key_idx[/code] to value "
+"[code]in_handle[/code]. The [code]track_idx[/code] must be the index of a "
+"Bezier Track."
+msgstr ""
+
+#: doc/classes/Animation.xml:248
+msgid ""
+"Sets the out handle of the key identified by [code]key_idx[/code] to value "
+"[code]out_handle[/code]. The [code]track_idx[/code] must be the index of a "
+"Bezier Track."
+msgstr ""
+
+#: doc/classes/Animation.xml:261
+msgid ""
+"Sets the value of the key identified by [code]key_idx[/code] to the given "
+"value. The [code]track_idx[/code] must be the index of a Bezier Track."
+msgstr ""
+
+#: doc/classes/Animation.xml:268
+msgid "Clear the animation (clear all tracks and reset all)."
+msgstr ""
+
+#: doc/classes/Animation.xml:279
+msgid ""
+"Adds a new track that is a copy of the given track from [code]to_animation[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Animation.xml:288
+msgid ""
+"Returns the index of the specified track. If the track is not found, return "
+"-1."
+msgstr ""
+
+#: doc/classes/Animation.xml:295
+msgid "Returns the amount of tracks in the animation."
+msgstr ""
+
+#: doc/classes/Animation.xml:308
+msgid ""
+"Returns all the key indices of a method track, given a position and delta "
+"time."
+msgstr ""
+
+#: doc/classes/Animation.xml:319
+msgid "Returns the method name of a method track."
+msgstr ""
+
+#: doc/classes/Animation.xml:330
+msgid ""
+"Returns the arguments values to be called on a method track for a given key "
+"in a given track."
+msgstr ""
+
+#: doc/classes/Animation.xml:339
+msgid "Removes a track by specifying the track index."
+msgstr ""
+
+#: doc/classes/Animation.xml:352
+msgid ""
+"Finds the key index by time in a given track. Optionally, only find it if "
+"the exact time is given."
+msgstr ""
+
+#: doc/classes/Animation.xml:361
+msgid ""
+"Returns [code]true[/code] if the track at [code]idx[/code] wraps the "
+"interpolation loop. New tracks wrap the interpolation loop by default."
+msgstr ""
+
+#: doc/classes/Animation.xml:370
+msgid "Returns the interpolation type of a given track."
+msgstr ""
+
+#: doc/classes/Animation.xml:379
+msgid "Returns the amount of keys in a given track."
+msgstr ""
+
+#: doc/classes/Animation.xml:390
+msgid "Returns the time at which the key is located."
+msgstr ""
+
+#: doc/classes/Animation.xml:401
+msgid ""
+"Returns the transition curve (easing) for a specific key (see the built-in "
+"math function [method @GDScript.ease])."
+msgstr ""
+
+#: doc/classes/Animation.xml:412
+msgid "Returns the value of a given key in a given track."
+msgstr ""
+
+#: doc/classes/Animation.xml:421
+msgid ""
+"Gets the path of a track. For more information on the path format, see "
+"[method track_set_path]."
+msgstr ""
+
+#: doc/classes/Animation.xml:430
+msgid "Gets the type of a track."
+msgstr ""
+
+#: doc/classes/Animation.xml:445
+msgid "Insert a generic key in a given track."
+msgstr ""
+
+#: doc/classes/Animation.xml:454
+msgid ""
+"Returns [code]true[/code] if the track at index [code]idx[/code] is enabled."
+msgstr ""
+
+#: doc/classes/Animation.xml:463
+msgid ""
+"Returns [code]true[/code] if the given track is imported. Else, return "
+"[code]false[/code]."
+msgstr ""
+
+#: doc/classes/Animation.xml:472
+msgid "Moves a track down."
+msgstr ""
+
+#: doc/classes/Animation.xml:483
+msgid ""
+"Changes the index position of track [code]idx[/code] to the one defined in "
+"[code]to_idx[/code]."
+msgstr ""
+
+#: doc/classes/Animation.xml:492
+msgid "Moves a track up."
+msgstr ""
+
+#: doc/classes/Animation.xml:503
+msgid "Removes a key by index in a given track."
+msgstr ""
+
+#: doc/classes/Animation.xml:514
+msgid "Removes a key by position (seconds) in a given track."
+msgstr ""
+
+#: doc/classes/Animation.xml:525
+msgid "Enables/disables the given track. Tracks are enabled by default."
+msgstr ""
+
+#: doc/classes/Animation.xml:536
+msgid "Sets the given track as imported or not."
+msgstr ""
+
+#: doc/classes/Animation.xml:547
+msgid ""
+"If [code]true[/code], the track at [code]idx[/code] wraps the interpolation "
+"loop."
+msgstr ""
+
+#: doc/classes/Animation.xml:558
+msgid "Sets the interpolation type of a given track."
+msgstr ""
+
+#: doc/classes/Animation.xml:571
+msgid "Sets the time of an existing key."
+msgstr ""
+
+#: doc/classes/Animation.xml:584
+msgid ""
+"Sets the transition curve (easing) for a specific key (see the built-in math "
+"function [method @GDScript.ease])."
+msgstr ""
+
+#: doc/classes/Animation.xml:597
+msgid "Sets the value of an existing key."
+msgstr ""
+
+#: doc/classes/Animation.xml:608
+msgid ""
+"Sets the path of a track. Paths must be valid scene-tree paths to a node, "
+"and must be specified starting from the parent node of the node that will "
+"reproduce the animation. Tracks that control properties or bones must append "
+"their name after the path, separated by [code]\":\"[/code].\n"
+"For example, [code]\"character/skeleton:ankle\"[/code] or [code]\"character/"
+"mesh:transform/local\"[/code]."
+msgstr ""
+
+#: doc/classes/Animation.xml:620
+msgid ""
+"Swaps the track [code]idx[/code]'s index position with the track "
+"[code]with_idx[/code]."
+msgstr ""
+
+#: doc/classes/Animation.xml:637
+msgid "Insert a transform key for a transform track."
+msgstr ""
+
+#: doc/classes/Animation.xml:648
+msgid ""
+"Returns the interpolated value of a transform track at a given time (in "
+"seconds). An array consisting of 3 elements: position ([Vector3]), rotation "
+"([Quat]) and scale ([Vector3])."
+msgstr ""
+
+#: doc/classes/Animation.xml:661
+msgid ""
+"Returns all the key indices of a value track, given a position and delta "
+"time."
+msgstr ""
+
+#: doc/classes/Animation.xml:670
+msgid "Returns the update mode of a value track."
+msgstr ""
+
+#: doc/classes/Animation.xml:681
+msgid "Sets the update mode (see [enum UpdateMode]) of a value track."
+msgstr ""
+
+#: doc/classes/Animation.xml:687
+msgid ""
+"The total length of the animation (in seconds).\n"
+"[b]Note:[/b] Length is not delimited by the last key, as this one may be "
+"before or after the end to ensure correct interpolation and looping."
+msgstr ""
+
+#: doc/classes/Animation.xml:691
+msgid ""
+"A flag indicating that the animation must loop. This is uses for correct "
+"interpolation of animation cycles, and for hinting the player that it must "
+"restart the animation."
+msgstr ""
+
+#: doc/classes/Animation.xml:694
+msgid "The animation step value."
+msgstr ""
+
+#: doc/classes/Animation.xml:700
+msgid ""
+"Emitted when there's a change in the list of tracks, e.g. tracks are added, "
+"moved or have changed paths."
+msgstr ""
+
+#: doc/classes/Animation.xml:706
+msgid ""
+"Value tracks set values in node properties, but only those which can be "
+"Interpolated."
+msgstr ""
+
+#: doc/classes/Animation.xml:709
+msgid ""
+"Transform tracks are used to change node local transforms or skeleton pose "
+"bones. Transitions are interpolated."
+msgstr ""
+
+#: doc/classes/Animation.xml:712
+msgid "Method tracks call functions with given arguments per key."
+msgstr ""
+
+#: doc/classes/Animation.xml:715
+msgid ""
+"Bezier tracks are used to interpolate a value using custom curves. They can "
+"also be used to animate sub-properties of vectors and colors (e.g. alpha "
+"value of a [Color])."
+msgstr ""
+
+#: doc/classes/Animation.xml:718
+msgid ""
+"Audio tracks are used to play an audio stream with either type of "
+"[AudioStreamPlayer]. The stream can be trimmed and previewed in the "
+"animation."
+msgstr ""
+
+#: doc/classes/Animation.xml:721
+msgid "Animation tracks play animations in other [AnimationPlayer] nodes."
+msgstr ""
+
+#: doc/classes/Animation.xml:724
+msgid "No interpolation (nearest value)."
+msgstr ""
+
+#: doc/classes/Animation.xml:727
+msgid "Linear interpolation."
+msgstr ""
+
+#: doc/classes/Animation.xml:730
+msgid "Cubic interpolation."
+msgstr ""
+
+#: doc/classes/Animation.xml:733
+msgid "Update between keyframes."
+msgstr ""
+
+#: doc/classes/Animation.xml:736
+msgid "Update at the keyframes and hold the value."
+msgstr ""
+
+#: doc/classes/Animation.xml:739
+msgid "Update at the keyframes."
+msgstr ""
+
+#: doc/classes/Animation.xml:742
+msgid ""
+"Same as linear interpolation, but also interpolates from the current value "
+"(i.e. dynamically at runtime) if the first key isn't at 0 seconds."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:4
+msgid "Base resource for [AnimationTree] nodes."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:7
+msgid ""
+"Base resource for [AnimationTree] nodes. In general, it's not used directly, "
+"but you can create custom ones with custom blending formulas.\n"
+"Inherit this when creating nodes mainly for use in [AnimationNodeBlendTree], "
+"otherwise [AnimationRootNode] should be used instead."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:11 doc/classes/AnimationNodeAdd2.xml:10
+#: doc/classes/AnimationNodeAdd3.xml:14
+#: doc/classes/AnimationNodeAnimation.xml:10
+#: doc/classes/AnimationNodeBlend2.xml:10
+#: doc/classes/AnimationNodeBlend3.xml:14
+#: doc/classes/AnimationNodeBlendSpace1D.xml:13
+#: doc/classes/AnimationNodeBlendSpace2D.xml:12
+#: doc/classes/AnimationNodeBlendTree.xml:10
+#: doc/classes/AnimationNodeOneShot.xml:10
+#: doc/classes/AnimationNodeOutput.xml:9
+#: doc/classes/AnimationNodeStateMachine.xml:15
+#: doc/classes/AnimationNodeStateMachinePlayback.xml:15
+#: doc/classes/AnimationNodeStateMachineTransition.xml:8
+#: doc/classes/AnimationNodeTimeScale.xml:10
+#: doc/classes/AnimationNodeTimeSeek.xml:10
+#: doc/classes/AnimationNodeTransition.xml:10 doc/classes/AnimationTree.xml:10
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/animation/animation_tree."
+"html"
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:20
+msgid ""
+"Adds an input to the node. This is only useful for nodes created for use in "
+"an [AnimationNodeBlendTree]."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:37
+msgid ""
+"Blend an animation by [code]blend[/code] amount (name must be valid in the "
+"linked [AnimationPlayer]). A [code]time[/code] and [code]delta[/code] may be "
+"passed, as well as whether [code]seek[/code] happened."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:56
+msgid ""
+"Blend an input. This is only useful for nodes created for an "
+"[AnimationNodeBlendTree]. The [code]time[/code] parameter is a relative "
+"delta, unless [code]seek[/code] is [code]true[/code], in which case it is "
+"absolute. A filter mode may be optionally passed (see [enum FilterAction] "
+"for options)."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:77
+msgid ""
+"Blend another animation node (in case this node contains children animation "
+"nodes). This function is only useful if you inherit from [AnimationRootNode] "
+"instead, else editors will not display your node for addition."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:84
+msgid "Gets the text caption for this node (used by some editors)."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:93
+msgid ""
+"Gets a child node by index (used by editors inheriting from "
+"[AnimationRootNode])."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:100
+msgid ""
+"Gets all children nodes in order as a [code]name: node[/code] dictionary. "
+"Only useful when inheriting [AnimationRootNode]."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:107
+msgid ""
+"Amount of inputs in this node, only useful for nodes that go into "
+"[AnimationNodeBlendTree]."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:116
+msgid "Gets the name of an input by index."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:125
+msgid ""
+"Gets the value of a parameter. Parameters are custom local memory used for "
+"your nodes, given a resource can be reused in multiple trees."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:134
+msgid ""
+"Gets the default value of a parameter. Parameters are custom local memory "
+"used for your nodes, given a resource can be reused in multiple trees."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:141
+msgid ""
+"Gets the property information for parameter. Parameters are custom local "
+"memory used for your nodes, given a resource can be reused in multiple "
+"trees. Format is similar to [method Object.get_property_list]."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:148
+msgid ""
+"Returns [code]true[/code] whether you want the blend tree editor to display "
+"filter editing on this node."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:157
+msgid "Returns [code]true[/code] whether a given path is filtered."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:168
+msgid ""
+"User-defined callback called when a custom node is processed. The "
+"[code]time[/code] parameter is a relative delta, unless [code]seek[/code] is "
+"[code]true[/code], in which case it is absolute.\n"
+"Here, call the [method blend_input], [method blend_node] or [method "
+"blend_animation] functions. You can also use [method get_parameter] and "
+"[method set_parameter] to modify local memory.\n"
+"This function should return the time left for the current animation to "
+"finish (if unsure, pass the value from the main blend being called)."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:179
+msgid "Removes an input, call this only when inactive."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:190
+msgid "Adds or removes a path for the filter."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:201
+msgid ""
+"Sets a custom parameter. These are used as local storage, because resources "
+"can be reused across the tree or scenes."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:207
+msgid "If [code]true[/code], filtering is enabled."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:213
+msgid "Called when the node was removed from the graph."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:218
+msgid ""
+"Emitted by nodes that inherit from this class and that have an internal tree "
+"when one of their nodes changes. The nodes that emit this signal are "
+"[AnimationNodeBlendSpace1D], [AnimationNodeBlendSpace2D], "
+"[AnimationNodeStateMachine], and [AnimationNodeBlendTree]."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:224
+msgid "Do not use filtering."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:227
+msgid "Paths matching the filter will be allowed to pass."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:230
+msgid "Paths matching the filter will be discarded."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:233
+msgid "Paths matching the filter will be blended (by the blend value)."
+msgstr ""
+
+#: doc/classes/AnimationNodeAdd2.xml:4
+msgid "Blends two animations additively inside of an [AnimationNodeBlendTree]."
+msgstr ""
+
+#: doc/classes/AnimationNodeAdd2.xml:7
+msgid ""
+"A resource to add to an [AnimationNodeBlendTree]. Blends two animations "
+"additively based on an amount value in the [code][0.0, 1.0][/code] range."
+msgstr ""
+
+#: doc/classes/AnimationNodeAdd2.xml:16 doc/classes/AnimationNodeAdd3.xml:20
+#: doc/classes/AnimationNodeBlend2.xml:16
+#: doc/classes/AnimationNodeBlend3.xml:20
+msgid ""
+"If [code]true[/code], sets the [code]optimization[/code] to [code]false[/"
+"code] when calling [method AnimationNode.blend_input], forcing the blended "
+"animations to update every frame."
+msgstr ""
+
+#: doc/classes/AnimationNodeAdd3.xml:4
+msgid ""
+"Blends two of three animations additively inside of an "
+"[AnimationNodeBlendTree]."
+msgstr ""
+
+#: doc/classes/AnimationNodeAdd3.xml:7
+msgid ""
+"A resource to add to an [AnimationNodeBlendTree]. Blends two animations "
+"together additively out of three based on a value in the [code][-1.0, 1.0][/"
+"code] range.\n"
+"This node has three inputs:\n"
+"- The base animation to add to\n"
+"- A -add animation to blend with when the blend amount is in the [code]"
+"[-1.0, 0.0][/code] range.\n"
+"- A +add animation to blend with when the blend amount is in the [code][0.0, "
+"1.0][/code] range"
+msgstr ""
+
+#: doc/classes/AnimationNodeAnimation.xml:4
+msgid "Input animation to use in an [AnimationNodeBlendTree]."
+msgstr ""
+
+#: doc/classes/AnimationNodeAnimation.xml:7
+msgid ""
+"A resource to add to an [AnimationNodeBlendTree]. Only features one output "
+"set using the [member animation] property. Use it as an input for "
+"[AnimationNode] that blend animations together."
+msgstr ""
+
+#: doc/classes/AnimationNodeAnimation.xml:16
+msgid ""
+"Animation to use as an output. It is one of the animations provided by "
+"[member AnimationTree.anim_player]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlend2.xml:4
+msgid "Blends two animations linearly inside of an [AnimationNodeBlendTree]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlend2.xml:7
+msgid ""
+"A resource to add to an [AnimationNodeBlendTree]. Blends two animations "
+"linearly based on an amount value in the [code][0.0, 1.0][/code] range."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlend3.xml:4
+msgid ""
+"Blends two of three animations linearly inside of an "
+"[AnimationNodeBlendTree]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlend3.xml:7
+msgid ""
+"A resource to add to an [AnimationNodeBlendTree]. Blends two animations "
+"together linearly out of three based on a value in the [code][-1.0, 1.0][/"
+"code] range.\n"
+"This node has three inputs:\n"
+"- The base animation\n"
+"- A -blend animation to blend with when the blend amount is in the [code]"
+"[-1.0, 0.0][/code] range.\n"
+"- A +blend animation to blend with when the blend amount is in the [code]"
+"[0.0, 1.0][/code] range"
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:4
+msgid ""
+"Blends linearly between two of any number of [AnimationNode] of any type "
+"placed on a virtual axis."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:7
+msgid ""
+"A resource to add to an [AnimationNodeBlendTree].\n"
+"This is a virtual axis on which you can add any type of [AnimationNode] "
+"using [method add_blend_point].\n"
+"Outputs the linear blend of the two [AnimationNode]s closest to the node's "
+"current value.\n"
+"You can set the extents of the axis using the [member min_space] and [member "
+"max_space]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:26
+msgid ""
+"Adds a new point that represents a [code]node[/code] on the virtual axis at "
+"a given position set by [code]pos[/code]. You can insert it at a specific "
+"index using the [code]at_index[/code] argument. If you use the default value "
+"for [code]at_index[/code], the point is inserted at the end of the blend "
+"points array."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:33
+msgid "Returns the number of points on the blend axis."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:42
+msgid ""
+"Returns the [AnimationNode] referenced by the point at index [code]point[/"
+"code]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:51
+#: doc/classes/AnimationNodeBlendSpace2D.xml:65
+msgid "Returns the position of the point at index [code]point[/code]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:60
+msgid "Removes the point at index [code]point[/code] from the blend axis."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:71
+#: doc/classes/AnimationNodeBlendSpace2D.xml:112
+msgid ""
+"Changes the [AnimationNode] referenced by the point at index [code]point[/"
+"code]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:82
+#: doc/classes/AnimationNodeBlendSpace2D.xml:123
+msgid ""
+"Updates the position of the point at index [code]point[/code] on the blend "
+"axis."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:88
+msgid ""
+"The blend space's axis's upper limit for the points' position. See [method "
+"add_blend_point]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:91
+msgid ""
+"The blend space's axis's lower limit for the points' position. See [method "
+"add_blend_point]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:94
+msgid "Position increment to snap to when moving a point on the axis."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:97
+msgid "Label of the virtual axis of the blend space."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:4
+msgid ""
+"Blends linearly between three [AnimationNode] of any type placed in a 2D "
+"space."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:7
+msgid ""
+"A resource to add to an [AnimationNodeBlendTree].\n"
+"This node allows you to blend linearly between three animations using a "
+"[Vector2] weight.\n"
+"You can add vertices to the blend space with [method add_blend_point] and "
+"automatically triangulate it by setting [member auto_triangles] to "
+"[code]true[/code]. Otherwise, use [method add_triangle] and [method "
+"remove_triangle] to create up the blend space by hand."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:25
+msgid ""
+"Adds a new point that represents a [code]node[/code] at the position set by "
+"[code]pos[/code]. You can insert it at a specific index using the "
+"[code]at_index[/code] argument. If you use the default value for "
+"[code]at_index[/code], the point is inserted at the end of the blend points "
+"array."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:40
+msgid ""
+"Creates a new triangle using three points [code]x[/code], [code]y[/code], "
+"and [code]z[/code]. Triangles can overlap. You can insert the triangle at a "
+"specific index using the [code]at_index[/code] argument. If you use the "
+"default value for [code]at_index[/code], the point is inserted at the end of "
+"the blend points array."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:47
+msgid "Returns the number of points in the blend space."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:56
+msgid ""
+"Returns the [AnimationRootNode] referenced by the point at index "
+"[code]point[/code]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:72
+msgid "Returns the number of triangles in the blend space."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:83
+msgid ""
+"Returns the position of the point at index [code]point[/code] in the "
+"triangle of index [code]triangle[/code]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:92
+msgid "Removes the point at index [code]point[/code] from the blend space."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:101
+msgid ""
+"Removes the triangle at index [code]triangle[/code] from the blend space."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:129
+msgid ""
+"If [code]true[/code], the blend space is triangulated automatically. The "
+"mesh updates every time you add or remove points with [method "
+"add_blend_point] and [method remove_blend_point]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:132
+msgid ""
+"Controls the interpolation between animations. See [enum BlendMode] "
+"constants."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:135
+msgid ""
+"The blend space's X and Y axes' upper limit for the points' position. See "
+"[method add_blend_point]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:138
+msgid ""
+"The blend space's X and Y axes' lower limit for the points' position. See "
+"[method add_blend_point]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:141
+msgid "Position increment to snap to when moving a point."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:144
+msgid "Name of the blend space's X axis."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:147
+msgid "Name of the blend space's Y axis."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:153
+msgid ""
+"Emitted every time the blend space's triangles are created, removed, or when "
+"one of their vertices changes position."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:159
+msgid "The interpolation between animations is linear."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:162
+msgid ""
+"The blend space plays the animation of the node the blending position is "
+"closest to. Useful for frame-by-frame 2D animations."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:165
+msgid ""
+"Similar to [constant BLEND_MODE_DISCRETE], but starts the new animation at "
+"the last animation's playback position."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:4
+msgid "[AnimationTree] node resource that contains many blend type nodes."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:7
+msgid ""
+"This node may contain a sub-tree of any other blend type nodes, such as mix, "
+"blend2, blend3, one shot, etc. This is one of the most commonly used roots."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:23
+msgid ""
+"Adds an [AnimationNode] at the given [code]position[/code]. The [code]name[/"
+"code] is used to identify the created sub-node later."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:36
+msgid ""
+"Connects the output of an [AnimationNode] as input for another "
+"[AnimationNode], at the input port specified by [code]input_index[/code]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:47
+msgid "Disconnects the node connected to the specified input."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:56
+msgid "Returns the sub-node with the specified [code]name[/code]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:65
+msgid ""
+"Returns the position of the sub-node with the specified [code]name[/code]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:74
+msgid ""
+"Returns [code]true[/code] if a sub-node with specified [code]name[/code] "
+"exists."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:83
+msgid "Removes a sub-node."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:94
+msgid "Changes the name of a sub-node."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:105
+msgid "Modifies the position of a sub-node."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:111
+msgid "The global offset of all sub-nodes."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:116
+msgid "The connection was successful."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:119
+msgid "The input node is [code]null[/code]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:122
+msgid "The specified input port is out of range."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:125
+msgid "The output node is [code]null[/code]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:128
+msgid "Input and output nodes are the same."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:131
+msgid "The specified connection already exists."
+msgstr ""
+
+#: doc/classes/AnimationNodeOneShot.xml:4
+msgid "Plays an animation once in [AnimationNodeBlendTree]."
+msgstr ""
+
+#: doc/classes/AnimationNodeOneShot.xml:7
+msgid ""
+"A resource to add to an [AnimationNodeBlendTree]. 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."
+msgstr ""
+
+#: doc/classes/AnimationNodeOneShot.xml:30
+msgid ""
+"If [code]true[/code], the sub-animation will restart automatically after "
+"finishing."
+msgstr ""
+
+#: doc/classes/AnimationNodeOneShot.xml:33
+msgid "The delay after which the automatic restart is triggered, in seconds."
+msgstr ""
+
+#: doc/classes/AnimationNodeOneShot.xml:36
+msgid ""
+"If [member autorestart] is [code]true[/code], a random additional delay (in "
+"seconds) between 0 and this value will be added to [member "
+"autorestart_delay]."
+msgstr ""
+
+#: doc/classes/AnimationNodeOutput.xml:4
+msgid "Generic output node to be added to [AnimationNodeBlendTree]."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:4
+msgid "State machine for control of animations."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:7
+msgid ""
+"Contains multiple nodes representing animation states, connected in a graph. "
+"Node transitions can be configured to happen automatically or via code, "
+"using a shortest-path algorithm. Retrieve the "
+"[AnimationNodeStateMachinePlayback] object from the [AnimationTree] node to "
+"control it programmatically.\n"
+"[b]Example:[/b]\n"
+"[codeblock]\n"
+"var state_machine = $AnimationTree.get(\"parameters/playback\")\n"
+"state_machine.travel(\"some_state\")\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:28
+msgid ""
+"Adds a new node to the graph. The [code]position[/code] is used for display "
+"in the editor."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:41
+msgid "Adds a transition between the given nodes."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:48
+#: doc/classes/AnimationNodeStateMachine.xml:89
+msgid "Returns the graph's end node."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:55
+msgid "Returns the draw offset of the graph. Used for display in the editor."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:64
+msgid "Returns the animation node with the given name."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:73
+msgid "Returns the given animation node's name."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:82
+msgid "Returns the given node's coordinates. Used for display in the editor."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:98
+msgid "Returns the given transition."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:105
+msgid "Returns the number of connections in the graph."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:114
+msgid "Returns the given transition's start node."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:123
+msgid "Returns the given transition's end node."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:132
+msgid "Returns [code]true[/code] if the graph contains the given node."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:143
+msgid ""
+"Returns [code]true[/code] if there is a transition between the given nodes."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:152
+msgid "Deletes the given node from the graph."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:163
+msgid "Deletes the transition between the two specified nodes."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:172
+msgid "Deletes the given transition by index."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:183
+msgid "Renames the given node."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:202
+msgid "Sets the given node as the graph end point."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:211
+msgid "Sets the draw offset of the graph. Used for display in the editor."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:222
+msgid "Sets the node's coordinates. Used for display in the editor."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:231
+msgid "Sets the given node as the graph start point."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachinePlayback.xml:4
+msgid "Playback control for [AnimationNodeStateMachine]."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachinePlayback.xml:7
+msgid ""
+"Allows control of [AnimationTree] state machines created with "
+"[AnimationNodeStateMachine]. Retrieve with [code]$AnimationTree."
+"get(\"parameters/playback\")[/code].\n"
+"[b]Example:[/b]\n"
+"[codeblock]\n"
+"var state_machine = $AnimationTree.get(\"parameters/playback\")\n"
+"state_machine.travel(\"some_state\")\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachinePlayback.xml:22
+msgid "Returns the currently playing animation state."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachinePlayback.xml:29
+msgid ""
+"Returns the current travel path as computed internally by the A* algorithm."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachinePlayback.xml:36
+msgid "Returns [code]true[/code] if an animation is playing."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachinePlayback.xml:45
+msgid "Starts playing the given animation."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachinePlayback.xml:52
+msgid "Stops the currently playing animation."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachinePlayback.xml:61
+msgid ""
+"Transitions from the current state to another one, following the shortest "
+"path."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachineTransition.xml:14
+msgid ""
+"Turn on auto advance when this condition is set. The provided name will "
+"become a boolean parameter on the [AnimationTree] that can be controlled "
+"from code (see [url=https://docs.godotengine.org/en/latest/tutorials/"
+"animation/animation_tree.html#controlling-from-code][/url]). For example, if "
+"[member AnimationTree.tree_root] is an [AnimationNodeStateMachine] and "
+"[member advance_condition] is set to [code]\"idle\"[/code]:\n"
+"[codeblock]\n"
+"$animation_tree[\"parameters/conditions/idle\"] = is_on_floor and "
+"(linear_velocity.x == 0)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachineTransition.xml:20
+msgid ""
+"Turn on the transition automatically when this state is reached. This works "
+"best with [constant SWITCH_MODE_AT_END]."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachineTransition.xml:23
+msgid ""
+"Don't use this transition during [method AnimationNodeStateMachinePlayback."
+"travel] or [member auto_advance]."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachineTransition.xml:26
+msgid ""
+"Lower priority transitions are preferred when travelling through the tree "
+"via [method AnimationNodeStateMachinePlayback.travel] or [member "
+"auto_advance]."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachineTransition.xml:29
+msgid "The transition type."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachineTransition.xml:32
+msgid "The time to cross-fade between this state and the next."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachineTransition.xml:38
+msgid "Emitted when [member advance_condition] is changed."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachineTransition.xml:44
+msgid ""
+"Switch to the next state immediately. The current state will end and blend "
+"into the beginning of the new one."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachineTransition.xml:47
+msgid ""
+"Switch to the next state immediately, but will seek the new state to the "
+"playback position of the old state."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachineTransition.xml:50
+msgid ""
+"Wait for the current state playback to end, then switch to the beginning of "
+"the next state animation."
+msgstr ""
+
+#: doc/classes/AnimationNodeTimeScale.xml:4
+msgid "A time-scaling animation node to be used with [AnimationTree]."
+msgstr ""
+
+#: doc/classes/AnimationNodeTimeScale.xml:7
+msgid ""
+"Allows scaling the speed of the animation (or reversing it) in any children "
+"nodes. Setting it to 0 will pause the animation."
+msgstr ""
+
+#: doc/classes/AnimationNodeTimeSeek.xml:4
+msgid "A time-seeking animation node to be used with [AnimationTree]."
+msgstr ""
+
+#: doc/classes/AnimationNodeTimeSeek.xml:7
+msgid ""
+"This node can be used to cause a seek command to happen to any sub-children "
+"of the graph. After setting the time, this value returns to -1."
+msgstr ""
+
+#: doc/classes/AnimationNodeTransition.xml:4
+msgid "A generic animation transition node for [AnimationTree]."
+msgstr ""
+
+#: doc/classes/AnimationNodeTransition.xml:7
+msgid ""
+"Simple state machine for cases which don't require a more advanced "
+"[AnimationNodeStateMachine]. Animations can be connected to the inputs and "
+"transition times can be specified."
+msgstr ""
+
+#: doc/classes/AnimationNodeTransition.xml:52
+msgid "The number of available input ports for this node."
+msgstr ""
+
+#: doc/classes/AnimationNodeTransition.xml:55
+msgid ""
+"Cross-fading time (in seconds) between each animation connected to the "
+"inputs."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:4
+msgid "Container and player of [Animation] resources."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:7
+msgid ""
+"An animation player is used for general-purpose playback of [Animation] "
+"resources. It contains a dictionary of animations (referenced by name) and "
+"custom blend times between their transitions. Additionally, animations can "
+"be played and blended in different channels.\n"
+"[AnimationPlayer] is more suited than [Tween] for animations where you know "
+"the final values in advance. For example, fading a screen in and out is more "
+"easily done with an [AnimationPlayer] node thanks to the animation tools "
+"provided by the editor. That particular example can also be implemented with "
+"a [Tween] node, but it requires doing everything by code.\n"
+"Updating the target properties of animations occurs at process time."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:12
+msgid ""
+"https://docs.godotengine.org/en/latest/getting_started/step_by_step/"
+"animations.html"
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:24
+msgid ""
+"Adds [code]animation[/code] to the player accessible with the key "
+"[code]name[/code]."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:33
+msgid ""
+"Shifts position in the animation timeline and immediately updates the "
+"animation. [code]delta[/code] is the time in seconds to shift. Events "
+"between the current frame and [code]delta[/code] are handled."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:42
+msgid "Returns the name of the next animation in the queue."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:53
+msgid ""
+"Triggers the [code]anim_to[/code] animation when the [code]anim_from[/code] "
+"animation completes."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:60
+msgid ""
+"[AnimationPlayer] caches animated nodes. It may not notice if a node "
+"disappears; [method clear_caches] forces it to update the cache again."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:67
+msgid "Clears all queued, unplayed animations."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:76
+msgid ""
+"Returns the name of [code]animation[/code] or an empty string if not found."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:85
+msgid ""
+"Returns the [Animation] with key [code]name[/code] or [code]null[/code] if "
+"not found."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:92
+msgid "Returns the list of stored animation names."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:103
+msgid ""
+"Gets the blend time (in seconds) between two animations, referenced by their "
+"names."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:110
+msgid ""
+"Gets the actual playing speed of current animation or 0 if not playing. This "
+"speed is the [member playback_speed] property multiplied by "
+"[code]custom_speed[/code] argument specified when calling the [method play] "
+"method."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:117
+msgid ""
+"Returns a list of the animation names that are currently queued to play."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:126
+msgid ""
+"Returns [code]true[/code] if the [AnimationPlayer] stores an [Animation] "
+"with key [code]name[/code]."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:133
+msgid "Returns [code]true[/code] if playing an animation."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:148
+msgid ""
+"Plays the animation with key [code]name[/code]. Custom blend times and speed "
+"can be set. If [code]custom_speed[/code] is negative and [code]from_end[/"
+"code] is [code]true[/code], the animation will play backwards (which is "
+"equivalent to calling [method play_backwards]).\n"
+"The [AnimationPlayer] keeps track of its current or last played animation "
+"with [member assigned_animation]. If this method is called with that same "
+"animation [code]name[/code], or with no [code]name[/code] parameter, the "
+"assigned animation will resume playing if it was paused, or restart if it "
+"was stopped (see [method stop] for both pause and stop). If the animation "
+"was already playing, it will keep playing.\n"
+"[b]Note:[/b] The animation will be updated the next time the "
+"[AnimationPlayer] is processed. If other variables are updated at the same "
+"time this is called, they may be updated too early. To perform the update "
+"immediately, call [code]advance(0)[/code]."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:161
+msgid ""
+"Plays the animation with key [code]name[/code] in reverse.\n"
+"This method is a shorthand for [method play] with [code]custom_speed = -1.0[/"
+"code] and [code]from_end = true[/code], so see its description for more "
+"information."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:171
+msgid ""
+"Queues an animation for playback once the current one is done.\n"
+"[b]Note:[/b] If a looped animation is currently playing, the queued "
+"animation will never play unless the looped animation is stopped somehow."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:181
+msgid "Removes the animation with key [code]name[/code]."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:192
+msgid ""
+"Renames an existing animation with key [code]name[/code] to [code]newname[/"
+"code]."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:203
+msgid ""
+"Seeks the animation to the [code]seconds[/code] point in time (in seconds). "
+"If [code]update[/code] is [code]true[/code], the animation updates too, "
+"otherwise it updates at process time. Events between the current frame and "
+"[code]seconds[/code] are skipped."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:216
+msgid ""
+"Specifies a blend time (in seconds) between two animations, referenced by "
+"their names."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:225
+msgid ""
+"Stops or pauses the currently playing animation. If [code]reset[/code] is "
+"[code]true[/code], the animation position is reset to [code]0[/code] and the "
+"playback speed is reset to [code]1.0[/code].\n"
+"If [code]reset[/code] is [code]false[/code], the [member "
+"current_animation_position] will be kept and calling [method play] or "
+"[method play_backwards] without arguments or with the same animation name as "
+"[member assigned_animation] will resume the animation."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:232
+msgid ""
+"If playing, the current animation; otherwise, the animation last played. "
+"When set, would change the animation, but would not play it unless currently "
+"playing. See also [member current_animation]."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:235
+msgid "The name of the animation to play when the scene loads."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:238
+msgid ""
+"The name of the current animation, \"\" if not playing anything. When being "
+"set, does not restart the animation. See also [method play]."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:241
+msgid "The length (in seconds) of the currently being played animation."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:244
+msgid "The position (in seconds) of the currently playing animation."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:247
+msgid "The call mode to use for Call Method tracks."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:250
+msgid ""
+"If [code]true[/code], updates animations in response to process-related "
+"notifications."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:253
+msgid ""
+"The default time in which to blend animations. Ranges from 0 to 4096 with "
+"0.01 precision."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:256
+msgid "The process notification in which to update animations."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:259
+msgid ""
+"The speed scaling ratio. For instance, if this value is 1, then the "
+"animation plays at normal speed. If it's 0.5, then it plays at half speed. "
+"If it's 2, then it plays at double speed."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:262
+msgid "The node from which node path references will travel."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:272
+msgid ""
+"If the currently being played animation changes, this signal will notify of "
+"such change."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:279
+msgid "Notifies when an animation finished playing."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:286
+msgid "Notifies when an animation starts playing."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:291
+msgid ""
+"Notifies when the caches have been cleared, either automatically, or "
+"manually via [method clear_caches]."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:297
+msgid ""
+"Process animation during the physics process. This is especially useful when "
+"animating physics bodies."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:300
+msgid "Process animation during the idle process."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:303
+msgid ""
+"Do not process animation. Use [method advance] to process the animation "
+"manually."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:306
+msgid ""
+"Batch method calls during the animation process, then do the calls after "
+"events are processed. This avoids bugs involving deleting nodes or modifying "
+"the AnimationPlayer while playing."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:309
+msgid "Make method calls immediately when reached in the animation."
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:4
+msgid ""
+"A node to be used for advanced animation transitions in an [AnimationPlayer]."
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:7
+msgid ""
+"Note: When linked with an [AnimationPlayer], several properties and methods "
+"of the corresponding [AnimationPlayer] will not function as expected. "
+"Playback and transitions should be handled using only the [AnimationTree] "
+"and its constituent [AnimationNode](s). The [AnimationPlayer] node should be "
+"used solely for adding, deleting, and editing animations."
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:11
+msgid "https://github.com/godotengine/tps-demo"
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:20
+msgid "Manually advance the animations by the specified time (in seconds)."
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:27
+msgid ""
+"Retrieve the motion of the [member root_motion_track] as a [Transform] that "
+"can be used elsewhere. If [member root_motion_track] is not a path to a "
+"track of type [constant Animation.TYPE_TRANSFORM], returns an identity "
+"transformation."
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:43
+msgid "If [code]true[/code], the [AnimationTree] will be processing."
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:46
+msgid "The path to the [AnimationPlayer] used for animating."
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:49
+msgid ""
+"The process mode of this [AnimationTree]. See [enum AnimationProcessMode] "
+"for available modes."
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:52
+msgid ""
+"The path to the Animation track used for root motion. Paths must be valid "
+"scene-tree paths to a node, and must be specified starting from the parent "
+"node of the node that will reproduce the animation. To specify a track that "
+"controls properties or bones, append its name after the path, separated by "
+"[code]\":\"[/code]. For example, [code]\"character/skeleton:ankle\"[/code] "
+"or [code]\"character/mesh:transform/local\"[/code].\n"
+"If the track has type [constant Animation.TYPE_TRANSFORM], the "
+"transformation will be cancelled visually, and the animation will appear to "
+"stay in place."
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:56
+msgid "The root animation node of this [AnimationTree]. See [AnimationNode]."
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:61
+msgid ""
+"The animations will progress during the physics frame (i.e. [method Node."
+"_physics_process])."
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:64
+msgid ""
+"The animations will progress during the idle frame (i.e. [method Node."
+"_process])."
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:67
+msgid "The animations will only progress manually (see [method advance])."
+msgstr ""
+
+#: doc/classes/Area2D.xml:4
+msgid "2D area for detection and 2D physics influence."
+msgstr ""
+
+#: doc/classes/Area2D.xml:7
+msgid ""
+"2D area that detects [CollisionObject2D] nodes overlapping, entering, or "
+"exiting. Can also alter or override local physics parameters (gravity, "
+"damping)."
+msgstr ""
+
+#: doc/classes/Area2D.xml:10
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/physics/using_area_2d.html"
+msgstr ""
+
+#: doc/classes/Area2D.xml:19
+msgid ""
+"Returns an individual bit on the layer mask. Describes whether other areas "
+"will collide with this one on the given layer."
+msgstr ""
+
+#: doc/classes/Area2D.xml:28
+msgid ""
+"Returns an individual bit on the collision mask. Describes whether this area "
+"will collide with others on the given layer."
+msgstr ""
+
+#: doc/classes/Area2D.xml:35
+msgid ""
+"Returns a list of intersecting [Area2D]s. For performance reasons "
+"(collisions are all processed at the same time) this list is modified once "
+"during the physics step, not immediately after objects are moved. Consider "
+"using signals instead."
+msgstr ""
+
+#: doc/classes/Area2D.xml:42
+msgid ""
+"Returns a list of intersecting [PhysicsBody2D]s. For performance reasons "
+"(collisions are all processed at the same time) this list is modified once "
+"during the physics step, not immediately after objects are moved. Consider "
+"using signals instead."
+msgstr ""
+
+#: doc/classes/Area2D.xml:51
+msgid ""
+"If [code]true[/code], the given area overlaps the Area2D.\n"
+"[b]Note:[/b] The result of this test is not immediate after moving objects. "
+"For performance, list of overlaps is updated once per frame and before the "
+"physics step. Consider using signals instead."
+msgstr ""
+
+#: doc/classes/Area2D.xml:61
+msgid ""
+"If [code]true[/code], the given physics body overlaps the Area2D.\n"
+"[b]Note:[/b] The result of this test is not immediate after moving objects. "
+"For performance, list of overlaps is updated once per frame and before the "
+"physics step. Consider using signals instead.\n"
+"The [code]body[/code] argument can either be a [PhysicsBody2D] or a "
+"[TileMap] instance (while TileMaps are not physics body themselves, they "
+"register their tiles with collision shapes as a virtual physics body)."
+msgstr ""
+
+#: doc/classes/Area2D.xml:74
+msgid ""
+"Set/clear individual bits on the layer mask. This makes getting an area in/"
+"out of only one layer easier."
+msgstr ""
+
+#: doc/classes/Area2D.xml:85
+msgid ""
+"Set/clear individual bits on the collision mask. This makes selecting the "
+"areas scanned easier."
+msgstr ""
+
+#: doc/classes/Area2D.xml:91 doc/classes/Area3D.xml:90
+msgid ""
+"The rate at which objects stop spinning in this area. Represents the angular "
+"velocity lost per second. Values range from [code]0[/code] (no damping) to "
+"[code]1[/code] (full damping)."
+msgstr ""
+
+#: doc/classes/Area2D.xml:94 doc/classes/Area3D.xml:93
+msgid "The name of the area's audio bus."
+msgstr ""
+
+#: doc/classes/Area2D.xml:97 doc/classes/Area3D.xml:96
+msgid ""
+"If [code]true[/code], the area's audio bus overrides the default audio bus."
+msgstr ""
+
+#: doc/classes/Area2D.xml:100 doc/classes/Area3D.xml:99
+msgid ""
+"The area's physics layer(s). Collidable objects can exist in any of 32 "
+"different layers. A contact is detected if object A is in any of the layers "
+"that object B scans, or object B is in any layers that object A scans. See "
+"also [member collision_mask]."
+msgstr ""
+
+#: doc/classes/Area2D.xml:103 doc/classes/Area3D.xml:102
+msgid "The physics layers this area scans to determine collision detection."
+msgstr ""
+
+#: doc/classes/Area2D.xml:106 doc/classes/Area3D.xml:105
+msgid ""
+"The area's gravity intensity (ranges from -1024 to 1024). This value "
+"multiplies the gravity vector. This is useful to alter the force of gravity "
+"without altering its direction."
+msgstr ""
+
+#: doc/classes/Area2D.xml:109 doc/classes/Area3D.xml:108
+msgid ""
+"The falloff factor for point gravity. The greater the value, the faster "
+"gravity decreases with distance."
+msgstr ""
+
+#: doc/classes/Area2D.xml:112 doc/classes/Area3D.xml:111
+msgid ""
+"If [code]true[/code], gravity is calculated from a point (set via [member "
+"gravity_vec]). See also [member space_override]."
+msgstr ""
+
+#: doc/classes/Area2D.xml:115 doc/classes/Area3D.xml:114
+msgid ""
+"The area's gravity vector (not normalized). If gravity is a point (see "
+"[member gravity_point]), this will be the point of attraction."
+msgstr ""
+
+#: doc/classes/Area2D.xml:118 doc/classes/Area3D.xml:117
+msgid ""
+"The rate at which objects stop moving in this area. Represents the linear "
+"velocity lost per second. Values range from [code]0[/code] (no damping) to "
+"[code]1[/code] (full damping)."
+msgstr ""
+
+#: doc/classes/Area2D.xml:121 doc/classes/Area3D.xml:120
+msgid "If [code]true[/code], other monitoring areas can detect this area."
+msgstr ""
+
+#: doc/classes/Area2D.xml:124 doc/classes/Area3D.xml:123
+msgid ""
+"If [code]true[/code], the area detects bodies or areas entering and exiting "
+"it."
+msgstr ""
+
+#: doc/classes/Area2D.xml:127 doc/classes/Area3D.xml:126
+msgid "The area's priority. Higher priority areas are processed first."
+msgstr ""
+
+#: doc/classes/Area2D.xml:130 doc/classes/Area3D.xml:141
+msgid ""
+"Override mode for gravity and damping calculations within this area. See "
+"[enum SpaceOverride] for possible values."
+msgstr ""
+
+#: doc/classes/Area2D.xml:138 doc/classes/Area3D.xml:149
+msgid "Emitted when another area enters."
+msgstr ""
+
+#: doc/classes/Area2D.xml:145 doc/classes/Area3D.xml:156
+msgid "Emitted when another area exits."
+msgstr ""
+
+#: doc/classes/Area2D.xml:158
+msgid ""
+"Emitted when another area enters, reporting which shapes overlapped. "
+"[code]shape_owner_get_owner(shape_find_owner(shape))[/code] returns the "
+"parent object of the owner of the [code]shape[/code]."
+msgstr ""
+
+#: doc/classes/Area2D.xml:171
+msgid ""
+"Emitted when another area exits, reporting which shapes were overlapping."
+msgstr ""
+
+#: doc/classes/Area2D.xml:178
+msgid ""
+"Emitted when a physics body enters.\n"
+"The [code]body[/code] argument can either be a [PhysicsBody2D] or a "
+"[TileMap] instance (while TileMaps are not physics body themselves, they "
+"register their tiles with collision shapes as a virtual physics body)."
+msgstr ""
+
+#: doc/classes/Area2D.xml:186
+msgid ""
+"Emitted when a physics body exits.\n"
+"The [code]body[/code] argument can either be a [PhysicsBody2D] or a "
+"[TileMap] instance (while TileMaps are not physics body themselves, they "
+"register their tiles with collision shapes as a virtual physics body)."
+msgstr ""
+
+#: doc/classes/Area2D.xml:200
+msgid ""
+"Emitted when a physics body enters, reporting which shapes overlapped.\n"
+"The [code]body[/code] argument can either be a [PhysicsBody2D] or a "
+"[TileMap] instance (while TileMaps are not physics body themselves, they "
+"register their tiles with collision shapes as a virtual physics body)."
+msgstr ""
+
+#: doc/classes/Area2D.xml:214
+msgid ""
+"Emitted when a physics body exits, reporting which shapes were overlapping.\n"
+"The [code]body[/code] argument can either be a [PhysicsBody2D] or a "
+"[TileMap] instance (while TileMaps are not physics body themselves, they "
+"register their tiles with collision shapes as a virtual physics body)."
+msgstr ""
+
+#: doc/classes/Area2D.xml:221 doc/classes/Area3D.xml:232
+msgid "This area does not affect gravity/damping."
+msgstr ""
+
+#: doc/classes/Area2D.xml:224 doc/classes/Area3D.xml:235
+msgid ""
+"This area adds its gravity/damping values to whatever has been calculated so "
+"far (in [member priority] order)."
+msgstr ""
+
+#: doc/classes/Area2D.xml:227 doc/classes/Area3D.xml:238
+msgid ""
+"This area adds its gravity/damping values to whatever has been calculated so "
+"far (in [member priority] order), ignoring any lower priority areas."
+msgstr ""
+
+#: doc/classes/Area2D.xml:230 doc/classes/Area3D.xml:241
+msgid ""
+"This area replaces any gravity/damping, even the defaults, ignoring any "
+"lower priority areas."
+msgstr ""
+
+#: doc/classes/Area2D.xml:233 doc/classes/Area3D.xml:244
+msgid ""
+"This area replaces any gravity/damping calculated so far (in [member "
+"priority] order), but keeps calculating the rest of the areas."
+msgstr ""
+
+#: doc/classes/Area3D.xml:4
+msgid "General-purpose area node for detection and 3D physics influence."
+msgstr ""
+
+#: doc/classes/Area3D.xml:7
+msgid ""
+"3D area that detects [CollisionObject3D] nodes overlapping, entering, or "
+"exiting. Can also alter or override local physics parameters (gravity, "
+"damping)."
+msgstr ""
+
+#: doc/classes/Area3D.xml:18
+msgid "Returns an individual bit on the layer mask."
+msgstr ""
+
+#: doc/classes/Area3D.xml:27 modules/csg/doc_classes/CSGShape3D.xml:18
+#: modules/csg/doc_classes/CSGShape3D.xml:27 doc/classes/RayCast2D.xml:70
+#: doc/classes/SoftBody3D.xml:35 doc/classes/SoftBody3D.xml:44
+msgid "Returns an individual bit on the collision mask."
+msgstr ""
+
+#: doc/classes/Area3D.xml:34
+msgid ""
+"Returns a list of intersecting [Area3D]s. For performance reasons "
+"(collisions are all processed at the same time) this list is modified once "
+"during the physics step, not immediately after objects are moved. Consider "
+"using signals instead."
+msgstr ""
+
+#: doc/classes/Area3D.xml:41
+msgid ""
+"Returns a list of intersecting [PhysicsBody3D]s. For performance reasons "
+"(collisions are all processed at the same time) this list is modified once "
+"during the physics step, not immediately after objects are moved. Consider "
+"using signals instead."
+msgstr ""
+
+#: doc/classes/Area3D.xml:50
+msgid ""
+"If [code]true[/code], the given area overlaps the Area3D.\n"
+"[b]Note:[/b] The result of this test is not immediate after moving objects. "
+"For performance, list of overlaps is updated once per frame and before the "
+"physics step. Consider using signals instead."
+msgstr ""
+
+#: doc/classes/Area3D.xml:60
+msgid ""
+"If [code]true[/code], the given physics body overlaps the Area3D.\n"
+"[b]Note:[/b] The result of this test is not immediate after moving objects. "
+"For performance, list of overlaps is updated once per frame and before the "
+"physics step. Consider using signals instead.\n"
+"The [code]body[/code] argument can either be a [PhysicsBody3D] or a "
+"[GridMap] instance (while GridMaps are not physics body themselves, they "
+"register their tiles with collision shapes as a virtual physics body)."
+msgstr ""
+
+#: doc/classes/Area3D.xml:73
+msgid ""
+"Set/clear individual bits on the layer mask. This simplifies editing this "
+"[Area3D]'s layers."
+msgstr ""
+
+#: doc/classes/Area3D.xml:84
+msgid ""
+"Set/clear individual bits on the collision mask. This simplifies editing "
+"which [Area3D] layers this [Area3D] scans."
+msgstr ""
+
+#: doc/classes/Area3D.xml:129
+msgid ""
+"The degree to which this area applies reverb to its associated audio. Ranges "
+"from [code]0[/code] to [code]1[/code] with [code]0.1[/code] precision."
+msgstr ""
+
+#: doc/classes/Area3D.xml:132
+msgid "If [code]true[/code], the area applies reverb to its associated audio."
+msgstr ""
+
+#: doc/classes/Area3D.xml:135
+msgid "The reverb bus name to use for this area's associated audio."
+msgstr ""
+
+#: doc/classes/Area3D.xml:138
+msgid ""
+"The degree to which this area's reverb is a uniform effect. Ranges from "
+"[code]0[/code] to [code]1[/code] with [code]0.1[/code] precision."
+msgstr ""
+
+#: doc/classes/Area3D.xml:169
+msgid ""
+"Emitted when another area enters, reporting which areas overlapped. "
+"[code]shape_owner_get_owner(shape_find_owner(shape))[/code] returns the "
+"parent object of the owner of the [code]shape[/code]."
+msgstr ""
+
+#: doc/classes/Area3D.xml:182
+msgid ""
+"Emitted when another area exits, reporting which areas were overlapping."
+msgstr ""
+
+#: doc/classes/Area3D.xml:189
+msgid ""
+"Emitted when a physics body enters.\n"
+"The [code]body[/code] argument can either be a [PhysicsBody3D] or a "
+"[GridMap] instance (while GridMaps are not physics body themselves, they "
+"register their tiles with collision shapes as a virtual physics body)."
+msgstr ""
+
+#: doc/classes/Area3D.xml:197
+msgid ""
+"Emitted when a physics body exits.\n"
+"The [code]body[/code] argument can either be a [PhysicsBody3D] or a "
+"[GridMap] instance (while GridMaps are not physics body themselves, they "
+"register their tiles with collision shapes as a virtual physics body)."
+msgstr ""
+
+#: doc/classes/Area3D.xml:211
+msgid ""
+"Emitted when a physics body enters, reporting which shapes overlapped.\n"
+"The [code]body[/code] argument can either be a [PhysicsBody3D] or a "
+"[GridMap] instance (while GridMaps are not physics body themselves, they "
+"register their tiles with collision shapes as a virtual physics body)."
+msgstr ""
+
+#: doc/classes/Area3D.xml:225
+msgid ""
+"Emitted when a physics body exits, reporting which shapes were overlapping.\n"
+"The [code]body[/code] argument can either be a [PhysicsBody3D] or a "
+"[GridMap] instance (while GridMaps are not physics body themselves, they "
+"register their tiles with collision shapes as a virtual physics body)."
+msgstr ""
+
+#: doc/classes/Array.xml:4
+msgid "Generic array datatype."
+msgstr ""
+
+#: doc/classes/Array.xml:7
+msgid ""
+"Generic array which can contain several elements of any type, accessible by "
+"a numerical index starting at 0. Negative indices can be used to count from "
+"the back, like in Python (-1 is the last element, -2 the second to last, "
+"etc.).\n"
+"[b]Example:[/b]\n"
+"[codeblock]\n"
+"var array = [\"One\", 2, 3, \"Four\"]\n"
+"print(array[0]) # One.\n"
+"print(array[2]) # 3.\n"
+"print(array[-1]) # Four.\n"
+"array[2] = \"Three\"\n"
+"print(array[-2]) # Three.\n"
+"[/codeblock]\n"
+"Arrays can be concatenated using the [code]+[/code] operator:\n"
+"[codeblock]\n"
+"var array1 = [\"One\", 2]\n"
+"var array2 = [3, \"Four\"]\n"
+"print(array1 + array2) # [\"One\", 2, 3, \"Four\"]\n"
+"[/codeblock]\n"
+"[b]Note:[/b] Arrays are always passed by reference. To get a copy of an "
+"array which can be modified independently of the original array, use [method "
+"duplicate]."
+msgstr ""
+
+#: doc/classes/Array.xml:34
+msgid "Constructs an array from a [PackedColorArray]."
+msgstr ""
+
+#: doc/classes/Array.xml:43
+msgid "Constructs an array from a [PackedVector3Array]."
+msgstr ""
+
+#: doc/classes/Array.xml:52
+msgid "Constructs an array from a [PackedVector2Array]."
+msgstr ""
+
+#: doc/classes/Array.xml:61
+msgid "Constructs an array from a [PackedStringArray]."
+msgstr ""
+
+#: doc/classes/Array.xml:70
+msgid "Constructs an array from a [PackedFloat64Array]."
+msgstr ""
+
+#: doc/classes/Array.xml:79
+msgid "Constructs an array from a [PackedFloat32Array]."
+msgstr ""
+
+#: doc/classes/Array.xml:88
+msgid "Constructs an array from a [PackedInt64Array]."
+msgstr ""
+
+#: doc/classes/Array.xml:97
+msgid "Constructs an array from a [PackedInt32Array]."
+msgstr ""
+
+#: doc/classes/Array.xml:106
+msgid "Constructs an array from a [PackedByteArray]."
+msgstr ""
+
+#: doc/classes/Array.xml:115 doc/classes/PackedByteArray.xml:28
+#: doc/classes/PackedColorArray.xml:28 doc/classes/PackedFloat32Array.xml:29
+#: doc/classes/PackedFloat64Array.xml:29 doc/classes/PackedInt32Array.xml:29
+#: doc/classes/PackedInt64Array.xml:29 doc/classes/PackedStringArray.xml:28
+#: doc/classes/PackedVector2Array.xml:28 doc/classes/PackedVector3Array.xml:28
+msgid ""
+"Appends an element at the end of the array (alias of [method push_back])."
+msgstr ""
+
+#: doc/classes/Array.xml:122
+msgid ""
+"Returns the last element of the array, or [code]null[/code] if the array is "
+"empty."
+msgstr ""
+
+#: doc/classes/Array.xml:133
+msgid ""
+"Finds the index of an existing value (or the insertion index that maintains "
+"sorting order, if the value is not yet present in the array) using binary "
+"search. Optionally, a [code]before[/code] specifier can be passed. If "
+"[code]false[/code], the returned index comes after all existing entries of "
+"the value in the array.\n"
+"[b]Note:[/b] Calling [method bsearch] on an unsorted array results in "
+"unexpected behavior."
+msgstr ""
+
+#: doc/classes/Array.xml:149
+msgid ""
+"Finds the index of an existing value (or the insertion index that maintains "
+"sorting order, if the value is not yet present in the array) using binary "
+"search and a custom comparison method. Optionally, a [code]before[/code] "
+"specifier can be passed. If [code]false[/code], the returned index comes "
+"after all existing entries of the value in the array. The custom method "
+"receives two arguments (an element from the array and the value searched "
+"for) and must return [code]true[/code] if the first argument is less than "
+"the second, and return [code]false[/code] otherwise.\n"
+"[b]Note:[/b] Calling [method bsearch] on an unsorted array results in "
+"unexpected behavior."
+msgstr ""
+
+#: doc/classes/Array.xml:157
+msgid ""
+"Clears the array. This is equivalent to using [method resize] with a size of "
+"[code]0[/code]."
+msgstr ""
+
+#: doc/classes/Array.xml:166
+msgid "Returns the number of times an element is in the array."
+msgstr ""
+
+#: doc/classes/Array.xml:175
+msgid ""
+"Returns a copy of the array.\n"
+"If [code]deep[/code] is [code]true[/code], a deep copy is performed: all "
+"nested arrays and dictionaries are duplicated and will not be shared with "
+"the original array. If [code]false[/code], a shallow copy is made and "
+"references to the original nested arrays and dictionaries are kept, so that "
+"modifying a sub-array or dictionary in the copy will also impact those "
+"referenced in the source array."
+msgstr ""
+
+#: doc/classes/Array.xml:183 doc/classes/PackedByteArray.xml:64
+#: doc/classes/PackedColorArray.xml:44 doc/classes/PackedFloat32Array.xml:45
+#: doc/classes/PackedFloat64Array.xml:45 doc/classes/PackedInt32Array.xml:45
+#: doc/classes/PackedInt64Array.xml:45 doc/classes/PackedStringArray.xml:44
+#: doc/classes/PackedVector2Array.xml:44 doc/classes/PackedVector3Array.xml:44
+msgid "Returns [code]true[/code] if the array is empty."
+msgstr ""
+
+#: doc/classes/Array.xml:192
+msgid "Removes the first occurrence of a value from the array."
+msgstr ""
+
+#: doc/classes/Array.xml:203
+msgid ""
+"Searches the array for a value and returns its index or [code]-1[/code] if "
+"not found. Optionally, the initial search index can be passed."
+msgstr ""
+
+#: doc/classes/Array.xml:212
+msgid ""
+"Searches the array in reverse order for a value and returns its index or "
+"[code]-1[/code] if not found."
+msgstr ""
+
+#: doc/classes/Array.xml:219
+msgid ""
+"Returns the first element of the array, or [code]null[/code] if the array is "
+"empty."
+msgstr ""
+
+#: doc/classes/Array.xml:228
+msgid ""
+"Returns [code]true[/code] if the array contains the given value.\n"
+"[codeblock]\n"
+"print([\"inside\", 7].has(\"inside\")) # True\n"
+"print([\"inside\", 7].has(\"outside\")) # False\n"
+"print([\"inside\", 7].has(7)) # True\n"
+"print([\"inside\", 7].has(\"7\")) # False\n"
+"[/codeblock]\n"
+"[b]Note:[/b] This is equivalent to using the [code]in[/code] operator as "
+"follows:\n"
+"[codeblock]\n"
+"# Will evaluate to `true`.\n"
+"if 2 in [2, 4, 6, 8]:\n"
+" pass\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Array.xml:247
+msgid "Returns a hashed integer value representing the array contents."
+msgstr ""
+
+#: doc/classes/Array.xml:258
+msgid ""
+"Inserts a new element at a given position in the array. The position must be "
+"valid, or at the end of the array ([code]pos == size()[/code])."
+msgstr ""
+
+#: doc/classes/Array.xml:265 doc/classes/PackedByteArray.xml:116
+#: doc/classes/PackedColorArray.xml:71 doc/classes/PackedFloat32Array.xml:72
+#: doc/classes/PackedFloat64Array.xml:72 doc/classes/PackedInt32Array.xml:72
+#: doc/classes/PackedInt64Array.xml:72 doc/classes/PackedStringArray.xml:71
+#: doc/classes/PackedVector2Array.xml:71 doc/classes/PackedVector3Array.xml:71
+msgid "Reverses the order of the elements in the array."
+msgstr ""
+
+#: doc/classes/Array.xml:272
+msgid ""
+"Returns the maximum value contained in the array if all elements are of "
+"comparable types. If the elements can't be compared, [code]null[/code] is "
+"returned."
+msgstr ""
+
+#: doc/classes/Array.xml:279
+msgid ""
+"Returns the minimum value contained in the array if all elements are of "
+"comparable types. If the elements can't be compared, [code]null[/code] is "
+"returned."
+msgstr ""
+
+#: doc/classes/Array.xml:286
+msgid ""
+"Removes and returns the last element of the array. Returns [code]null[/code] "
+"if the array is empty."
+msgstr ""
+
+#: doc/classes/Array.xml:293
+msgid ""
+"Removes and returns the first element of the array. Returns [code]null[/"
+"code] if the array is empty."
+msgstr ""
+
+#: doc/classes/Array.xml:302 doc/classes/PackedByteArray.xml:125
+#: doc/classes/PackedFloat32Array.xml:81 doc/classes/PackedFloat64Array.xml:81
+msgid "Appends an element at the end of the array."
+msgstr ""
+
+#: doc/classes/Array.xml:311
+msgid "Adds an element at the beginning of the array."
+msgstr ""
+
+#: doc/classes/Array.xml:320 doc/classes/PackedByteArray.xml:134
+#: doc/classes/PackedColorArray.xml:89 doc/classes/PackedFloat32Array.xml:90
+#: doc/classes/PackedFloat64Array.xml:90 doc/classes/PackedInt32Array.xml:90
+#: doc/classes/PackedInt64Array.xml:90 doc/classes/PackedStringArray.xml:89
+#: doc/classes/PackedVector2Array.xml:89 doc/classes/PackedVector3Array.xml:89
+msgid "Removes an element from the array by index."
+msgstr ""
+
+#: doc/classes/Array.xml:329
+msgid ""
+"Resizes the array to contain a different number of elements. If the array "
+"size is smaller, elements are cleared, if bigger, new elements are "
+"[code]null[/code]."
+msgstr ""
+
+#: doc/classes/Array.xml:340
+msgid ""
+"Searches the array in reverse order. Optionally, a start search index can be "
+"passed. If negative, the start index is considered relative to the end of "
+"the array."
+msgstr ""
+
+#: doc/classes/Array.xml:347
+msgid ""
+"Shuffles the array such that the items will have a random order. This method "
+"uses the global random number generator common to methods such as [method "
+"@GDScript.randi]. Call [method @GDScript.randomize] to ensure that a new "
+"seed will be used each time if you want non-reproducible shuffling."
+msgstr ""
+
+#: doc/classes/Array.xml:354
+msgid "Returns the number of elements in the array."
+msgstr ""
+
+#: doc/classes/Array.xml:369
+msgid ""
+"Duplicates the subset described in the function and returns it in an array, "
+"deeply copying the array if [code]deep[/code] is [code]true[/code]. Lower "
+"and upper index are inclusive, with the [code]step[/code] describing the "
+"change between indices while slicing."
+msgstr ""
+
+#: doc/classes/Array.xml:376
+msgid ""
+"Sorts the array.\n"
+"[b]Note:[/b] Strings are sorted in alphabetical order (as opposed to natural "
+"order). This may lead to unexpected behavior when sorting an array of "
+"strings ending with a sequence of numbers. Consider the following example:\n"
+"[codeblock]\n"
+"var strings = [\"string1\", \"string2\", \"string10\", \"string11\"]\n"
+"strings.sort()\n"
+"print(strings) # Prints [string1, string10, string11, string2]\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Array.xml:393
+msgid ""
+"Sorts the array using a custom method. The arguments are an object that "
+"holds the method and the name of such method. The custom method receives two "
+"arguments (a pair of elements from the array) and must return either "
+"[code]true[/code] or [code]false[/code].\n"
+"[b]Note:[/b] you cannot randomize the return value as the heapsort algorithm "
+"expects a deterministic result. Doing so will result in unexpected "
+"behavior.\n"
+"[codeblock]\n"
+"class MyCustomSorter:\n"
+" static func sort_ascending(a, b):\n"
+" if a[0] < b[0]:\n"
+" return true\n"
+" return false\n"
+"\n"
+"var my_items = [[5, \"Potato\"], [9, \"Rice\"], [4, \"Tomato\"]]\n"
+"my_items.sort_custom(MyCustomSorter, \"sort_ascending\")\n"
+"print(my_items) # Prints [[4, Tomato], [5, Potato], [9, Rice]].\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:4
+msgid ""
+"[Mesh] type that provides utility for constructing a surface from arrays."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:7
+msgid ""
+"The [ArrayMesh] is used to construct a [Mesh] by specifying the attributes "
+"as arrays.\n"
+"The most basic example is the creation of a single triangle:\n"
+"[codeblock]\n"
+"var vertices = PackedVector3Array()\n"
+"vertices.push_back(Vector3(0, 1, 0))\n"
+"vertices.push_back(Vector3(1, 0, 0))\n"
+"vertices.push_back(Vector3(0, 0, 1))\n"
+"# Initialize the ArrayMesh.\n"
+"var arr_mesh = ArrayMesh.new()\n"
+"var arrays = []\n"
+"arrays.resize(ArrayMesh.ARRAY_MAX)\n"
+"arrays[ArrayMesh.ARRAY_VERTEX] = vertices\n"
+"# Create the Mesh.\n"
+"arr_mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLES, arrays)\n"
+"var m = MeshInstance3D.new()\n"
+"m.mesh = arr_mesh\n"
+"[/codeblock]\n"
+"The [MeshInstance3D] is ready to be added to the [SceneTree] to be shown.\n"
+"See also [ImmediateGeometry3D], [MeshDataTool] and [SurfaceTool] for "
+"procedural geometry generation.\n"
+"[b]Note:[/b] Godot uses clockwise [url=https://learnopengl.com/Advanced-"
+"OpenGL/Face-culling]winding order[/url] for front faces of triangle "
+"primitive modes."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:29
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/content/procedural_geometry/"
+"arraymesh.html"
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:38
+msgid ""
+"Adds name for a blend shape that will be added with [method "
+"add_surface_from_arrays]. Must be called before surface is added."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:57
+msgid ""
+"Creates a new surface.\n"
+"Surfaces are created to be rendered using a [code]primitive[/code], which "
+"may be any of the types defined in [enum Mesh.PrimitiveType]. (As a note, "
+"when using indices, it is recommended to only use points, lines or "
+"triangles.) [method Mesh.get_surface_count] will become the [code]surf_idx[/"
+"code] for this new surface.\n"
+"The [code]arrays[/code] argument is an array of arrays. See [enum ArrayType] "
+"for the values used in this array. For example, [code]arrays[0][/code] is "
+"the array of vertices. That first vertex sub-array is always required; the "
+"others are optional. Adding an index array puts this function into \"index "
+"mode\" where the vertex and other arrays become the sources of data and the "
+"index array defines the vertex order. All sub-arrays must have the same "
+"length as the vertex array or be empty, except for [constant ARRAY_INDEX] if "
+"it is used.\n"
+"Adding an index array puts this function into \"index mode\" where the "
+"vertex and other arrays become the sources of data, and the index array "
+"defines the order of the vertices."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:67
+msgid "Removes all blend shapes from this [ArrayMesh]."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:74
+msgid "Removes all surfaces from this [ArrayMesh]."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:81
+msgid "Returns the number of blend shapes that the [ArrayMesh] holds."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:90
+msgid "Returns the name of the blend shape at this index."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:101
+msgid ""
+"Will perform a UV unwrap on the [ArrayMesh] to prepare the mesh for "
+"lightmapping."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:108
+msgid "Will regenerate normal maps for the [ArrayMesh]."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:117
+msgid ""
+"Returns the index of the first surface with this name held within this "
+"[ArrayMesh]. If none are found, -1 is returned."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:126
+msgid ""
+"Returns the length in indices of the index array in the requested surface "
+"(see [method add_surface_from_arrays])."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:135
+msgid ""
+"Returns the length in vertices of the vertex array in the requested surface "
+"(see [method add_surface_from_arrays])."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:144
+msgid ""
+"Returns the format mask of the requested surface (see [method "
+"add_surface_from_arrays])."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:153
+msgid "Gets the name assigned to this surface."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:162
+msgid ""
+"Returns the primitive type of the requested surface (see [method "
+"add_surface_from_arrays])."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:173
+msgid "Sets a name for a given surface."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:186
+msgid ""
+"Updates a specified region of mesh arrays on the GPU.\n"
+"[b]Warning:[/b] Only use if you know what you are doing. You can easily "
+"cause crashes by calling this function with improper arguments."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:193
+msgid "Sets the blend shape mode to one of [enum Mesh.BlendShapeMode]."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:196
+msgid ""
+"Overrides the [AABB] with one defined by user for use with frustum culling. "
+"Especially useful to avoid unexpected culling when using a shader to offset "
+"vertices."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:201
+msgid "Default value used for index_array_len when no indices are present."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:204
+msgid "Amount of weights/bone indices per vertex (always 4)."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:207
+msgid ""
+"[PackedVector3Array], [PackedVector2Array], or [Array] of vertex positions."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:210
+msgid "[PackedVector3Array] of vertex normals."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:213
+msgid ""
+"[PackedFloat32Array] of vertex tangents. Each element in groups of 4 floats, "
+"first 3 floats determine the tangent, and the last the binormal direction as "
+"-1 or 1."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:216
+msgid "[PackedColorArray] of vertex colors."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:219
+msgid "[PackedVector2Array] for UV coordinates."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:222
+msgid "[PackedVector2Array] for second UV coordinates."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:225
+msgid ""
+"[PackedFloat32Array] or [PackedInt32Array] of bone indices. Each element in "
+"groups of 4 floats."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:228
+msgid ""
+"[PackedFloat32Array] of bone weights. Each element in groups of 4 floats."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:231
+msgid ""
+"[PackedInt32Array] of integers used as indices referencing vertices, colors, "
+"normals, tangents, and textures. All of those arrays must have the same "
+"number of elements as the vertex array. No index can be beyond the vertex "
+"array size. When this index array is present, it puts the function into "
+"\"index mode,\" where the index selects the *i*'th vertex, normal, tangent, "
+"color, UV, etc. This means if you want to have different normals or colors "
+"along an edge, you have to duplicate the vertices.\n"
+"For triangles, the index array is interpreted as triples, referring to the "
+"vertices of each triangle. For lines, the index array is in pairs indicating "
+"the start and end of each line."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:235 doc/classes/Mesh.xml:210
+#: doc/classes/RenderingServer.xml:3111
+msgid "Represents the size of the [enum ArrayType] enum."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:238
+msgid "Array format will include vertices (mandatory)."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:241
+msgid "Array format will include normals."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:244
+msgid "Array format will include tangents."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:247
+msgid "Array format will include a color array."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:250
+msgid "Array format will include UVs."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:253
+msgid "Array format will include another set of UVs."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:256
+msgid "Array format will include bone indices."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:259
+msgid "Array format will include bone weights."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:262
+msgid "Index array will be used."
+msgstr ""
+
+#: doc/classes/AStar.xml:4
+msgid ""
+"An implementation of A* to find shortest paths among connected points in "
+"space."
+msgstr ""
+
+#: doc/classes/AStar.xml:7
+msgid ""
+"A* (A star) is a computer algorithm that is widely used in pathfinding and "
+"graph traversal, the process of plotting short paths among vertices "
+"(points), passing through a given set of edges (segments). It enjoys "
+"widespread use due to its performance and accuracy. Godot's A* "
+"implementation uses points in three-dimensional space and Euclidean "
+"distances by default.\n"
+"You must add points manually with [method add_point] and create segments "
+"manually with [method connect_points]. Then you can test if there is a path "
+"between two points with the [method are_points_connected] function, get a "
+"path containing indices by [method get_id_path], or one containing actual "
+"coordinates with [method get_point_path].\n"
+"It is also possible to use non-Euclidean distances. To do so, create a class "
+"that extends [code]AStar[/code] and override methods [method _compute_cost] "
+"and [method _estimate_cost]. Both take two indices and return a length, as "
+"is shown in the following example.\n"
+"[codeblock]\n"
+"class MyAStar:\n"
+" extends AStar\n"
+"\n"
+" func _compute_cost(u, v):\n"
+" return abs(u - v)\n"
+"\n"
+" func _estimate_cost(u, v):\n"
+" return min(0, abs(u - v) - 1)\n"
+"[/codeblock]\n"
+"[method _estimate_cost] should return a lower bound of the distance, i.e. "
+"[code]_estimate_cost(u, v) <= _compute_cost(u, v)[/code]. This serves as a "
+"hint to the algorithm because the custom [code]_compute_cost[/code] might be "
+"computation-heavy. If this is not the case, make [method _estimate_cost] "
+"return the same value as [method _compute_cost] to provide the algorithm "
+"with the most accurate information."
+msgstr ""
+
+#: doc/classes/AStar.xml:33
+msgid ""
+"Called when computing the cost between two connected points.\n"
+"Note that this function is hidden in the default [code]AStar[/code] class."
+msgstr ""
+
+#: doc/classes/AStar.xml:45
+msgid ""
+"Called when estimating the cost between a point and the path's ending "
+"point.\n"
+"Note that this function is hidden in the default [code]AStar[/code] class."
+msgstr ""
+
+#: doc/classes/AStar.xml:59
+msgid ""
+"Adds a new point at the given position with the given identifier. The "
+"algorithm prefers points with lower [code]weight_scale[/code] to form a "
+"path. The [code]id[/code] must be 0 or larger, and the [code]weight_scale[/"
+"code] must be 1 or larger.\n"
+"[codeblock]\n"
+"var astar = AStar.new()\n"
+"astar.add_point(1, Vector3(1, 0, 0), 4) # Adds the point (1, 0, 0) with "
+"weight_scale 4 and id 1\n"
+"[/codeblock]\n"
+"If there already exists a point for the given [code]id[/code], its position "
+"and weight scale are updated to the given values."
+msgstr ""
+
+#: doc/classes/AStar.xml:77
+msgid ""
+"Returns whether the two given points are directly connected by a segment. If "
+"[code]bidirectional[/code] is [code]false[/code], returns whether movement "
+"from [code]id[/code] to [code]to_id[/code] is possible through this segment."
+msgstr ""
+
+#: doc/classes/AStar.xml:84 doc/classes/AStar2D.xml:69
+msgid "Clears all the points and segments."
+msgstr ""
+
+#: doc/classes/AStar.xml:97
+msgid ""
+"Creates a segment between the given points. If [code]bidirectional[/code] is "
+"[code]false[/code], only movement from [code]id[/code] to [code]to_id[/code] "
+"is allowed, not the reverse direction.\n"
+"[codeblock]\n"
+"var astar = AStar.new()\n"
+"astar.add_point(1, Vector3(1, 1, 0))\n"
+"astar.add_point(2, Vector3(0, 5, 0))\n"
+"astar.connect_points(1, 2, false)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/AStar.xml:116
+msgid ""
+"Deletes the segment between the given points. If [code]bidirectional[/code] "
+"is [code]false[/code], only movement from [code]id[/code] to [code]to_id[/"
+"code] is prevented, and a unidirectional segment possibly remains."
+msgstr ""
+
+#: doc/classes/AStar.xml:123 doc/classes/AStar2D.xml:106
+msgid "Returns the next available point ID with no point associated to it."
+msgstr ""
+
+#: doc/classes/AStar.xml:134 doc/classes/AStar2D.xml:117
+msgid ""
+"Returns the ID of the closest point to [code]to_position[/code], optionally "
+"taking disabled points into account. Returns [code]-1[/code] if there are no "
+"points in the points pool.\n"
+"[b]Note:[/b] If several points are the closest to [code]to_position[/code], "
+"the one with the smallest ID will be returned, ensuring a deterministic "
+"result."
+msgstr ""
+
+#: doc/classes/AStar.xml:144
+msgid ""
+"Returns the closest position to [code]to_position[/code] that resides inside "
+"a segment between two connected points.\n"
+"[codeblock]\n"
+"var astar = AStar.new()\n"
+"astar.add_point(1, Vector3(0, 0, 0))\n"
+"astar.add_point(2, Vector3(0, 5, 0))\n"
+"astar.connect_points(1, 2)\n"
+"var res = astar.get_closest_position_in_segment(Vector3(3, 3, 0)) # Returns "
+"(0, 3, 0)\n"
+"[/codeblock]\n"
+"The result is in the segment that goes from [code]y = 0[/code] to [code]y = "
+"5[/code]. It's the closest position in the segment to the given point."
+msgstr ""
+
+#: doc/classes/AStar.xml:163
+msgid ""
+"Returns an array with the IDs of the points that form the path found by "
+"AStar between the given points. The array is ordered from the starting point "
+"to the ending point of the path.\n"
+"[codeblock]\n"
+"var astar = AStar.new()\n"
+"astar.add_point(1, Vector3(0, 0, 0))\n"
+"astar.add_point(2, Vector3(0, 1, 0), 1) # Default weight is 1\n"
+"astar.add_point(3, Vector3(1, 1, 0))\n"
+"astar.add_point(4, Vector3(2, 0, 0))\n"
+"\n"
+"astar.connect_points(1, 2, false)\n"
+"astar.connect_points(2, 3, false)\n"
+"astar.connect_points(4, 3, false)\n"
+"astar.connect_points(1, 4, false)\n"
+"\n"
+"var res = astar.get_id_path(1, 3) # Returns [1, 2, 3]\n"
+"[/codeblock]\n"
+"If you change the 2nd point's weight to 3, then the result will be [code][1, "
+"4, 3][/code] instead, because now even though the distance is longer, it's "
+"\"easier\" to get through point 4 than through point 2."
+msgstr ""
+
+#: doc/classes/AStar.xml:185 doc/classes/AStar2D.xml:168
+msgid ""
+"Returns the capacity of the structure backing the points, useful in "
+"conjunction with [code]reserve_space[/code]."
+msgstr ""
+
+#: doc/classes/AStar.xml:194
+msgid ""
+"Returns an array with the IDs of the points that form the connection with "
+"the given point.\n"
+"[codeblock]\n"
+"var astar = AStar.new()\n"
+"astar.add_point(1, Vector3(0, 0, 0))\n"
+"astar.add_point(2, Vector3(0, 1, 0))\n"
+"astar.add_point(3, Vector3(1, 1, 0))\n"
+"astar.add_point(4, Vector3(2, 0, 0))\n"
+"\n"
+"astar.connect_points(1, 2, true)\n"
+"astar.connect_points(1, 3, true)\n"
+"\n"
+"var neighbors = astar.get_point_connections(1) # Returns [2, 3]\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/AStar.xml:213 doc/classes/AStar2D.xml:196
+msgid "Returns the number of points currently in the points pool."
+msgstr ""
+
+#: doc/classes/AStar.xml:224
+msgid ""
+"Returns an array with the points that are in the path found by AStar between "
+"the given points. The array is ordered from the starting point to the ending "
+"point of the path."
+msgstr ""
+
+#: doc/classes/AStar.xml:233 doc/classes/AStar2D.xml:216
+msgid ""
+"Returns the position of the point associated with the given [code]id[/code]."
+msgstr ""
+
+#: doc/classes/AStar.xml:242 doc/classes/AStar2D.xml:225
+msgid ""
+"Returns the weight scale of the point associated with the given [code]id[/"
+"code]."
+msgstr ""
+
+#: doc/classes/AStar.xml:249 doc/classes/AStar2D.xml:232
+msgid "Returns an array of all points."
+msgstr ""
+
+#: doc/classes/AStar.xml:258 doc/classes/AStar2D.xml:241
+msgid ""
+"Returns whether a point associated with the given [code]id[/code] exists."
+msgstr ""
+
+#: doc/classes/AStar.xml:267 doc/classes/AStar2D.xml:250
+msgid ""
+"Returns whether a point is disabled or not for pathfinding. By default, all "
+"points are enabled."
+msgstr ""
+
+#: doc/classes/AStar.xml:276 doc/classes/AStar2D.xml:259
+msgid ""
+"Removes the point associated with the given [code]id[/code] from the points "
+"pool."
+msgstr ""
+
+#: doc/classes/AStar.xml:285 doc/classes/AStar2D.xml:268
+msgid ""
+"Reserves space internally for [code]num_nodes[/code] points, useful if "
+"you're adding a known large number of points at once, for a grid for "
+"instance. New capacity must be greater or equals to old capacity."
+msgstr ""
+
+#: doc/classes/AStar.xml:296 doc/classes/AStar2D.xml:279
+msgid ""
+"Disables or enables the specified point for pathfinding. Useful for making a "
+"temporary obstacle."
+msgstr ""
+
+#: doc/classes/AStar.xml:307 doc/classes/AStar2D.xml:290
+msgid ""
+"Sets the [code]position[/code] for the point with the given [code]id[/code]."
+msgstr ""
+
+#: doc/classes/AStar.xml:318 doc/classes/AStar2D.xml:301
+msgid ""
+"Sets the [code]weight_scale[/code] for the point with the given [code]id[/"
+"code]."
+msgstr ""
+
+#: doc/classes/AStar2D.xml:4
+msgid "AStar class representation that uses 2D vectors as edges."
+msgstr ""
+
+#: doc/classes/AStar2D.xml:7
+msgid ""
+"This is a wrapper for the [AStar] class which uses 2D vectors instead of 3D "
+"vectors."
+msgstr ""
+
+#: doc/classes/AStar2D.xml:20
+msgid ""
+"Called when computing the cost between two connected points.\n"
+"Note that this function is hidden in the default [code]AStar2D[/code] class."
+msgstr ""
+
+#: doc/classes/AStar2D.xml:32
+msgid ""
+"Called when estimating the cost between a point and the path's ending "
+"point.\n"
+"Note that this function is hidden in the default [code]AStar2D[/code] class."
+msgstr ""
+
+#: doc/classes/AStar2D.xml:46
+msgid ""
+"Adds a new point at the given position with the given identifier. The "
+"algorithm prefers points with lower [code]weight_scale[/code] to form a "
+"path. The [code]id[/code] must be 0 or larger, and the [code]weight_scale[/"
+"code] must be 1 or larger.\n"
+"[codeblock]\n"
+"var astar = AStar2D.new()\n"
+"astar.add_point(1, Vector2(1, 0), 4) # Adds the point (1, 0) with "
+"weight_scale 4 and id 1\n"
+"[/codeblock]\n"
+"If there already exists a point for the given [code]id[/code], its position "
+"and weight scale are updated to the given values."
+msgstr ""
+
+#: doc/classes/AStar2D.xml:62
+msgid "Returns whether there is a connection/segment between the given points."
+msgstr ""
+
+#: doc/classes/AStar2D.xml:82
+msgid ""
+"Creates a segment between the given points. If [code]bidirectional[/code] is "
+"[code]false[/code], only movement from [code]id[/code] to [code]to_id[/code] "
+"is allowed, not the reverse direction.\n"
+"[codeblock]\n"
+"var astar = AStar2D.new()\n"
+"astar.add_point(1, Vector2(1, 1))\n"
+"astar.add_point(2, Vector2(0, 5))\n"
+"astar.connect_points(1, 2, false)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/AStar2D.xml:99
+msgid "Deletes the segment between the given points."
+msgstr ""
+
+#: doc/classes/AStar2D.xml:127
+msgid ""
+"Returns the closest position to [code]to_position[/code] that resides inside "
+"a segment between two connected points.\n"
+"[codeblock]\n"
+"var astar = AStar2D.new()\n"
+"astar.add_point(1, Vector2(0, 0))\n"
+"astar.add_point(2, Vector2(0, 5))\n"
+"astar.connect_points(1, 2)\n"
+"var res = astar.get_closest_position_in_segment(Vector2(3, 3)) # Returns (0, "
+"3)\n"
+"[/codeblock]\n"
+"The result is in the segment that goes from [code]y = 0[/code] to [code]y = "
+"5[/code]. It's the closest position in the segment to the given point."
+msgstr ""
+
+#: doc/classes/AStar2D.xml:146
+msgid ""
+"Returns an array with the IDs of the points that form the path found by "
+"AStar2D between the given points. The array is ordered from the starting "
+"point to the ending point of the path.\n"
+"[codeblock]\n"
+"var astar = AStar2D.new()\n"
+"astar.add_point(1, Vector2(0, 0))\n"
+"astar.add_point(2, Vector2(0, 1), 1) # Default weight is 1\n"
+"astar.add_point(3, Vector2(1, 1))\n"
+"astar.add_point(4, Vector2(2, 0))\n"
+"\n"
+"astar.connect_points(1, 2, false)\n"
+"astar.connect_points(2, 3, false)\n"
+"astar.connect_points(4, 3, false)\n"
+"astar.connect_points(1, 4, false)\n"
+"\n"
+"var res = astar.get_id_path(1, 3) # Returns [1, 2, 3]\n"
+"[/codeblock]\n"
+"If you change the 2nd point's weight to 3, then the result will be [code][1, "
+"4, 3][/code] instead, because now even though the distance is longer, it's "
+"\"easier\" to get through point 4 than through point 2."
+msgstr ""
+
+#: doc/classes/AStar2D.xml:177
+msgid ""
+"Returns an array with the IDs of the points that form the connection with "
+"the given point.\n"
+"[codeblock]\n"
+"var astar = AStar2D.new()\n"
+"astar.add_point(1, Vector2(0, 0))\n"
+"astar.add_point(2, Vector2(0, 1))\n"
+"astar.add_point(3, Vector2(1, 1))\n"
+"astar.add_point(4, Vector2(2, 0))\n"
+"\n"
+"astar.connect_points(1, 2, true)\n"
+"astar.connect_points(1, 3, true)\n"
+"\n"
+"var neighbors = astar.get_point_connections(1) # Returns [2, 3]\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/AStar2D.xml:207
+msgid ""
+"Returns an array with the points that are in the path found by AStar2D "
+"between the given points. The array is ordered from the starting point to "
+"the ending point of the path."
+msgstr ""
+
+#: doc/classes/AtlasTexture.xml:4
+msgid ""
+"Packs multiple small textures in a single, bigger one. Helps to optimize "
+"video memory costs and render calls."
+msgstr ""
+
+#: doc/classes/AtlasTexture.xml:7
+msgid ""
+"[Texture2D] resource aimed at managing big textures files that pack multiple "
+"smaller textures. Consists of a [Texture2D], a margin that defines the "
+"border width, and a region that defines the actual area of the AtlasTexture."
+msgstr ""
+
+#: doc/classes/AtlasTexture.xml:15
+msgid "The texture that contains the atlas. Can be any [Texture2D] subtype."
+msgstr ""
+
+#: doc/classes/AtlasTexture.xml:18
+msgid ""
+"If [code]true[/code], clips the area outside of the region to avoid bleeding "
+"of the surrounding texture pixels."
+msgstr ""
+
+#: doc/classes/AtlasTexture.xml:21
+msgid ""
+"The margin around the region. The [Rect2]'s [member Rect2.size] parameter "
+"(\"w\" and \"h\" in the editor) resizes the texture so it fits within the "
+"margin."
+msgstr ""
+
+#: doc/classes/AtlasTexture.xml:24
+msgid "The AtlasTexture's used region."
+msgstr ""
+
+#: doc/classes/AudioBusLayout.xml:4
+msgid "Stores information about the audio buses."
+msgstr ""
+
+#: doc/classes/AudioBusLayout.xml:7
+msgid ""
+"Stores position, muting, solo, bypass, effects, effect position, volume, and "
+"the connections between buses. See [AudioServer] for usage."
+msgstr ""
+
+#: doc/classes/AudioEffect.xml:4
+msgid "Audio effect for audio."
+msgstr ""
+
+#: doc/classes/AudioEffect.xml:7
+msgid ""
+"Base resource for audio bus. Applies an audio effect on the bus that the "
+"resource is applied on."
+msgstr ""
+
+#: doc/classes/AudioEffectAmplify.xml:4
+msgid ""
+"Adds an amplifying audio effect to an audio bus.\n"
+"Increases or decreases the volume of the selected audio bus."
+msgstr ""
+
+#: doc/classes/AudioEffectAmplify.xml:8
+msgid "Increases or decreases the volume being routed through the audio bus."
+msgstr ""
+
+#: doc/classes/AudioEffectAmplify.xml:16
+msgid ""
+"Amount of amplification in decibels. Positive values make the sound louder, "
+"negative values make it quieter. Value can range from -80 to 24."
+msgstr ""
+
+#: doc/classes/AudioEffectBandLimitFilter.xml:4
+msgid "Adds a band limit filter to the audio bus."
+msgstr ""
+
+#: doc/classes/AudioEffectBandLimitFilter.xml:7
+msgid ""
+"Limits the frequencies in a range around the [member AudioEffectFilter."
+"cutoff_hz] and allows frequencies outside of this range to pass."
+msgstr ""
+
+#: doc/classes/AudioEffectBandPassFilter.xml:4
+msgid "Adds a band pass filter to the audio bus."
+msgstr ""
+
+#: doc/classes/AudioEffectBandPassFilter.xml:7
+msgid ""
+"Attenuates the frequencies inside of a range around the [member "
+"AudioEffectFilter.cutoff_hz] and cuts frequencies outside of this band."
+msgstr ""
+
+#: doc/classes/AudioEffectChorus.xml:4
+msgid "Adds a chorus audio effect."
+msgstr ""
+
+#: doc/classes/AudioEffectChorus.xml:7
+msgid ""
+"Adds a chorus audio effect. The effect applies a filter with voices to "
+"duplicate the audio source and manipulate it through the filter."
+msgstr ""
+
+#: doc/classes/AudioEffectChorus.xml:123
+msgid "The effect's raw signal."
+msgstr ""
+
+#: doc/classes/AudioEffectChorus.xml:126 doc/classes/AudioEffectChorus.xml:144
+#: doc/classes/AudioEffectChorus.xml:162 doc/classes/AudioEffectChorus.xml:180
+msgid "The voice's cutoff frequency."
+msgstr ""
+
+#: doc/classes/AudioEffectChorus.xml:129 doc/classes/AudioEffectChorus.xml:147
+#: doc/classes/AudioEffectChorus.xml:165 doc/classes/AudioEffectChorus.xml:183
+msgid "The voice's signal delay."
+msgstr ""
+
+#: doc/classes/AudioEffectChorus.xml:132 doc/classes/AudioEffectChorus.xml:150
+#: doc/classes/AudioEffectChorus.xml:168 doc/classes/AudioEffectChorus.xml:186
+msgid "The voice filter's depth."
+msgstr ""
+
+#: doc/classes/AudioEffectChorus.xml:135 doc/classes/AudioEffectChorus.xml:153
+#: doc/classes/AudioEffectChorus.xml:171 doc/classes/AudioEffectChorus.xml:189
+msgid "The voice's volume."
+msgstr ""
+
+#: doc/classes/AudioEffectChorus.xml:138 doc/classes/AudioEffectChorus.xml:156
+#: doc/classes/AudioEffectChorus.xml:174 doc/classes/AudioEffectChorus.xml:192
+msgid "The voice's pan level."
+msgstr ""
+
+#: doc/classes/AudioEffectChorus.xml:141 doc/classes/AudioEffectChorus.xml:159
+#: doc/classes/AudioEffectChorus.xml:177 doc/classes/AudioEffectChorus.xml:195
+msgid "The voice's filter rate."
+msgstr ""
+
+#: doc/classes/AudioEffectChorus.xml:198
+msgid "The amount of voices in the effect."
+msgstr ""
+
+#: doc/classes/AudioEffectChorus.xml:201
+msgid "The effect's processed signal."
+msgstr ""
+
+#: doc/classes/AudioEffectCompressor.xml:4
+msgid ""
+"Adds a compressor audio effect to an audio bus.\n"
+"Reduces sounds that exceed a certain threshold level, smooths out the "
+"dynamics and increases the overall volume."
+msgstr ""
+
+#: doc/classes/AudioEffectCompressor.xml:8
+msgid ""
+"Dynamic range compressor reduces the level of the sound when the amplitude "
+"goes over a certain threshold in Decibels. One of the main uses of a "
+"compressor is to increase the dynamic range by clipping as little as "
+"possible (when sound goes over 0dB).\n"
+"Compressor has many uses in the mix:\n"
+"- In the Master bus to compress the whole output (although an "
+"[AudioEffectLimiter] is probably better).\n"
+"- In voice channels to ensure they sound as balanced as possible.\n"
+"- Sidechained. This can reduce the sound level sidechained with another "
+"audio bus for threshold detection. This technique is common in video game "
+"mixing to the level of music and SFX while voices are being heard.\n"
+"- Accentuates transients by using a wider attack, making effects sound more "
+"punchy."
+msgstr ""
+
+#: doc/classes/AudioEffectCompressor.xml:21
+msgid ""
+"Compressor's reaction time when the signal exceeds the threshold, in "
+"microseconds. Value can range from 20 to 2000."
+msgstr ""
+
+#: doc/classes/AudioEffectCompressor.xml:24
+msgid "Gain applied to the output signal."
+msgstr ""
+
+#: doc/classes/AudioEffectCompressor.xml:27
+msgid ""
+"Balance between original signal and effect signal. Value can range from 0 "
+"(totally dry) to 1 (totally wet)."
+msgstr ""
+
+#: doc/classes/AudioEffectCompressor.xml:30
+msgid ""
+"Amount of compression applied to the audio once it passes the threshold "
+"level. The higher the ratio, the more the loud parts of the audio will be "
+"compressed. Value can range from 1 to 48."
+msgstr ""
+
+#: doc/classes/AudioEffectCompressor.xml:33
+msgid ""
+"Compressor's delay time to stop reducing the signal after the signal level "
+"falls below the threshold, in milliseconds. Value can range from 20 to 2000."
+msgstr ""
+
+#: doc/classes/AudioEffectCompressor.xml:36
+msgid "Reduce the sound level using another audio bus for threshold detection."
+msgstr ""
+
+#: doc/classes/AudioEffectCompressor.xml:39
+msgid ""
+"The level above which compression is applied to the audio. Value can range "
+"from -60 to 0."
+msgstr ""
+
+#: doc/classes/AudioEffectDelay.xml:4
+msgid ""
+"Adds a delay audio effect to an audio bus. Plays input signal back after a "
+"period of time.\n"
+"Two tap delay and feedback options."
+msgstr ""
+
+#: doc/classes/AudioEffectDelay.xml:8
+msgid ""
+"Plays input signal back after a period of time. The delayed signal may be "
+"played back multiple times to create the sound of a repeating, decaying "
+"echo. Delay effects range from a subtle echo effect to a pronounced blending "
+"of previous sounds with new sounds."
+msgstr ""
+
+#: doc/classes/AudioEffectDelay.xml:16
+msgid ""
+"Output percent of original sound. At 0, only delayed sounds are output. "
+"Value can range from 0 to 1."
+msgstr ""
+
+#: doc/classes/AudioEffectDelay.xml:19
+msgid "If [code]true[/code], feedback is enabled."
+msgstr ""
+
+#: doc/classes/AudioEffectDelay.xml:22
+msgid "Feedback delay time in milliseconds."
+msgstr ""
+
+#: doc/classes/AudioEffectDelay.xml:25 doc/classes/AudioEffectDelay.xml:37
+msgid "Sound level for [code]tap1[/code]."
+msgstr ""
+
+#: doc/classes/AudioEffectDelay.xml:28
+msgid ""
+"Low-pass filter for feedback, in Hz. Frequencies below this value are "
+"filtered out of the source signal."
+msgstr ""
+
+#: doc/classes/AudioEffectDelay.xml:31
+msgid "If [code]true[/code], [code]tap1[/code] will be enabled."
+msgstr ""
+
+#: doc/classes/AudioEffectDelay.xml:34
+msgid "[code]tap1[/code] delay time in milliseconds."
+msgstr ""
+
+#: doc/classes/AudioEffectDelay.xml:40
+msgid ""
+"Pan position for [code]tap1[/code]. Value can range from -1 (fully left) to "
+"1 (fully right)."
+msgstr ""
+
+#: doc/classes/AudioEffectDelay.xml:43
+msgid "If [code]true[/code], [code]tap2[/code] will be enabled."
+msgstr ""
+
+#: doc/classes/AudioEffectDelay.xml:46
+msgid "[b]Tap2[/b] delay time in milliseconds."
+msgstr ""
+
+#: doc/classes/AudioEffectDelay.xml:49
+msgid "Sound level for [code]tap2[/code]."
+msgstr ""
+
+#: doc/classes/AudioEffectDelay.xml:52
+msgid ""
+"Pan position for [code]tap2[/code]. Value can range from -1 (fully left) to "
+"1 (fully right)."
+msgstr ""
+
+#: doc/classes/AudioEffectDistortion.xml:4
+msgid ""
+"Adds a distortion audio effect to an Audio bus.\n"
+"Modify the sound to make it dirty."
+msgstr ""
+
+#: doc/classes/AudioEffectDistortion.xml:8
+msgid ""
+"Modify the sound and make it dirty. Different types are available: clip, "
+"tan, lo-fi (bit crushing), overdrive, or waveshape.\n"
+"By distorting the waveform the frequency content change, which will often "
+"make the sound \"crunchy\" or \"abrasive\". For games, it can simulate sound "
+"coming from some saturated device or speaker very efficiently."
+msgstr ""
+
+#: doc/classes/AudioEffectDistortion.xml:17
+msgid "Distortion power. Value can range from 0 to 1."
+msgstr ""
+
+#: doc/classes/AudioEffectDistortion.xml:20
+msgid ""
+"High-pass filter, in Hz. Frequencies higher than this value will not be "
+"affected by the distortion. Value can range from 1 to 20000."
+msgstr ""
+
+#: doc/classes/AudioEffectDistortion.xml:23
+msgid "Distortion type."
+msgstr ""
+
+#: doc/classes/AudioEffectDistortion.xml:26
+msgid ""
+"Increases or decreases the volume after the effect. Value can range from -80 "
+"to 24."
+msgstr ""
+
+#: doc/classes/AudioEffectDistortion.xml:29
+msgid ""
+"Increases or decreases the volume before the effect. Value can range from "
+"-60 to 60."
+msgstr ""
+
+#: doc/classes/AudioEffectDistortion.xml:34
+msgid ""
+"Digital distortion effect which cuts off peaks at the top and bottom of the "
+"waveform."
+msgstr ""
+
+#: doc/classes/AudioEffectDistortion.xml:39
+msgid ""
+"Low-resolution digital distortion effect. You can use it to emulate the "
+"sound of early digital audio devices."
+msgstr ""
+
+#: doc/classes/AudioEffectDistortion.xml:42
+msgid ""
+"Emulates the warm distortion produced by a field effect transistor, which is "
+"commonly used in solid-state musical instrument amplifiers."
+msgstr ""
+
+#: doc/classes/AudioEffectDistortion.xml:45
+msgid ""
+"Waveshaper distortions are used mainly by electronic musicians to achieve an "
+"extra-abrasive sound."
+msgstr ""
+
+#: doc/classes/AudioEffectEQ.xml:4
+msgid ""
+"Base class for audio equalizers. Gives you control over frequencies.\n"
+"Use it to create a custom equalizer if [AudioEffectEQ6], [AudioEffectEQ10] "
+"or [AudioEffectEQ21] don't fit your needs."
+msgstr ""
+
+#: doc/classes/AudioEffectEQ.xml:8
+msgid ""
+"AudioEffectEQ gives you control over frequencies. Use it to compensate for "
+"existing deficiencies in audio. AudioEffectEQs are useful on the Master bus "
+"to completely master a mix and give it more character. They are also useful "
+"when a game is run on a mobile device, to adjust the mix to that kind of "
+"speakers (it can be added but disabled when headphones are plugged)."
+msgstr ""
+
+#: doc/classes/AudioEffectEQ.xml:17
+msgid "Returns the number of bands of the equalizer."
+msgstr ""
+
+#: doc/classes/AudioEffectEQ.xml:26
+msgid "Returns the band's gain at the specified index, in dB."
+msgstr ""
+
+#: doc/classes/AudioEffectEQ.xml:37
+msgid "Sets band's gain at the specified index, in dB."
+msgstr ""
+
+#: doc/classes/AudioEffectEQ10.xml:4
+msgid ""
+"Adds a 10-band equalizer audio effect to an Audio bus. Gives you control "
+"over frequencies from 31 Hz to 16000 Hz.\n"
+"Each frequency can be modulated between -60/+24 dB."
+msgstr ""
+
+#: doc/classes/AudioEffectEQ10.xml:8
+msgid ""
+"Frequency bands:\n"
+"Band 1: 31 Hz\n"
+"Band 2: 62 Hz\n"
+"Band 3: 125 Hz\n"
+"Band 4: 250 Hz\n"
+"Band 5: 500 Hz\n"
+"Band 6: 1000 Hz\n"
+"Band 7: 2000 Hz\n"
+"Band 8: 4000 Hz\n"
+"Band 9: 8000 Hz\n"
+"Band 10: 16000 Hz\n"
+"See also [AudioEffectEQ], [AudioEffectEQ6], [AudioEffectEQ21]."
+msgstr ""
+
+#: doc/classes/AudioEffectEQ21.xml:4
+msgid ""
+"Adds a 21-band equalizer audio effect to an Audio bus. Gives you control "
+"over frequencies from 22 Hz to 22000 Hz.\n"
+"Each frequency can be modulated between -60/+24 dB."
+msgstr ""
+
+#: doc/classes/AudioEffectEQ21.xml:8
+msgid ""
+"Frequency bands:\n"
+"Band 1: 22 Hz\n"
+"Band 2: 32 Hz\n"
+"Band 3: 44 Hz\n"
+"Band 4: 63 Hz\n"
+"Band 5: 90 Hz\n"
+"Band 6: 125 Hz\n"
+"Band 7: 175 Hz\n"
+"Band 8: 250 Hz\n"
+"Band 9: 350 Hz\n"
+"Band 10: 500 Hz\n"
+"Band 11: 700 Hz\n"
+"Band 12: 1000 Hz\n"
+"Band 13: 1400 Hz\n"
+"Band 14: 2000 Hz\n"
+"Band 15: 2800 Hz\n"
+"Band 16: 4000 Hz\n"
+"Band 17: 5600 Hz\n"
+"Band 18: 8000 Hz\n"
+"Band 19: 11000 Hz\n"
+"Band 20: 16000 Hz\n"
+"Band 21: 22000 Hz\n"
+"See also [AudioEffectEQ], [AudioEffectEQ6], [AudioEffectEQ10]."
+msgstr ""
+
+#: doc/classes/AudioEffectEQ6.xml:4
+msgid ""
+"Adds a 6-band equalizer audio effect to an Audio bus. Gives you control over "
+"frequencies from 32 Hz to 10000 Hz.\n"
+"Each frequency can be modulated between -60/+24 dB."
+msgstr ""
+
+#: doc/classes/AudioEffectEQ6.xml:8
+msgid ""
+"Frequency bands:\n"
+"Band 1: 32 Hz\n"
+"Band 2: 100 Hz\n"
+"Band 3: 320 Hz\n"
+"Band 4: 1000 Hz\n"
+"Band 5: 3200 Hz\n"
+"Band 6: 10000 Hz\n"
+"See also [AudioEffectEQ], [AudioEffectEQ10], [AudioEffectEQ21]."
+msgstr ""
+
+#: doc/classes/AudioEffectFilter.xml:4
+msgid "Adds a filter to the audio bus."
+msgstr ""
+
+#: doc/classes/AudioEffectFilter.xml:7
+msgid "Allows frequencies other than the [member cutoff_hz] to pass."
+msgstr ""
+
+#: doc/classes/AudioEffectFilter.xml:15
+msgid "Threshold frequency for the filter, in Hz."
+msgstr ""
+
+#: doc/classes/AudioEffectFilter.xml:20
+msgid "Gain amount of the frequencies after the filter."
+msgstr ""
+
+#: doc/classes/AudioEffectFilter.xml:23
+msgid "Amount of boost in the overtones near the cutoff frequency."
+msgstr ""
+
+#: doc/classes/AudioEffectHighPassFilter.xml:4
+msgid "Adds a high-pass filter to the Audio Bus."
+msgstr ""
+
+#: doc/classes/AudioEffectHighPassFilter.xml:7
+msgid ""
+"Cuts frequencies lower than the [member AudioEffectFilter.cutoff_hz] and "
+"allows higher frequencies to pass."
+msgstr ""
+
+#: doc/classes/AudioEffectLimiter.xml:4
+msgid "Adds a soft-clip limiter audio effect to an Audio bus."
+msgstr ""
+
+#: doc/classes/AudioEffectLimiter.xml:7
+msgid ""
+"A limiter is similar to a compressor, but it's less flexible and designed to "
+"disallow sound going over a given dB threshold. Adding one in the Master bus "
+"is always recommended to reduce the effects of clipping.\n"
+"Soft clipping starts to reduce the peaks a little below the threshold level "
+"and progressively increases its effect as the input level increases such "
+"that the threshold is never exceeded."
+msgstr ""
+
+#: doc/classes/AudioEffectLimiter.xml:16
+msgid ""
+"The waveform's maximum allowed value, in decibels. Value can range from -20 "
+"to -0.1."
+msgstr ""
+
+#: doc/classes/AudioEffectLimiter.xml:19
+msgid ""
+"Applies a gain to the limited waves, in decibels. Value can range from 0 to "
+"6."
+msgstr ""
+
+#: doc/classes/AudioEffectLimiter.xml:24
+msgid ""
+"Threshold from which the limiter begins to be active, in decibels. Value can "
+"range from -30 to 0."
+msgstr ""
+
+#: doc/classes/AudioEffectLowPassFilter.xml:4
+msgid "Adds a low-pass filter to the Audio bus."
+msgstr ""
+
+#: doc/classes/AudioEffectLowPassFilter.xml:7
+msgid ""
+"Cuts frequencies higher than the [member AudioEffectFilter.cutoff_hz] and "
+"allows lower frequencies to pass."
+msgstr ""
+
+#: doc/classes/AudioEffectNotchFilter.xml:4
+msgid "Adds a notch filter to the Audio bus."
+msgstr ""
+
+#: doc/classes/AudioEffectNotchFilter.xml:7
+msgid ""
+"Attenuates frequencies in a narrow band around the [member AudioEffectFilter."
+"cutoff_hz] and cuts frequencies outside of this range."
+msgstr ""
+
+#: doc/classes/AudioEffectPanner.xml:4
+msgid "Adds a panner audio effect to an Audio bus. Pans sound left or right."
+msgstr ""
+
+#: doc/classes/AudioEffectPanner.xml:7
+msgid ""
+"Determines how much of an audio signal is sent to the left and right buses."
+msgstr ""
+
+#: doc/classes/AudioEffectPanner.xml:15
+msgid "Pan position. Value can range from -1 (fully left) to 1 (fully right)."
+msgstr ""
+
+#: doc/classes/AudioEffectPhaser.xml:4
+msgid ""
+"Adds a phaser audio effect to an Audio bus.\n"
+"Combines the original signal with a copy that is slightly out of phase with "
+"the original."
+msgstr ""
+
+#: doc/classes/AudioEffectPhaser.xml:8
+msgid ""
+"Combines phase-shifted signals with the original signal. The movement of the "
+"phase-shifted signals is controlled using a low-frequency oscillator."
+msgstr ""
+
+#: doc/classes/AudioEffectPhaser.xml:16
+msgid ""
+"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."
+msgstr ""
+
+#: doc/classes/AudioEffectPhaser.xml:19
+msgid "Output percent of modified sound. Value can range from 0.1 to 0.9."
+msgstr ""
+
+#: doc/classes/AudioEffectPhaser.xml:22
+msgid ""
+"Determines the maximum frequency affected by the LFO modulations, in Hz. "
+"Value can range from 10 to 10000."
+msgstr ""
+
+#: doc/classes/AudioEffectPhaser.xml:25
+msgid ""
+"Determines the minimum frequency affected by the LFO modulations, in Hz. "
+"Value can range from 10 to 10000."
+msgstr ""
+
+#: doc/classes/AudioEffectPhaser.xml:28
+msgid ""
+"Adjusts the rate in Hz at which the effect sweeps up and down across the "
+"frequency range."
+msgstr ""
+
+#: doc/classes/AudioEffectPitchShift.xml:4
+msgid ""
+"Adds a pitch-shifting audio effect to an Audio bus.\n"
+"Raises or lowers the pitch of original sound."
+msgstr ""
+
+#: doc/classes/AudioEffectPitchShift.xml:8
+msgid ""
+"Allows modulation of pitch independently of tempo. All frequencies can be "
+"increased/decreased with minimal effect on transients."
+msgstr ""
+
+#: doc/classes/AudioEffectPitchShift.xml:20
+msgid "Pitch value. Can range from 0 (-1 octave) to 16 (+16 octaves)."
+msgstr ""
+
+#: doc/classes/AudioEffectPitchShift.xml:35
+#: doc/classes/AudioEffectSpectrumAnalyzer.xml:31
+msgid "Represents the size of the [enum FFT_Size] enum."
+msgstr ""
+
+#: doc/classes/AudioEffectRecord.xml:4
+msgid "Audio effect used for recording sound from a microphone."
+msgstr ""
+
+#: doc/classes/AudioEffectRecord.xml:7
+msgid ""
+"Allows the user to record sound from a microphone. It sets and gets the "
+"format in which the audio file will be recorded (8-bit, 16-bit, or "
+"compressed). It checks whether or not the recording is active, and if it is, "
+"records the sound. It then returns the recorded sample."
+msgstr ""
+
+#: doc/classes/AudioEffectRecord.xml:10
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/audio/"
+"recording_with_microphone.html"
+msgstr ""
+
+#: doc/classes/AudioEffectRecord.xml:17
+msgid "Returns the recorded sample."
+msgstr ""
+
+#: doc/classes/AudioEffectRecord.xml:24
+msgid "Returns whether the recording is active or not."
+msgstr ""
+
+#: doc/classes/AudioEffectRecord.xml:33
+msgid ""
+"If [code]true[/code], the sound will be recorded. Note that restarting the "
+"recording will remove the previously recorded sample."
+msgstr ""
+
+#: doc/classes/AudioEffectRecord.xml:39
+msgid ""
+"Specifies the format in which the sample will be recorded. See [enum "
+"AudioStreamSample.Format] for available formats."
+msgstr ""
+
+#: doc/classes/AudioEffectReverb.xml:4
+msgid ""
+"Adds a reverberation audio effect to an Audio bus.\n"
+"Simulates the sound of acoustic environments such as rooms, concert halls, "
+"caverns, or an open spaces."
+msgstr ""
+
+#: doc/classes/AudioEffectReverb.xml:8
+msgid ""
+"Simulates rooms of different sizes. Its parameters can be adjusted to "
+"simulate the sound of a specific room."
+msgstr ""
+
+#: doc/classes/AudioEffectReverb.xml:16
+msgid ""
+"Defines how reflective the imaginary room's walls are. Value can range from "
+"0 to 1."
+msgstr ""
+
+#: doc/classes/AudioEffectReverb.xml:19
+msgid ""
+"Output percent of original sound. At 0, only modified sound is outputted. "
+"Value can range from 0 to 1."
+msgstr ""
+
+#: doc/classes/AudioEffectReverb.xml:22
+msgid ""
+"High-pass filter passes signals with a frequency higher than a certain "
+"cutoff frequency and attenuates signals with frequencies lower than the "
+"cutoff frequency. Value can range from 0 to 1."
+msgstr ""
+
+#: doc/classes/AudioEffectReverb.xml:25
+msgid "Output percent of predelay. Value can range from 0 to 1."
+msgstr ""
+
+#: doc/classes/AudioEffectReverb.xml:28
+msgid ""
+"Time between the original signal and the early reflections of the reverb "
+"signal, in milliseconds."
+msgstr ""
+
+#: doc/classes/AudioEffectReverb.xml:31
+msgid ""
+"Dimensions of simulated room. Bigger means more echoes. Value can range from "
+"0 to 1."
+msgstr ""
+
+#: doc/classes/AudioEffectReverb.xml:34
+msgid ""
+"Widens or narrows the stereo image of the reverb tail. 1 means fully widens. "
+"Value can range from 0 to 1."
+msgstr ""
+
+#: doc/classes/AudioEffectReverb.xml:37
+msgid ""
+"Output percent of modified sound. At 0, only original sound is outputted. "
+"Value can range from 0 to 1."
+msgstr ""
+
+#: doc/classes/AudioEffectSpectrumAnalyzerInstance.xml:25
+msgid "Use the average value as magnitude."
+msgstr ""
+
+#: doc/classes/AudioEffectSpectrumAnalyzerInstance.xml:28
+msgid "Use the maximum value as magnitude."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:4
+msgid "Server interface for low-level audio access."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:7
+msgid ""
+"[AudioServer] is a low-level server interface for audio access. It is in "
+"charge of creating sample data (playable audio) as well as its playback via "
+"a voice interface."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:10
+msgid "https://docs.godotengine.org/en/latest/tutorials/audio/audio_buses.html"
+msgstr ""
+
+#: doc/classes/AudioServer.xml:19
+msgid "Adds a bus at [code]at_position[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:32
+msgid ""
+"Adds an [AudioEffect] effect to the bus [code]bus_idx[/code] at "
+"[code]at_position[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:39
+msgid ""
+"Name of the current device for audio input (see [method "
+"capture_get_device_list])."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:46
+msgid "Returns the names of all audio input devices detected on the system."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:55
+msgid "Sets which audio input device is used for audio capture."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:62
+msgid "Generates an [AudioBusLayout] using the available buses and effects."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:71
+msgid ""
+"Returns the amount of channels of the bus at index [code]bus_idx[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:82
+msgid ""
+"Returns the [AudioEffect] at position [code]effect_idx[/code] in bus "
+"[code]bus_idx[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:91
+msgid "Returns the number of effects on the bus at [code]bus_idx[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:104
+msgid ""
+"Returns the [AudioEffectInstance] assigned to the given bus and effect "
+"indices (and optionally channel)."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:113
+msgid "Returns the index of the bus with the name [code]bus_name[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:122
+msgid "Returns the name of the bus with the index [code]bus_idx[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:133
+msgid ""
+"Returns the peak volume of the left speaker at bus index [code]bus_idx[/"
+"code] and channel index [code]channel[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:144
+msgid ""
+"Returns the peak volume of the right speaker at bus index [code]bus_idx[/"
+"code] and channel index [code]channel[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:153
+msgid ""
+"Returns the name of the bus that the bus at index [code]bus_idx[/code] sends "
+"to."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:162
+msgid "Returns the volume of the bus at index [code]bus_idx[/code] in dB."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:169
+msgid "Returns the names of all audio devices detected on the system."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:176
+msgid "Returns the sample rate at the output of the [AudioServer]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:183
+msgid "Returns the audio driver's output latency."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:190
+msgid "Returns the speaker configuration."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:197
+msgid "Returns the relative time since the last mix occurred."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:204
+msgid "Returns the relative time until the next mix occurs."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:213 doc/classes/AudioServer.xml:292
+msgid ""
+"If [code]true[/code], the bus at index [code]bus_idx[/code] is bypassing "
+"effects."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:224 doc/classes/AudioServer.xml:305
+msgid ""
+"If [code]true[/code], the effect at index [code]effect_idx[/code] on the bus "
+"at index [code]bus_idx[/code] is enabled."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:233 doc/classes/AudioServer.xml:325
+msgid "If [code]true[/code], the bus at index [code]bus_idx[/code] is muted."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:242 doc/classes/AudioServer.xml:358
+msgid ""
+"If [code]true[/code], the bus at index [code]bus_idx[/code] is in solo mode."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:249
+msgid ""
+"Locks the audio driver's main loop.\n"
+"[b]Note:[/b] Remember to unlock it afterwards."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:261
+msgid ""
+"Moves the bus from index [code]index[/code] to index [code]to_index[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:270
+msgid "Removes the bus at index [code]index[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:281
+msgid ""
+"Removes the effect at index [code]effect_idx[/code] from the bus at index "
+"[code]bus_idx[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:314
+msgid "Overwrites the currently used [AudioBusLayout]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:336
+msgid ""
+"Sets the name of the bus at index [code]bus_idx[/code] to [code]name[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:347
+msgid ""
+"Connects the output of the bus at [code]bus_idx[/code] to the bus named "
+"[code]send[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:369
+msgid ""
+"Sets the volume of the bus at index [code]bus_idx[/code] to [code]volume_db[/"
+"code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:382
+msgid "Swaps the position of two effects in bus [code]bus_idx[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:389
+msgid ""
+"Unlocks the audio driver's main loop. (After locking it, you should always "
+"unlock it.)"
+msgstr ""
+
+#: doc/classes/AudioServer.xml:395
+msgid "Number of available audio buses."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:398
+msgid ""
+"Name of the current device for audio output (see [method get_device_list])."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:401
+msgid ""
+"Scales the rate at which audio is played (i.e. setting it to [code]0.5[/"
+"code] will make the audio be played twice as fast)."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:407
+msgid "Emitted when the [AudioBusLayout] changes."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:413
+msgid "Two or fewer speakers were detected."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:416
+msgid "A 3.1 channel surround setup was detected."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:419
+msgid "A 5.1 channel surround setup was detected."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:422
+msgid "A 7.1 channel surround setup was detected."
+msgstr ""
+
+#: doc/classes/AudioStream.xml:4
+msgid "Base class for audio streams."
+msgstr ""
+
+#: doc/classes/AudioStream.xml:7
+msgid ""
+"Base class for audio streams. Audio streams are used for sound effects and "
+"music playback, and support WAV (via [AudioStreamSample]) and OGG (via "
+"[AudioStreamOGGVorbis]) file formats."
+msgstr ""
+
+#: doc/classes/AudioStream.xml:10 doc/classes/AudioStreamPlayer.xml:10
+#: doc/classes/AudioStreamPlayer2D.xml:10
+#: doc/classes/AudioStreamPlayer3D.xml:10
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/audio/audio_streams.html"
+msgstr ""
+
+#: doc/classes/AudioStream.xml:17
+msgid "Returns the length of the audio stream in seconds."
+msgstr ""
+
+#: doc/classes/AudioStreamGenerator.xml:8
+#: doc/classes/AudioStreamGeneratorPlayback.xml:8
+msgid ""
+"https://github.com/godotengine/godot-demo-projects/tree/master/audio/"
+"generator"
+msgstr ""
+
+#: modules/stb_vorbis/doc_classes/AudioStreamOGGVorbis.xml:4
+#: modules/stb_vorbis/doc_classes/AudioStreamOGGVorbis.xml:7
+msgid "OGG Vorbis audio stream driver."
+msgstr ""
+
+#: modules/stb_vorbis/doc_classes/AudioStreamOGGVorbis.xml:15
+msgid "Contains the audio data in bytes."
+msgstr ""
+
+#: modules/stb_vorbis/doc_classes/AudioStreamOGGVorbis.xml:18
+msgid ""
+"If [code]true[/code], the stream will automatically loop when it reaches the "
+"end."
+msgstr ""
+
+#: modules/stb_vorbis/doc_classes/AudioStreamOGGVorbis.xml:21
+msgid "Time in seconds at which the stream starts after being looped."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayback.xml:4
+msgid "Meta class for playing back audio."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayback.xml:7
+msgid ""
+"Can play, loop, pause a scroll through audio. See [AudioStream] and "
+"[AudioStreamOGGVorbis] for usage."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:4
+msgid "Plays back audio non-positionally."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:7
+msgid "Plays an audio stream non-positionally."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:17
+msgid "Returns the position in the [AudioStream] in seconds."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:24
+msgid ""
+"Returns the [AudioStreamPlayback] object associated with this "
+"[AudioStreamPlayer]."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:33
+msgid "Plays the audio from the given [code]from_position[/code], in seconds."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:42 doc/classes/AudioStreamPlayer2D.xml:42
+#: doc/classes/AudioStreamPlayer3D.xml:42
+msgid "Sets the position from which audio will be played, in seconds."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:49 doc/classes/AudioStreamPlayer2D.xml:49
+#: doc/classes/AudioStreamPlayer3D.xml:49
+msgid "Stops the audio."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:55 doc/classes/AudioStreamPlayer2D.xml:61
+#: doc/classes/AudioStreamPlayer3D.xml:67
+msgid "If [code]true[/code], audio plays when added to scene tree."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:58 doc/classes/AudioStreamPlayer2D.xml:64
+#: doc/classes/AudioStreamPlayer3D.xml:70
+msgid "Bus on which this audio is playing."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:61
+msgid ""
+"If the audio configuration has more than two speakers, this sets the target "
+"channels. See [enum MixTarget] constants."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:64 doc/classes/AudioStreamPlayer2D.xml:70
+#: doc/classes/AudioStreamPlayer3D.xml:94
+msgid ""
+"The pitch and the tempo of the audio, as a multiplier of the audio sample's "
+"sample rate."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:67 doc/classes/AudioStreamPlayer2D.xml:73
+#: doc/classes/AudioStreamPlayer3D.xml:97
+msgid "If [code]true[/code], audio is playing."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:70 doc/classes/AudioStreamPlayer2D.xml:76
+#: doc/classes/AudioStreamPlayer3D.xml:100
+msgid "The [AudioStream] object to be played."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:73 doc/classes/AudioStreamPlayer2D.xml:79
+#: doc/classes/AudioStreamPlayer3D.xml:103
+msgid ""
+"If [code]true[/code], the playback is paused. You can resume it by setting "
+"[code]stream_paused[/code] to [code]false[/code]."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:76
+msgid "Volume of sound, in dB."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:82 doc/classes/AudioStreamPlayer2D.xml:88
+#: doc/classes/AudioStreamPlayer3D.xml:115
+msgid "Emitted when the audio stops playing."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:88
+msgid "The audio will be played only on the first channel."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:91
+msgid "The audio will be played on all surround channels."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:94
+msgid ""
+"The audio will be played on the second channel, which is usually the center."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer2D.xml:4
+msgid "Plays audio in 2D."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer2D.xml:7
+msgid "Plays audio that dampens with distance from screen center."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer2D.xml:17
+#: doc/classes/AudioStreamPlayer3D.xml:17
+msgid "Returns the position in the [AudioStream]."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer2D.xml:24
+msgid ""
+"Returns the [AudioStreamPlayback] object associated with this "
+"[AudioStreamPlayer2D]."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer2D.xml:33
+#: doc/classes/AudioStreamPlayer3D.xml:33
+msgid ""
+"Plays the audio from the given position [code]from_position[/code], in "
+"seconds."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer2D.xml:55
+#: doc/classes/AudioStreamPlayer3D.xml:55
+msgid "Areas in which this sound plays."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer2D.xml:58
+msgid "Dampens audio over distance with this as an exponent."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer2D.xml:67
+msgid "Maximum distance from which audio is still hearable."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer2D.xml:82
+msgid "Base volume without dampening."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:4
+msgid "Plays 3D sound in 3D space."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:7
+msgid ""
+"Plays a sound effect with directed sound effects, dampens with distance if "
+"needed, generates effect of hearable position in space."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:24
+msgid ""
+"Returns the [AudioStreamPlayback] object associated with this "
+"[AudioStreamPlayer3D]."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:58
+msgid "Dampens audio above this frequency, in Hz."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:61
+msgid "Amount how much the filter affects the loudness, in dB."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:64
+msgid ""
+"Decides if audio should get quieter with distance linearly, quadratically, "
+"logarithmically, or not be affected by distance, effectively disabling "
+"attenuation."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:73
+msgid "Decides in which step the Doppler effect should be calculated."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:76
+msgid "The angle in which the audio reaches cameras undampened."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:79
+msgid ""
+"If [code]true[/code], the audio should be dampened according to the "
+"direction of the sound."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:82
+msgid ""
+"Dampens audio if camera is outside of [member emission_angle_degrees] and "
+"[member emission_angle_enabled] is set by this factor, in dB."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:85
+msgid "Sets the absolute maximum of the soundlevel, in dB."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:88
+msgid ""
+"Sets the distance from which the [member out_of_range_mode] takes effect. "
+"Has no effect if set to 0."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:91
+msgid ""
+"Decides if audio should pause when source is outside of [member "
+"max_distance] range."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:106
+msgid "Base sound level unaffected by dampening, in dB."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:109
+msgid "Factor for the attenuation effect."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:121
+msgid "Linear dampening of loudness according to distance."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:124
+msgid "Squared dampening of loudness according to distance."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:127
+msgid "Logarithmic dampening of loudness according to distance."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:130
+msgid "No dampening of loudness according to distance."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:133
+msgid "Mix this audio in, even when it's out of range."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:136
+msgid "Pause this audio when it gets out of range."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:139
+msgid "Disables doppler tracking."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:142
+msgid "Executes doppler tracking in idle step."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:145
+msgid "Executes doppler tracking in physics step."
+msgstr ""
+
+#: doc/classes/AudioStreamRandomPitch.xml:4
+msgid "Plays audio with random pitch shifting."
+msgstr ""
+
+#: doc/classes/AudioStreamRandomPitch.xml:7
+msgid "Randomly varies pitch on each start."
+msgstr ""
+
+#: doc/classes/AudioStreamRandomPitch.xml:15
+msgid "The current [AudioStream]."
+msgstr ""
+
+#: doc/classes/AudioStreamRandomPitch.xml:18
+msgid "The intensity of random pitch variation."
+msgstr ""
+
+#: doc/classes/AudioStreamSample.xml:4
+msgid "Stores audio data loaded from WAV files."
+msgstr ""
+
+#: doc/classes/AudioStreamSample.xml:7
+msgid ""
+"AudioStreamSample stores sound samples loaded from WAV files. To play the "
+"stored sound, use an [AudioStreamPlayer] (for non-positional audio) or "
+"[AudioStreamPlayer2D]/[AudioStreamPlayer3D] (for positional audio). The "
+"sound can be looped.\n"
+"This class can also be used to store dynamically-generated PCM audio data."
+msgstr ""
+
+#: doc/classes/AudioStreamSample.xml:19
+msgid ""
+"Saves the AudioStreamSample as a WAV file to [code]path[/code]. Samples with "
+"IMA ADPCM format can't be saved.\n"
+"[b]Note:[/b] A [code].wav[/code] extension is automatically appended to "
+"[code]path[/code] if it is missing."
+msgstr ""
+
+#: doc/classes/AudioStreamSample.xml:26
+msgid ""
+"Contains the audio data in bytes.\n"
+"[b]Note:[/b] This property expects signed PCM8 data. To convert unsigned "
+"PCM8 to signed PCM8, subtract 128 from each byte."
+msgstr ""
+
+#: doc/classes/AudioStreamSample.xml:30
+msgid "Audio format. See [enum Format] constants for values."
+msgstr ""
+
+#: doc/classes/AudioStreamSample.xml:33
+msgid ""
+"The loop start point (in number of samples, relative to the beginning of the "
+"sample). This information will be imported automatically from the WAV file "
+"if present."
+msgstr ""
+
+#: doc/classes/AudioStreamSample.xml:36
+msgid ""
+"The loop end point (in number of samples, relative to the beginning of the "
+"sample). This information will be imported automatically from the WAV file "
+"if present."
+msgstr ""
+
+#: doc/classes/AudioStreamSample.xml:39
+msgid ""
+"The loop mode. This information will be imported automatically from the WAV "
+"file if present. See [enum LoopMode] constants for values."
+msgstr ""
+
+#: doc/classes/AudioStreamSample.xml:42
+msgid "The sample rate for mixing this audio."
+msgstr ""
+
+#: doc/classes/AudioStreamSample.xml:45
+msgid "If [code]true[/code], audio is stereo."
+msgstr ""
+
+#: doc/classes/AudioStreamSample.xml:50
+msgid "8-bit audio codec."
+msgstr ""
+
+#: doc/classes/AudioStreamSample.xml:53
+msgid "16-bit audio codec."
+msgstr ""
+
+#: doc/classes/AudioStreamSample.xml:56
+msgid "Audio is compressed using IMA ADPCM."
+msgstr ""
+
+#: doc/classes/AudioStreamSample.xml:59
+msgid "Audio does not loop."
+msgstr ""
+
+#: doc/classes/AudioStreamSample.xml:62
+msgid ""
+"Audio loops the data between [member loop_begin] and [member loop_end], "
+"playing forward only."
+msgstr ""
+
+#: doc/classes/AudioStreamSample.xml:65
+msgid ""
+"Audio loops the data between [member loop_begin] and [member loop_end], "
+"playing back and forth."
+msgstr ""
+
+#: doc/classes/AudioStreamSample.xml:68
+msgid ""
+"Audio loops the data between [member loop_begin] and [member loop_end], "
+"playing backward only."
+msgstr ""
+
+#: doc/classes/BackBufferCopy.xml:4
+msgid ""
+"Copies a region of the screen (or the whole screen) to a buffer so it can be "
+"accessed in your shader scripts through the "
+"[code]texture(SCREEN_TEXTURE, ...)[/code] function."
+msgstr ""
+
+#: doc/classes/BackBufferCopy.xml:7
+msgid ""
+"Node for back-buffering the currently-displayed screen. The region defined "
+"in the BackBufferCopy node is bufferized with the content of the screen it "
+"covers, or the entire screen according to the copy mode set. Use the "
+"[code]texture(SCREEN_TEXTURE, ...)[/code] function in your shader scripts to "
+"access the buffer.\n"
+"[b]Note:[/b] Since this node inherits from [Node2D] (and not [Control]), "
+"anchors and margins won't apply to child [Control]-derived nodes. This can "
+"be problematic when resizing the window. To avoid this, add [Control]-"
+"derived nodes as [i]siblings[/i] to the BackBufferCopy node instead of "
+"adding them as children."
+msgstr ""
+
+#: doc/classes/BackBufferCopy.xml:16
+msgid "Buffer mode. See [enum CopyMode] constants."
+msgstr ""
+
+#: doc/classes/BackBufferCopy.xml:19
+msgid ""
+"The area covered by the BackBufferCopy. Only used if [member copy_mode] is "
+"[constant COPY_MODE_RECT]."
+msgstr ""
+
+#: doc/classes/BackBufferCopy.xml:24
+msgid ""
+"Disables the buffering mode. This means the BackBufferCopy node will "
+"directly use the portion of screen it covers."
+msgstr ""
+
+#: doc/classes/BackBufferCopy.xml:27
+msgid "BackBufferCopy buffers a rectangular region."
+msgstr ""
+
+#: doc/classes/BackBufferCopy.xml:30
+msgid "BackBufferCopy buffers the entire screen."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:4
+msgid "Base class for different kinds of buttons."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:7
+msgid ""
+"BaseButton is the abstract base class for buttons, so it shouldn't be used "
+"directly (it doesn't display anything). Other types of buttons inherit from "
+"it."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:16
+msgid ""
+"Called when the button is pressed. If you need to know the button's pressed "
+"state (and [member toggle_mode] is active), use [method _toggled] instead."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:25
+msgid ""
+"Called when the button is toggled (only if [member toggle_mode] is active)."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:32
+msgid ""
+"Returns the visual state used to draw the button. This is useful mainly when "
+"implementing your own draw code by either overriding _draw() or connecting "
+"to \"draw\" signal. The visual state of the button is defined by the [enum "
+"DrawMode] enum."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:39
+msgid ""
+"Returns [code]true[/code] if the mouse has entered the button and has not "
+"left it yet."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:45
+msgid ""
+"Determines when the button is considered clicked, one of the [enum "
+"ActionMode] constants."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:48
+msgid ""
+"Binary mask to choose which mouse buttons this button will respond to.\n"
+"To allow both left-click and right-click, use [code]BUTTON_MASK_LEFT | "
+"BUTTON_MASK_RIGHT[/code]."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:52
+msgid ""
+"If [code]true[/code], the button is in disabled state and can't be clicked "
+"or toggled."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:55
+msgid ""
+"Focus access mode to use when switching between enabled/disabled (see "
+"[member Control.focus_mode] and [member disabled])."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:59
+msgid "[ButtonGroup] associated to the button."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:62
+msgid ""
+"If [code]true[/code], the button stays pressed when moving the cursor "
+"outside the button while pressing it.\n"
+"[b]Note:[/b] This property only affects the button's visual appearance. "
+"Signals will be emitted at the same moment regardless of this property's "
+"value."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:66
+msgid ""
+"If [code]true[/code], the button's state is pressed. Means the button is "
+"pressed down or toggled (if [member toggle_mode] is active)."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:69
+msgid "[ShortCut] associated to the button."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:72
+msgid ""
+"If [code]true[/code], the button will add information about its shortcut in "
+"the tooltip."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:75
+msgid ""
+"If [code]true[/code], the button is in toggle mode. Makes the button flip "
+"state between pressed and unpressed each time its area is clicked."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:81
+msgid "Emitted when the button starts being held down."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:86
+msgid "Emitted when the button stops being held down."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:91
+msgid ""
+"Emitted when the button is toggled or pressed. This is on [signal "
+"button_down] if [member action_mode] is [constant ACTION_MODE_BUTTON_PRESS] "
+"and on [signal button_up] otherwise.\n"
+"If you need to know the button's pressed state (and [member toggle_mode] is "
+"active), use [signal toggled] instead."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:99
+msgid ""
+"Emitted when the button was just toggled between pressed and normal states "
+"(only if [member toggle_mode] is active). The new state is contained in the "
+"[code]button_pressed[/code] argument."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:105
+msgid ""
+"The normal state (i.e. not pressed, not hovered, not toggled and enabled) of "
+"buttons."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:108
+msgid "The state of buttons are pressed."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:111
+msgid "The state of buttons are hovered."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:114
+msgid "The state of buttons are disabled."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:117
+msgid "The state of buttons are both hovered and pressed."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:120
+msgid "Require just a press to consider the button clicked."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:123
+msgid ""
+"Require a press and a subsequent release before considering the button "
+"clicked."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:4
+msgid "Default 3D rendering material."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:7
+msgid ""
+"This provides a default material with a wide variety of rendering features "
+"and properties without the need to write shader code. See the tutorial below "
+"for details."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:10
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/3d/spatial_material.html"
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:19
+msgid "Returns [code]true[/code], if the specified [enum Feature] is enabled."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:28
+msgid ""
+"Returns [code]true[/code], if the specified flag is enabled. See [enum "
+"Flags] enumerator for options."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:37
+msgid ""
+"Returns the [Texture] associated with the specified [enum TextureParam]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:48
+msgid ""
+"If [code]true[/code], enables the specified [enum Feature]. Many features "
+"that are available in [BaseMaterial3D]s need to be enabled before use. This "
+"way the cost for using the feature is only incurred when specified. Features "
+"can also be enabled by setting the corresponding member to [code]true[/code]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:59
+msgid ""
+"If [code]true[/code], 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 [code]true[/code]. See [enum Flags] "
+"enumerator for options."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:70
+msgid ""
+"Sets the texture for the slot specified by [code]param[/code]. See [enum "
+"TextureParam] for available slots."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:76
+msgid "The material's base color."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:79
+msgid ""
+"Forces a conversion of the [member albedo_texture] from sRGB space to linear "
+"space."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:82
+msgid ""
+"Texture to multiply by [member albedo_color]. Used for basic texturing of "
+"objects."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:85
+msgid "Threshold at which the alpha scissor will discard values."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:88
+msgid "The strength of the anisotropy effect."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:91
+msgid ""
+"If [code]true[/code], anisotropy is enabled. Changes the shape of the "
+"specular blob and aligns it to tangent space. Mesh tangents are needed for "
+"this to work. If the mesh does not contain tangents the anisotropy effect "
+"will appear broken."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:94
+msgid "Texture that offsets the tangent map for anisotropy calculations."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:97
+msgid ""
+"If [code]true[/code], ambient occlusion is enabled. Ambient occlusion "
+"darkens areas based on the [member ao_texture]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:100
+msgid ""
+"Amount that ambient occlusion affects lighting from lights. If [code]0[/"
+"code], ambient occlusion only affects ambient light. If [code]1[/code], "
+"ambient occlusion affects lights just as much as it affects ambient light. "
+"This can be used to impact the strength of the ambient occlusion effect, but "
+"typically looks unrealistic."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:103
+msgid ""
+"If [code]true[/code], use [code]UV2[/code] coordinates to look up from the "
+"[member ao_texture]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:106
+msgid ""
+"Texture that defines the amount of ambient occlusion for a given point on "
+"the object."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:109 doc/classes/BaseMaterial3D.xml:286
+#: doc/classes/BaseMaterial3D.xml:307
+msgid ""
+"Specifies the channel of the [member ao_texture] in which the ambient "
+"occlusion information is stored. This is useful when you store the "
+"information for multiple effects in a single texture. For example if you "
+"stored metallic in the red channel, roughness in the blue, and ambient "
+"occlusion in the green you could reduce the number of textures you use."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:112
+msgid ""
+"The color used by the backlight effect. Represents the light passing through "
+"an object."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:115
+msgid "If [code]true[/code], the backlight effect is enabled."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:118
+msgid ""
+"Texture used to control the backlight effect per-pixel. Added to [member "
+"backlight]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:121
+msgid ""
+"If [code]true[/code], the shader will keep the scale set for the mesh. "
+"Otherwise the scale is lost when billboarding. Only applies when [member "
+"billboard_mode] is [constant BILLBOARD_ENABLED]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:124
+msgid "Controls how the object faces the camera. See [enum BillboardMode]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:127
+msgid ""
+"The material's blend mode.\n"
+"[b]Note:[/b] Values other than [code]Mix[/code] force the object into the "
+"transparent pipeline. See [enum BlendMode]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:131
+msgid ""
+"Sets the strength of the clearcoat effect. Setting to [code]0[/code] looks "
+"the same as disabling the clearcoat effect."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:134
+msgid ""
+"If [code]true[/code], clearcoat rendering is enabled. Adds a secondary "
+"transparent pass to the lighting calculation resulting in an added specular "
+"blob. This makes materials appear as if they have a clear layer on them that "
+"can be either glossy or rough."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:137
+msgid ""
+"Sets the roughness of the clearcoat pass. A higher value results in a "
+"smoother clearcoat while a lower value results in a rougher clearcoat."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:140
+msgid ""
+"Texture that defines the strength of the clearcoat effect and the glossiness "
+"of the clearcoat. Strength is specified in the red channel while glossiness "
+"is specified in the green channel."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:143
+msgid ""
+"Which side of the object is not drawn when backfaces are rendered. See [enum "
+"CullMode]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:146
+msgid ""
+"Determines when depth rendering takes place. See [enum DepthDrawMode]. See "
+"also [member transparency]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:149
+msgid "Texture that specifies the color of the detail overlay."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:152
+msgid ""
+"Specifies how the [member detail_albedo] should blend with the current "
+"[code]ALBEDO[/code]. See [enum BlendMode] for options."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:155
+msgid ""
+"If [code]true[/code], enables the detail overlay. Detail is a second texture "
+"that gets mixed over the surface of the object based on [member "
+"detail_mask]. This can be used to add variation to objects, or to blend "
+"between two different albedo/normal textures."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:158
+msgid ""
+"Texture used to specify how the detail textures get blended with the base "
+"textures."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:161
+msgid ""
+"Texture that specifies the per-pixel normal of the detail overlay.\n"
+"[b]Note:[/b] Godot expects the normal map to use X+, Y-, and Z+ coordinates. "
+"See [url=http://wiki.polycount.com/wiki/"
+"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]this page[/url] for "
+"a comparison of normal map coordinates expected by popular engines."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:165
+msgid ""
+"Specifies whether to use [code]UV[/code] or [code]UV2[/code] for the detail "
+"layer. See [enum DetailUV] for options."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:168
+msgid ""
+"The algorithm used for diffuse light scattering. See [enum DiffuseMode]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:171
+msgid "If [code]true[/code], the object receives no ambient light."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:174
+msgid ""
+"If [code]true[/code], the object receives no shadow that would otherwise be "
+"cast onto it."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:177
+msgid "Distance at which the object fades fully and is no longer visible."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:180
+msgid ""
+"Distance at which the object starts to fade. If the object is less than this "
+"distance away it will appear normal."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:183
+msgid ""
+"Specifies which type of fade to use. Can be any of the [enum "
+"DistanceFadeMode]s."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:186
+msgid "The emitted light's color. See [member emission_enabled]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:189
+msgid ""
+"If [code]true[/code], the body emits light. Emitting light makes the object "
+"appear brighter. The object can also cast light on other objects if a "
+"[GIProbe] is used and this object is used in baked lighting."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:192
+msgid "The emitted light's strength. See [member emission_enabled]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:195
+msgid "Use [code]UV2[/code] to read from the [member emission_texture]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:198
+msgid ""
+"Sets how [member emission] interacts with [member emission_texture]. Can "
+"either add or multiply. See [enum EmissionOperator] for options."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:201
+msgid "Texture that specifies how much surface emits light at a given point."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:204
+msgid ""
+"If [code]true[/code], the object is rendered at the same size regardless of "
+"distance."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:207
+msgid ""
+"If [code]true[/code], enables the vertex grow setting. See [member "
+"grow_amount]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:210
+msgid "Grows object vertices in the direction of their normals."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:231
+msgid ""
+"A high value makes the material appear more like a metal. Non-metals use "
+"their albedo as the diffuse color and add diffuse to the specular "
+"reflection. With non-metals, the reflection appears on top of the albedo "
+"color. Metals use their albedo as a multiplier to the specular reflection "
+"and set the diffuse color to black resulting in a tinted reflection. "
+"Materials work better when fully metal or fully non-metal, values between "
+"[code]0[/code] and [code]1[/code] should only be used for blending between "
+"metal and non-metal sections. To alter the amount of reflection use [member "
+"roughness]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:234
+msgid ""
+"Sets the size of the specular lobe. The specular lobe is the bright spot "
+"that is reflected from light sources.\n"
+"[b]Note:[/b] unlike [member metallic], this is not energy-conserving, so it "
+"should be left at [code]0.5[/code] in most cases. See also [member "
+"roughness]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:238
+msgid ""
+"Texture used to specify metallic for an object. This is multiplied by "
+"[member metallic]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:241
+msgid ""
+"Specifies the channel of the [member metallic_texture] in which the metallic "
+"information is stored. This is useful when you store the information for "
+"multiple effects in a single texture. For example if you stored metallic in "
+"the red channel, roughness in the blue, and ambient occlusion in the green "
+"you could reduce the number of textures you use."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:244
+msgid ""
+"If [code]true[/code], depth testing is disabled and the object will be drawn "
+"in render order."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:247
+msgid "If [code]true[/code], normal mapping is enabled."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:250
+msgid "The strength of the normal map's effect."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:253
+msgid ""
+"Texture used to specify the normal at a given pixel. The "
+"[code]normal_texture[/code] only uses the red and green channels. The normal "
+"read from [code]normal_texture[/code] is oriented around the surface normal "
+"provided by the [Mesh].\n"
+"[b]Note:[/b] Godot expects the normal map to use X+, Y-, and Z+ coordinates. "
+"See [url=http://wiki.polycount.com/wiki/"
+"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]this page[/url] for "
+"a comparison of normal map coordinates expected by popular engines."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:259
+msgid ""
+"The number of horizontal frames in the particle sprite sheet. Only enabled "
+"when using [constant BILLBOARD_PARTICLES]. See [member billboard_mode]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:262
+msgid ""
+"If [code]true[/code], particle animations are looped. Only enabled when "
+"using [constant BILLBOARD_PARTICLES]. See [member billboard_mode]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:265
+msgid ""
+"The number of vertical frames in the particle sprite sheet. Only enabled "
+"when using [constant BILLBOARD_PARTICLES]. See [member billboard_mode]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:268
+msgid "The point size in pixels. See [member use_point_size]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:271
+msgid ""
+"Distance over which the fade effect takes place. The larger the distance the "
+"longer it takes for an object to fade."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:274
+msgid ""
+"If [code]true[/code], the proximity fade effect is enabled. The proximity "
+"fade effect fades out each pixel based on its distance to another object."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:277
+msgid ""
+"If [code]true[/code], the refraction effect is enabled. Distorts "
+"transparency based on light from behind the object."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:280
+msgid "The strength of the refraction effect."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:283
+msgid ""
+"Texture that controls the strength of the refraction per-pixel. Multiplied "
+"by [member refraction_scale]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:289
+msgid "Sets the strength of the rim lighting effect."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:292
+msgid ""
+"If [code]true[/code], rim effect is enabled. Rim lighting increases the "
+"brightness at glancing angles on an object."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:295
+msgid ""
+"Texture used to set the strength of the rim lighting effect per-pixel. "
+"Multiplied by [member rim]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:298
+msgid ""
+"The amount of to blend light and albedo color when rendering rim effect. If "
+"[code]0[/code] the light color is used, while [code]1[/code] means albedo "
+"color is used. An intermediate value generally works best."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:301
+msgid ""
+"Surface reflection. A value of [code]0[/code] represents a perfect mirror "
+"while a value of [code]1[/code] completely blurs the reflection. See also "
+"[member metallic]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:304
+msgid ""
+"Texture used to control the roughness per-pixel. Multiplied by [member "
+"roughness]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:310
+msgid ""
+"Sets whether the shading takes place per-pixel or per-vertex. Per-vertex "
+"lighting is faster, making it the best choice for mobile applications, "
+"however it looks considerably worse than per-pixel."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:313
+msgid ""
+"If [code]true[/code], enables the \"shadow to opacity\" render mode where "
+"lighting modifies the alpha so shadowed areas are opaque and non-shadowed "
+"areas are transparent. Useful for overlaying shadows onto a camera feed in "
+"AR."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:316
+msgid "The method for rendering the specular blob. See [enum SpecularMode]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:319
+msgid ""
+"If [code]true[/code], subsurface scattering is enabled. Emulates light that "
+"penetrates an object's surface, is scattered, and then emerges."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:322
+msgid ""
+"If [code]true[/code], subsurface scattering will use a special mode "
+"optimized for the color and density of human skin."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:325
+msgid "The strength of the subsurface scattering effect."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:328
+msgid ""
+"Texture used to control the subsurface scattering strength. Stored in the "
+"red texture channel. Multiplied by [member subsurf_scatter_strength]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:343
+msgid "Filter flags for the texture. See [enum TextureFilter] for options."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:346
+msgid "Repeat flags for the texture. See [enum TextureFilter] for options."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:349
+msgid ""
+"If [code]true[/code], transparency is enabled on the body. See also [member "
+"blend_mode]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:352
+msgid ""
+"If [code]true[/code], render point size can be changed.\n"
+"[b]Note:[/b] this is only effective for objects whose geometry is point-"
+"based rather than triangle-based. See also [member point_size]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:356
+msgid ""
+"How much to offset the [code]UV[/code] coordinates. This amount will be "
+"added to [code]UV[/code] in the vertex function. This can be used to offset "
+"a texture."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:359
+msgid ""
+"How much to scale the [code]UV[/code] coordinates. This is multiplied by "
+"[code]UV[/code] in the vertex function."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:362
+msgid ""
+"If [code]true[/code], instead of using [code]UV[/code] textures will use a "
+"triplanar texture lookup to determine how to apply textures. Triplanar uses "
+"the orientation of the object's surface to blend between texture "
+"coordinates. It reads from the source texture 3 times, once for each axis "
+"and then blends between the results based on how closely the pixel aligns "
+"with each axis. This is often used for natural features to get a realistic "
+"blend of materials. Because triplanar texturing requires many more texture "
+"reads per-pixel it is much slower than normal UV texturing. Additionally, "
+"because it is blending the texture between the three axes, it is unsuitable "
+"when you are trying to achieve crisp texturing."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:365 doc/classes/BaseMaterial3D.xml:380
+msgid ""
+"A lower number blends the texture more softly while a higher number blends "
+"the texture more sharply."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:368
+msgid ""
+"If [code]true[/code], triplanar mapping for [code]UV[/code] is calculated in "
+"world space rather than object local space. See also [member uv1_triplanar]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:371
+msgid ""
+"How much to offset the [code]UV2[/code] coordinates. This amount will be "
+"added to [code]UV2[/code] in the vertex function. This can be used to offset "
+"a texture."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:374
+msgid ""
+"How much to scale the [code]UV2[/code] coordinates. This is multiplied by "
+"[code]UV2[/code] in the vertex function."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:377
+msgid ""
+"If [code]true[/code], instead of using [code]UV2[/code] textures will use a "
+"triplanar texture lookup to determine how to apply textures. Triplanar uses "
+"the orientation of the object's surface to blend between texture "
+"coordinates. It reads from the source texture 3 times, once for each axis "
+"and then blends between the results based on how closely the pixel aligns "
+"with each axis. This is often used for natural features to get a realistic "
+"blend of materials. Because triplanar texturing requires many more texture "
+"reads per-pixel it is much slower than normal UV texturing. Additionally, "
+"because it is blending the texture between the three axes, it is unsuitable "
+"when you are trying to achieve crisp texturing."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:383
+msgid ""
+"If [code]true[/code], triplanar mapping for [code]UV2[/code] is calculated "
+"in world space rather than object local space. See also [member "
+"uv2_triplanar]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:386
+msgid ""
+"If [code]true[/code], the model's vertex colors are processed as sRGB mode."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:389
+msgid "If [code]true[/code], the vertex color is used as albedo color."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:394
+msgid "Texture specifying per-pixel color."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:397
+msgid "Texture specifying per-pixel metallic value."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:400
+msgid "Texture specifying per-pixel roughness value."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:403
+msgid "Texture specifying per-pixel emission color."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:406
+msgid "Texture specifying per-pixel normal vector."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:409
+msgid "Texture specifying per-pixel rim value."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:412
+msgid "Texture specifying per-pixel clearcoat value."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:415
+msgid ""
+"Texture specifying per-pixel flowmap direction for use with [member "
+"anisotropy]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:418
+msgid "Texture specifying per-pixel ambient occlusion value."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:421
+msgid "Texture specifying per-pixel height."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:424
+msgid "Texture specifying per-pixel subsurface scattering."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:427
+msgid "Texture specifying per-pixel transmittance for subsurface scattering."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:430
+msgid "Texture specifying per-pixel backlight color."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:433
+msgid "Texture specifying per-pixel refraction strength."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:436
+msgid "Texture specifying per-pixel detail mask blending value."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:439
+msgid "Texture specifying per-pixel detail color."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:442
+msgid "Texture specifying per-pixel detail normal."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:445
+msgid "Texture holding ambient occlusion, roughness, and metallic."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:448
+msgid "Represents the size of the [enum TextureParam] enum."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:451 doc/classes/RenderingServer.xml:3668
+#: doc/classes/Viewport.xml:393
+msgid ""
+"The texture filter reads from the nearest pixel only. The simplest and "
+"fastest method of filtering, but the texture will look pixelized."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:454 doc/classes/RenderingServer.xml:3671
+#: doc/classes/Viewport.xml:396
+msgid ""
+"The texture filter blends between the nearest 4 pixels. Use this when you "
+"want to avoid a pixelated style, but do not want mipmaps."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:457 doc/classes/RenderingServer.xml:3674
+#: doc/classes/Viewport.xml:399
+msgid ""
+"The texture filter reads from the nearest pixel in the nearest mipmap. The "
+"fastest way to read from textures with mipmaps."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:460
+msgid ""
+"The texture filter blends between the nearest 4 pixels and between the "
+"nearest 2 mipmaps. Use this for most cases as mipmaps are important to "
+"smooth out pixels that are far from the camera."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:463 doc/classes/RenderingServer.xml:3680
+msgid ""
+"The texture filter reads from the nearest pixel, but selects a mipmap based "
+"on the angle between the surface and the camera view. This reduces artifacts "
+"on surfaces that are almost in line with the camera."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:466 doc/classes/RenderingServer.xml:3683
+msgid ""
+"The texture filter blends between the nearest 4 pixels and selects a mipmap "
+"based on the angle between the surface and the camera view. This reduces "
+"artifacts on surfaces that are almost in line with the camera. This is the "
+"slowest of the filtering options, but results in the highest quality "
+"texturing."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:469 doc/classes/CanvasItem.xml:695
+msgid "Represents the size of the [enum TextureFilter] enum."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:472
+msgid "Use [code]UV[/code] with the detail texture."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:475
+msgid "Use [code]UV2[/code] with the detail texture."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:478
+msgid "The material will not use transparency."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:481
+msgid "The material will use the texture's alpha values for transparency."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:484
+msgid ""
+"The material will cut off all values below a threshold, the rest will remain "
+"opaque."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:487
+msgid ""
+"The material will use the texture's alpha value for transparency, but will "
+"still be rendered in the pre-pass."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:490
+msgid "Represents the size of the [enum Transparency] enum."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:493
+msgid "The object will not receive shadows."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:496
+msgid ""
+"The object will be shaded per pixel. Useful for realistic shading effect."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:499
+msgid ""
+"The object will be shaded per vertex. Useful when you want cheaper shaders "
+"and do not care about visual quality."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:502
+msgid "Represents the size of the [enum ShadingMode] enum."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:505
+msgid "Constant for setting [member emission_enabled]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:508
+msgid "Constant for setting [member normal_enabled]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:511
+msgid "Constant for setting [member rim_enabled]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:514
+msgid "Constant for setting [member clearcoat_enabled]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:517
+msgid "Constant for setting [member anisotropy_enabled]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:520
+msgid "Constant for setting [member ao_enabled]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:523
+msgid "Constant for setting [member heightmap_enabled]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:526
+msgid "Constant for setting [member subsurf_scatter_enabled]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:529
+msgid "Constant for setting [member subsurf_scatter_transmittance_enabled]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:532
+msgid "Constant for setting [member backlight_enabled]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:535
+msgid "Constant for setting [member refraction_enabled]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:538
+msgid "Constant for setting [member detail_enabled]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:541 doc/classes/EditorFeatureProfile.xml:148
+msgid "Represents the size of the [enum Feature] enum."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:544
+msgid ""
+"Default blend mode. The color of the object is blended over the background "
+"based on the object's alpha value."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:547
+msgid "The color of the object is added to the background."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:550
+msgid "The color of the object is subtracted from the background."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:553
+msgid "The color of the object is multiplied by the background."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:556
+msgid "Default depth draw mode. Depth is drawn only for opaque objects."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:559
+msgid "Depth draw is calculated for both opaque and transparent objects."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:562
+msgid "No depth draw."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:565
+msgid "Default cull mode. The back of the object is culled when not visible."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:568
+msgid "The front of the object is culled when not visible."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:571
+msgid "No culling is performed."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:574
+msgid ""
+"Disables the depth test, so this object is drawn on top of all others. "
+"However, objects drawn after it in the draw order may cover it."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:577
+msgid "Set [code]ALBEDO[/code] to the per-vertex color specified in the mesh."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:580
+msgid ""
+"Vertex color is in sRGB space and needs to be converted to linear. Only "
+"applies in the Vulkan renderer."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:583
+msgid ""
+"Uses point size to alter the size of primitive points. Also changes the "
+"albedo texture lookup to use [code]POINT_COORD[/code] instead of [code]UV[/"
+"code]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:586
+msgid ""
+"Object is scaled by depth so that it always appears the same size on screen."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:589
+msgid ""
+"Shader will keep the scale set for the mesh. Otherwise the scale is lost "
+"when billboarding. Only applies when [member billboard_mode] is [constant "
+"BILLBOARD_ENABLED]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:592 doc/classes/BaseMaterial3D.xml:598
+msgid ""
+"Use triplanar texture lookup for all texture lookups that would normally use "
+"[code]UV[/code]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:595 doc/classes/BaseMaterial3D.xml:601
+msgid ""
+"Use triplanar texture lookup for all texture lookups that would normally use "
+"[code]UV2[/code]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:604
+msgid ""
+"Use [code]UV2[/code] coordinates to look up from the [member ao_texture]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:607
+msgid ""
+"Use [code]UV2[/code] coordinates to look up from the [member "
+"emission_texture]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:610
+msgid "Forces the shader to convert albedo from sRGB space to linear space."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:613
+msgid "Disables receiving shadows from other objects."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:616
+msgid "Disables receiving ambient light."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:619
+msgid "Enables the shadow to opacity feature."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:622 doc/classes/RenderingServer.xml:3695
+#: doc/classes/Viewport.xml:411
+msgid ""
+"Enables the texture to repeat when UV coordinates are outside the 0-1 range. "
+"If using one of the linear filtering modes, this can result in artifacts at "
+"the edges of a texture when the sampler filters across the edges of the "
+"texture."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:625
+msgid ""
+"Invert values read from a depth texture to convert them to height values "
+"(heightmap)."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:628
+msgid ""
+"Enables the skin mode for subsurface scattering which is used to improve the "
+"look of subsurface scattering when used for human skin."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:631 doc/classes/CPUParticles2D.xml:356
+#: doc/classes/CPUParticles3D.xml:364 doc/classes/ParticlesMaterial.xml:315
+msgid "Represents the size of the [enum Flags] enum."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:634
+msgid "Default diffuse scattering algorithm."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:637
+msgid "Diffuse scattering ignores roughness."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:640
+msgid "Extends Lambert to cover more than 90 degrees when roughness increases."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:643
+msgid "Attempts to use roughness to emulate microsurfacing."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:646
+msgid "Uses a hard cut for lighting, with smoothing affected by roughness."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:649
+msgid "Default specular blob."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:652 doc/classes/BaseMaterial3D.xml:655
+msgid "Older specular algorithm, included for compatibility."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:658
+msgid "Toon blob which changes size based on roughness."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:661
+msgid "No specular blob."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:664
+msgid "Billboard mode is disabled."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:667
+msgid "The object's Z axis will always face the camera."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:670
+msgid "The object's X axis will always face the camera."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:673
+msgid ""
+"Used for particle systems when assigned to [GPUParticles3D] and "
+"[CPUParticles3D] nodes. Enables [code]particles_anim_*[/code] properties.\n"
+"The [member ParticlesMaterial.anim_speed] or [member CPUParticles3D."
+"anim_speed] should also be set to a positive value for the animation to play."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:677
+msgid "Used to read from the red channel of a texture."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:680
+msgid "Used to read from the green channel of a texture."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:683
+msgid "Used to read from the blue channel of a texture."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:686
+msgid "Used to read from the alpha channel of a texture."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:689
+msgid "Currently unused."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:692
+msgid "Adds the emission color to the color from the emission texture."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:695
+msgid "Multiplies the emission color by the color from the emission texture."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:698
+msgid "Do not use distance fade."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:701
+msgid ""
+"Smoothly fades the object out based on each pixel's distance from the camera "
+"using the alpha channel."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:704
+msgid ""
+"Smoothly fades the object out based on each pixel's distance from the camera "
+"using a dither approach. Dithering discards pixels based on a set pattern to "
+"smoothly fade without enabling transparency. On certain hardware this can be "
+"faster than [constant DISTANCE_FADE_PIXEL_ALPHA]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:707
+msgid ""
+"Smoothly fades the object out based on the object's distance from the camera "
+"using a dither approach. Dithering discards pixels based on a set pattern to "
+"smoothly fade without enabling transparency. On certain hardware this can be "
+"faster than [constant DISTANCE_FADE_PIXEL_ALPHA]."
+msgstr ""
+
+#: doc/classes/Basis.xml:4
+msgid "3×3 matrix datatype."
+msgstr ""
+
+#: doc/classes/Basis.xml:7
+msgid ""
+"3×3 matrix used for 3D rotation and scale. Almost always used as an "
+"orthogonal basis for a Transform.\n"
+"Contains 3 vector fields X, Y and Z as its columns, which are typically "
+"interpreted as the local basis vectors of a transformation. For such use, it "
+"is composed of a scaling and a rotation matrix, in that order (M = R.S).\n"
+"Can also be accessed as array of 3D vectors. These vectors are normally "
+"orthogonal to each other, but are not necessarily normalized (due to "
+"scaling).\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
+msgstr ""
+
+#: doc/classes/Basis.xml:13 doc/classes/Transform.xml:12
+#: doc/classes/Transform2D.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/math/"
+"matrices_and_transforms.html"
+msgstr ""
+
+#: doc/classes/Basis.xml:14 doc/classes/Transform.xml:13
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/3d/using_transforms.html"
+msgstr ""
+
+#: doc/classes/Basis.xml:23
+msgid "Constructs a pure rotation basis matrix from the given quaternion."
+msgstr ""
+
+#: doc/classes/Basis.xml:32
+msgid ""
+"Constructs a pure rotation basis matrix from the given Euler angles (in the "
+"YXZ convention: when *composing*, first Y, then X, and Z last), given in the "
+"vector format as (X angle, Y angle, Z angle).\n"
+"Consider using the [Quat] constructor instead, which uses a quaternion "
+"instead of Euler angles."
+msgstr ""
+
+#: doc/classes/Basis.xml:44
+msgid ""
+"Constructs a pure rotation basis matrix, rotated around the given "
+"[code]axis[/code] by [code]phi[/code], in radians. The axis must be a "
+"normalized vector."
+msgstr ""
+
+#: doc/classes/Basis.xml:57
+msgid "Constructs a basis matrix from 3 axis vectors (matrix columns)."
+msgstr ""
+
+#: doc/classes/Basis.xml:64
+msgid ""
+"Returns the determinant of the basis matrix. If the basis is uniformly "
+"scaled, its determinant is the square of the scale.\n"
+"A negative determinant means the basis has a negative scale. A zero "
+"determinant means the basis isn't invertible, and is usually considered "
+"invalid."
+msgstr ""
+
+#: doc/classes/Basis.xml:72
+msgid ""
+"Returns the basis's rotation in the form of Euler angles (in the YXZ "
+"convention: when decomposing, first Z, then X, and Y last). The returned "
+"vector contains the rotation angles in the format (X angle, Y angle, Z "
+"angle).\n"
+"Consider using the [method get_rotation_quat] method instead, which returns "
+"a [Quat] quaternion instead of Euler angles."
+msgstr ""
+
+#: doc/classes/Basis.xml:80
+msgid ""
+"This function considers a discretization of rotations into 24 points on unit "
+"sphere, lying along the vectors (x,y,z) with each component being either -1, "
+"0, or 1, and returns the index of the point best representing the "
+"orientation of the object. It is mainly used by the [GridMap] editor. For "
+"further details, refer to the Godot source code."
+msgstr ""
+
+#: doc/classes/Basis.xml:87
+msgid ""
+"Returns the basis's rotation in the form of a quaternion. See [method "
+"get_euler] if you need Euler angles, but keep in mind quaternions should "
+"generally be preferred to Euler angles."
+msgstr ""
+
+#: doc/classes/Basis.xml:94
+msgid ""
+"Assuming that the matrix is the combination of a rotation and scaling, "
+"return the absolute value of scaling factors along each axis."
+msgstr ""
+
+#: doc/classes/Basis.xml:101
+msgid "Returns the inverse of the matrix."
+msgstr ""
+
+#: doc/classes/Basis.xml:112
+msgid ""
+"Returns [code]true[/code] if this basis and [code]b[/code] are approximately "
+"equal, by calling [code]is_equal_approx[/code] on each component."
+msgstr ""
+
+#: doc/classes/Basis.xml:119
+msgid ""
+"Returns the orthonormalized version of the matrix (useful to call from time "
+"to time to avoid rounding error for orthogonal matrices). This performs a "
+"Gram-Schmidt orthonormalization on the basis of the matrix."
+msgstr ""
+
+#: doc/classes/Basis.xml:130
+msgid ""
+"Introduce an additional rotation around the given axis by phi (radians). The "
+"axis must be a normalized vector."
+msgstr ""
+
+#: doc/classes/Basis.xml:139
+msgid ""
+"Introduce an additional scaling specified by the given 3D scaling factor."
+msgstr ""
+
+#: doc/classes/Basis.xml:150
+msgid ""
+"Assuming that the matrix is a proper rotation matrix, slerp performs a "
+"spherical-linear interpolation with another rotation matrix."
+msgstr ""
+
+#: doc/classes/Basis.xml:159
+msgid "Transposed dot product with the X axis of the matrix."
+msgstr ""
+
+#: doc/classes/Basis.xml:168
+msgid "Transposed dot product with the Y axis of the matrix."
+msgstr ""
+
+#: doc/classes/Basis.xml:177
+msgid "Transposed dot product with the Z axis of the matrix."
+msgstr ""
+
+#: doc/classes/Basis.xml:184
+msgid "Returns the transposed version of the matrix."
+msgstr ""
+
+#: doc/classes/Basis.xml:193
+msgid "Returns a vector transformed (multiplied) by the matrix."
+msgstr ""
+
+#: doc/classes/Basis.xml:202
+msgid ""
+"Returns a vector transformed (multiplied) by the transposed basis matrix.\n"
+"[b]Note:[/b] This results in a multiplication by the inverse of the matrix "
+"only if it represents a rotation-reflection."
+msgstr ""
+
+#: doc/classes/Basis.xml:209 doc/classes/Transform2D.xml:181
+msgid ""
+"The basis matrix's X vector (column 0). Equivalent to array index [code]0[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Basis.xml:212 doc/classes/Transform2D.xml:184
+msgid ""
+"The basis matrix's Y vector (column 1). Equivalent to array index [code]1[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Basis.xml:215
+msgid ""
+"The basis matrix's Z vector (column 2). Equivalent to array index [code]2[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Basis.xml:220
+msgid ""
+"The identity basis, with no rotation or scaling applied.\n"
+"This is identical to calling [code]Basis()[/code] without any parameters. "
+"This constant can be used to make your code clearer, and for consistency "
+"with C#."
+msgstr ""
+
+#: doc/classes/Basis.xml:224
+msgid ""
+"The basis that will flip something along the X axis when used in a "
+"transformation."
+msgstr ""
+
+#: doc/classes/Basis.xml:227
+msgid ""
+"The basis that will flip something along the Y axis when used in a "
+"transformation."
+msgstr ""
+
+#: doc/classes/Basis.xml:230
+msgid ""
+"The basis that will flip something along the Z axis when used in a "
+"transformation."
+msgstr ""
+
+#: doc/classes/BitMap.xml:4
+msgid "Boolean matrix."
+msgstr ""
+
+#: doc/classes/BitMap.xml:7
+msgid ""
+"A two-dimensional array of boolean values, can be used to efficiently store "
+"a binary matrix (every matrix element takes only one bit) and query the "
+"values using natural cartesian coordinates."
+msgstr ""
+
+#: doc/classes/BitMap.xml:18
+msgid ""
+"Creates a bitmap with the specified size, filled with [code]false[/code]."
+msgstr ""
+
+#: doc/classes/BitMap.xml:29
+msgid ""
+"Creates a bitmap that matches the given image dimensions, every element of "
+"the bitmap is set to [code]false[/code] if the alpha value of the image at "
+"that position is equal to [code]threshold[/code] or less, and [code]true[/"
+"code] in other case."
+msgstr ""
+
+#: doc/classes/BitMap.xml:38
+msgid "Returns bitmap's value at the specified position."
+msgstr ""
+
+#: doc/classes/BitMap.xml:45
+msgid "Returns bitmap's dimensions."
+msgstr ""
+
+#: doc/classes/BitMap.xml:52
+msgid ""
+"Returns the amount of bitmap elements that are set to [code]true[/code]."
+msgstr ""
+
+#: doc/classes/BitMap.xml:83
+msgid ""
+"Sets the bitmap's element at the specified position, to the specified value."
+msgstr ""
+
+#: doc/classes/BitMap.xml:94
+msgid "Sets a rectangular portion of the bitmap to the specified value."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:4
+msgid ""
+"Renders text using fonts under the [url=https://www.angelcode.com/products/"
+"bmfont/]BMFont[/url] format.\n"
+"Handles files with the [code].fnt[/code] extension."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:8
+msgid ""
+"Renders text using [code]*.fnt[/code] fonts containing texture atlases. "
+"Supports distance fields. For using vector font files like TTF directly, see "
+"[DynamicFont]."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:27
+msgid ""
+"Adds a character to the font, where [code]character[/code] is the Unicode "
+"value, [code]texture[/code] is the texture index, [code]rect[/code] is the "
+"region in the texture (in pixels!), [code]align[/code] is the (optional) "
+"alignment for the character and [code]advance[/code] is the (optional) "
+"advance."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:40
+msgid ""
+"Adds a kerning pair to the [BitmapFont] as a difference. Kerning pairs are "
+"special cases where a typeface advance is determined by the next character."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:49
+msgid "Adds a texture to the [BitmapFont]."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:56
+msgid "Clears all the font data and settings."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:65
+msgid ""
+"Creates a BitmapFont from the [code]*.fnt[/code] file at [code]path[/code]."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:76
+msgid "Returns a kerning pair as a difference."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:85
+msgid "Returns the font atlas texture at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:92
+msgid "Returns the number of textures in the BitmapFont atlas."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:98
+msgid "Ascent (number of pixels above the baseline)."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:101
+msgid "If [code]true[/code], distance field hint is enabled."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:104
+msgid "The fallback font."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:107
+msgid "Total font height (ascent plus descent) in pixels."
+msgstr ""
+
+#: doc/classes/Bone2D.xml:4
+msgid "Joint used with [Skeleton2D] to control and animate other nodes."
+msgstr ""
+
+#: doc/classes/Bone2D.xml:7
+msgid ""
+"Use a hierarchy of [code]Bone2D[/code] bound to a [Skeleton2D] to control, "
+"and animate other [Node2D] nodes.\n"
+"You can use [code]Bone2D[/code] and [code]Skeleton2D[/code] nodes to animate "
+"2D meshes created with the Polygon 2D UV editor.\n"
+"Each bone has a [member rest] transform that you can reset to with [method "
+"apply_rest]. These rest poses are relative to the bone's parent.\n"
+"If in the editor, you can set the rest pose of an entire skeleton using a "
+"menu option, from the code, you need to iterate over the bones to set their "
+"individual rest poses."
+msgstr ""
+
+#: doc/classes/Bone2D.xml:19
+msgid "Stores the node's current transforms in [member rest]."
+msgstr ""
+
+#: doc/classes/Bone2D.xml:26
+msgid ""
+"Returns the node's index as part of the entire skeleton. See [Skeleton2D]."
+msgstr ""
+
+#: doc/classes/Bone2D.xml:33
+msgid ""
+"Returns the node's [member rest] [code]Transform2D[/code] if it doesn't have "
+"a parent, or its rest pose relative to its parent."
+msgstr ""
+
+#: doc/classes/Bone2D.xml:39
+msgid ""
+"Length of the bone's representation drawn in the editor's viewport in pixels."
+msgstr ""
+
+#: doc/classes/Bone2D.xml:42
+msgid ""
+"Rest transform of the bone. You can reset the node's transforms to this "
+"value using [method apply_rest]."
+msgstr ""
+
+#: doc/classes/BoneAttachment3D.xml:4
+msgid "A node that will attach to a bone."
+msgstr ""
+
+#: doc/classes/BoneAttachment3D.xml:7
+msgid ""
+"This node must be the child of a [Skeleton3D] node. You can then select a "
+"bone for this node to attach to. The BoneAttachment3D node will copy the "
+"transform of the selected bone."
+msgstr ""
+
+#: doc/classes/BoneAttachment3D.xml:15
+msgid "The name of the attached bone."
+msgstr ""
+
+#: doc/classes/bool.xml:4
+msgid "Boolean built-in type."
+msgstr ""
+
+#: doc/classes/bool.xml:7
+msgid ""
+"Boolean is a built-in type. There are two boolean values: [code]true[/code] "
+"and [code]false[/code]. You can think of it as an switch with on or off (1 "
+"or 0) setting. Booleans are used in programming for logic in condition "
+"statements, like [code]if[/code] statements.\n"
+"Booleans can be directly used in [code]if[/code] statements. The code below "
+"demonstrates this on the [code]if can_shoot:[/code] line. You don't need to "
+"use [code]== true[/code], you only need [code]if can_shoot:[/code]. "
+"Similarly, use [code]if not can_shoot:[/code] rather than [code]== false[/"
+"code].\n"
+"[codeblock]\n"
+"var can_shoot = true\n"
+"\n"
+"func shoot():\n"
+" if can_shoot:\n"
+" pass # Perform shooting actions here.\n"
+"[/codeblock]\n"
+"The following code will only create a bullet if both conditions are met: "
+"action \"shoot\" is pressed and if [code]can_shoot[/code] is [code]true[/"
+"code].\n"
+"[b]Note:[/b] [code]Input.is_action_pressed(\"shoot\")[/code] is also a "
+"boolean that is [code]true[/code] when \"shoot\" is pressed and [code]false[/"
+"code] when \"shoot\" isn't pressed.\n"
+"[codeblock]\n"
+"var can_shoot = true\n"
+"\n"
+"func shoot():\n"
+" if can_shoot and Input.is_action_pressed(\"shoot\"):\n"
+" create_bullet()\n"
+"[/codeblock]\n"
+"The following code will set [code]can_shoot[/code] to [code]false[/code] and "
+"start a timer. This will prevent player from shooting until the timer runs "
+"out. Next [code]can_shoot[/code] will be set to [code]true[/code] again "
+"allowing player to shoot once again.\n"
+"[codeblock]\n"
+"var can_shoot = true\n"
+"onready var cool_down = $CoolDownTimer\n"
+"\n"
+"func shoot():\n"
+" if can_shoot and Input.is_action_pressed(\"shoot\"):\n"
+" create_bullet()\n"
+" can_shoot = false\n"
+" cool_down.start()\n"
+"\n"
+"func _on_CoolDownTimer_timeout():\n"
+" can_shoot = true\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/bool.xml:49
+msgid ""
+"Cast an [int] value to a boolean value, this method will return [code]false[/"
+"code] if [code]0[/code] is passed in, and [code]true[/code] for all other "
+"ints."
+msgstr ""
+
+#: doc/classes/bool.xml:58
+msgid ""
+"Cast a [float] value to a boolean value, this method will return "
+"[code]false[/code] if [code]0.0[/code] is passed in, and [code]true[/code] "
+"for all other floats."
+msgstr ""
+
+#: doc/classes/bool.xml:67
+msgid ""
+"Cast a [String] value to a boolean value, this method will return "
+"[code]false[/code] if [code]\"\"[/code] is passed in, and [code]true[/code] "
+"for all non-empty strings.\n"
+"Examples: [code]bool(\"False\")[/code] returns [code]true[/code], "
+"[code]bool(\"\")[/code] returns [code]false[/code]."
+msgstr ""
+
+#: doc/classes/BoxContainer.xml:4
+msgid "Base class for box containers."
+msgstr ""
+
+#: doc/classes/BoxContainer.xml:7
+msgid ""
+"Arranges child [Control] nodes vertically or horizontally, and rearranges "
+"them automatically when their minimum size changes."
+msgstr ""
+
+#: doc/classes/BoxContainer.xml:18
+msgid ""
+"Adds a [Control] node to the box as a spacer. If [code]begin[/code] is "
+"[code]true[/code], it will insert the [Control] node in front of all other "
+"children."
+msgstr ""
+
+#: doc/classes/BoxContainer.xml:24
+msgid ""
+"The alignment of the container's children (must be one of [constant "
+"ALIGN_BEGIN], [constant ALIGN_CENTER], or [constant ALIGN_END])."
+msgstr ""
+
+#: doc/classes/BoxContainer.xml:29
+msgid "Aligns children with the beginning of the container."
+msgstr ""
+
+#: doc/classes/BoxContainer.xml:32
+msgid "Aligns children with the center of the container."
+msgstr ""
+
+#: doc/classes/BoxContainer.xml:35
+msgid "Aligns children with the end of the container."
+msgstr ""
+
+#: doc/classes/BoxShape3D.xml:4
+msgid "Box shape resource."
+msgstr ""
+
+#: doc/classes/BoxShape3D.xml:7
+msgid "3D box shape that can be a child of a [PhysicsBody3D] or [Area3D]."
+msgstr ""
+
+#: doc/classes/BoxShape3D.xml:15
+msgid ""
+"The box's half extents. The width, height and depth of this shape is twice "
+"the half extents."
+msgstr ""
+
+#: doc/classes/Button.xml:4
+msgid "Standard themed Button."
+msgstr ""
+
+#: doc/classes/Button.xml:7
+msgid ""
+"Button is the standard themed button. It can contain text and an icon, and "
+"will display them according to the current [Theme].\n"
+"[b]Example of creating a button and assigning an action when pressed by code:"
+"[/b]\n"
+"[codeblock]\n"
+"func _ready():\n"
+" var button = Button.new()\n"
+" button.text = \"Click me\"\n"
+" button.connect(\"pressed\", self, \"_button_pressed\")\n"
+" add_child(button)\n"
+"\n"
+"func _button_pressed():\n"
+" print(\"Hello world!\")\n"
+"[/codeblock]\n"
+"Buttons (like all Control nodes) can also be created in the editor, but some "
+"situations may require creating them from code."
+msgstr ""
+
+#: doc/classes/Button.xml:27
+msgid ""
+"Text alignment policy for the button's text, use one of the [enum TextAlign] "
+"constants."
+msgstr ""
+
+#: doc/classes/Button.xml:30
+msgid ""
+"When this property is enabled, text that is too large to fit the button is "
+"clipped, when disabled the Button will always be wide enough to hold the "
+"text."
+msgstr ""
+
+#: doc/classes/Button.xml:33
+msgid ""
+"When enabled, the button's icon will expand/shrink to fit the button's size "
+"while keeping its aspect."
+msgstr ""
+
+#: doc/classes/Button.xml:36
+msgid "Flat buttons don't display decoration."
+msgstr ""
+
+#: doc/classes/Button.xml:39
+msgid ""
+"Button's icon, if text is present the icon will be placed before the text."
+msgstr ""
+
+#: doc/classes/Button.xml:42 doc/classes/LinkButton.xml:18
+msgid "The button's text that will be displayed inside the button's area."
+msgstr ""
+
+#: doc/classes/Button.xml:47
+msgid "Align the text to the left."
+msgstr ""
+
+#: doc/classes/Button.xml:50
+msgid "Align the text to the center."
+msgstr ""
+
+#: doc/classes/Button.xml:53
+msgid "Align the text to the right."
+msgstr ""
+
+#: doc/classes/Button.xml:58
+msgid "[StyleBox] used when the [Button] is disabled."
+msgstr ""
+
+#: doc/classes/Button.xml:61
+msgid ""
+"[StyleBox] used when the [Button] is focused. It is displayed over the "
+"current [StyleBox], so using [StyleBoxEmpty] will just disable the focus "
+"visual effect."
+msgstr ""
+
+#: doc/classes/Button.xml:64
+msgid "[Font] of the [Button]'s text."
+msgstr ""
+
+#: doc/classes/Button.xml:67
+msgid "Default text [Color] of the [Button]."
+msgstr ""
+
+#: doc/classes/Button.xml:70
+msgid "Text [Color] used when the [Button] is disabled."
+msgstr ""
+
+#: doc/classes/Button.xml:73
+msgid "Text [Color] used when the [Button] is being hovered."
+msgstr ""
+
+#: doc/classes/Button.xml:76
+msgid "Text [Color] used when the [Button] is being pressed."
+msgstr ""
+
+#: doc/classes/Button.xml:79
+msgid "[StyleBox] used when the [Button] is being hovered."
+msgstr ""
+
+#: doc/classes/Button.xml:82
+msgid "The horizontal space between [Button]'s icon and text."
+msgstr ""
+
+#: doc/classes/Button.xml:85
+msgid "Default [StyleBox] for the [Button]."
+msgstr ""
+
+#: doc/classes/Button.xml:88
+msgid "[StyleBox] used when the [Button] is being pressed."
+msgstr ""
+
+#: doc/classes/ButtonGroup.xml:4
+msgid "Group of Buttons."
+msgstr ""
+
+#: doc/classes/ButtonGroup.xml:7
+msgid ""
+"Group of [Button]. All direct and indirect children buttons become radios. "
+"Only one allows being pressed.\n"
+"[member BaseButton.toggle_mode] should be [code]true[/code]."
+msgstr ""
+
+#: doc/classes/ButtonGroup.xml:17
+msgid ""
+"Returns an [Array] of [Button]s who have this as their [ButtonGroup] (see "
+"[member BaseButton.group])."
+msgstr ""
+
+#: doc/classes/ButtonGroup.xml:24
+msgid "Returns the current pressed button."
+msgstr ""
+
+#: doc/classes/Callable.xml:4
+msgid "An object representing a method in a certain object that can be called."
+msgstr ""
+
+#: doc/classes/Callable.xml:7
+msgid ""
+"[Callable] is a first class object which can be held in variables and passed "
+"to functions. It represents a given method in an [Object], and is typically "
+"used for signal callbacks.\n"
+"[b]Example:[/b]\n"
+"[codeblock]\n"
+"var callable = Callable(self, \"print_args\")\n"
+"func print_args(arg1, arg2, arg3 = \"\"):\n"
+" prints(arg1, arg2, arg3)\n"
+"func test():\n"
+" callable.call(\"hello\", \"world\") # Prints \"hello world\".\n"
+" callable.call(Vector2.UP, 42, callable) # Prints \"(0, -1) 42 Node(Node."
+"gd)::print_args\".\n"
+" callable.call(\"invalid\") # Invalid call, should have at least 2 "
+"arguments.\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Callable.xml:30
+msgid ""
+"Creates a new [Callable] for the method called [code]method_name[/code] in "
+"the specified [code]object[/code]."
+msgstr ""
+
+#: doc/classes/Callable.xml:37
+msgid ""
+"Calls the method represented by this [Callable]. Arguments can be passed and "
+"should match the method's signature."
+msgstr ""
+
+#: doc/classes/Callable.xml:44
+msgid ""
+"Calls the method represented by this [Callable] in deferred mode, i.e. "
+"during the idle frame. Arguments can be passed and should match the method's "
+"signature."
+msgstr ""
+
+#: doc/classes/Callable.xml:51
+msgid "Returns the name of the method represented by this [Callable]."
+msgstr ""
+
+#: doc/classes/Callable.xml:58
+msgid "Returns the object on which this [Callable] is called."
+msgstr ""
+
+#: doc/classes/Callable.xml:65
+msgid ""
+"Returns the ID of this [Callable]'s object (see [method Object."
+"get_instance_id])."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:4
+msgid "Camera node for 2D scenes."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:7
+msgid ""
+"Camera node for 2D scenes. It forces the screen (current layer) to scroll "
+"following this node. This makes it easier (and faster) to program scrollable "
+"scenes than manually changing the position of [CanvasItem]-based nodes.\n"
+"This node is intended to be a simple helper to get things going quickly and "
+"it may happen that more functionality is desired to change how the camera "
+"works. To make your own custom camera node, inherit from [Node2D] and change "
+"the transform of the canvas by setting [member Viewport.canvas_transform] in "
+"[Viewport] (you can obtain the current [Viewport] by using [method Node."
+"get_viewport]).\n"
+"Note that the [Camera2D] node's [code]position[/code] doesn't represent the "
+"actual position of the screen, which may differ due to applied smoothing or "
+"limits. You can use [method get_camera_screen_center] to get the real "
+"position."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:18
+msgid "Aligns the camera to the tracked node."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:25
+msgid ""
+"Removes any [Camera2D] from the ancestor [Viewport]'s internal currently-"
+"assigned camera."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:32
+msgid "Forces the camera to update scroll immediately."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:39
+msgid "Returns the camera position."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:46
+msgid ""
+"Returns the location of the [Camera2D]'s screen-center, relative to the "
+"origin."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:55
+msgid ""
+"Returns the specified margin. See also [member drag_margin_bottom], [member "
+"drag_margin_top], [member drag_margin_left], and [member drag_margin_right]."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:64
+msgid ""
+"Returns the specified camera limit. See also [member limit_bottom], [member "
+"limit_top], [member limit_left], and [member limit_right]."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:71
+msgid ""
+"Make this the current 2D camera for the scene (viewport and layer), in case "
+"there are many cameras in the scene."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:78
+msgid ""
+"Sets the camera's position immediately to its current smoothing "
+"destination.\n"
+"This has no effect if smoothing is disabled."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:90
+msgid ""
+"Sets the specified margin. See also [member drag_margin_bottom], [member "
+"drag_margin_top], [member drag_margin_left], and [member drag_margin_right]."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:101
+msgid ""
+"Sets the specified camera limit. See also [member limit_bottom], [member "
+"limit_top], [member limit_left], and [member limit_right]."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:107
+msgid "The Camera2D's anchor point. See [enum AnchorMode] constants."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:110
+msgid ""
+"If [code]true[/code], the camera is the active camera for the current scene. "
+"Only one camera can be current, so setting a different camera [code]current[/"
+"code] will disable this one."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:113
+msgid ""
+"The custom [Viewport] node attached to the [Camera2D]. If [code]null[/code] "
+"or not a [Viewport], uses the default viewport instead."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:116
+msgid ""
+"Bottom margin needed to drag the camera. A value of [code]1[/code] makes the "
+"camera move only when reaching the edge of the screen."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:119
+msgid ""
+"If [code]true[/code], the camera only moves when reaching the horizontal "
+"drag margins. If [code]false[/code], the camera moves horizontally "
+"regardless of margins."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:122
+msgid ""
+"Left margin needed to drag the camera. A value of [code]1[/code] makes the "
+"camera move only when reaching the edge of the screen."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:125
+msgid ""
+"Right margin needed to drag the camera. A value of [code]1[/code] makes the "
+"camera move only when reaching the edge of the screen."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:128
+msgid ""
+"Top margin needed to drag the camera. A value of [code]1[/code] makes the "
+"camera move only when reaching the edge of the screen."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:131
+msgid ""
+"If [code]true[/code], the camera only moves when reaching the vertical drag "
+"margins. If [code]false[/code], the camera moves vertically regardless of "
+"margins."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:134
+msgid ""
+"If [code]true[/code], draws the camera's drag margin rectangle in the editor."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:137
+msgid ""
+"If [code]true[/code], draws the camera's limits rectangle in the editor."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:140
+msgid ""
+"If [code]true[/code], draws the camera's screen rectangle in the editor."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:143
+msgid ""
+"Bottom scroll limit in pixels. The camera stops moving when reaching this "
+"value."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:146
+msgid ""
+"Left scroll limit in pixels. The camera stops moving when reaching this "
+"value."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:149
+msgid ""
+"Right scroll limit in pixels. The camera stops moving when reaching this "
+"value."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:152
+msgid ""
+"If [code]true[/code], the camera smoothly stops when reaches its limits."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:155
+msgid ""
+"Top scroll limit in pixels. The camera stops moving when reaching this value."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:158
+msgid ""
+"The camera's offset, useful for looking around or camera shake animations."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:161
+msgid ""
+"The horizontal offset of the camera, relative to the drag margins.\n"
+"[b]Note:[/b] Offset H is used only to force offset relative to margins. It's "
+"not updated in any way if drag margins are enabled and can be used to set "
+"initial offset."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:165
+msgid ""
+"The vertical offset of the camera, relative to the drag margins.\n"
+"[b]Note:[/b] Used the same as [member offset_h]."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:169
+msgid "The camera's process callback. See [enum Camera2DProcessMode]."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:172
+msgid "If [code]true[/code], the camera rotates with the target."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:175
+msgid ""
+"If [code]true[/code], the camera smoothly moves towards the target at "
+"[member smoothing_speed]."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:178
+msgid ""
+"Speed in pixels per second of the camera's smoothing effect when [member "
+"smoothing_enabled] is [code]true[/code]."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:181
+msgid ""
+"The camera's zoom relative to the viewport. Values larger than "
+"[code]Vector2(1, 1)[/code] zoom out and smaller values zoom in. For an "
+"example, use [code]Vector2(0.5, 0.5)[/code] for a 2× zoom-in, and "
+"[code]Vector2(4, 4)[/code] for a 4× zoom-out."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:186
+msgid ""
+"The camera's position is fixed so that the top-left corner is always at the "
+"origin."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:189
+msgid ""
+"The camera's position takes into account vertical/horizontal offsets and the "
+"screen size."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:192 doc/classes/ClippedCamera3D.xml:104
+msgid "The camera updates with the [code]_physics_process[/code] callback."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:195 doc/classes/ClippedCamera3D.xml:107
+msgid "The camera updates with the [code]_process[/code] callback."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:4
+msgid "Camera node, displays from a point of view."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:7
+msgid ""
+"[Camera3D] is a special node that displays what is visible from its current "
+"location. Cameras register themselves in the nearest [Viewport] node (when "
+"ascending the tree). Only one camera can be active per viewport. If no "
+"viewport is available ascending the tree, the camera will register in the "
+"global viewport. In other words, a camera just provides 3D display "
+"capabilities to a [Viewport], and, without one, a scene registered in that "
+"[Viewport] (or higher viewports) can't be displayed."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:18
+msgid ""
+"If this is the current camera, remove it from being current. If "
+"[code]enable_next[/code] is [code]true[/code], request to make the next "
+"camera current, if any."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:25
+msgid "Returns the camera's RID from the [RenderingServer]."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:32
+msgid ""
+"Gets the camera transform. Subclassed cameras such as [ClippedCamera3D] may "
+"provide different transforms than the [Node] transform."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:41
+msgid ""
+"Returns [code]true[/code] if the given [code]layer[/code] in the [member "
+"cull_mask] is enabled, [code]false[/code] otherwise."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:48
+msgid ""
+"Returns the camera's frustum planes in world-space units as an array of "
+"[Plane]s in the following order: near, far, left, top, right, bottom. Not to "
+"be confused with [member frustum_offset]."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:57
+msgid ""
+"Returns [code]true[/code] if the given position is behind the camera.\n"
+"[b]Note:[/b] A position which returns [code]false[/code] may still be "
+"outside the camera's field of view."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:65
+msgid ""
+"Makes this camera the current camera for the [Viewport] (see class "
+"description). If the camera node is outside the scene tree, it will attempt "
+"to become current once it's added."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:74
+msgid ""
+"Returns a normal vector from the screen point location directed along the "
+"camera. Orthogonal cameras are normalized. Perspective cameras account for "
+"perspective, screen width/height, etc."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:85
+msgid ""
+"Returns the 3D point in worldspace that maps to the given 2D coordinate in "
+"the [Viewport] rectangle on a plane that is the given [code]z_depth[/code] "
+"distance into the scene away from the camera."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:94
+msgid ""
+"Returns a normal vector in worldspace, that is the result of projecting a "
+"point on the [Viewport] rectangle by the camera projection. This is useful "
+"for casting rays in the form of (origin, normal) for object intersection or "
+"picking."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:103
+msgid ""
+"Returns a 3D position in worldspace, that is the result of projecting a "
+"point on the [Viewport] rectangle by the camera projection. This is useful "
+"for casting rays in the form of (origin, normal) for object intersection or "
+"picking."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:114
+msgid ""
+"Enables or disables the given [code]layer[/code] in the [member cull_mask]."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:129
+msgid ""
+"Sets the camera projection to frustum mode (see [constant "
+"PROJECTION_FRUSTUM]), by specifying a [code]size[/code], an [code]offset[/"
+"code], and the [code]z_near[/code] and [code]z_far[/code] clip planes in "
+"world-space units."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:142
+msgid ""
+"Sets the camera projection to orthogonal mode (see [constant "
+"PROJECTION_ORTHOGONAL]), by specifying a [code]size[/code], and the "
+"[code]z_near[/code] and [code]z_far[/code] clip planes in world-space units. "
+"(As a hint, 2D games often use this projection, with values specified in "
+"pixels.)"
+msgstr ""
+
+#: doc/classes/Camera3D.xml:155
+msgid ""
+"Sets the camera projection to perspective mode (see [constant "
+"PROJECTION_PERSPECTIVE]), by specifying a [code]fov[/code] (field of view) "
+"angle in degrees, and the [code]z_near[/code] and [code]z_far[/code] clip "
+"planes in world-space units."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:164
+msgid ""
+"Returns the 2D coordinate in the [Viewport] rectangle that maps to the given "
+"3D point in worldspace."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:170
+msgid ""
+"The culling mask that describes which 3D render layers are rendered by this "
+"camera."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:173
+msgid ""
+"If [code]true[/code], the ancestor [Viewport] is currently using this camera."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:176
+msgid ""
+"If not [constant DOPPLER_TRACKING_DISABLED], this camera will simulate the "
+"[url=https://en.wikipedia.org/wiki/Doppler_effect]Doppler effect[/url] for "
+"objects changed in particular [code]_process[/code] methods. See [enum "
+"DopplerTracking] for possible values."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:179
+msgid "The [CameraEffects] to use for this camera."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:182
+msgid "The [Environment] to use for this camera."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:185
+msgid ""
+"The distance to the far culling boundary for this camera relative to its "
+"local Z axis."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:188
+msgid ""
+"The camera's field of view angle (in degrees). Only applicable in "
+"perspective mode. Since [member keep_aspect] locks one axis, [code]fov[/"
+"code] sets the other axis' field of view angle.\n"
+"For reference, the default vertical field of view value ([code]75.0[/code]) "
+"is equivalent to an horizontal FOV of:\n"
+"- ~91.31 degrees in a 4:3 viewport\n"
+"- ~101.67 degrees in a 16:10 viewport\n"
+"- ~107.51 degrees in a 16:9 viewport\n"
+"- ~121.63 degrees in a 21:9 viewport"
+msgstr ""
+
+#: doc/classes/Camera3D.xml:196
+msgid ""
+"The camera's frustum offset. This can be changed from the default to create "
+"\"tilted frustum\" effects such as [url=https://zdoom.org/wiki/Y-shearing]Y-"
+"shearing[/url]."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:199
+msgid "The horizontal (X) offset of the camera viewport."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:202
+msgid ""
+"The axis to lock during [member fov]/[member size] adjustments. Can be "
+"either [constant KEEP_WIDTH] or [constant KEEP_HEIGHT]."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:205
+msgid ""
+"The distance to the near culling boundary for this camera relative to its "
+"local Z axis."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:208
+msgid ""
+"The camera's projection mode. In [constant PROJECTION_PERSPECTIVE] mode, "
+"objects' Z distance from the camera's local space scales their perceived "
+"size."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:211
+msgid ""
+"The camera's size measured as 1/2 the width or height. Only applicable in "
+"orthogonal mode. Since [member keep_aspect] locks on axis, [code]size[/code] "
+"sets the other axis' size length."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:214
+msgid "The vertical (Y) offset of the camera viewport."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:219
+msgid ""
+"Perspective projection. Objects on the screen becomes smaller when they are "
+"far away."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:222
+msgid ""
+"Orthogonal projection, also known as orthographic projection. Objects remain "
+"the same size on the screen no matter how far away they are."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:225
+msgid ""
+"Frustum projection. This mode allows adjusting [member frustum_offset] to "
+"create \"tilted frustum\" effects."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:228
+msgid ""
+"Preserves the horizontal aspect ratio; also known as Vert- scaling. This is "
+"usually the best option for projects running in portrait mode, as taller "
+"aspect ratios will benefit from a wider vertical FOV."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:231
+msgid ""
+"Preserves the vertical aspect ratio; also known as Hor+ scaling. This is "
+"usually the best option for projects running in landscape mode, as wider "
+"aspect ratios will automatically benefit from a wider horizontal FOV."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:234
+msgid ""
+"Disables [url=https://en.wikipedia.org/wiki/Doppler_effect]Doppler effect[/"
+"url] simulation (default)."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:237
+msgid ""
+"Simulate [url=https://en.wikipedia.org/wiki/Doppler_effect]Doppler effect[/"
+"url] by tracking positions of objects that are changed in [code]_process[/"
+"code]. Changes in the relative velocity of this camera compared to those "
+"objects affect how Audio is perceived (changing the Audio's [code]pitch "
+"shift[/code])."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:240
+msgid ""
+"Simulate [url=https://en.wikipedia.org/wiki/Doppler_effect]Doppler effect[/"
+"url] by tracking positions of objects that are changed in "
+"[code]_physics_process[/code]. Changes in the relative velocity of this "
+"camera compared to those objects affect how Audio is perceived (changing the "
+"Audio's [code]pitch shift[/code])."
+msgstr ""
+
+#: doc/classes/CameraEffects.xml:4
+msgid ""
+"Contains camera-specific effects such as depth of field and exposure "
+"override."
+msgstr ""
+
+#: doc/classes/CameraEffects.xml:7
+msgid ""
+"Contains camera-specific effects such as depth of field and exposure "
+"override.\n"
+"See also [Environment] for general 3D environment settings."
+msgstr ""
+
+#: doc/classes/CameraEffects.xml:16
+msgid ""
+"The amount of blur for both near and far depth-of-field effects. The amount "
+"of blur increases the radius of the blur effect, making the affected area "
+"blurrier. However, If the amount is too high, you might start to see lines "
+"appearing, especially when using a low quality blur."
+msgstr ""
+
+#: doc/classes/CameraEffects.xml:19
+msgid ""
+"The distance from the camera where the far blur effect affects the rendering."
+msgstr ""
+
+#: doc/classes/CameraEffects.xml:22
+msgid ""
+"If [code]true[/code], enables the depth-of-field far blur effect. This has a "
+"significant performance cost. Consider disabling it in scenes where there "
+"are no far away objects."
+msgstr ""
+
+#: doc/classes/CameraEffects.xml:25
+msgid "The length of the transition between the no-blur area and far blur."
+msgstr ""
+
+#: doc/classes/CameraEffects.xml:28
+msgid ""
+"Distance from the camera where the near blur effect affects the rendering."
+msgstr ""
+
+#: doc/classes/CameraEffects.xml:31
+msgid ""
+"If [code]true[/code], enables the depth-of-field near blur effect. This has "
+"a significant performance cost. Consider disabling it in scenes where there "
+"are no nearby objects."
+msgstr ""
+
+#: doc/classes/CameraEffects.xml:34
+msgid "The length of the transition between the near blur and no-blur area."
+msgstr ""
+
+#: doc/classes/CameraEffects.xml:37
+msgid ""
+"The exposure override value to use. Higher values will result in a brighter "
+"scene. Only effective if [member override_exposure_enabled] is [code]true[/"
+"code]."
+msgstr ""
+
+#: doc/classes/CameraEffects.xml:40
+msgid ""
+"If [code]true[/code], overrides the manual or automatic exposure defined in "
+"the [Environment] with the value in [member override_exposure]."
+msgstr ""
+
+#: doc/classes/CameraFeed.xml:4
+msgid ""
+"A camera feed gives you access to a single physical camera attached to your "
+"device."
+msgstr ""
+
+#: doc/classes/CameraFeed.xml:7
+msgid ""
+"A camera feed gives you access to a single physical camera attached to your "
+"device. When enabled, Godot will start capturing frames from the camera "
+"which can then be used. See also [CameraServer].\n"
+"[b]Note:[/b] 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."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:4
+msgid "Server keeping track of different cameras accessible in Godot."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:7
+msgid ""
+"The [CameraServer] keeps track of different cameras accessible in Godot. "
+"These are external cameras such as webcams or the cameras on your phone.\n"
+"It is notably used to provide AR modules with a video feed from the camera.\n"
+"[b]Note:[/b] This class is currently only implemented on macOS and iOS. On "
+"other platforms, no [CameraFeed]s will be available."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:20
+msgid "Adds the camera [code]feed[/code] to the camera server."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:27
+msgid "Returns an array of [CameraFeed]s."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:36
+msgid ""
+"Returns the [CameraFeed] corresponding to the camera with the given "
+"[code]index[/code]."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:43
+msgid "Returns the number of [CameraFeed]s registered."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:52
+msgid "Removes the specified camera [code]feed[/code]."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:61
+msgid "Emitted when a [CameraFeed] is added (e.g. a webcam is plugged in)."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:68
+msgid "Emitted when a [CameraFeed] is removed (e.g. a webcam is unplugged)."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:74
+msgid "The RGBA camera image."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:77
+msgid "The [url=https://en.wikipedia.org/wiki/YCbCr]YCbCr[/url] camera image."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:80
+msgid "The Y component camera image."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:83
+msgid "The CbCr component camera image."
+msgstr ""
+
+#: doc/classes/CameraTexture.xml:4
+msgid "Texture provided by a [CameraFeed]."
+msgstr ""
+
+#: doc/classes/CameraTexture.xml:7
+msgid ""
+"This texture gives access to the camera texture provided by a [CameraFeed].\n"
+"[b]Note:[/b] Many cameras supply YCbCr images which need to be converted in "
+"a shader."
+msgstr ""
+
+#: doc/classes/CameraTexture.xml:16
+msgid "The ID of the [CameraFeed] for which we want to display the image."
+msgstr ""
+
+#: doc/classes/CameraTexture.xml:19
+msgid ""
+"Convenience property that gives access to the active property of the "
+"[CameraFeed]."
+msgstr ""
+
+#: doc/classes/CameraTexture.xml:22
+msgid ""
+"Which image within the [CameraFeed] we want access to, important if the "
+"camera image is split in a Y and CbCr component."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:4
+msgid "Base class of anything 2D."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:7
+msgid ""
+"Base class of anything 2D. Canvas items are laid out in a tree; children "
+"inherit and extend their parent's transform. [CanvasItem] is extended by "
+"[Control] for anything GUI-related, and by [Node2D] for anything related to "
+"the 2D engine.\n"
+"Any [CanvasItem] can draw. For this, [method update] must be called, then "
+"[constant NOTIFICATION_DRAW] will be received on idle time to request "
+"redraw. Because of this, canvas items don't need to be redrawn on every "
+"frame, improving the performance significantly. Several functions for "
+"drawing on the [CanvasItem] are provided (see [code]draw_*[/code] "
+"functions). However, they can only be used inside the [method Object."
+"_notification], signal or [method _draw] virtual functions.\n"
+"Canvas items are drawn in tree order. By default, children are on top of "
+"their parents so a root [CanvasItem] will be drawn behind everything. This "
+"behavior can be changed on a per-item basis.\n"
+"A [CanvasItem] can also be hidden, which will also hide its children. It "
+"provides many ways to change parameters such as modulation (for itself and "
+"its children) and self modulation (only for itself), as well as its blend "
+"mode.\n"
+"Ultimately, a transform notification can be requested, which will notify the "
+"node that its global position changed in case the parent tree changed.\n"
+"[b]Note:[/b] Unless otherwise specified, all methods that have angle "
+"parameters must have angles specified as [i]radians[/i]. To convert degrees "
+"to radians, use [method @GDScript.deg2rad]."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:15 doc/classes/CanvasLayer.xml:10
+#: doc/classes/InputEvent.xml:11 doc/classes/Viewport.xml:15
+msgid "https://docs.godotengine.org/en/latest/tutorials/2d/2d_transforms.html"
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:16 doc/classes/Control.xml:19
+#: doc/classes/Node2D.xml:10
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/2d/custom_drawing_in_2d.html"
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:23
+msgid ""
+"Overridable function called by the engine (if defined) to draw the canvas "
+"item."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:44
+msgid ""
+"Draws an arc between the given angles. The larger the value of "
+"[code]point_count[/code], the smoother the curve."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:61
+msgid ""
+"Draws a string character using a custom font. Returns the advance, depending "
+"on the character width and kerning with an optional next character."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:74
+msgid "Draws a colored circle."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:99
+msgid "Draws a colored polygon of any amount of points, convex or concave."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:114
+msgid "Draws a line from a 2D point to another, with a given color and width."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:139
+msgid ""
+"Draws a [Mesh] in 2D, using the provided texture. See [MeshInstance2D] for "
+"related documentation."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:152
+msgid "Draws multiple, parallel lines with a uniform [code]color[/code]."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:165
+msgid ""
+"Draws multiple, parallel lines with a uniform [code]width[/code] and segment-"
+"by-segment coloring. Colors assigned to line segments match by index between "
+"[code]points[/code] and [code]colors[/code]."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:186
+msgid ""
+"Draws a [MultiMesh] in 2D with the provided texture. See "
+"[MultiMeshInstance2D] for related documentation."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:211
+msgid "Draws a polygon of any amount of points, convex or concave."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:224
+msgid ""
+"Draws interconnected line segments with a uniform [code]color[/code] and "
+"[code]width[/code]."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:237
+msgid ""
+"Draws interconnected line segments with a uniform [code]width[/code] and "
+"segment-by-segment coloring. Colors assigned to line segments match by index "
+"between [code]points[/code] and [code]colors[/code]."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:264
+msgid ""
+"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."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:279
+msgid ""
+"Draws a rectangle. If [code]filled[/code] is [code]true[/code], the "
+"rectangle will be filled with the [code]color[/code] specified. If "
+"[code]filled[/code] is [code]false[/code], the rectangle will be drawn as a "
+"stroke with the [code]color[/code] and [code]width[/code] specified.\n"
+"[b]Note:[/b] [code]width[/code] is only effective if [code]filled[/code] is "
+"[code]false[/code]."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:293
+msgid ""
+"Sets a custom transform for drawing via components. Anything drawn "
+"afterwards will be transformed by this."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:302
+msgid ""
+"Sets a custom transform for drawing via matrix. Anything drawn afterwards "
+"will be transformed by this."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:319
+msgid ""
+"Draws [code]text[/code] using the specified [code]font[/code] at the "
+"[code]position[/code] (top-left corner). The text will have its color "
+"multiplied by [code]modulate[/code]. If [code]clip_w[/code] is greater than "
+"or equal to 0, the text will be clipped if it exceeds the specified width.\n"
+"[b]Example using the default project font:[/b]\n"
+"[codeblock]\n"
+"# If using this method in a script that redraws constantly, move the\n"
+"# `default_font` declaration to a member variable assigned in `_ready()`\n"
+"# so the Control is only created once.\n"
+"var default_font = Control.new().get_font(\"font\")\n"
+"draw_string(default_font, Vector2(64, 64), \"Hello world\")\n"
+"[/codeblock]\n"
+"See also [method Font.draw]."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:339
+msgid "Draws a styled rectangle."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:362
+msgid "Draws a texture at a given position."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:389
+msgid ""
+"Draws a textured rectangle at a given position, optionally modulated by a "
+"color. If [code]transpose[/code] is [code]true[/code], the texture will have "
+"its X and Y coordinates swapped."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:418
+msgid ""
+"Draws a textured rectangle region at a given position, optionally modulated "
+"by a color. If [code]transpose[/code] is [code]true[/code], the texture will "
+"have its X and Y coordinates swapped."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:425 doc/classes/Node3D.xml:19
+msgid ""
+"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."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:432
+msgid "Returns the [RID] of the [World2D] canvas where this item is in."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:439
+msgid "Returns the canvas item RID used by [RenderingServer] for this item."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:446
+msgid "Returns the transform matrix of this item's canvas."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:453
+msgid "Returns the global position of the mouse."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:460
+msgid "Returns the global transform matrix of this item."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:467
+msgid ""
+"Returns the global transform matrix of this item in relation to the canvas."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:474
+msgid "Returns the mouse position relative to this item's position."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:481
+msgid "Returns the transform matrix of this item."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:488
+msgid "Returns the viewport's boundaries as a [Rect2]."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:495
+msgid "Returns this item's transform in relation to the viewport."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:502
+msgid "Returns the [World2D] where this item is in."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:509
+msgid "Hide the [CanvasItem] if it's currently visible."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:516
+msgid ""
+"Returns [code]true[/code] if local transform notifications are communicated "
+"to children."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:523
+msgid ""
+"Returns [code]true[/code] if the node is set as top-level. See [method "
+"set_as_toplevel]."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:530
+msgid ""
+"Returns [code]true[/code] if global transform notifications are communicated "
+"to children."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:537 doc/classes/Node3D.xml:104
+msgid ""
+"Returns [code]true[/code] if the node is present in the [SceneTree], its "
+"[member visible] property is [code]true[/code] and all its antecedents are "
+"also visible. If any antecedent is hidden, this node will not be visible in "
+"the scene tree."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:546
+msgid "Assigns [code]screen_point[/code] as this node's new local transform."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:555
+msgid ""
+"Transformations issued by [code]event[/code]'s inputs are applied in local "
+"space instead of global space."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:564
+msgid ""
+"If [code]enable[/code] is [code]true[/code], the node won't inherit its "
+"transform from parent canvas items."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:573
+msgid ""
+"If [code]enable[/code] is [code]true[/code], children will be updated with "
+"local transform data."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:582
+msgid ""
+"If [code]enable[/code] is [code]true[/code], children will be updated with "
+"global transform data."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:589
+msgid ""
+"Show the [CanvasItem] if it's currently hidden. For controls that inherit "
+"[Popup], the correct way to make them visible is to call one of the multiple "
+"[code]popup*()[/code] functions instead."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:596
+msgid ""
+"Queue the [CanvasItem] for update. [constant NOTIFICATION_DRAW] will be "
+"called on idle time to request redraw."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:602
+msgid ""
+"The rendering layers in which this [CanvasItem] responds to [Light2D] nodes."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:605
+msgid "The material applied to textures on this [CanvasItem]."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:608
+msgid "The color applied to textures on this [CanvasItem]."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:611
+msgid ""
+"The color applied to textures on this [CanvasItem]. This is not inherited by "
+"children [CanvasItem]s."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:614
+msgid "If [code]true[/code], the object draws behind its parent."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:617
+msgid "If [code]true[/code], the object draws on top of its parent."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:620
+msgid "The texture filtering mode to use on this [CanvasItem]."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:623
+msgid "The texture repeating mode to use on this [CanvasItem]."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:626
+msgid ""
+"If [code]true[/code], the parent [CanvasItem]'s [member material] property "
+"is used as this one's material."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:629
+msgid ""
+"If [code]true[/code], this [CanvasItem] is drawn. The node is only visible "
+"if all of its antecedents are visible as well (in other words, [method "
+"is_visible_in_tree] must return [code]true[/code]).\n"
+"[b]Note:[/b] For controls that inherit [Popup], the correct way to make them "
+"visible is to call one of the multiple [code]popup*()[/code] functions "
+"instead."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:636
+msgid ""
+"Emitted when the [CanvasItem] must redraw. This can only be connected "
+"realtime, as deferred will not allow drawing."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:641
+msgid "Emitted when becoming hidden."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:646
+msgid "Emitted when the item rect has changed."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:651
+msgid "Emitted when the visibility (hidden/visible) changes."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:657
+msgid ""
+"The [CanvasItem]'s transform has changed. This notification is only received "
+"if enabled by [method set_notify_transform] or [method "
+"set_notify_local_transform]."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:660
+msgid "The [CanvasItem] is requested to draw."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:663
+msgid "The [CanvasItem]'s visibility has changed."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:666
+msgid "The [CanvasItem] has entered the canvas."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:669
+msgid "The [CanvasItem] has exited the canvas."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:672 doc/classes/CanvasItem.xml:698
+msgid "The [CanvasItem] will inherit the filter from its parent."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:675
+msgid ""
+"The texture filter reads from the nearest pixel only. The simplest and "
+"fastest method of filtering. Useful for pixel art."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:678
+msgid ""
+"The texture filter blends between the nearest four pixels. Use this for most "
+"cases where you want to avoid a pixelated style."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:681
+msgid ""
+"The texture filter reads from the nearest pixel in the nearest mipmap. This "
+"is the fastest way to read from textures with mipmaps."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:684
+msgid ""
+"The texture filter blends between the nearest 4 pixels and between the "
+"nearest 2 mipmaps. Use this for non-pixel art textures that may be viewed at "
+"a low scale (e.g. due to [Camera2D] zoom), as mipmaps are important to "
+"smooth out pixels that are smaller than on-screen pixels."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:687
+msgid ""
+"The texture filter reads from the nearest pixel, but selects a mipmap based "
+"on the angle between the surface and the camera view. This reduces artifacts "
+"on surfaces that are almost in line with the camera.\n"
+"[b]Note:[/b] This texture filter is rarely useful in 2D projects. [constant "
+"TEXTURE_FILTER_NEAREST_WITH_MIPMAPS] is usually more appropriate."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:691
+msgid ""
+"The texture filter blends between the nearest 4 pixels and selects a mipmap "
+"based on the angle between the surface and the camera view. This reduces "
+"artifacts on surfaces that are almost in line with the camera. This is the "
+"slowest of the filtering options, but results in the highest quality "
+"texturing.\n"
+"[b]Note:[/b] This texture filter is rarely useful in 2D projects. [constant "
+"TEXTURE_FILTER_LINEAR_WITH_MIPMAPS] is usually more appropriate."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:701
+msgid "Texture will not repeat."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:704
+msgid "Texture will repeat normally."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:707
+msgid ""
+"Texture will repeat in a 2x2 tiled mode, where elements at even positions "
+"are mirrored."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:710
+msgid "Represents the size of the [enum TextureRepeat] enum."
+msgstr ""
+
+#: doc/classes/CanvasItemMaterial.xml:4
+msgid "A material for [CanvasItem]s."
+msgstr ""
+
+#: doc/classes/CanvasItemMaterial.xml:7
+msgid ""
+"[CanvasItemMaterial]s provide a means of modifying the textures associated "
+"with a CanvasItem. They specialize in describing blend and lighting "
+"behaviors for textures. Use a [ShaderMaterial] to more fully customize a "
+"material's interactions with a [CanvasItem]."
+msgstr ""
+
+#: doc/classes/CanvasItemMaterial.xml:15
+msgid ""
+"The manner in which a material's rendering is applied to underlying textures."
+msgstr ""
+
+#: doc/classes/CanvasItemMaterial.xml:18
+msgid "The manner in which material reacts to lighting."
+msgstr ""
+
+#: doc/classes/CanvasItemMaterial.xml:21
+msgid ""
+"The number of columns in the spritesheet assigned as [Texture2D] for a "
+"[GPUParticles2D] or [CPUParticles2D].\n"
+"[b]Note:[/b] This property is only used and visible in the editor if [member "
+"particles_animation] is [code]true[/code]."
+msgstr ""
+
+#: doc/classes/CanvasItemMaterial.xml:25
+msgid ""
+"If [code]true[/code], the particles animation will loop.\n"
+"[b]Note:[/b] This property is only used and visible in the editor if [member "
+"particles_animation] is [code]true[/code]."
+msgstr ""
+
+#: doc/classes/CanvasItemMaterial.xml:29
+msgid ""
+"The number of rows in the spritesheet assigned as [Texture2D] for a "
+"[GPUParticles2D] or [CPUParticles2D].\n"
+"[b]Note:[/b] This property is only used and visible in the editor if [member "
+"particles_animation] is [code]true[/code]."
+msgstr ""
+
+#: doc/classes/CanvasItemMaterial.xml:33
+msgid ""
+"If [code]true[/code], enable spritesheet-based animation features when "
+"assigned to [GPUParticles2D] and [CPUParticles2D] nodes. The [member "
+"ParticlesMaterial.anim_speed] or [member CPUParticles2D.anim_speed] should "
+"also be set to a positive value for the animation to play.\n"
+"This property (and other [code]particles_anim_*[/code] properties that "
+"depend on it) has no effect on other types of nodes."
+msgstr ""
+
+#: doc/classes/CanvasItemMaterial.xml:39
+msgid ""
+"Mix blending mode. Colors are assumed to be independent of the alpha "
+"(opacity) value."
+msgstr ""
+
+#: doc/classes/CanvasItemMaterial.xml:42
+msgid "Additive blending mode."
+msgstr ""
+
+#: doc/classes/CanvasItemMaterial.xml:45
+msgid "Subtractive blending mode."
+msgstr ""
+
+#: doc/classes/CanvasItemMaterial.xml:48
+msgid "Multiplicative blending mode."
+msgstr ""
+
+#: doc/classes/CanvasItemMaterial.xml:51
+msgid ""
+"Mix blending mode. Colors are assumed to be premultiplied by the alpha "
+"(opacity) value."
+msgstr ""
+
+#: doc/classes/CanvasItemMaterial.xml:54
+msgid ""
+"Render the material using both light and non-light sensitive material "
+"properties."
+msgstr ""
+
+#: doc/classes/CanvasItemMaterial.xml:57
+msgid "Render the material as if there were no light."
+msgstr ""
+
+#: doc/classes/CanvasItemMaterial.xml:60
+msgid "Render the material as if there were only light."
+msgstr ""
+
+#: doc/classes/CanvasLayer.xml:4
+msgid "Canvas drawing layer."
+msgstr ""
+
+#: doc/classes/CanvasLayer.xml:7
+msgid ""
+"Canvas drawing layer. [CanvasItem] nodes that are direct or indirect "
+"children of a [CanvasLayer] will be drawn in that layer. The layer is a "
+"numeric index that defines the draw order. The default 2D scene renders with "
+"index 0, so a [CanvasLayer] with index -1 will be drawn below, and one with "
+"index 1 will be drawn above. This is very useful for HUDs (in layer 1+ or "
+"above), or backgrounds (in layer -1 or below)."
+msgstr ""
+
+#: doc/classes/CanvasLayer.xml:11
+msgid "https://docs.godotengine.org/en/latest/tutorials/2d/canvas_layers.html"
+msgstr ""
+
+#: doc/classes/CanvasLayer.xml:18
+msgid "Returns the RID of the canvas used by this layer."
+msgstr ""
+
+#: doc/classes/CanvasLayer.xml:24
+msgid ""
+"The custom [Viewport] node assigned to the [CanvasLayer]. If [code]null[/"
+"code], uses the default viewport instead."
+msgstr ""
+
+#: doc/classes/CanvasLayer.xml:27
+msgid ""
+"Sets the layer to follow the viewport in order to simulate a pseudo 3D "
+"effect."
+msgstr ""
+
+#: doc/classes/CanvasLayer.xml:30
+msgid ""
+"Scales the layer when using [member follow_viewport_enable]. Layers moving "
+"into the foreground should have increasing scales, while layers moving into "
+"the background should have decreasing scales."
+msgstr ""
+
+#: doc/classes/CanvasLayer.xml:33
+msgid "Layer index for draw order. Lower values are drawn first."
+msgstr ""
+
+#: doc/classes/CanvasLayer.xml:36
+msgid "The layer's base offset."
+msgstr ""
+
+#: doc/classes/CanvasLayer.xml:39
+msgid "The layer's rotation in radians."
+msgstr ""
+
+#: doc/classes/CanvasLayer.xml:42
+msgid "The layer's rotation in degrees."
+msgstr ""
+
+#: doc/classes/CanvasLayer.xml:45
+msgid "The layer's scale."
+msgstr ""
+
+#: doc/classes/CanvasLayer.xml:48
+msgid "The layer's transform."
+msgstr ""
+
+#: doc/classes/CanvasModulate.xml:4
+msgid "Tint the entire canvas."
+msgstr ""
+
+#: doc/classes/CanvasModulate.xml:7
+msgid ""
+"[CanvasModulate] tints the canvas elements using its assigned [member color]."
+msgstr ""
+
+#: doc/classes/CanvasModulate.xml:15
+msgid "The tint color to apply."
+msgstr ""
+
+#: doc/classes/CapsuleMesh.xml:4 doc/classes/CapsuleMesh.xml:7
+msgid "Class representing a capsule-shaped [PrimitiveMesh]."
+msgstr ""
+
+#: doc/classes/CapsuleMesh.xml:15
+msgid "Height of the capsule mesh from the center point."
+msgstr ""
+
+#: doc/classes/CapsuleMesh.xml:18
+msgid "Number of radial segments on the capsule mesh."
+msgstr ""
+
+#: doc/classes/CapsuleMesh.xml:21
+msgid "Radius of the capsule mesh."
+msgstr ""
+
+#: doc/classes/CapsuleMesh.xml:24
+msgid "Number of rings along the height of the capsule."
+msgstr ""
+
+#: doc/classes/CapsuleShape2D.xml:4 doc/classes/CapsuleShape2D.xml:7
+msgid "Capsule shape for 2D collisions."
+msgstr ""
+
+#: doc/classes/CapsuleShape2D.xml:15 doc/classes/CapsuleShape3D.xml:15
+msgid "The capsule's height."
+msgstr ""
+
+#: doc/classes/CapsuleShape2D.xml:18 doc/classes/CapsuleShape3D.xml:18
+msgid "The capsule's radius."
+msgstr ""
+
+#: doc/classes/CapsuleShape3D.xml:4 doc/classes/CapsuleShape3D.xml:7
+msgid "Capsule shape for collisions."
+msgstr ""
+
+#: doc/classes/CenterContainer.xml:4
+msgid "Keeps children controls centered."
+msgstr ""
+
+#: doc/classes/CenterContainer.xml:7
+msgid ""
+"CenterContainer keeps children controls centered. This container keeps all "
+"children to their minimum size, in the center."
+msgstr ""
+
+#: doc/classes/CenterContainer.xml:15
+msgid ""
+"If [code]true[/code], centers children relative to the [CenterContainer]'s "
+"top left corner."
+msgstr ""
+
+#: doc/classes/CharFXTransform.xml:4
+msgid ""
+"Controls how an individual character will be displayed in a [RichTextEffect]."
+msgstr ""
+
+#: doc/classes/CharFXTransform.xml:7
+msgid ""
+"By setting various properties on this object, you can control how individual "
+"characters will be displayed in a [RichTextEffect]."
+msgstr ""
+
+#: doc/classes/CharFXTransform.xml:10 doc/classes/RichTextEffect.xml:16
+#: doc/classes/RichTextLabel.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/gui/bbcode_in_richtextlabel."
+"html"
+msgstr ""
+
+#: doc/classes/CharFXTransform.xml:11 doc/classes/RichTextEffect.xml:17
+msgid ""
+"https://github.com/Eoin-ONeill-Yokai/Godot-Rich-Text-Effect-Test-Project"
+msgstr ""
+
+#: doc/classes/CharFXTransform.xml:17 doc/classes/CharFXTransform.xml:45
+msgid ""
+"The index of the current character (starting from 0). Setting this property "
+"won't affect drawing."
+msgstr ""
+
+#: doc/classes/CharFXTransform.xml:20
+msgid ""
+"The Unicode codepoint the character will use. This only affects non-"
+"whitespace characters. [method @GDScript.ord] can be useful here. For "
+"example, the following will replace all characters with asterisks:\n"
+"[codeblock]\n"
+"# `char_fx` is the CharFXTransform parameter from `_process_custom_fx()`.\n"
+"# See the RichTextEffect documentation for details.\n"
+"char_fx.character = ord(\"*\")\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/CharFXTransform.xml:28
+msgid "The color the character will be drawn with."
+msgstr ""
+
+#: doc/classes/CharFXTransform.xml:31
+msgid ""
+"The time elapsed since the [RichTextLabel] was added to the scene tree (in "
+"seconds). Time stops when the project is paused, unless the "
+"[RichTextLabel]'s [member Node.pause_mode] is set to [constant Node."
+"PAUSE_MODE_PROCESS].\n"
+"[b]Note:[/b] Time still passes while the [RichTextLabel] is hidden."
+msgstr ""
+
+#: doc/classes/CharFXTransform.xml:35
+msgid ""
+"Contains the arguments passed in the opening BBCode tag. By default, "
+"arguments are strings; if their contents match a type such as [bool], [int] "
+"or [float], they will be converted automatically. Color codes in the form "
+"[code]#rrggbb[/code] or [code]#rgb[/code] will be converted to an opaque "
+"[Color]. String arguments may not contain spaces, even if they're quoted. If "
+"present, quotes will also be present in the final string.\n"
+"For example, the opening BBCode tag [code][example foo=hello bar=true baz=42 "
+"color=#ffffff][/code] will map to the following [Dictionary]:\n"
+"[codeblock]\n"
+"{\"foo\": \"hello\", \"bar\": true, \"baz\": 42, \"color\": Color(1, 1, 1, "
+"1)}\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/CharFXTransform.xml:42
+msgid "The position offset the character will be drawn with (in pixels)."
+msgstr ""
+
+#: doc/classes/CharFXTransform.xml:48
+msgid ""
+"If [code]true[/code], the character will be drawn. If [code]false[/code], "
+"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 [member color] to [code]Color(1, 1, 1, 0)[/code] instead."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:4
+msgid "Binary choice user interface widget. See also [CheckButton]."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:7
+msgid ""
+"A checkbox allows the user to make a binary choice (choosing only one of two "
+"possible options). It's similar to [CheckButton] in functionality, but it "
+"has a different appearance. To follow established UX patterns, it's "
+"recommended to use CheckBox when toggling it has [b]no[/b] immediate effect "
+"on something. For instance, it should be used when toggling it will only do "
+"something once a confirmation button is pressed."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:21
+msgid "The vertical offset used when rendering the check icons (in pixels)."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:24
+msgid "The check icon to display when the [CheckBox] is checked."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:27
+msgid ""
+"The [StyleBox] to display as a background when the [CheckBox] is disabled."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:30
+msgid ""
+"The [StyleBox] to display as a background when the [CheckBox] is focused."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:33
+msgid "The [Font] to use for the [CheckBox] text."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:36
+msgid "The [CheckBox] text's font color."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:39
+msgid "The [CheckBox] text's font color when it's disabled."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:42
+msgid "The [CheckBox] text's font color when it's hovered."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:45
+msgid "The [CheckBox] text's font color when it's hovered and pressed."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:48
+msgid "The [CheckBox] text's font color when it's pressed."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:51
+msgid ""
+"The [StyleBox] to display as a background when the [CheckBox] is hovered."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:54
+msgid ""
+"The [StyleBox] to display as a background when the [CheckBox] is hovered and "
+"pressed."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:57
+msgid "The separation between the check icon and the text (in pixels)."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:60 doc/classes/CheckButton.xml:57
+msgid "The [StyleBox] to display as a background."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:63
+msgid ""
+"The [StyleBox] to display as a background when the [CheckBox] is pressed."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:66
+msgid ""
+"If the [CheckBox] is configured as a radio button, the icon to display when "
+"the [CheckBox] is checked."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:69
+msgid ""
+"If the [CheckBox] is configured as a radio button, the icon to display when "
+"the [CheckBox] is unchecked."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:72
+msgid "The check icon to display when the [CheckBox] is unchecked."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:4
+msgid "Checkable button. See also [CheckBox]."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:7
+msgid ""
+"CheckButton is a toggle button displayed as a check field. It's similar to "
+"[CheckBox] in functionality, but it has a different appearance. To follow "
+"established UX patterns, it's recommended to use CheckButton when toggling "
+"it has an [b]immediate[/b] effect on something. For instance, it should be "
+"used if toggling it enables/disables a setting without requiring the user to "
+"press a confirmation button."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:21
+msgid "The vertical offset used when rendering the toggle icons (in pixels)."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:24
+msgid ""
+"The [StyleBox] to display as a background when the [CheckButton] is disabled."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:27
+msgid ""
+"The [StyleBox] to display as a background when the [CheckButton] is focused."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:30
+msgid "The [Font] to use for the [CheckButton] text."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:33
+msgid "The [CheckButton] text's font color."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:36
+msgid "The [CheckButton] text's font color when it's disabled."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:39
+msgid "The [CheckButton] text's font color when it's hovered."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:42
+msgid "The [CheckButton] text's font color when it's hovered and pressed."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:45
+msgid "The [CheckButton] text's font color when it's pressed."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:48
+msgid ""
+"The [StyleBox] to display as a background when the [CheckButton] is hovered."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:51
+msgid ""
+"The [StyleBox] to display as a background when the [CheckButton] is hovered "
+"and pressed."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:54
+msgid "The separation between the toggle icon and the text (in pixels)."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:60
+msgid "The icon to display when the [CheckButton] is unchecked."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:63
+msgid "The icon to display when the [CheckButton] is unchecked and disabled."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:66
+msgid "The icon to display when the [CheckButton] is checked."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:69
+msgid "The icon to display when the [CheckButton] is checked and disabled."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:72
+msgid ""
+"The [StyleBox] to display as a background when the [CheckButton] is pressed."
+msgstr ""
+
+#: doc/classes/CircleShape2D.xml:4
+msgid "Circular shape for 2D collisions."
+msgstr ""
+
+#: doc/classes/CircleShape2D.xml:7
+msgid ""
+"Circular shape for 2D collisions. This shape is useful for modeling balls or "
+"small characters and its collision detection with everything else is very "
+"fast."
+msgstr ""
+
+#: doc/classes/CircleShape2D.xml:15
+msgid "The circle's radius."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:4
+msgid "Class information repository."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:7
+msgid "Provides access to metadata stored for every available class."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:18
+msgid ""
+"Returns [code]true[/code] if you can instance objects from the specified "
+"[code]class[/code], [code]false[/code] in other case."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:27
+msgid "Returns whether the specified [code]class[/code] is available or not."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:36
+msgid ""
+"Returns a category associated with the class for use in documentation and "
+"the Asset Library. Debug mode required."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:47
+msgid ""
+"Returns the value of the integer constant [code]name[/code] of [code]class[/"
+"code] or its ancestry. Always returns 0 when the constant could not be found."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:58
+msgid ""
+"Returns an array with the names all the integer constants of [code]class[/"
+"code] or its ancestry."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:69
+msgid ""
+"Returns an array with all the methods of [code]class[/code] or its ancestry "
+"if [code]no_inheritance[/code] is [code]false[/code]. Every element of the "
+"array is a [Dictionary] with the following keys: [code]args[/code], "
+"[code]default_args[/code], [code]flags[/code], [code]id[/code], [code]name[/"
+"code], [code]return: (class_name, hint, hint_string, name, type, usage)[/"
+"code]."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:80
+msgid ""
+"Returns the value of [code]property[/code] of [code]class[/code] or its "
+"ancestry."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:91
+msgid ""
+"Returns an array with all the properties of [code]class[/code] or its "
+"ancestry if [code]no_inheritance[/code] is [code]false[/code]."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:102
+msgid ""
+"Returns the [code]signal[/code] data of [code]class[/code] or its ancestry. "
+"The returned value is a [Dictionary] with the following keys: [code]args[/"
+"code], [code]default_args[/code], [code]flags[/code], [code]id[/code], "
+"[code]name[/code], [code]return: (class_name, hint, hint_string, name, type, "
+"usage)[/code]."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:113
+msgid ""
+"Returns an array with all the signals of [code]class[/code] or its ancestry "
+"if [code]no_inheritance[/code] is [code]false[/code]. Every element of the "
+"array is a [Dictionary] as described in [method class_get_signal]."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:124
+msgid ""
+"Returns whether [code]class[/code] or its ancestry has an integer constant "
+"called [code]name[/code] or not."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:137
+msgid ""
+"Returns whether [code]class[/code] (or its ancestry if [code]no_inheritance[/"
+"code] is [code]false[/code]) has a method called [code]method[/code] or not."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:148
+msgid ""
+"Returns whether [code]class[/code] or its ancestry has a signal called "
+"[code]signal[/code] or not."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:161
+msgid ""
+"Sets [code]property[/code] value of [code]class[/code] to [code]value[/code]."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:168
+msgid "Returns the names of all the classes available."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:177
+msgid ""
+"Returns the names of all the classes that directly or indirectly inherit "
+"from [code]class[/code]."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:186
+msgid "Returns the parent class of [code]class[/code]."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:195
+msgid "Creates an instance of [code]class[/code]."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:204
+msgid "Returns whether this [code]class[/code] is enabled or not."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:215
+msgid ""
+"Returns whether [code]inherits[/code] is an ancestor of [code]class[/code] "
+"or not."
+msgstr ""
+
+#: doc/classes/ClippedCamera3D.xml:4
+msgid "A [Camera3D] that includes collision."
+msgstr ""
+
+#: doc/classes/ClippedCamera3D.xml:7
+msgid ""
+"This node extends [Camera3D] to add collisions with [Area3D] and/or "
+"[PhysicsBody3D] nodes. The camera cannot move through colliding objects."
+msgstr ""
+
+#: doc/classes/ClippedCamera3D.xml:18
+msgid ""
+"Adds a collision exception so the camera does not collide with the specified "
+"node."
+msgstr ""
+
+#: doc/classes/ClippedCamera3D.xml:27
+msgid ""
+"Adds a collision exception so the camera does not collide with the specified "
+"[RID]."
+msgstr ""
+
+#: doc/classes/ClippedCamera3D.xml:34
+msgid "Removes all collision exceptions."
+msgstr ""
+
+#: doc/classes/ClippedCamera3D.xml:41
+msgid "Returns the distance the camera has been offset due to a collision."
+msgstr ""
+
+#: doc/classes/ClippedCamera3D.xml:50
+msgid ""
+"Returns [code]true[/code] if the specified bit index is on.\n"
+"[b]Note:[/b] Bit indices range from 0-19."
+msgstr ""
+
+#: doc/classes/ClippedCamera3D.xml:60
+msgid "Removes a collision exception with the specified node."
+msgstr ""
+
+#: doc/classes/ClippedCamera3D.xml:69
+msgid "Removes a collision exception with the specified [RID]."
+msgstr ""
+
+#: doc/classes/ClippedCamera3D.xml:80
+msgid ""
+"Sets the specified bit index to the [code]value[/code].\n"
+"[b]Note:[/b] Bit indices range from 0-19."
+msgstr ""
+
+#: doc/classes/ClippedCamera3D.xml:87
+msgid "If [code]true[/code], the camera stops on contact with [Area3D]s."
+msgstr ""
+
+#: doc/classes/ClippedCamera3D.xml:90
+msgid ""
+"If [code]true[/code], the camera stops on contact with [PhysicsBody3D]s."
+msgstr ""
+
+#: doc/classes/ClippedCamera3D.xml:93
+msgid ""
+"The camera's collision mask. Only objects in at least one collision layer "
+"matching the mask will be detected."
+msgstr ""
+
+#: doc/classes/ClippedCamera3D.xml:96
+msgid ""
+"The camera's collision margin. The camera can't get closer than this "
+"distance to a colliding object."
+msgstr ""
+
+#: doc/classes/ClippedCamera3D.xml:99
+msgid "The camera's process callback. See [enum ProcessMode]."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:4
+msgid "Base node for 2D collision objects."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:7
+msgid ""
+"CollisionObject2D is the base class for 2D physics objects. It can hold any "
+"number of 2D collision [Shape2D]s. Each shape must be assigned to a [i]shape "
+"owner[/i]. The CollisionObject2D can have any number of shape owners. Shape "
+"owners are not nodes and do not appear in the editor, but are accessible "
+"through code using the [code]shape_owner_*[/code] methods."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:22
+msgid ""
+"Accepts unhandled [InputEvent]s. Requires [member input_pickable] to be "
+"[code]true[/code]. [code]shape_idx[/code] is the child index of the clicked "
+"[Shape2D]. Connect to the [code]input_event[/code] signal to easily pick up "
+"these events."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:31 doc/classes/CollisionObject3D.xml:35
+msgid ""
+"Creates a new shape owner for the given object. Returns [code]owner_id[/"
+"code] of the new owner for future reference."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:38 doc/classes/CollisionObject3D.xml:42
+msgid "Returns the object's [RID]."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:47
+msgid ""
+"Returns the [code]one_way_collision_margin[/code] of the shape owner "
+"identified by given [code]owner_id[/code]."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:54 doc/classes/CollisionObject3D.xml:49
+msgid ""
+"Returns an [Array] of [code]owner_id[/code] identifiers. You can use these "
+"ids in other methods that take [code]owner_id[/code] as an argument."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:63 doc/classes/CollisionObject3D.xml:58
+msgid "If [code]true[/code], the shape owner and its shapes are disabled."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:72
+msgid ""
+"Returns [code]true[/code] if collisions for the shape owner originating from "
+"this [CollisionObject2D] will not be reported to collided with "
+"[CollisionObject2D]s."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:81 doc/classes/CollisionObject3D.xml:67
+msgid "Removes the given shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:90 doc/classes/CollisionObject3D.xml:76
+msgid "Returns the [code]owner_id[/code] of the given shape."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:101
+msgid "Adds a [Shape2D] to the shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:110 doc/classes/CollisionObject3D.xml:96
+msgid "Removes all shapes from the shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:119 doc/classes/CollisionObject3D.xml:105
+msgid "Returns the parent object of the given shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:130
+msgid "Returns the [Shape2D] with the given id from the given shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:139 doc/classes/CollisionObject3D.xml:125
+msgid "Returns the number of shapes the given shape owner contains."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:150
+msgid ""
+"Returns the child index of the [Shape2D] with the given id from the given "
+"shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:159
+msgid "Returns the shape owner's [Transform2D]."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:170 doc/classes/CollisionObject3D.xml:156
+msgid "Removes a shape from the given shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:181 doc/classes/CollisionObject3D.xml:167
+msgid "If [code]true[/code], disables the given shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:192
+msgid ""
+"If [code]enable[/code] is [code]true[/code], collisions for the shape owner "
+"originating from this [CollisionObject2D] will not be reported to collided "
+"with [CollisionObject2D]s."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:203
+msgid ""
+"Sets the [code]one_way_collision_margin[/code] of the shape owner identified "
+"by given [code]owner_id[/code] to [code]margin[/code] pixels."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:214
+msgid "Sets the [Transform2D] of the given shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:220
+msgid ""
+"If [code]true[/code], this object is pickable. A pickable object can detect "
+"the mouse pointer entering/leaving, and if the mouse is inside it, report "
+"input events. Requires at least one [code]collision_layer[/code] bit to be "
+"set."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:232
+msgid ""
+"Emitted when an input event occurs. Requires [member input_pickable] to be "
+"[code]true[/code] and at least one [code]collision_layer[/code] bit to be "
+"set. See [method _input_event] for details."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:237
+msgid ""
+"Emitted when the mouse pointer enters any of this object's shapes. Requires "
+"[member input_pickable] to be [code]true[/code] and at least one "
+"[code]collision_layer[/code] bit to be set."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:242
+msgid ""
+"Emitted when the mouse pointer exits all this object's shapes. Requires "
+"[member input_pickable] to be [code]true[/code] and at least one "
+"[code]collision_layer[/code] bit to be set."
+msgstr ""
+
+#: doc/classes/CollisionObject3D.xml:4
+msgid "Base node for collision objects."
+msgstr ""
+
+#: doc/classes/CollisionObject3D.xml:7
+msgid ""
+"CollisionObject3D is the base class for physics objects. It can hold any "
+"number of collision [Shape3D]s. Each shape must be assigned to a [i]shape "
+"owner[/i]. The CollisionObject3D can have any number of shape owners. Shape "
+"owners are not nodes and do not appear in the editor, but are accessible "
+"through code using the [code]shape_owner_*[/code] methods."
+msgstr ""
+
+#: doc/classes/CollisionObject3D.xml:26
+msgid ""
+"Accepts unhandled [InputEvent]s. [code]click_position[/code] is the clicked "
+"location in world space and [code]click_normal[/code] is the normal vector "
+"extending from the clicked surface of the [Shape3D] at [code]shape_idx[/"
+"code]. Connect to the [code]input_event[/code] signal to easily pick up "
+"these events."
+msgstr ""
+
+#: doc/classes/CollisionObject3D.xml:87
+msgid "Adds a [Shape3D] to the shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject3D.xml:116
+msgid "Returns the [Shape3D] with the given id from the given shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject3D.xml:136
+msgid ""
+"Returns the child index of the [Shape3D] with the given id from the given "
+"shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject3D.xml:145
+msgid "Returns the shape owner's [Transform]."
+msgstr ""
+
+#: doc/classes/CollisionObject3D.xml:178
+msgid "Sets the [Transform] of the given shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject3D.xml:184
+msgid ""
+"If [code]true[/code], the [CollisionObject3D] will continue to receive input "
+"events as the mouse is dragged across its shapes."
+msgstr ""
+
+#: doc/classes/CollisionObject3D.xml:187
+msgid ""
+"If [code]true[/code], the [CollisionObject3D]'s shapes will respond to "
+"[RayCast3D]s."
+msgstr ""
+
+#: doc/classes/CollisionObject3D.xml:203
+msgid ""
+"Emitted when [method _input_event] receives an event. See its description "
+"for details."
+msgstr ""
+
+#: doc/classes/CollisionObject3D.xml:208
+msgid "Emitted when the mouse pointer enters any of this object's shapes."
+msgstr ""
+
+#: doc/classes/CollisionObject3D.xml:213
+msgid "Emitted when the mouse pointer exits all this object's shapes."
+msgstr ""
+
+#: doc/classes/CollisionPolygon2D.xml:4
+msgid "Defines a 2D collision polygon."
+msgstr ""
+
+#: doc/classes/CollisionPolygon2D.xml:7
+msgid ""
+"Provides a 2D collision polygon to a [CollisionObject2D] parent. Polygons "
+"can be drawn in the editor or specified by a list of vertices."
+msgstr ""
+
+#: doc/classes/CollisionPolygon2D.xml:15
+msgid "Collision build mode. Use one of the [enum BuildMode] constants."
+msgstr ""
+
+#: doc/classes/CollisionPolygon2D.xml:18
+msgid "If [code]true[/code], no collisions will be detected."
+msgstr ""
+
+#: doc/classes/CollisionPolygon2D.xml:21
+msgid ""
+"If [code]true[/code], only edges that face up, relative to "
+"[CollisionPolygon2D]'s rotation, will collide with other objects."
+msgstr ""
+
+#: doc/classes/CollisionPolygon2D.xml:24
+msgid ""
+"The margin used for one-way collision (in pixels). Higher values will make "
+"the shape thicker, and work better for colliders that enter the polygon at a "
+"high velocity."
+msgstr ""
+
+#: doc/classes/CollisionPolygon2D.xml:27
+msgid ""
+"The polygon's list of vertices. The final point will be connected to the "
+"first. The returned value is a clone of the [PackedVector2Array], not a "
+"reference."
+msgstr ""
+
+#: doc/classes/CollisionPolygon2D.xml:32
+msgid "Collisions will include the polygon and its contained area."
+msgstr ""
+
+#: doc/classes/CollisionPolygon2D.xml:35
+msgid "Collisions will only include the polygon edges."
+msgstr ""
+
+#: doc/classes/CollisionPolygon3D.xml:4
+msgid "Editor-only class for defining a collision polygon in 3D space."
+msgstr ""
+
+#: doc/classes/CollisionPolygon3D.xml:7
+msgid ""
+"Allows editing a collision polygon's vertices on a selected plane. Can also "
+"set a depth perpendicular to that plane. This class is only available in the "
+"editor. It will not appear in the scene tree at run-time. Creates a "
+"[Shape3D] for gameplay. Properties modified during gameplay will have no "
+"effect."
+msgstr ""
+
+#: doc/classes/CollisionPolygon3D.xml:15
+msgid ""
+"Length that the resulting collision extends in either direction "
+"perpendicular to its polygon."
+msgstr ""
+
+#: doc/classes/CollisionPolygon3D.xml:18
+msgid "If [code]true[/code], no collision will be produced."
+msgstr ""
+
+#: doc/classes/CollisionPolygon3D.xml:21
+msgid ""
+"Array of vertices which define the polygon.\n"
+"[b]Note:[/b] The returned value is a copy of the original. Methods which "
+"mutate the size or properties of the return value will not impact the "
+"original polygon. To change properties of the polygon, assign it to a "
+"temporary variable and make changes before reassigning the [code]polygon[/"
+"code] member."
+msgstr ""
+
+#: doc/classes/CollisionShape2D.xml:4
+msgid "Node that represents collision shape data in 2D space."
+msgstr ""
+
+#: doc/classes/CollisionShape2D.xml:7
+msgid ""
+"Editor facility for creating and editing collision shapes in 2D space. You "
+"can use this node to represent all sorts of collision shapes, for example, "
+"add this to an [Area2D] to give it a detection shape, or add it to a "
+"[PhysicsBody2D] to create a solid object. [b]IMPORTANT[/b]: this is an "
+"Editor-only helper to create shapes, use [method CollisionObject2D."
+"shape_owner_get_shape] to get the actual shape."
+msgstr ""
+
+#: doc/classes/CollisionShape2D.xml:10 doc/classes/CollisionShape3D.xml:10
+#: doc/classes/PhysicsBody2D.xml:10 doc/classes/PhysicsBody3D.xml:10
+#: doc/classes/RigidBody3D.xml:13 doc/classes/Shape2D.xml:10
+#: doc/classes/Shape3D.xml:10
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/physics/"
+"physics_introduction.html"
+msgstr ""
+
+#: doc/classes/CollisionShape2D.xml:16 doc/classes/CollisionShape3D.xml:32
+msgid "A disabled collision shape has no effect in the world."
+msgstr ""
+
+#: doc/classes/CollisionShape2D.xml:19
+msgid ""
+"Sets whether this collision shape should only detect collision on one side "
+"(top or bottom)."
+msgstr ""
+
+#: doc/classes/CollisionShape2D.xml:22
+msgid ""
+"The margin used for one-way collision (in pixels). Higher values will make "
+"the shape thicker, and work better for colliders that enter the shape at a "
+"high velocity."
+msgstr ""
+
+#: doc/classes/CollisionShape2D.xml:25 doc/classes/CollisionShape3D.xml:35
+msgid "The actual shape owned by this collision shape."
+msgstr ""
+
+#: doc/classes/CollisionShape3D.xml:4
+msgid "Node that represents collision shape data in 3D space."
+msgstr ""
+
+#: doc/classes/CollisionShape3D.xml:7
+msgid ""
+"Editor facility for creating and editing collision shapes in 3D space. You "
+"can use this node to represent all sorts of collision shapes, for example, "
+"add this to an [Area3D] to give it a detection shape, or add it to a "
+"[PhysicsBody3D] to create a solid object. [b]IMPORTANT[/b]: this is an "
+"Editor-only helper to create shapes, use [method CollisionObject3D."
+"shape_owner_get_shape] to get the actual shape."
+msgstr ""
+
+#: doc/classes/CollisionShape3D.xml:17
+msgid ""
+"Sets the collision shape's shape to the addition of all its convexed "
+"[MeshInstance3D] siblings geometry."
+msgstr ""
+
+#: doc/classes/CollisionShape3D.xml:26
+msgid ""
+"If this method exists within a script it will be called whenever the shape "
+"resource has been modified."
+msgstr ""
+
+#: doc/classes/Color.xml:4
+msgid "Color in RGBA format using floats on the range of 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:7
+msgid ""
+"A color represented by red, green, blue, and alpha (RGBA) components. The "
+"alpha component is often used for transparency. Values are in floating-point "
+"and usually range from 0 to 1. Some properties (such as CanvasItem.modulate) "
+"may accept values greater than 1 (overbright or HDR colors).\n"
+"You can also create a color from standardized color names by using [method "
+"@GDScript.ColorN] or directly using the color constants defined here. The "
+"standardized color set is based on the [url=https://en.wikipedia.org/wiki/"
+"X11_color_names]X11 color names[/url].\n"
+"If you want to supply values in a range of 0 to 255, you should use [method "
+"@GDScript.Color8].\n"
+"[b]Note:[/b] In a boolean context, a Color will evaluate to [code]false[/"
+"code] if it's equal to [code]Color(0, 0, 0, 1)[/code] (opaque black). "
+"Otherwise, a Color will always evaluate to [code]true[/code]."
+msgstr ""
+
+#: doc/classes/Color.xml:21
+msgid ""
+"Constructs a color from an HTML hexadecimal color string in ARGB or RGB "
+"format. See also [method @GDScript.ColorN].\n"
+"[codeblock]\n"
+"# Each of the following creates the same color RGBA(178, 217, 10, 255).\n"
+"var c1 = Color(\"#ffb2d90a\") # ARGB format with \"#\".\n"
+"var c2 = Color(\"ffb2d90a\") # ARGB format.\n"
+"var c3 = Color(\"#b2d90a\") # RGB format with \"#\".\n"
+"var c4 = Color(\"b2d90a\") # RGB format.\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:37
+msgid ""
+"Constructs a color from a 32-bit integer (each byte represents a component "
+"of the RGBA profile).\n"
+"[codeblock]\n"
+"var c = Color(274) # Equivalent to RGBA(0, 0, 1, 18)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:51
+msgid ""
+"Constructs a color from an existing color, but with a custom alpha value.\n"
+"[codeblock]\n"
+"var red = Color(Color.red, 0.5) # 50% transparent red.\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:67
+msgid ""
+"Constructs a color from an RGB profile using values between 0 and 1. Alpha "
+"will always be 1.\n"
+"[codeblock]\n"
+"var c = Color(0.2, 1.0, 0.7) # Equivalent to RGBA(51, 255, 178, 255)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:85
+msgid ""
+"Constructs a color from an RGBA profile using values between 0 and 1.\n"
+"[codeblock]\n"
+"var c = Color(0.2, 1.0, 0.7, 0.8) # Equivalent to RGBA(51, 255, 178, 204)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:97
+msgid ""
+"Returns a new color resulting from blending this color over another. If the "
+"color is opaque, the result is also opaque. The second color may have a "
+"range of alpha values.\n"
+"[codeblock]\n"
+"var bg = Color(0.0, 1.0, 0.0, 0.5) # Green with alpha of 50%\n"
+"var fg = Color(1.0, 0.0, 0.0, 0.5) # Red with alpha of 50%\n"
+"var blended_color = bg.blend(fg) # Brown with alpha of 75%\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:109
+msgid ""
+"Returns the most contrasting color.\n"
+"[codeblock]\n"
+"var c = Color(0.3, 0.4, 0.9)\n"
+"var contrasted_color = c.contrasted() # Equivalent to RGBA(204, 229, 102, "
+"255)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:122
+msgid ""
+"Returns a new color resulting from making this color darker by the specified "
+"percentage (ratio from 0 to 1).\n"
+"[codeblock]\n"
+"var green = Color(0.0, 1.0, 0.0)\n"
+"var darkgreen = green.darkened(0.2) # 20% darker than regular green\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:141
+msgid ""
+"Constructs a color from an HSV profile. [code]h[/code], [code]s[/code], and "
+"[code]v[/code] are values between 0 and 1.\n"
+"[codeblock]\n"
+"var c = Color.from_hsv(0.58, 0.5, 0.79, 0.8) # Equivalent to HSV(210, 50, "
+"79, 0.8) or Color8(100, 151, 201, 0.8)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:151
+msgid ""
+"Returns the inverted color [code](1 - r, 1 - g, 1 - b, a)[/code].\n"
+"[codeblock]\n"
+"var c = Color(0.3, 0.4, 0.9)\n"
+"var inverted_color = c.inverted() # A color of an RGBA(178, 153, 26, 255)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:164
+msgid ""
+"Returns [code]true[/code] if this color and [code]color[/code] are "
+"approximately equal, by running [method @GDScript.is_equal_approx] on each "
+"component."
+msgstr ""
+
+#: doc/classes/Color.xml:175
+msgid ""
+"Returns the linear interpolation with another color. The interpolation "
+"factor [code]t[/code] is between 0 and 1.\n"
+"[codeblock]\n"
+"var c1 = Color(1.0, 0.0, 0.0)\n"
+"var c2 = Color(0.0, 1.0, 0.0)\n"
+"var li_c = c1.lerp(c2, 0.5) # A color of an RGBA(128, 128, 0, 255)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:189
+msgid ""
+"Returns a new color resulting from making this color lighter by the "
+"specified percentage (ratio from 0 to 1).\n"
+"[codeblock]\n"
+"var green = Color(0.0, 1.0, 0.0)\n"
+"var lightgreen = green.lightened(0.2) # 20% lighter than regular green\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:200
+msgid ""
+"Returns the color's 32-bit integer in ABGR format (each byte represents a "
+"component of the ABGR profile). ABGR is the reversed version of the default "
+"format.\n"
+"[codeblock]\n"
+"var c = Color(1, 0.5, 0.2)\n"
+"print(c.to_abgr32()) # Prints 4281565439\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:211
+msgid ""
+"Returns the color's 64-bit integer in ABGR format (each word represents a "
+"component of the ABGR profile). ABGR is the reversed version of the default "
+"format.\n"
+"[codeblock]\n"
+"var c = Color(1, 0.5, 0.2)\n"
+"print(c.to_abgr64()) # Prints -225178692812801\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:222
+msgid ""
+"Returns the color's 32-bit integer in ARGB format (each byte represents a "
+"component of the ARGB profile). ARGB is more compatible with DirectX.\n"
+"[codeblock]\n"
+"var c = Color(1, 0.5, 0.2)\n"
+"print(c.to_argb32()) # Prints 4294934323\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:233
+msgid ""
+"Returns the color's 64-bit integer in ARGB format (each word represents a "
+"component of the ARGB profile). ARGB is more compatible with DirectX.\n"
+"[codeblock]\n"
+"var c = Color(1, 0.5, 0.2)\n"
+"print(c.to_argb64()) # Prints -2147470541\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:246
+msgid ""
+"Returns the color's HTML hexadecimal color string in ARGB format (ex: "
+"[code]ff34f822[/code]).\n"
+"Setting [code]with_alpha[/code] to [code]false[/code] excludes alpha from "
+"the hexadecimal string.\n"
+"[codeblock]\n"
+"var c = Color(1, 1, 1, 0.5)\n"
+"var s1 = c.to_html() # Returns \"7fffffff\"\n"
+"var s2 = c.to_html(false) # Returns \"ffffff\"\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:259
+msgid ""
+"Returns the color's 32-bit integer in RGBA format (each byte represents a "
+"component of the RGBA profile). RGBA is Godot's default format.\n"
+"[codeblock]\n"
+"var c = Color(1, 0.5, 0.2)\n"
+"print(c.to_rgba32()) # Prints 4286526463\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:270
+msgid ""
+"Returns the color's 64-bit integer in RGBA format (each word represents a "
+"component of the RGBA profile). RGBA is Godot's default format.\n"
+"[codeblock]\n"
+"var c = Color(1, 0.5, 0.2)\n"
+"print(c.to_rgba64()) # Prints -140736629309441\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:280
+msgid ""
+"The color's alpha (transparency) component, typically on the range of 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:283
+msgid "Wrapper for [member a] that uses the range 0 to 255 instead of 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:286
+msgid "The color's blue component, typically on the range of 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:289
+msgid "Wrapper for [member b] that uses the range 0 to 255 instead of 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:292
+msgid "The color's green component, typically on the range of 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:295
+msgid "Wrapper for [member g] that uses the range 0 to 255 instead of 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:298
+msgid "The HSV hue of this color, on the range 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:301
+msgid "The color's red component, typically on the range of 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:304
+msgid "Wrapper for [member r] that uses the range 0 to 255 instead of 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:307
+msgid "The HSV saturation of this color, on the range 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:310
+msgid "The HSV value (brightness) of this color, on the range 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:315
+msgid "Alice blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:318
+msgid "Antique white color."
+msgstr ""
+
+#: doc/classes/Color.xml:321
+msgid "Aqua color."
+msgstr ""
+
+#: doc/classes/Color.xml:324
+msgid "Aquamarine color."
+msgstr ""
+
+#: doc/classes/Color.xml:327
+msgid "Azure color."
+msgstr ""
+
+#: doc/classes/Color.xml:330
+msgid "Beige color."
+msgstr ""
+
+#: doc/classes/Color.xml:333
+msgid "Bisque color."
+msgstr ""
+
+#: doc/classes/Color.xml:336
+msgid "Black color."
+msgstr ""
+
+#: doc/classes/Color.xml:339
+msgid "Blanche almond color."
+msgstr ""
+
+#: doc/classes/Color.xml:342
+msgid "Blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:345
+msgid "Blue violet color."
+msgstr ""
+
+#: doc/classes/Color.xml:348
+msgid "Brown color."
+msgstr ""
+
+#: doc/classes/Color.xml:351
+msgid "Burly wood color."
+msgstr ""
+
+#: doc/classes/Color.xml:354
+msgid "Cadet blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:357
+msgid "Chartreuse color."
+msgstr ""
+
+#: doc/classes/Color.xml:360
+msgid "Chocolate color."
+msgstr ""
+
+#: doc/classes/Color.xml:363
+msgid "Coral color."
+msgstr ""
+
+#: doc/classes/Color.xml:366
+msgid "Cornflower color."
+msgstr ""
+
+#: doc/classes/Color.xml:369
+msgid "Corn silk color."
+msgstr ""
+
+#: doc/classes/Color.xml:372
+msgid "Crimson color."
+msgstr ""
+
+#: doc/classes/Color.xml:375
+msgid "Cyan color."
+msgstr ""
+
+#: doc/classes/Color.xml:378
+msgid "Dark blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:381
+msgid "Dark cyan color."
+msgstr ""
+
+#: doc/classes/Color.xml:384
+msgid "Dark goldenrod color."
+msgstr ""
+
+#: doc/classes/Color.xml:387
+msgid "Dark gray color."
+msgstr ""
+
+#: doc/classes/Color.xml:390
+msgid "Dark green color."
+msgstr ""
+
+#: doc/classes/Color.xml:393
+msgid "Dark khaki color."
+msgstr ""
+
+#: doc/classes/Color.xml:396
+msgid "Dark magenta color."
+msgstr ""
+
+#: doc/classes/Color.xml:399
+msgid "Dark olive green color."
+msgstr ""
+
+#: doc/classes/Color.xml:402
+msgid "Dark orange color."
+msgstr ""
+
+#: doc/classes/Color.xml:405
+msgid "Dark orchid color."
+msgstr ""
+
+#: doc/classes/Color.xml:408
+msgid "Dark red color."
+msgstr ""
+
+#: doc/classes/Color.xml:411
+msgid "Dark salmon color."
+msgstr ""
+
+#: doc/classes/Color.xml:414
+msgid "Dark sea green color."
+msgstr ""
+
+#: doc/classes/Color.xml:417
+msgid "Dark slate blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:420
+msgid "Dark slate gray color."
+msgstr ""
+
+#: doc/classes/Color.xml:423
+msgid "Dark turquoise color."
+msgstr ""
+
+#: doc/classes/Color.xml:426
+msgid "Dark violet color."
+msgstr ""
+
+#: doc/classes/Color.xml:429
+msgid "Deep pink color."
+msgstr ""
+
+#: doc/classes/Color.xml:432
+msgid "Deep sky blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:435
+msgid "Dim gray color."
+msgstr ""
+
+#: doc/classes/Color.xml:438
+msgid "Dodger blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:441
+msgid "Firebrick color."
+msgstr ""
+
+#: doc/classes/Color.xml:444
+msgid "Floral white color."
+msgstr ""
+
+#: doc/classes/Color.xml:447
+msgid "Forest green color."
+msgstr ""
+
+#: doc/classes/Color.xml:450
+msgid "Fuchsia color."
+msgstr ""
+
+#: doc/classes/Color.xml:453
+msgid "Gainsboro color."
+msgstr ""
+
+#: doc/classes/Color.xml:456
+msgid "Ghost white color."
+msgstr ""
+
+#: doc/classes/Color.xml:459
+msgid "Gold color."
+msgstr ""
+
+#: doc/classes/Color.xml:462
+msgid "Goldenrod color."
+msgstr ""
+
+#: doc/classes/Color.xml:465
+msgid "Gray color."
+msgstr ""
+
+#: doc/classes/Color.xml:468
+msgid "Green color."
+msgstr ""
+
+#: doc/classes/Color.xml:471
+msgid "Green yellow color."
+msgstr ""
+
+#: doc/classes/Color.xml:474
+msgid "Honeydew color."
+msgstr ""
+
+#: doc/classes/Color.xml:477
+msgid "Hot pink color."
+msgstr ""
+
+#: doc/classes/Color.xml:480
+msgid "Indian red color."
+msgstr ""
+
+#: doc/classes/Color.xml:483
+msgid "Indigo color."
+msgstr ""
+
+#: doc/classes/Color.xml:486
+msgid "Ivory color."
+msgstr ""
+
+#: doc/classes/Color.xml:489
+msgid "Khaki color."
+msgstr ""
+
+#: doc/classes/Color.xml:492
+msgid "Lavender color."
+msgstr ""
+
+#: doc/classes/Color.xml:495
+msgid "Lavender blush color."
+msgstr ""
+
+#: doc/classes/Color.xml:498
+msgid "Lawn green color."
+msgstr ""
+
+#: doc/classes/Color.xml:501
+msgid "Lemon chiffon color."
+msgstr ""
+
+#: doc/classes/Color.xml:504
+msgid "Light blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:507
+msgid "Light coral color."
+msgstr ""
+
+#: doc/classes/Color.xml:510
+msgid "Light cyan color."
+msgstr ""
+
+#: doc/classes/Color.xml:513
+msgid "Light goldenrod color."
+msgstr ""
+
+#: doc/classes/Color.xml:516
+msgid "Light gray color."
+msgstr ""
+
+#: doc/classes/Color.xml:519
+msgid "Light green color."
+msgstr ""
+
+#: doc/classes/Color.xml:522
+msgid "Light pink color."
+msgstr ""
+
+#: doc/classes/Color.xml:525
+msgid "Light salmon color."
+msgstr ""
+
+#: doc/classes/Color.xml:528
+msgid "Light sea green color."
+msgstr ""
+
+#: doc/classes/Color.xml:531
+msgid "Light sky blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:534
+msgid "Light slate gray color."
+msgstr ""
+
+#: doc/classes/Color.xml:537
+msgid "Light steel blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:540
+msgid "Light yellow color."
+msgstr ""
+
+#: doc/classes/Color.xml:543
+msgid "Lime color."
+msgstr ""
+
+#: doc/classes/Color.xml:546
+msgid "Lime green color."
+msgstr ""
+
+#: doc/classes/Color.xml:549
+msgid "Linen color."
+msgstr ""
+
+#: doc/classes/Color.xml:552
+msgid "Magenta color."
+msgstr ""
+
+#: doc/classes/Color.xml:555
+msgid "Maroon color."
+msgstr ""
+
+#: doc/classes/Color.xml:558
+msgid "Medium aquamarine color."
+msgstr ""
+
+#: doc/classes/Color.xml:561
+msgid "Medium blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:564
+msgid "Medium orchid color."
+msgstr ""
+
+#: doc/classes/Color.xml:567
+msgid "Medium purple color."
+msgstr ""
+
+#: doc/classes/Color.xml:570
+msgid "Medium sea green color."
+msgstr ""
+
+#: doc/classes/Color.xml:573
+msgid "Medium slate blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:576
+msgid "Medium spring green color."
+msgstr ""
+
+#: doc/classes/Color.xml:579
+msgid "Medium turquoise color."
+msgstr ""
+
+#: doc/classes/Color.xml:582
+msgid "Medium violet red color."
+msgstr ""
+
+#: doc/classes/Color.xml:585
+msgid "Midnight blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:588
+msgid "Mint cream color."
+msgstr ""
+
+#: doc/classes/Color.xml:591
+msgid "Misty rose color."
+msgstr ""
+
+#: doc/classes/Color.xml:594
+msgid "Moccasin color."
+msgstr ""
+
+#: doc/classes/Color.xml:597
+msgid "Navajo white color."
+msgstr ""
+
+#: doc/classes/Color.xml:600
+msgid "Navy blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:603
+msgid "Old lace color."
+msgstr ""
+
+#: doc/classes/Color.xml:606
+msgid "Olive color."
+msgstr ""
+
+#: doc/classes/Color.xml:609
+msgid "Olive drab color."
+msgstr ""
+
+#: doc/classes/Color.xml:612
+msgid "Orange color."
+msgstr ""
+
+#: doc/classes/Color.xml:615
+msgid "Orange red color."
+msgstr ""
+
+#: doc/classes/Color.xml:618
+msgid "Orchid color."
+msgstr ""
+
+#: doc/classes/Color.xml:621
+msgid "Pale goldenrod color."
+msgstr ""
+
+#: doc/classes/Color.xml:624
+msgid "Pale green color."
+msgstr ""
+
+#: doc/classes/Color.xml:627
+msgid "Pale turquoise color."
+msgstr ""
+
+#: doc/classes/Color.xml:630
+msgid "Pale violet red color."
+msgstr ""
+
+#: doc/classes/Color.xml:633
+msgid "Papaya whip color."
+msgstr ""
+
+#: doc/classes/Color.xml:636
+msgid "Peach puff color."
+msgstr ""
+
+#: doc/classes/Color.xml:639
+msgid "Peru color."
+msgstr ""
+
+#: doc/classes/Color.xml:642
+msgid "Pink color."
+msgstr ""
+
+#: doc/classes/Color.xml:645
+msgid "Plum color."
+msgstr ""
+
+#: doc/classes/Color.xml:648
+msgid "Powder blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:651
+msgid "Purple color."
+msgstr ""
+
+#: doc/classes/Color.xml:654
+msgid "Rebecca purple color."
+msgstr ""
+
+#: doc/classes/Color.xml:657
+msgid "Red color."
+msgstr ""
+
+#: doc/classes/Color.xml:660
+msgid "Rosy brown color."
+msgstr ""
+
+#: doc/classes/Color.xml:663
+msgid "Royal blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:666
+msgid "Saddle brown color."
+msgstr ""
+
+#: doc/classes/Color.xml:669
+msgid "Salmon color."
+msgstr ""
+
+#: doc/classes/Color.xml:672
+msgid "Sandy brown color."
+msgstr ""
+
+#: doc/classes/Color.xml:675
+msgid "Sea green color."
+msgstr ""
+
+#: doc/classes/Color.xml:678
+msgid "Seashell color."
+msgstr ""
+
+#: doc/classes/Color.xml:681
+msgid "Sienna color."
+msgstr ""
+
+#: doc/classes/Color.xml:684
+msgid "Silver color."
+msgstr ""
+
+#: doc/classes/Color.xml:687
+msgid "Sky blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:690
+msgid "Slate blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:693
+msgid "Slate gray color."
+msgstr ""
+
+#: doc/classes/Color.xml:696
+msgid "Snow color."
+msgstr ""
+
+#: doc/classes/Color.xml:699
+msgid "Spring green color."
+msgstr ""
+
+#: doc/classes/Color.xml:702
+msgid "Steel blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:705
+msgid "Tan color."
+msgstr ""
+
+#: doc/classes/Color.xml:708
+msgid "Teal color."
+msgstr ""
+
+#: doc/classes/Color.xml:711
+msgid "Thistle color."
+msgstr ""
+
+#: doc/classes/Color.xml:714
+msgid "Tomato color."
+msgstr ""
+
+#: doc/classes/Color.xml:717
+msgid "Transparent color (white with no alpha)."
+msgstr ""
+
+#: doc/classes/Color.xml:720
+msgid "Turquoise color."
+msgstr ""
+
+#: doc/classes/Color.xml:723
+msgid "Violet color."
+msgstr ""
+
+#: doc/classes/Color.xml:726
+msgid "Web gray color."
+msgstr ""
+
+#: doc/classes/Color.xml:729
+msgid "Web green color."
+msgstr ""
+
+#: doc/classes/Color.xml:732
+msgid "Web maroon color."
+msgstr ""
+
+#: doc/classes/Color.xml:735
+msgid "Web purple color."
+msgstr ""
+
+#: doc/classes/Color.xml:738
+msgid "Wheat color."
+msgstr ""
+
+#: doc/classes/Color.xml:741
+msgid "White color."
+msgstr ""
+
+#: doc/classes/Color.xml:744
+msgid "White smoke color."
+msgstr ""
+
+#: doc/classes/Color.xml:747
+msgid "Yellow color."
+msgstr ""
+
+#: doc/classes/Color.xml:750
+msgid "Yellow green color."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:4
+msgid "Color picker control."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:7
+msgid ""
+"Displays a color picker widget. Useful for selecting a color from an RGB/"
+"RGBA colorspace."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:18
+msgid ""
+"Adds the given color to a list of color presets. The presets are displayed "
+"in the color picker and the user will be able to select them.\n"
+"[b]Note:[/b] the presets list is only for [i]this[/i] color picker."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:28
+msgid ""
+"Removes the given color from the list of color presets of this color picker."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:35
+msgid "Returns the list of colors in the presets of the color picker."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:41 doc/classes/ColorPickerButton.xml:29
+msgid "The currently selected color."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:44
+msgid ""
+"If [code]true[/code], the color will apply only after the user releases the "
+"mouse button, otherwise it will apply immediately even in mouse motion event "
+"(which can cause performance issues)."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:47
+msgid "If [code]true[/code], shows an alpha channel slider (transparency)."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:50
+msgid ""
+"If [code]true[/code], allows editing the color with Hue/Saturation/Value "
+"sliders.\n"
+"[b]Note:[/b] Cannot be enabled if raw mode is on."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:54
+msgid "If [code]true[/code], the \"add preset\" button is enabled."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:57
+msgid "If [code]true[/code], saved color presets are visible."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:60
+msgid ""
+"If [code]true[/code], 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).\n"
+"[b]Note:[/b] Cannot be enabled if HSV mode is on."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:69
+msgid "Emitted when the color is changed."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:76
+msgid "Emitted when a preset is added."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:83
+msgid "Emitted when a preset is removed."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:91
+msgid "The icon for the \"Add Preset\" button."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:94
+msgid "Custom texture for the hue selection slider on the right."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:99
+msgid "The width of the hue selection slider."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:104
+msgid "The margin around the [ColorPicker]."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:107
+msgid ""
+"The indicator used to signalize that the color value is outside the 0-1 "
+"range."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:112
+msgid "The icon for the screen color picker button."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:115
+msgid "The height of the saturation-value selection box."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:118
+msgid "The width of the saturation-value selection box."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:4
+msgid "Button that pops out a [ColorPicker]."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:7
+msgid ""
+"Encapsulates a [ColorPicker] making it accessible by pressing a button. "
+"Pressing the button will toggle the [ColorPicker] visibility."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:16
+msgid "Returns the [ColorPicker] that this node toggles."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:23
+msgid ""
+"Returns the control's [PopupPanel] which allows you to connect to popup "
+"signals. This allows you to handle events when the ColorPicker is shown or "
+"hidden."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:32
+msgid ""
+"If [code]true[/code], the alpha channel in the displayed [ColorPicker] will "
+"be visible."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:41
+msgid "Emitted when the color changes."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:46
+msgid ""
+"Emitted when the [ColorPicker] is created (the button is pressed for the "
+"first time)."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:51
+msgid "Emitted when the [ColorPicker] is closed."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:59
+msgid "The background of the color preview rect on the button."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:62
+msgid "[StyleBox] used when the [ColorPickerButton] is disabled."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:65
+msgid ""
+"[StyleBox] used when the [ColorPickerButton] is focused. It is displayed "
+"over the current [StyleBox], so using [StyleBoxEmpty] will just disable the "
+"focus visual effect."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:68
+msgid "[Font] of the [ColorPickerButton]'s text."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:71
+msgid "Default text [Color] of the [ColorPickerButton]."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:74
+msgid "Text [Color] used when the [ColorPickerButton] is disabled."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:77
+msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:80
+msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:83
+msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:86
+msgid "The horizontal space between [ColorPickerButton]'s icon and text."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:89
+msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:92
+msgid "[StyleBox] used when the [ColorPickerButton] is being pressed."
+msgstr ""
+
+#: doc/classes/ColorRect.xml:4
+msgid "Colored rectangle."
+msgstr ""
+
+#: doc/classes/ColorRect.xml:7
+msgid "Displays a colored rectangle."
+msgstr ""
+
+#: doc/classes/ColorRect.xml:15
+msgid ""
+"The fill color.\n"
+"[codeblock]\n"
+"$ColorRect.color = Color(1, 0, 0, 1) # Set ColorRect's color to red.\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/ConcavePolygonShape2D.xml:4
+msgid "Concave polygon 2D shape resource for physics."
+msgstr ""
+
+#: doc/classes/ConcavePolygonShape2D.xml:7
+msgid ""
+"Concave polygon 2D shape resource for physics. It is made out of segments "
+"and is optimal for complex polygonal concave collisions. However, it is not "
+"advised to use for [RigidBody2D] nodes. A CollisionPolygon2D in convex "
+"decomposition mode (solids) or several convex objects are advised for that "
+"instead. Otherwise, a concave polygon 2D shape is better for static "
+"collisions.\n"
+"The main difference between a [ConvexPolygonShape2D] and a "
+"[ConcavePolygonShape2D] is that a concave polygon assumes it is concave and "
+"uses a more complex method of collision detection, and a convex one forces "
+"itself to be convex in order to speed up collision detection."
+msgstr ""
+
+#: doc/classes/ConcavePolygonShape2D.xml:16
+msgid ""
+"The array of points that make up the [ConcavePolygonShape2D]'s line segments."
+msgstr ""
+
+#: doc/classes/ConcavePolygonShape3D.xml:4
+msgid "Concave polygon shape."
+msgstr ""
+
+#: doc/classes/ConcavePolygonShape3D.xml:7
+msgid ""
+"Concave polygon shape resource, which can be set into a [PhysicsBody3D] or "
+"area. This shape is created by feeding a list of triangles.\n"
+"Note: when used for collision, [ConcavePolygonShape3D] is intended to work "
+"with static [PhysicsBody3D] nodes like [StaticBody3D] and will not work with "
+"[KinematicBody3D] or [RigidBody3D] with a mode other than Static."
+msgstr ""
+
+#: doc/classes/ConcavePolygonShape3D.xml:17
+msgid "Returns the faces (an array of triangles)."
+msgstr ""
+
+#: doc/classes/ConcavePolygonShape3D.xml:26
+msgid "Sets the faces (an array of triangles)."
+msgstr ""
+
+#: doc/classes/ConeTwistJoint3D.xml:4
+msgid "A twist joint between two 3D bodies."
+msgstr ""
+
+#: doc/classes/ConeTwistJoint3D.xml:7
+msgid ""
+"The joint can rotate the bodies across an axis defined by the local x-axes "
+"of the [Joint3D].\n"
+"The twist axis is initiated as the X axis of the [Joint3D].\n"
+"Once the Bodies swing, the twist axis is calculated as the middle of the x-"
+"axes of the Joint3D in the local space of the two Bodies."
+msgstr ""
+
+#: doc/classes/ConeTwistJoint3D.xml:35 doc/classes/ConeTwistJoint3D.xml:67
+#: doc/classes/PhysicsServer3D.xml:1400
+msgid ""
+"The speed with which the swing or twist will take place.\n"
+"The higher, the faster."
+msgstr ""
+
+#: doc/classes/ConeTwistJoint3D.xml:39 doc/classes/ConeTwistJoint3D.xml:74
+#: doc/classes/PhysicsServer3D.xml:1407
+msgid ""
+"Defines, how fast the swing- and twist-speed-difference on both sides gets "
+"synced."
+msgstr ""
+
+#: doc/classes/ConeTwistJoint3D.xml:42 doc/classes/ConeTwistJoint3D.xml:71
+msgid ""
+"The ease with which the joint starts to twist. If it's too low, it takes "
+"more force to start twisting the joint."
+msgstr ""
+
+#: doc/classes/ConeTwistJoint3D.xml:45 doc/classes/ConeTwistJoint3D.xml:57
+#: doc/classes/PhysicsServer3D.xml:1390
+msgid ""
+"Swing is rotation from side to side, around the axis perpendicular to the "
+"twist axis.\n"
+"The swing span defines, how much rotation will not get corrected along the "
+"swing axis.\n"
+"Could be defined as looseness in the [ConeTwistJoint3D].\n"
+"If below 0.05, this behavior is locked."
+msgstr ""
+
+#: doc/classes/ConeTwistJoint3D.xml:51 doc/classes/ConeTwistJoint3D.xml:63
+#: doc/classes/PhysicsServer3D.xml:1396
+msgid ""
+"Twist is the rotation around the twist axis, this value defined how far the "
+"joint can twist.\n"
+"Twist is locked if below 0.05."
+msgstr ""
+
+#: doc/classes/ConeTwistJoint3D.xml:77 doc/classes/Generic6DOFJoint3D.xml:416
+#: doc/classes/HingeJoint3D.xml:109 doc/classes/Light3D.xml:145
+#: doc/classes/SliderJoint3D.xml:170
+msgid "Represents the size of the [enum Param] enum."
+msgstr ""
+
+#: doc/classes/ConfigFile.xml:4
+msgid "Helper class to handle INI-style files."
+msgstr ""
+
+#: doc/classes/ConfigFile.xml:7
+msgid ""
+"This helper class can be used to store [Variant] values on the filesystem "
+"using INI-style formatting. The stored values are identified by a section "
+"and a key:\n"
+"[codeblock]\n"
+"[section]\n"
+"some_key=42\n"
+"string_example=\"Hello World3D!\"\n"
+"a_vector=Vector3( 1, 0, 2 )\n"
+"[/codeblock]\n"
+"The stored data can be saved to or parsed from a file, though ConfigFile "
+"objects can also be used directly without accessing the filesystem.\n"
+"The following example shows how to parse an INI-style file from the system, "
+"read its contents and store new values in it:\n"
+"[codeblock]\n"
+"var config = ConfigFile.new()\n"
+"var err = config.load(\"user://settings.cfg\")\n"
+"if err == OK: # If not, something went wrong with the file loading\n"
+" # Look for the display/width pair, and default to 1024 if missing\n"
+" var screen_width = config.get_value(\"display\", \"width\", 1024)\n"
+" # Store a variable if and only if it hasn't been defined yet\n"
+" if not config.has_section_key(\"audio\", \"mute\"):\n"
+" config.set_value(\"audio\", \"mute\", false)\n"
+" # Save the changes by overwriting the previous file\n"
+" config.save(\"user://settings.cfg\")\n"
+"[/codeblock]\n"
+"Keep in mind that section and property names can't contain spaces. Anything "
+"after a space will be ignored on save and on load.\n"
+"ConfigFiles can also contain manually written comment lines starting with a "
+"semicolon ([code];[/code]). Those lines will be ignored when parsing the "
+"file. Note that comments will be lost when saving the ConfigFile. This can "
+"still be useful for dedicated server configuration files, which are "
+"typically never overwritten without explicit user action."
+msgstr ""
+
+#: doc/classes/ConfigFile.xml:40
+msgid ""
+"Deletes the specified section along with all the key-value pairs inside. "
+"Raises an error if the section does not exist."
+msgstr ""
+
+#: doc/classes/ConfigFile.xml:51
+msgid ""
+"Deletes the specified key in a section. Raises an error if either the "
+"section or the key do not exist."
+msgstr ""
+
+#: doc/classes/ConfigFile.xml:60
+msgid ""
+"Returns an array of all defined key identifiers in the specified section. "
+"Raises an error and returns an empty array if the section does not exist."
+msgstr ""
+
+#: doc/classes/ConfigFile.xml:67
+msgid "Returns an array of all defined section identifiers."
+msgstr ""
+
+#: doc/classes/ConfigFile.xml:80
+msgid ""
+"Returns the current value for the specified section and key. If either the "
+"section or the key do not exist, the method returns the fallback "
+"[code]default[/code] value. If [code]default[/code] is not specified or set "
+"to [code]null[/code], an error is also raised."
+msgstr ""
+
+#: doc/classes/ConfigFile.xml:89
+msgid "Returns [code]true[/code] if the specified section exists."
+msgstr ""
+
+#: doc/classes/ConfigFile.xml:100
+msgid "Returns [code]true[/code] if the specified section-key pair exists."
+msgstr ""
+
+#: doc/classes/ConfigFile.xml:109
+msgid ""
+"Loads the config file specified as a parameter. The file's contents are "
+"parsed and loaded in the [ConfigFile] object which the method was called "
+"on.\n"
+"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
+msgstr ""
+
+#: doc/classes/ConfigFile.xml:121
+msgid ""
+"Loads the encrypted config file specified as a parameter, using the provided "
+"[code]key[/code] to decrypt it. The file's contents are parsed and loaded in "
+"the [ConfigFile] object which the method was called on.\n"
+"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
+msgstr ""
+
+#: doc/classes/ConfigFile.xml:133
+msgid ""
+"Loads the encrypted config file specified as a parameter, using the provided "
+"[code]password[/code] to decrypt it. The file's contents are parsed and "
+"loaded in the [ConfigFile] object which the method was called on.\n"
+"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
+msgstr ""
+
+#: doc/classes/ConfigFile.xml:143
+msgid ""
+"Parses the the passed string as the contents of a config file. The string is "
+"parsed and loaded in the ConfigFile object which the method was called on.\n"
+"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
+msgstr ""
+
+#: doc/classes/ConfigFile.xml:153
+msgid ""
+"Saves the contents of the [ConfigFile] object to the file specified as a "
+"parameter. The output file uses an INI-style structure.\n"
+"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
+msgstr ""
+
+#: doc/classes/ConfigFile.xml:165
+msgid ""
+"Saves the contents of the [ConfigFile] object to the AES-256 encrypted file "
+"specified as a parameter, using the provided [code]key[/code] to encrypt it. "
+"The output file uses an INI-style structure.\n"
+"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
+msgstr ""
+
+#: doc/classes/ConfigFile.xml:177
+msgid ""
+"Saves the contents of the [ConfigFile] object to the AES-256 encrypted file "
+"specified as a parameter, using the provided [code]password[/code] to "
+"encrypt it. The output file uses an INI-style structure.\n"
+"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
+msgstr ""
+
+#: doc/classes/ConfigFile.xml:191
+msgid ""
+"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 [code]null[/"
+"code] value deletes the specified key if it exists, and deletes the section "
+"if it ends up empty once the key has been removed."
+msgstr ""
+
+#: doc/classes/ConfirmationDialog.xml:4
+msgid "Dialog for confirmation of actions."
+msgstr ""
+
+#: doc/classes/ConfirmationDialog.xml:7
+msgid ""
+"Dialog for confirmation of actions. This dialog inherits from "
+"[AcceptDialog], but has by default an OK and Cancel button (in host OS "
+"order).\n"
+"To get cancel action, you can use:\n"
+"[codeblock]\n"
+"get_cancel().connect(\"pressed\", self, \"cancelled\")\n"
+"[/codeblock]."
+msgstr ""
+
+#: doc/classes/ConfirmationDialog.xml:20
+msgid "Returns the cancel button."
+msgstr ""
+
+#: doc/classes/Container.xml:4
+msgid "Base node for containers."
+msgstr ""
+
+#: doc/classes/Container.xml:7
+msgid ""
+"Base node for containers. A [Container] contains other controls and "
+"automatically arranges them in a certain way.\n"
+"A Control can inherit this to create custom container classes."
+msgstr ""
+
+#: doc/classes/Container.xml:21
+msgid ""
+"Fit a child control in a given rect. This is mainly a helper for creating "
+"custom container classes."
+msgstr ""
+
+#: doc/classes/Container.xml:28
+msgid ""
+"Queue resort of the contained children. This is called automatically anyway, "
+"but can be called upon request."
+msgstr ""
+
+#: doc/classes/Container.xml:38
+msgid "Emitted when sorting the children is needed."
+msgstr ""
+
+#: doc/classes/Container.xml:44
+msgid ""
+"Notification for when sorting the children, it must be obeyed immediately."
+msgstr ""
+
+#: doc/classes/Control.xml:4
+msgid ""
+"All user interface nodes inherit from Control. A control's anchors and "
+"margins adapt its position and size relative to its parent."
+msgstr ""
+
+#: doc/classes/Control.xml:7
+msgid ""
+"Base class for all UI-related nodes. [Control] features a bounding rectangle "
+"that defines its extents, an anchor position relative to its parent control "
+"or the current viewport, and margins that represent an offset to the anchor. "
+"The margins update automatically when the node, any of its parents, or the "
+"screen size change.\n"
+"For more information on Godot's UI system, anchors, margins, and containers, "
+"see the related tutorials in the manual. To build flexible UIs, you'll need "
+"a mix of UI elements that inherit from [Control] and [Container] nodes.\n"
+"[b]User Interface nodes and input[/b]\n"
+"Godot sends input events to the scene's root node first, by calling [method "
+"Node._input]. [method Node._input] forwards the event down the node tree to "
+"the nodes under the mouse cursor, or on keyboard focus. To do so, it calls "
+"[code]MainLoop._input_event[/code].\n"
+"[b]FIXME:[/b] No longer valid after DisplayServer split and Input "
+"refactoring.\n"
+"Call [method accept_event] so no other node receives the event. Once you "
+"accepted an input, it becomes handled so [method Node._unhandled_input] will "
+"not process it.\n"
+"Only one [Control] node can be in keyboard focus. Only the node in focus "
+"will receive keyboard events. To get the focus, call [method grab_focus]. "
+"[Control] nodes lose focus when another node grabs it, or if you hide the "
+"node in focus.\n"
+"Sets [member mouse_filter] to [constant MOUSE_FILTER_IGNORE] to tell a "
+"[Control] node to ignore mouse or touch events. You'll need it if you place "
+"an icon on top of a button.\n"
+"[Theme] resources change the Control's appearance. If you change the [Theme] "
+"on a [Control] node, it affects all of its children. To override some of the "
+"theme's parameters, call one of the [code]add_theme_*_override[/code] "
+"methods, like [method add_theme_font_override]. You can override the theme "
+"with the inspector."
+msgstr ""
+
+#: doc/classes/Control.xml:18
+msgid "https://docs.godotengine.org/en/latest/tutorials/gui/index.html"
+msgstr ""
+
+#: doc/classes/Control.xml:26
+msgid ""
+"Virtual method to be implemented by the user. Returns whether [method "
+"_gui_input] should not be called for children controls outside this "
+"control's rectangle. Input will be clipped to the Rect of this [Control]. "
+"Similar to [member rect_clip_content], but doesn't affect visibility.\n"
+"If not overridden, defaults to [code]false[/code]."
+msgstr ""
+
+#: doc/classes/Control.xml:34
+msgid ""
+"Virtual method to be implemented by the user. Returns the minimum size for "
+"this control. Alternative to [member rect_min_size] for controlling minimum "
+"size via code. The actual minimum size will be the max value of these two "
+"(in each axis separately).\n"
+"If not overridden, defaults to [constant Vector2.ZERO]."
+msgstr ""
+
+#: doc/classes/Control.xml:44
+msgid ""
+"Virtual method to be implemented by the user. Use this method to process and "
+"accept inputs on UI elements. See [method accept_event].\n"
+"Example: clicking a control.\n"
+"[codeblock]\n"
+"func _gui_input(event):\n"
+" if event is InputEventMouseButton:\n"
+" if event.button_index == BUTTON_LEFT and event.pressed:\n"
+" print(\"I've been clicked D:\")\n"
+"[/codeblock]\n"
+"The event won't trigger if:\n"
+"* clicking outside the control (see [method has_point]);\n"
+"* control has [member mouse_filter] set to [constant MOUSE_FILTER_IGNORE];\n"
+"* control is obstructed by another [Control] on top of it, which doesn't "
+"have [member mouse_filter] set to [constant MOUSE_FILTER_IGNORE];\n"
+"* control's parent has [member mouse_filter] set to [constant "
+"MOUSE_FILTER_STOP] or has accepted the event;\n"
+"* it happens outside parent's rectangle and the parent has either [member "
+"rect_clip_content] or [method _clips_input] enabled."
+msgstr ""
+
+#: doc/classes/Control.xml:66
+msgid ""
+"Virtual method to be implemented by the user. Returns a [Control] node that "
+"should be used as a tooltip instead of the default one. Use [code]for_text[/"
+"code] parameter to determine what text the tooltip should contain (likely "
+"the contents of [member hint_tooltip]).\n"
+"The returned node must be of type [Control] or Control-derieved. It can have "
+"child nodes of any type. It is freed when the tooltip disappears, so make "
+"sure you always provide a new instance, not e.g. a node from scene. When "
+"[code]null[/code] or non-Control node is returned, the default tooltip will "
+"be used instead.\n"
+"[b]Note:[/b] The tooltip is shrunk to minimal size. If you want to ensure "
+"it's fully visible, you might want to set its [member rect_min_size] to some "
+"non-zero value.\n"
+"Example of usage with custom-constructed node:\n"
+"[codeblock]\n"
+"func _make_custom_tooltip(for_text):\n"
+" var label = Label.new()\n"
+" label.text = for_text\n"
+" return label\n"
+"[/codeblock]\n"
+"Example of usage with custom scene instance:\n"
+"[codeblock]\n"
+"func _make_custom_tooltip(for_text):\n"
+" var tooltip = preload(\"SomeTooltipScene.tscn\").instance()\n"
+" tooltip.get_node(\"Label\").text = for_text\n"
+" return tooltip\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Control.xml:89
+msgid ""
+"Marks an input event as handled. Once you accept an input event, it stops "
+"propagating, even to nodes listening to [method Node._unhandled_input] or "
+"[method Node._unhandled_key_input]."
+msgstr ""
+
+#: doc/classes/Control.xml:100
+msgid ""
+"Overrides the [Color] with given [code]name[/code] in the [member theme] "
+"resource the control uses. If the [code]color[/code] is empty or invalid, "
+"the override is cleared and the color from assigned [Theme] is used."
+msgstr ""
+
+#: doc/classes/Control.xml:111
+msgid ""
+"Overrides an integer constant with given [code]name[/code] in the [member "
+"theme] resource the control uses. If the [code]constant[/code] is empty or "
+"invalid, the override is cleared and the constant from assigned [Theme] is "
+"used."
+msgstr ""
+
+#: doc/classes/Control.xml:122
+msgid ""
+"Overrides the font with given [code]name[/code] in the [member theme] "
+"resource the control uses. If [code]font[/code] is empty or invalid, the "
+"override is cleared and the font from assigned [Theme] is used."
+msgstr ""
+
+#: doc/classes/Control.xml:133
+msgid ""
+"Overrides the icon with given [code]name[/code] in the [member theme] "
+"resource the control uses. If [code]icon[/code] is empty or invalid, the "
+"override is cleared and the icon from assigned [Theme] is used."
+msgstr ""
+
+#: doc/classes/Control.xml:144
+msgid ""
+"Overrides the [Shader] with given [code]name[/code] in the [member theme] "
+"resource the control uses. If [code]shader[/code] is empty or invalid, the "
+"override is cleared and the shader from assigned [Theme] is used."
+msgstr ""
+
+#: doc/classes/Control.xml:155
+msgid ""
+"Overrides the [StyleBox] with given [code]name[/code] in the [member theme] "
+"resource the control uses. If [code]stylebox[/code] is empty or invalid, the "
+"override is cleared and the [StyleBox] from assigned [Theme] is used."
+msgstr ""
+
+#: doc/classes/Control.xml:166
+msgid ""
+"Godot calls this method to test if [code]data[/code] from a control's "
+"[method get_drag_data] can be dropped at [code]position[/code]. "
+"[code]position[/code] is local to this control.\n"
+"This method should only be used to test the data. Process the data in "
+"[method drop_data].\n"
+"[codeblock]\n"
+"func can_drop_data(position, data):\n"
+" # Check position if it is relevant to you\n"
+" # Otherwise, just check data\n"
+" return typeof(data) == TYPE_DICTIONARY and data.has(\"expected\")\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Control.xml:184
+msgid ""
+"Godot calls this method to pass you the [code]data[/code] from a control's "
+"[method get_drag_data] result. Godot first calls [method can_drop_data] to "
+"test if [code]data[/code] is allowed to drop at [code]position[/code] where "
+"[code]position[/code] is local to this control.\n"
+"[codeblock]\n"
+"func can_drop_data(position, data):\n"
+" return typeof(data) == TYPE_DICTIONARY and data.has(\"color\")\n"
+"\n"
+"func drop_data(position, data):\n"
+" color = data[\"color\"]\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Control.xml:202
+msgid ""
+"Forces drag and bypasses [method get_drag_data] and [method "
+"set_drag_preview] by passing [code]data[/code] and [code]preview[/code]. "
+"Drag will start even if the mouse is neither over nor pressed on this "
+"control.\n"
+"The methods [method can_drop_data] and [method drop_data] must be "
+"implemented on controls that want to receive drop data."
+msgstr ""
+
+#: doc/classes/Control.xml:212
+msgid ""
+"Returns the anchor identified by [code]margin[/code] constant from [enum "
+"Margin] enum. A getter method for [member anchor_bottom], [member "
+"anchor_left], [member anchor_right] and [member anchor_top]."
+msgstr ""
+
+#: doc/classes/Control.xml:219
+msgid ""
+"Returns [member margin_left] and [member margin_top]. See also [member "
+"rect_position]."
+msgstr ""
+
+#: doc/classes/Control.xml:226
+msgid ""
+"Returns combined minimum size from [member rect_min_size] and [method "
+"get_minimum_size]."
+msgstr ""
+
+#: doc/classes/Control.xml:235
+msgid ""
+"Returns the mouse cursor shape the control displays on mouse hover. See "
+"[enum CursorShape]."
+msgstr ""
+
+#: doc/classes/Control.xml:244
+msgid ""
+"Godot calls this method to get data that can be dragged and dropped onto "
+"controls that expect drop data. Returns [code]null[/code] if there is no "
+"data to drag. Controls that want to receive drop data should implement "
+"[method can_drop_data] and [method drop_data]. [code]position[/code] is "
+"local to this control. Drag may be forced with [method force_drag].\n"
+"A preview that will follow the mouse that should represent the data can be "
+"set with [method set_drag_preview]. A good time to set the preview is in "
+"this method.\n"
+"[codeblock]\n"
+"func get_drag_data(position):\n"
+" var mydata = make_data()\n"
+" set_drag_preview(make_preview(mydata))\n"
+" return mydata\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Control.xml:258
+msgid "Returns [member margin_right] and [member margin_bottom]."
+msgstr ""
+
+#: doc/classes/Control.xml:267
+msgid ""
+"Returns the focus neighbour identified by [code]margin[/code] constant from "
+"[enum Margin] enum. A getter method for [member focus_neighbour_bottom], "
+"[member focus_neighbour_left], [member focus_neighbour_right] and [member "
+"focus_neighbour_top]."
+msgstr ""
+
+#: doc/classes/Control.xml:274
+msgid ""
+"Returns the control that has the keyboard focus or [code]null[/code] if none."
+msgstr ""
+
+#: doc/classes/Control.xml:281
+msgid ""
+"Returns the position and size of the control relative to the top-left corner "
+"of the screen. See [member rect_position] and [member rect_size]."
+msgstr ""
+
+#: doc/classes/Control.xml:290
+msgid ""
+"Returns the anchor identified by [code]margin[/code] constant from [enum "
+"Margin] enum. A getter method for [member margin_bottom], [member "
+"margin_left], [member margin_right] and [member margin_top]."
+msgstr ""
+
+#: doc/classes/Control.xml:297
+msgid "Returns the minimum size for this control. See [member rect_min_size]."
+msgstr ""
+
+#: doc/classes/Control.xml:304
+msgid "Returns the width/height occupied in the parent control."
+msgstr ""
+
+#: doc/classes/Control.xml:311
+msgid "Returns the parent control node."
+msgstr ""
+
+#: doc/classes/Control.xml:318
+msgid ""
+"Returns the position and size of the control relative to the top-left corner "
+"of the parent Control. See [member rect_position] and [member rect_size]."
+msgstr ""
+
+#: doc/classes/Control.xml:325
+msgid "Returns the rotation (in radians)."
+msgstr ""
+
+#: doc/classes/Control.xml:336
+msgid ""
+"Returns a color from assigned [Theme] with given [code]name[/code] and "
+"associated with [Control] of given [code]type[/code].\n"
+"[codeblock]\n"
+"func _ready():\n"
+" modulate = get_theme_color(\"font_color\", \"Button\") #get the color "
+"defined for button fonts\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Control.xml:351
+msgid ""
+"Returns a constant from assigned [Theme] with given [code]name[/code] and "
+"associated with [Control] of given [code]type[/code]."
+msgstr ""
+
+#: doc/classes/Control.xml:362
+msgid ""
+"Returns a font from assigned [Theme] with given [code]name[/code] and "
+"associated with [Control] of given [code]type[/code]."
+msgstr ""
+
+#: doc/classes/Control.xml:373
+msgid ""
+"Returns an icon from assigned [Theme] with given [code]name[/code] and "
+"associated with [Control] of given [code]type[/code]."
+msgstr ""
+
+#: doc/classes/Control.xml:384
+msgid ""
+"Returns a [StyleBox] from assigned [Theme] with given [code]name[/code] and "
+"associated with [Control] of given [code]type[/code]."
+msgstr ""
+
+#: doc/classes/Control.xml:393
+msgid ""
+"Returns the tooltip, which will appear when the cursor is resting over this "
+"control. See [member hint_tooltip]."
+msgstr ""
+
+#: doc/classes/Control.xml:400
+msgid ""
+"Creates an [InputEventMouseButton] that attempts to click the control. If "
+"the event is received, the control acquires focus.\n"
+"[codeblock]\n"
+"func _process(delta):\n"
+" grab_click_focus() #when clicking another Control node, this node will "
+"be clicked instead\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Control.xml:411
+msgid ""
+"Steal the focus from another control and become the focused control (see "
+"[member focus_mode])."
+msgstr ""
+
+#: doc/classes/Control.xml:418
+msgid ""
+"Returns [code]true[/code] if this is the current focused control. See "
+"[member focus_mode]."
+msgstr ""
+
+#: doc/classes/Control.xml:427
+msgid ""
+"Virtual method to be implemented by the user. Returns whether the given "
+"[code]point[/code] is inside this control.\n"
+"If not overridden, default behavior is checking if the point is within "
+"control's Rect.\n"
+"[b]Note:[/b] If you want to check if a point is inside the control, you can "
+"use [code]get_rect().has_point(point)[/code]."
+msgstr ""
+
+#: doc/classes/Control.xml:440
+msgid ""
+"Returns [code]true[/code] if [Color] with given [code]name[/code] and "
+"associated with [Control] of given [code]type[/code] exists in assigned "
+"[Theme]."
+msgstr ""
+
+#: doc/classes/Control.xml:449
+msgid ""
+"Returns [code]true[/code] if [Color] with given [code]name[/code] has a "
+"valid override in this [Control] node."
+msgstr ""
+
+#: doc/classes/Control.xml:460
+msgid ""
+"Returns [code]true[/code] if constant with given [code]name[/code] and "
+"associated with [Control] of given [code]type[/code] exists in assigned "
+"[Theme]."
+msgstr ""
+
+#: doc/classes/Control.xml:469
+msgid ""
+"Returns [code]true[/code] if constant with given [code]name[/code] has a "
+"valid override in this [Control] node."
+msgstr ""
+
+#: doc/classes/Control.xml:480
+msgid ""
+"Returns [code]true[/code] if font with given [code]name[/code] and "
+"associated with [Control] of given [code]type[/code] exists in assigned "
+"[Theme]."
+msgstr ""
+
+#: doc/classes/Control.xml:489
+msgid ""
+"Returns [code]true[/code] if font with given [code]name[/code] has a valid "
+"override in this [Control] node."
+msgstr ""
+
+#: doc/classes/Control.xml:500
+msgid ""
+"Returns [code]true[/code] if icon with given [code]name[/code] and "
+"associated with [Control] of given [code]type[/code] exists in assigned "
+"[Theme]."
+msgstr ""
+
+#: doc/classes/Control.xml:509
+msgid ""
+"Returns [code]true[/code] if icon with given [code]name[/code] has a valid "
+"override in this [Control] node."
+msgstr ""
+
+#: doc/classes/Control.xml:518
+msgid ""
+"Returns [code]true[/code] if [Shader] with given [code]name[/code] has a "
+"valid override in this [Control] node."
+msgstr ""
+
+#: doc/classes/Control.xml:529
+msgid ""
+"Returns [code]true[/code] if [StyleBox] with given [code]name[/code] and "
+"associated with [Control] of given [code]type[/code] exists in assigned "
+"[Theme]."
+msgstr ""
+
+#: doc/classes/Control.xml:538
+msgid ""
+"Returns [code]true[/code] if [StyleBox] with given [code]name[/code] has a "
+"valid override in this [Control] node."
+msgstr ""
+
+#: doc/classes/Control.xml:545
+msgid ""
+"Invalidates the size cache in this node and in parent nodes up to toplevel. "
+"Intended to be used with [method get_minimum_size] when the return value is "
+"changed. Setting [member rect_min_size] directly calls this method "
+"automatically."
+msgstr ""
+
+#: doc/classes/Control.xml:552
+msgid ""
+"Give up the focus. No other control will be able to receive keyboard input."
+msgstr ""
+
+#: doc/classes/Control.xml:567
+msgid ""
+"Sets the anchor identified by [code]margin[/code] constant from [enum "
+"Margin] enum to value [code]anchor[/code]. A setter method for [member "
+"anchor_bottom], [member anchor_left], [member anchor_right] and [member "
+"anchor_top].\n"
+"If [code]keep_margin[/code] is [code]true[/code], margins aren't updated "
+"after this operation.\n"
+"If [code]push_opposite_anchor[/code] is [code]true[/code] and the opposite "
+"anchor overlaps this anchor, the opposite one will have its value "
+"overridden. For example, when setting left anchor to 1 and the right anchor "
+"has value of 0.5, the right anchor will also get value of 1. If "
+"[code]push_opposite_anchor[/code] was [code]false[/code], the left anchor "
+"would get value 0.5."
+msgstr ""
+
+#: doc/classes/Control.xml:584
+msgid ""
+"Works the same as [method set_anchor], but instead of [code]keep_margin[/"
+"code] argument and automatic update of margin, it allows to set the margin "
+"offset yourself (see [method set_margin])."
+msgstr ""
+
+#: doc/classes/Control.xml:597
+msgid ""
+"Sets both anchor preset and margin preset. See [method set_anchors_preset] "
+"and [method set_margins_preset]."
+msgstr ""
+
+#: doc/classes/Control.xml:608
+msgid ""
+"Sets the anchors to a [code]preset[/code] from [enum Control.LayoutPreset] "
+"enum. This is code equivalent of using the Layout menu in 2D editor.\n"
+"If [code]keep_margins[/code] is [code]true[/code], control's position will "
+"also be updated."
+msgstr ""
+
+#: doc/classes/Control.xml:618
+msgid ""
+"Sets [member margin_left] and [member margin_top] at the same time. "
+"Equivalent of changing [member rect_position]."
+msgstr ""
+
+#: doc/classes/Control.xml:627
+msgid ""
+"Forwards the handling of this control's drag and drop to [code]target[/code] "
+"control.\n"
+"Forwarding can be implemented in the target control similar to the methods "
+"[method get_drag_data], [method can_drop_data], and [method drop_data] but "
+"with two differences:\n"
+"1. The function name must be suffixed with [b]_fw[/b]\n"
+"2. The function must take an extra argument that is the control doing the "
+"forwarding\n"
+"[codeblock]\n"
+"# ThisControl.gd\n"
+"extends Control\n"
+"func _ready():\n"
+" set_drag_forwarding(target_control)\n"
+"\n"
+"# TargetControl.gd\n"
+"extends Control\n"
+"func can_drop_data_fw(position, data, from_control):\n"
+" return true\n"
+"\n"
+"func drop_data_fw(position, data, from_control):\n"
+" my_handle_data(data)\n"
+"\n"
+"func get_drag_data_fw(position, from_control):\n"
+" set_drag_preview(my_preview)\n"
+" return my_data()\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Control.xml:657
+msgid ""
+"Shows the given control at the mouse pointer. A good time to call this "
+"method is in [method get_drag_data]. The control must not be in the scene "
+"tree.\n"
+"[codeblock]\n"
+"export (Color, RGBA) var color = Color(1, 0, 0, 1)\n"
+"\n"
+"func get_drag_data(position):\n"
+" # Use a control that is not in the tree\n"
+" var cpb = ColorPickerButton.new()\n"
+" cpb.color = color\n"
+" cpb.rect_size = Vector2(50, 50)\n"
+" set_drag_preview(cpb)\n"
+" return color\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Control.xml:677
+msgid "Sets [member margin_right] and [member margin_bottom] at the same time."
+msgstr ""
+
+#: doc/classes/Control.xml:688
+msgid ""
+"Sets the anchor identified by [code]margin[/code] constant from [enum "
+"Margin] enum to [Control] at [code]neighbor[/code] node path. A setter "
+"method for [member focus_neighbour_bottom], [member focus_neighbour_left], "
+"[member focus_neighbour_right] and [member focus_neighbour_top]."
+msgstr ""
+
+#: doc/classes/Control.xml:699
+msgid ""
+"Sets the [member rect_global_position] to given [code]position[/code].\n"
+"If [code]keep_margins[/code] is [code]true[/code], control's anchors will be "
+"updated instead of margins."
+msgstr ""
+
+#: doc/classes/Control.xml:711
+msgid ""
+"Sets the margin identified by [code]margin[/code] constant from [enum "
+"Margin] enum to given [code]offset[/code]. A setter method for [member "
+"margin_bottom], [member margin_left], [member margin_right] and [member "
+"margin_top]."
+msgstr ""
+
+#: doc/classes/Control.xml:724
+msgid ""
+"Sets the margins to a [code]preset[/code] from [enum Control.LayoutPreset] "
+"enum. This is code equivalent of using the Layout menu in 2D editor.\n"
+"Use parameter [code]resize_mode[/code] with constants from [enum Control."
+"LayoutPresetMode] to better determine the resulting size of the [Control]. "
+"Constant size will be ignored if used with presets that change size, e.g. "
+"[code]PRESET_LEFT_WIDE[/code].\n"
+"Use parameter [code]margin[/code] to determine the gap between the [Control] "
+"and the edges."
+msgstr ""
+
+#: doc/classes/Control.xml:737
+msgid ""
+"Sets the [member rect_position] to given [code]position[/code].\n"
+"If [code]keep_margins[/code] is [code]true[/code], control's anchors will be "
+"updated instead of margins."
+msgstr ""
+
+#: doc/classes/Control.xml:747
+msgid "Sets the rotation (in radians)."
+msgstr ""
+
+#: doc/classes/Control.xml:758
+msgid ""
+"Sets the size (see [member rect_size]).\n"
+"If [code]keep_margins[/code] is [code]true[/code], control's anchors will be "
+"updated instead of margins."
+msgstr ""
+
+#: doc/classes/Control.xml:768
+msgid ""
+"Moves the mouse cursor to [code]to_position[/code], relative to [member "
+"rect_position] of this [Control]."
+msgstr ""
+
+#: doc/classes/Control.xml:774
+msgid ""
+"Anchors the bottom edge of the node to the origin, the center, or the end of "
+"its parent control. It changes how the bottom margin updates when the node "
+"moves or changes size. You can use one of the [enum Anchor] constants for "
+"convenience."
+msgstr ""
+
+#: doc/classes/Control.xml:777
+msgid ""
+"Anchors the left edge of the node to the origin, the center or the end of "
+"its parent control. It changes how the left margin updates when the node "
+"moves or changes size. You can use one of the [enum Anchor] constants for "
+"convenience."
+msgstr ""
+
+#: doc/classes/Control.xml:780
+msgid ""
+"Anchors the right edge of the node to the origin, the center or the end of "
+"its parent control. It changes how the right margin updates when the node "
+"moves or changes size. You can use one of the [enum Anchor] constants for "
+"convenience."
+msgstr ""
+
+#: doc/classes/Control.xml:783
+msgid ""
+"Anchors the top edge of the node to the origin, the center or the end of its "
+"parent control. It changes how the top margin updates when the node moves or "
+"changes size. You can use one of the [enum Anchor] constants for "
+"convenience."
+msgstr ""
+
+#: doc/classes/Control.xml:786
+msgid ""
+"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 signals."
+msgstr ""
+
+#: doc/classes/Control.xml:789
+msgid ""
+"Tells Godot which node it should give keyboard focus to if the user presses "
+"the down arrow on the keyboard or down on a gamepad by default. You can "
+"change the key by editing the [code]ui_down[/code] input action. The node "
+"must be a [Control]. If this property is not set, Godot will give focus to "
+"the closest [Control] to the bottom of this one."
+msgstr ""
+
+#: doc/classes/Control.xml:792
+msgid ""
+"Tells Godot which node it should give keyboard focus to if the user presses "
+"the left arrow on the keyboard or left on a gamepad by default. You can "
+"change the key by editing the [code]ui_left[/code] input action. The node "
+"must be a [Control]. If this property is not set, Godot will give focus to "
+"the closest [Control] to the left of this one."
+msgstr ""
+
+#: doc/classes/Control.xml:795
+msgid ""
+"Tells Godot which node it should give keyboard focus to if the user presses "
+"the right arrow on the keyboard or right on a gamepad by default. You can "
+"change the key by editing the [code]ui_right[/code] input action. The node "
+"must be a [Control]. If this property is not set, Godot will give focus to "
+"the closest [Control] to the bottom of this one."
+msgstr ""
+
+#: doc/classes/Control.xml:798
+msgid ""
+"Tells Godot which node it should give keyboard focus to if the user presses "
+"the top arrow on the keyboard or top on a gamepad by default. You can change "
+"the key by editing the [code]ui_top[/code] input action. The node must be a "
+"[Control]. If this property is not set, Godot will give focus to the closest "
+"[Control] to the bottom of this one."
+msgstr ""
+
+#: doc/classes/Control.xml:801
+msgid ""
+"Tells Godot which node it should give keyboard focus to if the user presses "
+"[kbd]Tab[/kbd] on a keyboard by default. You can change the key by editing "
+"the [code]ui_focus_next[/code] input action.\n"
+"If this property is not set, Godot will select a \"best guess\" based on "
+"surrounding nodes in the scene tree."
+msgstr ""
+
+#: doc/classes/Control.xml:805
+msgid ""
+"Tells Godot which node it should give keyboard focus to if the user presses "
+"[kbd]Shift + Tab[/kbd] on a keyboard by default. You can change the key by "
+"editing the [code]ui_focus_prev[/code] input action.\n"
+"If this property is not set, Godot will select a \"best guess\" based on "
+"surrounding nodes in the scene tree."
+msgstr ""
+
+#: doc/classes/Control.xml:809
+msgid ""
+"Controls the direction on the horizontal axis in which the control should "
+"grow if its horizontal minimum size is changed to be greater than its "
+"current size, as the control always has to be at least the minimum size."
+msgstr ""
+
+#: doc/classes/Control.xml:812
+msgid ""
+"Controls the direction on the vertical axis in which the control should grow "
+"if its vertical minimum size is changed to be greater than its current size, "
+"as the control always has to be at least the minimum size."
+msgstr ""
+
+#: doc/classes/Control.xml:815
+msgid ""
+"Changes the tooltip text. The tooltip appears when the user's mouse cursor "
+"stays idle over this control for a few moments, provided that the [member "
+"mouse_filter] property is not [constant MOUSE_FILTER_IGNORE]. You can change "
+"the time required for the tooltip to appear with [code]gui/timers/"
+"tooltip_delay_sec[/code] option in Project Settings."
+msgstr ""
+
+#: doc/classes/Control.xml:818
+msgid ""
+"Distance between the node's bottom edge and its parent control, based on "
+"[member anchor_bottom].\n"
+"Margins are often controlled by one or multiple parent [Container] nodes, so "
+"you should not modify them manually if your node is a direct child of a "
+"[Container]. Margins update automatically when you move or resize the node."
+msgstr ""
+
+#: doc/classes/Control.xml:822
+msgid ""
+"Distance between the node's left edge and its parent control, based on "
+"[member anchor_left].\n"
+"Margins are often controlled by one or multiple parent [Container] nodes, so "
+"you should not modify them manually if your node is a direct child of a "
+"[Container]. Margins update automatically when you move or resize the node."
+msgstr ""
+
+#: doc/classes/Control.xml:826
+msgid ""
+"Distance between the node's right edge and its parent control, based on "
+"[member anchor_right].\n"
+"Margins are often controlled by one or multiple parent [Container] nodes, so "
+"you should not modify them manually if your node is a direct child of a "
+"[Container]. Margins update automatically when you move or resize the node."
+msgstr ""
+
+#: doc/classes/Control.xml:830
+msgid ""
+"Distance between the node's top edge and its parent control, based on "
+"[member anchor_top].\n"
+"Margins are often controlled by one or multiple parent [Container] nodes, so "
+"you should not modify them manually if your node is a direct child of a "
+"[Container]. Margins update automatically when you move or resize the node."
+msgstr ""
+
+#: doc/classes/Control.xml:834
+msgid ""
+"The default cursor shape for this control. Useful for Godot plugins and "
+"applications or games that use the system's mouse cursors.\n"
+"[b]Note:[/b] On Linux, shapes may vary depending on the cursor theme of the "
+"system."
+msgstr ""
+
+#: doc/classes/Control.xml:838
+msgid ""
+"Controls whether the control will be able to receive mouse button input "
+"events through [method _gui_input] and how these events should be handled. "
+"Also controls whether the control can receive the [signal mouse_entered], "
+"and [signal mouse_exited] signals. See the constants to learn what each does."
+msgstr ""
+
+#: doc/classes/Control.xml:841
+msgid ""
+"Enables whether rendering of [CanvasItem] based children should be clipped "
+"to this control's rectangle. If [code]true[/code], parts of a child which "
+"would be visibly outside of this control's rectangle will not be rendered."
+msgstr ""
+
+#: doc/classes/Control.xml:844
+msgid ""
+"The node's global position, relative to the world (usually to the top-left "
+"corner of the window)."
+msgstr ""
+
+#: doc/classes/Control.xml:847
+msgid ""
+"The minimum size of the node's bounding rectangle. If you set it to a value "
+"greater than (0, 0), the node's bounding rectangle will always have at least "
+"this size, even if its content is smaller. If it's set to (0, 0), the node "
+"sizes automatically to fit its content, be it a texture or child nodes."
+msgstr ""
+
+#: doc/classes/Control.xml:850
+msgid ""
+"By default, the node's pivot is its top-left corner. When you change its "
+"[member rect_scale], it will scale around this pivot. Set this property to "
+"[member rect_size] / 2 to center the pivot in the node's rectangle."
+msgstr ""
+
+#: doc/classes/Control.xml:853
+msgid ""
+"The node's position, relative to its parent. It corresponds to the "
+"rectangle's top-left corner. The property is not affected by [member "
+"rect_pivot_offset]."
+msgstr ""
+
+#: doc/classes/Control.xml:856
+msgid ""
+"The node's rotation around its pivot, in degrees. See [member "
+"rect_pivot_offset] to change the pivot's position."
+msgstr ""
+
+#: doc/classes/Control.xml:859
+msgid ""
+"The node's scale, relative to its [member rect_size]. Change this property "
+"to scale the node around its [member rect_pivot_offset]. The Control's "
+"[member hint_tooltip] will also scale according to this value.\n"
+"[b]Note:[/b] This property is mainly intended to be used for animation "
+"purposes. Text inside the Control will look pixelated or blurry when the "
+"Control is scaled. To support multiple resolutions in your project, use an "
+"appropriate viewport stretch mode as described in the [url=https://docs."
+"godotengine.org/en/latest/tutorials/viewports/multiple_resolutions."
+"html]documentation[/url] instead of scaling Controls individually.\n"
+"[b]Note:[/b] If the Control node is a child of a [Container] node, the scale "
+"will be reset to [code]Vector2(1, 1)[/code] when the scene is instanced. To "
+"set the Control's scale when it's instanced, wait for one frame using "
+"[code]yield(get_tree(), \"idle_frame\")[/code] then set its [member "
+"rect_scale] property."
+msgstr ""
+
+#: doc/classes/Control.xml:864
+msgid ""
+"The size of the node's bounding rectangle, in pixels. [Container] nodes "
+"update this property automatically."
+msgstr ""
+
+#: doc/classes/Control.xml:867
+msgid ""
+"Tells the parent [Container] nodes how they should resize and place the node "
+"on the X axis. Use one of the [enum SizeFlags] constants to change the "
+"flags. See the constants to learn what each does."
+msgstr ""
+
+#: doc/classes/Control.xml:870
+msgid ""
+"If the node and at least one of its neighbours uses the [constant "
+"SIZE_EXPAND] size flag, the parent [Container] will let it take more or less "
+"space depending on this property. If this node has a stretch ratio of 2 and "
+"its neighbour a ratio of 1, this node will take two thirds of the available "
+"space."
+msgstr ""
+
+#: doc/classes/Control.xml:873
+msgid ""
+"Tells the parent [Container] nodes how they should resize and place the node "
+"on the Y axis. Use one of the [enum SizeFlags] constants to change the "
+"flags. See the constants to learn what each does."
+msgstr ""
+
+#: doc/classes/Control.xml:876
+msgid ""
+"Changing this property replaces the current [Theme] resource this node and "
+"all its [Control] children use."
+msgstr ""
+
+#: doc/classes/Control.xml:882
+msgid "Emitted when the node gains keyboard focus."
+msgstr ""
+
+#: doc/classes/Control.xml:887
+msgid "Emitted when the node loses keyboard focus."
+msgstr ""
+
+#: doc/classes/Control.xml:894
+msgid "Emitted when the node receives an [InputEvent]."
+msgstr ""
+
+#: doc/classes/Control.xml:899
+msgid "Emitted when the node's minimum size changes."
+msgstr ""
+
+#: doc/classes/Control.xml:904
+msgid ""
+"Emitted when the mouse enters the control's [code]Rect[/code] area, provided "
+"its [member mouse_filter] lets the event reach it."
+msgstr ""
+
+#: doc/classes/Control.xml:909
+msgid ""
+"Emitted when the mouse leaves the control's [code]Rect[/code] area, provided "
+"its [member mouse_filter] lets the event reach it."
+msgstr ""
+
+#: doc/classes/Control.xml:914
+msgid "Emitted when the control changes size."
+msgstr ""
+
+#: doc/classes/Control.xml:919
+msgid ""
+"Emitted when one of the size flags changes. See [member "
+"size_flags_horizontal] and [member size_flags_vertical]."
+msgstr ""
+
+#: doc/classes/Control.xml:929
+msgid "The node cannot grab focus. Use with [member focus_mode]."
+msgstr ""
+
+#: doc/classes/Control.xml:932
+msgid ""
+"The node can only grab focus on mouse clicks. Use with [member focus_mode]."
+msgstr ""
+
+#: doc/classes/Control.xml:935
+msgid ""
+"The node can grab focus on mouse click or using the arrows and the Tab keys "
+"on the keyboard. Use with [member focus_mode]."
+msgstr ""
+
+#: doc/classes/Control.xml:938
+msgid ""
+"Sent when the node changes size. Use [member rect_size] to get the new size."
+msgstr ""
+
+#: doc/classes/Control.xml:941
+msgid "Sent when the mouse pointer enters the node."
+msgstr ""
+
+#: doc/classes/Control.xml:944
+msgid "Sent when the mouse pointer exits the node."
+msgstr ""
+
+#: doc/classes/Control.xml:947
+msgid "Sent when the node grabs focus."
+msgstr ""
+
+#: doc/classes/Control.xml:950
+msgid "Sent when the node loses focus."
+msgstr ""
+
+#: doc/classes/Control.xml:953
+msgid ""
+"Sent when the node's [member theme] changes, right before Godot redraws the "
+"control. Happens when you call one of the [code]add_theme_*_override[/code] "
+"methods."
+msgstr ""
+
+#: doc/classes/Control.xml:956
+msgid ""
+"Sent when this node is inside a [ScrollContainer] which has begun being "
+"scrolled."
+msgstr ""
+
+#: doc/classes/Control.xml:959
+msgid ""
+"Sent when this node is inside a [ScrollContainer] which has stopped being "
+"scrolled."
+msgstr ""
+
+#: doc/classes/Control.xml:962
+msgid ""
+"Show the system's arrow mouse cursor when the user hovers the node. Use with "
+"[member mouse_default_cursor_shape]."
+msgstr ""
+
+#: doc/classes/Control.xml:965
+msgid ""
+"Show the system's I-beam mouse cursor when the user hovers the node. The I-"
+"beam pointer has a shape similar to \"I\". It tells the user they can "
+"highlight or insert text."
+msgstr ""
+
+#: doc/classes/Control.xml:968
+msgid ""
+"Show the system's pointing hand mouse cursor when the user hovers the node."
+msgstr ""
+
+#: doc/classes/Control.xml:971
+msgid "Show the system's cross mouse cursor when the user hovers the node."
+msgstr ""
+
+#: doc/classes/Control.xml:974
+msgid ""
+"Show the system's wait mouse cursor, often an hourglass, when the user "
+"hovers the node."
+msgstr ""
+
+#: doc/classes/Control.xml:977
+msgid ""
+"Show the system's busy mouse cursor when the user hovers the node. Often an "
+"hourglass."
+msgstr ""
+
+#: doc/classes/Control.xml:980
+msgid ""
+"Show the system's drag mouse cursor, often a closed fist or a cross symbol, "
+"when the user hovers the node. It tells the user they're currently dragging "
+"an item, like a node in the Scene dock."
+msgstr ""
+
+#: doc/classes/Control.xml:983
+msgid ""
+"Show the system's drop mouse cursor when the user hovers the node. It can be "
+"an open hand. It tells the user they can drop an item they're currently "
+"grabbing, like a node in the Scene dock."
+msgstr ""
+
+#: doc/classes/Control.xml:986
+msgid ""
+"Show the system's forbidden mouse cursor when the user hovers the node. "
+"Often a crossed circle."
+msgstr ""
+
+#: doc/classes/Control.xml:989
+msgid ""
+"Show the system's vertical resize mouse cursor when the user hovers the "
+"node. A double-headed vertical arrow. It tells the user they can resize the "
+"window or the panel vertically."
+msgstr ""
+
+#: doc/classes/Control.xml:992
+msgid ""
+"Show the system's horizontal resize mouse cursor when the user hovers the "
+"node. A double-headed horizontal arrow. It tells the user they can resize "
+"the window or the panel horizontally."
+msgstr ""
+
+#: doc/classes/Control.xml:995
+msgid ""
+"Show the system's window resize mouse cursor when the user hovers the node. "
+"The cursor is a double-headed arrow that goes from the bottom left to the "
+"top right. It tells the user they can resize the window or the panel both "
+"horizontally and vertically."
+msgstr ""
+
+#: doc/classes/Control.xml:998
+msgid ""
+"Show the system's window resize mouse cursor when the user hovers the node. "
+"The cursor is a double-headed arrow that goes from the top left to the "
+"bottom right, the opposite of [constant CURSOR_BDIAGSIZE]. It tells the user "
+"they can resize the window or the panel both horizontally and vertically."
+msgstr ""
+
+#: doc/classes/Control.xml:1001
+msgid ""
+"Show the system's move mouse cursor when the user hovers the node. It shows "
+"2 double-headed arrows at a 90 degree angle. It tells the user they can move "
+"a UI element freely."
+msgstr ""
+
+#: doc/classes/Control.xml:1004
+msgid ""
+"Show the system's vertical split mouse cursor when the user hovers the node. "
+"On Windows, it's the same as [constant CURSOR_VSIZE]."
+msgstr ""
+
+#: doc/classes/Control.xml:1007
+msgid ""
+"Show the system's horizontal split mouse cursor when the user hovers the "
+"node. On Windows, it's the same as [constant CURSOR_HSIZE]."
+msgstr ""
+
+#: doc/classes/Control.xml:1010
+msgid ""
+"Show the system's help mouse cursor when the user hovers the node, a "
+"question mark."
+msgstr ""
+
+#: doc/classes/Control.xml:1013
+msgid ""
+"Snap all 4 anchors to the top-left of the parent control's bounds. Use with "
+"[method set_anchors_preset]."
+msgstr ""
+
+#: doc/classes/Control.xml:1016
+msgid ""
+"Snap all 4 anchors to the top-right of the parent control's bounds. Use with "
+"[method set_anchors_preset]."
+msgstr ""
+
+#: doc/classes/Control.xml:1019
+msgid ""
+"Snap all 4 anchors to the bottom-left of the parent control's bounds. Use "
+"with [method set_anchors_preset]."
+msgstr ""
+
+#: doc/classes/Control.xml:1022
+msgid ""
+"Snap all 4 anchors to the bottom-right of the parent control's bounds. Use "
+"with [method set_anchors_preset]."
+msgstr ""
+
+#: doc/classes/Control.xml:1025
+msgid ""
+"Snap all 4 anchors to the center of the left edge of the parent control's "
+"bounds. Use with [method set_anchors_preset]."
+msgstr ""
+
+#: doc/classes/Control.xml:1028
+msgid ""
+"Snap all 4 anchors to the center of the top edge of the parent control's "
+"bounds. Use with [method set_anchors_preset]."
+msgstr ""
+
+#: doc/classes/Control.xml:1031
+msgid ""
+"Snap all 4 anchors to the center of the right edge of the parent control's "
+"bounds. Use with [method set_anchors_preset]."
+msgstr ""
+
+#: doc/classes/Control.xml:1034
+msgid ""
+"Snap all 4 anchors to the center of the bottom edge of the parent control's "
+"bounds. Use with [method set_anchors_preset]."
+msgstr ""
+
+#: doc/classes/Control.xml:1037
+msgid ""
+"Snap all 4 anchors to the center of the parent control's bounds. Use with "
+"[method set_anchors_preset]."
+msgstr ""
+
+#: doc/classes/Control.xml:1040
+msgid ""
+"Snap all 4 anchors to the left edge of the parent control. The left margin "
+"becomes relative to the left edge and the top margin relative to the top "
+"left corner of the node's parent. Use with [method set_anchors_preset]."
+msgstr ""
+
+#: doc/classes/Control.xml:1043
+msgid ""
+"Snap all 4 anchors to the top edge of the parent control. The left margin "
+"becomes relative to the top left corner, the top margin relative to the top "
+"edge, and the right margin relative to the top right corner of the node's "
+"parent. Use with [method set_anchors_preset]."
+msgstr ""
+
+#: doc/classes/Control.xml:1046
+msgid ""
+"Snap all 4 anchors to the right edge of the parent control. The right margin "
+"becomes relative to the right edge and the top margin relative to the top "
+"right corner of the node's parent. Use with [method set_anchors_preset]."
+msgstr ""
+
+#: doc/classes/Control.xml:1049
+msgid ""
+"Snap all 4 anchors to the bottom edge of the parent control. The left margin "
+"becomes relative to the bottom left corner, the bottom margin relative to "
+"the bottom edge, and the right margin relative to the bottom right corner of "
+"the node's parent. Use with [method set_anchors_preset]."
+msgstr ""
+
+#: doc/classes/Control.xml:1052
+msgid ""
+"Snap all 4 anchors to a vertical line that cuts the parent control in half. "
+"Use with [method set_anchors_preset]."
+msgstr ""
+
+#: doc/classes/Control.xml:1055
+msgid ""
+"Snap all 4 anchors to a horizontal line that cuts the parent control in "
+"half. Use with [method set_anchors_preset]."
+msgstr ""
+
+#: doc/classes/Control.xml:1058
+msgid ""
+"Snap all 4 anchors to the respective corners of the parent control. Set all "
+"4 margins to 0 after you applied this preset and the [Control] will fit its "
+"parent control. This is equivalent to the \"Full Rect\" layout option in the "
+"editor. Use with [method set_anchors_preset]."
+msgstr ""
+
+#: doc/classes/Control.xml:1061
+msgid "The control will be resized to its minimum size."
+msgstr ""
+
+#: doc/classes/Control.xml:1064
+msgid "The control's width will not change."
+msgstr ""
+
+#: doc/classes/Control.xml:1067
+msgid "The control's height will not change."
+msgstr ""
+
+#: doc/classes/Control.xml:1070
+msgid "The control's size will not change."
+msgstr ""
+
+#: doc/classes/Control.xml:1073
+msgid ""
+"Tells the parent [Container] to expand the bounds of this node to fill all "
+"the available space without pushing any other node. Use with [member "
+"size_flags_horizontal] and [member size_flags_vertical]."
+msgstr ""
+
+#: doc/classes/Control.xml:1076
+msgid ""
+"Tells the parent [Container] to let this node take all the available space "
+"on the axis you flag. If multiple neighboring nodes are set to expand, "
+"they'll share the space based on their stretch ratio. See [member "
+"size_flags_stretch_ratio]. Use with [member size_flags_horizontal] and "
+"[member size_flags_vertical]."
+msgstr ""
+
+#: doc/classes/Control.xml:1079
+msgid ""
+"Sets the node's size flags to both fill and expand. See the 2 constants "
+"above for more information."
+msgstr ""
+
+#: doc/classes/Control.xml:1082
+msgid ""
+"Tells the parent [Container] to center the node in itself. It centers the "
+"control based on its bounding box, so it doesn't work with the fill or "
+"expand size flags. Use with [member size_flags_horizontal] and [member "
+"size_flags_vertical]."
+msgstr ""
+
+#: doc/classes/Control.xml:1085
+msgid ""
+"Tells the parent [Container] to align the node with its end, either the "
+"bottom or the right edge. It doesn't work with the fill or expand size "
+"flags. Use with [member size_flags_horizontal] and [member "
+"size_flags_vertical]."
+msgstr ""
+
+#: doc/classes/Control.xml:1088
+msgid ""
+"The control will receive mouse button input events through [method "
+"_gui_input] if clicked on. And the control will receive the [signal "
+"mouse_entered] and [signal mouse_exited] signals. These events are "
+"automatically marked as handled, and they will not propagate further to "
+"other controls. This also results in blocking signals in other controls."
+msgstr ""
+
+#: doc/classes/Control.xml:1091
+msgid ""
+"The control will receive mouse button input events through [method "
+"_gui_input] if clicked on. And the control will receive the [signal "
+"mouse_entered] and [signal mouse_exited] signals. If this control does not "
+"handle the event, the parent control (if any) will be considered, and so on "
+"until there is no more parent control to potentially handle it. This also "
+"allows signals to fire in other controls. Even if no control handled it at "
+"all, the event will still be handled automatically, so unhandled input will "
+"not be fired."
+msgstr ""
+
+#: doc/classes/Control.xml:1094
+msgid ""
+"The control will not receive mouse button input events through [method "
+"_gui_input]. The control will also not receive the [signal mouse_entered] "
+"nor [signal mouse_exited] signals. This will not block other controls from "
+"receiving these events or firing the signals. Ignored events will not be "
+"handled automatically."
+msgstr ""
+
+#: doc/classes/Control.xml:1097
+msgid ""
+"The control will grow to the left or top to make up if its minimum size is "
+"changed to be greater than its current size on the respective axis."
+msgstr ""
+
+#: doc/classes/Control.xml:1100
+msgid ""
+"The control will grow to the right or bottom to make up if its minimum size "
+"is changed to be greater than its current size on the respective axis."
+msgstr ""
+
+#: doc/classes/Control.xml:1103
+msgid ""
+"The control will grow in both directions equally to make up if its minimum "
+"size is changed to be greater than its current size."
+msgstr ""
+
+#: doc/classes/Control.xml:1106
+msgid ""
+"Snaps one of the 4 anchor's sides to the origin of the node's [code]Rect[/"
+"code], in the top left. Use it with one of the [code]anchor_*[/code] member "
+"variables, like [member anchor_left]. To change all 4 anchors at once, use "
+"[method set_anchors_preset]."
+msgstr ""
+
+#: doc/classes/Control.xml:1109
+msgid ""
+"Snaps one of the 4 anchor's sides to the end of the node's [code]Rect[/"
+"code], in the bottom right. Use it with one of the [code]anchor_*[/code] "
+"member variables, like [member anchor_left]. To change all 4 anchors at "
+"once, use [method set_anchors_preset]."
+msgstr ""
+
+#: doc/classes/ConvexPolygonShape2D.xml:4
+msgid "Convex polygon shape for 2D physics."
+msgstr ""
+
+#: doc/classes/ConvexPolygonShape2D.xml:7
+msgid ""
+"Convex polygon shape for 2D physics. A convex polygon, whatever its shape, "
+"is internally decomposed into as many convex polygons as needed to ensure "
+"all collision checks against it are always done on convex polygons (which "
+"are faster to check).\n"
+"The main difference between a [ConvexPolygonShape2D] and a "
+"[ConcavePolygonShape2D] is that a concave polygon assumes it is concave and "
+"uses a more complex method of collision detection, and a convex one forces "
+"itself to be convex in order to speed up collision detection."
+msgstr ""
+
+#: doc/classes/ConvexPolygonShape2D.xml:19
+msgid ""
+"Based on the set of points provided, this creates and assigns the [member "
+"points] property using the convex hull algorithm. Removing all unneeded "
+"points. See [method Geometry2D.convex_hull] for details."
+msgstr ""
+
+#: doc/classes/ConvexPolygonShape2D.xml:25
+msgid ""
+"The polygon's list of vertices. Can be in either clockwise or "
+"counterclockwise order."
+msgstr ""
+
+#: doc/classes/ConvexPolygonShape3D.xml:4
+msgid "Convex polygon shape for 3D physics."
+msgstr ""
+
+#: doc/classes/ConvexPolygonShape3D.xml:7
+msgid ""
+"Convex polygon shape resource, which can be added to a [PhysicsBody3D] or "
+"area."
+msgstr ""
+
+#: doc/classes/ConvexPolygonShape3D.xml:15
+msgid "The list of 3D points forming the convex polygon shape."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:4
+msgid "CPU-based 2D particle emitter."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:7
+msgid ""
+"CPU-based 2D particle node used to create a variety of particle systems and "
+"effects.\n"
+"See also [GPUParticles2D], which provides the same functionality with "
+"hardware acceleration, but may not run on older devices."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:11 doc/classes/GPUParticles2D.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/2d/particle_systems_2d.html"
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:20
+msgid ""
+"Sets this node's properties to match a given [GPUParticles2D] node with an "
+"assigned [ParticlesMaterial]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:29 doc/classes/CPUParticles3D.xml:28
+msgid "Returns the base value of the parameter specified by [enum Parameter]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:38 doc/classes/CPUParticles3D.xml:37
+msgid "Returns the [Curve] of the parameter specified by [enum Parameter]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:47 doc/classes/CPUParticles3D.xml:46
+msgid ""
+"Returns the randomness factor of the parameter specified by [enum Parameter]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:56 doc/classes/CPUParticles3D.xml:55
+msgid ""
+"Returns the enabled state of the given flag (see [enum Flags] for options)."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:63 doc/classes/CPUParticles3D.xml:62
+msgid "Restarts the particle emitter."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:74 doc/classes/CPUParticles3D.xml:73
+msgid "Sets the base value of the parameter specified by [enum Parameter]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:85 doc/classes/CPUParticles3D.xml:84
+msgid "Sets the [Curve] of the parameter specified by [enum Parameter]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:96 doc/classes/CPUParticles3D.xml:95
+msgid ""
+"Sets the randomness factor of the parameter specified by [enum Parameter]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:107 doc/classes/CPUParticles3D.xml:106
+msgid "Enables or disables the given flag (see [enum Flags] for options)."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:113 doc/classes/CPUParticles3D.xml:112
+#: doc/classes/GPUParticles2D.xml:31
+msgid "Number of particles emitted in one emission cycle."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:116 doc/classes/CPUParticles3D.xml:115
+msgid "Initial rotation applied to each particle, in degrees."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:119 doc/classes/CPUParticles3D.xml:118
+msgid "Each particle's rotation will be animated along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:122 doc/classes/CPUParticles3D.xml:121
+#: doc/classes/ParticlesMaterial.xml:104
+msgid "Rotation randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:125 doc/classes/CPUParticles3D.xml:124
+msgid ""
+"Initial angular velocity applied to each particle. Sets the speed of "
+"rotation of the particle."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:128 doc/classes/CPUParticles3D.xml:127
+msgid "Each particle's angular velocity will vary along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:131 doc/classes/CPUParticles3D.xml:130
+#: doc/classes/ParticlesMaterial.xml:114
+msgid "Angular velocity randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:134 doc/classes/CPUParticles3D.xml:133
+#: doc/classes/ParticlesMaterial.xml:117
+msgid "Particle animation offset."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:137 doc/classes/CPUParticles3D.xml:136
+msgid "Each particle's animation offset will vary along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:140 doc/classes/CPUParticles3D.xml:139
+#: doc/classes/ParticlesMaterial.xml:123
+msgid "Animation offset randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:143 doc/classes/CPUParticles3D.xml:142
+#: doc/classes/ParticlesMaterial.xml:126
+msgid "Particle animation speed."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:146 doc/classes/CPUParticles3D.xml:145
+msgid "Each particle's animation speed will vary along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:149 doc/classes/CPUParticles3D.xml:148
+#: doc/classes/ParticlesMaterial.xml:132
+msgid "Animation speed randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:152
+msgid ""
+"Each particle's initial color. If [member texture] is defined, it will be "
+"multiplied by this color."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:155
+msgid "Each particle's color will vary along this [Gradient]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:158 doc/classes/CPUParticles3D.xml:157
+#: doc/classes/ParticlesMaterial.xml:141
+msgid "The rate at which particles lose velocity."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:161 doc/classes/CPUParticles3D.xml:160
+msgid "Damping will vary along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:164 doc/classes/CPUParticles3D.xml:163
+#: doc/classes/ParticlesMaterial.xml:147
+msgid "Damping randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:167 doc/classes/CPUParticles3D.xml:166
+#: doc/classes/ParticlesMaterial.xml:150
+msgid "Unit vector specifying the particles' emission direction."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:170 doc/classes/CPUParticles3D.xml:169
+#: doc/classes/GPUParticles2D.xml:34 doc/classes/GPUParticles3D.xml:54
+msgid "Particle draw order. Uses [enum DrawOrder] values."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:173 doc/classes/CPUParticles3D.xml:175
+msgid ""
+"Sets the [Color]s to modulate particles by when using [constant "
+"EMISSION_SHAPE_POINTS] or [constant EMISSION_SHAPE_DIRECTED_POINTS]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:176 doc/classes/CPUParticles3D.xml:178
+msgid ""
+"Sets the direction the particles will be emitted in when using [constant "
+"EMISSION_SHAPE_DIRECTED_POINTS]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:179 doc/classes/CPUParticles3D.xml:181
+msgid ""
+"Sets the initial positions to spawn particles when using [constant "
+"EMISSION_SHAPE_POINTS] or [constant EMISSION_SHAPE_DIRECTED_POINTS]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:182
+msgid ""
+"The rectangle's extents if [member emission_shape] is set to [constant "
+"EMISSION_SHAPE_RECTANGLE]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:185 doc/classes/CPUParticles3D.xml:184
+msgid ""
+"Particles will be emitted inside this region. See [enum EmissionShape] for "
+"possible values."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:188
+msgid ""
+"The sphere's radius if [member emission_shape] is set to [constant "
+"EMISSION_SHAPE_SPHERE]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:191 doc/classes/CPUParticles3D.xml:190
+#: doc/classes/GPUParticles2D.xml:37 doc/classes/GPUParticles3D.xml:72
+msgid "If [code]true[/code], particles are being emitted."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:194 doc/classes/CPUParticles3D.xml:193
+#: doc/classes/GPUParticles2D.xml:40
+msgid ""
+"How rapidly particles in an emission cycle are emitted. If greater than "
+"[code]0[/code], there will be a gap in emissions before the next cycle "
+"begins."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:197 doc/classes/GPUParticles2D.xml:43
+#: doc/classes/GPUParticles3D.xml:78
+msgid ""
+"The particle system's frame rate is fixed to a value. For instance, changing "
+"the value to 2 will make the particles render at 2 frames per second. Note "
+"this does not slow down the simulation of the particle system itself."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:200 doc/classes/CPUParticles3D.xml:199
+#: doc/classes/ParticlesMaterial.xml:174
+msgid "Align Y axis of particle with the direction of its velocity."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:203 doc/classes/CPUParticles3D.xml:211
+#: doc/classes/GPUParticles2D.xml:46 doc/classes/GPUParticles3D.xml:81
+msgid ""
+"If [code]true[/code], results in fractional delta calculation which has a "
+"smoother particles display effect."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:206 doc/classes/CPUParticles3D.xml:214
+#: doc/classes/ParticlesMaterial.xml:186
+msgid "Gravity applied to every particle."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:209 doc/classes/CPUParticles3D.xml:217
+#: doc/classes/ParticlesMaterial.xml:189
+msgid "Initial hue variation applied to each particle."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:212 doc/classes/CPUParticles3D.xml:220
+msgid "Each particle's hue will vary along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:215 doc/classes/CPUParticles3D.xml:223
+#: doc/classes/ParticlesMaterial.xml:195
+msgid "Hue variation randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:218 doc/classes/CPUParticles3D.xml:226
+#: doc/classes/ParticlesMaterial.xml:198
+msgid ""
+"Initial velocity magnitude for each particle. Direction comes from [member "
+"spread] and the node's orientation."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:221 doc/classes/CPUParticles3D.xml:229
+#: doc/classes/ParticlesMaterial.xml:201
+msgid "Initial velocity randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:224 doc/classes/CPUParticles3D.xml:232
+#: doc/classes/GPUParticles2D.xml:49 doc/classes/GPUParticles3D.xml:84
+msgid "Amount of time each particle will exist."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:227 doc/classes/CPUParticles3D.xml:235
+#: doc/classes/ParticlesMaterial.xml:204
+msgid "Particle lifetime randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:230 doc/classes/CPUParticles3D.xml:238
+#: doc/classes/ParticlesMaterial.xml:207
+msgid ""
+"Linear acceleration applied to each particle in the direction of motion."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:233 doc/classes/CPUParticles3D.xml:241
+msgid "Each particle's linear acceleration will vary along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:236 doc/classes/CPUParticles3D.xml:244
+#: doc/classes/ParticlesMaterial.xml:213
+msgid "Linear acceleration randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:239 doc/classes/CPUParticles3D.xml:247
+#: doc/classes/GPUParticles2D.xml:52 doc/classes/GPUParticles3D.xml:87
+msgid ""
+"If [code]true[/code], particles use the parent node's coordinate space. If "
+"[code]false[/code], they use global coordinates."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:242 doc/classes/GPUParticles2D.xml:55
+msgid ""
+"Normal map to be used for the [member texture] property.\n"
+"[b]Note:[/b] Godot expects the normal map to use X+, Y-, and Z+ coordinates. "
+"See [url=http://wiki.polycount.com/wiki/"
+"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]this page[/url] for "
+"a comparison of normal map coordinates expected by popular engines."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:246 doc/classes/CPUParticles3D.xml:253
+#: doc/classes/GPUParticles2D.xml:59
+msgid ""
+"If [code]true[/code], only one emission cycle occurs. If set [code]true[/"
+"code] during a cycle, emission will stop at the cycle's end."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:249
+msgid ""
+"Orbital velocity applied to each particle. Makes the particles circle around "
+"origin. Specified in number of full rotations around origin per second."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:252 doc/classes/CPUParticles3D.xml:260
+msgid "Each particle's orbital velocity will vary along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:255 doc/classes/CPUParticles3D.xml:263
+#: doc/classes/ParticlesMaterial.xml:223
+msgid "Orbital velocity randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:258 doc/classes/CPUParticles3D.xml:266
+#: doc/classes/GPUParticles2D.xml:62
+msgid "Particle system starts as if it had already run for this many seconds."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:261 doc/classes/CPUParticles3D.xml:269
+#: doc/classes/ParticlesMaterial.xml:226
+msgid ""
+"Radial acceleration applied to each particle. Makes particle accelerate away "
+"from origin."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:264 doc/classes/CPUParticles3D.xml:272
+msgid "Each particle's radial acceleration will vary along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:267 doc/classes/CPUParticles3D.xml:275
+#: doc/classes/ParticlesMaterial.xml:232
+msgid "Radial acceleration randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:270 doc/classes/CPUParticles3D.xml:278
+#: doc/classes/GPUParticles2D.xml:68
+msgid "Emission lifetime randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:273 doc/classes/CPUParticles3D.xml:281
+#: doc/classes/ParticlesMaterial.xml:235
+msgid "Initial scale applied to each particle."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:276 doc/classes/CPUParticles3D.xml:284
+msgid "Each particle's scale will vary along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:279 doc/classes/CPUParticles3D.xml:287
+#: doc/classes/ParticlesMaterial.xml:241
+msgid "Scale randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:282 doc/classes/CPUParticles3D.xml:290
+#: doc/classes/GPUParticles2D.xml:71
+msgid ""
+"Particle system's running speed scaling ratio. A value of [code]0[/code] can "
+"be used to pause the particles."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:285
+msgid ""
+"Each particle's initial direction range from [code]+spread[/code] to [code]-"
+"spread[/code] degrees."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:288 doc/classes/CPUParticles3D.xml:296
+#: doc/classes/ParticlesMaterial.xml:247
+msgid ""
+"Tangential acceleration applied to each particle. Tangential acceleration is "
+"perpendicular to the particle's velocity giving the particles a swirling "
+"motion."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:291 doc/classes/CPUParticles3D.xml:299
+msgid "Each particle's tangential acceleration will vary along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:294 doc/classes/CPUParticles3D.xml:302
+#: doc/classes/ParticlesMaterial.xml:253
+msgid "Tangential acceleration randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:297 doc/classes/GPUParticles2D.xml:74
+msgid "Particle texture. If [code]null[/code], particles will be squares."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:302 doc/classes/CPUParticles3D.xml:307
+#: doc/classes/GPUParticles2D.xml:82 doc/classes/GPUParticles3D.xml:110
+msgid "Particles are drawn in the order emitted."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:305 doc/classes/CPUParticles3D.xml:310
+#: doc/classes/GPUParticles2D.xml:85 doc/classes/GPUParticles3D.xml:113
+msgid "Particles are drawn in order of remaining lifetime."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:308 doc/classes/CPUParticles3D.xml:316
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set initial velocity properties."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:311 doc/classes/CPUParticles3D.xml:319
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set angular velocity properties."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:314 doc/classes/CPUParticles3D.xml:322
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set orbital velocity properties."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:317 doc/classes/CPUParticles3D.xml:325
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set linear acceleration properties."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:320 doc/classes/CPUParticles3D.xml:328
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set radial acceleration properties."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:323 doc/classes/CPUParticles3D.xml:331
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set tangential acceleration properties."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:326 doc/classes/CPUParticles3D.xml:334
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set damping properties."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:329 doc/classes/CPUParticles3D.xml:337
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set angle properties."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:332 doc/classes/CPUParticles3D.xml:340
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set scale properties."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:335 doc/classes/CPUParticles3D.xml:343
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set hue variation properties."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:338 doc/classes/CPUParticles3D.xml:346
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set animation speed properties."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:341 doc/classes/CPUParticles3D.xml:349
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set animation offset properties."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:344 doc/classes/CPUParticles3D.xml:352
+#: doc/classes/ParticlesMaterial.xml:303
+msgid "Represents the size of the [enum Parameter] enum."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:347 doc/classes/CPUParticles3D.xml:355
+msgid "Use with [method set_particle_flag] to set [member flag_align_y]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:350 doc/classes/CPUParticles2D.xml:353
+msgid "Present for consistency with 3D particle nodes, not used in 2D."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:359 doc/classes/CPUParticles3D.xml:367
+#: doc/classes/ParticlesMaterial.xml:318
+msgid "All particles will be emitted from a single point."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:362
+msgid ""
+"Particles will be emitted on the surface of a sphere flattened to two "
+"dimensions."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:365
+msgid "Particles will be emitted in the area of a rectangle."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:368 doc/classes/CPUParticles3D.xml:376
+msgid ""
+"Particles will be emitted at a position chosen randomly among [member "
+"emission_points]. Particle color will be modulated by [member "
+"emission_colors]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:371 doc/classes/CPUParticles3D.xml:379
+msgid ""
+"Particles will be emitted at a position chosen randomly among [member "
+"emission_points]. Particle velocity and rotation will be set based on "
+"[member emission_normals]. Particle color will be modulated by [member "
+"emission_colors]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:374 doc/classes/CPUParticles3D.xml:382
+#: doc/classes/ParticlesMaterial.xml:333
+msgid "Represents the size of the [enum EmissionShape] enum."
+msgstr ""
+
+#: doc/classes/CPUParticles3D.xml:4
+msgid "CPU-based 3D particle emitter."
+msgstr ""
+
+#: doc/classes/CPUParticles3D.xml:7
+msgid ""
+"CPU-based 3D particle node used to create a variety of particle systems and "
+"effects.\n"
+"See also [GPUParticles3D], which provides the same functionality with "
+"hardware acceleration, but may not run on older devices."
+msgstr ""
+
+#: doc/classes/CPUParticles3D.xml:19
+msgid ""
+"Sets this node's properties to match a given [GPUParticles3D] node with an "
+"assigned [ParticlesMaterial]."
+msgstr ""
+
+#: doc/classes/CPUParticles3D.xml:151 doc/classes/CPUParticles3D.xml:154
+msgid "Unused for 3D particles."
+msgstr ""
+
+#: doc/classes/CPUParticles3D.xml:172
+msgid ""
+"The rectangle's extents if [member emission_shape] is set to [constant "
+"EMISSION_SHAPE_BOX]."
+msgstr ""
+
+#: doc/classes/CPUParticles3D.xml:187
+msgid ""
+"The sphere's radius if [enum EmissionShape] is set to [constant "
+"EMISSION_SHAPE_SPHERE]."
+msgstr ""
+
+#: doc/classes/CPUParticles3D.xml:196
+msgid ""
+"The particle system's frame rate is fixed to a value. For instance, changing "
+"the value to 2 will make the particles render at 2 frames per second. Note "
+"this does not slow down the particle system itself."
+msgstr ""
+
+#: doc/classes/CPUParticles3D.xml:202 doc/classes/ParticlesMaterial.xml:177
+msgid "If [code]true[/code], particles will not move on the z axis."
+msgstr ""
+
+#: doc/classes/CPUParticles3D.xml:205 doc/classes/ParticlesMaterial.xml:180
+msgid "If [code]true[/code], particles rotate around Y axis by [member angle]."
+msgstr ""
+
+#: doc/classes/CPUParticles3D.xml:208 doc/classes/ParticlesMaterial.xml:183
+msgid ""
+"Amount of [member spread] in Y/Z plane. A value of [code]1[/code] restricts "
+"particles to X/Z plane."
+msgstr ""
+
+#: doc/classes/CPUParticles3D.xml:250
+msgid ""
+"The [Mesh] used for each particle. If [code]null[/code], particles will be "
+"spheres."
+msgstr ""
+
+#: doc/classes/CPUParticles3D.xml:256
+msgid ""
+"Orbital velocity applied to each particle. Makes the particles circle around "
+"origin in the local XY plane. Specified in number of full rotations around "
+"origin per second.\n"
+"This property is only available when [member flag_disable_z] is [code]true[/"
+"code]."
+msgstr ""
+
+#: doc/classes/CPUParticles3D.xml:293 doc/classes/ParticlesMaterial.xml:244
+msgid ""
+"Each particle's initial direction range from [code]+spread[/code] to [code]-"
+"spread[/code] degrees. Applied to X/Z plane and Y/Z planes."
+msgstr ""
+
+#: doc/classes/CPUParticles3D.xml:313 doc/classes/GPUParticles3D.xml:116
+msgid "Particles are drawn in order of depth."
+msgstr ""
+
+#: doc/classes/CPUParticles3D.xml:358
+msgid "Use with [method set_particle_flag] to set [member flag_rotate_y]."
+msgstr ""
+
+#: doc/classes/CPUParticles3D.xml:361
+msgid "Use with [method set_particle_flag] to set [member flag_disable_z]."
+msgstr ""
+
+#: doc/classes/CPUParticles3D.xml:370 doc/classes/ParticlesMaterial.xml:321
+msgid "Particles will be emitted in the volume of a sphere."
+msgstr ""
+
+#: doc/classes/CPUParticles3D.xml:373 doc/classes/ParticlesMaterial.xml:324
+msgid "Particles will be emitted in the volume of a box."
+msgstr ""
+
+#: doc/classes/Crypto.xml:4
+msgid "Access to advanced cryptographic functionalities."
+msgstr ""
+
+#: doc/classes/Crypto.xml:7
+msgid ""
+"The Crypto class allows you to access some more advanced cryptographic "
+"functionalities in Godot.\n"
+"For now, this includes generating cryptographically secure random bytes, RSA "
+"keys and self-signed X509 certificates generation, asymmetric key encryption/"
+"decryption, and signing/verification.\n"
+"[codeblock]\n"
+"extends Node\n"
+"\n"
+"var crypto = Crypto.new()\n"
+"var key = CryptoKey.new()\n"
+"var cert = X509Certificate.new()\n"
+"\n"
+"func _ready():\n"
+" # Generate new RSA key.\n"
+" key = crypto.generate_rsa(4096)\n"
+" # Generate new self-signed certificate with the given key.\n"
+" cert = crypto.generate_self_signed_certificate(key, \"CN=mydomain.com,"
+"O=My Game Company,C=IT\")\n"
+" # Save key and certificate in the user folder.\n"
+" key.save(\"user://generated.key\")\n"
+" cert.save(\"user://generated.crt\")\n"
+" # Encryption\n"
+" var data = \"Some data\"\n"
+" var encrypted = crypto.encrypt(key, data.to_utf8())\n"
+" # Decryption\n"
+" var decrypted = crypto.decrypt(key, encrypted)\n"
+" # Signing\n"
+" var signature = crypto.sign(HashingContext.HASH_SHA256, data."
+"sha256_buffer(), key)\n"
+" # Verifying\n"
+" var verified = crypto.verify(HashingContext.HASH_SHA256, data."
+"sha256_buffer(), signature, key)\n"
+" # Checks\n"
+" assert(verified)\n"
+" assert(data.to_utf8() == decrypted)\n"
+"[/codeblock]\n"
+"[b]Note:[/b] Not available in HTML5 exports."
+msgstr ""
+
+#: doc/classes/Crypto.xml:50
+msgid ""
+"Decrypt the given [code]ciphertext[/code] with the provided private "
+"[code]key[/code].\n"
+"[b]Note[/b]: The maximum size of accepted ciphertext is limited by the key "
+"size."
+msgstr ""
+
+#: doc/classes/Crypto.xml:62
+msgid ""
+"Encrypt the given [code]plaintext[/code] with the provided public [code]key[/"
+"code].\n"
+"[b]Note[/b]: The maximum size of accepted plaintext is limited by the key "
+"size."
+msgstr ""
+
+#: doc/classes/Crypto.xml:72
+msgid ""
+"Generates a [PackedByteArray] of cryptographically secure random bytes with "
+"given [code]size[/code]."
+msgstr ""
+
+#: doc/classes/Crypto.xml:81
+msgid ""
+"Generates an RSA [CryptoKey] that can be used for creating self-signed "
+"certificates and passed to [method StreamPeerSSL.accept_stream]."
+msgstr ""
+
+#: doc/classes/Crypto.xml:96
+msgid ""
+"Generates a self-signed [X509Certificate] from the given [CryptoKey] and "
+"[code]issuer_name[/code]. The certificate validity will be defined by "
+"[code]not_before[/code] and [code]not_after[/code] (first valid date and "
+"last valid date). The [code]issuer_name[/code] must contain at least \"CN="
+"\" (common name, i.e. the domain name), \"O=\" (organization, i.e. your "
+"company name), \"C=\" (country, i.e. 2 lettered ISO-3166 code of the country "
+"the organization is based in).\n"
+"A small example to generate an RSA key and a X509 self-signed certificate.\n"
+"[codeblock]\n"
+"var crypto = Crypto.new()\n"
+"# Generate 4096 bits RSA key.\n"
+"var key = crypto.generate_rsa(4096)\n"
+"# Generate self-signed certificate using the given key.\n"
+"var cert = crypto.generate_self_signed_certificate(key, \"CN=example.com,O=A "
+"Game Company,C=IT\")\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Crypto.xml:117
+msgid ""
+"Sign a given [code]hash[/code] of type [code]hash_type[/code] with the "
+"provided private [code]key[/code]."
+msgstr ""
+
+#: doc/classes/Crypto.xml:132
+msgid ""
+"Verify that a given [code]signature[/code] for [code]hash[/code] of type "
+"[code]hash_type[/code] against the provided public [code]key[/code]."
+msgstr ""
+
+#: doc/classes/CryptoKey.xml:4
+msgid "A cryptographic key (RSA)."
+msgstr ""
+
+#: doc/classes/CryptoKey.xml:7
+msgid ""
+"The CryptoKey class represents a cryptographic key. Keys can be loaded and "
+"saved like any other [Resource].\n"
+"They can be used to generate a self-signed [X509Certificate] via [method "
+"Crypto.generate_self_signed_certificate] and as private key in [method "
+"StreamPeerSSL.accept_stream] along with the appropriate certificate.\n"
+"[b]Note:[/b] Not available in HTML5 exports."
+msgstr ""
+
+#: doc/classes/CryptoKey.xml:18
+msgid ""
+"Return [code]true[/code] if this CryptoKey only has the public part, and not "
+"the private one."
+msgstr ""
+
+#: doc/classes/CryptoKey.xml:29
+msgid ""
+"Loads a key from [code]path[/code]. If [code]public_only[/code] is "
+"[code]true[/code], only the public key will be loaded.\n"
+"[b]Note[/b]: [code]path[/code] should should be a \"*.pub\" file if "
+"[code]public_only[/code] is [code]true[/code], a \"*.key\" file otherwise."
+msgstr ""
+
+#: doc/classes/CryptoKey.xml:41
+msgid ""
+"Loads a key from the given [code]string[/code]. If [code]public_only[/code] "
+"is [code]true[/code], only the public key will be loaded."
+msgstr ""
+
+#: doc/classes/CryptoKey.xml:52
+msgid ""
+"Saves a key to the given [code]path[/code]. If [code]public_only[/code] is "
+"[code]true[/code], only the public key will be saved.\n"
+"[b]Note[/b]: [code]path[/code] should should be a \"*.pub\" file if "
+"[code]public_only[/code] is [code]true[/code], a \"*.key\" file otherwise."
+msgstr ""
+
+#: doc/classes/CryptoKey.xml:62
+msgid ""
+"Returns a string containing the key in PEM format. If [code]public_only[/"
+"code] is [code]true[/code], only the public key will be included."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGBox3D.xml:4
+msgid "A CSG Box shape."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGBox3D.xml:7
+msgid "This node allows you to create a box for use with the CSG system."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGBox3D.xml:15
+msgid "Depth of the box measured from the center of the box."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGBox3D.xml:18
+msgid "Height of the box measured from the center of the box."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGBox3D.xml:21
+msgid "The material used to render the box."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGBox3D.xml:24
+msgid "Width of the box measured from the center of the box."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGCombiner3D.xml:4
+msgid "A CSG node that allows you to combine other CSG modifiers."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGCombiner3D.xml:7
+msgid ""
+"For complex arrangements of shapes, it is sometimes needed to add structure "
+"to your CSG nodes. The CSGCombiner3D node allows you to create this "
+"structure. The node encapsulates the result of the CSG operations of its "
+"children. In this way, it is possible to do operations on one set of shapes "
+"that are children of one CSGCombiner3D node, and a set of separate "
+"operations on a second set of shapes that are children of a second "
+"CSGCombiner3D node, and then do an operation that takes the two end results "
+"as its input to create the final shape."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGCylinder3D.xml:4
+msgid "A CSG Cylinder shape."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGCylinder3D.xml:7
+msgid ""
+"This node allows you to create a cylinder (or cone) for use with the CSG "
+"system."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGCylinder3D.xml:15
+msgid ""
+"If [code]true[/code] a cone is created, the [member radius] will only apply "
+"to one side."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGCylinder3D.xml:18
+msgid "The height of the cylinder."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGCylinder3D.xml:21
+msgid "The material used to render the cylinder."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGCylinder3D.xml:24
+msgid "The radius of the cylinder."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGCylinder3D.xml:27
+msgid ""
+"The number of sides of the cylinder, the higher this number the more detail "
+"there will be in the cylinder."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGCylinder3D.xml:30
+msgid ""
+"If [code]true[/code] the normals of the cylinder are set to give a smooth "
+"effect making the cylinder seem rounded. If [code]false[/code] the cylinder "
+"will have a flat shaded look."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGMesh3D.xml:4
+msgid "A CSG Mesh shape that uses a mesh resource."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGMesh3D.xml:7
+msgid ""
+"This CSG node allows you to use any mesh resource as a CSG shape, provided "
+"it is closed, does not self-intersect, does not contain internal faces and "
+"has no edges that connect to more then two faces."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGMesh3D.xml:15
+msgid "The [Material] used in drawing the CSG shape."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGMesh3D.xml:18
+msgid "The [Mesh] resource to use as a CSG shape."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon3D.xml:4
+msgid "Extrudes a 2D polygon shape to create a 3D mesh."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon3D.xml:7
+msgid "This node takes a 2D polygon shape and extrudes it to create a 3D mesh."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon3D.xml:15
+msgid "Extrusion depth when [member mode] is [constant MODE_DEPTH]."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon3D.xml:18
+msgid "Material to use for the resulting mesh."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon3D.xml:21
+msgid "Extrusion mode."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon3D.xml:24
+msgid ""
+"If [code]true[/code] the u component of our uv will continuously increase in "
+"unison with the distance traveled along our path when [member mode] is "
+"[constant MODE_PATH]."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon3D.xml:27
+msgid ""
+"Interval at which a new extrusion slice is added along the path when [member "
+"mode] is [constant MODE_PATH]."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon3D.xml:30
+msgid ""
+"If [code]true[/code] the start and end of our path are joined together "
+"ensuring there is no seam when [member mode] is [constant MODE_PATH]."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon3D.xml:33
+msgid ""
+"If [code]false[/code] we extrude centered on our path, if [code]true[/code] "
+"we extrude in relation to the position of our CSGPolygon3D when [member "
+"mode] is [constant MODE_PATH]."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon3D.xml:36
+msgid ""
+"The [Shape3D] object containing the path along which we extrude when [member "
+"mode] is [constant MODE_PATH]."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon3D.xml:39
+msgid ""
+"The method by which each slice is rotated along the path when [member mode] "
+"is [constant MODE_PATH]."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon3D.xml:42
+msgid "Point array that defines the shape that we'll extrude."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon3D.xml:45
+msgid "Generates smooth normals so smooth shading is applied to our mesh."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon3D.xml:48
+msgid ""
+"Degrees to rotate our extrusion for each slice when [member mode] is "
+"[constant MODE_SPIN]."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon3D.xml:51
+msgid "Number of extrusion when [member mode] is [constant MODE_SPIN]."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon3D.xml:56
+msgid "Shape3D is extruded to [member depth]."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon3D.xml:59
+msgid "Shape3D is extruded by rotating it around an axis."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon3D.xml:62
+msgid ""
+"Shape3D is extruded along a path set by a [Shape3D] set in [member "
+"path_node]."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon3D.xml:65
+msgid "Slice is not rotated."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon3D.xml:68
+msgid "Slice is rotated around the up vector of the path."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon3D.xml:71
+msgid "Slice is rotate to match the path exactly."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPrimitive3D.xml:4
+msgid "Base class for CSG primitives."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPrimitive3D.xml:7
+msgid ""
+"Parent class for various CSG primitives. It contains code and functionality "
+"that is common between them. It cannot be used directly. Instead use one of "
+"the various classes that inherit from it."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPrimitive3D.xml:15
+msgid "Invert the faces of the mesh."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape3D.xml:4
+msgid "The CSG base class."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape3D.xml:7
+msgid ""
+"This is the CSG base class that provides CSG operation support to the "
+"various CSG nodes in Godot."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape3D.xml:34
+msgid ""
+"Returns an [Array] with two elements, the first is the [Transform] of this "
+"node and the second is the root [Mesh] of this node. Only works when this "
+"node is the root shape."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape3D.xml:41
+msgid ""
+"Returns [code]true[/code] if this is a root shape and is thus the object "
+"that is rendered."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape3D.xml:52 doc/classes/SoftBody3D.xml:64
+msgid ""
+"Sets individual bits on the layer mask. Use this if you only need to change "
+"one layer's value."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape3D.xml:63 doc/classes/SoftBody3D.xml:75
+msgid ""
+"Sets individual bits on the collision mask. Use this if you only need to "
+"change one layer's value."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape3D.xml:69
+msgid ""
+"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."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape3D.xml:72
+msgid ""
+"The physics layers this area is in.\n"
+"Collidable objects can exist in any of 32 different layers. These layers "
+"work like a tagging system, and are not visual. A collidable can use these "
+"layers to select with which objects it can collide, using the collision_mask "
+"property.\n"
+"A contact is detected if object A is in any of the layers that object B "
+"scans, or object B is in any layer scanned by object A."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape3D.xml:77
+msgid "The physics layers this CSG shape scans for collisions."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape3D.xml:80
+msgid ""
+"The operation that is performed on this shape. This is ignored for the first "
+"CSG child node as the operation is between this node and the previous child "
+"of this nodes parent."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape3D.xml:83
+msgid ""
+"Snap makes the mesh snap to a given distance so that the faces of two meshes "
+"can be perfectly aligned. A lower value results in greater precision but may "
+"be harder to adjust."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape3D.xml:86
+msgid ""
+"Adds a collision shape to the physics engine for our CSG shape. This will "
+"always act like a static body. Note that the collision shape is still active "
+"even if the CSG shape itself is hidden."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape3D.xml:91
+msgid ""
+"Geometry of both primitives is merged, intersecting geometry is removed."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape3D.xml:94
+msgid "Only intersecting geometry remains, the rest is removed."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape3D.xml:97
+msgid ""
+"The second shape is subtracted from the first, leaving a dent with its shape."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGSphere3D.xml:4
+msgid "A CSG Sphere shape."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGSphere3D.xml:7
+msgid "This node allows you to create a sphere for use with the CSG system."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGSphere3D.xml:15
+msgid "The material used to render the sphere."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGSphere3D.xml:18
+msgid "Number of vertical slices for the sphere."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGSphere3D.xml:21
+msgid "Radius of the sphere."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGSphere3D.xml:24
+msgid "Number of horizontal slices for the sphere."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGSphere3D.xml:27
+msgid ""
+"If [code]true[/code] the normals of the sphere are set to give a smooth "
+"effect making the sphere seem rounded. If [code]false[/code] the sphere will "
+"have a flat shaded look."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGTorus3D.xml:4
+msgid "A CSG Torus shape."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGTorus3D.xml:7
+msgid "This node allows you to create a torus for use with the CSG system."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGTorus3D.xml:15
+msgid "The inner radius of the torus."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGTorus3D.xml:18
+msgid "The material used to render the torus."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGTorus3D.xml:21
+msgid "The outer radius of the torus."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGTorus3D.xml:24
+msgid "The number of edges each ring of the torus is constructed of."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGTorus3D.xml:27
+msgid "The number of slices the torus is constructed of."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGTorus3D.xml:30
+msgid ""
+"If [code]true[/code] the normals of the torus are set to give a smooth "
+"effect making the torus seem rounded. If [code]false[/code] the torus will "
+"have a flat shaded look."
+msgstr ""
+
+#: modules/mono/doc_classes/CSharpScript.xml:4
+msgid ""
+"A script implemented in the C# programming language (Mono-enabled builds "
+"only)."
+msgstr ""
+
+#: modules/mono/doc_classes/CSharpScript.xml:7
+msgid ""
+"This class represents a C# script. It is the C# equivalent of the [GDScript] "
+"class and is only available in Mono-enabled Godot builds.\n"
+"See also [GodotSharp]."
+msgstr ""
+
+#: modules/mono/doc_classes/CSharpScript.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/getting_started/scripting/c_sharp/"
+"index.html"
+msgstr ""
+
+#: modules/mono/doc_classes/CSharpScript.xml:18
+#: modules/gdnative/doc_classes/PluginScript.xml:14
+msgid "Returns a new instance of the script."
+msgstr ""
+
+#: doc/classes/CubeMesh.xml:4
+msgid "Generate an axis-aligned cuboid [PrimitiveMesh]."
+msgstr ""
+
+#: doc/classes/CubeMesh.xml:7
+msgid ""
+"Generate an axis-aligned cuboid [PrimitiveMesh].\n"
+"The cube's UV layout is arranged in a 3×2 layout that allows texturing each "
+"face individually. To apply the same texture on all faces, change the "
+"material's UV property to [code]Vector3(3, 2, 1)[/code]."
+msgstr ""
+
+#: doc/classes/CubeMesh.xml:16
+msgid "Size of the cuboid mesh."
+msgstr ""
+
+#: doc/classes/CubeMesh.xml:19
+msgid "Number of extra edge loops inserted along the Z axis."
+msgstr ""
+
+#: doc/classes/CubeMesh.xml:22
+msgid "Number of extra edge loops inserted along the Y axis."
+msgstr ""
+
+#: doc/classes/CubeMesh.xml:25
+msgid "Number of extra edge loops inserted along the X axis."
+msgstr ""
+
+#: doc/classes/Curve.xml:4
+msgid "A mathematic curve."
+msgstr ""
+
+#: doc/classes/Curve.xml:7
+msgid ""
+"A curve that can be saved and re-used for other objects. By default, it "
+"ranges between [code]0[/code] and [code]1[/code] on the Y axis and positions "
+"points relative to the [code]0.5[/code] Y position."
+msgstr ""
+
+#: doc/classes/Curve.xml:26
+msgid ""
+"Adds a point to the curve. For each side, if the [code]*_mode[/code] is "
+"[constant TANGENT_LINEAR], the [code]*_tangent[/code] angle (in degrees) "
+"uses the slope of the curve halfway to the adjacent point. Allows custom "
+"assignments to the [code]*_tangent[/code] angle if [code]*_mode[/code] is "
+"set to [constant TANGENT_FREE]."
+msgstr ""
+
+#: doc/classes/Curve.xml:33
+msgid "Recomputes the baked cache of points for the curve."
+msgstr ""
+
+#: doc/classes/Curve.xml:40
+msgid ""
+"Removes points that are closer than [code]CMP_EPSILON[/code] (0.00001) units "
+"to their neighbor on the curve."
+msgstr ""
+
+#: doc/classes/Curve.xml:47 doc/classes/Curve2D.xml:33
+#: doc/classes/Curve3D.xml:33
+msgid "Removes all points from the curve."
+msgstr ""
+
+#: doc/classes/Curve.xml:54 doc/classes/Curve2D.xml:74
+#: doc/classes/Curve3D.xml:89
+msgid "Returns the number of points describing the curve."
+msgstr ""
+
+#: doc/classes/Curve.xml:63
+msgid ""
+"Returns the left [enum TangentMode] for the point at [code]index[/code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:72
+msgid ""
+"Returns the left tangent angle (in degrees) for the point at [code]index[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:81
+msgid "Returns the curve coordinates for the point at [code]index[/code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:90
+msgid ""
+"Returns the right [enum TangentMode] for the point at [code]index[/code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:99
+msgid ""
+"Returns the right tangent angle (in degrees) for the point at [code]index[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:108
+msgid ""
+"Returns the Y value for the point that would exist at the X position "
+"[code]offset[/code] along the curve."
+msgstr ""
+
+#: doc/classes/Curve.xml:117
+msgid ""
+"Returns the Y value for the point that would exist at the X position "
+"[code]offset[/code] along the curve using the baked cache. Bakes the curve's "
+"points if not already baked."
+msgstr ""
+
+#: doc/classes/Curve.xml:126
+msgid "Removes the point at [code]index[/code] from the curve."
+msgstr ""
+
+#: doc/classes/Curve.xml:137
+msgid ""
+"Sets the left [enum TangentMode] for the point at [code]index[/code] to "
+"[code]mode[/code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:148
+msgid ""
+"Sets the left tangent angle for the point at [code]index[/code] to "
+"[code]tangent[/code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:159
+msgid "Sets the offset from [code]0.5[/code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:170
+msgid ""
+"Sets the right [enum TangentMode] for the point at [code]index[/code] to "
+"[code]mode[/code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:181
+msgid ""
+"Sets the right tangent angle for the point at [code]index[/code] to "
+"[code]tangent[/code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:192
+msgid ""
+"Assigns the vertical position [code]y[/code] to the point at [code]index[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:198
+msgid "The number of points to include in the baked (i.e. cached) curve data."
+msgstr ""
+
+#: doc/classes/Curve.xml:201
+msgid "The maximum value the curve can reach."
+msgstr ""
+
+#: doc/classes/Curve.xml:204
+msgid "The minimum value the curve can reach."
+msgstr ""
+
+#: doc/classes/Curve.xml:210
+msgid "Emitted when [member max_value] or [member min_value] is changed."
+msgstr ""
+
+#: doc/classes/Curve.xml:216
+msgid "The tangent on this side of the point is user-defined."
+msgstr ""
+
+#: doc/classes/Curve.xml:219
+msgid ""
+"The curve calculates the tangent on this side of the point as the slope "
+"halfway towards the adjacent point."
+msgstr ""
+
+#: doc/classes/Curve.xml:222
+msgid "The total number of available tangent modes."
+msgstr ""
+
+#: doc/classes/Curve2D.xml:4
+msgid "Describes a Bézier curve in 2D space."
+msgstr ""
+
+#: doc/classes/Curve2D.xml:7
+msgid ""
+"This class describes a Bézier curve in 2D space. It is mainly used to give a "
+"shape to a [Path2D], but can be manually sampled for other purposes.\n"
+"It keeps a cache of precalculated points along the curve, to speed up "
+"further calculations."
+msgstr ""
+
+#: doc/classes/Curve2D.xml:25 doc/classes/Curve3D.xml:25
+msgid ""
+"Adds a point to a curve at [code]position[/code], with control points "
+"[code]in[/code] and [code]out[/code].\n"
+"If [code]at_position[/code] is given, the point is inserted before the point "
+"number [code]at_position[/code], moving that point (and every point after) "
+"after the inserted point. If [code]at_position[/code] is not given, or is an "
+"illegal value ([code]at_position <0[/code] or [code]at_position >= [method "
+"get_point_count][/code]), the point will be appended at the end of the point "
+"list."
+msgstr ""
+
+#: doc/classes/Curve2D.xml:40 doc/classes/Curve3D.xml:40
+msgid ""
+"Returns the total length of the curve, based on the cached points. Given "
+"enough density (see [member bake_interval]), it should be approximate enough."
+msgstr ""
+
+#: doc/classes/Curve2D.xml:47
+msgid "Returns the cache of points as a [PackedVector2Array]."
+msgstr ""
+
+#: doc/classes/Curve2D.xml:56
+msgid ""
+"Returns the closest offset to [code]to_point[/code]. This offset is meant to "
+"be used in [method interpolate_baked].\n"
+"[code]to_point[/code] must be in this curve's local space."
+msgstr ""
+
+#: doc/classes/Curve2D.xml:66 doc/classes/Curve3D.xml:81
+msgid ""
+"Returns the closest point (in curve's local space) to [code]to_point[/"
+"code].\n"
+"[code]to_point[/code] must be in this curve's local space."
+msgstr ""
+
+#: doc/classes/Curve2D.xml:83
+msgid ""
+"Returns the position of the control point leading to the vertex [code]idx[/"
+"code]. If the index is out of bounds, the function sends an error to the "
+"console, and returns [code](0, 0)[/code]."
+msgstr ""
+
+#: doc/classes/Curve2D.xml:92
+msgid ""
+"Returns the position of the control point leading out of the vertex "
+"[code]idx[/code]. If the index is out of bounds, the function sends an error "
+"to the console, and returns [code](0, 0)[/code]."
+msgstr ""
+
+#: doc/classes/Curve2D.xml:101
+msgid ""
+"Returns the position of the vertex [code]idx[/code]. If the index is out of "
+"bounds, the function sends an error to the console, and returns [code](0, 0)"
+"[/code]."
+msgstr ""
+
+#: doc/classes/Curve2D.xml:112
+msgid ""
+"Returns the position between the vertex [code]idx[/code] and the vertex "
+"[code]idx + 1[/code], where [code]t[/code] controls if the point is the "
+"first vertex ([code]t = 0.0[/code]), the last vertex ([code]t = 1.0[/code]), "
+"or in between. Values of [code]t[/code] outside the range ([code]0.0 >= t "
+"<=1[/code]) give strange, but predictable results.\n"
+"If [code]idx[/code] is out of bounds it is truncated to the first or last "
+"vertex, and [code]t[/code] is ignored. If the curve has no points, the "
+"function sends an error to the console, and returns [code](0, 0)[/code]."
+msgstr ""
+
+#: doc/classes/Curve2D.xml:124 doc/classes/Curve3D.xml:148
+msgid ""
+"Returns a point within the curve at position [code]offset[/code], where "
+"[code]offset[/code] is measured as a pixel distance along the curve.\n"
+"To do that, it finds the two cached points where the [code]offset[/code] "
+"lies between, then interpolates the values. This interpolation is cubic if "
+"[code]cubic[/code] is set to [code]true[/code], or linear if set to "
+"[code]false[/code].\n"
+"Cubic interpolation tends to follow the curves better, but linear is faster "
+"(and often, precise enough)."
+msgstr ""
+
+#: doc/classes/Curve2D.xml:135 doc/classes/Curve3D.xml:172
+msgid ""
+"Returns the position at the vertex [code]fofs[/code]. It calls [method "
+"interpolate] using the integer part of [code]fofs[/code] as [code]idx[/"
+"code], and its fractional part as [code]t[/code]."
+msgstr ""
+
+#: doc/classes/Curve2D.xml:144 doc/classes/Curve3D.xml:181
+msgid ""
+"Deletes the point [code]idx[/code] from the curve. Sends an error to the "
+"console if [code]idx[/code] is out of bounds."
+msgstr ""
+
+#: doc/classes/Curve2D.xml:155 doc/classes/Curve3D.xml:192
+msgid ""
+"Sets the position of the control point leading to the vertex [code]idx[/"
+"code]. If the index is out of bounds, the function sends an error to the "
+"console."
+msgstr ""
+
+#: doc/classes/Curve2D.xml:166 doc/classes/Curve3D.xml:203
+msgid ""
+"Sets the position of the control point leading out of the vertex [code]idx[/"
+"code]. If the index is out of bounds, the function sends an error to the "
+"console."
+msgstr ""
+
+#: doc/classes/Curve2D.xml:177 doc/classes/Curve3D.xml:214
+msgid ""
+"Sets the position for the vertex [code]idx[/code]. If the index is out of "
+"bounds, the function sends an error to the console."
+msgstr ""
+
+#: doc/classes/Curve2D.xml:188 doc/classes/Curve3D.xml:237
+msgid ""
+"Returns a list of points along the curve, with a curvature controlled point "
+"density. That is, the curvier parts will have more points than the "
+"straighter parts.\n"
+"This approximation makes straight segments between each point, then "
+"subdivides those segments until the resulting shape is similar enough.\n"
+"[code]max_stages[/code] controls how many subdivisions a curve segment may "
+"face before it is considered approximate enough. Each subdivision splits the "
+"segment in half, so the default 5 stages may mean up to 32 subdivisions per "
+"curve segment. Increase with care!\n"
+"[code]tolerance_degrees[/code] controls how many degrees the midpoint of a "
+"segment may deviate from the real curve, before the segment has to be "
+"subdivided."
+msgstr ""
+
+#: doc/classes/Curve2D.xml:197
+msgid ""
+"The distance in pixels between two adjacent cached points. Changing it "
+"forces the cache to be recomputed the next time the [method "
+"get_baked_points] or [method get_baked_length] function is called. The "
+"smaller the distance, the more points in the cache and the more memory it "
+"will consume, so use with care."
+msgstr ""
+
+#: doc/classes/Curve3D.xml:4
+msgid "Describes a Bézier curve in 3D space."
+msgstr ""
+
+#: doc/classes/Curve3D.xml:7
+msgid ""
+"This class describes a Bézier curve in 3D space. It is mainly used to give a "
+"shape to a [Path3D], but can be manually sampled for other purposes.\n"
+"It keeps a cache of precalculated points along the curve, to speed up "
+"further calculations."
+msgstr ""
+
+#: doc/classes/Curve3D.xml:47
+msgid "Returns the cache of points as a [PackedVector3Array]."
+msgstr ""
+
+#: doc/classes/Curve3D.xml:54
+msgid "Returns the cache of tilts as a [PackedFloat32Array]."
+msgstr ""
+
+#: doc/classes/Curve3D.xml:61
+msgid ""
+"Returns the cache of up vectors as a [PackedVector3Array].\n"
+"If [member up_vector_enabled] is [code]false[/code], the cache will be empty."
+msgstr ""
+
+#: doc/classes/Curve3D.xml:71
+msgid ""
+"Returns the closest offset to [code]to_point[/code]. This offset is meant to "
+"be used in [method interpolate_baked] or [method "
+"interpolate_baked_up_vector].\n"
+"[code]to_point[/code] must be in this curve's local space."
+msgstr ""
+
+#: doc/classes/Curve3D.xml:98
+msgid ""
+"Returns the position of the control point leading to the vertex [code]idx[/"
+"code]. If the index is out of bounds, the function sends an error to the "
+"console, and returns [code](0, 0, 0)[/code]."
+msgstr ""
+
+#: doc/classes/Curve3D.xml:107
+msgid ""
+"Returns the position of the control point leading out of the vertex "
+"[code]idx[/code]. If the index is out of bounds, the function sends an error "
+"to the console, and returns [code](0, 0, 0)[/code]."
+msgstr ""
+
+#: doc/classes/Curve3D.xml:116
+msgid ""
+"Returns the position of the vertex [code]idx[/code]. If the index is out of "
+"bounds, the function sends an error to the console, and returns [code](0, 0, "
+"0)[/code]."
+msgstr ""
+
+#: doc/classes/Curve3D.xml:125
+msgid ""
+"Returns the tilt angle in radians for the point [code]idx[/code]. If the "
+"index is out of bounds, the function sends an error to the console, and "
+"returns [code]0[/code]."
+msgstr ""
+
+#: doc/classes/Curve3D.xml:136
+msgid ""
+"Returns the position between the vertex [code]idx[/code] and the vertex "
+"[code]idx + 1[/code], where [code]t[/code] controls if the point is the "
+"first vertex ([code]t = 0.0[/code]), the last vertex ([code]t = 1.0[/code]), "
+"or in between. Values of [code]t[/code] outside the range ([code]0.0 >= t "
+"<=1[/code]) give strange, but predictable results.\n"
+"If [code]idx[/code] is out of bounds it is truncated to the first or last "
+"vertex, and [code]t[/code] is ignored. If the curve has no points, the "
+"function sends an error to the console, and returns [code](0, 0, 0)[/code]."
+msgstr ""
+
+#: doc/classes/Curve3D.xml:161
+msgid ""
+"Returns an up vector within the curve at position [code]offset[/code], where "
+"[code]offset[/code] is measured as a distance in 3D units along the curve.\n"
+"To do that, it finds the two cached up vectors where the [code]offset[/code] "
+"lies between, then interpolates the values. If [code]apply_tilt[/code] is "
+"[code]true[/code], an interpolated tilt is applied to the interpolated up "
+"vector.\n"
+"If the curve has no up vectors, the function sends an error to the console, "
+"and returns [code](0, 1, 0)[/code]."
+msgstr ""
+
+#: doc/classes/Curve3D.xml:225
+msgid ""
+"Sets the tilt angle in radians for the point [code]idx[/code]. If the index "
+"is out of bounds, the function sends an error to the console.\n"
+"The tilt controls the rotation along the look-at axis an object traveling "
+"the path would have. In the case of a curve controlling a [PathFollow3D], "
+"this tilt is an offset over the natural tilt the [PathFollow3D] calculates."
+msgstr ""
+
+#: doc/classes/Curve3D.xml:246
+msgid ""
+"The distance in meters between two adjacent cached points. Changing it "
+"forces the cache to be recomputed the next time the [method "
+"get_baked_points] or [method get_baked_length] function is called. The "
+"smaller the distance, the more points in the cache and the more memory it "
+"will consume, so use with care."
+msgstr ""
+
+#: doc/classes/Curve3D.xml:249
+msgid ""
+"If [code]true[/code], the curve will bake up vectors used for orientation. "
+"This is used when [member PathFollow3D.rotation_mode] is set to [constant "
+"PathFollow3D.ROTATION_ORIENTED]. Changing it forces the cache to be "
+"recomputed."
+msgstr ""
+
+#: doc/classes/CurveTexture.xml:4
+msgid "A texture that shows a curve."
+msgstr ""
+
+#: doc/classes/CurveTexture.xml:7
+msgid ""
+"Renders a given [Curve] provided to it. Simplifies the task of drawing "
+"curves and/or saving them as image files."
+msgstr ""
+
+#: doc/classes/CurveTexture.xml:15
+msgid "The [code]curve[/code] rendered onto the texture."
+msgstr ""
+
+#: doc/classes/CurveTexture.xml:18
+msgid "The width of the texture."
+msgstr ""
+
+#: doc/classes/CylinderMesh.xml:4
+msgid "Class representing a cylindrical [PrimitiveMesh]."
+msgstr ""
+
+#: doc/classes/CylinderMesh.xml:7
+msgid ""
+"Class representing a cylindrical [PrimitiveMesh]. This class can be used to "
+"create cones by setting either the [member top_radius] or [member "
+"bottom_radius] properties to 0.0."
+msgstr ""
+
+#: doc/classes/CylinderMesh.xml:15
+msgid "Bottom radius of the cylinder."
+msgstr ""
+
+#: doc/classes/CylinderMesh.xml:18
+msgid "Full height of the cylinder."
+msgstr ""
+
+#: doc/classes/CylinderMesh.xml:21
+msgid "Number of radial segments on the cylinder."
+msgstr ""
+
+#: doc/classes/CylinderMesh.xml:24
+msgid "Number of edge rings along the height of the cylinder."
+msgstr ""
+
+#: doc/classes/CylinderMesh.xml:27
+msgid "Top radius of the cylinder."
+msgstr ""
+
+#: doc/classes/CylinderShape3D.xml:4 doc/classes/CylinderShape3D.xml:7
+msgid "Cylinder shape for collisions."
+msgstr ""
+
+#: doc/classes/CylinderShape3D.xml:15
+msgid "The cylinder's height."
+msgstr ""
+
+#: doc/classes/CylinderShape3D.xml:18
+msgid "The cylinder's radius."
+msgstr ""
+
+#: doc/classes/DampedSpringJoint2D.xml:4
+msgid "Damped spring constraint for 2D physics."
+msgstr ""
+
+#: doc/classes/DampedSpringJoint2D.xml:7
+msgid ""
+"Damped spring constraint for 2D physics. This resembles a spring joint that "
+"always wants to go back to a given length."
+msgstr ""
+
+#: doc/classes/DampedSpringJoint2D.xml:15
+msgid ""
+"The spring joint's damping ratio. A value between [code]0[/code] and "
+"[code]1[/code]. When the two bodies move into different directions the "
+"system tries to align them to the spring axis again. A high [code]damping[/"
+"code] value forces the attached bodies to align faster."
+msgstr ""
+
+#: doc/classes/DampedSpringJoint2D.xml:18
+msgid ""
+"The spring joint's maximum length. The two attached bodies cannot stretch it "
+"past this value."
+msgstr ""
+
+#: doc/classes/DampedSpringJoint2D.xml:21
+msgid ""
+"When the bodies attached to the spring joint move they stretch or squash it. "
+"The joint always tries to resize towards this length."
+msgstr ""
+
+#: doc/classes/DampedSpringJoint2D.xml:24
+msgid ""
+"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."
+msgstr ""
+
+#: doc/classes/Decal.xml:4
+msgid "Node that projects a texture onto a [MeshInstance3D]."
+msgstr ""
+
+#: doc/classes/Decal.xml:7
+msgid ""
+"[Decal]s are used to project a texture onto a [Mesh] in the scene. Use "
+"Decals to add detail to a scene without affecting the underlying [Mesh]. "
+"They are often used to add weathering to building, add dirt or mud to the "
+"ground, or add variety to props. Decals can be moved at any time, making "
+"them suitable for things like blob shadows or laser sight dots.\n"
+"They are made of an [AABB] and a group of [Texture2D]s specifying [Color], "
+"normal, ORM (ambient occlusion, roughness, metallic), and emission. Decals "
+"are projected within their [AABB] so altering the orientation of the Decal "
+"affects the direction in which they are projected. By default, Decals are "
+"projected down (i.e. from positive Y to negative Y).\n"
+"The [Texture2D]s associated with the Decal are automatically stored in a "
+"texture atlas which is used for drawing the decals so all decals can be "
+"drawn at once. Godot uses clustered decals, meaning they are stored in "
+"cluster data and drawn when the mesh is drawn, they are not drawn as a "
+"postprocessing effect after."
+msgstr ""
+
+#: doc/classes/Decal.xml:20
+msgid ""
+"Returns the [Texture2D] associated with the specified [enum DecalTexture]. "
+"This is a convenience method, in most cases you should access the texture "
+"directly.\n"
+"For example, instead of [code]albedo_tex = $Decal.get_texture(Decal."
+"TEXTURE_ALBEDO)[/code], use [code]albedo_tex = $Decal.texture_albedo[/"
+"code].\n"
+"One case where this is better than accessing the texture directly is when "
+"you want to copy one Decal's textures to another. For example:\n"
+"[codeblock]\n"
+"for i in Decal.TEXTURE_MAX:\n"
+" $NewDecal.set_texture(i, $OldDecal.get_texture(i))\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Decal.xml:37
+msgid ""
+"Sets the [Texture2D] associated with the specified [enum DecalTexture]. This "
+"is a convenience method, in most cases you should access the texture "
+"directly.\n"
+"For example, instead of [code]$Decal.set_texture(Decal.TEXTURE_ALBEDO, "
+"albedo_tex)[/code], use [code]$Decal.texture_albedo = albedo_tex[/code].\n"
+"One case where this is better than accessing the texture directly is when "
+"you want to copy one Decal's textures to another. For example:\n"
+"[codeblock]\n"
+"for i in Decal.TEXTURE_MAX:\n"
+" $NewDecal.set_texture(i, $OldDecal.get_texture(i))\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Decal.xml:49
+msgid ""
+"Blends the albedo [Color] of the decal with albedo [Color] of the underlying "
+"mesh."
+msgstr ""
+
+#: doc/classes/Decal.xml:52
+msgid ""
+"Specifies which [member VisualInstance3D.layers] this decal will project on. "
+"By default, Decals affect all layers. This is used so you can specify which "
+"types of objects receive the Decal and which do not. This is especially "
+"useful so you an ensure that dynamic objects don't accidentally receive a "
+"Decal intended for the terrain under them."
+msgstr ""
+
+#: doc/classes/Decal.xml:55
+msgid "Distance from the camera at which the Decal begins to fade away."
+msgstr ""
+
+#: doc/classes/Decal.xml:58
+msgid ""
+"If [code]true[/code], decals will smoothly fade away when far from the "
+"active [Camera3D] starting at [member distance_fade_begin]. The Decal will "
+"fade out over [member distance_fade_length], after which it will be culled "
+"and not sent to the shader at all. Use this to reduce the number of active "
+"Decals in a scene and thus improve performance."
+msgstr ""
+
+#: doc/classes/Decal.xml:61
+msgid ""
+"Distance over which the Decal fades. The Decal becomes slowly more "
+"transparent over this distance and is completely invisible at the end."
+msgstr ""
+
+#: doc/classes/Decal.xml:64
+msgid ""
+"Energy multiplier for the emission texture. This will make the decal emit "
+"light at a higher intensity."
+msgstr ""
+
+#: doc/classes/Decal.xml:67
+msgid ""
+"Sets the size of the [AABB] used by the decal. The AABB goes from [code]-"
+"extents[/code] to [code]extents[/code]."
+msgstr ""
+
+#: doc/classes/Decal.xml:70 doc/classes/Decal.xml:91
+msgid ""
+"Sets the curve over which the decal will fade as the surface gets further "
+"from the center of the [AABB]."
+msgstr ""
+
+#: doc/classes/Decal.xml:73
+msgid "Changes the [Color] of the Decal by multiplying it with this value."
+msgstr ""
+
+#: doc/classes/Decal.xml:76
+msgid ""
+"Fades the Decal if the angle between the Decal's [AABB] and the target "
+"surface becomes too large. A value of [code]0[/code] projects the Decal "
+"regardless of angle, a value of [code]1[/code] limits the Decal to surfaces "
+"that are nearly perpendicular."
+msgstr ""
+
+#: doc/classes/Decal.xml:79
+msgid ""
+"[Texture2D] with the base [Color] of the Decal. Either this or the [member "
+"texture_emission] must be set for the Decal to be visible. Use the alpha "
+"channel like a mask to smoothly blend the edges of the decal with the "
+"underlying object."
+msgstr ""
+
+#: doc/classes/Decal.xml:82
+msgid ""
+"[Texture2D] with the emission [Color] of the Decal. Either this or the "
+"[member texture_emission] must be set for the Decal to be visible. Use the "
+"alpha channel like a mask to smoothly blend the edges of the decal with the "
+"underlying object."
+msgstr ""
+
+#: doc/classes/Decal.xml:85
+msgid ""
+"[Texture2D] with the per-pixel normalmap for the decal. Use this to add "
+"extra detail to decals."
+msgstr ""
+
+#: doc/classes/Decal.xml:88
+msgid ""
+"[Texture2D] storing ambient occlusion, roughness, and metallic for the "
+"decal. Use this to add extra detail to decals."
+msgstr ""
+
+#: doc/classes/Decal.xml:96
+msgid "[Texture2D] corresponding to [member texture_albedo]."
+msgstr ""
+
+#: doc/classes/Decal.xml:99
+msgid "[Texture2D] corresponding to [member texture_normal]."
+msgstr ""
+
+#: doc/classes/Decal.xml:102
+msgid "[Texture2D] corresponding to [member texture_orm]."
+msgstr ""
+
+#: doc/classes/Decal.xml:105
+msgid "[Texture2D] corresponding to [member texture_emission]."
+msgstr ""
+
+#: doc/classes/Decal.xml:108
+msgid "Max size of [enum DecalTexture] enum."
+msgstr ""
+
+#: doc/classes/Dictionary.xml:4
+msgid "Dictionary type."
+msgstr ""
+
+#: doc/classes/Dictionary.xml:7
+msgid ""
+"Dictionary type. Associative container which contains values referenced by "
+"unique keys. Dictionaries are composed of pairs of keys (which must be "
+"unique) and values. Dictionaries will preserve the insertion order when "
+"adding elements, even though this may not be reflected when printing the "
+"dictionary. In other programming languages, this data structure is sometimes "
+"referred to as an hash map or associative array.\n"
+"You can define a dictionary by placing a comma-separated list of [code]key: "
+"value[/code] pairs in curly braces [code]{}[/code].\n"
+"Erasing elements while iterating over them [b]is not supported[/b] and will "
+"result in undefined behavior.\n"
+"[b]Note:[/b] Dictionaries are always passed by reference. To get a copy of a "
+"dictionary which can be modified independently of the original dictionary, "
+"use [method duplicate].\n"
+"Creating a dictionary:\n"
+"[codeblock]\n"
+"var my_dir = {} # Creates an empty dictionary.\n"
+"var points_dir = {\"White\": 50, \"Yellow\": 75, \"Orange\": 100}\n"
+"var another_dir = {\n"
+" key1: value1,\n"
+" key2: value2,\n"
+" key3: value3,\n"
+"}\n"
+"[/codeblock]\n"
+"You can access a dictionary's values by referencing the appropriate key. In "
+"the above example, [code]points_dir[\"White\"][/code] will return [code]50[/"
+"code]. You can also write [code]points_dir.White[/code], which is "
+"equivalent. However, you'll have to use the bracket syntax if the key you're "
+"accessing the dictionary with isn't a fixed string (such as a number or "
+"variable).\n"
+"[codeblock]\n"
+"export(String, \"White\", \"Yellow\", \"Orange\") var my_color\n"
+"var points_dir = {\"White\": 50, \"Yellow\": 75, \"Orange\": 100}\n"
+"\n"
+"func _ready():\n"
+" # We can't use dot syntax here as `my_color` is a variable.\n"
+" var points = points_dir[my_color]\n"
+"[/codeblock]\n"
+"In the above code, [code]points[/code] will be assigned the value that is "
+"paired with the appropriate color selected in [code]my_color[/code].\n"
+"Dictionaries can contain more complex data:\n"
+"[codeblock]\n"
+"my_dir = {\"First Array\": [1, 2, 3, 4]} # Assigns an Array to a String "
+"key.\n"
+"[/codeblock]\n"
+"To add a key to an existing dictionary, access it like an existing key and "
+"assign to it:\n"
+"[codeblock]\n"
+"var points_dir = {\"White\": 50, \"Yellow\": 75, \"Orange\": 100}\n"
+"points_dir[\"Blue\"] = 150 # Add \"Blue\" as a key and assign 150 as its "
+"value.\n"
+"[/codeblock]\n"
+"Finally, dictionaries can contain different types of keys and values in the "
+"same dictionary:\n"
+"[codeblock]\n"
+"# This is a valid dictionary.\n"
+"# To access the string \"Nested value\" below, use `my_dir.sub_dir.sub_key` "
+"or `my_dir[\"sub_dir\"][\"sub_key\"]`.\n"
+"# Indexing styles can be mixed and matched depending on your needs.\n"
+"var my_dir = {\n"
+" \"String Key\": 5,\n"
+" 4: [1, 2, 3],\n"
+" 7: \"Hello\",\n"
+" \"sub_dir\": {\"sub_key\": \"Nested value\"},\n"
+"}\n"
+"[/codeblock]\n"
+"[b]Note:[/b] Unlike [Array]s, you can't compare dictionaries directly:\n"
+"[codeblock]\n"
+"array1 = [1, 2, 3]\n"
+"array2 = [1, 2, 3]\n"
+"\n"
+"func compare_arrays():\n"
+" print(array1 == array2) # Will print true.\n"
+"\n"
+"dir1 = {\"a\": 1, \"b\": 2, \"c\": 3}\n"
+"dir2 = {\"a\": 1, \"b\": 2, \"c\": 3}\n"
+"\n"
+"func compare_dictionaries():\n"
+" print(dir1 == dir2) # Will NOT print true.\n"
+"[/codeblock]\n"
+"You need to first calculate the dictionary's hash with [method hash] before "
+"you can compare them:\n"
+"[codeblock]\n"
+"dir1 = {\"a\": 1, \"b\": 2, \"c\": 3}\n"
+"dir2 = {\"a\": 1, \"b\": 2, \"c\": 3}\n"
+"\n"
+"func compare_dictionaries():\n"
+" print(dir1.hash() == dir2.hash()) # Will print true.\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Dictionary.xml:76
+msgid ""
+"https://docs.godotengine.org/en/latest/getting_started/scripting/gdscript/"
+"gdscript_basics.html#dictionary"
+msgstr ""
+
+#: doc/classes/Dictionary.xml:83
+msgid "Clear the dictionary, removing all key/value pairs."
+msgstr ""
+
+#: doc/classes/Dictionary.xml:92
+msgid ""
+"Creates a copy of the dictionary, and returns it. The [code]deep[/code] "
+"parameter causes inner dictionaries and arrays to be copied recursively, but "
+"does not apply to objects."
+msgstr ""
+
+#: doc/classes/Dictionary.xml:99
+msgid "Returns [code]true[/code] if the dictionary is empty."
+msgstr ""
+
+#: doc/classes/Dictionary.xml:108
+msgid ""
+"Erase a dictionary key/value pair by key. Returns [code]true[/code] if the "
+"given key was present in the dictionary, [code]false[/code] otherwise. Does "
+"not erase elements while iterating over the dictionary."
+msgstr ""
+
+#: doc/classes/Dictionary.xml:119
+msgid ""
+"Returns the current value for the specified key in the [Dictionary]. If the "
+"key does not exist, the method returns the value of the optional default "
+"argument, or [code]null[/code] if it is omitted."
+msgstr ""
+
+#: doc/classes/Dictionary.xml:128
+msgid ""
+"Returns [code]true[/code] if the dictionary has a given key.\n"
+"[b]Note:[/b] This is equivalent to using the [code]in[/code] operator as "
+"follows:\n"
+"[codeblock]\n"
+"# Will evaluate to `true`.\n"
+"if \"godot\" in {\"godot\": \"engine\"}:\n"
+" pass\n"
+"[/codeblock]\n"
+"This method (like the [code]in[/code] operator) will evaluate to [code]true[/"
+"code] as long as the key exists, even if the associated value is [code]null[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Dictionary.xml:144
+msgid ""
+"Returns [code]true[/code] if the dictionary has all of the keys in the given "
+"array."
+msgstr ""
+
+#: doc/classes/Dictionary.xml:151
+msgid ""
+"Returns a hashed integer value representing the dictionary contents. This "
+"can be used to compare dictionaries by value:\n"
+"[codeblock]\n"
+"var dict1 = {0: 10}\n"
+"var dict2 = {0: 10}\n"
+"# The line below prints `true`, whereas it would have printed `false` if "
+"both variables were compared directly.\n"
+"print(dict1.hash() == dict2.hash())\n"
+"[/codeblock]\n"
+"[b]Note:[/b] Dictionaries with the same keys/values but in a different order "
+"will have a different hash."
+msgstr ""
+
+#: doc/classes/Dictionary.xml:165
+msgid "Returns the list of keys in the [Dictionary]."
+msgstr ""
+
+#: doc/classes/Dictionary.xml:172
+msgid "Returns the size of the dictionary (in pairs)."
+msgstr ""
+
+#: doc/classes/Dictionary.xml:179
+msgid "Returns the list of values in the [Dictionary]."
+msgstr ""
+
+#: doc/classes/DirectionalLight3D.xml:4
+msgid "Directional light from a distance, as from the Sun."
+msgstr ""
+
+#: doc/classes/DirectionalLight3D.xml:7
+msgid ""
+"A directional light is a type of [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."
+msgstr ""
+
+#: doc/classes/DirectionalLight3D.xml:10 doc/classes/Light3D.xml:10
+#: doc/classes/OmniLight3D.xml:10 doc/classes/SpotLight3D.xml:10
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/3d/lights_and_shadows.html"
+msgstr ""
+
+#: doc/classes/DirectionalLight3D.xml:16
+msgid ""
+"If [code]true[/code], shadow detail is sacrificed in exchange for smoother "
+"transitions between splits."
+msgstr ""
+
+#: doc/classes/DirectionalLight3D.xml:19
+msgid ""
+"Optimizes shadow rendering for detail versus movement. See [enum "
+"ShadowDepthRange]."
+msgstr ""
+
+#: doc/classes/DirectionalLight3D.xml:22
+msgid ""
+"Proportion of [member directional_shadow_max_distance] at which point the "
+"shadow starts to fade. At [member directional_shadow_max_distance] the "
+"shadow will disappear."
+msgstr ""
+
+#: doc/classes/DirectionalLight3D.xml:25
+msgid "The maximum distance for shadow splits."
+msgstr ""
+
+#: doc/classes/DirectionalLight3D.xml:28
+msgid "The light's shadow rendering algorithm. See [enum ShadowMode]."
+msgstr ""
+
+#: doc/classes/DirectionalLight3D.xml:31 doc/classes/RenderingServer.xml:3250
+msgid ""
+"Sets the size of the directional shadow pancake. The pancake offsets the "
+"start of the shadow's camera frustum to provide a higher effective depth "
+"resolution for the shadow. However, a high pancake size can cause artifacts "
+"in the shadows of large objects that are close to the edge of the frustum. "
+"Reducing the pancake size can help. Setting the size to [code]0[/code] turns "
+"off the pancaking effect."
+msgstr ""
+
+#: doc/classes/DirectionalLight3D.xml:34
+msgid ""
+"The distance from camera to shadow split 1. Relative to [member "
+"directional_shadow_max_distance]. Only used when [member "
+"directional_shadow_mode] is [code]SHADOW_PARALLEL_2_SPLITS[/code] or "
+"[code]SHADOW_PARALLEL_4_SPLITS[/code]."
+msgstr ""
+
+#: doc/classes/DirectionalLight3D.xml:37
+msgid ""
+"The distance from shadow split 1 to split 2. Relative to [member "
+"directional_shadow_max_distance]. Only used when [member "
+"directional_shadow_mode] is [code]SHADOW_PARALLEL_2_SPLITS[/code] or "
+"[code]SHADOW_PARALLEL_4_SPLITS[/code]."
+msgstr ""
+
+#: doc/classes/DirectionalLight3D.xml:40
+msgid ""
+"The distance from shadow split 2 to split 3. Relative to [member "
+"directional_shadow_max_distance]. Only used when [member "
+"directional_shadow_mode] is [code]SHADOW_PARALLEL_4_SPLITS[/code]."
+msgstr ""
+
+#: doc/classes/DirectionalLight3D.xml:47
+msgid ""
+"Renders the entire scene's shadow map from an orthogonal point of view. This "
+"is the fastest directional shadow mode. May result in blurrier shadows on "
+"close objects."
+msgstr ""
+
+#: doc/classes/DirectionalLight3D.xml:50
+msgid ""
+"Splits the view frustum in 2 areas, each with its own shadow map. This "
+"shadow mode is a compromise between [constant SHADOW_ORTHOGONAL] and "
+"[constant SHADOW_PARALLEL_4_SPLITS] in terms of performance."
+msgstr ""
+
+#: doc/classes/DirectionalLight3D.xml:53
+msgid ""
+"Splits the view frustum in 4 areas, each with its own shadow map. This is "
+"the slowest directional shadow mode."
+msgstr ""
+
+#: doc/classes/DirectionalLight3D.xml:56
+msgid ""
+"Keeps the shadow stable when the camera moves, at the cost of lower "
+"effective shadow resolution."
+msgstr ""
+
+#: doc/classes/DirectionalLight3D.xml:59
+msgid ""
+"Tries to achieve maximum shadow resolution. May result in saw effect on "
+"shadow edges. This mode typically works best in games where the camera will "
+"often move at high speeds, such as most racing games."
+msgstr ""
+
+#: doc/classes/Directory.xml:4
+msgid "Type used to handle the filesystem."
+msgstr ""
+
+#: doc/classes/Directory.xml:7
+msgid ""
+"Directory type. It is used to manage directories and their content (not "
+"restricted to the project folder).\n"
+"When creating a new [Directory], it must be explicitly opened using [method "
+"open] before most methods can be used. However, [method file_exists] and "
+"[method dir_exists] can be used without opening a directory. If so, they use "
+"a path relative to [code]res://[/code].\n"
+"Here is an example on how to iterate through the files of a directory:\n"
+"[codeblock]\n"
+"func dir_contents(path):\n"
+" var dir = Directory.new()\n"
+" if dir.open(path) == OK:\n"
+" dir.list_dir_begin()\n"
+" var file_name = dir.get_next()\n"
+" while file_name != \"\":\n"
+" if dir.current_is_dir():\n"
+" print(\"Found directory: \" + file_name)\n"
+" else:\n"
+" print(\"Found file: \" + file_name)\n"
+" file_name = dir.get_next()\n"
+" else:\n"
+" print(\"An error occurred when trying to access the path.\")\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Directory.xml:27 doc/classes/File.xml:26
+msgid ""
+"https://docs.godotengine.org/en/latest/getting_started/step_by_step/"
+"filesystem.html"
+msgstr ""
+
+#: doc/classes/Directory.xml:36
+msgid ""
+"Changes the currently opened directory to the one passed as an argument. The "
+"argument can be relative to the current directory (e.g. [code]newdir[/code] "
+"or [code]../newdir[/code]), or an absolute path (e.g. [code]/tmp/newdir[/"
+"code] or [code]res://somedir/newdir[/code]).\n"
+"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
+msgstr ""
+
+#: doc/classes/Directory.xml:48
+msgid ""
+"Copies the [code]from[/code] file to the [code]to[/code] destination. Both "
+"arguments should be paths to files, either relative or absolute. If the "
+"destination file exists and is not access-protected, it will be "
+"overwritten.\n"
+"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
+msgstr ""
+
+#: doc/classes/Directory.xml:56
+msgid ""
+"Returns whether the current item processed with the last [method get_next] "
+"call is a directory ([code].[/code] and [code]..[/code] are considered "
+"directories)."
+msgstr ""
+
+#: doc/classes/Directory.xml:65
+msgid ""
+"Returns whether the target directory exists. The argument can be relative to "
+"the current directory, or an absolute path.\n"
+"If the [Directory] is not open, the path is relative to [code]res://[/code]."
+msgstr ""
+
+#: doc/classes/Directory.xml:75
+msgid ""
+"Returns whether the target file exists. The argument can be relative to the "
+"current directory, or an absolute path.\n"
+"If the [Directory] is not open, the path is relative to [code]res://[/code]."
+msgstr ""
+
+#: doc/classes/Directory.xml:83
+msgid ""
+"Returns the absolute path to the currently opened directory (e.g. "
+"[code]res://folder[/code] or [code]C:\\tmp\\folder[/code])."
+msgstr ""
+
+#: doc/classes/Directory.xml:90
+msgid ""
+"Returns the currently opened directory's drive index. See [method get_drive] "
+"to convert returned index to the name of the drive."
+msgstr ""
+
+#: doc/classes/Directory.xml:99
+msgid ""
+"On Windows, returns the name of the drive (partition) passed as an argument "
+"(e.g. [code]C:[/code]). On other platforms, or if the requested drive does "
+"not existed, the method returns an empty String."
+msgstr ""
+
+#: doc/classes/Directory.xml:106
+msgid ""
+"On Windows, returns the number of drives (partitions) mounted on the current "
+"filesystem. On other platforms, the method returns 0."
+msgstr ""
+
+#: doc/classes/Directory.xml:113
+msgid ""
+"Returns the next element (file or directory) in the current directory "
+"(including [code].[/code] and [code]..[/code], unless "
+"[code]skip_navigational[/code] was given to [method list_dir_begin]).\n"
+"The name of the file or directory is returned (and not its full path). Once "
+"the stream has been fully processed, the method returns an empty String and "
+"closes the stream automatically (i.e. [method list_dir_end] would not be "
+"mandatory in such a case)."
+msgstr ""
+
+#: doc/classes/Directory.xml:121
+msgid ""
+"On UNIX desktop systems, returns the available space on the current "
+"directory's disk. On other platforms, this information is not available and "
+"the method returns 0 or -1."
+msgstr ""
+
+#: doc/classes/Directory.xml:132
+msgid ""
+"Initializes the stream used to list all files and directories using the "
+"[method get_next] function, closing the current opened stream if needed. "
+"Once the stream has been processed, it should typically be closed with "
+"[method list_dir_end].\n"
+"If [code]skip_navigational[/code] is [code]true[/code], [code].[/code] and "
+"[code]..[/code] are filtered out.\n"
+"If [code]skip_hidden[/code] is [code]true[/code], hidden files are filtered "
+"out."
+msgstr ""
+
+#: doc/classes/Directory.xml:141
+msgid ""
+"Closes the current stream opened with [method list_dir_begin] (whether it "
+"has been fully processed with [method get_next] or not does not matter)."
+msgstr ""
+
+#: doc/classes/Directory.xml:150
+msgid ""
+"Creates a directory. The argument can be relative to the current directory, "
+"or an absolute path. The target directory should be placed in an already "
+"existing directory (to create the full path recursively, see [method "
+"make_dir_recursive]).\n"
+"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
+msgstr ""
+
+#: doc/classes/Directory.xml:160
+msgid ""
+"Creates a target directory and all necessary intermediate directories in its "
+"path, by calling [method make_dir] recursively. The argument can be relative "
+"to the current directory, or an absolute path.\n"
+"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
+msgstr ""
+
+#: doc/classes/Directory.xml:170
+msgid ""
+"Opens an existing directory of the filesystem. The [code]path[/code] "
+"argument can be within the project tree ([code]res://folder[/code]), the "
+"user directory ([code]user://folder[/code]) or an absolute path of the user "
+"filesystem (e.g. [code]/tmp/folder[/code] or [code]C:\\tmp\\folder[/code]).\n"
+"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
+msgstr ""
+
+#: doc/classes/Directory.xml:180
+msgid ""
+"Deletes the target file or an empty directory. The argument can be relative "
+"to the current directory, or an absolute path. If the target directory is "
+"not empty, the operation will fail.\n"
+"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
+msgstr ""
+
+#: doc/classes/Directory.xml:192
+msgid ""
+"Renames (move) the [code]from[/code] file to the [code]to[/code] "
+"destination. Both arguments should be paths to files, either relative or "
+"absolute. If the destination file exists and is not access-protected, it "
+"will be overwritten.\n"
+"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:390
+msgid ""
+"Returns active keyboard layout index.\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:398
+msgid ""
+"Returns the number of keyboard layouts.\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:408
+msgid ""
+"Returns the ISO-639/BCP-47 language code of the keyboard layout at position "
+"[code]index[/code].\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:418
+msgid ""
+"Returns the localized name of the keyboard layout at position [code]index[/"
+"code].\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:428
+msgid ""
+"Sets active keyboard layout.\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:530
+msgid ""
+"Return the greatest scale factor of all screens.\n"
+"[b]Note:[/b] On macOS returned value is [code]2.0[/code] if there is at "
+"least one hiDPI (Retina) screen in the system, and [code]1.0[/code] in all "
+"other cases.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:557
+msgid ""
+"Return the scale factor of the specified screen by index.\n"
+"[b]Note:[/b] On macOS returned value is [code]2.0[/code] for hiDPI (Retina) "
+"screen, and [code]1.0[/code] for all other cases.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:630
+msgid ""
+"Returns the on-screen keyboard's height in pixels. Returns 0 if there is no "
+"keyboard or if it is currently hidden."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:637
+msgid "Hides the virtual keyboard if it is shown, does nothing otherwise."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:656
+msgid ""
+"Shows the virtual keyboard if the platform has one.\n"
+"[code]existing_text[/code] parameter is useful for implementing your own "
+"[LineEdit] or [TextEdit], as it tells the virtual keyboard what text has "
+"already been typed (the virtual keyboard uses it for auto-correct and "
+"predictions).\n"
+"[code]position[/code] parameter is the screen space [Rect2] of the edited "
+"text.\n"
+"[code]multiline[/code] parameter needs to be set to [code]true[/code] to be "
+"able to enter multiple lines of text, as in [TextEdit].\n"
+"[code]max_length[/code] limits the number of characters that can be entered "
+"if different from [code]-1[/code].\n"
+"[code]cursor_start[/code] can optionally define the current text cursor "
+"position if [code]cursor_end[/code] is not set.\n"
+"[code]cursor_start[/code] and [code]cursor_end[/code] can optionally define "
+"the current text selection.\n"
+"[b]Note:[/b] This method is implemented on Android, iOS and UWP."
+msgstr ""
+
+#: doc/classes/DTLSServer.xml:4
+msgid "Helper class to implement a DTLS server."
+msgstr ""
+
+#: doc/classes/DTLSServer.xml:7
+msgid ""
+"This class is used to store the state of a DTLS server. Upon [method setup] "
+"it converts connected [PacketPeerUDP] to [PacketPeerDTLS] accepting them via "
+"[method take_connection] as DTLS clients. Under the hood, this class is used "
+"to store the DTLS state and cookies of the server. The reason of why the "
+"state and cookies are needed is outside of the scope of this documentation.\n"
+"Below a small example of how to use it:\n"
+"[codeblock]\n"
+"# server.gd\n"
+"extends Node\n"
+"\n"
+"var dtls := DTLSServer.new()\n"
+"var server := UDPServer.new()\n"
+"var peers = []\n"
+"\n"
+"func _ready():\n"
+" server.listen(4242)\n"
+" var key = load(\"key.key\") # Your private key.\n"
+" var cert = load(\"cert.crt\") # Your X509 certificate.\n"
+" dtls.setup(key, cert)\n"
+"\n"
+"func _process(delta):\n"
+" while server.is_connection_available():\n"
+" var peer : PacketPeerUDP = server.take_connection()\n"
+" var dtls_peer : PacketPeerDTLS = dtls.take_connection(peer)\n"
+" if dtls_peer.get_status() != PacketPeerDTLS.STATUS_HANDSHAKING:\n"
+" continue # It is normal that 50% of the connections fails due to "
+"cookie exchange.\n"
+" print(\"Peer connected!\")\n"
+" peers.append(dtls_peer)\n"
+" for p in peers:\n"
+" p.poll() # Must poll to update the state.\n"
+" if p.get_status() == PacketPeerDTLS.STATUS_CONNECTED:\n"
+" while p.get_available_packet_count() > 0:\n"
+" print(\"Received message from client: %s\" % p.get_packet()."
+"get_string_from_utf8())\n"
+" p.put_packet(\"Hello DTLS client\".to_utf8())\n"
+"[/codeblock]\n"
+"[codeblock]\n"
+"# client.gd\n"
+"extends Node\n"
+"\n"
+"var dtls := PacketPeerDTLS.new()\n"
+"var udp := PacketPeerUDP.new()\n"
+"var connected = false\n"
+"\n"
+"func _ready():\n"
+" udp.connect_to_host(\"127.0.0.1\", 4242)\n"
+" dtls.connect_to_peer(udp, false) # Use true in production for "
+"certificate validation!\n"
+"\n"
+"func _process(delta):\n"
+" dtls.poll()\n"
+" if dtls.get_status() == PacketPeerDTLS.STATUS_CONNECTED:\n"
+" if !connected:\n"
+" # Try to contact server\n"
+" dtls.put_packet(\"The answer is... 42!\".to_utf8())\n"
+" while dtls.get_available_packet_count() > 0:\n"
+" print(\"Connected: %s\" % dtls.get_packet()."
+"get_string_from_utf8())\n"
+" connected = true\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/DTLSServer.xml:74
+msgid ""
+"Setup the DTLS server to use the given [code]private_key[/code] and provide "
+"the given [code]certificate[/code] to clients. You can pass the optional "
+"[code]chain[/code] parameter to provide additional CA chain information "
+"along with the certificate."
+msgstr ""
+
+#: doc/classes/DTLSServer.xml:83
+msgid ""
+"Try to initiate the DTLS handshake with the given [code]udp_peer[/code] "
+"which must be already connected (see [method PacketPeerUDP."
+"connect_to_host]).\n"
+"[b]Note[/b]: You must check that the state of the return PacketPeerUDP is "
+"[constant PacketPeerDTLS.STATUS_HANDSHAKING], as it is normal that 50% of "
+"the new connections will be invalid due to cookie exchange."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:4
+msgid "DynamicFont renders vector font files at runtime."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:7
+msgid ""
+"DynamicFont renders vector font files (such as TTF or OTF) dynamically at "
+"runtime instead of using a prerendered texture atlas like [BitmapFont]. This "
+"trades the faster loading time of [BitmapFont]s for the ability to change "
+"font parameters like size and spacing during runtime. [DynamicFontData] is "
+"used for referencing the font file paths. DynamicFont also supports defining "
+"one or more fallbacks fonts, which will be used when displaying a character "
+"not supported by the main font.\n"
+"DynamicFont uses the [url=https://www.freetype.org/]FreeType[/url] library "
+"for rasterization.\n"
+"[codeblock]\n"
+"var dynamic_font = DynamicFont.new()\n"
+"dynamic_font.font_data = load(\"res://BarlowCondensed-Bold.ttf\")\n"
+"dynamic_font.size = 64\n"
+"$\"Label\".set(\"custom_fonts/font\", dynamic_font)\n"
+"[/codeblock]\n"
+"[b]Note:[/b] DynamicFont doesn't support features such as right-to-left "
+"typesetting, ligatures, text shaping, variable fonts and optional font "
+"features yet. If you wish to \"bake\" an optional font feature into a TTF "
+"font file, you can use [url=https://fontforge.org/]FontForge[/url] to do so. "
+"In FontForge, use [b]File > Generate Fonts[/b], click [b]Options[/b], choose "
+"the desired features then generate the font."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:26
+msgid "Adds a fallback font."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:33
+msgid ""
+"Returns a string containing all the characters available in the main and all "
+"the fallback fonts.\n"
+"If a given character is included in more than one font, it appears only once "
+"in the returned string."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:43
+msgid "Returns the fallback font at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:50
+msgid "Returns the number of fallback fonts."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:59
+msgid ""
+"Returns the spacing for the given [code]type[/code] (see [enum SpacingType])."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:68
+msgid "Removes the fallback font at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:79
+msgid "Sets the fallback font at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:90
+msgid ""
+"Sets the spacing for [code]type[/code] (see [enum SpacingType]) to "
+"[code]value[/code] in pixels (not relative to the font size)."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:96
+msgid "Extra spacing at the bottom in pixels."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:99
+msgid "Extra character spacing in pixels."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:102
+msgid "Extra space spacing in pixels."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:105
+msgid "Extra spacing at the top in pixels."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:108
+msgid "The font data."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:111
+msgid ""
+"The font outline's color.\n"
+"[b]Note:[/b] It's recommended to leave this at the default value so that you "
+"can adjust it in individual controls. For example, if the outline is made "
+"black here, it won't be possible to change its color using a Label's font "
+"outline modulate theme item."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:115
+msgid "The font outline's thickness in pixels (not relative to the font size)."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:118
+msgid "The font size in pixels."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:123
+msgid "Spacing at the top."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:126
+msgid "Spacing at the bottom."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:129
+msgid "Character spacing."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:132
+msgid "Space spacing."
+msgstr ""
+
+#: doc/classes/DynamicFontData.xml:4
+msgid "Used with [DynamicFont] to describe the location of a font file."
+msgstr ""
+
+#: doc/classes/DynamicFontData.xml:7
+msgid ""
+"Used with [DynamicFont] to describe the location of a vector font file for "
+"dynamic rendering at runtime."
+msgstr ""
+
+#: doc/classes/DynamicFontData.xml:15
+msgid ""
+"If [code]true[/code], the font is rendered with anti-aliasing. This property "
+"applies both to the main font and its outline (if it has one)."
+msgstr ""
+
+#: doc/classes/DynamicFontData.xml:18
+msgid "The path to the vector font file."
+msgstr ""
+
+#: doc/classes/DynamicFontData.xml:21
+msgid "The font hinting mode used by FreeType. See [enum Hinting] for options."
+msgstr ""
+
+#: doc/classes/DynamicFontData.xml:26
+msgid "Disables font hinting (smoother but less crisp)."
+msgstr ""
+
+#: doc/classes/DynamicFontData.xml:29
+msgid "Use the light font hinting mode."
+msgstr ""
+
+#: doc/classes/DynamicFontData.xml:32
+msgid "Use the default font hinting mode (crisper but less smooth)."
+msgstr ""
+
+#: doc/classes/EditorExportPlugin.xml:4
+msgid "A script that is executed when exporting projects."
+msgstr ""
+
+#: doc/classes/EditorExportPlugin.xml:23
+msgid ""
+"Virtual method to be overridden by the user. It is called when the export "
+"starts and provides all information about the export."
+msgstr ""
+
+#: doc/classes/EditorExportPlugin.xml:30
+msgid ""
+"Virtual method to be overridden by the user. Called when the export is "
+"finished."
+msgstr ""
+
+#: doc/classes/EditorFeatureProfile.xml:4
+msgid ""
+"An editor feature profile which can be used to disable specific features."
+msgstr ""
+
+#: doc/classes/EditorFeatureProfile.xml:7
+msgid ""
+"An editor feature profile can be used to disable specific features of the "
+"Godot editor. When disabled, the features won't appear in the editor, which "
+"makes the editor less cluttered. This is useful in education settings to "
+"reduce confusion or when working in a team. For example, artists and level "
+"designers could use a feature profile that disables the script editor to "
+"avoid accidentally making changes to files they aren't supposed to edit.\n"
+"To manage editor feature profiles visually, use [b]Editor > Manage Feature "
+"Profiles...[/b] at the top of the editor window."
+msgstr ""
+
+#: doc/classes/EditorFeatureProfile.xml:19
+msgid "Returns the specified [code]feature[/code]'s human-readable name."
+msgstr ""
+
+#: doc/classes/EditorFeatureProfile.xml:28
+msgid ""
+"Returns [code]true[/code] if the class specified by [code]class_name[/code] "
+"is disabled. When disabled, the class won't appear in the Create New Node "
+"dialog."
+msgstr ""
+
+#: doc/classes/EditorFeatureProfile.xml:37
+msgid ""
+"Returns [code]true[/code] if editing for the class specified by "
+"[code]class_name[/code] is disabled. When disabled, the class will still "
+"appear in the Create New Node dialog but the inspector will be read-only "
+"when selecting a node that extends the class."
+msgstr ""
+
+#: doc/classes/EditorFeatureProfile.xml:48
+msgid ""
+"Returns [code]true[/code] if [code]property[/code] is disabled in the class "
+"specified by [code]class_name[/code]. When a property is disabled, it won't "
+"appear in the inspector when selecting a node that extends the class "
+"specified by [code]class_name[/code]."
+msgstr ""
+
+#: doc/classes/EditorFeatureProfile.xml:57
+msgid ""
+"Returns [code]true[/code] if the [code]feature[/code] is disabled. When a "
+"feature is disabled, it will disappear from the editor entirely."
+msgstr ""
+
+#: doc/classes/EditorFeatureProfile.xml:66
+msgid ""
+"Loads an editor feature profile from a file. The file must follow the JSON "
+"format obtained by using the feature profile manager's [b]Export[/b] button "
+"or the [method save_to_file] method."
+msgstr ""
+
+#: doc/classes/EditorFeatureProfile.xml:75
+msgid ""
+"Saves the editor feature profile to a file in JSON format. It can then be "
+"imported using the feature profile manager's [b]Import[/b] button or the "
+"[method load_from_file] button."
+msgstr ""
+
+#: doc/classes/EditorFeatureProfile.xml:86
+msgid ""
+"If [code]disable[/code] is [code]true[/code], disables the class specified "
+"by [code]class_name[/code]. When disabled, the class won't appear in the "
+"Create New Node dialog."
+msgstr ""
+
+#: doc/classes/EditorFeatureProfile.xml:97
+msgid ""
+"If [code]disable[/code] is [code]true[/code], disables editing for the class "
+"specified by [code]class_name[/code]. When disabled, the class will still "
+"appear in the Create New Node dialog but the inspector will be read-only "
+"when selecting a node that extends the class."
+msgstr ""
+
+#: doc/classes/EditorFeatureProfile.xml:110
+msgid ""
+"If [code]disable[/code] is [code]true[/code], disables editing for "
+"[code]property[/code] in the class specified by [code]class_name[/code]. "
+"When a property is disabled, it won't appear in the inspector when selecting "
+"a node that extends the class specified by [code]class_name[/code]."
+msgstr ""
+
+#: doc/classes/EditorFeatureProfile.xml:121
+msgid ""
+"If [code]disable[/code] is [code]true[/code], disables the editor feature "
+"specified in [code]feature[/code]. When a feature is disabled, it will "
+"disappear from the editor entirely."
+msgstr ""
+
+#: doc/classes/EditorFeatureProfile.xml:127
+msgid ""
+"The 3D editor. If this feature is disabled, the 3D editor won't display but "
+"3D nodes will still display in the Create New Node dialog."
+msgstr ""
+
+#: doc/classes/EditorFeatureProfile.xml:130
+msgid ""
+"The Script tab, which contains the script editor and class reference "
+"browser. If this feature is disabled, the Script tab won't display."
+msgstr ""
+
+#: doc/classes/EditorFeatureProfile.xml:133
+msgid ""
+"The AssetLib tab. If this feature is disabled, the AssetLib tab won't "
+"display."
+msgstr ""
+
+#: doc/classes/EditorFeatureProfile.xml:136
+msgid ""
+"Scene tree editing. If this feature is disabled, the Scene tree dock will "
+"still be visible but will be read-only."
+msgstr ""
+
+#: doc/classes/EditorFeatureProfile.xml:139
+msgid ""
+"The Import dock. If this feature is disabled, the Import dock won't be "
+"visible."
+msgstr ""
+
+#: doc/classes/EditorFeatureProfile.xml:142
+msgid ""
+"The Node dock. If this feature is disabled, signals and groups won't be "
+"visible and modifiable from the editor."
+msgstr ""
+
+#: doc/classes/EditorFeatureProfile.xml:145
+msgid ""
+"The FileSystem dock. If this feature is disabled, the FileSystem dock won't "
+"be visible."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:4
+msgid "A modified version of [FileDialog] used by the editor."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:17
+msgid ""
+"Adds a comma-delimited file extension filter option to the "
+"[EditorFileDialog] with an optional semi-colon-delimited label.\n"
+"For example, [code]\"*.tscn, *.scn; Scenes\"[/code] results in filter text "
+"\"Scenes (*.tscn, *.scn)\"."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:25
+msgid "Removes all filters except for \"All Files (*)\"."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:32
+msgid "Returns the [code]VBoxContainer[/code] used to display the file system."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:39
+msgid ""
+"Notify the [EditorFileDialog] that its view of the data is no longer "
+"accurate. Updates the view contents on next view update."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:45
+msgid ""
+"The location from which the user may select a file, including [code]res://[/"
+"code], [code]user://[/code], and the local file system."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:48
+msgid "The currently occupied directory."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:51
+msgid "The currently selected file."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:54
+msgid "The file system path in the address bar."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:58
+msgid ""
+"If [code]true[/code], the [EditorFileDialog] will not warn the user before "
+"overwriting files."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:61
+msgid ""
+"The view format in which the [EditorFileDialog] displays resources to the "
+"user."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:64
+msgid ""
+"The dialog's open or save mode, which affects the selection behavior. See "
+"[enum FileMode]"
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:67
+msgid ""
+"If [code]true[/code], hidden files and directories will be visible in the "
+"[EditorFileDialog]."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:76
+msgid "Emitted when a directory is selected."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:83
+msgid "Emitted when a file is selected."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:90
+msgid "Emitted when multiple files are selected."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:96
+msgid ""
+"The [EditorFileDialog] can select only one file. Accepting the window will "
+"open the file."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:99
+msgid ""
+"The [EditorFileDialog] can select multiple files. Accepting the window will "
+"open all files."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:102
+msgid ""
+"The [EditorFileDialog] can select only one directory. Accepting the window "
+"will open the directory."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:105
+msgid ""
+"The [EditorFileDialog] can select a file or directory. Accepting the window "
+"will open it."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:108
+msgid ""
+"The [EditorFileDialog] can select only one file. Accepting the window will "
+"save the file."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:111
+msgid ""
+"The [EditorFileDialog] can only view [code]res://[/code] directory contents."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:114
+msgid ""
+"The [EditorFileDialog] can only view [code]user://[/code] directory contents."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:117
+msgid "The [EditorFileDialog] can view the entire local file system."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:120
+msgid "The [EditorFileDialog] displays resources as thumbnails."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:123
+msgid "The [EditorFileDialog] displays resources as a list of filenames."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:4
+msgid "Resource filesystem, as the editor sees it."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:7
+msgid ""
+"This object holds information of all resources in the filesystem, their "
+"types, etc.\n"
+"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
+"the singleton using [method EditorInterface.get_resource_filesystem]."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:19
+msgid "Gets the type of the file, given the full path."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:26
+msgid "Gets the root directory object."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:35
+msgid "Returns a view into the filesystem at [code]path[/code]."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:42
+msgid "Returns the scan progress for 0 to 1 if the FS is being scanned."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:49
+msgid "Returns [code]true[/code] of the filesystem is being scanned."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:56
+msgid "Scan the filesystem for changes."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:63
+msgid "Check if the source of any imported resource changed."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:72
+msgid ""
+"Update a file information. Call this if an external program (not Godot) "
+"modified the file."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:79
+msgid "Scans the script files and updates the list of custom class names."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:86
+msgid "Emitted if the filesystem changed."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:93
+msgid "Remitted if a resource is reimported."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:100
+msgid ""
+"Emitted if at least one resource is reloaded when the filesystem is scanned."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:107
+msgid "Emitted if the source of any imported file changed."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:4
+msgid "A directory for the resource filesystem."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:7
+msgid "A more generalized, low-level variation of the directory concept."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:18
+msgid ""
+"Returns the index of the directory with name [code]name[/code] or [code]-1[/"
+"code] if not found."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:27
+msgid ""
+"Returns the index of the file with name [code]name[/code] or [code]-1[/code] "
+"if not found."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:36
+msgid "Returns the name of the file at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:43
+msgid "Returns the number of files in this directory."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:52
+msgid ""
+"Returns [code]true[/code] if the file at index [code]idx[/code] imported "
+"properly."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:61
+msgid "Returns the path to the file at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:70
+msgid ""
+"Returns the base class of the script class defined in the file at index "
+"[code]idx[/code]. If the file doesn't define a script class using the "
+"[code]class_name[/code] syntax, this will return an empty string."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:79
+msgid ""
+"Returns the name of the script class defined in the file at index [code]idx[/"
+"code]. If the file doesn't define a script class using the [code]class_name[/"
+"code] syntax, this will return an empty string."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:88
+msgid "Returns the file extension of the file at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:95
+msgid "Returns the name of this directory."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:102
+msgid ""
+"Returns the parent directory for this directory or [code]null[/code] if "
+"called on a directory at [code]res://[/code] or [code]user://[/code]."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:109
+msgid "Returns the path to this directory."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:118
+msgid "Returns the subdirectory at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:125
+msgid "Returns the number of subdirectories in this directory."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:4
+msgid ""
+"Registers a custom resource importer in the editor. Use the class to parse "
+"any file and import it as a new resource type."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:7
+msgid ""
+"EditorImportPlugins provide a way to extend the editor's resource import "
+"functionality. Use them to import resources from custom files or to provide "
+"alternatives to the editor's existing importers. Register your "
+"[EditorPlugin] with [method EditorPlugin.add_import_plugin].\n"
+"EditorImportPlugins work by associating with specific file extensions and a "
+"resource type. See [method get_recognized_extensions] and [method "
+"get_resource_type]. They may optionally specify some import presets that "
+"affect the import process. EditorImportPlugins are responsible for creating "
+"the resources and saving them in the [code].import[/code] directory.\n"
+"Below is an example EditorImportPlugin that imports a [Mesh] from a file "
+"with the extension \".special\" or \".spec\":\n"
+"[codeblock]\n"
+"tool\n"
+"extends EditorImportPlugin\n"
+"\n"
+"func get_importer_name():\n"
+" return \"my.special.plugin\"\n"
+"\n"
+"func get_visible_name():\n"
+" return \"Special Mesh Importer\"\n"
+"\n"
+"func get_recognized_extensions():\n"
+" return [\"special\", \"spec\"]\n"
+"\n"
+"func get_save_extension():\n"
+" return \"mesh\"\n"
+"\n"
+"func get_resource_type():\n"
+" return \"Mesh\"\n"
+"\n"
+"func get_preset_count():\n"
+" return 1\n"
+"\n"
+"func get_preset_name(i):\n"
+" return \"Default\"\n"
+"\n"
+"func get_import_options(i):\n"
+" return [{\"name\": \"my_option\", \"default_value\": false}]\n"
+"\n"
+"func import(source_file, save_path, options, platform_variants, gen_files):\n"
+" var file = File.new()\n"
+" if file.open(source_file, File.READ) != OK:\n"
+" return FAILED\n"
+"\n"
+" var mesh = Mesh.new()\n"
+" # Fill the Mesh with data read in \"file\", left as an exercise to the "
+"reader\n"
+"\n"
+" var filename = save_path + \".\" + get_save_extension()\n"
+" ResourceSaver.save(filename, mesh)\n"
+" return OK\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:52
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/plugins/editor/"
+"import_plugins.html"
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:61
+msgid ""
+"Gets the options and default values for the preset at this index. Returns an "
+"Array of Dictionaries with the following keys: [code]name[/code], "
+"[code]default_value[/code], [code]property_hint[/code] (optional), "
+"[code]hint_string[/code] (optional), [code]usage[/code] (optional)."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:68
+msgid ""
+"Gets the order of this importer to be run when importing resources. Higher "
+"values will be called later. Use this to ensure the importer runs after the "
+"dependencies are already imported."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:75
+msgid "Gets the unique name of the importer."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:86
+msgid ""
+"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. For example:\n"
+"[codeblock]\n"
+"func get_option_visibility(option, options):\n"
+" # Only show the lossy quality setting if the compression mode is set to "
+"\"Lossy\".\n"
+" if option == \"compress/lossy_quality\" and options.has(\"compress/mode"
+"\"):\n"
+" return int(options[\"compress/mode\"]) == COMPRESS_LOSSY\n"
+"\n"
+" return true\n"
+"[/codeblock]\n"
+"Return [code]true[/code] to make all options always visible."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:102
+msgid ""
+"Gets the number of initial presets defined by the plugin. Use [method "
+"get_import_options] to get the default options for the preset and [method "
+"get_preset_name] to get the name of the preset."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:111
+msgid "Gets the name of the options preset at this index."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:118
+msgid ""
+"Gets the priority of this plugin for the recognized extension. Higher "
+"priority plugins will be preferred. The default priority is [code]1.0[/code]."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:125
+msgid ""
+"Gets the list of file extensions to associate with this loader (case-"
+"insensitive). e.g. [code][\"obj\"][/code]."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:132
+msgid ""
+"Gets the Godot resource type associated with this loader. e.g. [code]\"Mesh"
+"\"[/code] or [code]\"Animation\"[/code]."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:139
+msgid ""
+"Gets the extension used to save this resource in the [code].import[/code] "
+"directory."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:146
+msgid "Gets the name to display in the import window."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:163
+msgid ""
+"Imports [code]source_file[/code] into [code]save_path[/code] with the import "
+"[code]options[/code] specified. The [code]platform_variants[/code] and "
+"[code]gen_files[/code] arrays will be modified by this function.\n"
+"This method must be overridden to do the actual importing work. See this "
+"class' description for an example of overriding this method."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:4
+msgid "A tab used to edit properties of the selected node."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:7
+msgid ""
+"The editor inspector is by default located on the right-hand side of the "
+"editor. It's used to edit the properties of the selected node. For example, "
+"you can select a node such as the Sprite2D then edit its transform through "
+"the inspector tool. The editor inspector is an essential tool in the game "
+"development workflow.\n"
+"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
+"the singleton using [method EditorInterface.get_inspector]."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:17
+msgid ""
+"Refreshes the inspector.\n"
+"[b]Note:[/b] To save on CPU resources, calling this method will do nothing "
+"if the time specified in [code]docks/property_editor/auto_refresh_interval[/"
+"code] editor setting hasn't passed yet since this method was last called. "
+"(By default, this interval is set to 0.3 seconds.)"
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:30
+msgid ""
+"Emitted when the Edit button of an [Object] has been pressed in the "
+"inspector. This is mainly used in the remote scene tree inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:37
+msgid "Emitted when a property is removed from the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:44
+msgid "Emitted when a property is edited in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:51
+msgid ""
+"Emitted when a property is keyed in the inspector. Properties can be keyed "
+"by clicking the \"key\" icon next to a property when the Animation panel is "
+"toggled."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:58
+msgid "Emitted when a property is selected in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:67
+msgid ""
+"Emitted when a boolean property is toggled in the inspector.\n"
+"[b]Note:[/b] This signal is never emitted if the internal [code]autoclear[/"
+"code] property enabled. Since this property is always enabled in the editor "
+"inspector, this signal is never emitted by the editor itself."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:77
+msgid "Emitted when a resource is selected in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:82
+msgid ""
+"Emitted when a property that requires a restart to be applied is edited in "
+"the inspector. This is only used in the Project Settings and Editor Settings."
+msgstr ""
+
+#: doc/classes/EditorInspectorPlugin.xml:4
+msgid "Plugin for adding custom property editors on inspector."
+msgstr ""
+
+#: doc/classes/EditorInspectorPlugin.xml:7
+msgid ""
+"This plugins allows adding custom property editors to [EditorInspector].\n"
+"Plugins are registered via [method EditorPlugin.add_inspector_plugin].\n"
+"When an object is edited, the [method can_handle] function is called and "
+"must return [code]true[/code] if the object type is supported.\n"
+"If supported, the function [method parse_begin] will be called, allowing to "
+"place custom controls at the beginning of the class.\n"
+"Subsequently, the [method parse_category] and [method parse_property] are "
+"called for every category and property. They offer the ability to add custom "
+"controls to the inspector too.\n"
+"Finally [method parse_end] will be called.\n"
+"On each of these calls, the \"add\" functions can be called."
+msgstr ""
+
+#: doc/classes/EditorInspectorPlugin.xml:24
+msgid "Adds a custom control, not necessarily a property editor."
+msgstr ""
+
+#: doc/classes/EditorInspectorPlugin.xml:35
+msgid "Adds a property editor, this must inherit [EditorProperty]."
+msgstr ""
+
+#: doc/classes/EditorInspectorPlugin.xml:48
+msgid ""
+"Adds an editor that allows modifying multiple properties, this must inherit "
+"[EditorProperty]."
+msgstr ""
+
+#: doc/classes/EditorInspectorPlugin.xml:57
+msgid "Returns [code]true[/code] if this object can be handled by this plugin."
+msgstr ""
+
+#: doc/classes/EditorInspectorPlugin.xml:66
+msgid "Called to allow adding controls at the beginning of the list."
+msgstr ""
+
+#: doc/classes/EditorInspectorPlugin.xml:77
+msgid "Called to allow adding controls at the beginning of the category."
+msgstr ""
+
+#: doc/classes/EditorInspectorPlugin.xml:84
+msgid "Called to allow adding controls at the end of the list."
+msgstr ""
+
+#: doc/classes/EditorInspectorPlugin.xml:103
+msgid ""
+"Called to allow adding property specific editors to the inspector. Usually "
+"these inherit [EditorProperty]. Returning [code]true[/code] removes the "
+"built-in editor for this property, otherwise allows to insert a custom "
+"editor before the built-in one."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:4
+msgid "Godot editor's interface."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:7
+msgid ""
+"EditorInterface gives you control over Godot editor's window. It allows "
+"customizing the window, saving and (re-)loading scenes, rendering mesh "
+"previews, inspecting and editing resources and objects, and provides access "
+"to [EditorSettings], [EditorFileSystem], [EditorResourcePreview], "
+"[ScriptEditor], the editor viewport, and information about scenes.\n"
+"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
+"the singleton using [method EditorPlugin.get_editor_interface]."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:19
+msgid "Edits the given [Resource]."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:26
+msgid ""
+"Returns the main container of Godot editor's window. For example, you can "
+"use it to retrieve the size of the container and place your controls "
+"accordingly."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:33
+msgid "Returns the current path being viewed in the [FileSystemDock]."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:40
+msgid "Returns the edited (current) scene's root [Node]."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:47
+msgid "Returns the editor's [EditorSettings] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:54
+msgid ""
+"Returns the main editor control. Use this as a parent for main screens.\n"
+"[b]Note:[/b] This returns the main editor control containing the whole "
+"editor, not the 2D or 3D viewports specifically."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:62
+msgid "Returns the editor's [FileSystemDock] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:69
+msgid "Returns the editor's [EditorInspector] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:76
+msgid "Returns an [Array] with the file paths of the currently opened scenes."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:83
+msgid ""
+"Returns the name of the scene that is being played. If no scene is currently "
+"being played, returns an empty string."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:90
+msgid "Returns the editor's [EditorFileSystem] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:97
+msgid "Returns the editor's [EditorResourcePreview] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:104
+msgid "Returns the editor's [ScriptEditor] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:111
+msgid ""
+"Returns the path of the directory currently selected in the "
+"[FileSystemDock]. If a file is selected, its base directory will be returned "
+"using [method String.get_base_dir] instead."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:118
+msgid "Returns the editor's [EditorSelection] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:129
+msgid ""
+"Shows the given property on the given [code]object[/code] in the editor's "
+"Inspector dock."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:136
+msgid ""
+"Returns [code]true[/code] if a scene is currently being played, [code]false[/"
+"code] otherwise. Paused scenes are considered as being played."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:145
+msgid ""
+"Returns [code]true[/code] if the specified [code]plugin[/code] is enabled. "
+"The plugin name is the same as its directory name."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:156
+msgid ""
+"Returns mesh previews rendered at the given size as an [Array] of "
+"[Texture2D]s."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:165
+msgid "Opens the scene at the given path."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:172
+msgid "Plays the currently active scene."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:181
+msgid "Plays the scene specified by its filepath."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:188
+msgid "Plays the main scene."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:197
+msgid "Reloads the scene at the given path."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:204
+msgid ""
+"Saves the scene. Returns either [code]OK[/code] or [code]ERR_CANT_CREATE[/"
+"code] (see [@GlobalScope] constants)."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:215
+msgid "Saves the scene as a file at [code]path[/code]."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:224
+msgid ""
+"Selects the file, with the path provided by [code]file[/code], in the "
+"FileSystem dock."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:233
+msgid ""
+"Sets the editor's current main screen to the one specified in [code]name[/"
+"code]. [code]name[/code] must match the text of the tab in question exactly "
+"([code]2D[/code], [code]3D[/code], [code]Script[/code], [code]AssetLib[/"
+"code])."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:244
+msgid ""
+"Sets the enabled status of a plugin. The plugin name is the same as its "
+"directory name."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:251
+msgid "Stops the scene that is currently playing."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:257
+msgid ""
+"If [code]true[/code], enables distraction-free mode which hides side docks "
+"to increase the space available for the main view."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:4
+msgid "Custom gizmo for editing Node3D objects."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:7
+msgid ""
+"Custom gizmo that is used for providing custom visualization and editing "
+"(handles) for Node3D objects. See [EditorNode3DGizmoPlugin] for more "
+"information."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:18
+msgid ""
+"Adds the specified [code]segments[/code] to the gizmo's collision shape for "
+"picking. Call this function during [method redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:27
+msgid ""
+"Adds collision triangles to the gizmo for picking. A [TriangleMesh] can be "
+"generated from a regular [Mesh] too. Call this function during [method "
+"redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:42
+msgid ""
+"Adds a list of handles (points) which can be used to deform the object being "
+"edited.\n"
+"There are virtual functions which will be called upon editing of these "
+"handles. Call this function during [method redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:58
+msgid ""
+"Adds lines to the gizmo (as sets of 2 points), with a given material. The "
+"lines are used for visualizing the gizmo. Call this function during [method "
+"redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:73
+msgid ""
+"Adds a mesh to the gizmo with the specified [code]billboard[/code] state, "
+"[code]skeleton[/code] and [code]material[/code]. If [code]billboard[/code] "
+"is [code]true[/code], the mesh will rotate to always face the camera. Call "
+"this function during [method redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:86
+msgid ""
+"Adds an unscaled billboard for visualization. Call this function during "
+"[method redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:93
+msgid ""
+"Removes everything in the gizmo including meshes, collisions and handles."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:106
+msgid ""
+"Commit a handle being edited (handles must have been previously added by "
+"[method add_handles]).\n"
+"If the [code]cancel[/code] parameter is [code]true[/code], an option to "
+"restore the edited value to the original is provided."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:116
+msgid ""
+"Gets the name of an edited handle (handles must have been previously added "
+"by [method add_handles]).\n"
+"Handles can be named for reference to the user when editing."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:126
+msgid ""
+"Gets actual value of a handle. This value can be anything and used for "
+"eventually undoing the motion when calling [method commit_handle]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:133
+msgid ""
+"Returns the [EditorNode3DGizmoPlugin] that owns this gizmo. It's useful to "
+"retrieve materials using [method EditorNode3DGizmoPlugin.get_material]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:140
+msgid "Returns the Node3D node associated with this gizmo."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:149
+msgid ""
+"Returns [code]true[/code] if the handle at index [code]index[/code] is "
+"highlighted by being hovered with the mouse."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:156
+msgid ""
+"This function is called when the [Node3D] this gizmo refers to changes (the "
+"[method Node3D.update_gizmo] is called)."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:169
+msgid ""
+"This function is used when the user drags a gizmo handle (previously added "
+"with [method add_handles]) in screen coordinates.\n"
+"The [Camera3D] is also provided so screen coordinates can be converted to "
+"raycasts."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:179
+msgid ""
+"Sets the gizmo's hidden state. If [code]true[/code], the gizmo will be "
+"hidden. If [code]false[/code], it will be shown."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:188
+msgid ""
+"Sets the reference [Node3D] node for the gizmo. [code]node[/code] must "
+"inherit from [Node3D]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:4
+msgid "Used by the editor to define Node3D gizmo types."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:7
+msgid ""
+"EditorNode3DGizmoPlugin allows you to define a new type of Gizmo. There are "
+"two main ways to do so: extending [EditorNode3DGizmoPlugin] for the simpler "
+"gizmos, or creating a new [EditorNode3DGizmo] type. See the tutorial in the "
+"documentation for more info."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:10
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/plugins/editor/"
+"spatial_gizmos.html"
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:21
+msgid ""
+"Adds a new material to the internal material list for the plugin. It can "
+"then be accessed with [method get_material]. Should not be overridden."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:28
+msgid ""
+"Override this method to define whether the gizmo can be hidden or not. "
+"Returns [code]true[/code] if not overridden."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:43
+msgid ""
+"Override this method to commit gizmo handles. Called for this plugin's "
+"active gizmos."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:52
+msgid ""
+"Override this method to return a custom [EditorNode3DGizmo] for the spatial "
+"nodes of your choice, return [code]null[/code] for the rest of nodes. See "
+"also [method has_gizmo]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:63
+msgid ""
+"Creates a handle material with its variants (selected and/or editable) and "
+"adds them to the internal material list. They can then be accessed with "
+"[method get_material] and used in [method EditorNode3DGizmo.add_handles]. "
+"Should not be overridden."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:78
+msgid ""
+"Creates an icon material with its variants (selected and/or editable) and "
+"adds them to the internal material list. They can then be accessed with "
+"[method get_material] and used in [method EditorNode3DGizmo."
+"add_unscaled_billboard]. Should not be overridden."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:95
+msgid ""
+"Creates an unshaded material with its variants (selected and/or editable) "
+"and adds them to the internal material list. They can then be accessed with "
+"[method get_material] and used in [method EditorNode3DGizmo.add_mesh] and "
+"[method EditorNode3DGizmo.add_lines]. Should not be overridden."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:106
+msgid ""
+"Override this method to provide gizmo's handle names. Called for this "
+"plugin's active gizmos."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:117
+msgid ""
+"Gets actual value of a handle from gizmo. Called for this plugin's active "
+"gizmos."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:128
+msgid ""
+"Gets material from the internal list of materials. If an [EditorNode3DGizmo] "
+"is provided, it will try to get the corresponding variant (selected and/or "
+"editable)."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:135
+msgid ""
+"Override this method to provide the name that will appear in the gizmo "
+"visibility menu."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:142
+msgid ""
+"Override this method to set the gizmo's priority. Higher values correspond "
+"to higher priority. If a gizmo with higher priority conflicts with another "
+"gizmo, only the gizmo with higher priority will be used.\n"
+"All built-in editor gizmos return a priority of [code]-1[/code]. If not "
+"overridden, this method will return [code]0[/code], which means custom "
+"gizmos will automatically override built-in gizmos."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:152
+msgid ""
+"Override this method to define which Node3D nodes have a gizmo from this "
+"plugin. Whenever a [Node3D] node is added to a scene this method is called, "
+"if it returns [code]true[/code] the node gets a generic [EditorNode3DGizmo] "
+"assigned and is added to this plugin's list of active gizmos."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:163
+msgid ""
+"Gets whether a handle is highlighted or not. Called for this plugin's active "
+"gizmos."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:170
+msgid ""
+"Override this method to define whether Node3D with this gizmo should be "
+"selecteble even when the gizmo is hidden."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:179
+msgid ""
+"Callback to redraw the provided gizmo. Called for this plugin's active "
+"gizmos."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:194
+msgid ""
+"Update the value of a handle after it has been updated. Called for this "
+"plugin's active gizmos."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:4
+msgid "Used by the editor to extend its functionality."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:7
+msgid ""
+"Plugins are used by the editor to extend functionality. The most common "
+"types of plugins are those which edit a given node or resource type, import "
+"plugins and export plugins. See also [EditorScript] to add functions to the "
+"editor."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:10
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/plugins/editor/index.html"
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:21
+msgid ""
+"Adds a script at [code]path[/code] to the Autoload list as [code]name[/code]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:32
+msgid ""
+"Adds a control to the bottom panel (together with Output, Debug, Animation, "
+"etc). Returns a reference to the button added. It's up to you to hide/show "
+"the button when needed. When your plugin is deactivated, make sure to remove "
+"your custom control with [method remove_control_from_bottom_panel] and free "
+"it with [method Node.queue_free]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:43
+msgid ""
+"Adds a custom control to a container (see [enum CustomControlContainer]). "
+"There are many locations where custom controls can be added in the editor "
+"UI.\n"
+"Please remember that you have to manage the visibility of your custom "
+"controls yourself (and likely hide it after adding it).\n"
+"When your plugin is deactivated, make sure to remove your custom control "
+"with [method remove_control_from_container] and free it with [method Node."
+"queue_free]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:56
+msgid ""
+"Adds the control to a specific dock slot (see [enum DockSlot] for options).\n"
+"If the dock is repositioned and as long as the plugin is active, the editor "
+"will save the dock position on further sessions.\n"
+"When your plugin is deactivated, make sure to remove your custom control "
+"with [method remove_control_from_docks] and free it with [method Node."
+"queue_free]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:73
+msgid ""
+"Adds a custom type, which will appear in the list of nodes or resources. An "
+"icon can be optionally passed.\n"
+"When given node or resource is selected, the base type will be instanced (e."
+"g. \"Node3D\", \"Control\", \"Resource\"), then the script will be loaded "
+"and set to this object.\n"
+"You can use the virtual method [method handles] to check if your custom "
+"object is being edited by checking the script or using the [code]is[/code] "
+"keyword.\n"
+"During run-time, this will be a simple object with a script so this function "
+"does not need to be called then."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:131
+msgid ""
+"Adds a custom menu item to [b]Project > Tools[/b] as [code]name[/code] that "
+"calls [code]callback[/code] on an instance of [code]handler[/code] with a "
+"parameter [code]ud[/code] when user activates it."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:142
+msgid ""
+"Adds a custom submenu under [b]Project > Tools >[/b] [code]name[/code]. "
+"[code]submenu[/code] should be an object of class [PopupMenu]. This submenu "
+"should be cleaned up using [code]remove_tool_menu_item(name)[/code]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:151
+msgid ""
+"Registers a custom translation parser plugin for extracting translatable "
+"strings from custom files."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:158
+msgid ""
+"This method is called when the editor is about to save the project, switch "
+"to another tab, etc. It asks the plugin to apply any pending state changes "
+"to ensure consistency.\n"
+"This is used, for example, in shader editors to let the plugin know that it "
+"must apply the shader code being written by the user to the object."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:172
+msgid ""
+"Clear all the state and reset the object being edited to zero. This ensures "
+"your plugin does not keep editing a currently existing node, or a node from "
+"the wrong scene."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:179
+msgid ""
+"Called by the engine when the user disables the [EditorPlugin] in the Plugin "
+"tab of the project settings window."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:188
+msgid ""
+"This function is used for plugins that edit specific object types (nodes or "
+"resources). It requests the editor to edit the given object."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:195
+msgid ""
+"Called by the engine when the user enables the [EditorPlugin] in the Plugin "
+"tab of the project settings window."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:220
+msgid ""
+"Called when there is a root node in the current edited scene, [method "
+"handles] is implemented and an [InputEvent] happens in the 2D viewport. "
+"Intercepts the [InputEvent], if [code]return true[/code] [EditorPlugin] "
+"consumes the [code]event[/code], otherwise forwards [code]event[/code] to "
+"other Editor classes. Example:\n"
+"[codeblock]\n"
+"# Prevents the InputEvent to reach other Editor classes\n"
+"func forward_canvas_gui_input(event):\n"
+" var forward = true\n"
+" return forward\n"
+"[/codeblock]\n"
+"Must [code]return false[/code] in order to forward the [InputEvent] to other "
+"Editor classes. Example:\n"
+"[codeblock]\n"
+"# Consumes InputEventMouseMotion and forwards other InputEvent types\n"
+"func forward_canvas_gui_input(event):\n"
+" var forward = false\n"
+" if event is InputEventMouseMotion:\n"
+" forward = true\n"
+" return forward\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:246
+msgid ""
+"Called when there is a root node in the current edited scene, [method "
+"handles] is implemented and an [InputEvent] happens in the 3D viewport. "
+"Intercepts the [InputEvent], if [code]return true[/code] [EditorPlugin] "
+"consumes the [code]event[/code], otherwise forwards [code]event[/code] to "
+"other Editor classes. Example:\n"
+"[codeblock]\n"
+"# Prevents the InputEvent to reach other Editor classes\n"
+"func forward_spatial_gui_input(camera, event):\n"
+" var forward = true\n"
+" return forward\n"
+"[/codeblock]\n"
+"Must [code]return false[/code] in order to forward the [InputEvent] to other "
+"Editor classes. Example:\n"
+"[codeblock]\n"
+"# Consumes InputEventMouseMotion and forwards other InputEvent types\n"
+"func forward_spatial_gui_input(camera, event):\n"
+" var forward = false\n"
+" if event is InputEventMouseMotion:\n"
+" forward = true\n"
+" return forward\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:268
+msgid ""
+"This is for editors that edit script-based objects. You can return a list of "
+"breakpoints in the format ([code]script:line[/code]), for example: "
+"[code]res://path_to_script.gd:25[/code]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:275
+msgid ""
+"Returns the [EditorInterface] object that gives you control over Godot "
+"editor's window and its functionalities."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:282
+msgid ""
+"Override this method in your plugin to return a [Texture2D] in order to give "
+"it an icon.\n"
+"For main screen plugins, this appears at the top of the screen, to the right "
+"of the \"2D\", \"3D\", \"Script\", and \"AssetLib\" buttons.\n"
+"Ideally, the plugin icon should be white with a transparent background and "
+"16x16 pixels in size.\n"
+"[codeblock]\n"
+"func get_plugin_icon():\n"
+" # You can use a custom icon:\n"
+" return preload(\"res://addons/my_plugin/my_plugin_icon.svg\")\n"
+" # Or use a built-in icon:\n"
+" return get_editor_interface().get_base_control().get_icon(\"Node\", "
+"\"EditorIcons\")\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:298
+msgid ""
+"Override this method in your plugin to provide the name of the plugin when "
+"displayed in the Godot editor.\n"
+"For main screen plugins, this appears at the top of the screen, to the right "
+"of the \"2D\", \"3D\", \"Script\", and \"AssetLib\" buttons."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:306
+msgid ""
+"Gets the Editor's dialogue used for making scripts.\n"
+"[b]Note:[/b] Users can configure it before use."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:314
+msgid ""
+"Gets the state of your plugin editor. This is used when saving the scene (so "
+"state is kept when opening it again) and for switching tabs (so state can be "
+"restored when the tab returns)."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:321
+msgid ""
+"Gets the undo/redo object. Most actions in the editor can be undoable, so "
+"use this object to make sure this happens when it's worth it."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:330
+msgid ""
+"Gets the GUI layout of the plugin. This is used to save the project's editor "
+"layout when [method queue_save_layout] is called or the editor layout was "
+"changed(For example changing the position of a dock)."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:339
+msgid ""
+"Implement this function if your plugin edits a specific type of object "
+"(Resource or Node). If you return [code]true[/code], then you will get the "
+"functions [method edit] and [method make_visible] called when the editor "
+"requests them. If you have declared the methods [method "
+"forward_canvas_gui_input] and [method forward_spatial_gui_input] these will "
+"be called too."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:346
+msgid ""
+"Returns [code]true[/code] if this is a main screen editor plugin (it goes in "
+"the workspace selector together with [b]2D[/b], [b]3D[/b], [b]Script[/b] and "
+"[b]AssetLib[/b])."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:369
+msgid ""
+"This function will be called when the editor is requested to become visible. "
+"It is used for plugins that edit a specific object type.\n"
+"Remember that you have to manage the visibility of all your editor controls "
+"manually."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:377
+msgid "Queue save the project's editor layout."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:386
+msgid "Removes an Autoload [code]name[/code] from the list."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:395
+msgid ""
+"Removes the control from the bottom panel. You have to manually [method Node."
+"queue_free] the control."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:406
+msgid ""
+"Removes the control from the specified container. You have to manually "
+"[method Node.queue_free] the control."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:415
+msgid ""
+"Removes the control from the dock. You have to manually [method Node."
+"queue_free] the control."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:424
+msgid "Removes a custom type added by [method add_custom_type]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:473
+msgid "Removes a menu [code]name[/code] from [b]Project > Tools[/b]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:482
+msgid "Removes a registered custom translation parser plugin."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:489
+msgid ""
+"This method is called after the editor saves the project or when it's "
+"closed. It asks the plugin to save edited external scenes/resources."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:502
+msgid ""
+"Use this method if you always want to receive inputs from 3D view screen "
+"inside [method forward_spatial_gui_input]. It might be especially usable if "
+"your plugin will want to use raycast in the scene."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:511
+msgid "Restore the state saved by [method get_state]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:520
+msgid "Restore the plugin GUI layout saved by [method get_window_layout]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:527
+msgid "Updates the overlays of the editor (2D/3D) viewport."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:536
+msgid ""
+"Emitted when user changes the workspace ([b]2D[/b], [b]3D[/b], [b]Script[/"
+"b], [b]AssetLib[/b]). Also works with custom screens defined by plugins."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:549
+msgid ""
+"Emitted when the scene is changed in the editor. The argument will return "
+"the root node of the scene that has just become active. If this scene is new "
+"and empty, the argument will be [code]null[/code]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:556
+msgid ""
+"Emitted when user closes a scene. The argument is file path to a closed "
+"scene."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:602
+msgid "Represents the size of the [enum DockSlot] enum."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:4
+msgid "Custom control to edit properties for adding into the inspector."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:7
+msgid ""
+"This control allows property editing for one or multiple properties into "
+"[EditorInspector]. It is added via [EditorInspectorPlugin]."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:18
+msgid ""
+"If any of the controls added can gain keyboard focus, add it here. This "
+"ensures that focus will be restored if the inspector is refreshed."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:33
+msgid ""
+"If one or several properties have changed, this must be called. [code]field[/"
+"code] is used in case your editor can modify fields separately (as an "
+"example, Vector3.x). The [code]changing[/code] argument avoids the editor "
+"requesting this property to be refreshed (leave as [code]false[/code] if "
+"unsure)."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:40
+msgid "Gets the edited object."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:47
+msgid ""
+"Gets the edited property. If your editor is for a single property (added via "
+"[method EditorInspectorPlugin.parse_property]), then this will return the "
+"property."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:54
+msgid "Override if you want to allow a custom tooltip over your property."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:63
+msgid ""
+"Adds controls with this function if you want them on the bottom (below the "
+"label)."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:70
+msgid "When this virtual function is called, you must update your editor."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:76
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is "
+"checkable."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:79
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is checked."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:82
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property can be "
+"deleted by the user."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:85
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property must draw "
+"with error color. This is used for editable children's properties."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:88
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property can add "
+"keys for animation."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:91
+msgid "Set this property to change the label (if you want to show one)."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:94
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is read-"
+"only."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:104
+msgid ""
+"Emit it if you want multiple properties modified at the same time. Do not "
+"use if added via [method EditorInspectorPlugin.parse_property]."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:113
+msgid "Used by sub-inspectors. Emit it if what was selected was an Object ID."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:122
+msgid ""
+"Do not emit this manually, use the [method emit_changed] method instead."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:131
+msgid "Emitted when a property was checked. Used internally."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:138
+msgid "Emitted when a property was deleted. Used internally."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:145
+msgid ""
+"Emit it if you want to add this value as an animation key (check for keying "
+"being enabled first)."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:154
+msgid "Emit it if you want to key a property with a single value."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:163
+msgid ""
+"If you want a sub-resource to be edited, emit this signal with the resource."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:172
+msgid "Emitted when selected. Used internally."
+msgstr ""
+
+#: doc/classes/EditorResourcePreview.xml:4
+msgid "Helper to generate previews of resources or files."
+msgstr ""
+
+#: doc/classes/EditorResourcePreview.xml:7
+msgid ""
+"This object is used to generate previews for resources of files.\n"
+"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
+"the singleton using [method EditorInterface.get_resource_previewer]."
+msgstr ""
+
+#: doc/classes/EditorResourcePreview.xml:19
+msgid "Create an own, custom preview generator."
+msgstr ""
+
+#: doc/classes/EditorResourcePreview.xml:28
+msgid ""
+"Check if the resource changed, if so, it will be invalidated and the "
+"corresponding signal emitted."
+msgstr ""
+
+#: doc/classes/EditorResourcePreview.xml:43
+msgid ""
+"Queue a resource being edited for preview (using an instance). Once the "
+"preview is ready, your receiver.receiver_func will be called either "
+"containing the preview texture or an empty texture (if no preview was "
+"possible). Callback must have the format: (path,texture,userdata). Userdata "
+"can be anything."
+msgstr ""
+
+#: doc/classes/EditorResourcePreview.xml:58
+msgid ""
+"Queue a resource file for preview (using a path). Once the preview is ready, "
+"your receiver.receiver_func will be called either containing the preview "
+"texture or an empty texture (if no preview was possible). Callback must have "
+"the format: (path,texture,userdata). Userdata can be anything."
+msgstr ""
+
+#: doc/classes/EditorResourcePreview.xml:67
+msgid "Removes a custom preview generator."
+msgstr ""
+
+#: doc/classes/EditorResourcePreview.xml:76
+msgid ""
+"Emitted if a preview was invalidated (changed). [code]path[/code] "
+"corresponds to the path of the preview."
+msgstr ""
+
+#: doc/classes/EditorResourcePreviewGenerator.xml:4
+msgid "Custom generator of previews."
+msgstr ""
+
+#: doc/classes/EditorResourcePreviewGenerator.xml:7
+msgid ""
+"Custom code to generate previews. Please check [code]file_dialog/"
+"thumbnail_size[/code] in [EditorSettings] to find out the right size to do "
+"previews at."
+msgstr ""
+
+#: doc/classes/EditorResourcePreviewGenerator.xml:16
+msgid ""
+"If this function returns [code]true[/code], the generator will call [method "
+"generate] or [method generate_from_path] for small previews as well.\n"
+"By default, it returns [code]false[/code]."
+msgstr ""
+
+#: doc/classes/EditorResourcePreviewGenerator.xml:28
+msgid ""
+"Generate a preview from a given resource with the specified size. This must "
+"always be implemented.\n"
+"Returning an empty texture is an OK way to fail and let another generator "
+"take care.\n"
+"Care must be taken because this function is always called from a thread (not "
+"the main thread)."
+msgstr ""
+
+#: doc/classes/EditorResourcePreviewGenerator.xml:41
+msgid ""
+"Generate a preview directly from a path with the specified size. "
+"Implementing this is optional, as default code will load and call [method "
+"generate].\n"
+"Returning an empty texture is an OK way to fail and let another generator "
+"take care.\n"
+"Care must be taken because this function is always called from a thread (not "
+"the main thread)."
+msgstr ""
+
+#: doc/classes/EditorResourcePreviewGenerator.xml:50
+msgid ""
+"If this function returns [code]true[/code], the generator will automatically "
+"generate the small previews from the normal preview texture generated by the "
+"methods [method generate] or [method generate_from_path].\n"
+"By default, it returns [code]false[/code]."
+msgstr ""
+
+#: doc/classes/EditorResourcePreviewGenerator.xml:60
+msgid ""
+"Returns [code]true[/code] if your generator supports the resource of type "
+"[code]type[/code]."
+msgstr ""
+
+#: doc/classes/EditorSceneImporter.xml:4
+msgid "Imports scenes from third-parties' 3D files."
+msgstr ""
+
+#: doc/classes/EditorSceneImporterAssimp.xml:4
+msgid "FBX 3D asset importer based on [url=http://assimp.org/]Assimp[/url]."
+msgstr ""
+
+#: doc/classes/EditorSceneImporterAssimp.xml:7
+msgid ""
+"This is an FBX 3D asset importer based on [url=http://assimp.org/]Assimp[/"
+"url]. It currently has many known limitations and works best with static "
+"meshes. Most animated meshes won't import correctly.\n"
+"If exporting a FBX scene from Autodesk Maya, use these FBX export settings:\n"
+"[codeblock]\n"
+"- Smoothing Groups\n"
+"- Smooth Mesh\n"
+"- Triangluate (for meshes with blend shapes)\n"
+"- Bake Animation\n"
+"- Resample All\n"
+"- Deformed Models\n"
+"- Skins\n"
+"- Blend Shapes\n"
+"- Curve Filters\n"
+"- Constant Key Reducer\n"
+"- Auto Tangents Only\n"
+"- *Do not check* Constraints (as it will break the file)\n"
+"- Can check Embed Media (embeds textures into the exported FBX file)\n"
+" - Note that when importing embedded media, the texture and mesh will be a "
+"single immutable file.\n"
+" - You will have to re-export then re-import the FBX if the texture has "
+"changed.\n"
+"- Units: Centimeters\n"
+"- Up Axis: Y\n"
+"- Binary format in FBX 2017\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/EditorScenePostImport.xml:4
+msgid "Post-processes scenes after import."
+msgstr ""
+
+#: doc/classes/EditorScenePostImport.xml:7
+msgid ""
+"Imported scenes can be automatically modified right after import by setting "
+"their [b]Custom Script[/b] Import property to a [code]tool[/code] script "
+"that inherits from this class.\n"
+"The [method post_import] callback receives the imported scene's root node "
+"and returns the modified version of the scene. Usage example:\n"
+"[codeblock]\n"
+"tool # Needed so it runs in editor\n"
+"extends EditorScenePostImport\n"
+"\n"
+"# This sample changes all node names\n"
+"\n"
+"# Called right after the scene is imported and gets the root node\n"
+"func post_import(scene):\n"
+" # Change all node names to \"modified_[oldnodename]\"\n"
+" iterate(scene)\n"
+" return scene # Remember to return the imported scene\n"
+"\n"
+"func iterate(node):\n"
+" if node != null:\n"
+" node.name = \"modified_\" + node.name\n"
+" for child in node.get_children():\n"
+" iterate(child)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/EditorScenePostImport.xml:29
+msgid ""
+"https://docs.godotengine.org/en/latest/getting_started/workflow/assets/"
+"importing_scenes.html#custom-script"
+msgstr ""
+
+#: doc/classes/EditorScenePostImport.xml:36
+msgid ""
+"Returns the source file path which got imported (e.g. [code]res://scene.dae[/"
+"code])."
+msgstr ""
+
+#: doc/classes/EditorScenePostImport.xml:43
+msgid "Returns the resource folder the imported scene file is located in."
+msgstr ""
+
+#: doc/classes/EditorScenePostImport.xml:52
+msgid ""
+"Called after the scene was imported. This method must return the modified "
+"version of the scene."
+msgstr ""
+
+#: doc/classes/EditorScript.xml:4
+msgid "Base script that can be used to add extension functions to the editor."
+msgstr ""
+
+#: doc/classes/EditorScript.xml:7
+msgid ""
+"Scripts extending this class and implementing its [method _run] method can "
+"be executed from the Script Editor's [b]File > Run[/b] menu option (or by "
+"pressing [kbd]Ctrl + Shift + X[/kbd]) while the editor is running. This is "
+"useful for adding custom in-editor functionality to Godot. For more complex "
+"additions, consider using [EditorPlugin]s instead.\n"
+"[b]Note:[/b] Extending scripts need to have [code]tool[/code] mode enabled.\n"
+"[b]Example script:[/b]\n"
+"[codeblock]\n"
+"tool\n"
+"extends EditorScript\n"
+"\n"
+"func _run():\n"
+" print(\"Hello from the Godot Editor!\")\n"
+"[/codeblock]\n"
+"[b]Note:[/b] The script is run in the Editor context, which means the output "
+"is visible in the console window started with the Editor (stdout) instead of "
+"the usual Godot [b]Output[/b] dock."
+msgstr ""
+
+#: doc/classes/EditorScript.xml:26
+msgid "This method is executed by the Editor when [b]File > Run[/b] is used."
+msgstr ""
+
+#: doc/classes/EditorScript.xml:35
+msgid ""
+"Adds [code]node[/code] as a child of the root node in the editor context.\n"
+"[b]Warning:[/b] The implementation of this method is currently disabled."
+msgstr ""
+
+#: doc/classes/EditorScript.xml:43
+msgid "Returns the [EditorInterface] singleton instance."
+msgstr ""
+
+#: doc/classes/EditorScript.xml:50
+msgid "Returns the Editor's currently active scene."
+msgstr ""
+
+#: doc/classes/EditorSelection.xml:4
+msgid "Manages the SceneTree selection in the editor."
+msgstr ""
+
+#: doc/classes/EditorSelection.xml:7
+msgid ""
+"This object manages the SceneTree selection in the editor.\n"
+"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
+"the singleton using [method EditorInterface.get_selection]."
+msgstr ""
+
+#: doc/classes/EditorSelection.xml:19
+msgid "Adds a node to the selection."
+msgstr ""
+
+#: doc/classes/EditorSelection.xml:26
+msgid "Clear the selection."
+msgstr ""
+
+#: doc/classes/EditorSelection.xml:33
+msgid "Gets the list of selected nodes."
+msgstr ""
+
+#: doc/classes/EditorSelection.xml:40
+msgid ""
+"Gets the list of selected nodes, optimized for transform operations (i.e. "
+"moving them, rotating, etc). This list avoids situations where a node is "
+"selected and also child/grandchild."
+msgstr ""
+
+#: doc/classes/EditorSelection.xml:49
+msgid "Removes a node from the selection."
+msgstr ""
+
+#: doc/classes/EditorSelection.xml:56
+msgid "Emitted when the selection changes."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:4
+msgid "Object that holds the project-independent editor settings."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:7
+msgid ""
+"Object that holds the project-independent editor settings. These settings "
+"are generally visible in the [b]Editor > Editor Settings[/b] menu.\n"
+"Property names use slash delimiters to distinguish sections. Setting values "
+"can be of any [Variant] type. It's recommended to use [code]snake_case[/"
+"code] for editor settings to be consistent with the Godot editor itself.\n"
+"Accessing the settings can be done using the following methods, such as:\n"
+"[codeblock]\n"
+"# `settings.set(\"some/property\", value)` also works as this class "
+"overrides `_set()` internally.\n"
+"settings.set_setting(\"some/property\",value)\n"
+"\n"
+"# `settings.get(\"some/property\", value)` also works as this class "
+"overrides `_get()` internally.\n"
+"settings.get_setting(\"some/property\")\n"
+"\n"
+"var list_of_settings = settings.get_property_list()\n"
+"[/codeblock]\n"
+"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
+"the singleton using [method EditorInterface.get_editor_settings]."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:30
+msgid ""
+"Adds a custom property info to a property. The dictionary must contain:\n"
+"- [code]name[/code]: [String] (the name of the property)\n"
+"- [code]type[/code]: [int] (see [enum Variant.Type])\n"
+"- optionally [code]hint[/code]: [int] (see [enum PropertyHint]) and "
+"[code]hint_string[/code]: [String]\n"
+"[b]Example:[/b]\n"
+"[codeblock]\n"
+"editor_settings.set(\"category/property_name\", 0)\n"
+"\n"
+"var property_info = {\n"
+" \"name\": \"category/property_name\",\n"
+" \"type\": TYPE_INT,\n"
+" \"hint\": PROPERTY_HINT_ENUM,\n"
+" \"hint_string\": \"one,two,three\"\n"
+"}\n"
+"\n"
+"editor_settings.add_property_info(property_info)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:55
+msgid "Erases the setting whose name is specified by [code]property[/code]."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:62
+msgid "Returns the list of favorite files and directories for this project."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:75
+msgid ""
+"Returns project-specific metadata for the [code]section[/code] and "
+"[code]key[/code] specified. If the metadata doesn't exist, [code]default[/"
+"code] will be returned instead. See also [method set_project_metadata]."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:82
+msgid ""
+"Returns the project-specific settings path. Projects all have a unique "
+"subdirectory inside the settings path where project-specific settings are "
+"saved."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:89
+msgid ""
+"Returns the list of recently visited folders in the file dialog for this "
+"project."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:98
+msgid ""
+"Returns the value of the setting specified by [code]name[/code]. This is "
+"equivalent to using [method Object.get] on the EditorSettings instance."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:105
+msgid ""
+"Gets the global settings path for the engine. Inside this path, you can find "
+"some standard paths such as:\n"
+"[code]settings/tmp[/code] - Used for temporary storage of files\n"
+"[code]settings/templates[/code] - Where export templates are located"
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:116
+msgid ""
+"Returns [code]true[/code] if the setting specified by [code]name[/code] "
+"exists, [code]false[/code] otherwise."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:125
+msgid ""
+"Returns [code]true[/code] if the setting specified by [code]name[/code] can "
+"have its value reverted to the default value, [code]false[/code] otherwise. "
+"When this method returns [code]true[/code], a Revert button will display "
+"next to the setting in the Editor Settings."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:134
+msgid ""
+"Returns the default value of the setting specified by [code]name[/code]. "
+"This is the value that would be applied when clicking the Revert button in "
+"the Editor Settings."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:143
+msgid "Sets the list of favorite files and directories for this project."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:156
+msgid ""
+"Sets the initial value of the setting specified by [code]name[/code] to "
+"[code]value[/code]. This is used to provide a value for the Revert button in "
+"the Editor Settings. If [code]update_current[/code] is true, the current "
+"value of the setting will be set to [code]value[/code] as well."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:169
+msgid ""
+"Sets project-specific metadata with the [code]section[/code], [code]key[/"
+"code] and [code]data[/code] specified. This metadata is stored outside the "
+"project folder and therefore won't be checked into version control. See also "
+"[method get_project_metadata]."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:178
+msgid ""
+"Sets the list of recently visited folders in the file dialog for this "
+"project."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:189
+msgid ""
+"Sets the [code]value[/code] of the setting specified by [code]name[/code]. "
+"This is equivalent to using [method Object.set] on the EditorSettings "
+"instance."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:196
+msgid "Emitted after any editor setting has changed."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:202
+msgid ""
+"Emitted after any editor setting has changed. It's used by various editor "
+"plugins to update their visuals on theme changes or logic on configuration "
+"changes."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:4
+msgid ""
+"Plugin for adding custom parsers to extract strings that are to be "
+"translated from custom files (.csv, .json etc.)."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:7
+msgid ""
+"Plugins are registered via [method EditorPlugin."
+"add_translation_parser_plugin] method. To define the parsing and string "
+"extraction logic, override the [method parse_file] method in script.\n"
+"The extracted strings will be written into a POT file selected by user under "
+"\"POT Generation\" in \"Localization\" tab in \"Project Settings\" menu.\n"
+"Below shows an example of a custom parser that extracts strings in a CSV "
+"file to write into a POT.\n"
+"[codeblock]\n"
+"tool\n"
+"extends EditorTranslationParserPlugin\n"
+"\n"
+"\n"
+"func parse_file(path, extracted_strings):\n"
+" var file = File.new()\n"
+" file.open(path, File.READ)\n"
+" var text = file.get_as_text()\n"
+" var split_strs = text.split(\",\", false, 0)\n"
+" for s in split_strs:\n"
+" extracted_strings.append(s)\n"
+" #print(\"Extracted string: \" + s)\n"
+"\n"
+"\n"
+"func get_recognized_extensions():\n"
+" return [\"csv\"]\n"
+"[/codeblock]\n"
+"[b]Note:[/b] If you override parsing logic for standard script types "
+"(GDScript, C#, etc.), it would be better to load the [code]path[/code] "
+"argument using [method ResourceLoader.load]. This is because built-in "
+"scripts are loaded as [Resource] type, not [File] type.\n"
+"For example:\n"
+"[codeblock]\n"
+"func parse_file(path, extracted_strings):\n"
+" var res = ResourceLoader.load(path, \"Script\")\n"
+" var text = res.get_source_code()\n"
+" # Parsing logic.\n"
+"\n"
+"\n"
+"func get_recognized_extensions():\n"
+" return [\"gd\"]\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:48
+msgid ""
+"Gets the list of file extensions to associate with this parser, e.g. [code]"
+"[\"csv\"][/code]."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:59
+msgid ""
+"Override this method to define a custom parsing logic to extract the "
+"translatable strings."
+msgstr ""
+
+#: doc/classes/EditorVCSInterface.xml:4
+msgid ""
+"Version Control System (VCS) interface which reads and writes to the local "
+"VCS in use."
+msgstr ""
+
+#: doc/classes/EditorVCSInterface.xml:7
+msgid ""
+"Used by the editor to display VCS extracted information in the editor. The "
+"implementation of this API is included in VCS addons, which are essentially "
+"GDNative plugins that need to be put into the project folder. These VCS "
+"addons are scripts which are attached (on demand) to the object instance of "
+"[code]EditorVCSInterface[/code]. All the functions listed below, instead of "
+"performing the task themselves, they call the internally defined functions "
+"in the VCS addons to provide a plug-n-play experience."
+msgstr ""
+
+#: doc/classes/EditorVCSInterface.xml:18
+msgid ""
+"Creates a version commit if the addon is initialized, else returns without "
+"doing anything. Uses the files which have been staged previously, with the "
+"commit message set to a value as provided as in the argument."
+msgstr ""
+
+#: doc/classes/EditorVCSInterface.xml:27
+msgid ""
+"Returns an [Array] of [Dictionary] objects containing the diff output from "
+"the VCS in use, if a VCS addon is initialized, else returns an empty [Array] "
+"object. The diff contents also consist of some contextual lines which "
+"provide context to the observed line change in the file.\n"
+"Each [Dictionary] object has the line diff contents under the keys:\n"
+"- [code]\"content\"[/code] to store a [String] containing the line contents\n"
+"- [code]\"status\"[/code] to store a [String] which contains [code]\"+\"[/"
+"code] in case the content is a line addition but it stores a [code]\"-\"[/"
+"code] in case of deletion and an empty string in the case the line content "
+"is neither an addition nor a deletion.\n"
+"- [code]\"new_line_number\"[/code] to store an integer containing the new "
+"line number of the line content.\n"
+"- [code]\"line_count\"[/code] to store an integer containing the number of "
+"lines in the line content.\n"
+"- [code]\"old_line_number\"[/code] to store an integer containing the old "
+"line number of the line content.\n"
+"- [code]\"offset\"[/code] to store the offset of the line change since the "
+"first contextual line content."
+msgstr ""
+
+#: doc/classes/EditorVCSInterface.xml:41
+msgid ""
+"Returns a [Dictionary] containing the path of the detected file change "
+"mapped to an integer signifying what kind of a change the corresponding file "
+"has experienced.\n"
+"The following integer values are being used to signify that the detected "
+"file is:\n"
+"- [code]0[/code]: New to the VCS working directory\n"
+"- [code]1[/code]: Modified\n"
+"- [code]2[/code]: Renamed\n"
+"- [code]3[/code]: Deleted\n"
+"- [code]4[/code]: Typechanged"
+msgstr ""
+
+#: doc/classes/EditorVCSInterface.xml:54
+msgid "Returns the project name of the VCS working directory."
+msgstr ""
+
+#: doc/classes/EditorVCSInterface.xml:61
+msgid ""
+"Returns the name of the VCS if the VCS has been initialized, else return an "
+"empty string."
+msgstr ""
+
+#: doc/classes/EditorVCSInterface.xml:70
+msgid ""
+"Initializes the VCS addon if not already. Uses the argument value as the "
+"path to the working directory of the project. Creates the initial commit if "
+"required. Returns [code]true[/code] if no failure occurs, else returns "
+"[code]false[/code]."
+msgstr ""
+
+#: doc/classes/EditorVCSInterface.xml:77
+msgid ""
+"Returns [code]true[/code] if the addon is ready to respond to function "
+"calls, else returns [code]false[/code]."
+msgstr ""
+
+#: doc/classes/EditorVCSInterface.xml:84
+msgid ""
+"Returns [code]true[/code] if the VCS addon has been initialized, else "
+"returns [code]false[/code]."
+msgstr ""
+
+#: doc/classes/EditorVCSInterface.xml:91
+msgid ""
+"Shuts down the VCS addon to allow cleanup code to run on call. Returns "
+"[code]true[/code] is no failure occurs, else returns [code]false[/code]."
+msgstr ""
+
+#: doc/classes/EditorVCSInterface.xml:100
+msgid ""
+"Stages the file which should be committed when [method EditorVCSInterface."
+"commit] is called. Argument should contain the absolute path."
+msgstr ""
+
+#: doc/classes/EditorVCSInterface.xml:109
+msgid ""
+"Unstages the file which was staged previously to be committed, so that it is "
+"no longer committed when [method EditorVCSInterface.commit] is called. "
+"Argument should contain the absolute path."
+msgstr ""
+
+#: doc/classes/EncodedObjectAsID.xml:4
+msgid "Holds a reference to an [Object]'s instance ID."
+msgstr ""
+
+#: doc/classes/EncodedObjectAsID.xml:7
+msgid ""
+"Utility class which holds a reference to the internal identifier of an "
+"[Object] instance, as given by [method Object.get_instance_id]. This ID can "
+"then be used to retrieve the object instance with [method @GDScript."
+"instance_from_id].\n"
+"This class is used internally by the editor inspector and script debugger, "
+"but can also be used in plugins to pass and display objects as their IDs."
+msgstr ""
+
+#: doc/classes/EncodedObjectAsID.xml:16
+msgid ""
+"The [Object] identifier stored in this [EncodedObjectAsID] instance. The "
+"object instance can be retrieved with [method @GDScript.instance_from_id]."
+msgstr ""
+
+#: doc/classes/Engine.xml:4
+msgid "Access to engine properties."
+msgstr ""
+
+#: doc/classes/Engine.xml:7
+msgid ""
+"The [Engine] singleton allows you to query and modify the project's run-time "
+"parameters, such as frames per second, time scale, and others."
+msgstr ""
+
+#: doc/classes/Engine.xml:16
+msgid ""
+"Returns engine author information in a Dictionary.\n"
+"[code]lead_developers[/code] - Array of Strings, lead developer names\n"
+"[code]founders[/code] - Array of Strings, founder names\n"
+"[code]project_managers[/code] - Array of Strings, project manager names\n"
+"[code]developers[/code] - Array of Strings, developer names"
+msgstr ""
+
+#: doc/classes/Engine.xml:27
+msgid ""
+"Returns an Array of copyright information Dictionaries.\n"
+"[code]name[/code] - String, component name\n"
+"[code]parts[/code] - Array of Dictionaries {[code]files[/code], "
+"[code]copyright[/code], [code]license[/code]} describing subsections of the "
+"component"
+msgstr ""
+
+#: doc/classes/Engine.xml:36
+msgid ""
+"Returns a Dictionary of Arrays of donor names.\n"
+"{[code]platinum_sponsors[/code], [code]gold_sponsors[/code], "
+"[code]mini_sponsors[/code], [code]gold_donors[/code], [code]silver_donors[/"
+"code], [code]bronze_donors[/code]}"
+msgstr ""
+
+#: doc/classes/Engine.xml:44
+msgid ""
+"Returns the total number of frames drawn. If the render loop is disabled "
+"with [code]--disable-render-loop[/code] via command line, this returns "
+"[code]0[/code]. See also [method get_idle_frames]."
+msgstr ""
+
+#: doc/classes/Engine.xml:51
+msgid "Returns the frames per second of the running game."
+msgstr ""
+
+#: doc/classes/Engine.xml:58
+msgid ""
+"Returns the total number of frames passed since engine initialization which "
+"is advanced on each [b]idle frame[/b], regardless of whether the render loop "
+"is enabled. See also [method get_frames_drawn]."
+msgstr ""
+
+#: doc/classes/Engine.xml:65
+msgid ""
+"Returns Dictionary of licenses used by Godot and included third party "
+"components."
+msgstr ""
+
+#: doc/classes/Engine.xml:72
+msgid "Returns Godot license text."
+msgstr ""
+
+#: doc/classes/Engine.xml:79
+msgid "Returns the main loop object (see [MainLoop] and [SceneTree])."
+msgstr ""
+
+#: doc/classes/Engine.xml:86
+msgid ""
+"Returns the total number of frames passed since engine initialization which "
+"is advanced on each [b]physics frame[/b]."
+msgstr ""
+
+#: doc/classes/Engine.xml:93
+msgid ""
+"Returns the fraction through the current physics tick we are at the time of "
+"rendering the frame. This can be used to implement fixed timestep "
+"interpolation."
+msgstr ""
+
+#: doc/classes/Engine.xml:102
+msgid ""
+"Returns a global singleton with given [code]name[/code]. Often used for "
+"plugins, e.g. GodotPayments."
+msgstr ""
+
+#: doc/classes/Engine.xml:109
+msgid ""
+"Returns the current engine version information in a Dictionary.\n"
+"[code]major[/code] - Holds the major version number as an int\n"
+"[code]minor[/code] - Holds the minor version number as an int\n"
+"[code]patch[/code] - Holds the patch version number as an int\n"
+"[code]hex[/code] - Holds the full version number encoded as a "
+"hexadecimal int with one byte (2 places) per number (see example below)\n"
+"[code]status[/code] - Holds the status (e.g. \"beta\", \"rc1\", "
+"\"rc2\", ... \"stable\") as a String\n"
+"[code]build[/code] - Holds the build name (e.g. \"custom_build\") as a "
+"String\n"
+"[code]hash[/code] - Holds the full Git commit hash as a String\n"
+"[code]year[/code] - Holds the year the version was released in as an "
+"int\n"
+"[code]string[/code] - [code]major[/code] + [code]minor[/code] + "
+"[code]patch[/code] + [code]status[/code] + [code]build[/code] in a single "
+"String\n"
+"The [code]hex[/code] value is encoded as follows, from left to right: one "
+"byte for the major, one byte for the minor, one byte for the patch version. "
+"For example, \"3.1.12\" would be [code]0x03010C[/code]. [b]Note:[/b] It's "
+"still an int internally, and printing it will give you its decimal "
+"representation, which is not particularly meaningful. Use hexadecimal "
+"literals for easy version comparisons from code:\n"
+"[codeblock]\n"
+"if Engine.get_version_info().hex >= 0x030200:\n"
+" # Do things specific to version 3.2 or later\n"
+"else:\n"
+" # Do things specific to versions before 3.2\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Engine.xml:134
+msgid ""
+"Returns [code]true[/code] if a singleton with given [code]name[/code] exists "
+"in global scope."
+msgstr ""
+
+#: doc/classes/Engine.xml:141
+msgid ""
+"Returns [code]true[/code] if the game is inside the fixed process and "
+"physics phase of the game loop."
+msgstr ""
+
+#: doc/classes/Engine.xml:147
+msgid ""
+"If [code]true[/code], it is running inside the editor. Useful for tool "
+"scripts."
+msgstr ""
+
+#: doc/classes/Engine.xml:150
+msgid ""
+"The number of fixed iterations per second. This controls how often physics "
+"simulation and [method Node._physics_process] methods are run. This value "
+"should generally always be set to [code]60[/code] or above, as Godot doesn't "
+"interpolate the physics step. As a result, values lower than [code]60[/code] "
+"will look stuttery. This value can be increased to make input more reactive "
+"or work around tunneling issues, but keep in mind doing so will increase CPU "
+"usage."
+msgstr ""
+
+#: doc/classes/Engine.xml:153
+msgid ""
+"Controls how much physics ticks are synchronized with real time. For 0 or "
+"less, the ticks are synchronized. Such values are recommended for network "
+"games, where clock synchronization matters. Higher values cause higher "
+"deviation of in-game clock and real clock, but allows to smooth out "
+"framerate jitters. The default value of 0.5 should be fine for most; values "
+"above 2 could cause the game to react to dropped frames with a noticeable "
+"delay and are not recommended."
+msgstr ""
+
+#: doc/classes/Engine.xml:156
+msgid ""
+"The desired frames per second. If the hardware cannot keep up, this setting "
+"may not be respected. A value of 0 means no limit."
+msgstr ""
+
+#: doc/classes/Engine.xml:159
+msgid ""
+"Controls how fast or slow the in-game clock ticks versus the real life one. "
+"It defaults to 1.0. A value of 2.0 means the game moves twice as fast as "
+"real life, whilst a value of 0.5 means the game moves at half the regular "
+"speed."
+msgstr ""
+
+#: doc/classes/Environment.xml:4
+msgid ""
+"Resource for environment nodes (like [WorldEnvironment]) that define "
+"multiple rendering options."
+msgstr ""
+
+#: doc/classes/Environment.xml:7
+msgid ""
+"Resource for environment nodes (like [WorldEnvironment]) that define "
+"multiple environment operations (such as background [Sky] or [Color], "
+"ambient light, fog, depth-of-field...). These parameters affect the final "
+"render of the scene. The order of these operations is:\n"
+"- Depth of Field Blur\n"
+"- Glow\n"
+"- Tonemap (Auto Exposure)\n"
+"- Adjustments"
+msgstr ""
+
+#: doc/classes/Environment.xml:14 doc/classes/WorldEnvironment.xml:12
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/3d/"
+"environment_and_post_processing.html"
+msgstr ""
+
+#: doc/classes/Environment.xml:15
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/3d/high_dynamic_range.html"
+msgstr ""
+
+#: doc/classes/Environment.xml:24
+msgid ""
+"Returns [code]true[/code] if the glow level [code]idx[/code] is specified, "
+"[code]false[/code] otherwise."
+msgstr ""
+
+#: doc/classes/Environment.xml:35
+msgid ""
+"Enables or disables the glow level at index [code]idx[/code]. 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."
+msgstr ""
+
+#: doc/classes/Environment.xml:41
+msgid ""
+"The global brightness value of the rendered scene. Effective only if "
+"[code]adjustment_enabled[/code] is [code]true[/code]."
+msgstr ""
+
+#: doc/classes/Environment.xml:44
+msgid ""
+"Applies the provided [Texture2D] resource to affect the global color aspect "
+"of the rendered scene. Effective only if [code]adjustment_enabled[/code] is "
+"[code]true[/code]."
+msgstr ""
+
+#: doc/classes/Environment.xml:47
+msgid ""
+"The global contrast value of the rendered scene (default value is 1). "
+"Effective only if [code]adjustment_enabled[/code] is [code]true[/code]."
+msgstr ""
+
+#: doc/classes/Environment.xml:50
+msgid ""
+"If [code]true[/code], enables the [code]adjustment_*[/code] properties "
+"provided by this resource. If [code]false[/code], modifications to the "
+"[code]adjustment_*[/code] properties will have no effect on the rendered "
+"scene."
+msgstr ""
+
+#: doc/classes/Environment.xml:53
+msgid ""
+"The global color saturation value of the rendered scene (default value is "
+"1). Effective only if [code]adjustment_enabled[/code] is [code]true[/code]."
+msgstr ""
+
+#: doc/classes/Environment.xml:56
+msgid "The ambient light's [Color]."
+msgstr ""
+
+#: doc/classes/Environment.xml:59
+msgid ""
+"The ambient light's energy. The higher the value, the stronger the light."
+msgstr ""
+
+#: doc/classes/Environment.xml:64
+msgid ""
+"Defines the amount of light that the sky brings on the scene. A value of 0 "
+"means that the sky's light emission has no effect on the scene illumination, "
+"thus all ambient illumination is provided by the ambient light. On the "
+"contrary, a value of 1 means that all the light that affects the scene is "
+"provided by the sky, thus the ambient light parameter has no effect on the "
+"scene."
+msgstr ""
+
+#: doc/classes/Environment.xml:69
+msgid ""
+"If [code]true[/code], enables the tonemapping auto exposure mode of the "
+"scene renderer. If [code]true[/code], the renderer will automatically "
+"determine the exposure setting to adapt to the scene's illumination and the "
+"observed light."
+msgstr ""
+
+#: doc/classes/Environment.xml:72
+msgid "The maximum luminance value for the auto exposure."
+msgstr ""
+
+#: doc/classes/Environment.xml:75
+msgid "The minimum luminance value for the auto exposure."
+msgstr ""
+
+#: doc/classes/Environment.xml:78
+msgid ""
+"The scale of the auto exposure effect. Affects the intensity of auto "
+"exposure."
+msgstr ""
+
+#: doc/classes/Environment.xml:81
+msgid ""
+"The speed of the auto exposure effect. Affects the time needed for the "
+"camera to perform auto exposure."
+msgstr ""
+
+#: doc/classes/Environment.xml:84
+msgid "The ID of the camera feed to show in the background."
+msgstr ""
+
+#: doc/classes/Environment.xml:87
+msgid ""
+"The maximum layer ID to display. Only effective when using the [constant "
+"BG_CANVAS] background mode."
+msgstr ""
+
+#: doc/classes/Environment.xml:90
+msgid ""
+"The [Color] displayed for clear areas of the scene. Only effective when "
+"using the [constant BG_COLOR] background mode."
+msgstr ""
+
+#: doc/classes/Environment.xml:93
+msgid "The power of the light emitted by the background."
+msgstr ""
+
+#: doc/classes/Environment.xml:96
+msgid "The background mode. See [enum BGMode] for possible values."
+msgstr ""
+
+#: doc/classes/Environment.xml:99
+msgid "The fog's [Color]."
+msgstr ""
+
+#: doc/classes/Environment.xml:102
+msgid "The fog's depth starting distance from the camera."
+msgstr ""
+
+#: doc/classes/Environment.xml:105
+msgid ""
+"The fog depth's intensity curve. A number of presets are available in the "
+"[b]Inspector[/b] by right-clicking the curve."
+msgstr ""
+
+#: doc/classes/Environment.xml:108
+msgid ""
+"If [code]true[/code], the depth fog effect is enabled. When enabled, fog "
+"will appear in the distance (relative to the camera)."
+msgstr ""
+
+#: doc/classes/Environment.xml:111
+msgid ""
+"The fog's depth end distance from the camera. If this value is set to 0, it "
+"will be equal to the current camera's [member Camera3D.far] value."
+msgstr ""
+
+#: doc/classes/Environment.xml:114
+msgid ""
+"If [code]true[/code], fog effects are enabled. [member fog_height_enabled] "
+"and/or [member fog_depth_enabled] must be set to [code]true[/code] to "
+"actually display fog."
+msgstr ""
+
+#: doc/classes/Environment.xml:117
+msgid ""
+"The height fog's intensity. A number of presets are available in the "
+"[b]Inspector[/b] by right-clicking the curve."
+msgstr ""
+
+#: doc/classes/Environment.xml:120
+msgid ""
+"If [code]true[/code], the height fog effect is enabled. When enabled, fog "
+"will appear in a defined height range, regardless of the distance from the "
+"camera. This can be used to simulate \"deep water\" effects with a lower "
+"performance cost compared to a dedicated shader."
+msgstr ""
+
+#: doc/classes/Environment.xml:123
+msgid ""
+"The Y coordinate where the height fog will be the most intense. If this "
+"value is greater than [member fog_height_min], fog will be displayed from "
+"bottom to top. Otherwise, it will be displayed from top to bottom."
+msgstr ""
+
+#: doc/classes/Environment.xml:126
+msgid ""
+"The Y coordinate where the height fog will be the least intense. If this "
+"value is greater than [member fog_height_max], fog will be displayed from "
+"top to bottom. Otherwise, it will be displayed from bottom to top."
+msgstr ""
+
+#: doc/classes/Environment.xml:129
+msgid ""
+"The intensity of the depth fog color transition when looking towards the "
+"sun. The sun's direction is determined automatically using the "
+"DirectionalLight3D node in the scene."
+msgstr ""
+
+#: doc/classes/Environment.xml:132
+msgid "The depth fog's [Color] when looking towards the sun."
+msgstr ""
+
+#: doc/classes/Environment.xml:135
+msgid ""
+"The intensity of the fog light transmittance effect. Amount of light that "
+"the fog transmits."
+msgstr ""
+
+#: doc/classes/Environment.xml:138
+msgid ""
+"Enables fog's light transmission effect. If [code]true[/code], light will be "
+"more visible in the fog to simulate light scattering as in real life."
+msgstr ""
+
+#: doc/classes/Environment.xml:141
+msgid "The glow blending mode."
+msgstr ""
+
+#: doc/classes/Environment.xml:144
+msgid ""
+"The bloom's intensity. If set to a value higher than [code]0[/code], this "
+"will make glow visible in areas darker than the [member glow_hdr_threshold]."
+msgstr ""
+
+#: doc/classes/Environment.xml:147
+msgid "If [code]true[/code], the glow effect is enabled."
+msgstr ""
+
+#: doc/classes/Environment.xml:150
+msgid ""
+"The higher threshold of the HDR glow. Areas brighter than this threshold "
+"will be clamped for the purposes of the glow effect."
+msgstr ""
+
+#: doc/classes/Environment.xml:153
+msgid "The bleed scale of the HDR glow."
+msgstr ""
+
+#: doc/classes/Environment.xml:156
+msgid ""
+"The lower threshold of the HDR glow. When using the GLES2 renderer (which "
+"doesn't support HDR), this needs to be below [code]1.0[/code] for glow to be "
+"visible. A value of [code]0.9[/code] works well in this case."
+msgstr ""
+
+#: doc/classes/Environment.xml:159
+msgid ""
+"The glow intensity. When using the GLES2 renderer, this should be increased "
+"to 1.5 to compensate for the lack of HDR rendering."
+msgstr ""
+
+#: doc/classes/Environment.xml:162
+msgid ""
+"If [code]true[/code], the 1st level of glow is enabled. This is the most "
+"\"local\" level (least blurry)."
+msgstr ""
+
+#: doc/classes/Environment.xml:165
+msgid "If [code]true[/code], the 2th level of glow is enabled."
+msgstr ""
+
+#: doc/classes/Environment.xml:168
+msgid "If [code]true[/code], the 3th level of glow is enabled."
+msgstr ""
+
+#: doc/classes/Environment.xml:171
+msgid "If [code]true[/code], the 4th level of glow is enabled."
+msgstr ""
+
+#: doc/classes/Environment.xml:174
+msgid "If [code]true[/code], the 5th level of glow is enabled."
+msgstr ""
+
+#: doc/classes/Environment.xml:177
+msgid "If [code]true[/code], the 6th level of glow is enabled."
+msgstr ""
+
+#: doc/classes/Environment.xml:180
+msgid ""
+"If [code]true[/code], the 7th level of glow is enabled. This is the most "
+"\"global\" level (blurriest)."
+msgstr ""
+
+#: doc/classes/Environment.xml:185
+msgid ""
+"The glow strength. When using the GLES2 renderer, this should be increased "
+"to 1.3 to compensate for the lack of HDR rendering."
+msgstr ""
+
+#: doc/classes/Environment.xml:214
+msgid "The [Sky] resource used for this [Environment]."
+msgstr ""
+
+#: doc/classes/Environment.xml:221
+msgid "The depth tolerance for screen-space reflections."
+msgstr ""
+
+#: doc/classes/Environment.xml:224
+msgid ""
+"If [code]true[/code], screen-space reflections are enabled. Screen-space "
+"reflections are more accurate than reflections from [GIProbe]s or "
+"[ReflectionProbe]s, but are slower and can't reflect surfaces occluded by "
+"others."
+msgstr ""
+
+#: doc/classes/Environment.xml:227
+msgid ""
+"The fade-in distance for screen-space reflections. Affects the area from the "
+"reflected material to the screen-space reflection)."
+msgstr ""
+
+#: doc/classes/Environment.xml:230
+msgid ""
+"The fade-out distance for screen-space reflections. Affects the area from "
+"the screen-space reflection to the \"global\" reflection."
+msgstr ""
+
+#: doc/classes/Environment.xml:233
+msgid ""
+"The maximum number of steps for screen-space reflections. Higher values are "
+"slower."
+msgstr ""
+
+#: doc/classes/Environment.xml:236
+msgid ""
+"The screen-space ambient occlusion intensity on materials that have an AO "
+"texture defined. Values higher than [code]0[/code] will make the SSAO effect "
+"visible in areas darkened by AO textures."
+msgstr ""
+
+#: doc/classes/Environment.xml:239
+msgid ""
+"The screen-space ambient occlusion bias. This should be kept high enough to "
+"prevent \"smooth\" curves from being affected by ambient occlusion."
+msgstr ""
+
+#: doc/classes/Environment.xml:242
+msgid ""
+"The screen-space ambient occlusion blur quality. See [enum SSAOBlur] for "
+"possible values."
+msgstr ""
+
+#: doc/classes/Environment.xml:245
+msgid "The screen-space ambient occlusion edge sharpness."
+msgstr ""
+
+#: doc/classes/Environment.xml:248
+msgid ""
+"If [code]true[/code], the screen-space ambient occlusion effect is enabled. "
+"This darkens objects' corners and cavities to simulate ambient light not "
+"reaching the entire object as in real life. This works well for small, "
+"dynamic objects, but baked lighting or ambient occlusion textures will do a "
+"better job at displaying ambient occlusion on large static objects. This is "
+"a costly effect and should be disabled first when running into performance "
+"issues."
+msgstr ""
+
+#: doc/classes/Environment.xml:251
+msgid ""
+"The primary screen-space ambient occlusion intensity. See also [member "
+"ssao_radius]."
+msgstr ""
+
+#: doc/classes/Environment.xml:254
+msgid ""
+"The screen-space ambient occlusion intensity in direct light. In real life, "
+"ambient occlusion only applies to indirect light, which means its effects "
+"can't be seen in direct light. Values higher than [code]0[/code] will make "
+"the SSAO effect visible in direct light."
+msgstr ""
+
+#: doc/classes/Environment.xml:257
+msgid "The primary screen-space ambient occlusion radius."
+msgstr ""
+
+#: doc/classes/Environment.xml:260
+msgid "The default exposure used for tonemapping."
+msgstr ""
+
+#: doc/classes/Environment.xml:263
+msgid ""
+"The tonemapping mode to use. Tonemapping is the process that \"converts\" "
+"HDR values to be suitable for rendering on a LDR display. (Godot doesn't "
+"support rendering on HDR displays yet.)"
+msgstr ""
+
+#: doc/classes/Environment.xml:266
+msgid ""
+"The white reference value for tonemapping. Only effective if the [member "
+"tonemap_mode] isn't set to [constant TONE_MAPPER_LINEAR]."
+msgstr ""
+
+#: doc/classes/Environment.xml:271
+msgid ""
+"Clears the background using the clear color defined in [member "
+"ProjectSettings.rendering/environment/default_clear_color]."
+msgstr ""
+
+#: doc/classes/Environment.xml:274
+msgid "Clears the background using a custom clear color."
+msgstr ""
+
+#: doc/classes/Environment.xml:277
+msgid "Displays a user-defined sky in the background."
+msgstr ""
+
+#: doc/classes/Environment.xml:280
+msgid "Displays a [CanvasLayer] in the background."
+msgstr ""
+
+#: doc/classes/Environment.xml:283
+msgid ""
+"Keeps on screen every pixel drawn in the background. This is the fastest "
+"background mode, but it can only be safely used in fully-interior scenes (no "
+"visible sky or sky reflections). If enabled in a scene where the background "
+"is visible, \"ghost trail\" artifacts will be visible when moving the camera."
+msgstr ""
+
+#: doc/classes/Environment.xml:286 doc/classes/RenderingServer.xml:3457
+msgid "Displays a camera feed in the background."
+msgstr ""
+
+#: doc/classes/Environment.xml:289
+msgid "Represents the size of the [enum BGMode] enum."
+msgstr ""
+
+#: doc/classes/Environment.xml:292 doc/classes/RenderingServer.xml:3463
+msgid ""
+"Gather ambient light from whichever source is specified as the background."
+msgstr ""
+
+#: doc/classes/Environment.xml:295 doc/classes/RenderingServer.xml:3466
+msgid "Disable ambient light."
+msgstr ""
+
+#: doc/classes/Environment.xml:298 doc/classes/RenderingServer.xml:3469
+msgid "Specify a specific [Color] for ambient light."
+msgstr ""
+
+#: doc/classes/Environment.xml:301 doc/classes/RenderingServer.xml:3472
+msgid ""
+"Gather ambient light from the [Sky] regardless of what the background is."
+msgstr ""
+
+#: doc/classes/Environment.xml:304 doc/classes/RenderingServer.xml:3475
+msgid "Use the background for reflections."
+msgstr ""
+
+#: doc/classes/Environment.xml:307 doc/classes/RenderingServer.xml:3478
+msgid "Disable reflections."
+msgstr ""
+
+#: doc/classes/Environment.xml:310 doc/classes/RenderingServer.xml:3481
+msgid "Use the [Sky] for reflections regardless of what the background is."
+msgstr ""
+
+#: doc/classes/Environment.xml:313
+msgid ""
+"Linear tonemapper operator. Reads the linear data and passes it on "
+"unmodified."
+msgstr ""
+
+#: doc/classes/Environment.xml:316
+msgid ""
+"Reinhardt tonemapper operator. Performs a variation on rendered pixels' "
+"colors by this formula: [code]color = color / (1 + color)[/code]."
+msgstr ""
+
+#: doc/classes/Environment.xml:319
+msgid "Filmic tonemapper operator."
+msgstr ""
+
+#: doc/classes/Environment.xml:322
+msgid "Academy Color Encoding System tonemapper operator."
+msgstr ""
+
+#: doc/classes/Environment.xml:325 doc/classes/RenderingServer.xml:3484
+msgid ""
+"Additive glow blending mode. Mostly used for particles, glows (bloom), lens "
+"flare, bright sources."
+msgstr ""
+
+#: doc/classes/Environment.xml:328 doc/classes/RenderingServer.xml:3487
+msgid ""
+"Screen glow blending mode. Increases brightness, used frequently with bloom."
+msgstr ""
+
+#: doc/classes/Environment.xml:331 doc/classes/RenderingServer.xml:3490
+msgid ""
+"Soft light glow blending mode. Modifies contrast, exposes shadows and "
+"highlights (vivid bloom)."
+msgstr ""
+
+#: doc/classes/Environment.xml:334 doc/classes/RenderingServer.xml:3493
+msgid ""
+"Replace glow blending mode. Replaces all pixels' color by the glow value. "
+"This can be used to simulate a full-screen blur effect by tweaking the glow "
+"parameters to match the original image's brightness."
+msgstr ""
+
+#: doc/classes/Environment.xml:337 doc/classes/RenderingServer.xml:3496
+msgid ""
+"Mixes the glow with the underlying color to avoid increasing brightness as "
+"much while still maintaining a glow effect."
+msgstr ""
+
+#: doc/classes/Environment.xml:340
+msgid "No blur for the screen-space ambient occlusion effect (fastest)."
+msgstr ""
+
+#: doc/classes/Environment.xml:343
+msgid "1×1 blur for the screen-space ambient occlusion effect."
+msgstr ""
+
+#: doc/classes/Environment.xml:346
+msgid "2×2 blur for the screen-space ambient occlusion effect."
+msgstr ""
+
+#: doc/classes/Environment.xml:349
+msgid ""
+"3×3 blur for the screen-space ambient occlusion effect. Increases the radius "
+"of the blur for a smoother look, but can result in checkerboard-like "
+"artifacts."
+msgstr ""
+
+#: doc/classes/Expression.xml:4
+msgid "A class that stores an expression you can execute."
+msgstr ""
+
+#: doc/classes/Expression.xml:7
+msgid ""
+"An expression can be made of any arithmetic operation, built-in math "
+"function call, method call of a passed instance, or built-in type "
+"construction call.\n"
+"An example expression text using the built-in math functions could be "
+"[code]sqrt(pow(3,2) + pow(4,2))[/code].\n"
+"In the following example we use a [LineEdit] node to write our expression "
+"and show the result.\n"
+"[codeblock]\n"
+"onready var expression = Expression.new()\n"
+"\n"
+"func _ready():\n"
+" $LineEdit.connect(\"text_entered\", self, \"_on_text_entered\")\n"
+"\n"
+"func _on_text_entered(command):\n"
+" var error = expression.parse(command, [])\n"
+" if error != OK:\n"
+" print(expression.get_error_text())\n"
+" return\n"
+" var result = expression.execute([], null, true)\n"
+" if not expression.has_execute_failed():\n"
+" $LineEdit.text = str(result)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Expression.xml:39
+msgid ""
+"Executes the expression that was previously parsed by [method parse] and "
+"returns the result. Before you use the returned object, you should check if "
+"the method failed by calling [method has_execute_failed].\n"
+"If you defined input variables in [method parse], you can specify their "
+"values in the inputs array, in the same order."
+msgstr ""
+
+#: doc/classes/Expression.xml:47
+msgid "Returns the error text if [method parse] has failed."
+msgstr ""
+
+#: doc/classes/Expression.xml:54
+msgid "Returns [code]true[/code] if [method execute] has failed."
+msgstr ""
+
+#: doc/classes/Expression.xml:65
+msgid ""
+"Parses the expression and returns an [enum Error] code.\n"
+"You can optionally specify names of variables that may appear in the "
+"expression with [code]input_names[/code], so that you can bind them when it "
+"gets executed."
+msgstr ""
+
+#: doc/classes/File.xml:4
+msgid "Type to handle file reading and writing operations."
+msgstr ""
+
+#: doc/classes/File.xml:7
+msgid ""
+"File type. This is used to permanently store data into the user device's "
+"file system and to read from it. This can be used to store game save data or "
+"player configuration files, for example.\n"
+"Here's a sample on how to write and read from a file:\n"
+"[codeblock]\n"
+"func save(content):\n"
+" var file = File.new()\n"
+" file.open(\"user://save_game.dat\", File.WRITE)\n"
+" file.store_string(content)\n"
+" file.close()\n"
+"\n"
+"func load():\n"
+" var file = File.new()\n"
+" file.open(\"user://save_game.dat\", File.READ)\n"
+" var content = file.get_as_text()\n"
+" file.close()\n"
+" return content\n"
+"[/codeblock]\n"
+"In the example above, the file will be saved in the user data folder as "
+"specified in the [url=https://docs.godotengine.org/en/latest/tutorials/io/"
+"data_paths.html]Data paths[/url] documentation."
+msgstr ""
+
+#: doc/classes/File.xml:33
+msgid "Closes the currently opened file."
+msgstr ""
+
+#: doc/classes/File.xml:40
+msgid ""
+"Returns [code]true[/code] if the file cursor has read past the end of the "
+"file.\n"
+"[b]Note:[/b] This function will still return [code]false[/code] while at the "
+"end of the file and only activates when reading past it. This can be "
+"confusing but it conforms to how low-level file access works in all "
+"operating systems. There is always [method get_len] and [method "
+"get_position] to implement a custom logic."
+msgstr ""
+
+#: doc/classes/File.xml:50
+msgid ""
+"Returns [code]true[/code] if the file exists in the given path.\n"
+"[b]Note:[/b] Many resources types are imported (e.g. textures or sound "
+"files), and that their source asset will not be included in the exported "
+"game, as only the imported version is used (in the [code]res://.import[/"
+"code] folder). To check for the existence of such resources while taking "
+"into account the remapping to their imported location, use [method "
+"ResourceLoader.exists]. Typically, using [code]File.file_exists[/code] on an "
+"imported resource would work while you are developing in the editor (the "
+"source asset is present in [code]res://[/code], but fail when exported)."
+msgstr ""
+
+#: doc/classes/File.xml:58
+msgid ""
+"Returns the next 16 bits from the file as an integer. See [method store_16] "
+"for details on what values can be stored and retrieved this way."
+msgstr ""
+
+#: doc/classes/File.xml:65
+msgid ""
+"Returns the next 32 bits from the file as an integer. See [method store_32] "
+"for details on what values can be stored and retrieved this way."
+msgstr ""
+
+#: doc/classes/File.xml:72
+msgid ""
+"Returns the next 64 bits from the file as an integer. See [method store_64] "
+"for details on what values can be stored and retrieved this way."
+msgstr ""
+
+#: doc/classes/File.xml:79
+msgid ""
+"Returns the next 8 bits from the file as an integer. See [method store_8] "
+"for details on what values can be stored and retrieved this way."
+msgstr ""
+
+#: doc/classes/File.xml:86
+msgid ""
+"Returns the whole file as a [String].\n"
+"Text is interpreted as being UTF-8 encoded."
+msgstr ""
+
+#: doc/classes/File.xml:96
+msgid "Returns next [code]len[/code] bytes of the file as a [PackedByteArray]."
+msgstr ""
+
+#: doc/classes/File.xml:105
+msgid ""
+"Returns the next value of the file in CSV (Comma-Separated Values) format. "
+"You can pass a different delimiter [code]delim[/code] to use other than the "
+"default [code]\",\"[/code] (comma). This delimiter must be one-character "
+"long.\n"
+"Text is interpreted as being UTF-8 encoded."
+msgstr ""
+
+#: doc/classes/File.xml:113
+msgid "Returns the next 64 bits from the file as a floating-point number."
+msgstr ""
+
+#: doc/classes/File.xml:120
+msgid ""
+"Returns the last error that happened when trying to perform operations. "
+"Compare with the [code]ERR_FILE_*[/code] constants from [enum Error]."
+msgstr ""
+
+#: doc/classes/File.xml:127
+msgid "Returns the next 32 bits from the file as a floating-point number."
+msgstr ""
+
+#: doc/classes/File.xml:134
+msgid "Returns the size of the file in bytes."
+msgstr ""
+
+#: doc/classes/File.xml:141
+msgid ""
+"Returns the next line of the file as a [String].\n"
+"Text is interpreted as being UTF-8 encoded."
+msgstr ""
+
+#: doc/classes/File.xml:151
+msgid ""
+"Returns an MD5 String representing the file at the given path or an empty "
+"[String] on failure."
+msgstr ""
+
+#: doc/classes/File.xml:160
+msgid ""
+"Returns the last time the [code]file[/code] was modified in unix timestamp "
+"format or returns a [String] \"ERROR IN [code]file[/code]\". This unix "
+"timestamp can be converted to datetime by using [method OS."
+"get_datetime_from_unix_time]."
+msgstr ""
+
+#: doc/classes/File.xml:167
+msgid ""
+"Returns a [String] saved in Pascal format from the file.\n"
+"Text is interpreted as being UTF-8 encoded."
+msgstr ""
+
+#: doc/classes/File.xml:175
+msgid "Returns the path as a [String] for the current open file."
+msgstr ""
+
+#: doc/classes/File.xml:182
+msgid "Returns the absolute path as a [String] for the current open file."
+msgstr ""
+
+#: doc/classes/File.xml:189
+msgid "Returns the file cursor's position."
+msgstr ""
+
+#: doc/classes/File.xml:196
+msgid "Returns the next bits from the file as a floating-point number."
+msgstr ""
+
+#: doc/classes/File.xml:205
+msgid ""
+"Returns a SHA-256 [String] representing the file at the given path or an "
+"empty [String] on failure."
+msgstr ""
+
+#: doc/classes/File.xml:214
+msgid ""
+"Returns the next [Variant] value from the file. If [code]allow_objects[/"
+"code] is [code]true[/code], decoding objects is allowed.\n"
+"[b]Warning:[/b] 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."
+msgstr ""
+
+#: doc/classes/File.xml:222
+msgid "Returns [code]true[/code] if the file is currently opened."
+msgstr ""
+
+#: doc/classes/File.xml:233
+msgid "Opens the file for writing or reading, depending on the flags."
+msgstr ""
+
+#: doc/classes/File.xml:246
+msgid "Opens a compressed file for reading or writing."
+msgstr ""
+
+#: doc/classes/File.xml:259
+msgid ""
+"Opens an encrypted file in write or read mode. You need to pass a binary key "
+"to encrypt/decrypt it.\n"
+"[b]Note:[/b] The provided key must be 32 bytes long."
+msgstr ""
+
+#: doc/classes/File.xml:273
+msgid ""
+"Opens an encrypted file in write or read mode. You need to pass a password "
+"to encrypt/decrypt it."
+msgstr ""
+
+#: doc/classes/File.xml:282
+msgid ""
+"Changes the file reading/writing cursor to the specified position (in bytes "
+"from the beginning of the file)."
+msgstr ""
+
+#: doc/classes/File.xml:291
+msgid ""
+"Changes the file reading/writing cursor to the specified position (in bytes "
+"from the end of the file).\n"
+"[b]Note:[/b] This is an offset, so you should use negative numbers or the "
+"cursor will be at the end of the file."
+msgstr ""
+
+#: doc/classes/File.xml:301
+msgid ""
+"Stores an integer as 16 bits in the file.\n"
+"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, "
+"2^16 - 1][/code]. Any other value will overflow and wrap around.\n"
+"To store a signed integer, use [method store_64] or store a signed integer "
+"from the interval [code][-2^15, 2^15 - 1][/code] (i.e. keeping one bit for "
+"the signedness) and compute its sign manually when reading. For example:\n"
+"[codeblock]\n"
+"const MAX_15B = 1 << 15\n"
+"const MAX_16B = 1 << 16\n"
+"\n"
+"func unsigned16_to_signed(unsigned):\n"
+" return (unsigned + MAX_15B) % MAX_16B - MAX_15B\n"
+"\n"
+"func _ready():\n"
+" var f = File.new()\n"
+" f.open(\"user://file.dat\", File.WRITE_READ)\n"
+" f.store_16(-42) # This wraps around and stores 65494 (2^16 - 42).\n"
+" f.store_16(121) # In bounds, will store 121.\n"
+" f.seek(0) # Go back to start to read the stored value.\n"
+" var read1 = f.get_16() # 65494\n"
+" var read2 = f.get_16() # 121\n"
+" var converted1 = unsigned16_to_signed(read1) # -42\n"
+" var converted2 = unsigned16_to_signed(read2) # 121\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/File.xml:330
+msgid ""
+"Stores an integer as 32 bits in the file.\n"
+"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, "
+"2^32 - 1][/code]. Any other value will overflow and wrap around.\n"
+"To store a signed integer, use [method store_64], or convert it manually "
+"(see [method store_16] for an example)."
+msgstr ""
+
+#: doc/classes/File.xml:341
+msgid ""
+"Stores an integer as 64 bits in the file.\n"
+"[b]Note:[/b] The [code]value[/code] must lie in the interval [code][-2^63, "
+"2^63 - 1][/code] (i.e. be a valid [int] value)."
+msgstr ""
+
+#: doc/classes/File.xml:351
+msgid ""
+"Stores an integer as 8 bits in the file.\n"
+"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, 255]"
+"[/code]. Any other value will overflow and wrap around.\n"
+"To store a signed integer, use [method store_64], or convert it manually "
+"(see [method store_16] for an example)."
+msgstr ""
+
+#: doc/classes/File.xml:362
+msgid "Stores the given array of bytes in the file."
+msgstr ""
+
+#: doc/classes/File.xml:373
+msgid ""
+"Store the given [PackedStringArray] in the file as a line formatted in the "
+"CSV (Comma-Separated Values) format. You can pass a different delimiter "
+"[code]delim[/code] to use other than the default [code]\",\"[/code] (comma). "
+"This delimiter must be one-character long.\n"
+"Text will be encoded as UTF-8."
+msgstr ""
+
+#: doc/classes/File.xml:383
+msgid "Stores a floating-point number as 64 bits in the file."
+msgstr ""
+
+#: doc/classes/File.xml:392
+msgid "Stores a floating-point number as 32 bits in the file."
+msgstr ""
+
+#: doc/classes/File.xml:401
+msgid ""
+"Stores the given [String] as a line in the file.\n"
+"Text will be encoded as UTF-8."
+msgstr ""
+
+#: doc/classes/File.xml:411
+msgid ""
+"Stores the given [String] as a line in the file in Pascal format (i.e. also "
+"store the length of the string).\n"
+"Text will be encoded as UTF-8."
+msgstr ""
+
+#: doc/classes/File.xml:421
+msgid "Stores a floating-point number in the file."
+msgstr ""
+
+#: doc/classes/File.xml:430
+msgid ""
+"Stores the given [String] in the file.\n"
+"Text will be encoded as UTF-8."
+msgstr ""
+
+#: doc/classes/File.xml:442
+msgid ""
+"Stores any Variant value in the file. If [code]full_objects[/code] is "
+"[code]true[/code], encoding objects is allowed (and can potentially include "
+"code)."
+msgstr ""
+
+#: doc/classes/File.xml:448
+msgid ""
+"If [code]true[/code], the file's endianness is swapped. Use this if you're "
+"dealing with files written on big-endian machines.\n"
+"[b]Note:[/b] This is about the file format, not CPU type. This is always "
+"reset to [code]false[/code] whenever you open the file."
+msgstr ""
+
+#: doc/classes/File.xml:454
+msgid "Opens the file for read operations."
+msgstr ""
+
+#: doc/classes/File.xml:457
+msgid ""
+"Opens the file for write operations. Create it if the file does not exist "
+"and truncate if it exists."
+msgstr ""
+
+#: doc/classes/File.xml:460
+msgid ""
+"Opens the file for read and write operations. Does not truncate the file."
+msgstr ""
+
+#: doc/classes/File.xml:463
+msgid ""
+"Opens the file for read and write operations. Create it if the file does not "
+"exist and truncate if it exists."
+msgstr ""
+
+#: doc/classes/File.xml:466
+msgid "Uses the [url=http://fastlz.org/]FastLZ[/url] compression method."
+msgstr ""
+
+#: doc/classes/File.xml:469
+msgid ""
+"Uses the [url=https://en.wikipedia.org/wiki/DEFLATE]DEFLATE[/url] "
+"compression method."
+msgstr ""
+
+#: doc/classes/File.xml:472
+msgid ""
+"Uses the [url=https://facebook.github.io/zstd/]Zstandard[/url] compression "
+"method."
+msgstr ""
+
+#: doc/classes/File.xml:475
+msgid "Uses the [url=https://www.gzip.org/]gzip[/url] compression method."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:4
+msgid "Dialog for selecting files or directories in the filesystem."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:7
+msgid ""
+"FileDialog is a preset dialog used to choose files and directories in the "
+"filesystem. It supports filter masks. The FileDialog automatically sets its "
+"window title according to the [member file_mode]. If you want to use a "
+"custom title, disable this by setting [member mode_overrides_title] to "
+"[code]false[/code]."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:18
+msgid ""
+"Adds [code]filter[/code] as a custom filter; [code]filter[/code] should be "
+"of the form [code]\"filename.extension ; Description\"[/code]. For example, "
+"[code]\"*.png ; PNG Images\"[/code]."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:25
+msgid "Clear all the added filters in the dialog."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:32
+msgid "Clear currently selected items in the dialog."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:39
+msgid "Returns the LineEdit for the selected file."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:46
+msgid ""
+"Returns the vertical box container of the dialog, custom controls can be "
+"added to it."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:53
+msgid "Invalidate and update the current dialog content list."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:59
+msgid "The file system access scope. See enum [code]Access[/code] constants."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:62
+msgid "The current working directory of the file dialog."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:65
+msgid "The currently selected file of the file dialog."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:68
+msgid "The currently selected file path of the file dialog."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:72
+msgid ""
+"The dialog's open or save mode, which affects the selection behavior. See "
+"[enum FileMode]."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:75
+msgid ""
+"The available file type filters. For example, this shows only [code].png[/"
+"code] and [code].gd[/code] files: [code]set_filters(PackedStringArray([\"*."
+"png ; PNG Images\",\"*.gd ; GDScript Files\"]))[/code]."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:78
+msgid ""
+"If [code]true[/code], changing the [code]Mode[/code] property will set the "
+"window title accordingly (e.g. setting mode to [constant "
+"FILE_MODE_OPEN_FILE] will change the window title to \"Open a File\")."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:81
+msgid "If [code]true[/code], the dialog will show hidden files."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:90
+msgid "Emitted when the user selects a directory."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:97
+msgid ""
+"Emitted when the user selects a file by double-clicking it or pressing the "
+"[b]OK[/b] button."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:104
+msgid "Emitted when the user selects multiple files."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:110
+msgid "The dialog allows selecting one, and only one file."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:113
+msgid "The dialog allows selecting multiple files."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:116
+msgid ""
+"The dialog only allows selecting a directory, disallowing the selection of "
+"any file."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:119
+msgid "The dialog allows selecting one file or directory."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:122
+msgid "The dialog will warn when a file exists."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:125
+msgid ""
+"The dialog only allows accessing files under the [Resource] path "
+"([code]res://[/code])."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:128
+msgid ""
+"The dialog only allows accessing files under user data path ([code]user://[/"
+"code])."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:131
+msgid "The dialog allows accessing files on the whole file system."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:136
+msgid "Custom icon for files."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:139
+msgid "The color modulation applied to the file icon."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:142
+msgid ""
+"The color tint for disabled files (when the [FileDialog] is used in open "
+"folder mode)."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:145
+msgid "Custom icon for folders."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:148
+msgid "The color modulation applied to the folder icon."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:151
+msgid "Custom icon for the parent folder arrow."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:154
+msgid "Custom icon for the reload button."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:157
+msgid "Custom icon for the toggle hidden button."
+msgstr ""
+
+#: doc/classes/float.xml:4 doc/classes/float.xml:7
+msgid "Float built-in type."
+msgstr ""
+
+#: doc/classes/float.xml:18
+msgid ""
+"Cast a [bool] value to a floating-point value, [code]float(true)[/code] will "
+"be equal to 1.0 and [code]float(false)[/code] will be equal to 0.0."
+msgstr ""
+
+#: doc/classes/float.xml:27
+msgid ""
+"Cast an [int] value to a floating-point value, [code]float(1)[/code] will be "
+"equal to 1.0."
+msgstr ""
+
+#: doc/classes/float.xml:36
+msgid ""
+"Cast a [String] value to a floating-point value. This method accepts float "
+"value strings like [code]\"1.23\"[/code] and exponential notation strings "
+"for its parameter so calling [code]float(\"1e3\")[/code] will return 1000.0 "
+"and calling [code]float(\"1e-3\")[/code] will return 0.001. Calling this "
+"method with an invalid float string will return 0. This method stops parsing "
+"at the first invalid character and will return the parsed result so far, so "
+"calling [code]float(\"1a3\")[/code] will return 1 while calling "
+"[code]float(\"1e3a2\")[/code] will return 1000.0."
+msgstr ""
+
+#: doc/classes/Font.xml:4
+msgid "Internationalized font and text drawing support."
+msgstr ""
+
+#: doc/classes/Font.xml:7
+msgid ""
+"Font contains a Unicode-compatible character set, as well as the ability to "
+"draw it with variable width, ascent, descent and kerning. For creating fonts "
+"from TTF files (or other font formats), see the editor support for fonts."
+msgstr ""
+
+#: doc/classes/Font.xml:28
+msgid ""
+"Draw [code]string[/code] into a canvas item using the font at a given "
+"position, with [code]modulate[/code] color, and optionally clipping the "
+"width. [code]position[/code] specifies the baseline, not the top. To draw "
+"from the top, [i]ascent[/i] must be added to the Y axis.\n"
+"See also [method CanvasItem.draw_string]."
+msgstr ""
+
+#: doc/classes/Font.xml:48
+msgid ""
+"Draw character [code]char[/code] into a canvas item using the font at a "
+"given position, with [code]modulate[/code] color, and optionally kerning if "
+"[code]next[/code] is passed. clipping the width. [code]position[/code] "
+"specifies the baseline, not the top. To draw from the top, [i]ascent[/i] "
+"must be added to the Y axis. The width used by the character is returned, "
+"making this function useful for drawing strings character by character."
+msgstr ""
+
+#: doc/classes/Font.xml:55
+msgid "Returns the font ascent (number of pixels above the baseline)."
+msgstr ""
+
+#: doc/classes/Font.xml:66
+msgid ""
+"Returns the size of a character, optionally taking kerning into account if "
+"the next character is provided."
+msgstr ""
+
+#: doc/classes/Font.xml:73
+msgid "Returns the font descent (number of pixels below the baseline)."
+msgstr ""
+
+#: doc/classes/Font.xml:80
+msgid "Returns the total font height (ascent plus descent) in pixels."
+msgstr ""
+
+#: doc/classes/Font.xml:89
+msgid "Returns the size of a string, taking kerning and advance into account."
+msgstr ""
+
+#: doc/classes/Font.xml:100
+msgid ""
+"Returns the size that the string would have with word wrapping enabled with "
+"a fixed [code]width[/code]."
+msgstr ""
+
+#: doc/classes/Font.xml:107
+msgid "Returns [code]true[/code] if the font has an outline."
+msgstr ""
+
+#: doc/classes/Font.xml:120
+msgid ""
+"After editing a font (changing size, ascent, char rects, etc.). Call this "
+"function to propagate changes to controls that might use it."
+msgstr ""
+
+#: doc/classes/FuncRef.xml:4
+msgid "Reference to a function in an object."
+msgstr ""
+
+#: doc/classes/FuncRef.xml:7
+msgid ""
+"In GDScript, functions are not [i]first-class objects[/i]. This means it is "
+"impossible to store them directly as variables, return them from another "
+"function, or pass them as arguments.\n"
+"However, by creating a [FuncRef] using the [method @GDScript.funcref] "
+"function, a reference to a function in a given object can be created, passed "
+"around and called."
+msgstr ""
+
+#: doc/classes/FuncRef.xml:17
+msgid ""
+"Calls the referenced function previously set by [method set_function] or "
+"[method @GDScript.funcref]."
+msgstr ""
+
+#: doc/classes/FuncRef.xml:26
+msgid ""
+"Calls the referenced function previously set by [method set_function] or "
+"[method @GDScript.funcref]. Contrarily to [method call_func], this method "
+"does not support a variable number of arguments but expects all parameters "
+"to be passed via a single [Array]."
+msgstr ""
+
+#: doc/classes/FuncRef.xml:33
+msgid "Returns whether the object still exists and has the function assigned."
+msgstr ""
+
+#: doc/classes/FuncRef.xml:42
+msgid ""
+"The name of the referenced function to call on the object, without "
+"parentheses or any parameters."
+msgstr ""
+
+#: doc/classes/FuncRef.xml:51
+msgid ""
+"The object containing the referenced function. This object must be of a type "
+"actually inheriting from [Object], not a built-in type such as [int], "
+"[Vector2] or [Dictionary]."
+msgstr ""
+
+#: modules/gdnative/doc_classes/GDNativeLibrary.xml:4
+msgid ""
+"An external library containing functions or script classes to use in Godot."
+msgstr ""
+
+#: modules/gdnative/doc_classes/GDNativeLibrary.xml:7
+msgid ""
+"A GDNative library can implement [NativeScript]s, global functions to call "
+"with the [GDNative] class, or low-level engine extensions through interfaces "
+"such as [XRInterfaceGDNative]. The library must be compiled for each "
+"platform and architecture that the project will run on."
+msgstr ""
+
+#: modules/gdnative/doc_classes/GDNativeLibrary.xml:10
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/plugins/gdnative/gdnative-c-"
+"example.html"
+msgstr ""
+
+#: modules/gdnative/doc_classes/GDNativeLibrary.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/plugins/gdnative/gdnative-"
+"cpp-example.html"
+msgstr ""
+
+#: modules/gdnative/doc_classes/GDNativeLibrary.xml:18
+msgid ""
+"Returns paths to all dependency libraries for the current platform and "
+"architecture."
+msgstr ""
+
+#: modules/gdnative/doc_classes/GDNativeLibrary.xml:25
+msgid ""
+"Returns the path to the dynamic library file for the current platform and "
+"architecture."
+msgstr ""
+
+#: modules/gdnative/doc_classes/GDNativeLibrary.xml:31
+msgid ""
+"This resource in INI-style [ConfigFile] format, as in [code].gdnlib[/code] "
+"files."
+msgstr ""
+
+#: modules/gdnative/doc_classes/GDNativeLibrary.xml:34
+msgid ""
+"If [code]true[/code], Godot loads only one copy of the library and each "
+"script that references the library will share static data like static or "
+"global variables.\n"
+"If [code]false[/code], Godot loads a separate copy of the library into "
+"memory for each script that references it."
+msgstr ""
+
+#: modules/gdnative/doc_classes/GDNativeLibrary.xml:38
+msgid ""
+"If [code]true[/code], the editor will temporarily unload the library "
+"whenever the user switches away from the editor window, allowing the user to "
+"recompile the library without restarting Godot.\n"
+"[b]Note:[/b] If the library defines tool scripts that run inside the editor, "
+"[code]reloadable[/code] must be [code]false[/code]. Otherwise, the editor "
+"will attempt to unload the tool scripts while they're in use and crash."
+msgstr ""
+
+#: modules/gdnative/doc_classes/GDNativeLibrary.xml:42
+msgid ""
+"If [code]true[/code], Godot loads the library at startup rather than the "
+"first time a script uses the library, calling [code]{prefix}"
+"gdnative_singleton[/code] after initializing the library (where [code]"
+"{prefix}[/code] is the value of [member symbol_prefix]). The library remains "
+"loaded as long as Godot is running.\n"
+"[b]Note:[/b] A singleton library cannot be [member reloadable]."
+msgstr ""
+
+#: modules/gdnative/doc_classes/GDNativeLibrary.xml:46
+msgid ""
+"The prefix this library's entry point functions begin with. For example, a "
+"GDNativeLibrary would declare its [code]gdnative_init[/code] function as "
+"[code]godot_gdnative_init[/code] by default.\n"
+"On platforms that require statically linking libraries (currently only iOS), "
+"each library must have a different [code]symbol_prefix[/code]."
+msgstr ""
+
+#: modules/gdscript/doc_classes/GDScript.xml:4
+msgid "A script implemented in the GDScript programming language."
+msgstr ""
+
+#: modules/gdscript/doc_classes/GDScript.xml:7
+msgid ""
+"A script implemented in the GDScript programming language. The script "
+"extends the functionality of all objects that instance it.\n"
+"[method new] creates a new instance of the script. [method Object."
+"set_script] extends an existing object, if that object's class matches one "
+"of the script's base classes."
+msgstr ""
+
+#: modules/gdscript/doc_classes/GDScript.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/getting_started/scripting/gdscript/"
+"index.html"
+msgstr ""
+
+#: modules/gdscript/doc_classes/GDScript.xml:18
+msgid "Returns byte code for the script source code."
+msgstr ""
+
+#: modules/gdscript/doc_classes/GDScript.xml:25
+msgid ""
+"Returns a new instance of the script.\n"
+"For example:\n"
+"[codeblock]\n"
+"var MyClass = load(\"myclass.gd\")\n"
+"var instance = MyClass.new()\n"
+"assert(instance.get_script() == MyClass)\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:4
+msgid "State of a function call after yielding."
+msgstr ""
+
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:7
+msgid ""
+"FIXME: Outdated docs as of GDScript rewrite in 4.0.\n"
+"Calling [code]yield[/code] within a function will cause that function to "
+"yield and return its current state as an object of this type. The yielded "
+"function call can then be resumed later by calling [method resume] on this "
+"state object."
+msgstr ""
+
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:19
+msgid ""
+"Check whether the function call may be resumed. This is not the case if the "
+"function state was already resumed.\n"
+"If [code]extended_check[/code] is enabled, it also checks if the associated "
+"script and object still exist. The extended check is done in debug mode as "
+"part of [method GDScriptFunctionState.resume], but you can use this if you "
+"know you may be trying to resume without knowing for sure the object and/or "
+"script have survived up to that point."
+msgstr ""
+
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:29
+msgid ""
+"Resume execution of the yielded function call.\n"
+"If handed an argument, return the argument from the [code]yield[/code] call "
+"in the yielded function call. You can pass e.g. an [Array] to hand multiple "
+"arguments.\n"
+"This function returns what the resumed function call returns, possibly "
+"another function state if yielded again."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:4
+msgid ""
+"The generic 6-degrees-of-freedom joint can implement a variety of joint "
+"types by locking certain axes' rotation or translation."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:7
+msgid ""
+"The first 3 DOF axes are linear axes, which represent translation of Bodies, "
+"and the latter 3 DOF axes represent the angular motion. Each axis can be "
+"either locked, or limited."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:123
+msgid ""
+"The amount of rotational damping across the X axis.\n"
+"The lower, the longer an impulse from one side takes to travel to the other "
+"side."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:127
+msgid "If [code]true[/code], rotation across the X axis is limited."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:130
+msgid ""
+"When rotating across the X axis, this error tolerance factor defines how "
+"much the correction gets slowed down. The lower, the slower."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:133
+msgid ""
+"The maximum amount of force that can occur, when rotating around the X axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:136
+msgid ""
+"The minimum rotation in negative direction to break loose and rotate around "
+"the X axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:139
+msgid ""
+"The amount of rotational restitution across the X axis. The lower, the more "
+"restitution occurs."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:142
+msgid "The speed of all rotations across the X axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:145
+msgid ""
+"The minimum rotation in positive direction to break loose and rotate around "
+"the X axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:148
+msgid ""
+"The amount of rotational damping across the Y axis. The lower, the more "
+"dampening occurs."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:151
+msgid "If [code]true[/code], rotation across the Y axis is limited."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:154
+msgid ""
+"When rotating across the Y axis, this error tolerance factor defines how "
+"much the correction gets slowed down. The lower, the slower."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:157
+msgid ""
+"The maximum amount of force that can occur, when rotating around the Y axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:160
+msgid ""
+"The minimum rotation in negative direction to break loose and rotate around "
+"the Y axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:163
+msgid ""
+"The amount of rotational restitution across the Y axis. The lower, the more "
+"restitution occurs."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:166
+msgid "The speed of all rotations across the Y axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:169
+msgid ""
+"The minimum rotation in positive direction to break loose and rotate around "
+"the Y axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:172
+msgid ""
+"The amount of rotational damping across the Z axis. The lower, the more "
+"dampening occurs."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:175
+msgid "If [code]true[/code], rotation across the Z axis is limited."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:178
+msgid ""
+"When rotating across the Z axis, this error tolerance factor defines how "
+"much the correction gets slowed down. The lower, the slower."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:181
+msgid ""
+"The maximum amount of force that can occur, when rotating around the Z axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:184
+msgid ""
+"The minimum rotation in negative direction to break loose and rotate around "
+"the Z axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:187
+msgid ""
+"The amount of rotational restitution across the Z axis. The lower, the more "
+"restitution occurs."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:190
+msgid "The speed of all rotations across the Z axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:193
+msgid ""
+"The minimum rotation in positive direction to break loose and rotate around "
+"the Z axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:196
+msgid "If [code]true[/code], a rotating motor at the X axis is enabled."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:199
+msgid "Maximum acceleration for the motor at the X axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:202
+msgid "Target speed for the motor at the X axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:205
+msgid "If [code]true[/code], a rotating motor at the Y axis is enabled."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:208
+msgid "Maximum acceleration for the motor at the Y axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:211
+msgid "Target speed for the motor at the Y axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:214
+msgid "If [code]true[/code], a rotating motor at the Z axis is enabled."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:217
+msgid "Maximum acceleration for the motor at the Z axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:220
+msgid "Target speed for the motor at the Z axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:247
+msgid "The amount of damping that happens at the X motion."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:250
+msgid "If [code]true[/code], the linear motion across the X axis is limited."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:253
+msgid "The minimum difference between the pivot points' X axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:256
+msgid ""
+"The amount of restitution on the X axis movement. The lower, the more "
+"momentum gets lost."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:259
+msgid ""
+"A factor applied to the movement across the X axis. The lower, the slower "
+"the movement."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:262
+msgid "The maximum difference between the pivot points' X axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:265
+msgid "The amount of damping that happens at the Y motion."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:268
+msgid "If [code]true[/code], the linear motion across the Y axis is limited."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:271
+msgid "The minimum difference between the pivot points' Y axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:274
+msgid ""
+"The amount of restitution on the Y axis movement. The lower, the more "
+"momentum gets lost."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:277
+msgid ""
+"A factor applied to the movement across the Y axis. The lower, the slower "
+"the movement."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:280
+msgid "The maximum difference between the pivot points' Y axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:283
+msgid "The amount of damping that happens at the Z motion."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:286
+msgid "If [code]true[/code], the linear motion across the Z axis is limited."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:289
+msgid "The minimum difference between the pivot points' Z axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:292
+msgid ""
+"The amount of restitution on the Z axis movement. The lower, the more "
+"momentum gets lost."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:295
+msgid ""
+"A factor applied to the movement across the Z axis. The lower, the slower "
+"the movement."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:298
+msgid "The maximum difference between the pivot points' Z axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:301
+msgid ""
+"If [code]true[/code], then there is a linear motor on the X axis. It will "
+"attempt to reach the target velocity while staying within the force limits."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:304
+msgid ""
+"The maximum force the linear motor can apply on the X axis while trying to "
+"reach the target velocity."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:307
+msgid "The speed that the linear motor will attempt to reach on the X axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:310
+msgid ""
+"If [code]true[/code], then there is a linear motor on the Y axis. It will "
+"attempt to reach the target velocity while staying within the force limits."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:313
+msgid ""
+"The maximum force the linear motor can apply on the Y axis while trying to "
+"reach the target velocity."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:316
+msgid "The speed that the linear motor will attempt to reach on the Y axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:319
+msgid ""
+"If [code]true[/code], then there is a linear motor on the Z axis. It will "
+"attempt to reach the target velocity while staying within the force limits."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:322
+msgid ""
+"The maximum force the linear motor can apply on the Z axis while trying to "
+"reach the target velocity."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:325
+msgid "The speed that the linear motor will attempt to reach on the Z axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:356 doc/classes/PhysicsServer3D.xml:1410
+msgid "The minimum difference between the pivot points' axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:359 doc/classes/PhysicsServer3D.xml:1413
+msgid "The maximum difference between the pivot points' axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:362
+msgid ""
+"A factor applied to the movement across the axes. The lower, the slower the "
+"movement."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:365
+msgid ""
+"The amount of restitution on the axes' movement. The lower, the more "
+"momentum gets lost."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:368 doc/classes/PhysicsServer3D.xml:1422
+msgid ""
+"The amount of damping that happens at the linear motion across the axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:371
+msgid "The velocity the linear motor will try to reach."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:374
+msgid ""
+"The maximum force the linear motor will apply while trying to reach the "
+"velocity target."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:383 doc/classes/PhysicsServer3D.xml:1431
+msgid ""
+"The minimum rotation in negative direction to break loose and rotate around "
+"the axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:386 doc/classes/PhysicsServer3D.xml:1434
+msgid ""
+"The minimum rotation in positive direction to break loose and rotate around "
+"the axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:389
+msgid "The speed of all rotations across the axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:392 doc/classes/PhysicsServer3D.xml:1440
+msgid ""
+"The amount of rotational damping across the axes. The lower, the more "
+"dampening occurs."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:395 doc/classes/PhysicsServer3D.xml:1443
+msgid ""
+"The amount of rotational restitution across the axes. The lower, the more "
+"restitution occurs."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:398 doc/classes/PhysicsServer3D.xml:1446
+msgid ""
+"The maximum amount of force that can occur, when rotating around the axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:401
+msgid ""
+"When rotating across the axes, this error tolerance factor defines how much "
+"the correction gets slowed down. The lower, the slower."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:404 doc/classes/PhysicsServer3D.xml:1452
+msgid "Target speed for the motor at the axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:407 doc/classes/PhysicsServer3D.xml:1455
+msgid "Maximum acceleration for the motor at the axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:419
+msgid "If enabled, linear motion is possible within the given limits."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:422
+msgid "If enabled, rotational motion is possible within the given limits."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:429
+msgid "If enabled, there is a rotational motor across these axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:432
+msgid "If enabled, there is a linear motor across these axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:435 doc/classes/HingeJoint3D.xml:118
+msgid "Represents the size of the [enum Flag] enum."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:4
+msgid "Helper node to calculate generic geometry operations in 2D space."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:7
+msgid ""
+"Geometry2D provides users with a set of helper functions to create geometric "
+"shapes, compute intersections between shapes, and process various other "
+"geometric operations."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:20
+msgid ""
+"Clips [code]polygon_a[/code] against [code]polygon_b[/code] and returns an "
+"array of clipped polygons. This performs [constant OPERATION_DIFFERENCE] "
+"between polygons. Returns an empty array if [code]polygon_b[/code] "
+"completely overlaps [code]polygon_a[/code].\n"
+"If [code]polygon_b[/code] is enclosed by [code]polygon_a[/code], returns an "
+"outer polygon (boundary) and inner polygon (hole) which could be "
+"distinguished by calling [method is_polygon_clockwise]."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:32
+msgid ""
+"Clips [code]polyline[/code] against [code]polygon[/code] and returns an "
+"array of clipped polylines. This performs [constant OPERATION_DIFFERENCE] "
+"between the polyline and the polygon. This operation can be thought of as "
+"cutting a line with a closed shape."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:41
+msgid ""
+"Given an array of [Vector2]s, returns the convex hull as a list of points in "
+"counterclockwise order. The last point is the same as the first one."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:52
+msgid ""
+"Mutually excludes common area defined by intersection of [code]polygon_a[/"
+"code] and [code]polygon_b[/code] (see [method intersect_polygons]) and "
+"returns an array of excluded polygons. This performs [constant "
+"OPERATION_XOR] between polygons. In other words, returns all but common area "
+"between polygons.\n"
+"The operation may result in an outer polygon (boundary) and inner polygon "
+"(hole) produced which could be distinguished by calling [method "
+"is_polygon_clockwise]."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:66
+msgid ""
+"Returns the 2D point on the 2D segment ([code]s1[/code], [code]s2[/code]) "
+"that is closest to [code]point[/code]. The returned point will always be "
+"inside the specified segment."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:79
+msgid ""
+"Returns the 2D point on the 2D line defined by ([code]s1[/code], [code]s2[/"
+"code]) that is closest to [code]point[/code]. The returned point can be "
+"inside the segment ([code]s1[/code], [code]s2[/code]) or outside of it, i.e. "
+"somewhere on the line extending from the segment."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:94
+msgid ""
+"Given the two 2D segments ([code]p1[/code], [code]p2[/code]) and ([code]q1[/"
+"code], [code]q2[/code]), finds those two points on the two segments that are "
+"closest to each other. Returns a [PackedVector2Array] that contains this "
+"point on ([code]p1[/code], [code]p2[/code]) as well the accompanying point "
+"on ([code]q1[/code], [code]q2[/code])."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:105
+msgid ""
+"Intersects [code]polygon_a[/code] with [code]polygon_b[/code] and returns an "
+"array of intersected polygons. This performs [constant "
+"OPERATION_INTERSECTION] between polygons. In other words, returns common "
+"area shared by polygons. Returns an empty array if no intersection occurs.\n"
+"The operation may result in an outer polygon (boundary) and inner polygon "
+"(hole) produced which could be distinguished by calling [method "
+"is_polygon_clockwise]."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:117
+msgid ""
+"Intersects [code]polyline[/code] with [code]polygon[/code] and returns an "
+"array of intersected polylines. This performs [constant "
+"OPERATION_INTERSECTION] between the polyline and the polygon. This operation "
+"can be thought of as chopping a line with a closed shape."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:130
+msgid ""
+"Returns [code]true[/code] if [code]point[/code] is inside the circle or if "
+"it's located exactly [i]on[/i] the circle's boundary, otherwise returns "
+"[code]false[/code]."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:141
+msgid ""
+"Returns [code]true[/code] if [code]point[/code] is inside [code]polygon[/"
+"code] or if it's located exactly [i]on[/i] polygon's boundary, otherwise "
+"returns [code]false[/code]."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:150
+msgid ""
+"Returns [code]true[/code] if [code]polygon[/code]'s vertices are ordered in "
+"clockwise order, otherwise returns [code]false[/code]."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:165
+msgid ""
+"Checks if the two lines ([code]from_a[/code], [code]dir_a[/code]) and "
+"([code]from_b[/code], [code]dir_b[/code]) intersect. If yes, return the "
+"point of intersection as [Vector2]. If no intersection takes place, returns "
+"an empty [Variant].\n"
+"[b]Note:[/b] The lines are specified using direction vectors, not end points."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:175
+msgid ""
+"Given an array of [Vector2]s representing tiles, builds an atlas. The "
+"returned dictionary has two keys: [code]points[/code] is a vector of "
+"[Vector2] that specifies the positions of each tile, [code]size[/code] "
+"contains the overall size of the whole atlas as [Vector2]."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:186
+msgid ""
+"Merges (combines) [code]polygon_a[/code] and [code]polygon_b[/code] and "
+"returns an array of merged polygons. This performs [constant "
+"OPERATION_UNION] between polygons.\n"
+"The operation may result in an outer polygon (boundary) and inner polygon "
+"(hole) produced which could be distinguished by calling [method "
+"is_polygon_clockwise]."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:200
+msgid ""
+"Inflates or deflates [code]polygon[/code] by [code]delta[/code] units "
+"(pixels). If [code]delta[/code] is positive, makes the polygon grow outward. "
+"If [code]delta[/code] 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 [code]delta[/code] is negative "
+"and the absolute value of it approximately exceeds the minimum bounding "
+"rectangle dimensions of the polygon.\n"
+"Each polygon's vertices will be rounded as determined by [code]join_type[/"
+"code], see [enum PolyJoinType].\n"
+"The operation may result in an outer polygon (boundary) and inner polygon "
+"(hole) produced which could be distinguished by calling [method "
+"is_polygon_clockwise].\n"
+"[b]Note:[/b] To translate the polygon's vertices specifically, use the "
+"[method Transform2D.xform] method:\n"
+"[codeblock]\n"
+"var polygon = PackedVector2Array([Vector2(0, 0), Vector2(100, 0), "
+"Vector2(100, 100), Vector2(0, 100)])\n"
+"var offset = Vector2(50, 50)\n"
+"polygon = Transform2D(0, offset).xform(polygon)\n"
+"print(polygon) # prints [Vector2(50, 50), Vector2(150, 50), Vector2(150, "
+"150), Vector2(50, 150)]\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:224
+msgid ""
+"Inflates or deflates [code]polyline[/code] by [code]delta[/code] units "
+"(pixels), producing polygons. If [code]delta[/code] is positive, makes the "
+"polyline grow outward. Returns an array of polygons because inflating/"
+"deflating may result in multiple discrete polygons. If [code]delta[/code] is "
+"negative, returns an empty array.\n"
+"Each polygon's vertices will be rounded as determined by [code]join_type[/"
+"code], see [enum PolyJoinType].\n"
+"Each polygon's endpoints will be rounded as determined by [code]end_type[/"
+"code], see [enum PolyEndType].\n"
+"The operation may result in an outer polygon (boundary) and inner polygon "
+"(hole) produced which could be distinguished by calling [method "
+"is_polygon_clockwise]."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:242
+msgid ""
+"Returns if [code]point[/code] is inside the triangle specified by [code]a[/"
+"code], [code]b[/code] and [code]c[/code]."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:257
+msgid ""
+"Checks if the two segments ([code]from_a[/code], [code]to_a[/code]) and "
+"([code]from_b[/code], [code]to_b[/code]) intersect. If yes, return the point "
+"of intersection as [Vector2]. If no intersection takes place, returns an "
+"empty [Variant]."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:266
+msgid ""
+"Triangulates the area specified by discrete set of [code]points[/code] such "
+"that no point is inside the circumcircle of any resulting triangle. Returns "
+"a [PackedInt32Array] where each triangle consists of three consecutive point "
+"indices into [code]points[/code] (i.e. the returned array will have [code]n "
+"* 3[/code] elements, with [code]n[/code] being the number of found "
+"triangles). If the triangulation did not succeed, an empty "
+"[PackedInt32Array] is returned."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:275
+msgid ""
+"Triangulates the polygon specified by the points in [code]polygon[/code]. "
+"Returns a [PackedInt32Array] where each triangle consists of three "
+"consecutive point indices into [code]polygon[/code] (i.e. the returned array "
+"will have [code]n * 3[/code] elements, with [code]n[/code] being the number "
+"of found triangles). If the triangulation did not succeed, an empty "
+"[PackedInt32Array] is returned."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:281
+msgid ""
+"Create regions where either subject or clip polygons (or both) are filled."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:284
+msgid ""
+"Create regions where subject polygons are filled except where clip polygons "
+"are filled."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:287
+msgid "Create regions where both subject and clip polygons are filled."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:290
+msgid ""
+"Create regions where either subject or clip polygons are filled but not "
+"where both are filled."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:293
+msgid ""
+"Squaring is applied uniformally at all convex edge joins at [code]1 * delta[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:296
+msgid ""
+"While flattened paths can never perfectly trace an arc, they are "
+"approximated by a series of arc chords."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:299
+msgid ""
+"There's a necessary limit to mitered joins since offsetting edges that join "
+"at very acute angles will produce excessively long and narrow \"spikes\". "
+"For any given edge join, when miter offsetting would exceed that maximum "
+"distance, \"square\" joining is applied."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:302
+msgid ""
+"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
+"as a polygon."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:305
+msgid ""
+"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
+"as a polyline."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:308
+msgid "Endpoints are squared off with no extension."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:311
+msgid "Endpoints are squared off and extended by [code]delta[/code] units."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:314
+msgid "Endpoints are rounded off and extended by [code]delta[/code] units."
+msgstr ""
+
+#: doc/classes/Geometry3D.xml:4
+msgid "Helper node to calculate generic geometry operations in 3D space."
+msgstr ""
+
+#: doc/classes/Geometry3D.xml:7
+msgid ""
+"Geometry3D provides users with a set of helper functions to create geometric "
+"shapes, compute intersections between shapes, and process various other "
+"geometric operations."
+msgstr ""
+
+#: doc/classes/Geometry3D.xml:18
+msgid ""
+"Returns an array with 6 [Plane]s that describe the sides of a box centered "
+"at the origin. The box size is defined by [code]extents[/code], which "
+"represents one (positive) corner of the box (i.e. half its actual size)."
+msgstr ""
+
+#: doc/classes/Geometry3D.xml:35
+msgid ""
+"Returns an array of [Plane]s closely bounding a faceted capsule centered at "
+"the origin with radius [code]radius[/code] and height [code]height[/code]. "
+"The parameter [code]sides[/code] defines how many planes will be generated "
+"for the side part of the capsule, whereas [code]lats[/code] gives the number "
+"of latitudinal steps at the bottom and top of the capsule. The parameter "
+"[code]axis[/code] describes the axis along which the capsule is oriented (0 "
+"for X, 1 for Y, 2 for Z)."
+msgstr ""
+
+#: doc/classes/Geometry3D.xml:50
+msgid ""
+"Returns an array of [Plane]s closely bounding a faceted cylinder centered at "
+"the origin with radius [code]radius[/code] and height [code]height[/code]. "
+"The parameter [code]sides[/code] defines how many planes will be generated "
+"for the round part of the cylinder. The parameter [code]axis[/code] "
+"describes the axis along which the cylinder is oriented (0 for X, 1 for Y, 2 "
+"for Z)."
+msgstr ""
+
+#: doc/classes/Geometry3D.xml:61
+msgid ""
+"Clips the polygon defined by the points in [code]points[/code] against the "
+"[code]plane[/code] and returns the points of the clipped polygon."
+msgstr ""
+
+#: doc/classes/Geometry3D.xml:74
+msgid ""
+"Returns the 3D point on the 3D segment ([code]s1[/code], [code]s2[/code]) "
+"that is closest to [code]point[/code]. The returned point will always be "
+"inside the specified segment."
+msgstr ""
+
+#: doc/classes/Geometry3D.xml:87
+msgid ""
+"Returns the 3D point on the 3D line defined by ([code]s1[/code], [code]s2[/"
+"code]) that is closest to [code]point[/code]. The returned point can be "
+"inside the segment ([code]s1[/code], [code]s2[/code]) or outside of it, i.e. "
+"somewhere on the line extending from the segment."
+msgstr ""
+
+#: doc/classes/Geometry3D.xml:102
+msgid ""
+"Given the two 3D segments ([code]p1[/code], [code]p2[/code]) and ([code]q1[/"
+"code], [code]q2[/code]), finds those two points on the two segments that are "
+"closest to each other. Returns a [PackedVector3Array] that contains this "
+"point on ([code]p1[/code], [code]p2[/code]) as well the accompanying point "
+"on ([code]q1[/code], [code]q2[/code])."
+msgstr ""
+
+#: doc/classes/Geometry3D.xml:111
+msgid "Used internally by the engine."
+msgstr ""
+
+#: doc/classes/Geometry3D.xml:128
+msgid ""
+"Tests if the 3D ray starting at [code]from[/code] with the direction of "
+"[code]dir[/code] intersects the triangle specified by [code]a[/code], "
+"[code]b[/code] and [code]c[/code]. If yes, returns the point of intersection "
+"as [Vector3]. If no intersection takes place, an empty [Variant] is returned."
+msgstr ""
+
+#: doc/classes/Geometry3D.xml:141
+msgid ""
+"Given a convex hull defined though the [Plane]s in the array [code]planes[/"
+"code], tests if the segment ([code]from[/code], [code]to[/code]) intersects "
+"with that hull. If an intersection is found, returns a [PackedVector3Array] "
+"containing the point the intersection and the hull's normal. If no "
+"intersecion is found, an the returned array is empty."
+msgstr ""
+
+#: doc/classes/Geometry3D.xml:156
+msgid ""
+"Checks if the segment ([code]from[/code], [code]to[/code]) intersects the "
+"cylinder with height [code]height[/code] that is centered at the origin and "
+"has radius [code]radius[/code]. If no, returns an empty "
+"[PackedVector3Array]. If an intersection takes place, the returned array "
+"contains the point of intersection and the cylinder's normal at the point of "
+"intersection."
+msgstr ""
+
+#: doc/classes/Geometry3D.xml:171
+msgid ""
+"Checks if the segment ([code]from[/code], [code]to[/code]) intersects the "
+"sphere that is located at [code]sphere_position[/code] and has radius "
+"[code]sphere_radius[/code]. If no, returns an empty [PackedVector3Array]. If "
+"yes, returns a [PackedVector3Array] containing the point of intersection and "
+"the sphere's normal at the point of intersection."
+msgstr ""
+
+#: doc/classes/Geometry3D.xml:188
+msgid ""
+"Tests if the segment ([code]from[/code], [code]to[/code]) intersects the "
+"triangle [code]a[/code], [code]b[/code], [code]c[/code]. If yes, returns the "
+"point of intersection as [Vector3]. If no intersection takes place, an empty "
+"[Variant] is returned."
+msgstr ""
+
+#: doc/classes/GeometryInstance3D.xml:4
+msgid "Base node for geometry-based visual instances."
+msgstr ""
+
+#: doc/classes/GeometryInstance3D.xml:7
+msgid ""
+"Base node for geometry-based visual instances. Shares some common "
+"functionality like visibility and custom materials."
+msgstr ""
+
+#: doc/classes/GeometryInstance3D.xml:26
+msgid ""
+"Overrides the bounding box of this node with a custom one. To remove it, set "
+"an [AABB] with all fields set to zero."
+msgstr ""
+
+#: doc/classes/GeometryInstance3D.xml:42
+msgid ""
+"The selected shadow casting flag. See [enum ShadowCastingSetting] for "
+"possible values."
+msgstr ""
+
+#: doc/classes/GeometryInstance3D.xml:45
+msgid ""
+"The extra distance added to the GeometryInstance3D's bounding box ([AABB]) "
+"to increase its cull box."
+msgstr ""
+
+#: doc/classes/GeometryInstance3D.xml:52
+msgid ""
+"The GeometryInstance3D's max LOD distance.\n"
+"[b]Note:[/b] This property currently has no effect."
+msgstr ""
+
+#: doc/classes/GeometryInstance3D.xml:56
+msgid ""
+"The GeometryInstance3D's max LOD margin.\n"
+"[b]Note:[/b] This property currently has no effect."
+msgstr ""
+
+#: doc/classes/GeometryInstance3D.xml:60
+msgid ""
+"The GeometryInstance3D's min LOD distance.\n"
+"[b]Note:[/b] This property currently has no effect."
+msgstr ""
+
+#: doc/classes/GeometryInstance3D.xml:64
+msgid ""
+"The GeometryInstance3D's min LOD margin.\n"
+"[b]Note:[/b] This property currently has no effect."
+msgstr ""
+
+#: doc/classes/GeometryInstance3D.xml:68
+msgid ""
+"The material override for the whole geometry.\n"
+"If a material is assigned to this property, it will be used instead of any "
+"material set in any material slot of the mesh."
+msgstr ""
+
+#: doc/classes/GeometryInstance3D.xml:74
+msgid "Will not cast any shadows."
+msgstr ""
+
+#: doc/classes/GeometryInstance3D.xml:77
+msgid ""
+"Will cast shadows from all visible faces in the GeometryInstance3D.\n"
+"Will take culling into account, so faces not being rendered will not be "
+"taken into account when shadow casting."
+msgstr ""
+
+#: doc/classes/GeometryInstance3D.xml:81
+msgid ""
+"Will cast shadows from all visible faces in the GeometryInstance3D.\n"
+"Will not take culling into account, so all faces will be taken into account "
+"when shadow casting."
+msgstr ""
+
+#: doc/classes/GeometryInstance3D.xml:85
+msgid ""
+"Will only show the shadows casted from this object.\n"
+"In other words, the actual mesh will not be visible, only the shadows casted "
+"from the mesh will be."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:4
+msgid "Real-time global illumination (GI) probe."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:7
+msgid ""
+"[GIProbe]s are used to provide high-quality real-time indirect light to "
+"scenes. They precompute the effect of objects that emit light and the effect "
+"of static geometry to simulate the behavior of complex light in real-time. "
+"[GIProbe]s need to be baked before using, however, once baked, dynamic "
+"objects will receive light from them. Further, lights can be fully dynamic "
+"or baked.\n"
+"Having [GIProbe]s in a scene can be expensive, the quality of the probe can "
+"be turned down in exchange for better performance in the [ProjectSettings] "
+"using [member ProjectSettings.rendering/quality/gi_probes/quality]."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:11
+msgid "https://docs.godotengine.org/en/latest/tutorials/3d/gi_probes.html"
+msgstr ""
+
+#: doc/classes/GIProbe.xml:22
+msgid ""
+"Bakes the effect from all [GeometryInstance3D]s marked with [constant "
+"GeometryInstance3D.GI_MODE_BAKED] and [Light3D]s marked with either "
+"[constant Light3D.BAKE_DYNAMIC] or [constant Light3D.BAKE_STATIC]. If "
+"[code]create_visual_debug[/code] is [code]true[/code], after baking the "
+"light, this will generate a [MultiMesh] that has a cube representing each "
+"solid cell with each cube colored to the cell's albedo color. This can be "
+"used to visualize the [GIProbe]'s data and debug any issues that may be "
+"occurring."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:29
+msgid "Calls [method bake] with [code]create_visual_debug[/code] enabled."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:35
+msgid "The [GIProbeData] resource that holds the data for this [GIProbe]."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:38
+msgid ""
+"The size of the area covered by the [GIProbe]. If you make the extents "
+"larger without increasing the subdivisions with [member subdiv], the size of "
+"each cell will increase and result in lower detailed lighting."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:41
+msgid ""
+"Number of times to subdivide the grid that the [GIProbe] operates on. A "
+"higher number results in finer detail and thus higher visual quality, while "
+"lower numbers result in better performance."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:46
+msgid ""
+"Use 64 subdivisions. This is the lowest quality setting, but the fastest. "
+"Use it if you can, but especially use it on lower-end hardware."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:49
+msgid "Use 128 subdivisions. This is the default quality setting."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:52
+msgid "Use 256 subdivisions."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:55
+msgid ""
+"Use 512 subdivisions. This is the highest quality setting, but the slowest. "
+"On lower-end hardware this could cause the GPU to stall."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:58
+msgid "Represents the size of the [enum Subdiv] enum."
+msgstr ""
+
+#: modules/mono/doc_classes/GodotSharp.xml:4
+msgid "Bridge between Godot and the Mono runtime (Mono-enabled builds only)."
+msgstr ""
+
+#: modules/mono/doc_classes/GodotSharp.xml:7
+msgid ""
+"This class is a bridge between Godot and the Mono runtime. It exposes "
+"several low-level operations and is only available in Mono-enabled Godot "
+"builds.\n"
+"See also [CSharpScript]."
+msgstr ""
+
+#: modules/mono/doc_classes/GodotSharp.xml:17
+msgid "Attaches the current thread to the Mono runtime."
+msgstr ""
+
+#: modules/mono/doc_classes/GodotSharp.xml:24
+msgid "Detaches the current thread from the Mono runtime."
+msgstr ""
+
+#: modules/mono/doc_classes/GodotSharp.xml:31
+msgid ""
+"Returns the current MonoDomain ID.\n"
+"[b]Note:[/b] The Mono runtime must be initialized for this method to work "
+"(use [method is_runtime_initialized] to check). If the Mono runtime isn't "
+"initialized at the time this method is called, the engine will crash."
+msgstr ""
+
+#: modules/mono/doc_classes/GodotSharp.xml:39
+msgid ""
+"Returns the scripts MonoDomain's ID. This will be the same MonoDomain ID as "
+"[method get_domain_id], unless the scripts domain isn't loaded.\n"
+"[b]Note:[/b] The Mono runtime must be initialized for this method to work "
+"(use [method is_runtime_initialized] to check). If the Mono runtime isn't "
+"initialized at the time this method is called, the engine will crash."
+msgstr ""
+
+#: modules/mono/doc_classes/GodotSharp.xml:49
+msgid ""
+"Returns [code]true[/code] if the domain is being finalized, [code]false[/"
+"code] otherwise."
+msgstr ""
+
+#: modules/mono/doc_classes/GodotSharp.xml:56
+msgid ""
+"Returns [code]true[/code] if the Mono runtime is initialized, [code]false[/"
+"code] otherwise."
+msgstr ""
+
+#: modules/mono/doc_classes/GodotSharp.xml:63
+msgid ""
+"Returns [code]true[/code] if the Mono runtime is shutting down, [code]false[/"
+"code] otherwise."
+msgstr ""
+
+#: modules/mono/doc_classes/GodotSharp.xml:70
+msgid ""
+"Returns [code]true[/code] if the scripts domain is loaded, [code]false[/"
+"code] otherwise."
+msgstr ""
+
+#: doc/classes/GPUParticles2D.xml:4
+msgid "2D particle emitter."
+msgstr ""
+
+#: doc/classes/GPUParticles2D.xml:7
+msgid ""
+"2D particle node used to create a variety of particle systems and effects. "
+"[GPUParticles2D] features an emitter that generates some number of particles "
+"at a given rate.\n"
+"Use the [code]process_material[/code] property to add a [ParticlesMaterial] "
+"to configure particle appearance and behavior. Alternatively, you can add a "
+"[ShaderMaterial] which will be applied to all particles."
+msgstr ""
+
+#: doc/classes/GPUParticles2D.xml:18
+msgid "Returns a rectangle containing the positions of all existing particles."
+msgstr ""
+
+#: doc/classes/GPUParticles2D.xml:25
+msgid "Restarts all the existing particles."
+msgstr ""
+
+#: doc/classes/GPUParticles2D.xml:65 doc/classes/GPUParticles3D.xml:96
+msgid ""
+"[Material] for processing particles. Can be a [ParticlesMaterial] or a "
+"[ShaderMaterial]."
+msgstr ""
+
+#: doc/classes/GPUParticles2D.xml:77
+msgid "Editor visibility helper."
+msgstr ""
+
+#: doc/classes/GPUParticles3D.xml:4
+msgid "3D particle emitter."
+msgstr ""
+
+#: doc/classes/GPUParticles3D.xml:7
+msgid ""
+"3D particle node used to create a variety of particle systems and effects. "
+"[GPUParticles3D] features an emitter that generates some number of particles "
+"at a given rate.\n"
+"Use the [code]process_material[/code] property to add a [ParticlesMaterial] "
+"to configure particle appearance and behavior. Alternatively, you can add a "
+"[ShaderMaterial] which will be applied to all particles."
+msgstr ""
+
+#: doc/classes/GPUParticles3D.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/3d/vertex_animation/"
+"controlling_thousands_of_fish.html"
+msgstr ""
+
+#: doc/classes/GPUParticles3D.xml:18
+msgid ""
+"Returns the axis-aligned bounding box that contains all the particles that "
+"are active in the current frame."
+msgstr ""
+
+#: doc/classes/GPUParticles3D.xml:27
+msgid "Returns the [Mesh] that is drawn at index [code]pass[/code]."
+msgstr ""
+
+#: doc/classes/GPUParticles3D.xml:34
+msgid "Restarts the particle emission, clearing existing particles."
+msgstr ""
+
+#: doc/classes/GPUParticles3D.xml:45
+msgid "Sets the [Mesh] that is drawn at index [code]pass[/code]."
+msgstr ""
+
+#: doc/classes/GPUParticles3D.xml:51
+msgid "Number of particles to emit."
+msgstr ""
+
+#: doc/classes/GPUParticles3D.xml:57
+msgid "[Mesh] that is drawn for the first draw pass."
+msgstr ""
+
+#: doc/classes/GPUParticles3D.xml:60
+msgid "[Mesh] that is drawn for the second draw pass."
+msgstr ""
+
+#: doc/classes/GPUParticles3D.xml:63
+msgid "[Mesh] that is drawn for the third draw pass."
+msgstr ""
+
+#: doc/classes/GPUParticles3D.xml:66
+msgid "[Mesh] that is drawn for the fourth draw pass."
+msgstr ""
+
+#: doc/classes/GPUParticles3D.xml:69
+msgid "The number of draw passes when rendering particles."
+msgstr ""
+
+#: doc/classes/GPUParticles3D.xml:75
+msgid ""
+"Time ratio between each emission. If [code]0[/code], particles are emitted "
+"continuously. If [code]1[/code], all particles are emitted simultaneously."
+msgstr ""
+
+#: doc/classes/GPUParticles3D.xml:90
+msgid ""
+"If [code]true[/code], only [code]amount[/code] particles will be emitted."
+msgstr ""
+
+#: doc/classes/GPUParticles3D.xml:93
+msgid ""
+"Amount of time to preprocess the particles before animation starts. Lets you "
+"start the animation some time after particles have started emitting."
+msgstr ""
+
+#: doc/classes/GPUParticles3D.xml:99
+msgid "Emission randomness ratio."
+msgstr ""
+
+#: doc/classes/GPUParticles3D.xml:102
+msgid ""
+"Speed scaling ratio. A value of [code]0[/code] can be used to pause the "
+"particles."
+msgstr ""
+
+#: doc/classes/GPUParticles3D.xml:105
+msgid ""
+"The [AABB] that determines the area of the world part of which needs to be "
+"visible on screen for the particle system to be active."
+msgstr ""
+
+#: doc/classes/GPUParticles3D.xml:119
+msgid "Maximum number of draw passes supported."
+msgstr ""
+
+#: doc/classes/Gradient.xml:4
+msgid ""
+"A color interpolator resource which can be used to generate colors between "
+"user-defined color points."
+msgstr ""
+
+#: doc/classes/Gradient.xml:7
+msgid ""
+"Given a set of colors, this resource will interpolate them in order. This "
+"means that if you have color 1, color 2 and color 3, the ramp will "
+"interpolate from color 1 to color 2 and from color 2 to color 3. The ramp "
+"will initially have 2 colors (black and white), one (black) at ramp lower "
+"offset 0 and the other (white) at the ramp higher offset 1."
+msgstr ""
+
+#: doc/classes/Gradient.xml:20
+msgid ""
+"Adds the specified color to the end of the ramp, with the specified offset."
+msgstr ""
+
+#: doc/classes/Gradient.xml:29
+msgid "Returns the color of the ramp color at index [code]point[/code]."
+msgstr ""
+
+#: doc/classes/Gradient.xml:38
+msgid "Returns the offset of the ramp color at index [code]point[/code]."
+msgstr ""
+
+#: doc/classes/Gradient.xml:45
+msgid "Returns the number of colors in the ramp."
+msgstr ""
+
+#: doc/classes/Gradient.xml:54
+msgid "Returns the interpolated color specified by [code]offset[/code]."
+msgstr ""
+
+#: doc/classes/Gradient.xml:63
+msgid "Removes the color at the index [code]offset[/code]."
+msgstr ""
+
+#: doc/classes/Gradient.xml:74
+msgid "Sets the color of the ramp color at index [code]point[/code]."
+msgstr ""
+
+#: doc/classes/Gradient.xml:85
+msgid "Sets the offset for the ramp color at index [code]point[/code]."
+msgstr ""
+
+#: doc/classes/Gradient.xml:91
+msgid "Gradient's colors returned as a [PackedColorArray]."
+msgstr ""
+
+#: doc/classes/Gradient.xml:94
+msgid "Gradient's offsets returned as a [PackedFloat32Array]."
+msgstr ""
+
+#: doc/classes/GradientTexture.xml:4
+msgid "Gradient-filled texture."
+msgstr ""
+
+#: doc/classes/GradientTexture.xml:7
+msgid ""
+"GradientTexture uses a [Gradient] to fill the texture data. The gradient "
+"will be filled from left to right using colors obtained from the gradient. "
+"This means the texture does not necessarily represent an exact copy of the "
+"gradient, but instead an interpolation of samples obtained from the gradient "
+"at fixed steps (see [member width])."
+msgstr ""
+
+#: doc/classes/GradientTexture.xml:15
+msgid "The [Gradient] that will be used to fill the texture."
+msgstr ""
+
+#: doc/classes/GradientTexture.xml:18
+msgid "The number of color samples that will be obtained from the [Gradient]."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:4
+msgid ""
+"GraphEdit is an area capable of showing various GraphNodes. It manages "
+"connection events between them."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:7
+msgid ""
+"GraphEdit manages the showing of GraphNodes it contains, as well as "
+"connections and disconnections between them. Signals are sent for each of "
+"these two events. Disconnection between GraphNode slots is disabled by "
+"default.\n"
+"It is greatly advised to enable low-processor usage mode (see [member OS."
+"low_processor_usage_mode]) when using GraphEdits."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:21
+msgid ""
+"Makes possible the connection between two different slot types. The type is "
+"defined with the [method GraphNode.set_slot] method."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:30
+msgid ""
+"Makes possible to disconnect nodes when dragging from the slot at the left "
+"if it has the specified type."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:39
+msgid ""
+"Makes possible to disconnect nodes when dragging from the slot at the right "
+"if it has the specified type."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:46
+msgid "Removes all connections between nodes."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:61
+msgid ""
+"Create a connection between the [code]from_port[/code] slot of the "
+"[code]from[/code] GraphNode and the [code]to_port[/code] slot of the "
+"[code]to[/code] GraphNode. If the connection already exists, no connection "
+"is created."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:76
+msgid ""
+"Removes the connection between the [code]from_port[/code] slot of the "
+"[code]from[/code] GraphNode and the [code]to_port[/code] slot of the "
+"[code]to[/code] GraphNode. If the connection does not exist, no connection "
+"is removed."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:83
+msgid ""
+"Returns an Array containing the list of connections. A connection consists "
+"in a structure of the form [code]{ from_port: 0, from: \"GraphNode name 0\", "
+"to_port: 1, to: \"GraphNode name 1\" }[/code]."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:90
+msgid ""
+"Gets the [HBoxContainer] that contains the zooming and grid snap controls in "
+"the top left of the graph.\n"
+"Warning: The intended usage of this function is to allow you to reposition "
+"or add your own custom controls to the container. This is an internal "
+"control and as such should not be freed. If you wish to hide this or any of "
+"it's children use their [member CanvasItem.visible] property instead."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:106
+msgid ""
+"Returns [code]true[/code] if the [code]from_port[/code] slot of the "
+"[code]from[/code] GraphNode is connected to the [code]to_port[/code] slot of "
+"the [code]to[/code] GraphNode."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:117
+msgid "Returns whether it's possible to connect slots of the specified types."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:128
+msgid ""
+"Makes it not possible to connect between two different slot types. The type "
+"is defined with the [method GraphNode.set_slot] method."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:137
+msgid ""
+"Removes the possibility to disconnect nodes when dragging from the slot at "
+"the left if it has the specified type."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:146
+msgid ""
+"Removes the possibility to disconnect nodes when dragging from the slot at "
+"the right if it has the specified type."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:163
+msgid ""
+"Sets the coloration of the connection between [code]from[/code]'s "
+"[code]from_port[/code] and [code]to[/code]'s [code]to_port[/code] with the "
+"color provided in the [code]activity[/code] theme property."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:172
+msgid "Sets the specified [code]node[/code] as the one selected."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:180
+msgid ""
+"If [code]true[/code], enables disconnection of existing connections in the "
+"GraphEdit by dragging the right end."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:183
+msgid "The scroll offset."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:186
+msgid "The snapping distance in pixels."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:189
+msgid "If [code]true[/code], enables snapping."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:192
+msgid "The current zoom value."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:198
+msgid "Emitted at the beginning of a GraphNode movement."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:203
+msgid "Emitted at the end of a GraphNode movement."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:214
+msgid ""
+"Emitted when user dragging connection from input port into empty space of "
+"the graph."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:227
+msgid ""
+"Emitted to the GraphEdit when the connection between the [code]from_slot[/"
+"code] slot of the [code]from[/code] GraphNode and the [code]to_slot[/code] "
+"slot of the [code]to[/code] GraphNode is attempted to be created."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:238
+msgid ""
+"Emitted when user dragging connection from output port into empty space of "
+"the graph."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:243
+msgid "Emitted when the user presses [kbd]Ctrl + C[/kbd]."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:248
+msgid "Emitted when a GraphNode is attempted to be removed from the GraphEdit."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:261
+msgid ""
+"Emitted to the GraphEdit when the connection between [code]from_slot[/code] "
+"slot of [code]from[/code] GraphNode and [code]to_slot[/code] slot of "
+"[code]to[/code] GraphNode is attempted to be removed."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:266
+msgid ""
+"Emitted when a GraphNode is attempted to be duplicated in the GraphEdit."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:273
+msgid "Emitted when a GraphNode is selected."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:284
+msgid "Emitted when the user presses [kbd]Ctrl + V[/kbd]."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:291
+msgid ""
+"Emitted when a popup is requested. Happens on right-clicking in the "
+"GraphEdit. [code]position[/code] is the position of the mouse pointer when "
+"the signal is sent."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:298
+msgid ""
+"Emitted when the scroll offset is changed by the user. It will not be "
+"emitted when changed in code."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:312
+msgid "The background drawn under the grid."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:315
+msgid "Color of major grid lines."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:318
+msgid "Color of minor grid lines."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:321
+msgid "The icon for the zoom out button."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:324
+msgid "The icon for the zoom in button."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:327
+msgid ""
+"The horizontal range within which a port can be grabbed (on both sides)."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:330
+msgid "The vertical range within which a port can be grabbed (on both sides)."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:333
+msgid "The icon for the zoom reset button."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:336
+msgid "The fill color of the selection rectangle."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:339
+msgid "The outline color of the selection rectangle."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:342
+msgid "The icon for the snap toggle button."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:4
+msgid ""
+"A GraphNode is a container with potentially several input and output slots "
+"allowing connections between GraphNodes. Slots can have different, "
+"incompatible types."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:7
+msgid ""
+"A GraphNode is a container. Each GraphNode can have several input and output "
+"slots, sometimes referred to as ports, allowing connections between "
+"GraphNodes. To add a slot to GraphNode, add any [Control]-derived child node "
+"to it.\n"
+"After adding at least one child to GraphNode new sections will be "
+"automatically created in the Inspector called 'Slot'. When 'Slot' is "
+"expanded you will see list with index number for each slot. You can click on "
+"each of them to expand further.\n"
+"In the Inspector you can enable (show) or disable (hide) slots. By default "
+"all slots are disabled so you may not see any slots on your GraphNode "
+"initially. You can assign a type to each slot. Only slots of the same type "
+"will be able to connect to each other. You can also assign colors to slots. "
+"A tuple of input and output slots is defined for each GUI element included "
+"in the GraphNode. Input connections are on the left and output connections "
+"are on the right side of GraphNode. Only enabled slots are counted as "
+"connections."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:18
+msgid "Disables all input and output slots of the GraphNode."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:27
+msgid "Disables input and output slot whose index is [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:36
+msgid "Returns the color of the input connection [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:43
+msgid ""
+"Returns the number of enabled input slots (connections) to the GraphNode."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:52
+msgid "Returns the position of the input connection [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:61
+msgid "Returns the type of the input connection [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:70
+msgid "Returns the color of the output connection [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:77
+msgid ""
+"Returns the number of enabled output slots (connections) of the GraphNode."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:86
+msgid "Returns the position of the output connection [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:95
+msgid "Returns the type of the output connection [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:104
+msgid "Returns the color set to [code]idx[/code] left (input) slot."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:113
+msgid "Returns the color set to [code]idx[/code] right (output) slot."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:122
+msgid "Returns the (integer) type of left (input) [code]idx[/code] slot."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:131
+msgid "Returns the (integer) type of right (output) [code]idx[/code] slot."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:140
+msgid ""
+"Returns [code]true[/code] if left (input) slot [code]idx[/code] is enabled, "
+"[code]false[/code] otherwise."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:149
+msgid ""
+"Returns [code]true[/code] if right (output) slot [code]idx[/code] is "
+"enabled, [code]false[/code] otherwise."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:174
+msgid ""
+"Sets properties of the slot with ID [code]idx[/code].\n"
+"If [code]enable_left[/code]/[code]right[/code], a port will appear and the "
+"slot will be able to be connected from this side.\n"
+"[code]type_left[/code]/[code]right[/code] is an arbitrary type of the port. "
+"Only ports with the same type values can be connected.\n"
+"[code]color_left[/code]/[code]right[/code] is the tint of the port's icon on "
+"this side.\n"
+"[code]custom_left[/code]/[code]right[/code] is a custom texture for this "
+"side's port.\n"
+"[b]Note:[/b] This method only sets properties of the slot. To create the "
+"slot, add a [Control]-derived child to the GraphNode."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:185
+msgid "If [code]true[/code], the GraphNode is a comment node."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:189
+msgid ""
+"The offset of the GraphNode, relative to the scroll offset of the "
+"[GraphEdit].\n"
+"[b]Note:[/b] You cannot use position directly, as [GraphEdit] is a "
+"[Container]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:193
+msgid "Sets the overlay shown above the GraphNode. See [enum Overlay]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:196
+msgid ""
+"If [code]true[/code], the user can resize the GraphNode.\n"
+"[b]Note:[/b] Dragging the handle will only emit the [signal resize_request] "
+"signal, the GraphNode needs to be resized manually."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:200
+msgid "If [code]true[/code], the GraphNode is selected."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:203
+msgid ""
+"If [code]true[/code], the close button will be visible.\n"
+"[b]Note:[/b] Pressing it will only emit the [signal close_request] signal, "
+"the GraphNode needs to be removed manually."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:207
+msgid "The text displayed in the GraphNode's title bar."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:213
+msgid ""
+"Emitted when the GraphNode is requested to be closed. Happens on clicking "
+"the close button (see [member show_close])."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:222
+msgid "Emitted when the GraphNode is dragged."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:227
+msgid "Emitted when the GraphNode is moved."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:232
+msgid ""
+"Emitted when the GraphNode is requested to be displayed over other ones. "
+"Happens on focusing (clicking into) the GraphNode."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:239
+msgid ""
+"Emitted when the GraphNode is requested to be resized. Happens on dragging "
+"the resizer handle (see [member resizable])."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:245
+msgid "No overlay is shown."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:248
+msgid "Show overlay set in the [code]breakpoint[/code] theme property."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:251
+msgid "Show overlay set in the [code]position[/code] theme property."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:256
+msgid ""
+"The background used when [member overlay] is set to [constant "
+"OVERLAY_BREAKPOINT]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:259
+msgid ""
+"The icon for the close button, visible when [member show_close] is enabled."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:262
+msgid "The color modulation applied to the close button icon."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:265
+msgid "The vertical offset of the close button."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:268
+msgid "The [StyleBox] used when [member comment] is enabled."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:271
+msgid ""
+"The [StyleBox] used when [member comment] is enabled and the [GraphNode] is "
+"focused."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:278
+msgid "The default background for [GraphNode]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:281
+msgid "The icon used for representing ports."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:284
+msgid "Horizontal offset for the ports."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:287
+msgid ""
+"The background used when [member overlay] is set to [constant "
+"OVERLAY_POSITION]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:290
+msgid "The icon used for resizer, visible when [member resizable] is enabled."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:293
+msgid "The color modulation applied to the resizer icon."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:296
+msgid "The background used when the [GraphNode] is selected."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:299
+msgid "The vertical distance between ports."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:302
+msgid "Color of the title text."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:305
+msgid "Font used for the title text."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:308
+msgid "Vertical offset of the title text."
+msgstr ""
+
+#: doc/classes/GridContainer.xml:4
+msgid "Grid container used to arrange elements in a grid like layout."
+msgstr ""
+
+#: doc/classes/GridContainer.xml:7
+msgid ""
+"Grid container will arrange its children in a grid like structure, the grid "
+"columns are specified using the [member columns] property and the number of "
+"rows will be equal to the number of children in the container divided by the "
+"number of columns. For example, if the container has 5 children, and 2 "
+"columns, there will be 3 rows in the container.\n"
+"Notice that grid layout will preserve the columns and rows for every size of "
+"the container, and that empty columns will be expanded automatically."
+msgstr ""
+
+#: doc/classes/GridContainer.xml:16
+msgid ""
+"The number of columns in the [GridContainer]. If modified, [GridContainer] "
+"reorders its children to accommodate the new layout."
+msgstr ""
+
+#: doc/classes/GridContainer.xml:23
+msgid "The horizontal separation of children nodes."
+msgstr ""
+
+#: doc/classes/GridContainer.xml:26
+msgid "The vertical separation of children nodes."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:4
+msgid "Node for 3D tile-based maps."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:7
+msgid ""
+"GridMap lets you place meshes on a grid interactively. It works both from "
+"the editor and from scripts, which can help you create in-game level "
+"editors.\n"
+"GridMaps use a [MeshLibrary] which contains a list of tiles. Each tile is a "
+"mesh with materials plus optional collision and navigation shapes.\n"
+"A GridMap contains a collection of cells. Each grid cell refers to a tile in "
+"the [MeshLibrary]. All cells in the map have the same dimensions.\n"
+"Internally, a GridMap is split into a sparse collection of octants for "
+"efficient rendering and physics processing. Every octant has the same "
+"dimensions and can contain several cells."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:13
+msgid "https://docs.godotengine.org/en/latest/tutorials/3d/using_gridmaps.html"
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:20
+msgid "Clear all cells."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:49
+msgid ""
+"The [MeshLibrary] item index located at the given grid coordinates. If the "
+"cell is empty, [constant INVALID_CELL_ITEM] will be returned."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:58
+msgid ""
+"The orientation of the cell at the given grid coordinates. [code]-1[/code] "
+"is returned if the cell is empty."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:67 doc/classes/PhysicsBody2D.xml:35
+#: doc/classes/PhysicsBody3D.xml:35
+msgid "Returns an individual bit on the [member collision_layer]."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:76 doc/classes/PhysicsBody2D.xml:44
+#: doc/classes/PhysicsBody3D.xml:44
+msgid "Returns an individual bit on the [member collision_mask]."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:83
+msgid ""
+"Returns an array of [Transform] and [Mesh] references corresponding to the "
+"non-empty cells in the grid. The transforms are specified in world space."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:90
+msgid ""
+"Returns an array of [Vector3] with the non-empty cell coordinates in the "
+"grid map."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:109
+msgid ""
+"Returns the position of a grid cell in the GridMap's local coordinate space."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:130
+msgid ""
+"Sets the mesh index for the cell referenced by its grid coordinates.\n"
+"A negative item index such as [constant INVALID_CELL_ITEM] will clear the "
+"cell.\n"
+"Optionally, the item's orientation can be passed. For valid orientation "
+"values, see [method Basis.get_orthogonal_index]."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:157
+msgid "Sets an individual bit on the [member collision_layer]."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:168
+msgid "Sets an individual bit on the [member collision_mask]."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:177
+msgid ""
+"Returns the coordinates of the grid cell containing the given point.\n"
+"[code]pos[/code] should be in the GridMap's local coordinate space."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:184
+msgid "If [code]true[/code], grid items are centered on the X axis."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:187
+msgid "If [code]true[/code], grid items are centered on the Y axis."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:190
+msgid "If [code]true[/code], grid items are centered on the Z axis."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:193
+msgid ""
+"The size of each octant measured in number of cells. This applies to all "
+"three axis."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:196
+msgid ""
+"The scale of the cell items.\n"
+"This does not affect the size of the grid cells themselves, only the items "
+"in them. This can be used to make cell items overlap their neighbors."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:200
+msgid ""
+"The dimensions of the grid's cells.\n"
+"This does not affect the size of the meshes. See [member cell_scale]."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:204
+msgid ""
+"The physics layers this GridMap is in.\n"
+"GridMaps act as static bodies, meaning they aren't affected by gravity or "
+"other forces. They only affect other physics bodies that collide with them."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:208
+msgid "The physics layers this GridMap detects collisions in."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:211
+msgid "The assigned [MeshLibrary]."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:219
+msgid "Emitted when [member cell_size] changes."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:225
+msgid ""
+"Invalid cell item that can be used in [method set_cell_item] to clear cells "
+"(or represent an empty cell in [method get_cell_item])."
+msgstr ""
+
+#: doc/classes/GrooveJoint2D.xml:4
+msgid "Groove constraint for 2D physics."
+msgstr ""
+
+#: doc/classes/GrooveJoint2D.xml:7
+msgid ""
+"Groove constraint for 2D physics. This is useful for making a body \"slide\" "
+"through a segment placed in another."
+msgstr ""
+
+#: doc/classes/GrooveJoint2D.xml:15
+msgid ""
+"The body B's initial anchor position defined by the joint's origin and a "
+"local offset [member initial_offset] along the joint's Y axis (along the "
+"groove)."
+msgstr ""
+
+#: doc/classes/GrooveJoint2D.xml:18
+msgid ""
+"The groove's length. The groove is from the joint's origin towards [member "
+"length] along the joint's local Y axis."
+msgstr ""
+
+#: doc/classes/HashingContext.xml:4
+msgid "Context to compute cryptographic hashes over multiple iterations."
+msgstr ""
+
+#: doc/classes/HashingContext.xml:7
+msgid ""
+"The HashingContext class provides an interface for computing cryptographic "
+"hashes over multiple iterations. This is useful for example when computing "
+"hashes of big files (so you don't have to load them all in memory), network "
+"streams, and data streams in general (so you don't have to hold buffers).\n"
+"The [enum HashType] enum shows the supported hashing algorithms.\n"
+"[codeblock]\n"
+"const CHUNK_SIZE = 1024\n"
+"\n"
+"func hash_file(path):\n"
+" var ctx = HashingContext.new()\n"
+" var file = File.new()\n"
+" # Start a SHA-256 context.\n"
+" ctx.start(HashingContext.HASH_SHA256)\n"
+" # Check that file exists.\n"
+" if not file.file_exists(path):\n"
+" return\n"
+" # Open the file to hash.\n"
+" file.open(path, File.READ)\n"
+" # Update the context after reading each chunk.\n"
+" while not file.eof_reached():\n"
+" ctx.update(file.get_buffer(CHUNK_SIZE))\n"
+" # Get the computed hash.\n"
+" var res = ctx.finish()\n"
+" # Print the result as hex string and array.\n"
+" printt(res.hex_encode(), Array(res))\n"
+"[/codeblock]\n"
+"[b]Note:[/b] Not available in HTML5 exports."
+msgstr ""
+
+#: doc/classes/HashingContext.xml:39
+msgid "Closes the current context, and return the computed hash."
+msgstr ""
+
+#: doc/classes/HashingContext.xml:48
+msgid ""
+"Starts a new hash computation of the given [code]type[/code] (e.g. [constant "
+"HASH_SHA256] to start computation of a SHA-256)."
+msgstr ""
+
+#: doc/classes/HashingContext.xml:57
+msgid "Updates the computation with the given [code]chunk[/code] of data."
+msgstr ""
+
+#: doc/classes/HashingContext.xml:63
+msgid "Hashing algorithm: MD5."
+msgstr ""
+
+#: doc/classes/HashingContext.xml:66
+msgid "Hashing algorithm: SHA-1."
+msgstr ""
+
+#: doc/classes/HashingContext.xml:69
+msgid "Hashing algorithm: SHA-256."
+msgstr ""
+
+#: doc/classes/HBoxContainer.xml:4
+msgid "Horizontal box container."
+msgstr ""
+
+#: doc/classes/HBoxContainer.xml:7
+msgid "Horizontal box container. See [BoxContainer]."
+msgstr ""
+
+#: doc/classes/HBoxContainer.xml:17
+msgid "The horizontal space between the [HBoxContainer]'s elements."
+msgstr ""
+
+#: doc/classes/HeightMapShape3D.xml:4
+msgid "Height map shape for 3D physics (Bullet only)."
+msgstr ""
+
+#: doc/classes/HeightMapShape3D.xml:7
+msgid ""
+"Height map shape resource, which can be added to a [PhysicsBody3D] or "
+"[Area3D]."
+msgstr ""
+
+#: doc/classes/HeightMapShape3D.xml:15
+msgid ""
+"Height map data, pool array must be of [member map_width] * [member "
+"map_depth] size."
+msgstr ""
+
+#: doc/classes/HeightMapShape3D.xml:18
+msgid ""
+"Depth of the height map data. Changing this will resize the [member "
+"map_data]."
+msgstr ""
+
+#: doc/classes/HeightMapShape3D.xml:21
+msgid ""
+"Width of the height map data. Changing this will resize the [member "
+"map_data]."
+msgstr ""
+
+#: doc/classes/HingeJoint3D.xml:4
+msgid "A hinge between two 3D bodies."
+msgstr ""
+
+#: doc/classes/HingeJoint3D.xml:7
+msgid ""
+"A HingeJoint3D normally uses the Z axis of body A as the hinge axis, another "
+"axis can be specified when adding it manually though."
+msgstr ""
+
+#: doc/classes/HingeJoint3D.xml:18 doc/classes/SpriteBase3D.xml:24
+msgid "Returns the value of the specified flag."
+msgstr ""
+
+#: doc/classes/HingeJoint3D.xml:27 doc/classes/ParticlesMaterial.xml:29
+#: doc/classes/PinJoint3D.xml:18
+msgid "Returns the value of the specified parameter."
+msgstr ""
+
+#: doc/classes/HingeJoint3D.xml:38
+msgid "If [code]true[/code], enables the specified flag."
+msgstr ""
+
+#: doc/classes/HingeJoint3D.xml:49 doc/classes/PinJoint3D.xml:29
+msgid "Sets the value of the specified parameter."
+msgstr ""
+
+#: doc/classes/HingeJoint3D.xml:55 doc/classes/HingeJoint3D.xml:95
+#: doc/classes/PhysicsServer3D.xml:1301
+msgid ""
+"The speed with which the rotation across the axis perpendicular to the hinge "
+"gets corrected."
+msgstr ""
+
+#: doc/classes/HingeJoint3D.xml:58 doc/classes/HingeJoint3D.xml:112
+msgid ""
+"If [code]true[/code], the hinges maximum and minimum rotation, defined by "
+"[member angular_limit/lower] and [member angular_limit/upper] has effects."
+msgstr ""
+
+#: doc/classes/HingeJoint3D.xml:61 doc/classes/HingeJoint3D.xml:92
+msgid ""
+"The minimum rotation. Only active if [member angular_limit/enable] is "
+"[code]true[/code]."
+msgstr ""
+
+#: doc/classes/HingeJoint3D.xml:64 doc/classes/HingeJoint3D.xml:100
+#: doc/classes/PhysicsServer3D.xml:1306
+msgid "The lower this value, the more the rotation gets slowed down."
+msgstr ""
+
+#: doc/classes/HingeJoint3D.xml:69 doc/classes/HingeJoint3D.xml:89
+msgid ""
+"The maximum rotation. Only active if [member angular_limit/enable] is "
+"[code]true[/code]."
+msgstr ""
+
+#: doc/classes/HingeJoint3D.xml:72 doc/classes/HingeJoint3D.xml:115
+msgid "When activated, a motor turns the hinge."
+msgstr ""
+
+#: doc/classes/HingeJoint3D.xml:75 doc/classes/HingeJoint3D.xml:106
+#: doc/classes/PhysicsServer3D.xml:1312
+msgid "Maximum acceleration for the motor."
+msgstr ""
+
+#: doc/classes/HingeJoint3D.xml:78 doc/classes/HingeJoint3D.xml:103
+#: doc/classes/PhysicsServer3D.xml:1309
+msgid "Target speed for the motor."
+msgstr ""
+
+#: doc/classes/HingeJoint3D.xml:81 doc/classes/HingeJoint3D.xml:86
+#: doc/classes/PhysicsServer3D.xml:1292
+msgid ""
+"The speed with which the two bodies get pulled together when they move in "
+"different directions."
+msgstr ""
+
+#: doc/classes/HScrollBar.xml:4
+msgid "Horizontal scroll bar."
+msgstr ""
+
+#: doc/classes/HScrollBar.xml:7
+msgid ""
+"Horizontal version of [ScrollBar], which goes from left (min) to right (max)."
+msgstr ""
+
+#: doc/classes/HScrollBar.xml:17
+msgid ""
+"Icon used as a button to scroll the [ScrollBar] left. Supports custom step "
+"using the [member ScrollBar.custom_step] property."
+msgstr ""
+
+#: doc/classes/HScrollBar.xml:20 doc/classes/VScrollBar.xml:24
+msgid "Displayed when the mouse cursor hovers over the decrement button."
+msgstr ""
+
+#: doc/classes/HScrollBar.xml:23 doc/classes/VScrollBar.xml:27
+msgid ""
+"Used as texture for the grabber, the draggable element representing current "
+"scroll."
+msgstr ""
+
+#: doc/classes/HScrollBar.xml:26 doc/classes/VScrollBar.xml:30
+msgid "Used when the mouse hovers over the grabber."
+msgstr ""
+
+#: doc/classes/HScrollBar.xml:29 doc/classes/VScrollBar.xml:33
+msgid "Used when the grabber is being dragged."
+msgstr ""
+
+#: doc/classes/HScrollBar.xml:32
+msgid ""
+"Icon used as a button to scroll the [ScrollBar] right. Supports custom step "
+"using the [member ScrollBar.custom_step] property."
+msgstr ""
+
+#: doc/classes/HScrollBar.xml:35 doc/classes/VScrollBar.xml:39
+msgid "Displayed when the mouse cursor hovers over the increment button."
+msgstr ""
+
+#: doc/classes/HScrollBar.xml:38 doc/classes/VScrollBar.xml:42
+msgid "Used as background of this [ScrollBar]."
+msgstr ""
+
+#: doc/classes/HScrollBar.xml:41 doc/classes/VScrollBar.xml:45
+msgid "Used as background when the [ScrollBar] has the GUI focus."
+msgstr ""
+
+#: doc/classes/HSeparator.xml:4
+msgid "Horizontal separator."
+msgstr ""
+
+#: doc/classes/HSeparator.xml:7
+msgid ""
+"Horizontal separator. See [Separator]. Even though it looks horizontal, it "
+"is used to separate objects vertically."
+msgstr ""
+
+#: doc/classes/HSeparator.xml:17
+msgid ""
+"The height of the area covered by the separator. Effectively works like a "
+"minimum height."
+msgstr ""
+
+#: doc/classes/HSeparator.xml:20
+msgid "The style for the separator line. Works best with [StyleBoxLine]."
+msgstr ""
+
+#: doc/classes/HSlider.xml:4
+msgid "Horizontal slider."
+msgstr ""
+
+#: doc/classes/HSlider.xml:7
+msgid ""
+"Horizontal slider. See [Slider]. This one goes from left (min) to right "
+"(max)."
+msgstr ""
+
+#: doc/classes/HSlider.xml:17 doc/classes/VSlider.xml:21
+msgid "The texture for the grabber (the draggable element)."
+msgstr ""
+
+#: doc/classes/HSlider.xml:20
+msgid "The background of the area to the left of the grabber."
+msgstr ""
+
+#: doc/classes/HSlider.xml:25 doc/classes/VSlider.xml:29
+msgid "The texture for the grabber when it's disabled."
+msgstr ""
+
+#: doc/classes/HSlider.xml:28 doc/classes/VSlider.xml:32
+msgid "The texture for the grabber when it's focused."
+msgstr ""
+
+#: doc/classes/HSlider.xml:31
+msgid ""
+"The background for the whole slider. Determines the height of the "
+"[code]grabber_area[/code]."
+msgstr ""
+
+#: doc/classes/HSlider.xml:34 doc/classes/VSlider.xml:38
+msgid ""
+"The texture for the ticks, visible when [member Slider.tick_count] is "
+"greater than 0."
+msgstr ""
+
+#: doc/classes/HSplitContainer.xml:4
+msgid "Horizontal split container."
+msgstr ""
+
+#: doc/classes/HSplitContainer.xml:7
+msgid ""
+"Horizontal split container. See [SplitContainer]. This goes from left to "
+"right."
+msgstr ""
+
+#: doc/classes/HSplitContainer.xml:17 doc/classes/VSplitContainer.xml:17
+msgid ""
+"Boolean value. If 1 ([code]true[/code]), the grabber will hide automatically "
+"when it isn't under the cursor. If 0 ([code]false[/code]), it's always "
+"visible."
+msgstr ""
+
+#: doc/classes/HSplitContainer.xml:22 doc/classes/VSplitContainer.xml:22
+msgid "The icon used for the grabber drawn in the middle area."
+msgstr ""
+
+#: doc/classes/HSplitContainer.xml:25 doc/classes/VSplitContainer.xml:25
+msgid "The space between sides of the container."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:4
+msgid "Hyper-text transfer protocol client."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:7
+msgid ""
+"Hyper-text transfer protocol client (sometimes called \"User Agent\"). Used "
+"to make HTTP requests to download web content, upload files and other data "
+"or to communicate with various services, among other use cases. See "
+"[HTTPRequest] for an higher-level alternative.\n"
+"[b]Note:[/b] This client only needs to connect to a host once (see [method "
+"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 [method request] for a "
+"full example and to get started.\n"
+"A [HTTPClient] should be reused between multiple requests or to connect to "
+"different hosts instead of creating one client per request. Supports SSL and "
+"SSL 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.\n"
+"For more information on HTTP, see https://developer.mozilla.org/en-US/docs/"
+"Web/HTTP (or read RFC 2616 to get it straight from the source: https://tools."
+"ietf.org/html/rfc2616).\n"
+"[b]Note:[/b] When performing HTTP requests from a project exported to HTML5, "
+"keep in mind the remote server may not allow requests from foreign origins "
+"due to [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/"
+"url]. If you host the server in question, you should modify its backend to "
+"allow requests from foreign origins by adding the [code]Access-Control-Allow-"
+"Origin: *[/code] HTTP header."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:14
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/networking/"
+"http_client_class.html"
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:15 doc/classes/HTTPRequest.xml:71
+#: doc/classes/StreamPeerSSL.xml:10
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/networking/ssl_certificates."
+"html"
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:22
+msgid "Closes the current connection, allowing reuse of this [HTTPClient]."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:37
+msgid ""
+"Connects to a host. This needs to be done before any requests are sent.\n"
+"The host should not have http:// prepended but will strip the protocol "
+"identifier if provided.\n"
+"If no [code]port[/code] is specified (or [code]-1[/code] is used), it is "
+"automatically set to 80 for HTTP and 443 for HTTPS (if [code]use_ssl[/code] "
+"is enabled).\n"
+"[code]verify_host[/code] will check the SSL identity of the host if set to "
+"[code]true[/code]."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:47
+msgid ""
+"Returns the response's body length.\n"
+"[b]Note:[/b] Some Web servers may not send a body length. In this case, the "
+"value returned will be [code]-1[/code]. If using chunked transfer encoding, "
+"the body length will also be [code]-1[/code]."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:55
+msgid "Returns the response's HTTP status code."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:62
+msgid "Returns the response headers."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:69
+msgid ""
+"Returns all response headers as a Dictionary of structure [code]{ \"key\": "
+"\"value1; value2\" }[/code] where the case-sensitivity of the keys and "
+"values is kept like the server delivers it. A value is a simple String, this "
+"string can have more than one value where \"; \" is used as separator.\n"
+"[b]Example:[/b]\n"
+"[codeblock]\n"
+"{\n"
+" \"content-length\": 12,\n"
+" \"Content-Type\": \"application/json; charset=UTF-8\",\n"
+"}\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:83
+msgid ""
+"Returns a [enum Status] constant. Need to call [method poll] in order to get "
+"status updates."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:90
+msgid "If [code]true[/code], this [HTTPClient] has a response available."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:97
+msgid "If [code]true[/code], this [HTTPClient] has a response that is chunked."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:104
+msgid ""
+"This needs to be called in order to have any request processed. Check "
+"results with [method get_status]."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:113
+msgid ""
+"Generates a GET/POST application/x-www-form-urlencoded style query string "
+"from a provided dictionary, e.g.:\n"
+"[codeblock]\n"
+"var fields = {\"username\": \"user\", \"password\": \"pass\"}\n"
+"var query_string = http_client.query_string_from_dict(fields)\n"
+"# Returns \"username=user&password=pass\"\n"
+"[/codeblock]\n"
+"Furthermore, if a key has a [code]null[/code] value, only the key itself is "
+"added, without equal sign and value. If the value is an array, for each "
+"value in it a pair with the same key is added.\n"
+"[codeblock]\n"
+"var fields = {\"single\": 123, \"not_valued\": null, \"multiple\": [22, 33, "
+"44]}\n"
+"var query_string = http_client.query_string_from_dict(fields)\n"
+"# Returns \"single=123&not_valued&multiple=22&multiple=33&multiple=44\"\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:131
+msgid "Reads one chunk from the response."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:146
+msgid ""
+"Sends a request to the connected host. The URL parameter is just the part "
+"after the host, so for [code]http://somehost.com/index.php[/code], it is "
+"[code]index.php[/code].\n"
+"Headers are HTTP request headers. For available HTTP methods, see [enum "
+"Method].\n"
+"To create a POST request with query strings to push to the server, do:\n"
+"[codeblock]\n"
+"var fields = {\"username\" : \"user\", \"password\" : \"pass\"}\n"
+"var query_string = http_client.query_string_from_dict(fields)\n"
+"var headers = [\"Content-Type: application/x-www-form-urlencoded\", "
+"\"Content-Length: \" + str(query_string.length())]\n"
+"var result = http_client.request(http_client.METHOD_POST, \"index.php\", "
+"headers, query_string)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:169
+msgid ""
+"Sends a raw request to the connected host. The URL parameter is just the "
+"part after the host, so for [code]http://somehost.com/index.php[/code], it "
+"is [code]index.php[/code].\n"
+"Headers are HTTP request headers. For available HTTP methods, see [enum "
+"Method].\n"
+"Sends the body data raw, as a byte array and does not encode it in any way."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:177
+msgid ""
+"If [code]true[/code], execution will block until all data is read from the "
+"response."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:180
+msgid "The connection to use for this client."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:183
+msgid ""
+"The size of the buffer used and maximum bytes to read per iteration. See "
+"[method read_response_body_chunk]."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:188
+msgid ""
+"HTTP GET method. The GET method requests a representation of the specified "
+"resource. Requests using GET should only retrieve data."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:191
+msgid ""
+"HTTP HEAD method. The HEAD method asks for a response identical to that of a "
+"GET request, but without the response body. This is useful to request "
+"metadata like HTTP headers or to check if a resource exists."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:194
+msgid ""
+"HTTP POST method. The POST method is used to submit an entity to the "
+"specified resource, often causing a change in state or side effects on the "
+"server. This is often used for forms and submitting data or uploading files."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:197
+msgid ""
+"HTTP PUT method. The PUT method asks to replace all current representations "
+"of the target resource with the request payload. (You can think of POST as "
+"\"create or update\" and PUT as \"update\", although many services tend to "
+"not make a clear distinction or change their meaning)."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:200
+msgid ""
+"HTTP DELETE method. The DELETE method requests to delete the specified "
+"resource."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:203
+msgid ""
+"HTTP OPTIONS method. The OPTIONS method asks for a description of the "
+"communication options for the target resource. Rarely used."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:206
+msgid ""
+"HTTP TRACE method. The TRACE method performs a message loop-back test along "
+"the path to the target resource. Returns the entire HTTP request received in "
+"the response body. Rarely used."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:209
+msgid ""
+"HTTP CONNECT method. The CONNECT method establishes a tunnel to the server "
+"identified by the target resource. Rarely used."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:212
+msgid ""
+"HTTP PATCH method. The PATCH method is used to apply partial modifications "
+"to a resource."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:215
+msgid "Represents the size of the [enum Method] enum."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:218
+msgid "Status: Disconnected from the server."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:221
+msgid "Status: Currently resolving the hostname for the given URL into an IP."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:224
+msgid "Status: DNS failure: Can't resolve the hostname for the given URL."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:227
+msgid "Status: Currently connecting to server."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:230
+msgid "Status: Can't connect to the server."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:233
+msgid "Status: Connection established."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:236
+msgid "Status: Currently sending request."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:239
+msgid "Status: HTTP body received."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:242
+msgid "Status: Error in HTTP connection."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:245
+msgid "Status: Error in SSL handshake."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:248
+msgid ""
+"HTTP status code [code]100 Continue[/code]. Interim response that indicates "
+"everything so far is OK and that the client should continue with the request "
+"(or ignore this status if already finished)."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:251
+msgid ""
+"HTTP status code [code]101 Switching Protocol[/code]. Sent in response to an "
+"[code]Upgrade[/code] request header by the client. Indicates the protocol "
+"the server is switching to."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:254
+msgid ""
+"HTTP status code [code]102 Processing[/code] (WebDAV). Indicates that the "
+"server has received and is processing the request, but no response is "
+"available yet."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:257
+msgid ""
+"HTTP status code [code]200 OK[/code]. The request has succeeded. Default "
+"response for successful requests. Meaning varies depending on the request. "
+"GET: The resource has been fetched and is transmitted in the message body. "
+"HEAD: The entity headers are in the message body. POST: The resource "
+"describing the result of the action is transmitted in the message body. "
+"TRACE: The message body contains the request message as received by the "
+"server."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:260
+msgid ""
+"HTTP status code [code]201 Created[/code]. The request has succeeded and a "
+"new resource has been created as a result of it. This is typically the "
+"response sent after a PUT request."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:263
+msgid ""
+"HTTP status code [code]202 Accepted[/code]. The request has been received "
+"but not yet acted upon. It is non-committal, meaning that there is no way in "
+"HTTP to later send an asynchronous response indicating the outcome of "
+"processing the request. It is intended for cases where another process or "
+"server handles the request, or for batch processing."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:266
+msgid ""
+"HTTP status code [code]203 Non-Authoritative Information[/code]. This "
+"response code means returned meta-information set is not exact set as "
+"available from the origin server, but collected from a local or a third "
+"party copy. Except this condition, 200 OK response should be preferred "
+"instead of this response."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:269
+msgid ""
+"HTTP status code [code]204 No Content[/code]. There is no content to send "
+"for this request, but the headers may be useful. The user-agent may update "
+"its cached headers for this resource with the new ones."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:272
+msgid ""
+"HTTP status code [code]205 Reset Content[/code]. The server has fulfilled "
+"the request and desires that the client resets the \"document view\" that "
+"caused the request to be sent to its original state as received from the "
+"origin server."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:275
+msgid ""
+"HTTP status code [code]206 Partial Content[/code]. This response code is "
+"used because of a range header sent by the client to separate download into "
+"multiple streams."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:278
+msgid ""
+"HTTP status code [code]207 Multi-Status[/code] (WebDAV). A Multi-Status "
+"response conveys information about multiple resources in situations where "
+"multiple status codes might be appropriate."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:281
+msgid ""
+"HTTP status code [code]208 Already Reported[/code] (WebDAV). Used inside a "
+"DAV: propstat response element to avoid enumerating the internal members of "
+"multiple bindings to the same collection repeatedly."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:284
+msgid ""
+"HTTP status code [code]226 IM Used[/code] (WebDAV). The server has fulfilled "
+"a GET request for the resource, and the response is a representation of the "
+"result of one or more instance-manipulations applied to the current instance."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:287
+msgid ""
+"HTTP status code [code]300 Multiple Choice[/code]. The request has more than "
+"one possible responses and there is no standardized way to choose one of the "
+"responses. User-agent or user should choose one of them."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:290
+msgid ""
+"HTTP status code [code]301 Moved Permanently[/code]. Redirection. This "
+"response code means the URI of requested resource has been changed. The new "
+"URI is usually included in the response."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:293
+msgid ""
+"HTTP status code [code]302 Found[/code]. Temporary redirection. This "
+"response code means the URI of requested resource has been changed "
+"temporarily. New changes in the URI might be made in the future. Therefore, "
+"this same URI should be used by the client in future requests."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:296
+msgid ""
+"HTTP status code [code]303 See Other[/code]. The server is redirecting the "
+"user agent to a different resource, as indicated by a URI in the Location "
+"header field, which is intended to provide an indirect response to the "
+"original request."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:299
+msgid ""
+"HTTP status code [code]304 Not Modified[/code]. A conditional GET or HEAD "
+"request has been received and would have resulted in a 200 OK response if it "
+"were not for the fact that the condition evaluated to [code]false[/code]."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:302
+msgid ""
+"HTTP status code [code]305 Use Proxy[/code]. [i]Deprecated. Do not use.[/i]"
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:305
+msgid ""
+"HTTP status code [code]306 Switch Proxy[/code]. [i]Deprecated. Do not use.[/"
+"i]"
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:308
+msgid ""
+"HTTP status code [code]307 Temporary Redirect[/code]. The target resource "
+"resides temporarily under a different URI and the user agent MUST NOT change "
+"the request method if it performs an automatic redirection to that URI."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:311
+msgid ""
+"HTTP status code [code]308 Permanent Redirect[/code]. The target resource "
+"has been assigned a new permanent URI and any future references to this "
+"resource ought to use one of the enclosed URIs."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:314
+msgid ""
+"HTTP status code [code]400 Bad Request[/code]. The request was invalid. The "
+"server cannot or will not process the request due to something that is "
+"perceived to be a client error (e.g., malformed request syntax, invalid "
+"request message framing, invalid request contents, or deceptive request "
+"routing)."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:317
+msgid ""
+"HTTP status code [code]401 Unauthorized[/code]. Credentials required. The "
+"request has not been applied because it lacks valid authentication "
+"credentials for the target resource."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:320
+msgid ""
+"HTTP status code [code]402 Payment Required[/code]. This response code is "
+"reserved for future use. Initial aim for creating this code was using it for "
+"digital payment systems, however this is not currently used."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:323
+msgid ""
+"HTTP status code [code]403 Forbidden[/code]. The client does not have access "
+"rights to the content, i.e. they are unauthorized, so server is rejecting to "
+"give proper response. Unlike [code]401[/code], the client's identity is "
+"known to the server."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:326
+msgid ""
+"HTTP status code [code]404 Not Found[/code]. The server can not find "
+"requested resource. Either the URL is not recognized or the endpoint is "
+"valid but the resource itself does not exist. May also be sent instead of "
+"403 to hide existence of a resource if the client is not authorized."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:329
+msgid ""
+"HTTP status code [code]405 Method Not Allowed[/code]. The request's HTTP "
+"method is known by the server but has been disabled and cannot be used. For "
+"example, an API may forbid DELETE-ing a resource. The two mandatory methods, "
+"GET and HEAD, must never be disabled and should not return this error code."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:332
+msgid ""
+"HTTP status code [code]406 Not Acceptable[/code]. The target resource does "
+"not have a current representation that would be acceptable to the user "
+"agent, according to the proactive negotiation header fields received in the "
+"request. Used when negotiation content."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:335
+msgid ""
+"HTTP status code [code]407 Proxy Authentication Required[/code]. Similar to "
+"401 Unauthorized, but it indicates that the client needs to authenticate "
+"itself in order to use a proxy."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:338
+msgid ""
+"HTTP status code [code]408 Request Timeout[/code]. The server did not "
+"receive a complete request message within the time that it was prepared to "
+"wait."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:341
+msgid ""
+"HTTP status code [code]409 Conflict[/code]. The request could not be "
+"completed due to a conflict with the current state of the target resource. "
+"This code is used in situations where the user might be able to resolve the "
+"conflict and resubmit the request."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:344
+msgid ""
+"HTTP status code [code]410 Gone[/code]. The target resource is no longer "
+"available at the origin server and this condition is likely permanent."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:347
+msgid ""
+"HTTP status code [code]411 Length Required[/code]. The server refuses to "
+"accept the request without a defined Content-Length header."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:350
+msgid ""
+"HTTP status code [code]412 Precondition Failed[/code]. One or more "
+"conditions given in the request header fields evaluated to [code]false[/"
+"code] when tested on the server."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:353
+msgid ""
+"HTTP status code [code]413 Entity Too Large[/code]. The server is refusing "
+"to process a request because the request payload is larger than the server "
+"is willing or able to process."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:356
+msgid ""
+"HTTP status code [code]414 Request-URI Too Long[/code]. The server is "
+"refusing to service the request because the request-target is longer than "
+"the server is willing to interpret."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:359
+msgid ""
+"HTTP status code [code]415 Unsupported Media Type[/code]. The origin server "
+"is refusing to service the request because the payload is in a format not "
+"supported by this method on the target resource."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:362
+msgid ""
+"HTTP status code [code]416 Requested Range Not Satisfiable[/code]. None of "
+"the ranges in the request's Range header field overlap the current extent of "
+"the selected resource or the set of ranges requested has been rejected due "
+"to invalid ranges or an excessive request of small or overlapping ranges."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:365
+msgid ""
+"HTTP status code [code]417 Expectation Failed[/code]. The expectation given "
+"in the request's Expect header field could not be met by at least one of the "
+"inbound servers."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:368
+msgid ""
+"HTTP status code [code]418 I'm A Teapot[/code]. Any attempt to brew coffee "
+"with a teapot should result in the error code \"418 I'm a teapot\". The "
+"resulting entity body MAY be short and stout."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:371
+msgid ""
+"HTTP status code [code]421 Misdirected Request[/code]. The request was "
+"directed at a server that is not able to produce a response. This can be "
+"sent by a server that is not configured to produce responses for the "
+"combination of scheme and authority that are included in the request URI."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:374
+msgid ""
+"HTTP status code [code]422 Unprocessable Entity[/code] (WebDAV). The server "
+"understands the content type of the request entity (hence a 415 Unsupported "
+"Media Type status code is inappropriate), and the syntax of the request "
+"entity is correct (thus a 400 Bad Request status code is inappropriate) but "
+"was unable to process the contained instructions."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:377
+msgid ""
+"HTTP status code [code]423 Locked[/code] (WebDAV). The source or destination "
+"resource of a method is locked."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:380
+msgid ""
+"HTTP status code [code]424 Failed Dependency[/code] (WebDAV). The method "
+"could not be performed on the resource because the requested action depended "
+"on another action and that action failed."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:383
+msgid ""
+"HTTP status code [code]426 Upgrade Required[/code]. The server refuses to "
+"perform the request using the current protocol but might be willing to do so "
+"after the client upgrades to a different protocol."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:386
+msgid ""
+"HTTP status code [code]428 Precondition Required[/code]. The origin server "
+"requires the request to be conditional."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:389
+msgid ""
+"HTTP status code [code]429 Too Many Requests[/code]. The user has sent too "
+"many requests in a given amount of time (see \"rate limiting\"). Back off "
+"and increase time between requests or try again later."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:392
+msgid ""
+"HTTP status code [code]431 Request Header Fields Too Large[/code]. The "
+"server is unwilling to process the request because its header fields are too "
+"large. The request MAY be resubmitted after reducing the size of the request "
+"header fields."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:395
+msgid ""
+"HTTP status code [code]451 Response Unavailable For Legal Reasons[/code]. "
+"The server is denying access to the resource as a consequence of a legal "
+"demand."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:398
+msgid ""
+"HTTP status code [code]500 Internal Server Error[/code]. The server "
+"encountered an unexpected condition that prevented it from fulfilling the "
+"request."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:401
+msgid ""
+"HTTP status code [code]501 Not Implemented[/code]. The server does not "
+"support the functionality required to fulfill the request."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:404
+msgid ""
+"HTTP status code [code]502 Bad Gateway[/code]. The server, while acting as a "
+"gateway or proxy, received an invalid response from an inbound server it "
+"accessed while attempting to fulfill the request. Usually returned by load "
+"balancers or proxies."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:407
+msgid ""
+"HTTP status code [code]503 Service Unavailable[/code]. The server is "
+"currently unable to handle the request due to a temporary overload or "
+"scheduled maintenance, which will likely be alleviated after some delay. Try "
+"again later."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:410
+msgid ""
+"HTTP status code [code]504 Gateway Timeout[/code]. The server, while acting "
+"as a gateway or proxy, did not receive a timely response from an upstream "
+"server it needed to access in order to complete the request. Usually "
+"returned by load balancers or proxies."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:413
+msgid ""
+"HTTP status code [code]505 HTTP Version Not Supported[/code]. The server "
+"does not support, or refuses to support, the major version of HTTP that was "
+"used in the request message."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:416
+msgid ""
+"HTTP status code [code]506 Variant Also Negotiates[/code]. The server has an "
+"internal configuration error: the chosen variant resource is configured to "
+"engage in transparent content negotiation itself, and is therefore not a "
+"proper end point in the negotiation process."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:419
+msgid ""
+"HTTP status code [code]507 Insufficient Storage[/code]. The method could not "
+"be performed on the resource because the server is unable to store the "
+"representation needed to successfully complete the request."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:422
+msgid ""
+"HTTP status code [code]508 Loop Detected[/code]. The server terminated an "
+"operation because it encountered an infinite loop while processing a request "
+"with \"Depth: infinity\". This status indicates that the entire operation "
+"failed."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:425
+msgid ""
+"HTTP status code [code]510 Not Extended[/code]. The policy for accessing the "
+"resource has not been met in the request. The server should send back all "
+"the information necessary for the client to issue an extended request."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:428
+msgid ""
+"HTTP status code [code]511 Network Authentication Required[/code]. The "
+"client needs to authenticate to gain network access."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:4
+msgid "A node with the ability to send HTTP(S) requests."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:7
+msgid ""
+"A node with the ability to send HTTP requests. Uses [HTTPClient] "
+"internally.\n"
+"Can be used to make HTTP requests, i.e. download or upload files or web "
+"content via HTTP.\n"
+"[b]Example of contacting a REST API and printing one of its returned fields:"
+"[/b]\n"
+"[codeblock]\n"
+"func _ready():\n"
+" # Create an HTTP request node and connect its completion signal.\n"
+" var http_request = HTTPRequest.new()\n"
+" add_child(http_request)\n"
+" http_request.connect(\"request_completed\", self, "
+"\"_http_request_completed\")\n"
+"\n"
+" # Perform a GET request. The URL below returns JSON as of writing.\n"
+" var error = http_request.request(\"https://httpbin.org/get\")\n"
+" if error != OK:\n"
+" push_error(\"An error occurred in the HTTP request.\")\n"
+"\n"
+" # Perform a POST request. The URL below returns JSON as of writing.\n"
+" # Note: Don't make simultaneous requests using a single HTTPRequest "
+"node.\n"
+" # The snippet below is provided for reference only.\n"
+" var body = {\"name\": \"Godette\"}\n"
+" var error = http_request.request(\"https://httpbin.org/post\", [], true, "
+"HTTPClient.METHOD_POST, body)\n"
+" if error != OK:\n"
+" push_error(\"An error occurred in the HTTP request.\")\n"
+"\n"
+"\n"
+"# Called when the HTTP request is completed.\n"
+"func _http_request_completed(result, response_code, headers, body):\n"
+" var response = parse_json(body.get_string_from_utf8())\n"
+"\n"
+" # Will print the user agent string used by the HTTPRequest node (as "
+"recognized by httpbin.org).\n"
+" print(response.headers[\"User-Agent\"])\n"
+"[/codeblock]\n"
+"[b]Example of loading and displaying an image using HTTPRequest:[/b]\n"
+"[codeblock]\n"
+"func _ready():\n"
+" # Create an HTTP request node and connect its completion signal.\n"
+" var http_request = HTTPRequest.new()\n"
+" add_child(http_request)\n"
+" http_request.connect(\"request_completed\", self, "
+"\"_http_request_completed\")\n"
+"\n"
+" # Perform the HTTP request. The URL below returns a PNG image as of "
+"writing.\n"
+" var error = http_request.request(\"https://via.placeholder.com/512\")\n"
+" if error != OK:\n"
+" push_error(\"An error occurred in the HTTP request.\")\n"
+"\n"
+"\n"
+"# Called when the HTTP request is completed.\n"
+"func _http_request_completed(result, response_code, headers, body):\n"
+" var image = Image.new()\n"
+" var error = image.load_png_from_buffer(body)\n"
+" if error != OK:\n"
+" push_error(\"Couldn't load the image.\")\n"
+"\n"
+" var texture = ImageTexture.new()\n"
+" texture.create_from_image(image)\n"
+"\n"
+" # Display the image in a TextureRect node.\n"
+" var texture_rect = TextureRect.new()\n"
+" add_child(texture_rect)\n"
+" texture_rect.texture = texture\n"
+"[/codeblock]\n"
+"[b]Note:[/b] When performing HTTP requests from a project exported to HTML5, "
+"keep in mind the remote server may not allow requests from foreign origins "
+"due to [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/"
+"url]. If you host the server in question, you should modify its backend to "
+"allow requests from foreign origins by adding the [code]Access-Control-Allow-"
+"Origin: *[/code] HTTP header."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:70
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/networking/"
+"http_request_class.html"
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:78
+msgid "Cancels the current request."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:85
+msgid ""
+"Returns the response body length.\n"
+"[b]Note:[/b] Some Web servers may not send a body length. In this case, the "
+"value returned will be [code]-1[/code]. If using chunked transfer encoding, "
+"the body length will also be [code]-1[/code]."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:93
+msgid "Returns the amount of bytes this HTTPRequest downloaded."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:100
+msgid ""
+"Returns the current status of the underlying [HTTPClient]. See [enum "
+"HTTPClient.Status]."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:117
+msgid ""
+"Creates request on the underlying [HTTPClient]. If there is no configuration "
+"errors, it tries to connect using [method HTTPClient.connect_to_host] and "
+"passes parameters onto [method HTTPClient.request].\n"
+"Returns [constant OK] if request is successfully created. (Does not imply "
+"that the server has responded), [constant ERR_UNCONFIGURED] if not in the "
+"tree, [constant ERR_BUSY] if still processing previous request, [constant "
+"ERR_INVALID_PARAMETER] if given string is not a valid URL format, or "
+"[constant ERR_CANT_CONNECT] if not using thread and the [HTTPClient] cannot "
+"connect to host."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:124
+msgid "Maximum allowed size for response bodies."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:127
+msgid ""
+"The size of the buffer used and maximum bytes to read per iteration. See "
+"[member HTTPClient.read_chunk_size].\n"
+"Set this to a higher value (e.g. 65536 for 64 KiB) when downloading large "
+"files to achieve better speeds at the cost of memory."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:131
+msgid "The file to download into. Will output any received file into it."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:134
+msgid "Maximum number of allowed redirects."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:139
+msgid "If [code]true[/code], multithreading is used to improve performance."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:153
+msgid "Emitted when a request is completed."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:159
+msgid "Request successful."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:164
+msgid "Request failed while connecting."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:167
+msgid "Request failed while resolving."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:170
+msgid "Request failed due to connection (read/write) error."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:173
+msgid "Request failed on SSL handshake."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:176
+msgid "Request does not have a response (yet)."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:179
+msgid "Request exceeded its maximum size limit, see [member body_size_limit]."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:182
+msgid "Request failed (currently unused)."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:185
+msgid "HTTPRequest couldn't open the download file."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:188
+msgid "HTTPRequest couldn't write to the download file."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:191
+msgid "Request reached its maximum redirect limit, see [member max_redirects]."
+msgstr ""
+
+#: doc/classes/Image.xml:4
+msgid "Image datatype."
+msgstr ""
+
+#: doc/classes/Image.xml:7
+msgid ""
+"Native image datatype. Contains image data, which can be converted to a "
+"[Texture2D], and several functions to interact with it. The maximum width "
+"and height for an [Image] are [constant MAX_WIDTH] and [constant "
+"MAX_HEIGHT].\n"
+"[b]Note:[/b] The maximum image size is 16384×16384 pixels due to graphics "
+"hardware limitations. Larger images will fail to import."
+msgstr ""
+
+#: doc/classes/Image.xml:23
+msgid ""
+"Alpha-blends [code]src_rect[/code] from [code]src[/code] image to this image "
+"at coordinates [code]dest[/code]."
+msgstr ""
+
+#: doc/classes/Image.xml:38
+msgid ""
+"Alpha-blends [code]src_rect[/code] from [code]src[/code] image to this image "
+"using [code]mask[/code] image at coordinates [code]dst[/code]. Alpha "
+"channels are required for both [code]src[/code] and [code]mask[/code]. "
+"[code]dst[/code] pixels and [code]src[/code] pixels will blend if the "
+"corresponding mask pixel's alpha value is not 0. [code]src[/code] image and "
+"[code]mask[/code] image [b]must[/b] have the same size (width and height) "
+"but they can have different formats."
+msgstr ""
+
+#: doc/classes/Image.xml:51
+msgid ""
+"Copies [code]src_rect[/code] from [code]src[/code] image to this image at "
+"coordinates [code]dst[/code]."
+msgstr ""
+
+#: doc/classes/Image.xml:66
+msgid ""
+"Blits [code]src_rect[/code] area from [code]src[/code] image to this image "
+"at the coordinates given by [code]dst[/code]. [code]src[/code] pixel is "
+"copied onto [code]dst[/code] if the corresponding [code]mask[/code] pixel's "
+"alpha value is not 0. [code]src[/code] image and [code]mask[/code] image "
+"[b]must[/b] have the same size (width and height) but they can have "
+"different formats."
+msgstr ""
+
+#: doc/classes/Image.xml:75
+msgid ""
+"Converts a bumpmap to a normalmap. A bumpmap provides a height offset per-"
+"pixel, while a normalmap provides a normal direction per pixel."
+msgstr ""
+
+#: doc/classes/Image.xml:82
+msgid "Removes the image's mipmaps."
+msgstr ""
+
+#: doc/classes/Image.xml:95
+msgid ""
+"Compresses the image to use less memory. Can not directly access pixel data "
+"while the image is compressed. Returns error if the chosen compression mode "
+"is not available. See [enum CompressMode] and [enum CompressSource] "
+"constants."
+msgstr ""
+
+#: doc/classes/Image.xml:116
+msgid "Converts the image's format. See [enum Format] constants."
+msgstr ""
+
+#: doc/classes/Image.xml:125
+msgid "Copies [code]src[/code] image to this image."
+msgstr ""
+
+#: doc/classes/Image.xml:140
+msgid ""
+"Creates an empty image of given size and format. See [enum Format] "
+"constants. If [code]use_mipmaps[/code] is [code]true[/code] then generate "
+"mipmaps for this image. See the [method generate_mipmaps]."
+msgstr ""
+
+#: doc/classes/Image.xml:157
+msgid ""
+"Creates a new image of given size and format. See [enum Format] constants. "
+"Fills the image with the given raw data. If [code]use_mipmaps[/code] is "
+"[code]true[/code] then loads mipmaps for this image from [code]data[/code]. "
+"See [method generate_mipmaps]."
+msgstr ""
+
+#: doc/classes/Image.xml:168
+msgid ""
+"Crops the image to the given [code]width[/code] and [code]height[/code]. If "
+"the specified size is larger than the current size, the extra area is filled "
+"with black pixels."
+msgstr ""
+
+#: doc/classes/Image.xml:175
+msgid ""
+"Decompresses the image if it is compressed. Returns an error if decompress "
+"function is not available."
+msgstr ""
+
+#: doc/classes/Image.xml:182
+msgid ""
+"Returns [constant ALPHA_BLEND] if the image has data for alpha values. "
+"Returns [constant ALPHA_BIT] if all the alpha values are stored in a single "
+"bit. Returns [constant ALPHA_NONE] if no data for alpha values is found."
+msgstr ""
+
+#: doc/classes/Image.xml:199
+msgid "Fills the image with a given [Color]."
+msgstr ""
+
+#: doc/classes/Image.xml:206
+msgid "Blends low-alpha pixels with nearby pixels."
+msgstr ""
+
+#: doc/classes/Image.xml:213
+msgid "Flips the image horizontally."
+msgstr ""
+
+#: doc/classes/Image.xml:220
+msgid "Flips the image vertically."
+msgstr ""
+
+#: doc/classes/Image.xml:229
+msgid ""
+"Generates mipmaps for the image. Mipmaps are pre-calculated and lower "
+"resolution copies of the image. Mipmaps are automatically used if the image "
+"needs to be scaled down when rendered. This improves image quality and the "
+"performance of the rendering. Returns an error if the image is compressed, "
+"in a custom format or if the image's width/height is 0."
+msgstr ""
+
+#: doc/classes/Image.xml:236
+msgid "Returns the image's raw data."
+msgstr ""
+
+#: doc/classes/Image.xml:243
+msgid "Returns the image's format. See [enum Format] constants."
+msgstr ""
+
+#: doc/classes/Image.xml:250
+msgid "Returns the image's height."
+msgstr ""
+
+#: doc/classes/Image.xml:259
+msgid ""
+"Returns the offset where the image's mipmap with index [code]mipmap[/code] "
+"is stored in the [code]data[/code] dictionary."
+msgstr ""
+
+#: doc/classes/Image.xml:270
+msgid ""
+"Returns the color of the pixel at [code](x, y)[/code]. This is the same as "
+"[method get_pixelv], but with two integer arguments instead of a [Vector2] "
+"argument."
+msgstr ""
+
+#: doc/classes/Image.xml:279
+msgid ""
+"Returns the color of the pixel at [code]src[/code]. This is the same as "
+"[method get_pixel], but with a [Vector2] argument instead of two integer "
+"arguments."
+msgstr ""
+
+#: doc/classes/Image.xml:288
+msgid ""
+"Returns a new image that is a copy of the image's area specified with "
+"[code]rect[/code]."
+msgstr ""
+
+#: doc/classes/Image.xml:295
+msgid "Returns the image's size (width and height)."
+msgstr ""
+
+#: doc/classes/Image.xml:302
+msgid ""
+"Returns a [Rect2] enclosing the visible portion of the image, considering "
+"each pixel with a non-zero alpha channel as visible."
+msgstr ""
+
+#: doc/classes/Image.xml:309
+msgid "Returns the image's width."
+msgstr ""
+
+#: doc/classes/Image.xml:316
+msgid "Returns [code]true[/code] if the image has generated mipmaps."
+msgstr ""
+
+#: doc/classes/Image.xml:323
+msgid "Returns [code]true[/code] if the image is compressed."
+msgstr ""
+
+#: doc/classes/Image.xml:330
+msgid "Returns [code]true[/code] if the image has no data."
+msgstr ""
+
+#: doc/classes/Image.xml:337
+msgid ""
+"Returns [code]true[/code] if all the image's pixels have an alpha value of "
+"0. Returns [code]false[/code] if any pixel has an alpha value higher than 0."
+msgstr ""
+
+#: doc/classes/Image.xml:346
+msgid ""
+"Loads an image from file [code]path[/code]. See [url=https://docs."
+"godotengine.org/en/latest/getting_started/workflow/assets/importing_images."
+"html#supported-image-formats]Supported image formats[/url] for a list of "
+"supported image formats and limitations."
+msgstr ""
+
+#: doc/classes/Image.xml:355
+msgid "Loads an image from the binary contents of a JPEG file."
+msgstr ""
+
+#: doc/classes/Image.xml:364
+msgid "Loads an image from the binary contents of a PNG file."
+msgstr ""
+
+#: doc/classes/Image.xml:373
+msgid "Loads an image from the binary contents of a TGA file."
+msgstr ""
+
+#: doc/classes/Image.xml:382
+msgid "Loads an image from the binary contents of a WebP file."
+msgstr ""
+
+#: doc/classes/Image.xml:389
+msgid ""
+"Converts the image's data to represent coordinates on a 3D plane. This is "
+"used when the image represents a normalmap. A normalmap can add lots of "
+"detail to a 3D surface without increasing the polygon count."
+msgstr ""
+
+#: doc/classes/Image.xml:396
+msgid ""
+"Multiplies color values with alpha values. Resulting color values for a "
+"pixel are [code](color * alpha)/256[/code]."
+msgstr ""
+
+#: doc/classes/Image.xml:409
+msgid ""
+"Resizes the image to the given [code]width[/code] and [code]height[/code]. "
+"New pixels are calculated using [code]interpolation[/code]. See "
+"[code]interpolation[/code] constants."
+msgstr ""
+
+#: doc/classes/Image.xml:418
+msgid ""
+"Resizes the image to the nearest power of 2 for the width and height. If "
+"[code]square[/code] is [code]true[/code] then set width and height to be the "
+"same."
+msgstr ""
+
+#: doc/classes/Image.xml:425
+msgid ""
+"Converts a standard RGBE (Red Green Blue Exponent) image to an sRGB image."
+msgstr ""
+
+#: doc/classes/Image.xml:436
+msgid ""
+"Saves the image as an EXR file to [code]path[/code]. If [code]grayscale[/"
+"code] is [code]true[/code] and the image has only one channel, it will be "
+"saved explicitly as monochrome rather than one red channel. This function "
+"will return [constant ERR_UNAVAILABLE] if Godot was compiled without the "
+"TinyEXR module."
+msgstr ""
+
+#: doc/classes/Image.xml:445
+msgid "Saves the image as a PNG file to [code]path[/code]."
+msgstr ""
+
+#: doc/classes/Image.xml:464
+msgid ""
+"Sets the [Color] of the pixel at [code](x, y)[/code]. Example:\n"
+"[codeblock]\n"
+"var img = Image.new()\n"
+"img.create(img_width, img_height, false, Image.FORMAT_RGBA8)\n"
+"img.set_pixel(x, y, color)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Image.xml:480
+msgid ""
+"Sets the [Color] of the pixel at [code](dst.x, dst.y)[/code]. Note that the "
+"[code]dst[/code] values must be integers. Example:\n"
+"[codeblock]\n"
+"var img = Image.new()\n"
+"img.create(img_width, img_height, false, Image.FORMAT_RGBA8)\n"
+"img.set_pixelv(Vector2(x, y), color)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Image.xml:492
+msgid "Shrinks the image by a factor of 2."
+msgstr ""
+
+#: doc/classes/Image.xml:499
+msgid "Converts the raw data from the sRGB colorspace to a linear scale."
+msgstr ""
+
+#: doc/classes/Image.xml:505
+msgid ""
+"Holds all of the image's color data in a given format. See [enum Format] "
+"constants."
+msgstr ""
+
+#: doc/classes/Image.xml:510
+msgid "The maximal width allowed for [Image] resources."
+msgstr ""
+
+#: doc/classes/Image.xml:513
+msgid "The maximal height allowed for [Image] resources."
+msgstr ""
+
+#: doc/classes/Image.xml:516
+msgid "Texture format with a single 8-bit depth representing luminance."
+msgstr ""
+
+#: doc/classes/Image.xml:519
+msgid ""
+"OpenGL texture format with two values, luminance and alpha each stored with "
+"8 bits."
+msgstr ""
+
+#: doc/classes/Image.xml:522
+msgid ""
+"OpenGL texture format [code]RED[/code] with a single component and a "
+"bitdepth of 8."
+msgstr ""
+
+#: doc/classes/Image.xml:525
+msgid ""
+"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
+"8 for each."
+msgstr ""
+
+#: doc/classes/Image.xml:528
+msgid ""
+"OpenGL texture format [code]RGB[/code] with three components, each with a "
+"bitdepth of 8.\n"
+"[b]Note:[/b] When creating an [ImageTexture], an sRGB to linear color space "
+"conversion is performed."
+msgstr ""
+
+#: doc/classes/Image.xml:532
+msgid ""
+"OpenGL texture format [code]RGBA[/code] with four components, each with a "
+"bitdepth of 8.\n"
+"[b]Note:[/b] When creating an [ImageTexture], an sRGB to linear color space "
+"conversion is performed."
+msgstr ""
+
+#: doc/classes/Image.xml:536
+msgid ""
+"OpenGL texture format [code]RGBA[/code] with four components, each with a "
+"bitdepth of 4."
+msgstr ""
+
+#: doc/classes/Image.xml:541
+msgid ""
+"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
+"bit floating-point value."
+msgstr ""
+
+#: doc/classes/Image.xml:544
+msgid ""
+"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
+"each a 32-bit floating-point values."
+msgstr ""
+
+#: doc/classes/Image.xml:547
+msgid ""
+"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
+"components, each a 32-bit floating-point values."
+msgstr ""
+
+#: doc/classes/Image.xml:550
+msgid ""
+"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
+"components, each a 32-bit floating-point values."
+msgstr ""
+
+#: doc/classes/Image.xml:553
+msgid ""
+"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 16-"
+"bit \"half-precision\" floating-point value."
+msgstr ""
+
+#: doc/classes/Image.xml:556
+msgid ""
+"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
+"each a 16-bit \"half-precision\" floating-point value."
+msgstr ""
+
+#: doc/classes/Image.xml:559
+msgid ""
+"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
+"components, each a 16-bit \"half-precision\" floating-point value."
+msgstr ""
+
+#: doc/classes/Image.xml:562
+msgid ""
+"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
+"components, each a 16-bit \"half-precision\" floating-point value."
+msgstr ""
+
+#: doc/classes/Image.xml:565
+msgid ""
+"A special OpenGL texture format where the three color components have 9 bits "
+"of precision and all three share a single 5-bit exponent."
+msgstr ""
+
+#: doc/classes/Image.xml:568
+msgid ""
+"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
+"texture format that uses Block Compression 1, and is the smallest variation "
+"of S3TC, only providing 1 bit of alpha and color data being premultiplied "
+"with alpha.\n"
+"[b]Note:[/b] When creating an [ImageTexture], an sRGB to linear color space "
+"conversion is performed."
+msgstr ""
+
+#: doc/classes/Image.xml:572
+msgid ""
+"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
+"texture format that uses Block Compression 2, and color data is interpreted "
+"as not having been premultiplied by alpha. Well suited for images with sharp "
+"alpha transitions between translucent and opaque areas.\n"
+"[b]Note:[/b] When creating an [ImageTexture], an sRGB to linear color space "
+"conversion is performed."
+msgstr ""
+
+#: doc/classes/Image.xml:576
+msgid ""
+"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
+"texture format also known as Block Compression 3 or BC3 that contains 64 "
+"bits of alpha channel data followed by 64 bits of DXT1-encoded color data. "
+"Color data is not premultiplied by alpha, same as DXT3. DXT5 generally "
+"produces superior results for transparent gradients compared to DXT3.\n"
+"[b]Note:[/b] When creating an [ImageTexture], an sRGB to linear color space "
+"conversion is performed."
+msgstr ""
+
+#: doc/classes/Image.xml:580
+msgid ""
+"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
+"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
+"normalizing the red channel data using the same compression algorithm that "
+"DXT5 uses for the alpha channel."
+msgstr ""
+
+#: doc/classes/Image.xml:583
+msgid ""
+"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
+"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
+"normalizing the red and green channel data using the same compression "
+"algorithm that DXT5 uses for the alpha channel."
+msgstr ""
+
+#: doc/classes/Image.xml:586
+msgid ""
+"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
+"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
+"RGBA components.\n"
+"[b]Note:[/b] When creating an [ImageTexture], an sRGB to linear color space "
+"conversion is performed."
+msgstr ""
+
+#: doc/classes/Image.xml:590
+msgid ""
+"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
+"BPTC_Texture_Compression]BPTC[/url] compression with signed floating-point "
+"RGB components."
+msgstr ""
+
+#: doc/classes/Image.xml:593
+msgid ""
+"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
+"BPTC_Texture_Compression]BPTC[/url] compression with unsigned floating-point "
+"RGB components."
+msgstr ""
+
+#: doc/classes/Image.xml:596
+msgid ""
+"Texture format used on PowerVR-supported mobile platforms, uses 2-bit color "
+"depth with no alpha. More information can be found [url=https://en.wikipedia."
+"org/wiki/PVRTC]here[/url].\n"
+"[b]Note:[/b] When creating an [ImageTexture], an sRGB to linear color space "
+"conversion is performed."
+msgstr ""
+
+#: doc/classes/Image.xml:600
+msgid ""
+"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
+"alpha component."
+msgstr ""
+
+#: doc/classes/Image.xml:603
+msgid ""
+"Similar to [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with 4-"
+"bit color depth and no alpha."
+msgstr ""
+
+#: doc/classes/Image.xml:606
+msgid ""
+"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
+"alpha component."
+msgstr ""
+
+#: doc/classes/Image.xml:609
+msgid ""
+"[url=https://en.wikipedia.org/wiki/"
+"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
+"url], also referred to as \"ETC1\", and is part of the OpenGL ES graphics "
+"standard. This format cannot store an alpha channel."
+msgstr ""
+
+#: doc/classes/Image.xml:612
+msgid ""
+"[url=https://en.wikipedia.org/wiki/"
+"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
+"format 2[/url] ([code]R11_EAC[/code] variant), which provides one channel of "
+"unsigned data."
+msgstr ""
+
+#: doc/classes/Image.xml:615
+msgid ""
+"[url=https://en.wikipedia.org/wiki/"
+"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
+"format 2[/url] ([code]SIGNED_R11_EAC[/code] variant), which provides one "
+"channel of signed data."
+msgstr ""
+
+#: doc/classes/Image.xml:618
+msgid ""
+"[url=https://en.wikipedia.org/wiki/"
+"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
+"format 2[/url] ([code]RG11_EAC[/code] variant), which provides two channels "
+"of unsigned data."
+msgstr ""
+
+#: doc/classes/Image.xml:621
+msgid ""
+"[url=https://en.wikipedia.org/wiki/"
+"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
+"format 2[/url] ([code]SIGNED_RG11_EAC[/code] variant), which provides two "
+"channels of signed data."
+msgstr ""
+
+#: doc/classes/Image.xml:624
+msgid ""
+"[url=https://en.wikipedia.org/wiki/"
+"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
+"format 2[/url] ([code]RGB8[/code] variant), which is a follow-up of ETC1 and "
+"compresses RGB888 data.\n"
+"[b]Note:[/b] When creating an [ImageTexture], an sRGB to linear color space "
+"conversion is performed."
+msgstr ""
+
+#: doc/classes/Image.xml:628
+msgid ""
+"[url=https://en.wikipedia.org/wiki/"
+"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
+"format 2[/url] ([code]RGBA8[/code]variant), which compresses RGBA8888 data "
+"with full alpha support.\n"
+"[b]Note:[/b] When creating an [ImageTexture], an sRGB to linear color space "
+"conversion is performed."
+msgstr ""
+
+#: doc/classes/Image.xml:632
+msgid ""
+"[url=https://en.wikipedia.org/wiki/"
+"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
+"format 2[/url] ([code]RGB8_PUNCHTHROUGH_ALPHA1[/code] variant), which "
+"compresses RGBA data to make alpha either fully transparent or fully "
+"opaque.\n"
+"[b]Note:[/b] When creating an [ImageTexture], an sRGB to linear color space "
+"conversion is performed."
+msgstr ""
+
+#: doc/classes/Image.xml:640
+msgid "Represents the size of the [enum Format] enum."
+msgstr ""
+
+#: doc/classes/Image.xml:643
+msgid ""
+"Performs nearest-neighbor interpolation. If the image is resized, it will be "
+"pixelated."
+msgstr ""
+
+#: doc/classes/Image.xml:646
+msgid ""
+"Performs bilinear interpolation. If the image is resized, it will be blurry. "
+"This mode is faster than [constant INTERPOLATE_CUBIC], but it results in "
+"lower quality."
+msgstr ""
+
+#: doc/classes/Image.xml:649
+msgid ""
+"Performs cubic interpolation. If the image is resized, it will be blurry. "
+"This mode often gives better results compared to [constant "
+"INTERPOLATE_BILINEAR], at the cost of being slower."
+msgstr ""
+
+#: doc/classes/Image.xml:652
+msgid ""
+"Performs bilinear separately on the two most-suited mipmap levels, then "
+"linearly interpolates between them.\n"
+"It's slower than [constant INTERPOLATE_BILINEAR], but produces higher-"
+"quality results with much less aliasing artifacts.\n"
+"If the image does not have mipmaps, they will be generated and used "
+"internally, but no mipmaps will be generated on the resulting image.\n"
+"[b]Note:[/b] If you intend to scale multiple copies of the original image, "
+"it's better to call [method generate_mipmaps]] on it in advance, to avoid "
+"wasting processing power in generating them again and again.\n"
+"On the other hand, if the image already has mipmaps, they will be used, and "
+"a new set will be generated for the resulting image."
+msgstr ""
+
+#: doc/classes/Image.xml:659
+msgid ""
+"Performs Lanczos interpolation. This is the slowest image resizing mode, but "
+"it typically gives the best results, especially when downscalng images."
+msgstr ""
+
+#: doc/classes/Image.xml:662
+msgid "Image does not have alpha."
+msgstr ""
+
+#: doc/classes/Image.xml:665
+msgid "Image stores alpha in a single bit."
+msgstr ""
+
+#: doc/classes/Image.xml:668
+msgid "Image uses alpha."
+msgstr ""
+
+#: doc/classes/Image.xml:671
+msgid "Use S3TC compression."
+msgstr ""
+
+#: doc/classes/Image.xml:674
+msgid "Use PVRTC2 compression."
+msgstr ""
+
+#: doc/classes/Image.xml:677
+msgid "Use PVRTC4 compression."
+msgstr ""
+
+#: doc/classes/Image.xml:680
+msgid "Use ETC compression."
+msgstr ""
+
+#: doc/classes/Image.xml:683
+msgid "Use ETC2 compression."
+msgstr ""
+
+#: doc/classes/Image.xml:698
+msgid ""
+"Source texture (before compression) is a regular texture. Default for all "
+"textures."
+msgstr ""
+
+#: doc/classes/Image.xml:701
+msgid "Source texture (before compression) is in sRGB space."
+msgstr ""
+
+#: doc/classes/Image.xml:704
+msgid ""
+"Source texture (before compression) is a normal texture (e.g. it can be "
+"compressed into two channels)."
+msgstr ""
+
+#: doc/classes/ImageTexture.xml:4
+msgid "A [Texture2D] based on an [Image]."
+msgstr ""
+
+#: doc/classes/ImageTexture.xml:7
+msgid ""
+"A [Texture2D] based on an [Image]. Can be created from an [Image] with "
+"[method create_from_image].\n"
+"[b]Note:[/b] The maximum image size is 16384×16384 pixels due to graphics "
+"hardware limitations. Larger images will fail to import."
+msgstr ""
+
+#: doc/classes/ImageTexture.xml:19
+msgid "Create a new [ImageTexture] from an [Image]."
+msgstr ""
+
+#: doc/classes/ImageTexture.xml:26
+msgid "Returns the format of the [ImageTexture], one of [enum Image.Format]."
+msgstr ""
+
+#: doc/classes/ImageTexture.xml:35
+msgid "Resizes the [ImageTexture] to the specified dimensions."
+msgstr ""
+
+#: doc/classes/ImageTexture.xml:46
+msgid ""
+"Replaces the texture's data with a new [code]image[/code]. If "
+"[code]immediate[/code] is [code]true[/code], it will take effect immediately "
+"after the call."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry3D.xml:4
+msgid "Draws simple geometry from code."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry3D.xml:7
+msgid ""
+"Draws simple geometry from code. Uses a drawing mode similar to OpenGL 1.x.\n"
+"See also [ArrayMesh], [MeshDataTool] and [SurfaceTool] for procedural "
+"geometry generation.\n"
+"[b]Note:[/b] ImmediateGeometry3D is best suited to small amounts of mesh "
+"data that change every frame. It will be slow when handling large amounts of "
+"mesh data. If mesh data doesn't change often, use [ArrayMesh], "
+"[MeshDataTool] or [SurfaceTool] instead.\n"
+"[b]Note:[/b] Godot uses clockwise [url=https://learnopengl.com/Advanced-"
+"OpenGL/Face-culling]winding order[/url] for front faces of triangle "
+"primitive modes."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry3D.xml:27
+msgid ""
+"Simple helper to draw an UV sphere with given latitude, longitude and radius."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry3D.xml:36
+msgid ""
+"Adds a vertex in local coordinate space with the currently set color/uv/etc."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry3D.xml:47
+msgid ""
+"Begin drawing (and optionally pass a texture override). When done call "
+"[method end]. For more information on how this works, search for "
+"[code]glBegin()[/code] and [code]glEnd()[/code] references.\n"
+"For the type of primitive, see the [enum Mesh.PrimitiveType] enum."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry3D.xml:55
+msgid "Clears everything that was drawn using begin/end."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry3D.xml:62
+msgid "Ends a drawing context and displays the results."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry3D.xml:71
+msgid "The current drawing color."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry3D.xml:80
+msgid "The next vertex's normal."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry3D.xml:89
+msgid "The next vertex's tangent (and binormal facing)."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry3D.xml:98
+msgid "The next vertex's UV."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry3D.xml:107
+msgid "The next vertex's second layer UV."
+msgstr ""
+
+#: doc/classes/Input.xml:4
+msgid "A singleton that deals with inputs."
+msgstr ""
+
+#: doc/classes/Input.xml:7
+msgid ""
+"A singleton that deals with inputs. This includes key presses, mouse buttons "
+"and movement, joypads, and input actions. Actions and their events can be "
+"set in the [b]Input Map[/b] tab in the [b]Project > Project Settings[/b], or "
+"with the [InputMap] class."
+msgstr ""
+
+#: doc/classes/Input.xml:10
+msgid "https://docs.godotengine.org/en/latest/tutorials/inputs/index.html"
+msgstr ""
+
+#: doc/classes/Input.xml:21
+msgid ""
+"This will simulate pressing the specified action.\n"
+"The strength can be used for non-boolean actions, it's ranged between 0 and "
+"1 representing the intensity of the given action.\n"
+"[b]Note:[/b] This method will not cause any [method Node._input] calls. It "
+"is intended to be used with [method is_action_pressed] and [method "
+"is_action_just_pressed]. If you want to simulate [code]_input[/code], use "
+"[method parse_input_event] instead."
+msgstr ""
+
+#: doc/classes/Input.xml:32
+msgid "If the specified action is already pressed, this will release it."
+msgstr ""
+
+#: doc/classes/Input.xml:43
+msgid ""
+"Adds a new mapping entry (in SDL2 format) to the mapping database. "
+"Optionally update already connected devices."
+msgstr ""
+
+#: doc/classes/Input.xml:50
+msgid ""
+"If the device has an accelerometer, this will return the acceleration. "
+"Otherwise, it returns an empty [Vector3].\n"
+"Note this method returns an empty [Vector3] when running from the editor "
+"even when your device has an accelerometer. You must export your project to "
+"a supported device to read values from the accelerometer."
+msgstr ""
+
+#: doc/classes/Input.xml:60
+msgid ""
+"Returns a value between 0 and 1 representing the intensity of the given "
+"action. In a joypad, for example, the further away the axis (analog sticks "
+"or L2, R2 triggers) is from the dead zone, the closer the value will be to "
+"1. If the action is mapped to a control that has no axis as the keyboard, "
+"the value returned will be 0 or 1."
+msgstr ""
+
+#: doc/classes/Input.xml:67
+msgid ""
+"Returns an [Array] containing the device IDs of all currently connected "
+"joypads."
+msgstr ""
+
+#: doc/classes/Input.xml:74
+msgid "Returns the currently assigned cursor shape (see [enum CursorShape])."
+msgstr ""
+
+#: doc/classes/Input.xml:81
+msgid ""
+"If the device has an accelerometer, this will return the gravity. Otherwise, "
+"it returns an empty [Vector3]."
+msgstr ""
+
+#: doc/classes/Input.xml:88
+msgid ""
+"If the device has a gyroscope, this will return the rate of rotation in rad/"
+"s around a device's X, Y, and Z axes. Otherwise, it returns an empty "
+"[Vector3]."
+msgstr ""
+
+#: doc/classes/Input.xml:99
+msgid ""
+"Returns the current value of the joypad axis at given index (see [enum "
+"JoyAxisList])."
+msgstr ""
+
+#: doc/classes/Input.xml:108
+msgid "Returns the index of the provided axis name."
+msgstr ""
+
+#: doc/classes/Input.xml:117
+msgid ""
+"Receives a [enum JoyAxisList] axis and returns its equivalent name as a "
+"string."
+msgstr ""
+
+#: doc/classes/Input.xml:126
+msgid "Returns the index of the provided button name."
+msgstr ""
+
+#: doc/classes/Input.xml:135
+msgid ""
+"Receives a gamepad button from [enum JoyButtonList] and returns its "
+"equivalent name as a string."
+msgstr ""
+
+#: doc/classes/Input.xml:144
+msgid ""
+"Returns a SDL2-compatible device GUID on platforms that use gamepad "
+"remapping. Returns [code]\"Default Gamepad\"[/code] otherwise."
+msgstr ""
+
+#: doc/classes/Input.xml:153
+msgid "Returns the name of the joypad at the specified device index."
+msgstr ""
+
+#: doc/classes/Input.xml:162
+msgid "Returns the duration of the current vibration effect in seconds."
+msgstr ""
+
+#: doc/classes/Input.xml:171
+msgid ""
+"Returns the strength of the joypad vibration: x is the strength of the weak "
+"motor, and y is the strength of the strong motor."
+msgstr ""
+
+#: doc/classes/Input.xml:178
+msgid ""
+"Returns the mouse speed for the last time the cursor was moved, and this "
+"until the next frame where the mouse moves. This means that even if the "
+"mouse is not moving, this function will still return the value of the last "
+"motion."
+msgstr ""
+
+#: doc/classes/Input.xml:185
+msgid ""
+"If the device has a magnetometer, this will return the magnetic field "
+"strength in micro-Tesla for all axes."
+msgstr ""
+
+#: doc/classes/Input.xml:192
+msgid ""
+"Returns mouse buttons as a bitmask. If multiple mouse buttons are pressed at "
+"the same time, the bits are added together."
+msgstr ""
+
+#: doc/classes/Input.xml:199
+msgid "Returns the mouse mode. See the constants for more information."
+msgstr ""
+
+#: doc/classes/Input.xml:208
+msgid ""
+"Returns [code]true[/code] when the user starts pressing the action event, "
+"meaning it's [code]true[/code] only on the frame that the user pressed down "
+"the button.\n"
+"This is useful for code that needs to run only once when an action is "
+"pressed, instead of every frame while it's pressed."
+msgstr ""
+
+#: doc/classes/Input.xml:218
+msgid ""
+"Returns [code]true[/code] when the user stops pressing the action event, "
+"meaning it's [code]true[/code] only on the frame that the user released the "
+"button."
+msgstr ""
+
+#: doc/classes/Input.xml:227
+msgid ""
+"Returns [code]true[/code] if you are pressing the action event. Note that if "
+"an action has multiple buttons assigned and more than one of them is "
+"pressed, releasing one button will release the action, even if some other "
+"button assigned to this action is still pressed."
+msgstr ""
+
+#: doc/classes/Input.xml:238
+msgid ""
+"Returns [code]true[/code] if you are pressing the joypad button (see [enum "
+"JoyButtonList])."
+msgstr ""
+
+#: doc/classes/Input.xml:247
+msgid ""
+"Returns [code]true[/code] if the system knows the specified device. This "
+"means that it sets all button and axis indices. Unknown joypads are not "
+"expected to match these constants, but you can still retrieve events from "
+"them."
+msgstr ""
+
+#: doc/classes/Input.xml:256
+msgid ""
+"Returns [code]true[/code] if you are pressing the key in the current "
+"keyboard layout. You can pass a [enum KeyList] constant."
+msgstr ""
+
+#: doc/classes/Input.xml:265
+msgid ""
+"Returns [code]true[/code] if you are pressing the mouse button specified "
+"with [enum ButtonList]."
+msgstr ""
+
+#: doc/classes/Input.xml:280
+msgid ""
+"Notifies the [Input] singleton that a connection has changed, to update the "
+"state for the [code]device[/code] index.\n"
+"This is used internally and should not have to be called from user scripts. "
+"See [signal joy_connection_changed] for the signal emitted when this is "
+"triggered internally."
+msgstr ""
+
+#: doc/classes/Input.xml:290
+msgid ""
+"Feeds an [InputEvent] to the game. Can be used to artificially trigger input "
+"events from code. Also generates [method Node._input] calls.\n"
+"Example:\n"
+"[codeblock]\n"
+"var a = InputEventAction.new()\n"
+"a.action = \"ui_cancel\"\n"
+"a.pressed = true\n"
+"Input.parse_input_event(a)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Input.xml:306
+msgid ""
+"Removes all mappings from the internal database that match the given GUID."
+msgstr ""
+
+#: doc/classes/Input.xml:319
+msgid ""
+"Sets a custom mouse cursor image, which is only visible inside the game "
+"window. The hotspot can also be specified. Passing [code]null[/code] to the "
+"image parameter resets to the system cursor. See [enum CursorShape] for the "
+"list of shapes.\n"
+"[code]image[/code]'s size must be lower than 256×256.\n"
+"[code]hotspot[/code] must be within [code]image[/code]'s size.\n"
+"[b]Note:[/b] [AnimatedTexture]s aren't supported as custom mouse cursors. If "
+"using an [AnimatedTexture], only the first frame will be displayed.\n"
+"[b]Note:[/b] Only images imported with the [b]Lossless[/b], [b]Lossy[/b] or "
+"[b]Uncompressed[/b] compression modes are supported. The [b]Video RAM[/b] "
+"compression mode can't be used for custom cursors."
+msgstr ""
+
+#: doc/classes/Input.xml:332
+msgid ""
+"Sets the default cursor shape to be used in the viewport instead of "
+"[constant CURSOR_ARROW].\n"
+"[b]Note:[/b] If you want to change the default cursor shape for [Control]'s "
+"nodes, use [member Control.mouse_default_cursor_shape] instead.\n"
+"[b]Note:[/b] This method generates an [InputEventMouseMotion] to update "
+"cursor immediately."
+msgstr ""
+
+#: doc/classes/Input.xml:343
+msgid "Sets the mouse mode. See the constants for more information."
+msgstr ""
+
+#: doc/classes/Input.xml:352
+msgid ""
+"Enables or disables the accumulation of similar input events sent by the "
+"operating system. When input accumulation is enabled, all input events "
+"generated during a frame will be merged and emitted when the frame is done "
+"rendering. Therefore, this limits the number of input method calls per "
+"second to the rendering FPS.\n"
+"Input accumulation is enabled by default. It can be disabled to get slightly "
+"more precise/reactive input at the cost of increased CPU usage. In "
+"applications where drawing freehand lines is required, input accumulation "
+"should generally be disabled while the user is drawing the line to get "
+"results that closely follow the actual input."
+msgstr ""
+
+#: doc/classes/Input.xml:368
+msgid ""
+"Starts to vibrate the joypad. Joypads usually come with two rumble motors, a "
+"strong and a weak one. [code]weak_magnitude[/code] is the strength of the "
+"weak motor (between 0 and 1) and [code]strong_magnitude[/code] is the "
+"strength of the strong motor (between 0 and 1). [code]duration[/code] is the "
+"duration of the effect in seconds (a duration of 0 will try to play the "
+"vibration indefinitely).\n"
+"[b]Note:[/b] Not every hardware is compatible with long effect durations; it "
+"is recommended to restart an effect if it has to be played for more than a "
+"few seconds."
+msgstr ""
+
+#: doc/classes/Input.xml:378
+msgid "Stops the vibration of the joypad."
+msgstr ""
+
+#: doc/classes/Input.xml:387
+msgid ""
+"Vibrate Android and iOS devices.\n"
+"[b]Note:[/b] It needs VIBRATE permission for Android at export settings. iOS "
+"does not support duration."
+msgstr ""
+
+#: doc/classes/Input.xml:397
+msgid "Sets the mouse position to the specified vector."
+msgstr ""
+
+#: doc/classes/Input.xml:408
+msgid "Emitted when a joypad device has been connected or disconnected."
+msgstr ""
+
+#: doc/classes/Input.xml:414
+msgid "Makes the mouse cursor visible if it is hidden."
+msgstr ""
+
+#: doc/classes/Input.xml:417
+msgid "Makes the mouse cursor hidden if it is visible."
+msgstr ""
+
+#: doc/classes/Input.xml:420
+msgid ""
+"Captures the mouse. The mouse will be hidden and unable to leave the game "
+"window, but it will still register movement and mouse button presses. On "
+"Windows and Linux, the mouse will use raw input mode, which means the "
+"reported movement will be unaffected by the OS' mouse acceleration settings."
+msgstr ""
+
+#: doc/classes/Input.xml:423
+msgid "Makes the mouse cursor visible but confines it to the game window."
+msgstr ""
+
+#: doc/classes/Input.xml:426
+msgid "Arrow cursor. Standard, default pointing cursor."
+msgstr ""
+
+#: doc/classes/Input.xml:429
+msgid ""
+"I-beam cursor. Usually used to show where the text cursor will appear when "
+"the mouse is clicked."
+msgstr ""
+
+#: doc/classes/Input.xml:432
+msgid ""
+"Pointing hand cursor. Usually used to indicate the pointer is over a link or "
+"other interactable item."
+msgstr ""
+
+#: doc/classes/Input.xml:435
+msgid ""
+"Cross cursor. Typically appears over regions in which a drawing operation "
+"can be performed or for selections."
+msgstr ""
+
+#: doc/classes/Input.xml:438
+msgid ""
+"Wait cursor. Indicates that the application is busy performing an operation. "
+"This cursor shape denotes that the application is still usable during the "
+"operation."
+msgstr ""
+
+#: doc/classes/Input.xml:441
+msgid ""
+"Busy cursor. Indicates that the application is busy performing an operation. "
+"This cursor shape denotes that the application isn't usable during the "
+"operation (e.g. something is blocking its main thread)."
+msgstr ""
+
+#: doc/classes/Input.xml:444
+msgid "Drag cursor. Usually displayed when dragging something."
+msgstr ""
+
+#: doc/classes/Input.xml:447
+msgid ""
+"Can drop cursor. Usually displayed when dragging something to indicate that "
+"it can be dropped at the current position."
+msgstr ""
+
+#: doc/classes/Input.xml:450
+msgid ""
+"Forbidden cursor. Indicates that the current action is forbidden (for "
+"example, when dragging something) or that the control at a position is "
+"disabled."
+msgstr ""
+
+#: doc/classes/Input.xml:453
+msgid ""
+"Vertical resize mouse cursor. A double-headed vertical arrow. It tells the "
+"user they can resize the window or the panel vertically."
+msgstr ""
+
+#: doc/classes/Input.xml:456
+msgid ""
+"Horizontal resize mouse cursor. A double-headed horizontal arrow. It tells "
+"the user they can resize the window or the panel horizontally."
+msgstr ""
+
+#: doc/classes/Input.xml:459
+msgid ""
+"Window resize mouse cursor. The cursor is a double-headed arrow that goes "
+"from the bottom left to the top right. It tells the user they can resize the "
+"window or the panel both horizontally and vertically."
+msgstr ""
+
+#: doc/classes/Input.xml:462
+msgid ""
+"Window resize mouse cursor. The cursor is a double-headed arrow that goes "
+"from the top left to the bottom right, the opposite of [constant "
+"CURSOR_BDIAGSIZE]. It tells the user they can resize the window or the panel "
+"both horizontally and vertically."
+msgstr ""
+
+#: doc/classes/Input.xml:465
+msgid "Move cursor. Indicates that something can be moved."
+msgstr ""
+
+#: doc/classes/Input.xml:468
+msgid ""
+"Vertical split mouse cursor. On Windows, it's the same as [constant "
+"CURSOR_VSIZE]."
+msgstr ""
+
+#: doc/classes/Input.xml:471
+msgid ""
+"Horizontal split mouse cursor. On Windows, it's the same as [constant "
+"CURSOR_HSIZE]."
+msgstr ""
+
+#: doc/classes/Input.xml:474
+msgid "Help cursor. Usually a question mark."
+msgstr ""
+
+#: doc/classes/InputEvent.xml:4
+msgid "Generic input event."
+msgstr ""
+
+#: doc/classes/InputEvent.xml:7
+msgid "Base class of all sort of input event. See [method Node._input]."
+msgstr ""
+
+#: doc/classes/InputEvent.xml:10 doc/classes/InputEventJoypadButton.xml:10
+#: doc/classes/InputEventJoypadMotion.xml:10 doc/classes/InputEventKey.xml:10
+#: doc/classes/InputEventMouse.xml:10 doc/classes/InputEventScreenDrag.xml:10
+#: doc/classes/InputEventScreenTouch.xml:11
+#: doc/classes/InputEventWithModifiers.xml:10
+msgid "https://docs.godotengine.org/en/latest/tutorials/inputs/inputevent.html"
+msgstr ""
+
+#: doc/classes/InputEvent.xml:20
+msgid ""
+"Returns [code]true[/code] if the given input event and this input event can "
+"be added together (only for events of type [InputEventMouseMotion]).\n"
+"The given input event's position, global position and speed will be copied. "
+"The resulting [code]relative[/code] is a sum of both events. Both events' "
+"modifiers have to be identical."
+msgstr ""
+
+#: doc/classes/InputEvent.xml:28
+msgid "Returns a [String] representation of the event."
+msgstr ""
+
+#: doc/classes/InputEvent.xml:37
+msgid ""
+"Returns a value between 0.0 and 1.0 depending on the given actions' state. "
+"Useful for getting the value of events of type [InputEventJoypadMotion]."
+msgstr ""
+
+#: doc/classes/InputEvent.xml:46
+msgid ""
+"Returns [code]true[/code] if this input event matches a pre-defined action "
+"of any type."
+msgstr ""
+
+#: doc/classes/InputEvent.xml:57
+msgid ""
+"Returns [code]true[/code] if the given action is being pressed (and is not "
+"an echo event for [InputEventKey] events, unless [code]allow_echo[/code] is "
+"[code]true[/code]). Not relevant for events of type [InputEventMouseMotion] "
+"or [InputEventScreenDrag]."
+msgstr ""
+
+#: doc/classes/InputEvent.xml:66
+msgid ""
+"Returns [code]true[/code] if the given action is released (i.e. not "
+"pressed). Not relevant for events of type [InputEventMouseMotion] or "
+"[InputEventScreenDrag]."
+msgstr ""
+
+#: doc/classes/InputEvent.xml:73
+msgid ""
+"Returns [code]true[/code] if this input event's type is one that can be "
+"assigned to an input action."
+msgstr ""
+
+#: doc/classes/InputEvent.xml:80
+msgid ""
+"Returns [code]true[/code] if this input event is an echo event (only for "
+"events of type [InputEventKey])."
+msgstr ""
+
+#: doc/classes/InputEvent.xml:87
+msgid ""
+"Returns [code]true[/code] if this input event is pressed. Not relevant for "
+"events of type [InputEventMouseMotion] or [InputEventScreenDrag]."
+msgstr ""
+
+#: doc/classes/InputEvent.xml:96
+msgid ""
+"Returns [code]true[/code] if the given input event is checking for the same "
+"key ([InputEventKey]), button ([InputEventJoypadButton]) or action "
+"([InputEventAction])."
+msgstr ""
+
+#: doc/classes/InputEvent.xml:107
+msgid ""
+"Returns a copy of the given input event which has been offset by "
+"[code]local_ofs[/code] and transformed by [code]xform[/code]. Relevant for "
+"events of type [InputEventMouseButton], [InputEventMouseMotion], "
+"[InputEventScreenTouch], [InputEventScreenDrag], [InputEventMagnifyGesture] "
+"and [InputEventPanGesture]."
+msgstr ""
+
+#: doc/classes/InputEvent.xml:113
+msgid ""
+"The event's device ID.\n"
+"[b]Note:[/b] This device ID will always be [code]-1[/code] for emulated "
+"mouse input from a touchscreen. This can be used to distinguish emulated "
+"mouse input from physical mouse input."
+msgstr ""
+
+#: doc/classes/InputEventAction.xml:4
+msgid "Input event type for actions."
+msgstr ""
+
+#: doc/classes/InputEventAction.xml:7
+msgid ""
+"Contains a generic action which can be targeted from several types of "
+"inputs. Actions can be created from the [b]Input Map[/b] tab in the "
+"[b]Project > Project Settings[/b] menu. See [method Node._input]."
+msgstr ""
+
+#: doc/classes/InputEventAction.xml:10
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/inputs/inputevent."
+"html#actions"
+msgstr ""
+
+#: doc/classes/InputEventAction.xml:16
+msgid "The action's name. Actions are accessed via this [String]."
+msgstr ""
+
+#: doc/classes/InputEventAction.xml:19
+msgid ""
+"If [code]true[/code], the action's state is pressed. If [code]false[/code], "
+"the action's state is released."
+msgstr ""
+
+#: doc/classes/InputEventAction.xml:22
+msgid ""
+"The action's strength between 0 and 1. This value is considered as equal to "
+"0 if pressed is [code]false[/code]. The event strength allows faking analog "
+"joypad motion events, by precising how strongly is the joypad axis bent or "
+"pressed."
+msgstr ""
+
+#: doc/classes/InputEventGesture.xml:4
+msgid "Base class for touch control gestures."
+msgstr ""
+
+#: doc/classes/InputEventGesture.xml:14
+msgid ""
+"The local gesture position relative to the [Viewport]. If used in [method "
+"Control._gui_input], the position is relative to the current [Control] that "
+"received this gesture."
+msgstr ""
+
+#: doc/classes/InputEventJoypadButton.xml:4
+msgid "Input event for gamepad buttons."
+msgstr ""
+
+#: doc/classes/InputEventJoypadButton.xml:7
+msgid ""
+"Input event type for gamepad buttons. For gamepad analog sticks and "
+"joysticks, see [InputEventJoypadMotion]."
+msgstr ""
+
+#: doc/classes/InputEventJoypadButton.xml:16
+msgid "Button identifier. One of the [enum JoyButtonList] button constants."
+msgstr ""
+
+#: doc/classes/InputEventJoypadButton.xml:19
+msgid ""
+"If [code]true[/code], the button's state is pressed. If [code]false[/code], "
+"the button's state is released."
+msgstr ""
+
+#: doc/classes/InputEventJoypadButton.xml:22
+msgid ""
+"Represents the pressure the user puts on the button with his finger, if the "
+"controller supports it. Ranges from [code]0[/code] to [code]1[/code]."
+msgstr ""
+
+#: doc/classes/InputEventJoypadMotion.xml:4
+msgid ""
+"Input event type for gamepad joysticks and other motions. For buttons, see "
+"[code]InputEventJoypadButton[/code]."
+msgstr ""
+
+#: doc/classes/InputEventJoypadMotion.xml:7
+msgid ""
+"Stores information about joystick motions. One [InputEventJoypadMotion] "
+"represents one axis at a time."
+msgstr ""
+
+#: doc/classes/InputEventJoypadMotion.xml:16
+msgid "Axis identifier. Use one of the [enum JoyAxisList] axis constants."
+msgstr ""
+
+#: doc/classes/InputEventJoypadMotion.xml:19
+msgid ""
+"Current position of the joystick on the given axis. The value ranges from "
+"[code]-1.0[/code] to [code]1.0[/code]. A value of [code]0[/code] means the "
+"axis is in its resting position."
+msgstr ""
+
+#: doc/classes/InputEventKey.xml:4
+msgid "Input event type for keyboard events."
+msgstr ""
+
+#: doc/classes/InputEventKey.xml:7
+msgid ""
+"Stores key presses on the keyboard. Supports key presses, key releases and "
+"[member echo] events."
+msgstr ""
+
+#: doc/classes/InputEventKey.xml:17
+msgid ""
+"Returns the keycode combined with modifier keys such as [kbd]Shift[/kbd] or "
+"[kbd]Alt[/kbd]. See also [InputEventWithModifiers].\n"
+"To get a human-readable representation of the [InputEventKey] with "
+"modifiers, use [code]OS.get_keycode_string(event."
+"get_keycode_with_modifiers())[/code] where [code]event[/code] is the "
+"[InputEventKey]."
+msgstr ""
+
+#: doc/classes/InputEventKey.xml:25
+msgid ""
+"Returns the physical keycode combined with modifier keys such as [kbd]Shift[/"
+"kbd] or [kbd]Alt[/kbd]. See also [InputEventWithModifiers].\n"
+"To get a human-readable representation of the [InputEventKey] with "
+"modifiers, use [code]OS.get_keycode_string(event."
+"get_physical_keycode_with_modifiers())[/code] where [code]event[/code] is "
+"the [InputEventKey]."
+msgstr ""
+
+#: doc/classes/InputEventKey.xml:32
+msgid ""
+"If [code]true[/code], the key was already pressed before this event. It "
+"means the user is holding the key down."
+msgstr ""
+
+#: doc/classes/InputEventKey.xml:35
+msgid ""
+"The key keycode, which corresponds to one of the [enum KeyList] constants. "
+"Represent key in the current keyboard layout.\n"
+"To get a human-readable representation of the [InputEventKey], use [code]OS."
+"get_keycode_string(event.keycode)[/code] where [code]event[/code] is the "
+"[InputEventKey]."
+msgstr ""
+
+#: doc/classes/InputEventKey.xml:39
+msgid ""
+"Key physical keycode, which corresponds to one of the [enum KeyList] "
+"constants. Represent the physical location of a key on the 101/102-key US "
+"QWERTY keyboard.\n"
+"To get a human-readable representation of the [InputEventKey], use [code]OS."
+"get_keycode_string(event.keycode)[/code] where [code]event[/code] is the "
+"[InputEventKey]."
+msgstr ""
+
+#: doc/classes/InputEventKey.xml:43
+msgid ""
+"If [code]true[/code], the key's state is pressed. If [code]false[/code], the "
+"key's state is released."
+msgstr ""
+
+#: doc/classes/InputEventKey.xml:46
+msgid ""
+"The key Unicode identifier (when relevant). Unicode identifiers for the "
+"composite characters and complex scripts may not be available unless IME "
+"input mode is active. See [method Window.set_ime_active] for more "
+"information."
+msgstr ""
+
+#: doc/classes/InputEventMouse.xml:4
+msgid "Base input event type for mouse events."
+msgstr ""
+
+#: doc/classes/InputEventMouse.xml:7
+msgid "Stores general mouse events information."
+msgstr ""
+
+#: doc/classes/InputEventMouse.xml:16
+msgid ""
+"The mouse button mask identifier, one of or a bitwise combination of the "
+"[enum ButtonList] button masks."
+msgstr ""
+
+#: doc/classes/InputEventMouse.xml:19
+msgid ""
+"The global mouse position relative to the current [Viewport] when used in "
+"[method Control._gui_input], otherwise is at 0,0."
+msgstr ""
+
+#: doc/classes/InputEventMouse.xml:22
+msgid ""
+"The local mouse position relative to the [Viewport]. If used in [method "
+"Control._gui_input], the position is relative to the current [Control] which "
+"is under the mouse."
+msgstr ""
+
+#: doc/classes/InputEventMouseButton.xml:4
+msgid "Input event type for mouse button events."
+msgstr ""
+
+#: doc/classes/InputEventMouseButton.xml:7
+msgid "Contains mouse click information. See [method Node._input]."
+msgstr ""
+
+#: doc/classes/InputEventMouseButton.xml:10
+#: doc/classes/InputEventMouseMotion.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/inputs/"
+"mouse_and_input_coordinates.html"
+msgstr ""
+
+#: doc/classes/InputEventMouseButton.xml:16
+msgid ""
+"The mouse button identifier, one of the [enum ButtonList] button or button "
+"wheel constants."
+msgstr ""
+
+#: doc/classes/InputEventMouseButton.xml:19
+msgid "If [code]true[/code], the mouse button's state is a double-click."
+msgstr ""
+
+#: doc/classes/InputEventMouseButton.xml:22
+msgid ""
+"The amount (or delta) of the event. When used for high-precision scroll "
+"events, this indicates the scroll amount (vertical or horizontal). This is "
+"only supported on some platforms; the reported sensitivity varies depending "
+"on the platform. May be [code]0[/code] if not supported."
+msgstr ""
+
+#: doc/classes/InputEventMouseButton.xml:25
+msgid ""
+"If [code]true[/code], the mouse button's state is pressed. If [code]false[/"
+"code], the mouse button's state is released."
+msgstr ""
+
+#: doc/classes/InputEventMouseMotion.xml:4
+msgid "Input event type for mouse motion events."
+msgstr ""
+
+#: doc/classes/InputEventMouseMotion.xml:7
+msgid ""
+"Contains mouse and pen motion information. Supports relative, absolute "
+"positions and speed. See [method Node._input].\n"
+"[b]Note:[/b] By default, this event is only emitted once per frame rendered "
+"at most. If you need more precise input reporting, call [method Input."
+"set_use_accumulated_input] with [code]false[/code] to make events emitted as "
+"often as possible. If you use InputEventMouseMotion to draw lines, consider "
+"implementing [url=https://en.wikipedia.org/wiki/Bresenham"
+"%27s_line_algorithm]Bresenham's line algorithm[/url] as well to avoid "
+"visible gaps in lines if the user is moving the mouse quickly."
+msgstr ""
+
+#: doc/classes/InputEventMouseMotion.xml:17
+msgid ""
+"Represents the pressure the user puts on the pen. Ranges from [code]0.0[/"
+"code] to [code]1.0[/code]."
+msgstr ""
+
+#: doc/classes/InputEventMouseMotion.xml:20
+msgid ""
+"The mouse position relative to the previous position (position at the last "
+"frame).\n"
+"[b]Note:[/b] Since [InputEventMouseMotion] is only emitted when the mouse "
+"moves, the last event won't have a relative position of [code]Vector2(0, 0)[/"
+"code] when the user stops moving the mouse."
+msgstr ""
+
+#: doc/classes/InputEventMouseMotion.xml:24
+msgid "The mouse speed in pixels per second."
+msgstr ""
+
+#: doc/classes/InputEventMouseMotion.xml:27
+msgid ""
+"Represents the angles of tilt of the pen. Positive X-coordinate value "
+"indicates a tilt to the right. Positive Y-coordinate value indicates a tilt "
+"toward the user. Ranges from [code]-1.0[/code] to [code]1.0[/code] for both "
+"axes."
+msgstr ""
+
+#: doc/classes/InputEventScreenDrag.xml:4
+msgid ""
+"Input event type for screen drag events. Only available on mobile devices."
+msgstr ""
+
+#: doc/classes/InputEventScreenDrag.xml:7
+msgid "Contains screen drag information. See [method Node._input]."
+msgstr ""
+
+#: doc/classes/InputEventScreenDrag.xml:16
+msgid "The drag event index in the case of a multi-drag event."
+msgstr ""
+
+#: doc/classes/InputEventScreenDrag.xml:19
+msgid "The drag position."
+msgstr ""
+
+#: doc/classes/InputEventScreenDrag.xml:22
+msgid "The drag position relative to its start position."
+msgstr ""
+
+#: doc/classes/InputEventScreenDrag.xml:25
+msgid "The drag speed."
+msgstr ""
+
+#: doc/classes/InputEventScreenTouch.xml:4
+msgid ""
+"Input event type for screen touch events.\n"
+"(only available on mobile devices)"
+msgstr ""
+
+#: doc/classes/InputEventScreenTouch.xml:8
+msgid ""
+"Stores multi-touch press/release information. Supports touch press, touch "
+"release and [member index] for multi-touch count and order."
+msgstr ""
+
+#: doc/classes/InputEventScreenTouch.xml:17
+msgid ""
+"The touch index in the case of a multi-touch event. One index = one finger."
+msgstr ""
+
+#: doc/classes/InputEventScreenTouch.xml:20
+msgid "The touch position."
+msgstr ""
+
+#: doc/classes/InputEventScreenTouch.xml:23
+msgid ""
+"If [code]true[/code], the touch's state is pressed. If [code]false[/code], "
+"the touch's state is released."
+msgstr ""
+
+#: doc/classes/InputEventWithModifiers.xml:4
+msgid "Base class for keys events with modifiers."
+msgstr ""
+
+#: doc/classes/InputEventWithModifiers.xml:7
+msgid ""
+"Contains keys events information with modifiers support like [kbd]Shift[/"
+"kbd] or [kbd]Alt[/kbd]. See [method Node._input]."
+msgstr ""
+
+#: doc/classes/InputEventWithModifiers.xml:16
+msgid "State of the [kbd]Alt[/kbd] modifier."
+msgstr ""
+
+#: doc/classes/InputEventWithModifiers.xml:19
+msgid "State of the [kbd]Cmd[/kbd] modifier."
+msgstr ""
+
+#: doc/classes/InputEventWithModifiers.xml:22
+msgid "State of the [kbd]Ctrl[/kbd] modifier."
+msgstr ""
+
+#: doc/classes/InputEventWithModifiers.xml:25
+msgid "State of the [kbd]Meta[/kbd] modifier."
+msgstr ""
+
+#: doc/classes/InputEventWithModifiers.xml:28
+msgid "State of the [kbd]Shift[/kbd] modifier."
+msgstr ""
+
+#: doc/classes/InputMap.xml:4
+msgid "Singleton that manages [InputEventAction]."
+msgstr ""
+
+#: doc/classes/InputMap.xml:7
+msgid ""
+"Manages all [InputEventAction] which can be created/modified from the "
+"project settings menu [b]Project > Project Settings > Input Map[/b] or in "
+"code with [method add_action] and [method action_add_event]. See [method "
+"Node._input]."
+msgstr ""
+
+#: doc/classes/InputMap.xml:10
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/inputs/inputevent."
+"html#inputmap"
+msgstr ""
+
+#: doc/classes/InputMap.xml:21
+msgid ""
+"Adds an [InputEvent] to an action. This [InputEvent] will trigger the action."
+msgstr ""
+
+#: doc/classes/InputMap.xml:32
+msgid "Removes an [InputEvent] from an action."
+msgstr ""
+
+#: doc/classes/InputMap.xml:41
+msgid "Removes all events from an action."
+msgstr ""
+
+#: doc/classes/InputMap.xml:50
+msgid "Returns an array of [InputEvent]s associated with a given action."
+msgstr ""
+
+#: doc/classes/InputMap.xml:61
+msgid ""
+"Returns [code]true[/code] if the action has the given [InputEvent] "
+"associated with it."
+msgstr ""
+
+#: doc/classes/InputMap.xml:72
+msgid "Sets a deadzone value for the action."
+msgstr ""
+
+#: doc/classes/InputMap.xml:83
+msgid ""
+"Adds an empty action to the [InputMap] with a configurable [code]deadzone[/"
+"code].\n"
+"An [InputEvent] can then be added to this action with [method "
+"action_add_event]."
+msgstr ""
+
+#: doc/classes/InputMap.xml:93
+msgid "Removes an action from the [InputMap]."
+msgstr ""
+
+#: doc/classes/InputMap.xml:104
+msgid ""
+"Returns [code]true[/code] if the given event is part of an existing action. "
+"This method ignores keyboard modifiers if the given [InputEvent] is not "
+"pressed (for proper release detection). See [method action_has_event] if you "
+"don't want this behavior."
+msgstr ""
+
+#: doc/classes/InputMap.xml:111
+msgid "Returns an array of all actions in the [InputMap]."
+msgstr ""
+
+#: doc/classes/InputMap.xml:120
+msgid ""
+"Returns [code]true[/code] if the [InputMap] has a registered action with the "
+"given name."
+msgstr ""
+
+#: doc/classes/InputMap.xml:127
+msgid ""
+"Clears all [InputEventAction] in the [InputMap] and load it anew from "
+"[ProjectSettings]."
+msgstr ""
+
+#: doc/classes/InstancePlaceholder.xml:4
+msgid "Placeholder for the root [Node] of a [PackedScene]."
+msgstr ""
+
+#: doc/classes/InstancePlaceholder.xml:7
+msgid ""
+"Turning on the option [b]Load As Placeholder[/b] for an instanced scene in "
+"the editor causes it to be replaced by an [InstancePlaceholder] when running "
+"the game. This makes it possible to delay actually loading the scene until "
+"calling [method create_instance]. This is useful to avoid loading large "
+"scenes all at once by loading parts of it selectively.\n"
+"The [InstancePlaceholder] does not have a transform. This causes any child "
+"nodes to be positioned relatively to the [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."
+msgstr ""
+
+#: doc/classes/InstancePlaceholder.xml:27
+msgid ""
+"Gets the path to the [PackedScene] resource file that is loaded by default "
+"when calling [method create_instance]."
+msgstr ""
+
+#: doc/classes/int.xml:4
+msgid "Integer built-in type."
+msgstr ""
+
+#: doc/classes/int.xml:7
+msgid ""
+"Signed 64-bit integer type.\n"
+"It can take values in the interval [code][-2^63, 2^63 - 1][/code], i.e. "
+"[code][-9223372036854775808, 9223372036854775807][/code]. Exceeding those "
+"bounds will wrap around.\n"
+"[int] is a [Variant] type, and will thus be used when assigning an integer "
+"value to a [Variant]. It can also be enforced with the [code]: int[/code] "
+"type hint.\n"
+"[codeblock]\n"
+"var my_variant = 0 # int, value 0.\n"
+"my_variant += 4.2 # float, value 4.2.\n"
+"var my_int: int = 1 # int, value 1.\n"
+"my_int = 4.2 # int, value 4, the right value is implicitly cast to int.\n"
+"my_int = int(\"6.7\") # int, value 6, the String is explicitly cast with "
+"int.\n"
+"\n"
+"var max_int = 9223372036854775807\n"
+"print(max_int) # 9223372036854775807, OK.\n"
+"max_int += 1\n"
+"print(max_int) # -9223372036854775808, we overflowed and wrapped around.\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/int.xml:32
+msgid ""
+"Cast a [bool] value to an integer value, [code]int(true)[/code] will be "
+"equals to 1 and [code]int(false)[/code] will be equals to 0."
+msgstr ""
+
+#: doc/classes/int.xml:41
+msgid ""
+"Cast a float value to an integer value, this method simply removes the "
+"number fractions, so for example [code]int(2.7)[/code] will be equals to 2, "
+"[code]int(.1)[/code] will be equals to 0 and [code]int(-2.7)[/code] will be "
+"equals to -2."
+msgstr ""
+
+#: doc/classes/int.xml:50
+msgid ""
+"Cast a [String] value to an integer value, this method is an integer parser "
+"from a string, so calling this method with an invalid integer string will "
+"return 0, a valid string will be something like [code]'1.7'[/code]. This "
+"method will ignore all non-number characters, so calling [code]int('1e3')[/"
+"code] will return 13."
+msgstr ""
+
+#: doc/classes/IP.xml:4
+msgid "Internet protocol (IP) support functions such as DNS resolution."
+msgstr ""
+
+#: doc/classes/IP.xml:7
+msgid ""
+"IP contains support functions for the Internet Protocol (IP). TCP/IP support "
+"is in different classes (see [StreamPeerTCP] and [TCP_Server]). IP provides "
+"DNS hostname resolution support, both blocking and threaded."
+msgstr ""
+
+#: doc/classes/IP.xml:18
+msgid ""
+"Removes all of a [code]hostname[/code]'s cached references. If no "
+"[code]hostname[/code] is given, all cached IP addresses are removed."
+msgstr ""
+
+#: doc/classes/IP.xml:27
+msgid ""
+"Removes a given item [code]id[/code] from the queue. This should be used to "
+"free a queue after it has completed to enable more queries to happen."
+msgstr ""
+
+#: doc/classes/IP.xml:34
+msgid "Returns all of the user's current IPv4 and IPv6 addresses as an array."
+msgstr ""
+
+#: doc/classes/IP.xml:41
+msgid ""
+"Returns all network adapters as an array.\n"
+"Each adapter is a dictionary of the form:\n"
+"[codeblock]\n"
+"{\n"
+" \"index\": \"1\", # Interface index.\n"
+" \"name\": \"eth0\", # Interface name.\n"
+" \"friendly\": \"Ethernet One\", # A friendly name (might be empty).\n"
+" \"addresses\": [\"192.168.1.101\"], # An array of IP addresses "
+"associated to this interface.\n"
+"}\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/IP.xml:59
+msgid ""
+"Returns a queued hostname's IP address, given its queue [code]id[/code]. "
+"Returns an empty string on error or if resolution hasn't happened yet (see "
+"[method get_resolve_item_status])."
+msgstr ""
+
+#: doc/classes/IP.xml:68
+msgid ""
+"Returns a queued hostname's status as a [enum ResolverStatus] constant, "
+"given its queue [code]id[/code]."
+msgstr ""
+
+#: doc/classes/IP.xml:79
+msgid ""
+"Returns a given hostname's IPv4 or IPv6 address when resolved (blocking-type "
+"method). The address type returned depends on the [enum Type] constant given "
+"as [code]ip_type[/code]."
+msgstr ""
+
+#: doc/classes/IP.xml:90
+msgid ""
+"Creates a queue item to resolve a hostname to an IPv4 or IPv6 address "
+"depending on the [enum Type] constant given as [code]ip_type[/code]. Returns "
+"the queue ID if successful, or [constant RESOLVER_INVALID_ID] on error."
+msgstr ""
+
+#: doc/classes/IP.xml:96
+msgid "DNS hostname resolver status: No status."
+msgstr ""
+
+#: doc/classes/IP.xml:99
+msgid "DNS hostname resolver status: Waiting."
+msgstr ""
+
+#: doc/classes/IP.xml:102
+msgid "DNS hostname resolver status: Done."
+msgstr ""
+
+#: doc/classes/IP.xml:105
+msgid "DNS hostname resolver status: Error."
+msgstr ""
+
+#: doc/classes/IP.xml:108
+msgid ""
+"Maximum number of concurrent DNS resolver queries allowed, [constant "
+"RESOLVER_INVALID_ID] is returned if exceeded."
+msgstr ""
+
+#: doc/classes/IP.xml:111
+msgid ""
+"Invalid ID constant. Returned if [constant RESOLVER_MAX_QUERIES] is exceeded."
+msgstr ""
+
+#: doc/classes/IP.xml:114
+msgid "Address type: None."
+msgstr ""
+
+#: doc/classes/IP.xml:117
+msgid "Address type: Internet protocol version 4 (IPv4)."
+msgstr ""
+
+#: doc/classes/IP.xml:120
+msgid "Address type: Internet protocol version 6 (IPv6)."
+msgstr ""
+
+#: doc/classes/IP.xml:123
+msgid "Address type: Any."
+msgstr ""
+
+#: doc/classes/ItemList.xml:4
+msgid ""
+"Control that provides a list of selectable items (and/or icons) in a single "
+"column, or optionally in multiple columns."
+msgstr ""
+
+#: doc/classes/ItemList.xml:7
+msgid ""
+"This control provides a selectable list of items that may be in a single (or "
+"multiple columns) with option of text, icons, or both text and icon. "
+"Tooltips are supported and may be different for every item in the list.\n"
+"Selectable items in the list may be selected or deselected and multiple "
+"selection may be enabled. Selection with right mouse button may also be "
+"enabled to allow use of popup context menus. Items may also be \"activated\" "
+"by double-clicking them or by pressing [kbd]Enter[/kbd].\n"
+"Item text only supports single-line strings, newline characters (e.g. "
+"[code]\\n[/code]) in the string won't produce a newline. Text wrapping is "
+"enabled in [constant ICON_MODE_TOP] mode, but column's width is adjusted to "
+"fully fit its content by default. You need to set [member "
+"fixed_column_width] greater than zero to wrap the text."
+msgstr ""
+
+#: doc/classes/ItemList.xml:22
+msgid "Adds an item to the item list with no text, only an icon."
+msgstr ""
+
+#: doc/classes/ItemList.xml:35
+msgid ""
+"Adds an item to the item list with specified text. Specify an [code]icon[/"
+"code], or use [code]null[/code] as the [code]icon[/code] for a list item "
+"with no icon.\n"
+"If selectable is [code]true[/code], the list item will be selectable."
+msgstr ""
+
+#: doc/classes/ItemList.xml:43
+msgid "Removes all items from the list."
+msgstr ""
+
+#: doc/classes/ItemList.xml:50
+msgid ""
+"Ensure current selection is visible, adjusting the scroll position as "
+"necessary."
+msgstr ""
+
+#: doc/classes/ItemList.xml:61
+msgid ""
+"Returns the item index at the given [code]position[/code].\n"
+"When there is no item at that point, -1 will be returned if [code]exact[/"
+"code] is [code]true[/code], and the closest item index will be returned "
+"otherwise."
+msgstr ""
+
+#: doc/classes/ItemList.xml:69
+msgid "Returns the number of items currently in the list."
+msgstr ""
+
+#: doc/classes/ItemList.xml:78
+msgid ""
+"Returns the custom background color of the item specified by [code]idx[/"
+"code] index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:87
+msgid ""
+"Returns the custom foreground color of the item specified by [code]idx[/"
+"code] index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:96
+msgid "Returns the icon associated with the specified index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:105
+msgid "Returns a [Color] modulating item's icon at the specified index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:114
+msgid ""
+"Returns the region of item's icon used. The whole icon will be used if the "
+"region has no area."
+msgstr ""
+
+#: doc/classes/ItemList.xml:123
+msgid "Returns the metadata value of the specified index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:132
+msgid "Returns the text associated with the specified index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:141
+msgid "Returns the tooltip hint associated with the specified index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:148
+msgid "Returns an array with the indexes of the selected items."
+msgstr ""
+
+#: doc/classes/ItemList.xml:155
+msgid "Returns the [Object] ID associated with the list."
+msgstr ""
+
+#: doc/classes/ItemList.xml:162
+msgid "Returns [code]true[/code] if one or more items are selected."
+msgstr ""
+
+#: doc/classes/ItemList.xml:171
+msgid ""
+"Returns [code]true[/code] if the item at the specified index is disabled."
+msgstr ""
+
+#: doc/classes/ItemList.xml:180
+msgid ""
+"Returns [code]true[/code] if the item icon will be drawn transposed, i.e. "
+"the X and Y axes are swapped."
+msgstr ""
+
+#: doc/classes/ItemList.xml:189
+msgid ""
+"Returns [code]true[/code] if the item at the specified index is selectable."
+msgstr ""
+
+#: doc/classes/ItemList.xml:198
+msgid ""
+"Returns [code]true[/code] if the tooltip is enabled for specified item index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:207
+msgid ""
+"Returns [code]true[/code] if the item at the specified index is currently "
+"selected."
+msgstr ""
+
+#: doc/classes/ItemList.xml:218
+msgid "Moves item from index [code]from_idx[/code] to [code]to_idx[/code]."
+msgstr ""
+
+#: doc/classes/ItemList.xml:227
+msgid "Removes the item specified by [code]idx[/code] index from the list."
+msgstr ""
+
+#: doc/classes/ItemList.xml:238
+msgid ""
+"Select the item at the specified index.\n"
+"[b]Note:[/b] This method does not trigger the item selection signal."
+msgstr ""
+
+#: doc/classes/ItemList.xml:250
+msgid ""
+"Sets the background color of the item specified by [code]idx[/code] index to "
+"the specified [Color].\n"
+"[codeblock]\n"
+"var some_string = \"Some text\"\n"
+"some_string.set_item_custom_bg_color(0,Color(1, 0, 0, 1) # This will set the "
+"background color of the first item of the control to red.\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/ItemList.xml:265
+msgid ""
+"Sets the foreground color of the item specified by [code]idx[/code] index to "
+"the specified [Color].\n"
+"[codeblock]\n"
+"var some_string = \"Some text\"\n"
+"some_string.set_item_custom_fg_color(0,Color(1, 0, 0, 1) # This will set the "
+"foreground color of the first item of the control to red.\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/ItemList.xml:280
+msgid ""
+"Disables (or enables) the item at the specified index.\n"
+"Disabled items cannot be selected and do not trigger activation signals "
+"(when double-clicking or pressing [kbd]Enter[/kbd])."
+msgstr ""
+
+#: doc/classes/ItemList.xml:292
+msgid ""
+"Sets (or replaces) the icon's [Texture2D] associated with the specified "
+"index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:303
+msgid ""
+"Sets a modulating [Color] of the item associated with the specified index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:314
+msgid ""
+"Sets the region of item's icon used. The whole icon will be used if the "
+"region has no area."
+msgstr ""
+
+#: doc/classes/ItemList.xml:325
+msgid "Sets whether the item icon will be drawn transposed."
+msgstr ""
+
+#: doc/classes/ItemList.xml:336
+msgid ""
+"Sets a value (of any type) to be stored with the item associated with the "
+"specified index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:347
+msgid ""
+"Allows or disallows selection of the item associated with the specified "
+"index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:358
+msgid "Sets text of the item associated with the specified index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:369
+msgid "Sets the tooltip hint for the item associated with the specified index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:380
+msgid "Sets whether the tooltip hint is enabled for specified item index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:387
+msgid "Sorts items in the list by their text."
+msgstr ""
+
+#: doc/classes/ItemList.xml:396
+msgid "Ensures the item associated with the specified index is not selected."
+msgstr ""
+
+#: doc/classes/ItemList.xml:403
+msgid "Ensures there are no items selected."
+msgstr ""
+
+#: doc/classes/ItemList.xml:409
+msgid ""
+"If [code]true[/code], the currently selected item can be selected again."
+msgstr ""
+
+#: doc/classes/ItemList.xml:412
+msgid "If [code]true[/code], right mouse button click can select items."
+msgstr ""
+
+#: doc/classes/ItemList.xml:415
+msgid ""
+"If [code]true[/code], the control will automatically resize the height to "
+"fit its content."
+msgstr ""
+
+#: doc/classes/ItemList.xml:418
+msgid ""
+"The width all columns will be adjusted to.\n"
+"A value of zero disables the adjustment, each item will have a width equal "
+"to the width of its content and the columns will have an uneven width."
+msgstr ""
+
+#: doc/classes/ItemList.xml:422
+msgid ""
+"The size all icons will be adjusted to.\n"
+"If either X or Y component is not greater than zero, icon size won't be "
+"affected."
+msgstr ""
+
+#: doc/classes/ItemList.xml:427
+msgid ""
+"The icon position, whether above or to the left of the text. See the [enum "
+"IconMode] constants."
+msgstr ""
+
+#: doc/classes/ItemList.xml:430
+msgid ""
+"The scale of icon applied after [member fixed_icon_size] and transposing "
+"takes effect."
+msgstr ""
+
+#: doc/classes/ItemList.xml:433
+msgid ""
+"Maximum columns the list will have.\n"
+"If greater than zero, the content will be split among the specified "
+"columns.\n"
+"A value of zero means unlimited columns, i.e. all items will be put in the "
+"same row."
+msgstr ""
+
+#: doc/classes/ItemList.xml:438
+msgid ""
+"Maximum lines of text allowed in each item. Space will be reserved even when "
+"there is not enough lines of text to display.\n"
+"[b]Note:[/b] This property takes effect only when [member icon_mode] is "
+"[constant ICON_MODE_TOP]. To make the text wrap, [member fixed_column_width] "
+"should be greater than zero."
+msgstr ""
+
+#: doc/classes/ItemList.xml:443
+msgid ""
+"Whether all columns will have the same width.\n"
+"If [code]true[/code], the width is equal to the largest column width of all "
+"columns."
+msgstr ""
+
+#: doc/classes/ItemList.xml:447
+msgid ""
+"Allows single or multiple item selection. See the [enum SelectMode] "
+"constants."
+msgstr ""
+
+#: doc/classes/ItemList.xml:455
+msgid ""
+"Triggered when specified list item is activated via double-clicking or by "
+"pressing [kbd]Enter[/kbd]."
+msgstr ""
+
+#: doc/classes/ItemList.xml:464
+msgid ""
+"Triggered when specified list item has been selected via right mouse "
+"clicking.\n"
+"The click position is also provided to allow appropriate popup of context "
+"menus at the correct location.\n"
+"[member allow_rmb_select] must be enabled."
+msgstr ""
+
+#: doc/classes/ItemList.xml:473
+msgid ""
+"Triggered when specified item has been selected.\n"
+"[member allow_reselect] must be enabled to reselect an item."
+msgstr ""
+
+#: doc/classes/ItemList.xml:483
+msgid ""
+"Triggered when a multiple selection is altered on a list allowing multiple "
+"selection."
+msgstr ""
+
+#: doc/classes/ItemList.xml:488
+msgid ""
+"Triggered when a left mouse click is issued within the rect of the list but "
+"on empty space."
+msgstr ""
+
+#: doc/classes/ItemList.xml:495
+msgid ""
+"Triggered when a right mouse click is issued within the rect of the list but "
+"on empty space.\n"
+"[member allow_rmb_select] must be enabled."
+msgstr ""
+
+#: doc/classes/ItemList.xml:502
+msgid "Icon is drawn above the text."
+msgstr ""
+
+#: doc/classes/ItemList.xml:505
+msgid "Icon is drawn to the left of the text."
+msgstr ""
+
+#: doc/classes/ItemList.xml:508
+msgid "Only allow selecting a single item."
+msgstr ""
+
+#: doc/classes/ItemList.xml:511
+msgid ""
+"Allows selecting multiple items by holding [kbd]Ctrl[/kbd] or [kbd]Shift[/"
+"kbd]."
+msgstr ""
+
+#: doc/classes/ItemList.xml:516
+msgid ""
+"Default [StyleBox] for the [ItemList], i.e. used when the control is not "
+"being focused."
+msgstr ""
+
+#: doc/classes/ItemList.xml:519
+msgid "[StyleBox] used when the [ItemList] is being focused."
+msgstr ""
+
+#: doc/classes/ItemList.xml:522
+msgid "[StyleBox] used for the cursor, when the [ItemList] is being focused."
+msgstr ""
+
+#: doc/classes/ItemList.xml:525
+msgid ""
+"[StyleBox] used for the cursor, when the [ItemList] is not being focused."
+msgstr ""
+
+#: doc/classes/ItemList.xml:528 doc/classes/Tree.xml:439
+msgid "[Font] of the item's text."
+msgstr ""
+
+#: doc/classes/ItemList.xml:531 doc/classes/Tree.xml:442
+msgid "Default text [Color] of the item."
+msgstr ""
+
+#: doc/classes/ItemList.xml:534 doc/classes/Tree.xml:445
+msgid "Text [Color] used when the item is selected."
+msgstr ""
+
+#: doc/classes/ItemList.xml:537
+msgid ""
+"[Color] of the guideline. The guideline is a line drawn between each row of "
+"items."
+msgstr ""
+
+#: doc/classes/ItemList.xml:540
+msgid "The horizontal spacing between items."
+msgstr ""
+
+#: doc/classes/ItemList.xml:543
+msgid "The spacing between item's icon and text."
+msgstr ""
+
+#: doc/classes/ItemList.xml:546
+msgid "The vertical spacing between each line of text."
+msgstr ""
+
+#: doc/classes/ItemList.xml:549
+msgid ""
+"[StyleBox] for the selected items, used when the [ItemList] is not being "
+"focused."
+msgstr ""
+
+#: doc/classes/ItemList.xml:552
+msgid ""
+"[StyleBox] for the selected items, used when the [ItemList] is being focused."
+msgstr ""
+
+#: doc/classes/ItemList.xml:555
+msgid "The vertical spacing between items."
+msgstr ""
+
+#: doc/classes/JavaScript.xml:4
+msgid ""
+"Singleton that connects the engine with the browser's JavaScript context in "
+"HTML5 export."
+msgstr ""
+
+#: doc/classes/JavaScript.xml:7
+msgid ""
+"The JavaScript singleton is implemented only in the HTML5 export. It's used "
+"to access the browser's JavaScript context. This allows interaction with "
+"embedding pages or calling third-party JavaScript APIs."
+msgstr ""
+
+#: doc/classes/JavaScript.xml:10
+msgid ""
+"https://docs.godotengine.org/en/latest/getting_started/workflow/export/"
+"exporting_for_web.html#calling-javascript-from-script"
+msgstr ""
+
+#: doc/classes/JavaScript.xml:21
+msgid ""
+"Execute the string [code]code[/code] as JavaScript code within the browser "
+"window. This is a call to the actual global JavaScript function [code]eval()"
+"[/code].\n"
+"If [code]use_global_execution_context[/code] is [code]true[/code], the code "
+"will be evaluated in the global execution context. Otherwise, it is "
+"evaluated in the execution context of a function within the engine's runtime "
+"environment."
+msgstr ""
+
+#: doc/classes/Joint2D.xml:4
+msgid "Base node for all joint constraints in 2D physics."
+msgstr ""
+
+#: doc/classes/Joint2D.xml:7
+msgid ""
+"Base node for all joint constraints in 2D physics. Joints take 2 bodies and "
+"apply a custom constraint."
+msgstr ""
+
+#: doc/classes/Joint2D.xml:15
+msgid ""
+"When [member node_a] and [member node_b] move in different directions the "
+"[code]bias[/code] controls how fast the joint pulls them back to their "
+"original position. The lower the [code]bias[/code] the more the two bodies "
+"can pull on the joint."
+msgstr ""
+
+#: doc/classes/Joint2D.xml:18
+msgid ""
+"If [code]true[/code], [member node_a] and [member node_b] can not collide."
+msgstr ""
+
+#: doc/classes/Joint2D.xml:21
+msgid "The first body attached to the joint. Must derive from [PhysicsBody2D]."
+msgstr ""
+
+#: doc/classes/Joint2D.xml:24
+msgid ""
+"The second body attached to the joint. Must derive from [PhysicsBody2D]."
+msgstr ""
+
+#: doc/classes/Joint3D.xml:4
+msgid "Base class for all 3D joints."
+msgstr ""
+
+#: doc/classes/Joint3D.xml:7
+msgid ""
+"Joints are used to bind together two physics bodies. They have a solver "
+"priority and can define if the bodies of the two attached nodes should be "
+"able to collide with each other."
+msgstr ""
+
+#: doc/classes/Joint3D.xml:15
+msgid ""
+"If [code]true[/code], the two bodies of the nodes are not able to collide "
+"with each other."
+msgstr ""
+
+#: doc/classes/Joint3D.xml:18
+msgid "The node attached to the first side (A) of the joint."
+msgstr ""
+
+#: doc/classes/Joint3D.xml:21
+msgid "The node attached to the second side (B) of the joint."
+msgstr ""
+
+#: doc/classes/Joint3D.xml:24
+msgid ""
+"The priority used to define which solver is executed first for multiple "
+"joints. The lower the value, the higher the priority."
+msgstr ""
+
+#: doc/classes/JSON.xml:4
+msgid "Helper class for parsing JSON data."
+msgstr ""
+
+#: doc/classes/JSON.xml:7
+msgid ""
+"Helper class for parsing JSON data. For usage example and other important "
+"hints, see [JSONParseResult]."
+msgstr ""
+
+#: doc/classes/JSON.xml:18
+msgid ""
+"Parses a JSON-encoded string and returns a [JSONParseResult] containing the "
+"result."
+msgstr ""
+
+#: doc/classes/JSON.xml:31
+msgid ""
+"Converts a [Variant] var to JSON text and returns the result. Useful for "
+"serializing data to store or send over the network.\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, converting a Variant to JSON text "
+"will convert all numerical values to [float] types."
+msgstr ""
+
+#: doc/classes/JSONParseResult.xml:4
+msgid "Data class wrapper for decoded JSON."
+msgstr ""
+
+#: doc/classes/JSONParseResult.xml:7
+msgid ""
+"Returned by [method JSON.parse], [JSONParseResult] contains the decoded JSON "
+"or error information if the JSON source wasn't successfully parsed. You can "
+"check if the JSON source was successfully parsed with [code]if json_result."
+"error == OK[/code]."
+msgstr ""
+
+#: doc/classes/JSONParseResult.xml:15
+msgid ""
+"The error type if the JSON source was not successfully parsed. See the [enum "
+"Error] constants."
+msgstr ""
+
+#: doc/classes/JSONParseResult.xml:18
+msgid ""
+"The line number where the error occurred if the JSON source was not "
+"successfully parsed."
+msgstr ""
+
+#: doc/classes/JSONParseResult.xml:21
+msgid ""
+"The error message if the JSON source was not successfully parsed. See the "
+"[enum Error] constants."
+msgstr ""
+
+#: doc/classes/JSONParseResult.xml:24
+msgid ""
+"A [Variant] containing the parsed JSON. Use [method @GDScript.typeof] or the "
+"[code]is[/code] keyword to check if it is what you expect. For example, if "
+"the JSON source starts with curly braces ([code]{}[/code]), a [Dictionary] "
+"will be returned. If the JSON source starts with brackets ([code][][/code]), "
+"an [Array] will be returned.\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, parsing a JSON text will convert "
+"all numerical values to [float] types.\n"
+"[b]Note:[/b] JSON objects do not preserve key order like Godot dictionaries, "
+"thus, you should not rely on keys being in a certain order if a dictionary "
+"is constructed from JSON. In contrast, JSON arrays retain the order of their "
+"elements:\n"
+"[codeblock]\n"
+"var p = JSON.parse('[\"hello\", \"world\", \"!\"]')\n"
+"if typeof(p.result) == TYPE_ARRAY:\n"
+" print(p.result[0]) # Prints \"hello\"\n"
+"else:\n"
+" push_error(\"Unexpected results.\")\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/KinematicBody2D.xml:4
+msgid "Kinematic body 2D node."
+msgstr ""
+
+#: doc/classes/KinematicBody2D.xml:7
+msgid ""
+"Kinematic bodies are special types of bodies that are meant to be user-"
+"controlled. They are not affected by physics at all; to other types of "
+"bodies, such as a character or a rigid body, these are the same as a static "
+"body. However, they have two main uses:\n"
+"[b]Simulated motion:[/b] When these bodies are moved manually, either from "
+"code or from an [AnimationPlayer] (with [member AnimationPlayer."
+"playback_process_mode] set to \"physics\"), the physics will automatically "
+"compute an estimate of their linear and angular velocity. This makes them "
+"very useful for moving platforms or other AnimationPlayer-controlled objects "
+"(like a door, a bridge that opens, etc).\n"
+"[b]Kinematic characters:[/b] KinematicBody2D also has an API for moving "
+"objects (the [method move_and_collide] and [method move_and_slide] methods) "
+"while performing collision tests. This makes them really useful to implement "
+"characters that collide against a world, but that don't require advanced "
+"physics."
+msgstr ""
+
+#: doc/classes/KinematicBody2D.xml:12 doc/classes/KinematicBody3D.xml:12
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/physics/"
+"kinematic_character_2d.html"
+msgstr ""
+
+#: doc/classes/KinematicBody2D.xml:13
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/physics/"
+"using_kinematic_body_2d.html"
+msgstr ""
+
+#: doc/classes/KinematicBody2D.xml:20 doc/classes/KinematicBody3D.xml:28
+msgid ""
+"Returns the surface normal of the floor at the last collision point. Only "
+"valid after calling [method move_and_slide] or [method "
+"move_and_slide_with_snap] and when [method is_on_floor] returns [code]true[/"
+"code]."
+msgstr ""
+
+#: doc/classes/KinematicBody2D.xml:27 doc/classes/KinematicBody3D.xml:35
+msgid ""
+"Returns the linear velocity of the floor at the last collision point. Only "
+"valid after calling [method move_and_slide] or [method "
+"move_and_slide_with_snap] and when [method is_on_floor] returns [code]true[/"
+"code]."
+msgstr ""
+
+#: doc/classes/KinematicBody2D.xml:36
+msgid ""
+"Returns a [KinematicCollision2D], which contains information about a "
+"collision that occurred during the last [method move_and_slide] call. Since "
+"the body can collide several times in a single call to [method "
+"move_and_slide], you must specify the index of the collision in the range 0 "
+"to ([method get_slide_count] - 1).\n"
+"[b]Example usage:[/b]\n"
+"[codeblock]\n"
+"for i in get_slide_count():\n"
+" var collision = get_slide_collision(i)\n"
+" print(\"Collided with: \", collision.collider.name)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/KinematicBody2D.xml:49 doc/classes/KinematicBody3D.xml:51
+msgid ""
+"Returns the number of times the body collided and changed direction during "
+"the last call to [method move_and_slide]."
+msgstr ""
+
+#: doc/classes/KinematicBody2D.xml:56 doc/classes/KinematicBody3D.xml:58
+msgid ""
+"Returns [code]true[/code] if the body is on the ceiling. Only updates when "
+"calling [method move_and_slide]."
+msgstr ""
+
+#: doc/classes/KinematicBody2D.xml:63 doc/classes/KinematicBody3D.xml:65
+msgid ""
+"Returns [code]true[/code] if the body is on the floor. Only updates when "
+"calling [method move_and_slide]."
+msgstr ""
+
+#: doc/classes/KinematicBody2D.xml:70 doc/classes/KinematicBody3D.xml:72
+msgid ""
+"Returns [code]true[/code] if the body is on a wall. Only updates when "
+"calling [method move_and_slide]."
+msgstr ""
+
+#: doc/classes/KinematicBody2D.xml:85
+msgid ""
+"Moves the body along the vector [code]rel_vec[/code]. The body will stop if "
+"it collides. Returns a [KinematicCollision2D], which contains information "
+"about the collision.\n"
+"If [code]test_only[/code] is [code]true[/code], the body does not move but "
+"the would-be collision information is given."
+msgstr ""
+
+#: doc/classes/KinematicBody2D.xml:105
+msgid ""
+"Moves the body along a vector. If the body collides with another, it will "
+"slide along the other body rather than stop immediately. If the other body "
+"is a [KinematicBody2D] or [RigidBody2D], it will also be affected by the "
+"motion of the other body. You can use this to make moving or rotating "
+"platforms, or to make nodes push other nodes.\n"
+"This method should be used in [method Node._physics_process] (or in a method "
+"called by [method Node._physics_process]), as it uses the physics step's "
+"[code]delta[/code] value automatically in calculations. Otherwise, the "
+"simulation will run at an incorrect speed.\n"
+"[code]linear_velocity[/code] is the velocity vector in pixels per second. "
+"Unlike in [method move_and_collide], you should [i]not[/i] multiply it by "
+"[code]delta[/code] — the physics engine handles applying the velocity.\n"
+"[code]up_direction[/code] is the up direction, used to determine what is a "
+"wall and what is a floor or a ceiling. If set to the default value of "
+"[code]Vector2(0, 0)[/code], everything is considered a wall. This is useful "
+"for topdown games.\n"
+"If [code]stop_on_slope[/code] is [code]true[/code], body will not slide on "
+"slopes when you include gravity in [code]linear_velocity[/code] and the body "
+"is standing still.\n"
+"If the body collides, it will change direction a maximum of "
+"[code]max_slides[/code] times before it stops.\n"
+"[code]floor_max_angle[/code] is the maximum angle (in radians) where a slope "
+"is still considered a floor (or a ceiling), rather than a wall. The default "
+"value equals 45 degrees.\n"
+"If [code]infinite_inertia[/code] is [code]true[/code], body will be able to "
+"push [RigidBody2D] nodes, but it won't also detect any collisions with them. "
+"If [code]false[/code], it will interact with [RigidBody2D] nodes like with "
+"[StaticBody2D].\n"
+"Returns the [code]linear_velocity[/code] vector, rotated and/or scaled if a "
+"slide collision occurred. To get detailed information about collisions that "
+"occurred, use [method get_slide_collision]."
+msgstr ""
+
+#: doc/classes/KinematicBody2D.xml:134
+msgid ""
+"Moves the body while keeping it attached to slopes. Similar to [method "
+"move_and_slide].\n"
+"As long as the [code]snap[/code] vector is in contact with the ground, the "
+"body will remain attached to the surface. This means you must disable snap "
+"in order to jump, for example. You can do this by setting [code]snap[/code] "
+"to [code](0, 0)[/code] or by using [method move_and_slide] instead."
+msgstr ""
+
+#: doc/classes/KinematicBody2D.xml:148
+msgid ""
+"Checks for collisions without moving the body. Virtually sets the node's "
+"position, scale and rotation to that of the given [Transform2D], then tries "
+"to move the body along the vector [code]rel_vec[/code]. Returns [code]true[/"
+"code] if a collision would occur."
+msgstr ""
+
+#: doc/classes/KinematicBody2D.xml:154 doc/classes/KinematicBody3D.xml:176
+msgid ""
+"If the body is at least this close to another body, this body will consider "
+"them to be colliding."
+msgstr ""
+
+#: doc/classes/KinematicBody2D.xml:157
+msgid ""
+"If [code]true[/code], the body's movement will be synchronized to the "
+"physics frame. This is useful when animating movement via [AnimationPlayer], "
+"for example on moving platforms. Do [b]not[/b] use together with [method "
+"move_and_slide] or [method move_and_collide] functions."
+msgstr ""
+
+#: doc/classes/KinematicBody3D.xml:4
+msgid "Kinematic body 3D node."
+msgstr ""
+
+#: doc/classes/KinematicBody3D.xml:7
+msgid ""
+"Kinematic bodies are special types of bodies that are meant to be user-"
+"controlled. They are not affected by physics at all; to other types of "
+"bodies, such as a character or a rigid body, these are the same as a static "
+"body. However, they have two main uses:\n"
+"[b]Simulated motion:[/b] When these bodies are moved manually, either from "
+"code or from an [AnimationPlayer] (with [member AnimationPlayer."
+"playback_process_mode] set to \"physics\"), the physics will automatically "
+"compute an estimate of their linear and angular velocity. This makes them "
+"very useful for moving platforms or other AnimationPlayer-controlled objects "
+"(like a door, a bridge that opens, etc).\n"
+"[b]Kinematic characters:[/b] KinematicBody3D also has an API for moving "
+"objects (the [method move_and_collide] and [method move_and_slide] methods) "
+"while performing collision tests. This makes them really useful to implement "
+"characters that collide against a world, but that don't require advanced "
+"physics."
+msgstr ""
+
+#: doc/classes/KinematicBody3D.xml:21
+msgid ""
+"Returns [code]true[/code] if the specified [code]axis[/code] is locked. See "
+"also [member axis_lock_motion_x], [member axis_lock_motion_y] and [member "
+"axis_lock_motion_z]."
+msgstr ""
+
+#: doc/classes/KinematicBody3D.xml:44
+msgid ""
+"Returns a [KinematicCollision3D], which contains information about a "
+"collision that occurred during the last [method move_and_slide] call. Since "
+"the body can collide several times in a single call to [method "
+"move_and_slide], you must specify the index of the collision in the range 0 "
+"to ([method get_slide_count] - 1)."
+msgstr ""
+
+#: doc/classes/KinematicBody3D.xml:87
+msgid ""
+"Moves the body along the vector [code]rel_vec[/code]. The body will stop if "
+"it collides. Returns a [KinematicCollision3D], which contains information "
+"about the collision.\n"
+"If [code]test_only[/code] is [code]true[/code], the body does not move but "
+"the would-be collision information is given."
+msgstr ""
+
+#: doc/classes/KinematicBody3D.xml:107
+msgid ""
+"Moves the body along a vector. If the body collides with another, it will "
+"slide along the other body rather than stop immediately. If the other body "
+"is a [KinematicBody3D] or [RigidBody3D], it will also be affected by the "
+"motion of the other body. You can use this to make moving or rotating "
+"platforms, or to make nodes push other nodes.\n"
+"This method should be used in [method Node._physics_process] (or in a method "
+"called by [method Node._physics_process]), as it uses the physics step's "
+"[code]delta[/code] value automatically in calculations. Otherwise, the "
+"simulation will run at an incorrect speed.\n"
+"[code]linear_velocity[/code] is the velocity vector (typically meters per "
+"second). Unlike in [method move_and_collide], you should [i]not[/i] multiply "
+"it by [code]delta[/code] — the physics engine handles applying the "
+"velocity.\n"
+"[code]up_direction[/code] is the up direction, used to determine what is a "
+"wall and what is a floor or a ceiling. If set to the default value of "
+"[code]Vector3(0, 0, 0)[/code], everything is considered a wall.\n"
+"If [code]stop_on_slope[/code] is [code]true[/code], body will not slide on "
+"slopes when you include gravity in [code]linear_velocity[/code] and the body "
+"is standing still.\n"
+"If the body collides, it will change direction a maximum of "
+"[code]max_slides[/code] times before it stops.\n"
+"[code]floor_max_angle[/code] is the maximum angle (in radians) where a slope "
+"is still considered a floor (or a ceiling), rather than a wall. The default "
+"value equals 45 degrees.\n"
+"If [code]infinite_inertia[/code] is [code]true[/code], body will be able to "
+"push [RigidBody3D] nodes, but it won't also detect any collisions with them. "
+"If [code]false[/code], it will interact with [RigidBody3D] nodes like with "
+"[StaticBody3D].\n"
+"Returns the [code]linear_velocity[/code] vector, rotated and/or scaled if a "
+"slide collision occurred. To get detailed information about collisions that "
+"occurred, use [method get_slide_collision]."
+msgstr ""
+
+#: doc/classes/KinematicBody3D.xml:136
+msgid ""
+"Moves the body while keeping it attached to slopes. Similar to [method "
+"move_and_slide].\n"
+"As long as the [code]snap[/code] vector is in contact with the ground, the "
+"body will remain attached to the surface. This means you must disable snap "
+"in order to jump, for example. You can do this by setting [code]snap[/code] "
+"to [code](0, 0, 0)[/code] or by using [method move_and_slide] instead."
+msgstr ""
+
+#: doc/classes/KinematicBody3D.xml:148
+msgid ""
+"Locks or unlocks the specified [code]axis[/code] depending on the value of "
+"[code]lock[/code]. See also [member axis_lock_motion_x], [member "
+"axis_lock_motion_y] and [member axis_lock_motion_z]."
+msgstr ""
+
+#: doc/classes/KinematicBody3D.xml:161
+msgid ""
+"Checks for collisions without moving the body. Virtually sets the node's "
+"position, scale and rotation to that of the given [Transform], then tries to "
+"move the body along the vector [code]rel_vec[/code]. Returns [code]true[/"
+"code] if a collision would occur."
+msgstr ""
+
+#: doc/classes/KinematicBody3D.xml:167
+msgid "Lock the body's X axis movement."
+msgstr ""
+
+#: doc/classes/KinematicBody3D.xml:170
+msgid "Lock the body's Y axis movement."
+msgstr ""
+
+#: doc/classes/KinematicBody3D.xml:173
+msgid "Lock the body's Z axis movement."
+msgstr ""
+
+#: doc/classes/KinematicCollision2D.xml:4
+msgid "Collision data for [KinematicBody2D] collisions."
+msgstr ""
+
+#: doc/classes/KinematicCollision2D.xml:7
+msgid ""
+"Contains collision data for [KinematicBody2D] collisions. When a "
+"[KinematicBody2D] is moved using [method KinematicBody2D.move_and_collide], "
+"it stops if it detects a collision with another body. If a collision is "
+"detected, a KinematicCollision2D object is returned.\n"
+"This object contains information about the collision, including the "
+"colliding object, the remaining motion, and the collision position. This "
+"information can be used to calculate a collision response."
+msgstr ""
+
+#: doc/classes/KinematicCollision2D.xml:16
+#: doc/classes/KinematicCollision3D.xml:16
+msgid "The colliding body."
+msgstr ""
+
+#: doc/classes/KinematicCollision2D.xml:19
+#: doc/classes/KinematicCollision3D.xml:19
+msgid ""
+"The colliding body's unique instance ID. See [method Object.get_instance_id]."
+msgstr ""
+
+#: doc/classes/KinematicCollision2D.xml:22
+#: doc/classes/KinematicCollision3D.xml:22
+msgid "The colliding body's metadata. See [Object]."
+msgstr ""
+
+#: doc/classes/KinematicCollision2D.xml:25
+#: doc/classes/KinematicCollision3D.xml:25
+msgid "The colliding body's shape."
+msgstr ""
+
+#: doc/classes/KinematicCollision2D.xml:28
+msgid "The colliding shape's index. See [CollisionObject2D]."
+msgstr ""
+
+#: doc/classes/KinematicCollision2D.xml:31
+#: doc/classes/KinematicCollision3D.xml:31
+msgid "The colliding object's velocity."
+msgstr ""
+
+#: doc/classes/KinematicCollision2D.xml:34
+#: doc/classes/KinematicCollision3D.xml:34
+msgid "The moving object's colliding shape."
+msgstr ""
+
+#: doc/classes/KinematicCollision2D.xml:37
+#: doc/classes/KinematicCollision3D.xml:37
+msgid "The colliding body's shape's normal at the point of collision."
+msgstr ""
+
+#: doc/classes/KinematicCollision2D.xml:40
+#: doc/classes/KinematicCollision3D.xml:40
+msgid "The point of collision, in global coordinates."
+msgstr ""
+
+#: doc/classes/KinematicCollision2D.xml:43
+#: doc/classes/KinematicCollision3D.xml:43
+msgid "The moving object's remaining movement vector."
+msgstr ""
+
+#: doc/classes/KinematicCollision2D.xml:46
+#: doc/classes/KinematicCollision3D.xml:46
+msgid "The distance the moving object traveled before collision."
+msgstr ""
+
+#: doc/classes/KinematicCollision3D.xml:4
+msgid "Collision data for [KinematicBody3D] collisions."
+msgstr ""
+
+#: doc/classes/KinematicCollision3D.xml:7
+msgid ""
+"Contains collision data for [KinematicBody3D] collisions. When a "
+"[KinematicBody3D] is moved using [method KinematicBody3D.move_and_collide], "
+"it stops if it detects a collision with another body. If a collision is "
+"detected, a KinematicCollision3D object is returned.\n"
+"This object contains information about the collision, including the "
+"colliding object, the remaining motion, and the collision position. This "
+"information can be used to calculate a collision response."
+msgstr ""
+
+#: doc/classes/KinematicCollision3D.xml:28
+msgid "The colliding shape's index. See [CollisionObject3D]."
+msgstr ""
+
+#: doc/classes/Label.xml:4
+msgid ""
+"Displays plain text in a line or wrapped inside a rectangle. For formatted "
+"text, use [RichTextLabel]."
+msgstr ""
+
+#: doc/classes/Label.xml:7
+msgid ""
+"Label displays plain text on the screen. It gives you control over the "
+"horizontal and vertical alignment, and can wrap the text inside the node's "
+"bounding rectangle. It doesn't support bold, italics or other formatting. "
+"For that, use [RichTextLabel] instead.\n"
+"[b]Note:[/b] Contrarily to most other [Control]s, Label's [member Control."
+"mouse_filter] defaults to [constant Control.MOUSE_FILTER_IGNORE] (i.e. it "
+"doesn't react to mouse input events). This implies that a label won't "
+"display any configured [member Control.hint_tooltip], unless you change its "
+"mouse filter."
+msgstr ""
+
+#: doc/classes/Label.xml:17
+msgid "Returns the amount of lines of text the Label has."
+msgstr ""
+
+#: doc/classes/Label.xml:24
+msgid "Returns the font size in pixels."
+msgstr ""
+
+#: doc/classes/Label.xml:31
+msgid ""
+"Returns the total number of printable characters in the text (excluding "
+"spaces and newlines)."
+msgstr ""
+
+#: doc/classes/Label.xml:38
+msgid ""
+"Returns the number of lines shown. Useful if the [Label]'s height cannot "
+"currently display all lines."
+msgstr ""
+
+#: doc/classes/Label.xml:44
+msgid ""
+"Controls the text's horizontal align. Supports left, center, right, and "
+"fill, or justify. Set it to one of the [enum Align] constants."
+msgstr ""
+
+#: doc/classes/Label.xml:47
+msgid ""
+"If [code]true[/code], wraps the text inside the node's bounding rectangle. "
+"If you resize the node, it will change its height automatically to show all "
+"the text."
+msgstr ""
+
+#: doc/classes/Label.xml:50
+msgid ""
+"If [code]true[/code], the Label only shows the text that fits inside its "
+"bounding rectangle. It also lets you scale the node down freely."
+msgstr ""
+
+#: doc/classes/Label.xml:53
+msgid ""
+"The node ignores the first [code]lines_skipped[/code] lines before it starts "
+"to display text."
+msgstr ""
+
+#: doc/classes/Label.xml:56
+msgid "Limits the lines of text the node shows on screen."
+msgstr ""
+
+#: doc/classes/Label.xml:60
+msgid ""
+"Limits the amount of visible characters. If you set [code]percent_visible[/"
+"code] to 0.5, only up to half of the text's characters will display on "
+"screen. Useful to animate the text in a dialog box."
+msgstr ""
+
+#: doc/classes/Label.xml:64
+msgid "The text to display on screen."
+msgstr ""
+
+#: doc/classes/Label.xml:67
+msgid "If [code]true[/code], all the text displays as UPPERCASE."
+msgstr ""
+
+#: doc/classes/Label.xml:70
+msgid ""
+"Controls the text's vertical align. Supports top, center, bottom, and fill. "
+"Set it to one of the [enum VAlign] constants."
+msgstr ""
+
+#: doc/classes/Label.xml:73
+msgid "Restricts the number of characters to display. Set to -1 to disable."
+msgstr ""
+
+#: doc/classes/Label.xml:78
+msgid "Align rows to the left (default)."
+msgstr ""
+
+#: doc/classes/Label.xml:81
+msgid "Align rows centered."
+msgstr ""
+
+#: doc/classes/Label.xml:84
+msgid "Align rows to the right."
+msgstr ""
+
+#: doc/classes/Label.xml:87
+msgid "Expand row whitespaces to fit the width."
+msgstr ""
+
+#: doc/classes/Label.xml:90
+msgid "Align the whole text to the top."
+msgstr ""
+
+#: doc/classes/Label.xml:93
+msgid "Align the whole text to the center."
+msgstr ""
+
+#: doc/classes/Label.xml:96
+msgid "Align the whole text to the bottom."
+msgstr ""
+
+#: doc/classes/Label.xml:99
+msgid "Align the whole text by spreading the rows."
+msgstr ""
+
+#: doc/classes/Label.xml:104
+msgid "[Font] used for the [Label]'s text."
+msgstr ""
+
+#: doc/classes/Label.xml:107
+msgid "Default text [Color] of the [Label]."
+msgstr ""
+
+#: doc/classes/Label.xml:110
+msgid "[Color] of the text's shadow effect."
+msgstr ""
+
+#: doc/classes/Label.xml:113
+msgid "The tint of [Font]'s outline. See [member DynamicFont.outline_color]."
+msgstr ""
+
+#: doc/classes/Label.xml:116
+msgid "Vertical space between lines in multiline [Label]."
+msgstr ""
+
+#: doc/classes/Label.xml:119
+msgid "Background [StyleBox] for the [Label]."
+msgstr ""
+
+#: doc/classes/Label.xml:122
+msgid ""
+"Boolean value. If set to 1 ([code]true[/code]), the shadow will be displayed "
+"around the whole text as an outline."
+msgstr ""
+
+#: doc/classes/Label.xml:125
+msgid "The horizontal offset of the text's shadow."
+msgstr ""
+
+#: doc/classes/Label.xml:128
+msgid "The vertical offset of the text's shadow."
+msgstr ""
+
+#: doc/classes/LargeTexture.xml:4
+msgid "A [Texture2D] capable of storing many smaller textures with offsets."
+msgstr ""
+
+#: doc/classes/LargeTexture.xml:7
+msgid ""
+"A [Texture2D] capable of storing many smaller textures with offsets.\n"
+"You can dynamically add pieces ([Texture2D]s) to this [LargeTexture] using "
+"different offsets."
+msgstr ""
+
+#: doc/classes/LargeTexture.xml:21
+msgid ""
+"Adds [code]texture[/code] to this [LargeTexture], starting on offset "
+"[code]ofs[/code]."
+msgstr ""
+
+#: doc/classes/LargeTexture.xml:28
+msgid "Clears the [LargeTexture]."
+msgstr ""
+
+#: doc/classes/LargeTexture.xml:35
+msgid "Returns the number of pieces currently in this [LargeTexture]."
+msgstr ""
+
+#: doc/classes/LargeTexture.xml:44
+msgid "Returns the offset of the piece with the index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/LargeTexture.xml:53
+msgid "Returns the [Texture2D] of the piece with the index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/LargeTexture.xml:64
+msgid ""
+"Sets the offset of the piece with the index [code]idx[/code] to [code]ofs[/"
+"code]."
+msgstr ""
+
+#: doc/classes/LargeTexture.xml:75
+msgid ""
+"Sets the [Texture2D] of the piece with index [code]idx[/code] to "
+"[code]texture[/code]."
+msgstr ""
+
+#: doc/classes/LargeTexture.xml:84
+msgid "Sets the size of this [LargeTexture]."
+msgstr ""
+
+#: doc/classes/Light2D.xml:4
+msgid "Casts light in a 2D environment."
+msgstr ""
+
+#: doc/classes/Light2D.xml:7
+msgid ""
+"Casts light in a 2D environment. Light is defined by a (usually grayscale) "
+"texture, a color, an energy value, a mode (see constants), and various other "
+"parameters (range and shadows-related).\n"
+"[b]Note:[/b] Light2D can also be used as a mask."
+msgstr ""
+
+#: doc/classes/Light2D.xml:11 doc/classes/LightOccluder2D.xml:10
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/2d/2d_lights_and_shadows."
+"html"
+msgstr ""
+
+#: doc/classes/Light2D.xml:17
+msgid "The Light2D's [Color]."
+msgstr ""
+
+#: doc/classes/Light2D.xml:20
+msgid "If [code]true[/code], Light2D will only appear when editing the scene."
+msgstr ""
+
+#: doc/classes/Light2D.xml:23
+msgid "If [code]true[/code], Light2D will emit light."
+msgstr ""
+
+#: doc/classes/Light2D.xml:26
+msgid ""
+"The Light2D's energy value. The larger the value, the stronger the light."
+msgstr ""
+
+#: doc/classes/Light2D.xml:29
+msgid "The Light2D's mode. See [enum Mode] constants for values."
+msgstr ""
+
+#: doc/classes/Light2D.xml:32
+msgid "The offset of the Light2D's [code]texture[/code]."
+msgstr ""
+
+#: doc/classes/Light2D.xml:35
+msgid "The height of the Light2D. Used with 2D normal mapping."
+msgstr ""
+
+#: doc/classes/Light2D.xml:38
+msgid ""
+"The layer mask. Only objects with a matching mask will be affected by the "
+"Light2D."
+msgstr ""
+
+#: doc/classes/Light2D.xml:41
+msgid "Maximum layer value of objects that are affected by the Light2D."
+msgstr ""
+
+#: doc/classes/Light2D.xml:44
+msgid "Minimum layer value of objects that are affected by the Light2D."
+msgstr ""
+
+#: doc/classes/Light2D.xml:47
+msgid ""
+"Maximum [code]z[/code] value of objects that are affected by the Light2D."
+msgstr ""
+
+#: doc/classes/Light2D.xml:50
+msgid ""
+"Minimum [code]z[/code] value of objects that are affected by the Light2D."
+msgstr ""
+
+#: doc/classes/Light2D.xml:53
+msgid "Shadow buffer size."
+msgstr ""
+
+#: doc/classes/Light2D.xml:56
+msgid "[Color] of shadows cast by the Light2D."
+msgstr ""
+
+#: doc/classes/Light2D.xml:59
+msgid "If [code]true[/code], the Light2D will cast shadows."
+msgstr ""
+
+#: doc/classes/Light2D.xml:62
+msgid "Shadow filter type. See [enum ShadowFilter] for possible values."
+msgstr ""
+
+#: doc/classes/Light2D.xml:65
+msgid "Smoothing value for shadows."
+msgstr ""
+
+#: doc/classes/Light2D.xml:68
+msgid ""
+"The shadow mask. Used with [LightOccluder2D] to cast shadows. Only occluders "
+"with a matching light mask will cast shadows."
+msgstr ""
+
+#: doc/classes/Light2D.xml:71
+msgid "[Texture2D] used for the Light2D's appearance."
+msgstr ""
+
+#: doc/classes/Light2D.xml:74
+msgid "The [code]texture[/code]'s scale factor."
+msgstr ""
+
+#: doc/classes/Light2D.xml:79
+msgid ""
+"Adds the value of pixels corresponding to the Light2D to the values of "
+"pixels under it. This is the common behavior of a light."
+msgstr ""
+
+#: doc/classes/Light2D.xml:82
+msgid ""
+"Subtracts the value of pixels corresponding to the Light2D to the values of "
+"pixels under it, resulting in inversed light effect."
+msgstr ""
+
+#: doc/classes/Light2D.xml:85
+msgid ""
+"Mix the value of pixels corresponding to the Light2D to the values of pixels "
+"under it by linear interpolation."
+msgstr ""
+
+#: doc/classes/Light2D.xml:88
+msgid ""
+"The light texture of the Light2D is used as a mask, hiding or revealing "
+"parts of the screen underneath depending on the value of each pixel of the "
+"light (mask) texture."
+msgstr ""
+
+#: doc/classes/Light2D.xml:91
+msgid "No filter applies to the shadow map. See [member shadow_filter]."
+msgstr ""
+
+#: doc/classes/Light2D.xml:94
+msgid ""
+"Percentage closer filtering (5 samples) applies to the shadow map. See "
+"[member shadow_filter]."
+msgstr ""
+
+#: doc/classes/Light2D.xml:97
+msgid ""
+"Percentage closer filtering (13 samples) applies to the shadow map. See "
+"[member shadow_filter]."
+msgstr ""
+
+#: doc/classes/Light3D.xml:4
+msgid "Provides a base class for different kinds of light nodes."
+msgstr ""
+
+#: doc/classes/Light3D.xml:7
+msgid ""
+"Light3D is the [i]abstract[/i] base class for light nodes. As it can't be "
+"instanced, it shouldn't be used directly. Other types of light nodes inherit "
+"from it. Light3D contains the common variables and parameters used for "
+"lighting."
+msgstr ""
+
+#: doc/classes/Light3D.xml:19
+msgid "Returns the value of the specified [enum Light3D.Param] parameter."
+msgstr ""
+
+#: doc/classes/Light3D.xml:30
+msgid "Sets the value of the specified [enum Light3D.Param] parameter."
+msgstr ""
+
+#: doc/classes/Light3D.xml:36
+msgid ""
+"If [code]true[/code], the light only appears in the editor and will not be "
+"visible at runtime."
+msgstr ""
+
+#: doc/classes/Light3D.xml:39
+msgid ""
+"The light's angular size in degrees. Only available for "
+"[DirectionalLight3D]s. For reference, the Sun from the Earth is "
+"approximately [code]0.5[/code]."
+msgstr ""
+
+#: doc/classes/Light3D.xml:42
+msgid "The light's bake mode. See [enum BakeMode]."
+msgstr ""
+
+#: doc/classes/Light3D.xml:45
+msgid ""
+"The light's color. An [i]overbright[/i] color can be used to achieve a "
+"result equivalent to increasing the light's [member light_energy]."
+msgstr ""
+
+#: doc/classes/Light3D.xml:48
+msgid "The light will affect objects in the selected layers."
+msgstr ""
+
+#: doc/classes/Light3D.xml:51
+msgid ""
+"The light's strength multiplier (this is not a physical unit). For "
+"[OmniLight3D] and [SpotLight3D], changing this value will only change the "
+"light color's intensity, not the light's radius."
+msgstr ""
+
+#: doc/classes/Light3D.xml:54
+msgid ""
+"Secondary multiplier used with indirect light (light bounces). Used with "
+"[GIProbe]."
+msgstr ""
+
+#: doc/classes/Light3D.xml:57
+msgid ""
+"If [code]true[/code], the light's effect is reversed, darkening areas and "
+"casting bright shadows."
+msgstr ""
+
+#: doc/classes/Light3D.xml:60
+msgid ""
+"[Texture2D] projected by light. [member shadow_enabled] must be on for the "
+"projector to work. Light projectors make the light appear as if it is "
+"shining through a colored but transparent object, almost like light shining "
+"through stained glass."
+msgstr ""
+
+#: doc/classes/Light3D.xml:63
+msgid ""
+"The size of the light in Godot units. Only available for [OmniLight3D]s and "
+"[SpotLight3D]s. Increasing this value will make the light fade out slower "
+"and shadows appear blurrier. This can be used to simulate area lights to an "
+"extent."
+msgstr ""
+
+#: doc/classes/Light3D.xml:66
+msgid ""
+"The intensity of the specular blob in objects affected by the light. At "
+"[code]0[/code], the light becomes a pure diffuse light. When not baking "
+"emission, this can be used to avoid unrealistic reflections when placing "
+"lights above an emissive surface."
+msgstr ""
+
+#: doc/classes/Light3D.xml:69
+msgid ""
+"Used to adjust shadow appearance. Too small a value results in self-"
+"shadowing (\"shadow acne\"), while too large a value causes shadows to "
+"separate from casters (\"peter-panning\"). Adjust as needed."
+msgstr ""
+
+#: doc/classes/Light3D.xml:72
+msgid ""
+"Blurs the edges of the shadow. Can be used to hide pixel artifacts in low-"
+"resolution shadow maps. A high value can impact performance, make shadows "
+"appear grainy and can cause other unwanted artifacts. Try to keep as near "
+"default as possible."
+msgstr ""
+
+#: doc/classes/Light3D.xml:75
+msgid "The color of shadows cast by this light."
+msgstr ""
+
+#: doc/classes/Light3D.xml:78
+msgid "If [code]true[/code], the light will cast shadows."
+msgstr ""
+
+#: doc/classes/Light3D.xml:81
+msgid ""
+"Offsets the lookup into the shadow map by the object's normal. This can be "
+"used to reduce self-shadowing artifacts without using [member shadow_bias]. "
+"In practice, this value should be tweaked along with [member shadow_bias] to "
+"reduce artifacts as much as possible."
+msgstr ""
+
+#: doc/classes/Light3D.xml:84
+msgid ""
+"If [code]true[/code], reverses the backface culling of the mesh. This can be "
+"useful when you have a flat mesh that has a light behind it. If you need to "
+"cast a shadow on both sides of the mesh, set the mesh to use double-sided "
+"shadows with [constant GeometryInstance3D."
+"SHADOW_CASTING_SETTING_DOUBLE_SIDED]."
+msgstr ""
+
+#: doc/classes/Light3D.xml:91
+msgid "Constant for accessing [member light_energy]."
+msgstr ""
+
+#: doc/classes/Light3D.xml:94
+msgid "Constant for accessing [member light_indirect_energy]."
+msgstr ""
+
+#: doc/classes/Light3D.xml:97
+msgid "Constant for accessing [member light_specular]."
+msgstr ""
+
+#: doc/classes/Light3D.xml:100
+msgid ""
+"Constant for accessing [member OmniLight3D.omni_range] or [member "
+"SpotLight3D.spot_range]."
+msgstr ""
+
+#: doc/classes/Light3D.xml:103
+msgid "Constant for accessing [member light_size]."
+msgstr ""
+
+#: doc/classes/Light3D.xml:106
+msgid ""
+"Constant for accessing [member OmniLight3D.omni_attenuation] or [member "
+"SpotLight3D.spot_attenuation]."
+msgstr ""
+
+#: doc/classes/Light3D.xml:109
+msgid "Constant for accessing [member SpotLight3D.spot_angle]."
+msgstr ""
+
+#: doc/classes/Light3D.xml:112
+msgid "Constant for accessing [member SpotLight3D.spot_angle_attenuation]."
+msgstr ""
+
+#: doc/classes/Light3D.xml:115
+msgid ""
+"Constant for accessing [member DirectionalLight3D."
+"directional_shadow_max_distance]."
+msgstr ""
+
+#: doc/classes/Light3D.xml:118
+msgid ""
+"Constant for accessing [member DirectionalLight3D."
+"directional_shadow_split_1]."
+msgstr ""
+
+#: doc/classes/Light3D.xml:121
+msgid ""
+"Constant for accessing [member DirectionalLight3D."
+"directional_shadow_split_2]."
+msgstr ""
+
+#: doc/classes/Light3D.xml:124
+msgid ""
+"Constant for accessing [member DirectionalLight3D."
+"directional_shadow_split_3]."
+msgstr ""
+
+#: doc/classes/Light3D.xml:127
+msgid ""
+"Constant for accessing [member DirectionalLight3D."
+"directional_shadow_fade_start]."
+msgstr ""
+
+#: doc/classes/Light3D.xml:130
+msgid "Constant for accessing [member shadow_normal_bias]."
+msgstr ""
+
+#: doc/classes/Light3D.xml:133
+msgid "Constant for accessing [member shadow_bias]."
+msgstr ""
+
+#: doc/classes/Light3D.xml:136
+msgid ""
+"Constant for accessing [member DirectionalLight3D."
+"directional_shadow_pancake_size]."
+msgstr ""
+
+#: doc/classes/Light3D.xml:139
+msgid "Constant for accessing [member shadow_blur]."
+msgstr ""
+
+#: doc/classes/Light3D.xml:142
+msgid "Constant for accessing [member shadow_transmittance_bias]."
+msgstr ""
+
+#: doc/classes/Light3D.xml:148
+msgid ""
+"Light is ignored when baking.\n"
+"[b]Note:[/b] Hiding a light does [i]not[/i] affect baking."
+msgstr ""
+
+#: doc/classes/LightOccluder2D.xml:4
+msgid "Occludes light cast by a Light2D, casting shadows."
+msgstr ""
+
+#: doc/classes/LightOccluder2D.xml:7
+msgid ""
+"Occludes light cast by a Light2D, casting shadows. The LightOccluder2D must "
+"be provided with an [OccluderPolygon2D] in order for the shadow to be "
+"computed."
+msgstr ""
+
+#: doc/classes/LightOccluder2D.xml:16
+msgid ""
+"The LightOccluder2D's light mask. The LightOccluder2D will cast shadows only "
+"from Light2D(s) that have the same light mask(s)."
+msgstr ""
+
+#: doc/classes/LightOccluder2D.xml:19
+msgid "The [OccluderPolygon2D] used to compute the shadow."
+msgstr ""
+
+#: doc/classes/Line2D.xml:4
+msgid "A 2D line."
+msgstr ""
+
+#: doc/classes/Line2D.xml:7
+msgid "A line through several points in 2D space."
+msgstr ""
+
+#: doc/classes/Line2D.xml:20
+msgid ""
+"Adds a point at the [code]position[/code]. Appends the point at the end of "
+"the line.\n"
+"If [code]at_position[/code] is given, the point is inserted before the point "
+"number [code]at_position[/code], moving that point (and every point after) "
+"after the inserted point. If [code]at_position[/code] is not given, or is an "
+"illegal value ([code]at_position < 0[/code] or [code]at_position >= [method "
+"get_point_count][/code]), the point will be appended at the end of the point "
+"list."
+msgstr ""
+
+#: doc/classes/Line2D.xml:28
+msgid "Removes all points from the line."
+msgstr ""
+
+#: doc/classes/Line2D.xml:35
+msgid "Returns the Line2D's amount of points."
+msgstr ""
+
+#: doc/classes/Line2D.xml:44
+msgid "Returns point [code]i[/code]'s position."
+msgstr ""
+
+#: doc/classes/Line2D.xml:53
+msgid "Removes the point at index [code]i[/code] from the line."
+msgstr ""
+
+#: doc/classes/Line2D.xml:64
+msgid ""
+"Overwrites the position in point [code]i[/code] with the supplied "
+"[code]position[/code]."
+msgstr ""
+
+#: doc/classes/Line2D.xml:70
+msgid "If [code]true[/code], the line's border will be anti-aliased."
+msgstr ""
+
+#: doc/classes/Line2D.xml:73
+msgid ""
+"Controls the style of the line's first point. Use [enum LineCapMode] "
+"constants."
+msgstr ""
+
+#: doc/classes/Line2D.xml:76
+msgid "The line's color. Will not be used if a gradient is set."
+msgstr ""
+
+#: doc/classes/Line2D.xml:79
+msgid ""
+"Controls the style of the line's last point. Use [enum LineCapMode] "
+"constants."
+msgstr ""
+
+#: doc/classes/Line2D.xml:82
+msgid ""
+"The gradient is drawn through the whole line from start to finish. The "
+"default color will not be used if a gradient is set."
+msgstr ""
+
+#: doc/classes/Line2D.xml:85
+msgid "The style for the points between the start and the end."
+msgstr ""
+
+#: doc/classes/Line2D.xml:88
+msgid ""
+"The points that form the lines. The line is drawn between every point set in "
+"this array."
+msgstr ""
+
+#: doc/classes/Line2D.xml:91
+msgid ""
+"The smoothness of the rounded joints and caps. This is only used if a cap or "
+"joint is set as round."
+msgstr ""
+
+#: doc/classes/Line2D.xml:94
+msgid ""
+"The direction difference in radians between vector points. This value is "
+"only used if [code]joint mode[/code] is set to [constant LINE_JOINT_SHARP]."
+msgstr ""
+
+#: doc/classes/Line2D.xml:97
+msgid ""
+"The texture used for the line's texture. Uses [code]texture_mode[/code] for "
+"drawing style."
+msgstr ""
+
+#: doc/classes/Line2D.xml:100
+msgid ""
+"The style to render the [code]texture[/code] on the line. Use [enum "
+"LineTextureMode] constants."
+msgstr ""
+
+#: doc/classes/Line2D.xml:103
+msgid "The line's width."
+msgstr ""
+
+#: doc/classes/Line2D.xml:106
+msgid ""
+"The line's width varies with the curve. The original width is simply "
+"multiply by the value of the Curve."
+msgstr ""
+
+#: doc/classes/Line2D.xml:111
+msgid ""
+"The line's joints will be pointy. If [code]sharp_limit[/code] is greater "
+"than the rotation of a joint, it becomes a bevel joint instead."
+msgstr ""
+
+#: doc/classes/Line2D.xml:114
+msgid "The line's joints will be bevelled/chamfered."
+msgstr ""
+
+#: doc/classes/Line2D.xml:117
+msgid "The line's joints will be rounded."
+msgstr ""
+
+#: doc/classes/Line2D.xml:120
+msgid "Don't draw a line cap."
+msgstr ""
+
+#: doc/classes/Line2D.xml:123
+msgid "Draws the line cap as a box."
+msgstr ""
+
+#: doc/classes/Line2D.xml:126
+msgid "Draws the line cap as a circle."
+msgstr ""
+
+#: doc/classes/Line2D.xml:129
+msgid ""
+"Takes the left pixels of the texture and renders it over the whole line."
+msgstr ""
+
+#: doc/classes/Line2D.xml:132
+msgid ""
+"Tiles the texture over the line. The texture must be imported with "
+"[b]Repeat[/b] enabled for it to work properly."
+msgstr ""
+
+#: doc/classes/Line2D.xml:135
+msgid ""
+"Stretches the texture across the line. Import the texture with [b]Repeat[/b] "
+"disabled for best results."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:4
+msgid "Control that provides single-line string editing."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:7
+msgid ""
+"LineEdit provides a single-line string editor, used for text fields.\n"
+"It features many built-in shortcuts which will always be available "
+"([kbd]Ctrl[/kbd] here maps to [kbd]Cmd[/kbd] on macOS):\n"
+"- [kbd]Ctrl + C[/kbd]: Copy\n"
+"- [kbd]Ctrl + X[/kbd]: Cut\n"
+"- [kbd]Ctrl + V[/kbd] or [kbd]Ctrl + Y[/kbd]: Paste/\"yank\"\n"
+"- [kbd]Ctrl + Z[/kbd]: Undo\n"
+"- [kbd]Ctrl + Shift + Z[/kbd]: Redo\n"
+"- [kbd]Ctrl + U[/kbd]: Delete text from the cursor position to the beginning "
+"of the line\n"
+"- [kbd]Ctrl + K[/kbd]: Delete text from the cursor position to the end of "
+"the line\n"
+"- [kbd]Ctrl + A[/kbd]: Select all text\n"
+"- [kbd]Up Arrow[/kbd]/[kbd]Down Arrow[/kbd]: Move the cursor to the "
+"beginning/end of the line\n"
+"On macOS, some extra keyboard shortcuts are available:\n"
+"- [kbd]Ctrl + F[/kbd]: Same as [kbd]Right Arrow[/kbd], move the cursor one "
+"character right\n"
+"- [kbd]Ctrl + B[/kbd]: Same as [kbd]Left Arrow[/kbd], move the cursor one "
+"character left\n"
+"- [kbd]Ctrl + P[/kbd]: Same as [kbd]Up Arrow[/kbd], move the cursor to the "
+"previous line\n"
+"- [kbd]Ctrl + N[/kbd]: Same as [kbd]Down Arrow[/kbd], move the cursor to the "
+"next line\n"
+"- [kbd]Ctrl + D[/kbd]: Same as [kbd]Delete[/kbd], delete the character on "
+"the right side of cursor\n"
+"- [kbd]Ctrl + H[/kbd]: Same as [kbd]Backspace[/kbd], delete the character on "
+"the left side of the cursor\n"
+"- [kbd]Ctrl + A[/kbd]: Same as [kbd]Home[/kbd], move the cursor to the "
+"beginning of the line\n"
+"- [kbd]Ctrl + E[/kbd]: Same as [kbd]End[/kbd], move the cursor to the end of "
+"the line\n"
+"- [kbd]Cmd + Left Arrow[/kbd]: Same as [kbd]Home[/kbd], move the cursor to "
+"the beginning of the line\n"
+"- [kbd]Cmd + Right Arrow[/kbd]: Same as [kbd]End[/kbd], move the cursor to "
+"the end of the line"
+msgstr ""
+
+#: doc/classes/LineEdit.xml:39
+msgid ""
+"Adds [code]text[/code] after the cursor. If the resulting value is longer "
+"than [member max_length], nothing happens."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:46
+msgid "Erases the [LineEdit]'s [member text]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:53
+msgid ""
+"Deletes one character at the cursor's current position (equivalent to "
+"pressing [kbd]Delete[/kbd])."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:64
+msgid ""
+"Deletes a section of the [member text] going from position "
+"[code]from_column[/code] to [code]to_column[/code]. Both parameters should "
+"be within the text's length."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:71
+msgid "Clears the current selection."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:78
+msgid ""
+"Returns the [PopupMenu] of this [LineEdit]. By default, this menu is "
+"displayed when right-clicking on the [LineEdit]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:87
+msgid "Executes a given action as defined in the [enum MenuItems] enum."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:98
+msgid ""
+"Selects characters inside [LineEdit] between [code]from[/code] and [code]to[/"
+"code]. By default, [code]from[/code] is at the beginning and [code]to[/code] "
+"at the end.\n"
+"[codeblock]\n"
+"text = \"Welcome\"\n"
+"select() # Will select \"Welcome\".\n"
+"select(4) # Will select \"ome\".\n"
+"select(2, 5) # Will select \"lco\".\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/LineEdit.xml:111
+msgid "Selects the whole [String]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:117
+msgid "Text alignment as defined in the [enum Align] enum."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:120 doc/classes/TextEdit.xml:358
+msgid "If [code]true[/code], the caret (visual cursor) blinks."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:123 doc/classes/TextEdit.xml:361
+msgid "Duration (in seconds) of a caret's blinking cycle."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:128
+msgid ""
+"The cursor's position inside the [LineEdit]. When set, the text may scroll "
+"to accommodate it."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:131
+msgid ""
+"If [code]true[/code], the [LineEdit] will show a clear button if [code]text[/"
+"code] is not empty, which can be used to clear the text quickly."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:134
+msgid "If [code]true[/code], the context menu will appear when right-clicked."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:137
+msgid ""
+"If [code]false[/code], existing text cannot be modified and new text cannot "
+"be added."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:140
+msgid ""
+"If [code]true[/code], the [LineEdit] width will increase to stay longer than "
+"the [member text]. It will [b]not[/b] compress if the [member text] is "
+"shortened."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:144
+msgid ""
+"Maximum amount of characters that can be entered inside the [LineEdit]. If "
+"[code]0[/code], there is no limit."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:148
+msgid ""
+"Opacity of the [member placeholder_text]. From [code]0[/code] to [code]1[/"
+"code]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:151
+msgid ""
+"Text shown when the [LineEdit] is empty. It is [b]not[/b] the [LineEdit]'s "
+"default value (see [member text])."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:154
+msgid ""
+"Sets the icon that will appear in the right end of the [LineEdit] if there's "
+"no [member text], or always, if [member clear_button_enabled] is set to "
+"[code]false[/code]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:157
+msgid ""
+"If [code]true[/code], every character is replaced with the secret character "
+"(see [member secret_character])."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:160
+msgid ""
+"The character to use to mask secret input (defaults to \"*\"). Only a single "
+"character can be used as the secret character."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:163
+msgid ""
+"If [code]false[/code], it's impossible to select the text using mouse nor "
+"keyboard."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:166
+msgid "If [code]false[/code], using shortcuts will be disabled."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:169
+msgid ""
+"String value of the [LineEdit].\n"
+"[b]Note:[/b] Changing text using this property won't emit the [signal "
+"text_changed] signal."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:173 doc/classes/TextEdit.xml:434
+msgid ""
+"If [code]true[/code], the native virtual keyboard is shown when focused on "
+"platforms that support it."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:179
+msgid ""
+"Emitted when trying to append text that would overflow the [member "
+"max_length]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:186 doc/classes/TextEdit.xml:490
+msgid "Emitted when the text changes."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:193
+msgid "Emitted when the user presses [constant KEY_ENTER] on the [LineEdit]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:199
+msgid "Aligns the text on the left-hand side of the [LineEdit]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:202
+msgid "Centers the text in the middle of the [LineEdit]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:205
+msgid "Aligns the text on the right-hand side of the [LineEdit]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:208
+msgid "Stretches whitespaces to fit the [LineEdit]'s width."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:211 doc/classes/TextEdit.xml:505
+msgid "Cuts (copies and clears) the selected text."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:214 doc/classes/TextEdit.xml:508
+msgid "Copies the selected text."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:217
+msgid ""
+"Pastes the clipboard text over the selected text (or at the cursor's "
+"position).\n"
+"Non-printable escape characters are automatically stripped from the OS "
+"clipboard via [method String.strip_escapes]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:221
+msgid "Erases the whole [LineEdit] text."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:224
+msgid "Selects the whole [LineEdit] text."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:227 doc/classes/TextEdit.xml:520
+msgid "Undoes the previous action."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:230
+msgid "Reverse the last undo action."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:233 doc/classes/TextEdit.xml:526
+msgid "Represents the size of the [enum MenuItems] enum."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:238
+msgid "Texture for the clear button. See [member clear_button_enabled]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:241
+msgid "Color used as default tint for the clear button."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:244
+msgid "Color used for the clear button when it's pressed."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:247
+msgid "Color of the [LineEdit]'s visual cursor (caret)."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:250
+msgid "Background used when [LineEdit] has GUI focus."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:253
+msgid "Font used for the text."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:256
+msgid "Default font color."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:259
+msgid "Font color for selected text (inside the selection rectangle)."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:262
+msgid "Font color when editing is disabled."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:265
+msgid ""
+"Minimum horizontal space for the text (not counting the clear button and "
+"content margins). This value is measured in count of space characters (i.e. "
+"this amount of space characters can be displayed without scrolling)."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:268
+msgid "Default background for the [LineEdit]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:271
+msgid ""
+"Background used when [LineEdit] is in read-only mode ([member editable] is "
+"set to [code]false[/code])."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:274
+msgid "Color of the selection rectangle."
+msgstr ""
+
+#: doc/classes/LineShape2D.xml:4
+msgid "Line shape for 2D collisions."
+msgstr ""
+
+#: doc/classes/LineShape2D.xml:7
+msgid ""
+"Line shape for 2D collisions. It works like a 2D plane and will not allow "
+"any physics body to go to the negative side. Not recommended for rigid "
+"bodies, and usually not recommended for static bodies either because it "
+"forces checks against it on every frame."
+msgstr ""
+
+#: doc/classes/LineShape2D.xml:15
+msgid "The line's distance from the origin."
+msgstr ""
+
+#: doc/classes/LineShape2D.xml:18
+msgid "The line's normal."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:4
+msgid "Simple button used to represent a link to some resource."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:7
+msgid ""
+"This kind of button is primarily used when the interaction with the button "
+"causes a context change (like linking to a web page)."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:21
+msgid ""
+"Determines when to show the underline. See [enum UnderlineMode] for options."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:26
+msgid "The LinkButton will always show an underline at the bottom of its text."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:29
+msgid ""
+"The LinkButton will show an underline at the bottom of its text when the "
+"mouse cursor is over it."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:32
+msgid "The LinkButton will never show an underline at the bottom of its text."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:37
+msgid ""
+"[StyleBox] used when the [LinkButton] is focused. It is displayed over the "
+"current [StyleBox], so using [StyleBoxEmpty] will just disable the focus "
+"visual effect."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:40
+msgid "[Font] of the [LinkButton]'s text."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:43
+msgid "Default text [Color] of the [LinkButton]."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:46
+msgid "Text [Color] used when the [LinkButton] is being hovered."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:49
+msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:52
+msgid "The vertical space between the baseline of text and the underline."
+msgstr ""
+
+#: doc/classes/Listener3D.xml:4
+msgid "Overrides the location sounds are heard from."
+msgstr ""
+
+#: doc/classes/Listener3D.xml:7
+msgid ""
+"Once added to the scene tree and enabled using [method make_current], this "
+"node will override the location sounds are heard from. This can be used to "
+"listen from a location different from the [Camera3D].\n"
+"[b]Note:[/b] There is no 2D equivalent for this node yet."
+msgstr ""
+
+#: doc/classes/Listener3D.xml:17
+msgid "Disables the listener to use the current camera's listener instead."
+msgstr ""
+
+#: doc/classes/Listener3D.xml:24
+msgid "Returns the listener's global orthonormalized [Transform]."
+msgstr ""
+
+#: doc/classes/Listener3D.xml:31
+msgid ""
+"Returns [code]true[/code] if the listener was made current using [method "
+"make_current], [code]false[/code] otherwise.\n"
+"[b]Note:[/b] There may be more than one Listener3D marked as \"current\" in "
+"the scene tree, but only the one that was made current last will be used."
+msgstr ""
+
+#: doc/classes/Listener3D.xml:39
+msgid "Enables the listener. This will override the current camera's listener."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:4
+msgid "Abstract base class for the game's main loop."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:7
+msgid ""
+"[MainLoop] is the abstract base class for a Godot project's game loop. It is "
+"inherited by [SceneTree], which is the default game loop implementation used "
+"in Godot projects, though it is also possible to write and use one's own "
+"[MainLoop] subclass instead of the scene tree.\n"
+"Upon the application start, a [MainLoop] implementation must be provided to "
+"the OS; otherwise, the application will exit. This happens automatically "
+"(and a [SceneTree] is created) unless a main [Script] is provided from the "
+"command line (with e.g. [code]godot -s my_loop.gd[/code], which should then "
+"be a [MainLoop] implementation.\n"
+"Here is an example script implementing a simple [MainLoop]:\n"
+"[b]FIXME:[/b] No longer valid after DisplayServer split and Input "
+"refactoring.\n"
+"[codeblock]\n"
+"extends MainLoop\n"
+"\n"
+"var time_elapsed = 0\n"
+"var keys_typed = []\n"
+"var quit = false\n"
+"\n"
+"func _initialize():\n"
+" print(\"Initialized:\")\n"
+" print(\" Starting time: %s\" % str(time_elapsed))\n"
+"\n"
+"func _idle(delta):\n"
+" time_elapsed += delta\n"
+" # Return true to end the main loop.\n"
+" return quit\n"
+"\n"
+"func _input_event(event):\n"
+" # Record keys.\n"
+" if event is InputEventKey and event.pressed and !event.echo:\n"
+" keys_typed.append(OS.get_keycode_string(event.keycode))\n"
+" # Quit on Escape press.\n"
+" if event.keycode == KEY_ESCAPE:\n"
+" quit = true\n"
+" # Quit on any mouse click.\n"
+" if event is InputEventMouseButton:\n"
+" quit = true\n"
+"\n"
+"func _finalize():\n"
+" print(\"Finalized:\")\n"
+" print(\" End time: %s\" % str(time_elapsed))\n"
+" print(\" Keys typed: %s\" % var2str(keys_typed))\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/MainLoop.xml:51
+msgid "Called before the program exits."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:60
+msgid ""
+"Called each idle frame with the time since the last idle frame as argument "
+"(in seconds). Equivalent to [method Node._process].\n"
+"If implemented, the method must return a boolean value. [code]true[/code] "
+"ends the main loop, while [code]false[/code] lets it proceed to the next "
+"frame."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:68
+msgid "Called once during initialization."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:77
+msgid ""
+"Called each physics frame with the time since the last physics frame as "
+"argument (in seconds). Equivalent to [method Node._physics_process].\n"
+"If implemented, the method must return a boolean value. [code]true[/code] "
+"ends the main loop, while [code]false[/code] lets it proceed to the next "
+"frame."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:85
+msgid ""
+"Should not be called manually, override [method _finalize] instead. Will be "
+"removed in Godot 4.0."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:94
+msgid ""
+"Should not be called manually, override [method _idle] instead. Will be "
+"removed in Godot 4.0."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:101
+msgid ""
+"Should not be called manually, override [method _initialize] instead. Will "
+"be removed in Godot 4.0."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:110
+msgid ""
+"Should not be called manually, override [method _iteration] instead. Will be "
+"removed in Godot 4.0."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:121
+msgid "Emitted when a user responds to a permission request."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:127 doc/classes/Node.xml:946
+msgid ""
+"Notification received from the OS when the application is exceeding its "
+"allocated memory.\n"
+"Specific to the iOS platform."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:131 doc/classes/Node.xml:950
+msgid ""
+"Notification received when translations may have changed. Can be triggered "
+"by the user changing the locale. Can be used to respond to language changes, "
+"for example to change the UI strings on the fly. Useful when working with "
+"the built-in translation support, like [method Object.tr]."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:134 doc/classes/Node.xml:953
+msgid ""
+"Notification received from the OS when a request for \"About\" information "
+"is sent.\n"
+"Specific to the macOS platform."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:138 doc/classes/Node.xml:957
+msgid ""
+"Notification received from Godot's crash handler when the engine is about to "
+"crash.\n"
+"Implemented on desktop platforms if the crash handler is enabled."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:142 doc/classes/Node.xml:961
+msgid ""
+"Notification received from the OS when an update of the Input Method Engine "
+"occurs (e.g. change of IME cursor position or composition string).\n"
+"Specific to the macOS platform."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:146 doc/classes/Node.xml:965
+msgid ""
+"Notification received from the OS when the application is resumed.\n"
+"Specific to the Android platform."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:150 doc/classes/Node.xml:969
+msgid ""
+"Notification received from the OS when the application is paused.\n"
+"Specific to the Android platform."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:154 doc/classes/Node.xml:973
+msgid ""
+"Notification received from the OS when the application is focused, i.e. when "
+"changing the focus from the OS desktop or a thirdparty application to any "
+"open window of the Godot instance.\n"
+"Implemented on desktop platforms."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:158 doc/classes/Node.xml:977
+msgid ""
+"Notification received from the OS when the application is defocused, i.e. "
+"when changing the focus from any open window of the Godot instance to the OS "
+"desktop or a thirdparty application.\n"
+"Implemented on desktop platforms."
+msgstr ""
+
+#: doc/classes/MarginContainer.xml:4
+msgid "Simple margin container."
+msgstr ""
+
+#: doc/classes/MarginContainer.xml:7
+msgid ""
+"Adds a top, left, bottom, and right margin to all [Control] nodes that are "
+"direct children of the container. To control the [MarginContainer]'s margin, "
+"use the [code]margin_*[/code] theme properties listed below.\n"
+"[b]Note:[/b] Be careful, [Control] margin values are different than the "
+"constant margin values. If you want to change the custom margin values of "
+"the [MarginContainer] by code, you should use the following examples:\n"
+"[codeblock]\n"
+"var margin_value = 100\n"
+"set(\"custom_constants/margin_top\", margin_value)\n"
+"set(\"custom_constants/margin_left\", margin_value)\n"
+"set(\"custom_constants/margin_bottom\", margin_value)\n"
+"set(\"custom_constants/margin_right\", margin_value)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/MarginContainer.xml:25
+msgid ""
+"All direct children of [MarginContainer] will have a bottom margin of "
+"[code]margin_bottom[/code] pixels."
+msgstr ""
+
+#: doc/classes/MarginContainer.xml:28
+msgid ""
+"All direct children of [MarginContainer] will have a left margin of "
+"[code]margin_left[/code] pixels."
+msgstr ""
+
+#: doc/classes/MarginContainer.xml:31
+msgid ""
+"All direct children of [MarginContainer] will have a right margin of "
+"[code]margin_right[/code] pixels."
+msgstr ""
+
+#: doc/classes/MarginContainer.xml:34
+msgid ""
+"All direct children of [MarginContainer] will have a top margin of "
+"[code]margin_top[/code] pixels."
+msgstr ""
+
+#: doc/classes/Marshalls.xml:4
+msgid "Data transformation (marshalling) and encoding helpers."
+msgstr ""
+
+#: doc/classes/Marshalls.xml:7
+msgid "Provides data transformation and encoding utility functions."
+msgstr ""
+
+#: doc/classes/Marshalls.xml:18
+msgid ""
+"Returns a decoded [PackedByteArray] corresponding to the Base64-encoded "
+"string [code]base64_str[/code]."
+msgstr ""
+
+#: doc/classes/Marshalls.xml:27
+msgid ""
+"Returns a decoded string corresponding to the Base64-encoded string "
+"[code]base64_str[/code]."
+msgstr ""
+
+#: doc/classes/Marshalls.xml:38
+msgid ""
+"Returns a decoded [Variant] corresponding to the Base64-encoded string "
+"[code]base64_str[/code]. If [code]allow_objects[/code] is [code]true[/code], "
+"decoding objects is allowed.\n"
+"[b]Warning:[/b] 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."
+msgstr ""
+
+#: doc/classes/Marshalls.xml:48
+msgid "Returns a Base64-encoded string of a given [PackedByteArray]."
+msgstr ""
+
+#: doc/classes/Marshalls.xml:57
+msgid ""
+"Returns a Base64-encoded string of the UTF-8 string [code]utf8_str[/code]."
+msgstr ""
+
+#: doc/classes/Marshalls.xml:68
+msgid ""
+"Returns a Base64-encoded string of the [Variant] [code]variant[/code]. If "
+"[code]full_objects[/code] is [code]true[/code], encoding objects is allowed "
+"(and can potentially include code)."
+msgstr ""
+
+#: doc/classes/Material.xml:4
+msgid "Abstract base [Resource] for coloring and shading geometry."
+msgstr ""
+
+#: doc/classes/Material.xml:7
+msgid ""
+"Material is a base [Resource] used for coloring and shading geometry. All "
+"materials inherit from it and almost all [VisualInstance3D] derived nodes "
+"carry a Material. A few flags and parameters are shared between all material "
+"types and are configured here."
+msgstr ""
+
+#: doc/classes/Material.xml:15
+msgid ""
+"Sets the [Material] to be used for the next pass. This renders the object "
+"again using a different material.\n"
+"[b]Note:[/b] only applies to [StandardMaterial3D]s and [ShaderMaterial]s "
+"with type \"Spatial\"."
+msgstr ""
+
+#: doc/classes/Material.xml:19
+msgid ""
+"Sets the render priority for transparent objects in 3D scenes. Higher "
+"priority objects will be sorted in front of lower priority objects.\n"
+"[b]Note:[/b] this only applies to sorting of transparent objects. This will "
+"not impact how transparent objects are sorted relative to opaque objects. "
+"This is because opaque objects are not sorted, while transparent objects are "
+"sorted from back to front (subject to priority)."
+msgstr ""
+
+#: doc/classes/Material.xml:25
+msgid "Maximum value for the [member render_priority] parameter."
+msgstr ""
+
+#: doc/classes/Material.xml:28
+msgid "Minimum value for the [member render_priority] parameter."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:4
+msgid "Special button that brings up a [PopupMenu] when clicked."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:7
+msgid ""
+"Special button that brings up a [PopupMenu] when clicked.\n"
+"New items can be created inside this [PopupMenu] using [code]get_popup()."
+"add_item(\"My Item Name\")[/code]. You can also create them directly from "
+"the editor. To do so, select the [MenuButton] node, then in the toolbar at "
+"the top of the 2D editor, click [b]Items[/b] then click [b]Add[/b] in the "
+"popup. You will be able to give each items new properties."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:17 doc/classes/OptionButton.xml:106
+msgid "Returns the [PopupMenu] contained in this button."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:26
+msgid ""
+"If [code]true[/code], shortcuts are disabled and cannot be used to trigger "
+"the button."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:36
+msgid ""
+"If [code]true[/code], when the cursor hovers above another [MenuButton] "
+"within the same parent which also has [code]switch_on_hover[/code] enabled, "
+"it will close the current [MenuButton] and open the other one."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:43
+msgid "Emitted when the [PopupMenu] of this MenuButton is about to show."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:51
+msgid "[StyleBox] used when the [MenuButton] is disabled."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:54
+msgid ""
+"[StyleBox] used when the [MenuButton] is focused. It is displayed over the "
+"current [StyleBox], so using [StyleBoxEmpty] will just disable the focus "
+"visual effect."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:57
+msgid "[Font] of the [MenuButton]'s text."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:60
+msgid "Default text [Color] of the [MenuButton]."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:63
+msgid "Text [Color] used when the [MenuButton] is disabled."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:66
+msgid "Text [Color] used when the [MenuButton] is being hovered."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:69
+msgid "Text [Color] used when the [MenuButton] is being pressed."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:72
+msgid "[StyleBox] used when the [MenuButton] is being hovered."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:75
+msgid "The horizontal space between [MenuButton]'s icon and text."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:78
+msgid "Default [StyleBox] for the [MenuButton]."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:81
+msgid "[StyleBox] used when the [MenuButton] is being pressed."
+msgstr ""
+
+#: doc/classes/Mesh.xml:4
+msgid "A [Resource] that contains vertex array-based geometry."
+msgstr ""
+
+#: doc/classes/Mesh.xml:7
+msgid ""
+"Mesh is a type of [Resource] that contains vertex array-based geometry, "
+"divided in [i]surfaces[/i]. Each surface contains a completely separate "
+"array and a material used to draw it. Design wise, a mesh with multiple "
+"surfaces is preferred to a single surface, because objects created in 3D "
+"editing software commonly contain multiple materials."
+msgstr ""
+
+#: doc/classes/Mesh.xml:16
+msgid "Calculate a [ConvexPolygonShape3D] from the mesh."
+msgstr ""
+
+#: doc/classes/Mesh.xml:25
+msgid ""
+"Calculate an outline mesh at a defined offset (margin) from the original "
+"mesh.\n"
+"[b]Note:[/b] This method typically returns the vertices in reverse order (e."
+"g. clockwise to counterclockwise)."
+msgstr ""
+
+#: doc/classes/Mesh.xml:33
+msgid "Calculate a [ConcavePolygonShape3D] from the mesh."
+msgstr ""
+
+#: doc/classes/Mesh.xml:40
+msgid "Generate a [TriangleMesh] from the mesh."
+msgstr ""
+
+#: doc/classes/Mesh.xml:47
+msgid ""
+"Returns the smallest [AABB] enclosing this mesh. Not affected by "
+"[code]custom_aabb[/code].\n"
+"[b]Note:[/b] This is only implemented for [ArrayMesh] and [PrimitiveMesh]."
+msgstr ""
+
+#: doc/classes/Mesh.xml:55
+msgid ""
+"Returns all the vertices that make up the faces of the mesh. Each three "
+"vertices represent one triangle."
+msgstr ""
+
+#: doc/classes/Mesh.xml:62
+msgid "Returns the amount of surfaces that the [Mesh] holds."
+msgstr ""
+
+#: doc/classes/Mesh.xml:71
+msgid ""
+"Returns the arrays for the vertices, normals, uvs, etc. that make up the "
+"requested surface (see [method ArrayMesh.add_surface_from_arrays])."
+msgstr ""
+
+#: doc/classes/Mesh.xml:80
+msgid "Returns the blend shape arrays for the requested surface."
+msgstr ""
+
+#: doc/classes/Mesh.xml:89
+msgid ""
+"Returns a [Material] in a given surface. Surface is rendered using this "
+"material."
+msgstr ""
+
+#: doc/classes/Mesh.xml:100
+msgid ""
+"Sets a [Material] for a given surface. Surface will be rendered using this "
+"material."
+msgstr ""
+
+#: doc/classes/Mesh.xml:106
+msgid "Sets a hint to be used for lightmap resolution."
+msgstr ""
+
+#: doc/classes/Mesh.xml:111
+msgid "Render array as points (one vertex equals one point)."
+msgstr ""
+
+#: doc/classes/Mesh.xml:114
+msgid "Render array as lines (every two vertices a line is created)."
+msgstr ""
+
+#: doc/classes/Mesh.xml:117
+msgid "Render array as line strip."
+msgstr ""
+
+#: doc/classes/Mesh.xml:120
+msgid "Render array as triangles (every three vertices a triangle is created)."
+msgstr ""
+
+#: doc/classes/Mesh.xml:123
+msgid "Render array as triangle strips."
+msgstr ""
+
+#: doc/classes/Mesh.xml:126 doc/classes/RenderingServer.xml:3185
+msgid "Blend shapes are normalized."
+msgstr ""
+
+#: doc/classes/Mesh.xml:129 doc/classes/RenderingServer.xml:3188
+msgid "Blend shapes are relative to base weight."
+msgstr ""
+
+#: doc/classes/Mesh.xml:132
+msgid ""
+"Mesh array contains vertices. All meshes require a vertex array so this "
+"should always be present."
+msgstr ""
+
+#: doc/classes/Mesh.xml:135
+msgid "Mesh array contains normals."
+msgstr ""
+
+#: doc/classes/Mesh.xml:138
+msgid "Mesh array contains tangents."
+msgstr ""
+
+#: doc/classes/Mesh.xml:141
+msgid "Mesh array contains colors."
+msgstr ""
+
+#: doc/classes/Mesh.xml:144
+msgid "Mesh array contains UVs."
+msgstr ""
+
+#: doc/classes/Mesh.xml:147
+msgid "Mesh array contains second UV."
+msgstr ""
+
+#: doc/classes/Mesh.xml:150
+msgid "Mesh array contains bones."
+msgstr ""
+
+#: doc/classes/Mesh.xml:153
+msgid "Mesh array contains bone weights."
+msgstr ""
+
+#: doc/classes/Mesh.xml:156
+msgid "Mesh array uses indices."
+msgstr ""
+
+#: doc/classes/Mesh.xml:159 doc/classes/RenderingServer.xml:3141
+msgid "Flag used to mark a compressed (half float) normal array."
+msgstr ""
+
+#: doc/classes/Mesh.xml:162 doc/classes/RenderingServer.xml:3144
+msgid "Flag used to mark a compressed (half float) tangent array."
+msgstr ""
+
+#: doc/classes/Mesh.xml:165 doc/classes/RenderingServer.xml:3147
+msgid "Flag used to mark a compressed (half float) color array."
+msgstr ""
+
+#: doc/classes/Mesh.xml:168 doc/classes/RenderingServer.xml:3150
+msgid "Flag used to mark a compressed (half float) UV coordinates array."
+msgstr ""
+
+#: doc/classes/Mesh.xml:171 doc/classes/RenderingServer.xml:3153
+msgid ""
+"Flag used to mark a compressed (half float) UV coordinates array for the "
+"second UV coordinates."
+msgstr ""
+
+#: doc/classes/Mesh.xml:174 doc/classes/RenderingServer.xml:3156
+msgid "Flag used to mark a compressed index array."
+msgstr ""
+
+#: doc/classes/Mesh.xml:177 doc/classes/RenderingServer.xml:3162
+msgid "Flag used to mark that the array contains 2D vertices."
+msgstr ""
+
+#: doc/classes/Mesh.xml:180 doc/classes/RenderingServer.xml:3159
+msgid ""
+"Used to set flags [constant ARRAY_COMPRESS_NORMAL], [constant "
+"ARRAY_COMPRESS_TANGENT], [constant ARRAY_COMPRESS_COLOR], [constant "
+"ARRAY_COMPRESS_TEX_UV] and [constant ARRAY_COMPRESS_TEX_UV2] quickly."
+msgstr ""
+
+#: doc/classes/Mesh.xml:183
+msgid "Array of vertices."
+msgstr ""
+
+#: doc/classes/Mesh.xml:186
+msgid "Array of normals."
+msgstr ""
+
+#: doc/classes/Mesh.xml:189
+msgid "Array of tangents as an array of floats, 4 floats per tangent."
+msgstr ""
+
+#: doc/classes/Mesh.xml:192
+msgid "Array of colors."
+msgstr ""
+
+#: doc/classes/Mesh.xml:195
+msgid "Array of UV coordinates."
+msgstr ""
+
+#: doc/classes/Mesh.xml:198
+msgid "Array of second set of UV coordinates."
+msgstr ""
+
+#: doc/classes/Mesh.xml:201
+msgid "Array of bone data."
+msgstr ""
+
+#: doc/classes/Mesh.xml:204
+msgid "Array of weights."
+msgstr ""
+
+#: doc/classes/Mesh.xml:207
+msgid "Array of indices."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:4
+msgid "Helper tool to access and edit [Mesh] data."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:7
+msgid ""
+"MeshDataTool provides access to individual vertices in a [Mesh]. It allows "
+"users to read and edit vertex data of meshes. It also creates an array of "
+"faces and edges.\n"
+"To use MeshDataTool, load a mesh with [method create_from_surface]. When you "
+"are finished editing the data commit the data to a mesh with [method "
+"commit_to_surface].\n"
+"Below is an example of how MeshDataTool may be used.\n"
+"[codeblock]\n"
+"var mdt = MeshDataTool.new()\n"
+"mdt.create_from_surface(mesh, 0)\n"
+"for i in range(mdt.get_vertex_count()):\n"
+" var vertex = mdt.get_vertex(i)\n"
+" ...\n"
+" mdt.set_vertex(i, vertex)\n"
+"mesh.surface_remove(0)\n"
+"mdt.commit_to_surface(mesh)\n"
+"[/codeblock]\n"
+"See also [ArrayMesh], [ImmediateGeometry3D] and [SurfaceTool] for procedural "
+"geometry generation.\n"
+"[b]Note:[/b] Godot uses clockwise [url=https://learnopengl.com/Advanced-"
+"OpenGL/Face-culling]winding order[/url] for front faces of triangle "
+"primitive modes."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:30
+msgid "Clears all data currently in MeshDataTool."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:39
+msgid "Adds a new surface to specified [Mesh] with edited data."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:50
+msgid ""
+"Uses specified surface of given [Mesh] to populate data for MeshDataTool.\n"
+"Requires [Mesh] with primitive type [constant Mesh.PRIMITIVE_TRIANGLES]."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:58
+msgid "Returns the number of edges in this [Mesh]."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:67
+msgid "Returns array of faces that touch given edge."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:76
+msgid "Returns meta information assigned to given edge."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:87
+msgid ""
+"Returns index of specified vertex connected to given edge.\n"
+"Vertex argument can only be 0 or 1 because edges are comprised of two "
+"vertices."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:95
+msgid "Returns the number of faces in this [Mesh]."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:106
+msgid ""
+"Returns specified edge associated with given face.\n"
+"Edge argument must 2 or less because a face only has three edges."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:116
+msgid "Returns the metadata associated with the given face."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:125
+msgid "Calculates and returns the face normal of the given face."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:136
+msgid ""
+"Returns the specified vertex of the given face.\n"
+"Vertex argument must be 2 or less because faces contain three vertices."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:144
+msgid ""
+"Returns the [Mesh]'s format. Format is an integer made up of [Mesh] format "
+"flags combined together. For example, a mesh containing both vertices and "
+"normals would return a format of [code]3[/code] because [constant ArrayMesh."
+"ARRAY_FORMAT_VERTEX] is [code]1[/code] and [constant ArrayMesh."
+"ARRAY_FORMAT_NORMAL] is [code]2[/code].\n"
+"See [enum ArrayMesh.ArrayFormat] for a list of format flags."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:152
+msgid "Returns the material assigned to the [Mesh]."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:161
+msgid "Returns the vertex at given index."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:170
+msgid "Returns the bones of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:179
+msgid "Returns the color of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:186
+msgid "Returns the total number of vertices in [Mesh]."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:195
+msgid "Returns an array of edges that share the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:204
+msgid "Returns an array of faces that share the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:213
+msgid "Returns the metadata associated with the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:222
+msgid "Returns the normal of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:231
+msgid "Returns the tangent of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:240
+msgid "Returns the UV of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:249
+msgid "Returns the UV2 of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:258
+msgid "Returns bone weights of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:269
+msgid "Sets the metadata of the given edge."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:280
+msgid "Sets the metadata of the given face."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:289
+msgid "Sets the material to be used by newly-constructed [Mesh]."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:300
+msgid "Sets the position of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:311
+msgid "Sets the bones of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:322
+msgid "Sets the color of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:333
+msgid "Sets the metadata associated with the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:344
+msgid "Sets the normal of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:355
+msgid "Sets the tangent of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:366
+msgid "Sets the UV of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:377
+msgid "Sets the UV2 of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:388
+msgid "Sets the bone weights of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshInstance2D.xml:4
+msgid "Node used for displaying a [Mesh] in 2D."
+msgstr ""
+
+#: doc/classes/MeshInstance2D.xml:7
+msgid ""
+"Node used for displaying a [Mesh] in 2D. Can be constructed from an existing "
+"[Sprite2D] via a tool in the editor toolbar. Select \"Sprite2D\" then "
+"\"Convert to Mesh2D\", select settings in popup and press \"Create Mesh2D\"."
+msgstr ""
+
+#: doc/classes/MeshInstance2D.xml:10
+msgid "https://docs.godotengine.org/en/latest/tutorials/2d/2d_meshes.html"
+msgstr ""
+
+#: doc/classes/MeshInstance2D.xml:16
+msgid "The [Mesh] that will be drawn by the [MeshInstance2D]."
+msgstr ""
+
+#: doc/classes/MeshInstance2D.xml:19 doc/classes/MultiMeshInstance2D.xml:19
+msgid ""
+"The normal map that will be used if using the default [CanvasItemMaterial].\n"
+"[b]Note:[/b] Godot expects the normal map to use X+, Y-, and Z+ coordinates. "
+"See [url=http://wiki.polycount.com/wiki/"
+"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]this page[/url] for "
+"a comparison of normal map coordinates expected by popular engines."
+msgstr ""
+
+#: doc/classes/MeshInstance2D.xml:23 doc/classes/MultiMeshInstance2D.xml:23
+msgid ""
+"The [Texture2D] that will be used if using the default [CanvasItemMaterial]. "
+"Can be accessed as [code]TEXTURE[/code] in CanvasItem shader."
+msgstr ""
+
+#: doc/classes/MeshInstance2D.xml:29 doc/classes/MultiMeshInstance2D.xml:29
+msgid "Emitted when the [member texture] is changed."
+msgstr ""
+
+#: doc/classes/MeshInstance3D.xml:4
+msgid "Node that instances meshes into a scenario."
+msgstr ""
+
+#: doc/classes/MeshInstance3D.xml:7
+msgid ""
+"MeshInstance3D is a node that takes a [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 [Mesh] in many "
+"places. This allows reuse of geometry which can save on resources. When a "
+"[Mesh] has to be instanced more than thousands of times at close proximity, "
+"consider using a [MultiMesh] in a [MultiMeshInstance3D] instead."
+msgstr ""
+
+#: doc/classes/MeshInstance3D.xml:16
+msgid ""
+"This helper creates a [StaticBody3D] child node with a "
+"[ConvexPolygonShape3D] collision shape calculated from the mesh geometry. "
+"It's mainly used for testing."
+msgstr ""
+
+#: doc/classes/MeshInstance3D.xml:23
+msgid ""
+"This helper creates a [MeshInstance3D] child node with gizmos at every "
+"vertex calculated from the mesh geometry. It's mainly used for testing."
+msgstr ""
+
+#: doc/classes/MeshInstance3D.xml:30
+msgid ""
+"This helper creates a [StaticBody3D] child node with a "
+"[ConcavePolygonShape3D] collision shape calculated from the mesh geometry. "
+"It's mainly used for testing."
+msgstr ""
+
+#: doc/classes/MeshInstance3D.xml:39
+msgid ""
+"Returns the [Material] that will be used by the [Mesh] when drawing. This "
+"can return the [member GeometryInstance3D.material_override], the surface "
+"override [Material] defined in this [MeshInstance3D], or the surface "
+"[Material] defined in the [Mesh]. For example, if [member GeometryInstance3D."
+"material_override] is used, all surfaces will return the override material."
+msgstr ""
+
+#: doc/classes/MeshInstance3D.xml:48
+msgid ""
+"Returns the override [Material] for the specified surface of the [Mesh] "
+"resource."
+msgstr ""
+
+#: doc/classes/MeshInstance3D.xml:55
+msgid "Returns the number of surface materials."
+msgstr ""
+
+#: doc/classes/MeshInstance3D.xml:66
+msgid ""
+"Sets the override [Material] for the specified surface of the [Mesh] "
+"resource. This material is associated with this [MeshInstance3D] rather than "
+"with the [Mesh] resource."
+msgstr ""
+
+#: doc/classes/MeshInstance3D.xml:72
+msgid "The [Mesh] resource for the instance."
+msgstr ""
+
+#: doc/classes/MeshInstance3D.xml:75
+msgid "[NodePath] to the [Skeleton3D] associated with the instance."
+msgstr ""
+
+#: doc/classes/MeshInstance3D.xml:78
+msgid "Sets the skin to be used by this instance."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:4
+msgid "Library of meshes."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:7
+msgid ""
+"A library of meshes. Contains a list of [Mesh] resources, each with a name "
+"and ID. Each item can also include collision and navigation shapes. This "
+"resource is used in [GridMap]."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:16
+msgid "Clears the library."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:25
+msgid ""
+"Creates a new item in the library with the given ID.\n"
+"You can get an unused ID from [method get_last_unused_item_id]."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:35
+msgid "Returns the first item with the given name."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:42
+msgid "Returns the list of item IDs in use."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:51
+msgid "Returns the item's mesh."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:60
+msgid "Returns the item's name."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:69
+msgid "Returns the item's navigation mesh."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:78
+msgid "Returns the transform applied to the item's navigation mesh."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:87
+msgid ""
+"When running in the editor, returns a generated item preview (a 3D rendering "
+"in isometric perspective). When used in a running project, returns the "
+"manually-defined item preview which can be set using [method "
+"set_item_preview]. Returns an empty [Texture2D] if no preview was manually "
+"set in a running project."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:96
+msgid ""
+"Returns an item's collision shapes.\n"
+"The array consists of each [Shape3D] followed by its [Transform]."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:104
+msgid "Gets an unused ID for a new item."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:113
+msgid "Removes the item."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:124
+msgid "Sets the item's mesh."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:135
+msgid ""
+"Sets the item's name.\n"
+"This name is shown in the editor. It can also be used to look up the item "
+"later using [method find_item_by_name]."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:147
+msgid "Sets the item's navigation mesh."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:158
+msgid "Sets the transform to apply to the item's navigation mesh."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:169
+msgid "Sets a texture to use as the item's preview icon in the editor."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:180
+msgid ""
+"Sets an item's collision shapes.\n"
+"The array should consist of [Shape3D] objects, each followed by a "
+"[Transform] that will be applied to it. For shapes that should not have a "
+"transform, use [constant Transform.IDENTITY]."
+msgstr ""
+
+#: doc/classes/MeshTexture.xml:4
+msgid "Simple texture that uses a mesh to draw itself."
+msgstr ""
+
+#: doc/classes/MeshTexture.xml:7
+msgid ""
+"Simple texture that uses a mesh to draw itself. It's limited because flags "
+"can't be changed and region drawing is not supported."
+msgstr ""
+
+#: doc/classes/MeshTexture.xml:15
+msgid "Sets the base texture that the Mesh will use to draw."
+msgstr ""
+
+#: doc/classes/MeshTexture.xml:18
+msgid "Sets the size of the image, needed for reference."
+msgstr ""
+
+#: doc/classes/MeshTexture.xml:21
+msgid "Sets the mesh used to draw. It must be a mesh using 2D vertices."
+msgstr ""
+
+#: modules/mobile_vr/doc_classes/MobileVRInterface.xml:4
+msgid "Generic mobile VR implementation."
+msgstr ""
+
+#: modules/mobile_vr/doc_classes/MobileVRInterface.xml:7
+msgid ""
+"This is a generic mobile VR implementation where you need to provide details "
+"about the phone and HMD used. It does not rely on any existing framework. "
+"This is the most basic interface we have. For the best effect, you need a "
+"mobile phone with a gyroscope and accelerometer.\n"
+"Note that even though there is no positional tracking, the camera will "
+"assume the headset is at a height of 1.85 meters. You can change this by "
+"setting [member eye_height].\n"
+"You can initialise this interface as follows:\n"
+"[codeblock]\n"
+"var interface = XRServer.find_interface(\"Native mobile\")\n"
+"if interface and interface.initialize():\n"
+" get_viewport().xr = true\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/mobile_vr/doc_classes/MobileVRInterface.xml:22
+msgid ""
+"The distance between the display and the lenses inside of the device in "
+"centimeters."
+msgstr ""
+
+#: modules/mobile_vr/doc_classes/MobileVRInterface.xml:25
+msgid "The width of the display in centimeters."
+msgstr ""
+
+#: modules/mobile_vr/doc_classes/MobileVRInterface.xml:28
+msgid ""
+"The height at which the camera is placed in relation to the ground (i.e. "
+"[XROrigin3D] node)."
+msgstr ""
+
+#: modules/mobile_vr/doc_classes/MobileVRInterface.xml:31
+msgid ""
+"The interocular distance, also known as the interpupillary distance. The "
+"distance between the pupils of the left and right eye."
+msgstr ""
+
+#: modules/mobile_vr/doc_classes/MobileVRInterface.xml:34
+msgid ""
+"The k1 lens factor is one of the two constants that define the strength of "
+"the lens used and directly influences the lens distortion effect."
+msgstr ""
+
+#: modules/mobile_vr/doc_classes/MobileVRInterface.xml:37
+msgid "The k2 lens factor, see k1."
+msgstr ""
+
+#: modules/mobile_vr/doc_classes/MobileVRInterface.xml:40
+msgid ""
+"The oversample setting. Because of the lens distortion we have to render our "
+"buffers at a higher resolution then the screen can natively handle. A value "
+"between 1.5 and 2.0 often provides good results but at the cost of "
+"performance."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:4
+msgid "Provides high-performance mesh instancing."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:7
+msgid ""
+"MultiMesh provides low-level mesh instancing. Drawing thousands of "
+"[MeshInstance3D] nodes can be slow, since each object is submitted to the "
+"GPU then drawn individually.\n"
+"MultiMesh is much faster as it can draw thousands of instances with a single "
+"draw call, resulting in less API overhead.\n"
+"As a drawback, if the instances are too far away of each other, performance "
+"may be reduced as every single instance will always rendered (they are "
+"spatially indexed as one, for the whole object).\n"
+"Since instances may have any behavior, the AABB used for visibility must be "
+"provided by the user."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:13 doc/classes/MultiMeshInstance3D.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/3d/vertex_animation/"
+"animating_thousands_of_fish.html"
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:14 doc/classes/MultiMeshInstance3D.xml:13
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/optimization/"
+"using_multimesh.html"
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:21
+msgid "Returns the visibility axis-aligned bounding box."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:30
+msgid "Gets a specific instance's color."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:39
+msgid "Returns the custom data that has been set for a specific instance."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:48
+msgid "Returns the [Transform] of a specific instance."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:57
+msgid "Returns the [Transform2D] of a specific instance."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:68
+msgid ""
+"Sets the color of a specific instance.\n"
+"For the color to take effect, ensure that [member use_colors] is [code]true[/"
+"code] on the [MultiMesh] and [member BaseMaterial3D."
+"vertex_color_use_as_albedo] is [code]true[/code] on the material."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:80
+msgid ""
+"Sets custom data for a specific instance. Although [Color] is used, it is "
+"just a container for 4 floating point numbers.\n"
+"For the custom data to be used, ensure that [member use_custom_data] is "
+"[code]true[/code]."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:92
+msgid "Sets the [Transform] for a specific instance."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:103
+msgid "Sets the [Transform2D] for a specific instance."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:115
+msgid ""
+"Number of instances that will get drawn. This clears and (re)sizes the "
+"buffers. By default, all instances are drawn but you can limit this with "
+"[member visible_instance_count]."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:118
+msgid "Mesh to be drawn."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:125
+msgid "Format of transform used to transform mesh, either 2D or 3D."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:128
+msgid ""
+"If [code]true[/code], the [MultiMesh] will use color data (see [member "
+"color_array])."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:131
+msgid ""
+"If [code]true[/code], the [MultiMesh] will use custom data (see [member "
+"custom_data_array])."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:134
+msgid ""
+"Limits the number of instances drawn, -1 draws all instances. Changing this "
+"does not change the sizes of the buffers."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:139
+msgid "Use this when using 2D transforms."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:142
+msgid "Use this when using 3D transforms."
+msgstr ""
+
+#: doc/classes/MultiMeshInstance2D.xml:4
+msgid "Node that instances a [MultiMesh] in 2D."
+msgstr ""
+
+#: doc/classes/MultiMeshInstance2D.xml:7
+msgid ""
+"[MultiMeshInstance2D] is a specialized node to instance a [MultiMesh] "
+"resource in 2D.\n"
+"Usage is the same as [MultiMeshInstance3D]."
+msgstr ""
+
+#: doc/classes/MultiMeshInstance2D.xml:16
+msgid "The [MultiMesh] that will be drawn by the [MultiMeshInstance2D]."
+msgstr ""
+
+#: doc/classes/MultiMeshInstance3D.xml:4
+msgid "Node that instances a [MultiMesh]."
+msgstr ""
+
+#: doc/classes/MultiMeshInstance3D.xml:7
+msgid ""
+"[MultiMeshInstance3D] is a specialized node to instance "
+"[GeometryInstance3D]s based on a [MultiMesh] resource.\n"
+"This is useful to optimize the rendering of a high amount of instances of a "
+"given mesh (for example trees in a forest or grass strands)."
+msgstr ""
+
+#: doc/classes/MultiMeshInstance3D.xml:12
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/3d/"
+"using_multi_mesh_instance.html"
+msgstr ""
+
+#: doc/classes/MultiMeshInstance3D.xml:19
+msgid ""
+"The [MultiMesh] resource that will be used and shared among all instances of "
+"the [MultiMeshInstance3D]."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:4
+msgid "High-level multiplayer API."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:7
+msgid ""
+"This class implements most of the logic behind the high-level multiplayer "
+"API.\n"
+"By default, [SceneTree] has a reference to this class that is used to "
+"provide multiplayer capabilities (i.e. RPC/RSET) across the whole scene.\n"
+"It is possible to override the MultiplayerAPI instance used by specific "
+"Nodes by setting the [member Node.custom_multiplayer] property, effectively "
+"allowing to run both client and server in the same scene."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:18
+msgid ""
+"Clears the current MultiplayerAPI network state (you shouldn't call this "
+"unless you know what you are doing)."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:25
+msgid ""
+"Returns the peer IDs of all connected peers of this MultiplayerAPI's [member "
+"network_peer]."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:32
+msgid ""
+"Returns the unique peer ID of this MultiplayerAPI's [member network_peer]."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:39
+msgid ""
+"Returns the sender's peer ID for the RPC currently being executed.\n"
+"[b]Note:[/b] If not inside an RPC this method will return 0."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:47 doc/classes/SceneTree.xml:135
+msgid "Returns [code]true[/code] if there is a [member network_peer] set."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:54
+msgid ""
+"Returns [code]true[/code] if this MultiplayerAPI's [member network_peer] is "
+"in server mode (listening for connections)."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:61
+msgid ""
+"Method used for polling the MultiplayerAPI. You only need to worry about "
+"this if you are using [member Node.custom_multiplayer] override or you set "
+"[member SceneTree.multiplayer_poll] to [code]false[/code]. By default, "
+"[SceneTree] will poll its MultiplayerAPI for you.\n"
+"[b]Note:[/b] This method results in RPCs and RSETs being called, so they "
+"will be executed in the same context of this function (e.g. [code]_process[/"
+"code], [code]physics[/code], [Thread])."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:75
+msgid ""
+"Sends the given raw [code]bytes[/code] to a specific peer identified by "
+"[code]id[/code] (see [method NetworkedMultiplayerPeer.set_target_peer]). "
+"Default ID is [code]0[/code], i.e. broadcast to all peers."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:84
+msgid ""
+"Sets the base root node to use for RPCs. Instead of an absolute path, a "
+"relative path will be used to find the node upon which the RPC should be "
+"executed.\n"
+"This effectively allows to have different branches of the scene tree to be "
+"managed by different MultiplayerAPI, allowing for example to run both client "
+"and server in the same scene."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:91
+msgid ""
+"If [code]true[/code], the MultiplayerAPI will allow encoding and decoding of "
+"object during RPCs/RSETs.\n"
+"[b]Warning:[/b] 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."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:95
+msgid ""
+"The peer object to handle the RPC system (effectively enabling networking "
+"when set). Depending on the peer itself, the MultiplayerAPI will become a "
+"network server (check with [method is_network_server]) and will set root "
+"node's network mode to master, or it will become a regular peer with root "
+"node set to puppet. All child nodes are set to inherit the network mode by "
+"default. Handling of networking-related events (connection, disconnection, "
+"new clients) is done by connecting to MultiplayerAPI's signals."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:98
+msgid ""
+"If [code]true[/code], the MultiplayerAPI's [member network_peer] refuses new "
+"incoming connections."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:104
+msgid ""
+"Emitted when this MultiplayerAPI's [member network_peer] successfully "
+"connected to a server. Only emitted on clients."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:109
+msgid ""
+"Emitted when this MultiplayerAPI's [member network_peer] fails to establish "
+"a connection to a server. Only emitted on clients."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:116
+msgid ""
+"Emitted when this MultiplayerAPI's [member network_peer] connects with a new "
+"peer. ID is the peer ID of the new peer. Clients get notified when other "
+"clients connect to the same server. Upon connecting to a server, a client "
+"also receives this signal for the server (with ID being 1)."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:123
+msgid ""
+"Emitted when this MultiplayerAPI's [member network_peer] disconnects from a "
+"peer. Clients get notified when other clients disconnect from the same "
+"server."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:132
+msgid ""
+"Emitted when this MultiplayerAPI's [member network_peer] receive a "
+"[code]packet[/code] with custom data (see [method send_bytes]). ID is the "
+"peer ID of the peer that sent the packet."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:137
+msgid ""
+"Emitted when this MultiplayerAPI's [member network_peer] disconnects from "
+"server. Only emitted on clients."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:143
+msgid ""
+"Used with [method Node.rpc_config] or [method Node.rset_config] to disable a "
+"method or property for all RPC calls, making it unavailable. Default for all "
+"methods."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:146
+msgid ""
+"Used with [method Node.rpc_config] or [method Node.rset_config] to set a "
+"method to be called or a property to be changed only on the remote end, not "
+"locally. Analogous to the [code]remote[/code] keyword. Calls and property "
+"changes are accepted from all remote peers, no matter if they are node's "
+"master or puppets."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:149
+msgid ""
+"Used with [method Node.rpc_config] or [method Node.rset_config] to set a "
+"method to be called or a property to be changed only on the network master "
+"for this node. Analogous to the [code]master[/code] keyword. Only accepts "
+"calls or property changes from the node's network puppets, see [method Node."
+"set_network_master]."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:152
+msgid ""
+"Used with [method Node.rpc_config] or [method Node.rset_config] to set a "
+"method to be called or a property to be changed only on puppets for this "
+"node. Analogous to the [code]puppet[/code] keyword. Only accepts calls or "
+"property changes from the node's network master, see [method Node."
+"set_network_master]."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:155
+msgid ""
+"Behave like [constant RPC_MODE_REMOTE] but also make the call or property "
+"change locally. Analogous to the [code]remotesync[/code] keyword."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:158
+msgid ""
+"Behave like [constant RPC_MODE_MASTER] but also make the call or property "
+"change locally. Analogous to the [code]mastersync[/code] keyword."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:161
+msgid ""
+"Behave like [constant RPC_MODE_PUPPET] but also make the call or property "
+"change locally. Analogous to the [code]puppetsync[/code] keyword."
+msgstr ""
+
+#: doc/classes/Mutex.xml:4
+msgid "A synchronization mutex (mutual exclusion)."
+msgstr ""
+
+#: doc/classes/Mutex.xml:7
+msgid ""
+"A synchronization mutex (mutual exclusion). This is used to synchronize "
+"multiple [Thread]s, and is equivalent to a binary [Semaphore]. It guarantees "
+"that only one thread can ever acquire the lock at a time. A mutex can be "
+"used to protect a critical section; however, be careful to avoid deadlocks."
+msgstr ""
+
+#: doc/classes/Mutex.xml:10 doc/classes/Semaphore.xml:10
+#: doc/classes/Thread.xml:10
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/threads/"
+"using_multiple_threads.html"
+msgstr ""
+
+#: doc/classes/Mutex.xml:17
+msgid "Locks this [Mutex], blocks until it is unlocked by the current owner."
+msgstr ""
+
+#: doc/classes/Mutex.xml:24
+msgid ""
+"Tries locking this [Mutex], but does not block. Returns [constant OK] on "
+"success, [constant ERR_BUSY] otherwise."
+msgstr ""
+
+#: doc/classes/Mutex.xml:31
+msgid "Unlocks this [Mutex], leaving it to other threads."
+msgstr ""
+
+#: modules/gdnative/doc_classes/NativeScript.xml:14
+msgid ""
+"Returns the documentation string that was previously set with "
+"[code]godot_nativescript_set_class_documentation[/code]."
+msgstr ""
+
+#: modules/gdnative/doc_classes/NativeScript.xml:23
+msgid ""
+"Returns the documentation string that was previously set with "
+"[code]godot_nativescript_set_method_documentation[/code]."
+msgstr ""
+
+#: modules/gdnative/doc_classes/NativeScript.xml:32
+msgid ""
+"Returns the documentation string that was previously set with "
+"[code]godot_nativescript_set_property_documentation[/code]."
+msgstr ""
+
+#: modules/gdnative/doc_classes/NativeScript.xml:41
+msgid ""
+"Returns the documentation string that was previously set with "
+"[code]godot_nativescript_set_signal_documentation[/code]."
+msgstr ""
+
+#: modules/gdnative/doc_classes/NativeScript.xml:48
+msgid ""
+"Constructs a new object of the base type with a script of this type already "
+"attached.\n"
+"[i]Note[/i]: Any arguments passed to this function will be ignored and not "
+"passed to the native constructor function. This will change with in a future "
+"API extension."
+msgstr ""
+
+#: doc/classes/Navigation2D.xml:4
+msgid "2D navigation and pathfinding node."
+msgstr ""
+
+#: doc/classes/Navigation2D.xml:7
+msgid ""
+"Navigation2D provides navigation and pathfinding within a 2D area, specified "
+"as a collection of [NavigationPolygon] resources. These are automatically "
+"collected from child [NavigationRegion2D] nodes."
+msgstr ""
+
+#: doc/classes/Navigation2D.xml:18 doc/classes/Navigation3D.xml:18
+#: doc/classes/NavigationServer2D.xml:175
+msgid ""
+"Returns the point closest to the provided [code]to_point[/code] on the "
+"navigation mesh surface."
+msgstr ""
+
+#: doc/classes/Navigation2D.xml:27 doc/classes/Navigation3D.xml:36
+msgid ""
+"Returns the owner region RID for the point returned by [method "
+"get_closest_point]."
+msgstr ""
+
+#: doc/classes/Navigation2D.xml:46
+msgid ""
+"Returns the path between two given points. Points are in local coordinate "
+"space. If [code]optimize[/code] is [code]true[/code] (the default), the path "
+"is smoothed by merging path segments where possible."
+msgstr ""
+
+#: doc/classes/Navigation3D.xml:4
+msgid "Mesh-based navigation and pathfinding node."
+msgstr ""
+
+#: doc/classes/Navigation3D.xml:7
+msgid ""
+"Provides navigation and pathfinding within a collection of "
+"[NavigationMesh]es. These will be automatically collected from child "
+"[NavigationRegion3D] nodes. In addition to basic pathfinding, this class "
+"also assists with aligning navigation agents with the meshes they are "
+"navigating on."
+msgstr ""
+
+#: doc/classes/Navigation3D.xml:27
+msgid ""
+"Returns the normal for the point returned by [method get_closest_point]."
+msgstr ""
+
+#: doc/classes/Navigation3D.xml:49 doc/classes/NavigationServer3D.xml:212
+msgid ""
+"Returns the closest point between the navigation surface and the segment."
+msgstr ""
+
+#: doc/classes/Navigation3D.xml:68
+msgid ""
+"Returns the path between two given points. Points are in local coordinate "
+"space. If [code]optimize[/code] is [code]true[/code] (the default), the "
+"agent properties associated with each [NavigationMesh] (radius, height, "
+"etc.) are considered in the path calculation, otherwise they are ignored."
+msgstr ""
+
+#: doc/classes/Navigation3D.xml:78
+msgid ""
+"Defines which direction is up. By default, this is [code](0, 1, 0)[/code], "
+"which is the world's \"up\" direction."
+msgstr ""
+
+#: doc/classes/NavigationAgent2D.xml:4
+msgid "2D Agent used in navigation for collision avoidance."
+msgstr ""
+
+#: doc/classes/NavigationAgent2D.xml:7
+msgid ""
+"2D Agent that is used in navigation to reach a location while avoiding "
+"static and dynamic obstacles. The dynamic obstacles are avoided using RVO "
+"collision avoidance. The agent needs navigation data to work correctly. This "
+"can be done by having the agent as a child of a [Navigation2D] node, or "
+"using [method set_navigation]. [NavigationAgent2D] is physics safe."
+msgstr ""
+
+#: doc/classes/NavigationAgent2D.xml:16 doc/classes/NavigationAgent3D.xml:16
+msgid ""
+"Returns the distance to the target location, using the agent's global "
+"position. The user must set the target location with [method "
+"set_target_location] in order for this to be accurate."
+msgstr ""
+
+#: doc/classes/NavigationAgent2D.xml:23
+msgid ""
+"Returns the reachable final location in global coordinates. This can change "
+"if the navigation path is altered in any way."
+msgstr ""
+
+#: doc/classes/NavigationAgent2D.xml:30 doc/classes/NavigationAgent3D.xml:30
+msgid "Returns the path from start to finish in global coordinates."
+msgstr ""
+
+#: doc/classes/NavigationAgent2D.xml:37
+msgid ""
+"Returns which index the agent is currently on in the navigation path's "
+"[PackedVector2Array]."
+msgstr ""
+
+#: doc/classes/NavigationAgent2D.xml:44
+msgid ""
+"Returns the [Navigation2D] node that the agent is using for its navigation "
+"system."
+msgstr ""
+
+#: doc/classes/NavigationAgent2D.xml:51
+msgid ""
+"Returns a [Vector2] in global coordinates, that can be moved to, making sure "
+"that there are no static objects in the way. If the agent does not have a "
+"navigation path, it will return the position of the agent's parent."
+msgstr ""
+
+#: doc/classes/NavigationAgent2D.xml:58
+msgid "Returns the user defined [Vector2] after setting the target location."
+msgstr ""
+
+#: doc/classes/NavigationAgent2D.xml:65 doc/classes/NavigationAgent3D.xml:65
+msgid "Returns true if the navigation path's final location has been reached."
+msgstr ""
+
+#: doc/classes/NavigationAgent2D.xml:72 doc/classes/NavigationAgent3D.xml:72
+msgid ""
+"Returns true if the target location is reachable. The target location is set "
+"using [method set_target_location]."
+msgstr ""
+
+#: doc/classes/NavigationAgent2D.xml:79 doc/classes/NavigationAgent3D.xml:79
+msgid ""
+"Returns true if the target location is reached. The target location is set "
+"using [method set_target_location]. It may not always be possible to reach "
+"the target location. It should always be possible to reach the final "
+"location though. See [method get_final_location]."
+msgstr ""
+
+#: doc/classes/NavigationAgent2D.xml:88
+msgid ""
+"Sets the [Navigation2D] node used by the agent. Useful when you don't want "
+"to make the agent a child of a [Navigation2D] node."
+msgstr ""
+
+#: doc/classes/NavigationAgent2D.xml:97 doc/classes/NavigationAgent3D.xml:97
+msgid ""
+"Sets the user desired final location. This will clear the current navigation "
+"path."
+msgstr ""
+
+#: doc/classes/NavigationAgent2D.xml:106 doc/classes/NavigationAgent3D.xml:106
+msgid ""
+"Sends the passed in velocity to the collision avoidance algorithm. It will "
+"adjust the velocity to avoid collisions. Once the adjustment to the velocity "
+"is complete, it will emit the [signal velocity_computed] signal."
+msgstr ""
+
+#: doc/classes/NavigationAgent2D.xml:112 doc/classes/NavigationAgent3D.xml:118
+msgid "The maximum number of neighbors for the agent to consider."
+msgstr ""
+
+#: doc/classes/NavigationAgent2D.xml:115 doc/classes/NavigationAgent3D.xml:121
+msgid "The maximum speed that an agent can move."
+msgstr ""
+
+#: doc/classes/NavigationAgent2D.xml:118 doc/classes/NavigationAgent3D.xml:124
+msgid "The distance to search for other agents."
+msgstr ""
+
+#: doc/classes/NavigationAgent2D.xml:121 doc/classes/NavigationAgent3D.xml:127
+msgid ""
+"The maximum distance the agent is allowed away from the ideal path to the "
+"final location. This can happen due to trying to avoid collisions. When the "
+"maximum distance is exceeded, it recalculates the ideal path."
+msgstr ""
+
+#: doc/classes/NavigationAgent2D.xml:124 doc/classes/NavigationAgent3D.xml:130
+msgid "The radius of the agent."
+msgstr ""
+
+#: doc/classes/NavigationAgent2D.xml:127 doc/classes/NavigationAgent3D.xml:133
+msgid ""
+"The distance threshold before a target is considered to be reached. This "
+"will allow an agent to not have to hit a point on the path exactly, but in "
+"the area."
+msgstr ""
+
+#: doc/classes/NavigationAgent2D.xml:130 doc/classes/NavigationAgent3D.xml:136
+msgid ""
+"The minimal amount of time for which this agent's velocities, that are "
+"computed with the collision avoidance algorithim, are safe with respect to "
+"other agents. The larger the number, the sooner the agent will respond to "
+"other agents, but less freedom in choosing its velocities. Must be positive."
+msgstr ""
+
+#: doc/classes/NavigationAgent2D.xml:136 doc/classes/NavigationAgent3D.xml:142
+msgid "Notifies when the final location is reached."
+msgstr ""
+
+#: doc/classes/NavigationAgent2D.xml:141 doc/classes/NavigationAgent3D.xml:147
+msgid "Notifies when the navigation path changes."
+msgstr ""
+
+#: doc/classes/NavigationAgent2D.xml:146 doc/classes/NavigationAgent3D.xml:152
+msgid ""
+"Notifies when the player defined target, set with [method "
+"set_target_location], is reached."
+msgstr ""
+
+#: doc/classes/NavigationAgent2D.xml:153 doc/classes/NavigationAgent3D.xml:159
+msgid ""
+"Notifies when the collision avoidance velocity is calculated. Emitted by "
+"[method set_velocity]."
+msgstr ""
+
+#: doc/classes/NavigationAgent3D.xml:4
+msgid "3D Agent used in navigation for collision avoidance."
+msgstr ""
+
+#: doc/classes/NavigationAgent3D.xml:7
+msgid ""
+"3D Agent that is used in navigation to reach a location while avoiding "
+"static and dynamic obstacles. The dynamic obstacles are avoided using RVO "
+"collision avoidance. The agent needs navigation data to work correctly. This "
+"can be done by having the agent as a child of a [Navigation3D] node, or "
+"using [method set_navigation]. [NavigationAgent3D] is physics safe."
+msgstr ""
+
+#: doc/classes/NavigationAgent3D.xml:23
+msgid ""
+"Returns the reachable final location in global coordinates. This can change "
+"if the navigation path is altered in any way. Because of this, it would be "
+"best to check this each frame."
+msgstr ""
+
+#: doc/classes/NavigationAgent3D.xml:37
+msgid ""
+"Returns which index the agent is currently on in the navigation path's "
+"[PackedVector3Array]."
+msgstr ""
+
+#: doc/classes/NavigationAgent3D.xml:44
+msgid ""
+"Returns the [Navigation3D] node that the agent is using for its navigation "
+"system."
+msgstr ""
+
+#: doc/classes/NavigationAgent3D.xml:51
+msgid ""
+"Returns a [Vector3] in global coordinates, that can be moved to, making sure "
+"that there are no static objects in the way. If the agent does not have a "
+"navigation path, it will return the origin of the agent's parent."
+msgstr ""
+
+#: doc/classes/NavigationAgent3D.xml:58
+msgid "Returns the user defined [Vector3] after setting the target location."
+msgstr ""
+
+#: doc/classes/NavigationAgent3D.xml:88
+msgid ""
+"Sets the [Navigation3D] node used by the agent. Useful when you don't want "
+"to make the agent a child of a [Navigation3D] node."
+msgstr ""
+
+#: doc/classes/NavigationAgent3D.xml:112
+msgid "The agent height offset to match the navigation mesh height."
+msgstr ""
+
+#: doc/classes/NavigationAgent3D.xml:115
+msgid ""
+"Ignores collisions on the Y axis. Must be true to move on a horizontal plane."
+msgstr ""
+
+#: doc/classes/NavigationObstacle2D.xml:4
+msgid "2D Obstacle used in navigation for collision avoidance."
+msgstr ""
+
+#: doc/classes/NavigationObstacle2D.xml:7
+msgid ""
+"2D Obstacle used in navigation for collision avoidance. The obstacle needs "
+"navigation data to work correctly. This can be done by having the obstacle "
+"as a child of a [Navigation2D] node, or using [method set_navigation]. "
+"[NavigationObstacle2D] is physics safe."
+msgstr ""
+
+#: doc/classes/NavigationObstacle2D.xml:16
+msgid ""
+"Returns the [Navigation2D] node that the obstacle is using for its "
+"navigation system."
+msgstr ""
+
+#: doc/classes/NavigationObstacle2D.xml:25
+msgid ""
+"Sets the [Navigation2D] node used by the obstacle. Useful when you don't "
+"want to make the obstacle a child of a [Navigation2D] node."
+msgstr ""
+
+#: doc/classes/NavigationObstacle3D.xml:4
+msgid "3D Obstacle used in navigation for collision avoidance."
+msgstr ""
+
+#: doc/classes/NavigationObstacle3D.xml:7
+msgid ""
+"3D Obstacle used in navigation for collision avoidance. The obstacle needs "
+"navigation data to work correctly. This can be done by having the obstacle "
+"as a child of a [Navigation3D] node, or using [method set_navigation]. "
+"[NavigationObstacle3D] is physics safe."
+msgstr ""
+
+#: doc/classes/NavigationObstacle3D.xml:16
+msgid ""
+"Returns the [Navigation3D] node that the obstacle is using for its "
+"navigation system."
+msgstr ""
+
+#: doc/classes/NavigationObstacle3D.xml:25
+msgid ""
+"Sets the [Navigation3D] node used by the obstacle. Useful when you don't "
+"want to make the obstacle a child of a [Navigation3D] node."
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:4
+msgid ""
+"A node that has methods to draw outlines or use indices of vertices to "
+"create navigation polygons."
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:7
+msgid ""
+"There are two ways to create polygons. Either by using the [method "
+"add_outline] method, or using the [method add_polygon] method.\n"
+"Using [method add_outline]:\n"
+"[codeblock]\n"
+"var polygon = NavigationPolygon.new()\n"
+"var outline = PackedVector2Array([Vector2(0, 0), Vector2(0, 50), Vector2(50, "
+"50), Vector2(50, 0)])\n"
+"polygon.add_outline(outline)\n"
+"polygon.make_polygons_from_outlines()\n"
+"$NavigationRegion2D.navpoly = polygon\n"
+"[/codeblock]\n"
+"Using [method add_polygon] and indices of the vertices array.\n"
+"[codeblock]\n"
+"var polygon = NavigationPolygon.new()\n"
+"var vertices = PackedVector2Array([Vector2(0, 0), Vector2(0, 50), "
+"Vector2(50, 50), Vector2(50, 0)])\n"
+"polygon.set_vertices(vertices)\n"
+"var indices = PackedInt32Array(0, 3, 1)\n"
+"polygon.add_polygon(indices)\n"
+"$NavigationRegion2D.navpoly = polygon\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:35
+msgid ""
+"Appends a [PackedVector2Array] that contains the vertices of an outline to "
+"the internal array that contains all the outlines. You have to call [method "
+"make_polygons_from_outlines] in order for this array to be converted to "
+"polygons that the engine will use."
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:46
+msgid ""
+"Adds a [PackedVector2Array] that contains the vertices of an outline to the "
+"internal array that contains all the outlines at a fixed position. You have "
+"to call [method make_polygons_from_outlines] in order for this array to be "
+"converted to polygons that the engine will use."
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:55
+msgid ""
+"Adds a polygon using the indices of the vertices you get when calling "
+"[method get_vertices]."
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:62
+msgid ""
+"Clears the array of the outlines, but it doesn't clear the vertices and the "
+"polygons that were created by them."
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:69
+msgid ""
+"Clears the array of polygons, but it doesn't clear the array of outlines and "
+"vertices."
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:78
+msgid ""
+"Returns a [PackedVector2Array] containing the vertices of an outline that "
+"was created in the editor or by script."
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:85
+msgid ""
+"Returns the number of outlines that were created in the editor or by script."
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:94
+msgid ""
+"Returns a [PackedInt32Array] containing the indices of the vertices of a "
+"created polygon."
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:101
+msgid "Returns the count of all polygons."
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:108
+msgid ""
+"Returns a [PackedVector2Array] containing all the vertices being used to "
+"create the polygons."
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:115
+msgid "Creates polygons from the outlines added in the editor or by script."
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:124
+msgid ""
+"Removes an outline created in the editor or by script. You have to call "
+"[method make_polygons_from_outlines] for the polygons to update."
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:135
+msgid ""
+"Changes an outline created in the editor or by script. You have to call "
+"[method make_polygons_from_outlines] for the polygons to update."
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:144
+msgid ""
+"Sets the vertices that can be then indexed to create polygons with the "
+"[method add_polygon] method."
+msgstr ""
+
+#: doc/classes/NavigationRegion3D.xml:4
+msgid "A region of the navigation map."
+msgstr ""
+
+#: doc/classes/NavigationRegion3D.xml:7
+msgid ""
+"A region of the navigation map. It tells the [Navigation3D] node what can be "
+"navigated and what cannot, based on the [NavigationMesh] resource. This "
+"should be a child of a [Navigation3D] node (even not a direct child)."
+msgstr ""
+
+#: doc/classes/NavigationRegion3D.xml:16
+msgid ""
+"Bakes the [NavigationMesh]. The baking is done in a separate thread because "
+"navigation baking is not a cheap operation. This can be done at runtime. "
+"When it is completed, it automatically sets the new [NavigationMesh]."
+msgstr ""
+
+#: doc/classes/NavigationRegion3D.xml:22
+msgid "Determines if the [NavigationRegion3D] is enabled or disabled."
+msgstr ""
+
+#: doc/classes/NavigationRegion3D.xml:25
+msgid "The [NavigationMesh] resource to use."
+msgstr ""
+
+#: doc/classes/NavigationRegion3D.xml:31
+msgid "Notifies when the navigation mesh bake operation is completed."
+msgstr ""
+
+#: doc/classes/NavigationRegion3D.xml:36
+msgid "Notifies when the [NavigationMesh] has changed."
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:4
+msgid "Server interface for low-level 2D navigation access"
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:7
+msgid ""
+"NavigationServer2D is the server responsible for all 2D navigation. It "
+"creates the agents, maps, and regions for navigation to work as expected. "
+"This keeps tracks of any call and executes them during the sync phase. This "
+"means that you can request any change to the map, using any thread, without "
+"worrying."
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:16 doc/classes/NavigationServer3D.xml:16
+msgid "Creates the agent."
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:25 doc/classes/NavigationServer3D.xml:25
+msgid "Returns true if the map got changed the previous frame."
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:40 doc/classes/NavigationServer3D.xml:40
+msgid "Callback called at the end of the RVO process."
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:51 doc/classes/NavigationServer3D.xml:51
+msgid "Puts the agent in the map."
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:62 doc/classes/NavigationServer3D.xml:62
+msgid ""
+"Sets the maximum number of other agents the agent takes into account in the "
+"navigation. The larger this number, the longer the running time of the "
+"simulation. If the number is too low, the simulation will not be safe."
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:73 doc/classes/NavigationServer3D.xml:73
+msgid "Sets the maximum speed of the agent. Must be positive."
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:84 doc/classes/NavigationServer3D.xml:84
+msgid ""
+"Sets the maximum distance to other agents this agent takes into account in "
+"the navigation. The larger this number, the longer the running time of the "
+"simulation. If the number is too low, the simulation will not be safe."
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:95 doc/classes/NavigationServer3D.xml:95
+msgid "Sets the position of the agent in world space."
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:106
+#: doc/classes/NavigationServer3D.xml:106
+msgid "Sets the radius of the agent."
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:117
+#: doc/classes/NavigationServer3D.xml:117
+msgid "Sets the new target velocity."
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:128
+#: doc/classes/NavigationServer3D.xml:128
+msgid ""
+"The minimal amount of time for which the agent's velocities that are "
+"computed by the simulation are safe with respect to other agents. The larger "
+"this number, the sooner this agent will respond to the presence of other "
+"agents, but the less freedom this agent has in choosing its velocities. Must "
+"be positive."
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:139
+#: doc/classes/NavigationServer3D.xml:139
+msgid "Sets the current velocity of the agent."
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:148
+#: doc/classes/NavigationServer3D.xml:148
+msgid "Destroy the RID"
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:155
+#: doc/classes/NavigationServer3D.xml:155
+msgid "Create a new map."
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:164
+#: doc/classes/NavigationServer3D.xml:164
+msgid "Returns the map cell size."
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:186
+#: doc/classes/NavigationServer3D.xml:197
+msgid ""
+"Returns the owner region RID for the point returned by [method "
+"map_get_closest_point]."
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:195
+msgid ""
+"Returns the edge connection margin of the map. The edge connection margin is "
+"a distance used to connect two regions."
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:210
+msgid ""
+"Returns the navigation path to reach the destination from the origin, while "
+"avoiding static obstacles."
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:219
+#: doc/classes/NavigationServer3D.xml:254
+msgid "Returns true if the map is active."
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:230
+#: doc/classes/NavigationServer3D.xml:265
+msgid "Sets the map active."
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:241
+#: doc/classes/NavigationServer3D.xml:276
+msgid "Set the map cell size used to weld the navigation mesh polygons."
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:252
+msgid ""
+"Set the map edge connection margin used to weld the compatible region edges."
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:259
+#: doc/classes/NavigationServer3D.xml:327
+msgid "Creates a new region."
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:270
+#: doc/classes/NavigationServer3D.xml:338
+msgid "Sets the map for the region."
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:281
+#: doc/classes/NavigationServer3D.xml:349
+msgid "Sets the navigation mesh for the region."
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:292
+#: doc/classes/NavigationServer3D.xml:360
+msgid "Sets the global transformation for the region."
+msgstr ""
+
+#: doc/classes/NavigationServer3D.xml:4
+msgid "Server interface for low-level 3D navigation access"
+msgstr ""
+
+#: doc/classes/NavigationServer3D.xml:7
+msgid ""
+"NavigationServer3D is the server responsible for all 3D navigation. It "
+"creates the agents, maps, and regions for navigation to work as expected. "
+"This keeps tracks of any call and executes them during the sync phase. This "
+"means that you can request any change to the map, using any thread, without "
+"worrying."
+msgstr ""
+
+#: doc/classes/NavigationServer3D.xml:175
+msgid ""
+"Returns the point closest to the provided [code]point[/code] on the "
+"navigation mesh surface."
+msgstr ""
+
+#: doc/classes/NavigationServer3D.xml:186
+msgid ""
+"Returns the normal for the point returned by [method map_get_closest_point]."
+msgstr ""
+
+#: doc/classes/NavigationServer3D.xml:221
+msgid "Returns the edge connection margin of the map."
+msgstr ""
+
+#: doc/classes/NavigationServer3D.xml:236
+msgid "Returns the navigation path to reach the destination from the origin."
+msgstr ""
+
+#: doc/classes/NavigationServer3D.xml:245
+msgid "Returns the map's up direction."
+msgstr ""
+
+#: doc/classes/NavigationServer3D.xml:287
+msgid ""
+"Set the map edge connection margein used to weld the compatible region edges."
+msgstr ""
+
+#: doc/classes/NavigationServer3D.xml:298
+msgid "Sets the map up direction."
+msgstr ""
+
+#: doc/classes/NavigationServer3D.xml:307
+msgid ""
+"Process the collision avoidance agents.\n"
+"The result of this process is needed by the physics server, so this must be "
+"called in the main thread.\n"
+"Note: This function is not thread safe."
+msgstr ""
+
+#: doc/classes/NavigationServer3D.xml:320
+msgid "Bakes the navigation mesh."
+msgstr ""
+
+#: doc/classes/NavigationServer3D.xml:369
+msgid "Control activation of this server."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:4
+msgid ""
+"PacketPeer implementation using the [url=http://enet.bespin.org/index."
+"html]ENet[/url] library."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:7
+msgid ""
+"A PacketPeer implementation that should be passed to [member SceneTree."
+"network_peer] after being initialized as either a client or server. Events "
+"can then be handled by connecting to [SceneTree] signals."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:10
+#: doc/classes/NetworkedMultiplayerPeer.xml:10
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/networking/"
+"high_level_multiplayer.html"
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:11
+msgid "http://enet.bespin.org/usergroup0.html"
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:20
+msgid ""
+"Closes the connection. Ignored if no connection is currently established. If "
+"this is a server it tries to notify all clients before forcibly "
+"disconnecting them. If this is a client it simply closes the connection to "
+"the server."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:37
+msgid ""
+"Create client that connects to a server at [code]address[/code] using "
+"specified [code]port[/code]. The given address needs to be either a fully "
+"qualified domain name (e.g. [code]\"www.example.com\"[/code]) or an IP "
+"address in IPv4 or IPv6 format (e.g. [code]\"192.168.1.1\"[/code]). The "
+"[code]port[/code] is the port the server is listening on. The "
+"[code]in_bandwidth[/code] and [code]out_bandwidth[/code] parameters can be "
+"used to limit the incoming and outgoing bandwidth to the given number of "
+"bytes per second. The default of 0 means unlimited bandwidth. Note that ENet "
+"will strategically drop packets on specific sides of a connection between "
+"peers to ensure the peer's bandwidth is not overwhelmed. The bandwidth "
+"parameters also determine the window size of a connection which limits the "
+"amount of reliable packets that may be in transit at any given time. Returns "
+"[constant OK] if a client was created, [constant ERR_ALREADY_IN_USE] if this "
+"NetworkedMultiplayerENet instance already has an open connection (in which "
+"case you need to call [method close_connection] first) or [constant "
+"ERR_CANT_CREATE] if the client could not be created. If [code]client_port[/"
+"code] is specified, the client will also listen to the given port; this is "
+"useful for some NAT traversal techniques."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:52
+msgid ""
+"Create server that listens to connections via [code]port[/code]. The port "
+"needs to be an available, unused port between 0 and 65535. Note that ports "
+"below 1024 are privileged and may require elevated permissions depending on "
+"the platform. To change the interface the server listens on, use [method "
+"set_bind_ip]. The default IP is the wildcard [code]\"*\"[/code], which "
+"listens on all available interfaces. [code]max_clients[/code] is the maximum "
+"number of clients that are allowed at once, any number up to 4095 may be "
+"used, although the achievable number of simultaneous clients may be far "
+"lower and depends on the application. For additional details on the "
+"bandwidth parameters, see [method create_client]. Returns [constant OK] if a "
+"server was created, [constant ERR_ALREADY_IN_USE] if this "
+"NetworkedMultiplayerENet instance already has an open connection (in which "
+"case you need to call [method close_connection] first) or [constant "
+"ERR_CANT_CREATE] if the server could not be created."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:63
+msgid ""
+"Disconnect the given peer. If \"now\" is set to [code]true[/code], the "
+"connection will be closed immediately without flushing queued messages."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:70
+msgid ""
+"Returns the channel of the last packet fetched via [method PacketPeer."
+"get_packet]."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:77
+msgid ""
+"Returns the channel of the next packet that will be retrieved via [method "
+"PacketPeer.get_packet]."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:86
+#: modules/websocket/doc_classes/WebSocketServer.xml:33
+msgid "Returns the IP address of the given peer."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:95
+#: modules/websocket/doc_classes/WebSocketServer.xml:42
+msgid "Returns the remote port of the given peer."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:104
+msgid ""
+"The IP used when creating a server. This is set to the wildcard [code]\"*\"[/"
+"code] by default, which binds to all available interfaces. The given IP "
+"needs to be in IPv4 or IPv6 address format, for example: "
+"[code]\"192.168.1.1\"[/code]."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:113
+msgid ""
+"Configure the [X509Certificate] to use when [member use_dtls] is [code]true[/"
+"code]. For servers, you must also setup the [CryptoKey] via [method "
+"set_dtls_key]."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:122
+msgid ""
+"Configure the [CryptoKey] to use when [member use_dtls] is [code]true[/"
+"code]. Remember to also call [method set_dtls_certificate] to setup your "
+"[X509Certificate]."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:128
+msgid ""
+"Enforce ordered packets when using [constant NetworkedMultiplayerPeer."
+"TRANSFER_MODE_UNRELIABLE] (thus behaving similarly to [constant "
+"NetworkedMultiplayerPeer.TRANSFER_MODE_UNRELIABLE_ORDERED]). This is the "
+"only way to use ordering with the RPC system."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:131
+msgid ""
+"The number of channels to be used by ENet. Channels are used to separate "
+"different kinds of data. In reliable or ordered mode, for example, the "
+"packet delivery order is ensured on a per-channel basis. This is done to "
+"combat latency and reduces ordering restrictions on packets. The delivery "
+"status of a packet in one channel won't stall the delivery of other packets "
+"in another channel."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:134
+msgid ""
+"The compression method used for network packets. These have different "
+"tradeoffs of compression speed versus bandwidth, you may need to test which "
+"one works best for your use case if you use compression at all."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:137
+msgid ""
+"Enable or disable certificate verification when [member use_dtls] "
+"[code]true[/code]."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:141
+msgid ""
+"Enable or disable the server feature that notifies clients of other peers' "
+"connection/disconnection, and relays messages between them. When this option "
+"is [code]false[/code], clients won't be automatically notified of other "
+"peers and won't be able to send them packets through the server."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:144
+msgid ""
+"Set the default channel to be used to transfer data. By default, this value "
+"is [code]-1[/code] which means that ENet will only use 2 channels: one for "
+"reliable packets, and one for unreliable packets. The channel [code]0[/code] "
+"is reserved and cannot be used. Setting this member to any value between "
+"[code]0[/code] and [member channel_count] (excluded) will force ENet to use "
+"that channel for sending data. See [member channel_count] for more "
+"information about ENet channels."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:148
+msgid ""
+"When enabled, the client or server created by this peer, will use "
+"[PacketPeerDTLS] instead of raw UDP sockets for communicating with the "
+"remote peer. This will make the communication encrypted with DTLS at the "
+"cost of higher resource usage and potentially larger packet size.\n"
+"Note: When creating a DTLS server, make sure you setup the key/certificate "
+"pair via [method set_dtls_key] and [method set_dtls_certificate]. For DTLS "
+"clients, have a look at the [member dtls_verify] option, and configure the "
+"certificate accordingly via [method set_dtls_certificate]."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:154
+msgid ""
+"No compression. This uses the most bandwidth, but has the upside of "
+"requiring the fewest CPU resources."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:157
+msgid "ENet's built-in range encoding."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:160
+msgid ""
+"[url=http://fastlz.org/]FastLZ[/url] compression. This option uses less CPU "
+"resources compared to [constant COMPRESS_ZLIB], at the expense of using more "
+"bandwidth."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:163
+msgid ""
+"[url=https://www.zlib.net/]Zlib[/url] compression. This option uses less "
+"bandwidth compared to [constant COMPRESS_FASTLZ], at the expense of using "
+"more CPU resources."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:166
+msgid "[url=https://facebook.github.io/zstd/]Zstandard[/url] compression."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:4
+msgid "A high-level network interface to simplify multiplayer interactions."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:7
+msgid ""
+"Manages the connection to network peers. Assigns unique IDs to each client "
+"connected to the server."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:17
+msgid ""
+"Returns the current state of the connection. See [enum ConnectionStatus]."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:24
+msgid ""
+"Returns the ID of the [NetworkedMultiplayerPeer] who sent the most recent "
+"packet."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:31
+msgid "Returns the ID of this [NetworkedMultiplayerPeer]."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:38
+msgid "Waits up to 1 second to receive a new network event."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:47
+msgid ""
+"Sets the peer to which packets will be sent.\n"
+"The [code]id[/code] can be one of: [constant TARGET_PEER_BROADCAST] to send "
+"to all connected peers, [constant 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 "
+"[constant TARGET_PEER_BROADCAST]."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:54
+msgid ""
+"If [code]true[/code], this [NetworkedMultiplayerPeer] refuses new "
+"connections."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:57
+msgid ""
+"The manner in which to send packets to the [code]target_peer[/code]. See "
+"[enum TransferMode]."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:63
+msgid "Emitted when a connection attempt fails."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:68
+msgid "Emitted when a connection attempt succeeds."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:75
+msgid "Emitted by the server when a client connects."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:82
+msgid "Emitted by the server when a client disconnects."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:87
+msgid "Emitted by clients when the server disconnects."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:93
+msgid ""
+"Packets are not acknowledged, no resend attempts are made for lost packets. "
+"Packets may arrive in any order. Potentially faster than [constant "
+"TRANSFER_MODE_UNRELIABLE_ORDERED]. Use for non-critical data, and always "
+"consider whether the order matters."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:96
+msgid ""
+"Packets are not acknowledged, no resend attempts are made for lost packets. "
+"Packets are received in the order they were sent in. Potentially faster than "
+"[constant TRANSFER_MODE_RELIABLE]. Use for non-critical data or data that "
+"would be outdated if received late due to resend attempt(s) anyway, for "
+"example movement and positional data."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:99
+msgid ""
+"Packets must be received and resend attempts should be made until the "
+"packets are acknowledged. Packets must be received in the order they were "
+"sent in. Most reliable transfer mode, but potentially the slowest due to the "
+"overhead. Use for critical data that must be transmitted and arrive in "
+"order, for example an ability being triggered or a chat message. Consider "
+"carefully if the information really is critical, and use sparingly."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:102
+msgid "The ongoing connection disconnected."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:105
+msgid "A connection attempt is ongoing."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:108
+msgid "The connection attempt succeeded."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:111
+msgid "Packets are sent to the server and then redistributed to other peers."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:114
+msgid "Packets are sent to the server alone."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:4
+msgid ""
+"Scalable texture-based frame that tiles the texture's centers and sides, but "
+"keeps the corners' original size. Perfect for panels and dialog boxes."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:7
+msgid ""
+"Also known as 9-slice panels, NinePatchRect produces clean panels of any "
+"size, based on a small texture. To do so, it splits the texture in a 3×3 "
+"grid. When you scale the node, it tiles the texture's sides horizontally or "
+"vertically, the center on both axes but it doesn't scale or tile the corners."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:18
+msgid ""
+"Returns the size of the margin identified by the given [enum Margin] "
+"constant."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:29
+msgid ""
+"Sets the size of the margin identified by the given [enum Margin] constant "
+"to [code]value[/code] in pixels."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:35 doc/classes/NinePatchRect.xml:38
+#: doc/classes/NinePatchRect.xml:72 doc/classes/NinePatchRect.xml:75
+#: doc/classes/NinePatchRect.xml:78
+msgid "Doesn't do anything at the time of writing."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:41
+msgid ""
+"If [code]true[/code], draw the panel's center. Else, only draw the 9-slice's "
+"borders."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:45
+msgid ""
+"The height of the 9-slice's bottom row. A margin of 16 means the 9-slice's "
+"bottom corners and side will have a height of 16 pixels. You can set all 4 "
+"margin values individually to create panels with non-uniform borders."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:48
+msgid "The height of the 9-slice's left column."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:51
+msgid "The height of the 9-slice's right column."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:54
+msgid "The height of the 9-slice's top row."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:57
+msgid ""
+"Rectangular region of the texture to sample from. If you're working with an "
+"atlas, use this property to define the area the 9-slice should use. All "
+"other properties are relative to this one. If the rect is empty, "
+"NinePatchRect will use the whole texture."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:60
+msgid "The node's texture resource."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:66
+msgid "Emitted when the node's texture changes."
+msgstr ""
+
+#: doc/classes/Node.xml:4
+msgid "Base class for all [i]scene[/i] objects."
+msgstr ""
+
+#: doc/classes/Node.xml:7
+msgid ""
+"Nodes are Godot's building blocks. They can be assigned as the child of "
+"another node, resulting in a tree arrangement. A given node can contain any "
+"number of nodes as children with the requirement that all siblings (direct "
+"children of a node) should have unique names.\n"
+"A tree of nodes is called a [i]scene[/i]. Scenes can be saved to the disk "
+"and then instanced into other scenes. This allows for very high flexibility "
+"in the architecture and data model of Godot projects.\n"
+"[b]Scene tree:[/b] The [SceneTree] contains the active tree of nodes. When a "
+"node is added to the scene tree, it receives the [constant "
+"NOTIFICATION_ENTER_TREE] notification and its [method _enter_tree] callback "
+"is triggered. Child nodes are always added [i]after[/i] their parent node, i."
+"e. the [method _enter_tree] callback of a parent node will be triggered "
+"before its child's.\n"
+"Once all nodes have been added in the scene tree, they receive the [constant "
+"NOTIFICATION_READY] notification and their respective [method _ready] "
+"callbacks are triggered. For groups of nodes, the [method _ready] callback "
+"is called in reverse order, starting with the children and moving up to the "
+"parent nodes.\n"
+"This means that when adding a node to the scene tree, the following order "
+"will be used for the callbacks: [method _enter_tree] of the parent, [method "
+"_enter_tree] of the children, [method _ready] of the children and finally "
+"[method _ready] of the parent (recursively for the entire scene tree).\n"
+"[b]Processing:[/b] Nodes can override the \"process\" state, so that they "
+"receive a callback on each frame requesting them to process (do something). "
+"Normal processing (callback [method _process], toggled with [method "
+"set_process]) happens as fast as possible and is dependent on the frame "
+"rate, so the processing time [i]delta[/i] is passed as an argument. Physics "
+"processing (callback [method _physics_process], toggled with [method "
+"set_physics_process]) happens a fixed number of times per second (60 by "
+"default) and is useful for code related to the physics engine.\n"
+"Nodes can also process input events. When present, the [method _input] "
+"function will be called for each input that the program receives. In many "
+"cases, this can be overkill (unless used for simple projects), and the "
+"[method _unhandled_input] function might be preferred; it is called when the "
+"input event was not handled by anyone else (typically, GUI [Control] nodes), "
+"ensuring that the node only receives the events that were meant for it.\n"
+"To keep track of the scene hierarchy (especially when instancing scenes into "
+"other scenes), an \"owner\" can be set for the node with the [member owner] "
+"property. This keeps track of who instanced what. This is mostly useful when "
+"writing editors and tools, though.\n"
+"Finally, when a node is freed with [method Object.free] or [method "
+"queue_free], it will also free all its children.\n"
+"[b]Groups:[/b] Nodes can be added to as many groups as you want to be easy "
+"to manage, you could create groups like \"enemies\" or \"collectables\" for "
+"example, depending on your game. See [method add_to_group], [method "
+"is_in_group] and [method remove_from_group]. You can then retrieve all nodes "
+"in these groups, iterate them and even call methods on groups via the "
+"methods on [SceneTree].\n"
+"[b]Networking with nodes:[/b] After connecting to a server (or making one, "
+"see [NetworkedMultiplayerENet]), it is possible to use the built-in RPC "
+"(remote procedure call) system to communicate over the network. By calling "
+"[method rpc] with a method name, it will be called locally and in all "
+"connected peers (peers = clients and the server that accepts connections). "
+"To identify which node receives the RPC call, Godot will use its [NodePath] "
+"(make sure node names are the same on all peers). Also, take a look at the "
+"high-level networking tutorial and corresponding demos."
+msgstr ""
+
+#: doc/classes/Node.xml:20
+msgid ""
+"https://docs.godotengine.org/en/latest/getting_started/step_by_step/"
+"scenes_and_nodes.html"
+msgstr ""
+
+#: doc/classes/Node.xml:27
+msgid ""
+"Called when the node enters the [SceneTree] (e.g. upon instancing, scene "
+"changing, or after calling [method add_child] in a script). If the node has "
+"children, its [method _enter_tree] callback will be called first, and then "
+"that of the children.\n"
+"Corresponds to the [constant NOTIFICATION_ENTER_TREE] notification in "
+"[method Object._notification]."
+msgstr ""
+
+#: doc/classes/Node.xml:35
+msgid ""
+"Called when the node is about to leave the [SceneTree] (e.g. upon freeing, "
+"scene changing, or after calling [method remove_child] in a script). If the "
+"node has children, its [method _exit_tree] callback will be called last, "
+"after all its children have left the tree.\n"
+"Corresponds to the [constant NOTIFICATION_EXIT_TREE] notification in [method "
+"Object._notification] and signal [signal tree_exiting]. To get notified when "
+"the node has already left the active tree, connect to the [signal "
+"tree_exited]."
+msgstr ""
+
+#: doc/classes/Node.xml:43
+msgid ""
+"The string returned from this method is displayed as a warning in the Scene "
+"Dock if the script that overrides it is a [code]tool[/code] script.\n"
+"Returning an empty string produces no warning.\n"
+"Call [method update_configuration_warning] when the warning needs to be "
+"updated for this node."
+msgstr ""
+
+#: doc/classes/Node.xml:54
+msgid ""
+"Called when there is an input event. The input event propagates up through "
+"the node tree until a node consumes it.\n"
+"It is only called if input processing is enabled, which is done "
+"automatically if this method is overridden, and can be toggled with [method "
+"set_process_input].\n"
+"To consume the input event and stop it propagating further to other nodes, "
+"[method Viewport.set_input_as_handled] can be called.\n"
+"For gameplay input, [method _unhandled_input] and [method "
+"_unhandled_key_input] are usually a better fit as they allow the GUI to "
+"intercept the events first.\n"
+"[b]Note:[/b] This method is only called if the node is present in the scene "
+"tree (i.e. if it's not orphan)."
+msgstr ""
+
+#: doc/classes/Node.xml:67
+msgid ""
+"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 "
+"[code]delta[/code] variable should be constant.\n"
+"It is only called if physics processing is enabled, which is done "
+"automatically if this method is overridden, and can be toggled with [method "
+"set_physics_process].\n"
+"Corresponds to the [constant NOTIFICATION_PHYSICS_PROCESS] notification in "
+"[method Object._notification].\n"
+"[b]Note:[/b] This method is only called if the node is present in the scene "
+"tree (i.e. if it's not orphan)."
+msgstr ""
+
+#: doc/classes/Node.xml:79
+msgid ""
+"Called during the processing step of the main loop. Processing happens at "
+"every frame and as fast as possible, so the [code]delta[/code] time since "
+"the previous frame is not constant.\n"
+"It is only called if processing is enabled, which is done automatically if "
+"this method is overridden, and can be toggled with [method set_process].\n"
+"Corresponds to the [constant NOTIFICATION_PROCESS] notification in [method "
+"Object._notification].\n"
+"[b]Note:[/b] This method is only called if the node is present in the scene "
+"tree (i.e. if it's not orphan)."
+msgstr ""
+
+#: doc/classes/Node.xml:89
+msgid ""
+"Called when the node is \"ready\", i.e. when both the node and its children "
+"have entered the scene tree. If the node has children, their [method _ready] "
+"callbacks get triggered first, and the parent node will receive the ready "
+"notification afterwards.\n"
+"Corresponds to the [constant NOTIFICATION_READY] notification in [method "
+"Object._notification]. See also the [code]onready[/code] keyword for "
+"variables.\n"
+"Usually used for initialization. For even earlier initialization, [method "
+"Object._init] may be used. See also [method _enter_tree].\n"
+"[b]Note:[/b] [method _ready] may be called only once for each node. After "
+"removing a node from the scene tree and adding again, [code]_ready[/code] "
+"will not be called for the second time. This can be bypassed with requesting "
+"another call with [method request_ready], which may be called anywhere "
+"before adding the node again."
+msgstr ""
+
+#: doc/classes/Node.xml:101
+msgid ""
+"Called when an [InputEvent] hasn't been consumed by [method _input] or any "
+"GUI. The input event propagates up through the node tree until a node "
+"consumes it.\n"
+"It is only called if unhandled input processing is enabled, which is done "
+"automatically if this method is overridden, and can be toggled with [method "
+"set_process_unhandled_input].\n"
+"To consume the input event and stop it propagating further to other nodes, "
+"[method Viewport.set_input_as_handled] can be called.\n"
+"For gameplay input, this and [method _unhandled_key_input] are usually a "
+"better fit than [method _input] as they allow the GUI to intercept the "
+"events first.\n"
+"[b]Note:[/b] This method is only called if the node is present in the scene "
+"tree (i.e. if it's not orphan)."
+msgstr ""
+
+#: doc/classes/Node.xml:114
+msgid ""
+"Called when an [InputEventKey] hasn't been consumed by [method _input] or "
+"any GUI. The input event propagates up through the node tree until a node "
+"consumes it.\n"
+"It is only called if unhandled key input processing is enabled, which is "
+"done automatically if this method is overridden, and can be toggled with "
+"[method set_process_unhandled_key_input].\n"
+"To consume the input event and stop it propagating further to other nodes, "
+"[method Viewport.set_input_as_handled] can be called.\n"
+"For gameplay input, this and [method _unhandled_input] are usually a better "
+"fit than [method _input] as they allow the GUI to intercept the events "
+"first.\n"
+"[b]Note:[/b] This method is only called if the node is present in the scene "
+"tree (i.e. if it's not orphan)."
+msgstr ""
+
+#: doc/classes/Node.xml:129
+msgid ""
+"Adds a child node. Nodes can have any number of children, but every child "
+"must have a unique name. Child nodes are automatically deleted when the "
+"parent node is deleted, so an entire scene can be removed by deleting its "
+"topmost node.\n"
+"If [code]legible_unique_name[/code] is [code]true[/code], the child node "
+"will have an human-readable name based on the name of the node being "
+"instanced instead of its type.\n"
+"[b]Note:[/b] If the child node already has a parent, the function will fail. "
+"Use [method remove_child] first to remove the node from its current parent. "
+"For example:\n"
+"[codeblock]\n"
+"if child_node.get_parent():\n"
+" child_node.get_parent().remove_child(child_node)\n"
+"add_child(child_node)\n"
+"[/codeblock]\n"
+"If you need the child node to be added below a specific node in the list of "
+"children, use [method add_sibling] instead of this method.\n"
+"[b]Note:[/b] If you want a child to be persisted to a [PackedScene], you "
+"must set [member owner] in addition to calling [method add_child]. This is "
+"typically relevant for [url=https://godot.readthedocs.io/en/latest/tutorials/"
+"misc/running_code_in_the_editor.html]tool scripts[/url] and [url=https://"
+"godot.readthedocs.io/en/latest/tutorials/plugins/editor/index.html]editor "
+"plugins[/url]. If [method add_child] is called without setting [member "
+"owner], the newly added [Node] will not be visible in the scene tree, though "
+"it will be visible in the 2D/3D view."
+msgstr ""
+
+#: doc/classes/Node.xml:149
+msgid ""
+"Adds a [code]sibling[/code] node to current's node parent, at the the same "
+"level as that node, right below it.\n"
+"If [code]legible_unique_name[/code] is [code]true[/code], the child node "
+"will have an human-readable name based on the name of the node being "
+"instanced instead of its type.\n"
+"Use [method add_child] instead of this method if you don't need the child "
+"node to be added below a specific node in the list of children."
+msgstr ""
+
+#: doc/classes/Node.xml:162
+msgid ""
+"Adds the node to a group. Groups are helpers to name and organize a subset "
+"of nodes, for example \"enemies\" or \"collectables\". A node can be in any "
+"number of groups. Nodes can be assigned a group at any time, but will not be "
+"added until they are inside the scene tree (see [method is_inside_tree]). "
+"See notes in the description, and the group methods in [SceneTree].\n"
+"The [code]persistent[/code] option is used when packing node to "
+"[PackedScene] and saving to file. Non-persistent groups aren't stored."
+msgstr ""
+
+#: doc/classes/Node.xml:170
+msgid ""
+"Returns [code]true[/code] if the node can process while the scene tree is "
+"paused (see [member pause_mode]). Always returns [code]true[/code] if the "
+"scene tree is not paused, and [code]false[/code] if the node is not in the "
+"tree."
+msgstr ""
+
+#: doc/classes/Node.xml:179
+msgid ""
+"Duplicates the node, returning a new node.\n"
+"You can fine-tune the behavior using the [code]flags[/code] (see [enum "
+"DuplicateFlags]).\n"
+"[b]Note:[/b] It will not work properly if the node contains a script with "
+"constructor arguments (i.e. needs to supply arguments to [method Object."
+"_init] method). In that case, the node will be duplicated without a script."
+msgstr ""
+
+#: doc/classes/Node.xml:194
+msgid ""
+"Finds a descendant of this node whose name matches [code]mask[/code] as in "
+"[method String.match] (i.e. case-sensitive, but [code]\"*\"[/code] matches "
+"zero or more characters and [code]\"?\"[/code] matches any single character "
+"except [code]\".\"[/code]).\n"
+"[b]Note:[/b] It does not match against the full path, just against "
+"individual node names.\n"
+"If [code]owned[/code] is [code]true[/code], this method only finds nodes "
+"whose owner is this node. This is especially important for scenes "
+"instantiated through a script, because those scenes don't have an owner."
+msgstr ""
+
+#: doc/classes/Node.xml:205
+msgid ""
+"Finds the first parent of the current node whose name matches [code]mask[/"
+"code] as in [method String.match] (i.e. case-sensitive, but [code]\"*\"[/"
+"code] matches zero or more characters and [code]\"?\"[/code] matches any "
+"single character except [code]\".\"[/code]).\n"
+"[b]Note:[/b] It does not match against the full path, just against "
+"individual node names."
+msgstr ""
+
+#: doc/classes/Node.xml:215
+msgid ""
+"Returns a child node by its index (see [method get_child_count]). This "
+"method is often used for iterating all children of a node.\n"
+"To access a child node via its name, use [method get_node]."
+msgstr ""
+
+#: doc/classes/Node.xml:223
+msgid "Returns the number of child nodes."
+msgstr ""
+
+#: doc/classes/Node.xml:230
+msgid "Returns an array of references to node's children."
+msgstr ""
+
+#: doc/classes/Node.xml:237
+msgid "Returns an array listing the groups that the node is a member of."
+msgstr ""
+
+#: doc/classes/Node.xml:244
+msgid ""
+"Returns the node's order in the scene tree branch. For example, if called on "
+"the first child node the position is [code]0[/code]."
+msgstr ""
+
+#: doc/classes/Node.xml:251
+msgid ""
+"Returns the peer ID of the network master for this node. See [method "
+"set_network_master]."
+msgstr ""
+
+#: doc/classes/Node.xml:260
+msgid ""
+"Fetches a node. The [NodePath] can be either a relative path (from the "
+"current node) or an absolute path (in the scene tree) to a node. If the path "
+"does not exist, a [code]null instance[/code] is returned and an error is "
+"logged. Attempts to access methods on the return value will result in an "
+"\"Attempt to call <method> on a null instance.\" error.\n"
+"[b]Note:[/b] Fetching absolute paths only works when the node is inside the "
+"scene tree (see [method is_inside_tree]).\n"
+"[b]Example:[/b] Assume your current node is Character and the following "
+"tree:\n"
+"[codeblock]\n"
+"/root\n"
+"/root/Character\n"
+"/root/Character/Sword\n"
+"/root/Character/Backpack/Dagger\n"
+"/root/MyGame\n"
+"/root/Swamp/Alligator\n"
+"/root/Swamp/Mosquito\n"
+"/root/Swamp/Goblin\n"
+"[/codeblock]\n"
+"Possible paths are:\n"
+"[codeblock]\n"
+"get_node(\"Sword\")\n"
+"get_node(\"Backpack/Dagger\")\n"
+"get_node(\"../Swamp/Alligator\")\n"
+"get_node(\"/root/MyGame\")\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Node.xml:288
+msgid ""
+"Fetches a node and one of its resources as specified by the [NodePath]'s "
+"subname (e.g. [code]Area2D/CollisionShape2D:shape[/code]). If several nested "
+"resources are specified in the [NodePath], the last one will be fetched.\n"
+"The return value is an array of size 3: the first index points to the [Node] "
+"(or [code]null[/code] if not found), the second index points to the "
+"[Resource] (or [code]null[/code] if not found), and the third index is the "
+"remaining [NodePath], if any.\n"
+"For example, assuming that [code]Area2D/CollisionShape2D[/code] is a valid "
+"node and that its [code]shape[/code] property has been assigned a "
+"[RectangleShape2D] resource, one could have this kind of output:\n"
+"[codeblock]\n"
+"print(get_node_and_resource(\"Area2D/CollisionShape2D\")) # "
+"[[CollisionShape2D:1161], Null, ]\n"
+"print(get_node_and_resource(\"Area2D/CollisionShape2D:shape\")) # "
+"[[CollisionShape2D:1161], [RectangleShape2D:1156], ]\n"
+"print(get_node_and_resource(\"Area2D/CollisionShape2D:shape:extents\")) # "
+"[[CollisionShape2D:1161], [RectangleShape2D:1156], :extents]\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Node.xml:304
+msgid ""
+"Similar to [method get_node], but does not log an error if [code]path[/code] "
+"does not point to a valid [Node]."
+msgstr ""
+
+#: doc/classes/Node.xml:311
+msgid ""
+"Returns the parent node of the current node, or a [code]null instance[/code] "
+"if the node lacks a parent."
+msgstr ""
+
+#: doc/classes/Node.xml:318
+msgid ""
+"Returns the absolute path of the current node. This only works if the "
+"current node is inside the scene tree (see [method is_inside_tree])."
+msgstr ""
+
+#: doc/classes/Node.xml:327
+msgid ""
+"Returns the relative [NodePath] from this node to the specified [code]node[/"
+"code]. Both nodes must be in the same scene or the function will fail."
+msgstr ""
+
+#: doc/classes/Node.xml:334
+msgid ""
+"Returns the time elapsed since the last physics-bound frame (see [method "
+"_physics_process]). This is always a constant value in physics processing "
+"unless the frames per second is changed via [member Engine."
+"iterations_per_second]."
+msgstr ""
+
+#: doc/classes/Node.xml:341
+msgid ""
+"Returns the time elapsed (in seconds) since the last process callback. This "
+"value may vary from frame to frame."
+msgstr ""
+
+#: doc/classes/Node.xml:348
+msgid ""
+"Returns [code]true[/code] if this is an instance load placeholder. See "
+"[InstancePlaceholder]."
+msgstr ""
+
+#: doc/classes/Node.xml:355
+msgid "Returns the [SceneTree] that contains this node."
+msgstr ""
+
+#: doc/classes/Node.xml:362
+msgid "Returns the node's [Viewport]."
+msgstr ""
+
+#: doc/classes/Node.xml:371
+msgid ""
+"Returns [code]true[/code] if the node that the [NodePath] points to exists."
+msgstr ""
+
+#: doc/classes/Node.xml:380
+msgid ""
+"Returns [code]true[/code] if the [NodePath] points to a valid node and its "
+"subname points to a valid resource, e.g. [code]Area2D/CollisionShape2D:"
+"shape[/code]. Properties with a non-[Resource] type (e.g. nodes or primitive "
+"math types) are not considered resources."
+msgstr ""
+
+#: doc/classes/Node.xml:389
+msgid ""
+"Returns [code]true[/code] if the given node is a direct or indirect child of "
+"the current node."
+msgstr ""
+
+#: doc/classes/Node.xml:396
+msgid ""
+"Returns [code]true[/code] if the node is folded (collapsed) in the Scene "
+"dock."
+msgstr ""
+
+#: doc/classes/Node.xml:405
+msgid ""
+"Returns [code]true[/code] if the given node occurs later in the scene "
+"hierarchy than the current node."
+msgstr ""
+
+#: doc/classes/Node.xml:414
+msgid ""
+"Returns [code]true[/code] if this node is in the specified group. See notes "
+"in the description, and the group methods in [SceneTree]."
+msgstr ""
+
+#: doc/classes/Node.xml:421
+msgid ""
+"Returns [code]true[/code] if this node is currently inside a [SceneTree]."
+msgstr ""
+
+#: doc/classes/Node.xml:428
+msgid ""
+"Returns [code]true[/code] if the local system is the master of this node."
+msgstr ""
+
+#: doc/classes/Node.xml:435
+msgid ""
+"Returns [code]true[/code] if physics processing is enabled (see [method "
+"set_physics_process])."
+msgstr ""
+
+#: doc/classes/Node.xml:442
+msgid ""
+"Returns [code]true[/code] if internal physics processing is enabled (see "
+"[method set_physics_process_internal])."
+msgstr ""
+
+#: doc/classes/Node.xml:449
+msgid ""
+"Returns [code]true[/code] if processing is enabled (see [method "
+"set_process])."
+msgstr ""
+
+#: doc/classes/Node.xml:456
+msgid ""
+"Returns [code]true[/code] if the node is processing input (see [method "
+"set_process_input])."
+msgstr ""
+
+#: doc/classes/Node.xml:463
+msgid ""
+"Returns [code]true[/code] if internal processing is enabled (see [method "
+"set_process_internal])."
+msgstr ""
+
+#: doc/classes/Node.xml:470
+msgid ""
+"Returns [code]true[/code] if the node is processing unhandled input (see "
+"[method set_process_unhandled_input])."
+msgstr ""
+
+#: doc/classes/Node.xml:477
+msgid ""
+"Returns [code]true[/code] if the node is processing unhandled key input (see "
+"[method set_process_unhandled_key_input])."
+msgstr ""
+
+#: doc/classes/Node.xml:488
+msgid ""
+"Moves a child node to a different position (order) among the other children. "
+"Since calls, signals, etc are performed by tree order, changing the order of "
+"children nodes may be useful."
+msgstr ""
+
+#: doc/classes/Node.xml:495
+msgid ""
+"Prints all stray nodes (nodes outside the [SceneTree]). Used for debugging. "
+"Works only in debug builds."
+msgstr ""
+
+#: doc/classes/Node.xml:502
+msgid ""
+"Prints the tree to stdout. Used mainly for debugging purposes. This version "
+"displays the path relative to the current node, and is good for copy/pasting "
+"into the [method get_node] function.\n"
+"[b]Example output:[/b]\n"
+"[codeblock]\n"
+"TheGame\n"
+"TheGame/Menu\n"
+"TheGame/Menu/Label\n"
+"TheGame/Menu/Camera2D\n"
+"TheGame/SplashScreen\n"
+"TheGame/SplashScreen/Camera2D\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Node.xml:518
+msgid ""
+"Similar to [method print_tree], this prints the tree to stdout. This version "
+"displays a more graphical representation similar to what is displayed in the "
+"scene inspector. It is useful for inspecting larger trees.\n"
+"[b]Example output:[/b]\n"
+"[codeblock]\n"
+" â”–â•´TheGame\n"
+" â” â•´Menu\n"
+" ┃ ┠╴Label\n"
+" ┃ ┖╴Camera2D\n"
+" â”–-SplashScreen\n"
+" â”–â•´Camera2D\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Node.xml:540
+msgid ""
+"Calls the given method (if present) with the arguments given in [code]args[/"
+"code] on this node and recursively on all its children. If the "
+"[code]parent_first[/code] argument is [code]true[/code], the method will be "
+"called on the current node first, then on all its children. If "
+"[code]parent_first[/code] is [code]false[/code], the children will be called "
+"first."
+msgstr ""
+
+#: doc/classes/Node.xml:549
+msgid ""
+"Notifies the current node and all its children recursively by calling "
+"[method Object.notification] on all of them."
+msgstr ""
+
+#: doc/classes/Node.xml:556
+msgid ""
+"Queues a node for deletion at the end of the current frame. When deleted, "
+"all of its child nodes will be deleted as well. This method ensures it's "
+"safe to delete the node, contrary to [method Object.free]. Use [method "
+"Object.is_queued_for_deletion] to check whether a node will be deleted at "
+"the end of the frame."
+msgstr ""
+
+#: doc/classes/Node.xml:563
+msgid ""
+"Moves this node to the bottom of parent node's children hierarchy. This is "
+"often useful in GUIs ([Control] nodes), because their order of drawing "
+"depends on their order in the tree, i.e. the further they are on the node "
+"list, the higher they are drawn. After using [code]raise[/code], a Control "
+"will be drawn on top of their siblings."
+msgstr ""
+
+#: doc/classes/Node.xml:570
+msgid ""
+"Removes a node and sets all its children as children of the parent node (if "
+"it exists). All event subscriptions that pass by the removed node will be "
+"unsubscribed."
+msgstr ""
+
+#: doc/classes/Node.xml:579
+msgid ""
+"Removes a child node. The node is NOT deleted and must be deleted manually."
+msgstr ""
+
+#: doc/classes/Node.xml:588
+msgid ""
+"Removes a node from a group. See notes in the description, and the group "
+"methods in [SceneTree]."
+msgstr ""
+
+#: doc/classes/Node.xml:599
+msgid ""
+"Replaces a node in a scene by the given one. Subscriptions that pass through "
+"this node will be lost."
+msgstr ""
+
+#: doc/classes/Node.xml:606
+msgid ""
+"Requests that [code]_ready[/code] be called again. Note that the method "
+"won't be called immediately, but is scheduled for when the node is added to "
+"the scene tree again (see [method _ready]). [code]_ready[/code] is called "
+"only for the node which requested it, which means that you need to request "
+"ready for each child if you want them to call [code]_ready[/code] too (in "
+"which case, [code]_ready[/code] will be called in the same order as it would "
+"normally)."
+msgstr ""
+
+#: doc/classes/Node.xml:615
+msgid ""
+"Sends a remote procedure call request for the given [code]method[/code] to "
+"peers on the network (and locally), optionally sending all additional "
+"arguments as arguments to the method called by the RPC. The call request "
+"will only be received by nodes with the same [NodePath], including the exact "
+"same node name. Behaviour depends on the RPC configuration for the given "
+"method, see [method rpc_config]. Methods are not exposed to RPCs by default. "
+"See also [method rset] and [method rset_config] for properties. Returns an "
+"empty [Variant].\n"
+"[b]Note:[/b] You can only safely use RPCs on clients after you received the "
+"[code]connected_to_server[/code] signal from the [SceneTree]. You also need "
+"to keep track of the connection state, either by the [SceneTree] signals "
+"like [code]server_disconnected[/code] or by checking [code]SceneTree."
+"network_peer.get_connection_status() == CONNECTION_CONNECTED[/code]."
+msgstr ""
+
+#: doc/classes/Node.xml:627
+msgid ""
+"Changes the RPC mode for the given [code]method[/code] to the given "
+"[code]mode[/code]. See [enum MultiplayerAPI.RPCMode]. An alternative is "
+"annotating methods and properties with the corresponding keywords "
+"([code]remote[/code], [code]master[/code], [code]puppet[/code], "
+"[code]remotesync[/code], [code]mastersync[/code], [code]puppetsync[/code]). "
+"By default, methods are not exposed to networking (and RPCs). See also "
+"[method rset] and [method rset_config] for properties."
+msgstr ""
+
+#: doc/classes/Node.xml:638
+msgid ""
+"Sends a [method rpc] to a specific peer identified by [code]peer_id[/code] "
+"(see [method NetworkedMultiplayerPeer.set_target_peer]). Returns an empty "
+"[Variant]."
+msgstr ""
+
+#: doc/classes/Node.xml:647
+msgid ""
+"Sends a [method rpc] using an unreliable protocol. Returns an empty "
+"[Variant]."
+msgstr ""
+
+#: doc/classes/Node.xml:658
+msgid ""
+"Sends a [method rpc] to a specific peer identified by [code]peer_id[/code] "
+"using an unreliable protocol (see [method NetworkedMultiplayerPeer."
+"set_target_peer]). Returns an empty [Variant]."
+msgstr ""
+
+#: doc/classes/Node.xml:669
+msgid ""
+"Remotely changes a property's value on other peers (and locally). Behaviour "
+"depends on the RPC configuration for the given property, see [method "
+"rset_config]. See also [method rpc] for RPCs for methods, most information "
+"applies to this method as well."
+msgstr ""
+
+#: doc/classes/Node.xml:680
+msgid ""
+"Changes the RPC mode for the given [code]property[/code] to the given "
+"[code]mode[/code]. See [enum MultiplayerAPI.RPCMode]. An alternative is "
+"annotating methods and properties with the corresponding keywords "
+"([code]remote[/code], [code]master[/code], [code]puppet[/code], "
+"[code]remotesync[/code], [code]mastersync[/code], [code]puppetsync[/code]). "
+"By default, properties are not exposed to networking (and RPCs). See also "
+"[method rpc] and [method rpc_config] for methods."
+msgstr ""
+
+#: doc/classes/Node.xml:693
+msgid ""
+"Remotely changes the property's value on a specific peer identified by "
+"[code]peer_id[/code] (see [method NetworkedMultiplayerPeer.set_target_peer])."
+msgstr ""
+
+#: doc/classes/Node.xml:704
+msgid ""
+"Remotely changes the property's value on other peers (and locally) using an "
+"unreliable protocol."
+msgstr ""
+
+#: doc/classes/Node.xml:717
+msgid ""
+"Remotely changes property's value on a specific peer identified by "
+"[code]peer_id[/code] using an unreliable protocol (see [method "
+"NetworkedMultiplayerPeer.set_target_peer])."
+msgstr ""
+
+#: doc/classes/Node.xml:726
+msgid "Sets the folded state of the node in the Scene dock."
+msgstr ""
+
+#: doc/classes/Node.xml:737
+msgid ""
+"Sets the node's network master to the peer with the given peer ID. The "
+"network master is the peer that has authority over the node on the network. "
+"Useful in conjunction with the [code]master[/code] and [code]puppet[/code] "
+"keywords. Inherited from the parent node by default, which ultimately "
+"defaults to peer ID 1 (the server). If [code]recursive[/code], the given "
+"peer is recursively set as the master for all children of this node."
+msgstr ""
+
+#: doc/classes/Node.xml:746
+msgid ""
+"Enables or disables physics (i.e. fixed framerate) processing. When a node "
+"is being processed, it will receive a [constant "
+"NOTIFICATION_PHYSICS_PROCESS] at a fixed (usually 60 FPS, see [member Engine."
+"iterations_per_second] to change) interval (and the [method "
+"_physics_process] callback will be called if exists). Enabled automatically "
+"if [method _physics_process] is overridden. Any calls to this before [method "
+"_ready] will be ignored."
+msgstr ""
+
+#: doc/classes/Node.xml:755
+msgid ""
+"Enables or disables internal physics for this node. Internal physics "
+"processing happens in isolation from the normal [method _physics_process] "
+"calls and is used by some nodes internally to guarantee proper functioning "
+"even if the node is paused or physics processing is disabled for scripting "
+"([method set_physics_process]). Only useful for advanced uses to manipulate "
+"built-in nodes' behaviour."
+msgstr ""
+
+#: doc/classes/Node.xml:764
+msgid ""
+"Enables or disables processing. When a node is being processed, it will "
+"receive a [constant NOTIFICATION_PROCESS] on every drawn frame (and the "
+"[method _process] callback will be called if exists). Enabled automatically "
+"if [method _process] is overridden. Any calls to this before [method _ready] "
+"will be ignored."
+msgstr ""
+
+#: doc/classes/Node.xml:773
+msgid ""
+"Enables or disables input processing. This is not required for GUI controls! "
+"Enabled automatically if [method _input] is overridden. Any calls to this "
+"before [method _ready] will be ignored."
+msgstr ""
+
+#: doc/classes/Node.xml:782
+msgid ""
+"Enables or disabled internal processing for this node. Internal processing "
+"happens in isolation from the normal [method _process] calls and is used by "
+"some nodes internally to guarantee proper functioning even if the node is "
+"paused or processing is disabled for scripting ([method set_process]). Only "
+"useful for advanced uses to manipulate built-in nodes' behaviour."
+msgstr ""
+
+#: doc/classes/Node.xml:791
+msgid ""
+"Enables unhandled input processing. This is not required for GUI controls! "
+"It enables the node to receive all input that was not previously handled "
+"(usually by a [Control]). Enabled automatically if [method _unhandled_input] "
+"is overridden. Any calls to this before [method _ready] will be ignored."
+msgstr ""
+
+#: doc/classes/Node.xml:800
+msgid ""
+"Enables unhandled key input processing. Enabled automatically if [method "
+"_unhandled_key_input] is overridden. Any calls to this before [method "
+"_ready] will be ignored."
+msgstr ""
+
+#: doc/classes/Node.xml:809
+msgid ""
+"Sets whether this is an instance load placeholder. See [InstancePlaceholder]."
+msgstr ""
+
+#: doc/classes/Node.xml:816
+msgid ""
+"Updates the warning displayed for this node in the Scene Dock.\n"
+"Use [method _get_configuration_warning] to setup the warning message to "
+"display."
+msgstr ""
+
+#: doc/classes/Node.xml:823
+msgid ""
+"The override to the default [MultiplayerAPI]. Set to [code]null[/code] to "
+"use the default [SceneTree] one."
+msgstr ""
+
+#: doc/classes/Node.xml:826
+msgid ""
+"When a scene is instanced from a file, its topmost node contains the "
+"filename from which it was loaded."
+msgstr ""
+
+#: doc/classes/Node.xml:829
+msgid ""
+"The [MultiplayerAPI] instance associated with this node. Either the [member "
+"custom_multiplayer], or the default SceneTree one (if inside tree)."
+msgstr ""
+
+#: doc/classes/Node.xml:832
+msgid ""
+"The name of the node. This name is unique among the siblings (other child "
+"nodes from the same parent). When set to an existing name, the node will be "
+"automatically renamed."
+msgstr ""
+
+#: doc/classes/Node.xml:835
+msgid ""
+"The node owner. A node can have any other node as owner (as long as it is a "
+"valid parent, grandparent, etc. ascending in the tree). When saving a node "
+"(using [PackedScene]), all the nodes it owns will be saved with it. This "
+"allows for the creation of complex [SceneTree]s, with instancing and "
+"subinstancing."
+msgstr ""
+
+#: doc/classes/Node.xml:838
+msgid "Pause mode. How the node will behave if the [SceneTree] is paused."
+msgstr ""
+
+#: doc/classes/Node.xml:841
+msgid ""
+"The node's priority in the execution order of the enabled processing "
+"callbacks (i.e. [constant NOTIFICATION_PROCESS], [constant "
+"NOTIFICATION_PHYSICS_PROCESS] and their internal counterparts). Nodes whose "
+"process priority value is [i]lower[/i] will have their processing callbacks "
+"executed first."
+msgstr ""
+
+#: doc/classes/Node.xml:847
+msgid "Emitted when the node is ready."
+msgstr ""
+
+#: doc/classes/Node.xml:852
+msgid "Emitted when the node is renamed."
+msgstr ""
+
+#: doc/classes/Node.xml:857
+msgid "Emitted when the node enters the tree."
+msgstr ""
+
+#: doc/classes/Node.xml:862
+msgid "Emitted after the node exits the tree and is no longer active."
+msgstr ""
+
+#: doc/classes/Node.xml:867
+msgid ""
+"Emitted when the node is still active but about to exit the tree. This is "
+"the right place for de-initialization (or a \"destructor\", if you will)."
+msgstr ""
+
+#: doc/classes/Node.xml:873
+msgid "Notification received when the node enters a [SceneTree]."
+msgstr ""
+
+#: doc/classes/Node.xml:876
+msgid "Notification received when the node is about to exit a [SceneTree]."
+msgstr ""
+
+#: doc/classes/Node.xml:879
+msgid "Notification received when the node is moved in the parent."
+msgstr ""
+
+#: doc/classes/Node.xml:882
+msgid "Notification received when the node is ready. See [method _ready]."
+msgstr ""
+
+#: doc/classes/Node.xml:885
+msgid "Notification received when the node is paused."
+msgstr ""
+
+#: doc/classes/Node.xml:888
+msgid "Notification received when the node is unpaused."
+msgstr ""
+
+#: doc/classes/Node.xml:891
+msgid ""
+"Notification received every frame when the physics process flag is set (see "
+"[method set_physics_process])."
+msgstr ""
+
+#: doc/classes/Node.xml:894
+msgid ""
+"Notification received every frame when the process flag is set (see [method "
+"set_process])."
+msgstr ""
+
+#: doc/classes/Node.xml:897
+msgid ""
+"Notification received when a node is set as a child of another node.\n"
+"[b]Note:[/b] This doesn't mean that a node entered the [SceneTree]."
+msgstr ""
+
+#: doc/classes/Node.xml:901
+msgid ""
+"Notification received when a node is unparented (parent removed it from the "
+"list of children)."
+msgstr ""
+
+#: doc/classes/Node.xml:904
+msgid "Notification received when the node is instanced."
+msgstr ""
+
+#: doc/classes/Node.xml:907
+msgid "Notification received when a drag begins."
+msgstr ""
+
+#: doc/classes/Node.xml:910
+msgid "Notification received when a drag ends."
+msgstr ""
+
+#: doc/classes/Node.xml:913
+msgid "Notification received when the node's [NodePath] changed."
+msgstr ""
+
+#: doc/classes/Node.xml:916
+msgid ""
+"Notification received every frame when the internal process flag is set (see "
+"[method set_process_internal])."
+msgstr ""
+
+#: doc/classes/Node.xml:919
+msgid ""
+"Notification received every frame when the internal physics process flag is "
+"set (see [method set_physics_process_internal])."
+msgstr ""
+
+#: doc/classes/Node.xml:922
+msgid ""
+"Notification received from the OS when the mouse enters the game window.\n"
+"Implemented on desktop and web platforms."
+msgstr ""
+
+#: doc/classes/Node.xml:926
+msgid ""
+"Notification received from the OS when the mouse leaves the game window.\n"
+"Implemented on desktop and web platforms."
+msgstr ""
+
+#: doc/classes/Node.xml:930
+msgid ""
+"Notification received from the OS when the node's parent [Window] is "
+"focused. This may be a change of focus between two windows of the same "
+"engine instance, or from the OS desktop or a third-party application to a "
+"window of the game (in which case [constant "
+"NOTIFICATION_APPLICATION_FOCUS_IN] is also emitted)."
+msgstr ""
+
+#: doc/classes/Node.xml:933
+msgid ""
+"Notification received from the OS when the node's parent [Window] is "
+"defocused. This may be a change of focus between two windows of the same "
+"engine instance, or from a window of the game to the OS desktop or a third-"
+"party application (in which case [constant "
+"NOTIFICATION_APPLICATION_FOCUS_OUT] is also emitted)."
+msgstr ""
+
+#: doc/classes/Node.xml:936
+msgid ""
+"Notification received from the OS when a close request is sent (e.g. closing "
+"the window with a \"Close\" button or [kbd]Alt + F4[/kbd]).\n"
+"Implemented on desktop platforms."
+msgstr ""
+
+#: doc/classes/Node.xml:940
+msgid ""
+"Notification received from the OS when a go back request is sent (e.g. "
+"pressing the \"Back\" button on Android).\n"
+"Specific to the Android platform."
+msgstr ""
+
+#: doc/classes/Node.xml:981
+msgid ""
+"Inherits pause mode from the node's parent. For the root node, it is "
+"equivalent to [constant PAUSE_MODE_STOP]. Default."
+msgstr ""
+
+#: doc/classes/Node.xml:984
+msgid "Stops processing when the [SceneTree] is paused."
+msgstr ""
+
+#: doc/classes/Node.xml:987
+msgid "Continue to process regardless of the [SceneTree] pause state."
+msgstr ""
+
+#: doc/classes/Node.xml:990
+msgid "Duplicate the node's signals."
+msgstr ""
+
+#: doc/classes/Node.xml:993
+msgid "Duplicate the node's groups."
+msgstr ""
+
+#: doc/classes/Node.xml:996
+msgid "Duplicate the node's scripts."
+msgstr ""
+
+#: doc/classes/Node.xml:999
+msgid ""
+"Duplicate using instancing.\n"
+"An instance stays linked to the original so when the original changes, the "
+"instance changes too."
+msgstr ""
+
+#: doc/classes/Node2D.xml:4
+msgid ""
+"A 2D game object, inherited by all 2D-related nodes. Has a position, "
+"rotation, scale, and Z index."
+msgstr ""
+
+#: doc/classes/Node2D.xml:7
+msgid ""
+"A 2D game object, with a transform (position, rotation, and scale). All 2D "
+"nodes, including physics objects and sprites, inherit from Node2D. Use "
+"Node2D as a parent node to move, scale and rotate children in a 2D project. "
+"Also gives control of the node's render order."
+msgstr ""
+
+#: doc/classes/Node2D.xml:19
+msgid "Multiplies the current scale by the [code]ratio[/code] vector."
+msgstr ""
+
+#: doc/classes/Node2D.xml:28
+msgid ""
+"Returns the angle between the node and the [code]point[/code] in radians."
+msgstr ""
+
+#: doc/classes/Node2D.xml:37
+msgid "Returns the [Transform2D] relative to this node's parent."
+msgstr ""
+
+#: doc/classes/Node2D.xml:46
+msgid "Adds the [code]offset[/code] vector to the node's global position."
+msgstr ""
+
+#: doc/classes/Node2D.xml:55
+msgid ""
+"Rotates the node so it points towards the [code]point[/code], which is "
+"expected to use global coordinates."
+msgstr ""
+
+#: doc/classes/Node2D.xml:66
+msgid ""
+"Applies a local translation on the node's X axis based on the [method Node."
+"_process]'s [code]delta[/code]. If [code]scaled[/code] is [code]false[/"
+"code], normalizes the movement."
+msgstr ""
+
+#: doc/classes/Node2D.xml:77
+msgid ""
+"Applies a local translation on the node's Y axis based on the [method Node."
+"_process]'s [code]delta[/code]. If [code]scaled[/code] is [code]false[/"
+"code], normalizes the movement."
+msgstr ""
+
+#: doc/classes/Node2D.xml:86
+msgid ""
+"Applies a rotation to the node, in radians, starting from its current "
+"rotation."
+msgstr ""
+
+#: doc/classes/Node2D.xml:95
+msgid ""
+"Transforms the provided local position into a position in global coordinate "
+"space. The input is expected to be local relative to the [Node2D] it is "
+"called on. e.g. Applying this method to the positions of child nodes will "
+"correctly transform their positions into the global coordinate space, but "
+"applying it to a node's own position will give an incorrect result, as it "
+"will incorporate the node's own transformation into its global position."
+msgstr ""
+
+#: doc/classes/Node2D.xml:104
+msgid ""
+"Transforms the provided global position into a position in local coordinate "
+"space. The output will be local relative to the [Node2D] it is called on. e."
+"g. It is appropriate for determining the positions of child nodes, but it is "
+"not appropriate for determining its own position relative to its parent."
+msgstr ""
+
+#: doc/classes/Node2D.xml:113
+msgid ""
+"Translates the node by the given [code]offset[/code] in local coordinates."
+msgstr ""
+
+#: doc/classes/Node2D.xml:119
+msgid "Global position."
+msgstr ""
+
+#: doc/classes/Node2D.xml:122
+msgid "Global rotation in radians."
+msgstr ""
+
+#: doc/classes/Node2D.xml:125
+msgid "Global rotation in degrees."
+msgstr ""
+
+#: doc/classes/Node2D.xml:128
+msgid "Global scale."
+msgstr ""
+
+#: doc/classes/Node2D.xml:131
+msgid "Global [Transform2D]."
+msgstr ""
+
+#: doc/classes/Node2D.xml:134
+msgid "Position, relative to the node's parent."
+msgstr ""
+
+#: doc/classes/Node2D.xml:137
+msgid "Rotation in radians, relative to the node's parent."
+msgstr ""
+
+#: doc/classes/Node2D.xml:140
+msgid "Rotation in degrees, relative to the node's parent."
+msgstr ""
+
+#: doc/classes/Node2D.xml:143
+msgid "The node's scale. Unscaled value: [code](1, 1)[/code]."
+msgstr ""
+
+#: doc/classes/Node2D.xml:150
+msgid "Local [Transform2D]."
+msgstr ""
+
+#: doc/classes/Node2D.xml:153
+msgid ""
+"If [code]true[/code], 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."
+msgstr ""
+
+#: doc/classes/Node2D.xml:156
+msgid ""
+"Z index. Controls the order in which the nodes render. A node with a higher "
+"Z index will display in front of others."
+msgstr ""
+
+#: doc/classes/Node3D.xml:4
+msgid "Most basic 3D game object, parent of all 3D-related nodes."
+msgstr ""
+
+#: doc/classes/Node3D.xml:7
+msgid ""
+"Most basic 3D game object, with a 3D [Transform] 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.\n"
+"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.\n"
+"[b]Note:[/b] Unless otherwise specified, all methods that have angle "
+"parameters must have angles specified as [i]radians[/i]. To convert degrees "
+"to radians, use [method @GDScript.deg2rad]."
+msgstr ""
+
+#: doc/classes/Node3D.xml:12
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/3d/introduction_to_3d.html"
+msgstr ""
+
+#: doc/classes/Node3D.xml:26
+msgid ""
+"Returns the parent [Node3D], or an empty [Object] if no parent exists or "
+"parent is not of type [Node3D]."
+msgstr ""
+
+#: doc/classes/Node3D.xml:33
+msgid ""
+"Returns the current [World3D] resource this [Node3D] node is registered to."
+msgstr ""
+
+#: doc/classes/Node3D.xml:44
+msgid ""
+"Rotates the global (world) transformation around axis, a unit [Vector3], by "
+"specified angle in radians. The rotation axis is in global coordinate system."
+msgstr ""
+
+#: doc/classes/Node3D.xml:53
+msgid ""
+"Scales the global (world) transformation by the given [Vector3] scale "
+"factors."
+msgstr ""
+
+#: doc/classes/Node3D.xml:62
+msgid ""
+"Moves the global (world) transformation by [Vector3] offset. The offset is "
+"in global coordinate system."
+msgstr ""
+
+#: doc/classes/Node3D.xml:69
+msgid ""
+"Disables rendering of this node. Changes [member visible] to [code]false[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Node3D.xml:76
+msgid ""
+"Returns whether node notifies about its local transformation changes. "
+"[Node3D] will not propagate this by default."
+msgstr ""
+
+#: doc/classes/Node3D.xml:83
+msgid ""
+"Returns whether this node uses a scale of [code](1, 1, 1)[/code] or its "
+"local transformation scale."
+msgstr ""
+
+#: doc/classes/Node3D.xml:90
+msgid ""
+"Returns whether this node is set as Toplevel, that is whether it ignores its "
+"parent nodes transformations."
+msgstr ""
+
+#: doc/classes/Node3D.xml:97
+msgid ""
+"Returns whether the node notifies about its global and local transformation "
+"changes. [Node3D] will not propagate this by default."
+msgstr ""
+
+#: doc/classes/Node3D.xml:115
+msgid ""
+"Rotates itself so that the local -Z axis points towards the [code]target[/"
+"code] position.\n"
+"The transform will first be rotated around the given [code]up[/code] vector, "
+"and then fully aligned to the target by a further rotation around an axis "
+"perpendicular to both the [code]target[/code] and [code]up[/code] vectors.\n"
+"Operations take place in global space."
+msgstr ""
+
+#: doc/classes/Node3D.xml:130
+msgid ""
+"Moves the node to the specified [code]position[/code], and then rotates "
+"itself to point toward the [code]target[/code] as per [method look_at]. "
+"Operations take place in global space."
+msgstr ""
+
+#: doc/classes/Node3D.xml:137
+msgid ""
+"Resets this node's transformations (like scale, skew and taper) preserving "
+"its rotation and translation by performing Gram-Schmidt orthonormalization "
+"on this node's [Transform]."
+msgstr ""
+
+#: doc/classes/Node3D.xml:148
+msgid ""
+"Rotates the local transformation around axis, a unit [Vector3], by specified "
+"angle in radians."
+msgstr ""
+
+#: doc/classes/Node3D.xml:159
+msgid ""
+"Rotates the local transformation around axis, a unit [Vector3], by specified "
+"angle in radians. The rotation axis is in object-local coordinate system."
+msgstr ""
+
+#: doc/classes/Node3D.xml:168
+msgid "Rotates the local transformation around the X axis by angle in radians."
+msgstr ""
+
+#: doc/classes/Node3D.xml:177
+msgid "Rotates the local transformation around the Y axis by angle in radians."
+msgstr ""
+
+#: doc/classes/Node3D.xml:186
+msgid "Rotates the local transformation around the Z axis by angle in radians."
+msgstr ""
+
+#: doc/classes/Node3D.xml:195
+msgid ""
+"Scales the local transformation by given 3D scale factors in object-local "
+"coordinate system."
+msgstr ""
+
+#: doc/classes/Node3D.xml:204
+msgid ""
+"Makes the node ignore its parents transformations. Node transformations are "
+"only in global space."
+msgstr ""
+
+#: doc/classes/Node3D.xml:213
+msgid ""
+"Sets whether the node uses a scale of [code](1, 1, 1)[/code] or its local "
+"transformation scale. Changes to the local transformation scale are "
+"preserved."
+msgstr ""
+
+#: doc/classes/Node3D.xml:220
+msgid ""
+"Reset all transformations for this node (sets its [Transform] to the "
+"identity matrix)."
+msgstr ""
+
+#: doc/classes/Node3D.xml:229
+msgid ""
+"Sets whether the node ignores notification that its transformation (global "
+"or local) changed."
+msgstr ""
+
+#: doc/classes/Node3D.xml:238
+msgid ""
+"Sets whether the node notifies about its local transformation changes. "
+"[Node3D] will not propagate this by default."
+msgstr ""
+
+#: doc/classes/Node3D.xml:247
+msgid ""
+"Sets whether the node notifies about its global and local transformation "
+"changes. [Node3D] will not propagate this by default."
+msgstr ""
+
+#: doc/classes/Node3D.xml:254
+msgid ""
+"Enables rendering of this node. Changes [member visible] to [code]true[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Node3D.xml:263
+msgid ""
+"Transforms [code]local_point[/code] from this node's local space to world "
+"space."
+msgstr ""
+
+#: doc/classes/Node3D.xml:272
+msgid ""
+"Transforms [code]global_point[/code] from world space to this node's local "
+"space."
+msgstr ""
+
+#: doc/classes/Node3D.xml:281
+msgid ""
+"Changes the node's position by the given offset [Vector3].\n"
+"Note that the translation [code]offset[/code] is affected by the node's "
+"scale, so if scaled by e.g. [code](10, 1, 1)[/code], a translation by an "
+"offset of [code](2, 0, 0)[/code] would actually add 20 ([code]2 * 10[/code]) "
+"to the X coordinate."
+msgstr ""
+
+#: doc/classes/Node3D.xml:291
+msgid ""
+"Changes the node's position by the given offset [Vector3] in local space."
+msgstr ""
+
+#: doc/classes/Node3D.xml:298
+msgid "Updates the [Node3DGizmo] of this node."
+msgstr ""
+
+#: doc/classes/Node3D.xml:304
+msgid ""
+"The [Node3DGizmo] for this node. Used for example in [EditorNode3DGizmo] as "
+"custom visualization and editing handles in Editor."
+msgstr ""
+
+#: doc/classes/Node3D.xml:307
+msgid "World3D space (global) [Transform] of this node."
+msgstr ""
+
+#: doc/classes/Node3D.xml:310
+msgid ""
+"Rotation part of the local transformation in radians, specified in terms of "
+"YXZ-Euler angles in the format (X angle, Y angle, Z angle).\n"
+"[b]Note:[/b] 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 "
+"[Vector3] data structure not because the rotation is a vector, but only "
+"because [Vector3] exists as a convenient data-structure to store 3 floating-"
+"point numbers. Therefore, applying affine operations on the rotation \"vector"
+"\" is not meaningful."
+msgstr ""
+
+#: doc/classes/Node3D.xml:314
+msgid ""
+"Rotation part of the local transformation in degrees, specified in terms of "
+"YXZ-Euler angles in the format (X angle, Y angle, Z angle)."
+msgstr ""
+
+#: doc/classes/Node3D.xml:317
+msgid "Scale part of the local transformation."
+msgstr ""
+
+#: doc/classes/Node3D.xml:320
+msgid "Local space [Transform] of this node, with respect to the parent node."
+msgstr ""
+
+#: doc/classes/Node3D.xml:323
+msgid "Local translation of this node."
+msgstr ""
+
+#: doc/classes/Node3D.xml:326
+msgid ""
+"If [code]true[/code], this node is drawn. The node is only visible if all of "
+"its antecedents are visible as well (in other words, [method "
+"is_visible_in_tree] must return [code]true[/code])."
+msgstr ""
+
+#: doc/classes/Node3D.xml:332
+msgid "Emitted when node visibility changes."
+msgstr ""
+
+#: doc/classes/Node3D.xml:338
+msgid ""
+"Node3D nodes receives this notification when their global transform changes. "
+"This means that either the current or a parent node changed its transform.\n"
+"In order for [constant NOTIFICATION_TRANSFORM_CHANGED] to work, users first "
+"need to ask for it, with [method set_notify_transform]."
+msgstr ""
+
+#: doc/classes/Node3D.xml:342
+msgid ""
+"Node3D nodes receives this notification when they are registered to new "
+"[World3D] resource."
+msgstr ""
+
+#: doc/classes/Node3D.xml:345
+msgid ""
+"Node3D nodes receives this notification when they are unregistered from "
+"current [World3D] resource."
+msgstr ""
+
+#: doc/classes/Node3D.xml:348
+msgid "Node3D nodes receives this notification when their visibility changes."
+msgstr ""
+
+#: doc/classes/NodePath.xml:4
+msgid "Pre-parsed scene tree path."
+msgstr ""
+
+#: doc/classes/NodePath.xml:7
+msgid ""
+"A pre-parsed relative or absolute path in a scene tree, for use with [method "
+"Node.get_node] and similar functions. It can reference a node, a resource "
+"within a node, or a property of a node or resource. For instance, "
+"[code]\"Path2D/PathFollow2D/Sprite2D:texture:size\"[/code] would refer to "
+"the [code]size[/code] property of the [code]texture[/code] resource on the "
+"node named [code]\"Sprite2D\"[/code] which is a child of the other named "
+"nodes in the path.\n"
+"You will usually just pass a string to [method Node.get_node] and it will be "
+"automatically converted, but you may occasionally want to parse a path ahead "
+"of time with [NodePath] or the literal syntax [code]@\"path\"[/code]. "
+"Exporting a [NodePath] variable will give you a node selection widget in the "
+"properties panel of the editor, which can often be useful.\n"
+"A [NodePath] is composed of a list of slash-separated node names (like a "
+"filesystem path) and an optional colon-separated list of \"subnames\" which "
+"can be resources or properties.\n"
+"Some examples of NodePaths include the following:\n"
+"[codeblock]\n"
+"# No leading slash means it is relative to the current node.\n"
+"@\"A\" # Immediate child A\n"
+"@\"A/B\" # A's child B\n"
+"@\".\" # The current node.\n"
+"@\"..\" # The parent node.\n"
+"@\"../C\" # A sibling node C.\n"
+"# A leading slash means it is absolute from the SceneTree.\n"
+"@\"/root\" # Equivalent to get_tree().get_root().\n"
+"@\"/root/Main\" # If your main scene's root node were named \"Main\".\n"
+"@\"/root/MyAutoload\" # If you have an autoloaded node or scene.\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/NodePath.xml:33
+msgid ""
+"Creates a NodePath from a string, e.g. [code]\"Path2D/PathFollow2D/Sprite2D:"
+"texture:size\"[/code]. A path is absolute if it starts with a slash. "
+"Absolute paths are only valid in the global scene tree, not within "
+"individual scenes. In a relative path, [code]\".\"[/code] and [code]\"..\"[/"
+"code] indicate the current node and its parent.\n"
+"The \"subnames\" optionally included after the path to the target node can "
+"point to resources or properties, and can also be nested.\n"
+"Examples of valid NodePaths (assuming that those nodes exist and have the "
+"referenced resources or properties):\n"
+"[codeblock]\n"
+"# Points to the Sprite2D node\n"
+"\"Path2D/PathFollow2D/Sprite2D\"\n"
+"# Points to the Sprite2D node and its \"texture\" resource.\n"
+"# get_node() would retrieve \"Sprite2D\", while get_node_and_resource()\n"
+"# would retrieve both the Sprite2D node and the \"texture\" resource.\n"
+"\"Path2D/PathFollow2D/Sprite2D:texture\"\n"
+"# Points to the Sprite2D node and its \"position\" property.\n"
+"\"Path2D/PathFollow2D/Sprite2D:position\"\n"
+"# Points to the Sprite2D node and the \"x\" component of its \"position\" "
+"property.\n"
+"\"Path2D/PathFollow2D/Sprite2D:position:x\"\n"
+"# Absolute path (from \"root\")\n"
+"\"/root/Level/Path2D\"\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/NodePath.xml:56
+msgid ""
+"Returns a node path with a colon character ([code]:[/code]) prepended, "
+"transforming it to a pure property path with no node name (defaults to "
+"resolving from the current node).\n"
+"[codeblock]\n"
+"# This will be parsed as a node path to the \"x\" property in the \"position"
+"\" node\n"
+"var node_path = NodePath(\"position:x\")\n"
+"# This will be parsed as a node path to the \"x\" component of the \"position"
+"\" property in the current node\n"
+"var property_path = node_path.get_as_property_path()\n"
+"print(property_path) # :position:x\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/NodePath.xml:70
+msgid ""
+"Returns all subnames concatenated with a colon character ([code]:[/code]) as "
+"separator, i.e. the right side of the first colon in a node path.\n"
+"[codeblock]\n"
+"var nodepath = NodePath(\"Path2D/PathFollow2D/Sprite2D:texture:load_path\")\n"
+"print(nodepath.get_concatenated_subnames()) # texture:load_path\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/NodePath.xml:83
+msgid ""
+"Gets the node name indicated by [code]idx[/code] (0 to [method "
+"get_name_count]).\n"
+"[codeblock]\n"
+"var node_path = NodePath(\"Path2D/PathFollow2D/Sprite2D\")\n"
+"print(node_path.get_name(0)) # Path2D\n"
+"print(node_path.get_name(1)) # PathFollow2D\n"
+"print(node_path.get_name(2)) # Sprite\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/NodePath.xml:96
+msgid ""
+"Gets the number of node names which make up the path. Subnames (see [method "
+"get_subname_count]) are not included.\n"
+"For example, [code]\"Path2D/PathFollow2D/Sprite2D\"[/code] has 3 names."
+msgstr ""
+
+#: doc/classes/NodePath.xml:106
+msgid ""
+"Gets the resource or property name indicated by [code]idx[/code] (0 to "
+"[method get_subname_count]).\n"
+"[codeblock]\n"
+"var node_path = NodePath(\"Path2D/PathFollow2D/Sprite2D:texture:load_path"
+"\")\n"
+"print(node_path.get_subname(0)) # texture\n"
+"print(node_path.get_subname(1)) # load_path\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/NodePath.xml:118
+msgid ""
+"Gets the number of resource or property names (\"subnames\") in the path. "
+"Each subname is listed after a colon character ([code]:[/code]) in the node "
+"path.\n"
+"For example, [code]\"Path2D/PathFollow2D/Sprite2D:texture:load_path\"[/code] "
+"has 2 subnames."
+msgstr ""
+
+#: doc/classes/NodePath.xml:126
+msgid ""
+"Returns [code]true[/code] if the node path is absolute (as opposed to "
+"relative), which means that it starts with a slash character ([code]/[/"
+"code]). Absolute node paths can be used to access the root node ([code]\"/"
+"root\"[/code]) or autoloads (e.g. [code]\"/global\"[/code] if a \"global\" "
+"autoload was registered)."
+msgstr ""
+
+#: doc/classes/NodePath.xml:133
+msgid "Returns [code]true[/code] if the node path is empty."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/NoiseTexture.xml:4
+msgid "[OpenSimplexNoise] filled texture."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/NoiseTexture.xml:7
+msgid ""
+"Uses an [OpenSimplexNoise] to fill the texture data. You can specify the "
+"texture size but keep in mind that larger textures will take longer to "
+"generate and seamless noise only works with square sized textures.\n"
+"NoiseTexture can also generate normalmap textures.\n"
+"The class uses [Thread]s to generate the texture data internally, so [method "
+"Texture2D.get_data] may return [code]null[/code] if the generation process "
+"has not completed yet. In that case, you need to wait for the texture to be "
+"generated before accessing the data:\n"
+"[codeblock]\n"
+"var texture = preload(\"res://noise.tres\")\n"
+"yield(texture, \"changed\")\n"
+"var image = texture.get_data()\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/opensimplex/doc_classes/NoiseTexture.xml:22
+msgid ""
+"If [code]true[/code], the resulting texture contains a normal map created "
+"from the original noise interpreted as a bump map."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/NoiseTexture.xml:25
+msgid ""
+"Strength of the bump maps used in this texture. A higher value will make the "
+"bump maps appear larger while a lower value will make them appear softer."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/NoiseTexture.xml:28
+msgid "Height of the generated texture."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/NoiseTexture.xml:31
+msgid "The [OpenSimplexNoise] instance used to generate the noise."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/NoiseTexture.xml:34
+msgid ""
+"Whether the texture can be tiled without visible seams or not. Seamless "
+"textures take longer to generate."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/NoiseTexture.xml:37
+msgid "Width of the generated texture."
+msgstr ""
+
+#: doc/classes/Object.xml:4
+msgid "Base class for all non built-in types."
+msgstr ""
+
+#: doc/classes/Object.xml:7
+msgid ""
+"Every class which is not a built-in type inherits from this class.\n"
+"You can construct Objects from scripting languages, using [code]Object.new()"
+"[/code] in GDScript, [code]new Object[/code] in C#, or the \"Construct Object"
+"\" node in VisualScript.\n"
+"Objects do not manage memory. If a class inherits from Object, you will have "
+"to delete instances of it manually. To do so, call the [method free] method "
+"from your script or delete the instance from C++.\n"
+"Some classes that extend Object add memory management. This is the case of "
+"[Reference], which counts references and deletes itself automatically when "
+"no longer referenced. [Node], another fundamental type, deletes all its "
+"children when freed from memory.\n"
+"Objects export properties, which are mainly useful for storage and editing, "
+"but not really so much in programming. Properties are exported in [method "
+"_get_property_list] and handled in [method _get] and [method _set]. However, "
+"scripting languages and C++ have simpler means to export them.\n"
+"Property membership can be tested directly in GDScript using [code]in[/"
+"code]:\n"
+"[codeblock]\n"
+"var n = Node2D.new()\n"
+"print(\"position\" in n) # Prints \"True\".\n"
+"print(\"other_property\" in n) # Prints \"False\".\n"
+"[/codeblock]\n"
+"The [code]in[/code] operator will evaluate to [code]true[/code] as long as "
+"the key exists, even if the value is [code]null[/code].\n"
+"Objects also receive notifications. Notifications are a simple way to notify "
+"the object about different events, so they can all be handled together. See "
+"[method _notification].\n"
+"[b]Note:[/b] Unlike references to a [Reference], references to an Object "
+"stored in a variable can become invalid without warning. Therefore, it's "
+"recommended to use [Reference] for data classes instead of [Object]."
+msgstr ""
+
+#: doc/classes/Object.xml:23 doc/classes/Reference.xml:12
+#: doc/classes/Resource.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/getting_started/workflow/"
+"best_practices/node_alternatives.html"
+msgstr ""
+
+#: doc/classes/Object.xml:32
+msgid ""
+"Virtual method which can be overridden to customize the return value of "
+"[method get].\n"
+"Returns the given property. Returns [code]null[/code] if the [code]property[/"
+"code] does not exist."
+msgstr ""
+
+#: doc/classes/Object.xml:40
+msgid ""
+"Virtual method which can be overridden to customize the return value of "
+"[method get_property_list].\n"
+"Returns the object's property list as an [Array] of dictionaries.\n"
+"Each property's [Dictionary] must contain at least [code]name: String[/code] "
+"and [code]type: int[/code] (see [enum Variant.Type]) entries. Optionally, it "
+"can also include [code]hint: int[/code] (see [enum PropertyHint]), "
+"[code]hint_string: String[/code], and [code]usage: int[/code] (see [enum "
+"PropertyUsageFlags])."
+msgstr ""
+
+#: doc/classes/Object.xml:49
+msgid "Called when the object is initialized."
+msgstr ""
+
+#: doc/classes/Object.xml:58
+msgid ""
+"Called whenever the object receives a notification, which is identified in "
+"[code]what[/code] by a constant. The base [Object] has two constants "
+"[constant NOTIFICATION_POSTINITIALIZE] and [constant "
+"NOTIFICATION_PREDELETE], but subclasses such as [Node] define a lot more "
+"notifications which are also received by this method."
+msgstr ""
+
+#: doc/classes/Object.xml:69
+msgid ""
+"Virtual method which can be overridden to customize the return value of "
+"[method set].\n"
+"Sets a property. Returns [code]true[/code] if the [code]property[/code] "
+"exists."
+msgstr ""
+
+#: doc/classes/Object.xml:77
+msgid ""
+"Virtual method which can be overridden to customize the return value of "
+"[method to_string], and thus the object's representation where it is "
+"converted to a string, e.g. with [code]print(obj)[/code].\n"
+"Returns a [String] representing the object. If not overridden, defaults to "
+"[code]\"[ClassName:RID]\"[/code]."
+msgstr ""
+
+#: doc/classes/Object.xml:89
+msgid ""
+"Adds a user-defined [code]signal[/code]. Arguments are optional, but can be "
+"added as an [Array] of dictionaries, each containing [code]name: String[/"
+"code] and [code]type: int[/code] (see [enum Variant.Type]) entries."
+msgstr ""
+
+#: doc/classes/Object.xml:98
+msgid ""
+"Calls the [code]method[/code] on the object and returns the result. This "
+"method supports a variable number of arguments, so parameters are passed as "
+"a comma separated list. Example:\n"
+"[codeblock]\n"
+"call(\"set\", \"position\", Vector2(42.0, 0.0))\n"
+"[/codeblock]\n"
+"[b]Note:[/b] In C#, the method name must be specified as snake_case if it is "
+"defined by a built-in Godot node. This doesn't apply to user-defined methods "
+"where you should use the same convention as in the C# source (typically "
+"PascalCase)."
+msgstr ""
+
+#: doc/classes/Object.xml:111
+msgid ""
+"Calls the [code]method[/code] on the object during idle time. This method "
+"supports a variable number of arguments, so parameters are passed as a comma "
+"separated list. Example:\n"
+"[codeblock]\n"
+"call_deferred(\"set\", \"position\", Vector2(42.0, 0.0))\n"
+"[/codeblock]\n"
+"[b]Note:[/b] In C#, the method name must be specified as snake_case if it is "
+"defined by a built-in Godot node. This doesn't apply to user-defined methods "
+"where you should use the same convention as in the C# source (typically "
+"PascalCase)."
+msgstr ""
+
+#: doc/classes/Object.xml:126
+msgid ""
+"Calls the [code]method[/code] on the object and returns the result. "
+"Contrarily to [method call], this method does not support a variable number "
+"of arguments but expects all parameters to be via a single [Array].\n"
+"[codeblock]\n"
+"callv(\"set\", [ \"position\", Vector2(42.0, 0.0) ])\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Object.xml:136
+msgid ""
+"Returns [code]true[/code] if the object can translate strings. See [method "
+"set_message_translation] and [method tr]."
+msgstr ""
+
+#: doc/classes/Object.xml:151
+msgid ""
+"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
+"should be updated.\n"
+"Connects a [code]signal[/code] to a [code]method[/code] on a [code]target[/"
+"code] object. Pass optional [code]binds[/code] to the call as an [Array] of "
+"parameters. These parameters will be passed to the method after any "
+"parameter used in the call to [method emit_signal]. Use [code]flags[/code] "
+"to set deferred or one-shot connections. See [enum ConnectFlags] constants.\n"
+"A [code]signal[/code] can only be connected once to a [code]method[/code]. "
+"It will throw an error if already connected, unless the signal was connected "
+"with [constant CONNECT_REFERENCE_COUNTED]. To avoid this, first, use [method "
+"is_connected] to check for existing connections.\n"
+"If the [code]target[/code] is destroyed in the game's lifecycle, the "
+"connection will be lost.\n"
+"Examples:\n"
+"[codeblock]\n"
+"connect(\"pressed\", self, \"_on_Button_pressed\") # BaseButton signal\n"
+"connect(\"text_entered\", self, \"_on_LineEdit_text_entered\") # LineEdit "
+"signal\n"
+"connect(\"hit\", self, \"_on_Player_hit\", [ weapon_type, damage ]) # User-"
+"defined signal\n"
+"[/codeblock]\n"
+"An example of the relationship between [code]binds[/code] passed to [method "
+"connect] and parameters used when calling [method emit_signal]:\n"
+"[codeblock]\n"
+"connect(\"hit\", self, \"_on_Player_hit\", [ weapon_type, damage ]) # "
+"weapon_type and damage are passed last\n"
+"emit_signal(\"hit\", \"Dark lord\", 5) # \"Dark lord\" and 5 are passed "
+"first\n"
+"func _on_Player_hit(hit_by, level, weapon_type, damage):\n"
+" print(\"Hit by %s (lvl %d) with weapon %s for %d damage\" % [hit_by, "
+"level, weapon_type, damage])\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Object.xml:178
+msgid ""
+"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
+"should be updated.\n"
+"Disconnects a [code]signal[/code] from a [code]method[/code] on the given "
+"[code]target[/code].\n"
+"If you try to disconnect a connection that does not exist, the method will "
+"throw an error. Use [method is_connected] to ensure that the connection "
+"exists."
+msgstr ""
+
+#: doc/classes/Object.xml:189
+msgid ""
+"Emits the given [code]signal[/code]. The signal must exist, so it should be "
+"a built-in signal of this class or one of its parent classes, or a user-"
+"defined signal. This method supports a variable number of arguments, so "
+"parameters are passed as a comma separated list. Example:\n"
+"[codeblock]\n"
+"emit_signal(\"hit\", weapon_type, damage)\n"
+"emit_signal(\"game_over\")\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Object.xml:200
+msgid ""
+"Deletes the object from memory. Any pre-existing reference to the freed "
+"object will become invalid, e.g. [code]is_instance_valid(object)[/code] will "
+"return [code]false[/code]."
+msgstr ""
+
+#: doc/classes/Object.xml:209
+msgid ""
+"Returns the [Variant] value of the given [code]property[/code]. If the "
+"[code]property[/code] doesn't exist, this will return [code]null[/code].\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
+msgstr ""
+
+#: doc/classes/Object.xml:217
+msgid "Returns the object's class as a [String]."
+msgstr ""
+
+#: doc/classes/Object.xml:224
+msgid ""
+"Returns an [Array] of dictionaries with information about signals that are "
+"connected to the object.\n"
+"Each [Dictionary] contains three String entries:\n"
+"- [code]source[/code] is a reference to the signal emitter.\n"
+"- [code]signal_name[/code] is the name of the connected signal.\n"
+"- [code]method_name[/code] is the name of the method to which the signal is "
+"connected."
+msgstr ""
+
+#: doc/classes/Object.xml:237
+msgid ""
+"Gets the object's property indexed by the given [NodePath]. The node path "
+"should be relative to the current object and can use the colon character "
+"([code]:[/code]) to access nested properties. Examples: [code]\"position:x"
+"\"[/code] or [code]\"material:next_pass:blend_mode\"[/code]."
+msgstr ""
+
+#: doc/classes/Object.xml:244
+msgid ""
+"Returns the object's unique instance ID.\n"
+"This ID can be saved in [EncodedObjectAsID], and can be used to retrieve the "
+"object instance with [method @GDScript.instance_from_id]."
+msgstr ""
+
+#: doc/classes/Object.xml:254
+msgid "Returns the object's metadata entry for the given [code]name[/code]."
+msgstr ""
+
+#: doc/classes/Object.xml:261
+msgid "Returns the object's metadata as a [PackedStringArray]."
+msgstr ""
+
+#: doc/classes/Object.xml:268
+msgid "Returns the object's methods and their signatures as an [Array]."
+msgstr ""
+
+#: doc/classes/Object.xml:275
+msgid ""
+"Returns the object's property list as an [Array] of dictionaries.\n"
+"Each property's [Dictionary] contain at least [code]name: String[/code] and "
+"[code]type: int[/code] (see [enum Variant.Type]) entries. Optionally, it can "
+"also include [code]hint: int[/code] (see [enum PropertyHint]), "
+"[code]hint_string: String[/code], and [code]usage: int[/code] (see [enum "
+"PropertyUsageFlags])."
+msgstr ""
+
+#: doc/classes/Object.xml:283
+msgid ""
+"Returns the object's [Script] instance, or [code]null[/code] if none is "
+"assigned."
+msgstr ""
+
+#: doc/classes/Object.xml:292
+msgid "Returns an [Array] of connections for the given [code]signal[/code]."
+msgstr ""
+
+#: doc/classes/Object.xml:299
+msgid "Returns the list of signals as an [Array] of dictionaries."
+msgstr ""
+
+#: doc/classes/Object.xml:308
+msgid ""
+"Returns [code]true[/code] if a metadata entry is found with the given "
+"[code]name[/code]."
+msgstr ""
+
+#: doc/classes/Object.xml:317
+msgid ""
+"Returns [code]true[/code] if the object contains the given [code]method[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Object.xml:326
+msgid "Returns [code]true[/code] if the given [code]signal[/code] exists."
+msgstr ""
+
+#: doc/classes/Object.xml:335
+msgid ""
+"Returns [code]true[/code] if the given user-defined [code]signal[/code] "
+"exists. Only signals added using [method add_user_signal] are taken into "
+"account."
+msgstr ""
+
+#: doc/classes/Object.xml:342
+msgid "Returns [code]true[/code] if signal emission blocking is enabled."
+msgstr ""
+
+#: doc/classes/Object.xml:351
+msgid ""
+"Returns [code]true[/code] if the object inherits from the given [code]class[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Object.xml:362
+msgid ""
+"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
+"should be updated.\n"
+"Returns [code]true[/code] if a connection exists for a given [code]signal[/"
+"code], [code]target[/code], and [code]method[/code]."
+msgstr ""
+
+#: doc/classes/Object.xml:370
+msgid ""
+"Returns [code]true[/code] if the [method Node.queue_free] method was called "
+"for the object."
+msgstr ""
+
+#: doc/classes/Object.xml:381
+msgid ""
+"Send a given notification to the object, which will also trigger a call to "
+"the [method _notification] method of all classes that the object inherits "
+"from.\n"
+"If [code]reversed[/code] is [code]true[/code], [method _notification] is "
+"called first on the object's own class, and then up to its successive parent "
+"classes. If [code]reversed[/code] is [code]false[/code], [method "
+"_notification] is called first on the highest ancestor ([Object] itself), "
+"and then down to its successive inheriting classes."
+msgstr ""
+
+#: doc/classes/Object.xml:389
+msgid ""
+"Notify the editor that the property list has changed, so that editor plugins "
+"can take the new values into account. Does nothing on export builds."
+msgstr ""
+
+#: doc/classes/Object.xml:398
+msgid "Removes a given entry from the object's metadata."
+msgstr ""
+
+#: doc/classes/Object.xml:409
+msgid ""
+"Assigns a new value to the given property. If the [code]property[/code] does "
+"not exist, nothing will happen.\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
+msgstr ""
+
+#: doc/classes/Object.xml:419
+msgid "If set to [code]true[/code], signal emission is blocked."
+msgstr ""
+
+#: doc/classes/Object.xml:430
+msgid ""
+"Assigns a new value to the given property, after the current frame's physics "
+"step. This is equivalent to calling [method set] via [method call_deferred], "
+"i.e. [code]call_deferred(\"set\", property, value)[/code].\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
+msgstr ""
+
+#: doc/classes/Object.xml:442
+msgid ""
+"Assigns a new value to the property identified by the [NodePath]. The node "
+"path should be relative to the current object and can use the colon "
+"character ([code]:[/code]) to access nested properties. Example:\n"
+"[codeblock]\n"
+"set_indexed(\"position\", Vector2(42, 0))\n"
+"set_indexed(\"position:y\", -10)\n"
+"print(position) # (42, -10)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Object.xml:456
+msgid ""
+"Defines whether the object can translate strings (with calls to [method "
+"tr]). Enabled by default."
+msgstr ""
+
+#: doc/classes/Object.xml:467
+msgid ""
+"Adds or changes a given entry in the object's metadata. Metadata are "
+"serialized, and can take any [Variant] value."
+msgstr ""
+
+#: doc/classes/Object.xml:476
+msgid ""
+"Assigns a script to the object. Each object can have a single script "
+"assigned to it, which are used to extend its functionality.\n"
+"If the object already had a script, the previous script instance will be "
+"freed and its variables and state will be lost. The new script's [method "
+"_init] method will be called."
+msgstr ""
+
+#: doc/classes/Object.xml:484
+msgid ""
+"Returns a [String] representing the object. If not overridden, defaults to "
+"[code]\"[ClassName:RID]\"[/code].\n"
+"Override the method [method _to_string] to customize the [String] "
+"representation."
+msgstr ""
+
+#: doc/classes/Object.xml:494
+msgid ""
+"Translates a message using translation catalogs configured in the Project "
+"Settings.\n"
+"Only works if message translation is enabled (which it is by default), "
+"otherwise it returns the [code]message[/code] unchanged. See [method "
+"set_message_translation]."
+msgstr ""
+
+#: doc/classes/Object.xml:502
+msgid "Emitted whenever the object's script is changed."
+msgstr ""
+
+#: doc/classes/Object.xml:508
+msgid "Called right when the object is initialized. Not available in script."
+msgstr ""
+
+#: doc/classes/Object.xml:511
+msgid "Called before the object is about to be deleted."
+msgstr ""
+
+#: doc/classes/Object.xml:514
+msgid ""
+"Connects a signal in deferred mode. This way, signal emissions are stored in "
+"a queue, then set on idle time."
+msgstr ""
+
+#: doc/classes/Object.xml:517
+msgid "Persisting connections are saved when the object is serialized to file."
+msgstr ""
+
+#: doc/classes/Object.xml:520
+msgid "One-shot connections disconnect themselves after emission."
+msgstr ""
+
+#: doc/classes/Object.xml:523
+msgid ""
+"Connect a signal as reference-counted. This means that a given signal can be "
+"connected several times to the same target, and will only be fully "
+"disconnected once no references are left."
+msgstr ""
+
+#: doc/classes/OccluderPolygon2D.xml:4
+msgid "Defines a 2D polygon for LightOccluder2D."
+msgstr ""
+
+#: doc/classes/OccluderPolygon2D.xml:7
+msgid ""
+"Editor facility that helps you draw a 2D polygon used as resource for "
+"[LightOccluder2D]."
+msgstr ""
+
+#: doc/classes/OccluderPolygon2D.xml:15
+msgid ""
+"If [code]true[/code], closes the polygon. A closed OccluderPolygon2D "
+"occludes the light coming from any direction. An opened OccluderPolygon2D "
+"occludes the light only at its outline's direction."
+msgstr ""
+
+#: doc/classes/OccluderPolygon2D.xml:18
+msgid "The culling mode to use."
+msgstr ""
+
+#: doc/classes/OccluderPolygon2D.xml:21
+msgid ""
+"A [Vector2] array with the index for polygon's vertices positions.\n"
+"[b]Note:[/b] The returned value is a copy of the underlying array, rather "
+"than a reference."
+msgstr ""
+
+#: doc/classes/OccluderPolygon2D.xml:27
+msgid "Culling is disabled. See [member cull_mode]."
+msgstr ""
+
+#: doc/classes/OccluderPolygon2D.xml:30
+msgid ""
+"Culling is performed in the clockwise direction. See [member cull_mode]."
+msgstr ""
+
+#: doc/classes/OccluderPolygon2D.xml:33
+msgid ""
+"Culling is performed in the counterclockwise direction. See [member "
+"cull_mode]."
+msgstr ""
+
+#: doc/classes/OmniLight3D.xml:4
+msgid "Omnidirectional light, such as a light bulb or a candle."
+msgstr ""
+
+#: doc/classes/OmniLight3D.xml:7
+msgid ""
+"An Omnidirectional light is a type of [Light3D] that emits light in all "
+"directions. The light is attenuated by distance and this attenuation can be "
+"configured by changing its energy, radius, and attenuation parameters."
+msgstr ""
+
+#: doc/classes/OmniLight3D.xml:16
+msgid ""
+"The light's attenuation (drop-off) curve. A number of presets are available "
+"in the [b]Inspector[/b] by right-clicking the curve."
+msgstr ""
+
+#: doc/classes/OmniLight3D.xml:19
+msgid ""
+"The light's radius. Note that the effectively lit area may appear to be "
+"smaller depending on the [member omni_attenuation] in use. No matter the "
+"[member omni_attenuation] in use, the light will never reach anything "
+"outside this radius."
+msgstr ""
+
+#: doc/classes/OmniLight3D.xml:22
+msgid "See [enum ShadowMode]."
+msgstr ""
+
+#: doc/classes/OmniLight3D.xml:27
+msgid ""
+"Shadows are rendered to a dual-paraboloid texture. Faster than [constant "
+"SHADOW_CUBE], but lower-quality."
+msgstr ""
+
+#: doc/classes/OmniLight3D.xml:30
+msgid ""
+"Shadows are rendered to a cubemap. Slower than [constant "
+"SHADOW_DUAL_PARABOLOID], but higher-quality."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:4
+msgid "Noise generator based on Open Simplex."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:7
+msgid ""
+"This resource allows you to configure and sample a fractal noise space. Here "
+"is a brief usage example that configures an OpenSimplexNoise and gets "
+"samples at various positions and dimensions:\n"
+"[codeblock]\n"
+"var noise = OpenSimplexNoise.new()\n"
+"\n"
+"# Configure\n"
+"noise.seed = randi()\n"
+"noise.octaves = 4\n"
+"noise.period = 20.0\n"
+"noise.persistence = 0.8\n"
+"\n"
+"# Sample\n"
+"print(\"Values:\")\n"
+"print(noise.get_noise_2d(1.0, 1.0))\n"
+"print(noise.get_noise_3d(0.5, 3.0, 15.0))\n"
+"print(noise.get_noise_4d(0.5, 1.9, 4.7, 0.0))\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:35
+msgid ""
+"Generate a noise image with the requested [code]width[/code] and "
+"[code]height[/code], based on the current noise parameters."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:44
+msgid ""
+"Returns the 1D noise value [code][-1,1][/code] at the given x-coordinate.\n"
+"[b]Note:[/b] This method actually returns the 2D noise value [code][-1,1][/"
+"code] with fixed y-coordinate value 0.0."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:56
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:65
+msgid "Returns the 2D noise value [code][-1,1][/code] at the given position."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:78
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:87
+msgid "Returns the 3D noise value [code][-1,1][/code] at the given position."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:102
+msgid "Returns the 4D noise value [code][-1,1][/code] at the given position."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:111
+msgid ""
+"Generate a tileable noise image, based on the current noise parameters. "
+"Generated seamless images are always square ([code]size[/code] × [code]size[/"
+"code])."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:117
+msgid "Difference in period between [member octaves]."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:120
+msgid ""
+"Number of OpenSimplex noise layers that are sampled to get the fractal "
+"noise. Higher values result in more detailed noise but take more time to "
+"generate.\n"
+"[b]Note:[/b] The maximum allowed value is 9."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:124
+msgid ""
+"Period of the base octave. A lower period results in a higher-frequency "
+"noise (more value changes across the same distance)."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:127
+msgid ""
+"Contribution factor of the different octaves. A [code]persistence[/code] "
+"value of 1 means all the octaves have the same contribution, a value of 0.5 "
+"means each octave contributes half as much as the previous one."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:130
+msgid ""
+"Seed used to generate random values, different seeds will generate different "
+"noise maps."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:4
+msgid "Button control that provides selectable options when pressed."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:7
+msgid ""
+"OptionButton is a type button that provides a selectable list of items when "
+"pressed. The item selected becomes the \"current\" item and is displayed as "
+"the button text."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:22
+msgid ""
+"Adds an item, with a [code]texture[/code] icon, text [code]label[/code] and "
+"(optionally) [code]id[/code]. If no [code]id[/code] is passed, the item "
+"index will be used as the item's ID. New items are appended at the end."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:33
+msgid ""
+"Adds an item, with text [code]label[/code] and (optionally) [code]id[/code]. "
+"If no [code]id[/code] is passed, the item index will be used as the item's "
+"ID. New items are appended at the end."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:40
+msgid ""
+"Adds a separator to the list of items. Separators help to group items. "
+"Separator also takes up an index and is appended at the end."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:47
+msgid "Clears all the items in the [OptionButton]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:54
+msgid "Returns the amount of items in the OptionButton, including separators."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:63 doc/classes/PopupMenu.xml:273
+msgid "Returns the icon of the item at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:72
+msgid "Returns the ID of the item at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:81
+msgid "Returns the index of the item with the given [code]id[/code]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:90
+msgid ""
+"Retrieves the metadata of an item. Metadata may be any type and can be used "
+"to store extra information about an item, such as an external string ID."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:99 doc/classes/PopupMenu.xml:327
+msgid "Returns the text of the item at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:113
+msgid ""
+"Returns the ID of the selected item, or [code]0[/code] if no item is "
+"selected."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:120
+msgid ""
+"Gets the metadata of the selected item. Metadata for items can be set using "
+"[method set_item_metadata]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:129
+msgid ""
+"Returns [code]true[/code] if the item at index [code]idx[/code] is disabled."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:138
+msgid "Removes the item at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:147
+msgid ""
+"Selects an item by index and makes it the current item. This will work even "
+"if the item is disabled."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:158
+msgid ""
+"Sets whether the item at index [code]idx[/code] is disabled.\n"
+"Disabled items are drawn differently in the dropdown and are not selectable "
+"by the user. If the current selected item is set as disabled, it will remain "
+"selected."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:170
+msgid "Sets the icon of the item at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:181
+msgid "Sets the ID of the item at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:192
+msgid ""
+"Sets the metadata of an item. Metadata may be of any type and can be used to "
+"store extra information about an item, such as an external string ID."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:203 doc/classes/PopupMenu.xml:560
+msgid "Sets the text of the item at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:211
+msgid ""
+"The index of the currently selected item, or [code]-1[/code] if no item is "
+"selected."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:220
+msgid ""
+"Emitted the when user navigates to an item using the [code]ui_up[/code] or "
+"[code]ui_down[/code] actions. The index of the item selected is passed as "
+"argument."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:227
+msgid ""
+"Emitted when the current item has been changed by the user. The index of the "
+"item selected is passed as argument."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:235
+msgid "The arrow icon to be drawn on the right end of the button."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:238
+msgid ""
+"The horizontal space between the arrow icon and the right edge of the button."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:241
+msgid "[StyleBox] used when the [OptionButton] is disabled."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:244
+msgid ""
+"[StyleBox] used when the [OptionButton] is focused. It is displayed over the "
+"current [StyleBox], so using [StyleBoxEmpty] will just disable the focus "
+"visual effect."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:247
+msgid "[Font] of the [OptionButton]'s text."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:250
+msgid "Default text [Color] of the [OptionButton]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:253
+msgid "Text [Color] used when the [OptionButton] is disabled."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:256
+msgid "Text [Color] used when the [OptionButton] is being hovered."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:259
+msgid "Text [Color] used when the [OptionButton] is being pressed."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:262
+msgid "[StyleBox] used when the [OptionButton] is being hovered."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:265
+msgid "The horizontal space between [OptionButton]'s icon and text."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:268
+msgid "Default [StyleBox] for the [OptionButton]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:271
+msgid "[StyleBox] used when the [OptionButton] is being pressed."
+msgstr ""
+
+#: doc/classes/OS.xml:4
+msgid "Operating System functions."
+msgstr ""
+
+#: doc/classes/OS.xml:7
+msgid ""
+"Operating System functions. OS wraps the most common functionality to "
+"communicate with the host operating system, such as the clipboard, video "
+"driver, date and time, timers, environment variables, execution of binaries, "
+"command line, etc."
+msgstr ""
+
+#: doc/classes/OS.xml:16
+msgid ""
+"Returns [code]true[/code] if the current host platform is using multiple "
+"threads."
+msgstr ""
+
+#: doc/classes/OS.xml:23
+msgid ""
+"Shuts down system MIDI driver.\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:33
+msgid ""
+"Delay execution of the current thread by [code]msec[/code] milliseconds."
+msgstr ""
+
+#: doc/classes/OS.xml:42
+msgid ""
+"Delay execution of the current thread by [code]usec[/code] microseconds."
+msgstr ""
+
+#: doc/classes/OS.xml:51
+msgid ""
+"Dumps the memory allocation ringlist to a file (only works in debug).\n"
+"Entry format per line: \"Address - Size - Description\"."
+msgstr ""
+
+#: doc/classes/OS.xml:61
+msgid ""
+"Dumps all used resources to file (only works in debug).\n"
+"Entry format per line: \"Resource Type : Resource Location\".\n"
+"At the end of the file is a statistic of all used Resource Types."
+msgstr ""
+
+#: doc/classes/OS.xml:80
+msgid ""
+"Execute the file at the given path with the arguments passed as an array of "
+"strings. Platform path resolution will take place. The resolved file must "
+"exist and be executable.\n"
+"The arguments are used in the given order and separated by a space, so "
+"[code]OS.execute(\"ping\", [\"-w\", \"3\", \"godotengine.org\"], false)[/"
+"code] will resolve to [code]ping -w 3 godotengine.org[/code] in the system's "
+"shell.\n"
+"This method has slightly different behavior based on whether the "
+"[code]blocking[/code] mode is enabled.\n"
+"If [code]blocking[/code] is [code]true[/code], the Godot thread will pause "
+"its execution while waiting for the process to terminate. The shell output "
+"of the process will be written to the [code]output[/code] array as a single "
+"string. When the process terminates, the Godot thread will resume "
+"execution.\n"
+"If [code]blocking[/code] is [code]false[/code], the Godot thread will "
+"continue while the new process runs. It is not possible to retrieve the "
+"shell output in non-blocking mode, so [code]output[/code] will be empty.\n"
+"The return value also depends on the blocking mode. When blocking, the "
+"method will return an exit code of the process. When non-blocking, the "
+"method returns a process ID, which you can use to monitor the process (and "
+"potentially terminate it with [method kill]). If the process forking (non-"
+"blocking) or opening (blocking) fails, the method will return [code]-1[/"
+"code] or another exit code.\n"
+"Example of blocking mode and retrieving the shell output:\n"
+"[codeblock]\n"
+"var output = []\n"
+"var exit_code = OS.execute(\"ls\", [\"-l\", \"/tmp\"], true, output)\n"
+"[/codeblock]\n"
+"Example of non-blocking mode, running another instance of the project and "
+"storing its process ID:\n"
+"[codeblock]\n"
+"var pid = OS.execute(OS.get_executable_path(), [], false)\n"
+"[/codeblock]\n"
+"If you wish to access a shell built-in or perform a composite command, a "
+"platform-specific shell can be invoked. For example:\n"
+"[codeblock]\n"
+"OS.execute(\"CMD.exe\", [\"/C\", \"cd %TEMP% && dir\"], true, output)\n"
+"[/codeblock]\n"
+"[b]Note:[/b] This method is implemented on Android, iOS, Linux, macOS and "
+"Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:108
+msgid "Returns the keycode of the given string (e.g. \"Escape\")."
+msgstr ""
+
+#: doc/classes/OS.xml:115
+msgid ""
+"Returns the command-line arguments passed to the engine.\n"
+"Command-line arguments can be written in any form, including both [code]--"
+"key value[/code] and [code]--key=value[/code] forms so they can be properly "
+"parsed, as long as custom command-line arguments do not conflict with engine "
+"arguments.\n"
+"You can also incorporate environment variables using the [method "
+"get_environment] method.\n"
+"You can set [code]editor/main_run_args[/code] in the Project Settings to "
+"define command-line arguments to be passed by the editor when running the "
+"project.\n"
+"Here's a minimal example on how to parse command-line arguments into a "
+"dictionary using the [code]--key=value[/code] form for arguments:\n"
+"[codeblock]\n"
+"var arguments = {}\n"
+"for argument in OS.get_cmdline_args():\n"
+" if argument.find(\"=\") > -1:\n"
+" var key_value = argument.split(\"=\")\n"
+" arguments[key_value[0].lstrip(\"--\")] = key_value[1]\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/OS.xml:133
+msgid ""
+"Returns an array of MIDI device names.\n"
+"The returned array will be empty if the system MIDI driver has not "
+"previously been initialised with [method open_midi_inputs].\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:144
+msgid ""
+"Returns current date as a dictionary of keys: [code]year[/code], "
+"[code]month[/code], [code]day[/code], [code]weekday[/code], [code]dst[/code] "
+"(Daylight Savings Time)."
+msgstr ""
+
+#: doc/classes/OS.xml:153
+msgid ""
+"Returns current datetime as a dictionary of keys: [code]year[/code], "
+"[code]month[/code], [code]day[/code], [code]weekday[/code], [code]dst[/code] "
+"(Daylight Savings Time), [code]hour[/code], [code]minute[/code], "
+"[code]second[/code]."
+msgstr ""
+
+#: doc/classes/OS.xml:162
+msgid ""
+"Gets a dictionary of time values corresponding to the given UNIX epoch time "
+"(in seconds).\n"
+"The returned Dictionary's values will be the same as [method get_datetime], "
+"with the exception of Daylight Savings Time as it cannot be determined from "
+"the epoch."
+msgstr ""
+
+#: doc/classes/OS.xml:172
+msgid "Returns an environment variable."
+msgstr ""
+
+#: doc/classes/OS.xml:179
+msgid "Returns the path to the current engine executable."
+msgstr ""
+
+#: doc/classes/OS.xml:186
+msgid ""
+"With this function you can get the list of dangerous permissions that have "
+"been granted to the Android application.\n"
+"[b]Note:[/b] This method is implemented on Android."
+msgstr ""
+
+#: doc/classes/OS.xml:196
+msgid ""
+"Returns the given keycode as a string (e.g. Return values: [code]\"Escape\"[/"
+"code], [code]\"Shift+Escape\"[/code]).\n"
+"See also [member InputEventKey.keycode] and [method InputEventKey."
+"get_keycode_with_modifiers]."
+msgstr ""
+
+#: doc/classes/OS.xml:204
+msgid "Returns the host OS locale."
+msgstr ""
+
+#: doc/classes/OS.xml:211
+msgid ""
+"Returns the model name of the current device.\n"
+"[b]Note:[/b] This method is implemented on Android and iOS. Returns "
+"[code]\"GenericDevice\"[/code] on unsupported platforms."
+msgstr ""
+
+#: doc/classes/OS.xml:219
+msgid ""
+"Returns the name of the host OS. Possible values are: [code]\"Android\"[/"
+"code], [code]\"iOS\"[/code], [code]\"HTML5\"[/code], [code]\"OSX\"[/code], "
+"[code]\"Server\"[/code], [code]\"Windows\"[/code], [code]\"UWP\"[/code], "
+"[code]\"X11\"[/code]."
+msgstr ""
+
+#: doc/classes/OS.xml:226
+msgid ""
+"Returns the project's process ID.\n"
+"[b]Note:[/b] This method is implemented on Android, iOS, Linux, macOS and "
+"Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:234
+msgid "Returns the number of threads available on the host machine."
+msgstr ""
+
+#: doc/classes/OS.xml:241
+msgid ""
+"Returns the amount of time in milliseconds it took for the boot logo to "
+"appear."
+msgstr ""
+
+#: doc/classes/OS.xml:248
+msgid "Returns the maximum amount of static memory used (only works in debug)."
+msgstr ""
+
+#: doc/classes/OS.xml:255
+msgid "Returns the amount of static memory being used by the program in bytes."
+msgstr ""
+
+#: doc/classes/OS.xml:264
+msgid ""
+"Returns the actual path to commonly used folders across different platforms. "
+"Available locations are specified in [enum SystemDir].\n"
+"[b]Note:[/b] This method is implemented on Android, Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:272
+msgid ""
+"Returns the total number of available tablet drivers.\n"
+"[b]Note:[/b] This method is implemented on Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:282
+msgid ""
+"Returns the tablet driver name for the given index.\n"
+"[b]Note:[/b] This method is implemented on Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:290
+msgid ""
+"Returns the amount of time passed in milliseconds since the engine started."
+msgstr ""
+
+#: doc/classes/OS.xml:297
+msgid ""
+"Returns the amount of time passed in microseconds since the engine started."
+msgstr ""
+
+#: doc/classes/OS.xml:306
+msgid "Returns current time as a dictionary of keys: hour, minute, second."
+msgstr ""
+
+#: doc/classes/OS.xml:313
+msgid ""
+"Returns the current time zone as a dictionary with the keys: bias and name."
+msgstr ""
+
+#: doc/classes/OS.xml:320
+msgid ""
+"Returns a string that is unique to the device.\n"
+"[b]Note:[/b] Returns an empty string on HTML5 and UWP, as this method isn't "
+"implemented on those platforms yet."
+msgstr ""
+
+#: doc/classes/OS.xml:328
+msgid "Returns the current UNIX epoch timestamp."
+msgstr ""
+
+#: doc/classes/OS.xml:337
+msgid ""
+"Gets an epoch time value from a dictionary of time values.\n"
+"[code]datetime[/code] must be populated with the following keys: [code]year[/"
+"code], [code]month[/code], [code]day[/code], [code]hour[/code], "
+"[code]minute[/code], [code]second[/code].\n"
+"You can pass the output from [method get_datetime_from_unix_time] directly "
+"into this function. Daylight Savings Time ([code]dst[/code]), if present, is "
+"ignored."
+msgstr ""
+
+#: doc/classes/OS.xml:346
+msgid ""
+"Returns the absolute directory path where user data is written ([code]user://"
+"[/code]).\n"
+"On Linux, this is [code]~/.local/share/godot/app_userdata/[project_name][/"
+"code], or [code]~/.local/share/[custom_name][/code] if "
+"[code]use_custom_user_dir[/code] is set.\n"
+"On macOS, this is [code]~/Library/Application Support/Godot/app_userdata/"
+"[project_name][/code], or [code]~/Library/Application Support/[custom_name][/"
+"code] if [code]use_custom_user_dir[/code] is set.\n"
+"On Windows, this is [code]%APPDATA%\\Godot\\app_userdata\\[project_name][/"
+"code], or [code]%APPDATA%\\[custom_name][/code] if "
+"[code]use_custom_user_dir[/code] is set. [code]%APPDATA%[/code] expands to "
+"[code]%USERPROFILE%\\AppData\\Roaming[/code].\n"
+"If the project name is empty, [code]user://[/code] falls back to [code]res://"
+"[/code]."
+msgstr ""
+
+#: doc/classes/OS.xml:359
+msgid "Returns [code]true[/code] if an environment variable exists."
+msgstr ""
+
+#: doc/classes/OS.xml:368
+msgid ""
+"Returns [code]true[/code] if the feature for the given feature tag is "
+"supported in the currently running instance, depending on platform, build "
+"etc. Can be used to check whether you're currently running a debug build, on "
+"a certain platform or arch, etc. Refer to the [url=https://docs.godotengine."
+"org/en/latest/getting_started/workflow/export/feature_tags.html]Feature "
+"Tags[/url] documentation for more details.\n"
+"[b]Note:[/b] Tag names are case-sensitive."
+msgstr ""
+
+#: doc/classes/OS.xml:376
+msgid ""
+"Returns [code]true[/code] if the Godot binary used to run the project is a "
+"[i]debug[/i] export template, or when running in the editor.\n"
+"Returns [code]false[/code] if the Godot binary used to run the project is a "
+"[i]release[/i] export template.\n"
+"To check whether the Godot binary used to run the project is an export "
+"template (debug or release), use [code]OS.has_feature(\"standalone\")[/code] "
+"instead."
+msgstr ""
+
+#: doc/classes/OS.xml:387
+msgid ""
+"Returns [code]true[/code] if the input keycode corresponds to a Unicode "
+"character."
+msgstr ""
+
+#: doc/classes/OS.xml:394
+msgid ""
+"Returns [code]true[/code] if the engine was executed with [code]-v[/code] "
+"(verbose stdout)."
+msgstr ""
+
+#: doc/classes/OS.xml:401
+msgid ""
+"If [code]true[/code], the [code]user://[/code] file system is persistent, so "
+"that its state is the same after a player quits and starts the game again. "
+"Relevant to the HTML5 platform, where this persistence may be unavailable."
+msgstr ""
+
+#: doc/classes/OS.xml:410
+msgid ""
+"Kill (terminate) the process identified by the given process ID ([code]pid[/"
+"code]), e.g. the one returned by [method execute] in non-blocking mode.\n"
+"[b]Note:[/b] This method can also be used to kill processes that were not "
+"spawned by the game.\n"
+"[b]Note:[/b] This method is implemented on Android, iOS, Linux, macOS and "
+"Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:419
+msgid ""
+"Initialises the singleton for the system MIDI driver.\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:429
+msgid ""
+"Shows all resources in the game. Optionally, the list can be written to a "
+"file by specifying a file path in [code]tofile[/code]."
+msgstr ""
+
+#: doc/classes/OS.xml:436
+msgid "Shows the list of loaded textures sorted by size in memory."
+msgstr ""
+
+#: doc/classes/OS.xml:445
+msgid "Shows the number of resources loaded by the game of the given types."
+msgstr ""
+
+#: doc/classes/OS.xml:454
+msgid "Shows all resources currently used by the game."
+msgstr ""
+
+#: doc/classes/OS.xml:463
+msgid ""
+"At the moment this function is only used by [code]AudioDriverOpenSL[/code] "
+"to request permission for [code]RECORD_AUDIO[/code] on Android."
+msgstr ""
+
+#: doc/classes/OS.xml:470
+msgid ""
+"With this function you can request dangerous permissions since normal "
+"permissions are automatically granted at install time in Android "
+"application.\n"
+"[b]Note:[/b] This method is implemented on Android."
+msgstr ""
+
+#: doc/classes/OS.xml:480
+msgid "Sets the name of the current thread."
+msgstr ""
+
+#: doc/classes/OS.xml:489
+msgid "Enables backup saves if [code]enabled[/code] is [code]true[/code]."
+msgstr ""
+
+#: doc/classes/OS.xml:498
+msgid ""
+"Requests the OS to open a resource with the most appropriate program. For "
+"example:\n"
+"- [code]OS.shell_open(\"C:\\\\Users\\name\\Downloads\")[/code] on Windows "
+"opens the file explorer at the user's Downloads folder.\n"
+"- [code]OS.shell_open(\"https://godotengine.org\")[/code] opens the default "
+"web browser on the official Godot website.\n"
+"- [code]OS.shell_open(\"mailto:example@example.com\")[/code] opens the "
+"default email client with the \"To\" field set to [code]example@example.com[/"
+"code]. See [url=https://blog.escapecreative.com/customizing-mailto-"
+"links/]Customizing [code]mailto:[/code] Links[/url] for a list of fields "
+"that can be added.\n"
+"Use [method ProjectSettings.globalize_path] to convert a [code]res://[/code] "
+"or [code]user://[/code] path into a system path for use with this method.\n"
+"[b]Note:[/b] This method is implemented on Android, iOS, HTML5, Linux, macOS "
+"and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:509
+msgid ""
+"The exit code passed to the OS when the main loop exits. By convention, an "
+"exit code of [code]0[/code] indicates success whereas a non-zero exit code "
+"indicates an error. For portability reasons, the exit code should be set "
+"between 0 and 125 (inclusive).\n"
+"[b]Note:[/b] This value will be ignored if using [method SceneTree.quit] "
+"with an [code]exit_code[/code] argument passed."
+msgstr ""
+
+#: doc/classes/OS.xml:513
+msgid ""
+"If [code]true[/code], the engine optimizes for low processor usage by only "
+"refreshing the screen if needed. Can improve battery consumption on mobile."
+msgstr ""
+
+#: doc/classes/OS.xml:516
+msgid ""
+"The amount of sleeping between frames when the low-processor usage mode is "
+"enabled (in microseconds). Higher values will result in lower CPU usage."
+msgstr ""
+
+#: doc/classes/OS.xml:519
+msgid "The current tablet driver in use."
+msgstr ""
+
+#: doc/classes/OS.xml:524
+msgid ""
+"The GLES2 rendering backend. It uses OpenGL ES 2.0 on mobile devices, OpenGL "
+"2.1 on desktop platforms and WebGL 1.0 on the web."
+msgstr ""
+
+#: doc/classes/OS.xml:527
+msgid "The Vulkan rendering backend."
+msgstr ""
+
+#: doc/classes/OS.xml:530
+msgid "Sunday."
+msgstr ""
+
+#: doc/classes/OS.xml:533
+msgid "Monday."
+msgstr ""
+
+#: doc/classes/OS.xml:536
+msgid "Tuesday."
+msgstr ""
+
+#: doc/classes/OS.xml:539
+msgid "Wednesday."
+msgstr ""
+
+#: doc/classes/OS.xml:542
+msgid "Thursday."
+msgstr ""
+
+#: doc/classes/OS.xml:545
+msgid "Friday."
+msgstr ""
+
+#: doc/classes/OS.xml:548
+msgid "Saturday."
+msgstr ""
+
+#: doc/classes/OS.xml:551
+msgid "January."
+msgstr ""
+
+#: doc/classes/OS.xml:554
+msgid "February."
+msgstr ""
+
+#: doc/classes/OS.xml:557
+msgid "March."
+msgstr ""
+
+#: doc/classes/OS.xml:560
+msgid "April."
+msgstr ""
+
+#: doc/classes/OS.xml:563
+msgid "May."
+msgstr ""
+
+#: doc/classes/OS.xml:566
+msgid "June."
+msgstr ""
+
+#: doc/classes/OS.xml:569
+msgid "July."
+msgstr ""
+
+#: doc/classes/OS.xml:572
+msgid "August."
+msgstr ""
+
+#: doc/classes/OS.xml:575
+msgid "September."
+msgstr ""
+
+#: doc/classes/OS.xml:578
+msgid "October."
+msgstr ""
+
+#: doc/classes/OS.xml:581
+msgid "November."
+msgstr ""
+
+#: doc/classes/OS.xml:584
+msgid "December."
+msgstr ""
+
+#: doc/classes/OS.xml:587
+msgid "Desktop directory path."
+msgstr ""
+
+#: doc/classes/OS.xml:590
+msgid "DCIM (Digital Camera Images) directory path."
+msgstr ""
+
+#: doc/classes/OS.xml:593
+msgid "Documents directory path."
+msgstr ""
+
+#: doc/classes/OS.xml:596
+msgid "Downloads directory path."
+msgstr ""
+
+#: doc/classes/OS.xml:599
+msgid "Movies directory path."
+msgstr ""
+
+#: doc/classes/OS.xml:602
+msgid "Music directory path."
+msgstr ""
+
+#: doc/classes/OS.xml:605
+msgid "Pictures directory path."
+msgstr ""
+
+#: doc/classes/OS.xml:608
+msgid "Ringtones directory path."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:4
+msgid "A packed [Array] of bytes."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:7
+msgid ""
+"An [Array] specifically designed to hold bytes. Packs data tightly, so it "
+"saves memory for large array sizes.\n"
+"[b]Note:[/b] This type is passed by value and not by reference."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:19
+msgid ""
+"Constructs a new [PackedByteArray]. Optionally, you can pass in a generic "
+"[Array] that will be converted."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:37
+msgid "Appends a [PackedByteArray] at the end of this array."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:46
+msgid ""
+"Returns a new [PackedByteArray] with the data compressed. Set the "
+"compression mode using one of [enum File.CompressionMode]'s constants."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:57
+msgid ""
+"Returns a new [PackedByteArray] with the data decompressed. Set "
+"[code]buffer_size[/code] to the size of the uncompressed data. Set the "
+"compression mode using one of [enum File.CompressionMode]'s constants."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:71
+msgid ""
+"Returns a copy of the array's contents as [String]. Fast alternative to "
+"[method get_string_from_utf8] if the content is ASCII-only. Unlike the UTF-8 "
+"function this function maps every byte to a character in the array. "
+"Multibyte sequences will not be interpreted correctly. For parsing user "
+"input always use [method get_string_from_utf8]."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:78
+msgid ""
+"Returns a copy of the array's contents as [String]. Slower than [method "
+"get_string_from_ascii] but supports UTF-8 encoded data. Use this function if "
+"you are unsure about the source of the data. For user input this function "
+"should always be preferred."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:87 doc/classes/PackedColorArray.xml:53
+#: doc/classes/PackedFloat32Array.xml:54 doc/classes/PackedFloat64Array.xml:54
+#: doc/classes/PackedInt32Array.xml:54 doc/classes/PackedInt64Array.xml:54
+#: doc/classes/PackedStringArray.xml:53 doc/classes/PackedVector2Array.xml:53
+#: doc/classes/PackedVector3Array.xml:53
+msgid "Returns [code]true[/code] if the array contains [code]value[/code]."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:94
+msgid ""
+"Returns a hexadecimal representation of this array as a [String].\n"
+"[codeblock]\n"
+"var array = PackedByteArray([11, 46, 255])\n"
+"print(array.hex_encode()) # Prints: 0b2eff\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:109 doc/classes/PackedColorArray.xml:64
+#: doc/classes/PackedFloat32Array.xml:65 doc/classes/PackedFloat64Array.xml:65
+#: doc/classes/PackedStringArray.xml:64 doc/classes/PackedVector2Array.xml:64
+#: doc/classes/PackedVector3Array.xml:64
+msgid ""
+"Inserts a new element at a given position in the array. The position must be "
+"valid, or at the end of the array ([code]idx == size()[/code])."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:143 doc/classes/PackedColorArray.xml:98
+#: doc/classes/PackedFloat32Array.xml:99 doc/classes/PackedFloat64Array.xml:99
+#: doc/classes/PackedInt32Array.xml:99 doc/classes/PackedInt64Array.xml:99
+#: doc/classes/PackedStringArray.xml:98 doc/classes/PackedVector2Array.xml:98
+#: doc/classes/PackedVector3Array.xml:98
+msgid ""
+"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."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:154
+msgid "Changes the byte at the given index."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:161 doc/classes/PackedColorArray.xml:116
+#: doc/classes/PackedFloat32Array.xml:117
+#: doc/classes/PackedFloat64Array.xml:117 doc/classes/PackedStringArray.xml:116
+#: doc/classes/PackedVector2Array.xml:116
+#: doc/classes/PackedVector3Array.xml:116
+msgid "Returns the size of the array."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:168 doc/classes/PackedColorArray.xml:123
+#: doc/classes/PackedFloat32Array.xml:124
+#: doc/classes/PackedFloat64Array.xml:124 doc/classes/PackedInt32Array.xml:124
+#: doc/classes/PackedInt64Array.xml:124 doc/classes/PackedStringArray.xml:123
+#: doc/classes/PackedVector2Array.xml:123
+#: doc/classes/PackedVector3Array.xml:123
+msgid "Sorts the elements of the array in ascending order."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:179
+msgid ""
+"Returns the slice of the [PackedByteArray] between indices (inclusive) as a "
+"new [PackedByteArray]. Any negative index is considered to be from the end "
+"of the array."
+msgstr ""
+
+#: doc/classes/PackedColorArray.xml:4
+msgid "A packed [Array] of [Color]s."
+msgstr ""
+
+#: doc/classes/PackedColorArray.xml:7
+msgid ""
+"An [Array] specifically designed to hold [Color]. Packs data tightly, so it "
+"saves memory for large array sizes.\n"
+"[b]Note:[/b] This type is passed by value and not by reference."
+msgstr ""
+
+#: doc/classes/PackedColorArray.xml:19
+msgid ""
+"Constructs a new [PackedColorArray]. Optionally, you can pass in a generic "
+"[Array] that will be converted."
+msgstr ""
+
+#: doc/classes/PackedColorArray.xml:37
+msgid "Appends a [PackedColorArray] at the end of this array."
+msgstr ""
+
+#: doc/classes/PackedColorArray.xml:80 doc/classes/PackedInt32Array.xml:81
+#: doc/classes/PackedInt64Array.xml:81
+msgid "Appends a value to the array."
+msgstr ""
+
+#: doc/classes/PackedColorArray.xml:109
+msgid "Changes the [Color] at the given index."
+msgstr ""
+
+#: doc/classes/PackedDataContainerRef.xml:4
+msgid "Reference version of [PackedDataContainer]."
+msgstr ""
+
+#: doc/classes/PackedFloat32Array.xml:4
+msgid "A packed [Array] of 32-bit floating-point values."
+msgstr ""
+
+#: doc/classes/PackedFloat32Array.xml:7
+msgid ""
+"An [Array] specifically designed to hold 32-bit floating-point values. Packs "
+"data tightly, so it saves memory for large array sizes.\n"
+"[b]Note:[/b] This type is passed by value and not by reference.\n"
+"If you need to pack 64-bit floats tightly, see [PackedFloat64Array]."
+msgstr ""
+
+#: doc/classes/PackedFloat32Array.xml:20
+msgid ""
+"Constructs a new [PackedFloat32Array]. Optionally, you can pass in a generic "
+"[Array] that will be converted."
+msgstr ""
+
+#: doc/classes/PackedFloat32Array.xml:38
+msgid "Appends a [PackedFloat32Array] at the end of this array."
+msgstr ""
+
+#: doc/classes/PackedFloat32Array.xml:110
+#: doc/classes/PackedFloat64Array.xml:110
+msgid "Changes the float at the given index."
+msgstr ""
+
+#: doc/classes/PackedFloat64Array.xml:4
+msgid "A packed [Array] of 64-bit floating-point values."
+msgstr ""
+
+#: doc/classes/PackedFloat64Array.xml:7
+msgid ""
+"An [Array] specifically designed to hold 64-bit floating-point values. Packs "
+"data tightly, so it saves memory for large array sizes.\n"
+"[b]Note:[/b] This type is passed by value and not by reference.\n"
+"If you only need to pack 32-bit floats tightly, see [PackedFloat32Array] for "
+"a more memory-friendly alternative."
+msgstr ""
+
+#: doc/classes/PackedFloat64Array.xml:20
+msgid ""
+"Constructs a new [PackedFloat64Array]. Optionally, you can pass in a generic "
+"[Array] that will be converted."
+msgstr ""
+
+#: doc/classes/PackedFloat64Array.xml:38
+msgid "Appends a [PackedFloat64Array] at the end of this array."
+msgstr ""
+
+#: doc/classes/PackedInt32Array.xml:4
+msgid "A packed [Array] of 32-bit integers."
+msgstr ""
+
+#: doc/classes/PackedInt32Array.xml:7
+msgid ""
+"An [Array] specifically designed to hold 32-bit integer values. Packs data "
+"tightly, so it saves memory for large array sizes.\n"
+"[b]Note:[/b] This type is passed by value and not by reference.\n"
+"[b]Note:[/b] This type stores signed 32-bit integers, which means it can "
+"take values in the interval [code][-2^31, 2^31 - 1][/code], i.e. [code]"
+"[-2147483648, 2147483647][/code]. Exceeding those bounds will wrap around. "
+"In comparison, [int] uses signed 64-bit integers which can hold much larger "
+"values. If you need to pack 64-bit integers tightly, see [PackedInt64Array]."
+msgstr ""
+
+#: doc/classes/PackedInt32Array.xml:20
+msgid ""
+"Constructs a new [PackedInt32Array]. Optionally, you can pass in a generic "
+"[Array] that will be converted."
+msgstr ""
+
+#: doc/classes/PackedInt32Array.xml:38
+msgid "Appends a [PackedInt32Array] at the end of this array."
+msgstr ""
+
+#: doc/classes/PackedInt32Array.xml:65 doc/classes/PackedInt64Array.xml:65
+msgid ""
+"Inserts a new integer at a given position in the array. The position must be "
+"valid, or at the end of the array ([code]idx == size()[/code])."
+msgstr ""
+
+#: doc/classes/PackedInt32Array.xml:110 doc/classes/PackedInt64Array.xml:110
+msgid "Changes the integer at the given index."
+msgstr ""
+
+#: doc/classes/PackedInt32Array.xml:117 doc/classes/PackedInt64Array.xml:117
+msgid "Returns the array size."
+msgstr ""
+
+#: doc/classes/PackedInt64Array.xml:4
+msgid "A packed [Array] of 64-bit integers."
+msgstr ""
+
+#: doc/classes/PackedInt64Array.xml:7
+msgid ""
+"An [Array] specifically designed to hold 64-bit integer values. Packs data "
+"tightly, so it saves memory for large array sizes.\n"
+"[b]Note:[/b] This type is passed by value and not by reference.\n"
+"[b]Note:[/b] This type stores signed 64-bit integers, which means it can "
+"take values in the interval [code][-2^63, 2^63 - 1][/code], i.e. [code]"
+"[-9223372036854775808, 9223372036854775807][/code]. Exceeding those bounds "
+"will wrap around. If you only need to pack 32-bit integers tightly, see "
+"[PackedInt32Array] for a more memory-friendly alternative."
+msgstr ""
+
+#: doc/classes/PackedInt64Array.xml:20
+msgid ""
+"Constructs a new [PackedInt64Array]. Optionally, you can pass in a generic "
+"[Array] that will be converted."
+msgstr ""
+
+#: doc/classes/PackedInt64Array.xml:38
+msgid "Appends a [PackedInt64Array] at the end of this array."
+msgstr ""
+
+#: doc/classes/PackedScene.xml:4
+msgid "An abstraction of a serialized scene."
+msgstr ""
+
+#: doc/classes/PackedScene.xml:7
+msgid ""
+"A simplified interface to a scene file. Provides access to operations and "
+"checks that can be performed on the scene resource itself.\n"
+"Can be used to save a node to a file. When saving, the node as well as all "
+"the node it owns get saved (see [code]owner[/code] property on [Node]).\n"
+"[b]Note:[/b] The node doesn't need to own itself.\n"
+"[b]Example of loading a saved scene:[/b]\n"
+"[codeblock]\n"
+"# Use `load()` instead of `preload()` if the path isn't known at compile-"
+"time.\n"
+"var scene = preload(\"res://scene.tscn\").instance()\n"
+"# Add the node as a child of the node the script is attached to.\n"
+"add_child(scene)\n"
+"[/codeblock]\n"
+"[b]Example of saving a node with different owners:[/b] The following example "
+"creates 3 objects: [code]Node2D[/code] ([code]node[/code]), "
+"[code]RigidBody2D[/code] ([code]rigid[/code]) and [code]CollisionObject2D[/"
+"code] ([code]collision[/code]). [code]collision[/code] is a child of "
+"[code]rigid[/code] which is a child of [code]node[/code]. Only [code]rigid[/"
+"code] is owned by [code]node[/code] and [code]pack[/code] will therefore "
+"only save those two nodes, but not [code]collision[/code].\n"
+"[codeblock]\n"
+"# Create the objects.\n"
+"var node = Node2D.new()\n"
+"var rigid = RigidBody2D.new()\n"
+"var collision = CollisionShape2D.new()\n"
+"\n"
+"# Create the object hierarchy.\n"
+"rigid.add_child(collision)\n"
+"node.add_child(rigid)\n"
+"\n"
+"# Change owner of `rigid`, but not of `collision`.\n"
+"rigid.owner = node\n"
+"\n"
+"var scene = PackedScene.new()\n"
+"# Only `node` and `rigid` are now packed.\n"
+"var result = scene.pack(node)\n"
+"if result == OK:\n"
+" var error = ResourceSaver.save(\"res://path/name.scn\", scene) # Or "
+"\"user://...\"\n"
+" if error != OK:\n"
+" push_error(\"An error occurred while saving the scene to disk.\")\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/PackedScene.xml:47
+msgid "Returns [code]true[/code] if the scene file has nodes."
+msgstr ""
+
+#: doc/classes/PackedScene.xml:54
+msgid ""
+"Returns the [code]SceneState[/code] representing the scene file contents."
+msgstr ""
+
+#: doc/classes/PackedScene.xml:63
+msgid ""
+"Instantiates the scene's node hierarchy. Triggers child scene "
+"instantiation(s). Triggers a [constant Node.NOTIFICATION_INSTANCED] "
+"notification on the root node."
+msgstr ""
+
+#: doc/classes/PackedScene.xml:72
+msgid ""
+"Pack will ignore any sub-nodes not owned by given node. See [member Node."
+"owner]."
+msgstr ""
+
+#: doc/classes/PackedScene.xml:78
+msgid ""
+"A dictionary representation of the scene contents.\n"
+"Available keys include \"rnames\" and \"variants\" for resources, "
+"\"node_count\", \"nodes\", \"node_paths\" for nodes, \"editable_instances\" "
+"for base scene children overrides, \"conn_count\" and \"conns\" for signal "
+"connections, and \"version\" for the format style of the PackedScene."
+msgstr ""
+
+#: doc/classes/PackedScene.xml:84
+msgid "If passed to [method instance], blocks edits to the scene state."
+msgstr ""
+
+#: doc/classes/PackedScene.xml:87
+msgid ""
+"If passed to [method instance], provides local scene resources to the local "
+"scene.\n"
+"[b]Note:[/b] Only available in editor builds."
+msgstr ""
+
+#: doc/classes/PackedScene.xml:91
+msgid ""
+"If passed to [method instance], provides local scene resources to the local "
+"scene. Only the main scene should receive the main edit state.\n"
+"[b]Note:[/b] Only available in editor builds."
+msgstr ""
+
+#: doc/classes/PackedStringArray.xml:4
+msgid "A packed [Array] of [String]s."
+msgstr ""
+
+#: doc/classes/PackedStringArray.xml:7
+msgid ""
+"An [Array] specifically designed to hold [String]s. Packs data tightly, so "
+"it saves memory for large array sizes.\n"
+"[b]Note:[/b] This type is passed by value and not by reference."
+msgstr ""
+
+#: doc/classes/PackedStringArray.xml:19
+msgid ""
+"Constructs a new [PackedStringArray]. Optionally, you can pass in a generic "
+"[Array] that will be converted."
+msgstr ""
+
+#: doc/classes/PackedStringArray.xml:37
+msgid "Appends a [PackedStringArray] at the end of this array."
+msgstr ""
+
+#: doc/classes/PackedStringArray.xml:80
+msgid "Appends a string element at end of the array."
+msgstr ""
+
+#: doc/classes/PackedStringArray.xml:109
+msgid "Changes the [String] at the given index."
+msgstr ""
+
+#: doc/classes/PackedVector2Array.xml:4
+msgid "A packed [Array] of [Vector2]s."
+msgstr ""
+
+#: doc/classes/PackedVector2Array.xml:7
+msgid ""
+"An [Array] specifically designed to hold [Vector2]. Packs data tightly, so "
+"it saves memory for large array sizes.\n"
+"[b]Note:[/b] This type is passed by value and not by reference."
+msgstr ""
+
+#: doc/classes/PackedVector2Array.xml:19
+msgid ""
+"Constructs a new [PackedVector2Array]. Optionally, you can pass in a generic "
+"[Array] that will be converted."
+msgstr ""
+
+#: doc/classes/PackedVector2Array.xml:37
+msgid "Appends a [PackedVector2Array] at the end of this array."
+msgstr ""
+
+#: doc/classes/PackedVector2Array.xml:80
+msgid "Inserts a [Vector2] at the end."
+msgstr ""
+
+#: doc/classes/PackedVector2Array.xml:109
+msgid "Changes the [Vector2] at the given index."
+msgstr ""
+
+#: doc/classes/PackedVector3Array.xml:4
+msgid "A packed [Array] of [Vector3]s."
+msgstr ""
+
+#: doc/classes/PackedVector3Array.xml:7
+msgid ""
+"An [Array] specifically designed to hold [Vector3]. Packs data tightly, so "
+"it saves memory for large array sizes.\n"
+"[b]Note:[/b] This type is passed by value and not by reference."
+msgstr ""
+
+#: doc/classes/PackedVector3Array.xml:19
+msgid ""
+"Constructs a new [PackedVector3Array]. Optionally, you can pass in a generic "
+"[Array] that will be converted."
+msgstr ""
+
+#: doc/classes/PackedVector3Array.xml:37
+msgid "Appends a [PackedVector3Array] at the end of this array."
+msgstr ""
+
+#: doc/classes/PackedVector3Array.xml:80
+msgid "Inserts a [Vector3] at the end."
+msgstr ""
+
+#: doc/classes/PackedVector3Array.xml:109
+msgid "Changes the [Vector3] at the given index."
+msgstr ""
+
+#: doc/classes/PacketPeer.xml:4
+msgid "Abstraction and base class for packet-based protocols."
+msgstr ""
+
+#: doc/classes/PacketPeer.xml:7
+msgid ""
+"PacketPeer is an abstraction and base class for packet-based protocols (such "
+"as UDP). It provides an API for sending and receiving packets both as raw "
+"data or variables. This makes it easy to transfer data over a protocol, "
+"without having to encode data as low-level bytes or having to worry about "
+"network ordering."
+msgstr ""
+
+#: doc/classes/PacketPeer.xml:16
+msgid "Returns the number of packets currently available in the ring-buffer."
+msgstr ""
+
+#: doc/classes/PacketPeer.xml:23
+msgid "Gets a raw packet."
+msgstr ""
+
+#: doc/classes/PacketPeer.xml:30
+msgid ""
+"Returns the error state of the last packet received (via [method get_packet] "
+"and [method get_var])."
+msgstr ""
+
+#: doc/classes/PacketPeer.xml:39
+msgid ""
+"Gets a Variant. If [code]allow_objects[/code] is [code]true[/code], decoding "
+"objects is allowed.\n"
+"[b]Warning:[/b] 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."
+msgstr ""
+
+#: doc/classes/PacketPeer.xml:49
+msgid "Sends a raw packet."
+msgstr ""
+
+#: doc/classes/PacketPeer.xml:60
+msgid ""
+"Sends a [Variant] as a packet. If [code]full_objects[/code] is [code]true[/"
+"code], encoding objects is allowed (and can potentially include code)."
+msgstr ""
+
+#: doc/classes/PacketPeer.xml:66
+msgid ""
+"Maximum buffer size allowed when encoding [Variant]s. Raise this value to "
+"support heavier memory allocations.\n"
+"The [method put_var] method allocates memory on the stack, and the buffer "
+"used will grow automatically to the closest power of two to match the size "
+"of the [Variant]. If the [Variant] is bigger than "
+"[code]encode_buffer_max_size[/code], the method will error out with "
+"[constant ERR_OUT_OF_MEMORY]."
+msgstr ""
+
+#: doc/classes/PacketPeerDTLS.xml:4
+msgid "DTLS packet peer."
+msgstr ""
+
+#: doc/classes/PacketPeerDTLS.xml:7
+msgid ""
+"This class represents a DTLS peer connection. It can be used to connect to a "
+"DTLS server, and is returned by [method DTLSServer.take_connection]."
+msgstr ""
+
+#: doc/classes/PacketPeerDTLS.xml:24
+msgid ""
+"Connects a [code]peer[/code] beginning the DTLS handshake using the "
+"underlying [PacketPeerUDP] which must be connected (see [method "
+"PacketPeerUDP.connect_to_host]). If [code]validate_certs[/code] is "
+"[code]true[/code], [PacketPeerDTLS] will validate that the certificate "
+"presented by the remote peer and match it with the [code]for_hostname[/code] "
+"argument. You can specify a custom [X509Certificate] to use for validation "
+"via the [code]valid_certificate[/code] argument."
+msgstr ""
+
+#: doc/classes/PacketPeerDTLS.xml:31
+msgid "Disconnects this peer, terminating the DTLS session."
+msgstr ""
+
+#: doc/classes/PacketPeerDTLS.xml:38 doc/classes/StreamPeerSSL.xml:55
+msgid "Returns the status of the connection. See [enum Status] for values."
+msgstr ""
+
+#: doc/classes/PacketPeerDTLS.xml:45
+msgid ""
+"Poll the connection to check for incoming packets. Call this frequently to "
+"update the status and keep the connection working."
+msgstr ""
+
+#: doc/classes/PacketPeerDTLS.xml:51
+msgid "A status representing a [PacketPeerDTLS] that is disconnected."
+msgstr ""
+
+#: doc/classes/PacketPeerDTLS.xml:54
+msgid ""
+"A status representing a [PacketPeerDTLS] that is currently performing the "
+"handshake with a remote peer."
+msgstr ""
+
+#: doc/classes/PacketPeerDTLS.xml:57
+msgid ""
+"A status representing a [PacketPeerDTLS] that is connected to a remote peer."
+msgstr ""
+
+#: doc/classes/PacketPeerDTLS.xml:60
+msgid "A status representing a [PacketPeerDTLS] in a generic error state."
+msgstr ""
+
+#: doc/classes/PacketPeerDTLS.xml:63
+msgid ""
+"An error status that shows a mismatch in the DTLS certificate domain "
+"presented by the host and the domain requested for validation."
+msgstr ""
+
+#: doc/classes/PacketPeerStream.xml:4
+msgid "Wrapper to use a PacketPeer over a StreamPeer."
+msgstr ""
+
+#: doc/classes/PacketPeerStream.xml:7
+msgid ""
+"PacketStreamPeer provides a wrapper for working using packets over a stream. "
+"This allows for using packet based code with StreamPeers. PacketPeerStream "
+"implements a custom protocol over the StreamPeer, so the user should not "
+"read or write to the wrapped StreamPeer directly."
+msgstr ""
+
+#: doc/classes/PacketPeerStream.xml:19
+msgid "The wrapped [StreamPeer] object."
+msgstr ""
+
+#: doc/classes/PacketPeerUDP.xml:4
+msgid "UDP packet peer."
+msgstr ""
+
+#: doc/classes/PacketPeerUDP.xml:7
+msgid ""
+"UDP packet peer. Can be used to send raw UDP packets as well as [Variant]s."
+msgstr ""
+
+#: doc/classes/PacketPeerUDP.xml:16
+msgid "Closes the UDP socket the [PacketPeerUDP] is currently listening on."
+msgstr ""
+
+#: doc/classes/PacketPeerUDP.xml:27
+msgid ""
+"Calling this method connects this UDP peer to the given [code]host[/code]/"
+"[code]port[/code] pair. UDP is in reality connectionless, so this option "
+"only means that incoming packets from different addresses are automatically "
+"discarded, and that outgoing packets are always sent to the connected "
+"address (future calls to [method set_dest_address] are not allowed). This "
+"method does not send any data to the remote peer, to do that, use [method "
+"PacketPeer.put_var] or [method PacketPeer.put_packet] as usual. See also "
+"[UDPServer].\n"
+"Note: Connecting to the remote peer does not help to protect from malicious "
+"attacks like IP spoofing, etc. Think about using an encryption technique "
+"like SSL or DTLS if you feel like your application is transferring sensitive "
+"information."
+msgstr ""
+
+#: doc/classes/PacketPeerUDP.xml:35
+msgid ""
+"Returns the IP of the remote peer that sent the last packet(that was "
+"received with [method PacketPeer.get_packet] or [method PacketPeer.get_var])."
+msgstr ""
+
+#: doc/classes/PacketPeerUDP.xml:42
+msgid ""
+"Returns the port of the remote peer that sent the last packet(that was "
+"received with [method PacketPeer.get_packet] or [method PacketPeer.get_var])."
+msgstr ""
+
+#: doc/classes/PacketPeerUDP.xml:49
+msgid ""
+"Returns [code]true[/code] if the UDP socket is open and has been connected "
+"to a remote address. See [method connect_to_host]."
+msgstr ""
+
+#: doc/classes/PacketPeerUDP.xml:56
+msgid "Returns whether this [PacketPeerUDP] is listening."
+msgstr ""
+
+#: doc/classes/PacketPeerUDP.xml:67
+msgid ""
+"Joins the multicast group specified by [code]multicast_address[/code] using "
+"the interface identified by [code]interface_name[/code].\n"
+"You can join the same multicast group with multiple interfaces. Use [method "
+"IP.get_local_interfaces] to know which are available.\n"
+"Note: Some Android devices might require the "
+"[code]CHANGE_WIFI_MULTICAST_STATE[/code] permission for multicast to work."
+msgstr ""
+
+#: doc/classes/PacketPeerUDP.xml:80
+msgid ""
+"Removes the interface identified by [code]interface_name[/code] from the "
+"multicast group specified by [code]multicast_address[/code]."
+msgstr ""
+
+#: doc/classes/PacketPeerUDP.xml:93
+msgid ""
+"Makes this [PacketPeerUDP] listen on the [code]port[/code] binding to "
+"[code]bind_address[/code] with a buffer size [code]recv_buf_size[/code].\n"
+"If [code]bind_address[/code] is set to [code]\"*\"[/code] (default), the "
+"peer will listen on all available addresses (both IPv4 and IPv6).\n"
+"If [code]bind_address[/code] is set to [code]\"0.0.0.0\"[/code] (for IPv4) "
+"or [code]\"::\"[/code] (for IPv6), the peer will listen on all available "
+"addresses matching that IP type.\n"
+"If [code]bind_address[/code] is set to any valid address (e.g. "
+"[code]\"192.168.1.101\"[/code], [code]\"::1\"[/code], etc), the peer will "
+"only listen on the interface with that addresses (or fail if no interface "
+"with the given address exists)."
+msgstr ""
+
+#: doc/classes/PacketPeerUDP.xml:105
+msgid ""
+"Enable or disable sending of broadcast packets (e.g. "
+"[code]set_dest_address(\"255.255.255.255\", 4343)[/code]. This option is "
+"disabled by default.\n"
+"Note: Some Android devices might require the "
+"[code]CHANGE_WIFI_MULTICAST_STATE[/code] permission and this option to be "
+"enabled to receive broadcast packets too."
+msgstr ""
+
+#: doc/classes/PacketPeerUDP.xml:117
+msgid ""
+"Sets the destination address and port for sending packets and variables. A "
+"hostname will be resolved using DNS if needed.\n"
+"Note: [method set_broadcast_enabled] must be enabled before sending packets "
+"to a broadcast address (e.g. [code]255.255.255.255[/code])."
+msgstr ""
+
+#: doc/classes/PacketPeerUDP.xml:125
+msgid ""
+"Waits for a packet to arrive on the listening port. See [method listen]."
+msgstr ""
+
+#: doc/classes/Panel.xml:4
+msgid "Provides an opaque background for [Control] children."
+msgstr ""
+
+#: doc/classes/Panel.xml:7
+msgid ""
+"Panel is a [Control] that displays an opaque background. It's commonly used "
+"as a parent and container for other types of [Control] nodes."
+msgstr ""
+
+#: doc/classes/Panel.xml:25
+msgid "The style of this [Panel]."
+msgstr ""
+
+#: doc/classes/PanelContainer.xml:4
+msgid "Panel container type."
+msgstr ""
+
+#: doc/classes/PanelContainer.xml:7
+msgid ""
+"Panel container type. This container fits controls inside of the delimited "
+"area of a stylebox. It's useful for giving controls an outline."
+msgstr ""
+
+#: doc/classes/PanelContainer.xml:20
+msgid "The style of [PanelContainer]'s background."
+msgstr ""
+
+#: doc/classes/PanoramaSkyMaterial.xml:4
+msgid "A [Material] used with [Sky] to draw a background texture."
+msgstr ""
+
+#: doc/classes/PanoramaSkyMaterial.xml:7
+msgid ""
+"A resource referenced in a [Sky] that is used to draw a background. The "
+"Panorama sky material functions similar to skyboxes in other engines, except "
+"it uses an equirectangular sky map instead of a cube map.\n"
+"Using an HDR panorama is strongly recommended for accurate, high-quality "
+"reflections. Godot supports the Radiance HDR ([code].hdr[/code]) and OpenEXR "
+"([code].exr[/code]) image formats for this purpose.\n"
+"You can use [url=https://danilw.github.io/GLSL-howto/cubemap_to_panorama_js/"
+"cubemap_to_panorama.html]this tool[/url] to convert a cube map to an "
+"equirectangular sky map."
+msgstr ""
+
+#: doc/classes/PanoramaSkyMaterial.xml:17
+msgid "[Texture2D] to be applied to the [PanoramaSkyMaterial]."
+msgstr ""
+
+#: doc/classes/ParallaxBackground.xml:4
+msgid "A node used to create a parallax scrolling background."
+msgstr ""
+
+#: doc/classes/ParallaxBackground.xml:7
+msgid ""
+"A ParallaxBackground uses one or more [ParallaxLayer] child nodes to create "
+"a parallax effect. Each [ParallaxLayer] can move at a different speed using "
+"[member ParallaxLayer.motion_offset]. This creates an illusion of depth in a "
+"2D game. If not used with a [Camera2D], you must manually calculate the "
+"[member scroll_offset]."
+msgstr ""
+
+#: doc/classes/ParallaxBackground.xml:16
+msgid "The base position offset for all [ParallaxLayer] children."
+msgstr ""
+
+#: doc/classes/ParallaxBackground.xml:19
+msgid "The base motion scale for all [ParallaxLayer] children."
+msgstr ""
+
+#: doc/classes/ParallaxBackground.xml:22
+msgid ""
+"If [code]true[/code], elements in [ParallaxLayer] child aren't affected by "
+"the zoom level of the camera."
+msgstr ""
+
+#: doc/classes/ParallaxBackground.xml:25
+msgid ""
+"Top-left limits for scrolling to begin. If the camera is outside of this "
+"limit, the background will stop scrolling. Must be lower than [member "
+"scroll_limit_end] to work."
+msgstr ""
+
+#: doc/classes/ParallaxBackground.xml:28
+msgid ""
+"Bottom-right limits for scrolling to end. If the camera is outside of this "
+"limit, the background will stop scrolling. Must be higher than [member "
+"scroll_limit_begin] to work."
+msgstr ""
+
+#: doc/classes/ParallaxBackground.xml:31
+msgid ""
+"The ParallaxBackground's scroll value. Calculated automatically when using a "
+"[Camera2D], but can be used to manually manage scrolling when no camera is "
+"present."
+msgstr ""
+
+#: doc/classes/ParallaxLayer.xml:4
+msgid "A parallax scrolling layer to be used with [ParallaxBackground]."
+msgstr ""
+
+#: doc/classes/ParallaxLayer.xml:7
+msgid ""
+"A ParallaxLayer must be the child of a [ParallaxBackground] node. Each "
+"ParallaxLayer can be set to move at different speeds relative to the camera "
+"movement or the [member ParallaxBackground.scroll_offset] value.\n"
+"This node's children will be affected by its scroll offset.\n"
+"[b]Note:[/b] Any changes to this node's position and scale made after it "
+"enters the scene will be ignored."
+msgstr ""
+
+#: doc/classes/ParallaxLayer.xml:17
+msgid ""
+"The ParallaxLayer's [Texture2D] mirroring. Useful for creating an infinite "
+"scrolling background. If an axis is set to [code]0[/code], the [Texture2D] "
+"will not be mirrored."
+msgstr ""
+
+#: doc/classes/ParallaxLayer.xml:20
+msgid ""
+"The ParallaxLayer's offset relative to the parent ParallaxBackground's "
+"[member ParallaxBackground.scroll_offset]."
+msgstr ""
+
+#: doc/classes/ParallaxLayer.xml:23
+msgid ""
+"Multiplies the ParallaxLayer's motion. If an axis is set to [code]0[/code], "
+"it will not scroll."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:4
+msgid "Particle properties for [GPUParticles3D] and [GPUParticles2D] nodes."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:7
+msgid ""
+"ParticlesMaterial defines particle properties and behavior. It is used in "
+"the [code]process_material[/code] of [GPUParticles3D] and [GPUParticles2D] "
+"emitter nodes.\n"
+"Some of this material's properties are applied to each particle when "
+"emitted, while others can have a [CurveTexture] applied to vary values over "
+"the lifetime of the particle.\n"
+"When a randomness ratio is applied to a property it is used to scale that "
+"property by a random amount. The random ratio is used to interpolate between "
+"[code]1.0[/code] and a random number less than one, the result is multiplied "
+"by the property to obtain the randomized property. For example a random "
+"ratio of [code]0.4[/code] would scale the original property between "
+"[code]0.4-1.0[/code] of its original value."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:20
+msgid "Returns [code]true[/code] if the specified flag is enabled."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:38
+msgid "Returns the randomness ratio associated with the specified parameter."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:47
+msgid "Returns the [Texture2D] used by the specified parameter."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:58
+msgid ""
+"If [code]true[/code], enables the specified flag. See [enum Flags] for "
+"options."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:69
+msgid "Sets the specified [enum Parameter]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:80
+msgid "Sets the randomness ratio for the specified [enum Parameter]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:91
+msgid "Sets the [Texture2D] for the specified [enum Parameter]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:97
+msgid ""
+"Initial rotation applied to each particle, in degrees.\n"
+"Only applied when [member flag_disable_z] or [member flag_rotate_y] are "
+"[code]true[/code] or the [BaseMaterial3D] being used to draw the particle is "
+"using [constant BaseMaterial3D.BILLBOARD_PARTICLES]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:101
+msgid "Each particle's rotation will be animated along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:107
+msgid ""
+"Initial angular velocity applied to each particle. Sets the speed of "
+"rotation of the particle.\n"
+"Only applied when [member flag_disable_z] or [member flag_rotate_y] are "
+"[code]true[/code] or the [BaseMaterial3D] being used to draw the particle is "
+"using [constant BaseMaterial3D.BILLBOARD_PARTICLES]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:111
+msgid "Each particle's angular velocity will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:120
+msgid "Each particle's animation offset will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:129
+msgid "Each particle's animation speed will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:135
+msgid ""
+"Each particle's initial color. If the [GPUParticles2D]'s [code]texture[/"
+"code] is defined, it will be multiplied by this color. To have particle "
+"display color in a [BaseMaterial3D] make sure to set [member BaseMaterial3D."
+"vertex_color_use_as_albedo] to [code]true[/code]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:138
+msgid "Each particle's color will vary along this [GradientTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:144
+msgid "Damping will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:153
+msgid ""
+"The box's extents if [code]emission_shape[/code] is set to [constant "
+"EMISSION_SHAPE_BOX]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:156
+msgid ""
+"Particle color will be modulated by color determined by sampling this "
+"texture at the same point as the [member emission_point_texture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:159
+msgid ""
+"Particle velocity and rotation will be set by sampling this texture at the "
+"same point as the [member emission_point_texture]. Used only in [constant "
+"EMISSION_SHAPE_DIRECTED_POINTS]. Can be created automatically from mesh or "
+"node by selecting \"Create Emission Points from Mesh/Node\" under the "
+"\"Particles\" tool in the toolbar."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:162
+msgid ""
+"The number of emission points if [code]emission_shape[/code] is set to "
+"[constant EMISSION_SHAPE_POINTS] or [constant "
+"EMISSION_SHAPE_DIRECTED_POINTS]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:165
+msgid ""
+"Particles will be emitted at positions determined by sampling this texture "
+"at a random position. Used with [constant EMISSION_SHAPE_POINTS] and "
+"[constant EMISSION_SHAPE_DIRECTED_POINTS]. Can be created automatically from "
+"mesh or node by selecting \"Create Emission Points from Mesh/Node\" under "
+"the \"Particles\" tool in the toolbar."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:168
+msgid ""
+"Particles will be emitted inside this region. Use [enum EmissionShape] "
+"constants for values."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:171
+msgid ""
+"The sphere's radius if [code]emission_shape[/code] is set to [constant "
+"EMISSION_SHAPE_SPHERE]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:192
+msgid "Each particle's hue will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:210
+msgid ""
+"Each particle's linear acceleration will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:216
+msgid ""
+"Orbital velocity applied to each particle. Makes the particles circle around "
+"origin. Specified in number of full rotations around origin per second.\n"
+"Only available when [member flag_disable_z] is [code]true[/code]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:220
+msgid "Each particle's orbital velocity will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:229
+msgid ""
+"Each particle's radial acceleration will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:238
+msgid "Each particle's scale will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:250
+msgid ""
+"Each particle's tangential acceleration will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:256
+msgid "Trail particles' color will vary along this [GradientTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:259
+msgid ""
+"Emitter will emit [code]amount[/code] divided by [code]trail_divisor[/code] "
+"particles. The remaining particles will be used as trail(s)."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:262
+msgid "Trail particles' size will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:267
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_texture] to set initial velocity properties."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:270
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_texture] to set angular velocity properties."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:273
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_texture] to set orbital velocity properties."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:276
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_texture] to set linear acceleration properties."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:279
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_texture] to set radial acceleration properties."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:282
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_texture] to set tangential acceleration properties."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:285
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_texture] to set damping properties."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:288
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_texture] to set angle properties."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:291
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_texture] to set scale properties."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:294
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_texture] to set hue variation properties."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:297
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_texture] to set animation speed properties."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:300
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_texture] to set animation offset properties."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:306
+msgid "Use with [method set_flag] to set [member flag_align_y]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:309
+msgid "Use with [method set_flag] to set [member flag_rotate_y]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:312
+msgid "Use with [method set_flag] to set [member flag_disable_z]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:327
+msgid ""
+"Particles will be emitted at a position determined by sampling a random "
+"point on the [member emission_point_texture]. Particle color will be "
+"modulated by [member emission_color_texture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:330
+msgid ""
+"Particles will be emitted at a position determined by sampling a random "
+"point on the [member emission_point_texture]. Particle velocity and rotation "
+"will be set based on [member emission_normal_texture]. Particle color will "
+"be modulated by [member emission_color_texture]."
+msgstr ""
+
+#: doc/classes/Path2D.xml:4
+msgid "Contains a [Curve2D] path for [PathFollow2D] nodes to follow."
+msgstr ""
+
+#: doc/classes/Path2D.xml:7
+msgid ""
+"Can have [PathFollow2D] child nodes moving along the [Curve2D]. See "
+"[PathFollow2D] for more information on usage.\n"
+"[b]Note:[/b] The path is considered as relative to the moved nodes (children "
+"of [PathFollow2D]). As such, the curve should usually start with a zero "
+"vector ([code](0, 0)[/code])."
+msgstr ""
+
+#: doc/classes/Path2D.xml:16
+msgid "A [Curve2D] describing the path."
+msgstr ""
+
+#: doc/classes/Path3D.xml:4
+msgid "Contains a [Curve3D] path for [PathFollow3D] nodes to follow."
+msgstr ""
+
+#: doc/classes/Path3D.xml:7
+msgid ""
+"Can have [PathFollow3D] child nodes moving along the [Curve3D]. See "
+"[PathFollow3D] for more information on the usage.\n"
+"Note that the path is considered as relative to the moved nodes (children of "
+"[PathFollow3D]). As such, the curve should usually start with a zero vector "
+"[code](0, 0, 0)[/code]."
+msgstr ""
+
+#: doc/classes/Path3D.xml:16
+msgid "A [Curve3D] describing the path."
+msgstr ""
+
+#: doc/classes/Path3D.xml:22
+msgid "Emitted when the [member curve] changes."
+msgstr ""
+
+#: doc/classes/PathFollow2D.xml:4
+msgid "Point sampler for a [Path2D]."
+msgstr ""
+
+#: doc/classes/PathFollow2D.xml:7
+msgid ""
+"This node takes its parent [Path2D], and returns the coordinates of a point "
+"within it, given a distance from the first vertex.\n"
+"It is useful for making other nodes follow a path, without coding the "
+"movement pattern. For that, the nodes must be children of this node. The "
+"descendant nodes will then move accordingly when setting an offset in this "
+"node."
+msgstr ""
+
+#: doc/classes/PathFollow2D.xml:16
+msgid ""
+"If [code]true[/code], the position between two cached points is interpolated "
+"cubically, and linearly otherwise.\n"
+"The points along the [Curve2D] of the [Path2D] are precomputed before use, "
+"for faster calculations. The point at the requested offset is then "
+"calculated interpolating between two adjacent cached points. This may "
+"present a problem if the curve makes sharp turns, as the cached points may "
+"not follow the curve closely enough.\n"
+"There are two answers to this problem: either increase the number of cached "
+"points and increase memory consumption, or make a cubic interpolation "
+"between two points at the cost of (slightly) slower calculations."
+msgstr ""
+
+#: doc/classes/PathFollow2D.xml:21 doc/classes/PathFollow3D.xml:21
+msgid "The node's offset along the curve."
+msgstr ""
+
+#: doc/classes/PathFollow2D.xml:24
+msgid ""
+"How far to look ahead of the curve to calculate the tangent if the node is "
+"rotating. E.g. shorter lookaheads will lead to faster rotations."
+msgstr ""
+
+#: doc/classes/PathFollow2D.xml:27 doc/classes/PathFollow3D.xml:24
+msgid ""
+"If [code]true[/code], any offset outside the path's length will wrap around, "
+"instead of stopping at the ends. Use it for cyclic paths."
+msgstr ""
+
+#: doc/classes/PathFollow2D.xml:30
+msgid "The distance along the path in pixels."
+msgstr ""
+
+#: doc/classes/PathFollow2D.xml:33
+msgid ""
+"If [code]true[/code], this node rotates to follow the path, making its "
+"descendants rotate."
+msgstr ""
+
+#: doc/classes/PathFollow2D.xml:36
+msgid ""
+"The distance along the path as a number in the range 0.0 (for the first "
+"vertex) to 1.0 (for the last). This is just another way of expressing the "
+"offset within the path, as the offset supplied is multiplied internally by "
+"the path's length."
+msgstr ""
+
+#: doc/classes/PathFollow2D.xml:39 doc/classes/PathFollow3D.xml:36
+msgid "The node's offset perpendicular to the curve."
+msgstr ""
+
+#: doc/classes/PathFollow3D.xml:4
+msgid "Point sampler for a [Path3D]."
+msgstr ""
+
+#: doc/classes/PathFollow3D.xml:7
+msgid ""
+"This node takes its parent [Path3D], and returns the coordinates of a point "
+"within it, given a distance from the first vertex.\n"
+"It is useful for making other nodes follow a path, without coding the "
+"movement pattern. For that, the nodes must be children of this node. The "
+"descendant nodes will then move accordingly when setting an offset in this "
+"node."
+msgstr ""
+
+#: doc/classes/PathFollow3D.xml:16
+msgid ""
+"If [code]true[/code], the position between two cached points is interpolated "
+"cubically, and linearly otherwise.\n"
+"The points along the [Curve3D] of the [Path3D] are precomputed before use, "
+"for faster calculations. The point at the requested offset is then "
+"calculated interpolating between two adjacent cached points. This may "
+"present a problem if the curve makes sharp turns, as the cached points may "
+"not follow the curve closely enough.\n"
+"There are two answers to this problem: either increase the number of cached "
+"points and increase memory consumption, or make a cubic interpolation "
+"between two points at the cost of (slightly) slower calculations."
+msgstr ""
+
+#: doc/classes/PathFollow3D.xml:27
+msgid ""
+"The distance from the first vertex, measured in 3D units along the path. "
+"This sets this node's position to a point within the path."
+msgstr ""
+
+#: doc/classes/PathFollow3D.xml:30
+msgid ""
+"Allows or forbids rotation on one or more axes, depending on the [enum "
+"RotationMode] constants being used."
+msgstr ""
+
+#: doc/classes/PathFollow3D.xml:33
+msgid ""
+"The distance from the first vertex, considering 0.0 as the first vertex and "
+"1.0 as the last. This is just another way of expressing the offset within "
+"the path, as the offset supplied is multiplied internally by the path's "
+"length."
+msgstr ""
+
+#: doc/classes/PathFollow3D.xml:41
+msgid "Forbids the PathFollow3D to rotate."
+msgstr ""
+
+#: doc/classes/PathFollow3D.xml:44
+msgid "Allows the PathFollow3D to rotate in the Y axis only."
+msgstr ""
+
+#: doc/classes/PathFollow3D.xml:47
+msgid "Allows the PathFollow3D to rotate in both the X, and Y axes."
+msgstr ""
+
+#: doc/classes/PathFollow3D.xml:50
+msgid "Allows the PathFollow3D to rotate in any axis."
+msgstr ""
+
+#: doc/classes/PathFollow3D.xml:53
+msgid ""
+"Uses the up vector information in a [Curve3D] to enforce orientation. This "
+"rotation mode requires the [Path3D]'s [member Curve3D.up_vector_enabled] "
+"property to be set to [code]true[/code]."
+msgstr ""
+
+#: doc/classes/PCKPacker.xml:4
+msgid "Creates packages that can be loaded into a running project."
+msgstr ""
+
+#: doc/classes/PCKPacker.xml:7
+msgid ""
+"The [PCKPacker] is used to create packages that can be loaded into a running "
+"project using [method ProjectSettings.load_resource_pack].\n"
+"[codeblock]\n"
+"var packer = PCKPacker.new()\n"
+"packer.pck_start(\"test.pck\")\n"
+"packer.add_file(\"res://text.txt\", \"text.txt\")\n"
+"packer.flush()\n"
+"[/codeblock]\n"
+"The above [PCKPacker] creates package [code]test.pck[/code], then adds a "
+"file named [code]text.txt[/code] at the root of the package."
+msgstr ""
+
+#: doc/classes/PCKPacker.xml:27
+msgid ""
+"Adds the [code]source_path[/code] file to the current PCK package at the "
+"[code]pck_path[/code] internal path (should start with [code]res://[/code])."
+msgstr ""
+
+#: doc/classes/PCKPacker.xml:36
+msgid ""
+"Writes the files specified using all [method add_file] calls since the last "
+"flush. If [code]verbose[/code] is [code]true[/code], a list of files added "
+"will be printed to the console for easier debugging."
+msgstr ""
+
+#: doc/classes/PCKPacker.xml:47
+msgid ""
+"Creates a new PCK file with the name [code]pck_name[/code]. The [code].pck[/"
+"code] file extension isn't added automatically, so it should be part of "
+"[code]pck_name[/code] (even though it's not required)."
+msgstr ""
+
+#: doc/classes/Performance.xml:4
+msgid "Exposes performance-related data."
+msgstr ""
+
+#: doc/classes/Performance.xml:7
+msgid ""
+"This class provides access to a number of different monitors related to "
+"performance, such as memory usage, draw calls, and FPS. These are the same "
+"as the values displayed in the [b]Monitor[/b] tab in the editor's "
+"[b]Debugger[/b] panel. By using the [method get_monitor] method of this "
+"class, you can access this data from your code.\n"
+"You can add custom monitors using the [method add_custom_monitor] method. "
+"Custom monitors are available in [b]Monitor[/b] tab in the editor's "
+"[b]Debugger[/b] panel together with built-in monitors.\n"
+"[b]Note:[/b] A few of these monitors are only available in debug mode and "
+"will always return 0 when used in a release build.\n"
+"[b]Note:[/b] Many of these monitors are not updated in real-time, so there "
+"may be a short delay between changes.\n"
+"[b]Note:[/b] Custom monitors do not support negative values. Negative values "
+"are clamped to 0."
+msgstr ""
+
+#: doc/classes/Performance.xml:26
+msgid ""
+"Adds a custom monitor with name same as id. You can specify the category of "
+"monitor using '/' in id. If there are more than one '/' then default "
+"category is used. Default category is \"Custom\".\n"
+"[codeblock]\n"
+"Performance.add_custom_monitor(\"MyCategory/MyMonitor\", some_callable) # "
+"Adds monitor with name \"MyName\" to category \"MyCategory\"\n"
+"Performance.add_custom_monitor(\"MyMonitor\", some_callable) # Adds monitor "
+"with name \"MyName\" to category \"Custom\"\n"
+"# Note: \"MyCategory/MyMonitor\" and \"MyMonitor\" have same name but "
+"different ids so above code is valid\n"
+"Performance.add_custom_monitor(\"Custom/MyMonitor\", some_callable) # Adds "
+"monitor with name \"MyName\" to category \"Custom\"\n"
+"# Note: \"MyMonitor\" and \"Custom/MyMonitor\" have same name and same "
+"category but different ids so above code is valid\n"
+"Performance.add_custom_monitor(\"MyCategoryOne/MyCategoryTwo/MyMonitor\", "
+"some_callable) # Adds monitor with name \"MyCategoryOne/MyCategoryTwo/"
+"MyMonitor\" to category \"Custom\"\n"
+"[/codeblock]\n"
+"The debugger calls the callable to get the value of custom monitor. The "
+"callable must return a number.\n"
+"Callables are called with arguments supplied in argument array.\n"
+"[b]Note:[/b] It throws an error if given id is already present."
+msgstr ""
+
+#: doc/classes/Performance.xml:46
+msgid ""
+"Returns the value of custom monitor with given id. The callable is called to "
+"get the value of custom monitor.\n"
+"[b]Note:[/b] It throws an error if the given id is absent."
+msgstr ""
+
+#: doc/classes/Performance.xml:54
+msgid "Returns the names of active custom monitors in an array."
+msgstr ""
+
+#: doc/classes/Performance.xml:63
+msgid ""
+"Returns the value of one of the available monitors. You should provide one "
+"of the [enum Monitor] constants as the argument, like this:\n"
+"[codeblock]\n"
+"print(Performance.get_monitor(Performance.TIME_FPS)) # Prints the FPS to the "
+"console\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Performance.xml:73
+msgid "Returns the last tick in which custom monitor was added/removed."
+msgstr ""
+
+#: doc/classes/Performance.xml:82
+msgid ""
+"Returns true if custom monitor with the given id is present otherwise "
+"returns false."
+msgstr ""
+
+#: doc/classes/Performance.xml:91
+msgid ""
+"Removes the custom monitor with given id.\n"
+"[b]Note:[/b] It throws an error if the given id is already absent."
+msgstr ""
+
+#: doc/classes/Performance.xml:98
+msgid "Number of frames per second."
+msgstr ""
+
+#: doc/classes/Performance.xml:101
+msgid "Time it took to complete one frame, in seconds."
+msgstr ""
+
+#: doc/classes/Performance.xml:104
+msgid "Time it took to complete one physics frame, in seconds."
+msgstr ""
+
+#: doc/classes/Performance.xml:107
+msgid ""
+"Static memory currently used, in bytes. Not available in release builds."
+msgstr ""
+
+#: doc/classes/Performance.xml:110
+msgid "Available static memory. Not available in release builds."
+msgstr ""
+
+#: doc/classes/Performance.xml:113
+msgid ""
+"Largest amount of memory the message queue buffer has used, in bytes. The "
+"message queue is used for deferred functions calls and notifications."
+msgstr ""
+
+#: doc/classes/Performance.xml:116
+msgid "Number of objects currently instanced (including nodes)."
+msgstr ""
+
+#: doc/classes/Performance.xml:119
+msgid "Number of resources currently used."
+msgstr ""
+
+#: doc/classes/Performance.xml:122
+msgid ""
+"Number of nodes currently instanced in the scene tree. This also includes "
+"the root node."
+msgstr ""
+
+#: doc/classes/Performance.xml:125
+msgid ""
+"Number of orphan nodes, i.e. nodes which are not parented to a node of the "
+"scene tree."
+msgstr ""
+
+#: doc/classes/Performance.xml:128
+msgid "3D objects drawn per frame."
+msgstr ""
+
+#: doc/classes/Performance.xml:131
+msgid "Vertices drawn per frame. 3D only."
+msgstr ""
+
+#: doc/classes/Performance.xml:134
+msgid "Material changes per frame. 3D only."
+msgstr ""
+
+#: doc/classes/Performance.xml:137
+msgid "Shader changes per frame. 3D only."
+msgstr ""
+
+#: doc/classes/Performance.xml:140
+msgid "Render surface changes per frame. 3D only."
+msgstr ""
+
+#: doc/classes/Performance.xml:143
+msgid "Draw calls per frame. 3D only."
+msgstr ""
+
+#: doc/classes/Performance.xml:146 doc/classes/RenderingServer.xml:3816
+msgid ""
+"The amount of video memory used, i.e. texture and vertex memory combined."
+msgstr ""
+
+#: doc/classes/Performance.xml:149 doc/classes/RenderingServer.xml:3819
+msgid "The amount of texture memory used."
+msgstr ""
+
+#: doc/classes/Performance.xml:152 doc/classes/RenderingServer.xml:3822
+msgid "The amount of vertex memory used."
+msgstr ""
+
+#: doc/classes/Performance.xml:155 doc/classes/RenderingServer.xml:3813
+msgid "Unimplemented in the GLES2 rendering backend, always returns 0."
+msgstr ""
+
+#: doc/classes/Performance.xml:158
+msgid "Number of active [RigidBody2D] nodes in the game."
+msgstr ""
+
+#: doc/classes/Performance.xml:161
+msgid "Number of collision pairs in the 2D physics engine."
+msgstr ""
+
+#: doc/classes/Performance.xml:164
+msgid "Number of islands in the 2D physics engine."
+msgstr ""
+
+#: doc/classes/Performance.xml:167
+msgid "Number of active [RigidBody3D] and [VehicleBody3D] nodes in the game."
+msgstr ""
+
+#: doc/classes/Performance.xml:170
+msgid "Number of collision pairs in the 3D physics engine."
+msgstr ""
+
+#: doc/classes/Performance.xml:173
+msgid "Number of islands in the 3D physics engine."
+msgstr ""
+
+#: doc/classes/Performance.xml:176
+msgid "Output latency of the [AudioServer]."
+msgstr ""
+
+#: doc/classes/Performance.xml:179
+msgid "Represents the size of the [enum Monitor] enum."
+msgstr ""
+
+#: doc/classes/PHashTranslation.xml:4
+msgid "Optimized translation."
+msgstr ""
+
+#: doc/classes/PHashTranslation.xml:7
+msgid ""
+"Optimized translation. Uses real-time compressed translations, which results "
+"in very small dictionaries."
+msgstr ""
+
+#: doc/classes/PHashTranslation.xml:18
+msgid ""
+"Generates and sets an optimized translation from the given [Translation] "
+"resource."
+msgstr ""
+
+#: doc/classes/PhysicalBone3D.xml:67
+msgid "Damps the body's rotation if greater than [code]0[/code]."
+msgstr ""
+
+#: doc/classes/PhysicalBone3D.xml:70 doc/classes/RigidBody3D.xml:139
+msgid "Lock the body's rotation in the X axis."
+msgstr ""
+
+#: doc/classes/PhysicalBone3D.xml:73 doc/classes/RigidBody3D.xml:142
+msgid "Lock the body's rotation in the Y axis."
+msgstr ""
+
+#: doc/classes/PhysicalBone3D.xml:76 doc/classes/RigidBody3D.xml:145
+msgid "Lock the body's rotation in the Z axis."
+msgstr ""
+
+#: doc/classes/PhysicalBone3D.xml:79 doc/classes/RigidBody3D.xml:148
+msgid "Lock the body's movement in the X axis."
+msgstr ""
+
+#: doc/classes/PhysicalBone3D.xml:82 doc/classes/RigidBody3D.xml:151
+msgid "Lock the body's movement in the Y axis."
+msgstr ""
+
+#: doc/classes/PhysicalBone3D.xml:85 doc/classes/RigidBody3D.xml:154
+msgid "Lock the body's movement in the Z axis."
+msgstr ""
+
+#: doc/classes/PhysicalBone3D.xml:88
+msgid "Sets the body's transform."
+msgstr ""
+
+#: doc/classes/PhysicalBone3D.xml:91 doc/classes/PhysicsMaterial.xml:18
+msgid ""
+"The body's bounciness. Values range from [code]0[/code] (no bounce) to "
+"[code]1[/code] (full bounciness)."
+msgstr ""
+
+#: doc/classes/PhysicalBone3D.xml:94
+msgid ""
+"If [code]true[/code], the body is deactivated when there is no movement, so "
+"it will not take part in the simulation until it is awaken by an external "
+"force."
+msgstr ""
+
+#: doc/classes/PhysicalBone3D.xml:97
+msgid ""
+"The body's friction, from [code]0[/code] (frictionless) to [code]1[/code] "
+"(max friction)."
+msgstr ""
+
+#: doc/classes/PhysicalBone3D.xml:100
+msgid ""
+"This is multiplied by the global 3D gravity setting found in [b]Project > "
+"Project Settings > Physics > 3d[/b] to produce the body's gravity. For "
+"example, a value of 1 will be normal gravity, 2 will apply double gravity, "
+"and 0.5 will apply half gravity to this object."
+msgstr ""
+
+#: doc/classes/PhysicalBone3D.xml:103
+msgid "Sets the joint's transform."
+msgstr ""
+
+#: doc/classes/PhysicalBone3D.xml:106
+msgid "Sets the joint's rotation in radians."
+msgstr ""
+
+#: doc/classes/PhysicalBone3D.xml:109
+msgid "Sets the joint's rotation in degrees."
+msgstr ""
+
+#: doc/classes/PhysicalBone3D.xml:112
+msgid "Sets the joint type. See [enum JointType] for possible values."
+msgstr ""
+
+#: doc/classes/PhysicalBone3D.xml:115
+msgid "Damps the body's movement if greater than [code]0[/code]."
+msgstr ""
+
+#: doc/classes/PhysicalBone3D.xml:118 doc/classes/RigidBody2D.xml:159
+#: doc/classes/RigidBody3D.xml:183
+msgid "The body's mass."
+msgstr ""
+
+#: doc/classes/PhysicalBone3D.xml:121 doc/classes/RigidBody3D.xml:196
+msgid ""
+"The body's weight based on its mass and the global 3D gravity. Global values "
+"are set in [b]Project > Project Settings > Physics > 3d[/b]."
+msgstr ""
+
+#: doc/classes/PhysicalSkyMaterial.xml:4
+msgid "[Sky] [Material] used for a physically based sky."
+msgstr ""
+
+#: doc/classes/PhysicalSkyMaterial.xml:7
+msgid ""
+"The [PhysicalSkyMaterial] uses the Preetham analytic daylight model to draw "
+"a sky based on physical properties. This results in a substantially more "
+"realistic sky than the [ProceduralSkyMaterial], but it is slightly slower "
+"and less flexible.\n"
+"The [PhysicalSkyMaterial] only supports one sun. The color, energy, and "
+"direction of the sun are taken from the first [DirectionalLight3D] in the "
+"scene tree.\n"
+"As it is based on a daylight model, the sky fades to black as the sunset "
+"ends. If you want a full day/night cycle, you will have to add a night sky "
+"by converting this to a [ShaderMaterial] and adding a night sky directly "
+"into the resulting shader."
+msgstr ""
+
+#: doc/classes/PhysicalSkyMaterial.xml:17
+msgid ""
+"Sets the amount of dithering to use. Dithering helps reduce banding that "
+"appears from the smooth changes in color in the sky. Use the lowest value "
+"possible, higher amounts may add fuzziness to the sky."
+msgstr ""
+
+#: doc/classes/PhysicalSkyMaterial.xml:20
+msgid ""
+"Sets the exposure of the sky. Higher exposure values make the entire sky "
+"brighter."
+msgstr ""
+
+#: doc/classes/PhysicalSkyMaterial.xml:23
+msgid ""
+"Modulates the [Color] on the bottom half of the sky to represent the ground."
+msgstr ""
+
+#: doc/classes/PhysicalSkyMaterial.xml:26
+msgid ""
+"Controls the strength of mie scattering for the sky. Mie scattering results "
+"from light colliding with larger particles (like water). On earth, mie "
+"scattering results in a whiteish color around the sun and horizon."
+msgstr ""
+
+#: doc/classes/PhysicalSkyMaterial.xml:29
+msgid ""
+"Controls the [Color] of the mie scattering effect. While not physically "
+"accurate, this allows for the creation of alien looking planets."
+msgstr ""
+
+#: doc/classes/PhysicalSkyMaterial.xml:32
+msgid ""
+"Controls the direction of the mie scattering. A value of [code]1[/code] "
+"means that when light hits a particle it passing through straight forward. A "
+"value of [code]-1[/code] means that all light is scatter backwards."
+msgstr ""
+
+#: doc/classes/PhysicalSkyMaterial.xml:35
+msgid ""
+"[Texture2D] for the night sky. This is added to the sky, so if it is bright "
+"enough, it may be visible during the day."
+msgstr ""
+
+#: doc/classes/PhysicalSkyMaterial.xml:38
+msgid ""
+"Controls the strength of the rayleigh scattering. Rayleigh scattering "
+"results from light colliding with small particles. It is responsible for the "
+"blue color of the sky."
+msgstr ""
+
+#: doc/classes/PhysicalSkyMaterial.xml:41
+msgid ""
+"Controls the [Color] of the rayleigh scattering. While not physically "
+"accurate, this allows for the creation of alien looking planets. For "
+"example, setting this to a red [Color] results in a mars looking atmosphere "
+"with a corresponding blue sunset."
+msgstr ""
+
+#: doc/classes/PhysicalSkyMaterial.xml:44
+msgid ""
+"Sets the size of the sun disk. Default value is based on Sol's perceived "
+"size from Earth."
+msgstr ""
+
+#: doc/classes/PhysicalSkyMaterial.xml:47
+msgid ""
+"Sets the thickness of the atmosphere. High turbidity creates a foggy looking "
+"atmosphere, while a low turbidity results in a clearer atmosphere."
+msgstr ""
+
+#: doc/classes/PhysicsBody2D.xml:4
+msgid "Base class for all objects affected by physics in 2D space."
+msgstr ""
+
+#: doc/classes/PhysicsBody2D.xml:7
+msgid ""
+"PhysicsBody2D is an abstract base class for implementing a physics body. All "
+"*Body2D types inherit from it."
+msgstr ""
+
+#: doc/classes/PhysicsBody2D.xml:19 doc/classes/PhysicsBody3D.xml:19
+#: doc/classes/SoftBody3D.xml:19
+msgid "Adds a body to the list of bodies that this body can't collide with."
+msgstr ""
+
+#: doc/classes/PhysicsBody2D.xml:26 doc/classes/PhysicsBody3D.xml:26
+#: doc/classes/SoftBody3D.xml:26
+msgid ""
+"Returns an array of nodes that were added as collision exceptions for this "
+"body."
+msgstr ""
+
+#: doc/classes/PhysicsBody2D.xml:53 doc/classes/PhysicsBody3D.xml:53
+#: doc/classes/SoftBody3D.xml:53
+msgid ""
+"Removes a body from the list of bodies that this body can't collide with."
+msgstr ""
+
+#: doc/classes/PhysicsBody2D.xml:64 doc/classes/PhysicsBody3D.xml:64
+msgid ""
+"Sets individual bits on the [member collision_layer] bitmask. Use this if "
+"you only need to change one layer's value."
+msgstr ""
+
+#: doc/classes/PhysicsBody2D.xml:75 doc/classes/PhysicsBody3D.xml:75
+msgid ""
+"Sets individual bits on the [member collision_mask] bitmask. Use this if you "
+"only need to change one layer's value."
+msgstr ""
+
+#: doc/classes/PhysicsBody2D.xml:81 doc/classes/PhysicsBody3D.xml:81
+msgid ""
+"The physics layers this area is in.\n"
+"Collidable objects can exist in any of 32 different layers. These layers "
+"work like a tagging system, and are not visual. A collidable can use these "
+"layers to select with which objects it can collide, using the [member "
+"collision_mask] property.\n"
+"A contact is detected if object A is in any of the layers that object B "
+"scans, or object B is in any layer scanned by object A."
+msgstr ""
+
+#: doc/classes/PhysicsBody2D.xml:86 doc/classes/PhysicsBody3D.xml:86
+msgid "The physics layers this area scans for collisions."
+msgstr ""
+
+#: doc/classes/PhysicsBody2D.xml:90
+msgid ""
+"Both [member collision_layer] and [member collision_mask]. Returns [member "
+"collision_layer] when accessed. Updates [member collision_layer] and [member "
+"collision_mask] when modified."
+msgstr ""
+
+#: doc/classes/PhysicsBody3D.xml:4
+msgid "Base class for all objects affected by physics in 3D space."
+msgstr ""
+
+#: doc/classes/PhysicsBody3D.xml:7
+msgid ""
+"PhysicsBody3D is an abstract base class for implementing a physics body. All "
+"*Body types inherit from it."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:4
+msgid "Direct access object to a physics body in the [PhysicsServer2D]."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:7
+msgid ""
+"Provides direct access to a physics body in the [PhysicsServer2D], allowing "
+"safe changes to physics properties. This object is passed via the direct "
+"state callback of rigid/character bodies, and is intended for changing the "
+"direct state of that body. See [method RigidBody2D._integrate_forces]."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:10
+#: doc/classes/PhysicsDirectSpaceState2D.xml:10
+#: doc/classes/PhysicsDirectSpaceState3D.xml:10 doc/classes/RayCast2D.xml:14
+#: doc/classes/RayCast3D.xml:14 doc/classes/World2D.xml:10
+#: doc/classes/World3D.xml:10
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/physics/ray-casting.html"
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:19 doc/classes/RigidBody2D.xml:31
+msgid "Adds a constant directional force without affecting rotation."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:30
+#: doc/classes/PhysicsDirectBodyState3D.xml:30 doc/classes/RigidBody2D.xml:42
+msgid ""
+"Adds a positioned force to the body. Both the force and the offset from the "
+"body origin are in global coordinates."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:39 doc/classes/RigidBody2D.xml:51
+msgid "Adds a constant rotational force."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:48 doc/classes/RigidBody2D.xml:60
+msgid "Applies a directional impulse without affecting rotation."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:59
+msgid ""
+"Applies a positioned impulse to the body. 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). The offset uses the rotation of "
+"the global coordinate system, but is centered at the object's origin."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:68 doc/classes/RigidBody2D.xml:80
+msgid "Applies a rotational impulse to the body."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:77
+#: doc/classes/PhysicsDirectBodyState3D.xml:78
+msgid "Returns the collider's [RID]."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:86
+#: doc/classes/PhysicsDirectBodyState3D.xml:87
+msgid "Returns the collider's object id."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:95
+msgid ""
+"Returns the collider object. This depends on how it was created (will return "
+"a scene node if such was used to create it)."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:104
+#: doc/classes/PhysicsDirectBodyState3D.xml:105
+msgid "Returns the contact position in the collider."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:113
+#: doc/classes/PhysicsDirectBodyState3D.xml:114
+msgid "Returns the collider's shape index."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:122
+msgid ""
+"Returns the collided shape's metadata. This metadata is different from "
+"[method Object.get_meta], and is set with [method PhysicsServer2D."
+"shape_set_data]."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:131
+#: doc/classes/PhysicsDirectBodyState3D.xml:123
+msgid "Returns the linear velocity vector at the collider's contact point."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:138
+msgid ""
+"Returns the number of contacts this body has with other bodies.\n"
+"[b]Note:[/b] By default, this returns 0 unless bodies are configured to "
+"monitor contacts. See [member RigidBody2D.contact_monitor]."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:148
+#: doc/classes/PhysicsDirectBodyState3D.xml:149
+msgid "Returns the local normal at the contact point."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:157
+#: doc/classes/PhysicsDirectBodyState3D.xml:158
+msgid "Returns the local position of the contact point."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:166
+#: doc/classes/PhysicsDirectBodyState3D.xml:167
+msgid "Returns the local shape index of the collision."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:173
+#: doc/classes/PhysicsDirectBodyState3D.xml:174
+msgid "Returns the current state of the space, useful for queries."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:180
+#: doc/classes/PhysicsDirectBodyState3D.xml:181
+msgid "Calls the built-in force integration code."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:186
+#: doc/classes/PhysicsDirectBodyState3D.xml:187 doc/classes/RigidBody2D.xml:121
+msgid "The body's rotational velocity."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:189
+#: doc/classes/PhysicsDirectBodyState3D.xml:192
+msgid "The inverse of the inertia of the body."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:192
+#: doc/classes/PhysicsDirectBodyState3D.xml:195
+msgid "The inverse of the mass of the body."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:195
+#: doc/classes/PhysicsDirectBodyState3D.xml:198 doc/classes/RigidBody2D.xml:156
+msgid "The body's linear velocity."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:198
+#: doc/classes/PhysicsDirectBodyState3D.xml:203
+msgid "If [code]true[/code], this body is currently sleeping (not active)."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:201
+#: doc/classes/PhysicsDirectBodyState3D.xml:206
+msgid "The timestep (delta) used for the simulation."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:204
+#: doc/classes/PhysicsDirectBodyState3D.xml:209
+msgid ""
+"The rate at which the body stops rotating, if there are not any other forces "
+"moving it."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:207
+#: doc/classes/PhysicsDirectBodyState3D.xml:212
+msgid "The total gravity vector being currently applied to this body."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:210
+#: doc/classes/PhysicsDirectBodyState3D.xml:215
+msgid ""
+"The rate at which the body stops moving, if there are not any other forces "
+"moving it."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:213
+#: doc/classes/PhysicsDirectBodyState3D.xml:218
+msgid "The body's transformation matrix."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState3D.xml:4
+msgid "Direct access object to a physics body in the [PhysicsServer3D]."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState3D.xml:7
+msgid ""
+"Provides direct access to a physics body in the [PhysicsServer3D], allowing "
+"safe changes to physics properties. This object is passed via the direct "
+"state callback of rigid/character bodies, and is intended for changing the "
+"direct state of that body. See [method RigidBody3D._integrate_forces]."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState3D.xml:18
+msgid ""
+"Adds a constant directional force without affecting rotation.\n"
+"This is equivalent to [code]add_force(force, Vector3(0,0,0))[/code]."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState3D.xml:39
+msgid "Adds a constant rotational force without affecting position."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState3D.xml:48
+msgid ""
+"Applies a single directional impulse without affecting rotation.\n"
+"This is equivalent to [code]apply_impulse(Vector3(0, 0, 0), impulse)[/code]."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState3D.xml:60
+msgid ""
+"Applies a positioned impulse to the body. 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. The "
+"position uses the rotation of the global coordinate system, but is centered "
+"at the object's origin."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState3D.xml:69
+msgid ""
+"Apply a torque impulse (which will be affected by the body mass and shape). "
+"This will rotate the body around the vector [code]j[/code] passed as "
+"parameter."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState3D.xml:96
+msgid "Returns the collider object."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState3D.xml:130
+msgid ""
+"Returns the number of contacts this body has with other bodies.\n"
+"[b]Note:[/b] By default, this returns 0 unless bodies are configured to "
+"monitor contacts. See [member RigidBody3D.contact_monitor]."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState3D.xml:140
+msgid "Impulse created by the contact. Only implemented for Bullet physics."
+msgstr ""
+
+#: doc/classes/PhysicsDirectSpaceState2D.xml:4
+msgid "Direct access object to a space in the [PhysicsServer2D]."
+msgstr ""
+
+#: doc/classes/PhysicsDirectSpaceState2D.xml:7
+msgid ""
+"Direct access object to a space in the [PhysicsServer2D]. It's used mainly "
+"to do queries against objects and areas residing in a given space."
+msgstr ""
+
+#: doc/classes/PhysicsDirectSpaceState2D.xml:19
+msgid ""
+"Checks how far the shape can travel toward a point. If the shape can not "
+"move, the array will be empty.\n"
+"[b]Note:[/b] Both the shape and the motion are supplied through a "
+"[PhysicsShapeQueryParameters2D] object. The method will return an array with "
+"two floats between 0 and 1, both representing a fraction of [code]motion[/"
+"code]. The first is how far the shape can move without triggering a "
+"collision, and the second is the point at which a collision will occur. If "
+"no collision is detected, the returned array will be [code][1, 1][/code]."
+msgstr ""
+
+#: doc/classes/PhysicsDirectSpaceState2D.xml:31
+msgid ""
+"Checks the intersections of a shape, given through a "
+"[PhysicsShapeQueryParameters2D] object, against the space. The resulting "
+"array contains a list of points where the shape intersects another. Like "
+"with [method intersect_shape], the number of returned results can be limited "
+"to save processing time."
+msgstr ""
+
+#: doc/classes/PhysicsDirectSpaceState2D.xml:40
+msgid ""
+"Checks the intersections of a shape, given through a "
+"[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.\n"
+"[b]Note:[/b] This method does not take into account the [code]motion[/code] "
+"property of the object. The returned object is a dictionary containing the "
+"following fields:\n"
+"[code]collider_id[/code]: The colliding object's ID.\n"
+"[code]linear_velocity[/code]: The colliding object's velocity [Vector2]. If "
+"the object is an [Area2D], the result is [code](0, 0)[/code].\n"
+"[code]metadata[/code]: The intersecting shape's metadata. This metadata is "
+"different from [method Object.get_meta], and is set with [method "
+"PhysicsServer2D.shape_set_data].\n"
+"[code]normal[/code]: The object's surface normal at the intersection point.\n"
+"[code]point[/code]: The intersection point.\n"
+"[code]rid[/code]: The intersecting object's [RID].\n"
+"[code]shape[/code]: The shape index of the colliding shape."
+msgstr ""
+
+#: doc/classes/PhysicsDirectSpaceState2D.xml:67
+msgid ""
+"Checks whether a point is inside any shape. The shapes the point is inside "
+"of are returned in an array containing dictionaries with the following "
+"fields:\n"
+"[code]collider[/code]: The colliding object.\n"
+"[code]collider_id[/code]: The colliding object's ID.\n"
+"[code]metadata[/code]: The intersecting shape's metadata. This metadata is "
+"different from [method Object.get_meta], and is set with [method "
+"PhysicsServer2D.shape_set_data].\n"
+"[code]rid[/code]: The intersecting object's [RID].\n"
+"[code]shape[/code]: The shape index of the colliding shape.\n"
+"Additionally, the method can take an [code]exclude[/code] array of objects "
+"or [RID]s that are to be excluded from collisions, a [code]collision_mask[/"
+"code] bitmask representing the physics layers to check in, or booleans to "
+"determine if the ray should collide with [PhysicsBody2D]s or [Area2D]s, "
+"respectively."
+msgstr ""
+
+#: doc/classes/PhysicsDirectSpaceState2D.xml:112
+msgid ""
+"Intersects a ray in a given space. The returned object is a dictionary with "
+"the following fields:\n"
+"[code]collider[/code]: The colliding object.\n"
+"[code]collider_id[/code]: The colliding object's ID.\n"
+"[code]metadata[/code]: The intersecting shape's metadata. This metadata is "
+"different from [method Object.get_meta], and is set with [method "
+"PhysicsServer2D.shape_set_data].\n"
+"[code]normal[/code]: The object's surface normal at the intersection point.\n"
+"[code]position[/code]: The intersection point.\n"
+"[code]rid[/code]: The intersecting object's [RID].\n"
+"[code]shape[/code]: The shape index of the colliding shape.\n"
+"If the ray did not intersect anything, then an empty dictionary is returned "
+"instead.\n"
+"Additionally, the method can take an [code]exclude[/code] array of objects "
+"or [RID]s that are to be excluded from collisions, a [code]collision_mask[/"
+"code] bitmask representing the physics layers to check in, or booleans to "
+"determine if the ray should collide with [PhysicsBody2D]s or [Area2D]s, "
+"respectively."
+msgstr ""
+
+#: doc/classes/PhysicsDirectSpaceState2D.xml:132
+msgid ""
+"Checks the intersections of a shape, given through a "
+"[PhysicsShapeQueryParameters2D] object, against the space.\n"
+"[b]Note:[/b] This method does not take into account the [code]motion[/code] "
+"property of the object. The intersected shapes are returned in an array "
+"containing dictionaries with the following fields:\n"
+"[code]collider[/code]: The colliding object.\n"
+"[code]collider_id[/code]: The colliding object's ID.\n"
+"[code]metadata[/code]: The intersecting shape's metadata. This metadata is "
+"different from [method Object.get_meta], and is set with [method "
+"PhysicsServer2D.shape_set_data].\n"
+"[code]rid[/code]: The intersecting object's [RID].\n"
+"[code]shape[/code]: The shape index of the colliding shape.\n"
+"The number of intersections can be limited with the [code]max_results[/code] "
+"parameter, to reduce the processing time."
+msgstr ""
+
+#: doc/classes/PhysicsDirectSpaceState3D.xml:4
+msgid "Direct access object to a space in the [PhysicsServer3D]."
+msgstr ""
+
+#: doc/classes/PhysicsDirectSpaceState3D.xml:7
+msgid ""
+"Direct access object to a space in the [PhysicsServer3D]. It's used mainly "
+"to do queries against objects and areas residing in a given space."
+msgstr ""
+
+#: doc/classes/PhysicsDirectSpaceState3D.xml:21
+msgid ""
+"Checks whether the shape can travel to a point. The method will return an "
+"array with two floats between 0 and 1, both representing a fraction of "
+"[code]motion[/code]. The first is how far the shape can move without "
+"triggering a collision, and the second is the point at which a collision "
+"will occur. If no collision is detected, the returned array will be [code]"
+"[1, 1][/code].\n"
+"If the shape can not move, the returned array will be [code][0, 0][/code] "
+"under Bullet, and empty under GodotPhysics3D."
+msgstr ""
+
+#: doc/classes/PhysicsDirectSpaceState3D.xml:33
+msgid ""
+"Checks the intersections of a shape, given through a "
+"[PhysicsShapeQueryParameters3D] object, against the space. The resulting "
+"array contains a list of points where the shape intersects another. Like "
+"with [method intersect_shape], the number of returned results can be limited "
+"to save processing time."
+msgstr ""
+
+#: doc/classes/PhysicsDirectSpaceState3D.xml:42
+msgid ""
+"Checks the intersections of a shape, given through a "
+"[PhysicsShapeQueryParameters3D] 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:\n"
+"[code]collider_id[/code]: The colliding object's ID.\n"
+"[code]linear_velocity[/code]: The colliding object's velocity [Vector3]. If "
+"the object is an [Area3D], the result is [code](0, 0, 0)[/code].\n"
+"[code]normal[/code]: The object's surface normal at the intersection point.\n"
+"[code]point[/code]: The intersection point.\n"
+"[code]rid[/code]: The intersecting object's [RID].\n"
+"[code]shape[/code]: The shape index of the colliding shape.\n"
+"If the shape did not intersect anything, then an empty dictionary is "
+"returned instead."
+msgstr ""
+
+#: doc/classes/PhysicsDirectSpaceState3D.xml:68
+msgid ""
+"Intersects a ray in a given space. The returned object is a dictionary with "
+"the following fields:\n"
+"[code]collider[/code]: The colliding object.\n"
+"[code]collider_id[/code]: The colliding object's ID.\n"
+"[code]normal[/code]: The object's surface normal at the intersection point.\n"
+"[code]position[/code]: The intersection point.\n"
+"[code]rid[/code]: The intersecting object's [RID].\n"
+"[code]shape[/code]: The shape index of the colliding shape.\n"
+"If the ray did not intersect anything, then an empty dictionary is returned "
+"instead.\n"
+"Additionally, the method can take an [code]exclude[/code] array of objects "
+"or [RID]s that are to be excluded from collisions, a [code]collision_mask[/"
+"code] bitmask representing the physics layers to check in, or booleans to "
+"determine if the ray should collide with [PhysicsBody3D]s or [Area3D]s, "
+"respectively."
+msgstr ""
+
+#: doc/classes/PhysicsDirectSpaceState3D.xml:87
+msgid ""
+"Checks the intersections of a shape, given through a "
+"[PhysicsShapeQueryParameters3D] object, against the space. The intersected "
+"shapes are returned in an array containing dictionaries with the following "
+"fields:\n"
+"[code]collider[/code]: The colliding object.\n"
+"[code]collider_id[/code]: The colliding object's ID.\n"
+"[code]rid[/code]: The intersecting object's [RID].\n"
+"[code]shape[/code]: The shape index of the colliding shape.\n"
+"The number of intersections can be limited with the [code]max_results[/code] "
+"parameter, to reduce the processing time."
+msgstr ""
+
+#: doc/classes/PhysicsMaterial.xml:4
+msgid "A material for physics properties."
+msgstr ""
+
+#: doc/classes/PhysicsMaterial.xml:7
+msgid ""
+"Provides a means of modifying the collision properties of a [PhysicsBody3D]."
+msgstr ""
+
+#: doc/classes/PhysicsMaterial.xml:15
+msgid ""
+"If [code]true[/code], subtracts the bounciness from the colliding object's "
+"bounciness instead of adding it."
+msgstr ""
+
+#: doc/classes/PhysicsMaterial.xml:21
+msgid ""
+"The body's friction. Values range from [code]0[/code] (frictionless) to "
+"[code]1[/code] (maximum friction)."
+msgstr ""
+
+#: doc/classes/PhysicsMaterial.xml:24
+msgid ""
+"If [code]true[/code], the physics engine will use the friction of the object "
+"marked as \"rough\" when two objects collide. If [code]false[/code], the "
+"physics engine will use the lowest friction of all colliding objects "
+"instead. If [code]true[/code] for both colliding objects, the physics engine "
+"will use the highest friction."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:4
+msgid "Server interface for low-level 2D physics access."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:7
+msgid ""
+"PhysicsServer2D is the server responsible for all 2D physics. It can create "
+"many kinds of physics objects, but does not insert them on the node tree."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:24 doc/classes/PhysicsServer3D.xml:24
+msgid ""
+"Adds a shape to the area, along with a transform matrix. Shapes are usually "
+"referenced by their index, so you should track which shape has a given index."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:45 doc/classes/PhysicsServer2D.xml:418
+#: doc/classes/PhysicsServer3D.xml:35 doc/classes/PhysicsServer3D.xml:409
+msgid ""
+"Assigns the area to a descendant of [Object], so it can exist in the node "
+"tree."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:54 doc/classes/PhysicsServer3D.xml:44
+msgid ""
+"Removes all shapes from an area. It does not delete the shapes, so they can "
+"be reassigned later."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:61
+msgid "Creates an [Area2D]."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:78 doc/classes/PhysicsServer2D.xml:505
+#: doc/classes/PhysicsServer3D.xml:60 doc/classes/PhysicsServer3D.xml:492
+msgid "Gets the instance ID of the object the area is assigned to."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:89
+msgid ""
+"Returns an area parameter value. See [enum AreaParameter] for a list of "
+"available parameters."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:100 doc/classes/PhysicsServer3D.xml:82
+msgid "Returns the [RID] of the nth shape of an area."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:109 doc/classes/PhysicsServer3D.xml:91
+msgid "Returns the number of shapes assigned to an area."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:120 doc/classes/PhysicsServer3D.xml:102
+msgid "Returns the transform matrix of a shape within an area."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:129 doc/classes/PhysicsServer3D.xml:111
+msgid "Returns the space assigned to the area."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:138 doc/classes/PhysicsServer3D.xml:120
+msgid "Returns the space override mode for the area."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:147 doc/classes/PhysicsServer3D.xml:129
+msgid "Returns the transform matrix for an area."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:158 doc/classes/PhysicsServer3D.xml:149
+msgid ""
+"Removes a shape from an area. It does not delete the shape, so it can be "
+"reassigned later."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:181 doc/classes/PhysicsServer3D.xml:172
+msgid "Assigns the area to one or many physics layers."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:192 doc/classes/PhysicsServer3D.xml:183
+msgid "Sets which physics layers the area will monitor."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:205 doc/classes/PhysicsServer3D.xml:196
+msgid ""
+"Sets the function to call when any body/area enters or exits the area. This "
+"callback will be called for any object interacting with the area, and takes "
+"five parameters:\n"
+"1: [constant AREA_BODY_ADDED] or [constant AREA_BODY_REMOVED], depending on "
+"whether the object entered or exited the area.\n"
+"2: [RID] of the object that entered/exited the area.\n"
+"3: Instance ID of the object that entered/exited the area.\n"
+"4: The shape index of the object that entered/exited the area.\n"
+"5: The shape index of the area where the object entered/exited."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:233
+msgid ""
+"Sets the value for an area parameter. See [enum AreaParameter] for a list of "
+"available parameters."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:246 doc/classes/PhysicsServer3D.xml:248
+msgid ""
+"Substitutes a given area shape by another. The old shape is selected by its "
+"index, the new one by its [RID]."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:259
+msgid "Disables a given shape in an area."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:272 doc/classes/PhysicsServer3D.xml:273
+msgid "Sets the transform matrix for an area shape."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:283 doc/classes/PhysicsServer3D.xml:284
+msgid "Assigns a space to the area."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:294
+msgid ""
+"Sets the space override mode for the area. See [enum AreaSpaceOverrideMode] "
+"for a list of available modes."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:305 doc/classes/PhysicsServer3D.xml:306
+msgid "Sets the transform matrix for an area."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:326 doc/classes/PhysicsServer3D.xml:327
+msgid "Adds a body to the list of bodies exempt from collisions."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:339
+msgid ""
+"Adds a positioned force to the applied force and torque. As with [method "
+"body_apply_impulse], both the force and the offset from the body origin are "
+"in global coordinates. A force differs from an impulse in that, while the "
+"two are forces, the impulse clears itself after being applied."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:354 doc/classes/PhysicsServer3D.xml:354
+msgid ""
+"Adds a shape to the body, along with a transform matrix. Shapes are usually "
+"referenced by their index, so you should track which shape has a given index."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:387
+msgid ""
+"Adds a positioned impulse to the applied force and torque. Both the force "
+"and the offset from the body origin are in global coordinates."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:427 doc/classes/PhysicsServer3D.xml:418
+msgid "Removes all shapes from a body."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:434
+msgid "Creates a physics body."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:451 doc/classes/PhysicsServer3D.xml:438
+msgid "Returns the physics layer or layers a body belongs to."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:460
+msgid "Returns the physics layer or layers a body can collide with."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:469
+msgid "Returns the continuous collision detection mode."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:478
+msgid "Returns the [PhysicsDirectBodyState2D] of the body."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:487 doc/classes/PhysicsServer3D.xml:474
+msgid ""
+"Returns the maximum contacts that can be reported. See [method "
+"body_set_max_contacts_reported]."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:496 doc/classes/PhysicsServer3D.xml:483
+msgid "Returns the body mode."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:516
+msgid ""
+"Returns the value of a body parameter. See [enum BodyParameter] for a list "
+"of available parameters."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:527 doc/classes/PhysicsServer3D.xml:514
+msgid "Returns the [RID] of the nth shape of a body."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:536 doc/classes/PhysicsServer3D.xml:523
+msgid "Returns the number of shapes assigned to a body."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:547
+msgid "Returns the metadata of a shape of a body."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:558 doc/classes/PhysicsServer3D.xml:534
+msgid "Returns the transform matrix of a body shape."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:567 doc/classes/PhysicsServer3D.xml:543
+msgid "Returns the [RID] of the space assigned to a body."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:578 doc/classes/PhysicsServer3D.xml:554
+msgid "Returns a body state."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:587 doc/classes/PhysicsServer3D.xml:582
+msgid ""
+"Returns whether a body uses a callback function to calculate its own physics "
+"(see [method body_set_force_integration_callback])."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:598
+msgid "Removes a body from the list of bodies exempt from collisions."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:609 doc/classes/PhysicsServer3D.xml:614
+msgid ""
+"Removes a shape from a body. The shape is not deleted, so it can be reused "
+"afterwards."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:620 doc/classes/PhysicsServer3D.xml:637
+#: doc/classes/RigidBody3D.xml:127
+msgid ""
+"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."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:631 doc/classes/PhysicsServer3D.xml:648
+msgid "Sets the physics layer or layers a body belongs to."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:642 doc/classes/PhysicsServer3D.xml:659
+msgid "Sets the physics layer or layers a body can collide with."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:653
+msgid ""
+"Sets the continuous collision detection mode using one of the [enum CCDMode] "
+"constants.\n"
+"Continuous collision detection tries to predict where a moving body will "
+"collide, instead of moving it and correcting its movement if it collided."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:669 doc/classes/PhysicsServer3D.xml:686
+msgid ""
+"Sets the function used to calculate physics for an object, if that object "
+"allows it (see [method body_set_omit_force_integration])."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:680 doc/classes/PhysicsServer3D.xml:707
+msgid ""
+"Sets the maximum contacts to report. Bodies can keep a log of the contacts "
+"with other bodies, this is enabled by setting the maximum amount of contacts "
+"reported to a number greater than 0."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:691
+msgid "Sets the body mode using one of the [enum BodyMode] constants."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:702 doc/classes/PhysicsServer3D.xml:729
+msgid ""
+"Sets whether a body uses a callback function to calculate its own physics "
+"(see [method body_set_force_integration_callback])."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:715
+msgid ""
+"Sets a body parameter. See [enum BodyParameter] for a list of available "
+"parameters."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:728 doc/classes/PhysicsServer3D.xml:766
+msgid ""
+"Substitutes a given body shape by another. The old shape is selected by its "
+"index, the new one by its [RID]."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:743
+msgid ""
+"Enables one way collision on body if [code]enable[/code] is [code]true[/"
+"code]."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:756
+msgid "Disables shape in body if [code]disable[/code] is [code]true[/code]."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:769
+msgid ""
+"Sets metadata of a shape within a body. This metadata is different from "
+"[method Object.set_meta], and can be retrieved on shape queries."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:782 doc/classes/PhysicsServer3D.xml:791
+msgid "Sets the transform matrix for a body shape."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:793 doc/classes/PhysicsServer3D.xml:802
+msgid "Assigns a space to the body (see [method space_create])."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:806
+msgid "Sets a body state using one of the [enum BodyState] constants."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:825
+msgid ""
+"Returns [code]true[/code] if a collision would result from moving in the "
+"given direction from a given point in space. Margin increases the size of "
+"the shapes involved in the collision detection. [PhysicsTestMotionResult2D] "
+"can be passed to return additional information in."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:864
+msgid ""
+"Creates a damped spring joint between two bodies. If not specified, the "
+"second body is assumed to be the joint itself."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:875
+msgid ""
+"Returns the value of a damped spring joint parameter. See [enum "
+"DampedSpringParam] for a list of available parameters."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:888
+msgid ""
+"Sets a damped spring joint parameter. See [enum DampedSpringParam] for a "
+"list of available parameters."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:897
+msgid ""
+"Destroys any of the objects created by PhysicsServer2D. If the [RID] passed "
+"is not one of the objects that can be created by PhysicsServer2D, an error "
+"will be sent to the console."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:906
+msgid ""
+"Returns information about the current state of the 2D physics engine. See "
+"[enum ProcessInfo] for a list of available states."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:923
+msgid ""
+"Creates a groove joint between two bodies. If not specified, the bodies are "
+"assumed to be the joint itself."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:934
+msgid "Returns the value of a joint parameter."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:943
+msgid "Returns a joint's type (see [enum JointType])."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:956
+msgid ""
+"Sets a joint parameter. See [enum JointParam] for a list of available "
+"parameters."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:975
+msgid ""
+"Creates a pin joint between two bodies. If not specified, the second body is "
+"assumed to be the joint itself."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1002
+msgid "Activates or deactivates the 2D physics engine."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1011 doc/classes/PhysicsServer3D.xml:1156
+msgid "Returns the shape data."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1020
+msgid "Returns a shape's type (see [enum ShapeType])."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1031 doc/classes/PhysicsServer3D.xml:1176
+msgid ""
+"Sets the shape data that defines its shape and size. The data to be passed "
+"depends on the kind of shape created [method shape_get_type]."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1038 doc/classes/PhysicsServer3D.xml:1207
+msgid ""
+"Creates a space. A space is a collection of parameters for the physics "
+"engine that can be assigned to an area or a body. It can be assigned to an "
+"area with [method area_set_space], or to a body with [method body_set_space]."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1047
+msgid ""
+"Returns the state of a space, a [PhysicsDirectSpaceState2D]. This object can "
+"be used to make collision/intersection queries."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1058 doc/classes/PhysicsServer3D.xml:1227
+msgid "Returns the value of a space parameter."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1067 doc/classes/PhysicsServer3D.xml:1236
+msgid "Returns whether the space is active."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1078 doc/classes/PhysicsServer3D.xml:1247
+msgid ""
+"Marks a space as active. It will not have an effect, unless it is assigned "
+"to an area or body."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1091
+msgid ""
+"Sets the value for a space parameter. See [enum SpaceParameter] for a list "
+"of available parameters."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1097 doc/classes/PhysicsServer3D.xml:1602
+msgid ""
+"Constant to set/get the maximum distance a pair of bodies has to move before "
+"their collision status has to be recalculated."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1100 doc/classes/PhysicsServer3D.xml:1605
+msgid ""
+"Constant to set/get the maximum distance a shape can be from another before "
+"they are considered separated."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1103 doc/classes/PhysicsServer3D.xml:1608
+msgid ""
+"Constant to set/get the maximum distance a shape can penetrate another shape "
+"before it is considered a collision."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1106 doc/classes/PhysicsServer3D.xml:1611
+msgid ""
+"Constant to set/get the threshold linear velocity of activity. A body marked "
+"as potentially inactive for both linear and angular velocity will be put to "
+"sleep after the time given."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1109 doc/classes/PhysicsServer3D.xml:1614
+msgid ""
+"Constant to set/get the threshold angular velocity of activity. A body "
+"marked as potentially inactive for both linear and angular velocity will be "
+"put to sleep after the time given."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1112 doc/classes/PhysicsServer3D.xml:1617
+msgid ""
+"Constant to set/get the maximum time of activity. A body marked as "
+"potentially inactive for both linear and angular velocity will be put to "
+"sleep after this time."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1115 doc/classes/PhysicsServer3D.xml:1622
+msgid ""
+"Constant to set/get the default solver bias for all physics constraints. A "
+"solver bias is a factor controlling how much two objects \"rebound\", after "
+"violating a constraint, to avoid leaving them in that state because of "
+"numerical imprecision."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1120
+msgid ""
+"This is the constant for creating line shapes. A line shape is an infinite "
+"line with an origin point, and a normal. Thus, it can be used for front/"
+"behind checks."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1125
+msgid ""
+"This is the constant for creating segment shapes. A segment shape is a line "
+"from a point A to a point B. It can be checked for intersections."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1128
+msgid ""
+"This is the constant for creating circle shapes. A circle shape only has a "
+"radius. It can be used for intersections and inside/outside checks."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1131
+msgid ""
+"This is the constant for creating rectangle shapes. A rectangle shape is "
+"defined by a width and a height. It can be used for intersections and inside/"
+"outside checks."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1134
+msgid ""
+"This is the constant for creating capsule shapes. A capsule shape is defined "
+"by a radius and a length. It can be used for intersections and inside/"
+"outside checks."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1137
+msgid ""
+"This is the constant for creating convex polygon shapes. A polygon is "
+"defined by a list of points. It can be used for intersections and inside/"
+"outside checks. Unlike the [member CollisionPolygon2D.polygon] property, "
+"polygons modified with [method shape_set_data] do not verify that the points "
+"supplied form is a convex polygon."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1140
+msgid ""
+"This is the constant for creating concave polygon shapes. A polygon is "
+"defined by a list of points. It can be used for intersections checks, but "
+"not for inside/outside checks."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1143 doc/classes/PhysicsServer3D.xml:1497
+msgid ""
+"This constant is used internally by the engine. Any attempt to create this "
+"kind of shape results in an error."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1146 doc/classes/PhysicsServer3D.xml:1500
+msgid "Constant to set/get gravity strength in an area."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1149 doc/classes/PhysicsServer3D.xml:1503
+msgid "Constant to set/get gravity vector/center in an area."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1152 doc/classes/PhysicsServer3D.xml:1506
+msgid ""
+"Constant to set/get whether the gravity vector of an area is a direction, or "
+"a center point."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1155 doc/classes/PhysicsServer3D.xml:1509
+msgid ""
+"Constant to set/get the falloff factor for point gravity of an area. The "
+"greater this value is, the faster the strength of gravity decreases with the "
+"square of distance."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1158 doc/classes/PhysicsServer3D.xml:1512
+msgid ""
+"This constant was used to set/get the falloff factor for point gravity. It "
+"has been superseded by [constant AREA_PARAM_GRAVITY_DISTANCE_SCALE]."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1161 doc/classes/PhysicsServer3D.xml:1515
+msgid "Constant to set/get the linear dampening factor of an area."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1164 doc/classes/PhysicsServer3D.xml:1518
+msgid "Constant to set/get the angular dampening factor of an area."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1167 doc/classes/PhysicsServer3D.xml:1521
+msgid "Constant to set/get the priority (order of processing) of an area."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1170 doc/classes/PhysicsServer3D.xml:1524
+msgid ""
+"This area does not affect gravity/damp. These are generally areas that exist "
+"only to detect collisions, and objects entering or exiting them."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1173 doc/classes/PhysicsServer3D.xml:1527
+msgid ""
+"This area adds its gravity/damp values to whatever has been calculated so "
+"far. This way, many overlapping areas can combine their physics to make "
+"interesting effects."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1176 doc/classes/PhysicsServer3D.xml:1530
+msgid ""
+"This area adds its gravity/damp values to whatever has been calculated so "
+"far. Then stops taking into account the rest of the areas, even the default "
+"one."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1179 doc/classes/PhysicsServer3D.xml:1533
+msgid ""
+"This area replaces any gravity/damp, even the default one, and stops taking "
+"into account the rest of the areas."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1182 doc/classes/PhysicsServer3D.xml:1536
+msgid ""
+"This area replaces any gravity/damp calculated so far, but keeps calculating "
+"the rest of the areas, down to the default one."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1185 doc/classes/PhysicsServer3D.xml:1539
+msgid "Constant for static bodies."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1188 doc/classes/PhysicsServer3D.xml:1542
+msgid "Constant for kinematic bodies."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1191 doc/classes/PhysicsServer3D.xml:1545
+msgid "Constant for rigid bodies."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1194 doc/classes/PhysicsServer3D.xml:1548
+msgid ""
+"Constant for rigid bodies in character mode. In this mode, a body can not "
+"rotate, and only its linear velocity is affected by physics."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1197 doc/classes/PhysicsServer3D.xml:1551
+msgid "Constant to set/get a body's bounce factor."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1200 doc/classes/PhysicsServer3D.xml:1554
+msgid "Constant to set/get a body's friction."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1203 doc/classes/PhysicsServer3D.xml:1557
+msgid "Constant to set/get a body's mass."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1206
+msgid "Constant to set/get a body's inertia."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1209 doc/classes/PhysicsServer3D.xml:1560
+msgid "Constant to set/get a body's gravity multiplier."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1212 doc/classes/PhysicsServer3D.xml:1563
+msgid "Constant to set/get a body's linear dampening factor."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1215 doc/classes/PhysicsServer3D.xml:1566
+msgid "Constant to set/get a body's angular dampening factor."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1218 doc/classes/PhysicsServer3D.xml:1569
+msgid "Represents the size of the [enum BodyParameter] enum."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1221 doc/classes/PhysicsServer3D.xml:1572
+msgid "Constant to set/get the current transform matrix of the body."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1224 doc/classes/PhysicsServer3D.xml:1575
+msgid "Constant to set/get the current linear velocity of the body."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1227 doc/classes/PhysicsServer3D.xml:1578
+msgid "Constant to set/get the current angular velocity of the body."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1230 doc/classes/PhysicsServer3D.xml:1581
+msgid "Constant to sleep/wake up a body, or to get whether it is sleeping."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1233 doc/classes/PhysicsServer3D.xml:1584
+msgid "Constant to set/get whether the body can sleep."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1236
+msgid "Constant to create pin joints."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1239
+msgid "Constant to create groove joints."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1242
+msgid "Constant to create damped spring joints."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1251
+msgid ""
+"Sets the resting length of the spring joint. The joint will always try to go "
+"to back this length when pulled apart."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1254
+msgid ""
+"Sets the stiffness of the spring joint. The joint applies a force equal to "
+"the stiffness times the distance from its resting length."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1257
+msgid ""
+"Sets the damping ratio of the spring joint. A value of 0 indicates an "
+"undamped spring, while 1 causes the system to reach equilibrium as fast as "
+"possible (critical damping)."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1260
+msgid ""
+"Disables continuous collision detection. This is the fastest way to detect "
+"body collisions, but can miss small, fast-moving objects."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1263
+msgid ""
+"Enables continuous collision detection by raycasting. It is faster than "
+"shapecasting, but less precise."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1266
+msgid ""
+"Enables continuous collision detection by shapecasting. It is the slowest "
+"CCD method, and the most precise."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1269 doc/classes/PhysicsServer3D.xml:1587
+msgid ""
+"The value of the first parameter and area callback function receives, when "
+"an object enters one of its shapes."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1272 doc/classes/PhysicsServer3D.xml:1590
+msgid ""
+"The value of the first parameter and area callback function receives, when "
+"an object exits one of its shapes."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1275 doc/classes/PhysicsServer3D.xml:1593
+msgid "Constant to get the number of objects that are not sleeping."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1278 doc/classes/PhysicsServer3D.xml:1596
+msgid "Constant to get the number of possible collisions."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1281 doc/classes/PhysicsServer3D.xml:1599
+msgid ""
+"Constant to get the number of space regions where a collision could occur."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:4
+msgid "Server interface for low-level physics access."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:7
+msgid ""
+"PhysicsServer3D is the server responsible for all 3D physics. It can create "
+"many kinds of physics objects, but does not insert them on the node tree."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:51
+msgid "Creates an [Area3D]."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:71
+msgid ""
+"Returns an area parameter value. A list of available parameters is on the "
+"[enum AreaParameter] constants."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:138
+msgid "If [code]true[/code], area collides with rays."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:224
+msgid ""
+"Sets the value for an area parameter. A list of available parameters is on "
+"the [enum AreaParameter] constants."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:235
+msgid "Sets object pickable with rays."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:295
+msgid ""
+"Sets the space override mode for the area. The modes are described in the "
+"[enum AreaSpaceOverrideMode] constants."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:387
+msgid ""
+"Gives the body a push at a [code]position[/code] in the direction of the "
+"[code]impulse[/code]."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:398
+msgid "Gives the body a push to rotate it."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:429
+msgid ""
+"Creates a physics body. The first parameter can be any value from [enum "
+"BodyMode] constants, for the type of body created. Additionally, the body "
+"can be created in sleeping state to save processing time."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:447
+msgid ""
+"Returns the physics layer or layers a body can collide with.\n"
+"-"
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:457
+msgid "Returns the [PhysicsDirectBodyState3D] of the body."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:503
+msgid ""
+"Returns the value of a body parameter. A list of available parameters is on "
+"the [enum BodyParameter] constants."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:573
+msgid ""
+"If [code]true[/code], the continuous collision detection mode is enabled."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:591
+msgid "If [code]true[/code], the body can be detected by rays."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:602
+msgid ""
+"Removes a body from the list of bodies exempt from collisions.\n"
+"Continuous collision detection tries to predict where a moving body will "
+"collide, instead of moving it and correcting its movement if it collided."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:670
+msgid ""
+"If [code]true[/code], the continuous collision detection mode is enabled.\n"
+"Continuous collision detection tries to predict where a moving body will "
+"collide, instead of moving it and correcting its movement if it collided."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:718
+msgid "Sets the body mode, from one of the [enum BodyMode] constants."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:742
+msgid ""
+"Sets a body parameter. A list of available parameters is on the [enum "
+"BodyParameter] constants."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:753
+msgid "Sets the body pickable with rays if [code]enabled[/code] is set."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:815
+msgid "Sets a body state (see [enum BodyState] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:826
+msgid ""
+"Gets a cone_twist_joint parameter (see [enum ConeTwistJointParam] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:839
+msgid ""
+"Sets a cone_twist_joint parameter (see [enum ConeTwistJointParam] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:848
+msgid ""
+"Destroys any of the objects created by PhysicsServer3D. If the [RID] passed "
+"is not one of the objects that can be created by PhysicsServer3D, an error "
+"will be sent to the console."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:861
+msgid ""
+"Gets a generic_6_DOF_joint flag (see [enum G6DOFJointAxisFlag] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:874
+msgid ""
+"Gets a generic_6_DOF_joint parameter (see [enum G6DOFJointAxisParam] "
+"constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:889
+msgid ""
+"Sets a generic_6_DOF_joint flag (see [enum G6DOFJointAxisFlag] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:904
+msgid ""
+"Sets a generic_6_DOF_joint parameter (see [enum G6DOFJointAxisParam] "
+"constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:913
+msgid "Returns an Info defined by the [enum ProcessInfo] input given."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:924
+msgid "Gets a hinge_joint flag (see [enum HingeJointFlag] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:935
+msgid "Gets a hinge_joint parameter (see [enum HingeJointParam])."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:948
+msgid "Sets a hinge_joint flag (see [enum HingeJointFlag] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:961
+msgid "Sets a hinge_joint parameter (see [enum HingeJointParam] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:976
+msgid "Creates a [ConeTwistJoint3D]."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:991
+msgid "Creates a [Generic6DOFJoint3D]."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1006
+msgid "Creates a [HingeJoint3D]."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1021
+msgid "Creates a [PinJoint3D]."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1036
+msgid "Creates a [SliderJoint3D]."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1045
+msgid "Gets the priority value of the Joint3D."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1054
+msgid "Returns the type of the Joint3D."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1065
+msgid "Sets the priority value of the Joint3D."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1074
+msgid ""
+"Returns position of the joint in the local space of body a of the joint."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1083
+msgid ""
+"Returns position of the joint in the local space of body b of the joint."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1094
+msgid "Gets a pin_joint parameter (see [enum PinJointParam] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1105
+msgid "Sets position of the joint in the local space of body a of the joint."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1116
+msgid "Sets position of the joint in the local space of body b of the joint."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1129
+msgid "Sets a pin_joint parameter (see [enum PinJointParam] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1138
+msgid "Activates or deactivates the 3D physics engine."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1147
+msgid ""
+"Creates a shape of a type from [enum ShapeType]. Does not assign it to a "
+"body or an area. To do so, you must use [method area_set_shape] or [method "
+"body_set_shape]."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1165
+msgid "Returns the type of shape (see [enum ShapeType] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1187 doc/classes/PhysicsServer3D.xml:1200
+msgid "Gets a slider_joint parameter (see [enum SliderJointParam] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1216
+msgid ""
+"Returns the state of a space, a [PhysicsDirectSpaceState3D]. This object can "
+"be used to make collision/intersection queries."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1260
+msgid ""
+"Sets the value for a space parameter. A list of available parameters is on "
+"the [enum SpaceParameter] constants."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1266
+msgid "The [Joint3D] is a [PinJoint3D]."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1269
+msgid "The [Joint3D] is a [HingeJoint3D]."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1272
+msgid "The [Joint3D] is a [SliderJoint3D]."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1275
+msgid "The [Joint3D] is a [ConeTwistJoint3D]."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1278
+msgid "The [Joint3D] is a [Generic6DOFJoint3D]."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1281
+msgid ""
+"The strength with which the pinned objects try to stay in positional "
+"relation to each other.\n"
+"The higher, the stronger."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1285
+msgid ""
+"The strength with which the pinned objects try to stay in velocity relation "
+"to each other.\n"
+"The higher, the stronger."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1289
+msgid ""
+"If above 0, this value is the maximum value for an impulse that this Joint3D "
+"puts on its ends."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1295
+msgid "The maximum rotation across the Hinge."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1298
+msgid "The minimum rotation across the Hinge."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1315
+msgid "If [code]true[/code], the Hinge has a maximum and a minimum rotation."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1318
+msgid "If [code]true[/code], a motor turns the Hinge."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1321 doc/classes/SliderJoint3D.xml:81
+#: doc/classes/SliderJoint3D.xml:104
+msgid ""
+"The maximum difference between the pivot points on their X axis before "
+"damping happens."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1324 doc/classes/SliderJoint3D.xml:72
+#: doc/classes/SliderJoint3D.xml:107
+msgid ""
+"The minimum difference between the pivot points on their X axis before "
+"damping happens."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1327 doc/classes/SliderJoint3D.xml:78
+#: doc/classes/SliderJoint3D.xml:110
+msgid ""
+"A factor applied to the movement across the slider axis once the limits get "
+"surpassed. The lower, the slower the movement."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1330 doc/classes/SliderJoint3D.xml:113
+msgid ""
+"The amount of restitution once the limits are surpassed. The lower, the more "
+"velocityenergy gets lost."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1333 doc/classes/SliderJoint3D.xml:116
+msgid "The amount of damping once the slider limits are surpassed."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1336 doc/classes/SliderJoint3D.xml:90
+#: doc/classes/SliderJoint3D.xml:119
+msgid ""
+"A factor applied to the movement across the slider axis as long as the "
+"slider is in the limits. The lower, the slower the movement."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1339 doc/classes/SliderJoint3D.xml:87
+#: doc/classes/SliderJoint3D.xml:122
+msgid "The amount of restitution inside the slider limits."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1342 doc/classes/SliderJoint3D.xml:84
+#: doc/classes/SliderJoint3D.xml:125
+msgid "The amount of damping inside the slider limits."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1345 doc/classes/SliderJoint3D.xml:99
+#: doc/classes/SliderJoint3D.xml:128
+msgid "A factor applied to the movement across axes orthogonal to the slider."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1348 doc/classes/SliderJoint3D.xml:96
+#: doc/classes/SliderJoint3D.xml:131
+msgid ""
+"The amount of restitution when movement is across axes orthogonal to the "
+"slider."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1351 doc/classes/SliderJoint3D.xml:93
+#: doc/classes/SliderJoint3D.xml:134
+msgid ""
+"The amount of damping when movement is across axes orthogonal to the slider."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1354 doc/classes/SliderJoint3D.xml:48
+#: doc/classes/SliderJoint3D.xml:137
+msgid "The upper limit of rotation in the slider."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1357 doc/classes/SliderJoint3D.xml:37
+#: doc/classes/SliderJoint3D.xml:140
+msgid "The lower limit of rotation in the slider."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1360 doc/classes/SliderJoint3D.xml:143
+msgid "A factor applied to the all rotation once the limit is surpassed."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1363 doc/classes/SliderJoint3D.xml:146
+msgid "The amount of restitution of the rotation when the limit is surpassed."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1366 doc/classes/SliderJoint3D.xml:149
+msgid "The amount of damping of the rotation when the limit is surpassed."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1369
+msgid "A factor that gets applied to the all rotation in the limits."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1372 doc/classes/SliderJoint3D.xml:54
+#: doc/classes/SliderJoint3D.xml:155
+msgid "The amount of restitution of the rotation in the limits."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1375 doc/classes/SliderJoint3D.xml:51
+#: doc/classes/SliderJoint3D.xml:158
+msgid "The amount of damping of the rotation in the limits."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1378
+msgid ""
+"A factor that gets applied to the all rotation across axes orthogonal to the "
+"slider."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1381 doc/classes/SliderJoint3D.xml:63
+#: doc/classes/SliderJoint3D.xml:164
+msgid ""
+"The amount of restitution of the rotation across axes orthogonal to the "
+"slider."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1384 doc/classes/SliderJoint3D.xml:60
+#: doc/classes/SliderJoint3D.xml:167
+msgid ""
+"The amount of damping of the rotation across axes orthogonal to the slider."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1387
+msgid "Represents the size of the [enum SliderJointParam] enum."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1404
+msgid ""
+"The ease with which the Joint3D twists, if it's too low, it takes more force "
+"to twist the joint."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1416
+msgid ""
+"A factor that gets applied to the movement across the axes. The lower, the "
+"slower the movement."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1419
+msgid ""
+"The amount of restitution on the axes movement. The lower, the more velocity-"
+"energy gets lost."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1425
+msgid "The velocity that the joint's linear motor will attempt to reach."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1428
+msgid ""
+"The maximum force that the linear motor can apply while trying to reach the "
+"target velocity."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1437
+msgid "A factor that gets multiplied onto all rotations across the axes."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1449
+msgid ""
+"When correcting the crossing of limits in rotation across the axes, this "
+"error tolerance factor defines how much the correction gets slowed down. The "
+"lower, the slower."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1458
+msgid ""
+"If [code]set[/code] there is linear motion possible within the given limits."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1461
+msgid "If [code]set[/code] there is rotational motion possible."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1464
+msgid "If [code]set[/code] there is a rotational motor across these axes."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1467
+msgid ""
+"If [code]set[/code] there is a linear motor on this axis that targets a "
+"specific velocity."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1470
+msgid "The [Shape3D] is a [WorldMarginShape3D]."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1473
+msgid "The [Shape3D] is a [RayShape3D]."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1476
+msgid "The [Shape3D] is a [SphereShape3D]."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1479
+msgid "The [Shape3D] is a [BoxShape3D]."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1482
+msgid "The [Shape3D] is a [CapsuleShape3D]."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1485
+msgid "The [Shape3D] is a [CylinderShape3D]."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1488
+msgid "The [Shape3D] is a [ConvexPolygonShape3D]."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1491
+msgid "The [Shape3D] is a [ConcavePolygonShape3D]."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1494
+msgid "The [Shape3D] is a [HeightMapShape3D]."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:4
+msgid "Parameters to be sent to a 2D shape physics query."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:7
+msgid ""
+"This class contains the shape and other parameters for 2D intersection/"
+"collision queries. See also [PhysicsShapeQueryResult2D]."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:15
+msgid "If [code]true[/code], the query will take [Area2D]s into account."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:18
+msgid ""
+"If [code]true[/code], the query will take [PhysicsBody2D]s into account."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:21
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:21
+msgid "The physics layer(s) the query will take into account (as a bitmask)."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:24
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:24
+msgid ""
+"The list of objects or object [RID]s that will be excluded from collisions."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:27 doc/classes/Shape3D.xml:16
+msgid "The collision margin for the shape."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:30
+msgid "The motion of the shape being queried for."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:33
+msgid ""
+"The [Shape2D] that will be used for collision/intersection queries. This "
+"stores the actual reference which avoids the shape to be released while "
+"being used for queries, so always prefer using this over [member shape_rid]."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:36
+msgid ""
+"The queried shape's [RID] that will be used for collision/intersection "
+"queries. Use this over [member shape] if you want to optimize for "
+"performance using the Servers API:\n"
+"[codeblock]\n"
+"var shape_rid = PhysicsServer2D.circle_shape_create()\n"
+"var radius = 64\n"
+"PhysicsServer2D.shape_set_data(shape_rid, radius)\n"
+"\n"
+"var params = PhysicsShapeQueryParameters2D.new()\n"
+"params.shape_rid = shape_rid\n"
+"\n"
+"# Execute physics queries here...\n"
+"\n"
+"# Release the shape when done with physics queries.\n"
+"PhysicsServer2D.free_rid(shape_rid)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:52
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:49
+msgid "The queried shape's transform matrix."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:4
+msgid "Parameters to be sent to a 3D shape physics query."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:7
+msgid ""
+"This class contains the shape and other parameters for 3D intersection/"
+"collision queries. See also [PhysicsShapeQueryResult3D]."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:15
+msgid "If [code]true[/code], the query will take [Area3D]s into account."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:18
+msgid ""
+"If [code]true[/code], the query will take [PhysicsBody3D]s into account."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:30
+msgid ""
+"The [Shape3D] that will be used for collision/intersection queries. This "
+"stores the actual reference which avoids the shape to be released while "
+"being used for queries, so always prefer using this over [member shape_rid]."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:33
+msgid ""
+"The queried shape's [RID] that will be used for collision/intersection "
+"queries. Use this over [member shape] if you want to optimize for "
+"performance using the Servers API:\n"
+"[codeblock]\n"
+"var shape_rid = PhysicsServer3D.shape_create(PhysicsServer3D.SHAPE_SPHERE)\n"
+"var radius = 2.0\n"
+"PhysicsServer3D.shape_set_data(shape_rid, radius)\n"
+"\n"
+"var params = PhysicsShapeQueryParameters3D.new()\n"
+"params.shape_rid = shape_rid\n"
+"\n"
+"# Execute physics queries here...\n"
+"\n"
+"# Release the shape when done with physics queries.\n"
+"PhysicsServer3D.free_rid(shape_rid)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryResult2D.xml:4
+msgid "Result of a 2D shape query in [PhysicsServer2D]."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryResult2D.xml:7
+msgid ""
+"The result of a 2D shape query in [PhysicsServer2D]. See also "
+"[PhysicsShapeQueryParameters2D]."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryResult2D.xml:16
+#: doc/classes/PhysicsShapeQueryResult3D.xml:16
+msgid "Returns the number of objects that intersected with the shape."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryResult2D.xml:25
+#: doc/classes/PhysicsShapeQueryResult3D.xml:25
+msgid ""
+"Returns the [Object] that intersected with the shape at index [code]idx[/"
+"code]."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryResult2D.xml:34
+#: doc/classes/PhysicsShapeQueryResult3D.xml:34
+msgid ""
+"Returns the instance ID of the [Object] that intersected with the shape at "
+"index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryResult2D.xml:43
+msgid ""
+"Returns the child index of the object's [Shape2D] that intersected with the "
+"shape at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryResult2D.xml:52
+#: doc/classes/PhysicsShapeQueryResult3D.xml:52
+msgid ""
+"Returns the [RID] of the object that intersected with the shape at index "
+"[code]idx[/code]."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryResult3D.xml:4
+msgid "Result of a 3D shape query in [PhysicsServer3D]."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryResult3D.xml:7
+msgid ""
+"The result of a 3D shape query in [PhysicsServer3D]. See also "
+"[PhysicsShapeQueryParameters3D]."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryResult3D.xml:43
+msgid ""
+"Returns the child index of the object's [Shape3D] that intersected with the "
+"shape at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/PinJoint2D.xml:4
+msgid "Pin joint for 2D shapes."
+msgstr ""
+
+#: doc/classes/PinJoint2D.xml:7
+msgid ""
+"Pin joint for 2D rigid bodies. It pins two bodies (rigid or static) together."
+msgstr ""
+
+#: doc/classes/PinJoint2D.xml:15
+msgid ""
+"The higher this value, the more the bond to the pinned partner can flex."
+msgstr ""
+
+#: doc/classes/PinJoint3D.xml:4
+msgid "Pin joint for 3D shapes."
+msgstr ""
+
+#: doc/classes/PinJoint3D.xml:7
+msgid ""
+"Pin joint for 3D rigid bodies. It pins 2 bodies (rigid or static) together."
+msgstr ""
+
+#: doc/classes/PinJoint3D.xml:35 doc/classes/PinJoint3D.xml:46
+msgid ""
+"The force with which the pinned objects stay in positional relation to each "
+"other. The higher, the stronger."
+msgstr ""
+
+#: doc/classes/PinJoint3D.xml:38 doc/classes/PinJoint3D.xml:49
+msgid ""
+"The force with which the pinned objects stay in velocity relation to each "
+"other. The higher, the stronger."
+msgstr ""
+
+#: doc/classes/PinJoint3D.xml:41 doc/classes/PinJoint3D.xml:52
+msgid ""
+"If above 0, this value is the maximum value for an impulse that this Joint3D "
+"produces."
+msgstr ""
+
+#: doc/classes/Plane.xml:4
+msgid "Plane in hessian form."
+msgstr ""
+
+#: doc/classes/Plane.xml:7
+msgid ""
+"Plane represents a normalized plane equation. Basically, \"normal\" is the "
+"normal of the plane (a,b,c normalized), and \"d\" is the distance from the "
+"origin to the plane (in the direction of \"normal\"). \"Over\" or \"Above\" "
+"the plane is considered the side of the plane towards where the normal is "
+"pointing."
+msgstr ""
+
+#: doc/classes/Plane.xml:25
+msgid ""
+"Creates a plane from the four parameters. The three components of the "
+"resulting plane's [member normal] are [code]a[/code], [code]b[/code] and "
+"[code]c[/code], and the plane has a distance of [code]d[/code] from the "
+"origin."
+msgstr ""
+
+#: doc/classes/Plane.xml:38
+msgid "Creates a plane from the three points, given in clockwise order."
+msgstr ""
+
+#: doc/classes/Plane.xml:49
+msgid "Creates a plane from the normal and the plane's distance to the origin."
+msgstr ""
+
+#: doc/classes/Plane.xml:56
+msgid "Returns the center of the plane."
+msgstr ""
+
+#: doc/classes/Plane.xml:65
+msgid ""
+"Returns the shortest distance from the plane to the position [code]point[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Plane.xml:76
+msgid ""
+"Returns [code]true[/code] if [code]point[/code] is inside the plane. "
+"Comparison uses a custom minimum [code]epsilon[/code] threshold."
+msgstr ""
+
+#: doc/classes/Plane.xml:87
+msgid ""
+"Returns the intersection point of the three planes [code]b[/code], [code]c[/"
+"code] and this plane. If no intersection is found, [code]null[/code] is "
+"returned."
+msgstr ""
+
+#: doc/classes/Plane.xml:98
+msgid ""
+"Returns the intersection point of a ray consisting of the position "
+"[code]from[/code] and the direction normal [code]dir[/code] with this plane. "
+"If no intersection is found, [code]null[/code] is returned."
+msgstr ""
+
+#: doc/classes/Plane.xml:109
+msgid ""
+"Returns the intersection point of a segment from position [code]begin[/code] "
+"to position [code]end[/code] with this plane. If no intersection is found, "
+"[code]null[/code] is returned."
+msgstr ""
+
+#: doc/classes/Plane.xml:118
+msgid ""
+"Returns [code]true[/code] if this plane and [code]plane[/code] are "
+"approximately equal, by running [method @GDScript.is_equal_approx] on each "
+"component."
+msgstr ""
+
+#: doc/classes/Plane.xml:127
+msgid ""
+"Returns [code]true[/code] if [code]point[/code] is located above the plane."
+msgstr ""
+
+#: doc/classes/Plane.xml:134
+msgid "Returns a copy of the plane, normalized."
+msgstr ""
+
+#: doc/classes/Plane.xml:143
+msgid ""
+"Returns the orthogonal projection of [code]point[/code] into a point in the "
+"plane."
+msgstr ""
+
+#: doc/classes/Plane.xml:149
+msgid ""
+"The distance from the origin to the plane, in the direction of [member "
+"normal]. This value is typically non-negative.\n"
+"In the scalar equation of the plane [code]ax + by + cz = d[/code], this is "
+"[code]d[/code], while the [code](a, b, c)[/code] coordinates are represented "
+"by the [member normal] property."
+msgstr ""
+
+#: doc/classes/Plane.xml:153
+msgid ""
+"The normal of the plane, which must be normalized.\n"
+"In the scalar equation of the plane [code]ax + by + cz = d[/code], this is "
+"the vector [code](a, b, c)[/code], where [code]d[/code] is the [member d] "
+"property."
+msgstr ""
+
+#: doc/classes/Plane.xml:157
+msgid "The X component of the plane's [member normal] vector."
+msgstr ""
+
+#: doc/classes/Plane.xml:160
+msgid "The Y component of the plane's [member normal] vector."
+msgstr ""
+
+#: doc/classes/Plane.xml:163
+msgid "The Z component of the plane's [member normal] vector."
+msgstr ""
+
+#: doc/classes/Plane.xml:168
+msgid "A plane that extends in the Y and Z axes (normal vector points +X)."
+msgstr ""
+
+#: doc/classes/Plane.xml:171
+msgid "A plane that extends in the X and Z axes (normal vector points +Y)."
+msgstr ""
+
+#: doc/classes/Plane.xml:174
+msgid "A plane that extends in the X and Y axes (normal vector points +Z)."
+msgstr ""
+
+#: doc/classes/PlaneMesh.xml:4
+msgid "Class representing a planar [PrimitiveMesh]."
+msgstr ""
+
+#: doc/classes/PlaneMesh.xml:7
+msgid ""
+"Class representing a planar [PrimitiveMesh]. This flat mesh does not have a "
+"thickness. By default, this mesh is aligned on the X and Z axes; this "
+"default rotation isn't suited for use with billboarded materials. For "
+"billboarded materials, use [QuadMesh] instead."
+msgstr ""
+
+#: doc/classes/PlaneMesh.xml:15
+msgid "Size of the generated plane."
+msgstr ""
+
+#: doc/classes/PlaneMesh.xml:18
+msgid "Number of subdivision along the Z axis."
+msgstr ""
+
+#: doc/classes/PlaneMesh.xml:21
+msgid "Number of subdivision along the X axis."
+msgstr ""
+
+#: doc/classes/PointMesh.xml:4
+msgid "Mesh with a single Point primitive."
+msgstr ""
+
+#: doc/classes/PointMesh.xml:7
+msgid ""
+"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).\n"
+"PointMeshes, must be used with a material that has a point size. Point size "
+"can be accessed in a shader with [code]POINT_SIZE[/code], or in a "
+"[BaseMaterial3D] by setting [member BaseMaterial3D.use_point_size] and the "
+"variable [member BaseMaterial3D.point_size].\n"
+"When using PointMeshes, properties that normally alter vertices will be "
+"ignored, including billboard mode, grow, and cull face."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:4
+msgid "A 2D polygon."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:7
+msgid ""
+"A Polygon2D is defined by a set of points. Each point is connected to the "
+"next, with the final point being connected to the first, resulting in a "
+"closed polygon. Polygon2Ds can be filled with color (solid or gradient) or "
+"filled with a given texture."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:20
+msgid ""
+"Adds a bone with the specified [code]path[/code] and [code]weights[/code]."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:27
+msgid "Removes all bones from this [Polygon2D]."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:36
+msgid "Removes the specified bone from this [Polygon2D]."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:43
+msgid "Returns the number of bones in this [Polygon2D]."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:52
+msgid "Returns the path to the node associated with the specified bone."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:61
+msgid "Returns the height values of the specified bone."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:72
+msgid "Sets the path to the node associated with the specified bone."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:83
+msgid "Sets the weight values for the specified bone."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:89
+msgid "If [code]true[/code], polygon edges will be anti-aliased."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:94
+msgid ""
+"The polygon's fill color. If [code]texture[/code] is defined, it will be "
+"multiplied by this color. It will also be the default color for vertices not "
+"set in [code]vertex_colors[/code]."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:99
+msgid ""
+"Added padding applied to the bounding box when using [code]invert[/code]. "
+"Setting this value too small may result in a \"Bad Polygon\" error."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:102
+msgid ""
+"If [code]true[/code], polygon will be inverted, containing the area outside "
+"the defined points and extending to the [code]invert_border[/code]."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:105
+msgid ""
+"The normal map gives depth to the Polygon2D.\n"
+"[b]Note:[/b] Godot expects the normal map to use X+, Y-, and Z+ coordinates. "
+"See [url=http://wiki.polycount.com/wiki/"
+"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]this page[/url] for "
+"a comparison of normal map coordinates expected by popular engines."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:109
+msgid "The offset applied to each vertex."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:112
+msgid ""
+"The polygon's list of vertices. The final point will be connected to the "
+"first.\n"
+"[b]Note:[/b] This returns a copy of the [PackedVector2Array] rather than a "
+"reference."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:126
+msgid ""
+"The polygon's fill texture. Use [code]uv[/code] to set texture coordinates."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:129
+msgid ""
+"Amount to offset the polygon's [code]texture[/code]. If [code](0, 0)[/code] "
+"the texture's origin (its top-left corner) will be placed at the polygon's "
+"[code]position[/code]."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:132
+msgid "The texture's rotation in radians."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:135
+msgid "The texture's rotation in degrees."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:138
+msgid ""
+"Amount to multiply the [code]uv[/code] coordinates when using a "
+"[code]texture[/code]. Larger values make the texture smaller, and vice versa."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:141
+msgid ""
+"Texture coordinates for each vertex of the polygon. There should be one "
+"[code]uv[/code] per polygon vertex. If there are fewer, undefined vertices "
+"will use [code](0, 0)[/code]."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:144
+msgid ""
+"Color for each vertex. Colors are interpolated between vertices, resulting "
+"in smooth gradients. There should be one per polygon vertex. If there are "
+"fewer, undefined vertices will use [code]color[/code]."
+msgstr ""
+
+#: doc/classes/Popup.xml:4
+msgid "Base container control for popups and dialogs."
+msgstr ""
+
+#: doc/classes/Popup.xml:7
+msgid ""
+"Popup is a base [Control] used to show dialogs and popups. It's a subwindow "
+"and modal by default (see [Control]) and has helpers for custom popup "
+"behavior."
+msgstr ""
+
+#: doc/classes/Popup.xml:23
+msgid "Emitted when a popup is hidden."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:4
+msgid "PopupMenu displays a list of options."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:7
+msgid ""
+"[PopupMenu] is a [Control] that displays a list of options. They are popular "
+"in toolbars or context menus."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:22
+msgid ""
+"Adds a new checkable item with text [code]label[/code].\n"
+"An [code]id[/code] can optionally be provided, as well as an accelerator "
+"([code]accel[/code]). If no [code]id[/code] is provided, one will be created "
+"from the index. If no [code]accel[/code] is provided then the default "
+"[code]0[/code] will be assigned to it. See [method get_item_accelerator] for "
+"more info on accelerators.\n"
+"[b]Note:[/b] Checkable items just display a checkmark, but don't have any "
+"built-in checking behavior and must be checked/unchecked manually. See "
+"[method set_item_checked] for more info on how to control it."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:37
+msgid ""
+"Adds a new checkable item and assigns the specified [ShortCut] to it. Sets "
+"the label of the checkbox to the [ShortCut]'s name.\n"
+"An [code]id[/code] can optionally be provided. If no [code]id[/code] is "
+"provided, one will be created from the index.\n"
+"[b]Note:[/b] Checkable items just display a checkmark, but don't have any "
+"built-in checking behavior and must be checked/unchecked manually. See "
+"[method set_item_checked] for more info on how to control it."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:54
+msgid ""
+"Adds a new checkable item with text [code]label[/code] and icon "
+"[code]texture[/code].\n"
+"An [code]id[/code] can optionally be provided, as well as an accelerator "
+"([code]accel[/code]). If no [code]id[/code] is provided, one will be created "
+"from the index. If no [code]accel[/code] is provided then the default "
+"[code]0[/code] will be assigned to it. See [method get_item_accelerator] for "
+"more info on accelerators.\n"
+"[b]Note:[/b] Checkable items just display a checkmark, but don't have any "
+"built-in checking behavior and must be checked/unchecked manually. See "
+"[method set_item_checked] for more info on how to control it."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:71
+msgid ""
+"Adds a new checkable item and assigns the specified [ShortCut] and icon "
+"[code]texture[/code] to it. Sets the label of the checkbox to the "
+"[ShortCut]'s name.\n"
+"An [code]id[/code] can optionally be provided. If no [code]id[/code] is "
+"provided, one will be created from the index.\n"
+"[b]Note:[/b] Checkable items just display a checkmark, but don't have any "
+"built-in checking behavior and must be checked/unchecked manually. See "
+"[method set_item_checked] for more info on how to control it."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:88
+msgid ""
+"Adds a new item with text [code]label[/code] and icon [code]texture[/code].\n"
+"An [code]id[/code] can optionally be provided, as well as an accelerator "
+"([code]accel[/code]). If no [code]id[/code] is provided, one will be created "
+"from the index. If no [code]accel[/code] is provided then the default "
+"[code]0[/code] will be assigned to it. See [method get_item_accelerator] for "
+"more info on accelerators."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:104
+msgid "Same as [method add_icon_check_item], but uses a radio check button."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:119
+msgid ""
+"Same as [method add_icon_check_shortcut], but uses a radio check button."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:134
+msgid ""
+"Adds a new item and assigns the specified [ShortCut] and icon [code]texture[/"
+"code] to it. Sets the label of the checkbox to the [ShortCut]'s name.\n"
+"An [code]id[/code] can optionally be provided. If no [code]id[/code] is "
+"provided, one will be created from the index."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:148
+msgid ""
+"Adds a new item with text [code]label[/code].\n"
+"An [code]id[/code] can optionally be provided, as well as an accelerator "
+"([code]accel[/code]). If no [code]id[/code] is provided, one will be created "
+"from the index. If no [code]accel[/code] is provided then the default "
+"[code]0[/code] will be assigned to it. See [method get_item_accelerator] for "
+"more info on accelerators."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:166
+msgid ""
+"Adds a new multistate item with text [code]label[/code].\n"
+"Contrarily to normal binary items, multistate items can have more than two "
+"states, as defined by [code]max_states[/code]. Each press or activate of the "
+"item will increase the state by one. The default value is defined by "
+"[code]default_state[/code].\n"
+"An [code]id[/code] can optionally be provided, as well as an accelerator "
+"([code]accel[/code]). If no [code]id[/code] is provided, one will be created "
+"from the index. If no [code]accel[/code] is provided then the default "
+"[code]0[/code] will be assigned to it. See [method get_item_accelerator] for "
+"more info on accelerators."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:181
+msgid ""
+"Adds a new radio check button with text [code]label[/code].\n"
+"An [code]id[/code] can optionally be provided, as well as an accelerator "
+"([code]accel[/code]). If no [code]id[/code] is provided, one will be created "
+"from the index. If no [code]accel[/code] is provided then the default "
+"[code]0[/code] will be assigned to it. See [method get_item_accelerator] for "
+"more info on accelerators.\n"
+"[b]Note:[/b] Checkable items just display a checkmark, but don't have any "
+"built-in checking behavior and must be checked/unchecked manually. See "
+"[method set_item_checked] for more info on how to control it."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:196
+msgid ""
+"Adds a new radio check button and assigns a [ShortCut] to it. Sets the label "
+"of the checkbox to the [ShortCut]'s name.\n"
+"An [code]id[/code] can optionally be provided. If no [code]id[/code] is "
+"provided, one will be created from the index.\n"
+"[b]Note:[/b] Checkable items just display a checkmark, but don't have any "
+"built-in checking behavior and must be checked/unchecked manually. See "
+"[method set_item_checked] for more info on how to control it."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:207
+msgid "Adds a separator between items. Separators also occupy an index."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:220
+msgid ""
+"Adds a [ShortCut].\n"
+"An [code]id[/code] can optionally be provided. If no [code]id[/code] is "
+"provided, one will be created from the index."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:234
+msgid ""
+"Adds an item that will act as a submenu of the parent [PopupMenu] node when "
+"clicked. The [code]submenu[/code] argument is the name of the child "
+"[PopupMenu] node that will be shown when the item is clicked.\n"
+"An [code]id[/code] can optionally be provided. If no [code]id[/code] is "
+"provided, one will be created from the index."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:242
+msgid "Removes all items from the [PopupMenu]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:257
+msgid ""
+"Returns the accelerator of the item at index [code]idx[/code]. Accelerators "
+"are special combinations of keys that activate the item, no matter which "
+"control is focused."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:264
+msgid "Returns the number of items in the [PopupMenu]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:282
+msgid ""
+"Returns the id of the item at index [code]idx[/code]. [code]id[/code] can be "
+"manually assigned, while index can not."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:291
+msgid ""
+"Returns the index of the item containing the specified [code]id[/code]. "
+"Index is automatically assigned to each item by the engine. Index can not be "
+"set manually."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:300
+msgid ""
+"Returns the metadata of the specified item, which might be of any type. You "
+"can set it with [method set_item_metadata], which provides a simple way of "
+"assigning context data to items."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:309
+msgid ""
+"Returns the [ShortCut] associated with the specified [code]idx[/code] item."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:318
+msgid ""
+"Returns the submenu name of the item at index [code]idx[/code]. See [method "
+"add_submenu_item] for more info on how to add a submenu."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:336
+msgid ""
+"Returns the tooltip associated with the specified index index [code]idx[/"
+"code]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:345
+msgid ""
+"Returns [code]true[/code] if the item at index [code]idx[/code] is checkable "
+"in some way, i.e. if it has a checkbox or radio button.\n"
+"[b]Note:[/b] Checkable items just display a checkmark or radio button, but "
+"don't have any built-in checking behavior and must be checked/unchecked "
+"manually."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:355
+msgid ""
+"Returns [code]true[/code] if the item at index [code]idx[/code] is checked."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:364
+msgid ""
+"Returns [code]true[/code] if the item at index [code]idx[/code] is disabled. "
+"When it is disabled it can't be selected, or its action invoked.\n"
+"See [method set_item_disabled] for more info on how to disable an item."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:374
+msgid ""
+"Returns [code]true[/code] if the item at index [code]idx[/code] has radio "
+"button-style checkability.\n"
+"[b]Note:[/b] This is purely cosmetic; you must add the logic for checking/"
+"unchecking items in radio groups."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:384
+msgid ""
+"Returns [code]true[/code] if the item is a separator. If it is, it will be "
+"displayed as a line. See [method add_separator] for more info on how to add "
+"a separator."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:393
+msgid "Returns [code]true[/code] if the specified item's shortcut is disabled."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:402
+msgid ""
+"Removes the item at index [code]idx[/code] from the menu.\n"
+"[b]Note:[/b] The indices of items after the removed item will be shifted by "
+"one."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:414
+msgid ""
+"Sets the accelerator of the item at index [code]idx[/code]. Accelerators are "
+"special combinations of keys that activate the item, no matter which control "
+"is focused."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:425
+msgid ""
+"Sets whether the item at index [code]idx[/code] has a checkbox. If "
+"[code]false[/code], sets the type of the item to plain text.\n"
+"[b]Note:[/b] Checkable items just display a checkmark, but don't have any "
+"built-in checking behavior and must be checked/unchecked manually."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:437
+msgid ""
+"Sets the type of the item at the specified index [code]idx[/code] to radio "
+"button. If [code]false[/code], sets the type of the item to plain text."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:448
+msgid ""
+"Mark the item at index [code]idx[/code] as a separator, which means that it "
+"would be displayed as a line. If [code]false[/code], sets the type of the "
+"item to plain text."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:459
+msgid "Sets the checkstate status of the item at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:470
+msgid ""
+"Enables/disables the item at index [code]idx[/code]. When it is disabled, it "
+"can't be selected and its action can't be invoked."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:481
+msgid "Replaces the [Texture2D] icon of the specified [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:492
+msgid "Sets the [code]id[/code] of the item at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:503
+msgid ""
+"Sets the metadata of an item, which may be of any type. You can later get it "
+"with [method get_item_metadata], which provides a simple way of assigning "
+"context data to items."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:514
+msgid ""
+"Sets the state of an multistate item. See [method add_multistate_item] for "
+"details."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:527
+msgid "Sets a [ShortCut] for the specified item [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:538
+msgid "Disables the [ShortCut] of the specified index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:549
+msgid ""
+"Sets the submenu of the item at index [code]idx[/code]. The submenu is the "
+"name of a child [PopupMenu] node that would be shown when the item is "
+"clicked."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:571
+msgid ""
+"Sets the [String] tooltip of the item at the specified index [code]idx[/"
+"code]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:580
+msgid ""
+"Toggles the check state of the item of the specified index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:589
+msgid ""
+"Cycle to the next state of an multistate item. See [method "
+"add_multistate_item] for details."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:595
+msgid "If [code]true[/code], allows to navigate [PopupMenu] with letter keys."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:598
+msgid ""
+"If [code]true[/code], hides the [PopupMenu] when a checkbox or radio button "
+"is selected."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:601
+msgid "If [code]true[/code], hides the [PopupMenu] when an item is selected."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:604
+msgid ""
+"If [code]true[/code], hides the [PopupMenu] when a state item is selected."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:607
+msgid ""
+"Sets the delay time in seconds for the submenu item to popup on mouse "
+"hovering. If the popup menu is added as a child of another (acting as a "
+"submenu), it will inherit the delay time of the parent menu item."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:615
+msgid ""
+"Emitted when user navigated to an item of some [code]id[/code] using "
+"[code]ui_up[/code] or [code]ui_down[/code] action."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:622
+msgid ""
+"Emitted when an item of some [code]id[/code] is pressed or its accelerator "
+"is activated."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:629
+msgid ""
+"Emitted when an item of some [code]index[/code] is pressed or its "
+"accelerator is activated."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:637
+msgid "[Texture2D] icon for the checked checkbox items."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:640
+msgid "[Font] used for the menu items."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:643
+msgid "The default text [Color] for menu items' names."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:646
+msgid ""
+"The text [Color] used for shortcuts and accelerators that show next to the "
+"menu item name when defined. See [method get_item_accelerator] for more info "
+"on accelerators."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:649
+msgid "[Color] used for disabled menu items' text."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:652
+msgid "[Color] used for the hovered text."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:655
+msgid "[StyleBox] displayed when the [PopupMenu] item is hovered."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:658
+msgid ""
+"The horizontal space between the item's name and the shortcut text/submenu "
+"arrow."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:661
+msgid ""
+"[StyleBox] for the left side of labeled separator. See [method "
+"add_separator]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:664
+msgid ""
+"[StyleBox] for the right side of labeled separator. See [method "
+"add_separator]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:667
+msgid "Default [StyleBox] of the [PopupMenu] items."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:670
+msgid "[StyleBox] used when the [PopupMenu] item is disabled."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:673
+msgid "[Texture2D] icon for the checked radio button items."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:676
+msgid "[Texture2D] icon for the unchecked radio button items."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:679
+msgid "[StyleBox] used for the separators. See [method add_separator]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:682
+msgid "[Texture2D] icon for the submenu arrow."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:685
+msgid "[Texture2D] icon for the unchecked checkbox items."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:688
+msgid "The vertical space between each menu item."
+msgstr ""
+
+#: doc/classes/PopupPanel.xml:4
+msgid "Class for displaying popups with a panel background."
+msgstr ""
+
+#: doc/classes/PopupPanel.xml:7
+msgid ""
+"Class for displaying popups with a panel background. In some cases it might "
+"be simpler to use than [Popup], since it provides a configurable background. "
+"If you are making windows, better check [Window]."
+msgstr ""
+
+#: doc/classes/PopupPanel.xml:17
+msgid "The background panel style of this [PopupPanel]."
+msgstr ""
+
+#: doc/classes/Position2D.xml:4
+msgid "Generic 2D position hint for editing."
+msgstr ""
+
+#: doc/classes/Position2D.xml:7
+msgid ""
+"Generic 2D position hint for editing. It's just like a plain [Node2D], but "
+"it displays as a cross in the 2D editor at all times. You can set cross' "
+"visual size by using the gizmo in the 2D editor while the node is selected."
+msgstr ""
+
+#: doc/classes/Position3D.xml:4
+msgid "Generic 3D position hint for editing."
+msgstr ""
+
+#: doc/classes/Position3D.xml:7
+msgid ""
+"Generic 3D position hint for editing. It's just like a plain [Node3D], but "
+"it displays as a cross in the 3D editor at all times."
+msgstr ""
+
+#: doc/classes/PrimitiveMesh.xml:4
+msgid ""
+"Base class for all primitive meshes. Handles applying a [Material] to a "
+"primitive mesh."
+msgstr ""
+
+#: doc/classes/PrimitiveMesh.xml:7
+msgid ""
+"Base class for all primitive meshes. Handles applying a [Material] to a "
+"primitive mesh. Examples include [CapsuleMesh], [CubeMesh], [CylinderMesh], "
+"[PlaneMesh], [PrismMesh], [QuadMesh], and [SphereMesh]."
+msgstr ""
+
+#: doc/classes/PrimitiveMesh.xml:16
+msgid ""
+"Returns mesh arrays used to constitute surface of [Mesh]. The result can be "
+"passed to [method ArrayMesh.add_surface_from_arrays] to create a new "
+"surface. For example:\n"
+"[codeblock]\n"
+"var c := CylinderMesh.new()\n"
+"var arr_mesh := ArrayMesh.new()\n"
+"arr_mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLES, c."
+"get_mesh_arrays())\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/PrimitiveMesh.xml:27
+msgid ""
+"Overrides the [AABB] with one defined by user for use with frustum culling. "
+"Especially useful to avoid unnexpected culling when using a shader to "
+"offset vertices."
+msgstr ""
+
+#: doc/classes/PrimitiveMesh.xml:30
+msgid ""
+"If set, the order of the vertices in each triangle are reversed resulting in "
+"the backside of the mesh being drawn.\n"
+"This gives the same result as using [constant BaseMaterial3D.CULL_BACK] in "
+"[member BaseMaterial3D.cull_mode]."
+msgstr ""
+
+#: doc/classes/PrimitiveMesh.xml:34
+msgid "The current [Material] of the primitive mesh."
+msgstr ""
+
+#: doc/classes/PrismMesh.xml:4 doc/classes/PrismMesh.xml:7
+msgid "Class representing a prism-shaped [PrimitiveMesh]."
+msgstr ""
+
+#: doc/classes/PrismMesh.xml:15
+msgid ""
+"Displacement of the upper edge along the X axis. 0.0 positions edge straight "
+"above the bottom-left edge."
+msgstr ""
+
+#: doc/classes/PrismMesh.xml:18
+msgid "Size of the prism."
+msgstr ""
+
+#: doc/classes/PrismMesh.xml:21
+msgid "Number of added edge loops along the Z axis."
+msgstr ""
+
+#: doc/classes/PrismMesh.xml:24
+msgid "Number of added edge loops along the Y axis."
+msgstr ""
+
+#: doc/classes/PrismMesh.xml:27
+msgid "Number of added edge loops along the X axis."
+msgstr ""
+
+#: doc/classes/ProceduralSkyMaterial.xml:4
+msgid ""
+"A [Material] used with [Sky] to generate a background based on user input "
+"parameters."
+msgstr ""
+
+#: doc/classes/ProceduralSkyMaterial.xml:7
+msgid ""
+"ProceduralSkyMaterial provides a way to create an effective background "
+"quickly by defining procedural parameters for the sun, the sky and the "
+"ground. The sky and ground are very similar, they are defined by a color at "
+"the horizon, another color, and finally an easing curve to interpolate "
+"between these two colors. Similarly, the sun is described by a position in "
+"the sky, a color, and an easing curve. However, the sun also defines a "
+"minimum and maximum angle, these two values define at what distance the "
+"easing curve begins and ends from the sun, and thus end up defining the size "
+"of the sun in the sky.\n"
+"The [ProceduralSkyMaterial] uses a lightweight shader to draw the sky and is "
+"thus suited for real time updates. When you do not need a quick sky that is "
+"not realistic, this is a good option.\n"
+"The [ProceduralSkyMaterial] supports up to 4 suns. Each sun takes its color, "
+"energy, and direction from the corresponding [DirectionalLight3D] in the "
+"scene."
+msgstr ""
+
+#: doc/classes/ProceduralSkyMaterial.xml:17
+msgid ""
+"Color of the ground at the bottom. Blends with [member ground_horizon_color]."
+msgstr ""
+
+#: doc/classes/ProceduralSkyMaterial.xml:20
+msgid ""
+"How quickly the [member ground_horizon_color] fades into the [member "
+"ground_bottom_color]."
+msgstr ""
+
+#: doc/classes/ProceduralSkyMaterial.xml:23
+msgid "Amount of energy contribution from the ground."
+msgstr ""
+
+#: doc/classes/ProceduralSkyMaterial.xml:26
+msgid ""
+"Color of the ground at the horizon. Blends with [member ground_bottom_color]."
+msgstr ""
+
+#: doc/classes/ProceduralSkyMaterial.xml:29
+msgid ""
+"How quickly the [member sky_horizon_color] fades into the [member "
+"sky_top_color]."
+msgstr ""
+
+#: doc/classes/ProceduralSkyMaterial.xml:32
+msgid "Amount of energy contribution from the sky."
+msgstr ""
+
+#: doc/classes/ProceduralSkyMaterial.xml:35
+msgid "Color of the sky at the horizon. Blends with [member sky_top_color]."
+msgstr ""
+
+#: doc/classes/ProceduralSkyMaterial.xml:38
+msgid "Color of the sky at the top. Blends with [member sky_horizon_color]."
+msgstr ""
+
+#: doc/classes/ProceduralSkyMaterial.xml:41
+msgid "Distance from center of sun where it fades out completely."
+msgstr ""
+
+#: doc/classes/ProceduralSkyMaterial.xml:44
+msgid ""
+"How quickly the sun fades away between the edge of the sun disk and [member "
+"sun_angle_max]."
+msgstr ""
+
+#: doc/classes/ProgressBar.xml:4
+msgid "General-purpose progress bar."
+msgstr ""
+
+#: doc/classes/ProgressBar.xml:7
+msgid "General-purpose progress bar. Shows fill percentage from right to left."
+msgstr ""
+
+#: doc/classes/ProgressBar.xml:15
+msgid "If [code]true[/code], the fill percentage is displayed on the bar."
+msgstr ""
+
+#: doc/classes/ProgressBar.xml:24
+msgid "The style of the background."
+msgstr ""
+
+#: doc/classes/ProgressBar.xml:27
+msgid "The style of the progress (i.e. the part that fills the bar)."
+msgstr ""
+
+#: doc/classes/ProgressBar.xml:30
+msgid ""
+"Font used to draw the fill percentage if [member percent_visible] is "
+"[code]true[/code]."
+msgstr ""
+
+#: doc/classes/ProgressBar.xml:33
+msgid "The color of the text."
+msgstr ""
+
+#: doc/classes/ProgressBar.xml:36
+msgid "The color of the text's shadow."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:4
+msgid "Contains global variables accessible from everywhere."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:7
+msgid ""
+"Contains global variables accessible from everywhere. Use [method "
+"get_setting], [method set_setting] or [method has_setting] to access them. "
+"Variables stored in [code]project.godot[/code] are also loaded into "
+"ProjectSettings, making this object very useful for reading custom game "
+"configuration options.\n"
+"When naming a Project Settings property, use the full path to the setting "
+"including the category. For example, [code]\"application/config/name\"[/"
+"code] for the project name. Category and property names can be viewed in the "
+"Project Settings dialog.\n"
+"[b]Overriding:[/b] Any project setting can be overridden by creating a file "
+"named [code]override.cfg[/code] in the project's root directory. This can "
+"also be used in exported projects by placing this file in the same directory "
+"as the project binary."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:20
+msgid ""
+"Adds a custom property info to a property. The dictionary must contain:\n"
+"- [code]name[/code]: [String] (the property's name)\n"
+"- [code]type[/code]: [int] (see [enum Variant.Type])\n"
+"- optionally [code]hint[/code]: [int] (see [enum PropertyHint]) and "
+"[code]hint_string[/code]: [String]\n"
+"[b]Example:[/b]\n"
+"[codeblock]\n"
+"ProjectSettings.set(\"category/property_name\", 0)\n"
+"\n"
+"var property_info = {\n"
+" \"name\": \"category/property_name\",\n"
+" \"type\": TYPE_INT,\n"
+" \"hint\": PROPERTY_HINT_ENUM,\n"
+" \"hint_string\": \"one,two,three\"\n"
+"}\n"
+"\n"
+"ProjectSettings.add_property_info(property_info)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:45
+msgid "Clears the whole configuration (not recommended, may break things)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:54
+msgid ""
+"Returns the order of a configuration value (influences when saved to the "
+"config file)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:63
+msgid ""
+"Returns the value of a setting.\n"
+"[b]Example:[/b]\n"
+"[codeblock]\n"
+"print(ProjectSettings.get_setting(\"application/config/name\"))\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:76
+msgid ""
+"Converts a localized path ([code]res://[/code]) to a full native OS path."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:85
+msgid "Returns [code]true[/code] if a configuration value is present."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:96
+msgid ""
+"Loads the contents of the .pck or .zip file specified by [code]pack[/code] "
+"into the resource filesystem ([code]res://[/code]). Returns [code]true[/"
+"code] on success.\n"
+"[b]Note:[/b] If a file from [code]pack[/code] shares the same path as a file "
+"already in the resource filesystem, any attempts to load that file will use "
+"the file from [code]pack[/code] unless [code]replace_files[/code] is set to "
+"[code]false[/code]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:106
+msgid "Convert a path to a localized path ([code]res://[/code] path)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:115
+msgid ""
+"Returns [code]true[/code] if the specified property exists and its initial "
+"value differs from the current value."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:124
+msgid ""
+"Returns the specified property's initial value. Returns [code]null[/code] if "
+"the property does not exist."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:131
+msgid "Saves the configuration to the [code]project.godot[/code] file."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:140
+msgid ""
+"Saves the configuration to a custom file. The file extension must be [code]."
+"godot[/code] (to save in text-based [ConfigFile] format) or [code].binary[/"
+"code] (to save in binary format)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:151
+msgid ""
+"Sets the specified property's initial value. This is the value the property "
+"reverts to."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:162
+msgid ""
+"Sets the order of a configuration value (influences when saved to the config "
+"file)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:173
+msgid ""
+"Sets the value of a setting.\n"
+"[b]Example:[/b]\n"
+"[codeblock]\n"
+"ProjectSettings.set_setting(\"application/config/name\", \"Example\")\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:183
+msgid "Background color for the boot splash."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:186
+msgid ""
+"If [code]true[/code], scale the boot splash image to the full window length "
+"when engine starts. If [code]false[/code], the engine will leave it at the "
+"default pixel size."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:189
+msgid "Path to an image used as the boot splash."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:192
+msgid ""
+"If [code]true[/code], applies linear filtering when scaling the image "
+"(recommended for high resolution artwork). If [code]false[/code], uses "
+"nearest-neighbor interpolation (recommended for pixel art)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:195
+msgid ""
+"This user directory is used for storing persistent data ([code]user://[/"
+"code] filesystem). If left empty, [code]user://[/code] resolves to a project-"
+"specific folder in Godot's own configuration folder (see [method OS."
+"get_user_data_dir]). If a custom directory name is defined, this name will "
+"be used instead and appended to the system-specific user data directory "
+"(same parent folder as the Godot configuration folder documented in [method "
+"OS.get_user_data_dir]).\n"
+"The [member application/config/use_custom_user_dir] setting must be enabled "
+"for this to take effect."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:199
+msgid ""
+"The project's description, displayed as a tooltip in the Project Manager "
+"when hovering the project."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:202
+msgid ""
+"Icon used for the project, set when project loads. Exporters will also use "
+"this icon when possible."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:205
+msgid ""
+"Icon set in [code].icns[/code] format used on macOS to set the game's icon. "
+"This is done automatically on start by calling [method DisplayServer."
+"set_native_icon]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:208
+msgid ""
+"The project's name. It is used both by the Project Manager and by exporters. "
+"The project name can be translated by translating its value in localization "
+"files."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:211
+msgid ""
+"Specifies a file to override project settings. For example: [code]user://"
+"custom_settings.cfg[/code].\n"
+"[b]Note:[/b] Regardless of this setting's value, [code]res://override.cfg[/"
+"code] will still be read to override the project settings (see this class' "
+"description at the top)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:215
+msgid ""
+"If [code]true[/code], the project will save user data to its own user "
+"directory (see [member application/config/custom_user_dir_name]). This "
+"setting is only effective on desktop platforms. A name must be set in the "
+"[member application/config/custom_user_dir_name] setting for this to take "
+"effect. If [code]false[/code], the project will save user data to [code](OS "
+"user data directory)/Godot/app_userdata/(project name)[/code]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:218
+msgid ""
+"Icon set in [code].ico[/code] format used on Windows to set the game's icon. "
+"This is done automatically on start by calling [method DisplayServer."
+"set_native_icon]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:221
+msgid ""
+"If [code]true[/code], disables printing to standard error in an exported "
+"build."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:224
+msgid ""
+"If [code]true[/code], disables printing to standard output in an exported "
+"build."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:227
+msgid ""
+"Forces a delay between frames in the main loop (in milliseconds). This may "
+"be useful if you plan to disable vertical synchronization."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:230
+msgid ""
+"If [code]true[/code], enables low-processor usage mode. This setting only "
+"works on desktop platforms. The screen is not redrawn if nothing changes "
+"visually. This is meant for writing applications and editors, but is pretty "
+"useless (and can hurt performance) in most games."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:233
+msgid ""
+"Amount of sleeping between frames when the low-processor usage mode is "
+"enabled (in microseconds). Higher values will result in lower CPU usage."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:236
+msgid "Path to the main scene file that will be loaded when the project runs."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:239 doc/classes/ProjectSettings.xml:242
+msgid ""
+"Audio buses will disable automatically when sound goes below a given dB "
+"threshold for a given time. This saves CPU as effects assigned to that bus "
+"will no longer do any processing."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:245
+msgid ""
+"Default [AudioBusLayout] resource file to use in the project, unless "
+"overridden by the scene."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:248
+msgid ""
+"Specifies the audio driver to use. This setting is platform-dependent as "
+"each platform supports different audio drivers. If left empty, the default "
+"audio driver will be used."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:251
+msgid ""
+"If [code]true[/code], microphone input will be allowed. This requires "
+"appropriate permissions to be set when exporting to Android or iOS."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:254
+msgid ""
+"Mixing rate used for audio. In general, it's better to not touch this and "
+"leave it to the host operating system."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:257
+msgid ""
+"Output latency in milliseconds for audio. Lower values will result in lower "
+"audio latency at the cost of increased CPU usage. Low values may result in "
+"audible cracking on slower hardware."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:260
+msgid ""
+"Safer override for [member audio/output_latency] in the Web platform, to "
+"avoid audio issues especially on mobile devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:263
+msgid ""
+"Setting to hardcode audio delay when playing video. Best to leave this "
+"untouched unless you know what you are doing."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:266
+msgid ""
+"The default compression level for gzip. Affects compressed scenes and "
+"resources. Higher levels result in smaller files at the cost of compression "
+"speed. Decompression speed is mostly unaffected by the compression level. "
+"[code]-1[/code] uses the default gzip compression level, which is identical "
+"to [code]6[/code] but could change in the future due to underlying zlib "
+"updates."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:269
+msgid ""
+"The default compression level for Zlib. Affects compressed scenes and "
+"resources. Higher levels result in smaller files at the cost of compression "
+"speed. Decompression speed is mostly unaffected by the compression level. "
+"[code]-1[/code] uses the default gzip compression level, which is identical "
+"to [code]6[/code] but could change in the future due to underlying zlib "
+"updates."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:272
+msgid ""
+"The default compression level for Zstandard. Affects compressed scenes and "
+"resources. Higher levels result in smaller files at the cost of compression "
+"speed. Decompression speed is mostly unaffected by the compression level."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:275
+msgid ""
+"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
+"distance matching[/url] in Zstandard."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:278
+msgid ""
+"Largest size limit (in power of 2) allowed when compressing using long-"
+"distance matching with Zstandard. Higher values can result in better "
+"compression, but will require more memory when compressing and decompressing."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:281
+msgid ""
+"If [code]true[/code], displays getters and setters in autocompletion results "
+"in the script editor. This setting is meant to be used when porting old "
+"projects (Godot 2), as using member variables is the preferred style from "
+"Godot 3 onwards."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:288
+msgid ""
+"If [code]true[/code], enables warnings when a constant is used as a function."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:291
+msgid ""
+"If [code]true[/code], enables warnings when deprecated keywords are used."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:294
+msgid ""
+"If [code]true[/code], enables specific GDScript warnings (see [code]debug/"
+"gdscript/warnings/*[/code] settings). If [code]false[/code], disables all "
+"GDScript warnings."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:297
+msgid ""
+"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
+"not generate warnings."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:300
+msgid ""
+"If [code]true[/code], enables warnings when using a function as if it was a "
+"property."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:303
+msgid ""
+"If [code]true[/code], enables warnings when a ternary operator may emit "
+"values with incompatible types."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:306
+msgid ""
+"If [code]true[/code], enables warnings when dividing an integer by another "
+"integer (the decimal part will be discarded)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:309
+msgid ""
+"If [code]true[/code], enables warnings when passing a floating-point value "
+"to a function that expects an integer (it will be converted and lose "
+"precision)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:312
+msgid ""
+"If [code]true[/code], enables warnings when using a property as if it was a "
+"function."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:317
+msgid ""
+"If [code]true[/code], enables warnings when calling a function without using "
+"its return value (by assigning it to a variable or using it as a function "
+"argument). Such return values are sometimes used to denote possible errors "
+"using the [enum Error] enum."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:320
+msgid ""
+"If [code]true[/code], enables warnings when defining a local or subclass "
+"member variable that would shadow a variable at an upper level (such as a "
+"member variable)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:325
+msgid ""
+"If [code]true[/code], enables warnings when calling an expression that has "
+"no effect on the surrounding code, such as writing [code]2 + 2[/code] as a "
+"statement."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:328
+msgid ""
+"If [code]true[/code], enables warnings when calling a ternary expression "
+"that has no effect on the surrounding code, such as writing [code]42 if "
+"active else 0[/code] as a statement."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:331
+msgid ""
+"If [code]true[/code], all warnings will be reported as if they were errors."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:334
+msgid ""
+"If [code]true[/code], enables warnings when using a variable that wasn't "
+"previously assigned."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:337
+msgid ""
+"If [code]true[/code], enables warnings when assigning a variable using an "
+"assignment operator like [code]+=[/code] if the variable wasn't previously "
+"assigned."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:340
+msgid ""
+"If [code]true[/code], enables warnings when unreachable code is detected "
+"(such as after a [code]return[/code] statement that will always be executed)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:345
+msgid ""
+"If [code]true[/code], enables warnings when using an expression whose type "
+"may not be compatible with the function parameter expected."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:348
+msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:351
+msgid ""
+"If [code]true[/code], enables warnings when calling a method whose presence "
+"is not guaranteed at compile-time in the class."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:354
+msgid ""
+"If [code]true[/code], enables warnings when accessing a property whose "
+"presence is not guaranteed at compile-time in the class."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:363
+msgid "If [code]true[/code], enables warnings when a signal is unused."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:366
+msgid "If [code]true[/code], enables warnings when a local variable is unused."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:369
+msgid ""
+"If [code]true[/code], enables warnings when assigning the result of a "
+"function that returns [code]void[/code] to a variable."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:372
+msgid "Message to be displayed before the backtrace when the engine crashes."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:375
+msgid ""
+"Maximum number of frames per second allowed. The actual number of frames per "
+"second may still be below this value if the game is lagging.\n"
+"If [member display/window/vsync/use_vsync] is enabled, it takes precedence "
+"and the forced FPS number cannot exceed the monitor's refresh rate.\n"
+"This setting is therefore mostly relevant for lowering the maximum FPS below "
+"VSync, e.g. to perform non real-time rendering of static frames, or test the "
+"project under lag conditions."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:380
+msgid "Maximum call stack allowed for debugging GDScript."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:383
+msgid "Maximum amount of functions per frame allowed when profiling."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:386
+msgid "Print frames per second to standard output every second."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:389
+msgid ""
+"Print more information to standard output when running. It displays "
+"information such as memory leaks, which scenes and resources are being "
+"loaded, etc."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:392
+msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:395
+msgid ""
+"Color of the contact points between collision shapes, visible when \"Visible "
+"Collision Shapes\" is enabled in the Debug menu."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:398
+msgid ""
+"Maximum number of contact points between collision shapes to display when "
+"\"Visible Collision Shapes\" is enabled in the Debug menu."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:401
+msgid ""
+"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
+"enabled in the Debug menu."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:404
+msgid ""
+"Color of the disabled navigation geometry, visible when \"Visible Navigation"
+"\" is enabled in the Debug menu."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:407
+msgid ""
+"Color of the navigation geometry, visible when \"Visible Navigation\" is "
+"enabled in the Debug menu."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:410
+msgid "Custom image for the mouse cursor (limited to 256×256)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:413
+msgid "Hotspot for the custom mouse cursor image."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:416
+msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:419
+msgid ""
+"If [code]true[/code], allows HiDPI display on Windows and macOS. This "
+"setting has no effect on desktop Linux, as DPI-awareness fallbacks are not "
+"supported there."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:422
+msgid ""
+"If [code]true[/code], keeps the screen on (even in case of inactivity), so "
+"the screensaver does not take over. Works on desktop and mobile platforms."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:425
+msgid "Default orientation on mobile devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:428
+msgid ""
+"If [code]true[/code], the home indicator is hidden automatically. This only "
+"affects iOS devices without a physical home button."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:431
+msgid "Force the window to be always on top."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:434
+msgid "Force the window to be borderless."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:437
+msgid "Sets the window to full screen when it starts."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:440
+msgid ""
+"Sets the game's main viewport height. On desktop platforms, this is the "
+"default window size. Stretch mode settings also use this as a reference when "
+"enabled."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:443
+msgid "Allows the window to be resizable by default."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:446
+msgid ""
+"If greater than zero, overrides the window height when running the game. "
+"Useful for testing stretch modes."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:449
+msgid ""
+"If greater than zero, overrides the window width when running the game. "
+"Useful for testing stretch modes."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:452
+msgid ""
+"Sets the game's main viewport width. On desktop platforms, this is the "
+"default window size. Stretch mode settings also use this as a reference when "
+"enabled."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:455
+msgid ""
+"Specifies the tablet driver to use. If left empty, the default driver will "
+"be used."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:458
+msgid ""
+"If [code]true[/code], enables vertical synchronization. This eliminates "
+"tearing that may appear in moving scenes, at the cost of higher input "
+"latency and stuttering at lower framerates. If [code]false[/code], vertical "
+"synchronization will be disabled, however, many platforms will enforce it "
+"regardless (such as mobile platforms and HTML5)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:461
+msgid ""
+"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
+"enables vertical synchronization via the operating system's window "
+"compositor when in windowed mode and the compositor is enabled. This will "
+"prevent stutter in certain situations. (Windows only.)\n"
+"[b]Note:[/b] This option is experimental and meant to alleviate stutter "
+"experienced by some users. However, some users have experienced a Vsync "
+"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:465
+msgid ""
+"Search path for project-specific script templates. Script templates will be "
+"search both in the editor-specific path and in this project-specific path."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:468
+msgid ""
+"Text-based file extensions to include in the script editor's \"Find in Files"
+"\" feature. You can add e.g. [code]tscn[/code] if you wish to also parse "
+"your scene files, especially if you use built-in scripts which are "
+"serialized in the scene files."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:471
+msgid ""
+"Default value for [member ScrollContainer.scroll_deadzone], which will be "
+"used for all [ScrollContainer]s unless overridden."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:474
+msgid ""
+"If [code]true[/code], swaps Cancel and OK buttons in dialogs on Windows and "
+"UWP to follow interface conventions."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:479
+msgid ""
+"Path to a custom [Theme] resource file to use for the project ([code]theme[/"
+"code] or generic [code]tres[/code]/[code]res[/code] extension)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:482
+msgid ""
+"Path to a custom [Font] resource to use as default for all GUI elements of "
+"the project."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:485
+msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:488
+msgid ""
+"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
+"(in milliseconds)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:491
+msgid "Timer for detecting idle in [TextEdit] (in seconds)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:494
+msgid "Default delay for tooltips (in seconds)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:497
+msgid ""
+"Default [InputEventAction] to confirm a focused button, menu or list item, "
+"or validate input.\n"
+"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
+"necessary for the internal logic of several [Control]s. The events assigned "
+"to the action can however be modified."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:501
+msgid ""
+"Default [InputEventAction] to discard a modal or pending input.\n"
+"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
+"necessary for the internal logic of several [Control]s. The events assigned "
+"to the action can however be modified."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:505
+msgid ""
+"Default [InputEventAction] to move down in the UI.\n"
+"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
+"necessary for the internal logic of several [Control]s. The events assigned "
+"to the action can however be modified."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:509
+msgid ""
+"Default [InputEventAction] to go to the end position of a [Control] (e.g. "
+"last item in an [ItemList] or a [Tree]), matching the behavior of [constant "
+"KEY_END] on typical desktop UI systems.\n"
+"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
+"necessary for the internal logic of several [Control]s. The events assigned "
+"to the action can however be modified."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:513
+msgid ""
+"Default [InputEventAction] to focus the next [Control] in the scene. The "
+"focus behavior can be configured via [member Control.focus_next].\n"
+"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
+"necessary for the internal logic of several [Control]s. The events assigned "
+"to the action can however be modified."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:517
+msgid ""
+"Default [InputEventAction] to focus the previous [Control] in the scene. The "
+"focus behavior can be configured via [member Control.focus_previous].\n"
+"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
+"necessary for the internal logic of several [Control]s. The events assigned "
+"to the action can however be modified."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:521
+msgid ""
+"Default [InputEventAction] to go to the start position of a [Control] (e.g. "
+"first item in an [ItemList] or a [Tree]), matching the behavior of [constant "
+"KEY_HOME] on typical desktop UI systems.\n"
+"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
+"necessary for the internal logic of several [Control]s. The events assigned "
+"to the action can however be modified."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:525
+msgid ""
+"Default [InputEventAction] to move left in the UI.\n"
+"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
+"necessary for the internal logic of several [Control]s. The events assigned "
+"to the action can however be modified."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:529
+msgid ""
+"Default [InputEventAction] to go down a page in a [Control] (e.g. in an "
+"[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEDOWN] on "
+"typical desktop UI systems.\n"
+"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
+"necessary for the internal logic of several [Control]s. The events assigned "
+"to the action can however be modified."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:533
+msgid ""
+"Default [InputEventAction] to go up a page in a [Control] (e.g. in an "
+"[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEUP] on "
+"typical desktop UI systems.\n"
+"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
+"necessary for the internal logic of several [Control]s. The events assigned "
+"to the action can however be modified."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:537
+msgid ""
+"Default [InputEventAction] to move right in the UI.\n"
+"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
+"necessary for the internal logic of several [Control]s. The events assigned "
+"to the action can however be modified."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:541
+msgid ""
+"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
+"[ItemList] or a [Tree]).\n"
+"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
+"necessary for the internal logic of several [Control]s. The events assigned "
+"to the action can however be modified."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:545
+msgid ""
+"Default [InputEventAction] to move up in the UI.\n"
+"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
+"necessary for the internal logic of several [Control]s. The events assigned "
+"to the action can however be modified."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:549
+msgid ""
+"If [code]true[/code], sends mouse input events when tapping or swiping on "
+"the touchscreen."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:552
+msgid ""
+"If [code]true[/code], sends touch input events when clicking or dragging the "
+"mouse."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:555
+msgid "Optional name for the 2D physics layer 1."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:558
+msgid "Optional name for the 2D physics layer 10."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:561
+msgid "Optional name for the 2D physics layer 11."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:564
+msgid "Optional name for the 2D physics layer 12."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:567
+msgid "Optional name for the 2D physics layer 13."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:570
+msgid "Optional name for the 2D physics layer 14."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:573
+msgid "Optional name for the 2D physics layer 15."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:576
+msgid "Optional name for the 2D physics layer 16."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:579
+msgid "Optional name for the 2D physics layer 17."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:582
+msgid "Optional name for the 2D physics layer 18."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:585
+msgid "Optional name for the 2D physics layer 19."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:588
+msgid "Optional name for the 2D physics layer 2."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:591
+msgid "Optional name for the 2D physics layer 20."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:594
+msgid "Optional name for the 2D physics layer 3."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:597
+msgid "Optional name for the 2D physics layer 4."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:600
+msgid "Optional name for the 2D physics layer 5."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:603
+msgid "Optional name for the 2D physics layer 6."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:606
+msgid "Optional name for the 2D physics layer 7."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:609
+msgid "Optional name for the 2D physics layer 8."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:612
+msgid "Optional name for the 2D physics layer 9."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:615
+msgid "Optional name for the 2D render layer 1."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:618
+msgid "Optional name for the 2D render layer 10."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:621
+msgid "Optional name for the 2D render layer 11."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:624
+msgid "Optional name for the 2D render layer 12."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:627
+msgid "Optional name for the 2D render layer 13."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:630
+msgid "Optional name for the 2D render layer 14."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:633
+msgid "Optional name for the 2D render layer 15."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:636
+msgid "Optional name for the 2D render layer 16."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:639
+msgid "Optional name for the 2D render layer 17."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:642
+msgid "Optional name for the 2D render layer 18."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:645
+msgid "Optional name for the 2D render layer 19."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:648
+msgid "Optional name for the 2D render layer 2."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:651
+msgid "Optional name for the 2D render layer 20."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:654
+msgid "Optional name for the 2D render layer 3."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:657
+msgid "Optional name for the 2D render layer 4."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:660
+msgid "Optional name for the 2D render layer 5."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:663
+msgid "Optional name for the 2D render layer 6."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:666
+msgid "Optional name for the 2D render layer 7."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:669
+msgid "Optional name for the 2D render layer 8."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:672
+msgid "Optional name for the 2D render layer 9."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:675
+msgid "Optional name for the 3D physics layer 1."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:678
+msgid "Optional name for the 3D physics layer 10."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:681
+msgid "Optional name for the 3D physics layer 11."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:684
+msgid "Optional name for the 3D physics layer 12."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:687
+msgid "Optional name for the 3D physics layer 13."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:690
+msgid "Optional name for the 3D physics layer 14."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:693
+msgid "Optional name for the 3D physics layer 15."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:696
+msgid "Optional name for the 3D physics layer 16."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:699
+msgid "Optional name for the 3D physics layer 17."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:702
+msgid "Optional name for the 3D physics layer 18."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:705
+msgid "Optional name for the 3D physics layer 19."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:708
+msgid "Optional name for the 3D physics layer 2."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:711
+msgid "Optional name for the 3D physics layer 20."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:714
+msgid "Optional name for the 3D physics layer 3."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:717
+msgid "Optional name for the 3D physics layer 4."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:720
+msgid "Optional name for the 3D physics layer 5."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:723
+msgid "Optional name for the 3D physics layer 6."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:726
+msgid "Optional name for the 3D physics layer 7."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:729
+msgid "Optional name for the 3D physics layer 8."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:732
+msgid "Optional name for the 3D physics layer 9."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:735
+msgid "Optional name for the 3D render layer 1."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:738
+msgid "Optional name for the 3D render layer 10."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:741
+msgid "Optional name for the 3D render layer 11."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:744
+msgid "Optional name for the 3D render layer 12."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:747
+msgid "Optional name for the 3D render layer 13."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:750
+msgid "Optional name for the 3D render layer 14"
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:753
+msgid "Optional name for the 3D render layer 15."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:756
+msgid "Optional name for the 3D render layer 16."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:759
+msgid "Optional name for the 3D render layer 17."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:762
+msgid "Optional name for the 3D render layer 18."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:765
+msgid "Optional name for the 3D render layer 19."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:768
+msgid "Optional name for the 3D render layer 2."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:771
+msgid "Optional name for the 3D render layer 20."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:774
+msgid "Optional name for the 3D render layer 3."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:777
+msgid "Optional name for the 3D render layer 4."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:780
+msgid "Optional name for the 3D render layer 5."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:783
+msgid "Optional name for the 3D render layer 6."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:786
+msgid "Optional name for the 3D render layer 7."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:789
+msgid "Optional name for the 3D render layer 8."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:792
+msgid "Optional name for the 3D render layer 9."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:795
+msgid ""
+"The locale to fall back to if a translation isn't available in a given "
+"language. If left empty, [code]en[/code] (English) will be used."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:798
+msgid ""
+"If non-empty, this locale will be used when running the project from the "
+"editor."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:801
+msgid "If [code]true[/code], logs all output to files."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:806
+msgid ""
+"Path to logs within the project. Using an [code]user://[/code] path is "
+"recommended."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:809
+msgid "Specifies the maximum amount of log files allowed (used for rotation)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:812
+msgid ""
+"Godot uses a message queue to defer some function calls. If you run out of "
+"space on it (you will see an error), you can increase the size here."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:815
+msgid ""
+"This is used by servers when used in multi-threading mode (servers and "
+"visual). RIDs are preallocated to avoid stalling the server requesting them "
+"on threads. If servers get stalled too often when loading resources in a "
+"thread, increase this number."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:832
+msgid ""
+"Maximum amount of characters allowed to send as output from the debugger. "
+"Over this value, content is dropped. This helps not to stall the debugger "
+"connection."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:835
+msgid ""
+"Maximum number of errors allowed to be sent from the debugger. Over this "
+"value, content is dropped. This helps not to stall the debugger connection."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:838
+msgid ""
+"Maximum amount of messages in the debugger queue. Over this value, content "
+"is dropped. This helps to limit the debugger memory usage."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:841
+msgid ""
+"Maximum number of warnings allowed to be sent from the debugger. Over this "
+"value, content is dropped. This helps not to stall the debugger connection."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:844
+msgid ""
+"Default size of packet peer stream for deserializing Godot data. Over this "
+"size, data is dropped."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:847
+msgid "Timeout (in seconds) for connection attempts using TCP."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:850
+msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:853
+msgid ""
+"Amount of read ahead used by remote filesystem. Higher values decrease the "
+"effects of latency at the cost of higher bandwidth usage."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:856
+msgid "Page size used by remote filesystem (in bytes)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:859
+msgid ""
+"The CA certificates bundle to use for SSL connections. If this is set to a "
+"non-empty value, this will [i]override[/i] Godot's default [url=https://"
+"github.com/godotengine/godot/blob/master/thirdparty/certs/ca-certificates."
+"crt]Mozilla certificate bundle[/url]. If left empty, the default certificate "
+"bundle will be used.\n"
+"If in doubt, leave this setting empty."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:863
+msgid ""
+"When creating node names automatically, set the type of casing in this "
+"project. This is mostly an editor setting."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:866
+msgid ""
+"What to use to separate node name from number. This is mostly an editor "
+"setting."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:869
+msgid "Size of the hash table used for the broad-phase 2D hash grid algorithm."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:872
+msgid "Cell size used for the broad-phase 2D hash grid algorithm."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:875
+msgid "The default angular damp in 2D."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:878
+msgid ""
+"The default gravity strength in 2D.\n"
+"[b]Note:[/b] This property is only read when the project starts. To change "
+"the default gravity at runtime, use the following code sample:\n"
+"[codeblock]\n"
+"# Set the default gravity strength to 98.\n"
+"PhysicsServer2D.area_set_param(get_viewport().find_world_2d().get_space(), "
+"PhysicsServer2D.AREA_PARAM_GRAVITY, 98)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:886
+msgid ""
+"The default gravity direction in 2D.\n"
+"[b]Note:[/b] This property is only read when the project starts. To change "
+"the default gravity vector at runtime, use the following code sample:\n"
+"[codeblock]\n"
+"# Set the default gravity direction to `Vector2(0, 1)`.\n"
+"PhysicsServer2D.area_set_param(get_viewport().find_world_2d().get_space(), "
+"PhysicsServer2D.AREA_PARAM_GRAVITY_VECTOR, Vector2(0, 1))\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:894
+msgid "The default linear damp in 2D."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:897
+msgid ""
+"Threshold defining the surface size that constitutes a large object with "
+"regard to cells in the broad-phase 2D hash grid algorithm."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:900
+msgid ""
+"Sets which physics engine to use for 2D physics.\n"
+"\"DEFAULT\" and \"GodotPhysics2D\" are the same, as there is currently no "
+"alternative 2D physics server implemented."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:904
+msgid ""
+"Threshold angular velocity under which a 2D physics body will be considered "
+"inactive. See [constant PhysicsServer2D."
+"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:907
+msgid ""
+"Threshold linear velocity under which a 2D physics body will be considered "
+"inactive. See [constant PhysicsServer2D."
+"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:910
+msgid ""
+"Sets whether physics is run on the main thread or a separate one. Running "
+"the server on a thread increases performance, but restricts API access to "
+"only physics process.\n"
+"[b]Warning:[/b] As of Godot 3.2, there are mixed reports about the use of a "
+"Multi-Threaded thread model for physics. Be sure to assess whether it does "
+"give you extra performance and no regressions when using it."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:914
+msgid ""
+"Time (in seconds) of inactivity before which a 2D physics body will put to "
+"sleep. See [constant PhysicsServer2D.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:917
+msgid ""
+"Sets whether the 3D physics world will be created with support for "
+"[SoftBody3D] physics. Only applies to the Bullet physics engine."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:920
+msgid "The default angular damp in 3D."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:923
+msgid ""
+"The default gravity strength in 3D.\n"
+"[b]Note:[/b] This property is only read when the project starts. To change "
+"the default gravity at runtime, use the following code sample:\n"
+"[codeblock]\n"
+"# Set the default gravity strength to 9.8.\n"
+"PhysicsServer3D.area_set_param(get_viewport().find_world().get_space(), "
+"PhysicsServer3D.AREA_PARAM_GRAVITY, 9.8)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:931
+msgid ""
+"The default gravity direction in 3D.\n"
+"[b]Note:[/b] This property is only read when the project starts. To change "
+"the default gravity vector at runtime, use the following code sample:\n"
+"[codeblock]\n"
+"# Set the default gravity direction to `Vector3(0, -1, 0)`.\n"
+"PhysicsServer3D.area_set_param(get_viewport().find_world().get_space(), "
+"PhysicsServer3D.AREA_PARAM_GRAVITY_VECTOR, Vector3(0, -1, 0))\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:939
+msgid "The default linear damp in 3D."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:942
+msgid ""
+"Sets which physics engine to use for 3D physics.\n"
+"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
+"physics engine. The \"GodotPhysics3D\" engine is still supported as an "
+"alternative."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:946
+msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:949
+msgid ""
+"The number of fixed iterations per second. This controls how often physics "
+"simulation and [method Node._physics_process] methods are run.\n"
+"[b]Note:[/b] This property is only read when the project starts. To change "
+"the physics FPS at runtime, set [member Engine.iterations_per_second] "
+"instead."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:953
+msgid ""
+"Fix to improve physics jitter, specially on monitors where refresh rate is "
+"different than the physics FPS.\n"
+"[b]Note:[/b] This property is only read when the project starts. To change "
+"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:957
+msgid ""
+"Default background clear color. Overridable per [Viewport] using its "
+"[Environment]. See [member Environment.background_mode] and [member "
+"Environment.background_color] in particular. To change this default color "
+"programmatically, use [method RenderingServer.set_default_clear_color]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:960
+msgid ""
+"[Environment] that will be used as a fallback environment in case a scene "
+"does not specify its own environment. The default environment is loaded in "
+"at scene load time regardless of whether you have set an environment or not. "
+"If you do not rely on the fallback environment, it is best to delete "
+"[code]default_env.tres[/code], or to specify a different default environment "
+"here."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:989
+msgid ""
+"Max amount of elements renderable in a frame. If more than this are visible "
+"per frame, they will be dropped. Keep in mind elements refer to mesh "
+"surfaces and not meshes themselves."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:994
+msgid ""
+"Some NVIDIA GPU drivers have a bug which produces flickering issues for the "
+"[code]draw_rect[/code] method, especially as used in [TileMap]. Refer to "
+"[url=https://github.com/godotengine/godot/issues/9913]GitHub issue 9913[/"
+"url] for details.\n"
+"If [code]true[/code], this option enables a \"safe\" code path for such "
+"NVIDIA GPUs at the cost of performance. This option only impacts the GLES2 "
+"rendering backend, and only desktop platforms. It is not necessary when "
+"using the Vulkan backend."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:998
+msgid ""
+"If [code]true[/code], forces snapping of polygons to pixels in 2D rendering. "
+"May help in some pixel art styles."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1001
+msgid ""
+"Sets the quality of the depth of field effect. Higher quality takes more "
+"samples, which is slower but looks smoother."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1004
+msgid ""
+"Sets the depth of field shape. Can be Box, Hexagon, or Circle. Box is the "
+"fastest. Circle is the most realistic, but also the most expensive to "
+"compute."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1007
+msgid ""
+"If [code]true[/code], jitters DOF samples to make effect slightly blurrier "
+"and hide lines created from low sample rates. This can result in a slightly "
+"grainy appearance when used with a low number of samples."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1010
+msgid ""
+"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
+"architecture already does this."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1013
+msgid ""
+"If [code]true[/code], performs a previous depth pass before rendering "
+"materials. This increases performance in scenes with high overdraw, when "
+"complex materials and lighting are used."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1016
+msgid ""
+"The directional shadow's size in pixels. Higher values will result in "
+"sharper shadows, at the cost of performance. The value will be rounded up to "
+"the nearest power of 2."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1019
+msgid ""
+"Lower-end override for [member rendering/quality/directional_shadow/size] on "
+"mobile devices, due to performance concerns or driver support."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1022
+msgid ""
+"Quality setting for shadows cast by [DirectionalLight3D]s. Higher quality "
+"settings use more samples when reading from shadow maps and are thus slower. "
+"Low quality settings may result in shadows looking grainy."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1025
+msgid ""
+"Lower-end override for [member rendering/quality/directional_shadow/"
+"soft_shadow_quality] on mobile devices, due to performance concerns or "
+"driver support."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1028
+msgid ""
+"The video driver to use (\"GLES2\" or \"Vulkan\").\n"
+"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
+"rendering-driver[/code] command line argument.\n"
+"[b]FIXME:[/b] No longer valid after DisplayServer split:\n"
+"In such cases, this property is not updated, so use [code]OS."
+"get_current_video_driver[/code] to query it at run-time."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1034
+msgid ""
+"If [code]true[/code], take additional samples when rendering objects "
+"affected by a [GIProbe] to reduce artifacts from only sampling in one "
+"direction."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1037
+msgid ""
+"Sets the number of cone samples taken when rendering objects affected by "
+"[GIProbe]s."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1040
+msgid ""
+"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."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1043
+msgid ""
+"Lower-end override for [member rendering/quality/glow/upscale_mode] on "
+"mobile devices, due to performance concerns or driver support."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1046
+msgid ""
+"Strategy used for framebuffer allocation. The simpler it is, the less "
+"resources it uses (but the less features it supports). If set to \"2D "
+"Without Sampling\" or \"3D Without Effects\", sample buffers will not be "
+"allocated. This means [code]SCREEN_TEXTURE[/code] and [code]DEPTH_TEXTURE[/"
+"code] will not be available in shaders and post-processing effects will not "
+"be available in the [Environment]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1049
+msgid ""
+"Lower-end override for [member rendering/quality/intended_usage/"
+"framebuffer_allocation] on mobile devices, due to performance concerns or "
+"driver support."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1052
+msgid ""
+"Number of cubemaps to store in the reflection atlas. The number of "
+"[ReflectionProbe]s in a scene will be limited by this amount. A higher "
+"number requires more VRAM."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1055
+msgid ""
+"Size of cubemap faces for [ReflectionProbe]s. A higher number requires more "
+"VRAM and may make reflection probe updating slower."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1058
+msgid ""
+"Lower-end override for [member rendering/quality/reflection_atlas/"
+"reflection_size] on mobile devices, due to performance concerns or driver "
+"support."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1061
+msgid ""
+"Use a higher quality variant of the fast filtering algorithm. Significantly "
+"slower than using default quality, but results in smoother reflections. "
+"Should only be used when the scene is especially detailed."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1064
+msgid ""
+"Sets the number of samples to take when using importance sampling for [Sky]s "
+"and [ReflectionProbe]s. A higher value will result in smoother, higher "
+"quality reflections, but increases time to calculate radiance maps. In "
+"general, fewer samples are needed for simpler, low dynamic range "
+"environments while more samples are needed for HDR environments and "
+"environments with a high level of detail."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1067
+msgid ""
+"Lower-end override for [member rendering/quality/reflections/ggx_samples] on "
+"mobile devices, due to performance concerns or driver support."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1070
+msgid ""
+"Limits the number of layers to use in radiance maps when using importance "
+"sampling. A lower number will be slightly faster and take up less VRAM."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1073
+msgid ""
+"If [code]true[/code], 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 [member rendering/quality/reflections/roughness_layers] times more "
+"memory."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1076
+msgid ""
+"Lower-end override for [member rendering/quality/reflections/"
+"texture_array_reflections] on mobile devices, due to performance concerns or "
+"driver support."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1079
+msgid ""
+"Sets the number of MSAA samples to use (as a power of two). MSAA is used to "
+"reduce aliasing around the edges of polygons. A higher MSAA value results in "
+"smoother edges but can be significantly slower on some hardware.\n"
+"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1083
+msgid ""
+"Sets the screen-space antialiasing mode for the default screen [Viewport]. "
+"Screen-space antialiasing works by selectively blurring edges in a post-"
+"process shader. It differs from MSAA which takes multiple coverage samples "
+"while rendering objects. Screen-space AA methods are typically faster than "
+"MSAA and will smooth out specular aliasing, but tend to make scenes appear "
+"blurry.\n"
+"Another way to combat specular aliasing is to enable [member rendering/"
+"quality/screen_filters/screen_space_roughness_limiter_enabled]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1093
+msgid ""
+"Sets the quality for rough screen-space reflections. Turning off will make "
+"all screen space reflections sharp, while higher values make rough "
+"reflections look better."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1096
+msgid ""
+"If [code]true[/code], uses faster but lower-quality Blinn model to generate "
+"blurred reflections instead of the GGX model."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1099
+msgid ""
+"Lower-end override for [member rendering/quality/shading/"
+"force_blinn_over_ggx] on mobile devices, due to performance concerns or "
+"driver support."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1102
+msgid ""
+"If [code]true[/code], uses faster but lower-quality Lambert material "
+"lighting model instead of Burley."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1105
+msgid ""
+"Lower-end override for [member rendering/quality/shading/"
+"force_lambert_over_burley] on mobile devices, due to performance concerns or "
+"driver support."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1108
+msgid ""
+"If [code]true[/code], forces vertex shading for all rendering. This can "
+"increase performance a lot, but also reduces quality immensely. Can be used "
+"to optimize performance on low-end mobile devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1111
+msgid ""
+"Lower-end override for [member rendering/quality/shading/"
+"force_vertex_shading] on mobile devices, due to performance concerns or "
+"driver support."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1114 doc/classes/ProjectSettings.xml:1117
+#: doc/classes/ProjectSettings.xml:1120 doc/classes/ProjectSettings.xml:1123
+msgid ""
+"Subdivision quadrant size for shadow mapping. See shadow mapping "
+"documentation."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1126
+msgid ""
+"Size for shadow atlas (used for OmniLights and SpotLights). See "
+"documentation."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1129
+msgid ""
+"Lower-end override for [member rendering/quality/shadow_atlas/size] on "
+"mobile devices, due to performance concerns or driver support."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1132
+msgid ""
+"Quality setting for shadows cast by [OmniLight3D]s and [SpotLight3D]s. "
+"Higher quality settings use more samples when reading from shadow maps and "
+"are thus slower. Low quality settings may result in shadows looking grainy."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1135
+msgid ""
+"Lower-end override for [member rendering/quality/shadows/"
+"soft_shadow_quality] on mobile devices, due to performance concerns or "
+"driver support."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1138
+msgid ""
+"If [code]true[/code], screen-space ambient occlusion will be rendered at "
+"half size and then upscaled before being added to the scene. This is "
+"significantly faster but may miss small details."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1141
+msgid ""
+"Sets the quality of the screen-space ambient occlusion effect. Higher values "
+"take more samples and so will result in better quality, at the cost of "
+"performance."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1144
+msgid ""
+"Scales the depth over which the subsurface scattering effect is applied. A "
+"high value may allow light to scatter into a part of the mesh or another "
+"mesh that is close in screen space but far in depth."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1147
+msgid ""
+"Sets the quality of the subsurface scattering effect. Higher values are "
+"slower but look nicer."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1150
+msgid ""
+"Scales the distance over which samples are taken for subsurface scattering "
+"effect. Changing this does not impact performance, but higher values will "
+"result in significant artifacts as the samples will become obviously spread "
+"out. A lower value results in a smaller spread of scattered light."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1153
+msgid ""
+"Sets the maximum number of samples to take when using anisotropic filtering "
+"on textures (as a power of two). A higher sample count will result in "
+"sharper textures at oblique angles, but is more expensive to compute. A "
+"value of [code]0[/code] forcibly disables anisotropic filtering, even on "
+"materials where it is enabled."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1156
+msgid ""
+"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
+"mipmaps (also called \"bilinear filtering\"), which will result in visible "
+"seams appearing between mipmap stages. This may increase performance in "
+"mobile as less memory bandwidth is used. If [code]false[/code], linear "
+"mipmap filtering (also called \"trilinear filtering\") is used."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1163
+msgid ""
+"Thread model for rendering. Rendering on a thread can vastly improve "
+"performance, but synchronizing to the main thread can cause a bit more "
+"jitter."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1166
+msgid ""
+"If [code]true[/code], the texture importer will import VRAM-compressed "
+"textures using the BPTC algorithm. This texture compression algorithm is "
+"only supported on desktop platforms, and only when using the Vulkan renderer."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1169
+msgid ""
+"If [code]true[/code], the texture importer will import VRAM-compressed "
+"textures using the Ericsson Texture Compression algorithm. This algorithm "
+"doesn't support alpha channels in textures."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1172
+msgid ""
+"If [code]true[/code], the texture importer will import VRAM-compressed "
+"textures using the Ericsson Texture Compression 2 algorithm. This texture "
+"compression algorithm is only supported when using the Vulkan renderer."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1175
+msgid ""
+"If [code]true[/code], the texture importer will import VRAM-compressed "
+"textures using the PowerVR Texture Compression algorithm. This texture "
+"compression algorithm is only supported on iOS."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1178
+msgid ""
+"If [code]true[/code], the texture importer will import VRAM-compressed "
+"textures using the S3 Texture Compression algorithm. This algorithm is only "
+"supported on desktop platforms and consoles."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1189
+msgid "Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses."
+msgstr ""
+
+#: doc/classes/ProximityGroup3D.xml:4 doc/classes/ProximityGroup3D.xml:7
+msgid "General-purpose proximity detection node."
+msgstr ""
+
+#: doc/classes/QuadMesh.xml:4
+msgid "Class representing a square mesh."
+msgstr ""
+
+#: doc/classes/QuadMesh.xml:7
+msgid ""
+"Class representing a square [PrimitiveMesh]. This flat mesh does not have a "
+"thickness. By default, this mesh is aligned on the X and Y axes; this "
+"default rotation is more suited for use with billboarded materials. Unlike "
+"[PlaneMesh], this mesh doesn't provide subdivision options."
+msgstr ""
+
+#: doc/classes/QuadMesh.xml:15
+msgid "Size on the X and Y axes."
+msgstr ""
+
+#: doc/classes/Quat.xml:4
+msgid "Quaternion."
+msgstr ""
+
+#: doc/classes/Quat.xml:7
+msgid ""
+"A unit quaternion used for representing 3D rotations. Quaternions need to be "
+"normalized to be used for rotation.\n"
+"It is similar to Basis, which implements matrix representation of rotations, "
+"and can be parametrized using both an axis-angle pair or Euler angles. Basis "
+"stores rotation, scale, and shearing, while Quat only stores rotation.\n"
+"Due to its compactness and the way it is stored in memory, certain "
+"operations (obtaining axis-angle and performing SLERP, in particular) are "
+"more efficient and robust against floating-point errors."
+msgstr ""
+
+#: doc/classes/Quat.xml:12
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/3d/using_transforms."
+"html#interpolating-with-quaternions"
+msgstr ""
+
+#: doc/classes/Quat.xml:21
+msgid "Constructs a quaternion from the given [Basis]."
+msgstr ""
+
+#: doc/classes/Quat.xml:30
+msgid ""
+"Constructs a quaternion that will perform a rotation specified by Euler "
+"angles (in the YXZ convention: when decomposing, first Z, then X, and Y "
+"last), given in the vector format as (X angle, Y angle, Z angle)."
+msgstr ""
+
+#: doc/classes/Quat.xml:41
+msgid ""
+"Constructs a quaternion that will rotate around the given axis by the "
+"specified angle. The axis must be a normalized vector."
+msgstr ""
+
+#: doc/classes/Quat.xml:56
+msgid "Constructs a quaternion defined by the given values."
+msgstr ""
+
+#: doc/classes/Quat.xml:71
+msgid ""
+"Performs a cubic spherical interpolation between quaternions [code]preA[/"
+"code], this vector, [code]b[/code], and [code]postB[/code], by the given "
+"amount [code]t[/code]."
+msgstr ""
+
+#: doc/classes/Quat.xml:80
+msgid "Returns the dot product of two quaternions."
+msgstr ""
+
+#: doc/classes/Quat.xml:87
+msgid ""
+"Returns Euler angles (in the YXZ convention: when decomposing, first Z, then "
+"X, and Y last) corresponding to the rotation represented by the unit "
+"quaternion. Returned vector contains the rotation angles in the format (X "
+"angle, Y angle, Z angle)."
+msgstr ""
+
+#: doc/classes/Quat.xml:94
+msgid "Returns the inverse of the quaternion."
+msgstr ""
+
+#: doc/classes/Quat.xml:103
+msgid ""
+"Returns [code]true[/code] if this quaterion and [code]quat[/code] are "
+"approximately equal, by running [method @GDScript.is_equal_approx] on each "
+"component."
+msgstr ""
+
+#: doc/classes/Quat.xml:110
+msgid "Returns whether the quaternion is normalized or not."
+msgstr ""
+
+#: doc/classes/Quat.xml:117
+msgid "Returns the length of the quaternion."
+msgstr ""
+
+#: doc/classes/Quat.xml:124
+msgid "Returns the length of the quaternion, squared."
+msgstr ""
+
+#: doc/classes/Quat.xml:131
+msgid "Returns a copy of the quaternion, normalized to unit length."
+msgstr ""
+
+#: doc/classes/Quat.xml:142
+msgid ""
+"Sets the quaternion to a rotation which rotates around axis by the specified "
+"angle, in radians. The axis must be a normalized vector."
+msgstr ""
+
+#: doc/classes/Quat.xml:151
+msgid ""
+"Sets the quaternion to a rotation specified by Euler angles (in the YXZ "
+"convention: when decomposing, first Z, then X, and Y last), given in the "
+"vector format as (X angle, Y angle, Z angle)."
+msgstr ""
+
+#: doc/classes/Quat.xml:162
+msgid ""
+"Returns the result of the spherical linear interpolation between this "
+"quaternion and [code]to[/code] by amount [code]weight[/code].\n"
+"[b]Note:[/b] Both quaternions must be normalized."
+msgstr ""
+
+#: doc/classes/Quat.xml:174
+msgid ""
+"Returns the result of the spherical linear interpolation between this "
+"quaternion and [code]to[/code] by amount [code]weight[/code], but without "
+"checking if the rotation path is not bigger than 90 degrees."
+msgstr ""
+
+#: doc/classes/Quat.xml:183
+msgid "Returns a vector transformed (multiplied) by this quaternion."
+msgstr ""
+
+#: doc/classes/Quat.xml:189
+msgid ""
+"W component of the quaternion (real part).\n"
+"Quaternion components should usually not be manipulated directly."
+msgstr ""
+
+#: doc/classes/Quat.xml:193
+msgid ""
+"X component of the quaternion (imaginary [code]i[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
+msgstr ""
+
+#: doc/classes/Quat.xml:197
+msgid ""
+"Y component of the quaternion (imaginary [code]j[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
+msgstr ""
+
+#: doc/classes/Quat.xml:201
+msgid ""
+"Z component of the quaternion (imaginary [code]k[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
+msgstr ""
+
+#: doc/classes/Quat.xml:207
+msgid ""
+"The identity quaternion, representing no rotation. Equivalent to an identity "
+"[Basis] matrix. If a vector is transformed by an identity quaternion, it "
+"will not change."
+msgstr ""
+
+#: doc/classes/RandomNumberGenerator.xml:4
+msgid "A class for generating pseudo-random numbers."
+msgstr ""
+
+#: doc/classes/RandomNumberGenerator.xml:7
+msgid ""
+"RandomNumberGenerator is a class for generating pseudo-random numbers. It "
+"currently uses [url=http://www.pcg-random.org/]PCG32[/url].\n"
+"[b]Note:[/b] The underlying algorithm is an implementation detail. As a "
+"result, it should not be depended upon for reproducible random streams "
+"across Godot versions.\n"
+"To generate a random float number (within a given range) based on a time-"
+"dependant seed:\n"
+"[codeblock]\n"
+"var rng = RandomNumberGenerator.new()\n"
+"func _ready():\n"
+" rng.randomize()\n"
+" var my_random_number = rng.randf_range(-10.0, 10.0)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/RandomNumberGenerator.xml:24
+msgid ""
+"Generates a pseudo-random float between [code]0.0[/code] and [code]1.0[/"
+"code] (inclusive)."
+msgstr ""
+
+#: doc/classes/RandomNumberGenerator.xml:35
+msgid ""
+"Generates a pseudo-random float between [code]from[/code] and [code]to[/"
+"code] (inclusive)."
+msgstr ""
+
+#: doc/classes/RandomNumberGenerator.xml:46
+msgid ""
+"Generates a [url=https://en.wikipedia.org/wiki/Normal_distribution]normally-"
+"distributed[/url] pseudo-random number, using Box-Muller transform with the "
+"specified [code]mean[/code] and a standard [code]deviation[/code]. This is "
+"also called Gaussian distribution."
+msgstr ""
+
+#: doc/classes/RandomNumberGenerator.xml:53
+msgid ""
+"Generates a pseudo-random 32-bit unsigned integer between [code]0[/code] and "
+"[code]4294967295[/code] (inclusive)."
+msgstr ""
+
+#: doc/classes/RandomNumberGenerator.xml:64
+msgid ""
+"Generates a pseudo-random 32-bit signed integer between [code]from[/code] "
+"and [code]to[/code] (inclusive)."
+msgstr ""
+
+#: doc/classes/RandomNumberGenerator.xml:71
+msgid "Setups a time-based seed to generator."
+msgstr ""
+
+#: doc/classes/RandomNumberGenerator.xml:77
+msgid ""
+"The seed used by the random number generator. A given seed will give a "
+"reproducible sequence of pseudo-random numbers.\n"
+"[b]Note:[/b] The RNG does not have an avalanche effect, and can output "
+"similar random streams given similar seeds. Consider using a hash function "
+"to improve your seed quality if they're sourced externally."
+msgstr ""
+
+#: doc/classes/Range.xml:4
+msgid "Abstract base class for range-based controls."
+msgstr ""
+
+#: doc/classes/Range.xml:7
+msgid ""
+"Range is a base class for [Control] nodes that change a floating-point "
+"[i]value[/i] between a [i]minimum[/i] and a [i]maximum[/i], using [i]step[/"
+"i] and [i]page[/i], for example a [ScrollBar]."
+msgstr ""
+
+#: doc/classes/Range.xml:18
+msgid ""
+"Binds two ranges together along with any ranges previously grouped with "
+"either of them. When any of range's member variables change, it will share "
+"the new value with all other ranges in its group."
+msgstr ""
+
+#: doc/classes/Range.xml:25
+msgid "Stops range from sharing its member variables with any other."
+msgstr ""
+
+#: doc/classes/Range.xml:31
+msgid ""
+"If [code]true[/code], [member value] may be greater than [member max_value]."
+msgstr ""
+
+#: doc/classes/Range.xml:34
+msgid ""
+"If [code]true[/code], [member value] may be less than [member min_value]."
+msgstr ""
+
+#: doc/classes/Range.xml:37
+msgid ""
+"If [code]true[/code], and [code]min_value[/code] is greater than 0, "
+"[code]value[/code] will be represented exponentially rather than linearly."
+msgstr ""
+
+#: doc/classes/Range.xml:40
+msgid ""
+"Maximum value. Range is clamped if [code]value[/code] is greater than "
+"[code]max_value[/code]."
+msgstr ""
+
+#: doc/classes/Range.xml:43
+msgid ""
+"Minimum value. Range is clamped if [code]value[/code] is less than "
+"[code]min_value[/code]."
+msgstr ""
+
+#: doc/classes/Range.xml:46
+msgid ""
+"Page size. Used mainly for [ScrollBar]. ScrollBar's length is its size "
+"multiplied by [code]page[/code] over the difference between [code]min_value[/"
+"code] and [code]max_value[/code]."
+msgstr ""
+
+#: doc/classes/Range.xml:49
+msgid "The value mapped between 0 and 1."
+msgstr ""
+
+#: doc/classes/Range.xml:52
+msgid ""
+"If [code]true[/code], [code]value[/code] will always be rounded to the "
+"nearest integer."
+msgstr ""
+
+#: doc/classes/Range.xml:55
+msgid ""
+"If greater than 0, [code]value[/code] will always be rounded to a multiple "
+"of [code]step[/code]. If [code]rounded[/code] is also [code]true[/code], "
+"[code]value[/code] will first be rounded to a multiple of [code]step[/code] "
+"then rounded to the nearest integer."
+msgstr ""
+
+#: doc/classes/Range.xml:58
+msgid "Range's current value."
+msgstr ""
+
+#: doc/classes/Range.xml:64
+msgid ""
+"Emitted when [member min_value], [member max_value], [member page], or "
+"[member step] change."
+msgstr ""
+
+#: doc/classes/Range.xml:71
+msgid "Emitted when [member value] changes."
+msgstr ""
+
+#: doc/classes/RayCast2D.xml:4 doc/classes/RayCast3D.xml:4
+msgid "Query the closest object intersecting a ray."
+msgstr ""
+
+#: doc/classes/RayCast2D.xml:7
+msgid ""
+"A RayCast represents a line from its origin to its destination position, "
+"[code]cast_to[/code]. It is used to query the 2D space in order to find the "
+"closest object along the path of the ray.\n"
+"RayCast2D can ignore some objects by adding them to the exception list via "
+"[code]add_exception[/code], by setting proper filtering with collision "
+"layers, or by filtering object types with type masks.\n"
+"RayCast2D can be configured to report collisions with [Area2D]s ([member "
+"collide_with_areas]) and/or [PhysicsBody2D]s ([member "
+"collide_with_bodies]).\n"
+"Only enabled raycasts will be able to query the space and report "
+"collisions.\n"
+"RayCast2D calculates intersection every physics frame (see [Node]), and the "
+"result is cached so it can be used later until the next frame. If multiple "
+"queries are required between physics frames (or during the same frame) use "
+"[method force_raycast_update] after adjusting the raycast."
+msgstr ""
+
+#: doc/classes/RayCast2D.xml:23 doc/classes/RayCast3D.xml:23
+msgid ""
+"Adds a collision exception so the ray does not report collisions with the "
+"specified node."
+msgstr ""
+
+#: doc/classes/RayCast2D.xml:32 doc/classes/RayCast3D.xml:32
+msgid ""
+"Adds a collision exception so the ray does not report collisions with the "
+"specified [RID]."
+msgstr ""
+
+#: doc/classes/RayCast2D.xml:39 doc/classes/RayCast3D.xml:39
+msgid "Removes all collision exceptions for this ray."
+msgstr ""
+
+#: doc/classes/RayCast2D.xml:46
+msgid ""
+"Updates the collision information for the ray. Use this method to update the "
+"collision information immediately instead of waiting for the next "
+"[code]_physics_process[/code] call, for example if the ray or its parent has "
+"changed state.\n"
+"[b]Note:[/b] [member enabled] does not need to be [code]true[/code] for this "
+"to work."
+msgstr ""
+
+#: doc/classes/RayCast2D.xml:54 doc/classes/RayCast3D.xml:55
+msgid ""
+"Returns the first object that the ray intersects, or [code]null[/code] if no "
+"object is intersecting the ray (i.e. [method is_colliding] returns "
+"[code]false[/code])."
+msgstr ""
+
+#: doc/classes/RayCast2D.xml:61 doc/classes/RayCast3D.xml:62
+msgid ""
+"Returns the shape ID of the first object that the ray intersects, or "
+"[code]0[/code] if no object is intersecting the ray (i.e. [method "
+"is_colliding] returns [code]false[/code])."
+msgstr ""
+
+#: doc/classes/RayCast2D.xml:77 doc/classes/RayCast3D.xml:79
+msgid ""
+"Returns the normal of the intersecting object's shape at the collision point."
+msgstr ""
+
+#: doc/classes/RayCast2D.xml:84
+msgid ""
+"Returns the collision point at which the ray intersects the closest object.\n"
+"[b]Note:[/b] this point is in the [b]global[/b] coordinate system."
+msgstr ""
+
+#: doc/classes/RayCast2D.xml:92 doc/classes/RayCast3D.xml:94
+msgid ""
+"Returns whether any object is intersecting with the ray's vector "
+"(considering the vector length)."
+msgstr ""
+
+#: doc/classes/RayCast2D.xml:101 doc/classes/RayCast3D.xml:103
+msgid ""
+"Removes a collision exception so the ray does report collisions with the "
+"specified node."
+msgstr ""
+
+#: doc/classes/RayCast2D.xml:110 doc/classes/RayCast3D.xml:112
+msgid ""
+"Removes a collision exception so the ray does report collisions with the "
+"specified [RID]."
+msgstr ""
+
+#: doc/classes/RayCast2D.xml:121
+msgid ""
+"Sets or clears individual bits on the collision mask. This makes selecting "
+"the areas scanned easier."
+msgstr ""
+
+#: doc/classes/RayCast2D.xml:127 doc/classes/RayCast3D.xml:130
+msgid ""
+"The ray's destination point, relative to the RayCast's [code]position[/code]."
+msgstr ""
+
+#: doc/classes/RayCast2D.xml:130
+msgid "If [code]true[/code], collision with [Area2D]s will be reported."
+msgstr ""
+
+#: doc/classes/RayCast2D.xml:133
+msgid "If [code]true[/code], collision with [PhysicsBody2D]s will be reported."
+msgstr ""
+
+#: doc/classes/RayCast2D.xml:136 doc/classes/RayCast3D.xml:139
+msgid ""
+"The ray's collision mask. Only objects in at least one collision layer "
+"enabled in the mask will be detected."
+msgstr ""
+
+#: doc/classes/RayCast2D.xml:139 doc/classes/RayCast3D.xml:142
+msgid "If [code]true[/code], collisions will be reported."
+msgstr ""
+
+#: doc/classes/RayCast2D.xml:142
+msgid ""
+"If [code]true[/code], the parent node will be excluded from collision "
+"detection."
+msgstr ""
+
+#: doc/classes/RayCast3D.xml:7
+msgid ""
+"A RayCast represents a line from its origin to its destination position, "
+"[code]cast_to[/code]. It is used to query the 3D space in order to find the "
+"closest object along the path of the ray.\n"
+"RayCast3D can ignore some objects by adding them to the exception list via "
+"[code]add_exception[/code] or by setting proper filtering with collision "
+"layers and masks.\n"
+"RayCast3D can be configured to report collisions with [Area3D]s ([member "
+"collide_with_areas]) and/or [PhysicsBody3D]s ([member "
+"collide_with_bodies]).\n"
+"Only enabled raycasts will be able to query the space and report "
+"collisions.\n"
+"RayCast3D calculates intersection every physics frame (see [Node]), and the "
+"result is cached so it can be used later until the next frame. If multiple "
+"queries are required between physics frames (or during the same frame), use "
+"[method force_raycast_update] after adjusting the raycast."
+msgstr ""
+
+#: doc/classes/RayCast3D.xml:46
+msgid ""
+"Updates the collision information for the ray.\n"
+"Use this method to update the collision information immediately instead of "
+"waiting for the next [code]_physics_process[/code] call, for example if the "
+"ray or its parent has changed state.\n"
+"[b]Note:[/b] [member enabled] does not need to be [code]true[/code] for this "
+"to work."
+msgstr ""
+
+#: doc/classes/RayCast3D.xml:71
+msgid ""
+"Returns [code]true[/code] if the bit index passed is turned on.\n"
+"[b]Note:[/b] Bit indices range from 0-19."
+msgstr ""
+
+#: doc/classes/RayCast3D.xml:86
+msgid ""
+"Returns the collision point at which the ray intersects the closest object.\n"
+"[b]Note:[/b] This point is in the [b]global[/b] coordinate system."
+msgstr ""
+
+#: doc/classes/RayCast3D.xml:123
+msgid ""
+"Sets the bit index passed to the [code]value[/code] passed.\n"
+"[b]Note:[/b] Bit indexes range from 0-19."
+msgstr ""
+
+#: doc/classes/RayCast3D.xml:133
+msgid "If [code]true[/code], collision with [Area3D]s will be reported."
+msgstr ""
+
+#: doc/classes/RayCast3D.xml:136
+msgid "If [code]true[/code], collision with [PhysicsBody3D]s will be reported."
+msgstr ""
+
+#: doc/classes/RayCast3D.xml:145
+msgid ""
+"If [code]true[/code], collisions will be ignored for this RayCast3D's "
+"immediate parent."
+msgstr ""
+
+#: doc/classes/RayShape2D.xml:4
+msgid "Ray shape for 2D collisions."
+msgstr ""
+
+#: doc/classes/RayShape2D.xml:7
+msgid ""
+"Ray shape for 2D collisions. A ray is not really a collision body; instead, "
+"it tries to separate itself from whatever is touching its far endpoint. It's "
+"often useful for characters."
+msgstr ""
+
+#: doc/classes/RayShape2D.xml:15 doc/classes/RayShape3D.xml:15
+msgid "The ray's length."
+msgstr ""
+
+#: doc/classes/RayShape2D.xml:18 doc/classes/RayShape3D.xml:18
+msgid "If [code]true[/code], allow the shape to return the correct normal."
+msgstr ""
+
+#: doc/classes/RayShape3D.xml:4
+msgid "Ray shape for 3D collisions."
+msgstr ""
+
+#: doc/classes/RayShape3D.xml:7
+msgid ""
+"Ray shape for 3D collisions, which can be set into a [PhysicsBody3D] or "
+"[Area3D]. A ray is not really a collision body; instead, it tries to "
+"separate itself from whatever is touching its far endpoint. It's often "
+"useful for characters."
+msgstr ""
+
+#: doc/classes/Rect2.xml:4
+msgid "2D axis-aligned bounding box using floating point coordinates."
+msgstr ""
+
+#: doc/classes/Rect2.xml:7
+msgid ""
+"[Rect2] consists of a position, a size, and several utility functions. It is "
+"typically used for fast overlap tests.\n"
+"It uses floating point coordinates."
+msgstr ""
+
+#: doc/classes/Rect2.xml:22
+msgid "Constructs a [Rect2] by position and size."
+msgstr ""
+
+#: doc/classes/Rect2.xml:37
+msgid "Constructs a [Rect2] by x, y, width, and height."
+msgstr ""
+
+#: doc/classes/Rect2.xml:46
+msgid "Constructs a [Rect2] from a [Rect2i]."
+msgstr ""
+
+#: doc/classes/Rect2.xml:53
+msgid ""
+"Returns a [Rect2] with equivalent position and area, modified so that the "
+"top-left corner is the origin and [code]width[/code] and [code]height[/code] "
+"are positive."
+msgstr ""
+
+#: doc/classes/Rect2.xml:62
+msgid "Returns the intersection of this [Rect2] and b."
+msgstr ""
+
+#: doc/classes/Rect2.xml:71
+msgid ""
+"Returns [code]true[/code] if this [Rect2] completely encloses another one."
+msgstr ""
+
+#: doc/classes/Rect2.xml:80
+msgid "Returns this [Rect2] expanded to include a given point."
+msgstr ""
+
+#: doc/classes/Rect2.xml:87
+msgid "Returns the area of the [Rect2]."
+msgstr ""
+
+#: doc/classes/Rect2.xml:96
+msgid ""
+"Returns a copy of the [Rect2] grown a given amount of units towards all the "
+"sides."
+msgstr ""
+
+#: doc/classes/Rect2.xml:111
+msgid ""
+"Returns a copy of the [Rect2] grown a given amount of units towards each "
+"direction individually."
+msgstr ""
+
+#: doc/classes/Rect2.xml:122
+msgid ""
+"Returns a copy of the [Rect2] grown a given amount of units towards the "
+"[enum Margin] direction."
+msgstr ""
+
+#: doc/classes/Rect2.xml:129
+msgid "Returns [code]true[/code] if the [Rect2] is flat or empty."
+msgstr ""
+
+#: doc/classes/Rect2.xml:138
+msgid "Returns [code]true[/code] if the [Rect2] contains a point."
+msgstr ""
+
+#: doc/classes/Rect2.xml:149
+msgid ""
+"Returns [code]true[/code] if the [Rect2] overlaps with [code]b[/code] (i.e. "
+"they have at least one point in common).\n"
+"If [code]include_borders[/code] is [code]true[/code], they will also be "
+"considered overlapping if their borders touch, even without intersection."
+msgstr ""
+
+#: doc/classes/Rect2.xml:159
+msgid ""
+"Returns [code]true[/code] if this [Rect2] and [code]rect[/code] are "
+"approximately equal, by calling [code]is_equal_approx[/code] on each "
+"component."
+msgstr ""
+
+#: doc/classes/Rect2.xml:168
+msgid "Returns a larger [Rect2] that contains this [Rect2] and [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Rect2i.xml:4
+msgid "2D axis-aligned bounding box using integer coordinates."
+msgstr ""
+
+#: doc/classes/Rect2i.xml:7
+msgid ""
+"[Rect2i] consists of a position, a size, and several utility functions. It "
+"is typically used for fast overlap tests.\n"
+"It uses integer coordinates."
+msgstr ""
+
+#: doc/classes/Rect2i.xml:22
+msgid "Constructs a [Rect2i] by position and size."
+msgstr ""
+
+#: doc/classes/Rect2i.xml:37
+msgid "Constructs a [Rect2i] by x, y, width, and height."
+msgstr ""
+
+#: doc/classes/Rect2i.xml:46
+msgid ""
+"Constructs a new [Rect2i] from [Rect2]. The floating point coordinates will "
+"be truncated."
+msgstr ""
+
+#: doc/classes/Rect2i.xml:53
+msgid ""
+"Returns a [Rect2i] with equivalent position and area, modified so that the "
+"top-left corner is the origin and [code]width[/code] and [code]height[/code] "
+"are positive."
+msgstr ""
+
+#: doc/classes/Rect2i.xml:62
+msgid "Returns the intersection of this [Rect2i] and b."
+msgstr ""
+
+#: doc/classes/Rect2i.xml:71
+msgid ""
+"Returns [code]true[/code] if this [Rect2i] completely encloses another one."
+msgstr ""
+
+#: doc/classes/Rect2i.xml:80
+msgid "Returns this [Rect2i] expanded to include a given point."
+msgstr ""
+
+#: doc/classes/Rect2i.xml:87
+msgid "Returns the area of the [Rect2i]."
+msgstr ""
+
+#: doc/classes/Rect2i.xml:96
+msgid ""
+"Returns a copy of the [Rect2i] grown a given amount of units towards all the "
+"sides."
+msgstr ""
+
+#: doc/classes/Rect2i.xml:111
+msgid ""
+"Returns a copy of the [Rect2i] grown a given amount of units towards each "
+"direction individually."
+msgstr ""
+
+#: doc/classes/Rect2i.xml:122
+msgid ""
+"Returns a copy of the [Rect2i] grown a given amount of units towards the "
+"[enum Margin] direction."
+msgstr ""
+
+#: doc/classes/Rect2i.xml:129
+msgid "Returns [code]true[/code] if the [Rect2i] is flat or empty."
+msgstr ""
+
+#: doc/classes/Rect2i.xml:138
+msgid "Returns [code]true[/code] if the [Rect2i] contains a point."
+msgstr ""
+
+#: doc/classes/Rect2i.xml:147
+msgid ""
+"Returns [code]true[/code] if the [Rect2i] overlaps with [code]b[/code] (i.e. "
+"they have at least one point in common).\n"
+"If [code]include_borders[/code] is [code]true[/code], they will also be "
+"considered overlapping if their borders touch, even without intersection."
+msgstr ""
+
+#: doc/classes/Rect2i.xml:157
+msgid ""
+"Returns a larger [Rect2i] that contains this [Rect2i] and [code]b[/code]."
+msgstr ""
+
+#: doc/classes/RectangleShape2D.xml:4
+msgid "Rectangle shape for 2D collisions."
+msgstr ""
+
+#: doc/classes/RectangleShape2D.xml:7
+msgid ""
+"Rectangle shape for 2D collisions. This shape is useful for modeling box-"
+"like 2D objects."
+msgstr ""
+
+#: doc/classes/RectangleShape2D.xml:15
+msgid ""
+"The rectangle's half extents. The width and height of this shape is twice "
+"the half extents."
+msgstr ""
+
+#: doc/classes/Reference.xml:4
+msgid "Base class for reference-counted objects."
+msgstr ""
+
+#: doc/classes/Reference.xml:7
+msgid ""
+"Base class for any object that keeps a reference count. [Resource] and many "
+"other helper objects inherit this class.\n"
+"Unlike [Object]s, References keep an internal reference counter so that they "
+"are automatically released when no longer in use, and only then. References "
+"therefore do not need to be freed manually with [method Object.free].\n"
+"In the vast majority of use cases, instantiating and using [Reference]-"
+"derived types is all you need to do. The methods provided in this class are "
+"only for advanced users, and can cause issues if misused."
+msgstr ""
+
+#: doc/classes/Reference.xml:19
+msgid ""
+"Initializes the internal reference counter. Use this only if you really know "
+"what you are doing.\n"
+"Returns whether the initialization was successful."
+msgstr ""
+
+#: doc/classes/Reference.xml:27
+msgid ""
+"Increments the internal reference counter. Use this only if you really know "
+"what you are doing.\n"
+"Returns [code]true[/code] if the increment was successful, [code]false[/"
+"code] otherwise."
+msgstr ""
+
+#: doc/classes/Reference.xml:35
+msgid ""
+"Decrements the internal reference counter. Use this only if you really know "
+"what you are doing.\n"
+"Returns [code]true[/code] if the decrement was successful, [code]false[/"
+"code] otherwise."
+msgstr ""
+
+#: doc/classes/ReferenceRect.xml:4
+msgid "Reference frame for GUI."
+msgstr ""
+
+#: doc/classes/ReferenceRect.xml:7
+msgid ""
+"A rectangle box that displays only a [member border_color] border color "
+"around its rectangle. [ReferenceRect] has no fill [Color]."
+msgstr ""
+
+#: doc/classes/ReferenceRect.xml:15
+msgid "Sets the border [Color] of the [ReferenceRect]."
+msgstr ""
+
+#: doc/classes/ReferenceRect.xml:18
+msgid ""
+"If set to [code]true[/code], the [ReferenceRect] will only be visible while "
+"in editor. Otherwise, [ReferenceRect] will be visible in game."
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:4
+msgid "Captures its surroundings to create reflections."
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:7
+msgid ""
+"Captures its surroundings as a cubemap, and stores versions of it with "
+"increasing levels of blur to simulate different material roughnesses.\n"
+"The [ReflectionProbe] is used to create high-quality reflections at the cost "
+"of performance. It can be combined with [GIProbe]s and Screen Space "
+"Reflections to achieve high quality reflections. [ReflectionProbe]s render "
+"all objects within their [member cull_mask], so updating them can be quite "
+"expensive. It is best to update them once with the important static objects "
+"and then leave them."
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/3d/reflection_probes.html"
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:23
+msgid ""
+"If [code]true[/code], enables box projection. This makes reflections look "
+"more correct in rectangle-shaped rooms by offsetting the reflection center "
+"depending on the camera's location."
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:26
+msgid ""
+"Sets the cull mask which determines what objects are drawn by this probe. "
+"Every [VisualInstance3D] with a layer included in this cull mask will be "
+"rendered by the probe. It is best to only include large objects which are "
+"likely to take up a lot of space in the reflection in order to save on "
+"rendering cost."
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:29
+msgid ""
+"If [code]true[/code], computes shadows in the reflection probe. This makes "
+"the reflection probe slower to render; you may want to disable this if using "
+"the [constant UPDATE_ALWAYS] [member update_mode]."
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:32
+msgid ""
+"The size of the reflection probe. The larger the extents the more space "
+"covered by the probe which will lower the perceived resolution. It is best "
+"to keep the extents only as large as you need them."
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:35
+msgid ""
+"Defines the reflection intensity. Intensity modulates the strength of the "
+"reflection."
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:38
+msgid "If [code]true[/code], reflections will ignore sky contribution."
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:41
+msgid ""
+"Sets the max distance away from the probe an object can be before it is "
+"culled."
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:44
+msgid ""
+"Sets the origin offset to be used when this reflection probe is in box "
+"project mode."
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:47
+msgid ""
+"Sets how frequently the probe is updated. Can be [constant UPDATE_ONCE] or "
+"[constant UPDATE_ALWAYS]."
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:52
+msgid ""
+"Update the probe once on the next frame. The corresponding radiance map will "
+"be generated over the following six frames. This is slower to update than "
+"[constant UPDATE_ALWAYS] but can result in higher quality reflections."
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:55
+msgid ""
+"Update the probe every frame. This is needed when you want to capture "
+"dynamic objects. However, it results in an increased render time. Use "
+"[constant UPDATE_ONCE] whenever possible."
+msgstr ""
+
+#: modules/regex/doc_classes/RegEx.xml:4
+msgid "Class for searching text for patterns using regular expressions."
+msgstr ""
+
+#: modules/regex/doc_classes/RegEx.xml:7
+msgid ""
+"A regular expression (or regex) is a compact language that can be used to "
+"recognise strings that follow a specific pattern, such as URLs, email "
+"addresses, complete sentences, etc. For instance, a regex of [code]ab[0-9][/"
+"code] would find any string that is [code]ab[/code] followed by any number "
+"from [code]0[/code] to [code]9[/code]. For a more in-depth look, you can "
+"easily find various tutorials and detailed explanations on the Internet.\n"
+"To begin, the RegEx object needs to be compiled with the search pattern "
+"using [method compile] before it can be used.\n"
+"[codeblock]\n"
+"var regex = RegEx.new()\n"
+"regex.compile(\"\\\\w-(\\\\d+)\")\n"
+"[/codeblock]\n"
+"The search pattern must be escaped first for GDScript before it is escaped "
+"for the expression. For example, [code]compile(\"\\\\d+\")[/code] would be "
+"read by RegEx as [code]\\d+[/code]. Similarly, [code]compile(\"\\\"(?:\\\\\\"
+"\\.|[^\\\"])*\\\"\")[/code] would be read as [code]\"(?:\\\\.|[^\"])*\"[/"
+"code].\n"
+"Using [method search], you can find the pattern within the given text. If a "
+"pattern is found, [RegExMatch] is returned and you can retrieve details of "
+"the results using methods such as [method RegExMatch.get_string] and [method "
+"RegExMatch.get_start].\n"
+"[codeblock]\n"
+"var regex = RegEx.new()\n"
+"regex.compile(\"\\\\w-(\\\\d+)\")\n"
+"var result = regex.search(\"abc n-0123\")\n"
+"if result:\n"
+" print(result.get_string()) # Would print n-0123\n"
+"[/codeblock]\n"
+"The results of capturing groups [code]()[/code] can be retrieved by passing "
+"the group number to the various methods in [RegExMatch]. Group 0 is the "
+"default and will always refer to the entire pattern. In the above example, "
+"calling [code]result.get_string(1)[/code] would give you [code]0123[/code].\n"
+"This version of RegEx also supports named capturing groups, and the names "
+"can be used to retrieve the results. If two or more groups have the same "
+"name, the name would only refer to the first one with a match.\n"
+"[codeblock]\n"
+"var regex = RegEx.new()\n"
+"regex.compile(\"d(?<digit>[0-9]+)|x(?<digit>[0-9a-f]+)\")\n"
+"var result = regex.search(\"the number is x2f\")\n"
+"if result:\n"
+" print(result.get_string(\"digit\")) # Would print 2f\n"
+"[/codeblock]\n"
+"If you need to process multiple results, [method search_all] generates a "
+"list of all non-overlapping results. This can be combined with a [code]for[/"
+"code] loop for convenience.\n"
+"[codeblock]\n"
+"for result in regex.search_all(\"d01, d03, d0c, x3f and x42\"):\n"
+" print(result.get_string(\"digit\"))\n"
+"# Would print 01 03 0 3f 42\n"
+"[/codeblock]\n"
+"[b]Example of splitting a string using a RegEx:[/b]\n"
+"[codeblock]\n"
+"var regex = RegEx.new()\n"
+"regex.compile(\"\\\\S+\") # Negated whitespace character class.\n"
+"var results = []\n"
+"for match in regex.search_all(\"One Two \\n\\tThree\"):\n"
+" results.push_back(match.get_string())\n"
+"# The `results` array now contains \"One\", \"Two\", \"Three\".\n"
+"[/codeblock]\n"
+"[b]Note:[/b] Godot's regex implementation is based on the [url=https://www."
+"pcre.org/]PCRE2[/url] library. You can view the full pattern reference "
+"[url=https://www.pcre.org/current/doc/html/pcre2pattern.html]here[/url].\n"
+"[b]Tip:[/b] You can use [url=https://regexr.com/]Regexr[/url] to test "
+"regular expressions online."
+msgstr ""
+
+#: modules/regex/doc_classes/RegEx.xml:56
+msgid ""
+"This method resets the state of the object, as if it was freshly created. "
+"Namely, it unassigns the regular expression of this object."
+msgstr ""
+
+#: modules/regex/doc_classes/RegEx.xml:65
+msgid ""
+"Compiles and assign the search pattern to use. Returns [constant OK] if the "
+"compilation is successful. If an error is encountered, details are printed "
+"to standard output and an error is returned."
+msgstr ""
+
+#: modules/regex/doc_classes/RegEx.xml:72
+msgid "Returns the number of capturing groups in compiled pattern."
+msgstr ""
+
+#: modules/regex/doc_classes/RegEx.xml:79
+msgid ""
+"Returns an array of names of named capturing groups in the compiled pattern. "
+"They are ordered by appearance."
+msgstr ""
+
+#: modules/regex/doc_classes/RegEx.xml:86
+msgid "Returns the original search pattern that was compiled."
+msgstr ""
+
+#: modules/regex/doc_classes/RegEx.xml:93
+msgid "Returns whether this object has a valid search pattern assigned."
+msgstr ""
+
+#: modules/regex/doc_classes/RegEx.xml:106
+msgid ""
+"Searches the text for the compiled pattern. Returns a [RegExMatch] container "
+"of the first matching result if found, otherwise [code]null[/code]. The "
+"region to search within can be specified without modifying where the start "
+"and end anchor would be."
+msgstr ""
+
+#: modules/regex/doc_classes/RegEx.xml:119
+msgid ""
+"Searches the text for the compiled pattern. Returns an array of [RegExMatch] "
+"containers for each non-overlapping result. If no results were found, an "
+"empty array is returned instead. The region to search within can be "
+"specified without modifying where the start and end anchor would be."
+msgstr ""
+
+#: modules/regex/doc_classes/RegEx.xml:136
+msgid ""
+"Searches the text for the compiled pattern and replaces it with the "
+"specified string. Escapes and backreferences such as [code]$1[/code] and "
+"[code]$name[/code] are expanded and resolved. By default, only the first "
+"instance is replaced, but it can be changed for all instances (global "
+"replacement). The region to search within can be specified without modifying "
+"where the start and end anchor would be."
+msgstr ""
+
+#: modules/regex/doc_classes/RegExMatch.xml:4
+msgid "Contains the results of a [RegEx] search."
+msgstr ""
+
+#: modules/regex/doc_classes/RegExMatch.xml:7
+msgid ""
+"Contains the results of a single [RegEx] match returned by [method RegEx."
+"search] and [method RegEx.search_all]. It can be used to find the position "
+"and range of the match and its capturing groups, and it can extract its "
+"substring for you."
+msgstr ""
+
+#: modules/regex/doc_classes/RegExMatch.xml:18
+msgid ""
+"Returns the end position of the match within the source string. The end "
+"position of capturing groups can be retrieved by providing its group number "
+"as an integer or its string name (if it's a named group). The default value "
+"of 0 refers to the whole pattern.\n"
+"Returns -1 if the group did not match or doesn't exist."
+msgstr ""
+
+#: modules/regex/doc_classes/RegExMatch.xml:26
+msgid "Returns the number of capturing groups."
+msgstr ""
+
+#: modules/regex/doc_classes/RegExMatch.xml:35
+msgid ""
+"Returns the starting position of the match within the source string. The "
+"starting position of capturing groups can be retrieved by providing its "
+"group number as an integer or its string name (if it's a named group). The "
+"default value of 0 refers to the whole pattern.\n"
+"Returns -1 if the group did not match or doesn't exist."
+msgstr ""
+
+#: modules/regex/doc_classes/RegExMatch.xml:45
+msgid ""
+"Returns the substring of the match from the source string. Capturing groups "
+"can be retrieved by providing its group number as an integer or its string "
+"name (if it's a named group). The default value of 0 refers to the whole "
+"pattern.\n"
+"Returns an empty string if the group did not match or doesn't exist."
+msgstr ""
+
+#: modules/regex/doc_classes/RegExMatch.xml:52
+msgid ""
+"A dictionary of named groups and its corresponding group number. Only groups "
+"that were matched are included. If multiple groups have the same name, that "
+"name would refer to the first matching one."
+msgstr ""
+
+#: modules/regex/doc_classes/RegExMatch.xml:55
+msgid "An [Array] of the match and its capturing groups."
+msgstr ""
+
+#: modules/regex/doc_classes/RegExMatch.xml:58
+msgid ""
+"The source string used with the search pattern to find this matching result."
+msgstr ""
+
+#: doc/classes/RemoteTransform2D.xml:4
+msgid ""
+"RemoteTransform2D pushes its own [Transform2D] to another [CanvasItem] "
+"derived Node in the scene."
+msgstr ""
+
+#: doc/classes/RemoteTransform2D.xml:7
+msgid ""
+"RemoteTransform2D pushes its own [Transform2D] to another [CanvasItem] "
+"derived Node (called the remote node) in the scene.\n"
+"It can be set to update another Node's position, rotation and/or scale. It "
+"can use either global or local coordinates."
+msgstr ""
+
+#: doc/classes/RemoteTransform2D.xml:17
+msgid ""
+"[RemoteTransform2D] caches the remote node. It may not notice if the remote "
+"node disappears; [method force_update_cache] forces it to update the cache "
+"again."
+msgstr ""
+
+#: doc/classes/RemoteTransform2D.xml:23
+msgid ""
+"The [NodePath] to the remote node, relative to the RemoteTransform2D's "
+"position in the scene."
+msgstr ""
+
+#: doc/classes/RemoteTransform2D.xml:26 doc/classes/RemoteTransform3D.xml:26
+msgid "If [code]true[/code], the remote node's position is updated."
+msgstr ""
+
+#: doc/classes/RemoteTransform2D.xml:29 doc/classes/RemoteTransform3D.xml:29
+msgid "If [code]true[/code], the remote node's rotation is updated."
+msgstr ""
+
+#: doc/classes/RemoteTransform2D.xml:32 doc/classes/RemoteTransform3D.xml:32
+msgid "If [code]true[/code], the remote node's scale is updated."
+msgstr ""
+
+#: doc/classes/RemoteTransform2D.xml:35 doc/classes/RemoteTransform3D.xml:35
+msgid ""
+"If [code]true[/code], global coordinates are used. If [code]false[/code], "
+"local coordinates are used."
+msgstr ""
+
+#: doc/classes/RemoteTransform3D.xml:4
+msgid ""
+"RemoteTransform3D pushes its own [Transform] to another [Node3D] derived "
+"Node in the scene."
+msgstr ""
+
+#: doc/classes/RemoteTransform3D.xml:7
+msgid ""
+"RemoteTransform3D pushes its own [Transform] to another [Node3D] derived "
+"Node (called the remote node) in the scene.\n"
+"It can be set to update another Node's position, rotation and/or scale. It "
+"can use either global or local coordinates."
+msgstr ""
+
+#: doc/classes/RemoteTransform3D.xml:17
+msgid ""
+"[RemoteTransform3D] caches the remote node. It may not notice if the remote "
+"node disappears; [method force_update_cache] forces it to update the cache "
+"again."
+msgstr ""
+
+#: doc/classes/RemoteTransform3D.xml:23
+msgid ""
+"The [NodePath] to the remote node, relative to the RemoteTransform3D's "
+"position in the scene."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:4
+msgid "Server for anything visible."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:7
+msgid ""
+"Server for anything visible. The rendering server is the API backend for "
+"everything visible. The whole scene system mounts on it to display.\n"
+"The rendering server is completely opaque, the internals are entirely "
+"implementation specific and cannot be accessed.\n"
+"The rendering server can be used to bypass the scene system entirely.\n"
+"Resources are created using the [code]*_create[/code] functions.\n"
+"All objects are drawn to a viewport. You can use the [Viewport] attached to "
+"the [SceneTree] or you can create one yourself with [method "
+"viewport_create]. When using a custom scenario or canvas, the scenario or "
+"canvas needs to be attached to the viewport using [method "
+"viewport_set_scenario] or [method viewport_attach_canvas].\n"
+"In 3D, all visual objects must be associated with a scenario. The scenario "
+"is a visual representation of the world. If accessing the rendering server "
+"from a running game, the scenario can be accessed from the scene tree from "
+"any [Node3D] node with [method Node3D.get_world_3d]. Otherwise, a scenario "
+"can be created with [method scenario_create].\n"
+"Similarly in 2D, a canvas is needed to draw all canvas items.\n"
+"In 3D, all visible objects are comprised of a resource and an instance. A "
+"resource can be a mesh, a particle system, a light, or any other 3D object. "
+"In order to be visible resources must be attached to an instance using "
+"[method instance_set_base]. The instance must also be attached to the "
+"scenario using [method instance_set_scenario] in order to be visible.\n"
+"In 2D, all visible objects are some form of canvas item. In order to be "
+"visible, a canvas item needs to be the child of a canvas attached to a "
+"viewport, or it needs to be the child of another canvas item that is "
+"eventually attached to the canvas."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:18
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/optimization/using_servers."
+"html"
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:33
+msgid "Sets images to be rendered in the window margin."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:48
+msgid ""
+"Sets margin size, where black bars (or images, if [method "
+"black_bars_set_images] was used) are rendered."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:55
+msgid ""
+"Creates a camera and adds it to the RenderingServer. It can be accessed with "
+"the RID that is returned. This RID will be used in all [code]camera_*[/code] "
+"RenderingServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"RenderingServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:67
+msgid ""
+"Sets the cull mask associated with this camera. The cull mask describes "
+"which 3D layers are rendered by this camera. Equivalent to [member Camera3D."
+"cull_mask]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:78
+msgid ""
+"Sets the environment used by this camera. Equivalent to [member Camera3D."
+"environment]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:95
+msgid ""
+"Sets camera to use frustum projection. This mode allows adjusting the "
+"[code]offset[/code] argument to create \"tilted frustum\" effects."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:110
+msgid ""
+"Sets camera to use orthogonal projection, also known as orthographic "
+"projection. Objects remain the same size on the screen no matter how far "
+"away they are."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:125
+msgid ""
+"Sets camera to use perspective projection. Objects on the screen becomes "
+"smaller when they are far away."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:136
+msgid "Sets [Transform] of camera."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:147
+msgid ""
+"If [code]true[/code], preserves the horizontal aspect ratio which is "
+"equivalent to [constant Camera3D.KEEP_WIDTH]. If [code]false[/code], "
+"preserves the vertical aspect ratio which is equivalent to [constant "
+"Camera3D.KEEP_HEIGHT]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:154
+msgid ""
+"Creates a canvas and returns the assigned [RID]. It can be accessed with the "
+"RID that is returned. This RID will be used in all [code]canvas_*[/code] "
+"RenderingServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"RenderingServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:164
+msgid "Clears the [CanvasItem] and removes all commands in it."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:177
+msgid "Sets the [CanvasItem] to copy a rect to the backbuffer."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:188
+msgid "Sets the index for the [CanvasItem]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:199
+msgid "Sets a new material to the [CanvasItem]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:210
+msgid "Sets if the [CanvasItem] uses its parent's material."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:221
+msgid ""
+"If this is enabled, the Z index of the parent will be added to the "
+"children's Z index."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:232
+msgid ""
+"Sets the [CanvasItem]'s Z index, i.e. its draw order (lower indexes are "
+"drawn first)."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:243
+msgid ""
+"Attaches the canvas light to the canvas. Removes it from its previous canvas."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:250
+msgid ""
+"Creates a canvas light and adds it to the RenderingServer. It can be "
+"accessed with the RID that is returned. This RID will be used in all "
+"[code]canvas_light_*[/code] RenderingServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"RenderingServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:262
+msgid ""
+"Attaches a light occluder to the canvas. Removes it from its previous canvas."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:269
+msgid ""
+"Creates a light occluder and adds it to the RenderingServer. It can be "
+"accessed with the RID that is returned. This RID will be used in all "
+"[code]canvas_light_ocluder_*[/code] RenderingServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"RenderingServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:281
+msgid "Enables or disables light occluder."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:292 doc/classes/RenderingServer.xml:369
+msgid ""
+"The light mask. See [LightOccluder2D] for more information on light masks."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:303
+msgid "Sets a light occluder's polygon."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:314
+msgid "Sets a light occluder's [Transform2D]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:325
+msgid "Sets the color for a light."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:336
+msgid "Enables or disables a canvas light."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:347
+msgid "Sets a canvas light's energy."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:358
+msgid "Sets a canvas light's height."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:380
+msgid ""
+"The binary mask used to determine which layers this canvas light's shadows "
+"affects. See [LightOccluder2D] for more information on light masks."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:393
+msgid "The layer range that gets rendered with this light."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:404
+msgid "The mode of the light, see [enum CanvasLightMode] constants."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:415
+msgid ""
+"Sets the texture's scale factor of the light. Equivalent to [member Light2D."
+"texture_scale]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:426
+msgid ""
+"Sets the width of the shadow buffer, size gets scaled to the next power of "
+"two for this."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:437
+msgid "Sets the color of the canvas light's shadow."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:448
+msgid "Enables or disables the canvas light's shadow."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:459
+msgid ""
+"Sets the canvas light's shadow's filter, see [enum CanvasLightShadowFilter] "
+"constants."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:470
+msgid "Smoothens the shadow. The lower, the smoother."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:481
+msgid ""
+"Sets texture to be used by light. Equivalent to [member Light2D.texture]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:492
+msgid ""
+"Sets the offset of the light's texture. Equivalent to [member Light2D."
+"offset]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:503
+msgid "Sets the canvas light's [Transform2D]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:516
+msgid ""
+"Sets the Z range of objects that will be affected by this light. Equivalent "
+"to [member Light2D.range_z_min] and [member Light2D.range_z_max]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:523
+msgid ""
+"Creates a new light occluder polygon and adds it to the RenderingServer. It "
+"can be accessed with the RID that is returned. This RID will be used in all "
+"[code]canvas_occluder_polygon_*[/code] RenderingServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"RenderingServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:535
+msgid ""
+"Sets an occluder polygons cull mode. See [enum "
+"CanvasOccluderPolygonCullMode] constants."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:548
+msgid "Sets the shape of the occluder polygon."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:559
+msgid "Sets the shape of the occluder polygon as lines."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:572
+msgid ""
+"A copy of the canvas item will be drawn with a local offset of the mirroring "
+"[Vector2]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:583
+msgid "Modulates all colors in the given canvas."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:590
+msgid ""
+"Creates a directional light and adds it to the RenderingServer. It can be "
+"accessed with the RID that is returned. This RID can be used in most "
+"[code]light_*[/code] RenderingServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"RenderingServer's [method free_rid] static method.\n"
+"To place in a scene, attach this directional light to an instance using "
+"[method instance_set_base] using the returned RID."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:599
+msgid ""
+"Creates an environment and adds it to the RenderingServer. It can be "
+"accessed with the RID that is returned. This RID will be used in all "
+"[code]environment_*[/code] RenderingServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"RenderingServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:619
+msgid ""
+"Sets the values to be used with the \"Adjustment\" post-process effect. See "
+"[Environment] for more details."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:650
+msgid ""
+"Sets the [i]BGMode[/i] of the environment. Equivalent to [member Environment."
+"background_mode]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:661
+msgid ""
+"Color displayed for clear areas of the scene (if using Custom color or Color"
+"+Sky background modes)."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:672
+msgid "Sets the intensity of the background color."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:683
+msgid "Sets the maximum layer to use if using Canvas background mode."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:700
+msgid ""
+"Sets the variables to be used with the scene fog. See [Environment] for more "
+"details."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:721
+msgid ""
+"Sets the variables to be used with the fog depth effect. See [Environment] "
+"for more details."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:738
+msgid ""
+"Sets the variables to be used with the fog height effect. See [Environment] "
+"for more details."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:777
+msgid ""
+"Sets the [Sky] to be used as the environment's background when using "
+"[i]BGMode[/i] sky. Equivalent to [member Environment.sky]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:788
+msgid ""
+"Sets a custom field of view for the background [Sky]. Equivalent to [member "
+"Environment.sky_custom_fov]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:799
+msgid ""
+"Sets the rotation of the background [Sky] expressed as a [Basis]. Equivalent "
+"to [member Environment.sky_rotation], where the rotation vector is used to "
+"construct the [Basis]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:842
+msgid ""
+"Sets the variables to be used with the \"screen space reflections\" post-"
+"process effect. See [Environment] for more details."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:867
+msgid ""
+"Sets the variables to be used with the \"tonemap\" post-process effect. See "
+"[Environment] for more details."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:874
+msgid "Removes buffers and clears testcubes."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:885
+msgid ""
+"Forces a frame to be drawn when the function is called. Drawing a frame "
+"updates all [Viewport]s that are set to update. Use with extreme caution."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:892
+msgid "Synchronizes threads."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:901
+msgid "Tries to free an object in the RenderingServer."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:910
+msgid "Returns a certain information, see [enum RenderInfo] for options."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:917
+msgid "Returns the id of the test cube. Creates one if none exists."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:924
+msgid "Returns the id of the test texture. Creates one if none exists."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:931
+msgid ""
+"Returns the name of the video adapter (e.g. \"GeForce GTX 1080/PCIe/"
+"SSE2\").\n"
+"[b]Note:[/b] When running a headless or server binary, this function returns "
+"an empty string."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:939
+msgid ""
+"Returns the vendor of the video adapter (e.g. \"NVIDIA Corporation\").\n"
+"[b]Note:[/b] When running a headless or server binary, this function returns "
+"an empty string."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:947
+msgid "Returns the id of a white texture. Creates one if none exists."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1006
+msgid ""
+"Returns [code]true[/code] if changes have been made to the RenderingServer's "
+"data. [method force_draw] is usually called if this happens."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1015
+msgid "Not yet implemented. Always returns [code]false[/code]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1024
+msgid ""
+"Returns [code]true[/code] if the OS supports a certain feature. Features "
+"might be [code]s3tc[/code], [code]etc[/code], [code]etc2[/code] and "
+"[code]pvrtc[/code]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1037
+msgid ""
+"Sets up [ImmediateGeometry3D] internals to prepare for drawing. Equivalent "
+"to [method ImmediateGeometry3D.begin]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1046
+msgid ""
+"Clears everything that was set up between [method immediate_begin] and "
+"[method immediate_end]. Equivalent to [method ImmediateGeometry3D.clear]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1057
+msgid ""
+"Sets the color to be used with next vertex. Equivalent to [method "
+"ImmediateGeometry3D.set_color]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1064
+msgid ""
+"Creates an immediate geometry and adds it to the RenderingServer. It can be "
+"accessed with the RID that is returned. This RID will be used in all "
+"[code]immediate_*[/code] RenderingServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"RenderingServer's [method free_rid] static method.\n"
+"To place in a scene, attach this immediate geometry to an instance using "
+"[method instance_set_base] using the returned RID."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1075
+msgid ""
+"Ends drawing the [ImmediateGeometry3D] and displays it. Equivalent to "
+"[method ImmediateGeometry3D.end]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1084
+msgid "Returns the material assigned to the [ImmediateGeometry3D]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1095
+msgid ""
+"Sets the normal to be used with next vertex. Equivalent to [method "
+"ImmediateGeometry3D.set_normal]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1106
+msgid "Sets the material to be used to draw the [ImmediateGeometry3D]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1117
+msgid ""
+"Sets the tangent to be used with next vertex. Equivalent to [method "
+"ImmediateGeometry3D.set_tangent]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1128
+msgid ""
+"Sets the UV to be used with next vertex. Equivalent to [method "
+"ImmediateGeometry3D.set_uv]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1139
+msgid ""
+"Sets the UV2 to be used with next vertex. Equivalent to [method "
+"ImmediateGeometry3D.set_uv2]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1150
+msgid ""
+"Adds the next vertex using the information provided in advance. Equivalent "
+"to [method ImmediateGeometry3D.add_vertex]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1161
+msgid ""
+"Adds the next vertex using the information provided in advance. This is a "
+"helper class that calls [method immediate_vertex] under the hood. Equivalent "
+"to [method ImmediateGeometry3D.add_vertex]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1168
+msgid ""
+"Initializes the rendering server. This function is called internally by "
+"platform-dependent code during engine initialization. If called from a "
+"running game, it will not do anything."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1179
+msgid ""
+"Attaches a unique Object ID to instance. Object ID must be attached to "
+"instance for proper culling with [method instances_cull_aabb], [method "
+"instances_cull_convex], and [method instances_cull_ray]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1190
+msgid ""
+"Attaches a skeleton to an instance. Removes the previous skeleton from the "
+"instance."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1197
+msgid ""
+"Creates a visual instance and adds it to the RenderingServer. It can be "
+"accessed with the RID that is returned. This RID will be used in all "
+"[code]instance_*[/code] RenderingServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"RenderingServer's [method free_rid] static method.\n"
+"An instance is a way of placing a 3D object in the scenario. Objects like "
+"particles, meshes, and reflection probes need to be associated with an "
+"instance to be visible in the scenario using [method instance_set_base]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1210
+msgid ""
+"Creates a visual instance, adds it to the RenderingServer, and sets both "
+"base and scenario. It can be accessed with the RID that is returned. This "
+"RID will be used in all [code]instance_*[/code] RenderingServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"RenderingServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1222 doc/classes/RenderingServer.xml:1250
+#: doc/classes/RenderingServer.xml:1537
+msgid "Not implemented in Godot 3.x."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1233
+msgid ""
+"Sets the shadow casting setting to one of [enum ShadowCastingSetting]. "
+"Equivalent to [member GeometryInstance3D.cast_shadow]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1263
+msgid ""
+"Sets the flag for a given [enum InstanceFlags]. See [enum InstanceFlags] for "
+"more details."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1274
+msgid ""
+"Sets a material that will override the material for all surfaces on the mesh "
+"associated with this instance. Equivalent to [member GeometryInstance3D."
+"material_override]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1285
+msgid ""
+"Sets the base of the instance. A base can be any of the 3D objects that are "
+"created in the RenderingServer that can be displayed. For example, any of "
+"the light types, mesh, multimesh, immediate geometry, particle system, "
+"reflection probe, lightmap, and the GI probe are all types that can be set "
+"as the base of an instance in order to be displayed in the scenario."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1298
+msgid "Sets the weight for a given blend shape associated with this instance."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1309
+msgid ""
+"Sets a custom AABB to use when culling objects from the view frustum. "
+"Equivalent to [method GeometryInstance3D.set_custom_aabb]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1320
+msgid "Function not implemented in Godot 3.x."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1331
+msgid ""
+"Sets a margin to increase the size of the AABB when culling objects from the "
+"view frustum. This allows you avoid culling objects that fall outside the "
+"view frustum. Equivalent to [member GeometryInstance3D.extra_cull_margin]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1342
+msgid ""
+"Sets the render layers that this instance will be drawn to. Equivalent to "
+"[member VisualInstance3D.layers]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1353
+msgid ""
+"Sets the scenario that the instance is in. The scenario is the 3D world that "
+"the objects will be displayed in."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1366
+msgid ""
+"Sets the material of a specific surface. Equivalent to [method "
+"MeshInstance3D.set_surface_material]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1377
+msgid ""
+"Sets the world space transform of the instance. Equivalent to [member Node3D."
+"transform]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1388
+msgid ""
+"Sets whether an instance is drawn or not. Equivalent to [member Node3D."
+"visible]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1399
+msgid ""
+"Returns an array of object IDs intersecting with the provided AABB. Only "
+"visual 3D nodes are considered, such as [MeshInstance3D] or "
+"[DirectionalLight3D]. Use [method @GDScript.instance_from_id] to obtain the "
+"actual nodes. A scenario RID must be provided, which is available in the "
+"[World3D] you want to query. This forces an update for all resources queued "
+"to update.\n"
+"[b]Warning:[/b] This function is primarily intended for editor usage. For in-"
+"game use cases, prefer physics collision."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1411
+msgid ""
+"Returns an array of object IDs intersecting with the provided convex shape. "
+"Only visual 3D nodes are considered, such as [MeshInstance3D] or "
+"[DirectionalLight3D]. Use [method @GDScript.instance_from_id] to obtain the "
+"actual nodes. A scenario RID must be provided, which is available in the "
+"[World3D] you want to query. This forces an update for all resources queued "
+"to update.\n"
+"[b]Warning:[/b] This function is primarily intended for editor usage. For in-"
+"game use cases, prefer physics collision."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1425
+msgid ""
+"Returns an array of object IDs intersecting with the provided 3D ray. Only "
+"visual 3D nodes are considered, such as [MeshInstance3D] or "
+"[DirectionalLight3D]. Use [method @GDScript.instance_from_id] to obtain the "
+"actual nodes. A scenario RID must be provided, which is available in the "
+"[World3D] you want to query. This forces an update for all resources queued "
+"to update.\n"
+"[b]Warning:[/b] This function is primarily intended for editor usage. For in-"
+"game use cases, prefer physics collision."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1437
+msgid ""
+"If [code]true[/code], this directional light will blend between shadow map "
+"splits resulting in a smoother transition between them. Equivalent to "
+"[member DirectionalLight3D.directional_shadow_blend_splits]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1448
+msgid ""
+"Sets the shadow depth range mode for this directional light. Equivalent to "
+"[member DirectionalLight3D.directional_shadow_depth_range]. See [enum "
+"LightDirectionalShadowDepthRangeMode] for options."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1459
+msgid ""
+"Sets the shadow mode for this directional light. Equivalent to [member "
+"DirectionalLight3D.directional_shadow_mode]. See [enum "
+"LightDirectionalShadowMode] for options."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1470
+msgid ""
+"Sets whether to use a dual paraboloid or a cubemap for the shadow map. Dual "
+"paraboloid is faster but may suffer from artifacts. Equivalent to [member "
+"OmniLight3D.omni_shadow_mode]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1491
+msgid ""
+"Sets the color of the light. Equivalent to [member Light3D.light_color]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1502
+msgid ""
+"Sets the cull mask for this Light3D. Lights only affect objects in the "
+"selected layers. Equivalent to [member Light3D.light_cull_mask]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1513
+msgid ""
+"If [code]true[/code], light will subtract light instead of adding light. "
+"Equivalent to [member Light3D.light_negative]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1526
+msgid ""
+"Sets the specified light parameter. See [enum LightParam] for options. "
+"Equivalent to [method Light3D.set_param]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1548
+msgid ""
+"If [code]true[/code], reverses the backface culling of the mesh. This can be "
+"useful when you have a flat mesh that has a light behind it. If you need to "
+"cast a shadow on both sides of the mesh, set the mesh to use double sided "
+"shadows with [method instance_geometry_set_cast_shadows_setting]. Equivalent "
+"to [member Light3D.shadow_reverse_cull_face]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1559
+msgid ""
+"If [code]true[/code], light will cast shadows. Equivalent to [member Light3D."
+"shadow_enabled]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1570
+msgid ""
+"Sets the color of the shadow cast by the light. Equivalent to [member "
+"Light3D.shadow_color]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1583
+msgid ""
+"Returns a mesh of a sphere with the given amount of horizontal and vertical "
+"subdivisions."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1590
+msgid ""
+"Creates an empty material and adds it to the RenderingServer. It can be "
+"accessed with the RID that is returned. This RID will be used in all "
+"[code]material_*[/code] RenderingServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"RenderingServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1602
+msgid "Returns the value of a certain material's parameter."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1613
+msgid "Sets an object's next material."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1626
+msgid "Sets a material's parameter."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1637
+msgid "Sets a material's render priority."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1648
+msgid "Sets a shader material's shader."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1677
+msgid "Removes all surfaces from a mesh."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1684
+msgid ""
+"Creates a new mesh and adds it to the RenderingServer. It can be accessed "
+"with the RID that is returned. This RID will be used in all [code]mesh_*[/"
+"code] RenderingServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"RenderingServer's [method free_rid] static method.\n"
+"To place in a scene, attach this mesh to an instance using [method "
+"instance_set_base] using the returned RID."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1695
+msgid "Returns a mesh's blend shape count."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1704
+msgid "Returns a mesh's blend shape mode."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1713
+msgid "Returns a mesh's custom aabb."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1722
+msgid "Returns a mesh's number of surfaces."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1733
+msgid "Sets a mesh's blend shape mode."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1744
+msgid "Sets a mesh's custom aabb."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1755
+msgid "Returns a mesh's surface's buffer arrays."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1766
+msgid "Returns a mesh's surface's arrays for blend shapes."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1781 doc/classes/RenderingServer.xml:1794
+msgid "Function is unused in Godot 3.x."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1805
+msgid "Returns a mesh's surface's material."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1818
+msgid "Sets a mesh's surface's material."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1833
+msgid ""
+"Updates a specific region of a vertex buffer for the specified surface. "
+"Warning: this function alters the vertex buffer directly with no safety "
+"mechanisms, you can easily corrupt your mesh."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1856
+msgid ""
+"Creates a new multimesh on the RenderingServer and returns an [RID] handle. "
+"This RID will be used in all [code]multimesh_*[/code] RenderingServer "
+"functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"RenderingServer's [method free_rid] static method.\n"
+"To place in a scene, attach this multimesh to an instance using [method "
+"instance_set_base] using the returned RID."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1867
+msgid ""
+"Calculates and returns the axis-aligned bounding box that encloses all "
+"instances within the multimesh."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1884
+msgid "Returns the number of instances allocated for this multimesh."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1893
+msgid ""
+"Returns the RID of the mesh that will be used in drawing this multimesh."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1902
+msgid "Returns the number of visible instances for this multimesh."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1913
+msgid "Returns the color by which the specified instance will be modulated."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1924
+msgid "Returns the custom data associated with the specified instance."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1935
+msgid "Returns the [Transform] of the specified instance."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1946
+msgid ""
+"Returns the [Transform2D] of the specified instance. For use when the "
+"multimesh is set to use 2D transforms."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1959
+msgid ""
+"Sets the color by which this instance will be modulated. Equivalent to "
+"[method MultiMesh.set_instance_color]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1972
+msgid ""
+"Sets the custom data for this instance. Custom data is passed as a [Color], "
+"but is interpreted as a [code]vec4[/code] in the shader. Equivalent to "
+"[method MultiMesh.set_instance_custom_data]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1985
+msgid ""
+"Sets the [Transform] for this instance. Equivalent to [method MultiMesh."
+"set_instance_transform]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1998
+msgid ""
+"Sets the [Transform2D] for this instance. For use when multimesh is used in "
+"2D. Equivalent to [method MultiMesh.set_instance_transform_2d]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2019
+msgid ""
+"Sets the mesh to be drawn by the multimesh. Equivalent to [member MultiMesh."
+"mesh]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2030
+msgid ""
+"Sets the number of instances visible at a given time. If -1, all instances "
+"that have been allocated are drawn. Equivalent to [member MultiMesh."
+"visible_instance_count]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2037
+msgid ""
+"Creates a new omni light and adds it to the RenderingServer. It can be "
+"accessed with the RID that is returned. This RID can be used in most "
+"[code]light_*[/code] RenderingServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"RenderingServer's [method free_rid] static method.\n"
+"To place in a scene, attach this omni light to an instance using [method "
+"instance_set_base] using the returned RID."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2046
+msgid ""
+"Creates a particle system and adds it to the RenderingServer. It can be "
+"accessed with the RID that is returned. This RID will be used in all "
+"[code]particles_*[/code] RenderingServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"RenderingServer's [method free_rid] static method.\n"
+"To place in a scene, attach these particles to an instance using [method "
+"instance_set_base] using the returned RID."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2057
+msgid ""
+"Calculates and returns the axis-aligned bounding box that contains all the "
+"particles. Equivalent to [method GPUParticles3D.capture_aabb]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2066
+msgid "Returns [code]true[/code] if particles are currently set to emitting."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2075
+msgid ""
+"Returns [code]true[/code] if particles are not emitting and particles are "
+"set to inactive."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2084
+msgid ""
+"Add particle system to list of particle systems that need to be updated. "
+"Update will take place on the next frame, or on the next call to [method "
+"instances_cull_aabb], [method instances_cull_convex], or [method "
+"instances_cull_ray]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2093
+msgid ""
+"Reset the particles on the next update. Equivalent to [method GPUParticles3D."
+"restart]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2104
+msgid ""
+"Sets the number of particles to be drawn and allocates the memory for them. "
+"Equivalent to [member GPUParticles3D.amount]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2115
+msgid ""
+"Sets a custom axis-aligned bounding box for the particle system. Equivalent "
+"to [member GPUParticles3D.visibility_aabb]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2126
+msgid ""
+"Sets the draw order of the particles to one of the named enums from [enum "
+"ParticlesDrawOrder]. See [enum ParticlesDrawOrder] for options. Equivalent "
+"to [member GPUParticles3D.draw_order]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2139
+msgid ""
+"Sets the mesh to be used for the specified draw pass. Equivalent to [member "
+"GPUParticles3D.draw_pass_1], [member GPUParticles3D.draw_pass_2], [member "
+"GPUParticles3D.draw_pass_3], and [member GPUParticles3D.draw_pass_4]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2150
+msgid ""
+"Sets the number of draw passes to use. Equivalent to [member GPUParticles3D."
+"draw_passes]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2161
+msgid ""
+"Sets the [Transform] that will be used by the particles when they first emit."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2172
+msgid ""
+"If [code]true[/code], particles will emit over time. Setting to false does "
+"not reset the particles, but only stops their emission. Equivalent to "
+"[member GPUParticles3D.emitting]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2183
+msgid ""
+"Sets the explosiveness ratio. Equivalent to [member GPUParticles3D."
+"explosiveness]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2194
+msgid ""
+"Sets the frame rate that the particle system rendering will be fixed to. "
+"Equivalent to [member GPUParticles3D.fixed_fps]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2205
+msgid ""
+"If [code]true[/code], uses fractional delta which smooths the movement of "
+"the particles. Equivalent to [member GPUParticles3D.fract_delta]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2216
+msgid ""
+"Sets the lifetime of each particle in the system. Equivalent to [member "
+"GPUParticles3D.lifetime]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2227
+msgid ""
+"If [code]true[/code], particles will emit once and then stop. Equivalent to "
+"[member GPUParticles3D.one_shot]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2238
+msgid ""
+"Sets the preprocess time for the particles animation. This lets you delay "
+"starting an animation until after the particles have begun emitting. "
+"Equivalent to [member GPUParticles3D.preprocess]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2249
+msgid ""
+"Sets the material for processing the particles. Note: this is not the "
+"material used to draw the materials. Equivalent to [member GPUParticles3D."
+"process_material]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2260
+msgid ""
+"Sets the emission randomness ratio. This randomizes the emission of "
+"particles within their phase. Equivalent to [member GPUParticles3D."
+"randomness]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2271
+msgid ""
+"Sets the speed scale of the particle system. Equivalent to [member "
+"GPUParticles3D.speed_scale]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2282
+msgid ""
+"If [code]true[/code], particles use local coordinates. If [code]false[/code] "
+"they use global coordinates. Equivalent to [member GPUParticles3D."
+"local_coords]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2289
+msgid ""
+"Creates a reflection probe and adds it to the RenderingServer. It can be "
+"accessed with the RID that is returned. This RID will be used in all "
+"[code]reflection_probe_*[/code] RenderingServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"RenderingServer's [method free_rid] static method.\n"
+"To place in a scene, attach this reflection probe to an instance using "
+"[method instance_set_base] using the returned RID."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2332
+msgid ""
+"If [code]true[/code], reflections will ignore sky contribution. Equivalent "
+"to [member ReflectionProbe.interior]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2343
+msgid ""
+"Sets the render cull mask for this reflection probe. Only instances with a "
+"matching cull mask will be rendered by this probe. Equivalent to [member "
+"ReflectionProbe.cull_mask]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2354
+msgid ""
+"If [code]true[/code], uses box projection. This can make reflections look "
+"more correct in certain situations. Equivalent to [member ReflectionProbe."
+"box_projection]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2365
+msgid ""
+"If [code]true[/code], computes shadows in the reflection probe. This makes "
+"the reflection much slower to compute. Equivalent to [member ReflectionProbe."
+"enable_shadows]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2376
+msgid ""
+"Sets the size of the area that the reflection probe will capture. Equivalent "
+"to [member ReflectionProbe.extents]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2387
+msgid ""
+"Sets the intensity of the reflection probe. Intensity modulates the strength "
+"of the reflection. Equivalent to [member ReflectionProbe.intensity]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2398
+msgid ""
+"Sets the max distance away from the probe an object can be before it is "
+"culled. Equivalent to [member ReflectionProbe.max_distance]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2409
+msgid ""
+"Sets the origin offset to be used when this reflection probe is in box "
+"project mode. Equivalent to [member ReflectionProbe.origin_offset]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2420
+msgid ""
+"Sets how often the reflection probe updates. Can either be once or every "
+"frame. See [enum ReflectionProbeUpdateMode] for options."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2433
+msgid ""
+"Schedules a callback to the corresponding named [code]method[/code] on "
+"[code]where[/code] after a frame has been drawn.\n"
+"The callback method must use only 1 argument which will be called with "
+"[code]userdata[/code]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2441
+msgid ""
+"Creates a scenario and adds it to the RenderingServer. It can be accessed "
+"with the RID that is returned. This RID will be used in all "
+"[code]scenario_*[/code] RenderingServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"RenderingServer's [method free_rid] static method.\n"
+"The scenario is the 3D world that all the visual instances exist in."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2454
+msgid ""
+"Sets the [enum ScenarioDebugMode] for this scenario. See [enum "
+"ScenarioDebugMode] for options."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2465
+msgid "Sets the environment that will be used with this scenario."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2476
+msgid ""
+"Sets the fallback environment to be used by this scenario. The fallback "
+"environment is used if no environment is set. Internally, this is used by "
+"the editor to provide a default environment."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2491
+msgid ""
+"Sets a boot image. The color defines the background color. If [code]scale[/"
+"code] is [code]true[/code], the image will be scaled to fit the screen size. "
+"If [code]use_filter[/code] is [code]true[/code], the image will be scaled "
+"with linear interpolation. If [code]use_filter[/code] is [code]false[/code], "
+"the image will be scaled with nearest-neighbor interpolation."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2500
+msgid ""
+"If [code]true[/code], the engine will generate wireframes for use with the "
+"wireframe debug mode."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2509
+msgid ""
+"Sets the default clear color which is used when a specific clear color has "
+"not been selected."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2516
+msgid ""
+"Creates an empty shader and adds it to the RenderingServer. It can be "
+"accessed with the RID that is returned. This RID will be used in all "
+"[code]shader_*[/code] RenderingServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"RenderingServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2526
+msgid "Returns a shader's code."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2537
+msgid "Returns a default texture from a shader searched by name."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2556
+msgid "Returns the parameters of a shader."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2567
+msgid "Sets a shader's code."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2580
+msgid "Sets a shader's default texture. Overwrites the texture given by name."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2593
+msgid "Allocates the GPU buffers for this skeleton."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2604
+msgid "Returns the [Transform] set for a specific bone of this skeleton."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2615
+msgid "Returns the [Transform2D] set for a specific bone of this skeleton."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2628
+msgid "Sets the [Transform] for a specific bone of this skeleton."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2641
+msgid "Sets the [Transform2D] for a specific bone of this skeleton."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2648
+msgid ""
+"Creates a skeleton and adds it to the RenderingServer. It can be accessed "
+"with the RID that is returned. This RID will be used in all "
+"[code]skeleton_*[/code] RenderingServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"RenderingServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2658
+msgid "Returns the number of bones allocated for this skeleton."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2665
+msgid ""
+"Creates an empty sky and adds it to the RenderingServer. It can be accessed "
+"with the RID that is returned. This RID will be used in all [code]sky_*[/"
+"code] RenderingServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"RenderingServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2677
+msgid ""
+"Sets the material that the sky uses to render the background and reflection "
+"maps."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2684
+msgid ""
+"Creates a spot light and adds it to the RenderingServer. It can be accessed "
+"with the RID that is returned. This RID can be used in most [code]light_*[/"
+"code] RenderingServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"RenderingServer's [method free_rid] static method.\n"
+"To place in a scene, attach this spot light to an instance using [method "
+"instance_set_base] using the returned RID."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2713
+msgid "Sets a viewport's camera."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2724
+msgid "Sets a viewport's canvas."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2737
+msgid ""
+"Copies the viewport to a region of the screen specified by [code]rect[/"
+"code]. If [method viewport_set_render_direct_to_screen] is [code]true[/"
+"code], then the viewport does not use a framebuffer and the contents of the "
+"viewport are rendered directly to screen. However, note that the root "
+"viewport is drawn last, therefore it will draw over the screen. Accordingly, "
+"you must set the root viewport to an area that does not cover the area that "
+"you have attached this viewport to.\n"
+"For example, you can set the root viewport to not render at all with the "
+"following code:\n"
+"[codeblock]\n"
+"func _ready():\n"
+" get_viewport().set_attach_to_screen_rect(Rect2())\n"
+" $Viewport.set_attach_to_screen_rect(Rect2(0, 0, 600, 600))\n"
+"[/codeblock]\n"
+"Using this can result in significant optimization, especially on lower-end "
+"devices. However, it comes at the cost of having to manage your viewports "
+"manually. For a further optimization see, [method "
+"viewport_set_render_direct_to_screen]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2751
+msgid ""
+"Creates an empty viewport and adds it to the RenderingServer. It can be "
+"accessed with the RID that is returned. This RID will be used in all "
+"[code]viewport_*[/code] RenderingServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"RenderingServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2763
+msgid ""
+"Returns a viewport's render information. For options, see the [enum "
+"ViewportRenderInfo] constants."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2772
+msgid "Returns the viewport's last rendered frame."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2783
+msgid "Detaches a viewport from a canvas and vice versa."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2794
+msgid "If [code]true[/code], sets the viewport active, else sets it inactive."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2809
+msgid ""
+"Sets the stacking order for a viewport's canvas.\n"
+"[code]layer[/code] is the actual canvas layer, while [code]sublayer[/code] "
+"specifies the stacking order of the canvas among those in the same layer."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2823
+msgid "Sets the transformation of a viewport's canvas."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2834
+msgid ""
+"Sets the clear mode of a viewport. See [enum ViewportClearMode] for options."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2845
+msgid ""
+"Sets the debug draw mode of a viewport. See [enum ViewportDebugDraw] for "
+"options."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2856
+msgid ""
+"If [code]true[/code], rendering of a viewport's environment is disabled."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2867
+msgid "Sets the viewport's global transformation matrix."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2878
+msgid "If [code]true[/code], the viewport's canvas is not rendered."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2889
+msgid "Currently unimplemented in Godot 3.x."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2900
+msgid "Sets the anti-aliasing mode. See [enum ViewportMSAA] for options."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2911
+msgid "Sets the viewport's parent to another viewport."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2922
+msgid ""
+"If [code]true[/code], render the contents of the viewport directly to "
+"screen. This allows a low-level optimization where you can skip drawing a "
+"viewport to the root viewport. While this optimization can result in a "
+"significant increase in speed (especially on older devices), it comes at a "
+"cost of usability. When this is enabled, you cannot read from the viewport "
+"or from the [code]SCREEN_TEXTURE[/code]. You also lose the benefit of "
+"certain window settings, such as the various stretch modes. Another "
+"consequence to be aware of is that in 2D the rendering happens in window "
+"coordinates, so if you have a viewport that is double the size of the "
+"window, and you set this, then only the portion that fits within the window "
+"will be drawn, no automatic scaling is possible, even if your game scene is "
+"significantly larger than the window size."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2933
+msgid ""
+"Sets a viewport's scenario.\n"
+"The scenario contains information about the [enum ScenarioDebugMode], "
+"environment information, reflection atlas etc."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2947
+msgid "Sets the shadow atlas quadrant's subdivision."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2958
+msgid ""
+"Sets the size of the shadow atlas's images (used for omni and spot lights). "
+"The value will be rounded up to the nearest power of 2."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2971
+msgid "Sets the viewport's width and height."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2982
+msgid ""
+"If [code]true[/code], the viewport renders its background as transparent."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2993
+msgid ""
+"Sets when the viewport should be updated. See [enum ViewportUpdateMode] "
+"constants for options."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3004
+msgid ""
+"If [code]true[/code], the viewport uses augmented or virtual reality "
+"technologies. See [XRInterface]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3010
+msgid ""
+"If [code]false[/code], disables rendering completely, but the engine logic "
+"is still being processed. You can call [method force_draw] to draw a frame "
+"even with rendering disabled."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3016
+msgid ""
+"Emitted at the end of the frame, after the RenderingServer has finished "
+"updating all the Viewports."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3021
+msgid ""
+"Emitted at the beginning of the frame, before the RenderingServer updates "
+"all the Viewports."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3027
+msgid "Marks an error that shows that the index array is empty."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3030
+msgid "Number of weights/bones per vertex."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3033
+msgid "The minimum Z-layer for canvas items."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3036
+msgid "The maximum Z-layer for canvas items."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3039
+msgid ""
+"Max number of glow levels that can be used with glow post-process effect."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3042
+msgid "Unused enum in Godot 3.x."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3063
+msgid "Shader is a 3D shader."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3066
+msgid "Shader is a 2D shader."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3069
+msgid "Shader is a particle shader."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3072
+msgid "Shader is a sky shader."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3075
+msgid "Represents the size of the [enum ShaderMode] enum."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3078
+msgid "The minimum renderpriority of all materials."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3081
+msgid "The maximum renderpriority of all materials."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3084
+msgid "Array is a vertex array."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3087
+msgid "Array is a normal array."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3090
+msgid "Array is a tangent array."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3093
+msgid "Array is a color array."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3096
+msgid "Array is an UV coordinates array."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3099
+msgid "Array is an UV coordinates array for the second UV coordinates."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3102
+msgid "Array contains bone information."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3105
+msgid "Array is weight information."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3108
+msgid "Array is index array."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3114
+msgid "Flag used to mark a vertex array."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3117
+msgid "Flag used to mark a normal array."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3120
+msgid "Flag used to mark a tangent array."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3123
+msgid "Flag used to mark a color array."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3126
+msgid "Flag used to mark an UV coordinates array."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3129
+msgid ""
+"Flag used to mark an UV coordinates array for the second UV coordinates."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3132
+msgid "Flag used to mark a bone information array."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3135
+msgid "Flag used to mark a weights array."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3138
+msgid "Flag used to mark an index array."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3167
+msgid "Primitive to draw consists of points."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3170
+msgid "Primitive to draw consists of lines."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3173
+msgid "Primitive to draw consists of a line strip from start to end."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3176
+msgid "Primitive to draw consists of triangles."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3179
+msgid ""
+"Primitive to draw consists of a triangle strip (the last 3 vertices are "
+"always combined to make a triangle)."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3182
+msgid "Represents the size of the [enum PrimitiveType] enum."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3191
+msgid "Use [Transform2D] to store MultiMesh transform."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3194
+msgid "Use [Transform] to store MultiMesh transform."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3197
+msgid "Is a directional (sun) light."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3200
+msgid "Is an omni light."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3203
+msgid "Is a spot light."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3206
+msgid "The light's energy."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3211
+msgid "The light's influence on specularity."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3214
+msgid "The light's range."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3217
+msgid ""
+"The size of the light when using spot light or omni light. The angular size "
+"of the light when using directional light."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3220
+msgid "The light's attenuation."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3223
+msgid "The spotlight's angle."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3226
+msgid "The spotlight's attenuation."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3229
+msgid "Max distance that shadows will be rendered."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3232
+msgid "Proportion of shadow atlas occupied by the first split."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3235
+msgid "Proportion of shadow atlas occupied by the second split."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3238
+msgid ""
+"Proportion of shadow atlas occupied by the third split. The fourth split "
+"occupies the rest."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3241
+msgid ""
+"Proportion of shadow max distance where the shadow will start to fade out."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3244
+msgid ""
+"Normal bias used to offset shadow lookup by object normal. Can be used to "
+"fix self-shadowing artifacts."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3247
+msgid "Bias the shadow lookup to fix self-shadowing artifacts."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3253
+msgid ""
+"Blurs the edges of the shadow. Can be used to hide pixel artifacts in low "
+"resolution shadow maps. A high value can make shadows appear grainy and can "
+"cause other unwanted artifacts. Try to keep as near default as possible."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3258
+msgid "Represents the size of the [enum LightParam] enum."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3267
+msgid "Use a dual paraboloid shadow map for omni lights."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3270
+msgid ""
+"Use a cubemap shadow map for omni lights. Slower but better quality than "
+"dual paraboloid."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3273
+msgid "Use orthogonal shadow projection for directional light."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3276
+msgid "Use 2 splits for shadow projection when using directional light."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3279
+msgid "Use 4 splits for shadow projection when using directional light."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3282
+msgid ""
+"Keeps shadows stable as camera moves but has lower effective resolution."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3285
+msgid ""
+"Optimize use of shadow maps, increasing the effective resolution. But may "
+"result in shadows moving or flickering slightly."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3288
+msgid "Reflection probe will update reflections once and then stop."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3291
+msgid ""
+"Reflection probe will update each frame. This mode is necessary to capture "
+"moving objects."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3310
+msgid "Draw particles in the order that they appear in the particles array."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3313
+msgid "Sort particles based on their lifetime."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3316
+msgid "Sort particles based on their distance to the camera."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3319
+msgid "Do not update the viewport."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3322
+msgid "Update the viewport once then set to disabled."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3325
+msgid "Update the viewport whenever it is visible."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3330
+msgid "Always update the viewport."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3333
+msgid "The viewport is always cleared before drawing."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3336
+msgid "The viewport is never cleared before drawing."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3339
+msgid ""
+"The viewport is cleared once, then the clear mode is set to [constant "
+"VIEWPORT_CLEAR_NEVER]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3342
+msgid "Multisample antialiasing is disabled."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3345
+msgid "Multisample antialiasing uses 2 samples per pixel."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3348
+msgid "Multisample antialiasing uses 4 samples per pixel."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3351
+msgid "Multisample antialiasing uses 8 samples per pixel."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3354
+msgid "Multisample antialiasing uses 16 samples per pixel."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3365
+msgid "Number of objects drawn in a single frame."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3368
+msgid "Number of vertices drawn in a single frame."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3371
+msgid "Number of material changes during this frame."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3374
+msgid "Number of shader changes during this frame."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3377
+msgid "Number of surface changes during this frame."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3380
+msgid "Number of draw calls during this frame."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3383
+msgid "Represents the size of the [enum ViewportRenderInfo] enum."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3386
+msgid "Debug draw is disabled. Default setting."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3389 doc/classes/Viewport.xml:348
+msgid "Objects are displayed without light information."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3392
+msgid "Objects are displayed with only light information."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3395 doc/classes/Viewport.xml:353
+msgid ""
+"Objects are displayed semi-transparent with additive blending so you can see "
+"where they are drawing over top of one another. A higher overdraw means you "
+"are wasting performance on drawing pixels that are being hidden behind "
+"others."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3398
+msgid "Debug draw draws objects in wireframe."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3401
+msgid ""
+"Normal buffer is drawn instead of regular scene so you can see the per-pixel "
+"normals that will be used by post-processing effects."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3404 doc/classes/Viewport.xml:361
+msgid "Objects are displayed with only the albedo value from [GIProbe]s."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3407 doc/classes/Viewport.xml:364
+msgid "Objects are displayed with only the lighting value from [GIProbe]s."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3410 doc/classes/Viewport.xml:367
+msgid "Objects are displayed with only the emission color from [GIProbe]s."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3413 doc/classes/Viewport.xml:370
+msgid ""
+"Draws the shadow atlas that stores shadows from [OmniLight3D]s and "
+"[SpotLight3D]s in the upper left quadrant of the [Viewport]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3416 doc/classes/Viewport.xml:373
+msgid ""
+"Draws the shadow atlas that stores shadows from [DirectionalLight3D]s in the "
+"upper left quadrant of the [Viewport]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3421
+msgid ""
+"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 [member Environment.ssao_enabled] set in "
+"your [WorldEnvironment]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3424
+msgid ""
+"Colors each PSSM split for the [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."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3435
+msgid ""
+"Uses high quality importance sampling to process the radiance map. In "
+"general, this results in much higher quality than [constant Sky."
+"PROCESS_MODE_REALTIME] but takes much longer to generate. This should not be "
+"used if you plan on changing the sky at runtime. If you are finding that the "
+"reflection is not blurry enough and is showing sparkles or fireflies, try "
+"increasing [member ProjectSettings.rendering/quality/reflections/"
+"ggx_samples]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3438
+msgid ""
+"Uses the fast filtering algorithm to process the radiance map. In general "
+"this results in lower quality, but substantially faster run times.\n"
+"[b]Note:[/b] The fast filtering algorithm is limited to 256x256 cubemaps, so "
+"[member Sky.radiance_size] must be set to [constant Sky.RADIANCE_SIZE_256]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3442
+msgid "Use the clear color as background."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3445
+msgid "Use a specified color as the background."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3448
+msgid "Use a sky resource for the background."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3451
+msgid ""
+"Use a specified canvas layer as the background. This can be useful for "
+"instantiating a 2D scene in a 3D world."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3454
+msgid ""
+"Do not clear the background, use whatever was rendered last frame as the "
+"background."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3460
+msgid "Represents the size of the [enum EnvironmentBG] enum."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3499
+msgid "Output color as they came in."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3502
+msgid "Use the Reinhard tonemapper."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3505
+msgid "Use the filmic tonemapper."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3508
+msgid "Use the ACES tonemapper."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3519
+msgid "Disables the blur set for SSAO. Will make SSAO look noisier."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3522
+msgid "Perform a 1x1 blur on the SSAO output."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3525
+msgid "Performs a 2x2 blur on the SSAO output."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3528
+msgid "Performs a 3x3 blur on the SSAO output. Use this for smoothest SSAO."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3531
+msgid "Lowest quality of screen space ambient occlusion."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3534
+msgid "Medium quality screen space ambient occlusion."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3537
+msgid "High quality screen space ambient occlusion."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3540
+msgid "Highest quality screen space ambient occlusion."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3551
+msgid ""
+"Lowest quality DOF blur. This is the fastest setting, but you may be able to "
+"see filtering artifacts."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3554
+msgid "Low quality DOF blur."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3557
+msgid "Medium quality DOF blur."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3560
+msgid ""
+"Highest quality DOF blur. Results in the smoothest looking blur by taking "
+"the most samples, but is also significantly slower."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3563
+msgid ""
+"Calculate the DOF blur using a box filter. The fastest option, but results "
+"in obvious lines in blur pattern."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3566
+msgid "Calculates DOF blur using a hexagon shaped filter."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3569
+msgid ""
+"Calculates DOF blur using a circle shaped filter. Best quality and most "
+"realistic, but slowest. Use only for areas where a lot of performance can be "
+"dedicated to post-processing (e.g. cutscenes)."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3584
+msgid "Do not use a debug mode."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3587
+msgid "Draw all objects as wireframe models."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3590
+msgid ""
+"Draw all objects in a way that displays how much overdraw is occurring. "
+"Overdraw occurs when a section of pixels is drawn and shaded and then "
+"another object covers it up. To optimize a scene, you should reduce overdraw."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3593
+msgid ""
+"Draw all objects without shading. Equivalent to setting all objects shaders "
+"to [code]unshaded[/code]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3596
+msgid "The instance does not have a type."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3599
+msgid "The instance is a mesh."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3602
+msgid "The instance is a multimesh."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3605
+msgid "The instance is an immediate geometry."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3608
+msgid "The instance is a particle emitter."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3611
+msgid "The instance is a light."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3614
+msgid "The instance is a reflection probe."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3617
+msgid "The instance is a decal."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3620
+msgid "The instance is a GI probe."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3623
+msgid "The instance is a lightmap."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3626
+msgid "Represents the size of the [enum InstanceType] enum."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3629
+msgid ""
+"A combination of the flags of geometry instances (mesh, multimesh, immediate "
+"and particles)."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3632
+msgid "Allows the instance to be used in baked lighting."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3635
+msgid "Allows the instance to be used with dynamic global illumination."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3638
+msgid "When set, manually requests to draw geometry on next frame."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3641
+msgid "Represents the size of the [enum InstanceFlags] enum."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3644
+msgid "Disable shadows from this instance."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3647
+msgid "Cast shadows from this instance."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3650
+msgid ""
+"Disable backface culling when rendering the shadow of the object. This is "
+"slightly slower but may result in more correct shadows."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3653
+msgid ""
+"Only render the shadows from the object. The object itself will not be drawn."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3656
+msgid "The nine patch gets stretched where needed."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3659
+msgid "The nine patch gets filled with tiles where needed."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3662
+msgid ""
+"The nine patch gets filled with tiles where needed and stretches them a bit "
+"if needed."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3665
+msgid "Uses the default filter mode for this [Viewport]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3677 doc/classes/Viewport.xml:402
+msgid ""
+"The texture filter blends between the nearest 4 pixels and between the "
+"nearest 2 mipmaps."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3686
+msgid "Max value for [enum CanvasItemTextureFilter] enum."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3689
+msgid "Uses the default repeat mode for this [Viewport]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3692 doc/classes/Viewport.xml:408
+msgid ""
+"Disables textures repeating. Instead, when reading UVs outside the 0-1 "
+"range, the value will be clamped to the edge of the texture, resulting in a "
+"stretched out look at the borders of the texture."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3698 doc/classes/Viewport.xml:414
+msgid ""
+"Flip the texture when repeating so that the edge lines up instead of "
+"abruptly changing."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3701
+msgid "Max value for [enum CanvasItemTextureRepeat] enum."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3704
+msgid "Adds light color additive to the canvas."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3707
+msgid "Adds light color subtractive to the canvas."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3710
+msgid "The light adds color depending on transparency."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3713
+msgid "The light adds color depending on mask."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3716
+msgid "Do not apply a filter to canvas light shadows."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3719
+msgid "Use PCF5 filtering to filter canvas light shadows."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3722
+msgid "Use PCF13 filtering to filter canvas light shadows."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3725
+msgid "Max value of the [enum CanvasLightShadowFilter] enum."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3728
+msgid "Culling of the canvas occluder is disabled."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3731
+msgid "Culling of the canvas occluder is clockwise."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3734
+msgid "Culling of the canvas occluder is counterclockwise."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3795
+msgid "The amount of objects in the frame."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3798
+msgid "The amount of vertices in the frame."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3801
+msgid "The amount of modified materials in the frame."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3804
+msgid "The amount of shader rebinds in the frame."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3807
+msgid "The amount of surface changes in the frame."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3810
+msgid "The amount of draw calls in frame."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3825
+msgid "Hardware supports shaders. This enum is currently unused in Godot 3.x."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3828
+msgid ""
+"Hardware supports multithreading. This enum is currently unused in Godot 3.x."
+msgstr ""
+
+#: doc/classes/Resource.xml:4
+msgid "Base class for all resources."
+msgstr ""
+
+#: doc/classes/Resource.xml:7
+msgid ""
+"Resource is the base class for all Godot-specific resource types, serving "
+"primarily as data containers. Unlike [Object]s, they are reference-counted "
+"and freed when no longer in use. They are also cached once loaded from disk, "
+"so that any further attempts to load a resource from a given path will "
+"return the same reference (all this in contrast to a [Node], which is not "
+"reference-counted and can be instanced from disk as many times as desired). "
+"Resources can be saved externally on disk or bundled into another object, "
+"such as a [Node] or another resource."
+msgstr ""
+
+#: doc/classes/Resource.xml:10
+msgid ""
+"https://docs.godotengine.org/en/latest/getting_started/step_by_step/"
+"resources.html"
+msgstr ""
+
+#: doc/classes/Resource.xml:18
+msgid ""
+"Virtual function which can be overridden to customize the behavior value of "
+"[method setup_local_to_scene]."
+msgstr ""
+
+#: doc/classes/Resource.xml:27
+msgid ""
+"Duplicates the resource, returning a new resource. By default, sub-resources "
+"are shared between resource copies for efficiency. This can be changed by "
+"passing [code]true[/code] to the [code]subresources[/code] argument which "
+"will copy the subresources.\n"
+"[b]Note:[/b] If [code]subresources[/code] is [code]true[/code], this method "
+"will only perform a shallow copy. Nested resources within subresources will "
+"not be duplicated and will still be shared."
+msgstr ""
+
+#: doc/classes/Resource.xml:35
+msgid ""
+"If [member resource_local_to_scene] is enabled and the resource was loaded "
+"from a [PackedScene] instantiation, returns the local scene where this "
+"resource's unique copy is in use. Otherwise, returns [code]null[/code]."
+msgstr ""
+
+#: doc/classes/Resource.xml:42
+msgid ""
+"Returns the RID of the resource (or an empty RID). Many resources (such as "
+"[Texture2D], [Mesh], etc) are high-level abstractions of resources stored in "
+"a server, so this function will return the original RID."
+msgstr ""
+
+#: doc/classes/Resource.xml:49
+msgid ""
+"This method is called when a resource with [member resource_local_to_scene] "
+"enabled is loaded from a [PackedScene] instantiation. Its behavior can be "
+"customized by overriding [method _setup_local_to_scene] from script.\n"
+"For most resources, this method performs no base logic. [ViewportTexture] "
+"performs custom logic to properly set the proxy texture and flags in the "
+"local viewport."
+msgstr ""
+
+#: doc/classes/Resource.xml:59
+msgid ""
+"Sets the path of the resource, potentially overriding an existing cache "
+"entry for this path. This differs from setting [member resource_path], as "
+"the latter would error out if another resource was already cached for the "
+"given path."
+msgstr ""
+
+#: doc/classes/Resource.xml:65
+msgid ""
+"If [code]true[/code], the resource will be made unique in each instance of "
+"its local scene. It can thus be modified in a scene instance without "
+"impacting other instances of that same scene."
+msgstr ""
+
+#: doc/classes/Resource.xml:68
+msgid "The name of the resource. This is an optional identifier."
+msgstr ""
+
+#: doc/classes/Resource.xml:71
+msgid ""
+"The path to the resource. In case it has its own file, it will return its "
+"filepath. If it's tied to the scene, it will return the scene's path, "
+"followed by the resource's index."
+msgstr ""
+
+#: doc/classes/Resource.xml:77
+msgid "Emitted whenever the resource changes."
+msgstr ""
+
+#: doc/classes/ResourceFormatLoader.xml:4
+msgid "Loads a specific resource type from a file."
+msgstr ""
+
+#: doc/classes/ResourceFormatLoader.xml:7
+msgid ""
+"Godot loads resources in the editor or in exported games using "
+"ResourceFormatLoaders. They are queried automatically via the "
+"[ResourceLoader] singleton, or when a resource with internal dependencies is "
+"loaded. Each file type may load as a different resource type, so multiple "
+"ResourceFormatLoaders are registered in the engine.\n"
+"Extending this class allows you to define your own loader. Be sure to "
+"respect the documented return types and values. You should give it a global "
+"class name with [code]class_name[/code] for it to be registered. Like built-"
+"in ResourceFormatLoaders, it will be called automatically when loading "
+"resources of its handled type(s). You may also implement a "
+"[ResourceFormatSaver].\n"
+"[b]Note:[/b] You can also extend [EditorImportPlugin] if the resource type "
+"you need exists but Godot is unable to load its format. Choosing one way "
+"over another depends if the format is suitable or not for the final exported "
+"game. For example, it's better to import [code].png[/code] textures as "
+"[code].stex[/code] ([StreamTexture2D]) first, so they can be loaded with "
+"better efficiency on the graphics card."
+msgstr ""
+
+#: doc/classes/ResourceFormatLoader.xml:22
+msgid ""
+"If implemented, gets the dependencies of a given resource. If "
+"[code]add_types[/code] is [code]true[/code], paths should be appended "
+"[code]::TypeName[/code], where [code]TypeName[/code] is the class name of "
+"the dependency.\n"
+"[b]Note:[/b] Custom resource types defined by scripts aren't known by the "
+"[ClassDB], so you might just return [code]\"Resource\"[/code] for them."
+msgstr ""
+
+#: doc/classes/ResourceFormatLoader.xml:30
+msgid "Gets the list of extensions for files this loader is able to read."
+msgstr ""
+
+#: doc/classes/ResourceFormatLoader.xml:39
+msgid ""
+"Gets the class name of the resource associated with the given path. If the "
+"loader cannot handle it, it should return [code]\"\"[/code].\n"
+"[b]Note:[/b] Custom resource types defined by scripts aren't known by the "
+"[ClassDB], so you might just return [code]\"Resource\"[/code] for them."
+msgstr ""
+
+#: doc/classes/ResourceFormatLoader.xml:49
+msgid ""
+"Tells which resource class this loader can load.\n"
+"[b]Note:[/b] Custom resource types defined by scripts aren't known by the "
+"[ClassDB], so you might just handle [code]\"Resource\"[/code] for them."
+msgstr ""
+
+#: doc/classes/ResourceFormatLoader.xml:61
+msgid ""
+"Loads a resource when the engine finds this loader to be compatible. If the "
+"loaded resource is the result of an import, [code]original_path[/code] will "
+"target the source file. Returns a [Resource] object on success, or an [enum "
+"Error] constant in case of failure."
+msgstr ""
+
+#: doc/classes/ResourceFormatLoader.xml:72
+msgid ""
+"If implemented, renames dependencies within the given resource and saves it. "
+"[code]renames[/code] is a dictionary [code]{ String => String }[/code] "
+"mapping old dependency paths to new paths.\n"
+"Returns [constant OK] on success, or an [enum Error] constant in case of "
+"failure."
+msgstr ""
+
+#: doc/classes/ResourceFormatSaver.xml:4
+msgid "Saves a specific resource type to a file."
+msgstr ""
+
+#: doc/classes/ResourceFormatSaver.xml:7
+msgid ""
+"The engine can save resources when you do it from the editor, or when you "
+"use the [ResourceSaver] singleton. This is accomplished thanks to multiple "
+"[ResourceFormatSaver]s, each handling its own format and called "
+"automatically by the engine.\n"
+"By default, Godot saves resources as [code].tres[/code] (text-based), [code]."
+"res[/code] (binary) or another built-in format, but you can choose to create "
+"your own format by extending this class. Be sure to respect the documented "
+"return types and values. You should give it a global class name with "
+"[code]class_name[/code] for it to be registered. Like built-in "
+"ResourceFormatSavers, it will be called automatically when saving resources "
+"of its recognized type(s). You may also implement a [ResourceFormatLoader]."
+msgstr ""
+
+#: doc/classes/ResourceFormatSaver.xml:19
+msgid ""
+"Returns the list of extensions available for saving the resource object, "
+"provided it is recognized (see [method recognize])."
+msgstr ""
+
+#: doc/classes/ResourceFormatSaver.xml:28
+msgid "Returns whether the given resource object can be saved by this saver."
+msgstr ""
+
+#: doc/classes/ResourceFormatSaver.xml:41
+msgid ""
+"Saves the given resource object to a file at the target [code]path[/code]. "
+"[code]flags[/code] is a bitmask composed with [enum ResourceSaver."
+"SaverFlags] constants.\n"
+"Returns [constant OK] on success, or an [enum Error] constant in case of "
+"failure."
+msgstr ""
+
+#: doc/classes/ResourceLoader.xml:4
+msgid "Singleton used to load resource files."
+msgstr ""
+
+#: doc/classes/ResourceLoader.xml:7
+msgid ""
+"Singleton used to load resource files from the filesystem.\n"
+"It uses the many [ResourceFormatLoader] classes registered in the engine "
+"(either built-in or from a plugin) to load files into memory and convert "
+"them to a format that can be used by the engine.\n"
+"GDScript has a simplified [method @GDScript.load] built-in method which can "
+"be used in most situations, leaving the use of [ResourceLoader] for more "
+"advanced scenarios."
+msgstr ""
+
+#: doc/classes/ResourceLoader.xml:22
+msgid ""
+"Returns whether a recognized resource exists for the given [code]path[/"
+"code].\n"
+"An optional [code]type_hint[/code] can be used to further specify the "
+"[Resource] type that should be handled by the [ResourceFormatLoader]."
+msgstr ""
+
+#: doc/classes/ResourceLoader.xml:32
+msgid ""
+"Returns the dependencies for the resource at the given [code]path[/code]."
+msgstr ""
+
+#: doc/classes/ResourceLoader.xml:41
+msgid "Returns the list of recognized extensions for a resource type."
+msgstr ""
+
+#: doc/classes/ResourceLoader.xml:50
+msgid ""
+"Returns whether a cached resource is available for the given [code]path[/"
+"code].\n"
+"Once a resource has been loaded by the engine, it is cached in memory for "
+"faster access, and future calls to the [method load] method will use the "
+"cached version. The cached resource can be overridden by using [method "
+"Resource.take_over_path] on a new resource for that same path."
+msgstr ""
+
+#: doc/classes/ResourceLoader.xml:64
+msgid ""
+"Loads a resource at the given [code]path[/code], caching the result for "
+"further access.\n"
+"The registered [ResourceFormatLoader]s are queried sequentially to find the "
+"first one which can handle the file's extension, and then attempt loading. "
+"If loading fails, the remaining ResourceFormatLoaders are also attempted.\n"
+"An optional [code]type_hint[/code] can be used to further specify the "
+"[Resource] type that should be handled by the [ResourceFormatLoader].\n"
+"If [code]no_cache[/code] is [code]true[/code], the resource cache will be "
+"bypassed and the resource will be loaded anew. Otherwise, the cached "
+"resource will be returned if it exists.\n"
+"Returns an empty resource if no ResourceFormatLoader could handle the file."
+msgstr ""
+
+#: doc/classes/ResourceLoader.xml:77
+msgid ""
+"Returns the resource loaded by [method load_threaded_request].\n"
+"If this is called before the loading thread is done (i.e. [method "
+"load_threaded_get_status] is not [constant THREAD_LOAD_LOADED]), the calling "
+"thread will be blocked until the resource has finished loading."
+msgstr ""
+
+#: doc/classes/ResourceLoader.xml:89
+msgid ""
+"Returns the status of a threaded loading operation started with [method "
+"load_threaded_request] for the resource at [code]path[/code]. See [enum "
+"ThreadLoadStatus] for possible return values.\n"
+"An array variable can optionally be passed via [code]progress[/code], and "
+"will return a one-element array containing the percentage of completion of "
+"the threaded loading."
+msgstr ""
+
+#: doc/classes/ResourceLoader.xml:103
+msgid ""
+"Loads the resource using threads. If [code]use_sub_threads[/code] is "
+"[code]true[/code], multiple threads will be used to load the resource, which "
+"makes loading faster, but may affect the main thread (and thus cause game "
+"slowdowns)."
+msgstr ""
+
+#: doc/classes/ResourceLoader.xml:112
+msgid ""
+"Changes the behavior on missing sub-resources. The default behavior is to "
+"abort loading."
+msgstr ""
+
+#: doc/classes/ResourceLoader.xml:118
+msgid ""
+"The resource is invalid, or has not been loaded with [method "
+"load_threaded_request]."
+msgstr ""
+
+#: doc/classes/ResourceLoader.xml:121
+msgid "The resource is still being loaded."
+msgstr ""
+
+#: doc/classes/ResourceLoader.xml:124
+msgid "Some error occurred during loading and it failed."
+msgstr ""
+
+#: doc/classes/ResourceLoader.xml:127
+msgid ""
+"The resource was loaded successfully and can be accessed via [method "
+"load_threaded_get]."
+msgstr ""
+
+#: doc/classes/ResourcePreloader.xml:4
+msgid "Resource Preloader Node."
+msgstr ""
+
+#: doc/classes/ResourcePreloader.xml:7
+msgid ""
+"This node is used to preload sub-resources inside a scene, so when the scene "
+"is loaded, all the resources are ready to use and can be retrieved from the "
+"preloader.\n"
+"GDScript has a simplified [method @GDScript.preload] built-in method which "
+"can be used in most situations, leaving the use of [ResourcePreloader] for "
+"more advanced scenarios."
+msgstr ""
+
+#: doc/classes/ResourcePreloader.xml:21
+msgid ""
+"Adds a resource to the preloader with the given [code]name[/code]. If a "
+"resource with the given [code]name[/code] already exists, the new resource "
+"will be renamed to \"[code]name[/code] N\" where N is an incrementing number "
+"starting from 2."
+msgstr ""
+
+#: doc/classes/ResourcePreloader.xml:30
+msgid "Returns the resource associated to [code]name[/code]."
+msgstr ""
+
+#: doc/classes/ResourcePreloader.xml:37
+msgid "Returns the list of resources inside the preloader."
+msgstr ""
+
+#: doc/classes/ResourcePreloader.xml:46
+msgid ""
+"Returns [code]true[/code] if the preloader contains a resource associated to "
+"[code]name[/code]."
+msgstr ""
+
+#: doc/classes/ResourcePreloader.xml:55
+msgid ""
+"Removes the resource associated to [code]name[/code] from the preloader."
+msgstr ""
+
+#: doc/classes/ResourcePreloader.xml:66
+msgid ""
+"Renames a resource inside the preloader from [code]name[/code] to "
+"[code]newname[/code]."
+msgstr ""
+
+#: doc/classes/ResourceSaver.xml:4
+msgid "Singleton for saving Godot-specific resource types."
+msgstr ""
+
+#: doc/classes/ResourceSaver.xml:7
+msgid ""
+"Singleton for saving Godot-specific resource types to the filesystem.\n"
+"It uses the many [ResourceFormatSaver] classes registered in the engine "
+"(either built-in or from a plugin) to save engine-specific resource data to "
+"text-based (e.g. [code].tres[/code] or [code].tscn[/code]) or binary files "
+"(e.g. [code].res[/code] or [code].scn[/code])."
+msgstr ""
+
+#: doc/classes/ResourceSaver.xml:19
+msgid ""
+"Returns the list of extensions available for saving a resource of a given "
+"type."
+msgstr ""
+
+#: doc/classes/ResourceSaver.xml:32
+msgid ""
+"Saves a resource to disk to the given path, using a [ResourceFormatSaver] "
+"that recognizes the resource object.\n"
+"The [code]flags[/code] bitmask can be specified to customize the save "
+"behavior.\n"
+"Returns [constant OK] on success."
+msgstr ""
+
+#: doc/classes/ResourceSaver.xml:40
+msgid "Save the resource with a path relative to the scene which uses it."
+msgstr ""
+
+#: doc/classes/ResourceSaver.xml:43
+msgid "Bundles external resources."
+msgstr ""
+
+#: doc/classes/ResourceSaver.xml:46
+msgid ""
+"Changes the [member Resource.resource_path] of the saved resource to match "
+"its new location."
+msgstr ""
+
+#: doc/classes/ResourceSaver.xml:49
+msgid ""
+"Do not save editor-specific metadata (identified by their [code]__editor[/"
+"code] prefix)."
+msgstr ""
+
+#: doc/classes/ResourceSaver.xml:52
+msgid "Save as big endian (see [member File.endian_swap])."
+msgstr ""
+
+#: doc/classes/ResourceSaver.xml:55
+msgid ""
+"Compress the resource on save using [constant File.COMPRESSION_ZSTD]. Only "
+"available for binary resource types."
+msgstr ""
+
+#: doc/classes/ResourceSaver.xml:58
+msgid ""
+"Take over the paths of the saved subresources (see [method Resource."
+"take_over_path])."
+msgstr ""
+
+#: doc/classes/RichTextEffect.xml:4
+msgid "A custom effect for use with [RichTextLabel]."
+msgstr ""
+
+#: doc/classes/RichTextEffect.xml:7
+msgid ""
+"A custom effect for use with [RichTextLabel].\n"
+"[b]Note:[/b] For a [RichTextEffect] to be usable, a BBCode tag must be "
+"defined as a member variable called [code]bbcode[/code] in the script.\n"
+"[codeblock]\n"
+"# The RichTextEffect will be usable like this: `[example]Some text[/"
+"example]`\n"
+"var bbcode = \"example\"\n"
+"[/codeblock]\n"
+"[b]Note:[/b] As soon as a [RichTextLabel] contains at least one "
+"[RichTextEffect], it will continuously process the effect unless the project "
+"is paused. This may impact battery life negatively."
+msgstr ""
+
+#: doc/classes/RichTextEffect.xml:26
+msgid ""
+"Override this method to modify properties in [code]char_fx[/code]. The "
+"method must return [code]true[/code] if the character could be transformed "
+"successfully. If the method returns [code]false[/code], it will skip "
+"transformation to avoid displaying broken text."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:4
+msgid "Label that displays rich text."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:7
+msgid ""
+"Rich text can contain custom text, fonts, images and some basic formatting. "
+"The label manages these as an internal tag stack. It also adapts itself to "
+"given width/heights.\n"
+"[b]Note:[/b] Assignments to [member bbcode_text] clear the tag stack and "
+"reconstruct it from the property's contents. Any edits made to [member "
+"bbcode_text] will erase previous edits made from other manual sources such "
+"as [method append_bbcode] and the [code]push_*[/code] / [method pop] methods."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:26
+msgid ""
+"Adds an image's opening and closing tags to the tag stack, optionally "
+"providing a [code]width[/code] and [code]height[/code] to resize the image "
+"and a [code]color[/code] to tint the image.\n"
+"If [code]width[/code] or [code]height[/code] is set to 0, the image size "
+"will be adjusted in order to keep the original aspect ratio."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:36
+msgid "Adds raw non-BBCode-parsed text to the tag stack."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:45
+msgid ""
+"Parses [code]bbcode[/code] and adds tags to the tag stack as needed. Returns "
+"the result of the parsing, [constant OK] if successful."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:52
+msgid "Clears the tag stack and sets [member bbcode_text] to an empty string."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:59
+msgid "Returns the height of the content."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:66
+msgid ""
+"Returns the total number of newlines in the tag stack's text tags. Considers "
+"wrapped text as one line."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:73
+msgid ""
+"Returns the total number of characters from text tags. Does not include "
+"BBCodes."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:80
+msgid "Returns the vertical scrollbar."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:87
+msgid "Returns the number of visible lines."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:96
+msgid ""
+"Installs a custom effect. [code]effect[/code] should be a valid "
+"[RichTextEffect]."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:103
+msgid "Adds a newline tag to the tag stack."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:112
+msgid ""
+"The assignment version of [method append_bbcode]. Clears the tag stack and "
+"inserts the new content. Returns [constant OK] if parses [code]bbcode[/code] "
+"successfully."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:121
+msgid "Parses BBCode parameter [code]expressions[/code] into a dictionary."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:128
+msgid ""
+"Terminates the current tag. Use after [code]push_*[/code] methods to close "
+"BBCodes manually. Does not need to follow [code]add_*[/code] methods."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:137
+msgid ""
+"Adds an [code][align][/code] tag based on the given [code]align[/code] "
+"value. See [enum Align] for possible values."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:144
+msgid ""
+"Adds a [code][font][/code] tag with a bold font to the tag stack. This is "
+"the same as adding a [code][b][/code] tag if not currently in a [code][i][/"
+"code] tag."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:151
+msgid ""
+"Adds a [code][font][/code] tag with a bold italics font to the tag stack."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:158
+msgid ""
+"Adds a [code][cell][/code] tag to the tag stack. Must be inside a [code]"
+"[table][/code] tag. See [method push_table] for details."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:167
+msgid "Adds a [code][color][/code] tag to the tag stack."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:176
+msgid ""
+"Adds a [code][font][/code] tag to the tag stack. Overrides default fonts for "
+"its duration."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:185
+msgid ""
+"Adds an [code][indent][/code] tag to the tag stack. Multiplies [code]level[/"
+"code] by current [member tab_size] to determine new margin length."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:192
+msgid ""
+"Adds a [code][font][/code] tag with a italics font to the tag stack. This is "
+"the same as adding a [code][i][/code] tag if not currently in a [code][b][/"
+"code] tag."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:201
+msgid ""
+"Adds a [code][list][/code] tag to the tag stack. Similar to the BBCodes "
+"[code][ol][/code] or [code][ul][/code], but supports more list types. Not "
+"fully implemented!"
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:210
+msgid ""
+"Adds a [code][meta][/code] tag to the tag stack. Similar to the BBCode [code]"
+"[url=something]{text}[/url][/code], but supports non-[String] metadata types."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:217
+msgid "Adds a [code][font][/code] tag with a monospace font to the tag stack."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:224
+msgid "Adds a [code][font][/code] tag with a normal font to the tag stack."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:231
+msgid "Adds a [code][s][/code] tag to the tag stack."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:240
+msgid "Adds a [code][table=columns][/code] tag to the tag stack."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:247
+msgid "Adds a [code][u][/code] tag to the tag stack."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:256
+msgid ""
+"Removes a line of content from the label. Returns [code]true[/code] if the "
+"line exists.\n"
+"The [code]line[/code] argument is the index of the line to remove, it can "
+"take values in the interval [code][0, get_line_count() - 1][/code]."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:266
+msgid "Scrolls the window's top line to match [code]line[/code]."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:279
+msgid ""
+"Edits the selected column's expansion options. If [code]expand[/code] is "
+"[code]true[/code], the column expands in proportion to its expansion ratio "
+"versus the other columns' ratios.\n"
+"For example, 2 columns with ratios 3 and 4 plus 70 pixels in available width "
+"would expand 30 and 40 pixels, respectively.\n"
+"If [code]expand[/code] is [code]false[/code], the column will not contribute "
+"to the total ratio."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:287
+msgid "If [code]true[/code], the label uses BBCode formatting."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:290
+msgid ""
+"The label's text in BBCode format. Is not representative of manual "
+"modifications to the internal tag stack. Erases changes made by other "
+"methods when edited.\n"
+"[b]Note:[/b] It is unadvised to use [code]+=[/code] operator with "
+"[code]bbcode_text[/code] (e.g. [code]bbcode_text += \"some string\"[/code]) "
+"as it replaces the whole text and can cause slowdowns. Use [method "
+"append_bbcode] for adding text instead."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:294
+msgid ""
+"The currently installed custom effects. This is an array of "
+"[RichTextEffect]s.\n"
+"To add a custom effect, it's more convenient to use [method install_effect]."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:298
+msgid ""
+"If [code]true[/code], the label's height will be automatically updated to "
+"fit its content.\n"
+"[b]Note:[/b] This property is used as a workaround to fix issues with "
+"[RichTextLabel] in [Container]s, but it's unreliable in some cases and will "
+"be removed in future versions."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:302
+msgid ""
+"If [code]true[/code], the label underlines meta tags such as [code][url]"
+"{text}[/url][/code]."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:305
+msgid "If [code]true[/code], the label uses the custom font color."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:308
+msgid ""
+"The range of characters to display, as a [float] between 0.0 and 1.0. When "
+"assigned an out of range value, it's the same as assigning 1.0.\n"
+"[b]Note:[/b] Setting this property updates [member visible_characters] based "
+"on current [method get_total_character_count]."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:313
+msgid ""
+"If [code]true[/code], the scrollbar is visible. Setting this to [code]false[/"
+"code] does not block scrolling completely. See [method scroll_to_line]."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:316
+msgid ""
+"If [code]true[/code], the window scrolls down to display new content "
+"automatically."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:319
+msgid "If [code]true[/code], the label allows text selection."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:322
+msgid ""
+"The number of spaces associated with a single tab length. Does not affect "
+"[code]\\t[/code] in text tags, only indent tags."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:325
+msgid ""
+"The raw text of the label.\n"
+"When set, clears the tag stack and adds a raw text tag to the top of it. "
+"Does not parse BBCodes. Does not modify [member bbcode_text]."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:329
+msgid ""
+"The restricted number of characters to display in the label. If [code]-1[/"
+"code], all characters will be displayed."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:337
+msgid ""
+"Triggered when the user clicks on content between meta tags. If the meta is "
+"defined in text, e.g. [code][url={\"data\"=\"hi\"}]hi[/url][/code], then the "
+"parameter for this signal will be a [String] type. If a particular type or "
+"an object is desired, the [method push_meta] method must be used to manually "
+"insert the data into the tag stack."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:344
+msgid "Triggers when the mouse exits a meta tag."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:351
+msgid "Triggers when the mouse enters a meta tag."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:357
+msgid "Makes text left aligned."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:360
+msgid "Makes text centered."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:363
+msgid "Makes text right aligned."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:366
+msgid "Makes text fill width."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:369
+msgid "Each list item has a number marker."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:372
+msgid "Each list item has a letter marker."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:375
+msgid "Each list item has a filled circle marker."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:418
+msgid "The font used for bold text."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:421
+msgid "The font used for bold italics text."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:424
+msgid "The default text color."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:427
+msgid "The background The background used when the [RichTextLabel] is focused."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:430
+msgid ""
+"The color of selected text, used when [member selection_enabled] is "
+"[code]true[/code]."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:433
+msgid "The color of the font's shadow."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:436
+msgid "The font used for italics text."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:439
+msgid "The vertical space between lines."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:442
+msgid "The font used for monospace text."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:445
+msgid "The normal background for the [RichTextLabel]."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:448
+msgid "The default text font."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:451
+msgid "The color of the selection box."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:454
+msgid ""
+"Boolean value. If 1 ([code]true[/code]), the shadow will be displayed around "
+"the whole text as an outline."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:457
+msgid "The horizontal offset of the font's shadow."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:460
+msgid "The vertical offset of the font's shadow."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:463
+msgid "The horizontal separation of elements in a table."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:466
+msgid "The vertical separation of elements in a table."
+msgstr ""
+
+#: doc/classes/RID.xml:4
+msgid "Handle for a [Resource]'s unique ID."
+msgstr ""
+
+#: doc/classes/RID.xml:7
+msgid ""
+"The RID type is used to access the unique integer ID of a resource. They are "
+"opaque, which means they do not grant access to the associated resource by "
+"themselves. They are used by and with the low-level Server classes such as "
+"[RenderingServer]."
+msgstr ""
+
+#: doc/classes/RID.xml:18
+msgid ""
+"Creates a new RID instance with the ID of a given resource. When not handed "
+"a valid resource, silently stores the unused ID 0."
+msgstr ""
+
+#: doc/classes/RID.xml:25
+msgid "Returns the ID of the referenced resource."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:4
+msgid "A body that is controlled by the 2D physics engine."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:7
+msgid ""
+"This node implements simulated 2D physics. You do not control a RigidBody2D "
+"directly. Instead you apply forces to it (gravity, impulses, etc.) and the "
+"physics simulation calculates the resulting movement based on its mass, "
+"friction, and other physical properties.\n"
+"A RigidBody2D has 4 behavior [member mode]s: Rigid, Static, Character, and "
+"Kinematic.\n"
+"[b]Note:[/b] You should not change a RigidBody2D's [code]position[/code] or "
+"[code]linear_velocity[/code] every frame or even very often. If you need to "
+"directly affect the body's state, use [method _integrate_forces], which "
+"allows you to directly access the physics state.\n"
+"Please also keep in mind that physics bodies manage their own transform "
+"which overwrites the ones you set. So any direct or indirect transformation "
+"(including scaling of the node or its parent) will be visible in the editor "
+"only, and immediately reset at runtime.\n"
+"If you need to override the default physics behavior or add a transformation "
+"at runtime, you can write a custom force integration. See [member "
+"custom_integrator]."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:22
+msgid ""
+"Allows you to read and safely modify the simulation state for the object. "
+"Use this instead of [method Node._physics_process] if you need to directly "
+"change the body's [code]position[/code] or other physics properties. By "
+"default, it works in addition to the usual physics behavior, but [member "
+"custom_integrator] allows you to disable the default behavior and write "
+"custom force integration for a body."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:71
+msgid ""
+"Applies a positioned impulse to the body. 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). The position uses the rotation of the "
+"global coordinate system, but is centered at the object's origin."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:87 doc/classes/RigidBody3D.xml:99
+msgid ""
+"Returns a list of the bodies colliding with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
+"[b]Note:[/b] The result of this test is not immediate after moving objects. "
+"For performance, list of collisions is updated once per frame and before the "
+"physics step. Consider using signals instead."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:97
+msgid ""
+"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."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:112
+msgid ""
+"Returns [code]true[/code] if a collision would result from moving in the "
+"given vector. [code]margin[/code] increases the size of the shapes involved "
+"in the collision detection, and [code]result[/code] is an object of type "
+"[PhysicsTestMotionResult2D], which contains additional information about the "
+"collision (should there be one)."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:118
+msgid ""
+"Damps the body's [member angular_velocity]. If [code]-1[/code], the body "
+"will use the [b]Default Angular Damp[/b] defined in [b]Project > Project "
+"Settings > Physics > 2d[/b]."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:124
+msgid "The body's total applied force."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:127
+msgid "The body's total applied torque."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:130 doc/classes/RigidBody3D.xml:157
+msgid ""
+"If [code]true[/code], the body can enter sleep mode when there is no "
+"movement. See [member sleeping]."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:133
+msgid ""
+"If [code]true[/code], the body will emit signals when it collides with "
+"another RigidBody2D. See also [member contacts_reported]."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:136 doc/classes/RigidBody3D.xml:163
+msgid ""
+"The maximum number of contacts that will be recorded. Requires [member "
+"contact_monitor] to be set to [code]true[/code].\n"
+"[b]Note:[/b] The number of contacts is different from the number of "
+"collisions. Collisions between parallel edges will result in two contacts "
+"(one at each end), and collisions between parallel faces will result in four "
+"contacts (one at each corner)."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:140
+msgid ""
+"Continuous collision detection mode.\n"
+"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 [enum CCDMode] for details."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:144
+msgid ""
+"If [code]true[/code], internal force integration is disabled for this body. "
+"Aside from collision response, the body will only move as determined by the "
+"[method _integrate_forces] function."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:147
+msgid ""
+"Multiplies the gravity applied to the body. The body's gravity is calculated "
+"from the [b]Default Gravity[/b] value in [b]Project > Project Settings > "
+"Physics > 2d[/b] and/or any additional gravity vector applied by [Area2D]s."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:150
+msgid ""
+"The body's moment of inertia. This is like mass, but for rotation: it "
+"determines how much torque it takes to rotate the body. The moment of "
+"inertia is usually computed automatically from the mass and the shapes, but "
+"this function allows you to set a custom value. Set 0 inertia to return to "
+"automatically computing it."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:153
+msgid ""
+"Damps the body's [member linear_velocity]. If [code]-1[/code], the body will "
+"use the [b]Default Linear Damp[/b] in [b]Project > Project Settings > "
+"Physics > 2d[/b]."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:162
+msgid "The body's mode. See [enum Mode] for possible values."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:165 doc/classes/RigidBody3D.xml:189
+#: doc/classes/StaticBody2D.xml:22 doc/classes/StaticBody3D.xml:22
+msgid ""
+"The physics material override for the body.\n"
+"If a material is assigned to this property, it will be used instead of any "
+"other physics material, such as an inherited one."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:169 doc/classes/RigidBody3D.xml:193
+msgid ""
+"If [code]true[/code], the body will not move and will not calculate forces "
+"until woken up by another body through, for example, a collision, or by "
+"using the [method apply_impulse] or [method add_force] methods."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:172
+msgid ""
+"The body's weight based on its mass and the [b]Default Gravity[/b] value in "
+"[b]Project > Project Settings > Physics > 2d[/b]."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:180 doc/classes/RigidBody3D.xml:204
+msgid ""
+"Emitted when a body enters into contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:187
+msgid ""
+"Emitted when a body exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:200
+msgid ""
+"Emitted when a body enters into contact with this one. Reports colliding "
+"shape information. See [CollisionObject2D] for shape index information. "
+"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:213
+msgid ""
+"Emitted when a body shape exits contact with this one. Reports colliding "
+"shape information. See [CollisionObject2D] for shape index information. "
+"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:218 doc/classes/RigidBody3D.xml:244
+msgid ""
+"Emitted when the physics engine changes the body's sleeping state.\n"
+"[b]Note:[/b] Changing the value [member sleeping] will not trigger this "
+"signal. It is only emitted if the sleeping state is changed by the physics "
+"engine or [code]emit_signal(\"sleeping_state_changed\")[/code] is used."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:225
+msgid ""
+"Rigid mode. The body behaves as a physical object. It collides with other "
+"bodies and responds to forces applied to it. This is the default mode."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:228
+msgid "Static mode. The body behaves like a [StaticBody2D] and does not move."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:231
+msgid ""
+"Character mode. Similar to [constant MODE_RIGID], but the body can not "
+"rotate."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:234
+msgid ""
+"Kinematic mode. The body behaves like a [KinematicBody2D], and must be moved "
+"by code."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:237
+msgid ""
+"Continuous collision detection disabled. This is the fastest way to detect "
+"body collisions, but can miss small, fast-moving objects."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:240
+msgid ""
+"Continuous collision detection enabled using raycasting. This is faster than "
+"shapecasting but less precise."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:243
+msgid ""
+"Continuous collision detection enabled using shapecasting. This is the "
+"slowest CCD method and the most precise."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:4
+msgid ""
+"Physics Body whose position is determined through physics simulation in 3D "
+"space."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:7
+msgid ""
+"This is the node that implements full 3D physics. This means that you do not "
+"control a RigidBody3D directly. Instead, you can apply forces to it "
+"(gravity, impulses, etc.), and the physics simulation will calculate the "
+"resulting movement, collision, bouncing, rotating, etc.\n"
+"A RigidBody3D has 4 behavior [member mode]s: Rigid, Static, Character, and "
+"Kinematic.\n"
+"[b]Note:[/b] Don't change a RigidBody3D's position every frame or very "
+"often. Sporadic changes work fine, but physics runs at a different "
+"granularity (fixed Hz) than usual rendering (process callback) and maybe "
+"even in a separate thread, so changing this from a process loop may result "
+"in strange behavior. If you need to directly affect the body's state, use "
+"[method _integrate_forces], which allows you to directly access the physics "
+"state.\n"
+"If you need to override the default physics behavior, you can write a custom "
+"force integration function. See [member custom_integrator]."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:22
+msgid ""
+"Called during physics processing, allowing you to read and safely modify the "
+"simulation state for the object. By default, it works in addition to the "
+"usual physics behavior, but the [member custom_integrator] property allows "
+"you to disable the default behavior and do fully custom force integration "
+"for a body."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:31
+msgid ""
+"Adds a constant directional force (i.e. acceleration) without affecting "
+"rotation.\n"
+"This is equivalent to [code]add_force(force, Vector3(0,0,0))[/code]."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:43
+msgid ""
+"Adds a constant directional force (i.e. acceleration).\n"
+"The position uses the rotation of the global coordinate system, but is "
+"centered at the object's origin."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:53
+msgid ""
+"Adds a constant rotational force (i.e. a motor) without affecting position."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:62
+msgid ""
+"Applies a directional impulse without affecting rotation.\n"
+"This is equivalent to [code]apply_impulse(Vector3(0,0,0), impulse)[/code]."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:74
+msgid ""
+"Applies a positioned impulse to the body. 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. The "
+"position uses the rotation of the global coordinate system, but is centered "
+"at the object's origin."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:83
+msgid ""
+"Applies a torque impulse which will be affected by the body mass and shape. "
+"This will rotate the body around the [code]impulse[/code] vector passed."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:92
+msgid ""
+"Returns [code]true[/code] if the specified linear or rotational axis is "
+"locked."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:107
+msgid ""
+"Returns the inverse inertia tensor basis. This is used to calculate the "
+"angular acceleration resulting from a torque applied to the [RigidBody3D]."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:118
+msgid "Locks the specified linear or rotational axis."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:133
+msgid "Damps RigidBody3D's rotational forces."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:136
+msgid "RigidBody3D's rotational velocity."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:160
+msgid ""
+"If [code]true[/code], the RigidBody3D will emit signals when it collides "
+"with another RigidBody3D. See also [member contacts_reported]."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:167
+msgid ""
+"If [code]true[/code], continuous collision detection is used.\n"
+"Continuous collision detection tries to predict where a moving body will "
+"collide, instead of moving it and correcting its movement if it collided. "
+"Continuous collision detection is more precise, and misses fewer impacts by "
+"small, fast-moving objects. Not using continuous collision detection is "
+"faster to compute, but can miss small, fast-moving objects."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:171
+msgid ""
+"If [code]true[/code], internal force integration will be disabled (like "
+"gravity or air friction) for this body. Other than collision response, the "
+"body will only move as determined by the [method _integrate_forces] "
+"function, if defined."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:174
+msgid ""
+"This is multiplied by the global 3D gravity setting found in [b]Project > "
+"Project Settings > Physics > 3d[/b] to produce RigidBody3D's gravity. For "
+"example, a value of 1 will be normal gravity, 2 will apply double gravity, "
+"and 0.5 will apply half gravity to this object."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:177
+msgid ""
+"The body's linear damp. Cannot be less than -1.0. If this value is different "
+"from -1.0, any linear damp derived from the world or areas will be "
+"overridden."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:180
+msgid ""
+"The body's linear velocity. Can be used sporadically, but [b]don't set this "
+"every frame[/b], because physics may run in another thread and runs at a "
+"different granularity. Use [method _integrate_forces] as your process loop "
+"for precise control of the body state."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:186
+msgid "The body mode. See [enum Mode] for possible values."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:211
+msgid ""
+"Emitted when a body shape exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:224
+msgid ""
+"Emitted when a body enters into contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
+"This signal not only receives the body that collided with this one, but also "
+"its [RID] ([code]body_id[/code]), the shape index from the colliding body "
+"([code]body_shape[/code]), and the shape index from this body "
+"([code]local_shape[/code]) the other body collided with."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:238
+msgid ""
+"Emitted when a body shape exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
+"This signal not only receives the body that stopped colliding with this one, "
+"but also its [RID] ([code]body_id[/code]), the shape index from the "
+"colliding body ([code]body_shape[/code]), and the shape index from this body "
+"([code]local_shape[/code]) the other body stopped colliding with."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:251
+msgid ""
+"Rigid body mode. This is the \"natural\" state of a rigid body. It is "
+"affected by forces, and can move, rotate, and be affected by user code."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:254
+msgid ""
+"Static mode. The body behaves like a [StaticBody3D], and can only move by "
+"user code."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:257
+msgid ""
+"Character body mode. This behaves like a rigid body, but can not rotate."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:260
+msgid ""
+"Kinematic body mode. The body behaves like a [KinematicBody3D], and can only "
+"move by user code."
+msgstr ""
+
+#: doc/classes/SceneState.xml:4
+msgid "A script interface to a scene file's data."
+msgstr ""
+
+#: doc/classes/SceneState.xml:7
+msgid ""
+"Maintains a list of resources, nodes, exported, and overridden properties, "
+"and built-in scripts associated with a scene.\n"
+"This class cannot be instantiated directly, it is retrieved for a given "
+"scene as the result of [method PackedScene.get_state]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:19
+msgid ""
+"Returns the list of bound parameters for the signal at [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:26
+msgid ""
+"Returns the number of signal connections in the scene.\n"
+"The [code]idx[/code] argument used to query connection metadata in other "
+"[code]get_connection_*[/code] methods in the interval [code][0, "
+"get_connection_count() - 1][/code]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:36
+msgid ""
+"Returns the connection flags for the signal at [code]idx[/code]. See [enum "
+"Object.ConnectFlags] constants."
+msgstr ""
+
+#: doc/classes/SceneState.xml:45
+msgid "Returns the method connected to the signal at [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:54
+msgid "Returns the name of the signal at [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:63
+msgid ""
+"Returns the path to the node that owns the signal at [code]idx[/code], "
+"relative to the root node."
+msgstr ""
+
+#: doc/classes/SceneState.xml:72
+msgid ""
+"Returns the path to the node that owns the method connected to the signal at "
+"[code]idx[/code], relative to the root node."
+msgstr ""
+
+#: doc/classes/SceneState.xml:79
+msgid ""
+"Returns the number of nodes in the scene.\n"
+"The [code]idx[/code] argument used to query node data in other "
+"[code]get_node_*[/code] methods in the interval [code][0, get_node_count() - "
+"1][/code]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:89
+msgid ""
+"Returns the list of group names associated with the node at [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:98
+msgid ""
+"Returns the node's index, which is its position relative to its siblings. "
+"This is only relevant and saved in scenes for cases where new nodes are "
+"added to an instanced or inherited scene among siblings from the base scene. "
+"Despite the name, this index is not related to the [code]idx[/code] argument "
+"used here and in other methods."
+msgstr ""
+
+#: doc/classes/SceneState.xml:107
+msgid ""
+"Returns a [PackedScene] for the node at [code]idx[/code] (i.e. the whole "
+"branch starting at this node, with its child nodes and resources), or "
+"[code]null[/code] if the node is not an instance."
+msgstr ""
+
+#: doc/classes/SceneState.xml:116
+msgid ""
+"Returns the path to the represented scene file if the node at [code]idx[/"
+"code] is an [InstancePlaceholder]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:125
+msgid "Returns the name of the node at [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:134
+msgid ""
+"Returns the path to the owner of the node at [code]idx[/code], relative to "
+"the root node."
+msgstr ""
+
+#: doc/classes/SceneState.xml:145
+msgid ""
+"Returns the path to the node at [code]idx[/code].\n"
+"If [code]for_parent[/code] is [code]true[/code], returns the path of the "
+"[code]idx[/code] node's parent instead."
+msgstr ""
+
+#: doc/classes/SceneState.xml:155
+msgid ""
+"Returns the number of exported or overridden properties for the node at "
+"[code]idx[/code].\n"
+"The [code]prop_idx[/code] argument used to query node property data in other "
+"[code]get_node_property_*[/code] methods in the interval [code][0, "
+"get_node_property_count() - 1][/code]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:167
+msgid ""
+"Returns the name of the property at [code]prop_idx[/code] for the node at "
+"[code]idx[/code]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:178
+msgid ""
+"Returns the value of the property at [code]prop_idx[/code] for the node at "
+"[code]idx[/code]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:187
+msgid "Returns the type of the node at [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:196
+msgid ""
+"Returns [code]true[/code] if the node at [code]idx[/code] is an "
+"[InstancePlaceholder]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:202
+msgid ""
+"If passed to [method PackedScene.instance], blocks edits to the scene state."
+msgstr ""
+
+#: doc/classes/SceneState.xml:205
+msgid ""
+"If passed to [method PackedScene.instance], provides inherited scene "
+"resources to the local scene.\n"
+"[b]Note:[/b] Only available in editor builds."
+msgstr ""
+
+#: doc/classes/SceneState.xml:209
+msgid ""
+"If passed to [method PackedScene.instance], provides local scene resources "
+"to the local scene. Only the main scene should receive the main edit state.\n"
+"[b]Note:[/b] Only available in editor builds."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:4
+msgid "Manages the game loop via a hierarchy of nodes."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:7
+msgid ""
+"As one of the most important classes, the [SceneTree] manages the hierarchy "
+"of nodes in a scene as well as scenes themselves. Nodes can be added, "
+"retrieved and removed. The whole scene tree (and thus the current scene) can "
+"be paused. Scenes can be loaded, switched and reloaded.\n"
+"You can also use the [SceneTree] to organize your nodes into groups: every "
+"node can be assigned as many groups as you want to create, e.g. a \"enemy\" "
+"group. You can then iterate these groups or even call methods and set "
+"properties on all the group's members at once.\n"
+"[SceneTree] is the default [MainLoop] implementation used by scenes, and is "
+"thus in charge of the game loop."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:12
+msgid ""
+"https://docs.godotengine.org/en/latest/getting_started/step_by_step/"
+"scene_tree.html"
+msgstr ""
+
+#: doc/classes/SceneTree.xml:13
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/viewports/"
+"multiple_resolutions.html"
+msgstr ""
+
+#: doc/classes/SceneTree.xml:24
+msgid "Calls [code]method[/code] on each member of the given group."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:37
+msgid ""
+"Calls [code]method[/code] on each member of the given group, respecting the "
+"given [enum GroupCallFlags]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:46
+msgid ""
+"Changes the running scene to the one at the given [code]path[/code], after "
+"loading it into a [PackedScene] and creating a new instance.\n"
+"Returns [constant OK] on success, [constant ERR_CANT_OPEN] if the "
+"[code]path[/code] cannot be loaded into a [PackedScene], or [constant "
+"ERR_CANT_CREATE] if that scene cannot be instantiated."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:56
+msgid ""
+"Changes the running scene to a new instance of the given [PackedScene].\n"
+"Returns [constant OK] on success or [constant ERR_CANT_CREATE] if the scene "
+"cannot be instantiated."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:68
+msgid ""
+"Returns a [SceneTreeTimer] which will [signal SceneTreeTimer.timeout] after "
+"the given time in seconds elapsed in this [SceneTree]. If "
+"[code]pause_mode_process[/code] is set to [code]false[/code], pausing the "
+"[SceneTree] will also pause the timer.\n"
+"Commonly used to create a one-shot delay timer as in the following example:\n"
+"[codeblock]\n"
+"func some_function():\n"
+" print(\"start\")\n"
+" yield(get_tree().create_timer(1.0), \"timeout\")\n"
+" print(\"end\")\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/SceneTree.xml:82
+msgid ""
+"Returns the current frame number, i.e. the total frame count since the "
+"application started."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:89
+msgid ""
+"Returns the peer IDs of all connected peers of this [SceneTree]'s [member "
+"network_peer]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:96
+msgid "Returns the unique peer ID of this [SceneTree]'s [member network_peer]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:103
+msgid "Returns the number of nodes in this [SceneTree]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:112
+msgid "Returns a list of all nodes assigned to the given group."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:119
+msgid "Returns the sender's peer ID for the most recently received RPC call."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:128
+msgid "Returns [code]true[/code] if the given group exists."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:142
+msgid ""
+"Returns [code]true[/code] if this [SceneTree]'s [member network_peer] is in "
+"server mode (listening for connections)."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:153
+msgid "Sends the given notification to all members of the [code]group[/code]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:166
+msgid ""
+"Sends the given notification to all members of the [code]group[/code], "
+"respecting the given [enum GroupCallFlags]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:175
+msgid ""
+"Queues the given object for deletion, delaying the call to [method Object."
+"free] to after the current frame."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:184
+msgid ""
+"Quits the application. A process [code]exit_code[/code] can optionally be "
+"passed as an argument. If this argument is [code]0[/code] or greater, it "
+"will override the [member OS.exit_code] defined before quitting the "
+"application."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:191
+msgid ""
+"Reloads the currently active scene.\n"
+"Returns [constant OK] on success, [constant ERR_UNCONFIGURED] if no [member "
+"current_scene] was defined yet, [constant ERR_CANT_OPEN] if [member "
+"current_scene] cannot be loaded into a [PackedScene], or [constant "
+"ERR_CANT_CREATE] if the scene cannot be instantiated."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:201
+msgid ""
+"If [code]true[/code], the application automatically accepts quitting. "
+"Enabled by default.\n"
+"For mobile platforms, see [method set_quit_on_go_back]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:215
+msgid ""
+"Sets the given [code]property[/code] to [code]value[/code] on all members of "
+"the given group."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:230
+msgid ""
+"Sets the given [code]property[/code] to [code]value[/code] on all members of "
+"the given group, respecting the given [enum GroupCallFlags]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:239
+msgid ""
+"If [code]true[/code], the application quits automatically on going back (e."
+"g. on Android). Enabled by default.\n"
+"To handle 'Go Back' button when this option is disabled, use [constant "
+"DisplayServer.WINDOW_EVENT_GO_BACK_REQUEST]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:246
+msgid "The current scene."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:249
+msgid ""
+"If [code]true[/code], collision shapes will be visible when running the game "
+"from the editor for debugging purposes."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:252
+msgid ""
+"If [code]true[/code], navigation polygons will be visible when running the "
+"game from the editor for debugging purposes."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:255
+msgid "The root of the edited scene."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:258
+msgid "The default [MultiplayerAPI] instance for this [SceneTree]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:261
+msgid ""
+"If [code]true[/code] (default value), enables automatic polling of the "
+"[MultiplayerAPI] for this SceneTree during [signal idle_frame].\n"
+"If [code]false[/code], you need to manually call [method MultiplayerAPI."
+"poll] to process network packets and deliver RPCs/RSETs. This allows running "
+"RPCs/RSETs in a different loop (e.g. physics, thread, specific time step) "
+"and for manual [Mutex] protection when accessing the [MultiplayerAPI] from "
+"threads."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:265
+msgid ""
+"The peer object to handle the RPC system (effectively enabling networking "
+"when set). Depending on the peer itself, the [SceneTree] will become a "
+"network server (check with [method is_network_server]) and will set the root "
+"node's network mode to master, or it will become a regular peer with the "
+"root node set to puppet. All child nodes are set to inherit the network mode "
+"by default. Handling of networking-related events (connection, "
+"disconnection, new clients) is done by connecting to [SceneTree]'s signals."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:268
+msgid ""
+"If [code]true[/code], the [SceneTree] is paused. Doing so will have the "
+"following behavior:\n"
+"- 2D and 3D physics will be stopped.\n"
+"- [method Node._process], [method Node._physics_process] and [method Node."
+"_input] will not be called anymore in nodes."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:273
+msgid ""
+"If [code]true[/code], the [SceneTree]'s [member network_peer] refuses new "
+"incoming connections."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:276
+msgid "The [SceneTree]'s root [Window]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:282
+msgid ""
+"Emitted whenever this [SceneTree]'s [member network_peer] successfully "
+"connected to a server. Only emitted on clients."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:287
+msgid ""
+"Emitted whenever this [SceneTree]'s [member network_peer] fails to establish "
+"a connection to a server. Only emitted on clients."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:296
+msgid ""
+"Emitted when files are dragged from the OS file manager and dropped in the "
+"game window. The arguments are a list of file paths and the identifier of "
+"the screen where the drag originated."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:301
+msgid ""
+"Emitted immediately before [method Node._process] is called on every node in "
+"the [SceneTree]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:308
+msgid ""
+"Emitted whenever this [SceneTree]'s [member network_peer] connects with a "
+"new peer. ID is the peer ID of the new peer. Clients get notified when other "
+"clients connect to the same server. Upon connecting to a server, a client "
+"also receives this signal for the server (with ID being 1)."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:315
+msgid ""
+"Emitted whenever this [SceneTree]'s [member network_peer] disconnects from a "
+"peer. Clients get notified when other clients disconnect from the same "
+"server."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:322
+msgid "Emitted whenever a node is added to the [SceneTree]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:329
+msgid ""
+"Emitted when a node's configuration changed. Only emitted in [code]tool[/"
+"code] mode."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:336
+msgid "Emitted whenever a node is removed from the [SceneTree]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:343
+msgid "Emitted whenever a node is renamed."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:348
+msgid ""
+"Emitted immediately before [method Node._physics_process] is called on every "
+"node in the [SceneTree]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:353
+msgid ""
+"Emitted whenever this [SceneTree]'s [member network_peer] disconnected from "
+"server. Only emitted on clients."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:358
+msgid ""
+"Emitted whenever the [SceneTree] hierarchy changed (children being moved or "
+"renamed, etc.)."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:364
+msgid "Call a group with no flags (default)."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:367
+msgid "Call a group in reverse scene order."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:370
+msgid "Call a group immediately (calls are normally made on idle)."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:373
+msgid "Call a group only once even if the call is executed many times."
+msgstr ""
+
+#: doc/classes/SceneTreeTimer.xml:4
+msgid "One-shot timer."
+msgstr ""
+
+#: doc/classes/SceneTreeTimer.xml:7
+msgid ""
+"A one-shot timer managed by the scene tree, which emits [signal timeout] on "
+"completion. See also [method SceneTree.create_timer].\n"
+"As opposed to [Timer], it does not require the instantiation of a node. "
+"Commonly used to create a one-shot delay timer as in the following example:\n"
+"[codeblock]\n"
+"func some_function():\n"
+" print(\"Timer started.\")\n"
+" yield(get_tree().create_timer(1.0), \"timeout\")\n"
+" print(\"Timer ended.\")\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/SceneTreeTimer.xml:22
+msgid "The time remaining."
+msgstr ""
+
+#: doc/classes/SceneTreeTimer.xml:28 doc/classes/Timer.xml:63
+msgid "Emitted when the timer reaches 0."
+msgstr ""
+
+#: doc/classes/Script.xml:4
+msgid "A class stored as a resource."
+msgstr ""
+
+#: doc/classes/Script.xml:7
+msgid ""
+"A class stored as a resource. A script extends the functionality of all "
+"objects that instance it.\n"
+"The [code]new[/code] method of a script subclass creates a new instance. "
+"[method Object.set_script] extends an existing object, if that object's "
+"class matches one of the script's base classes."
+msgstr ""
+
+#: doc/classes/Script.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/getting_started/step_by_step/"
+"scripting.html"
+msgstr ""
+
+#: doc/classes/Script.xml:18
+msgid "Returns [code]true[/code] if the script can be instanced."
+msgstr ""
+
+#: doc/classes/Script.xml:25
+msgid "Returns the script directly inherited by this script."
+msgstr ""
+
+#: doc/classes/Script.xml:32
+msgid "Returns the script's base type."
+msgstr ""
+
+#: doc/classes/Script.xml:41
+msgid "Returns the default value of the specified property."
+msgstr ""
+
+#: doc/classes/Script.xml:48
+msgid "Returns a dictionary containing constant names and their values."
+msgstr ""
+
+#: doc/classes/Script.xml:55
+msgid "Returns the list of methods in this [Script]."
+msgstr ""
+
+#: doc/classes/Script.xml:62
+msgid "Returns the list of properties in this [Script]."
+msgstr ""
+
+#: doc/classes/Script.xml:69
+msgid "Returns the list of user signals defined in this [Script]."
+msgstr ""
+
+#: doc/classes/Script.xml:78
+msgid ""
+"Returns [code]true[/code] if the script, or a base class, defines a signal "
+"with the given name."
+msgstr ""
+
+#: doc/classes/Script.xml:85
+msgid "Returns [code]true[/code] if the script contains non-empty source code."
+msgstr ""
+
+#: doc/classes/Script.xml:94
+msgid ""
+"Returns [code]true[/code] if [code]base_object[/code] is an instance of this "
+"script."
+msgstr ""
+
+#: doc/classes/Script.xml:101
+msgid ""
+"Returns [code]true[/code] if the script is a tool script. A tool script can "
+"run in the editor."
+msgstr ""
+
+#: doc/classes/Script.xml:110
+msgid "Reloads the script's class implementation. Returns an error code."
+msgstr ""
+
+#: doc/classes/Script.xml:116
+msgid ""
+"The script source code or an empty string if source code is not available. "
+"When set, does not reload the class implementation automatically."
+msgstr ""
+
+#: doc/classes/ScriptCreateDialog.xml:4
+msgid "The Editor's popup dialog for creating new [Script] files."
+msgstr ""
+
+#: doc/classes/ScriptCreateDialog.xml:7
+msgid ""
+"The [ScriptCreateDialog] creates script files according to a given template "
+"for a given scripting language. The standard use is to configure its fields "
+"prior to calling one of the [method Window.popup] methods.\n"
+"[codeblock]\n"
+"func _ready():\n"
+" dialog.config(\"Node\", \"res://new_node.gd\") # For in-engine types\n"
+" dialog.config(\"\\\"res://base_node.gd\\\"\", \"res://derived_node.gd\") "
+"# For script types\n"
+" dialog.popup_centered()\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/ScriptCreateDialog.xml:30
+msgid "Prefills required fields to configure the ScriptCreateDialog for use."
+msgstr ""
+
+#: doc/classes/ScriptCreateDialog.xml:43
+msgid "Emitted when the user clicks the OK button."
+msgstr ""
+
+#: doc/classes/ScriptEditor.xml:4
+msgid "Godot editor's script editor."
+msgstr ""
+
+#: doc/classes/ScriptEditor.xml:7
+msgid ""
+"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
+"the singleton using [method EditorInterface.get_script_editor]."
+msgstr ""
+
+#: doc/classes/ScriptEditor.xml:46
+msgid "Returns a [Script] that is currently active in editor."
+msgstr ""
+
+#: doc/classes/ScriptEditor.xml:69
+msgid ""
+"Returns an array with all [Script] objects which are currently open in "
+"editor."
+msgstr ""
+
+#: doc/classes/ScriptEditor.xml:78
+msgid "Goes to the specified line in the current script."
+msgstr ""
+
+#: doc/classes/ScriptEditor.xml:113
+msgid ""
+"Emitted when user changed active script. Argument is a freshly activated "
+"[Script]."
+msgstr ""
+
+#: doc/classes/ScriptEditor.xml:120
+msgid ""
+"Emitted when editor is about to close the active script. Argument is a "
+"[Script] that is going to be closed."
+msgstr ""
+
+#: doc/classes/ScrollBar.xml:4
+msgid "Base class for scroll bars."
+msgstr ""
+
+#: doc/classes/ScrollBar.xml:7
+msgid ""
+"Scrollbars are a [Range]-based [Control], that display a draggable area (the "
+"size of the page). Horizontal ([HScrollBar]) and Vertical ([VScrollBar]) "
+"versions are available."
+msgstr ""
+
+#: doc/classes/ScrollBar.xml:15
+msgid ""
+"Overrides the step used when clicking increment and decrement buttons or "
+"when using arrow keys when the [ScrollBar] is focused."
+msgstr ""
+
+#: doc/classes/ScrollBar.xml:23
+msgid "Emitted when the scrollbar is being scrolled."
+msgstr ""
+
+#: doc/classes/ScrollContainer.xml:4
+msgid "A helper node for displaying scrollable elements such as lists."
+msgstr ""
+
+#: doc/classes/ScrollContainer.xml:7
+msgid ""
+"A ScrollContainer node meant to contain a [Control] child.\n"
+"ScrollContainers will automatically create a scrollbar child ([HScrollBar], "
+"[VScrollBar], or both) when needed and will only draw the Control within the "
+"ScrollContainer area. Scrollbars will automatically be drawn at the right "
+"(for vertical) or bottom (for horizontal) and will enable dragging to move "
+"the viewable Control (and its children) within the ScrollContainer. "
+"Scrollbars will also automatically resize the grabber based on the [member "
+"Control.rect_min_size] of the Control relative to the ScrollContainer.\n"
+"Works great with a [Panel] control. You can set [code]EXPAND[/code] on the "
+"children's size flags, so they will upscale to the ScrollContainer's size if "
+"it's larger (scroll is invisible for the chosen dimension)."
+msgstr ""
+
+#: doc/classes/ScrollContainer.xml:18
+msgid ""
+"Returns the horizontal scrollbar [HScrollBar] of this [ScrollContainer]."
+msgstr ""
+
+#: doc/classes/ScrollContainer.xml:25
+msgid "Returns the vertical scrollbar [VScrollBar] of this [ScrollContainer]."
+msgstr ""
+
+#: doc/classes/ScrollContainer.xml:31
+msgid ""
+"If [code]true[/code], the ScrollContainer will automatically scroll to "
+"focused children (including indirect children) to make sure they are fully "
+"visible."
+msgstr ""
+
+#: doc/classes/ScrollContainer.xml:37 doc/classes/TextEdit.xml:407
+msgid "The current horizontal scroll value."
+msgstr ""
+
+#: doc/classes/ScrollContainer.xml:40
+msgid "If [code]true[/code], enables horizontal scrolling."
+msgstr ""
+
+#: doc/classes/ScrollContainer.xml:43 doc/classes/TextEdit.xml:410
+msgid "The current vertical scroll value."
+msgstr ""
+
+#: doc/classes/ScrollContainer.xml:46
+msgid "If [code]true[/code], enables vertical scrolling."
+msgstr ""
+
+#: doc/classes/ScrollContainer.xml:52
+msgid "Emitted when scrolling stops."
+msgstr ""
+
+#: doc/classes/ScrollContainer.xml:57
+msgid "Emitted when scrolling is started."
+msgstr ""
+
+#: doc/classes/ScrollContainer.xml:65
+msgid "The background [StyleBox] of the [ScrollContainer]."
+msgstr ""
+
+#: doc/classes/SegmentShape2D.xml:4
+msgid "Segment shape for 2D collisions."
+msgstr ""
+
+#: doc/classes/SegmentShape2D.xml:7
+msgid ""
+"Segment shape for 2D collisions. Consists of two points, [code]a[/code] and "
+"[code]b[/code]."
+msgstr ""
+
+#: doc/classes/SegmentShape2D.xml:15
+msgid "The segment's first point position."
+msgstr ""
+
+#: doc/classes/SegmentShape2D.xml:18
+msgid "The segment's second point position."
+msgstr ""
+
+#: doc/classes/Semaphore.xml:4
+msgid "A synchronization semaphore."
+msgstr ""
+
+#: doc/classes/Semaphore.xml:7
+msgid ""
+"A synchronization semaphore which can be used to synchronize multiple "
+"[Thread]s. Initialized to zero on creation. Be careful to avoid deadlocks. "
+"For a binary version, see [Mutex]."
+msgstr ""
+
+#: doc/classes/Semaphore.xml:17
+msgid "Lowers the [Semaphore], allowing one more thread in."
+msgstr ""
+
+#: doc/classes/Semaphore.xml:24
+msgid ""
+"Like [method wait], but won't block, so if the value is zero, fails "
+"immediately and returns [constant ERR_BUSY]. If non-zero, it returns "
+"[constant OK] to report success."
+msgstr ""
+
+#: doc/classes/Semaphore.xml:31
+msgid "Waits for the [Semaphore], if its value is zero, blocks until non-zero."
+msgstr ""
+
+#: doc/classes/Separator.xml:4
+msgid "Base class for separators."
+msgstr ""
+
+#: doc/classes/Separator.xml:7
+msgid ""
+"Separator is a [Control] used for separating other controls. It's purely a "
+"visual decoration. Horizontal ([HSeparator]) and Vertical ([VSeparator]) "
+"versions are available."
+msgstr ""
+
+#: doc/classes/Shader.xml:4
+msgid "A custom shader program."
+msgstr ""
+
+#: doc/classes/Shader.xml:7
+msgid ""
+"This class allows you to define a custom shader program that can be used by "
+"a [ShaderMaterial]. Shaders allow you to write your own custom behavior for "
+"rendering objects or updating particle information. For a detailed "
+"explanation and usage, please see the tutorials linked below."
+msgstr ""
+
+#: doc/classes/Shader.xml:10 doc/classes/ShaderMaterial.xml:10
+msgid "https://docs.godotengine.org/en/latest/tutorials/shading/index.html"
+msgstr ""
+
+#: doc/classes/Shader.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/shading/your_first_shader/"
+"what_are_shaders.html"
+msgstr ""
+
+#: doc/classes/Shader.xml:20
+msgid ""
+"Returns the texture that is set as default for the specified parameter.\n"
+"[b]Note:[/b] [code]param[/code] must match the name of the uniform in the "
+"code exactly."
+msgstr ""
+
+#: doc/classes/Shader.xml:28
+msgid ""
+"Returns the shader mode for the shader, either [constant MODE_CANVAS_ITEM], "
+"[constant MODE_SPATIAL] or [constant MODE_PARTICLES]."
+msgstr ""
+
+#: doc/classes/Shader.xml:37
+msgid ""
+"Returns [code]true[/code] if the shader has this param defined as a uniform "
+"in its code.\n"
+"[b]Note:[/b] [code]param[/code] must match the name of the uniform in the "
+"code exactly."
+msgstr ""
+
+#: doc/classes/Shader.xml:49
+msgid ""
+"Sets the default texture to be used with a texture uniform. The default is "
+"used if a texture is not set in the [ShaderMaterial].\n"
+"[b]Note:[/b] [code]param[/code] must match the name of the uniform in the "
+"code exactly."
+msgstr ""
+
+#: doc/classes/Shader.xml:56
+msgid ""
+"Returns the shader's code as the user has written it, not the full generated "
+"code used internally."
+msgstr ""
+
+#: doc/classes/Shader.xml:61
+msgid "Mode used to draw all 3D objects."
+msgstr ""
+
+#: doc/classes/Shader.xml:64
+msgid "Mode used to draw all 2D objects."
+msgstr ""
+
+#: doc/classes/Shader.xml:67
+msgid ""
+"Mode used to calculate particle information on a per-particle basis. Not "
+"used for drawing."
+msgstr ""
+
+#: doc/classes/Shader.xml:70
+msgid ""
+"Mode used for drawing skies. Only works with shaders attached to [Sky] "
+"objects."
+msgstr ""
+
+#: doc/classes/ShaderMaterial.xml:4
+msgid "A material that uses a custom [Shader] program."
+msgstr ""
+
+#: doc/classes/ShaderMaterial.xml:7
+msgid ""
+"A material that uses a custom [Shader] program to render either items to "
+"screen or process particles. You can create multiple materials for the same "
+"shader but configure different values for the uniforms defined in the shader."
+msgstr ""
+
+#: doc/classes/ShaderMaterial.xml:19
+msgid ""
+"Returns the current value set for this material of a uniform in the shader."
+msgstr ""
+
+#: doc/classes/ShaderMaterial.xml:28
+msgid ""
+"Returns [code]true[/code] if the property identified by [code]name[/code] "
+"can be reverted to a default value."
+msgstr ""
+
+#: doc/classes/ShaderMaterial.xml:37
+msgid ""
+"Returns the default value of the material property with given [code]name[/"
+"code]."
+msgstr ""
+
+#: doc/classes/ShaderMaterial.xml:48
+msgid ""
+"Changes the value set for this material of a uniform in the shader. [b]Note:"
+"[/b] [code]param[/code] must match the name of the uniform in the code "
+"exactly."
+msgstr ""
+
+#: doc/classes/ShaderMaterial.xml:54
+msgid "The [Shader] program used to render this material."
+msgstr ""
+
+#: doc/classes/Shape2D.xml:4
+msgid "Base class for all 2D shapes."
+msgstr ""
+
+#: doc/classes/Shape2D.xml:7
+msgid "Base class for all 2D shapes. All 2D shape types inherit from this."
+msgstr ""
+
+#: doc/classes/Shape2D.xml:23
+msgid ""
+"Returns [code]true[/code] if this shape is colliding with another.\n"
+"This method needs the transformation matrix for this shape "
+"([code]local_xform[/code]), the shape to check collisions with "
+"([code]with_shape[/code]), and the transformation matrix of that shape "
+"([code]shape_xform[/code])."
+msgstr ""
+
+#: doc/classes/Shape2D.xml:37
+msgid ""
+"Returns a list of the points where this shape touches another. If there are "
+"no collisions the list is empty.\n"
+"This method needs the transformation matrix for this shape "
+"([code]local_xform[/code]), the shape to check collisions with "
+"([code]with_shape[/code]), and the transformation matrix of that shape "
+"([code]shape_xform[/code])."
+msgstr ""
+
+#: doc/classes/Shape2D.xml:55
+msgid ""
+"Returns whether this shape would collide with another, if a given movement "
+"was applied.\n"
+"This method needs the transformation matrix for this shape "
+"([code]local_xform[/code]), the movement to test on this shape "
+"([code]local_motion[/code]), the shape to check collisions with "
+"([code]with_shape[/code]), the transformation matrix of that shape "
+"([code]shape_xform[/code]), and the movement to test onto the other object "
+"([code]shape_motion[/code])."
+msgstr ""
+
+#: doc/classes/Shape2D.xml:73
+msgid ""
+"Returns a list of the points where this shape would touch another, if a "
+"given movement was applied. If there are no collisions the list is empty.\n"
+"This method needs the transformation matrix for this shape "
+"([code]local_xform[/code]), the movement to test on this shape "
+"([code]local_motion[/code]), the shape to check collisions with "
+"([code]with_shape[/code]), the transformation matrix of that shape "
+"([code]shape_xform[/code]), and the movement to test onto the other object "
+"([code]shape_motion[/code])."
+msgstr ""
+
+#: doc/classes/Shape2D.xml:85
+msgid ""
+"Draws a solid shape onto a [CanvasItem] with the [RenderingServer] API "
+"filled with the specified [code]color[/code]. The exact drawing method is "
+"specific for each shape and cannot be configured."
+msgstr ""
+
+#: doc/classes/Shape2D.xml:91
+msgid "The shape's custom solver bias."
+msgstr ""
+
+#: doc/classes/Shape3D.xml:4
+msgid "Base class for all 3D shape resources."
+msgstr ""
+
+#: doc/classes/Shape3D.xml:7
+msgid ""
+"Base class for all 3D shape resources. Nodes that inherit from this can be "
+"used as shapes for a [PhysicsBody3D] or [Area3D] objects."
+msgstr ""
+
+#: doc/classes/ShortCut.xml:4
+msgid "A shortcut for binding input."
+msgstr ""
+
+#: doc/classes/ShortCut.xml:7
+msgid ""
+"A shortcut for binding input.\n"
+"Shortcuts are commonly used for interacting with a [Control] element from a "
+"[InputEvent]."
+msgstr ""
+
+#: doc/classes/ShortCut.xml:17
+msgid "Returns the shortcut's [InputEvent] as a [String]."
+msgstr ""
+
+#: doc/classes/ShortCut.xml:26
+msgid ""
+"Returns [code]true[/code] if the shortcut's [InputEvent] equals [code]event[/"
+"code]."
+msgstr ""
+
+#: doc/classes/ShortCut.xml:33
+msgid "If [code]true[/code], this shortcut is valid."
+msgstr ""
+
+#: doc/classes/ShortCut.xml:39
+msgid ""
+"The shortcut's [InputEvent].\n"
+"Generally the [InputEvent] is a keyboard key, though it can be any "
+"[InputEvent]."
+msgstr ""
+
+#: doc/classes/Signal.xml:4
+msgid "Class representing a signal defined in an object."
+msgstr ""
+
+#: doc/classes/Signal.xml:19
+msgid ""
+"Creates a new signal named [code]signal_name[/code] in the given object."
+msgstr ""
+
+#: doc/classes/Signal.xml:32
+msgid ""
+"Connects this signal to the specified [Callable], optionally providing binds "
+"and connection flags."
+msgstr ""
+
+#: doc/classes/Signal.xml:41
+msgid "Disconnects this signal from the specified [Callable]."
+msgstr ""
+
+#: doc/classes/Signal.xml:48
+msgid "Emits this signal to all connected objects."
+msgstr ""
+
+#: doc/classes/Signal.xml:55
+msgid "Returns the list of [Callable]s connected to this signal."
+msgstr ""
+
+#: doc/classes/Signal.xml:62
+msgid "Returns the name of this signal."
+msgstr ""
+
+#: doc/classes/Signal.xml:69
+msgid "Returns the object emitting this signal."
+msgstr ""
+
+#: doc/classes/Signal.xml:76
+msgid ""
+"Returns the ID of the object emitting this signal (see [method Object."
+"get_instance_id])."
+msgstr ""
+
+#: doc/classes/Signal.xml:85
+msgid ""
+"Returns [code]true[/code] if the specified [Callable] is connected to this "
+"signal."
+msgstr ""
+
+#: doc/classes/Skeleton2D.xml:4
+msgid "Skeleton for 2D characters and animated objects."
+msgstr ""
+
+#: doc/classes/Skeleton2D.xml:7
+msgid ""
+"Skeleton2D parents a hierarchy of [Bone2D] objects. It is a requirement of "
+"[Bone2D]. Skeleton2D holds a reference to the rest pose of its children and "
+"acts as a single point of access to its bones."
+msgstr ""
+
+#: doc/classes/Skeleton2D.xml:10
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/animation/2d_skeletons.html"
+msgstr ""
+
+#: doc/classes/Skeleton2D.xml:19
+msgid ""
+"Returns a [Bone2D] from the node hierarchy parented by Skeleton2D. The "
+"object to return is identified by the parameter [code]idx[/code]. Bones are "
+"indexed by descending the node hierarchy from top to bottom, adding the "
+"children of each branch before moving to the next sibling."
+msgstr ""
+
+#: doc/classes/Skeleton2D.xml:26
+msgid ""
+"Returns the number of [Bone2D] nodes in the node hierarchy parented by "
+"Skeleton2D."
+msgstr ""
+
+#: doc/classes/Skeleton2D.xml:33
+msgid "Returns the [RID] of a Skeleton2D instance."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:4
+msgid "Skeleton for characters and animated objects."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:7
+msgid ""
+"Skeleton3D provides a hierarchical interface for managing bones, including "
+"pose, rest and animation (see [Animation]). It can also use ragdoll "
+"physics.\n"
+"The overall transform of a bone with respect to the skeleton is determined "
+"by the following hierarchical order: rest pose, custom pose and pose.\n"
+"Note that \"global pose\" below refers to the overall transform of the bone "
+"with respect to skeleton, so it not the actual global/world transform of the "
+"bone."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:20
+msgid ""
+"Adds a bone, with name [code]name[/code]. [method get_bone_count] will "
+"become the bone index."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:31 doc/classes/Skeleton3D.xml:141
+#: doc/classes/Skeleton3D.xml:289
+msgid "[i]Deprecated soon.[/i]"
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:40
+msgid ""
+"Takes the given bone pose/transform and converts it to a world transform, "
+"relative to the [Skeleton3D] node.\n"
+"This is useful for using the bone transform in calculations with transforms "
+"from [Node3D]-based nodes."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:48
+msgid "Clear all the bones in this skeleton."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:55
+msgid "Removes the global pose override on all bones in the skeleton."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:64
+msgid "Returns the bone index that matches [code]name[/code] as its name."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:71
+msgid "Returns the amount of bones in the skeleton."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:80
+msgid ""
+"Returns the custom pose of the specified bone. Custom pose is applied on top "
+"of the rest pose."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:89
+msgid ""
+"Returns the overall transform of the specified bone, with respect to the "
+"skeleton. Being relative to the skeleton frame, this is not the actual "
+"\"global\" transform of the bone."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:98
+msgid "Returns the name of the bone at index [code]index[/code]."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:107
+msgid ""
+"Returns the bone index which is the parent of the bone at [code]bone_idx[/"
+"code]. If -1, then bone has no parent.\n"
+"[b]Note:[/b] The parent bone returned will always be less than "
+"[code]bone_idx[/code]."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:117
+msgid ""
+"Returns the pose transform of the specified bone. Pose is applied on top of "
+"the custom pose, which is applied on top the rest pose."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:132
+msgid "Returns the rest transform for a bone [code]bone_idx[/code]."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:150
+msgid ""
+"Returns whether the bone rest for the bone at [code]bone_idx[/code] is "
+"disabled."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:157
+msgid "Returns all bones in the skeleton to their rest poses."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:166
+msgid ""
+"Adds a collision exception to the physical bone.\n"
+"Works just like the [RigidBody3D] node."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:176
+msgid ""
+"Removes a collision exception to the physical bone.\n"
+"Works just like the [RigidBody3D] node."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:186
+msgid ""
+"Tells the [PhysicalBone3D] nodes in the Skeleton to start simulating and "
+"reacting to the physics world.\n"
+"Optionally, a list of bone names can be passed-in, allowing only the passed-"
+"in bones to be simulated."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:194
+msgid "Tells the [PhysicalBone3D] nodes in the Skeleton to stop simulating."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:203
+msgid "Binds the given Skin to the Skeleton."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:214
+msgid ""
+"Sets the custom pose transform, [code]custom_pose[/code], for the bone at "
+"[code]bone_idx[/code]. This pose is an addition to the bone rest pose.\n"
+"[b]Note[/b]: The pose transform needs to be in bone space. Use [method "
+"world_transform_to_bone_transform] to convert a world transform, like one "
+"you can get from a [Node3D], to bone space."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:226
+msgid ""
+"Disables the rest pose for the bone at [code]bone_idx[/code] if [code]true[/"
+"code], enables the bone rest if [code]false[/code]."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:241
+msgid ""
+"Sets the global pose transform, [code]pose[/code], for the bone at "
+"[code]bone_idx[/code].\n"
+"[code]amount[/code] is the interpolation strength that will be used when "
+"applying the pose, and [code]persistent[/code] determines if the applied "
+"pose will remain.\n"
+"[b]Note[/b]: The pose transform needs to be in bone space. Use [method "
+"world_transform_to_bone_transform] to convert a world transform, like one "
+"you can get from a [Node3D], to bone space."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:254
+msgid ""
+"Sets the bone index [code]parent_idx[/code] as the parent of the bone at "
+"[code]bone_idx[/code]. If -1, then bone has no parent.\n"
+"[b]Note:[/b] [code]parent_idx[/code] must be less than [code]bone_idx[/code]."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:266
+msgid ""
+"Sets the pose transform for bone [code]bone_idx[/code].\n"
+"[b]Note[/b]: The pose transform needs to be in bone space. Use [method "
+"world_transform_to_bone_transform] to convert a world transform, like one "
+"you can get from a [Node3D], to bone space."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:278
+msgid "Sets the rest transform for bone [code]bone_idx[/code]."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:298
+msgid ""
+"Unparents the bone at [code]bone_idx[/code] and sets its rest position to "
+"that of it's parent prior to being reset."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:307
+msgid ""
+"Takes the given world transform, relative to the [Skeleton3D], and converts "
+"it to a bone pose/transform.\n"
+"This is useful for using setting bone poses using transforms from [Node3D]-"
+"based nodes."
+msgstr ""
+
+#: doc/classes/Sky.xml:4
+msgid "Background that uses a [Material] to draw a sky."
+msgstr ""
+
+#: doc/classes/Sky.xml:7
+msgid ""
+"The [Sky] class uses a [Material] to draw the background and update the "
+"reflection/radiance cubemaps."
+msgstr ""
+
+#: doc/classes/Sky.xml:15
+msgid ""
+"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 [enum ProcessMode] for options."
+msgstr ""
+
+#: doc/classes/Sky.xml:18
+msgid ""
+"The [Sky]'s radiance map size. The higher the radiance map size, the more "
+"detailed the lighting from the [Sky] will be.\n"
+"See [enum RadianceSize] constants for values.\n"
+"[b]Note:[/b] Some hardware will have trouble with higher radiance sizes, "
+"especially [constant RADIANCE_SIZE_512] and above. Only use such high values "
+"on high-end hardware."
+msgstr ""
+
+#: doc/classes/Sky.xml:23
+msgid ""
+"[Material] used to draw the background. Can be [PanoramaSkyMaterial], "
+"[ProceduralSkyMaterial], [PhysicalSkyMaterial], or even a [ShaderMaterial] "
+"if you want to use your own custom shader."
+msgstr ""
+
+#: doc/classes/Sky.xml:28
+msgid "Radiance texture size is 32×32 pixels."
+msgstr ""
+
+#: doc/classes/Sky.xml:31
+msgid "Radiance texture size is 64×64 pixels."
+msgstr ""
+
+#: doc/classes/Sky.xml:34
+msgid "Radiance texture size is 128×128 pixels."
+msgstr ""
+
+#: doc/classes/Sky.xml:37
+msgid "Radiance texture size is 256×256 pixels."
+msgstr ""
+
+#: doc/classes/Sky.xml:40
+msgid "Radiance texture size is 512×512 pixels."
+msgstr ""
+
+#: doc/classes/Sky.xml:43
+msgid "Radiance texture size is 1024×1024 pixels."
+msgstr ""
+
+#: doc/classes/Sky.xml:46
+msgid "Radiance texture size is 2048×2048 pixels."
+msgstr ""
+
+#: doc/classes/Sky.xml:49
+msgid "Represents the size of the [enum RadianceSize] enum."
+msgstr ""
+
+#: doc/classes/Sky.xml:52
+msgid ""
+"Automatically selects the appropriate process mode based on your sky shader. "
+"If your shader uses [code]TIME[/code] or [code]POSITION[/code], this will "
+"use [constant PROCESS_MODE_REALTIME]. If your shader uses any of the "
+"[code]LIGHT_*[/code] variables or any custom uniforms, this uses [constant "
+"PROCESS_MODE_INCREMENTAL]. Otherwise, this defaults to [constant "
+"PROCESS_MODE_QUALITY]."
+msgstr ""
+
+#: doc/classes/Sky.xml:55
+msgid ""
+"Uses high quality importance sampling to process the radiance map. In "
+"general, this results in much higher quality than [constant "
+"PROCESS_MODE_REALTIME] but takes much longer to generate. This should not be "
+"used if you plan on changing the sky at runtime. If you are finding that the "
+"reflection is not blurry enough and is showing sparkles or fireflies, try "
+"increasing [member ProjectSettings.rendering/quality/reflections/"
+"ggx_samples]."
+msgstr ""
+
+#: doc/classes/Sky.xml:58
+msgid ""
+"Uses the same high quality importance sampling to process the radiance map "
+"as [constant PROCESS_MODE_QUALITY], but updates over several frames. The "
+"number of frames is determined by [member ProjectSettings.rendering/quality/"
+"reflections/roughness_layers]. Use this when you need highest quality "
+"radiance maps, but have a sky that updates slowly."
+msgstr ""
+
+#: doc/classes/Sky.xml:61
+msgid ""
+"Uses the fast filtering algorithm to process the radiance map. In general "
+"this results in lower quality, but substantially faster run times. If you "
+"need better quality, but still need to update the sky every frame, consider "
+"turning on [member ProjectSettings.rendering/quality/reflections/"
+"fast_filter_high_quality].\n"
+"[b]Note:[/b] The fast filtering algorithm is limited to 256x256 cubemaps, so "
+"[member radiance_size] must be set to [constant RADIANCE_SIZE_256]."
+msgstr ""
+
+#: doc/classes/Slider.xml:4 doc/classes/Slider.xml:7
+msgid "Base class for GUI sliders."
+msgstr ""
+
+#: doc/classes/Slider.xml:15
+msgid ""
+"If [code]true[/code], the slider can be interacted with. If [code]false[/"
+"code], the value can be changed only by code."
+msgstr ""
+
+#: doc/classes/Slider.xml:19
+msgid "If [code]true[/code], the value can be changed using the mouse wheel."
+msgstr ""
+
+#: doc/classes/Slider.xml:23
+msgid ""
+"Number of ticks displayed on the slider, including border ticks. Ticks are "
+"uniformly-distributed value markers."
+msgstr ""
+
+#: doc/classes/Slider.xml:26
+msgid ""
+"If [code]true[/code], the slider will display ticks for minimum and maximum "
+"values."
+msgstr ""
+
+#: doc/classes/SliderJoint3D.xml:4
+msgid "Piston kind of slider between two bodies in 3D."
+msgstr ""
+
+#: doc/classes/SliderJoint3D.xml:7
+msgid "Slides across the X axis of the pivot object."
+msgstr ""
+
+#: doc/classes/SliderJoint3D.xml:33
+msgid ""
+"The amount of damping of the rotation when the limit is surpassed.\n"
+"A lower damping value allows a rotation initiated by body A to travel to "
+"body B slower."
+msgstr ""
+
+#: doc/classes/SliderJoint3D.xml:40
+msgid ""
+"The amount of restitution of the rotation when the limit is surpassed.\n"
+"Does not affect damping."
+msgstr ""
+
+#: doc/classes/SliderJoint3D.xml:44
+msgid ""
+"A factor applied to the all rotation once the limit is surpassed.\n"
+"Makes all rotation slower when between 0 and 1."
+msgstr ""
+
+#: doc/classes/SliderJoint3D.xml:57 doc/classes/SliderJoint3D.xml:152
+msgid "A factor applied to the all rotation in the limits."
+msgstr ""
+
+#: doc/classes/SliderJoint3D.xml:66 doc/classes/SliderJoint3D.xml:161
+msgid ""
+"A factor applied to the all rotation across axes orthogonal to the slider."
+msgstr ""
+
+#: doc/classes/SliderJoint3D.xml:69
+msgid ""
+"The amount of damping that happens once the limit defined by [member "
+"linear_limit/lower_distance] and [member linear_limit/upper_distance] is "
+"surpassed."
+msgstr ""
+
+#: doc/classes/SliderJoint3D.xml:75
+msgid ""
+"The amount of restitution once the limits are surpassed. The lower, the more "
+"velocity-energy gets lost."
+msgstr ""
+
+#: doc/classes/SoftBody3D.xml:4
+msgid "A soft mesh physics body."
+msgstr ""
+
+#: doc/classes/SoftBody3D.xml:7
+msgid ""
+"A deformable physics body. Used to create elastic or deformable objects such "
+"as cloth, rubber, or other flexible materials."
+msgstr ""
+
+#: doc/classes/SoftBody3D.xml:10
+msgid "https://docs.godotengine.org/en/latest/tutorials/physics/soft_body.html"
+msgstr ""
+
+#: doc/classes/SoftBody3D.xml:83
+msgid ""
+"The physics layers this SoftBody3D is in.\n"
+"Collidable objects can exist in any of 32 different layers. These layers "
+"work like a tagging system, and are not visual. A collidable can use these "
+"layers to select with which objects it can collide, using the collision_mask "
+"property.\n"
+"A contact is detected if object A is in any of the layers that object B "
+"scans, or object B is in any layer scanned by object A."
+msgstr ""
+
+#: doc/classes/SoftBody3D.xml:88
+msgid "The physics layers this SoftBody3D scans for collisions."
+msgstr ""
+
+#: doc/classes/SoftBody3D.xml:97
+msgid ""
+"[NodePath] to a [CollisionObject3D] this SoftBody3D should avoid clipping."
+msgstr ""
+
+#: doc/classes/SoftBody3D.xml:104
+msgid "If [code]true[/code], the [SoftBody3D] will respond to [RayCast3D]s."
+msgstr ""
+
+#: doc/classes/SoftBody3D.xml:107
+msgid ""
+"Increasing this value will improve the resulting simulation, but can affect "
+"performance. Use with care."
+msgstr ""
+
+#: doc/classes/SoftBody3D.xml:110
+msgid "The SoftBody3D's mass."
+msgstr ""
+
+#: doc/classes/SphereMesh.xml:4 doc/classes/SphereMesh.xml:7
+msgid "Class representing a spherical [PrimitiveMesh]."
+msgstr ""
+
+#: doc/classes/SphereMesh.xml:15
+msgid "Full height of the sphere."
+msgstr ""
+
+#: doc/classes/SphereMesh.xml:18
+msgid ""
+"If [code]true[/code], a hemisphere is created rather than a full sphere.\n"
+"[b]Note:[/b] To get a regular hemisphere, the height and radius of the "
+"sphere must be equal."
+msgstr ""
+
+#: doc/classes/SphereMesh.xml:22
+msgid "Number of radial segments on the sphere."
+msgstr ""
+
+#: doc/classes/SphereMesh.xml:25
+msgid "Radius of sphere."
+msgstr ""
+
+#: doc/classes/SphereMesh.xml:28
+msgid "Number of segments along the height of the sphere."
+msgstr ""
+
+#: doc/classes/SphereShape3D.xml:4
+msgid "Sphere shape for 3D collisions."
+msgstr ""
+
+#: doc/classes/SphereShape3D.xml:7
+msgid ""
+"Sphere shape for 3D collisions, which can be set into a [PhysicsBody3D] or "
+"[Area3D]. This shape is useful for modeling sphere-like 3D objects."
+msgstr ""
+
+#: doc/classes/SphereShape3D.xml:15
+msgid "The sphere's radius. The shape's diameter is double the radius."
+msgstr ""
+
+#: doc/classes/SpinBox.xml:4
+msgid "Numerical input text field."
+msgstr ""
+
+#: doc/classes/SpinBox.xml:7
+msgid ""
+"SpinBox is a numerical input text field. It allows entering integers and "
+"floats.\n"
+"[b]Example:[/b]\n"
+"[codeblock]\n"
+"var spin_box = SpinBox.new()\n"
+"add_child(spin_box)\n"
+"var line_edit = spin_box.get_line_edit()\n"
+"line_edit.context_menu_enabled = false\n"
+"spin_box.align = LineEdit.ALIGN_RIGHT\n"
+"[/codeblock]\n"
+"The above code will create a [SpinBox], disable context menu on it and set "
+"the text alignment to right.\n"
+"See [Range] class for more options over the [SpinBox]."
+msgstr ""
+
+#: doc/classes/SpinBox.xml:26
+msgid "Applies the current value of this [SpinBox]."
+msgstr ""
+
+#: doc/classes/SpinBox.xml:33
+msgid ""
+"Returns the [LineEdit] instance from this [SpinBox]. You can use it to "
+"access properties and methods of [LineEdit]."
+msgstr ""
+
+#: doc/classes/SpinBox.xml:39
+msgid "Sets the text alignment of the [SpinBox]."
+msgstr ""
+
+#: doc/classes/SpinBox.xml:42
+msgid ""
+"If [code]true[/code], the [SpinBox] will be editable. Otherwise, it will be "
+"read only."
+msgstr ""
+
+#: doc/classes/SpinBox.xml:45
+msgid ""
+"Adds the specified [code]prefix[/code] string before the numerical value of "
+"the [SpinBox]."
+msgstr ""
+
+#: doc/classes/SpinBox.xml:48
+msgid ""
+"Adds the specified [code]suffix[/code] string after the numerical value of "
+"the [SpinBox]."
+msgstr ""
+
+#: doc/classes/SpinBox.xml:55
+msgid "Sets a custom [Texture2D] for up and down arrows of the [SpinBox]."
+msgstr ""
+
+#: doc/classes/SplitContainer.xml:4
+msgid "Container for splitting and adjusting."
+msgstr ""
+
+#: doc/classes/SplitContainer.xml:7
+msgid ""
+"Container for splitting two [Control]s vertically or horizontally, with a "
+"grabber that allows adjusting the split offset or ratio."
+msgstr ""
+
+#: doc/classes/SplitContainer.xml:16
+msgid ""
+"Clamps the [member split_offset] value to not go outside the currently "
+"possible minimal and maximum values."
+msgstr ""
+
+#: doc/classes/SplitContainer.xml:22
+msgid ""
+"If [code]true[/code], the area of the first [Control] will be collapsed and "
+"the dragger will be disabled."
+msgstr ""
+
+#: doc/classes/SplitContainer.xml:25
+msgid ""
+"Determines the dragger's visibility. See [enum DraggerVisibility] for "
+"details."
+msgstr ""
+
+#: doc/classes/SplitContainer.xml:28
+msgid ""
+"The initial offset of the splitting between the two [Control]s, with "
+"[code]0[/code] being at the end of the first [Control]."
+msgstr ""
+
+#: doc/classes/SplitContainer.xml:36
+msgid "Emitted when the dragger is dragged by user."
+msgstr ""
+
+#: doc/classes/SplitContainer.xml:42
+msgid "The split dragger is visible when the cursor hovers it."
+msgstr ""
+
+#: doc/classes/SplitContainer.xml:45
+msgid "The split dragger is never visible."
+msgstr ""
+
+#: doc/classes/SplitContainer.xml:48
+msgid "The split dragger is never visible and its space collapsed."
+msgstr ""
+
+#: doc/classes/SpotLight3D.xml:4
+msgid "A spotlight, such as a reflector spotlight or a lantern."
+msgstr ""
+
+#: doc/classes/SpotLight3D.xml:7
+msgid ""
+"A Spotlight is a type of [Light3D] 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 [Light3D]."
+msgstr ""
+
+#: doc/classes/SpotLight3D.xml:18
+msgid "The spotlight's angle in degrees."
+msgstr ""
+
+#: doc/classes/SpotLight3D.xml:21
+msgid "The spotlight's angular attenuation curve."
+msgstr ""
+
+#: doc/classes/SpotLight3D.xml:24
+msgid "The spotlight's light energy attenuation curve."
+msgstr ""
+
+#: doc/classes/SpotLight3D.xml:27
+msgid ""
+"The maximal range that can be reached by the spotlight. Note that the "
+"effectively lit area may appear to be smaller depending on the [member "
+"spot_attenuation] in use. No matter the [member spot_attenuation] in use, "
+"the light will never reach anything outside this range."
+msgstr ""
+
+#: doc/classes/SpringArm3D.xml:4
+msgid "A helper node, mostly used in 3rd person cameras."
+msgstr ""
+
+#: doc/classes/SpringArm3D.xml:7
+msgid ""
+"The SpringArm3D node is a node that casts a ray (or collision shape) along "
+"its z axis and moves all its direct children to the collision point, minus a "
+"margin.\n"
+"The most common use case for this is to make a 3rd person camera that reacts "
+"to collisions in the environment.\n"
+"The SpringArm3D will either cast a ray, or if a shape is given, it will cast "
+"the shape in the direction of its z axis.\n"
+"If you use the SpringArm3D as a camera controller for your player, you might "
+"need to exclude the player's collider from the SpringArm3D's collision check."
+msgstr ""
+
+#: doc/classes/SpringArm3D.xml:21
+msgid ""
+"Adds the [PhysicsBody3D] object with the given [RID] to the list of "
+"[PhysicsBody3D] objects excluded from the collision check."
+msgstr ""
+
+#: doc/classes/SpringArm3D.xml:28
+msgid ""
+"Clears the list of [PhysicsBody3D] objects excluded from the collision check."
+msgstr ""
+
+#: doc/classes/SpringArm3D.xml:35
+msgid "Returns the spring arm's current length."
+msgstr ""
+
+#: doc/classes/SpringArm3D.xml:44
+msgid ""
+"Removes the given [RID] from the list of [PhysicsBody3D] objects excluded "
+"from the collision check."
+msgstr ""
+
+#: doc/classes/SpringArm3D.xml:50
+msgid "The layers against which the collision check shall be done."
+msgstr ""
+
+#: doc/classes/SpringArm3D.xml:53
+msgid ""
+"When the collision check is made, a candidate length for the SpringArm3D is "
+"given.\n"
+"The margin is then subtracted to this length and the translation is applied "
+"to the child objects of the SpringArm3D.\n"
+"This margin is useful for when the SpringArm3D has a [Camera3D] as a child "
+"node: without the margin, the [Camera3D] would be placed on the exact point "
+"of collision, while with the margin the [Camera3D] would be placed close to "
+"the point of collision."
+msgstr ""
+
+#: doc/classes/SpringArm3D.xml:58
+msgid ""
+"The [Shape3D] to use for the SpringArm3D.\n"
+"When the shape is set, the SpringArm3D will cast the [Shape3D] on its z axis "
+"instead of performing a ray cast."
+msgstr ""
+
+#: doc/classes/SpringArm3D.xml:62
+msgid ""
+"The maximum extent of the SpringArm3D. This is used as a length for both the "
+"ray and the shape cast used internally to calculate the desired position of "
+"the SpringArm3D's child nodes.\n"
+"To know more about how to perform a shape cast or a ray cast, please consult "
+"the [PhysicsDirectSpaceState3D] documentation."
+msgstr ""
+
+#: doc/classes/Sprite2D.xml:4
+msgid "General-purpose sprite node."
+msgstr ""
+
+#: doc/classes/Sprite2D.xml:7
+msgid ""
+"A node that displays a 2D texture. The texture displayed can be a region "
+"from a larger atlas texture, or a frame from a sprite sheet animation."
+msgstr ""
+
+#: doc/classes/Sprite2D.xml:16
+msgid ""
+"Returns a [Rect2] representing the Sprite2D's boundary in local coordinates. "
+"Can be used to detect if the Sprite2D was clicked. Example:\n"
+"[codeblock]\n"
+"func _input(event):\n"
+" if event is InputEventMouseButton and event.pressed and event."
+"button_index == BUTTON_LEFT:\n"
+" if get_rect().has_point(to_local(event.position)):\n"
+" print(\"A click!\")\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Sprite2D.xml:31
+msgid ""
+"Returns [code]true[/code], if the pixel at the given position is opaque and "
+"[code]false[/code] in other case.\n"
+"[b]Note:[/b] It also returns [code]false[/code], if the sprite's texture is "
+"[code]null[/code] or if the given position is invalid."
+msgstr ""
+
+#: doc/classes/Sprite2D.xml:38
+msgid "If [code]true[/code], texture is centered."
+msgstr ""
+
+#: doc/classes/Sprite2D.xml:47 doc/classes/Sprite3D.xml:16
+msgid ""
+"Current frame to display from sprite sheet. [member vframes] or [member "
+"hframes] must be greater than 1."
+msgstr ""
+
+#: doc/classes/Sprite2D.xml:50 doc/classes/Sprite3D.xml:19
+msgid ""
+"Coordinates of the frame to display from sprite sheet. This is as an alias "
+"for the [member frame] property. [member vframes] or [member hframes] must "
+"be greater than 1."
+msgstr ""
+
+#: doc/classes/Sprite2D.xml:53 doc/classes/Sprite3D.xml:22
+msgid "The number of columns in the sprite sheet."
+msgstr ""
+
+#: doc/classes/Sprite2D.xml:56
+msgid ""
+"The normal map gives depth to the Sprite2D.\n"
+"[b]Note:[/b] Godot expects the normal map to use X+, Y-, and Z+ coordinates. "
+"See [url=http://wiki.polycount.com/wiki/"
+"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]this page[/url] for "
+"a comparison of normal map coordinates expected by popular engines."
+msgstr ""
+
+#: doc/classes/Sprite2D.xml:63
+msgid ""
+"If [code]true[/code], texture is cut from a larger atlas texture. See "
+"[member region_rect]."
+msgstr ""
+
+#: doc/classes/Sprite2D.xml:66
+msgid "If [code]true[/code], the outermost pixels get blurred out."
+msgstr ""
+
+#: doc/classes/Sprite2D.xml:69 doc/classes/Sprite3D.xml:28
+msgid ""
+"The region of the atlas texture to display. [member region_enabled] must be "
+"[code]true[/code]."
+msgstr ""
+
+#: doc/classes/Sprite2D.xml:72
+msgid "Strength of the specular light effect of this [Sprite2D]."
+msgstr ""
+
+#: doc/classes/Sprite2D.xml:78
+msgid "The specular map is used for more control on the shininess effect."
+msgstr ""
+
+#: doc/classes/Sprite2D.xml:81 doc/classes/Sprite3D.xml:31
+msgid "[Texture2D] object to draw."
+msgstr ""
+
+#: doc/classes/Sprite2D.xml:84 doc/classes/Sprite3D.xml:34
+msgid "The number of rows in the sprite sheet."
+msgstr ""
+
+#: doc/classes/Sprite2D.xml:90 doc/classes/Sprite3D.xml:40
+msgid "Emitted when the [member frame] changes."
+msgstr ""
+
+#: doc/classes/Sprite2D.xml:95
+msgid "Emitted when the [member texture] changes."
+msgstr ""
+
+#: doc/classes/Sprite3D.xml:4
+msgid "2D sprite node in a 3D world."
+msgstr ""
+
+#: doc/classes/Sprite3D.xml:7
+msgid ""
+"A node that displays a 2D texture in a 3D environment. The texture displayed "
+"can be a region from a larger atlas texture, or a frame from a sprite sheet "
+"animation.\n"
+"[b]Note:[/b] There are [url=https://github.com/godotengine/godot/"
+"issues/20855]known performance issues[/url] when using [Sprite3D]. Consider "
+"using a [MeshInstance3D] with a [QuadMesh] as the mesh instead. You can "
+"still have billboarding by enabling billboard properties in the QuadMesh's "
+"[StandardMaterial3D]."
+msgstr ""
+
+#: doc/classes/Sprite3D.xml:25
+msgid ""
+"If [code]true[/code], texture will be cut from a larger atlas texture. See "
+"[member region_rect]."
+msgstr ""
+
+#: doc/classes/SpriteBase3D.xml:4
+msgid "2D sprite node in 3D environment."
+msgstr ""
+
+#: doc/classes/SpriteBase3D.xml:7
+msgid "A node that displays 2D texture information in a 3D environment."
+msgstr ""
+
+#: doc/classes/SpriteBase3D.xml:31
+msgid "Returns the rectangle representing this sprite."
+msgstr ""
+
+#: doc/classes/SpriteBase3D.xml:42
+msgid "If [code]true[/code], the specified flag will be enabled."
+msgstr ""
+
+#: doc/classes/SpriteBase3D.xml:50
+msgid "The direction in which the front of the texture faces."
+msgstr ""
+
+#: doc/classes/SpriteBase3D.xml:58
+msgid ""
+"If [code]true[/code], texture can be seen from the back as well, if "
+"[code]false[/code], it is invisible when looking at it from behind."
+msgstr ""
+
+#: doc/classes/SpriteBase3D.xml:67
+msgid ""
+"A color value that gets multiplied on, could be used for mood-coloring or to "
+"simulate the color of light."
+msgstr ""
+
+#: doc/classes/SpriteBase3D.xml:73
+msgid ""
+"The objects visibility on a scale from [code]0[/code] fully invisible to "
+"[code]1[/code] fully visible."
+msgstr ""
+
+#: doc/classes/SpriteBase3D.xml:76
+msgid "The size of one pixel's width on the sprite to scale it in 3D."
+msgstr ""
+
+#: doc/classes/SpriteBase3D.xml:79
+msgid ""
+"If [code]true[/code], the [Light3D] in the [Environment] has effects on the "
+"sprite."
+msgstr ""
+
+#: doc/classes/SpriteBase3D.xml:82
+msgid ""
+"If [code]true[/code], the texture's transparency and the opacity are used to "
+"make those parts of the sprite invisible."
+msgstr ""
+
+#: doc/classes/SpriteBase3D.xml:87
+msgid ""
+"If set, the texture's transparency and the opacity are used to make those "
+"parts of the sprite invisible."
+msgstr ""
+
+#: doc/classes/SpriteBase3D.xml:90
+msgid "If set, lights in the environment affect the sprite."
+msgstr ""
+
+#: doc/classes/SpriteBase3D.xml:93
+msgid ""
+"If set, texture can be seen from the back as well, if not, it is invisible "
+"when looking at it from behind."
+msgstr ""
+
+#: doc/classes/SpriteBase3D.xml:96
+msgid "Represents the size of the [enum DrawFlags] enum."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:4
+msgid "Sprite frame library for AnimatedSprite2D."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:7
+msgid ""
+"Sprite frame library for [AnimatedSprite2D]. Contains frames and animation "
+"data for playback."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:18
+msgid "Adds a new animation to the library."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:31
+msgid "Adds a frame to the given animation."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:40
+msgid "Removes all frames from the given animation."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:47
+msgid "Removes all animations. A \"default\" animation will be created."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:56
+msgid "If [code]true[/code], the given animation will loop."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:63
+msgid ""
+"Returns an array containing the names associated to each animation. Values "
+"are placed in alphabetical order."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:72 doc/classes/SpriteFrames.xml:154
+msgid "The animation's speed in frames per second."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:83
+msgid "Returns the animation's selected frame."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:92
+msgid "Returns the number of frames in the animation."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:101
+msgid "If [code]true[/code], the named animation exists."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:110
+msgid "Removes the given animation."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:121
+msgid "Removes the animation's selected frame."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:132
+msgid "Changes the animation's name to [code]newname[/code]."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:143
+msgid "If [code]true[/code], the animation will loop."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:167
+msgid "Sets the texture of the given frame."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:173
+msgid "Compatibility property, always equals to an empty array."
+msgstr ""
+
+#: doc/classes/StaticBody2D.xml:4
+msgid "Static body for 2D physics."
+msgstr ""
+
+#: doc/classes/StaticBody2D.xml:7
+msgid ""
+"Static body for 2D physics. A StaticBody2D is a body that is not intended to "
+"move. It is ideal for implementing objects in the environment, such as walls "
+"or platforms.\n"
+"Additionally, a constant linear or angular velocity can be set for the "
+"static body, which will affect colliding bodies as if it were moving (for "
+"example, a conveyor belt)."
+msgstr ""
+
+#: doc/classes/StaticBody2D.xml:16
+msgid ""
+"The body's constant angular velocity. This does not rotate the body, but "
+"affects colliding bodies, as if it were rotating."
+msgstr ""
+
+#: doc/classes/StaticBody2D.xml:19
+msgid ""
+"The body's constant linear velocity. This does not move the body, but "
+"affects colliding bodies, as if it were moving."
+msgstr ""
+
+#: doc/classes/StaticBody3D.xml:4
+msgid "Static body for 3D physics."
+msgstr ""
+
+#: doc/classes/StaticBody3D.xml:7
+msgid ""
+"Static body for 3D physics. A static body is a simple body that is not "
+"intended to move. In contrast to [RigidBody3D], they don't consume any CPU "
+"resources as long as they don't move.\n"
+"Additionally, a constant linear or angular velocity can be set for the "
+"static body, so even if it doesn't move, it affects other bodies as if it "
+"was moving (this is useful for simulating conveyor belts or conveyor wheels)."
+msgstr ""
+
+#: doc/classes/StaticBody3D.xml:16
+msgid ""
+"The body's constant angular velocity. This does not rotate the body, but "
+"affects other bodies that touch it, as if it was in a state of rotation."
+msgstr ""
+
+#: doc/classes/StaticBody3D.xml:19
+msgid ""
+"The body's constant linear velocity. This does not move the body, but "
+"affects other bodies that touch it, as if it was in a state of movement."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:4
+msgid "Abstraction and base class for stream-based protocols."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:7
+msgid ""
+"StreamPeer is an abstraction and base class for stream-based protocols (such "
+"as TCP or UNIX sockets). It provides an API for sending and receiving data "
+"through streams as raw data or strings."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:16
+msgid "Gets a signed 16-bit value from the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:23
+msgid "Gets a signed 32-bit value from the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:30
+msgid "Gets a signed 64-bit value from the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:37
+msgid "Gets a signed byte from the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:44
+msgid "Returns the amount of bytes this [StreamPeer] has available."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:53
+msgid ""
+"Returns a chunk data with the received bytes. The amount of bytes to be "
+"received can be requested in the [code]bytes[/code] argument. If not enough "
+"bytes are available, the function will block until the desired amount is "
+"received. This function returns two values, an [enum @GlobalScope.Error] "
+"code and a data array."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:60
+msgid "Gets a double-precision float from the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:67
+msgid "Gets a single-precision float from the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:76
+msgid ""
+"Returns a chunk data with the received bytes. The amount 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 [enum @GlobalScope.Error] code, and a data "
+"array."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:85
+msgid ""
+"Gets a string with byte-length [code]bytes[/code] from the stream. If "
+"[code]bytes[/code] is negative (default) the length will be read from the "
+"stream using the reverse process of [method put_string]."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:92
+msgid "Gets an unsigned 16-bit value from the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:99
+msgid "Gets an unsigned 32-bit value from the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:106
+msgid "Gets an unsigned 64-bit value from the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:113
+msgid "Gets an unsigned byte from the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:122
+msgid ""
+"Gets an UTF-8 string with byte-length [code]bytes[/code] from the stream "
+"(this decodes the string sent as UTF-8). If [code]bytes[/code] is negative "
+"(default) the length will be read from the stream using the reverse process "
+"of [method put_utf8_string]."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:131
+msgid ""
+"Gets a Variant from the stream. If [code]allow_objects[/code] is [code]true[/"
+"code], decoding objects is allowed.\n"
+"[b]Warning:[/b] 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."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:141
+msgid "Puts a signed 16-bit value into the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:150
+msgid "Puts a signed 32-bit value into the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:159
+msgid "Puts a signed 64-bit value into the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:168
+msgid "Puts a signed byte into the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:177
+msgid ""
+"Sends a chunk of data through the connection, blocking if necessary until "
+"the data is done sending. This function returns an [enum @GlobalScope.Error] "
+"code."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:186
+msgid "Puts a double-precision float into the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:195
+msgid "Puts a single-precision float into the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:204
+msgid ""
+"Sends a chunk of data through the connection. If all the data could not be "
+"sent at once, only part of it will. This function returns two values, an "
+"[enum @GlobalScope.Error] code and an integer, describing how much data was "
+"actually sent."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:213
+msgid ""
+"Puts a zero-terminated ASCII string into the stream prepended by a 32-bit "
+"unsigned integer representing its size.\n"
+"Note: To put an ASCII string without prepending its size, you can use "
+"[method put_data]:\n"
+"[codeblock]\n"
+"put_data(\"Hello world\".to_ascii())\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:226
+msgid "Puts an unsigned 16-bit value into the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:235
+msgid "Puts an unsigned 32-bit value into the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:244
+msgid "Puts an unsigned 64-bit value into the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:253
+msgid "Puts an unsigned byte into the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:262
+msgid ""
+"Puts a zero-terminated UTF-8 string into the stream prepended by a 32 bits "
+"unsigned integer representing its size.\n"
+"Note: To put an UTF-8 string without prepending its size, you can use "
+"[method put_data]:\n"
+"[codeblock]\n"
+"put_data(\"Hello world\".to_utf8())\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:277
+msgid ""
+"Puts a Variant into the stream. If [code]full_objects[/code] is [code]true[/"
+"code] encoding objects is allowed (and can potentially include code)."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:283
+msgid ""
+"If [code]true[/code], this [StreamPeer] will using big-endian format for "
+"encoding and decoding."
+msgstr ""
+
+#: doc/classes/StreamPeerSSL.xml:4
+msgid "SSL stream peer."
+msgstr ""
+
+#: doc/classes/StreamPeerSSL.xml:7
+msgid ""
+"SSL stream peer. This object can be used to connect to an SSL server or "
+"accept a single SSL client connection."
+msgstr ""
+
+#: doc/classes/StreamPeerSSL.xml:25
+msgid ""
+"Accepts a peer connection as a server using the given [code]private_key[/"
+"code] and providing the given [code]certificate[/code] to the client. You "
+"can pass the optional [code]chain[/code] parameter to provide additional CA "
+"chain information along with the certificate."
+msgstr ""
+
+#: doc/classes/StreamPeerSSL.xml:40
+msgid ""
+"Connects to a peer using an underlying [StreamPeer] [code]stream[/code]. If "
+"[code]validate_certs[/code] is [code]true[/code], [StreamPeerSSL] will "
+"validate that the certificate presented by the peer matches the "
+"[code]for_hostname[/code].\n"
+"[b]Note:[/b] Specifying a custom [code]valid_certificate[/code] is not "
+"supported in HTML5 exports due to browsers restrictions."
+msgstr ""
+
+#: doc/classes/StreamPeerSSL.xml:48 doc/classes/StreamPeerTCP.xml:27
+msgid "Disconnects from host."
+msgstr ""
+
+#: doc/classes/StreamPeerSSL.xml:62
+msgid ""
+"Poll the connection to check for incoming bytes. Call this right before "
+"[method StreamPeer.get_available_bytes] for it to work properly."
+msgstr ""
+
+#: doc/classes/StreamPeerSSL.xml:72
+msgid "A status representing a [StreamPeerSSL] that is disconnected."
+msgstr ""
+
+#: doc/classes/StreamPeerSSL.xml:75
+msgid "A status representing a [StreamPeerSSL] during handshaking."
+msgstr ""
+
+#: doc/classes/StreamPeerSSL.xml:78
+msgid "A status representing a [StreamPeerSSL] that is connected to a host."
+msgstr ""
+
+#: doc/classes/StreamPeerSSL.xml:81
+msgid "A status representing a [StreamPeerSSL] in error state."
+msgstr ""
+
+#: doc/classes/StreamPeerSSL.xml:84
+msgid ""
+"An error status that shows a mismatch in the SSL certificate domain "
+"presented by the host and the domain requested for validation."
+msgstr ""
+
+#: doc/classes/StreamPeerTCP.xml:4
+msgid "TCP stream peer."
+msgstr ""
+
+#: doc/classes/StreamPeerTCP.xml:7
+msgid ""
+"TCP stream peer. This object can be used to connect to TCP servers, or also "
+"is returned by a TCP server."
+msgstr ""
+
+#: doc/classes/StreamPeerTCP.xml:20
+msgid ""
+"Connects to the specified [code]host:port[/code] pair. A hostname will be "
+"resolved if valid. Returns [constant OK] on success or [constant FAILED] on "
+"failure."
+msgstr ""
+
+#: doc/classes/StreamPeerTCP.xml:34
+msgid "Returns the IP of this peer."
+msgstr ""
+
+#: doc/classes/StreamPeerTCP.xml:41
+msgid "Returns the port of this peer."
+msgstr ""
+
+#: doc/classes/StreamPeerTCP.xml:48
+msgid "Returns the status of the connection, see [enum Status]."
+msgstr ""
+
+#: doc/classes/StreamPeerTCP.xml:55
+msgid ""
+"Returns [code]true[/code] if this peer is currently connected to a host, "
+"[code]false[/code] otherwise."
+msgstr ""
+
+#: doc/classes/StreamPeerTCP.xml:64
+msgid ""
+"Disables Nagle's algorithm to improve latency for small packets.\n"
+"[b]Note:[/b] For applications that send large packets or need to transfer a "
+"lot of data, this can decrease the total available bandwidth."
+msgstr ""
+
+#: doc/classes/StreamPeerTCP.xml:71
+msgid ""
+"The initial status of the [StreamPeerTCP]. This is also the status after "
+"disconnecting."
+msgstr ""
+
+#: doc/classes/StreamPeerTCP.xml:74
+msgid "A status representing a [StreamPeerTCP] that is connecting to a host."
+msgstr ""
+
+#: doc/classes/StreamPeerTCP.xml:77
+msgid "A status representing a [StreamPeerTCP] that is connected to a host."
+msgstr ""
+
+#: doc/classes/StreamPeerTCP.xml:80
+msgid "A status representing a [StreamPeerTCP] in error state."
+msgstr ""
+
+#: doc/classes/StreamTexture2D.xml:4
+msgid "A [code].stex[/code] texture."
+msgstr ""
+
+#: doc/classes/StreamTexture2D.xml:7
+msgid "A texture that is loaded from a [code].stex[/code] file."
+msgstr ""
+
+#: doc/classes/StreamTexture2D.xml:18
+msgid "Loads the texture from the given path."
+msgstr ""
+
+#: doc/classes/StreamTexture2D.xml:24
+msgid "The StreamTexture's file path to a [code].stex[/code] file."
+msgstr ""
+
+#: doc/classes/String.xml:4
+msgid "Built-in string class."
+msgstr ""
+
+#: doc/classes/String.xml:7
+msgid ""
+"This is the built-in string class (and the one used by GDScript). It "
+"supports Unicode and provides all necessary means for string handling. "
+"Strings are reference-counted and use a copy-on-write approach, so passing "
+"them around is cheap in resources."
+msgstr ""
+
+#: doc/classes/String.xml:10
+msgid ""
+"https://docs.godotengine.org/en/latest/getting_started/scripting/gdscript/"
+"gdscript_format_string.html"
+msgstr ""
+
+#: doc/classes/String.xml:19
+msgid "Constructs a new String from the given [bool]."
+msgstr ""
+
+#: doc/classes/String.xml:28
+msgid "Constructs a new String from the given [int]."
+msgstr ""
+
+#: doc/classes/String.xml:37
+msgid "Constructs a new String from the given [float]."
+msgstr ""
+
+#: doc/classes/String.xml:46
+msgid "Constructs a new String from the given [Vector2]."
+msgstr ""
+
+#: doc/classes/String.xml:55
+msgid "Constructs a new String from the given [Vector2i]."
+msgstr ""
+
+#: doc/classes/String.xml:64
+msgid "Constructs a new String from the given [Rect2]."
+msgstr ""
+
+#: doc/classes/String.xml:73
+msgid "Constructs a new String from the given [Rect2i]."
+msgstr ""
+
+#: doc/classes/String.xml:82
+msgid "Constructs a new String from the given [Vector3]."
+msgstr ""
+
+#: doc/classes/String.xml:91
+msgid "Constructs a new String from the given [Vector3i]."
+msgstr ""
+
+#: doc/classes/String.xml:100
+msgid "Constructs a new String from the given [Transform2D]."
+msgstr ""
+
+#: doc/classes/String.xml:109
+msgid "Constructs a new String from the given [Plane]."
+msgstr ""
+
+#: doc/classes/String.xml:118
+msgid "Constructs a new String from the given [Quat]."
+msgstr ""
+
+#: doc/classes/String.xml:127
+msgid "Constructs a new String from the given [AABB]."
+msgstr ""
+
+#: doc/classes/String.xml:136
+msgid "Constructs a new String from the given [Basis]."
+msgstr ""
+
+#: doc/classes/String.xml:145
+msgid "Constructs a new String from the given [Transform]."
+msgstr ""
+
+#: doc/classes/String.xml:154
+msgid "Constructs a new String from the given [Color]."
+msgstr ""
+
+#: doc/classes/String.xml:163
+msgid "Constructs a new String from the given [StringName]."
+msgstr ""
+
+#: doc/classes/String.xml:172
+msgid "Constructs a new String from the given [NodePath]."
+msgstr ""
+
+#: doc/classes/String.xml:181
+msgid "Constructs a new String from the given [RID]."
+msgstr ""
+
+#: doc/classes/String.xml:190
+msgid "Constructs a new String from the given [Callable]."
+msgstr ""
+
+#: doc/classes/String.xml:199
+msgid "Constructs a new String from the given [Signal]."
+msgstr ""
+
+#: doc/classes/String.xml:208
+msgid "Constructs a new String from the given [Dictionary]."
+msgstr ""
+
+#: doc/classes/String.xml:217
+msgid "Constructs a new String from the given [Array]."
+msgstr ""
+
+#: doc/classes/String.xml:226
+msgid "Constructs a new String from the given [PackedByteArray]."
+msgstr ""
+
+#: doc/classes/String.xml:235
+msgid "Constructs a new String from the given [PackedInt32Array]."
+msgstr ""
+
+#: doc/classes/String.xml:244
+msgid "Constructs a new String from the given [PackedInt64Array]."
+msgstr ""
+
+#: doc/classes/String.xml:253
+msgid "Constructs a new String from the given [PackedFloat32Array]."
+msgstr ""
+
+#: doc/classes/String.xml:262
+msgid "Constructs a new String from the given [PackedFloat64Array]."
+msgstr ""
+
+#: doc/classes/String.xml:271
+msgid "Constructs a new String from the given [PackedStringArray]."
+msgstr ""
+
+#: doc/classes/String.xml:280
+msgid "Constructs a new String from the given [PackedVector2Array]."
+msgstr ""
+
+#: doc/classes/String.xml:289
+msgid "Constructs a new String from the given [PackedVector3Array]."
+msgstr ""
+
+#: doc/classes/String.xml:298
+msgid "Constructs a new String from the given [PackedColorArray]."
+msgstr ""
+
+#: doc/classes/String.xml:307
+msgid "Returns [code]true[/code] if the string begins with the given string."
+msgstr ""
+
+#: doc/classes/String.xml:314
+msgid "Returns the bigrams (pairs of consecutive letters) of this string."
+msgstr ""
+
+#: doc/classes/String.xml:321
+msgid ""
+"Returns a copy of the string with special characters escaped using the C "
+"language standard."
+msgstr ""
+
+#: doc/classes/String.xml:328
+msgid ""
+"Returns a copy of the string with escaped characters replaced by their "
+"meanings. Supported escape sequences are [code]\\'[/code], [code]\\\"[/"
+"code], [code]\\?[/code], [code]\\\\[/code], [code]\\a[/code], [code]\\b[/"
+"code], [code]\\f[/code], [code]\\n[/code], [code]\\r[/code], [code]\\t[/"
+"code], [code]\\v[/code].\n"
+"[b]Note:[/b] Unlike the GDScript parser, this method doesn't support the "
+"[code]\\uXXXX[/code] escape sequence."
+msgstr ""
+
+#: doc/classes/String.xml:336
+msgid ""
+"Changes the case of some letters. Replaces underscores with spaces, adds "
+"spaces before in-word uppercase characters, converts all letters to "
+"lowercase, then capitalizes the first letter and every letter following a "
+"space character. For [code]capitalize camelCase mixed_with_underscores[/"
+"code], it will return [code]Capitalize Camel Case Mixed With Underscores[/"
+"code]."
+msgstr ""
+
+#: doc/classes/String.xml:345
+msgid ""
+"Performs a case-sensitive comparison to another string. Returns [code]-1[/"
+"code] if less than, [code]+1[/code] if greater than, or [code]0[/code] if "
+"equal."
+msgstr ""
+
+#: doc/classes/String.xml:358
+msgid ""
+"Returns the number of occurrences of substring [code]what[/code] between "
+"[code]from[/code] and [code]to[/code] positions. If [code]from[/code] and "
+"[code]to[/code] equals 0 the whole string will be used. If only [code]to[/"
+"code] equals 0 the remained substring will be used."
+msgstr ""
+
+#: doc/classes/String.xml:371
+msgid ""
+"Returns the number of occurrences of substring [code]what[/code] (ignoring "
+"case) between [code]from[/code] and [code]to[/code] positions. If "
+"[code]from[/code] and [code]to[/code] equals 0 the whole string will be "
+"used. If only [code]to[/code] equals 0 the remained substring will be used."
+msgstr ""
+
+#: doc/classes/String.xml:378
+msgid ""
+"Returns a copy of the string with indentation (leading tabs and spaces) "
+"removed."
+msgstr ""
+
+#: doc/classes/String.xml:385
+msgid ""
+"Returns [code]true[/code] if the length of the string equals [code]0[/code]."
+msgstr ""
+
+#: doc/classes/String.xml:394
+msgid "Returns [code]true[/code] if the string ends with the given string."
+msgstr ""
+
+#: doc/classes/String.xml:405
+msgid ""
+"Erases [code]chars[/code] characters from the string starting from "
+"[code]position[/code]."
+msgstr ""
+
+#: doc/classes/String.xml:416
+msgid ""
+"Returns the index of the [b]first[/b] case-sensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the end of the "
+"string.\n"
+"[b]Note:[/b] If you just want to know whether a string contains a substring, "
+"use the [code]in[/code] operator as follows:\n"
+"[codeblock]\n"
+"# Will evaluate to `false`.\n"
+"if \"i\" in \"team\":\n"
+" pass\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/String.xml:433
+msgid ""
+"Returns the index of the [b]first[/b] case-insensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the end of the string."
+msgstr ""
+
+#: doc/classes/String.xml:444
+msgid ""
+"Formats the string by replacing all occurrences of [code]placeholder[/code] "
+"with [code]values[/code]."
+msgstr ""
+
+#: doc/classes/String.xml:451
+msgid "If the string is a valid file path, returns the base directory name."
+msgstr ""
+
+#: doc/classes/String.xml:458
+msgid ""
+"If the string is a valid file path, returns the full file path without the "
+"extension."
+msgstr ""
+
+#: doc/classes/String.xml:465
+msgid "If the string is a valid file path, returns the extension."
+msgstr ""
+
+#: doc/classes/String.xml:472
+msgid "If the string is a valid file path, returns the filename."
+msgstr ""
+
+#: doc/classes/String.xml:479
+msgid "Hashes the string and returns a 32-bit integer."
+msgstr ""
+
+#: doc/classes/String.xml:486
+msgid ""
+"Converts a string containing a hexadecimal number into an integer. "
+"Hexadecimal strings are expected to be prefixed with \"[code]0x[/code]\" "
+"otherwise [code]0[/code] is returned.\n"
+"[codeblock]\n"
+"print(\"0xff\".hex_to_int()) # Print \"255\"\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/String.xml:496
+msgid ""
+"Escapes (encodes) a string to URL friendly format. Also referred to as 'URL "
+"encode'.\n"
+"[codeblock]\n"
+"print(\"https://example.org/?escaped=\" + \"Godot Engine:'docs'\"."
+"http_escape())\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/String.xml:506
+msgid ""
+"Unescapes (decodes) a string in URL encoded format. Also referred to as 'URL "
+"decode'.\n"
+"[codeblock]\n"
+"print(\"https://example.org/?escaped=\" + \"Godot%20Engine%3A%27docs%27\"."
+"http_unescape())\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/String.xml:518
+msgid ""
+"Converts [code]size[/code] represented as number of bytes to human-readable "
+"format using internationalized set of data size units, namely: B, KiB, MiB, "
+"GiB, TiB, PiB, EiB. Note that the next smallest unit is picked automatically "
+"to hold at most 1024 units.\n"
+"[codeblock]\n"
+"var bytes = 133790307\n"
+"var size = String.humanize_size(bytes)\n"
+"print(size) # prints \"127.5 MiB\"\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/String.xml:534
+msgid ""
+"Returns a copy of the string with the substring [code]what[/code] inserted "
+"at the given position."
+msgstr ""
+
+#: doc/classes/String.xml:541
+msgid ""
+"If the string is a path to a file or directory, returns [code]true[/code] if "
+"the path is absolute."
+msgstr ""
+
+#: doc/classes/String.xml:548
+msgid ""
+"If the string is a path to a file or directory, returns [code]true[/code] if "
+"the path is relative."
+msgstr ""
+
+#: doc/classes/String.xml:557
+msgid ""
+"Returns [code]true[/code] if this string is a subsequence of the given "
+"string."
+msgstr ""
+
+#: doc/classes/String.xml:566
+msgid ""
+"Returns [code]true[/code] if this string is a subsequence of the given "
+"string, without considering case."
+msgstr ""
+
+#: doc/classes/String.xml:573
+msgid ""
+"Returns [code]true[/code] if this string is free from characters that aren't "
+"allowed in file names, those being:\n"
+"[code]: / \\ ? * \" | % < >[/code]"
+msgstr ""
+
+#: doc/classes/String.xml:581
+msgid "Returns [code]true[/code] if this string contains a valid float."
+msgstr ""
+
+#: doc/classes/String.xml:590
+msgid ""
+"Returns [code]true[/code] if this string contains a valid hexadecimal "
+"number. If [code]with_prefix[/code] is [code]true[/code], then a validity of "
+"the hexadecimal number is determined by [code]0x[/code] prefix, for "
+"instance: [code]0xDEADC0DE[/code]."
+msgstr ""
+
+#: doc/classes/String.xml:597
+msgid ""
+"Returns [code]true[/code] if this string contains a valid color in "
+"hexadecimal HTML notation. Other HTML notations such as named colors or "
+"[code]hsl()[/code] colors aren't considered valid by this method and will "
+"return [code]false[/code]."
+msgstr ""
+
+#: doc/classes/String.xml:604
+msgid ""
+"Returns [code]true[/code] if this string is a valid identifier. A valid "
+"identifier may contain only letters, digits and underscores ([code]_[/code]) "
+"and the first character may not be a digit."
+msgstr ""
+
+#: doc/classes/String.xml:611
+msgid "Returns [code]true[/code] if this string contains a valid integer."
+msgstr ""
+
+#: doc/classes/String.xml:618
+msgid "Returns [code]true[/code] if this string contains a valid IP address."
+msgstr ""
+
+#: doc/classes/String.xml:627
+msgid ""
+"Return a [String] which is the concatenation of the [code]parts[/code]. The "
+"separator between elements is the string providing this method.\n"
+"Example:\n"
+"[codeblock]\n"
+"print(\", \".join([\"One\", \"Two\", \"Three\", \"Four\"]))\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/String.xml:638
+msgid ""
+"Returns a copy of the string with special characters escaped using the JSON "
+"standard."
+msgstr ""
+
+#: doc/classes/String.xml:647
+msgid "Returns a number of characters from the left of the string."
+msgstr ""
+
+#: doc/classes/String.xml:654
+msgid "Returns the string's amount of characters."
+msgstr ""
+
+#: doc/classes/String.xml:663
+msgid "Returns a copy of the string with characters removed from the left."
+msgstr ""
+
+#: doc/classes/String.xml:672
+msgid ""
+"Does a simple case-sensitive expression match, where [code]\"*\"[/code] "
+"matches zero or more arbitrary characters and [code]\"?\"[/code] matches any "
+"single character except a period ([code]\".\"[/code])."
+msgstr ""
+
+#: doc/classes/String.xml:681
+msgid ""
+"Does a simple case-insensitive expression match, where [code]\"*\"[/code] "
+"matches zero or more arbitrary characters and [code]\"?\"[/code] matches any "
+"single character except a period ([code]\".\"[/code])."
+msgstr ""
+
+#: doc/classes/String.xml:688
+msgid "Returns the MD5 hash of the string as an array of bytes."
+msgstr ""
+
+#: doc/classes/String.xml:695
+msgid "Returns the MD5 hash of the string as a string."
+msgstr ""
+
+#: doc/classes/String.xml:704
+msgid ""
+"Performs a case-insensitive comparison to another string. Returns [code]-1[/"
+"code] if less than, [code]+1[/code] if greater than, or [code]0[/code] if "
+"equal."
+msgstr ""
+
+#: doc/classes/String.xml:713
+msgid "Returns the character code at position [code]at[/code]."
+msgstr ""
+
+#: doc/classes/String.xml:722
+msgid ""
+"Formats a number to have an exact number of [code]digits[/code] after the "
+"decimal point."
+msgstr ""
+
+#: doc/classes/String.xml:731
+msgid ""
+"Formats a number to have an exact number of [code]digits[/code] before the "
+"decimal point."
+msgstr ""
+
+#: doc/classes/String.xml:738
+msgid "Decode a percent-encoded string. See [method percent_encode]."
+msgstr ""
+
+#: doc/classes/String.xml:745
+msgid ""
+"Percent-encodes a string. Encodes parameters in a URL when sending a HTTP "
+"GET request (and bodies of form-urlencoded POST requests)."
+msgstr ""
+
+#: doc/classes/String.xml:754
+msgid ""
+"If the string is a path, this concatenates [code]file[/code] at the end of "
+"the string as a subpath. E.g. [code]\"this/is\".plus_file(\"path\") == "
+"\"this/is/path\"[/code]."
+msgstr ""
+
+#: doc/classes/String.xml:763
+msgid ""
+"Returns original string repeated a number of times. The number of "
+"repetitions is given by the argument."
+msgstr ""
+
+#: doc/classes/String.xml:774
+msgid ""
+"Replaces occurrences of a case-sensitive substring with the given one inside "
+"the string."
+msgstr ""
+
+#: doc/classes/String.xml:785
+msgid ""
+"Replaces occurrences of a case-insensitive substring with the given one "
+"inside the string."
+msgstr ""
+
+#: doc/classes/String.xml:796
+msgid ""
+"Returns the index of the [b]last[/b] case-sensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the beginning of the "
+"string."
+msgstr ""
+
+#: doc/classes/String.xml:807
+msgid ""
+"Returns the index of the [b]last[/b] case-insensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the beginning of the "
+"string."
+msgstr ""
+
+#: doc/classes/String.xml:816
+msgid "Returns the right side of the string from a given position."
+msgstr ""
+
+#: doc/classes/String.xml:829
+msgid ""
+"Splits the string by a [code]delimiter[/code] string and returns an array of "
+"the substrings, starting from right.\n"
+"The splits in the returned array are sorted in the same order as the "
+"original string, from left to right.\n"
+"If [code]maxsplit[/code] is specified, it defines the number of splits to do "
+"from the right up to [code]maxsplit[/code]. The default value of 0 means "
+"that all items are split, thus giving the same result as [method split].\n"
+"Example:\n"
+"[codeblock]\n"
+"var some_string = \"One,Two,Three,Four\"\n"
+"var some_array = some_string.rsplit(\",\", true, 1)\n"
+"print(some_array.size()) # Prints 2\n"
+"print(some_array[0]) # Prints \"Four\"\n"
+"print(some_array[1]) # Prints \"Three,Two,One\"\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/String.xml:848
+msgid "Returns a copy of the string with characters removed from the right."
+msgstr ""
+
+#: doc/classes/String.xml:855
+msgid "Returns the SHA-1 hash of the string as an array of bytes."
+msgstr ""
+
+#: doc/classes/String.xml:862
+msgid "Returns the SHA-1 hash of the string as a string."
+msgstr ""
+
+#: doc/classes/String.xml:869
+msgid "Returns the SHA-256 hash of the string as an array of bytes."
+msgstr ""
+
+#: doc/classes/String.xml:876
+msgid "Returns the SHA-256 hash of the string as a string."
+msgstr ""
+
+#: doc/classes/String.xml:885
+msgid ""
+"Returns the similarity index of the text compared to this string. 1 means "
+"totally similar and 0 means totally dissimilar."
+msgstr ""
+
+#: doc/classes/String.xml:898
+msgid ""
+"Splits the string by a [code]delimiter[/code] string and returns an array of "
+"the substrings. The [code]delimiter[/code] can be of any length.\n"
+"If [code]maxsplit[/code] is specified, it defines the number of splits to do "
+"from the left up to [code]maxsplit[/code]. The default value of [code]0[/"
+"code] means that all items are split.\n"
+"Example:\n"
+"[codeblock]\n"
+"var some_string = \"One,Two,Three,Four\"\n"
+"var some_array = some_string.split(\",\", true, 1)\n"
+"print(some_array.size()) # Prints 2\n"
+"print(some_array[0]) # Prints \"One\"\n"
+"print(some_array[1]) # Prints \"Two,Three,Four\"\n"
+"[/codeblock]\n"
+"If you need to split strings with more complex rules, use the [RegEx] class "
+"instead."
+msgstr ""
+
+#: doc/classes/String.xml:919
+msgid ""
+"Splits the string in floats by using a delimiter string and returns an array "
+"of the substrings.\n"
+"For example, [code]\"1,2.5,3\"[/code] will return [code][1,2.5,3][/code] if "
+"split by [code]\",\"[/code]."
+msgstr ""
+
+#: doc/classes/String.xml:931
+msgid ""
+"Returns a copy of the string stripped of any non-printable character "
+"(including tabulations, spaces and line breaks) at the beginning and the "
+"end. The optional arguments are used to toggle stripping on the left and "
+"right edges respectively."
+msgstr ""
+
+#: doc/classes/String.xml:938
+msgid ""
+"Returns a copy of the string stripped of any escape character. These include "
+"all non-printable control characters of the first page of the ASCII table (< "
+"32), such as tabulation ([code]\\t[/code] in C) and newline ([code]\\n[/"
+"code] and [code]\\r[/code]) characters, but not spaces."
+msgstr ""
+
+#: doc/classes/String.xml:949
+msgid ""
+"Returns part of the string from the position [code]from[/code] with length "
+"[code]len[/code]. Argument [code]len[/code] is optional and using [code]-1[/"
+"code] will return remaining characters from given position."
+msgstr ""
+
+#: doc/classes/String.xml:956
+msgid ""
+"Converts the String (which is a character array) to [PackedByteArray] (which "
+"is an array of bytes). The conversion is faster compared to [method "
+"to_utf8], as this method assumes that all the characters in the String are "
+"ASCII characters."
+msgstr ""
+
+#: doc/classes/String.xml:963
+msgid ""
+"Converts a string containing a decimal number into a [code]float[/code]."
+msgstr ""
+
+#: doc/classes/String.xml:970
+msgid ""
+"Converts a string containing an integer number into an [code]int[/code]."
+msgstr ""
+
+#: doc/classes/String.xml:977
+msgid "Returns the string converted to lowercase."
+msgstr ""
+
+#: doc/classes/String.xml:984
+msgid "Returns the string converted to uppercase."
+msgstr ""
+
+#: doc/classes/String.xml:991
+msgid ""
+"Converts the String (which is an array of characters) to [PackedByteArray] "
+"(which is an array of bytes). The conversion is a bit slower than [method "
+"to_ascii], but supports all UTF-8 characters. Therefore, you should prefer "
+"this function over [method to_ascii]."
+msgstr ""
+
+#: doc/classes/String.xml:1000
+msgid ""
+"Removes a given string from the start if it starts with it or leaves the "
+"string unchanged."
+msgstr ""
+
+#: doc/classes/String.xml:1009
+msgid ""
+"Removes a given string from the end if it ends with it or leaves the string "
+"unchanged."
+msgstr ""
+
+#: doc/classes/String.xml:1016
+msgid ""
+"Returns a copy of the string with special characters escaped using the XML "
+"standard."
+msgstr ""
+
+#: doc/classes/String.xml:1023
+msgid ""
+"Returns a copy of the string with escaped characters replaced by their "
+"meanings according to the XML standard."
+msgstr ""
+
+#: doc/classes/StringName.xml:4
+msgid "An optimized string type for unique names."
+msgstr ""
+
+#: doc/classes/StringName.xml:7
+msgid ""
+"[StringName]s are immutable strings designed for general-purpose "
+"represention of unique names. [StringName] ensures that only one instance of "
+"a given name exists (so two [StringName]s with the same value are the same "
+"object). Comparing them is much faster than with regular [String]s, because "
+"only the pointers are compared, not the whole strings."
+msgstr ""
+
+#: doc/classes/StringName.xml:18
+msgid "Creates a new [StringName] from the given [String]."
+msgstr ""
+
+#: doc/classes/StyleBox.xml:4
+msgid "Base class for drawing stylized boxes for the UI."
+msgstr ""
+
+#: doc/classes/StyleBox.xml:7
+msgid ""
+"StyleBox is [Resource] that provides an abstract base class for drawing "
+"stylized boxes for the UI. StyleBoxes are used for drawing the styles of "
+"buttons, line edit backgrounds, tree backgrounds, etc. and also for testing "
+"a transparency mask for pointer signals. If mask test fails on a StyleBox "
+"assigned as mask to a control, clicks and motion signals will go through it "
+"to the one below."
+msgstr ""
+
+#: doc/classes/StyleBox.xml:20
+msgid ""
+"Draws this stylebox using a [CanvasItem] with given [RID].\n"
+"You can get a [RID] value using [method Object.get_instance_id] on a "
+"[CanvasItem]-derived node."
+msgstr ""
+
+#: doc/classes/StyleBox.xml:28
+msgid "Returns the size of this [StyleBox] without the margins."
+msgstr ""
+
+#: doc/classes/StyleBox.xml:35
+msgid ""
+"Returns the [CanvasItem] that handles its [constant CanvasItem."
+"NOTIFICATION_DRAW] or [method CanvasItem._draw] callback at this moment."
+msgstr ""
+
+#: doc/classes/StyleBox.xml:44
+msgid "Returns the default value of the specified [enum Margin]."
+msgstr ""
+
+#: doc/classes/StyleBox.xml:53
+msgid ""
+"Returns the content margin offset for the specified [enum Margin].\n"
+"Positive values reduce size inwards, unlike [Control]'s margin values."
+msgstr ""
+
+#: doc/classes/StyleBox.xml:61
+msgid "Returns the minimum size that this stylebox can be shrunk to."
+msgstr ""
+
+#: doc/classes/StyleBox.xml:68
+msgid ""
+"Returns the \"offset\" of a stylebox. This helper function returns a value "
+"equivalent to [code]Vector2(style.get_margin(MARGIN_LEFT), style."
+"get_margin(MARGIN_TOP))[/code]."
+msgstr ""
+
+#: doc/classes/StyleBox.xml:79
+msgid ""
+"Sets the default value of the specified [enum Margin] to given [code]offset[/"
+"code] in pixels."
+msgstr ""
+
+#: doc/classes/StyleBox.xml:90
+msgid "Test a position in a rectangle, return whether it passes the mask test."
+msgstr ""
+
+#: doc/classes/StyleBox.xml:96
+msgid ""
+"The bottom margin for the contents of this style box. Increasing this value "
+"reduces the space available to the contents from the bottom.\n"
+"If this value is negative, it is ignored and a child-specific margin is used "
+"instead. For example for [StyleBoxFlat] the border thickness (if any) is "
+"used instead.\n"
+"It is up to the code using this style box to decide what these contents are: "
+"for example, a [Button] respects this content margin for the textual "
+"contents of the button.\n"
+"[method get_margin] should be used to fetch this value as consumer instead "
+"of reading these properties directly. This is because it correctly respects "
+"negative values and the fallback mentioned above."
+msgstr ""
+
+#: doc/classes/StyleBox.xml:102
+msgid ""
+"The left margin for the contents of this style box.Increasing this value "
+"reduces the space available to the contents from the left.\n"
+"Refer to [member content_margin_bottom] for extra considerations."
+msgstr ""
+
+#: doc/classes/StyleBox.xml:106
+msgid ""
+"The right margin for the contents of this style box. Increasing this value "
+"reduces the space available to the contents from the right.\n"
+"Refer to [member content_margin_bottom] for extra considerations."
+msgstr ""
+
+#: doc/classes/StyleBox.xml:110
+msgid ""
+"The top margin for the contents of this style box. Increasing this value "
+"reduces the space available to the contents from the top.\n"
+"Refer to [member content_margin_bottom] for extra considerations."
+msgstr ""
+
+#: doc/classes/StyleBoxEmpty.xml:4
+msgid "Empty stylebox (does not display anything)."
+msgstr ""
+
+#: doc/classes/StyleBoxEmpty.xml:7
+msgid "Empty stylebox (really does not display anything)."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:4
+msgid ""
+"Customizable [StyleBox] with a given set of parameters (no texture required)."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:7
+msgid ""
+"This [StyleBox] can be used to achieve all kinds of looks without the need "
+"of a texture. Those properties are customizable:\n"
+"- Color\n"
+"- Border width (individual width for each border)\n"
+"- Rounded corners (individual radius for each corner)\n"
+"- Shadow (with blur and offset)\n"
+"Setting corner radius to high values is allowed. As soon as corners would "
+"overlap, the stylebox will switch to a relative system. Example:\n"
+"[codeblock]\n"
+"height = 30\n"
+"corner_radius_top_left = 50\n"
+"corner_radius_bottom_left = 100\n"
+"[/codeblock]\n"
+"The relative system now would take the 1:2 ratio of the two left corners to "
+"calculate the actual corner width. Both corners added will [b]never[/b] be "
+"more than the height. Result:\n"
+"[codeblock]\n"
+"corner_radius_top_left: 10\n"
+"corner_radius_bottom_left: 20\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:33
+msgid ""
+"Returns the given [code]margin[/code]'s border width. See [enum Margin] for "
+"possible values."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:40
+msgid "Returns the smallest border width out of all four borders."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:49
+msgid ""
+"Returns the given [code]corner[/code]'s radius. See [enum Corner] for "
+"possible values."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:58 doc/classes/StyleBoxTexture.xml:18
+msgid ""
+"Returns the size of the given [code]margin[/code]'s expand margin. See [enum "
+"Margin] for possible values."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:69
+msgid ""
+"Sets the border width to [code]width[/code] pixels for the given "
+"[code]margin[/code]. See [enum Margin] for possible values."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:78
+msgid "Sets the border width to [code]width[/code] pixels for all margins."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:89
+msgid ""
+"Sets the corner radius to [code]radius[/code] pixels for the given "
+"[code]corner[/code]. See [enum Corner] for possible values."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:98
+msgid "Sets the corner radius to [code]radius[/code] pixels for all corners."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:113
+msgid ""
+"Sets the corner radius for each corner to [code]radius_top_left[/code], "
+"[code]radius_top_right[/code], [code]radius_bottom_right[/code], and "
+"[code]radius_bottom_left[/code] pixels."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:124 doc/classes/StyleBoxTexture.xml:62
+msgid ""
+"Sets the expand margin to [code]size[/code] pixels for the given "
+"[code]margin[/code]. See [enum Margin] for possible values."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:133 doc/classes/StyleBoxTexture.xml:36
+msgid "Sets the expand margin to [code]size[/code] pixels for all margins."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:148 doc/classes/StyleBoxTexture.xml:51
+msgid ""
+"Sets the expand margin for each margin to [code]size_left[/code], "
+"[code]size_top[/code], [code]size_right[/code], and [code]size_bottom[/code] "
+"pixels."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:154
+msgid ""
+"Antialiasing draws a small ring around the edges, which fades to "
+"transparency. As a result, edges look much smoother. This is only noticeable "
+"when using rounded corners."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:157
+msgid ""
+"This changes the size of the faded ring. Higher values can be used to "
+"achieve a \"blurry\" effect."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:160
+msgid "The background color of the stylebox."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:163
+msgid "If [code]true[/code], the border will fade into the background color."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:166
+msgid "Sets the color of the border."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:169
+msgid "Border width for the bottom border."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:172
+msgid "Border width for the left border."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:175
+msgid "Border width for the right border."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:178
+msgid "Border width for the top border."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:181
+msgid ""
+"This sets the amount of vertices used for each corner. Higher values result "
+"in rounder corners but take more processing power to compute. When choosing "
+"a value, you should take the corner radius ([method set_corner_radius_all]) "
+"into account.\n"
+"For corner radii smaller than 10, [code]4[/code] or [code]5[/code] should be "
+"enough. For corner radii smaller than 30, values between [code]8[/code] and "
+"[code]12[/code] should be enough.\n"
+"A corner detail of [code]1[/code] will result in chamfered corners instead "
+"of rounded corners, which is useful for some artistic effects."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:186
+msgid ""
+"The bottom-left corner's radius. If [code]0[/code], the corner is not "
+"rounded."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:189
+msgid ""
+"The bottom-right corner's radius. If [code]0[/code], the corner is not "
+"rounded."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:192
+msgid ""
+"The top-left corner's radius. If [code]0[/code], the corner is not rounded."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:195
+msgid ""
+"The top-right corner's radius. If [code]0[/code], the corner is not rounded."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:198
+msgid "Toggles drawing of the inner part of the stylebox."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:201
+msgid ""
+"Expands the stylebox outside of the control rect on the bottom edge. Useful "
+"in combination with [member border_width_bottom] to draw a border outside "
+"the control rect."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:204
+msgid ""
+"Expands the stylebox outside of the control rect on the left edge. Useful in "
+"combination with [member border_width_left] to draw a border outside the "
+"control rect."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:207
+msgid ""
+"Expands the stylebox outside of the control rect on the right edge. Useful "
+"in combination with [member border_width_right] to draw a border outside the "
+"control rect."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:210
+msgid ""
+"Expands the stylebox outside of the control rect on the top edge. Useful in "
+"combination with [member border_width_top] to draw a border outside the "
+"control rect."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:213
+msgid ""
+"The color of the shadow. This has no effect if [member shadow_size] is lower "
+"than 1."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:216
+msgid ""
+"The shadow offset in pixels. Adjusts the position of the shadow relatively "
+"to the stylebox."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:219
+msgid "The shadow size in pixels."
+msgstr ""
+
+#: doc/classes/StyleBoxLine.xml:4
+msgid "[StyleBox] that displays a single line."
+msgstr ""
+
+#: doc/classes/StyleBoxLine.xml:7
+msgid ""
+"[StyleBox] that displays a single line of a given color and thickness. It "
+"can be used to draw things like separators."
+msgstr ""
+
+#: doc/classes/StyleBoxLine.xml:15
+msgid "The line's color."
+msgstr ""
+
+#: doc/classes/StyleBoxLine.xml:18
+msgid ""
+"The number of pixels the line will extend before the [StyleBoxLine]'s "
+"bounds. If set to a negative value, the line will begin inside the "
+"[StyleBoxLine]'s bounds."
+msgstr ""
+
+#: doc/classes/StyleBoxLine.xml:21
+msgid ""
+"The number of pixels the line will extend past the [StyleBoxLine]'s bounds. "
+"If set to a negative value, the line will end inside the [StyleBoxLine]'s "
+"bounds."
+msgstr ""
+
+#: doc/classes/StyleBoxLine.xml:24
+msgid "The line's thickness in pixels."
+msgstr ""
+
+#: doc/classes/StyleBoxLine.xml:27
+msgid ""
+"If [code]true[/code], the line will be vertical. If [code]false[/code], the "
+"line will be horizontal."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:4
+msgid "Texture-based nine-patch [StyleBox]."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:7
+msgid ""
+"Texture-based nine-patch [StyleBox], in a way similar to [NinePatchRect]. "
+"This stylebox performs a 3×3 scaling of a texture, where only the center "
+"cell is fully stretched. This makes it possible to design bordered styles "
+"regardless of the stylebox's size."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:27
+msgid ""
+"Returns the size of the given [code]margin[/code]. See [enum Margin] for "
+"possible values."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:73
+msgid ""
+"Sets the margin to [code]size[/code] pixels for the given [code]margin[/"
+"code]. See [enum Margin] for possible values."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:79
+msgid ""
+"Controls how the stylebox's texture will be stretched or tiled horizontally. "
+"See [enum AxisStretchMode] for possible values."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:82
+msgid ""
+"Controls how the stylebox's texture will be stretched or tiled vertically. "
+"See [enum AxisStretchMode] for possible values."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:85
+msgid ""
+"If [code]true[/code], the nine-patch texture's center tile will be drawn."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:88
+msgid ""
+"Expands the bottom margin of this style box when drawing, causing it to be "
+"drawn larger than requested."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:91
+msgid ""
+"Expands the left margin of this style box when drawing, causing it to be "
+"drawn larger than requested."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:94
+msgid ""
+"Expands the right margin of this style box when drawing, causing it to be "
+"drawn larger than requested."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:97
+msgid ""
+"Expands the top margin of this style box when drawing, causing it to be "
+"drawn larger than requested."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:100
+msgid ""
+"Increases the bottom margin of the 3×3 texture box.\n"
+"A higher value means more of the source texture is considered to be part of "
+"the bottom border of the 3×3 box.\n"
+"This is also the value used as fallback for [member StyleBox."
+"content_margin_bottom] if it is negative."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:105
+msgid ""
+"Increases the left margin of the 3×3 texture box.\n"
+"A higher value means more of the source texture is considered to be part of "
+"the left border of the 3×3 box.\n"
+"This is also the value used as fallback for [member StyleBox."
+"content_margin_left] if it is negative."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:110
+msgid ""
+"Increases the right margin of the 3×3 texture box.\n"
+"A higher value means more of the source texture is considered to be part of "
+"the right border of the 3×3 box.\n"
+"This is also the value used as fallback for [member StyleBox."
+"content_margin_right] if it is negative."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:115
+msgid ""
+"Increases the top margin of the 3×3 texture box.\n"
+"A higher value means more of the source texture is considered to be part of "
+"the top border of the 3×3 box.\n"
+"This is also the value used as fallback for [member StyleBox."
+"content_margin_top] if it is negative."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:120
+msgid "Modulates the color of the texture when this style box is drawn."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:123
+msgid ""
+"The normal map to use when drawing this style box.\n"
+"[b]Note:[/b] Godot expects the normal map to use X+, Y-, and Z+ coordinates. "
+"See [url=http://wiki.polycount.com/wiki/"
+"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]this page[/url] for "
+"a comparison of normal map coordinates expected by popular engines."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:127
+msgid ""
+"Species a sub-region of the texture to use.\n"
+"This is equivalent to first wrapping the texture in an [AtlasTexture] with "
+"the same region."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:131
+msgid "The texture to use when drawing this style box."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:137
+msgid "Emitted when the stylebox's texture is changed."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:143
+msgid ""
+"Stretch the stylebox's texture. This results in visible distortion unless "
+"the texture size matches the stylebox's size perfectly."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:146
+msgid ""
+"Repeats the stylebox's texture to match the stylebox's size according to the "
+"nine-patch system."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:149
+msgid ""
+"Repeats the stylebox's texture to match the stylebox's size according to the "
+"nine-patch system. Unlike [constant AXIS_STRETCH_MODE_TILE], the texture may "
+"be slightly stretched to make the nine-patch texture tile seamlessly."
+msgstr ""
+
+#: doc/classes/SubViewport.xml:13
+msgid "The clear mode when the sub-viewport is used as a render target."
+msgstr ""
+
+#: doc/classes/SubViewport.xml:16
+msgid "The update mode when the sub-viewport is used as a render target."
+msgstr ""
+
+#: doc/classes/SubViewport.xml:19
+msgid "The width and height of the sub-viewport."
+msgstr ""
+
+#: doc/classes/SubViewport.xml:22
+msgid ""
+"The 2D size override of the sub-viewport. If either the width or height is "
+"[code]0[/code], the override is disabled."
+msgstr ""
+
+#: doc/classes/SubViewport.xml:25
+msgid "If [code]true[/code], the 2D size override affects stretch as well."
+msgstr ""
+
+#: doc/classes/SubViewport.xml:28
+msgid "If [code]true[/code], the sub-viewport will be used in AR/VR process."
+msgstr ""
+
+#: doc/classes/SubViewport.xml:33
+msgid "Always clear the render target before drawing."
+msgstr ""
+
+#: doc/classes/SubViewport.xml:36
+msgid "Never clear the render target."
+msgstr ""
+
+#: doc/classes/SubViewport.xml:39
+msgid ""
+"Clear the render target next frame, then switch to [constant "
+"CLEAR_MODE_NEVER]."
+msgstr ""
+
+#: doc/classes/SubViewport.xml:42
+msgid "Do not update the render target."
+msgstr ""
+
+#: doc/classes/SubViewport.xml:45
+msgid ""
+"Update the render target once, then switch to [constant UPDATE_DISABLED]."
+msgstr ""
+
+#: doc/classes/SubViewport.xml:48
+msgid ""
+"Update the render target only when it is visible. This is the default value."
+msgstr ""
+
+#: doc/classes/SubViewport.xml:51
+msgid "Update the render target only when the its parent is visible."
+msgstr ""
+
+#: doc/classes/SubViewport.xml:54
+msgid "Always update the render target."
+msgstr ""
+
+#: doc/classes/SubViewportContainer.xml:4
+msgid "Control for holding [SubViewport]s."
+msgstr ""
+
+#: doc/classes/SubViewportContainer.xml:7
+msgid ""
+"A [Container] node that holds a [SubViewport], automatically setting its "
+"size.\n"
+"[b]Note:[/b] Changing a SubViewportContainer's [member Control.rect_scale] "
+"will cause its contents to appear distorted. To change its visual size "
+"without causing distortion, adjust the node's margins instead (if it's not "
+"already in a container)."
+msgstr ""
+
+#: doc/classes/SubViewportContainer.xml:16
+msgid ""
+"If [code]true[/code], the sub-viewport will be scaled to the control's size."
+msgstr ""
+
+#: doc/classes/SubViewportContainer.xml:19
+msgid ""
+"Divides the sub-viewport's effective resolution by this value while "
+"preserving its scale. This can be used to speed up rendering.\n"
+"For example, a 1280×720 sub-viewport with [member stretch_shrink] set to "
+"[code]2[/code] will be rendered at 640×360 while occupying the same size in "
+"the container.\n"
+"[b]Note:[/b] [member stretch] must be [code]true[/code] for this property to "
+"work."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:4
+msgid "Helper tool to create geometry."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:7
+msgid ""
+"The [SurfaceTool] is used to construct a [Mesh] by specifying vertex "
+"attributes individually. It can be used to construct a [Mesh] from a script. "
+"All properties except indices need to be added before calling [method "
+"add_vertex]. For example, to add vertex colors and UVs:\n"
+"[codeblock]\n"
+"var st = SurfaceTool.new()\n"
+"st.begin(Mesh.PRIMITIVE_TRIANGLES)\n"
+"st.add_color(Color(1, 0, 0))\n"
+"st.add_uv(Vector2(0, 0))\n"
+"st.add_vertex(Vector3(0, 0, 0))\n"
+"[/codeblock]\n"
+"The above [SurfaceTool] now contains one vertex of a triangle which has a UV "
+"coordinate and a specified [Color]. If another vertex were added without "
+"calling [method add_uv] or [method add_color], then the last values would be "
+"used.\n"
+"Vertex attributes must be passed [b]before[/b] calling [method add_vertex]. "
+"Failure to do so will result in an error when committing the vertex "
+"information to a mesh.\n"
+"Additionally, the attributes used before the first vertex is added determine "
+"the format of the mesh. For example, if you only add UVs to the first "
+"vertex, you cannot add color to any of the subsequent vertices.\n"
+"See also [ArrayMesh], [ImmediateGeometry3D] and [MeshDataTool] for "
+"procedural geometry generation.\n"
+"[b]Note:[/b] Godot uses clockwise [url=https://learnopengl.com/Advanced-"
+"OpenGL/Face-culling]winding order[/url] for front faces of triangle "
+"primitive modes."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:30
+msgid ""
+"Adds an array of bones for the next vertex to use. [code]bones[/code] must "
+"contain 4 integers."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:39
+msgid "Specifies a [Color] for the next vertex to use."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:48
+msgid ""
+"Adds an index to index array if you are using indexed vertices. Does not "
+"need to be called before adding vertices."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:57
+msgid "Specifies a normal for the next vertex to use."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:66
+msgid ""
+"Specifies whether the current vertex (if using only vertex arrays) or "
+"current index (if also using index arrays) should use smooth normals for "
+"normal calculation."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:75
+msgid "Specifies a tangent for the next vertex to use."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:94
+msgid ""
+"Inserts a triangle fan made of array data into [Mesh] being constructed.\n"
+"Requires the primitive type be set to [constant Mesh.PRIMITIVE_TRIANGLES]."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:104
+msgid "Specifies a set of UV coordinates to use for the next vertex."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:113
+msgid ""
+"Specifies an optional second set of UV coordinates to use for the next "
+"vertex."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:122
+msgid ""
+"Specifies the position of current vertex. Should be called after specifying "
+"other vertex properties (e.g. Color, UV)."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:131
+msgid ""
+"Specifies weight values for next vertex to use. [code]weights[/code] must "
+"contain 4 values."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:144
+msgid ""
+"Append vertices from a given [Mesh] surface onto the current vertex array "
+"with specified [Transform]."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:153
+msgid ""
+"Called before adding any vertices. Takes the primitive type as an argument "
+"(e.g. [constant Mesh.PRIMITIVE_TRIANGLES])."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:160
+msgid "Clear all information passed into the surface tool so far."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:171
+msgid ""
+"Returns a constructed [ArrayMesh] from current information passed in. If an "
+"existing [ArrayMesh] is passed in as an argument, will add an extra surface "
+"to the existing [ArrayMesh].\n"
+"Default flag is [constant Mesh.ARRAY_COMPRESS_DEFAULT]. See "
+"[code]ARRAY_COMPRESS_*[/code] constants in [enum Mesh.ArrayFormat] for other "
+"flags."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:179
+msgid ""
+"Commits the data to the same format used by [method ArrayMesh."
+"add_surface_from_arrays]. This way you can further process the mesh data "
+"using the [ArrayMesh] API."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:190
+msgid "Creates a vertex array from an existing [Mesh]."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:203
+msgid ""
+"Creates a vertex array from the specified blend shape of an existing [Mesh]. "
+"This can be used to extract a specific pose from a blend shape."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:210
+msgid "Removes the index array by expanding the vertex array."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:219
+msgid ""
+"Generates normals from vertices so you do not have to do it manually. If "
+"[code]flip[/code] is [code]true[/code], the resulting normals will be "
+"inverted.\n"
+"Requires the primitive type to be set to [constant Mesh.PRIMITIVE_TRIANGLES]."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:227
+msgid ""
+"Generates a tangent vector for each vertex. Requires that each vertex have "
+"UVs and normals set already."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:234
+msgid ""
+"Shrinks the vertex array by creating an index array (avoids reusing "
+"vertices)."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:243
+msgid "Sets [Material] to be used by the [Mesh] you are constructing."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:4
+msgid "Tabbed container."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:7
+msgid ""
+"Sets the active tab's [code]visible[/code] property to the value [code]true[/"
+"code]. Sets all other children's to [code]false[/code].\n"
+"Ignores non-[Control] children.\n"
+"Individual tabs are always visible unless you use [method set_tab_disabled] "
+"and [method set_tab_title] to hide it.\n"
+"To hide only a tab's content, nest the content inside a child [Control], so "
+"it receives the [TabContainer]'s visibility setting instead."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:19
+msgid "Returns the child [Control] node located at the active tab index."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:26
+msgid ""
+"Returns the [Popup] node instance if one has been set already with [method "
+"set_popup]."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:33
+msgid "Returns the previously active tab index."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:42
+msgid "Returns the [Control] node from the tab at index [code]tab_idx[/code]."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:49 doc/classes/Tabs.xml:50
+msgid "Returns the number of tabs."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:58 doc/classes/Tabs.xml:59
+msgid ""
+"Returns [code]true[/code] if the tab at index [code]tab_idx[/code] is "
+"disabled."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:67 doc/classes/Tabs.xml:68
+msgid ""
+"Returns the [Texture2D] for the tab at index [code]tab_idx[/code] or "
+"[code]null[/code] if the tab has no [Texture2D]."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:76 doc/classes/Tabs.xml:93
+msgid ""
+"Returns the title of the tab at index [code]tab_idx[/code]. Tab titles "
+"default to the name of the indexed child node, but this can be overridden "
+"with [method set_tab_title]."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:83
+msgid "Returns the [TabContainer] rearrange group id."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:92
+msgid ""
+"If set on a [Popup] node instance, a popup menu icon appears in the top-"
+"right corner of the [TabContainer]. Clicking it will expand the [Popup] node."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:103
+msgid ""
+"If [code]disabled[/code] is [code]false[/code], hides the tab at index "
+"[code]tab_idx[/code].\n"
+"[b]Note:[/b] Its title text will remain, unless also removed with [method "
+"set_tab_title]."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:115
+msgid "Sets an icon for the tab at index [code]tab_idx[/code]."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:126
+msgid ""
+"Sets a title for the tab at index [code]tab_idx[/code]. Tab titles default "
+"to the name of the indexed child node, but this can be overridden with "
+"[method set_tab_title]."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:135
+msgid ""
+"Defines rearrange group id, choose for each [TabContainer] the same value to "
+"enable tab drag between [TabContainer]. Enable drag with "
+"[code]set_drag_to_rearrange_enabled(true)[/code]."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:141
+msgid ""
+"The current tab index. When set, this index's [Control] node's "
+"[code]visible[/code] property is set to [code]true[/code] and all others are "
+"set to [code]false[/code]."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:144 doc/classes/Tabs.xml:181
+msgid "If [code]true[/code], tabs can be rearranged with mouse drag."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:147
+msgid ""
+"The alignment of all tabs in the tab container. See the [enum TabAlign] "
+"constants for details."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:150
+msgid ""
+"If [code]true[/code], tabs are visible. If [code]false[/code], tabs' content "
+"and titles are hidden."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:153
+msgid ""
+"If [code]true[/code], children [Control] nodes that are hidden have their "
+"minimum size take into account in the total, instead of only the currently "
+"visible one."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:159
+msgid ""
+"Emitted when the [TabContainer]'s [Popup] button is clicked. See [method "
+"set_popup] for details."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:166 doc/classes/Tabs.xml:212
+msgid "Emitted when switching to another tab."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:173
+msgid "Emitted when a tab is selected, even if it is the current tab."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:179 doc/classes/Tabs.xml:239
+msgid "Align the tabs to the left."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:182 doc/classes/Tabs.xml:242
+msgid "Align the tabs to the center."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:185 doc/classes/Tabs.xml:245
+msgid "Align the tabs to the right."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:190 doc/classes/Tabs.xml:274
+msgid ""
+"Icon for the left arrow button that appears when there are too many tabs to "
+"fit in the container width. When the button is disabled (i.e. the first tab "
+"is visible), it appears semi-transparent."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:193 doc/classes/Tabs.xml:277
+msgid ""
+"Icon for the left arrow button that appears when there are too many tabs to "
+"fit in the container width. Used when the button is being hovered with the "
+"cursor."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:196 doc/classes/Tabs.xml:280
+msgid "The font used to draw tab names."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:199 doc/classes/Tabs.xml:283
+msgid "Font color of inactive tabs."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:202 doc/classes/Tabs.xml:286
+msgid "Font color of disabled tabs."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:205 doc/classes/Tabs.xml:289
+msgid "Font color of the currently selected tab."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:208
+msgid "Space between tab's name and its icon."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:211 doc/classes/Tabs.xml:295
+msgid ""
+"Icon for the right arrow button that appears when there are too many tabs to "
+"fit in the container width. When the button is disabled (i.e. the last tab "
+"is visible) it appears semi-transparent."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:214 doc/classes/Tabs.xml:298
+msgid ""
+"Icon for the right arrow button that appears when there are too many tabs to "
+"fit in the container width. Used when the button is being hovered with the "
+"cursor."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:217
+msgid "The icon for the menu button (see [method set_popup])."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:220
+msgid ""
+"The icon for the menu button (see [method set_popup]) when it's being "
+"hovered with the cursor."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:223
+msgid "The style for the background fill."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:226
+msgid "The space at the left and right edges of the tab bar."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:229
+msgid "The style of inactive tabs."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:232
+msgid "The style of disabled tabs."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:235 doc/classes/Tabs.xml:309
+msgid "The style of the currently selected tab."
+msgstr ""
+
+#: doc/classes/Tabs.xml:4
+msgid "Tabs control."
+msgstr ""
+
+#: doc/classes/Tabs.xml:7
+msgid ""
+"Simple tabs control, similar to [TabContainer] but is only in charge of "
+"drawing tabs, not interact with children."
+msgstr ""
+
+#: doc/classes/Tabs.xml:20
+msgid "Adds a new tab."
+msgstr ""
+
+#: doc/classes/Tabs.xml:29
+msgid "Moves the scroll view to make the tab visible."
+msgstr ""
+
+#: doc/classes/Tabs.xml:36
+msgid ""
+"Returns [code]true[/code] if the offset buttons (the ones that appear when "
+"there's not enough space for all tabs) are visible."
+msgstr ""
+
+#: doc/classes/Tabs.xml:43
+msgid "Returns [code]true[/code] if select with right mouse button is enabled."
+msgstr ""
+
+#: doc/classes/Tabs.xml:75
+msgid "Returns the number of hidden tabs offsetted to the left."
+msgstr ""
+
+#: doc/classes/Tabs.xml:84
+msgid "Returns tab [Rect2] with local position and size."
+msgstr ""
+
+#: doc/classes/Tabs.xml:100
+msgid "Returns the [Tabs]' rearrange group ID."
+msgstr ""
+
+#: doc/classes/Tabs.xml:111
+msgid "Moves a tab from [code]from[/code] to [code]to[/code]."
+msgstr ""
+
+#: doc/classes/Tabs.xml:120
+msgid "Removes the tab at index [code]tab_idx[/code]."
+msgstr ""
+
+#: doc/classes/Tabs.xml:129
+msgid ""
+"If [code]true[/code], enables selecting a tab with the right mouse button."
+msgstr ""
+
+#: doc/classes/Tabs.xml:140
+msgid ""
+"If [code]disabled[/code] is [code]false[/code], hides the tab at index "
+"[code]tab_idx[/code].\n"
+"[b]Note:[/b] Its title text will remain unless it is also removed with "
+"[method set_tab_title]."
+msgstr ""
+
+#: doc/classes/Tabs.xml:152
+msgid "Sets an [code]icon[/code] for the tab at index [code]tab_idx[/code]."
+msgstr ""
+
+#: doc/classes/Tabs.xml:163
+msgid "Sets a [code]title[/code] for the tab at index [code]tab_idx[/code]."
+msgstr ""
+
+#: doc/classes/Tabs.xml:172
+msgid ""
+"Defines the rearrange group ID. Choose for each [Tabs] the same value to "
+"dragging tabs between [Tabs]. Enable drag with "
+"[code]set_drag_to_rearrange_enabled(true)[/code]."
+msgstr ""
+
+#: doc/classes/Tabs.xml:178
+msgid "Select tab at index [code]tab_idx[/code]."
+msgstr ""
+
+#: doc/classes/Tabs.xml:184
+msgid ""
+"if [code]true[/code], the mouse's scroll wheel cab be used to navigate the "
+"scroll view."
+msgstr ""
+
+#: doc/classes/Tabs.xml:187
+msgid "The alignment of all tabs. See [enum TabAlign] for details."
+msgstr ""
+
+#: doc/classes/Tabs.xml:190
+msgid ""
+"Sets when the close button will appear on the tabs. See [enum "
+"CloseButtonDisplayPolicy] for details."
+msgstr ""
+
+#: doc/classes/Tabs.xml:198
+msgid ""
+"Emitted when the active tab is rearranged via mouse drag. See [member "
+"drag_to_rearrange_enabled]."
+msgstr ""
+
+#: doc/classes/Tabs.xml:205
+msgid "Emitted when a tab is right-clicked."
+msgstr ""
+
+#: doc/classes/Tabs.xml:219
+msgid "Emitted when a tab is clicked, even if it is the current tab."
+msgstr ""
+
+#: doc/classes/Tabs.xml:226
+msgid "Emitted when a tab is closed."
+msgstr ""
+
+#: doc/classes/Tabs.xml:233
+msgid "Emitted when a tab is hovered by the mouse."
+msgstr ""
+
+#: doc/classes/Tabs.xml:248
+msgid "Represents the size of the [enum TabAlign] enum."
+msgstr ""
+
+#: doc/classes/Tabs.xml:251
+msgid "Never show the close buttons."
+msgstr ""
+
+#: doc/classes/Tabs.xml:254
+msgid "Only show the close button on the currently active tab."
+msgstr ""
+
+#: doc/classes/Tabs.xml:257
+msgid "Show the close button on all tabs."
+msgstr ""
+
+#: doc/classes/Tabs.xml:260
+msgid "Represents the size of the [enum CloseButtonDisplayPolicy] enum."
+msgstr ""
+
+#: doc/classes/Tabs.xml:265
+msgid "Background of the close button when it's being hovered with the cursor."
+msgstr ""
+
+#: doc/classes/Tabs.xml:268
+msgid "Background of the close button when it's being pressed."
+msgstr ""
+
+#: doc/classes/Tabs.xml:271
+msgid "The icon for the close button (see [member tab_close_display_policy])."
+msgstr ""
+
+#: doc/classes/Tabs.xml:292
+msgid "The horizontal separation between the tabs."
+msgstr ""
+
+#: doc/classes/Tabs.xml:303
+msgid "The style of an inactive tab."
+msgstr ""
+
+#: doc/classes/Tabs.xml:306
+msgid "The style of a disabled tab"
+msgstr ""
+
+#: doc/classes/TCP_Server.xml:4
+msgid "A TCP server."
+msgstr ""
+
+#: doc/classes/TCP_Server.xml:7
+msgid ""
+"A TCP server. Listens to connections on a port and returns a [StreamPeerTCP] "
+"when it gets an incoming connection."
+msgstr ""
+
+#: doc/classes/TCP_Server.xml:16
+msgid "Returns [code]true[/code] if a connection is available for taking."
+msgstr ""
+
+#: doc/classes/TCP_Server.xml:23
+msgid ""
+"Returns [code]true[/code] if the server is currently listening for "
+"connections."
+msgstr ""
+
+#: doc/classes/TCP_Server.xml:34
+msgid ""
+"Listen on the [code]port[/code] binding to [code]bind_address[/code].\n"
+"If [code]bind_address[/code] is set as [code]\"*\"[/code] (default), the "
+"server will listen on all available addresses (both IPv4 and IPv6).\n"
+"If [code]bind_address[/code] is set as [code]\"0.0.0.0\"[/code] (for IPv4) "
+"or [code]\"::\"[/code] (for IPv6), the server will listen on all available "
+"addresses matching that IP type.\n"
+"If [code]bind_address[/code] is set to any valid address (e.g. "
+"[code]\"192.168.1.101\"[/code], [code]\"::1\"[/code], etc), the server will "
+"only listen on the interface with that addresses (or fail if no interface "
+"with the given address exists)."
+msgstr ""
+
+#: doc/classes/TCP_Server.xml:44
+msgid "Stops listening."
+msgstr ""
+
+#: doc/classes/TCP_Server.xml:51
+msgid ""
+"If a connection is available, returns a StreamPeerTCP with the connection."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:4
+msgid "Multiline text editing control."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:7
+msgid ""
+"TextEdit is meant for editing large, multiline text. It also has facilities "
+"for editing code, such as syntax highlighting support and multiple levels of "
+"undo/redo."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:18
+msgid ""
+"Returns if the given line is foldable, that is, it has indented lines right "
+"below it."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:25
+msgid ""
+"Centers the viewport on the line the editing cursor is at. This also resets "
+"the [member scroll_horizontal] value to [code]0[/code]."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:32
+msgid "Clears the undo history."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:39
+msgid "Copy's the current text selection."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:46
+msgid "Returns the column the editing cursor is at."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:53
+msgid "Returns the line the editing cursor is at."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:64
+msgid ""
+"Moves the cursor at the specified [code]column[/code] index.\n"
+"If [code]adjust_viewport[/code] is set to [code]true[/code], the viewport "
+"will center at the cursor position after the move occurs."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:80
+msgid ""
+"Moves the cursor at the specified [code]line[/code] index.\n"
+"If [code]adjust_viewport[/code] is set to [code]true[/code], the viewport "
+"will center at the cursor position after the move occurs.\n"
+"If [code]can_be_hidden[/code] is set to [code]true[/code], the specified "
+"[code]line[/code] can be hidden using [method set_line_as_hidden]."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:89
+msgid "Cut's the current selection."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:96
+msgid "Deselects the current selection."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:103
+msgid "Folds all lines that are possible to be folded (see [method can_fold])."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:112
+msgid "Folds the given line, if possible (see [method can_fold])."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:119
+msgid "Returns an array containing the line number of each breakpoint."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:128
+msgid "Returns the text of a specific line."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:135
+msgid "Returns the amount of total lines in the text."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:142
+msgid ""
+"Returns the [PopupMenu] of this [TextEdit]. By default, this menu is "
+"displayed when right-clicking on the [TextEdit]."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:149
+msgid "Returns the selection begin column."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:156
+msgid "Returns the selection begin line."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:163
+msgid "Returns the text inside the selection."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:170
+msgid "Returns the selection end column."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:177
+msgid "Returns the selection end line."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:184
+msgid "Returns a [String] text with the word under the mouse cursor location."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:193
+msgid "Insert the specified text at the cursor position."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:202
+msgid "Returns whether the line at the specified index is folded or not."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:211
+msgid "Returns whether the line at the specified index is hidden or not."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:218
+msgid "Returns [code]true[/code] if the selection is active."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:227
+msgid ""
+"Triggers a right-click menu action by the specified index. See [enum "
+"MenuItems] for a list of available indexes."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:234
+msgid "Paste the current selection."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:241
+msgid "Perform redo operation."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:248
+msgid ""
+"Removes all the breakpoints. This will not fire the [signal "
+"breakpoint_toggled] signal."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:263
+msgid ""
+"Perform a search inside the text. Search flags can be specified in the [enum "
+"SearchFlags] enum.\n"
+"Returns an empty [code]Dictionary[/code] if no result was found. Otherwise, "
+"returns a [code]Dictionary[/code] containing [code]line[/code] and "
+"[code]column[/code] entries, e.g:\n"
+"[codeblock]\n"
+"var result = search(key, flags, line, column)\n"
+"if !result.empty():\n"
+" # Result found.\n"
+" var line_number = result.line\n"
+" var column_number = result.column\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/TextEdit.xml:286
+msgid ""
+"Perform selection, from line/column to line/column.\n"
+"If [member selecting_enabled] is [code]false[/code], no selection will occur."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:294
+msgid ""
+"Select all the text.\n"
+"If [member selecting_enabled] is [code]false[/code], no selection will occur."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:306
+msgid "Sets the text for a specific line."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:317
+msgid "If [code]true[/code], hides the line of the specified index."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:326
+msgid "Toggle the folding of the code block at the given line."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:333
+msgid "Perform undo operation."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:342
+msgid "Unfolds the given line, if folded."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:349
+msgid ""
+"Unhide all lines that were previously set to hidden by [method "
+"set_line_as_hidden]."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:355
+msgid "If [code]true[/code], the breakpoint gutter is visible."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:364
+msgid ""
+"If [code]true[/code], the caret displays as a rectangle.\n"
+"If [code]false[/code], the caret displays as a bar."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:368
+msgid ""
+"If [code]true[/code], a right-click moves the cursor at the mouse position "
+"before displaying the context menu.\n"
+"If [code]false[/code], the context menu disregards mouse location."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:372
+msgid "If [code]true[/code], a right-click displays the context menu."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:375
+msgid ""
+"If [code]true[/code], the \"space\" character will have a visible "
+"representation."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:378
+msgid ""
+"If [code]true[/code], the \"tab\" character will have a visible "
+"representation."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:382
+msgid ""
+"If [code]true[/code], the fold gutter is visible. This enables folding "
+"groups of indented lines."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:385
+msgid ""
+"If [code]true[/code], all lines that have been set to hidden by [method "
+"set_line_as_hidden], will not be visible."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:388
+msgid ""
+"If [code]true[/code], all occurrences of the selected text will be "
+"highlighted."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:391
+msgid "If [code]true[/code], the line containing the cursor is highlighted."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:394
+msgid ""
+"If [code]true[/code], a minimap is shown, providing an outline of your "
+"source code."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:397
+msgid "The width, in pixels, of the minimap."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:401
+msgid ""
+"If [code]true[/code], custom [code]font_color_selected[/code] will be used "
+"for selected text."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:404
+msgid ""
+"If [code]true[/code], read-only mode is enabled. Existing text cannot be "
+"modified and new text cannot be added."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:413
+msgid ""
+"If [code]true[/code], text can be selected.\n"
+"If [code]false[/code], text can not be selected by the user or by the "
+"[method select] or [method select_all] methods."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:417
+msgid ""
+"If [code]true[/code], shortcut keys for context menu items are enabled, even "
+"if the context menu is disabled."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:420
+msgid ""
+"If [code]true[/code], line numbers are displayed to the left of the text."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:423
+msgid ""
+"If [code]true[/code], sets the [code]step[/code] of the scrollbars to "
+"[code]0.25[/code] which results in smoother scrolling."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:428
+msgid "String value of the [TextEdit]."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:431
+msgid "Vertical scroll sensitivity."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:437
+msgid ""
+"If [code]true[/code], enables text wrapping when it goes beyond the edge of "
+"what is visible."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:445
+msgid "Emitted when a breakpoint is placed via the breakpoint gutter."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:450
+msgid "Emitted when the cursor changes."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:459
+msgid "Emitted when the info icon is clicked."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:496
+msgid "Match case when searching."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:499
+msgid "Match whole words when searching."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:502
+msgid "Search from end to beginning."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:511
+msgid ""
+"Pastes the clipboard text over the selected text (or at the cursor's "
+"position)."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:514
+msgid "Erases the whole [TextEdit] text."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:517
+msgid "Selects the whole [TextEdit] text."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:523
+msgid "Redoes the previous action."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:531
+msgid ""
+"Sets the background [Color] of this [TextEdit]. [member syntax_highlighting] "
+"has to be enabled."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:534
+msgid ""
+"Sets the [Color] of the bookmark marker. [member syntax_highlighting] has to "
+"be enabled."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:539 doc/classes/TextEdit.xml:566
+msgid ""
+"Sets the [Color] of the breakpoints. [member breakpoint_gutter] has to be "
+"enabled."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:577
+msgid "Sets the default [Font]."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:580
+msgid "Sets the font [Color]."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:585
+msgid ""
+"Sets the [Color] of the selected text. [member override_selected_font_color] "
+"has to be enabled."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:588
+msgid ""
+"Sets the [Color] of the line numbers. [member show_line_numbers] has to be "
+"enabled."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:591
+msgid "Sets the spacing between the lines."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:594
+msgid "Sets the [Color] of marked text."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:597
+msgid "Sets the [StyleBox] of this [TextEdit]."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:600
+msgid ""
+"Sets the [StyleBox] of this [TextEdit] when [member readonly] is enabled."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:605
+msgid "Sets the highlight [Color] of text selections."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:610
+msgid "Sets a custom [Texture2D] for tab text characters."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:613
+msgid ""
+"Sets the highlight [Color] of multiple occurrences. [member "
+"highlight_all_occurrences] has to be enabled."
+msgstr ""
+
+#: doc/classes/Texture2D.xml:4
+msgid "Texture for 2D and 3D."
+msgstr ""
+
+#: doc/classes/Texture2D.xml:7
+msgid ""
+"A texture works by registering an image in the video hardware, which then "
+"can be used in 3D models or 2D [Sprite2D] or GUI [Control].\n"
+"Textures are often created by loading them from a file. See [method "
+"@GDScript.load].\n"
+"[Texture2D] is a base for other resources. It cannot be used directly."
+msgstr ""
+
+#: doc/classes/Texture2D.xml:36
+msgid ""
+"Draws the texture using a [CanvasItem] with the [RenderingServer] API at the "
+"specified [code]position[/code]."
+msgstr ""
+
+#: doc/classes/Texture2D.xml:63
+msgid "Draws the texture using a [CanvasItem] with the [RenderingServer] API."
+msgstr ""
+
+#: doc/classes/Texture2D.xml:92
+msgid ""
+"Draws a part of the texture using a [CanvasItem] with the [RenderingServer] "
+"API."
+msgstr ""
+
+#: doc/classes/Texture2D.xml:99
+msgid ""
+"Returns an [Image] with the data from this [Texture2D]. [Image]s can be "
+"accessed and manipulated directly."
+msgstr ""
+
+#: doc/classes/Texture2D.xml:106
+msgid "Returns the texture height."
+msgstr ""
+
+#: doc/classes/Texture2D.xml:113
+msgid "Returns the texture size."
+msgstr ""
+
+#: doc/classes/Texture2D.xml:120
+msgid "Returns the texture width."
+msgstr ""
+
+#: doc/classes/Texture2D.xml:127
+msgid "Returns [code]true[/code] if this [Texture2D] has an alpha channel."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:4
+msgid ""
+"Texture-based button. Supports Pressed, Hover, Disabled and Focused states."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:7
+msgid ""
+"[TextureButton] has the same functionality as [Button], except it uses "
+"sprites instead of Godot's [Theme] resource. It is faster to create, but it "
+"doesn't support localization like more complex [Control]s.\n"
+"The \"normal\" state must contain a texture ([member texture_normal]); other "
+"textures are optional."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:16
+msgid ""
+"If [code]true[/code], the texture stretches to the edges of the node's "
+"bounding rectangle using the [member stretch_mode]. If [code]false[/code], "
+"the texture will not scale with the node."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:25
+msgid ""
+"Controls the texture's behavior when you resize the node's bounding "
+"rectangle, [b]only if[/b] [member expand] is [code]true[/code]. Set it to "
+"one of the [enum StretchMode] constants. See the constants to learn more."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:28
+msgid ""
+"Pure black and white [BitMap] image to use for click detection. On the mask, "
+"white pixels represent the button's clickable area. Use it to create buttons "
+"with curved shapes."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:31
+msgid ""
+"Texture to display when the node is disabled. See [member BaseButton."
+"disabled]."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:34
+msgid "Texture to display when the node has mouse or keyboard focus."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:37
+msgid "Texture to display when the mouse hovers the node."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:40
+msgid ""
+"Texture to display by default, when the node is [b]not[/b] in the disabled, "
+"focused, hover or pressed state."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:43
+msgid ""
+"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 "
+"[member BaseButton.shortcut] key."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:48 doc/classes/TextureRect.xml:36
+msgid "Scale to fit the node's bounding rectangle."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:51 doc/classes/TextureRect.xml:39
+msgid "Tile inside the node's bounding rectangle."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:54 doc/classes/TextureRect.xml:42
+msgid ""
+"The texture keeps its original size and stays in the bounding rectangle's "
+"top-left corner."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:57 doc/classes/TextureRect.xml:45
+msgid ""
+"The texture keeps its original size and stays centered in the node's "
+"bounding rectangle."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:60 doc/classes/TextureRect.xml:48
+msgid ""
+"Scale the texture to fit the node's bounding rectangle, but maintain the "
+"texture's aspect ratio."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:63
+msgid ""
+"Scale the texture to fit the node's bounding rectangle, center it, and "
+"maintain its aspect ratio."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:66 doc/classes/TextureRect.xml:54
+msgid ""
+"Scale the texture so that the shorter side fits the bounding rectangle. The "
+"other side clips to the node's limits."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:4
+msgid "Base class for 3D texture types."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:7
+msgid ""
+"Base class for [Texture2DArray], [Cubemap] and [CubemapArray]. Cannot be "
+"used directly, but contains all the functions necessary for accessing the "
+"derived resource types. Data is set on a per-layer basis. For "
+"[Texture2DArray]s, the layer specifies the array layer."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:16
+msgid ""
+"Returns the current format being used by this texture. See [enum Image."
+"Format] for details."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:23
+msgid ""
+"Returns the height of the texture. Height is typically represented by the Y-"
+"axis."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:32
+msgid ""
+"Returns an [Image] resource with the data from specified [code]layer[/code]."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:51
+msgid ""
+"Returns the width of the texture. Width is typically represented by the X-"
+"axis."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:4
+msgid ""
+"Texture-based progress bar. Useful for loading screens and life or stamina "
+"bars."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:7
+msgid ""
+"TextureProgress works like [ProgressBar], but uses up to 3 textures instead "
+"of Godot's [Theme] resource. It can be used to create horizontal, vertical "
+"and radial progress bars."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:33
+msgid "The fill direction. See [enum FillMode] for possible values."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:37
+msgid ""
+"If [code]true[/code], Godot treats the bar's textures like in "
+"[NinePatchRect]. Use the [code]stretch_margin_*[/code] properties like "
+"[member stretch_margin_bottom] to set up the nine patch's 3×3 grid. When "
+"using a radial [member fill_mode], this setting will enable stretching."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:40
+msgid ""
+"Offsets [member texture_progress] if [member fill_mode] is [constant "
+"FILL_CLOCKWISE] or [constant FILL_COUNTER_CLOCKWISE]."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:43
+msgid ""
+"Upper limit for the fill of [member texture_progress] if [member fill_mode] "
+"is [constant FILL_CLOCKWISE] or [constant FILL_COUNTER_CLOCKWISE]. When the "
+"node's [code]value[/code] is equal to its [code]max_value[/code], the "
+"texture fills up to this angle.\n"
+"See [member Range.value], [member Range.max_value]."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:47
+msgid ""
+"Starting angle for the fill of [member texture_progress] if [member "
+"fill_mode] is [constant FILL_CLOCKWISE] or [constant "
+"FILL_COUNTER_CLOCKWISE]. When the node's [code]value[/code] is equal to its "
+"[code]min_value[/code], the texture doesn't show up at all. When the "
+"[code]value[/code] increases, the texture fills and tends towards [member "
+"radial_fill_degrees]."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:50
+msgid ""
+"The height of the 9-patch's bottom row. A margin of 16 means the 9-slice's "
+"bottom corners and side will have a height of 16 pixels. You can set all 4 "
+"margin values individually to create panels with non-uniform borders."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:53
+msgid "The width of the 9-patch's left column."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:56
+msgid "The width of the 9-patch's right column."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:59
+msgid "The height of the 9-patch's top row."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:62
+msgid ""
+"[Texture2D] that draws over the progress bar. Use it to add highlights or an "
+"upper-frame that hides part of [member texture_progress]."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:65
+msgid ""
+"[Texture2D] that clips based on the node's [code]value[/code] and [member "
+"fill_mode]. As [code]value[/code] increased, the texture fills up. It shows "
+"entirely when [code]value[/code] reaches [code]max_value[/code]. It doesn't "
+"show at all if [code]value[/code] is equal to [code]min_value[/code].\n"
+"The [code]value[/code] property comes from [Range]. See [member Range."
+"value], [member Range.min_value], [member Range.max_value]."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:69
+msgid "[Texture2D] that draws under the progress bar. The bar's background."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:72
+msgid ""
+"Multiplies the color of the bar's [code]texture_over[/code] texture. The "
+"effect is similar to [member CanvasItem.modulate], except it only affects "
+"this specific texture instead of the entire node."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:75
+msgid ""
+"Multiplies the color of the bar's [code]texture_progress[/code] texture."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:78
+msgid "Multiplies the color of the bar's [code]texture_under[/code] texture."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:83
+msgid "The [member texture_progress] fills from left to right."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:86
+msgid "The [member texture_progress] fills from right to left."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:89
+msgid "The [member texture_progress] fills from top to bottom."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:92
+msgid "The [member texture_progress] fills from bottom to top."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:95
+msgid ""
+"Turns the node into a radial bar. The [member texture_progress] fills "
+"clockwise. See [member radial_center_offset], [member radial_initial_angle] "
+"and [member radial_fill_degrees] to control the way the bar fills up."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:98
+msgid ""
+"Turns the node into a radial bar. The [member texture_progress] fills "
+"counterclockwise. See [member radial_center_offset], [member "
+"radial_initial_angle] and [member radial_fill_degrees] to control the way "
+"the bar fills up."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:101
+msgid ""
+"The [member texture_progress] fills from the center, expanding both towards "
+"the left and the right."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:104
+msgid ""
+"The [member texture_progress] fills from the center, expanding both towards "
+"the top and the bottom."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:107
+msgid ""
+"Turns the node into a radial bar. The [member texture_progress] fills "
+"radially from the center, expanding both clockwise and counterclockwise. See "
+"[member radial_center_offset], [member radial_initial_angle] and [member "
+"radial_fill_degrees] to control the way the bar fills up."
+msgstr ""
+
+#: doc/classes/TextureRect.xml:4
+msgid "Control for drawing textures."
+msgstr ""
+
+#: doc/classes/TextureRect.xml:7
+msgid ""
+"Used to draw icons and sprites in a user interface. The texture's placement "
+"can be controlled with the [member stretch_mode] property. It can scale, "
+"tile, or stay centered inside its bounding rectangle."
+msgstr ""
+
+#: doc/classes/TextureRect.xml:15
+msgid "If [code]true[/code], the texture scales to fit its bounding rectangle."
+msgstr ""
+
+#: doc/classes/TextureRect.xml:25
+msgid ""
+"Controls the texture's behavior when resizing the node's bounding rectangle. "
+"See [enum StretchMode]."
+msgstr ""
+
+#: doc/classes/TextureRect.xml:28
+msgid "The node's [Texture2D] resource."
+msgstr ""
+
+#: doc/classes/TextureRect.xml:33
+msgid ""
+"Scale to fit the node's bounding rectangle, only if [code]expand[/code] is "
+"[code]true[/code]. Default [code]stretch_mode[/code], for backwards "
+"compatibility. Until you set [code]expand[/code] to [code]true[/code], the "
+"texture will behave like [constant STRETCH_KEEP]."
+msgstr ""
+
+#: doc/classes/TextureRect.xml:51
+msgid ""
+"Scale the texture to fit the node's bounding rectangle, center it and "
+"maintain its aspect ratio."
+msgstr ""
+
+#: doc/classes/Theme.xml:4
+msgid "Theme for controls."
+msgstr ""
+
+#: doc/classes/Theme.xml:7
+msgid ""
+"A theme for skinning controls. Controls can be skinned individually, but for "
+"complex applications, it's more practical to just create a global theme that "
+"defines everything. This theme can be applied to any [Control]; the Control "
+"and its children will automatically use it.\n"
+"Theme resources can alternatively be loaded by writing them in a [code]."
+"theme[/code] file, see the documentation for more information."
+msgstr ""
+
+#: doc/classes/Theme.xml:11
+msgid "https://docs.godotengine.org/en/latest/tutorials/gui/gui_skinning.html"
+msgstr ""
+
+#: doc/classes/Theme.xml:18
+msgid "Clears all values on the theme."
+msgstr ""
+
+#: doc/classes/Theme.xml:29
+msgid ""
+"Clears the [Color] at [code]name[/code] if the theme has [code]type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:40
+msgid ""
+"Clears the constant at [code]name[/code] if the theme has [code]type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:51
+msgid ""
+"Clears the [Font] at [code]name[/code] if the theme has [code]type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:62
+msgid ""
+"Clears the icon at [code]name[/code] if the theme has [code]type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:73
+msgid ""
+"Clears [StyleBox] at [code]name[/code] if the theme has [code]type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:80
+msgid "Sets the theme's values to a copy of the default theme values."
+msgstr ""
+
+#: doc/classes/Theme.xml:89
+msgid "Sets the theme's values to a copy of a given theme."
+msgstr ""
+
+#: doc/classes/Theme.xml:100
+msgid ""
+"Returns the [Color] at [code]name[/code] if the theme has [code]type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:109
+msgid ""
+"Returns all the [Color]s as a [PackedStringArray] filled with each [Color]'s "
+"name, for use in [method get_color], if the theme has [code]type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:120
+msgid ""
+"Returns the constant at [code]name[/code] if the theme has [code]type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:129
+msgid ""
+"Returns all the constants as a [PackedStringArray] filled with each "
+"constant's name, for use in [method get_constant], if the theme has "
+"[code]type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:140
+msgid ""
+"Returns the [Font] at [code]name[/code] if the theme has [code]type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:149
+msgid ""
+"Returns all the [Font]s as a [PackedStringArray] filled with each [Font]'s "
+"name, for use in [method get_font], if the theme has [code]type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:160
+msgid ""
+"Returns the icon [Texture2D] at [code]name[/code] if the theme has "
+"[code]type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:169
+msgid ""
+"Returns all the icons as a [PackedStringArray] filled with each "
+"[Texture2D]'s name, for use in [method get_icon], if the theme has "
+"[code]type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:180
+msgid ""
+"Returns the icon [StyleBox] at [code]name[/code] if the theme has "
+"[code]type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:189
+msgid ""
+"Returns all the [StyleBox]s as a [PackedStringArray] filled with each "
+"[StyleBox]'s name, for use in [method get_stylebox], if the theme has "
+"[code]type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:196
+msgid ""
+"Returns all the [StyleBox] types as a [PackedStringArray] filled with each "
+"[StyleBox]'s type, for use in [method get_stylebox] and/or [method "
+"get_stylebox_list], if the theme has [code]type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:205
+msgid ""
+"Returns all the types in [code]type[/code] as a [PackedStringArray] for use "
+"in any of the [code]get_*[/code] functions, if the theme has [code]type[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:216
+msgid ""
+"Returns [code]true[/code] if [Color] with [code]name[/code] is in "
+"[code]type[/code].\n"
+"Returns [code]false[/code] if the theme does not have [code]type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:228
+msgid ""
+"Returns [code]true[/code] if constant with [code]name[/code] is in "
+"[code]type[/code].\n"
+"Returns [code]false[/code] if the theme does not have [code]type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:240
+msgid ""
+"Returns [code]true[/code] if [Font] with [code]name[/code] is in [code]type[/"
+"code].\n"
+"Returns [code]false[/code] if the theme does not have [code]type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:252
+msgid ""
+"Returns [code]true[/code] if icon [Texture2D] with [code]name[/code] is in "
+"[code]type[/code].\n"
+"Returns [code]false[/code] if the theme does not have [code]type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:264
+msgid ""
+"Returns [code]true[/code] if [StyleBox] with [code]name[/code] is in "
+"[code]type[/code].\n"
+"Returns [code]false[/code] if the theme does not have [code]type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:278
+msgid ""
+"Sets the theme's [Color] to [code]color[/code] at [code]name[/code] in "
+"[code]type[/code].\n"
+"Does nothing if the theme does not have [code]type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:292
+msgid ""
+"Sets the theme's constant to [code]constant[/code] at [code]name[/code] in "
+"[code]type[/code].\n"
+"Does nothing if the theme does not have [code]type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:306
+msgid ""
+"Sets the theme's [Font] to [code]font[/code] at [code]name[/code] in "
+"[code]type[/code].\n"
+"Does nothing if the theme does not have [code]type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:320
+msgid ""
+"Sets the theme's icon [Texture2D] to [code]texture[/code] at [code]name[/"
+"code] in [code]type[/code].\n"
+"Does nothing if the theme does not have [code]type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:334
+msgid ""
+"Sets theme's [StyleBox] to [code]stylebox[/code] at [code]name[/code] in "
+"[code]type[/code].\n"
+"Does nothing if the theme does not have [code]type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:341
+msgid "The theme's default font."
+msgstr ""
+
+#: doc/classes/Thread.xml:4
+msgid "A unit of execution in a process."
+msgstr ""
+
+#: doc/classes/Thread.xml:7
+msgid ""
+"A unit of execution in a process. Can run methods on [Object]s "
+"simultaneously. The use of synchronization via [Mutex] or [Semaphore] is "
+"advised if working with shared objects."
+msgstr ""
+
+#: doc/classes/Thread.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/threads/thread_safe_apis."
+"html"
+msgstr ""
+
+#: doc/classes/Thread.xml:18
+msgid ""
+"Returns the current [Thread]'s ID, uniquely identifying it among all threads."
+msgstr ""
+
+#: doc/classes/Thread.xml:25
+msgid ""
+"Returns [code]true[/code] if this [Thread] is currently active. An active "
+"[Thread] cannot start work on a new method but can be joined with [method "
+"wait_to_finish]."
+msgstr ""
+
+#: doc/classes/Thread.xml:40
+msgid ""
+"Starts a new [Thread] that runs [code]method[/code] on object "
+"[code]instance[/code] with [code]userdata[/code] passed as an argument. Even "
+"if no userdata is passed, [code]method[/code] must accept one argument and "
+"it will be null. The [code]priority[/code] of the [Thread] can be changed by "
+"passing a value from the [enum Priority] enum.\n"
+"Returns [constant OK] on success, or [constant ERR_CANT_CREATE] on failure."
+msgstr ""
+
+#: doc/classes/Thread.xml:48
+msgid ""
+"Joins the [Thread] and waits for it to finish. Returns what the method "
+"called returned."
+msgstr ""
+
+#: doc/classes/Thread.xml:54
+msgid "A thread running with lower priority than normally."
+msgstr ""
+
+#: doc/classes/Thread.xml:57
+msgid "A thread with a standard priority."
+msgstr ""
+
+#: doc/classes/Thread.xml:60
+msgid "A thread running with higher priority than normally."
+msgstr ""
+
+#: doc/classes/TileMap.xml:4
+msgid "Node for 2D tile-based maps."
+msgstr ""
+
+#: doc/classes/TileMap.xml:7
+msgid ""
+"Node for 2D tile-based maps. Tilemaps use a [TileSet] which contain a list "
+"of tiles (textures plus optional collision, navigation, and/or occluder "
+"shapes) which are used to create grid-based maps."
+msgstr ""
+
+#: doc/classes/TileMap.xml:10
+msgid "https://docs.godotengine.org/en/latest/tutorials/2d/using_tilemaps.html"
+msgstr ""
+
+#: doc/classes/TileMap.xml:17
+msgid "Clears all cells."
+msgstr ""
+
+#: doc/classes/TileMap.xml:24
+msgid "Clears cells that do not exist in the tileset."
+msgstr ""
+
+#: doc/classes/TileMap.xml:35
+msgid ""
+"Returns the tile index of the given cell. If no tile exists in the cell, "
+"returns [constant INVALID_CELL]."
+msgstr ""
+
+#: doc/classes/TileMap.xml:46
+msgid ""
+"Returns the coordinate (subtile column and row) of the autotile variation in "
+"the tileset. Returns a zero vector if the cell doesn't have autotiling."
+msgstr ""
+
+#: doc/classes/TileMap.xml:55
+msgid ""
+"Returns the tile index of the cell given by a Vector2. If no tile exists in "
+"the cell, returns [constant INVALID_CELL]."
+msgstr ""
+
+#: doc/classes/TileMap.xml:64
+msgid "Returns [code]true[/code] if the given collision layer bit is set."
+msgstr ""
+
+#: doc/classes/TileMap.xml:73
+msgid "Returns [code]true[/code] if the given collision mask bit is set."
+msgstr ""
+
+#: doc/classes/TileMap.xml:80
+msgid ""
+"Returns a [Vector2] array with the positions of all cells containing a tile "
+"from the tileset (i.e. a tile index different from [code]-1[/code])."
+msgstr ""
+
+#: doc/classes/TileMap.xml:89
+msgid "Returns an array of all cells with the given tile [code]index[/code]."
+msgstr ""
+
+#: doc/classes/TileMap.xml:96
+msgid "Returns a rectangle enclosing the used (non-empty) tiles of the map."
+msgstr ""
+
+#: doc/classes/TileMap.xml:107
+msgid ""
+"Returns [code]true[/code] if the given cell is transposed, i.e. the X and Y "
+"axes are swapped."
+msgstr ""
+
+#: doc/classes/TileMap.xml:118
+msgid "Returns [code]true[/code] if the given cell is flipped in the X axis."
+msgstr ""
+
+#: doc/classes/TileMap.xml:129
+msgid "Returns [code]true[/code] if the given cell is flipped in the Y axis."
+msgstr ""
+
+#: doc/classes/TileMap.xml:140
+msgid ""
+"Returns the global position corresponding to the given tilemap (grid-based) "
+"coordinates.\n"
+"Optionally, the tilemap's half offset can be ignored."
+msgstr ""
+
+#: doc/classes/TileMap.xml:162
+msgid ""
+"Sets the tile index for the cell given by a Vector2.\n"
+"An index of [code]-1[/code] clears the cell.\n"
+"Optionally, the tile can also be flipped, transposed, or given autotile "
+"coordinates. The autotile coordinate refers to the column and row of the "
+"subtile.\n"
+"[b]Note:[/b] Data such as navigation polygons and collision shapes are not "
+"immediately updated for performance reasons.\n"
+"If you need these to be immediately updated, you can call [method "
+"update_dirty_quadrants].\n"
+"Overriding this method also overrides it internally, allowing custom logic "
+"to be implemented when tiles are placed/removed:\n"
+"[codeblock]\n"
+"func set_cell(x, y, tile, flip_x, flip_y, transpose, autotile_coord)\n"
+" # Write your custom logic here.\n"
+" # To call the default method:\n"
+" .set_cell(x, y, tile, flip_x, flip_y, transpose, autotile_coord)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/TileMap.xml:190
+msgid ""
+"Sets the tile index for the given cell.\n"
+"An index of [code]-1[/code] clears the cell.\n"
+"Optionally, the tile can also be flipped or transposed.\n"
+"[b]Note:[/b] Data such as navigation polygons and collision shapes are not "
+"immediately updated for performance reasons.\n"
+"If you need these to be immediately updated, you can call [method "
+"update_dirty_quadrants]."
+msgstr ""
+
+#: doc/classes/TileMap.xml:205
+msgid "Sets the given collision layer bit."
+msgstr ""
+
+#: doc/classes/TileMap.xml:216
+msgid "Sets the given collision mask bit."
+msgstr ""
+
+#: doc/classes/TileMap.xml:225
+msgid ""
+"Applies autotiling rules to the cell (and its adjacent cells) referenced by "
+"its grid-based X and Y coordinates."
+msgstr ""
+
+#: doc/classes/TileMap.xml:236
+msgid ""
+"Applies autotiling rules to the cells in the given region (specified by grid-"
+"based X and Y coordinates).\n"
+"Calling with invalid (or missing) parameters applies autotiling rules for "
+"the entire tilemap."
+msgstr ""
+
+#: doc/classes/TileMap.xml:244
+msgid ""
+"Updates the tile map's quadrants, allowing things such as navigation and "
+"collision shapes to be immediately used if modified."
+msgstr ""
+
+#: doc/classes/TileMap.xml:253
+msgid ""
+"Returns the tilemap (grid-based) coordinates corresponding to the given "
+"local position."
+msgstr ""
+
+#: doc/classes/TileMap.xml:259
+msgid "If [code]true[/code], the cell's UVs will be clipped."
+msgstr ""
+
+#: doc/classes/TileMap.xml:262
+msgid "The custom [Transform2D] to be applied to the TileMap's cells."
+msgstr ""
+
+#: doc/classes/TileMap.xml:265
+msgid ""
+"Amount to offset alternating tiles. See [enum HalfOffset] for possible "
+"values."
+msgstr ""
+
+#: doc/classes/TileMap.xml:268
+msgid ""
+"The TileMap's quadrant size. Optimizes drawing by batching, using chunks of "
+"this size."
+msgstr ""
+
+#: doc/classes/TileMap.xml:271
+msgid "The TileMap's cell size."
+msgstr ""
+
+#: doc/classes/TileMap.xml:274
+msgid "Position for tile origin. See [enum TileOrigin] for possible values."
+msgstr ""
+
+#: doc/classes/TileMap.xml:277
+msgid ""
+"If [code]true[/code], the TileMap's children will be drawn in order of their "
+"Y coordinate."
+msgstr ""
+
+#: doc/classes/TileMap.xml:280
+msgid ""
+"If [code]true[/code], the textures will be centered in the middle of each "
+"tile. This is useful for certain isometric or top-down modes when textures "
+"are made larger or smaller than the tiles (e.g. to avoid flickering on tile "
+"edges). The offset is still applied, but from the center of the tile. If "
+"used, [member compatibility_mode] is ignored.\n"
+"If [code]false[/code], the texture position start in the top-left corner "
+"unless [member compatibility_mode] is enabled."
+msgstr ""
+
+#: doc/classes/TileMap.xml:284
+msgid ""
+"Bounce value for static body collisions (see [code]collision_use_kinematic[/"
+"code])."
+msgstr ""
+
+#: doc/classes/TileMap.xml:287
+msgid ""
+"Friction value for static body collisions (see "
+"[code]collision_use_kinematic[/code])."
+msgstr ""
+
+#: doc/classes/TileMap.xml:290
+msgid "The collision layer(s) for all colliders in the TileMap."
+msgstr ""
+
+#: doc/classes/TileMap.xml:293
+msgid "The collision mask(s) for all colliders in the TileMap."
+msgstr ""
+
+#: doc/classes/TileMap.xml:296
+msgid ""
+"If [code]true[/code], TileMap collisions will be handled as a kinematic "
+"body. If [code]false[/code], collisions will be handled as static body."
+msgstr ""
+
+#: doc/classes/TileMap.xml:299
+msgid ""
+"If [code]true[/code], this tilemap's collision shape will be added to the "
+"collision shape of the parent. The parent has to be a [CollisionObject2D]."
+msgstr ""
+
+#: doc/classes/TileMap.xml:302
+msgid ""
+"If [code]true[/code], the compatibility with the tilemaps made in Godot 3.1 "
+"or earlier is maintained (textures move when the tile origin changes and "
+"rotate if the texture size is not homogeneous). This mode presents problems "
+"when doing [code]flip_h[/code], [code]flip_v[/code] and [code]transpose[/"
+"code] tile operations on non-homogeneous isometric tiles (e.g. 2:1), in "
+"which the texture could not coincide with the collision, thus it is not "
+"recommended for isometric or non-square tiles.\n"
+"If [code]false[/code], the textures do not move when doing [code]flip_h[/"
+"code], [code]flip_v[/code] operations if no offset is used, nor when "
+"changing the tile origin.\n"
+"The compatibility mode doesn't work with the [member centered_textures] "
+"option, because displacing textures with the [member cell_tile_origin] "
+"option or in irregular tiles is not relevant when centering those textures."
+msgstr ""
+
+#: doc/classes/TileMap.xml:307
+msgid "The TileMap orientation mode. See [enum Mode] for possible values."
+msgstr ""
+
+#: doc/classes/TileMap.xml:310
+msgid ""
+"The light mask assigned to all light occluders in the TileMap. The TileSet's "
+"light occluders will cast shadows only from Light2D(s) that have the same "
+"light mask(s)."
+msgstr ""
+
+#: doc/classes/TileMap.xml:313
+msgid "The assigned [TileSet]."
+msgstr ""
+
+#: doc/classes/TileMap.xml:319
+msgid "Emitted when a tilemap setting has changed."
+msgstr ""
+
+#: doc/classes/TileMap.xml:325
+msgid "Returned when a cell doesn't exist."
+msgstr ""
+
+#: doc/classes/TileMap.xml:328
+msgid "Orthogonal orientation mode."
+msgstr ""
+
+#: doc/classes/TileMap.xml:331
+msgid "Isometric orientation mode."
+msgstr ""
+
+#: doc/classes/TileMap.xml:334
+msgid "Custom orientation mode."
+msgstr ""
+
+#: doc/classes/TileMap.xml:337
+msgid "Half offset on the X coordinate."
+msgstr ""
+
+#: doc/classes/TileMap.xml:340
+msgid "Half offset on the Y coordinate."
+msgstr ""
+
+#: doc/classes/TileMap.xml:343
+msgid "Half offset disabled."
+msgstr ""
+
+#: doc/classes/TileMap.xml:346
+msgid "Half offset on the X coordinate (negative)."
+msgstr ""
+
+#: doc/classes/TileMap.xml:349
+msgid "Half offset on the Y coordinate (negative)."
+msgstr ""
+
+#: doc/classes/TileMap.xml:352
+msgid "Tile origin at its top-left corner."
+msgstr ""
+
+#: doc/classes/TileMap.xml:355
+msgid "Tile origin at its center."
+msgstr ""
+
+#: doc/classes/TileMap.xml:358
+msgid "Tile origin at its bottom-left corner."
+msgstr ""
+
+#: doc/classes/TileSet.xml:4
+msgid "Tile library for tilemaps."
+msgstr ""
+
+#: doc/classes/TileSet.xml:7
+msgid ""
+"A TileSet is a library of tiles for a [TileMap]. It contains a list of "
+"tiles, each consisting of a sprite and optional collision shapes.\n"
+"Tiles are referenced by a unique integer ID."
+msgstr ""
+
+#: doc/classes/TileSet.xml:47
+msgid ""
+"Determines when the auto-tiler should consider two different auto-tile IDs "
+"to be bound together.\n"
+"[b]Note:[/b] [code]neighbor_id[/code] will be [code]-1[/code] ([constant "
+"TileMap.INVALID_CELL]) when checking a tile against an empty neighbor tile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:57
+msgid "Clears all bitmask information of the autotile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:68
+msgid ""
+"Returns the bitmask of the subtile from an autotile given its coordinates.\n"
+"The value is the sum of the values in [enum AutotileBindings] present in the "
+"subtile (e.g. a value of 5 means the bitmask has bindings in both the top "
+"left and top right)."
+msgstr ""
+
+#: doc/classes/TileSet.xml:78
+msgid "Returns the [enum BitmaskMode] of the autotile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:87
+msgid ""
+"Returns the subtile that's being used as an icon in an atlas/autotile given "
+"its coordinates.\n"
+"The subtile defined as the icon will be used as a fallback when the atlas/"
+"autotile's bitmask information is incomplete. It will also be used to "
+"represent it in the TileSet editor."
+msgstr ""
+
+#: doc/classes/TileSet.xml:99
+msgid ""
+"Returns the light occluder of the subtile from an atlas/autotile given its "
+"coordinates."
+msgstr ""
+
+#: doc/classes/TileSet.xml:110
+msgid ""
+"Returns the navigation polygon of the subtile from an atlas/autotile given "
+"its coordinates."
+msgstr ""
+
+#: doc/classes/TileSet.xml:119
+msgid "Returns the size of the subtiles in an atlas/autotile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:128
+msgid "Returns the spacing between subtiles of the atlas/autotile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:139
+msgid ""
+"Returns the priority of the subtile from an autotile given its coordinates.\n"
+"When more than one subtile has the same bitmask value, one of them will be "
+"picked randomly for drawing. Its priority will define how often it will be "
+"picked."
+msgstr ""
+
+#: doc/classes/TileSet.xml:151
+msgid ""
+"Returns the drawing index of the subtile from an atlas/autotile given its "
+"coordinates."
+msgstr ""
+
+#: doc/classes/TileSet.xml:164
+msgid ""
+"Sets the bitmask of the subtile from an autotile given its coordinates.\n"
+"The value is the sum of the values in [enum AutotileBindings] present in the "
+"subtile (e.g. a value of 5 means the bitmask has bindings in both the top "
+"left and top right)."
+msgstr ""
+
+#: doc/classes/TileSet.xml:176
+msgid "Sets the [enum BitmaskMode] of the autotile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:187
+msgid ""
+"Sets the subtile that will be used as an icon in an atlas/autotile given its "
+"coordinates.\n"
+"The subtile defined as the icon will be used as a fallback when the atlas/"
+"autotile's bitmask information is incomplete. It will also be used to "
+"represent it in the TileSet editor."
+msgstr ""
+
+#: doc/classes/TileSet.xml:201
+msgid ""
+"Sets the light occluder of the subtile from an atlas/autotile given its "
+"coordinates."
+msgstr ""
+
+#: doc/classes/TileSet.xml:214
+msgid ""
+"Sets the navigation polygon of the subtile from an atlas/autotile given its "
+"coordinates."
+msgstr ""
+
+#: doc/classes/TileSet.xml:225
+msgid "Sets the size of the subtiles in an atlas/autotile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:236
+msgid "Sets the spacing between subtiles of the atlas/autotile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:249
+msgid ""
+"Sets the priority of the subtile from an autotile given its coordinates.\n"
+"When more than one subtile has the same bitmask value, one of them will be "
+"picked randomly for drawing. Its priority will define how often it will be "
+"picked."
+msgstr ""
+
+#: doc/classes/TileSet.xml:263
+msgid ""
+"Sets the drawing index of the subtile from an atlas/autotile given its "
+"coordinates."
+msgstr ""
+
+#: doc/classes/TileSet.xml:270
+msgid "Clears all tiles."
+msgstr ""
+
+#: doc/classes/TileSet.xml:279
+msgid "Creates a new tile with the given ID."
+msgstr ""
+
+#: doc/classes/TileSet.xml:288
+msgid "Returns the first tile matching the given name."
+msgstr ""
+
+#: doc/classes/TileSet.xml:295
+msgid ""
+"Returns the ID following the last currently used ID, useful when creating a "
+"new tile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:302
+msgid "Returns an array of all currently used tile IDs."
+msgstr ""
+
+#: doc/classes/TileSet.xml:311
+msgid "Removes the given tile ID."
+msgstr ""
+
+#: doc/classes/TileSet.xml:328
+msgid "Adds a shape to the tile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:337
+msgid "Returns the tile's light occluder."
+msgstr ""
+
+#: doc/classes/TileSet.xml:346
+msgid "Returns the tile's material."
+msgstr ""
+
+#: doc/classes/TileSet.xml:355
+msgid "Returns the tile's modulation color."
+msgstr ""
+
+#: doc/classes/TileSet.xml:364
+msgid "Returns the tile's name."
+msgstr ""
+
+#: doc/classes/TileSet.xml:373
+msgid "Returns the navigation polygon of the tile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:382
+msgid "Returns the offset of the tile's navigation polygon."
+msgstr ""
+
+#: doc/classes/TileSet.xml:391
+msgid "Returns the tile's normal map texture."
+msgstr ""
+
+#: doc/classes/TileSet.xml:400
+msgid "Returns the offset of the tile's light occluder."
+msgstr ""
+
+#: doc/classes/TileSet.xml:409
+msgid "Returns the tile sub-region in the texture."
+msgstr ""
+
+#: doc/classes/TileSet.xml:420
+msgid "Returns a tile's given shape."
+msgstr ""
+
+#: doc/classes/TileSet.xml:429
+msgid "Returns the number of shapes assigned to a tile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:440
+msgid "Returns the offset of a tile's shape."
+msgstr ""
+
+#: doc/classes/TileSet.xml:451
+msgid "Returns the one-way collision value of a tile's shape."
+msgstr ""
+
+#: doc/classes/TileSet.xml:472
+msgid "Returns the [Transform2D] of a tile's shape."
+msgstr ""
+
+#: doc/classes/TileSet.xml:481
+msgid ""
+"Returns an array of dictionaries describing the tile's shapes.\n"
+"[b]Dictionary structure in the array returned by this method:[/b]\n"
+"[codeblock]\n"
+"{\n"
+" \"autotile_coord\": Vector2,\n"
+" \"one_way\": bool,\n"
+" \"one_way_margin\": int,\n"
+" \"shape\": CollisionShape2D,\n"
+" \"shape_transform\": Transform2D,\n"
+"}\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/TileSet.xml:500
+msgid "Returns the tile's texture."
+msgstr ""
+
+#: doc/classes/TileSet.xml:509
+msgid "Returns the texture offset of the tile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:518
+msgid "Returns the tile's [enum TileMode]."
+msgstr ""
+
+#: doc/classes/TileSet.xml:527
+msgid "Returns the tile's Z index (drawing layer)."
+msgstr ""
+
+#: doc/classes/TileSet.xml:538
+msgid "Sets a light occluder for the tile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:549
+msgid "Sets the tile's material."
+msgstr ""
+
+#: doc/classes/TileSet.xml:560
+msgid "Sets the tile's modulation color."
+msgstr ""
+
+#: doc/classes/TileSet.xml:571
+msgid "Sets the tile's name."
+msgstr ""
+
+#: doc/classes/TileSet.xml:582
+msgid "Sets the tile's navigation polygon."
+msgstr ""
+
+#: doc/classes/TileSet.xml:593
+msgid "Sets an offset for the tile's navigation polygon."
+msgstr ""
+
+#: doc/classes/TileSet.xml:604
+msgid ""
+"Sets the tile's normal map texture.\n"
+"[b]Note:[/b] Godot expects the normal map to use X+, Y-, and Z+ coordinates. "
+"See [url=http://wiki.polycount.com/wiki/"
+"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]this page[/url] for "
+"a comparison of normal map coordinates expected by popular engines."
+msgstr ""
+
+#: doc/classes/TileSet.xml:616
+msgid "Sets an offset for the tile's light occluder."
+msgstr ""
+
+#: doc/classes/TileSet.xml:627
+msgid ""
+"Sets the tile's sub-region in the texture. This is common in texture atlases."
+msgstr ""
+
+#: doc/classes/TileSet.xml:640
+msgid "Sets a shape for the tile, enabling collision."
+msgstr ""
+
+#: doc/classes/TileSet.xml:653
+msgid "Sets the offset of a tile's shape."
+msgstr ""
+
+#: doc/classes/TileSet.xml:666
+msgid "Enables one-way collision on a tile's shape."
+msgstr ""
+
+#: doc/classes/TileSet.xml:691
+msgid "Sets a [Transform2D] on a tile's shape."
+msgstr ""
+
+#: doc/classes/TileSet.xml:702
+msgid "Sets an array of shapes for the tile, enabling collision."
+msgstr ""
+
+#: doc/classes/TileSet.xml:713
+msgid "Sets the tile's texture."
+msgstr ""
+
+#: doc/classes/TileSet.xml:724
+msgid "Sets the tile's texture offset."
+msgstr ""
+
+#: doc/classes/TileSet.xml:735
+msgid "Sets the tile's [enum TileMode]."
+msgstr ""
+
+#: doc/classes/TileSet.xml:746
+msgid "Sets the tile's drawing index."
+msgstr ""
+
+#: doc/classes/Timer.xml:4
+msgid "A countdown timer."
+msgstr ""
+
+#: doc/classes/Timer.xml:7
+msgid ""
+"Counts down a specified interval and emits a signal on reaching 0. Can be "
+"set to repeat or \"one-shot\" mode.\n"
+"[b]Note:[/b] To create an one-shot timer without instantiating a node, use "
+"[method SceneTree.create_timer]."
+msgstr ""
+
+#: doc/classes/Timer.xml:17
+msgid "Returns [code]true[/code] if the timer is stopped."
+msgstr ""
+
+#: doc/classes/Timer.xml:26
+msgid ""
+"Starts the timer. Sets [code]wait_time[/code] to [code]time_sec[/code] if "
+"[code]time_sec > 0[/code]. This also resets the remaining time to "
+"[code]wait_time[/code].\n"
+"[b]Note:[/b] this method will not resume a paused timer. See [member paused]."
+msgstr ""
+
+#: doc/classes/Timer.xml:34
+msgid "Stops the timer."
+msgstr ""
+
+#: doc/classes/Timer.xml:40
+msgid ""
+"If [code]true[/code], the timer will automatically start when entering the "
+"scene tree.\n"
+"[b]Note:[/b] This property is automatically set to [code]false[/code] after "
+"the timer enters the scene tree and starts."
+msgstr ""
+
+#: doc/classes/Timer.xml:44
+msgid ""
+"If [code]true[/code], the timer will stop when reaching 0. If [code]false[/"
+"code], it will restart."
+msgstr ""
+
+#: doc/classes/Timer.xml:47
+msgid ""
+"If [code]true[/code], the timer is paused and will not process until it is "
+"unpaused again, even if [method start] is called."
+msgstr ""
+
+#: doc/classes/Timer.xml:50
+msgid "Processing mode. See [enum TimerProcessMode]."
+msgstr ""
+
+#: doc/classes/Timer.xml:53
+msgid ""
+"The timer's remaining time in seconds. Returns 0 if the timer is inactive.\n"
+"[b]Note:[/b] You cannot set this value. To change the timer's remaining "
+"time, use [method start]."
+msgstr ""
+
+#: doc/classes/Timer.xml:57
+msgid "Wait time in seconds."
+msgstr ""
+
+#: doc/classes/Timer.xml:69
+msgid ""
+"Update the timer during the physics step at each frame (fixed framerate "
+"processing)."
+msgstr ""
+
+#: doc/classes/Timer.xml:72
+msgid "Update the timer during the idle time at each frame."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:4
+msgid "Button for touch screen devices."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:7
+msgid ""
+"Button for touch screen devices. You can set it to be visible on all "
+"screens, or only on touch devices."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:16
+msgid "Returns [code]true[/code] if this button is currently pressed."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:22
+msgid "The button's action. Actions can be handled with [InputEventAction]."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:25
+msgid "The button's bitmask."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:28
+msgid "The button's texture for the normal state."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:31
+msgid "If [code]true[/code], pass-by presses are enabled."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:34
+msgid "The button's texture for the pressed state."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:37
+msgid "The button's shape."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:40
+msgid ""
+"If [code]true[/code], the button's shape is centered in the provided "
+"texture. If no texture is used, this property has no effect."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:43
+msgid "If [code]true[/code], the button's shape is visible."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:46
+msgid ""
+"The button's visibility mode. See [enum VisibilityMode] for possible values."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:52
+msgid "Emitted when the button is pressed (down)."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:57
+msgid "Emitted when the button is released (up)."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:63
+msgid "Always visible."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:66
+msgid "Visible on touch screens only."
+msgstr ""
+
+#: doc/classes/Transform.xml:4
+msgid "3D transformation (3×4 matrix)."
+msgstr ""
+
+#: doc/classes/Transform.xml:7
+msgid ""
+"3×4 matrix (3 rows, 4 columns) used for 3D linear transformations. It can "
+"represent transformations such as translation, rotation, or scaling. It "
+"consists of a [member basis] (first 3 columns) and a [Vector3] for the "
+"[member origin] (last column).\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
+msgstr ""
+
+#: doc/classes/Transform.xml:28
+msgid ""
+"Constructs a Transform from four [Vector3] values (matrix columns). Each "
+"axis corresponds to local basis vectors (some of which may be scaled)."
+msgstr ""
+
+#: doc/classes/Transform.xml:39
+msgid "Constructs a Transform from a [Basis] and [Vector3]."
+msgstr ""
+
+#: doc/classes/Transform.xml:48
+msgid "Constructs a Transform from a [Transform2D]."
+msgstr ""
+
+#: doc/classes/Transform.xml:57
+msgid ""
+"Constructs a Transform from a [Quat]. The origin will be [code]Vector3(0, 0, "
+"0)[/code]."
+msgstr ""
+
+#: doc/classes/Transform.xml:66
+msgid ""
+"Constructs the Transform from a [Basis]. The origin will be Vector3(0, 0, 0)."
+msgstr ""
+
+#: doc/classes/Transform.xml:73 doc/classes/Transform2D.xml:51
+msgid ""
+"Returns the inverse of the transform, under the assumption that the "
+"transformation is composed of rotation, scaling and translation."
+msgstr ""
+
+#: doc/classes/Transform.xml:84
+msgid ""
+"Interpolates the transform to other Transform by weight amount (on the range "
+"of 0.0 to 1.0)."
+msgstr ""
+
+#: doc/classes/Transform.xml:91
+msgid ""
+"Returns the inverse of the transform, under the assumption that the "
+"transformation is composed of rotation and translation (no scaling, use "
+"affine_inverse for transforms with scaling)."
+msgstr ""
+
+#: doc/classes/Transform.xml:100 doc/classes/Transform2D.xml:119
+msgid ""
+"Returns [code]true[/code] if this transform and [code]transform[/code] are "
+"approximately equal, by calling [code]is_equal_approx[/code] on each "
+"component."
+msgstr ""
+
+#: doc/classes/Transform.xml:111
+msgid ""
+"Returns a copy of the transform rotated such that its -Z axis points towards "
+"the [code]target[/code] position.\n"
+"The transform will first be rotated around the given [code]up[/code] vector, "
+"and then fully aligned to the target by a further rotation around an axis "
+"perpendicular to both the [code]target[/code] and [code]up[/code] vectors.\n"
+"Operations take place in global space."
+msgstr ""
+
+#: doc/classes/Transform.xml:120
+msgid ""
+"Returns the transform with the basis orthogonal (90 degrees), and normalized "
+"axis vectors."
+msgstr ""
+
+#: doc/classes/Transform.xml:131
+msgid ""
+"Rotates the transform around the given axis by the given angle (in radians), "
+"using matrix multiplication. The axis must be a normalized vector."
+msgstr ""
+
+#: doc/classes/Transform.xml:140
+msgid ""
+"Scales basis and origin of the transform by the given scale factor, using "
+"matrix multiplication."
+msgstr ""
+
+#: doc/classes/Transform.xml:149 doc/classes/Transform2D.xml:153
+msgid ""
+"Translates the transform by the given offset, relative to the transform's "
+"basis vectors.\n"
+"Unlike [method rotated] and [method scaled], this does not use matrix "
+"multiplication."
+msgstr ""
+
+#: doc/classes/Transform.xml:159
+msgid ""
+"Transforms the given [Vector3], [Plane], [AABB], or [PackedVector3Array] by "
+"this transform."
+msgstr ""
+
+#: doc/classes/Transform.xml:168
+msgid ""
+"Inverse-transforms the given [Vector3], [Plane], [AABB], or "
+"[PackedVector3Array] by this transform."
+msgstr ""
+
+#: doc/classes/Transform.xml:174
+msgid ""
+"The basis is a matrix containing 3 [Vector3] as its columns: X axis, Y axis, "
+"and Z axis. These vectors can be interpreted as the basis vectors of local "
+"coordinate system traveling with the object."
+msgstr ""
+
+#: doc/classes/Transform.xml:177
+msgid ""
+"The translation offset of the transform (column 3, the fourth column). "
+"Equivalent to array index [code]3[/code]."
+msgstr ""
+
+#: doc/classes/Transform.xml:182
+msgid ""
+"[Transform] with no translation, rotation or scaling applied. When applied "
+"to other data structures, [constant IDENTITY] performs no transformation."
+msgstr ""
+
+#: doc/classes/Transform.xml:185
+msgid "[Transform] with mirroring applied perpendicular to the YZ plane."
+msgstr ""
+
+#: doc/classes/Transform.xml:188
+msgid "[Transform] with mirroring applied perpendicular to the XZ plane."
+msgstr ""
+
+#: doc/classes/Transform.xml:191
+msgid "[Transform] with mirroring applied perpendicular to the XY plane."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:4
+msgid "2D transformation (2×3 matrix)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:7
+msgid ""
+"2×3 matrix (2 rows, 3 columns) used for 2D linear transformations. It can "
+"represent transformations such as translation, rotation, or scaling. It "
+"consists of a three [Vector2] values: [member x], [member y], and the "
+"[member origin].\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:20
+msgid "Constructs the transform from a 3D [Transform]."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:33
+msgid ""
+"Constructs the transform from 3 [Vector2] values representing [member x], "
+"[member y], and the [member origin] (the three column vectors)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:44
+msgid "Constructs the transform from a given angle (in radians) and position."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:60
+msgid ""
+"Returns a vector transformed (multiplied) by the basis matrix.\n"
+"This method does not account for translation (the origin vector)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:70
+msgid ""
+"Returns a vector transformed (multiplied) by the inverse basis matrix.\n"
+"This method does not account for translation (the origin vector)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:78
+msgid "Returns the transform's origin (translation)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:85
+msgid "Returns the transform's rotation (in radians)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:92
+msgid "Returns the scale."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:103
+msgid ""
+"Returns a transform interpolated between this transform and another by a "
+"given weight (on the range of 0.0 to 1.0)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:110
+msgid ""
+"Returns the inverse of the transform, under the assumption that the "
+"transformation is composed of rotation and translation (no scaling, use "
+"[method affine_inverse] for transforms with scaling)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:126
+msgid ""
+"Returns the transform with the basis orthogonal (90 degrees), and normalized "
+"axis vectors (scale of 1 or -1)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:135
+msgid ""
+"Rotates the transform by the given angle (in radians), using matrix "
+"multiplication."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:144
+msgid ""
+"Scales the transform by the given scale factor, using matrix multiplication."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:163
+msgid ""
+"Transforms the given [Vector2], [Rect2], or [PackedVector2Array] by this "
+"transform."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:172
+msgid ""
+"Inverse-transforms the given [Vector2], [Rect2], or [PackedVector2Array] by "
+"this transform."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:178
+msgid ""
+"The origin vector (column 2, the third column). Equivalent to array index "
+"[code]2[/code]. The origin vector represents translation."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:189
+msgid ""
+"The identity [Transform2D] with no translation, rotation or scaling applied. "
+"When applied to other data structures, [constant IDENTITY] performs no "
+"transformation."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:192
+msgid "The [Transform2D] that will flip something along the X axis."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:195
+msgid "The [Transform2D] that will flip something along the Y axis."
+msgstr ""
+
+#: doc/classes/Translation.xml:4
+msgid "Language Translation."
+msgstr ""
+
+#: doc/classes/Translation.xml:7
+msgid ""
+"Translations are resources that can be loaded and unloaded on demand. They "
+"map a string to another string."
+msgstr ""
+
+#: doc/classes/Translation.xml:10 doc/classes/TranslationServer.xml:10
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/i18n/"
+"internationalizing_games.html"
+msgstr ""
+
+#: doc/classes/Translation.xml:11 doc/classes/TranslationServer.xml:11
+msgid "https://docs.godotengine.org/en/latest/tutorials/i18n/locales.html"
+msgstr ""
+
+#: doc/classes/Translation.xml:22
+msgid "Adds a message if nonexistent, followed by its translation."
+msgstr ""
+
+#: doc/classes/Translation.xml:31
+msgid "Erases a message."
+msgstr ""
+
+#: doc/classes/Translation.xml:40
+msgid "Returns a message's translation."
+msgstr ""
+
+#: doc/classes/Translation.xml:47
+msgid "Returns the number of existing messages."
+msgstr ""
+
+#: doc/classes/Translation.xml:54
+msgid "Returns all the messages (keys)."
+msgstr ""
+
+#: doc/classes/Translation.xml:60
+msgid "The locale of the translation."
+msgstr ""
+
+#: doc/classes/TranslationServer.xml:4
+msgid "Server that manages all translations."
+msgstr ""
+
+#: doc/classes/TranslationServer.xml:7
+msgid ""
+"Server that manages all translations. Translations can be set to it and "
+"removed from it."
+msgstr ""
+
+#: doc/classes/TranslationServer.xml:20
+msgid "Adds a [Translation] resource."
+msgstr ""
+
+#: doc/classes/TranslationServer.xml:27
+msgid "Clears the server from all translations."
+msgstr ""
+
+#: doc/classes/TranslationServer.xml:34
+msgid "Returns an Array of all loaded locales of the game."
+msgstr ""
+
+#: doc/classes/TranslationServer.xml:41
+msgid "Returns the current locale of the game."
+msgstr ""
+
+#: doc/classes/TranslationServer.xml:50
+msgid ""
+"Returns a locale's language and its variant (e.g. [code]\"en_US\"[/code] "
+"would return [code]\"English (United States)\"[/code])."
+msgstr ""
+
+#: doc/classes/TranslationServer.xml:59
+msgid "Removes the given translation from the server."
+msgstr ""
+
+#: doc/classes/TranslationServer.xml:68
+msgid "Sets the locale of the game."
+msgstr ""
+
+#: doc/classes/TranslationServer.xml:77
+msgid "Returns the current locale's translation for the given message (key)."
+msgstr ""
+
+#: doc/classes/Tree.xml:4
+msgid "Control to show a tree of items."
+msgstr ""
+
+#: doc/classes/Tree.xml:7
+msgid ""
+"This shows a tree of items that can be selected, expanded and collapsed. The "
+"tree can have multiple columns with custom controls like text editing, "
+"buttons and popups. It can be useful for structured displays and "
+"interactions.\n"
+"Trees are built via code, using [TreeItem] objects to create the structure. "
+"They have a single root but multiple roots can be simulated if a dummy "
+"hidden root is added.\n"
+"[codeblock]\n"
+"func _ready():\n"
+" var tree = Tree.new()\n"
+" var root = tree.create_item()\n"
+" tree.set_hide_root(true)\n"
+" var child1 = tree.create_item(root)\n"
+" var child2 = tree.create_item(root)\n"
+" var subchild1 = tree.create_item(child1)\n"
+" subchild1.set_text(0, \"Subchild1\")\n"
+"[/codeblock]\n"
+"To iterate over all the [TreeItem] objects in a [Tree] object, use [method "
+"TreeItem.get_next] and [method TreeItem.get_children] after getting the root "
+"through [method get_root]. You can use [method Object.free] on a [TreeItem] "
+"to remove it from the [Tree]."
+msgstr ""
+
+#: doc/classes/Tree.xml:28
+msgid "Returns [code]true[/code] if the column titles are being shown."
+msgstr ""
+
+#: doc/classes/Tree.xml:35
+msgid "Clears the tree. This removes all items."
+msgstr ""
+
+#: doc/classes/Tree.xml:46
+msgid ""
+"Creates an item in the tree and adds it as a child of [code]parent[/code].\n"
+"If [code]parent[/code] is [code]null[/code], the root item will be the "
+"parent, or the new item will be the root itself if the tree is empty.\n"
+"The new item will be the [code]idx[/code]th child of parent, or it will be "
+"the last child if there are not enough siblings."
+msgstr ""
+
+#: doc/classes/Tree.xml:55
+msgid ""
+"Makes the currently focused cell visible.\n"
+"This will scroll the tree if necessary. In [constant SELECT_ROW] mode, this "
+"will not do horizontal scrolling, as all the cells in the selected row is "
+"focused logically.\n"
+"[b]Note:[/b] Despite the name of this method, the focus cursor itself is "
+"only visible in [constant SELECT_MULTI] mode."
+msgstr ""
+
+#: doc/classes/Tree.xml:66
+msgid ""
+"Returns the column index at [code]position[/code], or -1 if no item is there."
+msgstr ""
+
+#: doc/classes/Tree.xml:75
+msgid "Returns the column's title."
+msgstr ""
+
+#: doc/classes/Tree.xml:84
+msgid "Returns the column's width in pixels."
+msgstr ""
+
+#: doc/classes/Tree.xml:91
+msgid ""
+"Returns the rectangle for custom popups. Helper to create custom cell "
+"controls that display a popup. See [method TreeItem.set_cell_mode]."
+msgstr ""
+
+#: doc/classes/Tree.xml:100
+msgid ""
+"Returns the drop section at [code]position[/code], or -100 if no item is "
+"there.\n"
+"Values -1, 0, or 1 will be returned for the \"above item\", \"on item\", and "
+"\"below item\" drop sections, respectively. See [enum DropModeFlags] for a "
+"description of each drop section.\n"
+"To get the item which the returned drop section is relative to, use [method "
+"get_item_at_position]."
+msgstr ""
+
+#: doc/classes/Tree.xml:109
+msgid ""
+"Returns the currently edited item. This is only available for custom cell "
+"mode."
+msgstr ""
+
+#: doc/classes/Tree.xml:116
+msgid ""
+"Returns the column for the currently edited item. This is only available for "
+"custom cell mode."
+msgstr ""
+
+#: doc/classes/Tree.xml:127
+msgid ""
+"Returns the rectangle area for the specified item. If [code]column[/code] is "
+"specified, only get the position and size of that column, otherwise get the "
+"rectangle containing all columns."
+msgstr ""
+
+#: doc/classes/Tree.xml:136
+msgid ""
+"Returns the tree item at the specified position (relative to the tree origin "
+"position)."
+msgstr ""
+
+#: doc/classes/Tree.xml:145
+msgid ""
+"Returns the next selected item after the given one, or [code]null[/code] if "
+"the end is reached.\n"
+"If [code]from[/code] is [code]null[/code], this returns the first selected "
+"item."
+msgstr ""
+
+#: doc/classes/Tree.xml:153
+msgid "Returns the last pressed button's index."
+msgstr ""
+
+#: doc/classes/Tree.xml:160
+msgid ""
+"Returns the tree's root item, or [code]null[/code] if the tree is empty."
+msgstr ""
+
+#: doc/classes/Tree.xml:167
+msgid "Returns the current scrolling position."
+msgstr ""
+
+#: doc/classes/Tree.xml:174
+msgid ""
+"Returns the currently focused item, or [code]null[/code] if no item is "
+"focused.\n"
+"In [constant SELECT_ROW] and [constant SELECT_SINGLE] modes, the focused "
+"item is same as the selected item. In [constant SELECT_MULTI] mode, the "
+"focused item is the item under the focus cursor, not necessarily selected.\n"
+"To get the currently selected item(s), use [method get_next_selected]."
+msgstr ""
+
+#: doc/classes/Tree.xml:183
+msgid ""
+"Returns the currently focused column, or -1 if no column is focused.\n"
+"In [constant SELECT_SINGLE] mode, the focused column is the selected column. "
+"In [constant SELECT_ROW] mode, the focused column is always 0 if any item is "
+"selected. In [constant SELECT_MULTI] mode, the focused column is the column "
+"under the focus cursor, and there are not necessarily any column selected.\n"
+"To tell whether a column of an item is selected, use [method TreeItem."
+"is_selected]."
+msgstr ""
+
+#: doc/classes/Tree.xml:196
+msgid ""
+"If [code]true[/code], the column will have the \"Expand\" flag of [Control]. "
+"Columns that have the \"Expand\" flag will use their \"min_width\" in a "
+"similar fashion to [member Control.size_flags_stretch_ratio]."
+msgstr ""
+
+#: doc/classes/Tree.xml:207
+msgid ""
+"Sets the minimum width of a column. Columns that have the \"Expand\" flag "
+"will use their \"min_width\" in a similar fashion to [member Control."
+"size_flags_stretch_ratio]."
+msgstr ""
+
+#: doc/classes/Tree.xml:218
+msgid "Sets the title of a column."
+msgstr ""
+
+#: doc/classes/Tree.xml:227
+msgid "If [code]true[/code], column titles are visible."
+msgstr ""
+
+#: doc/classes/Tree.xml:233
+msgid ""
+"If [code]true[/code], the currently selected cell may be selected again."
+msgstr ""
+
+#: doc/classes/Tree.xml:236
+msgid "If [code]true[/code], a right mouse button click can select items."
+msgstr ""
+
+#: doc/classes/Tree.xml:239
+msgid "The number of columns."
+msgstr ""
+
+#: doc/classes/Tree.xml:242
+msgid ""
+"The drop mode as an OR combination of flags. See [enum DropModeFlags] "
+"constants. Once dropping is done, reverts to [constant DROP_MODE_DISABLED]. "
+"Setting this during [method Control.can_drop_data] is recommended.\n"
+"This controls the drop sections, i.e. the decision and drawing of possible "
+"drop locations based on the mouse position."
+msgstr ""
+
+#: doc/classes/Tree.xml:247
+msgid "If [code]true[/code], the folding arrow is hidden."
+msgstr ""
+
+#: doc/classes/Tree.xml:250
+msgid "If [code]true[/code], the tree's root is hidden."
+msgstr ""
+
+#: doc/classes/Tree.xml:254
+msgid ""
+"Allows single or multiple selection. See the [enum SelectMode] constants."
+msgstr ""
+
+#: doc/classes/Tree.xml:266
+msgid ""
+"Emitted when a button on the tree was pressed (see [method TreeItem."
+"add_button])."
+msgstr ""
+
+#: doc/classes/Tree.xml:271
+msgid "Emitted when a cell is selected."
+msgstr ""
+
+#: doc/classes/Tree.xml:278
+msgid "Emitted when a column's title is pressed."
+msgstr ""
+
+#: doc/classes/Tree.xml:285
+msgid ""
+"Emitted when a cell with the [constant TreeItem.CELL_MODE_CUSTOM] is clicked "
+"to be edited."
+msgstr ""
+
+#: doc/classes/Tree.xml:292
+msgid ""
+"Emitted when the right mouse button is pressed in the empty space of the "
+"tree."
+msgstr ""
+
+#: doc/classes/Tree.xml:299
+msgid ""
+"Emitted when the right mouse button is pressed if right mouse button "
+"selection is active and the tree is empty."
+msgstr ""
+
+#: doc/classes/Tree.xml:304
+msgid "Emitted when an item's label is double-clicked."
+msgstr ""
+
+#: doc/classes/Tree.xml:311
+msgid "Emitted when an item is collapsed by a click on the folding arrow."
+msgstr ""
+
+#: doc/classes/Tree.xml:316
+msgid ""
+"Emitted when a custom button is pressed (i.e. in a [constant TreeItem."
+"CELL_MODE_CUSTOM] mode cell)."
+msgstr ""
+
+#: doc/classes/Tree.xml:321
+msgid "Emitted when an item's icon is double-clicked."
+msgstr ""
+
+#: doc/classes/Tree.xml:326
+msgid "Emitted when an item is edited."
+msgstr ""
+
+#: doc/classes/Tree.xml:331
+msgid "Emitted when an item is edited using the right mouse button."
+msgstr ""
+
+#: doc/classes/Tree.xml:338
+msgid "Emitted when an item is selected with the right mouse button."
+msgstr ""
+
+#: doc/classes/Tree.xml:343
+msgid "Emitted when an item is selected."
+msgstr ""
+
+#: doc/classes/Tree.xml:354
+msgid ""
+"Emitted instead of [code]item_selected[/code] if [code]select_mode[/code] is "
+"[constant SELECT_MULTI]."
+msgstr ""
+
+#: doc/classes/Tree.xml:359
+msgid "Emitted when a left mouse button click does not select any item."
+msgstr ""
+
+#: doc/classes/Tree.xml:365
+msgid ""
+"Allows selection of a single cell at a time. From the perspective of items, "
+"only a single item is allowed to be selected. And there is only one column "
+"selected in the selected item.\n"
+"The focus cursor is always hidden in this mode, but it is positioned at the "
+"current selection, making the currently selected item the currently focused "
+"item."
+msgstr ""
+
+#: doc/classes/Tree.xml:369
+msgid ""
+"Allows selection of a single row at a time. From the perspective of items, "
+"only a single items is allowed to be selected. And all the columns are "
+"selected in the selected item.\n"
+"The focus cursor is always hidden in this mode, but it is positioned at the "
+"first column of the current selection, making the currently selected item "
+"the currently focused item."
+msgstr ""
+
+#: doc/classes/Tree.xml:373
+msgid ""
+"Allows selection of multiple cells at the same time. From the perspective of "
+"items, multiple items are allowed to be selected. And there can be multiple "
+"columns selected in each selected item.\n"
+"The focus cursor is visible in this mode, the item or column under the "
+"cursor is not necessarily selected."
+msgstr ""
+
+#: doc/classes/Tree.xml:377
+msgid ""
+"Disables all drop sections, but still allows to detect the \"on item\" drop "
+"section by [method get_drop_section_at_position].\n"
+"[b]Note:[/b] This is the default flag, it has no effect when combined with "
+"other flags."
+msgstr ""
+
+#: doc/classes/Tree.xml:381
+msgid ""
+"Enables the \"on item\" drop section. This drop section covers the entire "
+"item.\n"
+"When combined with [constant DROP_MODE_INBETWEEN], this drop section halves "
+"the height and stays centered vertically."
+msgstr ""
+
+#: doc/classes/Tree.xml:385
+msgid ""
+"Enables \"above item\" and \"below item\" drop sections. The \"above item\" "
+"drop section covers the top half of the item, and the \"below item\" drop "
+"section covers the bottom half.\n"
+"When combined with [constant DROP_MODE_ON_ITEM], these drop sections halves "
+"the height and stays on top / bottom accordingly."
+msgstr ""
+
+#: doc/classes/Tree.xml:391
+msgid "The arrow icon used when a foldable item is not collapsed."
+msgstr ""
+
+#: doc/classes/Tree.xml:394
+msgid "The arrow icon used when a foldable item is collapsed."
+msgstr ""
+
+#: doc/classes/Tree.xml:397
+msgid ""
+"Default [StyleBox] for the [Tree], i.e. used when the control is not being "
+"focused."
+msgstr ""
+
+#: doc/classes/Tree.xml:400
+msgid "[StyleBox] used when the [Tree] is being focused."
+msgstr ""
+
+#: doc/classes/Tree.xml:403
+msgid "The horizontal space between each button in a cell."
+msgstr ""
+
+#: doc/classes/Tree.xml:406
+msgid "[StyleBox] used when a button in the tree is pressed."
+msgstr ""
+
+#: doc/classes/Tree.xml:409
+msgid ""
+"The check icon to display when the [constant TreeItem.CELL_MODE_CHECK] mode "
+"cell is checked."
+msgstr ""
+
+#: doc/classes/Tree.xml:412
+msgid "[StyleBox] used for the cursor, when the [Tree] is being focused."
+msgstr ""
+
+#: doc/classes/Tree.xml:415
+msgid "[StyleBox] used for the cursor, when the [Tree] is not being focused."
+msgstr ""
+
+#: doc/classes/Tree.xml:418
+msgid ""
+"Default [StyleBox] for a [constant TreeItem.CELL_MODE_CUSTOM] mode cell."
+msgstr ""
+
+#: doc/classes/Tree.xml:421
+msgid ""
+"Text [Color] for a [constant TreeItem.CELL_MODE_CUSTOM] mode cell when it's "
+"hovered."
+msgstr ""
+
+#: doc/classes/Tree.xml:424
+msgid ""
+"[StyleBox] for a [constant TreeItem.CELL_MODE_CUSTOM] mode cell when it's "
+"hovered."
+msgstr ""
+
+#: doc/classes/Tree.xml:427
+msgid ""
+"[StyleBox] for a [constant TreeItem.CELL_MODE_CUSTOM] mode cell when it's "
+"pressed."
+msgstr ""
+
+#: doc/classes/Tree.xml:430
+msgid ""
+"Draws the guidelines if not zero, this acts as a boolean. The guideline is a "
+"horizontal line drawn at the bottom of each item."
+msgstr ""
+
+#: doc/classes/Tree.xml:433
+msgid ""
+"Draws the relationship lines if not zero, this acts as a boolean. "
+"Relationship lines are drawn at the start of child items to show hierarchy."
+msgstr ""
+
+#: doc/classes/Tree.xml:436
+msgid ""
+"[Color] used to draw possible drop locations. See [enum DropModeFlags] "
+"constants for further description of drop locations."
+msgstr ""
+
+#: doc/classes/Tree.xml:448
+msgid "[Color] of the guideline."
+msgstr ""
+
+#: doc/classes/Tree.xml:451
+msgid ""
+"The horizontal space between item cells. This is also used as the margin at "
+"the start of an item when folding is disabled."
+msgstr ""
+
+#: doc/classes/Tree.xml:454
+msgid ""
+"The horizontal margin at the start of an item. This is used when folding is "
+"enabled for the item."
+msgstr ""
+
+#: doc/classes/Tree.xml:457
+msgid "[Color] of the relationship lines."
+msgstr ""
+
+#: doc/classes/Tree.xml:460
+msgid ""
+"The maximum distance between the mouse cursor and the control's border to "
+"trigger border scrolling when dragging."
+msgstr ""
+
+#: doc/classes/Tree.xml:463
+msgid "The speed of border scrolling."
+msgstr ""
+
+#: doc/classes/Tree.xml:466
+msgid ""
+"The arrow icon to display for the [constant TreeItem.CELL_MODE_RANGE] mode "
+"cell."
+msgstr ""
+
+#: doc/classes/Tree.xml:469
+msgid ""
+"[StyleBox] for the selected items, used when the [Tree] is not being focused."
+msgstr ""
+
+#: doc/classes/Tree.xml:472
+msgid ""
+"[StyleBox] for the selected items, used when the [Tree] is being focused."
+msgstr ""
+
+#: doc/classes/Tree.xml:475
+msgid "Default text [Color] of the title button."
+msgstr ""
+
+#: doc/classes/Tree.xml:478
+msgid "[Font] of the title button's text."
+msgstr ""
+
+#: doc/classes/Tree.xml:481
+msgid "[StyleBox] used when the title button is being hovered."
+msgstr ""
+
+#: doc/classes/Tree.xml:484
+msgid "Default [StyleBox] for the title button."
+msgstr ""
+
+#: doc/classes/Tree.xml:487
+msgid "[StyleBox] used when the title button is being pressed."
+msgstr ""
+
+#: doc/classes/Tree.xml:490
+msgid ""
+"The check icon to display when the [constant TreeItem.CELL_MODE_CHECK] mode "
+"cell is unchecked."
+msgstr ""
+
+#: doc/classes/Tree.xml:493
+msgid ""
+"The updown arrow icon to display for the [constant TreeItem.CELL_MODE_RANGE] "
+"mode cell."
+msgstr ""
+
+#: doc/classes/Tree.xml:496
+msgid ""
+"The vertical padding inside each item, i.e. the distance between the item's "
+"content and top/bottom border."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:4
+msgid "Control for a single item inside a [Tree]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:7
+msgid ""
+"Control for a single item inside a [Tree]. May have child [TreeItem]s and be "
+"styled as well as contain buttons.\n"
+"You can remove a [TreeItem] by using [method Object.free]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:27
+msgid ""
+"Adds a button with [Texture2D] [code]button[/code] at column [code]column[/"
+"code]. The [code]button_idx[/code] index is used to identify the button when "
+"calling other methods. If not specified, the next available index is used, "
+"which may be retrieved by calling [method get_button_count] immediately "
+"after this method. Optionally, the button can be [code]disabled[/code] and "
+"have a [code]tooltip[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:36
+msgid ""
+"Calls the [code]method[/code] on the actual TreeItem and its children "
+"recursively. Pass parameters as a comma separated list."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:45
+msgid "Resets the background color for the given column to default."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:54
+msgid "Resets the color for the given column to default."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:63
+msgid "Deselects the given column."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:74
+msgid ""
+"Removes the button at index [code]button_idx[/code] in column [code]column[/"
+"code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:85
+msgid ""
+"Returns the [Texture2D] of the button at index [code]button_idx[/code] in "
+"column [code]column[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:94
+msgid ""
+"Returns the number of buttons in column [code]column[/code]. May be used to "
+"get the most recently added button's index, if no index was specified."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:105
+msgid ""
+"Returns the tooltip string for the button at index [code]button_idx[/code] "
+"in column [code]column[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:114
+msgid "Returns the column's cell mode."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:121
+msgid ""
+"Returns the TreeItem's first child item or a null object if there is none."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:130
+msgid "Returns the custom background color of column [code]column[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:139
+msgid "Returns the custom color of column [code]column[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:148
+msgid "Returns [code]true[/code] if [code]expand_right[/code] is set."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:157
+msgid "Returns the given column's icon [Texture2D]. Error if no icon is set."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:166
+msgid "Returns the column's icon's maximum width."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:175
+msgid "Returns the [Color] modulating the column's icon."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:184
+msgid "Returns the icon [Texture2D] region as [Rect2]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:199
+msgid ""
+"Returns the next TreeItem in the tree or a null object if there is none."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:208
+msgid ""
+"Returns the next visible TreeItem in the tree or a null object if there is "
+"none.\n"
+"If [code]wrap[/code] is enabled, the method will wrap around to the first "
+"visible element in the tree when called on the last visible element, "
+"otherwise it returns [code]null[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:216
+msgid "Returns the parent TreeItem or a null object if there is none."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:223
+msgid ""
+"Returns the previous TreeItem in the tree or a null object if there is none."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:232
+msgid ""
+"Returns the previous visible TreeItem in the tree or a null object if there "
+"is none.\n"
+"If [code]wrap[/code] is enabled, the method will wrap around to the last "
+"visible element in the tree when called on the first visible element, "
+"otherwise it returns [code]null[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:266
+msgid "Returns the given column's text."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:275
+msgid "Returns the given column's text alignment."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:284
+msgid "Returns the given column's tooltip."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:295
+msgid ""
+"Returns [code]true[/code] if the button at index [code]button_idx[/code] for "
+"the given column is disabled."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:304
+msgid "Returns [code]true[/code] if the given column is checked."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:321
+msgid "Returns [code]true[/code] if column [code]column[/code] is editable."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:330
+msgid "Returns [code]true[/code] if column [code]column[/code] is selectable."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:339
+msgid "Returns [code]true[/code] if column [code]column[/code] is selected."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:346
+msgid "Moves this TreeItem to the bottom in the [Tree] hierarchy."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:353
+msgid "Moves this TreeItem to the top in the [Tree] hierarchy."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:362
+msgid ""
+"Removes the given child [TreeItem] and all its children from the [Tree]. "
+"Note that it doesn't free the item from memory, so it can be reused later. "
+"To completely remove a [TreeItem] use [method Object.free]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:371
+msgid "Selects the column [code]column[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:384
+msgid ""
+"Sets the given column's button [Texture2D] at index [code]button_idx[/code] "
+"to [code]button[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:397
+msgid ""
+"If [code]true[/code], disables the button at index [code]button_idx[/code] "
+"in column [code]column[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:408
+msgid ""
+"Sets the given column's cell mode to [code]mode[/code]. See [enum "
+"TreeCellMode] constants."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:419
+msgid "If [code]true[/code], the column [code]column[/code] is checked."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:442
+msgid ""
+"Sets the given column's custom background color and whether to just use it "
+"as an outline."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:453
+msgid "Sets the given column's custom color."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:466
+msgid ""
+"Sets the given column's custom draw callback to [code]callback[/code] method "
+"on [code]object[/code].\n"
+"The [code]callback[/code] should accept two arguments: the [TreeItem] that "
+"is drawn and its position and size as a [Rect2]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:478
+msgid "If [code]true[/code], column [code]column[/code] is editable."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:489
+msgid ""
+"If [code]true[/code], column [code]column[/code] is expanded to the right."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:500
+msgid "Sets the given column's icon [Texture2D]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:511
+msgid "Sets the given column's icon's maximum width."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:522
+msgid "Modulates the given column's icon with [code]modulate[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:533
+msgid "Sets the given column's icon's texture region."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:580
+msgid "If [code]true[/code], the given column is selectable."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:611
+msgid ""
+"Sets the given column's text alignment. See [enum TextAlign] for possible "
+"values."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:622
+msgid "Sets the given column's tooltip text."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:628
+msgid "If [code]true[/code], the TreeItem is collapsed."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:631
+msgid "The custom minimum height."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:634
+msgid "If [code]true[/code], folding is disabled for this TreeItem."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:639
+msgid "Cell contains a string."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:642
+msgid "Cell can be checked."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:645
+msgid "Cell contains a range."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:648
+msgid "Cell contains an icon."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:653
+msgid "Align text to the left. See [code]set_text_align()[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:656
+msgid "Center text. See [code]set_text_align()[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:659
+msgid "Align text to the right. See [code]set_text_align()[/code]."
+msgstr ""
+
+#: doc/classes/TriangleMesh.xml:4
+msgid "Internal mesh type."
+msgstr ""
+
+#: doc/classes/TriangleMesh.xml:7
+msgid "Mesh type used internally for collision calculations."
+msgstr ""
+
+#: doc/classes/Tween.xml:4
+msgid "Smoothly animates a node's properties over time."
+msgstr ""
+
+#: doc/classes/Tween.xml:7
+msgid ""
+"Tweens are useful for animations requiring a numerical property to be "
+"interpolated over a range of values. The name [i]tween[/i] comes from [i]in-"
+"betweening[/i], an animation technique where you specify [i]keyframes[/i] "
+"and the computer interpolates the frames that appear between them.\n"
+"[Tween] is more suited than [AnimationPlayer] for animations where you don't "
+"know the final values in advance. For example, interpolating a dynamically-"
+"chosen camera zoom value is best done with a [Tween] node; it would be "
+"difficult to do the same thing with an [AnimationPlayer] node.\n"
+"Here is a brief usage example that makes a 2D node move smoothly between two "
+"positions:\n"
+"[codeblock]\n"
+"var tween = get_node(\"Tween\")\n"
+"tween.interpolate_property($Node2D, \"position\",\n"
+" Vector2(0, 0), Vector2(100, 100), 1,\n"
+" Tween.TRANS_LINEAR, Tween.EASE_IN_OUT)\n"
+"tween.start()\n"
+"[/codeblock]\n"
+"Many methods require a property name, such as [code]\"position\"[/code] "
+"above. You can find the correct property name by hovering over the property "
+"in the Inspector. You can also provide the components of a property directly "
+"by using [code]\"property:component\"[/code] (eg. [code]position:x[/code]), "
+"where it would only apply to that particular component.\n"
+"Many of the methods accept [code]trans_type[/code] and [code]ease_type[/"
+"code]. The first accepts an [enum TransitionType] constant, and refers to "
+"the way the timing of the animation is handled (see [url=https://easings."
+"net/]easings.net[/url] for some examples). The second accepts an [enum "
+"EaseType] constant, and controls where the [code]trans_type[/code] is "
+"applied to the interpolation (in the beginning, the end, or both). If you "
+"don't know which transition and easing to pick, you can try different [enum "
+"TransitionType] constants with [constant EASE_IN_OUT], and use the one that "
+"looks best.\n"
+"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
+"tween_cheatsheet.png]Tween easing and transition types cheatsheet[/url]"
+msgstr ""
+
+#: doc/classes/Tween.xml:46
+msgid ""
+"Follows [code]method[/code] of [code]object[/code] and applies the returned "
+"value on [code]target_method[/code] of [code]target[/code], beginning from "
+"[code]initial_val[/code] for [code]duration[/code] seconds, [code]delay[/"
+"code] later. Methods are called with consecutive values.\n"
+"Use [enum TransitionType] for [code]trans_type[/code] and [enum EaseType] "
+"for [code]ease_type[/code] parameters. These values control the timing and "
+"direction of the interpolation. See the class description for more "
+"information."
+msgstr ""
+
+#: doc/classes/Tween.xml:72
+msgid ""
+"Follows [code]property[/code] of [code]object[/code] and applies it on "
+"[code]target_property[/code] of [code]target[/code], beginning from "
+"[code]initial_val[/code] for [code]duration[/code] seconds, [code]delay[/"
+"code] seconds later.\n"
+"Use [enum TransitionType] for [code]trans_type[/code] and [enum EaseType] "
+"for [code]ease_type[/code] parameters. These values control the timing and "
+"direction of the interpolation. See the class description for more "
+"information."
+msgstr ""
+
+#: doc/classes/Tween.xml:80
+msgid ""
+"Returns the total time needed for all tweens to end. If you have two tweens, "
+"one lasting 10 seconds and the other 20 seconds, it would return 20 seconds, "
+"as by that time all tweens would have finished."
+msgstr ""
+
+#: doc/classes/Tween.xml:103
+msgid ""
+"Calls [code]callback[/code] of [code]object[/code] after [code]duration[/"
+"code]. [code]arg1[/code]-[code]arg5[/code] are arguments to be passed to the "
+"callback."
+msgstr ""
+
+#: doc/classes/Tween.xml:126
+msgid ""
+"Calls [code]callback[/code] of [code]object[/code] after [code]duration[/"
+"code] on the main thread (similar to [method Object.call_deferred]). "
+"[code]arg1[/code]-[code]arg5[/code] are arguments to be passed to the "
+"callback."
+msgstr ""
+
+#: doc/classes/Tween.xml:149
+msgid ""
+"Animates [code]method[/code] of [code]object[/code] from [code]initial_val[/"
+"code] to [code]final_val[/code] for [code]duration[/code] seconds, "
+"[code]delay[/code] seconds later. Methods are called with consecutive "
+"values.\n"
+"Use [enum TransitionType] for [code]trans_type[/code] and [enum EaseType] "
+"for [code]ease_type[/code] parameters. These values control the timing and "
+"direction of the interpolation. See the class description for more "
+"information."
+msgstr ""
+
+#: doc/classes/Tween.xml:173
+msgid ""
+"Animates [code]property[/code] of [code]object[/code] from "
+"[code]initial_val[/code] to [code]final_val[/code] for [code]duration[/code] "
+"seconds, [code]delay[/code] seconds later. Setting the initial value to "
+"[code]null[/code] uses the current value of the property.\n"
+"Use [enum TransitionType] for [code]trans_type[/code] and [enum EaseType] "
+"for [code]ease_type[/code] parameters. These values control the timing and "
+"direction of the interpolation. See the class description for more "
+"information."
+msgstr ""
+
+#: doc/classes/Tween.xml:181
+msgid ""
+"Returns [code]true[/code] if any tweens are currently running.\n"
+"[b]Note:[/b] This method doesn't consider tweens that have ended."
+msgstr ""
+
+#: doc/classes/Tween.xml:193
+msgid ""
+"Stops animation and removes a tween, given its object and property/method "
+"pair. By default, all tweens are removed, unless [code]key[/code] is "
+"specified."
+msgstr ""
+
+#: doc/classes/Tween.xml:200
+msgid "Stops animation and removes all tweens."
+msgstr ""
+
+#: doc/classes/Tween.xml:211
+msgid ""
+"Resets a tween to its initial value (the one given, not the one before the "
+"tween), given its object and property/method pair. By default, all tweens "
+"are removed, unless [code]key[/code] is specified."
+msgstr ""
+
+#: doc/classes/Tween.xml:218
+msgid ""
+"Resets all tweens to their initial values (the ones given, not those before "
+"the tween)."
+msgstr ""
+
+#: doc/classes/Tween.xml:229
+msgid ""
+"Continues animating a stopped tween, given its object and property/method "
+"pair. By default, all tweens are resumed, unless [code]key[/code] is "
+"specified."
+msgstr ""
+
+#: doc/classes/Tween.xml:236
+msgid "Continues animating all stopped tweens."
+msgstr ""
+
+#: doc/classes/Tween.xml:245
+msgid "Sets the interpolation to the given [code]time[/code] in seconds."
+msgstr ""
+
+#: doc/classes/Tween.xml:254
+msgid ""
+"Activates/deactivates the tween. See also [method stop_all] and [method "
+"resume_all]."
+msgstr ""
+
+#: doc/classes/Tween.xml:261
+msgid "Starts the tween. You can define animations both before and after this."
+msgstr ""
+
+#: doc/classes/Tween.xml:272
+msgid ""
+"Stops a tween, given its object and property/method pair. By default, all "
+"tweens are stopped, unless [code]key[/code] is specified."
+msgstr ""
+
+#: doc/classes/Tween.xml:279
+msgid "Stops animating all tweens."
+msgstr ""
+
+#: doc/classes/Tween.xml:304
+msgid ""
+"Animates [code]method[/code] of [code]object[/code] from the value returned "
+"by [code]initial_method[/code] to [code]final_val[/code] for [code]duration[/"
+"code] seconds, [code]delay[/code] seconds later. Methods are animated by "
+"calling them with consecutive values.\n"
+"Use [enum TransitionType] for [code]trans_type[/code] and [enum EaseType] "
+"for [code]ease_type[/code] parameters. These values control the timing and "
+"direction of the interpolation. See the class description for more "
+"information."
+msgstr ""
+
+#: doc/classes/Tween.xml:330
+msgid ""
+"Animates [code]property[/code] of [code]object[/code] from the current value "
+"of the [code]initial_val[/code] property of [code]initial[/code] to "
+"[code]final_val[/code] for [code]duration[/code] seconds, [code]delay[/code] "
+"seconds later.\n"
+"Use [enum TransitionType] for [code]trans_type[/code] and [enum EaseType] "
+"for [code]ease_type[/code] parameters. These values control the timing and "
+"direction of the interpolation. See the class description for more "
+"information."
+msgstr ""
+
+#: doc/classes/Tween.xml:338
+msgid "Returns the current time of the tween."
+msgstr ""
+
+#: doc/classes/Tween.xml:344
+msgid "The tween's animation process thread. See [enum TweenProcessMode]."
+msgstr ""
+
+#: doc/classes/Tween.xml:347
+msgid ""
+"The tween's speed multiplier. For example, set it to [code]1.0[/code] for "
+"normal speed, [code]2.0[/code] for two times normal speed, or [code]0.5[/"
+"code] for half of the normal speed. A value of [code]0[/code] pauses the "
+"animation, but see also [method set_active] or [method stop_all] for this."
+msgstr ""
+
+#: doc/classes/Tween.xml:350
+msgid "If [code]true[/code], the tween loops."
+msgstr ""
+
+#: doc/classes/Tween.xml:356
+msgid "Emitted when all processes in a tween end."
+msgstr ""
+
+#: doc/classes/Tween.xml:365
+msgid "Emitted when a tween ends."
+msgstr ""
+
+#: doc/classes/Tween.xml:374
+msgid "Emitted when a tween starts."
+msgstr ""
+
+#: doc/classes/Tween.xml:387
+msgid "Emitted at each step of the animation."
+msgstr ""
+
+#: doc/classes/Tween.xml:393
+msgid "The tween updates with the [code]_physics_process[/code] callback."
+msgstr ""
+
+#: doc/classes/Tween.xml:396
+msgid "The tween updates with the [code]_process[/code] callback."
+msgstr ""
+
+#: doc/classes/Tween.xml:399
+msgid "The animation is interpolated linearly."
+msgstr ""
+
+#: doc/classes/Tween.xml:402
+msgid "The animation is interpolated using a sine function."
+msgstr ""
+
+#: doc/classes/Tween.xml:405
+msgid ""
+"The animation is interpolated with a quintic (to the power of 5) function."
+msgstr ""
+
+#: doc/classes/Tween.xml:408
+msgid ""
+"The animation is interpolated with a quartic (to the power of 4) function."
+msgstr ""
+
+#: doc/classes/Tween.xml:411
+msgid ""
+"The animation is interpolated with a quadratic (to the power of 2) function."
+msgstr ""
+
+#: doc/classes/Tween.xml:414
+msgid ""
+"The animation is interpolated with an exponential (to the power of x) "
+"function."
+msgstr ""
+
+#: doc/classes/Tween.xml:417
+msgid ""
+"The animation is interpolated with elasticity, wiggling around the edges."
+msgstr ""
+
+#: doc/classes/Tween.xml:420
+msgid ""
+"The animation is interpolated with a cubic (to the power of 3) function."
+msgstr ""
+
+#: doc/classes/Tween.xml:423
+msgid "The animation is interpolated with a function using square roots."
+msgstr ""
+
+#: doc/classes/Tween.xml:426
+msgid "The animation is interpolated by bouncing at the end."
+msgstr ""
+
+#: doc/classes/Tween.xml:429
+msgid "The animation is interpolated backing out at ends."
+msgstr ""
+
+#: doc/classes/Tween.xml:432
+msgid "The interpolation starts slowly and speeds up towards the end."
+msgstr ""
+
+#: doc/classes/Tween.xml:435
+msgid "The interpolation starts quickly and slows down towards the end."
+msgstr ""
+
+#: doc/classes/Tween.xml:438
+msgid ""
+"A combination of [constant EASE_IN] and [constant EASE_OUT]. The "
+"interpolation is slowest at both ends."
+msgstr ""
+
+#: doc/classes/Tween.xml:441
+msgid ""
+"A combination of [constant EASE_IN] and [constant EASE_OUT]. The "
+"interpolation is fastest at both ends."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:4
+msgid "Helper class to implement a UDP server."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:7
+msgid ""
+"A simple server that opens a UDP socket and returns connected "
+"[PacketPeerUDP] upon receiving new packets. See also [method PacketPeerUDP."
+"connect_to_host].\n"
+"After starting the server ([method listen]), you will need to [method poll] "
+"it at regular intervals (e.g. inside [method Node._process]) for it to "
+"process new packets, delivering them to the appropriate [PacketPeerUDP], and "
+"taking new connections.\n"
+"Below a small example of how it can be used:\n"
+"[codeblock]\n"
+"# server.gd\n"
+"extends Node\n"
+"\n"
+"var server := UDPServer.new()\n"
+"var peers = []\n"
+"\n"
+"func _ready():\n"
+" server.listen(4242)\n"
+"\n"
+"func _process(delta):\n"
+" server.poll() # Important!\n"
+" if server.is_connection_available():\n"
+" var peer : PacketPeerUDP = server.take_connection()\n"
+" var pkt = peer.get_packet()\n"
+" print(\"Accepted peer: %s:%s\" % [peer.get_packet_ip(), peer."
+"get_packet_port()])\n"
+" print(\"Received data: %s\" % [pkt.get_string_from_utf8()])\n"
+" # Reply so it knows we received the message.\n"
+" peer.put_packet(pkt)\n"
+" # Keep a reference so we can keep contacting the remote peer.\n"
+" peers.append(peer)\n"
+"\n"
+" for i in range(0, peers.size()):\n"
+" pass # Do something with the connected peers.\n"
+"\n"
+"[/codeblock]\n"
+"[codeblock]\n"
+"# client.gd\n"
+"extends Node\n"
+"\n"
+"var udp := PacketPeerUDP.new()\n"
+"var connected = false\n"
+"\n"
+"func _ready():\n"
+" udp.connect_to_host(\"127.0.0.1\", 4242)\n"
+"\n"
+"func _process(delta):\n"
+" if !connected:\n"
+" # Try to contact server\n"
+" udp.put_packet(\"The answer is... 42!\".to_utf8())\n"
+" if udp.get_available_packet_count() > 0:\n"
+" print(\"Connected: %s\" % udp.get_packet().get_string_from_utf8())\n"
+" connected = true\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/UDPServer.xml:62
+msgid ""
+"Returns [code]true[/code] if a packet with a new address/port combination "
+"was received on the socket."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:69
+msgid ""
+"Returns [code]true[/code] if the socket is open and listening on a port."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:80
+msgid ""
+"Starts the server by opening a UDP socket listening on the given port. You "
+"can optionally specify a [code]bind_address[/code] to only listen for "
+"packets sent to that address. See also [method PacketPeerUDP.listen]."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:87
+msgid ""
+"Call this method at regular intervals (e.g. inside [method Node._process]) "
+"to process new packets. And packet from known address/port pair will be "
+"delivered to the appropriate [PacketPeerUDP], any packet received from an "
+"unknown address/port pair will be added as a pending connection (see [method "
+"is_connection_available], [method take_connection]). The maximum number of "
+"pending connection is defined via [member max_pending_connections]."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:94
+msgid ""
+"Stops the server, closing the UDP socket if open. Will close all connected "
+"[PacketPeerUDP] accepted via [method take_connection] (remote peers will not "
+"be notified)."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:101
+msgid ""
+"Returns the first pending connection (connected to the appropriate address/"
+"port). Will return [code]null[/code] if no new connection is available. See "
+"also [method is_connection_available], [method PacketPeerUDP."
+"connect_to_host]."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:107
+msgid ""
+"Define the maximum number of pending connections, during [method poll], any "
+"new pending connection exceeding that value will be automatically dropped. "
+"Setting this value to [code]0[/code] effectively prevents any new pending "
+"connection to be accepted (e.g. when all your players have connected)."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:4
+msgid "Helper to manage undo/redo operations in the editor or custom tools."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:7
+msgid ""
+"Helper to manage undo/redo operations in the editor or custom tools. It "
+"works by registering methods and property changes inside \"actions\".\n"
+"Common behavior is to create an action, then add do/undo calls to functions "
+"or property changes, then committing the action.\n"
+"Here's an example on how to add an action to the Godot editor's own "
+"[UndoRedo], from a plugin:\n"
+"[codeblock]\n"
+"var undo_redo = get_undo_redo() # Method of EditorPlugin.\n"
+"\n"
+"func do_something():\n"
+" pass # Put your code here.\n"
+"\n"
+"func undo_something():\n"
+" pass # Put here the code that reverts what's done by "
+"\"do_something()\".\n"
+"\n"
+"func _on_MyButton_pressed():\n"
+" var node = get_node(\"MyNode2D\")\n"
+" undo_redo.create_action(\"Move the node\")\n"
+" undo_redo.add_do_method(self, \"do_something\")\n"
+" undo_redo.add_undo_method(self, \"undo_something\")\n"
+" undo_redo.add_do_property(node, \"position\", Vector2(100,100))\n"
+" undo_redo.add_undo_property(node, \"position\", node.position)\n"
+" undo_redo.commit_action()\n"
+"[/codeblock]\n"
+"[method create_action], [method add_do_method], [method add_undo_method], "
+"[method add_do_property], [method add_undo_property], and [method "
+"commit_action] should be called one after the other, like in the example. "
+"Not doing so could lead to crashes.\n"
+"If you don't need to register a method, you can leave [method add_do_method] "
+"and [method add_undo_method] out; the same goes for properties. You can also "
+"register more than one method/property."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:42
+msgid "Register a method that will be called when the action is committed."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:55
+msgid "Register a property value change for \"do\"."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:64
+msgid ""
+"Register a reference for \"do\" that will be erased if the \"do\" history is "
+"lost. This is useful mostly for new nodes created for the \"do\" call. Do "
+"not use for resources."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:75
+msgid "Register a method that will be called when the action is undone."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:88
+msgid "Register a property value change for \"undo\"."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:97
+msgid ""
+"Register a reference for \"undo\" that will be erased if the \"undo\" "
+"history is lost. This is useful mostly for nodes removed with the \"do\" "
+"call (not the \"undo\" call!)."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:106
+msgid ""
+"Clear the undo/redo history and associated references.\n"
+"Passing [code]false[/code] to [code]increase_version[/code] will prevent the "
+"version number to be increased from this."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:114
+msgid ""
+"Commit the action. All \"do\" methods/properties are called/set when this "
+"function is called."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:125
+msgid ""
+"Create a new action. After this is called, do all your calls to [method "
+"add_do_method], [method add_undo_method], [method add_do_property], and "
+"[method add_undo_property], then commit the action with [method "
+"commit_action].\n"
+"The way actions are merged is dictated by the [code]merge_mode[/code] "
+"argument. See [enum MergeMode] for details."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:133
+msgid "Gets the name of the current action."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:140
+msgid ""
+"Gets the version. Every time a new action is committed, the [UndoRedo]'s "
+"version number is increased automatically.\n"
+"This is useful mostly to check if something changed from a saved version."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:148
+msgid "Returns [code]true[/code] if a \"redo\" action is available."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:155
+msgid "Returns [code]true[/code] if an \"undo\" action is available."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:162
+msgid ""
+"Returns [code]true[/code] if the [UndoRedo] is currently committing the "
+"action, i.e. running its \"do\" method or property change (see [method "
+"commit_action])."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:169
+msgid "Redo the last action."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:176
+msgid "Undo the last action."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:183
+msgid "Called when [method undo] or [method redo] was called."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:189
+msgid "Makes \"do\"/\"undo\" operations stay in separate actions."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:192
+msgid ""
+"Makes so that the action's \"do\" operation is from the first action created "
+"and the \"undo\" operation is from the last subsequent action with the same "
+"name."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:195
+msgid "Makes subsequent actions with the same name be merged into one."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:4
+msgid "UPNP network functions."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:7
+msgid ""
+"Provides UPNP functionality to discover [UPNPDevice]s on the local network "
+"and execute commands on them, like managing port mappings (port forwarding) "
+"and querying the local and remote network IP address. Note that methods on "
+"this class are synchronous and block the calling thread.\n"
+"To forward a specific port:\n"
+"[codeblock]\n"
+"const PORT = 7777\n"
+"var upnp = UPNP.new()\n"
+"upnp.discover(2000, 2, \"InternetGatewayDevice\")\n"
+"upnp.add_port_mapping(port)\n"
+"[/codeblock]\n"
+"To close a specific port (e.g. after you have finished using it):\n"
+"[codeblock]\n"
+"upnp.delete_port_mapping(port)\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:29
+msgid "Adds the given [UPNPDevice] to the list of discovered devices."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:46
+msgid ""
+"Adds a mapping to forward the external [code]port[/code] (between 1 and "
+"65535) on the default gateway (see [method get_gateway]) to the "
+"[code]internal_port[/code] on the local machine for the given protocol "
+"[code]proto[/code] (either [code]TCP[/code] or [code]UDP[/code], with UDP "
+"being the default). If a port mapping for the given port and protocol "
+"combination already exists on that gateway device, this method tries to "
+"overwrite it. If that is not desired, you can retrieve the gateway manually "
+"with [method get_gateway] and call [method add_port_mapping] on it, if any.\n"
+"If [code]internal_port[/code] is [code]0[/code] (the default), the same port "
+"number is used for both the external and the internal port (the [code]port[/"
+"code] value).\n"
+"The description ([code]desc[/code]) is shown in some router UIs and can be "
+"used to point out which application added the mapping. The mapping's lease "
+"duration can be limited by specifying a [code]duration[/code] (in seconds). "
+"However, some routers are incompatible with one or both of these, so use "
+"with caution and add fallback logic in case of errors to retry without them "
+"if in doubt.\n"
+"See [enum UPNPResult] for possible return values."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:56
+msgid "Clears the list of discovered devices."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:67
+msgid ""
+"Deletes the port mapping for the given port and protocol combination on the "
+"default gateway (see [method get_gateway]) if one exists. [code]port[/code] "
+"must be a valid port between 1 and 65535, [code]proto[/code] can be either "
+"[code]TCP[/code] or [code]UDP[/code]. See [enum UPNPResult] for possible "
+"return values."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:80
+msgid ""
+"Discovers local [UPNPDevice]s. Clears the list of previously discovered "
+"devices.\n"
+"Filters for IGD (InternetGatewayDevice) type devices by default, as those "
+"manage port forwarding. [code]timeout[/code] is the time to wait for "
+"responses in milliseconds. [code]ttl[/code] is the time-to-live; only touch "
+"this if you know what you're doing.\n"
+"See [enum UPNPResult] for possible return values."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:91
+msgid "Returns the [UPNPDevice] at the given [code]index[/code]."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:98
+msgid "Returns the number of discovered [UPNPDevice]s."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:105
+msgid ""
+"Returns the default gateway. That is the first discovered [UPNPDevice] that "
+"is also a valid IGD (InternetGatewayDevice)."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:112
+msgid ""
+"Returns the external [IP] address of the default gateway (see [method "
+"get_gateway]) as string. Returns an empty string on error."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:121
+msgid ""
+"Removes the device at [code]index[/code] from the list of discovered devices."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:132
+msgid ""
+"Sets the device at [code]index[/code] from the list of discovered devices to "
+"[code]device[/code]."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:138
+msgid "If [code]true[/code], IPv6 is used for [UPNPDevice] discovery."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:141
+msgid ""
+"If [code]0[/code], the local port to use for discovery is chosen "
+"automatically by the system. If [code]1[/code], discovery will be done from "
+"the source port 1900 (same as destination port). Otherwise, the value will "
+"be used as the port."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:144
+msgid ""
+"Multicast interface to use for discovery. Uses the default multicast "
+"interface if empty."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:149
+msgid "UPNP command or discovery was successful."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:152
+msgid ""
+"Not authorized to use the command on the [UPNPDevice]. May be returned when "
+"the user disabled UPNP on their router."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:155
+msgid ""
+"No port mapping was found for the given port, protocol combination on the "
+"given [UPNPDevice]."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:158
+msgid "Inconsistent parameters."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:161
+msgid ""
+"No such entry in array. May be returned if a given port, protocol "
+"combination is not found on an [UPNPDevice]."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:164
+msgid "The action failed."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:167
+msgid ""
+"The [UPNPDevice] does not allow wildcard values for the source IP address."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:170
+msgid "The [UPNPDevice] does not allow wildcard values for the external port."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:173
+msgid "The [UPNPDevice] does not allow wildcard values for the internal port."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:176
+msgid "The remote host value must be a wildcard."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:179
+msgid "The external port value must be a wildcard."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:182
+msgid ""
+"No port maps are available. May also be returned if port mapping "
+"functionality is not available."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:185
+msgid ""
+"Conflict with other mechanism. May be returned instead of [constant "
+"UPNP_RESULT_CONFLICT_WITH_OTHER_MAPPING] if a port mapping conflicts with an "
+"existing one."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:188
+msgid "Conflict with an existing port mapping."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:191
+msgid "External and internal port values must be the same."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:194
+msgid ""
+"Only permanent leases are supported. Do not use the [code]duration[/code] "
+"parameter when adding port mappings."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:197
+msgid "Invalid gateway."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:200
+msgid "Invalid port."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:203
+msgid "Invalid protocol."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:206
+msgid "Invalid duration."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:209
+msgid "Invalid arguments."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:212
+msgid "Invalid response."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:215
+msgid "Invalid parameter."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:218
+#: modules/upnp/doc_classes/UPNPDevice.xml:80
+msgid "HTTP error."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:221
+msgid "Socket error."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:224
+msgid "Error allocating memory."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:227
+msgid ""
+"No gateway available. You may need to call [method discover] first, or "
+"discovery didn't detect any valid IGDs (InternetGatewayDevices)."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:230
+msgid ""
+"No devices available. You may need to call [method discover] first, or "
+"discovery didn't detect any valid [UPNPDevice]s."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:233
+#: modules/upnp/doc_classes/UPNPDevice.xml:104
+msgid "Unknown error."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:4
+msgid "UPNP device."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:7
+msgid ""
+"UPNP device. See [UPNP] for UPNP discovery and utility functions. Provides "
+"low-level access to UPNP control commands. Allows to manage port mappings "
+"(port forwarding) and to query network information of the device (like local "
+"and external IP address and status). Note that methods on this class are "
+"synchronous and block the calling thread."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:26
+msgid ""
+"Adds a port mapping to forward the given external port on this [UPNPDevice] "
+"for the given protocol to the local machine. See [method UPNP."
+"add_port_mapping]."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:37
+msgid ""
+"Deletes the port mapping identified by the given port and protocol "
+"combination on this device. See [method UPNP.delete_port_mapping]."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:44
+msgid ""
+"Returns [code]true[/code] if this is a valid IGD (InternetGatewayDevice) "
+"which potentially supports port forwarding."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:51
+msgid ""
+"Returns the external IP address of this [UPNPDevice] or an empty string."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:57
+msgid "URL to the device description."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:60
+msgid "IDG control URL."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:63
+msgid ""
+"Address of the local machine in the network connecting it to this "
+"[UPNPDevice]."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:66
+msgid "IGD service type."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:69
+msgid "IGD status. See [enum IGDStatus]."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:72
+msgid "Service type."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:77
+msgid "OK."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:83
+msgid "Empty HTTP response."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:86
+msgid "Returned response contained no URLs."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:89
+msgid "Not a valid IGD."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:92
+msgid "Disconnected."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:95
+msgid "Unknown device."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:98
+msgid "Invalid control."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:101
+msgid "Memory allocation error."
+msgstr ""
+
+#: doc/classes/Variant.xml:4
+msgid "The most important data type in Godot."
+msgstr ""
+
+#: doc/classes/Variant.xml:7
+msgid ""
+"In computer programming, a Variant class is a class that is designed to "
+"store a variety of other types. Dynamic programming languages like PHP, Lua, "
+"JavaScript and GDScript like to use them to store variables' data on the "
+"backend. With these Variants, properties are able to change value types "
+"freely.\n"
+"[codeblock]\n"
+"var foo = 2 # foo is dynamically an integer\n"
+"foo = \"Now foo is a string!\"\n"
+"foo = Reference.new() # foo is an Object\n"
+"var bar: int = 2 # bar is a statically typed integer.\n"
+"# bar = \"Uh oh! I can't make static variables become a different type!\"\n"
+"[/codeblock]\n"
+"Godot tracks all scripting API variables within Variants. Without even "
+"realizing it, you use Variants all the time. When a particular language "
+"enforces its own rules for keeping data typed, then that language is "
+"applying its own custom logic over the base Variant scripting API.\n"
+"- GDScript automatically wrap values in them. It keeps all data in plain "
+"Variants by default and then optionally enforces custom static typing rules "
+"on variable types.\n"
+"- VisualScript tracks properties inside Variants as well, but it also uses "
+"static typing. The GUI interface enforces that properties have a particular "
+"type that doesn't change over time.\n"
+"- C# is statically typed, but uses the Mono [code]object[/code] type in "
+"place of Godot's Variant class when it needs to represent a dynamic value. "
+"[code]object[/code] is the Mono runtime's equivalent of the same concept.\n"
+"- The statically-typed language NativeScript C++ does not define a built-in "
+"Variant-like class. Godot's GDNative bindings provide their own godot::"
+"Variant class for users; Any point at which the C++ code starts interacting "
+"with the Godot runtime is a place where you might have to start wrapping "
+"data inside Variant objects.\n"
+"The global [method @GDScript.typeof] function returns the enumerated value "
+"of the Variant type stored in the current variable (see [enum Variant."
+"Type]).\n"
+"[codeblock]\n"
+"var foo = 2\n"
+"match typeof(foo):\n"
+" TYPE_NIL:\n"
+" print(\"foo is null\")\n"
+" TYPE_INTEGER:\n"
+" print(\"foo is an integer\")\n"
+" TYPE_OBJECT:\n"
+" # Note that Objects are their own special category.\n"
+" # To get the name of the underlying Object type, you need the "
+"`get_class()` method.\n"
+" print(\"foo is a(n) %s\" % foo.get_class()) # inject the class name "
+"into a formatted string.\n"
+" # Note also that there is not yet any way to get a script's "
+"`class_name` string easily.\n"
+" # To fetch that value, you need to dig deeply into a hidden "
+"ProjectSettings setting: an Array of Dictionaries called "
+"\"_global_script_classes\".\n"
+" # Open your project.godot file to see it up close.\n"
+"[/codeblock]\n"
+"A Variant takes up only 20 bytes and can store almost any engine datatype "
+"inside of it. Variants are rarely used to hold information for long periods "
+"of time. Instead, they are used mainly for communication, editing, "
+"serialization and moving data around.\n"
+"Godot has specifically invested in making its Variant class as flexible as "
+"possible; so much so that it is used for a multitude of operations to "
+"facilitate communication between all of Godot's systems.\n"
+"A Variant:\n"
+"- Can store almost any datatype.\n"
+"- Can perform operations between many variants. GDScript uses Variant as its "
+"atomic/native datatype.\n"
+"- Can be hashed, so it can be compared quickly to other variants.\n"
+"- Can be used to convert safely between datatypes.\n"
+"- Can be used to abstract calling methods and their arguments. Godot exports "
+"all its functions through variants.\n"
+"- Can be used to defer calls or move data between threads.\n"
+"- Can be serialized as binary and stored to disk, or transferred via "
+"network.\n"
+"- Can be serialized to text and use it for printing values and editable "
+"settings.\n"
+"- Can work as an exported property, so the editor can edit it universally.\n"
+"- Can be used for dictionaries, arrays, parsers, etc.\n"
+"[b]Containers (Array and Dictionary):[/b] Both are implemented using "
+"variants. A [Dictionary] can match any datatype used as key to any other "
+"datatype. An [Array] just holds an array of Variants. Of course, a Variant "
+"can also hold a [Dictionary] and an [Array] inside, making it even more "
+"flexible.\n"
+"Modifications to a container will modify all references to it. A [Mutex] "
+"should be created to lock it if multi-threaded access is desired."
+msgstr ""
+
+#: doc/classes/Variant.xml:53
+msgid ""
+"https://docs.godotengine.org/en/latest/development/cpp/variant_class.html"
+msgstr ""
+
+#: doc/classes/VBoxContainer.xml:4
+msgid "Vertical box container."
+msgstr ""
+
+#: doc/classes/VBoxContainer.xml:7
+msgid "Vertical box container. See [BoxContainer]."
+msgstr ""
+
+#: doc/classes/VBoxContainer.xml:17
+msgid "The vertical space between the [VBoxContainer]'s elements."
+msgstr ""
+
+#: doc/classes/Vector2.xml:4
+msgid "Vector used for 2D math using floating point coordinates."
+msgstr ""
+
+#: doc/classes/Vector2.xml:7
+msgid ""
+"2-element structure that can be used to represent positions in 2D space or "
+"any other pair of numeric values.\n"
+"It uses floating-point coordinates. See [Vector2i] for its integer "
+"counterpart.\n"
+"[b]Note:[/b] In a boolean context, a Vector2 will evaluate to [code]false[/"
+"code] if it's equal to [code]Vector2(0, 0)[/code]. Otherwise, a Vector2 will "
+"always evaluate to [code]true[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:21
+msgid "Constructs a new [Vector2] from [Vector2i]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:32
+msgid ""
+"Constructs a new [Vector2] from the given [code]x[/code] and [code]y[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:39 doc/classes/Vector2i.xml:39
+#: doc/classes/Vector3.xml:41
+msgid ""
+"Returns a new vector with all components in absolute values (i.e. positive)."
+msgstr ""
+
+#: doc/classes/Vector2.xml:46
+msgid ""
+"Returns this vector's angle with respect to the X axis, or [code](1, 0)[/"
+"code] vector, in radians.\n"
+"Equivalent to the result of [method @GDScript.atan2] when called with the "
+"vector's [member y] and [member x] as parameters: [code]atan2(y, x)[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:56
+msgid "Returns the angle to the given vector, in radians."
+msgstr ""
+
+#: doc/classes/Vector2.xml:65
+msgid ""
+"Returns the angle between the line connecting the two points and the X axis, "
+"in radians."
+msgstr ""
+
+#: doc/classes/Vector2.xml:72
+msgid ""
+"Returns the aspect ratio of this vector, the ratio of [member x] to [member "
+"y]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:81 doc/classes/Vector3.xml:59
+msgid ""
+"Returns the vector \"bounced off\" from a plane defined by the given normal."
+msgstr ""
+
+#: doc/classes/Vector2.xml:88
+msgid ""
+"Returns the vector with all components rounded up (towards positive "
+"infinity)."
+msgstr ""
+
+#: doc/classes/Vector2.xml:97
+msgid ""
+"Returns the vector with a maximum length by limiting its length to "
+"[code]length[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:106
+msgid "Returns the cross product of this vector and [code]with[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:121
+msgid ""
+"Cubically interpolates between this vector and [code]b[/code] using "
+"[code]pre_a[/code] and [code]post_b[/code] as handles, and returns the "
+"result at position [code]t[/code]. [code]t[/code] is on the range of 0.0 to "
+"1.0, representing the amount of interpolation."
+msgstr ""
+
+#: doc/classes/Vector2.xml:130 doc/classes/Vector3.xml:99
+msgid ""
+"Returns the normalized vector pointing from this vector to [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:139 doc/classes/Vector3.xml:108
+msgid ""
+"Returns the squared distance between this vector and [code]b[/code].\n"
+"This method runs faster than [method distance_to], so prefer it if you need "
+"to compare vectors or need the squared distance for some formula."
+msgstr ""
+
+#: doc/classes/Vector2.xml:149
+msgid "Returns the distance between this vector and [code]to[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:158
+msgid ""
+"Returns the dot product of this vector and [code]with[/code]. This can be "
+"used to compare the angle between two vectors. For example, this can be used "
+"to determine whether an enemy is facing the player.\n"
+"The dot product will be [code]0[/code] for a straight angle (90 degrees), "
+"greater than 0 for angles narrower than 90 degrees and lower than 0 for "
+"angles wider than 90 degrees.\n"
+"When using unit (normalized) vectors, the result will always be between "
+"[code]-1.0[/code] (180 degree angle) when the vectors are facing opposite "
+"directions, and [code]1.0[/code] (0 degree angle) when the vectors are "
+"aligned.\n"
+"[b]Note:[/b] [code]a.dot(b)[/code] is equivalent to [code]b.dot(a)[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:168
+msgid ""
+"Returns the vector with all components rounded down (towards negative "
+"infinity)."
+msgstr ""
+
+#: doc/classes/Vector2.xml:177 doc/classes/Vector3.xml:153
+msgid ""
+"Returns [code]true[/code] if this vector and [code]v[/code] are "
+"approximately equal, by running [method @GDScript.is_equal_approx] on each "
+"component."
+msgstr ""
+
+#: doc/classes/Vector2.xml:184 doc/classes/Vector3.xml:160
+msgid ""
+"Returns [code]true[/code] if the vector is normalized, and false otherwise."
+msgstr ""
+
+#: doc/classes/Vector2.xml:191 doc/classes/Vector3.xml:167
+msgid "Returns the length (magnitude) of this vector."
+msgstr ""
+
+#: doc/classes/Vector2.xml:198 doc/classes/Vector3.xml:174
+msgid ""
+"Returns the squared length (squared magnitude) of this vector.\n"
+"This method runs faster than [method length], so prefer it if you need to "
+"compare vectors or need the squared distance for some formula."
+msgstr ""
+
+#: doc/classes/Vector2.xml:210 doc/classes/Vector3.xml:186
+msgid ""
+"Returns the result of the linear interpolation between this vector and "
+"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is on the range of "
+"0.0 to 1.0, representing the amount of interpolation."
+msgstr ""
+
+#: doc/classes/Vector2.xml:221
+msgid ""
+"Moves the vector toward [code]to[/code] by the fixed [code]delta[/code] "
+"amount."
+msgstr ""
+
+#: doc/classes/Vector2.xml:228 doc/classes/Vector3.xml:218
+msgid ""
+"Returns the vector scaled to unit length. Equivalent to [code]v / v.length()"
+"[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:237 doc/classes/Vector3.xml:236
+msgid ""
+"Returns a vector composed of the [method @GDScript.fposmod] of this vector's "
+"components and [code]mod[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:246 doc/classes/Vector3.xml:245
+msgid ""
+"Returns a vector composed of the [method @GDScript.fposmod] of this vector's "
+"components and [code]modv[/code]'s components."
+msgstr ""
+
+#: doc/classes/Vector2.xml:255
+msgid "Returns the vector projected onto the vector [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:264
+msgid "Returns the vector reflected from a plane defined by the given normal."
+msgstr ""
+
+#: doc/classes/Vector2.xml:273
+msgid ""
+"Returns the vector rotated by [code]phi[/code] radians. See also [method "
+"@GDScript.deg2rad]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:280
+msgid ""
+"Returns the vector with all components rounded to the nearest integer, with "
+"halfway cases rounded away from zero."
+msgstr ""
+
+#: doc/classes/Vector2.xml:287
+msgid ""
+"Returns the vector with each component set to one or negative one, depending "
+"on the signs of the components, or zero if the component is zero, by calling "
+"[method @GDScript.sign] on each component."
+msgstr ""
+
+#: doc/classes/Vector2.xml:298 doc/classes/Vector3.xml:299
+msgid ""
+"Returns the result of spherical linear interpolation between this vector and "
+"[code]b[/code], by amount [code]t[/code]. [code]t[/code] is on the range of "
+"0.0 to 1.0, representing the amount of interpolation.\n"
+"[b]Note:[/b] Both vectors must be normalized."
+msgstr ""
+
+#: doc/classes/Vector2.xml:308 doc/classes/Vector3.xml:309
+msgid "Returns this vector slid along a plane defined by the given normal."
+msgstr ""
+
+#: doc/classes/Vector2.xml:317 doc/classes/Vector3.xml:318
+msgid ""
+"Returns this vector with each component snapped to the nearest multiple of "
+"[code]step[/code]. This can also be used to round to an arbitrary number of "
+"decimals."
+msgstr ""
+
+#: doc/classes/Vector2.xml:324
+msgid ""
+"Returns a perpendicular vector rotated 90 degrees counter-clockwise compared "
+"to the original, with the same length."
+msgstr ""
+
+#: doc/classes/Vector2.xml:330 doc/classes/Vector2i.xml:59
+#: doc/classes/Vector3.xml:332 doc/classes/Vector3i.xml:61
+msgid ""
+"The vector's X component. Also accessible by using the index position [code]"
+"[0][/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:333 doc/classes/Vector2i.xml:62
+#: doc/classes/Vector3.xml:335 doc/classes/Vector3i.xml:64
+msgid ""
+"The vector's Y component. Also accessible by using the index position [code]"
+"[1][/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:338 doc/classes/Vector2i.xml:67
+#: doc/classes/Vector3i.xml:72
+msgid "Enumerated value for the X axis."
+msgstr ""
+
+#: doc/classes/Vector2.xml:341 doc/classes/Vector2i.xml:70
+#: doc/classes/Vector3i.xml:75
+msgid "Enumerated value for the Y axis."
+msgstr ""
+
+#: doc/classes/Vector2.xml:344 doc/classes/Vector2i.xml:73
+#: doc/classes/Vector3.xml:352 doc/classes/Vector3i.xml:81
+msgid "Zero vector, a vector with all components set to [code]0[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:347 doc/classes/Vector2i.xml:76
+#: doc/classes/Vector3.xml:355 doc/classes/Vector3i.xml:84
+msgid "One vector, a vector with all components set to [code]1[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:350 doc/classes/Vector3.xml:358
+msgid ""
+"Infinity vector, a vector with all components set to [constant @GDScript."
+"INF]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:353 doc/classes/Vector2i.xml:79
+msgid "Left unit vector. Represents the direction of left."
+msgstr ""
+
+#: doc/classes/Vector2.xml:356 doc/classes/Vector2i.xml:82
+msgid "Right unit vector. Represents the direction of right."
+msgstr ""
+
+#: doc/classes/Vector2.xml:359 doc/classes/Vector2i.xml:85
+msgid "Up unit vector. Y is down in 2D, so this vector points -Y."
+msgstr ""
+
+#: doc/classes/Vector2.xml:362 doc/classes/Vector2i.xml:88
+msgid "Down unit vector. Y is down in 2D, so this vector points +Y."
+msgstr ""
+
+#: doc/classes/Vector2i.xml:4
+msgid "Vector used for 2D math using integer coordinates."
+msgstr ""
+
+#: doc/classes/Vector2i.xml:7
+msgid ""
+"2-element structure that can be used to represent positions in 2D space or "
+"any other pair of numeric values.\n"
+"It uses integer coordinates and is therefore preferable to [Vector2] when "
+"exact precision is required.\n"
+"[b]Note:[/b] In a boolean context, a Vector2i will evaluate to [code]false[/"
+"code] if it's equal to [code]Vector2i(0, 0)[/code]. Otherwise, a Vector2i "
+"will always evaluate to [code]true[/code]."
+msgstr ""
+
+#: doc/classes/Vector2i.xml:23
+msgid ""
+"Constructs a new [Vector2i] from the given [code]x[/code] and [code]y[/code]."
+msgstr ""
+
+#: doc/classes/Vector2i.xml:32
+msgid ""
+"Constructs a new [Vector2i] from [Vector2]. The floating point coordinates "
+"will be truncated."
+msgstr ""
+
+#: doc/classes/Vector2i.xml:46
+msgid "Returns the ratio of [member x] to [member y]."
+msgstr ""
+
+#: doc/classes/Vector2i.xml:53 doc/classes/Vector3i.xml:55
+msgid ""
+"Returns the vector with each component set to one or negative one, depending "
+"on the signs of the components."
+msgstr ""
+
+#: doc/classes/Vector3.xml:4
+msgid "Vector used for 3D math using floating point coordinates."
+msgstr ""
+
+#: doc/classes/Vector3.xml:7
+msgid ""
+"3-element structure that can be used to represent positions in 3D space or "
+"any other pair of numeric values.\n"
+"It uses floating-point coordinates. See [Vector3i] for its integer "
+"counterpart.\n"
+"[b]Note:[/b] In a boolean context, a Vector3 will evaluate to [code]false[/"
+"code] if it's equal to [code]Vector3(0, 0, 0)[/code]. Otherwise, a Vector3 "
+"will always evaluate to [code]true[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:21
+msgid "Constructs a new [Vector3] from [Vector3i]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:34
+msgid "Returns a [Vector3] with the given components."
+msgstr ""
+
+#: doc/classes/Vector3.xml:50
+msgid "Returns the minimum angle to the given vector, in radians."
+msgstr ""
+
+#: doc/classes/Vector3.xml:66
+msgid ""
+"Returns a new vector with all components rounded up (towards positive "
+"infinity)."
+msgstr ""
+
+#: doc/classes/Vector3.xml:75
+msgid "Returns the cross product of this vector and [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:90
+msgid ""
+"Performs a cubic interpolation between vectors [code]pre_a[/code], [code]a[/"
+"code], [code]b[/code], [code]post_b[/code] ([code]a[/code] is current), by "
+"the given amount [code]t[/code]. [code]t[/code] is on the range of 0.0 to "
+"1.0, representing the amount of interpolation."
+msgstr ""
+
+#: doc/classes/Vector3.xml:118
+msgid "Returns the distance between this vector and [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:127
+msgid ""
+"Returns the dot product of this vector and [code]b[/code]. This can be used "
+"to compare the angle between two vectors. For example, this can be used to "
+"determine whether an enemy is facing the player.\n"
+"The dot product will be [code]0[/code] for a straight angle (90 degrees), "
+"greater than 0 for angles narrower than 90 degrees and lower than 0 for "
+"angles wider than 90 degrees.\n"
+"When using unit (normalized) vectors, the result will always be between "
+"[code]-1.0[/code] (180 degree angle) when the vectors are facing opposite "
+"directions, and [code]1.0[/code] (0 degree angle) when the vectors are "
+"aligned.\n"
+"[b]Note:[/b] [code]a.dot(b)[/code] is equivalent to [code]b.dot(a)[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:137
+msgid ""
+"Returns a new vector with all components rounded down (towards negative "
+"infinity)."
+msgstr ""
+
+#: doc/classes/Vector3.xml:144
+msgid ""
+"Returns the inverse of the vector. This is the same as [code]Vector3( 1.0 / "
+"v.x, 1.0 / v.y, 1.0 / v.z )[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:193 doc/classes/Vector3i.xml:41
+msgid ""
+"Returns the axis of the vector's largest value. See [code]AXIS_*[/code] "
+"constants. If all components are equal, this method returns [constant "
+"AXIS_X]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:200 doc/classes/Vector3i.xml:48
+msgid ""
+"Returns the axis of the vector's smallest value. See [code]AXIS_*[/code] "
+"constants. If all components are equal, this method returns [constant "
+"AXIS_Z]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:211
+msgid ""
+"Moves this vector toward [code]to[/code] by the fixed [code]delta[/code] "
+"amount."
+msgstr ""
+
+#: doc/classes/Vector3.xml:227
+msgid "Returns the outer product with [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:254
+msgid "Returns this vector projected onto another vector [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:263
+msgid "Returns this vector reflected from a plane defined by the given normal."
+msgstr ""
+
+#: doc/classes/Vector3.xml:274
+msgid ""
+"Rotates this vector around a given axis by [code]phi[/code] radians. The "
+"axis must be a normalized vector."
+msgstr ""
+
+#: doc/classes/Vector3.xml:281
+msgid ""
+"Returns this vector with all components rounded to the nearest integer, with "
+"halfway cases rounded away from zero."
+msgstr ""
+
+#: doc/classes/Vector3.xml:288
+msgid ""
+"Returns a vector with each component set to one or negative one, depending "
+"on the signs of this vector's components, or zero if the component is zero, "
+"by calling [method @GDScript.sign] on each component."
+msgstr ""
+
+#: doc/classes/Vector3.xml:325
+msgid ""
+"Returns a diagonal matrix with the vector as main diagonal.\n"
+"This is equivalent to a Basis with no rotation or shearing and this vector's "
+"components set as the scale."
+msgstr ""
+
+#: doc/classes/Vector3.xml:338 doc/classes/Vector3i.xml:67
+msgid ""
+"The vector's Z component. Also accessible by using the index position [code]"
+"[2][/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:343
+msgid ""
+"Enumerated value for the X axis. Returned by [method max_axis] and [method "
+"min_axis]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:346
+msgid ""
+"Enumerated value for the Y axis. Returned by [method max_axis] and [method "
+"min_axis]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:349
+msgid ""
+"Enumerated value for the Z axis. Returned by [method max_axis] and [method "
+"min_axis]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:361 doc/classes/Vector3i.xml:87
+msgid ""
+"Left unit vector. Represents the local direction of left, and the global "
+"direction of west."
+msgstr ""
+
+#: doc/classes/Vector3.xml:364 doc/classes/Vector3i.xml:90
+msgid ""
+"Right unit vector. Represents the local direction of right, and the global "
+"direction of east."
+msgstr ""
+
+#: doc/classes/Vector3.xml:367 doc/classes/Vector3i.xml:93
+msgid "Up unit vector."
+msgstr ""
+
+#: doc/classes/Vector3.xml:370 doc/classes/Vector3i.xml:96
+msgid "Down unit vector."
+msgstr ""
+
+#: doc/classes/Vector3.xml:373 doc/classes/Vector3i.xml:99
+msgid ""
+"Forward unit vector. Represents the local direction of forward, and the "
+"global direction of north."
+msgstr ""
+
+#: doc/classes/Vector3.xml:376 doc/classes/Vector3i.xml:102
+msgid ""
+"Back unit vector. Represents the local direction of back, and the global "
+"direction of south."
+msgstr ""
+
+#: doc/classes/Vector3i.xml:4
+msgid "Vector used for 3D math using integer coordinates."
+msgstr ""
+
+#: doc/classes/Vector3i.xml:7
+msgid ""
+"3-element structure that can be used to represent positions in 3D space or "
+"any other pair of numeric values.\n"
+"It uses integer coordinates and is therefore preferable to [Vector3] when "
+"exact precision is required.\n"
+"[b]Note:[/b] In a boolean context, a Vector3i will evaluate to [code]false[/"
+"code] if it's equal to [code]Vector3i(0, 0, 0)[/code]. Otherwise, a Vector3i "
+"will always evaluate to [code]true[/code]."
+msgstr ""
+
+#: doc/classes/Vector3i.xml:25
+msgid "Returns a [Vector3i] with the given components."
+msgstr ""
+
+#: doc/classes/Vector3i.xml:34
+msgid ""
+"Constructs a new [Vector3i] from [Vector3]. The floating point coordinates "
+"will be truncated."
+msgstr ""
+
+#: doc/classes/Vector3i.xml:78
+msgid "Enumerated value for the Z axis."
+msgstr ""
+
+#: doc/classes/VehicleBody3D.xml:4
+msgid "Physics body that simulates the behavior of a car."
+msgstr ""
+
+#: doc/classes/VehicleBody3D.xml:7
+msgid ""
+"This node implements all the physics logic needed to simulate a car. It is "
+"based on the raycast vehicle system commonly found in physics engines. You "
+"will need to add a [CollisionShape3D] for the main body of your vehicle and "
+"add [VehicleWheel3D] nodes for the wheels. You should also add a "
+"[MeshInstance3D] to this node for the 3D model of your car but this model "
+"should not include meshes for the wheels. You should control the vehicle by "
+"using the [member brake], [member engine_force], and [member steering] "
+"properties and not change the position or orientation of this node "
+"directly.\n"
+"[b]Note:[/b] The origin point of your VehicleBody3D will determine the "
+"center of gravity of your vehicle so it is better to keep this low and move "
+"the [CollisionShape3D] and [MeshInstance3D] upwards.\n"
+"[b]Note:[/b] This class has known issues and isn't designed to provide "
+"realistic 3D vehicle physics. If you want advanced vehicle physics, you will "
+"probably have to write your own physics integration using another "
+"[PhysicsBody3D] class."
+msgstr ""
+
+#: doc/classes/VehicleBody3D.xml:17
+msgid ""
+"Slows down the vehicle by applying a braking force. The vehicle is only "
+"slowed down if the wheels are in contact with a surface. The force you need "
+"to apply to adequately slow down your vehicle depends on the [member "
+"RigidBody3D.mass] of the vehicle. For a vehicle with a mass set to 1000, try "
+"a value in the 25 - 30 range for hard braking."
+msgstr ""
+
+#: doc/classes/VehicleBody3D.xml:20
+msgid ""
+"Accelerates the vehicle by applying an engine force. The vehicle is only "
+"speed up if the wheels that have [member VehicleWheel3D.use_as_traction] set "
+"to [code]true[/code] and are in contact with a surface. The [member "
+"RigidBody3D.mass] of the vehicle has an effect on the acceleration of the "
+"vehicle. For a vehicle with a mass set to 1000, try a value in the 25 - 50 "
+"range for acceleration.\n"
+"[b]Note:[/b] The simulation does not take the effect of gears into account, "
+"you will need to add logic for this if you wish to simulate gears.\n"
+"A negative value will result in the vehicle reversing."
+msgstr ""
+
+#: doc/classes/VehicleBody3D.xml:26
+msgid ""
+"The steering angle for the vehicle. Setting this to a non-zero value will "
+"result in the vehicle turning when it's moving. Wheels that have [member "
+"VehicleWheel3D.use_as_steering] set to [code]true[/code] will automatically "
+"be rotated."
+msgstr ""
+
+#: doc/classes/VehicleWheel3D.xml:4
+msgid "Physics object that simulates the behavior of a wheel."
+msgstr ""
+
+#: doc/classes/VehicleWheel3D.xml:7
+msgid ""
+"This node needs to be used as a child node of [VehicleBody3D] and simulates "
+"the behavior of one of its wheels. This node also acts as a collider to "
+"detect if the wheel is touching a surface.\n"
+"[b]Note:[/b] This class has known issues and isn't designed to provide "
+"realistic 3D vehicle physics. If you want advanced vehicle physics, you will "
+"probably have to write your own physics integration using another "
+"[PhysicsBody3D] class."
+msgstr ""
+
+#: doc/classes/VehicleWheel3D.xml:17
+msgid "Returns the rotational speed of the wheel in revolutions per minute."
+msgstr ""
+
+#: doc/classes/VehicleWheel3D.xml:24
+msgid ""
+"Returns a value between 0.0 and 1.0 that indicates whether this wheel is "
+"skidding. 0.0 is skidding (the wheel has lost grip, e.g. icy terrain), 1.0 "
+"means not skidding (the wheel has full grip, e.g. dry asphalt road)."
+msgstr ""
+
+#: doc/classes/VehicleWheel3D.xml:31
+msgid "Returns [code]true[/code] if this wheel is in contact with a surface."
+msgstr ""
+
+#: doc/classes/VehicleWheel3D.xml:37
+msgid ""
+"Slows down the wheel by applying a braking force. The wheel is only slowed "
+"down if it is in contact with a surface. The force you need to apply to "
+"adequately slow down your vehicle depends on the [member RigidBody3D.mass] "
+"of the vehicle. For a vehicle with a mass set to 1000, try a value in the 25 "
+"- 30 range for hard braking."
+msgstr ""
+
+#: doc/classes/VehicleWheel3D.xml:40
+msgid ""
+"The damping applied to the spring when the spring is being compressed. This "
+"value should be between 0.0 (no damping) and 1.0. A value of 0.0 means the "
+"car will keep bouncing as the spring keeps its energy. A good value for this "
+"is around 0.3 for a normal car, 0.5 for a race car."
+msgstr ""
+
+#: doc/classes/VehicleWheel3D.xml:43
+msgid ""
+"The damping applied to the spring when relaxing. This value should be "
+"between 0.0 (no damping) and 1.0. This value should always be slightly "
+"higher than the [member damping_compression] property. For a [member "
+"damping_compression] value of 0.3, try a relaxation value of 0.5."
+msgstr ""
+
+#: doc/classes/VehicleWheel3D.xml:46
+msgid ""
+"Accelerates the wheel by applying an engine force. The wheel is only speed "
+"up if it is in contact with a surface. The [member RigidBody3D.mass] of the "
+"vehicle has an effect on the acceleration of the vehicle. For a vehicle with "
+"a mass set to 1000, try a value in the 25 - 50 range for acceleration.\n"
+"[b]Note:[/b] The simulation does not take the effect of gears into account, "
+"you will need to add logic for this if you wish to simulate gears.\n"
+"A negative value will result in the wheel reversing."
+msgstr ""
+
+#: doc/classes/VehicleWheel3D.xml:51
+msgid ""
+"The steering angle for the wheel. Setting this to a non-zero value will "
+"result in the vehicle turning when it's moving."
+msgstr ""
+
+#: doc/classes/VehicleWheel3D.xml:54
+msgid ""
+"The maximum force the spring can resist. This value should be higher than a "
+"quarter of the [member RigidBody3D.mass] of the [VehicleBody3D] or the "
+"spring will not carry the weight of the vehicle. Good results are often "
+"obtained by a value that is about 3× to 4× this number."
+msgstr ""
+
+#: doc/classes/VehicleWheel3D.xml:57
+msgid ""
+"This value defines the stiffness of the suspension. Use a value lower than "
+"50 for an off-road car, a value between 50 and 100 for a race car and try "
+"something around 200 for something like a Formula 1 car."
+msgstr ""
+
+#: doc/classes/VehicleWheel3D.xml:60
+msgid ""
+"This is the distance the suspension can travel. As Godot units are "
+"equivalent to meters, keep this setting relatively low. Try a value between "
+"0.1 and 0.3 depending on the type of car."
+msgstr ""
+
+#: doc/classes/VehicleWheel3D.xml:63
+msgid ""
+"If [code]true[/code], this wheel will be turned when the car steers. This "
+"value is used in conjunction with [member VehicleBody3D.steering] and "
+"ignored if you are using the per-wheel [member steering] value instead."
+msgstr ""
+
+#: doc/classes/VehicleWheel3D.xml:66
+msgid ""
+"If [code]true[/code], this wheel transfers engine force to the ground to "
+"propel the vehicle forward. This value is used in conjunction with [member "
+"VehicleBody3D.engine_force] and ignored if you are using the per-wheel "
+"[member engine_force] value instead."
+msgstr ""
+
+#: doc/classes/VehicleWheel3D.xml:69
+msgid ""
+"This determines how much grip this wheel has. It is combined with the "
+"friction setting of the surface the wheel is in contact with. 0.0 means no "
+"grip, 1.0 is normal grip. For a drift car setup, try setting the grip of the "
+"rear wheels slightly lower than the front wheels, or use a lower value to "
+"simulate tire wear.\n"
+"It's best to set this to 1.0 when starting out."
+msgstr ""
+
+#: doc/classes/VehicleWheel3D.xml:73
+msgid "The radius of the wheel in meters."
+msgstr ""
+
+#: doc/classes/VehicleWheel3D.xml:76
+msgid ""
+"This is the distance in meters the wheel is lowered from its origin point. "
+"Don't set this to 0.0 and move the wheel into position, instead move the "
+"origin point of your wheel (the gizmo in Godot) to the position the wheel "
+"will take when bottoming out, then use the rest length to move the wheel "
+"down to the position it should be in when the car is in rest."
+msgstr ""
+
+#: doc/classes/VehicleWheel3D.xml:79
+msgid ""
+"This value affects the roll of your vehicle. If set to 1.0 for all wheels, "
+"your vehicle will be prone to rolling over, while a value of 0.0 will resist "
+"body roll."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:4
+msgid "Control for playing video streams."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:7
+msgid ""
+"Control node for playing video streams using [VideoStream] resources.\n"
+"Supported video formats are [url=https://www.webmproject.org/]WebM[/url] "
+"([VideoStreamWebm]), [url=https://www.theora.org/]Ogg Theora[/url] "
+"([VideoStreamTheora]), and any format exposed via a GDNative plugin using "
+"[VideoStreamGDNative]."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:17
+msgid ""
+"Returns the video stream's name, or [code]\"<No Stream>\"[/code] if no video "
+"stream is assigned."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:24
+msgid "Returns the current frame as a [Texture2D]."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:31
+msgid ""
+"Returns [code]true[/code] if the video is playing.\n"
+"[b]Note:[/b] The video is still considered playing if paused during playback."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:39
+msgid ""
+"Starts the video playback from the beginning. If the video is paused, this "
+"will not unpause the video."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:46
+msgid ""
+"Stops the video playback and sets the stream position to 0.\n"
+"[b]Note:[/b] Although the stream position will be set to 0, the first frame "
+"of the video stream won't become the current frame."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:53
+msgid "The embedded audio track to play."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:56
+msgid "If [code]true[/code], playback starts when the scene loads."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:59
+msgid "Amount of time in milliseconds to store in buffer while playing."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:62
+msgid "Audio bus to use for sound playback."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:65
+msgid ""
+"If [code]true[/code], the video scales to the control size. Otherwise, the "
+"control minimum size will be automatically adjusted to match the video "
+"stream's dimensions."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:68
+msgid "If [code]true[/code], the video is paused."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:71
+msgid "The assigned video stream. See description for supported formats."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:74
+msgid "The current position of the stream, in seconds."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:77
+msgid "Audio volume as a linear value."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:80
+msgid "Audio volume in dB."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:86
+msgid "Emitted when playback is finished."
+msgstr ""
+
+#: doc/classes/VideoStream.xml:4
+msgid "Base resource for video streams."
+msgstr ""
+
+#: doc/classes/VideoStream.xml:7
+msgid ""
+"Base resource type for all video streams. Classes that derive from "
+"[VideoStream] can all be used as resource types to play back videos in "
+"[VideoPlayer]."
+msgstr ""
+
+#: modules/gdnative/doc_classes/VideoStreamGDNative.xml:4
+msgid "[VideoStream] resource for for video formats implemented via GDNative."
+msgstr ""
+
+#: modules/gdnative/doc_classes/VideoStreamGDNative.xml:7
+msgid ""
+"[VideoStream] resource for for video formats implemented via GDNative.\n"
+"It can be used via [url=https://github.com/KidRigger/godot-"
+"videodecoder]godot-videodecoder[/url] which uses the [url=https://ffmpeg."
+"org]FFmpeg[/url] library."
+msgstr ""
+
+#: modules/gdnative/doc_classes/VideoStreamGDNative.xml:17
+msgid "Returns the video file handled by this [VideoStreamGDNative]."
+msgstr ""
+
+#: modules/gdnative/doc_classes/VideoStreamGDNative.xml:26
+msgid ""
+"Sets the video file that this [VideoStreamGDNative] resource handles. The "
+"supported extensions depend on the GDNative plugins used to expose video "
+"formats."
+msgstr ""
+
+#: modules/theora/doc_classes/VideoStreamTheora.xml:4
+msgid "[VideoStream] resource for Ogg Theora videos."
+msgstr ""
+
+#: modules/theora/doc_classes/VideoStreamTheora.xml:7
+msgid ""
+"[VideoStream] resource handling the [url=https://www.theora.org/]Ogg Theora[/"
+"url] video format with [code].ogv[/code] extension."
+msgstr ""
+
+#: modules/theora/doc_classes/VideoStreamTheora.xml:16
+msgid "Returns the Ogg Theora video file handled by this [VideoStreamTheora]."
+msgstr ""
+
+#: modules/theora/doc_classes/VideoStreamTheora.xml:25
+msgid ""
+"Sets the Ogg Theora video file that this [VideoStreamTheora] resource "
+"handles. The [code]file[/code] name should have the [code].o[/code] "
+"extension."
+msgstr ""
+
+#: modules/webm/doc_classes/VideoStreamWebm.xml:4
+msgid "[VideoStream] resource for WebM videos."
+msgstr ""
+
+#: modules/webm/doc_classes/VideoStreamWebm.xml:7
+msgid ""
+"[VideoStream] resource handling the [url=https://www.webmproject.org/]WebM[/"
+"url] video format with [code].webm[/code] extension."
+msgstr ""
+
+#: modules/webm/doc_classes/VideoStreamWebm.xml:16
+msgid "Returns the WebM video file handled by this [VideoStreamWebm]."
+msgstr ""
+
+#: modules/webm/doc_classes/VideoStreamWebm.xml:25
+msgid ""
+"Sets the WebM video file that this [VideoStreamWebm] resource handles. The "
+"[code]file[/code] name should have the [code].webm[/code] extension."
+msgstr ""
+
+#: doc/classes/Viewport.xml:4
+msgid "Creates a sub-view into the screen."
+msgstr ""
+
+#: doc/classes/Viewport.xml:7
+msgid ""
+"A Viewport creates a different view into the screen, or a sub-view inside "
+"another viewport. Children 2D Nodes will display on it, and children "
+"Camera3D 3D nodes will render on it too.\n"
+"Optionally, a viewport can have its own 2D or 3D world, so they don't share "
+"what they draw with other viewports.\n"
+"If a viewport is a child of a [SubViewportContainer], it will automatically "
+"take up its size, otherwise it must be set manually.\n"
+"Viewports can also choose to be audio listeners, so they generate positional "
+"audio depending on a 2D or 3D camera child of it.\n"
+"Also, viewports can be assigned to different screens in case the devices "
+"have multiple screens.\n"
+"Finally, viewports can also behave as render targets, in which case they "
+"will not be visible unless the associated texture is used to draw."
+msgstr ""
+
+#: doc/classes/Viewport.xml:16
+msgid "https://docs.godotengine.org/en/latest/tutorials/viewports/index.html"
+msgstr ""
+
+#: doc/classes/Viewport.xml:23
+msgid "Returns the 2D world of the viewport."
+msgstr ""
+
+#: doc/classes/Viewport.xml:30
+msgid ""
+"Returns the 3D world of the viewport, or if none the world of the parent "
+"viewport."
+msgstr ""
+
+#: doc/classes/Viewport.xml:37
+msgid "Returns the active 3D camera."
+msgstr ""
+
+#: doc/classes/Viewport.xml:44
+msgid "Returns the total transform of the viewport."
+msgstr ""
+
+#: doc/classes/Viewport.xml:51
+msgid "Returns the mouse position relative to the viewport."
+msgstr ""
+
+#: doc/classes/Viewport.xml:60
+msgid "Returns information about the viewport from the rendering pipeline."
+msgstr ""
+
+#: doc/classes/Viewport.xml:69
+msgid "Returns the [enum ShadowAtlasQuadrantSubdiv] of the specified quadrant."
+msgstr ""
+
+#: doc/classes/Viewport.xml:76
+msgid ""
+"Returns the viewport's texture.\n"
+"[b]Note:[/b] Due to the way OpenGL works, the resulting [ViewportTexture] is "
+"flipped vertically. You can use [method Image.flip_y] on the result of "
+"[method Texture2D.get_data] to flip it back, for example:\n"
+"[codeblock]\n"
+"var img = get_viewport().get_texture().get_data()\n"
+"img.flip_y()\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Viewport.xml:88
+msgid "Returns the viewport's RID from the [RenderingServer]."
+msgstr ""
+
+#: doc/classes/Viewport.xml:95
+msgid "Returns the visible rectangle in global screen coordinates."
+msgstr ""
+
+#: doc/classes/Viewport.xml:102
+msgid ""
+"Returns the drag data from the GUI, that was previously returned by [method "
+"Control.get_drag_data]."
+msgstr ""
+
+#: doc/classes/Viewport.xml:109
+msgid ""
+"Returns [code]true[/code] if the viewport is currently performing a drag "
+"operation."
+msgstr ""
+
+#: doc/classes/Viewport.xml:146
+msgid "Stops the input from propagating further down the [SceneTree]."
+msgstr ""
+
+#: doc/classes/Viewport.xml:157
+msgid ""
+"Sets the number of subdivisions to use in the specified quadrant. A higher "
+"number of subdivisions allows you to have more shadows in the scene at once, "
+"but reduces the quality of the shadows. A good practice is to have quadrants "
+"with a varying number of subdivisions and to have as few subdivisions as "
+"possible."
+msgstr ""
+
+#: doc/classes/Viewport.xml:174
+msgid "Forces update of the 2D and 3D worlds."
+msgstr ""
+
+#: doc/classes/Viewport.xml:183
+msgid "Warps the mouse to a position relative to the viewport."
+msgstr ""
+
+#: doc/classes/Viewport.xml:189
+msgid "If [code]true[/code], the viewport will process 2D audio streams."
+msgstr ""
+
+#: doc/classes/Viewport.xml:192
+msgid "If [code]true[/code], the viewport will process 3D audio streams."
+msgstr ""
+
+#: doc/classes/Viewport.xml:195
+msgid ""
+"Sets the default filter mode used by [CanvasItem]s in this Viewport. See "
+"[enum DefaultCanvasItemTextureFilter] for options."
+msgstr ""
+
+#: doc/classes/Viewport.xml:198
+msgid ""
+"Sets the default repeat mode used by [CanvasItem]s in this Viewport. See "
+"[enum DefaultCanvasItemTextureRepeat] for options."
+msgstr ""
+
+#: doc/classes/Viewport.xml:201
+msgid ""
+"The canvas transform of the viewport, useful for changing the on-screen "
+"positions of all child [CanvasItem]s. This is relative to the global canvas "
+"transform of the viewport."
+msgstr ""
+
+#: doc/classes/Viewport.xml:204
+msgid "The overlay mode for test rendered geometry in debug purposes."
+msgstr ""
+
+#: doc/classes/Viewport.xml:207
+msgid ""
+"The global canvas transform of the viewport. The canvas transform is "
+"relative to this."
+msgstr ""
+
+#: doc/classes/Viewport.xml:210
+msgid "If [code]true[/code], the viewport will not receive input event."
+msgstr ""
+
+#: doc/classes/Viewport.xml:215
+msgid ""
+"If [code]true[/code], the GUI controls on the viewport will lay pixel "
+"perfectly."
+msgstr ""
+
+#: doc/classes/Viewport.xml:220
+msgid ""
+"The multisample anti-aliasing mode. A higher number results in smoother "
+"edges at the cost of significantly worse performance. A value of 4 is best "
+"unless targeting very high-end systems."
+msgstr ""
+
+#: doc/classes/Viewport.xml:223
+msgid ""
+"If [code]true[/code], the viewport will use the [World3D] defined in [member "
+"world_3d]."
+msgstr ""
+
+#: doc/classes/Viewport.xml:226
+msgid ""
+"If [code]true[/code], the objects rendered by viewport become subjects of "
+"mouse picking process."
+msgstr ""
+
+#: doc/classes/Viewport.xml:229
+msgid ""
+"Sets the screen-space antialiasing method used. Screen-space antialiasing "
+"works by selectively blurring edges in a post-process shader. It differs "
+"from MSAA which takes multiple coverage samples while rendering objects. "
+"Screen-space AA methods are typically faster than MSAA and will smooth out "
+"specular aliasing, but tend to make scenes appear blurry."
+msgstr ""
+
+#: doc/classes/Viewport.xml:232
+msgid "The subdivision amount of the first quadrant on the shadow atlas."
+msgstr ""
+
+#: doc/classes/Viewport.xml:235
+msgid "The subdivision amount of the second quadrant on the shadow atlas."
+msgstr ""
+
+#: doc/classes/Viewport.xml:238
+msgid "The subdivision amount of the third quadrant on the shadow atlas."
+msgstr ""
+
+#: doc/classes/Viewport.xml:241
+msgid "The subdivision amount of the fourth quadrant on the shadow atlas."
+msgstr ""
+
+#: doc/classes/Viewport.xml:244
+msgid ""
+"The shadow atlas' resolution (used for omni and spot lights). The value will "
+"be rounded up to the nearest power of 2.\n"
+"[b]Note:[/b] If this is set to 0, shadows won't be visible. Since user-"
+"created viewports default to a value of 0, this value must be set above 0 "
+"manually."
+msgstr ""
+
+#: doc/classes/Viewport.xml:248
+msgid ""
+"If [code]true[/code], the viewport should render its background as "
+"transparent."
+msgstr ""
+
+#: doc/classes/Viewport.xml:251
+msgid "The custom [World2D] which can be used as 2D environment source."
+msgstr ""
+
+#: doc/classes/Viewport.xml:254
+msgid "The custom [World3D] which can be used as 3D environment source."
+msgstr ""
+
+#: doc/classes/Viewport.xml:262
+msgid "Emitted when a Control node grabs keyboard focus."
+msgstr ""
+
+#: doc/classes/Viewport.xml:267
+msgid ""
+"Emitted when the size of the viewport is changed, whether by resizing of "
+"window, or some other means."
+msgstr ""
+
+#: doc/classes/Viewport.xml:273
+msgid "This quadrant will not be used."
+msgstr ""
+
+#: doc/classes/Viewport.xml:276
+msgid "This quadrant will only be used by one shadow map."
+msgstr ""
+
+#: doc/classes/Viewport.xml:279
+msgid "This quadrant will be split in 4 and used by up to 4 shadow maps."
+msgstr ""
+
+#: doc/classes/Viewport.xml:282
+msgid "This quadrant will be split 16 ways and used by up to 16 shadow maps."
+msgstr ""
+
+#: doc/classes/Viewport.xml:285
+msgid "This quadrant will be split 64 ways and used by up to 64 shadow maps."
+msgstr ""
+
+#: doc/classes/Viewport.xml:288
+msgid ""
+"This quadrant will be split 256 ways and used by up to 256 shadow maps. "
+"Unless the [member shadow_atlas_size] is very high, the shadows in this "
+"quadrant will be very low resolution."
+msgstr ""
+
+#: doc/classes/Viewport.xml:291
+msgid ""
+"This quadrant will be split 1024 ways and used by up to 1024 shadow maps. "
+"Unless the [member shadow_atlas_size] is very high, the shadows in this "
+"quadrant will be very low resolution."
+msgstr ""
+
+#: doc/classes/Viewport.xml:294
+msgid "Represents the size of the [enum ShadowAtlasQuadrantSubdiv] enum."
+msgstr ""
+
+#: doc/classes/Viewport.xml:297
+msgid ""
+"Multisample antialiasing mode disabled. This is the default value, and also "
+"the fastest setting."
+msgstr ""
+
+#: doc/classes/Viewport.xml:300
+msgid "Use 2x Multisample Antialiasing."
+msgstr ""
+
+#: doc/classes/Viewport.xml:303
+msgid "Use 4x Multisample Antialiasing."
+msgstr ""
+
+#: doc/classes/Viewport.xml:306
+msgid ""
+"Use 8x Multisample Antialiasing. Likely unsupported on low-end and older "
+"hardware."
+msgstr ""
+
+#: doc/classes/Viewport.xml:309
+msgid ""
+"Use 16x Multisample Antialiasing. Likely unsupported on medium and low-end "
+"hardware."
+msgstr ""
+
+#: doc/classes/Viewport.xml:312
+msgid "Represents the size of the [enum MSAA] enum."
+msgstr ""
+
+#: doc/classes/Viewport.xml:315
+msgid "Do not perform any antialiasing in the full screen post-process."
+msgstr ""
+
+#: doc/classes/Viewport.xml:318
+msgid ""
+"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."
+msgstr ""
+
+#: doc/classes/Viewport.xml:321
+msgid "Represents the size of the [enum ScreenSpaceAA] enum."
+msgstr ""
+
+#: doc/classes/Viewport.xml:324
+msgid "Amount of objects in frame."
+msgstr ""
+
+#: doc/classes/Viewport.xml:327
+msgid "Amount of vertices in frame."
+msgstr ""
+
+#: doc/classes/Viewport.xml:330
+msgid "Amount of material changes in frame."
+msgstr ""
+
+#: doc/classes/Viewport.xml:333
+msgid "Amount of shader changes in frame."
+msgstr ""
+
+#: doc/classes/Viewport.xml:336
+msgid "Amount of surface changes in frame."
+msgstr ""
+
+#: doc/classes/Viewport.xml:339
+msgid "Amount of draw calls in frame."
+msgstr ""
+
+#: doc/classes/Viewport.xml:342
+msgid "Represents the size of the [enum RenderInfo] enum."
+msgstr ""
+
+#: doc/classes/Viewport.xml:345
+msgid "Objects are displayed normally."
+msgstr ""
+
+#: doc/classes/Viewport.xml:356
+msgid "Objects are displayed in wireframe style."
+msgstr ""
+
+#: doc/classes/Viewport.xml:378
+msgid ""
+"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 [member Environment.ssao_enabled] set in "
+"your [WorldEnvironment]."
+msgstr ""
+
+#: doc/classes/Viewport.xml:381
+msgid ""
+"Colors each PSSM split for the [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, and yellow."
+msgstr ""
+
+#: doc/classes/Viewport.xml:384
+msgid ""
+"Draws the decal atlas used by [Decal]s and light projector textures in the "
+"upper left quadrant of the [Viewport]."
+msgstr ""
+
+#: doc/classes/Viewport.xml:405
+msgid "Max value for [enum DefaultCanvasItemTextureFilter] enum."
+msgstr ""
+
+#: doc/classes/Viewport.xml:417
+msgid "Max value for [enum DefaultCanvasItemTextureRepeat] enum."
+msgstr ""
+
+#: doc/classes/ViewportTexture.xml:4
+msgid "Texture which displays the content of a [Viewport]."
+msgstr ""
+
+#: doc/classes/ViewportTexture.xml:7
+msgid ""
+"Displays the content of a [Viewport] node as a dynamic [Texture2D]. This can "
+"be used to mix controls, 2D, and 3D elements in the same scene.\n"
+"To create a ViewportTexture in code, use the [method Viewport.get_texture] "
+"method on the target viewport."
+msgstr ""
+
+#: doc/classes/ViewportTexture.xml:17
+msgid ""
+"The path to the [Viewport] node to display. This is relative to the scene "
+"root, not to the node which uses the texture."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:4 doc/classes/VisibilityEnabler3D.xml:4
+msgid "Enables certain nodes only when approximately visible."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:7
+msgid ""
+"The VisibilityEnabler2D will disable [RigidBody2D], [AnimationPlayer], and "
+"other nodes when they are not visible. It will only affect nodes with the "
+"same root node as the VisibilityEnabler2D, and the root node itself.\n"
+"If you just want to receive notifications, use [VisibilityNotifier2D] "
+"instead.\n"
+"[b]Note:[/b] For performance reasons, VisibilityEnabler2D uses an "
+"approximate heuristic with precision determined by [member ProjectSettings."
+"world/2d/cell_size]. If you need precise visibility checking, use another "
+"method such as adding an [Area2D] node as a child of a [Camera2D] node.\n"
+"[b]Note:[/b] VisibilityEnabler2D will not affect nodes added after scene "
+"initialization."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:21
+#: doc/classes/VisibilityEnabler3D.xml:21
+msgid ""
+"Returns whether the enabler identified by given [enum Enabler] constant is "
+"active."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:32
+#: doc/classes/VisibilityEnabler3D.xml:32
+msgid ""
+"Sets active state of the enabler identified by given [enum Enabler] constant."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:38
+msgid "If [code]true[/code], [RigidBody2D] nodes will be paused."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:41
+msgid "If [code]true[/code], [AnimatedSprite2D] nodes will be paused."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:44
+#: doc/classes/VisibilityEnabler3D.xml:41
+msgid "If [code]true[/code], [AnimationPlayer] nodes will be paused."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:47
+msgid "If [code]true[/code], [GPUParticles2D] nodes will be paused."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:50
+msgid ""
+"If [code]true[/code], the parent's [method Node._physics_process] will be "
+"stopped."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:53
+msgid ""
+"If [code]true[/code], the parent's [method Node._process] will be stopped."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:58
+#: doc/classes/VisibilityEnabler3D.xml:46
+msgid "This enabler will pause [AnimationPlayer] nodes."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:61
+msgid "This enabler will freeze [RigidBody2D] nodes."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:64
+msgid "This enabler will stop [GPUParticles2D] nodes."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:67
+msgid "This enabler will stop the parent's _process function."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:70
+msgid "This enabler will stop the parent's _physics_process function."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:73
+msgid "This enabler will stop [AnimatedSprite2D] nodes animations."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:76
+#: doc/classes/VisibilityEnabler3D.xml:52
+msgid "Represents the size of the [enum Enabler] enum."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler3D.xml:7
+msgid ""
+"The VisibilityEnabler3D will disable [RigidBody3D] and [AnimationPlayer] "
+"nodes when they are not visible. It will only affect other nodes within the "
+"same scene as the VisibilityEnabler3D itself.\n"
+"If you just want to receive notifications, use [VisibilityNotifier3D] "
+"instead.\n"
+"[b]Note:[/b] VisibilityEnabler3D uses an approximate heuristic for "
+"performance reasons. It doesn't take walls and other occlusion into account. "
+"The heuristic is an implementation detail and may change in future versions. "
+"If you need precise visibility checking, use another method such as adding "
+"an [Area3D] node as a child of a [Camera3D] node and/or [method Vector3."
+"dot].\n"
+"[b]Note:[/b] VisibilityEnabler3D will not affect nodes added after scene "
+"initialization."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler3D.xml:38
+msgid "If [code]true[/code], [RigidBody3D] nodes will be paused."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler3D.xml:49
+msgid "This enabler will freeze [RigidBody3D] nodes."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier2D.xml:4
+#: doc/classes/VisibilityNotifier3D.xml:4
+msgid "Detects approximately when the node is visible on screen."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier2D.xml:7
+msgid ""
+"The VisibilityNotifier2D detects when it is visible on the screen. It also "
+"notifies when its bounding rectangle enters or exits the screen or a "
+"viewport.\n"
+"If you want nodes to be disabled automatically when they exit the screen, "
+"use [VisibilityEnabler2D] instead.\n"
+"[b]Note:[/b] For performance reasons, VisibilityNotifier2D uses an "
+"approximate heuristic with precision determined by [member ProjectSettings."
+"world/2d/cell_size]. If you need precise visibility checking, use another "
+"method such as adding an [Area2D] node as a child of a [Camera2D] node."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier2D.xml:18
+msgid ""
+"If [code]true[/code], the bounding rectangle is on the screen.\n"
+"[b]Note:[/b] It takes one frame for the node's visibility to be assessed "
+"once added to the scene tree, so this method will return [code]false[/code] "
+"right after it is instantiated, even if it will be on screen in the draw "
+"pass."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier2D.xml:25
+msgid "The VisibilityNotifier2D's bounding rectangle."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier2D.xml:31
+msgid "Emitted when the VisibilityNotifier2D enters the screen."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier2D.xml:36
+msgid "Emitted when the VisibilityNotifier2D exits the screen."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier2D.xml:43
+msgid "Emitted when the VisibilityNotifier2D enters a [Viewport]'s view."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier2D.xml:50
+msgid "Emitted when the VisibilityNotifier2D exits a [Viewport]'s view."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier3D.xml:7
+msgid ""
+"The VisibilityNotifier3D detects when it is visible on the screen. It also "
+"notifies when its bounding rectangle enters or exits the screen or a "
+"[Camera3D]'s view.\n"
+"If you want nodes to be disabled automatically when they exit the screen, "
+"use [VisibilityEnabler3D] instead.\n"
+"[b]Note:[/b] VisibilityNotifier3D uses an approximate heuristic for "
+"performance reasons. It doesn't take walls and other occlusion into account. "
+"The heuristic is an implementation detail and may change in future versions. "
+"If you need precise visibility checking, use another method such as adding "
+"an [Area3D] node as a child of a [Camera3D] node and/or [method Vector3.dot]."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier3D.xml:18
+msgid ""
+"If [code]true[/code], the bounding box is on the screen.\n"
+"[b]Note:[/b] It takes one frame for the node's visibility to be assessed "
+"once added to the scene tree, so this method will return [code]false[/code] "
+"right after it is instantiated, even if it will be on screen in the draw "
+"pass."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier3D.xml:25
+msgid "The VisibilityNotifier3D's bounding box."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier3D.xml:33
+msgid "Emitted when the VisibilityNotifier3D enters a [Camera3D]'s view."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier3D.xml:40
+msgid "Emitted when the VisibilityNotifier3D exits a [Camera3D]'s view."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier3D.xml:45
+msgid "Emitted when the VisibilityNotifier3D enters the screen."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier3D.xml:50
+msgid "Emitted when the VisibilityNotifier3D exits the screen."
+msgstr ""
+
+#: doc/classes/VisualInstance3D.xml:4
+msgid "Parent of all visual 3D nodes."
+msgstr ""
+
+#: doc/classes/VisualInstance3D.xml:7
+msgid ""
+"The [VisualInstance3D] is used to connect a resource to a visual "
+"representation. All visual 3D nodes inherit from the [VisualInstance3D]. In "
+"general, you should not access the [VisualInstance3D] properties directly as "
+"they are accessed and managed by the nodes that inherit from "
+"[VisualInstance3D]. [VisualInstance3D] is the node representation of the "
+"[RenderingServer] instance."
+msgstr ""
+
+#: doc/classes/VisualInstance3D.xml:16
+msgid ""
+"Returns the [AABB] (also known as the bounding box) for this "
+"[VisualInstance3D]."
+msgstr ""
+
+#: doc/classes/VisualInstance3D.xml:23
+msgid ""
+"Returns the RID of the resource associated with this [VisualInstance3D]. For "
+"example, if the Node is a [MeshInstance3D], this will return the RID of the "
+"associated [Mesh]."
+msgstr ""
+
+#: doc/classes/VisualInstance3D.xml:30
+msgid ""
+"Returns the RID of this instance. This RID is the same as the RID returned "
+"by [method RenderingServer.instance_create]. This RID is needed if you want "
+"to call [RenderingServer] functions directly on this [VisualInstance3D]."
+msgstr ""
+
+#: doc/classes/VisualInstance3D.xml:39
+msgid ""
+"Returns [code]true[/code] when the specified layer is enabled in [member "
+"layers] and [code]false[/code] otherwise."
+msgstr ""
+
+#: doc/classes/VisualInstance3D.xml:46
+msgid ""
+"Returns the transformed [AABB] (also known as the bounding box) for this "
+"[VisualInstance3D].\n"
+"Transformed in this case means the [AABB] plus the position, rotation, and "
+"scale of the [Node3D]'s [Transform]."
+msgstr ""
+
+#: doc/classes/VisualInstance3D.xml:56
+msgid ""
+"Sets the resource that is instantiated by this [VisualInstance3D], which "
+"changes how the engine handles the [VisualInstance3D] under the hood. "
+"Equivalent to [method RenderingServer.instance_set_base]."
+msgstr ""
+
+#: doc/classes/VisualInstance3D.xml:67
+msgid "Enables a particular layer in [member layers]."
+msgstr ""
+
+#: doc/classes/VisualInstance3D.xml:73
+msgid ""
+"The render layer(s) this [VisualInstance3D] is drawn on.\n"
+"This object will only be visible for [Camera3D]s whose cull mask includes "
+"the render object this [VisualInstance3D] is set to."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:4
+msgid "A script implemented in the Visual Script programming environment."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:7
+msgid ""
+"A script implemented in the Visual Script programming environment. The "
+"script extends the functionality of all objects that instance it.\n"
+"[method Object.set_script] extends an existing object, if that object's "
+"class matches one of the script's base classes.\n"
+"You are most likely to use this class via the Visual Script editor or when "
+"writing plugins for it."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:12
+msgid ""
+"https://docs.godotengine.org/en/latest/getting_started/scripting/"
+"visual_script/index.html"
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:21
+msgid "Add a custom signal with the specified name to the VisualScript."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:30
+msgid "Add a function with the specified name to the VisualScript."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:45
+msgid "Add a node to a function of the VisualScript."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:58
+msgid ""
+"Add a variable to the VisualScript, optionally giving it a default value or "
+"marking it as exported."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:73
+msgid ""
+"Add an argument to a custom signal added with [method add_custom_signal]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:82
+msgid "Get the count of a custom signal's arguments."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:93
+msgid "Get the name of a custom signal's argument."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:104
+msgid "Get the type of a custom signal's argument."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:115
+msgid "Remove a specific custom signal's argument."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:128
+msgid "Rename a custom signal's argument."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:141
+msgid "Change the type of a custom signal's argument."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:154
+msgid "Swap two of the arguments of a custom signal."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:171
+msgid ""
+"Connect two data ports. The value of [code]from_node[/code]'s "
+"[code]from_port[/code] would be fed into [code]to_node[/code]'s "
+"[code]to_port[/code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:188
+msgid ""
+"Disconnect two data ports previously connected with [method data_connect]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:197
+msgid "Returns the id of a function's entry point node."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:206
+msgid "Returns the position of the center of the screen for a given function."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:217
+msgid "Returns a node given its id and its function."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:228
+msgid "Returns a node's position in pixels."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:237
+msgid "Returns the default (initial) value of a variable."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:246
+msgid "Returns whether a variable is exported."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:255
+msgid ""
+"Returns the information for a given variable as a dictionary. The "
+"information includes its name, type, hint and usage."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:264
+msgid "Returns whether a signal exists with the specified name."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:281
+msgid "Returns whether the specified data ports are connected."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:290
+msgid "Returns whether a function exists with the specified name."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:301
+msgid "Returns whether a node exists with the given id."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:316
+msgid "Returns whether the specified sequence ports are connected."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:325
+msgid "Returns whether a variable exists with the specified name."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:334
+msgid "Remove a custom signal with the given name."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:343
+msgid "Remove a specific function and its nodes from the script."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:354
+msgid "Remove a specific node."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:363
+msgid "Remove a variable with the given name."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:374
+msgid "Change the name of a custom signal."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:385
+msgid "Change the name of a function."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:396
+msgid "Change the name of a variable."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:411
+msgid ""
+"Connect two sequence ports. The execution will flow from of [code]from_node[/"
+"code]'s [code]from_output[/code] into [code]to_node[/code].\n"
+"Unlike [method data_connect], there isn't a [code]to_port[/code], since the "
+"target node can have only one sequence port."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:427
+msgid ""
+"Disconnect two sequence ports previously connected with [method "
+"sequence_connect]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:438
+msgid "Position the center of the screen for a function."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:447
+msgid "Set the base type of the script."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:460
+msgid "Position a node on the screen."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:471
+msgid "Change the default (initial) value of a variable."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:482
+msgid "Change whether a variable is exported."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:493
+msgid ""
+"Set a variable's info, using the same format as [method get_variable_info]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:504
+msgid "Emitted when the ports of a node are changed."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBasicTypeConstant.xml:4
+msgid "A Visual Script node representing a constant from the base types."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBasicTypeConstant.xml:7
+msgid ""
+"A Visual Script node representing a constant from base types, such as "
+"[constant Vector3.AXIS_X]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBasicTypeConstant.xml:15
+msgid "The type to get the constant from."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBasicTypeConstant.xml:18
+msgid "The name of the constant to return."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:4
+msgid "A Visual Script node used to call built-in functions."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:7
+msgid ""
+"A built-in function used inside a [VisualScript]. It is usually a math "
+"function or an utility function.\n"
+"See also [@GDScript], for the same functions in the GDScript language."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:16
+msgid "The function to be executed."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:21
+msgid "Return the sine of the input."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:24
+msgid "Return the cosine of the input."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:27
+msgid "Return the tangent of the input."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:30
+msgid "Return the hyperbolic sine of the input."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:33
+msgid "Return the hyperbolic cosine of the input."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:36
+msgid "Return the hyperbolic tangent of the input."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:39
+msgid "Return the arc sine of the input."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:42
+msgid "Return the arc cosine of the input."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:45
+msgid "Return the arc tangent of the input."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:48
+msgid ""
+"Return the arc tangent of the input, using the signs of both parameters to "
+"determine the exact angle."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:51
+msgid "Return the square root of the input."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:54
+msgid ""
+"Return the remainder of one input divided by the other, using floating-point "
+"numbers."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:57
+msgid ""
+"Return the positive remainder of one input divided by the other, using "
+"floating-point numbers."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:60
+msgid "Return the input rounded down."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:63
+msgid "Return the input rounded up."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:66
+msgid "Return the input rounded to the nearest integer."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:69
+msgid "Return the absolute value of the input."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:72
+msgid ""
+"Return the sign of the input, turning it into 1, -1, or 0. Useful to "
+"determine if the input is positive or negative."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:75
+msgid "Return the input raised to a given power."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:78
+msgid ""
+"Return the natural logarithm of the input. Note that this is not the typical "
+"base-10 logarithm function calculators use."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:81
+msgid ""
+"Return the mathematical constant [b]e[/b] raised to the specified power of "
+"the input. [b]e[/b] has an approximate value of 2.71828."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:84
+msgid ""
+"Return whether the input is NaN (Not a Number) or not. NaN is usually "
+"produced by dividing 0 by 0, though other ways exist."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:87
+msgid ""
+"Return whether the input is an infinite floating-point number or not. "
+"Infinity is usually produced by dividing a number by 0, though other ways "
+"exist."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:90
+msgid ""
+"Easing function, based on exponent. 0 is constant, 1 is linear, 0 to 1 is "
+"ease-in, 1+ is ease out. Negative values are in-out/out in."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:93
+msgid ""
+"Return the number of digit places after the decimal that the first non-zero "
+"digit occurs."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:96
+msgid "Return the input snapped to a given step."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:99
+msgid ""
+"Return a number linearly interpolated between the first two inputs, based on "
+"the third input. Uses the formula [code]a + (a - b) * t[/code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:106
+msgid "Moves the number toward a value, based on the third input."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:109
+msgid ""
+"Return the result of [code]value[/code] decreased by [code]step[/code] * "
+"[code]amount[/code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:112
+msgid ""
+"Randomize the seed (or the internal state) of the random number generator. "
+"Current implementation reseeds using a number based on time."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:115
+msgid ""
+"Return a random 32 bits integer value. To obtain a random value between 0 to "
+"N (where N is smaller than 2^32 - 1), you can use it with the remainder "
+"function."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:118
+msgid ""
+"Return a random floating-point value between 0 and 1. To obtain a random "
+"value between 0 to N, you can use it with multiplication."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:121
+msgid "Return a random floating-point value between the two inputs."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:124
+msgid "Set the seed for the random number generator."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:127
+msgid "Return a random value from the given seed, along with the new seed."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:130
+msgid "Convert the input from degrees to radians."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:133
+msgid "Convert the input from radians to degrees."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:136
+msgid "Convert the input from linear volume to decibel volume."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:139
+msgid "Convert the input from decibel volume to linear volume."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:152
+msgid "Return the greater of the two numbers, also known as their maximum."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:155
+msgid "Return the lesser of the two numbers, also known as their minimum."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:158
+msgid ""
+"Return the input clamped inside the given range, ensuring the result is "
+"never outside it. Equivalent to [code]min(max(input, range_low), range_high)"
+"[/code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:161
+msgid "Return the nearest power of 2 to the input."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:164
+msgid "Create a [WeakRef] from the input."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:167
+msgid "Create a [FuncRef] from the input."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:170
+msgid "Convert between types."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:173
+msgid ""
+"Return the type of the input as an integer. Check [enum Variant.Type] for "
+"the integers that might be returned."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:176
+msgid "Checks if a type is registered in the [ClassDB]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:179
+msgid "Return a character with the given ascii value."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:182
+msgid "Convert the input to a string."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:185
+msgid "Print the given string to the output window."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:188
+msgid "Print the given string to the standard error output."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:191
+msgid ""
+"Print the given string to the standard output, without adding a newline."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:194
+msgid "Serialize a [Variant] to a string."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:197
+msgid ""
+"Deserialize a [Variant] from a string serialized using [constant VAR_TO_STR]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:200
+msgid "Serialize a [Variant] to a [PackedByteArray]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:203
+msgid ""
+"Deserialize a [Variant] from a [PackedByteArray] serialized using [constant "
+"VAR_TO_BYTES]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:206
+msgid ""
+"Return the [Color] with the given name and alpha ranging from 0 to 1.\n"
+"[b]Note:[/b] Names are defined in [code]color_names.inc[/code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:210
+msgid ""
+"Return a number smoothly interpolated between the first two inputs, based on "
+"the third input. Similar to [constant MATH_LERP], but interpolates faster at "
+"the beginning and slower at the end. Using Hermite interpolation formula:\n"
+"[codeblock]\n"
+"var t = clamp((weight - from) / (to - from), 0.0, 1.0)\n"
+"return t * t * (3.0 - 2.0 * t)\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:223
+msgid "Represents the size of the [enum BuiltinFunc] enum."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptClassConstant.xml:4
+msgid "Gets a constant from a given class."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptClassConstant.xml:7
+msgid ""
+"This node returns a constant from a given class, such as [constant "
+"TYPE_INT]. See the given class' documentation for available constants.\n"
+"[b]Input Ports:[/b]\n"
+"none\n"
+"[b]Output Ports:[/b]\n"
+"- Data (variant): [code]value[/code]"
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptClassConstant.xml:19
+msgid "The constant's parent class."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptClassConstant.xml:22
+msgid ""
+"The constant to return. See the given class for its available constants."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptComment.xml:4
+msgid "A Visual Script node used to annotate the script."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptComment.xml:7
+msgid ""
+"A Visual Script node used to display annotations in the script, so that code "
+"may be documented.\n"
+"Comment nodes can be resized so they encompass a group of nodes."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptComment.xml:16
+msgid "The text inside the comment node."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptComment.xml:19
+msgid "The comment node's size (in pixels)."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptComment.xml:22
+msgid "The comment node's title."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptComposeArray.xml:4
+msgid "A Visual Script Node used to create array from a list of items."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptComposeArray.xml:7
+msgid ""
+"A Visual Script Node used to compose array from the list of elements "
+"provided with custom in-graph UI hard coded in the VisualScript Editor."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCondition.xml:4
+msgid "A Visual Script node which branches the flow."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCondition.xml:7
+msgid ""
+"A Visual Script node that checks a [bool] input port. If [code]true[/code], "
+"it will exit via the \"true\" sequence port. If [code]false[/code], it will "
+"exit via the \"false\" sequence port. After exiting either, it exits via the "
+"\"done\" port. Sequence ports may be left disconnected.\n"
+"[b]Input Ports:[/b]\n"
+"- Sequence: [code]if (cond) is[/code]\n"
+"- Data (boolean): [code]cond[/code]\n"
+"[b]Output Ports:[/b]\n"
+"- Sequence: [code]true[/code]\n"
+"- Sequence: [code]false[/code]\n"
+"- Sequence: [code]done[/code]"
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptConstant.xml:4
+msgid "Gets a contant's value."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptConstant.xml:7
+msgid ""
+"This node returns a constant's value.\n"
+"[b]Input Ports:[/b]\n"
+"none\n"
+"[b]Output Ports:[/b]\n"
+"- Data (variant): [code]get[/code]"
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptConstant.xml:19
+msgid "The constant's type."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptConstant.xml:22
+msgid "The constant's value."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptConstructor.xml:4
+msgid "A Visual Script node which calls a base type constructor."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptConstructor.xml:7
+msgid ""
+"A Visual Script node which calls a base type constructor. It can be used for "
+"type conversion as well."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:4
+msgid "A scripted Visual Script node."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:7
+msgid "A custom Visual Script node which can be scripted in powerful ways."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:16
+msgid "Return the node's title."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:23
+msgid "Return the node's category."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:30
+msgid "Return the count of input value ports."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:39
+msgid "Return the specified input port's name."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:48
+msgid ""
+"Return the specified input port's type. See the [enum Variant.Type] values."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:55
+msgid "Return the amount of output [b]sequence[/b] ports."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:64
+msgid "Return the specified [b]sequence[/b] output's name."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:71
+msgid "Return the amount of output value ports."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:80
+msgid "Return the specified output's name."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:89
+msgid "Return the specified output's type. See the [enum Variant.Type] values."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:96
+msgid ""
+"Return the custom node's text, which is shown right next to the input "
+"[b]sequence[/b] port (if there is none, on the place that is usually taken "
+"by it)."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:103
+msgid ""
+"Return the size of the custom node's working memory. See [method _step] for "
+"more details."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:110
+msgid "Return whether the custom node has an input [b]sequence[/b] port."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:125
+msgid ""
+"Execute the custom node's logic, returning the index of the output sequence "
+"port to use or a [String] when there is an error.\n"
+"The [code]inputs[/code] array contains the values of the input ports.\n"
+"[code]outputs[/code] is an array whose indices should be set to the "
+"respective outputs.\n"
+"The [code]start_mode[/code] is usually [constant START_MODE_BEGIN_SEQUENCE], "
+"unless you have used the [code]STEP_*[/code] constants.\n"
+"[code]working_mem[/code] is an array which can be used to persist "
+"information between runs of the custom node.\n"
+"When returning, you can mask the returned value with one of the "
+"[code]STEP_*[/code] constants."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:136
+msgid "The start mode used the first time when [method _step] is called."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:139
+msgid ""
+"The start mode used when [method _step] is called after coming back from a "
+"[constant STEP_PUSH_STACK_BIT]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:142
+msgid ""
+"The start mode used when [method _step] is called after resuming from "
+"[constant STEP_YIELD_BIT]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:145
+msgid ""
+"Hint used by [method _step] to tell that control should return to it when "
+"there is no other node left to execute.\n"
+"This is used by [VisualScriptCondition] to redirect the sequence to the "
+"\"Done\" port after the [code]true[/code]/[code]false[/code] branch has "
+"finished execution."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:149
+msgid ""
+"Hint used by [method _step] to tell that control should return back, either "
+"hitting a previous [constant STEP_PUSH_STACK_BIT] or exiting the function."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:154
+msgid ""
+"Hint used by [method _step] to tell that control should stop and exit the "
+"function."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:157
+msgid ""
+"Hint used by [method _step] to tell that the function should be yielded.\n"
+"Using this requires you to have at least one working memory slot, which is "
+"used for the [VisualScriptFunctionState]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptDeconstruct.xml:4
+#: modules/visual_script/doc_classes/VisualScriptDeconstruct.xml:7
+msgid ""
+"A Visual Script node which deconstructs a base type instance into its parts."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptDeconstruct.xml:15
+msgid "The type to deconstruct."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptEditor.xml:20
+msgid ""
+"Add a custom Visual Script node to the editor. It'll be placed under "
+"\"Custom Nodes\" with the [code]category[/code] as the parameter."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptEditor.xml:31
+msgid ""
+"Remove a custom Visual Script node from the editor. Custom nodes already "
+"placed on scripts won't be removed."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptEditor.xml:38
+msgid "Emitted when a custom Visual Script node is added or removed."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptEmitSignal.xml:4
+msgid "Emits a specified signal."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptEmitSignal.xml:7
+msgid ""
+"Emits a specified signal when it is executed.\n"
+"[b]Input Ports:[/b]\n"
+"- Sequence: [code]emit[/code]\n"
+"[b]Output Ports:[/b]\n"
+"- Sequence"
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptEmitSignal.xml:19
+msgid "The signal to emit."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptEngineSingleton.xml:4
+#: modules/visual_script/doc_classes/VisualScriptEngineSingleton.xml:7
+msgid "A Visual Script node returning a singleton from [@GlobalScope]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptEngineSingleton.xml:15
+msgid "The singleton's name."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptIterator.xml:4
+msgid "Steps through items in a given input."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptIterator.xml:7
+msgid ""
+"This node steps through each item in a given input. Input can be any "
+"sequence data type, such as an [Array] or [String]. When each item has been "
+"processed, execution passed out the [code]exit[/code] Sequence port.\n"
+"[b]Input Ports:[/b]\n"
+"- Sequence: [code]for (elem) in (input)[/code]\n"
+"- Data (variant): [code]input[/code]\n"
+"[b]Output Ports:[/b]\n"
+"- Sequence: [code]each[/code]\n"
+"- Sequence: [code]exit[/code]\n"
+"- Data (variant): [code]elem[/code]"
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptLists.xml:4
+msgid "A Visual Script virtual class for in-graph editable nodes."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptLists.xml:7
+msgid ""
+"A Visual Script virtual class that defines the shape and the default "
+"behaviour of the nodes that have to be in-graph editable nodes."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptLocalVar.xml:4
+msgid "Gets a local variable's value."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptLocalVar.xml:7
+msgid ""
+"Returns a local variable's value. \"Var Name\" must be supplied, with an "
+"optional type.\n"
+"[b]Input Ports:[/b]\n"
+"none\n"
+"[b]Output Ports:[/b]\n"
+"- Data (variant): [code]get[/code]"
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptLocalVar.xml:19
+#: modules/visual_script/doc_classes/VisualScriptLocalVarSet.xml:21
+msgid "The local variable's type."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptLocalVar.xml:22
+#: modules/visual_script/doc_classes/VisualScriptLocalVarSet.xml:24
+msgid "The local variable's name."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptLocalVarSet.xml:4
+msgid "Changes a local variable's value."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptLocalVarSet.xml:7
+msgid ""
+"Changes a local variable's value to the given input. The new value is also "
+"provided on an output Data port.\n"
+"[b]Input Ports:[/b]\n"
+"- Sequence\n"
+"- Data (variant): [code]set[/code]\n"
+"[b]Output Ports:[/b]\n"
+"- Sequence\n"
+"- Data (variant): [code]get[/code]"
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptMathConstant.xml:4
+msgid "Commonly used mathematical constants."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptMathConstant.xml:7
+msgid ""
+"Provides common math constants, such as Pi, on an output Data port.\n"
+"[b]Input Ports:[/b]\n"
+"none\n"
+"[b]Output Ports:[/b]\n"
+"- Data (variant): [code]get[/code]"
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptMathConstant.xml:19
+msgid "The math constant."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptMathConstant.xml:24
+msgid "Unity: [code]1[/code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptMathConstant.xml:27
+msgid "Pi: [code]3.141593[/code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptMathConstant.xml:30
+msgid "Pi divided by two: [code]1.570796[/code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptMathConstant.xml:33
+msgid "Tau: [code]6.283185[/code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptMathConstant.xml:36
+msgid ""
+"Mathematical constant [code]e[/code], the natural log base: [code]2.718282[/"
+"code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptMathConstant.xml:39
+msgid "Square root of two: [code]1.414214[/code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptMathConstant.xml:42
+msgid "Infinity: [code]inf[/code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptMathConstant.xml:45
+msgid "Not a number: [code]nan[/code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptMathConstant.xml:48
+msgid "Represents the size of the [enum MathConstant] enum."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptNode.xml:4
+msgid "A node which is part of a [VisualScript]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptNode.xml:7
+msgid ""
+"A node which is part of a [VisualScript]. Not to be confused with [Node], "
+"which is a part of a [SceneTree]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptNode.xml:18
+msgid ""
+"Returns the default value of a given port. The default value is used when "
+"nothing is connected to the port."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptNode.xml:25
+msgid "Returns the [VisualScript] instance the node is bound to."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptNode.xml:32
+msgid ""
+"Notify that the node's ports have changed. Usually used in conjunction with "
+"[VisualScriptCustomNode] ."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptNode.xml:43
+msgid "Change the default value of a given port."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptNode.xml:50
+msgid "Emitted when the available input/output ports are changed."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptOperator.xml:6
+msgid ""
+"[b]Input Ports:[/b]\n"
+"- Data (variant): [code]A[/code]\n"
+"- Data (variant): [code]B[/code]\n"
+"[b]Output Ports:[/b]\n"
+"- Data (variant): [code]result[/code]"
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPreload.xml:4
+msgid "Creates a new [Resource] or loads one from the filesystem."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPreload.xml:7
+msgid ""
+"Creates a new [Resource] or loads one from the filesystem.\n"
+"[b]Input Ports:[/b]\n"
+"none\n"
+"[b]Output Ports:[/b]\n"
+"- Data (object): [code]res[/code]"
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPreload.xml:19
+msgid "The [Resource] to load."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptReturn.xml:4
+msgid "Exits a function and returns an optional value."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptReturn.xml:7
+msgid ""
+"Ends the execution of a function and returns control to the calling "
+"function. Optionally, it can return a [Variant] value.\n"
+"[b]Input Ports:[/b]\n"
+"- Sequence\n"
+"- Data (variant): [code]result[/code] (optional)\n"
+"[b]Output Ports:[/b]\n"
+"none"
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptReturn.xml:20
+msgid "If [code]true[/code], the [code]return[/code] input port is available."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptReturn.xml:23
+msgid "The return value's data type."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptSceneNode.xml:4
+msgid "Node reference."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptSceneNode.xml:7
+msgid ""
+"A direct reference to a node.\n"
+"[b]Input Ports:[/b]\n"
+"none\n"
+"[b]Output Ports:[/b]\n"
+"- Data: [code]node[/code] (obj)"
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptSceneNode.xml:19
+msgid "The node's path in the scene tree."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptSelect.xml:4
+msgid "Chooses between two input values."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptSelect.xml:7
+msgid ""
+"Chooses between two input values based on a Boolean condition.\n"
+"[b]Input Ports:[/b]\n"
+"- Data (boolean): [code]cond[/code]\n"
+"- Data (variant): [code]a[/code]\n"
+"- Data (variant): [code]b[/code]\n"
+"[b]Output Ports:[/b]\n"
+"- Data (variant): [code]out[/code]"
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptSelect.xml:21
+msgid "The input variables' type."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptSelf.xml:4
+msgid "Outputs a reference to the current instance."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptSelf.xml:7
+msgid ""
+"Provides a reference to the node running the visual script.\n"
+"[b]Input Ports:[/b]\n"
+"none\n"
+"[b]Output Ports:[/b]\n"
+"- Data (object): [code]instance[/code]"
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptSequence.xml:4
+msgid "Executes a series of Sequence ports."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptSequence.xml:7
+msgid ""
+"Steps through a series of one or more output Sequence ports. The "
+"[code]current[/code] data port outputs the currently executing item.\n"
+"[b]Input Ports:[/b]\n"
+"- Sequence: [code]in order[/code]\n"
+"[b]Output Ports:[/b]\n"
+"- Sequence: [code]1[/code]\n"
+"- Sequence: [code]2 - n[/code] (optional)\n"
+"- Data (int): [code]current[/code]"
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptSequence.xml:21
+msgid "The number of steps in the sequence."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptSwitch.xml:4
+msgid "Branches program flow based on a given input's value."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptSwitch.xml:7
+msgid ""
+"Branches the flow based on an input's value. Use [b]Case Count[/b] in the "
+"Inspector to set the number of branches and each comparison's optional "
+"type.\n"
+"[b]Input Ports:[/b]\n"
+"- Sequence: [code]'input' is[/code]\n"
+"- Data (variant): [code]=[/code]\n"
+"- Data (variant): [code]=[/code] (optional)\n"
+"- Data (variant): [code]input[/code]\n"
+"[b]Output Ports:[/b]\n"
+"- Sequence\n"
+"- Sequence (optional)\n"
+"- Sequence: [code]done[/code]"
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptVariableGet.xml:4
+msgid "Gets a variable's value."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptVariableGet.xml:7
+msgid ""
+"Returns a variable's value. \"Var Name\" must be supplied, with an optional "
+"type.\n"
+"[b]Input Ports:[/b]\n"
+"none\n"
+"[b]Output Ports:[/b]\n"
+"- Data (variant): [code]value[/code]"
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptVariableGet.xml:19
+#: modules/visual_script/doc_classes/VisualScriptVariableSet.xml:20
+msgid "The variable's name."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptVariableSet.xml:4
+msgid "Changes a variable's value."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptVariableSet.xml:7
+msgid ""
+"Changes a variable's value to the given input.\n"
+"[b]Input Ports:[/b]\n"
+"- Sequence\n"
+"- Data (variant): [code]set[/code]\n"
+"[b]Output Ports:[/b]\n"
+"- Sequence"
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptWhile.xml:4
+msgid "Conditional loop."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptWhile.xml:7
+msgid ""
+"Loops while a condition is [code]true[/code]. Execution continues out the "
+"[code]exit[/code] Sequence port when the loop terminates.\n"
+"[b]Input Ports:[/b]\n"
+"- Sequence: [code]while(cond)[/code]\n"
+"- Data (bool): [code]cond[/code]\n"
+"[b]Output Ports:[/b]\n"
+"- Sequence: [code]repeat[/code]\n"
+"- Sequence: [code]exit[/code]"
+msgstr ""
+
+#: doc/classes/VisualShader.xml:4
+msgid "A custom shader program with a visual editor."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:7
+msgid ""
+"This class allows you to define a custom shader program that can be used for "
+"various materials to render objects.\n"
+"The visual shader editor creates the shader."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:25
+msgid "Adds the specified node to the shader."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:42
+msgid ""
+"Returns [code]true[/code] if the specified nodes and ports can be connected "
+"together."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:59 doc/classes/VisualShader.xml:93
+msgid "Connects the specified nodes and ports."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:76
+msgid ""
+"Connects the specified nodes and ports, even if they can't be connected. "
+"Such connection is invalid and will not function properly."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:104
+msgid ""
+"Returns the shader node instance with specified [code]type[/code] and "
+"[code]id[/code]."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:113
+msgid "Returns the list of connected nodes with the specified type."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:122
+msgid "Returns the list of all nodes in the shader with the specified type."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:133
+msgid "Returns the position of the specified node within the shader graph."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:158
+msgid ""
+"Returns [code]true[/code] if the specified node and port connection exist."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:169
+msgid "Removes the specified node from the shader."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:178
+msgid "Sets the mode of this shader."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:191
+msgid "Sets the position of the specified node."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:198
+msgid "The offset vector of the whole graph."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:205
+msgid "A vertex shader, operating on vertices."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:208
+msgid "A fragment shader, operating on fragments (pixels)."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:211
+msgid "A shader for light calculations."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:214
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:26
+msgid "Represents the size of the [enum Type] enum."
+msgstr ""
+
+#: doc/classes/VisualShaderNode.xml:4
+msgid "Base class for nodes in a visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNode.xml:9
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/shading/visual_shaders.html"
+msgstr ""
+
+#: doc/classes/VisualShaderNode.xml:16
+msgid ""
+"Returns an [Array] containing default values for all of the input ports of "
+"the node in the form [code][index0, value0, index1, value1, ...][/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNode.xml:25
+msgid "Returns the default value of the input [code]port[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNode.xml:34
+msgid ""
+"Sets the default input ports values using an [Array] of the form [code]"
+"[index0, value0, index1, value1, ...][/code]. For example: [code][0, "
+"Vector3(0, 0, 0), 1, Vector3(0, 0, 0)][/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNode.xml:45
+msgid "Sets the default value for the selected input [code]port[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNode.xml:51
+msgid ""
+"Sets the output port index which will be showed for preview. If set to "
+"[code]-1[/code] no port will be open for preview."
+msgstr ""
+
+#: doc/classes/VisualShaderNode.xml:57
+msgid ""
+"Emitted when the node requests an editor refresh. Currently called only in "
+"setter of [member VisualShaderNodeTexture.source], "
+"[VisualShaderNodeTexture], and [VisualShaderNodeCubemap] (and their "
+"derivatives)."
+msgstr ""
+
+#: doc/classes/VisualShaderNode.xml:63
+msgid ""
+"Floating-point scalar. Translated to [code]float[/code] type in shader code."
+msgstr ""
+
+#: doc/classes/VisualShaderNode.xml:66
+msgid "Integer scalar. Translated to [code]int[/code] type in shader code."
+msgstr ""
+
+#: doc/classes/VisualShaderNode.xml:69
+msgid ""
+"3D vector of floating-point values. Translated to [code]vec3[/code] type in "
+"shader code."
+msgstr ""
+
+#: doc/classes/VisualShaderNode.xml:72
+msgid "Boolean type. Translated to [code]bool[/code] type in shader code."
+msgstr ""
+
+#: doc/classes/VisualShaderNode.xml:75
+msgid "Transform type. Translated to [code]mat4[/code] type in shader code."
+msgstr ""
+
+#: doc/classes/VisualShaderNode.xml:78
+msgid ""
+"Sampler type. Translated to reference of sampler uniform in shader code. Can "
+"only be used for input ports in non-uniform nodes."
+msgstr ""
+
+#: doc/classes/VisualShaderNode.xml:81
+msgid "Represents the size of the [enum PortType] enum."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeBooleanConstant.xml:4
+msgid "A boolean constant to be used within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeBooleanConstant.xml:7
+msgid ""
+"Has only one output port and no inputs.\n"
+"Translated to [code]bool[/code] in the shader language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeBooleanConstant.xml:16
+msgid "A boolean constant which represents a state of this node."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeBooleanUniform.xml:4
+msgid "A boolean uniform to be used within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeBooleanUniform.xml:7
+msgid "Translated to [code]uniform bool[/code] in the shader language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeBooleanUniform.xml:15
+#: doc/classes/VisualShaderNodeColorUniform.xml:15
+#: doc/classes/VisualShaderNodeFloatUniform.xml:15
+#: doc/classes/VisualShaderNodeIntUniform.xml:15
+#: doc/classes/VisualShaderNodeTransformUniform.xml:15
+#: doc/classes/VisualShaderNodeVec3Uniform.xml:15
+msgid "A default value to be assigned within the shader."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeBooleanUniform.xml:18
+#: doc/classes/VisualShaderNodeColorUniform.xml:18
+#: doc/classes/VisualShaderNodeFloatUniform.xml:18
+#: doc/classes/VisualShaderNodeIntUniform.xml:18
+#: doc/classes/VisualShaderNodeTransformUniform.xml:18
+#: doc/classes/VisualShaderNodeVec3Uniform.xml:18
+msgid "Enables usage of the [member default_value]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeColorConstant.xml:4
+msgid "A [Color] constant to be used within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeColorConstant.xml:7
+msgid ""
+"Has two output ports representing RGB and alpha channels of [Color].\n"
+"Translated to [code]vec3 rgb[/code] and [code]float alpha[/code] in the "
+"shader language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeColorConstant.xml:16
+msgid "A [Color] constant which represents a state of this node."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeColorFunc.xml:4
+msgid "A [Color] function to be used within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeColorFunc.xml:7
+msgid ""
+"Accept a [Color] to the input port and transform it according to [member "
+"function]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeColorFunc.xml:15
+msgid ""
+"A function to be applied to the input color. See [enum Function] for options."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeColorFunc.xml:20
+msgid ""
+"Converts the color to grayscale using the following formula:\n"
+"[codeblock]\n"
+"vec3 c = input;\n"
+"float max1 = max(c.r, c.g);\n"
+"float max2 = max(max1, c.b);\n"
+"float max3 = max(max1, max2);\n"
+"return vec3(max3, max3, max3);\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/VisualShaderNodeColorFunc.xml:30
+msgid ""
+"Applies sepia tone effect using the following formula:\n"
+"[codeblock]\n"
+"vec3 c = input;\n"
+"float r = (c.r * 0.393) + (c.g * 0.769) + (c.b * 0.189);\n"
+"float g = (c.r * 0.349) + (c.g * 0.686) + (c.b * 0.168);\n"
+"float b = (c.r * 0.272) + (c.g * 0.534) + (c.b * 0.131);\n"
+"return vec3(r, g, b);\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/VisualShaderNodeColorOp.xml:4
+msgid "A [Color] operator to be used within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeColorOp.xml:7
+msgid "Applies [member operator] to two color inputs."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeColorOp.xml:15
+#: doc/classes/VisualShaderNodeFloatOp.xml:15
+#: doc/classes/VisualShaderNodeIntOp.xml:15
+msgid ""
+"An operator to be applied to the inputs. See [enum Operator] for options."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeColorOp.xml:20
+msgid ""
+"Produce a screen effect with the following formula:\n"
+"[codeblock]\n"
+"result = vec3(1.0) - (vec3(1.0) - a) * (vec3(1.0) - b);\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/VisualShaderNodeColorOp.xml:26
+msgid ""
+"Produce a difference effect with the following formula:\n"
+"[codeblock]\n"
+"result = abs(a - b);\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/VisualShaderNodeColorOp.xml:32
+msgid ""
+"Produce a darken effect with the following formula:\n"
+"[codeblock]\n"
+"result = min(a, b);\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/VisualShaderNodeColorOp.xml:38
+msgid ""
+"Produce a lighten effect with the following formula:\n"
+"[codeblock]\n"
+"result = max(a, b);\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/VisualShaderNodeColorOp.xml:44
+msgid ""
+"Produce an overlay effect with the following formula:\n"
+"[codeblock]\n"
+"for (int i = 0; i < 3; i++) {\n"
+" float base = a[i];\n"
+" float blend = b[i];\n"
+" if (base < 0.5) {\n"
+" result[i] = 2.0 * base * blend;\n"
+" } else {\n"
+" result[i] = 1.0 - 2.0 * (1.0 - blend) * (1.0 - base);\n"
+" }\n"
+"}\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/VisualShaderNodeColorOp.xml:58
+msgid ""
+"Produce a dodge effect with the following formula:\n"
+"[codeblock]\n"
+"result = a / (vec3(1.0) - b);\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/VisualShaderNodeColorOp.xml:64
+msgid ""
+"Produce a burn effect with the following formula:\n"
+"[codeblock]\n"
+"result = vec3(1.0) - (vec3(1.0) - a) / b;\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/VisualShaderNodeColorOp.xml:70
+msgid ""
+"Produce a soft light effect with the following formula:\n"
+"[codeblock]\n"
+"for (int i = 0; i < 3; i++) {\n"
+" float base = a[i];\n"
+" float blend = b[i];\n"
+" if (base < 0.5) {\n"
+" result[i] = base * (blend + 0.5);\n"
+" } else {\n"
+" result[i] = 1.0 - (1.0 - base) * (1.0 - (blend - 0.5));\n"
+" }\n"
+"}\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/VisualShaderNodeColorOp.xml:84
+msgid ""
+"Produce a hard light effect with the following formula:\n"
+"[codeblock]\n"
+"for (int i = 0; i < 3; i++) {\n"
+" float base = a[i];\n"
+" float blend = b[i];\n"
+" if (base < 0.5) {\n"
+" result[i] = base * (2.0 * blend);\n"
+" } else {\n"
+" result[i] = 1.0 - (1.0 - base) * (1.0 - 2.0 * (blend - 0.5));\n"
+" }\n"
+"}\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/VisualShaderNodeColorUniform.xml:4
+msgid "A [Color] uniform to be used within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeColorUniform.xml:7
+msgid "Translated to [code]uniform vec4[/code] in the shader language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:4
+msgid "A comparison function for common types within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:7
+msgid ""
+"Compares [code]a[/code] and [code]b[/code] of [member type] by [member "
+"function]. Returns a boolean scalar. Translates to [code]if[/code] "
+"instruction in shader code."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:15
+msgid ""
+"Extra condition which is applied if [member type] is set to [constant "
+"CTYPE_VECTOR]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:18
+msgid "A comparison function. See [enum Function] for options."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:21
+msgid ""
+"The type to be used in the comparison. See [enum ComparisonType] for options."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:26
+msgid "A floating-point scalar."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:29
+msgid "An integer scalar."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:32
+msgid "A 3D vector type."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:35
+msgid "A boolean type."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:38
+msgid "A transform ([code]mat4[/code]) type."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:41
+msgid "Comparison for equality ([code]a == b[/code])."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:44
+msgid "Comparison for inequality ([code]a != b[/code])."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:47
+msgid ""
+"Comparison for greater than ([code]a > b[/code]). Cannot be used if [member "
+"type] set to [constant CTYPE_BOOLEAN] or [constant CTYPE_TRANSFORM]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:50
+msgid ""
+"Comparison for greater than or equal ([code]a >= b[/code]). Cannot be used "
+"if [member type] set to [constant CTYPE_BOOLEAN] or [constant "
+"CTYPE_TRANSFORM]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:53
+msgid ""
+"Comparison for less than ([code]a < b[/code]). Cannot be used if [member "
+"type] set to [constant CTYPE_BOOLEAN] or [constant CTYPE_TRANSFORM]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:56
+msgid ""
+"Comparison for less than or equal ([code]a <= b[/code]). Cannot be used if "
+"[member type] set to [constant CTYPE_BOOLEAN] or [constant CTYPE_TRANSFORM]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:59
+msgid ""
+"The result will be true if all of component in vector satisfy the comparison "
+"condition."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:62
+msgid ""
+"The result will be true if any of component in vector satisfy the comparison "
+"condition."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCubemap.xml:4
+msgid "A [Cubemap] sampling node to be used within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCubemap.xml:7
+msgid ""
+"Translated to [code]texture(cubemap, vec3)[/code] in the shader language. "
+"Returns a color vector and alpha channel as scalar."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCubemap.xml:15
+msgid ""
+"The [Cubemap] texture to sample when using [constant SOURCE_TEXTURE] as "
+"[member source]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCubemap.xml:18
+msgid ""
+"Defines which source should be used for the sampling. See [enum Source] for "
+"options."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCubemap.xml:21
+#: doc/classes/VisualShaderNodeTextureUniform.xml:18
+msgid ""
+"Defines the type of data provided by the source texture. See [enum "
+"TextureType] for options."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCubemap.xml:26
+msgid ""
+"Use the [Cubemap] set via [member cube_map]. If this is set to [member "
+"source], the [code]samplerCube[/code] port is ignored."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCubemap.xml:29
+msgid ""
+"Use the [Cubemap] sampler reference passed via the [code]samplerCube[/code] "
+"port. If this is set to [member source], the [member cube_map] texture is "
+"ignored."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCubemap.xml:32
+#: doc/classes/VisualShaderNodeTexture.xml:44
+#: doc/classes/VisualShaderNodeTextureUniform.xml:23
+msgid "No hints are added to the uniform declaration."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCubemap.xml:35
+#: doc/classes/VisualShaderNodeTexture.xml:47
+#: doc/classes/VisualShaderNodeTextureUniform.xml:26
+msgid ""
+"Adds [code]hint_albedo[/code] as hint to the uniform declaration for proper "
+"sRGB to linear conversion."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCubemap.xml:38
+#: doc/classes/VisualShaderNodeTexture.xml:50
+#: doc/classes/VisualShaderNodeTextureUniform.xml:29
+msgid ""
+"Adds [code]hint_normal[/code] as hint to the uniform declaration, which "
+"internally converts the texture for proper usage as normal map."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCubemapUniform.xml:4
+msgid "A [Cubemap] uniform node to be used within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCubemapUniform.xml:7
+msgid ""
+"Translated to [code]uniform samplerCube[/code] in the shader language. The "
+"output value can be used as port for [VisualShaderNodeCubemap]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCustom.xml:4
+msgid ""
+"Virtual class to define custom [VisualShaderNode]s for use in the Visual "
+"Shader Editor."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCustom.xml:7
+msgid ""
+"By inheriting this class you can create a custom [VisualShader] script addon "
+"which will be automatically added to the Visual Shader Editor. The "
+"[VisualShaderNode]'s behavior is defined by overriding the provided virtual "
+"methods.\n"
+"In order for the node to be registered as an editor addon, you must use the "
+"[code]tool[/code] keyword and provide a [code]class_name[/code] for your "
+"custom script. For example:\n"
+"[codeblock]\n"
+"tool\n"
+"extends VisualShaderNodeCustom\n"
+"class_name VisualShaderNodeNoise\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCustom.xml:16
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/plugins/editor/"
+"visual_shader_plugins.html"
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCustom.xml:23
+msgid ""
+"Override this method to define the path to the associated custom node in the "
+"Visual Shader Editor's members dialog. The path may looks like "
+"[code]\"MyGame/MyFunctions/Noise\"[/code].\n"
+"Defining this method is [b]optional[/b]. If not overridden, the node will be "
+"filed under the \"Addons\" category."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCustom.xml:39
+msgid ""
+"Override this method to define the actual shader code of the associated "
+"custom node. The shader code should be returned as a string, which can have "
+"multiple lines (the [code]\"\"\"[/code] multiline string construct can be "
+"used for convenience).\n"
+"The [code]input_vars[/code] and [code]output_vars[/code] arrays contain the "
+"string names of the various input and output variables, as defined by "
+"[code]_get_input_*[/code] and [code]_get_output_*[/code] virtual methods in "
+"this class.\n"
+"The output ports can be assigned values in the shader code. For example, "
+"[code]return output_vars[0] + \" = \" + input_vars[0] + \";\"[/code].\n"
+"You can customize the generated code based on the shader [code]mode[/code] "
+"(see [enum Shader.Mode]) and/or [code]type[/code] (see [enum VisualShader."
+"Type]).\n"
+"Defining this method is [b]required[/b]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCustom.xml:50
+msgid ""
+"Override this method to define the description of the associated custom node "
+"in the Visual Shader Editor's members dialog.\n"
+"Defining this method is [b]optional[/b]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCustom.xml:60
+msgid ""
+"Override this method to add shader code on top of the global shader, to "
+"define your own standard library of reusable methods, varyings, constants, "
+"uniforms, etc. The shader code should be returned as a string, which can "
+"have multiple lines (the [code]\"\"\"[/code] multiline string construct can "
+"be used for convenience).\n"
+"Be careful with this functionality as it can cause name conflicts with other "
+"custom nodes, so be sure to give the defined entities unique names.\n"
+"You can customize the generated code based on the shader [code]mode[/code] "
+"(see [enum Shader.Mode]).\n"
+"Defining this method is [b]optional[/b]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCustom.xml:70
+msgid ""
+"Override this method to define the amount of input ports of the associated "
+"custom node.\n"
+"Defining this method is [b]required[/b]. If not overridden, the node has no "
+"input ports."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCustom.xml:80
+msgid ""
+"Override this method to define the names of input ports of the associated "
+"custom node. The names are used both for the input slots in the editor and "
+"as identifiers in the shader code, and are passed in the [code]input_vars[/"
+"code] array in [method _get_code].\n"
+"Defining this method is [b]optional[/b], but recommended. If not overridden, "
+"input ports are named as [code]\"in\" + str(port)[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCustom.xml:90
+msgid ""
+"Override this method to define the returned type of each input port of the "
+"associated custom node (see [enum VisualShaderNode.PortType] for possible "
+"types).\n"
+"Defining this method is [b]optional[/b], but recommended. If not overridden, "
+"input ports will return the [constant VisualShaderNode.PORT_TYPE_SCALAR] "
+"type."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCustom.xml:98
+msgid ""
+"Override this method to define the name of the associated custom node in the "
+"Visual Shader Editor's members dialog and graph.\n"
+"Defining this method is [b]optional[/b], but recommended. If not overridden, "
+"the node will be named as \"Unnamed\"."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCustom.xml:106
+msgid ""
+"Override this method to define the amount of output ports of the associated "
+"custom node.\n"
+"Defining this method is [b]required[/b]. If not overridden, the node has no "
+"output ports."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCustom.xml:116
+msgid ""
+"Override this method to define the names of output ports of the associated "
+"custom node. The names are used both for the output slots in the editor and "
+"as identifiers in the shader code, and are passed in the [code]output_vars[/"
+"code] array in [method _get_code].\n"
+"Defining this method is [b]optional[/b], but recommended. If not overridden, "
+"output ports are named as [code]\"out\" + str(port)[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCustom.xml:126
+msgid ""
+"Override this method to define the returned type of each output port of the "
+"associated custom node (see [enum VisualShaderNode.PortType] for possible "
+"types).\n"
+"Defining this method is [b]optional[/b], but recommended. If not overridden, "
+"output ports will return the [constant VisualShaderNode.PORT_TYPE_SCALAR] "
+"type."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCustom.xml:134
+msgid ""
+"Override this method to define the return icon of the associated custom node "
+"in the Visual Shader Editor's members dialog.\n"
+"Defining this method is [b]optional[/b]. If not overridden, no return icon "
+"is shown."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCustom.xml:142
+msgid ""
+"Override this method to enable high-end mark in the Visual Shader Editor's "
+"members dialog.\n"
+"Defining this method is [b]optional[/b]. If not overridden, it's false."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeDeterminant.xml:4
+msgid ""
+"Calculates the determinant of a [Transform] within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeDeterminant.xml:7
+msgid "Translates to [code]deteminant(x)[/code] in the shader language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeDotProduct.xml:4
+msgid "Calculates a dot product of two vectors within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeDotProduct.xml:7
+msgid "Translates to [code]dot(a, b)[/code] in the shader language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeExpression.xml:4
+msgid ""
+"A custom visual shader graph expression written in Godot Shading Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeExpression.xml:7
+msgid ""
+"Custom Godot Shading Language expression, with a custom amount of input and "
+"output ports.\n"
+"The provided code is directly injected into the graph's matching shader "
+"function ([code]vertex[/code], [code]fragment[/code], or [code]light[/"
+"code]), so it cannot be used to to declare functions, varyings, uniforms, or "
+"global constants. See [VisualShaderNodeGlobalExpression] for such global "
+"definitions."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeExpression.xml:16
+msgid ""
+"An expression in Godot Shading Language, which will be injected at the start "
+"of the graph's matching shader function ([code]vertex[/code], "
+"[code]fragment[/code], or [code]light[/code]), and thus cannot be used to "
+"declare functions, varyings, uniforms, or global constants."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFaceForward.xml:4
+msgid ""
+"Returns the vector that points in the same direction as a reference vector "
+"within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFaceForward.xml:7
+msgid ""
+"Translates to [code]faceforward(N, I, Nref)[/code] in the shader language. "
+"The function has three vector parameters: [code]N[/code], the vector to "
+"orient, [code]I[/code], the incident vector, and [code]Nref[/code], the "
+"reference vector. If the dot product of [code]I[/code] and [code]Nref[/code] "
+"is smaller than zero the return value is [code]N[/code]. Otherwise [code]-N[/"
+"code] is returned."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatConstant.xml:4
+msgid ""
+"A scalar floating-point constant to be used within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatConstant.xml:7
+msgid "Translated to [code]float[/code] in the shader language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatConstant.xml:15
+msgid "A floating-point constant which represents a state of this node."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:4
+msgid ""
+"A scalar floating-point function to be used within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:7
+msgid ""
+"Accept a floating-point scalar ([code]x[/code]) to the input port and "
+"transform it according to [member function]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:15
+#: doc/classes/VisualShaderNodeIntFunc.xml:15
+msgid ""
+"A function to be applied to the scalar. See [enum Function] for options."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:20
+msgid ""
+"Returns the sine of the parameter. Translates to [code]sin(x)[/code] in the "
+"Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:23
+msgid ""
+"Returns the cosine of the parameter. Translates to [code]cos(x)[/code] in "
+"the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:26
+msgid ""
+"Returns the tangent of the parameter. Translates to [code]tan(x)[/code] in "
+"the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:29
+msgid ""
+"Returns the arc-sine of the parameter. Translates to [code]asin(x)[/code] in "
+"the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:32
+msgid ""
+"Returns the arc-cosine of the parameter. Translates to [code]acos(x)[/code] "
+"in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:35
+msgid ""
+"Returns the arc-tangent of the parameter. Translates to [code]atan(x)[/code] "
+"in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:38
+msgid ""
+"Returns the hyperbolic sine of the parameter. Translates to [code]sinh(x)[/"
+"code] in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:41
+msgid ""
+"Returns the hyperbolic cosine of the parameter. Translates to [code]cosh(x)[/"
+"code] in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:44
+msgid ""
+"Returns the hyperbolic tangent of the parameter. Translates to [code]tanh(x)"
+"[/code] in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:47
+msgid ""
+"Returns the natural logarithm of the parameter. Translates to [code]log(x)[/"
+"code] in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:50
+msgid ""
+"Returns the natural exponentiation of the parameter. Translates to "
+"[code]exp(x)[/code] in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:53
+msgid ""
+"Returns the square root of the parameter. Translates to [code]sqrt(x)[/code] "
+"in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:56
+#: doc/classes/VisualShaderNodeIntFunc.xml:20
+msgid ""
+"Returns the absolute value of the parameter. Translates to [code]abs(x)[/"
+"code] in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:59
+#: doc/classes/VisualShaderNodeIntFunc.xml:29
+msgid ""
+"Extracts the sign of the parameter. Translates to [code]sign(x)[/code] in "
+"the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:62
+msgid ""
+"Finds the nearest integer less than or equal to the parameter. Translates to "
+"[code]floor(x)[/code] in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:65
+msgid ""
+"Finds the nearest integer to the parameter. Translates to [code]round(x)[/"
+"code] in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:68
+msgid ""
+"Finds the nearest integer that is greater than or equal to the parameter. "
+"Translates to [code]ceil(x)[/code] in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:71
+msgid ""
+"Computes the fractional part of the argument. Translates to [code]fract(x)[/"
+"code] in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:74
+msgid ""
+"Clamps the value between [code]0.0[/code] and [code]1.0[/code] using "
+"[code]min(max(x, 0.0), 1.0)[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:77
+#: doc/classes/VisualShaderNodeIntFunc.xml:26
+msgid "Negates the [code]x[/code] using [code]-(x)[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:80
+msgid ""
+"Returns the arc-hyperbolic-cosine of the parameter. Translates to "
+"[code]acosh(x)[/code] in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:83
+msgid ""
+"Returns the arc-hyperbolic-sine of the parameter. Translates to "
+"[code]asinh(x)[/code] in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:86
+msgid ""
+"Returns the arc-hyperbolic-tangent of the parameter. Translates to "
+"[code]atanh(x)[/code] in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:89
+msgid ""
+"Convert a quantity in radians to degrees. Translates to [code]degrees(x)[/"
+"code] in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:92
+msgid ""
+"Returns 2 raised by the power of the parameter. Translates to [code]exp2(x)[/"
+"code] in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:95
+msgid ""
+"Returns the inverse of the square root of the parameter. Translates to "
+"[code]inversesqrt(x)[/code] in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:98
+msgid ""
+"Returns the base 2 logarithm of the parameter. Translates to [code]log2(x)[/"
+"code] in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:101
+msgid ""
+"Convert a quantity in degrees to radians. Translates to [code]radians(x)[/"
+"code] in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:104
+msgid ""
+"Finds reciprocal value of dividing 1 by [code]x[/code] (i.e. [code]1 / x[/"
+"code])."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:107
+msgid ""
+"Finds the nearest even integer to the parameter. Translates to "
+"[code]roundEven(x)[/code] in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:110
+msgid ""
+"Returns a value equal to the nearest integer to [code]x[/code] whose "
+"absolute value is not larger than the absolute value of [code]x[/code]. "
+"Translates to [code]trunc(x)[/code] in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:113
+msgid "Subtracts scalar [code]x[/code] from 1 (i.e. [code]1 - x[/code])."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatOp.xml:4
+msgid ""
+"A floating-point scalar operator to be used within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatOp.xml:7
+msgid ""
+"Applies [member operator] to two floating-point inputs: [code]a[/code] and "
+"[code]b[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatOp.xml:20
+#: doc/classes/VisualShaderNodeIntOp.xml:20
+msgid "Sums two numbers using [code]a + b[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatOp.xml:23
+#: doc/classes/VisualShaderNodeIntOp.xml:23
+msgid "Subtracts two numbers using [code]a - b[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatOp.xml:26
+#: doc/classes/VisualShaderNodeIntOp.xml:26
+msgid "Multiplies two numbers using [code]a * b[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatOp.xml:29
+#: doc/classes/VisualShaderNodeIntOp.xml:29
+msgid "Divides two numbers using [code]a / b[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatOp.xml:32
+msgid ""
+"Calculates the remainder of two numbers. Translates to [code]mod(a, b)[/"
+"code] in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatOp.xml:35
+msgid ""
+"Raises the [code]a[/code] to the power of [code]b[/code]. Translates to "
+"[code]pow(a, b)[/code] in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatOp.xml:38
+#: doc/classes/VisualShaderNodeIntOp.xml:35
+msgid ""
+"Returns the greater of two numbers. Translates to [code]max(a, b)[/code] in "
+"the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatOp.xml:41
+msgid ""
+"Returns the lesser of two numbers. Translates to [code]min(a, b)[/code] in "
+"the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatOp.xml:44
+msgid ""
+"Returns the arc-tangent of the parameters. Translates to [code]atan(a, b)[/"
+"code] in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatOp.xml:47
+msgid ""
+"Generates a step function by comparing [code]b[/code](x) to [code]a[/code]"
+"(edge). Returns 0.0 if [code]x[/code] is smaller than [code]edge[/code] and "
+"otherwise 1.0. Translates to [code]step(a, b)[/code] in the Godot Shader "
+"Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatUniform.xml:4
+msgid "A scalar float uniform to be used within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatUniform.xml:7
+msgid "Translated to [code]uniform float[/code] in the shader language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatUniform.xml:21
+#: doc/classes/VisualShaderNodeIntUniform.xml:21
+msgid ""
+"A hint applied to the uniform, which controls the values it can take when "
+"set through the inspector."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatUniform.xml:24
+#: doc/classes/VisualShaderNodeIntUniform.xml:24
+msgid ""
+"Minimum value for range hints. Used if [member hint] is set to [constant "
+"HINT_RANGE] or [constant HINT_RANGE_STEP]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatUniform.xml:27
+#: doc/classes/VisualShaderNodeIntUniform.xml:27
+msgid ""
+"Maximum value for range hints. Used if [member hint] is set to [constant "
+"HINT_RANGE] or [constant HINT_RANGE_STEP]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatUniform.xml:30
+#: doc/classes/VisualShaderNodeIntUniform.xml:30
+msgid ""
+"Step (increment) value for the range hint with step. Used if [member hint] "
+"is set to [constant HINT_RANGE_STEP]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatUniform.xml:35
+#: doc/classes/VisualShaderNodeIntUniform.xml:35
+msgid "No hint used."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatUniform.xml:38
+#: doc/classes/VisualShaderNodeIntUniform.xml:38
+msgid ""
+"A range hint for scalar value, which limits possible input values between "
+"[member min] and [member max]. Translated to [code]hint_range(min, max)[/"
+"code] in shader code."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatUniform.xml:41
+#: doc/classes/VisualShaderNodeIntUniform.xml:41
+msgid ""
+"A range hint for scalar value with step, which limits possible input values "
+"between [member min] and [member max], with a step (increment) of [member "
+"step]). Translated to [code]hint_range(min, max, step)[/code] in shader code."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFresnel.xml:4
+msgid "A Fresnel effect to be used within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFresnel.xml:7
+msgid ""
+"Returns falloff based on the dot product of surface normal and view "
+"direction of camera (pass associated inputs to it)."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGlobalExpression.xml:4
+msgid ""
+"A custom global visual shader graph expression written in Godot Shading "
+"Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGlobalExpression.xml:7
+msgid ""
+"Custom Godot Shader Language expression, which is placed on top of the "
+"generated shader. You can place various function definitions inside to call "
+"later in [VisualShaderNodeExpression]s (which are injected in the main "
+"shader functions). You can also declare varyings, uniforms and global "
+"constants."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:4
+msgid ""
+"Base class for a family of nodes with variable amount of input and output "
+"ports within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:7
+msgid "Currently, has no direct usage, use the derived classes instead."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:22
+msgid ""
+"Adds an input port with the specified [code]type[/code] (see [enum "
+"VisualShaderNode.PortType]) and [code]name[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:35
+msgid ""
+"Adds an output port with the specified [code]type[/code] (see [enum "
+"VisualShaderNode.PortType]) and [code]name[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:42
+msgid "Removes all previously specified input ports."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:49
+msgid "Removes all previously specified output ports."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:56
+msgid ""
+"Returns a free input port ID which can be used in [method add_input_port]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:63
+msgid ""
+"Returns a free output port ID which can be used in [method add_output_port]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:70
+msgid ""
+"Returns the number of input ports in use. Alternative for [method "
+"get_free_input_port_id]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:77
+msgid ""
+"Returns a [String] description of the input ports as as colon-separated list "
+"using the format [code]id,type,name;[/code] (see [method add_input_port])."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:84
+msgid ""
+"Returns the number of output ports in use. Alternative for [method "
+"get_free_output_port_id]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:91
+msgid ""
+"Returns a [String] description of the output ports as as colon-separated "
+"list using the format [code]id,type,name;[/code] (see [method "
+"add_output_port])."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:100
+msgid "Returns [code]true[/code] if the specified input port exists."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:109
+msgid "Returns [code]true[/code] if the specified output port exists."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:118
+msgid ""
+"Returns [code]true[/code] if the specified port name does not override an "
+"existed port name and is valid within the shader."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:127
+msgid "Removes the specified input port."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:136
+msgid "Removes the specified output port."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:147
+msgid "Renames the specified input port."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:158
+msgid ""
+"Sets the specified input port's type (see [enum VisualShaderNode.PortType])."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:167
+msgid ""
+"Defines all input ports using a [String] formatted as a colon-separated "
+"list: [code]id,type,name;[/code] (see [method add_input_port])."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:178
+msgid "Renames the specified output port."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:189
+msgid ""
+"Sets the specified output port's type (see [enum VisualShaderNode.PortType])."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:198
+msgid ""
+"Defines all output ports using a [String] formatted as a colon-separated "
+"list: [code]id,type,name;[/code] (see [method add_output_port])."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:204
+msgid "The size of the node in the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeIf.xml:4
+msgid ""
+"Compares two floating-point numbers in order to return a required vector "
+"within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeIf.xml:7
+msgid ""
+"First two ports are scalar floatin-point numbers to compare, third is "
+"tolerance comparison amount and last three ports represents a vectors "
+"returned if [code]a == b[/code], [code]a > b[/code] and [code]a < b[/code] "
+"respectively."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeInput.xml:4
+msgid "Represents the input shader parameter within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeInput.xml:7
+msgid ""
+"Gives access to input variables (built-ins) available for the shader. See "
+"the shading reference for the list of available built-ins for each shader "
+"type (check [code]Tutorials[/code] section for link)."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeInput.xml:10
+msgid ""
+"https://docs.godotengine.org/en/stable/tutorials/shading/shading_reference/"
+"index.html"
+msgstr ""
+
+#: doc/classes/VisualShaderNodeInput.xml:17
+msgid ""
+"Returns a translated name of the current constant in the Godot Shader "
+"Language. eg. [code]\"ALBEDO\"[/code] if the [member input_name] equal to "
+"[code]\"albedo\"[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeInput.xml:23
+msgid ""
+"One of the several input constants in lower-case style like: \"vertex"
+"\"([code]VERTEX[/code]) or \"point_size\"([code]POINT_SIZE[/code])."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeInput.xml:29
+msgid "Emitted when input is changed via [member input_name]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeIntConstant.xml:4
+msgid "A scalar integer constant to be used within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeIntConstant.xml:7
+msgid "Translated to [code]int[/code] in the shader language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeIntConstant.xml:15
+msgid "An integer constant which represents a state of this node."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeIntFunc.xml:4
+msgid "A scalar integer function to be used within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeIntFunc.xml:7
+msgid ""
+"Accept an integer scalar ([code]x[/code]) to the input port and transform it "
+"according to [member function]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeIntFunc.xml:23
+msgid ""
+"Constrains a parameter between [code]min[/code] and [code]max[/code]. "
+"Translates to [code]clamp(x, min, max)[/code] in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeIntOp.xml:4
+msgid "An integer scalar operator to be used within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeIntOp.xml:7
+msgid ""
+"Applies [member operator] to two integer inputs: [code]a[/code] and [code]b[/"
+"code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeIntOp.xml:32
+msgid "Calculates the remainder of two numbers using [code]a % b[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeIntOp.xml:38
+msgid ""
+"Returns the lesser of two numbers. Translates to [code]max(a, b)[/code] in "
+"the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeIntUniform.xml:4
+msgid "A scalar integer uniform to be used within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeIntUniform.xml:7
+msgid "Translated to [code]uniform int[/code] in the shader language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeIs.xml:4
+msgid ""
+"A boolean comparison operator to be used within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeIs.xml:7
+msgid ""
+"Returns the boolean result of the comparison between [code]INF[/code] or "
+"[code]NaN[/code] and a scalar parameter."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeIs.xml:15
+msgid "The comparison function. See [enum Function] for options."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeIs.xml:20
+msgid "Comparison with [code]INF[/code] (Infinity)."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeIs.xml:23
+msgid ""
+"Comparison with [code]NaN[/code] (Not a Number; denotes invalid numeric "
+"results, e.g. division by zero)."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:4
+msgid "Performs a fused multiply-add operation within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:7
+msgid "Uses three operands to compute [code](a * b + c)[/code] expression."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:15
+msgid "A type of operands and returned value."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:20
+msgid "A scalar type."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:23
+msgid "A vector type."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeOuterProduct.xml:4
+msgid ""
+"Calculates an outer product of two vectors within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeOuterProduct.xml:7
+msgid ""
+"[code]OuterProduct[/code] treats the first parameter [code]c[/code] as a "
+"column vector (matrix with one column) and the second parameter [code]r[/"
+"code] as a row vector (matrix with one row) and does a linear algebraic "
+"matrix multiply [code]c * r[/code], yielding a matrix whose number of rows "
+"is the number of components in [code]c[/code] and whose number of columns is "
+"the number of components in [code]r[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeOutput.xml:4
+msgid "Represents the output shader parameters within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeOutput.xml:7
+msgid ""
+"This visual shader node is present in all shader graphs in form of \"Output"
+"\" block with multiple output value ports."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeSample3D.xml:4
+msgid ""
+"A base node for nodes which samples 3D textures in the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeSample3D.xml:7
+msgid "A virtual class, use the descendants instead."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeSample3D.xml:15
+msgid "An input source type."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeSample3D.xml:20
+msgid "Creates internal uniform and provides a way to assign it within node."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeSample3D.xml:23
+msgid "Use the uniform texture from sampler port."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeScalarClamp.xml:4
+msgid "Clamps a scalar value within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeScalarClamp.xml:7
+msgid ""
+"Constrains a value to lie between [code]min[/code] and [code]max[/code] "
+"values."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeScalarDerivativeFunc.xml:4
+msgid "Calculates a scalar derivative within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeScalarDerivativeFunc.xml:7
+#: doc/classes/VisualShaderNodeVectorDerivativeFunc.xml:7
+msgid ""
+"This node is only available in [code]Fragment[/code] and [code]Light[/code] "
+"visual shaders."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeScalarDerivativeFunc.xml:15
+msgid "The derivative type. See [enum Function] for options."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeScalarDerivativeFunc.xml:20
+#: doc/classes/VisualShaderNodeVectorDerivativeFunc.xml:20
+msgid "Sum of absolute derivative in [code]x[/code] and [code]y[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeScalarDerivativeFunc.xml:23
+#: doc/classes/VisualShaderNodeVectorDerivativeFunc.xml:23
+msgid "Derivative in [code]x[/code] using local differencing."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeScalarDerivativeFunc.xml:26
+#: doc/classes/VisualShaderNodeVectorDerivativeFunc.xml:26
+msgid "Derivative in [code]y[/code] using local differencing."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeScalarInterp.xml:4
+msgid ""
+"Linearly interpolates between two scalars within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeScalarInterp.xml:7
+msgid "Translates to [code]mix(a, b, weight)[/code] in the shader language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeScalarSmoothStep.xml:4
+msgid "Calculates a scalar SmoothStep function within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeScalarSmoothStep.xml:7
+msgid ""
+"Translates to [code]smoothstep(edge0, edge1, x)[/code] in the shader "
+"language.\n"
+"Returns [code]0.0[/code] if [code]x[/code] is smaller than [code]edge0[/"
+"code] and [code]1.0[/code] if [code]x[/code] is larger than [code]edge1[/"
+"code]. Otherwise the return value is interpolated between [code]0.0[/code] "
+"and [code]1.0[/code] using Hermite polynomials."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeScalarSwitch.xml:4
+msgid "A boolean/scalar function for use within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeScalarSwitch.xml:7
+msgid ""
+"Returns an associated scalar if the provided boolean value is [code]true[/"
+"code] or [code]false[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeSwitch.xml:4
+msgid "A boolean/vector function for use within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeSwitch.xml:7
+msgid ""
+"Returns an associated vector if the provided boolean value is [code]true[/"
+"code] or [code]false[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTexture.xml:4
+msgid "Performs a texture lookup within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTexture.xml:7
+msgid ""
+"Performs a lookup operation on the provided texture, with support for "
+"multiple texture sources to choose from."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTexture.xml:15
+msgid "Determines the source for the lookup. See [enum Source] for options."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTexture.xml:18
+msgid "The source texture, if needed for the selected [member source]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTexture.xml:21
+msgid ""
+"Specifies the type of the texture if [member source] is set to [constant "
+"SOURCE_TEXTURE]. See [enum TextureType] for options."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTexture.xml:26
+msgid "Use the texture given as an argument for this function."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTexture.xml:29
+msgid "Use the current viewport's texture as the source."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTexture.xml:32
+msgid ""
+"Use the texture from this shader's texture built-in (e.g. a texture of a "
+"[Sprite2D])."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTexture.xml:35
+msgid "Use the texture from this shader's normal map built-in."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTexture.xml:38
+msgid "Use the depth texture available for this shader."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTexture.xml:41
+msgid "Use the texture provided in the input port for this function."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTexture2DArray.xml:4
+msgid "A 2D texture uniform array to be used within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTexture2DArray.xml:7
+msgid ""
+"Translated to [code]uniform sampler2DArray[/code] in the shader language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTexture2DArray.xml:15
+msgid ""
+"A source texture array. Used if [member VisualShaderNodeSample3D.source] is "
+"set to [constant VisualShaderNodeSample3D.SOURCE_TEXTURE]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTextureUniform.xml:4
+msgid "Performs a uniform texture lookup within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTextureUniform.xml:7
+msgid ""
+"Performs a lookup operation on the texture provided as a uniform for the "
+"shader."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTextureUniform.xml:15
+msgid "Sets the default color if no texture is assigned to the uniform."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTextureUniform.xml:32
+msgid ""
+"Adds [code]hint_aniso[/code] as hint to the uniform declaration to use for a "
+"flowmap."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTextureUniform.xml:35
+msgid "Defaults to white color."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTextureUniform.xml:38
+msgid "Defaults to black color."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTextureUniformTriplanar.xml:4
+msgid ""
+"Performs a uniform texture lookup with triplanar within the visual shader "
+"graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTextureUniformTriplanar.xml:7
+msgid ""
+"Performs a lookup operation on the texture provided as a uniform for the "
+"shader, with support for triplanar mapping."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformCompose.xml:4
+msgid ""
+"Composes a [Transform] from four [Vector3]s within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformCompose.xml:7
+msgid ""
+"Creates a 4x4 transform matrix using four vectors of type [code]vec3[/code]. "
+"Each vector is one row in the matrix and the last column is a [code]vec4(0, "
+"0, 0, 1)[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformConstant.xml:4
+msgid "A [Transform] constant for use within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformConstant.xml:7
+msgid "A constant [Transform], which can be used as an input node."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformConstant.xml:15
+msgid "A [Transform] constant which represents the state of this node."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformDecompose.xml:4
+msgid ""
+"Decomposes a [Transform] into four [Vector3]s within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformDecompose.xml:7
+msgid ""
+"Takes a 4x4 transform matrix and decomposes it into four [code]vec3[/code] "
+"values, one from each row of the matrix."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformFunc.xml:4
+msgid "Computes a [Transform] function within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformFunc.xml:7
+msgid "Computes an inverse or transpose function on the provided [Transform]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformFunc.xml:15
+msgid "The function to be computed. See [enum Function] for options."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformFunc.xml:20
+msgid "Perform the inverse operation on the [Transform] matrix."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformFunc.xml:23
+msgid "Perform the transpose operation on the [Transform] matrix."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformMult.xml:4
+msgid "Multiplies [Transform] by [Transform] within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformMult.xml:7
+msgid ""
+"A multiplication operation on two transforms (4x4 matrices), with support "
+"for different multiplication operators."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformMult.xml:15
+msgid ""
+"The multiplication type to be performed on the transforms. See [enum "
+"Operator] for options."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformMult.xml:20
+msgid "Multiplies transform [code]a[/code] by the transform [code]b[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformMult.xml:23
+msgid "Multiplies transform [code]b[/code] by the transform [code]a[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformMult.xml:26
+msgid ""
+"Performs a component-wise multiplication of transform [code]a[/code] by the "
+"transform [code]b[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformMult.xml:29
+msgid ""
+"Performs a component-wise multiplication of transform [code]b[/code] by the "
+"transform [code]a[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformUniform.xml:4
+msgid "A [Transform] uniform for use within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformUniform.xml:7
+msgid "Translated to [code]uniform mat4[/code] in the shader language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformVecMult.xml:4
+msgid ""
+"Multiplies a [Transform] and a [Vector3] within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformVecMult.xml:7
+msgid ""
+"A multiplication operation on a transform (4x4 matrix) and a vector, with "
+"support for different multiplication operators."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformVecMult.xml:15
+msgid ""
+"The multiplication type to be performed. See [enum Operator] for options."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformVecMult.xml:20
+msgid "Multiplies transform [code]a[/code] by the vector [code]b[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformVecMult.xml:23
+msgid "Multiplies vector [code]b[/code] by the transform [code]a[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformVecMult.xml:26
+msgid ""
+"Multiplies transform [code]a[/code] by the vector [code]b[/code], skipping "
+"the last row and column of the transform."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformVecMult.xml:29
+msgid ""
+"Multiplies vector [code]b[/code] by the transform [code]a[/code], skipping "
+"the last row and column of the transform."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniform.xml:4
+msgid "A base type for the uniforms within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniform.xml:7
+msgid ""
+"A uniform represents a variable in the shader which is set externally, i.e. "
+"from the [ShaderMaterial]. Uniforms are exposed as properties in the "
+"[ShaderMaterial] and can be assigned from the inspector or from a script."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniform.xml:17
+msgid ""
+"Name of the uniform, by which it can be accessed through the "
+"[ShaderMaterial] properties."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniformRef.xml:4
+msgid "A reference to an existing [VisualShaderNodeUniform]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniformRef.xml:7
+msgid ""
+"Creating a reference to a [VisualShaderNodeUniform] allows you to reuse this "
+"uniform in different shaders or shader stages easily."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniformRef.xml:15
+msgid "The name of the uniform which this reference points to."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVec3Constant.xml:4
+msgid "A [Vector3] constant to be used within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVec3Constant.xml:7
+msgid "A constant [Vector3], which can be used as an input node."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVec3Constant.xml:15
+msgid "A [Vector3] constant which represents the state of this node."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVec3Uniform.xml:4
+msgid "A [Vector3] uniform to be used within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVec3Uniform.xml:7
+msgid "Translated to [code]uniform vec3[/code] in the shader language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorClamp.xml:4
+msgid "Clamps a vector value within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorClamp.xml:7
+msgid ""
+"Constrains a value to lie between [code]min[/code] and [code]max[/code] "
+"values. The operation is performed on each component of the vector "
+"individually."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorCompose.xml:4
+msgid "Composes a [Vector3] from three scalars within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorCompose.xml:7
+msgid ""
+"Creates a [code]vec3[/code] using three scalar values that can be provided "
+"from separate inputs."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorDecompose.xml:4
+msgid ""
+"Decomposes a [Vector3] into three scalars within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorDecompose.xml:7
+msgid ""
+"Takes a [code]vec3[/code] and decomposes it into three scalar values that "
+"can be used as separate inputs."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorDerivativeFunc.xml:4
+msgid "Calculates a vector derivative within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorDerivativeFunc.xml:15
+msgid "A derivative type. See [enum Function] for options."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorDistance.xml:4
+msgid ""
+"Returns the distance between two points. To be used within the visual shader "
+"graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorDistance.xml:7
+msgid ""
+"Calculates distance from point represented by vector [code]p0[/code] to "
+"vector [code]p1[/code].\n"
+"Translated to [code]distance(p0, p1)[/code] in the shader language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:4
+msgid "A vector function to be used within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:7
+msgid "A visual shader node able to perform different functions using vectors."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:15
+msgid "The function to be performed. See [enum Function] for options."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:20
+msgid ""
+"Normalizes the vector so that it has a length of [code]1[/code] but points "
+"in the same direction."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:23
+msgid "Clamps the value between [code]0.0[/code] and [code]1.0[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:26
+msgid "Returns the opposite value of the parameter."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:29
+msgid "Returns [code]1/vector[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:32
+msgid "Converts RGB vector to HSV equivalent."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:35
+msgid "Converts HSV vector to RGB equivalent."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:38
+msgid "Returns the absolute value of the parameter."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:41
+msgid "Returns the arc-cosine of the parameter."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:44
+msgid "Returns the inverse hyperbolic cosine of the parameter."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:47
+msgid "Returns the arc-sine of the parameter."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:50
+msgid "Returns the inverse hyperbolic sine of the parameter."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:53
+msgid "Returns the arc-tangent of the parameter."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:56
+msgid "Returns the inverse hyperbolic tangent of the parameter."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:59
+msgid ""
+"Finds the nearest integer that is greater than or equal to the parameter."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:62
+msgid "Returns the cosine of the parameter."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:65
+msgid "Returns the hyperbolic cosine of the parameter."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:68
+msgid "Converts a quantity in radians to degrees."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:71
+msgid "Base-e Exponential."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:74
+msgid "Base-2 Exponential."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:77
+msgid "Finds the nearest integer less than or equal to the parameter."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:80
+msgid "Computes the fractional part of the argument."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:83
+msgid "Returns the inverse of the square root of the parameter."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:86
+msgid "Natural logarithm."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:89
+msgid "Base-2 logarithm."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:92
+msgid "Converts a quantity in degrees to radians."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:95
+msgid "Finds the nearest integer to the parameter."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:98
+msgid "Finds the nearest even integer to the parameter."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:101
+msgid ""
+"Extracts the sign of the parameter, i.e. returns [code]-1[/code] if the "
+"parameter is negative, [code]1[/code] if it's positive and [code]0[/code] "
+"otherwise."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:104
+msgid "Returns the sine of the parameter."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:107
+msgid "Returns the hyperbolic sine of the parameter."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:110
+msgid "Returns the square root of the parameter."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:113
+msgid "Returns the tangent of the parameter."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:116
+msgid "Returns the hyperbolic tangent of the parameter."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:119
+msgid ""
+"Returns a value equal to the nearest integer to the parameter whose absolute "
+"value is not larger than the absolute value of the parameter."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:122
+msgid "Returns [code]1.0 - vector[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorInterp.xml:4
+msgid ""
+"Linearly interpolates between two vectors within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorInterp.xml:7
+msgid ""
+"Translates to [code]mix(a, b, weight)[/code] in the shader language, where "
+"[code]weight[/code] is a [Vector3] with weights for each component."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorLen.xml:4
+msgid "Returns the length of a [Vector3] within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorLen.xml:7
+msgid "Translated to [code]length(p0)[/code] in the shader language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorOp.xml:4
+msgid "A vector operator to be used within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorOp.xml:7
+msgid ""
+"A visual shader node for use of vector operators. Operates on vector "
+"[code]a[/code] and vector [code]b[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorOp.xml:15
+msgid "The operator to be used. See [enum Operator] for options."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorOp.xml:20
+msgid "Adds two vectors."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorOp.xml:23
+msgid "Subtracts a vector from a vector."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorOp.xml:26
+msgid "Multiplies two vectors."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorOp.xml:29
+msgid "Divides vector by vector."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorOp.xml:32
+msgid "Returns the remainder of the two vectors."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorOp.xml:35
+msgid ""
+"Returns the value of the first parameter raised to the power of the second, "
+"for each component of the vectors."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorOp.xml:38
+msgid "Returns the greater of two values, for each component of the vectors."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorOp.xml:41
+msgid "Returns the lesser of two values, for each component of the vectors."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorOp.xml:44
+msgid "Calculates the cross product of two vectors."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorOp.xml:47
+msgid "Returns the arc-tangent of the parameters."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorOp.xml:50
+msgid ""
+"Returns the vector that points in the direction of reflection. [code]a[/"
+"code] is incident vector and [code]b[/code] is the normal vector."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorOp.xml:53
+msgid ""
+"Vector step operator. Returns [code]0.0[/code] if [code]a[/code] is smaller "
+"than [code]b[/code] and [code]1.0[/code] otherwise."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorRefract.xml:4
+msgid ""
+"Returns the [Vector3] that points in the direction of refraction. For use "
+"within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorRefract.xml:7
+msgid ""
+"Translated to [code]refract(I, N, eta)[/code] in the shader language, where "
+"[code]I[/code] is the incident vector, [code]N[/code] is the normal vector "
+"and [code]eta[/code] is the ratio of the indices of the refraction."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorScalarMix.xml:4
+msgid ""
+"Linearly interpolates between two vectors using a scalar. For use within the "
+"visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorScalarMix.xml:7
+msgid ""
+"Translates to [code]mix(a, b, weight)[/code] in the shader language, where "
+"[code]a[/code] and [code]b[/code] are vectors and [code]weight[/code] is a "
+"scalar."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorScalarSmoothStep.xml:4
+msgid ""
+"Calculates a vector SmoothStep function using scalar within the visual "
+"shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorScalarSmoothStep.xml:7
+msgid ""
+"Translates to [code]smoothstep(edge0, edge1, x)[/code] in the shader "
+"language, where [code]x[/code] is a scalar.\n"
+"Returns [code]0.0[/code] if [code]x[/code] is smaller than [code]edge0[/"
+"code] and [code]1.0[/code] if [code]x[/code] is larger than [code]edge1[/"
+"code]. Otherwise the return value is interpolated between [code]0.0[/code] "
+"and [code]1.0[/code] using Hermite polynomials."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorScalarStep.xml:4
+msgid "Calculates a vector Step function within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorScalarStep.xml:7
+msgid ""
+"Translates to [code]step(edge, x)[/code] in the shader language.\n"
+"Returns [code]0.0[/code] if [code]x[/code] is smaller than [code]edge[/code] "
+"and [code]1.0[/code] otherwise."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorSmoothStep.xml:4
+msgid "Calculates a vector SmoothStep function within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorSmoothStep.xml:7
+msgid ""
+"Translates to [code]smoothstep(edge0, edge1, x)[/code] in the shader "
+"language, where [code]x[/code] is a vector.\n"
+"Returns [code]0.0[/code] if [code]x[/code] is smaller than [code]edge0[/"
+"code] and [code]1.0[/code] if [code]x[/code] is larger than [code]edge1[/"
+"code]. Otherwise the return value is interpolated between [code]0.0[/code] "
+"and [code]1.0[/code] using Hermite polynomials."
+msgstr ""
+
+#: doc/classes/VScrollBar.xml:4
+msgid "Vertical scroll bar."
+msgstr ""
+
+#: doc/classes/VScrollBar.xml:7
+msgid ""
+"Vertical version of [ScrollBar], which goes from top (min) to bottom (max)."
+msgstr ""
+
+#: doc/classes/VScrollBar.xml:21
+msgid ""
+"Icon used as a button to scroll the [ScrollBar] up. Supports custom step "
+"using the [member ScrollBar.custom_step] property."
+msgstr ""
+
+#: doc/classes/VScrollBar.xml:36
+msgid ""
+"Icon used as a button to scroll the [ScrollBar] down. Supports custom step "
+"using the [member ScrollBar.custom_step] property."
+msgstr ""
+
+#: doc/classes/VSeparator.xml:4
+msgid "Vertical version of [Separator]."
+msgstr ""
+
+#: doc/classes/VSeparator.xml:7
+msgid ""
+"Vertical version of [Separator]. Even though it looks vertical, it is used "
+"to separate objects horizontally."
+msgstr ""
+
+#: doc/classes/VSeparator.xml:17
+msgid ""
+"The width of the area covered by the separator. Effectively works like a "
+"minimum width."
+msgstr ""
+
+#: doc/classes/VSeparator.xml:20
+msgid ""
+"The style for the separator line. Works best with [StyleBoxLine] (remember "
+"to enable [member StyleBoxLine.vertical])."
+msgstr ""
+
+#: doc/classes/VSlider.xml:4
+msgid "Vertical slider."
+msgstr ""
+
+#: doc/classes/VSlider.xml:7
+msgid ""
+"Vertical slider. See [Slider]. This one goes from bottom (min) to top (max)."
+msgstr ""
+
+#: doc/classes/VSlider.xml:24
+msgid "The background of the area below the grabber."
+msgstr ""
+
+#: doc/classes/VSlider.xml:35
+msgid ""
+"The background for the whole slider. Determines the width of the "
+"[code]grabber_area[/code]."
+msgstr ""
+
+#: doc/classes/VSplitContainer.xml:4
+msgid "Vertical split container."
+msgstr ""
+
+#: doc/classes/VSplitContainer.xml:7
+msgid ""
+"Vertical split container. See [SplitContainer]. This goes from top to bottom."
+msgstr ""
+
+#: doc/classes/WeakRef.xml:4
+msgid ""
+"Holds an [Object], but does not contribute to the reference count if the "
+"object is a reference."
+msgstr ""
+
+#: doc/classes/WeakRef.xml:7
+msgid ""
+"A weakref can hold a [Reference], without contributing to the reference "
+"counter. A weakref can be created from an [Object] using [method @GDScript."
+"weakref]. If this object is not a reference, weakref still works, however, "
+"it does not have any effect on the object. Weakrefs are useful in cases "
+"where multiple classes have variables that refer to each other. Without "
+"weakrefs, using these classes could lead to memory leaks, since both "
+"references keep each other from being released. Making part of the variables "
+"a weakref can prevent this cyclic dependency, and allows the references to "
+"be released."
+msgstr ""
+
+#: doc/classes/WeakRef.xml:16
+msgid "Returns the [Object] this weakref is referring to."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:14
+msgid "Closes this data channel, notifying the other peer."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:21
+msgid ""
+"Returns the id assigned to this channel during creation (or auto-assigned "
+"during negotiation).\n"
+"If the channel is not negotiated out-of-band the id will only be available "
+"after the connection is established (will return [code]65535[/code] until "
+"then)."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:29
+msgid "Returns the label assigned to this channel during creation."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:36
+msgid ""
+"Returns the [code]maxPacketLifeTime[/code] value assigned to this channel "
+"during creation.\n"
+"Will be [code]65535[/code] if not specified."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:44
+msgid ""
+"Returns the [code]maxRetransmits[/code] value assigned to this channel "
+"during creation.\n"
+"Will be [code]65535[/code] if not specified."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:52
+msgid ""
+"Returns the sub-protocol assigned to this channel during creation. An empty "
+"string if not specified."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:59
+msgid "Returns the current state of this channel, see [enum ChannelState]."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:66
+msgid ""
+"Returns [code]true[/code] if this channel was created with out-of-band "
+"configuration."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:73
+msgid ""
+"Returns [code]true[/code] if this channel was created with ordering enabled "
+"(default)."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:80
+msgid "Reserved, but not used for now."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:87
+msgid ""
+"Returns [code]true[/code] if the last received packet was transferred as "
+"text. See [member write_mode]."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:93
+msgid ""
+"The transfer mode to use when sending outgoing packet. Either text or binary."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:98
+msgid ""
+"Tells the channel to send data over this channel as text. An external peer "
+"(non-Godot) would receive this as a string."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:101
+msgid ""
+"Tells the channel to send data over this channel as binary. An external peer "
+"(non-Godot) would receive this as array buffer or blob."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:104
+msgid "The channel was created, but it's still trying to connect."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:107
+msgid "The channel is currently open, and data can flow over it."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:110
+msgid ""
+"The channel is being closed, no new messages will be accepted, but those "
+"already in queue will be flushed."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:113
+msgid "The channel was closed, or connection failed."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCMultiplayer.xml:4
+msgid ""
+"A simple interface to create a peer-to-peer mesh network composed of "
+"[WebRTCPeerConnection] that is compatible with the [MultiplayerAPI]."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCMultiplayer.xml:7
+msgid ""
+"This class constructs a full mesh of [WebRTCPeerConnection] (one connection "
+"for each peer) that can be used as a [member MultiplayerAPI.network_peer].\n"
+"You can add each [WebRTCPeerConnection] via [method add_peer] or remove them "
+"via [method remove_peer]. Peers must be added in [constant "
+"WebRTCPeerConnection.STATE_NEW] state to allow it to create the appropriate "
+"channels. This class will not create offers nor set descriptions, it will "
+"only poll them, and notify connections and disconnections.\n"
+"[signal NetworkedMultiplayerPeer.connection_succeeded] and [signal "
+"NetworkedMultiplayerPeer.server_disconnected] will not be emitted unless "
+"[code]server_compatibility[/code] is [code]true[/code] in [method "
+"initialize]. Beside that data transfer works like in a "
+"[NetworkedMultiplayerPeer]."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCMultiplayer.xml:24
+msgid ""
+"Add a new peer to the mesh with the given [code]peer_id[/code]. The "
+"[WebRTCPeerConnection] must be in state [constant WebRTCPeerConnection."
+"STATE_NEW].\n"
+"Three channels will be created for reliable, unreliable, and ordered "
+"transport. The value of [code]unreliable_lifetime[/code] will be passed to "
+"the [code]maxPacketLifetime[/code] option when creating unreliable and "
+"ordered channels (see [method WebRTCPeerConnection.create_data_channel])."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCMultiplayer.xml:32
+msgid "Close all the add peer connections and channels, freeing all resources."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCMultiplayer.xml:41
+msgid ""
+"Return a dictionary representation of the peer with given [code]peer_id[/"
+"code] with three keys. [code]connection[/code] containing the "
+"[WebRTCPeerConnection] to this peer, [code]channels[/code] an array of three "
+"[WebRTCDataChannel], and [code]connected[/code] a boolean representing if "
+"the peer connection is currently connected (all three channels are open)."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCMultiplayer.xml:48
+msgid ""
+"Returns a dictionary which keys are the peer ids and values the peer "
+"representation as in [method get_peer]."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCMultiplayer.xml:57
+msgid ""
+"Returns [code]true[/code] if the given [code]peer_id[/code] is in the peers "
+"map (it might not be connected though)."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCMultiplayer.xml:68
+msgid ""
+"Initialize the multiplayer peer with the given [code]peer_id[/code] (must be "
+"between 1 and 2147483647).\n"
+"If [code]server_compatibilty[/code] is [code]false[/code] (default), the "
+"multiplayer peer will be immediately in state [constant "
+"NetworkedMultiplayerPeer.CONNECTION_CONNECTED] and [signal "
+"NetworkedMultiplayerPeer.connection_succeeded] will not be emitted.\n"
+"If [code]server_compatibilty[/code] is [code]true[/code] the peer will "
+"suppress all [signal NetworkedMultiplayerPeer.peer_connected] signals until "
+"a peer with id [constant NetworkedMultiplayerPeer.TARGET_PEER_SERVER] "
+"connects and then emit [signal NetworkedMultiplayerPeer."
+"connection_succeeded]. After that the signal [signal "
+"NetworkedMultiplayerPeer.peer_connected] will be emitted for every already "
+"connected peer, and any new peer that might connect. If the server peer "
+"disconnects after that, signal [signal NetworkedMultiplayerPeer."
+"server_disconnected] will be emitted and state will become [constant "
+"NetworkedMultiplayerPeer.CONNECTION_CONNECTED]."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCMultiplayer.xml:79
+msgid ""
+"Remove the peer with given [code]peer_id[/code] from the mesh. If the peer "
+"was connected, and [signal NetworkedMultiplayerPeer.peer_connected] was "
+"emitted for it, then [signal NetworkedMultiplayerPeer.peer_disconnected] "
+"will be emitted."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:4
+msgid "Interface to a WebRTC peer connection."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:7
+msgid ""
+"A WebRTC connection between the local computer and a remote peer. Provides "
+"an interface to connect, maintain and monitor the connection.\n"
+"Setting up a WebRTC connection between two peers from now on) may not seem a "
+"trivial task, but it can be broken down into 3 main steps:\n"
+"- The peer that wants to initiate the connection ([code]A[/code] from now "
+"on) creates an offer and send it to the other peer ([code]B[/code] from now "
+"on).\n"
+"- [code]B[/code] receives the offer, generate and answer, and sends it to "
+"[code]A[/code]).\n"
+"- [code]A[/code] and [code]B[/code] then generates and exchange ICE "
+"candidates with each other.\n"
+"After these steps, the connection should become connected. Keep on reading "
+"or look into the tutorial for more information."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:27
+msgid ""
+"Add an ice candidate generated by a remote peer (and received over the "
+"signaling server). See [signal ice_candidate_created]."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:34
+msgid ""
+"Close the peer connection and all data channels associated with it. Note, "
+"you cannot reuse this object for a new connection unless you call [method "
+"initialize]."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:47
+msgid ""
+"Returns a new [WebRTCDataChannel] (or [code]null[/code] on failure) with "
+"given [code]label[/code] and optionally configured via the [code]options[/"
+"code] dictionary. This method can only be called when the connection is in "
+"state [constant STATE_NEW].\n"
+"There are two ways to create a working data channel: either call [method "
+"create_data_channel] on only one of the peer and listen to [signal "
+"data_channel_received] on the other, or call [method create_data_channel] on "
+"both peers, with the same values, and the [code]negotiated[/code] option set "
+"to [code]true[/code].\n"
+"Valid [code]options[/code] are:\n"
+"[codeblock]\n"
+"{\n"
+" \"negotiated\": true, # When set to true (default off), means the "
+"channel is negotiated out of band. \"id\" must be set too. "
+"data_channel_received will not be called.\n"
+" \"id\": 1, # When \"negotiated\" is true this value must also be set to "
+"the same value on both peer.\n"
+"\n"
+" # Only one of maxRetransmits and maxPacketLifeTime can be specified, not "
+"both. They make the channel unreliable (but also better at real time).\n"
+" \"maxRetransmits\": 1, # Specify the maximum number of attempt the peer "
+"will make to retransmits packets if they are not acknowledged.\n"
+" \"maxPacketLifeTime\": 100, # Specify the maximum amount of time before "
+"giving up retransmitions of unacknowledged packets (in milliseconds).\n"
+" \"ordered\": true, # When in unreliable mode (i.e. either "
+"\"maxRetransmits\" or \"maxPacketLifetime\" is set), \"ordered\" (true by "
+"default) specify if packet ordering is to be enforced.\n"
+"\n"
+" \"protocol\": \"my-custom-protocol\", # A custom sub-protocol string for "
+"this channel.\n"
+"}\n"
+"[/codeblock]\n"
+"[b]Note:[/b] You must keep a reference to channels created this way, or it "
+"will be closed."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:70
+msgid ""
+"Creates a new SDP offer to start a WebRTC connection with a remote peer. At "
+"least one [WebRTCDataChannel] must have been created before calling this "
+"method.\n"
+"If this functions returns [constant OK], [signal "
+"session_description_created] will be called when the session is ready to be "
+"sent."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:78
+msgid "Returns the connection state. See [enum ConnectionState]."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:89
+msgid ""
+"Re-initialize this peer connection, closing any previously active "
+"connection, and going back to state [constant STATE_NEW]. A dictionary of "
+"[code]options[/code] can be passed to configure the peer connection.\n"
+"Valid [code]options[/code] are:\n"
+"[codeblock]\n"
+"{\n"
+" \"iceServers\": [\n"
+" {\n"
+" \"urls\": [ \"stun:stun.example.com:3478\" ], # One or more STUN "
+"servers.\n"
+" },\n"
+" {\n"
+" \"urls\": [ \"turn:turn.example.com:3478\" ], # One or more TURN "
+"servers.\n"
+" \"username\": \"a_username\", # Optional username for the TURN "
+"server.\n"
+" \"credentials\": \"a_password\", # Optional password for the "
+"TURN server.\n"
+" }\n"
+" ]\n"
+"}\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:111
+msgid ""
+"Call this method frequently (e.g. in [method Node._process] or [method Node."
+"_physics_process]) to properly receive signals."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:122
+msgid ""
+"Sets the SDP description of the local peer. This should be called in "
+"response to [signal session_description_created].\n"
+"After calling this function the peer will start emitting [signal "
+"ice_candidate_created] (unless an [enum Error] different from [constant OK] "
+"is returned)."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:134
+msgid ""
+"Sets the SDP description of the remote peer. This should be called with the "
+"values generated by a remote peer and received over the signaling server.\n"
+"If [code]type[/code] is [code]offer[/code] the peer will emit [signal "
+"session_description_created] with the appropriate answer.\n"
+"If [code]type[/code] is [code]answer[/code] the peer will start emitting "
+"[signal ice_candidate_created]."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:145
+msgid ""
+"Emitted when a new in-band channel is received, i.e. when the channel was "
+"created with [code]negotiated: false[/code] (default).\n"
+"The object will be an instance of [WebRTCDataChannel]. You must keep a "
+"reference of it or it will be closed automatically. See [method "
+"create_data_channel]."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:157
+msgid ""
+"Emitted when a new ICE candidate has been created. The three parameters are "
+"meant to be passed to the remote peer over the signaling server."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:166
+msgid ""
+"Emitted after a successful call to [method create_offer] or [method "
+"set_remote_description] (when it generates an answer). The parameters are "
+"meant to be passed to [method set_local_description] on this object, and "
+"sent to the remote peer over the signaling server."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:172
+msgid ""
+"The connection is new, data channels and an offer can be created in this "
+"state."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:175
+msgid ""
+"The peer is connecting, ICE is in progress, none of the transports has "
+"failed."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:178
+msgid "The peer is connected, all ICE transports are connected."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:181
+msgid "At least one ICE transport is disconnected."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:184
+msgid "One or more of the ICE transports failed."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:187
+msgid ""
+"The peer connection is closed (after calling [method close] for example)."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketClient.xml:4
+msgid "A WebSocket client implementation."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketClient.xml:7
+msgid ""
+"This class implements a WebSocket client compatible with any RFC 6455-"
+"compliant WebSocket server.\n"
+"This client can be optionally used as a network peer for the "
+"[MultiplayerAPI].\n"
+"After starting the client ([method connect_to_url]), you will need to "
+"[method NetworkedMultiplayerPeer.poll] it at regular intervals (e.g. inside "
+"[method Node._process]).\n"
+"You will receive appropriate signals when connecting, disconnecting, or when "
+"new data is available."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketClient.xml:27
+msgid ""
+"Connects to the given URL requesting one of the given [code]protocols[/code] "
+"as sub-protocol. If the list empty (default), no sub-protocol will be "
+"requested.\n"
+"If [code]true[/code] is passed as [code]gd_mp_api[/code], the client will "
+"behave like a network peer for the [MultiplayerAPI], connections to non-"
+"Godot servers will not work, and [signal data_received] will not be "
+"emitted.\n"
+"If [code]false[/code] is passed instead (default), you must call "
+"[PacketPeer] functions ([code]put_packet[/code], [code]get_packet[/code], "
+"etc.) on the [WebSocketPeer] returned via [code]get_peer(1)[/code] and not "
+"on this object directly (e.g. [code]get_peer(1).put_packet(data)[/code]).\n"
+"You can optionally pass a list of [code]custom_headers[/code] to be added to "
+"the handshake HTTP request.\n"
+"[b]Note:[/b] Specifying [code]custom_headers[/code] is not supported in "
+"HTML5 exports due to browsers restrictions."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketClient.xml:42
+msgid ""
+"Disconnects this client from the connected host. See [method WebSocketPeer."
+"close] for more information."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketClient.xml:49
+msgid "Return the IP address of the currently connected host."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketClient.xml:56
+msgid "Return the IP port of the currently connected host."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketClient.xml:62
+msgid ""
+"If specified, this [X509Certificate] will be the only one accepted when "
+"connecting to an SSL host. Any other certificate provided by the server will "
+"be regarded as invalid.\n"
+"[b]Note:[/b] Specifying a custom [code]trusted_ssl_certificate[/code] is not "
+"supported in HTML5 exports due to browsers restrictions."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketClient.xml:66
+msgid ""
+"If [code]true[/code], SSL certificate verification is enabled.\n"
+"[b]Note:[/b] You must specify the certificates to be used in the Project "
+"Settings for it to work when exported."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketClient.xml:75
+msgid ""
+"Emitted when the connection to the server is closed. [code]was_clean_close[/"
+"code] will be [code]true[/code] if the connection was shutdown cleanly."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketClient.xml:80
+msgid "Emitted when the connection to the server fails."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketClient.xml:87
+msgid ""
+"Emitted when a connection with the server is established, [code]protocol[/"
+"code] will contain the sub-protocol agreed with the server."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketClient.xml:92
+msgid ""
+"Emitted when a WebSocket message is received.\n"
+"[b]Note:[/b] This signal is [i]not[/i] emitted when used as high-level "
+"multiplayer peer."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketClient.xml:102
+msgid ""
+"Emitted when the server requests a clean close. You should keep polling "
+"until you get a [signal connection_closed] signal to achieve the clean "
+"close. See [method WebSocketPeer.close] for more details."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketMultiplayerPeer.xml:4
+msgid "Base class for WebSocket server and client."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketMultiplayerPeer.xml:7
+msgid ""
+"Base class for WebSocket server and client, allowing them to be used as "
+"network peer for the [MultiplayerAPI]."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketMultiplayerPeer.xml:18
+msgid ""
+"Returns the [WebSocketPeer] associated to the given [code]peer_id[/code]."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketMultiplayerPeer.xml:33
+msgid ""
+"Configures the buffer sizes for this WebSocket peer. Default values can be "
+"specified in the Project Settings under [code]network/limits[/code]. For "
+"server, values are meant per connected peer.\n"
+"The first two parameters define the size and queued packets limits of the "
+"input buffer, the last two of the output buffer.\n"
+"Buffer sizes are expressed in KiB, so [code]4 = 2^12 = 4096 bytes[/code]. "
+"All parameters will be rounded up to the nearest power of two.\n"
+"[b]Note:[/b] HTML5 exports only use the input buffer since the output one is "
+"managed by browsers."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketMultiplayerPeer.xml:49
+msgid ""
+"Emitted when a packet is received from a peer.\n"
+"[b]Note:[/b] This signal is only emitted when the client or server is "
+"configured to use Godot multiplayer API."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketPeer.xml:4
+msgid "A class representing a specific WebSocket connection."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketPeer.xml:7
+msgid ""
+"This class represent a specific WebSocket connection, you can do lower level "
+"operations with it.\n"
+"You can choose to write to the socket in binary or text mode, and you can "
+"recognize the mode used for writing by the other peer."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketPeer.xml:21
+msgid ""
+"Closes this WebSocket connection. [code]code[/code] is the status code for "
+"the closure (see RFC 6455 section 7.4 for a list of valid status codes). "
+"[code]reason[/code] is the human readable reason for closing the connection "
+"(can be any UTF-8 string that's smaller than 123 bytes).\n"
+"[b]Note:[/b] To achieve a clean close, you will need to keep polling until "
+"either [signal WebSocketClient.connection_closed] or [signal WebSocketServer."
+"client_disconnected] is received.\n"
+"[b]Note:[/b] The HTML5 export might not support all status codes. Please "
+"refer to browser-specific documentation for more details."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketPeer.xml:30
+msgid ""
+"Returns the IP address of the connected peer.\n"
+"[b]Note:[/b] Not available in the HTML5 export."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketPeer.xml:38
+msgid ""
+"Returns the remote port of the connected peer.\n"
+"[b]Note:[/b] Not available in the HTML5 export."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketPeer.xml:46
+msgid "Gets the current selected write mode. See [enum WriteMode]."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketPeer.xml:53
+msgid "Returns [code]true[/code] if this peer is currently connected."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketPeer.xml:62
+msgid ""
+"Disable Nagle's algorithm on the underling TCP socket (default). See [method "
+"StreamPeerTCP.set_no_delay] for more information.\n"
+"[b]Note:[/b] Not available in the HTML5 export."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketPeer.xml:72
+msgid "Sets the socket to use the given [enum WriteMode]."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketPeer.xml:79
+msgid ""
+"Returns [code]true[/code] if the last received packet was sent as a text "
+"payload. See [enum WriteMode]."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketPeer.xml:85
+msgid ""
+"Specifies that WebSockets messages should be transferred as text payload "
+"(only valid UTF-8 is allowed)."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketPeer.xml:88
+msgid ""
+"Specifies that WebSockets messages should be transferred as binary payload "
+"(any byte combination is allowed)."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketServer.xml:4
+msgid "A WebSocket server implementation."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketServer.xml:7
+msgid ""
+"This class implements a WebSocket server that can also support the high-"
+"level multiplayer API.\n"
+"After starting the server ([method listen]), you will need to [method "
+"NetworkedMultiplayerPeer.poll] it at regular intervals (e.g. inside [method "
+"Node._process]). When clients connect, disconnect, or send data, you will "
+"receive the appropriate signal.\n"
+"[b]Note:[/b] Not available in HTML5 exports."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketServer.xml:24
+msgid ""
+"Disconnects the peer identified by [code]id[/code] from the server. See "
+"[method WebSocketPeer.close] for more information."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketServer.xml:51
+msgid "Returns [code]true[/code] if a peer with the given ID is connected."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketServer.xml:58
+msgid ""
+"Returns [code]true[/code] if the server is actively listening on a port."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketServer.xml:71
+msgid ""
+"Starts listening on the given port.\n"
+"You can specify the desired subprotocols via the \"protocols\" array. If the "
+"list empty (default), no sub-protocol will be requested.\n"
+"If [code]true[/code] is passed as [code]gd_mp_api[/code], the server will "
+"behave like a network peer for the [MultiplayerAPI], connections from non-"
+"Godot clients will not work, and [signal data_received] will not be "
+"emitted.\n"
+"If [code]false[/code] is passed instead (default), you must call "
+"[PacketPeer] functions ([code]put_packet[/code], [code]get_packet[/code], "
+"etc.), on the [WebSocketPeer] returned via [code]get_peer(id)[/code] to "
+"communicate with the peer with given [code]id[/code] (e.g. "
+"[code]get_peer(id).get_available_packet_count[/code])."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketServer.xml:81
+msgid "Stops the server and clear its state."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketServer.xml:87
+msgid ""
+"When not set to [code]*[/code] will restrict incoming connections to the "
+"specified IP address. Setting [code]bind_ip[/code] to [code]127.0.0.1[/code] "
+"will cause the server to listen only to the local host."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketServer.xml:90
+msgid ""
+"When using SSL (see [member private_key] and [member ssl_certificate]), you "
+"can set this to a valid [X509Certificate] to be provided as additional CA "
+"chain information during the SSL handshake."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketServer.xml:93
+msgid ""
+"When set to a valid [CryptoKey] (along with [member ssl_certificate]) will "
+"cause the server to require SSL instead of regular TCP (i.e. the [code]wss://"
+"[/code] protocol)."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketServer.xml:96
+msgid ""
+"When set to a valid [X509Certificate] (along with [member private_key]) will "
+"cause the server to require SSL instead of regular TCP (i.e. the [code]wss://"
+"[/code] protocol)."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketServer.xml:108
+msgid ""
+"Emitted when a client requests a clean close. You should keep polling until "
+"you get a [signal client_disconnected] signal with the same [code]id[/code] "
+"to achieve the clean close. See [method WebSocketPeer.close] for more "
+"details."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketServer.xml:117
+msgid ""
+"Emitted when a new client connects. \"protocol\" will be the sub-protocol "
+"agreed with the client."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketServer.xml:126
+msgid ""
+"Emitted when a client disconnects. [code]was_clean_close[/code] will be "
+"[code]true[/code] if the connection was shutdown cleanly."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketServer.xml:133
+msgid ""
+"Emitted when a new message is received.\n"
+"[b]Note:[/b] This signal is [i]not[/i] emitted when used as high-level "
+"multiplayer peer."
+msgstr ""
+
+#: doc/classes/World2D.xml:4
+msgid "Class that has everything pertaining to a 2D world."
+msgstr ""
+
+#: doc/classes/World2D.xml:7
+msgid ""
+"Class that has everything pertaining to a 2D world. A physics space, a "
+"visual scenario and a sound space. 2D nodes register their resources into "
+"the current 2D world."
+msgstr ""
+
+#: doc/classes/World2D.xml:16
+msgid ""
+"The [RID] of this world's canvas resource. Used by the [RenderingServer] for "
+"2D drawing."
+msgstr ""
+
+#: doc/classes/World2D.xml:19
+msgid ""
+"Direct access to the world's physics 2D space state. Used for querying "
+"current and potential collisions. Must only be accessed from the main thread "
+"within [code]_physics_process(delta)[/code]."
+msgstr ""
+
+#: doc/classes/World2D.xml:22
+msgid ""
+"The [RID] of this world's physics space resource. Used by the "
+"[PhysicsServer2D] for 2D physics, treating it as both a space and an area."
+msgstr ""
+
+#: doc/classes/World3D.xml:4
+msgid "Class that has everything pertaining to a world."
+msgstr ""
+
+#: doc/classes/World3D.xml:7
+msgid ""
+"Class that has everything pertaining to a world. A physics space, a visual "
+"scenario and a sound space. Node3D nodes register their resources into the "
+"current world."
+msgstr ""
+
+#: doc/classes/World3D.xml:18
+msgid ""
+"Direct access to the world's physics 3D space state. Used for querying "
+"current and potential collisions. Must only be accessed from within "
+"[code]_physics_process(delta)[/code]."
+msgstr ""
+
+#: doc/classes/World3D.xml:21
+msgid "The World3D's [Environment]."
+msgstr ""
+
+#: doc/classes/World3D.xml:24
+msgid ""
+"The World3D's fallback_environment will be used if the World3D's "
+"[Environment] fails or is missing."
+msgstr ""
+
+#: doc/classes/World3D.xml:27
+msgid "The World3D's visual scenario."
+msgstr ""
+
+#: doc/classes/World3D.xml:30
+msgid "The World3D's physics space."
+msgstr ""
+
+#: doc/classes/WorldEnvironment.xml:4
+msgid ""
+"Default environment properties for the entire scene (post-processing "
+"effects, lighting and background settings)."
+msgstr ""
+
+#: doc/classes/WorldEnvironment.xml:7
+msgid ""
+"The [WorldEnvironment] node is used to configure the default [Environment] "
+"for the scene.\n"
+"The parameters defined in the [WorldEnvironment] can be overridden by an "
+"[Environment] node set on the current [Camera3D]. Additionally, only one "
+"[WorldEnvironment] may be instanced in a given scene at a time.\n"
+"The [WorldEnvironment] allows the user to specify default lighting "
+"parameters (e.g. ambient lighting), various post-processing effects (e.g. "
+"SSAO, DOF, Tonemapping), and how to draw the background (e.g. solid color, "
+"skybox). Usually, these are added in order to improve the realism/color "
+"balance of the scene."
+msgstr ""
+
+#: doc/classes/WorldEnvironment.xml:20
+msgid ""
+"The [Environment] resource used by this [WorldEnvironment], defining the "
+"default properties."
+msgstr ""
+
+#: doc/classes/WorldMarginShape3D.xml:4
+msgid "Infinite plane shape for 3D collisions."
+msgstr ""
+
+#: doc/classes/WorldMarginShape3D.xml:7
+msgid ""
+"An infinite plane shape for 3D collisions. Note that the [Plane]'s normal "
+"matters; anything \"below\" the plane will collide with it. If the "
+"[WorldMarginShape3D] is used in a [PhysicsBody3D], it will cause colliding "
+"objects placed \"below\" it to teleport \"above\" the plane."
+msgstr ""
+
+#: doc/classes/WorldMarginShape3D.xml:15
+msgid "The [Plane] used by the [WorldMarginShape3D] for collision."
+msgstr ""
+
+#: doc/classes/X509Certificate.xml:4
+msgid "An X509 certificate (e.g. for SSL)."
+msgstr ""
+
+#: doc/classes/X509Certificate.xml:7
+msgid ""
+"The X509Certificate class represents an X509 certificate. Certificates can "
+"be loaded and saved like any other [Resource].\n"
+"They can be used as the server certificate in [method StreamPeerSSL."
+"accept_stream] (along with the proper [CryptoKey]), and to specify the only "
+"certificate that should be accepted when connecting to an SSL server via "
+"[method StreamPeerSSL.connect_to_stream].\n"
+"[b]Note:[/b] Not available in HTML5 exports."
+msgstr ""
+
+#: doc/classes/X509Certificate.xml:20
+msgid "Loads a certificate from [code]path[/code] (\"*.crt\" file)."
+msgstr ""
+
+#: doc/classes/X509Certificate.xml:29
+msgid ""
+"Saves a certificate to the given [code]path[/code] (should be a \"*.crt\" "
+"file)."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:4
+msgid ""
+"Low-level class for creating parsers for [url=https://en.wikipedia.org/wiki/"
+"XML]XML[/url] files."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:7
+msgid ""
+"This class can serve as base to make custom XML parsers. Since XML is a very "
+"flexible standard, this interface is low-level so it can be applied to any "
+"possible schema."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:16
+msgid "Gets the amount of attributes in the current element."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:25
+msgid ""
+"Gets the name of the attribute specified by the index in [code]idx[/code] "
+"argument."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:34
+msgid ""
+"Gets the value of the attribute specified by the index in [code]idx[/code] "
+"argument."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:41
+msgid "Gets the current line in the parsed file (currently not implemented)."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:50
+msgid ""
+"Gets the value of a certain attribute of the current element by name. This "
+"will raise an error if the element has no such attribute."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:59
+msgid ""
+"Gets the value of a certain attribute of the current element by name. This "
+"will return an empty [String] if the attribute is not found."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:66
+msgid ""
+"Gets the contents of a text node. This will raise an error in any other type "
+"of node."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:73
+msgid ""
+"Gets the name of the current element node. This will raise an error if the "
+"current node type is neither [constant NODE_ELEMENT] nor [constant "
+"NODE_ELEMENT_END]."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:80
+msgid ""
+"Gets the byte offset of the current node since the beginning of the file or "
+"buffer."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:87
+msgid ""
+"Gets the type of the current node. Compare with [enum NodeType] constants."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:96
+msgid "Check whether the current element has a certain attribute."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:103
+msgid ""
+"Check whether the current element is empty (this only works for completely "
+"empty tags, e.g. [code]<element \\>[/code])."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:112
+msgid "Opens an XML file for parsing. This returns an error code."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:121
+msgid "Opens an XML raw buffer for parsing. This returns an error code."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:128
+msgid "Reads the next node of the file. This returns an error code."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:137
+msgid ""
+"Moves the buffer cursor to a certain offset (since the beginning) and read "
+"the next node there. This returns an error code."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:144
+msgid ""
+"Skips the current section. If the node contains other elements, they will be "
+"ignored and the cursor will go to the closing of the current element."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:150
+msgid "There's no node (no file or buffer opened)."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:153
+msgid "Element (tag)."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:156
+msgid "End of element."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:159
+msgid "Text node."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:162
+msgid "Comment node."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:165
+msgid "CDATA content."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:168
+msgid "Unknown node."
+msgstr ""
+
+#: doc/classes/XRAnchor3D.xml:4
+msgid "An anchor point in AR space."
+msgstr ""
+
+#: doc/classes/XRAnchor3D.xml:7
+msgid ""
+"The [XRAnchor3D] point is a spatial node that maps a real world location "
+"identified by the AR platform to a position within the game world. For "
+"example, as long as plane detection in ARKit is on, ARKit will identify and "
+"update the position of planes (tables, floors, etc) and create anchors for "
+"them.\n"
+"This node is mapped to one of the anchors through its unique ID. When you "
+"receive a signal that a new anchor is available, you should add this node to "
+"your scene for that anchor. You can predefine nodes and set the ID; the "
+"nodes will simply remain on 0,0,0 until a plane is recognized.\n"
+"Keep in mind that, as long as plane detection is enabled, the size, placing "
+"and orientation of an anchor will be updated as the detection logic learns "
+"more about the real world out there especially if only part of the surface "
+"is in view."
+msgstr ""
+
+#: doc/classes/XRAnchor3D.xml:18
+msgid "Returns the name given to this anchor."
+msgstr ""
+
+#: doc/classes/XRAnchor3D.xml:25
+msgid ""
+"Returns [code]true[/code] if the anchor is being tracked and [code]false[/"
+"code] if no anchor with this ID is currently known."
+msgstr ""
+
+#: doc/classes/XRAnchor3D.xml:32
+msgid ""
+"If provided by the [XRInterface], this returns a mesh object for the anchor. "
+"For an anchor, this can be a shape related to the object being tracked or it "
+"can be a mesh that provides topology related to the anchor and can be used "
+"to create shadows/reflections on surfaces or for generating collision shapes."
+msgstr ""
+
+#: doc/classes/XRAnchor3D.xml:39
+msgid ""
+"Returns a plane aligned with our anchor; handy for intersection testing."
+msgstr ""
+
+#: doc/classes/XRAnchor3D.xml:46
+msgid ""
+"Returns the estimated size of the plane that was detected. Say when the "
+"anchor relates to a table in the real world, this is the estimated size of "
+"the surface of that table."
+msgstr ""
+
+#: doc/classes/XRAnchor3D.xml:52
+msgid ""
+"The anchor's ID. You can set this before the anchor itself exists. The first "
+"anchor gets an ID of [code]1[/code], the second an ID of [code]2[/code], "
+"etc. When anchors get removed, the engine can then assign the corresponding "
+"ID to new anchors. The most common situation where anchors \"disappear\" is "
+"when the AR server identifies that two anchors represent different parts of "
+"the same plane and merges them."
+msgstr ""
+
+#: doc/classes/XRAnchor3D.xml:60
+msgid ""
+"Emitted when the mesh associated with the anchor changes or when one becomes "
+"available. This is especially important for topology that is constantly "
+"being [code]mesh_updated[/code]."
+msgstr ""
+
+#: doc/classes/XRCamera3D.xml:4
+msgid ""
+"A camera node with a few overrules for AR/VR applied, such as location "
+"tracking."
+msgstr ""
+
+#: doc/classes/XRCamera3D.xml:7
+msgid ""
+"This is a helper spatial node for our camera; note that, if stereoscopic "
+"rendering is applicable (VR-HMD), most of the camera properties are ignored, "
+"as the HMD information overrides them. The only properties that can be "
+"trusted are the near and far planes.\n"
+"The position and orientation of this node is automatically updated by the XR "
+"Server to represent the location of the HMD if such tracking is available "
+"and can thus be used by game logic. Note that, in contrast to the XR "
+"Controller, the render thread has access to the most up-to-date tracking "
+"data of the HMD and the location of the XRCamera3D can lag a few "
+"milliseconds behind what is used for rendering as a result."
+msgstr ""
+
+#: doc/classes/XRCamera3D.xml:11 doc/classes/XRController3D.xml:12
+#: doc/classes/XRInterface.xml:11 doc/classes/XROrigin3D.xml:13
+#: doc/classes/XRPositionalTracker.xml:12 doc/classes/XRServer.xml:10
+msgid "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
+msgstr ""
+
+#: doc/classes/XRController3D.xml:4
+msgid "A spatial node representing a spatially-tracked controller."
+msgstr ""
+
+#: doc/classes/XRController3D.xml:7
+msgid ""
+"This is a helper spatial node that is linked to the tracking of controllers. "
+"It also offers several handy passthroughs to the state of buttons and such "
+"on the controllers.\n"
+"Controllers are linked by their ID. You can create controller nodes before "
+"the controllers are available. If your game always uses two controllers (one "
+"for each hand), you can predefine the controllers with ID 1 and 2; they will "
+"become active as soon as the controllers are identified. If you expect "
+"additional controllers to be used, you should react to the signals and add "
+"XRController3D nodes to your scene.\n"
+"The position of the controller node is automatically updated by the "
+"[XRServer]. This makes this node ideal to add child nodes to visualize the "
+"controller."
+msgstr ""
+
+#: doc/classes/XRController3D.xml:19
+msgid ""
+"If active, returns the name of the associated controller if provided by the "
+"AR/VR SDK used."
+msgstr ""
+
+#: doc/classes/XRController3D.xml:26
+msgid ""
+"Returns the hand holding this controller, if known. See [enum "
+"XRPositionalTracker.TrackerHand]."
+msgstr ""
+
+#: doc/classes/XRController3D.xml:33
+msgid ""
+"Returns [code]true[/code] if the bound controller is active. XR systems "
+"attempt to track active controllers."
+msgstr ""
+
+#: doc/classes/XRController3D.xml:42
+msgid ""
+"Returns the value of the given axis for things like triggers, touchpads, "
+"etc. that are embedded into the controller."
+msgstr ""
+
+#: doc/classes/XRController3D.xml:49
+msgid ""
+"Returns the ID of the joystick object bound to this. Every controller "
+"tracked by the [XRServer] that has buttons and axis will also be registered "
+"as a joystick within Godot. This means that all the normal joystick tracking "
+"and input mapping will work for buttons and axis found on the AR/VR "
+"controllers. This ID is purely offered as information so you can link up the "
+"controller with its joystick entry."
+msgstr ""
+
+#: doc/classes/XRController3D.xml:56
+msgid ""
+"If provided by the [XRInterface], this returns a mesh associated with the "
+"controller. This can be used to visualize the controller."
+msgstr ""
+
+#: doc/classes/XRController3D.xml:65
+msgid ""
+"Returns [code]true[/code] if the button at index [code]button[/code] is "
+"pressed. See [enum JoyButtonList]."
+msgstr ""
+
+#: doc/classes/XRController3D.xml:71
+msgid ""
+"The controller's ID.\n"
+"A controller ID of 0 is unbound and will always result in an inactive node. "
+"Controller ID 1 is reserved for the first controller that identifies itself "
+"as the left-hand controller and ID 2 is reserved for the first controller "
+"that identifies itself as the right-hand controller.\n"
+"For any other controller that the [XRServer] detects, we continue with "
+"controller ID 3.\n"
+"When a controller is turned off, its slot is freed. This ensures controllers "
+"will keep the same ID even when controllers with lower IDs are turned off."
+msgstr ""
+
+#: doc/classes/XRController3D.xml:77
+msgid ""
+"The degree to which the controller vibrates. Ranges from [code]0.0[/code] to "
+"[code]1.0[/code] with precision [code].01[/code]. If changed, updates "
+"[member XRPositionalTracker.rumble] accordingly.\n"
+"This is a useful property to animate if you want the controller to vibrate "
+"for a limited duration."
+msgstr ""
+
+#: doc/classes/XRController3D.xml:86
+msgid "Emitted when a button on this controller is pressed."
+msgstr ""
+
+#: doc/classes/XRController3D.xml:93
+msgid "Emitted when a button on this controller is released."
+msgstr ""
+
+#: doc/classes/XRController3D.xml:100
+msgid ""
+"Emitted when the mesh associated with the controller changes or when one "
+"becomes available. Generally speaking this will be a static mesh after "
+"becoming available."
+msgstr ""
+
+#: doc/classes/XRInterface.xml:4
+msgid "Base class for an AR/VR interface implementation."
+msgstr ""
+
+#: doc/classes/XRInterface.xml:7
+msgid ""
+"This class needs to be implemented to make an AR or VR platform available to "
+"Godot and these should be implemented as C++ modules or GDNative modules "
+"(note that for GDNative the subclass XRScriptInterface should be used). Part "
+"of the interface is exposed to GDScript so you can detect, enable and "
+"configure an AR or VR platform.\n"
+"Interfaces should be written in such a way that simply enabling them will "
+"give us a working setup. You can query the available interfaces through "
+"[XRServer]."
+msgstr ""
+
+#: doc/classes/XRInterface.xml:18
+msgid ""
+"If this is an AR interface that requires displaying a camera feed as the "
+"background, this method returns the feed ID in the [CameraServer] for this "
+"interface."
+msgstr ""
+
+#: doc/classes/XRInterface.xml:25
+msgid ""
+"Returns a combination of [enum Capabilities] flags providing information "
+"about the capabilities of this interface."
+msgstr ""
+
+#: doc/classes/XRInterface.xml:32
+msgid "Returns the name of this interface (OpenVR, OpenHMD, ARKit, etc)."
+msgstr ""
+
+#: doc/classes/XRInterface.xml:39
+msgid ""
+"Returns the resolution at which we should render our intermediate results "
+"before things like lens distortion are applied by the VR platform."
+msgstr ""
+
+#: doc/classes/XRInterface.xml:46
+msgid ""
+"If supported, returns the status of our tracking. This will allow you to "
+"provide feedback to the user whether there are issues with positional "
+"tracking."
+msgstr ""
+
+#: doc/classes/XRInterface.xml:53
+msgid ""
+"Call this to initialize this interface. The first interface that is "
+"initialized is identified as the primary interface and it will be used for "
+"rendering output.\n"
+"After initializing the interface you want to use you then need to enable the "
+"AR/VR mode of a viewport and rendering should commence.\n"
+"[b]Note:[/b] You must enable the AR/VR mode on the main viewport for any "
+"device that uses the main output of Godot, such as for mobile VR.\n"
+"If you do this for a platform that handles its own output (such as OpenVR) "
+"Godot will show just one eye without distortion on screen. Alternatively, "
+"you can add a separate viewport node to your scene and enable AR/VR on that "
+"viewport. It will be used to output to the HMD, leaving you free to do "
+"anything you like in the main window, such as using a separate camera as a "
+"spectator camera or rendering something completely different.\n"
+"While currently not used, you can activate additional interfaces. You may "
+"wish to do this if you want to track controllers from other platforms. "
+"However, at this point in time only one interface can render to an HMD."
+msgstr ""
+
+#: doc/classes/XRInterface.xml:64
+msgid ""
+"Returns [code]true[/code] if the current output of this interface is in "
+"stereo."
+msgstr ""
+
+#: doc/classes/XRInterface.xml:71
+msgid "Turns the interface off."
+msgstr ""
+
+#: doc/classes/XRInterface.xml:77
+msgid "On an AR interface, [code]true[/code] if anchor detection is enabled."
+msgstr ""
+
+#: doc/classes/XRInterface.xml:80
+msgid "[code]true[/code] if this interface been initialized."
+msgstr ""
+
+#: doc/classes/XRInterface.xml:83
+msgid "[code]true[/code] if this is the primary interface."
+msgstr ""
+
+#: doc/classes/XRInterface.xml:88
+msgid "No XR capabilities."
+msgstr ""
+
+#: doc/classes/XRInterface.xml:91
+msgid ""
+"This interface can work with normal rendering output (non-HMD based AR)."
+msgstr ""
+
+#: doc/classes/XRInterface.xml:94
+msgid "This interface supports stereoscopic rendering."
+msgstr ""
+
+#: doc/classes/XRInterface.xml:97
+msgid "This interface supports AR (video background and real world tracking)."
+msgstr ""
+
+#: doc/classes/XRInterface.xml:100
+msgid ""
+"This interface outputs to an external device. If the main viewport is used, "
+"the on screen output is an unmodified buffer of either the left or right eye "
+"(stretched if the viewport size is not changed to the same aspect ratio of "
+"[method get_render_targetsize]). Using a separate viewport node frees up the "
+"main viewport for other purposes."
+msgstr ""
+
+#: doc/classes/XRInterface.xml:103
+msgid ""
+"Mono output, this is mostly used internally when retrieving positioning "
+"information for our camera node or when stereo scopic rendering is not "
+"supported."
+msgstr ""
+
+#: doc/classes/XRInterface.xml:106
+msgid ""
+"Left eye output, this is mostly used internally when rendering the image for "
+"the left eye and obtaining positioning and projection information."
+msgstr ""
+
+#: doc/classes/XRInterface.xml:109
+msgid ""
+"Right eye output, this is mostly used internally when rendering the image "
+"for the right eye and obtaining positioning and projection information."
+msgstr ""
+
+#: doc/classes/XRInterface.xml:112
+msgid "Tracking is behaving as expected."
+msgstr ""
+
+#: doc/classes/XRInterface.xml:115
+msgid ""
+"Tracking is hindered by excessive motion (the player is moving faster than "
+"tracking can keep up)."
+msgstr ""
+
+#: doc/classes/XRInterface.xml:118
+msgid ""
+"Tracking is hindered by insufficient features, it's too dark (for camera-"
+"based tracking), player is blocked, etc."
+msgstr ""
+
+#: doc/classes/XRInterface.xml:121
+msgid ""
+"We don't know the status of the tracking or this interface does not provide "
+"feedback."
+msgstr ""
+
+#: doc/classes/XRInterface.xml:124
+msgid ""
+"Tracking is not functional (camera not plugged in or obscured, lighthouses "
+"turned off, etc.)."
+msgstr ""
+
+#: modules/gdnative/doc_classes/XRInterfaceGDNative.xml:4
+msgid "GDNative wrapper for an XR interface."
+msgstr ""
+
+#: modules/gdnative/doc_classes/XRInterfaceGDNative.xml:7
+msgid ""
+"This is a wrapper class for GDNative implementations of the XR interface. To "
+"use a GDNative XR interface, simply instantiate this object and set your "
+"GDNative library containing the XR interface implementation."
+msgstr ""
+
+#: doc/classes/XROrigin3D.xml:4
+msgid "The origin point in AR/VR."
+msgstr ""
+
+#: doc/classes/XROrigin3D.xml:7
+msgid ""
+"This is a special node within the AR/VR system that maps the physical "
+"location of the center of our tracking space to the virtual location within "
+"our game world.\n"
+"There should be only one of these nodes in your scene and you must have one. "
+"All the XRCamera3D, XRController3D and XRAnchor3D nodes should be direct "
+"children of this node for spatial tracking to work correctly.\n"
+"It is the position of this node that you update when your character needs to "
+"move through your game world while we're not moving in the real world. "
+"Movement in the real world is always in relation to this origin point.\n"
+"For example, if your character is driving a car, the XROrigin3D node should "
+"be a child node of this car. Or, if you're implementing a teleport system to "
+"move your character, you should change the position of this node."
+msgstr ""
+
+#: doc/classes/XROrigin3D.xml:19
+msgid ""
+"Allows you to adjust the scale to your game's units. Most AR/VR platforms "
+"assume a scale of 1 game world unit = 1 real world meter.\n"
+"[b]Note:[/b] This method is a passthrough to the [XRServer] itself."
+msgstr ""
+
+#: doc/classes/XRPositionalTracker.xml:4
+msgid "A tracked object."
+msgstr ""
+
+#: doc/classes/XRPositionalTracker.xml:7
+msgid ""
+"An instance of this object represents a device that is tracked, such as a "
+"controller or anchor point. HMDs aren't represented here as they are handled "
+"internally.\n"
+"As controllers are turned on and the AR/VR interface detects them, instances "
+"of this object are automatically added to this list of active tracking "
+"objects accessible through the [XRServer].\n"
+"The [XRController3D] and [XRAnchor3D] both consume objects of this type and "
+"should be used in your project. The positional trackers are just under-the-"
+"hood objects that make this all work. These are mostly exposed so that "
+"GDNative-based interfaces can interact with them."
+msgstr ""
+
+#: doc/classes/XRPositionalTracker.xml:19
+msgid ""
+"Returns the hand holding this tracker, if known. See [enum TrackerHand] "
+"constants."
+msgstr ""
+
+#: doc/classes/XRPositionalTracker.xml:26
+msgid ""
+"If this is a controller that is being tracked, the controller will also be "
+"represented by a joystick entry with this ID."
+msgstr ""
+
+#: doc/classes/XRPositionalTracker.xml:33
+msgid ""
+"Returns the mesh related to a controller or anchor point if one is available."
+msgstr ""
+
+#: doc/classes/XRPositionalTracker.xml:40
+msgid "Returns the controller or anchor point's name if available."
+msgstr ""
+
+#: doc/classes/XRPositionalTracker.xml:47
+msgid "Returns the controller's orientation matrix."
+msgstr ""
+
+#: doc/classes/XRPositionalTracker.xml:54
+msgid "Returns the world-space controller position."
+msgstr ""
+
+#: doc/classes/XRPositionalTracker.xml:61
+msgid ""
+"Returns the internal tracker ID. This uniquely identifies the tracker per "
+"tracker type and matches the ID you need to specify for nodes such as the "
+"[XRController3D] and [XRAnchor3D] nodes."
+msgstr ""
+
+#: doc/classes/XRPositionalTracker.xml:68
+msgid "Returns [code]true[/code] if this device tracks orientation."
+msgstr ""
+
+#: doc/classes/XRPositionalTracker.xml:75
+msgid "Returns [code]true[/code] if this device tracks position."
+msgstr ""
+
+#: doc/classes/XRPositionalTracker.xml:84
+msgid "Returns the transform combining this device's orientation and position."
+msgstr ""
+
+#: doc/classes/XRPositionalTracker.xml:91
+msgid "Returns the tracker's type."
+msgstr ""
+
+#: doc/classes/XRPositionalTracker.xml:97
+msgid ""
+"The degree to which the tracker rumbles. Ranges from [code]0.0[/code] to "
+"[code]1.0[/code] with precision [code].01[/code]."
+msgstr ""
+
+#: doc/classes/XRPositionalTracker.xml:102
+msgid "The hand this tracker is held in is unknown or not applicable."
+msgstr ""
+
+#: doc/classes/XRPositionalTracker.xml:105
+msgid "This tracker is the left hand controller."
+msgstr ""
+
+#: doc/classes/XRPositionalTracker.xml:108
+msgid "This tracker is the right hand controller."
+msgstr ""
+
+#: doc/classes/XRServer.xml:4
+msgid "Server for AR and VR features."
+msgstr ""
+
+#: doc/classes/XRServer.xml:7
+msgid ""
+"The AR/VR server is the heart of our Advanced and Virtual Reality solution "
+"and handles all the processing."
+msgstr ""
+
+#: doc/classes/XRServer.xml:21
+msgid ""
+"This is an important function to understand correctly. AR and VR platforms "
+"all handle positioning slightly differently.\n"
+"For platforms that do not offer spatial tracking, our origin point (0,0,0) "
+"is the location of our HMD, but you have little control over the direction "
+"the player is facing in the real world.\n"
+"For platforms that do offer spatial tracking, our origin point depends very "
+"much on the system. For OpenVR, our origin point is usually the center of "
+"the tracking space, on the ground. For other platforms, it's often the "
+"location of the tracking camera.\n"
+"This method allows you to center your tracker on the location of the HMD. It "
+"will take the current location of the HMD and use that to adjust all your "
+"tracking data; in essence, realigning the real world to your player's "
+"current position in the game world.\n"
+"For this method to produce usable results, tracking information must be "
+"available. This often takes a few frames after starting your game.\n"
+"You should call this method after a few seconds have passed. For instance, "
+"when the user requests a realignment of the display holding a designated "
+"button on a controller for a short period of time, or when implementing a "
+"teleport mechanism."
+msgstr ""
+
+#: doc/classes/XRServer.xml:35
+msgid ""
+"Finds an interface by its name. For instance, if your project uses "
+"capabilities of an AR/VR platform, you can find the interface for that "
+"platform by name and initialize it."
+msgstr ""
+
+#: doc/classes/XRServer.xml:42
+msgid "Returns the primary interface's transformation."
+msgstr ""
+
+#: doc/classes/XRServer.xml:51
+msgid ""
+"Returns the interface registered at a given index in our list of interfaces."
+msgstr ""
+
+#: doc/classes/XRServer.xml:58
+msgid ""
+"Returns the number of interfaces currently registered with the AR/VR server. "
+"If your project supports multiple AR/VR platforms, you can look through the "
+"available interface, and either present the user with a selection or simply "
+"try to initialize each interface and use the first one that returns "
+"[code]true[/code]."
+msgstr ""
+
+#: doc/classes/XRServer.xml:65
+msgid ""
+"Returns a list of available interfaces the ID and name of each interface."
+msgstr ""
+
+#: doc/classes/XRServer.xml:72
+msgid ""
+"Returns the absolute timestamp (in μs) of the last [XRServer] commit of the "
+"AR/VR eyes to [RenderingServer]. The value comes from an internal call to "
+"[method OS.get_ticks_usec]."
+msgstr ""
+
+#: doc/classes/XRServer.xml:79
+msgid ""
+"Returns the duration (in μs) of the last frame. This is computed as the "
+"difference between [method get_last_commit_usec] and [method "
+"get_last_process_usec] when committing."
+msgstr ""
+
+#: doc/classes/XRServer.xml:86
+msgid ""
+"Returns the absolute timestamp (in μs) of the last [XRServer] process "
+"callback. The value comes from an internal call to [method OS."
+"get_ticks_usec]."
+msgstr ""
+
+#: doc/classes/XRServer.xml:93
+msgid ""
+"Returns the reference frame transform. Mostly used internally and exposed "
+"for GDNative build interfaces."
+msgstr ""
+
+#: doc/classes/XRServer.xml:102
+msgid "Returns the positional tracker at the given ID."
+msgstr ""
+
+#: doc/classes/XRServer.xml:109
+msgid "Returns the number of trackers currently registered."
+msgstr ""
+
+#: doc/classes/XRServer.xml:115
+msgid "The primary [XRInterface] currently bound to the [XRServer]."
+msgstr ""
+
+#: doc/classes/XRServer.xml:118
+msgid ""
+"Allows you to adjust the scale to your game's units. Most AR/VR platforms "
+"assume a scale of 1 game world unit = 1 real world meter."
+msgstr ""
+
+#: doc/classes/XRServer.xml:126
+msgid "Emitted when a new interface has been added."
+msgstr ""
+
+#: doc/classes/XRServer.xml:133
+msgid "Emitted when an interface is removed."
+msgstr ""
+
+#: doc/classes/XRServer.xml:144
+msgid ""
+"Emitted when a new tracker has been added. If you don't use a fixed number "
+"of controllers or if you're using [XRAnchor3D]s for an AR solution, it is "
+"important to react to this signal to add the appropriate [XRController3D] or "
+"[XRAnchor3D] nodes related to this new tracker."
+msgstr ""
+
+#: doc/classes/XRServer.xml:155
+msgid ""
+"Emitted when a tracker is removed. You should remove any [XRController3D] or "
+"[XRAnchor3D] points if applicable. This is not mandatory, the nodes simply "
+"become inactive and will be made active again when a new tracker becomes "
+"available (i.e. a new controller is switched on that takes the place of the "
+"previous one)."
+msgstr ""
+
+#: doc/classes/XRServer.xml:161
+msgid "The tracker tracks the location of a controller."
+msgstr ""
+
+#: doc/classes/XRServer.xml:164
+msgid "The tracker tracks the location of a base station."
+msgstr ""
+
+#: doc/classes/XRServer.xml:167
+msgid "The tracker tracks the location and size of an AR anchor."
+msgstr ""
+
+#: doc/classes/XRServer.xml:170
+msgid "Used internally to filter trackers of any known type."
+msgstr ""
+
+#: doc/classes/XRServer.xml:173
+msgid "Used internally if we haven't set the tracker type yet."
+msgstr ""
+
+#: doc/classes/XRServer.xml:176
+msgid "Used internally to select all trackers."
+msgstr ""
+
+#: doc/classes/XRServer.xml:179
+msgid ""
+"Fully reset the orientation of the HMD. Regardless of what direction the "
+"user is looking to in the real world. The user will look dead ahead in the "
+"virtual world."
+msgstr ""
+
+#: doc/classes/XRServer.xml:182
+msgid ""
+"Resets the orientation but keeps the tilt of the device. So if we're looking "
+"down, we keep looking down but heading will be reset."
+msgstr ""
+
+#: doc/classes/XRServer.xml:185
+msgid ""
+"Does not reset the orientation of the HMD, only the position of the player "
+"gets centered."
+msgstr ""
+
+#: doc/classes/YSort.xml:4
+msgid "Sort all child nodes based on their Y positions."
+msgstr ""
+
+#: doc/classes/YSort.xml:7
+msgid ""
+"Sort all child nodes based on their Y positions. The child node must inherit "
+"from [CanvasItem] for it to be sorted. Nodes that have a higher Y position "
+"will be drawn later, so they will appear on top of nodes that have a lower Y "
+"position.\n"
+"Nesting of YSort nodes is possible. Children YSort nodes will be sorted in "
+"the same space as the parent YSort, allowing to better organize a scene or "
+"divide it in multiple ones, yet keep the unique sorting."
+msgstr ""
+
+#: doc/classes/YSort.xml:16
+msgid ""
+"If [code]true[/code], child nodes are sorted, otherwise sorting is disabled."
+msgstr ""
diff --git a/doc/translations/fi.po b/doc/translations/fi.po
index 0a9b21aa5a..3163a6131f 100644
--- a/doc/translations/fi.po
+++ b/doc/translations/fi.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Godot Engine class reference\n"
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
-"PO-Revision-Date: 2020-05-24 15:13+0000\n"
+"PO-Revision-Date: 2020-06-26 06:10+0000\n"
"Last-Translator: Tapani Niemi <tapani.niemi@kapsi.fi>\n"
"Language-Team: Finnish <https://hosted.weblate.org/projects/godot-engine/"
"godot-class-reference/fi/>\n"
@@ -17,7 +17,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8-bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
-"X-Generator: Weblate 4.1-dev\n"
+"X-Generator: Weblate 4.2-dev\n"
#: doc/tools/makerst.py
msgid "Description"
@@ -109,8 +109,8 @@ msgstr ""
#: modules/gdscript/doc_classes/@GDScript.xml:55
msgid ""
-"Returns the absolute value of parameter [code]s[/code] (i.e. unsigned value, "
-"works for integer and float).\n"
+"Returns the absolute value of parameter [code]s[/code] (i.e. positive "
+"value).\n"
"[codeblock]\n"
"# a is 1\n"
"a = abs(-1)\n"
@@ -165,7 +165,7 @@ msgid ""
"angle from an angle's tangent in trigonometry: [code]atan(tan(angle)) == "
"angle[/code].\n"
"The method cannot know in which quadrant the angle should fall. See [method "
-"atan2] if you always want an exact angle.\n"
+"atan2] if you have both [code]y[/code] and [code]x[/code].\n"
"[codeblock]\n"
"a = atan(0.5) # a is 0.463648\n"
"[/codeblock]"
@@ -176,12 +176,13 @@ msgid ""
"Returns the arc tangent of [code]y/x[/code] in radians. Use to get the angle "
"of tangent [code]y/x[/code]. To compute the value, the method takes into "
"account the sign of both arguments in order to determine the quadrant.\n"
+"Important note: The Y coordinate comes first, by convention.\n"
"[codeblock]\n"
"a = atan2(0, -1) # a is 3.141593\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:143
+#: modules/gdscript/doc_classes/@GDScript.xml:144
msgid ""
"Decodes a byte array back to a value. When [code]allow_objects[/code] is "
"[code]true[/code] decoding objects is allowed.\n"
@@ -190,7 +191,7 @@ msgid ""
"avoid potential security threats (remote code execution)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:155
+#: modules/gdscript/doc_classes/@GDScript.xml:156
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:145
msgid ""
"Converts a 2D point expressed in the cartesian coordinate system (X and Y "
@@ -198,17 +199,17 @@ msgid ""
"angle)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:164
+#: modules/gdscript/doc_classes/@GDScript.xml:165
msgid ""
-"Rounds [code]s[/code] upward, returning the smallest integral value that is "
-"not less than [code]s[/code].\n"
+"Rounds [code]s[/code] upward (towards positive infinity), returning the "
+"smallest whole number that is not less than [code]s[/code].\n"
"[codeblock]\n"
"i = ceil(1.45) # i is 2\n"
"i = ceil(1.001) # i is 2\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:177
+#: modules/gdscript/doc_classes/@GDScript.xml:178
msgid ""
"Returns a character as a String of the given Unicode code point (which is "
"compatible with ASCII code).\n"
@@ -220,7 +221,7 @@ msgid ""
"This is the inverse of [method ord]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:196
+#: modules/gdscript/doc_classes/@GDScript.xml:197
msgid ""
"Clamps [code]value[/code] and returns a value not less than [code]min[/code] "
"and not more than [code]max[/code].\n"
@@ -235,7 +236,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:216
+#: modules/gdscript/doc_classes/@GDScript.xml:217
msgid ""
"Converts from a type to another in the best way possible. The [code]type[/"
"code] parameter uses the [enum Variant.Type] values.\n"
@@ -249,7 +250,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:233
+#: modules/gdscript/doc_classes/@GDScript.xml:234
msgid ""
"Returns the cosine of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -259,7 +260,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:247
+#: modules/gdscript/doc_classes/@GDScript.xml:248
msgid ""
"Returns the hyperbolic cosine of [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -268,11 +269,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:260
+#: modules/gdscript/doc_classes/@GDScript.xml:261
msgid "Converts from decibels to linear energy (audio)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:273
+#: modules/gdscript/doc_classes/@GDScript.xml:274
msgid ""
"Returns the result of [code]value[/code] decreased by [code]step[/code] * "
"[code]amount[/code].\n"
@@ -282,42 +283,44 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:286
+#: modules/gdscript/doc_classes/@GDScript.xml:287
msgid ""
-"Returns degrees converted to radians.\n"
+"Converts an angle expressed in degrees to radians.\n"
"[codeblock]\n"
"# r is 3.141593\n"
"r = deg2rad(180)\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:299
+#: modules/gdscript/doc_classes/@GDScript.xml:300
msgid ""
"Converts a previously converted instance to a dictionary, back into an "
"instance. Useful for deserializing."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:310
-#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:90
+#: modules/gdscript/doc_classes/@GDScript.xml:311
msgid ""
-"Easing function, based on exponent. 0 is constant, 1 is linear, 0 to 1 is "
-"ease-in, 1+ is ease out. Negative values are in-out/out in."
+"Easing function, based on exponent. The curve values are: 0 is constant, 1 "
+"is linear, 0 to 1 is ease-in, 1+ is ease out. Negative values are in-out/out "
+"in."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:319
+#: modules/gdscript/doc_classes/@GDScript.xml:320
msgid ""
"The natural exponential function. It raises the mathematical constant [b]e[/"
"b] to the power of [code]s[/code] and returns it.\n"
-"[b]e[/b] has an approximate value of 2.71828.\n"
+"[b]e[/b] has an approximate value of 2.71828, and can be obtained with "
+"[code]exp(1)[/code].\n"
"For exponents to other bases use the method [method pow].\n"
"[codeblock]\n"
"a = exp(2) # Approximately 7.39\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:333
+#: modules/gdscript/doc_classes/@GDScript.xml:334
msgid ""
-"Rounds [code]s[/code] to the closest smaller integer and returns it.\n"
+"Rounds [code]s[/code] downward (towards negative infinity), returning the "
+"largest whole number that is not more than [code]s[/code].\n"
"[codeblock]\n"
"# a is 2.0\n"
"a = floor(2.99)\n"
@@ -328,7 +331,7 @@ msgid ""
"use [code]int(s)[/code] directly."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:351
+#: modules/gdscript/doc_classes/@GDScript.xml:352
msgid ""
"Returns the floating-point remainder of [code]a/b[/code], keeping the sign "
"of [code]a[/code].\n"
@@ -339,7 +342,7 @@ msgid ""
"For the integer remainder operation, use the % operator."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:367
+#: modules/gdscript/doc_classes/@GDScript.xml:368
msgid ""
"Returns the floating-point modulus of [code]a/b[/code] that wraps equally in "
"positive and negative.\n"
@@ -365,7 +368,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:398
+#: modules/gdscript/doc_classes/@GDScript.xml:399
msgid ""
"Returns a reference to the specified function [code]funcname[/code] in the "
"[code]instance[/code] node. As functions aren't first-class objects in "
@@ -380,7 +383,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:412
+#: modules/gdscript/doc_classes/@GDScript.xml:413
msgid ""
"Returns an array of dictionaries representing the current call stack.\n"
"[codeblock]\n"
@@ -400,7 +403,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:435
+#: modules/gdscript/doc_classes/@GDScript.xml:436
msgid ""
"Returns the integer hash of the variable passed.\n"
"[codeblock]\n"
@@ -408,7 +411,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:447
+#: modules/gdscript/doc_classes/@GDScript.xml:448
msgid ""
"Returns the passed instance converted to a dictionary (useful for "
"serializing).\n"
@@ -426,7 +429,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:468
+#: modules/gdscript/doc_classes/@GDScript.xml:469
msgid ""
"Returns the Object that corresponds to [code]instance_id[/code]. All Objects "
"have a unique instance ID.\n"
@@ -439,7 +442,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:488
+#: modules/gdscript/doc_classes/@GDScript.xml:489
msgid ""
"Returns a normalized value considering the given range. This is the opposite "
"of [method lerp].\n"
@@ -453,33 +456,41 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:506
+#: modules/gdscript/doc_classes/@GDScript.xml:507
msgid ""
"Returns [code]true[/code] if [code]a[/code] and [code]b[/code] are "
-"approximately equal to each other."
+"approximately equal to each other.\n"
+"Here, approximately equal means that [code]a[/code] and [code]b[/code] are "
+"within a small internal epsilon of each other, which scales with the "
+"magnitude of the numbers.\n"
+"Infinity values of the same sign are considered equal."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:515
+#: modules/gdscript/doc_classes/@GDScript.xml:518
msgid ""
"Returns whether [code]s[/code] is an infinity value (either positive "
"infinity or negative infinity)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:524
+#: modules/gdscript/doc_classes/@GDScript.xml:527
msgid ""
"Returns whether [code]instance[/code] is a valid object (e.g. has not been "
"deleted from memory)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:533
-msgid "Returns whether [code]s[/code] is a NaN (Not-A-Number) value."
+#: modules/gdscript/doc_classes/@GDScript.xml:536
+msgid ""
+"Returns whether [code]s[/code] is a NaN (\"Not a Number\" or invalid) value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:542
-msgid "Returns [code]true[/code] if [code]s[/code] is zero or almost zero."
+#: modules/gdscript/doc_classes/@GDScript.xml:545
+msgid ""
+"Returns [code]true[/code] if [code]s[/code] is zero or almost zero.\n"
+"This method is faster than using [method is_equal_approx] with one value as "
+"zero."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:551
+#: modules/gdscript/doc_classes/@GDScript.xml:555
msgid ""
"Returns length of Variant [code]var[/code]. Length is the character count of "
"String, element count of Array, size of Dictionary, etc.\n"
@@ -490,7 +501,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:569
+#: modules/gdscript/doc_classes/@GDScript.xml:573
msgid ""
"Linearly interpolates between two values by a normalized value. This is the "
"opposite of [method inverse_lerp].\n"
@@ -505,7 +516,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:588
+#: modules/gdscript/doc_classes/@GDScript.xml:592
msgid ""
"Linearly interpolates between two angles (in radians) by a normalized "
"value.\n"
@@ -522,7 +533,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:607
+#: modules/gdscript/doc_classes/@GDScript.xml:611
msgid ""
"Converts from linear energy to decibels (audio). This can be used to "
"implement volume sliders that behave as expected (since volume isn't "
@@ -538,20 +549,28 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:622
+#: modules/gdscript/doc_classes/@GDScript.xml:626
msgid ""
-"Loads a resource from the filesystem located at [code]path[/code].\n"
+"Loads a resource from the filesystem located at [code]path[/code]. The "
+"resource is loaded on the method call (unless it's referenced already "
+"elsewhere, e.g. in another script or in the scene), which might cause slight "
+"delay, especially when loading scenes. To avoid unnecessary delays when "
+"loading something multiple times, either store the resource in a variable or "
+"use [method preload].\n"
"[b]Note:[/b] Resource paths can be obtained by right-clicking on a resource "
-"in the FileSystem dock and choosing [b]Copy Path[/b].\n"
+"in the FileSystem dock and choosing \"Copy Path\" or by dragging the file "
+"from the FileSystem dock into the script.\n"
"[codeblock]\n"
-"# Load a scene called main located in the root of the project directory.\n"
-"var main = load(\"res://main.tscn\")\n"
+"# Load a scene called main located in the root of the project directory and "
+"cache it in a variable.\n"
+"var main = load(\"res://main.tscn\") # main will contain a PackedScene "
+"resource.\n"
"[/codeblock]\n"
"[b]Important:[/b] The path must be absolute, a local path will just return "
"[code]null[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:637
+#: modules/gdscript/doc_classes/@GDScript.xml:641
msgid ""
"Natural logarithm. The amount of time needed to reach a certain level of "
"continuous growth.\n"
@@ -559,10 +578,12 @@ msgid ""
"calculators, which uses a base 10 logarithm.\n"
"[codeblock]\n"
"log(10) # Returns 2.302585\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] The logarithm of [code]0[/code] returns [code]-inf[/code], "
+"while negative values return [code]-nan[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:652
+#: modules/gdscript/doc_classes/@GDScript.xml:657
msgid ""
"Returns the maximum of two values.\n"
"[codeblock]\n"
@@ -571,7 +592,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:667
+#: modules/gdscript/doc_classes/@GDScript.xml:672
msgid ""
"Returns the minimum of two values.\n"
"[codeblock]\n"
@@ -580,27 +601,39 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:684
+#: modules/gdscript/doc_classes/@GDScript.xml:689
msgid ""
"Moves [code]from[/code] toward [code]to[/code] by the [code]delta[/code] "
"value.\n"
"Use a negative [code]delta[/code] value to move away.\n"
"[codeblock]\n"
+"move_toward(5, 10, 4) # Returns 9\n"
"move_toward(10, 5, 4) # Returns 6\n"
+"move_toward(10, 5, -1.5) # Returns 11.5\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:697
+#: modules/gdscript/doc_classes/@GDScript.xml:704
msgid ""
-"Returns the nearest larger power of 2 for integer [code]value[/code].\n"
+"Returns the nearest equal or larger power of 2 for integer [code]value[/"
+"code].\n"
+"In other words, returns the smallest value [code]a[/code] where [code]a = "
+"pow(2, n)[/code] such that [code]value <= a[/code] for some non-negative "
+"integer [code]n[/code].\n"
"[codeblock]\n"
"nearest_po2(3) # Returns 4\n"
"nearest_po2(4) # Returns 4\n"
"nearest_po2(5) # Returns 8\n"
-"[/codeblock]"
+"\n"
+"nearest_po2(0) # Returns 0 (this may not be what you expect)\n"
+"nearest_po2(-1) # Returns 0 (this may not be what you expect)\n"
+"[/codeblock]\n"
+"[b]WARNING:[/b] Due to the way it is implemented, this function returns "
+"[code]0[/code] rather than [code]1[/code] for non-positive values of "
+"[code]value[/code] (in reality, 1 is the smallest integer power of 2)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:711
+#: modules/gdscript/doc_classes/@GDScript.xml:723
msgid ""
"Returns an integer representing the Unicode code point of the given Unicode "
"character [code]char[/code].\n"
@@ -612,27 +645,28 @@ msgid ""
"This is the inverse of [method char]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:726
+#: modules/gdscript/doc_classes/@GDScript.xml:738
msgid ""
-"Parse JSON text to a Variant (use [method typeof] to check if it is what you "
-"expect).\n"
-"Be aware that the JSON specification does not define integer or float types, "
-"but only a number type. Therefore, parsing a JSON text will convert all "
-"numerical values to [float] types.\n"
-"Note that JSON objects do not preserve key order like Godot dictionaries, "
-"thus you should not rely on keys being in a certain order if a dictionary is "
-"constructed from JSON. In contrast, JSON arrays retain the order of their "
+"Parse JSON text to a Variant. (Use [method typeof] to check if the Variant's "
+"type is what you expect.)\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, parsing a JSON text will convert "
+"all numerical values to [float] types.\n"
+"[b]Note:[/b] JSON objects do not preserve key order like Godot dictionaries, "
+"thus, you should not rely on keys being in a certain order if a dictionary "
+"is constructed from JSON. In contrast, JSON arrays retain the order of their "
"elements:\n"
"[codeblock]\n"
-"p = parse_json('[\"a\", \"b\", \"c\"]')\n"
-"if typeof(p) == TYPE_ARRAY:\n"
-" print(p[0]) # Prints a\n"
+"var p = JSON.parse('[\"hello\", \"world\", \"!\"]')\n"
+"if typeof(p.result) == TYPE_ARRAY:\n"
+" print(p.result[0]) # Prints \"hello\"\n"
"else:\n"
-" print(\"unexpected results\")\n"
-"[/codeblock]"
+" push_error(\"Unexpected results.\")\n"
+"[/codeblock]\n"
+"See also [JSON] for an alternative way to parse JSON text."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:746
+#: modules/gdscript/doc_classes/@GDScript.xml:759
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:142
msgid ""
"Converts a 2D point expressed in the polar coordinate system (a distance "
@@ -640,7 +674,7 @@ msgid ""
"cartesian coordinate system (X and Y axis)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:757
+#: modules/gdscript/doc_classes/@GDScript.xml:770
msgid ""
"Returns the integer modulus of [code]a/b[/code] that wraps equally in "
"positive and negative.\n"
@@ -666,7 +700,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:788
+#: modules/gdscript/doc_classes/@GDScript.xml:801
msgid ""
"Returns the result of [code]x[/code] raised to the power of [code]y[/code].\n"
"[codeblock]\n"
@@ -674,19 +708,23 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:800
+#: modules/gdscript/doc_classes/@GDScript.xml:813
msgid ""
-"Returns a resource from the filesystem that is loaded during script "
-"parsing.\n"
+"Returns a [Resource] from the filesystem located at [code]path[/code]. The "
+"resource is loaded during script parsing, i.e. is loaded with the script and "
+"[method preload] effectively acts as a reference to that resource. Note that "
+"the method requires a constant path. If you want to load a resource from a "
+"dynamic/variable path, use [method load].\n"
"[b]Note:[/b] Resource paths can be obtained by right clicking on a resource "
-"in the Assets Panel and choosing \"Copy Path\".\n"
+"in the Assets Panel and choosing \"Copy Path\" or by dragging the file from "
+"the FileSystem dock into the script.\n"
"[codeblock]\n"
-"# Load a scene called main located in the root of the project directory.\n"
-"var main = preload(\"res://main.tscn\")\n"
+"# Instance a scene.\n"
+"var diamond = preload(\"res://diamond.tscn\").instance()\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:812
+#: modules/gdscript/doc_classes/@GDScript.xml:825
msgid ""
"Converts one or more arguments to strings in the best way possible and "
"prints them to the console.\n"
@@ -696,11 +734,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:823
+#: modules/gdscript/doc_classes/@GDScript.xml:836
msgid "Like [method print], but prints only when used in debug mode."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:830
+#: modules/gdscript/doc_classes/@GDScript.xml:843
msgid ""
"Prints a stack track at code location, only works when running with debugger "
"turned on.\n"
@@ -710,7 +748,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:841
+#: modules/gdscript/doc_classes/@GDScript.xml:854
msgid ""
"Prints one or more arguments to strings in the best way possible to standard "
"error line.\n"
@@ -719,7 +757,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:851
+#: modules/gdscript/doc_classes/@GDScript.xml:864
msgid ""
"Prints one or more arguments to strings in the best way possible to console. "
"No newline is added at the end.\n"
@@ -733,7 +771,7 @@ msgid ""
"method, such as [method print]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:864
+#: modules/gdscript/doc_classes/@GDScript.xml:877
msgid ""
"Prints one or more arguments to the console with a space between each "
"argument.\n"
@@ -742,7 +780,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:874
+#: modules/gdscript/doc_classes/@GDScript.xml:887
msgid ""
"Prints one or more arguments to the console with a tab between each "
"argument.\n"
@@ -751,7 +789,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:886
+#: modules/gdscript/doc_classes/@GDScript.xml:899
msgid ""
"Pushes an error message to Godot's built-in debugger and to the OS "
"terminal.\n"
@@ -761,7 +799,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:898
+#: modules/gdscript/doc_classes/@GDScript.xml:911
msgid ""
"Pushes a warning message to Godot's built-in debugger and to the OS "
"terminal.\n"
@@ -771,15 +809,15 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:910
+#: modules/gdscript/doc_classes/@GDScript.xml:923
msgid ""
-"Converts from radians to degrees.\n"
+"Converts an angle expressed in radians to degrees.\n"
"[codeblock]\n"
"rad2deg(0.523599) # Returns 30\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:924
+#: modules/gdscript/doc_classes/@GDScript.xml:937
msgid ""
"Random range, any floating point value between [code]from[/code] and "
"[code]to[/code].\n"
@@ -788,7 +826,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:936
+#: modules/gdscript/doc_classes/@GDScript.xml:949
msgid ""
"Random from seed: pass a [code]seed[/code], and an array with both number "
"and new seed is returned. \"Seed\" here refers to the internal state of the "
@@ -796,7 +834,7 @@ msgid ""
"implementation is 64 bits."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:943
+#: modules/gdscript/doc_classes/@GDScript.xml:956
msgid ""
"Returns a random floating point value on the interval [code][0, 1][/code].\n"
"[codeblock]\n"
@@ -804,7 +842,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:953
+#: modules/gdscript/doc_classes/@GDScript.xml:966
msgid ""
"Returns a random unsigned 32 bit integer. Use remainder to obtain a random "
"value in the interval [code][0, N - 1][/code] (where N is smaller than "
@@ -817,7 +855,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:966
+#: modules/gdscript/doc_classes/@GDScript.xml:979
msgid ""
"Randomizes the seed (or the internal state) of the random number generator. "
"Current implementation reseeds using a number based on time.\n"
@@ -827,7 +865,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:977
+#: modules/gdscript/doc_classes/@GDScript.xml:990
msgid ""
"Returns an array with the given range. Range can be 1 argument N (0 to N-1), "
"two arguments (initial, final-1) or three arguments (initial, final-1, "
@@ -857,7 +895,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1017
+#: modules/gdscript/doc_classes/@GDScript.xml:1030
msgid ""
"Maps a [code]value[/code] from range [code][istart, istop][/code] to [code]"
"[ostart, ostop][/code].\n"
@@ -866,16 +904,16 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1029
+#: modules/gdscript/doc_classes/@GDScript.xml:1042
msgid ""
-"Returns the integral value that is nearest to [code]s[/code], with halfway "
-"cases rounded away from zero.\n"
+"Rounds [code]s[/code] to the nearest whole number, with halfway cases "
+"rounded away from zero.\n"
"[codeblock]\n"
"round(2.6) # Returns 3\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1041
+#: modules/gdscript/doc_classes/@GDScript.xml:1054
msgid ""
"Sets seed for the random number generator.\n"
"[codeblock]\n"
@@ -884,7 +922,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1054
+#: modules/gdscript/doc_classes/@GDScript.xml:1067
msgid ""
"Returns the sign of [code]s[/code]: -1 or 1. Returns 0 if [code]s[/code] is "
"0.\n"
@@ -895,7 +933,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1068
+#: modules/gdscript/doc_classes/@GDScript.xml:1081
msgid ""
"Returns the sine of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -903,7 +941,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1080
+#: modules/gdscript/doc_classes/@GDScript.xml:1093
msgid ""
"Returns the hyperbolic sine of [code]s[/code].\n"
"[codeblock]\n"
@@ -912,27 +950,37 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1097
+#: modules/gdscript/doc_classes/@GDScript.xml:1110
msgid ""
-"Returns a number smoothly interpolated between the [code]from[/code] and "
-"[code]to[/code], based on the [code]weight[/code]. Similar to [method lerp], "
-"but interpolates faster at the beginning and slower at the end.\n"
+"Returns the result of smoothly interpolating the value of [code]s[/code] "
+"between [code]0[/code] and [code]1[/code], based on the where [code]s[/code] "
+"lies with respect to the edges [code]from[/code] and [code]to[/code].\n"
+"The return value is [code]0[/code] if [code]s <= from[/code], and [code]1[/"
+"code] if [code]s >= to[/code]. If [code]s[/code] lies between [code]from[/"
+"code] and [code]to[/code], the returned value follows an S-shaped curve that "
+"maps [code]s[/code] between [code]0[/code] and [code]1[/code].\n"
+"This S-shaped curve is the cubic Hermite interpolator, given by [code]f(s) = "
+"3*s^2 - 2*s^3[/code].\n"
"[codeblock]\n"
-"smoothstep(0, 2, 0.5) # Returns 0.15\n"
+"smoothstep(0, 2, -5.0) # Returns 0.0\n"
+"smoothstep(0, 2, 0.5) # Returns 0.15625\n"
"smoothstep(0, 2, 1.0) # Returns 0.5\n"
"smoothstep(0, 2, 2.0) # Returns 1.0\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1111
+#: modules/gdscript/doc_classes/@GDScript.xml:1127
msgid ""
-"Returns the square root of [code]s[/code].\n"
+"Returns the square root of [code]s[/code], where [code]s[/code] is a non-"
+"negative number.\n"
"[codeblock]\n"
"sqrt(9) # Returns 3\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b]Negative values of [code]s[/code] return NaN. If you need "
+"negative inputs, use [code]System.Numerics.Complex[/code] in C#."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1123
+#: modules/gdscript/doc_classes/@GDScript.xml:1140
msgid ""
"Returns the position of the first non-zero digit, after the decimal point. "
"Note that the maximum return value is 10, which is a design decision in the "
@@ -947,7 +995,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1142
+#: modules/gdscript/doc_classes/@GDScript.xml:1159
msgid ""
"Snaps float value [code]s[/code] to a given [code]step[/code]. This can also "
"be used to round a floating point number to an arbitrary number of "
@@ -958,7 +1006,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1153
+#: modules/gdscript/doc_classes/@GDScript.xml:1170
msgid ""
"Converts one or more arguments to string in the best way possible.\n"
"[codeblock]\n"
@@ -969,7 +1017,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1168
+#: modules/gdscript/doc_classes/@GDScript.xml:1185
msgid ""
"Converts a formatted string that was returned by [method var2str] to the "
"original value.\n"
@@ -980,7 +1028,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1182
+#: modules/gdscript/doc_classes/@GDScript.xml:1199
msgid ""
"Returns the tangent of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -988,7 +1036,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1194
+#: modules/gdscript/doc_classes/@GDScript.xml:1211
msgid ""
"Returns the hyperbolic tangent of [code]s[/code].\n"
"[codeblock]\n"
@@ -997,18 +1045,25 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1207
+#: modules/gdscript/doc_classes/@GDScript.xml:1224
msgid ""
-"Converts a Variant [code]var[/code] to JSON text and return the result. "
+"Converts a [Variant] [code]var[/code] to JSON text and return the result. "
"Useful for serializing data to store or send over the network.\n"
"[codeblock]\n"
+"# Both numbers below are integers.\n"
"a = { \"a\": 1, \"b\": 2 }\n"
"b = to_json(a)\n"
"print(b) # {\"a\":1, \"b\":2}\n"
-"[/codeblock]"
+"# Both numbers above are floats, even if they display without any decimal "
+"places.\n"
+"[/codeblock]\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, converting a [Variant] to JSON "
+"text will convert all numerical values to [float] types.\n"
+"See also [JSON] for an alternative way to convert a [Variant] to JSON text."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1221
+#: modules/gdscript/doc_classes/@GDScript.xml:1242
msgid ""
"Returns whether the given class exists in [ClassDB].\n"
"[codeblock]\n"
@@ -1017,7 +1072,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1234
+#: modules/gdscript/doc_classes/@GDScript.xml:1255
msgid ""
"Returns the internal type of the given Variant object, using the [enum "
"Variant.Type] values.\n"
@@ -1030,7 +1085,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1250
+#: modules/gdscript/doc_classes/@GDScript.xml:1271
msgid ""
"Checks that [code]json[/code] is valid JSON data. Returns an empty string if "
"valid, or an error message otherwise.\n"
@@ -1038,20 +1093,20 @@ msgid ""
"j = to_json([1, 2, 3])\n"
"v = validate_json(j)\n"
"if not v:\n"
-" print(\"valid\")\n"
+" print(\"Valid JSON.\")\n"
"else:\n"
-" prints(\"invalid\", v)\n"
+" push_error(\"Invalid JSON: \" + v)\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1269
+#: modules/gdscript/doc_classes/@GDScript.xml:1290
msgid ""
"Encodes a variable value to a byte array. When [code]full_objects[/code] is "
"[code]true[/code] encoding objects is allowed (and can potentially include "
"code)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1278
+#: modules/gdscript/doc_classes/@GDScript.xml:1299
msgid ""
"Converts a Variant [code]var[/code] to a formatted string that can later be "
"parsed using [method str2var].\n"
@@ -1068,7 +1123,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1298
+#: modules/gdscript/doc_classes/@GDScript.xml:1319
msgid ""
"Returns a weak reference to an object.\n"
"A weak reference to an object is not enough to keep the object alive: when "
@@ -1078,135 +1133,67 @@ msgid ""
"reference may return the object even if there are no strong references to it."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1312
+#: modules/gdscript/doc_classes/@GDScript.xml:1333
msgid ""
"Wraps float [code]value[/code] between [code]min[/code] and [code]max[/"
"code].\n"
"Usable for creating loop-alike behavior or infinite surfaces.\n"
"[codeblock]\n"
-"# a is 0.5\n"
-"a = wrapf(10.5, 0.0, 10.0)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# a is 9.5\n"
-"a = wrapf(-0.5, 0.0, 10.0)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# Infinite loop between 0.0 and 0.99\n"
-"f = wrapf(f + 0.1, 0.0, 1.0)\n"
+"# Infinite loop between 5.0 and 9.9\n"
+"value = wrapf(value + 0.1, 5.0, 10.0)\n"
"[/codeblock]\n"
"[codeblock]\n"
"# Infinite rotation (in radians)\n"
"angle = wrapf(angle + 0.1, 0.0, TAU)\n"
"[/codeblock]\n"
-"[b]Note:[/b] If you just want to wrap between 0.0 and [code]n[/code] (where "
-"[code]n[/code] is a positive floating-point value), it is better for "
-"performance to use the [method fmod] method like [code]fmod(number, n)[/"
-"code].\n"
-"[code]wrapf[/code] is more flexible than using the [method fmod] approach by "
-"giving the user a simple control over the minimum value. It also fully "
-"supports negative numbers, e.g.\n"
"[codeblock]\n"
"# Infinite rotation (in radians)\n"
"angle = wrapf(angle + 0.1, -PI, PI)\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] If [code]min[/code] is [code]0[/code], this is equivalent to "
+"[method fposmod], so prefer using that instead.\n"
+"[code]wrapf[/code] is more flexible than using the [method fposmod] approach "
+"by giving the user control over the minimum value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1348
+#: modules/gdscript/doc_classes/@GDScript.xml:1361
msgid ""
"Wraps integer [code]value[/code] between [code]min[/code] and [code]max[/"
"code].\n"
"Usable for creating loop-alike behavior or infinite surfaces.\n"
"[codeblock]\n"
-"# a is 0\n"
-"a = wrapi(10, 0, 10)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# a is 9\n"
-"a = wrapi(-1, 0, 10)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# Infinite loop between 0 and 9\n"
-"frame = wrapi(frame + 1, 0, 10)\n"
+"# Infinite loop between 5 and 9\n"
+"frame = wrapi(frame + 1, 5, 10)\n"
"[/codeblock]\n"
-"[b]Note:[/b] If you just want to wrap between 0 and [code]n[/code] (where "
-"[code]n[/code] is a positive integer value), it is better for performance to "
-"use the modulo operator like [code]number % n[/code].\n"
-"[code]wrapi[/code] is more flexible than using the modulo approach by giving "
-"the user a simple control over the minimum value. It also fully supports "
-"negative numbers, e.g.\n"
"[codeblock]\n"
"# result is -2\n"
"var result = wrapi(-6, -5, -1)\n"
-"[/codeblock]"
-msgstr ""
-
-#: modules/gdscript/doc_classes/@GDScript.xml:1378
-msgid ""
-"Stops the function execution and returns the current suspended state to the "
-"calling function.\n"
-"From the caller, call [method GDScriptFunctionState.resume] on the state to "
-"resume execution. This invalidates the state. Within the resumed function, "
-"[code]yield()[/code] returns whatever was passed to the [code]resume()[/"
-"code] function call.\n"
-"If passed an object and a signal, the execution is resumed when the object "
-"emits the given signal. In this case, [code]yield()[/code] returns the "
-"argument passed to [code]emit_signal()[/code] if the signal takes only one "
-"argument, or an array containing all the arguments passed to "
-"[code]emit_signal()[/code] if the signal takes multiple arguments.\n"
-"You can also use [code]yield[/code] to wait for a function to finish:\n"
-"[codeblock]\n"
-"func _ready():\n"
-" yield(countdown(), \"completed\") # waiting for the countdown() function "
-"to complete\n"
-" print('Ready')\n"
-"\n"
-"func countdown():\n"
-" yield(get_tree(), \"idle_frame\") # returns a GDScriptFunctionState "
-"object to _ready()\n"
-" print(3)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-" print(2)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-" print(1)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-"\n"
-"# prints:\n"
-"# 3\n"
-"# 2\n"
-"# 1\n"
-"# Ready\n"
"[/codeblock]\n"
-"When yielding on a function, the [code]completed[/code] signal will be "
-"emitted automatically when the function returns. It can, therefore, be used "
-"as the [code]signal[/code] parameter of the [code]yield[/code] method to "
-"resume.\n"
-"In order to yield on a function, the resulting function should also return a "
-"[code]GDScriptFunctionState[/code]. Notice [code]yield(get_tree(), "
-"\"idle_frame\")[/code] from the above example."
+"[b]Note:[/b] If [code]min[/code] is [code]0[/code], this is equivalent to "
+"[method posmod], so prefer using that instead.\n"
+"[code]wrapi[/code] is more flexible than using the [method posmod] approach "
+"by giving the user control over the minimum value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1409
+#: modules/gdscript/doc_classes/@GDScript.xml:1378
msgid ""
"Constant that represents how many times the diameter of a circle fits around "
-"its perimeter."
+"its perimeter. This is equivalent to [code]TAU / 2[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1412
-msgid "The circle constant, the circumference of the unit circle."
+#: modules/gdscript/doc_classes/@GDScript.xml:1381
+msgid "The circle constant, the circumference of the unit circle in radians."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1415
-msgid "A positive infinity. (For negative infinity, use -INF)."
+#: modules/gdscript/doc_classes/@GDScript.xml:1384
+msgid "Positive infinity. For negative infinity, use -INF."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1418
+#: modules/gdscript/doc_classes/@GDScript.xml:1387
msgid ""
-"Macro constant that expands to an expression of type float that represents a "
-"NaN.\n"
-"The NaN values are used to identify undefined or non-representable values "
-"for floating-point elements, such as the square root of negative numbers or "
-"the result of 0/0."
+"\"Not a Number\", an invalid value. [code]NaN[/code] has special properties, "
+"including that it is not equal to itself. It is output by some invalid "
+"operations, such as dividing zero by zero."
msgstr ""
#: doc/classes/@GlobalScope.xml:4
@@ -3442,130 +3429,141 @@ msgid ""
msgstr ""
#: doc/classes/AABB.xml:10 doc/classes/Plane.xml:10 doc/classes/Rect2.xml:11
-#: doc/classes/Rect2i.xml:11 doc/classes/Transform.xml:10
+#: doc/classes/Rect2i.xml:11 doc/classes/Transform.xml:11
#: doc/classes/Vector2.xml:12 doc/classes/Vector2i.xml:12
#: doc/classes/Vector3.xml:12 doc/classes/Vector3i.xml:12
msgid "https://docs.godotengine.org/en/latest/tutorials/math/index.html"
msgstr ""
#: doc/classes/AABB.xml:21
-msgid "Optional constructor, accepts position and size."
+msgid "Constructs an [AABB] from a position and size."
+msgstr ""
+
+#: doc/classes/AABB.xml:28
+msgid ""
+"Returns an AABB with equivalent position and size, modified so that the most-"
+"negative corner is the origin and the size is positive."
msgstr ""
-#: doc/classes/AABB.xml:30
+#: doc/classes/AABB.xml:37
msgid ""
"Returns [code]true[/code] if this [AABB] completely encloses another one."
msgstr ""
-#: doc/classes/AABB.xml:39
+#: doc/classes/AABB.xml:46
msgid "Returns this [AABB] expanded to include a given point."
msgstr ""
-#: doc/classes/AABB.xml:46
+#: doc/classes/AABB.xml:53
msgid "Returns the volume of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:55
+#: doc/classes/AABB.xml:62
msgid "Gets the position of the 8 endpoints of the [AABB] in space."
msgstr ""
-#: doc/classes/AABB.xml:62
+#: doc/classes/AABB.xml:69
msgid "Returns the normalized longest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:69
+#: doc/classes/AABB.xml:76
msgid ""
"Returns the index of the longest axis of the [AABB] (according to "
"[Vector3]'s [code]AXIS_*[/code] constants)."
msgstr ""
-#: doc/classes/AABB.xml:76
+#: doc/classes/AABB.xml:83
msgid "Returns the scalar length of the longest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:83
+#: doc/classes/AABB.xml:90
msgid "Returns the normalized shortest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:90
+#: doc/classes/AABB.xml:97
msgid ""
"Returns the index of the shortest axis of the [AABB] (according to "
"[Vector3]::AXIS* enum)."
msgstr ""
-#: doc/classes/AABB.xml:97
+#: doc/classes/AABB.xml:104
msgid "Returns the scalar length of the shortest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:106
+#: doc/classes/AABB.xml:113
msgid ""
"Returns the support point in a given direction. This is useful for collision "
"detection algorithms."
msgstr ""
-#: doc/classes/AABB.xml:115
+#: doc/classes/AABB.xml:122
msgid ""
"Returns a copy of the [AABB] grown a given amount of units towards all the "
"sides."
msgstr ""
-#: doc/classes/AABB.xml:122
+#: doc/classes/AABB.xml:129
msgid "Returns [code]true[/code] if the [AABB] is flat or empty."
msgstr ""
-#: doc/classes/AABB.xml:129
+#: doc/classes/AABB.xml:136
msgid "Returns [code]true[/code] if the [AABB] is empty."
msgstr ""
-#: doc/classes/AABB.xml:138
+#: doc/classes/AABB.xml:145
msgid "Returns [code]true[/code] if the [AABB] contains a point."
msgstr ""
-#: doc/classes/AABB.xml:147
+#: doc/classes/AABB.xml:154
msgid ""
"Returns the intersection between two [AABB]. An empty AABB (size 0,0,0) is "
"returned on failure."
msgstr ""
-#: doc/classes/AABB.xml:156
+#: doc/classes/AABB.xml:163
msgid "Returns [code]true[/code] if the [AABB] overlaps with another."
msgstr ""
-#: doc/classes/AABB.xml:165
+#: doc/classes/AABB.xml:172
msgid "Returns [code]true[/code] if the [AABB] is on both sides of a plane."
msgstr ""
-#: doc/classes/AABB.xml:176
+#: doc/classes/AABB.xml:183
msgid ""
"Returns [code]true[/code] if the [AABB] intersects the line segment between "
"[code]from[/code] and [code]to[/code]."
msgstr ""
-#: doc/classes/AABB.xml:185
+#: doc/classes/AABB.xml:192
msgid ""
"Returns [code]true[/code] if this [AABB] and [code]aabb[/code] are "
"approximately equal, by calling [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/AABB.xml:194
+#: doc/classes/AABB.xml:201
msgid ""
"Returns a larger [AABB] that contains both this [AABB] and [code]with[/code]."
msgstr ""
-#: doc/classes/AABB.xml:200
+#: doc/classes/AABB.xml:207 doc/classes/Rect2.xml:174
+#: doc/classes/Rect2i.xml:163
msgid ""
-"Ending corner. This is calculated as [code]position + size[/code]. Changing "
-"this property changes [member size] accordingly."
+"Ending corner. This is calculated as [code]position + size[/code]. Setting "
+"this value will change the size."
msgstr ""
-#: doc/classes/AABB.xml:203
-msgid "Beginning corner."
+#: doc/classes/AABB.xml:210 doc/classes/Rect2.xml:177
+#: doc/classes/Rect2i.xml:166
+msgid "Beginning corner. Typically has values lower than [member end]."
msgstr ""
-#: doc/classes/AABB.xml:206 doc/classes/Rect2.xml:180
+#: doc/classes/AABB.xml:213 doc/classes/Rect2.xml:180
#: doc/classes/Rect2i.xml:169
-msgid "Size from position to end."
+msgid ""
+"Size from [member position] to [member end]. Typically all components are "
+"positive.\n"
+"If the size is negative, you can use [method abs] to fix it."
msgstr ""
#: doc/classes/AcceptDialog.xml:4
@@ -3629,11 +3627,11 @@ msgstr ""
msgid "The text displayed by the dialog."
msgstr ""
-#: doc/classes/AcceptDialog.xml:82
+#: doc/classes/AcceptDialog.xml:83
msgid "Emitted when the dialog is accepted, i.e. the OK button is pressed."
msgstr ""
-#: doc/classes/AcceptDialog.xml:89
+#: doc/classes/AcceptDialog.xml:90
msgid "Emitted when a custom button is pressed. See [method add_button]."
msgstr ""
@@ -3686,7 +3684,7 @@ msgstr ""
#: doc/classes/AESContext.xml:54
msgid ""
"Get the current IV state for this context (IV gets updated when calling "
-"[method update]). You normally don't need this funciton.\n"
+"[method update]). You normally don't need this function.\n"
"Note: This function only makes sense when the context is started with "
"[constant MODE_CBC_ENCRYPT] or [constant MODE_CBC_DECRYPT]."
msgstr ""
@@ -3764,12 +3762,14 @@ msgid "If [code]true[/code], texture will be centered."
msgstr ""
#: doc/classes/AnimatedSprite2D.xml:46 doc/classes/Sprite2D.xml:41
-#: doc/classes/SpriteBase3D.xml:61 doc/classes/TextureRect.xml:18
+#: doc/classes/SpriteBase3D.xml:61 doc/classes/TextureButton.xml:19
+#: doc/classes/TextureRect.xml:18
msgid "If [code]true[/code], texture is flipped horizontally."
msgstr ""
#: doc/classes/AnimatedSprite2D.xml:49 doc/classes/Sprite2D.xml:44
-#: doc/classes/SpriteBase3D.xml:64 doc/classes/TextureRect.xml:21
+#: doc/classes/SpriteBase3D.xml:64 doc/classes/TextureButton.xml:22
+#: doc/classes/TextureRect.xml:21
msgid "If [code]true[/code], texture is flipped vertically."
msgstr ""
@@ -3936,10 +3936,10 @@ msgid ""
"[codeblock]\n"
"# This creates an animation that makes the node \"Enemy\" move to the right "
"by\n"
-"# 100 pixels in 1 second.\n"
+"# 100 pixels in 0.5 seconds.\n"
"var animation = Animation.new()\n"
"var track_index = animation.add_track(Animation.TYPE_VALUE)\n"
-"animation.track_set_path(track_index, \"Enemy:position.x\")\n"
+"animation.track_set_path(track_index, \"Enemy:position:x\")\n"
"animation.track_insert_key(track_index, 0.0, 0)\n"
"animation.track_insert_key(track_index, 0.5, 100)\n"
"[/codeblock]\n"
@@ -6067,10 +6067,10 @@ msgstr ""
msgid ""
"Returns [code]true[/code] if the array contains the given value.\n"
"[codeblock]\n"
-"[\"inside\", 7].has(\"inside\") == true\n"
-"[\"inside\", 7].has(\"outside\") == false\n"
-"[\"inside\", 7].has(7) == true\n"
-"[\"inside\", 7].has(\"7\") == false\n"
+"print([\"inside\", 7].has(\"inside\")) # True\n"
+"print([\"inside\", 7].has(\"outside\")) # False\n"
+"print([\"inside\", 7].has(7)) # True\n"
+"print([\"inside\", 7].has(\"7\")) # False\n"
"[/codeblock]\n"
"[b]Note:[/b] This is equivalent to using the [code]in[/code] operator as "
"follows:\n"
@@ -6091,11 +6091,11 @@ msgid ""
"valid, or at the end of the array ([code]pos == size()[/code])."
msgstr ""
-#: doc/classes/Array.xml:265 doc/classes/PackedByteArray.xml:107
-#: doc/classes/PackedColorArray.xml:62 doc/classes/PackedFloat32Array.xml:63
-#: doc/classes/PackedFloat64Array.xml:63 doc/classes/PackedInt32Array.xml:63
-#: doc/classes/PackedInt64Array.xml:63 doc/classes/PackedStringArray.xml:62
-#: doc/classes/PackedVector2Array.xml:62 doc/classes/PackedVector3Array.xml:62
+#: doc/classes/Array.xml:265 doc/classes/PackedByteArray.xml:116
+#: doc/classes/PackedColorArray.xml:71 doc/classes/PackedFloat32Array.xml:72
+#: doc/classes/PackedFloat64Array.xml:72 doc/classes/PackedInt32Array.xml:72
+#: doc/classes/PackedInt64Array.xml:72 doc/classes/PackedStringArray.xml:71
+#: doc/classes/PackedVector2Array.xml:71 doc/classes/PackedVector3Array.xml:71
msgid "Reverses the order of the elements in the array."
msgstr ""
@@ -6125,8 +6125,8 @@ msgid ""
"code] if the array is empty."
msgstr ""
-#: doc/classes/Array.xml:302 doc/classes/PackedByteArray.xml:116
-#: doc/classes/PackedFloat32Array.xml:72 doc/classes/PackedFloat64Array.xml:72
+#: doc/classes/Array.xml:302 doc/classes/PackedByteArray.xml:125
+#: doc/classes/PackedFloat32Array.xml:81 doc/classes/PackedFloat64Array.xml:81
msgid "Appends an element at the end of the array."
msgstr ""
@@ -6134,11 +6134,11 @@ msgstr ""
msgid "Adds an element at the beginning of the array."
msgstr ""
-#: doc/classes/Array.xml:320 doc/classes/PackedByteArray.xml:125
-#: doc/classes/PackedColorArray.xml:80 doc/classes/PackedFloat32Array.xml:81
-#: doc/classes/PackedFloat64Array.xml:81 doc/classes/PackedInt32Array.xml:81
-#: doc/classes/PackedInt64Array.xml:81 doc/classes/PackedStringArray.xml:80
-#: doc/classes/PackedVector2Array.xml:80 doc/classes/PackedVector3Array.xml:80
+#: doc/classes/Array.xml:320 doc/classes/PackedByteArray.xml:134
+#: doc/classes/PackedColorArray.xml:89 doc/classes/PackedFloat32Array.xml:90
+#: doc/classes/PackedFloat64Array.xml:90 doc/classes/PackedInt32Array.xml:90
+#: doc/classes/PackedInt64Array.xml:90 doc/classes/PackedStringArray.xml:89
+#: doc/classes/PackedVector2Array.xml:89 doc/classes/PackedVector3Array.xml:89
msgid "Removes an element from the array by index."
msgstr ""
@@ -6421,7 +6421,7 @@ msgid ""
msgstr ""
#: doc/classes/ArrayMesh.xml:235 doc/classes/Mesh.xml:210
-#: doc/classes/RenderingServer.xml:3115
+#: doc/classes/RenderingServer.xml:3111
msgid "Represents the size of the [enum ArrayType] enum."
msgstr ""
@@ -8238,7 +8238,9 @@ msgid ""
msgstr ""
#: doc/classes/BaseButton.xml:16
-msgid "Called when the button is pressed."
+msgid ""
+"Called when the button is pressed. If you need to know the button's pressed "
+"state (and [member toggle_mode] is active), use [method _toggled] instead."
msgstr ""
#: doc/classes/BaseButton.xml:25
@@ -8332,43 +8334,45 @@ msgstr ""
msgid ""
"Emitted when the button is toggled or pressed. This is on [signal "
"button_down] if [member action_mode] is [constant ACTION_MODE_BUTTON_PRESS] "
-"and on [signal button_up] otherwise."
+"and on [signal button_up] otherwise.\n"
+"If you need to know the button's pressed state (and [member toggle_mode] is "
+"active), use [signal toggled] instead."
msgstr ""
-#: doc/classes/BaseButton.xml:98
+#: doc/classes/BaseButton.xml:99
msgid ""
"Emitted when the button was just toggled between pressed and normal states "
"(only if [member toggle_mode] is active). The new state is contained in the "
"[code]button_pressed[/code] argument."
msgstr ""
-#: doc/classes/BaseButton.xml:104
+#: doc/classes/BaseButton.xml:105
msgid ""
"The normal state (i.e. not pressed, not hovered, not toggled and enabled) of "
"buttons."
msgstr ""
-#: doc/classes/BaseButton.xml:107
+#: doc/classes/BaseButton.xml:108
msgid "The state of buttons are pressed."
msgstr ""
-#: doc/classes/BaseButton.xml:110
+#: doc/classes/BaseButton.xml:111
msgid "The state of buttons are hovered."
msgstr ""
-#: doc/classes/BaseButton.xml:113
+#: doc/classes/BaseButton.xml:114
msgid "The state of buttons are disabled."
msgstr ""
-#: doc/classes/BaseButton.xml:116
+#: doc/classes/BaseButton.xml:117
msgid "The state of buttons are both hovered and pressed."
msgstr ""
-#: doc/classes/BaseButton.xml:119
+#: doc/classes/BaseButton.xml:120
msgid "Require just a press to consider the button clicked."
msgstr ""
-#: doc/classes/BaseButton.xml:122
+#: doc/classes/BaseButton.xml:123
msgid ""
"Require a press and a subsequent release before considering the button "
"clicked."
@@ -9061,22 +9065,22 @@ msgstr ""
msgid "Represents the size of the [enum TextureParam] enum."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:451 doc/classes/RenderingServer.xml:3657
-#: doc/classes/Viewport.xml:390
+#: doc/classes/BaseMaterial3D.xml:451 doc/classes/RenderingServer.xml:3668
+#: doc/classes/Viewport.xml:393
msgid ""
"The texture filter reads from the nearest pixel only. The simplest and "
"fastest method of filtering, but the texture will look pixelized."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:454 doc/classes/RenderingServer.xml:3660
-#: doc/classes/Viewport.xml:393
+#: doc/classes/BaseMaterial3D.xml:454 doc/classes/RenderingServer.xml:3671
+#: doc/classes/Viewport.xml:396
msgid ""
"The texture filter blends between the nearest 4 pixels. Use this when you "
"want to avoid a pixelated style, but do not want mipmaps."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:457 doc/classes/RenderingServer.xml:3663
-#: doc/classes/Viewport.xml:396
+#: doc/classes/BaseMaterial3D.xml:457 doc/classes/RenderingServer.xml:3674
+#: doc/classes/Viewport.xml:399
msgid ""
"The texture filter reads from the nearest pixel in the nearest mipmap. The "
"fastest way to read from textures with mipmaps."
@@ -9089,14 +9093,14 @@ msgid ""
"smooth out pixels that are far from the camera."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:463 doc/classes/RenderingServer.xml:3669
+#: doc/classes/BaseMaterial3D.xml:463 doc/classes/RenderingServer.xml:3680
msgid ""
"The texture filter reads from the nearest pixel, but selects a mipmap based "
"on the angle between the surface and the camera view. This reduces artifacts "
"on surfaces that are almost in line with the camera."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:466 doc/classes/RenderingServer.xml:3672
+#: doc/classes/BaseMaterial3D.xml:466 doc/classes/RenderingServer.xml:3683
msgid ""
"The texture filter blends between the nearest 4 pixels and selects a mipmap "
"based on the angle between the surface and the camera view. This reduces "
@@ -9105,7 +9109,7 @@ msgid ""
"texturing."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:469 doc/classes/CanvasItem.xml:685
+#: doc/classes/BaseMaterial3D.xml:469 doc/classes/CanvasItem.xml:695
msgid "Represents the size of the [enum TextureFilter] enum."
msgstr ""
@@ -9328,8 +9332,8 @@ msgstr ""
msgid "Enables the shadow to opacity feature."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:622 doc/classes/RenderingServer.xml:3684
-#: doc/classes/Viewport.xml:408
+#: doc/classes/BaseMaterial3D.xml:622 doc/classes/RenderingServer.xml:3695
+#: doc/classes/Viewport.xml:411
msgid ""
"Enables the texture to repeat when UV coordinates are outside the 0-1 range. "
"If using one of the linear filtering modes, this can result in artifacts at "
@@ -9470,167 +9474,195 @@ msgstr ""
#: doc/classes/Basis.xml:7
msgid ""
-"3×3 matrix used for 3D rotation and scale. Contains 3 vector fields X, Y and "
-"Z as its columns, which can be interpreted as the local basis vectors of a "
-"transformation. Can also be accessed as array of 3D vectors. These vectors "
-"are orthogonal to each other, but are not necessarily normalized (due to "
-"scaling). Almost always used as an orthogonal basis for a [Transform].\n"
-"For such use, it is composed of a scaling and a rotation matrix, in that "
-"order (M = R.S)."
+"3×3 matrix used for 3D rotation and scale. Almost always used as an "
+"orthogonal basis for a Transform.\n"
+"Contains 3 vector fields X, Y and Z as its columns, which are typically "
+"interpreted as the local basis vectors of a transformation. For such use, it "
+"is composed of a scaling and a rotation matrix, in that order (M = R.S).\n"
+"Can also be accessed as array of 3D vectors. These vectors are normally "
+"orthogonal to each other, but are not necessarily normalized (due to "
+"scaling).\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
msgstr ""
-#: doc/classes/Basis.xml:11 doc/classes/Transform.xml:11
+#: doc/classes/Basis.xml:13 doc/classes/Transform.xml:12
+#: doc/classes/Transform2D.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/math/"
+"matrices_and_transforms.html"
+msgstr ""
+
+#: doc/classes/Basis.xml:14 doc/classes/Transform.xml:13
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/using_transforms.html"
msgstr ""
-#: doc/classes/Basis.xml:20
-msgid "Create a rotation matrix from the given quaternion."
+#: doc/classes/Basis.xml:23
+msgid "Constructs a pure rotation basis matrix from the given quaternion."
msgstr ""
-#: doc/classes/Basis.xml:29
+#: doc/classes/Basis.xml:32
msgid ""
-"Create a rotation matrix (in the YXZ convention: first Z, then X, and Y "
-"last) from the specified Euler angles, given in the vector format as (X "
-"angle, Y angle, Z angle)."
+"Constructs a pure rotation basis matrix from the given Euler angles (in the "
+"YXZ convention: when *composing*, first Y, then X, and Z last), given in the "
+"vector format as (X angle, Y angle, Z angle).\n"
+"Consider using the [Quat] constructor instead, which uses a quaternion "
+"instead of Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:40
+#: doc/classes/Basis.xml:44
msgid ""
-"Create a rotation matrix which rotates around the given axis by the "
-"specified angle, in radians. The axis must be a normalized vector."
+"Constructs a pure rotation basis matrix, rotated around the given "
+"[code]axis[/code] by [code]phi[/code], in radians. The axis must be a "
+"normalized vector."
msgstr ""
-#: doc/classes/Basis.xml:53
-msgid "Create a matrix from 3 axis vectors."
+#: doc/classes/Basis.xml:57
+msgid "Constructs a basis matrix from 3 axis vectors (matrix columns)."
msgstr ""
-#: doc/classes/Basis.xml:60
-msgid "Returns the determinant of the matrix."
+#: doc/classes/Basis.xml:64
+msgid ""
+"Returns the determinant of the basis matrix. If the basis is uniformly "
+"scaled, its determinant is the square of the scale.\n"
+"A negative determinant means the basis has a negative scale. A zero "
+"determinant means the basis isn't invertible, and is usually considered "
+"invalid."
msgstr ""
-#: doc/classes/Basis.xml:67
+#: doc/classes/Basis.xml:72
msgid ""
"Returns the basis's rotation in the form of Euler angles (in the YXZ "
-"convention: first Z, then X, and Y last). The returned vector contains the "
-"rotation angles in the format (X angle, Y angle, Z angle). See [method "
-"get_rotation_quat] if you need a quaternion instead."
+"convention: when decomposing, first Z, then X, and Y last). The returned "
+"vector contains the rotation angles in the format (X angle, Y angle, Z "
+"angle).\n"
+"Consider using the [method get_rotation_quat] method instead, which returns "
+"a [Quat] quaternion instead of Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:74
+#: doc/classes/Basis.xml:80
msgid ""
"This function considers a discretization of rotations into 24 points on unit "
"sphere, lying along the vectors (x,y,z) with each component being either -1, "
"0, or 1, and returns the index of the point best representing the "
-"orientation of the object. It is mainly used by the grid map editor. For "
+"orientation of the object. It is mainly used by the [GridMap] editor. For "
"further details, refer to the Godot source code."
msgstr ""
-#: doc/classes/Basis.xml:81
+#: doc/classes/Basis.xml:87
msgid ""
"Returns the basis's rotation in the form of a quaternion. See [method "
"get_euler] if you need Euler angles, but keep in mind quaternions should "
"generally be preferred to Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:88
+#: doc/classes/Basis.xml:94
msgid ""
"Assuming that the matrix is the combination of a rotation and scaling, "
"return the absolute value of scaling factors along each axis."
msgstr ""
-#: doc/classes/Basis.xml:95 doc/classes/Transform2D.xml:49
+#: doc/classes/Basis.xml:101
msgid "Returns the inverse of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:106
+#: doc/classes/Basis.xml:112
msgid ""
"Returns [code]true[/code] if this basis and [code]b[/code] are approximately "
"equal, by calling [code]is_equal_approx[/code] on each component."
msgstr ""
-#: doc/classes/Basis.xml:113
+#: doc/classes/Basis.xml:119
msgid ""
"Returns the orthonormalized version of the matrix (useful to call from time "
"to time to avoid rounding error for orthogonal matrices). This performs a "
"Gram-Schmidt orthonormalization on the basis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:124
+#: doc/classes/Basis.xml:130
msgid ""
"Introduce an additional rotation around the given axis by phi (radians). The "
"axis must be a normalized vector."
msgstr ""
-#: doc/classes/Basis.xml:133
+#: doc/classes/Basis.xml:139
msgid ""
"Introduce an additional scaling specified by the given 3D scaling factor."
msgstr ""
-#: doc/classes/Basis.xml:144
+#: doc/classes/Basis.xml:150
msgid ""
"Assuming that the matrix is a proper rotation matrix, slerp performs a "
"spherical-linear interpolation with another rotation matrix."
msgstr ""
-#: doc/classes/Basis.xml:153
+#: doc/classes/Basis.xml:159
msgid "Transposed dot product with the X axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:162
+#: doc/classes/Basis.xml:168
msgid "Transposed dot product with the Y axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:171
+#: doc/classes/Basis.xml:177
msgid "Transposed dot product with the Z axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:178
+#: doc/classes/Basis.xml:184
msgid "Returns the transposed version of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:187
+#: doc/classes/Basis.xml:193
msgid "Returns a vector transformed (multiplied) by the matrix."
msgstr ""
-#: doc/classes/Basis.xml:196
+#: doc/classes/Basis.xml:202
msgid ""
-"Returns a vector transformed (multiplied) by the transposed matrix.\n"
+"Returns a vector transformed (multiplied) by the transposed basis matrix.\n"
"[b]Note:[/b] This results in a multiplication by the inverse of the matrix "
"only if it represents a rotation-reflection."
msgstr ""
-#: doc/classes/Basis.xml:203
-msgid "The basis matrix's X vector."
+#: doc/classes/Basis.xml:209 doc/classes/Transform2D.xml:181
+msgid ""
+"The basis matrix's X vector (column 0). Equivalent to array index [code]0[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:206
-msgid "The basis matrix's Y vector."
+#: doc/classes/Basis.xml:212 doc/classes/Transform2D.xml:184
+msgid ""
+"The basis matrix's Y vector (column 1). Equivalent to array index [code]1[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:209
-msgid "The basis matrix's Z vector."
+#: doc/classes/Basis.xml:215
+msgid ""
+"The basis matrix's Z vector (column 2). Equivalent to array index [code]2[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:214
+#: doc/classes/Basis.xml:220
msgid ""
-"The identity basis. This is identical to calling [code]Basis()[/code] "
-"without any parameters. This constant can be used to make your code clearer."
+"The identity basis, with no rotation or scaling applied.\n"
+"This is identical to calling [code]Basis()[/code] without any parameters. "
+"This constant can be used to make your code clearer, and for consistency "
+"with C#."
msgstr ""
-#: doc/classes/Basis.xml:217
+#: doc/classes/Basis.xml:224
msgid ""
"The basis that will flip something along the X axis when used in a "
"transformation."
msgstr ""
-#: doc/classes/Basis.xml:220
+#: doc/classes/Basis.xml:227
msgid ""
"The basis that will flip something along the Y axis when used in a "
"transformation."
msgstr ""
-#: doc/classes/Basis.xml:223
+#: doc/classes/Basis.xml:230
msgid ""
"The basis that will flip something along the Z axis when used in a "
"transformation."
@@ -9943,97 +9975,111 @@ msgstr ""
#: doc/classes/Button.xml:7
msgid ""
"Button is the standard themed button. It can contain text and an icon, and "
-"will display them according to the current [Theme]."
+"will display them according to the current [Theme].\n"
+"[b]Example of creating a button and assigning an action when pressed by code:"
+"[/b]\n"
+"[codeblock]\n"
+"func _ready():\n"
+" var button = Button.new()\n"
+" button.text = \"Click me\"\n"
+" button.connect(\"pressed\", self, \"_button_pressed\")\n"
+" add_child(button)\n"
+"\n"
+"func _button_pressed():\n"
+" print(\"Hello world!\")\n"
+"[/codeblock]\n"
+"Buttons (like all Control nodes) can also be created in the editor, but some "
+"situations may require creating them from code."
msgstr ""
-#: doc/classes/Button.xml:15
+#: doc/classes/Button.xml:27
msgid ""
"Text alignment policy for the button's text, use one of the [enum TextAlign] "
"constants."
msgstr ""
-#: doc/classes/Button.xml:18
+#: doc/classes/Button.xml:30
msgid ""
"When this property is enabled, text that is too large to fit the button is "
"clipped, when disabled the Button will always be wide enough to hold the "
"text."
msgstr ""
-#: doc/classes/Button.xml:21
+#: doc/classes/Button.xml:33
msgid ""
"When enabled, the button's icon will expand/shrink to fit the button's size "
"while keeping its aspect."
msgstr ""
-#: doc/classes/Button.xml:24
+#: doc/classes/Button.xml:36
msgid "Flat buttons don't display decoration."
msgstr ""
-#: doc/classes/Button.xml:27
+#: doc/classes/Button.xml:39
msgid ""
"Button's icon, if text is present the icon will be placed before the text."
msgstr ""
-#: doc/classes/Button.xml:30 doc/classes/LinkButton.xml:18
+#: doc/classes/Button.xml:42 doc/classes/LinkButton.xml:18
msgid "The button's text that will be displayed inside the button's area."
msgstr ""
-#: doc/classes/Button.xml:35
+#: doc/classes/Button.xml:47
msgid "Align the text to the left."
msgstr ""
-#: doc/classes/Button.xml:38
+#: doc/classes/Button.xml:50
msgid "Align the text to the center."
msgstr ""
-#: doc/classes/Button.xml:41
+#: doc/classes/Button.xml:53
msgid "Align the text to the right."
msgstr ""
-#: doc/classes/Button.xml:46
+#: doc/classes/Button.xml:58
msgid "[StyleBox] used when the [Button] is disabled."
msgstr ""
-#: doc/classes/Button.xml:49
+#: doc/classes/Button.xml:61
msgid ""
"[StyleBox] used when the [Button] is focused. It is displayed over the "
"current [StyleBox], so using [StyleBoxEmpty] will just disable the focus "
"visual effect."
msgstr ""
-#: doc/classes/Button.xml:52
+#: doc/classes/Button.xml:64
msgid "[Font] of the [Button]'s text."
msgstr ""
-#: doc/classes/Button.xml:55
+#: doc/classes/Button.xml:67
msgid "Default text [Color] of the [Button]."
msgstr ""
-#: doc/classes/Button.xml:58
+#: doc/classes/Button.xml:70
msgid "Text [Color] used when the [Button] is disabled."
msgstr ""
-#: doc/classes/Button.xml:61
+#: doc/classes/Button.xml:73
msgid "Text [Color] used when the [Button] is being hovered."
msgstr ""
-#: doc/classes/Button.xml:64
+#: doc/classes/Button.xml:76
msgid "Text [Color] used when the [Button] is being pressed."
msgstr ""
-#: doc/classes/Button.xml:67
+#: doc/classes/Button.xml:79
msgid "[StyleBox] used when the [Button] is being hovered."
msgstr ""
-#: doc/classes/Button.xml:70
+#: doc/classes/Button.xml:82
msgid "The horizontal space between [Button]'s icon and text."
msgstr ""
-#: doc/classes/Button.xml:73
+#: doc/classes/Button.xml:85
msgid "Default [StyleBox] for the [Button]."
msgstr ""
-#: doc/classes/Button.xml:76
+#: doc/classes/Button.xml:88
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr ""
@@ -10685,7 +10731,7 @@ msgstr ""
#: doc/classes/CameraEffects.xml:37
msgid ""
"The exposure override value to use. Higher values will result in a brighter "
-"scene. Only effective if [member override_exposure_enable] is [code]true[/"
+"scene. Only effective if [member override_exposure_enabled] is [code]true[/"
"code]."
msgstr ""
@@ -10939,265 +10985,282 @@ msgid ""
msgstr ""
#: doc/classes/CanvasItem.xml:319
-msgid "Draws a string using a custom font."
+msgid ""
+"Draws [code]text[/code] using the specified [code]font[/code] at the "
+"[code]position[/code] (top-left corner). The text will have its color "
+"multiplied by [code]modulate[/code]. If [code]clip_w[/code] is greater than "
+"or equal to 0, the text will be clipped if it exceeds the specified width.\n"
+"[b]Example using the default project font:[/b]\n"
+"[codeblock]\n"
+"# If using this method in a script that redraws constantly, move the\n"
+"# `default_font` declaration to a member variable assigned in `_ready()`\n"
+"# so the Control is only created once.\n"
+"var default_font = Control.new().get_font(\"font\")\n"
+"draw_string(default_font, Vector2(64, 64), \"Hello world\")\n"
+"[/codeblock]\n"
+"See also [method Font.draw]."
msgstr ""
-#: doc/classes/CanvasItem.xml:330
+#: doc/classes/CanvasItem.xml:339
msgid "Draws a styled rectangle."
msgstr ""
-#: doc/classes/CanvasItem.xml:353
+#: doc/classes/CanvasItem.xml:362
msgid "Draws a texture at a given position."
msgstr ""
-#: doc/classes/CanvasItem.xml:380
+#: doc/classes/CanvasItem.xml:389
msgid ""
"Draws a textured rectangle at a given position, optionally modulated by a "
"color. If [code]transpose[/code] is [code]true[/code], the texture will have "
"its X and Y coordinates swapped."
msgstr ""
-#: doc/classes/CanvasItem.xml:409
+#: doc/classes/CanvasItem.xml:418
msgid ""
"Draws a textured rectangle region at a given position, optionally modulated "
"by a color. If [code]transpose[/code] is [code]true[/code], the texture will "
"have its X and Y coordinates swapped."
msgstr ""
-#: doc/classes/CanvasItem.xml:416 doc/classes/Node3D.xml:19
+#: doc/classes/CanvasItem.xml:425 doc/classes/Node3D.xml:19
msgid ""
"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."
msgstr ""
-#: doc/classes/CanvasItem.xml:423
+#: doc/classes/CanvasItem.xml:432
msgid "Returns the [RID] of the [World2D] canvas where this item is in."
msgstr ""
-#: doc/classes/CanvasItem.xml:430
+#: doc/classes/CanvasItem.xml:439
msgid "Returns the canvas item RID used by [RenderingServer] for this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:437
+#: doc/classes/CanvasItem.xml:446
msgid "Returns the transform matrix of this item's canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:444
+#: doc/classes/CanvasItem.xml:453
msgid "Returns the global position of the mouse."
msgstr ""
-#: doc/classes/CanvasItem.xml:451
+#: doc/classes/CanvasItem.xml:460
msgid "Returns the global transform matrix of this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:458
+#: doc/classes/CanvasItem.xml:467
msgid ""
"Returns the global transform matrix of this item in relation to the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:465
+#: doc/classes/CanvasItem.xml:474
msgid "Returns the mouse position relative to this item's position."
msgstr ""
-#: doc/classes/CanvasItem.xml:472
+#: doc/classes/CanvasItem.xml:481
msgid "Returns the transform matrix of this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:479
+#: doc/classes/CanvasItem.xml:488
msgid "Returns the viewport's boundaries as a [Rect2]."
msgstr ""
-#: doc/classes/CanvasItem.xml:486
+#: doc/classes/CanvasItem.xml:495
msgid "Returns this item's transform in relation to the viewport."
msgstr ""
-#: doc/classes/CanvasItem.xml:493
+#: doc/classes/CanvasItem.xml:502
msgid "Returns the [World2D] where this item is in."
msgstr ""
-#: doc/classes/CanvasItem.xml:500
+#: doc/classes/CanvasItem.xml:509
msgid "Hide the [CanvasItem] if it's currently visible."
msgstr ""
-#: doc/classes/CanvasItem.xml:507
+#: doc/classes/CanvasItem.xml:516
msgid ""
"Returns [code]true[/code] if local transform notifications are communicated "
"to children."
msgstr ""
-#: doc/classes/CanvasItem.xml:514
+#: doc/classes/CanvasItem.xml:523
msgid ""
"Returns [code]true[/code] if the node is set as top-level. See [method "
"set_as_toplevel]."
msgstr ""
-#: doc/classes/CanvasItem.xml:521
+#: doc/classes/CanvasItem.xml:530
msgid ""
"Returns [code]true[/code] if global transform notifications are communicated "
"to children."
msgstr ""
-#: doc/classes/CanvasItem.xml:528
+#: doc/classes/CanvasItem.xml:537 doc/classes/Node3D.xml:104
msgid ""
"Returns [code]true[/code] if the node is present in the [SceneTree], its "
-"[member visible] property is [code]true[/code] and its inherited visibility "
-"is also [code]true[/code]."
+"[member visible] property is [code]true[/code] and all its antecedents are "
+"also visible. If any antecedent is hidden, this node will not be visible in "
+"the scene tree."
msgstr ""
-#: doc/classes/CanvasItem.xml:537
+#: doc/classes/CanvasItem.xml:546
msgid "Assigns [code]screen_point[/code] as this node's new local transform."
msgstr ""
-#: doc/classes/CanvasItem.xml:546
+#: doc/classes/CanvasItem.xml:555
msgid ""
"Transformations issued by [code]event[/code]'s inputs are applied in local "
"space instead of global space."
msgstr ""
-#: doc/classes/CanvasItem.xml:555
+#: doc/classes/CanvasItem.xml:564
msgid ""
"If [code]enable[/code] is [code]true[/code], the node won't inherit its "
"transform from parent canvas items."
msgstr ""
-#: doc/classes/CanvasItem.xml:564
+#: doc/classes/CanvasItem.xml:573
msgid ""
"If [code]enable[/code] is [code]true[/code], children will be updated with "
"local transform data."
msgstr ""
-#: doc/classes/CanvasItem.xml:573
+#: doc/classes/CanvasItem.xml:582
msgid ""
"If [code]enable[/code] is [code]true[/code], children will be updated with "
"global transform data."
msgstr ""
-#: doc/classes/CanvasItem.xml:580
+#: doc/classes/CanvasItem.xml:589
msgid ""
"Show the [CanvasItem] if it's currently hidden. For controls that inherit "
"[Popup], the correct way to make them visible is to call one of the multiple "
"[code]popup*()[/code] functions instead."
msgstr ""
-#: doc/classes/CanvasItem.xml:587
+#: doc/classes/CanvasItem.xml:596
msgid ""
"Queue the [CanvasItem] for update. [constant NOTIFICATION_DRAW] will be "
"called on idle time to request redraw."
msgstr ""
-#: doc/classes/CanvasItem.xml:593
+#: doc/classes/CanvasItem.xml:602
msgid ""
"The rendering layers in which this [CanvasItem] responds to [Light2D] nodes."
msgstr ""
-#: doc/classes/CanvasItem.xml:596
+#: doc/classes/CanvasItem.xml:605
msgid "The material applied to textures on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:599
+#: doc/classes/CanvasItem.xml:608
msgid "The color applied to textures on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:602
+#: doc/classes/CanvasItem.xml:611
msgid ""
"The color applied to textures on this [CanvasItem]. This is not inherited by "
"children [CanvasItem]s."
msgstr ""
-#: doc/classes/CanvasItem.xml:605
+#: doc/classes/CanvasItem.xml:614
msgid "If [code]true[/code], the object draws behind its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:608
+#: doc/classes/CanvasItem.xml:617
msgid "If [code]true[/code], the object draws on top of its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:611
+#: doc/classes/CanvasItem.xml:620
msgid "The texture filtering mode to use on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:614
+#: doc/classes/CanvasItem.xml:623
msgid "The texture repeating mode to use on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:617
+#: doc/classes/CanvasItem.xml:626
msgid ""
"If [code]true[/code], the parent [CanvasItem]'s [member material] property "
"is used as this one's material."
msgstr ""
-#: doc/classes/CanvasItem.xml:620
+#: doc/classes/CanvasItem.xml:629
msgid ""
-"If [code]true[/code], this [CanvasItem] is drawn. For controls that inherit "
-"[Popup], the correct way to make them visible is to call one of the multiple "
-"[code]popup*()[/code] functions instead."
+"If [code]true[/code], this [CanvasItem] is drawn. The node is only visible "
+"if all of its antecedents are visible as well (in other words, [method "
+"is_visible_in_tree] must return [code]true[/code]).\n"
+"[b]Note:[/b] For controls that inherit [Popup], the correct way to make them "
+"visible is to call one of the multiple [code]popup*()[/code] functions "
+"instead."
msgstr ""
-#: doc/classes/CanvasItem.xml:626
+#: doc/classes/CanvasItem.xml:636
msgid ""
"Emitted when the [CanvasItem] must redraw. This can only be connected "
"realtime, as deferred will not allow drawing."
msgstr ""
-#: doc/classes/CanvasItem.xml:631
+#: doc/classes/CanvasItem.xml:641
msgid "Emitted when becoming hidden."
msgstr ""
-#: doc/classes/CanvasItem.xml:636
+#: doc/classes/CanvasItem.xml:646
msgid "Emitted when the item rect has changed."
msgstr ""
-#: doc/classes/CanvasItem.xml:641
+#: doc/classes/CanvasItem.xml:651
msgid "Emitted when the visibility (hidden/visible) changes."
msgstr ""
-#: doc/classes/CanvasItem.xml:647
+#: doc/classes/CanvasItem.xml:657
msgid ""
"The [CanvasItem]'s transform has changed. This notification is only received "
"if enabled by [method set_notify_transform] or [method "
"set_notify_local_transform]."
msgstr ""
-#: doc/classes/CanvasItem.xml:650
+#: doc/classes/CanvasItem.xml:660
msgid "The [CanvasItem] is requested to draw."
msgstr ""
-#: doc/classes/CanvasItem.xml:653
+#: doc/classes/CanvasItem.xml:663
msgid "The [CanvasItem]'s visibility has changed."
msgstr ""
-#: doc/classes/CanvasItem.xml:656
+#: doc/classes/CanvasItem.xml:666
msgid "The [CanvasItem] has entered the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:659
+#: doc/classes/CanvasItem.xml:669
msgid "The [CanvasItem] has exited the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:662 doc/classes/CanvasItem.xml:688
+#: doc/classes/CanvasItem.xml:672 doc/classes/CanvasItem.xml:698
msgid "The [CanvasItem] will inherit the filter from its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:665
+#: doc/classes/CanvasItem.xml:675
msgid ""
"The texture filter reads from the nearest pixel only. The simplest and "
"fastest method of filtering. Useful for pixel art."
msgstr ""
-#: doc/classes/CanvasItem.xml:668
+#: doc/classes/CanvasItem.xml:678
msgid ""
"The texture filter blends between the nearest four pixels. Use this for most "
"cases where you want to avoid a pixelated style."
msgstr ""
-#: doc/classes/CanvasItem.xml:671
+#: doc/classes/CanvasItem.xml:681
msgid ""
"The texture filter reads from the nearest pixel in the nearest mipmap. This "
"is the fastest way to read from textures with mipmaps."
msgstr ""
-#: doc/classes/CanvasItem.xml:674
+#: doc/classes/CanvasItem.xml:684
msgid ""
"The texture filter blends between the nearest 4 pixels and between the "
"nearest 2 mipmaps. Use this for non-pixel art textures that may be viewed at "
@@ -11205,7 +11268,7 @@ msgid ""
"smooth out pixels that are smaller than on-screen pixels."
msgstr ""
-#: doc/classes/CanvasItem.xml:677
+#: doc/classes/CanvasItem.xml:687
msgid ""
"The texture filter reads from the nearest pixel, but selects a mipmap based "
"on the angle between the surface and the camera view. This reduces artifacts "
@@ -11214,7 +11277,7 @@ msgid ""
"TEXTURE_FILTER_NEAREST_WITH_MIPMAPS] is usually more appropriate."
msgstr ""
-#: doc/classes/CanvasItem.xml:681
+#: doc/classes/CanvasItem.xml:691
msgid ""
"The texture filter blends between the nearest 4 pixels and selects a mipmap "
"based on the angle between the surface and the camera view. This reduces "
@@ -11225,21 +11288,21 @@ msgid ""
"TEXTURE_FILTER_LINEAR_WITH_MIPMAPS] is usually more appropriate."
msgstr ""
-#: doc/classes/CanvasItem.xml:691
+#: doc/classes/CanvasItem.xml:701
msgid "Texture will not repeat."
msgstr ""
-#: doc/classes/CanvasItem.xml:694
+#: doc/classes/CanvasItem.xml:704
msgid "Texture will repeat normally."
msgstr ""
-#: doc/classes/CanvasItem.xml:697
+#: doc/classes/CanvasItem.xml:707
msgid ""
"Texture will repeat in a 2x2 tiled mode, where elements at even positions "
"are mirrored."
msgstr ""
-#: doc/classes/CanvasItem.xml:700
+#: doc/classes/CanvasItem.xml:710
msgid "Represents the size of the [enum TextureRepeat] enum."
msgstr ""
@@ -12312,16 +12375,15 @@ msgid ""
msgstr ""
#: doc/classes/Color.xml:4
-msgid "Color in RGBA format with some support for ARGB format."
+msgid "Color in RGBA format using floats on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:7
msgid ""
-"A color is represented by red, green, and blue [code](r, g, b)[/code] "
-"components. Additionally, [code]a[/code] represents the alpha component, "
-"often used for transparency. Values are in floating-point and usually range "
-"from 0 to 1. Some properties (such as [member CanvasItem.modulate]) may "
-"accept values greater than 1.\n"
+"A color represented by red, green, blue, and alpha (RGBA) components. The "
+"alpha component is often used for transparency. Values are in floating-point "
+"and usually range from 0 to 1. Some properties (such as CanvasItem.modulate) "
+"may accept values greater than 1 (overbright or HDR colors).\n"
"You can also create a color from standardized color names by using [method "
"@GDScript.ColorN] or directly using the color constants defined here. The "
"standardized color set is based on the [url=https://en.wikipedia.org/wiki/"
@@ -12535,47 +12597,48 @@ msgid ""
msgstr ""
#: doc/classes/Color.xml:280
-msgid "Alpha value (range 0 to 1)."
+msgid ""
+"The color's alpha (transparency) component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:283
-msgid "Alpha value (range 0 to 255)."
+msgid "Wrapper for [member a] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:286
-msgid "Blue value (range 0 to 1)."
+msgid "The color's blue component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:289
-msgid "Blue value (range 0 to 255)."
+msgid "Wrapper for [member b] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:292
-msgid "Green value (range 0 to 1)."
+msgid "The color's green component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:295
-msgid "Green value (range 0 to 255)."
+msgid "Wrapper for [member g] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:298
-msgid "HSV hue value (range 0 to 1)."
+msgid "The HSV hue of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:301
-msgid "Red value (range 0 to 1)."
+msgid "The color's red component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:304
-msgid "Red value (range 0 to 255)."
+msgid "Wrapper for [member r] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:307
-msgid "HSV saturation value (range 0 to 1)."
+msgid "The HSV saturation of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:310
-msgid "HSV value (range 0 to 1)."
+msgid "The HSV value (brightness) of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:315
@@ -14495,23 +14558,35 @@ msgstr ""
#: doc/classes/Control.xml:859
msgid ""
"The node's scale, relative to its [member rect_size]. Change this property "
-"to scale the node around its [member rect_pivot_offset]."
-msgstr ""
-
-#: doc/classes/Control.xml:862
+"to scale the node around its [member rect_pivot_offset]. The Control's "
+"[member hint_tooltip] will also scale according to this value.\n"
+"[b]Note:[/b] This property is mainly intended to be used for animation "
+"purposes. Text inside the Control will look pixelated or blurry when the "
+"Control is scaled. To support multiple resolutions in your project, use an "
+"appropriate viewport stretch mode as described in the [url=https://docs."
+"godotengine.org/en/latest/tutorials/viewports/multiple_resolutions."
+"html]documentation[/url] instead of scaling Controls individually.\n"
+"[b]Note:[/b] If the Control node is a child of a [Container] node, the scale "
+"will be reset to [code]Vector2(1, 1)[/code] when the scene is instanced. To "
+"set the Control's scale when it's instanced, wait for one frame using "
+"[code]yield(get_tree(), \"idle_frame\")[/code] then set its [member "
+"rect_scale] property."
+msgstr ""
+
+#: doc/classes/Control.xml:864
msgid ""
"The size of the node's bounding rectangle, in pixels. [Container] nodes "
"update this property automatically."
msgstr ""
-#: doc/classes/Control.xml:865
+#: doc/classes/Control.xml:867
msgid ""
"Tells the parent [Container] nodes how they should resize and place the node "
"on the X axis. Use one of the [enum SizeFlags] constants to change the "
"flags. See the constants to learn what each does."
msgstr ""
-#: doc/classes/Control.xml:868
+#: doc/classes/Control.xml:870
msgid ""
"If the node and at least one of its neighbours uses the [constant "
"SIZE_EXPAND] size flag, the parent [Container] will let it take more or less "
@@ -14520,181 +14595,181 @@ msgid ""
"space."
msgstr ""
-#: doc/classes/Control.xml:871
+#: doc/classes/Control.xml:873
msgid ""
"Tells the parent [Container] nodes how they should resize and place the node "
"on the Y axis. Use one of the [enum SizeFlags] constants to change the "
"flags. See the constants to learn what each does."
msgstr ""
-#: doc/classes/Control.xml:874
+#: doc/classes/Control.xml:876
msgid ""
"Changing this property replaces the current [Theme] resource this node and "
"all its [Control] children use."
msgstr ""
-#: doc/classes/Control.xml:880
+#: doc/classes/Control.xml:882
msgid "Emitted when the node gains keyboard focus."
msgstr ""
-#: doc/classes/Control.xml:885
+#: doc/classes/Control.xml:887
msgid "Emitted when the node loses keyboard focus."
msgstr ""
-#: doc/classes/Control.xml:892
+#: doc/classes/Control.xml:894
msgid "Emitted when the node receives an [InputEvent]."
msgstr ""
-#: doc/classes/Control.xml:897
+#: doc/classes/Control.xml:899
msgid "Emitted when the node's minimum size changes."
msgstr ""
-#: doc/classes/Control.xml:902
+#: doc/classes/Control.xml:904
msgid ""
"Emitted when the mouse enters the control's [code]Rect[/code] area, provided "
"its [member mouse_filter] lets the event reach it."
msgstr ""
-#: doc/classes/Control.xml:907
+#: doc/classes/Control.xml:909
msgid ""
"Emitted when the mouse leaves the control's [code]Rect[/code] area, provided "
"its [member mouse_filter] lets the event reach it."
msgstr ""
-#: doc/classes/Control.xml:912
+#: doc/classes/Control.xml:914
msgid "Emitted when the control changes size."
msgstr ""
-#: doc/classes/Control.xml:917
+#: doc/classes/Control.xml:919
msgid ""
"Emitted when one of the size flags changes. See [member "
"size_flags_horizontal] and [member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:927
+#: doc/classes/Control.xml:929
msgid "The node cannot grab focus. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:930
+#: doc/classes/Control.xml:932
msgid ""
"The node can only grab focus on mouse clicks. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:933
+#: doc/classes/Control.xml:935
msgid ""
"The node can grab focus on mouse click or using the arrows and the Tab keys "
"on the keyboard. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:936
+#: doc/classes/Control.xml:938
msgid ""
"Sent when the node changes size. Use [member rect_size] to get the new size."
msgstr ""
-#: doc/classes/Control.xml:939
+#: doc/classes/Control.xml:941
msgid "Sent when the mouse pointer enters the node."
msgstr ""
-#: doc/classes/Control.xml:942
+#: doc/classes/Control.xml:944
msgid "Sent when the mouse pointer exits the node."
msgstr ""
-#: doc/classes/Control.xml:945
+#: doc/classes/Control.xml:947
msgid "Sent when the node grabs focus."
msgstr ""
-#: doc/classes/Control.xml:948
+#: doc/classes/Control.xml:950
msgid "Sent when the node loses focus."
msgstr ""
-#: doc/classes/Control.xml:951
+#: doc/classes/Control.xml:953
msgid ""
"Sent when the node's [member theme] changes, right before Godot redraws the "
"control. Happens when you call one of the [code]add_theme_*_override[/code] "
"methods."
msgstr ""
-#: doc/classes/Control.xml:954
+#: doc/classes/Control.xml:956
msgid ""
"Sent when this node is inside a [ScrollContainer] which has begun being "
"scrolled."
msgstr ""
-#: doc/classes/Control.xml:957
+#: doc/classes/Control.xml:959
msgid ""
"Sent when this node is inside a [ScrollContainer] which has stopped being "
"scrolled."
msgstr ""
-#: doc/classes/Control.xml:960
+#: doc/classes/Control.xml:962
msgid ""
"Show the system's arrow mouse cursor when the user hovers the node. Use with "
"[member mouse_default_cursor_shape]."
msgstr ""
-#: doc/classes/Control.xml:963
+#: doc/classes/Control.xml:965
msgid ""
"Show the system's I-beam mouse cursor when the user hovers the node. The I-"
"beam pointer has a shape similar to \"I\". It tells the user they can "
"highlight or insert text."
msgstr ""
-#: doc/classes/Control.xml:966
+#: doc/classes/Control.xml:968
msgid ""
"Show the system's pointing hand mouse cursor when the user hovers the node."
msgstr ""
-#: doc/classes/Control.xml:969
+#: doc/classes/Control.xml:971
msgid "Show the system's cross mouse cursor when the user hovers the node."
msgstr ""
-#: doc/classes/Control.xml:972
+#: doc/classes/Control.xml:974
msgid ""
"Show the system's wait mouse cursor, often an hourglass, when the user "
"hovers the node."
msgstr ""
-#: doc/classes/Control.xml:975
+#: doc/classes/Control.xml:977
msgid ""
"Show the system's busy mouse cursor when the user hovers the node. Often an "
"hourglass."
msgstr ""
-#: doc/classes/Control.xml:978
+#: doc/classes/Control.xml:980
msgid ""
"Show the system's drag mouse cursor, often a closed fist or a cross symbol, "
"when the user hovers the node. It tells the user they're currently dragging "
"an item, like a node in the Scene dock."
msgstr ""
-#: doc/classes/Control.xml:981
+#: doc/classes/Control.xml:983
msgid ""
"Show the system's drop mouse cursor when the user hovers the node. It can be "
"an open hand. It tells the user they can drop an item they're currently "
"grabbing, like a node in the Scene dock."
msgstr ""
-#: doc/classes/Control.xml:984
+#: doc/classes/Control.xml:986
msgid ""
"Show the system's forbidden mouse cursor when the user hovers the node. "
"Often a crossed circle."
msgstr ""
-#: doc/classes/Control.xml:987
+#: doc/classes/Control.xml:989
msgid ""
"Show the system's vertical resize mouse cursor when the user hovers the "
"node. A double-headed vertical arrow. It tells the user they can resize the "
"window or the panel vertically."
msgstr ""
-#: doc/classes/Control.xml:990
+#: doc/classes/Control.xml:992
msgid ""
"Show the system's horizontal resize mouse cursor when the user hovers the "
"node. A double-headed horizontal arrow. It tells the user they can resize "
"the window or the panel horizontally."
msgstr ""
-#: doc/classes/Control.xml:993
+#: doc/classes/Control.xml:995
msgid ""
"Show the system's window resize mouse cursor when the user hovers the node. "
"The cursor is a double-headed arrow that goes from the bottom left to the "
@@ -14702,7 +14777,7 @@ msgid ""
"horizontally and vertically."
msgstr ""
-#: doc/classes/Control.xml:996
+#: doc/classes/Control.xml:998
msgid ""
"Show the system's window resize mouse cursor when the user hovers the node. "
"The cursor is a double-headed arrow that goes from the top left to the "
@@ -14710,93 +14785,93 @@ msgid ""
"they can resize the window or the panel both horizontally and vertically."
msgstr ""
-#: doc/classes/Control.xml:999
+#: doc/classes/Control.xml:1001
msgid ""
"Show the system's move mouse cursor when the user hovers the node. It shows "
"2 double-headed arrows at a 90 degree angle. It tells the user they can move "
"a UI element freely."
msgstr ""
-#: doc/classes/Control.xml:1002
+#: doc/classes/Control.xml:1004
msgid ""
"Show the system's vertical split mouse cursor when the user hovers the node. "
"On Windows, it's the same as [constant CURSOR_VSIZE]."
msgstr ""
-#: doc/classes/Control.xml:1005
+#: doc/classes/Control.xml:1007
msgid ""
"Show the system's horizontal split mouse cursor when the user hovers the "
"node. On Windows, it's the same as [constant CURSOR_HSIZE]."
msgstr ""
-#: doc/classes/Control.xml:1008
+#: doc/classes/Control.xml:1010
msgid ""
"Show the system's help mouse cursor when the user hovers the node, a "
"question mark."
msgstr ""
-#: doc/classes/Control.xml:1011
+#: doc/classes/Control.xml:1013
msgid ""
"Snap all 4 anchors to the top-left of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1014
+#: doc/classes/Control.xml:1016
msgid ""
"Snap all 4 anchors to the top-right of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1017
+#: doc/classes/Control.xml:1019
msgid ""
"Snap all 4 anchors to the bottom-left of the parent control's bounds. Use "
"with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1020
+#: doc/classes/Control.xml:1022
msgid ""
"Snap all 4 anchors to the bottom-right of the parent control's bounds. Use "
"with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1023
+#: doc/classes/Control.xml:1025
msgid ""
"Snap all 4 anchors to the center of the left edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1026
+#: doc/classes/Control.xml:1028
msgid ""
"Snap all 4 anchors to the center of the top edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1029
+#: doc/classes/Control.xml:1031
msgid ""
"Snap all 4 anchors to the center of the right edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1032
+#: doc/classes/Control.xml:1034
msgid ""
"Snap all 4 anchors to the center of the bottom edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1035
+#: doc/classes/Control.xml:1037
msgid ""
"Snap all 4 anchors to the center of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1038
+#: doc/classes/Control.xml:1040
msgid ""
"Snap all 4 anchors to the left edge of the parent control. The left margin "
"becomes relative to the left edge and the top margin relative to the top "
"left corner of the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1041
+#: doc/classes/Control.xml:1043
msgid ""
"Snap all 4 anchors to the top edge of the parent control. The left margin "
"becomes relative to the top left corner, the top margin relative to the top "
@@ -14804,14 +14879,14 @@ msgid ""
"parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1044
+#: doc/classes/Control.xml:1046
msgid ""
"Snap all 4 anchors to the right edge of the parent control. The right margin "
"becomes relative to the right edge and the top margin relative to the top "
"right corner of the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1047
+#: doc/classes/Control.xml:1049
msgid ""
"Snap all 4 anchors to the bottom edge of the parent control. The left margin "
"becomes relative to the bottom left corner, the bottom margin relative to "
@@ -14819,19 +14894,19 @@ msgid ""
"the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1050
+#: doc/classes/Control.xml:1052
msgid ""
"Snap all 4 anchors to a vertical line that cuts the parent control in half. "
"Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1053
+#: doc/classes/Control.xml:1055
msgid ""
"Snap all 4 anchors to a horizontal line that cuts the parent control in "
"half. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1056
+#: doc/classes/Control.xml:1058
msgid ""
"Snap all 4 anchors to the respective corners of the parent control. Set all "
"4 margins to 0 after you applied this preset and the [Control] will fit its "
@@ -14839,30 +14914,30 @@ msgid ""
"editor. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1059
+#: doc/classes/Control.xml:1061
msgid "The control will be resized to its minimum size."
msgstr ""
-#: doc/classes/Control.xml:1062
+#: doc/classes/Control.xml:1064
msgid "The control's width will not change."
msgstr ""
-#: doc/classes/Control.xml:1065
+#: doc/classes/Control.xml:1067
msgid "The control's height will not change."
msgstr ""
-#: doc/classes/Control.xml:1068
+#: doc/classes/Control.xml:1070
msgid "The control's size will not change."
msgstr ""
-#: doc/classes/Control.xml:1071
+#: doc/classes/Control.xml:1073
msgid ""
"Tells the parent [Container] to expand the bounds of this node to fill all "
"the available space without pushing any other node. Use with [member "
"size_flags_horizontal] and [member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1074
+#: doc/classes/Control.xml:1076
msgid ""
"Tells the parent [Container] to let this node take all the available space "
"on the axis you flag. If multiple neighboring nodes are set to expand, "
@@ -14871,13 +14946,13 @@ msgid ""
"[member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1077
+#: doc/classes/Control.xml:1079
msgid ""
"Sets the node's size flags to both fill and expand. See the 2 constants "
"above for more information."
msgstr ""
-#: doc/classes/Control.xml:1080
+#: doc/classes/Control.xml:1082
msgid ""
"Tells the parent [Container] to center the node in itself. It centers the "
"control based on its bounding box, so it doesn't work with the fill or "
@@ -14885,7 +14960,7 @@ msgid ""
"size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1083
+#: doc/classes/Control.xml:1085
msgid ""
"Tells the parent [Container] to align the node with its end, either the "
"bottom or the right edge. It doesn't work with the fill or expand size "
@@ -14893,7 +14968,7 @@ msgid ""
"size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1086
+#: doc/classes/Control.xml:1088
msgid ""
"The control will receive mouse button input events through [method "
"_gui_input] if clicked on. And the control will receive the [signal "
@@ -14902,7 +14977,7 @@ msgid ""
"other controls. This also results in blocking signals in other controls."
msgstr ""
-#: doc/classes/Control.xml:1089
+#: doc/classes/Control.xml:1091
msgid ""
"The control will receive mouse button input events through [method "
"_gui_input] if clicked on. And the control will receive the [signal "
@@ -14914,7 +14989,7 @@ msgid ""
"not be fired."
msgstr ""
-#: doc/classes/Control.xml:1092
+#: doc/classes/Control.xml:1094
msgid ""
"The control will not receive mouse button input events through [method "
"_gui_input]. The control will also not receive the [signal mouse_entered] "
@@ -14923,25 +14998,25 @@ msgid ""
"handled automatically."
msgstr ""
-#: doc/classes/Control.xml:1095
+#: doc/classes/Control.xml:1097
msgid ""
"The control will grow to the left or top to make up if its minimum size is "
"changed to be greater than its current size on the respective axis."
msgstr ""
-#: doc/classes/Control.xml:1098
+#: doc/classes/Control.xml:1100
msgid ""
"The control will grow to the right or bottom to make up if its minimum size "
"is changed to be greater than its current size on the respective axis."
msgstr ""
-#: doc/classes/Control.xml:1101
+#: doc/classes/Control.xml:1103
msgid ""
"The control will grow in both directions equally to make up if its minimum "
"size is changed to be greater than its current size."
msgstr ""
-#: doc/classes/Control.xml:1104
+#: doc/classes/Control.xml:1106
msgid ""
"Snaps one of the 4 anchor's sides to the origin of the node's [code]Rect[/"
"code], in the top left. Use it with one of the [code]anchor_*[/code] member "
@@ -14949,7 +15024,7 @@ msgid ""
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1107
+#: doc/classes/Control.xml:1109
msgid ""
"Snaps one of the 4 anchor's sides to the end of the node's [code]Rect[/"
"code], in the bottom right. Use it with one of the [code]anchor_*[/code] "
@@ -16734,7 +16809,7 @@ msgstr ""
msgid ""
"Returns the [Texture2D] associated with the specified [enum DecalTexture]. "
"This is a convenience method, in most cases you should access the texture "
-"directly. \n"
+"directly.\n"
"For example, instead of [code]albedo_tex = $Decal.get_texture(Decal."
"TEXTURE_ALBEDO)[/code], use [code]albedo_tex = $Decal.texture_albedo[/"
"code].\n"
@@ -16750,7 +16825,7 @@ msgstr ""
msgid ""
"Sets the [Texture2D] associated with the specified [enum DecalTexture]. This "
"is a convenience method, in most cases you should access the texture "
-"directly. \n"
+"directly.\n"
"For example, instead of [code]$Decal.set_texture(Decal.TEXTURE_ALBEDO, "
"albedo_tex)[/code], use [code]$Decal.texture_albedo = albedo_tex[/code].\n"
"One case where this is better than accessing the texture directly is when "
@@ -17099,7 +17174,7 @@ msgstr ""
msgid "The light's shadow rendering algorithm. See [enum ShadowMode]."
msgstr ""
-#: doc/classes/DirectionalLight3D.xml:31 doc/classes/RenderingServer.xml:3254
+#: doc/classes/DirectionalLight3D.xml:31 doc/classes/RenderingServer.xml:3250
msgid ""
"Sets the size of the directional shadow pancake. The pancake offsets the "
"start of the shadow's camera frustum to provide a higher effective depth "
@@ -17173,10 +17248,10 @@ msgstr ""
msgid ""
"Directory type. It is used to manage directories and their content (not "
"restricted to the project folder).\n"
-"When creating a new [Directory], its default opened directory will be "
-"[code]res://[/code]. This may change in the future, so it is advised to "
-"always use [method open] to initialize your [Directory] where you want to "
-"operate, with explicit error checking.\n"
+"When creating a new [Directory], it must be explicitly opened using [method "
+"open] before most methods can be used. However, [method file_exists] and "
+"[method dir_exists] can be used without opening a directory. If so, they use "
+"a path relative to [code]res://[/code].\n"
"Here is an example on how to iterate through the files of a directory:\n"
"[codeblock]\n"
"func dir_contents(path):\n"
@@ -17195,7 +17270,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Directory.xml:27 doc/classes/File.xml:25
+#: doc/classes/Directory.xml:27 doc/classes/File.xml:26
msgid ""
"https://docs.godotengine.org/en/latest/getting_started/step_by_step/"
"filesystem.html"
@@ -17229,41 +17304,43 @@ msgstr ""
#: doc/classes/Directory.xml:65
msgid ""
"Returns whether the target directory exists. The argument can be relative to "
-"the current directory, or an absolute path."
+"the current directory, or an absolute path.\n"
+"If the [Directory] is not open, the path is relative to [code]res://[/code]."
msgstr ""
-#: doc/classes/Directory.xml:74
+#: doc/classes/Directory.xml:75
msgid ""
"Returns whether the target file exists. The argument can be relative to the "
-"current directory, or an absolute path."
+"current directory, or an absolute path.\n"
+"If the [Directory] is not open, the path is relative to [code]res://[/code]."
msgstr ""
-#: doc/classes/Directory.xml:81
+#: doc/classes/Directory.xml:83
msgid ""
"Returns the absolute path to the currently opened directory (e.g. "
"[code]res://folder[/code] or [code]C:\\tmp\\folder[/code])."
msgstr ""
-#: doc/classes/Directory.xml:88
+#: doc/classes/Directory.xml:90
msgid ""
"Returns the currently opened directory's drive index. See [method get_drive] "
"to convert returned index to the name of the drive."
msgstr ""
-#: doc/classes/Directory.xml:97
+#: doc/classes/Directory.xml:99
msgid ""
"On Windows, returns the name of the drive (partition) passed as an argument "
"(e.g. [code]C:[/code]). On other platforms, or if the requested drive does "
"not existed, the method returns an empty String."
msgstr ""
-#: doc/classes/Directory.xml:104
+#: doc/classes/Directory.xml:106
msgid ""
"On Windows, returns the number of drives (partitions) mounted on the current "
"filesystem. On other platforms, the method returns 0."
msgstr ""
-#: doc/classes/Directory.xml:111
+#: doc/classes/Directory.xml:113
msgid ""
"Returns the next element (file or directory) in the current directory "
"(including [code].[/code] and [code]..[/code], unless "
@@ -17274,14 +17351,14 @@ msgid ""
"mandatory in such a case)."
msgstr ""
-#: doc/classes/Directory.xml:119
+#: doc/classes/Directory.xml:121
msgid ""
"On UNIX desktop systems, returns the available space on the current "
"directory's disk. On other platforms, this information is not available and "
"the method returns 0 or -1."
msgstr ""
-#: doc/classes/Directory.xml:130
+#: doc/classes/Directory.xml:132
msgid ""
"Initializes the stream used to list all files and directories using the "
"[method get_next] function, closing the current opened stream if needed. "
@@ -17293,13 +17370,13 @@ msgid ""
"out."
msgstr ""
-#: doc/classes/Directory.xml:139
+#: doc/classes/Directory.xml:141
msgid ""
"Closes the current stream opened with [method list_dir_begin] (whether it "
"has been fully processed with [method get_next] or not does not matter)."
msgstr ""
-#: doc/classes/Directory.xml:148
+#: doc/classes/Directory.xml:150
msgid ""
"Creates a directory. The argument can be relative to the current directory, "
"or an absolute path. The target directory should be placed in an already "
@@ -17308,7 +17385,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:158
+#: doc/classes/Directory.xml:160
msgid ""
"Creates a target directory and all necessary intermediate directories in its "
"path, by calling [method make_dir] recursively. The argument can be relative "
@@ -17316,7 +17393,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:168
+#: doc/classes/Directory.xml:170
msgid ""
"Opens an existing directory of the filesystem. The [code]path[/code] "
"argument can be within the project tree ([code]res://folder[/code]), the "
@@ -17325,7 +17402,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:178
+#: doc/classes/Directory.xml:180
msgid ""
"Deletes the target file or an empty directory. The argument can be relative "
"to the current directory, or an absolute path. If the target directory is "
@@ -17333,7 +17410,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:190
+#: doc/classes/Directory.xml:192
msgid ""
"Renames (move) the [code]from[/code] file to the [code]to[/code] "
"destination. Both arguments should be paths to files, either relative or "
@@ -17374,6 +17451,53 @@ msgid ""
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
+#: doc/classes/DisplayServer.xml:530
+msgid ""
+"Return the greatest scale factor of all screens.\n"
+"[b]Note:[/b] On macOS returned value is [code]2.0[/code] if there is at "
+"least one hiDPI (Retina) screen in the system, and [code]1.0[/code] in all "
+"other cases.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:557
+msgid ""
+"Return the scale factor of the specified screen by index.\n"
+"[b]Note:[/b] On macOS returned value is [code]2.0[/code] for hiDPI (Retina) "
+"screen, and [code]1.0[/code] for all other cases.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:630
+msgid ""
+"Returns the on-screen keyboard's height in pixels. Returns 0 if there is no "
+"keyboard or if it is currently hidden."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:637
+msgid "Hides the virtual keyboard if it is shown, does nothing otherwise."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:656
+msgid ""
+"Shows the virtual keyboard if the platform has one.\n"
+"[code]existing_text[/code] parameter is useful for implementing your own "
+"[LineEdit] or [TextEdit], as it tells the virtual keyboard what text has "
+"already been typed (the virtual keyboard uses it for auto-correct and "
+"predictions).\n"
+"[code]position[/code] parameter is the screen space [Rect2] of the edited "
+"text.\n"
+"[code]multiline[/code] parameter needs to be set to [code]true[/code] to be "
+"able to enter multiple lines of text, as in [TextEdit].\n"
+"[code]max_length[/code] limits the number of characters that can be entered "
+"if different from [code]-1[/code].\n"
+"[code]cursor_start[/code] can optionally define the current text cursor "
+"position if [code]cursor_end[/code] is not set.\n"
+"[code]cursor_start[/code] and [code]cursor_end[/code] can optionally define "
+"the current text selection.\n"
+"[b]Note:[/b] This method is implemented on Android, iOS and UWP."
+msgstr ""
+
#: doc/classes/DTLSServer.xml:4
msgid "Helper class to implement a DTLS server."
msgstr ""
@@ -17494,54 +17618,62 @@ msgstr ""
msgid "Adds a fallback font."
msgstr ""
-#: doc/classes/DynamicFont.xml:35
+#: doc/classes/DynamicFont.xml:33
+msgid ""
+"Returns a string containing all the characters available in the main and all "
+"the fallback fonts.\n"
+"If a given character is included in more than one font, it appears only once "
+"in the returned string."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:43
msgid "Returns the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:42
+#: doc/classes/DynamicFont.xml:50
msgid "Returns the number of fallback fonts."
msgstr ""
-#: doc/classes/DynamicFont.xml:51
+#: doc/classes/DynamicFont.xml:59
msgid ""
"Returns the spacing for the given [code]type[/code] (see [enum SpacingType])."
msgstr ""
-#: doc/classes/DynamicFont.xml:60
+#: doc/classes/DynamicFont.xml:68
msgid "Removes the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:71
+#: doc/classes/DynamicFont.xml:79
msgid "Sets the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:82
+#: doc/classes/DynamicFont.xml:90
msgid ""
"Sets the spacing for [code]type[/code] (see [enum SpacingType]) to "
"[code]value[/code] in pixels (not relative to the font size)."
msgstr ""
-#: doc/classes/DynamicFont.xml:88
+#: doc/classes/DynamicFont.xml:96
msgid "Extra spacing at the bottom in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:91
+#: doc/classes/DynamicFont.xml:99
msgid "Extra character spacing in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:94
+#: doc/classes/DynamicFont.xml:102
msgid "Extra space spacing in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:97
+#: doc/classes/DynamicFont.xml:105
msgid "Extra spacing at the top in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:100
+#: doc/classes/DynamicFont.xml:108
msgid "The font data."
msgstr ""
-#: doc/classes/DynamicFont.xml:103
+#: doc/classes/DynamicFont.xml:111
msgid ""
"The font outline's color.\n"
"[b]Note:[/b] It's recommended to leave this at the default value so that you "
@@ -17550,27 +17682,27 @@ msgid ""
"outline modulate theme item."
msgstr ""
-#: doc/classes/DynamicFont.xml:107
+#: doc/classes/DynamicFont.xml:115
msgid "The font outline's thickness in pixels (not relative to the font size)."
msgstr ""
-#: doc/classes/DynamicFont.xml:110
+#: doc/classes/DynamicFont.xml:118
msgid "The font size in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:115
+#: doc/classes/DynamicFont.xml:123
msgid "Spacing at the top."
msgstr ""
-#: doc/classes/DynamicFont.xml:118
+#: doc/classes/DynamicFont.xml:126
msgid "Spacing at the bottom."
msgstr ""
-#: doc/classes/DynamicFont.xml:121
+#: doc/classes/DynamicFont.xml:129
msgid "Character spacing."
msgstr ""
-#: doc/classes/DynamicFont.xml:124
+#: doc/classes/DynamicFont.xml:132
msgid "Space spacing."
msgstr ""
@@ -17952,7 +18084,12 @@ msgstr ""
msgid "Remitted if a resource is reimported."
msgstr ""
-#: doc/classes/EditorFileSystem.xml:106
+#: doc/classes/EditorFileSystem.xml:100
+msgid ""
+"Emitted if at least one resource is reloaded when the filesystem is scanned."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:107
msgid "Emitted if the source of any imported file changed."
msgstr ""
@@ -17994,29 +18131,43 @@ msgstr ""
msgid "Returns the path to the file at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:86
+#: doc/classes/EditorFileSystemDirectory.xml:70
+msgid ""
+"Returns the base class of the script class defined in the file at index "
+"[code]idx[/code]. If the file doesn't define a script class using the "
+"[code]class_name[/code] syntax, this will return an empty string."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:79
+msgid ""
+"Returns the name of the script class defined in the file at index [code]idx[/"
+"code]. If the file doesn't define a script class using the [code]class_name[/"
+"code] syntax, this will return an empty string."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:88
msgid "Returns the file extension of the file at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:93
+#: doc/classes/EditorFileSystemDirectory.xml:95
msgid "Returns the name of this directory."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:100
+#: doc/classes/EditorFileSystemDirectory.xml:102
msgid ""
"Returns the parent directory for this directory or [code]null[/code] if "
"called on a directory at [code]res://[/code] or [code]user://[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:107
+#: doc/classes/EditorFileSystemDirectory.xml:109
msgid "Returns the path to this directory."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:116
+#: doc/classes/EditorFileSystemDirectory.xml:118
msgid "Returns the subdirectory at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:123
+#: doc/classes/EditorFileSystemDirectory.xml:125
msgid "Returns the number of subdirectories in this directory."
msgstr ""
@@ -18107,45 +18258,72 @@ msgstr ""
msgid "Gets the unique name of the importer."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:92
+#: doc/classes/EditorImportPlugin.xml:86
+msgid ""
+"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. For example:\n"
+"[codeblock]\n"
+"func get_option_visibility(option, options):\n"
+" # Only show the lossy quality setting if the compression mode is set to "
+"\"Lossy\".\n"
+" if option == \"compress/lossy_quality\" and options.has(\"compress/mode"
+"\"):\n"
+" return int(options[\"compress/mode\"]) == COMPRESS_LOSSY\n"
+"\n"
+" return true\n"
+"[/codeblock]\n"
+"Return [code]true[/code] to make all options always visible."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:102
msgid ""
"Gets the number of initial presets defined by the plugin. Use [method "
"get_import_options] to get the default options for the preset and [method "
"get_preset_name] to get the name of the preset."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:101
+#: doc/classes/EditorImportPlugin.xml:111
msgid "Gets the name of the options preset at this index."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:108
+#: doc/classes/EditorImportPlugin.xml:118
msgid ""
"Gets the priority of this plugin for the recognized extension. Higher "
"priority plugins will be preferred. The default priority is [code]1.0[/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:115
+#: doc/classes/EditorImportPlugin.xml:125
msgid ""
"Gets the list of file extensions to associate with this loader (case-"
"insensitive). e.g. [code][\"obj\"][/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:122
+#: doc/classes/EditorImportPlugin.xml:132
msgid ""
"Gets the Godot resource type associated with this loader. e.g. [code]\"Mesh"
"\"[/code] or [code]\"Animation\"[/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:129
+#: doc/classes/EditorImportPlugin.xml:139
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:136
+#: doc/classes/EditorImportPlugin.xml:146
msgid "Gets the name to display in the import window."
msgstr ""
+#: doc/classes/EditorImportPlugin.xml:163
+msgid ""
+"Imports [code]source_file[/code] into [code]save_path[/code] with the import "
+"[code]options[/code] specified. The [code]platform_variants[/code] and "
+"[code]gen_files[/code] arrays will be modified by this function.\n"
+"This method must be overridden to do the actual importing work. See this "
+"class' description for an example of overriding this method."
+msgstr ""
+
#: doc/classes/EditorInspector.xml:4
msgid "A tab used to edit properties of the selected node."
msgstr ""
@@ -18161,6 +18339,58 @@ msgid ""
"the singleton using [method EditorInterface.get_inspector]."
msgstr ""
+#: doc/classes/EditorInspector.xml:17
+msgid ""
+"Refreshes the inspector.\n"
+"[b]Note:[/b] To save on CPU resources, calling this method will do nothing "
+"if the time specified in [code]docks/property_editor/auto_refresh_interval[/"
+"code] editor setting hasn't passed yet since this method was last called. "
+"(By default, this interval is set to 0.3 seconds.)"
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:30
+msgid ""
+"Emitted when the Edit button of an [Object] has been pressed in the "
+"inspector. This is mainly used in the remote scene tree inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:37
+msgid "Emitted when a property is removed from the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:44
+msgid "Emitted when a property is edited in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:51
+msgid ""
+"Emitted when a property is keyed in the inspector. Properties can be keyed "
+"by clicking the \"key\" icon next to a property when the Animation panel is "
+"toggled."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:58
+msgid "Emitted when a property is selected in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:67
+msgid ""
+"Emitted when a boolean property is toggled in the inspector.\n"
+"[b]Note:[/b] This signal is never emitted if the internal [code]autoclear[/"
+"code] property enabled. Since this property is always enabled in the editor "
+"inspector, this signal is never emitted by the editor itself."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:77
+msgid "Emitted when a resource is selected in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:82
+msgid ""
+"Emitted when a property that requires a restart to be applied is edited in "
+"the inspector. This is only used in the Project Settings and Editor Settings."
+msgstr ""
+
#: doc/classes/EditorInspectorPlugin.xml:4
msgid "Plugin for adding custom property editors on inspector."
msgstr ""
@@ -18239,91 +18469,155 @@ msgstr ""
#: doc/classes/EditorInterface.xml:26
msgid ""
-"Returns the main container of Godot editor's window. You can use it, for "
-"example, to retrieve the size of the container and place your controls "
+"Returns the main container of Godot editor's window. For example, you can "
+"use it to retrieve the size of the container and place your controls "
"accordingly."
msgstr ""
-#: doc/classes/EditorInterface.xml:39
+#: doc/classes/EditorInterface.xml:33
+msgid "Returns the current path being viewed in the [FileSystemDock]."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:40
msgid "Returns the edited (current) scene's root [Node]."
msgstr ""
-#: doc/classes/EditorInterface.xml:46
-msgid "Returns the [EditorSettings]."
+#: doc/classes/EditorInterface.xml:47
+msgid "Returns the editor's [EditorSettings] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:54
+msgid ""
+"Returns the main editor control. Use this as a parent for main screens.\n"
+"[b]Note:[/b] This returns the main editor control containing the whole "
+"editor, not the 2D or 3D viewports specifically."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:62
+msgid "Returns the editor's [FileSystemDock] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:53
-msgid "Returns the editor [Viewport]."
+#: doc/classes/EditorInterface.xml:69
+msgid "Returns the editor's [EditorInspector] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:72
+#: doc/classes/EditorInterface.xml:76
msgid "Returns an [Array] with the file paths of the currently opened scenes."
msgstr ""
-#: doc/classes/EditorInterface.xml:79
-msgid "Returns the [EditorFileSystem]."
+#: doc/classes/EditorInterface.xml:83
+msgid ""
+"Returns the name of the scene that is being played. If no scene is currently "
+"being played, returns an empty string."
msgstr ""
-#: doc/classes/EditorInterface.xml:86
-msgid "Returns the [EditorResourcePreview]."
+#: doc/classes/EditorInterface.xml:90
+msgid "Returns the editor's [EditorFileSystem] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:93
-msgid "Returns the [ScriptEditor]."
+#: doc/classes/EditorInterface.xml:97
+msgid "Returns the editor's [EditorResourcePreview] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:106
-msgid "Returns the [EditorSelection]."
+#: doc/classes/EditorInterface.xml:104
+msgid "Returns the editor's [ScriptEditor] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:117
+#: doc/classes/EditorInterface.xml:111
msgid ""
-"Shows the given property on the given [code]object[/code] in the Editor's "
+"Returns the path of the directory currently selected in the "
+"[FileSystemDock]. If a file is selected, its base directory will be returned "
+"using [method String.get_base_dir] instead."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:118
+msgid "Returns the editor's [EditorSelection] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:129
+msgid ""
+"Shows the given property on the given [code]object[/code] in the editor's "
"Inspector dock."
msgstr ""
-#: doc/classes/EditorInterface.xml:126
+#: doc/classes/EditorInterface.xml:136
msgid ""
-"Returns the enabled status of a plugin. The plugin name is the same as its "
-"directory name."
+"Returns [code]true[/code] if a scene is currently being played, [code]false[/"
+"code] otherwise. Paused scenes are considered as being played."
msgstr ""
-#: doc/classes/EditorInterface.xml:137
+#: doc/classes/EditorInterface.xml:145
+msgid ""
+"Returns [code]true[/code] if the specified [code]plugin[/code] is enabled. "
+"The plugin name is the same as its directory name."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:156
msgid ""
"Returns mesh previews rendered at the given size as an [Array] of "
"[Texture2D]s."
msgstr ""
-#: doc/classes/EditorInterface.xml:146
+#: doc/classes/EditorInterface.xml:165
msgid "Opens the scene at the given path."
msgstr ""
-#: doc/classes/EditorInterface.xml:155
+#: doc/classes/EditorInterface.xml:172
+msgid "Plays the currently active scene."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:181
+msgid "Plays the scene specified by its filepath."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:188
+msgid "Plays the main scene."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:197
msgid "Reloads the scene at the given path."
msgstr ""
-#: doc/classes/EditorInterface.xml:162
+#: doc/classes/EditorInterface.xml:204
msgid ""
"Saves the scene. Returns either [code]OK[/code] or [code]ERR_CANT_CREATE[/"
"code] (see [@GlobalScope] constants)."
msgstr ""
-#: doc/classes/EditorInterface.xml:173
+#: doc/classes/EditorInterface.xml:215
msgid "Saves the scene as a file at [code]path[/code]."
msgstr ""
-#: doc/classes/EditorInterface.xml:182
+#: doc/classes/EditorInterface.xml:224
msgid ""
"Selects the file, with the path provided by [code]file[/code], in the "
"FileSystem dock."
msgstr ""
-#: doc/classes/EditorInterface.xml:201
+#: doc/classes/EditorInterface.xml:233
+msgid ""
+"Sets the editor's current main screen to the one specified in [code]name[/"
+"code]. [code]name[/code] must match the text of the tab in question exactly "
+"([code]2D[/code], [code]3D[/code], [code]Script[/code], [code]AssetLib[/"
+"code])."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:244
msgid ""
"Sets the enabled status of a plugin. The plugin name is the same as its "
"directory name."
msgstr ""
+#: doc/classes/EditorInterface.xml:251
+msgid "Stops the scene that is currently playing."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:257
+msgid ""
+"If [code]true[/code], enables distraction-free mode which hides side docks "
+"to increase the space available for the main view."
+msgstr ""
+
#: doc/classes/EditorNode3DGizmo.xml:4
msgid "Custom gizmo for editing Node3D objects."
msgstr ""
@@ -18335,14 +18629,20 @@ msgid ""
"information."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:26
+#: doc/classes/EditorNode3DGizmo.xml:18
+msgid ""
+"Adds the specified [code]segments[/code] to the gizmo's collision shape for "
+"picking. Call this function during [method redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:27
msgid ""
"Adds collision triangles to the gizmo for picking. A [TriangleMesh] can be "
"generated from a regular [Mesh] too. Call this function during [method "
"redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:41
+#: doc/classes/EditorNode3DGizmo.xml:42
msgid ""
"Adds a list of handles (points) which can be used to deform the object being "
"edited.\n"
@@ -18350,20 +18650,33 @@ msgid ""
"handles. Call this function during [method redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:57
+#: doc/classes/EditorNode3DGizmo.xml:58
msgid ""
"Adds lines to the gizmo (as sets of 2 points), with a given material. The "
"lines are used for visualizing the gizmo. Call this function during [method "
"redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:84
+#: doc/classes/EditorNode3DGizmo.xml:73
+msgid ""
+"Adds a mesh to the gizmo with the specified [code]billboard[/code] state, "
+"[code]skeleton[/code] and [code]material[/code]. If [code]billboard[/code] "
+"is [code]true[/code], the mesh will rotate to always face the camera. Call "
+"this function during [method redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:86
msgid ""
"Adds an unscaled billboard for visualization. Call this function during "
"[method redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:103
+#: doc/classes/EditorNode3DGizmo.xml:93
+msgid ""
+"Removes everything in the gizmo including meshes, collisions and handles."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:106
msgid ""
"Commit a handle being edited (handles must have been previously added by "
"[method add_handles]).\n"
@@ -18371,40 +18684,42 @@ msgid ""
"restore the edited value to the original is provided."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:113
+#: doc/classes/EditorNode3DGizmo.xml:116
msgid ""
"Gets the name of an edited handle (handles must have been previously added "
"by [method add_handles]).\n"
"Handles can be named for reference to the user when editing."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:123
+#: doc/classes/EditorNode3DGizmo.xml:126
msgid ""
"Gets actual value of a handle. This value can be anything and used for "
"eventually undoing the motion when calling [method commit_handle]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:130
+#: doc/classes/EditorNode3DGizmo.xml:133
msgid ""
"Returns the [EditorNode3DGizmoPlugin] that owns this gizmo. It's useful to "
"retrieve materials using [method EditorNode3DGizmoPlugin.get_material]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:137
+#: doc/classes/EditorNode3DGizmo.xml:140
msgid "Returns the Node3D node associated with this gizmo."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:146
-msgid "Gets whether a handle is highlighted or not."
+#: doc/classes/EditorNode3DGizmo.xml:149
+msgid ""
+"Returns [code]true[/code] if the handle at index [code]index[/code] is "
+"highlighted by being hovered with the mouse."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:153
+#: doc/classes/EditorNode3DGizmo.xml:156
msgid ""
-"This function is called when the Node3D this gizmo refers to changes (the "
+"This function is called when the [Node3D] this gizmo refers to changes (the "
"[method Node3D.update_gizmo] is called)."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:166
+#: doc/classes/EditorNode3DGizmo.xml:169
msgid ""
"This function is used when the user drags a gizmo handle (previously added "
"with [method add_handles]) in screen coordinates.\n"
@@ -18412,6 +18727,18 @@ msgid ""
"raycasts."
msgstr ""
+#: doc/classes/EditorNode3DGizmo.xml:179
+msgid ""
+"Sets the gizmo's hidden state. If [code]true[/code], the gizmo will be "
+"hidden. If [code]false[/code], it will be shown."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:188
+msgid ""
+"Sets the reference [Node3D] node for the gizmo. [code]node[/code] must "
+"inherit from [Node3D]."
+msgstr ""
+
#: doc/classes/EditorNode3DGizmoPlugin.xml:4
msgid "Used by the editor to define Node3D gizmo types."
msgstr ""
@@ -18504,7 +18831,17 @@ msgid ""
"visibility menu."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:150
+#: doc/classes/EditorNode3DGizmoPlugin.xml:142
+msgid ""
+"Override this method to set the gizmo's priority. Higher values correspond "
+"to higher priority. If a gizmo with higher priority conflicts with another "
+"gizmo, only the gizmo with higher priority will be used.\n"
+"All built-in editor gizmos return a priority of [code]-1[/code]. If not "
+"overridden, this method will return [code]0[/code], which means custom "
+"gizmos will automatically override built-in gizmos."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:152
msgid ""
"Override this method to define which Node3D nodes have a gizmo from this "
"plugin. Whenever a [Node3D] node is added to a scene this method is called, "
@@ -18512,25 +18849,25 @@ msgid ""
"assigned and is added to this plugin's list of active gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:161
+#: doc/classes/EditorNode3DGizmoPlugin.xml:163
msgid ""
"Gets whether a handle is highlighted or not. Called for this plugin's active "
"gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:168
+#: doc/classes/EditorNode3DGizmoPlugin.xml:170
msgid ""
"Override this method to define whether Node3D with this gizmo should be "
"selecteble even when the gizmo is hidden."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:177
+#: doc/classes/EditorNode3DGizmoPlugin.xml:179
msgid ""
"Callback to redraw the provided gizmo. Called for this plugin's active "
"gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:192
+#: doc/classes/EditorNode3DGizmoPlugin.xml:194
msgid ""
"Update the value of a handle after it has been updated. Called for this "
"plugin's active gizmos."
@@ -18617,7 +18954,13 @@ msgid ""
"should be cleaned up using [code]remove_tool_menu_item(name)[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:149
+#: doc/classes/EditorPlugin.xml:151
+msgid ""
+"Registers a custom translation parser plugin for extracting translatable "
+"strings from custom files."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:158
msgid ""
"This method is called when the editor is about to save the project, switch "
"to another tab, etc. It asks the plugin to apply any pending state changes "
@@ -18626,32 +18969,32 @@ msgid ""
"must apply the shader code being written by the user to the object."
msgstr ""
-#: doc/classes/EditorPlugin.xml:163
+#: doc/classes/EditorPlugin.xml:172
msgid ""
"Clear all the state and reset the object being edited to zero. This ensures "
"your plugin does not keep editing a currently existing node, or a node from "
"the wrong scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:170
+#: doc/classes/EditorPlugin.xml:179
msgid ""
"Called by the engine when the user disables the [EditorPlugin] in the Plugin "
"tab of the project settings window."
msgstr ""
-#: doc/classes/EditorPlugin.xml:179
+#: doc/classes/EditorPlugin.xml:188
msgid ""
"This function is used for plugins that edit specific object types (nodes or "
"resources). It requests the editor to edit the given object."
msgstr ""
-#: doc/classes/EditorPlugin.xml:186
+#: doc/classes/EditorPlugin.xml:195
msgid ""
"Called by the engine when the user enables the [EditorPlugin] in the Plugin "
"tab of the project settings window."
msgstr ""
-#: doc/classes/EditorPlugin.xml:211
+#: doc/classes/EditorPlugin.xml:220
msgid ""
"Called when there is a root node in the current edited scene, [method "
"handles] is implemented and an [InputEvent] happens in the 2D viewport. "
@@ -18676,7 +19019,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:237
+#: doc/classes/EditorPlugin.xml:246
msgid ""
"Called when there is a root node in the current edited scene, [method "
"handles] is implemented and an [InputEvent] happens in the 3D viewport. "
@@ -18701,20 +19044,20 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:259
+#: doc/classes/EditorPlugin.xml:268
msgid ""
"This is for editors that edit script-based objects. You can return a list of "
"breakpoints in the format ([code]script:line[/code]), for example: "
"[code]res://path_to_script.gd:25[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:266
+#: doc/classes/EditorPlugin.xml:275
msgid ""
"Returns the [EditorInterface] object that gives you control over Godot "
"editor's window and its functionalities."
msgstr ""
-#: doc/classes/EditorPlugin.xml:273
+#: doc/classes/EditorPlugin.xml:282
msgid ""
"Override this method in your plugin to return a [Texture2D] in order to give "
"it an icon.\n"
@@ -18732,7 +19075,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:289
+#: doc/classes/EditorPlugin.xml:298
msgid ""
"Override this method in your plugin to provide the name of the plugin when "
"displayed in the Godot editor.\n"
@@ -18740,33 +19083,33 @@ msgid ""
"of the \"2D\", \"3D\", \"Script\", and \"AssetLib\" buttons."
msgstr ""
-#: doc/classes/EditorPlugin.xml:297
+#: doc/classes/EditorPlugin.xml:306
msgid ""
"Gets the Editor's dialogue used for making scripts.\n"
"[b]Note:[/b] Users can configure it before use."
msgstr ""
-#: doc/classes/EditorPlugin.xml:305
+#: doc/classes/EditorPlugin.xml:314
msgid ""
"Gets the state of your plugin editor. This is used when saving the scene (so "
"state is kept when opening it again) and for switching tabs (so state can be "
"restored when the tab returns)."
msgstr ""
-#: doc/classes/EditorPlugin.xml:312
+#: doc/classes/EditorPlugin.xml:321
msgid ""
"Gets the undo/redo object. Most actions in the editor can be undoable, so "
"use this object to make sure this happens when it's worth it."
msgstr ""
-#: doc/classes/EditorPlugin.xml:321
+#: doc/classes/EditorPlugin.xml:330
msgid ""
"Gets the GUI layout of the plugin. This is used to save the project's editor "
"layout when [method queue_save_layout] is called or the editor layout was "
"changed(For example changing the position of a dock)."
msgstr ""
-#: doc/classes/EditorPlugin.xml:330
+#: doc/classes/EditorPlugin.xml:339
msgid ""
"Implement this function if your plugin edits a specific type of object "
"(Resource or Node). If you return [code]true[/code], then you will get the "
@@ -18776,14 +19119,14 @@ msgid ""
"be called too."
msgstr ""
-#: doc/classes/EditorPlugin.xml:337
+#: doc/classes/EditorPlugin.xml:346
msgid ""
"Returns [code]true[/code] if this is a main screen editor plugin (it goes in "
"the workspace selector together with [b]2D[/b], [b]3D[/b], [b]Script[/b] and "
"[b]AssetLib[/b])."
msgstr ""
-#: doc/classes/EditorPlugin.xml:360
+#: doc/classes/EditorPlugin.xml:369
msgid ""
"This function will be called when the editor is requested to become visible. "
"It is used for plugins that edit a specific object type.\n"
@@ -18791,85 +19134,89 @@ msgid ""
"manually."
msgstr ""
-#: doc/classes/EditorPlugin.xml:368
+#: doc/classes/EditorPlugin.xml:377
msgid "Queue save the project's editor layout."
msgstr ""
-#: doc/classes/EditorPlugin.xml:377
+#: doc/classes/EditorPlugin.xml:386
msgid "Removes an Autoload [code]name[/code] from the list."
msgstr ""
-#: doc/classes/EditorPlugin.xml:386
+#: doc/classes/EditorPlugin.xml:395
msgid ""
"Removes the control from the bottom panel. You have to manually [method Node."
"queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:397
+#: doc/classes/EditorPlugin.xml:406
msgid ""
"Removes the control from the specified container. You have to manually "
"[method Node.queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:406
+#: doc/classes/EditorPlugin.xml:415
msgid ""
"Removes the control from the dock. You have to manually [method Node."
"queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:415
+#: doc/classes/EditorPlugin.xml:424
msgid "Removes a custom type added by [method add_custom_type]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:464
+#: doc/classes/EditorPlugin.xml:473
msgid "Removes a menu [code]name[/code] from [b]Project > Tools[/b]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:471
+#: doc/classes/EditorPlugin.xml:482
+msgid "Removes a registered custom translation parser plugin."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:489
msgid ""
"This method is called after the editor saves the project or when it's "
"closed. It asks the plugin to save edited external scenes/resources."
msgstr ""
-#: doc/classes/EditorPlugin.xml:484
+#: doc/classes/EditorPlugin.xml:502
msgid ""
"Use this method if you always want to receive inputs from 3D view screen "
"inside [method forward_spatial_gui_input]. It might be especially usable if "
"your plugin will want to use raycast in the scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:493
+#: doc/classes/EditorPlugin.xml:511
msgid "Restore the state saved by [method get_state]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:502
+#: doc/classes/EditorPlugin.xml:520
msgid "Restore the plugin GUI layout saved by [method get_window_layout]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:509
+#: doc/classes/EditorPlugin.xml:527
msgid "Updates the overlays of the editor (2D/3D) viewport."
msgstr ""
-#: doc/classes/EditorPlugin.xml:518
+#: doc/classes/EditorPlugin.xml:536
msgid ""
"Emitted when user changes the workspace ([b]2D[/b], [b]3D[/b], [b]Script[/"
"b], [b]AssetLib[/b]). Also works with custom screens defined by plugins."
msgstr ""
-#: doc/classes/EditorPlugin.xml:531
+#: doc/classes/EditorPlugin.xml:549
msgid ""
"Emitted when the scene is changed in the editor. The argument will return "
"the root node of the scene that has just become active. If this scene is new "
"and empty, the argument will be [code]null[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:538
+#: doc/classes/EditorPlugin.xml:556
msgid ""
"Emitted when user closes a scene. The argument is file path to a closed "
"scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:584
+#: doc/classes/EditorPlugin.xml:602
msgid "Represents the size of the [enum DockSlot] enum."
msgstr ""
@@ -18924,64 +19271,83 @@ msgid "When this virtual function is called, you must update your editor."
msgstr ""
#: doc/classes/EditorProperty.xml:76
-msgid "Used by the inspector, set when property is checkable."
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is "
+"checkable."
msgstr ""
#: doc/classes/EditorProperty.xml:79
-msgid "Used by the inspector, when the property is checked."
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is checked."
msgstr ""
-#: doc/classes/EditorProperty.xml:84
-msgid "Used by the inspector, when the property must draw with error color."
+#: doc/classes/EditorProperty.xml:82
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property can be "
+"deleted by the user."
msgstr ""
-#: doc/classes/EditorProperty.xml:87
-msgid "Used by the inspector, when the property can add keys for animation."
+#: doc/classes/EditorProperty.xml:85
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property must draw "
+"with error color. This is used for editable children's properties."
msgstr ""
-#: doc/classes/EditorProperty.xml:90
-msgid "Sets this property to change the label (if you want to show one)."
+#: doc/classes/EditorProperty.xml:88
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property can add "
+"keys for animation."
msgstr ""
-#: doc/classes/EditorProperty.xml:93
-msgid "Used by the inspector, when the property is read-only."
+#: doc/classes/EditorProperty.xml:91
+msgid "Set this property to change the label (if you want to show one)."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:94
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is read-"
+"only."
msgstr ""
-#: doc/classes/EditorProperty.xml:103
+#: doc/classes/EditorProperty.xml:104
msgid ""
"Emit it if you want multiple properties modified at the same time. Do not "
"use if added via [method EditorInspectorPlugin.parse_property]."
msgstr ""
-#: doc/classes/EditorProperty.xml:112
+#: doc/classes/EditorProperty.xml:113
msgid "Used by sub-inspectors. Emit it if what was selected was an Object ID."
msgstr ""
-#: doc/classes/EditorProperty.xml:121
+#: doc/classes/EditorProperty.xml:122
msgid ""
"Do not emit this manually, use the [method emit_changed] method instead."
msgstr ""
-#: doc/classes/EditorProperty.xml:130
+#: doc/classes/EditorProperty.xml:131
msgid "Emitted when a property was checked. Used internally."
msgstr ""
-#: doc/classes/EditorProperty.xml:143
+#: doc/classes/EditorProperty.xml:138
+msgid "Emitted when a property was deleted. Used internally."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:145
msgid ""
"Emit it if you want to add this value as an animation key (check for keying "
"being enabled first)."
msgstr ""
-#: doc/classes/EditorProperty.xml:152
+#: doc/classes/EditorProperty.xml:154
msgid "Emit it if you want to key a property with a single value."
msgstr ""
-#: doc/classes/EditorProperty.xml:161
+#: doc/classes/EditorProperty.xml:163
msgid ""
"If you want a sub-resource to be edited, emit this signal with the resource."
msgstr ""
-#: doc/classes/EditorProperty.xml:170
+#: doc/classes/EditorProperty.xml:172
msgid "Emitted when selected. Used internally."
msgstr ""
@@ -19266,17 +19632,26 @@ msgstr ""
msgid ""
"Object that holds the project-independent editor settings. These settings "
"are generally visible in the [b]Editor > Editor Settings[/b] menu.\n"
-"Accessing the settings is done by using the regular [Object] API, such as:\n"
-"[codeblock]\n"
-"settings.set(prop,value)\n"
-"settings.get(prop)\n"
-"list_of_settings = settings.get_property_list()\n"
+"Property names use slash delimiters to distinguish sections. Setting values "
+"can be of any [Variant] type. It's recommended to use [code]snake_case[/"
+"code] for editor settings to be consistent with the Godot editor itself.\n"
+"Accessing the settings can be done using the following methods, such as:\n"
+"[codeblock]\n"
+"# `settings.set(\"some/property\", value)` also works as this class "
+"overrides `_set()` internally.\n"
+"settings.set_setting(\"some/property\",value)\n"
+"\n"
+"# `settings.get(\"some/property\", value)` also works as this class "
+"overrides `_get()` internally.\n"
+"settings.get_setting(\"some/property\")\n"
+"\n"
+"var list_of_settings = settings.get_property_list()\n"
"[/codeblock]\n"
"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
"the singleton using [method EditorInterface.get_editor_settings]."
msgstr ""
-#: doc/classes/EditorSettings.xml:25
+#: doc/classes/EditorSettings.xml:30
msgid ""
"Adds a custom property info to a property. The dictionary must contain:\n"
"- [code]name[/code]: [String] (the name of the property)\n"
@@ -19298,52 +19673,173 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorSettings.xml:50
-msgid "Erase a given setting (pass full property path)."
+#: doc/classes/EditorSettings.xml:55
+msgid "Erases the setting whose name is specified by [code]property[/code]."
msgstr ""
-#: doc/classes/EditorSettings.xml:57
-msgid "Gets the list of favorite files and directories for this project."
+#: doc/classes/EditorSettings.xml:62
+msgid "Returns the list of favorite files and directories for this project."
msgstr ""
-#: doc/classes/EditorSettings.xml:76
+#: doc/classes/EditorSettings.xml:75
msgid ""
-"Gets the specific project settings path. Projects all have a unique sub-"
-"directory inside the settings path where project specific settings are saved."
+"Returns project-specific metadata for the [code]section[/code] and "
+"[code]key[/code] specified. If the metadata doesn't exist, [code]default[/"
+"code] will be returned instead. See also [method set_project_metadata]."
msgstr ""
-#: doc/classes/EditorSettings.xml:83
+#: doc/classes/EditorSettings.xml:82
msgid ""
-"Gets the list of recently visited folders in the file dialog for this "
+"Returns the project-specific settings path. Projects all have a unique "
+"subdirectory inside the settings path where project-specific settings are "
+"saved."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:89
+msgid ""
+"Returns the list of recently visited folders in the file dialog for this "
"project."
msgstr ""
#: doc/classes/EditorSettings.xml:98
msgid ""
+"Returns the value of the setting specified by [code]name[/code]. This is "
+"equivalent to using [method Object.get] on the EditorSettings instance."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:105
+msgid ""
"Gets the global settings path for the engine. Inside this path, you can find "
"some standard paths such as:\n"
"[code]settings/tmp[/code] - Used for temporary storage of files\n"
"[code]settings/templates[/code] - Where export templates are located"
msgstr ""
-#: doc/classes/EditorSettings.xml:133
+#: doc/classes/EditorSettings.xml:116
+msgid ""
+"Returns [code]true[/code] if the setting specified by [code]name[/code] "
+"exists, [code]false[/code] otherwise."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:125
+msgid ""
+"Returns [code]true[/code] if the setting specified by [code]name[/code] can "
+"have its value reverted to the default value, [code]false[/code] otherwise. "
+"When this method returns [code]true[/code], a Revert button will display "
+"next to the setting in the Editor Settings."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:134
+msgid ""
+"Returns the default value of the setting specified by [code]name[/code]. "
+"This is the value that would be applied when clicking the Revert button in "
+"the Editor Settings."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:143
msgid "Sets the list of favorite files and directories for this project."
msgstr ""
-#: doc/classes/EditorSettings.xml:166
+#: doc/classes/EditorSettings.xml:156
+msgid ""
+"Sets the initial value of the setting specified by [code]name[/code] to "
+"[code]value[/code]. This is used to provide a value for the Revert button in "
+"the Editor Settings. If [code]update_current[/code] is true, the current "
+"value of the setting will be set to [code]value[/code] as well."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:169
+msgid ""
+"Sets project-specific metadata with the [code]section[/code], [code]key[/"
+"code] and [code]data[/code] specified. This metadata is stored outside the "
+"project folder and therefore won't be checked into version control. See also "
+"[method get_project_metadata]."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:178
msgid ""
"Sets the list of recently visited folders in the file dialog for this "
"project."
msgstr ""
-#: doc/classes/EditorSettings.xml:183
-msgid "Emitted when editor settings change."
+#: doc/classes/EditorSettings.xml:189
+msgid ""
+"Sets the [code]value[/code] of the setting specified by [code]name[/code]. "
+"This is equivalent to using [method Object.set] on the EditorSettings "
+"instance."
msgstr ""
-#: doc/classes/EditorSettings.xml:189
+#: doc/classes/EditorSettings.xml:196
+msgid "Emitted after any editor setting has changed."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:202
+msgid ""
+"Emitted after any editor setting has changed. It's used by various editor "
+"plugins to update their visuals on theme changes or logic on configuration "
+"changes."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:4
+msgid ""
+"Plugin for adding custom parsers to extract strings that are to be "
+"translated from custom files (.csv, .json etc.)."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:7
+msgid ""
+"Plugins are registered via [method EditorPlugin."
+"add_translation_parser_plugin] method. To define the parsing and string "
+"extraction logic, override the [method parse_file] method in script.\n"
+"The extracted strings will be written into a POT file selected by user under "
+"\"POT Generation\" in \"Localization\" tab in \"Project Settings\" menu.\n"
+"Below shows an example of a custom parser that extracts strings in a CSV "
+"file to write into a POT.\n"
+"[codeblock]\n"
+"tool\n"
+"extends EditorTranslationParserPlugin\n"
+"\n"
+"\n"
+"func parse_file(path, extracted_strings):\n"
+" var file = File.new()\n"
+" file.open(path, File.READ)\n"
+" var text = file.get_as_text()\n"
+" var split_strs = text.split(\",\", false, 0)\n"
+" for s in split_strs:\n"
+" extracted_strings.append(s)\n"
+" #print(\"Extracted string: \" + s)\n"
+"\n"
+"\n"
+"func get_recognized_extensions():\n"
+" return [\"csv\"]\n"
+"[/codeblock]\n"
+"[b]Note:[/b] If you override parsing logic for standard script types "
+"(GDScript, C#, etc.), it would be better to load the [code]path[/code] "
+"argument using [method ResourceLoader.load]. This is because built-in "
+"scripts are loaded as [Resource] type, not [File] type.\n"
+"For example:\n"
+"[codeblock]\n"
+"func parse_file(path, extracted_strings):\n"
+" var res = ResourceLoader.load(path, \"Script\")\n"
+" var text = res.get_source_code()\n"
+" # Parsing logic.\n"
+"\n"
+"\n"
+"func get_recognized_extensions():\n"
+" return [\"gd\"]\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:48
msgid ""
-"Emitted when editor settings change. It used by various editor plugins to "
-"update their visuals on theme changes or logic on configuration changes."
+"Gets the list of file extensions to associate with this parser, e.g. [code]"
+"[\"csv\"][/code]."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:59
+msgid ""
+"Override this method to define a custom parsing logic to extract the "
+"translatable strings."
msgstr ""
#: doc/classes/EditorVCSInterface.xml:4
@@ -19954,15 +20450,15 @@ msgid ""
"to 1.3 to compensate for the lack of HDR rendering."
msgstr ""
-#: doc/classes/Environment.xml:190
+#: doc/classes/Environment.xml:214
msgid "The [Sky] resource used for this [Environment]."
msgstr ""
-#: doc/classes/Environment.xml:197
+#: doc/classes/Environment.xml:221
msgid "The depth tolerance for screen-space reflections."
msgstr ""
-#: doc/classes/Environment.xml:200
+#: doc/classes/Environment.xml:224
msgid ""
"If [code]true[/code], screen-space reflections are enabled. Screen-space "
"reflections are more accurate than reflections from [GIProbe]s or "
@@ -19970,48 +20466,48 @@ msgid ""
"others."
msgstr ""
-#: doc/classes/Environment.xml:203
+#: doc/classes/Environment.xml:227
msgid ""
"The fade-in distance for screen-space reflections. Affects the area from the "
"reflected material to the screen-space reflection)."
msgstr ""
-#: doc/classes/Environment.xml:206
+#: doc/classes/Environment.xml:230
msgid ""
"The fade-out distance for screen-space reflections. Affects the area from "
"the screen-space reflection to the \"global\" reflection."
msgstr ""
-#: doc/classes/Environment.xml:209
+#: doc/classes/Environment.xml:233
msgid ""
"The maximum number of steps for screen-space reflections. Higher values are "
"slower."
msgstr ""
-#: doc/classes/Environment.xml:212
+#: doc/classes/Environment.xml:236
msgid ""
"The screen-space ambient occlusion intensity on materials that have an AO "
"texture defined. Values higher than [code]0[/code] will make the SSAO effect "
"visible in areas darkened by AO textures."
msgstr ""
-#: doc/classes/Environment.xml:215
+#: doc/classes/Environment.xml:239
msgid ""
"The screen-space ambient occlusion bias. This should be kept high enough to "
"prevent \"smooth\" curves from being affected by ambient occlusion."
msgstr ""
-#: doc/classes/Environment.xml:218
+#: doc/classes/Environment.xml:242
msgid ""
"The screen-space ambient occlusion blur quality. See [enum SSAOBlur] for "
"possible values."
msgstr ""
-#: doc/classes/Environment.xml:221
+#: doc/classes/Environment.xml:245
msgid "The screen-space ambient occlusion edge sharpness."
msgstr ""
-#: doc/classes/Environment.xml:224
+#: doc/classes/Environment.xml:248
msgid ""
"If [code]true[/code], the screen-space ambient occlusion effect is enabled. "
"This darkens objects' corners and cavities to simulate ambient light not "
@@ -20022,13 +20518,13 @@ msgid ""
"issues."
msgstr ""
-#: doc/classes/Environment.xml:227
+#: doc/classes/Environment.xml:251
msgid ""
"The primary screen-space ambient occlusion intensity. See also [member "
"ssao_radius]."
msgstr ""
-#: doc/classes/Environment.xml:230
+#: doc/classes/Environment.xml:254
msgid ""
"The screen-space ambient occlusion intensity in direct light. In real life, "
"ambient occlusion only applies to indirect light, which means its effects "
@@ -20036,46 +20532,46 @@ msgid ""
"the SSAO effect visible in direct light."
msgstr ""
-#: doc/classes/Environment.xml:233
+#: doc/classes/Environment.xml:257
msgid "The primary screen-space ambient occlusion radius."
msgstr ""
-#: doc/classes/Environment.xml:236
+#: doc/classes/Environment.xml:260
msgid "The default exposure used for tonemapping."
msgstr ""
-#: doc/classes/Environment.xml:239
+#: doc/classes/Environment.xml:263
msgid ""
"The tonemapping mode to use. Tonemapping is the process that \"converts\" "
"HDR values to be suitable for rendering on a LDR display. (Godot doesn't "
"support rendering on HDR displays yet.)"
msgstr ""
-#: doc/classes/Environment.xml:242
+#: doc/classes/Environment.xml:266
msgid ""
"The white reference value for tonemapping. Only effective if the [member "
"tonemap_mode] isn't set to [constant TONE_MAPPER_LINEAR]."
msgstr ""
-#: doc/classes/Environment.xml:247
+#: doc/classes/Environment.xml:271
msgid ""
"Clears the background using the clear color defined in [member "
"ProjectSettings.rendering/environment/default_clear_color]."
msgstr ""
-#: doc/classes/Environment.xml:250
+#: doc/classes/Environment.xml:274
msgid "Clears the background using a custom clear color."
msgstr ""
-#: doc/classes/Environment.xml:253
+#: doc/classes/Environment.xml:277
msgid "Displays a user-defined sky in the background."
msgstr ""
-#: doc/classes/Environment.xml:256
+#: doc/classes/Environment.xml:280
msgid "Displays a [CanvasLayer] in the background."
msgstr ""
-#: doc/classes/Environment.xml:259
+#: doc/classes/Environment.xml:283
msgid ""
"Keeps on screen every pixel drawn in the background. This is the fastest "
"background mode, but it can only be safely used in fully-interior scenes (no "
@@ -20083,107 +20579,107 @@ msgid ""
"is visible, \"ghost trail\" artifacts will be visible when moving the camera."
msgstr ""
-#: doc/classes/Environment.xml:262 doc/classes/RenderingServer.xml:3446
+#: doc/classes/Environment.xml:286 doc/classes/RenderingServer.xml:3457
msgid "Displays a camera feed in the background."
msgstr ""
-#: doc/classes/Environment.xml:265
+#: doc/classes/Environment.xml:289
msgid "Represents the size of the [enum BGMode] enum."
msgstr ""
-#: doc/classes/Environment.xml:268 doc/classes/RenderingServer.xml:3452
+#: doc/classes/Environment.xml:292 doc/classes/RenderingServer.xml:3463
msgid ""
"Gather ambient light from whichever source is specified as the background."
msgstr ""
-#: doc/classes/Environment.xml:271 doc/classes/RenderingServer.xml:3455
+#: doc/classes/Environment.xml:295 doc/classes/RenderingServer.xml:3466
msgid "Disable ambient light."
msgstr ""
-#: doc/classes/Environment.xml:274 doc/classes/RenderingServer.xml:3458
+#: doc/classes/Environment.xml:298 doc/classes/RenderingServer.xml:3469
msgid "Specify a specific [Color] for ambient light."
msgstr ""
-#: doc/classes/Environment.xml:277 doc/classes/RenderingServer.xml:3461
+#: doc/classes/Environment.xml:301 doc/classes/RenderingServer.xml:3472
msgid ""
"Gather ambient light from the [Sky] regardless of what the background is."
msgstr ""
-#: doc/classes/Environment.xml:280 doc/classes/RenderingServer.xml:3464
+#: doc/classes/Environment.xml:304 doc/classes/RenderingServer.xml:3475
msgid "Use the background for reflections."
msgstr ""
-#: doc/classes/Environment.xml:283 doc/classes/RenderingServer.xml:3467
+#: doc/classes/Environment.xml:307 doc/classes/RenderingServer.xml:3478
msgid "Disable reflections."
msgstr ""
-#: doc/classes/Environment.xml:286 doc/classes/RenderingServer.xml:3470
+#: doc/classes/Environment.xml:310 doc/classes/RenderingServer.xml:3481
msgid "Use the [Sky] for reflections regardless of what the background is."
msgstr ""
-#: doc/classes/Environment.xml:289 doc/classes/RenderingServer.xml:3473
+#: doc/classes/Environment.xml:313
+msgid ""
+"Linear tonemapper operator. Reads the linear data and passes it on "
+"unmodified."
+msgstr ""
+
+#: doc/classes/Environment.xml:316
+msgid ""
+"Reinhardt tonemapper operator. Performs a variation on rendered pixels' "
+"colors by this formula: [code]color = color / (1 + color)[/code]."
+msgstr ""
+
+#: doc/classes/Environment.xml:319
+msgid "Filmic tonemapper operator."
+msgstr ""
+
+#: doc/classes/Environment.xml:322
+msgid "Academy Color Encoding System tonemapper operator."
+msgstr ""
+
+#: doc/classes/Environment.xml:325 doc/classes/RenderingServer.xml:3484
msgid ""
"Additive glow blending mode. Mostly used for particles, glows (bloom), lens "
"flare, bright sources."
msgstr ""
-#: doc/classes/Environment.xml:292 doc/classes/RenderingServer.xml:3476
+#: doc/classes/Environment.xml:328 doc/classes/RenderingServer.xml:3487
msgid ""
"Screen glow blending mode. Increases brightness, used frequently with bloom."
msgstr ""
-#: doc/classes/Environment.xml:295 doc/classes/RenderingServer.xml:3479
+#: doc/classes/Environment.xml:331 doc/classes/RenderingServer.xml:3490
msgid ""
"Soft light glow blending mode. Modifies contrast, exposes shadows and "
"highlights (vivid bloom)."
msgstr ""
-#: doc/classes/Environment.xml:298 doc/classes/RenderingServer.xml:3482
+#: doc/classes/Environment.xml:334 doc/classes/RenderingServer.xml:3493
msgid ""
"Replace glow blending mode. Replaces all pixels' color by the glow value. "
"This can be used to simulate a full-screen blur effect by tweaking the glow "
"parameters to match the original image's brightness."
msgstr ""
-#: doc/classes/Environment.xml:301 doc/classes/RenderingServer.xml:3485
+#: doc/classes/Environment.xml:337 doc/classes/RenderingServer.xml:3496
msgid ""
"Mixes the glow with the underlying color to avoid increasing brightness as "
"much while still maintaining a glow effect."
msgstr ""
-#: doc/classes/Environment.xml:304
-msgid ""
-"Linear tonemapper operator. Reads the linear data and passes it on "
-"unmodified."
-msgstr ""
-
-#: doc/classes/Environment.xml:307
-msgid ""
-"Reinhardt tonemapper operator. Performs a variation on rendered pixels' "
-"colors by this formula: [code]color = color / (1 + color)[/code]."
-msgstr ""
-
-#: doc/classes/Environment.xml:310
-msgid "Filmic tonemapper operator."
-msgstr ""
-
-#: doc/classes/Environment.xml:313
-msgid "Academy Color Encoding System tonemapper operator."
-msgstr ""
-
-#: doc/classes/Environment.xml:316
+#: doc/classes/Environment.xml:340
msgid "No blur for the screen-space ambient occlusion effect (fastest)."
msgstr ""
-#: doc/classes/Environment.xml:319
+#: doc/classes/Environment.xml:343
msgid "1×1 blur for the screen-space ambient occlusion effect."
msgstr ""
-#: doc/classes/Environment.xml:322
+#: doc/classes/Environment.xml:346
msgid "2×2 blur for the screen-space ambient occlusion effect."
msgstr ""
-#: doc/classes/Environment.xml:325
+#: doc/classes/Environment.xml:349
msgid ""
"3×3 blur for the screen-space ambient occlusion effect. Increases the radius "
"of the blur for a smoother look, but can result in checkerboard-like "
@@ -20268,14 +20764,17 @@ msgid ""
" var content = file.get_as_text()\n"
" file.close()\n"
" return content\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"In the example above, the file will be saved in the user data folder as "
+"specified in the [url=https://docs.godotengine.org/en/latest/tutorials/io/"
+"data_paths.html]Data paths[/url] documentation."
msgstr ""
-#: doc/classes/File.xml:32
+#: doc/classes/File.xml:33
msgid "Closes the currently opened file."
msgstr ""
-#: doc/classes/File.xml:39
+#: doc/classes/File.xml:40
msgid ""
"Returns [code]true[/code] if the file cursor has read past the end of the "
"file.\n"
@@ -20286,7 +20785,7 @@ msgid ""
"get_position] to implement a custom logic."
msgstr ""
-#: doc/classes/File.xml:49
+#: doc/classes/File.xml:50
msgid ""
"Returns [code]true[/code] if the file exists in the given path.\n"
"[b]Note:[/b] Many resources types are imported (e.g. textures or sound "
@@ -20299,41 +20798,41 @@ msgid ""
"source asset is present in [code]res://[/code], but fail when exported)."
msgstr ""
-#: doc/classes/File.xml:57
+#: doc/classes/File.xml:58
msgid ""
"Returns the next 16 bits from the file as an integer. See [method store_16] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:64
+#: doc/classes/File.xml:65
msgid ""
"Returns the next 32 bits from the file as an integer. See [method store_32] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:71
+#: doc/classes/File.xml:72
msgid ""
"Returns the next 64 bits from the file as an integer. See [method store_64] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:78
+#: doc/classes/File.xml:79
msgid ""
"Returns the next 8 bits from the file as an integer. See [method store_8] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:85
+#: doc/classes/File.xml:86
msgid ""
"Returns the whole file as a [String].\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:95
+#: doc/classes/File.xml:96
msgid "Returns next [code]len[/code] bytes of the file as a [PackedByteArray]."
msgstr ""
-#: doc/classes/File.xml:104
+#: doc/classes/File.xml:105
msgid ""
"Returns the next value of the file in CSV (Comma-Separated Values) format. "
"You can pass a different delimiter [code]delim[/code] to use other than the "
@@ -20342,37 +20841,37 @@ msgid ""
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:112
+#: doc/classes/File.xml:113
msgid "Returns the next 64 bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:119
+#: doc/classes/File.xml:120
msgid ""
"Returns the last error that happened when trying to perform operations. "
"Compare with the [code]ERR_FILE_*[/code] constants from [enum Error]."
msgstr ""
-#: doc/classes/File.xml:126
+#: doc/classes/File.xml:127
msgid "Returns the next 32 bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:133
+#: doc/classes/File.xml:134
msgid "Returns the size of the file in bytes."
msgstr ""
-#: doc/classes/File.xml:140
+#: doc/classes/File.xml:141
msgid ""
"Returns the next line of the file as a [String].\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:150
+#: doc/classes/File.xml:151
msgid ""
"Returns an MD5 String representing the file at the given path or an empty "
"[String] on failure."
msgstr ""
-#: doc/classes/File.xml:159
+#: doc/classes/File.xml:160
msgid ""
"Returns the last time the [code]file[/code] was modified in unix timestamp "
"format or returns a [String] \"ERROR IN [code]file[/code]\". This unix "
@@ -20380,35 +20879,35 @@ msgid ""
"get_datetime_from_unix_time]."
msgstr ""
-#: doc/classes/File.xml:166
+#: doc/classes/File.xml:167
msgid ""
"Returns a [String] saved in Pascal format from the file.\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:174
+#: doc/classes/File.xml:175
msgid "Returns the path as a [String] for the current open file."
msgstr ""
-#: doc/classes/File.xml:181
+#: doc/classes/File.xml:182
msgid "Returns the absolute path as a [String] for the current open file."
msgstr ""
-#: doc/classes/File.xml:188
+#: doc/classes/File.xml:189
msgid "Returns the file cursor's position."
msgstr ""
-#: doc/classes/File.xml:195
+#: doc/classes/File.xml:196
msgid "Returns the next bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:204
+#: doc/classes/File.xml:205
msgid ""
"Returns a SHA-256 [String] representing the file at the given path or an "
"empty [String] on failure."
msgstr ""
-#: doc/classes/File.xml:213
+#: doc/classes/File.xml:214
msgid ""
"Returns the next [Variant] value from the file. If [code]allow_objects[/"
"code] is [code]true[/code], decoding objects is allowed.\n"
@@ -20417,37 +20916,38 @@ msgid ""
"to avoid potential security threats such as remote code execution."
msgstr ""
-#: doc/classes/File.xml:221
+#: doc/classes/File.xml:222
msgid "Returns [code]true[/code] if the file is currently opened."
msgstr ""
-#: doc/classes/File.xml:232
+#: doc/classes/File.xml:233
msgid "Opens the file for writing or reading, depending on the flags."
msgstr ""
-#: doc/classes/File.xml:245
+#: doc/classes/File.xml:246
msgid "Opens a compressed file for reading or writing."
msgstr ""
-#: doc/classes/File.xml:258
+#: doc/classes/File.xml:259
msgid ""
"Opens an encrypted file in write or read mode. You need to pass a binary key "
-"to encrypt/decrypt it."
+"to encrypt/decrypt it.\n"
+"[b]Note:[/b] The provided key must be 32 bytes long."
msgstr ""
-#: doc/classes/File.xml:271
+#: doc/classes/File.xml:273
msgid ""
"Opens an encrypted file in write or read mode. You need to pass a password "
"to encrypt/decrypt it."
msgstr ""
-#: doc/classes/File.xml:280
+#: doc/classes/File.xml:282
msgid ""
"Changes the file reading/writing cursor to the specified position (in bytes "
"from the beginning of the file)."
msgstr ""
-#: doc/classes/File.xml:289
+#: doc/classes/File.xml:291
msgid ""
"Changes the file reading/writing cursor to the specified position (in bytes "
"from the end of the file).\n"
@@ -20455,7 +20955,7 @@ msgid ""
"cursor will be at the end of the file."
msgstr ""
-#: doc/classes/File.xml:299
+#: doc/classes/File.xml:301
msgid ""
"Stores an integer as 16 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, "
@@ -20483,7 +20983,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/File.xml:328
+#: doc/classes/File.xml:330
msgid ""
"Stores an integer as 32 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, "
@@ -20492,14 +20992,14 @@ msgid ""
"(see [method store_16] for an example)."
msgstr ""
-#: doc/classes/File.xml:339
+#: doc/classes/File.xml:341
msgid ""
"Stores an integer as 64 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] must lie in the interval [code][-2^63, "
"2^63 - 1][/code] (i.e. be a valid [int] value)."
msgstr ""
-#: doc/classes/File.xml:349
+#: doc/classes/File.xml:351
msgid ""
"Stores an integer as 8 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, 255]"
@@ -20508,11 +21008,11 @@ msgid ""
"(see [method store_16] for an example)."
msgstr ""
-#: doc/classes/File.xml:360
+#: doc/classes/File.xml:362
msgid "Stores the given array of bytes in the file."
msgstr ""
-#: doc/classes/File.xml:371
+#: doc/classes/File.xml:373
msgid ""
"Store the given [PackedStringArray] in the file as a line formatted in the "
"CSV (Comma-Separated Values) format. You can pass a different delimiter "
@@ -20521,45 +21021,45 @@ msgid ""
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:381
+#: doc/classes/File.xml:383
msgid "Stores a floating-point number as 64 bits in the file."
msgstr ""
-#: doc/classes/File.xml:390
+#: doc/classes/File.xml:392
msgid "Stores a floating-point number as 32 bits in the file."
msgstr ""
-#: doc/classes/File.xml:399
+#: doc/classes/File.xml:401
msgid ""
"Stores the given [String] as a line in the file.\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:409
+#: doc/classes/File.xml:411
msgid ""
"Stores the given [String] as a line in the file in Pascal format (i.e. also "
"store the length of the string).\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:419
+#: doc/classes/File.xml:421
msgid "Stores a floating-point number in the file."
msgstr ""
-#: doc/classes/File.xml:428
+#: doc/classes/File.xml:430
msgid ""
"Stores the given [String] in the file.\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:440
+#: doc/classes/File.xml:442
msgid ""
"Stores any Variant value in the file. If [code]full_objects[/code] is "
"[code]true[/code], encoding objects is allowed (and can potentially include "
"code)."
msgstr ""
-#: doc/classes/File.xml:446
+#: doc/classes/File.xml:448
msgid ""
"If [code]true[/code], the file's endianness is swapped. Use this if you're "
"dealing with files written on big-endian machines.\n"
@@ -20567,44 +21067,44 @@ msgid ""
"reset to [code]false[/code] whenever you open the file."
msgstr ""
-#: doc/classes/File.xml:452
+#: doc/classes/File.xml:454
msgid "Opens the file for read operations."
msgstr ""
-#: doc/classes/File.xml:455
+#: doc/classes/File.xml:457
msgid ""
"Opens the file for write operations. Create it if the file does not exist "
"and truncate if it exists."
msgstr ""
-#: doc/classes/File.xml:458
+#: doc/classes/File.xml:460
msgid ""
"Opens the file for read and write operations. Does not truncate the file."
msgstr ""
-#: doc/classes/File.xml:461
+#: doc/classes/File.xml:463
msgid ""
"Opens the file for read and write operations. Create it if the file does not "
"exist and truncate if it exists."
msgstr ""
-#: doc/classes/File.xml:464
+#: doc/classes/File.xml:466
msgid "Uses the [url=http://fastlz.org/]FastLZ[/url] compression method."
msgstr ""
-#: doc/classes/File.xml:467
+#: doc/classes/File.xml:469
msgid ""
"Uses the [url=https://en.wikipedia.org/wiki/DEFLATE]DEFLATE[/url] "
"compression method."
msgstr ""
-#: doc/classes/File.xml:470
+#: doc/classes/File.xml:472
msgid ""
"Uses the [url=https://facebook.github.io/zstd/]Zstandard[/url] compression "
"method."
msgstr ""
-#: doc/classes/File.xml:473
+#: doc/classes/File.xml:475
msgid "Uses the [url=https://www.gzip.org/]gzip[/url] compression method."
msgstr ""
@@ -20820,10 +21320,11 @@ msgid ""
"Draw [code]string[/code] into a canvas item using the font at a given "
"position, with [code]modulate[/code] color, and optionally clipping the "
"width. [code]position[/code] specifies the baseline, not the top. To draw "
-"from the top, [i]ascent[/i] must be added to the Y axis."
+"from the top, [i]ascent[/i] must be added to the Y axis.\n"
+"See also [method CanvasItem.draw_string]."
msgstr ""
-#: doc/classes/Font.xml:47
+#: doc/classes/Font.xml:48
msgid ""
"Draw character [code]char[/code] into a canvas item using the font at a "
"given position, with [code]modulate[/code] color, and optionally kerning if "
@@ -20833,39 +21334,39 @@ msgid ""
"making this function useful for drawing strings character by character."
msgstr ""
-#: doc/classes/Font.xml:54
+#: doc/classes/Font.xml:55
msgid "Returns the font ascent (number of pixels above the baseline)."
msgstr ""
-#: doc/classes/Font.xml:65
+#: doc/classes/Font.xml:66
msgid ""
"Returns the size of a character, optionally taking kerning into account if "
"the next character is provided."
msgstr ""
-#: doc/classes/Font.xml:72
+#: doc/classes/Font.xml:73
msgid "Returns the font descent (number of pixels below the baseline)."
msgstr ""
-#: doc/classes/Font.xml:79
+#: doc/classes/Font.xml:80
msgid "Returns the total font height (ascent plus descent) in pixels."
msgstr ""
-#: doc/classes/Font.xml:88
+#: doc/classes/Font.xml:89
msgid "Returns the size of a string, taking kerning and advance into account."
msgstr ""
-#: doc/classes/Font.xml:99
+#: doc/classes/Font.xml:100
msgid ""
"Returns the size that the string would have with word wrapping enabled with "
"a fixed [code]width[/code]."
msgstr ""
-#: doc/classes/Font.xml:106
+#: doc/classes/Font.xml:107
msgid "Returns [code]true[/code] if the font has an outline."
msgstr ""
-#: doc/classes/Font.xml:119
+#: doc/classes/Font.xml:120
msgid ""
"After editing a font (changing size, ascent, char rects, etc.). Call this "
"function to propagate changes to controls that might use it."
@@ -21037,13 +21538,14 @@ msgstr ""
#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:7
msgid ""
-"Calling [method @GDScript.yield] within a function will cause that function "
-"to yield and return its current state as an object of this type. The yielded "
+"FIXME: Outdated docs as of GDScript rewrite in 4.0.\n"
+"Calling [code]yield[/code] within a function will cause that function to "
+"yield and return its current state as an object of this type. The yielded "
"function call can then be resumed later by calling [method resume] on this "
"state object."
msgstr ""
-#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:18
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:19
msgid ""
"Check whether the function call may be resumed. This is not the case if the "
"function state was already resumed.\n"
@@ -21054,12 +21556,12 @@ msgid ""
"script have survived up to that point."
msgstr ""
-#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:28
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:29
msgid ""
"Resume execution of the yielded function call.\n"
-"If handed an argument, return the argument from the [method @GDScript.yield] "
-"call in the yielded function call. You can pass e.g. an [Array] to hand "
-"multiple arguments.\n"
+"If handed an argument, return the argument from the [code]yield[/code] call "
+"in the yielded function call. You can pass e.g. an [Array] to hand multiple "
+"arguments.\n"
"This function returns what the resumed function call returns, possibly "
"another function state if yielded again."
msgstr ""
@@ -21628,10 +22130,20 @@ msgid ""
"code], see [enum PolyJoinType].\n"
"The operation may result in an outer polygon (boundary) and inner polygon "
"(hole) produced which could be distinguished by calling [method "
-"is_polygon_clockwise]."
+"is_polygon_clockwise].\n"
+"[b]Note:[/b] To translate the polygon's vertices specifically, use the "
+"[method Transform2D.xform] method:\n"
+"[codeblock]\n"
+"var polygon = PackedVector2Array([Vector2(0, 0), Vector2(100, 0), "
+"Vector2(100, 100), Vector2(0, 100)])\n"
+"var offset = Vector2(50, 50)\n"
+"polygon = Transform2D(0, offset).xform(polygon)\n"
+"print(polygon) # prints [Vector2(50, 50), Vector2(150, 50), Vector2(150, "
+"150), Vector2(50, 150)]\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/Geometry2D.xml:217
+#: doc/classes/Geometry2D.xml:224
msgid ""
"Inflates or deflates [code]polyline[/code] by [code]delta[/code] units "
"(pixels), producing polygons. If [code]delta[/code] is positive, makes the "
@@ -21647,13 +22159,13 @@ msgid ""
"is_polygon_clockwise]."
msgstr ""
-#: doc/classes/Geometry2D.xml:235
+#: doc/classes/Geometry2D.xml:242
msgid ""
"Returns if [code]point[/code] is inside the triangle specified by [code]a[/"
"code], [code]b[/code] and [code]c[/code]."
msgstr ""
-#: doc/classes/Geometry2D.xml:250
+#: doc/classes/Geometry2D.xml:257
msgid ""
"Checks if the two segments ([code]from_a[/code], [code]to_a[/code]) and "
"([code]from_b[/code], [code]to_b[/code]) intersect. If yes, return the point "
@@ -21661,7 +22173,7 @@ msgid ""
"empty [Variant]."
msgstr ""
-#: doc/classes/Geometry2D.xml:259
+#: doc/classes/Geometry2D.xml:266
msgid ""
"Triangulates the area specified by discrete set of [code]points[/code] such "
"that no point is inside the circumcircle of any resulting triangle. Returns "
@@ -21672,7 +22184,7 @@ msgid ""
"[PackedInt32Array] is returned."
msgstr ""
-#: doc/classes/Geometry2D.xml:268
+#: doc/classes/Geometry2D.xml:275
msgid ""
"Triangulates the polygon specified by the points in [code]polygon[/code]. "
"Returns a [PackedInt32Array] where each triangle consists of three "
@@ -21682,40 +22194,40 @@ msgid ""
"[PackedInt32Array] is returned."
msgstr ""
-#: doc/classes/Geometry2D.xml:274
+#: doc/classes/Geometry2D.xml:281
msgid ""
"Create regions where either subject or clip polygons (or both) are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:277
+#: doc/classes/Geometry2D.xml:284
msgid ""
"Create regions where subject polygons are filled except where clip polygons "
"are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:280
+#: doc/classes/Geometry2D.xml:287
msgid "Create regions where both subject and clip polygons are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:283
+#: doc/classes/Geometry2D.xml:290
msgid ""
"Create regions where either subject or clip polygons are filled but not "
"where both are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:286
+#: doc/classes/Geometry2D.xml:293
msgid ""
"Squaring is applied uniformally at all convex edge joins at [code]1 * delta[/"
"code]."
msgstr ""
-#: doc/classes/Geometry2D.xml:289
+#: doc/classes/Geometry2D.xml:296
msgid ""
"While flattened paths can never perfectly trace an arc, they are "
"approximated by a series of arc chords."
msgstr ""
-#: doc/classes/Geometry2D.xml:292
+#: doc/classes/Geometry2D.xml:299
msgid ""
"There's a necessary limit to mitered joins since offsetting edges that join "
"at very acute angles will produce excessively long and narrow \"spikes\". "
@@ -21723,27 +22235,27 @@ msgid ""
"distance, \"square\" joining is applied."
msgstr ""
-#: doc/classes/Geometry2D.xml:295
+#: doc/classes/Geometry2D.xml:302
msgid ""
"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
"as a polygon."
msgstr ""
-#: doc/classes/Geometry2D.xml:298
+#: doc/classes/Geometry2D.xml:305
msgid ""
"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
"as a polyline."
msgstr ""
-#: doc/classes/Geometry2D.xml:301
+#: doc/classes/Geometry2D.xml:308
msgid "Endpoints are squared off with no extension."
msgstr ""
-#: doc/classes/Geometry2D.xml:304
+#: doc/classes/Geometry2D.xml:311
msgid "Endpoints are squared off and extended by [code]delta[/code] units."
msgstr ""
-#: doc/classes/Geometry2D.xml:307
+#: doc/classes/Geometry2D.xml:314
msgid "Endpoints are rounded off and extended by [code]delta[/code] units."
msgstr ""
@@ -21973,7 +22485,7 @@ msgstr ""
msgid ""
"Bakes the effect from all [GeometryInstance3D]s marked with [constant "
"GeometryInstance3D.GI_MODE_BAKED] and [Light3D]s marked with either "
-"[constant Light3D.BAKE_INDIRECT] or [constant Light3D.BAKE_ALL]. If "
+"[constant Light3D.BAKE_DYNAMIC] or [constant Light3D.BAKE_STATIC]. If "
"[code]create_visual_debug[/code] is [code]true[/code], after baking the "
"light, this will generate a [MultiMesh] that has a cube representing each "
"solid cell with each cube colored to the cell's albedo color. This can be "
@@ -22860,121 +23372,119 @@ msgstr ""
msgid "Clear all cells."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:53
+#: modules/gridmap/doc_classes/GridMap.xml:49
msgid ""
-"The [MeshLibrary] item index located at the grid-based X, Y and Z "
-"coordinates. If the cell is empty, [constant INVALID_CELL_ITEM] will be "
-"returned."
+"The [MeshLibrary] item index located at the given grid coordinates. If the "
+"cell is empty, [constant INVALID_CELL_ITEM] will be returned."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:66
+#: modules/gridmap/doc_classes/GridMap.xml:58
msgid ""
-"The orientation of the cell at the grid-based X, Y and Z coordinates. -1 is "
-"returned if the cell is empty."
+"The orientation of the cell at the given grid coordinates. [code]-1[/code] "
+"is returned if the cell is empty."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:75 doc/classes/PhysicsBody2D.xml:35
+#: modules/gridmap/doc_classes/GridMap.xml:67 doc/classes/PhysicsBody2D.xml:35
#: doc/classes/PhysicsBody3D.xml:35
msgid "Returns an individual bit on the [member collision_layer]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:84 doc/classes/PhysicsBody2D.xml:44
+#: modules/gridmap/doc_classes/GridMap.xml:76 doc/classes/PhysicsBody2D.xml:44
#: doc/classes/PhysicsBody3D.xml:44
msgid "Returns an individual bit on the [member collision_mask]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:91
+#: modules/gridmap/doc_classes/GridMap.xml:83
msgid ""
"Returns an array of [Transform] and [Mesh] references corresponding to the "
"non-empty cells in the grid. The transforms are specified in world space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:98
+#: modules/gridmap/doc_classes/GridMap.xml:90
msgid ""
"Returns an array of [Vector3] with the non-empty cell coordinates in the "
"grid map."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:121
+#: modules/gridmap/doc_classes/GridMap.xml:109
msgid ""
"Returns the position of a grid cell in the GridMap's local coordinate space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:146
+#: modules/gridmap/doc_classes/GridMap.xml:130
msgid ""
-"Sets the mesh index for the cell referenced by its grid-based X, Y and Z "
-"coordinates.\n"
+"Sets the mesh index for the cell referenced by its grid coordinates.\n"
"A negative item index such as [constant INVALID_CELL_ITEM] will clear the "
"cell.\n"
"Optionally, the item's orientation can be passed. For valid orientation "
"values, see [method Basis.get_orthogonal_index]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:173
+#: modules/gridmap/doc_classes/GridMap.xml:157
msgid "Sets an individual bit on the [member collision_layer]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:184
+#: modules/gridmap/doc_classes/GridMap.xml:168
msgid "Sets an individual bit on the [member collision_mask]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:193
+#: modules/gridmap/doc_classes/GridMap.xml:177
msgid ""
"Returns the coordinates of the grid cell containing the given point.\n"
"[code]pos[/code] should be in the GridMap's local coordinate space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:200
+#: modules/gridmap/doc_classes/GridMap.xml:184
msgid "If [code]true[/code], grid items are centered on the X axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:203
+#: modules/gridmap/doc_classes/GridMap.xml:187
msgid "If [code]true[/code], grid items are centered on the Y axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:206
+#: modules/gridmap/doc_classes/GridMap.xml:190
msgid "If [code]true[/code], grid items are centered on the Z axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:209
+#: modules/gridmap/doc_classes/GridMap.xml:193
msgid ""
"The size of each octant measured in number of cells. This applies to all "
"three axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:212
+#: modules/gridmap/doc_classes/GridMap.xml:196
msgid ""
"The scale of the cell items.\n"
"This does not affect the size of the grid cells themselves, only the items "
"in them. This can be used to make cell items overlap their neighbors."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:216
+#: modules/gridmap/doc_classes/GridMap.xml:200
msgid ""
"The dimensions of the grid's cells.\n"
"This does not affect the size of the meshes. See [member cell_scale]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:220
+#: modules/gridmap/doc_classes/GridMap.xml:204
msgid ""
"The physics layers this GridMap is in.\n"
"GridMaps act as static bodies, meaning they aren't affected by gravity or "
"other forces. They only affect other physics bodies that collide with them."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:224
+#: modules/gridmap/doc_classes/GridMap.xml:208
msgid "The physics layers this GridMap detects collisions in."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:227
+#: modules/gridmap/doc_classes/GridMap.xml:211
msgid "The assigned [MeshLibrary]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:235
+#: modules/gridmap/doc_classes/GridMap.xml:219
msgid "Emitted when [member cell_size] changes."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:241
+#: modules/gridmap/doc_classes/GridMap.xml:225
msgid ""
"Invalid cell item that can be used in [method set_cell_item] to clear cells "
"(or represent an empty cell in [method get_cell_item])."
@@ -23339,27 +23849,33 @@ msgid ""
"server's side.\n"
"For more information on HTTP, see https://developer.mozilla.org/en-US/docs/"
"Web/HTTP (or read RFC 2616 to get it straight from the source: https://tools."
-"ietf.org/html/rfc2616)."
+"ietf.org/html/rfc2616).\n"
+"[b]Note:[/b] When performing HTTP requests from a project exported to HTML5, "
+"keep in mind the remote server may not allow requests from foreign origins "
+"due to [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/"
+"url]. If you host the server in question, you should modify its backend to "
+"allow requests from foreign origins by adding the [code]Access-Control-Allow-"
+"Origin: *[/code] HTTP header."
msgstr ""
-#: doc/classes/HTTPClient.xml:13
+#: doc/classes/HTTPClient.xml:14
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/"
"http_client_class.html"
msgstr ""
-#: doc/classes/HTTPClient.xml:14 doc/classes/HTTPRequest.xml:62
+#: doc/classes/HTTPClient.xml:15 doc/classes/HTTPRequest.xml:71
#: doc/classes/StreamPeerSSL.xml:10
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/ssl_certificates."
"html"
msgstr ""
-#: doc/classes/HTTPClient.xml:21
+#: doc/classes/HTTPClient.xml:22
msgid "Closes the current connection, allowing reuse of this [HTTPClient]."
msgstr ""
-#: doc/classes/HTTPClient.xml:36
+#: doc/classes/HTTPClient.xml:37
msgid ""
"Connects to a host. This needs to be done before any requests are sent.\n"
"The host should not have http:// prepended but will strip the protocol "
@@ -23371,7 +23887,7 @@ msgid ""
"[code]true[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:46
+#: doc/classes/HTTPClient.xml:47
msgid ""
"Returns the response's body length.\n"
"[b]Note:[/b] Some Web servers may not send a body length. In this case, the "
@@ -23379,15 +23895,15 @@ msgid ""
"the body length will also be [code]-1[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:54
+#: doc/classes/HTTPClient.xml:55
msgid "Returns the response's HTTP status code."
msgstr ""
-#: doc/classes/HTTPClient.xml:61
+#: doc/classes/HTTPClient.xml:62
msgid "Returns the response headers."
msgstr ""
-#: doc/classes/HTTPClient.xml:68
+#: doc/classes/HTTPClient.xml:69
msgid ""
"Returns all response headers as a Dictionary of structure [code]{ \"key\": "
"\"value1; value2\" }[/code] where the case-sensitivity of the keys and "
@@ -23402,27 +23918,27 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:82
+#: doc/classes/HTTPClient.xml:83
msgid ""
"Returns a [enum Status] constant. Need to call [method poll] in order to get "
"status updates."
msgstr ""
-#: doc/classes/HTTPClient.xml:89
+#: doc/classes/HTTPClient.xml:90
msgid "If [code]true[/code], this [HTTPClient] has a response available."
msgstr ""
-#: doc/classes/HTTPClient.xml:96
+#: doc/classes/HTTPClient.xml:97
msgid "If [code]true[/code], this [HTTPClient] has a response that is chunked."
msgstr ""
-#: doc/classes/HTTPClient.xml:103
+#: doc/classes/HTTPClient.xml:104
msgid ""
"This needs to be called in order to have any request processed. Check "
"results with [method get_status]."
msgstr ""
-#: doc/classes/HTTPClient.xml:112
+#: doc/classes/HTTPClient.xml:113
msgid ""
"Generates a GET/POST application/x-www-form-urlencoded style query string "
"from a provided dictionary, e.g.:\n"
@@ -23442,11 +23958,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:130
+#: doc/classes/HTTPClient.xml:131
msgid "Reads one chunk from the response."
msgstr ""
-#: doc/classes/HTTPClient.xml:145
+#: doc/classes/HTTPClient.xml:146
msgid ""
"Sends a request to the connected host. The URL parameter is just the part "
"after the host, so for [code]http://somehost.com/index.php[/code], it is "
@@ -23464,7 +23980,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:168
+#: doc/classes/HTTPClient.xml:169
msgid ""
"Sends a raw request to the connected host. The URL parameter is just the "
"part after the host, so for [code]http://somehost.com/index.php[/code], it "
@@ -23474,43 +23990,43 @@ msgid ""
"Sends the body data raw, as a byte array and does not encode it in any way."
msgstr ""
-#: doc/classes/HTTPClient.xml:176
+#: doc/classes/HTTPClient.xml:177
msgid ""
"If [code]true[/code], execution will block until all data is read from the "
"response."
msgstr ""
-#: doc/classes/HTTPClient.xml:179
+#: doc/classes/HTTPClient.xml:180
msgid "The connection to use for this client."
msgstr ""
-#: doc/classes/HTTPClient.xml:182
+#: doc/classes/HTTPClient.xml:183
msgid ""
"The size of the buffer used and maximum bytes to read per iteration. See "
"[method read_response_body_chunk]."
msgstr ""
-#: doc/classes/HTTPClient.xml:187
+#: doc/classes/HTTPClient.xml:188
msgid ""
"HTTP GET method. The GET method requests a representation of the specified "
"resource. Requests using GET should only retrieve data."
msgstr ""
-#: doc/classes/HTTPClient.xml:190
+#: doc/classes/HTTPClient.xml:191
msgid ""
"HTTP HEAD method. The HEAD method asks for a response identical to that of a "
"GET request, but without the response body. This is useful to request "
"metadata like HTTP headers or to check if a resource exists."
msgstr ""
-#: doc/classes/HTTPClient.xml:193
+#: doc/classes/HTTPClient.xml:194
msgid ""
"HTTP POST method. The POST method is used to submit an entity to the "
"specified resource, often causing a change in state or side effects on the "
"server. This is often used for forms and submitting data or uploading files."
msgstr ""
-#: doc/classes/HTTPClient.xml:196
+#: doc/classes/HTTPClient.xml:197
msgid ""
"HTTP PUT method. The PUT method asks to replace all current representations "
"of the target resource with the request payload. (You can think of POST as "
@@ -23518,103 +24034,103 @@ msgid ""
"not make a clear distinction or change their meaning)."
msgstr ""
-#: doc/classes/HTTPClient.xml:199
+#: doc/classes/HTTPClient.xml:200
msgid ""
"HTTP DELETE method. The DELETE method requests to delete the specified "
"resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:202
+#: doc/classes/HTTPClient.xml:203
msgid ""
"HTTP OPTIONS method. The OPTIONS method asks for a description of the "
"communication options for the target resource. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:205
+#: doc/classes/HTTPClient.xml:206
msgid ""
"HTTP TRACE method. The TRACE method performs a message loop-back test along "
"the path to the target resource. Returns the entire HTTP request received in "
"the response body. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:208
+#: doc/classes/HTTPClient.xml:209
msgid ""
"HTTP CONNECT method. The CONNECT method establishes a tunnel to the server "
"identified by the target resource. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:211
+#: doc/classes/HTTPClient.xml:212
msgid ""
"HTTP PATCH method. The PATCH method is used to apply partial modifications "
"to a resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:214
+#: doc/classes/HTTPClient.xml:215
msgid "Represents the size of the [enum Method] enum."
msgstr ""
-#: doc/classes/HTTPClient.xml:217
+#: doc/classes/HTTPClient.xml:218
msgid "Status: Disconnected from the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:220
+#: doc/classes/HTTPClient.xml:221
msgid "Status: Currently resolving the hostname for the given URL into an IP."
msgstr ""
-#: doc/classes/HTTPClient.xml:223
+#: doc/classes/HTTPClient.xml:224
msgid "Status: DNS failure: Can't resolve the hostname for the given URL."
msgstr ""
-#: doc/classes/HTTPClient.xml:226
+#: doc/classes/HTTPClient.xml:227
msgid "Status: Currently connecting to server."
msgstr ""
-#: doc/classes/HTTPClient.xml:229
+#: doc/classes/HTTPClient.xml:230
msgid "Status: Can't connect to the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:232
+#: doc/classes/HTTPClient.xml:233
msgid "Status: Connection established."
msgstr ""
-#: doc/classes/HTTPClient.xml:235
+#: doc/classes/HTTPClient.xml:236
msgid "Status: Currently sending request."
msgstr ""
-#: doc/classes/HTTPClient.xml:238
+#: doc/classes/HTTPClient.xml:239
msgid "Status: HTTP body received."
msgstr ""
-#: doc/classes/HTTPClient.xml:241
+#: doc/classes/HTTPClient.xml:242
msgid "Status: Error in HTTP connection."
msgstr ""
-#: doc/classes/HTTPClient.xml:244
+#: doc/classes/HTTPClient.xml:245
msgid "Status: Error in SSL handshake."
msgstr ""
-#: doc/classes/HTTPClient.xml:247
+#: doc/classes/HTTPClient.xml:248
msgid ""
"HTTP status code [code]100 Continue[/code]. Interim response that indicates "
"everything so far is OK and that the client should continue with the request "
"(or ignore this status if already finished)."
msgstr ""
-#: doc/classes/HTTPClient.xml:250
+#: doc/classes/HTTPClient.xml:251
msgid ""
"HTTP status code [code]101 Switching Protocol[/code]. Sent in response to an "
"[code]Upgrade[/code] request header by the client. Indicates the protocol "
"the server is switching to."
msgstr ""
-#: doc/classes/HTTPClient.xml:253
+#: doc/classes/HTTPClient.xml:254
msgid ""
"HTTP status code [code]102 Processing[/code] (WebDAV). Indicates that the "
"server has received and is processing the request, but no response is "
"available yet."
msgstr ""
-#: doc/classes/HTTPClient.xml:256
+#: doc/classes/HTTPClient.xml:257
msgid ""
"HTTP status code [code]200 OK[/code]. The request has succeeded. Default "
"response for successful requests. Meaning varies depending on the request. "
@@ -23625,14 +24141,14 @@ msgid ""
"server."
msgstr ""
-#: doc/classes/HTTPClient.xml:259
+#: doc/classes/HTTPClient.xml:260
msgid ""
"HTTP status code [code]201 Created[/code]. The request has succeeded and a "
"new resource has been created as a result of it. This is typically the "
"response sent after a PUT request."
msgstr ""
-#: doc/classes/HTTPClient.xml:262
+#: doc/classes/HTTPClient.xml:263
msgid ""
"HTTP status code [code]202 Accepted[/code]. The request has been received "
"but not yet acted upon. It is non-committal, meaning that there is no way in "
@@ -23641,7 +24157,7 @@ msgid ""
"server handles the request, or for batch processing."
msgstr ""
-#: doc/classes/HTTPClient.xml:265
+#: doc/classes/HTTPClient.xml:266
msgid ""
"HTTP status code [code]203 Non-Authoritative Information[/code]. This "
"response code means returned meta-information set is not exact set as "
@@ -23650,14 +24166,14 @@ msgid ""
"instead of this response."
msgstr ""
-#: doc/classes/HTTPClient.xml:268
+#: doc/classes/HTTPClient.xml:269
msgid ""
"HTTP status code [code]204 No Content[/code]. There is no content to send "
"for this request, but the headers may be useful. The user-agent may update "
"its cached headers for this resource with the new ones."
msgstr ""
-#: doc/classes/HTTPClient.xml:271
+#: doc/classes/HTTPClient.xml:272
msgid ""
"HTTP status code [code]205 Reset Content[/code]. The server has fulfilled "
"the request and desires that the client resets the \"document view\" that "
@@ -23665,49 +24181,49 @@ msgid ""
"origin server."
msgstr ""
-#: doc/classes/HTTPClient.xml:274
+#: doc/classes/HTTPClient.xml:275
msgid ""
"HTTP status code [code]206 Partial Content[/code]. This response code is "
"used because of a range header sent by the client to separate download into "
"multiple streams."
msgstr ""
-#: doc/classes/HTTPClient.xml:277
+#: doc/classes/HTTPClient.xml:278
msgid ""
"HTTP status code [code]207 Multi-Status[/code] (WebDAV). A Multi-Status "
"response conveys information about multiple resources in situations where "
"multiple status codes might be appropriate."
msgstr ""
-#: doc/classes/HTTPClient.xml:280
+#: doc/classes/HTTPClient.xml:281
msgid ""
"HTTP status code [code]208 Already Reported[/code] (WebDAV). Used inside a "
"DAV: propstat response element to avoid enumerating the internal members of "
"multiple bindings to the same collection repeatedly."
msgstr ""
-#: doc/classes/HTTPClient.xml:283
+#: doc/classes/HTTPClient.xml:284
msgid ""
"HTTP status code [code]226 IM Used[/code] (WebDAV). The server has fulfilled "
"a GET request for the resource, and the response is a representation of the "
"result of one or more instance-manipulations applied to the current instance."
msgstr ""
-#: doc/classes/HTTPClient.xml:286
+#: doc/classes/HTTPClient.xml:287
msgid ""
"HTTP status code [code]300 Multiple Choice[/code]. The request has more than "
"one possible responses and there is no standardized way to choose one of the "
"responses. User-agent or user should choose one of them."
msgstr ""
-#: doc/classes/HTTPClient.xml:289
+#: doc/classes/HTTPClient.xml:290
msgid ""
"HTTP status code [code]301 Moved Permanently[/code]. Redirection. This "
"response code means the URI of requested resource has been changed. The new "
"URI is usually included in the response."
msgstr ""
-#: doc/classes/HTTPClient.xml:292
+#: doc/classes/HTTPClient.xml:293
msgid ""
"HTTP status code [code]302 Found[/code]. Temporary redirection. This "
"response code means the URI of requested resource has been changed "
@@ -23715,7 +24231,7 @@ msgid ""
"this same URI should be used by the client in future requests."
msgstr ""
-#: doc/classes/HTTPClient.xml:295
+#: doc/classes/HTTPClient.xml:296
msgid ""
"HTTP status code [code]303 See Other[/code]. The server is redirecting the "
"user agent to a different resource, as indicated by a URI in the Location "
@@ -23723,39 +24239,39 @@ msgid ""
"original request."
msgstr ""
-#: doc/classes/HTTPClient.xml:298
+#: doc/classes/HTTPClient.xml:299
msgid ""
"HTTP status code [code]304 Not Modified[/code]. A conditional GET or HEAD "
"request has been received and would have resulted in a 200 OK response if it "
"were not for the fact that the condition evaluated to [code]false[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:301
+#: doc/classes/HTTPClient.xml:302
msgid ""
"HTTP status code [code]305 Use Proxy[/code]. [i]Deprecated. Do not use.[/i]"
msgstr ""
-#: doc/classes/HTTPClient.xml:304
+#: doc/classes/HTTPClient.xml:305
msgid ""
"HTTP status code [code]306 Switch Proxy[/code]. [i]Deprecated. Do not use.[/"
"i]"
msgstr ""
-#: doc/classes/HTTPClient.xml:307
+#: doc/classes/HTTPClient.xml:308
msgid ""
"HTTP status code [code]307 Temporary Redirect[/code]. The target resource "
"resides temporarily under a different URI and the user agent MUST NOT change "
"the request method if it performs an automatic redirection to that URI."
msgstr ""
-#: doc/classes/HTTPClient.xml:310
+#: doc/classes/HTTPClient.xml:311
msgid ""
"HTTP status code [code]308 Permanent Redirect[/code]. The target resource "
"has been assigned a new permanent URI and any future references to this "
"resource ought to use one of the enclosed URIs."
msgstr ""
-#: doc/classes/HTTPClient.xml:313
+#: doc/classes/HTTPClient.xml:314
msgid ""
"HTTP status code [code]400 Bad Request[/code]. The request was invalid. The "
"server cannot or will not process the request due to something that is "
@@ -23764,21 +24280,21 @@ msgid ""
"routing)."
msgstr ""
-#: doc/classes/HTTPClient.xml:316
+#: doc/classes/HTTPClient.xml:317
msgid ""
"HTTP status code [code]401 Unauthorized[/code]. Credentials required. The "
"request has not been applied because it lacks valid authentication "
"credentials for the target resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:319
+#: doc/classes/HTTPClient.xml:320
msgid ""
"HTTP status code [code]402 Payment Required[/code]. This response code is "
"reserved for future use. Initial aim for creating this code was using it for "
"digital payment systems, however this is not currently used."
msgstr ""
-#: doc/classes/HTTPClient.xml:322
+#: doc/classes/HTTPClient.xml:323
msgid ""
"HTTP status code [code]403 Forbidden[/code]. The client does not have access "
"rights to the content, i.e. they are unauthorized, so server is rejecting to "
@@ -23786,7 +24302,7 @@ msgid ""
"known to the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:325
+#: doc/classes/HTTPClient.xml:326
msgid ""
"HTTP status code [code]404 Not Found[/code]. The server can not find "
"requested resource. Either the URL is not recognized or the endpoint is "
@@ -23794,7 +24310,7 @@ msgid ""
"403 to hide existence of a resource if the client is not authorized."
msgstr ""
-#: doc/classes/HTTPClient.xml:328
+#: doc/classes/HTTPClient.xml:329
msgid ""
"HTTP status code [code]405 Method Not Allowed[/code]. The request's HTTP "
"method is known by the server but has been disabled and cannot be used. For "
@@ -23802,7 +24318,7 @@ msgid ""
"GET and HEAD, must never be disabled and should not return this error code."
msgstr ""
-#: doc/classes/HTTPClient.xml:331
+#: doc/classes/HTTPClient.xml:332
msgid ""
"HTTP status code [code]406 Not Acceptable[/code]. The target resource does "
"not have a current representation that would be acceptable to the user "
@@ -23810,21 +24326,21 @@ msgid ""
"request. Used when negotiation content."
msgstr ""
-#: doc/classes/HTTPClient.xml:334
+#: doc/classes/HTTPClient.xml:335
msgid ""
"HTTP status code [code]407 Proxy Authentication Required[/code]. Similar to "
"401 Unauthorized, but it indicates that the client needs to authenticate "
"itself in order to use a proxy."
msgstr ""
-#: doc/classes/HTTPClient.xml:337
+#: doc/classes/HTTPClient.xml:338
msgid ""
"HTTP status code [code]408 Request Timeout[/code]. The server did not "
"receive a complete request message within the time that it was prepared to "
"wait."
msgstr ""
-#: doc/classes/HTTPClient.xml:340
+#: doc/classes/HTTPClient.xml:341
msgid ""
"HTTP status code [code]409 Conflict[/code]. The request could not be "
"completed due to a conflict with the current state of the target resource. "
@@ -23832,47 +24348,47 @@ msgid ""
"conflict and resubmit the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:343
+#: doc/classes/HTTPClient.xml:344
msgid ""
"HTTP status code [code]410 Gone[/code]. The target resource is no longer "
"available at the origin server and this condition is likely permanent."
msgstr ""
-#: doc/classes/HTTPClient.xml:346
+#: doc/classes/HTTPClient.xml:347
msgid ""
"HTTP status code [code]411 Length Required[/code]. The server refuses to "
"accept the request without a defined Content-Length header."
msgstr ""
-#: doc/classes/HTTPClient.xml:349
+#: doc/classes/HTTPClient.xml:350
msgid ""
"HTTP status code [code]412 Precondition Failed[/code]. One or more "
"conditions given in the request header fields evaluated to [code]false[/"
"code] when tested on the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:352
+#: doc/classes/HTTPClient.xml:353
msgid ""
"HTTP status code [code]413 Entity Too Large[/code]. The server is refusing "
"to process a request because the request payload is larger than the server "
"is willing or able to process."
msgstr ""
-#: doc/classes/HTTPClient.xml:355
+#: doc/classes/HTTPClient.xml:356
msgid ""
"HTTP status code [code]414 Request-URI Too Long[/code]. The server is "
"refusing to service the request because the request-target is longer than "
"the server is willing to interpret."
msgstr ""
-#: doc/classes/HTTPClient.xml:358
+#: doc/classes/HTTPClient.xml:359
msgid ""
"HTTP status code [code]415 Unsupported Media Type[/code]. The origin server "
"is refusing to service the request because the payload is in a format not "
"supported by this method on the target resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:361
+#: doc/classes/HTTPClient.xml:362
msgid ""
"HTTP status code [code]416 Requested Range Not Satisfiable[/code]. None of "
"the ranges in the request's Range header field overlap the current extent of "
@@ -23880,21 +24396,21 @@ msgid ""
"to invalid ranges or an excessive request of small or overlapping ranges."
msgstr ""
-#: doc/classes/HTTPClient.xml:364
+#: doc/classes/HTTPClient.xml:365
msgid ""
"HTTP status code [code]417 Expectation Failed[/code]. The expectation given "
"in the request's Expect header field could not be met by at least one of the "
"inbound servers."
msgstr ""
-#: doc/classes/HTTPClient.xml:367
+#: doc/classes/HTTPClient.xml:368
msgid ""
"HTTP status code [code]418 I'm A Teapot[/code]. Any attempt to brew coffee "
"with a teapot should result in the error code \"418 I'm a teapot\". The "
"resulting entity body MAY be short and stout."
msgstr ""
-#: doc/classes/HTTPClient.xml:370
+#: doc/classes/HTTPClient.xml:371
msgid ""
"HTTP status code [code]421 Misdirected Request[/code]. The request was "
"directed at a server that is not able to produce a response. This can be "
@@ -23902,7 +24418,7 @@ msgid ""
"combination of scheme and authority that are included in the request URI."
msgstr ""
-#: doc/classes/HTTPClient.xml:373
+#: doc/classes/HTTPClient.xml:374
msgid ""
"HTTP status code [code]422 Unprocessable Entity[/code] (WebDAV). The server "
"understands the content type of the request entity (hence a 415 Unsupported "
@@ -23911,40 +24427,40 @@ msgid ""
"was unable to process the contained instructions."
msgstr ""
-#: doc/classes/HTTPClient.xml:376
+#: doc/classes/HTTPClient.xml:377
msgid ""
"HTTP status code [code]423 Locked[/code] (WebDAV). The source or destination "
"resource of a method is locked."
msgstr ""
-#: doc/classes/HTTPClient.xml:379
+#: doc/classes/HTTPClient.xml:380
msgid ""
"HTTP status code [code]424 Failed Dependency[/code] (WebDAV). The method "
"could not be performed on the resource because the requested action depended "
"on another action and that action failed."
msgstr ""
-#: doc/classes/HTTPClient.xml:382
+#: doc/classes/HTTPClient.xml:383
msgid ""
"HTTP status code [code]426 Upgrade Required[/code]. The server refuses to "
"perform the request using the current protocol but might be willing to do so "
"after the client upgrades to a different protocol."
msgstr ""
-#: doc/classes/HTTPClient.xml:385
+#: doc/classes/HTTPClient.xml:386
msgid ""
"HTTP status code [code]428 Precondition Required[/code]. The origin server "
"requires the request to be conditional."
msgstr ""
-#: doc/classes/HTTPClient.xml:388
+#: doc/classes/HTTPClient.xml:389
msgid ""
"HTTP status code [code]429 Too Many Requests[/code]. The user has sent too "
"many requests in a given amount of time (see \"rate limiting\"). Back off "
"and increase time between requests or try again later."
msgstr ""
-#: doc/classes/HTTPClient.xml:391
+#: doc/classes/HTTPClient.xml:392
msgid ""
"HTTP status code [code]431 Request Header Fields Too Large[/code]. The "
"server is unwilling to process the request because its header fields are too "
@@ -23952,27 +24468,27 @@ msgid ""
"header fields."
msgstr ""
-#: doc/classes/HTTPClient.xml:394
+#: doc/classes/HTTPClient.xml:395
msgid ""
"HTTP status code [code]451 Response Unavailable For Legal Reasons[/code]. "
"The server is denying access to the resource as a consequence of a legal "
"demand."
msgstr ""
-#: doc/classes/HTTPClient.xml:397
+#: doc/classes/HTTPClient.xml:398
msgid ""
"HTTP status code [code]500 Internal Server Error[/code]. The server "
"encountered an unexpected condition that prevented it from fulfilling the "
"request."
msgstr ""
-#: doc/classes/HTTPClient.xml:400
+#: doc/classes/HTTPClient.xml:401
msgid ""
"HTTP status code [code]501 Not Implemented[/code]. The server does not "
"support the functionality required to fulfill the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:403
+#: doc/classes/HTTPClient.xml:404
msgid ""
"HTTP status code [code]502 Bad Gateway[/code]. The server, while acting as a "
"gateway or proxy, received an invalid response from an inbound server it "
@@ -23980,7 +24496,7 @@ msgid ""
"balancers or proxies."
msgstr ""
-#: doc/classes/HTTPClient.xml:406
+#: doc/classes/HTTPClient.xml:407
msgid ""
"HTTP status code [code]503 Service Unavailable[/code]. The server is "
"currently unable to handle the request due to a temporary overload or "
@@ -23988,7 +24504,7 @@ msgid ""
"again later."
msgstr ""
-#: doc/classes/HTTPClient.xml:409
+#: doc/classes/HTTPClient.xml:410
msgid ""
"HTTP status code [code]504 Gateway Timeout[/code]. The server, while acting "
"as a gateway or proxy, did not receive a timely response from an upstream "
@@ -23996,14 +24512,14 @@ msgid ""
"returned by load balancers or proxies."
msgstr ""
-#: doc/classes/HTTPClient.xml:412
+#: doc/classes/HTTPClient.xml:413
msgid ""
"HTTP status code [code]505 HTTP Version Not Supported[/code]. The server "
"does not support, or refuses to support, the major version of HTTP that was "
"used in the request message."
msgstr ""
-#: doc/classes/HTTPClient.xml:415
+#: doc/classes/HTTPClient.xml:416
msgid ""
"HTTP status code [code]506 Variant Also Negotiates[/code]. The server has an "
"internal configuration error: the chosen variant resource is configured to "
@@ -24011,14 +24527,14 @@ msgid ""
"proper end point in the negotiation process."
msgstr ""
-#: doc/classes/HTTPClient.xml:418
+#: doc/classes/HTTPClient.xml:419
msgid ""
"HTTP status code [code]507 Insufficient Storage[/code]. The method could not "
"be performed on the resource because the server is unable to store the "
"representation needed to successfully complete the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:421
+#: doc/classes/HTTPClient.xml:422
msgid ""
"HTTP status code [code]508 Loop Detected[/code]. The server terminated an "
"operation because it encountered an infinite loop while processing a request "
@@ -24026,14 +24542,14 @@ msgid ""
"failed."
msgstr ""
-#: doc/classes/HTTPClient.xml:424
+#: doc/classes/HTTPClient.xml:425
msgid ""
"HTTP status code [code]510 Not Extended[/code]. The policy for accessing the "
"resource has not been met in the request. The server should send back all "
"the information necessary for the client to issue an extended request."
msgstr ""
-#: doc/classes/HTTPClient.xml:427
+#: doc/classes/HTTPClient.xml:428
msgid ""
"HTTP status code [code]511 Network Authentication Required[/code]. The "
"client needs to authenticate to gain network access."
@@ -24059,12 +24575,21 @@ msgid ""
" http_request.connect(\"request_completed\", self, "
"\"_http_request_completed\")\n"
"\n"
-" # Perform the HTTP request. The URL below returns some JSON as of "
-"writing.\n"
+" # Perform a GET request. The URL below returns JSON as of writing.\n"
" var error = http_request.request(\"https://httpbin.org/get\")\n"
" if error != OK:\n"
" push_error(\"An error occurred in the HTTP request.\")\n"
"\n"
+" # Perform a POST request. The URL below returns JSON as of writing.\n"
+" # Note: Don't make simultaneous requests using a single HTTPRequest "
+"node.\n"
+" # The snippet below is provided for reference only.\n"
+" var body = {\"name\": \"Godette\"}\n"
+" var error = http_request.request(\"https://httpbin.org/post\", [], true, "
+"HTTPClient.METHOD_POST, body)\n"
+" if error != OK:\n"
+" push_error(\"An error occurred in the HTTP request.\")\n"
+"\n"
"\n"
"# Called when the HTTP request is completed.\n"
"func _http_request_completed(result, response_code, headers, body):\n"
@@ -24104,20 +24629,26 @@ msgid ""
" var texture_rect = TextureRect.new()\n"
" add_child(texture_rect)\n"
" texture_rect.texture = texture\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] When performing HTTP requests from a project exported to HTML5, "
+"keep in mind the remote server may not allow requests from foreign origins "
+"due to [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/"
+"url]. If you host the server in question, you should modify its backend to "
+"allow requests from foreign origins by adding the [code]Access-Control-Allow-"
+"Origin: *[/code] HTTP header."
msgstr ""
-#: doc/classes/HTTPRequest.xml:61
+#: doc/classes/HTTPRequest.xml:70
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/"
"http_request_class.html"
msgstr ""
-#: doc/classes/HTTPRequest.xml:69
+#: doc/classes/HTTPRequest.xml:78
msgid "Cancels the current request."
msgstr ""
-#: doc/classes/HTTPRequest.xml:76
+#: doc/classes/HTTPRequest.xml:85
msgid ""
"Returns the response body length.\n"
"[b]Note:[/b] Some Web servers may not send a body length. In this case, the "
@@ -24125,17 +24656,17 @@ msgid ""
"the body length will also be [code]-1[/code]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:84
+#: doc/classes/HTTPRequest.xml:93
msgid "Returns the amount of bytes this HTTPRequest downloaded."
msgstr ""
-#: doc/classes/HTTPRequest.xml:91
+#: doc/classes/HTTPRequest.xml:100
msgid ""
"Returns the current status of the underlying [HTTPClient]. See [enum "
"HTTPClient.Status]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:108
+#: doc/classes/HTTPRequest.xml:117
msgid ""
"Creates request on the underlying [HTTPClient]. If there is no configuration "
"errors, it tries to connect using [method HTTPClient.connect_to_host] and "
@@ -24148,11 +24679,11 @@ msgid ""
"connect to host."
msgstr ""
-#: doc/classes/HTTPRequest.xml:115
+#: doc/classes/HTTPRequest.xml:124
msgid "Maximum allowed size for response bodies."
msgstr ""
-#: doc/classes/HTTPRequest.xml:118
+#: doc/classes/HTTPRequest.xml:127
msgid ""
"The size of the buffer used and maximum bytes to read per iteration. See "
"[member HTTPClient.read_chunk_size].\n"
@@ -24160,63 +24691,63 @@ msgid ""
"files to achieve better speeds at the cost of memory."
msgstr ""
-#: doc/classes/HTTPRequest.xml:122
+#: doc/classes/HTTPRequest.xml:131
msgid "The file to download into. Will output any received file into it."
msgstr ""
-#: doc/classes/HTTPRequest.xml:125
+#: doc/classes/HTTPRequest.xml:134
msgid "Maximum number of allowed redirects."
msgstr ""
-#: doc/classes/HTTPRequest.xml:130
+#: doc/classes/HTTPRequest.xml:139
msgid "If [code]true[/code], multithreading is used to improve performance."
msgstr ""
-#: doc/classes/HTTPRequest.xml:144
+#: doc/classes/HTTPRequest.xml:153
msgid "Emitted when a request is completed."
msgstr ""
-#: doc/classes/HTTPRequest.xml:150
+#: doc/classes/HTTPRequest.xml:159
msgid "Request successful."
msgstr ""
-#: doc/classes/HTTPRequest.xml:155
+#: doc/classes/HTTPRequest.xml:164
msgid "Request failed while connecting."
msgstr ""
-#: doc/classes/HTTPRequest.xml:158
+#: doc/classes/HTTPRequest.xml:167
msgid "Request failed while resolving."
msgstr ""
-#: doc/classes/HTTPRequest.xml:161
+#: doc/classes/HTTPRequest.xml:170
msgid "Request failed due to connection (read/write) error."
msgstr ""
-#: doc/classes/HTTPRequest.xml:164
+#: doc/classes/HTTPRequest.xml:173
msgid "Request failed on SSL handshake."
msgstr ""
-#: doc/classes/HTTPRequest.xml:167
+#: doc/classes/HTTPRequest.xml:176
msgid "Request does not have a response (yet)."
msgstr ""
-#: doc/classes/HTTPRequest.xml:170
+#: doc/classes/HTTPRequest.xml:179
msgid "Request exceeded its maximum size limit, see [member body_size_limit]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:173
+#: doc/classes/HTTPRequest.xml:182
msgid "Request failed (currently unused)."
msgstr ""
-#: doc/classes/HTTPRequest.xml:176
+#: doc/classes/HTTPRequest.xml:185
msgid "HTTPRequest couldn't open the download file."
msgstr ""
-#: doc/classes/HTTPRequest.xml:179
+#: doc/classes/HTTPRequest.xml:188
msgid "HTTPRequest couldn't write to the download file."
msgstr ""
-#: doc/classes/HTTPRequest.xml:182
+#: doc/classes/HTTPRequest.xml:191
msgid "Request reached its maximum redirect limit, see [member max_redirects]."
msgstr ""
@@ -24440,42 +24971,46 @@ msgid "Loads an image from the binary contents of a PNG file."
msgstr ""
#: doc/classes/Image.xml:373
+msgid "Loads an image from the binary contents of a TGA file."
+msgstr ""
+
+#: doc/classes/Image.xml:382
msgid "Loads an image from the binary contents of a WebP file."
msgstr ""
-#: doc/classes/Image.xml:380
+#: doc/classes/Image.xml:389
msgid ""
"Converts the image's data to represent coordinates on a 3D plane. This is "
"used when the image represents a normalmap. A normalmap can add lots of "
"detail to a 3D surface without increasing the polygon count."
msgstr ""
-#: doc/classes/Image.xml:387
+#: doc/classes/Image.xml:396
msgid ""
"Multiplies color values with alpha values. Resulting color values for a "
"pixel are [code](color * alpha)/256[/code]."
msgstr ""
-#: doc/classes/Image.xml:400
+#: doc/classes/Image.xml:409
msgid ""
"Resizes the image to the given [code]width[/code] and [code]height[/code]. "
"New pixels are calculated using [code]interpolation[/code]. See "
"[code]interpolation[/code] constants."
msgstr ""
-#: doc/classes/Image.xml:409
+#: doc/classes/Image.xml:418
msgid ""
"Resizes the image to the nearest power of 2 for the width and height. If "
"[code]square[/code] is [code]true[/code] then set width and height to be the "
"same."
msgstr ""
-#: doc/classes/Image.xml:416
+#: doc/classes/Image.xml:425
msgid ""
"Converts a standard RGBE (Red Green Blue Exponent) image to an sRGB image."
msgstr ""
-#: doc/classes/Image.xml:427
+#: doc/classes/Image.xml:436
msgid ""
"Saves the image as an EXR file to [code]path[/code]. If [code]grayscale[/"
"code] is [code]true[/code] and the image has only one channel, it will be "
@@ -24484,11 +25019,11 @@ msgid ""
"TinyEXR module."
msgstr ""
-#: doc/classes/Image.xml:436
+#: doc/classes/Image.xml:445
msgid "Saves the image as a PNG file to [code]path[/code]."
msgstr ""
-#: doc/classes/Image.xml:455
+#: doc/classes/Image.xml:464
msgid ""
"Sets the [Color] of the pixel at [code](x, y)[/code]. Example:\n"
"[codeblock]\n"
@@ -24498,7 +25033,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Image.xml:471
+#: doc/classes/Image.xml:480
msgid ""
"Sets the [Color] of the pixel at [code](dst.x, dst.y)[/code]. Note that the "
"[code]dst[/code] values must be integers. Example:\n"
@@ -24509,51 +25044,51 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Image.xml:483
+#: doc/classes/Image.xml:492
msgid "Shrinks the image by a factor of 2."
msgstr ""
-#: doc/classes/Image.xml:490
+#: doc/classes/Image.xml:499
msgid "Converts the raw data from the sRGB colorspace to a linear scale."
msgstr ""
-#: doc/classes/Image.xml:496
+#: doc/classes/Image.xml:505
msgid ""
"Holds all of the image's color data in a given format. See [enum Format] "
"constants."
msgstr ""
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:510
msgid "The maximal width allowed for [Image] resources."
msgstr ""
-#: doc/classes/Image.xml:504
+#: doc/classes/Image.xml:513
msgid "The maximal height allowed for [Image] resources."
msgstr ""
-#: doc/classes/Image.xml:507
+#: doc/classes/Image.xml:516
msgid "Texture format with a single 8-bit depth representing luminance."
msgstr ""
-#: doc/classes/Image.xml:510
+#: doc/classes/Image.xml:519
msgid ""
"OpenGL texture format with two values, luminance and alpha each stored with "
"8 bits."
msgstr ""
-#: doc/classes/Image.xml:513
+#: doc/classes/Image.xml:522
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
"bitdepth of 8."
msgstr ""
-#: doc/classes/Image.xml:516
+#: doc/classes/Image.xml:525
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
-#: doc/classes/Image.xml:519
+#: doc/classes/Image.xml:528
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -24561,7 +25096,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:523
+#: doc/classes/Image.xml:532
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -24569,67 +25104,67 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:536
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
-#: doc/classes/Image.xml:532
+#: doc/classes/Image.xml:541
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
-#: doc/classes/Image.xml:535
+#: doc/classes/Image.xml:544
msgid ""
"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
"each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:538
+#: doc/classes/Image.xml:547
msgid ""
"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
"components, each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:541
+#: doc/classes/Image.xml:550
msgid ""
"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
"components, each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:544
+#: doc/classes/Image.xml:553
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 16-"
"bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:556
msgid ""
"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
"each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:550
+#: doc/classes/Image.xml:559
msgid ""
"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
"components, each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:553
+#: doc/classes/Image.xml:562
msgid ""
"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
"components, each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:556
+#: doc/classes/Image.xml:565
msgid ""
"A special OpenGL texture format where the three color components have 9 bits "
"of precision and all three share a single 5-bit exponent."
msgstr ""
-#: doc/classes/Image.xml:559
+#: doc/classes/Image.xml:568
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format that uses Block Compression 1, and is the smallest variation "
@@ -24639,7 +25174,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:563
+#: doc/classes/Image.xml:572
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format that uses Block Compression 2, and color data is interpreted "
@@ -24649,7 +25184,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:567
+#: doc/classes/Image.xml:576
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format also known as Block Compression 3 or BC3 that contains 64 "
@@ -24660,7 +25195,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:571
+#: doc/classes/Image.xml:580
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -24668,7 +25203,7 @@ msgid ""
"DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:574
+#: doc/classes/Image.xml:583
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -24676,7 +25211,7 @@ msgid ""
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:577
+#: doc/classes/Image.xml:586
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -24685,21 +25220,21 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:581
+#: doc/classes/Image.xml:590
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with signed floating-point "
"RGB components."
msgstr ""
-#: doc/classes/Image.xml:584
+#: doc/classes/Image.xml:593
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned floating-point "
"RGB components."
msgstr ""
-#: doc/classes/Image.xml:587
+#: doc/classes/Image.xml:596
msgid ""
"Texture format used on PowerVR-supported mobile platforms, uses 2-bit color "
"depth with no alpha. More information can be found [url=https://en.wikipedia."
@@ -24708,25 +25243,25 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:600
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:603
msgid ""
"Similar to [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with 4-"
"bit color depth and no alpha."
msgstr ""
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:606
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:609
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -24734,7 +25269,7 @@ msgid ""
"standard. This format cannot store an alpha channel."
msgstr ""
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:612
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24742,7 +25277,7 @@ msgid ""
"unsigned data."
msgstr ""
-#: doc/classes/Image.xml:606
+#: doc/classes/Image.xml:615
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24750,7 +25285,7 @@ msgid ""
"channel of signed data."
msgstr ""
-#: doc/classes/Image.xml:609
+#: doc/classes/Image.xml:618
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24758,7 +25293,7 @@ msgid ""
"of unsigned data."
msgstr ""
-#: doc/classes/Image.xml:612
+#: doc/classes/Image.xml:621
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24766,7 +25301,7 @@ msgid ""
"channels of signed data."
msgstr ""
-#: doc/classes/Image.xml:615
+#: doc/classes/Image.xml:624
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24776,7 +25311,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:619
+#: doc/classes/Image.xml:628
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24786,7 +25321,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:623
+#: doc/classes/Image.xml:632
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24797,31 +25332,31 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:631
+#: doc/classes/Image.xml:640
msgid "Represents the size of the [enum Format] enum."
msgstr ""
-#: doc/classes/Image.xml:634
+#: doc/classes/Image.xml:643
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
-#: doc/classes/Image.xml:637
+#: doc/classes/Image.xml:646
msgid ""
"Performs bilinear interpolation. If the image is resized, it will be blurry. "
"This mode is faster than [constant INTERPOLATE_CUBIC], but it results in "
"lower quality."
msgstr ""
-#: doc/classes/Image.xml:640
+#: doc/classes/Image.xml:649
msgid ""
"Performs cubic interpolation. If the image is resized, it will be blurry. "
"This mode often gives better results compared to [constant "
"INTERPOLATE_BILINEAR], at the cost of being slower."
msgstr ""
-#: doc/classes/Image.xml:643
+#: doc/classes/Image.xml:652
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -24836,55 +25371,55 @@ msgid ""
"a new set will be generated for the resulting image."
msgstr ""
-#: doc/classes/Image.xml:650
+#: doc/classes/Image.xml:659
msgid ""
"Performs Lanczos interpolation. This is the slowest image resizing mode, but "
"it typically gives the best results, especially when downscalng images."
msgstr ""
-#: doc/classes/Image.xml:653
+#: doc/classes/Image.xml:662
msgid "Image does not have alpha."
msgstr ""
-#: doc/classes/Image.xml:656
+#: doc/classes/Image.xml:665
msgid "Image stores alpha in a single bit."
msgstr ""
-#: doc/classes/Image.xml:659
+#: doc/classes/Image.xml:668
msgid "Image uses alpha."
msgstr ""
-#: doc/classes/Image.xml:662
+#: doc/classes/Image.xml:671
msgid "Use S3TC compression."
msgstr ""
-#: doc/classes/Image.xml:665
+#: doc/classes/Image.xml:674
msgid "Use PVRTC2 compression."
msgstr ""
-#: doc/classes/Image.xml:668
+#: doc/classes/Image.xml:677
msgid "Use PVRTC4 compression."
msgstr ""
-#: doc/classes/Image.xml:671
+#: doc/classes/Image.xml:680
msgid "Use ETC compression."
msgstr ""
-#: doc/classes/Image.xml:674
+#: doc/classes/Image.xml:683
msgid "Use ETC2 compression."
msgstr ""
-#: doc/classes/Image.xml:689
+#: doc/classes/Image.xml:698
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
-#: doc/classes/Image.xml:692
+#: doc/classes/Image.xml:701
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
-#: doc/classes/Image.xml:695
+#: doc/classes/Image.xml:704
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -25703,7 +26238,7 @@ msgid "Contains mouse click information. See [method Node._input]."
msgstr ""
#: doc/classes/InputEventMouseButton.xml:10
-#: doc/classes/InputEventMouseMotion.xml:10
+#: doc/classes/InputEventMouseMotion.xml:11
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/inputs/"
"mouse_and_input_coordinates.html"
@@ -25740,29 +26275,36 @@ msgstr ""
#: doc/classes/InputEventMouseMotion.xml:7
msgid ""
"Contains mouse and pen motion information. Supports relative, absolute "
-"positions and speed. See [method Node._input]."
+"positions and speed. See [method Node._input].\n"
+"[b]Note:[/b] By default, this event is only emitted once per frame rendered "
+"at most. If you need more precise input reporting, call [method Input."
+"set_use_accumulated_input] with [code]false[/code] to make events emitted as "
+"often as possible. If you use InputEventMouseMotion to draw lines, consider "
+"implementing [url=https://en.wikipedia.org/wiki/Bresenham"
+"%27s_line_algorithm]Bresenham's line algorithm[/url] as well to avoid "
+"visible gaps in lines if the user is moving the mouse quickly."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:16
+#: doc/classes/InputEventMouseMotion.xml:17
msgid ""
"Represents the pressure the user puts on the pen. Ranges from [code]0.0[/"
"code] to [code]1.0[/code]."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:19
+#: doc/classes/InputEventMouseMotion.xml:20
msgid ""
"The mouse position relative to the previous position (position at the last "
-"frame). \n"
+"frame).\n"
"[b]Note:[/b] Since [InputEventMouseMotion] is only emitted when the mouse "
"moves, the last event won't have a relative position of [code]Vector2(0, 0)[/"
"code] when the user stops moving the mouse."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:23
+#: doc/classes/InputEventMouseMotion.xml:24
msgid "The mouse speed in pixels per second."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:26
+#: doc/classes/InputEventMouseMotion.xml:27
msgid ""
"Represents the angles of tilt of the pen. Positive X-coordinate value "
"indicates a tilt to the right. Positive Y-coordinate value indicates a tilt "
@@ -26652,14 +27194,17 @@ msgstr ""
#: doc/classes/JSON.xml:18
msgid ""
-"Parses a JSON encoded string and returns a [JSONParseResult] containing the "
+"Parses a JSON-encoded string and returns a [JSONParseResult] containing the "
"result."
msgstr ""
#: doc/classes/JSON.xml:31
msgid ""
"Converts a [Variant] var to JSON text and returns the result. Useful for "
-"serializing data to store or send over the network."
+"serializing data to store or send over the network.\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, converting a Variant to JSON text "
+"will convert all numerical values to [float] types."
msgstr ""
#: doc/classes/JSONParseResult.xml:4
@@ -26682,14 +27227,14 @@ msgstr ""
#: doc/classes/JSONParseResult.xml:18
msgid ""
-"The line number where the error occurred if JSON source was not successfully "
-"parsed."
+"The line number where the error occurred if the JSON source was not "
+"successfully parsed."
msgstr ""
#: doc/classes/JSONParseResult.xml:21
msgid ""
-"The error message if JSON source was not successfully parsed. See the [enum "
-"Error] constants."
+"The error message if the JSON source was not successfully parsed. See the "
+"[enum Error] constants."
msgstr ""
#: doc/classes/JSONParseResult.xml:24
@@ -26697,11 +27242,11 @@ msgid ""
"A [Variant] containing the parsed JSON. Use [method @GDScript.typeof] or the "
"[code]is[/code] keyword to check if it is what you expect. For example, if "
"the JSON source starts with curly braces ([code]{}[/code]), a [Dictionary] "
-"will be returned. If the JSON source starts with braces ([code][][/code]), "
+"will be returned. If the JSON source starts with brackets ([code][][/code]), "
"an [Array] will be returned.\n"
"[b]Note:[/b] The JSON specification does not define integer or float types, "
-"but only a number type. Therefore, parsing a JSON text will convert all "
-"numerical values to float types.\n"
+"but only a [i]number[/i] type. Therefore, parsing a JSON text will convert "
+"all numerical values to [float] types.\n"
"[b]Note:[/b] JSON objects do not preserve key order like Godot dictionaries, "
"thus, you should not rely on keys being in a certain order if a dictionary "
"is constructed from JSON. In contrast, JSON arrays retain the order of their "
@@ -26711,7 +27256,7 @@ msgid ""
"if typeof(p.result) == TYPE_ARRAY:\n"
" print(p.result[0]) # Prints \"hello\"\n"
"else:\n"
-" print(\"unexpected results\")\n"
+" push_error(\"Unexpected results.\")\n"
"[/codeblock]"
msgstr ""
@@ -26827,7 +27372,7 @@ msgid ""
"simulation will run at an incorrect speed.\n"
"[code]linear_velocity[/code] is the velocity vector in pixels per second. "
"Unlike in [method move_and_collide], you should [i]not[/i] multiply it by "
-"[code]delta[/code] — the physics engine handles applying the velocity. \n"
+"[code]delta[/code] — the physics engine handles applying the velocity.\n"
"[code]up_direction[/code] is the up direction, used to determine what is a "
"wall and what is a floor or a ceiling. If set to the default value of "
"[code]Vector2(0, 0)[/code], everything is considered a wall. This is useful "
@@ -26943,7 +27488,7 @@ msgid ""
"[code]linear_velocity[/code] is the velocity vector (typically meters per "
"second). Unlike in [method move_and_collide], you should [i]not[/i] multiply "
"it by [code]delta[/code] — the physics engine handles applying the "
-"velocity. \n"
+"velocity.\n"
"[code]up_direction[/code] is the up direction, used to determine what is a "
"wall and what is a floor or a ceiling. If set to the default value of "
"[code]Vector3(0, 0, 0)[/code], everything is considered a wall.\n"
@@ -27672,17 +28217,6 @@ msgid ""
"[b]Note:[/b] Hiding a light does [i]not[/i] affect baking."
msgstr ""
-#: doc/classes/Light3D.xml:152
-msgid "Only indirect lighting will be baked (default)."
-msgstr ""
-
-#: doc/classes/Light3D.xml:155
-msgid ""
-"Both direct and indirect light will be baked.\n"
-"[b]Note:[/b] You should hide the light if you don't want it to appear twice "
-"(dynamic and baked)."
-msgstr ""
-
#: doc/classes/LightOccluder2D.xml:4
msgid "Occludes light cast by a Light2D, casting shadows."
msgstr ""
@@ -27961,136 +28495,142 @@ msgstr ""
msgid "Text alignment as defined in the [enum Align] enum."
msgstr ""
-#: doc/classes/LineEdit.xml:120 doc/classes/TextEdit.xml:406
+#: doc/classes/LineEdit.xml:120 doc/classes/TextEdit.xml:358
msgid "If [code]true[/code], the caret (visual cursor) blinks."
msgstr ""
-#: doc/classes/LineEdit.xml:123 doc/classes/TextEdit.xml:409
+#: doc/classes/LineEdit.xml:123 doc/classes/TextEdit.xml:361
msgid "Duration (in seconds) of a caret's blinking cycle."
msgstr ""
-#: doc/classes/LineEdit.xml:126
+#: doc/classes/LineEdit.xml:128
msgid ""
"The cursor's position inside the [LineEdit]. When set, the text may scroll "
"to accommodate it."
msgstr ""
-#: doc/classes/LineEdit.xml:129
+#: doc/classes/LineEdit.xml:131
msgid ""
"If [code]true[/code], the [LineEdit] will show a clear button if [code]text[/"
"code] is not empty, which can be used to clear the text quickly."
msgstr ""
-#: doc/classes/LineEdit.xml:132
+#: doc/classes/LineEdit.xml:134
msgid "If [code]true[/code], the context menu will appear when right-clicked."
msgstr ""
-#: doc/classes/LineEdit.xml:135
+#: doc/classes/LineEdit.xml:137
msgid ""
"If [code]false[/code], existing text cannot be modified and new text cannot "
"be added."
msgstr ""
-#: doc/classes/LineEdit.xml:138
+#: doc/classes/LineEdit.xml:140
msgid ""
"If [code]true[/code], the [LineEdit] width will increase to stay longer than "
"the [member text]. It will [b]not[/b] compress if the [member text] is "
"shortened."
msgstr ""
-#: doc/classes/LineEdit.xml:142
+#: doc/classes/LineEdit.xml:144
msgid ""
"Maximum amount of characters that can be entered inside the [LineEdit]. If "
"[code]0[/code], there is no limit."
msgstr ""
-#: doc/classes/LineEdit.xml:146
+#: doc/classes/LineEdit.xml:148
msgid ""
"Opacity of the [member placeholder_text]. From [code]0[/code] to [code]1[/"
"code]."
msgstr ""
-#: doc/classes/LineEdit.xml:149
+#: doc/classes/LineEdit.xml:151
msgid ""
"Text shown when the [LineEdit] is empty. It is [b]not[/b] the [LineEdit]'s "
"default value (see [member text])."
msgstr ""
-#: doc/classes/LineEdit.xml:152
+#: doc/classes/LineEdit.xml:154
msgid ""
"Sets the icon that will appear in the right end of the [LineEdit] if there's "
"no [member text], or always, if [member clear_button_enabled] is set to "
"[code]false[/code]."
msgstr ""
-#: doc/classes/LineEdit.xml:155
+#: doc/classes/LineEdit.xml:157
msgid ""
"If [code]true[/code], every character is replaced with the secret character "
"(see [member secret_character])."
msgstr ""
-#: doc/classes/LineEdit.xml:158
+#: doc/classes/LineEdit.xml:160
msgid ""
"The character to use to mask secret input (defaults to \"*\"). Only a single "
"character can be used as the secret character."
msgstr ""
-#: doc/classes/LineEdit.xml:161
+#: doc/classes/LineEdit.xml:163
msgid ""
"If [code]false[/code], it's impossible to select the text using mouse nor "
"keyboard."
msgstr ""
-#: doc/classes/LineEdit.xml:164
+#: doc/classes/LineEdit.xml:166
msgid "If [code]false[/code], using shortcuts will be disabled."
msgstr ""
-#: doc/classes/LineEdit.xml:167
+#: doc/classes/LineEdit.xml:169
msgid ""
"String value of the [LineEdit].\n"
"[b]Note:[/b] Changing text using this property won't emit the [signal "
"text_changed] signal."
msgstr ""
-#: doc/classes/LineEdit.xml:174
+#: doc/classes/LineEdit.xml:173 doc/classes/TextEdit.xml:434
+msgid ""
+"If [code]true[/code], the native virtual keyboard is shown when focused on "
+"platforms that support it."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:179
msgid ""
"Emitted when trying to append text that would overflow the [member "
"max_length]."
msgstr ""
-#: doc/classes/LineEdit.xml:181 doc/classes/TextEdit.xml:525
+#: doc/classes/LineEdit.xml:186 doc/classes/TextEdit.xml:490
msgid "Emitted when the text changes."
msgstr ""
-#: doc/classes/LineEdit.xml:188
+#: doc/classes/LineEdit.xml:193
msgid "Emitted when the user presses [constant KEY_ENTER] on the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:194
+#: doc/classes/LineEdit.xml:199
msgid "Aligns the text on the left-hand side of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:197
+#: doc/classes/LineEdit.xml:202
msgid "Centers the text in the middle of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:200
+#: doc/classes/LineEdit.xml:205
msgid "Aligns the text on the right-hand side of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:203
+#: doc/classes/LineEdit.xml:208
msgid "Stretches whitespaces to fit the [LineEdit]'s width."
msgstr ""
-#: doc/classes/LineEdit.xml:206 doc/classes/TextEdit.xml:540
+#: doc/classes/LineEdit.xml:211 doc/classes/TextEdit.xml:505
msgid "Cuts (copies and clears) the selected text."
msgstr ""
-#: doc/classes/LineEdit.xml:209 doc/classes/TextEdit.xml:543
+#: doc/classes/LineEdit.xml:214 doc/classes/TextEdit.xml:508
msgid "Copies the selected text."
msgstr ""
-#: doc/classes/LineEdit.xml:212
+#: doc/classes/LineEdit.xml:217
msgid ""
"Pastes the clipboard text over the selected text (or at the cursor's "
"position).\n"
@@ -28098,80 +28638,80 @@ msgid ""
"clipboard via [method String.strip_escapes]."
msgstr ""
-#: doc/classes/LineEdit.xml:216
+#: doc/classes/LineEdit.xml:221
msgid "Erases the whole [LineEdit] text."
msgstr ""
-#: doc/classes/LineEdit.xml:219
+#: doc/classes/LineEdit.xml:224
msgid "Selects the whole [LineEdit] text."
msgstr ""
-#: doc/classes/LineEdit.xml:222 doc/classes/TextEdit.xml:555
+#: doc/classes/LineEdit.xml:227 doc/classes/TextEdit.xml:520
msgid "Undoes the previous action."
msgstr ""
-#: doc/classes/LineEdit.xml:225
+#: doc/classes/LineEdit.xml:230
msgid "Reverse the last undo action."
msgstr ""
-#: doc/classes/LineEdit.xml:228 doc/classes/TextEdit.xml:561
+#: doc/classes/LineEdit.xml:233 doc/classes/TextEdit.xml:526
msgid "Represents the size of the [enum MenuItems] enum."
msgstr ""
-#: doc/classes/LineEdit.xml:233
+#: doc/classes/LineEdit.xml:238
msgid "Texture for the clear button. See [member clear_button_enabled]."
msgstr ""
-#: doc/classes/LineEdit.xml:236
+#: doc/classes/LineEdit.xml:241
msgid "Color used as default tint for the clear button."
msgstr ""
-#: doc/classes/LineEdit.xml:239
+#: doc/classes/LineEdit.xml:244
msgid "Color used for the clear button when it's pressed."
msgstr ""
-#: doc/classes/LineEdit.xml:242
+#: doc/classes/LineEdit.xml:247
msgid "Color of the [LineEdit]'s visual cursor (caret)."
msgstr ""
-#: doc/classes/LineEdit.xml:245
+#: doc/classes/LineEdit.xml:250
msgid "Background used when [LineEdit] has GUI focus."
msgstr ""
-#: doc/classes/LineEdit.xml:248
+#: doc/classes/LineEdit.xml:253
msgid "Font used for the text."
msgstr ""
-#: doc/classes/LineEdit.xml:251
+#: doc/classes/LineEdit.xml:256
msgid "Default font color."
msgstr ""
-#: doc/classes/LineEdit.xml:254
+#: doc/classes/LineEdit.xml:259
msgid "Font color for selected text (inside the selection rectangle)."
msgstr ""
-#: doc/classes/LineEdit.xml:257
+#: doc/classes/LineEdit.xml:262
msgid "Font color when editing is disabled."
msgstr ""
-#: doc/classes/LineEdit.xml:260
+#: doc/classes/LineEdit.xml:265
msgid ""
"Minimum horizontal space for the text (not counting the clear button and "
"content margins). This value is measured in count of space characters (i.e. "
"this amount of space characters can be displayed without scrolling)."
msgstr ""
-#: doc/classes/LineEdit.xml:263
+#: doc/classes/LineEdit.xml:268
msgid "Default background for the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:266
+#: doc/classes/LineEdit.xml:271
msgid ""
"Background used when [LineEdit] is in read-only mode ([member editable] is "
"set to [code]false[/code])."
msgstr ""
-#: doc/classes/LineEdit.xml:269
+#: doc/classes/LineEdit.xml:274
msgid "Color of the selection rectangle."
msgstr ""
@@ -28389,14 +28929,14 @@ msgstr ""
msgid "Emitted when a user responds to a permission request."
msgstr ""
-#: doc/classes/MainLoop.xml:127 doc/classes/Node.xml:948
+#: doc/classes/MainLoop.xml:127 doc/classes/Node.xml:946
msgid ""
"Notification received from the OS when the application is exceeding its "
"allocated memory.\n"
"Specific to the iOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:131 doc/classes/Node.xml:952
+#: doc/classes/MainLoop.xml:131 doc/classes/Node.xml:950
msgid ""
"Notification received when translations may have changed. Can be triggered "
"by the user changing the locale. Can be used to respond to language changes, "
@@ -28404,39 +28944,55 @@ msgid ""
"the built-in translation support, like [method Object.tr]."
msgstr ""
-#: doc/classes/MainLoop.xml:134 doc/classes/Node.xml:955
+#: doc/classes/MainLoop.xml:134 doc/classes/Node.xml:953
msgid ""
"Notification received from the OS when a request for \"About\" information "
"is sent.\n"
"Specific to the macOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:138 doc/classes/Node.xml:959
+#: doc/classes/MainLoop.xml:138 doc/classes/Node.xml:957
msgid ""
"Notification received from Godot's crash handler when the engine is about to "
"crash.\n"
"Implemented on desktop platforms if the crash handler is enabled."
msgstr ""
-#: doc/classes/MainLoop.xml:142 doc/classes/Node.xml:963
+#: doc/classes/MainLoop.xml:142 doc/classes/Node.xml:961
msgid ""
"Notification received from the OS when an update of the Input Method Engine "
"occurs (e.g. change of IME cursor position or composition string).\n"
"Specific to the macOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:146 doc/classes/Node.xml:967
+#: doc/classes/MainLoop.xml:146 doc/classes/Node.xml:965
msgid ""
-"Notification received from the OS when the app is resumed.\n"
+"Notification received from the OS when the application is resumed.\n"
"Specific to the Android platform."
msgstr ""
-#: doc/classes/MainLoop.xml:150 doc/classes/Node.xml:971
+#: doc/classes/MainLoop.xml:150 doc/classes/Node.xml:969
msgid ""
-"Notification received from the OS when the app is paused.\n"
+"Notification received from the OS when the application is paused.\n"
"Specific to the Android platform."
msgstr ""
+#: doc/classes/MainLoop.xml:154 doc/classes/Node.xml:973
+msgid ""
+"Notification received from the OS when the application is focused, i.e. when "
+"changing the focus from the OS desktop or a thirdparty application to any "
+"open window of the Godot instance.\n"
+"Implemented on desktop platforms."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:158 doc/classes/Node.xml:977
+msgid ""
+"Notification received from the OS when the application is defocused, i.e. "
+"when changing the focus from any open window of the Godot instance to the OS "
+"desktop or a thirdparty application.\n"
+"Implemented on desktop platforms."
+msgstr ""
+
#: doc/classes/MarginContainer.xml:4
msgid "Simple margin container."
msgstr ""
@@ -28744,11 +29300,11 @@ msgstr ""
msgid "Render array as triangle strips."
msgstr ""
-#: doc/classes/Mesh.xml:126 doc/classes/RenderingServer.xml:3189
+#: doc/classes/Mesh.xml:126 doc/classes/RenderingServer.xml:3185
msgid "Blend shapes are normalized."
msgstr ""
-#: doc/classes/Mesh.xml:129 doc/classes/RenderingServer.xml:3192
+#: doc/classes/Mesh.xml:129 doc/classes/RenderingServer.xml:3188
msgid "Blend shapes are relative to base weight."
msgstr ""
@@ -28790,37 +29346,37 @@ msgstr ""
msgid "Mesh array uses indices."
msgstr ""
-#: doc/classes/Mesh.xml:159 doc/classes/RenderingServer.xml:3145
+#: doc/classes/Mesh.xml:159 doc/classes/RenderingServer.xml:3141
msgid "Flag used to mark a compressed (half float) normal array."
msgstr ""
-#: doc/classes/Mesh.xml:162 doc/classes/RenderingServer.xml:3148
+#: doc/classes/Mesh.xml:162 doc/classes/RenderingServer.xml:3144
msgid "Flag used to mark a compressed (half float) tangent array."
msgstr ""
-#: doc/classes/Mesh.xml:165 doc/classes/RenderingServer.xml:3151
+#: doc/classes/Mesh.xml:165 doc/classes/RenderingServer.xml:3147
msgid "Flag used to mark a compressed (half float) color array."
msgstr ""
-#: doc/classes/Mesh.xml:168 doc/classes/RenderingServer.xml:3154
+#: doc/classes/Mesh.xml:168 doc/classes/RenderingServer.xml:3150
msgid "Flag used to mark a compressed (half float) UV coordinates array."
msgstr ""
-#: doc/classes/Mesh.xml:171 doc/classes/RenderingServer.xml:3157
+#: doc/classes/Mesh.xml:171 doc/classes/RenderingServer.xml:3153
msgid ""
"Flag used to mark a compressed (half float) UV coordinates array for the "
"second UV coordinates."
msgstr ""
-#: doc/classes/Mesh.xml:174 doc/classes/RenderingServer.xml:3160
+#: doc/classes/Mesh.xml:174 doc/classes/RenderingServer.xml:3156
msgid "Flag used to mark a compressed index array."
msgstr ""
-#: doc/classes/Mesh.xml:177 doc/classes/RenderingServer.xml:3166
+#: doc/classes/Mesh.xml:177 doc/classes/RenderingServer.xml:3162
msgid "Flag used to mark that the array contains 2D vertices."
msgstr ""
-#: doc/classes/Mesh.xml:180 doc/classes/RenderingServer.xml:3163
+#: doc/classes/Mesh.xml:180 doc/classes/RenderingServer.xml:3159
msgid ""
"Used to set flags [constant ARRAY_COMPRESS_NORMAL], [constant "
"ARRAY_COMPRESS_TANGENT], [constant ARRAY_COMPRESS_COLOR], [constant "
@@ -30581,7 +31137,10 @@ msgstr ""
msgid ""
"The number of channels to be used by ENet. Channels are used to separate "
"different kinds of data. In reliable or ordered mode, for example, the "
-"packet delivery order is ensured on a per channel basis."
+"packet delivery order is ensured on a per-channel basis. This is done to "
+"combat latency and reduces ordering restrictions on packets. The delivery "
+"status of a packet in one channel won't stall the delivery of other packets "
+"in another channel."
msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:134
@@ -30608,11 +31167,12 @@ msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:144
msgid ""
"Set the default channel to be used to transfer data. By default, this value "
-"is [code]-1[/code] which means that ENet will only use 2 channels, one for "
-"reliable and one for unreliable packets. Channel [code]0[/code] is reserved, "
-"and cannot be used. Setting this member to any value between [code]0[/code] "
-"and [member channel_count] (excluded) will force ENet to use that channel "
-"for sending data."
+"is [code]-1[/code] which means that ENet will only use 2 channels: one for "
+"reliable packets, and one for unreliable packets. The channel [code]0[/code] "
+"is reserved and cannot be used. Setting this member to any value between "
+"[code]0[/code] and [member channel_count] (excluded) will force ENet to use "
+"that channel for sending data. See [member channel_count] for more "
+"information about ENet channels."
msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:148
@@ -31804,57 +32364,63 @@ msgstr ""
#: doc/classes/Node.xml:930
msgid ""
-"Notification received from the OS when the game window is focused.\n"
-"Implemented on all platforms."
+"Notification received from the OS when the node's parent [Window] is "
+"focused. This may be a change of focus between two windows of the same "
+"engine instance, or from the OS desktop or a third-party application to a "
+"window of the game (in which case [constant "
+"NOTIFICATION_APPLICATION_FOCUS_IN] is also emitted)."
msgstr ""
-#: doc/classes/Node.xml:934
+#: doc/classes/Node.xml:933
msgid ""
-"Notification received from the OS when the game window is unfocused.\n"
-"Implemented on all platforms."
+"Notification received from the OS when the node's parent [Window] is "
+"defocused. This may be a change of focus between two windows of the same "
+"engine instance, or from a window of the game to the OS desktop or a third-"
+"party application (in which case [constant "
+"NOTIFICATION_APPLICATION_FOCUS_OUT] is also emitted)."
msgstr ""
-#: doc/classes/Node.xml:938
+#: doc/classes/Node.xml:936
msgid ""
"Notification received from the OS when a close request is sent (e.g. closing "
"the window with a \"Close\" button or [kbd]Alt + F4[/kbd]).\n"
"Implemented on desktop platforms."
msgstr ""
-#: doc/classes/Node.xml:942
+#: doc/classes/Node.xml:940
msgid ""
"Notification received from the OS when a go back request is sent (e.g. "
"pressing the \"Back\" button on Android).\n"
"Specific to the Android platform."
msgstr ""
-#: doc/classes/Node.xml:975
+#: doc/classes/Node.xml:981
msgid ""
"Inherits pause mode from the node's parent. For the root node, it is "
"equivalent to [constant PAUSE_MODE_STOP]. Default."
msgstr ""
-#: doc/classes/Node.xml:978
+#: doc/classes/Node.xml:984
msgid "Stops processing when the [SceneTree] is paused."
msgstr ""
-#: doc/classes/Node.xml:981
+#: doc/classes/Node.xml:987
msgid "Continue to process regardless of the [SceneTree] pause state."
msgstr ""
-#: doc/classes/Node.xml:984
+#: doc/classes/Node.xml:990
msgid "Duplicate the node's signals."
msgstr ""
-#: doc/classes/Node.xml:987
+#: doc/classes/Node.xml:993
msgid "Duplicate the node's groups."
msgstr ""
-#: doc/classes/Node.xml:990
+#: doc/classes/Node.xml:996
msgid "Duplicate the node's scripts."
msgstr ""
-#: doc/classes/Node.xml:993
+#: doc/classes/Node.xml:999
msgid ""
"Duplicate using instancing.\n"
"An instance stays linked to the original so when the original changes, the "
@@ -32078,12 +32644,6 @@ msgid ""
"changes. [Node3D] will not propagate this by default."
msgstr ""
-#: doc/classes/Node3D.xml:104
-msgid ""
-"Returns whether the node is visible, taking into consideration that its "
-"parents visibility."
-msgstr ""
-
#: doc/classes/Node3D.xml:115
msgid ""
"Rotates itself so that the local -Z axis points towards the [code]target[/"
@@ -32253,7 +32813,10 @@ msgid "Local translation of this node."
msgstr ""
#: doc/classes/Node3D.xml:326
-msgid "If [code]true[/code], this node is drawn."
+msgid ""
+"If [code]true[/code], this node is drawn. The node is only visible if all of "
+"its antecedents are visible as well (in other words, [method "
+"is_visible_in_tree] must return [code]true[/code])."
msgstr ""
#: doc/classes/Node3D.xml:332
@@ -32510,10 +33073,20 @@ msgid ""
"the key exists, even if the value is [code]null[/code].\n"
"Objects also receive notifications. Notifications are a simple way to notify "
"the object about different events, so they can all be handled together. See "
-"[method _notification]."
+"[method _notification].\n"
+"[b]Note:[/b] Unlike references to a [Reference], references to an Object "
+"stored in a variable can become invalid without warning. Therefore, it's "
+"recommended to use [Reference] for data classes instead of [Object]."
msgstr ""
-#: doc/classes/Object.xml:30
+#: doc/classes/Object.xml:23 doc/classes/Reference.xml:12
+#: doc/classes/Resource.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/getting_started/workflow/"
+"best_practices/node_alternatives.html"
+msgstr ""
+
+#: doc/classes/Object.xml:32
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method get].\n"
@@ -32521,7 +33094,7 @@ msgid ""
"code] does not exist."
msgstr ""
-#: doc/classes/Object.xml:38
+#: doc/classes/Object.xml:40
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method get_property_list].\n"
@@ -32533,11 +33106,11 @@ msgid ""
"PropertyUsageFlags])."
msgstr ""
-#: doc/classes/Object.xml:47
+#: doc/classes/Object.xml:49
msgid "Called when the object is initialized."
msgstr ""
-#: doc/classes/Object.xml:56
+#: doc/classes/Object.xml:58
msgid ""
"Called whenever the object receives a notification, which is identified in "
"[code]what[/code] by a constant. The base [Object] has two constants "
@@ -32546,7 +33119,7 @@ msgid ""
"notifications which are also received by this method."
msgstr ""
-#: doc/classes/Object.xml:67
+#: doc/classes/Object.xml:69
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method set].\n"
@@ -32554,7 +33127,7 @@ msgid ""
"exists."
msgstr ""
-#: doc/classes/Object.xml:75
+#: doc/classes/Object.xml:77
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method to_string], and thus the object's representation where it is "
@@ -32563,34 +33136,42 @@ msgid ""
"[code]\"[ClassName:RID]\"[/code]."
msgstr ""
-#: doc/classes/Object.xml:87
+#: doc/classes/Object.xml:89
msgid ""
"Adds a user-defined [code]signal[/code]. Arguments are optional, but can be "
"added as an [Array] of dictionaries, each containing [code]name: String[/"
"code] and [code]type: int[/code] (see [enum Variant.Type]) entries."
msgstr ""
-#: doc/classes/Object.xml:96
+#: doc/classes/Object.xml:98
msgid ""
"Calls the [code]method[/code] on the object and returns the result. This "
"method supports a variable number of arguments, so parameters are passed as "
"a comma separated list. Example:\n"
"[codeblock]\n"
"call(\"set\", \"position\", Vector2(42.0, 0.0))\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] In C#, the method name must be specified as snake_case if it is "
+"defined by a built-in Godot node. This doesn't apply to user-defined methods "
+"where you should use the same convention as in the C# source (typically "
+"PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:108
+#: doc/classes/Object.xml:111
msgid ""
"Calls the [code]method[/code] on the object during idle time. This method "
"supports a variable number of arguments, so parameters are passed as a comma "
"separated list. Example:\n"
"[codeblock]\n"
"call_deferred(\"set\", \"position\", Vector2(42.0, 0.0))\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] In C#, the method name must be specified as snake_case if it is "
+"defined by a built-in Godot node. This doesn't apply to user-defined methods "
+"where you should use the same convention as in the C# source (typically "
+"PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:122
+#: doc/classes/Object.xml:126
msgid ""
"Calls the [code]method[/code] on the object and returns the result. "
"Contrarily to [method call], this method does not support a variable number "
@@ -32600,13 +33181,13 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:132
+#: doc/classes/Object.xml:136
msgid ""
"Returns [code]true[/code] if the object can translate strings. See [method "
"set_message_translation] and [method tr]."
msgstr ""
-#: doc/classes/Object.xml:147
+#: doc/classes/Object.xml:151
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32642,7 +33223,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:174
+#: doc/classes/Object.xml:178
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32653,7 +33234,7 @@ msgid ""
"exists."
msgstr ""
-#: doc/classes/Object.xml:185
+#: doc/classes/Object.xml:189
msgid ""
"Emits the given [code]signal[/code]. The signal must exist, so it should be "
"a built-in signal of this class or one of its parent classes, or a user-"
@@ -32665,24 +33246,28 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:196
+#: doc/classes/Object.xml:200
msgid ""
"Deletes the object from memory. Any pre-existing reference to the freed "
"object will become invalid, e.g. [code]is_instance_valid(object)[/code] will "
"return [code]false[/code]."
msgstr ""
-#: doc/classes/Object.xml:205
+#: doc/classes/Object.xml:209
msgid ""
"Returns the [Variant] value of the given [code]property[/code]. If the "
-"[code]property[/code] doesn't exist, this will return [code]null[/code]."
+"[code]property[/code] doesn't exist, this will return [code]null[/code].\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:212
+#: doc/classes/Object.xml:217
msgid "Returns the object's class as a [String]."
msgstr ""
-#: doc/classes/Object.xml:219
+#: doc/classes/Object.xml:224
msgid ""
"Returns an [Array] of dictionaries with information about signals that are "
"connected to the object.\n"
@@ -32693,7 +33278,7 @@ msgid ""
"connected."
msgstr ""
-#: doc/classes/Object.xml:232
+#: doc/classes/Object.xml:237
msgid ""
"Gets the object's property indexed by the given [NodePath]. The node path "
"should be relative to the current object and can use the colon character "
@@ -32701,26 +33286,26 @@ msgid ""
"\"[/code] or [code]\"material:next_pass:blend_mode\"[/code]."
msgstr ""
-#: doc/classes/Object.xml:239
+#: doc/classes/Object.xml:244
msgid ""
"Returns the object's unique instance ID.\n"
"This ID can be saved in [EncodedObjectAsID], and can be used to retrieve the "
"object instance with [method @GDScript.instance_from_id]."
msgstr ""
-#: doc/classes/Object.xml:249
+#: doc/classes/Object.xml:254
msgid "Returns the object's metadata entry for the given [code]name[/code]."
msgstr ""
-#: doc/classes/Object.xml:256
+#: doc/classes/Object.xml:261
msgid "Returns the object's metadata as a [PackedStringArray]."
msgstr ""
-#: doc/classes/Object.xml:263
+#: doc/classes/Object.xml:268
msgid "Returns the object's methods and their signatures as an [Array]."
msgstr ""
-#: doc/classes/Object.xml:270
+#: doc/classes/Object.xml:275
msgid ""
"Returns the object's property list as an [Array] of dictionaries.\n"
"Each property's [Dictionary] contain at least [code]name: String[/code] and "
@@ -32730,54 +33315,54 @@ msgid ""
"PropertyUsageFlags])."
msgstr ""
-#: doc/classes/Object.xml:278
+#: doc/classes/Object.xml:283
msgid ""
"Returns the object's [Script] instance, or [code]null[/code] if none is "
"assigned."
msgstr ""
-#: doc/classes/Object.xml:287
+#: doc/classes/Object.xml:292
msgid "Returns an [Array] of connections for the given [code]signal[/code]."
msgstr ""
-#: doc/classes/Object.xml:294
+#: doc/classes/Object.xml:299
msgid "Returns the list of signals as an [Array] of dictionaries."
msgstr ""
-#: doc/classes/Object.xml:303
+#: doc/classes/Object.xml:308
msgid ""
"Returns [code]true[/code] if a metadata entry is found with the given "
"[code]name[/code]."
msgstr ""
-#: doc/classes/Object.xml:312
+#: doc/classes/Object.xml:317
msgid ""
"Returns [code]true[/code] if the object contains the given [code]method[/"
"code]."
msgstr ""
-#: doc/classes/Object.xml:321
+#: doc/classes/Object.xml:326
msgid "Returns [code]true[/code] if the given [code]signal[/code] exists."
msgstr ""
-#: doc/classes/Object.xml:330
+#: doc/classes/Object.xml:335
msgid ""
"Returns [code]true[/code] if the given user-defined [code]signal[/code] "
"exists. Only signals added using [method add_user_signal] are taken into "
"account."
msgstr ""
-#: doc/classes/Object.xml:337
+#: doc/classes/Object.xml:342
msgid "Returns [code]true[/code] if signal emission blocking is enabled."
msgstr ""
-#: doc/classes/Object.xml:346
+#: doc/classes/Object.xml:351
msgid ""
"Returns [code]true[/code] if the object inherits from the given [code]class[/"
"code]."
msgstr ""
-#: doc/classes/Object.xml:357
+#: doc/classes/Object.xml:362
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32785,13 +33370,13 @@ msgid ""
"code], [code]target[/code], and [code]method[/code]."
msgstr ""
-#: doc/classes/Object.xml:365
+#: doc/classes/Object.xml:370
msgid ""
"Returns [code]true[/code] if the [method Node.queue_free] method was called "
"for the object."
msgstr ""
-#: doc/classes/Object.xml:376
+#: doc/classes/Object.xml:381
msgid ""
"Send a given notification to the object, which will also trigger a call to "
"the [method _notification] method of all classes that the object inherits "
@@ -32803,34 +33388,42 @@ msgid ""
"and then down to its successive inheriting classes."
msgstr ""
-#: doc/classes/Object.xml:384
+#: doc/classes/Object.xml:389
msgid ""
"Notify the editor that the property list has changed, so that editor plugins "
"can take the new values into account. Does nothing on export builds."
msgstr ""
-#: doc/classes/Object.xml:393
+#: doc/classes/Object.xml:398
msgid "Removes a given entry from the object's metadata."
msgstr ""
-#: doc/classes/Object.xml:404
+#: doc/classes/Object.xml:409
msgid ""
"Assigns a new value to the given property. If the [code]property[/code] does "
-"not exist, nothing will happen."
+"not exist, nothing will happen.\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:413
+#: doc/classes/Object.xml:419
msgid "If set to [code]true[/code], signal emission is blocked."
msgstr ""
-#: doc/classes/Object.xml:424
+#: doc/classes/Object.xml:430
msgid ""
"Assigns a new value to the given property, after the current frame's physics "
"step. This is equivalent to calling [method set] via [method call_deferred], "
-"i.e. [code]call_deferred(\"set\", property, value)[/code]."
+"i.e. [code]call_deferred(\"set\", property, value)[/code].\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:435
+#: doc/classes/Object.xml:442
msgid ""
"Assigns a new value to the property identified by the [NodePath]. The node "
"path should be relative to the current object and can use the colon "
@@ -32842,19 +33435,19 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:449
+#: doc/classes/Object.xml:456
msgid ""
"Defines whether the object can translate strings (with calls to [method "
"tr]). Enabled by default."
msgstr ""
-#: doc/classes/Object.xml:460
+#: doc/classes/Object.xml:467
msgid ""
"Adds or changes a given entry in the object's metadata. Metadata are "
"serialized, and can take any [Variant] value."
msgstr ""
-#: doc/classes/Object.xml:469
+#: doc/classes/Object.xml:476
msgid ""
"Assigns a script to the object. Each object can have a single script "
"assigned to it, which are used to extend its functionality.\n"
@@ -32863,7 +33456,7 @@ msgid ""
"_init] method will be called."
msgstr ""
-#: doc/classes/Object.xml:477
+#: doc/classes/Object.xml:484
msgid ""
"Returns a [String] representing the object. If not overridden, defaults to "
"[code]\"[ClassName:RID]\"[/code].\n"
@@ -32871,7 +33464,7 @@ msgid ""
"representation."
msgstr ""
-#: doc/classes/Object.xml:487
+#: doc/classes/Object.xml:494
msgid ""
"Translates a message using translation catalogs configured in the Project "
"Settings.\n"
@@ -32880,35 +33473,35 @@ msgid ""
"set_message_translation]."
msgstr ""
-#: doc/classes/Object.xml:495
+#: doc/classes/Object.xml:502
msgid "Emitted whenever the object's script is changed."
msgstr ""
-#: doc/classes/Object.xml:501
+#: doc/classes/Object.xml:508
msgid "Called right when the object is initialized. Not available in script."
msgstr ""
-#: doc/classes/Object.xml:504
+#: doc/classes/Object.xml:511
msgid "Called before the object is about to be deleted."
msgstr ""
-#: doc/classes/Object.xml:507
+#: doc/classes/Object.xml:514
msgid ""
"Connects a signal in deferred mode. This way, signal emissions are stored in "
"a queue, then set on idle time."
msgstr ""
-#: doc/classes/Object.xml:510
+#: doc/classes/Object.xml:517
msgid "Persisting connections are saved when the object is serialized to file."
msgstr ""
-#: doc/classes/Object.xml:513
+#: doc/classes/Object.xml:520
msgid "One-shot connections disconnect themselves after emission."
msgstr ""
-#: doc/classes/Object.xml:516
+#: doc/classes/Object.xml:523
msgid ""
-"Connect a signal as reference counted. This means that a given signal can be "
+"Connect a signal as reference-counted. This means that a given signal can be "
"connected several times to the same target, and will only be fully "
"disconnected once no references are left."
msgstr ""
@@ -33373,10 +33966,29 @@ msgid "Returns the keycode of the given string (e.g. \"Escape\")."
msgstr ""
#: doc/classes/OS.xml:115
-msgid "Returns the command line arguments passed to the engine."
+msgid ""
+"Returns the command-line arguments passed to the engine.\n"
+"Command-line arguments can be written in any form, including both [code]--"
+"key value[/code] and [code]--key=value[/code] forms so they can be properly "
+"parsed, as long as custom command-line arguments do not conflict with engine "
+"arguments.\n"
+"You can also incorporate environment variables using the [method "
+"get_environment] method.\n"
+"You can set [code]editor/main_run_args[/code] in the Project Settings to "
+"define command-line arguments to be passed by the editor when running the "
+"project.\n"
+"Here's a minimal example on how to parse command-line arguments into a "
+"dictionary using the [code]--key=value[/code] form for arguments:\n"
+"[codeblock]\n"
+"var arguments = {}\n"
+"for argument in OS.get_cmdline_args():\n"
+" if argument.find(\"=\") > -1:\n"
+" var key_value = argument.split(\"=\")\n"
+" arguments[key_value[0].lstrip(\"--\")] = key_value[1]\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/OS.xml:122
+#: doc/classes/OS.xml:133
msgid ""
"Returns an array of MIDI device names.\n"
"The returned array will be empty if the system MIDI driver has not "
@@ -33384,14 +33996,14 @@ msgid ""
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:133
+#: doc/classes/OS.xml:144
msgid ""
"Returns current date as a dictionary of keys: [code]year[/code], "
"[code]month[/code], [code]day[/code], [code]weekday[/code], [code]dst[/code] "
"(Daylight Savings Time)."
msgstr ""
-#: doc/classes/OS.xml:142
+#: doc/classes/OS.xml:153
msgid ""
"Returns current datetime as a dictionary of keys: [code]year[/code], "
"[code]month[/code], [code]day[/code], [code]weekday[/code], [code]dst[/code] "
@@ -33399,7 +34011,7 @@ msgid ""
"[code]second[/code]."
msgstr ""
-#: doc/classes/OS.xml:151
+#: doc/classes/OS.xml:162
msgid ""
"Gets a dictionary of time values corresponding to the given UNIX epoch time "
"(in seconds).\n"
@@ -33408,22 +34020,22 @@ msgid ""
"the epoch."
msgstr ""
-#: doc/classes/OS.xml:161
+#: doc/classes/OS.xml:172
msgid "Returns an environment variable."
msgstr ""
-#: doc/classes/OS.xml:168
+#: doc/classes/OS.xml:179
msgid "Returns the path to the current engine executable."
msgstr ""
-#: doc/classes/OS.xml:175
+#: doc/classes/OS.xml:186
msgid ""
"With this function you can get the list of dangerous permissions that have "
"been granted to the Android application.\n"
"[b]Note:[/b] This method is implemented on Android."
msgstr ""
-#: doc/classes/OS.xml:185
+#: doc/classes/OS.xml:196
msgid ""
"Returns the given keycode as a string (e.g. Return values: [code]\"Escape\"[/"
"code], [code]\"Shift+Escape\"[/code]).\n"
@@ -33431,18 +34043,18 @@ msgid ""
"get_keycode_with_modifiers]."
msgstr ""
-#: doc/classes/OS.xml:193
+#: doc/classes/OS.xml:204
msgid "Returns the host OS locale."
msgstr ""
-#: doc/classes/OS.xml:200
+#: doc/classes/OS.xml:211
msgid ""
"Returns the model name of the current device.\n"
"[b]Note:[/b] This method is implemented on Android and iOS. Returns "
"[code]\"GenericDevice\"[/code] on unsupported platforms."
msgstr ""
-#: doc/classes/OS.xml:208
+#: doc/classes/OS.xml:219
msgid ""
"Returns the name of the host OS. Possible values are: [code]\"Android\"[/"
"code], [code]\"iOS\"[/code], [code]\"HTML5\"[/code], [code]\"OSX\"[/code], "
@@ -33450,81 +34062,81 @@ msgid ""
"[code]\"X11\"[/code]."
msgstr ""
-#: doc/classes/OS.xml:215
+#: doc/classes/OS.xml:226
msgid ""
"Returns the project's process ID.\n"
"[b]Note:[/b] This method is implemented on Android, iOS, Linux, macOS and "
"Windows."
msgstr ""
-#: doc/classes/OS.xml:223
+#: doc/classes/OS.xml:234
msgid "Returns the number of threads available on the host machine."
msgstr ""
-#: doc/classes/OS.xml:230
+#: doc/classes/OS.xml:241
msgid ""
"Returns the amount of time in milliseconds it took for the boot logo to "
"appear."
msgstr ""
-#: doc/classes/OS.xml:237
+#: doc/classes/OS.xml:248
msgid "Returns the maximum amount of static memory used (only works in debug)."
msgstr ""
-#: doc/classes/OS.xml:244
+#: doc/classes/OS.xml:255
msgid "Returns the amount of static memory being used by the program in bytes."
msgstr ""
-#: doc/classes/OS.xml:253
+#: doc/classes/OS.xml:264
msgid ""
"Returns the actual path to commonly used folders across different platforms. "
"Available locations are specified in [enum SystemDir].\n"
"[b]Note:[/b] This method is implemented on Android, Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:261
+#: doc/classes/OS.xml:272
msgid ""
"Returns the total number of available tablet drivers.\n"
"[b]Note:[/b] This method is implemented on Windows."
msgstr ""
-#: doc/classes/OS.xml:271
+#: doc/classes/OS.xml:282
msgid ""
"Returns the tablet driver name for the given index.\n"
"[b]Note:[/b] This method is implemented on Windows."
msgstr ""
-#: doc/classes/OS.xml:279
+#: doc/classes/OS.xml:290
msgid ""
"Returns the amount of time passed in milliseconds since the engine started."
msgstr ""
-#: doc/classes/OS.xml:286
+#: doc/classes/OS.xml:297
msgid ""
"Returns the amount of time passed in microseconds since the engine started."
msgstr ""
-#: doc/classes/OS.xml:295
+#: doc/classes/OS.xml:306
msgid "Returns current time as a dictionary of keys: hour, minute, second."
msgstr ""
-#: doc/classes/OS.xml:302
+#: doc/classes/OS.xml:313
msgid ""
"Returns the current time zone as a dictionary with the keys: bias and name."
msgstr ""
-#: doc/classes/OS.xml:309
+#: doc/classes/OS.xml:320
msgid ""
"Returns a string that is unique to the device.\n"
"[b]Note:[/b] Returns an empty string on HTML5 and UWP, as this method isn't "
"implemented on those platforms yet."
msgstr ""
-#: doc/classes/OS.xml:317
+#: doc/classes/OS.xml:328
msgid "Returns the current UNIX epoch timestamp."
msgstr ""
-#: doc/classes/OS.xml:326
+#: doc/classes/OS.xml:337
msgid ""
"Gets an epoch time value from a dictionary of time values.\n"
"[code]datetime[/code] must be populated with the following keys: [code]year[/"
@@ -33535,7 +34147,7 @@ msgid ""
"ignored."
msgstr ""
-#: doc/classes/OS.xml:335
+#: doc/classes/OS.xml:346
msgid ""
"Returns the absolute directory path where user data is written ([code]user://"
"[/code]).\n"
@@ -33553,11 +34165,11 @@ msgid ""
"[/code]."
msgstr ""
-#: doc/classes/OS.xml:348
+#: doc/classes/OS.xml:359
msgid "Returns [code]true[/code] if an environment variable exists."
msgstr ""
-#: doc/classes/OS.xml:357
+#: doc/classes/OS.xml:368
msgid ""
"Returns [code]true[/code] if the feature for the given feature tag is "
"supported in the currently running instance, depending on platform, build "
@@ -33568,7 +34180,7 @@ msgid ""
"[b]Note:[/b] Tag names are case-sensitive."
msgstr ""
-#: doc/classes/OS.xml:365
+#: doc/classes/OS.xml:376
msgid ""
"Returns [code]true[/code] if the Godot binary used to run the project is a "
"[i]debug[/i] export template, or when running in the editor.\n"
@@ -33579,26 +34191,26 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/OS.xml:376
+#: doc/classes/OS.xml:387
msgid ""
"Returns [code]true[/code] if the input keycode corresponds to a Unicode "
"character."
msgstr ""
-#: doc/classes/OS.xml:383
+#: doc/classes/OS.xml:394
msgid ""
"Returns [code]true[/code] if the engine was executed with [code]-v[/code] "
"(verbose stdout)."
msgstr ""
-#: doc/classes/OS.xml:390
+#: doc/classes/OS.xml:401
msgid ""
"If [code]true[/code], the [code]user://[/code] file system is persistent, so "
"that its state is the same after a player quits and starts the game again. "
"Relevant to the HTML5 platform, where this persistence may be unavailable."
msgstr ""
-#: doc/classes/OS.xml:399
+#: doc/classes/OS.xml:410
msgid ""
"Kill (terminate) the process identified by the given process ID ([code]pid[/"
"code]), e.g. the one returned by [method execute] in non-blocking mode.\n"
@@ -33608,37 +34220,37 @@ msgid ""
"Windows."
msgstr ""
-#: doc/classes/OS.xml:408
+#: doc/classes/OS.xml:419
msgid ""
"Initialises the singleton for the system MIDI driver.\n"
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:418
+#: doc/classes/OS.xml:429
msgid ""
"Shows all resources in the game. Optionally, the list can be written to a "
"file by specifying a file path in [code]tofile[/code]."
msgstr ""
-#: doc/classes/OS.xml:425
+#: doc/classes/OS.xml:436
msgid "Shows the list of loaded textures sorted by size in memory."
msgstr ""
-#: doc/classes/OS.xml:434
+#: doc/classes/OS.xml:445
msgid "Shows the number of resources loaded by the game of the given types."
msgstr ""
-#: doc/classes/OS.xml:443
+#: doc/classes/OS.xml:454
msgid "Shows all resources currently used by the game."
msgstr ""
-#: doc/classes/OS.xml:452
+#: doc/classes/OS.xml:463
msgid ""
"At the moment this function is only used by [code]AudioDriverOpenSL[/code] "
"to request permission for [code]RECORD_AUDIO[/code] on Android."
msgstr ""
-#: doc/classes/OS.xml:459
+#: doc/classes/OS.xml:470
msgid ""
"With this function you can request dangerous permissions since normal "
"permissions are automatically granted at install time in Android "
@@ -33646,15 +34258,15 @@ msgid ""
"[b]Note:[/b] This method is implemented on Android."
msgstr ""
-#: doc/classes/OS.xml:469
+#: doc/classes/OS.xml:480
msgid "Sets the name of the current thread."
msgstr ""
-#: doc/classes/OS.xml:478
+#: doc/classes/OS.xml:489
msgid "Enables backup saves if [code]enabled[/code] is [code]true[/code]."
msgstr ""
-#: doc/classes/OS.xml:487
+#: doc/classes/OS.xml:498
msgid ""
"Requests the OS to open a resource with the most appropriate program. For "
"example:\n"
@@ -33673,7 +34285,7 @@ msgid ""
"and Windows."
msgstr ""
-#: doc/classes/OS.xml:498
+#: doc/classes/OS.xml:509
msgid ""
"The exit code passed to the OS when the main loop exits. By convention, an "
"exit code of [code]0[/code] indicates success whereas a non-zero exit code "
@@ -33683,137 +34295,137 @@ msgid ""
"with an [code]exit_code[/code] argument passed."
msgstr ""
-#: doc/classes/OS.xml:502
+#: doc/classes/OS.xml:513
msgid ""
"If [code]true[/code], the engine optimizes for low processor usage by only "
"refreshing the screen if needed. Can improve battery consumption on mobile."
msgstr ""
-#: doc/classes/OS.xml:505
+#: doc/classes/OS.xml:516
msgid ""
"The amount of sleeping between frames when the low-processor usage mode is "
"enabled (in microseconds). Higher values will result in lower CPU usage."
msgstr ""
-#: doc/classes/OS.xml:508
-msgid "The current tablet drvier in use."
+#: doc/classes/OS.xml:519
+msgid "The current tablet driver in use."
msgstr ""
-#: doc/classes/OS.xml:513
+#: doc/classes/OS.xml:524
msgid ""
"The GLES2 rendering backend. It uses OpenGL ES 2.0 on mobile devices, OpenGL "
"2.1 on desktop platforms and WebGL 1.0 on the web."
msgstr ""
-#: doc/classes/OS.xml:516
+#: doc/classes/OS.xml:527
msgid "The Vulkan rendering backend."
msgstr ""
-#: doc/classes/OS.xml:519
+#: doc/classes/OS.xml:530
msgid "Sunday."
msgstr ""
-#: doc/classes/OS.xml:522
+#: doc/classes/OS.xml:533
msgid "Monday."
msgstr ""
-#: doc/classes/OS.xml:525
+#: doc/classes/OS.xml:536
msgid "Tuesday."
msgstr ""
-#: doc/classes/OS.xml:528
+#: doc/classes/OS.xml:539
msgid "Wednesday."
msgstr ""
-#: doc/classes/OS.xml:531
+#: doc/classes/OS.xml:542
msgid "Thursday."
msgstr ""
-#: doc/classes/OS.xml:534
+#: doc/classes/OS.xml:545
msgid "Friday."
msgstr ""
-#: doc/classes/OS.xml:537
+#: doc/classes/OS.xml:548
msgid "Saturday."
msgstr ""
-#: doc/classes/OS.xml:540
+#: doc/classes/OS.xml:551
msgid "January."
msgstr ""
-#: doc/classes/OS.xml:543
+#: doc/classes/OS.xml:554
msgid "February."
msgstr ""
-#: doc/classes/OS.xml:546
+#: doc/classes/OS.xml:557
msgid "March."
msgstr ""
-#: doc/classes/OS.xml:549
+#: doc/classes/OS.xml:560
msgid "April."
msgstr ""
-#: doc/classes/OS.xml:552
+#: doc/classes/OS.xml:563
msgid "May."
msgstr ""
-#: doc/classes/OS.xml:555
+#: doc/classes/OS.xml:566
msgid "June."
msgstr ""
-#: doc/classes/OS.xml:558
+#: doc/classes/OS.xml:569
msgid "July."
msgstr ""
-#: doc/classes/OS.xml:561
+#: doc/classes/OS.xml:572
msgid "August."
msgstr ""
-#: doc/classes/OS.xml:564
+#: doc/classes/OS.xml:575
msgid "September."
msgstr ""
-#: doc/classes/OS.xml:567
+#: doc/classes/OS.xml:578
msgid "October."
msgstr ""
-#: doc/classes/OS.xml:570
+#: doc/classes/OS.xml:581
msgid "November."
msgstr ""
-#: doc/classes/OS.xml:573
+#: doc/classes/OS.xml:584
msgid "December."
msgstr ""
-#: doc/classes/OS.xml:576
+#: doc/classes/OS.xml:587
msgid "Desktop directory path."
msgstr ""
-#: doc/classes/OS.xml:579
+#: doc/classes/OS.xml:590
msgid "DCIM (Digital Camera Images) directory path."
msgstr ""
-#: doc/classes/OS.xml:582
+#: doc/classes/OS.xml:593
msgid "Documents directory path."
msgstr ""
-#: doc/classes/OS.xml:585
+#: doc/classes/OS.xml:596
msgid "Downloads directory path."
msgstr ""
-#: doc/classes/OS.xml:588
+#: doc/classes/OS.xml:599
msgid "Movies directory path."
msgstr ""
-#: doc/classes/OS.xml:591
+#: doc/classes/OS.xml:602
msgid "Music directory path."
msgstr ""
-#: doc/classes/OS.xml:594
+#: doc/classes/OS.xml:605
msgid "Pictures directory path."
msgstr ""
-#: doc/classes/OS.xml:597
+#: doc/classes/OS.xml:608
msgid "Ringtones directory path."
msgstr ""
@@ -33868,7 +34480,15 @@ msgid ""
"should always be preferred."
msgstr ""
-#: doc/classes/PackedByteArray.xml:85
+#: doc/classes/PackedByteArray.xml:87 doc/classes/PackedColorArray.xml:53
+#: doc/classes/PackedFloat32Array.xml:54 doc/classes/PackedFloat64Array.xml:54
+#: doc/classes/PackedInt32Array.xml:54 doc/classes/PackedInt64Array.xml:54
+#: doc/classes/PackedStringArray.xml:53 doc/classes/PackedVector2Array.xml:53
+#: doc/classes/PackedVector3Array.xml:53
+msgid "Returns [code]true[/code] if the array contains [code]value[/code]."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:94
msgid ""
"Returns a hexadecimal representation of this array as a [String].\n"
"[codeblock]\n"
@@ -33877,39 +34497,48 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/PackedByteArray.xml:100 doc/classes/PackedColorArray.xml:55
-#: doc/classes/PackedFloat32Array.xml:56 doc/classes/PackedFloat64Array.xml:56
-#: doc/classes/PackedStringArray.xml:55 doc/classes/PackedVector2Array.xml:55
-#: doc/classes/PackedVector3Array.xml:55
+#: doc/classes/PackedByteArray.xml:109 doc/classes/PackedColorArray.xml:64
+#: doc/classes/PackedFloat32Array.xml:65 doc/classes/PackedFloat64Array.xml:65
+#: doc/classes/PackedStringArray.xml:64 doc/classes/PackedVector2Array.xml:64
+#: doc/classes/PackedVector3Array.xml:64
msgid ""
"Inserts a new element at a given position in the array. The position must be "
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PackedByteArray.xml:134 doc/classes/PackedColorArray.xml:89
-#: doc/classes/PackedFloat32Array.xml:90 doc/classes/PackedFloat64Array.xml:90
-#: doc/classes/PackedInt32Array.xml:90 doc/classes/PackedInt64Array.xml:90
-#: doc/classes/PackedStringArray.xml:89 doc/classes/PackedVector2Array.xml:89
-#: doc/classes/PackedVector3Array.xml:89
+#: doc/classes/PackedByteArray.xml:143 doc/classes/PackedColorArray.xml:98
+#: doc/classes/PackedFloat32Array.xml:99 doc/classes/PackedFloat64Array.xml:99
+#: doc/classes/PackedInt32Array.xml:99 doc/classes/PackedInt64Array.xml:99
+#: doc/classes/PackedStringArray.xml:98 doc/classes/PackedVector2Array.xml:98
+#: doc/classes/PackedVector3Array.xml:98
msgid ""
"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."
msgstr ""
-#: doc/classes/PackedByteArray.xml:145
+#: doc/classes/PackedByteArray.xml:154
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PackedByteArray.xml:152 doc/classes/PackedColorArray.xml:107
-#: doc/classes/PackedFloat32Array.xml:108
-#: doc/classes/PackedFloat64Array.xml:108 doc/classes/PackedStringArray.xml:107
-#: doc/classes/PackedVector2Array.xml:107
-#: doc/classes/PackedVector3Array.xml:107
+#: doc/classes/PackedByteArray.xml:161 doc/classes/PackedColorArray.xml:116
+#: doc/classes/PackedFloat32Array.xml:117
+#: doc/classes/PackedFloat64Array.xml:117 doc/classes/PackedStringArray.xml:116
+#: doc/classes/PackedVector2Array.xml:116
+#: doc/classes/PackedVector3Array.xml:116
msgid "Returns the size of the array."
msgstr ""
-#: doc/classes/PackedByteArray.xml:163
+#: doc/classes/PackedByteArray.xml:168 doc/classes/PackedColorArray.xml:123
+#: doc/classes/PackedFloat32Array.xml:124
+#: doc/classes/PackedFloat64Array.xml:124 doc/classes/PackedInt32Array.xml:124
+#: doc/classes/PackedInt64Array.xml:124 doc/classes/PackedStringArray.xml:123
+#: doc/classes/PackedVector2Array.xml:123
+#: doc/classes/PackedVector3Array.xml:123
+msgid "Sorts the elements of the array in ascending order."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:179
msgid ""
"Returns the slice of the [PackedByteArray] between indices (inclusive) as a "
"new [PackedByteArray]. Any negative index is considered to be from the end "
@@ -33937,12 +34566,12 @@ msgstr ""
msgid "Appends a [PackedColorArray] at the end of this array."
msgstr ""
-#: doc/classes/PackedColorArray.xml:71 doc/classes/PackedInt32Array.xml:72
-#: doc/classes/PackedInt64Array.xml:72
+#: doc/classes/PackedColorArray.xml:80 doc/classes/PackedInt32Array.xml:81
+#: doc/classes/PackedInt64Array.xml:81
msgid "Appends a value to the array."
msgstr ""
-#: doc/classes/PackedColorArray.xml:100
+#: doc/classes/PackedColorArray.xml:109
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -33972,8 +34601,8 @@ msgstr ""
msgid "Appends a [PackedFloat32Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedFloat32Array.xml:101
-#: doc/classes/PackedFloat64Array.xml:101
+#: doc/classes/PackedFloat32Array.xml:110
+#: doc/classes/PackedFloat64Array.xml:110
msgid "Changes the float at the given index."
msgstr ""
@@ -34026,17 +34655,17 @@ msgstr ""
msgid "Appends a [PackedInt32Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:56 doc/classes/PackedInt64Array.xml:56
+#: doc/classes/PackedInt32Array.xml:65 doc/classes/PackedInt64Array.xml:65
msgid ""
"Inserts a new integer at a given position in the array. The position must be "
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:101 doc/classes/PackedInt64Array.xml:101
+#: doc/classes/PackedInt32Array.xml:110 doc/classes/PackedInt64Array.xml:110
msgid "Changes the integer at the given index."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:108 doc/classes/PackedInt64Array.xml:108
+#: doc/classes/PackedInt32Array.xml:117 doc/classes/PackedInt64Array.xml:117
msgid "Returns the array size."
msgstr ""
@@ -34077,6 +34706,14 @@ msgid ""
"Can be used to save a node to a file. When saving, the node as well as all "
"the node it owns get saved (see [code]owner[/code] property on [Node]).\n"
"[b]Note:[/b] The node doesn't need to own itself.\n"
+"[b]Example of loading a saved scene:[/b]\n"
+"[codeblock]\n"
+"# Use `load()` instead of `preload()` if the path isn't known at compile-"
+"time.\n"
+"var scene = preload(\"res://scene.tscn\").instance()\n"
+"# Add the node as a child of the node the script is attached to.\n"
+"add_child(scene)\n"
+"[/codeblock]\n"
"[b]Example of saving a node with different owners:[/b] The following example "
"creates 3 objects: [code]Node2D[/code] ([code]node[/code]), "
"[code]RigidBody2D[/code] ([code]rigid[/code]) and [code]CollisionObject2D[/"
@@ -34108,29 +34745,29 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/PackedScene.xml:40
+#: doc/classes/PackedScene.xml:47
msgid "Returns [code]true[/code] if the scene file has nodes."
msgstr ""
-#: doc/classes/PackedScene.xml:47
+#: doc/classes/PackedScene.xml:54
msgid ""
"Returns the [code]SceneState[/code] representing the scene file contents."
msgstr ""
-#: doc/classes/PackedScene.xml:56
+#: doc/classes/PackedScene.xml:63
msgid ""
"Instantiates the scene's node hierarchy. Triggers child scene "
"instantiation(s). Triggers a [constant Node.NOTIFICATION_INSTANCED] "
"notification on the root node."
msgstr ""
-#: doc/classes/PackedScene.xml:65
+#: doc/classes/PackedScene.xml:72
msgid ""
"Pack will ignore any sub-nodes not owned by given node. See [member Node."
"owner]."
msgstr ""
-#: doc/classes/PackedScene.xml:71
+#: doc/classes/PackedScene.xml:78
msgid ""
"A dictionary representation of the scene contents.\n"
"Available keys include \"rnames\" and \"variants\" for resources, "
@@ -34139,18 +34776,18 @@ msgid ""
"connections, and \"version\" for the format style of the PackedScene."
msgstr ""
-#: doc/classes/PackedScene.xml:77
+#: doc/classes/PackedScene.xml:84
msgid "If passed to [method instance], blocks edits to the scene state."
msgstr ""
-#: doc/classes/PackedScene.xml:80
+#: doc/classes/PackedScene.xml:87
msgid ""
"If passed to [method instance], provides local scene resources to the local "
"scene.\n"
"[b]Note:[/b] Only available in editor builds."
msgstr ""
-#: doc/classes/PackedScene.xml:84
+#: doc/classes/PackedScene.xml:91
msgid ""
"If passed to [method instance], provides local scene resources to the local "
"scene. Only the main scene should receive the main edit state.\n"
@@ -34178,11 +34815,11 @@ msgstr ""
msgid "Appends a [PackedStringArray] at the end of this array."
msgstr ""
-#: doc/classes/PackedStringArray.xml:71
+#: doc/classes/PackedStringArray.xml:80
msgid "Appends a string element at end of the array."
msgstr ""
-#: doc/classes/PackedStringArray.xml:100
+#: doc/classes/PackedStringArray.xml:109
msgid "Changes the [String] at the given index."
msgstr ""
@@ -34207,11 +34844,11 @@ msgstr ""
msgid "Appends a [PackedVector2Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedVector2Array.xml:71
+#: doc/classes/PackedVector2Array.xml:80
msgid "Inserts a [Vector2] at the end."
msgstr ""
-#: doc/classes/PackedVector2Array.xml:100
+#: doc/classes/PackedVector2Array.xml:109
msgid "Changes the [Vector2] at the given index."
msgstr ""
@@ -34236,11 +34873,11 @@ msgstr ""
msgid "Appends a [PackedVector3Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedVector3Array.xml:71
+#: doc/classes/PackedVector3Array.xml:80
msgid "Inserts a [Vector3] at the end."
msgstr ""
-#: doc/classes/PackedVector3Array.xml:100
+#: doc/classes/PackedVector3Array.xml:109
msgid "Changes the [Vector3] at the given index."
msgstr ""
@@ -35131,13 +35768,55 @@ msgid ""
"as the values displayed in the [b]Monitor[/b] tab in the editor's "
"[b]Debugger[/b] panel. By using the [method get_monitor] method of this "
"class, you can access this data from your code.\n"
+"You can add custom monitors using the [method add_custom_monitor] method. "
+"Custom monitors are available in [b]Monitor[/b] tab in the editor's "
+"[b]Debugger[/b] panel together with built-in monitors.\n"
"[b]Note:[/b] A few of these monitors are only available in debug mode and "
"will always return 0 when used in a release build.\n"
"[b]Note:[/b] Many of these monitors are not updated in real-time, so there "
-"may be a short delay between changes."
+"may be a short delay between changes.\n"
+"[b]Note:[/b] Custom monitors do not support negative values. Negative values "
+"are clamped to 0."
+msgstr ""
+
+#: doc/classes/Performance.xml:26
+msgid ""
+"Adds a custom monitor with name same as id. You can specify the category of "
+"monitor using '/' in id. If there are more than one '/' then default "
+"category is used. Default category is \"Custom\".\n"
+"[codeblock]\n"
+"Performance.add_custom_monitor(\"MyCategory/MyMonitor\", some_callable) # "
+"Adds monitor with name \"MyName\" to category \"MyCategory\"\n"
+"Performance.add_custom_monitor(\"MyMonitor\", some_callable) # Adds monitor "
+"with name \"MyName\" to category \"Custom\"\n"
+"# Note: \"MyCategory/MyMonitor\" and \"MyMonitor\" have same name but "
+"different ids so above code is valid\n"
+"Performance.add_custom_monitor(\"Custom/MyMonitor\", some_callable) # Adds "
+"monitor with name \"MyName\" to category \"Custom\"\n"
+"# Note: \"MyMonitor\" and \"Custom/MyMonitor\" have same name and same "
+"category but different ids so above code is valid\n"
+"Performance.add_custom_monitor(\"MyCategoryOne/MyCategoryTwo/MyMonitor\", "
+"some_callable) # Adds monitor with name \"MyCategoryOne/MyCategoryTwo/"
+"MyMonitor\" to category \"Custom\"\n"
+"[/codeblock]\n"
+"The debugger calls the callable to get the value of custom monitor. The "
+"callable must return a number.\n"
+"Callables are called with arguments supplied in argument array.\n"
+"[b]Note:[/b] It throws an error if given id is already present."
+msgstr ""
+
+#: doc/classes/Performance.xml:46
+msgid ""
+"Returns the value of custom monitor with given id. The callable is called to "
+"get the value of custom monitor.\n"
+"[b]Note:[/b] It throws an error if the given id is absent."
+msgstr ""
+
+#: doc/classes/Performance.xml:54
+msgid "Returns the names of active custom monitors in an array."
msgstr ""
-#: doc/classes/Performance.xml:20
+#: doc/classes/Performance.xml:63
msgid ""
"Returns the value of one of the available monitors. You should provide one "
"of the [enum Monitor] constants as the argument, like this:\n"
@@ -35147,123 +35826,139 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Performance.xml:29
+#: doc/classes/Performance.xml:73
+msgid "Returns the last tick in which custom monitor was added/removed."
+msgstr ""
+
+#: doc/classes/Performance.xml:82
+msgid ""
+"Returns true if custom monitor with the given id is present otherwise "
+"returns false."
+msgstr ""
+
+#: doc/classes/Performance.xml:91
+msgid ""
+"Removes the custom monitor with given id.\n"
+"[b]Note:[/b] It throws an error if the given id is already absent."
+msgstr ""
+
+#: doc/classes/Performance.xml:98
msgid "Number of frames per second."
msgstr ""
-#: doc/classes/Performance.xml:32
+#: doc/classes/Performance.xml:101
msgid "Time it took to complete one frame, in seconds."
msgstr ""
-#: doc/classes/Performance.xml:35
+#: doc/classes/Performance.xml:104
msgid "Time it took to complete one physics frame, in seconds."
msgstr ""
-#: doc/classes/Performance.xml:38
+#: doc/classes/Performance.xml:107
msgid ""
"Static memory currently used, in bytes. Not available in release builds."
msgstr ""
-#: doc/classes/Performance.xml:41
+#: doc/classes/Performance.xml:110
msgid "Available static memory. Not available in release builds."
msgstr ""
-#: doc/classes/Performance.xml:44
+#: doc/classes/Performance.xml:113
msgid ""
"Largest amount of memory the message queue buffer has used, in bytes. The "
"message queue is used for deferred functions calls and notifications."
msgstr ""
-#: doc/classes/Performance.xml:47
+#: doc/classes/Performance.xml:116
msgid "Number of objects currently instanced (including nodes)."
msgstr ""
-#: doc/classes/Performance.xml:50
+#: doc/classes/Performance.xml:119
msgid "Number of resources currently used."
msgstr ""
-#: doc/classes/Performance.xml:53
+#: doc/classes/Performance.xml:122
msgid ""
"Number of nodes currently instanced in the scene tree. This also includes "
"the root node."
msgstr ""
-#: doc/classes/Performance.xml:56
+#: doc/classes/Performance.xml:125
msgid ""
"Number of orphan nodes, i.e. nodes which are not parented to a node of the "
"scene tree."
msgstr ""
-#: doc/classes/Performance.xml:59
+#: doc/classes/Performance.xml:128
msgid "3D objects drawn per frame."
msgstr ""
-#: doc/classes/Performance.xml:62
+#: doc/classes/Performance.xml:131
msgid "Vertices drawn per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:65
+#: doc/classes/Performance.xml:134
msgid "Material changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:68
+#: doc/classes/Performance.xml:137
msgid "Shader changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:71
+#: doc/classes/Performance.xml:140
msgid "Render surface changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:74
+#: doc/classes/Performance.xml:143
msgid "Draw calls per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:77 doc/classes/RenderingServer.xml:3805
+#: doc/classes/Performance.xml:146 doc/classes/RenderingServer.xml:3816
msgid ""
"The amount of video memory used, i.e. texture and vertex memory combined."
msgstr ""
-#: doc/classes/Performance.xml:80 doc/classes/RenderingServer.xml:3808
+#: doc/classes/Performance.xml:149 doc/classes/RenderingServer.xml:3819
msgid "The amount of texture memory used."
msgstr ""
-#: doc/classes/Performance.xml:83 doc/classes/RenderingServer.xml:3811
+#: doc/classes/Performance.xml:152 doc/classes/RenderingServer.xml:3822
msgid "The amount of vertex memory used."
msgstr ""
-#: doc/classes/Performance.xml:86 doc/classes/RenderingServer.xml:3802
+#: doc/classes/Performance.xml:155 doc/classes/RenderingServer.xml:3813
msgid "Unimplemented in the GLES2 rendering backend, always returns 0."
msgstr ""
-#: doc/classes/Performance.xml:89
+#: doc/classes/Performance.xml:158
msgid "Number of active [RigidBody2D] nodes in the game."
msgstr ""
-#: doc/classes/Performance.xml:92
+#: doc/classes/Performance.xml:161
msgid "Number of collision pairs in the 2D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:95
+#: doc/classes/Performance.xml:164
msgid "Number of islands in the 2D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:98
+#: doc/classes/Performance.xml:167
msgid "Number of active [RigidBody3D] and [VehicleBody3D] nodes in the game."
msgstr ""
-#: doc/classes/Performance.xml:101
+#: doc/classes/Performance.xml:170
msgid "Number of collision pairs in the 3D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:104
+#: doc/classes/Performance.xml:173
msgid "Number of islands in the 3D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:107
+#: doc/classes/Performance.xml:176
msgid "Output latency of the [AudioServer]."
msgstr ""
-#: doc/classes/Performance.xml:110
+#: doc/classes/Performance.xml:179
msgid "Represents the size of the [enum Monitor] enum."
msgstr ""
@@ -35287,27 +35982,27 @@ msgstr ""
msgid "Damps the body's rotation if greater than [code]0[/code]."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:70 doc/classes/RigidBody3D.xml:132
+#: doc/classes/PhysicalBone3D.xml:70 doc/classes/RigidBody3D.xml:139
msgid "Lock the body's rotation in the X axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:73 doc/classes/RigidBody3D.xml:135
+#: doc/classes/PhysicalBone3D.xml:73 doc/classes/RigidBody3D.xml:142
msgid "Lock the body's rotation in the Y axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:76 doc/classes/RigidBody3D.xml:138
+#: doc/classes/PhysicalBone3D.xml:76 doc/classes/RigidBody3D.xml:145
msgid "Lock the body's rotation in the Z axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:79 doc/classes/RigidBody3D.xml:141
+#: doc/classes/PhysicalBone3D.xml:79 doc/classes/RigidBody3D.xml:148
msgid "Lock the body's movement in the X axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:82 doc/classes/RigidBody3D.xml:144
+#: doc/classes/PhysicalBone3D.xml:82 doc/classes/RigidBody3D.xml:151
msgid "Lock the body's movement in the Y axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:85 doc/classes/RigidBody3D.xml:147
+#: doc/classes/PhysicalBone3D.xml:85 doc/classes/RigidBody3D.xml:154
msgid "Lock the body's movement in the Z axis."
msgstr ""
@@ -35362,12 +36057,12 @@ msgstr ""
msgid "Damps the body's movement if greater than [code]0[/code]."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:118 doc/classes/RigidBody2D.xml:158
-#: doc/classes/RigidBody3D.xml:175
+#: doc/classes/PhysicalBone3D.xml:118 doc/classes/RigidBody2D.xml:159
+#: doc/classes/RigidBody3D.xml:183
msgid "The body's mass."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:121 doc/classes/RigidBody3D.xml:188
+#: doc/classes/PhysicalBone3D.xml:121 doc/classes/RigidBody3D.xml:196
msgid ""
"The body's weight based on its mass and the global 3D gravity. Global values "
"are set in [b]Project > Project Settings > Physics > 3d[/b]."
@@ -35674,7 +36369,7 @@ msgid "The inverse of the mass of the body."
msgstr ""
#: doc/classes/PhysicsDirectBodyState2D.xml:195
-#: doc/classes/PhysicsDirectBodyState3D.xml:198 doc/classes/RigidBody2D.xml:155
+#: doc/classes/PhysicsDirectBodyState3D.xml:198 doc/classes/RigidBody2D.xml:156
msgid "The body's linear velocity."
msgstr ""
@@ -36227,7 +36922,7 @@ msgid ""
msgstr ""
#: doc/classes/PhysicsServer2D.xml:620 doc/classes/PhysicsServer3D.xml:637
-#: doc/classes/RigidBody3D.xml:120
+#: doc/classes/RigidBody3D.xml:127
msgid ""
"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."
@@ -37292,47 +37987,64 @@ msgid ""
"collision queries. See also [PhysicsShapeQueryResult2D]."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:18
-msgid ""
-"Sets the [Shape2D] that will be used for collision/intersection queries."
-msgstr ""
-
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:24
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:15
msgid "If [code]true[/code], the query will take [Area2D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:18
msgid ""
"If [code]true[/code], the query will take [PhysicsBody2D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:30
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:30
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:21
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:21
msgid "The physics layer(s) the query will take into account (as a bitmask)."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:33
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:33
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:24
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:24
msgid ""
"The list of objects or object [RID]s that will be excluded from collisions."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:36
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:36 doc/classes/Shape3D.xml:16
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:27 doc/classes/Shape3D.xml:16
msgid "The collision margin for the shape."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:39
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:30
msgid "The motion of the shape being queried for."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:42
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:39
-msgid "The queried shape's [RID]. See also [method set_shape]."
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:33
+msgid ""
+"The [Shape2D] that will be used for collision/intersection queries. This "
+"stores the actual reference which avoids the shape to be released while "
+"being used for queries, so always prefer using this over [member shape_rid]."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:36
+msgid ""
+"The queried shape's [RID] that will be used for collision/intersection "
+"queries. Use this over [member shape] if you want to optimize for "
+"performance using the Servers API:\n"
+"[codeblock]\n"
+"var shape_rid = PhysicsServer2D.circle_shape_create()\n"
+"var radius = 64\n"
+"PhysicsServer2D.shape_set_data(shape_rid, radius)\n"
+"\n"
+"var params = PhysicsShapeQueryParameters2D.new()\n"
+"params.shape_rid = shape_rid\n"
+"\n"
+"# Execute physics queries here...\n"
+"\n"
+"# Release the shape when done with physics queries.\n"
+"PhysicsServer2D.free_rid(shape_rid)\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:45
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:42
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:52
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:49
msgid "The queried shape's transform matrix."
msgstr ""
@@ -37346,18 +38058,40 @@ msgid ""
"collision queries. See also [PhysicsShapeQueryResult3D]."
msgstr ""
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:15
+msgid "If [code]true[/code], the query will take [Area3D]s into account."
+msgstr ""
+
#: doc/classes/PhysicsShapeQueryParameters3D.xml:18
msgid ""
-"Sets the [Shape3D] that will be used for collision/intersection queries."
+"If [code]true[/code], the query will take [PhysicsBody3D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:24
-msgid "If [code]true[/code], the query will take [Area3D]s into account."
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:30
+msgid ""
+"The [Shape3D] that will be used for collision/intersection queries. This "
+"stores the actual reference which avoids the shape to be released while "
+"being used for queries, so always prefer using this over [member shape_rid]."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:33
msgid ""
-"If [code]true[/code], the query will take [PhysicsBody3D]s into account."
+"The queried shape's [RID] that will be used for collision/intersection "
+"queries. Use this over [member shape] if you want to optimize for "
+"performance using the Servers API:\n"
+"[codeblock]\n"
+"var shape_rid = PhysicsServer3D.shape_create(PhysicsServer3D.SHAPE_SPHERE)\n"
+"var radius = 2.0\n"
+"PhysicsServer3D.shape_set_data(shape_rid, radius)\n"
+"\n"
+"var params = PhysicsShapeQueryParameters3D.new()\n"
+"params.shape_rid = shape_rid\n"
+"\n"
+"# Execute physics queries here...\n"
+"\n"
+"# Release the shape when done with physics queries.\n"
+"PhysicsServer3D.free_rid(shape_rid)\n"
+"[/codeblock]"
msgstr ""
#: doc/classes/PhysicsShapeQueryResult2D.xml:4
@@ -37498,92 +38232,94 @@ msgid ""
"code]."
msgstr ""
-#: doc/classes/Plane.xml:72
-msgid "Returns a point on the plane."
-msgstr ""
-
-#: doc/classes/Plane.xml:83
+#: doc/classes/Plane.xml:76
msgid ""
-"Returns [code]true[/code] if [code]point[/code] is inside the plane (by a "
-"very minimum [code]epsilon[/code] threshold)."
+"Returns [code]true[/code] if [code]point[/code] is inside the plane. "
+"Comparison uses a custom minimum [code]epsilon[/code] threshold."
msgstr ""
-#: doc/classes/Plane.xml:94
+#: doc/classes/Plane.xml:87
msgid ""
"Returns the intersection point of the three planes [code]b[/code], [code]c[/"
"code] and this plane. If no intersection is found, [code]null[/code] is "
"returned."
msgstr ""
-#: doc/classes/Plane.xml:105
+#: doc/classes/Plane.xml:98
msgid ""
"Returns the intersection point of a ray consisting of the position "
"[code]from[/code] and the direction normal [code]dir[/code] with this plane. "
"If no intersection is found, [code]null[/code] is returned."
msgstr ""
-#: doc/classes/Plane.xml:116
+#: doc/classes/Plane.xml:109
msgid ""
"Returns the intersection point of a segment from position [code]begin[/code] "
"to position [code]end[/code] with this plane. If no intersection is found, "
"[code]null[/code] is returned."
msgstr ""
-#: doc/classes/Plane.xml:125
+#: doc/classes/Plane.xml:118
msgid ""
"Returns [code]true[/code] if this plane and [code]plane[/code] are "
"approximately equal, by running [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/Plane.xml:134
+#: doc/classes/Plane.xml:127
msgid ""
"Returns [code]true[/code] if [code]point[/code] is located above the plane."
msgstr ""
-#: doc/classes/Plane.xml:141
+#: doc/classes/Plane.xml:134
msgid "Returns a copy of the plane, normalized."
msgstr ""
-#: doc/classes/Plane.xml:150
+#: doc/classes/Plane.xml:143
msgid ""
-"Returns the orthogonal projection of point [code]p[/code] into a point in "
-"the plane."
+"Returns the orthogonal projection of [code]point[/code] into a point in the "
+"plane."
msgstr ""
-#: doc/classes/Plane.xml:156
+#: doc/classes/Plane.xml:149
msgid ""
-"Distance from the origin to the plane, in the direction of [member normal]."
+"The distance from the origin to the plane, in the direction of [member "
+"normal]. This value is typically non-negative.\n"
+"In the scalar equation of the plane [code]ax + by + cz = d[/code], this is "
+"[code]d[/code], while the [code](a, b, c)[/code] coordinates are represented "
+"by the [member normal] property."
msgstr ""
-#: doc/classes/Plane.xml:159
+#: doc/classes/Plane.xml:153
msgid ""
-"The normal of the plane. \"Over\" or \"Above\" the plane is considered the "
-"side of the plane towards where the normal is pointing."
+"The normal of the plane, which must be normalized.\n"
+"In the scalar equation of the plane [code]ax + by + cz = d[/code], this is "
+"the vector [code](a, b, c)[/code], where [code]d[/code] is the [member d] "
+"property."
msgstr ""
-#: doc/classes/Plane.xml:162
-msgid "The [member normal]'s X component."
+#: doc/classes/Plane.xml:157
+msgid "The X component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:165
-msgid "The [member normal]'s Y component."
+#: doc/classes/Plane.xml:160
+msgid "The Y component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:168
-msgid "The [member normal]'s Z component."
+#: doc/classes/Plane.xml:163
+msgid "The Z component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:173
-msgid "A plane that extends in the Y and Z axes."
+#: doc/classes/Plane.xml:168
+msgid "A plane that extends in the Y and Z axes (normal vector points +X)."
msgstr ""
-#: doc/classes/Plane.xml:176
-msgid "A plane that extends in the X and Z axes."
+#: doc/classes/Plane.xml:171
+msgid "A plane that extends in the X and Z axes (normal vector points +Y)."
msgstr ""
-#: doc/classes/Plane.xml:179
-msgid "A plane that extends in the X and Y axes."
+#: doc/classes/Plane.xml:174
+msgid "A plane that extends in the X and Y axes (normal vector points +Z)."
msgstr ""
#: doc/classes/PlaneMesh.xml:4
@@ -38294,18 +39030,25 @@ msgstr ""
#: doc/classes/PrimitiveMesh.xml:16
msgid ""
-"Returns mesh arrays used to constitute surface of [Mesh]. Mesh arrays can be "
-"used with [ArrayMesh] to create new surfaces."
+"Returns mesh arrays used to constitute surface of [Mesh]. The result can be "
+"passed to [method ArrayMesh.add_surface_from_arrays] to create a new "
+"surface. For example:\n"
+"[codeblock]\n"
+"var c := CylinderMesh.new()\n"
+"var arr_mesh := ArrayMesh.new()\n"
+"arr_mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLES, c."
+"get_mesh_arrays())\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:22
+#: doc/classes/PrimitiveMesh.xml:27
msgid ""
"Overrides the [AABB] with one defined by user for use with frustum culling. "
"Especially useful to avoid unnexpected culling when using a shader to "
"offset vertices."
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:25
+#: doc/classes/PrimitiveMesh.xml:30
msgid ""
"If set, the order of the vertices in each triangle are reversed resulting in "
"the backside of the mesh being drawn.\n"
@@ -38313,7 +39056,7 @@ msgid ""
"[member BaseMaterial3D.cull_mode]."
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:29
+#: doc/classes/PrimitiveMesh.xml:34
msgid "The current [Material] of the primitive mesh."
msgstr ""
@@ -38744,11 +39487,17 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:260
msgid ""
+"Safer override for [member audio/output_latency] in the Web platform, to "
+"avoid audio issues especially on mobile devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:263
+msgid ""
"Setting to hardcode audio delay when playing video. Best to leave this "
"untouched unless you know what you are doing."
msgstr ""
-#: doc/classes/ProjectSettings.xml:263
+#: doc/classes/ProjectSettings.xml:266
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -38758,7 +39507,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:269
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -38768,27 +39517,27 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:269
+#: doc/classes/ProjectSettings.xml:272
msgid ""
"The default compression level for Zstandard. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
"speed. Decompression speed is mostly unaffected by the compression level."
msgstr ""
-#: doc/classes/ProjectSettings.xml:272
+#: doc/classes/ProjectSettings.xml:275
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:278
msgid ""
"Largest size limit (in power of 2) allowed when compressing using long-"
"distance matching with Zstandard. Higher values can result in better "
"compression, but will require more memory when compressing and decompressing."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:281
msgid ""
"If [code]true[/code], displays getters and setters in autocompletion results "
"in the script editor. This setting is meant to be used when porting old "
@@ -38796,74 +39545,55 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:281
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:284
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:287
+#: doc/classes/ProjectSettings.xml:294
msgid ""
"If [code]true[/code], enables specific GDScript warnings (see [code]debug/"
"gdscript/warnings/*[/code] settings). If [code]false[/code], disables all "
"GDScript warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
-msgid ""
-"If [code]true[/code], enables warnings when a function is declared with the "
-"same name as a constant."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:296
-msgid ""
-"If [code]true[/code], enables warnings when a function is declared with the "
-"same name as a variable. This will turn into an error in a future version "
-"when first-class functions become supported in GDScript."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:299
-msgid ""
-"If [code]true[/code], enables warnings when a function assigned to a "
-"variable may yield and return a function state instead of a value."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:302
+#: doc/classes/ProjectSettings.xml:300
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:303
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when dividing an integer by another "
"integer (the decimal part will be discarded)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when passing a floating-point value "
"to a function that expects an integer (it will be converted and lose "
"precision)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:314
+#: doc/classes/ProjectSettings.xml:312
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
@@ -38884,102 +39614,85 @@ msgid ""
"member variable)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:323
+#: doc/classes/ProjectSettings.xml:325
msgid ""
"If [code]true[/code], enables warnings when calling an expression that has "
"no effect on the surrounding code, such as writing [code]2 + 2[/code] as a "
"statement."
msgstr ""
-#: doc/classes/ProjectSettings.xml:326
+#: doc/classes/ProjectSettings.xml:328
msgid ""
"If [code]true[/code], enables warnings when calling a ternary expression "
"that has no effect on the surrounding code, such as writing [code]42 if "
"active else 0[/code] as a statement."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:331
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:334
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:335
+#: doc/classes/ProjectSettings.xml:337
msgid ""
"If [code]true[/code], enables warnings when assigning a variable using an "
"assignment operator like [code]+=[/code] if the variable wasn't previously "
"assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:338
+#: doc/classes/ProjectSettings.xml:340
msgid ""
"If [code]true[/code], enables warnings when unreachable code is detected "
"(such as after a [code]return[/code] statement that will always be executed)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:345
msgid ""
"If [code]true[/code], enables warnings when using an expression whose type "
"may not be compatible with the function parameter expected."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:348
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:347
+#: doc/classes/ProjectSettings.xml:351
msgid ""
"If [code]true[/code], enables warnings when calling a method whose presence "
"is not guaranteed at compile-time in the class."
msgstr ""
-#: doc/classes/ProjectSettings.xml:350
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], enables warnings when accessing a property whose "
"presence is not guaranteed at compile-time in the class."
msgstr ""
-#: doc/classes/ProjectSettings.xml:353
-msgid ""
-"If [code]true[/code], enables warnings when a function parameter is unused."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:356
-msgid ""
-"If [code]true[/code], enables warnings when a member variable is unused."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:363
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:362
+#: doc/classes/ProjectSettings.xml:366
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:365
-msgid ""
-"If [code]true[/code], enables warnings when a variable is declared with the "
-"same name as a function. This will turn into an error in a future version "
-"when first-class functions become supported in GDScript."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:368
+#: doc/classes/ProjectSettings.xml:369
msgid ""
"If [code]true[/code], enables warnings when assigning the result of a "
"function that returns [code]void[/code] to a variable."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:374
+#: doc/classes/ProjectSettings.xml:375
msgid ""
"Maximum number of frames per second allowed. The actual number of frames per "
"second may still be below this value if the game is lagging.\n"
@@ -38990,143 +39703,143 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:379
+#: doc/classes/ProjectSettings.xml:380
msgid "Maximum call stack allowed for debugging GDScript."
msgstr ""
-#: doc/classes/ProjectSettings.xml:382
+#: doc/classes/ProjectSettings.xml:383
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:385
+#: doc/classes/ProjectSettings.xml:386
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:388
+#: doc/classes/ProjectSettings.xml:389
msgid ""
"Print more information to standard output when running. It displays "
"information such as memory leaks, which scenes and resources are being "
"loaded, etc."
msgstr ""
-#: doc/classes/ProjectSettings.xml:391
+#: doc/classes/ProjectSettings.xml:392
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:394
+#: doc/classes/ProjectSettings.xml:395
msgid ""
"Color of the contact points between collision shapes, visible when \"Visible "
"Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:397
+#: doc/classes/ProjectSettings.xml:398
msgid ""
"Maximum number of contact points between collision shapes to display when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:400
+#: doc/classes/ProjectSettings.xml:401
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
msgid "Hotspot for the custom mouse cursor image."
msgstr ""
-#: doc/classes/ProjectSettings.xml:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
msgid ""
"If [code]true[/code], allows HiDPI display on Windows and macOS. This "
"setting has no effect on desktop Linux, as DPI-awareness fallbacks are not "
"supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"If [code]true[/code], keeps the screen on (even in case of inactivity), so "
"the screensaver does not take over. Works on desktop and mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
msgid "Default orientation on mobile devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"If [code]true[/code], the home indicator is hidden automatically. This only "
"affects iOS devices without a physical home button."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid "Force the window to be always on top."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid "Force the window to be borderless."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Sets the window to full screen when it starts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid ""
"Sets the game's main viewport height. On desktop platforms, this is the "
"default window size. Stretch mode settings also use this as a reference when "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Allows the window to be resizable by default."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"Sets the game's main viewport width. On desktop platforms, this is the "
"default window size. Stretch mode settings also use this as a reference when "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:454
+#: doc/classes/ProjectSettings.xml:455
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:457
+#: doc/classes/ProjectSettings.xml:458
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -39135,7 +39848,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:460
+#: doc/classes/ProjectSettings.xml:461
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -39146,13 +39859,13 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:464
+#: doc/classes/ProjectSettings.xml:465
msgid ""
"Search path for project-specific script templates. Script templates will be "
"search both in the editor-specific path and in this project-specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:467
+#: doc/classes/ProjectSettings.xml:468
msgid ""
"Text-based file extensions to include in the script editor's \"Find in Files"
"\" feature. You can add e.g. [code]tscn[/code] if you wish to also parse "
@@ -39160,49 +39873,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:470
+#: doc/classes/ProjectSettings.xml:471
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:473
+#: doc/classes/ProjectSettings.xml:474
msgid ""
-"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
+"If [code]true[/code], swaps Cancel and OK buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:478
+#: doc/classes/ProjectSettings.xml:479
msgid ""
"Path to a custom [Theme] resource file to use for the project ([code]theme[/"
"code] or generic [code]tres[/code]/[code]res[/code] extension)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:484
+#: doc/classes/ProjectSettings.xml:485
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:487
+#: doc/classes/ProjectSettings.xml:488
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:490
+#: doc/classes/ProjectSettings.xml:491
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:493
+#: doc/classes/ProjectSettings.xml:494
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:496
+#: doc/classes/ProjectSettings.xml:497
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -39211,7 +39924,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"Default [InputEventAction] to discard a modal or pending input.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39219,7 +39932,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:504
+#: doc/classes/ProjectSettings.xml:505
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39227,7 +39940,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:508
+#: doc/classes/ProjectSettings.xml:509
msgid ""
"Default [InputEventAction] to go to the end position of a [Control] (e.g. "
"last item in an [ItemList] or a [Tree]), matching the behavior of [constant "
@@ -39237,7 +39950,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:512
+#: doc/classes/ProjectSettings.xml:513
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -39246,7 +39959,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:516
+#: doc/classes/ProjectSettings.xml:517
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -39255,7 +39968,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:520
+#: doc/classes/ProjectSettings.xml:521
msgid ""
"Default [InputEventAction] to go to the start position of a [Control] (e.g. "
"first item in an [ItemList] or a [Tree]), matching the behavior of [constant "
@@ -39265,7 +39978,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39273,7 +39986,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:528
+#: doc/classes/ProjectSettings.xml:529
msgid ""
"Default [InputEventAction] to go down a page in a [Control] (e.g. in an "
"[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEDOWN] on "
@@ -39283,7 +39996,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Default [InputEventAction] to go up a page in a [Control] (e.g. in an "
"[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEUP] on "
@@ -39293,7 +40006,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:536
+#: doc/classes/ProjectSettings.xml:537
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39301,7 +40014,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:540
+#: doc/classes/ProjectSettings.xml:541
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -39310,7 +40023,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39318,371 +40031,371 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:548
+#: doc/classes/ProjectSettings.xml:549
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:554
+#: doc/classes/ProjectSettings.xml:555
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:557
+#: doc/classes/ProjectSettings.xml:558
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:560
+#: doc/classes/ProjectSettings.xml:561
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:566
+#: doc/classes/ProjectSettings.xml:567
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:569
+#: doc/classes/ProjectSettings.xml:570
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:572
+#: doc/classes/ProjectSettings.xml:573
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:578
+#: doc/classes/ProjectSettings.xml:579
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:581
+#: doc/classes/ProjectSettings.xml:582
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:584
+#: doc/classes/ProjectSettings.xml:585
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:590
+#: doc/classes/ProjectSettings.xml:591
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:593
+#: doc/classes/ProjectSettings.xml:594
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:596
+#: doc/classes/ProjectSettings.xml:597
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:602
+#: doc/classes/ProjectSettings.xml:603
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid ""
"The locale to fall back to if a translation isn't available in a given "
"language. If left empty, [code]en[/code] (English) will be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "If [code]true[/code], logs all output to files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:806
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:809
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:812
msgid ""
"Godot uses a message queue to defer some function calls. If you run out of "
"space on it (you will see an error), you can increase the size here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:815
msgid ""
"This is used by servers when used in multi-threading mode (servers and "
"visual). RIDs are preallocated to avoid stalling the server requesting them "
@@ -39690,56 +40403,56 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:829
+#: doc/classes/ProjectSettings.xml:832
msgid ""
"Maximum amount of characters allowed to send as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:832
+#: doc/classes/ProjectSettings.xml:835
msgid ""
"Maximum number of errors allowed to be sent from the debugger. Over this "
"value, content is dropped. This helps not to stall the debugger connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:835
+#: doc/classes/ProjectSettings.xml:838
msgid ""
"Maximum amount of messages in the debugger queue. Over this value, content "
"is dropped. This helps to limit the debugger memory usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:838
+#: doc/classes/ProjectSettings.xml:841
msgid ""
"Maximum number of warnings allowed to be sent from the debugger. Over this "
"value, content is dropped. This helps not to stall the debugger connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:841
+#: doc/classes/ProjectSettings.xml:844
msgid ""
"Default size of packet peer stream for deserializing Godot data. Over this "
"size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:844
+#: doc/classes/ProjectSettings.xml:847
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:847
+#: doc/classes/ProjectSettings.xml:850
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:850
+#: doc/classes/ProjectSettings.xml:853
msgid ""
"Amount of read ahead used by remote filesystem. Higher values decrease the "
"effects of latency at the cost of higher bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:853
+#: doc/classes/ProjectSettings.xml:856
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:856
+#: doc/classes/ProjectSettings.xml:859
msgid ""
"The CA certificates bundle to use for SSL connections. If this is set to a "
"non-empty value, this will [i]override[/i] Godot's default [url=https://"
@@ -39749,31 +40462,31 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:863
msgid ""
"When creating node names automatically, set the type of casing in this "
"project. This is mostly an editor setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:866
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:869
msgid "Size of the hash table used for the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:872
msgid "Cell size used for the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:875
msgid "The default angular damp in 2D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:878
msgid ""
"The default gravity strength in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39785,7 +40498,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:883
+#: doc/classes/ProjectSettings.xml:886
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39797,38 +40510,38 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:891
+#: doc/classes/ProjectSettings.xml:894
msgid "The default linear damp in 2D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:894
+#: doc/classes/ProjectSettings.xml:897
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:897
+#: doc/classes/ProjectSettings.xml:900
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics2D\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:901
+#: doc/classes/ProjectSettings.xml:904
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant PhysicsServer2D."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:904
+#: doc/classes/ProjectSettings.xml:907
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant PhysicsServer2D."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:907
+#: doc/classes/ProjectSettings.xml:910
msgid ""
"Sets whether physics is run on the main thread or a separate one. Running "
"the server on a thread increases performance, but restricts API access to "
@@ -39838,23 +40551,23 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:914
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant PhysicsServer2D.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:917
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody3D] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:920
msgid "The default angular damp in 3D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:923
msgid ""
"The default gravity strength in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39866,7 +40579,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:928
+#: doc/classes/ProjectSettings.xml:931
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39878,11 +40591,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:936
+#: doc/classes/ProjectSettings.xml:939
msgid "The default linear damp in 3D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:939
+#: doc/classes/ProjectSettings.xml:942
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -39890,11 +40603,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:943
+#: doc/classes/ProjectSettings.xml:946
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:949
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -39903,7 +40616,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:950
+#: doc/classes/ProjectSettings.xml:953
msgid ""
"Fix to improve physics jitter, specially on monitors where refresh rate is "
"different than the physics FPS.\n"
@@ -39911,7 +40624,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:954
+#: doc/classes/ProjectSettings.xml:957
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -39919,7 +40632,7 @@ msgid ""
"programmatically, use [method RenderingServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:957
+#: doc/classes/ProjectSettings.xml:960
msgid ""
"[Environment] that will be used as a fallback environment in case a scene "
"does not specify its own environment. The default environment is loaded in "
@@ -39929,14 +40642,14 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:986
+#: doc/classes/ProjectSettings.xml:989
msgid ""
"Max amount of elements renderable in a frame. If more than this are visible "
"per frame, they will be dropped. Keep in mind elements refer to mesh "
"surfaces and not meshes themselves."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:994
msgid ""
"Some NVIDIA GPU drivers have a bug which produces flickering issues for the "
"[code]draw_rect[/code] method, especially as used in [TileMap]. Refer to "
@@ -39948,73 +40661,73 @@ msgid ""
"using the Vulkan backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:995
+#: doc/classes/ProjectSettings.xml:998
msgid ""
"If [code]true[/code], forces snapping of polygons to pixels in 2D rendering. "
"May help in some pixel art styles."
msgstr ""
-#: doc/classes/ProjectSettings.xml:998
+#: doc/classes/ProjectSettings.xml:1001
msgid ""
"Sets the quality of the depth of field effect. Higher quality takes more "
"samples, which is slower but looks smoother."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1001
+#: doc/classes/ProjectSettings.xml:1004
msgid ""
"Sets the depth of field shape. Can be Box, Hexagon, or Circle. Box is the "
"fastest. Circle is the most realistic, but also the most expensive to "
"compute."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1004
+#: doc/classes/ProjectSettings.xml:1007
msgid ""
"If [code]true[/code], jitters DOF samples to make effect slightly blurrier "
"and hide lines created from low sample rates. This can result in a slightly "
"grainy appearance when used with a low number of samples."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1010
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1010
+#: doc/classes/ProjectSettings.xml:1013
msgid ""
"If [code]true[/code], performs a previous depth pass before rendering "
"materials. This increases performance in scenes with high overdraw, when "
"complex materials and lighting are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1016
msgid ""
"The directional shadow's size in pixels. Higher values will result in "
"sharper shadows, at the cost of performance. The value will be rounded up to "
"the nearest power of 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1016
+#: doc/classes/ProjectSettings.xml:1019
msgid ""
"Lower-end override for [member rendering/quality/directional_shadow/size] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1019
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"Quality setting for shadows cast by [DirectionalLight3D]s. Higher quality "
"settings use more samples when reading from shadow maps and are thus slower. "
"Low quality settings may result in shadows looking grainy."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1022
+#: doc/classes/ProjectSettings.xml:1025
msgid ""
"Lower-end override for [member rendering/quality/directional_shadow/"
"soft_shadow_quality] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1028
msgid ""
"The video driver to use (\"GLES2\" or \"Vulkan\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -40024,32 +40737,32 @@ msgid ""
"get_current_video_driver[/code] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1031
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"If [code]true[/code], take additional samples when rendering objects "
"affected by a [GIProbe] to reduce artifacts from only sampling in one "
"direction."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1034
+#: doc/classes/ProjectSettings.xml:1037
msgid ""
"Sets the number of cone samples taken when rendering objects affected by "
"[GIProbe]s."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1037
+#: doc/classes/ProjectSettings.xml:1040
msgid ""
"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."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1040
+#: doc/classes/ProjectSettings.xml:1043
msgid ""
"Lower-end override for [member rendering/quality/glow/upscale_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1043
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Strategy used for framebuffer allocation. The simpler it is, the less "
"resources it uses (but the less features it supports). If set to \"2D "
@@ -40059,41 +40772,41 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1046
+#: doc/classes/ProjectSettings.xml:1049
msgid ""
"Lower-end override for [member rendering/quality/intended_usage/"
"framebuffer_allocation] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1052
msgid ""
"Number of cubemaps to store in the reflection atlas. The number of "
"[ReflectionProbe]s in a scene will be limited by this amount. A higher "
"number requires more VRAM."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1052
+#: doc/classes/ProjectSettings.xml:1055
msgid ""
"Size of cubemap faces for [ReflectionProbe]s. A higher number requires more "
"VRAM and may make reflection probe updating slower."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1055
+#: doc/classes/ProjectSettings.xml:1058
msgid ""
"Lower-end override for [member rendering/quality/reflection_atlas/"
"reflection_size] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1058
+#: doc/classes/ProjectSettings.xml:1061
msgid ""
"Use a higher quality variant of the fast filtering algorithm. Significantly "
"slower than using default quality, but results in smoother reflections. "
"Should only be used when the scene is especially detailed."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1061
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Sets the number of samples to take when using importance sampling for [Sky]s "
"and [ReflectionProbe]s. A higher value will result in smoother, higher "
@@ -40103,19 +40816,19 @@ msgid ""
"environments with a high level of detail."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1064
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Lower-end override for [member rendering/quality/reflections/ggx_samples] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1067
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Limits the number of layers to use in radiance maps when using importance "
"sampling. A lower number will be slightly faster and take up less VRAM."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1070
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise and "
@@ -40124,14 +40837,14 @@ msgid ""
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1073
+#: doc/classes/ProjectSettings.xml:1076
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"texture_array_reflections] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1079
msgid ""
"Sets the number of MSAA samples to use (as a power of two). MSAA is used to "
"reduce aliasing around the edges of polygons. A higher MSAA value results in "
@@ -40139,7 +40852,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1080
+#: doc/classes/ProjectSettings.xml:1083
msgid ""
"Sets the screen-space antialiasing mode for the default screen [Viewport]. "
"Screen-space antialiasing works by selectively blurring edges in a post-"
@@ -40148,133 +40861,117 @@ msgid ""
"MSAA and will smooth out specular aliasing, but tend to make scenes appear "
"blurry.\n"
"Another way to combat specular aliasing is to enable [member rendering/"
-"quality/screen_filters/screen_space_roughness_limiter]."
+"quality/screen_filters/screen_space_roughness_limiter_enabled]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1084
-msgid ""
-"Enables the screen-space roughness limiter which increases material "
-"roughness in areas with a high normal frequency (i.e. when normals change a "
-"lot from pixel to pixel). This helps to reduce the amount of specular "
-"aliasing in a scene. Specular aliasing looks like random bright pixels that "
-"occur in reflections."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:1087
-msgid ""
-"Curves the amount of the roughness limited effect. A higher value limits the "
-"effect to very sharply curved surfaces, while a lower threshold extends the "
-"effect to smoother surfaces."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:1090
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"Sets the quality for rough screen-space reflections. Turning off will make "
"all screen space reflections sharp, while higher values make rough "
"reflections look better."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1093
+#: doc/classes/ProjectSettings.xml:1096
msgid ""
"If [code]true[/code], uses faster but lower-quality Blinn model to generate "
"blurred reflections instead of the GGX model."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1099
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_blinn_over_ggx] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1102
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1102
+#: doc/classes/ProjectSettings.xml:1105
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_lambert_over_burley] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1105
+#: doc/classes/ProjectSettings.xml:1108
msgid ""
"If [code]true[/code], forces vertex shading for all rendering. This can "
"increase performance a lot, but also reduces quality immensely. Can be used "
"to optimize performance on low-end mobile devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1108
+#: doc/classes/ProjectSettings.xml:1111
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_vertex_shading] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1111 doc/classes/ProjectSettings.xml:1114
-#: doc/classes/ProjectSettings.xml:1117 doc/classes/ProjectSettings.xml:1120
+#: doc/classes/ProjectSettings.xml:1114 doc/classes/ProjectSettings.xml:1117
+#: doc/classes/ProjectSettings.xml:1120 doc/classes/ProjectSettings.xml:1123
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1123
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1126
+#: doc/classes/ProjectSettings.xml:1129
msgid ""
"Lower-end override for [member rendering/quality/shadow_atlas/size] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1132
msgid ""
"Quality setting for shadows cast by [OmniLight3D]s and [SpotLight3D]s. "
"Higher quality settings use more samples when reading from shadow maps and "
"are thus slower. Low quality settings may result in shadows looking grainy."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1132
+#: doc/classes/ProjectSettings.xml:1135
msgid ""
"Lower-end override for [member rendering/quality/shadows/"
"soft_shadow_quality] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1135
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"If [code]true[/code], screen-space ambient occlusion will be rendered at "
"half size and then upscaled before being added to the scene. This is "
"significantly faster but may miss small details."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1138
+#: doc/classes/ProjectSettings.xml:1141
msgid ""
"Sets the quality of the screen-space ambient occlusion effect. Higher values "
"take more samples and so will result in better quality, at the cost of "
"performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1144
msgid ""
"Scales the depth over which the subsurface scattering effect is applied. A "
"high value may allow light to scatter into a part of the mesh or another "
"mesh that is close in screen space but far in depth."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1144
+#: doc/classes/ProjectSettings.xml:1147
msgid ""
"Sets the quality of the subsurface scattering effect. Higher values are "
"slower but look nicer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1147
+#: doc/classes/ProjectSettings.xml:1150
msgid ""
"Scales the distance over which samples are taken for subsurface scattering "
"effect. Changing this does not impact performance, but higher values will "
@@ -40282,7 +40979,7 @@ msgid ""
"out. A lower value results in a smaller spread of scattered light."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1150
+#: doc/classes/ProjectSettings.xml:1153
msgid ""
"Sets the maximum number of samples to take when using anisotropic filtering "
"on textures (as a power of two). A higher sample count will result in "
@@ -40291,7 +40988,7 @@ msgid ""
"materials where it is enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1153
+#: doc/classes/ProjectSettings.xml:1156
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -40300,49 +40997,49 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Thread model for rendering. Rendering on a thread can vastly improve "
"performance, but synchronizing to the main thread can cause a bit more "
"jitter."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
"only supported on desktop platforms, and only when using the Vulkan renderer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
"doesn't support alpha channels in textures."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
"compression algorithm is only supported when using the Vulkan renderer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1175
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
"compression algorithm is only supported on iOS."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
"supported on desktop platforms and consoles."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1182
+#: doc/classes/ProjectSettings.xml:1189
msgid "Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses."
msgstr ""
@@ -40372,13 +41069,14 @@ msgstr ""
#: doc/classes/Quat.xml:7
msgid ""
-"A unit quaternion used for representing 3D rotations.\n"
-"It is similar to [Basis], which implements matrix representation of "
-"rotations, and can be parametrized using both an axis-angle pair or Euler "
-"angles. But due to its compactness and the way it is stored in memory, "
-"certain operations (obtaining axis-angle and performing SLERP, in "
-"particular) are more efficient and robust against floating-point errors.\n"
-"Quaternions need to be (re)normalized."
+"A unit quaternion used for representing 3D rotations. Quaternions need to be "
+"normalized to be used for rotation.\n"
+"It is similar to Basis, which implements matrix representation of rotations, "
+"and can be parametrized using both an axis-angle pair or Euler angles. Basis "
+"stores rotation, scale, and shearing, while Quat only stores rotation.\n"
+"Due to its compactness and the way it is stored in memory, certain "
+"operations (obtaining axis-angle and performing SLERP, in particular) are "
+"more efficient and robust against floating-point errors."
msgstr ""
#: doc/classes/Quat.xml:12
@@ -40388,29 +41086,31 @@ msgid ""
msgstr ""
#: doc/classes/Quat.xml:21
-msgid "Returns the rotation matrix corresponding to the given quaternion."
+msgid "Constructs a quaternion from the given [Basis]."
msgstr ""
#: doc/classes/Quat.xml:30
msgid ""
-"Returns a quaternion that will perform a rotation specified by Euler angles "
-"(in the YXZ convention: first Z, then X, and Y last), given in the vector "
-"format as (X angle, Y angle, Z angle)."
+"Constructs a quaternion that will perform a rotation specified by Euler "
+"angles (in the YXZ convention: when decomposing, first Z, then X, and Y "
+"last), given in the vector format as (X angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:41
msgid ""
-"Returns a quaternion that will rotate around the given axis by the specified "
-"angle. The axis must be a normalized vector."
+"Constructs a quaternion that will rotate around the given axis by the "
+"specified angle. The axis must be a normalized vector."
msgstr ""
#: doc/classes/Quat.xml:56
-msgid "Returns a quaternion defined by these values."
+msgid "Constructs a quaternion defined by the given values."
msgstr ""
#: doc/classes/Quat.xml:71
msgid ""
-"Performs a cubic spherical-linear interpolation with another quaternion."
+"Performs a cubic spherical interpolation between quaternions [code]preA[/"
+"code], this vector, [code]b[/code], and [code]postB[/code], by the given "
+"amount [code]t[/code]."
msgstr ""
#: doc/classes/Quat.xml:80
@@ -40419,10 +41119,10 @@ msgstr ""
#: doc/classes/Quat.xml:87
msgid ""
-"Returns Euler angles (in the YXZ convention: first Z, then X, and Y last) "
-"corresponding to the rotation represented by the unit quaternion. Returned "
-"vector contains the rotation angles in the format (X angle, Y angle, Z "
-"angle)."
+"Returns Euler angles (in the YXZ convention: when decomposing, first Z, then "
+"X, and Y last) corresponding to the rotation represented by the unit "
+"quaternion. Returned vector contains the rotation angles in the format (X "
+"angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:94
@@ -40461,44 +41161,57 @@ msgstr ""
#: doc/classes/Quat.xml:151
msgid ""
"Sets the quaternion to a rotation specified by Euler angles (in the YXZ "
-"convention: first Z, then X, and Y last), given in the vector format as (X "
-"angle, Y angle, Z angle)."
+"convention: when decomposing, first Z, then X, and Y last), given in the "
+"vector format as (X angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:162
-msgid "Performs a spherical-linear interpolation with another quaternion."
+msgid ""
+"Returns the result of the spherical linear interpolation between this "
+"quaternion and [code]to[/code] by amount [code]weight[/code].\n"
+"[b]Note:[/b] Both quaternions must be normalized."
msgstr ""
-#: doc/classes/Quat.xml:173
+#: doc/classes/Quat.xml:174
msgid ""
-"Performs a spherical-linear interpolation with another quaterion without "
-"checking if the rotation path is not bigger than 90°."
+"Returns the result of the spherical linear interpolation between this "
+"quaternion and [code]to[/code] by amount [code]weight[/code], but without "
+"checking if the rotation path is not bigger than 90 degrees."
msgstr ""
-#: doc/classes/Quat.xml:182
-msgid "Transforms the vector [code]v[/code] by this quaternion."
+#: doc/classes/Quat.xml:183
+msgid "Returns a vector transformed (multiplied) by this quaternion."
msgstr ""
-#: doc/classes/Quat.xml:188
-msgid "W component of the quaternion."
+#: doc/classes/Quat.xml:189
+msgid ""
+"W component of the quaternion (real part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:191
-msgid "X component of the quaternion."
+#: doc/classes/Quat.xml:193
+msgid ""
+"X component of the quaternion (imaginary [code]i[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:194
-msgid "Y component of the quaternion."
+#: doc/classes/Quat.xml:197
+msgid ""
+"Y component of the quaternion (imaginary [code]j[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:197
-msgid "Z component of the quaternion."
+#: doc/classes/Quat.xml:201
+msgid ""
+"Z component of the quaternion (imaginary [code]k[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:202
+#: doc/classes/Quat.xml:207
msgid ""
-"The identity rotation. Equivalent to an identity matrix. If a vector is "
-"transformed by an identity quaternion, it will not change."
+"The identity quaternion, representing no rotation. Equivalent to an identity "
+"[Basis] matrix. If a vector is transformed by an identity quaternion, it "
+"will not change."
msgstr ""
#: doc/classes/RandomNumberGenerator.xml:4
@@ -40701,7 +41414,8 @@ msgid ""
"collision information immediately instead of waiting for the next "
"[code]_physics_process[/code] call, for example if the ray or its parent has "
"changed state.\n"
-"[b]Note:[/b] [code]enabled == true[/code] is not required for this to work."
+"[b]Note:[/b] [member enabled] does not need to be [code]true[/code] for this "
+"to work."
msgstr ""
#: doc/classes/RayCast2D.xml:54 doc/classes/RayCast3D.xml:55
@@ -40807,7 +41521,8 @@ msgid ""
"Use this method to update the collision information immediately instead of "
"waiting for the next [code]_physics_process[/code] call, for example if the "
"ray or its parent has changed state.\n"
-"[b]Note:[/b] [code]enabled == true[/code] is not required for this to work."
+"[b]Note:[/b] [member enabled] does not need to be [code]true[/code] for this "
+"to work."
msgstr ""
#: doc/classes/RayCast3D.xml:71
@@ -40965,14 +41680,6 @@ msgstr ""
msgid "Returns a larger [Rect2] that contains this [Rect2] and [code]b[/code]."
msgstr ""
-#: doc/classes/Rect2.xml:174 doc/classes/Rect2i.xml:163
-msgid "Ending corner."
-msgstr ""
-
-#: doc/classes/Rect2.xml:177 doc/classes/Rect2i.xml:166
-msgid "Position (starting corner)."
-msgstr ""
-
#: doc/classes/Rect2i.xml:4
msgid "2D axis-aligned bounding box using integer coordinates."
msgstr ""
@@ -41085,22 +41792,22 @@ msgstr ""
msgid ""
"Base class for any object that keeps a reference count. [Resource] and many "
"other helper objects inherit this class.\n"
-"References keep an internal reference counter so that they are automatically "
-"released when no longer in use, and only then. References therefore do not "
-"need to be freed manually with [method Object.free].\n"
+"Unlike [Object]s, References keep an internal reference counter so that they "
+"are automatically released when no longer in use, and only then. References "
+"therefore do not need to be freed manually with [method Object.free].\n"
"In the vast majority of use cases, instantiating and using [Reference]-"
"derived types is all you need to do. The methods provided in this class are "
"only for advanced users, and can cause issues if misused."
msgstr ""
-#: doc/classes/Reference.xml:18
+#: doc/classes/Reference.xml:19
msgid ""
"Initializes the internal reference counter. Use this only if you really know "
"what you are doing.\n"
"Returns whether the initialization was successful."
msgstr ""
-#: doc/classes/Reference.xml:26
+#: doc/classes/Reference.xml:27
msgid ""
"Increments the internal reference counter. Use this only if you really know "
"what you are doing.\n"
@@ -41108,7 +41815,7 @@ msgid ""
"code] otherwise."
msgstr ""
-#: doc/classes/Reference.xml:34
+#: doc/classes/Reference.xml:35
msgid ""
"Decrements the internal reference counter. Use this only if you really know "
"what you are doing.\n"
@@ -41157,14 +41864,14 @@ msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/reflection_probes.html"
msgstr ""
-#: doc/classes/ReflectionProbe.xml:17
+#: doc/classes/ReflectionProbe.xml:23
msgid ""
"If [code]true[/code], enables box projection. This makes reflections look "
"more correct in rectangle-shaped rooms by offsetting the reflection center "
"depending on the camera's location."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:20
+#: doc/classes/ReflectionProbe.xml:26
msgid ""
"Sets the cull mask which determines what objects are drawn by this probe. "
"Every [VisualInstance3D] with a layer included in this cull mask will be "
@@ -41173,78 +41880,56 @@ msgid ""
"rendering cost."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:23
+#: doc/classes/ReflectionProbe.xml:29
msgid ""
"If [code]true[/code], computes shadows in the reflection probe. This makes "
"the reflection probe slower to render; you may want to disable this if using "
"the [constant UPDATE_ALWAYS] [member update_mode]."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:26
+#: doc/classes/ReflectionProbe.xml:32
msgid ""
"The size of the reflection probe. The larger the extents the more space "
"covered by the probe which will lower the perceived resolution. It is best "
"to keep the extents only as large as you need them."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:29
+#: doc/classes/ReflectionProbe.xml:35
msgid ""
"Defines the reflection intensity. Intensity modulates the strength of the "
"reflection."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:32
-msgid ""
-"Sets the ambient light color to be used when this probe is set to [member "
-"interior_enable]."
-msgstr ""
-
-#: doc/classes/ReflectionProbe.xml:35
-msgid ""
-"Sets the contribution value for how much the reflection affects the ambient "
-"light for this reflection probe when set to [member interior_enable]. Useful "
-"so that ambient light matches the color of the room."
-msgstr ""
-
#: doc/classes/ReflectionProbe.xml:38
-msgid ""
-"Sets the energy multiplier for this reflection probe's ambient light "
-"contribution when set to [member interior_enable]."
+msgid "If [code]true[/code], reflections will ignore sky contribution."
msgstr ""
#: doc/classes/ReflectionProbe.xml:41
msgid ""
-"If [code]true[/code], reflections will ignore sky contribution. Ambient "
-"lighting is then controlled by the [code]interior_ambient_*[/code] "
-"properties."
-msgstr ""
-
-#: doc/classes/ReflectionProbe.xml:44
-msgid ""
"Sets the max distance away from the probe an object can be before it is "
"culled."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:47
+#: doc/classes/ReflectionProbe.xml:44
msgid ""
"Sets the origin offset to be used when this reflection probe is in box "
"project mode."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:50
+#: doc/classes/ReflectionProbe.xml:47
msgid ""
"Sets how frequently the probe is updated. Can be [constant UPDATE_ONCE] or "
"[constant UPDATE_ALWAYS]."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:55
+#: doc/classes/ReflectionProbe.xml:52
msgid ""
"Update the probe once on the next frame. The corresponding radiance map will "
"be generated over the following six frames. This is slower to update than "
"[constant UPDATE_ALWAYS] but can result in higher quality reflections."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:58
+#: doc/classes/ReflectionProbe.xml:55
msgid ""
"Update the probe every frame. This is needed when you want to capture "
"dynamic objects. However, it results in an increased render time. Use "
@@ -41274,10 +41959,10 @@ msgid ""
"read by RegEx as [code]\\d+[/code]. Similarly, [code]compile(\"\\\"(?:\\\\\\"
"\\.|[^\\\"])*\\\"\")[/code] would be read as [code]\"(?:\\\\.|[^\"])*\"[/"
"code].\n"
-"Using [method search] you can find the pattern within the given text. If a "
+"Using [method search], you can find the pattern within the given text. If a "
"pattern is found, [RegExMatch] is returned and you can retrieve details of "
-"the results using functions such as [method RegExMatch.get_string] and "
-"[method RegExMatch.get_start].\n"
+"the results using methods such as [method RegExMatch.get_string] and [method "
+"RegExMatch.get_start].\n"
"[codeblock]\n"
"var regex = RegEx.new()\n"
"regex.compile(\"\\\\w-(\\\\d+)\")\n"
@@ -41286,7 +41971,7 @@ msgid ""
" print(result.get_string()) # Would print n-0123\n"
"[/codeblock]\n"
"The results of capturing groups [code]()[/code] can be retrieved by passing "
-"the group number to the various functions in [RegExMatch]. Group 0 is the "
+"the group number to the various methods in [RegExMatch]. Group 0 is the "
"default and will always refer to the entire pattern. In the above example, "
"calling [code]result.get_string(1)[/code] would give you [code]0123[/code].\n"
"This version of RegEx also supports named capturing groups, and the names "
@@ -41307,6 +41992,15 @@ msgid ""
" print(result.get_string(\"digit\"))\n"
"# Would print 01 03 0 3f 42\n"
"[/codeblock]\n"
+"[b]Example of splitting a string using a RegEx:[/b]\n"
+"[codeblock]\n"
+"var regex = RegEx.new()\n"
+"regex.compile(\"\\\\S+\") # Negated whitespace character class.\n"
+"var results = []\n"
+"for match in regex.search_all(\"One Two \\n\\tThree\"):\n"
+" results.push_back(match.get_string())\n"
+"# The `results` array now contains \"One\", \"Two\", \"Three\".\n"
+"[/codeblock]\n"
"[b]Note:[/b] Godot's regex implementation is based on the [url=https://www."
"pcre.org/]PCRE2[/url] library. You can view the full pattern reference "
"[url=https://www.pcre.org/current/doc/html/pcre2pattern.html]here[/url].\n"
@@ -41314,38 +42008,38 @@ msgid ""
"regular expressions online."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:47
+#: modules/regex/doc_classes/RegEx.xml:56
msgid ""
"This method resets the state of the object, as if it was freshly created. "
"Namely, it unassigns the regular expression of this object."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:56
+#: modules/regex/doc_classes/RegEx.xml:65
msgid ""
"Compiles and assign the search pattern to use. Returns [constant OK] if the "
"compilation is successful. If an error is encountered, details are printed "
"to standard output and an error is returned."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:63
+#: modules/regex/doc_classes/RegEx.xml:72
msgid "Returns the number of capturing groups in compiled pattern."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:70
+#: modules/regex/doc_classes/RegEx.xml:79
msgid ""
"Returns an array of names of named capturing groups in the compiled pattern. "
"They are ordered by appearance."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:77
+#: modules/regex/doc_classes/RegEx.xml:86
msgid "Returns the original search pattern that was compiled."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:84
+#: modules/regex/doc_classes/RegEx.xml:93
msgid "Returns whether this object has a valid search pattern assigned."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:97
+#: modules/regex/doc_classes/RegEx.xml:106
msgid ""
"Searches the text for the compiled pattern. Returns a [RegExMatch] container "
"of the first matching result if found, otherwise [code]null[/code]. The "
@@ -41353,7 +42047,7 @@ msgid ""
"and end anchor would be."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:110
+#: modules/regex/doc_classes/RegEx.xml:119
msgid ""
"Searches the text for the compiled pattern. Returns an array of [RegExMatch] "
"containers for each non-overlapping result. If no results were found, an "
@@ -41361,7 +42055,7 @@ msgid ""
"specified without modifying where the start and end anchor would be."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:127
+#: modules/regex/doc_classes/RegEx.xml:136
msgid ""
"Searches the text for the compiled pattern and replaces it with the "
"specified string. Escapes and backreferences such as [code]$1[/code] and "
@@ -42088,7 +42782,7 @@ msgid ""
msgstr ""
#: doc/classes/RenderingServer.xml:1222 doc/classes/RenderingServer.xml:1250
-#: doc/classes/RenderingServer.xml:1527
+#: doc/classes/RenderingServer.xml:1537
msgid "Not implemented in Godot 3.x."
msgstr ""
@@ -42235,30 +42929,30 @@ msgid ""
"OmniLight3D.omni_shadow_mode]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1481
+#: doc/classes/RenderingServer.xml:1491
msgid ""
"Sets the color of the light. Equivalent to [member Light3D.light_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1492
+#: doc/classes/RenderingServer.xml:1502
msgid ""
"Sets the cull mask for this Light3D. Lights only affect objects in the "
"selected layers. Equivalent to [member Light3D.light_cull_mask]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1503
+#: doc/classes/RenderingServer.xml:1513
msgid ""
"If [code]true[/code], light will subtract light instead of adding light. "
"Equivalent to [member Light3D.light_negative]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1516
+#: doc/classes/RenderingServer.xml:1526
msgid ""
"Sets the specified light parameter. See [enum LightParam] for options. "
"Equivalent to [method Light3D.set_param]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1538
+#: doc/classes/RenderingServer.xml:1548
msgid ""
"If [code]true[/code], reverses the backface culling of the mesh. This can be "
"useful when you have a flat mesh that has a light behind it. If you need to "
@@ -42267,29 +42961,25 @@ msgid ""
"to [member Light3D.shadow_reverse_cull_face]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1549
+#: doc/classes/RenderingServer.xml:1559
msgid ""
"If [code]true[/code], light will cast shadows. Equivalent to [member Light3D."
"shadow_enabled]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1560
+#: doc/classes/RenderingServer.xml:1570
msgid ""
"Sets the color of the shadow cast by the light. Equivalent to [member "
"Light3D.shadow_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1571
-msgid "Sets whether GI probes capture light information from this light."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:1584
+#: doc/classes/RenderingServer.xml:1583
msgid ""
"Returns a mesh of a sphere with the given amount of horizontal and vertical "
"subdivisions."
msgstr ""
-#: doc/classes/RenderingServer.xml:1591
+#: doc/classes/RenderingServer.xml:1590
msgid ""
"Creates an empty material and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42298,31 +42988,31 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:1603
+#: doc/classes/RenderingServer.xml:1602
msgid "Returns the value of a certain material's parameter."
msgstr ""
-#: doc/classes/RenderingServer.xml:1614
+#: doc/classes/RenderingServer.xml:1613
msgid "Sets an object's next material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1627
+#: doc/classes/RenderingServer.xml:1626
msgid "Sets a material's parameter."
msgstr ""
-#: doc/classes/RenderingServer.xml:1638
+#: doc/classes/RenderingServer.xml:1637
msgid "Sets a material's render priority."
msgstr ""
-#: doc/classes/RenderingServer.xml:1649
+#: doc/classes/RenderingServer.xml:1648
msgid "Sets a shader material's shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:1678
+#: doc/classes/RenderingServer.xml:1677
msgid "Removes all surfaces from a mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1685
+#: doc/classes/RenderingServer.xml:1684
msgid ""
"Creates a new mesh and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all [code]mesh_*[/"
@@ -42333,58 +43023,58 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:1696
+#: doc/classes/RenderingServer.xml:1695
msgid "Returns a mesh's blend shape count."
msgstr ""
-#: doc/classes/RenderingServer.xml:1705
+#: doc/classes/RenderingServer.xml:1704
msgid "Returns a mesh's blend shape mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:1714
+#: doc/classes/RenderingServer.xml:1713
msgid "Returns a mesh's custom aabb."
msgstr ""
-#: doc/classes/RenderingServer.xml:1723
+#: doc/classes/RenderingServer.xml:1722
msgid "Returns a mesh's number of surfaces."
msgstr ""
-#: doc/classes/RenderingServer.xml:1734
+#: doc/classes/RenderingServer.xml:1733
msgid "Sets a mesh's blend shape mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:1745
+#: doc/classes/RenderingServer.xml:1744
msgid "Sets a mesh's custom aabb."
msgstr ""
-#: doc/classes/RenderingServer.xml:1756
+#: doc/classes/RenderingServer.xml:1755
msgid "Returns a mesh's surface's buffer arrays."
msgstr ""
-#: doc/classes/RenderingServer.xml:1767
+#: doc/classes/RenderingServer.xml:1766
msgid "Returns a mesh's surface's arrays for blend shapes."
msgstr ""
-#: doc/classes/RenderingServer.xml:1782 doc/classes/RenderingServer.xml:1795
+#: doc/classes/RenderingServer.xml:1781 doc/classes/RenderingServer.xml:1794
msgid "Function is unused in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:1806
+#: doc/classes/RenderingServer.xml:1805
msgid "Returns a mesh's surface's material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1819
+#: doc/classes/RenderingServer.xml:1818
msgid "Sets a mesh's surface's material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1834
+#: doc/classes/RenderingServer.xml:1833
msgid ""
"Updates a specific region of a vertex buffer for the specified surface. "
"Warning: this function alters the vertex buffer directly with no safety "
"mechanisms, you can easily corrupt your mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1857
+#: doc/classes/RenderingServer.xml:1856
msgid ""
"Creates a new multimesh on the RenderingServer and returns an [RID] handle. "
"This RID will be used in all [code]multimesh_*[/code] RenderingServer "
@@ -42395,82 +43085,82 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:1868
+#: doc/classes/RenderingServer.xml:1867
msgid ""
"Calculates and returns the axis-aligned bounding box that encloses all "
"instances within the multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1885
+#: doc/classes/RenderingServer.xml:1884
msgid "Returns the number of instances allocated for this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1894
+#: doc/classes/RenderingServer.xml:1893
msgid ""
"Returns the RID of the mesh that will be used in drawing this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1903
+#: doc/classes/RenderingServer.xml:1902
msgid "Returns the number of visible instances for this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1914
+#: doc/classes/RenderingServer.xml:1913
msgid "Returns the color by which the specified instance will be modulated."
msgstr ""
-#: doc/classes/RenderingServer.xml:1925
+#: doc/classes/RenderingServer.xml:1924
msgid "Returns the custom data associated with the specified instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:1936
+#: doc/classes/RenderingServer.xml:1935
msgid "Returns the [Transform] of the specified instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:1947
+#: doc/classes/RenderingServer.xml:1946
msgid ""
"Returns the [Transform2D] of the specified instance. For use when the "
"multimesh is set to use 2D transforms."
msgstr ""
-#: doc/classes/RenderingServer.xml:1960
+#: doc/classes/RenderingServer.xml:1959
msgid ""
"Sets the color by which this instance will be modulated. Equivalent to "
"[method MultiMesh.set_instance_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1973
+#: doc/classes/RenderingServer.xml:1972
msgid ""
"Sets the custom data for this instance. Custom data is passed as a [Color], "
"but is interpreted as a [code]vec4[/code] in the shader. Equivalent to "
"[method MultiMesh.set_instance_custom_data]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1986
+#: doc/classes/RenderingServer.xml:1985
msgid ""
"Sets the [Transform] for this instance. Equivalent to [method MultiMesh."
"set_instance_transform]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1999
+#: doc/classes/RenderingServer.xml:1998
msgid ""
"Sets the [Transform2D] for this instance. For use when multimesh is used in "
"2D. Equivalent to [method MultiMesh.set_instance_transform_2d]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2020
+#: doc/classes/RenderingServer.xml:2019
msgid ""
"Sets the mesh to be drawn by the multimesh. Equivalent to [member MultiMesh."
"mesh]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2031
+#: doc/classes/RenderingServer.xml:2030
msgid ""
"Sets the number of instances visible at a given time. If -1, all instances "
"that have been allocated are drawn. Equivalent to [member MultiMesh."
"visible_instance_count]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2038
+#: doc/classes/RenderingServer.xml:2037
msgid ""
"Creates a new omni light and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID can be used in most "
@@ -42481,7 +43171,7 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2047
+#: doc/classes/RenderingServer.xml:2046
msgid ""
"Creates a particle system and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42492,23 +43182,23 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2058
+#: doc/classes/RenderingServer.xml:2057
msgid ""
"Calculates and returns the axis-aligned bounding box that contains all the "
"particles. Equivalent to [method GPUParticles3D.capture_aabb]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2067
+#: doc/classes/RenderingServer.xml:2066
msgid "Returns [code]true[/code] if particles are currently set to emitting."
msgstr ""
-#: doc/classes/RenderingServer.xml:2076
+#: doc/classes/RenderingServer.xml:2075
msgid ""
"Returns [code]true[/code] if particles are not emitting and particles are "
"set to inactive."
msgstr ""
-#: doc/classes/RenderingServer.xml:2085
+#: doc/classes/RenderingServer.xml:2084
msgid ""
"Add particle system to list of particle systems that need to be updated. "
"Update will take place on the next frame, or on the next call to [method "
@@ -42516,121 +43206,121 @@ msgid ""
"instances_cull_ray]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2094
+#: doc/classes/RenderingServer.xml:2093
msgid ""
"Reset the particles on the next update. Equivalent to [method GPUParticles3D."
"restart]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2105
+#: doc/classes/RenderingServer.xml:2104
msgid ""
"Sets the number of particles to be drawn and allocates the memory for them. "
"Equivalent to [member GPUParticles3D.amount]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2116
+#: doc/classes/RenderingServer.xml:2115
msgid ""
"Sets a custom axis-aligned bounding box for the particle system. Equivalent "
"to [member GPUParticles3D.visibility_aabb]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2127
+#: doc/classes/RenderingServer.xml:2126
msgid ""
"Sets the draw order of the particles to one of the named enums from [enum "
"ParticlesDrawOrder]. See [enum ParticlesDrawOrder] for options. Equivalent "
"to [member GPUParticles3D.draw_order]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2140
+#: doc/classes/RenderingServer.xml:2139
msgid ""
"Sets the mesh to be used for the specified draw pass. Equivalent to [member "
"GPUParticles3D.draw_pass_1], [member GPUParticles3D.draw_pass_2], [member "
"GPUParticles3D.draw_pass_3], and [member GPUParticles3D.draw_pass_4]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2151
+#: doc/classes/RenderingServer.xml:2150
msgid ""
"Sets the number of draw passes to use. Equivalent to [member GPUParticles3D."
"draw_passes]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2162
+#: doc/classes/RenderingServer.xml:2161
msgid ""
"Sets the [Transform] that will be used by the particles when they first emit."
msgstr ""
-#: doc/classes/RenderingServer.xml:2173
+#: doc/classes/RenderingServer.xml:2172
msgid ""
"If [code]true[/code], particles will emit over time. Setting to false does "
"not reset the particles, but only stops their emission. Equivalent to "
"[member GPUParticles3D.emitting]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2184
+#: doc/classes/RenderingServer.xml:2183
msgid ""
"Sets the explosiveness ratio. Equivalent to [member GPUParticles3D."
"explosiveness]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2195
+#: doc/classes/RenderingServer.xml:2194
msgid ""
"Sets the frame rate that the particle system rendering will be fixed to. "
"Equivalent to [member GPUParticles3D.fixed_fps]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2206
+#: doc/classes/RenderingServer.xml:2205
msgid ""
"If [code]true[/code], uses fractional delta which smooths the movement of "
"the particles. Equivalent to [member GPUParticles3D.fract_delta]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2217
+#: doc/classes/RenderingServer.xml:2216
msgid ""
"Sets the lifetime of each particle in the system. Equivalent to [member "
"GPUParticles3D.lifetime]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2228
+#: doc/classes/RenderingServer.xml:2227
msgid ""
"If [code]true[/code], particles will emit once and then stop. Equivalent to "
"[member GPUParticles3D.one_shot]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2239
+#: doc/classes/RenderingServer.xml:2238
msgid ""
"Sets the preprocess time for the particles animation. This lets you delay "
"starting an animation until after the particles have begun emitting. "
"Equivalent to [member GPUParticles3D.preprocess]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2250
+#: doc/classes/RenderingServer.xml:2249
msgid ""
"Sets the material for processing the particles. Note: this is not the "
"material used to draw the materials. Equivalent to [member GPUParticles3D."
"process_material]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2261
+#: doc/classes/RenderingServer.xml:2260
msgid ""
"Sets the emission randomness ratio. This randomizes the emission of "
"particles within their phase. Equivalent to [member GPUParticles3D."
"randomness]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2272
+#: doc/classes/RenderingServer.xml:2271
msgid ""
"Sets the speed scale of the particle system. Equivalent to [member "
"GPUParticles3D.speed_scale]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2283
+#: doc/classes/RenderingServer.xml:2282
msgid ""
"If [code]true[/code], particles use local coordinates. If [code]false[/code] "
"they use global coordinates. Equivalent to [member GPUParticles3D."
"local_coords]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2290
+#: doc/classes/RenderingServer.xml:2289
msgid ""
"Creates a reflection probe and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42641,85 +43331,64 @@ msgid ""
"[method instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2303
+#: doc/classes/RenderingServer.xml:2332
msgid ""
"If [code]true[/code], reflections will ignore sky contribution. Equivalent "
-"to [member ReflectionProbe.interior_enable]."
+"to [member ReflectionProbe.interior]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2314
+#: doc/classes/RenderingServer.xml:2343
msgid ""
"Sets the render cull mask for this reflection probe. Only instances with a "
"matching cull mask will be rendered by this probe. Equivalent to [member "
"ReflectionProbe.cull_mask]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2325
+#: doc/classes/RenderingServer.xml:2354
msgid ""
"If [code]true[/code], uses box projection. This can make reflections look "
"more correct in certain situations. Equivalent to [member ReflectionProbe."
"box_projection]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2336
+#: doc/classes/RenderingServer.xml:2365
msgid ""
"If [code]true[/code], computes shadows in the reflection probe. This makes "
"the reflection much slower to compute. Equivalent to [member ReflectionProbe."
"enable_shadows]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2347
+#: doc/classes/RenderingServer.xml:2376
msgid ""
"Sets the size of the area that the reflection probe will capture. Equivalent "
"to [member ReflectionProbe.extents]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2358
+#: doc/classes/RenderingServer.xml:2387
msgid ""
"Sets the intensity of the reflection probe. Intensity modulates the strength "
"of the reflection. Equivalent to [member ReflectionProbe.intensity]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2369
-msgid ""
-"Sets the ambient light color for this reflection probe when set to interior "
-"mode. Equivalent to [member ReflectionProbe.interior_ambient_color]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2380
-msgid ""
-"Sets the energy multiplier for this reflection probes ambient light "
-"contribution when set to interior mode. Equivalent to [member "
-"ReflectionProbe.interior_ambient_energy]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2391
-msgid ""
-"Sets the contribution value for how much the reflection affects the ambient "
-"light for this reflection probe when set to interior mode. Useful so that "
-"ambient light matches the color of the room. Equivalent to [member "
-"ReflectionProbe.interior_ambient_contrib]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2402
+#: doc/classes/RenderingServer.xml:2398
msgid ""
"Sets the max distance away from the probe an object can be before it is "
"culled. Equivalent to [member ReflectionProbe.max_distance]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2413
+#: doc/classes/RenderingServer.xml:2409
msgid ""
"Sets the origin offset to be used when this reflection probe is in box "
"project mode. Equivalent to [member ReflectionProbe.origin_offset]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2424
+#: doc/classes/RenderingServer.xml:2420
msgid ""
"Sets how often the reflection probe updates. Can either be once or every "
"frame. See [enum ReflectionProbeUpdateMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2437
+#: doc/classes/RenderingServer.xml:2433
msgid ""
"Schedules a callback to the corresponding named [code]method[/code] on "
"[code]where[/code] after a frame has been drawn.\n"
@@ -42727,7 +43396,7 @@ msgid ""
"[code]userdata[/code]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2445
+#: doc/classes/RenderingServer.xml:2441
msgid ""
"Creates a scenario and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all "
@@ -42737,24 +43406,24 @@ msgid ""
"The scenario is the 3D world that all the visual instances exist in."
msgstr ""
-#: doc/classes/RenderingServer.xml:2458
+#: doc/classes/RenderingServer.xml:2454
msgid ""
"Sets the [enum ScenarioDebugMode] for this scenario. See [enum "
"ScenarioDebugMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2469
+#: doc/classes/RenderingServer.xml:2465
msgid "Sets the environment that will be used with this scenario."
msgstr ""
-#: doc/classes/RenderingServer.xml:2480
+#: doc/classes/RenderingServer.xml:2476
msgid ""
"Sets the fallback environment to be used by this scenario. The fallback "
"environment is used if no environment is set. Internally, this is used by "
"the editor to provide a default environment."
msgstr ""
-#: doc/classes/RenderingServer.xml:2495
+#: doc/classes/RenderingServer.xml:2491
msgid ""
"Sets a boot image. The color defines the background color. If [code]scale[/"
"code] is [code]true[/code], the image will be scaled to fit the screen size. "
@@ -42763,19 +43432,19 @@ msgid ""
"the image will be scaled with nearest-neighbor interpolation."
msgstr ""
-#: doc/classes/RenderingServer.xml:2504
+#: doc/classes/RenderingServer.xml:2500
msgid ""
"If [code]true[/code], the engine will generate wireframes for use with the "
"wireframe debug mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:2513
+#: doc/classes/RenderingServer.xml:2509
msgid ""
"Sets the default clear color which is used when a specific clear color has "
"not been selected."
msgstr ""
-#: doc/classes/RenderingServer.xml:2520
+#: doc/classes/RenderingServer.xml:2516
msgid ""
"Creates an empty shader and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42784,47 +43453,47 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2530
+#: doc/classes/RenderingServer.xml:2526
msgid "Returns a shader's code."
msgstr ""
-#: doc/classes/RenderingServer.xml:2541
+#: doc/classes/RenderingServer.xml:2537
msgid "Returns a default texture from a shader searched by name."
msgstr ""
-#: doc/classes/RenderingServer.xml:2560
+#: doc/classes/RenderingServer.xml:2556
msgid "Returns the parameters of a shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:2571
+#: doc/classes/RenderingServer.xml:2567
msgid "Sets a shader's code."
msgstr ""
-#: doc/classes/RenderingServer.xml:2584
+#: doc/classes/RenderingServer.xml:2580
msgid "Sets a shader's default texture. Overwrites the texture given by name."
msgstr ""
-#: doc/classes/RenderingServer.xml:2597
+#: doc/classes/RenderingServer.xml:2593
msgid "Allocates the GPU buffers for this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2608
+#: doc/classes/RenderingServer.xml:2604
msgid "Returns the [Transform] set for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2619
+#: doc/classes/RenderingServer.xml:2615
msgid "Returns the [Transform2D] set for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2632
+#: doc/classes/RenderingServer.xml:2628
msgid "Sets the [Transform] for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2645
+#: doc/classes/RenderingServer.xml:2641
msgid "Sets the [Transform2D] for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2652
+#: doc/classes/RenderingServer.xml:2648
msgid ""
"Creates a skeleton and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all "
@@ -42833,11 +43502,11 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2662
+#: doc/classes/RenderingServer.xml:2658
msgid "Returns the number of bones allocated for this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2669
+#: doc/classes/RenderingServer.xml:2665
msgid ""
"Creates an empty sky and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all [code]sky_*[/"
@@ -42846,13 +43515,13 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2681
+#: doc/classes/RenderingServer.xml:2677
msgid ""
"Sets the material that the sky uses to render the background and reflection "
"maps."
msgstr ""
-#: doc/classes/RenderingServer.xml:2688
+#: doc/classes/RenderingServer.xml:2684
msgid ""
"Creates a spot light and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID can be used in most [code]light_*[/"
@@ -42863,15 +43532,15 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2717
+#: doc/classes/RenderingServer.xml:2713
msgid "Sets a viewport's camera."
msgstr ""
-#: doc/classes/RenderingServer.xml:2728
+#: doc/classes/RenderingServer.xml:2724
msgid "Sets a viewport's canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:2741
+#: doc/classes/RenderingServer.xml:2737
msgid ""
"Copies the viewport to a region of the screen specified by [code]rect[/"
"code]. If [method viewport_set_render_direct_to_screen] is [code]true[/"
@@ -42893,7 +43562,7 @@ msgid ""
"viewport_set_render_direct_to_screen]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2755
+#: doc/classes/RenderingServer.xml:2751
msgid ""
"Creates an empty viewport and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42902,72 +43571,72 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2767
+#: doc/classes/RenderingServer.xml:2763
msgid ""
"Returns a viewport's render information. For options, see the [enum "
"ViewportRenderInfo] constants."
msgstr ""
-#: doc/classes/RenderingServer.xml:2776
+#: doc/classes/RenderingServer.xml:2772
msgid "Returns the viewport's last rendered frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:2787
+#: doc/classes/RenderingServer.xml:2783
msgid "Detaches a viewport from a canvas and vice versa."
msgstr ""
-#: doc/classes/RenderingServer.xml:2798
+#: doc/classes/RenderingServer.xml:2794
msgid "If [code]true[/code], sets the viewport active, else sets it inactive."
msgstr ""
-#: doc/classes/RenderingServer.xml:2813
+#: doc/classes/RenderingServer.xml:2809
msgid ""
"Sets the stacking order for a viewport's canvas.\n"
"[code]layer[/code] is the actual canvas layer, while [code]sublayer[/code] "
"specifies the stacking order of the canvas among those in the same layer."
msgstr ""
-#: doc/classes/RenderingServer.xml:2827
+#: doc/classes/RenderingServer.xml:2823
msgid "Sets the transformation of a viewport's canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:2838
+#: doc/classes/RenderingServer.xml:2834
msgid ""
"Sets the clear mode of a viewport. See [enum ViewportClearMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2849
+#: doc/classes/RenderingServer.xml:2845
msgid ""
"Sets the debug draw mode of a viewport. See [enum ViewportDebugDraw] for "
"options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2860
+#: doc/classes/RenderingServer.xml:2856
msgid ""
"If [code]true[/code], rendering of a viewport's environment is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:2871
+#: doc/classes/RenderingServer.xml:2867
msgid "Sets the viewport's global transformation matrix."
msgstr ""
-#: doc/classes/RenderingServer.xml:2882
+#: doc/classes/RenderingServer.xml:2878
msgid "If [code]true[/code], the viewport's canvas is not rendered."
msgstr ""
-#: doc/classes/RenderingServer.xml:2893
+#: doc/classes/RenderingServer.xml:2889
msgid "Currently unimplemented in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:2904
+#: doc/classes/RenderingServer.xml:2900
msgid "Sets the anti-aliasing mode. See [enum ViewportMSAA] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2915
+#: doc/classes/RenderingServer.xml:2911
msgid "Sets the viewport's parent to another viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:2926
+#: doc/classes/RenderingServer.xml:2922
msgid ""
"If [code]true[/code], render the contents of the viewport directly to "
"screen. This allows a low-level optimization where you can skip drawing a "
@@ -42983,455 +43652,455 @@ msgid ""
"significantly larger than the window size."
msgstr ""
-#: doc/classes/RenderingServer.xml:2937
+#: doc/classes/RenderingServer.xml:2933
msgid ""
"Sets a viewport's scenario.\n"
"The scenario contains information about the [enum ScenarioDebugMode], "
"environment information, reflection atlas etc."
msgstr ""
-#: doc/classes/RenderingServer.xml:2951
+#: doc/classes/RenderingServer.xml:2947
msgid "Sets the shadow atlas quadrant's subdivision."
msgstr ""
-#: doc/classes/RenderingServer.xml:2962
+#: doc/classes/RenderingServer.xml:2958
msgid ""
"Sets the size of the shadow atlas's images (used for omni and spot lights). "
"The value will be rounded up to the nearest power of 2."
msgstr ""
-#: doc/classes/RenderingServer.xml:2975
+#: doc/classes/RenderingServer.xml:2971
msgid "Sets the viewport's width and height."
msgstr ""
-#: doc/classes/RenderingServer.xml:2986
+#: doc/classes/RenderingServer.xml:2982
msgid ""
"If [code]true[/code], the viewport renders its background as transparent."
msgstr ""
-#: doc/classes/RenderingServer.xml:2997
+#: doc/classes/RenderingServer.xml:2993
msgid ""
"Sets when the viewport should be updated. See [enum ViewportUpdateMode] "
"constants for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:3008
+#: doc/classes/RenderingServer.xml:3004
msgid ""
"If [code]true[/code], the viewport uses augmented or virtual reality "
"technologies. See [XRInterface]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3014
+#: doc/classes/RenderingServer.xml:3010
msgid ""
"If [code]false[/code], disables rendering completely, but the engine logic "
"is still being processed. You can call [method force_draw] to draw a frame "
"even with rendering disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3020
+#: doc/classes/RenderingServer.xml:3016
msgid ""
"Emitted at the end of the frame, after the RenderingServer has finished "
"updating all the Viewports."
msgstr ""
-#: doc/classes/RenderingServer.xml:3025
+#: doc/classes/RenderingServer.xml:3021
msgid ""
"Emitted at the beginning of the frame, before the RenderingServer updates "
"all the Viewports."
msgstr ""
-#: doc/classes/RenderingServer.xml:3031
+#: doc/classes/RenderingServer.xml:3027
msgid "Marks an error that shows that the index array is empty."
msgstr ""
-#: doc/classes/RenderingServer.xml:3034
+#: doc/classes/RenderingServer.xml:3030
msgid "Number of weights/bones per vertex."
msgstr ""
-#: doc/classes/RenderingServer.xml:3037
+#: doc/classes/RenderingServer.xml:3033
msgid "The minimum Z-layer for canvas items."
msgstr ""
-#: doc/classes/RenderingServer.xml:3040
+#: doc/classes/RenderingServer.xml:3036
msgid "The maximum Z-layer for canvas items."
msgstr ""
-#: doc/classes/RenderingServer.xml:3043
+#: doc/classes/RenderingServer.xml:3039
msgid ""
"Max number of glow levels that can be used with glow post-process effect."
msgstr ""
-#: doc/classes/RenderingServer.xml:3046
+#: doc/classes/RenderingServer.xml:3042
msgid "Unused enum in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:3067
+#: doc/classes/RenderingServer.xml:3063
msgid "Shader is a 3D shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3070
+#: doc/classes/RenderingServer.xml:3066
msgid "Shader is a 2D shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3073
+#: doc/classes/RenderingServer.xml:3069
msgid "Shader is a particle shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3076
+#: doc/classes/RenderingServer.xml:3072
msgid "Shader is a sky shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3079
+#: doc/classes/RenderingServer.xml:3075
msgid "Represents the size of the [enum ShaderMode] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3082
+#: doc/classes/RenderingServer.xml:3078
msgid "The minimum renderpriority of all materials."
msgstr ""
-#: doc/classes/RenderingServer.xml:3085
+#: doc/classes/RenderingServer.xml:3081
msgid "The maximum renderpriority of all materials."
msgstr ""
-#: doc/classes/RenderingServer.xml:3088
+#: doc/classes/RenderingServer.xml:3084
msgid "Array is a vertex array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3091
+#: doc/classes/RenderingServer.xml:3087
msgid "Array is a normal array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3094
+#: doc/classes/RenderingServer.xml:3090
msgid "Array is a tangent array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3097
+#: doc/classes/RenderingServer.xml:3093
msgid "Array is a color array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3100
+#: doc/classes/RenderingServer.xml:3096
msgid "Array is an UV coordinates array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3103
+#: doc/classes/RenderingServer.xml:3099
msgid "Array is an UV coordinates array for the second UV coordinates."
msgstr ""
-#: doc/classes/RenderingServer.xml:3106
+#: doc/classes/RenderingServer.xml:3102
msgid "Array contains bone information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3109
+#: doc/classes/RenderingServer.xml:3105
msgid "Array is weight information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3112
+#: doc/classes/RenderingServer.xml:3108
msgid "Array is index array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3118
+#: doc/classes/RenderingServer.xml:3114
msgid "Flag used to mark a vertex array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3121
+#: doc/classes/RenderingServer.xml:3117
msgid "Flag used to mark a normal array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3124
+#: doc/classes/RenderingServer.xml:3120
msgid "Flag used to mark a tangent array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3127
+#: doc/classes/RenderingServer.xml:3123
msgid "Flag used to mark a color array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3130
+#: doc/classes/RenderingServer.xml:3126
msgid "Flag used to mark an UV coordinates array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3133
+#: doc/classes/RenderingServer.xml:3129
msgid ""
"Flag used to mark an UV coordinates array for the second UV coordinates."
msgstr ""
-#: doc/classes/RenderingServer.xml:3136
+#: doc/classes/RenderingServer.xml:3132
msgid "Flag used to mark a bone information array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3139
+#: doc/classes/RenderingServer.xml:3135
msgid "Flag used to mark a weights array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3142
+#: doc/classes/RenderingServer.xml:3138
msgid "Flag used to mark an index array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3171
+#: doc/classes/RenderingServer.xml:3167
msgid "Primitive to draw consists of points."
msgstr ""
-#: doc/classes/RenderingServer.xml:3174
+#: doc/classes/RenderingServer.xml:3170
msgid "Primitive to draw consists of lines."
msgstr ""
-#: doc/classes/RenderingServer.xml:3177
+#: doc/classes/RenderingServer.xml:3173
msgid "Primitive to draw consists of a line strip from start to end."
msgstr ""
-#: doc/classes/RenderingServer.xml:3180
+#: doc/classes/RenderingServer.xml:3176
msgid "Primitive to draw consists of triangles."
msgstr ""
-#: doc/classes/RenderingServer.xml:3183
+#: doc/classes/RenderingServer.xml:3179
msgid ""
"Primitive to draw consists of a triangle strip (the last 3 vertices are "
"always combined to make a triangle)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3186
+#: doc/classes/RenderingServer.xml:3182
msgid "Represents the size of the [enum PrimitiveType] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3195
+#: doc/classes/RenderingServer.xml:3191
msgid "Use [Transform2D] to store MultiMesh transform."
msgstr ""
-#: doc/classes/RenderingServer.xml:3198
+#: doc/classes/RenderingServer.xml:3194
msgid "Use [Transform] to store MultiMesh transform."
msgstr ""
-#: doc/classes/RenderingServer.xml:3201
+#: doc/classes/RenderingServer.xml:3197
msgid "Is a directional (sun) light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3204
+#: doc/classes/RenderingServer.xml:3200
msgid "Is an omni light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3207
+#: doc/classes/RenderingServer.xml:3203
msgid "Is a spot light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3210
+#: doc/classes/RenderingServer.xml:3206
msgid "The light's energy."
msgstr ""
-#: doc/classes/RenderingServer.xml:3215
+#: doc/classes/RenderingServer.xml:3211
msgid "The light's influence on specularity."
msgstr ""
-#: doc/classes/RenderingServer.xml:3218
+#: doc/classes/RenderingServer.xml:3214
msgid "The light's range."
msgstr ""
-#: doc/classes/RenderingServer.xml:3221
+#: doc/classes/RenderingServer.xml:3217
msgid ""
"The size of the light when using spot light or omni light. The angular size "
"of the light when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3224
+#: doc/classes/RenderingServer.xml:3220
msgid "The light's attenuation."
msgstr ""
-#: doc/classes/RenderingServer.xml:3227
+#: doc/classes/RenderingServer.xml:3223
msgid "The spotlight's angle."
msgstr ""
-#: doc/classes/RenderingServer.xml:3230
+#: doc/classes/RenderingServer.xml:3226
msgid "The spotlight's attenuation."
msgstr ""
-#: doc/classes/RenderingServer.xml:3233
+#: doc/classes/RenderingServer.xml:3229
msgid "Max distance that shadows will be rendered."
msgstr ""
-#: doc/classes/RenderingServer.xml:3236
+#: doc/classes/RenderingServer.xml:3232
msgid "Proportion of shadow atlas occupied by the first split."
msgstr ""
-#: doc/classes/RenderingServer.xml:3239
+#: doc/classes/RenderingServer.xml:3235
msgid "Proportion of shadow atlas occupied by the second split."
msgstr ""
-#: doc/classes/RenderingServer.xml:3242
+#: doc/classes/RenderingServer.xml:3238
msgid ""
"Proportion of shadow atlas occupied by the third split. The fourth split "
"occupies the rest."
msgstr ""
-#: doc/classes/RenderingServer.xml:3245
+#: doc/classes/RenderingServer.xml:3241
msgid ""
"Proportion of shadow max distance where the shadow will start to fade out."
msgstr ""
-#: doc/classes/RenderingServer.xml:3248
+#: doc/classes/RenderingServer.xml:3244
msgid ""
"Normal bias used to offset shadow lookup by object normal. Can be used to "
"fix self-shadowing artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3251
+#: doc/classes/RenderingServer.xml:3247
msgid "Bias the shadow lookup to fix self-shadowing artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3257
+#: doc/classes/RenderingServer.xml:3253
msgid ""
"Blurs the edges of the shadow. Can be used to hide pixel artifacts in low "
"resolution shadow maps. A high value can make shadows appear grainy and can "
"cause other unwanted artifacts. Try to keep as near default as possible."
msgstr ""
-#: doc/classes/RenderingServer.xml:3262
+#: doc/classes/RenderingServer.xml:3258
msgid "Represents the size of the [enum LightParam] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3265
+#: doc/classes/RenderingServer.xml:3267
msgid "Use a dual paraboloid shadow map for omni lights."
msgstr ""
-#: doc/classes/RenderingServer.xml:3268
+#: doc/classes/RenderingServer.xml:3270
msgid ""
"Use a cubemap shadow map for omni lights. Slower but better quality than "
"dual paraboloid."
msgstr ""
-#: doc/classes/RenderingServer.xml:3271
+#: doc/classes/RenderingServer.xml:3273
msgid "Use orthogonal shadow projection for directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3274
+#: doc/classes/RenderingServer.xml:3276
msgid "Use 2 splits for shadow projection when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3277
+#: doc/classes/RenderingServer.xml:3279
msgid "Use 4 splits for shadow projection when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3280
+#: doc/classes/RenderingServer.xml:3282
msgid ""
"Keeps shadows stable as camera moves but has lower effective resolution."
msgstr ""
-#: doc/classes/RenderingServer.xml:3283
+#: doc/classes/RenderingServer.xml:3285
msgid ""
"Optimize use of shadow maps, increasing the effective resolution. But may "
"result in shadows moving or flickering slightly."
msgstr ""
-#: doc/classes/RenderingServer.xml:3286
+#: doc/classes/RenderingServer.xml:3288
msgid "Reflection probe will update reflections once and then stop."
msgstr ""
-#: doc/classes/RenderingServer.xml:3289
+#: doc/classes/RenderingServer.xml:3291
msgid ""
"Reflection probe will update each frame. This mode is necessary to capture "
"moving objects."
msgstr ""
-#: doc/classes/RenderingServer.xml:3302
+#: doc/classes/RenderingServer.xml:3310
msgid "Draw particles in the order that they appear in the particles array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3305
+#: doc/classes/RenderingServer.xml:3313
msgid "Sort particles based on their lifetime."
msgstr ""
-#: doc/classes/RenderingServer.xml:3308
+#: doc/classes/RenderingServer.xml:3316
msgid "Sort particles based on their distance to the camera."
msgstr ""
-#: doc/classes/RenderingServer.xml:3311
+#: doc/classes/RenderingServer.xml:3319
msgid "Do not update the viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:3314
+#: doc/classes/RenderingServer.xml:3322
msgid "Update the viewport once then set to disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3317
+#: doc/classes/RenderingServer.xml:3325
msgid "Update the viewport whenever it is visible."
msgstr ""
-#: doc/classes/RenderingServer.xml:3322
+#: doc/classes/RenderingServer.xml:3330
msgid "Always update the viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:3325
+#: doc/classes/RenderingServer.xml:3333
msgid "The viewport is always cleared before drawing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3328
+#: doc/classes/RenderingServer.xml:3336
msgid "The viewport is never cleared before drawing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3331
+#: doc/classes/RenderingServer.xml:3339
msgid ""
"The viewport is cleared once, then the clear mode is set to [constant "
"VIEWPORT_CLEAR_NEVER]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3334
+#: doc/classes/RenderingServer.xml:3342
msgid "Multisample antialiasing is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3337
+#: doc/classes/RenderingServer.xml:3345
msgid "Multisample antialiasing uses 2 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3340
+#: doc/classes/RenderingServer.xml:3348
msgid "Multisample antialiasing uses 4 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3343
+#: doc/classes/RenderingServer.xml:3351
msgid "Multisample antialiasing uses 8 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3346
+#: doc/classes/RenderingServer.xml:3354
msgid "Multisample antialiasing uses 16 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3357
+#: doc/classes/RenderingServer.xml:3365
msgid "Number of objects drawn in a single frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3360
+#: doc/classes/RenderingServer.xml:3368
msgid "Number of vertices drawn in a single frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3363
+#: doc/classes/RenderingServer.xml:3371
msgid "Number of material changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3366
+#: doc/classes/RenderingServer.xml:3374
msgid "Number of shader changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3369
+#: doc/classes/RenderingServer.xml:3377
msgid "Number of surface changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3372
+#: doc/classes/RenderingServer.xml:3380
msgid "Number of draw calls during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3375
+#: doc/classes/RenderingServer.xml:3383
msgid "Represents the size of the [enum ViewportRenderInfo] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3378
+#: doc/classes/RenderingServer.xml:3386
msgid "Debug draw is disabled. Default setting."
msgstr ""
-#: doc/classes/RenderingServer.xml:3381 doc/classes/Viewport.xml:348
+#: doc/classes/RenderingServer.xml:3389 doc/classes/Viewport.xml:348
msgid "Objects are displayed without light information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3384
+#: doc/classes/RenderingServer.xml:3392
msgid "Objects are displayed with only light information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3387 doc/classes/Viewport.xml:353
+#: doc/classes/RenderingServer.xml:3395 doc/classes/Viewport.xml:353
msgid ""
"Objects are displayed semi-transparent with additive blending so you can see "
"where they are drawing over top of one another. A higher overdraw means you "
@@ -43439,41 +44108,41 @@ msgid ""
"others."
msgstr ""
-#: doc/classes/RenderingServer.xml:3390
+#: doc/classes/RenderingServer.xml:3398
msgid "Debug draw draws objects in wireframe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3393
+#: doc/classes/RenderingServer.xml:3401
msgid ""
"Normal buffer is drawn instead of regular scene so you can see the per-pixel "
"normals that will be used by post-processing effects."
msgstr ""
-#: doc/classes/RenderingServer.xml:3396 doc/classes/Viewport.xml:361
+#: doc/classes/RenderingServer.xml:3404 doc/classes/Viewport.xml:361
msgid "Objects are displayed with only the albedo value from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3399 doc/classes/Viewport.xml:364
+#: doc/classes/RenderingServer.xml:3407 doc/classes/Viewport.xml:364
msgid "Objects are displayed with only the lighting value from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3402 doc/classes/Viewport.xml:367
+#: doc/classes/RenderingServer.xml:3410 doc/classes/Viewport.xml:367
msgid "Objects are displayed with only the emission color from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3405 doc/classes/Viewport.xml:370
+#: doc/classes/RenderingServer.xml:3413 doc/classes/Viewport.xml:370
msgid ""
"Draws the shadow atlas that stores shadows from [OmniLight3D]s and "
"[SpotLight3D]s in the upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3408 doc/classes/Viewport.xml:373
+#: doc/classes/RenderingServer.xml:3416 doc/classes/Viewport.xml:373
msgid ""
"Draws the shadow atlas that stores shadows from [DirectionalLight3D]s in the "
"upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3413
+#: doc/classes/RenderingServer.xml:3421
msgid ""
"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 "
@@ -43481,21 +44150,14 @@ msgid ""
"your [WorldEnvironment]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3416 doc/classes/Viewport.xml:381
-msgid ""
-"Draws the roughness limiter post process over the Viewport so you can see "
-"where it has an effect. It must be enabled in [member ProjectSettings."
-"rendering/quality/screen_filters/screen_space_roughness_limiter] to work."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:3419
+#: doc/classes/RenderingServer.xml:3424
msgid ""
"Colors each PSSM split for the [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."
msgstr ""
-#: doc/classes/RenderingServer.xml:3424
+#: doc/classes/RenderingServer.xml:3435
msgid ""
"Uses high quality importance sampling to process the radiance map. In "
"general, this results in much higher quality than [constant Sky."
@@ -43506,7 +44168,7 @@ msgid ""
"ggx_samples]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3427
+#: doc/classes/RenderingServer.xml:3438
msgid ""
"Uses the fast filtering algorithm to process the radiance map. In general "
"this results in lower quality, but substantially faster run times.\n"
@@ -43514,347 +44176,347 @@ msgid ""
"[member Sky.radiance_size] must be set to [constant Sky.RADIANCE_SIZE_256]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3431
+#: doc/classes/RenderingServer.xml:3442
msgid "Use the clear color as background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3434
+#: doc/classes/RenderingServer.xml:3445
msgid "Use a specified color as the background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3437
+#: doc/classes/RenderingServer.xml:3448
msgid "Use a sky resource for the background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3440
+#: doc/classes/RenderingServer.xml:3451
msgid ""
"Use a specified canvas layer as the background. This can be useful for "
"instantiating a 2D scene in a 3D world."
msgstr ""
-#: doc/classes/RenderingServer.xml:3443
+#: doc/classes/RenderingServer.xml:3454
msgid ""
"Do not clear the background, use whatever was rendered last frame as the "
"background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3449
+#: doc/classes/RenderingServer.xml:3460
msgid "Represents the size of the [enum EnvironmentBG] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3488
+#: doc/classes/RenderingServer.xml:3499
msgid "Output color as they came in."
msgstr ""
-#: doc/classes/RenderingServer.xml:3491
+#: doc/classes/RenderingServer.xml:3502
msgid "Use the Reinhard tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3494
+#: doc/classes/RenderingServer.xml:3505
msgid "Use the filmic tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3497
+#: doc/classes/RenderingServer.xml:3508
msgid "Use the ACES tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3508
+#: doc/classes/RenderingServer.xml:3519
msgid "Disables the blur set for SSAO. Will make SSAO look noisier."
msgstr ""
-#: doc/classes/RenderingServer.xml:3511
+#: doc/classes/RenderingServer.xml:3522
msgid "Perform a 1x1 blur on the SSAO output."
msgstr ""
-#: doc/classes/RenderingServer.xml:3514
+#: doc/classes/RenderingServer.xml:3525
msgid "Performs a 2x2 blur on the SSAO output."
msgstr ""
-#: doc/classes/RenderingServer.xml:3517
+#: doc/classes/RenderingServer.xml:3528
msgid "Performs a 3x3 blur on the SSAO output. Use this for smoothest SSAO."
msgstr ""
-#: doc/classes/RenderingServer.xml:3520
+#: doc/classes/RenderingServer.xml:3531
msgid "Lowest quality of screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3523
+#: doc/classes/RenderingServer.xml:3534
msgid "Medium quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3526
+#: doc/classes/RenderingServer.xml:3537
msgid "High quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3529
+#: doc/classes/RenderingServer.xml:3540
msgid "Highest quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3540
+#: doc/classes/RenderingServer.xml:3551
msgid ""
"Lowest quality DOF blur. This is the fastest setting, but you may be able to "
"see filtering artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3543
+#: doc/classes/RenderingServer.xml:3554
msgid "Low quality DOF blur."
msgstr ""
-#: doc/classes/RenderingServer.xml:3546
+#: doc/classes/RenderingServer.xml:3557
msgid "Medium quality DOF blur."
msgstr ""
-#: doc/classes/RenderingServer.xml:3549
+#: doc/classes/RenderingServer.xml:3560
msgid ""
"Highest quality DOF blur. Results in the smoothest looking blur by taking "
"the most samples, but is also significantly slower."
msgstr ""
-#: doc/classes/RenderingServer.xml:3552
+#: doc/classes/RenderingServer.xml:3563
msgid ""
"Calculate the DOF blur using a box filter. The fastest option, but results "
"in obvious lines in blur pattern."
msgstr ""
-#: doc/classes/RenderingServer.xml:3555
+#: doc/classes/RenderingServer.xml:3566
msgid "Calculates DOF blur using a hexagon shaped filter."
msgstr ""
-#: doc/classes/RenderingServer.xml:3558
+#: doc/classes/RenderingServer.xml:3569
msgid ""
"Calculates DOF blur using a circle shaped filter. Best quality and most "
"realistic, but slowest. Use only for areas where a lot of performance can be "
"dedicated to post-processing (e.g. cutscenes)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3573
+#: doc/classes/RenderingServer.xml:3584
msgid "Do not use a debug mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:3576
+#: doc/classes/RenderingServer.xml:3587
msgid "Draw all objects as wireframe models."
msgstr ""
-#: doc/classes/RenderingServer.xml:3579
+#: doc/classes/RenderingServer.xml:3590
msgid ""
"Draw all objects in a way that displays how much overdraw is occurring. "
"Overdraw occurs when a section of pixels is drawn and shaded and then "
"another object covers it up. To optimize a scene, you should reduce overdraw."
msgstr ""
-#: doc/classes/RenderingServer.xml:3582
+#: doc/classes/RenderingServer.xml:3593
msgid ""
"Draw all objects without shading. Equivalent to setting all objects shaders "
"to [code]unshaded[/code]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3585
+#: doc/classes/RenderingServer.xml:3596
msgid "The instance does not have a type."
msgstr ""
-#: doc/classes/RenderingServer.xml:3588
+#: doc/classes/RenderingServer.xml:3599
msgid "The instance is a mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:3591
+#: doc/classes/RenderingServer.xml:3602
msgid "The instance is a multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:3594
+#: doc/classes/RenderingServer.xml:3605
msgid "The instance is an immediate geometry."
msgstr ""
-#: doc/classes/RenderingServer.xml:3597
+#: doc/classes/RenderingServer.xml:3608
msgid "The instance is a particle emitter."
msgstr ""
-#: doc/classes/RenderingServer.xml:3600
+#: doc/classes/RenderingServer.xml:3611
msgid "The instance is a light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3603
+#: doc/classes/RenderingServer.xml:3614
msgid "The instance is a reflection probe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3606
+#: doc/classes/RenderingServer.xml:3617
msgid "The instance is a decal."
msgstr ""
-#: doc/classes/RenderingServer.xml:3609
+#: doc/classes/RenderingServer.xml:3620
msgid "The instance is a GI probe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3612
+#: doc/classes/RenderingServer.xml:3623
msgid "The instance is a lightmap."
msgstr ""
-#: doc/classes/RenderingServer.xml:3615
+#: doc/classes/RenderingServer.xml:3626
msgid "Represents the size of the [enum InstanceType] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3618
+#: doc/classes/RenderingServer.xml:3629
msgid ""
"A combination of the flags of geometry instances (mesh, multimesh, immediate "
"and particles)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3621
+#: doc/classes/RenderingServer.xml:3632
msgid "Allows the instance to be used in baked lighting."
msgstr ""
-#: doc/classes/RenderingServer.xml:3624
+#: doc/classes/RenderingServer.xml:3635
msgid "Allows the instance to be used with dynamic global illumination."
msgstr ""
-#: doc/classes/RenderingServer.xml:3627
+#: doc/classes/RenderingServer.xml:3638
msgid "When set, manually requests to draw geometry on next frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3630
+#: doc/classes/RenderingServer.xml:3641
msgid "Represents the size of the [enum InstanceFlags] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3633
+#: doc/classes/RenderingServer.xml:3644
msgid "Disable shadows from this instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:3636
+#: doc/classes/RenderingServer.xml:3647
msgid "Cast shadows from this instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:3639
+#: doc/classes/RenderingServer.xml:3650
msgid ""
"Disable backface culling when rendering the shadow of the object. This is "
"slightly slower but may result in more correct shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3642
+#: doc/classes/RenderingServer.xml:3653
msgid ""
"Only render the shadows from the object. The object itself will not be drawn."
msgstr ""
-#: doc/classes/RenderingServer.xml:3645
+#: doc/classes/RenderingServer.xml:3656
msgid "The nine patch gets stretched where needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3648
+#: doc/classes/RenderingServer.xml:3659
msgid "The nine patch gets filled with tiles where needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3651
+#: doc/classes/RenderingServer.xml:3662
msgid ""
"The nine patch gets filled with tiles where needed and stretches them a bit "
"if needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3654
+#: doc/classes/RenderingServer.xml:3665
msgid "Uses the default filter mode for this [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3666 doc/classes/Viewport.xml:399
+#: doc/classes/RenderingServer.xml:3677 doc/classes/Viewport.xml:402
msgid ""
"The texture filter blends between the nearest 4 pixels and between the "
"nearest 2 mipmaps."
msgstr ""
-#: doc/classes/RenderingServer.xml:3675
+#: doc/classes/RenderingServer.xml:3686
msgid "Max value for [enum CanvasItemTextureFilter] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3678
+#: doc/classes/RenderingServer.xml:3689
msgid "Uses the default repeat mode for this [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3681 doc/classes/Viewport.xml:405
+#: doc/classes/RenderingServer.xml:3692 doc/classes/Viewport.xml:408
msgid ""
"Disables textures repeating. Instead, when reading UVs outside the 0-1 "
"range, the value will be clamped to the edge of the texture, resulting in a "
"stretched out look at the borders of the texture."
msgstr ""
-#: doc/classes/RenderingServer.xml:3687 doc/classes/Viewport.xml:411
+#: doc/classes/RenderingServer.xml:3698 doc/classes/Viewport.xml:414
msgid ""
"Flip the texture when repeating so that the edge lines up instead of "
"abruptly changing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3690
+#: doc/classes/RenderingServer.xml:3701
msgid "Max value for [enum CanvasItemTextureRepeat] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3693
+#: doc/classes/RenderingServer.xml:3704
msgid "Adds light color additive to the canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:3696
+#: doc/classes/RenderingServer.xml:3707
msgid "Adds light color subtractive to the canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:3699
+#: doc/classes/RenderingServer.xml:3710
msgid "The light adds color depending on transparency."
msgstr ""
-#: doc/classes/RenderingServer.xml:3702
+#: doc/classes/RenderingServer.xml:3713
msgid "The light adds color depending on mask."
msgstr ""
-#: doc/classes/RenderingServer.xml:3705
+#: doc/classes/RenderingServer.xml:3716
msgid "Do not apply a filter to canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3708
+#: doc/classes/RenderingServer.xml:3719
msgid "Use PCF5 filtering to filter canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3711
+#: doc/classes/RenderingServer.xml:3722
msgid "Use PCF13 filtering to filter canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3714
+#: doc/classes/RenderingServer.xml:3725
msgid "Max value of the [enum CanvasLightShadowFilter] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3717
+#: doc/classes/RenderingServer.xml:3728
msgid "Culling of the canvas occluder is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3720
+#: doc/classes/RenderingServer.xml:3731
msgid "Culling of the canvas occluder is clockwise."
msgstr ""
-#: doc/classes/RenderingServer.xml:3723
+#: doc/classes/RenderingServer.xml:3734
msgid "Culling of the canvas occluder is counterclockwise."
msgstr ""
-#: doc/classes/RenderingServer.xml:3784
+#: doc/classes/RenderingServer.xml:3795
msgid "The amount of objects in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3787
+#: doc/classes/RenderingServer.xml:3798
msgid "The amount of vertices in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3790
+#: doc/classes/RenderingServer.xml:3801
msgid "The amount of modified materials in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3793
+#: doc/classes/RenderingServer.xml:3804
msgid "The amount of shader rebinds in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3796
+#: doc/classes/RenderingServer.xml:3807
msgid "The amount of surface changes in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3799
+#: doc/classes/RenderingServer.xml:3810
msgid "The amount of draw calls in frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3814
+#: doc/classes/RenderingServer.xml:3825
msgid "Hardware supports shaders. This enum is currently unused in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:3817
+#: doc/classes/RenderingServer.xml:3828
msgid ""
"Hardware supports multithreading. This enum is currently unused in Godot 3.x."
msgstr ""
@@ -43866,13 +44528,13 @@ msgstr ""
#: doc/classes/Resource.xml:7
msgid ""
"Resource is the base class for all Godot-specific resource types, serving "
-"primarily as data containers. They are reference counted and freed when no "
-"longer in use. They are also cached once loaded from disk, so that any "
-"further attempts to load a resource from a given path will return the same "
-"reference (all this in contrast to a [Node], which is not reference counted "
-"and can be instanced from disk as many times as desired). Resources can be "
-"saved externally on disk or bundled into another object, such as a [Node] or "
-"another resource."
+"primarily as data containers. Unlike [Object]s, they are reference-counted "
+"and freed when no longer in use. They are also cached once loaded from disk, "
+"so that any further attempts to load a resource from a given path will "
+"return the same reference (all this in contrast to a [Node], which is not "
+"reference-counted and can be instanced from disk as many times as desired). "
+"Resources can be saved externally on disk or bundled into another object, "
+"such as a [Node] or another resource."
msgstr ""
#: doc/classes/Resource.xml:10
@@ -43881,34 +44543,38 @@ msgid ""
"resources.html"
msgstr ""
-#: doc/classes/Resource.xml:17
+#: doc/classes/Resource.xml:18
msgid ""
"Virtual function which can be overridden to customize the behavior value of "
"[method setup_local_to_scene]."
msgstr ""
-#: doc/classes/Resource.xml:26
+#: doc/classes/Resource.xml:27
msgid ""
"Duplicates the resource, returning a new resource. By default, sub-resources "
-"are shared between resource copies for efficiency, this can be changed by "
-"passing [code]true[/code] to the [code]subresources[/code] argument."
+"are shared between resource copies for efficiency. This can be changed by "
+"passing [code]true[/code] to the [code]subresources[/code] argument which "
+"will copy the subresources.\n"
+"[b]Note:[/b] If [code]subresources[/code] is [code]true[/code], this method "
+"will only perform a shallow copy. Nested resources within subresources will "
+"not be duplicated and will still be shared."
msgstr ""
-#: doc/classes/Resource.xml:33
+#: doc/classes/Resource.xml:35
msgid ""
"If [member resource_local_to_scene] is enabled and the resource was loaded "
"from a [PackedScene] instantiation, returns the local scene where this "
"resource's unique copy is in use. Otherwise, returns [code]null[/code]."
msgstr ""
-#: doc/classes/Resource.xml:40
+#: doc/classes/Resource.xml:42
msgid ""
"Returns the RID of the resource (or an empty RID). Many resources (such as "
"[Texture2D], [Mesh], etc) are high-level abstractions of resources stored in "
"a server, so this function will return the original RID."
msgstr ""
-#: doc/classes/Resource.xml:47
+#: doc/classes/Resource.xml:49
msgid ""
"This method is called when a resource with [member resource_local_to_scene] "
"enabled is loaded from a [PackedScene] instantiation. Its behavior can be "
@@ -43918,7 +44584,7 @@ msgid ""
"local viewport."
msgstr ""
-#: doc/classes/Resource.xml:57
+#: doc/classes/Resource.xml:59
msgid ""
"Sets the path of the resource, potentially overriding an existing cache "
"entry for this path. This differs from setting [member resource_path], as "
@@ -43926,25 +44592,25 @@ msgid ""
"given path."
msgstr ""
-#: doc/classes/Resource.xml:63
+#: doc/classes/Resource.xml:65
msgid ""
"If [code]true[/code], the resource will be made unique in each instance of "
"its local scene. It can thus be modified in a scene instance without "
"impacting other instances of that same scene."
msgstr ""
-#: doc/classes/Resource.xml:66
+#: doc/classes/Resource.xml:68
msgid "The name of the resource. This is an optional identifier."
msgstr ""
-#: doc/classes/Resource.xml:69
+#: doc/classes/Resource.xml:71
msgid ""
"The path to the resource. In case it has its own file, it will return its "
"filepath. If it's tied to the scene, it will return the scene's path, "
"followed by the resource's index."
msgstr ""
-#: doc/classes/Resource.xml:75
+#: doc/classes/Resource.xml:77
msgid "Emitted whenever the resource changes."
msgstr ""
@@ -44763,11 +45429,11 @@ msgid ""
"global coordinate system, but is centered at the object's origin."
msgstr ""
-#: doc/classes/RigidBody2D.xml:87
+#: doc/classes/RigidBody2D.xml:87 doc/classes/RigidBody3D.xml:99
msgid ""
-"Returns a list of the bodies colliding with this one. Use [member "
-"contacts_reported] to set the maximum number reported. You must also set "
-"[member contact_monitor] to [code]true[/code].\n"
+"Returns a list of the bodies colliding with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
"For performance, list of collisions is updated once per frame and before the "
"physics step. Consider using signals instead."
@@ -44804,7 +45470,7 @@ msgstr ""
msgid "The body's total applied torque."
msgstr ""
-#: doc/classes/RigidBody2D.xml:130 doc/classes/RigidBody3D.xml:150
+#: doc/classes/RigidBody2D.xml:130 doc/classes/RigidBody3D.xml:157
msgid ""
"If [code]true[/code], the body can enter sleep mode when there is no "
"movement. See [member sleeping]."
@@ -44816,11 +45482,17 @@ msgid ""
"another RigidBody2D. See also [member contacts_reported]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:136
-msgid "The maximum number of contacts to report."
+#: doc/classes/RigidBody2D.xml:136 doc/classes/RigidBody3D.xml:163
+msgid ""
+"The maximum number of contacts that will be recorded. Requires [member "
+"contact_monitor] to be set to [code]true[/code].\n"
+"[b]Note:[/b] The number of contacts is different from the number of "
+"collisions. Collisions between parallel edges will result in two contacts "
+"(one at each end), and collisions between parallel faces will result in four "
+"contacts (one at each corner)."
msgstr ""
-#: doc/classes/RigidBody2D.xml:139
+#: doc/classes/RigidBody2D.xml:140
msgid ""
"Continuous collision detection mode.\n"
"Continuous collision detection tries to predict where a moving body will "
@@ -44830,21 +45502,21 @@ msgid ""
"methods are available. See [enum CCDMode] for details."
msgstr ""
-#: doc/classes/RigidBody2D.xml:143
+#: doc/classes/RigidBody2D.xml:144
msgid ""
"If [code]true[/code], internal force integration is disabled for this body. "
"Aside from collision response, the body will only move as determined by the "
"[method _integrate_forces] function."
msgstr ""
-#: doc/classes/RigidBody2D.xml:146
+#: doc/classes/RigidBody2D.xml:147
msgid ""
"Multiplies the gravity applied to the body. The body's gravity is calculated "
"from the [b]Default Gravity[/b] value in [b]Project > Project Settings > "
"Physics > 2d[/b] and/or any additional gravity vector applied by [Area2D]s."
msgstr ""
-#: doc/classes/RigidBody2D.xml:149
+#: doc/classes/RigidBody2D.xml:150
msgid ""
"The body's moment of inertia. This is like mass, but for rotation: it "
"determines how much torque it takes to rotate the body. The moment of "
@@ -44853,18 +45525,18 @@ msgid ""
"automatically computing it."
msgstr ""
-#: doc/classes/RigidBody2D.xml:152
+#: doc/classes/RigidBody2D.xml:153
msgid ""
"Damps the body's [member linear_velocity]. If [code]-1[/code], the body will "
"use the [b]Default Linear Damp[/b] in [b]Project > Project Settings > "
"Physics > 2d[/b]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:161
+#: doc/classes/RigidBody2D.xml:162
msgid "The body's mode. See [enum Mode] for possible values."
msgstr ""
-#: doc/classes/RigidBody2D.xml:164 doc/classes/RigidBody3D.xml:181
+#: doc/classes/RigidBody2D.xml:165 doc/classes/RigidBody3D.xml:189
#: doc/classes/StaticBody2D.xml:22 doc/classes/StaticBody3D.xml:22
msgid ""
"The physics material override for the body.\n"
@@ -44872,50 +45544,50 @@ msgid ""
"other physics material, such as an inherited one."
msgstr ""
-#: doc/classes/RigidBody2D.xml:168 doc/classes/RigidBody3D.xml:185
+#: doc/classes/RigidBody2D.xml:169 doc/classes/RigidBody3D.xml:193
msgid ""
"If [code]true[/code], the body will not move and will not calculate forces "
"until woken up by another body through, for example, a collision, or by "
"using the [method apply_impulse] or [method add_force] methods."
msgstr ""
-#: doc/classes/RigidBody2D.xml:171
+#: doc/classes/RigidBody2D.xml:172
msgid ""
"The body's weight based on its mass and the [b]Default Gravity[/b] value in "
"[b]Project > Project Settings > Physics > 2d[/b]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:179
+#: doc/classes/RigidBody2D.xml:180 doc/classes/RigidBody3D.xml:204
msgid ""
-"Emitted when a body enters into contact with this one. [member "
-"contact_monitor] must be [code]true[/code] and [member contacts_reported] "
-"greater than [code]0[/code]."
+"Emitted when a body enters into contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:186
+#: doc/classes/RigidBody2D.xml:187
msgid ""
-"Emitted when a body exits contact with this one. [member contact_monitor] "
-"must be [code]true[/code] and [member contacts_reported] greater than "
-"[code]0[/code]."
+"Emitted when a body exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:199
+#: doc/classes/RigidBody2D.xml:200
msgid ""
"Emitted when a body enters into contact with this one. Reports colliding "
"shape information. See [CollisionObject2D] for shape index information. "
-"[member contact_monitor] must be [code]true[/code] and [member "
-"contacts_reported] greater than [code]0[/code]."
+"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:212
+#: doc/classes/RigidBody2D.xml:213
msgid ""
"Emitted when a body shape exits contact with this one. Reports colliding "
"shape information. See [CollisionObject2D] for shape index information. "
-"[member contact_monitor] must be [code]true[/code] and [member "
-"contacts_reported] greater than [code]0[/code]."
+"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:217 doc/classes/RigidBody3D.xml:236
+#: doc/classes/RigidBody2D.xml:218 doc/classes/RigidBody3D.xml:244
msgid ""
"Emitted when the physics engine changes the body's sleeping state.\n"
"[b]Note:[/b] Changing the value [member sleeping] will not trigger this "
@@ -44923,41 +45595,41 @@ msgid ""
"engine or [code]emit_signal(\"sleeping_state_changed\")[/code] is used."
msgstr ""
-#: doc/classes/RigidBody2D.xml:224
+#: doc/classes/RigidBody2D.xml:225
msgid ""
"Rigid mode. The body behaves as a physical object. It collides with other "
"bodies and responds to forces applied to it. This is the default mode."
msgstr ""
-#: doc/classes/RigidBody2D.xml:227
+#: doc/classes/RigidBody2D.xml:228
msgid "Static mode. The body behaves like a [StaticBody2D] and does not move."
msgstr ""
-#: doc/classes/RigidBody2D.xml:230
+#: doc/classes/RigidBody2D.xml:231
msgid ""
"Character mode. Similar to [constant MODE_RIGID], but the body can not "
"rotate."
msgstr ""
-#: doc/classes/RigidBody2D.xml:233
+#: doc/classes/RigidBody2D.xml:234
msgid ""
"Kinematic mode. The body behaves like a [KinematicBody2D], and must be moved "
"by code."
msgstr ""
-#: doc/classes/RigidBody2D.xml:236
+#: doc/classes/RigidBody2D.xml:237
msgid ""
"Continuous collision detection disabled. This is the fastest way to detect "
"body collisions, but can miss small, fast-moving objects."
msgstr ""
-#: doc/classes/RigidBody2D.xml:239
+#: doc/classes/RigidBody2D.xml:240
msgid ""
"Continuous collision detection enabled using raycasting. This is faster than "
"shapecasting but less precise."
msgstr ""
-#: doc/classes/RigidBody2D.xml:242
+#: doc/classes/RigidBody2D.xml:243
msgid ""
"Continuous collision detection enabled using shapecasting. This is the "
"slowest CCD method and the most precise."
@@ -45043,42 +45715,31 @@ msgid ""
"locked."
msgstr ""
-#: doc/classes/RigidBody3D.xml:99
+#: doc/classes/RigidBody3D.xml:107
msgid ""
-"Returns a list of the bodies colliding with this one. By default, number of "
-"max contacts reported is at 0, see the [member contacts_reported] property "
-"to increase it.\n"
-"[b]Note:[/b] The result of this test is not immediate after moving objects. "
-"For performance, list of collisions is updated once per frame and before the "
-"physics step. Consider using signals instead."
+"Returns the inverse inertia tensor basis. This is used to calculate the "
+"angular acceleration resulting from a torque applied to the [RigidBody3D]."
msgstr ""
-#: doc/classes/RigidBody3D.xml:111
+#: doc/classes/RigidBody3D.xml:118
msgid "Locks the specified linear or rotational axis."
msgstr ""
-#: doc/classes/RigidBody3D.xml:126
+#: doc/classes/RigidBody3D.xml:133
msgid "Damps RigidBody3D's rotational forces."
msgstr ""
-#: doc/classes/RigidBody3D.xml:129
+#: doc/classes/RigidBody3D.xml:136
msgid "RigidBody3D's rotational velocity."
msgstr ""
-#: doc/classes/RigidBody3D.xml:153
+#: doc/classes/RigidBody3D.xml:160
msgid ""
"If [code]true[/code], the RigidBody3D will emit signals when it collides "
-"with another RigidBody3D."
-msgstr ""
-
-#: doc/classes/RigidBody3D.xml:156
-msgid ""
-"The maximum contacts to report. Bodies can keep a log of the contacts with "
-"other bodies, this is enabled by setting the maximum amount of contacts "
-"reported to a number greater than 0."
+"with another RigidBody3D. See also [member contacts_reported]."
msgstr ""
-#: doc/classes/RigidBody3D.xml:159
+#: doc/classes/RigidBody3D.xml:167
msgid ""
"If [code]true[/code], continuous collision detection is used.\n"
"Continuous collision detection tries to predict where a moving body will "
@@ -45088,7 +45749,7 @@ msgid ""
"faster to compute, but can miss small, fast-moving objects."
msgstr ""
-#: doc/classes/RigidBody3D.xml:163
+#: doc/classes/RigidBody3D.xml:171
msgid ""
"If [code]true[/code], internal force integration will be disabled (like "
"gravity or air friction) for this body. Other than collision response, the "
@@ -45096,7 +45757,7 @@ msgid ""
"function, if defined."
msgstr ""
-#: doc/classes/RigidBody3D.xml:166
+#: doc/classes/RigidBody3D.xml:174
msgid ""
"This is multiplied by the global 3D gravity setting found in [b]Project > "
"Project Settings > Physics > 3d[/b] to produce RigidBody3D's gravity. For "
@@ -45104,14 +45765,14 @@ msgid ""
"and 0.5 will apply half gravity to this object."
msgstr ""
-#: doc/classes/RigidBody3D.xml:169
+#: doc/classes/RigidBody3D.xml:177
msgid ""
"The body's linear damp. Cannot be less than -1.0. If this value is different "
"from -1.0, any linear damp derived from the world or areas will be "
"overridden."
msgstr ""
-#: doc/classes/RigidBody3D.xml:172
+#: doc/classes/RigidBody3D.xml:180
msgid ""
"The body's linear velocity. Can be used sporadically, but [b]don't set this "
"every frame[/b], because physics may run in another thread and runs at a "
@@ -45119,60 +45780,57 @@ msgid ""
"for precise control of the body state."
msgstr ""
-#: doc/classes/RigidBody3D.xml:178
+#: doc/classes/RigidBody3D.xml:186
msgid "The body mode. See [enum Mode] for possible values."
msgstr ""
-#: doc/classes/RigidBody3D.xml:196
-msgid ""
-"Emitted when a body enters into contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work."
-msgstr ""
-
-#: doc/classes/RigidBody3D.xml:203
+#: doc/classes/RigidBody3D.xml:211
msgid ""
-"Emitted when a body shape exits contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work."
+"Emitted when a body shape exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody3D.xml:216
+#: doc/classes/RigidBody3D.xml:224
msgid ""
-"Emitted when a body enters into contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work.\n"
+"Emitted when a body enters into contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"This signal not only receives the body that collided with this one, but also "
"its [RID] ([code]body_id[/code]), the shape index from the colliding body "
"([code]body_shape[/code]), and the shape index from this body "
"([code]local_shape[/code]) the other body collided with."
msgstr ""
-#: doc/classes/RigidBody3D.xml:230
+#: doc/classes/RigidBody3D.xml:238
msgid ""
-"Emitted when a body shape exits contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work.\n"
+"Emitted when a body shape exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"This signal not only receives the body that stopped colliding with this one, "
"but also its [RID] ([code]body_id[/code]), the shape index from the "
"colliding body ([code]body_shape[/code]), and the shape index from this body "
"([code]local_shape[/code]) the other body stopped colliding with."
msgstr ""
-#: doc/classes/RigidBody3D.xml:243
+#: doc/classes/RigidBody3D.xml:251
msgid ""
"Rigid body mode. This is the \"natural\" state of a rigid body. It is "
"affected by forces, and can move, rotate, and be affected by user code."
msgstr ""
-#: doc/classes/RigidBody3D.xml:246
+#: doc/classes/RigidBody3D.xml:254
msgid ""
"Static mode. The body behaves like a [StaticBody3D], and can only move by "
"user code."
msgstr ""
-#: doc/classes/RigidBody3D.xml:249
+#: doc/classes/RigidBody3D.xml:257
msgid ""
"Character body mode. This behaves like a rigid body, but can not rotate."
msgstr ""
-#: doc/classes/RigidBody3D.xml:252
+#: doc/classes/RigidBody3D.xml:260
msgid ""
"Kinematic body mode. The body behaves like a [KinematicBody3D], and can only "
"move by user code."
@@ -45679,7 +46337,7 @@ msgstr ""
msgid "The time remaining."
msgstr ""
-#: doc/classes/SceneTreeTimer.xml:28 doc/classes/Timer.xml:62
+#: doc/classes/SceneTreeTimer.xml:28 doc/classes/Timer.xml:63
msgid "Emitted when the timer reaches 0."
msgstr ""
@@ -45802,27 +46460,27 @@ msgid ""
"the singleton using [method EditorInterface.get_script_editor]."
msgstr ""
-#: doc/classes/ScriptEditor.xml:40
+#: doc/classes/ScriptEditor.xml:46
msgid "Returns a [Script] that is currently active in editor."
msgstr ""
-#: doc/classes/ScriptEditor.xml:57
+#: doc/classes/ScriptEditor.xml:69
msgid ""
"Returns an array with all [Script] objects which are currently open in "
"editor."
msgstr ""
-#: doc/classes/ScriptEditor.xml:66
+#: doc/classes/ScriptEditor.xml:78
msgid "Goes to the specified line in the current script."
msgstr ""
-#: doc/classes/ScriptEditor.xml:85
+#: doc/classes/ScriptEditor.xml:113
msgid ""
"Emitted when user changed active script. Argument is a freshly activated "
"[Script]."
msgstr ""
-#: doc/classes/ScriptEditor.xml:92
+#: doc/classes/ScriptEditor.xml:120
msgid ""
"Emitted when editor is about to close the active script. Argument is a "
"[Script] that is going to be closed."
@@ -45884,7 +46542,7 @@ msgid ""
"visible."
msgstr ""
-#: doc/classes/ScrollContainer.xml:37 doc/classes/TextEdit.xml:453
+#: doc/classes/ScrollContainer.xml:37 doc/classes/TextEdit.xml:407
msgid "The current horizontal scroll value."
msgstr ""
@@ -45892,7 +46550,7 @@ msgstr ""
msgid "If [code]true[/code], enables horizontal scrolling."
msgstr ""
-#: doc/classes/ScrollContainer.xml:43 doc/classes/TextEdit.xml:456
+#: doc/classes/ScrollContainer.xml:43 doc/classes/TextEdit.xml:410
msgid "The current vertical scroll value."
msgstr ""
@@ -46411,7 +47069,7 @@ msgstr ""
msgid ""
"Sets the global pose transform, [code]pose[/code], for the bone at "
"[code]bone_idx[/code].\n"
-"[code]amount[/code] is the interpolation strengh that will be used when "
+"[code]amount[/code] is the interpolation strength that will be used when "
"applying the pose, and [code]persistent[/code] determines if the applied "
"pose will remain.\n"
"[b]Note[/b]: The pose transform needs to be in bone space. Use [method "
@@ -46428,7 +47086,7 @@ msgstr ""
#: doc/classes/Skeleton3D.xml:266
msgid ""
-"Returns the pose transform for bone [code]bone_idx[/code].\n"
+"Sets the pose transform for bone [code]bone_idx[/code].\n"
"[b]Note[/b]: The pose transform needs to be in bone space. Use [method "
"world_transform_to_bone_transform] to convert a world transform, like one "
"you can get from a [Node3D], to bone space."
@@ -46521,6 +47179,16 @@ msgstr ""
#: doc/classes/Sky.xml:52
msgid ""
+"Automatically selects the appropriate process mode based on your sky shader. "
+"If your shader uses [code]TIME[/code] or [code]POSITION[/code], this will "
+"use [constant PROCESS_MODE_REALTIME]. If your shader uses any of the "
+"[code]LIGHT_*[/code] variables or any custom uniforms, this uses [constant "
+"PROCESS_MODE_INCREMENTAL]. Otherwise, this defaults to [constant "
+"PROCESS_MODE_QUALITY]."
+msgstr ""
+
+#: doc/classes/Sky.xml:55
+msgid ""
"Uses high quality importance sampling to process the radiance map. In "
"general, this results in much higher quality than [constant "
"PROCESS_MODE_REALTIME] but takes much longer to generate. This should not be "
@@ -46530,10 +47198,22 @@ msgid ""
"ggx_samples]."
msgstr ""
-#: doc/classes/Sky.xml:55
+#: doc/classes/Sky.xml:58
+msgid ""
+"Uses the same high quality importance sampling to process the radiance map "
+"as [constant PROCESS_MODE_QUALITY], but updates over several frames. The "
+"number of frames is determined by [member ProjectSettings.rendering/quality/"
+"reflections/roughness_layers]. Use this when you need highest quality "
+"radiance maps, but have a sky that updates slowly."
+msgstr ""
+
+#: doc/classes/Sky.xml:61
msgid ""
"Uses the fast filtering algorithm to process the radiance map. In general "
-"this results in lower quality, but substantially faster run times.\n"
+"this results in lower quality, but substantially faster run times. If you "
+"need better quality, but still need to update the sky every frame, consider "
+"turning on [member ProjectSettings.rendering/quality/reflections/"
+"fast_filter_high_quality].\n"
"[b]Note:[/b] The fast filtering algorithm is limited to 256x256 cubemaps, so "
"[member radiance_size] must be set to [constant RADIANCE_SIZE_256]."
msgstr ""
@@ -46870,10 +47550,9 @@ msgid ""
msgstr ""
#: doc/classes/SpringArm3D.xml:35
-msgid ""
-"Returns the proportion between the current arm length (after checking for "
-"collisions) and the [member spring_length]. Ranges from 0 to 1."
-msgstr ""
+#, fuzzy
+msgid "Returns the spring arm's current length."
+msgstr "Palauttaa parametrin sinin."
#: doc/classes/SpringArm3D.xml:44
msgid ""
@@ -47568,7 +48247,7 @@ msgstr ""
msgid ""
"This is the built-in string class (and the one used by GDScript). It "
"supports Unicode and provides all necessary means for string handling. "
-"Strings are reference counted and use a copy-on-write approach, so passing "
+"Strings are reference-counted and use a copy-on-write approach, so passing "
"them around is cheap in resources."
msgstr ""
@@ -47723,26 +48402,32 @@ msgstr ""
#: doc/classes/String.xml:328
msgid ""
"Returns a copy of the string with escaped characters replaced by their "
-"meanings according to the C language standard."
+"meanings. Supported escape sequences are [code]\\'[/code], [code]\\\"[/"
+"code], [code]\\?[/code], [code]\\\\[/code], [code]\\a[/code], [code]\\b[/"
+"code], [code]\\f[/code], [code]\\n[/code], [code]\\r[/code], [code]\\t[/"
+"code], [code]\\v[/code].\n"
+"[b]Note:[/b] Unlike the GDScript parser, this method doesn't support the "
+"[code]\\uXXXX[/code] escape sequence."
msgstr ""
-#: doc/classes/String.xml:335
+#: doc/classes/String.xml:336
msgid ""
-"Changes the case of some letters. Replaces underscores with spaces, converts "
-"all letters to lowercase, then capitalizes first and every letter following "
-"the space character. For [code]capitalize camelCase mixed_with_underscores[/"
-"code], it will return [code]Capitalize Camelcase Mixed With Underscores[/"
+"Changes the case of some letters. Replaces underscores with spaces, adds "
+"spaces before in-word uppercase characters, converts all letters to "
+"lowercase, then capitalizes the first letter and every letter following a "
+"space character. For [code]capitalize camelCase mixed_with_underscores[/"
+"code], it will return [code]Capitalize Camel Case Mixed With Underscores[/"
"code]."
msgstr ""
-#: doc/classes/String.xml:344
+#: doc/classes/String.xml:345
msgid ""
"Performs a case-sensitive comparison to another string. Returns [code]-1[/"
"code] if less than, [code]+1[/code] if greater than, or [code]0[/code] if "
"equal."
msgstr ""
-#: doc/classes/String.xml:357
+#: doc/classes/String.xml:358
msgid ""
"Returns the number of occurrences of substring [code]what[/code] between "
"[code]from[/code] and [code]to[/code] positions. If [code]from[/code] and "
@@ -47750,7 +48435,7 @@ msgid ""
"code] equals 0 the remained substring will be used."
msgstr ""
-#: doc/classes/String.xml:370
+#: doc/classes/String.xml:371
msgid ""
"Returns the number of occurrences of substring [code]what[/code] (ignoring "
"case) between [code]from[/code] and [code]to[/code] positions. If "
@@ -47758,32 +48443,33 @@ msgid ""
"used. If only [code]to[/code] equals 0 the remained substring will be used."
msgstr ""
-#: doc/classes/String.xml:377
+#: doc/classes/String.xml:378
msgid ""
"Returns a copy of the string with indentation (leading tabs and spaces) "
"removed."
msgstr ""
-#: doc/classes/String.xml:384
+#: doc/classes/String.xml:385
msgid ""
"Returns [code]true[/code] if the length of the string equals [code]0[/code]."
msgstr ""
-#: doc/classes/String.xml:393
+#: doc/classes/String.xml:394
msgid "Returns [code]true[/code] if the string ends with the given string."
msgstr ""
-#: doc/classes/String.xml:404
+#: doc/classes/String.xml:405
msgid ""
"Erases [code]chars[/code] characters from the string starting from "
"[code]position[/code]."
msgstr ""
-#: doc/classes/String.xml:415
+#: doc/classes/String.xml:416
msgid ""
-"Finds the first occurrence of a substring. Returns the starting position of "
-"the substring or [code]-1[/code] if not found. Optionally, the initial "
-"search index can be passed.\n"
+"Returns the index of the [b]first[/b] case-sensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the end of the "
+"string.\n"
"[b]Note:[/b] If you just want to know whether a string contains a substring, "
"use the [code]in[/code] operator as follows:\n"
"[codeblock]\n"
@@ -47793,48 +48479,42 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:430
-msgid ""
-"Finds the last occurrence of a substring. Returns the starting position of "
-"the substring or [code]-1[/code] if not found."
-msgstr ""
-
-#: doc/classes/String.xml:441
+#: doc/classes/String.xml:433
msgid ""
-"Finds the first occurrence of a substring, ignoring case. Returns the "
-"starting position of the substring or [code]-1[/code] if not found. "
-"Optionally, the initial search index can be passed."
+"Returns the index of the [b]first[/b] case-insensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the end of the string."
msgstr ""
-#: doc/classes/String.xml:452
+#: doc/classes/String.xml:444
msgid ""
"Formats the string by replacing all occurrences of [code]placeholder[/code] "
"with [code]values[/code]."
msgstr ""
-#: doc/classes/String.xml:459
+#: doc/classes/String.xml:451
msgid "If the string is a valid file path, returns the base directory name."
msgstr ""
-#: doc/classes/String.xml:466
+#: doc/classes/String.xml:458
msgid ""
"If the string is a valid file path, returns the full file path without the "
"extension."
msgstr ""
-#: doc/classes/String.xml:473
+#: doc/classes/String.xml:465
msgid "If the string is a valid file path, returns the extension."
msgstr ""
-#: doc/classes/String.xml:480
+#: doc/classes/String.xml:472
msgid "If the string is a valid file path, returns the filename."
msgstr ""
-#: doc/classes/String.xml:487
+#: doc/classes/String.xml:479
msgid "Hashes the string and returns a 32-bit integer."
msgstr ""
-#: doc/classes/String.xml:494
+#: doc/classes/String.xml:486
msgid ""
"Converts a string containing a hexadecimal number into an integer. "
"Hexadecimal strings are expected to be prefixed with \"[code]0x[/code]\" "
@@ -47844,7 +48524,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:504
+#: doc/classes/String.xml:496
msgid ""
"Escapes (encodes) a string to URL friendly format. Also referred to as 'URL "
"encode'.\n"
@@ -47854,7 +48534,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:514
+#: doc/classes/String.xml:506
msgid ""
"Unescapes (decodes) a string in URL encoded format. Also referred to as 'URL "
"decode'.\n"
@@ -47864,7 +48544,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:526
+#: doc/classes/String.xml:518
msgid ""
"Converts [code]size[/code] represented as number of bytes to human-readable "
"format using internationalized set of data size units, namely: B, KiB, MiB, "
@@ -47877,48 +48557,48 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:542
+#: doc/classes/String.xml:534
msgid ""
"Returns a copy of the string with the substring [code]what[/code] inserted "
"at the given position."
msgstr ""
-#: doc/classes/String.xml:549
+#: doc/classes/String.xml:541
msgid ""
"If the string is a path to a file or directory, returns [code]true[/code] if "
"the path is absolute."
msgstr ""
-#: doc/classes/String.xml:556
+#: doc/classes/String.xml:548
msgid ""
"If the string is a path to a file or directory, returns [code]true[/code] if "
"the path is relative."
msgstr ""
-#: doc/classes/String.xml:565
+#: doc/classes/String.xml:557
msgid ""
"Returns [code]true[/code] if this string is a subsequence of the given "
"string."
msgstr ""
-#: doc/classes/String.xml:574
+#: doc/classes/String.xml:566
msgid ""
"Returns [code]true[/code] if this string is a subsequence of the given "
"string, without considering case."
msgstr ""
-#: doc/classes/String.xml:581
+#: doc/classes/String.xml:573
msgid ""
"Returns [code]true[/code] if this string is free from characters that aren't "
"allowed in file names, those being:\n"
"[code]: / \\ ? * \" | % < >[/code]"
msgstr ""
-#: doc/classes/String.xml:589
+#: doc/classes/String.xml:581
msgid "Returns [code]true[/code] if this string contains a valid float."
msgstr ""
-#: doc/classes/String.xml:598
+#: doc/classes/String.xml:590
msgid ""
"Returns [code]true[/code] if this string contains a valid hexadecimal "
"number. If [code]with_prefix[/code] is [code]true[/code], then a validity of "
@@ -47926,7 +48606,7 @@ msgid ""
"instance: [code]0xDEADC0DE[/code]."
msgstr ""
-#: doc/classes/String.xml:605
+#: doc/classes/String.xml:597
msgid ""
"Returns [code]true[/code] if this string contains a valid color in "
"hexadecimal HTML notation. Other HTML notations such as named colors or "
@@ -47934,22 +48614,22 @@ msgid ""
"return [code]false[/code]."
msgstr ""
-#: doc/classes/String.xml:612
+#: doc/classes/String.xml:604
msgid ""
"Returns [code]true[/code] if this string is a valid identifier. A valid "
"identifier may contain only letters, digits and underscores ([code]_[/code]) "
"and the first character may not be a digit."
msgstr ""
-#: doc/classes/String.xml:619
+#: doc/classes/String.xml:611
msgid "Returns [code]true[/code] if this string contains a valid integer."
msgstr ""
-#: doc/classes/String.xml:626
+#: doc/classes/String.xml:618
msgid "Returns [code]true[/code] if this string contains a valid IP address."
msgstr ""
-#: doc/classes/String.xml:635
+#: doc/classes/String.xml:627
msgid ""
"Return a [String] which is the concatenation of the [code]parts[/code]. The "
"separator between elements is the string providing this method.\n"
@@ -47959,121 +48639,125 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:646
+#: doc/classes/String.xml:638
msgid ""
"Returns a copy of the string with special characters escaped using the JSON "
"standard."
msgstr ""
-#: doc/classes/String.xml:655
+#: doc/classes/String.xml:647
msgid "Returns a number of characters from the left of the string."
msgstr ""
-#: doc/classes/String.xml:662
+#: doc/classes/String.xml:654
msgid "Returns the string's amount of characters."
msgstr ""
-#: doc/classes/String.xml:671
+#: doc/classes/String.xml:663
msgid "Returns a copy of the string with characters removed from the left."
msgstr ""
-#: doc/classes/String.xml:680
+#: doc/classes/String.xml:672
msgid ""
"Does a simple case-sensitive expression match, where [code]\"*\"[/code] "
"matches zero or more arbitrary characters and [code]\"?\"[/code] matches any "
"single character except a period ([code]\".\"[/code])."
msgstr ""
-#: doc/classes/String.xml:689
+#: doc/classes/String.xml:681
msgid ""
"Does a simple case-insensitive expression match, where [code]\"*\"[/code] "
"matches zero or more arbitrary characters and [code]\"?\"[/code] matches any "
"single character except a period ([code]\".\"[/code])."
msgstr ""
-#: doc/classes/String.xml:696
+#: doc/classes/String.xml:688
msgid "Returns the MD5 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:703
+#: doc/classes/String.xml:695
msgid "Returns the MD5 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:712
+#: doc/classes/String.xml:704
msgid ""
"Performs a case-insensitive comparison to another string. Returns [code]-1[/"
"code] if less than, [code]+1[/code] if greater than, or [code]0[/code] if "
"equal."
msgstr ""
-#: doc/classes/String.xml:721
+#: doc/classes/String.xml:713
msgid "Returns the character code at position [code]at[/code]."
msgstr ""
-#: doc/classes/String.xml:730
+#: doc/classes/String.xml:722
msgid ""
"Formats a number to have an exact number of [code]digits[/code] after the "
"decimal point."
msgstr ""
-#: doc/classes/String.xml:739
+#: doc/classes/String.xml:731
msgid ""
"Formats a number to have an exact number of [code]digits[/code] before the "
"decimal point."
msgstr ""
-#: doc/classes/String.xml:746
+#: doc/classes/String.xml:738
msgid "Decode a percent-encoded string. See [method percent_encode]."
msgstr ""
-#: doc/classes/String.xml:753
+#: doc/classes/String.xml:745
msgid ""
"Percent-encodes a string. Encodes parameters in a URL when sending a HTTP "
"GET request (and bodies of form-urlencoded POST requests)."
msgstr ""
-#: doc/classes/String.xml:762
+#: doc/classes/String.xml:754
msgid ""
"If the string is a path, this concatenates [code]file[/code] at the end of "
"the string as a subpath. E.g. [code]\"this/is\".plus_file(\"path\") == "
"\"this/is/path\"[/code]."
msgstr ""
-#: doc/classes/String.xml:771
+#: doc/classes/String.xml:763
msgid ""
"Returns original string repeated a number of times. The number of "
"repetitions is given by the argument."
msgstr ""
-#: doc/classes/String.xml:782
+#: doc/classes/String.xml:774
msgid ""
"Replaces occurrences of a case-sensitive substring with the given one inside "
"the string."
msgstr ""
-#: doc/classes/String.xml:793
+#: doc/classes/String.xml:785
msgid ""
"Replaces occurrences of a case-insensitive substring with the given one "
"inside the string."
msgstr ""
-#: doc/classes/String.xml:804
+#: doc/classes/String.xml:796
msgid ""
-"Performs a case-sensitive search for a substring, but starts from the end of "
-"the string instead of the beginning."
+"Returns the index of the [b]last[/b] case-sensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the beginning of the "
+"string."
msgstr ""
-#: doc/classes/String.xml:815
+#: doc/classes/String.xml:807
msgid ""
-"Performs a case-insensitive search for a substring, but starts from the end "
-"of the string instead of the beginning."
+"Returns the index of the [b]last[/b] case-insensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the beginning of the "
+"string."
msgstr ""
-#: doc/classes/String.xml:824
+#: doc/classes/String.xml:816
msgid "Returns the right side of the string from a given position."
msgstr ""
-#: doc/classes/String.xml:837
+#: doc/classes/String.xml:829
msgid ""
"Splits the string by a [code]delimiter[/code] string and returns an array of "
"the substrings, starting from right.\n"
@@ -48092,39 +48776,39 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:856
+#: doc/classes/String.xml:848
msgid "Returns a copy of the string with characters removed from the right."
msgstr ""
-#: doc/classes/String.xml:863
+#: doc/classes/String.xml:855
msgid "Returns the SHA-1 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:870
+#: doc/classes/String.xml:862
msgid "Returns the SHA-1 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:877
+#: doc/classes/String.xml:869
msgid "Returns the SHA-256 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:884
+#: doc/classes/String.xml:876
msgid "Returns the SHA-256 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:893
+#: doc/classes/String.xml:885
msgid ""
"Returns the similarity index of the text compared to this string. 1 means "
"totally similar and 0 means totally dissimilar."
msgstr ""
-#: doc/classes/String.xml:906
+#: doc/classes/String.xml:898
msgid ""
"Splits the string by a [code]delimiter[/code] string and returns an array of "
-"the substrings.\n"
+"the substrings. The [code]delimiter[/code] can be of any length.\n"
"If [code]maxsplit[/code] is specified, it defines the number of splits to do "
-"from the left up to [code]maxsplit[/code]. The default value of 0 means that "
-"all items are split.\n"
+"from the left up to [code]maxsplit[/code]. The default value of [code]0[/"
+"code] means that all items are split.\n"
"Example:\n"
"[codeblock]\n"
"var some_string = \"One,Two,Three,Four\"\n"
@@ -48132,10 +48816,12 @@ msgid ""
"print(some_array.size()) # Prints 2\n"
"print(some_array[0]) # Prints \"One\"\n"
"print(some_array[1]) # Prints \"Two,Three,Four\"\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"If you need to split strings with more complex rules, use the [RegEx] class "
+"instead."
msgstr ""
-#: doc/classes/String.xml:926
+#: doc/classes/String.xml:919
msgid ""
"Splits the string in floats by using a delimiter string and returns an array "
"of the substrings.\n"
@@ -48143,7 +48829,7 @@ msgid ""
"split by [code]\",\"[/code]."
msgstr ""
-#: doc/classes/String.xml:938
+#: doc/classes/String.xml:931
msgid ""
"Returns a copy of the string stripped of any non-printable character "
"(including tabulations, spaces and line breaks) at the beginning and the "
@@ -48151,7 +48837,7 @@ msgid ""
"right edges respectively."
msgstr ""
-#: doc/classes/String.xml:945
+#: doc/classes/String.xml:938
msgid ""
"Returns a copy of the string stripped of any escape character. These include "
"all non-printable control characters of the first page of the ASCII table (< "
@@ -48159,14 +48845,14 @@ msgid ""
"code] and [code]\\r[/code]) characters, but not spaces."
msgstr ""
-#: doc/classes/String.xml:956
+#: doc/classes/String.xml:949
msgid ""
"Returns part of the string from the position [code]from[/code] with length "
"[code]len[/code]. Argument [code]len[/code] is optional and using [code]-1[/"
"code] will return remaining characters from given position."
msgstr ""
-#: doc/classes/String.xml:963
+#: doc/classes/String.xml:956
msgid ""
"Converts the String (which is a character array) to [PackedByteArray] (which "
"is an array of bytes). The conversion is faster compared to [method "
@@ -48174,25 +48860,25 @@ msgid ""
"ASCII characters."
msgstr ""
-#: doc/classes/String.xml:970
+#: doc/classes/String.xml:963
msgid ""
"Converts a string containing a decimal number into a [code]float[/code]."
msgstr ""
-#: doc/classes/String.xml:977
+#: doc/classes/String.xml:970
msgid ""
"Converts a string containing an integer number into an [code]int[/code]."
msgstr ""
-#: doc/classes/String.xml:984
+#: doc/classes/String.xml:977
msgid "Returns the string converted to lowercase."
msgstr ""
-#: doc/classes/String.xml:991
+#: doc/classes/String.xml:984
msgid "Returns the string converted to uppercase."
msgstr ""
-#: doc/classes/String.xml:998
+#: doc/classes/String.xml:991
msgid ""
"Converts the String (which is an array of characters) to [PackedByteArray] "
"(which is an array of bytes). The conversion is a bit slower than [method "
@@ -48200,25 +48886,25 @@ msgid ""
"this function over [method to_ascii]."
msgstr ""
-#: doc/classes/String.xml:1007
+#: doc/classes/String.xml:1000
msgid ""
"Removes a given string from the start if it starts with it or leaves the "
"string unchanged."
msgstr ""
-#: doc/classes/String.xml:1016
+#: doc/classes/String.xml:1009
msgid ""
"Removes a given string from the end if it ends with it or leaves the string "
"unchanged."
msgstr ""
-#: doc/classes/String.xml:1023
+#: doc/classes/String.xml:1016
msgid ""
"Returns a copy of the string with special characters escaped using the XML "
"standard."
msgstr ""
-#: doc/classes/String.xml:1030
+#: doc/classes/String.xml:1023
msgid ""
"Returns a copy of the string with escaped characters replaced by their "
"meanings according to the XML standard."
@@ -49450,50 +50136,42 @@ msgid ""
"undo/redo."
msgstr ""
-#: doc/classes/TextEdit.xml:24
-msgid "Adds color region (given the delimiters) and its colors."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:35
-msgid "Adds a [code]keyword[/code] and its [Color]."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:44
+#: doc/classes/TextEdit.xml:18
msgid ""
"Returns if the given line is foldable, that is, it has indented lines right "
"below it."
msgstr ""
-#: doc/classes/TextEdit.xml:57
+#: doc/classes/TextEdit.xml:25
msgid ""
-"Clears all custom syntax coloring information previously added with [method "
-"add_color_region] or [method add_keyword_color]."
+"Centers the viewport on the line the editing cursor is at. This also resets "
+"the [member scroll_horizontal] value to [code]0[/code]."
msgstr ""
-#: doc/classes/TextEdit.xml:64
+#: doc/classes/TextEdit.xml:32
msgid "Clears the undo history."
msgstr ""
-#: doc/classes/TextEdit.xml:71
+#: doc/classes/TextEdit.xml:39
msgid "Copy's the current text selection."
msgstr ""
-#: doc/classes/TextEdit.xml:78
+#: doc/classes/TextEdit.xml:46
msgid "Returns the column the editing cursor is at."
msgstr ""
-#: doc/classes/TextEdit.xml:85
+#: doc/classes/TextEdit.xml:53
msgid "Returns the line the editing cursor is at."
msgstr ""
-#: doc/classes/TextEdit.xml:96
+#: doc/classes/TextEdit.xml:64
msgid ""
"Moves the cursor at the specified [code]column[/code] index.\n"
"If [code]adjust_viewport[/code] is set to [code]true[/code], the viewport "
"will center at the cursor position after the move occurs."
msgstr ""
-#: doc/classes/TextEdit.xml:112
+#: doc/classes/TextEdit.xml:80
msgid ""
"Moves the cursor at the specified [code]line[/code] index.\n"
"If [code]adjust_viewport[/code] is set to [code]true[/code], the viewport "
@@ -49502,111 +50180,101 @@ msgid ""
"[code]line[/code] can be hidden using [method set_line_as_hidden]."
msgstr ""
-#: doc/classes/TextEdit.xml:121
+#: doc/classes/TextEdit.xml:89
msgid "Cut's the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:128
+#: doc/classes/TextEdit.xml:96
msgid "Deselects the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:135
+#: doc/classes/TextEdit.xml:103
msgid "Folds all lines that are possible to be folded (see [method can_fold])."
msgstr ""
-#: doc/classes/TextEdit.xml:144
+#: doc/classes/TextEdit.xml:112
msgid "Folds the given line, if possible (see [method can_fold])."
msgstr ""
-#: doc/classes/TextEdit.xml:151
+#: doc/classes/TextEdit.xml:119
msgid "Returns an array containing the line number of each breakpoint."
msgstr ""
-#: doc/classes/TextEdit.xml:160
-msgid "Returns the [Color] of the specified [code]keyword[/code]."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:169
+#: doc/classes/TextEdit.xml:128
msgid "Returns the text of a specific line."
msgstr ""
-#: doc/classes/TextEdit.xml:176
+#: doc/classes/TextEdit.xml:135
msgid "Returns the amount of total lines in the text."
msgstr ""
-#: doc/classes/TextEdit.xml:183
+#: doc/classes/TextEdit.xml:142
msgid ""
"Returns the [PopupMenu] of this [TextEdit]. By default, this menu is "
"displayed when right-clicking on the [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:190
+#: doc/classes/TextEdit.xml:149
msgid "Returns the selection begin column."
msgstr ""
-#: doc/classes/TextEdit.xml:197
+#: doc/classes/TextEdit.xml:156
msgid "Returns the selection begin line."
msgstr ""
-#: doc/classes/TextEdit.xml:204
+#: doc/classes/TextEdit.xml:163
msgid "Returns the text inside the selection."
msgstr ""
-#: doc/classes/TextEdit.xml:211
+#: doc/classes/TextEdit.xml:170
msgid "Returns the selection end column."
msgstr ""
-#: doc/classes/TextEdit.xml:218
+#: doc/classes/TextEdit.xml:177
msgid "Returns the selection end line."
msgstr ""
-#: doc/classes/TextEdit.xml:225
+#: doc/classes/TextEdit.xml:184
msgid "Returns a [String] text with the word under the mouse cursor location."
msgstr ""
-#: doc/classes/TextEdit.xml:234
-msgid ""
-"Returns whether the specified [code]keyword[/code] has a color set to it or "
-"not."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:243
+#: doc/classes/TextEdit.xml:193
msgid "Insert the specified text at the cursor position."
msgstr ""
-#: doc/classes/TextEdit.xml:252
+#: doc/classes/TextEdit.xml:202
msgid "Returns whether the line at the specified index is folded or not."
msgstr ""
-#: doc/classes/TextEdit.xml:261
+#: doc/classes/TextEdit.xml:211
msgid "Returns whether the line at the specified index is hidden or not."
msgstr ""
-#: doc/classes/TextEdit.xml:268
+#: doc/classes/TextEdit.xml:218
msgid "Returns [code]true[/code] if the selection is active."
msgstr ""
-#: doc/classes/TextEdit.xml:277
+#: doc/classes/TextEdit.xml:227
msgid ""
"Triggers a right-click menu action by the specified index. See [enum "
"MenuItems] for a list of available indexes."
msgstr ""
-#: doc/classes/TextEdit.xml:284
+#: doc/classes/TextEdit.xml:234
msgid "Paste the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:291
+#: doc/classes/TextEdit.xml:241
msgid "Perform redo operation."
msgstr ""
-#: doc/classes/TextEdit.xml:298
+#: doc/classes/TextEdit.xml:248
msgid ""
"Removes all the breakpoints. This will not fire the [signal "
"breakpoint_toggled] signal."
msgstr ""
-#: doc/classes/TextEdit.xml:313
+#: doc/classes/TextEdit.xml:263
msgid ""
"Perform a search inside the text. Search flags can be specified in the [enum "
"SearchFlags] enum.\n"
@@ -49622,244 +50290,265 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/TextEdit.xml:336
-msgid "Perform selection, from line/column to line/column."
+#: doc/classes/TextEdit.xml:286
+msgid ""
+"Perform selection, from line/column to line/column.\n"
+"If [member selecting_enabled] is [code]false[/code], no selection will occur."
msgstr ""
-#: doc/classes/TextEdit.xml:343
-msgid "Select all the text."
+#: doc/classes/TextEdit.xml:294
+msgid ""
+"Select all the text.\n"
+"If [member selecting_enabled] is [code]false[/code], no selection will occur."
msgstr ""
-#: doc/classes/TextEdit.xml:354
+#: doc/classes/TextEdit.xml:306
msgid "Sets the text for a specific line."
msgstr ""
-#: doc/classes/TextEdit.xml:365
+#: doc/classes/TextEdit.xml:317
msgid "If [code]true[/code], hides the line of the specified index."
msgstr ""
-#: doc/classes/TextEdit.xml:374
+#: doc/classes/TextEdit.xml:326
msgid "Toggle the folding of the code block at the given line."
msgstr ""
-#: doc/classes/TextEdit.xml:381
+#: doc/classes/TextEdit.xml:333
msgid "Perform undo operation."
msgstr ""
-#: doc/classes/TextEdit.xml:390
+#: doc/classes/TextEdit.xml:342
msgid "Unfolds the given line, if folded."
msgstr ""
-#: doc/classes/TextEdit.xml:397
+#: doc/classes/TextEdit.xml:349
msgid ""
"Unhide all lines that were previously set to hidden by [method "
"set_line_as_hidden]."
msgstr ""
-#: doc/classes/TextEdit.xml:403
+#: doc/classes/TextEdit.xml:355
msgid "If [code]true[/code], the breakpoint gutter is visible."
msgstr ""
-#: doc/classes/TextEdit.xml:412
+#: doc/classes/TextEdit.xml:364
msgid ""
"If [code]true[/code], the caret displays as a rectangle.\n"
"If [code]false[/code], the caret displays as a bar."
msgstr ""
-#: doc/classes/TextEdit.xml:416
+#: doc/classes/TextEdit.xml:368
msgid ""
"If [code]true[/code], a right-click moves the cursor at the mouse position "
"before displaying the context menu.\n"
"If [code]false[/code], the context menu disregards mouse location."
msgstr ""
-#: doc/classes/TextEdit.xml:420
+#: doc/classes/TextEdit.xml:372
msgid "If [code]true[/code], a right-click displays the context menu."
msgstr ""
-#: doc/classes/TextEdit.xml:423
+#: doc/classes/TextEdit.xml:375
msgid ""
"If [code]true[/code], the \"space\" character will have a visible "
"representation."
msgstr ""
-#: doc/classes/TextEdit.xml:426
+#: doc/classes/TextEdit.xml:378
msgid ""
"If [code]true[/code], the \"tab\" character will have a visible "
"representation."
msgstr ""
-#: doc/classes/TextEdit.xml:430
+#: doc/classes/TextEdit.xml:382
msgid ""
"If [code]true[/code], the fold gutter is visible. This enables folding "
"groups of indented lines."
msgstr ""
-#: doc/classes/TextEdit.xml:433
+#: doc/classes/TextEdit.xml:385
msgid ""
"If [code]true[/code], all lines that have been set to hidden by [method "
"set_line_as_hidden], will not be visible."
msgstr ""
-#: doc/classes/TextEdit.xml:436
+#: doc/classes/TextEdit.xml:388
msgid ""
"If [code]true[/code], all occurrences of the selected text will be "
"highlighted."
msgstr ""
-#: doc/classes/TextEdit.xml:439
+#: doc/classes/TextEdit.xml:391
msgid "If [code]true[/code], the line containing the cursor is highlighted."
msgstr ""
-#: doc/classes/TextEdit.xml:447
+#: doc/classes/TextEdit.xml:394
+msgid ""
+"If [code]true[/code], a minimap is shown, providing an outline of your "
+"source code."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:397
+msgid "The width, in pixels, of the minimap."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:401
msgid ""
"If [code]true[/code], custom [code]font_color_selected[/code] will be used "
"for selected text."
msgstr ""
-#: doc/classes/TextEdit.xml:450
+#: doc/classes/TextEdit.xml:404
msgid ""
"If [code]true[/code], read-only mode is enabled. Existing text cannot be "
"modified and new text cannot be added."
msgstr ""
-#: doc/classes/TextEdit.xml:463
+#: doc/classes/TextEdit.xml:413
msgid ""
-"If [code]true[/code], line numbers are displayed to the left of the text."
+"If [code]true[/code], text can be selected.\n"
+"If [code]false[/code], text can not be selected by the user or by the "
+"[method select] or [method select_all] methods."
msgstr ""
-#: doc/classes/TextEdit.xml:466
+#: doc/classes/TextEdit.xml:417
msgid ""
-"If [code]true[/code], sets the [code]step[/code] of the scrollbars to "
-"[code]0.25[/code] which results in smoother scrolling."
+"If [code]true[/code], shortcut keys for context menu items are enabled, even "
+"if the context menu is disabled."
msgstr ""
-#: doc/classes/TextEdit.xml:469
+#: doc/classes/TextEdit.xml:420
+msgid ""
+"If [code]true[/code], line numbers are displayed to the left of the text."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:423
msgid ""
-"If [code]true[/code], any custom color properties that have been set for "
-"this [TextEdit] will be visible."
+"If [code]true[/code], sets the [code]step[/code] of the scrollbars to "
+"[code]0.25[/code] which results in smoother scrolling."
msgstr ""
-#: doc/classes/TextEdit.xml:472
+#: doc/classes/TextEdit.xml:428
msgid "String value of the [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:475
+#: doc/classes/TextEdit.xml:431
msgid "Vertical scroll sensitivity."
msgstr ""
-#: doc/classes/TextEdit.xml:478
+#: doc/classes/TextEdit.xml:437
msgid ""
"If [code]true[/code], enables text wrapping when it goes beyond the edge of "
"what is visible."
msgstr ""
-#: doc/classes/TextEdit.xml:486
+#: doc/classes/TextEdit.xml:445
msgid "Emitted when a breakpoint is placed via the breakpoint gutter."
msgstr ""
-#: doc/classes/TextEdit.xml:491
+#: doc/classes/TextEdit.xml:450
msgid "Emitted when the cursor changes."
msgstr ""
-#: doc/classes/TextEdit.xml:500
+#: doc/classes/TextEdit.xml:459
msgid "Emitted when the info icon is clicked."
msgstr ""
-#: doc/classes/TextEdit.xml:531
+#: doc/classes/TextEdit.xml:496
msgid "Match case when searching."
msgstr ""
-#: doc/classes/TextEdit.xml:534
+#: doc/classes/TextEdit.xml:499
msgid "Match whole words when searching."
msgstr ""
-#: doc/classes/TextEdit.xml:537
+#: doc/classes/TextEdit.xml:502
msgid "Search from end to beginning."
msgstr ""
-#: doc/classes/TextEdit.xml:546
+#: doc/classes/TextEdit.xml:511
msgid ""
"Pastes the clipboard text over the selected text (or at the cursor's "
"position)."
msgstr ""
-#: doc/classes/TextEdit.xml:549
+#: doc/classes/TextEdit.xml:514
msgid "Erases the whole [TextEdit] text."
msgstr ""
-#: doc/classes/TextEdit.xml:552
+#: doc/classes/TextEdit.xml:517
msgid "Selects the whole [TextEdit] text."
msgstr ""
-#: doc/classes/TextEdit.xml:558
+#: doc/classes/TextEdit.xml:523
msgid "Redoes the previous action."
msgstr ""
-#: doc/classes/TextEdit.xml:566
+#: doc/classes/TextEdit.xml:531
msgid ""
"Sets the background [Color] of this [TextEdit]. [member syntax_highlighting] "
"has to be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:569
+#: doc/classes/TextEdit.xml:534
msgid ""
"Sets the [Color] of the bookmark marker. [member syntax_highlighting] has to "
"be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:574 doc/classes/TextEdit.xml:601
+#: doc/classes/TextEdit.xml:539 doc/classes/TextEdit.xml:566
msgid ""
"Sets the [Color] of the breakpoints. [member breakpoint_gutter] has to be "
"enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:612
+#: doc/classes/TextEdit.xml:577
msgid "Sets the default [Font]."
msgstr ""
-#: doc/classes/TextEdit.xml:615
+#: doc/classes/TextEdit.xml:580
msgid "Sets the font [Color]."
msgstr ""
-#: doc/classes/TextEdit.xml:620
+#: doc/classes/TextEdit.xml:585
msgid ""
"Sets the [Color] of the selected text. [member override_selected_font_color] "
"has to be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:625
+#: doc/classes/TextEdit.xml:588
msgid ""
"Sets the [Color] of the line numbers. [member show_line_numbers] has to be "
"enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:628
+#: doc/classes/TextEdit.xml:591
msgid "Sets the spacing between the lines."
msgstr ""
-#: doc/classes/TextEdit.xml:631
+#: doc/classes/TextEdit.xml:594
msgid "Sets the [Color] of marked text."
msgstr ""
-#: doc/classes/TextEdit.xml:636
+#: doc/classes/TextEdit.xml:597
msgid "Sets the [StyleBox] of this [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:641
+#: doc/classes/TextEdit.xml:600
msgid ""
"Sets the [StyleBox] of this [TextEdit] when [member readonly] is enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:646
+#: doc/classes/TextEdit.xml:605
msgid "Sets the highlight [Color] of text selections."
msgstr ""
-#: doc/classes/TextEdit.xml:653
+#: doc/classes/TextEdit.xml:610
msgid "Sets a custom [Texture2D] for tab text characters."
msgstr ""
-#: doc/classes/TextEdit.xml:656
+#: doc/classes/TextEdit.xml:613
msgid ""
"Sets the highlight [Color] of multiple occurrences. [member "
"highlight_all_occurrences] has to be enabled."
@@ -49937,80 +50626,80 @@ msgid ""
"the texture will not scale with the node."
msgstr ""
-#: doc/classes/TextureButton.xml:19
+#: doc/classes/TextureButton.xml:25
msgid ""
"Controls the texture's behavior when you resize the node's bounding "
"rectangle, [b]only if[/b] [member expand] is [code]true[/code]. Set it to "
"one of the [enum StretchMode] constants. See the constants to learn more."
msgstr ""
-#: doc/classes/TextureButton.xml:22
+#: doc/classes/TextureButton.xml:28
msgid ""
"Pure black and white [BitMap] image to use for click detection. On the mask, "
"white pixels represent the button's clickable area. Use it to create buttons "
"with curved shapes."
msgstr ""
-#: doc/classes/TextureButton.xml:25
+#: doc/classes/TextureButton.xml:31
msgid ""
"Texture to display when the node is disabled. See [member BaseButton."
"disabled]."
msgstr ""
-#: doc/classes/TextureButton.xml:28
+#: doc/classes/TextureButton.xml:34
msgid "Texture to display when the node has mouse or keyboard focus."
msgstr ""
-#: doc/classes/TextureButton.xml:31
+#: doc/classes/TextureButton.xml:37
msgid "Texture to display when the mouse hovers the node."
msgstr ""
-#: doc/classes/TextureButton.xml:34
+#: doc/classes/TextureButton.xml:40
msgid ""
"Texture to display by default, when the node is [b]not[/b] in the disabled, "
"focused, hover or pressed state."
msgstr ""
-#: doc/classes/TextureButton.xml:37
+#: doc/classes/TextureButton.xml:43
msgid ""
"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 "
"[member BaseButton.shortcut] key."
msgstr ""
-#: doc/classes/TextureButton.xml:42 doc/classes/TextureRect.xml:36
+#: doc/classes/TextureButton.xml:48 doc/classes/TextureRect.xml:36
msgid "Scale to fit the node's bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:45 doc/classes/TextureRect.xml:39
+#: doc/classes/TextureButton.xml:51 doc/classes/TextureRect.xml:39
msgid "Tile inside the node's bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:48 doc/classes/TextureRect.xml:42
+#: doc/classes/TextureButton.xml:54 doc/classes/TextureRect.xml:42
msgid ""
"The texture keeps its original size and stays in the bounding rectangle's "
"top-left corner."
msgstr ""
-#: doc/classes/TextureButton.xml:51 doc/classes/TextureRect.xml:45
+#: doc/classes/TextureButton.xml:57 doc/classes/TextureRect.xml:45
msgid ""
"The texture keeps its original size and stays centered in the node's "
"bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:54 doc/classes/TextureRect.xml:48
+#: doc/classes/TextureButton.xml:60 doc/classes/TextureRect.xml:48
msgid ""
"Scale the texture to fit the node's bounding rectangle, but maintain the "
"texture's aspect ratio."
msgstr ""
-#: doc/classes/TextureButton.xml:57
+#: doc/classes/TextureButton.xml:63
msgid ""
"Scale the texture to fit the node's bounding rectangle, center it, and "
"maintain its aspect ratio."
msgstr ""
-#: doc/classes/TextureButton.xml:60 doc/classes/TextureRect.xml:54
+#: doc/classes/TextureButton.xml:66 doc/classes/TextureRect.xml:54
msgid ""
"Scale the texture so that the shorter side fits the bounding rectangle. The "
"other side clips to the node's limits."
@@ -50460,19 +51149,25 @@ msgid ""
"advised if working with shared objects."
msgstr ""
-#: doc/classes/Thread.xml:17
+#: doc/classes/Thread.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/threads/thread_safe_apis."
+"html"
+msgstr ""
+
+#: doc/classes/Thread.xml:18
msgid ""
"Returns the current [Thread]'s ID, uniquely identifying it among all threads."
msgstr ""
-#: doc/classes/Thread.xml:24
+#: doc/classes/Thread.xml:25
msgid ""
"Returns [code]true[/code] if this [Thread] is currently active. An active "
"[Thread] cannot start work on a new method but can be joined with [method "
"wait_to_finish]."
msgstr ""
-#: doc/classes/Thread.xml:39
+#: doc/classes/Thread.xml:40
msgid ""
"Starts a new [Thread] that runs [code]method[/code] on object "
"[code]instance[/code] with [code]userdata[/code] passed as an argument. Even "
@@ -50482,21 +51177,21 @@ msgid ""
"Returns [constant OK] on success, or [constant ERR_CANT_CREATE] on failure."
msgstr ""
-#: doc/classes/Thread.xml:47
+#: doc/classes/Thread.xml:48
msgid ""
"Joins the [Thread] and waits for it to finish. Returns what the method "
"called returned."
msgstr ""
-#: doc/classes/Thread.xml:53
+#: doc/classes/Thread.xml:54
msgid "A thread running with lower priority than normally."
msgstr ""
-#: doc/classes/Thread.xml:56
+#: doc/classes/Thread.xml:57
msgid "A thread with a standard priority."
msgstr ""
-#: doc/classes/Thread.xml:59
+#: doc/classes/Thread.xml:60
msgid "A thread running with higher priority than normally."
msgstr ""
@@ -51031,50 +51726,61 @@ msgid "Returns the [Transform2D] of a tile's shape."
msgstr ""
#: doc/classes/TileSet.xml:481
-msgid "Returns an array of the tile's shapes."
+msgid ""
+"Returns an array of dictionaries describing the tile's shapes.\n"
+"[b]Dictionary structure in the array returned by this method:[/b]\n"
+"[codeblock]\n"
+"{\n"
+" \"autotile_coord\": Vector2,\n"
+" \"one_way\": bool,\n"
+" \"one_way_margin\": int,\n"
+" \"shape\": CollisionShape2D,\n"
+" \"shape_transform\": Transform2D,\n"
+"}\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/TileSet.xml:490
+#: doc/classes/TileSet.xml:500
msgid "Returns the tile's texture."
msgstr ""
-#: doc/classes/TileSet.xml:499
+#: doc/classes/TileSet.xml:509
msgid "Returns the texture offset of the tile."
msgstr ""
-#: doc/classes/TileSet.xml:508
+#: doc/classes/TileSet.xml:518
msgid "Returns the tile's [enum TileMode]."
msgstr ""
-#: doc/classes/TileSet.xml:517
+#: doc/classes/TileSet.xml:527
msgid "Returns the tile's Z index (drawing layer)."
msgstr ""
-#: doc/classes/TileSet.xml:528
+#: doc/classes/TileSet.xml:538
msgid "Sets a light occluder for the tile."
msgstr ""
-#: doc/classes/TileSet.xml:539
+#: doc/classes/TileSet.xml:549
msgid "Sets the tile's material."
msgstr ""
-#: doc/classes/TileSet.xml:550
+#: doc/classes/TileSet.xml:560
msgid "Sets the tile's modulation color."
msgstr ""
-#: doc/classes/TileSet.xml:561
+#: doc/classes/TileSet.xml:571
msgid "Sets the tile's name."
msgstr ""
-#: doc/classes/TileSet.xml:572
+#: doc/classes/TileSet.xml:582
msgid "Sets the tile's navigation polygon."
msgstr ""
-#: doc/classes/TileSet.xml:583
+#: doc/classes/TileSet.xml:593
msgid "Sets an offset for the tile's navigation polygon."
msgstr ""
-#: doc/classes/TileSet.xml:594
+#: doc/classes/TileSet.xml:604
msgid ""
"Sets the tile's normal map texture.\n"
"[b]Note:[/b] Godot expects the normal map to use X+, Y-, and Z+ coordinates. "
@@ -51083,48 +51789,48 @@ msgid ""
"a comparison of normal map coordinates expected by popular engines."
msgstr ""
-#: doc/classes/TileSet.xml:606
+#: doc/classes/TileSet.xml:616
msgid "Sets an offset for the tile's light occluder."
msgstr ""
-#: doc/classes/TileSet.xml:617
+#: doc/classes/TileSet.xml:627
msgid ""
"Sets the tile's sub-region in the texture. This is common in texture atlases."
msgstr ""
-#: doc/classes/TileSet.xml:630
+#: doc/classes/TileSet.xml:640
msgid "Sets a shape for the tile, enabling collision."
msgstr ""
-#: doc/classes/TileSet.xml:643
+#: doc/classes/TileSet.xml:653
msgid "Sets the offset of a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:656
+#: doc/classes/TileSet.xml:666
msgid "Enables one-way collision on a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:681
+#: doc/classes/TileSet.xml:691
msgid "Sets a [Transform2D] on a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:692
+#: doc/classes/TileSet.xml:702
msgid "Sets an array of shapes for the tile, enabling collision."
msgstr ""
-#: doc/classes/TileSet.xml:703
+#: doc/classes/TileSet.xml:713
msgid "Sets the tile's texture."
msgstr ""
-#: doc/classes/TileSet.xml:714
+#: doc/classes/TileSet.xml:724
msgid "Sets the tile's texture offset."
msgstr ""
-#: doc/classes/TileSet.xml:725
+#: doc/classes/TileSet.xml:735
msgid "Sets the tile's [enum TileMode]."
msgstr ""
-#: doc/classes/TileSet.xml:736
+#: doc/classes/TileSet.xml:746
msgid "Sets the tile's drawing index."
msgstr ""
@@ -51135,14 +51841,16 @@ msgstr ""
#: doc/classes/Timer.xml:7
msgid ""
"Counts down a specified interval and emits a signal on reaching 0. Can be "
-"set to repeat or \"one-shot\" mode."
+"set to repeat or \"one-shot\" mode.\n"
+"[b]Note:[/b] To create an one-shot timer without instantiating a node, use "
+"[method SceneTree.create_timer]."
msgstr ""
-#: doc/classes/Timer.xml:16
+#: doc/classes/Timer.xml:17
msgid "Returns [code]true[/code] if the timer is stopped."
msgstr ""
-#: doc/classes/Timer.xml:25
+#: doc/classes/Timer.xml:26
msgid ""
"Starts the timer. Sets [code]wait_time[/code] to [code]time_sec[/code] if "
"[code]time_sec > 0[/code]. This also resets the remaining time to "
@@ -51150,11 +51858,11 @@ msgid ""
"[b]Note:[/b] this method will not resume a paused timer. See [member paused]."
msgstr ""
-#: doc/classes/Timer.xml:33
+#: doc/classes/Timer.xml:34
msgid "Stops the timer."
msgstr ""
-#: doc/classes/Timer.xml:39
+#: doc/classes/Timer.xml:40
msgid ""
"If [code]true[/code], the timer will automatically start when entering the "
"scene tree.\n"
@@ -51162,40 +51870,40 @@ msgid ""
"the timer enters the scene tree and starts."
msgstr ""
-#: doc/classes/Timer.xml:43
+#: doc/classes/Timer.xml:44
msgid ""
"If [code]true[/code], the timer will stop when reaching 0. If [code]false[/"
"code], it will restart."
msgstr ""
-#: doc/classes/Timer.xml:46
+#: doc/classes/Timer.xml:47
msgid ""
"If [code]true[/code], the timer is paused and will not process until it is "
"unpaused again, even if [method start] is called."
msgstr ""
-#: doc/classes/Timer.xml:49
+#: doc/classes/Timer.xml:50
msgid "Processing mode. See [enum TimerProcessMode]."
msgstr ""
-#: doc/classes/Timer.xml:52
+#: doc/classes/Timer.xml:53
msgid ""
"The timer's remaining time in seconds. Returns 0 if the timer is inactive.\n"
"[b]Note:[/b] You cannot set this value. To change the timer's remaining "
"time, use [method start]."
msgstr ""
-#: doc/classes/Timer.xml:56
+#: doc/classes/Timer.xml:57
msgid "Wait time in seconds."
msgstr ""
-#: doc/classes/Timer.xml:68
+#: doc/classes/Timer.xml:69
msgid ""
"Update the timer during the physics step at each frame (fixed framerate "
"processing)."
msgstr ""
-#: doc/classes/Timer.xml:71
+#: doc/classes/Timer.xml:72
msgid "Update the timer during the idle time at each frame."
msgstr ""
@@ -51274,60 +51982,66 @@ msgstr ""
#: doc/classes/Transform.xml:7
msgid ""
-"Represents one or many transformations in 3D space such as translation, "
-"rotation, or scaling. It consists of a [member basis] and an [member "
-"origin]. It is similar to a 3×4 matrix."
+"3×4 matrix (3 rows, 4 columns) used for 3D linear transformations. It can "
+"represent transformations such as translation, rotation, or scaling. It "
+"consists of a [member basis] (first 3 columns) and a [Vector3] for the "
+"[member origin] (last column).\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
msgstr ""
-#: doc/classes/Transform.xml:26
+#: doc/classes/Transform.xml:28
msgid ""
-"Constructs the Transform from four [Vector3]. Each axis corresponds to local "
-"basis vectors (some of which may be scaled)."
+"Constructs a Transform from four [Vector3] values (matrix columns). Each "
+"axis corresponds to local basis vectors (some of which may be scaled)."
msgstr ""
-#: doc/classes/Transform.xml:37
-msgid "Constructs the Transform from a [Basis] and [Vector3]."
+#: doc/classes/Transform.xml:39
+msgid "Constructs a Transform from a [Basis] and [Vector3]."
msgstr ""
-#: doc/classes/Transform.xml:46
-msgid "Constructs the Transform from a [Transform2D]."
+#: doc/classes/Transform.xml:48
+msgid "Constructs a Transform from a [Transform2D]."
msgstr ""
-#: doc/classes/Transform.xml:55
+#: doc/classes/Transform.xml:57
msgid ""
-"Constructs the Transform from a [Quat]. The origin will be Vector3(0, 0, 0)."
+"Constructs a Transform from a [Quat]. The origin will be [code]Vector3(0, 0, "
+"0)[/code]."
msgstr ""
-#: doc/classes/Transform.xml:64
+#: doc/classes/Transform.xml:66
msgid ""
"Constructs the Transform from a [Basis]. The origin will be Vector3(0, 0, 0)."
msgstr ""
-#: doc/classes/Transform.xml:71
+#: doc/classes/Transform.xml:73 doc/classes/Transform2D.xml:51
msgid ""
"Returns the inverse of the transform, under the assumption that the "
"transformation is composed of rotation, scaling and translation."
msgstr ""
-#: doc/classes/Transform.xml:82
-msgid "Interpolates the transform to other Transform by weight amount (0-1)."
+#: doc/classes/Transform.xml:84
+msgid ""
+"Interpolates the transform to other Transform by weight amount (on the range "
+"of 0.0 to 1.0)."
msgstr ""
-#: doc/classes/Transform.xml:89 doc/classes/Transform2D.xml:106
+#: doc/classes/Transform.xml:91
msgid ""
"Returns the inverse of the transform, under the assumption that the "
"transformation is composed of rotation and translation (no scaling, use "
"affine_inverse for transforms with scaling)."
msgstr ""
-#: doc/classes/Transform.xml:98 doc/classes/Transform2D.xml:115
+#: doc/classes/Transform.xml:100 doc/classes/Transform2D.xml:119
msgid ""
"Returns [code]true[/code] if this transform and [code]transform[/code] are "
"approximately equal, by calling [code]is_equal_approx[/code] on each "
"component."
msgstr ""
-#: doc/classes/Transform.xml:109
+#: doc/classes/Transform.xml:111
msgid ""
"Returns a copy of the transform rotated such that its -Z axis points towards "
"the [code]target[/code] position.\n"
@@ -51337,25 +52051,25 @@ msgid ""
"Operations take place in global space."
msgstr ""
-#: doc/classes/Transform.xml:118 doc/classes/Transform2D.xml:122
+#: doc/classes/Transform.xml:120
msgid ""
"Returns the transform with the basis orthogonal (90 degrees), and normalized "
"axis vectors."
msgstr ""
-#: doc/classes/Transform.xml:129
+#: doc/classes/Transform.xml:131
msgid ""
"Rotates the transform around the given axis by the given angle (in radians), "
"using matrix multiplication. The axis must be a normalized vector."
msgstr ""
-#: doc/classes/Transform.xml:138
+#: doc/classes/Transform.xml:140
msgid ""
"Scales basis and origin of the transform by the given scale factor, using "
"matrix multiplication."
msgstr ""
-#: doc/classes/Transform.xml:147 doc/classes/Transform2D.xml:149
+#: doc/classes/Transform.xml:149 doc/classes/Transform2D.xml:153
msgid ""
"Translates the transform by the given offset, relative to the transform's "
"basis vectors.\n"
@@ -51363,152 +52077,162 @@ msgid ""
"multiplication."
msgstr ""
-#: doc/classes/Transform.xml:157
+#: doc/classes/Transform.xml:159
msgid ""
"Transforms the given [Vector3], [Plane], [AABB], or [PackedVector3Array] by "
"this transform."
msgstr ""
-#: doc/classes/Transform.xml:166
+#: doc/classes/Transform.xml:168
msgid ""
"Inverse-transforms the given [Vector3], [Plane], [AABB], or "
"[PackedVector3Array] by this transform."
msgstr ""
-#: doc/classes/Transform.xml:172
+#: doc/classes/Transform.xml:174
msgid ""
"The basis is a matrix containing 3 [Vector3] as its columns: X axis, Y axis, "
"and Z axis. These vectors can be interpreted as the basis vectors of local "
"coordinate system traveling with the object."
msgstr ""
-#: doc/classes/Transform.xml:175
-msgid "The translation offset of the transform."
+#: doc/classes/Transform.xml:177
+msgid ""
+"The translation offset of the transform (column 3, the fourth column). "
+"Equivalent to array index [code]3[/code]."
msgstr ""
-#: doc/classes/Transform.xml:180
+#: doc/classes/Transform.xml:182
msgid ""
"[Transform] with no translation, rotation or scaling applied. When applied "
"to other data structures, [constant IDENTITY] performs no transformation."
msgstr ""
-#: doc/classes/Transform.xml:183
+#: doc/classes/Transform.xml:185
msgid "[Transform] with mirroring applied perpendicular to the YZ plane."
msgstr ""
-#: doc/classes/Transform.xml:186
+#: doc/classes/Transform.xml:188
msgid "[Transform] with mirroring applied perpendicular to the XZ plane."
msgstr ""
-#: doc/classes/Transform.xml:189
+#: doc/classes/Transform.xml:191
msgid "[Transform] with mirroring applied perpendicular to the XY plane."
msgstr ""
#: doc/classes/Transform2D.xml:4
-msgid "2D transformation (3×2 matrix)."
+msgid "2D transformation (2×3 matrix)."
msgstr ""
#: doc/classes/Transform2D.xml:7
msgid ""
-"Represents one or many transformations in 2D space such as translation, "
-"rotation, or scaling. It consists of two [member x] and [member y] "
-"[Vector2]s and an [member origin]. It is similar to a 3×2 matrix."
+"2×3 matrix (2 rows, 3 columns) used for 2D linear transformations. It can "
+"represent transformations such as translation, rotation, or scaling. It "
+"consists of a three [Vector2] values: [member x], [member y], and the "
+"[member origin].\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
msgstr ""
-#: doc/classes/Transform2D.xml:18
+#: doc/classes/Transform2D.xml:20
msgid "Constructs the transform from a 3D [Transform]."
msgstr ""
-#: doc/classes/Transform2D.xml:31
+#: doc/classes/Transform2D.xml:33
msgid ""
-"Constructs the transform from 3 [Vector2]s representing x, y, and origin."
+"Constructs the transform from 3 [Vector2] values representing [member x], "
+"[member y], and the [member origin] (the three column vectors)."
msgstr ""
-#: doc/classes/Transform2D.xml:42
+#: doc/classes/Transform2D.xml:44
msgid "Constructs the transform from a given angle (in radians) and position."
msgstr ""
-#: doc/classes/Transform2D.xml:58
-msgid "Transforms the given vector by this transform's basis (no translation)."
+#: doc/classes/Transform2D.xml:60
+msgid ""
+"Returns a vector transformed (multiplied) by the basis matrix.\n"
+"This method does not account for translation (the origin vector)."
msgstr ""
-#: doc/classes/Transform2D.xml:67
+#: doc/classes/Transform2D.xml:70
msgid ""
-"Inverse-transforms the given vector by this transform's basis (no "
-"translation)."
+"Returns a vector transformed (multiplied) by the inverse basis matrix.\n"
+"This method does not account for translation (the origin vector)."
msgstr ""
-#: doc/classes/Transform2D.xml:74
+#: doc/classes/Transform2D.xml:78
msgid "Returns the transform's origin (translation)."
msgstr ""
-#: doc/classes/Transform2D.xml:81
+#: doc/classes/Transform2D.xml:85
msgid "Returns the transform's rotation (in radians)."
msgstr ""
-#: doc/classes/Transform2D.xml:88
+#: doc/classes/Transform2D.xml:92
msgid "Returns the scale."
msgstr ""
-#: doc/classes/Transform2D.xml:99
+#: doc/classes/Transform2D.xml:103
msgid ""
"Returns a transform interpolated between this transform and another by a "
-"given weight (0-1)."
+"given weight (on the range of 0.0 to 1.0)."
msgstr ""
-#: doc/classes/Transform2D.xml:131
+#: doc/classes/Transform2D.xml:110
+msgid ""
+"Returns the inverse of the transform, under the assumption that the "
+"transformation is composed of rotation and translation (no scaling, use "
+"[method affine_inverse] for transforms with scaling)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:126
+msgid ""
+"Returns the transform with the basis orthogonal (90 degrees), and normalized "
+"axis vectors (scale of 1 or -1)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:135
msgid ""
"Rotates the transform by the given angle (in radians), using matrix "
"multiplication."
msgstr ""
-#: doc/classes/Transform2D.xml:140
+#: doc/classes/Transform2D.xml:144
msgid ""
"Scales the transform by the given scale factor, using matrix multiplication."
msgstr ""
-#: doc/classes/Transform2D.xml:159
+#: doc/classes/Transform2D.xml:163
msgid ""
"Transforms the given [Vector2], [Rect2], or [PackedVector2Array] by this "
"transform."
msgstr ""
-#: doc/classes/Transform2D.xml:168
+#: doc/classes/Transform2D.xml:172
msgid ""
"Inverse-transforms the given [Vector2], [Rect2], or [PackedVector2Array] by "
"this transform."
msgstr ""
-#: doc/classes/Transform2D.xml:174
-msgid "The transform's translation offset."
-msgstr ""
-
-#: doc/classes/Transform2D.xml:177
+#: doc/classes/Transform2D.xml:178
msgid ""
-"The X axis of 2×2 basis matrix containing 2 [Vector2]s as its columns: X "
-"axis and Y axis. These vectors can be interpreted as the basis vectors of "
-"local coordinate system traveling with the object."
+"The origin vector (column 2, the third column). Equivalent to array index "
+"[code]2[/code]. The origin vector represents translation."
msgstr ""
-#: doc/classes/Transform2D.xml:180
+#: doc/classes/Transform2D.xml:189
msgid ""
-"The Y axis of 2×2 basis matrix containing 2 [Vector2]s as its columns: X "
-"axis and Y axis. These vectors can be interpreted as the basis vectors of "
-"local coordinate system traveling with the object."
-msgstr ""
-
-#: doc/classes/Transform2D.xml:185
-msgid ""
-"[Transform2D] with no translation, rotation or scaling applied. When applied "
-"to other data structures, [constant IDENTITY] performs no transformation."
+"The identity [Transform2D] with no translation, rotation or scaling applied. "
+"When applied to other data structures, [constant IDENTITY] performs no "
+"transformation."
msgstr ""
-#: doc/classes/Transform2D.xml:188
-msgid "[Transform2D] with mirroring applied parallel to the X axis."
+#: doc/classes/Transform2D.xml:192
+msgid "The [Transform2D] that will flip something along the X axis."
msgstr ""
-#: doc/classes/Transform2D.xml:191
-msgid "[Transform2D] with mirroring applied parallel to the Y axis."
+#: doc/classes/Transform2D.xml:195
+msgid "The [Transform2D] that will flip something along the Y axis."
msgstr ""
#: doc/classes/Translation.xml:4
@@ -52172,7 +52896,8 @@ msgid "Returns the column's cell mode."
msgstr ""
#: doc/classes/TreeItem.xml:121
-msgid "Returns the TreeItem's child items."
+msgid ""
+"Returns the TreeItem's first child item or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:130
@@ -52204,28 +52929,32 @@ msgid "Returns the icon [Texture2D] region as [Rect2]."
msgstr ""
#: doc/classes/TreeItem.xml:199
-msgid "Returns the next TreeItem in the tree."
+msgid ""
+"Returns the next TreeItem in the tree or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:208
msgid ""
-"Returns the next visible TreeItem in the tree.\n"
+"Returns the next visible TreeItem in the tree or a null object if there is "
+"none.\n"
"If [code]wrap[/code] is enabled, the method will wrap around to the first "
"visible element in the tree when called on the last visible element, "
"otherwise it returns [code]null[/code]."
msgstr ""
#: doc/classes/TreeItem.xml:216
-msgid "Returns the parent TreeItem."
+msgid "Returns the parent TreeItem or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:223
-msgid "Returns the previous TreeItem in the tree."
+msgid ""
+"Returns the previous TreeItem in the tree or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:232
msgid ""
-"Returns the previous visible TreeItem in the tree.\n"
+"Returns the previous visible TreeItem in the tree or a null object if there "
+"is none.\n"
"If [code]wrap[/code] is enabled, the method will wrap around to the last "
"visible element in the tree when called on the first visible element, "
"otherwise it returns [code]null[/code]."
@@ -52735,6 +53464,10 @@ msgid ""
"A simple server that opens a UDP socket and returns connected "
"[PacketPeerUDP] upon receiving new packets. See also [method PacketPeerUDP."
"connect_to_host].\n"
+"After starting the server ([method listen]), you will need to [method poll] "
+"it at regular intervals (e.g. inside [method Node._process]) for it to "
+"process new packets, delivering them to the appropriate [PacketPeerUDP], and "
+"taking new connections.\n"
"Below a small example of how it can be used:\n"
"[codeblock]\n"
"# server.gd\n"
@@ -52747,6 +53480,7 @@ msgid ""
" server.listen(4242)\n"
"\n"
"func _process(delta):\n"
+" server.poll() # Important!\n"
" if server.is_connection_available():\n"
" var peer : PacketPeerUDP = server.take_connection()\n"
" var pkt = peer.get_packet()\n"
@@ -52782,35 +53516,55 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/UDPServer.xml:60
+#: doc/classes/UDPServer.xml:62
msgid ""
-"Returns [code]true[/code] if a packet with a new address/port combination is "
-"received on the socket."
+"Returns [code]true[/code] if a packet with a new address/port combination "
+"was received on the socket."
msgstr ""
-#: doc/classes/UDPServer.xml:67
+#: doc/classes/UDPServer.xml:69
msgid ""
"Returns [code]true[/code] if the socket is open and listening on a port."
msgstr ""
-#: doc/classes/UDPServer.xml:78
+#: doc/classes/UDPServer.xml:80
msgid ""
"Starts the server by opening a UDP socket listening on the given port. You "
"can optionally specify a [code]bind_address[/code] to only listen for "
"packets sent to that address. See also [method PacketPeerUDP.listen]."
msgstr ""
-#: doc/classes/UDPServer.xml:85
+#: doc/classes/UDPServer.xml:87
+msgid ""
+"Call this method at regular intervals (e.g. inside [method Node._process]) "
+"to process new packets. And packet from known address/port pair will be "
+"delivered to the appropriate [PacketPeerUDP], any packet received from an "
+"unknown address/port pair will be added as a pending connection (see [method "
+"is_connection_available], [method take_connection]). The maximum number of "
+"pending connection is defined via [member max_pending_connections]."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:94
msgid ""
-"Stops the server, closing the UDP socket if open. Will not disconnect any "
-"connected [PacketPeerUDP]."
+"Stops the server, closing the UDP socket if open. Will close all connected "
+"[PacketPeerUDP] accepted via [method take_connection] (remote peers will not "
+"be notified)."
msgstr ""
-#: doc/classes/UDPServer.xml:92
+#: doc/classes/UDPServer.xml:101
msgid ""
-"Returns a [PacketPeerUDP] connected to the address/port combination of the "
-"first packet in queue. Will return [code]null[/code] if no packet is in "
-"queue. See also [method PacketPeerUDP.connect_to_host]."
+"Returns the first pending connection (connected to the appropriate address/"
+"port). Will return [code]null[/code] if no new connection is available. See "
+"also [method is_connection_available], [method PacketPeerUDP."
+"connect_to_host]."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:107
+msgid ""
+"Define the maximum number of pending connections, during [method poll], any "
+"new pending connection exceeding that value will be automatically dropped. "
+"Setting this value to [code]0[/code] effectively prevents any new pending "
+"connection to be accepted (e.g. when all your players have connected)."
msgstr ""
#: doc/classes/UndoRedo.xml:4
@@ -53451,24 +54205,27 @@ msgstr ""
#: doc/classes/Vector2.xml:46
msgid ""
-"Returns the vector's angle in radians with respect to the X axis, or [code]"
-"(1, 0)[/code] vector.\n"
+"Returns this vector's angle with respect to the X axis, or [code](1, 0)[/"
+"code] vector, in radians.\n"
"Equivalent to the result of [method @GDScript.atan2] when called with the "
-"vector's [member x] and [member y] as parameters: [code]atan2(x, y)[/code]."
+"vector's [member y] and [member x] as parameters: [code]atan2(y, x)[/code]."
msgstr ""
#: doc/classes/Vector2.xml:56
-msgid "Returns the angle in radians between the two vectors."
-msgstr ""
+#, fuzzy
+msgid "Returns the angle to the given vector, in radians."
+msgstr "Palauttaa kahden vektorin jäännöksen."
#: doc/classes/Vector2.xml:65
msgid ""
-"Returns the angle in radians between the line connecting the two points and "
-"the X coordinate."
+"Returns the angle between the line connecting the two points and the X axis, "
+"in radians."
msgstr ""
-#: doc/classes/Vector2.xml:72 doc/classes/Vector2i.xml:46
-msgid "Returns the ratio of [member x] to [member y]."
+#: doc/classes/Vector2.xml:72
+msgid ""
+"Returns the aspect ratio of this vector, the ratio of [member x] to [member "
+"y]."
msgstr ""
#: doc/classes/Vector2.xml:81 doc/classes/Vector3.xml:59
@@ -53477,24 +54234,28 @@ msgid ""
msgstr ""
#: doc/classes/Vector2.xml:88
-msgid "Returns the vector with all components rounded up."
+msgid ""
+"Returns the vector with all components rounded up (towards positive "
+"infinity)."
msgstr ""
#: doc/classes/Vector2.xml:97
-msgid "Returns the vector with a maximum length."
+msgid ""
+"Returns the vector with a maximum length by limiting its length to "
+"[code]length[/code]."
msgstr ""
#: doc/classes/Vector2.xml:106
-msgid ""
-"Returns the 2-dimensional analog of the cross product with the given vector."
-msgstr ""
+#, fuzzy
+msgid "Returns the cross product of this vector and [code]with[/code]."
+msgstr "Laskee kahden vektorin ristitulon."
#: doc/classes/Vector2.xml:121
msgid ""
"Cubically interpolates between this vector and [code]b[/code] using "
"[code]pre_a[/code] and [code]post_b[/code] as handles, and returns the "
-"result at position [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation."
+"result at position [code]t[/code]. [code]t[/code] is on the range of 0.0 to "
+"1.0, representing the amount of interpolation."
msgstr ""
#: doc/classes/Vector2.xml:130 doc/classes/Vector3.xml:99
@@ -53502,182 +54263,199 @@ msgid ""
"Returns the normalized vector pointing from this vector to [code]b[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:139
+#: doc/classes/Vector2.xml:139 doc/classes/Vector3.xml:108
msgid ""
-"Returns the squared distance to vector [code]b[/code]. Prefer this function "
-"over [method distance_to] if you need to sort vectors or need the squared "
-"distance for some formula."
+"Returns the squared distance between this vector and [code]b[/code].\n"
+"This method runs faster than [method distance_to], so prefer it if you need "
+"to compare vectors or need the squared distance for some formula."
msgstr ""
-#: doc/classes/Vector2.xml:148
-msgid "Returns the distance to vector [code]b[/code]."
+#: doc/classes/Vector2.xml:149
+msgid "Returns the distance between this vector and [code]to[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:157
-msgid "Returns the dot product with vector [code]b[/code]."
+#: doc/classes/Vector2.xml:158
+msgid ""
+"Returns the dot product of this vector and [code]with[/code]. This can be "
+"used to compare the angle between two vectors. For example, this can be used "
+"to determine whether an enemy is facing the player.\n"
+"The dot product will be [code]0[/code] for a straight angle (90 degrees), "
+"greater than 0 for angles narrower than 90 degrees and lower than 0 for "
+"angles wider than 90 degrees.\n"
+"When using unit (normalized) vectors, the result will always be between "
+"[code]-1.0[/code] (180 degree angle) when the vectors are facing opposite "
+"directions, and [code]1.0[/code] (0 degree angle) when the vectors are "
+"aligned.\n"
+"[b]Note:[/b] [code]a.dot(b)[/code] is equivalent to [code]b.dot(a)[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:164
-msgid "Returns the vector with all components rounded down."
+#: doc/classes/Vector2.xml:168
+msgid ""
+"Returns the vector with all components rounded down (towards negative "
+"infinity)."
msgstr ""
-#: doc/classes/Vector2.xml:173 doc/classes/Vector3.xml:149
+#: doc/classes/Vector2.xml:177 doc/classes/Vector3.xml:153
msgid ""
"Returns [code]true[/code] if this vector and [code]v[/code] are "
"approximately equal, by running [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/Vector2.xml:180 doc/classes/Vector3.xml:156
-msgid "Returns [code]true[/code] if the vector is normalized."
+#: doc/classes/Vector2.xml:184 doc/classes/Vector3.xml:160
+msgid ""
+"Returns [code]true[/code] if the vector is normalized, and false otherwise."
msgstr ""
-#: doc/classes/Vector2.xml:187 doc/classes/Vector3.xml:163
-msgid "Returns the vector's length."
-msgstr ""
+#: doc/classes/Vector2.xml:191 doc/classes/Vector3.xml:167
+#, fuzzy
+msgid "Returns the length (magnitude) of this vector."
+msgstr "Palauttaa kahden vektorin jäännöksen."
-#: doc/classes/Vector2.xml:194
+#: doc/classes/Vector2.xml:198 doc/classes/Vector3.xml:174
msgid ""
-"Returns the vector's length squared. Prefer this method over [method length] "
-"if you need to sort vectors or need the squared length for some formula."
+"Returns the squared length (squared magnitude) of this vector.\n"
+"This method runs faster than [method length], so prefer it if you need to "
+"compare vectors or need the squared distance for some formula."
msgstr ""
-#: doc/classes/Vector2.xml:205
+#: doc/classes/Vector2.xml:210 doc/classes/Vector3.xml:186
msgid ""
"Returns the result of the linear interpolation between this vector and "
-"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation."
+"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is on the range of "
+"0.0 to 1.0, representing the amount of interpolation."
msgstr ""
-#: doc/classes/Vector2.xml:216 doc/classes/Vector3.xml:206
+#: doc/classes/Vector2.xml:221
msgid ""
"Moves the vector toward [code]to[/code] by the fixed [code]delta[/code] "
"amount."
msgstr ""
-#: doc/classes/Vector2.xml:223 doc/classes/Vector3.xml:213
+#: doc/classes/Vector2.xml:228 doc/classes/Vector3.xml:218
msgid ""
"Returns the vector scaled to unit length. Equivalent to [code]v / v.length()"
"[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:232 doc/classes/Vector3.xml:231
+#: doc/classes/Vector2.xml:237 doc/classes/Vector3.xml:236
msgid ""
-"Returns a vector composed of the [code]fposmod[/code] of this vector's "
+"Returns a vector composed of the [method @GDScript.fposmod] of this vector's "
"components and [code]mod[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:241 doc/classes/Vector3.xml:240
+#: doc/classes/Vector2.xml:246 doc/classes/Vector3.xml:245
msgid ""
-"Returns a vector composed of the [code]fposmod[/code] of this vector's "
+"Returns a vector composed of the [method @GDScript.fposmod] of this vector's "
"components and [code]modv[/code]'s components."
msgstr ""
-#: doc/classes/Vector2.xml:250 doc/classes/Vector3.xml:249
+#: doc/classes/Vector2.xml:255
msgid "Returns the vector projected onto the vector [code]b[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:259 doc/classes/Vector3.xml:258
+#: doc/classes/Vector2.xml:264
msgid "Returns the vector reflected from a plane defined by the given normal."
msgstr ""
-#: doc/classes/Vector2.xml:268
+#: doc/classes/Vector2.xml:273
msgid ""
"Returns the vector rotated by [code]phi[/code] radians. See also [method "
"@GDScript.deg2rad]."
msgstr ""
-#: doc/classes/Vector2.xml:275 doc/classes/Vector3.xml:276
+#: doc/classes/Vector2.xml:280
msgid ""
"Returns the vector with all components rounded to the nearest integer, with "
"halfway cases rounded away from zero."
msgstr ""
-#: doc/classes/Vector2.xml:282 doc/classes/Vector2i.xml:53
-#: doc/classes/Vector3.xml:283 doc/classes/Vector3i.xml:55
+#: doc/classes/Vector2.xml:287
msgid ""
"Returns the vector with each component set to one or negative one, depending "
-"on the signs of the components."
+"on the signs of the components, or zero if the component is zero, by calling "
+"[method @GDScript.sign] on each component."
msgstr ""
-#: doc/classes/Vector2.xml:293 doc/classes/Vector3.xml:294
+#: doc/classes/Vector2.xml:298 doc/classes/Vector3.xml:299
msgid ""
"Returns the result of spherical linear interpolation between this vector and "
-"[code]b[/code], by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation.\n"
+"[code]b[/code], by amount [code]t[/code]. [code]t[/code] is on the range of "
+"0.0 to 1.0, representing the amount of interpolation.\n"
"[b]Note:[/b] Both vectors must be normalized."
msgstr ""
-#: doc/classes/Vector2.xml:303 doc/classes/Vector3.xml:304
-msgid ""
-"Returns the component of the vector along a plane defined by the given "
-"normal."
+#: doc/classes/Vector2.xml:308 doc/classes/Vector3.xml:309
+msgid "Returns this vector slid along a plane defined by the given normal."
msgstr ""
-#: doc/classes/Vector2.xml:312 doc/classes/Vector3.xml:313
-msgid "Returns the vector snapped to a grid with the given size."
+#: doc/classes/Vector2.xml:317 doc/classes/Vector3.xml:318
+msgid ""
+"Returns this vector with each component snapped to the nearest multiple of "
+"[code]step[/code]. This can also be used to round to an arbitrary number of "
+"decimals."
msgstr ""
-#: doc/classes/Vector2.xml:319
-msgid "Returns a perpendicular vector."
+#: doc/classes/Vector2.xml:324
+msgid ""
+"Returns a perpendicular vector rotated 90 degrees counter-clockwise compared "
+"to the original, with the same length."
msgstr ""
-#: doc/classes/Vector2.xml:325 doc/classes/Vector2i.xml:59
-#: doc/classes/Vector3.xml:326 doc/classes/Vector3i.xml:61
+#: doc/classes/Vector2.xml:330 doc/classes/Vector2i.xml:59
+#: doc/classes/Vector3.xml:332 doc/classes/Vector3i.xml:61
msgid ""
"The vector's X component. Also accessible by using the index position [code]"
"[0][/code]."
msgstr ""
-#: doc/classes/Vector2.xml:328 doc/classes/Vector2i.xml:62
-#: doc/classes/Vector3.xml:329 doc/classes/Vector3i.xml:64
+#: doc/classes/Vector2.xml:333 doc/classes/Vector2i.xml:62
+#: doc/classes/Vector3.xml:335 doc/classes/Vector3i.xml:64
msgid ""
"The vector's Y component. Also accessible by using the index position [code]"
"[1][/code]."
msgstr ""
-#: doc/classes/Vector2.xml:333 doc/classes/Vector2i.xml:67
+#: doc/classes/Vector2.xml:338 doc/classes/Vector2i.xml:67
#: doc/classes/Vector3i.xml:72
msgid "Enumerated value for the X axis."
msgstr ""
-#: doc/classes/Vector2.xml:336 doc/classes/Vector2i.xml:70
+#: doc/classes/Vector2.xml:341 doc/classes/Vector2i.xml:70
#: doc/classes/Vector3i.xml:75
msgid "Enumerated value for the Y axis."
msgstr ""
-#: doc/classes/Vector2.xml:339 doc/classes/Vector2i.xml:73
-#: doc/classes/Vector3.xml:346 doc/classes/Vector3i.xml:81
-msgid "Zero vector."
+#: doc/classes/Vector2.xml:344 doc/classes/Vector2i.xml:73
+#: doc/classes/Vector3.xml:352 doc/classes/Vector3i.xml:81
+msgid "Zero vector, a vector with all components set to [code]0[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:342 doc/classes/Vector2i.xml:76
-#: doc/classes/Vector3.xml:349 doc/classes/Vector3i.xml:84
-msgid "One vector."
+#: doc/classes/Vector2.xml:347 doc/classes/Vector2i.xml:76
+#: doc/classes/Vector3.xml:355 doc/classes/Vector3i.xml:84
+msgid "One vector, a vector with all components set to [code]1[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:345 doc/classes/Vector3.xml:352
-msgid "Infinity vector."
+#: doc/classes/Vector2.xml:350 doc/classes/Vector3.xml:358
+msgid ""
+"Infinity vector, a vector with all components set to [constant @GDScript."
+"INF]."
msgstr ""
-#: doc/classes/Vector2.xml:348 doc/classes/Vector2i.xml:79
-#: doc/classes/Vector3.xml:355 doc/classes/Vector3i.xml:87
-msgid "Left unit vector."
+#: doc/classes/Vector2.xml:353 doc/classes/Vector2i.xml:79
+msgid "Left unit vector. Represents the direction of left."
msgstr ""
-#: doc/classes/Vector2.xml:351 doc/classes/Vector2i.xml:82
-#: doc/classes/Vector3.xml:358 doc/classes/Vector3i.xml:90
-msgid "Right unit vector."
+#: doc/classes/Vector2.xml:356 doc/classes/Vector2i.xml:82
+msgid "Right unit vector. Represents the direction of right."
msgstr ""
-#: doc/classes/Vector2.xml:354 doc/classes/Vector2i.xml:85
-#: doc/classes/Vector3.xml:361 doc/classes/Vector3i.xml:93
-msgid "Up unit vector."
+#: doc/classes/Vector2.xml:359 doc/classes/Vector2i.xml:85
+msgid "Up unit vector. Y is down in 2D, so this vector points -Y."
msgstr ""
-#: doc/classes/Vector2.xml:357 doc/classes/Vector2i.xml:88
-#: doc/classes/Vector3.xml:364 doc/classes/Vector3i.xml:96
-msgid "Down unit vector."
+#: doc/classes/Vector2.xml:362 doc/classes/Vector2i.xml:88
+msgid "Down unit vector. Y is down in 2D, so this vector points +Y."
msgstr ""
#: doc/classes/Vector2i.xml:4
@@ -53706,6 +54484,16 @@ msgid ""
"will be truncated."
msgstr ""
+#: doc/classes/Vector2i.xml:46
+msgid "Returns the ratio of [member x] to [member y]."
+msgstr ""
+
+#: doc/classes/Vector2i.xml:53 doc/classes/Vector3i.xml:55
+msgid ""
+"Returns the vector with each component set to one or negative one, depending "
+"on the signs of the components."
+msgstr ""
+
#: doc/classes/Vector3.xml:4
msgid "Vector used for 3D math using floating point coordinates."
msgstr ""
@@ -53730,120 +54518,172 @@ msgid "Returns a [Vector3] with the given components."
msgstr ""
#: doc/classes/Vector3.xml:50
-msgid "Returns the minimum angle to the given vector."
-msgstr ""
+#, fuzzy
+msgid "Returns the minimum angle to the given vector, in radians."
+msgstr "Palauttaa kahden vektorin jäännöksen."
#: doc/classes/Vector3.xml:66
-msgid "Returns a new vector with all components rounded up."
+msgid ""
+"Returns a new vector with all components rounded up (towards positive "
+"infinity)."
msgstr ""
#: doc/classes/Vector3.xml:75
-msgid "Returns the cross product with [code]b[/code]."
-msgstr ""
+#, fuzzy
+msgid "Returns the cross product of this vector and [code]b[/code]."
+msgstr "Laskee kahden vektorin ristitulon."
#: doc/classes/Vector3.xml:90
msgid ""
"Performs a cubic interpolation between vectors [code]pre_a[/code], [code]a[/"
"code], [code]b[/code], [code]post_b[/code] ([code]a[/code] is current), by "
-"the given amount [code]t[/code]. [code]t[/code] is in the range of [code]0.0 "
-"- 1.0[/code], representing the amount of interpolation."
+"the given amount [code]t[/code]. [code]t[/code] is on the range of 0.0 to "
+"1.0, representing the amount of interpolation."
msgstr ""
-#: doc/classes/Vector3.xml:108
-msgid ""
-"Returns the squared distance to [code]b[/code]. Prefer this function over "
-"[method distance_to] if you need to sort vectors or need the squared "
-"distance for some formula."
+#: doc/classes/Vector3.xml:118
+msgid "Returns the distance between this vector and [code]b[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:117
-msgid "Returns the distance to [code]b[/code]."
-msgstr ""
-
-#: doc/classes/Vector3.xml:126
-msgid "Returns the dot product with [code]b[/code]."
+#: doc/classes/Vector3.xml:127
+msgid ""
+"Returns the dot product of this vector and [code]b[/code]. This can be used "
+"to compare the angle between two vectors. For example, this can be used to "
+"determine whether an enemy is facing the player.\n"
+"The dot product will be [code]0[/code] for a straight angle (90 degrees), "
+"greater than 0 for angles narrower than 90 degrees and lower than 0 for "
+"angles wider than 90 degrees.\n"
+"When using unit (normalized) vectors, the result will always be between "
+"[code]-1.0[/code] (180 degree angle) when the vectors are facing opposite "
+"directions, and [code]1.0[/code] (0 degree angle) when the vectors are "
+"aligned.\n"
+"[b]Note:[/b] [code]a.dot(b)[/code] is equivalent to [code]b.dot(a)[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:133
-msgid "Returns a new vector with all components rounded down."
+#: doc/classes/Vector3.xml:137
+msgid ""
+"Returns a new vector with all components rounded down (towards negative "
+"infinity)."
msgstr ""
-#: doc/classes/Vector3.xml:140
+#: doc/classes/Vector3.xml:144
msgid ""
"Returns the inverse of the vector. This is the same as [code]Vector3( 1.0 / "
"v.x, 1.0 / v.y, 1.0 / v.z )[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:170
+#: doc/classes/Vector3.xml:193 doc/classes/Vector3i.xml:41
msgid ""
-"Returns the vector's length squared. Prefer this function over [method "
-"length] if you need to sort vectors or need the squared length for some "
-"formula."
+"Returns the axis of the vector's largest value. See [code]AXIS_*[/code] "
+"constants. If all components are equal, this method returns [constant "
+"AXIS_X]."
msgstr ""
-#: doc/classes/Vector3.xml:181
+#: doc/classes/Vector3.xml:200 doc/classes/Vector3i.xml:48
msgid ""
-"Returns the result of the linear interpolation between this vector and "
-"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation.."
+"Returns the axis of the vector's smallest value. See [code]AXIS_*[/code] "
+"constants. If all components are equal, this method returns [constant "
+"AXIS_Z]."
msgstr ""
-#: doc/classes/Vector3.xml:188 doc/classes/Vector3i.xml:41
+#: doc/classes/Vector3.xml:211
msgid ""
-"Returns the axis of the vector's largest value. See [code]AXIS_*[/code] "
-"constants."
+"Moves this vector toward [code]to[/code] by the fixed [code]delta[/code] "
+"amount."
+msgstr ""
+
+#: doc/classes/Vector3.xml:227
+msgid "Returns the outer product with [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:254
+msgid "Returns this vector projected onto another vector [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:263
+msgid "Returns this vector reflected from a plane defined by the given normal."
msgstr ""
-#: doc/classes/Vector3.xml:195 doc/classes/Vector3i.xml:48
+#: doc/classes/Vector3.xml:274
msgid ""
-"Returns the axis of the vector's smallest value. See [code]AXIS_*[/code] "
-"constants."
+"Rotates this vector around a given axis by [code]phi[/code] radians. The "
+"axis must be a normalized vector."
msgstr ""
-#: doc/classes/Vector3.xml:222
-msgid "Returns the outer product with [code]b[/code]."
+#: doc/classes/Vector3.xml:281
+msgid ""
+"Returns this vector with all components rounded to the nearest integer, with "
+"halfway cases rounded away from zero."
msgstr ""
-#: doc/classes/Vector3.xml:269
+#: doc/classes/Vector3.xml:288
msgid ""
-"Rotates the vector around a given axis by [code]phi[/code] radians. The axis "
-"must be a normalized vector."
+"Returns a vector with each component set to one or negative one, depending "
+"on the signs of this vector's components, or zero if the component is zero, "
+"by calling [method @GDScript.sign] on each component."
msgstr ""
-#: doc/classes/Vector3.xml:320
-msgid "Returns a diagonal matrix with the vector as main diagonal."
+#: doc/classes/Vector3.xml:325
+msgid ""
+"Returns a diagonal matrix with the vector as main diagonal.\n"
+"This is equivalent to a Basis with no rotation or shearing and this vector's "
+"components set as the scale."
msgstr ""
-#: doc/classes/Vector3.xml:332 doc/classes/Vector3i.xml:67
+#: doc/classes/Vector3.xml:338 doc/classes/Vector3i.xml:67
msgid ""
"The vector's Z component. Also accessible by using the index position [code]"
"[2][/code]."
msgstr ""
-#: doc/classes/Vector3.xml:337
+#: doc/classes/Vector3.xml:343
msgid ""
"Enumerated value for the X axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:340
+#: doc/classes/Vector3.xml:346
msgid ""
"Enumerated value for the Y axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:343
+#: doc/classes/Vector3.xml:349
msgid ""
"Enumerated value for the Z axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:367 doc/classes/Vector3i.xml:99
-msgid "Forward unit vector."
+#: doc/classes/Vector3.xml:361 doc/classes/Vector3i.xml:87
+msgid ""
+"Left unit vector. Represents the local direction of left, and the global "
+"direction of west."
+msgstr ""
+
+#: doc/classes/Vector3.xml:364 doc/classes/Vector3i.xml:90
+msgid ""
+"Right unit vector. Represents the local direction of right, and the global "
+"direction of east."
+msgstr ""
+
+#: doc/classes/Vector3.xml:367 doc/classes/Vector3i.xml:93
+msgid "Up unit vector."
+msgstr ""
+
+#: doc/classes/Vector3.xml:370 doc/classes/Vector3i.xml:96
+msgid "Down unit vector."
msgstr ""
-#: doc/classes/Vector3.xml:370 doc/classes/Vector3i.xml:102
-msgid "Back unit vector."
+#: doc/classes/Vector3.xml:373 doc/classes/Vector3i.xml:99
+msgid ""
+"Forward unit vector. Represents the local direction of forward, and the "
+"global direction of north."
+msgstr ""
+
+#: doc/classes/Vector3.xml:376 doc/classes/Vector3i.xml:102
+msgid ""
+"Back unit vector. Represents the local direction of back, and the global "
+"direction of south."
msgstr ""
#: doc/classes/Vector3i.xml:4
@@ -53892,10 +54732,14 @@ msgid ""
"directly.\n"
"[b]Note:[/b] The origin point of your VehicleBody3D will determine the "
"center of gravity of your vehicle so it is better to keep this low and move "
-"the [CollisionShape3D] and [MeshInstance3D] upwards."
+"the [CollisionShape3D] and [MeshInstance3D] upwards.\n"
+"[b]Note:[/b] This class has known issues and isn't designed to provide "
+"realistic 3D vehicle physics. If you want advanced vehicle physics, you will "
+"probably have to write your own physics integration using another "
+"[PhysicsBody3D] class."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:16
+#: doc/classes/VehicleBody3D.xml:17
msgid ""
"Slows down the vehicle by applying a braking force. The vehicle is only "
"slowed down if the wheels are in contact with a surface. The force you need "
@@ -53904,7 +54748,7 @@ msgid ""
"a value in the 25 - 30 range for hard braking."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:19
+#: doc/classes/VehicleBody3D.xml:20
msgid ""
"Accelerates the vehicle by applying an engine force. The vehicle is only "
"speed up if the wheels that have [member VehicleWheel3D.use_as_traction] set "
@@ -53917,7 +54761,7 @@ msgid ""
"A negative value will result in the vehicle reversing."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:25
+#: doc/classes/VehicleBody3D.xml:26
msgid ""
"The steering angle for the vehicle. Setting this to a non-zero value will "
"result in the vehicle turning when it's moving. Wheels that have [member "
@@ -53933,25 +54777,29 @@ msgstr ""
msgid ""
"This node needs to be used as a child node of [VehicleBody3D] and simulates "
"the behavior of one of its wheels. This node also acts as a collider to "
-"detect if the wheel is touching a surface."
+"detect if the wheel is touching a surface.\n"
+"[b]Note:[/b] This class has known issues and isn't designed to provide "
+"realistic 3D vehicle physics. If you want advanced vehicle physics, you will "
+"probably have to write your own physics integration using another "
+"[PhysicsBody3D] class."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:16
+#: doc/classes/VehicleWheel3D.xml:17
msgid "Returns the rotational speed of the wheel in revolutions per minute."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:23
+#: doc/classes/VehicleWheel3D.xml:24
msgid ""
"Returns a value between 0.0 and 1.0 that indicates whether this wheel is "
"skidding. 0.0 is skidding (the wheel has lost grip, e.g. icy terrain), 1.0 "
"means not skidding (the wheel has full grip, e.g. dry asphalt road)."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:30
+#: doc/classes/VehicleWheel3D.xml:31
msgid "Returns [code]true[/code] if this wheel is in contact with a surface."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:36
+#: doc/classes/VehicleWheel3D.xml:37
msgid ""
"Slows down the wheel by applying a braking force. The wheel is only slowed "
"down if it is in contact with a surface. The force you need to apply to "
@@ -53960,7 +54808,7 @@ msgid ""
"- 30 range for hard braking."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:39
+#: doc/classes/VehicleWheel3D.xml:40
msgid ""
"The damping applied to the spring when the spring is being compressed. This "
"value should be between 0.0 (no damping) and 1.0. A value of 0.0 means the "
@@ -53968,7 +54816,7 @@ msgid ""
"is around 0.3 for a normal car, 0.5 for a race car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:42
+#: doc/classes/VehicleWheel3D.xml:43
msgid ""
"The damping applied to the spring when relaxing. This value should be "
"between 0.0 (no damping) and 1.0. This value should always be slightly "
@@ -53976,7 +54824,7 @@ msgid ""
"damping_compression] value of 0.3, try a relaxation value of 0.5."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:45
+#: doc/classes/VehicleWheel3D.xml:46
msgid ""
"Accelerates the wheel by applying an engine force. The wheel is only speed "
"up if it is in contact with a surface. The [member RigidBody3D.mass] of the "
@@ -53987,13 +54835,13 @@ msgid ""
"A negative value will result in the wheel reversing."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:50
+#: doc/classes/VehicleWheel3D.xml:51
msgid ""
"The steering angle for the wheel. Setting this to a non-zero value will "
"result in the vehicle turning when it's moving."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:53
+#: doc/classes/VehicleWheel3D.xml:54
msgid ""
"The maximum force the spring can resist. This value should be higher than a "
"quarter of the [member RigidBody3D.mass] of the [VehicleBody3D] or the "
@@ -54001,28 +54849,28 @@ msgid ""
"obtained by a value that is about 3× to 4× this number."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:56
+#: doc/classes/VehicleWheel3D.xml:57
msgid ""
"This value defines the stiffness of the suspension. Use a value lower than "
"50 for an off-road car, a value between 50 and 100 for a race car and try "
"something around 200 for something like a Formula 1 car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:59
+#: doc/classes/VehicleWheel3D.xml:60
msgid ""
"This is the distance the suspension can travel. As Godot units are "
"equivalent to meters, keep this setting relatively low. Try a value between "
"0.1 and 0.3 depending on the type of car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:62
+#: doc/classes/VehicleWheel3D.xml:63
msgid ""
"If [code]true[/code], this wheel will be turned when the car steers. This "
"value is used in conjunction with [member VehicleBody3D.steering] and "
"ignored if you are using the per-wheel [member steering] value instead."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:65
+#: doc/classes/VehicleWheel3D.xml:66
msgid ""
"If [code]true[/code], this wheel transfers engine force to the ground to "
"propel the vehicle forward. This value is used in conjunction with [member "
@@ -54030,7 +54878,7 @@ msgid ""
"[member engine_force] value instead."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:68
+#: doc/classes/VehicleWheel3D.xml:69
msgid ""
"This determines how much grip this wheel has. It is combined with the "
"friction setting of the surface the wheel is in contact with. 0.0 means no "
@@ -54040,11 +54888,11 @@ msgid ""
"It's best to set this to 1.0 when starting out."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:72
+#: doc/classes/VehicleWheel3D.xml:73
msgid "The radius of the wheel in meters."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:75
+#: doc/classes/VehicleWheel3D.xml:76
msgid ""
"This is the distance in meters the wheel is lowered from its origin point. "
"Don't set this to 0.0 and move the wheel into position, instead move the "
@@ -54053,7 +54901,7 @@ msgid ""
"down to the position it should be in when the car is in rest."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:78
+#: doc/classes/VehicleWheel3D.xml:79
msgid ""
"This value affects the roll of your vehicle. If set to 1.0 for all wheels, "
"your vehicle will be prone to rolling over, while a value of 0.0 will resist "
@@ -54531,7 +55379,7 @@ msgstr ""
#: doc/classes/Viewport.xml:318
msgid ""
"Use fast approximate antialiasing. FXAA is a popular screen-space "
-"antialising method, which is fast but will make the image look blurry, "
+"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."
msgstr ""
@@ -54584,24 +55432,24 @@ msgid ""
"your [WorldEnvironment]."
msgstr ""
-#: doc/classes/Viewport.xml:384
+#: doc/classes/Viewport.xml:381
msgid ""
"Colors each PSSM split for the [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, and yellow."
msgstr ""
-#: doc/classes/Viewport.xml:387
+#: doc/classes/Viewport.xml:384
msgid ""
"Draws the decal atlas used by [Decal]s and light projector textures in the "
"upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/Viewport.xml:402
+#: doc/classes/Viewport.xml:405
msgid "Max value for [enum DefaultCanvasItemTextureFilter] enum."
msgstr ""
-#: doc/classes/Viewport.xml:414
+#: doc/classes/Viewport.xml:417
msgid "Max value for [enum DefaultCanvasItemTextureRepeat] enum."
msgstr ""
@@ -54632,82 +55480,84 @@ msgid ""
"The VisibilityEnabler2D will disable [RigidBody2D], [AnimationPlayer], and "
"other nodes when they are not visible. It will only affect nodes with the "
"same root node as the VisibilityEnabler2D, and the root node itself.\n"
+"If you just want to receive notifications, use [VisibilityNotifier2D] "
+"instead.\n"
"[b]Note:[/b] For performance reasons, VisibilityEnabler2D uses an "
"approximate heuristic with precision determined by [member ProjectSettings."
-"world/2d/cell_size]. If you need exact visibility checking, use another "
+"world/2d/cell_size]. If you need precise visibility checking, use another "
"method such as adding an [Area2D] node as a child of a [Camera2D] node.\n"
"[b]Note:[/b] VisibilityEnabler2D will not affect nodes added after scene "
"initialization."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:20
-#: doc/classes/VisibilityEnabler3D.xml:20
+#: doc/classes/VisibilityEnabler2D.xml:21
+#: doc/classes/VisibilityEnabler3D.xml:21
msgid ""
"Returns whether the enabler identified by given [enum Enabler] constant is "
"active."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:31
-#: doc/classes/VisibilityEnabler3D.xml:31
+#: doc/classes/VisibilityEnabler2D.xml:32
+#: doc/classes/VisibilityEnabler3D.xml:32
msgid ""
"Sets active state of the enabler identified by given [enum Enabler] constant."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:37
+#: doc/classes/VisibilityEnabler2D.xml:38
msgid "If [code]true[/code], [RigidBody2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:40
+#: doc/classes/VisibilityEnabler2D.xml:41
msgid "If [code]true[/code], [AnimatedSprite2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:43
-#: doc/classes/VisibilityEnabler3D.xml:40
+#: doc/classes/VisibilityEnabler2D.xml:44
+#: doc/classes/VisibilityEnabler3D.xml:41
msgid "If [code]true[/code], [AnimationPlayer] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:46
+#: doc/classes/VisibilityEnabler2D.xml:47
msgid "If [code]true[/code], [GPUParticles2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:49
+#: doc/classes/VisibilityEnabler2D.xml:50
msgid ""
"If [code]true[/code], the parent's [method Node._physics_process] will be "
"stopped."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:52
+#: doc/classes/VisibilityEnabler2D.xml:53
msgid ""
"If [code]true[/code], the parent's [method Node._process] will be stopped."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:57
-#: doc/classes/VisibilityEnabler3D.xml:45
+#: doc/classes/VisibilityEnabler2D.xml:58
+#: doc/classes/VisibilityEnabler3D.xml:46
msgid "This enabler will pause [AnimationPlayer] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:60
+#: doc/classes/VisibilityEnabler2D.xml:61
msgid "This enabler will freeze [RigidBody2D] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:63
+#: doc/classes/VisibilityEnabler2D.xml:64
msgid "This enabler will stop [GPUParticles2D] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:66
+#: doc/classes/VisibilityEnabler2D.xml:67
msgid "This enabler will stop the parent's _process function."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:69
+#: doc/classes/VisibilityEnabler2D.xml:70
msgid "This enabler will stop the parent's _physics_process function."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:72
+#: doc/classes/VisibilityEnabler2D.xml:73
msgid "This enabler will stop [AnimatedSprite2D] nodes animations."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:75
-#: doc/classes/VisibilityEnabler3D.xml:51
+#: doc/classes/VisibilityEnabler2D.xml:76
+#: doc/classes/VisibilityEnabler3D.xml:52
msgid "Represents the size of the [enum Enabler] enum."
msgstr ""
@@ -54716,19 +55566,23 @@ msgid ""
"The VisibilityEnabler3D will disable [RigidBody3D] and [AnimationPlayer] "
"nodes when they are not visible. It will only affect other nodes within the "
"same scene as the VisibilityEnabler3D itself.\n"
+"If you just want to receive notifications, use [VisibilityNotifier3D] "
+"instead.\n"
"[b]Note:[/b] VisibilityEnabler3D uses an approximate heuristic for "
"performance reasons. It doesn't take walls and other occlusion into account. "
-"If you need exact visibility checking, use another method such as adding an "
-"[Area3D] node as a child of a [Camera3D] node.\n"
+"The heuristic is an implementation detail and may change in future versions. "
+"If you need precise visibility checking, use another method such as adding "
+"an [Area3D] node as a child of a [Camera3D] node and/or [method Vector3."
+"dot].\n"
"[b]Note:[/b] VisibilityEnabler3D will not affect nodes added after scene "
"initialization."
msgstr ""
-#: doc/classes/VisibilityEnabler3D.xml:37
+#: doc/classes/VisibilityEnabler3D.xml:38
msgid "If [code]true[/code], [RigidBody3D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler3D.xml:48
+#: doc/classes/VisibilityEnabler3D.xml:49
msgid "This enabler will freeze [RigidBody3D] nodes."
msgstr ""
@@ -54742,13 +55596,15 @@ msgid ""
"The VisibilityNotifier2D detects when it is visible on the screen. It also "
"notifies when its bounding rectangle enters or exits the screen or a "
"viewport.\n"
+"If you want nodes to be disabled automatically when they exit the screen, "
+"use [VisibilityEnabler2D] instead.\n"
"[b]Note:[/b] For performance reasons, VisibilityNotifier2D uses an "
"approximate heuristic with precision determined by [member ProjectSettings."
-"world/2d/cell_size]. If you need exact visibility checking, use another "
+"world/2d/cell_size]. If you need precise visibility checking, use another "
"method such as adding an [Area2D] node as a child of a [Camera2D] node."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:17
+#: doc/classes/VisibilityNotifier2D.xml:18
msgid ""
"If [code]true[/code], the bounding rectangle is on the screen.\n"
"[b]Note:[/b] It takes one frame for the node's visibility to be assessed "
@@ -54757,23 +55613,23 @@ msgid ""
"pass."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:24
+#: doc/classes/VisibilityNotifier2D.xml:25
msgid "The VisibilityNotifier2D's bounding rectangle."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:30
+#: doc/classes/VisibilityNotifier2D.xml:31
msgid "Emitted when the VisibilityNotifier2D enters the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:35
+#: doc/classes/VisibilityNotifier2D.xml:36
msgid "Emitted when the VisibilityNotifier2D exits the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:42
+#: doc/classes/VisibilityNotifier2D.xml:43
msgid "Emitted when the VisibilityNotifier2D enters a [Viewport]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:49
+#: doc/classes/VisibilityNotifier2D.xml:50
msgid "Emitted when the VisibilityNotifier2D exits a [Viewport]'s view."
msgstr ""
@@ -54782,13 +55638,16 @@ msgid ""
"The VisibilityNotifier3D detects when it is visible on the screen. It also "
"notifies when its bounding rectangle enters or exits the screen or a "
"[Camera3D]'s view.\n"
+"If you want nodes to be disabled automatically when they exit the screen, "
+"use [VisibilityEnabler3D] instead.\n"
"[b]Note:[/b] VisibilityNotifier3D uses an approximate heuristic for "
"performance reasons. It doesn't take walls and other occlusion into account. "
-"If you need exact visibility checking, use another method such as adding an "
-"[Area3D] node as a child of a [Camera3D] node."
+"The heuristic is an implementation detail and may change in future versions. "
+"If you need precise visibility checking, use another method such as adding "
+"an [Area3D] node as a child of a [Camera3D] node and/or [method Vector3.dot]."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:17
+#: doc/classes/VisibilityNotifier3D.xml:18
msgid ""
"If [code]true[/code], the bounding box is on the screen.\n"
"[b]Note:[/b] It takes one frame for the node's visibility to be assessed "
@@ -54797,23 +55656,23 @@ msgid ""
"pass."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:24
+#: doc/classes/VisibilityNotifier3D.xml:25
msgid "The VisibilityNotifier3D's bounding box."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:32
+#: doc/classes/VisibilityNotifier3D.xml:33
msgid "Emitted when the VisibilityNotifier3D enters a [Camera3D]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:39
+#: doc/classes/VisibilityNotifier3D.xml:40
msgid "Emitted when the VisibilityNotifier3D exits a [Camera3D]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:44
+#: doc/classes/VisibilityNotifier3D.xml:45
msgid "Emitted when the VisibilityNotifier3D enters the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:49
+#: doc/classes/VisibilityNotifier3D.xml:50
msgid "Emitted when the VisibilityNotifier3D exits the screen."
msgstr ""
@@ -55233,6 +56092,12 @@ msgid ""
"exist."
msgstr ""
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:90
+msgid ""
+"Easing function, based on exponent. 0 is constant, 1 is linear, 0 to 1 is "
+"ease-in, 1+ is ease out. Negative values are in-out/out in."
+msgstr ""
+
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:93
msgid ""
"Return the number of digit places after the decimal that the first non-zero "
@@ -56118,6 +56983,7 @@ msgid "A shader for light calculations."
msgstr ""
#: doc/classes/VisualShader.xml:214
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:26
msgid "Represents the size of the [enum Type] enum."
msgstr ""
@@ -56220,6 +57086,24 @@ msgstr ""
msgid "Translated to [code]uniform bool[/code] in the shader language."
msgstr ""
+#: doc/classes/VisualShaderNodeBooleanUniform.xml:15
+#: doc/classes/VisualShaderNodeColorUniform.xml:15
+#: doc/classes/VisualShaderNodeFloatUniform.xml:15
+#: doc/classes/VisualShaderNodeIntUniform.xml:15
+#: doc/classes/VisualShaderNodeTransformUniform.xml:15
+#: doc/classes/VisualShaderNodeVec3Uniform.xml:15
+msgid "A default value to be assigned within the shader."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeBooleanUniform.xml:18
+#: doc/classes/VisualShaderNodeColorUniform.xml:18
+#: doc/classes/VisualShaderNodeFloatUniform.xml:18
+#: doc/classes/VisualShaderNodeIntUniform.xml:18
+#: doc/classes/VisualShaderNodeTransformUniform.xml:18
+#: doc/classes/VisualShaderNodeVec3Uniform.xml:18
+msgid "Enables usage of the [member default_value]."
+msgstr ""
+
#: doc/classes/VisualShaderNodeColorConstant.xml:4
msgid "A [Color] constant to be used within the visual shader graph."
msgstr ""
@@ -57070,49 +57954,49 @@ msgstr ""
msgid "Translated to [code]uniform float[/code] in the shader language."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:15
-#: doc/classes/VisualShaderNodeIntUniform.xml:15
+#: doc/classes/VisualShaderNodeFloatUniform.xml:21
+#: doc/classes/VisualShaderNodeIntUniform.xml:21
msgid ""
"A hint applied to the uniform, which controls the values it can take when "
"set through the inspector."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:18
-#: doc/classes/VisualShaderNodeIntUniform.xml:18
+#: doc/classes/VisualShaderNodeFloatUniform.xml:24
+#: doc/classes/VisualShaderNodeIntUniform.xml:24
msgid ""
"Minimum value for range hints. Used if [member hint] is set to [constant "
"HINT_RANGE] or [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:21
-#: doc/classes/VisualShaderNodeIntUniform.xml:21
+#: doc/classes/VisualShaderNodeFloatUniform.xml:27
+#: doc/classes/VisualShaderNodeIntUniform.xml:27
msgid ""
"Maximum value for range hints. Used if [member hint] is set to [constant "
"HINT_RANGE] or [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:24
-#: doc/classes/VisualShaderNodeIntUniform.xml:24
+#: doc/classes/VisualShaderNodeFloatUniform.xml:30
+#: doc/classes/VisualShaderNodeIntUniform.xml:30
msgid ""
"Step (increment) value for the range hint with step. Used if [member hint] "
"is set to [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:29
-#: doc/classes/VisualShaderNodeIntUniform.xml:29
+#: doc/classes/VisualShaderNodeFloatUniform.xml:35
+#: doc/classes/VisualShaderNodeIntUniform.xml:35
msgid "No hint used."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:32
-#: doc/classes/VisualShaderNodeIntUniform.xml:32
+#: doc/classes/VisualShaderNodeFloatUniform.xml:38
+#: doc/classes/VisualShaderNodeIntUniform.xml:38
msgid ""
"A range hint for scalar value, which limits possible input values between "
"[member min] and [member max]. Translated to [code]hint_range(min, max)[/"
"code] in shader code."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:35
-#: doc/classes/VisualShaderNodeIntUniform.xml:35
+#: doc/classes/VisualShaderNodeFloatUniform.xml:41
+#: doc/classes/VisualShaderNodeIntUniform.xml:41
msgid ""
"A range hint for scalar value with step, which limits possible input values "
"between [member min] and [member max], with a step (increment) of [member "
@@ -57396,6 +58280,26 @@ msgid ""
"results, e.g. division by zero)."
msgstr ""
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:4
+msgid "Performs a fused multiply-add operation within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:7
+msgid "Uses three operands to compute [code](a * b + c)[/code] expression."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:15
+msgid "A type of operands and returned value."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:20
+msgid "A scalar type."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:23
+msgid "A vector type."
+msgstr ""
+
#: doc/classes/VisualShaderNodeOuterProduct.xml:4
msgid ""
"Calculates an outer product of two vectors within the visual shader graph."
@@ -57418,7 +58322,7 @@ msgstr ""
#: doc/classes/VisualShaderNodeOutput.xml:7
msgid ""
"This visual shader node is present in all shader graphs in form of \"Output"
-"\" block with mutliple output value ports."
+"\" block with multiple output value ports."
msgstr ""
#: doc/classes/VisualShaderNodeSample3D.xml:4
@@ -57782,6 +58686,20 @@ msgid ""
"[ShaderMaterial] properties."
msgstr ""
+#: doc/classes/VisualShaderNodeUniformRef.xml:4
+msgid "A reference to an existing [VisualShaderNodeUniform]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniformRef.xml:7
+msgid ""
+"Creating a reference to a [VisualShaderNodeUniform] allows you to reuse this "
+"uniform in different shaders or shader stages easily."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniformRef.xml:15
+msgid "The name of the uniform which this reference points to."
+msgstr ""
+
#: doc/classes/VisualShaderNodeVec3Constant.xml:4
msgid "A [Vector3] constant to be used within the visual shader graph."
msgstr ""
@@ -57879,7 +58797,7 @@ msgstr ""
#: doc/classes/VisualShaderNodeVectorFunc.xml:26
msgid "Returns the opposite value of the parameter."
-msgstr ""
+msgstr "Palauttaa parametrin vasta-arvon."
#: doc/classes/VisualShaderNodeVectorFunc.xml:29
msgid "Returns [code]1/vector[/code]."
@@ -57887,96 +58805,98 @@ msgstr ""
#: doc/classes/VisualShaderNodeVectorFunc.xml:32
msgid "Converts RGB vector to HSV equivalent."
-msgstr ""
+msgstr "Muuntaa RGB-vektorin HSV-vastaavaksi."
#: doc/classes/VisualShaderNodeVectorFunc.xml:35
msgid "Converts HSV vector to RGB equivalent."
-msgstr ""
+msgstr "Muuntaa HSV-vektorin RGB-vastaavaksi."
#: doc/classes/VisualShaderNodeVectorFunc.xml:38
msgid "Returns the absolute value of the parameter."
-msgstr ""
+msgstr "Palauttaa parametrin itseisarvon."
#: doc/classes/VisualShaderNodeVectorFunc.xml:41
msgid "Returns the arc-cosine of the parameter."
-msgstr ""
+msgstr "Palauttaa parametrin arkuskosinin."
#: doc/classes/VisualShaderNodeVectorFunc.xml:44
msgid "Returns the inverse hyperbolic cosine of the parameter."
-msgstr ""
+msgstr "Palauttaa parametrin käänteisen hyperbolisen kosinin."
#: doc/classes/VisualShaderNodeVectorFunc.xml:47
msgid "Returns the arc-sine of the parameter."
-msgstr ""
+msgstr "Palauttaa parametrin arkussinin."
#: doc/classes/VisualShaderNodeVectorFunc.xml:50
msgid "Returns the inverse hyperbolic sine of the parameter."
-msgstr ""
+msgstr "Palauttaa parametrin käänteisen hyperbolisen sinin."
#: doc/classes/VisualShaderNodeVectorFunc.xml:53
msgid "Returns the arc-tangent of the parameter."
-msgstr ""
+msgstr "Palauttaa parametrin arkustangentin."
#: doc/classes/VisualShaderNodeVectorFunc.xml:56
msgid "Returns the inverse hyperbolic tangent of the parameter."
-msgstr ""
+msgstr "Palauttaa parametrin käänteisen hyperbolisen tangentin."
#: doc/classes/VisualShaderNodeVectorFunc.xml:59
msgid ""
"Finds the nearest integer that is greater than or equal to the parameter."
msgstr ""
+"Etsii lähimmän kokonaisluvun, joka on suurempi tai yhtä suuri kuin parametri."
#: doc/classes/VisualShaderNodeVectorFunc.xml:62
msgid "Returns the cosine of the parameter."
-msgstr ""
+msgstr "Palauttaa parametrin kosinin."
#: doc/classes/VisualShaderNodeVectorFunc.xml:65
msgid "Returns the hyperbolic cosine of the parameter."
-msgstr ""
+msgstr "Palauttaa parametrin hyperbolisen kosinin."
#: doc/classes/VisualShaderNodeVectorFunc.xml:68
msgid "Converts a quantity in radians to degrees."
-msgstr ""
+msgstr "Muuntaa suureen radiaaneista asteiksi."
#: doc/classes/VisualShaderNodeVectorFunc.xml:71
msgid "Base-e Exponential."
-msgstr ""
+msgstr "E-kantainen eksponentti."
#: doc/classes/VisualShaderNodeVectorFunc.xml:74
msgid "Base-2 Exponential."
-msgstr ""
+msgstr "2-kantainen eksponentti."
#: doc/classes/VisualShaderNodeVectorFunc.xml:77
msgid "Finds the nearest integer less than or equal to the parameter."
msgstr ""
+"Etsii lähimmän kokonaisluvun, joka on vähemmän tai yhtä suuri kuin parametri."
#: doc/classes/VisualShaderNodeVectorFunc.xml:80
msgid "Computes the fractional part of the argument."
-msgstr ""
+msgstr "Laskee argumentin desimaaliosan."
#: doc/classes/VisualShaderNodeVectorFunc.xml:83
msgid "Returns the inverse of the square root of the parameter."
-msgstr ""
+msgstr "Palauttaa parametrin käänteisen neliöjuuren."
#: doc/classes/VisualShaderNodeVectorFunc.xml:86
msgid "Natural logarithm."
-msgstr ""
+msgstr "Luonnollinen logaritmi."
#: doc/classes/VisualShaderNodeVectorFunc.xml:89
msgid "Base-2 logarithm."
-msgstr ""
+msgstr "2-kantainen logaritmi."
#: doc/classes/VisualShaderNodeVectorFunc.xml:92
msgid "Converts a quantity in degrees to radians."
-msgstr ""
+msgstr "Muuntaa suureen asteista radiaaneiksi."
#: doc/classes/VisualShaderNodeVectorFunc.xml:95
msgid "Finds the nearest integer to the parameter."
-msgstr ""
+msgstr "Etsii parametria lähinnä olevan kokonaisluvun."
#: doc/classes/VisualShaderNodeVectorFunc.xml:98
msgid "Finds the nearest even integer to the parameter."
-msgstr ""
+msgstr "Etsii parametria lähinnä olevan parillisen kokonaisluvun."
#: doc/classes/VisualShaderNodeVectorFunc.xml:101
msgid ""
@@ -57987,23 +58907,23 @@ msgstr ""
#: doc/classes/VisualShaderNodeVectorFunc.xml:104
msgid "Returns the sine of the parameter."
-msgstr ""
+msgstr "Palauttaa parametrin sinin."
#: doc/classes/VisualShaderNodeVectorFunc.xml:107
msgid "Returns the hyperbolic sine of the parameter."
-msgstr ""
+msgstr "Palauttaa parametrin hyperbolisen sinin."
#: doc/classes/VisualShaderNodeVectorFunc.xml:110
msgid "Returns the square root of the parameter."
-msgstr ""
+msgstr "Palauttaa parametrin neliöjuuren."
#: doc/classes/VisualShaderNodeVectorFunc.xml:113
msgid "Returns the tangent of the parameter."
-msgstr ""
+msgstr "Palauttaa parametrin tangentin."
#: doc/classes/VisualShaderNodeVectorFunc.xml:116
msgid "Returns the hyperbolic tangent of the parameter."
-msgstr ""
+msgstr "Palauttaa parametrin hyperbolisen tangentin."
#: doc/classes/VisualShaderNodeVectorFunc.xml:119
msgid ""
@@ -58062,11 +58982,11 @@ msgstr ""
#: doc/classes/VisualShaderNodeVectorOp.xml:29
msgid "Divides vector by vector."
-msgstr ""
+msgstr "Jakaa vektorin vektorilla."
#: doc/classes/VisualShaderNodeVectorOp.xml:32
msgid "Returns the remainder of the two vectors."
-msgstr ""
+msgstr "Palauttaa kahden vektorin jäännöksen."
#: doc/classes/VisualShaderNodeVectorOp.xml:35
msgid ""
@@ -58084,11 +59004,11 @@ msgstr ""
#: doc/classes/VisualShaderNodeVectorOp.xml:44
msgid "Calculates the cross product of two vectors."
-msgstr ""
+msgstr "Laskee kahden vektorin ristitulon."
#: doc/classes/VisualShaderNodeVectorOp.xml:47
msgid "Returns the arc-tangent of the parameters."
-msgstr ""
+msgstr "Palauttaa parametrien arkustangentin."
#: doc/classes/VisualShaderNodeVectorOp.xml:50
msgid ""
@@ -58112,7 +59032,7 @@ msgstr ""
msgid ""
"Translated to [code]refract(I, N, eta)[/code] in the shader language, where "
"[code]I[/code] is the incident vector, [code]N[/code] is the normal vector "
-"and [code]eta[/code] is the ratio of the indicies of the refraction."
+"and [code]eta[/code] is the ratio of the indices of the refraction."
msgstr ""
#: doc/classes/VisualShaderNodeVectorScalarMix.xml:4
diff --git a/doc/translations/fr.po b/doc/translations/fr.po
index d9628a6c35..55434729e5 100644
--- a/doc/translations/fr.po
+++ b/doc/translations/fr.po
@@ -9,13 +9,16 @@
# Anonymous <noreply@weblate.org>, 2020.
# Nathan <bonnemainsnathan@gmail.com>, 2020.
# Fox Lahoki <alexbar@live.fr>, 2020.
+# Pierre Caye <pierrecaye@laposte.net>, 2020.
+# Sofiane <Sofiane-77@caramail.fr>, 2020.
+# Gaya <limanegaya@gmail.com>, 2020.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine class reference\n"
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
"POT-Creation-Date: \n"
-"PO-Revision-Date: 2020-05-18 00:28+0000\n"
-"Last-Translator: Fox Lahoki <alexbar@live.fr>\n"
+"PO-Revision-Date: 2020-07-26 22:51+0000\n"
+"Last-Translator: Gaya <limanegaya@gmail.com>\n"
"Language-Team: French <https://hosted.weblate.org/projects/godot-engine/"
"godot-class-reference/fr/>\n"
"Language: fr\n"
@@ -23,7 +26,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n > 1;\n"
-"X-Generator: Weblate 4.1-dev\n"
+"X-Generator: Weblate 4.2-dev\n"
#: doc/tools/makerst.py
msgid "Description"
@@ -122,9 +125,10 @@ msgstr ""
"définies dans [Color]."
#: modules/gdscript/doc_classes/@GDScript.xml:55
+#, fuzzy
msgid ""
-"Returns the absolute value of parameter [code]s[/code] (i.e. unsigned value, "
-"works for integer and float).\n"
+"Returns the absolute value of parameter [code]s[/code] (i.e. positive "
+"value).\n"
"[codeblock]\n"
"# a is 1\n"
"a = abs(-1)\n"
@@ -213,12 +217,13 @@ msgstr ""
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:114
+#, fuzzy
msgid ""
"Returns the arc tangent of [code]s[/code] in radians. Use it to get the "
"angle from an angle's tangent in trigonometry: [code]atan(tan(angle)) == "
"angle[/code].\n"
"The method cannot know in which quadrant the angle should fall. See [method "
-"atan2] if you always want an exact angle.\n"
+"atan2] if you have both [code]y[/code] and [code]x[/code].\n"
"[codeblock]\n"
"a = atan(0.5) # a is 0.463648\n"
"[/codeblock]"
@@ -233,10 +238,12 @@ msgstr ""
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:129
+#, fuzzy
msgid ""
"Returns the arc tangent of [code]y/x[/code] in radians. Use to get the angle "
"of tangent [code]y/x[/code]. To compute the value, the method takes into "
"account the sign of both arguments in order to determine the quadrant.\n"
+"Important note: The Y coordinate comes first, by convention.\n"
"[codeblock]\n"
"a = atan2(0, -1) # a is 3.141593\n"
"[/codeblock]"
@@ -249,7 +256,7 @@ msgstr ""
"a = atan2(0, -1) # a vaut 3.141593\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:143
+#: modules/gdscript/doc_classes/@GDScript.xml:144
msgid ""
"Decodes a byte array back to a value. When [code]allow_objects[/code] is "
"[code]true[/code] decoding objects is allowed.\n"
@@ -265,7 +272,7 @@ msgstr ""
"sources non fiables afin d'éviter d'éventuelles menaces de sécurité "
"(exécution de code distant)."
-#: modules/gdscript/doc_classes/@GDScript.xml:155
+#: modules/gdscript/doc_classes/@GDScript.xml:156
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:145
msgid ""
"Converts a 2D point expressed in the cartesian coordinate system (X and Y "
@@ -276,10 +283,11 @@ msgstr ""
"(axes X et Y) vers le système de coordonnées polaires (une distance par "
"rapport à l'origine et un angle)."
-#: modules/gdscript/doc_classes/@GDScript.xml:164
+#: modules/gdscript/doc_classes/@GDScript.xml:165
+#, fuzzy
msgid ""
-"Rounds [code]s[/code] upward, returning the smallest integral value that is "
-"not less than [code]s[/code].\n"
+"Rounds [code]s[/code] upward (towards positive infinity), returning the "
+"smallest whole number that is not less than [code]s[/code].\n"
"[codeblock]\n"
"i = ceil(1.45) # i is 2\n"
"i = ceil(1.001) # i is 2\n"
@@ -292,7 +300,7 @@ msgstr ""
"i = ceil(1.001) # i vaut 2\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:177
+#: modules/gdscript/doc_classes/@GDScript.xml:178
msgid ""
"Returns a character as a String of the given Unicode code point (which is "
"compatible with ASCII code).\n"
@@ -312,7 +320,7 @@ msgstr ""
"[/codeblock]\n"
"C'est l'inverse de [method ord]."
-#: modules/gdscript/doc_classes/@GDScript.xml:196
+#: modules/gdscript/doc_classes/@GDScript.xml:197
msgid ""
"Clamps [code]value[/code] and returns a value not less than [code]min[/code] "
"and not more than [code]max[/code].\n"
@@ -338,7 +346,7 @@ msgstr ""
"a = clamp(vitesse, 1, 20)\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:216
+#: modules/gdscript/doc_classes/@GDScript.xml:217
msgid ""
"Converts from a type to another in the best way possible. The [code]type[/"
"code] parameter uses the [enum Variant.Type] values.\n"
@@ -362,7 +370,7 @@ msgstr ""
"print(a.length())\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:233
+#: modules/gdscript/doc_classes/@GDScript.xml:234
msgid ""
"Returns the cosine of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -378,7 +386,7 @@ msgstr ""
"print(cos(PI))\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:247
+#: modules/gdscript/doc_classes/@GDScript.xml:248
msgid ""
"Returns the hyperbolic cosine of [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -392,11 +400,11 @@ msgstr ""
"print(cosh(1))\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:260
+#: modules/gdscript/doc_classes/@GDScript.xml:261
msgid "Converts from decibels to linear energy (audio)."
msgstr "Convertit les décibels en énergie linéaire (audio)."
-#: modules/gdscript/doc_classes/@GDScript.xml:273
+#: modules/gdscript/doc_classes/@GDScript.xml:274
msgid ""
"Returns the result of [code]value[/code] decreased by [code]step[/code] * "
"[code]amount[/code].\n"
@@ -412,9 +420,10 @@ msgstr ""
"a = dectime(60, 10, 0.1))\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:286
+#: modules/gdscript/doc_classes/@GDScript.xml:287
+#, fuzzy
msgid ""
-"Returns degrees converted to radians.\n"
+"Converts an angle expressed in degrees to radians.\n"
"[codeblock]\n"
"# r is 3.141593\n"
"r = deg2rad(180)\n"
@@ -426,7 +435,7 @@ msgstr ""
"r = deg2rad(180)\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:299
+#: modules/gdscript/doc_classes/@GDScript.xml:300
msgid ""
"Converts a previously converted instance to a dictionary, back into an "
"instance. Useful for deserializing."
@@ -434,18 +443,20 @@ msgstr ""
"Convertit une instance précédemment convertie en dictionnaire, puis la "
"convertit à nouveau en instance. Utile pour la désérialisation."
-#: modules/gdscript/doc_classes/@GDScript.xml:310
-#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:90
+#: modules/gdscript/doc_classes/@GDScript.xml:311
msgid ""
-"Easing function, based on exponent. 0 is constant, 1 is linear, 0 to 1 is "
-"ease-in, 1+ is ease out. Negative values are in-out/out in."
+"Easing function, based on exponent. The curve values are: 0 is constant, 1 "
+"is linear, 0 to 1 is ease-in, 1+ is ease out. Negative values are in-out/out "
+"in."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:319
+#: modules/gdscript/doc_classes/@GDScript.xml:320
+#, fuzzy
msgid ""
"The natural exponential function. It raises the mathematical constant [b]e[/"
"b] to the power of [code]s[/code] and returns it.\n"
-"[b]e[/b] has an approximate value of 2.71828.\n"
+"[b]e[/b] has an approximate value of 2.71828, and can be obtained with "
+"[code]exp(1)[/code].\n"
"For exponents to other bases use the method [method pow].\n"
"[codeblock]\n"
"a = exp(2) # Approximately 7.39\n"
@@ -459,9 +470,11 @@ msgstr ""
"a = exp(2) # Environ 7.39\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:333
+#: modules/gdscript/doc_classes/@GDScript.xml:334
+#, fuzzy
msgid ""
-"Rounds [code]s[/code] to the closest smaller integer and returns it.\n"
+"Rounds [code]s[/code] downward (towards negative infinity), returning the "
+"largest whole number that is not more than [code]s[/code].\n"
"[codeblock]\n"
"# a is 2.0\n"
"a = floor(2.99)\n"
@@ -482,7 +495,7 @@ msgstr ""
"besoin d'un nombre entier, vous pouvez utiliser directement [code]int(s)[/"
"code]."
-#: modules/gdscript/doc_classes/@GDScript.xml:351
+#: modules/gdscript/doc_classes/@GDScript.xml:352
msgid ""
"Returns the floating-point remainder of [code]a/b[/code], keeping the sign "
"of [code]a[/code].\n"
@@ -500,7 +513,7 @@ msgstr ""
"[/codeblock]\n"
"Pour l'opération de reste entier, utilisez l'opérateur %."
-#: modules/gdscript/doc_classes/@GDScript.xml:367
+#: modules/gdscript/doc_classes/@GDScript.xml:368
msgid ""
"Returns the floating-point modulus of [code]a/b[/code] that wraps equally in "
"positive and negative.\n"
@@ -548,7 +561,7 @@ msgstr ""
"4 1\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:398
+#: modules/gdscript/doc_classes/@GDScript.xml:399
msgid ""
"Returns a reference to the specified function [code]funcname[/code] in the "
"[code]instance[/code] node. As functions aren't first-class objects in "
@@ -574,7 +587,7 @@ msgstr ""
"print(a.call_func()) # Affiche toto\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:412
+#: modules/gdscript/doc_classes/@GDScript.xml:413
msgid ""
"Returns an array of dictionaries representing the current call stack.\n"
"[codeblock]\n"
@@ -610,7 +623,7 @@ msgstr ""
"source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:435
+#: modules/gdscript/doc_classes/@GDScript.xml:436
msgid ""
"Returns the integer hash of the variable passed.\n"
"[codeblock]\n"
@@ -622,7 +635,7 @@ msgstr ""
"print(hash(\"a\")) # Affiche 177670\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:447
+#: modules/gdscript/doc_classes/@GDScript.xml:448
msgid ""
"Returns the passed instance converted to a dictionary (useful for "
"serializing).\n"
@@ -654,7 +667,7 @@ msgstr ""
"[, res://test.gd, toto]\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:468
+#: modules/gdscript/doc_classes/@GDScript.xml:469
msgid ""
"Returns the Object that corresponds to [code]instance_id[/code]. All Objects "
"have a unique instance ID.\n"
@@ -676,7 +689,7 @@ msgstr ""
" print(inst.titi) # Affiche toto\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:488
+#: modules/gdscript/doc_classes/@GDScript.xml:489
msgid ""
"Returns a normalized value considering the given range. This is the opposite "
"of [method lerp].\n"
@@ -700,15 +713,17 @@ msgstr ""
"# `ratio` vaut maintenant 0.75.\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:506
+#: modules/gdscript/doc_classes/@GDScript.xml:507
msgid ""
"Returns [code]true[/code] if [code]a[/code] and [code]b[/code] are "
-"approximately equal to each other."
+"approximately equal to each other.\n"
+"Here, approximately equal means that [code]a[/code] and [code]b[/code] are "
+"within a small internal epsilon of each other, which scales with the "
+"magnitude of the numbers.\n"
+"Infinity values of the same sign are considered equal."
msgstr ""
-"Renvoie [code]true[/code] (vrai) si [code]a[/code] et [code]b[/code] sont "
-"approximativement égaux l'un à l'autre."
-#: modules/gdscript/doc_classes/@GDScript.xml:515
+#: modules/gdscript/doc_classes/@GDScript.xml:518
msgid ""
"Returns whether [code]s[/code] is an infinity value (either positive "
"infinity or negative infinity)."
@@ -716,7 +731,7 @@ msgstr ""
"Renvoie si [code]s[/code] est une valeur infinie (infini positif ou infini "
"négatif)."
-#: modules/gdscript/doc_classes/@GDScript.xml:524
+#: modules/gdscript/doc_classes/@GDScript.xml:527
msgid ""
"Returns whether [code]instance[/code] is a valid object (e.g. has not been "
"deleted from memory)."
@@ -724,17 +739,23 @@ msgstr ""
"Renvoie si [code]instance[/code] est un objet valide (par ex. s'il n'a pas "
"été supprimé de la mémoire)."
-#: modules/gdscript/doc_classes/@GDScript.xml:533
-msgid "Returns whether [code]s[/code] is a NaN (Not-A-Number) value."
+#: modules/gdscript/doc_classes/@GDScript.xml:536
+#, fuzzy
+msgid ""
+"Returns whether [code]s[/code] is a NaN (\"Not a Number\" or invalid) value."
msgstr "Renvoie si [code]s[/code] est une valeur NaN (Not-A-Number)."
-#: modules/gdscript/doc_classes/@GDScript.xml:542
-msgid "Returns [code]true[/code] if [code]s[/code] is zero or almost zero."
+#: modules/gdscript/doc_classes/@GDScript.xml:545
+#, fuzzy
+msgid ""
+"Returns [code]true[/code] if [code]s[/code] is zero or almost zero.\n"
+"This method is faster than using [method is_equal_approx] with one value as "
+"zero."
msgstr ""
"Renvoie [code]true[/code] (vrai) si [code]s[/code] vaut zéro ou quasiment "
"zéro."
-#: modules/gdscript/doc_classes/@GDScript.xml:551
+#: modules/gdscript/doc_classes/@GDScript.xml:555
msgid ""
"Returns length of Variant [code]var[/code]. Length is the character count of "
"String, element count of Array, size of Dictionary, etc.\n"
@@ -754,7 +775,7 @@ msgstr ""
"len(a) # Renvoie 4\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:569
+#: modules/gdscript/doc_classes/@GDScript.xml:573
msgid ""
"Linearly interpolates between two values by a normalized value. This is the "
"opposite of [method inverse_lerp].\n"
@@ -769,7 +790,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:588
+#: modules/gdscript/doc_classes/@GDScript.xml:592
msgid ""
"Linearly interpolates between two angles (in radians) by a normalized "
"value.\n"
@@ -786,7 +807,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:607
+#: modules/gdscript/doc_classes/@GDScript.xml:611
msgid ""
"Converts from linear energy to decibels (audio). This can be used to "
"implement volume sliders that behave as expected (since volume isn't "
@@ -802,20 +823,41 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:622
+#: modules/gdscript/doc_classes/@GDScript.xml:626
+#, fuzzy
msgid ""
-"Loads a resource from the filesystem located at [code]path[/code].\n"
+"Loads a resource from the filesystem located at [code]path[/code]. The "
+"resource is loaded on the method call (unless it's referenced already "
+"elsewhere, e.g. in another script or in the scene), which might cause slight "
+"delay, especially when loading scenes. To avoid unnecessary delays when "
+"loading something multiple times, either store the resource in a variable or "
+"use [method preload].\n"
"[b]Note:[/b] Resource paths can be obtained by right-clicking on a resource "
-"in the FileSystem dock and choosing [b]Copy Path[/b].\n"
+"in the FileSystem dock and choosing \"Copy Path\" or by dragging the file "
+"from the FileSystem dock into the script.\n"
"[codeblock]\n"
-"# Load a scene called main located in the root of the project directory.\n"
-"var main = load(\"res://main.tscn\")\n"
+"# Load a scene called main located in the root of the project directory and "
+"cache it in a variable.\n"
+"var main = load(\"res://main.tscn\") # main will contain a PackedScene "
+"resource.\n"
"[/codeblock]\n"
"[b]Important:[/b] The path must be absolute, a local path will just return "
"[code]null[/code]."
msgstr ""
+"Charge une ressource depuis le système de fichiers localisé à [code]chemin[/"
+"code].\n"
+"[b]Note :[/b] Les chemins des ressources peuvent être obtenus en faisant un "
+"clic droit sur une ressource dans le dock du système de fichiers et en "
+"choisissant [b]Copy Path[/b].\n"
+"[codeblock]\n"
+"# Charger une scène appelée main située dans la racine du répertoire du "
+"projet.\n"
+"var main = load(\"res://main.tscn\")\n"
+"[/codeblock]\n"
+"[b]Important:[/b] Le chemin doit être absolue, un chemin local va juste "
+"retourner [code]null[/code]."
-#: modules/gdscript/doc_classes/@GDScript.xml:637
+#: modules/gdscript/doc_classes/@GDScript.xml:641
msgid ""
"Natural logarithm. The amount of time needed to reach a certain level of "
"continuous growth.\n"
@@ -823,10 +865,12 @@ msgid ""
"calculators, which uses a base 10 logarithm.\n"
"[codeblock]\n"
"log(10) # Returns 2.302585\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] The logarithm of [code]0[/code] returns [code]-inf[/code], "
+"while negative values return [code]-nan[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:652
+#: modules/gdscript/doc_classes/@GDScript.xml:657
msgid ""
"Returns the maximum of two values.\n"
"[codeblock]\n"
@@ -840,7 +884,7 @@ msgstr ""
"max(-3.99, -4) # Renvoie -3.99\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:667
+#: modules/gdscript/doc_classes/@GDScript.xml:672
msgid ""
"Returns the minimum of two values.\n"
"[codeblock]\n"
@@ -854,27 +898,39 @@ msgstr ""
"min(-3.99, -4) # Renvoie -4\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:684
+#: modules/gdscript/doc_classes/@GDScript.xml:689
msgid ""
"Moves [code]from[/code] toward [code]to[/code] by the [code]delta[/code] "
"value.\n"
"Use a negative [code]delta[/code] value to move away.\n"
"[codeblock]\n"
+"move_toward(5, 10, 4) # Returns 9\n"
"move_toward(10, 5, 4) # Returns 6\n"
+"move_toward(10, 5, -1.5) # Returns 11.5\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:697
+#: modules/gdscript/doc_classes/@GDScript.xml:704
msgid ""
-"Returns the nearest larger power of 2 for integer [code]value[/code].\n"
+"Returns the nearest equal or larger power of 2 for integer [code]value[/"
+"code].\n"
+"In other words, returns the smallest value [code]a[/code] where [code]a = "
+"pow(2, n)[/code] such that [code]value <= a[/code] for some non-negative "
+"integer [code]n[/code].\n"
"[codeblock]\n"
"nearest_po2(3) # Returns 4\n"
"nearest_po2(4) # Returns 4\n"
"nearest_po2(5) # Returns 8\n"
-"[/codeblock]"
+"\n"
+"nearest_po2(0) # Returns 0 (this may not be what you expect)\n"
+"nearest_po2(-1) # Returns 0 (this may not be what you expect)\n"
+"[/codeblock]\n"
+"[b]WARNING:[/b] Due to the way it is implemented, this function returns "
+"[code]0[/code] rather than [code]1[/code] for non-positive values of "
+"[code]value[/code] (in reality, 1 is the smallest integer power of 2)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:711
+#: modules/gdscript/doc_classes/@GDScript.xml:723
msgid ""
"Returns an integer representing the Unicode code point of the given Unicode "
"character [code]char[/code].\n"
@@ -886,27 +942,28 @@ msgid ""
"This is the inverse of [method char]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:726
+#: modules/gdscript/doc_classes/@GDScript.xml:738
msgid ""
-"Parse JSON text to a Variant (use [method typeof] to check if it is what you "
-"expect).\n"
-"Be aware that the JSON specification does not define integer or float types, "
-"but only a number type. Therefore, parsing a JSON text will convert all "
-"numerical values to [float] types.\n"
-"Note that JSON objects do not preserve key order like Godot dictionaries, "
-"thus you should not rely on keys being in a certain order if a dictionary is "
-"constructed from JSON. In contrast, JSON arrays retain the order of their "
+"Parse JSON text to a Variant. (Use [method typeof] to check if the Variant's "
+"type is what you expect.)\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, parsing a JSON text will convert "
+"all numerical values to [float] types.\n"
+"[b]Note:[/b] JSON objects do not preserve key order like Godot dictionaries, "
+"thus, you should not rely on keys being in a certain order if a dictionary "
+"is constructed from JSON. In contrast, JSON arrays retain the order of their "
"elements:\n"
"[codeblock]\n"
-"p = parse_json('[\"a\", \"b\", \"c\"]')\n"
-"if typeof(p) == TYPE_ARRAY:\n"
-" print(p[0]) # Prints a\n"
+"var p = JSON.parse('[\"hello\", \"world\", \"!\"]')\n"
+"if typeof(p.result) == TYPE_ARRAY:\n"
+" print(p.result[0]) # Prints \"hello\"\n"
"else:\n"
-" print(\"unexpected results\")\n"
-"[/codeblock]"
+" push_error(\"Unexpected results.\")\n"
+"[/codeblock]\n"
+"See also [JSON] for an alternative way to parse JSON text."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:746
+#: modules/gdscript/doc_classes/@GDScript.xml:759
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:142
msgid ""
"Converts a 2D point expressed in the polar coordinate system (a distance "
@@ -914,7 +971,7 @@ msgid ""
"cartesian coordinate system (X and Y axis)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:757
+#: modules/gdscript/doc_classes/@GDScript.xml:770
msgid ""
"Returns the integer modulus of [code]a/b[/code] that wraps equally in "
"positive and negative.\n"
@@ -940,7 +997,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:788
+#: modules/gdscript/doc_classes/@GDScript.xml:801
msgid ""
"Returns the result of [code]x[/code] raised to the power of [code]y[/code].\n"
"[codeblock]\n"
@@ -948,19 +1005,23 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:800
+#: modules/gdscript/doc_classes/@GDScript.xml:813
msgid ""
-"Returns a resource from the filesystem that is loaded during script "
-"parsing.\n"
+"Returns a [Resource] from the filesystem located at [code]path[/code]. The "
+"resource is loaded during script parsing, i.e. is loaded with the script and "
+"[method preload] effectively acts as a reference to that resource. Note that "
+"the method requires a constant path. If you want to load a resource from a "
+"dynamic/variable path, use [method load].\n"
"[b]Note:[/b] Resource paths can be obtained by right clicking on a resource "
-"in the Assets Panel and choosing \"Copy Path\".\n"
+"in the Assets Panel and choosing \"Copy Path\" or by dragging the file from "
+"the FileSystem dock into the script.\n"
"[codeblock]\n"
-"# Load a scene called main located in the root of the project directory.\n"
-"var main = preload(\"res://main.tscn\")\n"
+"# Instance a scene.\n"
+"var diamond = preload(\"res://diamond.tscn\").instance()\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:812
+#: modules/gdscript/doc_classes/@GDScript.xml:825
msgid ""
"Converts one or more arguments to strings in the best way possible and "
"prints them to the console.\n"
@@ -970,11 +1031,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:823
+#: modules/gdscript/doc_classes/@GDScript.xml:836
msgid "Like [method print], but prints only when used in debug mode."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:830
+#: modules/gdscript/doc_classes/@GDScript.xml:843
msgid ""
"Prints a stack track at code location, only works when running with debugger "
"turned on.\n"
@@ -983,8 +1044,15 @@ msgid ""
"Frame 0 - res://test.gd:16 in function '_process'\n"
"[/codeblock]"
msgstr ""
+"Affiche la trace d'appels à l'emplacement du code, ne fonctionne que lorsque "
+"le débogueur est activé.\n"
+"La sortie dans la console ressemblerait à ceci :\n"
+"[codeblock]\n"
+"Frame 0 - res://test.gd:16 in function '_process'\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:841
+#: modules/gdscript/doc_classes/@GDScript.xml:854
+#, fuzzy
msgid ""
"Prints one or more arguments to strings in the best way possible to standard "
"error line.\n"
@@ -992,8 +1060,13 @@ msgid ""
"printerr(\"prints to stderr\")\n"
"[/codeblock]"
msgstr ""
+"Affiche un ou plusieurs arguments pour les chaînes de caractères de la "
+"meilleure façon possible sur la ligne d'erreur.\n"
+"[codeblock]\n"
+"printerr(\"prints to stderr\")\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:851
+#: modules/gdscript/doc_classes/@GDScript.xml:864
msgid ""
"Prints one or more arguments to strings in the best way possible to console. "
"No newline is added at the end.\n"
@@ -1007,7 +1080,7 @@ msgid ""
"method, such as [method print]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:864
+#: modules/gdscript/doc_classes/@GDScript.xml:877
msgid ""
"Prints one or more arguments to the console with a space between each "
"argument.\n"
@@ -1016,7 +1089,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:874
+#: modules/gdscript/doc_classes/@GDScript.xml:887
msgid ""
"Prints one or more arguments to the console with a tab between each "
"argument.\n"
@@ -1025,7 +1098,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:886
+#: modules/gdscript/doc_classes/@GDScript.xml:899
msgid ""
"Pushes an error message to Godot's built-in debugger and to the OS "
"terminal.\n"
@@ -1035,7 +1108,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:898
+#: modules/gdscript/doc_classes/@GDScript.xml:911
msgid ""
"Pushes a warning message to Godot's built-in debugger and to the OS "
"terminal.\n"
@@ -1045,15 +1118,15 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:910
+#: modules/gdscript/doc_classes/@GDScript.xml:923
msgid ""
-"Converts from radians to degrees.\n"
+"Converts an angle expressed in radians to degrees.\n"
"[codeblock]\n"
"rad2deg(0.523599) # Returns 30\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:924
+#: modules/gdscript/doc_classes/@GDScript.xml:937
msgid ""
"Random range, any floating point value between [code]from[/code] and "
"[code]to[/code].\n"
@@ -1062,7 +1135,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:936
+#: modules/gdscript/doc_classes/@GDScript.xml:949
msgid ""
"Random from seed: pass a [code]seed[/code], and an array with both number "
"and new seed is returned. \"Seed\" here refers to the internal state of the "
@@ -1070,7 +1143,7 @@ msgid ""
"implementation is 64 bits."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:943
+#: modules/gdscript/doc_classes/@GDScript.xml:956
msgid ""
"Returns a random floating point value on the interval [code][0, 1][/code].\n"
"[codeblock]\n"
@@ -1078,7 +1151,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:953
+#: modules/gdscript/doc_classes/@GDScript.xml:966
msgid ""
"Returns a random unsigned 32 bit integer. Use remainder to obtain a random "
"value in the interval [code][0, N - 1][/code] (where N is smaller than "
@@ -1091,7 +1164,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:966
+#: modules/gdscript/doc_classes/@GDScript.xml:979
msgid ""
"Randomizes the seed (or the internal state) of the random number generator. "
"Current implementation reseeds using a number based on time.\n"
@@ -1101,7 +1174,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:977
+#: modules/gdscript/doc_classes/@GDScript.xml:990
msgid ""
"Returns an array with the given range. Range can be 1 argument N (0 to N-1), "
"two arguments (initial, final-1) or three arguments (initial, final-1, "
@@ -1131,7 +1204,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1017
+#: modules/gdscript/doc_classes/@GDScript.xml:1030
msgid ""
"Maps a [code]value[/code] from range [code][istart, istop][/code] to [code]"
"[ostart, ostop][/code].\n"
@@ -1140,16 +1213,16 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1029
+#: modules/gdscript/doc_classes/@GDScript.xml:1042
msgid ""
-"Returns the integral value that is nearest to [code]s[/code], with halfway "
-"cases rounded away from zero.\n"
+"Rounds [code]s[/code] to the nearest whole number, with halfway cases "
+"rounded away from zero.\n"
"[codeblock]\n"
"round(2.6) # Returns 3\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1041
+#: modules/gdscript/doc_classes/@GDScript.xml:1054
msgid ""
"Sets seed for the random number generator.\n"
"[codeblock]\n"
@@ -1158,7 +1231,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1054
+#: modules/gdscript/doc_classes/@GDScript.xml:1067
msgid ""
"Returns the sign of [code]s[/code]: -1 or 1. Returns 0 if [code]s[/code] is "
"0.\n"
@@ -1169,7 +1242,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1068
+#: modules/gdscript/doc_classes/@GDScript.xml:1081
msgid ""
"Returns the sine of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -1177,7 +1250,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1080
+#: modules/gdscript/doc_classes/@GDScript.xml:1093
msgid ""
"Returns the hyperbolic sine of [code]s[/code].\n"
"[codeblock]\n"
@@ -1186,27 +1259,37 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1097
+#: modules/gdscript/doc_classes/@GDScript.xml:1110
msgid ""
-"Returns a number smoothly interpolated between the [code]from[/code] and "
-"[code]to[/code], based on the [code]weight[/code]. Similar to [method lerp], "
-"but interpolates faster at the beginning and slower at the end.\n"
+"Returns the result of smoothly interpolating the value of [code]s[/code] "
+"between [code]0[/code] and [code]1[/code], based on the where [code]s[/code] "
+"lies with respect to the edges [code]from[/code] and [code]to[/code].\n"
+"The return value is [code]0[/code] if [code]s <= from[/code], and [code]1[/"
+"code] if [code]s >= to[/code]. If [code]s[/code] lies between [code]from[/"
+"code] and [code]to[/code], the returned value follows an S-shaped curve that "
+"maps [code]s[/code] between [code]0[/code] and [code]1[/code].\n"
+"This S-shaped curve is the cubic Hermite interpolator, given by [code]f(s) = "
+"3*s^2 - 2*s^3[/code].\n"
"[codeblock]\n"
-"smoothstep(0, 2, 0.5) # Returns 0.15\n"
+"smoothstep(0, 2, -5.0) # Returns 0.0\n"
+"smoothstep(0, 2, 0.5) # Returns 0.15625\n"
"smoothstep(0, 2, 1.0) # Returns 0.5\n"
"smoothstep(0, 2, 2.0) # Returns 1.0\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1111
+#: modules/gdscript/doc_classes/@GDScript.xml:1127
msgid ""
-"Returns the square root of [code]s[/code].\n"
+"Returns the square root of [code]s[/code], where [code]s[/code] is a non-"
+"negative number.\n"
"[codeblock]\n"
"sqrt(9) # Returns 3\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b]Negative values of [code]s[/code] return NaN. If you need "
+"negative inputs, use [code]System.Numerics.Complex[/code] in C#."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1123
+#: modules/gdscript/doc_classes/@GDScript.xml:1140
msgid ""
"Returns the position of the first non-zero digit, after the decimal point. "
"Note that the maximum return value is 10, which is a design decision in the "
@@ -1221,7 +1304,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1142
+#: modules/gdscript/doc_classes/@GDScript.xml:1159
msgid ""
"Snaps float value [code]s[/code] to a given [code]step[/code]. This can also "
"be used to round a floating point number to an arbitrary number of "
@@ -1232,7 +1315,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1153
+#: modules/gdscript/doc_classes/@GDScript.xml:1170
msgid ""
"Converts one or more arguments to string in the best way possible.\n"
"[codeblock]\n"
@@ -1243,7 +1326,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1168
+#: modules/gdscript/doc_classes/@GDScript.xml:1185
msgid ""
"Converts a formatted string that was returned by [method var2str] to the "
"original value.\n"
@@ -1254,7 +1337,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1182
+#: modules/gdscript/doc_classes/@GDScript.xml:1199
msgid ""
"Returns the tangent of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -1262,7 +1345,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1194
+#: modules/gdscript/doc_classes/@GDScript.xml:1211
msgid ""
"Returns the hyperbolic tangent of [code]s[/code].\n"
"[codeblock]\n"
@@ -1271,18 +1354,25 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1207
+#: modules/gdscript/doc_classes/@GDScript.xml:1224
msgid ""
-"Converts a Variant [code]var[/code] to JSON text and return the result. "
+"Converts a [Variant] [code]var[/code] to JSON text and return the result. "
"Useful for serializing data to store or send over the network.\n"
"[codeblock]\n"
+"# Both numbers below are integers.\n"
"a = { \"a\": 1, \"b\": 2 }\n"
"b = to_json(a)\n"
"print(b) # {\"a\":1, \"b\":2}\n"
-"[/codeblock]"
+"# Both numbers above are floats, even if they display without any decimal "
+"places.\n"
+"[/codeblock]\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, converting a [Variant] to JSON "
+"text will convert all numerical values to [float] types.\n"
+"See also [JSON] for an alternative way to convert a [Variant] to JSON text."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1221
+#: modules/gdscript/doc_classes/@GDScript.xml:1242
msgid ""
"Returns whether the given class exists in [ClassDB].\n"
"[codeblock]\n"
@@ -1291,7 +1381,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1234
+#: modules/gdscript/doc_classes/@GDScript.xml:1255
msgid ""
"Returns the internal type of the given Variant object, using the [enum "
"Variant.Type] values.\n"
@@ -1304,7 +1394,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1250
+#: modules/gdscript/doc_classes/@GDScript.xml:1271
msgid ""
"Checks that [code]json[/code] is valid JSON data. Returns an empty string if "
"valid, or an error message otherwise.\n"
@@ -1312,20 +1402,20 @@ msgid ""
"j = to_json([1, 2, 3])\n"
"v = validate_json(j)\n"
"if not v:\n"
-" print(\"valid\")\n"
+" print(\"Valid JSON.\")\n"
"else:\n"
-" prints(\"invalid\", v)\n"
+" push_error(\"Invalid JSON: \" + v)\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1269
+#: modules/gdscript/doc_classes/@GDScript.xml:1290
msgid ""
"Encodes a variable value to a byte array. When [code]full_objects[/code] is "
"[code]true[/code] encoding objects is allowed (and can potentially include "
"code)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1278
+#: modules/gdscript/doc_classes/@GDScript.xml:1299
msgid ""
"Converts a Variant [code]var[/code] to a formatted string that can later be "
"parsed using [method str2var].\n"
@@ -1342,7 +1432,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1298
+#: modules/gdscript/doc_classes/@GDScript.xml:1319
msgid ""
"Returns a weak reference to an object.\n"
"A weak reference to an object is not enough to keep the object alive: when "
@@ -1352,135 +1442,67 @@ msgid ""
"reference may return the object even if there are no strong references to it."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1312
+#: modules/gdscript/doc_classes/@GDScript.xml:1333
msgid ""
"Wraps float [code]value[/code] between [code]min[/code] and [code]max[/"
"code].\n"
"Usable for creating loop-alike behavior or infinite surfaces.\n"
"[codeblock]\n"
-"# a is 0.5\n"
-"a = wrapf(10.5, 0.0, 10.0)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# a is 9.5\n"
-"a = wrapf(-0.5, 0.0, 10.0)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# Infinite loop between 0.0 and 0.99\n"
-"f = wrapf(f + 0.1, 0.0, 1.0)\n"
+"# Infinite loop between 5.0 and 9.9\n"
+"value = wrapf(value + 0.1, 5.0, 10.0)\n"
"[/codeblock]\n"
"[codeblock]\n"
"# Infinite rotation (in radians)\n"
"angle = wrapf(angle + 0.1, 0.0, TAU)\n"
"[/codeblock]\n"
-"[b]Note:[/b] If you just want to wrap between 0.0 and [code]n[/code] (where "
-"[code]n[/code] is a positive floating-point value), it is better for "
-"performance to use the [method fmod] method like [code]fmod(number, n)[/"
-"code].\n"
-"[code]wrapf[/code] is more flexible than using the [method fmod] approach by "
-"giving the user a simple control over the minimum value. It also fully "
-"supports negative numbers, e.g.\n"
"[codeblock]\n"
"# Infinite rotation (in radians)\n"
"angle = wrapf(angle + 0.1, -PI, PI)\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] If [code]min[/code] is [code]0[/code], this is equivalent to "
+"[method fposmod], so prefer using that instead.\n"
+"[code]wrapf[/code] is more flexible than using the [method fposmod] approach "
+"by giving the user control over the minimum value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1348
+#: modules/gdscript/doc_classes/@GDScript.xml:1361
msgid ""
"Wraps integer [code]value[/code] between [code]min[/code] and [code]max[/"
"code].\n"
"Usable for creating loop-alike behavior or infinite surfaces.\n"
"[codeblock]\n"
-"# a is 0\n"
-"a = wrapi(10, 0, 10)\n"
+"# Infinite loop between 5 and 9\n"
+"frame = wrapi(frame + 1, 5, 10)\n"
"[/codeblock]\n"
"[codeblock]\n"
-"# a is 9\n"
-"a = wrapi(-1, 0, 10)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# Infinite loop between 0 and 9\n"
-"frame = wrapi(frame + 1, 0, 10)\n"
-"[/codeblock]\n"
-"[b]Note:[/b] If you just want to wrap between 0 and [code]n[/code] (where "
-"[code]n[/code] is a positive integer value), it is better for performance to "
-"use the modulo operator like [code]number % n[/code].\n"
-"[code]wrapi[/code] is more flexible than using the modulo approach by giving "
-"the user a simple control over the minimum value. It also fully supports "
-"negative numbers, e.g.\n"
-"[codeblock]\n"
"# result is -2\n"
"var result = wrapi(-6, -5, -1)\n"
-"[/codeblock]"
-msgstr ""
-
-#: modules/gdscript/doc_classes/@GDScript.xml:1378
-msgid ""
-"Stops the function execution and returns the current suspended state to the "
-"calling function.\n"
-"From the caller, call [method GDScriptFunctionState.resume] on the state to "
-"resume execution. This invalidates the state. Within the resumed function, "
-"[code]yield()[/code] returns whatever was passed to the [code]resume()[/"
-"code] function call.\n"
-"If passed an object and a signal, the execution is resumed when the object "
-"emits the given signal. In this case, [code]yield()[/code] returns the "
-"argument passed to [code]emit_signal()[/code] if the signal takes only one "
-"argument, or an array containing all the arguments passed to "
-"[code]emit_signal()[/code] if the signal takes multiple arguments.\n"
-"You can also use [code]yield[/code] to wait for a function to finish:\n"
-"[codeblock]\n"
-"func _ready():\n"
-" yield(countdown(), \"completed\") # waiting for the countdown() function "
-"to complete\n"
-" print('Ready')\n"
-"\n"
-"func countdown():\n"
-" yield(get_tree(), \"idle_frame\") # returns a GDScriptFunctionState "
-"object to _ready()\n"
-" print(3)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-" print(2)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-" print(1)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-"\n"
-"# prints:\n"
-"# 3\n"
-"# 2\n"
-"# 1\n"
-"# Ready\n"
"[/codeblock]\n"
-"When yielding on a function, the [code]completed[/code] signal will be "
-"emitted automatically when the function returns. It can, therefore, be used "
-"as the [code]signal[/code] parameter of the [code]yield[/code] method to "
-"resume.\n"
-"In order to yield on a function, the resulting function should also return a "
-"[code]GDScriptFunctionState[/code]. Notice [code]yield(get_tree(), "
-"\"idle_frame\")[/code] from the above example."
+"[b]Note:[/b] If [code]min[/code] is [code]0[/code], this is equivalent to "
+"[method posmod], so prefer using that instead.\n"
+"[code]wrapi[/code] is more flexible than using the [method posmod] approach "
+"by giving the user control over the minimum value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1409
+#: modules/gdscript/doc_classes/@GDScript.xml:1378
msgid ""
"Constant that represents how many times the diameter of a circle fits around "
-"its perimeter."
+"its perimeter. This is equivalent to [code]TAU / 2[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1412
-msgid "The circle constant, the circumference of the unit circle."
+#: modules/gdscript/doc_classes/@GDScript.xml:1381
+msgid "The circle constant, the circumference of the unit circle in radians."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1415
-msgid "A positive infinity. (For negative infinity, use -INF)."
+#: modules/gdscript/doc_classes/@GDScript.xml:1384
+msgid "Positive infinity. For negative infinity, use -INF."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1418
+#: modules/gdscript/doc_classes/@GDScript.xml:1387
msgid ""
-"Macro constant that expands to an expression of type float that represents a "
-"NaN.\n"
-"The NaN values are used to identify undefined or non-representable values "
-"for floating-point elements, such as the square root of negative numbers or "
-"the result of 0/0."
+"\"Not a Number\", an invalid value. [code]NaN[/code] has special properties, "
+"including that it is not equal to itself. It is output by some invalid "
+"operations, such as dividing zero by zero."
msgstr ""
#: doc/classes/@GlobalScope.xml:4
@@ -3716,130 +3738,142 @@ msgid ""
msgstr ""
#: doc/classes/AABB.xml:10 doc/classes/Plane.xml:10 doc/classes/Rect2.xml:11
-#: doc/classes/Rect2i.xml:11 doc/classes/Transform.xml:10
+#: doc/classes/Rect2i.xml:11 doc/classes/Transform.xml:11
#: doc/classes/Vector2.xml:12 doc/classes/Vector2i.xml:12
#: doc/classes/Vector3.xml:12 doc/classes/Vector3i.xml:12
msgid "https://docs.godotengine.org/en/latest/tutorials/math/index.html"
msgstr ""
#: doc/classes/AABB.xml:21
-msgid "Optional constructor, accepts position and size."
+#, fuzzy
+msgid "Constructs an [AABB] from a position and size."
+msgstr "Construit une nouvelle chaîne de caractères à partir du [Plane] donné."
+
+#: doc/classes/AABB.xml:28
+msgid ""
+"Returns an AABB with equivalent position and size, modified so that the most-"
+"negative corner is the origin and the size is positive."
msgstr ""
-#: doc/classes/AABB.xml:30
+#: doc/classes/AABB.xml:37
msgid ""
"Returns [code]true[/code] if this [AABB] completely encloses another one."
msgstr ""
-#: doc/classes/AABB.xml:39
+#: doc/classes/AABB.xml:46
msgid "Returns this [AABB] expanded to include a given point."
msgstr ""
-#: doc/classes/AABB.xml:46
+#: doc/classes/AABB.xml:53
msgid "Returns the volume of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:55
+#: doc/classes/AABB.xml:62
msgid "Gets the position of the 8 endpoints of the [AABB] in space."
msgstr ""
-#: doc/classes/AABB.xml:62
+#: doc/classes/AABB.xml:69
msgid "Returns the normalized longest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:69
+#: doc/classes/AABB.xml:76
msgid ""
"Returns the index of the longest axis of the [AABB] (according to "
"[Vector3]'s [code]AXIS_*[/code] constants)."
msgstr ""
-#: doc/classes/AABB.xml:76
+#: doc/classes/AABB.xml:83
msgid "Returns the scalar length of the longest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:83
+#: doc/classes/AABB.xml:90
msgid "Returns the normalized shortest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:90
+#: doc/classes/AABB.xml:97
msgid ""
"Returns the index of the shortest axis of the [AABB] (according to "
"[Vector3]::AXIS* enum)."
msgstr ""
-#: doc/classes/AABB.xml:97
+#: doc/classes/AABB.xml:104
msgid "Returns the scalar length of the shortest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:106
+#: doc/classes/AABB.xml:113
msgid ""
"Returns the support point in a given direction. This is useful for collision "
"detection algorithms."
msgstr ""
-#: doc/classes/AABB.xml:115
+#: doc/classes/AABB.xml:122
msgid ""
"Returns a copy of the [AABB] grown a given amount of units towards all the "
"sides."
msgstr ""
-#: doc/classes/AABB.xml:122
+#: doc/classes/AABB.xml:129
msgid "Returns [code]true[/code] if the [AABB] is flat or empty."
msgstr ""
-#: doc/classes/AABB.xml:129
+#: doc/classes/AABB.xml:136
msgid "Returns [code]true[/code] if the [AABB] is empty."
msgstr ""
-#: doc/classes/AABB.xml:138
+#: doc/classes/AABB.xml:145
msgid "Returns [code]true[/code] if the [AABB] contains a point."
msgstr ""
-#: doc/classes/AABB.xml:147
+#: doc/classes/AABB.xml:154
msgid ""
"Returns the intersection between two [AABB]. An empty AABB (size 0,0,0) is "
"returned on failure."
msgstr ""
-#: doc/classes/AABB.xml:156
+#: doc/classes/AABB.xml:163
msgid "Returns [code]true[/code] if the [AABB] overlaps with another."
msgstr ""
-#: doc/classes/AABB.xml:165
+#: doc/classes/AABB.xml:172
msgid "Returns [code]true[/code] if the [AABB] is on both sides of a plane."
msgstr ""
-#: doc/classes/AABB.xml:176
+#: doc/classes/AABB.xml:183
msgid ""
"Returns [code]true[/code] if the [AABB] intersects the line segment between "
"[code]from[/code] and [code]to[/code]."
msgstr ""
-#: doc/classes/AABB.xml:185
+#: doc/classes/AABB.xml:192
msgid ""
"Returns [code]true[/code] if this [AABB] and [code]aabb[/code] are "
"approximately equal, by calling [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/AABB.xml:194
+#: doc/classes/AABB.xml:201
msgid ""
"Returns a larger [AABB] that contains both this [AABB] and [code]with[/code]."
msgstr ""
-#: doc/classes/AABB.xml:200
+#: doc/classes/AABB.xml:207 doc/classes/Rect2.xml:174
+#: doc/classes/Rect2i.xml:163
msgid ""
-"Ending corner. This is calculated as [code]position + size[/code]. Changing "
-"this property changes [member size] accordingly."
+"Ending corner. This is calculated as [code]position + size[/code]. Setting "
+"this value will change the size."
msgstr ""
-#: doc/classes/AABB.xml:203
-msgid "Beginning corner."
+#: doc/classes/AABB.xml:210 doc/classes/Rect2.xml:177
+#: doc/classes/Rect2i.xml:166
+msgid "Beginning corner. Typically has values lower than [member end]."
msgstr ""
-#: doc/classes/AABB.xml:206 doc/classes/Rect2.xml:180
+#: doc/classes/AABB.xml:213 doc/classes/Rect2.xml:180
#: doc/classes/Rect2i.xml:169
-msgid "Size from position to end."
+msgid ""
+"Size from [member position] to [member end]. Typically all components are "
+"positive.\n"
+"If the size is negative, you can use [method abs] to fix it."
msgstr ""
#: doc/classes/AcceptDialog.xml:4
@@ -3903,11 +3937,11 @@ msgstr ""
msgid "The text displayed by the dialog."
msgstr ""
-#: doc/classes/AcceptDialog.xml:82
+#: doc/classes/AcceptDialog.xml:83
msgid "Emitted when the dialog is accepted, i.e. the OK button is pressed."
msgstr ""
-#: doc/classes/AcceptDialog.xml:89
+#: doc/classes/AcceptDialog.xml:90
msgid "Emitted when a custom button is pressed. See [method add_button]."
msgstr ""
@@ -3960,7 +3994,7 @@ msgstr ""
#: doc/classes/AESContext.xml:54
msgid ""
"Get the current IV state for this context (IV gets updated when calling "
-"[method update]). You normally don't need this funciton.\n"
+"[method update]). You normally don't need this function.\n"
"Note: This function only makes sense when the context is started with "
"[constant MODE_CBC_ENCRYPT] or [constant MODE_CBC_DECRYPT]."
msgstr ""
@@ -4038,12 +4072,14 @@ msgid "If [code]true[/code], texture will be centered."
msgstr ""
#: doc/classes/AnimatedSprite2D.xml:46 doc/classes/Sprite2D.xml:41
-#: doc/classes/SpriteBase3D.xml:61 doc/classes/TextureRect.xml:18
+#: doc/classes/SpriteBase3D.xml:61 doc/classes/TextureButton.xml:19
+#: doc/classes/TextureRect.xml:18
msgid "If [code]true[/code], texture is flipped horizontally."
msgstr ""
#: doc/classes/AnimatedSprite2D.xml:49 doc/classes/Sprite2D.xml:44
-#: doc/classes/SpriteBase3D.xml:64 doc/classes/TextureRect.xml:21
+#: doc/classes/SpriteBase3D.xml:64 doc/classes/TextureButton.xml:22
+#: doc/classes/TextureRect.xml:21
msgid "If [code]true[/code], texture is flipped vertically."
msgstr ""
@@ -4210,10 +4246,10 @@ msgid ""
"[codeblock]\n"
"# This creates an animation that makes the node \"Enemy\" move to the right "
"by\n"
-"# 100 pixels in 1 second.\n"
+"# 100 pixels in 0.5 seconds.\n"
"var animation = Animation.new()\n"
"var track_index = animation.add_track(Animation.TYPE_VALUE)\n"
-"animation.track_set_path(track_index, \"Enemy:position.x\")\n"
+"animation.track_set_path(track_index, \"Enemy:position:x\")\n"
"animation.track_insert_key(track_index, 0.0, 0)\n"
"animation.track_insert_key(track_index, 0.5, 100)\n"
"[/codeblock]\n"
@@ -6323,15 +6359,14 @@ msgid "Removes the first occurrence of a value from the array."
msgstr ""
#: doc/classes/Array.xml:203
-#, fuzzy
msgid ""
"Searches the array for a value and returns its index or [code]-1[/code] if "
"not found. Optionally, the initial search index can be passed."
msgstr ""
"Trouve la première occurrence d'une sous-chaîne de caractères. Retourne le "
-"position de départ de la sous-chaîne de caractères ou -1 si non trouvée. "
-"Optionnellement, l'index de recherche initial peut être passé (en tant "
-"qu'argument) ."
+"position de départ de la sous-chaîne de caractères ou [code]-1[/code] si non "
+"trouvée. Optionnellement, l'index de recherche initial peut être passé (en "
+"tant qu'argument) ."
#: doc/classes/Array.xml:212
msgid ""
@@ -6349,10 +6384,10 @@ msgstr ""
msgid ""
"Returns [code]true[/code] if the array contains the given value.\n"
"[codeblock]\n"
-"[\"inside\", 7].has(\"inside\") == true\n"
-"[\"inside\", 7].has(\"outside\") == false\n"
-"[\"inside\", 7].has(7) == true\n"
-"[\"inside\", 7].has(\"7\") == false\n"
+"print([\"inside\", 7].has(\"inside\")) # True\n"
+"print([\"inside\", 7].has(\"outside\")) # False\n"
+"print([\"inside\", 7].has(7)) # True\n"
+"print([\"inside\", 7].has(\"7\")) # False\n"
"[/codeblock]\n"
"[b]Note:[/b] This is equivalent to using the [code]in[/code] operator as "
"follows:\n"
@@ -6373,11 +6408,11 @@ msgid ""
"valid, or at the end of the array ([code]pos == size()[/code])."
msgstr ""
-#: doc/classes/Array.xml:265 doc/classes/PackedByteArray.xml:107
-#: doc/classes/PackedColorArray.xml:62 doc/classes/PackedFloat32Array.xml:63
-#: doc/classes/PackedFloat64Array.xml:63 doc/classes/PackedInt32Array.xml:63
-#: doc/classes/PackedInt64Array.xml:63 doc/classes/PackedStringArray.xml:62
-#: doc/classes/PackedVector2Array.xml:62 doc/classes/PackedVector3Array.xml:62
+#: doc/classes/Array.xml:265 doc/classes/PackedByteArray.xml:116
+#: doc/classes/PackedColorArray.xml:71 doc/classes/PackedFloat32Array.xml:72
+#: doc/classes/PackedFloat64Array.xml:72 doc/classes/PackedInt32Array.xml:72
+#: doc/classes/PackedInt64Array.xml:72 doc/classes/PackedStringArray.xml:71
+#: doc/classes/PackedVector2Array.xml:71 doc/classes/PackedVector3Array.xml:71
msgid "Reverses the order of the elements in the array."
msgstr ""
@@ -6407,8 +6442,8 @@ msgid ""
"code] if the array is empty."
msgstr ""
-#: doc/classes/Array.xml:302 doc/classes/PackedByteArray.xml:116
-#: doc/classes/PackedFloat32Array.xml:72 doc/classes/PackedFloat64Array.xml:72
+#: doc/classes/Array.xml:302 doc/classes/PackedByteArray.xml:125
+#: doc/classes/PackedFloat32Array.xml:81 doc/classes/PackedFloat64Array.xml:81
msgid "Appends an element at the end of the array."
msgstr ""
@@ -6416,11 +6451,11 @@ msgstr ""
msgid "Adds an element at the beginning of the array."
msgstr ""
-#: doc/classes/Array.xml:320 doc/classes/PackedByteArray.xml:125
-#: doc/classes/PackedColorArray.xml:80 doc/classes/PackedFloat32Array.xml:81
-#: doc/classes/PackedFloat64Array.xml:81 doc/classes/PackedInt32Array.xml:81
-#: doc/classes/PackedInt64Array.xml:81 doc/classes/PackedStringArray.xml:80
-#: doc/classes/PackedVector2Array.xml:80 doc/classes/PackedVector3Array.xml:80
+#: doc/classes/Array.xml:320 doc/classes/PackedByteArray.xml:134
+#: doc/classes/PackedColorArray.xml:89 doc/classes/PackedFloat32Array.xml:90
+#: doc/classes/PackedFloat64Array.xml:90 doc/classes/PackedInt32Array.xml:90
+#: doc/classes/PackedInt64Array.xml:90 doc/classes/PackedStringArray.xml:89
+#: doc/classes/PackedVector2Array.xml:89 doc/classes/PackedVector3Array.xml:89
msgid "Removes an element from the array by index."
msgstr ""
@@ -6703,7 +6738,7 @@ msgid ""
msgstr ""
#: doc/classes/ArrayMesh.xml:235 doc/classes/Mesh.xml:210
-#: doc/classes/RenderingServer.xml:3115
+#: doc/classes/RenderingServer.xml:3111
msgid "Represents the size of the [enum ArrayType] enum."
msgstr ""
@@ -8520,7 +8555,9 @@ msgid ""
msgstr ""
#: doc/classes/BaseButton.xml:16
-msgid "Called when the button is pressed."
+msgid ""
+"Called when the button is pressed. If you need to know the button's pressed "
+"state (and [member toggle_mode] is active), use [method _toggled] instead."
msgstr ""
#: doc/classes/BaseButton.xml:25
@@ -8614,43 +8651,45 @@ msgstr ""
msgid ""
"Emitted when the button is toggled or pressed. This is on [signal "
"button_down] if [member action_mode] is [constant ACTION_MODE_BUTTON_PRESS] "
-"and on [signal button_up] otherwise."
+"and on [signal button_up] otherwise.\n"
+"If you need to know the button's pressed state (and [member toggle_mode] is "
+"active), use [signal toggled] instead."
msgstr ""
-#: doc/classes/BaseButton.xml:98
+#: doc/classes/BaseButton.xml:99
msgid ""
"Emitted when the button was just toggled between pressed and normal states "
"(only if [member toggle_mode] is active). The new state is contained in the "
"[code]button_pressed[/code] argument."
msgstr ""
-#: doc/classes/BaseButton.xml:104
+#: doc/classes/BaseButton.xml:105
msgid ""
"The normal state (i.e. not pressed, not hovered, not toggled and enabled) of "
"buttons."
msgstr ""
-#: doc/classes/BaseButton.xml:107
+#: doc/classes/BaseButton.xml:108
msgid "The state of buttons are pressed."
msgstr ""
-#: doc/classes/BaseButton.xml:110
+#: doc/classes/BaseButton.xml:111
msgid "The state of buttons are hovered."
msgstr ""
-#: doc/classes/BaseButton.xml:113
+#: doc/classes/BaseButton.xml:114
msgid "The state of buttons are disabled."
msgstr ""
-#: doc/classes/BaseButton.xml:116
+#: doc/classes/BaseButton.xml:117
msgid "The state of buttons are both hovered and pressed."
msgstr ""
-#: doc/classes/BaseButton.xml:119
+#: doc/classes/BaseButton.xml:120
msgid "Require just a press to consider the button clicked."
msgstr ""
-#: doc/classes/BaseButton.xml:122
+#: doc/classes/BaseButton.xml:123
msgid ""
"Require a press and a subsequent release before considering the button "
"clicked."
@@ -9343,22 +9382,22 @@ msgstr ""
msgid "Represents the size of the [enum TextureParam] enum."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:451 doc/classes/RenderingServer.xml:3657
-#: doc/classes/Viewport.xml:390
+#: doc/classes/BaseMaterial3D.xml:451 doc/classes/RenderingServer.xml:3668
+#: doc/classes/Viewport.xml:393
msgid ""
"The texture filter reads from the nearest pixel only. The simplest and "
"fastest method of filtering, but the texture will look pixelized."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:454 doc/classes/RenderingServer.xml:3660
-#: doc/classes/Viewport.xml:393
+#: doc/classes/BaseMaterial3D.xml:454 doc/classes/RenderingServer.xml:3671
+#: doc/classes/Viewport.xml:396
msgid ""
"The texture filter blends between the nearest 4 pixels. Use this when you "
"want to avoid a pixelated style, but do not want mipmaps."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:457 doc/classes/RenderingServer.xml:3663
-#: doc/classes/Viewport.xml:396
+#: doc/classes/BaseMaterial3D.xml:457 doc/classes/RenderingServer.xml:3674
+#: doc/classes/Viewport.xml:399
msgid ""
"The texture filter reads from the nearest pixel in the nearest mipmap. The "
"fastest way to read from textures with mipmaps."
@@ -9371,14 +9410,14 @@ msgid ""
"smooth out pixels that are far from the camera."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:463 doc/classes/RenderingServer.xml:3669
+#: doc/classes/BaseMaterial3D.xml:463 doc/classes/RenderingServer.xml:3680
msgid ""
"The texture filter reads from the nearest pixel, but selects a mipmap based "
"on the angle between the surface and the camera view. This reduces artifacts "
"on surfaces that are almost in line with the camera."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:466 doc/classes/RenderingServer.xml:3672
+#: doc/classes/BaseMaterial3D.xml:466 doc/classes/RenderingServer.xml:3683
msgid ""
"The texture filter blends between the nearest 4 pixels and selects a mipmap "
"based on the angle between the surface and the camera view. This reduces "
@@ -9387,7 +9426,7 @@ msgid ""
"texturing."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:469 doc/classes/CanvasItem.xml:685
+#: doc/classes/BaseMaterial3D.xml:469 doc/classes/CanvasItem.xml:695
msgid "Represents the size of the [enum TextureFilter] enum."
msgstr ""
@@ -9610,8 +9649,8 @@ msgstr ""
msgid "Enables the shadow to opacity feature."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:622 doc/classes/RenderingServer.xml:3684
-#: doc/classes/Viewport.xml:408
+#: doc/classes/BaseMaterial3D.xml:622 doc/classes/RenderingServer.xml:3695
+#: doc/classes/Viewport.xml:411
msgid ""
"Enables the texture to repeat when UV coordinates are outside the 0-1 range. "
"If using one of the linear filtering modes, this can result in artifacts at "
@@ -9752,167 +9791,196 @@ msgstr ""
#: doc/classes/Basis.xml:7
msgid ""
-"3×3 matrix used for 3D rotation and scale. Contains 3 vector fields X, Y and "
-"Z as its columns, which can be interpreted as the local basis vectors of a "
-"transformation. Can also be accessed as array of 3D vectors. These vectors "
-"are orthogonal to each other, but are not necessarily normalized (due to "
-"scaling). Almost always used as an orthogonal basis for a [Transform].\n"
-"For such use, it is composed of a scaling and a rotation matrix, in that "
-"order (M = R.S)."
+"3×3 matrix used for 3D rotation and scale. Almost always used as an "
+"orthogonal basis for a Transform.\n"
+"Contains 3 vector fields X, Y and Z as its columns, which are typically "
+"interpreted as the local basis vectors of a transformation. For such use, it "
+"is composed of a scaling and a rotation matrix, in that order (M = R.S).\n"
+"Can also be accessed as array of 3D vectors. These vectors are normally "
+"orthogonal to each other, but are not necessarily normalized (due to "
+"scaling).\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
msgstr ""
-#: doc/classes/Basis.xml:11 doc/classes/Transform.xml:11
+#: doc/classes/Basis.xml:13 doc/classes/Transform.xml:12
+#: doc/classes/Transform2D.xml:11
msgid ""
-"https://docs.godotengine.org/en/latest/tutorials/3d/using_transforms.html"
+"https://docs.godotengine.org/en/latest/tutorials/math/"
+"matrices_and_transforms.html"
msgstr ""
-#: doc/classes/Basis.xml:20
-msgid "Create a rotation matrix from the given quaternion."
+#: doc/classes/Basis.xml:14 doc/classes/Transform.xml:13
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/3d/using_transforms.html"
msgstr ""
-#: doc/classes/Basis.xml:29
+#: doc/classes/Basis.xml:23
+#, fuzzy
+msgid "Constructs a pure rotation basis matrix from the given quaternion."
+msgstr "Construit une nouvelle chaîne de caractères à partir du [Quat] donné."
+
+#: doc/classes/Basis.xml:32
msgid ""
-"Create a rotation matrix (in the YXZ convention: first Z, then X, and Y "
-"last) from the specified Euler angles, given in the vector format as (X "
-"angle, Y angle, Z angle)."
+"Constructs a pure rotation basis matrix from the given Euler angles (in the "
+"YXZ convention: when *composing*, first Y, then X, and Z last), given in the "
+"vector format as (X angle, Y angle, Z angle).\n"
+"Consider using the [Quat] constructor instead, which uses a quaternion "
+"instead of Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:40
+#: doc/classes/Basis.xml:44
msgid ""
-"Create a rotation matrix which rotates around the given axis by the "
-"specified angle, in radians. The axis must be a normalized vector."
+"Constructs a pure rotation basis matrix, rotated around the given "
+"[code]axis[/code] by [code]phi[/code], in radians. The axis must be a "
+"normalized vector."
msgstr ""
-#: doc/classes/Basis.xml:53
-msgid "Create a matrix from 3 axis vectors."
+#: doc/classes/Basis.xml:57
+msgid "Constructs a basis matrix from 3 axis vectors (matrix columns)."
msgstr ""
-#: doc/classes/Basis.xml:60
-msgid "Returns the determinant of the matrix."
+#: doc/classes/Basis.xml:64
+msgid ""
+"Returns the determinant of the basis matrix. If the basis is uniformly "
+"scaled, its determinant is the square of the scale.\n"
+"A negative determinant means the basis has a negative scale. A zero "
+"determinant means the basis isn't invertible, and is usually considered "
+"invalid."
msgstr ""
-#: doc/classes/Basis.xml:67
+#: doc/classes/Basis.xml:72
msgid ""
"Returns the basis's rotation in the form of Euler angles (in the YXZ "
-"convention: first Z, then X, and Y last). The returned vector contains the "
-"rotation angles in the format (X angle, Y angle, Z angle). See [method "
-"get_rotation_quat] if you need a quaternion instead."
+"convention: when decomposing, first Z, then X, and Y last). The returned "
+"vector contains the rotation angles in the format (X angle, Y angle, Z "
+"angle).\n"
+"Consider using the [method get_rotation_quat] method instead, which returns "
+"a [Quat] quaternion instead of Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:74
+#: doc/classes/Basis.xml:80
msgid ""
"This function considers a discretization of rotations into 24 points on unit "
"sphere, lying along the vectors (x,y,z) with each component being either -1, "
"0, or 1, and returns the index of the point best representing the "
-"orientation of the object. It is mainly used by the grid map editor. For "
+"orientation of the object. It is mainly used by the [GridMap] editor. For "
"further details, refer to the Godot source code."
msgstr ""
-#: doc/classes/Basis.xml:81
+#: doc/classes/Basis.xml:87
msgid ""
"Returns the basis's rotation in the form of a quaternion. See [method "
"get_euler] if you need Euler angles, but keep in mind quaternions should "
"generally be preferred to Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:88
+#: doc/classes/Basis.xml:94
msgid ""
"Assuming that the matrix is the combination of a rotation and scaling, "
"return the absolute value of scaling factors along each axis."
msgstr ""
-#: doc/classes/Basis.xml:95 doc/classes/Transform2D.xml:49
+#: doc/classes/Basis.xml:101
msgid "Returns the inverse of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:106
+#: doc/classes/Basis.xml:112
msgid ""
"Returns [code]true[/code] if this basis and [code]b[/code] are approximately "
"equal, by calling [code]is_equal_approx[/code] on each component."
msgstr ""
-#: doc/classes/Basis.xml:113
+#: doc/classes/Basis.xml:119
msgid ""
"Returns the orthonormalized version of the matrix (useful to call from time "
"to time to avoid rounding error for orthogonal matrices). This performs a "
"Gram-Schmidt orthonormalization on the basis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:124
+#: doc/classes/Basis.xml:130
msgid ""
"Introduce an additional rotation around the given axis by phi (radians). The "
"axis must be a normalized vector."
msgstr ""
-#: doc/classes/Basis.xml:133
+#: doc/classes/Basis.xml:139
msgid ""
"Introduce an additional scaling specified by the given 3D scaling factor."
msgstr ""
-#: doc/classes/Basis.xml:144
+#: doc/classes/Basis.xml:150
msgid ""
"Assuming that the matrix is a proper rotation matrix, slerp performs a "
"spherical-linear interpolation with another rotation matrix."
msgstr ""
-#: doc/classes/Basis.xml:153
+#: doc/classes/Basis.xml:159
msgid "Transposed dot product with the X axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:162
+#: doc/classes/Basis.xml:168
msgid "Transposed dot product with the Y axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:171
+#: doc/classes/Basis.xml:177
msgid "Transposed dot product with the Z axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:178
+#: doc/classes/Basis.xml:184
msgid "Returns the transposed version of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:187
+#: doc/classes/Basis.xml:193
msgid "Returns a vector transformed (multiplied) by the matrix."
msgstr ""
-#: doc/classes/Basis.xml:196
+#: doc/classes/Basis.xml:202
msgid ""
-"Returns a vector transformed (multiplied) by the transposed matrix.\n"
+"Returns a vector transformed (multiplied) by the transposed basis matrix.\n"
"[b]Note:[/b] This results in a multiplication by the inverse of the matrix "
"only if it represents a rotation-reflection."
msgstr ""
-#: doc/classes/Basis.xml:203
-msgid "The basis matrix's X vector."
+#: doc/classes/Basis.xml:209 doc/classes/Transform2D.xml:181
+msgid ""
+"The basis matrix's X vector (column 0). Equivalent to array index [code]0[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:206
-msgid "The basis matrix's Y vector."
+#: doc/classes/Basis.xml:212 doc/classes/Transform2D.xml:184
+msgid ""
+"The basis matrix's Y vector (column 1). Equivalent to array index [code]1[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:209
-msgid "The basis matrix's Z vector."
+#: doc/classes/Basis.xml:215
+msgid ""
+"The basis matrix's Z vector (column 2). Equivalent to array index [code]2[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:214
+#: doc/classes/Basis.xml:220
msgid ""
-"The identity basis. This is identical to calling [code]Basis()[/code] "
-"without any parameters. This constant can be used to make your code clearer."
+"The identity basis, with no rotation or scaling applied.\n"
+"This is identical to calling [code]Basis()[/code] without any parameters. "
+"This constant can be used to make your code clearer, and for consistency "
+"with C#."
msgstr ""
-#: doc/classes/Basis.xml:217
+#: doc/classes/Basis.xml:224
msgid ""
"The basis that will flip something along the X axis when used in a "
"transformation."
msgstr ""
-#: doc/classes/Basis.xml:220
+#: doc/classes/Basis.xml:227
msgid ""
"The basis that will flip something along the Y axis when used in a "
"transformation."
msgstr ""
-#: doc/classes/Basis.xml:223
+#: doc/classes/Basis.xml:230
msgid ""
"The basis that will flip something along the Z axis when used in a "
"transformation."
@@ -10225,97 +10293,111 @@ msgstr ""
#: doc/classes/Button.xml:7
msgid ""
"Button is the standard themed button. It can contain text and an icon, and "
-"will display them according to the current [Theme]."
+"will display them according to the current [Theme].\n"
+"[b]Example of creating a button and assigning an action when pressed by code:"
+"[/b]\n"
+"[codeblock]\n"
+"func _ready():\n"
+" var button = Button.new()\n"
+" button.text = \"Click me\"\n"
+" button.connect(\"pressed\", self, \"_button_pressed\")\n"
+" add_child(button)\n"
+"\n"
+"func _button_pressed():\n"
+" print(\"Hello world!\")\n"
+"[/codeblock]\n"
+"Buttons (like all Control nodes) can also be created in the editor, but some "
+"situations may require creating them from code."
msgstr ""
-#: doc/classes/Button.xml:15
+#: doc/classes/Button.xml:27
msgid ""
"Text alignment policy for the button's text, use one of the [enum TextAlign] "
"constants."
msgstr ""
-#: doc/classes/Button.xml:18
+#: doc/classes/Button.xml:30
msgid ""
"When this property is enabled, text that is too large to fit the button is "
"clipped, when disabled the Button will always be wide enough to hold the "
"text."
msgstr ""
-#: doc/classes/Button.xml:21
+#: doc/classes/Button.xml:33
msgid ""
"When enabled, the button's icon will expand/shrink to fit the button's size "
"while keeping its aspect."
msgstr ""
-#: doc/classes/Button.xml:24
+#: doc/classes/Button.xml:36
msgid "Flat buttons don't display decoration."
msgstr ""
-#: doc/classes/Button.xml:27
+#: doc/classes/Button.xml:39
msgid ""
"Button's icon, if text is present the icon will be placed before the text."
msgstr ""
-#: doc/classes/Button.xml:30 doc/classes/LinkButton.xml:18
+#: doc/classes/Button.xml:42 doc/classes/LinkButton.xml:18
msgid "The button's text that will be displayed inside the button's area."
msgstr ""
-#: doc/classes/Button.xml:35
+#: doc/classes/Button.xml:47
msgid "Align the text to the left."
msgstr ""
-#: doc/classes/Button.xml:38
+#: doc/classes/Button.xml:50
msgid "Align the text to the center."
msgstr ""
-#: doc/classes/Button.xml:41
+#: doc/classes/Button.xml:53
msgid "Align the text to the right."
msgstr ""
-#: doc/classes/Button.xml:46
+#: doc/classes/Button.xml:58
msgid "[StyleBox] used when the [Button] is disabled."
msgstr ""
-#: doc/classes/Button.xml:49
+#: doc/classes/Button.xml:61
msgid ""
"[StyleBox] used when the [Button] is focused. It is displayed over the "
"current [StyleBox], so using [StyleBoxEmpty] will just disable the focus "
"visual effect."
msgstr ""
-#: doc/classes/Button.xml:52
+#: doc/classes/Button.xml:64
msgid "[Font] of the [Button]'s text."
msgstr ""
-#: doc/classes/Button.xml:55
+#: doc/classes/Button.xml:67
msgid "Default text [Color] of the [Button]."
msgstr ""
-#: doc/classes/Button.xml:58
+#: doc/classes/Button.xml:70
msgid "Text [Color] used when the [Button] is disabled."
msgstr ""
-#: doc/classes/Button.xml:61
+#: doc/classes/Button.xml:73
msgid "Text [Color] used when the [Button] is being hovered."
msgstr ""
-#: doc/classes/Button.xml:64
+#: doc/classes/Button.xml:76
msgid "Text [Color] used when the [Button] is being pressed."
msgstr ""
-#: doc/classes/Button.xml:67
+#: doc/classes/Button.xml:79
msgid "[StyleBox] used when the [Button] is being hovered."
msgstr ""
-#: doc/classes/Button.xml:70
+#: doc/classes/Button.xml:82
msgid "The horizontal space between [Button]'s icon and text."
msgstr ""
-#: doc/classes/Button.xml:73
+#: doc/classes/Button.xml:85
msgid "Default [StyleBox] for the [Button]."
msgstr ""
-#: doc/classes/Button.xml:76
+#: doc/classes/Button.xml:88
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr ""
@@ -10967,7 +11049,7 @@ msgstr ""
#: doc/classes/CameraEffects.xml:37
msgid ""
"The exposure override value to use. Higher values will result in a brighter "
-"scene. Only effective if [member override_exposure_enable] is [code]true[/"
+"scene. Only effective if [member override_exposure_enabled] is [code]true[/"
"code]."
msgstr ""
@@ -11221,265 +11303,282 @@ msgid ""
msgstr ""
#: doc/classes/CanvasItem.xml:319
-msgid "Draws a string using a custom font."
+msgid ""
+"Draws [code]text[/code] using the specified [code]font[/code] at the "
+"[code]position[/code] (top-left corner). The text will have its color "
+"multiplied by [code]modulate[/code]. If [code]clip_w[/code] is greater than "
+"or equal to 0, the text will be clipped if it exceeds the specified width.\n"
+"[b]Example using the default project font:[/b]\n"
+"[codeblock]\n"
+"# If using this method in a script that redraws constantly, move the\n"
+"# `default_font` declaration to a member variable assigned in `_ready()`\n"
+"# so the Control is only created once.\n"
+"var default_font = Control.new().get_font(\"font\")\n"
+"draw_string(default_font, Vector2(64, 64), \"Hello world\")\n"
+"[/codeblock]\n"
+"See also [method Font.draw]."
msgstr ""
-#: doc/classes/CanvasItem.xml:330
+#: doc/classes/CanvasItem.xml:339
msgid "Draws a styled rectangle."
msgstr ""
-#: doc/classes/CanvasItem.xml:353
+#: doc/classes/CanvasItem.xml:362
msgid "Draws a texture at a given position."
msgstr ""
-#: doc/classes/CanvasItem.xml:380
+#: doc/classes/CanvasItem.xml:389
msgid ""
"Draws a textured rectangle at a given position, optionally modulated by a "
"color. If [code]transpose[/code] is [code]true[/code], the texture will have "
"its X and Y coordinates swapped."
msgstr ""
-#: doc/classes/CanvasItem.xml:409
+#: doc/classes/CanvasItem.xml:418
msgid ""
"Draws a textured rectangle region at a given position, optionally modulated "
"by a color. If [code]transpose[/code] is [code]true[/code], the texture will "
"have its X and Y coordinates swapped."
msgstr ""
-#: doc/classes/CanvasItem.xml:416 doc/classes/Node3D.xml:19
+#: doc/classes/CanvasItem.xml:425 doc/classes/Node3D.xml:19
msgid ""
"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."
msgstr ""
-#: doc/classes/CanvasItem.xml:423
+#: doc/classes/CanvasItem.xml:432
msgid "Returns the [RID] of the [World2D] canvas where this item is in."
msgstr ""
-#: doc/classes/CanvasItem.xml:430
+#: doc/classes/CanvasItem.xml:439
msgid "Returns the canvas item RID used by [RenderingServer] for this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:437
+#: doc/classes/CanvasItem.xml:446
msgid "Returns the transform matrix of this item's canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:444
+#: doc/classes/CanvasItem.xml:453
msgid "Returns the global position of the mouse."
msgstr ""
-#: doc/classes/CanvasItem.xml:451
+#: doc/classes/CanvasItem.xml:460
msgid "Returns the global transform matrix of this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:458
+#: doc/classes/CanvasItem.xml:467
msgid ""
"Returns the global transform matrix of this item in relation to the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:465
+#: doc/classes/CanvasItem.xml:474
msgid "Returns the mouse position relative to this item's position."
msgstr ""
-#: doc/classes/CanvasItem.xml:472
+#: doc/classes/CanvasItem.xml:481
msgid "Returns the transform matrix of this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:479
+#: doc/classes/CanvasItem.xml:488
msgid "Returns the viewport's boundaries as a [Rect2]."
msgstr ""
-#: doc/classes/CanvasItem.xml:486
+#: doc/classes/CanvasItem.xml:495
msgid "Returns this item's transform in relation to the viewport."
msgstr ""
-#: doc/classes/CanvasItem.xml:493
+#: doc/classes/CanvasItem.xml:502
msgid "Returns the [World2D] where this item is in."
msgstr ""
-#: doc/classes/CanvasItem.xml:500
+#: doc/classes/CanvasItem.xml:509
msgid "Hide the [CanvasItem] if it's currently visible."
msgstr ""
-#: doc/classes/CanvasItem.xml:507
+#: doc/classes/CanvasItem.xml:516
msgid ""
"Returns [code]true[/code] if local transform notifications are communicated "
"to children."
msgstr ""
-#: doc/classes/CanvasItem.xml:514
+#: doc/classes/CanvasItem.xml:523
msgid ""
"Returns [code]true[/code] if the node is set as top-level. See [method "
"set_as_toplevel]."
msgstr ""
-#: doc/classes/CanvasItem.xml:521
+#: doc/classes/CanvasItem.xml:530
msgid ""
"Returns [code]true[/code] if global transform notifications are communicated "
"to children."
msgstr ""
-#: doc/classes/CanvasItem.xml:528
+#: doc/classes/CanvasItem.xml:537 doc/classes/Node3D.xml:104
msgid ""
"Returns [code]true[/code] if the node is present in the [SceneTree], its "
-"[member visible] property is [code]true[/code] and its inherited visibility "
-"is also [code]true[/code]."
+"[member visible] property is [code]true[/code] and all its antecedents are "
+"also visible. If any antecedent is hidden, this node will not be visible in "
+"the scene tree."
msgstr ""
-#: doc/classes/CanvasItem.xml:537
+#: doc/classes/CanvasItem.xml:546
msgid "Assigns [code]screen_point[/code] as this node's new local transform."
msgstr ""
-#: doc/classes/CanvasItem.xml:546
+#: doc/classes/CanvasItem.xml:555
msgid ""
"Transformations issued by [code]event[/code]'s inputs are applied in local "
"space instead of global space."
msgstr ""
-#: doc/classes/CanvasItem.xml:555
+#: doc/classes/CanvasItem.xml:564
msgid ""
"If [code]enable[/code] is [code]true[/code], the node won't inherit its "
"transform from parent canvas items."
msgstr ""
-#: doc/classes/CanvasItem.xml:564
+#: doc/classes/CanvasItem.xml:573
msgid ""
"If [code]enable[/code] is [code]true[/code], children will be updated with "
"local transform data."
msgstr ""
-#: doc/classes/CanvasItem.xml:573
+#: doc/classes/CanvasItem.xml:582
msgid ""
"If [code]enable[/code] is [code]true[/code], children will be updated with "
"global transform data."
msgstr ""
-#: doc/classes/CanvasItem.xml:580
+#: doc/classes/CanvasItem.xml:589
msgid ""
"Show the [CanvasItem] if it's currently hidden. For controls that inherit "
"[Popup], the correct way to make them visible is to call one of the multiple "
"[code]popup*()[/code] functions instead."
msgstr ""
-#: doc/classes/CanvasItem.xml:587
+#: doc/classes/CanvasItem.xml:596
msgid ""
"Queue the [CanvasItem] for update. [constant NOTIFICATION_DRAW] will be "
"called on idle time to request redraw."
msgstr ""
-#: doc/classes/CanvasItem.xml:593
+#: doc/classes/CanvasItem.xml:602
msgid ""
"The rendering layers in which this [CanvasItem] responds to [Light2D] nodes."
msgstr ""
-#: doc/classes/CanvasItem.xml:596
+#: doc/classes/CanvasItem.xml:605
msgid "The material applied to textures on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:599
+#: doc/classes/CanvasItem.xml:608
msgid "The color applied to textures on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:602
+#: doc/classes/CanvasItem.xml:611
msgid ""
"The color applied to textures on this [CanvasItem]. This is not inherited by "
"children [CanvasItem]s."
msgstr ""
-#: doc/classes/CanvasItem.xml:605
+#: doc/classes/CanvasItem.xml:614
msgid "If [code]true[/code], the object draws behind its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:608
+#: doc/classes/CanvasItem.xml:617
msgid "If [code]true[/code], the object draws on top of its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:611
+#: doc/classes/CanvasItem.xml:620
msgid "The texture filtering mode to use on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:614
+#: doc/classes/CanvasItem.xml:623
msgid "The texture repeating mode to use on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:617
+#: doc/classes/CanvasItem.xml:626
msgid ""
"If [code]true[/code], the parent [CanvasItem]'s [member material] property "
"is used as this one's material."
msgstr ""
-#: doc/classes/CanvasItem.xml:620
+#: doc/classes/CanvasItem.xml:629
msgid ""
-"If [code]true[/code], this [CanvasItem] is drawn. For controls that inherit "
-"[Popup], the correct way to make them visible is to call one of the multiple "
-"[code]popup*()[/code] functions instead."
+"If [code]true[/code], this [CanvasItem] is drawn. The node is only visible "
+"if all of its antecedents are visible as well (in other words, [method "
+"is_visible_in_tree] must return [code]true[/code]).\n"
+"[b]Note:[/b] For controls that inherit [Popup], the correct way to make them "
+"visible is to call one of the multiple [code]popup*()[/code] functions "
+"instead."
msgstr ""
-#: doc/classes/CanvasItem.xml:626
+#: doc/classes/CanvasItem.xml:636
msgid ""
"Emitted when the [CanvasItem] must redraw. This can only be connected "
"realtime, as deferred will not allow drawing."
msgstr ""
-#: doc/classes/CanvasItem.xml:631
+#: doc/classes/CanvasItem.xml:641
msgid "Emitted when becoming hidden."
msgstr ""
-#: doc/classes/CanvasItem.xml:636
+#: doc/classes/CanvasItem.xml:646
msgid "Emitted when the item rect has changed."
msgstr ""
-#: doc/classes/CanvasItem.xml:641
+#: doc/classes/CanvasItem.xml:651
msgid "Emitted when the visibility (hidden/visible) changes."
msgstr ""
-#: doc/classes/CanvasItem.xml:647
+#: doc/classes/CanvasItem.xml:657
msgid ""
"The [CanvasItem]'s transform has changed. This notification is only received "
"if enabled by [method set_notify_transform] or [method "
"set_notify_local_transform]."
msgstr ""
-#: doc/classes/CanvasItem.xml:650
+#: doc/classes/CanvasItem.xml:660
msgid "The [CanvasItem] is requested to draw."
msgstr ""
-#: doc/classes/CanvasItem.xml:653
+#: doc/classes/CanvasItem.xml:663
msgid "The [CanvasItem]'s visibility has changed."
msgstr ""
-#: doc/classes/CanvasItem.xml:656
+#: doc/classes/CanvasItem.xml:666
msgid "The [CanvasItem] has entered the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:659
+#: doc/classes/CanvasItem.xml:669
msgid "The [CanvasItem] has exited the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:662 doc/classes/CanvasItem.xml:688
+#: doc/classes/CanvasItem.xml:672 doc/classes/CanvasItem.xml:698
msgid "The [CanvasItem] will inherit the filter from its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:665
+#: doc/classes/CanvasItem.xml:675
msgid ""
"The texture filter reads from the nearest pixel only. The simplest and "
"fastest method of filtering. Useful for pixel art."
msgstr ""
-#: doc/classes/CanvasItem.xml:668
+#: doc/classes/CanvasItem.xml:678
msgid ""
"The texture filter blends between the nearest four pixels. Use this for most "
"cases where you want to avoid a pixelated style."
msgstr ""
-#: doc/classes/CanvasItem.xml:671
+#: doc/classes/CanvasItem.xml:681
msgid ""
"The texture filter reads from the nearest pixel in the nearest mipmap. This "
"is the fastest way to read from textures with mipmaps."
msgstr ""
-#: doc/classes/CanvasItem.xml:674
+#: doc/classes/CanvasItem.xml:684
msgid ""
"The texture filter blends between the nearest 4 pixels and between the "
"nearest 2 mipmaps. Use this for non-pixel art textures that may be viewed at "
@@ -11487,7 +11586,7 @@ msgid ""
"smooth out pixels that are smaller than on-screen pixels."
msgstr ""
-#: doc/classes/CanvasItem.xml:677
+#: doc/classes/CanvasItem.xml:687
msgid ""
"The texture filter reads from the nearest pixel, but selects a mipmap based "
"on the angle between the surface and the camera view. This reduces artifacts "
@@ -11496,7 +11595,7 @@ msgid ""
"TEXTURE_FILTER_NEAREST_WITH_MIPMAPS] is usually more appropriate."
msgstr ""
-#: doc/classes/CanvasItem.xml:681
+#: doc/classes/CanvasItem.xml:691
msgid ""
"The texture filter blends between the nearest 4 pixels and selects a mipmap "
"based on the angle between the surface and the camera view. This reduces "
@@ -11507,21 +11606,21 @@ msgid ""
"TEXTURE_FILTER_LINEAR_WITH_MIPMAPS] is usually more appropriate."
msgstr ""
-#: doc/classes/CanvasItem.xml:691
+#: doc/classes/CanvasItem.xml:701
msgid "Texture will not repeat."
msgstr ""
-#: doc/classes/CanvasItem.xml:694
+#: doc/classes/CanvasItem.xml:704
msgid "Texture will repeat normally."
msgstr ""
-#: doc/classes/CanvasItem.xml:697
+#: doc/classes/CanvasItem.xml:707
msgid ""
"Texture will repeat in a 2x2 tiled mode, where elements at even positions "
"are mirrored."
msgstr ""
-#: doc/classes/CanvasItem.xml:700
+#: doc/classes/CanvasItem.xml:710
msgid "Represents the size of the [enum TextureRepeat] enum."
msgstr ""
@@ -12594,16 +12693,15 @@ msgid ""
msgstr ""
#: doc/classes/Color.xml:4
-msgid "Color in RGBA format with some support for ARGB format."
+msgid "Color in RGBA format using floats on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:7
msgid ""
-"A color is represented by red, green, and blue [code](r, g, b)[/code] "
-"components. Additionally, [code]a[/code] represents the alpha component, "
-"often used for transparency. Values are in floating-point and usually range "
-"from 0 to 1. Some properties (such as [member CanvasItem.modulate]) may "
-"accept values greater than 1.\n"
+"A color represented by red, green, blue, and alpha (RGBA) components. The "
+"alpha component is often used for transparency. Values are in floating-point "
+"and usually range from 0 to 1. Some properties (such as CanvasItem.modulate) "
+"may accept values greater than 1 (overbright or HDR colors).\n"
"You can also create a color from standardized color names by using [method "
"@GDScript.ColorN] or directly using the color constants defined here. The "
"standardized color set is based on the [url=https://en.wikipedia.org/wiki/"
@@ -12817,47 +12915,48 @@ msgid ""
msgstr ""
#: doc/classes/Color.xml:280
-msgid "Alpha value (range 0 to 1)."
+msgid ""
+"The color's alpha (transparency) component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:283
-msgid "Alpha value (range 0 to 255)."
+msgid "Wrapper for [member a] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:286
-msgid "Blue value (range 0 to 1)."
+msgid "The color's blue component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:289
-msgid "Blue value (range 0 to 255)."
+msgid "Wrapper for [member b] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:292
-msgid "Green value (range 0 to 1)."
+msgid "The color's green component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:295
-msgid "Green value (range 0 to 255)."
+msgid "Wrapper for [member g] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:298
-msgid "HSV hue value (range 0 to 1)."
+msgid "The HSV hue of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:301
-msgid "Red value (range 0 to 1)."
+msgid "The color's red component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:304
-msgid "Red value (range 0 to 255)."
+msgid "Wrapper for [member r] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:307
-msgid "HSV saturation value (range 0 to 1)."
+msgid "The HSV saturation of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:310
-msgid "HSV value (range 0 to 1)."
+msgid "The HSV value (brightness) of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:315
@@ -14777,23 +14876,35 @@ msgstr ""
#: doc/classes/Control.xml:859
msgid ""
"The node's scale, relative to its [member rect_size]. Change this property "
-"to scale the node around its [member rect_pivot_offset]."
-msgstr ""
-
-#: doc/classes/Control.xml:862
+"to scale the node around its [member rect_pivot_offset]. The Control's "
+"[member hint_tooltip] will also scale according to this value.\n"
+"[b]Note:[/b] This property is mainly intended to be used for animation "
+"purposes. Text inside the Control will look pixelated or blurry when the "
+"Control is scaled. To support multiple resolutions in your project, use an "
+"appropriate viewport stretch mode as described in the [url=https://docs."
+"godotengine.org/en/latest/tutorials/viewports/multiple_resolutions."
+"html]documentation[/url] instead of scaling Controls individually.\n"
+"[b]Note:[/b] If the Control node is a child of a [Container] node, the scale "
+"will be reset to [code]Vector2(1, 1)[/code] when the scene is instanced. To "
+"set the Control's scale when it's instanced, wait for one frame using "
+"[code]yield(get_tree(), \"idle_frame\")[/code] then set its [member "
+"rect_scale] property."
+msgstr ""
+
+#: doc/classes/Control.xml:864
msgid ""
"The size of the node's bounding rectangle, in pixels. [Container] nodes "
"update this property automatically."
msgstr ""
-#: doc/classes/Control.xml:865
+#: doc/classes/Control.xml:867
msgid ""
"Tells the parent [Container] nodes how they should resize and place the node "
"on the X axis. Use one of the [enum SizeFlags] constants to change the "
"flags. See the constants to learn what each does."
msgstr ""
-#: doc/classes/Control.xml:868
+#: doc/classes/Control.xml:870
msgid ""
"If the node and at least one of its neighbours uses the [constant "
"SIZE_EXPAND] size flag, the parent [Container] will let it take more or less "
@@ -14802,181 +14913,181 @@ msgid ""
"space."
msgstr ""
-#: doc/classes/Control.xml:871
+#: doc/classes/Control.xml:873
msgid ""
"Tells the parent [Container] nodes how they should resize and place the node "
"on the Y axis. Use one of the [enum SizeFlags] constants to change the "
"flags. See the constants to learn what each does."
msgstr ""
-#: doc/classes/Control.xml:874
+#: doc/classes/Control.xml:876
msgid ""
"Changing this property replaces the current [Theme] resource this node and "
"all its [Control] children use."
msgstr ""
-#: doc/classes/Control.xml:880
+#: doc/classes/Control.xml:882
msgid "Emitted when the node gains keyboard focus."
msgstr ""
-#: doc/classes/Control.xml:885
+#: doc/classes/Control.xml:887
msgid "Emitted when the node loses keyboard focus."
msgstr ""
-#: doc/classes/Control.xml:892
+#: doc/classes/Control.xml:894
msgid "Emitted when the node receives an [InputEvent]."
msgstr ""
-#: doc/classes/Control.xml:897
+#: doc/classes/Control.xml:899
msgid "Emitted when the node's minimum size changes."
msgstr ""
-#: doc/classes/Control.xml:902
+#: doc/classes/Control.xml:904
msgid ""
"Emitted when the mouse enters the control's [code]Rect[/code] area, provided "
"its [member mouse_filter] lets the event reach it."
msgstr ""
-#: doc/classes/Control.xml:907
+#: doc/classes/Control.xml:909
msgid ""
"Emitted when the mouse leaves the control's [code]Rect[/code] area, provided "
"its [member mouse_filter] lets the event reach it."
msgstr ""
-#: doc/classes/Control.xml:912
+#: doc/classes/Control.xml:914
msgid "Emitted when the control changes size."
msgstr ""
-#: doc/classes/Control.xml:917
+#: doc/classes/Control.xml:919
msgid ""
"Emitted when one of the size flags changes. See [member "
"size_flags_horizontal] and [member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:927
+#: doc/classes/Control.xml:929
msgid "The node cannot grab focus. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:930
+#: doc/classes/Control.xml:932
msgid ""
"The node can only grab focus on mouse clicks. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:933
+#: doc/classes/Control.xml:935
msgid ""
"The node can grab focus on mouse click or using the arrows and the Tab keys "
"on the keyboard. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:936
+#: doc/classes/Control.xml:938
msgid ""
"Sent when the node changes size. Use [member rect_size] to get the new size."
msgstr ""
-#: doc/classes/Control.xml:939
+#: doc/classes/Control.xml:941
msgid "Sent when the mouse pointer enters the node."
msgstr ""
-#: doc/classes/Control.xml:942
+#: doc/classes/Control.xml:944
msgid "Sent when the mouse pointer exits the node."
msgstr ""
-#: doc/classes/Control.xml:945
+#: doc/classes/Control.xml:947
msgid "Sent when the node grabs focus."
msgstr ""
-#: doc/classes/Control.xml:948
+#: doc/classes/Control.xml:950
msgid "Sent when the node loses focus."
msgstr ""
-#: doc/classes/Control.xml:951
+#: doc/classes/Control.xml:953
msgid ""
"Sent when the node's [member theme] changes, right before Godot redraws the "
"control. Happens when you call one of the [code]add_theme_*_override[/code] "
"methods."
msgstr ""
-#: doc/classes/Control.xml:954
+#: doc/classes/Control.xml:956
msgid ""
"Sent when this node is inside a [ScrollContainer] which has begun being "
"scrolled."
msgstr ""
-#: doc/classes/Control.xml:957
+#: doc/classes/Control.xml:959
msgid ""
"Sent when this node is inside a [ScrollContainer] which has stopped being "
"scrolled."
msgstr ""
-#: doc/classes/Control.xml:960
+#: doc/classes/Control.xml:962
msgid ""
"Show the system's arrow mouse cursor when the user hovers the node. Use with "
"[member mouse_default_cursor_shape]."
msgstr ""
-#: doc/classes/Control.xml:963
+#: doc/classes/Control.xml:965
msgid ""
"Show the system's I-beam mouse cursor when the user hovers the node. The I-"
"beam pointer has a shape similar to \"I\". It tells the user they can "
"highlight or insert text."
msgstr ""
-#: doc/classes/Control.xml:966
+#: doc/classes/Control.xml:968
msgid ""
"Show the system's pointing hand mouse cursor when the user hovers the node."
msgstr ""
-#: doc/classes/Control.xml:969
+#: doc/classes/Control.xml:971
msgid "Show the system's cross mouse cursor when the user hovers the node."
msgstr ""
-#: doc/classes/Control.xml:972
+#: doc/classes/Control.xml:974
msgid ""
"Show the system's wait mouse cursor, often an hourglass, when the user "
"hovers the node."
msgstr ""
-#: doc/classes/Control.xml:975
+#: doc/classes/Control.xml:977
msgid ""
"Show the system's busy mouse cursor when the user hovers the node. Often an "
"hourglass."
msgstr ""
-#: doc/classes/Control.xml:978
+#: doc/classes/Control.xml:980
msgid ""
"Show the system's drag mouse cursor, often a closed fist or a cross symbol, "
"when the user hovers the node. It tells the user they're currently dragging "
"an item, like a node in the Scene dock."
msgstr ""
-#: doc/classes/Control.xml:981
+#: doc/classes/Control.xml:983
msgid ""
"Show the system's drop mouse cursor when the user hovers the node. It can be "
"an open hand. It tells the user they can drop an item they're currently "
"grabbing, like a node in the Scene dock."
msgstr ""
-#: doc/classes/Control.xml:984
+#: doc/classes/Control.xml:986
msgid ""
"Show the system's forbidden mouse cursor when the user hovers the node. "
"Often a crossed circle."
msgstr ""
-#: doc/classes/Control.xml:987
+#: doc/classes/Control.xml:989
msgid ""
"Show the system's vertical resize mouse cursor when the user hovers the "
"node. A double-headed vertical arrow. It tells the user they can resize the "
"window or the panel vertically."
msgstr ""
-#: doc/classes/Control.xml:990
+#: doc/classes/Control.xml:992
msgid ""
"Show the system's horizontal resize mouse cursor when the user hovers the "
"node. A double-headed horizontal arrow. It tells the user they can resize "
"the window or the panel horizontally."
msgstr ""
-#: doc/classes/Control.xml:993
+#: doc/classes/Control.xml:995
msgid ""
"Show the system's window resize mouse cursor when the user hovers the node. "
"The cursor is a double-headed arrow that goes from the bottom left to the "
@@ -14984,7 +15095,7 @@ msgid ""
"horizontally and vertically."
msgstr ""
-#: doc/classes/Control.xml:996
+#: doc/classes/Control.xml:998
msgid ""
"Show the system's window resize mouse cursor when the user hovers the node. "
"The cursor is a double-headed arrow that goes from the top left to the "
@@ -14992,93 +15103,93 @@ msgid ""
"they can resize the window or the panel both horizontally and vertically."
msgstr ""
-#: doc/classes/Control.xml:999
+#: doc/classes/Control.xml:1001
msgid ""
"Show the system's move mouse cursor when the user hovers the node. It shows "
"2 double-headed arrows at a 90 degree angle. It tells the user they can move "
"a UI element freely."
msgstr ""
-#: doc/classes/Control.xml:1002
+#: doc/classes/Control.xml:1004
msgid ""
"Show the system's vertical split mouse cursor when the user hovers the node. "
"On Windows, it's the same as [constant CURSOR_VSIZE]."
msgstr ""
-#: doc/classes/Control.xml:1005
+#: doc/classes/Control.xml:1007
msgid ""
"Show the system's horizontal split mouse cursor when the user hovers the "
"node. On Windows, it's the same as [constant CURSOR_HSIZE]."
msgstr ""
-#: doc/classes/Control.xml:1008
+#: doc/classes/Control.xml:1010
msgid ""
"Show the system's help mouse cursor when the user hovers the node, a "
"question mark."
msgstr ""
-#: doc/classes/Control.xml:1011
+#: doc/classes/Control.xml:1013
msgid ""
"Snap all 4 anchors to the top-left of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1014
+#: doc/classes/Control.xml:1016
msgid ""
"Snap all 4 anchors to the top-right of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1017
+#: doc/classes/Control.xml:1019
msgid ""
"Snap all 4 anchors to the bottom-left of the parent control's bounds. Use "
"with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1020
+#: doc/classes/Control.xml:1022
msgid ""
"Snap all 4 anchors to the bottom-right of the parent control's bounds. Use "
"with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1023
+#: doc/classes/Control.xml:1025
msgid ""
"Snap all 4 anchors to the center of the left edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1026
+#: doc/classes/Control.xml:1028
msgid ""
"Snap all 4 anchors to the center of the top edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1029
+#: doc/classes/Control.xml:1031
msgid ""
"Snap all 4 anchors to the center of the right edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1032
+#: doc/classes/Control.xml:1034
msgid ""
"Snap all 4 anchors to the center of the bottom edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1035
+#: doc/classes/Control.xml:1037
msgid ""
"Snap all 4 anchors to the center of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1038
+#: doc/classes/Control.xml:1040
msgid ""
"Snap all 4 anchors to the left edge of the parent control. The left margin "
"becomes relative to the left edge and the top margin relative to the top "
"left corner of the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1041
+#: doc/classes/Control.xml:1043
msgid ""
"Snap all 4 anchors to the top edge of the parent control. The left margin "
"becomes relative to the top left corner, the top margin relative to the top "
@@ -15086,14 +15197,14 @@ msgid ""
"parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1044
+#: doc/classes/Control.xml:1046
msgid ""
"Snap all 4 anchors to the right edge of the parent control. The right margin "
"becomes relative to the right edge and the top margin relative to the top "
"right corner of the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1047
+#: doc/classes/Control.xml:1049
msgid ""
"Snap all 4 anchors to the bottom edge of the parent control. The left margin "
"becomes relative to the bottom left corner, the bottom margin relative to "
@@ -15101,19 +15212,19 @@ msgid ""
"the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1050
+#: doc/classes/Control.xml:1052
msgid ""
"Snap all 4 anchors to a vertical line that cuts the parent control in half. "
"Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1053
+#: doc/classes/Control.xml:1055
msgid ""
"Snap all 4 anchors to a horizontal line that cuts the parent control in "
"half. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1056
+#: doc/classes/Control.xml:1058
msgid ""
"Snap all 4 anchors to the respective corners of the parent control. Set all "
"4 margins to 0 after you applied this preset and the [Control] will fit its "
@@ -15121,30 +15232,30 @@ msgid ""
"editor. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1059
+#: doc/classes/Control.xml:1061
msgid "The control will be resized to its minimum size."
msgstr ""
-#: doc/classes/Control.xml:1062
+#: doc/classes/Control.xml:1064
msgid "The control's width will not change."
msgstr ""
-#: doc/classes/Control.xml:1065
+#: doc/classes/Control.xml:1067
msgid "The control's height will not change."
msgstr ""
-#: doc/classes/Control.xml:1068
+#: doc/classes/Control.xml:1070
msgid "The control's size will not change."
msgstr ""
-#: doc/classes/Control.xml:1071
+#: doc/classes/Control.xml:1073
msgid ""
"Tells the parent [Container] to expand the bounds of this node to fill all "
"the available space without pushing any other node. Use with [member "
"size_flags_horizontal] and [member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1074
+#: doc/classes/Control.xml:1076
msgid ""
"Tells the parent [Container] to let this node take all the available space "
"on the axis you flag. If multiple neighboring nodes are set to expand, "
@@ -15153,13 +15264,13 @@ msgid ""
"[member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1077
+#: doc/classes/Control.xml:1079
msgid ""
"Sets the node's size flags to both fill and expand. See the 2 constants "
"above for more information."
msgstr ""
-#: doc/classes/Control.xml:1080
+#: doc/classes/Control.xml:1082
msgid ""
"Tells the parent [Container] to center the node in itself. It centers the "
"control based on its bounding box, so it doesn't work with the fill or "
@@ -15167,7 +15278,7 @@ msgid ""
"size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1083
+#: doc/classes/Control.xml:1085
msgid ""
"Tells the parent [Container] to align the node with its end, either the "
"bottom or the right edge. It doesn't work with the fill or expand size "
@@ -15175,7 +15286,7 @@ msgid ""
"size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1086
+#: doc/classes/Control.xml:1088
msgid ""
"The control will receive mouse button input events through [method "
"_gui_input] if clicked on. And the control will receive the [signal "
@@ -15184,7 +15295,7 @@ msgid ""
"other controls. This also results in blocking signals in other controls."
msgstr ""
-#: doc/classes/Control.xml:1089
+#: doc/classes/Control.xml:1091
msgid ""
"The control will receive mouse button input events through [method "
"_gui_input] if clicked on. And the control will receive the [signal "
@@ -15196,7 +15307,7 @@ msgid ""
"not be fired."
msgstr ""
-#: doc/classes/Control.xml:1092
+#: doc/classes/Control.xml:1094
msgid ""
"The control will not receive mouse button input events through [method "
"_gui_input]. The control will also not receive the [signal mouse_entered] "
@@ -15205,25 +15316,25 @@ msgid ""
"handled automatically."
msgstr ""
-#: doc/classes/Control.xml:1095
+#: doc/classes/Control.xml:1097
msgid ""
"The control will grow to the left or top to make up if its minimum size is "
"changed to be greater than its current size on the respective axis."
msgstr ""
-#: doc/classes/Control.xml:1098
+#: doc/classes/Control.xml:1100
msgid ""
"The control will grow to the right or bottom to make up if its minimum size "
"is changed to be greater than its current size on the respective axis."
msgstr ""
-#: doc/classes/Control.xml:1101
+#: doc/classes/Control.xml:1103
msgid ""
"The control will grow in both directions equally to make up if its minimum "
"size is changed to be greater than its current size."
msgstr ""
-#: doc/classes/Control.xml:1104
+#: doc/classes/Control.xml:1106
msgid ""
"Snaps one of the 4 anchor's sides to the origin of the node's [code]Rect[/"
"code], in the top left. Use it with one of the [code]anchor_*[/code] member "
@@ -15231,7 +15342,7 @@ msgid ""
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1107
+#: doc/classes/Control.xml:1109
msgid ""
"Snaps one of the 4 anchor's sides to the end of the node's [code]Rect[/"
"code], in the bottom right. Use it with one of the [code]anchor_*[/code] "
@@ -17019,7 +17130,7 @@ msgstr ""
msgid ""
"Returns the [Texture2D] associated with the specified [enum DecalTexture]. "
"This is a convenience method, in most cases you should access the texture "
-"directly. \n"
+"directly.\n"
"For example, instead of [code]albedo_tex = $Decal.get_texture(Decal."
"TEXTURE_ALBEDO)[/code], use [code]albedo_tex = $Decal.texture_albedo[/"
"code].\n"
@@ -17035,7 +17146,7 @@ msgstr ""
msgid ""
"Sets the [Texture2D] associated with the specified [enum DecalTexture]. This "
"is a convenience method, in most cases you should access the texture "
-"directly. \n"
+"directly.\n"
"For example, instead of [code]$Decal.set_texture(Decal.TEXTURE_ALBEDO, "
"albedo_tex)[/code], use [code]$Decal.texture_albedo = albedo_tex[/code].\n"
"One case where this is better than accessing the texture directly is when "
@@ -17384,7 +17495,7 @@ msgstr ""
msgid "The light's shadow rendering algorithm. See [enum ShadowMode]."
msgstr ""
-#: doc/classes/DirectionalLight3D.xml:31 doc/classes/RenderingServer.xml:3254
+#: doc/classes/DirectionalLight3D.xml:31 doc/classes/RenderingServer.xml:3250
msgid ""
"Sets the size of the directional shadow pancake. The pancake offsets the "
"start of the shadow's camera frustum to provide a higher effective depth "
@@ -17458,10 +17569,10 @@ msgstr ""
msgid ""
"Directory type. It is used to manage directories and their content (not "
"restricted to the project folder).\n"
-"When creating a new [Directory], its default opened directory will be "
-"[code]res://[/code]. This may change in the future, so it is advised to "
-"always use [method open] to initialize your [Directory] where you want to "
-"operate, with explicit error checking.\n"
+"When creating a new [Directory], it must be explicitly opened using [method "
+"open] before most methods can be used. However, [method file_exists] and "
+"[method dir_exists] can be used without opening a directory. If so, they use "
+"a path relative to [code]res://[/code].\n"
"Here is an example on how to iterate through the files of a directory:\n"
"[codeblock]\n"
"func dir_contents(path):\n"
@@ -17480,7 +17591,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Directory.xml:27 doc/classes/File.xml:25
+#: doc/classes/Directory.xml:27 doc/classes/File.xml:26
msgid ""
"https://docs.godotengine.org/en/latest/getting_started/step_by_step/"
"filesystem.html"
@@ -17514,41 +17625,43 @@ msgstr ""
#: doc/classes/Directory.xml:65
msgid ""
"Returns whether the target directory exists. The argument can be relative to "
-"the current directory, or an absolute path."
+"the current directory, or an absolute path.\n"
+"If the [Directory] is not open, the path is relative to [code]res://[/code]."
msgstr ""
-#: doc/classes/Directory.xml:74
+#: doc/classes/Directory.xml:75
msgid ""
"Returns whether the target file exists. The argument can be relative to the "
-"current directory, or an absolute path."
+"current directory, or an absolute path.\n"
+"If the [Directory] is not open, the path is relative to [code]res://[/code]."
msgstr ""
-#: doc/classes/Directory.xml:81
+#: doc/classes/Directory.xml:83
msgid ""
"Returns the absolute path to the currently opened directory (e.g. "
"[code]res://folder[/code] or [code]C:\\tmp\\folder[/code])."
msgstr ""
-#: doc/classes/Directory.xml:88
+#: doc/classes/Directory.xml:90
msgid ""
"Returns the currently opened directory's drive index. See [method get_drive] "
"to convert returned index to the name of the drive."
msgstr ""
-#: doc/classes/Directory.xml:97
+#: doc/classes/Directory.xml:99
msgid ""
"On Windows, returns the name of the drive (partition) passed as an argument "
"(e.g. [code]C:[/code]). On other platforms, or if the requested drive does "
"not existed, the method returns an empty String."
msgstr ""
-#: doc/classes/Directory.xml:104
+#: doc/classes/Directory.xml:106
msgid ""
"On Windows, returns the number of drives (partitions) mounted on the current "
"filesystem. On other platforms, the method returns 0."
msgstr ""
-#: doc/classes/Directory.xml:111
+#: doc/classes/Directory.xml:113
msgid ""
"Returns the next element (file or directory) in the current directory "
"(including [code].[/code] and [code]..[/code], unless "
@@ -17559,14 +17672,14 @@ msgid ""
"mandatory in such a case)."
msgstr ""
-#: doc/classes/Directory.xml:119
+#: doc/classes/Directory.xml:121
msgid ""
"On UNIX desktop systems, returns the available space on the current "
"directory's disk. On other platforms, this information is not available and "
"the method returns 0 or -1."
msgstr ""
-#: doc/classes/Directory.xml:130
+#: doc/classes/Directory.xml:132
msgid ""
"Initializes the stream used to list all files and directories using the "
"[method get_next] function, closing the current opened stream if needed. "
@@ -17578,13 +17691,13 @@ msgid ""
"out."
msgstr ""
-#: doc/classes/Directory.xml:139
+#: doc/classes/Directory.xml:141
msgid ""
"Closes the current stream opened with [method list_dir_begin] (whether it "
"has been fully processed with [method get_next] or not does not matter)."
msgstr ""
-#: doc/classes/Directory.xml:148
+#: doc/classes/Directory.xml:150
msgid ""
"Creates a directory. The argument can be relative to the current directory, "
"or an absolute path. The target directory should be placed in an already "
@@ -17593,7 +17706,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:158
+#: doc/classes/Directory.xml:160
msgid ""
"Creates a target directory and all necessary intermediate directories in its "
"path, by calling [method make_dir] recursively. The argument can be relative "
@@ -17601,7 +17714,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:168
+#: doc/classes/Directory.xml:170
msgid ""
"Opens an existing directory of the filesystem. The [code]path[/code] "
"argument can be within the project tree ([code]res://folder[/code]), the "
@@ -17610,7 +17723,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:178
+#: doc/classes/Directory.xml:180
msgid ""
"Deletes the target file or an empty directory. The argument can be relative "
"to the current directory, or an absolute path. If the target directory is "
@@ -17618,7 +17731,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:190
+#: doc/classes/Directory.xml:192
msgid ""
"Renames (move) the [code]from[/code] file to the [code]to[/code] "
"destination. Both arguments should be paths to files, either relative or "
@@ -17659,6 +17772,53 @@ msgid ""
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
+#: doc/classes/DisplayServer.xml:530
+msgid ""
+"Return the greatest scale factor of all screens.\n"
+"[b]Note:[/b] On macOS returned value is [code]2.0[/code] if there is at "
+"least one hiDPI (Retina) screen in the system, and [code]1.0[/code] in all "
+"other cases.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:557
+msgid ""
+"Return the scale factor of the specified screen by index.\n"
+"[b]Note:[/b] On macOS returned value is [code]2.0[/code] for hiDPI (Retina) "
+"screen, and [code]1.0[/code] for all other cases.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:630
+msgid ""
+"Returns the on-screen keyboard's height in pixels. Returns 0 if there is no "
+"keyboard or if it is currently hidden."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:637
+msgid "Hides the virtual keyboard if it is shown, does nothing otherwise."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:656
+msgid ""
+"Shows the virtual keyboard if the platform has one.\n"
+"[code]existing_text[/code] parameter is useful for implementing your own "
+"[LineEdit] or [TextEdit], as it tells the virtual keyboard what text has "
+"already been typed (the virtual keyboard uses it for auto-correct and "
+"predictions).\n"
+"[code]position[/code] parameter is the screen space [Rect2] of the edited "
+"text.\n"
+"[code]multiline[/code] parameter needs to be set to [code]true[/code] to be "
+"able to enter multiple lines of text, as in [TextEdit].\n"
+"[code]max_length[/code] limits the number of characters that can be entered "
+"if different from [code]-1[/code].\n"
+"[code]cursor_start[/code] can optionally define the current text cursor "
+"position if [code]cursor_end[/code] is not set.\n"
+"[code]cursor_start[/code] and [code]cursor_end[/code] can optionally define "
+"the current text selection.\n"
+"[b]Note:[/b] This method is implemented on Android, iOS and UWP."
+msgstr ""
+
#: doc/classes/DTLSServer.xml:4
msgid "Helper class to implement a DTLS server."
msgstr ""
@@ -17779,54 +17939,62 @@ msgstr ""
msgid "Adds a fallback font."
msgstr ""
-#: doc/classes/DynamicFont.xml:35
+#: doc/classes/DynamicFont.xml:33
+msgid ""
+"Returns a string containing all the characters available in the main and all "
+"the fallback fonts.\n"
+"If a given character is included in more than one font, it appears only once "
+"in the returned string."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:43
msgid "Returns the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:42
+#: doc/classes/DynamicFont.xml:50
msgid "Returns the number of fallback fonts."
msgstr ""
-#: doc/classes/DynamicFont.xml:51
+#: doc/classes/DynamicFont.xml:59
msgid ""
"Returns the spacing for the given [code]type[/code] (see [enum SpacingType])."
msgstr ""
-#: doc/classes/DynamicFont.xml:60
+#: doc/classes/DynamicFont.xml:68
msgid "Removes the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:71
+#: doc/classes/DynamicFont.xml:79
msgid "Sets the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:82
+#: doc/classes/DynamicFont.xml:90
msgid ""
"Sets the spacing for [code]type[/code] (see [enum SpacingType]) to "
"[code]value[/code] in pixels (not relative to the font size)."
msgstr ""
-#: doc/classes/DynamicFont.xml:88
+#: doc/classes/DynamicFont.xml:96
msgid "Extra spacing at the bottom in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:91
+#: doc/classes/DynamicFont.xml:99
msgid "Extra character spacing in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:94
+#: doc/classes/DynamicFont.xml:102
msgid "Extra space spacing in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:97
+#: doc/classes/DynamicFont.xml:105
msgid "Extra spacing at the top in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:100
+#: doc/classes/DynamicFont.xml:108
msgid "The font data."
msgstr ""
-#: doc/classes/DynamicFont.xml:103
+#: doc/classes/DynamicFont.xml:111
msgid ""
"The font outline's color.\n"
"[b]Note:[/b] It's recommended to leave this at the default value so that you "
@@ -17835,27 +18003,27 @@ msgid ""
"outline modulate theme item."
msgstr ""
-#: doc/classes/DynamicFont.xml:107
+#: doc/classes/DynamicFont.xml:115
msgid "The font outline's thickness in pixels (not relative to the font size)."
msgstr ""
-#: doc/classes/DynamicFont.xml:110
+#: doc/classes/DynamicFont.xml:118
msgid "The font size in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:115
+#: doc/classes/DynamicFont.xml:123
msgid "Spacing at the top."
msgstr ""
-#: doc/classes/DynamicFont.xml:118
+#: doc/classes/DynamicFont.xml:126
msgid "Spacing at the bottom."
msgstr ""
-#: doc/classes/DynamicFont.xml:121
+#: doc/classes/DynamicFont.xml:129
msgid "Character spacing."
msgstr ""
-#: doc/classes/DynamicFont.xml:124
+#: doc/classes/DynamicFont.xml:132
msgid "Space spacing."
msgstr ""
@@ -18237,7 +18405,12 @@ msgstr ""
msgid "Remitted if a resource is reimported."
msgstr ""
-#: doc/classes/EditorFileSystem.xml:106
+#: doc/classes/EditorFileSystem.xml:100
+msgid ""
+"Emitted if at least one resource is reloaded when the filesystem is scanned."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:107
msgid "Emitted if the source of any imported file changed."
msgstr ""
@@ -18279,29 +18452,43 @@ msgstr ""
msgid "Returns the path to the file at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:86
+#: doc/classes/EditorFileSystemDirectory.xml:70
+msgid ""
+"Returns the base class of the script class defined in the file at index "
+"[code]idx[/code]. If the file doesn't define a script class using the "
+"[code]class_name[/code] syntax, this will return an empty string."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:79
+msgid ""
+"Returns the name of the script class defined in the file at index [code]idx[/"
+"code]. If the file doesn't define a script class using the [code]class_name[/"
+"code] syntax, this will return an empty string."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:88
msgid "Returns the file extension of the file at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:93
+#: doc/classes/EditorFileSystemDirectory.xml:95
msgid "Returns the name of this directory."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:100
+#: doc/classes/EditorFileSystemDirectory.xml:102
msgid ""
"Returns the parent directory for this directory or [code]null[/code] if "
"called on a directory at [code]res://[/code] or [code]user://[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:107
+#: doc/classes/EditorFileSystemDirectory.xml:109
msgid "Returns the path to this directory."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:116
+#: doc/classes/EditorFileSystemDirectory.xml:118
msgid "Returns the subdirectory at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:123
+#: doc/classes/EditorFileSystemDirectory.xml:125
msgid "Returns the number of subdirectories in this directory."
msgstr ""
@@ -18392,45 +18579,72 @@ msgstr ""
msgid "Gets the unique name of the importer."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:92
+#: doc/classes/EditorImportPlugin.xml:86
+msgid ""
+"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. For example:\n"
+"[codeblock]\n"
+"func get_option_visibility(option, options):\n"
+" # Only show the lossy quality setting if the compression mode is set to "
+"\"Lossy\".\n"
+" if option == \"compress/lossy_quality\" and options.has(\"compress/mode"
+"\"):\n"
+" return int(options[\"compress/mode\"]) == COMPRESS_LOSSY\n"
+"\n"
+" return true\n"
+"[/codeblock]\n"
+"Return [code]true[/code] to make all options always visible."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:102
msgid ""
"Gets the number of initial presets defined by the plugin. Use [method "
"get_import_options] to get the default options for the preset and [method "
"get_preset_name] to get the name of the preset."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:101
+#: doc/classes/EditorImportPlugin.xml:111
msgid "Gets the name of the options preset at this index."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:108
+#: doc/classes/EditorImportPlugin.xml:118
msgid ""
"Gets the priority of this plugin for the recognized extension. Higher "
"priority plugins will be preferred. The default priority is [code]1.0[/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:115
+#: doc/classes/EditorImportPlugin.xml:125
msgid ""
"Gets the list of file extensions to associate with this loader (case-"
"insensitive). e.g. [code][\"obj\"][/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:122
+#: doc/classes/EditorImportPlugin.xml:132
msgid ""
"Gets the Godot resource type associated with this loader. e.g. [code]\"Mesh"
"\"[/code] or [code]\"Animation\"[/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:129
+#: doc/classes/EditorImportPlugin.xml:139
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:136
+#: doc/classes/EditorImportPlugin.xml:146
msgid "Gets the name to display in the import window."
msgstr ""
+#: doc/classes/EditorImportPlugin.xml:163
+msgid ""
+"Imports [code]source_file[/code] into [code]save_path[/code] with the import "
+"[code]options[/code] specified. The [code]platform_variants[/code] and "
+"[code]gen_files[/code] arrays will be modified by this function.\n"
+"This method must be overridden to do the actual importing work. See this "
+"class' description for an example of overriding this method."
+msgstr ""
+
#: doc/classes/EditorInspector.xml:4
msgid "A tab used to edit properties of the selected node."
msgstr ""
@@ -18446,6 +18660,60 @@ msgid ""
"the singleton using [method EditorInterface.get_inspector]."
msgstr ""
+#: doc/classes/EditorInspector.xml:17
+msgid ""
+"Refreshes the inspector.\n"
+"[b]Note:[/b] To save on CPU resources, calling this method will do nothing "
+"if the time specified in [code]docks/property_editor/auto_refresh_interval[/"
+"code] editor setting hasn't passed yet since this method was last called. "
+"(By default, this interval is set to 0.3 seconds.)"
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:30
+msgid ""
+"Emitted when the Edit button of an [Object] has been pressed in the "
+"inspector. This is mainly used in the remote scene tree inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:37
+#, fuzzy
+msgid "Emitted when a property is removed from the inspector."
+msgstr "Émis lorsqu'une interface est supprimée."
+
+#: doc/classes/EditorInspector.xml:44
+msgid "Emitted when a property is edited in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:51
+msgid ""
+"Emitted when a property is keyed in the inspector. Properties can be keyed "
+"by clicking the \"key\" icon next to a property when the Animation panel is "
+"toggled."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:58
+msgid "Emitted when a property is selected in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:67
+msgid ""
+"Emitted when a boolean property is toggled in the inspector.\n"
+"[b]Note:[/b] This signal is never emitted if the internal [code]autoclear[/"
+"code] property enabled. Since this property is always enabled in the editor "
+"inspector, this signal is never emitted by the editor itself."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:77
+#, fuzzy
+msgid "Emitted when a resource is selected in the inspector."
+msgstr "Émis lorsqu'une interface est supprimée."
+
+#: doc/classes/EditorInspector.xml:82
+msgid ""
+"Emitted when a property that requires a restart to be applied is edited in "
+"the inspector. This is only used in the Project Settings and Editor Settings."
+msgstr ""
+
#: doc/classes/EditorInspectorPlugin.xml:4
msgid "Plugin for adding custom property editors on inspector."
msgstr ""
@@ -18524,91 +18792,161 @@ msgstr ""
#: doc/classes/EditorInterface.xml:26
msgid ""
-"Returns the main container of Godot editor's window. You can use it, for "
-"example, to retrieve the size of the container and place your controls "
+"Returns the main container of Godot editor's window. For example, you can "
+"use it to retrieve the size of the container and place your controls "
"accordingly."
msgstr ""
-#: doc/classes/EditorInterface.xml:39
+#: doc/classes/EditorInterface.xml:33
+msgid "Returns the current path being viewed in the [FileSystemDock]."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:40
msgid "Returns the edited (current) scene's root [Node]."
msgstr ""
-#: doc/classes/EditorInterface.xml:46
-msgid "Returns the [EditorSettings]."
+#: doc/classes/EditorInterface.xml:47
+msgid "Returns the editor's [EditorSettings] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:54
+msgid ""
+"Returns the main editor control. Use this as a parent for main screens.\n"
+"[b]Note:[/b] This returns the main editor control containing the whole "
+"editor, not the 2D or 3D viewports specifically."
msgstr ""
-#: doc/classes/EditorInterface.xml:53
-msgid "Returns the editor [Viewport]."
+#: doc/classes/EditorInterface.xml:62
+msgid "Returns the editor's [FileSystemDock] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:72
+#: doc/classes/EditorInterface.xml:69
+msgid "Returns the editor's [EditorInspector] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:76
msgid "Returns an [Array] with the file paths of the currently opened scenes."
msgstr ""
-#: doc/classes/EditorInterface.xml:79
-msgid "Returns the [EditorFileSystem]."
+#: doc/classes/EditorInterface.xml:83
+msgid ""
+"Returns the name of the scene that is being played. If no scene is currently "
+"being played, returns an empty string."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:90
+msgid "Returns the editor's [EditorFileSystem] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:86
-msgid "Returns the [EditorResourcePreview]."
+#: doc/classes/EditorInterface.xml:97
+msgid "Returns the editor's [EditorResourcePreview] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:93
-msgid "Returns the [ScriptEditor]."
+#: doc/classes/EditorInterface.xml:104
+msgid "Returns the editor's [ScriptEditor] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:106
-msgid "Returns the [EditorSelection]."
+#: doc/classes/EditorInterface.xml:111
+msgid ""
+"Returns the path of the directory currently selected in the "
+"[FileSystemDock]. If a file is selected, its base directory will be returned "
+"using [method String.get_base_dir] instead."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:118
+msgid "Returns the editor's [EditorSelection] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:117
+#: doc/classes/EditorInterface.xml:129
msgid ""
-"Shows the given property on the given [code]object[/code] in the Editor's "
+"Shows the given property on the given [code]object[/code] in the editor's "
"Inspector dock."
msgstr ""
-#: doc/classes/EditorInterface.xml:126
+#: doc/classes/EditorInterface.xml:136
+#, fuzzy
msgid ""
-"Returns the enabled status of a plugin. The plugin name is the same as its "
-"directory name."
+"Returns [code]true[/code] if a scene is currently being played, [code]false[/"
+"code] otherwise. Paused scenes are considered as being played."
msgstr ""
+"Retourne [code]true[/code] si la chaîne de caractères commence par la chaîne "
+"de caractères donnée, ou [code]false[/code] le cas échéant."
-#: doc/classes/EditorInterface.xml:137
+#: doc/classes/EditorInterface.xml:145
+#, fuzzy
+msgid ""
+"Returns [code]true[/code] if the specified [code]plugin[/code] is enabled. "
+"The plugin name is the same as its directory name."
+msgstr ""
+"Renvoie [code]true[/code] (vrai) si [code]s[/code] vaut zéro ou quasiment "
+"zéro."
+
+#: doc/classes/EditorInterface.xml:156
msgid ""
"Returns mesh previews rendered at the given size as an [Array] of "
"[Texture2D]s."
msgstr ""
-#: doc/classes/EditorInterface.xml:146
+#: doc/classes/EditorInterface.xml:165
msgid "Opens the scene at the given path."
msgstr ""
-#: doc/classes/EditorInterface.xml:155
+#: doc/classes/EditorInterface.xml:172
+msgid "Plays the currently active scene."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:181
+msgid "Plays the scene specified by its filepath."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:188
+msgid "Plays the main scene."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:197
msgid "Reloads the scene at the given path."
msgstr ""
-#: doc/classes/EditorInterface.xml:162
+#: doc/classes/EditorInterface.xml:204
msgid ""
"Saves the scene. Returns either [code]OK[/code] or [code]ERR_CANT_CREATE[/"
"code] (see [@GlobalScope] constants)."
msgstr ""
-#: doc/classes/EditorInterface.xml:173
+#: doc/classes/EditorInterface.xml:215
msgid "Saves the scene as a file at [code]path[/code]."
msgstr ""
-#: doc/classes/EditorInterface.xml:182
+#: doc/classes/EditorInterface.xml:224
msgid ""
"Selects the file, with the path provided by [code]file[/code], in the "
"FileSystem dock."
msgstr ""
-#: doc/classes/EditorInterface.xml:201
+#: doc/classes/EditorInterface.xml:233
+msgid ""
+"Sets the editor's current main screen to the one specified in [code]name[/"
+"code]. [code]name[/code] must match the text of the tab in question exactly "
+"([code]2D[/code], [code]3D[/code], [code]Script[/code], [code]AssetLib[/"
+"code])."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:244
msgid ""
"Sets the enabled status of a plugin. The plugin name is the same as its "
"directory name."
msgstr ""
+#: doc/classes/EditorInterface.xml:251
+msgid "Stops the scene that is currently playing."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:257
+msgid ""
+"If [code]true[/code], enables distraction-free mode which hides side docks "
+"to increase the space available for the main view."
+msgstr ""
+
#: doc/classes/EditorNode3DGizmo.xml:4
msgid "Custom gizmo for editing Node3D objects."
msgstr ""
@@ -18620,14 +18958,20 @@ msgid ""
"information."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:26
+#: doc/classes/EditorNode3DGizmo.xml:18
+msgid ""
+"Adds the specified [code]segments[/code] to the gizmo's collision shape for "
+"picking. Call this function during [method redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:27
msgid ""
"Adds collision triangles to the gizmo for picking. A [TriangleMesh] can be "
"generated from a regular [Mesh] too. Call this function during [method "
"redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:41
+#: doc/classes/EditorNode3DGizmo.xml:42
msgid ""
"Adds a list of handles (points) which can be used to deform the object being "
"edited.\n"
@@ -18635,20 +18979,33 @@ msgid ""
"handles. Call this function during [method redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:57
+#: doc/classes/EditorNode3DGizmo.xml:58
msgid ""
"Adds lines to the gizmo (as sets of 2 points), with a given material. The "
"lines are used for visualizing the gizmo. Call this function during [method "
"redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:84
+#: doc/classes/EditorNode3DGizmo.xml:73
+msgid ""
+"Adds a mesh to the gizmo with the specified [code]billboard[/code] state, "
+"[code]skeleton[/code] and [code]material[/code]. If [code]billboard[/code] "
+"is [code]true[/code], the mesh will rotate to always face the camera. Call "
+"this function during [method redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:86
msgid ""
"Adds an unscaled billboard for visualization. Call this function during "
"[method redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:103
+#: doc/classes/EditorNode3DGizmo.xml:93
+msgid ""
+"Removes everything in the gizmo including meshes, collisions and handles."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:106
msgid ""
"Commit a handle being edited (handles must have been previously added by "
"[method add_handles]).\n"
@@ -18656,40 +19013,45 @@ msgid ""
"restore the edited value to the original is provided."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:113
+#: doc/classes/EditorNode3DGizmo.xml:116
msgid ""
"Gets the name of an edited handle (handles must have been previously added "
"by [method add_handles]).\n"
"Handles can be named for reference to the user when editing."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:123
+#: doc/classes/EditorNode3DGizmo.xml:126
msgid ""
"Gets actual value of a handle. This value can be anything and used for "
"eventually undoing the motion when calling [method commit_handle]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:130
+#: doc/classes/EditorNode3DGizmo.xml:133
msgid ""
"Returns the [EditorNode3DGizmoPlugin] that owns this gizmo. It's useful to "
"retrieve materials using [method EditorNode3DGizmoPlugin.get_material]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:137
+#: doc/classes/EditorNode3DGizmo.xml:140
msgid "Returns the Node3D node associated with this gizmo."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:146
-msgid "Gets whether a handle is highlighted or not."
+#: doc/classes/EditorNode3DGizmo.xml:149
+#, fuzzy
+msgid ""
+"Returns [code]true[/code] if the handle at index [code]index[/code] is "
+"highlighted by being hovered with the mouse."
msgstr ""
+"Renvoie [code]true[/code] (vrai) si [code]s[/code] vaut zéro ou quasiment "
+"zéro."
-#: doc/classes/EditorNode3DGizmo.xml:153
+#: doc/classes/EditorNode3DGizmo.xml:156
msgid ""
-"This function is called when the Node3D this gizmo refers to changes (the "
+"This function is called when the [Node3D] this gizmo refers to changes (the "
"[method Node3D.update_gizmo] is called)."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:166
+#: doc/classes/EditorNode3DGizmo.xml:169
msgid ""
"This function is used when the user drags a gizmo handle (previously added "
"with [method add_handles]) in screen coordinates.\n"
@@ -18697,6 +19059,18 @@ msgid ""
"raycasts."
msgstr ""
+#: doc/classes/EditorNode3DGizmo.xml:179
+msgid ""
+"Sets the gizmo's hidden state. If [code]true[/code], the gizmo will be "
+"hidden. If [code]false[/code], it will be shown."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:188
+msgid ""
+"Sets the reference [Node3D] node for the gizmo. [code]node[/code] must "
+"inherit from [Node3D]."
+msgstr ""
+
#: doc/classes/EditorNode3DGizmoPlugin.xml:4
msgid "Used by the editor to define Node3D gizmo types."
msgstr ""
@@ -18789,7 +19163,17 @@ msgid ""
"visibility menu."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:150
+#: doc/classes/EditorNode3DGizmoPlugin.xml:142
+msgid ""
+"Override this method to set the gizmo's priority. Higher values correspond "
+"to higher priority. If a gizmo with higher priority conflicts with another "
+"gizmo, only the gizmo with higher priority will be used.\n"
+"All built-in editor gizmos return a priority of [code]-1[/code]. If not "
+"overridden, this method will return [code]0[/code], which means custom "
+"gizmos will automatically override built-in gizmos."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:152
msgid ""
"Override this method to define which Node3D nodes have a gizmo from this "
"plugin. Whenever a [Node3D] node is added to a scene this method is called, "
@@ -18797,25 +19181,25 @@ msgid ""
"assigned and is added to this plugin's list of active gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:161
+#: doc/classes/EditorNode3DGizmoPlugin.xml:163
msgid ""
"Gets whether a handle is highlighted or not. Called for this plugin's active "
"gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:168
+#: doc/classes/EditorNode3DGizmoPlugin.xml:170
msgid ""
"Override this method to define whether Node3D with this gizmo should be "
"selecteble even when the gizmo is hidden."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:177
+#: doc/classes/EditorNode3DGizmoPlugin.xml:179
msgid ""
"Callback to redraw the provided gizmo. Called for this plugin's active "
"gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:192
+#: doc/classes/EditorNode3DGizmoPlugin.xml:194
msgid ""
"Update the value of a handle after it has been updated. Called for this "
"plugin's active gizmos."
@@ -18902,7 +19286,13 @@ msgid ""
"should be cleaned up using [code]remove_tool_menu_item(name)[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:149
+#: doc/classes/EditorPlugin.xml:151
+msgid ""
+"Registers a custom translation parser plugin for extracting translatable "
+"strings from custom files."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:158
msgid ""
"This method is called when the editor is about to save the project, switch "
"to another tab, etc. It asks the plugin to apply any pending state changes "
@@ -18911,32 +19301,32 @@ msgid ""
"must apply the shader code being written by the user to the object."
msgstr ""
-#: doc/classes/EditorPlugin.xml:163
+#: doc/classes/EditorPlugin.xml:172
msgid ""
"Clear all the state and reset the object being edited to zero. This ensures "
"your plugin does not keep editing a currently existing node, or a node from "
"the wrong scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:170
+#: doc/classes/EditorPlugin.xml:179
msgid ""
"Called by the engine when the user disables the [EditorPlugin] in the Plugin "
"tab of the project settings window."
msgstr ""
-#: doc/classes/EditorPlugin.xml:179
+#: doc/classes/EditorPlugin.xml:188
msgid ""
"This function is used for plugins that edit specific object types (nodes or "
"resources). It requests the editor to edit the given object."
msgstr ""
-#: doc/classes/EditorPlugin.xml:186
+#: doc/classes/EditorPlugin.xml:195
msgid ""
"Called by the engine when the user enables the [EditorPlugin] in the Plugin "
"tab of the project settings window."
msgstr ""
-#: doc/classes/EditorPlugin.xml:211
+#: doc/classes/EditorPlugin.xml:220
msgid ""
"Called when there is a root node in the current edited scene, [method "
"handles] is implemented and an [InputEvent] happens in the 2D viewport. "
@@ -18961,7 +19351,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:237
+#: doc/classes/EditorPlugin.xml:246
msgid ""
"Called when there is a root node in the current edited scene, [method "
"handles] is implemented and an [InputEvent] happens in the 3D viewport. "
@@ -18986,20 +19376,20 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:259
+#: doc/classes/EditorPlugin.xml:268
msgid ""
"This is for editors that edit script-based objects. You can return a list of "
"breakpoints in the format ([code]script:line[/code]), for example: "
"[code]res://path_to_script.gd:25[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:266
+#: doc/classes/EditorPlugin.xml:275
msgid ""
"Returns the [EditorInterface] object that gives you control over Godot "
"editor's window and its functionalities."
msgstr ""
-#: doc/classes/EditorPlugin.xml:273
+#: doc/classes/EditorPlugin.xml:282
msgid ""
"Override this method in your plugin to return a [Texture2D] in order to give "
"it an icon.\n"
@@ -19017,7 +19407,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:289
+#: doc/classes/EditorPlugin.xml:298
msgid ""
"Override this method in your plugin to provide the name of the plugin when "
"displayed in the Godot editor.\n"
@@ -19025,33 +19415,33 @@ msgid ""
"of the \"2D\", \"3D\", \"Script\", and \"AssetLib\" buttons."
msgstr ""
-#: doc/classes/EditorPlugin.xml:297
+#: doc/classes/EditorPlugin.xml:306
msgid ""
"Gets the Editor's dialogue used for making scripts.\n"
"[b]Note:[/b] Users can configure it before use."
msgstr ""
-#: doc/classes/EditorPlugin.xml:305
+#: doc/classes/EditorPlugin.xml:314
msgid ""
"Gets the state of your plugin editor. This is used when saving the scene (so "
"state is kept when opening it again) and for switching tabs (so state can be "
"restored when the tab returns)."
msgstr ""
-#: doc/classes/EditorPlugin.xml:312
+#: doc/classes/EditorPlugin.xml:321
msgid ""
"Gets the undo/redo object. Most actions in the editor can be undoable, so "
"use this object to make sure this happens when it's worth it."
msgstr ""
-#: doc/classes/EditorPlugin.xml:321
+#: doc/classes/EditorPlugin.xml:330
msgid ""
"Gets the GUI layout of the plugin. This is used to save the project's editor "
"layout when [method queue_save_layout] is called or the editor layout was "
"changed(For example changing the position of a dock)."
msgstr ""
-#: doc/classes/EditorPlugin.xml:330
+#: doc/classes/EditorPlugin.xml:339
msgid ""
"Implement this function if your plugin edits a specific type of object "
"(Resource or Node). If you return [code]true[/code], then you will get the "
@@ -19061,14 +19451,14 @@ msgid ""
"be called too."
msgstr ""
-#: doc/classes/EditorPlugin.xml:337
+#: doc/classes/EditorPlugin.xml:346
msgid ""
"Returns [code]true[/code] if this is a main screen editor plugin (it goes in "
"the workspace selector together with [b]2D[/b], [b]3D[/b], [b]Script[/b] and "
"[b]AssetLib[/b])."
msgstr ""
-#: doc/classes/EditorPlugin.xml:360
+#: doc/classes/EditorPlugin.xml:369
msgid ""
"This function will be called when the editor is requested to become visible. "
"It is used for plugins that edit a specific object type.\n"
@@ -19076,85 +19466,89 @@ msgid ""
"manually."
msgstr ""
-#: doc/classes/EditorPlugin.xml:368
+#: doc/classes/EditorPlugin.xml:377
msgid "Queue save the project's editor layout."
msgstr ""
-#: doc/classes/EditorPlugin.xml:377
+#: doc/classes/EditorPlugin.xml:386
msgid "Removes an Autoload [code]name[/code] from the list."
msgstr ""
-#: doc/classes/EditorPlugin.xml:386
+#: doc/classes/EditorPlugin.xml:395
msgid ""
"Removes the control from the bottom panel. You have to manually [method Node."
"queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:397
+#: doc/classes/EditorPlugin.xml:406
msgid ""
"Removes the control from the specified container. You have to manually "
"[method Node.queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:406
+#: doc/classes/EditorPlugin.xml:415
msgid ""
"Removes the control from the dock. You have to manually [method Node."
"queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:415
+#: doc/classes/EditorPlugin.xml:424
msgid "Removes a custom type added by [method add_custom_type]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:464
+#: doc/classes/EditorPlugin.xml:473
msgid "Removes a menu [code]name[/code] from [b]Project > Tools[/b]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:471
+#: doc/classes/EditorPlugin.xml:482
+msgid "Removes a registered custom translation parser plugin."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:489
msgid ""
"This method is called after the editor saves the project or when it's "
"closed. It asks the plugin to save edited external scenes/resources."
msgstr ""
-#: doc/classes/EditorPlugin.xml:484
+#: doc/classes/EditorPlugin.xml:502
msgid ""
"Use this method if you always want to receive inputs from 3D view screen "
"inside [method forward_spatial_gui_input]. It might be especially usable if "
"your plugin will want to use raycast in the scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:493
+#: doc/classes/EditorPlugin.xml:511
msgid "Restore the state saved by [method get_state]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:502
+#: doc/classes/EditorPlugin.xml:520
msgid "Restore the plugin GUI layout saved by [method get_window_layout]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:509
+#: doc/classes/EditorPlugin.xml:527
msgid "Updates the overlays of the editor (2D/3D) viewport."
msgstr ""
-#: doc/classes/EditorPlugin.xml:518
+#: doc/classes/EditorPlugin.xml:536
msgid ""
"Emitted when user changes the workspace ([b]2D[/b], [b]3D[/b], [b]Script[/"
"b], [b]AssetLib[/b]). Also works with custom screens defined by plugins."
msgstr ""
-#: doc/classes/EditorPlugin.xml:531
+#: doc/classes/EditorPlugin.xml:549
msgid ""
"Emitted when the scene is changed in the editor. The argument will return "
"the root node of the scene that has just become active. If this scene is new "
"and empty, the argument will be [code]null[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:538
+#: doc/classes/EditorPlugin.xml:556
msgid ""
"Emitted when user closes a scene. The argument is file path to a closed "
"scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:584
+#: doc/classes/EditorPlugin.xml:602
msgid "Represents the size of the [enum DockSlot] enum."
msgstr ""
@@ -19209,64 +19603,83 @@ msgid "When this virtual function is called, you must update your editor."
msgstr ""
#: doc/classes/EditorProperty.xml:76
-msgid "Used by the inspector, set when property is checkable."
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is "
+"checkable."
msgstr ""
#: doc/classes/EditorProperty.xml:79
-msgid "Used by the inspector, when the property is checked."
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is checked."
msgstr ""
-#: doc/classes/EditorProperty.xml:84
-msgid "Used by the inspector, when the property must draw with error color."
+#: doc/classes/EditorProperty.xml:82
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property can be "
+"deleted by the user."
msgstr ""
-#: doc/classes/EditorProperty.xml:87
-msgid "Used by the inspector, when the property can add keys for animation."
+#: doc/classes/EditorProperty.xml:85
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property must draw "
+"with error color. This is used for editable children's properties."
msgstr ""
-#: doc/classes/EditorProperty.xml:90
-msgid "Sets this property to change the label (if you want to show one)."
+#: doc/classes/EditorProperty.xml:88
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property can add "
+"keys for animation."
msgstr ""
-#: doc/classes/EditorProperty.xml:93
-msgid "Used by the inspector, when the property is read-only."
+#: doc/classes/EditorProperty.xml:91
+msgid "Set this property to change the label (if you want to show one)."
msgstr ""
-#: doc/classes/EditorProperty.xml:103
+#: doc/classes/EditorProperty.xml:94
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is read-"
+"only."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:104
msgid ""
"Emit it if you want multiple properties modified at the same time. Do not "
"use if added via [method EditorInspectorPlugin.parse_property]."
msgstr ""
-#: doc/classes/EditorProperty.xml:112
+#: doc/classes/EditorProperty.xml:113
msgid "Used by sub-inspectors. Emit it if what was selected was an Object ID."
msgstr ""
-#: doc/classes/EditorProperty.xml:121
+#: doc/classes/EditorProperty.xml:122
msgid ""
"Do not emit this manually, use the [method emit_changed] method instead."
msgstr ""
-#: doc/classes/EditorProperty.xml:130
+#: doc/classes/EditorProperty.xml:131
msgid "Emitted when a property was checked. Used internally."
msgstr ""
-#: doc/classes/EditorProperty.xml:143
+#: doc/classes/EditorProperty.xml:138
+msgid "Emitted when a property was deleted. Used internally."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:145
msgid ""
"Emit it if you want to add this value as an animation key (check for keying "
"being enabled first)."
msgstr ""
-#: doc/classes/EditorProperty.xml:152
+#: doc/classes/EditorProperty.xml:154
msgid "Emit it if you want to key a property with a single value."
msgstr ""
-#: doc/classes/EditorProperty.xml:161
+#: doc/classes/EditorProperty.xml:163
msgid ""
"If you want a sub-resource to be edited, emit this signal with the resource."
msgstr ""
-#: doc/classes/EditorProperty.xml:170
+#: doc/classes/EditorProperty.xml:172
msgid "Emitted when selected. Used internally."
msgstr ""
@@ -19551,17 +19964,26 @@ msgstr ""
msgid ""
"Object that holds the project-independent editor settings. These settings "
"are generally visible in the [b]Editor > Editor Settings[/b] menu.\n"
-"Accessing the settings is done by using the regular [Object] API, such as:\n"
-"[codeblock]\n"
-"settings.set(prop,value)\n"
-"settings.get(prop)\n"
-"list_of_settings = settings.get_property_list()\n"
+"Property names use slash delimiters to distinguish sections. Setting values "
+"can be of any [Variant] type. It's recommended to use [code]snake_case[/"
+"code] for editor settings to be consistent with the Godot editor itself.\n"
+"Accessing the settings can be done using the following methods, such as:\n"
+"[codeblock]\n"
+"# `settings.set(\"some/property\", value)` also works as this class "
+"overrides `_set()` internally.\n"
+"settings.set_setting(\"some/property\",value)\n"
+"\n"
+"# `settings.get(\"some/property\", value)` also works as this class "
+"overrides `_get()` internally.\n"
+"settings.get_setting(\"some/property\")\n"
+"\n"
+"var list_of_settings = settings.get_property_list()\n"
"[/codeblock]\n"
"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
"the singleton using [method EditorInterface.get_editor_settings]."
msgstr ""
-#: doc/classes/EditorSettings.xml:25
+#: doc/classes/EditorSettings.xml:30
msgid ""
"Adds a custom property info to a property. The dictionary must contain:\n"
"- [code]name[/code]: [String] (the name of the property)\n"
@@ -19583,52 +20005,176 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorSettings.xml:50
-msgid "Erase a given setting (pass full property path)."
+#: doc/classes/EditorSettings.xml:55
+msgid "Erases the setting whose name is specified by [code]property[/code]."
msgstr ""
-#: doc/classes/EditorSettings.xml:57
-msgid "Gets the list of favorite files and directories for this project."
+#: doc/classes/EditorSettings.xml:62
+msgid "Returns the list of favorite files and directories for this project."
msgstr ""
-#: doc/classes/EditorSettings.xml:76
+#: doc/classes/EditorSettings.xml:75
msgid ""
-"Gets the specific project settings path. Projects all have a unique sub-"
-"directory inside the settings path where project specific settings are saved."
+"Returns project-specific metadata for the [code]section[/code] and "
+"[code]key[/code] specified. If the metadata doesn't exist, [code]default[/"
+"code] will be returned instead. See also [method set_project_metadata]."
msgstr ""
-#: doc/classes/EditorSettings.xml:83
+#: doc/classes/EditorSettings.xml:82
msgid ""
-"Gets the list of recently visited folders in the file dialog for this "
+"Returns the project-specific settings path. Projects all have a unique "
+"subdirectory inside the settings path where project-specific settings are "
+"saved."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:89
+msgid ""
+"Returns the list of recently visited folders in the file dialog for this "
"project."
msgstr ""
#: doc/classes/EditorSettings.xml:98
msgid ""
+"Returns the value of the setting specified by [code]name[/code]. This is "
+"equivalent to using [method Object.get] on the EditorSettings instance."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:105
+msgid ""
"Gets the global settings path for the engine. Inside this path, you can find "
"some standard paths such as:\n"
"[code]settings/tmp[/code] - Used for temporary storage of files\n"
"[code]settings/templates[/code] - Where export templates are located"
msgstr ""
-#: doc/classes/EditorSettings.xml:133
+#: doc/classes/EditorSettings.xml:116
+#, fuzzy
+msgid ""
+"Returns [code]true[/code] if the setting specified by [code]name[/code] "
+"exists, [code]false[/code] otherwise."
+msgstr ""
+"Retourne [code]true[/code] si la chaîne de caractères commence par la chaîne "
+"de caractères donnée, ou [code]false[/code] le cas échéant."
+
+#: doc/classes/EditorSettings.xml:125
+msgid ""
+"Returns [code]true[/code] if the setting specified by [code]name[/code] can "
+"have its value reverted to the default value, [code]false[/code] otherwise. "
+"When this method returns [code]true[/code], a Revert button will display "
+"next to the setting in the Editor Settings."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:134
+msgid ""
+"Returns the default value of the setting specified by [code]name[/code]. "
+"This is the value that would be applied when clicking the Revert button in "
+"the Editor Settings."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:143
msgid "Sets the list of favorite files and directories for this project."
msgstr ""
-#: doc/classes/EditorSettings.xml:166
+#: doc/classes/EditorSettings.xml:156
+msgid ""
+"Sets the initial value of the setting specified by [code]name[/code] to "
+"[code]value[/code]. This is used to provide a value for the Revert button in "
+"the Editor Settings. If [code]update_current[/code] is true, the current "
+"value of the setting will be set to [code]value[/code] as well."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:169
+msgid ""
+"Sets project-specific metadata with the [code]section[/code], [code]key[/"
+"code] and [code]data[/code] specified. This metadata is stored outside the "
+"project folder and therefore won't be checked into version control. See also "
+"[method get_project_metadata]."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:178
msgid ""
"Sets the list of recently visited folders in the file dialog for this "
"project."
msgstr ""
-#: doc/classes/EditorSettings.xml:183
-msgid "Emitted when editor settings change."
+#: doc/classes/EditorSettings.xml:189
+msgid ""
+"Sets the [code]value[/code] of the setting specified by [code]name[/code]. "
+"This is equivalent to using [method Object.set] on the EditorSettings "
+"instance."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:196
+msgid "Emitted after any editor setting has changed."
msgstr ""
-#: doc/classes/EditorSettings.xml:189
+#: doc/classes/EditorSettings.xml:202
+msgid ""
+"Emitted after any editor setting has changed. It's used by various editor "
+"plugins to update their visuals on theme changes or logic on configuration "
+"changes."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:4
+msgid ""
+"Plugin for adding custom parsers to extract strings that are to be "
+"translated from custom files (.csv, .json etc.)."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:7
+msgid ""
+"Plugins are registered via [method EditorPlugin."
+"add_translation_parser_plugin] method. To define the parsing and string "
+"extraction logic, override the [method parse_file] method in script.\n"
+"The extracted strings will be written into a POT file selected by user under "
+"\"POT Generation\" in \"Localization\" tab in \"Project Settings\" menu.\n"
+"Below shows an example of a custom parser that extracts strings in a CSV "
+"file to write into a POT.\n"
+"[codeblock]\n"
+"tool\n"
+"extends EditorTranslationParserPlugin\n"
+"\n"
+"\n"
+"func parse_file(path, extracted_strings):\n"
+" var file = File.new()\n"
+" file.open(path, File.READ)\n"
+" var text = file.get_as_text()\n"
+" var split_strs = text.split(\",\", false, 0)\n"
+" for s in split_strs:\n"
+" extracted_strings.append(s)\n"
+" #print(\"Extracted string: \" + s)\n"
+"\n"
+"\n"
+"func get_recognized_extensions():\n"
+" return [\"csv\"]\n"
+"[/codeblock]\n"
+"[b]Note:[/b] If you override parsing logic for standard script types "
+"(GDScript, C#, etc.), it would be better to load the [code]path[/code] "
+"argument using [method ResourceLoader.load]. This is because built-in "
+"scripts are loaded as [Resource] type, not [File] type.\n"
+"For example:\n"
+"[codeblock]\n"
+"func parse_file(path, extracted_strings):\n"
+" var res = ResourceLoader.load(path, \"Script\")\n"
+" var text = res.get_source_code()\n"
+" # Parsing logic.\n"
+"\n"
+"\n"
+"func get_recognized_extensions():\n"
+" return [\"gd\"]\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:48
+msgid ""
+"Gets the list of file extensions to associate with this parser, e.g. [code]"
+"[\"csv\"][/code]."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:59
msgid ""
-"Emitted when editor settings change. It used by various editor plugins to "
-"update their visuals on theme changes or logic on configuration changes."
+"Override this method to define a custom parsing logic to extract the "
+"translatable strings."
msgstr ""
#: doc/classes/EditorVCSInterface.xml:4
@@ -20239,15 +20785,15 @@ msgid ""
"to 1.3 to compensate for the lack of HDR rendering."
msgstr ""
-#: doc/classes/Environment.xml:190
+#: doc/classes/Environment.xml:214
msgid "The [Sky] resource used for this [Environment]."
msgstr ""
-#: doc/classes/Environment.xml:197
+#: doc/classes/Environment.xml:221
msgid "The depth tolerance for screen-space reflections."
msgstr ""
-#: doc/classes/Environment.xml:200
+#: doc/classes/Environment.xml:224
msgid ""
"If [code]true[/code], screen-space reflections are enabled. Screen-space "
"reflections are more accurate than reflections from [GIProbe]s or "
@@ -20255,48 +20801,48 @@ msgid ""
"others."
msgstr ""
-#: doc/classes/Environment.xml:203
+#: doc/classes/Environment.xml:227
msgid ""
"The fade-in distance for screen-space reflections. Affects the area from the "
"reflected material to the screen-space reflection)."
msgstr ""
-#: doc/classes/Environment.xml:206
+#: doc/classes/Environment.xml:230
msgid ""
"The fade-out distance for screen-space reflections. Affects the area from "
"the screen-space reflection to the \"global\" reflection."
msgstr ""
-#: doc/classes/Environment.xml:209
+#: doc/classes/Environment.xml:233
msgid ""
"The maximum number of steps for screen-space reflections. Higher values are "
"slower."
msgstr ""
-#: doc/classes/Environment.xml:212
+#: doc/classes/Environment.xml:236
msgid ""
"The screen-space ambient occlusion intensity on materials that have an AO "
"texture defined. Values higher than [code]0[/code] will make the SSAO effect "
"visible in areas darkened by AO textures."
msgstr ""
-#: doc/classes/Environment.xml:215
+#: doc/classes/Environment.xml:239
msgid ""
"The screen-space ambient occlusion bias. This should be kept high enough to "
"prevent \"smooth\" curves from being affected by ambient occlusion."
msgstr ""
-#: doc/classes/Environment.xml:218
+#: doc/classes/Environment.xml:242
msgid ""
"The screen-space ambient occlusion blur quality. See [enum SSAOBlur] for "
"possible values."
msgstr ""
-#: doc/classes/Environment.xml:221
+#: doc/classes/Environment.xml:245
msgid "The screen-space ambient occlusion edge sharpness."
msgstr ""
-#: doc/classes/Environment.xml:224
+#: doc/classes/Environment.xml:248
msgid ""
"If [code]true[/code], the screen-space ambient occlusion effect is enabled. "
"This darkens objects' corners and cavities to simulate ambient light not "
@@ -20307,13 +20853,13 @@ msgid ""
"issues."
msgstr ""
-#: doc/classes/Environment.xml:227
+#: doc/classes/Environment.xml:251
msgid ""
"The primary screen-space ambient occlusion intensity. See also [member "
"ssao_radius]."
msgstr ""
-#: doc/classes/Environment.xml:230
+#: doc/classes/Environment.xml:254
msgid ""
"The screen-space ambient occlusion intensity in direct light. In real life, "
"ambient occlusion only applies to indirect light, which means its effects "
@@ -20321,46 +20867,46 @@ msgid ""
"the SSAO effect visible in direct light."
msgstr ""
-#: doc/classes/Environment.xml:233
+#: doc/classes/Environment.xml:257
msgid "The primary screen-space ambient occlusion radius."
msgstr ""
-#: doc/classes/Environment.xml:236
+#: doc/classes/Environment.xml:260
msgid "The default exposure used for tonemapping."
msgstr ""
-#: doc/classes/Environment.xml:239
+#: doc/classes/Environment.xml:263
msgid ""
"The tonemapping mode to use. Tonemapping is the process that \"converts\" "
"HDR values to be suitable for rendering on a LDR display. (Godot doesn't "
"support rendering on HDR displays yet.)"
msgstr ""
-#: doc/classes/Environment.xml:242
+#: doc/classes/Environment.xml:266
msgid ""
"The white reference value for tonemapping. Only effective if the [member "
"tonemap_mode] isn't set to [constant TONE_MAPPER_LINEAR]."
msgstr ""
-#: doc/classes/Environment.xml:247
+#: doc/classes/Environment.xml:271
msgid ""
"Clears the background using the clear color defined in [member "
"ProjectSettings.rendering/environment/default_clear_color]."
msgstr ""
-#: doc/classes/Environment.xml:250
+#: doc/classes/Environment.xml:274
msgid "Clears the background using a custom clear color."
msgstr ""
-#: doc/classes/Environment.xml:253
+#: doc/classes/Environment.xml:277
msgid "Displays a user-defined sky in the background."
msgstr ""
-#: doc/classes/Environment.xml:256
+#: doc/classes/Environment.xml:280
msgid "Displays a [CanvasLayer] in the background."
msgstr ""
-#: doc/classes/Environment.xml:259
+#: doc/classes/Environment.xml:283
msgid ""
"Keeps on screen every pixel drawn in the background. This is the fastest "
"background mode, but it can only be safely used in fully-interior scenes (no "
@@ -20368,107 +20914,107 @@ msgid ""
"is visible, \"ghost trail\" artifacts will be visible when moving the camera."
msgstr ""
-#: doc/classes/Environment.xml:262 doc/classes/RenderingServer.xml:3446
+#: doc/classes/Environment.xml:286 doc/classes/RenderingServer.xml:3457
msgid "Displays a camera feed in the background."
msgstr ""
-#: doc/classes/Environment.xml:265
+#: doc/classes/Environment.xml:289
msgid "Represents the size of the [enum BGMode] enum."
msgstr ""
-#: doc/classes/Environment.xml:268 doc/classes/RenderingServer.xml:3452
+#: doc/classes/Environment.xml:292 doc/classes/RenderingServer.xml:3463
msgid ""
"Gather ambient light from whichever source is specified as the background."
msgstr ""
-#: doc/classes/Environment.xml:271 doc/classes/RenderingServer.xml:3455
+#: doc/classes/Environment.xml:295 doc/classes/RenderingServer.xml:3466
msgid "Disable ambient light."
msgstr ""
-#: doc/classes/Environment.xml:274 doc/classes/RenderingServer.xml:3458
+#: doc/classes/Environment.xml:298 doc/classes/RenderingServer.xml:3469
msgid "Specify a specific [Color] for ambient light."
msgstr ""
-#: doc/classes/Environment.xml:277 doc/classes/RenderingServer.xml:3461
+#: doc/classes/Environment.xml:301 doc/classes/RenderingServer.xml:3472
msgid ""
"Gather ambient light from the [Sky] regardless of what the background is."
msgstr ""
-#: doc/classes/Environment.xml:280 doc/classes/RenderingServer.xml:3464
+#: doc/classes/Environment.xml:304 doc/classes/RenderingServer.xml:3475
msgid "Use the background for reflections."
msgstr ""
-#: doc/classes/Environment.xml:283 doc/classes/RenderingServer.xml:3467
+#: doc/classes/Environment.xml:307 doc/classes/RenderingServer.xml:3478
msgid "Disable reflections."
msgstr ""
-#: doc/classes/Environment.xml:286 doc/classes/RenderingServer.xml:3470
+#: doc/classes/Environment.xml:310 doc/classes/RenderingServer.xml:3481
msgid "Use the [Sky] for reflections regardless of what the background is."
msgstr ""
-#: doc/classes/Environment.xml:289 doc/classes/RenderingServer.xml:3473
+#: doc/classes/Environment.xml:313
+msgid ""
+"Linear tonemapper operator. Reads the linear data and passes it on "
+"unmodified."
+msgstr ""
+
+#: doc/classes/Environment.xml:316
+msgid ""
+"Reinhardt tonemapper operator. Performs a variation on rendered pixels' "
+"colors by this formula: [code]color = color / (1 + color)[/code]."
+msgstr ""
+
+#: doc/classes/Environment.xml:319
+msgid "Filmic tonemapper operator."
+msgstr ""
+
+#: doc/classes/Environment.xml:322
+msgid "Academy Color Encoding System tonemapper operator."
+msgstr ""
+
+#: doc/classes/Environment.xml:325 doc/classes/RenderingServer.xml:3484
msgid ""
"Additive glow blending mode. Mostly used for particles, glows (bloom), lens "
"flare, bright sources."
msgstr ""
-#: doc/classes/Environment.xml:292 doc/classes/RenderingServer.xml:3476
+#: doc/classes/Environment.xml:328 doc/classes/RenderingServer.xml:3487
msgid ""
"Screen glow blending mode. Increases brightness, used frequently with bloom."
msgstr ""
-#: doc/classes/Environment.xml:295 doc/classes/RenderingServer.xml:3479
+#: doc/classes/Environment.xml:331 doc/classes/RenderingServer.xml:3490
msgid ""
"Soft light glow blending mode. Modifies contrast, exposes shadows and "
"highlights (vivid bloom)."
msgstr ""
-#: doc/classes/Environment.xml:298 doc/classes/RenderingServer.xml:3482
+#: doc/classes/Environment.xml:334 doc/classes/RenderingServer.xml:3493
msgid ""
"Replace glow blending mode. Replaces all pixels' color by the glow value. "
"This can be used to simulate a full-screen blur effect by tweaking the glow "
"parameters to match the original image's brightness."
msgstr ""
-#: doc/classes/Environment.xml:301 doc/classes/RenderingServer.xml:3485
+#: doc/classes/Environment.xml:337 doc/classes/RenderingServer.xml:3496
msgid ""
"Mixes the glow with the underlying color to avoid increasing brightness as "
"much while still maintaining a glow effect."
msgstr ""
-#: doc/classes/Environment.xml:304
-msgid ""
-"Linear tonemapper operator. Reads the linear data and passes it on "
-"unmodified."
-msgstr ""
-
-#: doc/classes/Environment.xml:307
-msgid ""
-"Reinhardt tonemapper operator. Performs a variation on rendered pixels' "
-"colors by this formula: [code]color = color / (1 + color)[/code]."
-msgstr ""
-
-#: doc/classes/Environment.xml:310
-msgid "Filmic tonemapper operator."
-msgstr ""
-
-#: doc/classes/Environment.xml:313
-msgid "Academy Color Encoding System tonemapper operator."
-msgstr ""
-
-#: doc/classes/Environment.xml:316
+#: doc/classes/Environment.xml:340
msgid "No blur for the screen-space ambient occlusion effect (fastest)."
msgstr ""
-#: doc/classes/Environment.xml:319
+#: doc/classes/Environment.xml:343
msgid "1×1 blur for the screen-space ambient occlusion effect."
msgstr ""
-#: doc/classes/Environment.xml:322
+#: doc/classes/Environment.xml:346
msgid "2×2 blur for the screen-space ambient occlusion effect."
msgstr ""
-#: doc/classes/Environment.xml:325
+#: doc/classes/Environment.xml:349
msgid ""
"3×3 blur for the screen-space ambient occlusion effect. Increases the radius "
"of the blur for a smoother look, but can result in checkerboard-like "
@@ -20553,14 +21099,17 @@ msgid ""
" var content = file.get_as_text()\n"
" file.close()\n"
" return content\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"In the example above, the file will be saved in the user data folder as "
+"specified in the [url=https://docs.godotengine.org/en/latest/tutorials/io/"
+"data_paths.html]Data paths[/url] documentation."
msgstr ""
-#: doc/classes/File.xml:32
+#: doc/classes/File.xml:33
msgid "Closes the currently opened file."
msgstr ""
-#: doc/classes/File.xml:39
+#: doc/classes/File.xml:40
msgid ""
"Returns [code]true[/code] if the file cursor has read past the end of the "
"file.\n"
@@ -20571,7 +21120,7 @@ msgid ""
"get_position] to implement a custom logic."
msgstr ""
-#: doc/classes/File.xml:49
+#: doc/classes/File.xml:50
msgid ""
"Returns [code]true[/code] if the file exists in the given path.\n"
"[b]Note:[/b] Many resources types are imported (e.g. textures or sound "
@@ -20584,41 +21133,41 @@ msgid ""
"source asset is present in [code]res://[/code], but fail when exported)."
msgstr ""
-#: doc/classes/File.xml:57
+#: doc/classes/File.xml:58
msgid ""
"Returns the next 16 bits from the file as an integer. See [method store_16] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:64
+#: doc/classes/File.xml:65
msgid ""
"Returns the next 32 bits from the file as an integer. See [method store_32] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:71
+#: doc/classes/File.xml:72
msgid ""
"Returns the next 64 bits from the file as an integer. See [method store_64] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:78
+#: doc/classes/File.xml:79
msgid ""
"Returns the next 8 bits from the file as an integer. See [method store_8] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:85
+#: doc/classes/File.xml:86
msgid ""
"Returns the whole file as a [String].\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:95
+#: doc/classes/File.xml:96
msgid "Returns next [code]len[/code] bytes of the file as a [PackedByteArray]."
msgstr ""
-#: doc/classes/File.xml:104
+#: doc/classes/File.xml:105
msgid ""
"Returns the next value of the file in CSV (Comma-Separated Values) format. "
"You can pass a different delimiter [code]delim[/code] to use other than the "
@@ -20627,37 +21176,37 @@ msgid ""
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:112
+#: doc/classes/File.xml:113
msgid "Returns the next 64 bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:119
+#: doc/classes/File.xml:120
msgid ""
"Returns the last error that happened when trying to perform operations. "
"Compare with the [code]ERR_FILE_*[/code] constants from [enum Error]."
msgstr ""
-#: doc/classes/File.xml:126
+#: doc/classes/File.xml:127
msgid "Returns the next 32 bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:133
+#: doc/classes/File.xml:134
msgid "Returns the size of the file in bytes."
msgstr ""
-#: doc/classes/File.xml:140
+#: doc/classes/File.xml:141
msgid ""
"Returns the next line of the file as a [String].\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:150
+#: doc/classes/File.xml:151
msgid ""
"Returns an MD5 String representing the file at the given path or an empty "
"[String] on failure."
msgstr ""
-#: doc/classes/File.xml:159
+#: doc/classes/File.xml:160
msgid ""
"Returns the last time the [code]file[/code] was modified in unix timestamp "
"format or returns a [String] \"ERROR IN [code]file[/code]\". This unix "
@@ -20665,35 +21214,35 @@ msgid ""
"get_datetime_from_unix_time]."
msgstr ""
-#: doc/classes/File.xml:166
+#: doc/classes/File.xml:167
msgid ""
"Returns a [String] saved in Pascal format from the file.\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:174
+#: doc/classes/File.xml:175
msgid "Returns the path as a [String] for the current open file."
msgstr ""
-#: doc/classes/File.xml:181
+#: doc/classes/File.xml:182
msgid "Returns the absolute path as a [String] for the current open file."
msgstr ""
-#: doc/classes/File.xml:188
+#: doc/classes/File.xml:189
msgid "Returns the file cursor's position."
msgstr ""
-#: doc/classes/File.xml:195
+#: doc/classes/File.xml:196
msgid "Returns the next bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:204
+#: doc/classes/File.xml:205
msgid ""
"Returns a SHA-256 [String] representing the file at the given path or an "
"empty [String] on failure."
msgstr ""
-#: doc/classes/File.xml:213
+#: doc/classes/File.xml:214
msgid ""
"Returns the next [Variant] value from the file. If [code]allow_objects[/"
"code] is [code]true[/code], decoding objects is allowed.\n"
@@ -20702,37 +21251,38 @@ msgid ""
"to avoid potential security threats such as remote code execution."
msgstr ""
-#: doc/classes/File.xml:221
+#: doc/classes/File.xml:222
msgid "Returns [code]true[/code] if the file is currently opened."
msgstr ""
-#: doc/classes/File.xml:232
+#: doc/classes/File.xml:233
msgid "Opens the file for writing or reading, depending on the flags."
msgstr ""
-#: doc/classes/File.xml:245
+#: doc/classes/File.xml:246
msgid "Opens a compressed file for reading or writing."
msgstr ""
-#: doc/classes/File.xml:258
+#: doc/classes/File.xml:259
msgid ""
"Opens an encrypted file in write or read mode. You need to pass a binary key "
-"to encrypt/decrypt it."
+"to encrypt/decrypt it.\n"
+"[b]Note:[/b] The provided key must be 32 bytes long."
msgstr ""
-#: doc/classes/File.xml:271
+#: doc/classes/File.xml:273
msgid ""
"Opens an encrypted file in write or read mode. You need to pass a password "
"to encrypt/decrypt it."
msgstr ""
-#: doc/classes/File.xml:280
+#: doc/classes/File.xml:282
msgid ""
"Changes the file reading/writing cursor to the specified position (in bytes "
"from the beginning of the file)."
msgstr ""
-#: doc/classes/File.xml:289
+#: doc/classes/File.xml:291
msgid ""
"Changes the file reading/writing cursor to the specified position (in bytes "
"from the end of the file).\n"
@@ -20740,7 +21290,7 @@ msgid ""
"cursor will be at the end of the file."
msgstr ""
-#: doc/classes/File.xml:299
+#: doc/classes/File.xml:301
msgid ""
"Stores an integer as 16 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, "
@@ -20768,7 +21318,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/File.xml:328
+#: doc/classes/File.xml:330
msgid ""
"Stores an integer as 32 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, "
@@ -20777,14 +21327,14 @@ msgid ""
"(see [method store_16] for an example)."
msgstr ""
-#: doc/classes/File.xml:339
+#: doc/classes/File.xml:341
msgid ""
"Stores an integer as 64 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] must lie in the interval [code][-2^63, "
"2^63 - 1][/code] (i.e. be a valid [int] value)."
msgstr ""
-#: doc/classes/File.xml:349
+#: doc/classes/File.xml:351
msgid ""
"Stores an integer as 8 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, 255]"
@@ -20793,11 +21343,11 @@ msgid ""
"(see [method store_16] for an example)."
msgstr ""
-#: doc/classes/File.xml:360
+#: doc/classes/File.xml:362
msgid "Stores the given array of bytes in the file."
msgstr ""
-#: doc/classes/File.xml:371
+#: doc/classes/File.xml:373
msgid ""
"Store the given [PackedStringArray] in the file as a line formatted in the "
"CSV (Comma-Separated Values) format. You can pass a different delimiter "
@@ -20806,45 +21356,45 @@ msgid ""
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:381
+#: doc/classes/File.xml:383
msgid "Stores a floating-point number as 64 bits in the file."
msgstr ""
-#: doc/classes/File.xml:390
+#: doc/classes/File.xml:392
msgid "Stores a floating-point number as 32 bits in the file."
msgstr ""
-#: doc/classes/File.xml:399
+#: doc/classes/File.xml:401
msgid ""
"Stores the given [String] as a line in the file.\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:409
+#: doc/classes/File.xml:411
msgid ""
"Stores the given [String] as a line in the file in Pascal format (i.e. also "
"store the length of the string).\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:419
+#: doc/classes/File.xml:421
msgid "Stores a floating-point number in the file."
msgstr ""
-#: doc/classes/File.xml:428
+#: doc/classes/File.xml:430
msgid ""
"Stores the given [String] in the file.\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:440
+#: doc/classes/File.xml:442
msgid ""
"Stores any Variant value in the file. If [code]full_objects[/code] is "
"[code]true[/code], encoding objects is allowed (and can potentially include "
"code)."
msgstr ""
-#: doc/classes/File.xml:446
+#: doc/classes/File.xml:448
msgid ""
"If [code]true[/code], the file's endianness is swapped. Use this if you're "
"dealing with files written on big-endian machines.\n"
@@ -20852,44 +21402,44 @@ msgid ""
"reset to [code]false[/code] whenever you open the file."
msgstr ""
-#: doc/classes/File.xml:452
+#: doc/classes/File.xml:454
msgid "Opens the file for read operations."
msgstr ""
-#: doc/classes/File.xml:455
+#: doc/classes/File.xml:457
msgid ""
"Opens the file for write operations. Create it if the file does not exist "
"and truncate if it exists."
msgstr ""
-#: doc/classes/File.xml:458
+#: doc/classes/File.xml:460
msgid ""
"Opens the file for read and write operations. Does not truncate the file."
msgstr ""
-#: doc/classes/File.xml:461
+#: doc/classes/File.xml:463
msgid ""
"Opens the file for read and write operations. Create it if the file does not "
"exist and truncate if it exists."
msgstr ""
-#: doc/classes/File.xml:464
+#: doc/classes/File.xml:466
msgid "Uses the [url=http://fastlz.org/]FastLZ[/url] compression method."
msgstr ""
-#: doc/classes/File.xml:467
+#: doc/classes/File.xml:469
msgid ""
"Uses the [url=https://en.wikipedia.org/wiki/DEFLATE]DEFLATE[/url] "
"compression method."
msgstr ""
-#: doc/classes/File.xml:470
+#: doc/classes/File.xml:472
msgid ""
"Uses the [url=https://facebook.github.io/zstd/]Zstandard[/url] compression "
"method."
msgstr ""
-#: doc/classes/File.xml:473
+#: doc/classes/File.xml:475
msgid "Uses the [url=https://www.gzip.org/]gzip[/url] compression method."
msgstr ""
@@ -21105,10 +21655,11 @@ msgid ""
"Draw [code]string[/code] into a canvas item using the font at a given "
"position, with [code]modulate[/code] color, and optionally clipping the "
"width. [code]position[/code] specifies the baseline, not the top. To draw "
-"from the top, [i]ascent[/i] must be added to the Y axis."
+"from the top, [i]ascent[/i] must be added to the Y axis.\n"
+"See also [method CanvasItem.draw_string]."
msgstr ""
-#: doc/classes/Font.xml:47
+#: doc/classes/Font.xml:48
msgid ""
"Draw character [code]char[/code] into a canvas item using the font at a "
"given position, with [code]modulate[/code] color, and optionally kerning if "
@@ -21118,39 +21669,39 @@ msgid ""
"making this function useful for drawing strings character by character."
msgstr ""
-#: doc/classes/Font.xml:54
+#: doc/classes/Font.xml:55
msgid "Returns the font ascent (number of pixels above the baseline)."
msgstr ""
-#: doc/classes/Font.xml:65
+#: doc/classes/Font.xml:66
msgid ""
"Returns the size of a character, optionally taking kerning into account if "
"the next character is provided."
msgstr ""
-#: doc/classes/Font.xml:72
+#: doc/classes/Font.xml:73
msgid "Returns the font descent (number of pixels below the baseline)."
msgstr ""
-#: doc/classes/Font.xml:79
+#: doc/classes/Font.xml:80
msgid "Returns the total font height (ascent plus descent) in pixels."
msgstr ""
-#: doc/classes/Font.xml:88
+#: doc/classes/Font.xml:89
msgid "Returns the size of a string, taking kerning and advance into account."
msgstr ""
-#: doc/classes/Font.xml:99
+#: doc/classes/Font.xml:100
msgid ""
"Returns the size that the string would have with word wrapping enabled with "
"a fixed [code]width[/code]."
msgstr ""
-#: doc/classes/Font.xml:106
+#: doc/classes/Font.xml:107
msgid "Returns [code]true[/code] if the font has an outline."
msgstr ""
-#: doc/classes/Font.xml:119
+#: doc/classes/Font.xml:120
msgid ""
"After editing a font (changing size, ascent, char rects, etc.). Call this "
"function to propagate changes to controls that might use it."
@@ -21322,13 +21873,14 @@ msgstr ""
#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:7
msgid ""
-"Calling [method @GDScript.yield] within a function will cause that function "
-"to yield and return its current state as an object of this type. The yielded "
+"FIXME: Outdated docs as of GDScript rewrite in 4.0.\n"
+"Calling [code]yield[/code] within a function will cause that function to "
+"yield and return its current state as an object of this type. The yielded "
"function call can then be resumed later by calling [method resume] on this "
"state object."
msgstr ""
-#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:18
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:19
msgid ""
"Check whether the function call may be resumed. This is not the case if the "
"function state was already resumed.\n"
@@ -21339,12 +21891,12 @@ msgid ""
"script have survived up to that point."
msgstr ""
-#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:28
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:29
msgid ""
"Resume execution of the yielded function call.\n"
-"If handed an argument, return the argument from the [method @GDScript.yield] "
-"call in the yielded function call. You can pass e.g. an [Array] to hand "
-"multiple arguments.\n"
+"If handed an argument, return the argument from the [code]yield[/code] call "
+"in the yielded function call. You can pass e.g. an [Array] to hand multiple "
+"arguments.\n"
"This function returns what the resumed function call returns, possibly "
"another function state if yielded again."
msgstr ""
@@ -21913,10 +22465,20 @@ msgid ""
"code], see [enum PolyJoinType].\n"
"The operation may result in an outer polygon (boundary) and inner polygon "
"(hole) produced which could be distinguished by calling [method "
-"is_polygon_clockwise]."
+"is_polygon_clockwise].\n"
+"[b]Note:[/b] To translate the polygon's vertices specifically, use the "
+"[method Transform2D.xform] method:\n"
+"[codeblock]\n"
+"var polygon = PackedVector2Array([Vector2(0, 0), Vector2(100, 0), "
+"Vector2(100, 100), Vector2(0, 100)])\n"
+"var offset = Vector2(50, 50)\n"
+"polygon = Transform2D(0, offset).xform(polygon)\n"
+"print(polygon) # prints [Vector2(50, 50), Vector2(150, 50), Vector2(150, "
+"150), Vector2(50, 150)]\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/Geometry2D.xml:217
+#: doc/classes/Geometry2D.xml:224
msgid ""
"Inflates or deflates [code]polyline[/code] by [code]delta[/code] units "
"(pixels), producing polygons. If [code]delta[/code] is positive, makes the "
@@ -21932,13 +22494,13 @@ msgid ""
"is_polygon_clockwise]."
msgstr ""
-#: doc/classes/Geometry2D.xml:235
+#: doc/classes/Geometry2D.xml:242
msgid ""
"Returns if [code]point[/code] is inside the triangle specified by [code]a[/"
"code], [code]b[/code] and [code]c[/code]."
msgstr ""
-#: doc/classes/Geometry2D.xml:250
+#: doc/classes/Geometry2D.xml:257
msgid ""
"Checks if the two segments ([code]from_a[/code], [code]to_a[/code]) and "
"([code]from_b[/code], [code]to_b[/code]) intersect. If yes, return the point "
@@ -21946,7 +22508,7 @@ msgid ""
"empty [Variant]."
msgstr ""
-#: doc/classes/Geometry2D.xml:259
+#: doc/classes/Geometry2D.xml:266
msgid ""
"Triangulates the area specified by discrete set of [code]points[/code] such "
"that no point is inside the circumcircle of any resulting triangle. Returns "
@@ -21957,7 +22519,7 @@ msgid ""
"[PackedInt32Array] is returned."
msgstr ""
-#: doc/classes/Geometry2D.xml:268
+#: doc/classes/Geometry2D.xml:275
msgid ""
"Triangulates the polygon specified by the points in [code]polygon[/code]. "
"Returns a [PackedInt32Array] where each triangle consists of three "
@@ -21967,40 +22529,40 @@ msgid ""
"[PackedInt32Array] is returned."
msgstr ""
-#: doc/classes/Geometry2D.xml:274
+#: doc/classes/Geometry2D.xml:281
msgid ""
"Create regions where either subject or clip polygons (or both) are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:277
+#: doc/classes/Geometry2D.xml:284
msgid ""
"Create regions where subject polygons are filled except where clip polygons "
"are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:280
+#: doc/classes/Geometry2D.xml:287
msgid "Create regions where both subject and clip polygons are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:283
+#: doc/classes/Geometry2D.xml:290
msgid ""
"Create regions where either subject or clip polygons are filled but not "
"where both are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:286
+#: doc/classes/Geometry2D.xml:293
msgid ""
"Squaring is applied uniformally at all convex edge joins at [code]1 * delta[/"
"code]."
msgstr ""
-#: doc/classes/Geometry2D.xml:289
+#: doc/classes/Geometry2D.xml:296
msgid ""
"While flattened paths can never perfectly trace an arc, they are "
"approximated by a series of arc chords."
msgstr ""
-#: doc/classes/Geometry2D.xml:292
+#: doc/classes/Geometry2D.xml:299
msgid ""
"There's a necessary limit to mitered joins since offsetting edges that join "
"at very acute angles will produce excessively long and narrow \"spikes\". "
@@ -22008,27 +22570,27 @@ msgid ""
"distance, \"square\" joining is applied."
msgstr ""
-#: doc/classes/Geometry2D.xml:295
+#: doc/classes/Geometry2D.xml:302
msgid ""
"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
"as a polygon."
msgstr ""
-#: doc/classes/Geometry2D.xml:298
+#: doc/classes/Geometry2D.xml:305
msgid ""
"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
"as a polyline."
msgstr ""
-#: doc/classes/Geometry2D.xml:301
+#: doc/classes/Geometry2D.xml:308
msgid "Endpoints are squared off with no extension."
msgstr ""
-#: doc/classes/Geometry2D.xml:304
+#: doc/classes/Geometry2D.xml:311
msgid "Endpoints are squared off and extended by [code]delta[/code] units."
msgstr ""
-#: doc/classes/Geometry2D.xml:307
+#: doc/classes/Geometry2D.xml:314
msgid "Endpoints are rounded off and extended by [code]delta[/code] units."
msgstr ""
@@ -22258,7 +22820,7 @@ msgstr ""
msgid ""
"Bakes the effect from all [GeometryInstance3D]s marked with [constant "
"GeometryInstance3D.GI_MODE_BAKED] and [Light3D]s marked with either "
-"[constant Light3D.BAKE_INDIRECT] or [constant Light3D.BAKE_ALL]. If "
+"[constant Light3D.BAKE_DYNAMIC] or [constant Light3D.BAKE_STATIC]. If "
"[code]create_visual_debug[/code] is [code]true[/code], after baking the "
"light, this will generate a [MultiMesh] that has a cube representing each "
"solid cell with each cube colored to the cell's albedo color. This can be "
@@ -22350,13 +22912,12 @@ msgid ""
msgstr ""
#: modules/mono/doc_classes/GodotSharp.xml:49
-#, fuzzy
msgid ""
"Returns [code]true[/code] if the domain is being finalized, [code]false[/"
"code] otherwise."
msgstr ""
-"Retourne [code]true[/code] (vrai) si la chaîne de caractères commence par la "
-"chaîne de caractères donnée."
+"Retourne [code]true[/code] si la chaîne de caractères commence par la chaîne "
+"de caractères donnée, ou [code]false[/code] le cas échéant."
#: modules/mono/doc_classes/GodotSharp.xml:56
#, fuzzy
@@ -22377,11 +22938,12 @@ msgstr ""
"zéro."
#: modules/mono/doc_classes/GodotSharp.xml:70
-#, fuzzy
msgid ""
"Returns [code]true[/code] if the scripts domain is loaded, [code]false[/"
"code] otherwise."
-msgstr "Retourne [code]true[/code] (vrai) si la chaîne de caractères est vide."
+msgstr ""
+"Retourne [code]true[/code] si la chaîne de caractères est vide, ou "
+"[code]false[/code] le cas échéant."
#: doc/classes/GPUParticles2D.xml:4
msgid "2D particle emitter."
@@ -23155,121 +23717,119 @@ msgstr ""
msgid "Clear all cells."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:53
+#: modules/gridmap/doc_classes/GridMap.xml:49
msgid ""
-"The [MeshLibrary] item index located at the grid-based X, Y and Z "
-"coordinates. If the cell is empty, [constant INVALID_CELL_ITEM] will be "
-"returned."
+"The [MeshLibrary] item index located at the given grid coordinates. If the "
+"cell is empty, [constant INVALID_CELL_ITEM] will be returned."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:66
+#: modules/gridmap/doc_classes/GridMap.xml:58
msgid ""
-"The orientation of the cell at the grid-based X, Y and Z coordinates. -1 is "
-"returned if the cell is empty."
+"The orientation of the cell at the given grid coordinates. [code]-1[/code] "
+"is returned if the cell is empty."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:75 doc/classes/PhysicsBody2D.xml:35
+#: modules/gridmap/doc_classes/GridMap.xml:67 doc/classes/PhysicsBody2D.xml:35
#: doc/classes/PhysicsBody3D.xml:35
msgid "Returns an individual bit on the [member collision_layer]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:84 doc/classes/PhysicsBody2D.xml:44
+#: modules/gridmap/doc_classes/GridMap.xml:76 doc/classes/PhysicsBody2D.xml:44
#: doc/classes/PhysicsBody3D.xml:44
msgid "Returns an individual bit on the [member collision_mask]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:91
+#: modules/gridmap/doc_classes/GridMap.xml:83
msgid ""
"Returns an array of [Transform] and [Mesh] references corresponding to the "
"non-empty cells in the grid. The transforms are specified in world space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:98
+#: modules/gridmap/doc_classes/GridMap.xml:90
msgid ""
"Returns an array of [Vector3] with the non-empty cell coordinates in the "
"grid map."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:121
+#: modules/gridmap/doc_classes/GridMap.xml:109
msgid ""
"Returns the position of a grid cell in the GridMap's local coordinate space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:146
+#: modules/gridmap/doc_classes/GridMap.xml:130
msgid ""
-"Sets the mesh index for the cell referenced by its grid-based X, Y and Z "
-"coordinates.\n"
+"Sets the mesh index for the cell referenced by its grid coordinates.\n"
"A negative item index such as [constant INVALID_CELL_ITEM] will clear the "
"cell.\n"
"Optionally, the item's orientation can be passed. For valid orientation "
"values, see [method Basis.get_orthogonal_index]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:173
+#: modules/gridmap/doc_classes/GridMap.xml:157
msgid "Sets an individual bit on the [member collision_layer]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:184
+#: modules/gridmap/doc_classes/GridMap.xml:168
msgid "Sets an individual bit on the [member collision_mask]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:193
+#: modules/gridmap/doc_classes/GridMap.xml:177
msgid ""
"Returns the coordinates of the grid cell containing the given point.\n"
"[code]pos[/code] should be in the GridMap's local coordinate space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:200
+#: modules/gridmap/doc_classes/GridMap.xml:184
msgid "If [code]true[/code], grid items are centered on the X axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:203
+#: modules/gridmap/doc_classes/GridMap.xml:187
msgid "If [code]true[/code], grid items are centered on the Y axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:206
+#: modules/gridmap/doc_classes/GridMap.xml:190
msgid "If [code]true[/code], grid items are centered on the Z axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:209
+#: modules/gridmap/doc_classes/GridMap.xml:193
msgid ""
"The size of each octant measured in number of cells. This applies to all "
"three axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:212
+#: modules/gridmap/doc_classes/GridMap.xml:196
msgid ""
"The scale of the cell items.\n"
"This does not affect the size of the grid cells themselves, only the items "
"in them. This can be used to make cell items overlap their neighbors."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:216
+#: modules/gridmap/doc_classes/GridMap.xml:200
msgid ""
"The dimensions of the grid's cells.\n"
"This does not affect the size of the meshes. See [member cell_scale]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:220
+#: modules/gridmap/doc_classes/GridMap.xml:204
msgid ""
"The physics layers this GridMap is in.\n"
"GridMaps act as static bodies, meaning they aren't affected by gravity or "
"other forces. They only affect other physics bodies that collide with them."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:224
+#: modules/gridmap/doc_classes/GridMap.xml:208
msgid "The physics layers this GridMap detects collisions in."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:227
+#: modules/gridmap/doc_classes/GridMap.xml:211
msgid "The assigned [MeshLibrary]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:235
+#: modules/gridmap/doc_classes/GridMap.xml:219
msgid "Emitted when [member cell_size] changes."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:241
+#: modules/gridmap/doc_classes/GridMap.xml:225
msgid ""
"Invalid cell item that can be used in [method set_cell_item] to clear cells "
"(or represent an empty cell in [method get_cell_item])."
@@ -23634,27 +24194,33 @@ msgid ""
"server's side.\n"
"For more information on HTTP, see https://developer.mozilla.org/en-US/docs/"
"Web/HTTP (or read RFC 2616 to get it straight from the source: https://tools."
-"ietf.org/html/rfc2616)."
+"ietf.org/html/rfc2616).\n"
+"[b]Note:[/b] When performing HTTP requests from a project exported to HTML5, "
+"keep in mind the remote server may not allow requests from foreign origins "
+"due to [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/"
+"url]. If you host the server in question, you should modify its backend to "
+"allow requests from foreign origins by adding the [code]Access-Control-Allow-"
+"Origin: *[/code] HTTP header."
msgstr ""
-#: doc/classes/HTTPClient.xml:13
+#: doc/classes/HTTPClient.xml:14
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/"
"http_client_class.html"
msgstr ""
-#: doc/classes/HTTPClient.xml:14 doc/classes/HTTPRequest.xml:62
+#: doc/classes/HTTPClient.xml:15 doc/classes/HTTPRequest.xml:71
#: doc/classes/StreamPeerSSL.xml:10
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/ssl_certificates."
"html"
msgstr ""
-#: doc/classes/HTTPClient.xml:21
+#: doc/classes/HTTPClient.xml:22
msgid "Closes the current connection, allowing reuse of this [HTTPClient]."
msgstr ""
-#: doc/classes/HTTPClient.xml:36
+#: doc/classes/HTTPClient.xml:37
msgid ""
"Connects to a host. This needs to be done before any requests are sent.\n"
"The host should not have http:// prepended but will strip the protocol "
@@ -23666,7 +24232,7 @@ msgid ""
"[code]true[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:46
+#: doc/classes/HTTPClient.xml:47
msgid ""
"Returns the response's body length.\n"
"[b]Note:[/b] Some Web servers may not send a body length. In this case, the "
@@ -23674,15 +24240,15 @@ msgid ""
"the body length will also be [code]-1[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:54
+#: doc/classes/HTTPClient.xml:55
msgid "Returns the response's HTTP status code."
msgstr ""
-#: doc/classes/HTTPClient.xml:61
+#: doc/classes/HTTPClient.xml:62
msgid "Returns the response headers."
msgstr ""
-#: doc/classes/HTTPClient.xml:68
+#: doc/classes/HTTPClient.xml:69
msgid ""
"Returns all response headers as a Dictionary of structure [code]{ \"key\": "
"\"value1; value2\" }[/code] where the case-sensitivity of the keys and "
@@ -23697,27 +24263,27 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:82
+#: doc/classes/HTTPClient.xml:83
msgid ""
"Returns a [enum Status] constant. Need to call [method poll] in order to get "
"status updates."
msgstr ""
-#: doc/classes/HTTPClient.xml:89
+#: doc/classes/HTTPClient.xml:90
msgid "If [code]true[/code], this [HTTPClient] has a response available."
msgstr ""
-#: doc/classes/HTTPClient.xml:96
+#: doc/classes/HTTPClient.xml:97
msgid "If [code]true[/code], this [HTTPClient] has a response that is chunked."
msgstr ""
-#: doc/classes/HTTPClient.xml:103
+#: doc/classes/HTTPClient.xml:104
msgid ""
"This needs to be called in order to have any request processed. Check "
"results with [method get_status]."
msgstr ""
-#: doc/classes/HTTPClient.xml:112
+#: doc/classes/HTTPClient.xml:113
msgid ""
"Generates a GET/POST application/x-www-form-urlencoded style query string "
"from a provided dictionary, e.g.:\n"
@@ -23737,11 +24303,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:130
+#: doc/classes/HTTPClient.xml:131
msgid "Reads one chunk from the response."
msgstr ""
-#: doc/classes/HTTPClient.xml:145
+#: doc/classes/HTTPClient.xml:146
msgid ""
"Sends a request to the connected host. The URL parameter is just the part "
"after the host, so for [code]http://somehost.com/index.php[/code], it is "
@@ -23759,7 +24325,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:168
+#: doc/classes/HTTPClient.xml:169
msgid ""
"Sends a raw request to the connected host. The URL parameter is just the "
"part after the host, so for [code]http://somehost.com/index.php[/code], it "
@@ -23769,43 +24335,43 @@ msgid ""
"Sends the body data raw, as a byte array and does not encode it in any way."
msgstr ""
-#: doc/classes/HTTPClient.xml:176
+#: doc/classes/HTTPClient.xml:177
msgid ""
"If [code]true[/code], execution will block until all data is read from the "
"response."
msgstr ""
-#: doc/classes/HTTPClient.xml:179
+#: doc/classes/HTTPClient.xml:180
msgid "The connection to use for this client."
msgstr ""
-#: doc/classes/HTTPClient.xml:182
+#: doc/classes/HTTPClient.xml:183
msgid ""
"The size of the buffer used and maximum bytes to read per iteration. See "
"[method read_response_body_chunk]."
msgstr ""
-#: doc/classes/HTTPClient.xml:187
+#: doc/classes/HTTPClient.xml:188
msgid ""
"HTTP GET method. The GET method requests a representation of the specified "
"resource. Requests using GET should only retrieve data."
msgstr ""
-#: doc/classes/HTTPClient.xml:190
+#: doc/classes/HTTPClient.xml:191
msgid ""
"HTTP HEAD method. The HEAD method asks for a response identical to that of a "
"GET request, but without the response body. This is useful to request "
"metadata like HTTP headers or to check if a resource exists."
msgstr ""
-#: doc/classes/HTTPClient.xml:193
+#: doc/classes/HTTPClient.xml:194
msgid ""
"HTTP POST method. The POST method is used to submit an entity to the "
"specified resource, often causing a change in state or side effects on the "
"server. This is often used for forms and submitting data or uploading files."
msgstr ""
-#: doc/classes/HTTPClient.xml:196
+#: doc/classes/HTTPClient.xml:197
msgid ""
"HTTP PUT method. The PUT method asks to replace all current representations "
"of the target resource with the request payload. (You can think of POST as "
@@ -23813,103 +24379,103 @@ msgid ""
"not make a clear distinction or change their meaning)."
msgstr ""
-#: doc/classes/HTTPClient.xml:199
+#: doc/classes/HTTPClient.xml:200
msgid ""
"HTTP DELETE method. The DELETE method requests to delete the specified "
"resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:202
+#: doc/classes/HTTPClient.xml:203
msgid ""
"HTTP OPTIONS method. The OPTIONS method asks for a description of the "
"communication options for the target resource. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:205
+#: doc/classes/HTTPClient.xml:206
msgid ""
"HTTP TRACE method. The TRACE method performs a message loop-back test along "
"the path to the target resource. Returns the entire HTTP request received in "
"the response body. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:208
+#: doc/classes/HTTPClient.xml:209
msgid ""
"HTTP CONNECT method. The CONNECT method establishes a tunnel to the server "
"identified by the target resource. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:211
+#: doc/classes/HTTPClient.xml:212
msgid ""
"HTTP PATCH method. The PATCH method is used to apply partial modifications "
"to a resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:214
+#: doc/classes/HTTPClient.xml:215
msgid "Represents the size of the [enum Method] enum."
msgstr ""
-#: doc/classes/HTTPClient.xml:217
+#: doc/classes/HTTPClient.xml:218
msgid "Status: Disconnected from the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:220
+#: doc/classes/HTTPClient.xml:221
msgid "Status: Currently resolving the hostname for the given URL into an IP."
msgstr ""
-#: doc/classes/HTTPClient.xml:223
+#: doc/classes/HTTPClient.xml:224
msgid "Status: DNS failure: Can't resolve the hostname for the given URL."
msgstr ""
-#: doc/classes/HTTPClient.xml:226
+#: doc/classes/HTTPClient.xml:227
msgid "Status: Currently connecting to server."
msgstr ""
-#: doc/classes/HTTPClient.xml:229
+#: doc/classes/HTTPClient.xml:230
msgid "Status: Can't connect to the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:232
+#: doc/classes/HTTPClient.xml:233
msgid "Status: Connection established."
msgstr ""
-#: doc/classes/HTTPClient.xml:235
+#: doc/classes/HTTPClient.xml:236
msgid "Status: Currently sending request."
msgstr ""
-#: doc/classes/HTTPClient.xml:238
+#: doc/classes/HTTPClient.xml:239
msgid "Status: HTTP body received."
msgstr ""
-#: doc/classes/HTTPClient.xml:241
+#: doc/classes/HTTPClient.xml:242
msgid "Status: Error in HTTP connection."
msgstr ""
-#: doc/classes/HTTPClient.xml:244
+#: doc/classes/HTTPClient.xml:245
msgid "Status: Error in SSL handshake."
msgstr ""
-#: doc/classes/HTTPClient.xml:247
+#: doc/classes/HTTPClient.xml:248
msgid ""
"HTTP status code [code]100 Continue[/code]. Interim response that indicates "
"everything so far is OK and that the client should continue with the request "
"(or ignore this status if already finished)."
msgstr ""
-#: doc/classes/HTTPClient.xml:250
+#: doc/classes/HTTPClient.xml:251
msgid ""
"HTTP status code [code]101 Switching Protocol[/code]. Sent in response to an "
"[code]Upgrade[/code] request header by the client. Indicates the protocol "
"the server is switching to."
msgstr ""
-#: doc/classes/HTTPClient.xml:253
+#: doc/classes/HTTPClient.xml:254
msgid ""
"HTTP status code [code]102 Processing[/code] (WebDAV). Indicates that the "
"server has received and is processing the request, but no response is "
"available yet."
msgstr ""
-#: doc/classes/HTTPClient.xml:256
+#: doc/classes/HTTPClient.xml:257
msgid ""
"HTTP status code [code]200 OK[/code]. The request has succeeded. Default "
"response for successful requests. Meaning varies depending on the request. "
@@ -23920,14 +24486,14 @@ msgid ""
"server."
msgstr ""
-#: doc/classes/HTTPClient.xml:259
+#: doc/classes/HTTPClient.xml:260
msgid ""
"HTTP status code [code]201 Created[/code]. The request has succeeded and a "
"new resource has been created as a result of it. This is typically the "
"response sent after a PUT request."
msgstr ""
-#: doc/classes/HTTPClient.xml:262
+#: doc/classes/HTTPClient.xml:263
msgid ""
"HTTP status code [code]202 Accepted[/code]. The request has been received "
"but not yet acted upon. It is non-committal, meaning that there is no way in "
@@ -23936,7 +24502,7 @@ msgid ""
"server handles the request, or for batch processing."
msgstr ""
-#: doc/classes/HTTPClient.xml:265
+#: doc/classes/HTTPClient.xml:266
msgid ""
"HTTP status code [code]203 Non-Authoritative Information[/code]. This "
"response code means returned meta-information set is not exact set as "
@@ -23945,14 +24511,14 @@ msgid ""
"instead of this response."
msgstr ""
-#: doc/classes/HTTPClient.xml:268
+#: doc/classes/HTTPClient.xml:269
msgid ""
"HTTP status code [code]204 No Content[/code]. There is no content to send "
"for this request, but the headers may be useful. The user-agent may update "
"its cached headers for this resource with the new ones."
msgstr ""
-#: doc/classes/HTTPClient.xml:271
+#: doc/classes/HTTPClient.xml:272
msgid ""
"HTTP status code [code]205 Reset Content[/code]. The server has fulfilled "
"the request and desires that the client resets the \"document view\" that "
@@ -23960,49 +24526,49 @@ msgid ""
"origin server."
msgstr ""
-#: doc/classes/HTTPClient.xml:274
+#: doc/classes/HTTPClient.xml:275
msgid ""
"HTTP status code [code]206 Partial Content[/code]. This response code is "
"used because of a range header sent by the client to separate download into "
"multiple streams."
msgstr ""
-#: doc/classes/HTTPClient.xml:277
+#: doc/classes/HTTPClient.xml:278
msgid ""
"HTTP status code [code]207 Multi-Status[/code] (WebDAV). A Multi-Status "
"response conveys information about multiple resources in situations where "
"multiple status codes might be appropriate."
msgstr ""
-#: doc/classes/HTTPClient.xml:280
+#: doc/classes/HTTPClient.xml:281
msgid ""
"HTTP status code [code]208 Already Reported[/code] (WebDAV). Used inside a "
"DAV: propstat response element to avoid enumerating the internal members of "
"multiple bindings to the same collection repeatedly."
msgstr ""
-#: doc/classes/HTTPClient.xml:283
+#: doc/classes/HTTPClient.xml:284
msgid ""
"HTTP status code [code]226 IM Used[/code] (WebDAV). The server has fulfilled "
"a GET request for the resource, and the response is a representation of the "
"result of one or more instance-manipulations applied to the current instance."
msgstr ""
-#: doc/classes/HTTPClient.xml:286
+#: doc/classes/HTTPClient.xml:287
msgid ""
"HTTP status code [code]300 Multiple Choice[/code]. The request has more than "
"one possible responses and there is no standardized way to choose one of the "
"responses. User-agent or user should choose one of them."
msgstr ""
-#: doc/classes/HTTPClient.xml:289
+#: doc/classes/HTTPClient.xml:290
msgid ""
"HTTP status code [code]301 Moved Permanently[/code]. Redirection. This "
"response code means the URI of requested resource has been changed. The new "
"URI is usually included in the response."
msgstr ""
-#: doc/classes/HTTPClient.xml:292
+#: doc/classes/HTTPClient.xml:293
msgid ""
"HTTP status code [code]302 Found[/code]. Temporary redirection. This "
"response code means the URI of requested resource has been changed "
@@ -24010,7 +24576,7 @@ msgid ""
"this same URI should be used by the client in future requests."
msgstr ""
-#: doc/classes/HTTPClient.xml:295
+#: doc/classes/HTTPClient.xml:296
msgid ""
"HTTP status code [code]303 See Other[/code]. The server is redirecting the "
"user agent to a different resource, as indicated by a URI in the Location "
@@ -24018,39 +24584,39 @@ msgid ""
"original request."
msgstr ""
-#: doc/classes/HTTPClient.xml:298
+#: doc/classes/HTTPClient.xml:299
msgid ""
"HTTP status code [code]304 Not Modified[/code]. A conditional GET or HEAD "
"request has been received and would have resulted in a 200 OK response if it "
"were not for the fact that the condition evaluated to [code]false[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:301
+#: doc/classes/HTTPClient.xml:302
msgid ""
"HTTP status code [code]305 Use Proxy[/code]. [i]Deprecated. Do not use.[/i]"
msgstr ""
-#: doc/classes/HTTPClient.xml:304
+#: doc/classes/HTTPClient.xml:305
msgid ""
"HTTP status code [code]306 Switch Proxy[/code]. [i]Deprecated. Do not use.[/"
"i]"
msgstr ""
-#: doc/classes/HTTPClient.xml:307
+#: doc/classes/HTTPClient.xml:308
msgid ""
"HTTP status code [code]307 Temporary Redirect[/code]. The target resource "
"resides temporarily under a different URI and the user agent MUST NOT change "
"the request method if it performs an automatic redirection to that URI."
msgstr ""
-#: doc/classes/HTTPClient.xml:310
+#: doc/classes/HTTPClient.xml:311
msgid ""
"HTTP status code [code]308 Permanent Redirect[/code]. The target resource "
"has been assigned a new permanent URI and any future references to this "
"resource ought to use one of the enclosed URIs."
msgstr ""
-#: doc/classes/HTTPClient.xml:313
+#: doc/classes/HTTPClient.xml:314
msgid ""
"HTTP status code [code]400 Bad Request[/code]. The request was invalid. The "
"server cannot or will not process the request due to something that is "
@@ -24059,21 +24625,21 @@ msgid ""
"routing)."
msgstr ""
-#: doc/classes/HTTPClient.xml:316
+#: doc/classes/HTTPClient.xml:317
msgid ""
"HTTP status code [code]401 Unauthorized[/code]. Credentials required. The "
"request has not been applied because it lacks valid authentication "
"credentials for the target resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:319
+#: doc/classes/HTTPClient.xml:320
msgid ""
"HTTP status code [code]402 Payment Required[/code]. This response code is "
"reserved for future use. Initial aim for creating this code was using it for "
"digital payment systems, however this is not currently used."
msgstr ""
-#: doc/classes/HTTPClient.xml:322
+#: doc/classes/HTTPClient.xml:323
msgid ""
"HTTP status code [code]403 Forbidden[/code]. The client does not have access "
"rights to the content, i.e. they are unauthorized, so server is rejecting to "
@@ -24081,7 +24647,7 @@ msgid ""
"known to the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:325
+#: doc/classes/HTTPClient.xml:326
msgid ""
"HTTP status code [code]404 Not Found[/code]. The server can not find "
"requested resource. Either the URL is not recognized or the endpoint is "
@@ -24089,7 +24655,7 @@ msgid ""
"403 to hide existence of a resource if the client is not authorized."
msgstr ""
-#: doc/classes/HTTPClient.xml:328
+#: doc/classes/HTTPClient.xml:329
msgid ""
"HTTP status code [code]405 Method Not Allowed[/code]. The request's HTTP "
"method is known by the server but has been disabled and cannot be used. For "
@@ -24097,7 +24663,7 @@ msgid ""
"GET and HEAD, must never be disabled and should not return this error code."
msgstr ""
-#: doc/classes/HTTPClient.xml:331
+#: doc/classes/HTTPClient.xml:332
msgid ""
"HTTP status code [code]406 Not Acceptable[/code]. The target resource does "
"not have a current representation that would be acceptable to the user "
@@ -24105,21 +24671,21 @@ msgid ""
"request. Used when negotiation content."
msgstr ""
-#: doc/classes/HTTPClient.xml:334
+#: doc/classes/HTTPClient.xml:335
msgid ""
"HTTP status code [code]407 Proxy Authentication Required[/code]. Similar to "
"401 Unauthorized, but it indicates that the client needs to authenticate "
"itself in order to use a proxy."
msgstr ""
-#: doc/classes/HTTPClient.xml:337
+#: doc/classes/HTTPClient.xml:338
msgid ""
"HTTP status code [code]408 Request Timeout[/code]. The server did not "
"receive a complete request message within the time that it was prepared to "
"wait."
msgstr ""
-#: doc/classes/HTTPClient.xml:340
+#: doc/classes/HTTPClient.xml:341
msgid ""
"HTTP status code [code]409 Conflict[/code]. The request could not be "
"completed due to a conflict with the current state of the target resource. "
@@ -24127,47 +24693,47 @@ msgid ""
"conflict and resubmit the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:343
+#: doc/classes/HTTPClient.xml:344
msgid ""
"HTTP status code [code]410 Gone[/code]. The target resource is no longer "
"available at the origin server and this condition is likely permanent."
msgstr ""
-#: doc/classes/HTTPClient.xml:346
+#: doc/classes/HTTPClient.xml:347
msgid ""
"HTTP status code [code]411 Length Required[/code]. The server refuses to "
"accept the request without a defined Content-Length header."
msgstr ""
-#: doc/classes/HTTPClient.xml:349
+#: doc/classes/HTTPClient.xml:350
msgid ""
"HTTP status code [code]412 Precondition Failed[/code]. One or more "
"conditions given in the request header fields evaluated to [code]false[/"
"code] when tested on the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:352
+#: doc/classes/HTTPClient.xml:353
msgid ""
"HTTP status code [code]413 Entity Too Large[/code]. The server is refusing "
"to process a request because the request payload is larger than the server "
"is willing or able to process."
msgstr ""
-#: doc/classes/HTTPClient.xml:355
+#: doc/classes/HTTPClient.xml:356
msgid ""
"HTTP status code [code]414 Request-URI Too Long[/code]. The server is "
"refusing to service the request because the request-target is longer than "
"the server is willing to interpret."
msgstr ""
-#: doc/classes/HTTPClient.xml:358
+#: doc/classes/HTTPClient.xml:359
msgid ""
"HTTP status code [code]415 Unsupported Media Type[/code]. The origin server "
"is refusing to service the request because the payload is in a format not "
"supported by this method on the target resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:361
+#: doc/classes/HTTPClient.xml:362
msgid ""
"HTTP status code [code]416 Requested Range Not Satisfiable[/code]. None of "
"the ranges in the request's Range header field overlap the current extent of "
@@ -24175,21 +24741,21 @@ msgid ""
"to invalid ranges or an excessive request of small or overlapping ranges."
msgstr ""
-#: doc/classes/HTTPClient.xml:364
+#: doc/classes/HTTPClient.xml:365
msgid ""
"HTTP status code [code]417 Expectation Failed[/code]. The expectation given "
"in the request's Expect header field could not be met by at least one of the "
"inbound servers."
msgstr ""
-#: doc/classes/HTTPClient.xml:367
+#: doc/classes/HTTPClient.xml:368
msgid ""
"HTTP status code [code]418 I'm A Teapot[/code]. Any attempt to brew coffee "
"with a teapot should result in the error code \"418 I'm a teapot\". The "
"resulting entity body MAY be short and stout."
msgstr ""
-#: doc/classes/HTTPClient.xml:370
+#: doc/classes/HTTPClient.xml:371
msgid ""
"HTTP status code [code]421 Misdirected Request[/code]. The request was "
"directed at a server that is not able to produce a response. This can be "
@@ -24197,7 +24763,7 @@ msgid ""
"combination of scheme and authority that are included in the request URI."
msgstr ""
-#: doc/classes/HTTPClient.xml:373
+#: doc/classes/HTTPClient.xml:374
msgid ""
"HTTP status code [code]422 Unprocessable Entity[/code] (WebDAV). The server "
"understands the content type of the request entity (hence a 415 Unsupported "
@@ -24206,40 +24772,40 @@ msgid ""
"was unable to process the contained instructions."
msgstr ""
-#: doc/classes/HTTPClient.xml:376
+#: doc/classes/HTTPClient.xml:377
msgid ""
"HTTP status code [code]423 Locked[/code] (WebDAV). The source or destination "
"resource of a method is locked."
msgstr ""
-#: doc/classes/HTTPClient.xml:379
+#: doc/classes/HTTPClient.xml:380
msgid ""
"HTTP status code [code]424 Failed Dependency[/code] (WebDAV). The method "
"could not be performed on the resource because the requested action depended "
"on another action and that action failed."
msgstr ""
-#: doc/classes/HTTPClient.xml:382
+#: doc/classes/HTTPClient.xml:383
msgid ""
"HTTP status code [code]426 Upgrade Required[/code]. The server refuses to "
"perform the request using the current protocol but might be willing to do so "
"after the client upgrades to a different protocol."
msgstr ""
-#: doc/classes/HTTPClient.xml:385
+#: doc/classes/HTTPClient.xml:386
msgid ""
"HTTP status code [code]428 Precondition Required[/code]. The origin server "
"requires the request to be conditional."
msgstr ""
-#: doc/classes/HTTPClient.xml:388
+#: doc/classes/HTTPClient.xml:389
msgid ""
"HTTP status code [code]429 Too Many Requests[/code]. The user has sent too "
"many requests in a given amount of time (see \"rate limiting\"). Back off "
"and increase time between requests or try again later."
msgstr ""
-#: doc/classes/HTTPClient.xml:391
+#: doc/classes/HTTPClient.xml:392
msgid ""
"HTTP status code [code]431 Request Header Fields Too Large[/code]. The "
"server is unwilling to process the request because its header fields are too "
@@ -24247,27 +24813,27 @@ msgid ""
"header fields."
msgstr ""
-#: doc/classes/HTTPClient.xml:394
+#: doc/classes/HTTPClient.xml:395
msgid ""
"HTTP status code [code]451 Response Unavailable For Legal Reasons[/code]. "
"The server is denying access to the resource as a consequence of a legal "
"demand."
msgstr ""
-#: doc/classes/HTTPClient.xml:397
+#: doc/classes/HTTPClient.xml:398
msgid ""
"HTTP status code [code]500 Internal Server Error[/code]. The server "
"encountered an unexpected condition that prevented it from fulfilling the "
"request."
msgstr ""
-#: doc/classes/HTTPClient.xml:400
+#: doc/classes/HTTPClient.xml:401
msgid ""
"HTTP status code [code]501 Not Implemented[/code]. The server does not "
"support the functionality required to fulfill the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:403
+#: doc/classes/HTTPClient.xml:404
msgid ""
"HTTP status code [code]502 Bad Gateway[/code]. The server, while acting as a "
"gateway or proxy, received an invalid response from an inbound server it "
@@ -24275,7 +24841,7 @@ msgid ""
"balancers or proxies."
msgstr ""
-#: doc/classes/HTTPClient.xml:406
+#: doc/classes/HTTPClient.xml:407
msgid ""
"HTTP status code [code]503 Service Unavailable[/code]. The server is "
"currently unable to handle the request due to a temporary overload or "
@@ -24283,7 +24849,7 @@ msgid ""
"again later."
msgstr ""
-#: doc/classes/HTTPClient.xml:409
+#: doc/classes/HTTPClient.xml:410
msgid ""
"HTTP status code [code]504 Gateway Timeout[/code]. The server, while acting "
"as a gateway or proxy, did not receive a timely response from an upstream "
@@ -24291,14 +24857,14 @@ msgid ""
"returned by load balancers or proxies."
msgstr ""
-#: doc/classes/HTTPClient.xml:412
+#: doc/classes/HTTPClient.xml:413
msgid ""
"HTTP status code [code]505 HTTP Version Not Supported[/code]. The server "
"does not support, or refuses to support, the major version of HTTP that was "
"used in the request message."
msgstr ""
-#: doc/classes/HTTPClient.xml:415
+#: doc/classes/HTTPClient.xml:416
msgid ""
"HTTP status code [code]506 Variant Also Negotiates[/code]. The server has an "
"internal configuration error: the chosen variant resource is configured to "
@@ -24306,14 +24872,14 @@ msgid ""
"proper end point in the negotiation process."
msgstr ""
-#: doc/classes/HTTPClient.xml:418
+#: doc/classes/HTTPClient.xml:419
msgid ""
"HTTP status code [code]507 Insufficient Storage[/code]. The method could not "
"be performed on the resource because the server is unable to store the "
"representation needed to successfully complete the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:421
+#: doc/classes/HTTPClient.xml:422
msgid ""
"HTTP status code [code]508 Loop Detected[/code]. The server terminated an "
"operation because it encountered an infinite loop while processing a request "
@@ -24321,14 +24887,14 @@ msgid ""
"failed."
msgstr ""
-#: doc/classes/HTTPClient.xml:424
+#: doc/classes/HTTPClient.xml:425
msgid ""
"HTTP status code [code]510 Not Extended[/code]. The policy for accessing the "
"resource has not been met in the request. The server should send back all "
"the information necessary for the client to issue an extended request."
msgstr ""
-#: doc/classes/HTTPClient.xml:427
+#: doc/classes/HTTPClient.xml:428
msgid ""
"HTTP status code [code]511 Network Authentication Required[/code]. The "
"client needs to authenticate to gain network access."
@@ -24354,12 +24920,21 @@ msgid ""
" http_request.connect(\"request_completed\", self, "
"\"_http_request_completed\")\n"
"\n"
-" # Perform the HTTP request. The URL below returns some JSON as of "
-"writing.\n"
+" # Perform a GET request. The URL below returns JSON as of writing.\n"
" var error = http_request.request(\"https://httpbin.org/get\")\n"
" if error != OK:\n"
" push_error(\"An error occurred in the HTTP request.\")\n"
"\n"
+" # Perform a POST request. The URL below returns JSON as of writing.\n"
+" # Note: Don't make simultaneous requests using a single HTTPRequest "
+"node.\n"
+" # The snippet below is provided for reference only.\n"
+" var body = {\"name\": \"Godette\"}\n"
+" var error = http_request.request(\"https://httpbin.org/post\", [], true, "
+"HTTPClient.METHOD_POST, body)\n"
+" if error != OK:\n"
+" push_error(\"An error occurred in the HTTP request.\")\n"
+"\n"
"\n"
"# Called when the HTTP request is completed.\n"
"func _http_request_completed(result, response_code, headers, body):\n"
@@ -24399,20 +24974,26 @@ msgid ""
" var texture_rect = TextureRect.new()\n"
" add_child(texture_rect)\n"
" texture_rect.texture = texture\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] When performing HTTP requests from a project exported to HTML5, "
+"keep in mind the remote server may not allow requests from foreign origins "
+"due to [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/"
+"url]. If you host the server in question, you should modify its backend to "
+"allow requests from foreign origins by adding the [code]Access-Control-Allow-"
+"Origin: *[/code] HTTP header."
msgstr ""
-#: doc/classes/HTTPRequest.xml:61
+#: doc/classes/HTTPRequest.xml:70
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/"
"http_request_class.html"
msgstr ""
-#: doc/classes/HTTPRequest.xml:69
+#: doc/classes/HTTPRequest.xml:78
msgid "Cancels the current request."
msgstr ""
-#: doc/classes/HTTPRequest.xml:76
+#: doc/classes/HTTPRequest.xml:85
msgid ""
"Returns the response body length.\n"
"[b]Note:[/b] Some Web servers may not send a body length. In this case, the "
@@ -24420,17 +25001,17 @@ msgid ""
"the body length will also be [code]-1[/code]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:84
+#: doc/classes/HTTPRequest.xml:93
msgid "Returns the amount of bytes this HTTPRequest downloaded."
msgstr ""
-#: doc/classes/HTTPRequest.xml:91
+#: doc/classes/HTTPRequest.xml:100
msgid ""
"Returns the current status of the underlying [HTTPClient]. See [enum "
"HTTPClient.Status]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:108
+#: doc/classes/HTTPRequest.xml:117
msgid ""
"Creates request on the underlying [HTTPClient]. If there is no configuration "
"errors, it tries to connect using [method HTTPClient.connect_to_host] and "
@@ -24443,11 +25024,11 @@ msgid ""
"connect to host."
msgstr ""
-#: doc/classes/HTTPRequest.xml:115
+#: doc/classes/HTTPRequest.xml:124
msgid "Maximum allowed size for response bodies."
msgstr ""
-#: doc/classes/HTTPRequest.xml:118
+#: doc/classes/HTTPRequest.xml:127
msgid ""
"The size of the buffer used and maximum bytes to read per iteration. See "
"[member HTTPClient.read_chunk_size].\n"
@@ -24455,63 +25036,63 @@ msgid ""
"files to achieve better speeds at the cost of memory."
msgstr ""
-#: doc/classes/HTTPRequest.xml:122
+#: doc/classes/HTTPRequest.xml:131
msgid "The file to download into. Will output any received file into it."
msgstr ""
-#: doc/classes/HTTPRequest.xml:125
+#: doc/classes/HTTPRequest.xml:134
msgid "Maximum number of allowed redirects."
msgstr ""
-#: doc/classes/HTTPRequest.xml:130
+#: doc/classes/HTTPRequest.xml:139
msgid "If [code]true[/code], multithreading is used to improve performance."
msgstr ""
-#: doc/classes/HTTPRequest.xml:144
+#: doc/classes/HTTPRequest.xml:153
msgid "Emitted when a request is completed."
msgstr ""
-#: doc/classes/HTTPRequest.xml:150
+#: doc/classes/HTTPRequest.xml:159
msgid "Request successful."
msgstr ""
-#: doc/classes/HTTPRequest.xml:155
+#: doc/classes/HTTPRequest.xml:164
msgid "Request failed while connecting."
msgstr ""
-#: doc/classes/HTTPRequest.xml:158
+#: doc/classes/HTTPRequest.xml:167
msgid "Request failed while resolving."
msgstr ""
-#: doc/classes/HTTPRequest.xml:161
+#: doc/classes/HTTPRequest.xml:170
msgid "Request failed due to connection (read/write) error."
msgstr ""
-#: doc/classes/HTTPRequest.xml:164
+#: doc/classes/HTTPRequest.xml:173
msgid "Request failed on SSL handshake."
msgstr ""
-#: doc/classes/HTTPRequest.xml:167
+#: doc/classes/HTTPRequest.xml:176
msgid "Request does not have a response (yet)."
msgstr ""
-#: doc/classes/HTTPRequest.xml:170
+#: doc/classes/HTTPRequest.xml:179
msgid "Request exceeded its maximum size limit, see [member body_size_limit]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:173
+#: doc/classes/HTTPRequest.xml:182
msgid "Request failed (currently unused)."
msgstr ""
-#: doc/classes/HTTPRequest.xml:176
+#: doc/classes/HTTPRequest.xml:185
msgid "HTTPRequest couldn't open the download file."
msgstr ""
-#: doc/classes/HTTPRequest.xml:179
+#: doc/classes/HTTPRequest.xml:188
msgid "HTTPRequest couldn't write to the download file."
msgstr ""
-#: doc/classes/HTTPRequest.xml:182
+#: doc/classes/HTTPRequest.xml:191
msgid "Request reached its maximum redirect limit, see [member max_redirects]."
msgstr ""
@@ -24735,42 +25316,46 @@ msgid "Loads an image from the binary contents of a PNG file."
msgstr ""
#: doc/classes/Image.xml:373
+msgid "Loads an image from the binary contents of a TGA file."
+msgstr ""
+
+#: doc/classes/Image.xml:382
msgid "Loads an image from the binary contents of a WebP file."
msgstr ""
-#: doc/classes/Image.xml:380
+#: doc/classes/Image.xml:389
msgid ""
"Converts the image's data to represent coordinates on a 3D plane. This is "
"used when the image represents a normalmap. A normalmap can add lots of "
"detail to a 3D surface without increasing the polygon count."
msgstr ""
-#: doc/classes/Image.xml:387
+#: doc/classes/Image.xml:396
msgid ""
"Multiplies color values with alpha values. Resulting color values for a "
"pixel are [code](color * alpha)/256[/code]."
msgstr ""
-#: doc/classes/Image.xml:400
+#: doc/classes/Image.xml:409
msgid ""
"Resizes the image to the given [code]width[/code] and [code]height[/code]. "
"New pixels are calculated using [code]interpolation[/code]. See "
"[code]interpolation[/code] constants."
msgstr ""
-#: doc/classes/Image.xml:409
+#: doc/classes/Image.xml:418
msgid ""
"Resizes the image to the nearest power of 2 for the width and height. If "
"[code]square[/code] is [code]true[/code] then set width and height to be the "
"same."
msgstr ""
-#: doc/classes/Image.xml:416
+#: doc/classes/Image.xml:425
msgid ""
"Converts a standard RGBE (Red Green Blue Exponent) image to an sRGB image."
msgstr ""
-#: doc/classes/Image.xml:427
+#: doc/classes/Image.xml:436
msgid ""
"Saves the image as an EXR file to [code]path[/code]. If [code]grayscale[/"
"code] is [code]true[/code] and the image has only one channel, it will be "
@@ -24779,11 +25364,11 @@ msgid ""
"TinyEXR module."
msgstr ""
-#: doc/classes/Image.xml:436
+#: doc/classes/Image.xml:445
msgid "Saves the image as a PNG file to [code]path[/code]."
msgstr ""
-#: doc/classes/Image.xml:455
+#: doc/classes/Image.xml:464
msgid ""
"Sets the [Color] of the pixel at [code](x, y)[/code]. Example:\n"
"[codeblock]\n"
@@ -24793,7 +25378,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Image.xml:471
+#: doc/classes/Image.xml:480
msgid ""
"Sets the [Color] of the pixel at [code](dst.x, dst.y)[/code]. Note that the "
"[code]dst[/code] values must be integers. Example:\n"
@@ -24804,51 +25389,51 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Image.xml:483
+#: doc/classes/Image.xml:492
msgid "Shrinks the image by a factor of 2."
msgstr ""
-#: doc/classes/Image.xml:490
+#: doc/classes/Image.xml:499
msgid "Converts the raw data from the sRGB colorspace to a linear scale."
msgstr ""
-#: doc/classes/Image.xml:496
+#: doc/classes/Image.xml:505
msgid ""
"Holds all of the image's color data in a given format. See [enum Format] "
"constants."
msgstr ""
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:510
msgid "The maximal width allowed for [Image] resources."
msgstr ""
-#: doc/classes/Image.xml:504
+#: doc/classes/Image.xml:513
msgid "The maximal height allowed for [Image] resources."
msgstr ""
-#: doc/classes/Image.xml:507
+#: doc/classes/Image.xml:516
msgid "Texture format with a single 8-bit depth representing luminance."
msgstr ""
-#: doc/classes/Image.xml:510
+#: doc/classes/Image.xml:519
msgid ""
"OpenGL texture format with two values, luminance and alpha each stored with "
"8 bits."
msgstr ""
-#: doc/classes/Image.xml:513
+#: doc/classes/Image.xml:522
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
"bitdepth of 8."
msgstr ""
-#: doc/classes/Image.xml:516
+#: doc/classes/Image.xml:525
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
-#: doc/classes/Image.xml:519
+#: doc/classes/Image.xml:528
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -24856,7 +25441,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:523
+#: doc/classes/Image.xml:532
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -24864,67 +25449,67 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:536
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
-#: doc/classes/Image.xml:532
+#: doc/classes/Image.xml:541
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
-#: doc/classes/Image.xml:535
+#: doc/classes/Image.xml:544
msgid ""
"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
"each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:538
+#: doc/classes/Image.xml:547
msgid ""
"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
"components, each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:541
+#: doc/classes/Image.xml:550
msgid ""
"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
"components, each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:544
+#: doc/classes/Image.xml:553
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 16-"
"bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:556
msgid ""
"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
"each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:550
+#: doc/classes/Image.xml:559
msgid ""
"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
"components, each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:553
+#: doc/classes/Image.xml:562
msgid ""
"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
"components, each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:556
+#: doc/classes/Image.xml:565
msgid ""
"A special OpenGL texture format where the three color components have 9 bits "
"of precision and all three share a single 5-bit exponent."
msgstr ""
-#: doc/classes/Image.xml:559
+#: doc/classes/Image.xml:568
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format that uses Block Compression 1, and is the smallest variation "
@@ -24934,7 +25519,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:563
+#: doc/classes/Image.xml:572
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format that uses Block Compression 2, and color data is interpreted "
@@ -24944,7 +25529,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:567
+#: doc/classes/Image.xml:576
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format also known as Block Compression 3 or BC3 that contains 64 "
@@ -24955,7 +25540,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:571
+#: doc/classes/Image.xml:580
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -24963,7 +25548,7 @@ msgid ""
"DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:574
+#: doc/classes/Image.xml:583
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -24971,7 +25556,7 @@ msgid ""
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:577
+#: doc/classes/Image.xml:586
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -24980,21 +25565,21 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:581
+#: doc/classes/Image.xml:590
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with signed floating-point "
"RGB components."
msgstr ""
-#: doc/classes/Image.xml:584
+#: doc/classes/Image.xml:593
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned floating-point "
"RGB components."
msgstr ""
-#: doc/classes/Image.xml:587
+#: doc/classes/Image.xml:596
msgid ""
"Texture format used on PowerVR-supported mobile platforms, uses 2-bit color "
"depth with no alpha. More information can be found [url=https://en.wikipedia."
@@ -25003,25 +25588,25 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:600
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:603
msgid ""
"Similar to [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with 4-"
"bit color depth and no alpha."
msgstr ""
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:606
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:609
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -25029,7 +25614,7 @@ msgid ""
"standard. This format cannot store an alpha channel."
msgstr ""
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:612
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -25037,7 +25622,7 @@ msgid ""
"unsigned data."
msgstr ""
-#: doc/classes/Image.xml:606
+#: doc/classes/Image.xml:615
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -25045,7 +25630,7 @@ msgid ""
"channel of signed data."
msgstr ""
-#: doc/classes/Image.xml:609
+#: doc/classes/Image.xml:618
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -25053,7 +25638,7 @@ msgid ""
"of unsigned data."
msgstr ""
-#: doc/classes/Image.xml:612
+#: doc/classes/Image.xml:621
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -25061,7 +25646,7 @@ msgid ""
"channels of signed data."
msgstr ""
-#: doc/classes/Image.xml:615
+#: doc/classes/Image.xml:624
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -25071,7 +25656,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:619
+#: doc/classes/Image.xml:628
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -25081,7 +25666,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:623
+#: doc/classes/Image.xml:632
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -25092,31 +25677,31 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:631
+#: doc/classes/Image.xml:640
msgid "Represents the size of the [enum Format] enum."
msgstr ""
-#: doc/classes/Image.xml:634
+#: doc/classes/Image.xml:643
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
-#: doc/classes/Image.xml:637
+#: doc/classes/Image.xml:646
msgid ""
"Performs bilinear interpolation. If the image is resized, it will be blurry. "
"This mode is faster than [constant INTERPOLATE_CUBIC], but it results in "
"lower quality."
msgstr ""
-#: doc/classes/Image.xml:640
+#: doc/classes/Image.xml:649
msgid ""
"Performs cubic interpolation. If the image is resized, it will be blurry. "
"This mode often gives better results compared to [constant "
"INTERPOLATE_BILINEAR], at the cost of being slower."
msgstr ""
-#: doc/classes/Image.xml:643
+#: doc/classes/Image.xml:652
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -25131,55 +25716,55 @@ msgid ""
"a new set will be generated for the resulting image."
msgstr ""
-#: doc/classes/Image.xml:650
+#: doc/classes/Image.xml:659
msgid ""
"Performs Lanczos interpolation. This is the slowest image resizing mode, but "
"it typically gives the best results, especially when downscalng images."
msgstr ""
-#: doc/classes/Image.xml:653
+#: doc/classes/Image.xml:662
msgid "Image does not have alpha."
msgstr ""
-#: doc/classes/Image.xml:656
+#: doc/classes/Image.xml:665
msgid "Image stores alpha in a single bit."
msgstr ""
-#: doc/classes/Image.xml:659
+#: doc/classes/Image.xml:668
msgid "Image uses alpha."
msgstr ""
-#: doc/classes/Image.xml:662
+#: doc/classes/Image.xml:671
msgid "Use S3TC compression."
msgstr ""
-#: doc/classes/Image.xml:665
+#: doc/classes/Image.xml:674
msgid "Use PVRTC2 compression."
msgstr ""
-#: doc/classes/Image.xml:668
+#: doc/classes/Image.xml:677
msgid "Use PVRTC4 compression."
msgstr ""
-#: doc/classes/Image.xml:671
+#: doc/classes/Image.xml:680
msgid "Use ETC compression."
msgstr ""
-#: doc/classes/Image.xml:674
+#: doc/classes/Image.xml:683
msgid "Use ETC2 compression."
msgstr ""
-#: doc/classes/Image.xml:689
+#: doc/classes/Image.xml:698
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
-#: doc/classes/Image.xml:692
+#: doc/classes/Image.xml:701
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
-#: doc/classes/Image.xml:695
+#: doc/classes/Image.xml:704
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -26001,7 +26586,7 @@ msgid "Contains mouse click information. See [method Node._input]."
msgstr ""
#: doc/classes/InputEventMouseButton.xml:10
-#: doc/classes/InputEventMouseMotion.xml:10
+#: doc/classes/InputEventMouseMotion.xml:11
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/inputs/"
"mouse_and_input_coordinates.html"
@@ -26038,29 +26623,36 @@ msgstr ""
#: doc/classes/InputEventMouseMotion.xml:7
msgid ""
"Contains mouse and pen motion information. Supports relative, absolute "
-"positions and speed. See [method Node._input]."
+"positions and speed. See [method Node._input].\n"
+"[b]Note:[/b] By default, this event is only emitted once per frame rendered "
+"at most. If you need more precise input reporting, call [method Input."
+"set_use_accumulated_input] with [code]false[/code] to make events emitted as "
+"often as possible. If you use InputEventMouseMotion to draw lines, consider "
+"implementing [url=https://en.wikipedia.org/wiki/Bresenham"
+"%27s_line_algorithm]Bresenham's line algorithm[/url] as well to avoid "
+"visible gaps in lines if the user is moving the mouse quickly."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:16
+#: doc/classes/InputEventMouseMotion.xml:17
msgid ""
"Represents the pressure the user puts on the pen. Ranges from [code]0.0[/"
"code] to [code]1.0[/code]."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:19
+#: doc/classes/InputEventMouseMotion.xml:20
msgid ""
"The mouse position relative to the previous position (position at the last "
-"frame). \n"
+"frame).\n"
"[b]Note:[/b] Since [InputEventMouseMotion] is only emitted when the mouse "
"moves, the last event won't have a relative position of [code]Vector2(0, 0)[/"
"code] when the user stops moving the mouse."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:23
+#: doc/classes/InputEventMouseMotion.xml:24
msgid "The mouse speed in pixels per second."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:26
+#: doc/classes/InputEventMouseMotion.xml:27
msgid ""
"Represents the angles of tilt of the pen. Positive X-coordinate value "
"indicates a tilt to the right. Positive Y-coordinate value indicates a tilt "
@@ -26950,14 +27542,17 @@ msgstr ""
#: doc/classes/JSON.xml:18
msgid ""
-"Parses a JSON encoded string and returns a [JSONParseResult] containing the "
+"Parses a JSON-encoded string and returns a [JSONParseResult] containing the "
"result."
msgstr ""
#: doc/classes/JSON.xml:31
msgid ""
"Converts a [Variant] var to JSON text and returns the result. Useful for "
-"serializing data to store or send over the network."
+"serializing data to store or send over the network.\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, converting a Variant to JSON text "
+"will convert all numerical values to [float] types."
msgstr ""
#: doc/classes/JSONParseResult.xml:4
@@ -26980,14 +27575,14 @@ msgstr ""
#: doc/classes/JSONParseResult.xml:18
msgid ""
-"The line number where the error occurred if JSON source was not successfully "
-"parsed."
+"The line number where the error occurred if the JSON source was not "
+"successfully parsed."
msgstr ""
#: doc/classes/JSONParseResult.xml:21
msgid ""
-"The error message if JSON source was not successfully parsed. See the [enum "
-"Error] constants."
+"The error message if the JSON source was not successfully parsed. See the "
+"[enum Error] constants."
msgstr ""
#: doc/classes/JSONParseResult.xml:24
@@ -26995,11 +27590,11 @@ msgid ""
"A [Variant] containing the parsed JSON. Use [method @GDScript.typeof] or the "
"[code]is[/code] keyword to check if it is what you expect. For example, if "
"the JSON source starts with curly braces ([code]{}[/code]), a [Dictionary] "
-"will be returned. If the JSON source starts with braces ([code][][/code]), "
+"will be returned. If the JSON source starts with brackets ([code][][/code]), "
"an [Array] will be returned.\n"
"[b]Note:[/b] The JSON specification does not define integer or float types, "
-"but only a number type. Therefore, parsing a JSON text will convert all "
-"numerical values to float types.\n"
+"but only a [i]number[/i] type. Therefore, parsing a JSON text will convert "
+"all numerical values to [float] types.\n"
"[b]Note:[/b] JSON objects do not preserve key order like Godot dictionaries, "
"thus, you should not rely on keys being in a certain order if a dictionary "
"is constructed from JSON. In contrast, JSON arrays retain the order of their "
@@ -27009,7 +27604,7 @@ msgid ""
"if typeof(p.result) == TYPE_ARRAY:\n"
" print(p.result[0]) # Prints \"hello\"\n"
"else:\n"
-" print(\"unexpected results\")\n"
+" push_error(\"Unexpected results.\")\n"
"[/codeblock]"
msgstr ""
@@ -27125,7 +27720,7 @@ msgid ""
"simulation will run at an incorrect speed.\n"
"[code]linear_velocity[/code] is the velocity vector in pixels per second. "
"Unlike in [method move_and_collide], you should [i]not[/i] multiply it by "
-"[code]delta[/code] — the physics engine handles applying the velocity. \n"
+"[code]delta[/code] — the physics engine handles applying the velocity.\n"
"[code]up_direction[/code] is the up direction, used to determine what is a "
"wall and what is a floor or a ceiling. If set to the default value of "
"[code]Vector2(0, 0)[/code], everything is considered a wall. This is useful "
@@ -27241,7 +27836,7 @@ msgid ""
"[code]linear_velocity[/code] is the velocity vector (typically meters per "
"second). Unlike in [method move_and_collide], you should [i]not[/i] multiply "
"it by [code]delta[/code] — the physics engine handles applying the "
-"velocity. \n"
+"velocity.\n"
"[code]up_direction[/code] is the up direction, used to determine what is a "
"wall and what is a floor or a ceiling. If set to the default value of "
"[code]Vector3(0, 0, 0)[/code], everything is considered a wall.\n"
@@ -27970,17 +28565,6 @@ msgid ""
"[b]Note:[/b] Hiding a light does [i]not[/i] affect baking."
msgstr ""
-#: doc/classes/Light3D.xml:152
-msgid "Only indirect lighting will be baked (default)."
-msgstr ""
-
-#: doc/classes/Light3D.xml:155
-msgid ""
-"Both direct and indirect light will be baked.\n"
-"[b]Note:[/b] You should hide the light if you don't want it to appear twice "
-"(dynamic and baked)."
-msgstr ""
-
#: doc/classes/LightOccluder2D.xml:4
msgid "Occludes light cast by a Light2D, casting shadows."
msgstr ""
@@ -28259,136 +28843,142 @@ msgstr ""
msgid "Text alignment as defined in the [enum Align] enum."
msgstr ""
-#: doc/classes/LineEdit.xml:120 doc/classes/TextEdit.xml:406
+#: doc/classes/LineEdit.xml:120 doc/classes/TextEdit.xml:358
msgid "If [code]true[/code], the caret (visual cursor) blinks."
msgstr ""
-#: doc/classes/LineEdit.xml:123 doc/classes/TextEdit.xml:409
+#: doc/classes/LineEdit.xml:123 doc/classes/TextEdit.xml:361
msgid "Duration (in seconds) of a caret's blinking cycle."
msgstr ""
-#: doc/classes/LineEdit.xml:126
+#: doc/classes/LineEdit.xml:128
msgid ""
"The cursor's position inside the [LineEdit]. When set, the text may scroll "
"to accommodate it."
msgstr ""
-#: doc/classes/LineEdit.xml:129
+#: doc/classes/LineEdit.xml:131
msgid ""
"If [code]true[/code], the [LineEdit] will show a clear button if [code]text[/"
"code] is not empty, which can be used to clear the text quickly."
msgstr ""
-#: doc/classes/LineEdit.xml:132
+#: doc/classes/LineEdit.xml:134
msgid "If [code]true[/code], the context menu will appear when right-clicked."
msgstr ""
-#: doc/classes/LineEdit.xml:135
+#: doc/classes/LineEdit.xml:137
msgid ""
"If [code]false[/code], existing text cannot be modified and new text cannot "
"be added."
msgstr ""
-#: doc/classes/LineEdit.xml:138
+#: doc/classes/LineEdit.xml:140
msgid ""
"If [code]true[/code], the [LineEdit] width will increase to stay longer than "
"the [member text]. It will [b]not[/b] compress if the [member text] is "
"shortened."
msgstr ""
-#: doc/classes/LineEdit.xml:142
+#: doc/classes/LineEdit.xml:144
msgid ""
"Maximum amount of characters that can be entered inside the [LineEdit]. If "
"[code]0[/code], there is no limit."
msgstr ""
-#: doc/classes/LineEdit.xml:146
+#: doc/classes/LineEdit.xml:148
msgid ""
"Opacity of the [member placeholder_text]. From [code]0[/code] to [code]1[/"
"code]."
msgstr ""
-#: doc/classes/LineEdit.xml:149
+#: doc/classes/LineEdit.xml:151
msgid ""
"Text shown when the [LineEdit] is empty. It is [b]not[/b] the [LineEdit]'s "
"default value (see [member text])."
msgstr ""
-#: doc/classes/LineEdit.xml:152
+#: doc/classes/LineEdit.xml:154
msgid ""
"Sets the icon that will appear in the right end of the [LineEdit] if there's "
"no [member text], or always, if [member clear_button_enabled] is set to "
"[code]false[/code]."
msgstr ""
-#: doc/classes/LineEdit.xml:155
+#: doc/classes/LineEdit.xml:157
msgid ""
"If [code]true[/code], every character is replaced with the secret character "
"(see [member secret_character])."
msgstr ""
-#: doc/classes/LineEdit.xml:158
+#: doc/classes/LineEdit.xml:160
msgid ""
"The character to use to mask secret input (defaults to \"*\"). Only a single "
"character can be used as the secret character."
msgstr ""
-#: doc/classes/LineEdit.xml:161
+#: doc/classes/LineEdit.xml:163
msgid ""
"If [code]false[/code], it's impossible to select the text using mouse nor "
"keyboard."
msgstr ""
-#: doc/classes/LineEdit.xml:164
+#: doc/classes/LineEdit.xml:166
msgid "If [code]false[/code], using shortcuts will be disabled."
msgstr ""
-#: doc/classes/LineEdit.xml:167
+#: doc/classes/LineEdit.xml:169
msgid ""
"String value of the [LineEdit].\n"
"[b]Note:[/b] Changing text using this property won't emit the [signal "
"text_changed] signal."
msgstr ""
-#: doc/classes/LineEdit.xml:174
+#: doc/classes/LineEdit.xml:173 doc/classes/TextEdit.xml:434
+msgid ""
+"If [code]true[/code], the native virtual keyboard is shown when focused on "
+"platforms that support it."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:179
msgid ""
"Emitted when trying to append text that would overflow the [member "
"max_length]."
msgstr ""
-#: doc/classes/LineEdit.xml:181 doc/classes/TextEdit.xml:525
+#: doc/classes/LineEdit.xml:186 doc/classes/TextEdit.xml:490
msgid "Emitted when the text changes."
msgstr ""
-#: doc/classes/LineEdit.xml:188
+#: doc/classes/LineEdit.xml:193
msgid "Emitted when the user presses [constant KEY_ENTER] on the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:194
+#: doc/classes/LineEdit.xml:199
msgid "Aligns the text on the left-hand side of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:197
+#: doc/classes/LineEdit.xml:202
msgid "Centers the text in the middle of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:200
+#: doc/classes/LineEdit.xml:205
msgid "Aligns the text on the right-hand side of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:203
+#: doc/classes/LineEdit.xml:208
msgid "Stretches whitespaces to fit the [LineEdit]'s width."
msgstr ""
-#: doc/classes/LineEdit.xml:206 doc/classes/TextEdit.xml:540
+#: doc/classes/LineEdit.xml:211 doc/classes/TextEdit.xml:505
msgid "Cuts (copies and clears) the selected text."
msgstr ""
-#: doc/classes/LineEdit.xml:209 doc/classes/TextEdit.xml:543
+#: doc/classes/LineEdit.xml:214 doc/classes/TextEdit.xml:508
msgid "Copies the selected text."
msgstr ""
-#: doc/classes/LineEdit.xml:212
+#: doc/classes/LineEdit.xml:217
msgid ""
"Pastes the clipboard text over the selected text (or at the cursor's "
"position).\n"
@@ -28396,80 +28986,80 @@ msgid ""
"clipboard via [method String.strip_escapes]."
msgstr ""
-#: doc/classes/LineEdit.xml:216
+#: doc/classes/LineEdit.xml:221
msgid "Erases the whole [LineEdit] text."
msgstr ""
-#: doc/classes/LineEdit.xml:219
+#: doc/classes/LineEdit.xml:224
msgid "Selects the whole [LineEdit] text."
msgstr ""
-#: doc/classes/LineEdit.xml:222 doc/classes/TextEdit.xml:555
+#: doc/classes/LineEdit.xml:227 doc/classes/TextEdit.xml:520
msgid "Undoes the previous action."
msgstr ""
-#: doc/classes/LineEdit.xml:225
+#: doc/classes/LineEdit.xml:230
msgid "Reverse the last undo action."
msgstr ""
-#: doc/classes/LineEdit.xml:228 doc/classes/TextEdit.xml:561
+#: doc/classes/LineEdit.xml:233 doc/classes/TextEdit.xml:526
msgid "Represents the size of the [enum MenuItems] enum."
msgstr ""
-#: doc/classes/LineEdit.xml:233
+#: doc/classes/LineEdit.xml:238
msgid "Texture for the clear button. See [member clear_button_enabled]."
msgstr ""
-#: doc/classes/LineEdit.xml:236
+#: doc/classes/LineEdit.xml:241
msgid "Color used as default tint for the clear button."
msgstr ""
-#: doc/classes/LineEdit.xml:239
+#: doc/classes/LineEdit.xml:244
msgid "Color used for the clear button when it's pressed."
msgstr ""
-#: doc/classes/LineEdit.xml:242
+#: doc/classes/LineEdit.xml:247
msgid "Color of the [LineEdit]'s visual cursor (caret)."
msgstr ""
-#: doc/classes/LineEdit.xml:245
+#: doc/classes/LineEdit.xml:250
msgid "Background used when [LineEdit] has GUI focus."
msgstr ""
-#: doc/classes/LineEdit.xml:248
+#: doc/classes/LineEdit.xml:253
msgid "Font used for the text."
msgstr ""
-#: doc/classes/LineEdit.xml:251
+#: doc/classes/LineEdit.xml:256
msgid "Default font color."
msgstr ""
-#: doc/classes/LineEdit.xml:254
+#: doc/classes/LineEdit.xml:259
msgid "Font color for selected text (inside the selection rectangle)."
msgstr ""
-#: doc/classes/LineEdit.xml:257
+#: doc/classes/LineEdit.xml:262
msgid "Font color when editing is disabled."
msgstr ""
-#: doc/classes/LineEdit.xml:260
+#: doc/classes/LineEdit.xml:265
msgid ""
"Minimum horizontal space for the text (not counting the clear button and "
"content margins). This value is measured in count of space characters (i.e. "
"this amount of space characters can be displayed without scrolling)."
msgstr ""
-#: doc/classes/LineEdit.xml:263
+#: doc/classes/LineEdit.xml:268
msgid "Default background for the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:266
+#: doc/classes/LineEdit.xml:271
msgid ""
"Background used when [LineEdit] is in read-only mode ([member editable] is "
"set to [code]false[/code])."
msgstr ""
-#: doc/classes/LineEdit.xml:269
+#: doc/classes/LineEdit.xml:274
msgid "Color of the selection rectangle."
msgstr ""
@@ -28687,14 +29277,14 @@ msgstr ""
msgid "Emitted when a user responds to a permission request."
msgstr ""
-#: doc/classes/MainLoop.xml:127 doc/classes/Node.xml:948
+#: doc/classes/MainLoop.xml:127 doc/classes/Node.xml:946
msgid ""
"Notification received from the OS when the application is exceeding its "
"allocated memory.\n"
"Specific to the iOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:131 doc/classes/Node.xml:952
+#: doc/classes/MainLoop.xml:131 doc/classes/Node.xml:950
msgid ""
"Notification received when translations may have changed. Can be triggered "
"by the user changing the locale. Can be used to respond to language changes, "
@@ -28702,39 +29292,55 @@ msgid ""
"the built-in translation support, like [method Object.tr]."
msgstr ""
-#: doc/classes/MainLoop.xml:134 doc/classes/Node.xml:955
+#: doc/classes/MainLoop.xml:134 doc/classes/Node.xml:953
msgid ""
"Notification received from the OS when a request for \"About\" information "
"is sent.\n"
"Specific to the macOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:138 doc/classes/Node.xml:959
+#: doc/classes/MainLoop.xml:138 doc/classes/Node.xml:957
msgid ""
"Notification received from Godot's crash handler when the engine is about to "
"crash.\n"
"Implemented on desktop platforms if the crash handler is enabled."
msgstr ""
-#: doc/classes/MainLoop.xml:142 doc/classes/Node.xml:963
+#: doc/classes/MainLoop.xml:142 doc/classes/Node.xml:961
msgid ""
"Notification received from the OS when an update of the Input Method Engine "
"occurs (e.g. change of IME cursor position or composition string).\n"
"Specific to the macOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:146 doc/classes/Node.xml:967
+#: doc/classes/MainLoop.xml:146 doc/classes/Node.xml:965
msgid ""
-"Notification received from the OS when the app is resumed.\n"
+"Notification received from the OS when the application is resumed.\n"
"Specific to the Android platform."
msgstr ""
-#: doc/classes/MainLoop.xml:150 doc/classes/Node.xml:971
+#: doc/classes/MainLoop.xml:150 doc/classes/Node.xml:969
msgid ""
-"Notification received from the OS when the app is paused.\n"
+"Notification received from the OS when the application is paused.\n"
"Specific to the Android platform."
msgstr ""
+#: doc/classes/MainLoop.xml:154 doc/classes/Node.xml:973
+msgid ""
+"Notification received from the OS when the application is focused, i.e. when "
+"changing the focus from the OS desktop or a thirdparty application to any "
+"open window of the Godot instance.\n"
+"Implemented on desktop platforms."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:158 doc/classes/Node.xml:977
+msgid ""
+"Notification received from the OS when the application is defocused, i.e. "
+"when changing the focus from any open window of the Godot instance to the OS "
+"desktop or a thirdparty application.\n"
+"Implemented on desktop platforms."
+msgstr ""
+
#: doc/classes/MarginContainer.xml:4
msgid "Simple margin container."
msgstr ""
@@ -29042,11 +29648,11 @@ msgstr ""
msgid "Render array as triangle strips."
msgstr ""
-#: doc/classes/Mesh.xml:126 doc/classes/RenderingServer.xml:3189
+#: doc/classes/Mesh.xml:126 doc/classes/RenderingServer.xml:3185
msgid "Blend shapes are normalized."
msgstr ""
-#: doc/classes/Mesh.xml:129 doc/classes/RenderingServer.xml:3192
+#: doc/classes/Mesh.xml:129 doc/classes/RenderingServer.xml:3188
msgid "Blend shapes are relative to base weight."
msgstr ""
@@ -29088,37 +29694,37 @@ msgstr ""
msgid "Mesh array uses indices."
msgstr ""
-#: doc/classes/Mesh.xml:159 doc/classes/RenderingServer.xml:3145
+#: doc/classes/Mesh.xml:159 doc/classes/RenderingServer.xml:3141
msgid "Flag used to mark a compressed (half float) normal array."
msgstr ""
-#: doc/classes/Mesh.xml:162 doc/classes/RenderingServer.xml:3148
+#: doc/classes/Mesh.xml:162 doc/classes/RenderingServer.xml:3144
msgid "Flag used to mark a compressed (half float) tangent array."
msgstr ""
-#: doc/classes/Mesh.xml:165 doc/classes/RenderingServer.xml:3151
+#: doc/classes/Mesh.xml:165 doc/classes/RenderingServer.xml:3147
msgid "Flag used to mark a compressed (half float) color array."
msgstr ""
-#: doc/classes/Mesh.xml:168 doc/classes/RenderingServer.xml:3154
+#: doc/classes/Mesh.xml:168 doc/classes/RenderingServer.xml:3150
msgid "Flag used to mark a compressed (half float) UV coordinates array."
msgstr ""
-#: doc/classes/Mesh.xml:171 doc/classes/RenderingServer.xml:3157
+#: doc/classes/Mesh.xml:171 doc/classes/RenderingServer.xml:3153
msgid ""
"Flag used to mark a compressed (half float) UV coordinates array for the "
"second UV coordinates."
msgstr ""
-#: doc/classes/Mesh.xml:174 doc/classes/RenderingServer.xml:3160
+#: doc/classes/Mesh.xml:174 doc/classes/RenderingServer.xml:3156
msgid "Flag used to mark a compressed index array."
msgstr ""
-#: doc/classes/Mesh.xml:177 doc/classes/RenderingServer.xml:3166
+#: doc/classes/Mesh.xml:177 doc/classes/RenderingServer.xml:3162
msgid "Flag used to mark that the array contains 2D vertices."
msgstr ""
-#: doc/classes/Mesh.xml:180 doc/classes/RenderingServer.xml:3163
+#: doc/classes/Mesh.xml:180 doc/classes/RenderingServer.xml:3159
msgid ""
"Used to set flags [constant ARRAY_COMPRESS_NORMAL], [constant "
"ARRAY_COMPRESS_TANGENT], [constant ARRAY_COMPRESS_COLOR], [constant "
@@ -30879,7 +31485,10 @@ msgstr ""
msgid ""
"The number of channels to be used by ENet. Channels are used to separate "
"different kinds of data. In reliable or ordered mode, for example, the "
-"packet delivery order is ensured on a per channel basis."
+"packet delivery order is ensured on a per-channel basis. This is done to "
+"combat latency and reduces ordering restrictions on packets. The delivery "
+"status of a packet in one channel won't stall the delivery of other packets "
+"in another channel."
msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:134
@@ -30906,11 +31515,12 @@ msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:144
msgid ""
"Set the default channel to be used to transfer data. By default, this value "
-"is [code]-1[/code] which means that ENet will only use 2 channels, one for "
-"reliable and one for unreliable packets. Channel [code]0[/code] is reserved, "
-"and cannot be used. Setting this member to any value between [code]0[/code] "
-"and [member channel_count] (excluded) will force ENet to use that channel "
-"for sending data."
+"is [code]-1[/code] which means that ENet will only use 2 channels: one for "
+"reliable packets, and one for unreliable packets. The channel [code]0[/code] "
+"is reserved and cannot be used. Setting this member to any value between "
+"[code]0[/code] and [member channel_count] (excluded) will force ENet to use "
+"that channel for sending data. See [member channel_count] for more "
+"information about ENet channels."
msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:148
@@ -32102,57 +32712,63 @@ msgstr ""
#: doc/classes/Node.xml:930
msgid ""
-"Notification received from the OS when the game window is focused.\n"
-"Implemented on all platforms."
+"Notification received from the OS when the node's parent [Window] is "
+"focused. This may be a change of focus between two windows of the same "
+"engine instance, or from the OS desktop or a third-party application to a "
+"window of the game (in which case [constant "
+"NOTIFICATION_APPLICATION_FOCUS_IN] is also emitted)."
msgstr ""
-#: doc/classes/Node.xml:934
+#: doc/classes/Node.xml:933
msgid ""
-"Notification received from the OS when the game window is unfocused.\n"
-"Implemented on all platforms."
+"Notification received from the OS when the node's parent [Window] is "
+"defocused. This may be a change of focus between two windows of the same "
+"engine instance, or from a window of the game to the OS desktop or a third-"
+"party application (in which case [constant "
+"NOTIFICATION_APPLICATION_FOCUS_OUT] is also emitted)."
msgstr ""
-#: doc/classes/Node.xml:938
+#: doc/classes/Node.xml:936
msgid ""
"Notification received from the OS when a close request is sent (e.g. closing "
"the window with a \"Close\" button or [kbd]Alt + F4[/kbd]).\n"
"Implemented on desktop platforms."
msgstr ""
-#: doc/classes/Node.xml:942
+#: doc/classes/Node.xml:940
msgid ""
"Notification received from the OS when a go back request is sent (e.g. "
"pressing the \"Back\" button on Android).\n"
"Specific to the Android platform."
msgstr ""
-#: doc/classes/Node.xml:975
+#: doc/classes/Node.xml:981
msgid ""
"Inherits pause mode from the node's parent. For the root node, it is "
"equivalent to [constant PAUSE_MODE_STOP]. Default."
msgstr ""
-#: doc/classes/Node.xml:978
+#: doc/classes/Node.xml:984
msgid "Stops processing when the [SceneTree] is paused."
msgstr ""
-#: doc/classes/Node.xml:981
+#: doc/classes/Node.xml:987
msgid "Continue to process regardless of the [SceneTree] pause state."
msgstr ""
-#: doc/classes/Node.xml:984
+#: doc/classes/Node.xml:990
msgid "Duplicate the node's signals."
msgstr ""
-#: doc/classes/Node.xml:987
+#: doc/classes/Node.xml:993
msgid "Duplicate the node's groups."
msgstr ""
-#: doc/classes/Node.xml:990
+#: doc/classes/Node.xml:996
msgid "Duplicate the node's scripts."
msgstr ""
-#: doc/classes/Node.xml:993
+#: doc/classes/Node.xml:999
msgid ""
"Duplicate using instancing.\n"
"An instance stays linked to the original so when the original changes, the "
@@ -32376,12 +32992,6 @@ msgid ""
"changes. [Node3D] will not propagate this by default."
msgstr ""
-#: doc/classes/Node3D.xml:104
-msgid ""
-"Returns whether the node is visible, taking into consideration that its "
-"parents visibility."
-msgstr ""
-
#: doc/classes/Node3D.xml:115
msgid ""
"Rotates itself so that the local -Z axis points towards the [code]target[/"
@@ -32551,7 +33161,10 @@ msgid "Local translation of this node."
msgstr ""
#: doc/classes/Node3D.xml:326
-msgid "If [code]true[/code], this node is drawn."
+msgid ""
+"If [code]true[/code], this node is drawn. The node is only visible if all of "
+"its antecedents are visible as well (in other words, [method "
+"is_visible_in_tree] must return [code]true[/code])."
msgstr ""
#: doc/classes/Node3D.xml:332
@@ -32808,10 +33421,20 @@ msgid ""
"the key exists, even if the value is [code]null[/code].\n"
"Objects also receive notifications. Notifications are a simple way to notify "
"the object about different events, so they can all be handled together. See "
-"[method _notification]."
+"[method _notification].\n"
+"[b]Note:[/b] Unlike references to a [Reference], references to an Object "
+"stored in a variable can become invalid without warning. Therefore, it's "
+"recommended to use [Reference] for data classes instead of [Object]."
msgstr ""
-#: doc/classes/Object.xml:30
+#: doc/classes/Object.xml:23 doc/classes/Reference.xml:12
+#: doc/classes/Resource.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/getting_started/workflow/"
+"best_practices/node_alternatives.html"
+msgstr ""
+
+#: doc/classes/Object.xml:32
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method get].\n"
@@ -32819,7 +33442,7 @@ msgid ""
"code] does not exist."
msgstr ""
-#: doc/classes/Object.xml:38
+#: doc/classes/Object.xml:40
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method get_property_list].\n"
@@ -32831,11 +33454,11 @@ msgid ""
"PropertyUsageFlags])."
msgstr ""
-#: doc/classes/Object.xml:47
+#: doc/classes/Object.xml:49
msgid "Called when the object is initialized."
msgstr ""
-#: doc/classes/Object.xml:56
+#: doc/classes/Object.xml:58
msgid ""
"Called whenever the object receives a notification, which is identified in "
"[code]what[/code] by a constant. The base [Object] has two constants "
@@ -32844,7 +33467,7 @@ msgid ""
"notifications which are also received by this method."
msgstr ""
-#: doc/classes/Object.xml:67
+#: doc/classes/Object.xml:69
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method set].\n"
@@ -32852,7 +33475,7 @@ msgid ""
"exists."
msgstr ""
-#: doc/classes/Object.xml:75
+#: doc/classes/Object.xml:77
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method to_string], and thus the object's representation where it is "
@@ -32861,34 +33484,42 @@ msgid ""
"[code]\"[ClassName:RID]\"[/code]."
msgstr ""
-#: doc/classes/Object.xml:87
+#: doc/classes/Object.xml:89
msgid ""
"Adds a user-defined [code]signal[/code]. Arguments are optional, but can be "
"added as an [Array] of dictionaries, each containing [code]name: String[/"
"code] and [code]type: int[/code] (see [enum Variant.Type]) entries."
msgstr ""
-#: doc/classes/Object.xml:96
+#: doc/classes/Object.xml:98
msgid ""
"Calls the [code]method[/code] on the object and returns the result. This "
"method supports a variable number of arguments, so parameters are passed as "
"a comma separated list. Example:\n"
"[codeblock]\n"
"call(\"set\", \"position\", Vector2(42.0, 0.0))\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] In C#, the method name must be specified as snake_case if it is "
+"defined by a built-in Godot node. This doesn't apply to user-defined methods "
+"where you should use the same convention as in the C# source (typically "
+"PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:108
+#: doc/classes/Object.xml:111
msgid ""
"Calls the [code]method[/code] on the object during idle time. This method "
"supports a variable number of arguments, so parameters are passed as a comma "
"separated list. Example:\n"
"[codeblock]\n"
"call_deferred(\"set\", \"position\", Vector2(42.0, 0.0))\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] In C#, the method name must be specified as snake_case if it is "
+"defined by a built-in Godot node. This doesn't apply to user-defined methods "
+"where you should use the same convention as in the C# source (typically "
+"PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:122
+#: doc/classes/Object.xml:126
msgid ""
"Calls the [code]method[/code] on the object and returns the result. "
"Contrarily to [method call], this method does not support a variable number "
@@ -32898,13 +33529,13 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:132
+#: doc/classes/Object.xml:136
msgid ""
"Returns [code]true[/code] if the object can translate strings. See [method "
"set_message_translation] and [method tr]."
msgstr ""
-#: doc/classes/Object.xml:147
+#: doc/classes/Object.xml:151
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32940,7 +33571,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:174
+#: doc/classes/Object.xml:178
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32951,7 +33582,7 @@ msgid ""
"exists."
msgstr ""
-#: doc/classes/Object.xml:185
+#: doc/classes/Object.xml:189
msgid ""
"Emits the given [code]signal[/code]. The signal must exist, so it should be "
"a built-in signal of this class or one of its parent classes, or a user-"
@@ -32963,24 +33594,28 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:196
+#: doc/classes/Object.xml:200
msgid ""
"Deletes the object from memory. Any pre-existing reference to the freed "
"object will become invalid, e.g. [code]is_instance_valid(object)[/code] will "
"return [code]false[/code]."
msgstr ""
-#: doc/classes/Object.xml:205
+#: doc/classes/Object.xml:209
msgid ""
"Returns the [Variant] value of the given [code]property[/code]. If the "
-"[code]property[/code] doesn't exist, this will return [code]null[/code]."
+"[code]property[/code] doesn't exist, this will return [code]null[/code].\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:212
+#: doc/classes/Object.xml:217
msgid "Returns the object's class as a [String]."
msgstr ""
-#: doc/classes/Object.xml:219
+#: doc/classes/Object.xml:224
msgid ""
"Returns an [Array] of dictionaries with information about signals that are "
"connected to the object.\n"
@@ -32991,7 +33626,7 @@ msgid ""
"connected."
msgstr ""
-#: doc/classes/Object.xml:232
+#: doc/classes/Object.xml:237
msgid ""
"Gets the object's property indexed by the given [NodePath]. The node path "
"should be relative to the current object and can use the colon character "
@@ -32999,26 +33634,26 @@ msgid ""
"\"[/code] or [code]\"material:next_pass:blend_mode\"[/code]."
msgstr ""
-#: doc/classes/Object.xml:239
+#: doc/classes/Object.xml:244
msgid ""
"Returns the object's unique instance ID.\n"
"This ID can be saved in [EncodedObjectAsID], and can be used to retrieve the "
"object instance with [method @GDScript.instance_from_id]."
msgstr ""
-#: doc/classes/Object.xml:249
+#: doc/classes/Object.xml:254
msgid "Returns the object's metadata entry for the given [code]name[/code]."
msgstr ""
-#: doc/classes/Object.xml:256
+#: doc/classes/Object.xml:261
msgid "Returns the object's metadata as a [PackedStringArray]."
msgstr ""
-#: doc/classes/Object.xml:263
+#: doc/classes/Object.xml:268
msgid "Returns the object's methods and their signatures as an [Array]."
msgstr ""
-#: doc/classes/Object.xml:270
+#: doc/classes/Object.xml:275
msgid ""
"Returns the object's property list as an [Array] of dictionaries.\n"
"Each property's [Dictionary] contain at least [code]name: String[/code] and "
@@ -33028,54 +33663,54 @@ msgid ""
"PropertyUsageFlags])."
msgstr ""
-#: doc/classes/Object.xml:278
+#: doc/classes/Object.xml:283
msgid ""
"Returns the object's [Script] instance, or [code]null[/code] if none is "
"assigned."
msgstr ""
-#: doc/classes/Object.xml:287
+#: doc/classes/Object.xml:292
msgid "Returns an [Array] of connections for the given [code]signal[/code]."
msgstr ""
-#: doc/classes/Object.xml:294
+#: doc/classes/Object.xml:299
msgid "Returns the list of signals as an [Array] of dictionaries."
msgstr ""
-#: doc/classes/Object.xml:303
+#: doc/classes/Object.xml:308
msgid ""
"Returns [code]true[/code] if a metadata entry is found with the given "
"[code]name[/code]."
msgstr ""
-#: doc/classes/Object.xml:312
+#: doc/classes/Object.xml:317
msgid ""
"Returns [code]true[/code] if the object contains the given [code]method[/"
"code]."
msgstr ""
-#: doc/classes/Object.xml:321
+#: doc/classes/Object.xml:326
msgid "Returns [code]true[/code] if the given [code]signal[/code] exists."
msgstr ""
-#: doc/classes/Object.xml:330
+#: doc/classes/Object.xml:335
msgid ""
"Returns [code]true[/code] if the given user-defined [code]signal[/code] "
"exists. Only signals added using [method add_user_signal] are taken into "
"account."
msgstr ""
-#: doc/classes/Object.xml:337
+#: doc/classes/Object.xml:342
msgid "Returns [code]true[/code] if signal emission blocking is enabled."
msgstr ""
-#: doc/classes/Object.xml:346
+#: doc/classes/Object.xml:351
msgid ""
"Returns [code]true[/code] if the object inherits from the given [code]class[/"
"code]."
msgstr ""
-#: doc/classes/Object.xml:357
+#: doc/classes/Object.xml:362
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -33083,13 +33718,13 @@ msgid ""
"code], [code]target[/code], and [code]method[/code]."
msgstr ""
-#: doc/classes/Object.xml:365
+#: doc/classes/Object.xml:370
msgid ""
"Returns [code]true[/code] if the [method Node.queue_free] method was called "
"for the object."
msgstr ""
-#: doc/classes/Object.xml:376
+#: doc/classes/Object.xml:381
msgid ""
"Send a given notification to the object, which will also trigger a call to "
"the [method _notification] method of all classes that the object inherits "
@@ -33101,34 +33736,42 @@ msgid ""
"and then down to its successive inheriting classes."
msgstr ""
-#: doc/classes/Object.xml:384
+#: doc/classes/Object.xml:389
msgid ""
"Notify the editor that the property list has changed, so that editor plugins "
"can take the new values into account. Does nothing on export builds."
msgstr ""
-#: doc/classes/Object.xml:393
+#: doc/classes/Object.xml:398
msgid "Removes a given entry from the object's metadata."
msgstr ""
-#: doc/classes/Object.xml:404
+#: doc/classes/Object.xml:409
msgid ""
"Assigns a new value to the given property. If the [code]property[/code] does "
-"not exist, nothing will happen."
+"not exist, nothing will happen.\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:413
+#: doc/classes/Object.xml:419
msgid "If set to [code]true[/code], signal emission is blocked."
msgstr ""
-#: doc/classes/Object.xml:424
+#: doc/classes/Object.xml:430
msgid ""
"Assigns a new value to the given property, after the current frame's physics "
"step. This is equivalent to calling [method set] via [method call_deferred], "
-"i.e. [code]call_deferred(\"set\", property, value)[/code]."
+"i.e. [code]call_deferred(\"set\", property, value)[/code].\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:435
+#: doc/classes/Object.xml:442
msgid ""
"Assigns a new value to the property identified by the [NodePath]. The node "
"path should be relative to the current object and can use the colon "
@@ -33140,19 +33783,19 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:449
+#: doc/classes/Object.xml:456
msgid ""
"Defines whether the object can translate strings (with calls to [method "
"tr]). Enabled by default."
msgstr ""
-#: doc/classes/Object.xml:460
+#: doc/classes/Object.xml:467
msgid ""
"Adds or changes a given entry in the object's metadata. Metadata are "
"serialized, and can take any [Variant] value."
msgstr ""
-#: doc/classes/Object.xml:469
+#: doc/classes/Object.xml:476
msgid ""
"Assigns a script to the object. Each object can have a single script "
"assigned to it, which are used to extend its functionality.\n"
@@ -33161,7 +33804,7 @@ msgid ""
"_init] method will be called."
msgstr ""
-#: doc/classes/Object.xml:477
+#: doc/classes/Object.xml:484
msgid ""
"Returns a [String] representing the object. If not overridden, defaults to "
"[code]\"[ClassName:RID]\"[/code].\n"
@@ -33169,7 +33812,7 @@ msgid ""
"representation."
msgstr ""
-#: doc/classes/Object.xml:487
+#: doc/classes/Object.xml:494
msgid ""
"Translates a message using translation catalogs configured in the Project "
"Settings.\n"
@@ -33178,35 +33821,35 @@ msgid ""
"set_message_translation]."
msgstr ""
-#: doc/classes/Object.xml:495
+#: doc/classes/Object.xml:502
msgid "Emitted whenever the object's script is changed."
msgstr ""
-#: doc/classes/Object.xml:501
+#: doc/classes/Object.xml:508
msgid "Called right when the object is initialized. Not available in script."
msgstr ""
-#: doc/classes/Object.xml:504
+#: doc/classes/Object.xml:511
msgid "Called before the object is about to be deleted."
msgstr ""
-#: doc/classes/Object.xml:507
+#: doc/classes/Object.xml:514
msgid ""
"Connects a signal in deferred mode. This way, signal emissions are stored in "
"a queue, then set on idle time."
msgstr ""
-#: doc/classes/Object.xml:510
+#: doc/classes/Object.xml:517
msgid "Persisting connections are saved when the object is serialized to file."
msgstr ""
-#: doc/classes/Object.xml:513
+#: doc/classes/Object.xml:520
msgid "One-shot connections disconnect themselves after emission."
msgstr ""
-#: doc/classes/Object.xml:516
+#: doc/classes/Object.xml:523
msgid ""
-"Connect a signal as reference counted. This means that a given signal can be "
+"Connect a signal as reference-counted. This means that a given signal can be "
"connected several times to the same target, and will only be fully "
"disconnected once no references are left."
msgstr ""
@@ -33671,10 +34314,29 @@ msgid "Returns the keycode of the given string (e.g. \"Escape\")."
msgstr ""
#: doc/classes/OS.xml:115
-msgid "Returns the command line arguments passed to the engine."
+msgid ""
+"Returns the command-line arguments passed to the engine.\n"
+"Command-line arguments can be written in any form, including both [code]--"
+"key value[/code] and [code]--key=value[/code] forms so they can be properly "
+"parsed, as long as custom command-line arguments do not conflict with engine "
+"arguments.\n"
+"You can also incorporate environment variables using the [method "
+"get_environment] method.\n"
+"You can set [code]editor/main_run_args[/code] in the Project Settings to "
+"define command-line arguments to be passed by the editor when running the "
+"project.\n"
+"Here's a minimal example on how to parse command-line arguments into a "
+"dictionary using the [code]--key=value[/code] form for arguments:\n"
+"[codeblock]\n"
+"var arguments = {}\n"
+"for argument in OS.get_cmdline_args():\n"
+" if argument.find(\"=\") > -1:\n"
+" var key_value = argument.split(\"=\")\n"
+" arguments[key_value[0].lstrip(\"--\")] = key_value[1]\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/OS.xml:122
+#: doc/classes/OS.xml:133
msgid ""
"Returns an array of MIDI device names.\n"
"The returned array will be empty if the system MIDI driver has not "
@@ -33682,14 +34344,14 @@ msgid ""
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:133
+#: doc/classes/OS.xml:144
msgid ""
"Returns current date as a dictionary of keys: [code]year[/code], "
"[code]month[/code], [code]day[/code], [code]weekday[/code], [code]dst[/code] "
"(Daylight Savings Time)."
msgstr ""
-#: doc/classes/OS.xml:142
+#: doc/classes/OS.xml:153
msgid ""
"Returns current datetime as a dictionary of keys: [code]year[/code], "
"[code]month[/code], [code]day[/code], [code]weekday[/code], [code]dst[/code] "
@@ -33697,7 +34359,7 @@ msgid ""
"[code]second[/code]."
msgstr ""
-#: doc/classes/OS.xml:151
+#: doc/classes/OS.xml:162
msgid ""
"Gets a dictionary of time values corresponding to the given UNIX epoch time "
"(in seconds).\n"
@@ -33706,22 +34368,22 @@ msgid ""
"the epoch."
msgstr ""
-#: doc/classes/OS.xml:161
+#: doc/classes/OS.xml:172
msgid "Returns an environment variable."
msgstr ""
-#: doc/classes/OS.xml:168
+#: doc/classes/OS.xml:179
msgid "Returns the path to the current engine executable."
msgstr ""
-#: doc/classes/OS.xml:175
+#: doc/classes/OS.xml:186
msgid ""
"With this function you can get the list of dangerous permissions that have "
"been granted to the Android application.\n"
"[b]Note:[/b] This method is implemented on Android."
msgstr ""
-#: doc/classes/OS.xml:185
+#: doc/classes/OS.xml:196
msgid ""
"Returns the given keycode as a string (e.g. Return values: [code]\"Escape\"[/"
"code], [code]\"Shift+Escape\"[/code]).\n"
@@ -33729,18 +34391,18 @@ msgid ""
"get_keycode_with_modifiers]."
msgstr ""
-#: doc/classes/OS.xml:193
+#: doc/classes/OS.xml:204
msgid "Returns the host OS locale."
msgstr ""
-#: doc/classes/OS.xml:200
+#: doc/classes/OS.xml:211
msgid ""
"Returns the model name of the current device.\n"
"[b]Note:[/b] This method is implemented on Android and iOS. Returns "
"[code]\"GenericDevice\"[/code] on unsupported platforms."
msgstr ""
-#: doc/classes/OS.xml:208
+#: doc/classes/OS.xml:219
msgid ""
"Returns the name of the host OS. Possible values are: [code]\"Android\"[/"
"code], [code]\"iOS\"[/code], [code]\"HTML5\"[/code], [code]\"OSX\"[/code], "
@@ -33748,81 +34410,81 @@ msgid ""
"[code]\"X11\"[/code]."
msgstr ""
-#: doc/classes/OS.xml:215
+#: doc/classes/OS.xml:226
msgid ""
"Returns the project's process ID.\n"
"[b]Note:[/b] This method is implemented on Android, iOS, Linux, macOS and "
"Windows."
msgstr ""
-#: doc/classes/OS.xml:223
+#: doc/classes/OS.xml:234
msgid "Returns the number of threads available on the host machine."
msgstr ""
-#: doc/classes/OS.xml:230
+#: doc/classes/OS.xml:241
msgid ""
"Returns the amount of time in milliseconds it took for the boot logo to "
"appear."
msgstr ""
-#: doc/classes/OS.xml:237
+#: doc/classes/OS.xml:248
msgid "Returns the maximum amount of static memory used (only works in debug)."
msgstr ""
-#: doc/classes/OS.xml:244
+#: doc/classes/OS.xml:255
msgid "Returns the amount of static memory being used by the program in bytes."
msgstr ""
-#: doc/classes/OS.xml:253
+#: doc/classes/OS.xml:264
msgid ""
"Returns the actual path to commonly used folders across different platforms. "
"Available locations are specified in [enum SystemDir].\n"
"[b]Note:[/b] This method is implemented on Android, Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:261
+#: doc/classes/OS.xml:272
msgid ""
"Returns the total number of available tablet drivers.\n"
"[b]Note:[/b] This method is implemented on Windows."
msgstr ""
-#: doc/classes/OS.xml:271
+#: doc/classes/OS.xml:282
msgid ""
"Returns the tablet driver name for the given index.\n"
"[b]Note:[/b] This method is implemented on Windows."
msgstr ""
-#: doc/classes/OS.xml:279
+#: doc/classes/OS.xml:290
msgid ""
"Returns the amount of time passed in milliseconds since the engine started."
msgstr ""
-#: doc/classes/OS.xml:286
+#: doc/classes/OS.xml:297
msgid ""
"Returns the amount of time passed in microseconds since the engine started."
msgstr ""
-#: doc/classes/OS.xml:295
+#: doc/classes/OS.xml:306
msgid "Returns current time as a dictionary of keys: hour, minute, second."
msgstr ""
-#: doc/classes/OS.xml:302
+#: doc/classes/OS.xml:313
msgid ""
"Returns the current time zone as a dictionary with the keys: bias and name."
msgstr ""
-#: doc/classes/OS.xml:309
+#: doc/classes/OS.xml:320
msgid ""
"Returns a string that is unique to the device.\n"
"[b]Note:[/b] Returns an empty string on HTML5 and UWP, as this method isn't "
"implemented on those platforms yet."
msgstr ""
-#: doc/classes/OS.xml:317
+#: doc/classes/OS.xml:328
msgid "Returns the current UNIX epoch timestamp."
msgstr ""
-#: doc/classes/OS.xml:326
+#: doc/classes/OS.xml:337
msgid ""
"Gets an epoch time value from a dictionary of time values.\n"
"[code]datetime[/code] must be populated with the following keys: [code]year[/"
@@ -33833,7 +34495,7 @@ msgid ""
"ignored."
msgstr ""
-#: doc/classes/OS.xml:335
+#: doc/classes/OS.xml:346
msgid ""
"Returns the absolute directory path where user data is written ([code]user://"
"[/code]).\n"
@@ -33851,11 +34513,11 @@ msgid ""
"[/code]."
msgstr ""
-#: doc/classes/OS.xml:348
+#: doc/classes/OS.xml:359
msgid "Returns [code]true[/code] if an environment variable exists."
msgstr ""
-#: doc/classes/OS.xml:357
+#: doc/classes/OS.xml:368
msgid ""
"Returns [code]true[/code] if the feature for the given feature tag is "
"supported in the currently running instance, depending on platform, build "
@@ -33866,7 +34528,7 @@ msgid ""
"[b]Note:[/b] Tag names are case-sensitive."
msgstr ""
-#: doc/classes/OS.xml:365
+#: doc/classes/OS.xml:376
msgid ""
"Returns [code]true[/code] if the Godot binary used to run the project is a "
"[i]debug[/i] export template, or when running in the editor.\n"
@@ -33877,26 +34539,26 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/OS.xml:376
+#: doc/classes/OS.xml:387
msgid ""
"Returns [code]true[/code] if the input keycode corresponds to a Unicode "
"character."
msgstr ""
-#: doc/classes/OS.xml:383
+#: doc/classes/OS.xml:394
msgid ""
"Returns [code]true[/code] if the engine was executed with [code]-v[/code] "
"(verbose stdout)."
msgstr ""
-#: doc/classes/OS.xml:390
+#: doc/classes/OS.xml:401
msgid ""
"If [code]true[/code], the [code]user://[/code] file system is persistent, so "
"that its state is the same after a player quits and starts the game again. "
"Relevant to the HTML5 platform, where this persistence may be unavailable."
msgstr ""
-#: doc/classes/OS.xml:399
+#: doc/classes/OS.xml:410
msgid ""
"Kill (terminate) the process identified by the given process ID ([code]pid[/"
"code]), e.g. the one returned by [method execute] in non-blocking mode.\n"
@@ -33906,37 +34568,37 @@ msgid ""
"Windows."
msgstr ""
-#: doc/classes/OS.xml:408
+#: doc/classes/OS.xml:419
msgid ""
"Initialises the singleton for the system MIDI driver.\n"
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:418
+#: doc/classes/OS.xml:429
msgid ""
"Shows all resources in the game. Optionally, the list can be written to a "
"file by specifying a file path in [code]tofile[/code]."
msgstr ""
-#: doc/classes/OS.xml:425
+#: doc/classes/OS.xml:436
msgid "Shows the list of loaded textures sorted by size in memory."
msgstr ""
-#: doc/classes/OS.xml:434
+#: doc/classes/OS.xml:445
msgid "Shows the number of resources loaded by the game of the given types."
msgstr ""
-#: doc/classes/OS.xml:443
+#: doc/classes/OS.xml:454
msgid "Shows all resources currently used by the game."
msgstr ""
-#: doc/classes/OS.xml:452
+#: doc/classes/OS.xml:463
msgid ""
"At the moment this function is only used by [code]AudioDriverOpenSL[/code] "
"to request permission for [code]RECORD_AUDIO[/code] on Android."
msgstr ""
-#: doc/classes/OS.xml:459
+#: doc/classes/OS.xml:470
msgid ""
"With this function you can request dangerous permissions since normal "
"permissions are automatically granted at install time in Android "
@@ -33944,15 +34606,15 @@ msgid ""
"[b]Note:[/b] This method is implemented on Android."
msgstr ""
-#: doc/classes/OS.xml:469
+#: doc/classes/OS.xml:480
msgid "Sets the name of the current thread."
msgstr ""
-#: doc/classes/OS.xml:478
+#: doc/classes/OS.xml:489
msgid "Enables backup saves if [code]enabled[/code] is [code]true[/code]."
msgstr ""
-#: doc/classes/OS.xml:487
+#: doc/classes/OS.xml:498
msgid ""
"Requests the OS to open a resource with the most appropriate program. For "
"example:\n"
@@ -33971,7 +34633,7 @@ msgid ""
"and Windows."
msgstr ""
-#: doc/classes/OS.xml:498
+#: doc/classes/OS.xml:509
msgid ""
"The exit code passed to the OS when the main loop exits. By convention, an "
"exit code of [code]0[/code] indicates success whereas a non-zero exit code "
@@ -33981,137 +34643,137 @@ msgid ""
"with an [code]exit_code[/code] argument passed."
msgstr ""
-#: doc/classes/OS.xml:502
+#: doc/classes/OS.xml:513
msgid ""
"If [code]true[/code], the engine optimizes for low processor usage by only "
"refreshing the screen if needed. Can improve battery consumption on mobile."
msgstr ""
-#: doc/classes/OS.xml:505
+#: doc/classes/OS.xml:516
msgid ""
"The amount of sleeping between frames when the low-processor usage mode is "
"enabled (in microseconds). Higher values will result in lower CPU usage."
msgstr ""
-#: doc/classes/OS.xml:508
-msgid "The current tablet drvier in use."
+#: doc/classes/OS.xml:519
+msgid "The current tablet driver in use."
msgstr ""
-#: doc/classes/OS.xml:513
+#: doc/classes/OS.xml:524
msgid ""
"The GLES2 rendering backend. It uses OpenGL ES 2.0 on mobile devices, OpenGL "
"2.1 on desktop platforms and WebGL 1.0 on the web."
msgstr ""
-#: doc/classes/OS.xml:516
+#: doc/classes/OS.xml:527
msgid "The Vulkan rendering backend."
msgstr ""
-#: doc/classes/OS.xml:519
+#: doc/classes/OS.xml:530
msgid "Sunday."
msgstr ""
-#: doc/classes/OS.xml:522
+#: doc/classes/OS.xml:533
msgid "Monday."
msgstr ""
-#: doc/classes/OS.xml:525
+#: doc/classes/OS.xml:536
msgid "Tuesday."
msgstr ""
-#: doc/classes/OS.xml:528
+#: doc/classes/OS.xml:539
msgid "Wednesday."
msgstr ""
-#: doc/classes/OS.xml:531
+#: doc/classes/OS.xml:542
msgid "Thursday."
msgstr ""
-#: doc/classes/OS.xml:534
+#: doc/classes/OS.xml:545
msgid "Friday."
msgstr ""
-#: doc/classes/OS.xml:537
+#: doc/classes/OS.xml:548
msgid "Saturday."
msgstr ""
-#: doc/classes/OS.xml:540
+#: doc/classes/OS.xml:551
msgid "January."
msgstr ""
-#: doc/classes/OS.xml:543
+#: doc/classes/OS.xml:554
msgid "February."
msgstr ""
-#: doc/classes/OS.xml:546
+#: doc/classes/OS.xml:557
msgid "March."
msgstr ""
-#: doc/classes/OS.xml:549
+#: doc/classes/OS.xml:560
msgid "April."
msgstr ""
-#: doc/classes/OS.xml:552
+#: doc/classes/OS.xml:563
msgid "May."
msgstr ""
-#: doc/classes/OS.xml:555
+#: doc/classes/OS.xml:566
msgid "June."
msgstr ""
-#: doc/classes/OS.xml:558
+#: doc/classes/OS.xml:569
msgid "July."
msgstr ""
-#: doc/classes/OS.xml:561
+#: doc/classes/OS.xml:572
msgid "August."
msgstr ""
-#: doc/classes/OS.xml:564
+#: doc/classes/OS.xml:575
msgid "September."
msgstr ""
-#: doc/classes/OS.xml:567
+#: doc/classes/OS.xml:578
msgid "October."
msgstr ""
-#: doc/classes/OS.xml:570
+#: doc/classes/OS.xml:581
msgid "November."
msgstr ""
-#: doc/classes/OS.xml:573
+#: doc/classes/OS.xml:584
msgid "December."
msgstr ""
-#: doc/classes/OS.xml:576
+#: doc/classes/OS.xml:587
msgid "Desktop directory path."
msgstr ""
-#: doc/classes/OS.xml:579
+#: doc/classes/OS.xml:590
msgid "DCIM (Digital Camera Images) directory path."
msgstr ""
-#: doc/classes/OS.xml:582
+#: doc/classes/OS.xml:593
msgid "Documents directory path."
msgstr ""
-#: doc/classes/OS.xml:585
+#: doc/classes/OS.xml:596
msgid "Downloads directory path."
msgstr ""
-#: doc/classes/OS.xml:588
+#: doc/classes/OS.xml:599
msgid "Movies directory path."
msgstr ""
-#: doc/classes/OS.xml:591
+#: doc/classes/OS.xml:602
msgid "Music directory path."
msgstr ""
-#: doc/classes/OS.xml:594
+#: doc/classes/OS.xml:605
msgid "Pictures directory path."
msgstr ""
-#: doc/classes/OS.xml:597
+#: doc/classes/OS.xml:608
msgid "Ringtones directory path."
msgstr ""
@@ -34166,7 +34828,18 @@ msgid ""
"should always be preferred."
msgstr ""
-#: doc/classes/PackedByteArray.xml:85
+#: doc/classes/PackedByteArray.xml:87 doc/classes/PackedColorArray.xml:53
+#: doc/classes/PackedFloat32Array.xml:54 doc/classes/PackedFloat64Array.xml:54
+#: doc/classes/PackedInt32Array.xml:54 doc/classes/PackedInt64Array.xml:54
+#: doc/classes/PackedStringArray.xml:53 doc/classes/PackedVector2Array.xml:53
+#: doc/classes/PackedVector3Array.xml:53
+#, fuzzy
+msgid "Returns [code]true[/code] if the array contains [code]value[/code]."
+msgstr ""
+"Retourne [code]true[/code] si la chaîne de caractères est vide (longueur de "
+"la chaîne égale à [code]0[/code])."
+
+#: doc/classes/PackedByteArray.xml:94
msgid ""
"Returns a hexadecimal representation of this array as a [String].\n"
"[codeblock]\n"
@@ -34175,39 +34848,48 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/PackedByteArray.xml:100 doc/classes/PackedColorArray.xml:55
-#: doc/classes/PackedFloat32Array.xml:56 doc/classes/PackedFloat64Array.xml:56
-#: doc/classes/PackedStringArray.xml:55 doc/classes/PackedVector2Array.xml:55
-#: doc/classes/PackedVector3Array.xml:55
+#: doc/classes/PackedByteArray.xml:109 doc/classes/PackedColorArray.xml:64
+#: doc/classes/PackedFloat32Array.xml:65 doc/classes/PackedFloat64Array.xml:65
+#: doc/classes/PackedStringArray.xml:64 doc/classes/PackedVector2Array.xml:64
+#: doc/classes/PackedVector3Array.xml:64
msgid ""
"Inserts a new element at a given position in the array. The position must be "
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PackedByteArray.xml:134 doc/classes/PackedColorArray.xml:89
-#: doc/classes/PackedFloat32Array.xml:90 doc/classes/PackedFloat64Array.xml:90
-#: doc/classes/PackedInt32Array.xml:90 doc/classes/PackedInt64Array.xml:90
-#: doc/classes/PackedStringArray.xml:89 doc/classes/PackedVector2Array.xml:89
-#: doc/classes/PackedVector3Array.xml:89
+#: doc/classes/PackedByteArray.xml:143 doc/classes/PackedColorArray.xml:98
+#: doc/classes/PackedFloat32Array.xml:99 doc/classes/PackedFloat64Array.xml:99
+#: doc/classes/PackedInt32Array.xml:99 doc/classes/PackedInt64Array.xml:99
+#: doc/classes/PackedStringArray.xml:98 doc/classes/PackedVector2Array.xml:98
+#: doc/classes/PackedVector3Array.xml:98
msgid ""
"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."
msgstr ""
-#: doc/classes/PackedByteArray.xml:145
+#: doc/classes/PackedByteArray.xml:154
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PackedByteArray.xml:152 doc/classes/PackedColorArray.xml:107
-#: doc/classes/PackedFloat32Array.xml:108
-#: doc/classes/PackedFloat64Array.xml:108 doc/classes/PackedStringArray.xml:107
-#: doc/classes/PackedVector2Array.xml:107
-#: doc/classes/PackedVector3Array.xml:107
+#: doc/classes/PackedByteArray.xml:161 doc/classes/PackedColorArray.xml:116
+#: doc/classes/PackedFloat32Array.xml:117
+#: doc/classes/PackedFloat64Array.xml:117 doc/classes/PackedStringArray.xml:116
+#: doc/classes/PackedVector2Array.xml:116
+#: doc/classes/PackedVector3Array.xml:116
msgid "Returns the size of the array."
msgstr ""
-#: doc/classes/PackedByteArray.xml:163
+#: doc/classes/PackedByteArray.xml:168 doc/classes/PackedColorArray.xml:123
+#: doc/classes/PackedFloat32Array.xml:124
+#: doc/classes/PackedFloat64Array.xml:124 doc/classes/PackedInt32Array.xml:124
+#: doc/classes/PackedInt64Array.xml:124 doc/classes/PackedStringArray.xml:123
+#: doc/classes/PackedVector2Array.xml:123
+#: doc/classes/PackedVector3Array.xml:123
+msgid "Sorts the elements of the array in ascending order."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:179
msgid ""
"Returns the slice of the [PackedByteArray] between indices (inclusive) as a "
"new [PackedByteArray]. Any negative index is considered to be from the end "
@@ -34235,12 +34917,12 @@ msgstr ""
msgid "Appends a [PackedColorArray] at the end of this array."
msgstr ""
-#: doc/classes/PackedColorArray.xml:71 doc/classes/PackedInt32Array.xml:72
-#: doc/classes/PackedInt64Array.xml:72
+#: doc/classes/PackedColorArray.xml:80 doc/classes/PackedInt32Array.xml:81
+#: doc/classes/PackedInt64Array.xml:81
msgid "Appends a value to the array."
msgstr ""
-#: doc/classes/PackedColorArray.xml:100
+#: doc/classes/PackedColorArray.xml:109
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -34270,8 +34952,8 @@ msgstr ""
msgid "Appends a [PackedFloat32Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedFloat32Array.xml:101
-#: doc/classes/PackedFloat64Array.xml:101
+#: doc/classes/PackedFloat32Array.xml:110
+#: doc/classes/PackedFloat64Array.xml:110
msgid "Changes the float at the given index."
msgstr ""
@@ -34324,17 +35006,17 @@ msgstr ""
msgid "Appends a [PackedInt32Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:56 doc/classes/PackedInt64Array.xml:56
+#: doc/classes/PackedInt32Array.xml:65 doc/classes/PackedInt64Array.xml:65
msgid ""
"Inserts a new integer at a given position in the array. The position must be "
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:101 doc/classes/PackedInt64Array.xml:101
+#: doc/classes/PackedInt32Array.xml:110 doc/classes/PackedInt64Array.xml:110
msgid "Changes the integer at the given index."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:108 doc/classes/PackedInt64Array.xml:108
+#: doc/classes/PackedInt32Array.xml:117 doc/classes/PackedInt64Array.xml:117
msgid "Returns the array size."
msgstr ""
@@ -34375,6 +35057,14 @@ msgid ""
"Can be used to save a node to a file. When saving, the node as well as all "
"the node it owns get saved (see [code]owner[/code] property on [Node]).\n"
"[b]Note:[/b] The node doesn't need to own itself.\n"
+"[b]Example of loading a saved scene:[/b]\n"
+"[codeblock]\n"
+"# Use `load()` instead of `preload()` if the path isn't known at compile-"
+"time.\n"
+"var scene = preload(\"res://scene.tscn\").instance()\n"
+"# Add the node as a child of the node the script is attached to.\n"
+"add_child(scene)\n"
+"[/codeblock]\n"
"[b]Example of saving a node with different owners:[/b] The following example "
"creates 3 objects: [code]Node2D[/code] ([code]node[/code]), "
"[code]RigidBody2D[/code] ([code]rigid[/code]) and [code]CollisionObject2D[/"
@@ -34406,29 +35096,29 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/PackedScene.xml:40
+#: doc/classes/PackedScene.xml:47
msgid "Returns [code]true[/code] if the scene file has nodes."
msgstr ""
-#: doc/classes/PackedScene.xml:47
+#: doc/classes/PackedScene.xml:54
msgid ""
"Returns the [code]SceneState[/code] representing the scene file contents."
msgstr ""
-#: doc/classes/PackedScene.xml:56
+#: doc/classes/PackedScene.xml:63
msgid ""
"Instantiates the scene's node hierarchy. Triggers child scene "
"instantiation(s). Triggers a [constant Node.NOTIFICATION_INSTANCED] "
"notification on the root node."
msgstr ""
-#: doc/classes/PackedScene.xml:65
+#: doc/classes/PackedScene.xml:72
msgid ""
"Pack will ignore any sub-nodes not owned by given node. See [member Node."
"owner]."
msgstr ""
-#: doc/classes/PackedScene.xml:71
+#: doc/classes/PackedScene.xml:78
msgid ""
"A dictionary representation of the scene contents.\n"
"Available keys include \"rnames\" and \"variants\" for resources, "
@@ -34437,18 +35127,18 @@ msgid ""
"connections, and \"version\" for the format style of the PackedScene."
msgstr ""
-#: doc/classes/PackedScene.xml:77
+#: doc/classes/PackedScene.xml:84
msgid "If passed to [method instance], blocks edits to the scene state."
msgstr ""
-#: doc/classes/PackedScene.xml:80
+#: doc/classes/PackedScene.xml:87
msgid ""
"If passed to [method instance], provides local scene resources to the local "
"scene.\n"
"[b]Note:[/b] Only available in editor builds."
msgstr ""
-#: doc/classes/PackedScene.xml:84
+#: doc/classes/PackedScene.xml:91
msgid ""
"If passed to [method instance], provides local scene resources to the local "
"scene. Only the main scene should receive the main edit state.\n"
@@ -34476,11 +35166,11 @@ msgstr ""
msgid "Appends a [PackedStringArray] at the end of this array."
msgstr ""
-#: doc/classes/PackedStringArray.xml:71
+#: doc/classes/PackedStringArray.xml:80
msgid "Appends a string element at end of the array."
msgstr ""
-#: doc/classes/PackedStringArray.xml:100
+#: doc/classes/PackedStringArray.xml:109
msgid "Changes the [String] at the given index."
msgstr ""
@@ -34505,11 +35195,11 @@ msgstr ""
msgid "Appends a [PackedVector2Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedVector2Array.xml:71
+#: doc/classes/PackedVector2Array.xml:80
msgid "Inserts a [Vector2] at the end."
msgstr ""
-#: doc/classes/PackedVector2Array.xml:100
+#: doc/classes/PackedVector2Array.xml:109
msgid "Changes the [Vector2] at the given index."
msgstr ""
@@ -34534,11 +35224,11 @@ msgstr ""
msgid "Appends a [PackedVector3Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedVector3Array.xml:71
+#: doc/classes/PackedVector3Array.xml:80
msgid "Inserts a [Vector3] at the end."
msgstr ""
-#: doc/classes/PackedVector3Array.xml:100
+#: doc/classes/PackedVector3Array.xml:109
msgid "Changes the [Vector3] at the given index."
msgstr ""
@@ -35429,13 +36119,55 @@ msgid ""
"as the values displayed in the [b]Monitor[/b] tab in the editor's "
"[b]Debugger[/b] panel. By using the [method get_monitor] method of this "
"class, you can access this data from your code.\n"
+"You can add custom monitors using the [method add_custom_monitor] method. "
+"Custom monitors are available in [b]Monitor[/b] tab in the editor's "
+"[b]Debugger[/b] panel together with built-in monitors.\n"
"[b]Note:[/b] A few of these monitors are only available in debug mode and "
"will always return 0 when used in a release build.\n"
"[b]Note:[/b] Many of these monitors are not updated in real-time, so there "
-"may be a short delay between changes."
+"may be a short delay between changes.\n"
+"[b]Note:[/b] Custom monitors do not support negative values. Negative values "
+"are clamped to 0."
+msgstr ""
+
+#: doc/classes/Performance.xml:26
+msgid ""
+"Adds a custom monitor with name same as id. You can specify the category of "
+"monitor using '/' in id. If there are more than one '/' then default "
+"category is used. Default category is \"Custom\".\n"
+"[codeblock]\n"
+"Performance.add_custom_monitor(\"MyCategory/MyMonitor\", some_callable) # "
+"Adds monitor with name \"MyName\" to category \"MyCategory\"\n"
+"Performance.add_custom_monitor(\"MyMonitor\", some_callable) # Adds monitor "
+"with name \"MyName\" to category \"Custom\"\n"
+"# Note: \"MyCategory/MyMonitor\" and \"MyMonitor\" have same name but "
+"different ids so above code is valid\n"
+"Performance.add_custom_monitor(\"Custom/MyMonitor\", some_callable) # Adds "
+"monitor with name \"MyName\" to category \"Custom\"\n"
+"# Note: \"MyMonitor\" and \"Custom/MyMonitor\" have same name and same "
+"category but different ids so above code is valid\n"
+"Performance.add_custom_monitor(\"MyCategoryOne/MyCategoryTwo/MyMonitor\", "
+"some_callable) # Adds monitor with name \"MyCategoryOne/MyCategoryTwo/"
+"MyMonitor\" to category \"Custom\"\n"
+"[/codeblock]\n"
+"The debugger calls the callable to get the value of custom monitor. The "
+"callable must return a number.\n"
+"Callables are called with arguments supplied in argument array.\n"
+"[b]Note:[/b] It throws an error if given id is already present."
msgstr ""
-#: doc/classes/Performance.xml:20
+#: doc/classes/Performance.xml:46
+msgid ""
+"Returns the value of custom monitor with given id. The callable is called to "
+"get the value of custom monitor.\n"
+"[b]Note:[/b] It throws an error if the given id is absent."
+msgstr ""
+
+#: doc/classes/Performance.xml:54
+msgid "Returns the names of active custom monitors in an array."
+msgstr ""
+
+#: doc/classes/Performance.xml:63
msgid ""
"Returns the value of one of the available monitors. You should provide one "
"of the [enum Monitor] constants as the argument, like this:\n"
@@ -35445,123 +36177,139 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Performance.xml:29
+#: doc/classes/Performance.xml:73
+msgid "Returns the last tick in which custom monitor was added/removed."
+msgstr ""
+
+#: doc/classes/Performance.xml:82
+msgid ""
+"Returns true if custom monitor with the given id is present otherwise "
+"returns false."
+msgstr ""
+
+#: doc/classes/Performance.xml:91
+msgid ""
+"Removes the custom monitor with given id.\n"
+"[b]Note:[/b] It throws an error if the given id is already absent."
+msgstr ""
+
+#: doc/classes/Performance.xml:98
msgid "Number of frames per second."
msgstr ""
-#: doc/classes/Performance.xml:32
+#: doc/classes/Performance.xml:101
msgid "Time it took to complete one frame, in seconds."
msgstr ""
-#: doc/classes/Performance.xml:35
+#: doc/classes/Performance.xml:104
msgid "Time it took to complete one physics frame, in seconds."
msgstr ""
-#: doc/classes/Performance.xml:38
+#: doc/classes/Performance.xml:107
msgid ""
"Static memory currently used, in bytes. Not available in release builds."
msgstr ""
-#: doc/classes/Performance.xml:41
+#: doc/classes/Performance.xml:110
msgid "Available static memory. Not available in release builds."
msgstr ""
-#: doc/classes/Performance.xml:44
+#: doc/classes/Performance.xml:113
msgid ""
"Largest amount of memory the message queue buffer has used, in bytes. The "
"message queue is used for deferred functions calls and notifications."
msgstr ""
-#: doc/classes/Performance.xml:47
+#: doc/classes/Performance.xml:116
msgid "Number of objects currently instanced (including nodes)."
msgstr ""
-#: doc/classes/Performance.xml:50
+#: doc/classes/Performance.xml:119
msgid "Number of resources currently used."
msgstr ""
-#: doc/classes/Performance.xml:53
+#: doc/classes/Performance.xml:122
msgid ""
"Number of nodes currently instanced in the scene tree. This also includes "
"the root node."
msgstr ""
-#: doc/classes/Performance.xml:56
+#: doc/classes/Performance.xml:125
msgid ""
"Number of orphan nodes, i.e. nodes which are not parented to a node of the "
"scene tree."
msgstr ""
-#: doc/classes/Performance.xml:59
+#: doc/classes/Performance.xml:128
msgid "3D objects drawn per frame."
msgstr ""
-#: doc/classes/Performance.xml:62
+#: doc/classes/Performance.xml:131
msgid "Vertices drawn per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:65
+#: doc/classes/Performance.xml:134
msgid "Material changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:68
+#: doc/classes/Performance.xml:137
msgid "Shader changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:71
+#: doc/classes/Performance.xml:140
msgid "Render surface changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:74
+#: doc/classes/Performance.xml:143
msgid "Draw calls per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:77 doc/classes/RenderingServer.xml:3805
+#: doc/classes/Performance.xml:146 doc/classes/RenderingServer.xml:3816
msgid ""
"The amount of video memory used, i.e. texture and vertex memory combined."
msgstr ""
-#: doc/classes/Performance.xml:80 doc/classes/RenderingServer.xml:3808
+#: doc/classes/Performance.xml:149 doc/classes/RenderingServer.xml:3819
msgid "The amount of texture memory used."
msgstr ""
-#: doc/classes/Performance.xml:83 doc/classes/RenderingServer.xml:3811
+#: doc/classes/Performance.xml:152 doc/classes/RenderingServer.xml:3822
msgid "The amount of vertex memory used."
msgstr ""
-#: doc/classes/Performance.xml:86 doc/classes/RenderingServer.xml:3802
+#: doc/classes/Performance.xml:155 doc/classes/RenderingServer.xml:3813
msgid "Unimplemented in the GLES2 rendering backend, always returns 0."
msgstr ""
-#: doc/classes/Performance.xml:89
+#: doc/classes/Performance.xml:158
msgid "Number of active [RigidBody2D] nodes in the game."
msgstr ""
-#: doc/classes/Performance.xml:92
+#: doc/classes/Performance.xml:161
msgid "Number of collision pairs in the 2D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:95
+#: doc/classes/Performance.xml:164
msgid "Number of islands in the 2D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:98
+#: doc/classes/Performance.xml:167
msgid "Number of active [RigidBody3D] and [VehicleBody3D] nodes in the game."
msgstr ""
-#: doc/classes/Performance.xml:101
+#: doc/classes/Performance.xml:170
msgid "Number of collision pairs in the 3D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:104
+#: doc/classes/Performance.xml:173
msgid "Number of islands in the 3D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:107
+#: doc/classes/Performance.xml:176
msgid "Output latency of the [AudioServer]."
msgstr ""
-#: doc/classes/Performance.xml:110
+#: doc/classes/Performance.xml:179
msgid "Represents the size of the [enum Monitor] enum."
msgstr ""
@@ -35585,27 +36333,27 @@ msgstr ""
msgid "Damps the body's rotation if greater than [code]0[/code]."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:70 doc/classes/RigidBody3D.xml:132
+#: doc/classes/PhysicalBone3D.xml:70 doc/classes/RigidBody3D.xml:139
msgid "Lock the body's rotation in the X axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:73 doc/classes/RigidBody3D.xml:135
+#: doc/classes/PhysicalBone3D.xml:73 doc/classes/RigidBody3D.xml:142
msgid "Lock the body's rotation in the Y axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:76 doc/classes/RigidBody3D.xml:138
+#: doc/classes/PhysicalBone3D.xml:76 doc/classes/RigidBody3D.xml:145
msgid "Lock the body's rotation in the Z axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:79 doc/classes/RigidBody3D.xml:141
+#: doc/classes/PhysicalBone3D.xml:79 doc/classes/RigidBody3D.xml:148
msgid "Lock the body's movement in the X axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:82 doc/classes/RigidBody3D.xml:144
+#: doc/classes/PhysicalBone3D.xml:82 doc/classes/RigidBody3D.xml:151
msgid "Lock the body's movement in the Y axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:85 doc/classes/RigidBody3D.xml:147
+#: doc/classes/PhysicalBone3D.xml:85 doc/classes/RigidBody3D.xml:154
msgid "Lock the body's movement in the Z axis."
msgstr ""
@@ -35660,12 +36408,12 @@ msgstr ""
msgid "Damps the body's movement if greater than [code]0[/code]."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:118 doc/classes/RigidBody2D.xml:158
-#: doc/classes/RigidBody3D.xml:175
+#: doc/classes/PhysicalBone3D.xml:118 doc/classes/RigidBody2D.xml:159
+#: doc/classes/RigidBody3D.xml:183
msgid "The body's mass."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:121 doc/classes/RigidBody3D.xml:188
+#: doc/classes/PhysicalBone3D.xml:121 doc/classes/RigidBody3D.xml:196
msgid ""
"The body's weight based on its mass and the global 3D gravity. Global values "
"are set in [b]Project > Project Settings > Physics > 3d[/b]."
@@ -35972,7 +36720,7 @@ msgid "The inverse of the mass of the body."
msgstr ""
#: doc/classes/PhysicsDirectBodyState2D.xml:195
-#: doc/classes/PhysicsDirectBodyState3D.xml:198 doc/classes/RigidBody2D.xml:155
+#: doc/classes/PhysicsDirectBodyState3D.xml:198 doc/classes/RigidBody2D.xml:156
msgid "The body's linear velocity."
msgstr ""
@@ -36525,7 +37273,7 @@ msgid ""
msgstr ""
#: doc/classes/PhysicsServer2D.xml:620 doc/classes/PhysicsServer3D.xml:637
-#: doc/classes/RigidBody3D.xml:120
+#: doc/classes/RigidBody3D.xml:127
msgid ""
"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."
@@ -37590,47 +38338,64 @@ msgid ""
"collision queries. See also [PhysicsShapeQueryResult2D]."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:18
-msgid ""
-"Sets the [Shape2D] that will be used for collision/intersection queries."
-msgstr ""
-
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:24
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:15
msgid "If [code]true[/code], the query will take [Area2D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:18
msgid ""
"If [code]true[/code], the query will take [PhysicsBody2D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:30
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:30
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:21
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:21
msgid "The physics layer(s) the query will take into account (as a bitmask)."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:33
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:33
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:24
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:24
msgid ""
"The list of objects or object [RID]s that will be excluded from collisions."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:36
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:36 doc/classes/Shape3D.xml:16
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:27 doc/classes/Shape3D.xml:16
msgid "The collision margin for the shape."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:39
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:30
msgid "The motion of the shape being queried for."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:42
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:39
-msgid "The queried shape's [RID]. See also [method set_shape]."
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:33
+msgid ""
+"The [Shape2D] that will be used for collision/intersection queries. This "
+"stores the actual reference which avoids the shape to be released while "
+"being used for queries, so always prefer using this over [member shape_rid]."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:45
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:42
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:36
+msgid ""
+"The queried shape's [RID] that will be used for collision/intersection "
+"queries. Use this over [member shape] if you want to optimize for "
+"performance using the Servers API:\n"
+"[codeblock]\n"
+"var shape_rid = PhysicsServer2D.circle_shape_create()\n"
+"var radius = 64\n"
+"PhysicsServer2D.shape_set_data(shape_rid, radius)\n"
+"\n"
+"var params = PhysicsShapeQueryParameters2D.new()\n"
+"params.shape_rid = shape_rid\n"
+"\n"
+"# Execute physics queries here...\n"
+"\n"
+"# Release the shape when done with physics queries.\n"
+"PhysicsServer2D.free_rid(shape_rid)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:52
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:49
msgid "The queried shape's transform matrix."
msgstr ""
@@ -37644,18 +38409,40 @@ msgid ""
"collision queries. See also [PhysicsShapeQueryResult3D]."
msgstr ""
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:15
+msgid "If [code]true[/code], the query will take [Area3D]s into account."
+msgstr ""
+
#: doc/classes/PhysicsShapeQueryParameters3D.xml:18
msgid ""
-"Sets the [Shape3D] that will be used for collision/intersection queries."
+"If [code]true[/code], the query will take [PhysicsBody3D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:24
-msgid "If [code]true[/code], the query will take [Area3D]s into account."
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:30
+msgid ""
+"The [Shape3D] that will be used for collision/intersection queries. This "
+"stores the actual reference which avoids the shape to be released while "
+"being used for queries, so always prefer using this over [member shape_rid]."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:33
msgid ""
-"If [code]true[/code], the query will take [PhysicsBody3D]s into account."
+"The queried shape's [RID] that will be used for collision/intersection "
+"queries. Use this over [member shape] if you want to optimize for "
+"performance using the Servers API:\n"
+"[codeblock]\n"
+"var shape_rid = PhysicsServer3D.shape_create(PhysicsServer3D.SHAPE_SPHERE)\n"
+"var radius = 2.0\n"
+"PhysicsServer3D.shape_set_data(shape_rid, radius)\n"
+"\n"
+"var params = PhysicsShapeQueryParameters3D.new()\n"
+"params.shape_rid = shape_rid\n"
+"\n"
+"# Execute physics queries here...\n"
+"\n"
+"# Release the shape when done with physics queries.\n"
+"PhysicsServer3D.free_rid(shape_rid)\n"
+"[/codeblock]"
msgstr ""
#: doc/classes/PhysicsShapeQueryResult2D.xml:4
@@ -37796,92 +38583,94 @@ msgid ""
"code]."
msgstr ""
-#: doc/classes/Plane.xml:72
-msgid "Returns a point on the plane."
-msgstr ""
-
-#: doc/classes/Plane.xml:83
+#: doc/classes/Plane.xml:76
msgid ""
-"Returns [code]true[/code] if [code]point[/code] is inside the plane (by a "
-"very minimum [code]epsilon[/code] threshold)."
+"Returns [code]true[/code] if [code]point[/code] is inside the plane. "
+"Comparison uses a custom minimum [code]epsilon[/code] threshold."
msgstr ""
-#: doc/classes/Plane.xml:94
+#: doc/classes/Plane.xml:87
msgid ""
"Returns the intersection point of the three planes [code]b[/code], [code]c[/"
"code] and this plane. If no intersection is found, [code]null[/code] is "
"returned."
msgstr ""
-#: doc/classes/Plane.xml:105
+#: doc/classes/Plane.xml:98
msgid ""
"Returns the intersection point of a ray consisting of the position "
"[code]from[/code] and the direction normal [code]dir[/code] with this plane. "
"If no intersection is found, [code]null[/code] is returned."
msgstr ""
-#: doc/classes/Plane.xml:116
+#: doc/classes/Plane.xml:109
msgid ""
"Returns the intersection point of a segment from position [code]begin[/code] "
"to position [code]end[/code] with this plane. If no intersection is found, "
"[code]null[/code] is returned."
msgstr ""
-#: doc/classes/Plane.xml:125
+#: doc/classes/Plane.xml:118
msgid ""
"Returns [code]true[/code] if this plane and [code]plane[/code] are "
"approximately equal, by running [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/Plane.xml:134
+#: doc/classes/Plane.xml:127
msgid ""
"Returns [code]true[/code] if [code]point[/code] is located above the plane."
msgstr ""
-#: doc/classes/Plane.xml:141
+#: doc/classes/Plane.xml:134
msgid "Returns a copy of the plane, normalized."
msgstr ""
-#: doc/classes/Plane.xml:150
+#: doc/classes/Plane.xml:143
msgid ""
-"Returns the orthogonal projection of point [code]p[/code] into a point in "
-"the plane."
+"Returns the orthogonal projection of [code]point[/code] into a point in the "
+"plane."
msgstr ""
-#: doc/classes/Plane.xml:156
+#: doc/classes/Plane.xml:149
msgid ""
-"Distance from the origin to the plane, in the direction of [member normal]."
+"The distance from the origin to the plane, in the direction of [member "
+"normal]. This value is typically non-negative.\n"
+"In the scalar equation of the plane [code]ax + by + cz = d[/code], this is "
+"[code]d[/code], while the [code](a, b, c)[/code] coordinates are represented "
+"by the [member normal] property."
msgstr ""
-#: doc/classes/Plane.xml:159
+#: doc/classes/Plane.xml:153
msgid ""
-"The normal of the plane. \"Over\" or \"Above\" the plane is considered the "
-"side of the plane towards where the normal is pointing."
+"The normal of the plane, which must be normalized.\n"
+"In the scalar equation of the plane [code]ax + by + cz = d[/code], this is "
+"the vector [code](a, b, c)[/code], where [code]d[/code] is the [member d] "
+"property."
msgstr ""
-#: doc/classes/Plane.xml:162
-msgid "The [member normal]'s X component."
+#: doc/classes/Plane.xml:157
+msgid "The X component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:165
-msgid "The [member normal]'s Y component."
+#: doc/classes/Plane.xml:160
+msgid "The Y component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:168
-msgid "The [member normal]'s Z component."
+#: doc/classes/Plane.xml:163
+msgid "The Z component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:173
-msgid "A plane that extends in the Y and Z axes."
+#: doc/classes/Plane.xml:168
+msgid "A plane that extends in the Y and Z axes (normal vector points +X)."
msgstr ""
-#: doc/classes/Plane.xml:176
-msgid "A plane that extends in the X and Z axes."
+#: doc/classes/Plane.xml:171
+msgid "A plane that extends in the X and Z axes (normal vector points +Y)."
msgstr ""
-#: doc/classes/Plane.xml:179
-msgid "A plane that extends in the X and Y axes."
+#: doc/classes/Plane.xml:174
+msgid "A plane that extends in the X and Y axes (normal vector points +Z)."
msgstr ""
#: doc/classes/PlaneMesh.xml:4
@@ -38592,18 +39381,25 @@ msgstr ""
#: doc/classes/PrimitiveMesh.xml:16
msgid ""
-"Returns mesh arrays used to constitute surface of [Mesh]. Mesh arrays can be "
-"used with [ArrayMesh] to create new surfaces."
+"Returns mesh arrays used to constitute surface of [Mesh]. The result can be "
+"passed to [method ArrayMesh.add_surface_from_arrays] to create a new "
+"surface. For example:\n"
+"[codeblock]\n"
+"var c := CylinderMesh.new()\n"
+"var arr_mesh := ArrayMesh.new()\n"
+"arr_mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLES, c."
+"get_mesh_arrays())\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:22
+#: doc/classes/PrimitiveMesh.xml:27
msgid ""
"Overrides the [AABB] with one defined by user for use with frustum culling. "
"Especially useful to avoid unnexpected culling when using a shader to "
"offset vertices."
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:25
+#: doc/classes/PrimitiveMesh.xml:30
msgid ""
"If set, the order of the vertices in each triangle are reversed resulting in "
"the backside of the mesh being drawn.\n"
@@ -38611,7 +39407,7 @@ msgid ""
"[member BaseMaterial3D.cull_mode]."
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:29
+#: doc/classes/PrimitiveMesh.xml:34
msgid "The current [Material] of the primitive mesh."
msgstr ""
@@ -39042,11 +39838,17 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:260
msgid ""
+"Safer override for [member audio/output_latency] in the Web platform, to "
+"avoid audio issues especially on mobile devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:263
+msgid ""
"Setting to hardcode audio delay when playing video. Best to leave this "
"untouched unless you know what you are doing."
msgstr ""
-#: doc/classes/ProjectSettings.xml:263
+#: doc/classes/ProjectSettings.xml:266
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -39056,7 +39858,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:269
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -39066,27 +39868,27 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:269
+#: doc/classes/ProjectSettings.xml:272
msgid ""
"The default compression level for Zstandard. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
"speed. Decompression speed is mostly unaffected by the compression level."
msgstr ""
-#: doc/classes/ProjectSettings.xml:272
+#: doc/classes/ProjectSettings.xml:275
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:278
msgid ""
"Largest size limit (in power of 2) allowed when compressing using long-"
"distance matching with Zstandard. Higher values can result in better "
"compression, but will require more memory when compressing and decompressing."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:281
msgid ""
"If [code]true[/code], displays getters and setters in autocompletion results "
"in the script editor. This setting is meant to be used when porting old "
@@ -39094,74 +39896,55 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:281
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:284
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:287
+#: doc/classes/ProjectSettings.xml:294
msgid ""
"If [code]true[/code], enables specific GDScript warnings (see [code]debug/"
"gdscript/warnings/*[/code] settings). If [code]false[/code], disables all "
"GDScript warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
-msgid ""
-"If [code]true[/code], enables warnings when a function is declared with the "
-"same name as a constant."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:296
-msgid ""
-"If [code]true[/code], enables warnings when a function is declared with the "
-"same name as a variable. This will turn into an error in a future version "
-"when first-class functions become supported in GDScript."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:299
-msgid ""
-"If [code]true[/code], enables warnings when a function assigned to a "
-"variable may yield and return a function state instead of a value."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:302
+#: doc/classes/ProjectSettings.xml:300
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:303
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when dividing an integer by another "
"integer (the decimal part will be discarded)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when passing a floating-point value "
"to a function that expects an integer (it will be converted and lose "
"precision)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:314
+#: doc/classes/ProjectSettings.xml:312
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
@@ -39182,102 +39965,85 @@ msgid ""
"member variable)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:323
+#: doc/classes/ProjectSettings.xml:325
msgid ""
"If [code]true[/code], enables warnings when calling an expression that has "
"no effect on the surrounding code, such as writing [code]2 + 2[/code] as a "
"statement."
msgstr ""
-#: doc/classes/ProjectSettings.xml:326
+#: doc/classes/ProjectSettings.xml:328
msgid ""
"If [code]true[/code], enables warnings when calling a ternary expression "
"that has no effect on the surrounding code, such as writing [code]42 if "
"active else 0[/code] as a statement."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:331
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:334
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:335
+#: doc/classes/ProjectSettings.xml:337
msgid ""
"If [code]true[/code], enables warnings when assigning a variable using an "
"assignment operator like [code]+=[/code] if the variable wasn't previously "
"assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:338
+#: doc/classes/ProjectSettings.xml:340
msgid ""
"If [code]true[/code], enables warnings when unreachable code is detected "
"(such as after a [code]return[/code] statement that will always be executed)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:345
msgid ""
"If [code]true[/code], enables warnings when using an expression whose type "
"may not be compatible with the function parameter expected."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:348
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:347
+#: doc/classes/ProjectSettings.xml:351
msgid ""
"If [code]true[/code], enables warnings when calling a method whose presence "
"is not guaranteed at compile-time in the class."
msgstr ""
-#: doc/classes/ProjectSettings.xml:350
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], enables warnings when accessing a property whose "
"presence is not guaranteed at compile-time in the class."
msgstr ""
-#: doc/classes/ProjectSettings.xml:353
-msgid ""
-"If [code]true[/code], enables warnings when a function parameter is unused."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:356
-msgid ""
-"If [code]true[/code], enables warnings when a member variable is unused."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:363
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:362
+#: doc/classes/ProjectSettings.xml:366
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:365
-msgid ""
-"If [code]true[/code], enables warnings when a variable is declared with the "
-"same name as a function. This will turn into an error in a future version "
-"when first-class functions become supported in GDScript."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:368
+#: doc/classes/ProjectSettings.xml:369
msgid ""
"If [code]true[/code], enables warnings when assigning the result of a "
"function that returns [code]void[/code] to a variable."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:374
+#: doc/classes/ProjectSettings.xml:375
msgid ""
"Maximum number of frames per second allowed. The actual number of frames per "
"second may still be below this value if the game is lagging.\n"
@@ -39288,143 +40054,143 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:379
+#: doc/classes/ProjectSettings.xml:380
msgid "Maximum call stack allowed for debugging GDScript."
msgstr ""
-#: doc/classes/ProjectSettings.xml:382
+#: doc/classes/ProjectSettings.xml:383
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:385
+#: doc/classes/ProjectSettings.xml:386
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:388
+#: doc/classes/ProjectSettings.xml:389
msgid ""
"Print more information to standard output when running. It displays "
"information such as memory leaks, which scenes and resources are being "
"loaded, etc."
msgstr ""
-#: doc/classes/ProjectSettings.xml:391
+#: doc/classes/ProjectSettings.xml:392
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:394
+#: doc/classes/ProjectSettings.xml:395
msgid ""
"Color of the contact points between collision shapes, visible when \"Visible "
"Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:397
+#: doc/classes/ProjectSettings.xml:398
msgid ""
"Maximum number of contact points between collision shapes to display when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:400
+#: doc/classes/ProjectSettings.xml:401
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
msgid "Hotspot for the custom mouse cursor image."
msgstr ""
-#: doc/classes/ProjectSettings.xml:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
msgid ""
"If [code]true[/code], allows HiDPI display on Windows and macOS. This "
"setting has no effect on desktop Linux, as DPI-awareness fallbacks are not "
"supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"If [code]true[/code], keeps the screen on (even in case of inactivity), so "
"the screensaver does not take over. Works on desktop and mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
msgid "Default orientation on mobile devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"If [code]true[/code], the home indicator is hidden automatically. This only "
"affects iOS devices without a physical home button."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid "Force the window to be always on top."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid "Force the window to be borderless."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Sets the window to full screen when it starts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid ""
"Sets the game's main viewport height. On desktop platforms, this is the "
"default window size. Stretch mode settings also use this as a reference when "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Allows the window to be resizable by default."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"Sets the game's main viewport width. On desktop platforms, this is the "
"default window size. Stretch mode settings also use this as a reference when "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:454
+#: doc/classes/ProjectSettings.xml:455
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:457
+#: doc/classes/ProjectSettings.xml:458
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -39433,7 +40199,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:460
+#: doc/classes/ProjectSettings.xml:461
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -39444,13 +40210,13 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:464
+#: doc/classes/ProjectSettings.xml:465
msgid ""
"Search path for project-specific script templates. Script templates will be "
"search both in the editor-specific path and in this project-specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:467
+#: doc/classes/ProjectSettings.xml:468
msgid ""
"Text-based file extensions to include in the script editor's \"Find in Files"
"\" feature. You can add e.g. [code]tscn[/code] if you wish to also parse "
@@ -39458,49 +40224,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:470
+#: doc/classes/ProjectSettings.xml:471
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:473
+#: doc/classes/ProjectSettings.xml:474
msgid ""
-"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
+"If [code]true[/code], swaps Cancel and OK buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:478
+#: doc/classes/ProjectSettings.xml:479
msgid ""
"Path to a custom [Theme] resource file to use for the project ([code]theme[/"
"code] or generic [code]tres[/code]/[code]res[/code] extension)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:484
+#: doc/classes/ProjectSettings.xml:485
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:487
+#: doc/classes/ProjectSettings.xml:488
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:490
+#: doc/classes/ProjectSettings.xml:491
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:493
+#: doc/classes/ProjectSettings.xml:494
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:496
+#: doc/classes/ProjectSettings.xml:497
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -39509,7 +40275,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"Default [InputEventAction] to discard a modal or pending input.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39517,7 +40283,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:504
+#: doc/classes/ProjectSettings.xml:505
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39525,7 +40291,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:508
+#: doc/classes/ProjectSettings.xml:509
msgid ""
"Default [InputEventAction] to go to the end position of a [Control] (e.g. "
"last item in an [ItemList] or a [Tree]), matching the behavior of [constant "
@@ -39535,7 +40301,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:512
+#: doc/classes/ProjectSettings.xml:513
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -39544,7 +40310,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:516
+#: doc/classes/ProjectSettings.xml:517
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -39553,7 +40319,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:520
+#: doc/classes/ProjectSettings.xml:521
msgid ""
"Default [InputEventAction] to go to the start position of a [Control] (e.g. "
"first item in an [ItemList] or a [Tree]), matching the behavior of [constant "
@@ -39563,7 +40329,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39571,7 +40337,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:528
+#: doc/classes/ProjectSettings.xml:529
msgid ""
"Default [InputEventAction] to go down a page in a [Control] (e.g. in an "
"[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEDOWN] on "
@@ -39581,7 +40347,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Default [InputEventAction] to go up a page in a [Control] (e.g. in an "
"[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEUP] on "
@@ -39591,7 +40357,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:536
+#: doc/classes/ProjectSettings.xml:537
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39599,7 +40365,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:540
+#: doc/classes/ProjectSettings.xml:541
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -39608,7 +40374,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39616,371 +40382,371 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:548
+#: doc/classes/ProjectSettings.xml:549
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:554
+#: doc/classes/ProjectSettings.xml:555
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:557
+#: doc/classes/ProjectSettings.xml:558
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:560
+#: doc/classes/ProjectSettings.xml:561
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:566
+#: doc/classes/ProjectSettings.xml:567
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:569
+#: doc/classes/ProjectSettings.xml:570
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:572
+#: doc/classes/ProjectSettings.xml:573
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:578
+#: doc/classes/ProjectSettings.xml:579
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:581
+#: doc/classes/ProjectSettings.xml:582
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:584
+#: doc/classes/ProjectSettings.xml:585
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:590
+#: doc/classes/ProjectSettings.xml:591
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:593
+#: doc/classes/ProjectSettings.xml:594
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:596
+#: doc/classes/ProjectSettings.xml:597
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:602
+#: doc/classes/ProjectSettings.xml:603
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid ""
"The locale to fall back to if a translation isn't available in a given "
"language. If left empty, [code]en[/code] (English) will be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "If [code]true[/code], logs all output to files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:806
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:809
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:812
msgid ""
"Godot uses a message queue to defer some function calls. If you run out of "
"space on it (you will see an error), you can increase the size here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:815
msgid ""
"This is used by servers when used in multi-threading mode (servers and "
"visual). RIDs are preallocated to avoid stalling the server requesting them "
@@ -39988,56 +40754,56 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:829
+#: doc/classes/ProjectSettings.xml:832
msgid ""
"Maximum amount of characters allowed to send as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:832
+#: doc/classes/ProjectSettings.xml:835
msgid ""
"Maximum number of errors allowed to be sent from the debugger. Over this "
"value, content is dropped. This helps not to stall the debugger connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:835
+#: doc/classes/ProjectSettings.xml:838
msgid ""
"Maximum amount of messages in the debugger queue. Over this value, content "
"is dropped. This helps to limit the debugger memory usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:838
+#: doc/classes/ProjectSettings.xml:841
msgid ""
"Maximum number of warnings allowed to be sent from the debugger. Over this "
"value, content is dropped. This helps not to stall the debugger connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:841
+#: doc/classes/ProjectSettings.xml:844
msgid ""
"Default size of packet peer stream for deserializing Godot data. Over this "
"size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:844
+#: doc/classes/ProjectSettings.xml:847
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:847
+#: doc/classes/ProjectSettings.xml:850
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:850
+#: doc/classes/ProjectSettings.xml:853
msgid ""
"Amount of read ahead used by remote filesystem. Higher values decrease the "
"effects of latency at the cost of higher bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:853
+#: doc/classes/ProjectSettings.xml:856
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:856
+#: doc/classes/ProjectSettings.xml:859
msgid ""
"The CA certificates bundle to use for SSL connections. If this is set to a "
"non-empty value, this will [i]override[/i] Godot's default [url=https://"
@@ -40047,31 +40813,31 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:863
msgid ""
"When creating node names automatically, set the type of casing in this "
"project. This is mostly an editor setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:866
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:869
msgid "Size of the hash table used for the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:872
msgid "Cell size used for the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:875
msgid "The default angular damp in 2D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:878
msgid ""
"The default gravity strength in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -40083,7 +40849,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:883
+#: doc/classes/ProjectSettings.xml:886
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -40095,38 +40861,38 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:891
+#: doc/classes/ProjectSettings.xml:894
msgid "The default linear damp in 2D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:894
+#: doc/classes/ProjectSettings.xml:897
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:897
+#: doc/classes/ProjectSettings.xml:900
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics2D\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:901
+#: doc/classes/ProjectSettings.xml:904
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant PhysicsServer2D."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:904
+#: doc/classes/ProjectSettings.xml:907
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant PhysicsServer2D."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:907
+#: doc/classes/ProjectSettings.xml:910
msgid ""
"Sets whether physics is run on the main thread or a separate one. Running "
"the server on a thread increases performance, but restricts API access to "
@@ -40136,23 +40902,23 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:914
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant PhysicsServer2D.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:917
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody3D] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:920
msgid "The default angular damp in 3D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:923
msgid ""
"The default gravity strength in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -40164,7 +40930,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:928
+#: doc/classes/ProjectSettings.xml:931
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -40176,11 +40942,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:936
+#: doc/classes/ProjectSettings.xml:939
msgid "The default linear damp in 3D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:939
+#: doc/classes/ProjectSettings.xml:942
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -40188,11 +40954,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:943
+#: doc/classes/ProjectSettings.xml:946
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:949
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -40201,7 +40967,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:950
+#: doc/classes/ProjectSettings.xml:953
msgid ""
"Fix to improve physics jitter, specially on monitors where refresh rate is "
"different than the physics FPS.\n"
@@ -40209,7 +40975,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:954
+#: doc/classes/ProjectSettings.xml:957
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -40217,7 +40983,7 @@ msgid ""
"programmatically, use [method RenderingServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:957
+#: doc/classes/ProjectSettings.xml:960
msgid ""
"[Environment] that will be used as a fallback environment in case a scene "
"does not specify its own environment. The default environment is loaded in "
@@ -40227,14 +40993,14 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:986
+#: doc/classes/ProjectSettings.xml:989
msgid ""
"Max amount of elements renderable in a frame. If more than this are visible "
"per frame, they will be dropped. Keep in mind elements refer to mesh "
"surfaces and not meshes themselves."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:994
msgid ""
"Some NVIDIA GPU drivers have a bug which produces flickering issues for the "
"[code]draw_rect[/code] method, especially as used in [TileMap]. Refer to "
@@ -40246,73 +41012,73 @@ msgid ""
"using the Vulkan backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:995
+#: doc/classes/ProjectSettings.xml:998
msgid ""
"If [code]true[/code], forces snapping of polygons to pixels in 2D rendering. "
"May help in some pixel art styles."
msgstr ""
-#: doc/classes/ProjectSettings.xml:998
+#: doc/classes/ProjectSettings.xml:1001
msgid ""
"Sets the quality of the depth of field effect. Higher quality takes more "
"samples, which is slower but looks smoother."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1001
+#: doc/classes/ProjectSettings.xml:1004
msgid ""
"Sets the depth of field shape. Can be Box, Hexagon, or Circle. Box is the "
"fastest. Circle is the most realistic, but also the most expensive to "
"compute."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1004
+#: doc/classes/ProjectSettings.xml:1007
msgid ""
"If [code]true[/code], jitters DOF samples to make effect slightly blurrier "
"and hide lines created from low sample rates. This can result in a slightly "
"grainy appearance when used with a low number of samples."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1010
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1010
+#: doc/classes/ProjectSettings.xml:1013
msgid ""
"If [code]true[/code], performs a previous depth pass before rendering "
"materials. This increases performance in scenes with high overdraw, when "
"complex materials and lighting are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1016
msgid ""
"The directional shadow's size in pixels. Higher values will result in "
"sharper shadows, at the cost of performance. The value will be rounded up to "
"the nearest power of 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1016
+#: doc/classes/ProjectSettings.xml:1019
msgid ""
"Lower-end override for [member rendering/quality/directional_shadow/size] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1019
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"Quality setting for shadows cast by [DirectionalLight3D]s. Higher quality "
"settings use more samples when reading from shadow maps and are thus slower. "
"Low quality settings may result in shadows looking grainy."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1022
+#: doc/classes/ProjectSettings.xml:1025
msgid ""
"Lower-end override for [member rendering/quality/directional_shadow/"
"soft_shadow_quality] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1028
msgid ""
"The video driver to use (\"GLES2\" or \"Vulkan\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -40322,32 +41088,32 @@ msgid ""
"get_current_video_driver[/code] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1031
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"If [code]true[/code], take additional samples when rendering objects "
"affected by a [GIProbe] to reduce artifacts from only sampling in one "
"direction."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1034
+#: doc/classes/ProjectSettings.xml:1037
msgid ""
"Sets the number of cone samples taken when rendering objects affected by "
"[GIProbe]s."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1037
+#: doc/classes/ProjectSettings.xml:1040
msgid ""
"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."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1040
+#: doc/classes/ProjectSettings.xml:1043
msgid ""
"Lower-end override for [member rendering/quality/glow/upscale_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1043
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Strategy used for framebuffer allocation. The simpler it is, the less "
"resources it uses (but the less features it supports). If set to \"2D "
@@ -40357,41 +41123,41 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1046
+#: doc/classes/ProjectSettings.xml:1049
msgid ""
"Lower-end override for [member rendering/quality/intended_usage/"
"framebuffer_allocation] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1052
msgid ""
"Number of cubemaps to store in the reflection atlas. The number of "
"[ReflectionProbe]s in a scene will be limited by this amount. A higher "
"number requires more VRAM."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1052
+#: doc/classes/ProjectSettings.xml:1055
msgid ""
"Size of cubemap faces for [ReflectionProbe]s. A higher number requires more "
"VRAM and may make reflection probe updating slower."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1055
+#: doc/classes/ProjectSettings.xml:1058
msgid ""
"Lower-end override for [member rendering/quality/reflection_atlas/"
"reflection_size] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1058
+#: doc/classes/ProjectSettings.xml:1061
msgid ""
"Use a higher quality variant of the fast filtering algorithm. Significantly "
"slower than using default quality, but results in smoother reflections. "
"Should only be used when the scene is especially detailed."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1061
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Sets the number of samples to take when using importance sampling for [Sky]s "
"and [ReflectionProbe]s. A higher value will result in smoother, higher "
@@ -40401,19 +41167,19 @@ msgid ""
"environments with a high level of detail."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1064
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Lower-end override for [member rendering/quality/reflections/ggx_samples] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1067
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Limits the number of layers to use in radiance maps when using importance "
"sampling. A lower number will be slightly faster and take up less VRAM."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1070
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise and "
@@ -40422,14 +41188,14 @@ msgid ""
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1073
+#: doc/classes/ProjectSettings.xml:1076
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"texture_array_reflections] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1079
msgid ""
"Sets the number of MSAA samples to use (as a power of two). MSAA is used to "
"reduce aliasing around the edges of polygons. A higher MSAA value results in "
@@ -40437,7 +41203,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1080
+#: doc/classes/ProjectSettings.xml:1083
msgid ""
"Sets the screen-space antialiasing mode for the default screen [Viewport]. "
"Screen-space antialiasing works by selectively blurring edges in a post-"
@@ -40446,133 +41212,117 @@ msgid ""
"MSAA and will smooth out specular aliasing, but tend to make scenes appear "
"blurry.\n"
"Another way to combat specular aliasing is to enable [member rendering/"
-"quality/screen_filters/screen_space_roughness_limiter]."
+"quality/screen_filters/screen_space_roughness_limiter_enabled]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1084
-msgid ""
-"Enables the screen-space roughness limiter which increases material "
-"roughness in areas with a high normal frequency (i.e. when normals change a "
-"lot from pixel to pixel). This helps to reduce the amount of specular "
-"aliasing in a scene. Specular aliasing looks like random bright pixels that "
-"occur in reflections."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:1087
-msgid ""
-"Curves the amount of the roughness limited effect. A higher value limits the "
-"effect to very sharply curved surfaces, while a lower threshold extends the "
-"effect to smoother surfaces."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:1090
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"Sets the quality for rough screen-space reflections. Turning off will make "
"all screen space reflections sharp, while higher values make rough "
"reflections look better."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1093
+#: doc/classes/ProjectSettings.xml:1096
msgid ""
"If [code]true[/code], uses faster but lower-quality Blinn model to generate "
"blurred reflections instead of the GGX model."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1099
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_blinn_over_ggx] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1102
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1102
+#: doc/classes/ProjectSettings.xml:1105
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_lambert_over_burley] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1105
+#: doc/classes/ProjectSettings.xml:1108
msgid ""
"If [code]true[/code], forces vertex shading for all rendering. This can "
"increase performance a lot, but also reduces quality immensely. Can be used "
"to optimize performance on low-end mobile devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1108
+#: doc/classes/ProjectSettings.xml:1111
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_vertex_shading] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1111 doc/classes/ProjectSettings.xml:1114
-#: doc/classes/ProjectSettings.xml:1117 doc/classes/ProjectSettings.xml:1120
+#: doc/classes/ProjectSettings.xml:1114 doc/classes/ProjectSettings.xml:1117
+#: doc/classes/ProjectSettings.xml:1120 doc/classes/ProjectSettings.xml:1123
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1123
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1126
+#: doc/classes/ProjectSettings.xml:1129
msgid ""
"Lower-end override for [member rendering/quality/shadow_atlas/size] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1132
msgid ""
"Quality setting for shadows cast by [OmniLight3D]s and [SpotLight3D]s. "
"Higher quality settings use more samples when reading from shadow maps and "
"are thus slower. Low quality settings may result in shadows looking grainy."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1132
+#: doc/classes/ProjectSettings.xml:1135
msgid ""
"Lower-end override for [member rendering/quality/shadows/"
"soft_shadow_quality] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1135
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"If [code]true[/code], screen-space ambient occlusion will be rendered at "
"half size and then upscaled before being added to the scene. This is "
"significantly faster but may miss small details."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1138
+#: doc/classes/ProjectSettings.xml:1141
msgid ""
"Sets the quality of the screen-space ambient occlusion effect. Higher values "
"take more samples and so will result in better quality, at the cost of "
"performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1144
msgid ""
"Scales the depth over which the subsurface scattering effect is applied. A "
"high value may allow light to scatter into a part of the mesh or another "
"mesh that is close in screen space but far in depth."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1144
+#: doc/classes/ProjectSettings.xml:1147
msgid ""
"Sets the quality of the subsurface scattering effect. Higher values are "
"slower but look nicer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1147
+#: doc/classes/ProjectSettings.xml:1150
msgid ""
"Scales the distance over which samples are taken for subsurface scattering "
"effect. Changing this does not impact performance, but higher values will "
@@ -40580,7 +41330,7 @@ msgid ""
"out. A lower value results in a smaller spread of scattered light."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1150
+#: doc/classes/ProjectSettings.xml:1153
msgid ""
"Sets the maximum number of samples to take when using anisotropic filtering "
"on textures (as a power of two). A higher sample count will result in "
@@ -40589,7 +41339,7 @@ msgid ""
"materials where it is enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1153
+#: doc/classes/ProjectSettings.xml:1156
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -40598,49 +41348,49 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Thread model for rendering. Rendering on a thread can vastly improve "
"performance, but synchronizing to the main thread can cause a bit more "
"jitter."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
"only supported on desktop platforms, and only when using the Vulkan renderer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
"doesn't support alpha channels in textures."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
"compression algorithm is only supported when using the Vulkan renderer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1175
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
"compression algorithm is only supported on iOS."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
"supported on desktop platforms and consoles."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1182
+#: doc/classes/ProjectSettings.xml:1189
msgid "Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses."
msgstr ""
@@ -40670,13 +41420,14 @@ msgstr ""
#: doc/classes/Quat.xml:7
msgid ""
-"A unit quaternion used for representing 3D rotations.\n"
-"It is similar to [Basis], which implements matrix representation of "
-"rotations, and can be parametrized using both an axis-angle pair or Euler "
-"angles. But due to its compactness and the way it is stored in memory, "
-"certain operations (obtaining axis-angle and performing SLERP, in "
-"particular) are more efficient and robust against floating-point errors.\n"
-"Quaternions need to be (re)normalized."
+"A unit quaternion used for representing 3D rotations. Quaternions need to be "
+"normalized to be used for rotation.\n"
+"It is similar to Basis, which implements matrix representation of rotations, "
+"and can be parametrized using both an axis-angle pair or Euler angles. Basis "
+"stores rotation, scale, and shearing, while Quat only stores rotation.\n"
+"Due to its compactness and the way it is stored in memory, certain "
+"operations (obtaining axis-angle and performing SLERP, in particular) are "
+"more efficient and robust against floating-point errors."
msgstr ""
#: doc/classes/Quat.xml:12
@@ -40686,29 +41437,33 @@ msgid ""
msgstr ""
#: doc/classes/Quat.xml:21
-msgid "Returns the rotation matrix corresponding to the given quaternion."
-msgstr ""
+#, fuzzy
+msgid "Constructs a quaternion from the given [Basis]."
+msgstr "Construit une nouvelle chaîne de caractères à partir du [Basis] donné."
#: doc/classes/Quat.xml:30
msgid ""
-"Returns a quaternion that will perform a rotation specified by Euler angles "
-"(in the YXZ convention: first Z, then X, and Y last), given in the vector "
-"format as (X angle, Y angle, Z angle)."
+"Constructs a quaternion that will perform a rotation specified by Euler "
+"angles (in the YXZ convention: when decomposing, first Z, then X, and Y "
+"last), given in the vector format as (X angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:41
msgid ""
-"Returns a quaternion that will rotate around the given axis by the specified "
-"angle. The axis must be a normalized vector."
+"Constructs a quaternion that will rotate around the given axis by the "
+"specified angle. The axis must be a normalized vector."
msgstr ""
#: doc/classes/Quat.xml:56
-msgid "Returns a quaternion defined by these values."
-msgstr ""
+#, fuzzy
+msgid "Constructs a quaternion defined by the given values."
+msgstr "Construit une nouvelle chaîne de caractères à partir du [Plane] donné."
#: doc/classes/Quat.xml:71
msgid ""
-"Performs a cubic spherical-linear interpolation with another quaternion."
+"Performs a cubic spherical interpolation between quaternions [code]preA[/"
+"code], this vector, [code]b[/code], and [code]postB[/code], by the given "
+"amount [code]t[/code]."
msgstr ""
#: doc/classes/Quat.xml:80
@@ -40717,10 +41472,10 @@ msgstr ""
#: doc/classes/Quat.xml:87
msgid ""
-"Returns Euler angles (in the YXZ convention: first Z, then X, and Y last) "
-"corresponding to the rotation represented by the unit quaternion. Returned "
-"vector contains the rotation angles in the format (X angle, Y angle, Z "
-"angle)."
+"Returns Euler angles (in the YXZ convention: when decomposing, first Z, then "
+"X, and Y last) corresponding to the rotation represented by the unit "
+"quaternion. Returned vector contains the rotation angles in the format (X "
+"angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:94
@@ -40759,44 +41514,57 @@ msgstr ""
#: doc/classes/Quat.xml:151
msgid ""
"Sets the quaternion to a rotation specified by Euler angles (in the YXZ "
-"convention: first Z, then X, and Y last), given in the vector format as (X "
-"angle, Y angle, Z angle)."
+"convention: when decomposing, first Z, then X, and Y last), given in the "
+"vector format as (X angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:162
-msgid "Performs a spherical-linear interpolation with another quaternion."
+msgid ""
+"Returns the result of the spherical linear interpolation between this "
+"quaternion and [code]to[/code] by amount [code]weight[/code].\n"
+"[b]Note:[/b] Both quaternions must be normalized."
msgstr ""
-#: doc/classes/Quat.xml:173
+#: doc/classes/Quat.xml:174
msgid ""
-"Performs a spherical-linear interpolation with another quaterion without "
-"checking if the rotation path is not bigger than 90°."
+"Returns the result of the spherical linear interpolation between this "
+"quaternion and [code]to[/code] by amount [code]weight[/code], but without "
+"checking if the rotation path is not bigger than 90 degrees."
msgstr ""
-#: doc/classes/Quat.xml:182
-msgid "Transforms the vector [code]v[/code] by this quaternion."
+#: doc/classes/Quat.xml:183
+msgid "Returns a vector transformed (multiplied) by this quaternion."
msgstr ""
-#: doc/classes/Quat.xml:188
-msgid "W component of the quaternion."
+#: doc/classes/Quat.xml:189
+msgid ""
+"W component of the quaternion (real part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:191
-msgid "X component of the quaternion."
+#: doc/classes/Quat.xml:193
+msgid ""
+"X component of the quaternion (imaginary [code]i[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:194
-msgid "Y component of the quaternion."
+#: doc/classes/Quat.xml:197
+msgid ""
+"Y component of the quaternion (imaginary [code]j[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:197
-msgid "Z component of the quaternion."
+#: doc/classes/Quat.xml:201
+msgid ""
+"Z component of the quaternion (imaginary [code]k[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:202
+#: doc/classes/Quat.xml:207
msgid ""
-"The identity rotation. Equivalent to an identity matrix. If a vector is "
-"transformed by an identity quaternion, it will not change."
+"The identity quaternion, representing no rotation. Equivalent to an identity "
+"[Basis] matrix. If a vector is transformed by an identity quaternion, it "
+"will not change."
msgstr ""
#: doc/classes/RandomNumberGenerator.xml:4
@@ -40999,7 +41767,8 @@ msgid ""
"collision information immediately instead of waiting for the next "
"[code]_physics_process[/code] call, for example if the ray or its parent has "
"changed state.\n"
-"[b]Note:[/b] [code]enabled == true[/code] is not required for this to work."
+"[b]Note:[/b] [member enabled] does not need to be [code]true[/code] for this "
+"to work."
msgstr ""
#: doc/classes/RayCast2D.xml:54 doc/classes/RayCast3D.xml:55
@@ -41105,7 +41874,8 @@ msgid ""
"Use this method to update the collision information immediately instead of "
"waiting for the next [code]_physics_process[/code] call, for example if the "
"ray or its parent has changed state.\n"
-"[b]Note:[/b] [code]enabled == true[/code] is not required for this to work."
+"[b]Note:[/b] [member enabled] does not need to be [code]true[/code] for this "
+"to work."
msgstr ""
#: doc/classes/RayCast3D.xml:71
@@ -41263,14 +42033,6 @@ msgstr ""
msgid "Returns a larger [Rect2] that contains this [Rect2] and [code]b[/code]."
msgstr ""
-#: doc/classes/Rect2.xml:174 doc/classes/Rect2i.xml:163
-msgid "Ending corner."
-msgstr ""
-
-#: doc/classes/Rect2.xml:177 doc/classes/Rect2i.xml:166
-msgid "Position (starting corner)."
-msgstr ""
-
#: doc/classes/Rect2i.xml:4
msgid "2D axis-aligned bounding box using integer coordinates."
msgstr ""
@@ -41388,22 +42150,22 @@ msgstr ""
msgid ""
"Base class for any object that keeps a reference count. [Resource] and many "
"other helper objects inherit this class.\n"
-"References keep an internal reference counter so that they are automatically "
-"released when no longer in use, and only then. References therefore do not "
-"need to be freed manually with [method Object.free].\n"
+"Unlike [Object]s, References keep an internal reference counter so that they "
+"are automatically released when no longer in use, and only then. References "
+"therefore do not need to be freed manually with [method Object.free].\n"
"In the vast majority of use cases, instantiating and using [Reference]-"
"derived types is all you need to do. The methods provided in this class are "
"only for advanced users, and can cause issues if misused."
msgstr ""
-#: doc/classes/Reference.xml:18
+#: doc/classes/Reference.xml:19
msgid ""
"Initializes the internal reference counter. Use this only if you really know "
"what you are doing.\n"
"Returns whether the initialization was successful."
msgstr ""
-#: doc/classes/Reference.xml:26
+#: doc/classes/Reference.xml:27
msgid ""
"Increments the internal reference counter. Use this only if you really know "
"what you are doing.\n"
@@ -41411,7 +42173,7 @@ msgid ""
"code] otherwise."
msgstr ""
-#: doc/classes/Reference.xml:34
+#: doc/classes/Reference.xml:35
msgid ""
"Decrements the internal reference counter. Use this only if you really know "
"what you are doing.\n"
@@ -41460,14 +42222,14 @@ msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/reflection_probes.html"
msgstr ""
-#: doc/classes/ReflectionProbe.xml:17
+#: doc/classes/ReflectionProbe.xml:23
msgid ""
"If [code]true[/code], enables box projection. This makes reflections look "
"more correct in rectangle-shaped rooms by offsetting the reflection center "
"depending on the camera's location."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:20
+#: doc/classes/ReflectionProbe.xml:26
msgid ""
"Sets the cull mask which determines what objects are drawn by this probe. "
"Every [VisualInstance3D] with a layer included in this cull mask will be "
@@ -41476,78 +42238,56 @@ msgid ""
"rendering cost."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:23
+#: doc/classes/ReflectionProbe.xml:29
msgid ""
"If [code]true[/code], computes shadows in the reflection probe. This makes "
"the reflection probe slower to render; you may want to disable this if using "
"the [constant UPDATE_ALWAYS] [member update_mode]."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:26
+#: doc/classes/ReflectionProbe.xml:32
msgid ""
"The size of the reflection probe. The larger the extents the more space "
"covered by the probe which will lower the perceived resolution. It is best "
"to keep the extents only as large as you need them."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:29
+#: doc/classes/ReflectionProbe.xml:35
msgid ""
"Defines the reflection intensity. Intensity modulates the strength of the "
"reflection."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:32
-msgid ""
-"Sets the ambient light color to be used when this probe is set to [member "
-"interior_enable]."
-msgstr ""
-
-#: doc/classes/ReflectionProbe.xml:35
-msgid ""
-"Sets the contribution value for how much the reflection affects the ambient "
-"light for this reflection probe when set to [member interior_enable]. Useful "
-"so that ambient light matches the color of the room."
-msgstr ""
-
#: doc/classes/ReflectionProbe.xml:38
-msgid ""
-"Sets the energy multiplier for this reflection probe's ambient light "
-"contribution when set to [member interior_enable]."
+msgid "If [code]true[/code], reflections will ignore sky contribution."
msgstr ""
#: doc/classes/ReflectionProbe.xml:41
msgid ""
-"If [code]true[/code], reflections will ignore sky contribution. Ambient "
-"lighting is then controlled by the [code]interior_ambient_*[/code] "
-"properties."
-msgstr ""
-
-#: doc/classes/ReflectionProbe.xml:44
-msgid ""
"Sets the max distance away from the probe an object can be before it is "
"culled."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:47
+#: doc/classes/ReflectionProbe.xml:44
msgid ""
"Sets the origin offset to be used when this reflection probe is in box "
"project mode."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:50
+#: doc/classes/ReflectionProbe.xml:47
msgid ""
"Sets how frequently the probe is updated. Can be [constant UPDATE_ONCE] or "
"[constant UPDATE_ALWAYS]."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:55
+#: doc/classes/ReflectionProbe.xml:52
msgid ""
"Update the probe once on the next frame. The corresponding radiance map will "
"be generated over the following six frames. This is slower to update than "
"[constant UPDATE_ALWAYS] but can result in higher quality reflections."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:58
+#: doc/classes/ReflectionProbe.xml:55
msgid ""
"Update the probe every frame. This is needed when you want to capture "
"dynamic objects. However, it results in an increased render time. Use "
@@ -41577,10 +42317,10 @@ msgid ""
"read by RegEx as [code]\\d+[/code]. Similarly, [code]compile(\"\\\"(?:\\\\\\"
"\\.|[^\\\"])*\\\"\")[/code] would be read as [code]\"(?:\\\\.|[^\"])*\"[/"
"code].\n"
-"Using [method search] you can find the pattern within the given text. If a "
+"Using [method search], you can find the pattern within the given text. If a "
"pattern is found, [RegExMatch] is returned and you can retrieve details of "
-"the results using functions such as [method RegExMatch.get_string] and "
-"[method RegExMatch.get_start].\n"
+"the results using methods such as [method RegExMatch.get_string] and [method "
+"RegExMatch.get_start].\n"
"[codeblock]\n"
"var regex = RegEx.new()\n"
"regex.compile(\"\\\\w-(\\\\d+)\")\n"
@@ -41589,7 +42329,7 @@ msgid ""
" print(result.get_string()) # Would print n-0123\n"
"[/codeblock]\n"
"The results of capturing groups [code]()[/code] can be retrieved by passing "
-"the group number to the various functions in [RegExMatch]. Group 0 is the "
+"the group number to the various methods in [RegExMatch]. Group 0 is the "
"default and will always refer to the entire pattern. In the above example, "
"calling [code]result.get_string(1)[/code] would give you [code]0123[/code].\n"
"This version of RegEx also supports named capturing groups, and the names "
@@ -41610,6 +42350,15 @@ msgid ""
" print(result.get_string(\"digit\"))\n"
"# Would print 01 03 0 3f 42\n"
"[/codeblock]\n"
+"[b]Example of splitting a string using a RegEx:[/b]\n"
+"[codeblock]\n"
+"var regex = RegEx.new()\n"
+"regex.compile(\"\\\\S+\") # Negated whitespace character class.\n"
+"var results = []\n"
+"for match in regex.search_all(\"One Two \\n\\tThree\"):\n"
+" results.push_back(match.get_string())\n"
+"# The `results` array now contains \"One\", \"Two\", \"Three\".\n"
+"[/codeblock]\n"
"[b]Note:[/b] Godot's regex implementation is based on the [url=https://www."
"pcre.org/]PCRE2[/url] library. You can view the full pattern reference "
"[url=https://www.pcre.org/current/doc/html/pcre2pattern.html]here[/url].\n"
@@ -41617,38 +42366,38 @@ msgid ""
"regular expressions online."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:47
+#: modules/regex/doc_classes/RegEx.xml:56
msgid ""
"This method resets the state of the object, as if it was freshly created. "
"Namely, it unassigns the regular expression of this object."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:56
+#: modules/regex/doc_classes/RegEx.xml:65
msgid ""
"Compiles and assign the search pattern to use. Returns [constant OK] if the "
"compilation is successful. If an error is encountered, details are printed "
"to standard output and an error is returned."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:63
+#: modules/regex/doc_classes/RegEx.xml:72
msgid "Returns the number of capturing groups in compiled pattern."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:70
+#: modules/regex/doc_classes/RegEx.xml:79
msgid ""
"Returns an array of names of named capturing groups in the compiled pattern. "
"They are ordered by appearance."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:77
+#: modules/regex/doc_classes/RegEx.xml:86
msgid "Returns the original search pattern that was compiled."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:84
+#: modules/regex/doc_classes/RegEx.xml:93
msgid "Returns whether this object has a valid search pattern assigned."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:97
+#: modules/regex/doc_classes/RegEx.xml:106
msgid ""
"Searches the text for the compiled pattern. Returns a [RegExMatch] container "
"of the first matching result if found, otherwise [code]null[/code]. The "
@@ -41656,7 +42405,7 @@ msgid ""
"and end anchor would be."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:110
+#: modules/regex/doc_classes/RegEx.xml:119
msgid ""
"Searches the text for the compiled pattern. Returns an array of [RegExMatch] "
"containers for each non-overlapping result. If no results were found, an "
@@ -41664,7 +42413,7 @@ msgid ""
"specified without modifying where the start and end anchor would be."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:127
+#: modules/regex/doc_classes/RegEx.xml:136
msgid ""
"Searches the text for the compiled pattern and replaces it with the "
"specified string. Escapes and backreferences such as [code]$1[/code] and "
@@ -42391,7 +43140,7 @@ msgid ""
msgstr ""
#: doc/classes/RenderingServer.xml:1222 doc/classes/RenderingServer.xml:1250
-#: doc/classes/RenderingServer.xml:1527
+#: doc/classes/RenderingServer.xml:1537
msgid "Not implemented in Godot 3.x."
msgstr ""
@@ -42538,30 +43287,30 @@ msgid ""
"OmniLight3D.omni_shadow_mode]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1481
+#: doc/classes/RenderingServer.xml:1491
msgid ""
"Sets the color of the light. Equivalent to [member Light3D.light_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1492
+#: doc/classes/RenderingServer.xml:1502
msgid ""
"Sets the cull mask for this Light3D. Lights only affect objects in the "
"selected layers. Equivalent to [member Light3D.light_cull_mask]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1503
+#: doc/classes/RenderingServer.xml:1513
msgid ""
"If [code]true[/code], light will subtract light instead of adding light. "
"Equivalent to [member Light3D.light_negative]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1516
+#: doc/classes/RenderingServer.xml:1526
msgid ""
"Sets the specified light parameter. See [enum LightParam] for options. "
"Equivalent to [method Light3D.set_param]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1538
+#: doc/classes/RenderingServer.xml:1548
msgid ""
"If [code]true[/code], reverses the backface culling of the mesh. This can be "
"useful when you have a flat mesh that has a light behind it. If you need to "
@@ -42570,29 +43319,25 @@ msgid ""
"to [member Light3D.shadow_reverse_cull_face]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1549
+#: doc/classes/RenderingServer.xml:1559
msgid ""
"If [code]true[/code], light will cast shadows. Equivalent to [member Light3D."
"shadow_enabled]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1560
+#: doc/classes/RenderingServer.xml:1570
msgid ""
"Sets the color of the shadow cast by the light. Equivalent to [member "
"Light3D.shadow_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1571
-msgid "Sets whether GI probes capture light information from this light."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:1584
+#: doc/classes/RenderingServer.xml:1583
msgid ""
"Returns a mesh of a sphere with the given amount of horizontal and vertical "
"subdivisions."
msgstr ""
-#: doc/classes/RenderingServer.xml:1591
+#: doc/classes/RenderingServer.xml:1590
msgid ""
"Creates an empty material and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42601,31 +43346,31 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:1603
+#: doc/classes/RenderingServer.xml:1602
msgid "Returns the value of a certain material's parameter."
msgstr ""
-#: doc/classes/RenderingServer.xml:1614
+#: doc/classes/RenderingServer.xml:1613
msgid "Sets an object's next material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1627
+#: doc/classes/RenderingServer.xml:1626
msgid "Sets a material's parameter."
msgstr ""
-#: doc/classes/RenderingServer.xml:1638
+#: doc/classes/RenderingServer.xml:1637
msgid "Sets a material's render priority."
msgstr ""
-#: doc/classes/RenderingServer.xml:1649
+#: doc/classes/RenderingServer.xml:1648
msgid "Sets a shader material's shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:1678
+#: doc/classes/RenderingServer.xml:1677
msgid "Removes all surfaces from a mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1685
+#: doc/classes/RenderingServer.xml:1684
msgid ""
"Creates a new mesh and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all [code]mesh_*[/"
@@ -42636,58 +43381,58 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:1696
+#: doc/classes/RenderingServer.xml:1695
msgid "Returns a mesh's blend shape count."
msgstr ""
-#: doc/classes/RenderingServer.xml:1705
+#: doc/classes/RenderingServer.xml:1704
msgid "Returns a mesh's blend shape mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:1714
+#: doc/classes/RenderingServer.xml:1713
msgid "Returns a mesh's custom aabb."
msgstr ""
-#: doc/classes/RenderingServer.xml:1723
+#: doc/classes/RenderingServer.xml:1722
msgid "Returns a mesh's number of surfaces."
msgstr ""
-#: doc/classes/RenderingServer.xml:1734
+#: doc/classes/RenderingServer.xml:1733
msgid "Sets a mesh's blend shape mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:1745
+#: doc/classes/RenderingServer.xml:1744
msgid "Sets a mesh's custom aabb."
msgstr ""
-#: doc/classes/RenderingServer.xml:1756
+#: doc/classes/RenderingServer.xml:1755
msgid "Returns a mesh's surface's buffer arrays."
msgstr ""
-#: doc/classes/RenderingServer.xml:1767
+#: doc/classes/RenderingServer.xml:1766
msgid "Returns a mesh's surface's arrays for blend shapes."
msgstr ""
-#: doc/classes/RenderingServer.xml:1782 doc/classes/RenderingServer.xml:1795
+#: doc/classes/RenderingServer.xml:1781 doc/classes/RenderingServer.xml:1794
msgid "Function is unused in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:1806
+#: doc/classes/RenderingServer.xml:1805
msgid "Returns a mesh's surface's material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1819
+#: doc/classes/RenderingServer.xml:1818
msgid "Sets a mesh's surface's material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1834
+#: doc/classes/RenderingServer.xml:1833
msgid ""
"Updates a specific region of a vertex buffer for the specified surface. "
"Warning: this function alters the vertex buffer directly with no safety "
"mechanisms, you can easily corrupt your mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1857
+#: doc/classes/RenderingServer.xml:1856
msgid ""
"Creates a new multimesh on the RenderingServer and returns an [RID] handle. "
"This RID will be used in all [code]multimesh_*[/code] RenderingServer "
@@ -42698,82 +43443,82 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:1868
+#: doc/classes/RenderingServer.xml:1867
msgid ""
"Calculates and returns the axis-aligned bounding box that encloses all "
"instances within the multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1885
+#: doc/classes/RenderingServer.xml:1884
msgid "Returns the number of instances allocated for this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1894
+#: doc/classes/RenderingServer.xml:1893
msgid ""
"Returns the RID of the mesh that will be used in drawing this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1903
+#: doc/classes/RenderingServer.xml:1902
msgid "Returns the number of visible instances for this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1914
+#: doc/classes/RenderingServer.xml:1913
msgid "Returns the color by which the specified instance will be modulated."
msgstr ""
-#: doc/classes/RenderingServer.xml:1925
+#: doc/classes/RenderingServer.xml:1924
msgid "Returns the custom data associated with the specified instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:1936
+#: doc/classes/RenderingServer.xml:1935
msgid "Returns the [Transform] of the specified instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:1947
+#: doc/classes/RenderingServer.xml:1946
msgid ""
"Returns the [Transform2D] of the specified instance. For use when the "
"multimesh is set to use 2D transforms."
msgstr ""
-#: doc/classes/RenderingServer.xml:1960
+#: doc/classes/RenderingServer.xml:1959
msgid ""
"Sets the color by which this instance will be modulated. Equivalent to "
"[method MultiMesh.set_instance_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1973
+#: doc/classes/RenderingServer.xml:1972
msgid ""
"Sets the custom data for this instance. Custom data is passed as a [Color], "
"but is interpreted as a [code]vec4[/code] in the shader. Equivalent to "
"[method MultiMesh.set_instance_custom_data]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1986
+#: doc/classes/RenderingServer.xml:1985
msgid ""
"Sets the [Transform] for this instance. Equivalent to [method MultiMesh."
"set_instance_transform]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1999
+#: doc/classes/RenderingServer.xml:1998
msgid ""
"Sets the [Transform2D] for this instance. For use when multimesh is used in "
"2D. Equivalent to [method MultiMesh.set_instance_transform_2d]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2020
+#: doc/classes/RenderingServer.xml:2019
msgid ""
"Sets the mesh to be drawn by the multimesh. Equivalent to [member MultiMesh."
"mesh]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2031
+#: doc/classes/RenderingServer.xml:2030
msgid ""
"Sets the number of instances visible at a given time. If -1, all instances "
"that have been allocated are drawn. Equivalent to [member MultiMesh."
"visible_instance_count]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2038
+#: doc/classes/RenderingServer.xml:2037
msgid ""
"Creates a new omni light and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID can be used in most "
@@ -42784,7 +43529,7 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2047
+#: doc/classes/RenderingServer.xml:2046
msgid ""
"Creates a particle system and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42795,23 +43540,23 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2058
+#: doc/classes/RenderingServer.xml:2057
msgid ""
"Calculates and returns the axis-aligned bounding box that contains all the "
"particles. Equivalent to [method GPUParticles3D.capture_aabb]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2067
+#: doc/classes/RenderingServer.xml:2066
msgid "Returns [code]true[/code] if particles are currently set to emitting."
msgstr ""
-#: doc/classes/RenderingServer.xml:2076
+#: doc/classes/RenderingServer.xml:2075
msgid ""
"Returns [code]true[/code] if particles are not emitting and particles are "
"set to inactive."
msgstr ""
-#: doc/classes/RenderingServer.xml:2085
+#: doc/classes/RenderingServer.xml:2084
msgid ""
"Add particle system to list of particle systems that need to be updated. "
"Update will take place on the next frame, or on the next call to [method "
@@ -42819,121 +43564,121 @@ msgid ""
"instances_cull_ray]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2094
+#: doc/classes/RenderingServer.xml:2093
msgid ""
"Reset the particles on the next update. Equivalent to [method GPUParticles3D."
"restart]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2105
+#: doc/classes/RenderingServer.xml:2104
msgid ""
"Sets the number of particles to be drawn and allocates the memory for them. "
"Equivalent to [member GPUParticles3D.amount]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2116
+#: doc/classes/RenderingServer.xml:2115
msgid ""
"Sets a custom axis-aligned bounding box for the particle system. Equivalent "
"to [member GPUParticles3D.visibility_aabb]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2127
+#: doc/classes/RenderingServer.xml:2126
msgid ""
"Sets the draw order of the particles to one of the named enums from [enum "
"ParticlesDrawOrder]. See [enum ParticlesDrawOrder] for options. Equivalent "
"to [member GPUParticles3D.draw_order]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2140
+#: doc/classes/RenderingServer.xml:2139
msgid ""
"Sets the mesh to be used for the specified draw pass. Equivalent to [member "
"GPUParticles3D.draw_pass_1], [member GPUParticles3D.draw_pass_2], [member "
"GPUParticles3D.draw_pass_3], and [member GPUParticles3D.draw_pass_4]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2151
+#: doc/classes/RenderingServer.xml:2150
msgid ""
"Sets the number of draw passes to use. Equivalent to [member GPUParticles3D."
"draw_passes]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2162
+#: doc/classes/RenderingServer.xml:2161
msgid ""
"Sets the [Transform] that will be used by the particles when they first emit."
msgstr ""
-#: doc/classes/RenderingServer.xml:2173
+#: doc/classes/RenderingServer.xml:2172
msgid ""
"If [code]true[/code], particles will emit over time. Setting to false does "
"not reset the particles, but only stops their emission. Equivalent to "
"[member GPUParticles3D.emitting]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2184
+#: doc/classes/RenderingServer.xml:2183
msgid ""
"Sets the explosiveness ratio. Equivalent to [member GPUParticles3D."
"explosiveness]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2195
+#: doc/classes/RenderingServer.xml:2194
msgid ""
"Sets the frame rate that the particle system rendering will be fixed to. "
"Equivalent to [member GPUParticles3D.fixed_fps]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2206
+#: doc/classes/RenderingServer.xml:2205
msgid ""
"If [code]true[/code], uses fractional delta which smooths the movement of "
"the particles. Equivalent to [member GPUParticles3D.fract_delta]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2217
+#: doc/classes/RenderingServer.xml:2216
msgid ""
"Sets the lifetime of each particle in the system. Equivalent to [member "
"GPUParticles3D.lifetime]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2228
+#: doc/classes/RenderingServer.xml:2227
msgid ""
"If [code]true[/code], particles will emit once and then stop. Equivalent to "
"[member GPUParticles3D.one_shot]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2239
+#: doc/classes/RenderingServer.xml:2238
msgid ""
"Sets the preprocess time for the particles animation. This lets you delay "
"starting an animation until after the particles have begun emitting. "
"Equivalent to [member GPUParticles3D.preprocess]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2250
+#: doc/classes/RenderingServer.xml:2249
msgid ""
"Sets the material for processing the particles. Note: this is not the "
"material used to draw the materials. Equivalent to [member GPUParticles3D."
"process_material]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2261
+#: doc/classes/RenderingServer.xml:2260
msgid ""
"Sets the emission randomness ratio. This randomizes the emission of "
"particles within their phase. Equivalent to [member GPUParticles3D."
"randomness]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2272
+#: doc/classes/RenderingServer.xml:2271
msgid ""
"Sets the speed scale of the particle system. Equivalent to [member "
"GPUParticles3D.speed_scale]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2283
+#: doc/classes/RenderingServer.xml:2282
msgid ""
"If [code]true[/code], particles use local coordinates. If [code]false[/code] "
"they use global coordinates. Equivalent to [member GPUParticles3D."
"local_coords]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2290
+#: doc/classes/RenderingServer.xml:2289
msgid ""
"Creates a reflection probe and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42944,85 +43689,64 @@ msgid ""
"[method instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2303
+#: doc/classes/RenderingServer.xml:2332
msgid ""
"If [code]true[/code], reflections will ignore sky contribution. Equivalent "
-"to [member ReflectionProbe.interior_enable]."
+"to [member ReflectionProbe.interior]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2314
+#: doc/classes/RenderingServer.xml:2343
msgid ""
"Sets the render cull mask for this reflection probe. Only instances with a "
"matching cull mask will be rendered by this probe. Equivalent to [member "
"ReflectionProbe.cull_mask]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2325
+#: doc/classes/RenderingServer.xml:2354
msgid ""
"If [code]true[/code], uses box projection. This can make reflections look "
"more correct in certain situations. Equivalent to [member ReflectionProbe."
"box_projection]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2336
+#: doc/classes/RenderingServer.xml:2365
msgid ""
"If [code]true[/code], computes shadows in the reflection probe. This makes "
"the reflection much slower to compute. Equivalent to [member ReflectionProbe."
"enable_shadows]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2347
+#: doc/classes/RenderingServer.xml:2376
msgid ""
"Sets the size of the area that the reflection probe will capture. Equivalent "
"to [member ReflectionProbe.extents]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2358
+#: doc/classes/RenderingServer.xml:2387
msgid ""
"Sets the intensity of the reflection probe. Intensity modulates the strength "
"of the reflection. Equivalent to [member ReflectionProbe.intensity]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2369
-msgid ""
-"Sets the ambient light color for this reflection probe when set to interior "
-"mode. Equivalent to [member ReflectionProbe.interior_ambient_color]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2380
-msgid ""
-"Sets the energy multiplier for this reflection probes ambient light "
-"contribution when set to interior mode. Equivalent to [member "
-"ReflectionProbe.interior_ambient_energy]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2391
-msgid ""
-"Sets the contribution value for how much the reflection affects the ambient "
-"light for this reflection probe when set to interior mode. Useful so that "
-"ambient light matches the color of the room. Equivalent to [member "
-"ReflectionProbe.interior_ambient_contrib]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2402
+#: doc/classes/RenderingServer.xml:2398
msgid ""
"Sets the max distance away from the probe an object can be before it is "
"culled. Equivalent to [member ReflectionProbe.max_distance]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2413
+#: doc/classes/RenderingServer.xml:2409
msgid ""
"Sets the origin offset to be used when this reflection probe is in box "
"project mode. Equivalent to [member ReflectionProbe.origin_offset]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2424
+#: doc/classes/RenderingServer.xml:2420
msgid ""
"Sets how often the reflection probe updates. Can either be once or every "
"frame. See [enum ReflectionProbeUpdateMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2437
+#: doc/classes/RenderingServer.xml:2433
msgid ""
"Schedules a callback to the corresponding named [code]method[/code] on "
"[code]where[/code] after a frame has been drawn.\n"
@@ -43030,7 +43754,7 @@ msgid ""
"[code]userdata[/code]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2445
+#: doc/classes/RenderingServer.xml:2441
msgid ""
"Creates a scenario and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all "
@@ -43040,24 +43764,24 @@ msgid ""
"The scenario is the 3D world that all the visual instances exist in."
msgstr ""
-#: doc/classes/RenderingServer.xml:2458
+#: doc/classes/RenderingServer.xml:2454
msgid ""
"Sets the [enum ScenarioDebugMode] for this scenario. See [enum "
"ScenarioDebugMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2469
+#: doc/classes/RenderingServer.xml:2465
msgid "Sets the environment that will be used with this scenario."
msgstr ""
-#: doc/classes/RenderingServer.xml:2480
+#: doc/classes/RenderingServer.xml:2476
msgid ""
"Sets the fallback environment to be used by this scenario. The fallback "
"environment is used if no environment is set. Internally, this is used by "
"the editor to provide a default environment."
msgstr ""
-#: doc/classes/RenderingServer.xml:2495
+#: doc/classes/RenderingServer.xml:2491
msgid ""
"Sets a boot image. The color defines the background color. If [code]scale[/"
"code] is [code]true[/code], the image will be scaled to fit the screen size. "
@@ -43066,19 +43790,19 @@ msgid ""
"the image will be scaled with nearest-neighbor interpolation."
msgstr ""
-#: doc/classes/RenderingServer.xml:2504
+#: doc/classes/RenderingServer.xml:2500
msgid ""
"If [code]true[/code], the engine will generate wireframes for use with the "
"wireframe debug mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:2513
+#: doc/classes/RenderingServer.xml:2509
msgid ""
"Sets the default clear color which is used when a specific clear color has "
"not been selected."
msgstr ""
-#: doc/classes/RenderingServer.xml:2520
+#: doc/classes/RenderingServer.xml:2516
msgid ""
"Creates an empty shader and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -43087,47 +43811,47 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2530
+#: doc/classes/RenderingServer.xml:2526
msgid "Returns a shader's code."
msgstr ""
-#: doc/classes/RenderingServer.xml:2541
+#: doc/classes/RenderingServer.xml:2537
msgid "Returns a default texture from a shader searched by name."
msgstr ""
-#: doc/classes/RenderingServer.xml:2560
+#: doc/classes/RenderingServer.xml:2556
msgid "Returns the parameters of a shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:2571
+#: doc/classes/RenderingServer.xml:2567
msgid "Sets a shader's code."
msgstr ""
-#: doc/classes/RenderingServer.xml:2584
+#: doc/classes/RenderingServer.xml:2580
msgid "Sets a shader's default texture. Overwrites the texture given by name."
msgstr ""
-#: doc/classes/RenderingServer.xml:2597
+#: doc/classes/RenderingServer.xml:2593
msgid "Allocates the GPU buffers for this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2608
+#: doc/classes/RenderingServer.xml:2604
msgid "Returns the [Transform] set for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2619
+#: doc/classes/RenderingServer.xml:2615
msgid "Returns the [Transform2D] set for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2632
+#: doc/classes/RenderingServer.xml:2628
msgid "Sets the [Transform] for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2645
+#: doc/classes/RenderingServer.xml:2641
msgid "Sets the [Transform2D] for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2652
+#: doc/classes/RenderingServer.xml:2648
msgid ""
"Creates a skeleton and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all "
@@ -43136,11 +43860,11 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2662
+#: doc/classes/RenderingServer.xml:2658
msgid "Returns the number of bones allocated for this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2669
+#: doc/classes/RenderingServer.xml:2665
msgid ""
"Creates an empty sky and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all [code]sky_*[/"
@@ -43149,13 +43873,13 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2681
+#: doc/classes/RenderingServer.xml:2677
msgid ""
"Sets the material that the sky uses to render the background and reflection "
"maps."
msgstr ""
-#: doc/classes/RenderingServer.xml:2688
+#: doc/classes/RenderingServer.xml:2684
msgid ""
"Creates a spot light and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID can be used in most [code]light_*[/"
@@ -43166,15 +43890,15 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2717
+#: doc/classes/RenderingServer.xml:2713
msgid "Sets a viewport's camera."
msgstr ""
-#: doc/classes/RenderingServer.xml:2728
+#: doc/classes/RenderingServer.xml:2724
msgid "Sets a viewport's canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:2741
+#: doc/classes/RenderingServer.xml:2737
msgid ""
"Copies the viewport to a region of the screen specified by [code]rect[/"
"code]. If [method viewport_set_render_direct_to_screen] is [code]true[/"
@@ -43196,7 +43920,7 @@ msgid ""
"viewport_set_render_direct_to_screen]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2755
+#: doc/classes/RenderingServer.xml:2751
msgid ""
"Creates an empty viewport and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -43205,72 +43929,72 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2767
+#: doc/classes/RenderingServer.xml:2763
msgid ""
"Returns a viewport's render information. For options, see the [enum "
"ViewportRenderInfo] constants."
msgstr ""
-#: doc/classes/RenderingServer.xml:2776
+#: doc/classes/RenderingServer.xml:2772
msgid "Returns the viewport's last rendered frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:2787
+#: doc/classes/RenderingServer.xml:2783
msgid "Detaches a viewport from a canvas and vice versa."
msgstr ""
-#: doc/classes/RenderingServer.xml:2798
+#: doc/classes/RenderingServer.xml:2794
msgid "If [code]true[/code], sets the viewport active, else sets it inactive."
msgstr ""
-#: doc/classes/RenderingServer.xml:2813
+#: doc/classes/RenderingServer.xml:2809
msgid ""
"Sets the stacking order for a viewport's canvas.\n"
"[code]layer[/code] is the actual canvas layer, while [code]sublayer[/code] "
"specifies the stacking order of the canvas among those in the same layer."
msgstr ""
-#: doc/classes/RenderingServer.xml:2827
+#: doc/classes/RenderingServer.xml:2823
msgid "Sets the transformation of a viewport's canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:2838
+#: doc/classes/RenderingServer.xml:2834
msgid ""
"Sets the clear mode of a viewport. See [enum ViewportClearMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2849
+#: doc/classes/RenderingServer.xml:2845
msgid ""
"Sets the debug draw mode of a viewport. See [enum ViewportDebugDraw] for "
"options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2860
+#: doc/classes/RenderingServer.xml:2856
msgid ""
"If [code]true[/code], rendering of a viewport's environment is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:2871
+#: doc/classes/RenderingServer.xml:2867
msgid "Sets the viewport's global transformation matrix."
msgstr ""
-#: doc/classes/RenderingServer.xml:2882
+#: doc/classes/RenderingServer.xml:2878
msgid "If [code]true[/code], the viewport's canvas is not rendered."
msgstr ""
-#: doc/classes/RenderingServer.xml:2893
+#: doc/classes/RenderingServer.xml:2889
msgid "Currently unimplemented in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:2904
+#: doc/classes/RenderingServer.xml:2900
msgid "Sets the anti-aliasing mode. See [enum ViewportMSAA] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2915
+#: doc/classes/RenderingServer.xml:2911
msgid "Sets the viewport's parent to another viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:2926
+#: doc/classes/RenderingServer.xml:2922
msgid ""
"If [code]true[/code], render the contents of the viewport directly to "
"screen. This allows a low-level optimization where you can skip drawing a "
@@ -43286,455 +44010,455 @@ msgid ""
"significantly larger than the window size."
msgstr ""
-#: doc/classes/RenderingServer.xml:2937
+#: doc/classes/RenderingServer.xml:2933
msgid ""
"Sets a viewport's scenario.\n"
"The scenario contains information about the [enum ScenarioDebugMode], "
"environment information, reflection atlas etc."
msgstr ""
-#: doc/classes/RenderingServer.xml:2951
+#: doc/classes/RenderingServer.xml:2947
msgid "Sets the shadow atlas quadrant's subdivision."
msgstr ""
-#: doc/classes/RenderingServer.xml:2962
+#: doc/classes/RenderingServer.xml:2958
msgid ""
"Sets the size of the shadow atlas's images (used for omni and spot lights). "
"The value will be rounded up to the nearest power of 2."
msgstr ""
-#: doc/classes/RenderingServer.xml:2975
+#: doc/classes/RenderingServer.xml:2971
msgid "Sets the viewport's width and height."
msgstr ""
-#: doc/classes/RenderingServer.xml:2986
+#: doc/classes/RenderingServer.xml:2982
msgid ""
"If [code]true[/code], the viewport renders its background as transparent."
msgstr ""
-#: doc/classes/RenderingServer.xml:2997
+#: doc/classes/RenderingServer.xml:2993
msgid ""
"Sets when the viewport should be updated. See [enum ViewportUpdateMode] "
"constants for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:3008
+#: doc/classes/RenderingServer.xml:3004
msgid ""
"If [code]true[/code], the viewport uses augmented or virtual reality "
"technologies. See [XRInterface]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3014
+#: doc/classes/RenderingServer.xml:3010
msgid ""
"If [code]false[/code], disables rendering completely, but the engine logic "
"is still being processed. You can call [method force_draw] to draw a frame "
"even with rendering disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3020
+#: doc/classes/RenderingServer.xml:3016
msgid ""
"Emitted at the end of the frame, after the RenderingServer has finished "
"updating all the Viewports."
msgstr ""
-#: doc/classes/RenderingServer.xml:3025
+#: doc/classes/RenderingServer.xml:3021
msgid ""
"Emitted at the beginning of the frame, before the RenderingServer updates "
"all the Viewports."
msgstr ""
-#: doc/classes/RenderingServer.xml:3031
+#: doc/classes/RenderingServer.xml:3027
msgid "Marks an error that shows that the index array is empty."
msgstr ""
-#: doc/classes/RenderingServer.xml:3034
+#: doc/classes/RenderingServer.xml:3030
msgid "Number of weights/bones per vertex."
msgstr ""
-#: doc/classes/RenderingServer.xml:3037
+#: doc/classes/RenderingServer.xml:3033
msgid "The minimum Z-layer for canvas items."
msgstr ""
-#: doc/classes/RenderingServer.xml:3040
+#: doc/classes/RenderingServer.xml:3036
msgid "The maximum Z-layer for canvas items."
msgstr ""
-#: doc/classes/RenderingServer.xml:3043
+#: doc/classes/RenderingServer.xml:3039
msgid ""
"Max number of glow levels that can be used with glow post-process effect."
msgstr ""
-#: doc/classes/RenderingServer.xml:3046
+#: doc/classes/RenderingServer.xml:3042
msgid "Unused enum in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:3067
+#: doc/classes/RenderingServer.xml:3063
msgid "Shader is a 3D shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3070
+#: doc/classes/RenderingServer.xml:3066
msgid "Shader is a 2D shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3073
+#: doc/classes/RenderingServer.xml:3069
msgid "Shader is a particle shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3076
+#: doc/classes/RenderingServer.xml:3072
msgid "Shader is a sky shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3079
+#: doc/classes/RenderingServer.xml:3075
msgid "Represents the size of the [enum ShaderMode] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3082
+#: doc/classes/RenderingServer.xml:3078
msgid "The minimum renderpriority of all materials."
msgstr ""
-#: doc/classes/RenderingServer.xml:3085
+#: doc/classes/RenderingServer.xml:3081
msgid "The maximum renderpriority of all materials."
msgstr ""
-#: doc/classes/RenderingServer.xml:3088
+#: doc/classes/RenderingServer.xml:3084
msgid "Array is a vertex array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3091
+#: doc/classes/RenderingServer.xml:3087
msgid "Array is a normal array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3094
+#: doc/classes/RenderingServer.xml:3090
msgid "Array is a tangent array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3097
+#: doc/classes/RenderingServer.xml:3093
msgid "Array is a color array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3100
+#: doc/classes/RenderingServer.xml:3096
msgid "Array is an UV coordinates array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3103
+#: doc/classes/RenderingServer.xml:3099
msgid "Array is an UV coordinates array for the second UV coordinates."
msgstr ""
-#: doc/classes/RenderingServer.xml:3106
+#: doc/classes/RenderingServer.xml:3102
msgid "Array contains bone information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3109
+#: doc/classes/RenderingServer.xml:3105
msgid "Array is weight information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3112
+#: doc/classes/RenderingServer.xml:3108
msgid "Array is index array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3118
+#: doc/classes/RenderingServer.xml:3114
msgid "Flag used to mark a vertex array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3121
+#: doc/classes/RenderingServer.xml:3117
msgid "Flag used to mark a normal array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3124
+#: doc/classes/RenderingServer.xml:3120
msgid "Flag used to mark a tangent array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3127
+#: doc/classes/RenderingServer.xml:3123
msgid "Flag used to mark a color array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3130
+#: doc/classes/RenderingServer.xml:3126
msgid "Flag used to mark an UV coordinates array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3133
+#: doc/classes/RenderingServer.xml:3129
msgid ""
"Flag used to mark an UV coordinates array for the second UV coordinates."
msgstr ""
-#: doc/classes/RenderingServer.xml:3136
+#: doc/classes/RenderingServer.xml:3132
msgid "Flag used to mark a bone information array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3139
+#: doc/classes/RenderingServer.xml:3135
msgid "Flag used to mark a weights array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3142
+#: doc/classes/RenderingServer.xml:3138
msgid "Flag used to mark an index array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3171
+#: doc/classes/RenderingServer.xml:3167
msgid "Primitive to draw consists of points."
msgstr ""
-#: doc/classes/RenderingServer.xml:3174
+#: doc/classes/RenderingServer.xml:3170
msgid "Primitive to draw consists of lines."
msgstr ""
-#: doc/classes/RenderingServer.xml:3177
+#: doc/classes/RenderingServer.xml:3173
msgid "Primitive to draw consists of a line strip from start to end."
msgstr ""
-#: doc/classes/RenderingServer.xml:3180
+#: doc/classes/RenderingServer.xml:3176
msgid "Primitive to draw consists of triangles."
msgstr ""
-#: doc/classes/RenderingServer.xml:3183
+#: doc/classes/RenderingServer.xml:3179
msgid ""
"Primitive to draw consists of a triangle strip (the last 3 vertices are "
"always combined to make a triangle)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3186
+#: doc/classes/RenderingServer.xml:3182
msgid "Represents the size of the [enum PrimitiveType] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3195
+#: doc/classes/RenderingServer.xml:3191
msgid "Use [Transform2D] to store MultiMesh transform."
msgstr ""
-#: doc/classes/RenderingServer.xml:3198
+#: doc/classes/RenderingServer.xml:3194
msgid "Use [Transform] to store MultiMesh transform."
msgstr ""
-#: doc/classes/RenderingServer.xml:3201
+#: doc/classes/RenderingServer.xml:3197
msgid "Is a directional (sun) light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3204
+#: doc/classes/RenderingServer.xml:3200
msgid "Is an omni light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3207
+#: doc/classes/RenderingServer.xml:3203
msgid "Is a spot light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3210
+#: doc/classes/RenderingServer.xml:3206
msgid "The light's energy."
msgstr ""
-#: doc/classes/RenderingServer.xml:3215
+#: doc/classes/RenderingServer.xml:3211
msgid "The light's influence on specularity."
msgstr ""
-#: doc/classes/RenderingServer.xml:3218
+#: doc/classes/RenderingServer.xml:3214
msgid "The light's range."
msgstr ""
-#: doc/classes/RenderingServer.xml:3221
+#: doc/classes/RenderingServer.xml:3217
msgid ""
"The size of the light when using spot light or omni light. The angular size "
"of the light when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3224
+#: doc/classes/RenderingServer.xml:3220
msgid "The light's attenuation."
msgstr ""
-#: doc/classes/RenderingServer.xml:3227
+#: doc/classes/RenderingServer.xml:3223
msgid "The spotlight's angle."
msgstr ""
-#: doc/classes/RenderingServer.xml:3230
+#: doc/classes/RenderingServer.xml:3226
msgid "The spotlight's attenuation."
msgstr ""
-#: doc/classes/RenderingServer.xml:3233
+#: doc/classes/RenderingServer.xml:3229
msgid "Max distance that shadows will be rendered."
msgstr ""
-#: doc/classes/RenderingServer.xml:3236
+#: doc/classes/RenderingServer.xml:3232
msgid "Proportion of shadow atlas occupied by the first split."
msgstr ""
-#: doc/classes/RenderingServer.xml:3239
+#: doc/classes/RenderingServer.xml:3235
msgid "Proportion of shadow atlas occupied by the second split."
msgstr ""
-#: doc/classes/RenderingServer.xml:3242
+#: doc/classes/RenderingServer.xml:3238
msgid ""
"Proportion of shadow atlas occupied by the third split. The fourth split "
"occupies the rest."
msgstr ""
-#: doc/classes/RenderingServer.xml:3245
+#: doc/classes/RenderingServer.xml:3241
msgid ""
"Proportion of shadow max distance where the shadow will start to fade out."
msgstr ""
-#: doc/classes/RenderingServer.xml:3248
+#: doc/classes/RenderingServer.xml:3244
msgid ""
"Normal bias used to offset shadow lookup by object normal. Can be used to "
"fix self-shadowing artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3251
+#: doc/classes/RenderingServer.xml:3247
msgid "Bias the shadow lookup to fix self-shadowing artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3257
+#: doc/classes/RenderingServer.xml:3253
msgid ""
"Blurs the edges of the shadow. Can be used to hide pixel artifacts in low "
"resolution shadow maps. A high value can make shadows appear grainy and can "
"cause other unwanted artifacts. Try to keep as near default as possible."
msgstr ""
-#: doc/classes/RenderingServer.xml:3262
+#: doc/classes/RenderingServer.xml:3258
msgid "Represents the size of the [enum LightParam] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3265
+#: doc/classes/RenderingServer.xml:3267
msgid "Use a dual paraboloid shadow map for omni lights."
msgstr ""
-#: doc/classes/RenderingServer.xml:3268
+#: doc/classes/RenderingServer.xml:3270
msgid ""
"Use a cubemap shadow map for omni lights. Slower but better quality than "
"dual paraboloid."
msgstr ""
-#: doc/classes/RenderingServer.xml:3271
+#: doc/classes/RenderingServer.xml:3273
msgid "Use orthogonal shadow projection for directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3274
+#: doc/classes/RenderingServer.xml:3276
msgid "Use 2 splits for shadow projection when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3277
+#: doc/classes/RenderingServer.xml:3279
msgid "Use 4 splits for shadow projection when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3280
+#: doc/classes/RenderingServer.xml:3282
msgid ""
"Keeps shadows stable as camera moves but has lower effective resolution."
msgstr ""
-#: doc/classes/RenderingServer.xml:3283
+#: doc/classes/RenderingServer.xml:3285
msgid ""
"Optimize use of shadow maps, increasing the effective resolution. But may "
"result in shadows moving or flickering slightly."
msgstr ""
-#: doc/classes/RenderingServer.xml:3286
+#: doc/classes/RenderingServer.xml:3288
msgid "Reflection probe will update reflections once and then stop."
msgstr ""
-#: doc/classes/RenderingServer.xml:3289
+#: doc/classes/RenderingServer.xml:3291
msgid ""
"Reflection probe will update each frame. This mode is necessary to capture "
"moving objects."
msgstr ""
-#: doc/classes/RenderingServer.xml:3302
+#: doc/classes/RenderingServer.xml:3310
msgid "Draw particles in the order that they appear in the particles array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3305
+#: doc/classes/RenderingServer.xml:3313
msgid "Sort particles based on their lifetime."
msgstr ""
-#: doc/classes/RenderingServer.xml:3308
+#: doc/classes/RenderingServer.xml:3316
msgid "Sort particles based on their distance to the camera."
msgstr ""
-#: doc/classes/RenderingServer.xml:3311
+#: doc/classes/RenderingServer.xml:3319
msgid "Do not update the viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:3314
+#: doc/classes/RenderingServer.xml:3322
msgid "Update the viewport once then set to disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3317
+#: doc/classes/RenderingServer.xml:3325
msgid "Update the viewport whenever it is visible."
msgstr ""
-#: doc/classes/RenderingServer.xml:3322
+#: doc/classes/RenderingServer.xml:3330
msgid "Always update the viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:3325
+#: doc/classes/RenderingServer.xml:3333
msgid "The viewport is always cleared before drawing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3328
+#: doc/classes/RenderingServer.xml:3336
msgid "The viewport is never cleared before drawing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3331
+#: doc/classes/RenderingServer.xml:3339
msgid ""
"The viewport is cleared once, then the clear mode is set to [constant "
"VIEWPORT_CLEAR_NEVER]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3334
+#: doc/classes/RenderingServer.xml:3342
msgid "Multisample antialiasing is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3337
+#: doc/classes/RenderingServer.xml:3345
msgid "Multisample antialiasing uses 2 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3340
+#: doc/classes/RenderingServer.xml:3348
msgid "Multisample antialiasing uses 4 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3343
+#: doc/classes/RenderingServer.xml:3351
msgid "Multisample antialiasing uses 8 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3346
+#: doc/classes/RenderingServer.xml:3354
msgid "Multisample antialiasing uses 16 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3357
+#: doc/classes/RenderingServer.xml:3365
msgid "Number of objects drawn in a single frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3360
+#: doc/classes/RenderingServer.xml:3368
msgid "Number of vertices drawn in a single frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3363
+#: doc/classes/RenderingServer.xml:3371
msgid "Number of material changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3366
+#: doc/classes/RenderingServer.xml:3374
msgid "Number of shader changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3369
+#: doc/classes/RenderingServer.xml:3377
msgid "Number of surface changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3372
+#: doc/classes/RenderingServer.xml:3380
msgid "Number of draw calls during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3375
+#: doc/classes/RenderingServer.xml:3383
msgid "Represents the size of the [enum ViewportRenderInfo] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3378
+#: doc/classes/RenderingServer.xml:3386
msgid "Debug draw is disabled. Default setting."
msgstr ""
-#: doc/classes/RenderingServer.xml:3381 doc/classes/Viewport.xml:348
+#: doc/classes/RenderingServer.xml:3389 doc/classes/Viewport.xml:348
msgid "Objects are displayed without light information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3384
+#: doc/classes/RenderingServer.xml:3392
msgid "Objects are displayed with only light information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3387 doc/classes/Viewport.xml:353
+#: doc/classes/RenderingServer.xml:3395 doc/classes/Viewport.xml:353
msgid ""
"Objects are displayed semi-transparent with additive blending so you can see "
"where they are drawing over top of one another. A higher overdraw means you "
@@ -43742,41 +44466,41 @@ msgid ""
"others."
msgstr ""
-#: doc/classes/RenderingServer.xml:3390
+#: doc/classes/RenderingServer.xml:3398
msgid "Debug draw draws objects in wireframe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3393
+#: doc/classes/RenderingServer.xml:3401
msgid ""
"Normal buffer is drawn instead of regular scene so you can see the per-pixel "
"normals that will be used by post-processing effects."
msgstr ""
-#: doc/classes/RenderingServer.xml:3396 doc/classes/Viewport.xml:361
+#: doc/classes/RenderingServer.xml:3404 doc/classes/Viewport.xml:361
msgid "Objects are displayed with only the albedo value from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3399 doc/classes/Viewport.xml:364
+#: doc/classes/RenderingServer.xml:3407 doc/classes/Viewport.xml:364
msgid "Objects are displayed with only the lighting value from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3402 doc/classes/Viewport.xml:367
+#: doc/classes/RenderingServer.xml:3410 doc/classes/Viewport.xml:367
msgid "Objects are displayed with only the emission color from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3405 doc/classes/Viewport.xml:370
+#: doc/classes/RenderingServer.xml:3413 doc/classes/Viewport.xml:370
msgid ""
"Draws the shadow atlas that stores shadows from [OmniLight3D]s and "
"[SpotLight3D]s in the upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3408 doc/classes/Viewport.xml:373
+#: doc/classes/RenderingServer.xml:3416 doc/classes/Viewport.xml:373
msgid ""
"Draws the shadow atlas that stores shadows from [DirectionalLight3D]s in the "
"upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3413
+#: doc/classes/RenderingServer.xml:3421
msgid ""
"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 "
@@ -43784,21 +44508,14 @@ msgid ""
"your [WorldEnvironment]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3416 doc/classes/Viewport.xml:381
-msgid ""
-"Draws the roughness limiter post process over the Viewport so you can see "
-"where it has an effect. It must be enabled in [member ProjectSettings."
-"rendering/quality/screen_filters/screen_space_roughness_limiter] to work."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:3419
+#: doc/classes/RenderingServer.xml:3424
msgid ""
"Colors each PSSM split for the [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."
msgstr ""
-#: doc/classes/RenderingServer.xml:3424
+#: doc/classes/RenderingServer.xml:3435
msgid ""
"Uses high quality importance sampling to process the radiance map. In "
"general, this results in much higher quality than [constant Sky."
@@ -43809,7 +44526,7 @@ msgid ""
"ggx_samples]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3427
+#: doc/classes/RenderingServer.xml:3438
msgid ""
"Uses the fast filtering algorithm to process the radiance map. In general "
"this results in lower quality, but substantially faster run times.\n"
@@ -43817,347 +44534,347 @@ msgid ""
"[member Sky.radiance_size] must be set to [constant Sky.RADIANCE_SIZE_256]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3431
+#: doc/classes/RenderingServer.xml:3442
msgid "Use the clear color as background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3434
+#: doc/classes/RenderingServer.xml:3445
msgid "Use a specified color as the background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3437
+#: doc/classes/RenderingServer.xml:3448
msgid "Use a sky resource for the background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3440
+#: doc/classes/RenderingServer.xml:3451
msgid ""
"Use a specified canvas layer as the background. This can be useful for "
"instantiating a 2D scene in a 3D world."
msgstr ""
-#: doc/classes/RenderingServer.xml:3443
+#: doc/classes/RenderingServer.xml:3454
msgid ""
"Do not clear the background, use whatever was rendered last frame as the "
"background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3449
+#: doc/classes/RenderingServer.xml:3460
msgid "Represents the size of the [enum EnvironmentBG] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3488
+#: doc/classes/RenderingServer.xml:3499
msgid "Output color as they came in."
msgstr ""
-#: doc/classes/RenderingServer.xml:3491
+#: doc/classes/RenderingServer.xml:3502
msgid "Use the Reinhard tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3494
+#: doc/classes/RenderingServer.xml:3505
msgid "Use the filmic tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3497
+#: doc/classes/RenderingServer.xml:3508
msgid "Use the ACES tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3508
+#: doc/classes/RenderingServer.xml:3519
msgid "Disables the blur set for SSAO. Will make SSAO look noisier."
msgstr ""
-#: doc/classes/RenderingServer.xml:3511
+#: doc/classes/RenderingServer.xml:3522
msgid "Perform a 1x1 blur on the SSAO output."
msgstr ""
-#: doc/classes/RenderingServer.xml:3514
+#: doc/classes/RenderingServer.xml:3525
msgid "Performs a 2x2 blur on the SSAO output."
msgstr ""
-#: doc/classes/RenderingServer.xml:3517
+#: doc/classes/RenderingServer.xml:3528
msgid "Performs a 3x3 blur on the SSAO output. Use this for smoothest SSAO."
msgstr ""
-#: doc/classes/RenderingServer.xml:3520
+#: doc/classes/RenderingServer.xml:3531
msgid "Lowest quality of screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3523
+#: doc/classes/RenderingServer.xml:3534
msgid "Medium quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3526
+#: doc/classes/RenderingServer.xml:3537
msgid "High quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3529
+#: doc/classes/RenderingServer.xml:3540
msgid "Highest quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3540
+#: doc/classes/RenderingServer.xml:3551
msgid ""
"Lowest quality DOF blur. This is the fastest setting, but you may be able to "
"see filtering artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3543
+#: doc/classes/RenderingServer.xml:3554
msgid "Low quality DOF blur."
msgstr ""
-#: doc/classes/RenderingServer.xml:3546
+#: doc/classes/RenderingServer.xml:3557
msgid "Medium quality DOF blur."
msgstr ""
-#: doc/classes/RenderingServer.xml:3549
+#: doc/classes/RenderingServer.xml:3560
msgid ""
"Highest quality DOF blur. Results in the smoothest looking blur by taking "
"the most samples, but is also significantly slower."
msgstr ""
-#: doc/classes/RenderingServer.xml:3552
+#: doc/classes/RenderingServer.xml:3563
msgid ""
"Calculate the DOF blur using a box filter. The fastest option, but results "
"in obvious lines in blur pattern."
msgstr ""
-#: doc/classes/RenderingServer.xml:3555
+#: doc/classes/RenderingServer.xml:3566
msgid "Calculates DOF blur using a hexagon shaped filter."
msgstr ""
-#: doc/classes/RenderingServer.xml:3558
+#: doc/classes/RenderingServer.xml:3569
msgid ""
"Calculates DOF blur using a circle shaped filter. Best quality and most "
"realistic, but slowest. Use only for areas where a lot of performance can be "
"dedicated to post-processing (e.g. cutscenes)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3573
+#: doc/classes/RenderingServer.xml:3584
msgid "Do not use a debug mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:3576
+#: doc/classes/RenderingServer.xml:3587
msgid "Draw all objects as wireframe models."
msgstr ""
-#: doc/classes/RenderingServer.xml:3579
+#: doc/classes/RenderingServer.xml:3590
msgid ""
"Draw all objects in a way that displays how much overdraw is occurring. "
"Overdraw occurs when a section of pixels is drawn and shaded and then "
"another object covers it up. To optimize a scene, you should reduce overdraw."
msgstr ""
-#: doc/classes/RenderingServer.xml:3582
+#: doc/classes/RenderingServer.xml:3593
msgid ""
"Draw all objects without shading. Equivalent to setting all objects shaders "
"to [code]unshaded[/code]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3585
+#: doc/classes/RenderingServer.xml:3596
msgid "The instance does not have a type."
msgstr ""
-#: doc/classes/RenderingServer.xml:3588
+#: doc/classes/RenderingServer.xml:3599
msgid "The instance is a mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:3591
+#: doc/classes/RenderingServer.xml:3602
msgid "The instance is a multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:3594
+#: doc/classes/RenderingServer.xml:3605
msgid "The instance is an immediate geometry."
msgstr ""
-#: doc/classes/RenderingServer.xml:3597
+#: doc/classes/RenderingServer.xml:3608
msgid "The instance is a particle emitter."
msgstr ""
-#: doc/classes/RenderingServer.xml:3600
+#: doc/classes/RenderingServer.xml:3611
msgid "The instance is a light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3603
+#: doc/classes/RenderingServer.xml:3614
msgid "The instance is a reflection probe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3606
+#: doc/classes/RenderingServer.xml:3617
msgid "The instance is a decal."
msgstr ""
-#: doc/classes/RenderingServer.xml:3609
+#: doc/classes/RenderingServer.xml:3620
msgid "The instance is a GI probe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3612
+#: doc/classes/RenderingServer.xml:3623
msgid "The instance is a lightmap."
msgstr ""
-#: doc/classes/RenderingServer.xml:3615
+#: doc/classes/RenderingServer.xml:3626
msgid "Represents the size of the [enum InstanceType] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3618
+#: doc/classes/RenderingServer.xml:3629
msgid ""
"A combination of the flags of geometry instances (mesh, multimesh, immediate "
"and particles)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3621
+#: doc/classes/RenderingServer.xml:3632
msgid "Allows the instance to be used in baked lighting."
msgstr ""
-#: doc/classes/RenderingServer.xml:3624
+#: doc/classes/RenderingServer.xml:3635
msgid "Allows the instance to be used with dynamic global illumination."
msgstr ""
-#: doc/classes/RenderingServer.xml:3627
+#: doc/classes/RenderingServer.xml:3638
msgid "When set, manually requests to draw geometry on next frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3630
+#: doc/classes/RenderingServer.xml:3641
msgid "Represents the size of the [enum InstanceFlags] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3633
+#: doc/classes/RenderingServer.xml:3644
msgid "Disable shadows from this instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:3636
+#: doc/classes/RenderingServer.xml:3647
msgid "Cast shadows from this instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:3639
+#: doc/classes/RenderingServer.xml:3650
msgid ""
"Disable backface culling when rendering the shadow of the object. This is "
"slightly slower but may result in more correct shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3642
+#: doc/classes/RenderingServer.xml:3653
msgid ""
"Only render the shadows from the object. The object itself will not be drawn."
msgstr ""
-#: doc/classes/RenderingServer.xml:3645
+#: doc/classes/RenderingServer.xml:3656
msgid "The nine patch gets stretched where needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3648
+#: doc/classes/RenderingServer.xml:3659
msgid "The nine patch gets filled with tiles where needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3651
+#: doc/classes/RenderingServer.xml:3662
msgid ""
"The nine patch gets filled with tiles where needed and stretches them a bit "
"if needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3654
+#: doc/classes/RenderingServer.xml:3665
msgid "Uses the default filter mode for this [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3666 doc/classes/Viewport.xml:399
+#: doc/classes/RenderingServer.xml:3677 doc/classes/Viewport.xml:402
msgid ""
"The texture filter blends between the nearest 4 pixels and between the "
"nearest 2 mipmaps."
msgstr ""
-#: doc/classes/RenderingServer.xml:3675
+#: doc/classes/RenderingServer.xml:3686
msgid "Max value for [enum CanvasItemTextureFilter] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3678
+#: doc/classes/RenderingServer.xml:3689
msgid "Uses the default repeat mode for this [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3681 doc/classes/Viewport.xml:405
+#: doc/classes/RenderingServer.xml:3692 doc/classes/Viewport.xml:408
msgid ""
"Disables textures repeating. Instead, when reading UVs outside the 0-1 "
"range, the value will be clamped to the edge of the texture, resulting in a "
"stretched out look at the borders of the texture."
msgstr ""
-#: doc/classes/RenderingServer.xml:3687 doc/classes/Viewport.xml:411
+#: doc/classes/RenderingServer.xml:3698 doc/classes/Viewport.xml:414
msgid ""
"Flip the texture when repeating so that the edge lines up instead of "
"abruptly changing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3690
+#: doc/classes/RenderingServer.xml:3701
msgid "Max value for [enum CanvasItemTextureRepeat] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3693
+#: doc/classes/RenderingServer.xml:3704
msgid "Adds light color additive to the canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:3696
+#: doc/classes/RenderingServer.xml:3707
msgid "Adds light color subtractive to the canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:3699
+#: doc/classes/RenderingServer.xml:3710
msgid "The light adds color depending on transparency."
msgstr ""
-#: doc/classes/RenderingServer.xml:3702
+#: doc/classes/RenderingServer.xml:3713
msgid "The light adds color depending on mask."
msgstr ""
-#: doc/classes/RenderingServer.xml:3705
+#: doc/classes/RenderingServer.xml:3716
msgid "Do not apply a filter to canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3708
+#: doc/classes/RenderingServer.xml:3719
msgid "Use PCF5 filtering to filter canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3711
+#: doc/classes/RenderingServer.xml:3722
msgid "Use PCF13 filtering to filter canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3714
+#: doc/classes/RenderingServer.xml:3725
msgid "Max value of the [enum CanvasLightShadowFilter] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3717
+#: doc/classes/RenderingServer.xml:3728
msgid "Culling of the canvas occluder is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3720
+#: doc/classes/RenderingServer.xml:3731
msgid "Culling of the canvas occluder is clockwise."
msgstr ""
-#: doc/classes/RenderingServer.xml:3723
+#: doc/classes/RenderingServer.xml:3734
msgid "Culling of the canvas occluder is counterclockwise."
msgstr ""
-#: doc/classes/RenderingServer.xml:3784
+#: doc/classes/RenderingServer.xml:3795
msgid "The amount of objects in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3787
+#: doc/classes/RenderingServer.xml:3798
msgid "The amount of vertices in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3790
+#: doc/classes/RenderingServer.xml:3801
msgid "The amount of modified materials in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3793
+#: doc/classes/RenderingServer.xml:3804
msgid "The amount of shader rebinds in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3796
+#: doc/classes/RenderingServer.xml:3807
msgid "The amount of surface changes in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3799
+#: doc/classes/RenderingServer.xml:3810
msgid "The amount of draw calls in frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3814
+#: doc/classes/RenderingServer.xml:3825
msgid "Hardware supports shaders. This enum is currently unused in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:3817
+#: doc/classes/RenderingServer.xml:3828
msgid ""
"Hardware supports multithreading. This enum is currently unused in Godot 3.x."
msgstr ""
@@ -44169,13 +44886,13 @@ msgstr ""
#: doc/classes/Resource.xml:7
msgid ""
"Resource is the base class for all Godot-specific resource types, serving "
-"primarily as data containers. They are reference counted and freed when no "
-"longer in use. They are also cached once loaded from disk, so that any "
-"further attempts to load a resource from a given path will return the same "
-"reference (all this in contrast to a [Node], which is not reference counted "
-"and can be instanced from disk as many times as desired). Resources can be "
-"saved externally on disk or bundled into another object, such as a [Node] or "
-"another resource."
+"primarily as data containers. Unlike [Object]s, they are reference-counted "
+"and freed when no longer in use. They are also cached once loaded from disk, "
+"so that any further attempts to load a resource from a given path will "
+"return the same reference (all this in contrast to a [Node], which is not "
+"reference-counted and can be instanced from disk as many times as desired). "
+"Resources can be saved externally on disk or bundled into another object, "
+"such as a [Node] or another resource."
msgstr ""
#: doc/classes/Resource.xml:10
@@ -44184,34 +44901,38 @@ msgid ""
"resources.html"
msgstr ""
-#: doc/classes/Resource.xml:17
+#: doc/classes/Resource.xml:18
msgid ""
"Virtual function which can be overridden to customize the behavior value of "
"[method setup_local_to_scene]."
msgstr ""
-#: doc/classes/Resource.xml:26
+#: doc/classes/Resource.xml:27
msgid ""
"Duplicates the resource, returning a new resource. By default, sub-resources "
-"are shared between resource copies for efficiency, this can be changed by "
-"passing [code]true[/code] to the [code]subresources[/code] argument."
+"are shared between resource copies for efficiency. This can be changed by "
+"passing [code]true[/code] to the [code]subresources[/code] argument which "
+"will copy the subresources.\n"
+"[b]Note:[/b] If [code]subresources[/code] is [code]true[/code], this method "
+"will only perform a shallow copy. Nested resources within subresources will "
+"not be duplicated and will still be shared."
msgstr ""
-#: doc/classes/Resource.xml:33
+#: doc/classes/Resource.xml:35
msgid ""
"If [member resource_local_to_scene] is enabled and the resource was loaded "
"from a [PackedScene] instantiation, returns the local scene where this "
"resource's unique copy is in use. Otherwise, returns [code]null[/code]."
msgstr ""
-#: doc/classes/Resource.xml:40
+#: doc/classes/Resource.xml:42
msgid ""
"Returns the RID of the resource (or an empty RID). Many resources (such as "
"[Texture2D], [Mesh], etc) are high-level abstractions of resources stored in "
"a server, so this function will return the original RID."
msgstr ""
-#: doc/classes/Resource.xml:47
+#: doc/classes/Resource.xml:49
msgid ""
"This method is called when a resource with [member resource_local_to_scene] "
"enabled is loaded from a [PackedScene] instantiation. Its behavior can be "
@@ -44221,7 +44942,7 @@ msgid ""
"local viewport."
msgstr ""
-#: doc/classes/Resource.xml:57
+#: doc/classes/Resource.xml:59
msgid ""
"Sets the path of the resource, potentially overriding an existing cache "
"entry for this path. This differs from setting [member resource_path], as "
@@ -44229,25 +44950,25 @@ msgid ""
"given path."
msgstr ""
-#: doc/classes/Resource.xml:63
+#: doc/classes/Resource.xml:65
msgid ""
"If [code]true[/code], the resource will be made unique in each instance of "
"its local scene. It can thus be modified in a scene instance without "
"impacting other instances of that same scene."
msgstr ""
-#: doc/classes/Resource.xml:66
+#: doc/classes/Resource.xml:68
msgid "The name of the resource. This is an optional identifier."
msgstr ""
-#: doc/classes/Resource.xml:69
+#: doc/classes/Resource.xml:71
msgid ""
"The path to the resource. In case it has its own file, it will return its "
"filepath. If it's tied to the scene, it will return the scene's path, "
"followed by the resource's index."
msgstr ""
-#: doc/classes/Resource.xml:75
+#: doc/classes/Resource.xml:77
msgid "Emitted whenever the resource changes."
msgstr ""
@@ -45066,11 +45787,11 @@ msgid ""
"global coordinate system, but is centered at the object's origin."
msgstr ""
-#: doc/classes/RigidBody2D.xml:87
+#: doc/classes/RigidBody2D.xml:87 doc/classes/RigidBody3D.xml:99
msgid ""
-"Returns a list of the bodies colliding with this one. Use [member "
-"contacts_reported] to set the maximum number reported. You must also set "
-"[member contact_monitor] to [code]true[/code].\n"
+"Returns a list of the bodies colliding with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
"For performance, list of collisions is updated once per frame and before the "
"physics step. Consider using signals instead."
@@ -45107,7 +45828,7 @@ msgstr ""
msgid "The body's total applied torque."
msgstr ""
-#: doc/classes/RigidBody2D.xml:130 doc/classes/RigidBody3D.xml:150
+#: doc/classes/RigidBody2D.xml:130 doc/classes/RigidBody3D.xml:157
msgid ""
"If [code]true[/code], the body can enter sleep mode when there is no "
"movement. See [member sleeping]."
@@ -45119,11 +45840,17 @@ msgid ""
"another RigidBody2D. See also [member contacts_reported]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:136
-msgid "The maximum number of contacts to report."
+#: doc/classes/RigidBody2D.xml:136 doc/classes/RigidBody3D.xml:163
+msgid ""
+"The maximum number of contacts that will be recorded. Requires [member "
+"contact_monitor] to be set to [code]true[/code].\n"
+"[b]Note:[/b] The number of contacts is different from the number of "
+"collisions. Collisions between parallel edges will result in two contacts "
+"(one at each end), and collisions between parallel faces will result in four "
+"contacts (one at each corner)."
msgstr ""
-#: doc/classes/RigidBody2D.xml:139
+#: doc/classes/RigidBody2D.xml:140
msgid ""
"Continuous collision detection mode.\n"
"Continuous collision detection tries to predict where a moving body will "
@@ -45133,21 +45860,21 @@ msgid ""
"methods are available. See [enum CCDMode] for details."
msgstr ""
-#: doc/classes/RigidBody2D.xml:143
+#: doc/classes/RigidBody2D.xml:144
msgid ""
"If [code]true[/code], internal force integration is disabled for this body. "
"Aside from collision response, the body will only move as determined by the "
"[method _integrate_forces] function."
msgstr ""
-#: doc/classes/RigidBody2D.xml:146
+#: doc/classes/RigidBody2D.xml:147
msgid ""
"Multiplies the gravity applied to the body. The body's gravity is calculated "
"from the [b]Default Gravity[/b] value in [b]Project > Project Settings > "
"Physics > 2d[/b] and/or any additional gravity vector applied by [Area2D]s."
msgstr ""
-#: doc/classes/RigidBody2D.xml:149
+#: doc/classes/RigidBody2D.xml:150
msgid ""
"The body's moment of inertia. This is like mass, but for rotation: it "
"determines how much torque it takes to rotate the body. The moment of "
@@ -45156,18 +45883,18 @@ msgid ""
"automatically computing it."
msgstr ""
-#: doc/classes/RigidBody2D.xml:152
+#: doc/classes/RigidBody2D.xml:153
msgid ""
"Damps the body's [member linear_velocity]. If [code]-1[/code], the body will "
"use the [b]Default Linear Damp[/b] in [b]Project > Project Settings > "
"Physics > 2d[/b]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:161
+#: doc/classes/RigidBody2D.xml:162
msgid "The body's mode. See [enum Mode] for possible values."
msgstr ""
-#: doc/classes/RigidBody2D.xml:164 doc/classes/RigidBody3D.xml:181
+#: doc/classes/RigidBody2D.xml:165 doc/classes/RigidBody3D.xml:189
#: doc/classes/StaticBody2D.xml:22 doc/classes/StaticBody3D.xml:22
msgid ""
"The physics material override for the body.\n"
@@ -45175,50 +45902,50 @@ msgid ""
"other physics material, such as an inherited one."
msgstr ""
-#: doc/classes/RigidBody2D.xml:168 doc/classes/RigidBody3D.xml:185
+#: doc/classes/RigidBody2D.xml:169 doc/classes/RigidBody3D.xml:193
msgid ""
"If [code]true[/code], the body will not move and will not calculate forces "
"until woken up by another body through, for example, a collision, or by "
"using the [method apply_impulse] or [method add_force] methods."
msgstr ""
-#: doc/classes/RigidBody2D.xml:171
+#: doc/classes/RigidBody2D.xml:172
msgid ""
"The body's weight based on its mass and the [b]Default Gravity[/b] value in "
"[b]Project > Project Settings > Physics > 2d[/b]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:179
+#: doc/classes/RigidBody2D.xml:180 doc/classes/RigidBody3D.xml:204
msgid ""
-"Emitted when a body enters into contact with this one. [member "
-"contact_monitor] must be [code]true[/code] and [member contacts_reported] "
-"greater than [code]0[/code]."
+"Emitted when a body enters into contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:186
+#: doc/classes/RigidBody2D.xml:187
msgid ""
-"Emitted when a body exits contact with this one. [member contact_monitor] "
-"must be [code]true[/code] and [member contacts_reported] greater than "
-"[code]0[/code]."
+"Emitted when a body exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:199
+#: doc/classes/RigidBody2D.xml:200
msgid ""
"Emitted when a body enters into contact with this one. Reports colliding "
"shape information. See [CollisionObject2D] for shape index information. "
-"[member contact_monitor] must be [code]true[/code] and [member "
-"contacts_reported] greater than [code]0[/code]."
+"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:212
+#: doc/classes/RigidBody2D.xml:213
msgid ""
"Emitted when a body shape exits contact with this one. Reports colliding "
"shape information. See [CollisionObject2D] for shape index information. "
-"[member contact_monitor] must be [code]true[/code] and [member "
-"contacts_reported] greater than [code]0[/code]."
+"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:217 doc/classes/RigidBody3D.xml:236
+#: doc/classes/RigidBody2D.xml:218 doc/classes/RigidBody3D.xml:244
msgid ""
"Emitted when the physics engine changes the body's sleeping state.\n"
"[b]Note:[/b] Changing the value [member sleeping] will not trigger this "
@@ -45226,41 +45953,41 @@ msgid ""
"engine or [code]emit_signal(\"sleeping_state_changed\")[/code] is used."
msgstr ""
-#: doc/classes/RigidBody2D.xml:224
+#: doc/classes/RigidBody2D.xml:225
msgid ""
"Rigid mode. The body behaves as a physical object. It collides with other "
"bodies and responds to forces applied to it. This is the default mode."
msgstr ""
-#: doc/classes/RigidBody2D.xml:227
+#: doc/classes/RigidBody2D.xml:228
msgid "Static mode. The body behaves like a [StaticBody2D] and does not move."
msgstr ""
-#: doc/classes/RigidBody2D.xml:230
+#: doc/classes/RigidBody2D.xml:231
msgid ""
"Character mode. Similar to [constant MODE_RIGID], but the body can not "
"rotate."
msgstr ""
-#: doc/classes/RigidBody2D.xml:233
+#: doc/classes/RigidBody2D.xml:234
msgid ""
"Kinematic mode. The body behaves like a [KinematicBody2D], and must be moved "
"by code."
msgstr ""
-#: doc/classes/RigidBody2D.xml:236
+#: doc/classes/RigidBody2D.xml:237
msgid ""
"Continuous collision detection disabled. This is the fastest way to detect "
"body collisions, but can miss small, fast-moving objects."
msgstr ""
-#: doc/classes/RigidBody2D.xml:239
+#: doc/classes/RigidBody2D.xml:240
msgid ""
"Continuous collision detection enabled using raycasting. This is faster than "
"shapecasting but less precise."
msgstr ""
-#: doc/classes/RigidBody2D.xml:242
+#: doc/classes/RigidBody2D.xml:243
msgid ""
"Continuous collision detection enabled using shapecasting. This is the "
"slowest CCD method and the most precise."
@@ -45346,42 +46073,31 @@ msgid ""
"locked."
msgstr ""
-#: doc/classes/RigidBody3D.xml:99
+#: doc/classes/RigidBody3D.xml:107
msgid ""
-"Returns a list of the bodies colliding with this one. By default, number of "
-"max contacts reported is at 0, see the [member contacts_reported] property "
-"to increase it.\n"
-"[b]Note:[/b] The result of this test is not immediate after moving objects. "
-"For performance, list of collisions is updated once per frame and before the "
-"physics step. Consider using signals instead."
+"Returns the inverse inertia tensor basis. This is used to calculate the "
+"angular acceleration resulting from a torque applied to the [RigidBody3D]."
msgstr ""
-#: doc/classes/RigidBody3D.xml:111
+#: doc/classes/RigidBody3D.xml:118
msgid "Locks the specified linear or rotational axis."
msgstr ""
-#: doc/classes/RigidBody3D.xml:126
+#: doc/classes/RigidBody3D.xml:133
msgid "Damps RigidBody3D's rotational forces."
msgstr ""
-#: doc/classes/RigidBody3D.xml:129
+#: doc/classes/RigidBody3D.xml:136
msgid "RigidBody3D's rotational velocity."
msgstr ""
-#: doc/classes/RigidBody3D.xml:153
+#: doc/classes/RigidBody3D.xml:160
msgid ""
"If [code]true[/code], the RigidBody3D will emit signals when it collides "
-"with another RigidBody3D."
-msgstr ""
-
-#: doc/classes/RigidBody3D.xml:156
-msgid ""
-"The maximum contacts to report. Bodies can keep a log of the contacts with "
-"other bodies, this is enabled by setting the maximum amount of contacts "
-"reported to a number greater than 0."
+"with another RigidBody3D. See also [member contacts_reported]."
msgstr ""
-#: doc/classes/RigidBody3D.xml:159
+#: doc/classes/RigidBody3D.xml:167
msgid ""
"If [code]true[/code], continuous collision detection is used.\n"
"Continuous collision detection tries to predict where a moving body will "
@@ -45391,7 +46107,7 @@ msgid ""
"faster to compute, but can miss small, fast-moving objects."
msgstr ""
-#: doc/classes/RigidBody3D.xml:163
+#: doc/classes/RigidBody3D.xml:171
msgid ""
"If [code]true[/code], internal force integration will be disabled (like "
"gravity or air friction) for this body. Other than collision response, the "
@@ -45399,7 +46115,7 @@ msgid ""
"function, if defined."
msgstr ""
-#: doc/classes/RigidBody3D.xml:166
+#: doc/classes/RigidBody3D.xml:174
msgid ""
"This is multiplied by the global 3D gravity setting found in [b]Project > "
"Project Settings > Physics > 3d[/b] to produce RigidBody3D's gravity. For "
@@ -45407,14 +46123,14 @@ msgid ""
"and 0.5 will apply half gravity to this object."
msgstr ""
-#: doc/classes/RigidBody3D.xml:169
+#: doc/classes/RigidBody3D.xml:177
msgid ""
"The body's linear damp. Cannot be less than -1.0. If this value is different "
"from -1.0, any linear damp derived from the world or areas will be "
"overridden."
msgstr ""
-#: doc/classes/RigidBody3D.xml:172
+#: doc/classes/RigidBody3D.xml:180
msgid ""
"The body's linear velocity. Can be used sporadically, but [b]don't set this "
"every frame[/b], because physics may run in another thread and runs at a "
@@ -45422,60 +46138,57 @@ msgid ""
"for precise control of the body state."
msgstr ""
-#: doc/classes/RigidBody3D.xml:178
+#: doc/classes/RigidBody3D.xml:186
msgid "The body mode. See [enum Mode] for possible values."
msgstr ""
-#: doc/classes/RigidBody3D.xml:196
+#: doc/classes/RigidBody3D.xml:211
msgid ""
-"Emitted when a body enters into contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work."
+"Emitted when a body shape exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody3D.xml:203
+#: doc/classes/RigidBody3D.xml:224
msgid ""
-"Emitted when a body shape exits contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work."
-msgstr ""
-
-#: doc/classes/RigidBody3D.xml:216
-msgid ""
-"Emitted when a body enters into contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work.\n"
+"Emitted when a body enters into contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"This signal not only receives the body that collided with this one, but also "
"its [RID] ([code]body_id[/code]), the shape index from the colliding body "
"([code]body_shape[/code]), and the shape index from this body "
"([code]local_shape[/code]) the other body collided with."
msgstr ""
-#: doc/classes/RigidBody3D.xml:230
+#: doc/classes/RigidBody3D.xml:238
msgid ""
-"Emitted when a body shape exits contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work.\n"
+"Emitted when a body shape exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"This signal not only receives the body that stopped colliding with this one, "
"but also its [RID] ([code]body_id[/code]), the shape index from the "
"colliding body ([code]body_shape[/code]), and the shape index from this body "
"([code]local_shape[/code]) the other body stopped colliding with."
msgstr ""
-#: doc/classes/RigidBody3D.xml:243
+#: doc/classes/RigidBody3D.xml:251
msgid ""
"Rigid body mode. This is the \"natural\" state of a rigid body. It is "
"affected by forces, and can move, rotate, and be affected by user code."
msgstr ""
-#: doc/classes/RigidBody3D.xml:246
+#: doc/classes/RigidBody3D.xml:254
msgid ""
"Static mode. The body behaves like a [StaticBody3D], and can only move by "
"user code."
msgstr ""
-#: doc/classes/RigidBody3D.xml:249
+#: doc/classes/RigidBody3D.xml:257
msgid ""
"Character body mode. This behaves like a rigid body, but can not rotate."
msgstr ""
-#: doc/classes/RigidBody3D.xml:252
+#: doc/classes/RigidBody3D.xml:260
msgid ""
"Kinematic body mode. The body behaves like a [KinematicBody3D], and can only "
"move by user code."
@@ -45982,7 +46695,7 @@ msgstr ""
msgid "The time remaining."
msgstr ""
-#: doc/classes/SceneTreeTimer.xml:28 doc/classes/Timer.xml:62
+#: doc/classes/SceneTreeTimer.xml:28 doc/classes/Timer.xml:63
msgid "Emitted when the timer reaches 0."
msgstr ""
@@ -46105,27 +46818,27 @@ msgid ""
"the singleton using [method EditorInterface.get_script_editor]."
msgstr ""
-#: doc/classes/ScriptEditor.xml:40
+#: doc/classes/ScriptEditor.xml:46
msgid "Returns a [Script] that is currently active in editor."
msgstr ""
-#: doc/classes/ScriptEditor.xml:57
+#: doc/classes/ScriptEditor.xml:69
msgid ""
"Returns an array with all [Script] objects which are currently open in "
"editor."
msgstr ""
-#: doc/classes/ScriptEditor.xml:66
+#: doc/classes/ScriptEditor.xml:78
msgid "Goes to the specified line in the current script."
msgstr ""
-#: doc/classes/ScriptEditor.xml:85
+#: doc/classes/ScriptEditor.xml:113
msgid ""
"Emitted when user changed active script. Argument is a freshly activated "
"[Script]."
msgstr ""
-#: doc/classes/ScriptEditor.xml:92
+#: doc/classes/ScriptEditor.xml:120
msgid ""
"Emitted when editor is about to close the active script. Argument is a "
"[Script] that is going to be closed."
@@ -46187,7 +46900,7 @@ msgid ""
"visible."
msgstr ""
-#: doc/classes/ScrollContainer.xml:37 doc/classes/TextEdit.xml:453
+#: doc/classes/ScrollContainer.xml:37 doc/classes/TextEdit.xml:407
msgid "The current horizontal scroll value."
msgstr ""
@@ -46195,7 +46908,7 @@ msgstr ""
msgid "If [code]true[/code], enables horizontal scrolling."
msgstr ""
-#: doc/classes/ScrollContainer.xml:43 doc/classes/TextEdit.xml:456
+#: doc/classes/ScrollContainer.xml:43 doc/classes/TextEdit.xml:410
msgid "The current vertical scroll value."
msgstr ""
@@ -46714,7 +47427,7 @@ msgstr ""
msgid ""
"Sets the global pose transform, [code]pose[/code], for the bone at "
"[code]bone_idx[/code].\n"
-"[code]amount[/code] is the interpolation strengh that will be used when "
+"[code]amount[/code] is the interpolation strength that will be used when "
"applying the pose, and [code]persistent[/code] determines if the applied "
"pose will remain.\n"
"[b]Note[/b]: The pose transform needs to be in bone space. Use [method "
@@ -46731,7 +47444,7 @@ msgstr ""
#: doc/classes/Skeleton3D.xml:266
msgid ""
-"Returns the pose transform for bone [code]bone_idx[/code].\n"
+"Sets the pose transform for bone [code]bone_idx[/code].\n"
"[b]Note[/b]: The pose transform needs to be in bone space. Use [method "
"world_transform_to_bone_transform] to convert a world transform, like one "
"you can get from a [Node3D], to bone space."
@@ -46824,6 +47537,16 @@ msgstr ""
#: doc/classes/Sky.xml:52
msgid ""
+"Automatically selects the appropriate process mode based on your sky shader. "
+"If your shader uses [code]TIME[/code] or [code]POSITION[/code], this will "
+"use [constant PROCESS_MODE_REALTIME]. If your shader uses any of the "
+"[code]LIGHT_*[/code] variables or any custom uniforms, this uses [constant "
+"PROCESS_MODE_INCREMENTAL]. Otherwise, this defaults to [constant "
+"PROCESS_MODE_QUALITY]."
+msgstr ""
+
+#: doc/classes/Sky.xml:55
+msgid ""
"Uses high quality importance sampling to process the radiance map. In "
"general, this results in much higher quality than [constant "
"PROCESS_MODE_REALTIME] but takes much longer to generate. This should not be "
@@ -46833,10 +47556,22 @@ msgid ""
"ggx_samples]."
msgstr ""
-#: doc/classes/Sky.xml:55
+#: doc/classes/Sky.xml:58
+msgid ""
+"Uses the same high quality importance sampling to process the radiance map "
+"as [constant PROCESS_MODE_QUALITY], but updates over several frames. The "
+"number of frames is determined by [member ProjectSettings.rendering/quality/"
+"reflections/roughness_layers]. Use this when you need highest quality "
+"radiance maps, but have a sky that updates slowly."
+msgstr ""
+
+#: doc/classes/Sky.xml:61
msgid ""
"Uses the fast filtering algorithm to process the radiance map. In general "
-"this results in lower quality, but substantially faster run times.\n"
+"this results in lower quality, but substantially faster run times. If you "
+"need better quality, but still need to update the sky every frame, consider "
+"turning on [member ProjectSettings.rendering/quality/reflections/"
+"fast_filter_high_quality].\n"
"[b]Note:[/b] The fast filtering algorithm is limited to 256x256 cubemaps, so "
"[member radiance_size] must be set to [constant RADIANCE_SIZE_256]."
msgstr ""
@@ -47173,10 +47908,9 @@ msgid ""
msgstr ""
#: doc/classes/SpringArm3D.xml:35
-msgid ""
-"Returns the proportion between the current arm length (after checking for "
-"collisions) and the [member spring_length]. Ranges from 0 to 1."
-msgstr ""
+#, fuzzy
+msgid "Returns the spring arm's current length."
+msgstr "Retourne la chaîne de caractères convertie en minuscules."
#: doc/classes/SpringArm3D.xml:44
msgid ""
@@ -47871,7 +48605,7 @@ msgstr ""
msgid ""
"This is the built-in string class (and the one used by GDScript). It "
"supports Unicode and provides all necessary means for string handling. "
-"Strings are reference counted and use a copy-on-write approach, so passing "
+"Strings are reference-counted and use a copy-on-write approach, so passing "
"them around is cheap in resources."
msgstr ""
@@ -48072,26 +48806,32 @@ msgstr ""
#: doc/classes/String.xml:328
msgid ""
"Returns a copy of the string with escaped characters replaced by their "
-"meanings according to the C language standard."
+"meanings. Supported escape sequences are [code]\\'[/code], [code]\\\"[/"
+"code], [code]\\?[/code], [code]\\\\[/code], [code]\\a[/code], [code]\\b[/"
+"code], [code]\\f[/code], [code]\\n[/code], [code]\\r[/code], [code]\\t[/"
+"code], [code]\\v[/code].\n"
+"[b]Note:[/b] Unlike the GDScript parser, this method doesn't support the "
+"[code]\\uXXXX[/code] escape sequence."
msgstr ""
-#: doc/classes/String.xml:335
+#: doc/classes/String.xml:336
msgid ""
-"Changes the case of some letters. Replaces underscores with spaces, converts "
-"all letters to lowercase, then capitalizes first and every letter following "
-"the space character. For [code]capitalize camelCase mixed_with_underscores[/"
-"code], it will return [code]Capitalize Camelcase Mixed With Underscores[/"
+"Changes the case of some letters. Replaces underscores with spaces, adds "
+"spaces before in-word uppercase characters, converts all letters to "
+"lowercase, then capitalizes the first letter and every letter following a "
+"space character. For [code]capitalize camelCase mixed_with_underscores[/"
+"code], it will return [code]Capitalize Camel Case Mixed With Underscores[/"
"code]."
msgstr ""
-#: doc/classes/String.xml:344
+#: doc/classes/String.xml:345
msgid ""
"Performs a case-sensitive comparison to another string. Returns [code]-1[/"
"code] if less than, [code]+1[/code] if greater than, or [code]0[/code] if "
"equal."
msgstr ""
-#: doc/classes/String.xml:357
+#: doc/classes/String.xml:358
msgid ""
"Returns the number of occurrences of substring [code]what[/code] between "
"[code]from[/code] and [code]to[/code] positions. If [code]from[/code] and "
@@ -48099,7 +48839,7 @@ msgid ""
"code] equals 0 the remained substring will be used."
msgstr ""
-#: doc/classes/String.xml:370
+#: doc/classes/String.xml:371
msgid ""
"Returns the number of occurrences of substring [code]what[/code] (ignoring "
"case) between [code]from[/code] and [code]to[/code] positions. If "
@@ -48107,7 +48847,7 @@ msgid ""
"used. If only [code]to[/code] equals 0 the remained substring will be used."
msgstr ""
-#: doc/classes/String.xml:377
+#: doc/classes/String.xml:378
msgid ""
"Returns a copy of the string with indentation (leading tabs and spaces) "
"removed."
@@ -48115,19 +48855,20 @@ msgstr ""
"Retourne une copie de la chaîne de caractères avec indentation (tabulations "
"et espaces antéposés)."
-#: doc/classes/String.xml:384
-#, fuzzy
+#: doc/classes/String.xml:385
msgid ""
"Returns [code]true[/code] if the length of the string equals [code]0[/code]."
-msgstr "Retourne [code]true[/code] (vrai) si la chaîne de caractères est vide."
+msgstr ""
+"Retourne [code]true[/code] si la chaîne de caractères est vide (longueur de "
+"la chaîne égale à [code]0[/code])."
-#: doc/classes/String.xml:393
+#: doc/classes/String.xml:394
msgid "Returns [code]true[/code] if the string ends with the given string."
msgstr ""
"Retourne [code]true[/code] (vrai) si la chaîne de caractères finit par la "
"chaîne de caractères donnée."
-#: doc/classes/String.xml:404
+#: doc/classes/String.xml:405
msgid ""
"Erases [code]chars[/code] characters from the string starting from "
"[code]position[/code]."
@@ -48135,11 +48876,12 @@ msgstr ""
"Efface [code]chars[/code] les caractères de la chaîne de caractères à partir "
"de la [code]position[/code]."
-#: doc/classes/String.xml:415
+#: doc/classes/String.xml:416
msgid ""
-"Finds the first occurrence of a substring. Returns the starting position of "
-"the substring or [code]-1[/code] if not found. Optionally, the initial "
-"search index can be passed.\n"
+"Returns the index of the [b]first[/b] case-sensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the end of the "
+"string.\n"
"[b]Note:[/b] If you just want to know whether a string contains a substring, "
"use the [code]in[/code] operator as follows:\n"
"[codeblock]\n"
@@ -48149,28 +48891,14 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:430
-#, fuzzy
-msgid ""
-"Finds the last occurrence of a substring. Returns the starting position of "
-"the substring or [code]-1[/code] if not found."
-msgstr ""
-"Trouve la dernière occurence d'une sous-chaîne de caractère. Retourne la "
-"position de départ de la sous-chaîne de caractères ou -1 si non trouvée."
-
-#: doc/classes/String.xml:441
-#, fuzzy
+#: doc/classes/String.xml:433
msgid ""
-"Finds the first occurrence of a substring, ignoring case. Returns the "
-"starting position of the substring or [code]-1[/code] if not found. "
-"Optionally, the initial search index can be passed."
+"Returns the index of the [b]first[/b] case-insensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the end of the string."
msgstr ""
-"Trouve la première occurence d'une sous-chaîne de caractères. Retourne la "
-"position de départ de la sous-chaîne de caractères ou -1 si non trouvée. "
-"Optionnellement, l'index de recherche initial peut être passé (en tant "
-"qu'argument) ."
-#: doc/classes/String.xml:452
+#: doc/classes/String.xml:444
msgid ""
"Formats the string by replacing all occurrences of [code]placeholder[/code] "
"with [code]values[/code]."
@@ -48178,33 +48906,33 @@ msgstr ""
"Formate la chaîne de caractères en remplaçant toutes les occurences de "
"[code]placeholder[/code] par [code]values[/code]."
-#: doc/classes/String.xml:459
+#: doc/classes/String.xml:451
msgid "If the string is a valid file path, returns the base directory name."
msgstr ""
-#: doc/classes/String.xml:466
+#: doc/classes/String.xml:458
msgid ""
"If the string is a valid file path, returns the full file path without the "
"extension."
msgstr ""
-#: doc/classes/String.xml:473
+#: doc/classes/String.xml:465
msgid "If the string is a valid file path, returns the extension."
msgstr ""
"Si la chaîne de caractères est un chemin de fichier valide, retourne "
"l'extension."
-#: doc/classes/String.xml:480
+#: doc/classes/String.xml:472
msgid "If the string is a valid file path, returns the filename."
msgstr ""
"Si la chaîne de caractères est un chemin de fichier valide, retourne le nom "
"du fichier."
-#: doc/classes/String.xml:487
+#: doc/classes/String.xml:479
msgid "Hashes the string and returns a 32-bit integer."
msgstr ""
-#: doc/classes/String.xml:494
+#: doc/classes/String.xml:486
msgid ""
"Converts a string containing a hexadecimal number into an integer. "
"Hexadecimal strings are expected to be prefixed with \"[code]0x[/code]\" "
@@ -48220,7 +48948,7 @@ msgstr ""
"print(\"0xff\".hex_to_int()) # Affiche \"255\"\n"
"[/codeblock]"
-#: doc/classes/String.xml:504
+#: doc/classes/String.xml:496
msgid ""
"Escapes (encodes) a string to URL friendly format. Also referred to as 'URL "
"encode'.\n"
@@ -48230,7 +48958,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:514
+#: doc/classes/String.xml:506
msgid ""
"Unescapes (decodes) a string in URL encoded format. Also referred to as 'URL "
"decode'.\n"
@@ -48240,7 +48968,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:526
+#: doc/classes/String.xml:518
msgid ""
"Converts [code]size[/code] represented as number of bytes to human-readable "
"format using internationalized set of data size units, namely: B, KiB, MiB, "
@@ -48253,48 +48981,48 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:542
+#: doc/classes/String.xml:534
msgid ""
"Returns a copy of the string with the substring [code]what[/code] inserted "
"at the given position."
msgstr ""
-#: doc/classes/String.xml:549
+#: doc/classes/String.xml:541
msgid ""
"If the string is a path to a file or directory, returns [code]true[/code] if "
"the path is absolute."
msgstr ""
-#: doc/classes/String.xml:556
+#: doc/classes/String.xml:548
msgid ""
"If the string is a path to a file or directory, returns [code]true[/code] if "
"the path is relative."
msgstr ""
-#: doc/classes/String.xml:565
+#: doc/classes/String.xml:557
msgid ""
"Returns [code]true[/code] if this string is a subsequence of the given "
"string."
msgstr ""
-#: doc/classes/String.xml:574
+#: doc/classes/String.xml:566
msgid ""
"Returns [code]true[/code] if this string is a subsequence of the given "
"string, without considering case."
msgstr ""
-#: doc/classes/String.xml:581
+#: doc/classes/String.xml:573
msgid ""
"Returns [code]true[/code] if this string is free from characters that aren't "
"allowed in file names, those being:\n"
"[code]: / \\ ? * \" | % < >[/code]"
msgstr ""
-#: doc/classes/String.xml:589
+#: doc/classes/String.xml:581
msgid "Returns [code]true[/code] if this string contains a valid float."
msgstr ""
-#: doc/classes/String.xml:598
+#: doc/classes/String.xml:590
msgid ""
"Returns [code]true[/code] if this string contains a valid hexadecimal "
"number. If [code]with_prefix[/code] is [code]true[/code], then a validity of "
@@ -48302,7 +49030,7 @@ msgid ""
"instance: [code]0xDEADC0DE[/code]."
msgstr ""
-#: doc/classes/String.xml:605
+#: doc/classes/String.xml:597
msgid ""
"Returns [code]true[/code] if this string contains a valid color in "
"hexadecimal HTML notation. Other HTML notations such as named colors or "
@@ -48310,22 +49038,22 @@ msgid ""
"return [code]false[/code]."
msgstr ""
-#: doc/classes/String.xml:612
+#: doc/classes/String.xml:604
msgid ""
"Returns [code]true[/code] if this string is a valid identifier. A valid "
"identifier may contain only letters, digits and underscores ([code]_[/code]) "
"and the first character may not be a digit."
msgstr ""
-#: doc/classes/String.xml:619
+#: doc/classes/String.xml:611
msgid "Returns [code]true[/code] if this string contains a valid integer."
msgstr ""
-#: doc/classes/String.xml:626
+#: doc/classes/String.xml:618
msgid "Returns [code]true[/code] if this string contains a valid IP address."
msgstr ""
-#: doc/classes/String.xml:635
+#: doc/classes/String.xml:627
msgid ""
"Return a [String] which is the concatenation of the [code]parts[/code]. The "
"separator between elements is the string providing this method.\n"
@@ -48335,121 +49063,125 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:646
+#: doc/classes/String.xml:638
msgid ""
"Returns a copy of the string with special characters escaped using the JSON "
"standard."
msgstr ""
-#: doc/classes/String.xml:655
+#: doc/classes/String.xml:647
msgid "Returns a number of characters from the left of the string."
msgstr ""
-#: doc/classes/String.xml:662
+#: doc/classes/String.xml:654
msgid "Returns the string's amount of characters."
msgstr ""
-#: doc/classes/String.xml:671
+#: doc/classes/String.xml:663
msgid "Returns a copy of the string with characters removed from the left."
msgstr ""
-#: doc/classes/String.xml:680
+#: doc/classes/String.xml:672
msgid ""
"Does a simple case-sensitive expression match, where [code]\"*\"[/code] "
"matches zero or more arbitrary characters and [code]\"?\"[/code] matches any "
"single character except a period ([code]\".\"[/code])."
msgstr ""
-#: doc/classes/String.xml:689
+#: doc/classes/String.xml:681
msgid ""
"Does a simple case-insensitive expression match, where [code]\"*\"[/code] "
"matches zero or more arbitrary characters and [code]\"?\"[/code] matches any "
"single character except a period ([code]\".\"[/code])."
msgstr ""
-#: doc/classes/String.xml:696
+#: doc/classes/String.xml:688
msgid "Returns the MD5 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:703
+#: doc/classes/String.xml:695
msgid "Returns the MD5 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:712
+#: doc/classes/String.xml:704
msgid ""
"Performs a case-insensitive comparison to another string. Returns [code]-1[/"
"code] if less than, [code]+1[/code] if greater than, or [code]0[/code] if "
"equal."
msgstr ""
-#: doc/classes/String.xml:721
+#: doc/classes/String.xml:713
msgid "Returns the character code at position [code]at[/code]."
msgstr ""
-#: doc/classes/String.xml:730
+#: doc/classes/String.xml:722
msgid ""
"Formats a number to have an exact number of [code]digits[/code] after the "
"decimal point."
msgstr ""
-#: doc/classes/String.xml:739
+#: doc/classes/String.xml:731
msgid ""
"Formats a number to have an exact number of [code]digits[/code] before the "
"decimal point."
msgstr ""
-#: doc/classes/String.xml:746
+#: doc/classes/String.xml:738
msgid "Decode a percent-encoded string. See [method percent_encode]."
msgstr ""
-#: doc/classes/String.xml:753
+#: doc/classes/String.xml:745
msgid ""
"Percent-encodes a string. Encodes parameters in a URL when sending a HTTP "
"GET request (and bodies of form-urlencoded POST requests)."
msgstr ""
-#: doc/classes/String.xml:762
+#: doc/classes/String.xml:754
msgid ""
"If the string is a path, this concatenates [code]file[/code] at the end of "
"the string as a subpath. E.g. [code]\"this/is\".plus_file(\"path\") == "
"\"this/is/path\"[/code]."
msgstr ""
-#: doc/classes/String.xml:771
+#: doc/classes/String.xml:763
msgid ""
"Returns original string repeated a number of times. The number of "
"repetitions is given by the argument."
msgstr ""
-#: doc/classes/String.xml:782
+#: doc/classes/String.xml:774
msgid ""
"Replaces occurrences of a case-sensitive substring with the given one inside "
"the string."
msgstr ""
-#: doc/classes/String.xml:793
+#: doc/classes/String.xml:785
msgid ""
"Replaces occurrences of a case-insensitive substring with the given one "
"inside the string."
msgstr ""
-#: doc/classes/String.xml:804
+#: doc/classes/String.xml:796
msgid ""
-"Performs a case-sensitive search for a substring, but starts from the end of "
-"the string instead of the beginning."
+"Returns the index of the [b]last[/b] case-sensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the beginning of the "
+"string."
msgstr ""
-#: doc/classes/String.xml:815
+#: doc/classes/String.xml:807
msgid ""
-"Performs a case-insensitive search for a substring, but starts from the end "
-"of the string instead of the beginning."
+"Returns the index of the [b]last[/b] case-insensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the beginning of the "
+"string."
msgstr ""
-#: doc/classes/String.xml:824
+#: doc/classes/String.xml:816
msgid "Returns the right side of the string from a given position."
msgstr ""
-#: doc/classes/String.xml:837
+#: doc/classes/String.xml:829
msgid ""
"Splits the string by a [code]delimiter[/code] string and returns an array of "
"the substrings, starting from right.\n"
@@ -48468,39 +49200,39 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:856
+#: doc/classes/String.xml:848
msgid "Returns a copy of the string with characters removed from the right."
msgstr ""
-#: doc/classes/String.xml:863
+#: doc/classes/String.xml:855
msgid "Returns the SHA-1 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:870
+#: doc/classes/String.xml:862
msgid "Returns the SHA-1 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:877
+#: doc/classes/String.xml:869
msgid "Returns the SHA-256 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:884
+#: doc/classes/String.xml:876
msgid "Returns the SHA-256 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:893
+#: doc/classes/String.xml:885
msgid ""
"Returns the similarity index of the text compared to this string. 1 means "
"totally similar and 0 means totally dissimilar."
msgstr ""
-#: doc/classes/String.xml:906
+#: doc/classes/String.xml:898
msgid ""
"Splits the string by a [code]delimiter[/code] string and returns an array of "
-"the substrings.\n"
+"the substrings. The [code]delimiter[/code] can be of any length.\n"
"If [code]maxsplit[/code] is specified, it defines the number of splits to do "
-"from the left up to [code]maxsplit[/code]. The default value of 0 means that "
-"all items are split.\n"
+"from the left up to [code]maxsplit[/code]. The default value of [code]0[/"
+"code] means that all items are split.\n"
"Example:\n"
"[codeblock]\n"
"var some_string = \"One,Two,Three,Four\"\n"
@@ -48508,10 +49240,12 @@ msgid ""
"print(some_array.size()) # Prints 2\n"
"print(some_array[0]) # Prints \"One\"\n"
"print(some_array[1]) # Prints \"Two,Three,Four\"\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"If you need to split strings with more complex rules, use the [RegEx] class "
+"instead."
msgstr ""
-#: doc/classes/String.xml:926
+#: doc/classes/String.xml:919
msgid ""
"Splits the string in floats by using a delimiter string and returns an array "
"of the substrings.\n"
@@ -48519,7 +49253,7 @@ msgid ""
"split by [code]\",\"[/code]."
msgstr ""
-#: doc/classes/String.xml:938
+#: doc/classes/String.xml:931
msgid ""
"Returns a copy of the string stripped of any non-printable character "
"(including tabulations, spaces and line breaks) at the beginning and the "
@@ -48527,7 +49261,7 @@ msgid ""
"right edges respectively."
msgstr ""
-#: doc/classes/String.xml:945
+#: doc/classes/String.xml:938
msgid ""
"Returns a copy of the string stripped of any escape character. These include "
"all non-printable control characters of the first page of the ASCII table (< "
@@ -48535,14 +49269,14 @@ msgid ""
"code] and [code]\\r[/code]) characters, but not spaces."
msgstr ""
-#: doc/classes/String.xml:956
+#: doc/classes/String.xml:949
msgid ""
"Returns part of the string from the position [code]from[/code] with length "
"[code]len[/code]. Argument [code]len[/code] is optional and using [code]-1[/"
"code] will return remaining characters from given position."
msgstr ""
-#: doc/classes/String.xml:963
+#: doc/classes/String.xml:956
msgid ""
"Converts the String (which is a character array) to [PackedByteArray] (which "
"is an array of bytes). The conversion is faster compared to [method "
@@ -48550,25 +49284,25 @@ msgid ""
"ASCII characters."
msgstr ""
-#: doc/classes/String.xml:970
+#: doc/classes/String.xml:963
msgid ""
"Converts a string containing a decimal number into a [code]float[/code]."
msgstr ""
-#: doc/classes/String.xml:977
+#: doc/classes/String.xml:970
msgid ""
"Converts a string containing an integer number into an [code]int[/code]."
msgstr ""
-#: doc/classes/String.xml:984
+#: doc/classes/String.xml:977
msgid "Returns the string converted to lowercase."
msgstr "Retourne la chaîne de caractères convertie en minuscules."
-#: doc/classes/String.xml:991
+#: doc/classes/String.xml:984
msgid "Returns the string converted to uppercase."
msgstr "Retourne la chaîne de caractères convertie en majuscules."
-#: doc/classes/String.xml:998
+#: doc/classes/String.xml:991
msgid ""
"Converts the String (which is an array of characters) to [PackedByteArray] "
"(which is an array of bytes). The conversion is a bit slower than [method "
@@ -48581,25 +49315,25 @@ msgstr ""
"caractères UTF-8. Par conséquent, il est préférable d'utiliser cette "
"fonction à la place [method to_ascii]."
-#: doc/classes/String.xml:1007
+#: doc/classes/String.xml:1000
msgid ""
"Removes a given string from the start if it starts with it or leaves the "
"string unchanged."
msgstr ""
-#: doc/classes/String.xml:1016
+#: doc/classes/String.xml:1009
msgid ""
"Removes a given string from the end if it ends with it or leaves the string "
"unchanged."
msgstr ""
-#: doc/classes/String.xml:1023
+#: doc/classes/String.xml:1016
msgid ""
"Returns a copy of the string with special characters escaped using the XML "
"standard."
msgstr ""
-#: doc/classes/String.xml:1030
+#: doc/classes/String.xml:1023
msgid ""
"Returns a copy of the string with escaped characters replaced by their "
"meanings according to the XML standard."
@@ -49831,50 +50565,42 @@ msgid ""
"undo/redo."
msgstr ""
-#: doc/classes/TextEdit.xml:24
-msgid "Adds color region (given the delimiters) and its colors."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:35
-msgid "Adds a [code]keyword[/code] and its [Color]."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:44
+#: doc/classes/TextEdit.xml:18
msgid ""
"Returns if the given line is foldable, that is, it has indented lines right "
"below it."
msgstr ""
-#: doc/classes/TextEdit.xml:57
+#: doc/classes/TextEdit.xml:25
msgid ""
-"Clears all custom syntax coloring information previously added with [method "
-"add_color_region] or [method add_keyword_color]."
+"Centers the viewport on the line the editing cursor is at. This also resets "
+"the [member scroll_horizontal] value to [code]0[/code]."
msgstr ""
-#: doc/classes/TextEdit.xml:64
+#: doc/classes/TextEdit.xml:32
msgid "Clears the undo history."
msgstr ""
-#: doc/classes/TextEdit.xml:71
+#: doc/classes/TextEdit.xml:39
msgid "Copy's the current text selection."
msgstr ""
-#: doc/classes/TextEdit.xml:78
+#: doc/classes/TextEdit.xml:46
msgid "Returns the column the editing cursor is at."
msgstr ""
-#: doc/classes/TextEdit.xml:85
+#: doc/classes/TextEdit.xml:53
msgid "Returns the line the editing cursor is at."
msgstr ""
-#: doc/classes/TextEdit.xml:96
+#: doc/classes/TextEdit.xml:64
msgid ""
"Moves the cursor at the specified [code]column[/code] index.\n"
"If [code]adjust_viewport[/code] is set to [code]true[/code], the viewport "
"will center at the cursor position after the move occurs."
msgstr ""
-#: doc/classes/TextEdit.xml:112
+#: doc/classes/TextEdit.xml:80
msgid ""
"Moves the cursor at the specified [code]line[/code] index.\n"
"If [code]adjust_viewport[/code] is set to [code]true[/code], the viewport "
@@ -49883,111 +50609,101 @@ msgid ""
"[code]line[/code] can be hidden using [method set_line_as_hidden]."
msgstr ""
-#: doc/classes/TextEdit.xml:121
+#: doc/classes/TextEdit.xml:89
msgid "Cut's the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:128
+#: doc/classes/TextEdit.xml:96
msgid "Deselects the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:135
+#: doc/classes/TextEdit.xml:103
msgid "Folds all lines that are possible to be folded (see [method can_fold])."
msgstr ""
-#: doc/classes/TextEdit.xml:144
+#: doc/classes/TextEdit.xml:112
msgid "Folds the given line, if possible (see [method can_fold])."
msgstr ""
-#: doc/classes/TextEdit.xml:151
+#: doc/classes/TextEdit.xml:119
msgid "Returns an array containing the line number of each breakpoint."
msgstr ""
-#: doc/classes/TextEdit.xml:160
-msgid "Returns the [Color] of the specified [code]keyword[/code]."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:169
+#: doc/classes/TextEdit.xml:128
msgid "Returns the text of a specific line."
msgstr ""
-#: doc/classes/TextEdit.xml:176
+#: doc/classes/TextEdit.xml:135
msgid "Returns the amount of total lines in the text."
msgstr ""
-#: doc/classes/TextEdit.xml:183
+#: doc/classes/TextEdit.xml:142
msgid ""
"Returns the [PopupMenu] of this [TextEdit]. By default, this menu is "
"displayed when right-clicking on the [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:190
+#: doc/classes/TextEdit.xml:149
msgid "Returns the selection begin column."
msgstr ""
-#: doc/classes/TextEdit.xml:197
+#: doc/classes/TextEdit.xml:156
msgid "Returns the selection begin line."
msgstr ""
-#: doc/classes/TextEdit.xml:204
+#: doc/classes/TextEdit.xml:163
msgid "Returns the text inside the selection."
msgstr ""
-#: doc/classes/TextEdit.xml:211
+#: doc/classes/TextEdit.xml:170
msgid "Returns the selection end column."
msgstr ""
-#: doc/classes/TextEdit.xml:218
+#: doc/classes/TextEdit.xml:177
msgid "Returns the selection end line."
msgstr ""
-#: doc/classes/TextEdit.xml:225
+#: doc/classes/TextEdit.xml:184
msgid "Returns a [String] text with the word under the mouse cursor location."
msgstr ""
-#: doc/classes/TextEdit.xml:234
-msgid ""
-"Returns whether the specified [code]keyword[/code] has a color set to it or "
-"not."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:243
+#: doc/classes/TextEdit.xml:193
msgid "Insert the specified text at the cursor position."
msgstr ""
-#: doc/classes/TextEdit.xml:252
+#: doc/classes/TextEdit.xml:202
msgid "Returns whether the line at the specified index is folded or not."
msgstr ""
-#: doc/classes/TextEdit.xml:261
+#: doc/classes/TextEdit.xml:211
msgid "Returns whether the line at the specified index is hidden or not."
msgstr ""
-#: doc/classes/TextEdit.xml:268
+#: doc/classes/TextEdit.xml:218
msgid "Returns [code]true[/code] if the selection is active."
msgstr ""
-#: doc/classes/TextEdit.xml:277
+#: doc/classes/TextEdit.xml:227
msgid ""
"Triggers a right-click menu action by the specified index. See [enum "
"MenuItems] for a list of available indexes."
msgstr ""
-#: doc/classes/TextEdit.xml:284
+#: doc/classes/TextEdit.xml:234
msgid "Paste the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:291
+#: doc/classes/TextEdit.xml:241
msgid "Perform redo operation."
msgstr ""
-#: doc/classes/TextEdit.xml:298
+#: doc/classes/TextEdit.xml:248
msgid ""
"Removes all the breakpoints. This will not fire the [signal "
"breakpoint_toggled] signal."
msgstr ""
-#: doc/classes/TextEdit.xml:313
+#: doc/classes/TextEdit.xml:263
msgid ""
"Perform a search inside the text. Search flags can be specified in the [enum "
"SearchFlags] enum.\n"
@@ -50003,244 +50719,268 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/TextEdit.xml:336
-msgid "Perform selection, from line/column to line/column."
+#: doc/classes/TextEdit.xml:286
+msgid ""
+"Perform selection, from line/column to line/column.\n"
+"If [member selecting_enabled] is [code]false[/code], no selection will occur."
msgstr ""
-#: doc/classes/TextEdit.xml:343
-msgid "Select all the text."
+#: doc/classes/TextEdit.xml:294
+msgid ""
+"Select all the text.\n"
+"If [member selecting_enabled] is [code]false[/code], no selection will occur."
msgstr ""
-#: doc/classes/TextEdit.xml:354
+#: doc/classes/TextEdit.xml:306
msgid "Sets the text for a specific line."
msgstr ""
-#: doc/classes/TextEdit.xml:365
+#: doc/classes/TextEdit.xml:317
msgid "If [code]true[/code], hides the line of the specified index."
msgstr ""
-#: doc/classes/TextEdit.xml:374
+#: doc/classes/TextEdit.xml:326
msgid "Toggle the folding of the code block at the given line."
msgstr ""
-#: doc/classes/TextEdit.xml:381
+#: doc/classes/TextEdit.xml:333
msgid "Perform undo operation."
msgstr ""
-#: doc/classes/TextEdit.xml:390
+#: doc/classes/TextEdit.xml:342
msgid "Unfolds the given line, if folded."
msgstr ""
-#: doc/classes/TextEdit.xml:397
+#: doc/classes/TextEdit.xml:349
msgid ""
"Unhide all lines that were previously set to hidden by [method "
"set_line_as_hidden]."
msgstr ""
-#: doc/classes/TextEdit.xml:403
+#: doc/classes/TextEdit.xml:355
msgid "If [code]true[/code], the breakpoint gutter is visible."
msgstr ""
-#: doc/classes/TextEdit.xml:412
+#: doc/classes/TextEdit.xml:364
msgid ""
"If [code]true[/code], the caret displays as a rectangle.\n"
"If [code]false[/code], the caret displays as a bar."
msgstr ""
-#: doc/classes/TextEdit.xml:416
+#: doc/classes/TextEdit.xml:368
msgid ""
"If [code]true[/code], a right-click moves the cursor at the mouse position "
"before displaying the context menu.\n"
"If [code]false[/code], the context menu disregards mouse location."
msgstr ""
-#: doc/classes/TextEdit.xml:420
+#: doc/classes/TextEdit.xml:372
msgid "If [code]true[/code], a right-click displays the context menu."
msgstr ""
-#: doc/classes/TextEdit.xml:423
+#: doc/classes/TextEdit.xml:375
msgid ""
"If [code]true[/code], the \"space\" character will have a visible "
"representation."
msgstr ""
-#: doc/classes/TextEdit.xml:426
+#: doc/classes/TextEdit.xml:378
msgid ""
"If [code]true[/code], the \"tab\" character will have a visible "
"representation."
msgstr ""
-#: doc/classes/TextEdit.xml:430
+#: doc/classes/TextEdit.xml:382
msgid ""
"If [code]true[/code], the fold gutter is visible. This enables folding "
"groups of indented lines."
msgstr ""
-#: doc/classes/TextEdit.xml:433
+#: doc/classes/TextEdit.xml:385
msgid ""
"If [code]true[/code], all lines that have been set to hidden by [method "
"set_line_as_hidden], will not be visible."
msgstr ""
-#: doc/classes/TextEdit.xml:436
+#: doc/classes/TextEdit.xml:388
msgid ""
"If [code]true[/code], all occurrences of the selected text will be "
"highlighted."
msgstr ""
-#: doc/classes/TextEdit.xml:439
+#: doc/classes/TextEdit.xml:391
msgid "If [code]true[/code], the line containing the cursor is highlighted."
msgstr ""
-#: doc/classes/TextEdit.xml:447
+#: doc/classes/TextEdit.xml:394
+msgid ""
+"If [code]true[/code], a minimap is shown, providing an outline of your "
+"source code."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:397
+msgid "The width, in pixels, of the minimap."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:401
msgid ""
"If [code]true[/code], custom [code]font_color_selected[/code] will be used "
"for selected text."
msgstr ""
-#: doc/classes/TextEdit.xml:450
+#: doc/classes/TextEdit.xml:404
msgid ""
"If [code]true[/code], read-only mode is enabled. Existing text cannot be "
"modified and new text cannot be added."
msgstr ""
-#: doc/classes/TextEdit.xml:463
+#: doc/classes/TextEdit.xml:413
msgid ""
-"If [code]true[/code], line numbers are displayed to the left of the text."
+"If [code]true[/code], text can be selected.\n"
+"If [code]false[/code], text can not be selected by the user or by the "
+"[method select] or [method select_all] methods."
msgstr ""
-#: doc/classes/TextEdit.xml:466
+#: doc/classes/TextEdit.xml:417
+#, fuzzy
msgid ""
-"If [code]true[/code], sets the [code]step[/code] of the scrollbars to "
-"[code]0.25[/code] which results in smoother scrolling."
+"If [code]true[/code], shortcut keys for context menu items are enabled, even "
+"if the context menu is disabled."
msgstr ""
+"Si [code]true[/code] (vrai), les nœuds enfants sont triés, sinon le tri est "
+"désactivé."
-#: doc/classes/TextEdit.xml:469
+#: doc/classes/TextEdit.xml:420
msgid ""
-"If [code]true[/code], any custom color properties that have been set for "
-"this [TextEdit] will be visible."
+"If [code]true[/code], line numbers are displayed to the left of the text."
msgstr ""
-#: doc/classes/TextEdit.xml:472
+#: doc/classes/TextEdit.xml:423
+msgid ""
+"If [code]true[/code], sets the [code]step[/code] of the scrollbars to "
+"[code]0.25[/code] which results in smoother scrolling."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:428
msgid "String value of the [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:475
+#: doc/classes/TextEdit.xml:431
msgid "Vertical scroll sensitivity."
msgstr ""
-#: doc/classes/TextEdit.xml:478
+#: doc/classes/TextEdit.xml:437
msgid ""
"If [code]true[/code], enables text wrapping when it goes beyond the edge of "
"what is visible."
msgstr ""
-#: doc/classes/TextEdit.xml:486
+#: doc/classes/TextEdit.xml:445
msgid "Emitted when a breakpoint is placed via the breakpoint gutter."
msgstr ""
-#: doc/classes/TextEdit.xml:491
+#: doc/classes/TextEdit.xml:450
msgid "Emitted when the cursor changes."
msgstr ""
-#: doc/classes/TextEdit.xml:500
+#: doc/classes/TextEdit.xml:459
msgid "Emitted when the info icon is clicked."
msgstr ""
-#: doc/classes/TextEdit.xml:531
+#: doc/classes/TextEdit.xml:496
msgid "Match case when searching."
msgstr ""
-#: doc/classes/TextEdit.xml:534
+#: doc/classes/TextEdit.xml:499
msgid "Match whole words when searching."
msgstr ""
-#: doc/classes/TextEdit.xml:537
+#: doc/classes/TextEdit.xml:502
msgid "Search from end to beginning."
msgstr ""
-#: doc/classes/TextEdit.xml:546
+#: doc/classes/TextEdit.xml:511
msgid ""
"Pastes the clipboard text over the selected text (or at the cursor's "
"position)."
msgstr ""
-#: doc/classes/TextEdit.xml:549
+#: doc/classes/TextEdit.xml:514
msgid "Erases the whole [TextEdit] text."
msgstr ""
-#: doc/classes/TextEdit.xml:552
+#: doc/classes/TextEdit.xml:517
msgid "Selects the whole [TextEdit] text."
msgstr ""
-#: doc/classes/TextEdit.xml:558
+#: doc/classes/TextEdit.xml:523
msgid "Redoes the previous action."
msgstr ""
-#: doc/classes/TextEdit.xml:566
+#: doc/classes/TextEdit.xml:531
msgid ""
"Sets the background [Color] of this [TextEdit]. [member syntax_highlighting] "
"has to be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:569
+#: doc/classes/TextEdit.xml:534
msgid ""
"Sets the [Color] of the bookmark marker. [member syntax_highlighting] has to "
"be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:574 doc/classes/TextEdit.xml:601
+#: doc/classes/TextEdit.xml:539 doc/classes/TextEdit.xml:566
msgid ""
"Sets the [Color] of the breakpoints. [member breakpoint_gutter] has to be "
"enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:612
+#: doc/classes/TextEdit.xml:577
msgid "Sets the default [Font]."
msgstr ""
-#: doc/classes/TextEdit.xml:615
+#: doc/classes/TextEdit.xml:580
msgid "Sets the font [Color]."
msgstr ""
-#: doc/classes/TextEdit.xml:620
+#: doc/classes/TextEdit.xml:585
msgid ""
"Sets the [Color] of the selected text. [member override_selected_font_color] "
"has to be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:625
+#: doc/classes/TextEdit.xml:588
msgid ""
"Sets the [Color] of the line numbers. [member show_line_numbers] has to be "
"enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:628
+#: doc/classes/TextEdit.xml:591
msgid "Sets the spacing between the lines."
msgstr ""
-#: doc/classes/TextEdit.xml:631
+#: doc/classes/TextEdit.xml:594
msgid "Sets the [Color] of marked text."
msgstr ""
-#: doc/classes/TextEdit.xml:636
+#: doc/classes/TextEdit.xml:597
msgid "Sets the [StyleBox] of this [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:641
+#: doc/classes/TextEdit.xml:600
msgid ""
"Sets the [StyleBox] of this [TextEdit] when [member readonly] is enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:646
+#: doc/classes/TextEdit.xml:605
msgid "Sets the highlight [Color] of text selections."
msgstr ""
-#: doc/classes/TextEdit.xml:653
+#: doc/classes/TextEdit.xml:610
msgid "Sets a custom [Texture2D] for tab text characters."
msgstr ""
-#: doc/classes/TextEdit.xml:656
+#: doc/classes/TextEdit.xml:613
msgid ""
"Sets the highlight [Color] of multiple occurrences. [member "
"highlight_all_occurrences] has to be enabled."
@@ -50318,80 +51058,80 @@ msgid ""
"the texture will not scale with the node."
msgstr ""
-#: doc/classes/TextureButton.xml:19
+#: doc/classes/TextureButton.xml:25
msgid ""
"Controls the texture's behavior when you resize the node's bounding "
"rectangle, [b]only if[/b] [member expand] is [code]true[/code]. Set it to "
"one of the [enum StretchMode] constants. See the constants to learn more."
msgstr ""
-#: doc/classes/TextureButton.xml:22
+#: doc/classes/TextureButton.xml:28
msgid ""
"Pure black and white [BitMap] image to use for click detection. On the mask, "
"white pixels represent the button's clickable area. Use it to create buttons "
"with curved shapes."
msgstr ""
-#: doc/classes/TextureButton.xml:25
+#: doc/classes/TextureButton.xml:31
msgid ""
"Texture to display when the node is disabled. See [member BaseButton."
"disabled]."
msgstr ""
-#: doc/classes/TextureButton.xml:28
+#: doc/classes/TextureButton.xml:34
msgid "Texture to display when the node has mouse or keyboard focus."
msgstr ""
-#: doc/classes/TextureButton.xml:31
+#: doc/classes/TextureButton.xml:37
msgid "Texture to display when the mouse hovers the node."
msgstr ""
-#: doc/classes/TextureButton.xml:34
+#: doc/classes/TextureButton.xml:40
msgid ""
"Texture to display by default, when the node is [b]not[/b] in the disabled, "
"focused, hover or pressed state."
msgstr ""
-#: doc/classes/TextureButton.xml:37
+#: doc/classes/TextureButton.xml:43
msgid ""
"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 "
"[member BaseButton.shortcut] key."
msgstr ""
-#: doc/classes/TextureButton.xml:42 doc/classes/TextureRect.xml:36
+#: doc/classes/TextureButton.xml:48 doc/classes/TextureRect.xml:36
msgid "Scale to fit the node's bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:45 doc/classes/TextureRect.xml:39
+#: doc/classes/TextureButton.xml:51 doc/classes/TextureRect.xml:39
msgid "Tile inside the node's bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:48 doc/classes/TextureRect.xml:42
+#: doc/classes/TextureButton.xml:54 doc/classes/TextureRect.xml:42
msgid ""
"The texture keeps its original size and stays in the bounding rectangle's "
"top-left corner."
msgstr ""
-#: doc/classes/TextureButton.xml:51 doc/classes/TextureRect.xml:45
+#: doc/classes/TextureButton.xml:57 doc/classes/TextureRect.xml:45
msgid ""
"The texture keeps its original size and stays centered in the node's "
"bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:54 doc/classes/TextureRect.xml:48
+#: doc/classes/TextureButton.xml:60 doc/classes/TextureRect.xml:48
msgid ""
"Scale the texture to fit the node's bounding rectangle, but maintain the "
"texture's aspect ratio."
msgstr ""
-#: doc/classes/TextureButton.xml:57
+#: doc/classes/TextureButton.xml:63
msgid ""
"Scale the texture to fit the node's bounding rectangle, center it, and "
"maintain its aspect ratio."
msgstr ""
-#: doc/classes/TextureButton.xml:60 doc/classes/TextureRect.xml:54
+#: doc/classes/TextureButton.xml:66 doc/classes/TextureRect.xml:54
msgid ""
"Scale the texture so that the shorter side fits the bounding rectangle. The "
"other side clips to the node's limits."
@@ -50841,19 +51581,25 @@ msgid ""
"advised if working with shared objects."
msgstr ""
-#: doc/classes/Thread.xml:17
+#: doc/classes/Thread.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/threads/thread_safe_apis."
+"html"
+msgstr ""
+
+#: doc/classes/Thread.xml:18
msgid ""
"Returns the current [Thread]'s ID, uniquely identifying it among all threads."
msgstr ""
-#: doc/classes/Thread.xml:24
+#: doc/classes/Thread.xml:25
msgid ""
"Returns [code]true[/code] if this [Thread] is currently active. An active "
"[Thread] cannot start work on a new method but can be joined with [method "
"wait_to_finish]."
msgstr ""
-#: doc/classes/Thread.xml:39
+#: doc/classes/Thread.xml:40
msgid ""
"Starts a new [Thread] that runs [code]method[/code] on object "
"[code]instance[/code] with [code]userdata[/code] passed as an argument. Even "
@@ -50863,21 +51609,21 @@ msgid ""
"Returns [constant OK] on success, or [constant ERR_CANT_CREATE] on failure."
msgstr ""
-#: doc/classes/Thread.xml:47
+#: doc/classes/Thread.xml:48
msgid ""
"Joins the [Thread] and waits for it to finish. Returns what the method "
"called returned."
msgstr ""
-#: doc/classes/Thread.xml:53
+#: doc/classes/Thread.xml:54
msgid "A thread running with lower priority than normally."
msgstr ""
-#: doc/classes/Thread.xml:56
+#: doc/classes/Thread.xml:57
msgid "A thread with a standard priority."
msgstr ""
-#: doc/classes/Thread.xml:59
+#: doc/classes/Thread.xml:60
msgid "A thread running with higher priority than normally."
msgstr ""
@@ -51412,50 +52158,61 @@ msgid "Returns the [Transform2D] of a tile's shape."
msgstr ""
#: doc/classes/TileSet.xml:481
-msgid "Returns an array of the tile's shapes."
+msgid ""
+"Returns an array of dictionaries describing the tile's shapes.\n"
+"[b]Dictionary structure in the array returned by this method:[/b]\n"
+"[codeblock]\n"
+"{\n"
+" \"autotile_coord\": Vector2,\n"
+" \"one_way\": bool,\n"
+" \"one_way_margin\": int,\n"
+" \"shape\": CollisionShape2D,\n"
+" \"shape_transform\": Transform2D,\n"
+"}\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/TileSet.xml:490
+#: doc/classes/TileSet.xml:500
msgid "Returns the tile's texture."
msgstr ""
-#: doc/classes/TileSet.xml:499
+#: doc/classes/TileSet.xml:509
msgid "Returns the texture offset of the tile."
msgstr ""
-#: doc/classes/TileSet.xml:508
+#: doc/classes/TileSet.xml:518
msgid "Returns the tile's [enum TileMode]."
msgstr ""
-#: doc/classes/TileSet.xml:517
+#: doc/classes/TileSet.xml:527
msgid "Returns the tile's Z index (drawing layer)."
msgstr ""
-#: doc/classes/TileSet.xml:528
+#: doc/classes/TileSet.xml:538
msgid "Sets a light occluder for the tile."
msgstr ""
-#: doc/classes/TileSet.xml:539
+#: doc/classes/TileSet.xml:549
msgid "Sets the tile's material."
msgstr ""
-#: doc/classes/TileSet.xml:550
+#: doc/classes/TileSet.xml:560
msgid "Sets the tile's modulation color."
msgstr ""
-#: doc/classes/TileSet.xml:561
+#: doc/classes/TileSet.xml:571
msgid "Sets the tile's name."
msgstr ""
-#: doc/classes/TileSet.xml:572
+#: doc/classes/TileSet.xml:582
msgid "Sets the tile's navigation polygon."
msgstr ""
-#: doc/classes/TileSet.xml:583
+#: doc/classes/TileSet.xml:593
msgid "Sets an offset for the tile's navigation polygon."
msgstr ""
-#: doc/classes/TileSet.xml:594
+#: doc/classes/TileSet.xml:604
msgid ""
"Sets the tile's normal map texture.\n"
"[b]Note:[/b] Godot expects the normal map to use X+, Y-, and Z+ coordinates. "
@@ -51464,48 +52221,48 @@ msgid ""
"a comparison of normal map coordinates expected by popular engines."
msgstr ""
-#: doc/classes/TileSet.xml:606
+#: doc/classes/TileSet.xml:616
msgid "Sets an offset for the tile's light occluder."
msgstr ""
-#: doc/classes/TileSet.xml:617
+#: doc/classes/TileSet.xml:627
msgid ""
"Sets the tile's sub-region in the texture. This is common in texture atlases."
msgstr ""
-#: doc/classes/TileSet.xml:630
+#: doc/classes/TileSet.xml:640
msgid "Sets a shape for the tile, enabling collision."
msgstr ""
-#: doc/classes/TileSet.xml:643
+#: doc/classes/TileSet.xml:653
msgid "Sets the offset of a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:656
+#: doc/classes/TileSet.xml:666
msgid "Enables one-way collision on a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:681
+#: doc/classes/TileSet.xml:691
msgid "Sets a [Transform2D] on a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:692
+#: doc/classes/TileSet.xml:702
msgid "Sets an array of shapes for the tile, enabling collision."
msgstr ""
-#: doc/classes/TileSet.xml:703
+#: doc/classes/TileSet.xml:713
msgid "Sets the tile's texture."
msgstr ""
-#: doc/classes/TileSet.xml:714
+#: doc/classes/TileSet.xml:724
msgid "Sets the tile's texture offset."
msgstr ""
-#: doc/classes/TileSet.xml:725
+#: doc/classes/TileSet.xml:735
msgid "Sets the tile's [enum TileMode]."
msgstr ""
-#: doc/classes/TileSet.xml:736
+#: doc/classes/TileSet.xml:746
msgid "Sets the tile's drawing index."
msgstr ""
@@ -51516,14 +52273,16 @@ msgstr ""
#: doc/classes/Timer.xml:7
msgid ""
"Counts down a specified interval and emits a signal on reaching 0. Can be "
-"set to repeat or \"one-shot\" mode."
+"set to repeat or \"one-shot\" mode.\n"
+"[b]Note:[/b] To create an one-shot timer without instantiating a node, use "
+"[method SceneTree.create_timer]."
msgstr ""
-#: doc/classes/Timer.xml:16
+#: doc/classes/Timer.xml:17
msgid "Returns [code]true[/code] if the timer is stopped."
msgstr ""
-#: doc/classes/Timer.xml:25
+#: doc/classes/Timer.xml:26
msgid ""
"Starts the timer. Sets [code]wait_time[/code] to [code]time_sec[/code] if "
"[code]time_sec > 0[/code]. This also resets the remaining time to "
@@ -51531,11 +52290,11 @@ msgid ""
"[b]Note:[/b] this method will not resume a paused timer. See [member paused]."
msgstr ""
-#: doc/classes/Timer.xml:33
+#: doc/classes/Timer.xml:34
msgid "Stops the timer."
msgstr ""
-#: doc/classes/Timer.xml:39
+#: doc/classes/Timer.xml:40
msgid ""
"If [code]true[/code], the timer will automatically start when entering the "
"scene tree.\n"
@@ -51543,40 +52302,40 @@ msgid ""
"the timer enters the scene tree and starts."
msgstr ""
-#: doc/classes/Timer.xml:43
+#: doc/classes/Timer.xml:44
msgid ""
"If [code]true[/code], the timer will stop when reaching 0. If [code]false[/"
"code], it will restart."
msgstr ""
-#: doc/classes/Timer.xml:46
+#: doc/classes/Timer.xml:47
msgid ""
"If [code]true[/code], the timer is paused and will not process until it is "
"unpaused again, even if [method start] is called."
msgstr ""
-#: doc/classes/Timer.xml:49
+#: doc/classes/Timer.xml:50
msgid "Processing mode. See [enum TimerProcessMode]."
msgstr ""
-#: doc/classes/Timer.xml:52
+#: doc/classes/Timer.xml:53
msgid ""
"The timer's remaining time in seconds. Returns 0 if the timer is inactive.\n"
"[b]Note:[/b] You cannot set this value. To change the timer's remaining "
"time, use [method start]."
msgstr ""
-#: doc/classes/Timer.xml:56
+#: doc/classes/Timer.xml:57
msgid "Wait time in seconds."
msgstr ""
-#: doc/classes/Timer.xml:68
+#: doc/classes/Timer.xml:69
msgid ""
"Update the timer during the physics step at each frame (fixed framerate "
"processing)."
msgstr ""
-#: doc/classes/Timer.xml:71
+#: doc/classes/Timer.xml:72
msgid "Update the timer during the idle time at each frame."
msgstr ""
@@ -51655,60 +52414,70 @@ msgstr ""
#: doc/classes/Transform.xml:7
msgid ""
-"Represents one or many transformations in 3D space such as translation, "
-"rotation, or scaling. It consists of a [member basis] and an [member "
-"origin]. It is similar to a 3×4 matrix."
+"3×4 matrix (3 rows, 4 columns) used for 3D linear transformations. It can "
+"represent transformations such as translation, rotation, or scaling. It "
+"consists of a [member basis] (first 3 columns) and a [Vector3] for the "
+"[member origin] (last column).\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
msgstr ""
-#: doc/classes/Transform.xml:26
+#: doc/classes/Transform.xml:28
msgid ""
-"Constructs the Transform from four [Vector3]. Each axis corresponds to local "
-"basis vectors (some of which may be scaled)."
+"Constructs a Transform from four [Vector3] values (matrix columns). Each "
+"axis corresponds to local basis vectors (some of which may be scaled)."
msgstr ""
-#: doc/classes/Transform.xml:37
-msgid "Constructs the Transform from a [Basis] and [Vector3]."
+#: doc/classes/Transform.xml:39
+#, fuzzy
+msgid "Constructs a Transform from a [Basis] and [Vector3]."
msgstr ""
+"Construit une nouvelle chaîne de caractères à partir du [Vector3] donné."
-#: doc/classes/Transform.xml:46
-msgid "Constructs the Transform from a [Transform2D]."
+#: doc/classes/Transform.xml:48
+#, fuzzy
+msgid "Constructs a Transform from a [Transform2D]."
msgstr ""
+"Construit une nouvelle chaîne de caractères à partir du [Transform2D] donné."
-#: doc/classes/Transform.xml:55
+#: doc/classes/Transform.xml:57
msgid ""
-"Constructs the Transform from a [Quat]. The origin will be Vector3(0, 0, 0)."
+"Constructs a Transform from a [Quat]. The origin will be [code]Vector3(0, 0, "
+"0)[/code]."
msgstr ""
-#: doc/classes/Transform.xml:64
+#: doc/classes/Transform.xml:66
msgid ""
"Constructs the Transform from a [Basis]. The origin will be Vector3(0, 0, 0)."
msgstr ""
-#: doc/classes/Transform.xml:71
+#: doc/classes/Transform.xml:73 doc/classes/Transform2D.xml:51
msgid ""
"Returns the inverse of the transform, under the assumption that the "
"transformation is composed of rotation, scaling and translation."
msgstr ""
-#: doc/classes/Transform.xml:82
-msgid "Interpolates the transform to other Transform by weight amount (0-1)."
+#: doc/classes/Transform.xml:84
+msgid ""
+"Interpolates the transform to other Transform by weight amount (on the range "
+"of 0.0 to 1.0)."
msgstr ""
-#: doc/classes/Transform.xml:89 doc/classes/Transform2D.xml:106
+#: doc/classes/Transform.xml:91
msgid ""
"Returns the inverse of the transform, under the assumption that the "
"transformation is composed of rotation and translation (no scaling, use "
"affine_inverse for transforms with scaling)."
msgstr ""
-#: doc/classes/Transform.xml:98 doc/classes/Transform2D.xml:115
+#: doc/classes/Transform.xml:100 doc/classes/Transform2D.xml:119
msgid ""
"Returns [code]true[/code] if this transform and [code]transform[/code] are "
"approximately equal, by calling [code]is_equal_approx[/code] on each "
"component."
msgstr ""
-#: doc/classes/Transform.xml:109
+#: doc/classes/Transform.xml:111
msgid ""
"Returns a copy of the transform rotated such that its -Z axis points towards "
"the [code]target[/code] position.\n"
@@ -51718,25 +52487,25 @@ msgid ""
"Operations take place in global space."
msgstr ""
-#: doc/classes/Transform.xml:118 doc/classes/Transform2D.xml:122
+#: doc/classes/Transform.xml:120
msgid ""
"Returns the transform with the basis orthogonal (90 degrees), and normalized "
"axis vectors."
msgstr ""
-#: doc/classes/Transform.xml:129
+#: doc/classes/Transform.xml:131
msgid ""
"Rotates the transform around the given axis by the given angle (in radians), "
"using matrix multiplication. The axis must be a normalized vector."
msgstr ""
-#: doc/classes/Transform.xml:138
+#: doc/classes/Transform.xml:140
msgid ""
"Scales basis and origin of the transform by the given scale factor, using "
"matrix multiplication."
msgstr ""
-#: doc/classes/Transform.xml:147 doc/classes/Transform2D.xml:149
+#: doc/classes/Transform.xml:149 doc/classes/Transform2D.xml:153
msgid ""
"Translates the transform by the given offset, relative to the transform's "
"basis vectors.\n"
@@ -51744,152 +52513,162 @@ msgid ""
"multiplication."
msgstr ""
-#: doc/classes/Transform.xml:157
+#: doc/classes/Transform.xml:159
msgid ""
"Transforms the given [Vector3], [Plane], [AABB], or [PackedVector3Array] by "
"this transform."
msgstr ""
-#: doc/classes/Transform.xml:166
+#: doc/classes/Transform.xml:168
msgid ""
"Inverse-transforms the given [Vector3], [Plane], [AABB], or "
"[PackedVector3Array] by this transform."
msgstr ""
-#: doc/classes/Transform.xml:172
+#: doc/classes/Transform.xml:174
msgid ""
"The basis is a matrix containing 3 [Vector3] as its columns: X axis, Y axis, "
"and Z axis. These vectors can be interpreted as the basis vectors of local "
"coordinate system traveling with the object."
msgstr ""
-#: doc/classes/Transform.xml:175
-msgid "The translation offset of the transform."
+#: doc/classes/Transform.xml:177
+msgid ""
+"The translation offset of the transform (column 3, the fourth column). "
+"Equivalent to array index [code]3[/code]."
msgstr ""
-#: doc/classes/Transform.xml:180
+#: doc/classes/Transform.xml:182
msgid ""
"[Transform] with no translation, rotation or scaling applied. When applied "
"to other data structures, [constant IDENTITY] performs no transformation."
msgstr ""
-#: doc/classes/Transform.xml:183
+#: doc/classes/Transform.xml:185
msgid "[Transform] with mirroring applied perpendicular to the YZ plane."
msgstr ""
-#: doc/classes/Transform.xml:186
+#: doc/classes/Transform.xml:188
msgid "[Transform] with mirroring applied perpendicular to the XZ plane."
msgstr ""
-#: doc/classes/Transform.xml:189
+#: doc/classes/Transform.xml:191
msgid "[Transform] with mirroring applied perpendicular to the XY plane."
msgstr ""
#: doc/classes/Transform2D.xml:4
-msgid "2D transformation (3×2 matrix)."
+msgid "2D transformation (2×3 matrix)."
msgstr ""
#: doc/classes/Transform2D.xml:7
msgid ""
-"Represents one or many transformations in 2D space such as translation, "
-"rotation, or scaling. It consists of two [member x] and [member y] "
-"[Vector2]s and an [member origin]. It is similar to a 3×2 matrix."
+"2×3 matrix (2 rows, 3 columns) used for 2D linear transformations. It can "
+"represent transformations such as translation, rotation, or scaling. It "
+"consists of a three [Vector2] values: [member x], [member y], and the "
+"[member origin].\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
msgstr ""
-#: doc/classes/Transform2D.xml:18
+#: doc/classes/Transform2D.xml:20
msgid "Constructs the transform from a 3D [Transform]."
msgstr ""
-#: doc/classes/Transform2D.xml:31
+#: doc/classes/Transform2D.xml:33
msgid ""
-"Constructs the transform from 3 [Vector2]s representing x, y, and origin."
+"Constructs the transform from 3 [Vector2] values representing [member x], "
+"[member y], and the [member origin] (the three column vectors)."
msgstr ""
-#: doc/classes/Transform2D.xml:42
+#: doc/classes/Transform2D.xml:44
msgid "Constructs the transform from a given angle (in radians) and position."
msgstr ""
-#: doc/classes/Transform2D.xml:58
-msgid "Transforms the given vector by this transform's basis (no translation)."
+#: doc/classes/Transform2D.xml:60
+msgid ""
+"Returns a vector transformed (multiplied) by the basis matrix.\n"
+"This method does not account for translation (the origin vector)."
msgstr ""
-#: doc/classes/Transform2D.xml:67
+#: doc/classes/Transform2D.xml:70
msgid ""
-"Inverse-transforms the given vector by this transform's basis (no "
-"translation)."
+"Returns a vector transformed (multiplied) by the inverse basis matrix.\n"
+"This method does not account for translation (the origin vector)."
msgstr ""
-#: doc/classes/Transform2D.xml:74
+#: doc/classes/Transform2D.xml:78
msgid "Returns the transform's origin (translation)."
msgstr ""
-#: doc/classes/Transform2D.xml:81
+#: doc/classes/Transform2D.xml:85
msgid "Returns the transform's rotation (in radians)."
msgstr ""
-#: doc/classes/Transform2D.xml:88
+#: doc/classes/Transform2D.xml:92
msgid "Returns the scale."
msgstr ""
-#: doc/classes/Transform2D.xml:99
+#: doc/classes/Transform2D.xml:103
msgid ""
"Returns a transform interpolated between this transform and another by a "
-"given weight (0-1)."
+"given weight (on the range of 0.0 to 1.0)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:110
+msgid ""
+"Returns the inverse of the transform, under the assumption that the "
+"transformation is composed of rotation and translation (no scaling, use "
+"[method affine_inverse] for transforms with scaling)."
msgstr ""
-#: doc/classes/Transform2D.xml:131
+#: doc/classes/Transform2D.xml:126
+msgid ""
+"Returns the transform with the basis orthogonal (90 degrees), and normalized "
+"axis vectors (scale of 1 or -1)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:135
msgid ""
"Rotates the transform by the given angle (in radians), using matrix "
"multiplication."
msgstr ""
-#: doc/classes/Transform2D.xml:140
+#: doc/classes/Transform2D.xml:144
msgid ""
"Scales the transform by the given scale factor, using matrix multiplication."
msgstr ""
-#: doc/classes/Transform2D.xml:159
+#: doc/classes/Transform2D.xml:163
msgid ""
"Transforms the given [Vector2], [Rect2], or [PackedVector2Array] by this "
"transform."
msgstr ""
-#: doc/classes/Transform2D.xml:168
+#: doc/classes/Transform2D.xml:172
msgid ""
"Inverse-transforms the given [Vector2], [Rect2], or [PackedVector2Array] by "
"this transform."
msgstr ""
-#: doc/classes/Transform2D.xml:174
-msgid "The transform's translation offset."
-msgstr ""
-
-#: doc/classes/Transform2D.xml:177
+#: doc/classes/Transform2D.xml:178
msgid ""
-"The X axis of 2×2 basis matrix containing 2 [Vector2]s as its columns: X "
-"axis and Y axis. These vectors can be interpreted as the basis vectors of "
-"local coordinate system traveling with the object."
+"The origin vector (column 2, the third column). Equivalent to array index "
+"[code]2[/code]. The origin vector represents translation."
msgstr ""
-#: doc/classes/Transform2D.xml:180
+#: doc/classes/Transform2D.xml:189
msgid ""
-"The Y axis of 2×2 basis matrix containing 2 [Vector2]s as its columns: X "
-"axis and Y axis. These vectors can be interpreted as the basis vectors of "
-"local coordinate system traveling with the object."
-msgstr ""
-
-#: doc/classes/Transform2D.xml:185
-msgid ""
-"[Transform2D] with no translation, rotation or scaling applied. When applied "
-"to other data structures, [constant IDENTITY] performs no transformation."
+"The identity [Transform2D] with no translation, rotation or scaling applied. "
+"When applied to other data structures, [constant IDENTITY] performs no "
+"transformation."
msgstr ""
-#: doc/classes/Transform2D.xml:188
-msgid "[Transform2D] with mirroring applied parallel to the X axis."
+#: doc/classes/Transform2D.xml:192
+msgid "The [Transform2D] that will flip something along the X axis."
msgstr ""
-#: doc/classes/Transform2D.xml:191
-msgid "[Transform2D] with mirroring applied parallel to the Y axis."
+#: doc/classes/Transform2D.xml:195
+msgid "The [Transform2D] that will flip something along the Y axis."
msgstr ""
#: doc/classes/Translation.xml:4
@@ -52553,7 +53332,8 @@ msgid "Returns the column's cell mode."
msgstr ""
#: doc/classes/TreeItem.xml:121
-msgid "Returns the TreeItem's child items."
+msgid ""
+"Returns the TreeItem's first child item or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:130
@@ -52585,28 +53365,32 @@ msgid "Returns the icon [Texture2D] region as [Rect2]."
msgstr ""
#: doc/classes/TreeItem.xml:199
-msgid "Returns the next TreeItem in the tree."
+msgid ""
+"Returns the next TreeItem in the tree or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:208
msgid ""
-"Returns the next visible TreeItem in the tree.\n"
+"Returns the next visible TreeItem in the tree or a null object if there is "
+"none.\n"
"If [code]wrap[/code] is enabled, the method will wrap around to the first "
"visible element in the tree when called on the last visible element, "
"otherwise it returns [code]null[/code]."
msgstr ""
#: doc/classes/TreeItem.xml:216
-msgid "Returns the parent TreeItem."
+msgid "Returns the parent TreeItem or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:223
-msgid "Returns the previous TreeItem in the tree."
+msgid ""
+"Returns the previous TreeItem in the tree or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:232
msgid ""
-"Returns the previous visible TreeItem in the tree.\n"
+"Returns the previous visible TreeItem in the tree or a null object if there "
+"is none.\n"
"If [code]wrap[/code] is enabled, the method will wrap around to the last "
"visible element in the tree when called on the first visible element, "
"otherwise it returns [code]null[/code]."
@@ -53116,6 +53900,10 @@ msgid ""
"A simple server that opens a UDP socket and returns connected "
"[PacketPeerUDP] upon receiving new packets. See also [method PacketPeerUDP."
"connect_to_host].\n"
+"After starting the server ([method listen]), you will need to [method poll] "
+"it at regular intervals (e.g. inside [method Node._process]) for it to "
+"process new packets, delivering them to the appropriate [PacketPeerUDP], and "
+"taking new connections.\n"
"Below a small example of how it can be used:\n"
"[codeblock]\n"
"# server.gd\n"
@@ -53128,6 +53916,7 @@ msgid ""
" server.listen(4242)\n"
"\n"
"func _process(delta):\n"
+" server.poll() # Important!\n"
" if server.is_connection_available():\n"
" var peer : PacketPeerUDP = server.take_connection()\n"
" var pkt = peer.get_packet()\n"
@@ -53163,35 +53952,58 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/UDPServer.xml:60
+#: doc/classes/UDPServer.xml:62
+#, fuzzy
msgid ""
-"Returns [code]true[/code] if a packet with a new address/port combination is "
-"received on the socket."
+"Returns [code]true[/code] if a packet with a new address/port combination "
+"was received on the socket."
msgstr ""
+"Retourne [code]true[/code] si la chaîne de caractères est vide, ou "
+"[code]false[/code] le cas échéant."
-#: doc/classes/UDPServer.xml:67
+#: doc/classes/UDPServer.xml:69
msgid ""
"Returns [code]true[/code] if the socket is open and listening on a port."
msgstr ""
-#: doc/classes/UDPServer.xml:78
+#: doc/classes/UDPServer.xml:80
msgid ""
"Starts the server by opening a UDP socket listening on the given port. You "
"can optionally specify a [code]bind_address[/code] to only listen for "
"packets sent to that address. See also [method PacketPeerUDP.listen]."
msgstr ""
-#: doc/classes/UDPServer.xml:85
+#: doc/classes/UDPServer.xml:87
+msgid ""
+"Call this method at regular intervals (e.g. inside [method Node._process]) "
+"to process new packets. And packet from known address/port pair will be "
+"delivered to the appropriate [PacketPeerUDP], any packet received from an "
+"unknown address/port pair will be added as a pending connection (see [method "
+"is_connection_available], [method take_connection]). The maximum number of "
+"pending connection is defined via [member max_pending_connections]."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:94
+msgid ""
+"Stops the server, closing the UDP socket if open. Will close all connected "
+"[PacketPeerUDP] accepted via [method take_connection] (remote peers will not "
+"be notified)."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:101
msgid ""
-"Stops the server, closing the UDP socket if open. Will not disconnect any "
-"connected [PacketPeerUDP]."
+"Returns the first pending connection (connected to the appropriate address/"
+"port). Will return [code]null[/code] if no new connection is available. See "
+"also [method is_connection_available], [method PacketPeerUDP."
+"connect_to_host]."
msgstr ""
-#: doc/classes/UDPServer.xml:92
+#: doc/classes/UDPServer.xml:107
msgid ""
-"Returns a [PacketPeerUDP] connected to the address/port combination of the "
-"first packet in queue. Will return [code]null[/code] if no packet is in "
-"queue. See also [method PacketPeerUDP.connect_to_host]."
+"Define the maximum number of pending connections, during [method poll], any "
+"new pending connection exceeding that value will be automatically dropped. "
+"Setting this value to [code]0[/code] effectively prevents any new pending "
+"connection to be accepted (e.g. when all your players have connected)."
msgstr ""
#: doc/classes/UndoRedo.xml:4
@@ -53832,24 +54644,27 @@ msgstr ""
#: doc/classes/Vector2.xml:46
msgid ""
-"Returns the vector's angle in radians with respect to the X axis, or [code]"
-"(1, 0)[/code] vector.\n"
+"Returns this vector's angle with respect to the X axis, or [code](1, 0)[/"
+"code] vector, in radians.\n"
"Equivalent to the result of [method @GDScript.atan2] when called with the "
-"vector's [member x] and [member y] as parameters: [code]atan2(x, y)[/code]."
+"vector's [member y] and [member x] as parameters: [code]atan2(y, x)[/code]."
msgstr ""
#: doc/classes/Vector2.xml:56
-msgid "Returns the angle in radians between the two vectors."
-msgstr ""
+#, fuzzy
+msgid "Returns the angle to the given vector, in radians."
+msgstr "Renvoie le reste de deux vecteurs."
#: doc/classes/Vector2.xml:65
msgid ""
-"Returns the angle in radians between the line connecting the two points and "
-"the X coordinate."
+"Returns the angle between the line connecting the two points and the X axis, "
+"in radians."
msgstr ""
-#: doc/classes/Vector2.xml:72 doc/classes/Vector2i.xml:46
-msgid "Returns the ratio of [member x] to [member y]."
+#: doc/classes/Vector2.xml:72
+msgid ""
+"Returns the aspect ratio of this vector, the ratio of [member x] to [member "
+"y]."
msgstr ""
#: doc/classes/Vector2.xml:81 doc/classes/Vector3.xml:59
@@ -53858,24 +54673,28 @@ msgid ""
msgstr ""
#: doc/classes/Vector2.xml:88
-msgid "Returns the vector with all components rounded up."
+msgid ""
+"Returns the vector with all components rounded up (towards positive "
+"infinity)."
msgstr ""
#: doc/classes/Vector2.xml:97
-msgid "Returns the vector with a maximum length."
+msgid ""
+"Returns the vector with a maximum length by limiting its length to "
+"[code]length[/code]."
msgstr ""
#: doc/classes/Vector2.xml:106
-msgid ""
-"Returns the 2-dimensional analog of the cross product with the given vector."
-msgstr ""
+#, fuzzy
+msgid "Returns the cross product of this vector and [code]with[/code]."
+msgstr "Calcule le produit vectoriel de deux vecteurs."
#: doc/classes/Vector2.xml:121
msgid ""
"Cubically interpolates between this vector and [code]b[/code] using "
"[code]pre_a[/code] and [code]post_b[/code] as handles, and returns the "
-"result at position [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation."
+"result at position [code]t[/code]. [code]t[/code] is on the range of 0.0 to "
+"1.0, representing the amount of interpolation."
msgstr ""
#: doc/classes/Vector2.xml:130 doc/classes/Vector3.xml:99
@@ -53883,182 +54702,202 @@ msgid ""
"Returns the normalized vector pointing from this vector to [code]b[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:139
+#: doc/classes/Vector2.xml:139 doc/classes/Vector3.xml:108
msgid ""
-"Returns the squared distance to vector [code]b[/code]. Prefer this function "
-"over [method distance_to] if you need to sort vectors or need the squared "
-"distance for some formula."
+"Returns the squared distance between this vector and [code]b[/code].\n"
+"This method runs faster than [method distance_to], so prefer it if you need "
+"to compare vectors or need the squared distance for some formula."
msgstr ""
-#: doc/classes/Vector2.xml:148
-msgid "Returns the distance to vector [code]b[/code]."
+#: doc/classes/Vector2.xml:149
+msgid "Returns the distance between this vector and [code]to[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:157
-msgid "Returns the dot product with vector [code]b[/code]."
+#: doc/classes/Vector2.xml:158
+msgid ""
+"Returns the dot product of this vector and [code]with[/code]. This can be "
+"used to compare the angle between two vectors. For example, this can be used "
+"to determine whether an enemy is facing the player.\n"
+"The dot product will be [code]0[/code] for a straight angle (90 degrees), "
+"greater than 0 for angles narrower than 90 degrees and lower than 0 for "
+"angles wider than 90 degrees.\n"
+"When using unit (normalized) vectors, the result will always be between "
+"[code]-1.0[/code] (180 degree angle) when the vectors are facing opposite "
+"directions, and [code]1.0[/code] (0 degree angle) when the vectors are "
+"aligned.\n"
+"[b]Note:[/b] [code]a.dot(b)[/code] is equivalent to [code]b.dot(a)[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:164
-msgid "Returns the vector with all components rounded down."
+#: doc/classes/Vector2.xml:168
+msgid ""
+"Returns the vector with all components rounded down (towards negative "
+"infinity)."
msgstr ""
-#: doc/classes/Vector2.xml:173 doc/classes/Vector3.xml:149
+#: doc/classes/Vector2.xml:177 doc/classes/Vector3.xml:153
msgid ""
"Returns [code]true[/code] if this vector and [code]v[/code] are "
"approximately equal, by running [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/Vector2.xml:180 doc/classes/Vector3.xml:156
-msgid "Returns [code]true[/code] if the vector is normalized."
+#: doc/classes/Vector2.xml:184 doc/classes/Vector3.xml:160
+#, fuzzy
+msgid ""
+"Returns [code]true[/code] if the vector is normalized, and false otherwise."
msgstr ""
+"Renvoie [code]true[/code] (vrai) si [code]s[/code] vaut zéro ou quasiment "
+"zéro."
-#: doc/classes/Vector2.xml:187 doc/classes/Vector3.xml:163
-msgid "Returns the vector's length."
-msgstr ""
+#: doc/classes/Vector2.xml:191 doc/classes/Vector3.xml:167
+#, fuzzy
+msgid "Returns the length (magnitude) of this vector."
+msgstr "Renvoie le reste de deux vecteurs."
-#: doc/classes/Vector2.xml:194
+#: doc/classes/Vector2.xml:198 doc/classes/Vector3.xml:174
msgid ""
-"Returns the vector's length squared. Prefer this method over [method length] "
-"if you need to sort vectors or need the squared length for some formula."
+"Returns the squared length (squared magnitude) of this vector.\n"
+"This method runs faster than [method length], so prefer it if you need to "
+"compare vectors or need the squared distance for some formula."
msgstr ""
-#: doc/classes/Vector2.xml:205
+#: doc/classes/Vector2.xml:210 doc/classes/Vector3.xml:186
msgid ""
"Returns the result of the linear interpolation between this vector and "
-"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation."
+"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is on the range of "
+"0.0 to 1.0, representing the amount of interpolation."
msgstr ""
-#: doc/classes/Vector2.xml:216 doc/classes/Vector3.xml:206
+#: doc/classes/Vector2.xml:221
msgid ""
"Moves the vector toward [code]to[/code] by the fixed [code]delta[/code] "
"amount."
msgstr ""
-#: doc/classes/Vector2.xml:223 doc/classes/Vector3.xml:213
+#: doc/classes/Vector2.xml:228 doc/classes/Vector3.xml:218
msgid ""
"Returns the vector scaled to unit length. Equivalent to [code]v / v.length()"
"[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:232 doc/classes/Vector3.xml:231
+#: doc/classes/Vector2.xml:237 doc/classes/Vector3.xml:236
msgid ""
-"Returns a vector composed of the [code]fposmod[/code] of this vector's "
+"Returns a vector composed of the [method @GDScript.fposmod] of this vector's "
"components and [code]mod[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:241 doc/classes/Vector3.xml:240
+#: doc/classes/Vector2.xml:246 doc/classes/Vector3.xml:245
msgid ""
-"Returns a vector composed of the [code]fposmod[/code] of this vector's "
+"Returns a vector composed of the [method @GDScript.fposmod] of this vector's "
"components and [code]modv[/code]'s components."
msgstr ""
-#: doc/classes/Vector2.xml:250 doc/classes/Vector3.xml:249
+#: doc/classes/Vector2.xml:255
msgid "Returns the vector projected onto the vector [code]b[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:259 doc/classes/Vector3.xml:258
+#: doc/classes/Vector2.xml:264
msgid "Returns the vector reflected from a plane defined by the given normal."
msgstr ""
-#: doc/classes/Vector2.xml:268
+#: doc/classes/Vector2.xml:273
msgid ""
"Returns the vector rotated by [code]phi[/code] radians. See also [method "
"@GDScript.deg2rad]."
msgstr ""
-#: doc/classes/Vector2.xml:275 doc/classes/Vector3.xml:276
+#: doc/classes/Vector2.xml:280
msgid ""
"Returns the vector with all components rounded to the nearest integer, with "
"halfway cases rounded away from zero."
msgstr ""
-#: doc/classes/Vector2.xml:282 doc/classes/Vector2i.xml:53
-#: doc/classes/Vector3.xml:283 doc/classes/Vector3i.xml:55
+#: doc/classes/Vector2.xml:287
msgid ""
"Returns the vector with each component set to one or negative one, depending "
-"on the signs of the components."
+"on the signs of the components, or zero if the component is zero, by calling "
+"[method @GDScript.sign] on each component."
msgstr ""
-#: doc/classes/Vector2.xml:293 doc/classes/Vector3.xml:294
+#: doc/classes/Vector2.xml:298 doc/classes/Vector3.xml:299
msgid ""
"Returns the result of spherical linear interpolation between this vector and "
-"[code]b[/code], by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation.\n"
+"[code]b[/code], by amount [code]t[/code]. [code]t[/code] is on the range of "
+"0.0 to 1.0, representing the amount of interpolation.\n"
"[b]Note:[/b] Both vectors must be normalized."
msgstr ""
-#: doc/classes/Vector2.xml:303 doc/classes/Vector3.xml:304
-msgid ""
-"Returns the component of the vector along a plane defined by the given "
-"normal."
+#: doc/classes/Vector2.xml:308 doc/classes/Vector3.xml:309
+msgid "Returns this vector slid along a plane defined by the given normal."
msgstr ""
-#: doc/classes/Vector2.xml:312 doc/classes/Vector3.xml:313
-msgid "Returns the vector snapped to a grid with the given size."
+#: doc/classes/Vector2.xml:317 doc/classes/Vector3.xml:318
+msgid ""
+"Returns this vector with each component snapped to the nearest multiple of "
+"[code]step[/code]. This can also be used to round to an arbitrary number of "
+"decimals."
msgstr ""
-#: doc/classes/Vector2.xml:319
-msgid "Returns a perpendicular vector."
+#: doc/classes/Vector2.xml:324
+msgid ""
+"Returns a perpendicular vector rotated 90 degrees counter-clockwise compared "
+"to the original, with the same length."
msgstr ""
-#: doc/classes/Vector2.xml:325 doc/classes/Vector2i.xml:59
-#: doc/classes/Vector3.xml:326 doc/classes/Vector3i.xml:61
+#: doc/classes/Vector2.xml:330 doc/classes/Vector2i.xml:59
+#: doc/classes/Vector3.xml:332 doc/classes/Vector3i.xml:61
msgid ""
"The vector's X component. Also accessible by using the index position [code]"
"[0][/code]."
msgstr ""
-#: doc/classes/Vector2.xml:328 doc/classes/Vector2i.xml:62
-#: doc/classes/Vector3.xml:329 doc/classes/Vector3i.xml:64
+#: doc/classes/Vector2.xml:333 doc/classes/Vector2i.xml:62
+#: doc/classes/Vector3.xml:335 doc/classes/Vector3i.xml:64
msgid ""
"The vector's Y component. Also accessible by using the index position [code]"
"[1][/code]."
msgstr ""
-#: doc/classes/Vector2.xml:333 doc/classes/Vector2i.xml:67
+#: doc/classes/Vector2.xml:338 doc/classes/Vector2i.xml:67
#: doc/classes/Vector3i.xml:72
msgid "Enumerated value for the X axis."
msgstr ""
-#: doc/classes/Vector2.xml:336 doc/classes/Vector2i.xml:70
+#: doc/classes/Vector2.xml:341 doc/classes/Vector2i.xml:70
#: doc/classes/Vector3i.xml:75
msgid "Enumerated value for the Y axis."
msgstr ""
-#: doc/classes/Vector2.xml:339 doc/classes/Vector2i.xml:73
-#: doc/classes/Vector3.xml:346 doc/classes/Vector3i.xml:81
-msgid "Zero vector."
+#: doc/classes/Vector2.xml:344 doc/classes/Vector2i.xml:73
+#: doc/classes/Vector3.xml:352 doc/classes/Vector3i.xml:81
+msgid "Zero vector, a vector with all components set to [code]0[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:342 doc/classes/Vector2i.xml:76
-#: doc/classes/Vector3.xml:349 doc/classes/Vector3i.xml:84
-msgid "One vector."
+#: doc/classes/Vector2.xml:347 doc/classes/Vector2i.xml:76
+#: doc/classes/Vector3.xml:355 doc/classes/Vector3i.xml:84
+msgid "One vector, a vector with all components set to [code]1[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:345 doc/classes/Vector3.xml:352
-msgid "Infinity vector."
+#: doc/classes/Vector2.xml:350 doc/classes/Vector3.xml:358
+msgid ""
+"Infinity vector, a vector with all components set to [constant @GDScript."
+"INF]."
msgstr ""
-#: doc/classes/Vector2.xml:348 doc/classes/Vector2i.xml:79
-#: doc/classes/Vector3.xml:355 doc/classes/Vector3i.xml:87
-msgid "Left unit vector."
+#: doc/classes/Vector2.xml:353 doc/classes/Vector2i.xml:79
+msgid "Left unit vector. Represents the direction of left."
msgstr ""
-#: doc/classes/Vector2.xml:351 doc/classes/Vector2i.xml:82
-#: doc/classes/Vector3.xml:358 doc/classes/Vector3i.xml:90
-msgid "Right unit vector."
+#: doc/classes/Vector2.xml:356 doc/classes/Vector2i.xml:82
+msgid "Right unit vector. Represents the direction of right."
msgstr ""
-#: doc/classes/Vector2.xml:354 doc/classes/Vector2i.xml:85
-#: doc/classes/Vector3.xml:361 doc/classes/Vector3i.xml:93
-msgid "Up unit vector."
+#: doc/classes/Vector2.xml:359 doc/classes/Vector2i.xml:85
+msgid "Up unit vector. Y is down in 2D, so this vector points -Y."
msgstr ""
-#: doc/classes/Vector2.xml:357 doc/classes/Vector2i.xml:88
-#: doc/classes/Vector3.xml:364 doc/classes/Vector3i.xml:96
-msgid "Down unit vector."
+#: doc/classes/Vector2.xml:362 doc/classes/Vector2i.xml:88
+msgid "Down unit vector. Y is down in 2D, so this vector points +Y."
msgstr ""
#: doc/classes/Vector2i.xml:4
@@ -54087,6 +54926,16 @@ msgid ""
"will be truncated."
msgstr ""
+#: doc/classes/Vector2i.xml:46
+msgid "Returns the ratio of [member x] to [member y]."
+msgstr ""
+
+#: doc/classes/Vector2i.xml:53 doc/classes/Vector3i.xml:55
+msgid ""
+"Returns the vector with each component set to one or negative one, depending "
+"on the signs of the components."
+msgstr ""
+
#: doc/classes/Vector3.xml:4
msgid "Vector used for 3D math using floating point coordinates."
msgstr ""
@@ -54111,120 +54960,172 @@ msgid "Returns a [Vector3] with the given components."
msgstr ""
#: doc/classes/Vector3.xml:50
-msgid "Returns the minimum angle to the given vector."
-msgstr ""
+#, fuzzy
+msgid "Returns the minimum angle to the given vector, in radians."
+msgstr "Renvoie le reste de deux vecteurs."
#: doc/classes/Vector3.xml:66
-msgid "Returns a new vector with all components rounded up."
+msgid ""
+"Returns a new vector with all components rounded up (towards positive "
+"infinity)."
msgstr ""
#: doc/classes/Vector3.xml:75
-msgid "Returns the cross product with [code]b[/code]."
-msgstr ""
+#, fuzzy
+msgid "Returns the cross product of this vector and [code]b[/code]."
+msgstr "Calcule le produit vectoriel de deux vecteurs."
#: doc/classes/Vector3.xml:90
msgid ""
"Performs a cubic interpolation between vectors [code]pre_a[/code], [code]a[/"
"code], [code]b[/code], [code]post_b[/code] ([code]a[/code] is current), by "
-"the given amount [code]t[/code]. [code]t[/code] is in the range of [code]0.0 "
-"- 1.0[/code], representing the amount of interpolation."
-msgstr ""
-
-#: doc/classes/Vector3.xml:108
-msgid ""
-"Returns the squared distance to [code]b[/code]. Prefer this function over "
-"[method distance_to] if you need to sort vectors or need the squared "
-"distance for some formula."
+"the given amount [code]t[/code]. [code]t[/code] is on the range of 0.0 to "
+"1.0, representing the amount of interpolation."
msgstr ""
-#: doc/classes/Vector3.xml:117
-msgid "Returns the distance to [code]b[/code]."
+#: doc/classes/Vector3.xml:118
+msgid "Returns the distance between this vector and [code]b[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:126
-msgid "Returns the dot product with [code]b[/code]."
+#: doc/classes/Vector3.xml:127
+msgid ""
+"Returns the dot product of this vector and [code]b[/code]. This can be used "
+"to compare the angle between two vectors. For example, this can be used to "
+"determine whether an enemy is facing the player.\n"
+"The dot product will be [code]0[/code] for a straight angle (90 degrees), "
+"greater than 0 for angles narrower than 90 degrees and lower than 0 for "
+"angles wider than 90 degrees.\n"
+"When using unit (normalized) vectors, the result will always be between "
+"[code]-1.0[/code] (180 degree angle) when the vectors are facing opposite "
+"directions, and [code]1.0[/code] (0 degree angle) when the vectors are "
+"aligned.\n"
+"[b]Note:[/b] [code]a.dot(b)[/code] is equivalent to [code]b.dot(a)[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:133
-msgid "Returns a new vector with all components rounded down."
+#: doc/classes/Vector3.xml:137
+msgid ""
+"Returns a new vector with all components rounded down (towards negative "
+"infinity)."
msgstr ""
-#: doc/classes/Vector3.xml:140
+#: doc/classes/Vector3.xml:144
msgid ""
"Returns the inverse of the vector. This is the same as [code]Vector3( 1.0 / "
"v.x, 1.0 / v.y, 1.0 / v.z )[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:170
+#: doc/classes/Vector3.xml:193 doc/classes/Vector3i.xml:41
msgid ""
-"Returns the vector's length squared. Prefer this function over [method "
-"length] if you need to sort vectors or need the squared length for some "
-"formula."
+"Returns the axis of the vector's largest value. See [code]AXIS_*[/code] "
+"constants. If all components are equal, this method returns [constant "
+"AXIS_X]."
msgstr ""
-#: doc/classes/Vector3.xml:181
+#: doc/classes/Vector3.xml:200 doc/classes/Vector3i.xml:48
msgid ""
-"Returns the result of the linear interpolation between this vector and "
-"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation.."
+"Returns the axis of the vector's smallest value. See [code]AXIS_*[/code] "
+"constants. If all components are equal, this method returns [constant "
+"AXIS_Z]."
msgstr ""
-#: doc/classes/Vector3.xml:188 doc/classes/Vector3i.xml:41
+#: doc/classes/Vector3.xml:211
msgid ""
-"Returns the axis of the vector's largest value. See [code]AXIS_*[/code] "
-"constants."
+"Moves this vector toward [code]to[/code] by the fixed [code]delta[/code] "
+"amount."
msgstr ""
-#: doc/classes/Vector3.xml:195 doc/classes/Vector3i.xml:48
+#: doc/classes/Vector3.xml:227
+msgid "Returns the outer product with [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:254
+msgid "Returns this vector projected onto another vector [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:263
+msgid "Returns this vector reflected from a plane defined by the given normal."
+msgstr ""
+
+#: doc/classes/Vector3.xml:274
msgid ""
-"Returns the axis of the vector's smallest value. See [code]AXIS_*[/code] "
-"constants."
+"Rotates this vector around a given axis by [code]phi[/code] radians. The "
+"axis must be a normalized vector."
msgstr ""
-#: doc/classes/Vector3.xml:222
-msgid "Returns the outer product with [code]b[/code]."
+#: doc/classes/Vector3.xml:281
+msgid ""
+"Returns this vector with all components rounded to the nearest integer, with "
+"halfway cases rounded away from zero."
msgstr ""
-#: doc/classes/Vector3.xml:269
+#: doc/classes/Vector3.xml:288
msgid ""
-"Rotates the vector around a given axis by [code]phi[/code] radians. The axis "
-"must be a normalized vector."
+"Returns a vector with each component set to one or negative one, depending "
+"on the signs of this vector's components, or zero if the component is zero, "
+"by calling [method @GDScript.sign] on each component."
msgstr ""
-#: doc/classes/Vector3.xml:320
-msgid "Returns a diagonal matrix with the vector as main diagonal."
+#: doc/classes/Vector3.xml:325
+msgid ""
+"Returns a diagonal matrix with the vector as main diagonal.\n"
+"This is equivalent to a Basis with no rotation or shearing and this vector's "
+"components set as the scale."
msgstr ""
-#: doc/classes/Vector3.xml:332 doc/classes/Vector3i.xml:67
+#: doc/classes/Vector3.xml:338 doc/classes/Vector3i.xml:67
msgid ""
"The vector's Z component. Also accessible by using the index position [code]"
"[2][/code]."
msgstr ""
-#: doc/classes/Vector3.xml:337
+#: doc/classes/Vector3.xml:343
msgid ""
"Enumerated value for the X axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:340
+#: doc/classes/Vector3.xml:346
msgid ""
"Enumerated value for the Y axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:343
+#: doc/classes/Vector3.xml:349
msgid ""
"Enumerated value for the Z axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:367 doc/classes/Vector3i.xml:99
-msgid "Forward unit vector."
+#: doc/classes/Vector3.xml:361 doc/classes/Vector3i.xml:87
+msgid ""
+"Left unit vector. Represents the local direction of left, and the global "
+"direction of west."
+msgstr ""
+
+#: doc/classes/Vector3.xml:364 doc/classes/Vector3i.xml:90
+msgid ""
+"Right unit vector. Represents the local direction of right, and the global "
+"direction of east."
+msgstr ""
+
+#: doc/classes/Vector3.xml:367 doc/classes/Vector3i.xml:93
+msgid "Up unit vector."
+msgstr ""
+
+#: doc/classes/Vector3.xml:370 doc/classes/Vector3i.xml:96
+msgid "Down unit vector."
+msgstr ""
+
+#: doc/classes/Vector3.xml:373 doc/classes/Vector3i.xml:99
+msgid ""
+"Forward unit vector. Represents the local direction of forward, and the "
+"global direction of north."
msgstr ""
-#: doc/classes/Vector3.xml:370 doc/classes/Vector3i.xml:102
-msgid "Back unit vector."
+#: doc/classes/Vector3.xml:376 doc/classes/Vector3i.xml:102
+msgid ""
+"Back unit vector. Represents the local direction of back, and the global "
+"direction of south."
msgstr ""
#: doc/classes/Vector3i.xml:4
@@ -54273,10 +55174,14 @@ msgid ""
"directly.\n"
"[b]Note:[/b] The origin point of your VehicleBody3D will determine the "
"center of gravity of your vehicle so it is better to keep this low and move "
-"the [CollisionShape3D] and [MeshInstance3D] upwards."
+"the [CollisionShape3D] and [MeshInstance3D] upwards.\n"
+"[b]Note:[/b] This class has known issues and isn't designed to provide "
+"realistic 3D vehicle physics. If you want advanced vehicle physics, you will "
+"probably have to write your own physics integration using another "
+"[PhysicsBody3D] class."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:16
+#: doc/classes/VehicleBody3D.xml:17
msgid ""
"Slows down the vehicle by applying a braking force. The vehicle is only "
"slowed down if the wheels are in contact with a surface. The force you need "
@@ -54285,7 +55190,7 @@ msgid ""
"a value in the 25 - 30 range for hard braking."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:19
+#: doc/classes/VehicleBody3D.xml:20
msgid ""
"Accelerates the vehicle by applying an engine force. The vehicle is only "
"speed up if the wheels that have [member VehicleWheel3D.use_as_traction] set "
@@ -54298,7 +55203,7 @@ msgid ""
"A negative value will result in the vehicle reversing."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:25
+#: doc/classes/VehicleBody3D.xml:26
msgid ""
"The steering angle for the vehicle. Setting this to a non-zero value will "
"result in the vehicle turning when it's moving. Wheels that have [member "
@@ -54314,25 +55219,29 @@ msgstr ""
msgid ""
"This node needs to be used as a child node of [VehicleBody3D] and simulates "
"the behavior of one of its wheels. This node also acts as a collider to "
-"detect if the wheel is touching a surface."
+"detect if the wheel is touching a surface.\n"
+"[b]Note:[/b] This class has known issues and isn't designed to provide "
+"realistic 3D vehicle physics. If you want advanced vehicle physics, you will "
+"probably have to write your own physics integration using another "
+"[PhysicsBody3D] class."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:16
+#: doc/classes/VehicleWheel3D.xml:17
msgid "Returns the rotational speed of the wheel in revolutions per minute."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:23
+#: doc/classes/VehicleWheel3D.xml:24
msgid ""
"Returns a value between 0.0 and 1.0 that indicates whether this wheel is "
"skidding. 0.0 is skidding (the wheel has lost grip, e.g. icy terrain), 1.0 "
"means not skidding (the wheel has full grip, e.g. dry asphalt road)."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:30
+#: doc/classes/VehicleWheel3D.xml:31
msgid "Returns [code]true[/code] if this wheel is in contact with a surface."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:36
+#: doc/classes/VehicleWheel3D.xml:37
msgid ""
"Slows down the wheel by applying a braking force. The wheel is only slowed "
"down if it is in contact with a surface. The force you need to apply to "
@@ -54341,7 +55250,7 @@ msgid ""
"- 30 range for hard braking."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:39
+#: doc/classes/VehicleWheel3D.xml:40
msgid ""
"The damping applied to the spring when the spring is being compressed. This "
"value should be between 0.0 (no damping) and 1.0. A value of 0.0 means the "
@@ -54349,7 +55258,7 @@ msgid ""
"is around 0.3 for a normal car, 0.5 for a race car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:42
+#: doc/classes/VehicleWheel3D.xml:43
msgid ""
"The damping applied to the spring when relaxing. This value should be "
"between 0.0 (no damping) and 1.0. This value should always be slightly "
@@ -54357,7 +55266,7 @@ msgid ""
"damping_compression] value of 0.3, try a relaxation value of 0.5."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:45
+#: doc/classes/VehicleWheel3D.xml:46
msgid ""
"Accelerates the wheel by applying an engine force. The wheel is only speed "
"up if it is in contact with a surface. The [member RigidBody3D.mass] of the "
@@ -54368,13 +55277,13 @@ msgid ""
"A negative value will result in the wheel reversing."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:50
+#: doc/classes/VehicleWheel3D.xml:51
msgid ""
"The steering angle for the wheel. Setting this to a non-zero value will "
"result in the vehicle turning when it's moving."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:53
+#: doc/classes/VehicleWheel3D.xml:54
msgid ""
"The maximum force the spring can resist. This value should be higher than a "
"quarter of the [member RigidBody3D.mass] of the [VehicleBody3D] or the "
@@ -54382,28 +55291,28 @@ msgid ""
"obtained by a value that is about 3× to 4× this number."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:56
+#: doc/classes/VehicleWheel3D.xml:57
msgid ""
"This value defines the stiffness of the suspension. Use a value lower than "
"50 for an off-road car, a value between 50 and 100 for a race car and try "
"something around 200 for something like a Formula 1 car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:59
+#: doc/classes/VehicleWheel3D.xml:60
msgid ""
"This is the distance the suspension can travel. As Godot units are "
"equivalent to meters, keep this setting relatively low. Try a value between "
"0.1 and 0.3 depending on the type of car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:62
+#: doc/classes/VehicleWheel3D.xml:63
msgid ""
"If [code]true[/code], this wheel will be turned when the car steers. This "
"value is used in conjunction with [member VehicleBody3D.steering] and "
"ignored if you are using the per-wheel [member steering] value instead."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:65
+#: doc/classes/VehicleWheel3D.xml:66
msgid ""
"If [code]true[/code], this wheel transfers engine force to the ground to "
"propel the vehicle forward. This value is used in conjunction with [member "
@@ -54411,7 +55320,7 @@ msgid ""
"[member engine_force] value instead."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:68
+#: doc/classes/VehicleWheel3D.xml:69
msgid ""
"This determines how much grip this wheel has. It is combined with the "
"friction setting of the surface the wheel is in contact with. 0.0 means no "
@@ -54421,11 +55330,11 @@ msgid ""
"It's best to set this to 1.0 when starting out."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:72
+#: doc/classes/VehicleWheel3D.xml:73
msgid "The radius of the wheel in meters."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:75
+#: doc/classes/VehicleWheel3D.xml:76
msgid ""
"This is the distance in meters the wheel is lowered from its origin point. "
"Don't set this to 0.0 and move the wheel into position, instead move the "
@@ -54434,7 +55343,7 @@ msgid ""
"down to the position it should be in when the car is in rest."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:78
+#: doc/classes/VehicleWheel3D.xml:79
msgid ""
"This value affects the roll of your vehicle. If set to 1.0 for all wheels, "
"your vehicle will be prone to rolling over, while a value of 0.0 will resist "
@@ -54912,7 +55821,7 @@ msgstr ""
#: doc/classes/Viewport.xml:318
msgid ""
"Use fast approximate antialiasing. FXAA is a popular screen-space "
-"antialising method, which is fast but will make the image look blurry, "
+"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."
msgstr ""
@@ -54965,24 +55874,24 @@ msgid ""
"your [WorldEnvironment]."
msgstr ""
-#: doc/classes/Viewport.xml:384
+#: doc/classes/Viewport.xml:381
msgid ""
"Colors each PSSM split for the [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, and yellow."
msgstr ""
-#: doc/classes/Viewport.xml:387
+#: doc/classes/Viewport.xml:384
msgid ""
"Draws the decal atlas used by [Decal]s and light projector textures in the "
"upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/Viewport.xml:402
+#: doc/classes/Viewport.xml:405
msgid "Max value for [enum DefaultCanvasItemTextureFilter] enum."
msgstr ""
-#: doc/classes/Viewport.xml:414
+#: doc/classes/Viewport.xml:417
msgid "Max value for [enum DefaultCanvasItemTextureRepeat] enum."
msgstr ""
@@ -55013,82 +55922,84 @@ msgid ""
"The VisibilityEnabler2D will disable [RigidBody2D], [AnimationPlayer], and "
"other nodes when they are not visible. It will only affect nodes with the "
"same root node as the VisibilityEnabler2D, and the root node itself.\n"
+"If you just want to receive notifications, use [VisibilityNotifier2D] "
+"instead.\n"
"[b]Note:[/b] For performance reasons, VisibilityEnabler2D uses an "
"approximate heuristic with precision determined by [member ProjectSettings."
-"world/2d/cell_size]. If you need exact visibility checking, use another "
+"world/2d/cell_size]. If you need precise visibility checking, use another "
"method such as adding an [Area2D] node as a child of a [Camera2D] node.\n"
"[b]Note:[/b] VisibilityEnabler2D will not affect nodes added after scene "
"initialization."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:20
-#: doc/classes/VisibilityEnabler3D.xml:20
+#: doc/classes/VisibilityEnabler2D.xml:21
+#: doc/classes/VisibilityEnabler3D.xml:21
msgid ""
"Returns whether the enabler identified by given [enum Enabler] constant is "
"active."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:31
-#: doc/classes/VisibilityEnabler3D.xml:31
+#: doc/classes/VisibilityEnabler2D.xml:32
+#: doc/classes/VisibilityEnabler3D.xml:32
msgid ""
"Sets active state of the enabler identified by given [enum Enabler] constant."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:37
+#: doc/classes/VisibilityEnabler2D.xml:38
msgid "If [code]true[/code], [RigidBody2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:40
+#: doc/classes/VisibilityEnabler2D.xml:41
msgid "If [code]true[/code], [AnimatedSprite2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:43
-#: doc/classes/VisibilityEnabler3D.xml:40
+#: doc/classes/VisibilityEnabler2D.xml:44
+#: doc/classes/VisibilityEnabler3D.xml:41
msgid "If [code]true[/code], [AnimationPlayer] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:46
+#: doc/classes/VisibilityEnabler2D.xml:47
msgid "If [code]true[/code], [GPUParticles2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:49
+#: doc/classes/VisibilityEnabler2D.xml:50
msgid ""
"If [code]true[/code], the parent's [method Node._physics_process] will be "
"stopped."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:52
+#: doc/classes/VisibilityEnabler2D.xml:53
msgid ""
"If [code]true[/code], the parent's [method Node._process] will be stopped."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:57
-#: doc/classes/VisibilityEnabler3D.xml:45
+#: doc/classes/VisibilityEnabler2D.xml:58
+#: doc/classes/VisibilityEnabler3D.xml:46
msgid "This enabler will pause [AnimationPlayer] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:60
+#: doc/classes/VisibilityEnabler2D.xml:61
msgid "This enabler will freeze [RigidBody2D] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:63
+#: doc/classes/VisibilityEnabler2D.xml:64
msgid "This enabler will stop [GPUParticles2D] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:66
+#: doc/classes/VisibilityEnabler2D.xml:67
msgid "This enabler will stop the parent's _process function."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:69
+#: doc/classes/VisibilityEnabler2D.xml:70
msgid "This enabler will stop the parent's _physics_process function."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:72
+#: doc/classes/VisibilityEnabler2D.xml:73
msgid "This enabler will stop [AnimatedSprite2D] nodes animations."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:75
-#: doc/classes/VisibilityEnabler3D.xml:51
+#: doc/classes/VisibilityEnabler2D.xml:76
+#: doc/classes/VisibilityEnabler3D.xml:52
msgid "Represents the size of the [enum Enabler] enum."
msgstr ""
@@ -55097,19 +56008,23 @@ msgid ""
"The VisibilityEnabler3D will disable [RigidBody3D] and [AnimationPlayer] "
"nodes when they are not visible. It will only affect other nodes within the "
"same scene as the VisibilityEnabler3D itself.\n"
+"If you just want to receive notifications, use [VisibilityNotifier3D] "
+"instead.\n"
"[b]Note:[/b] VisibilityEnabler3D uses an approximate heuristic for "
"performance reasons. It doesn't take walls and other occlusion into account. "
-"If you need exact visibility checking, use another method such as adding an "
-"[Area3D] node as a child of a [Camera3D] node.\n"
+"The heuristic is an implementation detail and may change in future versions. "
+"If you need precise visibility checking, use another method such as adding "
+"an [Area3D] node as a child of a [Camera3D] node and/or [method Vector3."
+"dot].\n"
"[b]Note:[/b] VisibilityEnabler3D will not affect nodes added after scene "
"initialization."
msgstr ""
-#: doc/classes/VisibilityEnabler3D.xml:37
+#: doc/classes/VisibilityEnabler3D.xml:38
msgid "If [code]true[/code], [RigidBody3D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler3D.xml:48
+#: doc/classes/VisibilityEnabler3D.xml:49
msgid "This enabler will freeze [RigidBody3D] nodes."
msgstr ""
@@ -55123,13 +56038,15 @@ msgid ""
"The VisibilityNotifier2D detects when it is visible on the screen. It also "
"notifies when its bounding rectangle enters or exits the screen or a "
"viewport.\n"
+"If you want nodes to be disabled automatically when they exit the screen, "
+"use [VisibilityEnabler2D] instead.\n"
"[b]Note:[/b] For performance reasons, VisibilityNotifier2D uses an "
"approximate heuristic with precision determined by [member ProjectSettings."
-"world/2d/cell_size]. If you need exact visibility checking, use another "
+"world/2d/cell_size]. If you need precise visibility checking, use another "
"method such as adding an [Area2D] node as a child of a [Camera2D] node."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:17
+#: doc/classes/VisibilityNotifier2D.xml:18
msgid ""
"If [code]true[/code], the bounding rectangle is on the screen.\n"
"[b]Note:[/b] It takes one frame for the node's visibility to be assessed "
@@ -55138,23 +56055,23 @@ msgid ""
"pass."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:24
+#: doc/classes/VisibilityNotifier2D.xml:25
msgid "The VisibilityNotifier2D's bounding rectangle."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:30
+#: doc/classes/VisibilityNotifier2D.xml:31
msgid "Emitted when the VisibilityNotifier2D enters the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:35
+#: doc/classes/VisibilityNotifier2D.xml:36
msgid "Emitted when the VisibilityNotifier2D exits the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:42
+#: doc/classes/VisibilityNotifier2D.xml:43
msgid "Emitted when the VisibilityNotifier2D enters a [Viewport]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:49
+#: doc/classes/VisibilityNotifier2D.xml:50
msgid "Emitted when the VisibilityNotifier2D exits a [Viewport]'s view."
msgstr ""
@@ -55163,13 +56080,16 @@ msgid ""
"The VisibilityNotifier3D detects when it is visible on the screen. It also "
"notifies when its bounding rectangle enters or exits the screen or a "
"[Camera3D]'s view.\n"
+"If you want nodes to be disabled automatically when they exit the screen, "
+"use [VisibilityEnabler3D] instead.\n"
"[b]Note:[/b] VisibilityNotifier3D uses an approximate heuristic for "
"performance reasons. It doesn't take walls and other occlusion into account. "
-"If you need exact visibility checking, use another method such as adding an "
-"[Area3D] node as a child of a [Camera3D] node."
+"The heuristic is an implementation detail and may change in future versions. "
+"If you need precise visibility checking, use another method such as adding "
+"an [Area3D] node as a child of a [Camera3D] node and/or [method Vector3.dot]."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:17
+#: doc/classes/VisibilityNotifier3D.xml:18
msgid ""
"If [code]true[/code], the bounding box is on the screen.\n"
"[b]Note:[/b] It takes one frame for the node's visibility to be assessed "
@@ -55178,23 +56098,23 @@ msgid ""
"pass."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:24
+#: doc/classes/VisibilityNotifier3D.xml:25
msgid "The VisibilityNotifier3D's bounding box."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:32
+#: doc/classes/VisibilityNotifier3D.xml:33
msgid "Emitted when the VisibilityNotifier3D enters a [Camera3D]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:39
+#: doc/classes/VisibilityNotifier3D.xml:40
msgid "Emitted when the VisibilityNotifier3D exits a [Camera3D]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:44
+#: doc/classes/VisibilityNotifier3D.xml:45
msgid "Emitted when the VisibilityNotifier3D enters the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:49
+#: doc/classes/VisibilityNotifier3D.xml:50
msgid "Emitted when the VisibilityNotifier3D exits the screen."
msgstr ""
@@ -55614,6 +56534,12 @@ msgid ""
"exist."
msgstr ""
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:90
+msgid ""
+"Easing function, based on exponent. 0 is constant, 1 is linear, 0 to 1 is "
+"ease-in, 1+ is ease out. Negative values are in-out/out in."
+msgstr ""
+
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:93
msgid ""
"Return the number of digit places after the decimal that the first non-zero "
@@ -56499,6 +57425,7 @@ msgid "A shader for light calculations."
msgstr ""
#: doc/classes/VisualShader.xml:214
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:26
msgid "Represents the size of the [enum Type] enum."
msgstr ""
@@ -56601,6 +57528,24 @@ msgstr ""
msgid "Translated to [code]uniform bool[/code] in the shader language."
msgstr ""
+#: doc/classes/VisualShaderNodeBooleanUniform.xml:15
+#: doc/classes/VisualShaderNodeColorUniform.xml:15
+#: doc/classes/VisualShaderNodeFloatUniform.xml:15
+#: doc/classes/VisualShaderNodeIntUniform.xml:15
+#: doc/classes/VisualShaderNodeTransformUniform.xml:15
+#: doc/classes/VisualShaderNodeVec3Uniform.xml:15
+msgid "A default value to be assigned within the shader."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeBooleanUniform.xml:18
+#: doc/classes/VisualShaderNodeColorUniform.xml:18
+#: doc/classes/VisualShaderNodeFloatUniform.xml:18
+#: doc/classes/VisualShaderNodeIntUniform.xml:18
+#: doc/classes/VisualShaderNodeTransformUniform.xml:18
+#: doc/classes/VisualShaderNodeVec3Uniform.xml:18
+msgid "Enables usage of the [member default_value]."
+msgstr ""
+
#: doc/classes/VisualShaderNodeColorConstant.xml:4
msgid "A [Color] constant to be used within the visual shader graph."
msgstr ""
@@ -57451,49 +58396,49 @@ msgstr ""
msgid "Translated to [code]uniform float[/code] in the shader language."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:15
-#: doc/classes/VisualShaderNodeIntUniform.xml:15
+#: doc/classes/VisualShaderNodeFloatUniform.xml:21
+#: doc/classes/VisualShaderNodeIntUniform.xml:21
msgid ""
"A hint applied to the uniform, which controls the values it can take when "
"set through the inspector."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:18
-#: doc/classes/VisualShaderNodeIntUniform.xml:18
+#: doc/classes/VisualShaderNodeFloatUniform.xml:24
+#: doc/classes/VisualShaderNodeIntUniform.xml:24
msgid ""
"Minimum value for range hints. Used if [member hint] is set to [constant "
"HINT_RANGE] or [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:21
-#: doc/classes/VisualShaderNodeIntUniform.xml:21
+#: doc/classes/VisualShaderNodeFloatUniform.xml:27
+#: doc/classes/VisualShaderNodeIntUniform.xml:27
msgid ""
"Maximum value for range hints. Used if [member hint] is set to [constant "
"HINT_RANGE] or [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:24
-#: doc/classes/VisualShaderNodeIntUniform.xml:24
+#: doc/classes/VisualShaderNodeFloatUniform.xml:30
+#: doc/classes/VisualShaderNodeIntUniform.xml:30
msgid ""
"Step (increment) value for the range hint with step. Used if [member hint] "
"is set to [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:29
-#: doc/classes/VisualShaderNodeIntUniform.xml:29
+#: doc/classes/VisualShaderNodeFloatUniform.xml:35
+#: doc/classes/VisualShaderNodeIntUniform.xml:35
msgid "No hint used."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:32
-#: doc/classes/VisualShaderNodeIntUniform.xml:32
+#: doc/classes/VisualShaderNodeFloatUniform.xml:38
+#: doc/classes/VisualShaderNodeIntUniform.xml:38
msgid ""
"A range hint for scalar value, which limits possible input values between "
"[member min] and [member max]. Translated to [code]hint_range(min, max)[/"
"code] in shader code."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:35
-#: doc/classes/VisualShaderNodeIntUniform.xml:35
+#: doc/classes/VisualShaderNodeFloatUniform.xml:41
+#: doc/classes/VisualShaderNodeIntUniform.xml:41
msgid ""
"A range hint for scalar value with step, which limits possible input values "
"between [member min] and [member max], with a step (increment) of [member "
@@ -57777,6 +58722,26 @@ msgid ""
"results, e.g. division by zero)."
msgstr ""
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:4
+msgid "Performs a fused multiply-add operation within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:7
+msgid "Uses three operands to compute [code](a * b + c)[/code] expression."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:15
+msgid "A type of operands and returned value."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:20
+msgid "A scalar type."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:23
+msgid "A vector type."
+msgstr ""
+
#: doc/classes/VisualShaderNodeOuterProduct.xml:4
msgid ""
"Calculates an outer product of two vectors within the visual shader graph."
@@ -57799,7 +58764,7 @@ msgstr ""
#: doc/classes/VisualShaderNodeOutput.xml:7
msgid ""
"This visual shader node is present in all shader graphs in form of \"Output"
-"\" block with mutliple output value ports."
+"\" block with multiple output value ports."
msgstr ""
#: doc/classes/VisualShaderNodeSample3D.xml:4
@@ -58166,6 +59131,20 @@ msgid ""
"[ShaderMaterial] properties."
msgstr ""
+#: doc/classes/VisualShaderNodeUniformRef.xml:4
+msgid "A reference to an existing [VisualShaderNodeUniform]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniformRef.xml:7
+msgid ""
+"Creating a reference to a [VisualShaderNodeUniform] allows you to reuse this "
+"uniform in different shaders or shader stages easily."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniformRef.xml:15
+msgid "The name of the uniform which this reference points to."
+msgstr ""
+
#: doc/classes/VisualShaderNodeVec3Constant.xml:4
msgid "A [Vector3] constant to be used within the visual shader graph."
msgstr ""
@@ -58263,7 +59242,7 @@ msgstr ""
#: doc/classes/VisualShaderNodeVectorFunc.xml:26
msgid "Returns the opposite value of the parameter."
-msgstr ""
+msgstr "Renvoie la valeur opposée du paramètre."
#: doc/classes/VisualShaderNodeVectorFunc.xml:29
#, fuzzy
@@ -58272,101 +59251,97 @@ msgstr "Retourne [code]true[/code] (vrai) si la chaîne de caractères est vide.
#: doc/classes/VisualShaderNodeVectorFunc.xml:32
msgid "Converts RGB vector to HSV equivalent."
-msgstr ""
+msgstr "Convertit le vecteur RGB en équivalent HSV."
#: doc/classes/VisualShaderNodeVectorFunc.xml:35
msgid "Converts HSV vector to RGB equivalent."
-msgstr ""
+msgstr "Convertit le vecteur HSV en équivalent RGB."
#: doc/classes/VisualShaderNodeVectorFunc.xml:38
msgid "Returns the absolute value of the parameter."
-msgstr ""
+msgstr "Renvoie la valeur absolue du paramètre."
#: doc/classes/VisualShaderNodeVectorFunc.xml:41
-#, fuzzy
msgid "Returns the arc-cosine of the parameter."
-msgstr "Retourne la chaîne de caractères convertie en minuscules."
+msgstr "Renvoie l'arc cosinus du paramètre."
#: doc/classes/VisualShaderNodeVectorFunc.xml:44
msgid "Returns the inverse hyperbolic cosine of the parameter."
-msgstr ""
+msgstr "Renvoie le cosinus hyperbolique inverse du paramètre."
#: doc/classes/VisualShaderNodeVectorFunc.xml:47
-#, fuzzy
msgid "Returns the arc-sine of the parameter."
-msgstr "Retourne la chaîne de caractères convertie en majuscules."
+msgstr "Renvoie l'arc sinus du paramètre."
#: doc/classes/VisualShaderNodeVectorFunc.xml:50
msgid "Returns the inverse hyperbolic sine of the parameter."
-msgstr ""
+msgstr "Renvoie le sinus hyperbolique inverse du paramètre."
#: doc/classes/VisualShaderNodeVectorFunc.xml:53
-#, fuzzy
msgid "Returns the arc-tangent of the parameter."
-msgstr "Retourne la chaîne de caractères convertie en minuscules."
+msgstr "Renvoie l'arc tangente du paramètre."
#: doc/classes/VisualShaderNodeVectorFunc.xml:56
msgid "Returns the inverse hyperbolic tangent of the parameter."
-msgstr ""
+msgstr "Renvoie la tangente hyperbolique inverse du paramètre."
#: doc/classes/VisualShaderNodeVectorFunc.xml:59
msgid ""
"Finds the nearest integer that is greater than or equal to the parameter."
msgstr ""
+"Recherche l'entier le plus proche qui est supérieur ou égal au paramètre."
#: doc/classes/VisualShaderNodeVectorFunc.xml:62
-#, fuzzy
msgid "Returns the cosine of the parameter."
-msgstr "Retourne la chaîne de caractères convertie en majuscules."
+msgstr "Renvoie le cosinus du paramètre."
#: doc/classes/VisualShaderNodeVectorFunc.xml:65
-#, fuzzy
msgid "Returns the hyperbolic cosine of the parameter."
-msgstr "Retourne la chaîne de caractères convertie en minuscules."
+msgstr "Renvoie le cosinus hyperbolique du paramètre."
#: doc/classes/VisualShaderNodeVectorFunc.xml:68
msgid "Converts a quantity in radians to degrees."
-msgstr ""
+msgstr "Convertit une quantité en radians en degrés."
#: doc/classes/VisualShaderNodeVectorFunc.xml:71
msgid "Base-e Exponential."
-msgstr ""
+msgstr "Exponentiel en base e."
#: doc/classes/VisualShaderNodeVectorFunc.xml:74
msgid "Base-2 Exponential."
-msgstr ""
+msgstr "Exponentiel en base 2."
#: doc/classes/VisualShaderNodeVectorFunc.xml:77
msgid "Finds the nearest integer less than or equal to the parameter."
-msgstr ""
+msgstr "Recherche l'entier le plus proche inférieur ou égal au paramètre."
#: doc/classes/VisualShaderNodeVectorFunc.xml:80
msgid "Computes the fractional part of the argument."
-msgstr ""
+msgstr "Calcule la partie décimale de l'argument."
#: doc/classes/VisualShaderNodeVectorFunc.xml:83
msgid "Returns the inverse of the square root of the parameter."
-msgstr ""
+msgstr "Renvoie l'inverse de la racine carrée du paramètre."
#: doc/classes/VisualShaderNodeVectorFunc.xml:86
msgid "Natural logarithm."
-msgstr ""
+msgstr "Logarithme naturel."
#: doc/classes/VisualShaderNodeVectorFunc.xml:89
msgid "Base-2 logarithm."
-msgstr ""
+msgstr "Logarithme base-2."
#: doc/classes/VisualShaderNodeVectorFunc.xml:92
msgid "Converts a quantity in degrees to radians."
-msgstr ""
+msgstr "Convertit une quantité de degrés en radians."
#: doc/classes/VisualShaderNodeVectorFunc.xml:95
msgid "Finds the nearest integer to the parameter."
-msgstr ""
+msgstr "Renvoie l'entier le plus proche du paramètre."
#: doc/classes/VisualShaderNodeVectorFunc.xml:98
msgid "Finds the nearest even integer to the parameter."
-msgstr ""
+msgstr "Renvoie l'entier pair le plus proche du paramètre."
#: doc/classes/VisualShaderNodeVectorFunc.xml:101
msgid ""
@@ -58376,27 +59351,24 @@ msgid ""
msgstr ""
#: doc/classes/VisualShaderNodeVectorFunc.xml:104
-#, fuzzy
msgid "Returns the sine of the parameter."
-msgstr "Retourne la chaîne de caractères convertie en majuscules."
+msgstr "Renvoie le sinus du paramètre."
#: doc/classes/VisualShaderNodeVectorFunc.xml:107
msgid "Returns the hyperbolic sine of the parameter."
-msgstr ""
+msgstr "Renvoie le sinus hyperbolique du paramètre."
#: doc/classes/VisualShaderNodeVectorFunc.xml:110
-#, fuzzy
msgid "Returns the square root of the parameter."
-msgstr "Retourne la chaîne de caractères convertie en minuscules."
+msgstr "Renvoie la racine carrée du paramètre."
#: doc/classes/VisualShaderNodeVectorFunc.xml:113
-#, fuzzy
msgid "Returns the tangent of the parameter."
-msgstr "Retourne la chaîne de caractères convertie en minuscules."
+msgstr "Renvoie la tangente du paramètre."
#: doc/classes/VisualShaderNodeVectorFunc.xml:116
msgid "Returns the hyperbolic tangent of the parameter."
-msgstr ""
+msgstr "Renvoie la tangente hyperbolique du paramètre."
#: doc/classes/VisualShaderNodeVectorFunc.xml:119
msgid ""
@@ -58457,12 +59429,11 @@ msgstr ""
#: doc/classes/VisualShaderNodeVectorOp.xml:29
msgid "Divides vector by vector."
-msgstr ""
+msgstr "Divise un vecteur par un vecteur."
#: doc/classes/VisualShaderNodeVectorOp.xml:32
-#, fuzzy
msgid "Returns the remainder of the two vectors."
-msgstr "Retourne la chaîne de caractères convertie en minuscules."
+msgstr "Renvoie le reste de deux vecteurs."
#: doc/classes/VisualShaderNodeVectorOp.xml:35
msgid ""
@@ -58480,11 +59451,11 @@ msgstr ""
#: doc/classes/VisualShaderNodeVectorOp.xml:44
msgid "Calculates the cross product of two vectors."
-msgstr ""
+msgstr "Calcule le produit vectoriel de deux vecteurs."
#: doc/classes/VisualShaderNodeVectorOp.xml:47
msgid "Returns the arc-tangent of the parameters."
-msgstr ""
+msgstr "Renvoie l'arc tangente des paramètres."
#: doc/classes/VisualShaderNodeVectorOp.xml:50
msgid ""
@@ -58511,7 +59482,7 @@ msgstr ""
msgid ""
"Translated to [code]refract(I, N, eta)[/code] in the shader language, where "
"[code]I[/code] is the incident vector, [code]N[/code] is the normal vector "
-"and [code]eta[/code] is the ratio of the indicies of the refraction."
+"and [code]eta[/code] is the ratio of the indices of the refraction."
msgstr ""
#: doc/classes/VisualShaderNodeVectorScalarMix.xml:4
@@ -60304,3 +61275,28 @@ msgid ""
msgstr ""
"Si [code]true[/code] (vrai), les nœuds enfants sont triés, sinon le tri est "
"désactivé."
+
+#~ msgid ""
+#~ "Returns [code]true[/code] if [code]a[/code] and [code]b[/code] are "
+#~ "approximately equal to each other."
+#~ msgstr ""
+#~ "Renvoie [code]true[/code] (vrai) si [code]a[/code] et [code]b[/code] sont "
+#~ "approximativement égaux l'un à l'autre."
+
+#~ msgid ""
+#~ "Finds the last occurrence of a substring. Returns the starting position "
+#~ "of the substring or [code]-1[/code] if not found."
+#~ msgstr ""
+#~ "Trouve la dernière occurrence d'une sous-chaîne de caractère. Retourne la "
+#~ "position de départ de la sous-chaîne de caractères ou [code]-1[/code] si "
+#~ "non trouvée."
+
+#~ msgid ""
+#~ "Finds the first occurrence of a substring, ignoring case. Returns the "
+#~ "starting position of the substring or [code]-1[/code] if not found. "
+#~ "Optionally, the initial search index can be passed."
+#~ msgstr ""
+#~ "Trouve la première occurence d'une sous-chaîne de caractères. Retourne la "
+#~ "position de départ de la sous-chaîne de caractères ou [code]-1[/code] si "
+#~ "non trouvée. Optionnellement, l'index de recherche initial peut être "
+#~ "passé (en tant qu'argument) ."
diff --git a/doc/translations/id.po b/doc/translations/id.po
index c29860092b..246cf15495 100644
--- a/doc/translations/id.po
+++ b/doc/translations/id.po
@@ -114,9 +114,10 @@ msgstr ""
"dalam [Color]."
#: modules/gdscript/doc_classes/@GDScript.xml:55
+#, fuzzy
msgid ""
-"Returns the absolute value of parameter [code]s[/code] (i.e. unsigned value, "
-"works for integer and float).\n"
+"Returns the absolute value of parameter [code]s[/code] (i.e. positive "
+"value).\n"
"[codeblock]\n"
"# a is 1\n"
"a = abs(-1)\n"
@@ -177,7 +178,7 @@ msgid ""
"angle from an angle's tangent in trigonometry: [code]atan(tan(angle)) == "
"angle[/code].\n"
"The method cannot know in which quadrant the angle should fall. See [method "
-"atan2] if you always want an exact angle.\n"
+"atan2] if you have both [code]y[/code] and [code]x[/code].\n"
"[codeblock]\n"
"a = atan(0.5) # a is 0.463648\n"
"[/codeblock]"
@@ -188,12 +189,13 @@ msgid ""
"Returns the arc tangent of [code]y/x[/code] in radians. Use to get the angle "
"of tangent [code]y/x[/code]. To compute the value, the method takes into "
"account the sign of both arguments in order to determine the quadrant.\n"
+"Important note: The Y coordinate comes first, by convention.\n"
"[codeblock]\n"
"a = atan2(0, -1) # a is 3.141593\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:143
+#: modules/gdscript/doc_classes/@GDScript.xml:144
msgid ""
"Decodes a byte array back to a value. When [code]allow_objects[/code] is "
"[code]true[/code] decoding objects is allowed.\n"
@@ -202,7 +204,7 @@ msgid ""
"avoid potential security threats (remote code execution)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:155
+#: modules/gdscript/doc_classes/@GDScript.xml:156
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:145
msgid ""
"Converts a 2D point expressed in the cartesian coordinate system (X and Y "
@@ -210,17 +212,17 @@ msgid ""
"angle)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:164
+#: modules/gdscript/doc_classes/@GDScript.xml:165
msgid ""
-"Rounds [code]s[/code] upward, returning the smallest integral value that is "
-"not less than [code]s[/code].\n"
+"Rounds [code]s[/code] upward (towards positive infinity), returning the "
+"smallest whole number that is not less than [code]s[/code].\n"
"[codeblock]\n"
"i = ceil(1.45) # i is 2\n"
"i = ceil(1.001) # i is 2\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:177
+#: modules/gdscript/doc_classes/@GDScript.xml:178
msgid ""
"Returns a character as a String of the given Unicode code point (which is "
"compatible with ASCII code).\n"
@@ -232,7 +234,7 @@ msgid ""
"This is the inverse of [method ord]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:196
+#: modules/gdscript/doc_classes/@GDScript.xml:197
msgid ""
"Clamps [code]value[/code] and returns a value not less than [code]min[/code] "
"and not more than [code]max[/code].\n"
@@ -247,7 +249,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:216
+#: modules/gdscript/doc_classes/@GDScript.xml:217
msgid ""
"Converts from a type to another in the best way possible. The [code]type[/"
"code] parameter uses the [enum Variant.Type] values.\n"
@@ -261,7 +263,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:233
+#: modules/gdscript/doc_classes/@GDScript.xml:234
msgid ""
"Returns the cosine of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -271,7 +273,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:247
+#: modules/gdscript/doc_classes/@GDScript.xml:248
msgid ""
"Returns the hyperbolic cosine of [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -280,11 +282,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:260
+#: modules/gdscript/doc_classes/@GDScript.xml:261
msgid "Converts from decibels to linear energy (audio)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:273
+#: modules/gdscript/doc_classes/@GDScript.xml:274
msgid ""
"Returns the result of [code]value[/code] decreased by [code]step[/code] * "
"[code]amount[/code].\n"
@@ -294,42 +296,44 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:286
+#: modules/gdscript/doc_classes/@GDScript.xml:287
msgid ""
-"Returns degrees converted to radians.\n"
+"Converts an angle expressed in degrees to radians.\n"
"[codeblock]\n"
"# r is 3.141593\n"
"r = deg2rad(180)\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:299
+#: modules/gdscript/doc_classes/@GDScript.xml:300
msgid ""
"Converts a previously converted instance to a dictionary, back into an "
"instance. Useful for deserializing."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:310
-#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:90
+#: modules/gdscript/doc_classes/@GDScript.xml:311
msgid ""
-"Easing function, based on exponent. 0 is constant, 1 is linear, 0 to 1 is "
-"ease-in, 1+ is ease out. Negative values are in-out/out in."
+"Easing function, based on exponent. The curve values are: 0 is constant, 1 "
+"is linear, 0 to 1 is ease-in, 1+ is ease out. Negative values are in-out/out "
+"in."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:319
+#: modules/gdscript/doc_classes/@GDScript.xml:320
msgid ""
"The natural exponential function. It raises the mathematical constant [b]e[/"
"b] to the power of [code]s[/code] and returns it.\n"
-"[b]e[/b] has an approximate value of 2.71828.\n"
+"[b]e[/b] has an approximate value of 2.71828, and can be obtained with "
+"[code]exp(1)[/code].\n"
"For exponents to other bases use the method [method pow].\n"
"[codeblock]\n"
"a = exp(2) # Approximately 7.39\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:333
+#: modules/gdscript/doc_classes/@GDScript.xml:334
msgid ""
-"Rounds [code]s[/code] to the closest smaller integer and returns it.\n"
+"Rounds [code]s[/code] downward (towards negative infinity), returning the "
+"largest whole number that is not more than [code]s[/code].\n"
"[codeblock]\n"
"# a is 2.0\n"
"a = floor(2.99)\n"
@@ -340,7 +344,7 @@ msgid ""
"use [code]int(s)[/code] directly."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:351
+#: modules/gdscript/doc_classes/@GDScript.xml:352
msgid ""
"Returns the floating-point remainder of [code]a/b[/code], keeping the sign "
"of [code]a[/code].\n"
@@ -351,7 +355,7 @@ msgid ""
"For the integer remainder operation, use the % operator."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:367
+#: modules/gdscript/doc_classes/@GDScript.xml:368
msgid ""
"Returns the floating-point modulus of [code]a/b[/code] that wraps equally in "
"positive and negative.\n"
@@ -377,7 +381,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:398
+#: modules/gdscript/doc_classes/@GDScript.xml:399
msgid ""
"Returns a reference to the specified function [code]funcname[/code] in the "
"[code]instance[/code] node. As functions aren't first-class objects in "
@@ -392,7 +396,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:412
+#: modules/gdscript/doc_classes/@GDScript.xml:413
msgid ""
"Returns an array of dictionaries representing the current call stack.\n"
"[codeblock]\n"
@@ -412,7 +416,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:435
+#: modules/gdscript/doc_classes/@GDScript.xml:436
msgid ""
"Returns the integer hash of the variable passed.\n"
"[codeblock]\n"
@@ -420,7 +424,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:447
+#: modules/gdscript/doc_classes/@GDScript.xml:448
msgid ""
"Returns the passed instance converted to a dictionary (useful for "
"serializing).\n"
@@ -438,7 +442,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:468
+#: modules/gdscript/doc_classes/@GDScript.xml:469
msgid ""
"Returns the Object that corresponds to [code]instance_id[/code]. All Objects "
"have a unique instance ID.\n"
@@ -451,7 +455,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:488
+#: modules/gdscript/doc_classes/@GDScript.xml:489
msgid ""
"Returns a normalized value considering the given range. This is the opposite "
"of [method lerp].\n"
@@ -465,33 +469,41 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:506
+#: modules/gdscript/doc_classes/@GDScript.xml:507
msgid ""
"Returns [code]true[/code] if [code]a[/code] and [code]b[/code] are "
-"approximately equal to each other."
+"approximately equal to each other.\n"
+"Here, approximately equal means that [code]a[/code] and [code]b[/code] are "
+"within a small internal epsilon of each other, which scales with the "
+"magnitude of the numbers.\n"
+"Infinity values of the same sign are considered equal."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:515
+#: modules/gdscript/doc_classes/@GDScript.xml:518
msgid ""
"Returns whether [code]s[/code] is an infinity value (either positive "
"infinity or negative infinity)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:524
+#: modules/gdscript/doc_classes/@GDScript.xml:527
msgid ""
"Returns whether [code]instance[/code] is a valid object (e.g. has not been "
"deleted from memory)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:533
-msgid "Returns whether [code]s[/code] is a NaN (Not-A-Number) value."
+#: modules/gdscript/doc_classes/@GDScript.xml:536
+msgid ""
+"Returns whether [code]s[/code] is a NaN (\"Not a Number\" or invalid) value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:542
-msgid "Returns [code]true[/code] if [code]s[/code] is zero or almost zero."
+#: modules/gdscript/doc_classes/@GDScript.xml:545
+msgid ""
+"Returns [code]true[/code] if [code]s[/code] is zero or almost zero.\n"
+"This method is faster than using [method is_equal_approx] with one value as "
+"zero."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:551
+#: modules/gdscript/doc_classes/@GDScript.xml:555
msgid ""
"Returns length of Variant [code]var[/code]. Length is the character count of "
"String, element count of Array, size of Dictionary, etc.\n"
@@ -502,7 +514,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:569
+#: modules/gdscript/doc_classes/@GDScript.xml:573
msgid ""
"Linearly interpolates between two values by a normalized value. This is the "
"opposite of [method inverse_lerp].\n"
@@ -517,7 +529,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:588
+#: modules/gdscript/doc_classes/@GDScript.xml:592
msgid ""
"Linearly interpolates between two angles (in radians) by a normalized "
"value.\n"
@@ -534,7 +546,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:607
+#: modules/gdscript/doc_classes/@GDScript.xml:611
msgid ""
"Converts from linear energy to decibels (audio). This can be used to "
"implement volume sliders that behave as expected (since volume isn't "
@@ -550,20 +562,28 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:622
+#: modules/gdscript/doc_classes/@GDScript.xml:626
msgid ""
-"Loads a resource from the filesystem located at [code]path[/code].\n"
+"Loads a resource from the filesystem located at [code]path[/code]. The "
+"resource is loaded on the method call (unless it's referenced already "
+"elsewhere, e.g. in another script or in the scene), which might cause slight "
+"delay, especially when loading scenes. To avoid unnecessary delays when "
+"loading something multiple times, either store the resource in a variable or "
+"use [method preload].\n"
"[b]Note:[/b] Resource paths can be obtained by right-clicking on a resource "
-"in the FileSystem dock and choosing [b]Copy Path[/b].\n"
+"in the FileSystem dock and choosing \"Copy Path\" or by dragging the file "
+"from the FileSystem dock into the script.\n"
"[codeblock]\n"
-"# Load a scene called main located in the root of the project directory.\n"
-"var main = load(\"res://main.tscn\")\n"
+"# Load a scene called main located in the root of the project directory and "
+"cache it in a variable.\n"
+"var main = load(\"res://main.tscn\") # main will contain a PackedScene "
+"resource.\n"
"[/codeblock]\n"
"[b]Important:[/b] The path must be absolute, a local path will just return "
"[code]null[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:637
+#: modules/gdscript/doc_classes/@GDScript.xml:641
msgid ""
"Natural logarithm. The amount of time needed to reach a certain level of "
"continuous growth.\n"
@@ -571,10 +591,12 @@ msgid ""
"calculators, which uses a base 10 logarithm.\n"
"[codeblock]\n"
"log(10) # Returns 2.302585\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] The logarithm of [code]0[/code] returns [code]-inf[/code], "
+"while negative values return [code]-nan[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:652
+#: modules/gdscript/doc_classes/@GDScript.xml:657
msgid ""
"Returns the maximum of two values.\n"
"[codeblock]\n"
@@ -583,7 +605,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:667
+#: modules/gdscript/doc_classes/@GDScript.xml:672
msgid ""
"Returns the minimum of two values.\n"
"[codeblock]\n"
@@ -592,27 +614,39 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:684
+#: modules/gdscript/doc_classes/@GDScript.xml:689
msgid ""
"Moves [code]from[/code] toward [code]to[/code] by the [code]delta[/code] "
"value.\n"
"Use a negative [code]delta[/code] value to move away.\n"
"[codeblock]\n"
+"move_toward(5, 10, 4) # Returns 9\n"
"move_toward(10, 5, 4) # Returns 6\n"
+"move_toward(10, 5, -1.5) # Returns 11.5\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:697
+#: modules/gdscript/doc_classes/@GDScript.xml:704
msgid ""
-"Returns the nearest larger power of 2 for integer [code]value[/code].\n"
+"Returns the nearest equal or larger power of 2 for integer [code]value[/"
+"code].\n"
+"In other words, returns the smallest value [code]a[/code] where [code]a = "
+"pow(2, n)[/code] such that [code]value <= a[/code] for some non-negative "
+"integer [code]n[/code].\n"
"[codeblock]\n"
"nearest_po2(3) # Returns 4\n"
"nearest_po2(4) # Returns 4\n"
"nearest_po2(5) # Returns 8\n"
-"[/codeblock]"
+"\n"
+"nearest_po2(0) # Returns 0 (this may not be what you expect)\n"
+"nearest_po2(-1) # Returns 0 (this may not be what you expect)\n"
+"[/codeblock]\n"
+"[b]WARNING:[/b] Due to the way it is implemented, this function returns "
+"[code]0[/code] rather than [code]1[/code] for non-positive values of "
+"[code]value[/code] (in reality, 1 is the smallest integer power of 2)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:711
+#: modules/gdscript/doc_classes/@GDScript.xml:723
msgid ""
"Returns an integer representing the Unicode code point of the given Unicode "
"character [code]char[/code].\n"
@@ -624,27 +658,28 @@ msgid ""
"This is the inverse of [method char]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:726
+#: modules/gdscript/doc_classes/@GDScript.xml:738
msgid ""
-"Parse JSON text to a Variant (use [method typeof] to check if it is what you "
-"expect).\n"
-"Be aware that the JSON specification does not define integer or float types, "
-"but only a number type. Therefore, parsing a JSON text will convert all "
-"numerical values to [float] types.\n"
-"Note that JSON objects do not preserve key order like Godot dictionaries, "
-"thus you should not rely on keys being in a certain order if a dictionary is "
-"constructed from JSON. In contrast, JSON arrays retain the order of their "
+"Parse JSON text to a Variant. (Use [method typeof] to check if the Variant's "
+"type is what you expect.)\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, parsing a JSON text will convert "
+"all numerical values to [float] types.\n"
+"[b]Note:[/b] JSON objects do not preserve key order like Godot dictionaries, "
+"thus, you should not rely on keys being in a certain order if a dictionary "
+"is constructed from JSON. In contrast, JSON arrays retain the order of their "
"elements:\n"
"[codeblock]\n"
-"p = parse_json('[\"a\", \"b\", \"c\"]')\n"
-"if typeof(p) == TYPE_ARRAY:\n"
-" print(p[0]) # Prints a\n"
+"var p = JSON.parse('[\"hello\", \"world\", \"!\"]')\n"
+"if typeof(p.result) == TYPE_ARRAY:\n"
+" print(p.result[0]) # Prints \"hello\"\n"
"else:\n"
-" print(\"unexpected results\")\n"
-"[/codeblock]"
+" push_error(\"Unexpected results.\")\n"
+"[/codeblock]\n"
+"See also [JSON] for an alternative way to parse JSON text."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:746
+#: modules/gdscript/doc_classes/@GDScript.xml:759
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:142
msgid ""
"Converts a 2D point expressed in the polar coordinate system (a distance "
@@ -652,7 +687,7 @@ msgid ""
"cartesian coordinate system (X and Y axis)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:757
+#: modules/gdscript/doc_classes/@GDScript.xml:770
msgid ""
"Returns the integer modulus of [code]a/b[/code] that wraps equally in "
"positive and negative.\n"
@@ -678,7 +713,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:788
+#: modules/gdscript/doc_classes/@GDScript.xml:801
msgid ""
"Returns the result of [code]x[/code] raised to the power of [code]y[/code].\n"
"[codeblock]\n"
@@ -686,19 +721,23 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:800
+#: modules/gdscript/doc_classes/@GDScript.xml:813
msgid ""
-"Returns a resource from the filesystem that is loaded during script "
-"parsing.\n"
+"Returns a [Resource] from the filesystem located at [code]path[/code]. The "
+"resource is loaded during script parsing, i.e. is loaded with the script and "
+"[method preload] effectively acts as a reference to that resource. Note that "
+"the method requires a constant path. If you want to load a resource from a "
+"dynamic/variable path, use [method load].\n"
"[b]Note:[/b] Resource paths can be obtained by right clicking on a resource "
-"in the Assets Panel and choosing \"Copy Path\".\n"
+"in the Assets Panel and choosing \"Copy Path\" or by dragging the file from "
+"the FileSystem dock into the script.\n"
"[codeblock]\n"
-"# Load a scene called main located in the root of the project directory.\n"
-"var main = preload(\"res://main.tscn\")\n"
+"# Instance a scene.\n"
+"var diamond = preload(\"res://diamond.tscn\").instance()\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:812
+#: modules/gdscript/doc_classes/@GDScript.xml:825
msgid ""
"Converts one or more arguments to strings in the best way possible and "
"prints them to the console.\n"
@@ -708,11 +747,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:823
+#: modules/gdscript/doc_classes/@GDScript.xml:836
msgid "Like [method print], but prints only when used in debug mode."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:830
+#: modules/gdscript/doc_classes/@GDScript.xml:843
msgid ""
"Prints a stack track at code location, only works when running with debugger "
"turned on.\n"
@@ -722,7 +761,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:841
+#: modules/gdscript/doc_classes/@GDScript.xml:854
msgid ""
"Prints one or more arguments to strings in the best way possible to standard "
"error line.\n"
@@ -731,7 +770,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:851
+#: modules/gdscript/doc_classes/@GDScript.xml:864
msgid ""
"Prints one or more arguments to strings in the best way possible to console. "
"No newline is added at the end.\n"
@@ -745,7 +784,7 @@ msgid ""
"method, such as [method print]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:864
+#: modules/gdscript/doc_classes/@GDScript.xml:877
msgid ""
"Prints one or more arguments to the console with a space between each "
"argument.\n"
@@ -754,7 +793,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:874
+#: modules/gdscript/doc_classes/@GDScript.xml:887
msgid ""
"Prints one or more arguments to the console with a tab between each "
"argument.\n"
@@ -763,7 +802,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:886
+#: modules/gdscript/doc_classes/@GDScript.xml:899
msgid ""
"Pushes an error message to Godot's built-in debugger and to the OS "
"terminal.\n"
@@ -773,7 +812,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:898
+#: modules/gdscript/doc_classes/@GDScript.xml:911
msgid ""
"Pushes a warning message to Godot's built-in debugger and to the OS "
"terminal.\n"
@@ -783,15 +822,15 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:910
+#: modules/gdscript/doc_classes/@GDScript.xml:923
msgid ""
-"Converts from radians to degrees.\n"
+"Converts an angle expressed in radians to degrees.\n"
"[codeblock]\n"
"rad2deg(0.523599) # Returns 30\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:924
+#: modules/gdscript/doc_classes/@GDScript.xml:937
msgid ""
"Random range, any floating point value between [code]from[/code] and "
"[code]to[/code].\n"
@@ -800,7 +839,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:936
+#: modules/gdscript/doc_classes/@GDScript.xml:949
msgid ""
"Random from seed: pass a [code]seed[/code], and an array with both number "
"and new seed is returned. \"Seed\" here refers to the internal state of the "
@@ -808,7 +847,7 @@ msgid ""
"implementation is 64 bits."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:943
+#: modules/gdscript/doc_classes/@GDScript.xml:956
msgid ""
"Returns a random floating point value on the interval [code][0, 1][/code].\n"
"[codeblock]\n"
@@ -816,7 +855,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:953
+#: modules/gdscript/doc_classes/@GDScript.xml:966
msgid ""
"Returns a random unsigned 32 bit integer. Use remainder to obtain a random "
"value in the interval [code][0, N - 1][/code] (where N is smaller than "
@@ -829,7 +868,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:966
+#: modules/gdscript/doc_classes/@GDScript.xml:979
msgid ""
"Randomizes the seed (or the internal state) of the random number generator. "
"Current implementation reseeds using a number based on time.\n"
@@ -839,7 +878,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:977
+#: modules/gdscript/doc_classes/@GDScript.xml:990
msgid ""
"Returns an array with the given range. Range can be 1 argument N (0 to N-1), "
"two arguments (initial, final-1) or three arguments (initial, final-1, "
@@ -869,7 +908,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1017
+#: modules/gdscript/doc_classes/@GDScript.xml:1030
msgid ""
"Maps a [code]value[/code] from range [code][istart, istop][/code] to [code]"
"[ostart, ostop][/code].\n"
@@ -878,16 +917,16 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1029
+#: modules/gdscript/doc_classes/@GDScript.xml:1042
msgid ""
-"Returns the integral value that is nearest to [code]s[/code], with halfway "
-"cases rounded away from zero.\n"
+"Rounds [code]s[/code] to the nearest whole number, with halfway cases "
+"rounded away from zero.\n"
"[codeblock]\n"
"round(2.6) # Returns 3\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1041
+#: modules/gdscript/doc_classes/@GDScript.xml:1054
msgid ""
"Sets seed for the random number generator.\n"
"[codeblock]\n"
@@ -896,7 +935,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1054
+#: modules/gdscript/doc_classes/@GDScript.xml:1067
msgid ""
"Returns the sign of [code]s[/code]: -1 or 1. Returns 0 if [code]s[/code] is "
"0.\n"
@@ -907,7 +946,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1068
+#: modules/gdscript/doc_classes/@GDScript.xml:1081
msgid ""
"Returns the sine of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -915,7 +954,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1080
+#: modules/gdscript/doc_classes/@GDScript.xml:1093
msgid ""
"Returns the hyperbolic sine of [code]s[/code].\n"
"[codeblock]\n"
@@ -924,27 +963,37 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1097
+#: modules/gdscript/doc_classes/@GDScript.xml:1110
msgid ""
-"Returns a number smoothly interpolated between the [code]from[/code] and "
-"[code]to[/code], based on the [code]weight[/code]. Similar to [method lerp], "
-"but interpolates faster at the beginning and slower at the end.\n"
+"Returns the result of smoothly interpolating the value of [code]s[/code] "
+"between [code]0[/code] and [code]1[/code], based on the where [code]s[/code] "
+"lies with respect to the edges [code]from[/code] and [code]to[/code].\n"
+"The return value is [code]0[/code] if [code]s <= from[/code], and [code]1[/"
+"code] if [code]s >= to[/code]. If [code]s[/code] lies between [code]from[/"
+"code] and [code]to[/code], the returned value follows an S-shaped curve that "
+"maps [code]s[/code] between [code]0[/code] and [code]1[/code].\n"
+"This S-shaped curve is the cubic Hermite interpolator, given by [code]f(s) = "
+"3*s^2 - 2*s^3[/code].\n"
"[codeblock]\n"
-"smoothstep(0, 2, 0.5) # Returns 0.15\n"
+"smoothstep(0, 2, -5.0) # Returns 0.0\n"
+"smoothstep(0, 2, 0.5) # Returns 0.15625\n"
"smoothstep(0, 2, 1.0) # Returns 0.5\n"
"smoothstep(0, 2, 2.0) # Returns 1.0\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1111
+#: modules/gdscript/doc_classes/@GDScript.xml:1127
msgid ""
-"Returns the square root of [code]s[/code].\n"
+"Returns the square root of [code]s[/code], where [code]s[/code] is a non-"
+"negative number.\n"
"[codeblock]\n"
"sqrt(9) # Returns 3\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b]Negative values of [code]s[/code] return NaN. If you need "
+"negative inputs, use [code]System.Numerics.Complex[/code] in C#."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1123
+#: modules/gdscript/doc_classes/@GDScript.xml:1140
msgid ""
"Returns the position of the first non-zero digit, after the decimal point. "
"Note that the maximum return value is 10, which is a design decision in the "
@@ -959,7 +1008,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1142
+#: modules/gdscript/doc_classes/@GDScript.xml:1159
msgid ""
"Snaps float value [code]s[/code] to a given [code]step[/code]. This can also "
"be used to round a floating point number to an arbitrary number of "
@@ -970,7 +1019,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1153
+#: modules/gdscript/doc_classes/@GDScript.xml:1170
msgid ""
"Converts one or more arguments to string in the best way possible.\n"
"[codeblock]\n"
@@ -981,7 +1030,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1168
+#: modules/gdscript/doc_classes/@GDScript.xml:1185
msgid ""
"Converts a formatted string that was returned by [method var2str] to the "
"original value.\n"
@@ -992,7 +1041,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1182
+#: modules/gdscript/doc_classes/@GDScript.xml:1199
msgid ""
"Returns the tangent of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -1000,7 +1049,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1194
+#: modules/gdscript/doc_classes/@GDScript.xml:1211
msgid ""
"Returns the hyperbolic tangent of [code]s[/code].\n"
"[codeblock]\n"
@@ -1009,18 +1058,25 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1207
+#: modules/gdscript/doc_classes/@GDScript.xml:1224
msgid ""
-"Converts a Variant [code]var[/code] to JSON text and return the result. "
+"Converts a [Variant] [code]var[/code] to JSON text and return the result. "
"Useful for serializing data to store or send over the network.\n"
"[codeblock]\n"
+"# Both numbers below are integers.\n"
"a = { \"a\": 1, \"b\": 2 }\n"
"b = to_json(a)\n"
"print(b) # {\"a\":1, \"b\":2}\n"
-"[/codeblock]"
+"# Both numbers above are floats, even if they display without any decimal "
+"places.\n"
+"[/codeblock]\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, converting a [Variant] to JSON "
+"text will convert all numerical values to [float] types.\n"
+"See also [JSON] for an alternative way to convert a [Variant] to JSON text."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1221
+#: modules/gdscript/doc_classes/@GDScript.xml:1242
msgid ""
"Returns whether the given class exists in [ClassDB].\n"
"[codeblock]\n"
@@ -1029,7 +1085,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1234
+#: modules/gdscript/doc_classes/@GDScript.xml:1255
msgid ""
"Returns the internal type of the given Variant object, using the [enum "
"Variant.Type] values.\n"
@@ -1042,7 +1098,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1250
+#: modules/gdscript/doc_classes/@GDScript.xml:1271
msgid ""
"Checks that [code]json[/code] is valid JSON data. Returns an empty string if "
"valid, or an error message otherwise.\n"
@@ -1050,20 +1106,20 @@ msgid ""
"j = to_json([1, 2, 3])\n"
"v = validate_json(j)\n"
"if not v:\n"
-" print(\"valid\")\n"
+" print(\"Valid JSON.\")\n"
"else:\n"
-" prints(\"invalid\", v)\n"
+" push_error(\"Invalid JSON: \" + v)\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1269
+#: modules/gdscript/doc_classes/@GDScript.xml:1290
msgid ""
"Encodes a variable value to a byte array. When [code]full_objects[/code] is "
"[code]true[/code] encoding objects is allowed (and can potentially include "
"code)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1278
+#: modules/gdscript/doc_classes/@GDScript.xml:1299
msgid ""
"Converts a Variant [code]var[/code] to a formatted string that can later be "
"parsed using [method str2var].\n"
@@ -1080,7 +1136,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1298
+#: modules/gdscript/doc_classes/@GDScript.xml:1319
msgid ""
"Returns a weak reference to an object.\n"
"A weak reference to an object is not enough to keep the object alive: when "
@@ -1090,135 +1146,67 @@ msgid ""
"reference may return the object even if there are no strong references to it."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1312
+#: modules/gdscript/doc_classes/@GDScript.xml:1333
msgid ""
"Wraps float [code]value[/code] between [code]min[/code] and [code]max[/"
"code].\n"
"Usable for creating loop-alike behavior or infinite surfaces.\n"
"[codeblock]\n"
-"# a is 0.5\n"
-"a = wrapf(10.5, 0.0, 10.0)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# a is 9.5\n"
-"a = wrapf(-0.5, 0.0, 10.0)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# Infinite loop between 0.0 and 0.99\n"
-"f = wrapf(f + 0.1, 0.0, 1.0)\n"
+"# Infinite loop between 5.0 and 9.9\n"
+"value = wrapf(value + 0.1, 5.0, 10.0)\n"
"[/codeblock]\n"
"[codeblock]\n"
"# Infinite rotation (in radians)\n"
"angle = wrapf(angle + 0.1, 0.0, TAU)\n"
"[/codeblock]\n"
-"[b]Note:[/b] If you just want to wrap between 0.0 and [code]n[/code] (where "
-"[code]n[/code] is a positive floating-point value), it is better for "
-"performance to use the [method fmod] method like [code]fmod(number, n)[/"
-"code].\n"
-"[code]wrapf[/code] is more flexible than using the [method fmod] approach by "
-"giving the user a simple control over the minimum value. It also fully "
-"supports negative numbers, e.g.\n"
"[codeblock]\n"
"# Infinite rotation (in radians)\n"
"angle = wrapf(angle + 0.1, -PI, PI)\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] If [code]min[/code] is [code]0[/code], this is equivalent to "
+"[method fposmod], so prefer using that instead.\n"
+"[code]wrapf[/code] is more flexible than using the [method fposmod] approach "
+"by giving the user control over the minimum value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1348
+#: modules/gdscript/doc_classes/@GDScript.xml:1361
msgid ""
"Wraps integer [code]value[/code] between [code]min[/code] and [code]max[/"
"code].\n"
"Usable for creating loop-alike behavior or infinite surfaces.\n"
"[codeblock]\n"
-"# a is 0\n"
-"a = wrapi(10, 0, 10)\n"
+"# Infinite loop between 5 and 9\n"
+"frame = wrapi(frame + 1, 5, 10)\n"
"[/codeblock]\n"
"[codeblock]\n"
-"# a is 9\n"
-"a = wrapi(-1, 0, 10)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# Infinite loop between 0 and 9\n"
-"frame = wrapi(frame + 1, 0, 10)\n"
-"[/codeblock]\n"
-"[b]Note:[/b] If you just want to wrap between 0 and [code]n[/code] (where "
-"[code]n[/code] is a positive integer value), it is better for performance to "
-"use the modulo operator like [code]number % n[/code].\n"
-"[code]wrapi[/code] is more flexible than using the modulo approach by giving "
-"the user a simple control over the minimum value. It also fully supports "
-"negative numbers, e.g.\n"
-"[codeblock]\n"
"# result is -2\n"
"var result = wrapi(-6, -5, -1)\n"
-"[/codeblock]"
-msgstr ""
-
-#: modules/gdscript/doc_classes/@GDScript.xml:1378
-msgid ""
-"Stops the function execution and returns the current suspended state to the "
-"calling function.\n"
-"From the caller, call [method GDScriptFunctionState.resume] on the state to "
-"resume execution. This invalidates the state. Within the resumed function, "
-"[code]yield()[/code] returns whatever was passed to the [code]resume()[/"
-"code] function call.\n"
-"If passed an object and a signal, the execution is resumed when the object "
-"emits the given signal. In this case, [code]yield()[/code] returns the "
-"argument passed to [code]emit_signal()[/code] if the signal takes only one "
-"argument, or an array containing all the arguments passed to "
-"[code]emit_signal()[/code] if the signal takes multiple arguments.\n"
-"You can also use [code]yield[/code] to wait for a function to finish:\n"
-"[codeblock]\n"
-"func _ready():\n"
-" yield(countdown(), \"completed\") # waiting for the countdown() function "
-"to complete\n"
-" print('Ready')\n"
-"\n"
-"func countdown():\n"
-" yield(get_tree(), \"idle_frame\") # returns a GDScriptFunctionState "
-"object to _ready()\n"
-" print(3)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-" print(2)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-" print(1)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-"\n"
-"# prints:\n"
-"# 3\n"
-"# 2\n"
-"# 1\n"
-"# Ready\n"
"[/codeblock]\n"
-"When yielding on a function, the [code]completed[/code] signal will be "
-"emitted automatically when the function returns. It can, therefore, be used "
-"as the [code]signal[/code] parameter of the [code]yield[/code] method to "
-"resume.\n"
-"In order to yield on a function, the resulting function should also return a "
-"[code]GDScriptFunctionState[/code]. Notice [code]yield(get_tree(), "
-"\"idle_frame\")[/code] from the above example."
+"[b]Note:[/b] If [code]min[/code] is [code]0[/code], this is equivalent to "
+"[method posmod], so prefer using that instead.\n"
+"[code]wrapi[/code] is more flexible than using the [method posmod] approach "
+"by giving the user control over the minimum value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1409
+#: modules/gdscript/doc_classes/@GDScript.xml:1378
msgid ""
"Constant that represents how many times the diameter of a circle fits around "
-"its perimeter."
+"its perimeter. This is equivalent to [code]TAU / 2[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1412
-msgid "The circle constant, the circumference of the unit circle."
+#: modules/gdscript/doc_classes/@GDScript.xml:1381
+msgid "The circle constant, the circumference of the unit circle in radians."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1415
-msgid "A positive infinity. (For negative infinity, use -INF)."
+#: modules/gdscript/doc_classes/@GDScript.xml:1384
+msgid "Positive infinity. For negative infinity, use -INF."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1418
+#: modules/gdscript/doc_classes/@GDScript.xml:1387
msgid ""
-"Macro constant that expands to an expression of type float that represents a "
-"NaN.\n"
-"The NaN values are used to identify undefined or non-representable values "
-"for floating-point elements, such as the square root of negative numbers or "
-"the result of 0/0."
+"\"Not a Number\", an invalid value. [code]NaN[/code] has special properties, "
+"including that it is not equal to itself. It is output by some invalid "
+"operations, such as dividing zero by zero."
msgstr ""
#: doc/classes/@GlobalScope.xml:4
@@ -3454,130 +3442,141 @@ msgid ""
msgstr ""
#: doc/classes/AABB.xml:10 doc/classes/Plane.xml:10 doc/classes/Rect2.xml:11
-#: doc/classes/Rect2i.xml:11 doc/classes/Transform.xml:10
+#: doc/classes/Rect2i.xml:11 doc/classes/Transform.xml:11
#: doc/classes/Vector2.xml:12 doc/classes/Vector2i.xml:12
#: doc/classes/Vector3.xml:12 doc/classes/Vector3i.xml:12
msgid "https://docs.godotengine.org/en/latest/tutorials/math/index.html"
msgstr ""
#: doc/classes/AABB.xml:21
-msgid "Optional constructor, accepts position and size."
+msgid "Constructs an [AABB] from a position and size."
msgstr ""
-#: doc/classes/AABB.xml:30
+#: doc/classes/AABB.xml:28
+msgid ""
+"Returns an AABB with equivalent position and size, modified so that the most-"
+"negative corner is the origin and the size is positive."
+msgstr ""
+
+#: doc/classes/AABB.xml:37
msgid ""
"Returns [code]true[/code] if this [AABB] completely encloses another one."
msgstr ""
-#: doc/classes/AABB.xml:39
+#: doc/classes/AABB.xml:46
msgid "Returns this [AABB] expanded to include a given point."
msgstr ""
-#: doc/classes/AABB.xml:46
+#: doc/classes/AABB.xml:53
msgid "Returns the volume of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:55
+#: doc/classes/AABB.xml:62
msgid "Gets the position of the 8 endpoints of the [AABB] in space."
msgstr ""
-#: doc/classes/AABB.xml:62
+#: doc/classes/AABB.xml:69
msgid "Returns the normalized longest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:69
+#: doc/classes/AABB.xml:76
msgid ""
"Returns the index of the longest axis of the [AABB] (according to "
"[Vector3]'s [code]AXIS_*[/code] constants)."
msgstr ""
-#: doc/classes/AABB.xml:76
+#: doc/classes/AABB.xml:83
msgid "Returns the scalar length of the longest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:83
+#: doc/classes/AABB.xml:90
msgid "Returns the normalized shortest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:90
+#: doc/classes/AABB.xml:97
msgid ""
"Returns the index of the shortest axis of the [AABB] (according to "
"[Vector3]::AXIS* enum)."
msgstr ""
-#: doc/classes/AABB.xml:97
+#: doc/classes/AABB.xml:104
msgid "Returns the scalar length of the shortest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:106
+#: doc/classes/AABB.xml:113
msgid ""
"Returns the support point in a given direction. This is useful for collision "
"detection algorithms."
msgstr ""
-#: doc/classes/AABB.xml:115
+#: doc/classes/AABB.xml:122
msgid ""
"Returns a copy of the [AABB] grown a given amount of units towards all the "
"sides."
msgstr ""
-#: doc/classes/AABB.xml:122
+#: doc/classes/AABB.xml:129
msgid "Returns [code]true[/code] if the [AABB] is flat or empty."
msgstr ""
-#: doc/classes/AABB.xml:129
+#: doc/classes/AABB.xml:136
msgid "Returns [code]true[/code] if the [AABB] is empty."
msgstr ""
-#: doc/classes/AABB.xml:138
+#: doc/classes/AABB.xml:145
msgid "Returns [code]true[/code] if the [AABB] contains a point."
msgstr ""
-#: doc/classes/AABB.xml:147
+#: doc/classes/AABB.xml:154
msgid ""
"Returns the intersection between two [AABB]. An empty AABB (size 0,0,0) is "
"returned on failure."
msgstr ""
-#: doc/classes/AABB.xml:156
+#: doc/classes/AABB.xml:163
msgid "Returns [code]true[/code] if the [AABB] overlaps with another."
msgstr ""
-#: doc/classes/AABB.xml:165
+#: doc/classes/AABB.xml:172
msgid "Returns [code]true[/code] if the [AABB] is on both sides of a plane."
msgstr ""
-#: doc/classes/AABB.xml:176
+#: doc/classes/AABB.xml:183
msgid ""
"Returns [code]true[/code] if the [AABB] intersects the line segment between "
"[code]from[/code] and [code]to[/code]."
msgstr ""
-#: doc/classes/AABB.xml:185
+#: doc/classes/AABB.xml:192
msgid ""
"Returns [code]true[/code] if this [AABB] and [code]aabb[/code] are "
"approximately equal, by calling [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/AABB.xml:194
+#: doc/classes/AABB.xml:201
msgid ""
"Returns a larger [AABB] that contains both this [AABB] and [code]with[/code]."
msgstr ""
-#: doc/classes/AABB.xml:200
+#: doc/classes/AABB.xml:207 doc/classes/Rect2.xml:174
+#: doc/classes/Rect2i.xml:163
msgid ""
-"Ending corner. This is calculated as [code]position + size[/code]. Changing "
-"this property changes [member size] accordingly."
+"Ending corner. This is calculated as [code]position + size[/code]. Setting "
+"this value will change the size."
msgstr ""
-#: doc/classes/AABB.xml:203
-msgid "Beginning corner."
+#: doc/classes/AABB.xml:210 doc/classes/Rect2.xml:177
+#: doc/classes/Rect2i.xml:166
+msgid "Beginning corner. Typically has values lower than [member end]."
msgstr ""
-#: doc/classes/AABB.xml:206 doc/classes/Rect2.xml:180
+#: doc/classes/AABB.xml:213 doc/classes/Rect2.xml:180
#: doc/classes/Rect2i.xml:169
-msgid "Size from position to end."
+msgid ""
+"Size from [member position] to [member end]. Typically all components are "
+"positive.\n"
+"If the size is negative, you can use [method abs] to fix it."
msgstr ""
#: doc/classes/AcceptDialog.xml:4
@@ -3641,11 +3640,11 @@ msgstr ""
msgid "The text displayed by the dialog."
msgstr ""
-#: doc/classes/AcceptDialog.xml:82
+#: doc/classes/AcceptDialog.xml:83
msgid "Emitted when the dialog is accepted, i.e. the OK button is pressed."
msgstr ""
-#: doc/classes/AcceptDialog.xml:89
+#: doc/classes/AcceptDialog.xml:90
msgid "Emitted when a custom button is pressed. See [method add_button]."
msgstr ""
@@ -3698,7 +3697,7 @@ msgstr ""
#: doc/classes/AESContext.xml:54
msgid ""
"Get the current IV state for this context (IV gets updated when calling "
-"[method update]). You normally don't need this funciton.\n"
+"[method update]). You normally don't need this function.\n"
"Note: This function only makes sense when the context is started with "
"[constant MODE_CBC_ENCRYPT] or [constant MODE_CBC_DECRYPT]."
msgstr ""
@@ -3776,12 +3775,14 @@ msgid "If [code]true[/code], texture will be centered."
msgstr ""
#: doc/classes/AnimatedSprite2D.xml:46 doc/classes/Sprite2D.xml:41
-#: doc/classes/SpriteBase3D.xml:61 doc/classes/TextureRect.xml:18
+#: doc/classes/SpriteBase3D.xml:61 doc/classes/TextureButton.xml:19
+#: doc/classes/TextureRect.xml:18
msgid "If [code]true[/code], texture is flipped horizontally."
msgstr ""
#: doc/classes/AnimatedSprite2D.xml:49 doc/classes/Sprite2D.xml:44
-#: doc/classes/SpriteBase3D.xml:64 doc/classes/TextureRect.xml:21
+#: doc/classes/SpriteBase3D.xml:64 doc/classes/TextureButton.xml:22
+#: doc/classes/TextureRect.xml:21
msgid "If [code]true[/code], texture is flipped vertically."
msgstr ""
@@ -3948,10 +3949,10 @@ msgid ""
"[codeblock]\n"
"# This creates an animation that makes the node \"Enemy\" move to the right "
"by\n"
-"# 100 pixels in 1 second.\n"
+"# 100 pixels in 0.5 seconds.\n"
"var animation = Animation.new()\n"
"var track_index = animation.add_track(Animation.TYPE_VALUE)\n"
-"animation.track_set_path(track_index, \"Enemy:position.x\")\n"
+"animation.track_set_path(track_index, \"Enemy:position:x\")\n"
"animation.track_insert_key(track_index, 0.0, 0)\n"
"animation.track_insert_key(track_index, 0.5, 100)\n"
"[/codeblock]\n"
@@ -6079,10 +6080,10 @@ msgstr ""
msgid ""
"Returns [code]true[/code] if the array contains the given value.\n"
"[codeblock]\n"
-"[\"inside\", 7].has(\"inside\") == true\n"
-"[\"inside\", 7].has(\"outside\") == false\n"
-"[\"inside\", 7].has(7) == true\n"
-"[\"inside\", 7].has(\"7\") == false\n"
+"print([\"inside\", 7].has(\"inside\")) # True\n"
+"print([\"inside\", 7].has(\"outside\")) # False\n"
+"print([\"inside\", 7].has(7)) # True\n"
+"print([\"inside\", 7].has(\"7\")) # False\n"
"[/codeblock]\n"
"[b]Note:[/b] This is equivalent to using the [code]in[/code] operator as "
"follows:\n"
@@ -6103,11 +6104,11 @@ msgid ""
"valid, or at the end of the array ([code]pos == size()[/code])."
msgstr ""
-#: doc/classes/Array.xml:265 doc/classes/PackedByteArray.xml:107
-#: doc/classes/PackedColorArray.xml:62 doc/classes/PackedFloat32Array.xml:63
-#: doc/classes/PackedFloat64Array.xml:63 doc/classes/PackedInt32Array.xml:63
-#: doc/classes/PackedInt64Array.xml:63 doc/classes/PackedStringArray.xml:62
-#: doc/classes/PackedVector2Array.xml:62 doc/classes/PackedVector3Array.xml:62
+#: doc/classes/Array.xml:265 doc/classes/PackedByteArray.xml:116
+#: doc/classes/PackedColorArray.xml:71 doc/classes/PackedFloat32Array.xml:72
+#: doc/classes/PackedFloat64Array.xml:72 doc/classes/PackedInt32Array.xml:72
+#: doc/classes/PackedInt64Array.xml:72 doc/classes/PackedStringArray.xml:71
+#: doc/classes/PackedVector2Array.xml:71 doc/classes/PackedVector3Array.xml:71
msgid "Reverses the order of the elements in the array."
msgstr ""
@@ -6137,8 +6138,8 @@ msgid ""
"code] if the array is empty."
msgstr ""
-#: doc/classes/Array.xml:302 doc/classes/PackedByteArray.xml:116
-#: doc/classes/PackedFloat32Array.xml:72 doc/classes/PackedFloat64Array.xml:72
+#: doc/classes/Array.xml:302 doc/classes/PackedByteArray.xml:125
+#: doc/classes/PackedFloat32Array.xml:81 doc/classes/PackedFloat64Array.xml:81
msgid "Appends an element at the end of the array."
msgstr ""
@@ -6146,11 +6147,11 @@ msgstr ""
msgid "Adds an element at the beginning of the array."
msgstr ""
-#: doc/classes/Array.xml:320 doc/classes/PackedByteArray.xml:125
-#: doc/classes/PackedColorArray.xml:80 doc/classes/PackedFloat32Array.xml:81
-#: doc/classes/PackedFloat64Array.xml:81 doc/classes/PackedInt32Array.xml:81
-#: doc/classes/PackedInt64Array.xml:81 doc/classes/PackedStringArray.xml:80
-#: doc/classes/PackedVector2Array.xml:80 doc/classes/PackedVector3Array.xml:80
+#: doc/classes/Array.xml:320 doc/classes/PackedByteArray.xml:134
+#: doc/classes/PackedColorArray.xml:89 doc/classes/PackedFloat32Array.xml:90
+#: doc/classes/PackedFloat64Array.xml:90 doc/classes/PackedInt32Array.xml:90
+#: doc/classes/PackedInt64Array.xml:90 doc/classes/PackedStringArray.xml:89
+#: doc/classes/PackedVector2Array.xml:89 doc/classes/PackedVector3Array.xml:89
msgid "Removes an element from the array by index."
msgstr ""
@@ -6433,7 +6434,7 @@ msgid ""
msgstr ""
#: doc/classes/ArrayMesh.xml:235 doc/classes/Mesh.xml:210
-#: doc/classes/RenderingServer.xml:3115
+#: doc/classes/RenderingServer.xml:3111
msgid "Represents the size of the [enum ArrayType] enum."
msgstr ""
@@ -8250,7 +8251,9 @@ msgid ""
msgstr ""
#: doc/classes/BaseButton.xml:16
-msgid "Called when the button is pressed."
+msgid ""
+"Called when the button is pressed. If you need to know the button's pressed "
+"state (and [member toggle_mode] is active), use [method _toggled] instead."
msgstr ""
#: doc/classes/BaseButton.xml:25
@@ -8344,43 +8347,45 @@ msgstr ""
msgid ""
"Emitted when the button is toggled or pressed. This is on [signal "
"button_down] if [member action_mode] is [constant ACTION_MODE_BUTTON_PRESS] "
-"and on [signal button_up] otherwise."
+"and on [signal button_up] otherwise.\n"
+"If you need to know the button's pressed state (and [member toggle_mode] is "
+"active), use [signal toggled] instead."
msgstr ""
-#: doc/classes/BaseButton.xml:98
+#: doc/classes/BaseButton.xml:99
msgid ""
"Emitted when the button was just toggled between pressed and normal states "
"(only if [member toggle_mode] is active). The new state is contained in the "
"[code]button_pressed[/code] argument."
msgstr ""
-#: doc/classes/BaseButton.xml:104
+#: doc/classes/BaseButton.xml:105
msgid ""
"The normal state (i.e. not pressed, not hovered, not toggled and enabled) of "
"buttons."
msgstr ""
-#: doc/classes/BaseButton.xml:107
+#: doc/classes/BaseButton.xml:108
msgid "The state of buttons are pressed."
msgstr ""
-#: doc/classes/BaseButton.xml:110
+#: doc/classes/BaseButton.xml:111
msgid "The state of buttons are hovered."
msgstr ""
-#: doc/classes/BaseButton.xml:113
+#: doc/classes/BaseButton.xml:114
msgid "The state of buttons are disabled."
msgstr ""
-#: doc/classes/BaseButton.xml:116
+#: doc/classes/BaseButton.xml:117
msgid "The state of buttons are both hovered and pressed."
msgstr ""
-#: doc/classes/BaseButton.xml:119
+#: doc/classes/BaseButton.xml:120
msgid "Require just a press to consider the button clicked."
msgstr ""
-#: doc/classes/BaseButton.xml:122
+#: doc/classes/BaseButton.xml:123
msgid ""
"Require a press and a subsequent release before considering the button "
"clicked."
@@ -9073,22 +9078,22 @@ msgstr ""
msgid "Represents the size of the [enum TextureParam] enum."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:451 doc/classes/RenderingServer.xml:3657
-#: doc/classes/Viewport.xml:390
+#: doc/classes/BaseMaterial3D.xml:451 doc/classes/RenderingServer.xml:3668
+#: doc/classes/Viewport.xml:393
msgid ""
"The texture filter reads from the nearest pixel only. The simplest and "
"fastest method of filtering, but the texture will look pixelized."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:454 doc/classes/RenderingServer.xml:3660
-#: doc/classes/Viewport.xml:393
+#: doc/classes/BaseMaterial3D.xml:454 doc/classes/RenderingServer.xml:3671
+#: doc/classes/Viewport.xml:396
msgid ""
"The texture filter blends between the nearest 4 pixels. Use this when you "
"want to avoid a pixelated style, but do not want mipmaps."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:457 doc/classes/RenderingServer.xml:3663
-#: doc/classes/Viewport.xml:396
+#: doc/classes/BaseMaterial3D.xml:457 doc/classes/RenderingServer.xml:3674
+#: doc/classes/Viewport.xml:399
msgid ""
"The texture filter reads from the nearest pixel in the nearest mipmap. The "
"fastest way to read from textures with mipmaps."
@@ -9101,14 +9106,14 @@ msgid ""
"smooth out pixels that are far from the camera."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:463 doc/classes/RenderingServer.xml:3669
+#: doc/classes/BaseMaterial3D.xml:463 doc/classes/RenderingServer.xml:3680
msgid ""
"The texture filter reads from the nearest pixel, but selects a mipmap based "
"on the angle between the surface and the camera view. This reduces artifacts "
"on surfaces that are almost in line with the camera."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:466 doc/classes/RenderingServer.xml:3672
+#: doc/classes/BaseMaterial3D.xml:466 doc/classes/RenderingServer.xml:3683
msgid ""
"The texture filter blends between the nearest 4 pixels and selects a mipmap "
"based on the angle between the surface and the camera view. This reduces "
@@ -9117,7 +9122,7 @@ msgid ""
"texturing."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:469 doc/classes/CanvasItem.xml:685
+#: doc/classes/BaseMaterial3D.xml:469 doc/classes/CanvasItem.xml:695
msgid "Represents the size of the [enum TextureFilter] enum."
msgstr ""
@@ -9340,8 +9345,8 @@ msgstr ""
msgid "Enables the shadow to opacity feature."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:622 doc/classes/RenderingServer.xml:3684
-#: doc/classes/Viewport.xml:408
+#: doc/classes/BaseMaterial3D.xml:622 doc/classes/RenderingServer.xml:3695
+#: doc/classes/Viewport.xml:411
msgid ""
"Enables the texture to repeat when UV coordinates are outside the 0-1 range. "
"If using one of the linear filtering modes, this can result in artifacts at "
@@ -9482,167 +9487,195 @@ msgstr ""
#: doc/classes/Basis.xml:7
msgid ""
-"3×3 matrix used for 3D rotation and scale. Contains 3 vector fields X, Y and "
-"Z as its columns, which can be interpreted as the local basis vectors of a "
-"transformation. Can also be accessed as array of 3D vectors. These vectors "
-"are orthogonal to each other, but are not necessarily normalized (due to "
-"scaling). Almost always used as an orthogonal basis for a [Transform].\n"
-"For such use, it is composed of a scaling and a rotation matrix, in that "
-"order (M = R.S)."
+"3×3 matrix used for 3D rotation and scale. Almost always used as an "
+"orthogonal basis for a Transform.\n"
+"Contains 3 vector fields X, Y and Z as its columns, which are typically "
+"interpreted as the local basis vectors of a transformation. For such use, it "
+"is composed of a scaling and a rotation matrix, in that order (M = R.S).\n"
+"Can also be accessed as array of 3D vectors. These vectors are normally "
+"orthogonal to each other, but are not necessarily normalized (due to "
+"scaling).\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
+msgstr ""
+
+#: doc/classes/Basis.xml:13 doc/classes/Transform.xml:12
+#: doc/classes/Transform2D.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/math/"
+"matrices_and_transforms.html"
msgstr ""
-#: doc/classes/Basis.xml:11 doc/classes/Transform.xml:11
+#: doc/classes/Basis.xml:14 doc/classes/Transform.xml:13
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/using_transforms.html"
msgstr ""
-#: doc/classes/Basis.xml:20
-msgid "Create a rotation matrix from the given quaternion."
+#: doc/classes/Basis.xml:23
+msgid "Constructs a pure rotation basis matrix from the given quaternion."
msgstr ""
-#: doc/classes/Basis.xml:29
+#: doc/classes/Basis.xml:32
msgid ""
-"Create a rotation matrix (in the YXZ convention: first Z, then X, and Y "
-"last) from the specified Euler angles, given in the vector format as (X "
-"angle, Y angle, Z angle)."
+"Constructs a pure rotation basis matrix from the given Euler angles (in the "
+"YXZ convention: when *composing*, first Y, then X, and Z last), given in the "
+"vector format as (X angle, Y angle, Z angle).\n"
+"Consider using the [Quat] constructor instead, which uses a quaternion "
+"instead of Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:40
+#: doc/classes/Basis.xml:44
msgid ""
-"Create a rotation matrix which rotates around the given axis by the "
-"specified angle, in radians. The axis must be a normalized vector."
+"Constructs a pure rotation basis matrix, rotated around the given "
+"[code]axis[/code] by [code]phi[/code], in radians. The axis must be a "
+"normalized vector."
msgstr ""
-#: doc/classes/Basis.xml:53
-msgid "Create a matrix from 3 axis vectors."
+#: doc/classes/Basis.xml:57
+msgid "Constructs a basis matrix from 3 axis vectors (matrix columns)."
msgstr ""
-#: doc/classes/Basis.xml:60
-msgid "Returns the determinant of the matrix."
+#: doc/classes/Basis.xml:64
+msgid ""
+"Returns the determinant of the basis matrix. If the basis is uniformly "
+"scaled, its determinant is the square of the scale.\n"
+"A negative determinant means the basis has a negative scale. A zero "
+"determinant means the basis isn't invertible, and is usually considered "
+"invalid."
msgstr ""
-#: doc/classes/Basis.xml:67
+#: doc/classes/Basis.xml:72
msgid ""
"Returns the basis's rotation in the form of Euler angles (in the YXZ "
-"convention: first Z, then X, and Y last). The returned vector contains the "
-"rotation angles in the format (X angle, Y angle, Z angle). See [method "
-"get_rotation_quat] if you need a quaternion instead."
+"convention: when decomposing, first Z, then X, and Y last). The returned "
+"vector contains the rotation angles in the format (X angle, Y angle, Z "
+"angle).\n"
+"Consider using the [method get_rotation_quat] method instead, which returns "
+"a [Quat] quaternion instead of Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:74
+#: doc/classes/Basis.xml:80
msgid ""
"This function considers a discretization of rotations into 24 points on unit "
"sphere, lying along the vectors (x,y,z) with each component being either -1, "
"0, or 1, and returns the index of the point best representing the "
-"orientation of the object. It is mainly used by the grid map editor. For "
+"orientation of the object. It is mainly used by the [GridMap] editor. For "
"further details, refer to the Godot source code."
msgstr ""
-#: doc/classes/Basis.xml:81
+#: doc/classes/Basis.xml:87
msgid ""
"Returns the basis's rotation in the form of a quaternion. See [method "
"get_euler] if you need Euler angles, but keep in mind quaternions should "
"generally be preferred to Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:88
+#: doc/classes/Basis.xml:94
msgid ""
"Assuming that the matrix is the combination of a rotation and scaling, "
"return the absolute value of scaling factors along each axis."
msgstr ""
-#: doc/classes/Basis.xml:95 doc/classes/Transform2D.xml:49
+#: doc/classes/Basis.xml:101
msgid "Returns the inverse of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:106
+#: doc/classes/Basis.xml:112
msgid ""
"Returns [code]true[/code] if this basis and [code]b[/code] are approximately "
"equal, by calling [code]is_equal_approx[/code] on each component."
msgstr ""
-#: doc/classes/Basis.xml:113
+#: doc/classes/Basis.xml:119
msgid ""
"Returns the orthonormalized version of the matrix (useful to call from time "
"to time to avoid rounding error for orthogonal matrices). This performs a "
"Gram-Schmidt orthonormalization on the basis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:124
+#: doc/classes/Basis.xml:130
msgid ""
"Introduce an additional rotation around the given axis by phi (radians). The "
"axis must be a normalized vector."
msgstr ""
-#: doc/classes/Basis.xml:133
+#: doc/classes/Basis.xml:139
msgid ""
"Introduce an additional scaling specified by the given 3D scaling factor."
msgstr ""
-#: doc/classes/Basis.xml:144
+#: doc/classes/Basis.xml:150
msgid ""
"Assuming that the matrix is a proper rotation matrix, slerp performs a "
"spherical-linear interpolation with another rotation matrix."
msgstr ""
-#: doc/classes/Basis.xml:153
+#: doc/classes/Basis.xml:159
msgid "Transposed dot product with the X axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:162
+#: doc/classes/Basis.xml:168
msgid "Transposed dot product with the Y axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:171
+#: doc/classes/Basis.xml:177
msgid "Transposed dot product with the Z axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:178
+#: doc/classes/Basis.xml:184
msgid "Returns the transposed version of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:187
+#: doc/classes/Basis.xml:193
msgid "Returns a vector transformed (multiplied) by the matrix."
msgstr ""
-#: doc/classes/Basis.xml:196
+#: doc/classes/Basis.xml:202
msgid ""
-"Returns a vector transformed (multiplied) by the transposed matrix.\n"
+"Returns a vector transformed (multiplied) by the transposed basis matrix.\n"
"[b]Note:[/b] This results in a multiplication by the inverse of the matrix "
"only if it represents a rotation-reflection."
msgstr ""
-#: doc/classes/Basis.xml:203
-msgid "The basis matrix's X vector."
+#: doc/classes/Basis.xml:209 doc/classes/Transform2D.xml:181
+msgid ""
+"The basis matrix's X vector (column 0). Equivalent to array index [code]0[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:206
-msgid "The basis matrix's Y vector."
+#: doc/classes/Basis.xml:212 doc/classes/Transform2D.xml:184
+msgid ""
+"The basis matrix's Y vector (column 1). Equivalent to array index [code]1[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:209
-msgid "The basis matrix's Z vector."
+#: doc/classes/Basis.xml:215
+msgid ""
+"The basis matrix's Z vector (column 2). Equivalent to array index [code]2[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:214
+#: doc/classes/Basis.xml:220
msgid ""
-"The identity basis. This is identical to calling [code]Basis()[/code] "
-"without any parameters. This constant can be used to make your code clearer."
+"The identity basis, with no rotation or scaling applied.\n"
+"This is identical to calling [code]Basis()[/code] without any parameters. "
+"This constant can be used to make your code clearer, and for consistency "
+"with C#."
msgstr ""
-#: doc/classes/Basis.xml:217
+#: doc/classes/Basis.xml:224
msgid ""
"The basis that will flip something along the X axis when used in a "
"transformation."
msgstr ""
-#: doc/classes/Basis.xml:220
+#: doc/classes/Basis.xml:227
msgid ""
"The basis that will flip something along the Y axis when used in a "
"transformation."
msgstr ""
-#: doc/classes/Basis.xml:223
+#: doc/classes/Basis.xml:230
msgid ""
"The basis that will flip something along the Z axis when used in a "
"transformation."
@@ -9955,97 +9988,111 @@ msgstr ""
#: doc/classes/Button.xml:7
msgid ""
"Button is the standard themed button. It can contain text and an icon, and "
-"will display them according to the current [Theme]."
+"will display them according to the current [Theme].\n"
+"[b]Example of creating a button and assigning an action when pressed by code:"
+"[/b]\n"
+"[codeblock]\n"
+"func _ready():\n"
+" var button = Button.new()\n"
+" button.text = \"Click me\"\n"
+" button.connect(\"pressed\", self, \"_button_pressed\")\n"
+" add_child(button)\n"
+"\n"
+"func _button_pressed():\n"
+" print(\"Hello world!\")\n"
+"[/codeblock]\n"
+"Buttons (like all Control nodes) can also be created in the editor, but some "
+"situations may require creating them from code."
msgstr ""
-#: doc/classes/Button.xml:15
+#: doc/classes/Button.xml:27
msgid ""
"Text alignment policy for the button's text, use one of the [enum TextAlign] "
"constants."
msgstr ""
-#: doc/classes/Button.xml:18
+#: doc/classes/Button.xml:30
msgid ""
"When this property is enabled, text that is too large to fit the button is "
"clipped, when disabled the Button will always be wide enough to hold the "
"text."
msgstr ""
-#: doc/classes/Button.xml:21
+#: doc/classes/Button.xml:33
msgid ""
"When enabled, the button's icon will expand/shrink to fit the button's size "
"while keeping its aspect."
msgstr ""
-#: doc/classes/Button.xml:24
+#: doc/classes/Button.xml:36
msgid "Flat buttons don't display decoration."
msgstr ""
-#: doc/classes/Button.xml:27
+#: doc/classes/Button.xml:39
msgid ""
"Button's icon, if text is present the icon will be placed before the text."
msgstr ""
-#: doc/classes/Button.xml:30 doc/classes/LinkButton.xml:18
+#: doc/classes/Button.xml:42 doc/classes/LinkButton.xml:18
msgid "The button's text that will be displayed inside the button's area."
msgstr ""
-#: doc/classes/Button.xml:35
+#: doc/classes/Button.xml:47
msgid "Align the text to the left."
msgstr ""
-#: doc/classes/Button.xml:38
+#: doc/classes/Button.xml:50
msgid "Align the text to the center."
msgstr ""
-#: doc/classes/Button.xml:41
+#: doc/classes/Button.xml:53
msgid "Align the text to the right."
msgstr ""
-#: doc/classes/Button.xml:46
+#: doc/classes/Button.xml:58
msgid "[StyleBox] used when the [Button] is disabled."
msgstr ""
-#: doc/classes/Button.xml:49
+#: doc/classes/Button.xml:61
msgid ""
"[StyleBox] used when the [Button] is focused. It is displayed over the "
"current [StyleBox], so using [StyleBoxEmpty] will just disable the focus "
"visual effect."
msgstr ""
-#: doc/classes/Button.xml:52
+#: doc/classes/Button.xml:64
msgid "[Font] of the [Button]'s text."
msgstr ""
-#: doc/classes/Button.xml:55
+#: doc/classes/Button.xml:67
msgid "Default text [Color] of the [Button]."
msgstr ""
-#: doc/classes/Button.xml:58
+#: doc/classes/Button.xml:70
msgid "Text [Color] used when the [Button] is disabled."
msgstr ""
-#: doc/classes/Button.xml:61
+#: doc/classes/Button.xml:73
msgid "Text [Color] used when the [Button] is being hovered."
msgstr ""
-#: doc/classes/Button.xml:64
+#: doc/classes/Button.xml:76
msgid "Text [Color] used when the [Button] is being pressed."
msgstr ""
-#: doc/classes/Button.xml:67
+#: doc/classes/Button.xml:79
msgid "[StyleBox] used when the [Button] is being hovered."
msgstr ""
-#: doc/classes/Button.xml:70
+#: doc/classes/Button.xml:82
msgid "The horizontal space between [Button]'s icon and text."
msgstr ""
-#: doc/classes/Button.xml:73
+#: doc/classes/Button.xml:85
msgid "Default [StyleBox] for the [Button]."
msgstr ""
-#: doc/classes/Button.xml:76
+#: doc/classes/Button.xml:88
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr ""
@@ -10697,7 +10744,7 @@ msgstr ""
#: doc/classes/CameraEffects.xml:37
msgid ""
"The exposure override value to use. Higher values will result in a brighter "
-"scene. Only effective if [member override_exposure_enable] is [code]true[/"
+"scene. Only effective if [member override_exposure_enabled] is [code]true[/"
"code]."
msgstr ""
@@ -10951,265 +10998,282 @@ msgid ""
msgstr ""
#: doc/classes/CanvasItem.xml:319
-msgid "Draws a string using a custom font."
+msgid ""
+"Draws [code]text[/code] using the specified [code]font[/code] at the "
+"[code]position[/code] (top-left corner). The text will have its color "
+"multiplied by [code]modulate[/code]. If [code]clip_w[/code] is greater than "
+"or equal to 0, the text will be clipped if it exceeds the specified width.\n"
+"[b]Example using the default project font:[/b]\n"
+"[codeblock]\n"
+"# If using this method in a script that redraws constantly, move the\n"
+"# `default_font` declaration to a member variable assigned in `_ready()`\n"
+"# so the Control is only created once.\n"
+"var default_font = Control.new().get_font(\"font\")\n"
+"draw_string(default_font, Vector2(64, 64), \"Hello world\")\n"
+"[/codeblock]\n"
+"See also [method Font.draw]."
msgstr ""
-#: doc/classes/CanvasItem.xml:330
+#: doc/classes/CanvasItem.xml:339
msgid "Draws a styled rectangle."
msgstr ""
-#: doc/classes/CanvasItem.xml:353
+#: doc/classes/CanvasItem.xml:362
msgid "Draws a texture at a given position."
msgstr ""
-#: doc/classes/CanvasItem.xml:380
+#: doc/classes/CanvasItem.xml:389
msgid ""
"Draws a textured rectangle at a given position, optionally modulated by a "
"color. If [code]transpose[/code] is [code]true[/code], the texture will have "
"its X and Y coordinates swapped."
msgstr ""
-#: doc/classes/CanvasItem.xml:409
+#: doc/classes/CanvasItem.xml:418
msgid ""
"Draws a textured rectangle region at a given position, optionally modulated "
"by a color. If [code]transpose[/code] is [code]true[/code], the texture will "
"have its X and Y coordinates swapped."
msgstr ""
-#: doc/classes/CanvasItem.xml:416 doc/classes/Node3D.xml:19
+#: doc/classes/CanvasItem.xml:425 doc/classes/Node3D.xml:19
msgid ""
"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."
msgstr ""
-#: doc/classes/CanvasItem.xml:423
+#: doc/classes/CanvasItem.xml:432
msgid "Returns the [RID] of the [World2D] canvas where this item is in."
msgstr ""
-#: doc/classes/CanvasItem.xml:430
+#: doc/classes/CanvasItem.xml:439
msgid "Returns the canvas item RID used by [RenderingServer] for this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:437
+#: doc/classes/CanvasItem.xml:446
msgid "Returns the transform matrix of this item's canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:444
+#: doc/classes/CanvasItem.xml:453
msgid "Returns the global position of the mouse."
msgstr ""
-#: doc/classes/CanvasItem.xml:451
+#: doc/classes/CanvasItem.xml:460
msgid "Returns the global transform matrix of this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:458
+#: doc/classes/CanvasItem.xml:467
msgid ""
"Returns the global transform matrix of this item in relation to the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:465
+#: doc/classes/CanvasItem.xml:474
msgid "Returns the mouse position relative to this item's position."
msgstr ""
-#: doc/classes/CanvasItem.xml:472
+#: doc/classes/CanvasItem.xml:481
msgid "Returns the transform matrix of this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:479
+#: doc/classes/CanvasItem.xml:488
msgid "Returns the viewport's boundaries as a [Rect2]."
msgstr ""
-#: doc/classes/CanvasItem.xml:486
+#: doc/classes/CanvasItem.xml:495
msgid "Returns this item's transform in relation to the viewport."
msgstr ""
-#: doc/classes/CanvasItem.xml:493
+#: doc/classes/CanvasItem.xml:502
msgid "Returns the [World2D] where this item is in."
msgstr ""
-#: doc/classes/CanvasItem.xml:500
+#: doc/classes/CanvasItem.xml:509
msgid "Hide the [CanvasItem] if it's currently visible."
msgstr ""
-#: doc/classes/CanvasItem.xml:507
+#: doc/classes/CanvasItem.xml:516
msgid ""
"Returns [code]true[/code] if local transform notifications are communicated "
"to children."
msgstr ""
-#: doc/classes/CanvasItem.xml:514
+#: doc/classes/CanvasItem.xml:523
msgid ""
"Returns [code]true[/code] if the node is set as top-level. See [method "
"set_as_toplevel]."
msgstr ""
-#: doc/classes/CanvasItem.xml:521
+#: doc/classes/CanvasItem.xml:530
msgid ""
"Returns [code]true[/code] if global transform notifications are communicated "
"to children."
msgstr ""
-#: doc/classes/CanvasItem.xml:528
+#: doc/classes/CanvasItem.xml:537 doc/classes/Node3D.xml:104
msgid ""
"Returns [code]true[/code] if the node is present in the [SceneTree], its "
-"[member visible] property is [code]true[/code] and its inherited visibility "
-"is also [code]true[/code]."
+"[member visible] property is [code]true[/code] and all its antecedents are "
+"also visible. If any antecedent is hidden, this node will not be visible in "
+"the scene tree."
msgstr ""
-#: doc/classes/CanvasItem.xml:537
+#: doc/classes/CanvasItem.xml:546
msgid "Assigns [code]screen_point[/code] as this node's new local transform."
msgstr ""
-#: doc/classes/CanvasItem.xml:546
+#: doc/classes/CanvasItem.xml:555
msgid ""
"Transformations issued by [code]event[/code]'s inputs are applied in local "
"space instead of global space."
msgstr ""
-#: doc/classes/CanvasItem.xml:555
+#: doc/classes/CanvasItem.xml:564
msgid ""
"If [code]enable[/code] is [code]true[/code], the node won't inherit its "
"transform from parent canvas items."
msgstr ""
-#: doc/classes/CanvasItem.xml:564
+#: doc/classes/CanvasItem.xml:573
msgid ""
"If [code]enable[/code] is [code]true[/code], children will be updated with "
"local transform data."
msgstr ""
-#: doc/classes/CanvasItem.xml:573
+#: doc/classes/CanvasItem.xml:582
msgid ""
"If [code]enable[/code] is [code]true[/code], children will be updated with "
"global transform data."
msgstr ""
-#: doc/classes/CanvasItem.xml:580
+#: doc/classes/CanvasItem.xml:589
msgid ""
"Show the [CanvasItem] if it's currently hidden. For controls that inherit "
"[Popup], the correct way to make them visible is to call one of the multiple "
"[code]popup*()[/code] functions instead."
msgstr ""
-#: doc/classes/CanvasItem.xml:587
+#: doc/classes/CanvasItem.xml:596
msgid ""
"Queue the [CanvasItem] for update. [constant NOTIFICATION_DRAW] will be "
"called on idle time to request redraw."
msgstr ""
-#: doc/classes/CanvasItem.xml:593
+#: doc/classes/CanvasItem.xml:602
msgid ""
"The rendering layers in which this [CanvasItem] responds to [Light2D] nodes."
msgstr ""
-#: doc/classes/CanvasItem.xml:596
+#: doc/classes/CanvasItem.xml:605
msgid "The material applied to textures on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:599
+#: doc/classes/CanvasItem.xml:608
msgid "The color applied to textures on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:602
+#: doc/classes/CanvasItem.xml:611
msgid ""
"The color applied to textures on this [CanvasItem]. This is not inherited by "
"children [CanvasItem]s."
msgstr ""
-#: doc/classes/CanvasItem.xml:605
+#: doc/classes/CanvasItem.xml:614
msgid "If [code]true[/code], the object draws behind its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:608
+#: doc/classes/CanvasItem.xml:617
msgid "If [code]true[/code], the object draws on top of its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:611
+#: doc/classes/CanvasItem.xml:620
msgid "The texture filtering mode to use on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:614
+#: doc/classes/CanvasItem.xml:623
msgid "The texture repeating mode to use on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:617
+#: doc/classes/CanvasItem.xml:626
msgid ""
"If [code]true[/code], the parent [CanvasItem]'s [member material] property "
"is used as this one's material."
msgstr ""
-#: doc/classes/CanvasItem.xml:620
+#: doc/classes/CanvasItem.xml:629
msgid ""
-"If [code]true[/code], this [CanvasItem] is drawn. For controls that inherit "
-"[Popup], the correct way to make them visible is to call one of the multiple "
-"[code]popup*()[/code] functions instead."
+"If [code]true[/code], this [CanvasItem] is drawn. The node is only visible "
+"if all of its antecedents are visible as well (in other words, [method "
+"is_visible_in_tree] must return [code]true[/code]).\n"
+"[b]Note:[/b] For controls that inherit [Popup], the correct way to make them "
+"visible is to call one of the multiple [code]popup*()[/code] functions "
+"instead."
msgstr ""
-#: doc/classes/CanvasItem.xml:626
+#: doc/classes/CanvasItem.xml:636
msgid ""
"Emitted when the [CanvasItem] must redraw. This can only be connected "
"realtime, as deferred will not allow drawing."
msgstr ""
-#: doc/classes/CanvasItem.xml:631
+#: doc/classes/CanvasItem.xml:641
msgid "Emitted when becoming hidden."
msgstr ""
-#: doc/classes/CanvasItem.xml:636
+#: doc/classes/CanvasItem.xml:646
msgid "Emitted when the item rect has changed."
msgstr ""
-#: doc/classes/CanvasItem.xml:641
+#: doc/classes/CanvasItem.xml:651
msgid "Emitted when the visibility (hidden/visible) changes."
msgstr ""
-#: doc/classes/CanvasItem.xml:647
+#: doc/classes/CanvasItem.xml:657
msgid ""
"The [CanvasItem]'s transform has changed. This notification is only received "
"if enabled by [method set_notify_transform] or [method "
"set_notify_local_transform]."
msgstr ""
-#: doc/classes/CanvasItem.xml:650
+#: doc/classes/CanvasItem.xml:660
msgid "The [CanvasItem] is requested to draw."
msgstr ""
-#: doc/classes/CanvasItem.xml:653
+#: doc/classes/CanvasItem.xml:663
msgid "The [CanvasItem]'s visibility has changed."
msgstr ""
-#: doc/classes/CanvasItem.xml:656
+#: doc/classes/CanvasItem.xml:666
msgid "The [CanvasItem] has entered the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:659
+#: doc/classes/CanvasItem.xml:669
msgid "The [CanvasItem] has exited the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:662 doc/classes/CanvasItem.xml:688
+#: doc/classes/CanvasItem.xml:672 doc/classes/CanvasItem.xml:698
msgid "The [CanvasItem] will inherit the filter from its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:665
+#: doc/classes/CanvasItem.xml:675
msgid ""
"The texture filter reads from the nearest pixel only. The simplest and "
"fastest method of filtering. Useful for pixel art."
msgstr ""
-#: doc/classes/CanvasItem.xml:668
+#: doc/classes/CanvasItem.xml:678
msgid ""
"The texture filter blends between the nearest four pixels. Use this for most "
"cases where you want to avoid a pixelated style."
msgstr ""
-#: doc/classes/CanvasItem.xml:671
+#: doc/classes/CanvasItem.xml:681
msgid ""
"The texture filter reads from the nearest pixel in the nearest mipmap. This "
"is the fastest way to read from textures with mipmaps."
msgstr ""
-#: doc/classes/CanvasItem.xml:674
+#: doc/classes/CanvasItem.xml:684
msgid ""
"The texture filter blends between the nearest 4 pixels and between the "
"nearest 2 mipmaps. Use this for non-pixel art textures that may be viewed at "
@@ -11217,7 +11281,7 @@ msgid ""
"smooth out pixels that are smaller than on-screen pixels."
msgstr ""
-#: doc/classes/CanvasItem.xml:677
+#: doc/classes/CanvasItem.xml:687
msgid ""
"The texture filter reads from the nearest pixel, but selects a mipmap based "
"on the angle between the surface and the camera view. This reduces artifacts "
@@ -11226,7 +11290,7 @@ msgid ""
"TEXTURE_FILTER_NEAREST_WITH_MIPMAPS] is usually more appropriate."
msgstr ""
-#: doc/classes/CanvasItem.xml:681
+#: doc/classes/CanvasItem.xml:691
msgid ""
"The texture filter blends between the nearest 4 pixels and selects a mipmap "
"based on the angle between the surface and the camera view. This reduces "
@@ -11237,21 +11301,21 @@ msgid ""
"TEXTURE_FILTER_LINEAR_WITH_MIPMAPS] is usually more appropriate."
msgstr ""
-#: doc/classes/CanvasItem.xml:691
+#: doc/classes/CanvasItem.xml:701
msgid "Texture will not repeat."
msgstr ""
-#: doc/classes/CanvasItem.xml:694
+#: doc/classes/CanvasItem.xml:704
msgid "Texture will repeat normally."
msgstr ""
-#: doc/classes/CanvasItem.xml:697
+#: doc/classes/CanvasItem.xml:707
msgid ""
"Texture will repeat in a 2x2 tiled mode, where elements at even positions "
"are mirrored."
msgstr ""
-#: doc/classes/CanvasItem.xml:700
+#: doc/classes/CanvasItem.xml:710
msgid "Represents the size of the [enum TextureRepeat] enum."
msgstr ""
@@ -12324,16 +12388,15 @@ msgid ""
msgstr ""
#: doc/classes/Color.xml:4
-msgid "Color in RGBA format with some support for ARGB format."
+msgid "Color in RGBA format using floats on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:7
msgid ""
-"A color is represented by red, green, and blue [code](r, g, b)[/code] "
-"components. Additionally, [code]a[/code] represents the alpha component, "
-"often used for transparency. Values are in floating-point and usually range "
-"from 0 to 1. Some properties (such as [member CanvasItem.modulate]) may "
-"accept values greater than 1.\n"
+"A color represented by red, green, blue, and alpha (RGBA) components. The "
+"alpha component is often used for transparency. Values are in floating-point "
+"and usually range from 0 to 1. Some properties (such as CanvasItem.modulate) "
+"may accept values greater than 1 (overbright or HDR colors).\n"
"You can also create a color from standardized color names by using [method "
"@GDScript.ColorN] or directly using the color constants defined here. The "
"standardized color set is based on the [url=https://en.wikipedia.org/wiki/"
@@ -12547,47 +12610,48 @@ msgid ""
msgstr ""
#: doc/classes/Color.xml:280
-msgid "Alpha value (range 0 to 1)."
+msgid ""
+"The color's alpha (transparency) component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:283
-msgid "Alpha value (range 0 to 255)."
+msgid "Wrapper for [member a] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:286
-msgid "Blue value (range 0 to 1)."
+msgid "The color's blue component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:289
-msgid "Blue value (range 0 to 255)."
+msgid "Wrapper for [member b] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:292
-msgid "Green value (range 0 to 1)."
+msgid "The color's green component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:295
-msgid "Green value (range 0 to 255)."
+msgid "Wrapper for [member g] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:298
-msgid "HSV hue value (range 0 to 1)."
+msgid "The HSV hue of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:301
-msgid "Red value (range 0 to 1)."
+msgid "The color's red component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:304
-msgid "Red value (range 0 to 255)."
+msgid "Wrapper for [member r] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:307
-msgid "HSV saturation value (range 0 to 1)."
+msgid "The HSV saturation of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:310
-msgid "HSV value (range 0 to 1)."
+msgid "The HSV value (brightness) of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:315
@@ -14507,23 +14571,35 @@ msgstr ""
#: doc/classes/Control.xml:859
msgid ""
"The node's scale, relative to its [member rect_size]. Change this property "
-"to scale the node around its [member rect_pivot_offset]."
-msgstr ""
-
-#: doc/classes/Control.xml:862
+"to scale the node around its [member rect_pivot_offset]. The Control's "
+"[member hint_tooltip] will also scale according to this value.\n"
+"[b]Note:[/b] This property is mainly intended to be used for animation "
+"purposes. Text inside the Control will look pixelated or blurry when the "
+"Control is scaled. To support multiple resolutions in your project, use an "
+"appropriate viewport stretch mode as described in the [url=https://docs."
+"godotengine.org/en/latest/tutorials/viewports/multiple_resolutions."
+"html]documentation[/url] instead of scaling Controls individually.\n"
+"[b]Note:[/b] If the Control node is a child of a [Container] node, the scale "
+"will be reset to [code]Vector2(1, 1)[/code] when the scene is instanced. To "
+"set the Control's scale when it's instanced, wait for one frame using "
+"[code]yield(get_tree(), \"idle_frame\")[/code] then set its [member "
+"rect_scale] property."
+msgstr ""
+
+#: doc/classes/Control.xml:864
msgid ""
"The size of the node's bounding rectangle, in pixels. [Container] nodes "
"update this property automatically."
msgstr ""
-#: doc/classes/Control.xml:865
+#: doc/classes/Control.xml:867
msgid ""
"Tells the parent [Container] nodes how they should resize and place the node "
"on the X axis. Use one of the [enum SizeFlags] constants to change the "
"flags. See the constants to learn what each does."
msgstr ""
-#: doc/classes/Control.xml:868
+#: doc/classes/Control.xml:870
msgid ""
"If the node and at least one of its neighbours uses the [constant "
"SIZE_EXPAND] size flag, the parent [Container] will let it take more or less "
@@ -14532,181 +14608,181 @@ msgid ""
"space."
msgstr ""
-#: doc/classes/Control.xml:871
+#: doc/classes/Control.xml:873
msgid ""
"Tells the parent [Container] nodes how they should resize and place the node "
"on the Y axis. Use one of the [enum SizeFlags] constants to change the "
"flags. See the constants to learn what each does."
msgstr ""
-#: doc/classes/Control.xml:874
+#: doc/classes/Control.xml:876
msgid ""
"Changing this property replaces the current [Theme] resource this node and "
"all its [Control] children use."
msgstr ""
-#: doc/classes/Control.xml:880
+#: doc/classes/Control.xml:882
msgid "Emitted when the node gains keyboard focus."
msgstr ""
-#: doc/classes/Control.xml:885
+#: doc/classes/Control.xml:887
msgid "Emitted when the node loses keyboard focus."
msgstr ""
-#: doc/classes/Control.xml:892
+#: doc/classes/Control.xml:894
msgid "Emitted when the node receives an [InputEvent]."
msgstr ""
-#: doc/classes/Control.xml:897
+#: doc/classes/Control.xml:899
msgid "Emitted when the node's minimum size changes."
msgstr ""
-#: doc/classes/Control.xml:902
+#: doc/classes/Control.xml:904
msgid ""
"Emitted when the mouse enters the control's [code]Rect[/code] area, provided "
"its [member mouse_filter] lets the event reach it."
msgstr ""
-#: doc/classes/Control.xml:907
+#: doc/classes/Control.xml:909
msgid ""
"Emitted when the mouse leaves the control's [code]Rect[/code] area, provided "
"its [member mouse_filter] lets the event reach it."
msgstr ""
-#: doc/classes/Control.xml:912
+#: doc/classes/Control.xml:914
msgid "Emitted when the control changes size."
msgstr ""
-#: doc/classes/Control.xml:917
+#: doc/classes/Control.xml:919
msgid ""
"Emitted when one of the size flags changes. See [member "
"size_flags_horizontal] and [member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:927
+#: doc/classes/Control.xml:929
msgid "The node cannot grab focus. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:930
+#: doc/classes/Control.xml:932
msgid ""
"The node can only grab focus on mouse clicks. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:933
+#: doc/classes/Control.xml:935
msgid ""
"The node can grab focus on mouse click or using the arrows and the Tab keys "
"on the keyboard. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:936
+#: doc/classes/Control.xml:938
msgid ""
"Sent when the node changes size. Use [member rect_size] to get the new size."
msgstr ""
-#: doc/classes/Control.xml:939
+#: doc/classes/Control.xml:941
msgid "Sent when the mouse pointer enters the node."
msgstr ""
-#: doc/classes/Control.xml:942
+#: doc/classes/Control.xml:944
msgid "Sent when the mouse pointer exits the node."
msgstr ""
-#: doc/classes/Control.xml:945
+#: doc/classes/Control.xml:947
msgid "Sent when the node grabs focus."
msgstr ""
-#: doc/classes/Control.xml:948
+#: doc/classes/Control.xml:950
msgid "Sent when the node loses focus."
msgstr ""
-#: doc/classes/Control.xml:951
+#: doc/classes/Control.xml:953
msgid ""
"Sent when the node's [member theme] changes, right before Godot redraws the "
"control. Happens when you call one of the [code]add_theme_*_override[/code] "
"methods."
msgstr ""
-#: doc/classes/Control.xml:954
+#: doc/classes/Control.xml:956
msgid ""
"Sent when this node is inside a [ScrollContainer] which has begun being "
"scrolled."
msgstr ""
-#: doc/classes/Control.xml:957
+#: doc/classes/Control.xml:959
msgid ""
"Sent when this node is inside a [ScrollContainer] which has stopped being "
"scrolled."
msgstr ""
-#: doc/classes/Control.xml:960
+#: doc/classes/Control.xml:962
msgid ""
"Show the system's arrow mouse cursor when the user hovers the node. Use with "
"[member mouse_default_cursor_shape]."
msgstr ""
-#: doc/classes/Control.xml:963
+#: doc/classes/Control.xml:965
msgid ""
"Show the system's I-beam mouse cursor when the user hovers the node. The I-"
"beam pointer has a shape similar to \"I\". It tells the user they can "
"highlight or insert text."
msgstr ""
-#: doc/classes/Control.xml:966
+#: doc/classes/Control.xml:968
msgid ""
"Show the system's pointing hand mouse cursor when the user hovers the node."
msgstr ""
-#: doc/classes/Control.xml:969
+#: doc/classes/Control.xml:971
msgid "Show the system's cross mouse cursor when the user hovers the node."
msgstr ""
-#: doc/classes/Control.xml:972
+#: doc/classes/Control.xml:974
msgid ""
"Show the system's wait mouse cursor, often an hourglass, when the user "
"hovers the node."
msgstr ""
-#: doc/classes/Control.xml:975
+#: doc/classes/Control.xml:977
msgid ""
"Show the system's busy mouse cursor when the user hovers the node. Often an "
"hourglass."
msgstr ""
-#: doc/classes/Control.xml:978
+#: doc/classes/Control.xml:980
msgid ""
"Show the system's drag mouse cursor, often a closed fist or a cross symbol, "
"when the user hovers the node. It tells the user they're currently dragging "
"an item, like a node in the Scene dock."
msgstr ""
-#: doc/classes/Control.xml:981
+#: doc/classes/Control.xml:983
msgid ""
"Show the system's drop mouse cursor when the user hovers the node. It can be "
"an open hand. It tells the user they can drop an item they're currently "
"grabbing, like a node in the Scene dock."
msgstr ""
-#: doc/classes/Control.xml:984
+#: doc/classes/Control.xml:986
msgid ""
"Show the system's forbidden mouse cursor when the user hovers the node. "
"Often a crossed circle."
msgstr ""
-#: doc/classes/Control.xml:987
+#: doc/classes/Control.xml:989
msgid ""
"Show the system's vertical resize mouse cursor when the user hovers the "
"node. A double-headed vertical arrow. It tells the user they can resize the "
"window or the panel vertically."
msgstr ""
-#: doc/classes/Control.xml:990
+#: doc/classes/Control.xml:992
msgid ""
"Show the system's horizontal resize mouse cursor when the user hovers the "
"node. A double-headed horizontal arrow. It tells the user they can resize "
"the window or the panel horizontally."
msgstr ""
-#: doc/classes/Control.xml:993
+#: doc/classes/Control.xml:995
msgid ""
"Show the system's window resize mouse cursor when the user hovers the node. "
"The cursor is a double-headed arrow that goes from the bottom left to the "
@@ -14714,7 +14790,7 @@ msgid ""
"horizontally and vertically."
msgstr ""
-#: doc/classes/Control.xml:996
+#: doc/classes/Control.xml:998
msgid ""
"Show the system's window resize mouse cursor when the user hovers the node. "
"The cursor is a double-headed arrow that goes from the top left to the "
@@ -14722,93 +14798,93 @@ msgid ""
"they can resize the window or the panel both horizontally and vertically."
msgstr ""
-#: doc/classes/Control.xml:999
+#: doc/classes/Control.xml:1001
msgid ""
"Show the system's move mouse cursor when the user hovers the node. It shows "
"2 double-headed arrows at a 90 degree angle. It tells the user they can move "
"a UI element freely."
msgstr ""
-#: doc/classes/Control.xml:1002
+#: doc/classes/Control.xml:1004
msgid ""
"Show the system's vertical split mouse cursor when the user hovers the node. "
"On Windows, it's the same as [constant CURSOR_VSIZE]."
msgstr ""
-#: doc/classes/Control.xml:1005
+#: doc/classes/Control.xml:1007
msgid ""
"Show the system's horizontal split mouse cursor when the user hovers the "
"node. On Windows, it's the same as [constant CURSOR_HSIZE]."
msgstr ""
-#: doc/classes/Control.xml:1008
+#: doc/classes/Control.xml:1010
msgid ""
"Show the system's help mouse cursor when the user hovers the node, a "
"question mark."
msgstr ""
-#: doc/classes/Control.xml:1011
+#: doc/classes/Control.xml:1013
msgid ""
"Snap all 4 anchors to the top-left of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1014
+#: doc/classes/Control.xml:1016
msgid ""
"Snap all 4 anchors to the top-right of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1017
+#: doc/classes/Control.xml:1019
msgid ""
"Snap all 4 anchors to the bottom-left of the parent control's bounds. Use "
"with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1020
+#: doc/classes/Control.xml:1022
msgid ""
"Snap all 4 anchors to the bottom-right of the parent control's bounds. Use "
"with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1023
+#: doc/classes/Control.xml:1025
msgid ""
"Snap all 4 anchors to the center of the left edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1026
+#: doc/classes/Control.xml:1028
msgid ""
"Snap all 4 anchors to the center of the top edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1029
+#: doc/classes/Control.xml:1031
msgid ""
"Snap all 4 anchors to the center of the right edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1032
+#: doc/classes/Control.xml:1034
msgid ""
"Snap all 4 anchors to the center of the bottom edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1035
+#: doc/classes/Control.xml:1037
msgid ""
"Snap all 4 anchors to the center of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1038
+#: doc/classes/Control.xml:1040
msgid ""
"Snap all 4 anchors to the left edge of the parent control. The left margin "
"becomes relative to the left edge and the top margin relative to the top "
"left corner of the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1041
+#: doc/classes/Control.xml:1043
msgid ""
"Snap all 4 anchors to the top edge of the parent control. The left margin "
"becomes relative to the top left corner, the top margin relative to the top "
@@ -14816,14 +14892,14 @@ msgid ""
"parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1044
+#: doc/classes/Control.xml:1046
msgid ""
"Snap all 4 anchors to the right edge of the parent control. The right margin "
"becomes relative to the right edge and the top margin relative to the top "
"right corner of the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1047
+#: doc/classes/Control.xml:1049
msgid ""
"Snap all 4 anchors to the bottom edge of the parent control. The left margin "
"becomes relative to the bottom left corner, the bottom margin relative to "
@@ -14831,19 +14907,19 @@ msgid ""
"the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1050
+#: doc/classes/Control.xml:1052
msgid ""
"Snap all 4 anchors to a vertical line that cuts the parent control in half. "
"Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1053
+#: doc/classes/Control.xml:1055
msgid ""
"Snap all 4 anchors to a horizontal line that cuts the parent control in "
"half. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1056
+#: doc/classes/Control.xml:1058
msgid ""
"Snap all 4 anchors to the respective corners of the parent control. Set all "
"4 margins to 0 after you applied this preset and the [Control] will fit its "
@@ -14851,30 +14927,30 @@ msgid ""
"editor. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1059
+#: doc/classes/Control.xml:1061
msgid "The control will be resized to its minimum size."
msgstr ""
-#: doc/classes/Control.xml:1062
+#: doc/classes/Control.xml:1064
msgid "The control's width will not change."
msgstr ""
-#: doc/classes/Control.xml:1065
+#: doc/classes/Control.xml:1067
msgid "The control's height will not change."
msgstr ""
-#: doc/classes/Control.xml:1068
+#: doc/classes/Control.xml:1070
msgid "The control's size will not change."
msgstr ""
-#: doc/classes/Control.xml:1071
+#: doc/classes/Control.xml:1073
msgid ""
"Tells the parent [Container] to expand the bounds of this node to fill all "
"the available space without pushing any other node. Use with [member "
"size_flags_horizontal] and [member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1074
+#: doc/classes/Control.xml:1076
msgid ""
"Tells the parent [Container] to let this node take all the available space "
"on the axis you flag. If multiple neighboring nodes are set to expand, "
@@ -14883,13 +14959,13 @@ msgid ""
"[member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1077
+#: doc/classes/Control.xml:1079
msgid ""
"Sets the node's size flags to both fill and expand. See the 2 constants "
"above for more information."
msgstr ""
-#: doc/classes/Control.xml:1080
+#: doc/classes/Control.xml:1082
msgid ""
"Tells the parent [Container] to center the node in itself. It centers the "
"control based on its bounding box, so it doesn't work with the fill or "
@@ -14897,7 +14973,7 @@ msgid ""
"size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1083
+#: doc/classes/Control.xml:1085
msgid ""
"Tells the parent [Container] to align the node with its end, either the "
"bottom or the right edge. It doesn't work with the fill or expand size "
@@ -14905,7 +14981,7 @@ msgid ""
"size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1086
+#: doc/classes/Control.xml:1088
msgid ""
"The control will receive mouse button input events through [method "
"_gui_input] if clicked on. And the control will receive the [signal "
@@ -14914,7 +14990,7 @@ msgid ""
"other controls. This also results in blocking signals in other controls."
msgstr ""
-#: doc/classes/Control.xml:1089
+#: doc/classes/Control.xml:1091
msgid ""
"The control will receive mouse button input events through [method "
"_gui_input] if clicked on. And the control will receive the [signal "
@@ -14926,7 +15002,7 @@ msgid ""
"not be fired."
msgstr ""
-#: doc/classes/Control.xml:1092
+#: doc/classes/Control.xml:1094
msgid ""
"The control will not receive mouse button input events through [method "
"_gui_input]. The control will also not receive the [signal mouse_entered] "
@@ -14935,25 +15011,25 @@ msgid ""
"handled automatically."
msgstr ""
-#: doc/classes/Control.xml:1095
+#: doc/classes/Control.xml:1097
msgid ""
"The control will grow to the left or top to make up if its minimum size is "
"changed to be greater than its current size on the respective axis."
msgstr ""
-#: doc/classes/Control.xml:1098
+#: doc/classes/Control.xml:1100
msgid ""
"The control will grow to the right or bottom to make up if its minimum size "
"is changed to be greater than its current size on the respective axis."
msgstr ""
-#: doc/classes/Control.xml:1101
+#: doc/classes/Control.xml:1103
msgid ""
"The control will grow in both directions equally to make up if its minimum "
"size is changed to be greater than its current size."
msgstr ""
-#: doc/classes/Control.xml:1104
+#: doc/classes/Control.xml:1106
msgid ""
"Snaps one of the 4 anchor's sides to the origin of the node's [code]Rect[/"
"code], in the top left. Use it with one of the [code]anchor_*[/code] member "
@@ -14961,7 +15037,7 @@ msgid ""
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1107
+#: doc/classes/Control.xml:1109
msgid ""
"Snaps one of the 4 anchor's sides to the end of the node's [code]Rect[/"
"code], in the bottom right. Use it with one of the [code]anchor_*[/code] "
@@ -16746,7 +16822,7 @@ msgstr ""
msgid ""
"Returns the [Texture2D] associated with the specified [enum DecalTexture]. "
"This is a convenience method, in most cases you should access the texture "
-"directly. \n"
+"directly.\n"
"For example, instead of [code]albedo_tex = $Decal.get_texture(Decal."
"TEXTURE_ALBEDO)[/code], use [code]albedo_tex = $Decal.texture_albedo[/"
"code].\n"
@@ -16762,7 +16838,7 @@ msgstr ""
msgid ""
"Sets the [Texture2D] associated with the specified [enum DecalTexture]. This "
"is a convenience method, in most cases you should access the texture "
-"directly. \n"
+"directly.\n"
"For example, instead of [code]$Decal.set_texture(Decal.TEXTURE_ALBEDO, "
"albedo_tex)[/code], use [code]$Decal.texture_albedo = albedo_tex[/code].\n"
"One case where this is better than accessing the texture directly is when "
@@ -17111,7 +17187,7 @@ msgstr ""
msgid "The light's shadow rendering algorithm. See [enum ShadowMode]."
msgstr ""
-#: doc/classes/DirectionalLight3D.xml:31 doc/classes/RenderingServer.xml:3254
+#: doc/classes/DirectionalLight3D.xml:31 doc/classes/RenderingServer.xml:3250
msgid ""
"Sets the size of the directional shadow pancake. The pancake offsets the "
"start of the shadow's camera frustum to provide a higher effective depth "
@@ -17185,10 +17261,10 @@ msgstr ""
msgid ""
"Directory type. It is used to manage directories and their content (not "
"restricted to the project folder).\n"
-"When creating a new [Directory], its default opened directory will be "
-"[code]res://[/code]. This may change in the future, so it is advised to "
-"always use [method open] to initialize your [Directory] where you want to "
-"operate, with explicit error checking.\n"
+"When creating a new [Directory], it must be explicitly opened using [method "
+"open] before most methods can be used. However, [method file_exists] and "
+"[method dir_exists] can be used without opening a directory. If so, they use "
+"a path relative to [code]res://[/code].\n"
"Here is an example on how to iterate through the files of a directory:\n"
"[codeblock]\n"
"func dir_contents(path):\n"
@@ -17207,7 +17283,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Directory.xml:27 doc/classes/File.xml:25
+#: doc/classes/Directory.xml:27 doc/classes/File.xml:26
msgid ""
"https://docs.godotengine.org/en/latest/getting_started/step_by_step/"
"filesystem.html"
@@ -17241,41 +17317,43 @@ msgstr ""
#: doc/classes/Directory.xml:65
msgid ""
"Returns whether the target directory exists. The argument can be relative to "
-"the current directory, or an absolute path."
+"the current directory, or an absolute path.\n"
+"If the [Directory] is not open, the path is relative to [code]res://[/code]."
msgstr ""
-#: doc/classes/Directory.xml:74
+#: doc/classes/Directory.xml:75
msgid ""
"Returns whether the target file exists. The argument can be relative to the "
-"current directory, or an absolute path."
+"current directory, or an absolute path.\n"
+"If the [Directory] is not open, the path is relative to [code]res://[/code]."
msgstr ""
-#: doc/classes/Directory.xml:81
+#: doc/classes/Directory.xml:83
msgid ""
"Returns the absolute path to the currently opened directory (e.g. "
"[code]res://folder[/code] or [code]C:\\tmp\\folder[/code])."
msgstr ""
-#: doc/classes/Directory.xml:88
+#: doc/classes/Directory.xml:90
msgid ""
"Returns the currently opened directory's drive index. See [method get_drive] "
"to convert returned index to the name of the drive."
msgstr ""
-#: doc/classes/Directory.xml:97
+#: doc/classes/Directory.xml:99
msgid ""
"On Windows, returns the name of the drive (partition) passed as an argument "
"(e.g. [code]C:[/code]). On other platforms, or if the requested drive does "
"not existed, the method returns an empty String."
msgstr ""
-#: doc/classes/Directory.xml:104
+#: doc/classes/Directory.xml:106
msgid ""
"On Windows, returns the number of drives (partitions) mounted on the current "
"filesystem. On other platforms, the method returns 0."
msgstr ""
-#: doc/classes/Directory.xml:111
+#: doc/classes/Directory.xml:113
msgid ""
"Returns the next element (file or directory) in the current directory "
"(including [code].[/code] and [code]..[/code], unless "
@@ -17286,14 +17364,14 @@ msgid ""
"mandatory in such a case)."
msgstr ""
-#: doc/classes/Directory.xml:119
+#: doc/classes/Directory.xml:121
msgid ""
"On UNIX desktop systems, returns the available space on the current "
"directory's disk. On other platforms, this information is not available and "
"the method returns 0 or -1."
msgstr ""
-#: doc/classes/Directory.xml:130
+#: doc/classes/Directory.xml:132
msgid ""
"Initializes the stream used to list all files and directories using the "
"[method get_next] function, closing the current opened stream if needed. "
@@ -17305,13 +17383,13 @@ msgid ""
"out."
msgstr ""
-#: doc/classes/Directory.xml:139
+#: doc/classes/Directory.xml:141
msgid ""
"Closes the current stream opened with [method list_dir_begin] (whether it "
"has been fully processed with [method get_next] or not does not matter)."
msgstr ""
-#: doc/classes/Directory.xml:148
+#: doc/classes/Directory.xml:150
msgid ""
"Creates a directory. The argument can be relative to the current directory, "
"or an absolute path. The target directory should be placed in an already "
@@ -17320,7 +17398,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:158
+#: doc/classes/Directory.xml:160
msgid ""
"Creates a target directory and all necessary intermediate directories in its "
"path, by calling [method make_dir] recursively. The argument can be relative "
@@ -17328,7 +17406,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:168
+#: doc/classes/Directory.xml:170
msgid ""
"Opens an existing directory of the filesystem. The [code]path[/code] "
"argument can be within the project tree ([code]res://folder[/code]), the "
@@ -17337,7 +17415,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:178
+#: doc/classes/Directory.xml:180
msgid ""
"Deletes the target file or an empty directory. The argument can be relative "
"to the current directory, or an absolute path. If the target directory is "
@@ -17345,7 +17423,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:190
+#: doc/classes/Directory.xml:192
msgid ""
"Renames (move) the [code]from[/code] file to the [code]to[/code] "
"destination. Both arguments should be paths to files, either relative or "
@@ -17386,6 +17464,53 @@ msgid ""
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
+#: doc/classes/DisplayServer.xml:530
+msgid ""
+"Return the greatest scale factor of all screens.\n"
+"[b]Note:[/b] On macOS returned value is [code]2.0[/code] if there is at "
+"least one hiDPI (Retina) screen in the system, and [code]1.0[/code] in all "
+"other cases.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:557
+msgid ""
+"Return the scale factor of the specified screen by index.\n"
+"[b]Note:[/b] On macOS returned value is [code]2.0[/code] for hiDPI (Retina) "
+"screen, and [code]1.0[/code] for all other cases.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:630
+msgid ""
+"Returns the on-screen keyboard's height in pixels. Returns 0 if there is no "
+"keyboard or if it is currently hidden."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:637
+msgid "Hides the virtual keyboard if it is shown, does nothing otherwise."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:656
+msgid ""
+"Shows the virtual keyboard if the platform has one.\n"
+"[code]existing_text[/code] parameter is useful for implementing your own "
+"[LineEdit] or [TextEdit], as it tells the virtual keyboard what text has "
+"already been typed (the virtual keyboard uses it for auto-correct and "
+"predictions).\n"
+"[code]position[/code] parameter is the screen space [Rect2] of the edited "
+"text.\n"
+"[code]multiline[/code] parameter needs to be set to [code]true[/code] to be "
+"able to enter multiple lines of text, as in [TextEdit].\n"
+"[code]max_length[/code] limits the number of characters that can be entered "
+"if different from [code]-1[/code].\n"
+"[code]cursor_start[/code] can optionally define the current text cursor "
+"position if [code]cursor_end[/code] is not set.\n"
+"[code]cursor_start[/code] and [code]cursor_end[/code] can optionally define "
+"the current text selection.\n"
+"[b]Note:[/b] This method is implemented on Android, iOS and UWP."
+msgstr ""
+
#: doc/classes/DTLSServer.xml:4
msgid "Helper class to implement a DTLS server."
msgstr ""
@@ -17506,54 +17631,62 @@ msgstr ""
msgid "Adds a fallback font."
msgstr ""
-#: doc/classes/DynamicFont.xml:35
+#: doc/classes/DynamicFont.xml:33
+msgid ""
+"Returns a string containing all the characters available in the main and all "
+"the fallback fonts.\n"
+"If a given character is included in more than one font, it appears only once "
+"in the returned string."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:43
msgid "Returns the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:42
+#: doc/classes/DynamicFont.xml:50
msgid "Returns the number of fallback fonts."
msgstr ""
-#: doc/classes/DynamicFont.xml:51
+#: doc/classes/DynamicFont.xml:59
msgid ""
"Returns the spacing for the given [code]type[/code] (see [enum SpacingType])."
msgstr ""
-#: doc/classes/DynamicFont.xml:60
+#: doc/classes/DynamicFont.xml:68
msgid "Removes the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:71
+#: doc/classes/DynamicFont.xml:79
msgid "Sets the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:82
+#: doc/classes/DynamicFont.xml:90
msgid ""
"Sets the spacing for [code]type[/code] (see [enum SpacingType]) to "
"[code]value[/code] in pixels (not relative to the font size)."
msgstr ""
-#: doc/classes/DynamicFont.xml:88
+#: doc/classes/DynamicFont.xml:96
msgid "Extra spacing at the bottom in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:91
+#: doc/classes/DynamicFont.xml:99
msgid "Extra character spacing in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:94
+#: doc/classes/DynamicFont.xml:102
msgid "Extra space spacing in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:97
+#: doc/classes/DynamicFont.xml:105
msgid "Extra spacing at the top in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:100
+#: doc/classes/DynamicFont.xml:108
msgid "The font data."
msgstr ""
-#: doc/classes/DynamicFont.xml:103
+#: doc/classes/DynamicFont.xml:111
msgid ""
"The font outline's color.\n"
"[b]Note:[/b] It's recommended to leave this at the default value so that you "
@@ -17562,27 +17695,27 @@ msgid ""
"outline modulate theme item."
msgstr ""
-#: doc/classes/DynamicFont.xml:107
+#: doc/classes/DynamicFont.xml:115
msgid "The font outline's thickness in pixels (not relative to the font size)."
msgstr ""
-#: doc/classes/DynamicFont.xml:110
+#: doc/classes/DynamicFont.xml:118
msgid "The font size in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:115
+#: doc/classes/DynamicFont.xml:123
msgid "Spacing at the top."
msgstr ""
-#: doc/classes/DynamicFont.xml:118
+#: doc/classes/DynamicFont.xml:126
msgid "Spacing at the bottom."
msgstr ""
-#: doc/classes/DynamicFont.xml:121
+#: doc/classes/DynamicFont.xml:129
msgid "Character spacing."
msgstr ""
-#: doc/classes/DynamicFont.xml:124
+#: doc/classes/DynamicFont.xml:132
msgid "Space spacing."
msgstr ""
@@ -17964,7 +18097,12 @@ msgstr ""
msgid "Remitted if a resource is reimported."
msgstr ""
-#: doc/classes/EditorFileSystem.xml:106
+#: doc/classes/EditorFileSystem.xml:100
+msgid ""
+"Emitted if at least one resource is reloaded when the filesystem is scanned."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:107
msgid "Emitted if the source of any imported file changed."
msgstr ""
@@ -18006,29 +18144,43 @@ msgstr ""
msgid "Returns the path to the file at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:86
+#: doc/classes/EditorFileSystemDirectory.xml:70
+msgid ""
+"Returns the base class of the script class defined in the file at index "
+"[code]idx[/code]. If the file doesn't define a script class using the "
+"[code]class_name[/code] syntax, this will return an empty string."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:79
+msgid ""
+"Returns the name of the script class defined in the file at index [code]idx[/"
+"code]. If the file doesn't define a script class using the [code]class_name[/"
+"code] syntax, this will return an empty string."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:88
msgid "Returns the file extension of the file at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:93
+#: doc/classes/EditorFileSystemDirectory.xml:95
msgid "Returns the name of this directory."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:100
+#: doc/classes/EditorFileSystemDirectory.xml:102
msgid ""
"Returns the parent directory for this directory or [code]null[/code] if "
"called on a directory at [code]res://[/code] or [code]user://[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:107
+#: doc/classes/EditorFileSystemDirectory.xml:109
msgid "Returns the path to this directory."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:116
+#: doc/classes/EditorFileSystemDirectory.xml:118
msgid "Returns the subdirectory at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:123
+#: doc/classes/EditorFileSystemDirectory.xml:125
msgid "Returns the number of subdirectories in this directory."
msgstr ""
@@ -18119,45 +18271,72 @@ msgstr ""
msgid "Gets the unique name of the importer."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:92
+#: doc/classes/EditorImportPlugin.xml:86
+msgid ""
+"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. For example:\n"
+"[codeblock]\n"
+"func get_option_visibility(option, options):\n"
+" # Only show the lossy quality setting if the compression mode is set to "
+"\"Lossy\".\n"
+" if option == \"compress/lossy_quality\" and options.has(\"compress/mode"
+"\"):\n"
+" return int(options[\"compress/mode\"]) == COMPRESS_LOSSY\n"
+"\n"
+" return true\n"
+"[/codeblock]\n"
+"Return [code]true[/code] to make all options always visible."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:102
msgid ""
"Gets the number of initial presets defined by the plugin. Use [method "
"get_import_options] to get the default options for the preset and [method "
"get_preset_name] to get the name of the preset."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:101
+#: doc/classes/EditorImportPlugin.xml:111
msgid "Gets the name of the options preset at this index."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:108
+#: doc/classes/EditorImportPlugin.xml:118
msgid ""
"Gets the priority of this plugin for the recognized extension. Higher "
"priority plugins will be preferred. The default priority is [code]1.0[/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:115
+#: doc/classes/EditorImportPlugin.xml:125
msgid ""
"Gets the list of file extensions to associate with this loader (case-"
"insensitive). e.g. [code][\"obj\"][/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:122
+#: doc/classes/EditorImportPlugin.xml:132
msgid ""
"Gets the Godot resource type associated with this loader. e.g. [code]\"Mesh"
"\"[/code] or [code]\"Animation\"[/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:129
+#: doc/classes/EditorImportPlugin.xml:139
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:136
+#: doc/classes/EditorImportPlugin.xml:146
msgid "Gets the name to display in the import window."
msgstr ""
+#: doc/classes/EditorImportPlugin.xml:163
+msgid ""
+"Imports [code]source_file[/code] into [code]save_path[/code] with the import "
+"[code]options[/code] specified. The [code]platform_variants[/code] and "
+"[code]gen_files[/code] arrays will be modified by this function.\n"
+"This method must be overridden to do the actual importing work. See this "
+"class' description for an example of overriding this method."
+msgstr ""
+
#: doc/classes/EditorInspector.xml:4
msgid "A tab used to edit properties of the selected node."
msgstr ""
@@ -18173,6 +18352,58 @@ msgid ""
"the singleton using [method EditorInterface.get_inspector]."
msgstr ""
+#: doc/classes/EditorInspector.xml:17
+msgid ""
+"Refreshes the inspector.\n"
+"[b]Note:[/b] To save on CPU resources, calling this method will do nothing "
+"if the time specified in [code]docks/property_editor/auto_refresh_interval[/"
+"code] editor setting hasn't passed yet since this method was last called. "
+"(By default, this interval is set to 0.3 seconds.)"
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:30
+msgid ""
+"Emitted when the Edit button of an [Object] has been pressed in the "
+"inspector. This is mainly used in the remote scene tree inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:37
+msgid "Emitted when a property is removed from the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:44
+msgid "Emitted when a property is edited in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:51
+msgid ""
+"Emitted when a property is keyed in the inspector. Properties can be keyed "
+"by clicking the \"key\" icon next to a property when the Animation panel is "
+"toggled."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:58
+msgid "Emitted when a property is selected in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:67
+msgid ""
+"Emitted when a boolean property is toggled in the inspector.\n"
+"[b]Note:[/b] This signal is never emitted if the internal [code]autoclear[/"
+"code] property enabled. Since this property is always enabled in the editor "
+"inspector, this signal is never emitted by the editor itself."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:77
+msgid "Emitted when a resource is selected in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:82
+msgid ""
+"Emitted when a property that requires a restart to be applied is edited in "
+"the inspector. This is only used in the Project Settings and Editor Settings."
+msgstr ""
+
#: doc/classes/EditorInspectorPlugin.xml:4
msgid "Plugin for adding custom property editors on inspector."
msgstr ""
@@ -18251,91 +18482,155 @@ msgstr ""
#: doc/classes/EditorInterface.xml:26
msgid ""
-"Returns the main container of Godot editor's window. You can use it, for "
-"example, to retrieve the size of the container and place your controls "
+"Returns the main container of Godot editor's window. For example, you can "
+"use it to retrieve the size of the container and place your controls "
"accordingly."
msgstr ""
-#: doc/classes/EditorInterface.xml:39
+#: doc/classes/EditorInterface.xml:33
+msgid "Returns the current path being viewed in the [FileSystemDock]."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:40
msgid "Returns the edited (current) scene's root [Node]."
msgstr ""
-#: doc/classes/EditorInterface.xml:46
-msgid "Returns the [EditorSettings]."
+#: doc/classes/EditorInterface.xml:47
+msgid "Returns the editor's [EditorSettings] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:53
-msgid "Returns the editor [Viewport]."
+#: doc/classes/EditorInterface.xml:54
+msgid ""
+"Returns the main editor control. Use this as a parent for main screens.\n"
+"[b]Note:[/b] This returns the main editor control containing the whole "
+"editor, not the 2D or 3D viewports specifically."
msgstr ""
-#: doc/classes/EditorInterface.xml:72
+#: doc/classes/EditorInterface.xml:62
+msgid "Returns the editor's [FileSystemDock] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:69
+msgid "Returns the editor's [EditorInspector] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:76
msgid "Returns an [Array] with the file paths of the currently opened scenes."
msgstr ""
-#: doc/classes/EditorInterface.xml:79
-msgid "Returns the [EditorFileSystem]."
+#: doc/classes/EditorInterface.xml:83
+msgid ""
+"Returns the name of the scene that is being played. If no scene is currently "
+"being played, returns an empty string."
msgstr ""
-#: doc/classes/EditorInterface.xml:86
-msgid "Returns the [EditorResourcePreview]."
+#: doc/classes/EditorInterface.xml:90
+msgid "Returns the editor's [EditorFileSystem] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:93
-msgid "Returns the [ScriptEditor]."
+#: doc/classes/EditorInterface.xml:97
+msgid "Returns the editor's [EditorResourcePreview] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:106
-msgid "Returns the [EditorSelection]."
+#: doc/classes/EditorInterface.xml:104
+msgid "Returns the editor's [ScriptEditor] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:117
+#: doc/classes/EditorInterface.xml:111
msgid ""
-"Shows the given property on the given [code]object[/code] in the Editor's "
+"Returns the path of the directory currently selected in the "
+"[FileSystemDock]. If a file is selected, its base directory will be returned "
+"using [method String.get_base_dir] instead."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:118
+msgid "Returns the editor's [EditorSelection] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:129
+msgid ""
+"Shows the given property on the given [code]object[/code] in the editor's "
"Inspector dock."
msgstr ""
-#: doc/classes/EditorInterface.xml:126
+#: doc/classes/EditorInterface.xml:136
msgid ""
-"Returns the enabled status of a plugin. The plugin name is the same as its "
-"directory name."
+"Returns [code]true[/code] if a scene is currently being played, [code]false[/"
+"code] otherwise. Paused scenes are considered as being played."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:145
+msgid ""
+"Returns [code]true[/code] if the specified [code]plugin[/code] is enabled. "
+"The plugin name is the same as its directory name."
msgstr ""
-#: doc/classes/EditorInterface.xml:137
+#: doc/classes/EditorInterface.xml:156
msgid ""
"Returns mesh previews rendered at the given size as an [Array] of "
"[Texture2D]s."
msgstr ""
-#: doc/classes/EditorInterface.xml:146
+#: doc/classes/EditorInterface.xml:165
msgid "Opens the scene at the given path."
msgstr ""
-#: doc/classes/EditorInterface.xml:155
+#: doc/classes/EditorInterface.xml:172
+msgid "Plays the currently active scene."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:181
+msgid "Plays the scene specified by its filepath."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:188
+msgid "Plays the main scene."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:197
msgid "Reloads the scene at the given path."
msgstr ""
-#: doc/classes/EditorInterface.xml:162
+#: doc/classes/EditorInterface.xml:204
msgid ""
"Saves the scene. Returns either [code]OK[/code] or [code]ERR_CANT_CREATE[/"
"code] (see [@GlobalScope] constants)."
msgstr ""
-#: doc/classes/EditorInterface.xml:173
+#: doc/classes/EditorInterface.xml:215
msgid "Saves the scene as a file at [code]path[/code]."
msgstr ""
-#: doc/classes/EditorInterface.xml:182
+#: doc/classes/EditorInterface.xml:224
msgid ""
"Selects the file, with the path provided by [code]file[/code], in the "
"FileSystem dock."
msgstr ""
-#: doc/classes/EditorInterface.xml:201
+#: doc/classes/EditorInterface.xml:233
+msgid ""
+"Sets the editor's current main screen to the one specified in [code]name[/"
+"code]. [code]name[/code] must match the text of the tab in question exactly "
+"([code]2D[/code], [code]3D[/code], [code]Script[/code], [code]AssetLib[/"
+"code])."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:244
msgid ""
"Sets the enabled status of a plugin. The plugin name is the same as its "
"directory name."
msgstr ""
+#: doc/classes/EditorInterface.xml:251
+msgid "Stops the scene that is currently playing."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:257
+msgid ""
+"If [code]true[/code], enables distraction-free mode which hides side docks "
+"to increase the space available for the main view."
+msgstr ""
+
#: doc/classes/EditorNode3DGizmo.xml:4
msgid "Custom gizmo for editing Node3D objects."
msgstr ""
@@ -18347,14 +18642,20 @@ msgid ""
"information."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:26
+#: doc/classes/EditorNode3DGizmo.xml:18
+msgid ""
+"Adds the specified [code]segments[/code] to the gizmo's collision shape for "
+"picking. Call this function during [method redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:27
msgid ""
"Adds collision triangles to the gizmo for picking. A [TriangleMesh] can be "
"generated from a regular [Mesh] too. Call this function during [method "
"redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:41
+#: doc/classes/EditorNode3DGizmo.xml:42
msgid ""
"Adds a list of handles (points) which can be used to deform the object being "
"edited.\n"
@@ -18362,20 +18663,33 @@ msgid ""
"handles. Call this function during [method redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:57
+#: doc/classes/EditorNode3DGizmo.xml:58
msgid ""
"Adds lines to the gizmo (as sets of 2 points), with a given material. The "
"lines are used for visualizing the gizmo. Call this function during [method "
"redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:84
+#: doc/classes/EditorNode3DGizmo.xml:73
+msgid ""
+"Adds a mesh to the gizmo with the specified [code]billboard[/code] state, "
+"[code]skeleton[/code] and [code]material[/code]. If [code]billboard[/code] "
+"is [code]true[/code], the mesh will rotate to always face the camera. Call "
+"this function during [method redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:86
msgid ""
"Adds an unscaled billboard for visualization. Call this function during "
"[method redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:103
+#: doc/classes/EditorNode3DGizmo.xml:93
+msgid ""
+"Removes everything in the gizmo including meshes, collisions and handles."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:106
msgid ""
"Commit a handle being edited (handles must have been previously added by "
"[method add_handles]).\n"
@@ -18383,40 +18697,42 @@ msgid ""
"restore the edited value to the original is provided."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:113
+#: doc/classes/EditorNode3DGizmo.xml:116
msgid ""
"Gets the name of an edited handle (handles must have been previously added "
"by [method add_handles]).\n"
"Handles can be named for reference to the user when editing."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:123
+#: doc/classes/EditorNode3DGizmo.xml:126
msgid ""
"Gets actual value of a handle. This value can be anything and used for "
"eventually undoing the motion when calling [method commit_handle]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:130
+#: doc/classes/EditorNode3DGizmo.xml:133
msgid ""
"Returns the [EditorNode3DGizmoPlugin] that owns this gizmo. It's useful to "
"retrieve materials using [method EditorNode3DGizmoPlugin.get_material]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:137
+#: doc/classes/EditorNode3DGizmo.xml:140
msgid "Returns the Node3D node associated with this gizmo."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:146
-msgid "Gets whether a handle is highlighted or not."
+#: doc/classes/EditorNode3DGizmo.xml:149
+msgid ""
+"Returns [code]true[/code] if the handle at index [code]index[/code] is "
+"highlighted by being hovered with the mouse."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:153
+#: doc/classes/EditorNode3DGizmo.xml:156
msgid ""
-"This function is called when the Node3D this gizmo refers to changes (the "
+"This function is called when the [Node3D] this gizmo refers to changes (the "
"[method Node3D.update_gizmo] is called)."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:166
+#: doc/classes/EditorNode3DGizmo.xml:169
msgid ""
"This function is used when the user drags a gizmo handle (previously added "
"with [method add_handles]) in screen coordinates.\n"
@@ -18424,6 +18740,18 @@ msgid ""
"raycasts."
msgstr ""
+#: doc/classes/EditorNode3DGizmo.xml:179
+msgid ""
+"Sets the gizmo's hidden state. If [code]true[/code], the gizmo will be "
+"hidden. If [code]false[/code], it will be shown."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:188
+msgid ""
+"Sets the reference [Node3D] node for the gizmo. [code]node[/code] must "
+"inherit from [Node3D]."
+msgstr ""
+
#: doc/classes/EditorNode3DGizmoPlugin.xml:4
msgid "Used by the editor to define Node3D gizmo types."
msgstr ""
@@ -18516,7 +18844,17 @@ msgid ""
"visibility menu."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:150
+#: doc/classes/EditorNode3DGizmoPlugin.xml:142
+msgid ""
+"Override this method to set the gizmo's priority. Higher values correspond "
+"to higher priority. If a gizmo with higher priority conflicts with another "
+"gizmo, only the gizmo with higher priority will be used.\n"
+"All built-in editor gizmos return a priority of [code]-1[/code]. If not "
+"overridden, this method will return [code]0[/code], which means custom "
+"gizmos will automatically override built-in gizmos."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:152
msgid ""
"Override this method to define which Node3D nodes have a gizmo from this "
"plugin. Whenever a [Node3D] node is added to a scene this method is called, "
@@ -18524,25 +18862,25 @@ msgid ""
"assigned and is added to this plugin's list of active gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:161
+#: doc/classes/EditorNode3DGizmoPlugin.xml:163
msgid ""
"Gets whether a handle is highlighted or not. Called for this plugin's active "
"gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:168
+#: doc/classes/EditorNode3DGizmoPlugin.xml:170
msgid ""
"Override this method to define whether Node3D with this gizmo should be "
"selecteble even when the gizmo is hidden."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:177
+#: doc/classes/EditorNode3DGizmoPlugin.xml:179
msgid ""
"Callback to redraw the provided gizmo. Called for this plugin's active "
"gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:192
+#: doc/classes/EditorNode3DGizmoPlugin.xml:194
msgid ""
"Update the value of a handle after it has been updated. Called for this "
"plugin's active gizmos."
@@ -18629,7 +18967,13 @@ msgid ""
"should be cleaned up using [code]remove_tool_menu_item(name)[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:149
+#: doc/classes/EditorPlugin.xml:151
+msgid ""
+"Registers a custom translation parser plugin for extracting translatable "
+"strings from custom files."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:158
msgid ""
"This method is called when the editor is about to save the project, switch "
"to another tab, etc. It asks the plugin to apply any pending state changes "
@@ -18638,32 +18982,32 @@ msgid ""
"must apply the shader code being written by the user to the object."
msgstr ""
-#: doc/classes/EditorPlugin.xml:163
+#: doc/classes/EditorPlugin.xml:172
msgid ""
"Clear all the state and reset the object being edited to zero. This ensures "
"your plugin does not keep editing a currently existing node, or a node from "
"the wrong scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:170
+#: doc/classes/EditorPlugin.xml:179
msgid ""
"Called by the engine when the user disables the [EditorPlugin] in the Plugin "
"tab of the project settings window."
msgstr ""
-#: doc/classes/EditorPlugin.xml:179
+#: doc/classes/EditorPlugin.xml:188
msgid ""
"This function is used for plugins that edit specific object types (nodes or "
"resources). It requests the editor to edit the given object."
msgstr ""
-#: doc/classes/EditorPlugin.xml:186
+#: doc/classes/EditorPlugin.xml:195
msgid ""
"Called by the engine when the user enables the [EditorPlugin] in the Plugin "
"tab of the project settings window."
msgstr ""
-#: doc/classes/EditorPlugin.xml:211
+#: doc/classes/EditorPlugin.xml:220
msgid ""
"Called when there is a root node in the current edited scene, [method "
"handles] is implemented and an [InputEvent] happens in the 2D viewport. "
@@ -18688,7 +19032,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:237
+#: doc/classes/EditorPlugin.xml:246
msgid ""
"Called when there is a root node in the current edited scene, [method "
"handles] is implemented and an [InputEvent] happens in the 3D viewport. "
@@ -18713,20 +19057,20 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:259
+#: doc/classes/EditorPlugin.xml:268
msgid ""
"This is for editors that edit script-based objects. You can return a list of "
"breakpoints in the format ([code]script:line[/code]), for example: "
"[code]res://path_to_script.gd:25[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:266
+#: doc/classes/EditorPlugin.xml:275
msgid ""
"Returns the [EditorInterface] object that gives you control over Godot "
"editor's window and its functionalities."
msgstr ""
-#: doc/classes/EditorPlugin.xml:273
+#: doc/classes/EditorPlugin.xml:282
msgid ""
"Override this method in your plugin to return a [Texture2D] in order to give "
"it an icon.\n"
@@ -18744,7 +19088,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:289
+#: doc/classes/EditorPlugin.xml:298
msgid ""
"Override this method in your plugin to provide the name of the plugin when "
"displayed in the Godot editor.\n"
@@ -18752,33 +19096,33 @@ msgid ""
"of the \"2D\", \"3D\", \"Script\", and \"AssetLib\" buttons."
msgstr ""
-#: doc/classes/EditorPlugin.xml:297
+#: doc/classes/EditorPlugin.xml:306
msgid ""
"Gets the Editor's dialogue used for making scripts.\n"
"[b]Note:[/b] Users can configure it before use."
msgstr ""
-#: doc/classes/EditorPlugin.xml:305
+#: doc/classes/EditorPlugin.xml:314
msgid ""
"Gets the state of your plugin editor. This is used when saving the scene (so "
"state is kept when opening it again) and for switching tabs (so state can be "
"restored when the tab returns)."
msgstr ""
-#: doc/classes/EditorPlugin.xml:312
+#: doc/classes/EditorPlugin.xml:321
msgid ""
"Gets the undo/redo object. Most actions in the editor can be undoable, so "
"use this object to make sure this happens when it's worth it."
msgstr ""
-#: doc/classes/EditorPlugin.xml:321
+#: doc/classes/EditorPlugin.xml:330
msgid ""
"Gets the GUI layout of the plugin. This is used to save the project's editor "
"layout when [method queue_save_layout] is called or the editor layout was "
"changed(For example changing the position of a dock)."
msgstr ""
-#: doc/classes/EditorPlugin.xml:330
+#: doc/classes/EditorPlugin.xml:339
msgid ""
"Implement this function if your plugin edits a specific type of object "
"(Resource or Node). If you return [code]true[/code], then you will get the "
@@ -18788,14 +19132,14 @@ msgid ""
"be called too."
msgstr ""
-#: doc/classes/EditorPlugin.xml:337
+#: doc/classes/EditorPlugin.xml:346
msgid ""
"Returns [code]true[/code] if this is a main screen editor plugin (it goes in "
"the workspace selector together with [b]2D[/b], [b]3D[/b], [b]Script[/b] and "
"[b]AssetLib[/b])."
msgstr ""
-#: doc/classes/EditorPlugin.xml:360
+#: doc/classes/EditorPlugin.xml:369
msgid ""
"This function will be called when the editor is requested to become visible. "
"It is used for plugins that edit a specific object type.\n"
@@ -18803,85 +19147,89 @@ msgid ""
"manually."
msgstr ""
-#: doc/classes/EditorPlugin.xml:368
+#: doc/classes/EditorPlugin.xml:377
msgid "Queue save the project's editor layout."
msgstr ""
-#: doc/classes/EditorPlugin.xml:377
+#: doc/classes/EditorPlugin.xml:386
msgid "Removes an Autoload [code]name[/code] from the list."
msgstr ""
-#: doc/classes/EditorPlugin.xml:386
+#: doc/classes/EditorPlugin.xml:395
msgid ""
"Removes the control from the bottom panel. You have to manually [method Node."
"queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:397
+#: doc/classes/EditorPlugin.xml:406
msgid ""
"Removes the control from the specified container. You have to manually "
"[method Node.queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:406
+#: doc/classes/EditorPlugin.xml:415
msgid ""
"Removes the control from the dock. You have to manually [method Node."
"queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:415
+#: doc/classes/EditorPlugin.xml:424
msgid "Removes a custom type added by [method add_custom_type]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:464
+#: doc/classes/EditorPlugin.xml:473
msgid "Removes a menu [code]name[/code] from [b]Project > Tools[/b]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:471
+#: doc/classes/EditorPlugin.xml:482
+msgid "Removes a registered custom translation parser plugin."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:489
msgid ""
"This method is called after the editor saves the project or when it's "
"closed. It asks the plugin to save edited external scenes/resources."
msgstr ""
-#: doc/classes/EditorPlugin.xml:484
+#: doc/classes/EditorPlugin.xml:502
msgid ""
"Use this method if you always want to receive inputs from 3D view screen "
"inside [method forward_spatial_gui_input]. It might be especially usable if "
"your plugin will want to use raycast in the scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:493
+#: doc/classes/EditorPlugin.xml:511
msgid "Restore the state saved by [method get_state]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:502
+#: doc/classes/EditorPlugin.xml:520
msgid "Restore the plugin GUI layout saved by [method get_window_layout]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:509
+#: doc/classes/EditorPlugin.xml:527
msgid "Updates the overlays of the editor (2D/3D) viewport."
msgstr ""
-#: doc/classes/EditorPlugin.xml:518
+#: doc/classes/EditorPlugin.xml:536
msgid ""
"Emitted when user changes the workspace ([b]2D[/b], [b]3D[/b], [b]Script[/"
"b], [b]AssetLib[/b]). Also works with custom screens defined by plugins."
msgstr ""
-#: doc/classes/EditorPlugin.xml:531
+#: doc/classes/EditorPlugin.xml:549
msgid ""
"Emitted when the scene is changed in the editor. The argument will return "
"the root node of the scene that has just become active. If this scene is new "
"and empty, the argument will be [code]null[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:538
+#: doc/classes/EditorPlugin.xml:556
msgid ""
"Emitted when user closes a scene. The argument is file path to a closed "
"scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:584
+#: doc/classes/EditorPlugin.xml:602
msgid "Represents the size of the [enum DockSlot] enum."
msgstr ""
@@ -18936,64 +19284,83 @@ msgid "When this virtual function is called, you must update your editor."
msgstr ""
#: doc/classes/EditorProperty.xml:76
-msgid "Used by the inspector, set when property is checkable."
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is "
+"checkable."
msgstr ""
#: doc/classes/EditorProperty.xml:79
-msgid "Used by the inspector, when the property is checked."
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is checked."
msgstr ""
-#: doc/classes/EditorProperty.xml:84
-msgid "Used by the inspector, when the property must draw with error color."
+#: doc/classes/EditorProperty.xml:82
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property can be "
+"deleted by the user."
msgstr ""
-#: doc/classes/EditorProperty.xml:87
-msgid "Used by the inspector, when the property can add keys for animation."
+#: doc/classes/EditorProperty.xml:85
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property must draw "
+"with error color. This is used for editable children's properties."
msgstr ""
-#: doc/classes/EditorProperty.xml:90
-msgid "Sets this property to change the label (if you want to show one)."
+#: doc/classes/EditorProperty.xml:88
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property can add "
+"keys for animation."
msgstr ""
-#: doc/classes/EditorProperty.xml:93
-msgid "Used by the inspector, when the property is read-only."
+#: doc/classes/EditorProperty.xml:91
+msgid "Set this property to change the label (if you want to show one)."
msgstr ""
-#: doc/classes/EditorProperty.xml:103
+#: doc/classes/EditorProperty.xml:94
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is read-"
+"only."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:104
msgid ""
"Emit it if you want multiple properties modified at the same time. Do not "
"use if added via [method EditorInspectorPlugin.parse_property]."
msgstr ""
-#: doc/classes/EditorProperty.xml:112
+#: doc/classes/EditorProperty.xml:113
msgid "Used by sub-inspectors. Emit it if what was selected was an Object ID."
msgstr ""
-#: doc/classes/EditorProperty.xml:121
+#: doc/classes/EditorProperty.xml:122
msgid ""
"Do not emit this manually, use the [method emit_changed] method instead."
msgstr ""
-#: doc/classes/EditorProperty.xml:130
+#: doc/classes/EditorProperty.xml:131
msgid "Emitted when a property was checked. Used internally."
msgstr ""
-#: doc/classes/EditorProperty.xml:143
+#: doc/classes/EditorProperty.xml:138
+msgid "Emitted when a property was deleted. Used internally."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:145
msgid ""
"Emit it if you want to add this value as an animation key (check for keying "
"being enabled first)."
msgstr ""
-#: doc/classes/EditorProperty.xml:152
+#: doc/classes/EditorProperty.xml:154
msgid "Emit it if you want to key a property with a single value."
msgstr ""
-#: doc/classes/EditorProperty.xml:161
+#: doc/classes/EditorProperty.xml:163
msgid ""
"If you want a sub-resource to be edited, emit this signal with the resource."
msgstr ""
-#: doc/classes/EditorProperty.xml:170
+#: doc/classes/EditorProperty.xml:172
msgid "Emitted when selected. Used internally."
msgstr ""
@@ -19278,17 +19645,26 @@ msgstr ""
msgid ""
"Object that holds the project-independent editor settings. These settings "
"are generally visible in the [b]Editor > Editor Settings[/b] menu.\n"
-"Accessing the settings is done by using the regular [Object] API, such as:\n"
-"[codeblock]\n"
-"settings.set(prop,value)\n"
-"settings.get(prop)\n"
-"list_of_settings = settings.get_property_list()\n"
+"Property names use slash delimiters to distinguish sections. Setting values "
+"can be of any [Variant] type. It's recommended to use [code]snake_case[/"
+"code] for editor settings to be consistent with the Godot editor itself.\n"
+"Accessing the settings can be done using the following methods, such as:\n"
+"[codeblock]\n"
+"# `settings.set(\"some/property\", value)` also works as this class "
+"overrides `_set()` internally.\n"
+"settings.set_setting(\"some/property\",value)\n"
+"\n"
+"# `settings.get(\"some/property\", value)` also works as this class "
+"overrides `_get()` internally.\n"
+"settings.get_setting(\"some/property\")\n"
+"\n"
+"var list_of_settings = settings.get_property_list()\n"
"[/codeblock]\n"
"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
"the singleton using [method EditorInterface.get_editor_settings]."
msgstr ""
-#: doc/classes/EditorSettings.xml:25
+#: doc/classes/EditorSettings.xml:30
msgid ""
"Adds a custom property info to a property. The dictionary must contain:\n"
"- [code]name[/code]: [String] (the name of the property)\n"
@@ -19310,52 +19686,173 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorSettings.xml:50
-msgid "Erase a given setting (pass full property path)."
+#: doc/classes/EditorSettings.xml:55
+msgid "Erases the setting whose name is specified by [code]property[/code]."
msgstr ""
-#: doc/classes/EditorSettings.xml:57
-msgid "Gets the list of favorite files and directories for this project."
+#: doc/classes/EditorSettings.xml:62
+msgid "Returns the list of favorite files and directories for this project."
msgstr ""
-#: doc/classes/EditorSettings.xml:76
+#: doc/classes/EditorSettings.xml:75
msgid ""
-"Gets the specific project settings path. Projects all have a unique sub-"
-"directory inside the settings path where project specific settings are saved."
+"Returns project-specific metadata for the [code]section[/code] and "
+"[code]key[/code] specified. If the metadata doesn't exist, [code]default[/"
+"code] will be returned instead. See also [method set_project_metadata]."
msgstr ""
-#: doc/classes/EditorSettings.xml:83
+#: doc/classes/EditorSettings.xml:82
msgid ""
-"Gets the list of recently visited folders in the file dialog for this "
+"Returns the project-specific settings path. Projects all have a unique "
+"subdirectory inside the settings path where project-specific settings are "
+"saved."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:89
+msgid ""
+"Returns the list of recently visited folders in the file dialog for this "
"project."
msgstr ""
#: doc/classes/EditorSettings.xml:98
msgid ""
+"Returns the value of the setting specified by [code]name[/code]. This is "
+"equivalent to using [method Object.get] on the EditorSettings instance."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:105
+msgid ""
"Gets the global settings path for the engine. Inside this path, you can find "
"some standard paths such as:\n"
"[code]settings/tmp[/code] - Used for temporary storage of files\n"
"[code]settings/templates[/code] - Where export templates are located"
msgstr ""
-#: doc/classes/EditorSettings.xml:133
+#: doc/classes/EditorSettings.xml:116
+msgid ""
+"Returns [code]true[/code] if the setting specified by [code]name[/code] "
+"exists, [code]false[/code] otherwise."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:125
+msgid ""
+"Returns [code]true[/code] if the setting specified by [code]name[/code] can "
+"have its value reverted to the default value, [code]false[/code] otherwise. "
+"When this method returns [code]true[/code], a Revert button will display "
+"next to the setting in the Editor Settings."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:134
+msgid ""
+"Returns the default value of the setting specified by [code]name[/code]. "
+"This is the value that would be applied when clicking the Revert button in "
+"the Editor Settings."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:143
msgid "Sets the list of favorite files and directories for this project."
msgstr ""
-#: doc/classes/EditorSettings.xml:166
+#: doc/classes/EditorSettings.xml:156
+msgid ""
+"Sets the initial value of the setting specified by [code]name[/code] to "
+"[code]value[/code]. This is used to provide a value for the Revert button in "
+"the Editor Settings. If [code]update_current[/code] is true, the current "
+"value of the setting will be set to [code]value[/code] as well."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:169
+msgid ""
+"Sets project-specific metadata with the [code]section[/code], [code]key[/"
+"code] and [code]data[/code] specified. This metadata is stored outside the "
+"project folder and therefore won't be checked into version control. See also "
+"[method get_project_metadata]."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:178
msgid ""
"Sets the list of recently visited folders in the file dialog for this "
"project."
msgstr ""
-#: doc/classes/EditorSettings.xml:183
-msgid "Emitted when editor settings change."
+#: doc/classes/EditorSettings.xml:189
+msgid ""
+"Sets the [code]value[/code] of the setting specified by [code]name[/code]. "
+"This is equivalent to using [method Object.set] on the EditorSettings "
+"instance."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:196
+msgid "Emitted after any editor setting has changed."
msgstr ""
-#: doc/classes/EditorSettings.xml:189
+#: doc/classes/EditorSettings.xml:202
+msgid ""
+"Emitted after any editor setting has changed. It's used by various editor "
+"plugins to update their visuals on theme changes or logic on configuration "
+"changes."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:4
+msgid ""
+"Plugin for adding custom parsers to extract strings that are to be "
+"translated from custom files (.csv, .json etc.)."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:7
+msgid ""
+"Plugins are registered via [method EditorPlugin."
+"add_translation_parser_plugin] method. To define the parsing and string "
+"extraction logic, override the [method parse_file] method in script.\n"
+"The extracted strings will be written into a POT file selected by user under "
+"\"POT Generation\" in \"Localization\" tab in \"Project Settings\" menu.\n"
+"Below shows an example of a custom parser that extracts strings in a CSV "
+"file to write into a POT.\n"
+"[codeblock]\n"
+"tool\n"
+"extends EditorTranslationParserPlugin\n"
+"\n"
+"\n"
+"func parse_file(path, extracted_strings):\n"
+" var file = File.new()\n"
+" file.open(path, File.READ)\n"
+" var text = file.get_as_text()\n"
+" var split_strs = text.split(\",\", false, 0)\n"
+" for s in split_strs:\n"
+" extracted_strings.append(s)\n"
+" #print(\"Extracted string: \" + s)\n"
+"\n"
+"\n"
+"func get_recognized_extensions():\n"
+" return [\"csv\"]\n"
+"[/codeblock]\n"
+"[b]Note:[/b] If you override parsing logic for standard script types "
+"(GDScript, C#, etc.), it would be better to load the [code]path[/code] "
+"argument using [method ResourceLoader.load]. This is because built-in "
+"scripts are loaded as [Resource] type, not [File] type.\n"
+"For example:\n"
+"[codeblock]\n"
+"func parse_file(path, extracted_strings):\n"
+" var res = ResourceLoader.load(path, \"Script\")\n"
+" var text = res.get_source_code()\n"
+" # Parsing logic.\n"
+"\n"
+"\n"
+"func get_recognized_extensions():\n"
+" return [\"gd\"]\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:48
+msgid ""
+"Gets the list of file extensions to associate with this parser, e.g. [code]"
+"[\"csv\"][/code]."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:59
msgid ""
-"Emitted when editor settings change. It used by various editor plugins to "
-"update their visuals on theme changes or logic on configuration changes."
+"Override this method to define a custom parsing logic to extract the "
+"translatable strings."
msgstr ""
#: doc/classes/EditorVCSInterface.xml:4
@@ -19966,15 +20463,15 @@ msgid ""
"to 1.3 to compensate for the lack of HDR rendering."
msgstr ""
-#: doc/classes/Environment.xml:190
+#: doc/classes/Environment.xml:214
msgid "The [Sky] resource used for this [Environment]."
msgstr ""
-#: doc/classes/Environment.xml:197
+#: doc/classes/Environment.xml:221
msgid "The depth tolerance for screen-space reflections."
msgstr ""
-#: doc/classes/Environment.xml:200
+#: doc/classes/Environment.xml:224
msgid ""
"If [code]true[/code], screen-space reflections are enabled. Screen-space "
"reflections are more accurate than reflections from [GIProbe]s or "
@@ -19982,48 +20479,48 @@ msgid ""
"others."
msgstr ""
-#: doc/classes/Environment.xml:203
+#: doc/classes/Environment.xml:227
msgid ""
"The fade-in distance for screen-space reflections. Affects the area from the "
"reflected material to the screen-space reflection)."
msgstr ""
-#: doc/classes/Environment.xml:206
+#: doc/classes/Environment.xml:230
msgid ""
"The fade-out distance for screen-space reflections. Affects the area from "
"the screen-space reflection to the \"global\" reflection."
msgstr ""
-#: doc/classes/Environment.xml:209
+#: doc/classes/Environment.xml:233
msgid ""
"The maximum number of steps for screen-space reflections. Higher values are "
"slower."
msgstr ""
-#: doc/classes/Environment.xml:212
+#: doc/classes/Environment.xml:236
msgid ""
"The screen-space ambient occlusion intensity on materials that have an AO "
"texture defined. Values higher than [code]0[/code] will make the SSAO effect "
"visible in areas darkened by AO textures."
msgstr ""
-#: doc/classes/Environment.xml:215
+#: doc/classes/Environment.xml:239
msgid ""
"The screen-space ambient occlusion bias. This should be kept high enough to "
"prevent \"smooth\" curves from being affected by ambient occlusion."
msgstr ""
-#: doc/classes/Environment.xml:218
+#: doc/classes/Environment.xml:242
msgid ""
"The screen-space ambient occlusion blur quality. See [enum SSAOBlur] for "
"possible values."
msgstr ""
-#: doc/classes/Environment.xml:221
+#: doc/classes/Environment.xml:245
msgid "The screen-space ambient occlusion edge sharpness."
msgstr ""
-#: doc/classes/Environment.xml:224
+#: doc/classes/Environment.xml:248
msgid ""
"If [code]true[/code], the screen-space ambient occlusion effect is enabled. "
"This darkens objects' corners and cavities to simulate ambient light not "
@@ -20034,13 +20531,13 @@ msgid ""
"issues."
msgstr ""
-#: doc/classes/Environment.xml:227
+#: doc/classes/Environment.xml:251
msgid ""
"The primary screen-space ambient occlusion intensity. See also [member "
"ssao_radius]."
msgstr ""
-#: doc/classes/Environment.xml:230
+#: doc/classes/Environment.xml:254
msgid ""
"The screen-space ambient occlusion intensity in direct light. In real life, "
"ambient occlusion only applies to indirect light, which means its effects "
@@ -20048,46 +20545,46 @@ msgid ""
"the SSAO effect visible in direct light."
msgstr ""
-#: doc/classes/Environment.xml:233
+#: doc/classes/Environment.xml:257
msgid "The primary screen-space ambient occlusion radius."
msgstr ""
-#: doc/classes/Environment.xml:236
+#: doc/classes/Environment.xml:260
msgid "The default exposure used for tonemapping."
msgstr ""
-#: doc/classes/Environment.xml:239
+#: doc/classes/Environment.xml:263
msgid ""
"The tonemapping mode to use. Tonemapping is the process that \"converts\" "
"HDR values to be suitable for rendering on a LDR display. (Godot doesn't "
"support rendering on HDR displays yet.)"
msgstr ""
-#: doc/classes/Environment.xml:242
+#: doc/classes/Environment.xml:266
msgid ""
"The white reference value for tonemapping. Only effective if the [member "
"tonemap_mode] isn't set to [constant TONE_MAPPER_LINEAR]."
msgstr ""
-#: doc/classes/Environment.xml:247
+#: doc/classes/Environment.xml:271
msgid ""
"Clears the background using the clear color defined in [member "
"ProjectSettings.rendering/environment/default_clear_color]."
msgstr ""
-#: doc/classes/Environment.xml:250
+#: doc/classes/Environment.xml:274
msgid "Clears the background using a custom clear color."
msgstr ""
-#: doc/classes/Environment.xml:253
+#: doc/classes/Environment.xml:277
msgid "Displays a user-defined sky in the background."
msgstr ""
-#: doc/classes/Environment.xml:256
+#: doc/classes/Environment.xml:280
msgid "Displays a [CanvasLayer] in the background."
msgstr ""
-#: doc/classes/Environment.xml:259
+#: doc/classes/Environment.xml:283
msgid ""
"Keeps on screen every pixel drawn in the background. This is the fastest "
"background mode, but it can only be safely used in fully-interior scenes (no "
@@ -20095,107 +20592,107 @@ msgid ""
"is visible, \"ghost trail\" artifacts will be visible when moving the camera."
msgstr ""
-#: doc/classes/Environment.xml:262 doc/classes/RenderingServer.xml:3446
+#: doc/classes/Environment.xml:286 doc/classes/RenderingServer.xml:3457
msgid "Displays a camera feed in the background."
msgstr ""
-#: doc/classes/Environment.xml:265
+#: doc/classes/Environment.xml:289
msgid "Represents the size of the [enum BGMode] enum."
msgstr ""
-#: doc/classes/Environment.xml:268 doc/classes/RenderingServer.xml:3452
+#: doc/classes/Environment.xml:292 doc/classes/RenderingServer.xml:3463
msgid ""
"Gather ambient light from whichever source is specified as the background."
msgstr ""
-#: doc/classes/Environment.xml:271 doc/classes/RenderingServer.xml:3455
+#: doc/classes/Environment.xml:295 doc/classes/RenderingServer.xml:3466
msgid "Disable ambient light."
msgstr ""
-#: doc/classes/Environment.xml:274 doc/classes/RenderingServer.xml:3458
+#: doc/classes/Environment.xml:298 doc/classes/RenderingServer.xml:3469
msgid "Specify a specific [Color] for ambient light."
msgstr ""
-#: doc/classes/Environment.xml:277 doc/classes/RenderingServer.xml:3461
+#: doc/classes/Environment.xml:301 doc/classes/RenderingServer.xml:3472
msgid ""
"Gather ambient light from the [Sky] regardless of what the background is."
msgstr ""
-#: doc/classes/Environment.xml:280 doc/classes/RenderingServer.xml:3464
+#: doc/classes/Environment.xml:304 doc/classes/RenderingServer.xml:3475
msgid "Use the background for reflections."
msgstr ""
-#: doc/classes/Environment.xml:283 doc/classes/RenderingServer.xml:3467
+#: doc/classes/Environment.xml:307 doc/classes/RenderingServer.xml:3478
msgid "Disable reflections."
msgstr ""
-#: doc/classes/Environment.xml:286 doc/classes/RenderingServer.xml:3470
+#: doc/classes/Environment.xml:310 doc/classes/RenderingServer.xml:3481
msgid "Use the [Sky] for reflections regardless of what the background is."
msgstr ""
-#: doc/classes/Environment.xml:289 doc/classes/RenderingServer.xml:3473
+#: doc/classes/Environment.xml:313
+msgid ""
+"Linear tonemapper operator. Reads the linear data and passes it on "
+"unmodified."
+msgstr ""
+
+#: doc/classes/Environment.xml:316
+msgid ""
+"Reinhardt tonemapper operator. Performs a variation on rendered pixels' "
+"colors by this formula: [code]color = color / (1 + color)[/code]."
+msgstr ""
+
+#: doc/classes/Environment.xml:319
+msgid "Filmic tonemapper operator."
+msgstr ""
+
+#: doc/classes/Environment.xml:322
+msgid "Academy Color Encoding System tonemapper operator."
+msgstr ""
+
+#: doc/classes/Environment.xml:325 doc/classes/RenderingServer.xml:3484
msgid ""
"Additive glow blending mode. Mostly used for particles, glows (bloom), lens "
"flare, bright sources."
msgstr ""
-#: doc/classes/Environment.xml:292 doc/classes/RenderingServer.xml:3476
+#: doc/classes/Environment.xml:328 doc/classes/RenderingServer.xml:3487
msgid ""
"Screen glow blending mode. Increases brightness, used frequently with bloom."
msgstr ""
-#: doc/classes/Environment.xml:295 doc/classes/RenderingServer.xml:3479
+#: doc/classes/Environment.xml:331 doc/classes/RenderingServer.xml:3490
msgid ""
"Soft light glow blending mode. Modifies contrast, exposes shadows and "
"highlights (vivid bloom)."
msgstr ""
-#: doc/classes/Environment.xml:298 doc/classes/RenderingServer.xml:3482
+#: doc/classes/Environment.xml:334 doc/classes/RenderingServer.xml:3493
msgid ""
"Replace glow blending mode. Replaces all pixels' color by the glow value. "
"This can be used to simulate a full-screen blur effect by tweaking the glow "
"parameters to match the original image's brightness."
msgstr ""
-#: doc/classes/Environment.xml:301 doc/classes/RenderingServer.xml:3485
+#: doc/classes/Environment.xml:337 doc/classes/RenderingServer.xml:3496
msgid ""
"Mixes the glow with the underlying color to avoid increasing brightness as "
"much while still maintaining a glow effect."
msgstr ""
-#: doc/classes/Environment.xml:304
-msgid ""
-"Linear tonemapper operator. Reads the linear data and passes it on "
-"unmodified."
-msgstr ""
-
-#: doc/classes/Environment.xml:307
-msgid ""
-"Reinhardt tonemapper operator. Performs a variation on rendered pixels' "
-"colors by this formula: [code]color = color / (1 + color)[/code]."
-msgstr ""
-
-#: doc/classes/Environment.xml:310
-msgid "Filmic tonemapper operator."
-msgstr ""
-
-#: doc/classes/Environment.xml:313
-msgid "Academy Color Encoding System tonemapper operator."
-msgstr ""
-
-#: doc/classes/Environment.xml:316
+#: doc/classes/Environment.xml:340
msgid "No blur for the screen-space ambient occlusion effect (fastest)."
msgstr ""
-#: doc/classes/Environment.xml:319
+#: doc/classes/Environment.xml:343
msgid "1×1 blur for the screen-space ambient occlusion effect."
msgstr ""
-#: doc/classes/Environment.xml:322
+#: doc/classes/Environment.xml:346
msgid "2×2 blur for the screen-space ambient occlusion effect."
msgstr ""
-#: doc/classes/Environment.xml:325
+#: doc/classes/Environment.xml:349
msgid ""
"3×3 blur for the screen-space ambient occlusion effect. Increases the radius "
"of the blur for a smoother look, but can result in checkerboard-like "
@@ -20280,14 +20777,17 @@ msgid ""
" var content = file.get_as_text()\n"
" file.close()\n"
" return content\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"In the example above, the file will be saved in the user data folder as "
+"specified in the [url=https://docs.godotengine.org/en/latest/tutorials/io/"
+"data_paths.html]Data paths[/url] documentation."
msgstr ""
-#: doc/classes/File.xml:32
+#: doc/classes/File.xml:33
msgid "Closes the currently opened file."
msgstr ""
-#: doc/classes/File.xml:39
+#: doc/classes/File.xml:40
msgid ""
"Returns [code]true[/code] if the file cursor has read past the end of the "
"file.\n"
@@ -20298,7 +20798,7 @@ msgid ""
"get_position] to implement a custom logic."
msgstr ""
-#: doc/classes/File.xml:49
+#: doc/classes/File.xml:50
msgid ""
"Returns [code]true[/code] if the file exists in the given path.\n"
"[b]Note:[/b] Many resources types are imported (e.g. textures or sound "
@@ -20311,41 +20811,41 @@ msgid ""
"source asset is present in [code]res://[/code], but fail when exported)."
msgstr ""
-#: doc/classes/File.xml:57
+#: doc/classes/File.xml:58
msgid ""
"Returns the next 16 bits from the file as an integer. See [method store_16] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:64
+#: doc/classes/File.xml:65
msgid ""
"Returns the next 32 bits from the file as an integer. See [method store_32] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:71
+#: doc/classes/File.xml:72
msgid ""
"Returns the next 64 bits from the file as an integer. See [method store_64] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:78
+#: doc/classes/File.xml:79
msgid ""
"Returns the next 8 bits from the file as an integer. See [method store_8] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:85
+#: doc/classes/File.xml:86
msgid ""
"Returns the whole file as a [String].\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:95
+#: doc/classes/File.xml:96
msgid "Returns next [code]len[/code] bytes of the file as a [PackedByteArray]."
msgstr ""
-#: doc/classes/File.xml:104
+#: doc/classes/File.xml:105
msgid ""
"Returns the next value of the file in CSV (Comma-Separated Values) format. "
"You can pass a different delimiter [code]delim[/code] to use other than the "
@@ -20354,37 +20854,37 @@ msgid ""
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:112
+#: doc/classes/File.xml:113
msgid "Returns the next 64 bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:119
+#: doc/classes/File.xml:120
msgid ""
"Returns the last error that happened when trying to perform operations. "
"Compare with the [code]ERR_FILE_*[/code] constants from [enum Error]."
msgstr ""
-#: doc/classes/File.xml:126
+#: doc/classes/File.xml:127
msgid "Returns the next 32 bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:133
+#: doc/classes/File.xml:134
msgid "Returns the size of the file in bytes."
msgstr ""
-#: doc/classes/File.xml:140
+#: doc/classes/File.xml:141
msgid ""
"Returns the next line of the file as a [String].\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:150
+#: doc/classes/File.xml:151
msgid ""
"Returns an MD5 String representing the file at the given path or an empty "
"[String] on failure."
msgstr ""
-#: doc/classes/File.xml:159
+#: doc/classes/File.xml:160
msgid ""
"Returns the last time the [code]file[/code] was modified in unix timestamp "
"format or returns a [String] \"ERROR IN [code]file[/code]\". This unix "
@@ -20392,35 +20892,35 @@ msgid ""
"get_datetime_from_unix_time]."
msgstr ""
-#: doc/classes/File.xml:166
+#: doc/classes/File.xml:167
msgid ""
"Returns a [String] saved in Pascal format from the file.\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:174
+#: doc/classes/File.xml:175
msgid "Returns the path as a [String] for the current open file."
msgstr ""
-#: doc/classes/File.xml:181
+#: doc/classes/File.xml:182
msgid "Returns the absolute path as a [String] for the current open file."
msgstr ""
-#: doc/classes/File.xml:188
+#: doc/classes/File.xml:189
msgid "Returns the file cursor's position."
msgstr ""
-#: doc/classes/File.xml:195
+#: doc/classes/File.xml:196
msgid "Returns the next bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:204
+#: doc/classes/File.xml:205
msgid ""
"Returns a SHA-256 [String] representing the file at the given path or an "
"empty [String] on failure."
msgstr ""
-#: doc/classes/File.xml:213
+#: doc/classes/File.xml:214
msgid ""
"Returns the next [Variant] value from the file. If [code]allow_objects[/"
"code] is [code]true[/code], decoding objects is allowed.\n"
@@ -20429,37 +20929,38 @@ msgid ""
"to avoid potential security threats such as remote code execution."
msgstr ""
-#: doc/classes/File.xml:221
+#: doc/classes/File.xml:222
msgid "Returns [code]true[/code] if the file is currently opened."
msgstr ""
-#: doc/classes/File.xml:232
+#: doc/classes/File.xml:233
msgid "Opens the file for writing or reading, depending on the flags."
msgstr ""
-#: doc/classes/File.xml:245
+#: doc/classes/File.xml:246
msgid "Opens a compressed file for reading or writing."
msgstr ""
-#: doc/classes/File.xml:258
+#: doc/classes/File.xml:259
msgid ""
"Opens an encrypted file in write or read mode. You need to pass a binary key "
-"to encrypt/decrypt it."
+"to encrypt/decrypt it.\n"
+"[b]Note:[/b] The provided key must be 32 bytes long."
msgstr ""
-#: doc/classes/File.xml:271
+#: doc/classes/File.xml:273
msgid ""
"Opens an encrypted file in write or read mode. You need to pass a password "
"to encrypt/decrypt it."
msgstr ""
-#: doc/classes/File.xml:280
+#: doc/classes/File.xml:282
msgid ""
"Changes the file reading/writing cursor to the specified position (in bytes "
"from the beginning of the file)."
msgstr ""
-#: doc/classes/File.xml:289
+#: doc/classes/File.xml:291
msgid ""
"Changes the file reading/writing cursor to the specified position (in bytes "
"from the end of the file).\n"
@@ -20467,7 +20968,7 @@ msgid ""
"cursor will be at the end of the file."
msgstr ""
-#: doc/classes/File.xml:299
+#: doc/classes/File.xml:301
msgid ""
"Stores an integer as 16 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, "
@@ -20495,7 +20996,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/File.xml:328
+#: doc/classes/File.xml:330
msgid ""
"Stores an integer as 32 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, "
@@ -20504,14 +21005,14 @@ msgid ""
"(see [method store_16] for an example)."
msgstr ""
-#: doc/classes/File.xml:339
+#: doc/classes/File.xml:341
msgid ""
"Stores an integer as 64 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] must lie in the interval [code][-2^63, "
"2^63 - 1][/code] (i.e. be a valid [int] value)."
msgstr ""
-#: doc/classes/File.xml:349
+#: doc/classes/File.xml:351
msgid ""
"Stores an integer as 8 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, 255]"
@@ -20520,11 +21021,11 @@ msgid ""
"(see [method store_16] for an example)."
msgstr ""
-#: doc/classes/File.xml:360
+#: doc/classes/File.xml:362
msgid "Stores the given array of bytes in the file."
msgstr ""
-#: doc/classes/File.xml:371
+#: doc/classes/File.xml:373
msgid ""
"Store the given [PackedStringArray] in the file as a line formatted in the "
"CSV (Comma-Separated Values) format. You can pass a different delimiter "
@@ -20533,45 +21034,45 @@ msgid ""
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:381
+#: doc/classes/File.xml:383
msgid "Stores a floating-point number as 64 bits in the file."
msgstr ""
-#: doc/classes/File.xml:390
+#: doc/classes/File.xml:392
msgid "Stores a floating-point number as 32 bits in the file."
msgstr ""
-#: doc/classes/File.xml:399
+#: doc/classes/File.xml:401
msgid ""
"Stores the given [String] as a line in the file.\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:409
+#: doc/classes/File.xml:411
msgid ""
"Stores the given [String] as a line in the file in Pascal format (i.e. also "
"store the length of the string).\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:419
+#: doc/classes/File.xml:421
msgid "Stores a floating-point number in the file."
msgstr ""
-#: doc/classes/File.xml:428
+#: doc/classes/File.xml:430
msgid ""
"Stores the given [String] in the file.\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:440
+#: doc/classes/File.xml:442
msgid ""
"Stores any Variant value in the file. If [code]full_objects[/code] is "
"[code]true[/code], encoding objects is allowed (and can potentially include "
"code)."
msgstr ""
-#: doc/classes/File.xml:446
+#: doc/classes/File.xml:448
msgid ""
"If [code]true[/code], the file's endianness is swapped. Use this if you're "
"dealing with files written on big-endian machines.\n"
@@ -20579,44 +21080,44 @@ msgid ""
"reset to [code]false[/code] whenever you open the file."
msgstr ""
-#: doc/classes/File.xml:452
+#: doc/classes/File.xml:454
msgid "Opens the file for read operations."
msgstr ""
-#: doc/classes/File.xml:455
+#: doc/classes/File.xml:457
msgid ""
"Opens the file for write operations. Create it if the file does not exist "
"and truncate if it exists."
msgstr ""
-#: doc/classes/File.xml:458
+#: doc/classes/File.xml:460
msgid ""
"Opens the file for read and write operations. Does not truncate the file."
msgstr ""
-#: doc/classes/File.xml:461
+#: doc/classes/File.xml:463
msgid ""
"Opens the file for read and write operations. Create it if the file does not "
"exist and truncate if it exists."
msgstr ""
-#: doc/classes/File.xml:464
+#: doc/classes/File.xml:466
msgid "Uses the [url=http://fastlz.org/]FastLZ[/url] compression method."
msgstr ""
-#: doc/classes/File.xml:467
+#: doc/classes/File.xml:469
msgid ""
"Uses the [url=https://en.wikipedia.org/wiki/DEFLATE]DEFLATE[/url] "
"compression method."
msgstr ""
-#: doc/classes/File.xml:470
+#: doc/classes/File.xml:472
msgid ""
"Uses the [url=https://facebook.github.io/zstd/]Zstandard[/url] compression "
"method."
msgstr ""
-#: doc/classes/File.xml:473
+#: doc/classes/File.xml:475
msgid "Uses the [url=https://www.gzip.org/]gzip[/url] compression method."
msgstr ""
@@ -20832,10 +21333,11 @@ msgid ""
"Draw [code]string[/code] into a canvas item using the font at a given "
"position, with [code]modulate[/code] color, and optionally clipping the "
"width. [code]position[/code] specifies the baseline, not the top. To draw "
-"from the top, [i]ascent[/i] must be added to the Y axis."
+"from the top, [i]ascent[/i] must be added to the Y axis.\n"
+"See also [method CanvasItem.draw_string]."
msgstr ""
-#: doc/classes/Font.xml:47
+#: doc/classes/Font.xml:48
msgid ""
"Draw character [code]char[/code] into a canvas item using the font at a "
"given position, with [code]modulate[/code] color, and optionally kerning if "
@@ -20845,39 +21347,39 @@ msgid ""
"making this function useful for drawing strings character by character."
msgstr ""
-#: doc/classes/Font.xml:54
+#: doc/classes/Font.xml:55
msgid "Returns the font ascent (number of pixels above the baseline)."
msgstr ""
-#: doc/classes/Font.xml:65
+#: doc/classes/Font.xml:66
msgid ""
"Returns the size of a character, optionally taking kerning into account if "
"the next character is provided."
msgstr ""
-#: doc/classes/Font.xml:72
+#: doc/classes/Font.xml:73
msgid "Returns the font descent (number of pixels below the baseline)."
msgstr ""
-#: doc/classes/Font.xml:79
+#: doc/classes/Font.xml:80
msgid "Returns the total font height (ascent plus descent) in pixels."
msgstr ""
-#: doc/classes/Font.xml:88
+#: doc/classes/Font.xml:89
msgid "Returns the size of a string, taking kerning and advance into account."
msgstr ""
-#: doc/classes/Font.xml:99
+#: doc/classes/Font.xml:100
msgid ""
"Returns the size that the string would have with word wrapping enabled with "
"a fixed [code]width[/code]."
msgstr ""
-#: doc/classes/Font.xml:106
+#: doc/classes/Font.xml:107
msgid "Returns [code]true[/code] if the font has an outline."
msgstr ""
-#: doc/classes/Font.xml:119
+#: doc/classes/Font.xml:120
msgid ""
"After editing a font (changing size, ascent, char rects, etc.). Call this "
"function to propagate changes to controls that might use it."
@@ -21049,13 +21551,14 @@ msgstr ""
#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:7
msgid ""
-"Calling [method @GDScript.yield] within a function will cause that function "
-"to yield and return its current state as an object of this type. The yielded "
+"FIXME: Outdated docs as of GDScript rewrite in 4.0.\n"
+"Calling [code]yield[/code] within a function will cause that function to "
+"yield and return its current state as an object of this type. The yielded "
"function call can then be resumed later by calling [method resume] on this "
"state object."
msgstr ""
-#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:18
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:19
msgid ""
"Check whether the function call may be resumed. This is not the case if the "
"function state was already resumed.\n"
@@ -21066,12 +21569,12 @@ msgid ""
"script have survived up to that point."
msgstr ""
-#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:28
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:29
msgid ""
"Resume execution of the yielded function call.\n"
-"If handed an argument, return the argument from the [method @GDScript.yield] "
-"call in the yielded function call. You can pass e.g. an [Array] to hand "
-"multiple arguments.\n"
+"If handed an argument, return the argument from the [code]yield[/code] call "
+"in the yielded function call. You can pass e.g. an [Array] to hand multiple "
+"arguments.\n"
"This function returns what the resumed function call returns, possibly "
"another function state if yielded again."
msgstr ""
@@ -21640,10 +22143,20 @@ msgid ""
"code], see [enum PolyJoinType].\n"
"The operation may result in an outer polygon (boundary) and inner polygon "
"(hole) produced which could be distinguished by calling [method "
-"is_polygon_clockwise]."
+"is_polygon_clockwise].\n"
+"[b]Note:[/b] To translate the polygon's vertices specifically, use the "
+"[method Transform2D.xform] method:\n"
+"[codeblock]\n"
+"var polygon = PackedVector2Array([Vector2(0, 0), Vector2(100, 0), "
+"Vector2(100, 100), Vector2(0, 100)])\n"
+"var offset = Vector2(50, 50)\n"
+"polygon = Transform2D(0, offset).xform(polygon)\n"
+"print(polygon) # prints [Vector2(50, 50), Vector2(150, 50), Vector2(150, "
+"150), Vector2(50, 150)]\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/Geometry2D.xml:217
+#: doc/classes/Geometry2D.xml:224
msgid ""
"Inflates or deflates [code]polyline[/code] by [code]delta[/code] units "
"(pixels), producing polygons. If [code]delta[/code] is positive, makes the "
@@ -21659,13 +22172,13 @@ msgid ""
"is_polygon_clockwise]."
msgstr ""
-#: doc/classes/Geometry2D.xml:235
+#: doc/classes/Geometry2D.xml:242
msgid ""
"Returns if [code]point[/code] is inside the triangle specified by [code]a[/"
"code], [code]b[/code] and [code]c[/code]."
msgstr ""
-#: doc/classes/Geometry2D.xml:250
+#: doc/classes/Geometry2D.xml:257
msgid ""
"Checks if the two segments ([code]from_a[/code], [code]to_a[/code]) and "
"([code]from_b[/code], [code]to_b[/code]) intersect. If yes, return the point "
@@ -21673,7 +22186,7 @@ msgid ""
"empty [Variant]."
msgstr ""
-#: doc/classes/Geometry2D.xml:259
+#: doc/classes/Geometry2D.xml:266
msgid ""
"Triangulates the area specified by discrete set of [code]points[/code] such "
"that no point is inside the circumcircle of any resulting triangle. Returns "
@@ -21684,7 +22197,7 @@ msgid ""
"[PackedInt32Array] is returned."
msgstr ""
-#: doc/classes/Geometry2D.xml:268
+#: doc/classes/Geometry2D.xml:275
msgid ""
"Triangulates the polygon specified by the points in [code]polygon[/code]. "
"Returns a [PackedInt32Array] where each triangle consists of three "
@@ -21694,40 +22207,40 @@ msgid ""
"[PackedInt32Array] is returned."
msgstr ""
-#: doc/classes/Geometry2D.xml:274
+#: doc/classes/Geometry2D.xml:281
msgid ""
"Create regions where either subject or clip polygons (or both) are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:277
+#: doc/classes/Geometry2D.xml:284
msgid ""
"Create regions where subject polygons are filled except where clip polygons "
"are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:280
+#: doc/classes/Geometry2D.xml:287
msgid "Create regions where both subject and clip polygons are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:283
+#: doc/classes/Geometry2D.xml:290
msgid ""
"Create regions where either subject or clip polygons are filled but not "
"where both are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:286
+#: doc/classes/Geometry2D.xml:293
msgid ""
"Squaring is applied uniformally at all convex edge joins at [code]1 * delta[/"
"code]."
msgstr ""
-#: doc/classes/Geometry2D.xml:289
+#: doc/classes/Geometry2D.xml:296
msgid ""
"While flattened paths can never perfectly trace an arc, they are "
"approximated by a series of arc chords."
msgstr ""
-#: doc/classes/Geometry2D.xml:292
+#: doc/classes/Geometry2D.xml:299
msgid ""
"There's a necessary limit to mitered joins since offsetting edges that join "
"at very acute angles will produce excessively long and narrow \"spikes\". "
@@ -21735,27 +22248,27 @@ msgid ""
"distance, \"square\" joining is applied."
msgstr ""
-#: doc/classes/Geometry2D.xml:295
+#: doc/classes/Geometry2D.xml:302
msgid ""
"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
"as a polygon."
msgstr ""
-#: doc/classes/Geometry2D.xml:298
+#: doc/classes/Geometry2D.xml:305
msgid ""
"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
"as a polyline."
msgstr ""
-#: doc/classes/Geometry2D.xml:301
+#: doc/classes/Geometry2D.xml:308
msgid "Endpoints are squared off with no extension."
msgstr ""
-#: doc/classes/Geometry2D.xml:304
+#: doc/classes/Geometry2D.xml:311
msgid "Endpoints are squared off and extended by [code]delta[/code] units."
msgstr ""
-#: doc/classes/Geometry2D.xml:307
+#: doc/classes/Geometry2D.xml:314
msgid "Endpoints are rounded off and extended by [code]delta[/code] units."
msgstr ""
@@ -21985,7 +22498,7 @@ msgstr ""
msgid ""
"Bakes the effect from all [GeometryInstance3D]s marked with [constant "
"GeometryInstance3D.GI_MODE_BAKED] and [Light3D]s marked with either "
-"[constant Light3D.BAKE_INDIRECT] or [constant Light3D.BAKE_ALL]. If "
+"[constant Light3D.BAKE_DYNAMIC] or [constant Light3D.BAKE_STATIC]. If "
"[code]create_visual_debug[/code] is [code]true[/code], after baking the "
"light, this will generate a [MultiMesh] that has a cube representing each "
"solid cell with each cube colored to the cell's albedo color. This can be "
@@ -22872,121 +23385,119 @@ msgstr ""
msgid "Clear all cells."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:53
+#: modules/gridmap/doc_classes/GridMap.xml:49
msgid ""
-"The [MeshLibrary] item index located at the grid-based X, Y and Z "
-"coordinates. If the cell is empty, [constant INVALID_CELL_ITEM] will be "
-"returned."
+"The [MeshLibrary] item index located at the given grid coordinates. If the "
+"cell is empty, [constant INVALID_CELL_ITEM] will be returned."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:66
+#: modules/gridmap/doc_classes/GridMap.xml:58
msgid ""
-"The orientation of the cell at the grid-based X, Y and Z coordinates. -1 is "
-"returned if the cell is empty."
+"The orientation of the cell at the given grid coordinates. [code]-1[/code] "
+"is returned if the cell is empty."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:75 doc/classes/PhysicsBody2D.xml:35
+#: modules/gridmap/doc_classes/GridMap.xml:67 doc/classes/PhysicsBody2D.xml:35
#: doc/classes/PhysicsBody3D.xml:35
msgid "Returns an individual bit on the [member collision_layer]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:84 doc/classes/PhysicsBody2D.xml:44
+#: modules/gridmap/doc_classes/GridMap.xml:76 doc/classes/PhysicsBody2D.xml:44
#: doc/classes/PhysicsBody3D.xml:44
msgid "Returns an individual bit on the [member collision_mask]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:91
+#: modules/gridmap/doc_classes/GridMap.xml:83
msgid ""
"Returns an array of [Transform] and [Mesh] references corresponding to the "
"non-empty cells in the grid. The transforms are specified in world space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:98
+#: modules/gridmap/doc_classes/GridMap.xml:90
msgid ""
"Returns an array of [Vector3] with the non-empty cell coordinates in the "
"grid map."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:121
+#: modules/gridmap/doc_classes/GridMap.xml:109
msgid ""
"Returns the position of a grid cell in the GridMap's local coordinate space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:146
+#: modules/gridmap/doc_classes/GridMap.xml:130
msgid ""
-"Sets the mesh index for the cell referenced by its grid-based X, Y and Z "
-"coordinates.\n"
+"Sets the mesh index for the cell referenced by its grid coordinates.\n"
"A negative item index such as [constant INVALID_CELL_ITEM] will clear the "
"cell.\n"
"Optionally, the item's orientation can be passed. For valid orientation "
"values, see [method Basis.get_orthogonal_index]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:173
+#: modules/gridmap/doc_classes/GridMap.xml:157
msgid "Sets an individual bit on the [member collision_layer]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:184
+#: modules/gridmap/doc_classes/GridMap.xml:168
msgid "Sets an individual bit on the [member collision_mask]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:193
+#: modules/gridmap/doc_classes/GridMap.xml:177
msgid ""
"Returns the coordinates of the grid cell containing the given point.\n"
"[code]pos[/code] should be in the GridMap's local coordinate space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:200
+#: modules/gridmap/doc_classes/GridMap.xml:184
msgid "If [code]true[/code], grid items are centered on the X axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:203
+#: modules/gridmap/doc_classes/GridMap.xml:187
msgid "If [code]true[/code], grid items are centered on the Y axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:206
+#: modules/gridmap/doc_classes/GridMap.xml:190
msgid "If [code]true[/code], grid items are centered on the Z axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:209
+#: modules/gridmap/doc_classes/GridMap.xml:193
msgid ""
"The size of each octant measured in number of cells. This applies to all "
"three axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:212
+#: modules/gridmap/doc_classes/GridMap.xml:196
msgid ""
"The scale of the cell items.\n"
"This does not affect the size of the grid cells themselves, only the items "
"in them. This can be used to make cell items overlap their neighbors."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:216
+#: modules/gridmap/doc_classes/GridMap.xml:200
msgid ""
"The dimensions of the grid's cells.\n"
"This does not affect the size of the meshes. See [member cell_scale]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:220
+#: modules/gridmap/doc_classes/GridMap.xml:204
msgid ""
"The physics layers this GridMap is in.\n"
"GridMaps act as static bodies, meaning they aren't affected by gravity or "
"other forces. They only affect other physics bodies that collide with them."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:224
+#: modules/gridmap/doc_classes/GridMap.xml:208
msgid "The physics layers this GridMap detects collisions in."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:227
+#: modules/gridmap/doc_classes/GridMap.xml:211
msgid "The assigned [MeshLibrary]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:235
+#: modules/gridmap/doc_classes/GridMap.xml:219
msgid "Emitted when [member cell_size] changes."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:241
+#: modules/gridmap/doc_classes/GridMap.xml:225
msgid ""
"Invalid cell item that can be used in [method set_cell_item] to clear cells "
"(or represent an empty cell in [method get_cell_item])."
@@ -23351,27 +23862,33 @@ msgid ""
"server's side.\n"
"For more information on HTTP, see https://developer.mozilla.org/en-US/docs/"
"Web/HTTP (or read RFC 2616 to get it straight from the source: https://tools."
-"ietf.org/html/rfc2616)."
+"ietf.org/html/rfc2616).\n"
+"[b]Note:[/b] When performing HTTP requests from a project exported to HTML5, "
+"keep in mind the remote server may not allow requests from foreign origins "
+"due to [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/"
+"url]. If you host the server in question, you should modify its backend to "
+"allow requests from foreign origins by adding the [code]Access-Control-Allow-"
+"Origin: *[/code] HTTP header."
msgstr ""
-#: doc/classes/HTTPClient.xml:13
+#: doc/classes/HTTPClient.xml:14
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/"
"http_client_class.html"
msgstr ""
-#: doc/classes/HTTPClient.xml:14 doc/classes/HTTPRequest.xml:62
+#: doc/classes/HTTPClient.xml:15 doc/classes/HTTPRequest.xml:71
#: doc/classes/StreamPeerSSL.xml:10
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/ssl_certificates."
"html"
msgstr ""
-#: doc/classes/HTTPClient.xml:21
+#: doc/classes/HTTPClient.xml:22
msgid "Closes the current connection, allowing reuse of this [HTTPClient]."
msgstr ""
-#: doc/classes/HTTPClient.xml:36
+#: doc/classes/HTTPClient.xml:37
msgid ""
"Connects to a host. This needs to be done before any requests are sent.\n"
"The host should not have http:// prepended but will strip the protocol "
@@ -23383,7 +23900,7 @@ msgid ""
"[code]true[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:46
+#: doc/classes/HTTPClient.xml:47
msgid ""
"Returns the response's body length.\n"
"[b]Note:[/b] Some Web servers may not send a body length. In this case, the "
@@ -23391,15 +23908,15 @@ msgid ""
"the body length will also be [code]-1[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:54
+#: doc/classes/HTTPClient.xml:55
msgid "Returns the response's HTTP status code."
msgstr ""
-#: doc/classes/HTTPClient.xml:61
+#: doc/classes/HTTPClient.xml:62
msgid "Returns the response headers."
msgstr ""
-#: doc/classes/HTTPClient.xml:68
+#: doc/classes/HTTPClient.xml:69
msgid ""
"Returns all response headers as a Dictionary of structure [code]{ \"key\": "
"\"value1; value2\" }[/code] where the case-sensitivity of the keys and "
@@ -23414,27 +23931,27 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:82
+#: doc/classes/HTTPClient.xml:83
msgid ""
"Returns a [enum Status] constant. Need to call [method poll] in order to get "
"status updates."
msgstr ""
-#: doc/classes/HTTPClient.xml:89
+#: doc/classes/HTTPClient.xml:90
msgid "If [code]true[/code], this [HTTPClient] has a response available."
msgstr ""
-#: doc/classes/HTTPClient.xml:96
+#: doc/classes/HTTPClient.xml:97
msgid "If [code]true[/code], this [HTTPClient] has a response that is chunked."
msgstr ""
-#: doc/classes/HTTPClient.xml:103
+#: doc/classes/HTTPClient.xml:104
msgid ""
"This needs to be called in order to have any request processed. Check "
"results with [method get_status]."
msgstr ""
-#: doc/classes/HTTPClient.xml:112
+#: doc/classes/HTTPClient.xml:113
msgid ""
"Generates a GET/POST application/x-www-form-urlencoded style query string "
"from a provided dictionary, e.g.:\n"
@@ -23454,11 +23971,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:130
+#: doc/classes/HTTPClient.xml:131
msgid "Reads one chunk from the response."
msgstr ""
-#: doc/classes/HTTPClient.xml:145
+#: doc/classes/HTTPClient.xml:146
msgid ""
"Sends a request to the connected host. The URL parameter is just the part "
"after the host, so for [code]http://somehost.com/index.php[/code], it is "
@@ -23476,7 +23993,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:168
+#: doc/classes/HTTPClient.xml:169
msgid ""
"Sends a raw request to the connected host. The URL parameter is just the "
"part after the host, so for [code]http://somehost.com/index.php[/code], it "
@@ -23486,43 +24003,43 @@ msgid ""
"Sends the body data raw, as a byte array and does not encode it in any way."
msgstr ""
-#: doc/classes/HTTPClient.xml:176
+#: doc/classes/HTTPClient.xml:177
msgid ""
"If [code]true[/code], execution will block until all data is read from the "
"response."
msgstr ""
-#: doc/classes/HTTPClient.xml:179
+#: doc/classes/HTTPClient.xml:180
msgid "The connection to use for this client."
msgstr ""
-#: doc/classes/HTTPClient.xml:182
+#: doc/classes/HTTPClient.xml:183
msgid ""
"The size of the buffer used and maximum bytes to read per iteration. See "
"[method read_response_body_chunk]."
msgstr ""
-#: doc/classes/HTTPClient.xml:187
+#: doc/classes/HTTPClient.xml:188
msgid ""
"HTTP GET method. The GET method requests a representation of the specified "
"resource. Requests using GET should only retrieve data."
msgstr ""
-#: doc/classes/HTTPClient.xml:190
+#: doc/classes/HTTPClient.xml:191
msgid ""
"HTTP HEAD method. The HEAD method asks for a response identical to that of a "
"GET request, but without the response body. This is useful to request "
"metadata like HTTP headers or to check if a resource exists."
msgstr ""
-#: doc/classes/HTTPClient.xml:193
+#: doc/classes/HTTPClient.xml:194
msgid ""
"HTTP POST method. The POST method is used to submit an entity to the "
"specified resource, often causing a change in state or side effects on the "
"server. This is often used for forms and submitting data or uploading files."
msgstr ""
-#: doc/classes/HTTPClient.xml:196
+#: doc/classes/HTTPClient.xml:197
msgid ""
"HTTP PUT method. The PUT method asks to replace all current representations "
"of the target resource with the request payload. (You can think of POST as "
@@ -23530,103 +24047,103 @@ msgid ""
"not make a clear distinction or change their meaning)."
msgstr ""
-#: doc/classes/HTTPClient.xml:199
+#: doc/classes/HTTPClient.xml:200
msgid ""
"HTTP DELETE method. The DELETE method requests to delete the specified "
"resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:202
+#: doc/classes/HTTPClient.xml:203
msgid ""
"HTTP OPTIONS method. The OPTIONS method asks for a description of the "
"communication options for the target resource. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:205
+#: doc/classes/HTTPClient.xml:206
msgid ""
"HTTP TRACE method. The TRACE method performs a message loop-back test along "
"the path to the target resource. Returns the entire HTTP request received in "
"the response body. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:208
+#: doc/classes/HTTPClient.xml:209
msgid ""
"HTTP CONNECT method. The CONNECT method establishes a tunnel to the server "
"identified by the target resource. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:211
+#: doc/classes/HTTPClient.xml:212
msgid ""
"HTTP PATCH method. The PATCH method is used to apply partial modifications "
"to a resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:214
+#: doc/classes/HTTPClient.xml:215
msgid "Represents the size of the [enum Method] enum."
msgstr ""
-#: doc/classes/HTTPClient.xml:217
+#: doc/classes/HTTPClient.xml:218
msgid "Status: Disconnected from the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:220
+#: doc/classes/HTTPClient.xml:221
msgid "Status: Currently resolving the hostname for the given URL into an IP."
msgstr ""
-#: doc/classes/HTTPClient.xml:223
+#: doc/classes/HTTPClient.xml:224
msgid "Status: DNS failure: Can't resolve the hostname for the given URL."
msgstr ""
-#: doc/classes/HTTPClient.xml:226
+#: doc/classes/HTTPClient.xml:227
msgid "Status: Currently connecting to server."
msgstr ""
-#: doc/classes/HTTPClient.xml:229
+#: doc/classes/HTTPClient.xml:230
msgid "Status: Can't connect to the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:232
+#: doc/classes/HTTPClient.xml:233
msgid "Status: Connection established."
msgstr ""
-#: doc/classes/HTTPClient.xml:235
+#: doc/classes/HTTPClient.xml:236
msgid "Status: Currently sending request."
msgstr ""
-#: doc/classes/HTTPClient.xml:238
+#: doc/classes/HTTPClient.xml:239
msgid "Status: HTTP body received."
msgstr ""
-#: doc/classes/HTTPClient.xml:241
+#: doc/classes/HTTPClient.xml:242
msgid "Status: Error in HTTP connection."
msgstr ""
-#: doc/classes/HTTPClient.xml:244
+#: doc/classes/HTTPClient.xml:245
msgid "Status: Error in SSL handshake."
msgstr ""
-#: doc/classes/HTTPClient.xml:247
+#: doc/classes/HTTPClient.xml:248
msgid ""
"HTTP status code [code]100 Continue[/code]. Interim response that indicates "
"everything so far is OK and that the client should continue with the request "
"(or ignore this status if already finished)."
msgstr ""
-#: doc/classes/HTTPClient.xml:250
+#: doc/classes/HTTPClient.xml:251
msgid ""
"HTTP status code [code]101 Switching Protocol[/code]. Sent in response to an "
"[code]Upgrade[/code] request header by the client. Indicates the protocol "
"the server is switching to."
msgstr ""
-#: doc/classes/HTTPClient.xml:253
+#: doc/classes/HTTPClient.xml:254
msgid ""
"HTTP status code [code]102 Processing[/code] (WebDAV). Indicates that the "
"server has received and is processing the request, but no response is "
"available yet."
msgstr ""
-#: doc/classes/HTTPClient.xml:256
+#: doc/classes/HTTPClient.xml:257
msgid ""
"HTTP status code [code]200 OK[/code]. The request has succeeded. Default "
"response for successful requests. Meaning varies depending on the request. "
@@ -23637,14 +24154,14 @@ msgid ""
"server."
msgstr ""
-#: doc/classes/HTTPClient.xml:259
+#: doc/classes/HTTPClient.xml:260
msgid ""
"HTTP status code [code]201 Created[/code]. The request has succeeded and a "
"new resource has been created as a result of it. This is typically the "
"response sent after a PUT request."
msgstr ""
-#: doc/classes/HTTPClient.xml:262
+#: doc/classes/HTTPClient.xml:263
msgid ""
"HTTP status code [code]202 Accepted[/code]. The request has been received "
"but not yet acted upon. It is non-committal, meaning that there is no way in "
@@ -23653,7 +24170,7 @@ msgid ""
"server handles the request, or for batch processing."
msgstr ""
-#: doc/classes/HTTPClient.xml:265
+#: doc/classes/HTTPClient.xml:266
msgid ""
"HTTP status code [code]203 Non-Authoritative Information[/code]. This "
"response code means returned meta-information set is not exact set as "
@@ -23662,14 +24179,14 @@ msgid ""
"instead of this response."
msgstr ""
-#: doc/classes/HTTPClient.xml:268
+#: doc/classes/HTTPClient.xml:269
msgid ""
"HTTP status code [code]204 No Content[/code]. There is no content to send "
"for this request, but the headers may be useful. The user-agent may update "
"its cached headers for this resource with the new ones."
msgstr ""
-#: doc/classes/HTTPClient.xml:271
+#: doc/classes/HTTPClient.xml:272
msgid ""
"HTTP status code [code]205 Reset Content[/code]. The server has fulfilled "
"the request and desires that the client resets the \"document view\" that "
@@ -23677,49 +24194,49 @@ msgid ""
"origin server."
msgstr ""
-#: doc/classes/HTTPClient.xml:274
+#: doc/classes/HTTPClient.xml:275
msgid ""
"HTTP status code [code]206 Partial Content[/code]. This response code is "
"used because of a range header sent by the client to separate download into "
"multiple streams."
msgstr ""
-#: doc/classes/HTTPClient.xml:277
+#: doc/classes/HTTPClient.xml:278
msgid ""
"HTTP status code [code]207 Multi-Status[/code] (WebDAV). A Multi-Status "
"response conveys information about multiple resources in situations where "
"multiple status codes might be appropriate."
msgstr ""
-#: doc/classes/HTTPClient.xml:280
+#: doc/classes/HTTPClient.xml:281
msgid ""
"HTTP status code [code]208 Already Reported[/code] (WebDAV). Used inside a "
"DAV: propstat response element to avoid enumerating the internal members of "
"multiple bindings to the same collection repeatedly."
msgstr ""
-#: doc/classes/HTTPClient.xml:283
+#: doc/classes/HTTPClient.xml:284
msgid ""
"HTTP status code [code]226 IM Used[/code] (WebDAV). The server has fulfilled "
"a GET request for the resource, and the response is a representation of the "
"result of one or more instance-manipulations applied to the current instance."
msgstr ""
-#: doc/classes/HTTPClient.xml:286
+#: doc/classes/HTTPClient.xml:287
msgid ""
"HTTP status code [code]300 Multiple Choice[/code]. The request has more than "
"one possible responses and there is no standardized way to choose one of the "
"responses. User-agent or user should choose one of them."
msgstr ""
-#: doc/classes/HTTPClient.xml:289
+#: doc/classes/HTTPClient.xml:290
msgid ""
"HTTP status code [code]301 Moved Permanently[/code]. Redirection. This "
"response code means the URI of requested resource has been changed. The new "
"URI is usually included in the response."
msgstr ""
-#: doc/classes/HTTPClient.xml:292
+#: doc/classes/HTTPClient.xml:293
msgid ""
"HTTP status code [code]302 Found[/code]. Temporary redirection. This "
"response code means the URI of requested resource has been changed "
@@ -23727,7 +24244,7 @@ msgid ""
"this same URI should be used by the client in future requests."
msgstr ""
-#: doc/classes/HTTPClient.xml:295
+#: doc/classes/HTTPClient.xml:296
msgid ""
"HTTP status code [code]303 See Other[/code]. The server is redirecting the "
"user agent to a different resource, as indicated by a URI in the Location "
@@ -23735,39 +24252,39 @@ msgid ""
"original request."
msgstr ""
-#: doc/classes/HTTPClient.xml:298
+#: doc/classes/HTTPClient.xml:299
msgid ""
"HTTP status code [code]304 Not Modified[/code]. A conditional GET or HEAD "
"request has been received and would have resulted in a 200 OK response if it "
"were not for the fact that the condition evaluated to [code]false[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:301
+#: doc/classes/HTTPClient.xml:302
msgid ""
"HTTP status code [code]305 Use Proxy[/code]. [i]Deprecated. Do not use.[/i]"
msgstr ""
-#: doc/classes/HTTPClient.xml:304
+#: doc/classes/HTTPClient.xml:305
msgid ""
"HTTP status code [code]306 Switch Proxy[/code]. [i]Deprecated. Do not use.[/"
"i]"
msgstr ""
-#: doc/classes/HTTPClient.xml:307
+#: doc/classes/HTTPClient.xml:308
msgid ""
"HTTP status code [code]307 Temporary Redirect[/code]. The target resource "
"resides temporarily under a different URI and the user agent MUST NOT change "
"the request method if it performs an automatic redirection to that URI."
msgstr ""
-#: doc/classes/HTTPClient.xml:310
+#: doc/classes/HTTPClient.xml:311
msgid ""
"HTTP status code [code]308 Permanent Redirect[/code]. The target resource "
"has been assigned a new permanent URI and any future references to this "
"resource ought to use one of the enclosed URIs."
msgstr ""
-#: doc/classes/HTTPClient.xml:313
+#: doc/classes/HTTPClient.xml:314
msgid ""
"HTTP status code [code]400 Bad Request[/code]. The request was invalid. The "
"server cannot or will not process the request due to something that is "
@@ -23776,21 +24293,21 @@ msgid ""
"routing)."
msgstr ""
-#: doc/classes/HTTPClient.xml:316
+#: doc/classes/HTTPClient.xml:317
msgid ""
"HTTP status code [code]401 Unauthorized[/code]. Credentials required. The "
"request has not been applied because it lacks valid authentication "
"credentials for the target resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:319
+#: doc/classes/HTTPClient.xml:320
msgid ""
"HTTP status code [code]402 Payment Required[/code]. This response code is "
"reserved for future use. Initial aim for creating this code was using it for "
"digital payment systems, however this is not currently used."
msgstr ""
-#: doc/classes/HTTPClient.xml:322
+#: doc/classes/HTTPClient.xml:323
msgid ""
"HTTP status code [code]403 Forbidden[/code]. The client does not have access "
"rights to the content, i.e. they are unauthorized, so server is rejecting to "
@@ -23798,7 +24315,7 @@ msgid ""
"known to the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:325
+#: doc/classes/HTTPClient.xml:326
msgid ""
"HTTP status code [code]404 Not Found[/code]. The server can not find "
"requested resource. Either the URL is not recognized or the endpoint is "
@@ -23806,7 +24323,7 @@ msgid ""
"403 to hide existence of a resource if the client is not authorized."
msgstr ""
-#: doc/classes/HTTPClient.xml:328
+#: doc/classes/HTTPClient.xml:329
msgid ""
"HTTP status code [code]405 Method Not Allowed[/code]. The request's HTTP "
"method is known by the server but has been disabled and cannot be used. For "
@@ -23814,7 +24331,7 @@ msgid ""
"GET and HEAD, must never be disabled and should not return this error code."
msgstr ""
-#: doc/classes/HTTPClient.xml:331
+#: doc/classes/HTTPClient.xml:332
msgid ""
"HTTP status code [code]406 Not Acceptable[/code]. The target resource does "
"not have a current representation that would be acceptable to the user "
@@ -23822,21 +24339,21 @@ msgid ""
"request. Used when negotiation content."
msgstr ""
-#: doc/classes/HTTPClient.xml:334
+#: doc/classes/HTTPClient.xml:335
msgid ""
"HTTP status code [code]407 Proxy Authentication Required[/code]. Similar to "
"401 Unauthorized, but it indicates that the client needs to authenticate "
"itself in order to use a proxy."
msgstr ""
-#: doc/classes/HTTPClient.xml:337
+#: doc/classes/HTTPClient.xml:338
msgid ""
"HTTP status code [code]408 Request Timeout[/code]. The server did not "
"receive a complete request message within the time that it was prepared to "
"wait."
msgstr ""
-#: doc/classes/HTTPClient.xml:340
+#: doc/classes/HTTPClient.xml:341
msgid ""
"HTTP status code [code]409 Conflict[/code]. The request could not be "
"completed due to a conflict with the current state of the target resource. "
@@ -23844,47 +24361,47 @@ msgid ""
"conflict and resubmit the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:343
+#: doc/classes/HTTPClient.xml:344
msgid ""
"HTTP status code [code]410 Gone[/code]. The target resource is no longer "
"available at the origin server and this condition is likely permanent."
msgstr ""
-#: doc/classes/HTTPClient.xml:346
+#: doc/classes/HTTPClient.xml:347
msgid ""
"HTTP status code [code]411 Length Required[/code]. The server refuses to "
"accept the request without a defined Content-Length header."
msgstr ""
-#: doc/classes/HTTPClient.xml:349
+#: doc/classes/HTTPClient.xml:350
msgid ""
"HTTP status code [code]412 Precondition Failed[/code]. One or more "
"conditions given in the request header fields evaluated to [code]false[/"
"code] when tested on the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:352
+#: doc/classes/HTTPClient.xml:353
msgid ""
"HTTP status code [code]413 Entity Too Large[/code]. The server is refusing "
"to process a request because the request payload is larger than the server "
"is willing or able to process."
msgstr ""
-#: doc/classes/HTTPClient.xml:355
+#: doc/classes/HTTPClient.xml:356
msgid ""
"HTTP status code [code]414 Request-URI Too Long[/code]. The server is "
"refusing to service the request because the request-target is longer than "
"the server is willing to interpret."
msgstr ""
-#: doc/classes/HTTPClient.xml:358
+#: doc/classes/HTTPClient.xml:359
msgid ""
"HTTP status code [code]415 Unsupported Media Type[/code]. The origin server "
"is refusing to service the request because the payload is in a format not "
"supported by this method on the target resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:361
+#: doc/classes/HTTPClient.xml:362
msgid ""
"HTTP status code [code]416 Requested Range Not Satisfiable[/code]. None of "
"the ranges in the request's Range header field overlap the current extent of "
@@ -23892,21 +24409,21 @@ msgid ""
"to invalid ranges or an excessive request of small or overlapping ranges."
msgstr ""
-#: doc/classes/HTTPClient.xml:364
+#: doc/classes/HTTPClient.xml:365
msgid ""
"HTTP status code [code]417 Expectation Failed[/code]. The expectation given "
"in the request's Expect header field could not be met by at least one of the "
"inbound servers."
msgstr ""
-#: doc/classes/HTTPClient.xml:367
+#: doc/classes/HTTPClient.xml:368
msgid ""
"HTTP status code [code]418 I'm A Teapot[/code]. Any attempt to brew coffee "
"with a teapot should result in the error code \"418 I'm a teapot\". The "
"resulting entity body MAY be short and stout."
msgstr ""
-#: doc/classes/HTTPClient.xml:370
+#: doc/classes/HTTPClient.xml:371
msgid ""
"HTTP status code [code]421 Misdirected Request[/code]. The request was "
"directed at a server that is not able to produce a response. This can be "
@@ -23914,7 +24431,7 @@ msgid ""
"combination of scheme and authority that are included in the request URI."
msgstr ""
-#: doc/classes/HTTPClient.xml:373
+#: doc/classes/HTTPClient.xml:374
msgid ""
"HTTP status code [code]422 Unprocessable Entity[/code] (WebDAV). The server "
"understands the content type of the request entity (hence a 415 Unsupported "
@@ -23923,40 +24440,40 @@ msgid ""
"was unable to process the contained instructions."
msgstr ""
-#: doc/classes/HTTPClient.xml:376
+#: doc/classes/HTTPClient.xml:377
msgid ""
"HTTP status code [code]423 Locked[/code] (WebDAV). The source or destination "
"resource of a method is locked."
msgstr ""
-#: doc/classes/HTTPClient.xml:379
+#: doc/classes/HTTPClient.xml:380
msgid ""
"HTTP status code [code]424 Failed Dependency[/code] (WebDAV). The method "
"could not be performed on the resource because the requested action depended "
"on another action and that action failed."
msgstr ""
-#: doc/classes/HTTPClient.xml:382
+#: doc/classes/HTTPClient.xml:383
msgid ""
"HTTP status code [code]426 Upgrade Required[/code]. The server refuses to "
"perform the request using the current protocol but might be willing to do so "
"after the client upgrades to a different protocol."
msgstr ""
-#: doc/classes/HTTPClient.xml:385
+#: doc/classes/HTTPClient.xml:386
msgid ""
"HTTP status code [code]428 Precondition Required[/code]. The origin server "
"requires the request to be conditional."
msgstr ""
-#: doc/classes/HTTPClient.xml:388
+#: doc/classes/HTTPClient.xml:389
msgid ""
"HTTP status code [code]429 Too Many Requests[/code]. The user has sent too "
"many requests in a given amount of time (see \"rate limiting\"). Back off "
"and increase time between requests or try again later."
msgstr ""
-#: doc/classes/HTTPClient.xml:391
+#: doc/classes/HTTPClient.xml:392
msgid ""
"HTTP status code [code]431 Request Header Fields Too Large[/code]. The "
"server is unwilling to process the request because its header fields are too "
@@ -23964,27 +24481,27 @@ msgid ""
"header fields."
msgstr ""
-#: doc/classes/HTTPClient.xml:394
+#: doc/classes/HTTPClient.xml:395
msgid ""
"HTTP status code [code]451 Response Unavailable For Legal Reasons[/code]. "
"The server is denying access to the resource as a consequence of a legal "
"demand."
msgstr ""
-#: doc/classes/HTTPClient.xml:397
+#: doc/classes/HTTPClient.xml:398
msgid ""
"HTTP status code [code]500 Internal Server Error[/code]. The server "
"encountered an unexpected condition that prevented it from fulfilling the "
"request."
msgstr ""
-#: doc/classes/HTTPClient.xml:400
+#: doc/classes/HTTPClient.xml:401
msgid ""
"HTTP status code [code]501 Not Implemented[/code]. The server does not "
"support the functionality required to fulfill the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:403
+#: doc/classes/HTTPClient.xml:404
msgid ""
"HTTP status code [code]502 Bad Gateway[/code]. The server, while acting as a "
"gateway or proxy, received an invalid response from an inbound server it "
@@ -23992,7 +24509,7 @@ msgid ""
"balancers or proxies."
msgstr ""
-#: doc/classes/HTTPClient.xml:406
+#: doc/classes/HTTPClient.xml:407
msgid ""
"HTTP status code [code]503 Service Unavailable[/code]. The server is "
"currently unable to handle the request due to a temporary overload or "
@@ -24000,7 +24517,7 @@ msgid ""
"again later."
msgstr ""
-#: doc/classes/HTTPClient.xml:409
+#: doc/classes/HTTPClient.xml:410
msgid ""
"HTTP status code [code]504 Gateway Timeout[/code]. The server, while acting "
"as a gateway or proxy, did not receive a timely response from an upstream "
@@ -24008,14 +24525,14 @@ msgid ""
"returned by load balancers or proxies."
msgstr ""
-#: doc/classes/HTTPClient.xml:412
+#: doc/classes/HTTPClient.xml:413
msgid ""
"HTTP status code [code]505 HTTP Version Not Supported[/code]. The server "
"does not support, or refuses to support, the major version of HTTP that was "
"used in the request message."
msgstr ""
-#: doc/classes/HTTPClient.xml:415
+#: doc/classes/HTTPClient.xml:416
msgid ""
"HTTP status code [code]506 Variant Also Negotiates[/code]. The server has an "
"internal configuration error: the chosen variant resource is configured to "
@@ -24023,14 +24540,14 @@ msgid ""
"proper end point in the negotiation process."
msgstr ""
-#: doc/classes/HTTPClient.xml:418
+#: doc/classes/HTTPClient.xml:419
msgid ""
"HTTP status code [code]507 Insufficient Storage[/code]. The method could not "
"be performed on the resource because the server is unable to store the "
"representation needed to successfully complete the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:421
+#: doc/classes/HTTPClient.xml:422
msgid ""
"HTTP status code [code]508 Loop Detected[/code]. The server terminated an "
"operation because it encountered an infinite loop while processing a request "
@@ -24038,14 +24555,14 @@ msgid ""
"failed."
msgstr ""
-#: doc/classes/HTTPClient.xml:424
+#: doc/classes/HTTPClient.xml:425
msgid ""
"HTTP status code [code]510 Not Extended[/code]. The policy for accessing the "
"resource has not been met in the request. The server should send back all "
"the information necessary for the client to issue an extended request."
msgstr ""
-#: doc/classes/HTTPClient.xml:427
+#: doc/classes/HTTPClient.xml:428
msgid ""
"HTTP status code [code]511 Network Authentication Required[/code]. The "
"client needs to authenticate to gain network access."
@@ -24071,12 +24588,21 @@ msgid ""
" http_request.connect(\"request_completed\", self, "
"\"_http_request_completed\")\n"
"\n"
-" # Perform the HTTP request. The URL below returns some JSON as of "
-"writing.\n"
+" # Perform a GET request. The URL below returns JSON as of writing.\n"
" var error = http_request.request(\"https://httpbin.org/get\")\n"
" if error != OK:\n"
" push_error(\"An error occurred in the HTTP request.\")\n"
"\n"
+" # Perform a POST request. The URL below returns JSON as of writing.\n"
+" # Note: Don't make simultaneous requests using a single HTTPRequest "
+"node.\n"
+" # The snippet below is provided for reference only.\n"
+" var body = {\"name\": \"Godette\"}\n"
+" var error = http_request.request(\"https://httpbin.org/post\", [], true, "
+"HTTPClient.METHOD_POST, body)\n"
+" if error != OK:\n"
+" push_error(\"An error occurred in the HTTP request.\")\n"
+"\n"
"\n"
"# Called when the HTTP request is completed.\n"
"func _http_request_completed(result, response_code, headers, body):\n"
@@ -24116,20 +24642,26 @@ msgid ""
" var texture_rect = TextureRect.new()\n"
" add_child(texture_rect)\n"
" texture_rect.texture = texture\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] When performing HTTP requests from a project exported to HTML5, "
+"keep in mind the remote server may not allow requests from foreign origins "
+"due to [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/"
+"url]. If you host the server in question, you should modify its backend to "
+"allow requests from foreign origins by adding the [code]Access-Control-Allow-"
+"Origin: *[/code] HTTP header."
msgstr ""
-#: doc/classes/HTTPRequest.xml:61
+#: doc/classes/HTTPRequest.xml:70
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/"
"http_request_class.html"
msgstr ""
-#: doc/classes/HTTPRequest.xml:69
+#: doc/classes/HTTPRequest.xml:78
msgid "Cancels the current request."
msgstr ""
-#: doc/classes/HTTPRequest.xml:76
+#: doc/classes/HTTPRequest.xml:85
msgid ""
"Returns the response body length.\n"
"[b]Note:[/b] Some Web servers may not send a body length. In this case, the "
@@ -24137,17 +24669,17 @@ msgid ""
"the body length will also be [code]-1[/code]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:84
+#: doc/classes/HTTPRequest.xml:93
msgid "Returns the amount of bytes this HTTPRequest downloaded."
msgstr ""
-#: doc/classes/HTTPRequest.xml:91
+#: doc/classes/HTTPRequest.xml:100
msgid ""
"Returns the current status of the underlying [HTTPClient]. See [enum "
"HTTPClient.Status]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:108
+#: doc/classes/HTTPRequest.xml:117
msgid ""
"Creates request on the underlying [HTTPClient]. If there is no configuration "
"errors, it tries to connect using [method HTTPClient.connect_to_host] and "
@@ -24160,11 +24692,11 @@ msgid ""
"connect to host."
msgstr ""
-#: doc/classes/HTTPRequest.xml:115
+#: doc/classes/HTTPRequest.xml:124
msgid "Maximum allowed size for response bodies."
msgstr ""
-#: doc/classes/HTTPRequest.xml:118
+#: doc/classes/HTTPRequest.xml:127
msgid ""
"The size of the buffer used and maximum bytes to read per iteration. See "
"[member HTTPClient.read_chunk_size].\n"
@@ -24172,63 +24704,63 @@ msgid ""
"files to achieve better speeds at the cost of memory."
msgstr ""
-#: doc/classes/HTTPRequest.xml:122
+#: doc/classes/HTTPRequest.xml:131
msgid "The file to download into. Will output any received file into it."
msgstr ""
-#: doc/classes/HTTPRequest.xml:125
+#: doc/classes/HTTPRequest.xml:134
msgid "Maximum number of allowed redirects."
msgstr ""
-#: doc/classes/HTTPRequest.xml:130
+#: doc/classes/HTTPRequest.xml:139
msgid "If [code]true[/code], multithreading is used to improve performance."
msgstr ""
-#: doc/classes/HTTPRequest.xml:144
+#: doc/classes/HTTPRequest.xml:153
msgid "Emitted when a request is completed."
msgstr ""
-#: doc/classes/HTTPRequest.xml:150
+#: doc/classes/HTTPRequest.xml:159
msgid "Request successful."
msgstr ""
-#: doc/classes/HTTPRequest.xml:155
+#: doc/classes/HTTPRequest.xml:164
msgid "Request failed while connecting."
msgstr ""
-#: doc/classes/HTTPRequest.xml:158
+#: doc/classes/HTTPRequest.xml:167
msgid "Request failed while resolving."
msgstr ""
-#: doc/classes/HTTPRequest.xml:161
+#: doc/classes/HTTPRequest.xml:170
msgid "Request failed due to connection (read/write) error."
msgstr ""
-#: doc/classes/HTTPRequest.xml:164
+#: doc/classes/HTTPRequest.xml:173
msgid "Request failed on SSL handshake."
msgstr ""
-#: doc/classes/HTTPRequest.xml:167
+#: doc/classes/HTTPRequest.xml:176
msgid "Request does not have a response (yet)."
msgstr ""
-#: doc/classes/HTTPRequest.xml:170
+#: doc/classes/HTTPRequest.xml:179
msgid "Request exceeded its maximum size limit, see [member body_size_limit]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:173
+#: doc/classes/HTTPRequest.xml:182
msgid "Request failed (currently unused)."
msgstr ""
-#: doc/classes/HTTPRequest.xml:176
+#: doc/classes/HTTPRequest.xml:185
msgid "HTTPRequest couldn't open the download file."
msgstr ""
-#: doc/classes/HTTPRequest.xml:179
+#: doc/classes/HTTPRequest.xml:188
msgid "HTTPRequest couldn't write to the download file."
msgstr ""
-#: doc/classes/HTTPRequest.xml:182
+#: doc/classes/HTTPRequest.xml:191
msgid "Request reached its maximum redirect limit, see [member max_redirects]."
msgstr ""
@@ -24452,42 +24984,46 @@ msgid "Loads an image from the binary contents of a PNG file."
msgstr ""
#: doc/classes/Image.xml:373
+msgid "Loads an image from the binary contents of a TGA file."
+msgstr ""
+
+#: doc/classes/Image.xml:382
msgid "Loads an image from the binary contents of a WebP file."
msgstr ""
-#: doc/classes/Image.xml:380
+#: doc/classes/Image.xml:389
msgid ""
"Converts the image's data to represent coordinates on a 3D plane. This is "
"used when the image represents a normalmap. A normalmap can add lots of "
"detail to a 3D surface without increasing the polygon count."
msgstr ""
-#: doc/classes/Image.xml:387
+#: doc/classes/Image.xml:396
msgid ""
"Multiplies color values with alpha values. Resulting color values for a "
"pixel are [code](color * alpha)/256[/code]."
msgstr ""
-#: doc/classes/Image.xml:400
+#: doc/classes/Image.xml:409
msgid ""
"Resizes the image to the given [code]width[/code] and [code]height[/code]. "
"New pixels are calculated using [code]interpolation[/code]. See "
"[code]interpolation[/code] constants."
msgstr ""
-#: doc/classes/Image.xml:409
+#: doc/classes/Image.xml:418
msgid ""
"Resizes the image to the nearest power of 2 for the width and height. If "
"[code]square[/code] is [code]true[/code] then set width and height to be the "
"same."
msgstr ""
-#: doc/classes/Image.xml:416
+#: doc/classes/Image.xml:425
msgid ""
"Converts a standard RGBE (Red Green Blue Exponent) image to an sRGB image."
msgstr ""
-#: doc/classes/Image.xml:427
+#: doc/classes/Image.xml:436
msgid ""
"Saves the image as an EXR file to [code]path[/code]. If [code]grayscale[/"
"code] is [code]true[/code] and the image has only one channel, it will be "
@@ -24496,11 +25032,11 @@ msgid ""
"TinyEXR module."
msgstr ""
-#: doc/classes/Image.xml:436
+#: doc/classes/Image.xml:445
msgid "Saves the image as a PNG file to [code]path[/code]."
msgstr ""
-#: doc/classes/Image.xml:455
+#: doc/classes/Image.xml:464
msgid ""
"Sets the [Color] of the pixel at [code](x, y)[/code]. Example:\n"
"[codeblock]\n"
@@ -24510,7 +25046,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Image.xml:471
+#: doc/classes/Image.xml:480
msgid ""
"Sets the [Color] of the pixel at [code](dst.x, dst.y)[/code]. Note that the "
"[code]dst[/code] values must be integers. Example:\n"
@@ -24521,51 +25057,51 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Image.xml:483
+#: doc/classes/Image.xml:492
msgid "Shrinks the image by a factor of 2."
msgstr ""
-#: doc/classes/Image.xml:490
+#: doc/classes/Image.xml:499
msgid "Converts the raw data from the sRGB colorspace to a linear scale."
msgstr ""
-#: doc/classes/Image.xml:496
+#: doc/classes/Image.xml:505
msgid ""
"Holds all of the image's color data in a given format. See [enum Format] "
"constants."
msgstr ""
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:510
msgid "The maximal width allowed for [Image] resources."
msgstr ""
-#: doc/classes/Image.xml:504
+#: doc/classes/Image.xml:513
msgid "The maximal height allowed for [Image] resources."
msgstr ""
-#: doc/classes/Image.xml:507
+#: doc/classes/Image.xml:516
msgid "Texture format with a single 8-bit depth representing luminance."
msgstr ""
-#: doc/classes/Image.xml:510
+#: doc/classes/Image.xml:519
msgid ""
"OpenGL texture format with two values, luminance and alpha each stored with "
"8 bits."
msgstr ""
-#: doc/classes/Image.xml:513
+#: doc/classes/Image.xml:522
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
"bitdepth of 8."
msgstr ""
-#: doc/classes/Image.xml:516
+#: doc/classes/Image.xml:525
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
-#: doc/classes/Image.xml:519
+#: doc/classes/Image.xml:528
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -24573,7 +25109,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:523
+#: doc/classes/Image.xml:532
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -24581,67 +25117,67 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:536
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
-#: doc/classes/Image.xml:532
+#: doc/classes/Image.xml:541
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
-#: doc/classes/Image.xml:535
+#: doc/classes/Image.xml:544
msgid ""
"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
"each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:538
+#: doc/classes/Image.xml:547
msgid ""
"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
"components, each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:541
+#: doc/classes/Image.xml:550
msgid ""
"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
"components, each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:544
+#: doc/classes/Image.xml:553
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 16-"
"bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:556
msgid ""
"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
"each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:550
+#: doc/classes/Image.xml:559
msgid ""
"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
"components, each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:553
+#: doc/classes/Image.xml:562
msgid ""
"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
"components, each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:556
+#: doc/classes/Image.xml:565
msgid ""
"A special OpenGL texture format where the three color components have 9 bits "
"of precision and all three share a single 5-bit exponent."
msgstr ""
-#: doc/classes/Image.xml:559
+#: doc/classes/Image.xml:568
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format that uses Block Compression 1, and is the smallest variation "
@@ -24651,7 +25187,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:563
+#: doc/classes/Image.xml:572
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format that uses Block Compression 2, and color data is interpreted "
@@ -24661,7 +25197,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:567
+#: doc/classes/Image.xml:576
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format also known as Block Compression 3 or BC3 that contains 64 "
@@ -24672,7 +25208,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:571
+#: doc/classes/Image.xml:580
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -24680,7 +25216,7 @@ msgid ""
"DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:574
+#: doc/classes/Image.xml:583
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -24688,7 +25224,7 @@ msgid ""
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:577
+#: doc/classes/Image.xml:586
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -24697,21 +25233,21 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:581
+#: doc/classes/Image.xml:590
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with signed floating-point "
"RGB components."
msgstr ""
-#: doc/classes/Image.xml:584
+#: doc/classes/Image.xml:593
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned floating-point "
"RGB components."
msgstr ""
-#: doc/classes/Image.xml:587
+#: doc/classes/Image.xml:596
msgid ""
"Texture format used on PowerVR-supported mobile platforms, uses 2-bit color "
"depth with no alpha. More information can be found [url=https://en.wikipedia."
@@ -24720,25 +25256,25 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:600
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:603
msgid ""
"Similar to [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with 4-"
"bit color depth and no alpha."
msgstr ""
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:606
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:609
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -24746,7 +25282,7 @@ msgid ""
"standard. This format cannot store an alpha channel."
msgstr ""
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:612
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24754,7 +25290,7 @@ msgid ""
"unsigned data."
msgstr ""
-#: doc/classes/Image.xml:606
+#: doc/classes/Image.xml:615
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24762,7 +25298,7 @@ msgid ""
"channel of signed data."
msgstr ""
-#: doc/classes/Image.xml:609
+#: doc/classes/Image.xml:618
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24770,7 +25306,7 @@ msgid ""
"of unsigned data."
msgstr ""
-#: doc/classes/Image.xml:612
+#: doc/classes/Image.xml:621
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24778,7 +25314,7 @@ msgid ""
"channels of signed data."
msgstr ""
-#: doc/classes/Image.xml:615
+#: doc/classes/Image.xml:624
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24788,7 +25324,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:619
+#: doc/classes/Image.xml:628
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24798,7 +25334,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:623
+#: doc/classes/Image.xml:632
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24809,31 +25345,31 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:631
+#: doc/classes/Image.xml:640
msgid "Represents the size of the [enum Format] enum."
msgstr ""
-#: doc/classes/Image.xml:634
+#: doc/classes/Image.xml:643
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
-#: doc/classes/Image.xml:637
+#: doc/classes/Image.xml:646
msgid ""
"Performs bilinear interpolation. If the image is resized, it will be blurry. "
"This mode is faster than [constant INTERPOLATE_CUBIC], but it results in "
"lower quality."
msgstr ""
-#: doc/classes/Image.xml:640
+#: doc/classes/Image.xml:649
msgid ""
"Performs cubic interpolation. If the image is resized, it will be blurry. "
"This mode often gives better results compared to [constant "
"INTERPOLATE_BILINEAR], at the cost of being slower."
msgstr ""
-#: doc/classes/Image.xml:643
+#: doc/classes/Image.xml:652
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -24848,55 +25384,55 @@ msgid ""
"a new set will be generated for the resulting image."
msgstr ""
-#: doc/classes/Image.xml:650
+#: doc/classes/Image.xml:659
msgid ""
"Performs Lanczos interpolation. This is the slowest image resizing mode, but "
"it typically gives the best results, especially when downscalng images."
msgstr ""
-#: doc/classes/Image.xml:653
+#: doc/classes/Image.xml:662
msgid "Image does not have alpha."
msgstr ""
-#: doc/classes/Image.xml:656
+#: doc/classes/Image.xml:665
msgid "Image stores alpha in a single bit."
msgstr ""
-#: doc/classes/Image.xml:659
+#: doc/classes/Image.xml:668
msgid "Image uses alpha."
msgstr ""
-#: doc/classes/Image.xml:662
+#: doc/classes/Image.xml:671
msgid "Use S3TC compression."
msgstr ""
-#: doc/classes/Image.xml:665
+#: doc/classes/Image.xml:674
msgid "Use PVRTC2 compression."
msgstr ""
-#: doc/classes/Image.xml:668
+#: doc/classes/Image.xml:677
msgid "Use PVRTC4 compression."
msgstr ""
-#: doc/classes/Image.xml:671
+#: doc/classes/Image.xml:680
msgid "Use ETC compression."
msgstr ""
-#: doc/classes/Image.xml:674
+#: doc/classes/Image.xml:683
msgid "Use ETC2 compression."
msgstr ""
-#: doc/classes/Image.xml:689
+#: doc/classes/Image.xml:698
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
-#: doc/classes/Image.xml:692
+#: doc/classes/Image.xml:701
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
-#: doc/classes/Image.xml:695
+#: doc/classes/Image.xml:704
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -25715,7 +26251,7 @@ msgid "Contains mouse click information. See [method Node._input]."
msgstr ""
#: doc/classes/InputEventMouseButton.xml:10
-#: doc/classes/InputEventMouseMotion.xml:10
+#: doc/classes/InputEventMouseMotion.xml:11
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/inputs/"
"mouse_and_input_coordinates.html"
@@ -25752,29 +26288,36 @@ msgstr ""
#: doc/classes/InputEventMouseMotion.xml:7
msgid ""
"Contains mouse and pen motion information. Supports relative, absolute "
-"positions and speed. See [method Node._input]."
+"positions and speed. See [method Node._input].\n"
+"[b]Note:[/b] By default, this event is only emitted once per frame rendered "
+"at most. If you need more precise input reporting, call [method Input."
+"set_use_accumulated_input] with [code]false[/code] to make events emitted as "
+"often as possible. If you use InputEventMouseMotion to draw lines, consider "
+"implementing [url=https://en.wikipedia.org/wiki/Bresenham"
+"%27s_line_algorithm]Bresenham's line algorithm[/url] as well to avoid "
+"visible gaps in lines if the user is moving the mouse quickly."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:16
+#: doc/classes/InputEventMouseMotion.xml:17
msgid ""
"Represents the pressure the user puts on the pen. Ranges from [code]0.0[/"
"code] to [code]1.0[/code]."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:19
+#: doc/classes/InputEventMouseMotion.xml:20
msgid ""
"The mouse position relative to the previous position (position at the last "
-"frame). \n"
+"frame).\n"
"[b]Note:[/b] Since [InputEventMouseMotion] is only emitted when the mouse "
"moves, the last event won't have a relative position of [code]Vector2(0, 0)[/"
"code] when the user stops moving the mouse."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:23
+#: doc/classes/InputEventMouseMotion.xml:24
msgid "The mouse speed in pixels per second."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:26
+#: doc/classes/InputEventMouseMotion.xml:27
msgid ""
"Represents the angles of tilt of the pen. Positive X-coordinate value "
"indicates a tilt to the right. Positive Y-coordinate value indicates a tilt "
@@ -26664,14 +27207,17 @@ msgstr ""
#: doc/classes/JSON.xml:18
msgid ""
-"Parses a JSON encoded string and returns a [JSONParseResult] containing the "
+"Parses a JSON-encoded string and returns a [JSONParseResult] containing the "
"result."
msgstr ""
#: doc/classes/JSON.xml:31
msgid ""
"Converts a [Variant] var to JSON text and returns the result. Useful for "
-"serializing data to store or send over the network."
+"serializing data to store or send over the network.\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, converting a Variant to JSON text "
+"will convert all numerical values to [float] types."
msgstr ""
#: doc/classes/JSONParseResult.xml:4
@@ -26694,14 +27240,14 @@ msgstr ""
#: doc/classes/JSONParseResult.xml:18
msgid ""
-"The line number where the error occurred if JSON source was not successfully "
-"parsed."
+"The line number where the error occurred if the JSON source was not "
+"successfully parsed."
msgstr ""
#: doc/classes/JSONParseResult.xml:21
msgid ""
-"The error message if JSON source was not successfully parsed. See the [enum "
-"Error] constants."
+"The error message if the JSON source was not successfully parsed. See the "
+"[enum Error] constants."
msgstr ""
#: doc/classes/JSONParseResult.xml:24
@@ -26709,11 +27255,11 @@ msgid ""
"A [Variant] containing the parsed JSON. Use [method @GDScript.typeof] or the "
"[code]is[/code] keyword to check if it is what you expect. For example, if "
"the JSON source starts with curly braces ([code]{}[/code]), a [Dictionary] "
-"will be returned. If the JSON source starts with braces ([code][][/code]), "
+"will be returned. If the JSON source starts with brackets ([code][][/code]), "
"an [Array] will be returned.\n"
"[b]Note:[/b] The JSON specification does not define integer or float types, "
-"but only a number type. Therefore, parsing a JSON text will convert all "
-"numerical values to float types.\n"
+"but only a [i]number[/i] type. Therefore, parsing a JSON text will convert "
+"all numerical values to [float] types.\n"
"[b]Note:[/b] JSON objects do not preserve key order like Godot dictionaries, "
"thus, you should not rely on keys being in a certain order if a dictionary "
"is constructed from JSON. In contrast, JSON arrays retain the order of their "
@@ -26723,7 +27269,7 @@ msgid ""
"if typeof(p.result) == TYPE_ARRAY:\n"
" print(p.result[0]) # Prints \"hello\"\n"
"else:\n"
-" print(\"unexpected results\")\n"
+" push_error(\"Unexpected results.\")\n"
"[/codeblock]"
msgstr ""
@@ -26839,7 +27385,7 @@ msgid ""
"simulation will run at an incorrect speed.\n"
"[code]linear_velocity[/code] is the velocity vector in pixels per second. "
"Unlike in [method move_and_collide], you should [i]not[/i] multiply it by "
-"[code]delta[/code] — the physics engine handles applying the velocity. \n"
+"[code]delta[/code] — the physics engine handles applying the velocity.\n"
"[code]up_direction[/code] is the up direction, used to determine what is a "
"wall and what is a floor or a ceiling. If set to the default value of "
"[code]Vector2(0, 0)[/code], everything is considered a wall. This is useful "
@@ -26955,7 +27501,7 @@ msgid ""
"[code]linear_velocity[/code] is the velocity vector (typically meters per "
"second). Unlike in [method move_and_collide], you should [i]not[/i] multiply "
"it by [code]delta[/code] — the physics engine handles applying the "
-"velocity. \n"
+"velocity.\n"
"[code]up_direction[/code] is the up direction, used to determine what is a "
"wall and what is a floor or a ceiling. If set to the default value of "
"[code]Vector3(0, 0, 0)[/code], everything is considered a wall.\n"
@@ -27684,17 +28230,6 @@ msgid ""
"[b]Note:[/b] Hiding a light does [i]not[/i] affect baking."
msgstr ""
-#: doc/classes/Light3D.xml:152
-msgid "Only indirect lighting will be baked (default)."
-msgstr ""
-
-#: doc/classes/Light3D.xml:155
-msgid ""
-"Both direct and indirect light will be baked.\n"
-"[b]Note:[/b] You should hide the light if you don't want it to appear twice "
-"(dynamic and baked)."
-msgstr ""
-
#: doc/classes/LightOccluder2D.xml:4
msgid "Occludes light cast by a Light2D, casting shadows."
msgstr ""
@@ -27973,136 +28508,142 @@ msgstr ""
msgid "Text alignment as defined in the [enum Align] enum."
msgstr ""
-#: doc/classes/LineEdit.xml:120 doc/classes/TextEdit.xml:406
+#: doc/classes/LineEdit.xml:120 doc/classes/TextEdit.xml:358
msgid "If [code]true[/code], the caret (visual cursor) blinks."
msgstr ""
-#: doc/classes/LineEdit.xml:123 doc/classes/TextEdit.xml:409
+#: doc/classes/LineEdit.xml:123 doc/classes/TextEdit.xml:361
msgid "Duration (in seconds) of a caret's blinking cycle."
msgstr ""
-#: doc/classes/LineEdit.xml:126
+#: doc/classes/LineEdit.xml:128
msgid ""
"The cursor's position inside the [LineEdit]. When set, the text may scroll "
"to accommodate it."
msgstr ""
-#: doc/classes/LineEdit.xml:129
+#: doc/classes/LineEdit.xml:131
msgid ""
"If [code]true[/code], the [LineEdit] will show a clear button if [code]text[/"
"code] is not empty, which can be used to clear the text quickly."
msgstr ""
-#: doc/classes/LineEdit.xml:132
+#: doc/classes/LineEdit.xml:134
msgid "If [code]true[/code], the context menu will appear when right-clicked."
msgstr ""
-#: doc/classes/LineEdit.xml:135
+#: doc/classes/LineEdit.xml:137
msgid ""
"If [code]false[/code], existing text cannot be modified and new text cannot "
"be added."
msgstr ""
-#: doc/classes/LineEdit.xml:138
+#: doc/classes/LineEdit.xml:140
msgid ""
"If [code]true[/code], the [LineEdit] width will increase to stay longer than "
"the [member text]. It will [b]not[/b] compress if the [member text] is "
"shortened."
msgstr ""
-#: doc/classes/LineEdit.xml:142
+#: doc/classes/LineEdit.xml:144
msgid ""
"Maximum amount of characters that can be entered inside the [LineEdit]. If "
"[code]0[/code], there is no limit."
msgstr ""
-#: doc/classes/LineEdit.xml:146
+#: doc/classes/LineEdit.xml:148
msgid ""
"Opacity of the [member placeholder_text]. From [code]0[/code] to [code]1[/"
"code]."
msgstr ""
-#: doc/classes/LineEdit.xml:149
+#: doc/classes/LineEdit.xml:151
msgid ""
"Text shown when the [LineEdit] is empty. It is [b]not[/b] the [LineEdit]'s "
"default value (see [member text])."
msgstr ""
-#: doc/classes/LineEdit.xml:152
+#: doc/classes/LineEdit.xml:154
msgid ""
"Sets the icon that will appear in the right end of the [LineEdit] if there's "
"no [member text], or always, if [member clear_button_enabled] is set to "
"[code]false[/code]."
msgstr ""
-#: doc/classes/LineEdit.xml:155
+#: doc/classes/LineEdit.xml:157
msgid ""
"If [code]true[/code], every character is replaced with the secret character "
"(see [member secret_character])."
msgstr ""
-#: doc/classes/LineEdit.xml:158
+#: doc/classes/LineEdit.xml:160
msgid ""
"The character to use to mask secret input (defaults to \"*\"). Only a single "
"character can be used as the secret character."
msgstr ""
-#: doc/classes/LineEdit.xml:161
+#: doc/classes/LineEdit.xml:163
msgid ""
"If [code]false[/code], it's impossible to select the text using mouse nor "
"keyboard."
msgstr ""
-#: doc/classes/LineEdit.xml:164
+#: doc/classes/LineEdit.xml:166
msgid "If [code]false[/code], using shortcuts will be disabled."
msgstr ""
-#: doc/classes/LineEdit.xml:167
+#: doc/classes/LineEdit.xml:169
msgid ""
"String value of the [LineEdit].\n"
"[b]Note:[/b] Changing text using this property won't emit the [signal "
"text_changed] signal."
msgstr ""
-#: doc/classes/LineEdit.xml:174
+#: doc/classes/LineEdit.xml:173 doc/classes/TextEdit.xml:434
+msgid ""
+"If [code]true[/code], the native virtual keyboard is shown when focused on "
+"platforms that support it."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:179
msgid ""
"Emitted when trying to append text that would overflow the [member "
"max_length]."
msgstr ""
-#: doc/classes/LineEdit.xml:181 doc/classes/TextEdit.xml:525
+#: doc/classes/LineEdit.xml:186 doc/classes/TextEdit.xml:490
msgid "Emitted when the text changes."
msgstr ""
-#: doc/classes/LineEdit.xml:188
+#: doc/classes/LineEdit.xml:193
msgid "Emitted when the user presses [constant KEY_ENTER] on the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:194
+#: doc/classes/LineEdit.xml:199
msgid "Aligns the text on the left-hand side of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:197
+#: doc/classes/LineEdit.xml:202
msgid "Centers the text in the middle of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:200
+#: doc/classes/LineEdit.xml:205
msgid "Aligns the text on the right-hand side of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:203
+#: doc/classes/LineEdit.xml:208
msgid "Stretches whitespaces to fit the [LineEdit]'s width."
msgstr ""
-#: doc/classes/LineEdit.xml:206 doc/classes/TextEdit.xml:540
+#: doc/classes/LineEdit.xml:211 doc/classes/TextEdit.xml:505
msgid "Cuts (copies and clears) the selected text."
msgstr ""
-#: doc/classes/LineEdit.xml:209 doc/classes/TextEdit.xml:543
+#: doc/classes/LineEdit.xml:214 doc/classes/TextEdit.xml:508
msgid "Copies the selected text."
msgstr ""
-#: doc/classes/LineEdit.xml:212
+#: doc/classes/LineEdit.xml:217
msgid ""
"Pastes the clipboard text over the selected text (or at the cursor's "
"position).\n"
@@ -28110,80 +28651,80 @@ msgid ""
"clipboard via [method String.strip_escapes]."
msgstr ""
-#: doc/classes/LineEdit.xml:216
+#: doc/classes/LineEdit.xml:221
msgid "Erases the whole [LineEdit] text."
msgstr ""
-#: doc/classes/LineEdit.xml:219
+#: doc/classes/LineEdit.xml:224
msgid "Selects the whole [LineEdit] text."
msgstr ""
-#: doc/classes/LineEdit.xml:222 doc/classes/TextEdit.xml:555
+#: doc/classes/LineEdit.xml:227 doc/classes/TextEdit.xml:520
msgid "Undoes the previous action."
msgstr ""
-#: doc/classes/LineEdit.xml:225
+#: doc/classes/LineEdit.xml:230
msgid "Reverse the last undo action."
msgstr ""
-#: doc/classes/LineEdit.xml:228 doc/classes/TextEdit.xml:561
+#: doc/classes/LineEdit.xml:233 doc/classes/TextEdit.xml:526
msgid "Represents the size of the [enum MenuItems] enum."
msgstr ""
-#: doc/classes/LineEdit.xml:233
+#: doc/classes/LineEdit.xml:238
msgid "Texture for the clear button. See [member clear_button_enabled]."
msgstr ""
-#: doc/classes/LineEdit.xml:236
+#: doc/classes/LineEdit.xml:241
msgid "Color used as default tint for the clear button."
msgstr ""
-#: doc/classes/LineEdit.xml:239
+#: doc/classes/LineEdit.xml:244
msgid "Color used for the clear button when it's pressed."
msgstr ""
-#: doc/classes/LineEdit.xml:242
+#: doc/classes/LineEdit.xml:247
msgid "Color of the [LineEdit]'s visual cursor (caret)."
msgstr ""
-#: doc/classes/LineEdit.xml:245
+#: doc/classes/LineEdit.xml:250
msgid "Background used when [LineEdit] has GUI focus."
msgstr ""
-#: doc/classes/LineEdit.xml:248
+#: doc/classes/LineEdit.xml:253
msgid "Font used for the text."
msgstr ""
-#: doc/classes/LineEdit.xml:251
+#: doc/classes/LineEdit.xml:256
msgid "Default font color."
msgstr ""
-#: doc/classes/LineEdit.xml:254
+#: doc/classes/LineEdit.xml:259
msgid "Font color for selected text (inside the selection rectangle)."
msgstr ""
-#: doc/classes/LineEdit.xml:257
+#: doc/classes/LineEdit.xml:262
msgid "Font color when editing is disabled."
msgstr ""
-#: doc/classes/LineEdit.xml:260
+#: doc/classes/LineEdit.xml:265
msgid ""
"Minimum horizontal space for the text (not counting the clear button and "
"content margins). This value is measured in count of space characters (i.e. "
"this amount of space characters can be displayed without scrolling)."
msgstr ""
-#: doc/classes/LineEdit.xml:263
+#: doc/classes/LineEdit.xml:268
msgid "Default background for the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:266
+#: doc/classes/LineEdit.xml:271
msgid ""
"Background used when [LineEdit] is in read-only mode ([member editable] is "
"set to [code]false[/code])."
msgstr ""
-#: doc/classes/LineEdit.xml:269
+#: doc/classes/LineEdit.xml:274
msgid "Color of the selection rectangle."
msgstr ""
@@ -28401,14 +28942,14 @@ msgstr ""
msgid "Emitted when a user responds to a permission request."
msgstr ""
-#: doc/classes/MainLoop.xml:127 doc/classes/Node.xml:948
+#: doc/classes/MainLoop.xml:127 doc/classes/Node.xml:946
msgid ""
"Notification received from the OS when the application is exceeding its "
"allocated memory.\n"
"Specific to the iOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:131 doc/classes/Node.xml:952
+#: doc/classes/MainLoop.xml:131 doc/classes/Node.xml:950
msgid ""
"Notification received when translations may have changed. Can be triggered "
"by the user changing the locale. Can be used to respond to language changes, "
@@ -28416,39 +28957,55 @@ msgid ""
"the built-in translation support, like [method Object.tr]."
msgstr ""
-#: doc/classes/MainLoop.xml:134 doc/classes/Node.xml:955
+#: doc/classes/MainLoop.xml:134 doc/classes/Node.xml:953
msgid ""
"Notification received from the OS when a request for \"About\" information "
"is sent.\n"
"Specific to the macOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:138 doc/classes/Node.xml:959
+#: doc/classes/MainLoop.xml:138 doc/classes/Node.xml:957
msgid ""
"Notification received from Godot's crash handler when the engine is about to "
"crash.\n"
"Implemented on desktop platforms if the crash handler is enabled."
msgstr ""
-#: doc/classes/MainLoop.xml:142 doc/classes/Node.xml:963
+#: doc/classes/MainLoop.xml:142 doc/classes/Node.xml:961
msgid ""
"Notification received from the OS when an update of the Input Method Engine "
"occurs (e.g. change of IME cursor position or composition string).\n"
"Specific to the macOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:146 doc/classes/Node.xml:967
+#: doc/classes/MainLoop.xml:146 doc/classes/Node.xml:965
msgid ""
-"Notification received from the OS when the app is resumed.\n"
+"Notification received from the OS when the application is resumed.\n"
"Specific to the Android platform."
msgstr ""
-#: doc/classes/MainLoop.xml:150 doc/classes/Node.xml:971
+#: doc/classes/MainLoop.xml:150 doc/classes/Node.xml:969
msgid ""
-"Notification received from the OS when the app is paused.\n"
+"Notification received from the OS when the application is paused.\n"
"Specific to the Android platform."
msgstr ""
+#: doc/classes/MainLoop.xml:154 doc/classes/Node.xml:973
+msgid ""
+"Notification received from the OS when the application is focused, i.e. when "
+"changing the focus from the OS desktop or a thirdparty application to any "
+"open window of the Godot instance.\n"
+"Implemented on desktop platforms."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:158 doc/classes/Node.xml:977
+msgid ""
+"Notification received from the OS when the application is defocused, i.e. "
+"when changing the focus from any open window of the Godot instance to the OS "
+"desktop or a thirdparty application.\n"
+"Implemented on desktop platforms."
+msgstr ""
+
#: doc/classes/MarginContainer.xml:4
msgid "Simple margin container."
msgstr ""
@@ -28756,11 +29313,11 @@ msgstr ""
msgid "Render array as triangle strips."
msgstr ""
-#: doc/classes/Mesh.xml:126 doc/classes/RenderingServer.xml:3189
+#: doc/classes/Mesh.xml:126 doc/classes/RenderingServer.xml:3185
msgid "Blend shapes are normalized."
msgstr ""
-#: doc/classes/Mesh.xml:129 doc/classes/RenderingServer.xml:3192
+#: doc/classes/Mesh.xml:129 doc/classes/RenderingServer.xml:3188
msgid "Blend shapes are relative to base weight."
msgstr ""
@@ -28802,37 +29359,37 @@ msgstr ""
msgid "Mesh array uses indices."
msgstr ""
-#: doc/classes/Mesh.xml:159 doc/classes/RenderingServer.xml:3145
+#: doc/classes/Mesh.xml:159 doc/classes/RenderingServer.xml:3141
msgid "Flag used to mark a compressed (half float) normal array."
msgstr ""
-#: doc/classes/Mesh.xml:162 doc/classes/RenderingServer.xml:3148
+#: doc/classes/Mesh.xml:162 doc/classes/RenderingServer.xml:3144
msgid "Flag used to mark a compressed (half float) tangent array."
msgstr ""
-#: doc/classes/Mesh.xml:165 doc/classes/RenderingServer.xml:3151
+#: doc/classes/Mesh.xml:165 doc/classes/RenderingServer.xml:3147
msgid "Flag used to mark a compressed (half float) color array."
msgstr ""
-#: doc/classes/Mesh.xml:168 doc/classes/RenderingServer.xml:3154
+#: doc/classes/Mesh.xml:168 doc/classes/RenderingServer.xml:3150
msgid "Flag used to mark a compressed (half float) UV coordinates array."
msgstr ""
-#: doc/classes/Mesh.xml:171 doc/classes/RenderingServer.xml:3157
+#: doc/classes/Mesh.xml:171 doc/classes/RenderingServer.xml:3153
msgid ""
"Flag used to mark a compressed (half float) UV coordinates array for the "
"second UV coordinates."
msgstr ""
-#: doc/classes/Mesh.xml:174 doc/classes/RenderingServer.xml:3160
+#: doc/classes/Mesh.xml:174 doc/classes/RenderingServer.xml:3156
msgid "Flag used to mark a compressed index array."
msgstr ""
-#: doc/classes/Mesh.xml:177 doc/classes/RenderingServer.xml:3166
+#: doc/classes/Mesh.xml:177 doc/classes/RenderingServer.xml:3162
msgid "Flag used to mark that the array contains 2D vertices."
msgstr ""
-#: doc/classes/Mesh.xml:180 doc/classes/RenderingServer.xml:3163
+#: doc/classes/Mesh.xml:180 doc/classes/RenderingServer.xml:3159
msgid ""
"Used to set flags [constant ARRAY_COMPRESS_NORMAL], [constant "
"ARRAY_COMPRESS_TANGENT], [constant ARRAY_COMPRESS_COLOR], [constant "
@@ -30593,7 +31150,10 @@ msgstr ""
msgid ""
"The number of channels to be used by ENet. Channels are used to separate "
"different kinds of data. In reliable or ordered mode, for example, the "
-"packet delivery order is ensured on a per channel basis."
+"packet delivery order is ensured on a per-channel basis. This is done to "
+"combat latency and reduces ordering restrictions on packets. The delivery "
+"status of a packet in one channel won't stall the delivery of other packets "
+"in another channel."
msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:134
@@ -30620,11 +31180,12 @@ msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:144
msgid ""
"Set the default channel to be used to transfer data. By default, this value "
-"is [code]-1[/code] which means that ENet will only use 2 channels, one for "
-"reliable and one for unreliable packets. Channel [code]0[/code] is reserved, "
-"and cannot be used. Setting this member to any value between [code]0[/code] "
-"and [member channel_count] (excluded) will force ENet to use that channel "
-"for sending data."
+"is [code]-1[/code] which means that ENet will only use 2 channels: one for "
+"reliable packets, and one for unreliable packets. The channel [code]0[/code] "
+"is reserved and cannot be used. Setting this member to any value between "
+"[code]0[/code] and [member channel_count] (excluded) will force ENet to use "
+"that channel for sending data. See [member channel_count] for more "
+"information about ENet channels."
msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:148
@@ -31816,57 +32377,63 @@ msgstr ""
#: doc/classes/Node.xml:930
msgid ""
-"Notification received from the OS when the game window is focused.\n"
-"Implemented on all platforms."
+"Notification received from the OS when the node's parent [Window] is "
+"focused. This may be a change of focus between two windows of the same "
+"engine instance, or from the OS desktop or a third-party application to a "
+"window of the game (in which case [constant "
+"NOTIFICATION_APPLICATION_FOCUS_IN] is also emitted)."
msgstr ""
-#: doc/classes/Node.xml:934
+#: doc/classes/Node.xml:933
msgid ""
-"Notification received from the OS when the game window is unfocused.\n"
-"Implemented on all platforms."
+"Notification received from the OS when the node's parent [Window] is "
+"defocused. This may be a change of focus between two windows of the same "
+"engine instance, or from a window of the game to the OS desktop or a third-"
+"party application (in which case [constant "
+"NOTIFICATION_APPLICATION_FOCUS_OUT] is also emitted)."
msgstr ""
-#: doc/classes/Node.xml:938
+#: doc/classes/Node.xml:936
msgid ""
"Notification received from the OS when a close request is sent (e.g. closing "
"the window with a \"Close\" button or [kbd]Alt + F4[/kbd]).\n"
"Implemented on desktop platforms."
msgstr ""
-#: doc/classes/Node.xml:942
+#: doc/classes/Node.xml:940
msgid ""
"Notification received from the OS when a go back request is sent (e.g. "
"pressing the \"Back\" button on Android).\n"
"Specific to the Android platform."
msgstr ""
-#: doc/classes/Node.xml:975
+#: doc/classes/Node.xml:981
msgid ""
"Inherits pause mode from the node's parent. For the root node, it is "
"equivalent to [constant PAUSE_MODE_STOP]. Default."
msgstr ""
-#: doc/classes/Node.xml:978
+#: doc/classes/Node.xml:984
msgid "Stops processing when the [SceneTree] is paused."
msgstr ""
-#: doc/classes/Node.xml:981
+#: doc/classes/Node.xml:987
msgid "Continue to process regardless of the [SceneTree] pause state."
msgstr ""
-#: doc/classes/Node.xml:984
+#: doc/classes/Node.xml:990
msgid "Duplicate the node's signals."
msgstr ""
-#: doc/classes/Node.xml:987
+#: doc/classes/Node.xml:993
msgid "Duplicate the node's groups."
msgstr ""
-#: doc/classes/Node.xml:990
+#: doc/classes/Node.xml:996
msgid "Duplicate the node's scripts."
msgstr ""
-#: doc/classes/Node.xml:993
+#: doc/classes/Node.xml:999
msgid ""
"Duplicate using instancing.\n"
"An instance stays linked to the original so when the original changes, the "
@@ -32090,12 +32657,6 @@ msgid ""
"changes. [Node3D] will not propagate this by default."
msgstr ""
-#: doc/classes/Node3D.xml:104
-msgid ""
-"Returns whether the node is visible, taking into consideration that its "
-"parents visibility."
-msgstr ""
-
#: doc/classes/Node3D.xml:115
msgid ""
"Rotates itself so that the local -Z axis points towards the [code]target[/"
@@ -32265,7 +32826,10 @@ msgid "Local translation of this node."
msgstr ""
#: doc/classes/Node3D.xml:326
-msgid "If [code]true[/code], this node is drawn."
+msgid ""
+"If [code]true[/code], this node is drawn. The node is only visible if all of "
+"its antecedents are visible as well (in other words, [method "
+"is_visible_in_tree] must return [code]true[/code])."
msgstr ""
#: doc/classes/Node3D.xml:332
@@ -32522,10 +33086,20 @@ msgid ""
"the key exists, even if the value is [code]null[/code].\n"
"Objects also receive notifications. Notifications are a simple way to notify "
"the object about different events, so they can all be handled together. See "
-"[method _notification]."
+"[method _notification].\n"
+"[b]Note:[/b] Unlike references to a [Reference], references to an Object "
+"stored in a variable can become invalid without warning. Therefore, it's "
+"recommended to use [Reference] for data classes instead of [Object]."
msgstr ""
-#: doc/classes/Object.xml:30
+#: doc/classes/Object.xml:23 doc/classes/Reference.xml:12
+#: doc/classes/Resource.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/getting_started/workflow/"
+"best_practices/node_alternatives.html"
+msgstr ""
+
+#: doc/classes/Object.xml:32
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method get].\n"
@@ -32533,7 +33107,7 @@ msgid ""
"code] does not exist."
msgstr ""
-#: doc/classes/Object.xml:38
+#: doc/classes/Object.xml:40
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method get_property_list].\n"
@@ -32545,11 +33119,11 @@ msgid ""
"PropertyUsageFlags])."
msgstr ""
-#: doc/classes/Object.xml:47
+#: doc/classes/Object.xml:49
msgid "Called when the object is initialized."
msgstr ""
-#: doc/classes/Object.xml:56
+#: doc/classes/Object.xml:58
msgid ""
"Called whenever the object receives a notification, which is identified in "
"[code]what[/code] by a constant. The base [Object] has two constants "
@@ -32558,7 +33132,7 @@ msgid ""
"notifications which are also received by this method."
msgstr ""
-#: doc/classes/Object.xml:67
+#: doc/classes/Object.xml:69
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method set].\n"
@@ -32566,7 +33140,7 @@ msgid ""
"exists."
msgstr ""
-#: doc/classes/Object.xml:75
+#: doc/classes/Object.xml:77
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method to_string], and thus the object's representation where it is "
@@ -32575,34 +33149,42 @@ msgid ""
"[code]\"[ClassName:RID]\"[/code]."
msgstr ""
-#: doc/classes/Object.xml:87
+#: doc/classes/Object.xml:89
msgid ""
"Adds a user-defined [code]signal[/code]. Arguments are optional, but can be "
"added as an [Array] of dictionaries, each containing [code]name: String[/"
"code] and [code]type: int[/code] (see [enum Variant.Type]) entries."
msgstr ""
-#: doc/classes/Object.xml:96
+#: doc/classes/Object.xml:98
msgid ""
"Calls the [code]method[/code] on the object and returns the result. This "
"method supports a variable number of arguments, so parameters are passed as "
"a comma separated list. Example:\n"
"[codeblock]\n"
"call(\"set\", \"position\", Vector2(42.0, 0.0))\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] In C#, the method name must be specified as snake_case if it is "
+"defined by a built-in Godot node. This doesn't apply to user-defined methods "
+"where you should use the same convention as in the C# source (typically "
+"PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:108
+#: doc/classes/Object.xml:111
msgid ""
"Calls the [code]method[/code] on the object during idle time. This method "
"supports a variable number of arguments, so parameters are passed as a comma "
"separated list. Example:\n"
"[codeblock]\n"
"call_deferred(\"set\", \"position\", Vector2(42.0, 0.0))\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] In C#, the method name must be specified as snake_case if it is "
+"defined by a built-in Godot node. This doesn't apply to user-defined methods "
+"where you should use the same convention as in the C# source (typically "
+"PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:122
+#: doc/classes/Object.xml:126
msgid ""
"Calls the [code]method[/code] on the object and returns the result. "
"Contrarily to [method call], this method does not support a variable number "
@@ -32612,13 +33194,13 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:132
+#: doc/classes/Object.xml:136
msgid ""
"Returns [code]true[/code] if the object can translate strings. See [method "
"set_message_translation] and [method tr]."
msgstr ""
-#: doc/classes/Object.xml:147
+#: doc/classes/Object.xml:151
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32654,7 +33236,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:174
+#: doc/classes/Object.xml:178
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32665,7 +33247,7 @@ msgid ""
"exists."
msgstr ""
-#: doc/classes/Object.xml:185
+#: doc/classes/Object.xml:189
msgid ""
"Emits the given [code]signal[/code]. The signal must exist, so it should be "
"a built-in signal of this class or one of its parent classes, or a user-"
@@ -32677,24 +33259,28 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:196
+#: doc/classes/Object.xml:200
msgid ""
"Deletes the object from memory. Any pre-existing reference to the freed "
"object will become invalid, e.g. [code]is_instance_valid(object)[/code] will "
"return [code]false[/code]."
msgstr ""
-#: doc/classes/Object.xml:205
+#: doc/classes/Object.xml:209
msgid ""
"Returns the [Variant] value of the given [code]property[/code]. If the "
-"[code]property[/code] doesn't exist, this will return [code]null[/code]."
+"[code]property[/code] doesn't exist, this will return [code]null[/code].\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:212
+#: doc/classes/Object.xml:217
msgid "Returns the object's class as a [String]."
msgstr ""
-#: doc/classes/Object.xml:219
+#: doc/classes/Object.xml:224
msgid ""
"Returns an [Array] of dictionaries with information about signals that are "
"connected to the object.\n"
@@ -32705,7 +33291,7 @@ msgid ""
"connected."
msgstr ""
-#: doc/classes/Object.xml:232
+#: doc/classes/Object.xml:237
msgid ""
"Gets the object's property indexed by the given [NodePath]. The node path "
"should be relative to the current object and can use the colon character "
@@ -32713,26 +33299,26 @@ msgid ""
"\"[/code] or [code]\"material:next_pass:blend_mode\"[/code]."
msgstr ""
-#: doc/classes/Object.xml:239
+#: doc/classes/Object.xml:244
msgid ""
"Returns the object's unique instance ID.\n"
"This ID can be saved in [EncodedObjectAsID], and can be used to retrieve the "
"object instance with [method @GDScript.instance_from_id]."
msgstr ""
-#: doc/classes/Object.xml:249
+#: doc/classes/Object.xml:254
msgid "Returns the object's metadata entry for the given [code]name[/code]."
msgstr ""
-#: doc/classes/Object.xml:256
+#: doc/classes/Object.xml:261
msgid "Returns the object's metadata as a [PackedStringArray]."
msgstr ""
-#: doc/classes/Object.xml:263
+#: doc/classes/Object.xml:268
msgid "Returns the object's methods and their signatures as an [Array]."
msgstr ""
-#: doc/classes/Object.xml:270
+#: doc/classes/Object.xml:275
msgid ""
"Returns the object's property list as an [Array] of dictionaries.\n"
"Each property's [Dictionary] contain at least [code]name: String[/code] and "
@@ -32742,54 +33328,54 @@ msgid ""
"PropertyUsageFlags])."
msgstr ""
-#: doc/classes/Object.xml:278
+#: doc/classes/Object.xml:283
msgid ""
"Returns the object's [Script] instance, or [code]null[/code] if none is "
"assigned."
msgstr ""
-#: doc/classes/Object.xml:287
+#: doc/classes/Object.xml:292
msgid "Returns an [Array] of connections for the given [code]signal[/code]."
msgstr ""
-#: doc/classes/Object.xml:294
+#: doc/classes/Object.xml:299
msgid "Returns the list of signals as an [Array] of dictionaries."
msgstr ""
-#: doc/classes/Object.xml:303
+#: doc/classes/Object.xml:308
msgid ""
"Returns [code]true[/code] if a metadata entry is found with the given "
"[code]name[/code]."
msgstr ""
-#: doc/classes/Object.xml:312
+#: doc/classes/Object.xml:317
msgid ""
"Returns [code]true[/code] if the object contains the given [code]method[/"
"code]."
msgstr ""
-#: doc/classes/Object.xml:321
+#: doc/classes/Object.xml:326
msgid "Returns [code]true[/code] if the given [code]signal[/code] exists."
msgstr ""
-#: doc/classes/Object.xml:330
+#: doc/classes/Object.xml:335
msgid ""
"Returns [code]true[/code] if the given user-defined [code]signal[/code] "
"exists. Only signals added using [method add_user_signal] are taken into "
"account."
msgstr ""
-#: doc/classes/Object.xml:337
+#: doc/classes/Object.xml:342
msgid "Returns [code]true[/code] if signal emission blocking is enabled."
msgstr ""
-#: doc/classes/Object.xml:346
+#: doc/classes/Object.xml:351
msgid ""
"Returns [code]true[/code] if the object inherits from the given [code]class[/"
"code]."
msgstr ""
-#: doc/classes/Object.xml:357
+#: doc/classes/Object.xml:362
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32797,13 +33383,13 @@ msgid ""
"code], [code]target[/code], and [code]method[/code]."
msgstr ""
-#: doc/classes/Object.xml:365
+#: doc/classes/Object.xml:370
msgid ""
"Returns [code]true[/code] if the [method Node.queue_free] method was called "
"for the object."
msgstr ""
-#: doc/classes/Object.xml:376
+#: doc/classes/Object.xml:381
msgid ""
"Send a given notification to the object, which will also trigger a call to "
"the [method _notification] method of all classes that the object inherits "
@@ -32815,34 +33401,42 @@ msgid ""
"and then down to its successive inheriting classes."
msgstr ""
-#: doc/classes/Object.xml:384
+#: doc/classes/Object.xml:389
msgid ""
"Notify the editor that the property list has changed, so that editor plugins "
"can take the new values into account. Does nothing on export builds."
msgstr ""
-#: doc/classes/Object.xml:393
+#: doc/classes/Object.xml:398
msgid "Removes a given entry from the object's metadata."
msgstr ""
-#: doc/classes/Object.xml:404
+#: doc/classes/Object.xml:409
msgid ""
"Assigns a new value to the given property. If the [code]property[/code] does "
-"not exist, nothing will happen."
+"not exist, nothing will happen.\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:413
+#: doc/classes/Object.xml:419
msgid "If set to [code]true[/code], signal emission is blocked."
msgstr ""
-#: doc/classes/Object.xml:424
+#: doc/classes/Object.xml:430
msgid ""
"Assigns a new value to the given property, after the current frame's physics "
"step. This is equivalent to calling [method set] via [method call_deferred], "
-"i.e. [code]call_deferred(\"set\", property, value)[/code]."
+"i.e. [code]call_deferred(\"set\", property, value)[/code].\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:435
+#: doc/classes/Object.xml:442
msgid ""
"Assigns a new value to the property identified by the [NodePath]. The node "
"path should be relative to the current object and can use the colon "
@@ -32854,19 +33448,19 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:449
+#: doc/classes/Object.xml:456
msgid ""
"Defines whether the object can translate strings (with calls to [method "
"tr]). Enabled by default."
msgstr ""
-#: doc/classes/Object.xml:460
+#: doc/classes/Object.xml:467
msgid ""
"Adds or changes a given entry in the object's metadata. Metadata are "
"serialized, and can take any [Variant] value."
msgstr ""
-#: doc/classes/Object.xml:469
+#: doc/classes/Object.xml:476
msgid ""
"Assigns a script to the object. Each object can have a single script "
"assigned to it, which are used to extend its functionality.\n"
@@ -32875,7 +33469,7 @@ msgid ""
"_init] method will be called."
msgstr ""
-#: doc/classes/Object.xml:477
+#: doc/classes/Object.xml:484
msgid ""
"Returns a [String] representing the object. If not overridden, defaults to "
"[code]\"[ClassName:RID]\"[/code].\n"
@@ -32883,7 +33477,7 @@ msgid ""
"representation."
msgstr ""
-#: doc/classes/Object.xml:487
+#: doc/classes/Object.xml:494
msgid ""
"Translates a message using translation catalogs configured in the Project "
"Settings.\n"
@@ -32892,35 +33486,35 @@ msgid ""
"set_message_translation]."
msgstr ""
-#: doc/classes/Object.xml:495
+#: doc/classes/Object.xml:502
msgid "Emitted whenever the object's script is changed."
msgstr ""
-#: doc/classes/Object.xml:501
+#: doc/classes/Object.xml:508
msgid "Called right when the object is initialized. Not available in script."
msgstr ""
-#: doc/classes/Object.xml:504
+#: doc/classes/Object.xml:511
msgid "Called before the object is about to be deleted."
msgstr ""
-#: doc/classes/Object.xml:507
+#: doc/classes/Object.xml:514
msgid ""
"Connects a signal in deferred mode. This way, signal emissions are stored in "
"a queue, then set on idle time."
msgstr ""
-#: doc/classes/Object.xml:510
+#: doc/classes/Object.xml:517
msgid "Persisting connections are saved when the object is serialized to file."
msgstr ""
-#: doc/classes/Object.xml:513
+#: doc/classes/Object.xml:520
msgid "One-shot connections disconnect themselves after emission."
msgstr ""
-#: doc/classes/Object.xml:516
+#: doc/classes/Object.xml:523
msgid ""
-"Connect a signal as reference counted. This means that a given signal can be "
+"Connect a signal as reference-counted. This means that a given signal can be "
"connected several times to the same target, and will only be fully "
"disconnected once no references are left."
msgstr ""
@@ -33385,10 +33979,29 @@ msgid "Returns the keycode of the given string (e.g. \"Escape\")."
msgstr ""
#: doc/classes/OS.xml:115
-msgid "Returns the command line arguments passed to the engine."
+msgid ""
+"Returns the command-line arguments passed to the engine.\n"
+"Command-line arguments can be written in any form, including both [code]--"
+"key value[/code] and [code]--key=value[/code] forms so they can be properly "
+"parsed, as long as custom command-line arguments do not conflict with engine "
+"arguments.\n"
+"You can also incorporate environment variables using the [method "
+"get_environment] method.\n"
+"You can set [code]editor/main_run_args[/code] in the Project Settings to "
+"define command-line arguments to be passed by the editor when running the "
+"project.\n"
+"Here's a minimal example on how to parse command-line arguments into a "
+"dictionary using the [code]--key=value[/code] form for arguments:\n"
+"[codeblock]\n"
+"var arguments = {}\n"
+"for argument in OS.get_cmdline_args():\n"
+" if argument.find(\"=\") > -1:\n"
+" var key_value = argument.split(\"=\")\n"
+" arguments[key_value[0].lstrip(\"--\")] = key_value[1]\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/OS.xml:122
+#: doc/classes/OS.xml:133
msgid ""
"Returns an array of MIDI device names.\n"
"The returned array will be empty if the system MIDI driver has not "
@@ -33396,14 +34009,14 @@ msgid ""
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:133
+#: doc/classes/OS.xml:144
msgid ""
"Returns current date as a dictionary of keys: [code]year[/code], "
"[code]month[/code], [code]day[/code], [code]weekday[/code], [code]dst[/code] "
"(Daylight Savings Time)."
msgstr ""
-#: doc/classes/OS.xml:142
+#: doc/classes/OS.xml:153
msgid ""
"Returns current datetime as a dictionary of keys: [code]year[/code], "
"[code]month[/code], [code]day[/code], [code]weekday[/code], [code]dst[/code] "
@@ -33411,7 +34024,7 @@ msgid ""
"[code]second[/code]."
msgstr ""
-#: doc/classes/OS.xml:151
+#: doc/classes/OS.xml:162
msgid ""
"Gets a dictionary of time values corresponding to the given UNIX epoch time "
"(in seconds).\n"
@@ -33420,22 +34033,22 @@ msgid ""
"the epoch."
msgstr ""
-#: doc/classes/OS.xml:161
+#: doc/classes/OS.xml:172
msgid "Returns an environment variable."
msgstr ""
-#: doc/classes/OS.xml:168
+#: doc/classes/OS.xml:179
msgid "Returns the path to the current engine executable."
msgstr ""
-#: doc/classes/OS.xml:175
+#: doc/classes/OS.xml:186
msgid ""
"With this function you can get the list of dangerous permissions that have "
"been granted to the Android application.\n"
"[b]Note:[/b] This method is implemented on Android."
msgstr ""
-#: doc/classes/OS.xml:185
+#: doc/classes/OS.xml:196
msgid ""
"Returns the given keycode as a string (e.g. Return values: [code]\"Escape\"[/"
"code], [code]\"Shift+Escape\"[/code]).\n"
@@ -33443,18 +34056,18 @@ msgid ""
"get_keycode_with_modifiers]."
msgstr ""
-#: doc/classes/OS.xml:193
+#: doc/classes/OS.xml:204
msgid "Returns the host OS locale."
msgstr ""
-#: doc/classes/OS.xml:200
+#: doc/classes/OS.xml:211
msgid ""
"Returns the model name of the current device.\n"
"[b]Note:[/b] This method is implemented on Android and iOS. Returns "
"[code]\"GenericDevice\"[/code] on unsupported platforms."
msgstr ""
-#: doc/classes/OS.xml:208
+#: doc/classes/OS.xml:219
msgid ""
"Returns the name of the host OS. Possible values are: [code]\"Android\"[/"
"code], [code]\"iOS\"[/code], [code]\"HTML5\"[/code], [code]\"OSX\"[/code], "
@@ -33462,81 +34075,81 @@ msgid ""
"[code]\"X11\"[/code]."
msgstr ""
-#: doc/classes/OS.xml:215
+#: doc/classes/OS.xml:226
msgid ""
"Returns the project's process ID.\n"
"[b]Note:[/b] This method is implemented on Android, iOS, Linux, macOS and "
"Windows."
msgstr ""
-#: doc/classes/OS.xml:223
+#: doc/classes/OS.xml:234
msgid "Returns the number of threads available on the host machine."
msgstr ""
-#: doc/classes/OS.xml:230
+#: doc/classes/OS.xml:241
msgid ""
"Returns the amount of time in milliseconds it took for the boot logo to "
"appear."
msgstr ""
-#: doc/classes/OS.xml:237
+#: doc/classes/OS.xml:248
msgid "Returns the maximum amount of static memory used (only works in debug)."
msgstr ""
-#: doc/classes/OS.xml:244
+#: doc/classes/OS.xml:255
msgid "Returns the amount of static memory being used by the program in bytes."
msgstr ""
-#: doc/classes/OS.xml:253
+#: doc/classes/OS.xml:264
msgid ""
"Returns the actual path to commonly used folders across different platforms. "
"Available locations are specified in [enum SystemDir].\n"
"[b]Note:[/b] This method is implemented on Android, Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:261
+#: doc/classes/OS.xml:272
msgid ""
"Returns the total number of available tablet drivers.\n"
"[b]Note:[/b] This method is implemented on Windows."
msgstr ""
-#: doc/classes/OS.xml:271
+#: doc/classes/OS.xml:282
msgid ""
"Returns the tablet driver name for the given index.\n"
"[b]Note:[/b] This method is implemented on Windows."
msgstr ""
-#: doc/classes/OS.xml:279
+#: doc/classes/OS.xml:290
msgid ""
"Returns the amount of time passed in milliseconds since the engine started."
msgstr ""
-#: doc/classes/OS.xml:286
+#: doc/classes/OS.xml:297
msgid ""
"Returns the amount of time passed in microseconds since the engine started."
msgstr ""
-#: doc/classes/OS.xml:295
+#: doc/classes/OS.xml:306
msgid "Returns current time as a dictionary of keys: hour, minute, second."
msgstr ""
-#: doc/classes/OS.xml:302
+#: doc/classes/OS.xml:313
msgid ""
"Returns the current time zone as a dictionary with the keys: bias and name."
msgstr ""
-#: doc/classes/OS.xml:309
+#: doc/classes/OS.xml:320
msgid ""
"Returns a string that is unique to the device.\n"
"[b]Note:[/b] Returns an empty string on HTML5 and UWP, as this method isn't "
"implemented on those platforms yet."
msgstr ""
-#: doc/classes/OS.xml:317
+#: doc/classes/OS.xml:328
msgid "Returns the current UNIX epoch timestamp."
msgstr ""
-#: doc/classes/OS.xml:326
+#: doc/classes/OS.xml:337
msgid ""
"Gets an epoch time value from a dictionary of time values.\n"
"[code]datetime[/code] must be populated with the following keys: [code]year[/"
@@ -33547,7 +34160,7 @@ msgid ""
"ignored."
msgstr ""
-#: doc/classes/OS.xml:335
+#: doc/classes/OS.xml:346
msgid ""
"Returns the absolute directory path where user data is written ([code]user://"
"[/code]).\n"
@@ -33565,11 +34178,11 @@ msgid ""
"[/code]."
msgstr ""
-#: doc/classes/OS.xml:348
+#: doc/classes/OS.xml:359
msgid "Returns [code]true[/code] if an environment variable exists."
msgstr ""
-#: doc/classes/OS.xml:357
+#: doc/classes/OS.xml:368
msgid ""
"Returns [code]true[/code] if the feature for the given feature tag is "
"supported in the currently running instance, depending on platform, build "
@@ -33580,7 +34193,7 @@ msgid ""
"[b]Note:[/b] Tag names are case-sensitive."
msgstr ""
-#: doc/classes/OS.xml:365
+#: doc/classes/OS.xml:376
msgid ""
"Returns [code]true[/code] if the Godot binary used to run the project is a "
"[i]debug[/i] export template, or when running in the editor.\n"
@@ -33591,26 +34204,26 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/OS.xml:376
+#: doc/classes/OS.xml:387
msgid ""
"Returns [code]true[/code] if the input keycode corresponds to a Unicode "
"character."
msgstr ""
-#: doc/classes/OS.xml:383
+#: doc/classes/OS.xml:394
msgid ""
"Returns [code]true[/code] if the engine was executed with [code]-v[/code] "
"(verbose stdout)."
msgstr ""
-#: doc/classes/OS.xml:390
+#: doc/classes/OS.xml:401
msgid ""
"If [code]true[/code], the [code]user://[/code] file system is persistent, so "
"that its state is the same after a player quits and starts the game again. "
"Relevant to the HTML5 platform, where this persistence may be unavailable."
msgstr ""
-#: doc/classes/OS.xml:399
+#: doc/classes/OS.xml:410
msgid ""
"Kill (terminate) the process identified by the given process ID ([code]pid[/"
"code]), e.g. the one returned by [method execute] in non-blocking mode.\n"
@@ -33620,37 +34233,37 @@ msgid ""
"Windows."
msgstr ""
-#: doc/classes/OS.xml:408
+#: doc/classes/OS.xml:419
msgid ""
"Initialises the singleton for the system MIDI driver.\n"
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:418
+#: doc/classes/OS.xml:429
msgid ""
"Shows all resources in the game. Optionally, the list can be written to a "
"file by specifying a file path in [code]tofile[/code]."
msgstr ""
-#: doc/classes/OS.xml:425
+#: doc/classes/OS.xml:436
msgid "Shows the list of loaded textures sorted by size in memory."
msgstr ""
-#: doc/classes/OS.xml:434
+#: doc/classes/OS.xml:445
msgid "Shows the number of resources loaded by the game of the given types."
msgstr ""
-#: doc/classes/OS.xml:443
+#: doc/classes/OS.xml:454
msgid "Shows all resources currently used by the game."
msgstr ""
-#: doc/classes/OS.xml:452
+#: doc/classes/OS.xml:463
msgid ""
"At the moment this function is only used by [code]AudioDriverOpenSL[/code] "
"to request permission for [code]RECORD_AUDIO[/code] on Android."
msgstr ""
-#: doc/classes/OS.xml:459
+#: doc/classes/OS.xml:470
msgid ""
"With this function you can request dangerous permissions since normal "
"permissions are automatically granted at install time in Android "
@@ -33658,15 +34271,15 @@ msgid ""
"[b]Note:[/b] This method is implemented on Android."
msgstr ""
-#: doc/classes/OS.xml:469
+#: doc/classes/OS.xml:480
msgid "Sets the name of the current thread."
msgstr ""
-#: doc/classes/OS.xml:478
+#: doc/classes/OS.xml:489
msgid "Enables backup saves if [code]enabled[/code] is [code]true[/code]."
msgstr ""
-#: doc/classes/OS.xml:487
+#: doc/classes/OS.xml:498
msgid ""
"Requests the OS to open a resource with the most appropriate program. For "
"example:\n"
@@ -33685,7 +34298,7 @@ msgid ""
"and Windows."
msgstr ""
-#: doc/classes/OS.xml:498
+#: doc/classes/OS.xml:509
msgid ""
"The exit code passed to the OS when the main loop exits. By convention, an "
"exit code of [code]0[/code] indicates success whereas a non-zero exit code "
@@ -33695,137 +34308,137 @@ msgid ""
"with an [code]exit_code[/code] argument passed."
msgstr ""
-#: doc/classes/OS.xml:502
+#: doc/classes/OS.xml:513
msgid ""
"If [code]true[/code], the engine optimizes for low processor usage by only "
"refreshing the screen if needed. Can improve battery consumption on mobile."
msgstr ""
-#: doc/classes/OS.xml:505
+#: doc/classes/OS.xml:516
msgid ""
"The amount of sleeping between frames when the low-processor usage mode is "
"enabled (in microseconds). Higher values will result in lower CPU usage."
msgstr ""
-#: doc/classes/OS.xml:508
-msgid "The current tablet drvier in use."
+#: doc/classes/OS.xml:519
+msgid "The current tablet driver in use."
msgstr ""
-#: doc/classes/OS.xml:513
+#: doc/classes/OS.xml:524
msgid ""
"The GLES2 rendering backend. It uses OpenGL ES 2.0 on mobile devices, OpenGL "
"2.1 on desktop platforms and WebGL 1.0 on the web."
msgstr ""
-#: doc/classes/OS.xml:516
+#: doc/classes/OS.xml:527
msgid "The Vulkan rendering backend."
msgstr ""
-#: doc/classes/OS.xml:519
+#: doc/classes/OS.xml:530
msgid "Sunday."
msgstr ""
-#: doc/classes/OS.xml:522
+#: doc/classes/OS.xml:533
msgid "Monday."
msgstr ""
-#: doc/classes/OS.xml:525
+#: doc/classes/OS.xml:536
msgid "Tuesday."
msgstr ""
-#: doc/classes/OS.xml:528
+#: doc/classes/OS.xml:539
msgid "Wednesday."
msgstr ""
-#: doc/classes/OS.xml:531
+#: doc/classes/OS.xml:542
msgid "Thursday."
msgstr ""
-#: doc/classes/OS.xml:534
+#: doc/classes/OS.xml:545
msgid "Friday."
msgstr ""
-#: doc/classes/OS.xml:537
+#: doc/classes/OS.xml:548
msgid "Saturday."
msgstr ""
-#: doc/classes/OS.xml:540
+#: doc/classes/OS.xml:551
msgid "January."
msgstr ""
-#: doc/classes/OS.xml:543
+#: doc/classes/OS.xml:554
msgid "February."
msgstr ""
-#: doc/classes/OS.xml:546
+#: doc/classes/OS.xml:557
msgid "March."
msgstr ""
-#: doc/classes/OS.xml:549
+#: doc/classes/OS.xml:560
msgid "April."
msgstr ""
-#: doc/classes/OS.xml:552
+#: doc/classes/OS.xml:563
msgid "May."
msgstr ""
-#: doc/classes/OS.xml:555
+#: doc/classes/OS.xml:566
msgid "June."
msgstr ""
-#: doc/classes/OS.xml:558
+#: doc/classes/OS.xml:569
msgid "July."
msgstr ""
-#: doc/classes/OS.xml:561
+#: doc/classes/OS.xml:572
msgid "August."
msgstr ""
-#: doc/classes/OS.xml:564
+#: doc/classes/OS.xml:575
msgid "September."
msgstr ""
-#: doc/classes/OS.xml:567
+#: doc/classes/OS.xml:578
msgid "October."
msgstr ""
-#: doc/classes/OS.xml:570
+#: doc/classes/OS.xml:581
msgid "November."
msgstr ""
-#: doc/classes/OS.xml:573
+#: doc/classes/OS.xml:584
msgid "December."
msgstr ""
-#: doc/classes/OS.xml:576
+#: doc/classes/OS.xml:587
msgid "Desktop directory path."
msgstr ""
-#: doc/classes/OS.xml:579
+#: doc/classes/OS.xml:590
msgid "DCIM (Digital Camera Images) directory path."
msgstr ""
-#: doc/classes/OS.xml:582
+#: doc/classes/OS.xml:593
msgid "Documents directory path."
msgstr ""
-#: doc/classes/OS.xml:585
+#: doc/classes/OS.xml:596
msgid "Downloads directory path."
msgstr ""
-#: doc/classes/OS.xml:588
+#: doc/classes/OS.xml:599
msgid "Movies directory path."
msgstr ""
-#: doc/classes/OS.xml:591
+#: doc/classes/OS.xml:602
msgid "Music directory path."
msgstr ""
-#: doc/classes/OS.xml:594
+#: doc/classes/OS.xml:605
msgid "Pictures directory path."
msgstr ""
-#: doc/classes/OS.xml:597
+#: doc/classes/OS.xml:608
msgid "Ringtones directory path."
msgstr ""
@@ -33880,7 +34493,15 @@ msgid ""
"should always be preferred."
msgstr ""
-#: doc/classes/PackedByteArray.xml:85
+#: doc/classes/PackedByteArray.xml:87 doc/classes/PackedColorArray.xml:53
+#: doc/classes/PackedFloat32Array.xml:54 doc/classes/PackedFloat64Array.xml:54
+#: doc/classes/PackedInt32Array.xml:54 doc/classes/PackedInt64Array.xml:54
+#: doc/classes/PackedStringArray.xml:53 doc/classes/PackedVector2Array.xml:53
+#: doc/classes/PackedVector3Array.xml:53
+msgid "Returns [code]true[/code] if the array contains [code]value[/code]."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:94
msgid ""
"Returns a hexadecimal representation of this array as a [String].\n"
"[codeblock]\n"
@@ -33889,39 +34510,48 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/PackedByteArray.xml:100 doc/classes/PackedColorArray.xml:55
-#: doc/classes/PackedFloat32Array.xml:56 doc/classes/PackedFloat64Array.xml:56
-#: doc/classes/PackedStringArray.xml:55 doc/classes/PackedVector2Array.xml:55
-#: doc/classes/PackedVector3Array.xml:55
+#: doc/classes/PackedByteArray.xml:109 doc/classes/PackedColorArray.xml:64
+#: doc/classes/PackedFloat32Array.xml:65 doc/classes/PackedFloat64Array.xml:65
+#: doc/classes/PackedStringArray.xml:64 doc/classes/PackedVector2Array.xml:64
+#: doc/classes/PackedVector3Array.xml:64
msgid ""
"Inserts a new element at a given position in the array. The position must be "
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PackedByteArray.xml:134 doc/classes/PackedColorArray.xml:89
-#: doc/classes/PackedFloat32Array.xml:90 doc/classes/PackedFloat64Array.xml:90
-#: doc/classes/PackedInt32Array.xml:90 doc/classes/PackedInt64Array.xml:90
-#: doc/classes/PackedStringArray.xml:89 doc/classes/PackedVector2Array.xml:89
-#: doc/classes/PackedVector3Array.xml:89
+#: doc/classes/PackedByteArray.xml:143 doc/classes/PackedColorArray.xml:98
+#: doc/classes/PackedFloat32Array.xml:99 doc/classes/PackedFloat64Array.xml:99
+#: doc/classes/PackedInt32Array.xml:99 doc/classes/PackedInt64Array.xml:99
+#: doc/classes/PackedStringArray.xml:98 doc/classes/PackedVector2Array.xml:98
+#: doc/classes/PackedVector3Array.xml:98
msgid ""
"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."
msgstr ""
-#: doc/classes/PackedByteArray.xml:145
+#: doc/classes/PackedByteArray.xml:154
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PackedByteArray.xml:152 doc/classes/PackedColorArray.xml:107
-#: doc/classes/PackedFloat32Array.xml:108
-#: doc/classes/PackedFloat64Array.xml:108 doc/classes/PackedStringArray.xml:107
-#: doc/classes/PackedVector2Array.xml:107
-#: doc/classes/PackedVector3Array.xml:107
+#: doc/classes/PackedByteArray.xml:161 doc/classes/PackedColorArray.xml:116
+#: doc/classes/PackedFloat32Array.xml:117
+#: doc/classes/PackedFloat64Array.xml:117 doc/classes/PackedStringArray.xml:116
+#: doc/classes/PackedVector2Array.xml:116
+#: doc/classes/PackedVector3Array.xml:116
msgid "Returns the size of the array."
msgstr ""
-#: doc/classes/PackedByteArray.xml:163
+#: doc/classes/PackedByteArray.xml:168 doc/classes/PackedColorArray.xml:123
+#: doc/classes/PackedFloat32Array.xml:124
+#: doc/classes/PackedFloat64Array.xml:124 doc/classes/PackedInt32Array.xml:124
+#: doc/classes/PackedInt64Array.xml:124 doc/classes/PackedStringArray.xml:123
+#: doc/classes/PackedVector2Array.xml:123
+#: doc/classes/PackedVector3Array.xml:123
+msgid "Sorts the elements of the array in ascending order."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:179
msgid ""
"Returns the slice of the [PackedByteArray] between indices (inclusive) as a "
"new [PackedByteArray]. Any negative index is considered to be from the end "
@@ -33949,12 +34579,12 @@ msgstr ""
msgid "Appends a [PackedColorArray] at the end of this array."
msgstr ""
-#: doc/classes/PackedColorArray.xml:71 doc/classes/PackedInt32Array.xml:72
-#: doc/classes/PackedInt64Array.xml:72
+#: doc/classes/PackedColorArray.xml:80 doc/classes/PackedInt32Array.xml:81
+#: doc/classes/PackedInt64Array.xml:81
msgid "Appends a value to the array."
msgstr ""
-#: doc/classes/PackedColorArray.xml:100
+#: doc/classes/PackedColorArray.xml:109
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -33984,8 +34614,8 @@ msgstr ""
msgid "Appends a [PackedFloat32Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedFloat32Array.xml:101
-#: doc/classes/PackedFloat64Array.xml:101
+#: doc/classes/PackedFloat32Array.xml:110
+#: doc/classes/PackedFloat64Array.xml:110
msgid "Changes the float at the given index."
msgstr ""
@@ -34038,17 +34668,17 @@ msgstr ""
msgid "Appends a [PackedInt32Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:56 doc/classes/PackedInt64Array.xml:56
+#: doc/classes/PackedInt32Array.xml:65 doc/classes/PackedInt64Array.xml:65
msgid ""
"Inserts a new integer at a given position in the array. The position must be "
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:101 doc/classes/PackedInt64Array.xml:101
+#: doc/classes/PackedInt32Array.xml:110 doc/classes/PackedInt64Array.xml:110
msgid "Changes the integer at the given index."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:108 doc/classes/PackedInt64Array.xml:108
+#: doc/classes/PackedInt32Array.xml:117 doc/classes/PackedInt64Array.xml:117
msgid "Returns the array size."
msgstr ""
@@ -34089,6 +34719,14 @@ msgid ""
"Can be used to save a node to a file. When saving, the node as well as all "
"the node it owns get saved (see [code]owner[/code] property on [Node]).\n"
"[b]Note:[/b] The node doesn't need to own itself.\n"
+"[b]Example of loading a saved scene:[/b]\n"
+"[codeblock]\n"
+"# Use `load()` instead of `preload()` if the path isn't known at compile-"
+"time.\n"
+"var scene = preload(\"res://scene.tscn\").instance()\n"
+"# Add the node as a child of the node the script is attached to.\n"
+"add_child(scene)\n"
+"[/codeblock]\n"
"[b]Example of saving a node with different owners:[/b] The following example "
"creates 3 objects: [code]Node2D[/code] ([code]node[/code]), "
"[code]RigidBody2D[/code] ([code]rigid[/code]) and [code]CollisionObject2D[/"
@@ -34120,29 +34758,29 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/PackedScene.xml:40
+#: doc/classes/PackedScene.xml:47
msgid "Returns [code]true[/code] if the scene file has nodes."
msgstr ""
-#: doc/classes/PackedScene.xml:47
+#: doc/classes/PackedScene.xml:54
msgid ""
"Returns the [code]SceneState[/code] representing the scene file contents."
msgstr ""
-#: doc/classes/PackedScene.xml:56
+#: doc/classes/PackedScene.xml:63
msgid ""
"Instantiates the scene's node hierarchy. Triggers child scene "
"instantiation(s). Triggers a [constant Node.NOTIFICATION_INSTANCED] "
"notification on the root node."
msgstr ""
-#: doc/classes/PackedScene.xml:65
+#: doc/classes/PackedScene.xml:72
msgid ""
"Pack will ignore any sub-nodes not owned by given node. See [member Node."
"owner]."
msgstr ""
-#: doc/classes/PackedScene.xml:71
+#: doc/classes/PackedScene.xml:78
msgid ""
"A dictionary representation of the scene contents.\n"
"Available keys include \"rnames\" and \"variants\" for resources, "
@@ -34151,18 +34789,18 @@ msgid ""
"connections, and \"version\" for the format style of the PackedScene."
msgstr ""
-#: doc/classes/PackedScene.xml:77
+#: doc/classes/PackedScene.xml:84
msgid "If passed to [method instance], blocks edits to the scene state."
msgstr ""
-#: doc/classes/PackedScene.xml:80
+#: doc/classes/PackedScene.xml:87
msgid ""
"If passed to [method instance], provides local scene resources to the local "
"scene.\n"
"[b]Note:[/b] Only available in editor builds."
msgstr ""
-#: doc/classes/PackedScene.xml:84
+#: doc/classes/PackedScene.xml:91
msgid ""
"If passed to [method instance], provides local scene resources to the local "
"scene. Only the main scene should receive the main edit state.\n"
@@ -34190,11 +34828,11 @@ msgstr ""
msgid "Appends a [PackedStringArray] at the end of this array."
msgstr ""
-#: doc/classes/PackedStringArray.xml:71
+#: doc/classes/PackedStringArray.xml:80
msgid "Appends a string element at end of the array."
msgstr ""
-#: doc/classes/PackedStringArray.xml:100
+#: doc/classes/PackedStringArray.xml:109
msgid "Changes the [String] at the given index."
msgstr ""
@@ -34219,11 +34857,11 @@ msgstr ""
msgid "Appends a [PackedVector2Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedVector2Array.xml:71
+#: doc/classes/PackedVector2Array.xml:80
msgid "Inserts a [Vector2] at the end."
msgstr ""
-#: doc/classes/PackedVector2Array.xml:100
+#: doc/classes/PackedVector2Array.xml:109
msgid "Changes the [Vector2] at the given index."
msgstr ""
@@ -34248,11 +34886,11 @@ msgstr ""
msgid "Appends a [PackedVector3Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedVector3Array.xml:71
+#: doc/classes/PackedVector3Array.xml:80
msgid "Inserts a [Vector3] at the end."
msgstr ""
-#: doc/classes/PackedVector3Array.xml:100
+#: doc/classes/PackedVector3Array.xml:109
msgid "Changes the [Vector3] at the given index."
msgstr ""
@@ -35143,13 +35781,55 @@ msgid ""
"as the values displayed in the [b]Monitor[/b] tab in the editor's "
"[b]Debugger[/b] panel. By using the [method get_monitor] method of this "
"class, you can access this data from your code.\n"
+"You can add custom monitors using the [method add_custom_monitor] method. "
+"Custom monitors are available in [b]Monitor[/b] tab in the editor's "
+"[b]Debugger[/b] panel together with built-in monitors.\n"
"[b]Note:[/b] A few of these monitors are only available in debug mode and "
"will always return 0 when used in a release build.\n"
"[b]Note:[/b] Many of these monitors are not updated in real-time, so there "
-"may be a short delay between changes."
+"may be a short delay between changes.\n"
+"[b]Note:[/b] Custom monitors do not support negative values. Negative values "
+"are clamped to 0."
+msgstr ""
+
+#: doc/classes/Performance.xml:26
+msgid ""
+"Adds a custom monitor with name same as id. You can specify the category of "
+"monitor using '/' in id. If there are more than one '/' then default "
+"category is used. Default category is \"Custom\".\n"
+"[codeblock]\n"
+"Performance.add_custom_monitor(\"MyCategory/MyMonitor\", some_callable) # "
+"Adds monitor with name \"MyName\" to category \"MyCategory\"\n"
+"Performance.add_custom_monitor(\"MyMonitor\", some_callable) # Adds monitor "
+"with name \"MyName\" to category \"Custom\"\n"
+"# Note: \"MyCategory/MyMonitor\" and \"MyMonitor\" have same name but "
+"different ids so above code is valid\n"
+"Performance.add_custom_monitor(\"Custom/MyMonitor\", some_callable) # Adds "
+"monitor with name \"MyName\" to category \"Custom\"\n"
+"# Note: \"MyMonitor\" and \"Custom/MyMonitor\" have same name and same "
+"category but different ids so above code is valid\n"
+"Performance.add_custom_monitor(\"MyCategoryOne/MyCategoryTwo/MyMonitor\", "
+"some_callable) # Adds monitor with name \"MyCategoryOne/MyCategoryTwo/"
+"MyMonitor\" to category \"Custom\"\n"
+"[/codeblock]\n"
+"The debugger calls the callable to get the value of custom monitor. The "
+"callable must return a number.\n"
+"Callables are called with arguments supplied in argument array.\n"
+"[b]Note:[/b] It throws an error if given id is already present."
+msgstr ""
+
+#: doc/classes/Performance.xml:46
+msgid ""
+"Returns the value of custom monitor with given id. The callable is called to "
+"get the value of custom monitor.\n"
+"[b]Note:[/b] It throws an error if the given id is absent."
+msgstr ""
+
+#: doc/classes/Performance.xml:54
+msgid "Returns the names of active custom monitors in an array."
msgstr ""
-#: doc/classes/Performance.xml:20
+#: doc/classes/Performance.xml:63
msgid ""
"Returns the value of one of the available monitors. You should provide one "
"of the [enum Monitor] constants as the argument, like this:\n"
@@ -35159,123 +35839,139 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Performance.xml:29
+#: doc/classes/Performance.xml:73
+msgid "Returns the last tick in which custom monitor was added/removed."
+msgstr ""
+
+#: doc/classes/Performance.xml:82
+msgid ""
+"Returns true if custom monitor with the given id is present otherwise "
+"returns false."
+msgstr ""
+
+#: doc/classes/Performance.xml:91
+msgid ""
+"Removes the custom monitor with given id.\n"
+"[b]Note:[/b] It throws an error if the given id is already absent."
+msgstr ""
+
+#: doc/classes/Performance.xml:98
msgid "Number of frames per second."
msgstr ""
-#: doc/classes/Performance.xml:32
+#: doc/classes/Performance.xml:101
msgid "Time it took to complete one frame, in seconds."
msgstr ""
-#: doc/classes/Performance.xml:35
+#: doc/classes/Performance.xml:104
msgid "Time it took to complete one physics frame, in seconds."
msgstr ""
-#: doc/classes/Performance.xml:38
+#: doc/classes/Performance.xml:107
msgid ""
"Static memory currently used, in bytes. Not available in release builds."
msgstr ""
-#: doc/classes/Performance.xml:41
+#: doc/classes/Performance.xml:110
msgid "Available static memory. Not available in release builds."
msgstr ""
-#: doc/classes/Performance.xml:44
+#: doc/classes/Performance.xml:113
msgid ""
"Largest amount of memory the message queue buffer has used, in bytes. The "
"message queue is used for deferred functions calls and notifications."
msgstr ""
-#: doc/classes/Performance.xml:47
+#: doc/classes/Performance.xml:116
msgid "Number of objects currently instanced (including nodes)."
msgstr ""
-#: doc/classes/Performance.xml:50
+#: doc/classes/Performance.xml:119
msgid "Number of resources currently used."
msgstr ""
-#: doc/classes/Performance.xml:53
+#: doc/classes/Performance.xml:122
msgid ""
"Number of nodes currently instanced in the scene tree. This also includes "
"the root node."
msgstr ""
-#: doc/classes/Performance.xml:56
+#: doc/classes/Performance.xml:125
msgid ""
"Number of orphan nodes, i.e. nodes which are not parented to a node of the "
"scene tree."
msgstr ""
-#: doc/classes/Performance.xml:59
+#: doc/classes/Performance.xml:128
msgid "3D objects drawn per frame."
msgstr ""
-#: doc/classes/Performance.xml:62
+#: doc/classes/Performance.xml:131
msgid "Vertices drawn per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:65
+#: doc/classes/Performance.xml:134
msgid "Material changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:68
+#: doc/classes/Performance.xml:137
msgid "Shader changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:71
+#: doc/classes/Performance.xml:140
msgid "Render surface changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:74
+#: doc/classes/Performance.xml:143
msgid "Draw calls per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:77 doc/classes/RenderingServer.xml:3805
+#: doc/classes/Performance.xml:146 doc/classes/RenderingServer.xml:3816
msgid ""
"The amount of video memory used, i.e. texture and vertex memory combined."
msgstr ""
-#: doc/classes/Performance.xml:80 doc/classes/RenderingServer.xml:3808
+#: doc/classes/Performance.xml:149 doc/classes/RenderingServer.xml:3819
msgid "The amount of texture memory used."
msgstr ""
-#: doc/classes/Performance.xml:83 doc/classes/RenderingServer.xml:3811
+#: doc/classes/Performance.xml:152 doc/classes/RenderingServer.xml:3822
msgid "The amount of vertex memory used."
msgstr ""
-#: doc/classes/Performance.xml:86 doc/classes/RenderingServer.xml:3802
+#: doc/classes/Performance.xml:155 doc/classes/RenderingServer.xml:3813
msgid "Unimplemented in the GLES2 rendering backend, always returns 0."
msgstr ""
-#: doc/classes/Performance.xml:89
+#: doc/classes/Performance.xml:158
msgid "Number of active [RigidBody2D] nodes in the game."
msgstr ""
-#: doc/classes/Performance.xml:92
+#: doc/classes/Performance.xml:161
msgid "Number of collision pairs in the 2D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:95
+#: doc/classes/Performance.xml:164
msgid "Number of islands in the 2D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:98
+#: doc/classes/Performance.xml:167
msgid "Number of active [RigidBody3D] and [VehicleBody3D] nodes in the game."
msgstr ""
-#: doc/classes/Performance.xml:101
+#: doc/classes/Performance.xml:170
msgid "Number of collision pairs in the 3D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:104
+#: doc/classes/Performance.xml:173
msgid "Number of islands in the 3D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:107
+#: doc/classes/Performance.xml:176
msgid "Output latency of the [AudioServer]."
msgstr ""
-#: doc/classes/Performance.xml:110
+#: doc/classes/Performance.xml:179
msgid "Represents the size of the [enum Monitor] enum."
msgstr ""
@@ -35299,27 +35995,27 @@ msgstr ""
msgid "Damps the body's rotation if greater than [code]0[/code]."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:70 doc/classes/RigidBody3D.xml:132
+#: doc/classes/PhysicalBone3D.xml:70 doc/classes/RigidBody3D.xml:139
msgid "Lock the body's rotation in the X axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:73 doc/classes/RigidBody3D.xml:135
+#: doc/classes/PhysicalBone3D.xml:73 doc/classes/RigidBody3D.xml:142
msgid "Lock the body's rotation in the Y axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:76 doc/classes/RigidBody3D.xml:138
+#: doc/classes/PhysicalBone3D.xml:76 doc/classes/RigidBody3D.xml:145
msgid "Lock the body's rotation in the Z axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:79 doc/classes/RigidBody3D.xml:141
+#: doc/classes/PhysicalBone3D.xml:79 doc/classes/RigidBody3D.xml:148
msgid "Lock the body's movement in the X axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:82 doc/classes/RigidBody3D.xml:144
+#: doc/classes/PhysicalBone3D.xml:82 doc/classes/RigidBody3D.xml:151
msgid "Lock the body's movement in the Y axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:85 doc/classes/RigidBody3D.xml:147
+#: doc/classes/PhysicalBone3D.xml:85 doc/classes/RigidBody3D.xml:154
msgid "Lock the body's movement in the Z axis."
msgstr ""
@@ -35374,12 +36070,12 @@ msgstr ""
msgid "Damps the body's movement if greater than [code]0[/code]."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:118 doc/classes/RigidBody2D.xml:158
-#: doc/classes/RigidBody3D.xml:175
+#: doc/classes/PhysicalBone3D.xml:118 doc/classes/RigidBody2D.xml:159
+#: doc/classes/RigidBody3D.xml:183
msgid "The body's mass."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:121 doc/classes/RigidBody3D.xml:188
+#: doc/classes/PhysicalBone3D.xml:121 doc/classes/RigidBody3D.xml:196
msgid ""
"The body's weight based on its mass and the global 3D gravity. Global values "
"are set in [b]Project > Project Settings > Physics > 3d[/b]."
@@ -35686,7 +36382,7 @@ msgid "The inverse of the mass of the body."
msgstr ""
#: doc/classes/PhysicsDirectBodyState2D.xml:195
-#: doc/classes/PhysicsDirectBodyState3D.xml:198 doc/classes/RigidBody2D.xml:155
+#: doc/classes/PhysicsDirectBodyState3D.xml:198 doc/classes/RigidBody2D.xml:156
msgid "The body's linear velocity."
msgstr ""
@@ -36239,7 +36935,7 @@ msgid ""
msgstr ""
#: doc/classes/PhysicsServer2D.xml:620 doc/classes/PhysicsServer3D.xml:637
-#: doc/classes/RigidBody3D.xml:120
+#: doc/classes/RigidBody3D.xml:127
msgid ""
"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."
@@ -37304,47 +38000,64 @@ msgid ""
"collision queries. See also [PhysicsShapeQueryResult2D]."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:18
-msgid ""
-"Sets the [Shape2D] that will be used for collision/intersection queries."
-msgstr ""
-
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:24
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:15
msgid "If [code]true[/code], the query will take [Area2D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:18
msgid ""
"If [code]true[/code], the query will take [PhysicsBody2D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:30
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:30
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:21
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:21
msgid "The physics layer(s) the query will take into account (as a bitmask)."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:33
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:33
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:24
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:24
msgid ""
"The list of objects or object [RID]s that will be excluded from collisions."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:36
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:36 doc/classes/Shape3D.xml:16
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:27 doc/classes/Shape3D.xml:16
msgid "The collision margin for the shape."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:39
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:30
msgid "The motion of the shape being queried for."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:42
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:39
-msgid "The queried shape's [RID]. See also [method set_shape]."
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:33
+msgid ""
+"The [Shape2D] that will be used for collision/intersection queries. This "
+"stores the actual reference which avoids the shape to be released while "
+"being used for queries, so always prefer using this over [member shape_rid]."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:36
+msgid ""
+"The queried shape's [RID] that will be used for collision/intersection "
+"queries. Use this over [member shape] if you want to optimize for "
+"performance using the Servers API:\n"
+"[codeblock]\n"
+"var shape_rid = PhysicsServer2D.circle_shape_create()\n"
+"var radius = 64\n"
+"PhysicsServer2D.shape_set_data(shape_rid, radius)\n"
+"\n"
+"var params = PhysicsShapeQueryParameters2D.new()\n"
+"params.shape_rid = shape_rid\n"
+"\n"
+"# Execute physics queries here...\n"
+"\n"
+"# Release the shape when done with physics queries.\n"
+"PhysicsServer2D.free_rid(shape_rid)\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:45
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:42
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:52
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:49
msgid "The queried shape's transform matrix."
msgstr ""
@@ -37358,18 +38071,40 @@ msgid ""
"collision queries. See also [PhysicsShapeQueryResult3D]."
msgstr ""
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:15
+msgid "If [code]true[/code], the query will take [Area3D]s into account."
+msgstr ""
+
#: doc/classes/PhysicsShapeQueryParameters3D.xml:18
msgid ""
-"Sets the [Shape3D] that will be used for collision/intersection queries."
+"If [code]true[/code], the query will take [PhysicsBody3D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:24
-msgid "If [code]true[/code], the query will take [Area3D]s into account."
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:30
+msgid ""
+"The [Shape3D] that will be used for collision/intersection queries. This "
+"stores the actual reference which avoids the shape to be released while "
+"being used for queries, so always prefer using this over [member shape_rid]."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:33
msgid ""
-"If [code]true[/code], the query will take [PhysicsBody3D]s into account."
+"The queried shape's [RID] that will be used for collision/intersection "
+"queries. Use this over [member shape] if you want to optimize for "
+"performance using the Servers API:\n"
+"[codeblock]\n"
+"var shape_rid = PhysicsServer3D.shape_create(PhysicsServer3D.SHAPE_SPHERE)\n"
+"var radius = 2.0\n"
+"PhysicsServer3D.shape_set_data(shape_rid, radius)\n"
+"\n"
+"var params = PhysicsShapeQueryParameters3D.new()\n"
+"params.shape_rid = shape_rid\n"
+"\n"
+"# Execute physics queries here...\n"
+"\n"
+"# Release the shape when done with physics queries.\n"
+"PhysicsServer3D.free_rid(shape_rid)\n"
+"[/codeblock]"
msgstr ""
#: doc/classes/PhysicsShapeQueryResult2D.xml:4
@@ -37510,92 +38245,94 @@ msgid ""
"code]."
msgstr ""
-#: doc/classes/Plane.xml:72
-msgid "Returns a point on the plane."
-msgstr ""
-
-#: doc/classes/Plane.xml:83
+#: doc/classes/Plane.xml:76
msgid ""
-"Returns [code]true[/code] if [code]point[/code] is inside the plane (by a "
-"very minimum [code]epsilon[/code] threshold)."
+"Returns [code]true[/code] if [code]point[/code] is inside the plane. "
+"Comparison uses a custom minimum [code]epsilon[/code] threshold."
msgstr ""
-#: doc/classes/Plane.xml:94
+#: doc/classes/Plane.xml:87
msgid ""
"Returns the intersection point of the three planes [code]b[/code], [code]c[/"
"code] and this plane. If no intersection is found, [code]null[/code] is "
"returned."
msgstr ""
-#: doc/classes/Plane.xml:105
+#: doc/classes/Plane.xml:98
msgid ""
"Returns the intersection point of a ray consisting of the position "
"[code]from[/code] and the direction normal [code]dir[/code] with this plane. "
"If no intersection is found, [code]null[/code] is returned."
msgstr ""
-#: doc/classes/Plane.xml:116
+#: doc/classes/Plane.xml:109
msgid ""
"Returns the intersection point of a segment from position [code]begin[/code] "
"to position [code]end[/code] with this plane. If no intersection is found, "
"[code]null[/code] is returned."
msgstr ""
-#: doc/classes/Plane.xml:125
+#: doc/classes/Plane.xml:118
msgid ""
"Returns [code]true[/code] if this plane and [code]plane[/code] are "
"approximately equal, by running [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/Plane.xml:134
+#: doc/classes/Plane.xml:127
msgid ""
"Returns [code]true[/code] if [code]point[/code] is located above the plane."
msgstr ""
-#: doc/classes/Plane.xml:141
+#: doc/classes/Plane.xml:134
msgid "Returns a copy of the plane, normalized."
msgstr ""
-#: doc/classes/Plane.xml:150
+#: doc/classes/Plane.xml:143
msgid ""
-"Returns the orthogonal projection of point [code]p[/code] into a point in "
-"the plane."
+"Returns the orthogonal projection of [code]point[/code] into a point in the "
+"plane."
msgstr ""
-#: doc/classes/Plane.xml:156
+#: doc/classes/Plane.xml:149
msgid ""
-"Distance from the origin to the plane, in the direction of [member normal]."
+"The distance from the origin to the plane, in the direction of [member "
+"normal]. This value is typically non-negative.\n"
+"In the scalar equation of the plane [code]ax + by + cz = d[/code], this is "
+"[code]d[/code], while the [code](a, b, c)[/code] coordinates are represented "
+"by the [member normal] property."
msgstr ""
-#: doc/classes/Plane.xml:159
+#: doc/classes/Plane.xml:153
msgid ""
-"The normal of the plane. \"Over\" or \"Above\" the plane is considered the "
-"side of the plane towards where the normal is pointing."
+"The normal of the plane, which must be normalized.\n"
+"In the scalar equation of the plane [code]ax + by + cz = d[/code], this is "
+"the vector [code](a, b, c)[/code], where [code]d[/code] is the [member d] "
+"property."
msgstr ""
-#: doc/classes/Plane.xml:162
-msgid "The [member normal]'s X component."
+#: doc/classes/Plane.xml:157
+msgid "The X component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:165
-msgid "The [member normal]'s Y component."
+#: doc/classes/Plane.xml:160
+msgid "The Y component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:168
-msgid "The [member normal]'s Z component."
+#: doc/classes/Plane.xml:163
+msgid "The Z component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:173
-msgid "A plane that extends in the Y and Z axes."
+#: doc/classes/Plane.xml:168
+msgid "A plane that extends in the Y and Z axes (normal vector points +X)."
msgstr ""
-#: doc/classes/Plane.xml:176
-msgid "A plane that extends in the X and Z axes."
+#: doc/classes/Plane.xml:171
+msgid "A plane that extends in the X and Z axes (normal vector points +Y)."
msgstr ""
-#: doc/classes/Plane.xml:179
-msgid "A plane that extends in the X and Y axes."
+#: doc/classes/Plane.xml:174
+msgid "A plane that extends in the X and Y axes (normal vector points +Z)."
msgstr ""
#: doc/classes/PlaneMesh.xml:4
@@ -38306,18 +39043,25 @@ msgstr ""
#: doc/classes/PrimitiveMesh.xml:16
msgid ""
-"Returns mesh arrays used to constitute surface of [Mesh]. Mesh arrays can be "
-"used with [ArrayMesh] to create new surfaces."
+"Returns mesh arrays used to constitute surface of [Mesh]. The result can be "
+"passed to [method ArrayMesh.add_surface_from_arrays] to create a new "
+"surface. For example:\n"
+"[codeblock]\n"
+"var c := CylinderMesh.new()\n"
+"var arr_mesh := ArrayMesh.new()\n"
+"arr_mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLES, c."
+"get_mesh_arrays())\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:22
+#: doc/classes/PrimitiveMesh.xml:27
msgid ""
"Overrides the [AABB] with one defined by user for use with frustum culling. "
"Especially useful to avoid unnexpected culling when using a shader to "
"offset vertices."
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:25
+#: doc/classes/PrimitiveMesh.xml:30
msgid ""
"If set, the order of the vertices in each triangle are reversed resulting in "
"the backside of the mesh being drawn.\n"
@@ -38325,7 +39069,7 @@ msgid ""
"[member BaseMaterial3D.cull_mode]."
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:29
+#: doc/classes/PrimitiveMesh.xml:34
msgid "The current [Material] of the primitive mesh."
msgstr ""
@@ -38756,11 +39500,17 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:260
msgid ""
+"Safer override for [member audio/output_latency] in the Web platform, to "
+"avoid audio issues especially on mobile devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:263
+msgid ""
"Setting to hardcode audio delay when playing video. Best to leave this "
"untouched unless you know what you are doing."
msgstr ""
-#: doc/classes/ProjectSettings.xml:263
+#: doc/classes/ProjectSettings.xml:266
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -38770,7 +39520,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:269
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -38780,27 +39530,27 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:269
+#: doc/classes/ProjectSettings.xml:272
msgid ""
"The default compression level for Zstandard. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
"speed. Decompression speed is mostly unaffected by the compression level."
msgstr ""
-#: doc/classes/ProjectSettings.xml:272
+#: doc/classes/ProjectSettings.xml:275
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:278
msgid ""
"Largest size limit (in power of 2) allowed when compressing using long-"
"distance matching with Zstandard. Higher values can result in better "
"compression, but will require more memory when compressing and decompressing."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:281
msgid ""
"If [code]true[/code], displays getters and setters in autocompletion results "
"in the script editor. This setting is meant to be used when porting old "
@@ -38808,74 +39558,55 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:281
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:284
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:287
+#: doc/classes/ProjectSettings.xml:294
msgid ""
"If [code]true[/code], enables specific GDScript warnings (see [code]debug/"
"gdscript/warnings/*[/code] settings). If [code]false[/code], disables all "
"GDScript warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
-msgid ""
-"If [code]true[/code], enables warnings when a function is declared with the "
-"same name as a constant."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:296
-msgid ""
-"If [code]true[/code], enables warnings when a function is declared with the "
-"same name as a variable. This will turn into an error in a future version "
-"when first-class functions become supported in GDScript."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:299
-msgid ""
-"If [code]true[/code], enables warnings when a function assigned to a "
-"variable may yield and return a function state instead of a value."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:302
+#: doc/classes/ProjectSettings.xml:300
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:303
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when dividing an integer by another "
"integer (the decimal part will be discarded)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when passing a floating-point value "
"to a function that expects an integer (it will be converted and lose "
"precision)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:314
+#: doc/classes/ProjectSettings.xml:312
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
@@ -38896,102 +39627,85 @@ msgid ""
"member variable)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:323
+#: doc/classes/ProjectSettings.xml:325
msgid ""
"If [code]true[/code], enables warnings when calling an expression that has "
"no effect on the surrounding code, such as writing [code]2 + 2[/code] as a "
"statement."
msgstr ""
-#: doc/classes/ProjectSettings.xml:326
+#: doc/classes/ProjectSettings.xml:328
msgid ""
"If [code]true[/code], enables warnings when calling a ternary expression "
"that has no effect on the surrounding code, such as writing [code]42 if "
"active else 0[/code] as a statement."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:331
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:334
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:335
+#: doc/classes/ProjectSettings.xml:337
msgid ""
"If [code]true[/code], enables warnings when assigning a variable using an "
"assignment operator like [code]+=[/code] if the variable wasn't previously "
"assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:338
+#: doc/classes/ProjectSettings.xml:340
msgid ""
"If [code]true[/code], enables warnings when unreachable code is detected "
"(such as after a [code]return[/code] statement that will always be executed)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:345
msgid ""
"If [code]true[/code], enables warnings when using an expression whose type "
"may not be compatible with the function parameter expected."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:348
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:347
+#: doc/classes/ProjectSettings.xml:351
msgid ""
"If [code]true[/code], enables warnings when calling a method whose presence "
"is not guaranteed at compile-time in the class."
msgstr ""
-#: doc/classes/ProjectSettings.xml:350
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], enables warnings when accessing a property whose "
"presence is not guaranteed at compile-time in the class."
msgstr ""
-#: doc/classes/ProjectSettings.xml:353
-msgid ""
-"If [code]true[/code], enables warnings when a function parameter is unused."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:356
-msgid ""
-"If [code]true[/code], enables warnings when a member variable is unused."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:363
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:362
+#: doc/classes/ProjectSettings.xml:366
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:365
-msgid ""
-"If [code]true[/code], enables warnings when a variable is declared with the "
-"same name as a function. This will turn into an error in a future version "
-"when first-class functions become supported in GDScript."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:368
+#: doc/classes/ProjectSettings.xml:369
msgid ""
"If [code]true[/code], enables warnings when assigning the result of a "
"function that returns [code]void[/code] to a variable."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:374
+#: doc/classes/ProjectSettings.xml:375
msgid ""
"Maximum number of frames per second allowed. The actual number of frames per "
"second may still be below this value if the game is lagging.\n"
@@ -39002,143 +39716,143 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:379
+#: doc/classes/ProjectSettings.xml:380
msgid "Maximum call stack allowed for debugging GDScript."
msgstr ""
-#: doc/classes/ProjectSettings.xml:382
+#: doc/classes/ProjectSettings.xml:383
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:385
+#: doc/classes/ProjectSettings.xml:386
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:388
+#: doc/classes/ProjectSettings.xml:389
msgid ""
"Print more information to standard output when running. It displays "
"information such as memory leaks, which scenes and resources are being "
"loaded, etc."
msgstr ""
-#: doc/classes/ProjectSettings.xml:391
+#: doc/classes/ProjectSettings.xml:392
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:394
+#: doc/classes/ProjectSettings.xml:395
msgid ""
"Color of the contact points between collision shapes, visible when \"Visible "
"Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:397
+#: doc/classes/ProjectSettings.xml:398
msgid ""
"Maximum number of contact points between collision shapes to display when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:400
+#: doc/classes/ProjectSettings.xml:401
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
msgid "Hotspot for the custom mouse cursor image."
msgstr ""
-#: doc/classes/ProjectSettings.xml:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
msgid ""
"If [code]true[/code], allows HiDPI display on Windows and macOS. This "
"setting has no effect on desktop Linux, as DPI-awareness fallbacks are not "
"supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"If [code]true[/code], keeps the screen on (even in case of inactivity), so "
"the screensaver does not take over. Works on desktop and mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
msgid "Default orientation on mobile devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"If [code]true[/code], the home indicator is hidden automatically. This only "
"affects iOS devices without a physical home button."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid "Force the window to be always on top."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid "Force the window to be borderless."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Sets the window to full screen when it starts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid ""
"Sets the game's main viewport height. On desktop platforms, this is the "
"default window size. Stretch mode settings also use this as a reference when "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Allows the window to be resizable by default."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"Sets the game's main viewport width. On desktop platforms, this is the "
"default window size. Stretch mode settings also use this as a reference when "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:454
+#: doc/classes/ProjectSettings.xml:455
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:457
+#: doc/classes/ProjectSettings.xml:458
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -39147,7 +39861,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:460
+#: doc/classes/ProjectSettings.xml:461
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -39158,13 +39872,13 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:464
+#: doc/classes/ProjectSettings.xml:465
msgid ""
"Search path for project-specific script templates. Script templates will be "
"search both in the editor-specific path and in this project-specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:467
+#: doc/classes/ProjectSettings.xml:468
msgid ""
"Text-based file extensions to include in the script editor's \"Find in Files"
"\" feature. You can add e.g. [code]tscn[/code] if you wish to also parse "
@@ -39172,49 +39886,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:470
+#: doc/classes/ProjectSettings.xml:471
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:473
+#: doc/classes/ProjectSettings.xml:474
msgid ""
-"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
+"If [code]true[/code], swaps Cancel and OK buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:478
+#: doc/classes/ProjectSettings.xml:479
msgid ""
"Path to a custom [Theme] resource file to use for the project ([code]theme[/"
"code] or generic [code]tres[/code]/[code]res[/code] extension)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:484
+#: doc/classes/ProjectSettings.xml:485
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:487
+#: doc/classes/ProjectSettings.xml:488
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:490
+#: doc/classes/ProjectSettings.xml:491
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:493
+#: doc/classes/ProjectSettings.xml:494
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:496
+#: doc/classes/ProjectSettings.xml:497
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -39223,7 +39937,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"Default [InputEventAction] to discard a modal or pending input.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39231,7 +39945,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:504
+#: doc/classes/ProjectSettings.xml:505
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39239,7 +39953,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:508
+#: doc/classes/ProjectSettings.xml:509
msgid ""
"Default [InputEventAction] to go to the end position of a [Control] (e.g. "
"last item in an [ItemList] or a [Tree]), matching the behavior of [constant "
@@ -39249,7 +39963,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:512
+#: doc/classes/ProjectSettings.xml:513
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -39258,7 +39972,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:516
+#: doc/classes/ProjectSettings.xml:517
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -39267,7 +39981,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:520
+#: doc/classes/ProjectSettings.xml:521
msgid ""
"Default [InputEventAction] to go to the start position of a [Control] (e.g. "
"first item in an [ItemList] or a [Tree]), matching the behavior of [constant "
@@ -39277,7 +39991,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39285,7 +39999,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:528
+#: doc/classes/ProjectSettings.xml:529
msgid ""
"Default [InputEventAction] to go down a page in a [Control] (e.g. in an "
"[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEDOWN] on "
@@ -39295,7 +40009,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Default [InputEventAction] to go up a page in a [Control] (e.g. in an "
"[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEUP] on "
@@ -39305,7 +40019,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:536
+#: doc/classes/ProjectSettings.xml:537
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39313,7 +40027,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:540
+#: doc/classes/ProjectSettings.xml:541
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -39322,7 +40036,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39330,371 +40044,371 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:548
+#: doc/classes/ProjectSettings.xml:549
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:554
+#: doc/classes/ProjectSettings.xml:555
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:557
+#: doc/classes/ProjectSettings.xml:558
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:560
+#: doc/classes/ProjectSettings.xml:561
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:566
+#: doc/classes/ProjectSettings.xml:567
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:569
+#: doc/classes/ProjectSettings.xml:570
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:572
+#: doc/classes/ProjectSettings.xml:573
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:578
+#: doc/classes/ProjectSettings.xml:579
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:581
+#: doc/classes/ProjectSettings.xml:582
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:584
+#: doc/classes/ProjectSettings.xml:585
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:590
+#: doc/classes/ProjectSettings.xml:591
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:593
+#: doc/classes/ProjectSettings.xml:594
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:596
+#: doc/classes/ProjectSettings.xml:597
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:602
+#: doc/classes/ProjectSettings.xml:603
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid ""
"The locale to fall back to if a translation isn't available in a given "
"language. If left empty, [code]en[/code] (English) will be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "If [code]true[/code], logs all output to files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:806
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:809
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:812
msgid ""
"Godot uses a message queue to defer some function calls. If you run out of "
"space on it (you will see an error), you can increase the size here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:815
msgid ""
"This is used by servers when used in multi-threading mode (servers and "
"visual). RIDs are preallocated to avoid stalling the server requesting them "
@@ -39702,56 +40416,56 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:829
+#: doc/classes/ProjectSettings.xml:832
msgid ""
"Maximum amount of characters allowed to send as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:832
+#: doc/classes/ProjectSettings.xml:835
msgid ""
"Maximum number of errors allowed to be sent from the debugger. Over this "
"value, content is dropped. This helps not to stall the debugger connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:835
+#: doc/classes/ProjectSettings.xml:838
msgid ""
"Maximum amount of messages in the debugger queue. Over this value, content "
"is dropped. This helps to limit the debugger memory usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:838
+#: doc/classes/ProjectSettings.xml:841
msgid ""
"Maximum number of warnings allowed to be sent from the debugger. Over this "
"value, content is dropped. This helps not to stall the debugger connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:841
+#: doc/classes/ProjectSettings.xml:844
msgid ""
"Default size of packet peer stream for deserializing Godot data. Over this "
"size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:844
+#: doc/classes/ProjectSettings.xml:847
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:847
+#: doc/classes/ProjectSettings.xml:850
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:850
+#: doc/classes/ProjectSettings.xml:853
msgid ""
"Amount of read ahead used by remote filesystem. Higher values decrease the "
"effects of latency at the cost of higher bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:853
+#: doc/classes/ProjectSettings.xml:856
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:856
+#: doc/classes/ProjectSettings.xml:859
msgid ""
"The CA certificates bundle to use for SSL connections. If this is set to a "
"non-empty value, this will [i]override[/i] Godot's default [url=https://"
@@ -39761,31 +40475,31 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:863
msgid ""
"When creating node names automatically, set the type of casing in this "
"project. This is mostly an editor setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:866
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:869
msgid "Size of the hash table used for the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:872
msgid "Cell size used for the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:875
msgid "The default angular damp in 2D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:878
msgid ""
"The default gravity strength in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39797,7 +40511,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:883
+#: doc/classes/ProjectSettings.xml:886
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39809,38 +40523,38 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:891
+#: doc/classes/ProjectSettings.xml:894
msgid "The default linear damp in 2D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:894
+#: doc/classes/ProjectSettings.xml:897
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:897
+#: doc/classes/ProjectSettings.xml:900
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics2D\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:901
+#: doc/classes/ProjectSettings.xml:904
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant PhysicsServer2D."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:904
+#: doc/classes/ProjectSettings.xml:907
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant PhysicsServer2D."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:907
+#: doc/classes/ProjectSettings.xml:910
msgid ""
"Sets whether physics is run on the main thread or a separate one. Running "
"the server on a thread increases performance, but restricts API access to "
@@ -39850,23 +40564,23 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:914
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant PhysicsServer2D.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:917
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody3D] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:920
msgid "The default angular damp in 3D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:923
msgid ""
"The default gravity strength in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39878,7 +40592,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:928
+#: doc/classes/ProjectSettings.xml:931
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39890,11 +40604,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:936
+#: doc/classes/ProjectSettings.xml:939
msgid "The default linear damp in 3D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:939
+#: doc/classes/ProjectSettings.xml:942
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -39902,11 +40616,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:943
+#: doc/classes/ProjectSettings.xml:946
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:949
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -39915,7 +40629,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:950
+#: doc/classes/ProjectSettings.xml:953
msgid ""
"Fix to improve physics jitter, specially on monitors where refresh rate is "
"different than the physics FPS.\n"
@@ -39923,7 +40637,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:954
+#: doc/classes/ProjectSettings.xml:957
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -39931,7 +40645,7 @@ msgid ""
"programmatically, use [method RenderingServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:957
+#: doc/classes/ProjectSettings.xml:960
msgid ""
"[Environment] that will be used as a fallback environment in case a scene "
"does not specify its own environment. The default environment is loaded in "
@@ -39941,14 +40655,14 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:986
+#: doc/classes/ProjectSettings.xml:989
msgid ""
"Max amount of elements renderable in a frame. If more than this are visible "
"per frame, they will be dropped. Keep in mind elements refer to mesh "
"surfaces and not meshes themselves."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:994
msgid ""
"Some NVIDIA GPU drivers have a bug which produces flickering issues for the "
"[code]draw_rect[/code] method, especially as used in [TileMap]. Refer to "
@@ -39960,73 +40674,73 @@ msgid ""
"using the Vulkan backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:995
+#: doc/classes/ProjectSettings.xml:998
msgid ""
"If [code]true[/code], forces snapping of polygons to pixels in 2D rendering. "
"May help in some pixel art styles."
msgstr ""
-#: doc/classes/ProjectSettings.xml:998
+#: doc/classes/ProjectSettings.xml:1001
msgid ""
"Sets the quality of the depth of field effect. Higher quality takes more "
"samples, which is slower but looks smoother."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1001
+#: doc/classes/ProjectSettings.xml:1004
msgid ""
"Sets the depth of field shape. Can be Box, Hexagon, or Circle. Box is the "
"fastest. Circle is the most realistic, but also the most expensive to "
"compute."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1004
+#: doc/classes/ProjectSettings.xml:1007
msgid ""
"If [code]true[/code], jitters DOF samples to make effect slightly blurrier "
"and hide lines created from low sample rates. This can result in a slightly "
"grainy appearance when used with a low number of samples."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1010
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1010
+#: doc/classes/ProjectSettings.xml:1013
msgid ""
"If [code]true[/code], performs a previous depth pass before rendering "
"materials. This increases performance in scenes with high overdraw, when "
"complex materials and lighting are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1016
msgid ""
"The directional shadow's size in pixels. Higher values will result in "
"sharper shadows, at the cost of performance. The value will be rounded up to "
"the nearest power of 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1016
+#: doc/classes/ProjectSettings.xml:1019
msgid ""
"Lower-end override for [member rendering/quality/directional_shadow/size] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1019
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"Quality setting for shadows cast by [DirectionalLight3D]s. Higher quality "
"settings use more samples when reading from shadow maps and are thus slower. "
"Low quality settings may result in shadows looking grainy."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1022
+#: doc/classes/ProjectSettings.xml:1025
msgid ""
"Lower-end override for [member rendering/quality/directional_shadow/"
"soft_shadow_quality] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1028
msgid ""
"The video driver to use (\"GLES2\" or \"Vulkan\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -40036,32 +40750,32 @@ msgid ""
"get_current_video_driver[/code] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1031
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"If [code]true[/code], take additional samples when rendering objects "
"affected by a [GIProbe] to reduce artifacts from only sampling in one "
"direction."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1034
+#: doc/classes/ProjectSettings.xml:1037
msgid ""
"Sets the number of cone samples taken when rendering objects affected by "
"[GIProbe]s."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1037
+#: doc/classes/ProjectSettings.xml:1040
msgid ""
"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."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1040
+#: doc/classes/ProjectSettings.xml:1043
msgid ""
"Lower-end override for [member rendering/quality/glow/upscale_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1043
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Strategy used for framebuffer allocation. The simpler it is, the less "
"resources it uses (but the less features it supports). If set to \"2D "
@@ -40071,41 +40785,41 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1046
+#: doc/classes/ProjectSettings.xml:1049
msgid ""
"Lower-end override for [member rendering/quality/intended_usage/"
"framebuffer_allocation] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1052
msgid ""
"Number of cubemaps to store in the reflection atlas. The number of "
"[ReflectionProbe]s in a scene will be limited by this amount. A higher "
"number requires more VRAM."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1052
+#: doc/classes/ProjectSettings.xml:1055
msgid ""
"Size of cubemap faces for [ReflectionProbe]s. A higher number requires more "
"VRAM and may make reflection probe updating slower."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1055
+#: doc/classes/ProjectSettings.xml:1058
msgid ""
"Lower-end override for [member rendering/quality/reflection_atlas/"
"reflection_size] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1058
+#: doc/classes/ProjectSettings.xml:1061
msgid ""
"Use a higher quality variant of the fast filtering algorithm. Significantly "
"slower than using default quality, but results in smoother reflections. "
"Should only be used when the scene is especially detailed."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1061
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Sets the number of samples to take when using importance sampling for [Sky]s "
"and [ReflectionProbe]s. A higher value will result in smoother, higher "
@@ -40115,19 +40829,19 @@ msgid ""
"environments with a high level of detail."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1064
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Lower-end override for [member rendering/quality/reflections/ggx_samples] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1067
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Limits the number of layers to use in radiance maps when using importance "
"sampling. A lower number will be slightly faster and take up less VRAM."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1070
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise and "
@@ -40136,14 +40850,14 @@ msgid ""
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1073
+#: doc/classes/ProjectSettings.xml:1076
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"texture_array_reflections] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1079
msgid ""
"Sets the number of MSAA samples to use (as a power of two). MSAA is used to "
"reduce aliasing around the edges of polygons. A higher MSAA value results in "
@@ -40151,7 +40865,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1080
+#: doc/classes/ProjectSettings.xml:1083
msgid ""
"Sets the screen-space antialiasing mode for the default screen [Viewport]. "
"Screen-space antialiasing works by selectively blurring edges in a post-"
@@ -40160,133 +40874,117 @@ msgid ""
"MSAA and will smooth out specular aliasing, but tend to make scenes appear "
"blurry.\n"
"Another way to combat specular aliasing is to enable [member rendering/"
-"quality/screen_filters/screen_space_roughness_limiter]."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:1084
-msgid ""
-"Enables the screen-space roughness limiter which increases material "
-"roughness in areas with a high normal frequency (i.e. when normals change a "
-"lot from pixel to pixel). This helps to reduce the amount of specular "
-"aliasing in a scene. Specular aliasing looks like random bright pixels that "
-"occur in reflections."
+"quality/screen_filters/screen_space_roughness_limiter_enabled]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1087
-msgid ""
-"Curves the amount of the roughness limited effect. A higher value limits the "
-"effect to very sharply curved surfaces, while a lower threshold extends the "
-"effect to smoother surfaces."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:1090
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"Sets the quality for rough screen-space reflections. Turning off will make "
"all screen space reflections sharp, while higher values make rough "
"reflections look better."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1093
+#: doc/classes/ProjectSettings.xml:1096
msgid ""
"If [code]true[/code], uses faster but lower-quality Blinn model to generate "
"blurred reflections instead of the GGX model."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1099
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_blinn_over_ggx] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1102
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1102
+#: doc/classes/ProjectSettings.xml:1105
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_lambert_over_burley] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1105
+#: doc/classes/ProjectSettings.xml:1108
msgid ""
"If [code]true[/code], forces vertex shading for all rendering. This can "
"increase performance a lot, but also reduces quality immensely. Can be used "
"to optimize performance on low-end mobile devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1108
+#: doc/classes/ProjectSettings.xml:1111
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_vertex_shading] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1111 doc/classes/ProjectSettings.xml:1114
-#: doc/classes/ProjectSettings.xml:1117 doc/classes/ProjectSettings.xml:1120
+#: doc/classes/ProjectSettings.xml:1114 doc/classes/ProjectSettings.xml:1117
+#: doc/classes/ProjectSettings.xml:1120 doc/classes/ProjectSettings.xml:1123
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1123
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1126
+#: doc/classes/ProjectSettings.xml:1129
msgid ""
"Lower-end override for [member rendering/quality/shadow_atlas/size] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1132
msgid ""
"Quality setting for shadows cast by [OmniLight3D]s and [SpotLight3D]s. "
"Higher quality settings use more samples when reading from shadow maps and "
"are thus slower. Low quality settings may result in shadows looking grainy."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1132
+#: doc/classes/ProjectSettings.xml:1135
msgid ""
"Lower-end override for [member rendering/quality/shadows/"
"soft_shadow_quality] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1135
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"If [code]true[/code], screen-space ambient occlusion will be rendered at "
"half size and then upscaled before being added to the scene. This is "
"significantly faster but may miss small details."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1138
+#: doc/classes/ProjectSettings.xml:1141
msgid ""
"Sets the quality of the screen-space ambient occlusion effect. Higher values "
"take more samples and so will result in better quality, at the cost of "
"performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1144
msgid ""
"Scales the depth over which the subsurface scattering effect is applied. A "
"high value may allow light to scatter into a part of the mesh or another "
"mesh that is close in screen space but far in depth."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1144
+#: doc/classes/ProjectSettings.xml:1147
msgid ""
"Sets the quality of the subsurface scattering effect. Higher values are "
"slower but look nicer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1147
+#: doc/classes/ProjectSettings.xml:1150
msgid ""
"Scales the distance over which samples are taken for subsurface scattering "
"effect. Changing this does not impact performance, but higher values will "
@@ -40294,7 +40992,7 @@ msgid ""
"out. A lower value results in a smaller spread of scattered light."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1150
+#: doc/classes/ProjectSettings.xml:1153
msgid ""
"Sets the maximum number of samples to take when using anisotropic filtering "
"on textures (as a power of two). A higher sample count will result in "
@@ -40303,7 +41001,7 @@ msgid ""
"materials where it is enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1153
+#: doc/classes/ProjectSettings.xml:1156
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -40312,49 +41010,49 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Thread model for rendering. Rendering on a thread can vastly improve "
"performance, but synchronizing to the main thread can cause a bit more "
"jitter."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
"only supported on desktop platforms, and only when using the Vulkan renderer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
"doesn't support alpha channels in textures."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
"compression algorithm is only supported when using the Vulkan renderer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1175
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
"compression algorithm is only supported on iOS."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
"supported on desktop platforms and consoles."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1182
+#: doc/classes/ProjectSettings.xml:1189
msgid "Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses."
msgstr ""
@@ -40384,13 +41082,14 @@ msgstr ""
#: doc/classes/Quat.xml:7
msgid ""
-"A unit quaternion used for representing 3D rotations.\n"
-"It is similar to [Basis], which implements matrix representation of "
-"rotations, and can be parametrized using both an axis-angle pair or Euler "
-"angles. But due to its compactness and the way it is stored in memory, "
-"certain operations (obtaining axis-angle and performing SLERP, in "
-"particular) are more efficient and robust against floating-point errors.\n"
-"Quaternions need to be (re)normalized."
+"A unit quaternion used for representing 3D rotations. Quaternions need to be "
+"normalized to be used for rotation.\n"
+"It is similar to Basis, which implements matrix representation of rotations, "
+"and can be parametrized using both an axis-angle pair or Euler angles. Basis "
+"stores rotation, scale, and shearing, while Quat only stores rotation.\n"
+"Due to its compactness and the way it is stored in memory, certain "
+"operations (obtaining axis-angle and performing SLERP, in particular) are "
+"more efficient and robust against floating-point errors."
msgstr ""
#: doc/classes/Quat.xml:12
@@ -40400,29 +41099,31 @@ msgid ""
msgstr ""
#: doc/classes/Quat.xml:21
-msgid "Returns the rotation matrix corresponding to the given quaternion."
+msgid "Constructs a quaternion from the given [Basis]."
msgstr ""
#: doc/classes/Quat.xml:30
msgid ""
-"Returns a quaternion that will perform a rotation specified by Euler angles "
-"(in the YXZ convention: first Z, then X, and Y last), given in the vector "
-"format as (X angle, Y angle, Z angle)."
+"Constructs a quaternion that will perform a rotation specified by Euler "
+"angles (in the YXZ convention: when decomposing, first Z, then X, and Y "
+"last), given in the vector format as (X angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:41
msgid ""
-"Returns a quaternion that will rotate around the given axis by the specified "
-"angle. The axis must be a normalized vector."
+"Constructs a quaternion that will rotate around the given axis by the "
+"specified angle. The axis must be a normalized vector."
msgstr ""
#: doc/classes/Quat.xml:56
-msgid "Returns a quaternion defined by these values."
+msgid "Constructs a quaternion defined by the given values."
msgstr ""
#: doc/classes/Quat.xml:71
msgid ""
-"Performs a cubic spherical-linear interpolation with another quaternion."
+"Performs a cubic spherical interpolation between quaternions [code]preA[/"
+"code], this vector, [code]b[/code], and [code]postB[/code], by the given "
+"amount [code]t[/code]."
msgstr ""
#: doc/classes/Quat.xml:80
@@ -40431,10 +41132,10 @@ msgstr ""
#: doc/classes/Quat.xml:87
msgid ""
-"Returns Euler angles (in the YXZ convention: first Z, then X, and Y last) "
-"corresponding to the rotation represented by the unit quaternion. Returned "
-"vector contains the rotation angles in the format (X angle, Y angle, Z "
-"angle)."
+"Returns Euler angles (in the YXZ convention: when decomposing, first Z, then "
+"X, and Y last) corresponding to the rotation represented by the unit "
+"quaternion. Returned vector contains the rotation angles in the format (X "
+"angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:94
@@ -40473,44 +41174,57 @@ msgstr ""
#: doc/classes/Quat.xml:151
msgid ""
"Sets the quaternion to a rotation specified by Euler angles (in the YXZ "
-"convention: first Z, then X, and Y last), given in the vector format as (X "
-"angle, Y angle, Z angle)."
+"convention: when decomposing, first Z, then X, and Y last), given in the "
+"vector format as (X angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:162
-msgid "Performs a spherical-linear interpolation with another quaternion."
+msgid ""
+"Returns the result of the spherical linear interpolation between this "
+"quaternion and [code]to[/code] by amount [code]weight[/code].\n"
+"[b]Note:[/b] Both quaternions must be normalized."
msgstr ""
-#: doc/classes/Quat.xml:173
+#: doc/classes/Quat.xml:174
msgid ""
-"Performs a spherical-linear interpolation with another quaterion without "
-"checking if the rotation path is not bigger than 90°."
+"Returns the result of the spherical linear interpolation between this "
+"quaternion and [code]to[/code] by amount [code]weight[/code], but without "
+"checking if the rotation path is not bigger than 90 degrees."
msgstr ""
-#: doc/classes/Quat.xml:182
-msgid "Transforms the vector [code]v[/code] by this quaternion."
+#: doc/classes/Quat.xml:183
+msgid "Returns a vector transformed (multiplied) by this quaternion."
msgstr ""
-#: doc/classes/Quat.xml:188
-msgid "W component of the quaternion."
+#: doc/classes/Quat.xml:189
+msgid ""
+"W component of the quaternion (real part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:191
-msgid "X component of the quaternion."
+#: doc/classes/Quat.xml:193
+msgid ""
+"X component of the quaternion (imaginary [code]i[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:194
-msgid "Y component of the quaternion."
+#: doc/classes/Quat.xml:197
+msgid ""
+"Y component of the quaternion (imaginary [code]j[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:197
-msgid "Z component of the quaternion."
+#: doc/classes/Quat.xml:201
+msgid ""
+"Z component of the quaternion (imaginary [code]k[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:202
+#: doc/classes/Quat.xml:207
msgid ""
-"The identity rotation. Equivalent to an identity matrix. If a vector is "
-"transformed by an identity quaternion, it will not change."
+"The identity quaternion, representing no rotation. Equivalent to an identity "
+"[Basis] matrix. If a vector is transformed by an identity quaternion, it "
+"will not change."
msgstr ""
#: doc/classes/RandomNumberGenerator.xml:4
@@ -40713,7 +41427,8 @@ msgid ""
"collision information immediately instead of waiting for the next "
"[code]_physics_process[/code] call, for example if the ray or its parent has "
"changed state.\n"
-"[b]Note:[/b] [code]enabled == true[/code] is not required for this to work."
+"[b]Note:[/b] [member enabled] does not need to be [code]true[/code] for this "
+"to work."
msgstr ""
#: doc/classes/RayCast2D.xml:54 doc/classes/RayCast3D.xml:55
@@ -40819,7 +41534,8 @@ msgid ""
"Use this method to update the collision information immediately instead of "
"waiting for the next [code]_physics_process[/code] call, for example if the "
"ray or its parent has changed state.\n"
-"[b]Note:[/b] [code]enabled == true[/code] is not required for this to work."
+"[b]Note:[/b] [member enabled] does not need to be [code]true[/code] for this "
+"to work."
msgstr ""
#: doc/classes/RayCast3D.xml:71
@@ -40977,14 +41693,6 @@ msgstr ""
msgid "Returns a larger [Rect2] that contains this [Rect2] and [code]b[/code]."
msgstr ""
-#: doc/classes/Rect2.xml:174 doc/classes/Rect2i.xml:163
-msgid "Ending corner."
-msgstr ""
-
-#: doc/classes/Rect2.xml:177 doc/classes/Rect2i.xml:166
-msgid "Position (starting corner)."
-msgstr ""
-
#: doc/classes/Rect2i.xml:4
msgid "2D axis-aligned bounding box using integer coordinates."
msgstr ""
@@ -41097,22 +41805,22 @@ msgstr ""
msgid ""
"Base class for any object that keeps a reference count. [Resource] and many "
"other helper objects inherit this class.\n"
-"References keep an internal reference counter so that they are automatically "
-"released when no longer in use, and only then. References therefore do not "
-"need to be freed manually with [method Object.free].\n"
+"Unlike [Object]s, References keep an internal reference counter so that they "
+"are automatically released when no longer in use, and only then. References "
+"therefore do not need to be freed manually with [method Object.free].\n"
"In the vast majority of use cases, instantiating and using [Reference]-"
"derived types is all you need to do. The methods provided in this class are "
"only for advanced users, and can cause issues if misused."
msgstr ""
-#: doc/classes/Reference.xml:18
+#: doc/classes/Reference.xml:19
msgid ""
"Initializes the internal reference counter. Use this only if you really know "
"what you are doing.\n"
"Returns whether the initialization was successful."
msgstr ""
-#: doc/classes/Reference.xml:26
+#: doc/classes/Reference.xml:27
msgid ""
"Increments the internal reference counter. Use this only if you really know "
"what you are doing.\n"
@@ -41120,7 +41828,7 @@ msgid ""
"code] otherwise."
msgstr ""
-#: doc/classes/Reference.xml:34
+#: doc/classes/Reference.xml:35
msgid ""
"Decrements the internal reference counter. Use this only if you really know "
"what you are doing.\n"
@@ -41169,14 +41877,14 @@ msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/reflection_probes.html"
msgstr ""
-#: doc/classes/ReflectionProbe.xml:17
+#: doc/classes/ReflectionProbe.xml:23
msgid ""
"If [code]true[/code], enables box projection. This makes reflections look "
"more correct in rectangle-shaped rooms by offsetting the reflection center "
"depending on the camera's location."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:20
+#: doc/classes/ReflectionProbe.xml:26
msgid ""
"Sets the cull mask which determines what objects are drawn by this probe. "
"Every [VisualInstance3D] with a layer included in this cull mask will be "
@@ -41185,78 +41893,56 @@ msgid ""
"rendering cost."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:23
+#: doc/classes/ReflectionProbe.xml:29
msgid ""
"If [code]true[/code], computes shadows in the reflection probe. This makes "
"the reflection probe slower to render; you may want to disable this if using "
"the [constant UPDATE_ALWAYS] [member update_mode]."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:26
+#: doc/classes/ReflectionProbe.xml:32
msgid ""
"The size of the reflection probe. The larger the extents the more space "
"covered by the probe which will lower the perceived resolution. It is best "
"to keep the extents only as large as you need them."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:29
+#: doc/classes/ReflectionProbe.xml:35
msgid ""
"Defines the reflection intensity. Intensity modulates the strength of the "
"reflection."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:32
-msgid ""
-"Sets the ambient light color to be used when this probe is set to [member "
-"interior_enable]."
-msgstr ""
-
-#: doc/classes/ReflectionProbe.xml:35
-msgid ""
-"Sets the contribution value for how much the reflection affects the ambient "
-"light for this reflection probe when set to [member interior_enable]. Useful "
-"so that ambient light matches the color of the room."
-msgstr ""
-
#: doc/classes/ReflectionProbe.xml:38
-msgid ""
-"Sets the energy multiplier for this reflection probe's ambient light "
-"contribution when set to [member interior_enable]."
+msgid "If [code]true[/code], reflections will ignore sky contribution."
msgstr ""
#: doc/classes/ReflectionProbe.xml:41
msgid ""
-"If [code]true[/code], reflections will ignore sky contribution. Ambient "
-"lighting is then controlled by the [code]interior_ambient_*[/code] "
-"properties."
-msgstr ""
-
-#: doc/classes/ReflectionProbe.xml:44
-msgid ""
"Sets the max distance away from the probe an object can be before it is "
"culled."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:47
+#: doc/classes/ReflectionProbe.xml:44
msgid ""
"Sets the origin offset to be used when this reflection probe is in box "
"project mode."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:50
+#: doc/classes/ReflectionProbe.xml:47
msgid ""
"Sets how frequently the probe is updated. Can be [constant UPDATE_ONCE] or "
"[constant UPDATE_ALWAYS]."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:55
+#: doc/classes/ReflectionProbe.xml:52
msgid ""
"Update the probe once on the next frame. The corresponding radiance map will "
"be generated over the following six frames. This is slower to update than "
"[constant UPDATE_ALWAYS] but can result in higher quality reflections."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:58
+#: doc/classes/ReflectionProbe.xml:55
msgid ""
"Update the probe every frame. This is needed when you want to capture "
"dynamic objects. However, it results in an increased render time. Use "
@@ -41286,10 +41972,10 @@ msgid ""
"read by RegEx as [code]\\d+[/code]. Similarly, [code]compile(\"\\\"(?:\\\\\\"
"\\.|[^\\\"])*\\\"\")[/code] would be read as [code]\"(?:\\\\.|[^\"])*\"[/"
"code].\n"
-"Using [method search] you can find the pattern within the given text. If a "
+"Using [method search], you can find the pattern within the given text. If a "
"pattern is found, [RegExMatch] is returned and you can retrieve details of "
-"the results using functions such as [method RegExMatch.get_string] and "
-"[method RegExMatch.get_start].\n"
+"the results using methods such as [method RegExMatch.get_string] and [method "
+"RegExMatch.get_start].\n"
"[codeblock]\n"
"var regex = RegEx.new()\n"
"regex.compile(\"\\\\w-(\\\\d+)\")\n"
@@ -41298,7 +41984,7 @@ msgid ""
" print(result.get_string()) # Would print n-0123\n"
"[/codeblock]\n"
"The results of capturing groups [code]()[/code] can be retrieved by passing "
-"the group number to the various functions in [RegExMatch]. Group 0 is the "
+"the group number to the various methods in [RegExMatch]. Group 0 is the "
"default and will always refer to the entire pattern. In the above example, "
"calling [code]result.get_string(1)[/code] would give you [code]0123[/code].\n"
"This version of RegEx also supports named capturing groups, and the names "
@@ -41319,6 +42005,15 @@ msgid ""
" print(result.get_string(\"digit\"))\n"
"# Would print 01 03 0 3f 42\n"
"[/codeblock]\n"
+"[b]Example of splitting a string using a RegEx:[/b]\n"
+"[codeblock]\n"
+"var regex = RegEx.new()\n"
+"regex.compile(\"\\\\S+\") # Negated whitespace character class.\n"
+"var results = []\n"
+"for match in regex.search_all(\"One Two \\n\\tThree\"):\n"
+" results.push_back(match.get_string())\n"
+"# The `results` array now contains \"One\", \"Two\", \"Three\".\n"
+"[/codeblock]\n"
"[b]Note:[/b] Godot's regex implementation is based on the [url=https://www."
"pcre.org/]PCRE2[/url] library. You can view the full pattern reference "
"[url=https://www.pcre.org/current/doc/html/pcre2pattern.html]here[/url].\n"
@@ -41326,38 +42021,38 @@ msgid ""
"regular expressions online."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:47
+#: modules/regex/doc_classes/RegEx.xml:56
msgid ""
"This method resets the state of the object, as if it was freshly created. "
"Namely, it unassigns the regular expression of this object."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:56
+#: modules/regex/doc_classes/RegEx.xml:65
msgid ""
"Compiles and assign the search pattern to use. Returns [constant OK] if the "
"compilation is successful. If an error is encountered, details are printed "
"to standard output and an error is returned."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:63
+#: modules/regex/doc_classes/RegEx.xml:72
msgid "Returns the number of capturing groups in compiled pattern."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:70
+#: modules/regex/doc_classes/RegEx.xml:79
msgid ""
"Returns an array of names of named capturing groups in the compiled pattern. "
"They are ordered by appearance."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:77
+#: modules/regex/doc_classes/RegEx.xml:86
msgid "Returns the original search pattern that was compiled."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:84
+#: modules/regex/doc_classes/RegEx.xml:93
msgid "Returns whether this object has a valid search pattern assigned."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:97
+#: modules/regex/doc_classes/RegEx.xml:106
msgid ""
"Searches the text for the compiled pattern. Returns a [RegExMatch] container "
"of the first matching result if found, otherwise [code]null[/code]. The "
@@ -41365,7 +42060,7 @@ msgid ""
"and end anchor would be."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:110
+#: modules/regex/doc_classes/RegEx.xml:119
msgid ""
"Searches the text for the compiled pattern. Returns an array of [RegExMatch] "
"containers for each non-overlapping result. If no results were found, an "
@@ -41373,7 +42068,7 @@ msgid ""
"specified without modifying where the start and end anchor would be."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:127
+#: modules/regex/doc_classes/RegEx.xml:136
msgid ""
"Searches the text for the compiled pattern and replaces it with the "
"specified string. Escapes and backreferences such as [code]$1[/code] and "
@@ -42100,7 +42795,7 @@ msgid ""
msgstr ""
#: doc/classes/RenderingServer.xml:1222 doc/classes/RenderingServer.xml:1250
-#: doc/classes/RenderingServer.xml:1527
+#: doc/classes/RenderingServer.xml:1537
msgid "Not implemented in Godot 3.x."
msgstr ""
@@ -42247,30 +42942,30 @@ msgid ""
"OmniLight3D.omni_shadow_mode]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1481
+#: doc/classes/RenderingServer.xml:1491
msgid ""
"Sets the color of the light. Equivalent to [member Light3D.light_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1492
+#: doc/classes/RenderingServer.xml:1502
msgid ""
"Sets the cull mask for this Light3D. Lights only affect objects in the "
"selected layers. Equivalent to [member Light3D.light_cull_mask]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1503
+#: doc/classes/RenderingServer.xml:1513
msgid ""
"If [code]true[/code], light will subtract light instead of adding light. "
"Equivalent to [member Light3D.light_negative]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1516
+#: doc/classes/RenderingServer.xml:1526
msgid ""
"Sets the specified light parameter. See [enum LightParam] for options. "
"Equivalent to [method Light3D.set_param]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1538
+#: doc/classes/RenderingServer.xml:1548
msgid ""
"If [code]true[/code], reverses the backface culling of the mesh. This can be "
"useful when you have a flat mesh that has a light behind it. If you need to "
@@ -42279,29 +42974,25 @@ msgid ""
"to [member Light3D.shadow_reverse_cull_face]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1549
+#: doc/classes/RenderingServer.xml:1559
msgid ""
"If [code]true[/code], light will cast shadows. Equivalent to [member Light3D."
"shadow_enabled]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1560
+#: doc/classes/RenderingServer.xml:1570
msgid ""
"Sets the color of the shadow cast by the light. Equivalent to [member "
"Light3D.shadow_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1571
-msgid "Sets whether GI probes capture light information from this light."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:1584
+#: doc/classes/RenderingServer.xml:1583
msgid ""
"Returns a mesh of a sphere with the given amount of horizontal and vertical "
"subdivisions."
msgstr ""
-#: doc/classes/RenderingServer.xml:1591
+#: doc/classes/RenderingServer.xml:1590
msgid ""
"Creates an empty material and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42310,31 +43001,31 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:1603
+#: doc/classes/RenderingServer.xml:1602
msgid "Returns the value of a certain material's parameter."
msgstr ""
-#: doc/classes/RenderingServer.xml:1614
+#: doc/classes/RenderingServer.xml:1613
msgid "Sets an object's next material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1627
+#: doc/classes/RenderingServer.xml:1626
msgid "Sets a material's parameter."
msgstr ""
-#: doc/classes/RenderingServer.xml:1638
+#: doc/classes/RenderingServer.xml:1637
msgid "Sets a material's render priority."
msgstr ""
-#: doc/classes/RenderingServer.xml:1649
+#: doc/classes/RenderingServer.xml:1648
msgid "Sets a shader material's shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:1678
+#: doc/classes/RenderingServer.xml:1677
msgid "Removes all surfaces from a mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1685
+#: doc/classes/RenderingServer.xml:1684
msgid ""
"Creates a new mesh and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all [code]mesh_*[/"
@@ -42345,58 +43036,58 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:1696
+#: doc/classes/RenderingServer.xml:1695
msgid "Returns a mesh's blend shape count."
msgstr ""
-#: doc/classes/RenderingServer.xml:1705
+#: doc/classes/RenderingServer.xml:1704
msgid "Returns a mesh's blend shape mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:1714
+#: doc/classes/RenderingServer.xml:1713
msgid "Returns a mesh's custom aabb."
msgstr ""
-#: doc/classes/RenderingServer.xml:1723
+#: doc/classes/RenderingServer.xml:1722
msgid "Returns a mesh's number of surfaces."
msgstr ""
-#: doc/classes/RenderingServer.xml:1734
+#: doc/classes/RenderingServer.xml:1733
msgid "Sets a mesh's blend shape mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:1745
+#: doc/classes/RenderingServer.xml:1744
msgid "Sets a mesh's custom aabb."
msgstr ""
-#: doc/classes/RenderingServer.xml:1756
+#: doc/classes/RenderingServer.xml:1755
msgid "Returns a mesh's surface's buffer arrays."
msgstr ""
-#: doc/classes/RenderingServer.xml:1767
+#: doc/classes/RenderingServer.xml:1766
msgid "Returns a mesh's surface's arrays for blend shapes."
msgstr ""
-#: doc/classes/RenderingServer.xml:1782 doc/classes/RenderingServer.xml:1795
+#: doc/classes/RenderingServer.xml:1781 doc/classes/RenderingServer.xml:1794
msgid "Function is unused in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:1806
+#: doc/classes/RenderingServer.xml:1805
msgid "Returns a mesh's surface's material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1819
+#: doc/classes/RenderingServer.xml:1818
msgid "Sets a mesh's surface's material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1834
+#: doc/classes/RenderingServer.xml:1833
msgid ""
"Updates a specific region of a vertex buffer for the specified surface. "
"Warning: this function alters the vertex buffer directly with no safety "
"mechanisms, you can easily corrupt your mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1857
+#: doc/classes/RenderingServer.xml:1856
msgid ""
"Creates a new multimesh on the RenderingServer and returns an [RID] handle. "
"This RID will be used in all [code]multimesh_*[/code] RenderingServer "
@@ -42407,82 +43098,82 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:1868
+#: doc/classes/RenderingServer.xml:1867
msgid ""
"Calculates and returns the axis-aligned bounding box that encloses all "
"instances within the multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1885
+#: doc/classes/RenderingServer.xml:1884
msgid "Returns the number of instances allocated for this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1894
+#: doc/classes/RenderingServer.xml:1893
msgid ""
"Returns the RID of the mesh that will be used in drawing this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1903
+#: doc/classes/RenderingServer.xml:1902
msgid "Returns the number of visible instances for this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1914
+#: doc/classes/RenderingServer.xml:1913
msgid "Returns the color by which the specified instance will be modulated."
msgstr ""
-#: doc/classes/RenderingServer.xml:1925
+#: doc/classes/RenderingServer.xml:1924
msgid "Returns the custom data associated with the specified instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:1936
+#: doc/classes/RenderingServer.xml:1935
msgid "Returns the [Transform] of the specified instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:1947
+#: doc/classes/RenderingServer.xml:1946
msgid ""
"Returns the [Transform2D] of the specified instance. For use when the "
"multimesh is set to use 2D transforms."
msgstr ""
-#: doc/classes/RenderingServer.xml:1960
+#: doc/classes/RenderingServer.xml:1959
msgid ""
"Sets the color by which this instance will be modulated. Equivalent to "
"[method MultiMesh.set_instance_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1973
+#: doc/classes/RenderingServer.xml:1972
msgid ""
"Sets the custom data for this instance. Custom data is passed as a [Color], "
"but is interpreted as a [code]vec4[/code] in the shader. Equivalent to "
"[method MultiMesh.set_instance_custom_data]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1986
+#: doc/classes/RenderingServer.xml:1985
msgid ""
"Sets the [Transform] for this instance. Equivalent to [method MultiMesh."
"set_instance_transform]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1999
+#: doc/classes/RenderingServer.xml:1998
msgid ""
"Sets the [Transform2D] for this instance. For use when multimesh is used in "
"2D. Equivalent to [method MultiMesh.set_instance_transform_2d]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2020
+#: doc/classes/RenderingServer.xml:2019
msgid ""
"Sets the mesh to be drawn by the multimesh. Equivalent to [member MultiMesh."
"mesh]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2031
+#: doc/classes/RenderingServer.xml:2030
msgid ""
"Sets the number of instances visible at a given time. If -1, all instances "
"that have been allocated are drawn. Equivalent to [member MultiMesh."
"visible_instance_count]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2038
+#: doc/classes/RenderingServer.xml:2037
msgid ""
"Creates a new omni light and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID can be used in most "
@@ -42493,7 +43184,7 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2047
+#: doc/classes/RenderingServer.xml:2046
msgid ""
"Creates a particle system and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42504,23 +43195,23 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2058
+#: doc/classes/RenderingServer.xml:2057
msgid ""
"Calculates and returns the axis-aligned bounding box that contains all the "
"particles. Equivalent to [method GPUParticles3D.capture_aabb]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2067
+#: doc/classes/RenderingServer.xml:2066
msgid "Returns [code]true[/code] if particles are currently set to emitting."
msgstr ""
-#: doc/classes/RenderingServer.xml:2076
+#: doc/classes/RenderingServer.xml:2075
msgid ""
"Returns [code]true[/code] if particles are not emitting and particles are "
"set to inactive."
msgstr ""
-#: doc/classes/RenderingServer.xml:2085
+#: doc/classes/RenderingServer.xml:2084
msgid ""
"Add particle system to list of particle systems that need to be updated. "
"Update will take place on the next frame, or on the next call to [method "
@@ -42528,121 +43219,121 @@ msgid ""
"instances_cull_ray]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2094
+#: doc/classes/RenderingServer.xml:2093
msgid ""
"Reset the particles on the next update. Equivalent to [method GPUParticles3D."
"restart]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2105
+#: doc/classes/RenderingServer.xml:2104
msgid ""
"Sets the number of particles to be drawn and allocates the memory for them. "
"Equivalent to [member GPUParticles3D.amount]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2116
+#: doc/classes/RenderingServer.xml:2115
msgid ""
"Sets a custom axis-aligned bounding box for the particle system. Equivalent "
"to [member GPUParticles3D.visibility_aabb]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2127
+#: doc/classes/RenderingServer.xml:2126
msgid ""
"Sets the draw order of the particles to one of the named enums from [enum "
"ParticlesDrawOrder]. See [enum ParticlesDrawOrder] for options. Equivalent "
"to [member GPUParticles3D.draw_order]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2140
+#: doc/classes/RenderingServer.xml:2139
msgid ""
"Sets the mesh to be used for the specified draw pass. Equivalent to [member "
"GPUParticles3D.draw_pass_1], [member GPUParticles3D.draw_pass_2], [member "
"GPUParticles3D.draw_pass_3], and [member GPUParticles3D.draw_pass_4]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2151
+#: doc/classes/RenderingServer.xml:2150
msgid ""
"Sets the number of draw passes to use. Equivalent to [member GPUParticles3D."
"draw_passes]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2162
+#: doc/classes/RenderingServer.xml:2161
msgid ""
"Sets the [Transform] that will be used by the particles when they first emit."
msgstr ""
-#: doc/classes/RenderingServer.xml:2173
+#: doc/classes/RenderingServer.xml:2172
msgid ""
"If [code]true[/code], particles will emit over time. Setting to false does "
"not reset the particles, but only stops their emission. Equivalent to "
"[member GPUParticles3D.emitting]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2184
+#: doc/classes/RenderingServer.xml:2183
msgid ""
"Sets the explosiveness ratio. Equivalent to [member GPUParticles3D."
"explosiveness]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2195
+#: doc/classes/RenderingServer.xml:2194
msgid ""
"Sets the frame rate that the particle system rendering will be fixed to. "
"Equivalent to [member GPUParticles3D.fixed_fps]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2206
+#: doc/classes/RenderingServer.xml:2205
msgid ""
"If [code]true[/code], uses fractional delta which smooths the movement of "
"the particles. Equivalent to [member GPUParticles3D.fract_delta]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2217
+#: doc/classes/RenderingServer.xml:2216
msgid ""
"Sets the lifetime of each particle in the system. Equivalent to [member "
"GPUParticles3D.lifetime]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2228
+#: doc/classes/RenderingServer.xml:2227
msgid ""
"If [code]true[/code], particles will emit once and then stop. Equivalent to "
"[member GPUParticles3D.one_shot]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2239
+#: doc/classes/RenderingServer.xml:2238
msgid ""
"Sets the preprocess time for the particles animation. This lets you delay "
"starting an animation until after the particles have begun emitting. "
"Equivalent to [member GPUParticles3D.preprocess]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2250
+#: doc/classes/RenderingServer.xml:2249
msgid ""
"Sets the material for processing the particles. Note: this is not the "
"material used to draw the materials. Equivalent to [member GPUParticles3D."
"process_material]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2261
+#: doc/classes/RenderingServer.xml:2260
msgid ""
"Sets the emission randomness ratio. This randomizes the emission of "
"particles within their phase. Equivalent to [member GPUParticles3D."
"randomness]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2272
+#: doc/classes/RenderingServer.xml:2271
msgid ""
"Sets the speed scale of the particle system. Equivalent to [member "
"GPUParticles3D.speed_scale]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2283
+#: doc/classes/RenderingServer.xml:2282
msgid ""
"If [code]true[/code], particles use local coordinates. If [code]false[/code] "
"they use global coordinates. Equivalent to [member GPUParticles3D."
"local_coords]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2290
+#: doc/classes/RenderingServer.xml:2289
msgid ""
"Creates a reflection probe and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42653,85 +43344,64 @@ msgid ""
"[method instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2303
+#: doc/classes/RenderingServer.xml:2332
msgid ""
"If [code]true[/code], reflections will ignore sky contribution. Equivalent "
-"to [member ReflectionProbe.interior_enable]."
+"to [member ReflectionProbe.interior]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2314
+#: doc/classes/RenderingServer.xml:2343
msgid ""
"Sets the render cull mask for this reflection probe. Only instances with a "
"matching cull mask will be rendered by this probe. Equivalent to [member "
"ReflectionProbe.cull_mask]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2325
+#: doc/classes/RenderingServer.xml:2354
msgid ""
"If [code]true[/code], uses box projection. This can make reflections look "
"more correct in certain situations. Equivalent to [member ReflectionProbe."
"box_projection]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2336
+#: doc/classes/RenderingServer.xml:2365
msgid ""
"If [code]true[/code], computes shadows in the reflection probe. This makes "
"the reflection much slower to compute. Equivalent to [member ReflectionProbe."
"enable_shadows]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2347
+#: doc/classes/RenderingServer.xml:2376
msgid ""
"Sets the size of the area that the reflection probe will capture. Equivalent "
"to [member ReflectionProbe.extents]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2358
+#: doc/classes/RenderingServer.xml:2387
msgid ""
"Sets the intensity of the reflection probe. Intensity modulates the strength "
"of the reflection. Equivalent to [member ReflectionProbe.intensity]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2369
-msgid ""
-"Sets the ambient light color for this reflection probe when set to interior "
-"mode. Equivalent to [member ReflectionProbe.interior_ambient_color]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2380
-msgid ""
-"Sets the energy multiplier for this reflection probes ambient light "
-"contribution when set to interior mode. Equivalent to [member "
-"ReflectionProbe.interior_ambient_energy]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2391
-msgid ""
-"Sets the contribution value for how much the reflection affects the ambient "
-"light for this reflection probe when set to interior mode. Useful so that "
-"ambient light matches the color of the room. Equivalent to [member "
-"ReflectionProbe.interior_ambient_contrib]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2402
+#: doc/classes/RenderingServer.xml:2398
msgid ""
"Sets the max distance away from the probe an object can be before it is "
"culled. Equivalent to [member ReflectionProbe.max_distance]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2413
+#: doc/classes/RenderingServer.xml:2409
msgid ""
"Sets the origin offset to be used when this reflection probe is in box "
"project mode. Equivalent to [member ReflectionProbe.origin_offset]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2424
+#: doc/classes/RenderingServer.xml:2420
msgid ""
"Sets how often the reflection probe updates. Can either be once or every "
"frame. See [enum ReflectionProbeUpdateMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2437
+#: doc/classes/RenderingServer.xml:2433
msgid ""
"Schedules a callback to the corresponding named [code]method[/code] on "
"[code]where[/code] after a frame has been drawn.\n"
@@ -42739,7 +43409,7 @@ msgid ""
"[code]userdata[/code]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2445
+#: doc/classes/RenderingServer.xml:2441
msgid ""
"Creates a scenario and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all "
@@ -42749,24 +43419,24 @@ msgid ""
"The scenario is the 3D world that all the visual instances exist in."
msgstr ""
-#: doc/classes/RenderingServer.xml:2458
+#: doc/classes/RenderingServer.xml:2454
msgid ""
"Sets the [enum ScenarioDebugMode] for this scenario. See [enum "
"ScenarioDebugMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2469
+#: doc/classes/RenderingServer.xml:2465
msgid "Sets the environment that will be used with this scenario."
msgstr ""
-#: doc/classes/RenderingServer.xml:2480
+#: doc/classes/RenderingServer.xml:2476
msgid ""
"Sets the fallback environment to be used by this scenario. The fallback "
"environment is used if no environment is set. Internally, this is used by "
"the editor to provide a default environment."
msgstr ""
-#: doc/classes/RenderingServer.xml:2495
+#: doc/classes/RenderingServer.xml:2491
msgid ""
"Sets a boot image. The color defines the background color. If [code]scale[/"
"code] is [code]true[/code], the image will be scaled to fit the screen size. "
@@ -42775,19 +43445,19 @@ msgid ""
"the image will be scaled with nearest-neighbor interpolation."
msgstr ""
-#: doc/classes/RenderingServer.xml:2504
+#: doc/classes/RenderingServer.xml:2500
msgid ""
"If [code]true[/code], the engine will generate wireframes for use with the "
"wireframe debug mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:2513
+#: doc/classes/RenderingServer.xml:2509
msgid ""
"Sets the default clear color which is used when a specific clear color has "
"not been selected."
msgstr ""
-#: doc/classes/RenderingServer.xml:2520
+#: doc/classes/RenderingServer.xml:2516
msgid ""
"Creates an empty shader and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42796,47 +43466,47 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2530
+#: doc/classes/RenderingServer.xml:2526
msgid "Returns a shader's code."
msgstr ""
-#: doc/classes/RenderingServer.xml:2541
+#: doc/classes/RenderingServer.xml:2537
msgid "Returns a default texture from a shader searched by name."
msgstr ""
-#: doc/classes/RenderingServer.xml:2560
+#: doc/classes/RenderingServer.xml:2556
msgid "Returns the parameters of a shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:2571
+#: doc/classes/RenderingServer.xml:2567
msgid "Sets a shader's code."
msgstr ""
-#: doc/classes/RenderingServer.xml:2584
+#: doc/classes/RenderingServer.xml:2580
msgid "Sets a shader's default texture. Overwrites the texture given by name."
msgstr ""
-#: doc/classes/RenderingServer.xml:2597
+#: doc/classes/RenderingServer.xml:2593
msgid "Allocates the GPU buffers for this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2608
+#: doc/classes/RenderingServer.xml:2604
msgid "Returns the [Transform] set for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2619
+#: doc/classes/RenderingServer.xml:2615
msgid "Returns the [Transform2D] set for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2632
+#: doc/classes/RenderingServer.xml:2628
msgid "Sets the [Transform] for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2645
+#: doc/classes/RenderingServer.xml:2641
msgid "Sets the [Transform2D] for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2652
+#: doc/classes/RenderingServer.xml:2648
msgid ""
"Creates a skeleton and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all "
@@ -42845,11 +43515,11 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2662
+#: doc/classes/RenderingServer.xml:2658
msgid "Returns the number of bones allocated for this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2669
+#: doc/classes/RenderingServer.xml:2665
msgid ""
"Creates an empty sky and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all [code]sky_*[/"
@@ -42858,13 +43528,13 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2681
+#: doc/classes/RenderingServer.xml:2677
msgid ""
"Sets the material that the sky uses to render the background and reflection "
"maps."
msgstr ""
-#: doc/classes/RenderingServer.xml:2688
+#: doc/classes/RenderingServer.xml:2684
msgid ""
"Creates a spot light and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID can be used in most [code]light_*[/"
@@ -42875,15 +43545,15 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2717
+#: doc/classes/RenderingServer.xml:2713
msgid "Sets a viewport's camera."
msgstr ""
-#: doc/classes/RenderingServer.xml:2728
+#: doc/classes/RenderingServer.xml:2724
msgid "Sets a viewport's canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:2741
+#: doc/classes/RenderingServer.xml:2737
msgid ""
"Copies the viewport to a region of the screen specified by [code]rect[/"
"code]. If [method viewport_set_render_direct_to_screen] is [code]true[/"
@@ -42905,7 +43575,7 @@ msgid ""
"viewport_set_render_direct_to_screen]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2755
+#: doc/classes/RenderingServer.xml:2751
msgid ""
"Creates an empty viewport and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42914,72 +43584,72 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2767
+#: doc/classes/RenderingServer.xml:2763
msgid ""
"Returns a viewport's render information. For options, see the [enum "
"ViewportRenderInfo] constants."
msgstr ""
-#: doc/classes/RenderingServer.xml:2776
+#: doc/classes/RenderingServer.xml:2772
msgid "Returns the viewport's last rendered frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:2787
+#: doc/classes/RenderingServer.xml:2783
msgid "Detaches a viewport from a canvas and vice versa."
msgstr ""
-#: doc/classes/RenderingServer.xml:2798
+#: doc/classes/RenderingServer.xml:2794
msgid "If [code]true[/code], sets the viewport active, else sets it inactive."
msgstr ""
-#: doc/classes/RenderingServer.xml:2813
+#: doc/classes/RenderingServer.xml:2809
msgid ""
"Sets the stacking order for a viewport's canvas.\n"
"[code]layer[/code] is the actual canvas layer, while [code]sublayer[/code] "
"specifies the stacking order of the canvas among those in the same layer."
msgstr ""
-#: doc/classes/RenderingServer.xml:2827
+#: doc/classes/RenderingServer.xml:2823
msgid "Sets the transformation of a viewport's canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:2838
+#: doc/classes/RenderingServer.xml:2834
msgid ""
"Sets the clear mode of a viewport. See [enum ViewportClearMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2849
+#: doc/classes/RenderingServer.xml:2845
msgid ""
"Sets the debug draw mode of a viewport. See [enum ViewportDebugDraw] for "
"options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2860
+#: doc/classes/RenderingServer.xml:2856
msgid ""
"If [code]true[/code], rendering of a viewport's environment is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:2871
+#: doc/classes/RenderingServer.xml:2867
msgid "Sets the viewport's global transformation matrix."
msgstr ""
-#: doc/classes/RenderingServer.xml:2882
+#: doc/classes/RenderingServer.xml:2878
msgid "If [code]true[/code], the viewport's canvas is not rendered."
msgstr ""
-#: doc/classes/RenderingServer.xml:2893
+#: doc/classes/RenderingServer.xml:2889
msgid "Currently unimplemented in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:2904
+#: doc/classes/RenderingServer.xml:2900
msgid "Sets the anti-aliasing mode. See [enum ViewportMSAA] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2915
+#: doc/classes/RenderingServer.xml:2911
msgid "Sets the viewport's parent to another viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:2926
+#: doc/classes/RenderingServer.xml:2922
msgid ""
"If [code]true[/code], render the contents of the viewport directly to "
"screen. This allows a low-level optimization where you can skip drawing a "
@@ -42995,455 +43665,455 @@ msgid ""
"significantly larger than the window size."
msgstr ""
-#: doc/classes/RenderingServer.xml:2937
+#: doc/classes/RenderingServer.xml:2933
msgid ""
"Sets a viewport's scenario.\n"
"The scenario contains information about the [enum ScenarioDebugMode], "
"environment information, reflection atlas etc."
msgstr ""
-#: doc/classes/RenderingServer.xml:2951
+#: doc/classes/RenderingServer.xml:2947
msgid "Sets the shadow atlas quadrant's subdivision."
msgstr ""
-#: doc/classes/RenderingServer.xml:2962
+#: doc/classes/RenderingServer.xml:2958
msgid ""
"Sets the size of the shadow atlas's images (used for omni and spot lights). "
"The value will be rounded up to the nearest power of 2."
msgstr ""
-#: doc/classes/RenderingServer.xml:2975
+#: doc/classes/RenderingServer.xml:2971
msgid "Sets the viewport's width and height."
msgstr ""
-#: doc/classes/RenderingServer.xml:2986
+#: doc/classes/RenderingServer.xml:2982
msgid ""
"If [code]true[/code], the viewport renders its background as transparent."
msgstr ""
-#: doc/classes/RenderingServer.xml:2997
+#: doc/classes/RenderingServer.xml:2993
msgid ""
"Sets when the viewport should be updated. See [enum ViewportUpdateMode] "
"constants for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:3008
+#: doc/classes/RenderingServer.xml:3004
msgid ""
"If [code]true[/code], the viewport uses augmented or virtual reality "
"technologies. See [XRInterface]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3014
+#: doc/classes/RenderingServer.xml:3010
msgid ""
"If [code]false[/code], disables rendering completely, but the engine logic "
"is still being processed. You can call [method force_draw] to draw a frame "
"even with rendering disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3020
+#: doc/classes/RenderingServer.xml:3016
msgid ""
"Emitted at the end of the frame, after the RenderingServer has finished "
"updating all the Viewports."
msgstr ""
-#: doc/classes/RenderingServer.xml:3025
+#: doc/classes/RenderingServer.xml:3021
msgid ""
"Emitted at the beginning of the frame, before the RenderingServer updates "
"all the Viewports."
msgstr ""
-#: doc/classes/RenderingServer.xml:3031
+#: doc/classes/RenderingServer.xml:3027
msgid "Marks an error that shows that the index array is empty."
msgstr ""
-#: doc/classes/RenderingServer.xml:3034
+#: doc/classes/RenderingServer.xml:3030
msgid "Number of weights/bones per vertex."
msgstr ""
-#: doc/classes/RenderingServer.xml:3037
+#: doc/classes/RenderingServer.xml:3033
msgid "The minimum Z-layer for canvas items."
msgstr ""
-#: doc/classes/RenderingServer.xml:3040
+#: doc/classes/RenderingServer.xml:3036
msgid "The maximum Z-layer for canvas items."
msgstr ""
-#: doc/classes/RenderingServer.xml:3043
+#: doc/classes/RenderingServer.xml:3039
msgid ""
"Max number of glow levels that can be used with glow post-process effect."
msgstr ""
-#: doc/classes/RenderingServer.xml:3046
+#: doc/classes/RenderingServer.xml:3042
msgid "Unused enum in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:3067
+#: doc/classes/RenderingServer.xml:3063
msgid "Shader is a 3D shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3070
+#: doc/classes/RenderingServer.xml:3066
msgid "Shader is a 2D shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3073
+#: doc/classes/RenderingServer.xml:3069
msgid "Shader is a particle shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3076
+#: doc/classes/RenderingServer.xml:3072
msgid "Shader is a sky shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3079
+#: doc/classes/RenderingServer.xml:3075
msgid "Represents the size of the [enum ShaderMode] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3082
+#: doc/classes/RenderingServer.xml:3078
msgid "The minimum renderpriority of all materials."
msgstr ""
-#: doc/classes/RenderingServer.xml:3085
+#: doc/classes/RenderingServer.xml:3081
msgid "The maximum renderpriority of all materials."
msgstr ""
-#: doc/classes/RenderingServer.xml:3088
+#: doc/classes/RenderingServer.xml:3084
msgid "Array is a vertex array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3091
+#: doc/classes/RenderingServer.xml:3087
msgid "Array is a normal array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3094
+#: doc/classes/RenderingServer.xml:3090
msgid "Array is a tangent array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3097
+#: doc/classes/RenderingServer.xml:3093
msgid "Array is a color array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3100
+#: doc/classes/RenderingServer.xml:3096
msgid "Array is an UV coordinates array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3103
+#: doc/classes/RenderingServer.xml:3099
msgid "Array is an UV coordinates array for the second UV coordinates."
msgstr ""
-#: doc/classes/RenderingServer.xml:3106
+#: doc/classes/RenderingServer.xml:3102
msgid "Array contains bone information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3109
+#: doc/classes/RenderingServer.xml:3105
msgid "Array is weight information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3112
+#: doc/classes/RenderingServer.xml:3108
msgid "Array is index array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3118
+#: doc/classes/RenderingServer.xml:3114
msgid "Flag used to mark a vertex array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3121
+#: doc/classes/RenderingServer.xml:3117
msgid "Flag used to mark a normal array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3124
+#: doc/classes/RenderingServer.xml:3120
msgid "Flag used to mark a tangent array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3127
+#: doc/classes/RenderingServer.xml:3123
msgid "Flag used to mark a color array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3130
+#: doc/classes/RenderingServer.xml:3126
msgid "Flag used to mark an UV coordinates array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3133
+#: doc/classes/RenderingServer.xml:3129
msgid ""
"Flag used to mark an UV coordinates array for the second UV coordinates."
msgstr ""
-#: doc/classes/RenderingServer.xml:3136
+#: doc/classes/RenderingServer.xml:3132
msgid "Flag used to mark a bone information array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3139
+#: doc/classes/RenderingServer.xml:3135
msgid "Flag used to mark a weights array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3142
+#: doc/classes/RenderingServer.xml:3138
msgid "Flag used to mark an index array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3171
+#: doc/classes/RenderingServer.xml:3167
msgid "Primitive to draw consists of points."
msgstr ""
-#: doc/classes/RenderingServer.xml:3174
+#: doc/classes/RenderingServer.xml:3170
msgid "Primitive to draw consists of lines."
msgstr ""
-#: doc/classes/RenderingServer.xml:3177
+#: doc/classes/RenderingServer.xml:3173
msgid "Primitive to draw consists of a line strip from start to end."
msgstr ""
-#: doc/classes/RenderingServer.xml:3180
+#: doc/classes/RenderingServer.xml:3176
msgid "Primitive to draw consists of triangles."
msgstr ""
-#: doc/classes/RenderingServer.xml:3183
+#: doc/classes/RenderingServer.xml:3179
msgid ""
"Primitive to draw consists of a triangle strip (the last 3 vertices are "
"always combined to make a triangle)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3186
+#: doc/classes/RenderingServer.xml:3182
msgid "Represents the size of the [enum PrimitiveType] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3195
+#: doc/classes/RenderingServer.xml:3191
msgid "Use [Transform2D] to store MultiMesh transform."
msgstr ""
-#: doc/classes/RenderingServer.xml:3198
+#: doc/classes/RenderingServer.xml:3194
msgid "Use [Transform] to store MultiMesh transform."
msgstr ""
-#: doc/classes/RenderingServer.xml:3201
+#: doc/classes/RenderingServer.xml:3197
msgid "Is a directional (sun) light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3204
+#: doc/classes/RenderingServer.xml:3200
msgid "Is an omni light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3207
+#: doc/classes/RenderingServer.xml:3203
msgid "Is a spot light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3210
+#: doc/classes/RenderingServer.xml:3206
msgid "The light's energy."
msgstr ""
-#: doc/classes/RenderingServer.xml:3215
+#: doc/classes/RenderingServer.xml:3211
msgid "The light's influence on specularity."
msgstr ""
-#: doc/classes/RenderingServer.xml:3218
+#: doc/classes/RenderingServer.xml:3214
msgid "The light's range."
msgstr ""
-#: doc/classes/RenderingServer.xml:3221
+#: doc/classes/RenderingServer.xml:3217
msgid ""
"The size of the light when using spot light or omni light. The angular size "
"of the light when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3224
+#: doc/classes/RenderingServer.xml:3220
msgid "The light's attenuation."
msgstr ""
-#: doc/classes/RenderingServer.xml:3227
+#: doc/classes/RenderingServer.xml:3223
msgid "The spotlight's angle."
msgstr ""
-#: doc/classes/RenderingServer.xml:3230
+#: doc/classes/RenderingServer.xml:3226
msgid "The spotlight's attenuation."
msgstr ""
-#: doc/classes/RenderingServer.xml:3233
+#: doc/classes/RenderingServer.xml:3229
msgid "Max distance that shadows will be rendered."
msgstr ""
-#: doc/classes/RenderingServer.xml:3236
+#: doc/classes/RenderingServer.xml:3232
msgid "Proportion of shadow atlas occupied by the first split."
msgstr ""
-#: doc/classes/RenderingServer.xml:3239
+#: doc/classes/RenderingServer.xml:3235
msgid "Proportion of shadow atlas occupied by the second split."
msgstr ""
-#: doc/classes/RenderingServer.xml:3242
+#: doc/classes/RenderingServer.xml:3238
msgid ""
"Proportion of shadow atlas occupied by the third split. The fourth split "
"occupies the rest."
msgstr ""
-#: doc/classes/RenderingServer.xml:3245
+#: doc/classes/RenderingServer.xml:3241
msgid ""
"Proportion of shadow max distance where the shadow will start to fade out."
msgstr ""
-#: doc/classes/RenderingServer.xml:3248
+#: doc/classes/RenderingServer.xml:3244
msgid ""
"Normal bias used to offset shadow lookup by object normal. Can be used to "
"fix self-shadowing artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3251
+#: doc/classes/RenderingServer.xml:3247
msgid "Bias the shadow lookup to fix self-shadowing artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3257
+#: doc/classes/RenderingServer.xml:3253
msgid ""
"Blurs the edges of the shadow. Can be used to hide pixel artifacts in low "
"resolution shadow maps. A high value can make shadows appear grainy and can "
"cause other unwanted artifacts. Try to keep as near default as possible."
msgstr ""
-#: doc/classes/RenderingServer.xml:3262
+#: doc/classes/RenderingServer.xml:3258
msgid "Represents the size of the [enum LightParam] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3265
+#: doc/classes/RenderingServer.xml:3267
msgid "Use a dual paraboloid shadow map for omni lights."
msgstr ""
-#: doc/classes/RenderingServer.xml:3268
+#: doc/classes/RenderingServer.xml:3270
msgid ""
"Use a cubemap shadow map for omni lights. Slower but better quality than "
"dual paraboloid."
msgstr ""
-#: doc/classes/RenderingServer.xml:3271
+#: doc/classes/RenderingServer.xml:3273
msgid "Use orthogonal shadow projection for directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3274
+#: doc/classes/RenderingServer.xml:3276
msgid "Use 2 splits for shadow projection when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3277
+#: doc/classes/RenderingServer.xml:3279
msgid "Use 4 splits for shadow projection when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3280
+#: doc/classes/RenderingServer.xml:3282
msgid ""
"Keeps shadows stable as camera moves but has lower effective resolution."
msgstr ""
-#: doc/classes/RenderingServer.xml:3283
+#: doc/classes/RenderingServer.xml:3285
msgid ""
"Optimize use of shadow maps, increasing the effective resolution. But may "
"result in shadows moving or flickering slightly."
msgstr ""
-#: doc/classes/RenderingServer.xml:3286
+#: doc/classes/RenderingServer.xml:3288
msgid "Reflection probe will update reflections once and then stop."
msgstr ""
-#: doc/classes/RenderingServer.xml:3289
+#: doc/classes/RenderingServer.xml:3291
msgid ""
"Reflection probe will update each frame. This mode is necessary to capture "
"moving objects."
msgstr ""
-#: doc/classes/RenderingServer.xml:3302
+#: doc/classes/RenderingServer.xml:3310
msgid "Draw particles in the order that they appear in the particles array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3305
+#: doc/classes/RenderingServer.xml:3313
msgid "Sort particles based on their lifetime."
msgstr ""
-#: doc/classes/RenderingServer.xml:3308
+#: doc/classes/RenderingServer.xml:3316
msgid "Sort particles based on their distance to the camera."
msgstr ""
-#: doc/classes/RenderingServer.xml:3311
+#: doc/classes/RenderingServer.xml:3319
msgid "Do not update the viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:3314
+#: doc/classes/RenderingServer.xml:3322
msgid "Update the viewport once then set to disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3317
+#: doc/classes/RenderingServer.xml:3325
msgid "Update the viewport whenever it is visible."
msgstr ""
-#: doc/classes/RenderingServer.xml:3322
+#: doc/classes/RenderingServer.xml:3330
msgid "Always update the viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:3325
+#: doc/classes/RenderingServer.xml:3333
msgid "The viewport is always cleared before drawing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3328
+#: doc/classes/RenderingServer.xml:3336
msgid "The viewport is never cleared before drawing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3331
+#: doc/classes/RenderingServer.xml:3339
msgid ""
"The viewport is cleared once, then the clear mode is set to [constant "
"VIEWPORT_CLEAR_NEVER]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3334
+#: doc/classes/RenderingServer.xml:3342
msgid "Multisample antialiasing is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3337
+#: doc/classes/RenderingServer.xml:3345
msgid "Multisample antialiasing uses 2 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3340
+#: doc/classes/RenderingServer.xml:3348
msgid "Multisample antialiasing uses 4 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3343
+#: doc/classes/RenderingServer.xml:3351
msgid "Multisample antialiasing uses 8 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3346
+#: doc/classes/RenderingServer.xml:3354
msgid "Multisample antialiasing uses 16 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3357
+#: doc/classes/RenderingServer.xml:3365
msgid "Number of objects drawn in a single frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3360
+#: doc/classes/RenderingServer.xml:3368
msgid "Number of vertices drawn in a single frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3363
+#: doc/classes/RenderingServer.xml:3371
msgid "Number of material changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3366
+#: doc/classes/RenderingServer.xml:3374
msgid "Number of shader changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3369
+#: doc/classes/RenderingServer.xml:3377
msgid "Number of surface changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3372
+#: doc/classes/RenderingServer.xml:3380
msgid "Number of draw calls during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3375
+#: doc/classes/RenderingServer.xml:3383
msgid "Represents the size of the [enum ViewportRenderInfo] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3378
+#: doc/classes/RenderingServer.xml:3386
msgid "Debug draw is disabled. Default setting."
msgstr ""
-#: doc/classes/RenderingServer.xml:3381 doc/classes/Viewport.xml:348
+#: doc/classes/RenderingServer.xml:3389 doc/classes/Viewport.xml:348
msgid "Objects are displayed without light information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3384
+#: doc/classes/RenderingServer.xml:3392
msgid "Objects are displayed with only light information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3387 doc/classes/Viewport.xml:353
+#: doc/classes/RenderingServer.xml:3395 doc/classes/Viewport.xml:353
msgid ""
"Objects are displayed semi-transparent with additive blending so you can see "
"where they are drawing over top of one another. A higher overdraw means you "
@@ -43451,41 +44121,41 @@ msgid ""
"others."
msgstr ""
-#: doc/classes/RenderingServer.xml:3390
+#: doc/classes/RenderingServer.xml:3398
msgid "Debug draw draws objects in wireframe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3393
+#: doc/classes/RenderingServer.xml:3401
msgid ""
"Normal buffer is drawn instead of regular scene so you can see the per-pixel "
"normals that will be used by post-processing effects."
msgstr ""
-#: doc/classes/RenderingServer.xml:3396 doc/classes/Viewport.xml:361
+#: doc/classes/RenderingServer.xml:3404 doc/classes/Viewport.xml:361
msgid "Objects are displayed with only the albedo value from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3399 doc/classes/Viewport.xml:364
+#: doc/classes/RenderingServer.xml:3407 doc/classes/Viewport.xml:364
msgid "Objects are displayed with only the lighting value from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3402 doc/classes/Viewport.xml:367
+#: doc/classes/RenderingServer.xml:3410 doc/classes/Viewport.xml:367
msgid "Objects are displayed with only the emission color from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3405 doc/classes/Viewport.xml:370
+#: doc/classes/RenderingServer.xml:3413 doc/classes/Viewport.xml:370
msgid ""
"Draws the shadow atlas that stores shadows from [OmniLight3D]s and "
"[SpotLight3D]s in the upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3408 doc/classes/Viewport.xml:373
+#: doc/classes/RenderingServer.xml:3416 doc/classes/Viewport.xml:373
msgid ""
"Draws the shadow atlas that stores shadows from [DirectionalLight3D]s in the "
"upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3413
+#: doc/classes/RenderingServer.xml:3421
msgid ""
"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 "
@@ -43493,21 +44163,14 @@ msgid ""
"your [WorldEnvironment]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3416 doc/classes/Viewport.xml:381
-msgid ""
-"Draws the roughness limiter post process over the Viewport so you can see "
-"where it has an effect. It must be enabled in [member ProjectSettings."
-"rendering/quality/screen_filters/screen_space_roughness_limiter] to work."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:3419
+#: doc/classes/RenderingServer.xml:3424
msgid ""
"Colors each PSSM split for the [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."
msgstr ""
-#: doc/classes/RenderingServer.xml:3424
+#: doc/classes/RenderingServer.xml:3435
msgid ""
"Uses high quality importance sampling to process the radiance map. In "
"general, this results in much higher quality than [constant Sky."
@@ -43518,7 +44181,7 @@ msgid ""
"ggx_samples]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3427
+#: doc/classes/RenderingServer.xml:3438
msgid ""
"Uses the fast filtering algorithm to process the radiance map. In general "
"this results in lower quality, but substantially faster run times.\n"
@@ -43526,347 +44189,347 @@ msgid ""
"[member Sky.radiance_size] must be set to [constant Sky.RADIANCE_SIZE_256]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3431
+#: doc/classes/RenderingServer.xml:3442
msgid "Use the clear color as background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3434
+#: doc/classes/RenderingServer.xml:3445
msgid "Use a specified color as the background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3437
+#: doc/classes/RenderingServer.xml:3448
msgid "Use a sky resource for the background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3440
+#: doc/classes/RenderingServer.xml:3451
msgid ""
"Use a specified canvas layer as the background. This can be useful for "
"instantiating a 2D scene in a 3D world."
msgstr ""
-#: doc/classes/RenderingServer.xml:3443
+#: doc/classes/RenderingServer.xml:3454
msgid ""
"Do not clear the background, use whatever was rendered last frame as the "
"background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3449
+#: doc/classes/RenderingServer.xml:3460
msgid "Represents the size of the [enum EnvironmentBG] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3488
+#: doc/classes/RenderingServer.xml:3499
msgid "Output color as they came in."
msgstr ""
-#: doc/classes/RenderingServer.xml:3491
+#: doc/classes/RenderingServer.xml:3502
msgid "Use the Reinhard tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3494
+#: doc/classes/RenderingServer.xml:3505
msgid "Use the filmic tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3497
+#: doc/classes/RenderingServer.xml:3508
msgid "Use the ACES tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3508
+#: doc/classes/RenderingServer.xml:3519
msgid "Disables the blur set for SSAO. Will make SSAO look noisier."
msgstr ""
-#: doc/classes/RenderingServer.xml:3511
+#: doc/classes/RenderingServer.xml:3522
msgid "Perform a 1x1 blur on the SSAO output."
msgstr ""
-#: doc/classes/RenderingServer.xml:3514
+#: doc/classes/RenderingServer.xml:3525
msgid "Performs a 2x2 blur on the SSAO output."
msgstr ""
-#: doc/classes/RenderingServer.xml:3517
+#: doc/classes/RenderingServer.xml:3528
msgid "Performs a 3x3 blur on the SSAO output. Use this for smoothest SSAO."
msgstr ""
-#: doc/classes/RenderingServer.xml:3520
+#: doc/classes/RenderingServer.xml:3531
msgid "Lowest quality of screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3523
+#: doc/classes/RenderingServer.xml:3534
msgid "Medium quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3526
+#: doc/classes/RenderingServer.xml:3537
msgid "High quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3529
+#: doc/classes/RenderingServer.xml:3540
msgid "Highest quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3540
+#: doc/classes/RenderingServer.xml:3551
msgid ""
"Lowest quality DOF blur. This is the fastest setting, but you may be able to "
"see filtering artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3543
+#: doc/classes/RenderingServer.xml:3554
msgid "Low quality DOF blur."
msgstr ""
-#: doc/classes/RenderingServer.xml:3546
+#: doc/classes/RenderingServer.xml:3557
msgid "Medium quality DOF blur."
msgstr ""
-#: doc/classes/RenderingServer.xml:3549
+#: doc/classes/RenderingServer.xml:3560
msgid ""
"Highest quality DOF blur. Results in the smoothest looking blur by taking "
"the most samples, but is also significantly slower."
msgstr ""
-#: doc/classes/RenderingServer.xml:3552
+#: doc/classes/RenderingServer.xml:3563
msgid ""
"Calculate the DOF blur using a box filter. The fastest option, but results "
"in obvious lines in blur pattern."
msgstr ""
-#: doc/classes/RenderingServer.xml:3555
+#: doc/classes/RenderingServer.xml:3566
msgid "Calculates DOF blur using a hexagon shaped filter."
msgstr ""
-#: doc/classes/RenderingServer.xml:3558
+#: doc/classes/RenderingServer.xml:3569
msgid ""
"Calculates DOF blur using a circle shaped filter. Best quality and most "
"realistic, but slowest. Use only for areas where a lot of performance can be "
"dedicated to post-processing (e.g. cutscenes)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3573
+#: doc/classes/RenderingServer.xml:3584
msgid "Do not use a debug mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:3576
+#: doc/classes/RenderingServer.xml:3587
msgid "Draw all objects as wireframe models."
msgstr ""
-#: doc/classes/RenderingServer.xml:3579
+#: doc/classes/RenderingServer.xml:3590
msgid ""
"Draw all objects in a way that displays how much overdraw is occurring. "
"Overdraw occurs when a section of pixels is drawn and shaded and then "
"another object covers it up. To optimize a scene, you should reduce overdraw."
msgstr ""
-#: doc/classes/RenderingServer.xml:3582
+#: doc/classes/RenderingServer.xml:3593
msgid ""
"Draw all objects without shading. Equivalent to setting all objects shaders "
"to [code]unshaded[/code]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3585
+#: doc/classes/RenderingServer.xml:3596
msgid "The instance does not have a type."
msgstr ""
-#: doc/classes/RenderingServer.xml:3588
+#: doc/classes/RenderingServer.xml:3599
msgid "The instance is a mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:3591
+#: doc/classes/RenderingServer.xml:3602
msgid "The instance is a multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:3594
+#: doc/classes/RenderingServer.xml:3605
msgid "The instance is an immediate geometry."
msgstr ""
-#: doc/classes/RenderingServer.xml:3597
+#: doc/classes/RenderingServer.xml:3608
msgid "The instance is a particle emitter."
msgstr ""
-#: doc/classes/RenderingServer.xml:3600
+#: doc/classes/RenderingServer.xml:3611
msgid "The instance is a light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3603
+#: doc/classes/RenderingServer.xml:3614
msgid "The instance is a reflection probe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3606
+#: doc/classes/RenderingServer.xml:3617
msgid "The instance is a decal."
msgstr ""
-#: doc/classes/RenderingServer.xml:3609
+#: doc/classes/RenderingServer.xml:3620
msgid "The instance is a GI probe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3612
+#: doc/classes/RenderingServer.xml:3623
msgid "The instance is a lightmap."
msgstr ""
-#: doc/classes/RenderingServer.xml:3615
+#: doc/classes/RenderingServer.xml:3626
msgid "Represents the size of the [enum InstanceType] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3618
+#: doc/classes/RenderingServer.xml:3629
msgid ""
"A combination of the flags of geometry instances (mesh, multimesh, immediate "
"and particles)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3621
+#: doc/classes/RenderingServer.xml:3632
msgid "Allows the instance to be used in baked lighting."
msgstr ""
-#: doc/classes/RenderingServer.xml:3624
+#: doc/classes/RenderingServer.xml:3635
msgid "Allows the instance to be used with dynamic global illumination."
msgstr ""
-#: doc/classes/RenderingServer.xml:3627
+#: doc/classes/RenderingServer.xml:3638
msgid "When set, manually requests to draw geometry on next frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3630
+#: doc/classes/RenderingServer.xml:3641
msgid "Represents the size of the [enum InstanceFlags] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3633
+#: doc/classes/RenderingServer.xml:3644
msgid "Disable shadows from this instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:3636
+#: doc/classes/RenderingServer.xml:3647
msgid "Cast shadows from this instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:3639
+#: doc/classes/RenderingServer.xml:3650
msgid ""
"Disable backface culling when rendering the shadow of the object. This is "
"slightly slower but may result in more correct shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3642
+#: doc/classes/RenderingServer.xml:3653
msgid ""
"Only render the shadows from the object. The object itself will not be drawn."
msgstr ""
-#: doc/classes/RenderingServer.xml:3645
+#: doc/classes/RenderingServer.xml:3656
msgid "The nine patch gets stretched where needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3648
+#: doc/classes/RenderingServer.xml:3659
msgid "The nine patch gets filled with tiles where needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3651
+#: doc/classes/RenderingServer.xml:3662
msgid ""
"The nine patch gets filled with tiles where needed and stretches them a bit "
"if needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3654
+#: doc/classes/RenderingServer.xml:3665
msgid "Uses the default filter mode for this [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3666 doc/classes/Viewport.xml:399
+#: doc/classes/RenderingServer.xml:3677 doc/classes/Viewport.xml:402
msgid ""
"The texture filter blends between the nearest 4 pixels and between the "
"nearest 2 mipmaps."
msgstr ""
-#: doc/classes/RenderingServer.xml:3675
+#: doc/classes/RenderingServer.xml:3686
msgid "Max value for [enum CanvasItemTextureFilter] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3678
+#: doc/classes/RenderingServer.xml:3689
msgid "Uses the default repeat mode for this [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3681 doc/classes/Viewport.xml:405
+#: doc/classes/RenderingServer.xml:3692 doc/classes/Viewport.xml:408
msgid ""
"Disables textures repeating. Instead, when reading UVs outside the 0-1 "
"range, the value will be clamped to the edge of the texture, resulting in a "
"stretched out look at the borders of the texture."
msgstr ""
-#: doc/classes/RenderingServer.xml:3687 doc/classes/Viewport.xml:411
+#: doc/classes/RenderingServer.xml:3698 doc/classes/Viewport.xml:414
msgid ""
"Flip the texture when repeating so that the edge lines up instead of "
"abruptly changing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3690
+#: doc/classes/RenderingServer.xml:3701
msgid "Max value for [enum CanvasItemTextureRepeat] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3693
+#: doc/classes/RenderingServer.xml:3704
msgid "Adds light color additive to the canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:3696
+#: doc/classes/RenderingServer.xml:3707
msgid "Adds light color subtractive to the canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:3699
+#: doc/classes/RenderingServer.xml:3710
msgid "The light adds color depending on transparency."
msgstr ""
-#: doc/classes/RenderingServer.xml:3702
+#: doc/classes/RenderingServer.xml:3713
msgid "The light adds color depending on mask."
msgstr ""
-#: doc/classes/RenderingServer.xml:3705
+#: doc/classes/RenderingServer.xml:3716
msgid "Do not apply a filter to canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3708
+#: doc/classes/RenderingServer.xml:3719
msgid "Use PCF5 filtering to filter canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3711
+#: doc/classes/RenderingServer.xml:3722
msgid "Use PCF13 filtering to filter canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3714
+#: doc/classes/RenderingServer.xml:3725
msgid "Max value of the [enum CanvasLightShadowFilter] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3717
+#: doc/classes/RenderingServer.xml:3728
msgid "Culling of the canvas occluder is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3720
+#: doc/classes/RenderingServer.xml:3731
msgid "Culling of the canvas occluder is clockwise."
msgstr ""
-#: doc/classes/RenderingServer.xml:3723
+#: doc/classes/RenderingServer.xml:3734
msgid "Culling of the canvas occluder is counterclockwise."
msgstr ""
-#: doc/classes/RenderingServer.xml:3784
+#: doc/classes/RenderingServer.xml:3795
msgid "The amount of objects in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3787
+#: doc/classes/RenderingServer.xml:3798
msgid "The amount of vertices in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3790
+#: doc/classes/RenderingServer.xml:3801
msgid "The amount of modified materials in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3793
+#: doc/classes/RenderingServer.xml:3804
msgid "The amount of shader rebinds in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3796
+#: doc/classes/RenderingServer.xml:3807
msgid "The amount of surface changes in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3799
+#: doc/classes/RenderingServer.xml:3810
msgid "The amount of draw calls in frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3814
+#: doc/classes/RenderingServer.xml:3825
msgid "Hardware supports shaders. This enum is currently unused in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:3817
+#: doc/classes/RenderingServer.xml:3828
msgid ""
"Hardware supports multithreading. This enum is currently unused in Godot 3.x."
msgstr ""
@@ -43878,13 +44541,13 @@ msgstr ""
#: doc/classes/Resource.xml:7
msgid ""
"Resource is the base class for all Godot-specific resource types, serving "
-"primarily as data containers. They are reference counted and freed when no "
-"longer in use. They are also cached once loaded from disk, so that any "
-"further attempts to load a resource from a given path will return the same "
-"reference (all this in contrast to a [Node], which is not reference counted "
-"and can be instanced from disk as many times as desired). Resources can be "
-"saved externally on disk or bundled into another object, such as a [Node] or "
-"another resource."
+"primarily as data containers. Unlike [Object]s, they are reference-counted "
+"and freed when no longer in use. They are also cached once loaded from disk, "
+"so that any further attempts to load a resource from a given path will "
+"return the same reference (all this in contrast to a [Node], which is not "
+"reference-counted and can be instanced from disk as many times as desired). "
+"Resources can be saved externally on disk or bundled into another object, "
+"such as a [Node] or another resource."
msgstr ""
#: doc/classes/Resource.xml:10
@@ -43893,34 +44556,38 @@ msgid ""
"resources.html"
msgstr ""
-#: doc/classes/Resource.xml:17
+#: doc/classes/Resource.xml:18
msgid ""
"Virtual function which can be overridden to customize the behavior value of "
"[method setup_local_to_scene]."
msgstr ""
-#: doc/classes/Resource.xml:26
+#: doc/classes/Resource.xml:27
msgid ""
"Duplicates the resource, returning a new resource. By default, sub-resources "
-"are shared between resource copies for efficiency, this can be changed by "
-"passing [code]true[/code] to the [code]subresources[/code] argument."
+"are shared between resource copies for efficiency. This can be changed by "
+"passing [code]true[/code] to the [code]subresources[/code] argument which "
+"will copy the subresources.\n"
+"[b]Note:[/b] If [code]subresources[/code] is [code]true[/code], this method "
+"will only perform a shallow copy. Nested resources within subresources will "
+"not be duplicated and will still be shared."
msgstr ""
-#: doc/classes/Resource.xml:33
+#: doc/classes/Resource.xml:35
msgid ""
"If [member resource_local_to_scene] is enabled and the resource was loaded "
"from a [PackedScene] instantiation, returns the local scene where this "
"resource's unique copy is in use. Otherwise, returns [code]null[/code]."
msgstr ""
-#: doc/classes/Resource.xml:40
+#: doc/classes/Resource.xml:42
msgid ""
"Returns the RID of the resource (or an empty RID). Many resources (such as "
"[Texture2D], [Mesh], etc) are high-level abstractions of resources stored in "
"a server, so this function will return the original RID."
msgstr ""
-#: doc/classes/Resource.xml:47
+#: doc/classes/Resource.xml:49
msgid ""
"This method is called when a resource with [member resource_local_to_scene] "
"enabled is loaded from a [PackedScene] instantiation. Its behavior can be "
@@ -43930,7 +44597,7 @@ msgid ""
"local viewport."
msgstr ""
-#: doc/classes/Resource.xml:57
+#: doc/classes/Resource.xml:59
msgid ""
"Sets the path of the resource, potentially overriding an existing cache "
"entry for this path. This differs from setting [member resource_path], as "
@@ -43938,25 +44605,25 @@ msgid ""
"given path."
msgstr ""
-#: doc/classes/Resource.xml:63
+#: doc/classes/Resource.xml:65
msgid ""
"If [code]true[/code], the resource will be made unique in each instance of "
"its local scene. It can thus be modified in a scene instance without "
"impacting other instances of that same scene."
msgstr ""
-#: doc/classes/Resource.xml:66
+#: doc/classes/Resource.xml:68
msgid "The name of the resource. This is an optional identifier."
msgstr ""
-#: doc/classes/Resource.xml:69
+#: doc/classes/Resource.xml:71
msgid ""
"The path to the resource. In case it has its own file, it will return its "
"filepath. If it's tied to the scene, it will return the scene's path, "
"followed by the resource's index."
msgstr ""
-#: doc/classes/Resource.xml:75
+#: doc/classes/Resource.xml:77
msgid "Emitted whenever the resource changes."
msgstr ""
@@ -44775,11 +45442,11 @@ msgid ""
"global coordinate system, but is centered at the object's origin."
msgstr ""
-#: doc/classes/RigidBody2D.xml:87
+#: doc/classes/RigidBody2D.xml:87 doc/classes/RigidBody3D.xml:99
msgid ""
-"Returns a list of the bodies colliding with this one. Use [member "
-"contacts_reported] to set the maximum number reported. You must also set "
-"[member contact_monitor] to [code]true[/code].\n"
+"Returns a list of the bodies colliding with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
"For performance, list of collisions is updated once per frame and before the "
"physics step. Consider using signals instead."
@@ -44816,7 +45483,7 @@ msgstr ""
msgid "The body's total applied torque."
msgstr ""
-#: doc/classes/RigidBody2D.xml:130 doc/classes/RigidBody3D.xml:150
+#: doc/classes/RigidBody2D.xml:130 doc/classes/RigidBody3D.xml:157
msgid ""
"If [code]true[/code], the body can enter sleep mode when there is no "
"movement. See [member sleeping]."
@@ -44828,11 +45495,17 @@ msgid ""
"another RigidBody2D. See also [member contacts_reported]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:136
-msgid "The maximum number of contacts to report."
+#: doc/classes/RigidBody2D.xml:136 doc/classes/RigidBody3D.xml:163
+msgid ""
+"The maximum number of contacts that will be recorded. Requires [member "
+"contact_monitor] to be set to [code]true[/code].\n"
+"[b]Note:[/b] The number of contacts is different from the number of "
+"collisions. Collisions between parallel edges will result in two contacts "
+"(one at each end), and collisions between parallel faces will result in four "
+"contacts (one at each corner)."
msgstr ""
-#: doc/classes/RigidBody2D.xml:139
+#: doc/classes/RigidBody2D.xml:140
msgid ""
"Continuous collision detection mode.\n"
"Continuous collision detection tries to predict where a moving body will "
@@ -44842,21 +45515,21 @@ msgid ""
"methods are available. See [enum CCDMode] for details."
msgstr ""
-#: doc/classes/RigidBody2D.xml:143
+#: doc/classes/RigidBody2D.xml:144
msgid ""
"If [code]true[/code], internal force integration is disabled for this body. "
"Aside from collision response, the body will only move as determined by the "
"[method _integrate_forces] function."
msgstr ""
-#: doc/classes/RigidBody2D.xml:146
+#: doc/classes/RigidBody2D.xml:147
msgid ""
"Multiplies the gravity applied to the body. The body's gravity is calculated "
"from the [b]Default Gravity[/b] value in [b]Project > Project Settings > "
"Physics > 2d[/b] and/or any additional gravity vector applied by [Area2D]s."
msgstr ""
-#: doc/classes/RigidBody2D.xml:149
+#: doc/classes/RigidBody2D.xml:150
msgid ""
"The body's moment of inertia. This is like mass, but for rotation: it "
"determines how much torque it takes to rotate the body. The moment of "
@@ -44865,18 +45538,18 @@ msgid ""
"automatically computing it."
msgstr ""
-#: doc/classes/RigidBody2D.xml:152
+#: doc/classes/RigidBody2D.xml:153
msgid ""
"Damps the body's [member linear_velocity]. If [code]-1[/code], the body will "
"use the [b]Default Linear Damp[/b] in [b]Project > Project Settings > "
"Physics > 2d[/b]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:161
+#: doc/classes/RigidBody2D.xml:162
msgid "The body's mode. See [enum Mode] for possible values."
msgstr ""
-#: doc/classes/RigidBody2D.xml:164 doc/classes/RigidBody3D.xml:181
+#: doc/classes/RigidBody2D.xml:165 doc/classes/RigidBody3D.xml:189
#: doc/classes/StaticBody2D.xml:22 doc/classes/StaticBody3D.xml:22
msgid ""
"The physics material override for the body.\n"
@@ -44884,50 +45557,50 @@ msgid ""
"other physics material, such as an inherited one."
msgstr ""
-#: doc/classes/RigidBody2D.xml:168 doc/classes/RigidBody3D.xml:185
+#: doc/classes/RigidBody2D.xml:169 doc/classes/RigidBody3D.xml:193
msgid ""
"If [code]true[/code], the body will not move and will not calculate forces "
"until woken up by another body through, for example, a collision, or by "
"using the [method apply_impulse] or [method add_force] methods."
msgstr ""
-#: doc/classes/RigidBody2D.xml:171
+#: doc/classes/RigidBody2D.xml:172
msgid ""
"The body's weight based on its mass and the [b]Default Gravity[/b] value in "
"[b]Project > Project Settings > Physics > 2d[/b]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:179
+#: doc/classes/RigidBody2D.xml:180 doc/classes/RigidBody3D.xml:204
msgid ""
-"Emitted when a body enters into contact with this one. [member "
-"contact_monitor] must be [code]true[/code] and [member contacts_reported] "
-"greater than [code]0[/code]."
+"Emitted when a body enters into contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:186
+#: doc/classes/RigidBody2D.xml:187
msgid ""
-"Emitted when a body exits contact with this one. [member contact_monitor] "
-"must be [code]true[/code] and [member contacts_reported] greater than "
-"[code]0[/code]."
+"Emitted when a body exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:199
+#: doc/classes/RigidBody2D.xml:200
msgid ""
"Emitted when a body enters into contact with this one. Reports colliding "
"shape information. See [CollisionObject2D] for shape index information. "
-"[member contact_monitor] must be [code]true[/code] and [member "
-"contacts_reported] greater than [code]0[/code]."
+"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:212
+#: doc/classes/RigidBody2D.xml:213
msgid ""
"Emitted when a body shape exits contact with this one. Reports colliding "
"shape information. See [CollisionObject2D] for shape index information. "
-"[member contact_monitor] must be [code]true[/code] and [member "
-"contacts_reported] greater than [code]0[/code]."
+"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:217 doc/classes/RigidBody3D.xml:236
+#: doc/classes/RigidBody2D.xml:218 doc/classes/RigidBody3D.xml:244
msgid ""
"Emitted when the physics engine changes the body's sleeping state.\n"
"[b]Note:[/b] Changing the value [member sleeping] will not trigger this "
@@ -44935,41 +45608,41 @@ msgid ""
"engine or [code]emit_signal(\"sleeping_state_changed\")[/code] is used."
msgstr ""
-#: doc/classes/RigidBody2D.xml:224
+#: doc/classes/RigidBody2D.xml:225
msgid ""
"Rigid mode. The body behaves as a physical object. It collides with other "
"bodies and responds to forces applied to it. This is the default mode."
msgstr ""
-#: doc/classes/RigidBody2D.xml:227
+#: doc/classes/RigidBody2D.xml:228
msgid "Static mode. The body behaves like a [StaticBody2D] and does not move."
msgstr ""
-#: doc/classes/RigidBody2D.xml:230
+#: doc/classes/RigidBody2D.xml:231
msgid ""
"Character mode. Similar to [constant MODE_RIGID], but the body can not "
"rotate."
msgstr ""
-#: doc/classes/RigidBody2D.xml:233
+#: doc/classes/RigidBody2D.xml:234
msgid ""
"Kinematic mode. The body behaves like a [KinematicBody2D], and must be moved "
"by code."
msgstr ""
-#: doc/classes/RigidBody2D.xml:236
+#: doc/classes/RigidBody2D.xml:237
msgid ""
"Continuous collision detection disabled. This is the fastest way to detect "
"body collisions, but can miss small, fast-moving objects."
msgstr ""
-#: doc/classes/RigidBody2D.xml:239
+#: doc/classes/RigidBody2D.xml:240
msgid ""
"Continuous collision detection enabled using raycasting. This is faster than "
"shapecasting but less precise."
msgstr ""
-#: doc/classes/RigidBody2D.xml:242
+#: doc/classes/RigidBody2D.xml:243
msgid ""
"Continuous collision detection enabled using shapecasting. This is the "
"slowest CCD method and the most precise."
@@ -45055,42 +45728,31 @@ msgid ""
"locked."
msgstr ""
-#: doc/classes/RigidBody3D.xml:99
+#: doc/classes/RigidBody3D.xml:107
msgid ""
-"Returns a list of the bodies colliding with this one. By default, number of "
-"max contacts reported is at 0, see the [member contacts_reported] property "
-"to increase it.\n"
-"[b]Note:[/b] The result of this test is not immediate after moving objects. "
-"For performance, list of collisions is updated once per frame and before the "
-"physics step. Consider using signals instead."
+"Returns the inverse inertia tensor basis. This is used to calculate the "
+"angular acceleration resulting from a torque applied to the [RigidBody3D]."
msgstr ""
-#: doc/classes/RigidBody3D.xml:111
+#: doc/classes/RigidBody3D.xml:118
msgid "Locks the specified linear or rotational axis."
msgstr ""
-#: doc/classes/RigidBody3D.xml:126
+#: doc/classes/RigidBody3D.xml:133
msgid "Damps RigidBody3D's rotational forces."
msgstr ""
-#: doc/classes/RigidBody3D.xml:129
+#: doc/classes/RigidBody3D.xml:136
msgid "RigidBody3D's rotational velocity."
msgstr ""
-#: doc/classes/RigidBody3D.xml:153
+#: doc/classes/RigidBody3D.xml:160
msgid ""
"If [code]true[/code], the RigidBody3D will emit signals when it collides "
-"with another RigidBody3D."
+"with another RigidBody3D. See also [member contacts_reported]."
msgstr ""
-#: doc/classes/RigidBody3D.xml:156
-msgid ""
-"The maximum contacts to report. Bodies can keep a log of the contacts with "
-"other bodies, this is enabled by setting the maximum amount of contacts "
-"reported to a number greater than 0."
-msgstr ""
-
-#: doc/classes/RigidBody3D.xml:159
+#: doc/classes/RigidBody3D.xml:167
msgid ""
"If [code]true[/code], continuous collision detection is used.\n"
"Continuous collision detection tries to predict where a moving body will "
@@ -45100,7 +45762,7 @@ msgid ""
"faster to compute, but can miss small, fast-moving objects."
msgstr ""
-#: doc/classes/RigidBody3D.xml:163
+#: doc/classes/RigidBody3D.xml:171
msgid ""
"If [code]true[/code], internal force integration will be disabled (like "
"gravity or air friction) for this body. Other than collision response, the "
@@ -45108,7 +45770,7 @@ msgid ""
"function, if defined."
msgstr ""
-#: doc/classes/RigidBody3D.xml:166
+#: doc/classes/RigidBody3D.xml:174
msgid ""
"This is multiplied by the global 3D gravity setting found in [b]Project > "
"Project Settings > Physics > 3d[/b] to produce RigidBody3D's gravity. For "
@@ -45116,14 +45778,14 @@ msgid ""
"and 0.5 will apply half gravity to this object."
msgstr ""
-#: doc/classes/RigidBody3D.xml:169
+#: doc/classes/RigidBody3D.xml:177
msgid ""
"The body's linear damp. Cannot be less than -1.0. If this value is different "
"from -1.0, any linear damp derived from the world or areas will be "
"overridden."
msgstr ""
-#: doc/classes/RigidBody3D.xml:172
+#: doc/classes/RigidBody3D.xml:180
msgid ""
"The body's linear velocity. Can be used sporadically, but [b]don't set this "
"every frame[/b], because physics may run in another thread and runs at a "
@@ -45131,60 +45793,57 @@ msgid ""
"for precise control of the body state."
msgstr ""
-#: doc/classes/RigidBody3D.xml:178
+#: doc/classes/RigidBody3D.xml:186
msgid "The body mode. See [enum Mode] for possible values."
msgstr ""
-#: doc/classes/RigidBody3D.xml:196
-msgid ""
-"Emitted when a body enters into contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work."
-msgstr ""
-
-#: doc/classes/RigidBody3D.xml:203
+#: doc/classes/RigidBody3D.xml:211
msgid ""
-"Emitted when a body shape exits contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work."
+"Emitted when a body shape exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody3D.xml:216
+#: doc/classes/RigidBody3D.xml:224
msgid ""
-"Emitted when a body enters into contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work.\n"
+"Emitted when a body enters into contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"This signal not only receives the body that collided with this one, but also "
"its [RID] ([code]body_id[/code]), the shape index from the colliding body "
"([code]body_shape[/code]), and the shape index from this body "
"([code]local_shape[/code]) the other body collided with."
msgstr ""
-#: doc/classes/RigidBody3D.xml:230
+#: doc/classes/RigidBody3D.xml:238
msgid ""
-"Emitted when a body shape exits contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work.\n"
+"Emitted when a body shape exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"This signal not only receives the body that stopped colliding with this one, "
"but also its [RID] ([code]body_id[/code]), the shape index from the "
"colliding body ([code]body_shape[/code]), and the shape index from this body "
"([code]local_shape[/code]) the other body stopped colliding with."
msgstr ""
-#: doc/classes/RigidBody3D.xml:243
+#: doc/classes/RigidBody3D.xml:251
msgid ""
"Rigid body mode. This is the \"natural\" state of a rigid body. It is "
"affected by forces, and can move, rotate, and be affected by user code."
msgstr ""
-#: doc/classes/RigidBody3D.xml:246
+#: doc/classes/RigidBody3D.xml:254
msgid ""
"Static mode. The body behaves like a [StaticBody3D], and can only move by "
"user code."
msgstr ""
-#: doc/classes/RigidBody3D.xml:249
+#: doc/classes/RigidBody3D.xml:257
msgid ""
"Character body mode. This behaves like a rigid body, but can not rotate."
msgstr ""
-#: doc/classes/RigidBody3D.xml:252
+#: doc/classes/RigidBody3D.xml:260
msgid ""
"Kinematic body mode. The body behaves like a [KinematicBody3D], and can only "
"move by user code."
@@ -45691,7 +46350,7 @@ msgstr ""
msgid "The time remaining."
msgstr ""
-#: doc/classes/SceneTreeTimer.xml:28 doc/classes/Timer.xml:62
+#: doc/classes/SceneTreeTimer.xml:28 doc/classes/Timer.xml:63
msgid "Emitted when the timer reaches 0."
msgstr ""
@@ -45814,27 +46473,27 @@ msgid ""
"the singleton using [method EditorInterface.get_script_editor]."
msgstr ""
-#: doc/classes/ScriptEditor.xml:40
+#: doc/classes/ScriptEditor.xml:46
msgid "Returns a [Script] that is currently active in editor."
msgstr ""
-#: doc/classes/ScriptEditor.xml:57
+#: doc/classes/ScriptEditor.xml:69
msgid ""
"Returns an array with all [Script] objects which are currently open in "
"editor."
msgstr ""
-#: doc/classes/ScriptEditor.xml:66
+#: doc/classes/ScriptEditor.xml:78
msgid "Goes to the specified line in the current script."
msgstr ""
-#: doc/classes/ScriptEditor.xml:85
+#: doc/classes/ScriptEditor.xml:113
msgid ""
"Emitted when user changed active script. Argument is a freshly activated "
"[Script]."
msgstr ""
-#: doc/classes/ScriptEditor.xml:92
+#: doc/classes/ScriptEditor.xml:120
msgid ""
"Emitted when editor is about to close the active script. Argument is a "
"[Script] that is going to be closed."
@@ -45896,7 +46555,7 @@ msgid ""
"visible."
msgstr ""
-#: doc/classes/ScrollContainer.xml:37 doc/classes/TextEdit.xml:453
+#: doc/classes/ScrollContainer.xml:37 doc/classes/TextEdit.xml:407
msgid "The current horizontal scroll value."
msgstr ""
@@ -45904,7 +46563,7 @@ msgstr ""
msgid "If [code]true[/code], enables horizontal scrolling."
msgstr ""
-#: doc/classes/ScrollContainer.xml:43 doc/classes/TextEdit.xml:456
+#: doc/classes/ScrollContainer.xml:43 doc/classes/TextEdit.xml:410
msgid "The current vertical scroll value."
msgstr ""
@@ -46423,7 +47082,7 @@ msgstr ""
msgid ""
"Sets the global pose transform, [code]pose[/code], for the bone at "
"[code]bone_idx[/code].\n"
-"[code]amount[/code] is the interpolation strengh that will be used when "
+"[code]amount[/code] is the interpolation strength that will be used when "
"applying the pose, and [code]persistent[/code] determines if the applied "
"pose will remain.\n"
"[b]Note[/b]: The pose transform needs to be in bone space. Use [method "
@@ -46440,7 +47099,7 @@ msgstr ""
#: doc/classes/Skeleton3D.xml:266
msgid ""
-"Returns the pose transform for bone [code]bone_idx[/code].\n"
+"Sets the pose transform for bone [code]bone_idx[/code].\n"
"[b]Note[/b]: The pose transform needs to be in bone space. Use [method "
"world_transform_to_bone_transform] to convert a world transform, like one "
"you can get from a [Node3D], to bone space."
@@ -46533,6 +47192,16 @@ msgstr ""
#: doc/classes/Sky.xml:52
msgid ""
+"Automatically selects the appropriate process mode based on your sky shader. "
+"If your shader uses [code]TIME[/code] or [code]POSITION[/code], this will "
+"use [constant PROCESS_MODE_REALTIME]. If your shader uses any of the "
+"[code]LIGHT_*[/code] variables or any custom uniforms, this uses [constant "
+"PROCESS_MODE_INCREMENTAL]. Otherwise, this defaults to [constant "
+"PROCESS_MODE_QUALITY]."
+msgstr ""
+
+#: doc/classes/Sky.xml:55
+msgid ""
"Uses high quality importance sampling to process the radiance map. In "
"general, this results in much higher quality than [constant "
"PROCESS_MODE_REALTIME] but takes much longer to generate. This should not be "
@@ -46542,10 +47211,22 @@ msgid ""
"ggx_samples]."
msgstr ""
-#: doc/classes/Sky.xml:55
+#: doc/classes/Sky.xml:58
+msgid ""
+"Uses the same high quality importance sampling to process the radiance map "
+"as [constant PROCESS_MODE_QUALITY], but updates over several frames. The "
+"number of frames is determined by [member ProjectSettings.rendering/quality/"
+"reflections/roughness_layers]. Use this when you need highest quality "
+"radiance maps, but have a sky that updates slowly."
+msgstr ""
+
+#: doc/classes/Sky.xml:61
msgid ""
"Uses the fast filtering algorithm to process the radiance map. In general "
-"this results in lower quality, but substantially faster run times.\n"
+"this results in lower quality, but substantially faster run times. If you "
+"need better quality, but still need to update the sky every frame, consider "
+"turning on [member ProjectSettings.rendering/quality/reflections/"
+"fast_filter_high_quality].\n"
"[b]Note:[/b] The fast filtering algorithm is limited to 256x256 cubemaps, so "
"[member radiance_size] must be set to [constant RADIANCE_SIZE_256]."
msgstr ""
@@ -46882,9 +47563,7 @@ msgid ""
msgstr ""
#: doc/classes/SpringArm3D.xml:35
-msgid ""
-"Returns the proportion between the current arm length (after checking for "
-"collisions) and the [member spring_length]. Ranges from 0 to 1."
+msgid "Returns the spring arm's current length."
msgstr ""
#: doc/classes/SpringArm3D.xml:44
@@ -47580,7 +48259,7 @@ msgstr ""
msgid ""
"This is the built-in string class (and the one used by GDScript). It "
"supports Unicode and provides all necessary means for string handling. "
-"Strings are reference counted and use a copy-on-write approach, so passing "
+"Strings are reference-counted and use a copy-on-write approach, so passing "
"them around is cheap in resources."
msgstr ""
@@ -47735,26 +48414,32 @@ msgstr ""
#: doc/classes/String.xml:328
msgid ""
"Returns a copy of the string with escaped characters replaced by their "
-"meanings according to the C language standard."
+"meanings. Supported escape sequences are [code]\\'[/code], [code]\\\"[/"
+"code], [code]\\?[/code], [code]\\\\[/code], [code]\\a[/code], [code]\\b[/"
+"code], [code]\\f[/code], [code]\\n[/code], [code]\\r[/code], [code]\\t[/"
+"code], [code]\\v[/code].\n"
+"[b]Note:[/b] Unlike the GDScript parser, this method doesn't support the "
+"[code]\\uXXXX[/code] escape sequence."
msgstr ""
-#: doc/classes/String.xml:335
+#: doc/classes/String.xml:336
msgid ""
-"Changes the case of some letters. Replaces underscores with spaces, converts "
-"all letters to lowercase, then capitalizes first and every letter following "
-"the space character. For [code]capitalize camelCase mixed_with_underscores[/"
-"code], it will return [code]Capitalize Camelcase Mixed With Underscores[/"
+"Changes the case of some letters. Replaces underscores with spaces, adds "
+"spaces before in-word uppercase characters, converts all letters to "
+"lowercase, then capitalizes the first letter and every letter following a "
+"space character. For [code]capitalize camelCase mixed_with_underscores[/"
+"code], it will return [code]Capitalize Camel Case Mixed With Underscores[/"
"code]."
msgstr ""
-#: doc/classes/String.xml:344
+#: doc/classes/String.xml:345
msgid ""
"Performs a case-sensitive comparison to another string. Returns [code]-1[/"
"code] if less than, [code]+1[/code] if greater than, or [code]0[/code] if "
"equal."
msgstr ""
-#: doc/classes/String.xml:357
+#: doc/classes/String.xml:358
msgid ""
"Returns the number of occurrences of substring [code]what[/code] between "
"[code]from[/code] and [code]to[/code] positions. If [code]from[/code] and "
@@ -47762,7 +48447,7 @@ msgid ""
"code] equals 0 the remained substring will be used."
msgstr ""
-#: doc/classes/String.xml:370
+#: doc/classes/String.xml:371
msgid ""
"Returns the number of occurrences of substring [code]what[/code] (ignoring "
"case) between [code]from[/code] and [code]to[/code] positions. If "
@@ -47770,32 +48455,33 @@ msgid ""
"used. If only [code]to[/code] equals 0 the remained substring will be used."
msgstr ""
-#: doc/classes/String.xml:377
+#: doc/classes/String.xml:378
msgid ""
"Returns a copy of the string with indentation (leading tabs and spaces) "
"removed."
msgstr ""
-#: doc/classes/String.xml:384
+#: doc/classes/String.xml:385
msgid ""
"Returns [code]true[/code] if the length of the string equals [code]0[/code]."
msgstr ""
-#: doc/classes/String.xml:393
+#: doc/classes/String.xml:394
msgid "Returns [code]true[/code] if the string ends with the given string."
msgstr ""
-#: doc/classes/String.xml:404
+#: doc/classes/String.xml:405
msgid ""
"Erases [code]chars[/code] characters from the string starting from "
"[code]position[/code]."
msgstr ""
-#: doc/classes/String.xml:415
+#: doc/classes/String.xml:416
msgid ""
-"Finds the first occurrence of a substring. Returns the starting position of "
-"the substring or [code]-1[/code] if not found. Optionally, the initial "
-"search index can be passed.\n"
+"Returns the index of the [b]first[/b] case-sensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the end of the "
+"string.\n"
"[b]Note:[/b] If you just want to know whether a string contains a substring, "
"use the [code]in[/code] operator as follows:\n"
"[codeblock]\n"
@@ -47805,48 +48491,42 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:430
+#: doc/classes/String.xml:433
msgid ""
-"Finds the last occurrence of a substring. Returns the starting position of "
-"the substring or [code]-1[/code] if not found."
+"Returns the index of the [b]first[/b] case-insensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the end of the string."
msgstr ""
-#: doc/classes/String.xml:441
-msgid ""
-"Finds the first occurrence of a substring, ignoring case. Returns the "
-"starting position of the substring or [code]-1[/code] if not found. "
-"Optionally, the initial search index can be passed."
-msgstr ""
-
-#: doc/classes/String.xml:452
+#: doc/classes/String.xml:444
msgid ""
"Formats the string by replacing all occurrences of [code]placeholder[/code] "
"with [code]values[/code]."
msgstr ""
-#: doc/classes/String.xml:459
+#: doc/classes/String.xml:451
msgid "If the string is a valid file path, returns the base directory name."
msgstr ""
-#: doc/classes/String.xml:466
+#: doc/classes/String.xml:458
msgid ""
"If the string is a valid file path, returns the full file path without the "
"extension."
msgstr ""
-#: doc/classes/String.xml:473
+#: doc/classes/String.xml:465
msgid "If the string is a valid file path, returns the extension."
msgstr ""
-#: doc/classes/String.xml:480
+#: doc/classes/String.xml:472
msgid "If the string is a valid file path, returns the filename."
msgstr ""
-#: doc/classes/String.xml:487
+#: doc/classes/String.xml:479
msgid "Hashes the string and returns a 32-bit integer."
msgstr ""
-#: doc/classes/String.xml:494
+#: doc/classes/String.xml:486
msgid ""
"Converts a string containing a hexadecimal number into an integer. "
"Hexadecimal strings are expected to be prefixed with \"[code]0x[/code]\" "
@@ -47856,7 +48536,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:504
+#: doc/classes/String.xml:496
msgid ""
"Escapes (encodes) a string to URL friendly format. Also referred to as 'URL "
"encode'.\n"
@@ -47866,7 +48546,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:514
+#: doc/classes/String.xml:506
msgid ""
"Unescapes (decodes) a string in URL encoded format. Also referred to as 'URL "
"decode'.\n"
@@ -47876,7 +48556,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:526
+#: doc/classes/String.xml:518
msgid ""
"Converts [code]size[/code] represented as number of bytes to human-readable "
"format using internationalized set of data size units, namely: B, KiB, MiB, "
@@ -47889,48 +48569,48 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:542
+#: doc/classes/String.xml:534
msgid ""
"Returns a copy of the string with the substring [code]what[/code] inserted "
"at the given position."
msgstr ""
-#: doc/classes/String.xml:549
+#: doc/classes/String.xml:541
msgid ""
"If the string is a path to a file or directory, returns [code]true[/code] if "
"the path is absolute."
msgstr ""
-#: doc/classes/String.xml:556
+#: doc/classes/String.xml:548
msgid ""
"If the string is a path to a file or directory, returns [code]true[/code] if "
"the path is relative."
msgstr ""
-#: doc/classes/String.xml:565
+#: doc/classes/String.xml:557
msgid ""
"Returns [code]true[/code] if this string is a subsequence of the given "
"string."
msgstr ""
-#: doc/classes/String.xml:574
+#: doc/classes/String.xml:566
msgid ""
"Returns [code]true[/code] if this string is a subsequence of the given "
"string, without considering case."
msgstr ""
-#: doc/classes/String.xml:581
+#: doc/classes/String.xml:573
msgid ""
"Returns [code]true[/code] if this string is free from characters that aren't "
"allowed in file names, those being:\n"
"[code]: / \\ ? * \" | % < >[/code]"
msgstr ""
-#: doc/classes/String.xml:589
+#: doc/classes/String.xml:581
msgid "Returns [code]true[/code] if this string contains a valid float."
msgstr ""
-#: doc/classes/String.xml:598
+#: doc/classes/String.xml:590
msgid ""
"Returns [code]true[/code] if this string contains a valid hexadecimal "
"number. If [code]with_prefix[/code] is [code]true[/code], then a validity of "
@@ -47938,7 +48618,7 @@ msgid ""
"instance: [code]0xDEADC0DE[/code]."
msgstr ""
-#: doc/classes/String.xml:605
+#: doc/classes/String.xml:597
msgid ""
"Returns [code]true[/code] if this string contains a valid color in "
"hexadecimal HTML notation. Other HTML notations such as named colors or "
@@ -47946,22 +48626,22 @@ msgid ""
"return [code]false[/code]."
msgstr ""
-#: doc/classes/String.xml:612
+#: doc/classes/String.xml:604
msgid ""
"Returns [code]true[/code] if this string is a valid identifier. A valid "
"identifier may contain only letters, digits and underscores ([code]_[/code]) "
"and the first character may not be a digit."
msgstr ""
-#: doc/classes/String.xml:619
+#: doc/classes/String.xml:611
msgid "Returns [code]true[/code] if this string contains a valid integer."
msgstr ""
-#: doc/classes/String.xml:626
+#: doc/classes/String.xml:618
msgid "Returns [code]true[/code] if this string contains a valid IP address."
msgstr ""
-#: doc/classes/String.xml:635
+#: doc/classes/String.xml:627
msgid ""
"Return a [String] which is the concatenation of the [code]parts[/code]. The "
"separator between elements is the string providing this method.\n"
@@ -47971,121 +48651,125 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:646
+#: doc/classes/String.xml:638
msgid ""
"Returns a copy of the string with special characters escaped using the JSON "
"standard."
msgstr ""
-#: doc/classes/String.xml:655
+#: doc/classes/String.xml:647
msgid "Returns a number of characters from the left of the string."
msgstr ""
-#: doc/classes/String.xml:662
+#: doc/classes/String.xml:654
msgid "Returns the string's amount of characters."
msgstr ""
-#: doc/classes/String.xml:671
+#: doc/classes/String.xml:663
msgid "Returns a copy of the string with characters removed from the left."
msgstr ""
-#: doc/classes/String.xml:680
+#: doc/classes/String.xml:672
msgid ""
"Does a simple case-sensitive expression match, where [code]\"*\"[/code] "
"matches zero or more arbitrary characters and [code]\"?\"[/code] matches any "
"single character except a period ([code]\".\"[/code])."
msgstr ""
-#: doc/classes/String.xml:689
+#: doc/classes/String.xml:681
msgid ""
"Does a simple case-insensitive expression match, where [code]\"*\"[/code] "
"matches zero or more arbitrary characters and [code]\"?\"[/code] matches any "
"single character except a period ([code]\".\"[/code])."
msgstr ""
-#: doc/classes/String.xml:696
+#: doc/classes/String.xml:688
msgid "Returns the MD5 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:703
+#: doc/classes/String.xml:695
msgid "Returns the MD5 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:712
+#: doc/classes/String.xml:704
msgid ""
"Performs a case-insensitive comparison to another string. Returns [code]-1[/"
"code] if less than, [code]+1[/code] if greater than, or [code]0[/code] if "
"equal."
msgstr ""
-#: doc/classes/String.xml:721
+#: doc/classes/String.xml:713
msgid "Returns the character code at position [code]at[/code]."
msgstr ""
-#: doc/classes/String.xml:730
+#: doc/classes/String.xml:722
msgid ""
"Formats a number to have an exact number of [code]digits[/code] after the "
"decimal point."
msgstr ""
-#: doc/classes/String.xml:739
+#: doc/classes/String.xml:731
msgid ""
"Formats a number to have an exact number of [code]digits[/code] before the "
"decimal point."
msgstr ""
-#: doc/classes/String.xml:746
+#: doc/classes/String.xml:738
msgid "Decode a percent-encoded string. See [method percent_encode]."
msgstr ""
-#: doc/classes/String.xml:753
+#: doc/classes/String.xml:745
msgid ""
"Percent-encodes a string. Encodes parameters in a URL when sending a HTTP "
"GET request (and bodies of form-urlencoded POST requests)."
msgstr ""
-#: doc/classes/String.xml:762
+#: doc/classes/String.xml:754
msgid ""
"If the string is a path, this concatenates [code]file[/code] at the end of "
"the string as a subpath. E.g. [code]\"this/is\".plus_file(\"path\") == "
"\"this/is/path\"[/code]."
msgstr ""
-#: doc/classes/String.xml:771
+#: doc/classes/String.xml:763
msgid ""
"Returns original string repeated a number of times. The number of "
"repetitions is given by the argument."
msgstr ""
-#: doc/classes/String.xml:782
+#: doc/classes/String.xml:774
msgid ""
"Replaces occurrences of a case-sensitive substring with the given one inside "
"the string."
msgstr ""
-#: doc/classes/String.xml:793
+#: doc/classes/String.xml:785
msgid ""
"Replaces occurrences of a case-insensitive substring with the given one "
"inside the string."
msgstr ""
-#: doc/classes/String.xml:804
+#: doc/classes/String.xml:796
msgid ""
-"Performs a case-sensitive search for a substring, but starts from the end of "
-"the string instead of the beginning."
+"Returns the index of the [b]last[/b] case-sensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the beginning of the "
+"string."
msgstr ""
-#: doc/classes/String.xml:815
+#: doc/classes/String.xml:807
msgid ""
-"Performs a case-insensitive search for a substring, but starts from the end "
-"of the string instead of the beginning."
+"Returns the index of the [b]last[/b] case-insensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the beginning of the "
+"string."
msgstr ""
-#: doc/classes/String.xml:824
+#: doc/classes/String.xml:816
msgid "Returns the right side of the string from a given position."
msgstr ""
-#: doc/classes/String.xml:837
+#: doc/classes/String.xml:829
msgid ""
"Splits the string by a [code]delimiter[/code] string and returns an array of "
"the substrings, starting from right.\n"
@@ -48104,39 +48788,39 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:856
+#: doc/classes/String.xml:848
msgid "Returns a copy of the string with characters removed from the right."
msgstr ""
-#: doc/classes/String.xml:863
+#: doc/classes/String.xml:855
msgid "Returns the SHA-1 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:870
+#: doc/classes/String.xml:862
msgid "Returns the SHA-1 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:877
+#: doc/classes/String.xml:869
msgid "Returns the SHA-256 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:884
+#: doc/classes/String.xml:876
msgid "Returns the SHA-256 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:893
+#: doc/classes/String.xml:885
msgid ""
"Returns the similarity index of the text compared to this string. 1 means "
"totally similar and 0 means totally dissimilar."
msgstr ""
-#: doc/classes/String.xml:906
+#: doc/classes/String.xml:898
msgid ""
"Splits the string by a [code]delimiter[/code] string and returns an array of "
-"the substrings.\n"
+"the substrings. The [code]delimiter[/code] can be of any length.\n"
"If [code]maxsplit[/code] is specified, it defines the number of splits to do "
-"from the left up to [code]maxsplit[/code]. The default value of 0 means that "
-"all items are split.\n"
+"from the left up to [code]maxsplit[/code]. The default value of [code]0[/"
+"code] means that all items are split.\n"
"Example:\n"
"[codeblock]\n"
"var some_string = \"One,Two,Three,Four\"\n"
@@ -48144,10 +48828,12 @@ msgid ""
"print(some_array.size()) # Prints 2\n"
"print(some_array[0]) # Prints \"One\"\n"
"print(some_array[1]) # Prints \"Two,Three,Four\"\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"If you need to split strings with more complex rules, use the [RegEx] class "
+"instead."
msgstr ""
-#: doc/classes/String.xml:926
+#: doc/classes/String.xml:919
msgid ""
"Splits the string in floats by using a delimiter string and returns an array "
"of the substrings.\n"
@@ -48155,7 +48841,7 @@ msgid ""
"split by [code]\",\"[/code]."
msgstr ""
-#: doc/classes/String.xml:938
+#: doc/classes/String.xml:931
msgid ""
"Returns a copy of the string stripped of any non-printable character "
"(including tabulations, spaces and line breaks) at the beginning and the "
@@ -48163,7 +48849,7 @@ msgid ""
"right edges respectively."
msgstr ""
-#: doc/classes/String.xml:945
+#: doc/classes/String.xml:938
msgid ""
"Returns a copy of the string stripped of any escape character. These include "
"all non-printable control characters of the first page of the ASCII table (< "
@@ -48171,14 +48857,14 @@ msgid ""
"code] and [code]\\r[/code]) characters, but not spaces."
msgstr ""
-#: doc/classes/String.xml:956
+#: doc/classes/String.xml:949
msgid ""
"Returns part of the string from the position [code]from[/code] with length "
"[code]len[/code]. Argument [code]len[/code] is optional and using [code]-1[/"
"code] will return remaining characters from given position."
msgstr ""
-#: doc/classes/String.xml:963
+#: doc/classes/String.xml:956
msgid ""
"Converts the String (which is a character array) to [PackedByteArray] (which "
"is an array of bytes). The conversion is faster compared to [method "
@@ -48186,25 +48872,25 @@ msgid ""
"ASCII characters."
msgstr ""
-#: doc/classes/String.xml:970
+#: doc/classes/String.xml:963
msgid ""
"Converts a string containing a decimal number into a [code]float[/code]."
msgstr ""
-#: doc/classes/String.xml:977
+#: doc/classes/String.xml:970
msgid ""
"Converts a string containing an integer number into an [code]int[/code]."
msgstr ""
-#: doc/classes/String.xml:984
+#: doc/classes/String.xml:977
msgid "Returns the string converted to lowercase."
msgstr ""
-#: doc/classes/String.xml:991
+#: doc/classes/String.xml:984
msgid "Returns the string converted to uppercase."
msgstr ""
-#: doc/classes/String.xml:998
+#: doc/classes/String.xml:991
msgid ""
"Converts the String (which is an array of characters) to [PackedByteArray] "
"(which is an array of bytes). The conversion is a bit slower than [method "
@@ -48212,25 +48898,25 @@ msgid ""
"this function over [method to_ascii]."
msgstr ""
-#: doc/classes/String.xml:1007
+#: doc/classes/String.xml:1000
msgid ""
"Removes a given string from the start if it starts with it or leaves the "
"string unchanged."
msgstr ""
-#: doc/classes/String.xml:1016
+#: doc/classes/String.xml:1009
msgid ""
"Removes a given string from the end if it ends with it or leaves the string "
"unchanged."
msgstr ""
-#: doc/classes/String.xml:1023
+#: doc/classes/String.xml:1016
msgid ""
"Returns a copy of the string with special characters escaped using the XML "
"standard."
msgstr ""
-#: doc/classes/String.xml:1030
+#: doc/classes/String.xml:1023
msgid ""
"Returns a copy of the string with escaped characters replaced by their "
"meanings according to the XML standard."
@@ -49462,50 +50148,42 @@ msgid ""
"undo/redo."
msgstr ""
-#: doc/classes/TextEdit.xml:24
-msgid "Adds color region (given the delimiters) and its colors."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:35
-msgid "Adds a [code]keyword[/code] and its [Color]."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:44
+#: doc/classes/TextEdit.xml:18
msgid ""
"Returns if the given line is foldable, that is, it has indented lines right "
"below it."
msgstr ""
-#: doc/classes/TextEdit.xml:57
+#: doc/classes/TextEdit.xml:25
msgid ""
-"Clears all custom syntax coloring information previously added with [method "
-"add_color_region] or [method add_keyword_color]."
+"Centers the viewport on the line the editing cursor is at. This also resets "
+"the [member scroll_horizontal] value to [code]0[/code]."
msgstr ""
-#: doc/classes/TextEdit.xml:64
+#: doc/classes/TextEdit.xml:32
msgid "Clears the undo history."
msgstr ""
-#: doc/classes/TextEdit.xml:71
+#: doc/classes/TextEdit.xml:39
msgid "Copy's the current text selection."
msgstr ""
-#: doc/classes/TextEdit.xml:78
+#: doc/classes/TextEdit.xml:46
msgid "Returns the column the editing cursor is at."
msgstr ""
-#: doc/classes/TextEdit.xml:85
+#: doc/classes/TextEdit.xml:53
msgid "Returns the line the editing cursor is at."
msgstr ""
-#: doc/classes/TextEdit.xml:96
+#: doc/classes/TextEdit.xml:64
msgid ""
"Moves the cursor at the specified [code]column[/code] index.\n"
"If [code]adjust_viewport[/code] is set to [code]true[/code], the viewport "
"will center at the cursor position after the move occurs."
msgstr ""
-#: doc/classes/TextEdit.xml:112
+#: doc/classes/TextEdit.xml:80
msgid ""
"Moves the cursor at the specified [code]line[/code] index.\n"
"If [code]adjust_viewport[/code] is set to [code]true[/code], the viewport "
@@ -49514,111 +50192,101 @@ msgid ""
"[code]line[/code] can be hidden using [method set_line_as_hidden]."
msgstr ""
-#: doc/classes/TextEdit.xml:121
+#: doc/classes/TextEdit.xml:89
msgid "Cut's the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:128
+#: doc/classes/TextEdit.xml:96
msgid "Deselects the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:135
+#: doc/classes/TextEdit.xml:103
msgid "Folds all lines that are possible to be folded (see [method can_fold])."
msgstr ""
-#: doc/classes/TextEdit.xml:144
+#: doc/classes/TextEdit.xml:112
msgid "Folds the given line, if possible (see [method can_fold])."
msgstr ""
-#: doc/classes/TextEdit.xml:151
+#: doc/classes/TextEdit.xml:119
msgid "Returns an array containing the line number of each breakpoint."
msgstr ""
-#: doc/classes/TextEdit.xml:160
-msgid "Returns the [Color] of the specified [code]keyword[/code]."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:169
+#: doc/classes/TextEdit.xml:128
msgid "Returns the text of a specific line."
msgstr ""
-#: doc/classes/TextEdit.xml:176
+#: doc/classes/TextEdit.xml:135
msgid "Returns the amount of total lines in the text."
msgstr ""
-#: doc/classes/TextEdit.xml:183
+#: doc/classes/TextEdit.xml:142
msgid ""
"Returns the [PopupMenu] of this [TextEdit]. By default, this menu is "
"displayed when right-clicking on the [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:190
+#: doc/classes/TextEdit.xml:149
msgid "Returns the selection begin column."
msgstr ""
-#: doc/classes/TextEdit.xml:197
+#: doc/classes/TextEdit.xml:156
msgid "Returns the selection begin line."
msgstr ""
-#: doc/classes/TextEdit.xml:204
+#: doc/classes/TextEdit.xml:163
msgid "Returns the text inside the selection."
msgstr ""
-#: doc/classes/TextEdit.xml:211
+#: doc/classes/TextEdit.xml:170
msgid "Returns the selection end column."
msgstr ""
-#: doc/classes/TextEdit.xml:218
+#: doc/classes/TextEdit.xml:177
msgid "Returns the selection end line."
msgstr ""
-#: doc/classes/TextEdit.xml:225
+#: doc/classes/TextEdit.xml:184
msgid "Returns a [String] text with the word under the mouse cursor location."
msgstr ""
-#: doc/classes/TextEdit.xml:234
-msgid ""
-"Returns whether the specified [code]keyword[/code] has a color set to it or "
-"not."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:243
+#: doc/classes/TextEdit.xml:193
msgid "Insert the specified text at the cursor position."
msgstr ""
-#: doc/classes/TextEdit.xml:252
+#: doc/classes/TextEdit.xml:202
msgid "Returns whether the line at the specified index is folded or not."
msgstr ""
-#: doc/classes/TextEdit.xml:261
+#: doc/classes/TextEdit.xml:211
msgid "Returns whether the line at the specified index is hidden or not."
msgstr ""
-#: doc/classes/TextEdit.xml:268
+#: doc/classes/TextEdit.xml:218
msgid "Returns [code]true[/code] if the selection is active."
msgstr ""
-#: doc/classes/TextEdit.xml:277
+#: doc/classes/TextEdit.xml:227
msgid ""
"Triggers a right-click menu action by the specified index. See [enum "
"MenuItems] for a list of available indexes."
msgstr ""
-#: doc/classes/TextEdit.xml:284
+#: doc/classes/TextEdit.xml:234
msgid "Paste the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:291
+#: doc/classes/TextEdit.xml:241
msgid "Perform redo operation."
msgstr ""
-#: doc/classes/TextEdit.xml:298
+#: doc/classes/TextEdit.xml:248
msgid ""
"Removes all the breakpoints. This will not fire the [signal "
"breakpoint_toggled] signal."
msgstr ""
-#: doc/classes/TextEdit.xml:313
+#: doc/classes/TextEdit.xml:263
msgid ""
"Perform a search inside the text. Search flags can be specified in the [enum "
"SearchFlags] enum.\n"
@@ -49634,244 +50302,265 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/TextEdit.xml:336
-msgid "Perform selection, from line/column to line/column."
+#: doc/classes/TextEdit.xml:286
+msgid ""
+"Perform selection, from line/column to line/column.\n"
+"If [member selecting_enabled] is [code]false[/code], no selection will occur."
msgstr ""
-#: doc/classes/TextEdit.xml:343
-msgid "Select all the text."
+#: doc/classes/TextEdit.xml:294
+msgid ""
+"Select all the text.\n"
+"If [member selecting_enabled] is [code]false[/code], no selection will occur."
msgstr ""
-#: doc/classes/TextEdit.xml:354
+#: doc/classes/TextEdit.xml:306
msgid "Sets the text for a specific line."
msgstr ""
-#: doc/classes/TextEdit.xml:365
+#: doc/classes/TextEdit.xml:317
msgid "If [code]true[/code], hides the line of the specified index."
msgstr ""
-#: doc/classes/TextEdit.xml:374
+#: doc/classes/TextEdit.xml:326
msgid "Toggle the folding of the code block at the given line."
msgstr ""
-#: doc/classes/TextEdit.xml:381
+#: doc/classes/TextEdit.xml:333
msgid "Perform undo operation."
msgstr ""
-#: doc/classes/TextEdit.xml:390
+#: doc/classes/TextEdit.xml:342
msgid "Unfolds the given line, if folded."
msgstr ""
-#: doc/classes/TextEdit.xml:397
+#: doc/classes/TextEdit.xml:349
msgid ""
"Unhide all lines that were previously set to hidden by [method "
"set_line_as_hidden]."
msgstr ""
-#: doc/classes/TextEdit.xml:403
+#: doc/classes/TextEdit.xml:355
msgid "If [code]true[/code], the breakpoint gutter is visible."
msgstr ""
-#: doc/classes/TextEdit.xml:412
+#: doc/classes/TextEdit.xml:364
msgid ""
"If [code]true[/code], the caret displays as a rectangle.\n"
"If [code]false[/code], the caret displays as a bar."
msgstr ""
-#: doc/classes/TextEdit.xml:416
+#: doc/classes/TextEdit.xml:368
msgid ""
"If [code]true[/code], a right-click moves the cursor at the mouse position "
"before displaying the context menu.\n"
"If [code]false[/code], the context menu disregards mouse location."
msgstr ""
-#: doc/classes/TextEdit.xml:420
+#: doc/classes/TextEdit.xml:372
msgid "If [code]true[/code], a right-click displays the context menu."
msgstr ""
-#: doc/classes/TextEdit.xml:423
+#: doc/classes/TextEdit.xml:375
msgid ""
"If [code]true[/code], the \"space\" character will have a visible "
"representation."
msgstr ""
-#: doc/classes/TextEdit.xml:426
+#: doc/classes/TextEdit.xml:378
msgid ""
"If [code]true[/code], the \"tab\" character will have a visible "
"representation."
msgstr ""
-#: doc/classes/TextEdit.xml:430
+#: doc/classes/TextEdit.xml:382
msgid ""
"If [code]true[/code], the fold gutter is visible. This enables folding "
"groups of indented lines."
msgstr ""
-#: doc/classes/TextEdit.xml:433
+#: doc/classes/TextEdit.xml:385
msgid ""
"If [code]true[/code], all lines that have been set to hidden by [method "
"set_line_as_hidden], will not be visible."
msgstr ""
-#: doc/classes/TextEdit.xml:436
+#: doc/classes/TextEdit.xml:388
msgid ""
"If [code]true[/code], all occurrences of the selected text will be "
"highlighted."
msgstr ""
-#: doc/classes/TextEdit.xml:439
+#: doc/classes/TextEdit.xml:391
msgid "If [code]true[/code], the line containing the cursor is highlighted."
msgstr ""
-#: doc/classes/TextEdit.xml:447
+#: doc/classes/TextEdit.xml:394
+msgid ""
+"If [code]true[/code], a minimap is shown, providing an outline of your "
+"source code."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:397
+msgid "The width, in pixels, of the minimap."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:401
msgid ""
"If [code]true[/code], custom [code]font_color_selected[/code] will be used "
"for selected text."
msgstr ""
-#: doc/classes/TextEdit.xml:450
+#: doc/classes/TextEdit.xml:404
msgid ""
"If [code]true[/code], read-only mode is enabled. Existing text cannot be "
"modified and new text cannot be added."
msgstr ""
-#: doc/classes/TextEdit.xml:463
+#: doc/classes/TextEdit.xml:413
msgid ""
-"If [code]true[/code], line numbers are displayed to the left of the text."
+"If [code]true[/code], text can be selected.\n"
+"If [code]false[/code], text can not be selected by the user or by the "
+"[method select] or [method select_all] methods."
msgstr ""
-#: doc/classes/TextEdit.xml:466
+#: doc/classes/TextEdit.xml:417
msgid ""
-"If [code]true[/code], sets the [code]step[/code] of the scrollbars to "
-"[code]0.25[/code] which results in smoother scrolling."
+"If [code]true[/code], shortcut keys for context menu items are enabled, even "
+"if the context menu is disabled."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:420
+msgid ""
+"If [code]true[/code], line numbers are displayed to the left of the text."
msgstr ""
-#: doc/classes/TextEdit.xml:469
+#: doc/classes/TextEdit.xml:423
msgid ""
-"If [code]true[/code], any custom color properties that have been set for "
-"this [TextEdit] will be visible."
+"If [code]true[/code], sets the [code]step[/code] of the scrollbars to "
+"[code]0.25[/code] which results in smoother scrolling."
msgstr ""
-#: doc/classes/TextEdit.xml:472
+#: doc/classes/TextEdit.xml:428
msgid "String value of the [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:475
+#: doc/classes/TextEdit.xml:431
msgid "Vertical scroll sensitivity."
msgstr ""
-#: doc/classes/TextEdit.xml:478
+#: doc/classes/TextEdit.xml:437
msgid ""
"If [code]true[/code], enables text wrapping when it goes beyond the edge of "
"what is visible."
msgstr ""
-#: doc/classes/TextEdit.xml:486
+#: doc/classes/TextEdit.xml:445
msgid "Emitted when a breakpoint is placed via the breakpoint gutter."
msgstr ""
-#: doc/classes/TextEdit.xml:491
+#: doc/classes/TextEdit.xml:450
msgid "Emitted when the cursor changes."
msgstr ""
-#: doc/classes/TextEdit.xml:500
+#: doc/classes/TextEdit.xml:459
msgid "Emitted when the info icon is clicked."
msgstr ""
-#: doc/classes/TextEdit.xml:531
+#: doc/classes/TextEdit.xml:496
msgid "Match case when searching."
msgstr ""
-#: doc/classes/TextEdit.xml:534
+#: doc/classes/TextEdit.xml:499
msgid "Match whole words when searching."
msgstr ""
-#: doc/classes/TextEdit.xml:537
+#: doc/classes/TextEdit.xml:502
msgid "Search from end to beginning."
msgstr ""
-#: doc/classes/TextEdit.xml:546
+#: doc/classes/TextEdit.xml:511
msgid ""
"Pastes the clipboard text over the selected text (or at the cursor's "
"position)."
msgstr ""
-#: doc/classes/TextEdit.xml:549
+#: doc/classes/TextEdit.xml:514
msgid "Erases the whole [TextEdit] text."
msgstr ""
-#: doc/classes/TextEdit.xml:552
+#: doc/classes/TextEdit.xml:517
msgid "Selects the whole [TextEdit] text."
msgstr ""
-#: doc/classes/TextEdit.xml:558
+#: doc/classes/TextEdit.xml:523
msgid "Redoes the previous action."
msgstr ""
-#: doc/classes/TextEdit.xml:566
+#: doc/classes/TextEdit.xml:531
msgid ""
"Sets the background [Color] of this [TextEdit]. [member syntax_highlighting] "
"has to be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:569
+#: doc/classes/TextEdit.xml:534
msgid ""
"Sets the [Color] of the bookmark marker. [member syntax_highlighting] has to "
"be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:574 doc/classes/TextEdit.xml:601
+#: doc/classes/TextEdit.xml:539 doc/classes/TextEdit.xml:566
msgid ""
"Sets the [Color] of the breakpoints. [member breakpoint_gutter] has to be "
"enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:612
+#: doc/classes/TextEdit.xml:577
msgid "Sets the default [Font]."
msgstr ""
-#: doc/classes/TextEdit.xml:615
+#: doc/classes/TextEdit.xml:580
msgid "Sets the font [Color]."
msgstr ""
-#: doc/classes/TextEdit.xml:620
+#: doc/classes/TextEdit.xml:585
msgid ""
"Sets the [Color] of the selected text. [member override_selected_font_color] "
"has to be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:625
+#: doc/classes/TextEdit.xml:588
msgid ""
"Sets the [Color] of the line numbers. [member show_line_numbers] has to be "
"enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:628
+#: doc/classes/TextEdit.xml:591
msgid "Sets the spacing between the lines."
msgstr ""
-#: doc/classes/TextEdit.xml:631
+#: doc/classes/TextEdit.xml:594
msgid "Sets the [Color] of marked text."
msgstr ""
-#: doc/classes/TextEdit.xml:636
+#: doc/classes/TextEdit.xml:597
msgid "Sets the [StyleBox] of this [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:641
+#: doc/classes/TextEdit.xml:600
msgid ""
"Sets the [StyleBox] of this [TextEdit] when [member readonly] is enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:646
+#: doc/classes/TextEdit.xml:605
msgid "Sets the highlight [Color] of text selections."
msgstr ""
-#: doc/classes/TextEdit.xml:653
+#: doc/classes/TextEdit.xml:610
msgid "Sets a custom [Texture2D] for tab text characters."
msgstr ""
-#: doc/classes/TextEdit.xml:656
+#: doc/classes/TextEdit.xml:613
msgid ""
"Sets the highlight [Color] of multiple occurrences. [member "
"highlight_all_occurrences] has to be enabled."
@@ -49949,80 +50638,80 @@ msgid ""
"the texture will not scale with the node."
msgstr ""
-#: doc/classes/TextureButton.xml:19
+#: doc/classes/TextureButton.xml:25
msgid ""
"Controls the texture's behavior when you resize the node's bounding "
"rectangle, [b]only if[/b] [member expand] is [code]true[/code]. Set it to "
"one of the [enum StretchMode] constants. See the constants to learn more."
msgstr ""
-#: doc/classes/TextureButton.xml:22
+#: doc/classes/TextureButton.xml:28
msgid ""
"Pure black and white [BitMap] image to use for click detection. On the mask, "
"white pixels represent the button's clickable area. Use it to create buttons "
"with curved shapes."
msgstr ""
-#: doc/classes/TextureButton.xml:25
+#: doc/classes/TextureButton.xml:31
msgid ""
"Texture to display when the node is disabled. See [member BaseButton."
"disabled]."
msgstr ""
-#: doc/classes/TextureButton.xml:28
+#: doc/classes/TextureButton.xml:34
msgid "Texture to display when the node has mouse or keyboard focus."
msgstr ""
-#: doc/classes/TextureButton.xml:31
+#: doc/classes/TextureButton.xml:37
msgid "Texture to display when the mouse hovers the node."
msgstr ""
-#: doc/classes/TextureButton.xml:34
+#: doc/classes/TextureButton.xml:40
msgid ""
"Texture to display by default, when the node is [b]not[/b] in the disabled, "
"focused, hover or pressed state."
msgstr ""
-#: doc/classes/TextureButton.xml:37
+#: doc/classes/TextureButton.xml:43
msgid ""
"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 "
"[member BaseButton.shortcut] key."
msgstr ""
-#: doc/classes/TextureButton.xml:42 doc/classes/TextureRect.xml:36
+#: doc/classes/TextureButton.xml:48 doc/classes/TextureRect.xml:36
msgid "Scale to fit the node's bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:45 doc/classes/TextureRect.xml:39
+#: doc/classes/TextureButton.xml:51 doc/classes/TextureRect.xml:39
msgid "Tile inside the node's bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:48 doc/classes/TextureRect.xml:42
+#: doc/classes/TextureButton.xml:54 doc/classes/TextureRect.xml:42
msgid ""
"The texture keeps its original size and stays in the bounding rectangle's "
"top-left corner."
msgstr ""
-#: doc/classes/TextureButton.xml:51 doc/classes/TextureRect.xml:45
+#: doc/classes/TextureButton.xml:57 doc/classes/TextureRect.xml:45
msgid ""
"The texture keeps its original size and stays centered in the node's "
"bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:54 doc/classes/TextureRect.xml:48
+#: doc/classes/TextureButton.xml:60 doc/classes/TextureRect.xml:48
msgid ""
"Scale the texture to fit the node's bounding rectangle, but maintain the "
"texture's aspect ratio."
msgstr ""
-#: doc/classes/TextureButton.xml:57
+#: doc/classes/TextureButton.xml:63
msgid ""
"Scale the texture to fit the node's bounding rectangle, center it, and "
"maintain its aspect ratio."
msgstr ""
-#: doc/classes/TextureButton.xml:60 doc/classes/TextureRect.xml:54
+#: doc/classes/TextureButton.xml:66 doc/classes/TextureRect.xml:54
msgid ""
"Scale the texture so that the shorter side fits the bounding rectangle. The "
"other side clips to the node's limits."
@@ -50472,19 +51161,25 @@ msgid ""
"advised if working with shared objects."
msgstr ""
-#: doc/classes/Thread.xml:17
+#: doc/classes/Thread.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/threads/thread_safe_apis."
+"html"
+msgstr ""
+
+#: doc/classes/Thread.xml:18
msgid ""
"Returns the current [Thread]'s ID, uniquely identifying it among all threads."
msgstr ""
-#: doc/classes/Thread.xml:24
+#: doc/classes/Thread.xml:25
msgid ""
"Returns [code]true[/code] if this [Thread] is currently active. An active "
"[Thread] cannot start work on a new method but can be joined with [method "
"wait_to_finish]."
msgstr ""
-#: doc/classes/Thread.xml:39
+#: doc/classes/Thread.xml:40
msgid ""
"Starts a new [Thread] that runs [code]method[/code] on object "
"[code]instance[/code] with [code]userdata[/code] passed as an argument. Even "
@@ -50494,21 +51189,21 @@ msgid ""
"Returns [constant OK] on success, or [constant ERR_CANT_CREATE] on failure."
msgstr ""
-#: doc/classes/Thread.xml:47
+#: doc/classes/Thread.xml:48
msgid ""
"Joins the [Thread] and waits for it to finish. Returns what the method "
"called returned."
msgstr ""
-#: doc/classes/Thread.xml:53
+#: doc/classes/Thread.xml:54
msgid "A thread running with lower priority than normally."
msgstr ""
-#: doc/classes/Thread.xml:56
+#: doc/classes/Thread.xml:57
msgid "A thread with a standard priority."
msgstr ""
-#: doc/classes/Thread.xml:59
+#: doc/classes/Thread.xml:60
msgid "A thread running with higher priority than normally."
msgstr ""
@@ -51043,50 +51738,61 @@ msgid "Returns the [Transform2D] of a tile's shape."
msgstr ""
#: doc/classes/TileSet.xml:481
-msgid "Returns an array of the tile's shapes."
+msgid ""
+"Returns an array of dictionaries describing the tile's shapes.\n"
+"[b]Dictionary structure in the array returned by this method:[/b]\n"
+"[codeblock]\n"
+"{\n"
+" \"autotile_coord\": Vector2,\n"
+" \"one_way\": bool,\n"
+" \"one_way_margin\": int,\n"
+" \"shape\": CollisionShape2D,\n"
+" \"shape_transform\": Transform2D,\n"
+"}\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/TileSet.xml:490
+#: doc/classes/TileSet.xml:500
msgid "Returns the tile's texture."
msgstr ""
-#: doc/classes/TileSet.xml:499
+#: doc/classes/TileSet.xml:509
msgid "Returns the texture offset of the tile."
msgstr ""
-#: doc/classes/TileSet.xml:508
+#: doc/classes/TileSet.xml:518
msgid "Returns the tile's [enum TileMode]."
msgstr ""
-#: doc/classes/TileSet.xml:517
+#: doc/classes/TileSet.xml:527
msgid "Returns the tile's Z index (drawing layer)."
msgstr ""
-#: doc/classes/TileSet.xml:528
+#: doc/classes/TileSet.xml:538
msgid "Sets a light occluder for the tile."
msgstr ""
-#: doc/classes/TileSet.xml:539
+#: doc/classes/TileSet.xml:549
msgid "Sets the tile's material."
msgstr ""
-#: doc/classes/TileSet.xml:550
+#: doc/classes/TileSet.xml:560
msgid "Sets the tile's modulation color."
msgstr ""
-#: doc/classes/TileSet.xml:561
+#: doc/classes/TileSet.xml:571
msgid "Sets the tile's name."
msgstr ""
-#: doc/classes/TileSet.xml:572
+#: doc/classes/TileSet.xml:582
msgid "Sets the tile's navigation polygon."
msgstr ""
-#: doc/classes/TileSet.xml:583
+#: doc/classes/TileSet.xml:593
msgid "Sets an offset for the tile's navigation polygon."
msgstr ""
-#: doc/classes/TileSet.xml:594
+#: doc/classes/TileSet.xml:604
msgid ""
"Sets the tile's normal map texture.\n"
"[b]Note:[/b] Godot expects the normal map to use X+, Y-, and Z+ coordinates. "
@@ -51095,48 +51801,48 @@ msgid ""
"a comparison of normal map coordinates expected by popular engines."
msgstr ""
-#: doc/classes/TileSet.xml:606
+#: doc/classes/TileSet.xml:616
msgid "Sets an offset for the tile's light occluder."
msgstr ""
-#: doc/classes/TileSet.xml:617
+#: doc/classes/TileSet.xml:627
msgid ""
"Sets the tile's sub-region in the texture. This is common in texture atlases."
msgstr ""
-#: doc/classes/TileSet.xml:630
+#: doc/classes/TileSet.xml:640
msgid "Sets a shape for the tile, enabling collision."
msgstr ""
-#: doc/classes/TileSet.xml:643
+#: doc/classes/TileSet.xml:653
msgid "Sets the offset of a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:656
+#: doc/classes/TileSet.xml:666
msgid "Enables one-way collision on a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:681
+#: doc/classes/TileSet.xml:691
msgid "Sets a [Transform2D] on a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:692
+#: doc/classes/TileSet.xml:702
msgid "Sets an array of shapes for the tile, enabling collision."
msgstr ""
-#: doc/classes/TileSet.xml:703
+#: doc/classes/TileSet.xml:713
msgid "Sets the tile's texture."
msgstr ""
-#: doc/classes/TileSet.xml:714
+#: doc/classes/TileSet.xml:724
msgid "Sets the tile's texture offset."
msgstr ""
-#: doc/classes/TileSet.xml:725
+#: doc/classes/TileSet.xml:735
msgid "Sets the tile's [enum TileMode]."
msgstr ""
-#: doc/classes/TileSet.xml:736
+#: doc/classes/TileSet.xml:746
msgid "Sets the tile's drawing index."
msgstr ""
@@ -51147,14 +51853,16 @@ msgstr ""
#: doc/classes/Timer.xml:7
msgid ""
"Counts down a specified interval and emits a signal on reaching 0. Can be "
-"set to repeat or \"one-shot\" mode."
+"set to repeat or \"one-shot\" mode.\n"
+"[b]Note:[/b] To create an one-shot timer without instantiating a node, use "
+"[method SceneTree.create_timer]."
msgstr ""
-#: doc/classes/Timer.xml:16
+#: doc/classes/Timer.xml:17
msgid "Returns [code]true[/code] if the timer is stopped."
msgstr ""
-#: doc/classes/Timer.xml:25
+#: doc/classes/Timer.xml:26
msgid ""
"Starts the timer. Sets [code]wait_time[/code] to [code]time_sec[/code] if "
"[code]time_sec > 0[/code]. This also resets the remaining time to "
@@ -51162,11 +51870,11 @@ msgid ""
"[b]Note:[/b] this method will not resume a paused timer. See [member paused]."
msgstr ""
-#: doc/classes/Timer.xml:33
+#: doc/classes/Timer.xml:34
msgid "Stops the timer."
msgstr ""
-#: doc/classes/Timer.xml:39
+#: doc/classes/Timer.xml:40
msgid ""
"If [code]true[/code], the timer will automatically start when entering the "
"scene tree.\n"
@@ -51174,40 +51882,40 @@ msgid ""
"the timer enters the scene tree and starts."
msgstr ""
-#: doc/classes/Timer.xml:43
+#: doc/classes/Timer.xml:44
msgid ""
"If [code]true[/code], the timer will stop when reaching 0. If [code]false[/"
"code], it will restart."
msgstr ""
-#: doc/classes/Timer.xml:46
+#: doc/classes/Timer.xml:47
msgid ""
"If [code]true[/code], the timer is paused and will not process until it is "
"unpaused again, even if [method start] is called."
msgstr ""
-#: doc/classes/Timer.xml:49
+#: doc/classes/Timer.xml:50
msgid "Processing mode. See [enum TimerProcessMode]."
msgstr ""
-#: doc/classes/Timer.xml:52
+#: doc/classes/Timer.xml:53
msgid ""
"The timer's remaining time in seconds. Returns 0 if the timer is inactive.\n"
"[b]Note:[/b] You cannot set this value. To change the timer's remaining "
"time, use [method start]."
msgstr ""
-#: doc/classes/Timer.xml:56
+#: doc/classes/Timer.xml:57
msgid "Wait time in seconds."
msgstr ""
-#: doc/classes/Timer.xml:68
+#: doc/classes/Timer.xml:69
msgid ""
"Update the timer during the physics step at each frame (fixed framerate "
"processing)."
msgstr ""
-#: doc/classes/Timer.xml:71
+#: doc/classes/Timer.xml:72
msgid "Update the timer during the idle time at each frame."
msgstr ""
@@ -51286,60 +51994,66 @@ msgstr ""
#: doc/classes/Transform.xml:7
msgid ""
-"Represents one or many transformations in 3D space such as translation, "
-"rotation, or scaling. It consists of a [member basis] and an [member "
-"origin]. It is similar to a 3×4 matrix."
+"3×4 matrix (3 rows, 4 columns) used for 3D linear transformations. It can "
+"represent transformations such as translation, rotation, or scaling. It "
+"consists of a [member basis] (first 3 columns) and a [Vector3] for the "
+"[member origin] (last column).\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
msgstr ""
-#: doc/classes/Transform.xml:26
+#: doc/classes/Transform.xml:28
msgid ""
-"Constructs the Transform from four [Vector3]. Each axis corresponds to local "
-"basis vectors (some of which may be scaled)."
+"Constructs a Transform from four [Vector3] values (matrix columns). Each "
+"axis corresponds to local basis vectors (some of which may be scaled)."
msgstr ""
-#: doc/classes/Transform.xml:37
-msgid "Constructs the Transform from a [Basis] and [Vector3]."
+#: doc/classes/Transform.xml:39
+msgid "Constructs a Transform from a [Basis] and [Vector3]."
msgstr ""
-#: doc/classes/Transform.xml:46
-msgid "Constructs the Transform from a [Transform2D]."
+#: doc/classes/Transform.xml:48
+msgid "Constructs a Transform from a [Transform2D]."
msgstr ""
-#: doc/classes/Transform.xml:55
+#: doc/classes/Transform.xml:57
msgid ""
-"Constructs the Transform from a [Quat]. The origin will be Vector3(0, 0, 0)."
+"Constructs a Transform from a [Quat]. The origin will be [code]Vector3(0, 0, "
+"0)[/code]."
msgstr ""
-#: doc/classes/Transform.xml:64
+#: doc/classes/Transform.xml:66
msgid ""
"Constructs the Transform from a [Basis]. The origin will be Vector3(0, 0, 0)."
msgstr ""
-#: doc/classes/Transform.xml:71
+#: doc/classes/Transform.xml:73 doc/classes/Transform2D.xml:51
msgid ""
"Returns the inverse of the transform, under the assumption that the "
"transformation is composed of rotation, scaling and translation."
msgstr ""
-#: doc/classes/Transform.xml:82
-msgid "Interpolates the transform to other Transform by weight amount (0-1)."
+#: doc/classes/Transform.xml:84
+msgid ""
+"Interpolates the transform to other Transform by weight amount (on the range "
+"of 0.0 to 1.0)."
msgstr ""
-#: doc/classes/Transform.xml:89 doc/classes/Transform2D.xml:106
+#: doc/classes/Transform.xml:91
msgid ""
"Returns the inverse of the transform, under the assumption that the "
"transformation is composed of rotation and translation (no scaling, use "
"affine_inverse for transforms with scaling)."
msgstr ""
-#: doc/classes/Transform.xml:98 doc/classes/Transform2D.xml:115
+#: doc/classes/Transform.xml:100 doc/classes/Transform2D.xml:119
msgid ""
"Returns [code]true[/code] if this transform and [code]transform[/code] are "
"approximately equal, by calling [code]is_equal_approx[/code] on each "
"component."
msgstr ""
-#: doc/classes/Transform.xml:109
+#: doc/classes/Transform.xml:111
msgid ""
"Returns a copy of the transform rotated such that its -Z axis points towards "
"the [code]target[/code] position.\n"
@@ -51349,25 +52063,25 @@ msgid ""
"Operations take place in global space."
msgstr ""
-#: doc/classes/Transform.xml:118 doc/classes/Transform2D.xml:122
+#: doc/classes/Transform.xml:120
msgid ""
"Returns the transform with the basis orthogonal (90 degrees), and normalized "
"axis vectors."
msgstr ""
-#: doc/classes/Transform.xml:129
+#: doc/classes/Transform.xml:131
msgid ""
"Rotates the transform around the given axis by the given angle (in radians), "
"using matrix multiplication. The axis must be a normalized vector."
msgstr ""
-#: doc/classes/Transform.xml:138
+#: doc/classes/Transform.xml:140
msgid ""
"Scales basis and origin of the transform by the given scale factor, using "
"matrix multiplication."
msgstr ""
-#: doc/classes/Transform.xml:147 doc/classes/Transform2D.xml:149
+#: doc/classes/Transform.xml:149 doc/classes/Transform2D.xml:153
msgid ""
"Translates the transform by the given offset, relative to the transform's "
"basis vectors.\n"
@@ -51375,152 +52089,162 @@ msgid ""
"multiplication."
msgstr ""
-#: doc/classes/Transform.xml:157
+#: doc/classes/Transform.xml:159
msgid ""
"Transforms the given [Vector3], [Plane], [AABB], or [PackedVector3Array] by "
"this transform."
msgstr ""
-#: doc/classes/Transform.xml:166
+#: doc/classes/Transform.xml:168
msgid ""
"Inverse-transforms the given [Vector3], [Plane], [AABB], or "
"[PackedVector3Array] by this transform."
msgstr ""
-#: doc/classes/Transform.xml:172
+#: doc/classes/Transform.xml:174
msgid ""
"The basis is a matrix containing 3 [Vector3] as its columns: X axis, Y axis, "
"and Z axis. These vectors can be interpreted as the basis vectors of local "
"coordinate system traveling with the object."
msgstr ""
-#: doc/classes/Transform.xml:175
-msgid "The translation offset of the transform."
+#: doc/classes/Transform.xml:177
+msgid ""
+"The translation offset of the transform (column 3, the fourth column). "
+"Equivalent to array index [code]3[/code]."
msgstr ""
-#: doc/classes/Transform.xml:180
+#: doc/classes/Transform.xml:182
msgid ""
"[Transform] with no translation, rotation or scaling applied. When applied "
"to other data structures, [constant IDENTITY] performs no transformation."
msgstr ""
-#: doc/classes/Transform.xml:183
+#: doc/classes/Transform.xml:185
msgid "[Transform] with mirroring applied perpendicular to the YZ plane."
msgstr ""
-#: doc/classes/Transform.xml:186
+#: doc/classes/Transform.xml:188
msgid "[Transform] with mirroring applied perpendicular to the XZ plane."
msgstr ""
-#: doc/classes/Transform.xml:189
+#: doc/classes/Transform.xml:191
msgid "[Transform] with mirroring applied perpendicular to the XY plane."
msgstr ""
#: doc/classes/Transform2D.xml:4
-msgid "2D transformation (3×2 matrix)."
+msgid "2D transformation (2×3 matrix)."
msgstr ""
#: doc/classes/Transform2D.xml:7
msgid ""
-"Represents one or many transformations in 2D space such as translation, "
-"rotation, or scaling. It consists of two [member x] and [member y] "
-"[Vector2]s and an [member origin]. It is similar to a 3×2 matrix."
+"2×3 matrix (2 rows, 3 columns) used for 2D linear transformations. It can "
+"represent transformations such as translation, rotation, or scaling. It "
+"consists of a three [Vector2] values: [member x], [member y], and the "
+"[member origin].\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
msgstr ""
-#: doc/classes/Transform2D.xml:18
+#: doc/classes/Transform2D.xml:20
msgid "Constructs the transform from a 3D [Transform]."
msgstr ""
-#: doc/classes/Transform2D.xml:31
+#: doc/classes/Transform2D.xml:33
msgid ""
-"Constructs the transform from 3 [Vector2]s representing x, y, and origin."
+"Constructs the transform from 3 [Vector2] values representing [member x], "
+"[member y], and the [member origin] (the three column vectors)."
msgstr ""
-#: doc/classes/Transform2D.xml:42
+#: doc/classes/Transform2D.xml:44
msgid "Constructs the transform from a given angle (in radians) and position."
msgstr ""
-#: doc/classes/Transform2D.xml:58
-msgid "Transforms the given vector by this transform's basis (no translation)."
+#: doc/classes/Transform2D.xml:60
+msgid ""
+"Returns a vector transformed (multiplied) by the basis matrix.\n"
+"This method does not account for translation (the origin vector)."
msgstr ""
-#: doc/classes/Transform2D.xml:67
+#: doc/classes/Transform2D.xml:70
msgid ""
-"Inverse-transforms the given vector by this transform's basis (no "
-"translation)."
+"Returns a vector transformed (multiplied) by the inverse basis matrix.\n"
+"This method does not account for translation (the origin vector)."
msgstr ""
-#: doc/classes/Transform2D.xml:74
+#: doc/classes/Transform2D.xml:78
msgid "Returns the transform's origin (translation)."
msgstr ""
-#: doc/classes/Transform2D.xml:81
+#: doc/classes/Transform2D.xml:85
msgid "Returns the transform's rotation (in radians)."
msgstr ""
-#: doc/classes/Transform2D.xml:88
+#: doc/classes/Transform2D.xml:92
msgid "Returns the scale."
msgstr ""
-#: doc/classes/Transform2D.xml:99
+#: doc/classes/Transform2D.xml:103
msgid ""
"Returns a transform interpolated between this transform and another by a "
-"given weight (0-1)."
+"given weight (on the range of 0.0 to 1.0)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:110
+msgid ""
+"Returns the inverse of the transform, under the assumption that the "
+"transformation is composed of rotation and translation (no scaling, use "
+"[method affine_inverse] for transforms with scaling)."
msgstr ""
-#: doc/classes/Transform2D.xml:131
+#: doc/classes/Transform2D.xml:126
+msgid ""
+"Returns the transform with the basis orthogonal (90 degrees), and normalized "
+"axis vectors (scale of 1 or -1)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:135
msgid ""
"Rotates the transform by the given angle (in radians), using matrix "
"multiplication."
msgstr ""
-#: doc/classes/Transform2D.xml:140
+#: doc/classes/Transform2D.xml:144
msgid ""
"Scales the transform by the given scale factor, using matrix multiplication."
msgstr ""
-#: doc/classes/Transform2D.xml:159
+#: doc/classes/Transform2D.xml:163
msgid ""
"Transforms the given [Vector2], [Rect2], or [PackedVector2Array] by this "
"transform."
msgstr ""
-#: doc/classes/Transform2D.xml:168
+#: doc/classes/Transform2D.xml:172
msgid ""
"Inverse-transforms the given [Vector2], [Rect2], or [PackedVector2Array] by "
"this transform."
msgstr ""
-#: doc/classes/Transform2D.xml:174
-msgid "The transform's translation offset."
-msgstr ""
-
-#: doc/classes/Transform2D.xml:177
-msgid ""
-"The X axis of 2×2 basis matrix containing 2 [Vector2]s as its columns: X "
-"axis and Y axis. These vectors can be interpreted as the basis vectors of "
-"local coordinate system traveling with the object."
-msgstr ""
-
-#: doc/classes/Transform2D.xml:180
+#: doc/classes/Transform2D.xml:178
msgid ""
-"The Y axis of 2×2 basis matrix containing 2 [Vector2]s as its columns: X "
-"axis and Y axis. These vectors can be interpreted as the basis vectors of "
-"local coordinate system traveling with the object."
+"The origin vector (column 2, the third column). Equivalent to array index "
+"[code]2[/code]. The origin vector represents translation."
msgstr ""
-#: doc/classes/Transform2D.xml:185
+#: doc/classes/Transform2D.xml:189
msgid ""
-"[Transform2D] with no translation, rotation or scaling applied. When applied "
-"to other data structures, [constant IDENTITY] performs no transformation."
+"The identity [Transform2D] with no translation, rotation or scaling applied. "
+"When applied to other data structures, [constant IDENTITY] performs no "
+"transformation."
msgstr ""
-#: doc/classes/Transform2D.xml:188
-msgid "[Transform2D] with mirroring applied parallel to the X axis."
+#: doc/classes/Transform2D.xml:192
+msgid "The [Transform2D] that will flip something along the X axis."
msgstr ""
-#: doc/classes/Transform2D.xml:191
-msgid "[Transform2D] with mirroring applied parallel to the Y axis."
+#: doc/classes/Transform2D.xml:195
+msgid "The [Transform2D] that will flip something along the Y axis."
msgstr ""
#: doc/classes/Translation.xml:4
@@ -52184,7 +52908,8 @@ msgid "Returns the column's cell mode."
msgstr ""
#: doc/classes/TreeItem.xml:121
-msgid "Returns the TreeItem's child items."
+msgid ""
+"Returns the TreeItem's first child item or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:130
@@ -52216,28 +52941,32 @@ msgid "Returns the icon [Texture2D] region as [Rect2]."
msgstr ""
#: doc/classes/TreeItem.xml:199
-msgid "Returns the next TreeItem in the tree."
+msgid ""
+"Returns the next TreeItem in the tree or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:208
msgid ""
-"Returns the next visible TreeItem in the tree.\n"
+"Returns the next visible TreeItem in the tree or a null object if there is "
+"none.\n"
"If [code]wrap[/code] is enabled, the method will wrap around to the first "
"visible element in the tree when called on the last visible element, "
"otherwise it returns [code]null[/code]."
msgstr ""
#: doc/classes/TreeItem.xml:216
-msgid "Returns the parent TreeItem."
+msgid "Returns the parent TreeItem or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:223
-msgid "Returns the previous TreeItem in the tree."
+msgid ""
+"Returns the previous TreeItem in the tree or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:232
msgid ""
-"Returns the previous visible TreeItem in the tree.\n"
+"Returns the previous visible TreeItem in the tree or a null object if there "
+"is none.\n"
"If [code]wrap[/code] is enabled, the method will wrap around to the last "
"visible element in the tree when called on the first visible element, "
"otherwise it returns [code]null[/code]."
@@ -52747,6 +53476,10 @@ msgid ""
"A simple server that opens a UDP socket and returns connected "
"[PacketPeerUDP] upon receiving new packets. See also [method PacketPeerUDP."
"connect_to_host].\n"
+"After starting the server ([method listen]), you will need to [method poll] "
+"it at regular intervals (e.g. inside [method Node._process]) for it to "
+"process new packets, delivering them to the appropriate [PacketPeerUDP], and "
+"taking new connections.\n"
"Below a small example of how it can be used:\n"
"[codeblock]\n"
"# server.gd\n"
@@ -52759,6 +53492,7 @@ msgid ""
" server.listen(4242)\n"
"\n"
"func _process(delta):\n"
+" server.poll() # Important!\n"
" if server.is_connection_available():\n"
" var peer : PacketPeerUDP = server.take_connection()\n"
" var pkt = peer.get_packet()\n"
@@ -52794,35 +53528,55 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/UDPServer.xml:60
+#: doc/classes/UDPServer.xml:62
msgid ""
-"Returns [code]true[/code] if a packet with a new address/port combination is "
-"received on the socket."
+"Returns [code]true[/code] if a packet with a new address/port combination "
+"was received on the socket."
msgstr ""
-#: doc/classes/UDPServer.xml:67
+#: doc/classes/UDPServer.xml:69
msgid ""
"Returns [code]true[/code] if the socket is open and listening on a port."
msgstr ""
-#: doc/classes/UDPServer.xml:78
+#: doc/classes/UDPServer.xml:80
msgid ""
"Starts the server by opening a UDP socket listening on the given port. You "
"can optionally specify a [code]bind_address[/code] to only listen for "
"packets sent to that address. See also [method PacketPeerUDP.listen]."
msgstr ""
-#: doc/classes/UDPServer.xml:85
+#: doc/classes/UDPServer.xml:87
+msgid ""
+"Call this method at regular intervals (e.g. inside [method Node._process]) "
+"to process new packets. And packet from known address/port pair will be "
+"delivered to the appropriate [PacketPeerUDP], any packet received from an "
+"unknown address/port pair will be added as a pending connection (see [method "
+"is_connection_available], [method take_connection]). The maximum number of "
+"pending connection is defined via [member max_pending_connections]."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:94
+msgid ""
+"Stops the server, closing the UDP socket if open. Will close all connected "
+"[PacketPeerUDP] accepted via [method take_connection] (remote peers will not "
+"be notified)."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:101
msgid ""
-"Stops the server, closing the UDP socket if open. Will not disconnect any "
-"connected [PacketPeerUDP]."
+"Returns the first pending connection (connected to the appropriate address/"
+"port). Will return [code]null[/code] if no new connection is available. See "
+"also [method is_connection_available], [method PacketPeerUDP."
+"connect_to_host]."
msgstr ""
-#: doc/classes/UDPServer.xml:92
+#: doc/classes/UDPServer.xml:107
msgid ""
-"Returns a [PacketPeerUDP] connected to the address/port combination of the "
-"first packet in queue. Will return [code]null[/code] if no packet is in "
-"queue. See also [method PacketPeerUDP.connect_to_host]."
+"Define the maximum number of pending connections, during [method poll], any "
+"new pending connection exceeding that value will be automatically dropped. "
+"Setting this value to [code]0[/code] effectively prevents any new pending "
+"connection to be accepted (e.g. when all your players have connected)."
msgstr ""
#: doc/classes/UndoRedo.xml:4
@@ -53463,24 +54217,26 @@ msgstr ""
#: doc/classes/Vector2.xml:46
msgid ""
-"Returns the vector's angle in radians with respect to the X axis, or [code]"
-"(1, 0)[/code] vector.\n"
+"Returns this vector's angle with respect to the X axis, or [code](1, 0)[/"
+"code] vector, in radians.\n"
"Equivalent to the result of [method @GDScript.atan2] when called with the "
-"vector's [member x] and [member y] as parameters: [code]atan2(x, y)[/code]."
+"vector's [member y] and [member x] as parameters: [code]atan2(y, x)[/code]."
msgstr ""
#: doc/classes/Vector2.xml:56
-msgid "Returns the angle in radians between the two vectors."
+msgid "Returns the angle to the given vector, in radians."
msgstr ""
#: doc/classes/Vector2.xml:65
msgid ""
-"Returns the angle in radians between the line connecting the two points and "
-"the X coordinate."
+"Returns the angle between the line connecting the two points and the X axis, "
+"in radians."
msgstr ""
-#: doc/classes/Vector2.xml:72 doc/classes/Vector2i.xml:46
-msgid "Returns the ratio of [member x] to [member y]."
+#: doc/classes/Vector2.xml:72
+msgid ""
+"Returns the aspect ratio of this vector, the ratio of [member x] to [member "
+"y]."
msgstr ""
#: doc/classes/Vector2.xml:81 doc/classes/Vector3.xml:59
@@ -53489,24 +54245,27 @@ msgid ""
msgstr ""
#: doc/classes/Vector2.xml:88
-msgid "Returns the vector with all components rounded up."
+msgid ""
+"Returns the vector with all components rounded up (towards positive "
+"infinity)."
msgstr ""
#: doc/classes/Vector2.xml:97
-msgid "Returns the vector with a maximum length."
+msgid ""
+"Returns the vector with a maximum length by limiting its length to "
+"[code]length[/code]."
msgstr ""
#: doc/classes/Vector2.xml:106
-msgid ""
-"Returns the 2-dimensional analog of the cross product with the given vector."
+msgid "Returns the cross product of this vector and [code]with[/code]."
msgstr ""
#: doc/classes/Vector2.xml:121
msgid ""
"Cubically interpolates between this vector and [code]b[/code] using "
"[code]pre_a[/code] and [code]post_b[/code] as handles, and returns the "
-"result at position [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation."
+"result at position [code]t[/code]. [code]t[/code] is on the range of 0.0 to "
+"1.0, representing the amount of interpolation."
msgstr ""
#: doc/classes/Vector2.xml:130 doc/classes/Vector3.xml:99
@@ -53514,182 +54273,198 @@ msgid ""
"Returns the normalized vector pointing from this vector to [code]b[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:139
+#: doc/classes/Vector2.xml:139 doc/classes/Vector3.xml:108
msgid ""
-"Returns the squared distance to vector [code]b[/code]. Prefer this function "
-"over [method distance_to] if you need to sort vectors or need the squared "
-"distance for some formula."
+"Returns the squared distance between this vector and [code]b[/code].\n"
+"This method runs faster than [method distance_to], so prefer it if you need "
+"to compare vectors or need the squared distance for some formula."
msgstr ""
-#: doc/classes/Vector2.xml:148
-msgid "Returns the distance to vector [code]b[/code]."
+#: doc/classes/Vector2.xml:149
+msgid "Returns the distance between this vector and [code]to[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:157
-msgid "Returns the dot product with vector [code]b[/code]."
+#: doc/classes/Vector2.xml:158
+msgid ""
+"Returns the dot product of this vector and [code]with[/code]. This can be "
+"used to compare the angle between two vectors. For example, this can be used "
+"to determine whether an enemy is facing the player.\n"
+"The dot product will be [code]0[/code] for a straight angle (90 degrees), "
+"greater than 0 for angles narrower than 90 degrees and lower than 0 for "
+"angles wider than 90 degrees.\n"
+"When using unit (normalized) vectors, the result will always be between "
+"[code]-1.0[/code] (180 degree angle) when the vectors are facing opposite "
+"directions, and [code]1.0[/code] (0 degree angle) when the vectors are "
+"aligned.\n"
+"[b]Note:[/b] [code]a.dot(b)[/code] is equivalent to [code]b.dot(a)[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:164
-msgid "Returns the vector with all components rounded down."
+#: doc/classes/Vector2.xml:168
+msgid ""
+"Returns the vector with all components rounded down (towards negative "
+"infinity)."
msgstr ""
-#: doc/classes/Vector2.xml:173 doc/classes/Vector3.xml:149
+#: doc/classes/Vector2.xml:177 doc/classes/Vector3.xml:153
msgid ""
"Returns [code]true[/code] if this vector and [code]v[/code] are "
"approximately equal, by running [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/Vector2.xml:180 doc/classes/Vector3.xml:156
-msgid "Returns [code]true[/code] if the vector is normalized."
+#: doc/classes/Vector2.xml:184 doc/classes/Vector3.xml:160
+msgid ""
+"Returns [code]true[/code] if the vector is normalized, and false otherwise."
msgstr ""
-#: doc/classes/Vector2.xml:187 doc/classes/Vector3.xml:163
-msgid "Returns the vector's length."
+#: doc/classes/Vector2.xml:191 doc/classes/Vector3.xml:167
+msgid "Returns the length (magnitude) of this vector."
msgstr ""
-#: doc/classes/Vector2.xml:194
+#: doc/classes/Vector2.xml:198 doc/classes/Vector3.xml:174
msgid ""
-"Returns the vector's length squared. Prefer this method over [method length] "
-"if you need to sort vectors or need the squared length for some formula."
+"Returns the squared length (squared magnitude) of this vector.\n"
+"This method runs faster than [method length], so prefer it if you need to "
+"compare vectors or need the squared distance for some formula."
msgstr ""
-#: doc/classes/Vector2.xml:205
+#: doc/classes/Vector2.xml:210 doc/classes/Vector3.xml:186
msgid ""
"Returns the result of the linear interpolation between this vector and "
-"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation."
+"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is on the range of "
+"0.0 to 1.0, representing the amount of interpolation."
msgstr ""
-#: doc/classes/Vector2.xml:216 doc/classes/Vector3.xml:206
+#: doc/classes/Vector2.xml:221
msgid ""
"Moves the vector toward [code]to[/code] by the fixed [code]delta[/code] "
"amount."
msgstr ""
-#: doc/classes/Vector2.xml:223 doc/classes/Vector3.xml:213
+#: doc/classes/Vector2.xml:228 doc/classes/Vector3.xml:218
msgid ""
"Returns the vector scaled to unit length. Equivalent to [code]v / v.length()"
"[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:232 doc/classes/Vector3.xml:231
+#: doc/classes/Vector2.xml:237 doc/classes/Vector3.xml:236
msgid ""
-"Returns a vector composed of the [code]fposmod[/code] of this vector's "
+"Returns a vector composed of the [method @GDScript.fposmod] of this vector's "
"components and [code]mod[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:241 doc/classes/Vector3.xml:240
+#: doc/classes/Vector2.xml:246 doc/classes/Vector3.xml:245
msgid ""
-"Returns a vector composed of the [code]fposmod[/code] of this vector's "
+"Returns a vector composed of the [method @GDScript.fposmod] of this vector's "
"components and [code]modv[/code]'s components."
msgstr ""
-#: doc/classes/Vector2.xml:250 doc/classes/Vector3.xml:249
+#: doc/classes/Vector2.xml:255
msgid "Returns the vector projected onto the vector [code]b[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:259 doc/classes/Vector3.xml:258
+#: doc/classes/Vector2.xml:264
msgid "Returns the vector reflected from a plane defined by the given normal."
msgstr ""
-#: doc/classes/Vector2.xml:268
+#: doc/classes/Vector2.xml:273
msgid ""
"Returns the vector rotated by [code]phi[/code] radians. See also [method "
"@GDScript.deg2rad]."
msgstr ""
-#: doc/classes/Vector2.xml:275 doc/classes/Vector3.xml:276
+#: doc/classes/Vector2.xml:280
msgid ""
"Returns the vector with all components rounded to the nearest integer, with "
"halfway cases rounded away from zero."
msgstr ""
-#: doc/classes/Vector2.xml:282 doc/classes/Vector2i.xml:53
-#: doc/classes/Vector3.xml:283 doc/classes/Vector3i.xml:55
+#: doc/classes/Vector2.xml:287
msgid ""
"Returns the vector with each component set to one or negative one, depending "
-"on the signs of the components."
+"on the signs of the components, or zero if the component is zero, by calling "
+"[method @GDScript.sign] on each component."
msgstr ""
-#: doc/classes/Vector2.xml:293 doc/classes/Vector3.xml:294
+#: doc/classes/Vector2.xml:298 doc/classes/Vector3.xml:299
msgid ""
"Returns the result of spherical linear interpolation between this vector and "
-"[code]b[/code], by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation.\n"
+"[code]b[/code], by amount [code]t[/code]. [code]t[/code] is on the range of "
+"0.0 to 1.0, representing the amount of interpolation.\n"
"[b]Note:[/b] Both vectors must be normalized."
msgstr ""
-#: doc/classes/Vector2.xml:303 doc/classes/Vector3.xml:304
-msgid ""
-"Returns the component of the vector along a plane defined by the given "
-"normal."
+#: doc/classes/Vector2.xml:308 doc/classes/Vector3.xml:309
+msgid "Returns this vector slid along a plane defined by the given normal."
msgstr ""
-#: doc/classes/Vector2.xml:312 doc/classes/Vector3.xml:313
-msgid "Returns the vector snapped to a grid with the given size."
+#: doc/classes/Vector2.xml:317 doc/classes/Vector3.xml:318
+msgid ""
+"Returns this vector with each component snapped to the nearest multiple of "
+"[code]step[/code]. This can also be used to round to an arbitrary number of "
+"decimals."
msgstr ""
-#: doc/classes/Vector2.xml:319
-msgid "Returns a perpendicular vector."
+#: doc/classes/Vector2.xml:324
+msgid ""
+"Returns a perpendicular vector rotated 90 degrees counter-clockwise compared "
+"to the original, with the same length."
msgstr ""
-#: doc/classes/Vector2.xml:325 doc/classes/Vector2i.xml:59
-#: doc/classes/Vector3.xml:326 doc/classes/Vector3i.xml:61
+#: doc/classes/Vector2.xml:330 doc/classes/Vector2i.xml:59
+#: doc/classes/Vector3.xml:332 doc/classes/Vector3i.xml:61
msgid ""
"The vector's X component. Also accessible by using the index position [code]"
"[0][/code]."
msgstr ""
-#: doc/classes/Vector2.xml:328 doc/classes/Vector2i.xml:62
-#: doc/classes/Vector3.xml:329 doc/classes/Vector3i.xml:64
+#: doc/classes/Vector2.xml:333 doc/classes/Vector2i.xml:62
+#: doc/classes/Vector3.xml:335 doc/classes/Vector3i.xml:64
msgid ""
"The vector's Y component. Also accessible by using the index position [code]"
"[1][/code]."
msgstr ""
-#: doc/classes/Vector2.xml:333 doc/classes/Vector2i.xml:67
+#: doc/classes/Vector2.xml:338 doc/classes/Vector2i.xml:67
#: doc/classes/Vector3i.xml:72
msgid "Enumerated value for the X axis."
msgstr ""
-#: doc/classes/Vector2.xml:336 doc/classes/Vector2i.xml:70
+#: doc/classes/Vector2.xml:341 doc/classes/Vector2i.xml:70
#: doc/classes/Vector3i.xml:75
msgid "Enumerated value for the Y axis."
msgstr ""
-#: doc/classes/Vector2.xml:339 doc/classes/Vector2i.xml:73
-#: doc/classes/Vector3.xml:346 doc/classes/Vector3i.xml:81
-msgid "Zero vector."
+#: doc/classes/Vector2.xml:344 doc/classes/Vector2i.xml:73
+#: doc/classes/Vector3.xml:352 doc/classes/Vector3i.xml:81
+msgid "Zero vector, a vector with all components set to [code]0[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:342 doc/classes/Vector2i.xml:76
-#: doc/classes/Vector3.xml:349 doc/classes/Vector3i.xml:84
-msgid "One vector."
+#: doc/classes/Vector2.xml:347 doc/classes/Vector2i.xml:76
+#: doc/classes/Vector3.xml:355 doc/classes/Vector3i.xml:84
+msgid "One vector, a vector with all components set to [code]1[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:345 doc/classes/Vector3.xml:352
-msgid "Infinity vector."
+#: doc/classes/Vector2.xml:350 doc/classes/Vector3.xml:358
+msgid ""
+"Infinity vector, a vector with all components set to [constant @GDScript."
+"INF]."
msgstr ""
-#: doc/classes/Vector2.xml:348 doc/classes/Vector2i.xml:79
-#: doc/classes/Vector3.xml:355 doc/classes/Vector3i.xml:87
-msgid "Left unit vector."
+#: doc/classes/Vector2.xml:353 doc/classes/Vector2i.xml:79
+msgid "Left unit vector. Represents the direction of left."
msgstr ""
-#: doc/classes/Vector2.xml:351 doc/classes/Vector2i.xml:82
-#: doc/classes/Vector3.xml:358 doc/classes/Vector3i.xml:90
-msgid "Right unit vector."
+#: doc/classes/Vector2.xml:356 doc/classes/Vector2i.xml:82
+msgid "Right unit vector. Represents the direction of right."
msgstr ""
-#: doc/classes/Vector2.xml:354 doc/classes/Vector2i.xml:85
-#: doc/classes/Vector3.xml:361 doc/classes/Vector3i.xml:93
-msgid "Up unit vector."
+#: doc/classes/Vector2.xml:359 doc/classes/Vector2i.xml:85
+msgid "Up unit vector. Y is down in 2D, so this vector points -Y."
msgstr ""
-#: doc/classes/Vector2.xml:357 doc/classes/Vector2i.xml:88
-#: doc/classes/Vector3.xml:364 doc/classes/Vector3i.xml:96
-msgid "Down unit vector."
+#: doc/classes/Vector2.xml:362 doc/classes/Vector2i.xml:88
+msgid "Down unit vector. Y is down in 2D, so this vector points +Y."
msgstr ""
#: doc/classes/Vector2i.xml:4
@@ -53718,6 +54493,16 @@ msgid ""
"will be truncated."
msgstr ""
+#: doc/classes/Vector2i.xml:46
+msgid "Returns the ratio of [member x] to [member y]."
+msgstr ""
+
+#: doc/classes/Vector2i.xml:53 doc/classes/Vector3i.xml:55
+msgid ""
+"Returns the vector with each component set to one or negative one, depending "
+"on the signs of the components."
+msgstr ""
+
#: doc/classes/Vector3.xml:4
msgid "Vector used for 3D math using floating point coordinates."
msgstr ""
@@ -53742,120 +54527,170 @@ msgid "Returns a [Vector3] with the given components."
msgstr ""
#: doc/classes/Vector3.xml:50
-msgid "Returns the minimum angle to the given vector."
+msgid "Returns the minimum angle to the given vector, in radians."
msgstr ""
#: doc/classes/Vector3.xml:66
-msgid "Returns a new vector with all components rounded up."
+msgid ""
+"Returns a new vector with all components rounded up (towards positive "
+"infinity)."
msgstr ""
#: doc/classes/Vector3.xml:75
-msgid "Returns the cross product with [code]b[/code]."
+msgid "Returns the cross product of this vector and [code]b[/code]."
msgstr ""
#: doc/classes/Vector3.xml:90
msgid ""
"Performs a cubic interpolation between vectors [code]pre_a[/code], [code]a[/"
"code], [code]b[/code], [code]post_b[/code] ([code]a[/code] is current), by "
-"the given amount [code]t[/code]. [code]t[/code] is in the range of [code]0.0 "
-"- 1.0[/code], representing the amount of interpolation."
-msgstr ""
-
-#: doc/classes/Vector3.xml:108
-msgid ""
-"Returns the squared distance to [code]b[/code]. Prefer this function over "
-"[method distance_to] if you need to sort vectors or need the squared "
-"distance for some formula."
+"the given amount [code]t[/code]. [code]t[/code] is on the range of 0.0 to "
+"1.0, representing the amount of interpolation."
msgstr ""
-#: doc/classes/Vector3.xml:117
-msgid "Returns the distance to [code]b[/code]."
+#: doc/classes/Vector3.xml:118
+msgid "Returns the distance between this vector and [code]b[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:126
-msgid "Returns the dot product with [code]b[/code]."
+#: doc/classes/Vector3.xml:127
+msgid ""
+"Returns the dot product of this vector and [code]b[/code]. This can be used "
+"to compare the angle between two vectors. For example, this can be used to "
+"determine whether an enemy is facing the player.\n"
+"The dot product will be [code]0[/code] for a straight angle (90 degrees), "
+"greater than 0 for angles narrower than 90 degrees and lower than 0 for "
+"angles wider than 90 degrees.\n"
+"When using unit (normalized) vectors, the result will always be between "
+"[code]-1.0[/code] (180 degree angle) when the vectors are facing opposite "
+"directions, and [code]1.0[/code] (0 degree angle) when the vectors are "
+"aligned.\n"
+"[b]Note:[/b] [code]a.dot(b)[/code] is equivalent to [code]b.dot(a)[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:133
-msgid "Returns a new vector with all components rounded down."
+#: doc/classes/Vector3.xml:137
+msgid ""
+"Returns a new vector with all components rounded down (towards negative "
+"infinity)."
msgstr ""
-#: doc/classes/Vector3.xml:140
+#: doc/classes/Vector3.xml:144
msgid ""
"Returns the inverse of the vector. This is the same as [code]Vector3( 1.0 / "
"v.x, 1.0 / v.y, 1.0 / v.z )[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:170
+#: doc/classes/Vector3.xml:193 doc/classes/Vector3i.xml:41
msgid ""
-"Returns the vector's length squared. Prefer this function over [method "
-"length] if you need to sort vectors or need the squared length for some "
-"formula."
+"Returns the axis of the vector's largest value. See [code]AXIS_*[/code] "
+"constants. If all components are equal, this method returns [constant "
+"AXIS_X]."
msgstr ""
-#: doc/classes/Vector3.xml:181
+#: doc/classes/Vector3.xml:200 doc/classes/Vector3i.xml:48
msgid ""
-"Returns the result of the linear interpolation between this vector and "
-"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation.."
+"Returns the axis of the vector's smallest value. See [code]AXIS_*[/code] "
+"constants. If all components are equal, this method returns [constant "
+"AXIS_Z]."
msgstr ""
-#: doc/classes/Vector3.xml:188 doc/classes/Vector3i.xml:41
+#: doc/classes/Vector3.xml:211
msgid ""
-"Returns the axis of the vector's largest value. See [code]AXIS_*[/code] "
-"constants."
+"Moves this vector toward [code]to[/code] by the fixed [code]delta[/code] "
+"amount."
msgstr ""
-#: doc/classes/Vector3.xml:195 doc/classes/Vector3i.xml:48
+#: doc/classes/Vector3.xml:227
+msgid "Returns the outer product with [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:254
+msgid "Returns this vector projected onto another vector [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:263
+msgid "Returns this vector reflected from a plane defined by the given normal."
+msgstr ""
+
+#: doc/classes/Vector3.xml:274
msgid ""
-"Returns the axis of the vector's smallest value. See [code]AXIS_*[/code] "
-"constants."
+"Rotates this vector around a given axis by [code]phi[/code] radians. The "
+"axis must be a normalized vector."
msgstr ""
-#: doc/classes/Vector3.xml:222
-msgid "Returns the outer product with [code]b[/code]."
+#: doc/classes/Vector3.xml:281
+msgid ""
+"Returns this vector with all components rounded to the nearest integer, with "
+"halfway cases rounded away from zero."
msgstr ""
-#: doc/classes/Vector3.xml:269
+#: doc/classes/Vector3.xml:288
msgid ""
-"Rotates the vector around a given axis by [code]phi[/code] radians. The axis "
-"must be a normalized vector."
+"Returns a vector with each component set to one or negative one, depending "
+"on the signs of this vector's components, or zero if the component is zero, "
+"by calling [method @GDScript.sign] on each component."
msgstr ""
-#: doc/classes/Vector3.xml:320
-msgid "Returns a diagonal matrix with the vector as main diagonal."
+#: doc/classes/Vector3.xml:325
+msgid ""
+"Returns a diagonal matrix with the vector as main diagonal.\n"
+"This is equivalent to a Basis with no rotation or shearing and this vector's "
+"components set as the scale."
msgstr ""
-#: doc/classes/Vector3.xml:332 doc/classes/Vector3i.xml:67
+#: doc/classes/Vector3.xml:338 doc/classes/Vector3i.xml:67
msgid ""
"The vector's Z component. Also accessible by using the index position [code]"
"[2][/code]."
msgstr ""
-#: doc/classes/Vector3.xml:337
+#: doc/classes/Vector3.xml:343
msgid ""
"Enumerated value for the X axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:340
+#: doc/classes/Vector3.xml:346
msgid ""
"Enumerated value for the Y axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:343
+#: doc/classes/Vector3.xml:349
msgid ""
"Enumerated value for the Z axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:367 doc/classes/Vector3i.xml:99
-msgid "Forward unit vector."
+#: doc/classes/Vector3.xml:361 doc/classes/Vector3i.xml:87
+msgid ""
+"Left unit vector. Represents the local direction of left, and the global "
+"direction of west."
msgstr ""
-#: doc/classes/Vector3.xml:370 doc/classes/Vector3i.xml:102
-msgid "Back unit vector."
+#: doc/classes/Vector3.xml:364 doc/classes/Vector3i.xml:90
+msgid ""
+"Right unit vector. Represents the local direction of right, and the global "
+"direction of east."
+msgstr ""
+
+#: doc/classes/Vector3.xml:367 doc/classes/Vector3i.xml:93
+msgid "Up unit vector."
+msgstr ""
+
+#: doc/classes/Vector3.xml:370 doc/classes/Vector3i.xml:96
+msgid "Down unit vector."
+msgstr ""
+
+#: doc/classes/Vector3.xml:373 doc/classes/Vector3i.xml:99
+msgid ""
+"Forward unit vector. Represents the local direction of forward, and the "
+"global direction of north."
+msgstr ""
+
+#: doc/classes/Vector3.xml:376 doc/classes/Vector3i.xml:102
+msgid ""
+"Back unit vector. Represents the local direction of back, and the global "
+"direction of south."
msgstr ""
#: doc/classes/Vector3i.xml:4
@@ -53904,10 +54739,14 @@ msgid ""
"directly.\n"
"[b]Note:[/b] The origin point of your VehicleBody3D will determine the "
"center of gravity of your vehicle so it is better to keep this low and move "
-"the [CollisionShape3D] and [MeshInstance3D] upwards."
+"the [CollisionShape3D] and [MeshInstance3D] upwards.\n"
+"[b]Note:[/b] This class has known issues and isn't designed to provide "
+"realistic 3D vehicle physics. If you want advanced vehicle physics, you will "
+"probably have to write your own physics integration using another "
+"[PhysicsBody3D] class."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:16
+#: doc/classes/VehicleBody3D.xml:17
msgid ""
"Slows down the vehicle by applying a braking force. The vehicle is only "
"slowed down if the wheels are in contact with a surface. The force you need "
@@ -53916,7 +54755,7 @@ msgid ""
"a value in the 25 - 30 range for hard braking."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:19
+#: doc/classes/VehicleBody3D.xml:20
msgid ""
"Accelerates the vehicle by applying an engine force. The vehicle is only "
"speed up if the wheels that have [member VehicleWheel3D.use_as_traction] set "
@@ -53929,7 +54768,7 @@ msgid ""
"A negative value will result in the vehicle reversing."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:25
+#: doc/classes/VehicleBody3D.xml:26
msgid ""
"The steering angle for the vehicle. Setting this to a non-zero value will "
"result in the vehicle turning when it's moving. Wheels that have [member "
@@ -53945,25 +54784,29 @@ msgstr ""
msgid ""
"This node needs to be used as a child node of [VehicleBody3D] and simulates "
"the behavior of one of its wheels. This node also acts as a collider to "
-"detect if the wheel is touching a surface."
+"detect if the wheel is touching a surface.\n"
+"[b]Note:[/b] This class has known issues and isn't designed to provide "
+"realistic 3D vehicle physics. If you want advanced vehicle physics, you will "
+"probably have to write your own physics integration using another "
+"[PhysicsBody3D] class."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:16
+#: doc/classes/VehicleWheel3D.xml:17
msgid "Returns the rotational speed of the wheel in revolutions per minute."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:23
+#: doc/classes/VehicleWheel3D.xml:24
msgid ""
"Returns a value between 0.0 and 1.0 that indicates whether this wheel is "
"skidding. 0.0 is skidding (the wheel has lost grip, e.g. icy terrain), 1.0 "
"means not skidding (the wheel has full grip, e.g. dry asphalt road)."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:30
+#: doc/classes/VehicleWheel3D.xml:31
msgid "Returns [code]true[/code] if this wheel is in contact with a surface."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:36
+#: doc/classes/VehicleWheel3D.xml:37
msgid ""
"Slows down the wheel by applying a braking force. The wheel is only slowed "
"down if it is in contact with a surface. The force you need to apply to "
@@ -53972,7 +54815,7 @@ msgid ""
"- 30 range for hard braking."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:39
+#: doc/classes/VehicleWheel3D.xml:40
msgid ""
"The damping applied to the spring when the spring is being compressed. This "
"value should be between 0.0 (no damping) and 1.0. A value of 0.0 means the "
@@ -53980,7 +54823,7 @@ msgid ""
"is around 0.3 for a normal car, 0.5 for a race car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:42
+#: doc/classes/VehicleWheel3D.xml:43
msgid ""
"The damping applied to the spring when relaxing. This value should be "
"between 0.0 (no damping) and 1.0. This value should always be slightly "
@@ -53988,7 +54831,7 @@ msgid ""
"damping_compression] value of 0.3, try a relaxation value of 0.5."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:45
+#: doc/classes/VehicleWheel3D.xml:46
msgid ""
"Accelerates the wheel by applying an engine force. The wheel is only speed "
"up if it is in contact with a surface. The [member RigidBody3D.mass] of the "
@@ -53999,13 +54842,13 @@ msgid ""
"A negative value will result in the wheel reversing."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:50
+#: doc/classes/VehicleWheel3D.xml:51
msgid ""
"The steering angle for the wheel. Setting this to a non-zero value will "
"result in the vehicle turning when it's moving."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:53
+#: doc/classes/VehicleWheel3D.xml:54
msgid ""
"The maximum force the spring can resist. This value should be higher than a "
"quarter of the [member RigidBody3D.mass] of the [VehicleBody3D] or the "
@@ -54013,28 +54856,28 @@ msgid ""
"obtained by a value that is about 3× to 4× this number."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:56
+#: doc/classes/VehicleWheel3D.xml:57
msgid ""
"This value defines the stiffness of the suspension. Use a value lower than "
"50 for an off-road car, a value between 50 and 100 for a race car and try "
"something around 200 for something like a Formula 1 car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:59
+#: doc/classes/VehicleWheel3D.xml:60
msgid ""
"This is the distance the suspension can travel. As Godot units are "
"equivalent to meters, keep this setting relatively low. Try a value between "
"0.1 and 0.3 depending on the type of car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:62
+#: doc/classes/VehicleWheel3D.xml:63
msgid ""
"If [code]true[/code], this wheel will be turned when the car steers. This "
"value is used in conjunction with [member VehicleBody3D.steering] and "
"ignored if you are using the per-wheel [member steering] value instead."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:65
+#: doc/classes/VehicleWheel3D.xml:66
msgid ""
"If [code]true[/code], this wheel transfers engine force to the ground to "
"propel the vehicle forward. This value is used in conjunction with [member "
@@ -54042,7 +54885,7 @@ msgid ""
"[member engine_force] value instead."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:68
+#: doc/classes/VehicleWheel3D.xml:69
msgid ""
"This determines how much grip this wheel has. It is combined with the "
"friction setting of the surface the wheel is in contact with. 0.0 means no "
@@ -54052,11 +54895,11 @@ msgid ""
"It's best to set this to 1.0 when starting out."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:72
+#: doc/classes/VehicleWheel3D.xml:73
msgid "The radius of the wheel in meters."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:75
+#: doc/classes/VehicleWheel3D.xml:76
msgid ""
"This is the distance in meters the wheel is lowered from its origin point. "
"Don't set this to 0.0 and move the wheel into position, instead move the "
@@ -54065,7 +54908,7 @@ msgid ""
"down to the position it should be in when the car is in rest."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:78
+#: doc/classes/VehicleWheel3D.xml:79
msgid ""
"This value affects the roll of your vehicle. If set to 1.0 for all wheels, "
"your vehicle will be prone to rolling over, while a value of 0.0 will resist "
@@ -54543,7 +55386,7 @@ msgstr ""
#: doc/classes/Viewport.xml:318
msgid ""
"Use fast approximate antialiasing. FXAA is a popular screen-space "
-"antialising method, which is fast but will make the image look blurry, "
+"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."
msgstr ""
@@ -54596,24 +55439,24 @@ msgid ""
"your [WorldEnvironment]."
msgstr ""
-#: doc/classes/Viewport.xml:384
+#: doc/classes/Viewport.xml:381
msgid ""
"Colors each PSSM split for the [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, and yellow."
msgstr ""
-#: doc/classes/Viewport.xml:387
+#: doc/classes/Viewport.xml:384
msgid ""
"Draws the decal atlas used by [Decal]s and light projector textures in the "
"upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/Viewport.xml:402
+#: doc/classes/Viewport.xml:405
msgid "Max value for [enum DefaultCanvasItemTextureFilter] enum."
msgstr ""
-#: doc/classes/Viewport.xml:414
+#: doc/classes/Viewport.xml:417
msgid "Max value for [enum DefaultCanvasItemTextureRepeat] enum."
msgstr ""
@@ -54644,82 +55487,84 @@ msgid ""
"The VisibilityEnabler2D will disable [RigidBody2D], [AnimationPlayer], and "
"other nodes when they are not visible. It will only affect nodes with the "
"same root node as the VisibilityEnabler2D, and the root node itself.\n"
+"If you just want to receive notifications, use [VisibilityNotifier2D] "
+"instead.\n"
"[b]Note:[/b] For performance reasons, VisibilityEnabler2D uses an "
"approximate heuristic with precision determined by [member ProjectSettings."
-"world/2d/cell_size]. If you need exact visibility checking, use another "
+"world/2d/cell_size]. If you need precise visibility checking, use another "
"method such as adding an [Area2D] node as a child of a [Camera2D] node.\n"
"[b]Note:[/b] VisibilityEnabler2D will not affect nodes added after scene "
"initialization."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:20
-#: doc/classes/VisibilityEnabler3D.xml:20
+#: doc/classes/VisibilityEnabler2D.xml:21
+#: doc/classes/VisibilityEnabler3D.xml:21
msgid ""
"Returns whether the enabler identified by given [enum Enabler] constant is "
"active."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:31
-#: doc/classes/VisibilityEnabler3D.xml:31
+#: doc/classes/VisibilityEnabler2D.xml:32
+#: doc/classes/VisibilityEnabler3D.xml:32
msgid ""
"Sets active state of the enabler identified by given [enum Enabler] constant."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:37
+#: doc/classes/VisibilityEnabler2D.xml:38
msgid "If [code]true[/code], [RigidBody2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:40
+#: doc/classes/VisibilityEnabler2D.xml:41
msgid "If [code]true[/code], [AnimatedSprite2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:43
-#: doc/classes/VisibilityEnabler3D.xml:40
+#: doc/classes/VisibilityEnabler2D.xml:44
+#: doc/classes/VisibilityEnabler3D.xml:41
msgid "If [code]true[/code], [AnimationPlayer] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:46
+#: doc/classes/VisibilityEnabler2D.xml:47
msgid "If [code]true[/code], [GPUParticles2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:49
+#: doc/classes/VisibilityEnabler2D.xml:50
msgid ""
"If [code]true[/code], the parent's [method Node._physics_process] will be "
"stopped."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:52
+#: doc/classes/VisibilityEnabler2D.xml:53
msgid ""
"If [code]true[/code], the parent's [method Node._process] will be stopped."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:57
-#: doc/classes/VisibilityEnabler3D.xml:45
+#: doc/classes/VisibilityEnabler2D.xml:58
+#: doc/classes/VisibilityEnabler3D.xml:46
msgid "This enabler will pause [AnimationPlayer] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:60
+#: doc/classes/VisibilityEnabler2D.xml:61
msgid "This enabler will freeze [RigidBody2D] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:63
+#: doc/classes/VisibilityEnabler2D.xml:64
msgid "This enabler will stop [GPUParticles2D] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:66
+#: doc/classes/VisibilityEnabler2D.xml:67
msgid "This enabler will stop the parent's _process function."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:69
+#: doc/classes/VisibilityEnabler2D.xml:70
msgid "This enabler will stop the parent's _physics_process function."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:72
+#: doc/classes/VisibilityEnabler2D.xml:73
msgid "This enabler will stop [AnimatedSprite2D] nodes animations."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:75
-#: doc/classes/VisibilityEnabler3D.xml:51
+#: doc/classes/VisibilityEnabler2D.xml:76
+#: doc/classes/VisibilityEnabler3D.xml:52
msgid "Represents the size of the [enum Enabler] enum."
msgstr ""
@@ -54728,19 +55573,23 @@ msgid ""
"The VisibilityEnabler3D will disable [RigidBody3D] and [AnimationPlayer] "
"nodes when they are not visible. It will only affect other nodes within the "
"same scene as the VisibilityEnabler3D itself.\n"
+"If you just want to receive notifications, use [VisibilityNotifier3D] "
+"instead.\n"
"[b]Note:[/b] VisibilityEnabler3D uses an approximate heuristic for "
"performance reasons. It doesn't take walls and other occlusion into account. "
-"If you need exact visibility checking, use another method such as adding an "
-"[Area3D] node as a child of a [Camera3D] node.\n"
+"The heuristic is an implementation detail and may change in future versions. "
+"If you need precise visibility checking, use another method such as adding "
+"an [Area3D] node as a child of a [Camera3D] node and/or [method Vector3."
+"dot].\n"
"[b]Note:[/b] VisibilityEnabler3D will not affect nodes added after scene "
"initialization."
msgstr ""
-#: doc/classes/VisibilityEnabler3D.xml:37
+#: doc/classes/VisibilityEnabler3D.xml:38
msgid "If [code]true[/code], [RigidBody3D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler3D.xml:48
+#: doc/classes/VisibilityEnabler3D.xml:49
msgid "This enabler will freeze [RigidBody3D] nodes."
msgstr ""
@@ -54754,13 +55603,15 @@ msgid ""
"The VisibilityNotifier2D detects when it is visible on the screen. It also "
"notifies when its bounding rectangle enters or exits the screen or a "
"viewport.\n"
+"If you want nodes to be disabled automatically when they exit the screen, "
+"use [VisibilityEnabler2D] instead.\n"
"[b]Note:[/b] For performance reasons, VisibilityNotifier2D uses an "
"approximate heuristic with precision determined by [member ProjectSettings."
-"world/2d/cell_size]. If you need exact visibility checking, use another "
+"world/2d/cell_size]. If you need precise visibility checking, use another "
"method such as adding an [Area2D] node as a child of a [Camera2D] node."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:17
+#: doc/classes/VisibilityNotifier2D.xml:18
msgid ""
"If [code]true[/code], the bounding rectangle is on the screen.\n"
"[b]Note:[/b] It takes one frame for the node's visibility to be assessed "
@@ -54769,23 +55620,23 @@ msgid ""
"pass."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:24
+#: doc/classes/VisibilityNotifier2D.xml:25
msgid "The VisibilityNotifier2D's bounding rectangle."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:30
+#: doc/classes/VisibilityNotifier2D.xml:31
msgid "Emitted when the VisibilityNotifier2D enters the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:35
+#: doc/classes/VisibilityNotifier2D.xml:36
msgid "Emitted when the VisibilityNotifier2D exits the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:42
+#: doc/classes/VisibilityNotifier2D.xml:43
msgid "Emitted when the VisibilityNotifier2D enters a [Viewport]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:49
+#: doc/classes/VisibilityNotifier2D.xml:50
msgid "Emitted when the VisibilityNotifier2D exits a [Viewport]'s view."
msgstr ""
@@ -54794,13 +55645,16 @@ msgid ""
"The VisibilityNotifier3D detects when it is visible on the screen. It also "
"notifies when its bounding rectangle enters or exits the screen or a "
"[Camera3D]'s view.\n"
+"If you want nodes to be disabled automatically when they exit the screen, "
+"use [VisibilityEnabler3D] instead.\n"
"[b]Note:[/b] VisibilityNotifier3D uses an approximate heuristic for "
"performance reasons. It doesn't take walls and other occlusion into account. "
-"If you need exact visibility checking, use another method such as adding an "
-"[Area3D] node as a child of a [Camera3D] node."
+"The heuristic is an implementation detail and may change in future versions. "
+"If you need precise visibility checking, use another method such as adding "
+"an [Area3D] node as a child of a [Camera3D] node and/or [method Vector3.dot]."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:17
+#: doc/classes/VisibilityNotifier3D.xml:18
msgid ""
"If [code]true[/code], the bounding box is on the screen.\n"
"[b]Note:[/b] It takes one frame for the node's visibility to be assessed "
@@ -54809,23 +55663,23 @@ msgid ""
"pass."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:24
+#: doc/classes/VisibilityNotifier3D.xml:25
msgid "The VisibilityNotifier3D's bounding box."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:32
+#: doc/classes/VisibilityNotifier3D.xml:33
msgid "Emitted when the VisibilityNotifier3D enters a [Camera3D]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:39
+#: doc/classes/VisibilityNotifier3D.xml:40
msgid "Emitted when the VisibilityNotifier3D exits a [Camera3D]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:44
+#: doc/classes/VisibilityNotifier3D.xml:45
msgid "Emitted when the VisibilityNotifier3D enters the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:49
+#: doc/classes/VisibilityNotifier3D.xml:50
msgid "Emitted when the VisibilityNotifier3D exits the screen."
msgstr ""
@@ -55245,6 +56099,12 @@ msgid ""
"exist."
msgstr ""
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:90
+msgid ""
+"Easing function, based on exponent. 0 is constant, 1 is linear, 0 to 1 is "
+"ease-in, 1+ is ease out. Negative values are in-out/out in."
+msgstr ""
+
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:93
msgid ""
"Return the number of digit places after the decimal that the first non-zero "
@@ -56130,6 +56990,7 @@ msgid "A shader for light calculations."
msgstr ""
#: doc/classes/VisualShader.xml:214
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:26
msgid "Represents the size of the [enum Type] enum."
msgstr ""
@@ -56232,6 +57093,24 @@ msgstr ""
msgid "Translated to [code]uniform bool[/code] in the shader language."
msgstr ""
+#: doc/classes/VisualShaderNodeBooleanUniform.xml:15
+#: doc/classes/VisualShaderNodeColorUniform.xml:15
+#: doc/classes/VisualShaderNodeFloatUniform.xml:15
+#: doc/classes/VisualShaderNodeIntUniform.xml:15
+#: doc/classes/VisualShaderNodeTransformUniform.xml:15
+#: doc/classes/VisualShaderNodeVec3Uniform.xml:15
+msgid "A default value to be assigned within the shader."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeBooleanUniform.xml:18
+#: doc/classes/VisualShaderNodeColorUniform.xml:18
+#: doc/classes/VisualShaderNodeFloatUniform.xml:18
+#: doc/classes/VisualShaderNodeIntUniform.xml:18
+#: doc/classes/VisualShaderNodeTransformUniform.xml:18
+#: doc/classes/VisualShaderNodeVec3Uniform.xml:18
+msgid "Enables usage of the [member default_value]."
+msgstr ""
+
#: doc/classes/VisualShaderNodeColorConstant.xml:4
msgid "A [Color] constant to be used within the visual shader graph."
msgstr ""
@@ -57082,49 +57961,49 @@ msgstr ""
msgid "Translated to [code]uniform float[/code] in the shader language."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:15
-#: doc/classes/VisualShaderNodeIntUniform.xml:15
+#: doc/classes/VisualShaderNodeFloatUniform.xml:21
+#: doc/classes/VisualShaderNodeIntUniform.xml:21
msgid ""
"A hint applied to the uniform, which controls the values it can take when "
"set through the inspector."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:18
-#: doc/classes/VisualShaderNodeIntUniform.xml:18
+#: doc/classes/VisualShaderNodeFloatUniform.xml:24
+#: doc/classes/VisualShaderNodeIntUniform.xml:24
msgid ""
"Minimum value for range hints. Used if [member hint] is set to [constant "
"HINT_RANGE] or [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:21
-#: doc/classes/VisualShaderNodeIntUniform.xml:21
+#: doc/classes/VisualShaderNodeFloatUniform.xml:27
+#: doc/classes/VisualShaderNodeIntUniform.xml:27
msgid ""
"Maximum value for range hints. Used if [member hint] is set to [constant "
"HINT_RANGE] or [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:24
-#: doc/classes/VisualShaderNodeIntUniform.xml:24
+#: doc/classes/VisualShaderNodeFloatUniform.xml:30
+#: doc/classes/VisualShaderNodeIntUniform.xml:30
msgid ""
"Step (increment) value for the range hint with step. Used if [member hint] "
"is set to [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:29
-#: doc/classes/VisualShaderNodeIntUniform.xml:29
+#: doc/classes/VisualShaderNodeFloatUniform.xml:35
+#: doc/classes/VisualShaderNodeIntUniform.xml:35
msgid "No hint used."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:32
-#: doc/classes/VisualShaderNodeIntUniform.xml:32
+#: doc/classes/VisualShaderNodeFloatUniform.xml:38
+#: doc/classes/VisualShaderNodeIntUniform.xml:38
msgid ""
"A range hint for scalar value, which limits possible input values between "
"[member min] and [member max]. Translated to [code]hint_range(min, max)[/"
"code] in shader code."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:35
-#: doc/classes/VisualShaderNodeIntUniform.xml:35
+#: doc/classes/VisualShaderNodeFloatUniform.xml:41
+#: doc/classes/VisualShaderNodeIntUniform.xml:41
msgid ""
"A range hint for scalar value with step, which limits possible input values "
"between [member min] and [member max], with a step (increment) of [member "
@@ -57406,6 +58285,26 @@ msgid ""
"results, e.g. division by zero)."
msgstr ""
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:4
+msgid "Performs a fused multiply-add operation within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:7
+msgid "Uses three operands to compute [code](a * b + c)[/code] expression."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:15
+msgid "A type of operands and returned value."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:20
+msgid "A scalar type."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:23
+msgid "A vector type."
+msgstr ""
+
#: doc/classes/VisualShaderNodeOuterProduct.xml:4
msgid ""
"Calculates an outer product of two vectors within the visual shader graph."
@@ -57428,7 +58327,7 @@ msgstr ""
#: doc/classes/VisualShaderNodeOutput.xml:7
msgid ""
"This visual shader node is present in all shader graphs in form of \"Output"
-"\" block with mutliple output value ports."
+"\" block with multiple output value ports."
msgstr ""
#: doc/classes/VisualShaderNodeSample3D.xml:4
@@ -57792,6 +58691,20 @@ msgid ""
"[ShaderMaterial] properties."
msgstr ""
+#: doc/classes/VisualShaderNodeUniformRef.xml:4
+msgid "A reference to an existing [VisualShaderNodeUniform]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniformRef.xml:7
+msgid ""
+"Creating a reference to a [VisualShaderNodeUniform] allows you to reuse this "
+"uniform in different shaders or shader stages easily."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniformRef.xml:15
+msgid "The name of the uniform which this reference points to."
+msgstr ""
+
#: doc/classes/VisualShaderNodeVec3Constant.xml:4
msgid "A [Vector3] constant to be used within the visual shader graph."
msgstr ""
@@ -58122,7 +59035,7 @@ msgstr ""
msgid ""
"Translated to [code]refract(I, N, eta)[/code] in the shader language, where "
"[code]I[/code] is the incident vector, [code]N[/code] is the normal vector "
-"and [code]eta[/code] is the ratio of the indicies of the refraction."
+"and [code]eta[/code] is the ratio of the indices of the refraction."
msgstr ""
#: doc/classes/VisualShaderNodeVectorScalarMix.xml:4
diff --git a/doc/translations/it.po b/doc/translations/it.po
index 069f73028e..8a8ec5d107 100644
--- a/doc/translations/it.po
+++ b/doc/translations/it.po
@@ -7,12 +7,14 @@
# Bob <spiroski.boban@gmail.com>, 2020.
# Riccardo Ferro <Riccardo3Ferro@gmail.com>, 2020.
# Lorenzo Asolan <brixiumx@gmail.com>, 2020.
+# Mirko <miknsop@gmail.com>, 2020.
+# Lorenzo Cerqua <lorenzocerqua@tutanota.com>, 2020.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine class reference\n"
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
-"PO-Revision-Date: 2020-06-25 08:53+0000\n"
-"Last-Translator: Lorenzo Asolan <brixiumx@gmail.com>\n"
+"PO-Revision-Date: 2020-08-11 14:38+0000\n"
+"Last-Translator: Lorenzo Cerqua <lorenzocerqua@tutanota.com>\n"
"Language-Team: Italian <https://hosted.weblate.org/projects/godot-engine/"
"godot-class-reference/it/>\n"
"Language: it\n"
@@ -72,9 +74,9 @@ msgid ""
"utilities. Everything else is provided by objects. (Keywords: builtin, built "
"in, global functions.)"
msgstr ""
-"Lista delle funzioni built-in principali di GDScript. Funzioni matematiche "
-"ed altre utilities. Qualsiasi altra cosa è fornita dagli oggetti. (Keywords: "
-"builtin, built in, global functions.)"
+"Lista delle funzioni built-in principali GDScript. Le funzioni matematiche "
+"ed altre utilità. Qualsiasi altra cosa è provvista dagli oggetti. (Parole "
+"chiave: builtin, built in, global functions, funzioni globali.)"
#: modules/gdscript/doc_classes/@GDScript.xml:24
msgid ""
@@ -109,17 +111,18 @@ msgid ""
"[/codeblock]\n"
"Supported color names are the same as the constants defined in [Color]."
msgstr ""
-"Ritorna un colore riferito al [code]nome[/code] standardizzato con "
-"[code]alpha[/code] che varia da 0 a 1.\n"
+"Restituisce un colore riferito al [code]nome[/code] standardizzato con "
+"[code]alfa[/code] variabile da 0 a 1.\n"
"[codeblock]\n"
"rosso = ColorN(\"red\", 1)\n"
"[/codeblock]\n"
-"Nomi supportati di colori sono uguali alle costanti definite in [Color]."
+"I nomi supportati dei colori sono uguali alle costanti definite in [Color]."
#: modules/gdscript/doc_classes/@GDScript.xml:55
+#, fuzzy
msgid ""
-"Returns the absolute value of parameter [code]s[/code] (i.e. unsigned value, "
-"works for integer and float).\n"
+"Returns the absolute value of parameter [code]s[/code] (i.e. positive "
+"value).\n"
"[codeblock]\n"
"# a is 1\n"
"a = abs(-1)\n"
@@ -207,12 +210,13 @@ msgstr ""
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:114
+#, fuzzy
msgid ""
"Returns the arc tangent of [code]s[/code] in radians. Use it to get the "
"angle from an angle's tangent in trigonometry: [code]atan(tan(angle)) == "
"angle[/code].\n"
"The method cannot know in which quadrant the angle should fall. See [method "
-"atan2] if you always want an exact angle.\n"
+"atan2] if you have both [code]y[/code] and [code]x[/code].\n"
"[codeblock]\n"
"a = atan(0.5) # a is 0.463648\n"
"[/codeblock]"
@@ -227,10 +231,12 @@ msgstr ""
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:129
+#, fuzzy
msgid ""
"Returns the arc tangent of [code]y/x[/code] in radians. Use to get the angle "
"of tangent [code]y/x[/code]. To compute the value, the method takes into "
"account the sign of both arguments in order to determine the quadrant.\n"
+"Important note: The Y coordinate comes first, by convention.\n"
"[codeblock]\n"
"a = atan2(0, -1) # a is 3.141593\n"
"[/codeblock]"
@@ -243,7 +249,7 @@ msgstr ""
"a = atan2(0, -1) # a è 3.141593\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:143
+#: modules/gdscript/doc_classes/@GDScript.xml:144
msgid ""
"Decodes a byte array back to a value. When [code]allow_objects[/code] is "
"[code]true[/code] decoding objects is allowed.\n"
@@ -258,7 +264,7 @@ msgstr ""
"sconosciute per evitare potenziali pericoli di sicurezza (remote code "
"execution, esecuzione di codice remoto)."
-#: modules/gdscript/doc_classes/@GDScript.xml:155
+#: modules/gdscript/doc_classes/@GDScript.xml:156
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:145
msgid ""
"Converts a 2D point expressed in the cartesian coordinate system (X and Y "
@@ -269,10 +275,11 @@ msgstr ""
"X ed Y) in un'altro espresso nel sistema di coordinate polari (una distanza "
"dall'origine ed un angolo)."
-#: modules/gdscript/doc_classes/@GDScript.xml:164
+#: modules/gdscript/doc_classes/@GDScript.xml:165
+#, fuzzy
msgid ""
-"Rounds [code]s[/code] upward, returning the smallest integral value that is "
-"not less than [code]s[/code].\n"
+"Rounds [code]s[/code] upward (towards positive infinity), returning the "
+"smallest whole number that is not less than [code]s[/code].\n"
"[codeblock]\n"
"i = ceil(1.45) # i is 2\n"
"i = ceil(1.001) # i is 2\n"
@@ -285,7 +292,7 @@ msgstr ""
"i = ceil(1.001) # i è 2\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:177
+#: modules/gdscript/doc_classes/@GDScript.xml:178
msgid ""
"Returns a character as a String of the given Unicode code point (which is "
"compatible with ASCII code).\n"
@@ -305,7 +312,7 @@ msgstr ""
"[/codeblock]\n"
"Questo è l'inverso di [method ord]."
-#: modules/gdscript/doc_classes/@GDScript.xml:196
+#: modules/gdscript/doc_classes/@GDScript.xml:197
msgid ""
"Clamps [code]value[/code] and returns a value not less than [code]min[/code] "
"and not more than [code]max[/code].\n"
@@ -331,7 +338,7 @@ msgstr ""
"a = clamp(speed, 1, 20)\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:216
+#: modules/gdscript/doc_classes/@GDScript.xml:217
msgid ""
"Converts from a type to another in the best way possible. The [code]type[/"
"code] parameter uses the [enum Variant.Type] values.\n"
@@ -355,7 +362,7 @@ msgstr ""
"print(a.length())\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:233
+#: modules/gdscript/doc_classes/@GDScript.xml:234
msgid ""
"Returns the cosine of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -371,7 +378,7 @@ msgstr ""
"print(cos(PI))\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:247
+#: modules/gdscript/doc_classes/@GDScript.xml:248
msgid ""
"Returns the hyperbolic cosine of [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -385,11 +392,11 @@ msgstr ""
"print(cosh(1))\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:260
+#: modules/gdscript/doc_classes/@GDScript.xml:261
msgid "Converts from decibels to linear energy (audio)."
msgstr "Converte da decibel a energia lineare (audio)."
-#: modules/gdscript/doc_classes/@GDScript.xml:273
+#: modules/gdscript/doc_classes/@GDScript.xml:274
msgid ""
"Returns the result of [code]value[/code] decreased by [code]step[/code] * "
"[code]amount[/code].\n"
@@ -405,9 +412,10 @@ msgstr ""
"a = dectime(60, 10, 0.1))\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:286
+#: modules/gdscript/doc_classes/@GDScript.xml:287
+#, fuzzy
msgid ""
-"Returns degrees converted to radians.\n"
+"Converts an angle expressed in degrees to radians.\n"
"[codeblock]\n"
"# r is 3.141593\n"
"r = deg2rad(180)\n"
@@ -419,7 +427,7 @@ msgstr ""
"r = deg2rad(180)\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:299
+#: modules/gdscript/doc_classes/@GDScript.xml:300
msgid ""
"Converts a previously converted instance to a dictionary, back into an "
"instance. Useful for deserializing."
@@ -427,20 +435,23 @@ msgstr ""
"Converte un'istanza precedentemente convertita in un dizionario di nuovo in "
"un istanza. Utile per la deserializzazione."
-#: modules/gdscript/doc_classes/@GDScript.xml:310
-#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:90
+#: modules/gdscript/doc_classes/@GDScript.xml:311
+#, fuzzy
msgid ""
-"Easing function, based on exponent. 0 is constant, 1 is linear, 0 to 1 is "
-"ease-in, 1+ is ease out. Negative values are in-out/out in."
+"Easing function, based on exponent. The curve values are: 0 is constant, 1 "
+"is linear, 0 to 1 is ease-in, 1+ is ease out. Negative values are in-out/out "
+"in."
msgstr ""
"Funzione di easing, basata sull'esponente. 0 è costante, 1 è lineare, da 0 a "
"1 è ease-in, 1+ è ease-out. I valori negativi sono in-out/out in."
-#: modules/gdscript/doc_classes/@GDScript.xml:319
+#: modules/gdscript/doc_classes/@GDScript.xml:320
+#, fuzzy
msgid ""
"The natural exponential function. It raises the mathematical constant [b]e[/"
"b] to the power of [code]s[/code] and returns it.\n"
-"[b]e[/b] has an approximate value of 2.71828.\n"
+"[b]e[/b] has an approximate value of 2.71828, and can be obtained with "
+"[code]exp(1)[/code].\n"
"For exponents to other bases use the method [method pow].\n"
"[codeblock]\n"
"a = exp(2) # Approximately 7.39\n"
@@ -454,10 +465,11 @@ msgstr ""
"a = exp(2) # Circa 7.39\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:333
+#: modules/gdscript/doc_classes/@GDScript.xml:334
#, fuzzy
msgid ""
-"Rounds [code]s[/code] to the closest smaller integer and returns it.\n"
+"Rounds [code]s[/code] downward (towards negative infinity), returning the "
+"largest whole number that is not more than [code]s[/code].\n"
"[codeblock]\n"
"# a is 2.0\n"
"a = floor(2.99)\n"
@@ -477,7 +489,7 @@ msgstr ""
"[b]Nota:[/b] Questo metodo restituisce un float. Se ti serve un intero puoi "
"usare [code]int(s)[/code] direttamente."
-#: modules/gdscript/doc_classes/@GDScript.xml:351
+#: modules/gdscript/doc_classes/@GDScript.xml:352
#, fuzzy
msgid ""
"Returns the floating-point remainder of [code]a/b[/code], keeping the sign "
@@ -496,7 +508,7 @@ msgstr ""
"[/codeblock]\n"
"Per l'operazione di resto intero, utilizzare l'operatore %."
-#: modules/gdscript/doc_classes/@GDScript.xml:367
+#: modules/gdscript/doc_classes/@GDScript.xml:368
#, fuzzy
msgid ""
"Returns the floating-point modulus of [code]a/b[/code] that wraps equally in "
@@ -545,7 +557,7 @@ msgstr ""
"4 1\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:398
+#: modules/gdscript/doc_classes/@GDScript.xml:399
#, fuzzy
msgid ""
"Returns a reference to the specified function [code]funcname[/code] in the "
@@ -572,7 +584,7 @@ msgstr ""
"print(a.call_func()) # Stampa bar\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:412
+#: modules/gdscript/doc_classes/@GDScript.xml:413
msgid ""
"Returns an array of dictionaries representing the current call stack.\n"
"[codeblock]\n"
@@ -608,7 +620,7 @@ msgstr ""
"source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:435
+#: modules/gdscript/doc_classes/@GDScript.xml:436
#, fuzzy
msgid ""
"Returns the integer hash of the variable passed.\n"
@@ -621,7 +633,7 @@ msgstr ""
"print(hash(\"a\")) # Stampa 177670\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:447
+#: modules/gdscript/doc_classes/@GDScript.xml:448
msgid ""
"Returns the passed instance converted to a dictionary (useful for "
"serializing).\n"
@@ -653,7 +665,7 @@ msgstr ""
"[, res://test.gd, bar]\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:468
+#: modules/gdscript/doc_classes/@GDScript.xml:469
msgid ""
"Returns the Object that corresponds to [code]instance_id[/code]. All Objects "
"have a unique instance ID.\n"
@@ -675,7 +687,7 @@ msgstr ""
" print(inst.foo) # Stampa bar\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:488
+#: modules/gdscript/doc_classes/@GDScript.xml:489
msgid ""
"Returns a normalized value considering the given range. This is the opposite "
"of [method lerp].\n"
@@ -689,22 +701,24 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:506
+#: modules/gdscript/doc_classes/@GDScript.xml:507
msgid ""
"Returns [code]true[/code] if [code]a[/code] and [code]b[/code] are "
-"approximately equal to each other."
+"approximately equal to each other.\n"
+"Here, approximately equal means that [code]a[/code] and [code]b[/code] are "
+"within a small internal epsilon of each other, which scales with the "
+"magnitude of the numbers.\n"
+"Infinity values of the same sign are considered equal."
msgstr ""
-"Restituisce [code]true[/code] se [code]a[/code] e [code]b[/code] sono "
-"approssimativamente uguali tra di loro."
-#: modules/gdscript/doc_classes/@GDScript.xml:515
+#: modules/gdscript/doc_classes/@GDScript.xml:518
msgid ""
"Returns whether [code]s[/code] is an infinity value (either positive "
"infinity or negative infinity)."
msgstr ""
"Ritorna se [code]s[/code] è un valore infinito (sia positivo che negativo)."
-#: modules/gdscript/doc_classes/@GDScript.xml:524
+#: modules/gdscript/doc_classes/@GDScript.xml:527
msgid ""
"Returns whether [code]instance[/code] is a valid object (e.g. has not been "
"deleted from memory)."
@@ -712,15 +726,21 @@ msgstr ""
"Ritorna se [code]instance[/code] è un oggetto valido (ad esempio, non è "
"stato eliminato dalla memoria)."
-#: modules/gdscript/doc_classes/@GDScript.xml:533
-msgid "Returns whether [code]s[/code] is a NaN (Not-A-Number) value."
+#: modules/gdscript/doc_classes/@GDScript.xml:536
+#, fuzzy
+msgid ""
+"Returns whether [code]s[/code] is a NaN (\"Not a Number\" or invalid) value."
msgstr "Ritorna quando [code]s[/code] è NaN (Not-A-Number)."
-#: modules/gdscript/doc_classes/@GDScript.xml:542
-msgid "Returns [code]true[/code] if [code]s[/code] is zero or almost zero."
+#: modules/gdscript/doc_classes/@GDScript.xml:545
+#, fuzzy
+msgid ""
+"Returns [code]true[/code] if [code]s[/code] is zero or almost zero.\n"
+"This method is faster than using [method is_equal_approx] with one value as "
+"zero."
msgstr "Ritorna [code]true[/code] se [code]s[/code] è zero o quasi zero."
-#: modules/gdscript/doc_classes/@GDScript.xml:551
+#: modules/gdscript/doc_classes/@GDScript.xml:555
msgid ""
"Returns length of Variant [code]var[/code]. Length is the character count of "
"String, element count of Array, size of Dictionary, etc.\n"
@@ -731,7 +751,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:569
+#: modules/gdscript/doc_classes/@GDScript.xml:573
msgid ""
"Linearly interpolates between two values by a normalized value. This is the "
"opposite of [method inverse_lerp].\n"
@@ -746,7 +766,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:588
+#: modules/gdscript/doc_classes/@GDScript.xml:592
msgid ""
"Linearly interpolates between two angles (in radians) by a normalized "
"value.\n"
@@ -763,7 +783,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:607
+#: modules/gdscript/doc_classes/@GDScript.xml:611
msgid ""
"Converts from linear energy to decibels (audio). This can be used to "
"implement volume sliders that behave as expected (since volume isn't "
@@ -779,20 +799,28 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:622
+#: modules/gdscript/doc_classes/@GDScript.xml:626
msgid ""
-"Loads a resource from the filesystem located at [code]path[/code].\n"
+"Loads a resource from the filesystem located at [code]path[/code]. The "
+"resource is loaded on the method call (unless it's referenced already "
+"elsewhere, e.g. in another script or in the scene), which might cause slight "
+"delay, especially when loading scenes. To avoid unnecessary delays when "
+"loading something multiple times, either store the resource in a variable or "
+"use [method preload].\n"
"[b]Note:[/b] Resource paths can be obtained by right-clicking on a resource "
-"in the FileSystem dock and choosing [b]Copy Path[/b].\n"
+"in the FileSystem dock and choosing \"Copy Path\" or by dragging the file "
+"from the FileSystem dock into the script.\n"
"[codeblock]\n"
-"# Load a scene called main located in the root of the project directory.\n"
-"var main = load(\"res://main.tscn\")\n"
+"# Load a scene called main located in the root of the project directory and "
+"cache it in a variable.\n"
+"var main = load(\"res://main.tscn\") # main will contain a PackedScene "
+"resource.\n"
"[/codeblock]\n"
"[b]Important:[/b] The path must be absolute, a local path will just return "
"[code]null[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:637
+#: modules/gdscript/doc_classes/@GDScript.xml:641
msgid ""
"Natural logarithm. The amount of time needed to reach a certain level of "
"continuous growth.\n"
@@ -800,10 +828,12 @@ msgid ""
"calculators, which uses a base 10 logarithm.\n"
"[codeblock]\n"
"log(10) # Returns 2.302585\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] The logarithm of [code]0[/code] returns [code]-inf[/code], "
+"while negative values return [code]-nan[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:652
+#: modules/gdscript/doc_classes/@GDScript.xml:657
msgid ""
"Returns the maximum of two values.\n"
"[codeblock]\n"
@@ -817,7 +847,7 @@ msgstr ""
"max(-3.99, -4) # Ritorna -3.99\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:667
+#: modules/gdscript/doc_classes/@GDScript.xml:672
msgid ""
"Returns the minimum of two values.\n"
"[codeblock]\n"
@@ -831,27 +861,39 @@ msgstr ""
"min(-3.99, -4) # Ritorna -4\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:684
+#: modules/gdscript/doc_classes/@GDScript.xml:689
msgid ""
"Moves [code]from[/code] toward [code]to[/code] by the [code]delta[/code] "
"value.\n"
"Use a negative [code]delta[/code] value to move away.\n"
"[codeblock]\n"
+"move_toward(5, 10, 4) # Returns 9\n"
"move_toward(10, 5, 4) # Returns 6\n"
+"move_toward(10, 5, -1.5) # Returns 11.5\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:697
+#: modules/gdscript/doc_classes/@GDScript.xml:704
msgid ""
-"Returns the nearest larger power of 2 for integer [code]value[/code].\n"
+"Returns the nearest equal or larger power of 2 for integer [code]value[/"
+"code].\n"
+"In other words, returns the smallest value [code]a[/code] where [code]a = "
+"pow(2, n)[/code] such that [code]value <= a[/code] for some non-negative "
+"integer [code]n[/code].\n"
"[codeblock]\n"
"nearest_po2(3) # Returns 4\n"
"nearest_po2(4) # Returns 4\n"
"nearest_po2(5) # Returns 8\n"
-"[/codeblock]"
+"\n"
+"nearest_po2(0) # Returns 0 (this may not be what you expect)\n"
+"nearest_po2(-1) # Returns 0 (this may not be what you expect)\n"
+"[/codeblock]\n"
+"[b]WARNING:[/b] Due to the way it is implemented, this function returns "
+"[code]0[/code] rather than [code]1[/code] for non-positive values of "
+"[code]value[/code] (in reality, 1 is the smallest integer power of 2)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:711
+#: modules/gdscript/doc_classes/@GDScript.xml:723
msgid ""
"Returns an integer representing the Unicode code point of the given Unicode "
"character [code]char[/code].\n"
@@ -863,27 +905,28 @@ msgid ""
"This is the inverse of [method char]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:726
+#: modules/gdscript/doc_classes/@GDScript.xml:738
msgid ""
-"Parse JSON text to a Variant (use [method typeof] to check if it is what you "
-"expect).\n"
-"Be aware that the JSON specification does not define integer or float types, "
-"but only a number type. Therefore, parsing a JSON text will convert all "
-"numerical values to [float] types.\n"
-"Note that JSON objects do not preserve key order like Godot dictionaries, "
-"thus you should not rely on keys being in a certain order if a dictionary is "
-"constructed from JSON. In contrast, JSON arrays retain the order of their "
+"Parse JSON text to a Variant. (Use [method typeof] to check if the Variant's "
+"type is what you expect.)\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, parsing a JSON text will convert "
+"all numerical values to [float] types.\n"
+"[b]Note:[/b] JSON objects do not preserve key order like Godot dictionaries, "
+"thus, you should not rely on keys being in a certain order if a dictionary "
+"is constructed from JSON. In contrast, JSON arrays retain the order of their "
"elements:\n"
"[codeblock]\n"
-"p = parse_json('[\"a\", \"b\", \"c\"]')\n"
-"if typeof(p) == TYPE_ARRAY:\n"
-" print(p[0]) # Prints a\n"
+"var p = JSON.parse('[\"hello\", \"world\", \"!\"]')\n"
+"if typeof(p.result) == TYPE_ARRAY:\n"
+" print(p.result[0]) # Prints \"hello\"\n"
"else:\n"
-" print(\"unexpected results\")\n"
-"[/codeblock]"
+" push_error(\"Unexpected results.\")\n"
+"[/codeblock]\n"
+"See also [JSON] for an alternative way to parse JSON text."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:746
+#: modules/gdscript/doc_classes/@GDScript.xml:759
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:142
msgid ""
"Converts a 2D point expressed in the polar coordinate system (a distance "
@@ -891,7 +934,7 @@ msgid ""
"cartesian coordinate system (X and Y axis)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:757
+#: modules/gdscript/doc_classes/@GDScript.xml:770
msgid ""
"Returns the integer modulus of [code]a/b[/code] that wraps equally in "
"positive and negative.\n"
@@ -917,7 +960,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:788
+#: modules/gdscript/doc_classes/@GDScript.xml:801
msgid ""
"Returns the result of [code]x[/code] raised to the power of [code]y[/code].\n"
"[codeblock]\n"
@@ -930,19 +973,23 @@ msgstr ""
"pow(2, 5) # Ritorna 32\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:800
+#: modules/gdscript/doc_classes/@GDScript.xml:813
msgid ""
-"Returns a resource from the filesystem that is loaded during script "
-"parsing.\n"
+"Returns a [Resource] from the filesystem located at [code]path[/code]. The "
+"resource is loaded during script parsing, i.e. is loaded with the script and "
+"[method preload] effectively acts as a reference to that resource. Note that "
+"the method requires a constant path. If you want to load a resource from a "
+"dynamic/variable path, use [method load].\n"
"[b]Note:[/b] Resource paths can be obtained by right clicking on a resource "
-"in the Assets Panel and choosing \"Copy Path\".\n"
+"in the Assets Panel and choosing \"Copy Path\" or by dragging the file from "
+"the FileSystem dock into the script.\n"
"[codeblock]\n"
-"# Load a scene called main located in the root of the project directory.\n"
-"var main = preload(\"res://main.tscn\")\n"
+"# Instance a scene.\n"
+"var diamond = preload(\"res://diamond.tscn\").instance()\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:812
+#: modules/gdscript/doc_classes/@GDScript.xml:825
msgid ""
"Converts one or more arguments to strings in the best way possible and "
"prints them to the console.\n"
@@ -952,11 +999,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:823
+#: modules/gdscript/doc_classes/@GDScript.xml:836
msgid "Like [method print], but prints only when used in debug mode."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:830
+#: modules/gdscript/doc_classes/@GDScript.xml:843
msgid ""
"Prints a stack track at code location, only works when running with debugger "
"turned on.\n"
@@ -966,7 +1013,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:841
+#: modules/gdscript/doc_classes/@GDScript.xml:854
msgid ""
"Prints one or more arguments to strings in the best way possible to standard "
"error line.\n"
@@ -975,7 +1022,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:851
+#: modules/gdscript/doc_classes/@GDScript.xml:864
msgid ""
"Prints one or more arguments to strings in the best way possible to console. "
"No newline is added at the end.\n"
@@ -989,7 +1036,7 @@ msgid ""
"method, such as [method print]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:864
+#: modules/gdscript/doc_classes/@GDScript.xml:877
msgid ""
"Prints one or more arguments to the console with a space between each "
"argument.\n"
@@ -998,7 +1045,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:874
+#: modules/gdscript/doc_classes/@GDScript.xml:887
msgid ""
"Prints one or more arguments to the console with a tab between each "
"argument.\n"
@@ -1007,7 +1054,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:886
+#: modules/gdscript/doc_classes/@GDScript.xml:899
msgid ""
"Pushes an error message to Godot's built-in debugger and to the OS "
"terminal.\n"
@@ -1017,7 +1064,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:898
+#: modules/gdscript/doc_classes/@GDScript.xml:911
msgid ""
"Pushes a warning message to Godot's built-in debugger and to the OS "
"terminal.\n"
@@ -1027,15 +1074,15 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:910
+#: modules/gdscript/doc_classes/@GDScript.xml:923
msgid ""
-"Converts from radians to degrees.\n"
+"Converts an angle expressed in radians to degrees.\n"
"[codeblock]\n"
"rad2deg(0.523599) # Returns 30\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:924
+#: modules/gdscript/doc_classes/@GDScript.xml:937
msgid ""
"Random range, any floating point value between [code]from[/code] and "
"[code]to[/code].\n"
@@ -1044,7 +1091,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:936
+#: modules/gdscript/doc_classes/@GDScript.xml:949
msgid ""
"Random from seed: pass a [code]seed[/code], and an array with both number "
"and new seed is returned. \"Seed\" here refers to the internal state of the "
@@ -1052,7 +1099,7 @@ msgid ""
"implementation is 64 bits."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:943
+#: modules/gdscript/doc_classes/@GDScript.xml:956
msgid ""
"Returns a random floating point value on the interval [code][0, 1][/code].\n"
"[codeblock]\n"
@@ -1060,7 +1107,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:953
+#: modules/gdscript/doc_classes/@GDScript.xml:966
msgid ""
"Returns a random unsigned 32 bit integer. Use remainder to obtain a random "
"value in the interval [code][0, N - 1][/code] (where N is smaller than "
@@ -1073,7 +1120,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:966
+#: modules/gdscript/doc_classes/@GDScript.xml:979
msgid ""
"Randomizes the seed (or the internal state) of the random number generator. "
"Current implementation reseeds using a number based on time.\n"
@@ -1083,7 +1130,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:977
+#: modules/gdscript/doc_classes/@GDScript.xml:990
msgid ""
"Returns an array with the given range. Range can be 1 argument N (0 to N-1), "
"two arguments (initial, final-1) or three arguments (initial, final-1, "
@@ -1113,7 +1160,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1017
+#: modules/gdscript/doc_classes/@GDScript.xml:1030
msgid ""
"Maps a [code]value[/code] from range [code][istart, istop][/code] to [code]"
"[ostart, ostop][/code].\n"
@@ -1122,16 +1169,22 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1029
+#: modules/gdscript/doc_classes/@GDScript.xml:1042
+#, fuzzy
msgid ""
-"Returns the integral value that is nearest to [code]s[/code], with halfway "
-"cases rounded away from zero.\n"
+"Rounds [code]s[/code] to the nearest whole number, with halfway cases "
+"rounded away from zero.\n"
"[codeblock]\n"
"round(2.6) # Returns 3\n"
"[/codeblock]"
msgstr ""
+"Ritorna il risultato di [code]x[/code] elevato alla potenza di [code]y[/"
+"code].\n"
+"[codeblock]\n"
+"pow(2, 5) # Ritorna 32\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:1041
+#: modules/gdscript/doc_classes/@GDScript.xml:1054
msgid ""
"Sets seed for the random number generator.\n"
"[codeblock]\n"
@@ -1140,7 +1193,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1054
+#: modules/gdscript/doc_classes/@GDScript.xml:1067
msgid ""
"Returns the sign of [code]s[/code]: -1 or 1. Returns 0 if [code]s[/code] is "
"0.\n"
@@ -1151,7 +1204,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1068
+#: modules/gdscript/doc_classes/@GDScript.xml:1081
msgid ""
"Returns the sine of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -1159,7 +1212,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1080
+#: modules/gdscript/doc_classes/@GDScript.xml:1093
msgid ""
"Returns the hyperbolic sine of [code]s[/code].\n"
"[codeblock]\n"
@@ -1168,27 +1221,37 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1097
+#: modules/gdscript/doc_classes/@GDScript.xml:1110
msgid ""
-"Returns a number smoothly interpolated between the [code]from[/code] and "
-"[code]to[/code], based on the [code]weight[/code]. Similar to [method lerp], "
-"but interpolates faster at the beginning and slower at the end.\n"
+"Returns the result of smoothly interpolating the value of [code]s[/code] "
+"between [code]0[/code] and [code]1[/code], based on the where [code]s[/code] "
+"lies with respect to the edges [code]from[/code] and [code]to[/code].\n"
+"The return value is [code]0[/code] if [code]s <= from[/code], and [code]1[/"
+"code] if [code]s >= to[/code]. If [code]s[/code] lies between [code]from[/"
+"code] and [code]to[/code], the returned value follows an S-shaped curve that "
+"maps [code]s[/code] between [code]0[/code] and [code]1[/code].\n"
+"This S-shaped curve is the cubic Hermite interpolator, given by [code]f(s) = "
+"3*s^2 - 2*s^3[/code].\n"
"[codeblock]\n"
-"smoothstep(0, 2, 0.5) # Returns 0.15\n"
+"smoothstep(0, 2, -5.0) # Returns 0.0\n"
+"smoothstep(0, 2, 0.5) # Returns 0.15625\n"
"smoothstep(0, 2, 1.0) # Returns 0.5\n"
"smoothstep(0, 2, 2.0) # Returns 1.0\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1111
+#: modules/gdscript/doc_classes/@GDScript.xml:1127
msgid ""
-"Returns the square root of [code]s[/code].\n"
+"Returns the square root of [code]s[/code], where [code]s[/code] is a non-"
+"negative number.\n"
"[codeblock]\n"
"sqrt(9) # Returns 3\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b]Negative values of [code]s[/code] return NaN. If you need "
+"negative inputs, use [code]System.Numerics.Complex[/code] in C#."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1123
+#: modules/gdscript/doc_classes/@GDScript.xml:1140
msgid ""
"Returns the position of the first non-zero digit, after the decimal point. "
"Note that the maximum return value is 10, which is a design decision in the "
@@ -1203,7 +1266,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1142
+#: modules/gdscript/doc_classes/@GDScript.xml:1159
msgid ""
"Snaps float value [code]s[/code] to a given [code]step[/code]. This can also "
"be used to round a floating point number to an arbitrary number of "
@@ -1214,7 +1277,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1153
+#: modules/gdscript/doc_classes/@GDScript.xml:1170
msgid ""
"Converts one or more arguments to string in the best way possible.\n"
"[codeblock]\n"
@@ -1225,7 +1288,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1168
+#: modules/gdscript/doc_classes/@GDScript.xml:1185
msgid ""
"Converts a formatted string that was returned by [method var2str] to the "
"original value.\n"
@@ -1236,7 +1299,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1182
+#: modules/gdscript/doc_classes/@GDScript.xml:1199
msgid ""
"Returns the tangent of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -1244,7 +1307,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1194
+#: modules/gdscript/doc_classes/@GDScript.xml:1211
msgid ""
"Returns the hyperbolic tangent of [code]s[/code].\n"
"[codeblock]\n"
@@ -1253,18 +1316,25 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1207
+#: modules/gdscript/doc_classes/@GDScript.xml:1224
msgid ""
-"Converts a Variant [code]var[/code] to JSON text and return the result. "
+"Converts a [Variant] [code]var[/code] to JSON text and return the result. "
"Useful for serializing data to store or send over the network.\n"
"[codeblock]\n"
+"# Both numbers below are integers.\n"
"a = { \"a\": 1, \"b\": 2 }\n"
"b = to_json(a)\n"
"print(b) # {\"a\":1, \"b\":2}\n"
-"[/codeblock]"
+"# Both numbers above are floats, even if they display without any decimal "
+"places.\n"
+"[/codeblock]\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, converting a [Variant] to JSON "
+"text will convert all numerical values to [float] types.\n"
+"See also [JSON] for an alternative way to convert a [Variant] to JSON text."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1221
+#: modules/gdscript/doc_classes/@GDScript.xml:1242
msgid ""
"Returns whether the given class exists in [ClassDB].\n"
"[codeblock]\n"
@@ -1273,7 +1343,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1234
+#: modules/gdscript/doc_classes/@GDScript.xml:1255
msgid ""
"Returns the internal type of the given Variant object, using the [enum "
"Variant.Type] values.\n"
@@ -1286,7 +1356,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1250
+#: modules/gdscript/doc_classes/@GDScript.xml:1271
msgid ""
"Checks that [code]json[/code] is valid JSON data. Returns an empty string if "
"valid, or an error message otherwise.\n"
@@ -1294,20 +1364,20 @@ msgid ""
"j = to_json([1, 2, 3])\n"
"v = validate_json(j)\n"
"if not v:\n"
-" print(\"valid\")\n"
+" print(\"Valid JSON.\")\n"
"else:\n"
-" prints(\"invalid\", v)\n"
+" push_error(\"Invalid JSON: \" + v)\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1269
+#: modules/gdscript/doc_classes/@GDScript.xml:1290
msgid ""
"Encodes a variable value to a byte array. When [code]full_objects[/code] is "
"[code]true[/code] encoding objects is allowed (and can potentially include "
"code)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1278
+#: modules/gdscript/doc_classes/@GDScript.xml:1299
msgid ""
"Converts a Variant [code]var[/code] to a formatted string that can later be "
"parsed using [method str2var].\n"
@@ -1324,7 +1394,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1298
+#: modules/gdscript/doc_classes/@GDScript.xml:1319
msgid ""
"Returns a weak reference to an object.\n"
"A weak reference to an object is not enough to keep the object alive: when "
@@ -1334,135 +1404,67 @@ msgid ""
"reference may return the object even if there are no strong references to it."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1312
+#: modules/gdscript/doc_classes/@GDScript.xml:1333
msgid ""
"Wraps float [code]value[/code] between [code]min[/code] and [code]max[/"
"code].\n"
"Usable for creating loop-alike behavior or infinite surfaces.\n"
"[codeblock]\n"
-"# a is 0.5\n"
-"a = wrapf(10.5, 0.0, 10.0)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# a is 9.5\n"
-"a = wrapf(-0.5, 0.0, 10.0)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# Infinite loop between 0.0 and 0.99\n"
-"f = wrapf(f + 0.1, 0.0, 1.0)\n"
+"# Infinite loop between 5.0 and 9.9\n"
+"value = wrapf(value + 0.1, 5.0, 10.0)\n"
"[/codeblock]\n"
"[codeblock]\n"
"# Infinite rotation (in radians)\n"
"angle = wrapf(angle + 0.1, 0.0, TAU)\n"
"[/codeblock]\n"
-"[b]Note:[/b] If you just want to wrap between 0.0 and [code]n[/code] (where "
-"[code]n[/code] is a positive floating-point value), it is better for "
-"performance to use the [method fmod] method like [code]fmod(number, n)[/"
-"code].\n"
-"[code]wrapf[/code] is more flexible than using the [method fmod] approach by "
-"giving the user a simple control over the minimum value. It also fully "
-"supports negative numbers, e.g.\n"
"[codeblock]\n"
"# Infinite rotation (in radians)\n"
"angle = wrapf(angle + 0.1, -PI, PI)\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] If [code]min[/code] is [code]0[/code], this is equivalent to "
+"[method fposmod], so prefer using that instead.\n"
+"[code]wrapf[/code] is more flexible than using the [method fposmod] approach "
+"by giving the user control over the minimum value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1348
+#: modules/gdscript/doc_classes/@GDScript.xml:1361
msgid ""
"Wraps integer [code]value[/code] between [code]min[/code] and [code]max[/"
"code].\n"
"Usable for creating loop-alike behavior or infinite surfaces.\n"
"[codeblock]\n"
-"# a is 0\n"
-"a = wrapi(10, 0, 10)\n"
+"# Infinite loop between 5 and 9\n"
+"frame = wrapi(frame + 1, 5, 10)\n"
"[/codeblock]\n"
"[codeblock]\n"
-"# a is 9\n"
-"a = wrapi(-1, 0, 10)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# Infinite loop between 0 and 9\n"
-"frame = wrapi(frame + 1, 0, 10)\n"
-"[/codeblock]\n"
-"[b]Note:[/b] If you just want to wrap between 0 and [code]n[/code] (where "
-"[code]n[/code] is a positive integer value), it is better for performance to "
-"use the modulo operator like [code]number % n[/code].\n"
-"[code]wrapi[/code] is more flexible than using the modulo approach by giving "
-"the user a simple control over the minimum value. It also fully supports "
-"negative numbers, e.g.\n"
-"[codeblock]\n"
"# result is -2\n"
"var result = wrapi(-6, -5, -1)\n"
-"[/codeblock]"
-msgstr ""
-
-#: modules/gdscript/doc_classes/@GDScript.xml:1378
-msgid ""
-"Stops the function execution and returns the current suspended state to the "
-"calling function.\n"
-"From the caller, call [method GDScriptFunctionState.resume] on the state to "
-"resume execution. This invalidates the state. Within the resumed function, "
-"[code]yield()[/code] returns whatever was passed to the [code]resume()[/"
-"code] function call.\n"
-"If passed an object and a signal, the execution is resumed when the object "
-"emits the given signal. In this case, [code]yield()[/code] returns the "
-"argument passed to [code]emit_signal()[/code] if the signal takes only one "
-"argument, or an array containing all the arguments passed to "
-"[code]emit_signal()[/code] if the signal takes multiple arguments.\n"
-"You can also use [code]yield[/code] to wait for a function to finish:\n"
-"[codeblock]\n"
-"func _ready():\n"
-" yield(countdown(), \"completed\") # waiting for the countdown() function "
-"to complete\n"
-" print('Ready')\n"
-"\n"
-"func countdown():\n"
-" yield(get_tree(), \"idle_frame\") # returns a GDScriptFunctionState "
-"object to _ready()\n"
-" print(3)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-" print(2)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-" print(1)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-"\n"
-"# prints:\n"
-"# 3\n"
-"# 2\n"
-"# 1\n"
-"# Ready\n"
"[/codeblock]\n"
-"When yielding on a function, the [code]completed[/code] signal will be "
-"emitted automatically when the function returns. It can, therefore, be used "
-"as the [code]signal[/code] parameter of the [code]yield[/code] method to "
-"resume.\n"
-"In order to yield on a function, the resulting function should also return a "
-"[code]GDScriptFunctionState[/code]. Notice [code]yield(get_tree(), "
-"\"idle_frame\")[/code] from the above example."
+"[b]Note:[/b] If [code]min[/code] is [code]0[/code], this is equivalent to "
+"[method posmod], so prefer using that instead.\n"
+"[code]wrapi[/code] is more flexible than using the [method posmod] approach "
+"by giving the user control over the minimum value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1409
+#: modules/gdscript/doc_classes/@GDScript.xml:1378
msgid ""
"Constant that represents how many times the diameter of a circle fits around "
-"its perimeter."
+"its perimeter. This is equivalent to [code]TAU / 2[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1412
-msgid "The circle constant, the circumference of the unit circle."
+#: modules/gdscript/doc_classes/@GDScript.xml:1381
+msgid "The circle constant, the circumference of the unit circle in radians."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1415
-msgid "A positive infinity. (For negative infinity, use -INF)."
+#: modules/gdscript/doc_classes/@GDScript.xml:1384
+msgid "Positive infinity. For negative infinity, use -INF."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1418
+#: modules/gdscript/doc_classes/@GDScript.xml:1387
msgid ""
-"Macro constant that expands to an expression of type float that represents a "
-"NaN.\n"
-"The NaN values are used to identify undefined or non-representable values "
-"for floating-point elements, such as the square root of negative numbers or "
-"the result of 0/0."
+"\"Not a Number\", an invalid value. [code]NaN[/code] has special properties, "
+"including that it is not equal to itself. It is output by some invalid "
+"operations, such as dividing zero by zero."
msgstr ""
#: doc/classes/@GlobalScope.xml:4
@@ -3698,130 +3700,141 @@ msgid ""
msgstr ""
#: doc/classes/AABB.xml:10 doc/classes/Plane.xml:10 doc/classes/Rect2.xml:11
-#: doc/classes/Rect2i.xml:11 doc/classes/Transform.xml:10
+#: doc/classes/Rect2i.xml:11 doc/classes/Transform.xml:11
#: doc/classes/Vector2.xml:12 doc/classes/Vector2i.xml:12
#: doc/classes/Vector3.xml:12 doc/classes/Vector3i.xml:12
msgid "https://docs.godotengine.org/en/latest/tutorials/math/index.html"
msgstr ""
#: doc/classes/AABB.xml:21
-msgid "Optional constructor, accepts position and size."
+msgid "Constructs an [AABB] from a position and size."
+msgstr ""
+
+#: doc/classes/AABB.xml:28
+msgid ""
+"Returns an AABB with equivalent position and size, modified so that the most-"
+"negative corner is the origin and the size is positive."
msgstr ""
-#: doc/classes/AABB.xml:30
+#: doc/classes/AABB.xml:37
msgid ""
"Returns [code]true[/code] if this [AABB] completely encloses another one."
msgstr ""
-#: doc/classes/AABB.xml:39
+#: doc/classes/AABB.xml:46
msgid "Returns this [AABB] expanded to include a given point."
msgstr ""
-#: doc/classes/AABB.xml:46
+#: doc/classes/AABB.xml:53
msgid "Returns the volume of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:55
+#: doc/classes/AABB.xml:62
msgid "Gets the position of the 8 endpoints of the [AABB] in space."
msgstr ""
-#: doc/classes/AABB.xml:62
+#: doc/classes/AABB.xml:69
msgid "Returns the normalized longest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:69
+#: doc/classes/AABB.xml:76
msgid ""
"Returns the index of the longest axis of the [AABB] (according to "
"[Vector3]'s [code]AXIS_*[/code] constants)."
msgstr ""
-#: doc/classes/AABB.xml:76
+#: doc/classes/AABB.xml:83
msgid "Returns the scalar length of the longest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:83
+#: doc/classes/AABB.xml:90
msgid "Returns the normalized shortest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:90
+#: doc/classes/AABB.xml:97
msgid ""
"Returns the index of the shortest axis of the [AABB] (according to "
"[Vector3]::AXIS* enum)."
msgstr ""
-#: doc/classes/AABB.xml:97
+#: doc/classes/AABB.xml:104
msgid "Returns the scalar length of the shortest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:106
+#: doc/classes/AABB.xml:113
msgid ""
"Returns the support point in a given direction. This is useful for collision "
"detection algorithms."
msgstr ""
-#: doc/classes/AABB.xml:115
+#: doc/classes/AABB.xml:122
msgid ""
"Returns a copy of the [AABB] grown a given amount of units towards all the "
"sides."
msgstr ""
-#: doc/classes/AABB.xml:122
+#: doc/classes/AABB.xml:129
msgid "Returns [code]true[/code] if the [AABB] is flat or empty."
msgstr ""
-#: doc/classes/AABB.xml:129
+#: doc/classes/AABB.xml:136
msgid "Returns [code]true[/code] if the [AABB] is empty."
msgstr ""
-#: doc/classes/AABB.xml:138
+#: doc/classes/AABB.xml:145
msgid "Returns [code]true[/code] if the [AABB] contains a point."
msgstr ""
-#: doc/classes/AABB.xml:147
+#: doc/classes/AABB.xml:154
msgid ""
"Returns the intersection between two [AABB]. An empty AABB (size 0,0,0) is "
"returned on failure."
msgstr ""
-#: doc/classes/AABB.xml:156
+#: doc/classes/AABB.xml:163
msgid "Returns [code]true[/code] if the [AABB] overlaps with another."
msgstr ""
-#: doc/classes/AABB.xml:165
+#: doc/classes/AABB.xml:172
msgid "Returns [code]true[/code] if the [AABB] is on both sides of a plane."
msgstr ""
-#: doc/classes/AABB.xml:176
+#: doc/classes/AABB.xml:183
msgid ""
"Returns [code]true[/code] if the [AABB] intersects the line segment between "
"[code]from[/code] and [code]to[/code]."
msgstr ""
-#: doc/classes/AABB.xml:185
+#: doc/classes/AABB.xml:192
msgid ""
"Returns [code]true[/code] if this [AABB] and [code]aabb[/code] are "
"approximately equal, by calling [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/AABB.xml:194
+#: doc/classes/AABB.xml:201
msgid ""
"Returns a larger [AABB] that contains both this [AABB] and [code]with[/code]."
msgstr ""
-#: doc/classes/AABB.xml:200
+#: doc/classes/AABB.xml:207 doc/classes/Rect2.xml:174
+#: doc/classes/Rect2i.xml:163
msgid ""
-"Ending corner. This is calculated as [code]position + size[/code]. Changing "
-"this property changes [member size] accordingly."
+"Ending corner. This is calculated as [code]position + size[/code]. Setting "
+"this value will change the size."
msgstr ""
-#: doc/classes/AABB.xml:203
-msgid "Beginning corner."
+#: doc/classes/AABB.xml:210 doc/classes/Rect2.xml:177
+#: doc/classes/Rect2i.xml:166
+msgid "Beginning corner. Typically has values lower than [member end]."
msgstr ""
-#: doc/classes/AABB.xml:206 doc/classes/Rect2.xml:180
+#: doc/classes/AABB.xml:213 doc/classes/Rect2.xml:180
#: doc/classes/Rect2i.xml:169
-msgid "Size from position to end."
+msgid ""
+"Size from [member position] to [member end]. Typically all components are "
+"positive.\n"
+"If the size is negative, you can use [method abs] to fix it."
msgstr ""
#: doc/classes/AcceptDialog.xml:4
@@ -3885,11 +3898,11 @@ msgstr ""
msgid "The text displayed by the dialog."
msgstr ""
-#: doc/classes/AcceptDialog.xml:82
+#: doc/classes/AcceptDialog.xml:83
msgid "Emitted when the dialog is accepted, i.e. the OK button is pressed."
msgstr ""
-#: doc/classes/AcceptDialog.xml:89
+#: doc/classes/AcceptDialog.xml:90
msgid "Emitted when a custom button is pressed. See [method add_button]."
msgstr ""
@@ -3942,7 +3955,7 @@ msgstr ""
#: doc/classes/AESContext.xml:54
msgid ""
"Get the current IV state for this context (IV gets updated when calling "
-"[method update]). You normally don't need this funciton.\n"
+"[method update]). You normally don't need this function.\n"
"Note: This function only makes sense when the context is started with "
"[constant MODE_CBC_ENCRYPT] or [constant MODE_CBC_DECRYPT]."
msgstr ""
@@ -4020,12 +4033,14 @@ msgid "If [code]true[/code], texture will be centered."
msgstr ""
#: doc/classes/AnimatedSprite2D.xml:46 doc/classes/Sprite2D.xml:41
-#: doc/classes/SpriteBase3D.xml:61 doc/classes/TextureRect.xml:18
+#: doc/classes/SpriteBase3D.xml:61 doc/classes/TextureButton.xml:19
+#: doc/classes/TextureRect.xml:18
msgid "If [code]true[/code], texture is flipped horizontally."
msgstr ""
#: doc/classes/AnimatedSprite2D.xml:49 doc/classes/Sprite2D.xml:44
-#: doc/classes/SpriteBase3D.xml:64 doc/classes/TextureRect.xml:21
+#: doc/classes/SpriteBase3D.xml:64 doc/classes/TextureButton.xml:22
+#: doc/classes/TextureRect.xml:21
msgid "If [code]true[/code], texture is flipped vertically."
msgstr ""
@@ -4192,10 +4207,10 @@ msgid ""
"[codeblock]\n"
"# This creates an animation that makes the node \"Enemy\" move to the right "
"by\n"
-"# 100 pixels in 1 second.\n"
+"# 100 pixels in 0.5 seconds.\n"
"var animation = Animation.new()\n"
"var track_index = animation.add_track(Animation.TYPE_VALUE)\n"
-"animation.track_set_path(track_index, \"Enemy:position.x\")\n"
+"animation.track_set_path(track_index, \"Enemy:position:x\")\n"
"animation.track_insert_key(track_index, 0.0, 0)\n"
"animation.track_insert_key(track_index, 0.5, 100)\n"
"[/codeblock]\n"
@@ -6323,10 +6338,10 @@ msgstr ""
msgid ""
"Returns [code]true[/code] if the array contains the given value.\n"
"[codeblock]\n"
-"[\"inside\", 7].has(\"inside\") == true\n"
-"[\"inside\", 7].has(\"outside\") == false\n"
-"[\"inside\", 7].has(7) == true\n"
-"[\"inside\", 7].has(\"7\") == false\n"
+"print([\"inside\", 7].has(\"inside\")) # True\n"
+"print([\"inside\", 7].has(\"outside\")) # False\n"
+"print([\"inside\", 7].has(7)) # True\n"
+"print([\"inside\", 7].has(\"7\")) # False\n"
"[/codeblock]\n"
"[b]Note:[/b] This is equivalent to using the [code]in[/code] operator as "
"follows:\n"
@@ -6347,11 +6362,11 @@ msgid ""
"valid, or at the end of the array ([code]pos == size()[/code])."
msgstr ""
-#: doc/classes/Array.xml:265 doc/classes/PackedByteArray.xml:107
-#: doc/classes/PackedColorArray.xml:62 doc/classes/PackedFloat32Array.xml:63
-#: doc/classes/PackedFloat64Array.xml:63 doc/classes/PackedInt32Array.xml:63
-#: doc/classes/PackedInt64Array.xml:63 doc/classes/PackedStringArray.xml:62
-#: doc/classes/PackedVector2Array.xml:62 doc/classes/PackedVector3Array.xml:62
+#: doc/classes/Array.xml:265 doc/classes/PackedByteArray.xml:116
+#: doc/classes/PackedColorArray.xml:71 doc/classes/PackedFloat32Array.xml:72
+#: doc/classes/PackedFloat64Array.xml:72 doc/classes/PackedInt32Array.xml:72
+#: doc/classes/PackedInt64Array.xml:72 doc/classes/PackedStringArray.xml:71
+#: doc/classes/PackedVector2Array.xml:71 doc/classes/PackedVector3Array.xml:71
msgid "Reverses the order of the elements in the array."
msgstr ""
@@ -6381,8 +6396,8 @@ msgid ""
"code] if the array is empty."
msgstr ""
-#: doc/classes/Array.xml:302 doc/classes/PackedByteArray.xml:116
-#: doc/classes/PackedFloat32Array.xml:72 doc/classes/PackedFloat64Array.xml:72
+#: doc/classes/Array.xml:302 doc/classes/PackedByteArray.xml:125
+#: doc/classes/PackedFloat32Array.xml:81 doc/classes/PackedFloat64Array.xml:81
msgid "Appends an element at the end of the array."
msgstr ""
@@ -6390,11 +6405,11 @@ msgstr ""
msgid "Adds an element at the beginning of the array."
msgstr ""
-#: doc/classes/Array.xml:320 doc/classes/PackedByteArray.xml:125
-#: doc/classes/PackedColorArray.xml:80 doc/classes/PackedFloat32Array.xml:81
-#: doc/classes/PackedFloat64Array.xml:81 doc/classes/PackedInt32Array.xml:81
-#: doc/classes/PackedInt64Array.xml:81 doc/classes/PackedStringArray.xml:80
-#: doc/classes/PackedVector2Array.xml:80 doc/classes/PackedVector3Array.xml:80
+#: doc/classes/Array.xml:320 doc/classes/PackedByteArray.xml:134
+#: doc/classes/PackedColorArray.xml:89 doc/classes/PackedFloat32Array.xml:90
+#: doc/classes/PackedFloat64Array.xml:90 doc/classes/PackedInt32Array.xml:90
+#: doc/classes/PackedInt64Array.xml:90 doc/classes/PackedStringArray.xml:89
+#: doc/classes/PackedVector2Array.xml:89 doc/classes/PackedVector3Array.xml:89
msgid "Removes an element from the array by index."
msgstr ""
@@ -6677,7 +6692,7 @@ msgid ""
msgstr ""
#: doc/classes/ArrayMesh.xml:235 doc/classes/Mesh.xml:210
-#: doc/classes/RenderingServer.xml:3115
+#: doc/classes/RenderingServer.xml:3111
msgid "Represents the size of the [enum ArrayType] enum."
msgstr ""
@@ -8494,7 +8509,9 @@ msgid ""
msgstr ""
#: doc/classes/BaseButton.xml:16
-msgid "Called when the button is pressed."
+msgid ""
+"Called when the button is pressed. If you need to know the button's pressed "
+"state (and [member toggle_mode] is active), use [method _toggled] instead."
msgstr ""
#: doc/classes/BaseButton.xml:25
@@ -8588,43 +8605,45 @@ msgstr ""
msgid ""
"Emitted when the button is toggled or pressed. This is on [signal "
"button_down] if [member action_mode] is [constant ACTION_MODE_BUTTON_PRESS] "
-"and on [signal button_up] otherwise."
+"and on [signal button_up] otherwise.\n"
+"If you need to know the button's pressed state (and [member toggle_mode] is "
+"active), use [signal toggled] instead."
msgstr ""
-#: doc/classes/BaseButton.xml:98
+#: doc/classes/BaseButton.xml:99
msgid ""
"Emitted when the button was just toggled between pressed and normal states "
"(only if [member toggle_mode] is active). The new state is contained in the "
"[code]button_pressed[/code] argument."
msgstr ""
-#: doc/classes/BaseButton.xml:104
+#: doc/classes/BaseButton.xml:105
msgid ""
"The normal state (i.e. not pressed, not hovered, not toggled and enabled) of "
"buttons."
msgstr ""
-#: doc/classes/BaseButton.xml:107
+#: doc/classes/BaseButton.xml:108
msgid "The state of buttons are pressed."
msgstr ""
-#: doc/classes/BaseButton.xml:110
+#: doc/classes/BaseButton.xml:111
msgid "The state of buttons are hovered."
msgstr ""
-#: doc/classes/BaseButton.xml:113
+#: doc/classes/BaseButton.xml:114
msgid "The state of buttons are disabled."
msgstr ""
-#: doc/classes/BaseButton.xml:116
+#: doc/classes/BaseButton.xml:117
msgid "The state of buttons are both hovered and pressed."
msgstr ""
-#: doc/classes/BaseButton.xml:119
+#: doc/classes/BaseButton.xml:120
msgid "Require just a press to consider the button clicked."
msgstr ""
-#: doc/classes/BaseButton.xml:122
+#: doc/classes/BaseButton.xml:123
msgid ""
"Require a press and a subsequent release before considering the button "
"clicked."
@@ -9317,22 +9336,22 @@ msgstr ""
msgid "Represents the size of the [enum TextureParam] enum."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:451 doc/classes/RenderingServer.xml:3657
-#: doc/classes/Viewport.xml:390
+#: doc/classes/BaseMaterial3D.xml:451 doc/classes/RenderingServer.xml:3668
+#: doc/classes/Viewport.xml:393
msgid ""
"The texture filter reads from the nearest pixel only. The simplest and "
"fastest method of filtering, but the texture will look pixelized."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:454 doc/classes/RenderingServer.xml:3660
-#: doc/classes/Viewport.xml:393
+#: doc/classes/BaseMaterial3D.xml:454 doc/classes/RenderingServer.xml:3671
+#: doc/classes/Viewport.xml:396
msgid ""
"The texture filter blends between the nearest 4 pixels. Use this when you "
"want to avoid a pixelated style, but do not want mipmaps."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:457 doc/classes/RenderingServer.xml:3663
-#: doc/classes/Viewport.xml:396
+#: doc/classes/BaseMaterial3D.xml:457 doc/classes/RenderingServer.xml:3674
+#: doc/classes/Viewport.xml:399
msgid ""
"The texture filter reads from the nearest pixel in the nearest mipmap. The "
"fastest way to read from textures with mipmaps."
@@ -9345,14 +9364,14 @@ msgid ""
"smooth out pixels that are far from the camera."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:463 doc/classes/RenderingServer.xml:3669
+#: doc/classes/BaseMaterial3D.xml:463 doc/classes/RenderingServer.xml:3680
msgid ""
"The texture filter reads from the nearest pixel, but selects a mipmap based "
"on the angle between the surface and the camera view. This reduces artifacts "
"on surfaces that are almost in line with the camera."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:466 doc/classes/RenderingServer.xml:3672
+#: doc/classes/BaseMaterial3D.xml:466 doc/classes/RenderingServer.xml:3683
msgid ""
"The texture filter blends between the nearest 4 pixels and selects a mipmap "
"based on the angle between the surface and the camera view. This reduces "
@@ -9361,7 +9380,7 @@ msgid ""
"texturing."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:469 doc/classes/CanvasItem.xml:685
+#: doc/classes/BaseMaterial3D.xml:469 doc/classes/CanvasItem.xml:695
msgid "Represents the size of the [enum TextureFilter] enum."
msgstr ""
@@ -9584,8 +9603,8 @@ msgstr ""
msgid "Enables the shadow to opacity feature."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:622 doc/classes/RenderingServer.xml:3684
-#: doc/classes/Viewport.xml:408
+#: doc/classes/BaseMaterial3D.xml:622 doc/classes/RenderingServer.xml:3695
+#: doc/classes/Viewport.xml:411
msgid ""
"Enables the texture to repeat when UV coordinates are outside the 0-1 range. "
"If using one of the linear filtering modes, this can result in artifacts at "
@@ -9726,167 +9745,195 @@ msgstr ""
#: doc/classes/Basis.xml:7
msgid ""
-"3×3 matrix used for 3D rotation and scale. Contains 3 vector fields X, Y and "
-"Z as its columns, which can be interpreted as the local basis vectors of a "
-"transformation. Can also be accessed as array of 3D vectors. These vectors "
-"are orthogonal to each other, but are not necessarily normalized (due to "
-"scaling). Almost always used as an orthogonal basis for a [Transform].\n"
-"For such use, it is composed of a scaling and a rotation matrix, in that "
-"order (M = R.S)."
+"3×3 matrix used for 3D rotation and scale. Almost always used as an "
+"orthogonal basis for a Transform.\n"
+"Contains 3 vector fields X, Y and Z as its columns, which are typically "
+"interpreted as the local basis vectors of a transformation. For such use, it "
+"is composed of a scaling and a rotation matrix, in that order (M = R.S).\n"
+"Can also be accessed as array of 3D vectors. These vectors are normally "
+"orthogonal to each other, but are not necessarily normalized (due to "
+"scaling).\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
+msgstr ""
+
+#: doc/classes/Basis.xml:13 doc/classes/Transform.xml:12
+#: doc/classes/Transform2D.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/math/"
+"matrices_and_transforms.html"
msgstr ""
-#: doc/classes/Basis.xml:11 doc/classes/Transform.xml:11
+#: doc/classes/Basis.xml:14 doc/classes/Transform.xml:13
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/using_transforms.html"
msgstr ""
-#: doc/classes/Basis.xml:20
-msgid "Create a rotation matrix from the given quaternion."
+#: doc/classes/Basis.xml:23
+msgid "Constructs a pure rotation basis matrix from the given quaternion."
msgstr ""
-#: doc/classes/Basis.xml:29
+#: doc/classes/Basis.xml:32
msgid ""
-"Create a rotation matrix (in the YXZ convention: first Z, then X, and Y "
-"last) from the specified Euler angles, given in the vector format as (X "
-"angle, Y angle, Z angle)."
+"Constructs a pure rotation basis matrix from the given Euler angles (in the "
+"YXZ convention: when *composing*, first Y, then X, and Z last), given in the "
+"vector format as (X angle, Y angle, Z angle).\n"
+"Consider using the [Quat] constructor instead, which uses a quaternion "
+"instead of Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:40
+#: doc/classes/Basis.xml:44
msgid ""
-"Create a rotation matrix which rotates around the given axis by the "
-"specified angle, in radians. The axis must be a normalized vector."
+"Constructs a pure rotation basis matrix, rotated around the given "
+"[code]axis[/code] by [code]phi[/code], in radians. The axis must be a "
+"normalized vector."
msgstr ""
-#: doc/classes/Basis.xml:53
-msgid "Create a matrix from 3 axis vectors."
+#: doc/classes/Basis.xml:57
+msgid "Constructs a basis matrix from 3 axis vectors (matrix columns)."
msgstr ""
-#: doc/classes/Basis.xml:60
-msgid "Returns the determinant of the matrix."
+#: doc/classes/Basis.xml:64
+msgid ""
+"Returns the determinant of the basis matrix. If the basis is uniformly "
+"scaled, its determinant is the square of the scale.\n"
+"A negative determinant means the basis has a negative scale. A zero "
+"determinant means the basis isn't invertible, and is usually considered "
+"invalid."
msgstr ""
-#: doc/classes/Basis.xml:67
+#: doc/classes/Basis.xml:72
msgid ""
"Returns the basis's rotation in the form of Euler angles (in the YXZ "
-"convention: first Z, then X, and Y last). The returned vector contains the "
-"rotation angles in the format (X angle, Y angle, Z angle). See [method "
-"get_rotation_quat] if you need a quaternion instead."
+"convention: when decomposing, first Z, then X, and Y last). The returned "
+"vector contains the rotation angles in the format (X angle, Y angle, Z "
+"angle).\n"
+"Consider using the [method get_rotation_quat] method instead, which returns "
+"a [Quat] quaternion instead of Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:74
+#: doc/classes/Basis.xml:80
msgid ""
"This function considers a discretization of rotations into 24 points on unit "
"sphere, lying along the vectors (x,y,z) with each component being either -1, "
"0, or 1, and returns the index of the point best representing the "
-"orientation of the object. It is mainly used by the grid map editor. For "
+"orientation of the object. It is mainly used by the [GridMap] editor. For "
"further details, refer to the Godot source code."
msgstr ""
-#: doc/classes/Basis.xml:81
+#: doc/classes/Basis.xml:87
msgid ""
"Returns the basis's rotation in the form of a quaternion. See [method "
"get_euler] if you need Euler angles, but keep in mind quaternions should "
"generally be preferred to Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:88
+#: doc/classes/Basis.xml:94
msgid ""
"Assuming that the matrix is the combination of a rotation and scaling, "
"return the absolute value of scaling factors along each axis."
msgstr ""
-#: doc/classes/Basis.xml:95 doc/classes/Transform2D.xml:49
+#: doc/classes/Basis.xml:101
msgid "Returns the inverse of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:106
+#: doc/classes/Basis.xml:112
msgid ""
"Returns [code]true[/code] if this basis and [code]b[/code] are approximately "
"equal, by calling [code]is_equal_approx[/code] on each component."
msgstr ""
-#: doc/classes/Basis.xml:113
+#: doc/classes/Basis.xml:119
msgid ""
"Returns the orthonormalized version of the matrix (useful to call from time "
"to time to avoid rounding error for orthogonal matrices). This performs a "
"Gram-Schmidt orthonormalization on the basis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:124
+#: doc/classes/Basis.xml:130
msgid ""
"Introduce an additional rotation around the given axis by phi (radians). The "
"axis must be a normalized vector."
msgstr ""
-#: doc/classes/Basis.xml:133
+#: doc/classes/Basis.xml:139
msgid ""
"Introduce an additional scaling specified by the given 3D scaling factor."
msgstr ""
-#: doc/classes/Basis.xml:144
+#: doc/classes/Basis.xml:150
msgid ""
"Assuming that the matrix is a proper rotation matrix, slerp performs a "
"spherical-linear interpolation with another rotation matrix."
msgstr ""
-#: doc/classes/Basis.xml:153
+#: doc/classes/Basis.xml:159
msgid "Transposed dot product with the X axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:162
+#: doc/classes/Basis.xml:168
msgid "Transposed dot product with the Y axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:171
+#: doc/classes/Basis.xml:177
msgid "Transposed dot product with the Z axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:178
+#: doc/classes/Basis.xml:184
msgid "Returns the transposed version of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:187
+#: doc/classes/Basis.xml:193
msgid "Returns a vector transformed (multiplied) by the matrix."
msgstr ""
-#: doc/classes/Basis.xml:196
+#: doc/classes/Basis.xml:202
msgid ""
-"Returns a vector transformed (multiplied) by the transposed matrix.\n"
+"Returns a vector transformed (multiplied) by the transposed basis matrix.\n"
"[b]Note:[/b] This results in a multiplication by the inverse of the matrix "
"only if it represents a rotation-reflection."
msgstr ""
-#: doc/classes/Basis.xml:203
-msgid "The basis matrix's X vector."
+#: doc/classes/Basis.xml:209 doc/classes/Transform2D.xml:181
+msgid ""
+"The basis matrix's X vector (column 0). Equivalent to array index [code]0[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:206
-msgid "The basis matrix's Y vector."
+#: doc/classes/Basis.xml:212 doc/classes/Transform2D.xml:184
+msgid ""
+"The basis matrix's Y vector (column 1). Equivalent to array index [code]1[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:209
-msgid "The basis matrix's Z vector."
+#: doc/classes/Basis.xml:215
+msgid ""
+"The basis matrix's Z vector (column 2). Equivalent to array index [code]2[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:214
+#: doc/classes/Basis.xml:220
msgid ""
-"The identity basis. This is identical to calling [code]Basis()[/code] "
-"without any parameters. This constant can be used to make your code clearer."
+"The identity basis, with no rotation or scaling applied.\n"
+"This is identical to calling [code]Basis()[/code] without any parameters. "
+"This constant can be used to make your code clearer, and for consistency "
+"with C#."
msgstr ""
-#: doc/classes/Basis.xml:217
+#: doc/classes/Basis.xml:224
msgid ""
"The basis that will flip something along the X axis when used in a "
"transformation."
msgstr ""
-#: doc/classes/Basis.xml:220
+#: doc/classes/Basis.xml:227
msgid ""
"The basis that will flip something along the Y axis when used in a "
"transformation."
msgstr ""
-#: doc/classes/Basis.xml:223
+#: doc/classes/Basis.xml:230
msgid ""
"The basis that will flip something along the Z axis when used in a "
"transformation."
@@ -10199,97 +10246,111 @@ msgstr ""
#: doc/classes/Button.xml:7
msgid ""
"Button is the standard themed button. It can contain text and an icon, and "
-"will display them according to the current [Theme]."
+"will display them according to the current [Theme].\n"
+"[b]Example of creating a button and assigning an action when pressed by code:"
+"[/b]\n"
+"[codeblock]\n"
+"func _ready():\n"
+" var button = Button.new()\n"
+" button.text = \"Click me\"\n"
+" button.connect(\"pressed\", self, \"_button_pressed\")\n"
+" add_child(button)\n"
+"\n"
+"func _button_pressed():\n"
+" print(\"Hello world!\")\n"
+"[/codeblock]\n"
+"Buttons (like all Control nodes) can also be created in the editor, but some "
+"situations may require creating them from code."
msgstr ""
-#: doc/classes/Button.xml:15
+#: doc/classes/Button.xml:27
msgid ""
"Text alignment policy for the button's text, use one of the [enum TextAlign] "
"constants."
msgstr ""
-#: doc/classes/Button.xml:18
+#: doc/classes/Button.xml:30
msgid ""
"When this property is enabled, text that is too large to fit the button is "
"clipped, when disabled the Button will always be wide enough to hold the "
"text."
msgstr ""
-#: doc/classes/Button.xml:21
+#: doc/classes/Button.xml:33
msgid ""
"When enabled, the button's icon will expand/shrink to fit the button's size "
"while keeping its aspect."
msgstr ""
-#: doc/classes/Button.xml:24
+#: doc/classes/Button.xml:36
msgid "Flat buttons don't display decoration."
msgstr ""
-#: doc/classes/Button.xml:27
+#: doc/classes/Button.xml:39
msgid ""
"Button's icon, if text is present the icon will be placed before the text."
msgstr ""
-#: doc/classes/Button.xml:30 doc/classes/LinkButton.xml:18
+#: doc/classes/Button.xml:42 doc/classes/LinkButton.xml:18
msgid "The button's text that will be displayed inside the button's area."
msgstr ""
-#: doc/classes/Button.xml:35
+#: doc/classes/Button.xml:47
msgid "Align the text to the left."
msgstr ""
-#: doc/classes/Button.xml:38
+#: doc/classes/Button.xml:50
msgid "Align the text to the center."
msgstr ""
-#: doc/classes/Button.xml:41
+#: doc/classes/Button.xml:53
msgid "Align the text to the right."
msgstr ""
-#: doc/classes/Button.xml:46
+#: doc/classes/Button.xml:58
msgid "[StyleBox] used when the [Button] is disabled."
msgstr ""
-#: doc/classes/Button.xml:49
+#: doc/classes/Button.xml:61
msgid ""
"[StyleBox] used when the [Button] is focused. It is displayed over the "
"current [StyleBox], so using [StyleBoxEmpty] will just disable the focus "
"visual effect."
msgstr ""
-#: doc/classes/Button.xml:52
+#: doc/classes/Button.xml:64
msgid "[Font] of the [Button]'s text."
msgstr ""
-#: doc/classes/Button.xml:55
+#: doc/classes/Button.xml:67
msgid "Default text [Color] of the [Button]."
msgstr ""
-#: doc/classes/Button.xml:58
+#: doc/classes/Button.xml:70
msgid "Text [Color] used when the [Button] is disabled."
msgstr ""
-#: doc/classes/Button.xml:61
+#: doc/classes/Button.xml:73
msgid "Text [Color] used when the [Button] is being hovered."
msgstr ""
-#: doc/classes/Button.xml:64
+#: doc/classes/Button.xml:76
msgid "Text [Color] used when the [Button] is being pressed."
msgstr ""
-#: doc/classes/Button.xml:67
+#: doc/classes/Button.xml:79
msgid "[StyleBox] used when the [Button] is being hovered."
msgstr ""
-#: doc/classes/Button.xml:70
+#: doc/classes/Button.xml:82
msgid "The horizontal space between [Button]'s icon and text."
msgstr ""
-#: doc/classes/Button.xml:73
+#: doc/classes/Button.xml:85
msgid "Default [StyleBox] for the [Button]."
msgstr ""
-#: doc/classes/Button.xml:76
+#: doc/classes/Button.xml:88
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr ""
@@ -10941,7 +11002,7 @@ msgstr ""
#: doc/classes/CameraEffects.xml:37
msgid ""
"The exposure override value to use. Higher values will result in a brighter "
-"scene. Only effective if [member override_exposure_enable] is [code]true[/"
+"scene. Only effective if [member override_exposure_enabled] is [code]true[/"
"code]."
msgstr ""
@@ -11195,265 +11256,282 @@ msgid ""
msgstr ""
#: doc/classes/CanvasItem.xml:319
-msgid "Draws a string using a custom font."
+msgid ""
+"Draws [code]text[/code] using the specified [code]font[/code] at the "
+"[code]position[/code] (top-left corner). The text will have its color "
+"multiplied by [code]modulate[/code]. If [code]clip_w[/code] is greater than "
+"or equal to 0, the text will be clipped if it exceeds the specified width.\n"
+"[b]Example using the default project font:[/b]\n"
+"[codeblock]\n"
+"# If using this method in a script that redraws constantly, move the\n"
+"# `default_font` declaration to a member variable assigned in `_ready()`\n"
+"# so the Control is only created once.\n"
+"var default_font = Control.new().get_font(\"font\")\n"
+"draw_string(default_font, Vector2(64, 64), \"Hello world\")\n"
+"[/codeblock]\n"
+"See also [method Font.draw]."
msgstr ""
-#: doc/classes/CanvasItem.xml:330
+#: doc/classes/CanvasItem.xml:339
msgid "Draws a styled rectangle."
msgstr ""
-#: doc/classes/CanvasItem.xml:353
+#: doc/classes/CanvasItem.xml:362
msgid "Draws a texture at a given position."
msgstr ""
-#: doc/classes/CanvasItem.xml:380
+#: doc/classes/CanvasItem.xml:389
msgid ""
"Draws a textured rectangle at a given position, optionally modulated by a "
"color. If [code]transpose[/code] is [code]true[/code], the texture will have "
"its X and Y coordinates swapped."
msgstr ""
-#: doc/classes/CanvasItem.xml:409
+#: doc/classes/CanvasItem.xml:418
msgid ""
"Draws a textured rectangle region at a given position, optionally modulated "
"by a color. If [code]transpose[/code] is [code]true[/code], the texture will "
"have its X and Y coordinates swapped."
msgstr ""
-#: doc/classes/CanvasItem.xml:416 doc/classes/Node3D.xml:19
+#: doc/classes/CanvasItem.xml:425 doc/classes/Node3D.xml:19
msgid ""
"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."
msgstr ""
-#: doc/classes/CanvasItem.xml:423
+#: doc/classes/CanvasItem.xml:432
msgid "Returns the [RID] of the [World2D] canvas where this item is in."
msgstr ""
-#: doc/classes/CanvasItem.xml:430
+#: doc/classes/CanvasItem.xml:439
msgid "Returns the canvas item RID used by [RenderingServer] for this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:437
+#: doc/classes/CanvasItem.xml:446
msgid "Returns the transform matrix of this item's canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:444
+#: doc/classes/CanvasItem.xml:453
msgid "Returns the global position of the mouse."
msgstr ""
-#: doc/classes/CanvasItem.xml:451
+#: doc/classes/CanvasItem.xml:460
msgid "Returns the global transform matrix of this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:458
+#: doc/classes/CanvasItem.xml:467
msgid ""
"Returns the global transform matrix of this item in relation to the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:465
+#: doc/classes/CanvasItem.xml:474
msgid "Returns the mouse position relative to this item's position."
msgstr ""
-#: doc/classes/CanvasItem.xml:472
+#: doc/classes/CanvasItem.xml:481
msgid "Returns the transform matrix of this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:479
+#: doc/classes/CanvasItem.xml:488
msgid "Returns the viewport's boundaries as a [Rect2]."
msgstr ""
-#: doc/classes/CanvasItem.xml:486
+#: doc/classes/CanvasItem.xml:495
msgid "Returns this item's transform in relation to the viewport."
msgstr ""
-#: doc/classes/CanvasItem.xml:493
+#: doc/classes/CanvasItem.xml:502
msgid "Returns the [World2D] where this item is in."
msgstr ""
-#: doc/classes/CanvasItem.xml:500
+#: doc/classes/CanvasItem.xml:509
msgid "Hide the [CanvasItem] if it's currently visible."
msgstr ""
-#: doc/classes/CanvasItem.xml:507
+#: doc/classes/CanvasItem.xml:516
msgid ""
"Returns [code]true[/code] if local transform notifications are communicated "
"to children."
msgstr ""
-#: doc/classes/CanvasItem.xml:514
+#: doc/classes/CanvasItem.xml:523
msgid ""
"Returns [code]true[/code] if the node is set as top-level. See [method "
"set_as_toplevel]."
msgstr ""
-#: doc/classes/CanvasItem.xml:521
+#: doc/classes/CanvasItem.xml:530
msgid ""
"Returns [code]true[/code] if global transform notifications are communicated "
"to children."
msgstr ""
-#: doc/classes/CanvasItem.xml:528
+#: doc/classes/CanvasItem.xml:537 doc/classes/Node3D.xml:104
msgid ""
"Returns [code]true[/code] if the node is present in the [SceneTree], its "
-"[member visible] property is [code]true[/code] and its inherited visibility "
-"is also [code]true[/code]."
+"[member visible] property is [code]true[/code] and all its antecedents are "
+"also visible. If any antecedent is hidden, this node will not be visible in "
+"the scene tree."
msgstr ""
-#: doc/classes/CanvasItem.xml:537
+#: doc/classes/CanvasItem.xml:546
msgid "Assigns [code]screen_point[/code] as this node's new local transform."
msgstr ""
-#: doc/classes/CanvasItem.xml:546
+#: doc/classes/CanvasItem.xml:555
msgid ""
"Transformations issued by [code]event[/code]'s inputs are applied in local "
"space instead of global space."
msgstr ""
-#: doc/classes/CanvasItem.xml:555
+#: doc/classes/CanvasItem.xml:564
msgid ""
"If [code]enable[/code] is [code]true[/code], the node won't inherit its "
"transform from parent canvas items."
msgstr ""
-#: doc/classes/CanvasItem.xml:564
+#: doc/classes/CanvasItem.xml:573
msgid ""
"If [code]enable[/code] is [code]true[/code], children will be updated with "
"local transform data."
msgstr ""
-#: doc/classes/CanvasItem.xml:573
+#: doc/classes/CanvasItem.xml:582
msgid ""
"If [code]enable[/code] is [code]true[/code], children will be updated with "
"global transform data."
msgstr ""
-#: doc/classes/CanvasItem.xml:580
+#: doc/classes/CanvasItem.xml:589
msgid ""
"Show the [CanvasItem] if it's currently hidden. For controls that inherit "
"[Popup], the correct way to make them visible is to call one of the multiple "
"[code]popup*()[/code] functions instead."
msgstr ""
-#: doc/classes/CanvasItem.xml:587
+#: doc/classes/CanvasItem.xml:596
msgid ""
"Queue the [CanvasItem] for update. [constant NOTIFICATION_DRAW] will be "
"called on idle time to request redraw."
msgstr ""
-#: doc/classes/CanvasItem.xml:593
+#: doc/classes/CanvasItem.xml:602
msgid ""
"The rendering layers in which this [CanvasItem] responds to [Light2D] nodes."
msgstr ""
-#: doc/classes/CanvasItem.xml:596
+#: doc/classes/CanvasItem.xml:605
msgid "The material applied to textures on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:599
+#: doc/classes/CanvasItem.xml:608
msgid "The color applied to textures on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:602
+#: doc/classes/CanvasItem.xml:611
msgid ""
"The color applied to textures on this [CanvasItem]. This is not inherited by "
"children [CanvasItem]s."
msgstr ""
-#: doc/classes/CanvasItem.xml:605
+#: doc/classes/CanvasItem.xml:614
msgid "If [code]true[/code], the object draws behind its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:608
+#: doc/classes/CanvasItem.xml:617
msgid "If [code]true[/code], the object draws on top of its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:611
+#: doc/classes/CanvasItem.xml:620
msgid "The texture filtering mode to use on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:614
+#: doc/classes/CanvasItem.xml:623
msgid "The texture repeating mode to use on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:617
+#: doc/classes/CanvasItem.xml:626
msgid ""
"If [code]true[/code], the parent [CanvasItem]'s [member material] property "
"is used as this one's material."
msgstr ""
-#: doc/classes/CanvasItem.xml:620
+#: doc/classes/CanvasItem.xml:629
msgid ""
-"If [code]true[/code], this [CanvasItem] is drawn. For controls that inherit "
-"[Popup], the correct way to make them visible is to call one of the multiple "
-"[code]popup*()[/code] functions instead."
+"If [code]true[/code], this [CanvasItem] is drawn. The node is only visible "
+"if all of its antecedents are visible as well (in other words, [method "
+"is_visible_in_tree] must return [code]true[/code]).\n"
+"[b]Note:[/b] For controls that inherit [Popup], the correct way to make them "
+"visible is to call one of the multiple [code]popup*()[/code] functions "
+"instead."
msgstr ""
-#: doc/classes/CanvasItem.xml:626
+#: doc/classes/CanvasItem.xml:636
msgid ""
"Emitted when the [CanvasItem] must redraw. This can only be connected "
"realtime, as deferred will not allow drawing."
msgstr ""
-#: doc/classes/CanvasItem.xml:631
+#: doc/classes/CanvasItem.xml:641
msgid "Emitted when becoming hidden."
msgstr ""
-#: doc/classes/CanvasItem.xml:636
+#: doc/classes/CanvasItem.xml:646
msgid "Emitted when the item rect has changed."
msgstr ""
-#: doc/classes/CanvasItem.xml:641
+#: doc/classes/CanvasItem.xml:651
msgid "Emitted when the visibility (hidden/visible) changes."
msgstr ""
-#: doc/classes/CanvasItem.xml:647
+#: doc/classes/CanvasItem.xml:657
msgid ""
"The [CanvasItem]'s transform has changed. This notification is only received "
"if enabled by [method set_notify_transform] or [method "
"set_notify_local_transform]."
msgstr ""
-#: doc/classes/CanvasItem.xml:650
+#: doc/classes/CanvasItem.xml:660
msgid "The [CanvasItem] is requested to draw."
msgstr ""
-#: doc/classes/CanvasItem.xml:653
+#: doc/classes/CanvasItem.xml:663
msgid "The [CanvasItem]'s visibility has changed."
msgstr ""
-#: doc/classes/CanvasItem.xml:656
+#: doc/classes/CanvasItem.xml:666
msgid "The [CanvasItem] has entered the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:659
+#: doc/classes/CanvasItem.xml:669
msgid "The [CanvasItem] has exited the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:662 doc/classes/CanvasItem.xml:688
+#: doc/classes/CanvasItem.xml:672 doc/classes/CanvasItem.xml:698
msgid "The [CanvasItem] will inherit the filter from its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:665
+#: doc/classes/CanvasItem.xml:675
msgid ""
"The texture filter reads from the nearest pixel only. The simplest and "
"fastest method of filtering. Useful for pixel art."
msgstr ""
-#: doc/classes/CanvasItem.xml:668
+#: doc/classes/CanvasItem.xml:678
msgid ""
"The texture filter blends between the nearest four pixels. Use this for most "
"cases where you want to avoid a pixelated style."
msgstr ""
-#: doc/classes/CanvasItem.xml:671
+#: doc/classes/CanvasItem.xml:681
msgid ""
"The texture filter reads from the nearest pixel in the nearest mipmap. This "
"is the fastest way to read from textures with mipmaps."
msgstr ""
-#: doc/classes/CanvasItem.xml:674
+#: doc/classes/CanvasItem.xml:684
msgid ""
"The texture filter blends between the nearest 4 pixels and between the "
"nearest 2 mipmaps. Use this for non-pixel art textures that may be viewed at "
@@ -11461,7 +11539,7 @@ msgid ""
"smooth out pixels that are smaller than on-screen pixels."
msgstr ""
-#: doc/classes/CanvasItem.xml:677
+#: doc/classes/CanvasItem.xml:687
msgid ""
"The texture filter reads from the nearest pixel, but selects a mipmap based "
"on the angle between the surface and the camera view. This reduces artifacts "
@@ -11470,7 +11548,7 @@ msgid ""
"TEXTURE_FILTER_NEAREST_WITH_MIPMAPS] is usually more appropriate."
msgstr ""
-#: doc/classes/CanvasItem.xml:681
+#: doc/classes/CanvasItem.xml:691
msgid ""
"The texture filter blends between the nearest 4 pixels and selects a mipmap "
"based on the angle between the surface and the camera view. This reduces "
@@ -11481,21 +11559,21 @@ msgid ""
"TEXTURE_FILTER_LINEAR_WITH_MIPMAPS] is usually more appropriate."
msgstr ""
-#: doc/classes/CanvasItem.xml:691
+#: doc/classes/CanvasItem.xml:701
msgid "Texture will not repeat."
msgstr ""
-#: doc/classes/CanvasItem.xml:694
+#: doc/classes/CanvasItem.xml:704
msgid "Texture will repeat normally."
msgstr ""
-#: doc/classes/CanvasItem.xml:697
+#: doc/classes/CanvasItem.xml:707
msgid ""
"Texture will repeat in a 2x2 tiled mode, where elements at even positions "
"are mirrored."
msgstr ""
-#: doc/classes/CanvasItem.xml:700
+#: doc/classes/CanvasItem.xml:710
msgid "Represents the size of the [enum TextureRepeat] enum."
msgstr ""
@@ -12568,16 +12646,15 @@ msgid ""
msgstr ""
#: doc/classes/Color.xml:4
-msgid "Color in RGBA format with some support for ARGB format."
+msgid "Color in RGBA format using floats on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:7
msgid ""
-"A color is represented by red, green, and blue [code](r, g, b)[/code] "
-"components. Additionally, [code]a[/code] represents the alpha component, "
-"often used for transparency. Values are in floating-point and usually range "
-"from 0 to 1. Some properties (such as [member CanvasItem.modulate]) may "
-"accept values greater than 1.\n"
+"A color represented by red, green, blue, and alpha (RGBA) components. The "
+"alpha component is often used for transparency. Values are in floating-point "
+"and usually range from 0 to 1. Some properties (such as CanvasItem.modulate) "
+"may accept values greater than 1 (overbright or HDR colors).\n"
"You can also create a color from standardized color names by using [method "
"@GDScript.ColorN] or directly using the color constants defined here. The "
"standardized color set is based on the [url=https://en.wikipedia.org/wiki/"
@@ -12791,47 +12868,48 @@ msgid ""
msgstr ""
#: doc/classes/Color.xml:280
-msgid "Alpha value (range 0 to 1)."
+msgid ""
+"The color's alpha (transparency) component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:283
-msgid "Alpha value (range 0 to 255)."
+msgid "Wrapper for [member a] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:286
-msgid "Blue value (range 0 to 1)."
+msgid "The color's blue component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:289
-msgid "Blue value (range 0 to 255)."
+msgid "Wrapper for [member b] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:292
-msgid "Green value (range 0 to 1)."
+msgid "The color's green component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:295
-msgid "Green value (range 0 to 255)."
+msgid "Wrapper for [member g] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:298
-msgid "HSV hue value (range 0 to 1)."
+msgid "The HSV hue of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:301
-msgid "Red value (range 0 to 1)."
+msgid "The color's red component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:304
-msgid "Red value (range 0 to 255)."
+msgid "Wrapper for [member r] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:307
-msgid "HSV saturation value (range 0 to 1)."
+msgid "The HSV saturation of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:310
-msgid "HSV value (range 0 to 1)."
+msgid "The HSV value (brightness) of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:315
@@ -14751,23 +14829,35 @@ msgstr ""
#: doc/classes/Control.xml:859
msgid ""
"The node's scale, relative to its [member rect_size]. Change this property "
-"to scale the node around its [member rect_pivot_offset]."
-msgstr ""
-
-#: doc/classes/Control.xml:862
+"to scale the node around its [member rect_pivot_offset]. The Control's "
+"[member hint_tooltip] will also scale according to this value.\n"
+"[b]Note:[/b] This property is mainly intended to be used for animation "
+"purposes. Text inside the Control will look pixelated or blurry when the "
+"Control is scaled. To support multiple resolutions in your project, use an "
+"appropriate viewport stretch mode as described in the [url=https://docs."
+"godotengine.org/en/latest/tutorials/viewports/multiple_resolutions."
+"html]documentation[/url] instead of scaling Controls individually.\n"
+"[b]Note:[/b] If the Control node is a child of a [Container] node, the scale "
+"will be reset to [code]Vector2(1, 1)[/code] when the scene is instanced. To "
+"set the Control's scale when it's instanced, wait for one frame using "
+"[code]yield(get_tree(), \"idle_frame\")[/code] then set its [member "
+"rect_scale] property."
+msgstr ""
+
+#: doc/classes/Control.xml:864
msgid ""
"The size of the node's bounding rectangle, in pixels. [Container] nodes "
"update this property automatically."
msgstr ""
-#: doc/classes/Control.xml:865
+#: doc/classes/Control.xml:867
msgid ""
"Tells the parent [Container] nodes how they should resize and place the node "
"on the X axis. Use one of the [enum SizeFlags] constants to change the "
"flags. See the constants to learn what each does."
msgstr ""
-#: doc/classes/Control.xml:868
+#: doc/classes/Control.xml:870
msgid ""
"If the node and at least one of its neighbours uses the [constant "
"SIZE_EXPAND] size flag, the parent [Container] will let it take more or less "
@@ -14776,181 +14866,181 @@ msgid ""
"space."
msgstr ""
-#: doc/classes/Control.xml:871
+#: doc/classes/Control.xml:873
msgid ""
"Tells the parent [Container] nodes how they should resize and place the node "
"on the Y axis. Use one of the [enum SizeFlags] constants to change the "
"flags. See the constants to learn what each does."
msgstr ""
-#: doc/classes/Control.xml:874
+#: doc/classes/Control.xml:876
msgid ""
"Changing this property replaces the current [Theme] resource this node and "
"all its [Control] children use."
msgstr ""
-#: doc/classes/Control.xml:880
+#: doc/classes/Control.xml:882
msgid "Emitted when the node gains keyboard focus."
msgstr ""
-#: doc/classes/Control.xml:885
+#: doc/classes/Control.xml:887
msgid "Emitted when the node loses keyboard focus."
msgstr ""
-#: doc/classes/Control.xml:892
+#: doc/classes/Control.xml:894
msgid "Emitted when the node receives an [InputEvent]."
msgstr ""
-#: doc/classes/Control.xml:897
+#: doc/classes/Control.xml:899
msgid "Emitted when the node's minimum size changes."
msgstr ""
-#: doc/classes/Control.xml:902
+#: doc/classes/Control.xml:904
msgid ""
"Emitted when the mouse enters the control's [code]Rect[/code] area, provided "
"its [member mouse_filter] lets the event reach it."
msgstr ""
-#: doc/classes/Control.xml:907
+#: doc/classes/Control.xml:909
msgid ""
"Emitted when the mouse leaves the control's [code]Rect[/code] area, provided "
"its [member mouse_filter] lets the event reach it."
msgstr ""
-#: doc/classes/Control.xml:912
+#: doc/classes/Control.xml:914
msgid "Emitted when the control changes size."
msgstr ""
-#: doc/classes/Control.xml:917
+#: doc/classes/Control.xml:919
msgid ""
"Emitted when one of the size flags changes. See [member "
"size_flags_horizontal] and [member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:927
+#: doc/classes/Control.xml:929
msgid "The node cannot grab focus. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:930
+#: doc/classes/Control.xml:932
msgid ""
"The node can only grab focus on mouse clicks. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:933
+#: doc/classes/Control.xml:935
msgid ""
"The node can grab focus on mouse click or using the arrows and the Tab keys "
"on the keyboard. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:936
+#: doc/classes/Control.xml:938
msgid ""
"Sent when the node changes size. Use [member rect_size] to get the new size."
msgstr ""
-#: doc/classes/Control.xml:939
+#: doc/classes/Control.xml:941
msgid "Sent when the mouse pointer enters the node."
msgstr ""
-#: doc/classes/Control.xml:942
+#: doc/classes/Control.xml:944
msgid "Sent when the mouse pointer exits the node."
msgstr ""
-#: doc/classes/Control.xml:945
+#: doc/classes/Control.xml:947
msgid "Sent when the node grabs focus."
msgstr ""
-#: doc/classes/Control.xml:948
+#: doc/classes/Control.xml:950
msgid "Sent when the node loses focus."
msgstr ""
-#: doc/classes/Control.xml:951
+#: doc/classes/Control.xml:953
msgid ""
"Sent when the node's [member theme] changes, right before Godot redraws the "
"control. Happens when you call one of the [code]add_theme_*_override[/code] "
"methods."
msgstr ""
-#: doc/classes/Control.xml:954
+#: doc/classes/Control.xml:956
msgid ""
"Sent when this node is inside a [ScrollContainer] which has begun being "
"scrolled."
msgstr ""
-#: doc/classes/Control.xml:957
+#: doc/classes/Control.xml:959
msgid ""
"Sent when this node is inside a [ScrollContainer] which has stopped being "
"scrolled."
msgstr ""
-#: doc/classes/Control.xml:960
+#: doc/classes/Control.xml:962
msgid ""
"Show the system's arrow mouse cursor when the user hovers the node. Use with "
"[member mouse_default_cursor_shape]."
msgstr ""
-#: doc/classes/Control.xml:963
+#: doc/classes/Control.xml:965
msgid ""
"Show the system's I-beam mouse cursor when the user hovers the node. The I-"
"beam pointer has a shape similar to \"I\". It tells the user they can "
"highlight or insert text."
msgstr ""
-#: doc/classes/Control.xml:966
+#: doc/classes/Control.xml:968
msgid ""
"Show the system's pointing hand mouse cursor when the user hovers the node."
msgstr ""
-#: doc/classes/Control.xml:969
+#: doc/classes/Control.xml:971
msgid "Show the system's cross mouse cursor when the user hovers the node."
msgstr ""
-#: doc/classes/Control.xml:972
+#: doc/classes/Control.xml:974
msgid ""
"Show the system's wait mouse cursor, often an hourglass, when the user "
"hovers the node."
msgstr ""
-#: doc/classes/Control.xml:975
+#: doc/classes/Control.xml:977
msgid ""
"Show the system's busy mouse cursor when the user hovers the node. Often an "
"hourglass."
msgstr ""
-#: doc/classes/Control.xml:978
+#: doc/classes/Control.xml:980
msgid ""
"Show the system's drag mouse cursor, often a closed fist or a cross symbol, "
"when the user hovers the node. It tells the user they're currently dragging "
"an item, like a node in the Scene dock."
msgstr ""
-#: doc/classes/Control.xml:981
+#: doc/classes/Control.xml:983
msgid ""
"Show the system's drop mouse cursor when the user hovers the node. It can be "
"an open hand. It tells the user they can drop an item they're currently "
"grabbing, like a node in the Scene dock."
msgstr ""
-#: doc/classes/Control.xml:984
+#: doc/classes/Control.xml:986
msgid ""
"Show the system's forbidden mouse cursor when the user hovers the node. "
"Often a crossed circle."
msgstr ""
-#: doc/classes/Control.xml:987
+#: doc/classes/Control.xml:989
msgid ""
"Show the system's vertical resize mouse cursor when the user hovers the "
"node. A double-headed vertical arrow. It tells the user they can resize the "
"window or the panel vertically."
msgstr ""
-#: doc/classes/Control.xml:990
+#: doc/classes/Control.xml:992
msgid ""
"Show the system's horizontal resize mouse cursor when the user hovers the "
"node. A double-headed horizontal arrow. It tells the user they can resize "
"the window or the panel horizontally."
msgstr ""
-#: doc/classes/Control.xml:993
+#: doc/classes/Control.xml:995
msgid ""
"Show the system's window resize mouse cursor when the user hovers the node. "
"The cursor is a double-headed arrow that goes from the bottom left to the "
@@ -14958,7 +15048,7 @@ msgid ""
"horizontally and vertically."
msgstr ""
-#: doc/classes/Control.xml:996
+#: doc/classes/Control.xml:998
msgid ""
"Show the system's window resize mouse cursor when the user hovers the node. "
"The cursor is a double-headed arrow that goes from the top left to the "
@@ -14966,93 +15056,93 @@ msgid ""
"they can resize the window or the panel both horizontally and vertically."
msgstr ""
-#: doc/classes/Control.xml:999
+#: doc/classes/Control.xml:1001
msgid ""
"Show the system's move mouse cursor when the user hovers the node. It shows "
"2 double-headed arrows at a 90 degree angle. It tells the user they can move "
"a UI element freely."
msgstr ""
-#: doc/classes/Control.xml:1002
+#: doc/classes/Control.xml:1004
msgid ""
"Show the system's vertical split mouse cursor when the user hovers the node. "
"On Windows, it's the same as [constant CURSOR_VSIZE]."
msgstr ""
-#: doc/classes/Control.xml:1005
+#: doc/classes/Control.xml:1007
msgid ""
"Show the system's horizontal split mouse cursor when the user hovers the "
"node. On Windows, it's the same as [constant CURSOR_HSIZE]."
msgstr ""
-#: doc/classes/Control.xml:1008
+#: doc/classes/Control.xml:1010
msgid ""
"Show the system's help mouse cursor when the user hovers the node, a "
"question mark."
msgstr ""
-#: doc/classes/Control.xml:1011
+#: doc/classes/Control.xml:1013
msgid ""
"Snap all 4 anchors to the top-left of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1014
+#: doc/classes/Control.xml:1016
msgid ""
"Snap all 4 anchors to the top-right of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1017
+#: doc/classes/Control.xml:1019
msgid ""
"Snap all 4 anchors to the bottom-left of the parent control's bounds. Use "
"with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1020
+#: doc/classes/Control.xml:1022
msgid ""
"Snap all 4 anchors to the bottom-right of the parent control's bounds. Use "
"with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1023
+#: doc/classes/Control.xml:1025
msgid ""
"Snap all 4 anchors to the center of the left edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1026
+#: doc/classes/Control.xml:1028
msgid ""
"Snap all 4 anchors to the center of the top edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1029
+#: doc/classes/Control.xml:1031
msgid ""
"Snap all 4 anchors to the center of the right edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1032
+#: doc/classes/Control.xml:1034
msgid ""
"Snap all 4 anchors to the center of the bottom edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1035
+#: doc/classes/Control.xml:1037
msgid ""
"Snap all 4 anchors to the center of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1038
+#: doc/classes/Control.xml:1040
msgid ""
"Snap all 4 anchors to the left edge of the parent control. The left margin "
"becomes relative to the left edge and the top margin relative to the top "
"left corner of the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1041
+#: doc/classes/Control.xml:1043
msgid ""
"Snap all 4 anchors to the top edge of the parent control. The left margin "
"becomes relative to the top left corner, the top margin relative to the top "
@@ -15060,14 +15150,14 @@ msgid ""
"parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1044
+#: doc/classes/Control.xml:1046
msgid ""
"Snap all 4 anchors to the right edge of the parent control. The right margin "
"becomes relative to the right edge and the top margin relative to the top "
"right corner of the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1047
+#: doc/classes/Control.xml:1049
msgid ""
"Snap all 4 anchors to the bottom edge of the parent control. The left margin "
"becomes relative to the bottom left corner, the bottom margin relative to "
@@ -15075,19 +15165,19 @@ msgid ""
"the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1050
+#: doc/classes/Control.xml:1052
msgid ""
"Snap all 4 anchors to a vertical line that cuts the parent control in half. "
"Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1053
+#: doc/classes/Control.xml:1055
msgid ""
"Snap all 4 anchors to a horizontal line that cuts the parent control in "
"half. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1056
+#: doc/classes/Control.xml:1058
msgid ""
"Snap all 4 anchors to the respective corners of the parent control. Set all "
"4 margins to 0 after you applied this preset and the [Control] will fit its "
@@ -15095,30 +15185,30 @@ msgid ""
"editor. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1059
+#: doc/classes/Control.xml:1061
msgid "The control will be resized to its minimum size."
msgstr ""
-#: doc/classes/Control.xml:1062
+#: doc/classes/Control.xml:1064
msgid "The control's width will not change."
msgstr ""
-#: doc/classes/Control.xml:1065
+#: doc/classes/Control.xml:1067
msgid "The control's height will not change."
msgstr ""
-#: doc/classes/Control.xml:1068
+#: doc/classes/Control.xml:1070
msgid "The control's size will not change."
msgstr ""
-#: doc/classes/Control.xml:1071
+#: doc/classes/Control.xml:1073
msgid ""
"Tells the parent [Container] to expand the bounds of this node to fill all "
"the available space without pushing any other node. Use with [member "
"size_flags_horizontal] and [member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1074
+#: doc/classes/Control.xml:1076
msgid ""
"Tells the parent [Container] to let this node take all the available space "
"on the axis you flag. If multiple neighboring nodes are set to expand, "
@@ -15127,13 +15217,13 @@ msgid ""
"[member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1077
+#: doc/classes/Control.xml:1079
msgid ""
"Sets the node's size flags to both fill and expand. See the 2 constants "
"above for more information."
msgstr ""
-#: doc/classes/Control.xml:1080
+#: doc/classes/Control.xml:1082
msgid ""
"Tells the parent [Container] to center the node in itself. It centers the "
"control based on its bounding box, so it doesn't work with the fill or "
@@ -15141,7 +15231,7 @@ msgid ""
"size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1083
+#: doc/classes/Control.xml:1085
msgid ""
"Tells the parent [Container] to align the node with its end, either the "
"bottom or the right edge. It doesn't work with the fill or expand size "
@@ -15149,7 +15239,7 @@ msgid ""
"size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1086
+#: doc/classes/Control.xml:1088
msgid ""
"The control will receive mouse button input events through [method "
"_gui_input] if clicked on. And the control will receive the [signal "
@@ -15158,7 +15248,7 @@ msgid ""
"other controls. This also results in blocking signals in other controls."
msgstr ""
-#: doc/classes/Control.xml:1089
+#: doc/classes/Control.xml:1091
msgid ""
"The control will receive mouse button input events through [method "
"_gui_input] if clicked on. And the control will receive the [signal "
@@ -15170,7 +15260,7 @@ msgid ""
"not be fired."
msgstr ""
-#: doc/classes/Control.xml:1092
+#: doc/classes/Control.xml:1094
msgid ""
"The control will not receive mouse button input events through [method "
"_gui_input]. The control will also not receive the [signal mouse_entered] "
@@ -15179,25 +15269,25 @@ msgid ""
"handled automatically."
msgstr ""
-#: doc/classes/Control.xml:1095
+#: doc/classes/Control.xml:1097
msgid ""
"The control will grow to the left or top to make up if its minimum size is "
"changed to be greater than its current size on the respective axis."
msgstr ""
-#: doc/classes/Control.xml:1098
+#: doc/classes/Control.xml:1100
msgid ""
"The control will grow to the right or bottom to make up if its minimum size "
"is changed to be greater than its current size on the respective axis."
msgstr ""
-#: doc/classes/Control.xml:1101
+#: doc/classes/Control.xml:1103
msgid ""
"The control will grow in both directions equally to make up if its minimum "
"size is changed to be greater than its current size."
msgstr ""
-#: doc/classes/Control.xml:1104
+#: doc/classes/Control.xml:1106
msgid ""
"Snaps one of the 4 anchor's sides to the origin of the node's [code]Rect[/"
"code], in the top left. Use it with one of the [code]anchor_*[/code] member "
@@ -15205,7 +15295,7 @@ msgid ""
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1107
+#: doc/classes/Control.xml:1109
msgid ""
"Snaps one of the 4 anchor's sides to the end of the node's [code]Rect[/"
"code], in the bottom right. Use it with one of the [code]anchor_*[/code] "
@@ -16990,7 +17080,7 @@ msgstr ""
msgid ""
"Returns the [Texture2D] associated with the specified [enum DecalTexture]. "
"This is a convenience method, in most cases you should access the texture "
-"directly. \n"
+"directly.\n"
"For example, instead of [code]albedo_tex = $Decal.get_texture(Decal."
"TEXTURE_ALBEDO)[/code], use [code]albedo_tex = $Decal.texture_albedo[/"
"code].\n"
@@ -17006,7 +17096,7 @@ msgstr ""
msgid ""
"Sets the [Texture2D] associated with the specified [enum DecalTexture]. This "
"is a convenience method, in most cases you should access the texture "
-"directly. \n"
+"directly.\n"
"For example, instead of [code]$Decal.set_texture(Decal.TEXTURE_ALBEDO, "
"albedo_tex)[/code], use [code]$Decal.texture_albedo = albedo_tex[/code].\n"
"One case where this is better than accessing the texture directly is when "
@@ -17355,7 +17445,7 @@ msgstr ""
msgid "The light's shadow rendering algorithm. See [enum ShadowMode]."
msgstr ""
-#: doc/classes/DirectionalLight3D.xml:31 doc/classes/RenderingServer.xml:3254
+#: doc/classes/DirectionalLight3D.xml:31 doc/classes/RenderingServer.xml:3250
msgid ""
"Sets the size of the directional shadow pancake. The pancake offsets the "
"start of the shadow's camera frustum to provide a higher effective depth "
@@ -17429,10 +17519,10 @@ msgstr ""
msgid ""
"Directory type. It is used to manage directories and their content (not "
"restricted to the project folder).\n"
-"When creating a new [Directory], its default opened directory will be "
-"[code]res://[/code]. This may change in the future, so it is advised to "
-"always use [method open] to initialize your [Directory] where you want to "
-"operate, with explicit error checking.\n"
+"When creating a new [Directory], it must be explicitly opened using [method "
+"open] before most methods can be used. However, [method file_exists] and "
+"[method dir_exists] can be used without opening a directory. If so, they use "
+"a path relative to [code]res://[/code].\n"
"Here is an example on how to iterate through the files of a directory:\n"
"[codeblock]\n"
"func dir_contents(path):\n"
@@ -17451,7 +17541,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Directory.xml:27 doc/classes/File.xml:25
+#: doc/classes/Directory.xml:27 doc/classes/File.xml:26
msgid ""
"https://docs.godotengine.org/en/latest/getting_started/step_by_step/"
"filesystem.html"
@@ -17485,41 +17575,43 @@ msgstr ""
#: doc/classes/Directory.xml:65
msgid ""
"Returns whether the target directory exists. The argument can be relative to "
-"the current directory, or an absolute path."
+"the current directory, or an absolute path.\n"
+"If the [Directory] is not open, the path is relative to [code]res://[/code]."
msgstr ""
-#: doc/classes/Directory.xml:74
+#: doc/classes/Directory.xml:75
msgid ""
"Returns whether the target file exists. The argument can be relative to the "
-"current directory, or an absolute path."
+"current directory, or an absolute path.\n"
+"If the [Directory] is not open, the path is relative to [code]res://[/code]."
msgstr ""
-#: doc/classes/Directory.xml:81
+#: doc/classes/Directory.xml:83
msgid ""
"Returns the absolute path to the currently opened directory (e.g. "
"[code]res://folder[/code] or [code]C:\\tmp\\folder[/code])."
msgstr ""
-#: doc/classes/Directory.xml:88
+#: doc/classes/Directory.xml:90
msgid ""
"Returns the currently opened directory's drive index. See [method get_drive] "
"to convert returned index to the name of the drive."
msgstr ""
-#: doc/classes/Directory.xml:97
+#: doc/classes/Directory.xml:99
msgid ""
"On Windows, returns the name of the drive (partition) passed as an argument "
"(e.g. [code]C:[/code]). On other platforms, or if the requested drive does "
"not existed, the method returns an empty String."
msgstr ""
-#: doc/classes/Directory.xml:104
+#: doc/classes/Directory.xml:106
msgid ""
"On Windows, returns the number of drives (partitions) mounted on the current "
"filesystem. On other platforms, the method returns 0."
msgstr ""
-#: doc/classes/Directory.xml:111
+#: doc/classes/Directory.xml:113
msgid ""
"Returns the next element (file or directory) in the current directory "
"(including [code].[/code] and [code]..[/code], unless "
@@ -17530,14 +17622,14 @@ msgid ""
"mandatory in such a case)."
msgstr ""
-#: doc/classes/Directory.xml:119
+#: doc/classes/Directory.xml:121
msgid ""
"On UNIX desktop systems, returns the available space on the current "
"directory's disk. On other platforms, this information is not available and "
"the method returns 0 or -1."
msgstr ""
-#: doc/classes/Directory.xml:130
+#: doc/classes/Directory.xml:132
msgid ""
"Initializes the stream used to list all files and directories using the "
"[method get_next] function, closing the current opened stream if needed. "
@@ -17549,13 +17641,13 @@ msgid ""
"out."
msgstr ""
-#: doc/classes/Directory.xml:139
+#: doc/classes/Directory.xml:141
msgid ""
"Closes the current stream opened with [method list_dir_begin] (whether it "
"has been fully processed with [method get_next] or not does not matter)."
msgstr ""
-#: doc/classes/Directory.xml:148
+#: doc/classes/Directory.xml:150
msgid ""
"Creates a directory. The argument can be relative to the current directory, "
"or an absolute path. The target directory should be placed in an already "
@@ -17564,7 +17656,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:158
+#: doc/classes/Directory.xml:160
msgid ""
"Creates a target directory and all necessary intermediate directories in its "
"path, by calling [method make_dir] recursively. The argument can be relative "
@@ -17572,7 +17664,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:168
+#: doc/classes/Directory.xml:170
msgid ""
"Opens an existing directory of the filesystem. The [code]path[/code] "
"argument can be within the project tree ([code]res://folder[/code]), the "
@@ -17581,7 +17673,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:178
+#: doc/classes/Directory.xml:180
msgid ""
"Deletes the target file or an empty directory. The argument can be relative "
"to the current directory, or an absolute path. If the target directory is "
@@ -17589,7 +17681,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:190
+#: doc/classes/Directory.xml:192
msgid ""
"Renames (move) the [code]from[/code] file to the [code]to[/code] "
"destination. Both arguments should be paths to files, either relative or "
@@ -17630,6 +17722,53 @@ msgid ""
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
+#: doc/classes/DisplayServer.xml:530
+msgid ""
+"Return the greatest scale factor of all screens.\n"
+"[b]Note:[/b] On macOS returned value is [code]2.0[/code] if there is at "
+"least one hiDPI (Retina) screen in the system, and [code]1.0[/code] in all "
+"other cases.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:557
+msgid ""
+"Return the scale factor of the specified screen by index.\n"
+"[b]Note:[/b] On macOS returned value is [code]2.0[/code] for hiDPI (Retina) "
+"screen, and [code]1.0[/code] for all other cases.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:630
+msgid ""
+"Returns the on-screen keyboard's height in pixels. Returns 0 if there is no "
+"keyboard or if it is currently hidden."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:637
+msgid "Hides the virtual keyboard if it is shown, does nothing otherwise."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:656
+msgid ""
+"Shows the virtual keyboard if the platform has one.\n"
+"[code]existing_text[/code] parameter is useful for implementing your own "
+"[LineEdit] or [TextEdit], as it tells the virtual keyboard what text has "
+"already been typed (the virtual keyboard uses it for auto-correct and "
+"predictions).\n"
+"[code]position[/code] parameter is the screen space [Rect2] of the edited "
+"text.\n"
+"[code]multiline[/code] parameter needs to be set to [code]true[/code] to be "
+"able to enter multiple lines of text, as in [TextEdit].\n"
+"[code]max_length[/code] limits the number of characters that can be entered "
+"if different from [code]-1[/code].\n"
+"[code]cursor_start[/code] can optionally define the current text cursor "
+"position if [code]cursor_end[/code] is not set.\n"
+"[code]cursor_start[/code] and [code]cursor_end[/code] can optionally define "
+"the current text selection.\n"
+"[b]Note:[/b] This method is implemented on Android, iOS and UWP."
+msgstr ""
+
#: doc/classes/DTLSServer.xml:4
msgid "Helper class to implement a DTLS server."
msgstr ""
@@ -17750,54 +17889,62 @@ msgstr ""
msgid "Adds a fallback font."
msgstr ""
-#: doc/classes/DynamicFont.xml:35
+#: doc/classes/DynamicFont.xml:33
+msgid ""
+"Returns a string containing all the characters available in the main and all "
+"the fallback fonts.\n"
+"If a given character is included in more than one font, it appears only once "
+"in the returned string."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:43
msgid "Returns the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:42
+#: doc/classes/DynamicFont.xml:50
msgid "Returns the number of fallback fonts."
msgstr ""
-#: doc/classes/DynamicFont.xml:51
+#: doc/classes/DynamicFont.xml:59
msgid ""
"Returns the spacing for the given [code]type[/code] (see [enum SpacingType])."
msgstr ""
-#: doc/classes/DynamicFont.xml:60
+#: doc/classes/DynamicFont.xml:68
msgid "Removes the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:71
+#: doc/classes/DynamicFont.xml:79
msgid "Sets the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:82
+#: doc/classes/DynamicFont.xml:90
msgid ""
"Sets the spacing for [code]type[/code] (see [enum SpacingType]) to "
"[code]value[/code] in pixels (not relative to the font size)."
msgstr ""
-#: doc/classes/DynamicFont.xml:88
+#: doc/classes/DynamicFont.xml:96
msgid "Extra spacing at the bottom in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:91
+#: doc/classes/DynamicFont.xml:99
msgid "Extra character spacing in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:94
+#: doc/classes/DynamicFont.xml:102
msgid "Extra space spacing in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:97
+#: doc/classes/DynamicFont.xml:105
msgid "Extra spacing at the top in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:100
+#: doc/classes/DynamicFont.xml:108
msgid "The font data."
msgstr ""
-#: doc/classes/DynamicFont.xml:103
+#: doc/classes/DynamicFont.xml:111
msgid ""
"The font outline's color.\n"
"[b]Note:[/b] It's recommended to leave this at the default value so that you "
@@ -17806,27 +17953,27 @@ msgid ""
"outline modulate theme item."
msgstr ""
-#: doc/classes/DynamicFont.xml:107
+#: doc/classes/DynamicFont.xml:115
msgid "The font outline's thickness in pixels (not relative to the font size)."
msgstr ""
-#: doc/classes/DynamicFont.xml:110
+#: doc/classes/DynamicFont.xml:118
msgid "The font size in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:115
+#: doc/classes/DynamicFont.xml:123
msgid "Spacing at the top."
msgstr ""
-#: doc/classes/DynamicFont.xml:118
+#: doc/classes/DynamicFont.xml:126
msgid "Spacing at the bottom."
msgstr ""
-#: doc/classes/DynamicFont.xml:121
+#: doc/classes/DynamicFont.xml:129
msgid "Character spacing."
msgstr ""
-#: doc/classes/DynamicFont.xml:124
+#: doc/classes/DynamicFont.xml:132
msgid "Space spacing."
msgstr ""
@@ -18208,7 +18355,12 @@ msgstr ""
msgid "Remitted if a resource is reimported."
msgstr ""
-#: doc/classes/EditorFileSystem.xml:106
+#: doc/classes/EditorFileSystem.xml:100
+msgid ""
+"Emitted if at least one resource is reloaded when the filesystem is scanned."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:107
msgid "Emitted if the source of any imported file changed."
msgstr ""
@@ -18250,29 +18402,43 @@ msgstr ""
msgid "Returns the path to the file at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:86
+#: doc/classes/EditorFileSystemDirectory.xml:70
+msgid ""
+"Returns the base class of the script class defined in the file at index "
+"[code]idx[/code]. If the file doesn't define a script class using the "
+"[code]class_name[/code] syntax, this will return an empty string."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:79
+msgid ""
+"Returns the name of the script class defined in the file at index [code]idx[/"
+"code]. If the file doesn't define a script class using the [code]class_name[/"
+"code] syntax, this will return an empty string."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:88
msgid "Returns the file extension of the file at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:93
+#: doc/classes/EditorFileSystemDirectory.xml:95
msgid "Returns the name of this directory."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:100
+#: doc/classes/EditorFileSystemDirectory.xml:102
msgid ""
"Returns the parent directory for this directory or [code]null[/code] if "
"called on a directory at [code]res://[/code] or [code]user://[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:107
+#: doc/classes/EditorFileSystemDirectory.xml:109
msgid "Returns the path to this directory."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:116
+#: doc/classes/EditorFileSystemDirectory.xml:118
msgid "Returns the subdirectory at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:123
+#: doc/classes/EditorFileSystemDirectory.xml:125
msgid "Returns the number of subdirectories in this directory."
msgstr ""
@@ -18363,45 +18529,72 @@ msgstr ""
msgid "Gets the unique name of the importer."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:92
+#: doc/classes/EditorImportPlugin.xml:86
+msgid ""
+"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. For example:\n"
+"[codeblock]\n"
+"func get_option_visibility(option, options):\n"
+" # Only show the lossy quality setting if the compression mode is set to "
+"\"Lossy\".\n"
+" if option == \"compress/lossy_quality\" and options.has(\"compress/mode"
+"\"):\n"
+" return int(options[\"compress/mode\"]) == COMPRESS_LOSSY\n"
+"\n"
+" return true\n"
+"[/codeblock]\n"
+"Return [code]true[/code] to make all options always visible."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:102
msgid ""
"Gets the number of initial presets defined by the plugin. Use [method "
"get_import_options] to get the default options for the preset and [method "
"get_preset_name] to get the name of the preset."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:101
+#: doc/classes/EditorImportPlugin.xml:111
msgid "Gets the name of the options preset at this index."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:108
+#: doc/classes/EditorImportPlugin.xml:118
msgid ""
"Gets the priority of this plugin for the recognized extension. Higher "
"priority plugins will be preferred. The default priority is [code]1.0[/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:115
+#: doc/classes/EditorImportPlugin.xml:125
msgid ""
"Gets the list of file extensions to associate with this loader (case-"
"insensitive). e.g. [code][\"obj\"][/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:122
+#: doc/classes/EditorImportPlugin.xml:132
msgid ""
"Gets the Godot resource type associated with this loader. e.g. [code]\"Mesh"
"\"[/code] or [code]\"Animation\"[/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:129
+#: doc/classes/EditorImportPlugin.xml:139
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:136
+#: doc/classes/EditorImportPlugin.xml:146
msgid "Gets the name to display in the import window."
msgstr ""
+#: doc/classes/EditorImportPlugin.xml:163
+msgid ""
+"Imports [code]source_file[/code] into [code]save_path[/code] with the import "
+"[code]options[/code] specified. The [code]platform_variants[/code] and "
+"[code]gen_files[/code] arrays will be modified by this function.\n"
+"This method must be overridden to do the actual importing work. See this "
+"class' description for an example of overriding this method."
+msgstr ""
+
#: doc/classes/EditorInspector.xml:4
msgid "A tab used to edit properties of the selected node."
msgstr ""
@@ -18417,6 +18610,58 @@ msgid ""
"the singleton using [method EditorInterface.get_inspector]."
msgstr ""
+#: doc/classes/EditorInspector.xml:17
+msgid ""
+"Refreshes the inspector.\n"
+"[b]Note:[/b] To save on CPU resources, calling this method will do nothing "
+"if the time specified in [code]docks/property_editor/auto_refresh_interval[/"
+"code] editor setting hasn't passed yet since this method was last called. "
+"(By default, this interval is set to 0.3 seconds.)"
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:30
+msgid ""
+"Emitted when the Edit button of an [Object] has been pressed in the "
+"inspector. This is mainly used in the remote scene tree inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:37
+msgid "Emitted when a property is removed from the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:44
+msgid "Emitted when a property is edited in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:51
+msgid ""
+"Emitted when a property is keyed in the inspector. Properties can be keyed "
+"by clicking the \"key\" icon next to a property when the Animation panel is "
+"toggled."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:58
+msgid "Emitted when a property is selected in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:67
+msgid ""
+"Emitted when a boolean property is toggled in the inspector.\n"
+"[b]Note:[/b] This signal is never emitted if the internal [code]autoclear[/"
+"code] property enabled. Since this property is always enabled in the editor "
+"inspector, this signal is never emitted by the editor itself."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:77
+msgid "Emitted when a resource is selected in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:82
+msgid ""
+"Emitted when a property that requires a restart to be applied is edited in "
+"the inspector. This is only used in the Project Settings and Editor Settings."
+msgstr ""
+
#: doc/classes/EditorInspectorPlugin.xml:4
msgid "Plugin for adding custom property editors on inspector."
msgstr ""
@@ -18495,91 +18740,157 @@ msgstr ""
#: doc/classes/EditorInterface.xml:26
msgid ""
-"Returns the main container of Godot editor's window. You can use it, for "
-"example, to retrieve the size of the container and place your controls "
+"Returns the main container of Godot editor's window. For example, you can "
+"use it to retrieve the size of the container and place your controls "
"accordingly."
msgstr ""
-#: doc/classes/EditorInterface.xml:39
+#: doc/classes/EditorInterface.xml:33
+msgid "Returns the current path being viewed in the [FileSystemDock]."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:40
msgid "Returns the edited (current) scene's root [Node]."
msgstr ""
-#: doc/classes/EditorInterface.xml:46
-msgid "Returns the [EditorSettings]."
+#: doc/classes/EditorInterface.xml:47
+msgid "Returns the editor's [EditorSettings] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:54
+msgid ""
+"Returns the main editor control. Use this as a parent for main screens.\n"
+"[b]Note:[/b] This returns the main editor control containing the whole "
+"editor, not the 2D or 3D viewports specifically."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:62
+msgid "Returns the editor's [FileSystemDock] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:53
-msgid "Returns the editor [Viewport]."
+#: doc/classes/EditorInterface.xml:69
+msgid "Returns the editor's [EditorInspector] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:72
+#: doc/classes/EditorInterface.xml:76
msgid "Returns an [Array] with the file paths of the currently opened scenes."
msgstr ""
-#: doc/classes/EditorInterface.xml:79
-msgid "Returns the [EditorFileSystem]."
+#: doc/classes/EditorInterface.xml:83
+msgid ""
+"Returns the name of the scene that is being played. If no scene is currently "
+"being played, returns an empty string."
msgstr ""
-#: doc/classes/EditorInterface.xml:86
-msgid "Returns the [EditorResourcePreview]."
+#: doc/classes/EditorInterface.xml:90
+msgid "Returns the editor's [EditorFileSystem] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:93
-msgid "Returns the [ScriptEditor]."
+#: doc/classes/EditorInterface.xml:97
+msgid "Returns the editor's [EditorResourcePreview] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:106
-msgid "Returns the [EditorSelection]."
+#: doc/classes/EditorInterface.xml:104
+msgid "Returns the editor's [ScriptEditor] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:117
+#: doc/classes/EditorInterface.xml:111
msgid ""
-"Shows the given property on the given [code]object[/code] in the Editor's "
-"Inspector dock."
+"Returns the path of the directory currently selected in the "
+"[FileSystemDock]. If a file is selected, its base directory will be returned "
+"using [method String.get_base_dir] instead."
msgstr ""
-#: doc/classes/EditorInterface.xml:126
+#: doc/classes/EditorInterface.xml:118
+msgid "Returns the editor's [EditorSelection] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:129
msgid ""
-"Returns the enabled status of a plugin. The plugin name is the same as its "
-"directory name."
+"Shows the given property on the given [code]object[/code] in the editor's "
+"Inspector dock."
msgstr ""
-#: doc/classes/EditorInterface.xml:137
+#: doc/classes/EditorInterface.xml:136
+#, fuzzy
+msgid ""
+"Returns [code]true[/code] if a scene is currently being played, [code]false[/"
+"code] otherwise. Paused scenes are considered as being played."
+msgstr "Ritorna [code]true[/code] se [code]s[/code] è zero o quasi zero."
+
+#: doc/classes/EditorInterface.xml:145
+#, fuzzy
+msgid ""
+"Returns [code]true[/code] if the specified [code]plugin[/code] is enabled. "
+"The plugin name is the same as its directory name."
+msgstr "Ritorna [code]true[/code] se [code]s[/code] è zero o quasi zero."
+
+#: doc/classes/EditorInterface.xml:156
msgid ""
"Returns mesh previews rendered at the given size as an [Array] of "
"[Texture2D]s."
msgstr ""
-#: doc/classes/EditorInterface.xml:146
+#: doc/classes/EditorInterface.xml:165
msgid "Opens the scene at the given path."
msgstr ""
-#: doc/classes/EditorInterface.xml:155
+#: doc/classes/EditorInterface.xml:172
+msgid "Plays the currently active scene."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:181
+msgid "Plays the scene specified by its filepath."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:188
+msgid "Plays the main scene."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:197
msgid "Reloads the scene at the given path."
msgstr ""
-#: doc/classes/EditorInterface.xml:162
+#: doc/classes/EditorInterface.xml:204
msgid ""
"Saves the scene. Returns either [code]OK[/code] or [code]ERR_CANT_CREATE[/"
"code] (see [@GlobalScope] constants)."
msgstr ""
-#: doc/classes/EditorInterface.xml:173
+#: doc/classes/EditorInterface.xml:215
msgid "Saves the scene as a file at [code]path[/code]."
msgstr ""
-#: doc/classes/EditorInterface.xml:182
+#: doc/classes/EditorInterface.xml:224
msgid ""
"Selects the file, with the path provided by [code]file[/code], in the "
"FileSystem dock."
msgstr ""
-#: doc/classes/EditorInterface.xml:201
+#: doc/classes/EditorInterface.xml:233
+msgid ""
+"Sets the editor's current main screen to the one specified in [code]name[/"
+"code]. [code]name[/code] must match the text of the tab in question exactly "
+"([code]2D[/code], [code]3D[/code], [code]Script[/code], [code]AssetLib[/"
+"code])."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:244
msgid ""
"Sets the enabled status of a plugin. The plugin name is the same as its "
"directory name."
msgstr ""
+#: doc/classes/EditorInterface.xml:251
+msgid "Stops the scene that is currently playing."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:257
+msgid ""
+"If [code]true[/code], enables distraction-free mode which hides side docks "
+"to increase the space available for the main view."
+msgstr ""
+
#: doc/classes/EditorNode3DGizmo.xml:4
msgid "Custom gizmo for editing Node3D objects."
msgstr ""
@@ -18591,14 +18902,20 @@ msgid ""
"information."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:26
+#: doc/classes/EditorNode3DGizmo.xml:18
+msgid ""
+"Adds the specified [code]segments[/code] to the gizmo's collision shape for "
+"picking. Call this function during [method redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:27
msgid ""
"Adds collision triangles to the gizmo for picking. A [TriangleMesh] can be "
"generated from a regular [Mesh] too. Call this function during [method "
"redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:41
+#: doc/classes/EditorNode3DGizmo.xml:42
msgid ""
"Adds a list of handles (points) which can be used to deform the object being "
"edited.\n"
@@ -18606,20 +18923,33 @@ msgid ""
"handles. Call this function during [method redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:57
+#: doc/classes/EditorNode3DGizmo.xml:58
msgid ""
"Adds lines to the gizmo (as sets of 2 points), with a given material. The "
"lines are used for visualizing the gizmo. Call this function during [method "
"redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:84
+#: doc/classes/EditorNode3DGizmo.xml:73
+msgid ""
+"Adds a mesh to the gizmo with the specified [code]billboard[/code] state, "
+"[code]skeleton[/code] and [code]material[/code]. If [code]billboard[/code] "
+"is [code]true[/code], the mesh will rotate to always face the camera. Call "
+"this function during [method redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:86
msgid ""
"Adds an unscaled billboard for visualization. Call this function during "
"[method redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:103
+#: doc/classes/EditorNode3DGizmo.xml:93
+msgid ""
+"Removes everything in the gizmo including meshes, collisions and handles."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:106
msgid ""
"Commit a handle being edited (handles must have been previously added by "
"[method add_handles]).\n"
@@ -18627,40 +18957,43 @@ msgid ""
"restore the edited value to the original is provided."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:113
+#: doc/classes/EditorNode3DGizmo.xml:116
msgid ""
"Gets the name of an edited handle (handles must have been previously added "
"by [method add_handles]).\n"
"Handles can be named for reference to the user when editing."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:123
+#: doc/classes/EditorNode3DGizmo.xml:126
msgid ""
"Gets actual value of a handle. This value can be anything and used for "
"eventually undoing the motion when calling [method commit_handle]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:130
+#: doc/classes/EditorNode3DGizmo.xml:133
msgid ""
"Returns the [EditorNode3DGizmoPlugin] that owns this gizmo. It's useful to "
"retrieve materials using [method EditorNode3DGizmoPlugin.get_material]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:137
+#: doc/classes/EditorNode3DGizmo.xml:140
msgid "Returns the Node3D node associated with this gizmo."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:146
-msgid "Gets whether a handle is highlighted or not."
-msgstr ""
+#: doc/classes/EditorNode3DGizmo.xml:149
+#, fuzzy
+msgid ""
+"Returns [code]true[/code] if the handle at index [code]index[/code] is "
+"highlighted by being hovered with the mouse."
+msgstr "Ritorna [code]true[/code] se [code]s[/code] è zero o quasi zero."
-#: doc/classes/EditorNode3DGizmo.xml:153
+#: doc/classes/EditorNode3DGizmo.xml:156
msgid ""
-"This function is called when the Node3D this gizmo refers to changes (the "
+"This function is called when the [Node3D] this gizmo refers to changes (the "
"[method Node3D.update_gizmo] is called)."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:166
+#: doc/classes/EditorNode3DGizmo.xml:169
msgid ""
"This function is used when the user drags a gizmo handle (previously added "
"with [method add_handles]) in screen coordinates.\n"
@@ -18668,6 +19001,18 @@ msgid ""
"raycasts."
msgstr ""
+#: doc/classes/EditorNode3DGizmo.xml:179
+msgid ""
+"Sets the gizmo's hidden state. If [code]true[/code], the gizmo will be "
+"hidden. If [code]false[/code], it will be shown."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:188
+msgid ""
+"Sets the reference [Node3D] node for the gizmo. [code]node[/code] must "
+"inherit from [Node3D]."
+msgstr ""
+
#: doc/classes/EditorNode3DGizmoPlugin.xml:4
msgid "Used by the editor to define Node3D gizmo types."
msgstr ""
@@ -18760,7 +19105,17 @@ msgid ""
"visibility menu."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:150
+#: doc/classes/EditorNode3DGizmoPlugin.xml:142
+msgid ""
+"Override this method to set the gizmo's priority. Higher values correspond "
+"to higher priority. If a gizmo with higher priority conflicts with another "
+"gizmo, only the gizmo with higher priority will be used.\n"
+"All built-in editor gizmos return a priority of [code]-1[/code]. If not "
+"overridden, this method will return [code]0[/code], which means custom "
+"gizmos will automatically override built-in gizmos."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:152
msgid ""
"Override this method to define which Node3D nodes have a gizmo from this "
"plugin. Whenever a [Node3D] node is added to a scene this method is called, "
@@ -18768,25 +19123,25 @@ msgid ""
"assigned and is added to this plugin's list of active gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:161
+#: doc/classes/EditorNode3DGizmoPlugin.xml:163
msgid ""
"Gets whether a handle is highlighted or not. Called for this plugin's active "
"gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:168
+#: doc/classes/EditorNode3DGizmoPlugin.xml:170
msgid ""
"Override this method to define whether Node3D with this gizmo should be "
"selecteble even when the gizmo is hidden."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:177
+#: doc/classes/EditorNode3DGizmoPlugin.xml:179
msgid ""
"Callback to redraw the provided gizmo. Called for this plugin's active "
"gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:192
+#: doc/classes/EditorNode3DGizmoPlugin.xml:194
msgid ""
"Update the value of a handle after it has been updated. Called for this "
"plugin's active gizmos."
@@ -18873,7 +19228,13 @@ msgid ""
"should be cleaned up using [code]remove_tool_menu_item(name)[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:149
+#: doc/classes/EditorPlugin.xml:151
+msgid ""
+"Registers a custom translation parser plugin for extracting translatable "
+"strings from custom files."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:158
msgid ""
"This method is called when the editor is about to save the project, switch "
"to another tab, etc. It asks the plugin to apply any pending state changes "
@@ -18882,32 +19243,32 @@ msgid ""
"must apply the shader code being written by the user to the object."
msgstr ""
-#: doc/classes/EditorPlugin.xml:163
+#: doc/classes/EditorPlugin.xml:172
msgid ""
"Clear all the state and reset the object being edited to zero. This ensures "
"your plugin does not keep editing a currently existing node, or a node from "
"the wrong scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:170
+#: doc/classes/EditorPlugin.xml:179
msgid ""
"Called by the engine when the user disables the [EditorPlugin] in the Plugin "
"tab of the project settings window."
msgstr ""
-#: doc/classes/EditorPlugin.xml:179
+#: doc/classes/EditorPlugin.xml:188
msgid ""
"This function is used for plugins that edit specific object types (nodes or "
"resources). It requests the editor to edit the given object."
msgstr ""
-#: doc/classes/EditorPlugin.xml:186
+#: doc/classes/EditorPlugin.xml:195
msgid ""
"Called by the engine when the user enables the [EditorPlugin] in the Plugin "
"tab of the project settings window."
msgstr ""
-#: doc/classes/EditorPlugin.xml:211
+#: doc/classes/EditorPlugin.xml:220
msgid ""
"Called when there is a root node in the current edited scene, [method "
"handles] is implemented and an [InputEvent] happens in the 2D viewport. "
@@ -18932,7 +19293,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:237
+#: doc/classes/EditorPlugin.xml:246
msgid ""
"Called when there is a root node in the current edited scene, [method "
"handles] is implemented and an [InputEvent] happens in the 3D viewport. "
@@ -18957,20 +19318,20 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:259
+#: doc/classes/EditorPlugin.xml:268
msgid ""
"This is for editors that edit script-based objects. You can return a list of "
"breakpoints in the format ([code]script:line[/code]), for example: "
"[code]res://path_to_script.gd:25[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:266
+#: doc/classes/EditorPlugin.xml:275
msgid ""
"Returns the [EditorInterface] object that gives you control over Godot "
"editor's window and its functionalities."
msgstr ""
-#: doc/classes/EditorPlugin.xml:273
+#: doc/classes/EditorPlugin.xml:282
msgid ""
"Override this method in your plugin to return a [Texture2D] in order to give "
"it an icon.\n"
@@ -18988,7 +19349,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:289
+#: doc/classes/EditorPlugin.xml:298
msgid ""
"Override this method in your plugin to provide the name of the plugin when "
"displayed in the Godot editor.\n"
@@ -18996,33 +19357,33 @@ msgid ""
"of the \"2D\", \"3D\", \"Script\", and \"AssetLib\" buttons."
msgstr ""
-#: doc/classes/EditorPlugin.xml:297
+#: doc/classes/EditorPlugin.xml:306
msgid ""
"Gets the Editor's dialogue used for making scripts.\n"
"[b]Note:[/b] Users can configure it before use."
msgstr ""
-#: doc/classes/EditorPlugin.xml:305
+#: doc/classes/EditorPlugin.xml:314
msgid ""
"Gets the state of your plugin editor. This is used when saving the scene (so "
"state is kept when opening it again) and for switching tabs (so state can be "
"restored when the tab returns)."
msgstr ""
-#: doc/classes/EditorPlugin.xml:312
+#: doc/classes/EditorPlugin.xml:321
msgid ""
"Gets the undo/redo object. Most actions in the editor can be undoable, so "
"use this object to make sure this happens when it's worth it."
msgstr ""
-#: doc/classes/EditorPlugin.xml:321
+#: doc/classes/EditorPlugin.xml:330
msgid ""
"Gets the GUI layout of the plugin. This is used to save the project's editor "
"layout when [method queue_save_layout] is called or the editor layout was "
"changed(For example changing the position of a dock)."
msgstr ""
-#: doc/classes/EditorPlugin.xml:330
+#: doc/classes/EditorPlugin.xml:339
msgid ""
"Implement this function if your plugin edits a specific type of object "
"(Resource or Node). If you return [code]true[/code], then you will get the "
@@ -19032,14 +19393,14 @@ msgid ""
"be called too."
msgstr ""
-#: doc/classes/EditorPlugin.xml:337
+#: doc/classes/EditorPlugin.xml:346
msgid ""
"Returns [code]true[/code] if this is a main screen editor plugin (it goes in "
"the workspace selector together with [b]2D[/b], [b]3D[/b], [b]Script[/b] and "
"[b]AssetLib[/b])."
msgstr ""
-#: doc/classes/EditorPlugin.xml:360
+#: doc/classes/EditorPlugin.xml:369
msgid ""
"This function will be called when the editor is requested to become visible. "
"It is used for plugins that edit a specific object type.\n"
@@ -19047,85 +19408,89 @@ msgid ""
"manually."
msgstr ""
-#: doc/classes/EditorPlugin.xml:368
+#: doc/classes/EditorPlugin.xml:377
msgid "Queue save the project's editor layout."
msgstr ""
-#: doc/classes/EditorPlugin.xml:377
+#: doc/classes/EditorPlugin.xml:386
msgid "Removes an Autoload [code]name[/code] from the list."
msgstr ""
-#: doc/classes/EditorPlugin.xml:386
+#: doc/classes/EditorPlugin.xml:395
msgid ""
"Removes the control from the bottom panel. You have to manually [method Node."
"queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:397
+#: doc/classes/EditorPlugin.xml:406
msgid ""
"Removes the control from the specified container. You have to manually "
"[method Node.queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:406
+#: doc/classes/EditorPlugin.xml:415
msgid ""
"Removes the control from the dock. You have to manually [method Node."
"queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:415
+#: doc/classes/EditorPlugin.xml:424
msgid "Removes a custom type added by [method add_custom_type]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:464
+#: doc/classes/EditorPlugin.xml:473
msgid "Removes a menu [code]name[/code] from [b]Project > Tools[/b]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:471
+#: doc/classes/EditorPlugin.xml:482
+msgid "Removes a registered custom translation parser plugin."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:489
msgid ""
"This method is called after the editor saves the project or when it's "
"closed. It asks the plugin to save edited external scenes/resources."
msgstr ""
-#: doc/classes/EditorPlugin.xml:484
+#: doc/classes/EditorPlugin.xml:502
msgid ""
"Use this method if you always want to receive inputs from 3D view screen "
"inside [method forward_spatial_gui_input]. It might be especially usable if "
"your plugin will want to use raycast in the scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:493
+#: doc/classes/EditorPlugin.xml:511
msgid "Restore the state saved by [method get_state]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:502
+#: doc/classes/EditorPlugin.xml:520
msgid "Restore the plugin GUI layout saved by [method get_window_layout]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:509
+#: doc/classes/EditorPlugin.xml:527
msgid "Updates the overlays of the editor (2D/3D) viewport."
msgstr ""
-#: doc/classes/EditorPlugin.xml:518
+#: doc/classes/EditorPlugin.xml:536
msgid ""
"Emitted when user changes the workspace ([b]2D[/b], [b]3D[/b], [b]Script[/"
"b], [b]AssetLib[/b]). Also works with custom screens defined by plugins."
msgstr ""
-#: doc/classes/EditorPlugin.xml:531
+#: doc/classes/EditorPlugin.xml:549
msgid ""
"Emitted when the scene is changed in the editor. The argument will return "
"the root node of the scene that has just become active. If this scene is new "
"and empty, the argument will be [code]null[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:538
+#: doc/classes/EditorPlugin.xml:556
msgid ""
"Emitted when user closes a scene. The argument is file path to a closed "
"scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:584
+#: doc/classes/EditorPlugin.xml:602
msgid "Represents the size of the [enum DockSlot] enum."
msgstr ""
@@ -19180,64 +19545,83 @@ msgid "When this virtual function is called, you must update your editor."
msgstr ""
#: doc/classes/EditorProperty.xml:76
-msgid "Used by the inspector, set when property is checkable."
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is "
+"checkable."
msgstr ""
#: doc/classes/EditorProperty.xml:79
-msgid "Used by the inspector, when the property is checked."
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is checked."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:82
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property can be "
+"deleted by the user."
msgstr ""
-#: doc/classes/EditorProperty.xml:84
-msgid "Used by the inspector, when the property must draw with error color."
+#: doc/classes/EditorProperty.xml:85
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property must draw "
+"with error color. This is used for editable children's properties."
msgstr ""
-#: doc/classes/EditorProperty.xml:87
-msgid "Used by the inspector, when the property can add keys for animation."
+#: doc/classes/EditorProperty.xml:88
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property can add "
+"keys for animation."
msgstr ""
-#: doc/classes/EditorProperty.xml:90
-msgid "Sets this property to change the label (if you want to show one)."
+#: doc/classes/EditorProperty.xml:91
+msgid "Set this property to change the label (if you want to show one)."
msgstr ""
-#: doc/classes/EditorProperty.xml:93
-msgid "Used by the inspector, when the property is read-only."
+#: doc/classes/EditorProperty.xml:94
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is read-"
+"only."
msgstr ""
-#: doc/classes/EditorProperty.xml:103
+#: doc/classes/EditorProperty.xml:104
msgid ""
"Emit it if you want multiple properties modified at the same time. Do not "
"use if added via [method EditorInspectorPlugin.parse_property]."
msgstr ""
-#: doc/classes/EditorProperty.xml:112
+#: doc/classes/EditorProperty.xml:113
msgid "Used by sub-inspectors. Emit it if what was selected was an Object ID."
msgstr ""
-#: doc/classes/EditorProperty.xml:121
+#: doc/classes/EditorProperty.xml:122
msgid ""
"Do not emit this manually, use the [method emit_changed] method instead."
msgstr ""
-#: doc/classes/EditorProperty.xml:130
+#: doc/classes/EditorProperty.xml:131
msgid "Emitted when a property was checked. Used internally."
msgstr ""
-#: doc/classes/EditorProperty.xml:143
+#: doc/classes/EditorProperty.xml:138
+msgid "Emitted when a property was deleted. Used internally."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:145
msgid ""
"Emit it if you want to add this value as an animation key (check for keying "
"being enabled first)."
msgstr ""
-#: doc/classes/EditorProperty.xml:152
+#: doc/classes/EditorProperty.xml:154
msgid "Emit it if you want to key a property with a single value."
msgstr ""
-#: doc/classes/EditorProperty.xml:161
+#: doc/classes/EditorProperty.xml:163
msgid ""
"If you want a sub-resource to be edited, emit this signal with the resource."
msgstr ""
-#: doc/classes/EditorProperty.xml:170
+#: doc/classes/EditorProperty.xml:172
msgid "Emitted when selected. Used internally."
msgstr ""
@@ -19522,17 +19906,26 @@ msgstr ""
msgid ""
"Object that holds the project-independent editor settings. These settings "
"are generally visible in the [b]Editor > Editor Settings[/b] menu.\n"
-"Accessing the settings is done by using the regular [Object] API, such as:\n"
-"[codeblock]\n"
-"settings.set(prop,value)\n"
-"settings.get(prop)\n"
-"list_of_settings = settings.get_property_list()\n"
+"Property names use slash delimiters to distinguish sections. Setting values "
+"can be of any [Variant] type. It's recommended to use [code]snake_case[/"
+"code] for editor settings to be consistent with the Godot editor itself.\n"
+"Accessing the settings can be done using the following methods, such as:\n"
+"[codeblock]\n"
+"# `settings.set(\"some/property\", value)` also works as this class "
+"overrides `_set()` internally.\n"
+"settings.set_setting(\"some/property\",value)\n"
+"\n"
+"# `settings.get(\"some/property\", value)` also works as this class "
+"overrides `_get()` internally.\n"
+"settings.get_setting(\"some/property\")\n"
+"\n"
+"var list_of_settings = settings.get_property_list()\n"
"[/codeblock]\n"
"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
"the singleton using [method EditorInterface.get_editor_settings]."
msgstr ""
-#: doc/classes/EditorSettings.xml:25
+#: doc/classes/EditorSettings.xml:30
msgid ""
"Adds a custom property info to a property. The dictionary must contain:\n"
"- [code]name[/code]: [String] (the name of the property)\n"
@@ -19554,52 +19947,174 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorSettings.xml:50
-msgid "Erase a given setting (pass full property path)."
+#: doc/classes/EditorSettings.xml:55
+msgid "Erases the setting whose name is specified by [code]property[/code]."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:62
+msgid "Returns the list of favorite files and directories for this project."
msgstr ""
-#: doc/classes/EditorSettings.xml:57
-msgid "Gets the list of favorite files and directories for this project."
+#: doc/classes/EditorSettings.xml:75
+msgid ""
+"Returns project-specific metadata for the [code]section[/code] and "
+"[code]key[/code] specified. If the metadata doesn't exist, [code]default[/"
+"code] will be returned instead. See also [method set_project_metadata]."
msgstr ""
-#: doc/classes/EditorSettings.xml:76
+#: doc/classes/EditorSettings.xml:82
msgid ""
-"Gets the specific project settings path. Projects all have a unique sub-"
-"directory inside the settings path where project specific settings are saved."
+"Returns the project-specific settings path. Projects all have a unique "
+"subdirectory inside the settings path where project-specific settings are "
+"saved."
msgstr ""
-#: doc/classes/EditorSettings.xml:83
+#: doc/classes/EditorSettings.xml:89
msgid ""
-"Gets the list of recently visited folders in the file dialog for this "
+"Returns the list of recently visited folders in the file dialog for this "
"project."
msgstr ""
#: doc/classes/EditorSettings.xml:98
msgid ""
+"Returns the value of the setting specified by [code]name[/code]. This is "
+"equivalent to using [method Object.get] on the EditorSettings instance."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:105
+msgid ""
"Gets the global settings path for the engine. Inside this path, you can find "
"some standard paths such as:\n"
"[code]settings/tmp[/code] - Used for temporary storage of files\n"
"[code]settings/templates[/code] - Where export templates are located"
msgstr ""
-#: doc/classes/EditorSettings.xml:133
+#: doc/classes/EditorSettings.xml:116
+#, fuzzy
+msgid ""
+"Returns [code]true[/code] if the setting specified by [code]name[/code] "
+"exists, [code]false[/code] otherwise."
+msgstr "Ritorna [code]true[/code] se [code]s[/code] è zero o quasi zero."
+
+#: doc/classes/EditorSettings.xml:125
+msgid ""
+"Returns [code]true[/code] if the setting specified by [code]name[/code] can "
+"have its value reverted to the default value, [code]false[/code] otherwise. "
+"When this method returns [code]true[/code], a Revert button will display "
+"next to the setting in the Editor Settings."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:134
+msgid ""
+"Returns the default value of the setting specified by [code]name[/code]. "
+"This is the value that would be applied when clicking the Revert button in "
+"the Editor Settings."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:143
msgid "Sets the list of favorite files and directories for this project."
msgstr ""
-#: doc/classes/EditorSettings.xml:166
+#: doc/classes/EditorSettings.xml:156
+msgid ""
+"Sets the initial value of the setting specified by [code]name[/code] to "
+"[code]value[/code]. This is used to provide a value for the Revert button in "
+"the Editor Settings. If [code]update_current[/code] is true, the current "
+"value of the setting will be set to [code]value[/code] as well."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:169
+msgid ""
+"Sets project-specific metadata with the [code]section[/code], [code]key[/"
+"code] and [code]data[/code] specified. This metadata is stored outside the "
+"project folder and therefore won't be checked into version control. See also "
+"[method get_project_metadata]."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:178
msgid ""
"Sets the list of recently visited folders in the file dialog for this "
"project."
msgstr ""
-#: doc/classes/EditorSettings.xml:183
-msgid "Emitted when editor settings change."
+#: doc/classes/EditorSettings.xml:189
+msgid ""
+"Sets the [code]value[/code] of the setting specified by [code]name[/code]. "
+"This is equivalent to using [method Object.set] on the EditorSettings "
+"instance."
msgstr ""
-#: doc/classes/EditorSettings.xml:189
+#: doc/classes/EditorSettings.xml:196
+msgid "Emitted after any editor setting has changed."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:202
+msgid ""
+"Emitted after any editor setting has changed. It's used by various editor "
+"plugins to update their visuals on theme changes or logic on configuration "
+"changes."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:4
msgid ""
-"Emitted when editor settings change. It used by various editor plugins to "
-"update their visuals on theme changes or logic on configuration changes."
+"Plugin for adding custom parsers to extract strings that are to be "
+"translated from custom files (.csv, .json etc.)."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:7
+msgid ""
+"Plugins are registered via [method EditorPlugin."
+"add_translation_parser_plugin] method. To define the parsing and string "
+"extraction logic, override the [method parse_file] method in script.\n"
+"The extracted strings will be written into a POT file selected by user under "
+"\"POT Generation\" in \"Localization\" tab in \"Project Settings\" menu.\n"
+"Below shows an example of a custom parser that extracts strings in a CSV "
+"file to write into a POT.\n"
+"[codeblock]\n"
+"tool\n"
+"extends EditorTranslationParserPlugin\n"
+"\n"
+"\n"
+"func parse_file(path, extracted_strings):\n"
+" var file = File.new()\n"
+" file.open(path, File.READ)\n"
+" var text = file.get_as_text()\n"
+" var split_strs = text.split(\",\", false, 0)\n"
+" for s in split_strs:\n"
+" extracted_strings.append(s)\n"
+" #print(\"Extracted string: \" + s)\n"
+"\n"
+"\n"
+"func get_recognized_extensions():\n"
+" return [\"csv\"]\n"
+"[/codeblock]\n"
+"[b]Note:[/b] If you override parsing logic for standard script types "
+"(GDScript, C#, etc.), it would be better to load the [code]path[/code] "
+"argument using [method ResourceLoader.load]. This is because built-in "
+"scripts are loaded as [Resource] type, not [File] type.\n"
+"For example:\n"
+"[codeblock]\n"
+"func parse_file(path, extracted_strings):\n"
+" var res = ResourceLoader.load(path, \"Script\")\n"
+" var text = res.get_source_code()\n"
+" # Parsing logic.\n"
+"\n"
+"\n"
+"func get_recognized_extensions():\n"
+" return [\"gd\"]\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:48
+msgid ""
+"Gets the list of file extensions to associate with this parser, e.g. [code]"
+"[\"csv\"][/code]."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:59
+msgid ""
+"Override this method to define a custom parsing logic to extract the "
+"translatable strings."
msgstr ""
#: doc/classes/EditorVCSInterface.xml:4
@@ -20210,15 +20725,15 @@ msgid ""
"to 1.3 to compensate for the lack of HDR rendering."
msgstr ""
-#: doc/classes/Environment.xml:190
+#: doc/classes/Environment.xml:214
msgid "The [Sky] resource used for this [Environment]."
msgstr ""
-#: doc/classes/Environment.xml:197
+#: doc/classes/Environment.xml:221
msgid "The depth tolerance for screen-space reflections."
msgstr ""
-#: doc/classes/Environment.xml:200
+#: doc/classes/Environment.xml:224
msgid ""
"If [code]true[/code], screen-space reflections are enabled. Screen-space "
"reflections are more accurate than reflections from [GIProbe]s or "
@@ -20226,48 +20741,48 @@ msgid ""
"others."
msgstr ""
-#: doc/classes/Environment.xml:203
+#: doc/classes/Environment.xml:227
msgid ""
"The fade-in distance for screen-space reflections. Affects the area from the "
"reflected material to the screen-space reflection)."
msgstr ""
-#: doc/classes/Environment.xml:206
+#: doc/classes/Environment.xml:230
msgid ""
"The fade-out distance for screen-space reflections. Affects the area from "
"the screen-space reflection to the \"global\" reflection."
msgstr ""
-#: doc/classes/Environment.xml:209
+#: doc/classes/Environment.xml:233
msgid ""
"The maximum number of steps for screen-space reflections. Higher values are "
"slower."
msgstr ""
-#: doc/classes/Environment.xml:212
+#: doc/classes/Environment.xml:236
msgid ""
"The screen-space ambient occlusion intensity on materials that have an AO "
"texture defined. Values higher than [code]0[/code] will make the SSAO effect "
"visible in areas darkened by AO textures."
msgstr ""
-#: doc/classes/Environment.xml:215
+#: doc/classes/Environment.xml:239
msgid ""
"The screen-space ambient occlusion bias. This should be kept high enough to "
"prevent \"smooth\" curves from being affected by ambient occlusion."
msgstr ""
-#: doc/classes/Environment.xml:218
+#: doc/classes/Environment.xml:242
msgid ""
"The screen-space ambient occlusion blur quality. See [enum SSAOBlur] for "
"possible values."
msgstr ""
-#: doc/classes/Environment.xml:221
+#: doc/classes/Environment.xml:245
msgid "The screen-space ambient occlusion edge sharpness."
msgstr ""
-#: doc/classes/Environment.xml:224
+#: doc/classes/Environment.xml:248
msgid ""
"If [code]true[/code], the screen-space ambient occlusion effect is enabled. "
"This darkens objects' corners and cavities to simulate ambient light not "
@@ -20278,13 +20793,13 @@ msgid ""
"issues."
msgstr ""
-#: doc/classes/Environment.xml:227
+#: doc/classes/Environment.xml:251
msgid ""
"The primary screen-space ambient occlusion intensity. See also [member "
"ssao_radius]."
msgstr ""
-#: doc/classes/Environment.xml:230
+#: doc/classes/Environment.xml:254
msgid ""
"The screen-space ambient occlusion intensity in direct light. In real life, "
"ambient occlusion only applies to indirect light, which means its effects "
@@ -20292,46 +20807,46 @@ msgid ""
"the SSAO effect visible in direct light."
msgstr ""
-#: doc/classes/Environment.xml:233
+#: doc/classes/Environment.xml:257
msgid "The primary screen-space ambient occlusion radius."
msgstr ""
-#: doc/classes/Environment.xml:236
+#: doc/classes/Environment.xml:260
msgid "The default exposure used for tonemapping."
msgstr ""
-#: doc/classes/Environment.xml:239
+#: doc/classes/Environment.xml:263
msgid ""
"The tonemapping mode to use. Tonemapping is the process that \"converts\" "
"HDR values to be suitable for rendering on a LDR display. (Godot doesn't "
"support rendering on HDR displays yet.)"
msgstr ""
-#: doc/classes/Environment.xml:242
+#: doc/classes/Environment.xml:266
msgid ""
"The white reference value for tonemapping. Only effective if the [member "
"tonemap_mode] isn't set to [constant TONE_MAPPER_LINEAR]."
msgstr ""
-#: doc/classes/Environment.xml:247
+#: doc/classes/Environment.xml:271
msgid ""
"Clears the background using the clear color defined in [member "
"ProjectSettings.rendering/environment/default_clear_color]."
msgstr ""
-#: doc/classes/Environment.xml:250
+#: doc/classes/Environment.xml:274
msgid "Clears the background using a custom clear color."
msgstr ""
-#: doc/classes/Environment.xml:253
+#: doc/classes/Environment.xml:277
msgid "Displays a user-defined sky in the background."
msgstr ""
-#: doc/classes/Environment.xml:256
+#: doc/classes/Environment.xml:280
msgid "Displays a [CanvasLayer] in the background."
msgstr ""
-#: doc/classes/Environment.xml:259
+#: doc/classes/Environment.xml:283
msgid ""
"Keeps on screen every pixel drawn in the background. This is the fastest "
"background mode, but it can only be safely used in fully-interior scenes (no "
@@ -20339,107 +20854,107 @@ msgid ""
"is visible, \"ghost trail\" artifacts will be visible when moving the camera."
msgstr ""
-#: doc/classes/Environment.xml:262 doc/classes/RenderingServer.xml:3446
+#: doc/classes/Environment.xml:286 doc/classes/RenderingServer.xml:3457
msgid "Displays a camera feed in the background."
msgstr ""
-#: doc/classes/Environment.xml:265
+#: doc/classes/Environment.xml:289
msgid "Represents the size of the [enum BGMode] enum."
msgstr ""
-#: doc/classes/Environment.xml:268 doc/classes/RenderingServer.xml:3452
+#: doc/classes/Environment.xml:292 doc/classes/RenderingServer.xml:3463
msgid ""
"Gather ambient light from whichever source is specified as the background."
msgstr ""
-#: doc/classes/Environment.xml:271 doc/classes/RenderingServer.xml:3455
+#: doc/classes/Environment.xml:295 doc/classes/RenderingServer.xml:3466
msgid "Disable ambient light."
msgstr ""
-#: doc/classes/Environment.xml:274 doc/classes/RenderingServer.xml:3458
+#: doc/classes/Environment.xml:298 doc/classes/RenderingServer.xml:3469
msgid "Specify a specific [Color] for ambient light."
msgstr ""
-#: doc/classes/Environment.xml:277 doc/classes/RenderingServer.xml:3461
+#: doc/classes/Environment.xml:301 doc/classes/RenderingServer.xml:3472
msgid ""
"Gather ambient light from the [Sky] regardless of what the background is."
msgstr ""
-#: doc/classes/Environment.xml:280 doc/classes/RenderingServer.xml:3464
+#: doc/classes/Environment.xml:304 doc/classes/RenderingServer.xml:3475
msgid "Use the background for reflections."
msgstr ""
-#: doc/classes/Environment.xml:283 doc/classes/RenderingServer.xml:3467
+#: doc/classes/Environment.xml:307 doc/classes/RenderingServer.xml:3478
msgid "Disable reflections."
msgstr ""
-#: doc/classes/Environment.xml:286 doc/classes/RenderingServer.xml:3470
+#: doc/classes/Environment.xml:310 doc/classes/RenderingServer.xml:3481
msgid "Use the [Sky] for reflections regardless of what the background is."
msgstr ""
-#: doc/classes/Environment.xml:289 doc/classes/RenderingServer.xml:3473
+#: doc/classes/Environment.xml:313
+msgid ""
+"Linear tonemapper operator. Reads the linear data and passes it on "
+"unmodified."
+msgstr ""
+
+#: doc/classes/Environment.xml:316
+msgid ""
+"Reinhardt tonemapper operator. Performs a variation on rendered pixels' "
+"colors by this formula: [code]color = color / (1 + color)[/code]."
+msgstr ""
+
+#: doc/classes/Environment.xml:319
+msgid "Filmic tonemapper operator."
+msgstr ""
+
+#: doc/classes/Environment.xml:322
+msgid "Academy Color Encoding System tonemapper operator."
+msgstr ""
+
+#: doc/classes/Environment.xml:325 doc/classes/RenderingServer.xml:3484
msgid ""
"Additive glow blending mode. Mostly used for particles, glows (bloom), lens "
"flare, bright sources."
msgstr ""
-#: doc/classes/Environment.xml:292 doc/classes/RenderingServer.xml:3476
+#: doc/classes/Environment.xml:328 doc/classes/RenderingServer.xml:3487
msgid ""
"Screen glow blending mode. Increases brightness, used frequently with bloom."
msgstr ""
-#: doc/classes/Environment.xml:295 doc/classes/RenderingServer.xml:3479
+#: doc/classes/Environment.xml:331 doc/classes/RenderingServer.xml:3490
msgid ""
"Soft light glow blending mode. Modifies contrast, exposes shadows and "
"highlights (vivid bloom)."
msgstr ""
-#: doc/classes/Environment.xml:298 doc/classes/RenderingServer.xml:3482
+#: doc/classes/Environment.xml:334 doc/classes/RenderingServer.xml:3493
msgid ""
"Replace glow blending mode. Replaces all pixels' color by the glow value. "
"This can be used to simulate a full-screen blur effect by tweaking the glow "
"parameters to match the original image's brightness."
msgstr ""
-#: doc/classes/Environment.xml:301 doc/classes/RenderingServer.xml:3485
+#: doc/classes/Environment.xml:337 doc/classes/RenderingServer.xml:3496
msgid ""
"Mixes the glow with the underlying color to avoid increasing brightness as "
"much while still maintaining a glow effect."
msgstr ""
-#: doc/classes/Environment.xml:304
-msgid ""
-"Linear tonemapper operator. Reads the linear data and passes it on "
-"unmodified."
-msgstr ""
-
-#: doc/classes/Environment.xml:307
-msgid ""
-"Reinhardt tonemapper operator. Performs a variation on rendered pixels' "
-"colors by this formula: [code]color = color / (1 + color)[/code]."
-msgstr ""
-
-#: doc/classes/Environment.xml:310
-msgid "Filmic tonemapper operator."
-msgstr ""
-
-#: doc/classes/Environment.xml:313
-msgid "Academy Color Encoding System tonemapper operator."
-msgstr ""
-
-#: doc/classes/Environment.xml:316
+#: doc/classes/Environment.xml:340
msgid "No blur for the screen-space ambient occlusion effect (fastest)."
msgstr ""
-#: doc/classes/Environment.xml:319
+#: doc/classes/Environment.xml:343
msgid "1×1 blur for the screen-space ambient occlusion effect."
msgstr ""
-#: doc/classes/Environment.xml:322
+#: doc/classes/Environment.xml:346
msgid "2×2 blur for the screen-space ambient occlusion effect."
msgstr ""
-#: doc/classes/Environment.xml:325
+#: doc/classes/Environment.xml:349
msgid ""
"3×3 blur for the screen-space ambient occlusion effect. Increases the radius "
"of the blur for a smoother look, but can result in checkerboard-like "
@@ -20524,14 +21039,17 @@ msgid ""
" var content = file.get_as_text()\n"
" file.close()\n"
" return content\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"In the example above, the file will be saved in the user data folder as "
+"specified in the [url=https://docs.godotengine.org/en/latest/tutorials/io/"
+"data_paths.html]Data paths[/url] documentation."
msgstr ""
-#: doc/classes/File.xml:32
+#: doc/classes/File.xml:33
msgid "Closes the currently opened file."
msgstr ""
-#: doc/classes/File.xml:39
+#: doc/classes/File.xml:40
msgid ""
"Returns [code]true[/code] if the file cursor has read past the end of the "
"file.\n"
@@ -20542,7 +21060,7 @@ msgid ""
"get_position] to implement a custom logic."
msgstr ""
-#: doc/classes/File.xml:49
+#: doc/classes/File.xml:50
msgid ""
"Returns [code]true[/code] if the file exists in the given path.\n"
"[b]Note:[/b] Many resources types are imported (e.g. textures or sound "
@@ -20555,41 +21073,41 @@ msgid ""
"source asset is present in [code]res://[/code], but fail when exported)."
msgstr ""
-#: doc/classes/File.xml:57
+#: doc/classes/File.xml:58
msgid ""
"Returns the next 16 bits from the file as an integer. See [method store_16] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:64
+#: doc/classes/File.xml:65
msgid ""
"Returns the next 32 bits from the file as an integer. See [method store_32] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:71
+#: doc/classes/File.xml:72
msgid ""
"Returns the next 64 bits from the file as an integer. See [method store_64] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:78
+#: doc/classes/File.xml:79
msgid ""
"Returns the next 8 bits from the file as an integer. See [method store_8] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:85
+#: doc/classes/File.xml:86
msgid ""
"Returns the whole file as a [String].\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:95
+#: doc/classes/File.xml:96
msgid "Returns next [code]len[/code] bytes of the file as a [PackedByteArray]."
msgstr ""
-#: doc/classes/File.xml:104
+#: doc/classes/File.xml:105
msgid ""
"Returns the next value of the file in CSV (Comma-Separated Values) format. "
"You can pass a different delimiter [code]delim[/code] to use other than the "
@@ -20598,37 +21116,37 @@ msgid ""
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:112
+#: doc/classes/File.xml:113
msgid "Returns the next 64 bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:119
+#: doc/classes/File.xml:120
msgid ""
"Returns the last error that happened when trying to perform operations. "
"Compare with the [code]ERR_FILE_*[/code] constants from [enum Error]."
msgstr ""
-#: doc/classes/File.xml:126
+#: doc/classes/File.xml:127
msgid "Returns the next 32 bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:133
+#: doc/classes/File.xml:134
msgid "Returns the size of the file in bytes."
msgstr ""
-#: doc/classes/File.xml:140
+#: doc/classes/File.xml:141
msgid ""
"Returns the next line of the file as a [String].\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:150
+#: doc/classes/File.xml:151
msgid ""
"Returns an MD5 String representing the file at the given path or an empty "
"[String] on failure."
msgstr ""
-#: doc/classes/File.xml:159
+#: doc/classes/File.xml:160
msgid ""
"Returns the last time the [code]file[/code] was modified in unix timestamp "
"format or returns a [String] \"ERROR IN [code]file[/code]\". This unix "
@@ -20636,35 +21154,35 @@ msgid ""
"get_datetime_from_unix_time]."
msgstr ""
-#: doc/classes/File.xml:166
+#: doc/classes/File.xml:167
msgid ""
"Returns a [String] saved in Pascal format from the file.\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:174
+#: doc/classes/File.xml:175
msgid "Returns the path as a [String] for the current open file."
msgstr ""
-#: doc/classes/File.xml:181
+#: doc/classes/File.xml:182
msgid "Returns the absolute path as a [String] for the current open file."
msgstr ""
-#: doc/classes/File.xml:188
+#: doc/classes/File.xml:189
msgid "Returns the file cursor's position."
msgstr ""
-#: doc/classes/File.xml:195
+#: doc/classes/File.xml:196
msgid "Returns the next bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:204
+#: doc/classes/File.xml:205
msgid ""
"Returns a SHA-256 [String] representing the file at the given path or an "
"empty [String] on failure."
msgstr ""
-#: doc/classes/File.xml:213
+#: doc/classes/File.xml:214
msgid ""
"Returns the next [Variant] value from the file. If [code]allow_objects[/"
"code] is [code]true[/code], decoding objects is allowed.\n"
@@ -20673,37 +21191,38 @@ msgid ""
"to avoid potential security threats such as remote code execution."
msgstr ""
-#: doc/classes/File.xml:221
+#: doc/classes/File.xml:222
msgid "Returns [code]true[/code] if the file is currently opened."
msgstr ""
-#: doc/classes/File.xml:232
+#: doc/classes/File.xml:233
msgid "Opens the file for writing or reading, depending on the flags."
msgstr ""
-#: doc/classes/File.xml:245
+#: doc/classes/File.xml:246
msgid "Opens a compressed file for reading or writing."
msgstr ""
-#: doc/classes/File.xml:258
+#: doc/classes/File.xml:259
msgid ""
"Opens an encrypted file in write or read mode. You need to pass a binary key "
-"to encrypt/decrypt it."
+"to encrypt/decrypt it.\n"
+"[b]Note:[/b] The provided key must be 32 bytes long."
msgstr ""
-#: doc/classes/File.xml:271
+#: doc/classes/File.xml:273
msgid ""
"Opens an encrypted file in write or read mode. You need to pass a password "
"to encrypt/decrypt it."
msgstr ""
-#: doc/classes/File.xml:280
+#: doc/classes/File.xml:282
msgid ""
"Changes the file reading/writing cursor to the specified position (in bytes "
"from the beginning of the file)."
msgstr ""
-#: doc/classes/File.xml:289
+#: doc/classes/File.xml:291
msgid ""
"Changes the file reading/writing cursor to the specified position (in bytes "
"from the end of the file).\n"
@@ -20711,7 +21230,7 @@ msgid ""
"cursor will be at the end of the file."
msgstr ""
-#: doc/classes/File.xml:299
+#: doc/classes/File.xml:301
msgid ""
"Stores an integer as 16 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, "
@@ -20739,7 +21258,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/File.xml:328
+#: doc/classes/File.xml:330
msgid ""
"Stores an integer as 32 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, "
@@ -20748,14 +21267,14 @@ msgid ""
"(see [method store_16] for an example)."
msgstr ""
-#: doc/classes/File.xml:339
+#: doc/classes/File.xml:341
msgid ""
"Stores an integer as 64 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] must lie in the interval [code][-2^63, "
"2^63 - 1][/code] (i.e. be a valid [int] value)."
msgstr ""
-#: doc/classes/File.xml:349
+#: doc/classes/File.xml:351
msgid ""
"Stores an integer as 8 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, 255]"
@@ -20764,11 +21283,11 @@ msgid ""
"(see [method store_16] for an example)."
msgstr ""
-#: doc/classes/File.xml:360
+#: doc/classes/File.xml:362
msgid "Stores the given array of bytes in the file."
msgstr ""
-#: doc/classes/File.xml:371
+#: doc/classes/File.xml:373
msgid ""
"Store the given [PackedStringArray] in the file as a line formatted in the "
"CSV (Comma-Separated Values) format. You can pass a different delimiter "
@@ -20777,45 +21296,45 @@ msgid ""
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:381
+#: doc/classes/File.xml:383
msgid "Stores a floating-point number as 64 bits in the file."
msgstr ""
-#: doc/classes/File.xml:390
+#: doc/classes/File.xml:392
msgid "Stores a floating-point number as 32 bits in the file."
msgstr ""
-#: doc/classes/File.xml:399
+#: doc/classes/File.xml:401
msgid ""
"Stores the given [String] as a line in the file.\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:409
+#: doc/classes/File.xml:411
msgid ""
"Stores the given [String] as a line in the file in Pascal format (i.e. also "
"store the length of the string).\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:419
+#: doc/classes/File.xml:421
msgid "Stores a floating-point number in the file."
msgstr ""
-#: doc/classes/File.xml:428
+#: doc/classes/File.xml:430
msgid ""
"Stores the given [String] in the file.\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:440
+#: doc/classes/File.xml:442
msgid ""
"Stores any Variant value in the file. If [code]full_objects[/code] is "
"[code]true[/code], encoding objects is allowed (and can potentially include "
"code)."
msgstr ""
-#: doc/classes/File.xml:446
+#: doc/classes/File.xml:448
msgid ""
"If [code]true[/code], the file's endianness is swapped. Use this if you're "
"dealing with files written on big-endian machines.\n"
@@ -20823,44 +21342,44 @@ msgid ""
"reset to [code]false[/code] whenever you open the file."
msgstr ""
-#: doc/classes/File.xml:452
+#: doc/classes/File.xml:454
msgid "Opens the file for read operations."
msgstr ""
-#: doc/classes/File.xml:455
+#: doc/classes/File.xml:457
msgid ""
"Opens the file for write operations. Create it if the file does not exist "
"and truncate if it exists."
msgstr ""
-#: doc/classes/File.xml:458
+#: doc/classes/File.xml:460
msgid ""
"Opens the file for read and write operations. Does not truncate the file."
msgstr ""
-#: doc/classes/File.xml:461
+#: doc/classes/File.xml:463
msgid ""
"Opens the file for read and write operations. Create it if the file does not "
"exist and truncate if it exists."
msgstr ""
-#: doc/classes/File.xml:464
+#: doc/classes/File.xml:466
msgid "Uses the [url=http://fastlz.org/]FastLZ[/url] compression method."
msgstr ""
-#: doc/classes/File.xml:467
+#: doc/classes/File.xml:469
msgid ""
"Uses the [url=https://en.wikipedia.org/wiki/DEFLATE]DEFLATE[/url] "
"compression method."
msgstr ""
-#: doc/classes/File.xml:470
+#: doc/classes/File.xml:472
msgid ""
"Uses the [url=https://facebook.github.io/zstd/]Zstandard[/url] compression "
"method."
msgstr ""
-#: doc/classes/File.xml:473
+#: doc/classes/File.xml:475
msgid "Uses the [url=https://www.gzip.org/]gzip[/url] compression method."
msgstr ""
@@ -21076,10 +21595,11 @@ msgid ""
"Draw [code]string[/code] into a canvas item using the font at a given "
"position, with [code]modulate[/code] color, and optionally clipping the "
"width. [code]position[/code] specifies the baseline, not the top. To draw "
-"from the top, [i]ascent[/i] must be added to the Y axis."
+"from the top, [i]ascent[/i] must be added to the Y axis.\n"
+"See also [method CanvasItem.draw_string]."
msgstr ""
-#: doc/classes/Font.xml:47
+#: doc/classes/Font.xml:48
msgid ""
"Draw character [code]char[/code] into a canvas item using the font at a "
"given position, with [code]modulate[/code] color, and optionally kerning if "
@@ -21089,39 +21609,39 @@ msgid ""
"making this function useful for drawing strings character by character."
msgstr ""
-#: doc/classes/Font.xml:54
+#: doc/classes/Font.xml:55
msgid "Returns the font ascent (number of pixels above the baseline)."
msgstr ""
-#: doc/classes/Font.xml:65
+#: doc/classes/Font.xml:66
msgid ""
"Returns the size of a character, optionally taking kerning into account if "
"the next character is provided."
msgstr ""
-#: doc/classes/Font.xml:72
+#: doc/classes/Font.xml:73
msgid "Returns the font descent (number of pixels below the baseline)."
msgstr ""
-#: doc/classes/Font.xml:79
+#: doc/classes/Font.xml:80
msgid "Returns the total font height (ascent plus descent) in pixels."
msgstr ""
-#: doc/classes/Font.xml:88
+#: doc/classes/Font.xml:89
msgid "Returns the size of a string, taking kerning and advance into account."
msgstr ""
-#: doc/classes/Font.xml:99
+#: doc/classes/Font.xml:100
msgid ""
"Returns the size that the string would have with word wrapping enabled with "
"a fixed [code]width[/code]."
msgstr ""
-#: doc/classes/Font.xml:106
+#: doc/classes/Font.xml:107
msgid "Returns [code]true[/code] if the font has an outline."
msgstr ""
-#: doc/classes/Font.xml:119
+#: doc/classes/Font.xml:120
msgid ""
"After editing a font (changing size, ascent, char rects, etc.). Call this "
"function to propagate changes to controls that might use it."
@@ -21293,13 +21813,14 @@ msgstr ""
#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:7
msgid ""
-"Calling [method @GDScript.yield] within a function will cause that function "
-"to yield and return its current state as an object of this type. The yielded "
+"FIXME: Outdated docs as of GDScript rewrite in 4.0.\n"
+"Calling [code]yield[/code] within a function will cause that function to "
+"yield and return its current state as an object of this type. The yielded "
"function call can then be resumed later by calling [method resume] on this "
"state object."
msgstr ""
-#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:18
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:19
msgid ""
"Check whether the function call may be resumed. This is not the case if the "
"function state was already resumed.\n"
@@ -21310,12 +21831,12 @@ msgid ""
"script have survived up to that point."
msgstr ""
-#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:28
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:29
msgid ""
"Resume execution of the yielded function call.\n"
-"If handed an argument, return the argument from the [method @GDScript.yield] "
-"call in the yielded function call. You can pass e.g. an [Array] to hand "
-"multiple arguments.\n"
+"If handed an argument, return the argument from the [code]yield[/code] call "
+"in the yielded function call. You can pass e.g. an [Array] to hand multiple "
+"arguments.\n"
"This function returns what the resumed function call returns, possibly "
"another function state if yielded again."
msgstr ""
@@ -21884,10 +22405,20 @@ msgid ""
"code], see [enum PolyJoinType].\n"
"The operation may result in an outer polygon (boundary) and inner polygon "
"(hole) produced which could be distinguished by calling [method "
-"is_polygon_clockwise]."
+"is_polygon_clockwise].\n"
+"[b]Note:[/b] To translate the polygon's vertices specifically, use the "
+"[method Transform2D.xform] method:\n"
+"[codeblock]\n"
+"var polygon = PackedVector2Array([Vector2(0, 0), Vector2(100, 0), "
+"Vector2(100, 100), Vector2(0, 100)])\n"
+"var offset = Vector2(50, 50)\n"
+"polygon = Transform2D(0, offset).xform(polygon)\n"
+"print(polygon) # prints [Vector2(50, 50), Vector2(150, 50), Vector2(150, "
+"150), Vector2(50, 150)]\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/Geometry2D.xml:217
+#: doc/classes/Geometry2D.xml:224
msgid ""
"Inflates or deflates [code]polyline[/code] by [code]delta[/code] units "
"(pixels), producing polygons. If [code]delta[/code] is positive, makes the "
@@ -21903,13 +22434,13 @@ msgid ""
"is_polygon_clockwise]."
msgstr ""
-#: doc/classes/Geometry2D.xml:235
+#: doc/classes/Geometry2D.xml:242
msgid ""
"Returns if [code]point[/code] is inside the triangle specified by [code]a[/"
"code], [code]b[/code] and [code]c[/code]."
msgstr ""
-#: doc/classes/Geometry2D.xml:250
+#: doc/classes/Geometry2D.xml:257
msgid ""
"Checks if the two segments ([code]from_a[/code], [code]to_a[/code]) and "
"([code]from_b[/code], [code]to_b[/code]) intersect. If yes, return the point "
@@ -21917,7 +22448,7 @@ msgid ""
"empty [Variant]."
msgstr ""
-#: doc/classes/Geometry2D.xml:259
+#: doc/classes/Geometry2D.xml:266
msgid ""
"Triangulates the area specified by discrete set of [code]points[/code] such "
"that no point is inside the circumcircle of any resulting triangle. Returns "
@@ -21928,7 +22459,7 @@ msgid ""
"[PackedInt32Array] is returned."
msgstr ""
-#: doc/classes/Geometry2D.xml:268
+#: doc/classes/Geometry2D.xml:275
msgid ""
"Triangulates the polygon specified by the points in [code]polygon[/code]. "
"Returns a [PackedInt32Array] where each triangle consists of three "
@@ -21938,40 +22469,40 @@ msgid ""
"[PackedInt32Array] is returned."
msgstr ""
-#: doc/classes/Geometry2D.xml:274
+#: doc/classes/Geometry2D.xml:281
msgid ""
"Create regions where either subject or clip polygons (or both) are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:277
+#: doc/classes/Geometry2D.xml:284
msgid ""
"Create regions where subject polygons are filled except where clip polygons "
"are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:280
+#: doc/classes/Geometry2D.xml:287
msgid "Create regions where both subject and clip polygons are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:283
+#: doc/classes/Geometry2D.xml:290
msgid ""
"Create regions where either subject or clip polygons are filled but not "
"where both are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:286
+#: doc/classes/Geometry2D.xml:293
msgid ""
"Squaring is applied uniformally at all convex edge joins at [code]1 * delta[/"
"code]."
msgstr ""
-#: doc/classes/Geometry2D.xml:289
+#: doc/classes/Geometry2D.xml:296
msgid ""
"While flattened paths can never perfectly trace an arc, they are "
"approximated by a series of arc chords."
msgstr ""
-#: doc/classes/Geometry2D.xml:292
+#: doc/classes/Geometry2D.xml:299
msgid ""
"There's a necessary limit to mitered joins since offsetting edges that join "
"at very acute angles will produce excessively long and narrow \"spikes\". "
@@ -21979,27 +22510,27 @@ msgid ""
"distance, \"square\" joining is applied."
msgstr ""
-#: doc/classes/Geometry2D.xml:295
+#: doc/classes/Geometry2D.xml:302
msgid ""
"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
"as a polygon."
msgstr ""
-#: doc/classes/Geometry2D.xml:298
+#: doc/classes/Geometry2D.xml:305
msgid ""
"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
"as a polyline."
msgstr ""
-#: doc/classes/Geometry2D.xml:301
+#: doc/classes/Geometry2D.xml:308
msgid "Endpoints are squared off with no extension."
msgstr ""
-#: doc/classes/Geometry2D.xml:304
+#: doc/classes/Geometry2D.xml:311
msgid "Endpoints are squared off and extended by [code]delta[/code] units."
msgstr ""
-#: doc/classes/Geometry2D.xml:307
+#: doc/classes/Geometry2D.xml:314
msgid "Endpoints are rounded off and extended by [code]delta[/code] units."
msgstr ""
@@ -22229,7 +22760,7 @@ msgstr ""
msgid ""
"Bakes the effect from all [GeometryInstance3D]s marked with [constant "
"GeometryInstance3D.GI_MODE_BAKED] and [Light3D]s marked with either "
-"[constant Light3D.BAKE_INDIRECT] or [constant Light3D.BAKE_ALL]. If "
+"[constant Light3D.BAKE_DYNAMIC] or [constant Light3D.BAKE_STATIC]. If "
"[code]create_visual_debug[/code] is [code]true[/code], after baking the "
"light, this will generate a [MultiMesh] that has a cube representing each "
"solid cell with each cube colored to the cell's albedo color. This can be "
@@ -23120,121 +23651,119 @@ msgstr ""
msgid "Clear all cells."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:53
+#: modules/gridmap/doc_classes/GridMap.xml:49
msgid ""
-"The [MeshLibrary] item index located at the grid-based X, Y and Z "
-"coordinates. If the cell is empty, [constant INVALID_CELL_ITEM] will be "
-"returned."
+"The [MeshLibrary] item index located at the given grid coordinates. If the "
+"cell is empty, [constant INVALID_CELL_ITEM] will be returned."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:66
+#: modules/gridmap/doc_classes/GridMap.xml:58
msgid ""
-"The orientation of the cell at the grid-based X, Y and Z coordinates. -1 is "
-"returned if the cell is empty."
+"The orientation of the cell at the given grid coordinates. [code]-1[/code] "
+"is returned if the cell is empty."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:75 doc/classes/PhysicsBody2D.xml:35
+#: modules/gridmap/doc_classes/GridMap.xml:67 doc/classes/PhysicsBody2D.xml:35
#: doc/classes/PhysicsBody3D.xml:35
msgid "Returns an individual bit on the [member collision_layer]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:84 doc/classes/PhysicsBody2D.xml:44
+#: modules/gridmap/doc_classes/GridMap.xml:76 doc/classes/PhysicsBody2D.xml:44
#: doc/classes/PhysicsBody3D.xml:44
msgid "Returns an individual bit on the [member collision_mask]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:91
+#: modules/gridmap/doc_classes/GridMap.xml:83
msgid ""
"Returns an array of [Transform] and [Mesh] references corresponding to the "
"non-empty cells in the grid. The transforms are specified in world space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:98
+#: modules/gridmap/doc_classes/GridMap.xml:90
msgid ""
"Returns an array of [Vector3] with the non-empty cell coordinates in the "
"grid map."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:121
+#: modules/gridmap/doc_classes/GridMap.xml:109
msgid ""
"Returns the position of a grid cell in the GridMap's local coordinate space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:146
+#: modules/gridmap/doc_classes/GridMap.xml:130
msgid ""
-"Sets the mesh index for the cell referenced by its grid-based X, Y and Z "
-"coordinates.\n"
+"Sets the mesh index for the cell referenced by its grid coordinates.\n"
"A negative item index such as [constant INVALID_CELL_ITEM] will clear the "
"cell.\n"
"Optionally, the item's orientation can be passed. For valid orientation "
"values, see [method Basis.get_orthogonal_index]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:173
+#: modules/gridmap/doc_classes/GridMap.xml:157
msgid "Sets an individual bit on the [member collision_layer]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:184
+#: modules/gridmap/doc_classes/GridMap.xml:168
msgid "Sets an individual bit on the [member collision_mask]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:193
+#: modules/gridmap/doc_classes/GridMap.xml:177
msgid ""
"Returns the coordinates of the grid cell containing the given point.\n"
"[code]pos[/code] should be in the GridMap's local coordinate space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:200
+#: modules/gridmap/doc_classes/GridMap.xml:184
msgid "If [code]true[/code], grid items are centered on the X axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:203
+#: modules/gridmap/doc_classes/GridMap.xml:187
msgid "If [code]true[/code], grid items are centered on the Y axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:206
+#: modules/gridmap/doc_classes/GridMap.xml:190
msgid "If [code]true[/code], grid items are centered on the Z axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:209
+#: modules/gridmap/doc_classes/GridMap.xml:193
msgid ""
"The size of each octant measured in number of cells. This applies to all "
"three axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:212
+#: modules/gridmap/doc_classes/GridMap.xml:196
msgid ""
"The scale of the cell items.\n"
"This does not affect the size of the grid cells themselves, only the items "
"in them. This can be used to make cell items overlap their neighbors."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:216
+#: modules/gridmap/doc_classes/GridMap.xml:200
msgid ""
"The dimensions of the grid's cells.\n"
"This does not affect the size of the meshes. See [member cell_scale]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:220
+#: modules/gridmap/doc_classes/GridMap.xml:204
msgid ""
"The physics layers this GridMap is in.\n"
"GridMaps act as static bodies, meaning they aren't affected by gravity or "
"other forces. They only affect other physics bodies that collide with them."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:224
+#: modules/gridmap/doc_classes/GridMap.xml:208
msgid "The physics layers this GridMap detects collisions in."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:227
+#: modules/gridmap/doc_classes/GridMap.xml:211
msgid "The assigned [MeshLibrary]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:235
+#: modules/gridmap/doc_classes/GridMap.xml:219
msgid "Emitted when [member cell_size] changes."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:241
+#: modules/gridmap/doc_classes/GridMap.xml:225
msgid ""
"Invalid cell item that can be used in [method set_cell_item] to clear cells "
"(or represent an empty cell in [method get_cell_item])."
@@ -23599,27 +24128,33 @@ msgid ""
"server's side.\n"
"For more information on HTTP, see https://developer.mozilla.org/en-US/docs/"
"Web/HTTP (or read RFC 2616 to get it straight from the source: https://tools."
-"ietf.org/html/rfc2616)."
+"ietf.org/html/rfc2616).\n"
+"[b]Note:[/b] When performing HTTP requests from a project exported to HTML5, "
+"keep in mind the remote server may not allow requests from foreign origins "
+"due to [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/"
+"url]. If you host the server in question, you should modify its backend to "
+"allow requests from foreign origins by adding the [code]Access-Control-Allow-"
+"Origin: *[/code] HTTP header."
msgstr ""
-#: doc/classes/HTTPClient.xml:13
+#: doc/classes/HTTPClient.xml:14
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/"
"http_client_class.html"
msgstr ""
-#: doc/classes/HTTPClient.xml:14 doc/classes/HTTPRequest.xml:62
+#: doc/classes/HTTPClient.xml:15 doc/classes/HTTPRequest.xml:71
#: doc/classes/StreamPeerSSL.xml:10
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/ssl_certificates."
"html"
msgstr ""
-#: doc/classes/HTTPClient.xml:21
+#: doc/classes/HTTPClient.xml:22
msgid "Closes the current connection, allowing reuse of this [HTTPClient]."
msgstr ""
-#: doc/classes/HTTPClient.xml:36
+#: doc/classes/HTTPClient.xml:37
msgid ""
"Connects to a host. This needs to be done before any requests are sent.\n"
"The host should not have http:// prepended but will strip the protocol "
@@ -23631,7 +24166,7 @@ msgid ""
"[code]true[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:46
+#: doc/classes/HTTPClient.xml:47
msgid ""
"Returns the response's body length.\n"
"[b]Note:[/b] Some Web servers may not send a body length. In this case, the "
@@ -23639,15 +24174,15 @@ msgid ""
"the body length will also be [code]-1[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:54
+#: doc/classes/HTTPClient.xml:55
msgid "Returns the response's HTTP status code."
msgstr ""
-#: doc/classes/HTTPClient.xml:61
+#: doc/classes/HTTPClient.xml:62
msgid "Returns the response headers."
msgstr ""
-#: doc/classes/HTTPClient.xml:68
+#: doc/classes/HTTPClient.xml:69
msgid ""
"Returns all response headers as a Dictionary of structure [code]{ \"key\": "
"\"value1; value2\" }[/code] where the case-sensitivity of the keys and "
@@ -23662,27 +24197,27 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:82
+#: doc/classes/HTTPClient.xml:83
msgid ""
"Returns a [enum Status] constant. Need to call [method poll] in order to get "
"status updates."
msgstr ""
-#: doc/classes/HTTPClient.xml:89
+#: doc/classes/HTTPClient.xml:90
msgid "If [code]true[/code], this [HTTPClient] has a response available."
msgstr ""
-#: doc/classes/HTTPClient.xml:96
+#: doc/classes/HTTPClient.xml:97
msgid "If [code]true[/code], this [HTTPClient] has a response that is chunked."
msgstr ""
-#: doc/classes/HTTPClient.xml:103
+#: doc/classes/HTTPClient.xml:104
msgid ""
"This needs to be called in order to have any request processed. Check "
"results with [method get_status]."
msgstr ""
-#: doc/classes/HTTPClient.xml:112
+#: doc/classes/HTTPClient.xml:113
msgid ""
"Generates a GET/POST application/x-www-form-urlencoded style query string "
"from a provided dictionary, e.g.:\n"
@@ -23702,11 +24237,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:130
+#: doc/classes/HTTPClient.xml:131
msgid "Reads one chunk from the response."
msgstr ""
-#: doc/classes/HTTPClient.xml:145
+#: doc/classes/HTTPClient.xml:146
msgid ""
"Sends a request to the connected host. The URL parameter is just the part "
"after the host, so for [code]http://somehost.com/index.php[/code], it is "
@@ -23724,7 +24259,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:168
+#: doc/classes/HTTPClient.xml:169
msgid ""
"Sends a raw request to the connected host. The URL parameter is just the "
"part after the host, so for [code]http://somehost.com/index.php[/code], it "
@@ -23734,43 +24269,43 @@ msgid ""
"Sends the body data raw, as a byte array and does not encode it in any way."
msgstr ""
-#: doc/classes/HTTPClient.xml:176
+#: doc/classes/HTTPClient.xml:177
msgid ""
"If [code]true[/code], execution will block until all data is read from the "
"response."
msgstr ""
-#: doc/classes/HTTPClient.xml:179
+#: doc/classes/HTTPClient.xml:180
msgid "The connection to use for this client."
msgstr ""
-#: doc/classes/HTTPClient.xml:182
+#: doc/classes/HTTPClient.xml:183
msgid ""
"The size of the buffer used and maximum bytes to read per iteration. See "
"[method read_response_body_chunk]."
msgstr ""
-#: doc/classes/HTTPClient.xml:187
+#: doc/classes/HTTPClient.xml:188
msgid ""
"HTTP GET method. The GET method requests a representation of the specified "
"resource. Requests using GET should only retrieve data."
msgstr ""
-#: doc/classes/HTTPClient.xml:190
+#: doc/classes/HTTPClient.xml:191
msgid ""
"HTTP HEAD method. The HEAD method asks for a response identical to that of a "
"GET request, but without the response body. This is useful to request "
"metadata like HTTP headers or to check if a resource exists."
msgstr ""
-#: doc/classes/HTTPClient.xml:193
+#: doc/classes/HTTPClient.xml:194
msgid ""
"HTTP POST method. The POST method is used to submit an entity to the "
"specified resource, often causing a change in state or side effects on the "
"server. This is often used for forms and submitting data or uploading files."
msgstr ""
-#: doc/classes/HTTPClient.xml:196
+#: doc/classes/HTTPClient.xml:197
msgid ""
"HTTP PUT method. The PUT method asks to replace all current representations "
"of the target resource with the request payload. (You can think of POST as "
@@ -23778,103 +24313,103 @@ msgid ""
"not make a clear distinction or change their meaning)."
msgstr ""
-#: doc/classes/HTTPClient.xml:199
+#: doc/classes/HTTPClient.xml:200
msgid ""
"HTTP DELETE method. The DELETE method requests to delete the specified "
"resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:202
+#: doc/classes/HTTPClient.xml:203
msgid ""
"HTTP OPTIONS method. The OPTIONS method asks for a description of the "
"communication options for the target resource. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:205
+#: doc/classes/HTTPClient.xml:206
msgid ""
"HTTP TRACE method. The TRACE method performs a message loop-back test along "
"the path to the target resource. Returns the entire HTTP request received in "
"the response body. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:208
+#: doc/classes/HTTPClient.xml:209
msgid ""
"HTTP CONNECT method. The CONNECT method establishes a tunnel to the server "
"identified by the target resource. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:211
+#: doc/classes/HTTPClient.xml:212
msgid ""
"HTTP PATCH method. The PATCH method is used to apply partial modifications "
"to a resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:214
+#: doc/classes/HTTPClient.xml:215
msgid "Represents the size of the [enum Method] enum."
msgstr ""
-#: doc/classes/HTTPClient.xml:217
+#: doc/classes/HTTPClient.xml:218
msgid "Status: Disconnected from the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:220
+#: doc/classes/HTTPClient.xml:221
msgid "Status: Currently resolving the hostname for the given URL into an IP."
msgstr ""
-#: doc/classes/HTTPClient.xml:223
+#: doc/classes/HTTPClient.xml:224
msgid "Status: DNS failure: Can't resolve the hostname for the given URL."
msgstr ""
-#: doc/classes/HTTPClient.xml:226
+#: doc/classes/HTTPClient.xml:227
msgid "Status: Currently connecting to server."
msgstr ""
-#: doc/classes/HTTPClient.xml:229
+#: doc/classes/HTTPClient.xml:230
msgid "Status: Can't connect to the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:232
+#: doc/classes/HTTPClient.xml:233
msgid "Status: Connection established."
msgstr ""
-#: doc/classes/HTTPClient.xml:235
+#: doc/classes/HTTPClient.xml:236
msgid "Status: Currently sending request."
msgstr ""
-#: doc/classes/HTTPClient.xml:238
+#: doc/classes/HTTPClient.xml:239
msgid "Status: HTTP body received."
msgstr ""
-#: doc/classes/HTTPClient.xml:241
+#: doc/classes/HTTPClient.xml:242
msgid "Status: Error in HTTP connection."
msgstr ""
-#: doc/classes/HTTPClient.xml:244
+#: doc/classes/HTTPClient.xml:245
msgid "Status: Error in SSL handshake."
msgstr ""
-#: doc/classes/HTTPClient.xml:247
+#: doc/classes/HTTPClient.xml:248
msgid ""
"HTTP status code [code]100 Continue[/code]. Interim response that indicates "
"everything so far is OK and that the client should continue with the request "
"(or ignore this status if already finished)."
msgstr ""
-#: doc/classes/HTTPClient.xml:250
+#: doc/classes/HTTPClient.xml:251
msgid ""
"HTTP status code [code]101 Switching Protocol[/code]. Sent in response to an "
"[code]Upgrade[/code] request header by the client. Indicates the protocol "
"the server is switching to."
msgstr ""
-#: doc/classes/HTTPClient.xml:253
+#: doc/classes/HTTPClient.xml:254
msgid ""
"HTTP status code [code]102 Processing[/code] (WebDAV). Indicates that the "
"server has received and is processing the request, but no response is "
"available yet."
msgstr ""
-#: doc/classes/HTTPClient.xml:256
+#: doc/classes/HTTPClient.xml:257
msgid ""
"HTTP status code [code]200 OK[/code]. The request has succeeded. Default "
"response for successful requests. Meaning varies depending on the request. "
@@ -23885,14 +24420,14 @@ msgid ""
"server."
msgstr ""
-#: doc/classes/HTTPClient.xml:259
+#: doc/classes/HTTPClient.xml:260
msgid ""
"HTTP status code [code]201 Created[/code]. The request has succeeded and a "
"new resource has been created as a result of it. This is typically the "
"response sent after a PUT request."
msgstr ""
-#: doc/classes/HTTPClient.xml:262
+#: doc/classes/HTTPClient.xml:263
msgid ""
"HTTP status code [code]202 Accepted[/code]. The request has been received "
"but not yet acted upon. It is non-committal, meaning that there is no way in "
@@ -23901,7 +24436,7 @@ msgid ""
"server handles the request, or for batch processing."
msgstr ""
-#: doc/classes/HTTPClient.xml:265
+#: doc/classes/HTTPClient.xml:266
msgid ""
"HTTP status code [code]203 Non-Authoritative Information[/code]. This "
"response code means returned meta-information set is not exact set as "
@@ -23910,14 +24445,14 @@ msgid ""
"instead of this response."
msgstr ""
-#: doc/classes/HTTPClient.xml:268
+#: doc/classes/HTTPClient.xml:269
msgid ""
"HTTP status code [code]204 No Content[/code]. There is no content to send "
"for this request, but the headers may be useful. The user-agent may update "
"its cached headers for this resource with the new ones."
msgstr ""
-#: doc/classes/HTTPClient.xml:271
+#: doc/classes/HTTPClient.xml:272
msgid ""
"HTTP status code [code]205 Reset Content[/code]. The server has fulfilled "
"the request and desires that the client resets the \"document view\" that "
@@ -23925,49 +24460,49 @@ msgid ""
"origin server."
msgstr ""
-#: doc/classes/HTTPClient.xml:274
+#: doc/classes/HTTPClient.xml:275
msgid ""
"HTTP status code [code]206 Partial Content[/code]. This response code is "
"used because of a range header sent by the client to separate download into "
"multiple streams."
msgstr ""
-#: doc/classes/HTTPClient.xml:277
+#: doc/classes/HTTPClient.xml:278
msgid ""
"HTTP status code [code]207 Multi-Status[/code] (WebDAV). A Multi-Status "
"response conveys information about multiple resources in situations where "
"multiple status codes might be appropriate."
msgstr ""
-#: doc/classes/HTTPClient.xml:280
+#: doc/classes/HTTPClient.xml:281
msgid ""
"HTTP status code [code]208 Already Reported[/code] (WebDAV). Used inside a "
"DAV: propstat response element to avoid enumerating the internal members of "
"multiple bindings to the same collection repeatedly."
msgstr ""
-#: doc/classes/HTTPClient.xml:283
+#: doc/classes/HTTPClient.xml:284
msgid ""
"HTTP status code [code]226 IM Used[/code] (WebDAV). The server has fulfilled "
"a GET request for the resource, and the response is a representation of the "
"result of one or more instance-manipulations applied to the current instance."
msgstr ""
-#: doc/classes/HTTPClient.xml:286
+#: doc/classes/HTTPClient.xml:287
msgid ""
"HTTP status code [code]300 Multiple Choice[/code]. The request has more than "
"one possible responses and there is no standardized way to choose one of the "
"responses. User-agent or user should choose one of them."
msgstr ""
-#: doc/classes/HTTPClient.xml:289
+#: doc/classes/HTTPClient.xml:290
msgid ""
"HTTP status code [code]301 Moved Permanently[/code]. Redirection. This "
"response code means the URI of requested resource has been changed. The new "
"URI is usually included in the response."
msgstr ""
-#: doc/classes/HTTPClient.xml:292
+#: doc/classes/HTTPClient.xml:293
msgid ""
"HTTP status code [code]302 Found[/code]. Temporary redirection. This "
"response code means the URI of requested resource has been changed "
@@ -23975,7 +24510,7 @@ msgid ""
"this same URI should be used by the client in future requests."
msgstr ""
-#: doc/classes/HTTPClient.xml:295
+#: doc/classes/HTTPClient.xml:296
msgid ""
"HTTP status code [code]303 See Other[/code]. The server is redirecting the "
"user agent to a different resource, as indicated by a URI in the Location "
@@ -23983,39 +24518,39 @@ msgid ""
"original request."
msgstr ""
-#: doc/classes/HTTPClient.xml:298
+#: doc/classes/HTTPClient.xml:299
msgid ""
"HTTP status code [code]304 Not Modified[/code]. A conditional GET or HEAD "
"request has been received and would have resulted in a 200 OK response if it "
"were not for the fact that the condition evaluated to [code]false[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:301
+#: doc/classes/HTTPClient.xml:302
msgid ""
"HTTP status code [code]305 Use Proxy[/code]. [i]Deprecated. Do not use.[/i]"
msgstr ""
-#: doc/classes/HTTPClient.xml:304
+#: doc/classes/HTTPClient.xml:305
msgid ""
"HTTP status code [code]306 Switch Proxy[/code]. [i]Deprecated. Do not use.[/"
"i]"
msgstr ""
-#: doc/classes/HTTPClient.xml:307
+#: doc/classes/HTTPClient.xml:308
msgid ""
"HTTP status code [code]307 Temporary Redirect[/code]. The target resource "
"resides temporarily under a different URI and the user agent MUST NOT change "
"the request method if it performs an automatic redirection to that URI."
msgstr ""
-#: doc/classes/HTTPClient.xml:310
+#: doc/classes/HTTPClient.xml:311
msgid ""
"HTTP status code [code]308 Permanent Redirect[/code]. The target resource "
"has been assigned a new permanent URI and any future references to this "
"resource ought to use one of the enclosed URIs."
msgstr ""
-#: doc/classes/HTTPClient.xml:313
+#: doc/classes/HTTPClient.xml:314
msgid ""
"HTTP status code [code]400 Bad Request[/code]. The request was invalid. The "
"server cannot or will not process the request due to something that is "
@@ -24024,21 +24559,21 @@ msgid ""
"routing)."
msgstr ""
-#: doc/classes/HTTPClient.xml:316
+#: doc/classes/HTTPClient.xml:317
msgid ""
"HTTP status code [code]401 Unauthorized[/code]. Credentials required. The "
"request has not been applied because it lacks valid authentication "
"credentials for the target resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:319
+#: doc/classes/HTTPClient.xml:320
msgid ""
"HTTP status code [code]402 Payment Required[/code]. This response code is "
"reserved for future use. Initial aim for creating this code was using it for "
"digital payment systems, however this is not currently used."
msgstr ""
-#: doc/classes/HTTPClient.xml:322
+#: doc/classes/HTTPClient.xml:323
msgid ""
"HTTP status code [code]403 Forbidden[/code]. The client does not have access "
"rights to the content, i.e. they are unauthorized, so server is rejecting to "
@@ -24046,7 +24581,7 @@ msgid ""
"known to the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:325
+#: doc/classes/HTTPClient.xml:326
msgid ""
"HTTP status code [code]404 Not Found[/code]. The server can not find "
"requested resource. Either the URL is not recognized or the endpoint is "
@@ -24054,7 +24589,7 @@ msgid ""
"403 to hide existence of a resource if the client is not authorized."
msgstr ""
-#: doc/classes/HTTPClient.xml:328
+#: doc/classes/HTTPClient.xml:329
msgid ""
"HTTP status code [code]405 Method Not Allowed[/code]. The request's HTTP "
"method is known by the server but has been disabled and cannot be used. For "
@@ -24062,7 +24597,7 @@ msgid ""
"GET and HEAD, must never be disabled and should not return this error code."
msgstr ""
-#: doc/classes/HTTPClient.xml:331
+#: doc/classes/HTTPClient.xml:332
msgid ""
"HTTP status code [code]406 Not Acceptable[/code]. The target resource does "
"not have a current representation that would be acceptable to the user "
@@ -24070,21 +24605,21 @@ msgid ""
"request. Used when negotiation content."
msgstr ""
-#: doc/classes/HTTPClient.xml:334
+#: doc/classes/HTTPClient.xml:335
msgid ""
"HTTP status code [code]407 Proxy Authentication Required[/code]. Similar to "
"401 Unauthorized, but it indicates that the client needs to authenticate "
"itself in order to use a proxy."
msgstr ""
-#: doc/classes/HTTPClient.xml:337
+#: doc/classes/HTTPClient.xml:338
msgid ""
"HTTP status code [code]408 Request Timeout[/code]. The server did not "
"receive a complete request message within the time that it was prepared to "
"wait."
msgstr ""
-#: doc/classes/HTTPClient.xml:340
+#: doc/classes/HTTPClient.xml:341
msgid ""
"HTTP status code [code]409 Conflict[/code]. The request could not be "
"completed due to a conflict with the current state of the target resource. "
@@ -24092,47 +24627,47 @@ msgid ""
"conflict and resubmit the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:343
+#: doc/classes/HTTPClient.xml:344
msgid ""
"HTTP status code [code]410 Gone[/code]. The target resource is no longer "
"available at the origin server and this condition is likely permanent."
msgstr ""
-#: doc/classes/HTTPClient.xml:346
+#: doc/classes/HTTPClient.xml:347
msgid ""
"HTTP status code [code]411 Length Required[/code]. The server refuses to "
"accept the request without a defined Content-Length header."
msgstr ""
-#: doc/classes/HTTPClient.xml:349
+#: doc/classes/HTTPClient.xml:350
msgid ""
"HTTP status code [code]412 Precondition Failed[/code]. One or more "
"conditions given in the request header fields evaluated to [code]false[/"
"code] when tested on the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:352
+#: doc/classes/HTTPClient.xml:353
msgid ""
"HTTP status code [code]413 Entity Too Large[/code]. The server is refusing "
"to process a request because the request payload is larger than the server "
"is willing or able to process."
msgstr ""
-#: doc/classes/HTTPClient.xml:355
+#: doc/classes/HTTPClient.xml:356
msgid ""
"HTTP status code [code]414 Request-URI Too Long[/code]. The server is "
"refusing to service the request because the request-target is longer than "
"the server is willing to interpret."
msgstr ""
-#: doc/classes/HTTPClient.xml:358
+#: doc/classes/HTTPClient.xml:359
msgid ""
"HTTP status code [code]415 Unsupported Media Type[/code]. The origin server "
"is refusing to service the request because the payload is in a format not "
"supported by this method on the target resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:361
+#: doc/classes/HTTPClient.xml:362
msgid ""
"HTTP status code [code]416 Requested Range Not Satisfiable[/code]. None of "
"the ranges in the request's Range header field overlap the current extent of "
@@ -24140,21 +24675,21 @@ msgid ""
"to invalid ranges or an excessive request of small or overlapping ranges."
msgstr ""
-#: doc/classes/HTTPClient.xml:364
+#: doc/classes/HTTPClient.xml:365
msgid ""
"HTTP status code [code]417 Expectation Failed[/code]. The expectation given "
"in the request's Expect header field could not be met by at least one of the "
"inbound servers."
msgstr ""
-#: doc/classes/HTTPClient.xml:367
+#: doc/classes/HTTPClient.xml:368
msgid ""
"HTTP status code [code]418 I'm A Teapot[/code]. Any attempt to brew coffee "
"with a teapot should result in the error code \"418 I'm a teapot\". The "
"resulting entity body MAY be short and stout."
msgstr ""
-#: doc/classes/HTTPClient.xml:370
+#: doc/classes/HTTPClient.xml:371
msgid ""
"HTTP status code [code]421 Misdirected Request[/code]. The request was "
"directed at a server that is not able to produce a response. This can be "
@@ -24162,7 +24697,7 @@ msgid ""
"combination of scheme and authority that are included in the request URI."
msgstr ""
-#: doc/classes/HTTPClient.xml:373
+#: doc/classes/HTTPClient.xml:374
msgid ""
"HTTP status code [code]422 Unprocessable Entity[/code] (WebDAV). The server "
"understands the content type of the request entity (hence a 415 Unsupported "
@@ -24171,40 +24706,40 @@ msgid ""
"was unable to process the contained instructions."
msgstr ""
-#: doc/classes/HTTPClient.xml:376
+#: doc/classes/HTTPClient.xml:377
msgid ""
"HTTP status code [code]423 Locked[/code] (WebDAV). The source or destination "
"resource of a method is locked."
msgstr ""
-#: doc/classes/HTTPClient.xml:379
+#: doc/classes/HTTPClient.xml:380
msgid ""
"HTTP status code [code]424 Failed Dependency[/code] (WebDAV). The method "
"could not be performed on the resource because the requested action depended "
"on another action and that action failed."
msgstr ""
-#: doc/classes/HTTPClient.xml:382
+#: doc/classes/HTTPClient.xml:383
msgid ""
"HTTP status code [code]426 Upgrade Required[/code]. The server refuses to "
"perform the request using the current protocol but might be willing to do so "
"after the client upgrades to a different protocol."
msgstr ""
-#: doc/classes/HTTPClient.xml:385
+#: doc/classes/HTTPClient.xml:386
msgid ""
"HTTP status code [code]428 Precondition Required[/code]. The origin server "
"requires the request to be conditional."
msgstr ""
-#: doc/classes/HTTPClient.xml:388
+#: doc/classes/HTTPClient.xml:389
msgid ""
"HTTP status code [code]429 Too Many Requests[/code]. The user has sent too "
"many requests in a given amount of time (see \"rate limiting\"). Back off "
"and increase time between requests or try again later."
msgstr ""
-#: doc/classes/HTTPClient.xml:391
+#: doc/classes/HTTPClient.xml:392
msgid ""
"HTTP status code [code]431 Request Header Fields Too Large[/code]. The "
"server is unwilling to process the request because its header fields are too "
@@ -24212,27 +24747,27 @@ msgid ""
"header fields."
msgstr ""
-#: doc/classes/HTTPClient.xml:394
+#: doc/classes/HTTPClient.xml:395
msgid ""
"HTTP status code [code]451 Response Unavailable For Legal Reasons[/code]. "
"The server is denying access to the resource as a consequence of a legal "
"demand."
msgstr ""
-#: doc/classes/HTTPClient.xml:397
+#: doc/classes/HTTPClient.xml:398
msgid ""
"HTTP status code [code]500 Internal Server Error[/code]. The server "
"encountered an unexpected condition that prevented it from fulfilling the "
"request."
msgstr ""
-#: doc/classes/HTTPClient.xml:400
+#: doc/classes/HTTPClient.xml:401
msgid ""
"HTTP status code [code]501 Not Implemented[/code]. The server does not "
"support the functionality required to fulfill the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:403
+#: doc/classes/HTTPClient.xml:404
msgid ""
"HTTP status code [code]502 Bad Gateway[/code]. The server, while acting as a "
"gateway or proxy, received an invalid response from an inbound server it "
@@ -24240,7 +24775,7 @@ msgid ""
"balancers or proxies."
msgstr ""
-#: doc/classes/HTTPClient.xml:406
+#: doc/classes/HTTPClient.xml:407
msgid ""
"HTTP status code [code]503 Service Unavailable[/code]. The server is "
"currently unable to handle the request due to a temporary overload or "
@@ -24248,7 +24783,7 @@ msgid ""
"again later."
msgstr ""
-#: doc/classes/HTTPClient.xml:409
+#: doc/classes/HTTPClient.xml:410
msgid ""
"HTTP status code [code]504 Gateway Timeout[/code]. The server, while acting "
"as a gateway or proxy, did not receive a timely response from an upstream "
@@ -24256,14 +24791,14 @@ msgid ""
"returned by load balancers or proxies."
msgstr ""
-#: doc/classes/HTTPClient.xml:412
+#: doc/classes/HTTPClient.xml:413
msgid ""
"HTTP status code [code]505 HTTP Version Not Supported[/code]. The server "
"does not support, or refuses to support, the major version of HTTP that was "
"used in the request message."
msgstr ""
-#: doc/classes/HTTPClient.xml:415
+#: doc/classes/HTTPClient.xml:416
msgid ""
"HTTP status code [code]506 Variant Also Negotiates[/code]. The server has an "
"internal configuration error: the chosen variant resource is configured to "
@@ -24271,14 +24806,14 @@ msgid ""
"proper end point in the negotiation process."
msgstr ""
-#: doc/classes/HTTPClient.xml:418
+#: doc/classes/HTTPClient.xml:419
msgid ""
"HTTP status code [code]507 Insufficient Storage[/code]. The method could not "
"be performed on the resource because the server is unable to store the "
"representation needed to successfully complete the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:421
+#: doc/classes/HTTPClient.xml:422
msgid ""
"HTTP status code [code]508 Loop Detected[/code]. The server terminated an "
"operation because it encountered an infinite loop while processing a request "
@@ -24286,14 +24821,14 @@ msgid ""
"failed."
msgstr ""
-#: doc/classes/HTTPClient.xml:424
+#: doc/classes/HTTPClient.xml:425
msgid ""
"HTTP status code [code]510 Not Extended[/code]. The policy for accessing the "
"resource has not been met in the request. The server should send back all "
"the information necessary for the client to issue an extended request."
msgstr ""
-#: doc/classes/HTTPClient.xml:427
+#: doc/classes/HTTPClient.xml:428
msgid ""
"HTTP status code [code]511 Network Authentication Required[/code]. The "
"client needs to authenticate to gain network access."
@@ -24319,12 +24854,21 @@ msgid ""
" http_request.connect(\"request_completed\", self, "
"\"_http_request_completed\")\n"
"\n"
-" # Perform the HTTP request. The URL below returns some JSON as of "
-"writing.\n"
+" # Perform a GET request. The URL below returns JSON as of writing.\n"
" var error = http_request.request(\"https://httpbin.org/get\")\n"
" if error != OK:\n"
" push_error(\"An error occurred in the HTTP request.\")\n"
"\n"
+" # Perform a POST request. The URL below returns JSON as of writing.\n"
+" # Note: Don't make simultaneous requests using a single HTTPRequest "
+"node.\n"
+" # The snippet below is provided for reference only.\n"
+" var body = {\"name\": \"Godette\"}\n"
+" var error = http_request.request(\"https://httpbin.org/post\", [], true, "
+"HTTPClient.METHOD_POST, body)\n"
+" if error != OK:\n"
+" push_error(\"An error occurred in the HTTP request.\")\n"
+"\n"
"\n"
"# Called when the HTTP request is completed.\n"
"func _http_request_completed(result, response_code, headers, body):\n"
@@ -24364,20 +24908,26 @@ msgid ""
" var texture_rect = TextureRect.new()\n"
" add_child(texture_rect)\n"
" texture_rect.texture = texture\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] When performing HTTP requests from a project exported to HTML5, "
+"keep in mind the remote server may not allow requests from foreign origins "
+"due to [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/"
+"url]. If you host the server in question, you should modify its backend to "
+"allow requests from foreign origins by adding the [code]Access-Control-Allow-"
+"Origin: *[/code] HTTP header."
msgstr ""
-#: doc/classes/HTTPRequest.xml:61
+#: doc/classes/HTTPRequest.xml:70
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/"
"http_request_class.html"
msgstr ""
-#: doc/classes/HTTPRequest.xml:69
+#: doc/classes/HTTPRequest.xml:78
msgid "Cancels the current request."
msgstr ""
-#: doc/classes/HTTPRequest.xml:76
+#: doc/classes/HTTPRequest.xml:85
msgid ""
"Returns the response body length.\n"
"[b]Note:[/b] Some Web servers may not send a body length. In this case, the "
@@ -24385,17 +24935,17 @@ msgid ""
"the body length will also be [code]-1[/code]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:84
+#: doc/classes/HTTPRequest.xml:93
msgid "Returns the amount of bytes this HTTPRequest downloaded."
msgstr ""
-#: doc/classes/HTTPRequest.xml:91
+#: doc/classes/HTTPRequest.xml:100
msgid ""
"Returns the current status of the underlying [HTTPClient]. See [enum "
"HTTPClient.Status]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:108
+#: doc/classes/HTTPRequest.xml:117
msgid ""
"Creates request on the underlying [HTTPClient]. If there is no configuration "
"errors, it tries to connect using [method HTTPClient.connect_to_host] and "
@@ -24408,11 +24958,11 @@ msgid ""
"connect to host."
msgstr ""
-#: doc/classes/HTTPRequest.xml:115
+#: doc/classes/HTTPRequest.xml:124
msgid "Maximum allowed size for response bodies."
msgstr ""
-#: doc/classes/HTTPRequest.xml:118
+#: doc/classes/HTTPRequest.xml:127
msgid ""
"The size of the buffer used and maximum bytes to read per iteration. See "
"[member HTTPClient.read_chunk_size].\n"
@@ -24420,63 +24970,63 @@ msgid ""
"files to achieve better speeds at the cost of memory."
msgstr ""
-#: doc/classes/HTTPRequest.xml:122
+#: doc/classes/HTTPRequest.xml:131
msgid "The file to download into. Will output any received file into it."
msgstr ""
-#: doc/classes/HTTPRequest.xml:125
+#: doc/classes/HTTPRequest.xml:134
msgid "Maximum number of allowed redirects."
msgstr ""
-#: doc/classes/HTTPRequest.xml:130
+#: doc/classes/HTTPRequest.xml:139
msgid "If [code]true[/code], multithreading is used to improve performance."
msgstr ""
-#: doc/classes/HTTPRequest.xml:144
+#: doc/classes/HTTPRequest.xml:153
msgid "Emitted when a request is completed."
msgstr ""
-#: doc/classes/HTTPRequest.xml:150
+#: doc/classes/HTTPRequest.xml:159
msgid "Request successful."
msgstr ""
-#: doc/classes/HTTPRequest.xml:155
+#: doc/classes/HTTPRequest.xml:164
msgid "Request failed while connecting."
msgstr ""
-#: doc/classes/HTTPRequest.xml:158
+#: doc/classes/HTTPRequest.xml:167
msgid "Request failed while resolving."
msgstr ""
-#: doc/classes/HTTPRequest.xml:161
+#: doc/classes/HTTPRequest.xml:170
msgid "Request failed due to connection (read/write) error."
msgstr ""
-#: doc/classes/HTTPRequest.xml:164
+#: doc/classes/HTTPRequest.xml:173
msgid "Request failed on SSL handshake."
msgstr ""
-#: doc/classes/HTTPRequest.xml:167
+#: doc/classes/HTTPRequest.xml:176
msgid "Request does not have a response (yet)."
msgstr ""
-#: doc/classes/HTTPRequest.xml:170
+#: doc/classes/HTTPRequest.xml:179
msgid "Request exceeded its maximum size limit, see [member body_size_limit]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:173
+#: doc/classes/HTTPRequest.xml:182
msgid "Request failed (currently unused)."
msgstr ""
-#: doc/classes/HTTPRequest.xml:176
+#: doc/classes/HTTPRequest.xml:185
msgid "HTTPRequest couldn't open the download file."
msgstr ""
-#: doc/classes/HTTPRequest.xml:179
+#: doc/classes/HTTPRequest.xml:188
msgid "HTTPRequest couldn't write to the download file."
msgstr ""
-#: doc/classes/HTTPRequest.xml:182
+#: doc/classes/HTTPRequest.xml:191
msgid "Request reached its maximum redirect limit, see [member max_redirects]."
msgstr ""
@@ -24700,42 +25250,46 @@ msgid "Loads an image from the binary contents of a PNG file."
msgstr ""
#: doc/classes/Image.xml:373
+msgid "Loads an image from the binary contents of a TGA file."
+msgstr ""
+
+#: doc/classes/Image.xml:382
msgid "Loads an image from the binary contents of a WebP file."
msgstr ""
-#: doc/classes/Image.xml:380
+#: doc/classes/Image.xml:389
msgid ""
"Converts the image's data to represent coordinates on a 3D plane. This is "
"used when the image represents a normalmap. A normalmap can add lots of "
"detail to a 3D surface without increasing the polygon count."
msgstr ""
-#: doc/classes/Image.xml:387
+#: doc/classes/Image.xml:396
msgid ""
"Multiplies color values with alpha values. Resulting color values for a "
"pixel are [code](color * alpha)/256[/code]."
msgstr ""
-#: doc/classes/Image.xml:400
+#: doc/classes/Image.xml:409
msgid ""
"Resizes the image to the given [code]width[/code] and [code]height[/code]. "
"New pixels are calculated using [code]interpolation[/code]. See "
"[code]interpolation[/code] constants."
msgstr ""
-#: doc/classes/Image.xml:409
+#: doc/classes/Image.xml:418
msgid ""
"Resizes the image to the nearest power of 2 for the width and height. If "
"[code]square[/code] is [code]true[/code] then set width and height to be the "
"same."
msgstr ""
-#: doc/classes/Image.xml:416
+#: doc/classes/Image.xml:425
msgid ""
"Converts a standard RGBE (Red Green Blue Exponent) image to an sRGB image."
msgstr ""
-#: doc/classes/Image.xml:427
+#: doc/classes/Image.xml:436
msgid ""
"Saves the image as an EXR file to [code]path[/code]. If [code]grayscale[/"
"code] is [code]true[/code] and the image has only one channel, it will be "
@@ -24744,11 +25298,11 @@ msgid ""
"TinyEXR module."
msgstr ""
-#: doc/classes/Image.xml:436
+#: doc/classes/Image.xml:445
msgid "Saves the image as a PNG file to [code]path[/code]."
msgstr ""
-#: doc/classes/Image.xml:455
+#: doc/classes/Image.xml:464
msgid ""
"Sets the [Color] of the pixel at [code](x, y)[/code]. Example:\n"
"[codeblock]\n"
@@ -24758,7 +25312,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Image.xml:471
+#: doc/classes/Image.xml:480
msgid ""
"Sets the [Color] of the pixel at [code](dst.x, dst.y)[/code]. Note that the "
"[code]dst[/code] values must be integers. Example:\n"
@@ -24769,51 +25323,51 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Image.xml:483
+#: doc/classes/Image.xml:492
msgid "Shrinks the image by a factor of 2."
msgstr ""
-#: doc/classes/Image.xml:490
+#: doc/classes/Image.xml:499
msgid "Converts the raw data from the sRGB colorspace to a linear scale."
msgstr ""
-#: doc/classes/Image.xml:496
+#: doc/classes/Image.xml:505
msgid ""
"Holds all of the image's color data in a given format. See [enum Format] "
"constants."
msgstr ""
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:510
msgid "The maximal width allowed for [Image] resources."
msgstr ""
-#: doc/classes/Image.xml:504
+#: doc/classes/Image.xml:513
msgid "The maximal height allowed for [Image] resources."
msgstr ""
-#: doc/classes/Image.xml:507
+#: doc/classes/Image.xml:516
msgid "Texture format with a single 8-bit depth representing luminance."
msgstr ""
-#: doc/classes/Image.xml:510
+#: doc/classes/Image.xml:519
msgid ""
"OpenGL texture format with two values, luminance and alpha each stored with "
"8 bits."
msgstr ""
-#: doc/classes/Image.xml:513
+#: doc/classes/Image.xml:522
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
"bitdepth of 8."
msgstr ""
-#: doc/classes/Image.xml:516
+#: doc/classes/Image.xml:525
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
-#: doc/classes/Image.xml:519
+#: doc/classes/Image.xml:528
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -24821,7 +25375,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:523
+#: doc/classes/Image.xml:532
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -24829,67 +25383,67 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:536
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
-#: doc/classes/Image.xml:532
+#: doc/classes/Image.xml:541
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
-#: doc/classes/Image.xml:535
+#: doc/classes/Image.xml:544
msgid ""
"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
"each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:538
+#: doc/classes/Image.xml:547
msgid ""
"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
"components, each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:541
+#: doc/classes/Image.xml:550
msgid ""
"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
"components, each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:544
+#: doc/classes/Image.xml:553
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 16-"
"bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:556
msgid ""
"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
"each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:550
+#: doc/classes/Image.xml:559
msgid ""
"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
"components, each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:553
+#: doc/classes/Image.xml:562
msgid ""
"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
"components, each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:556
+#: doc/classes/Image.xml:565
msgid ""
"A special OpenGL texture format where the three color components have 9 bits "
"of precision and all three share a single 5-bit exponent."
msgstr ""
-#: doc/classes/Image.xml:559
+#: doc/classes/Image.xml:568
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format that uses Block Compression 1, and is the smallest variation "
@@ -24899,7 +25453,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:563
+#: doc/classes/Image.xml:572
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format that uses Block Compression 2, and color data is interpreted "
@@ -24909,7 +25463,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:567
+#: doc/classes/Image.xml:576
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format also known as Block Compression 3 or BC3 that contains 64 "
@@ -24920,7 +25474,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:571
+#: doc/classes/Image.xml:580
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -24928,7 +25482,7 @@ msgid ""
"DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:574
+#: doc/classes/Image.xml:583
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -24936,7 +25490,7 @@ msgid ""
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:577
+#: doc/classes/Image.xml:586
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -24945,21 +25499,21 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:581
+#: doc/classes/Image.xml:590
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with signed floating-point "
"RGB components."
msgstr ""
-#: doc/classes/Image.xml:584
+#: doc/classes/Image.xml:593
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned floating-point "
"RGB components."
msgstr ""
-#: doc/classes/Image.xml:587
+#: doc/classes/Image.xml:596
msgid ""
"Texture format used on PowerVR-supported mobile platforms, uses 2-bit color "
"depth with no alpha. More information can be found [url=https://en.wikipedia."
@@ -24968,25 +25522,25 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:600
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:603
msgid ""
"Similar to [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with 4-"
"bit color depth and no alpha."
msgstr ""
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:606
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:609
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -24994,7 +25548,7 @@ msgid ""
"standard. This format cannot store an alpha channel."
msgstr ""
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:612
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -25002,7 +25556,7 @@ msgid ""
"unsigned data."
msgstr ""
-#: doc/classes/Image.xml:606
+#: doc/classes/Image.xml:615
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -25010,7 +25564,7 @@ msgid ""
"channel of signed data."
msgstr ""
-#: doc/classes/Image.xml:609
+#: doc/classes/Image.xml:618
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -25018,7 +25572,7 @@ msgid ""
"of unsigned data."
msgstr ""
-#: doc/classes/Image.xml:612
+#: doc/classes/Image.xml:621
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -25026,7 +25580,7 @@ msgid ""
"channels of signed data."
msgstr ""
-#: doc/classes/Image.xml:615
+#: doc/classes/Image.xml:624
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -25036,7 +25590,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:619
+#: doc/classes/Image.xml:628
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -25046,7 +25600,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:623
+#: doc/classes/Image.xml:632
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -25057,31 +25611,31 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:631
+#: doc/classes/Image.xml:640
msgid "Represents the size of the [enum Format] enum."
msgstr ""
-#: doc/classes/Image.xml:634
+#: doc/classes/Image.xml:643
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
-#: doc/classes/Image.xml:637
+#: doc/classes/Image.xml:646
msgid ""
"Performs bilinear interpolation. If the image is resized, it will be blurry. "
"This mode is faster than [constant INTERPOLATE_CUBIC], but it results in "
"lower quality."
msgstr ""
-#: doc/classes/Image.xml:640
+#: doc/classes/Image.xml:649
msgid ""
"Performs cubic interpolation. If the image is resized, it will be blurry. "
"This mode often gives better results compared to [constant "
"INTERPOLATE_BILINEAR], at the cost of being slower."
msgstr ""
-#: doc/classes/Image.xml:643
+#: doc/classes/Image.xml:652
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -25096,55 +25650,55 @@ msgid ""
"a new set will be generated for the resulting image."
msgstr ""
-#: doc/classes/Image.xml:650
+#: doc/classes/Image.xml:659
msgid ""
"Performs Lanczos interpolation. This is the slowest image resizing mode, but "
"it typically gives the best results, especially when downscalng images."
msgstr ""
-#: doc/classes/Image.xml:653
+#: doc/classes/Image.xml:662
msgid "Image does not have alpha."
msgstr ""
-#: doc/classes/Image.xml:656
+#: doc/classes/Image.xml:665
msgid "Image stores alpha in a single bit."
msgstr ""
-#: doc/classes/Image.xml:659
+#: doc/classes/Image.xml:668
msgid "Image uses alpha."
msgstr ""
-#: doc/classes/Image.xml:662
+#: doc/classes/Image.xml:671
msgid "Use S3TC compression."
msgstr ""
-#: doc/classes/Image.xml:665
+#: doc/classes/Image.xml:674
msgid "Use PVRTC2 compression."
msgstr ""
-#: doc/classes/Image.xml:668
+#: doc/classes/Image.xml:677
msgid "Use PVRTC4 compression."
msgstr ""
-#: doc/classes/Image.xml:671
+#: doc/classes/Image.xml:680
msgid "Use ETC compression."
msgstr ""
-#: doc/classes/Image.xml:674
+#: doc/classes/Image.xml:683
msgid "Use ETC2 compression."
msgstr ""
-#: doc/classes/Image.xml:689
+#: doc/classes/Image.xml:698
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
-#: doc/classes/Image.xml:692
+#: doc/classes/Image.xml:701
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
-#: doc/classes/Image.xml:695
+#: doc/classes/Image.xml:704
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -25963,7 +26517,7 @@ msgid "Contains mouse click information. See [method Node._input]."
msgstr ""
#: doc/classes/InputEventMouseButton.xml:10
-#: doc/classes/InputEventMouseMotion.xml:10
+#: doc/classes/InputEventMouseMotion.xml:11
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/inputs/"
"mouse_and_input_coordinates.html"
@@ -26000,29 +26554,36 @@ msgstr ""
#: doc/classes/InputEventMouseMotion.xml:7
msgid ""
"Contains mouse and pen motion information. Supports relative, absolute "
-"positions and speed. See [method Node._input]."
+"positions and speed. See [method Node._input].\n"
+"[b]Note:[/b] By default, this event is only emitted once per frame rendered "
+"at most. If you need more precise input reporting, call [method Input."
+"set_use_accumulated_input] with [code]false[/code] to make events emitted as "
+"often as possible. If you use InputEventMouseMotion to draw lines, consider "
+"implementing [url=https://en.wikipedia.org/wiki/Bresenham"
+"%27s_line_algorithm]Bresenham's line algorithm[/url] as well to avoid "
+"visible gaps in lines if the user is moving the mouse quickly."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:16
+#: doc/classes/InputEventMouseMotion.xml:17
msgid ""
"Represents the pressure the user puts on the pen. Ranges from [code]0.0[/"
"code] to [code]1.0[/code]."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:19
+#: doc/classes/InputEventMouseMotion.xml:20
msgid ""
"The mouse position relative to the previous position (position at the last "
-"frame). \n"
+"frame).\n"
"[b]Note:[/b] Since [InputEventMouseMotion] is only emitted when the mouse "
"moves, the last event won't have a relative position of [code]Vector2(0, 0)[/"
"code] when the user stops moving the mouse."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:23
+#: doc/classes/InputEventMouseMotion.xml:24
msgid "The mouse speed in pixels per second."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:26
+#: doc/classes/InputEventMouseMotion.xml:27
msgid ""
"Represents the angles of tilt of the pen. Positive X-coordinate value "
"indicates a tilt to the right. Positive Y-coordinate value indicates a tilt "
@@ -26912,14 +27473,17 @@ msgstr ""
#: doc/classes/JSON.xml:18
msgid ""
-"Parses a JSON encoded string and returns a [JSONParseResult] containing the "
+"Parses a JSON-encoded string and returns a [JSONParseResult] containing the "
"result."
msgstr ""
#: doc/classes/JSON.xml:31
msgid ""
"Converts a [Variant] var to JSON text and returns the result. Useful for "
-"serializing data to store or send over the network."
+"serializing data to store or send over the network.\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, converting a Variant to JSON text "
+"will convert all numerical values to [float] types."
msgstr ""
#: doc/classes/JSONParseResult.xml:4
@@ -26942,14 +27506,14 @@ msgstr ""
#: doc/classes/JSONParseResult.xml:18
msgid ""
-"The line number where the error occurred if JSON source was not successfully "
-"parsed."
+"The line number where the error occurred if the JSON source was not "
+"successfully parsed."
msgstr ""
#: doc/classes/JSONParseResult.xml:21
msgid ""
-"The error message if JSON source was not successfully parsed. See the [enum "
-"Error] constants."
+"The error message if the JSON source was not successfully parsed. See the "
+"[enum Error] constants."
msgstr ""
#: doc/classes/JSONParseResult.xml:24
@@ -26957,11 +27521,11 @@ msgid ""
"A [Variant] containing the parsed JSON. Use [method @GDScript.typeof] or the "
"[code]is[/code] keyword to check if it is what you expect. For example, if "
"the JSON source starts with curly braces ([code]{}[/code]), a [Dictionary] "
-"will be returned. If the JSON source starts with braces ([code][][/code]), "
+"will be returned. If the JSON source starts with brackets ([code][][/code]), "
"an [Array] will be returned.\n"
"[b]Note:[/b] The JSON specification does not define integer or float types, "
-"but only a number type. Therefore, parsing a JSON text will convert all "
-"numerical values to float types.\n"
+"but only a [i]number[/i] type. Therefore, parsing a JSON text will convert "
+"all numerical values to [float] types.\n"
"[b]Note:[/b] JSON objects do not preserve key order like Godot dictionaries, "
"thus, you should not rely on keys being in a certain order if a dictionary "
"is constructed from JSON. In contrast, JSON arrays retain the order of their "
@@ -26971,7 +27535,7 @@ msgid ""
"if typeof(p.result) == TYPE_ARRAY:\n"
" print(p.result[0]) # Prints \"hello\"\n"
"else:\n"
-" print(\"unexpected results\")\n"
+" push_error(\"Unexpected results.\")\n"
"[/codeblock]"
msgstr ""
@@ -27087,7 +27651,7 @@ msgid ""
"simulation will run at an incorrect speed.\n"
"[code]linear_velocity[/code] is the velocity vector in pixels per second. "
"Unlike in [method move_and_collide], you should [i]not[/i] multiply it by "
-"[code]delta[/code] — the physics engine handles applying the velocity. \n"
+"[code]delta[/code] — the physics engine handles applying the velocity.\n"
"[code]up_direction[/code] is the up direction, used to determine what is a "
"wall and what is a floor or a ceiling. If set to the default value of "
"[code]Vector2(0, 0)[/code], everything is considered a wall. This is useful "
@@ -27203,7 +27767,7 @@ msgid ""
"[code]linear_velocity[/code] is the velocity vector (typically meters per "
"second). Unlike in [method move_and_collide], you should [i]not[/i] multiply "
"it by [code]delta[/code] — the physics engine handles applying the "
-"velocity. \n"
+"velocity.\n"
"[code]up_direction[/code] is the up direction, used to determine what is a "
"wall and what is a floor or a ceiling. If set to the default value of "
"[code]Vector3(0, 0, 0)[/code], everything is considered a wall.\n"
@@ -27932,17 +28496,6 @@ msgid ""
"[b]Note:[/b] Hiding a light does [i]not[/i] affect baking."
msgstr ""
-#: doc/classes/Light3D.xml:152
-msgid "Only indirect lighting will be baked (default)."
-msgstr ""
-
-#: doc/classes/Light3D.xml:155
-msgid ""
-"Both direct and indirect light will be baked.\n"
-"[b]Note:[/b] You should hide the light if you don't want it to appear twice "
-"(dynamic and baked)."
-msgstr ""
-
#: doc/classes/LightOccluder2D.xml:4
msgid "Occludes light cast by a Light2D, casting shadows."
msgstr ""
@@ -28221,136 +28774,142 @@ msgstr ""
msgid "Text alignment as defined in the [enum Align] enum."
msgstr ""
-#: doc/classes/LineEdit.xml:120 doc/classes/TextEdit.xml:406
+#: doc/classes/LineEdit.xml:120 doc/classes/TextEdit.xml:358
msgid "If [code]true[/code], the caret (visual cursor) blinks."
msgstr ""
-#: doc/classes/LineEdit.xml:123 doc/classes/TextEdit.xml:409
+#: doc/classes/LineEdit.xml:123 doc/classes/TextEdit.xml:361
msgid "Duration (in seconds) of a caret's blinking cycle."
msgstr ""
-#: doc/classes/LineEdit.xml:126
+#: doc/classes/LineEdit.xml:128
msgid ""
"The cursor's position inside the [LineEdit]. When set, the text may scroll "
"to accommodate it."
msgstr ""
-#: doc/classes/LineEdit.xml:129
+#: doc/classes/LineEdit.xml:131
msgid ""
"If [code]true[/code], the [LineEdit] will show a clear button if [code]text[/"
"code] is not empty, which can be used to clear the text quickly."
msgstr ""
-#: doc/classes/LineEdit.xml:132
+#: doc/classes/LineEdit.xml:134
msgid "If [code]true[/code], the context menu will appear when right-clicked."
msgstr ""
-#: doc/classes/LineEdit.xml:135
+#: doc/classes/LineEdit.xml:137
msgid ""
"If [code]false[/code], existing text cannot be modified and new text cannot "
"be added."
msgstr ""
-#: doc/classes/LineEdit.xml:138
+#: doc/classes/LineEdit.xml:140
msgid ""
"If [code]true[/code], the [LineEdit] width will increase to stay longer than "
"the [member text]. It will [b]not[/b] compress if the [member text] is "
"shortened."
msgstr ""
-#: doc/classes/LineEdit.xml:142
+#: doc/classes/LineEdit.xml:144
msgid ""
"Maximum amount of characters that can be entered inside the [LineEdit]. If "
"[code]0[/code], there is no limit."
msgstr ""
-#: doc/classes/LineEdit.xml:146
+#: doc/classes/LineEdit.xml:148
msgid ""
"Opacity of the [member placeholder_text]. From [code]0[/code] to [code]1[/"
"code]."
msgstr ""
-#: doc/classes/LineEdit.xml:149
+#: doc/classes/LineEdit.xml:151
msgid ""
"Text shown when the [LineEdit] is empty. It is [b]not[/b] the [LineEdit]'s "
"default value (see [member text])."
msgstr ""
-#: doc/classes/LineEdit.xml:152
+#: doc/classes/LineEdit.xml:154
msgid ""
"Sets the icon that will appear in the right end of the [LineEdit] if there's "
"no [member text], or always, if [member clear_button_enabled] is set to "
"[code]false[/code]."
msgstr ""
-#: doc/classes/LineEdit.xml:155
+#: doc/classes/LineEdit.xml:157
msgid ""
"If [code]true[/code], every character is replaced with the secret character "
"(see [member secret_character])."
msgstr ""
-#: doc/classes/LineEdit.xml:158
+#: doc/classes/LineEdit.xml:160
msgid ""
"The character to use to mask secret input (defaults to \"*\"). Only a single "
"character can be used as the secret character."
msgstr ""
-#: doc/classes/LineEdit.xml:161
+#: doc/classes/LineEdit.xml:163
msgid ""
"If [code]false[/code], it's impossible to select the text using mouse nor "
"keyboard."
msgstr ""
-#: doc/classes/LineEdit.xml:164
+#: doc/classes/LineEdit.xml:166
msgid "If [code]false[/code], using shortcuts will be disabled."
msgstr ""
-#: doc/classes/LineEdit.xml:167
+#: doc/classes/LineEdit.xml:169
msgid ""
"String value of the [LineEdit].\n"
"[b]Note:[/b] Changing text using this property won't emit the [signal "
"text_changed] signal."
msgstr ""
-#: doc/classes/LineEdit.xml:174
+#: doc/classes/LineEdit.xml:173 doc/classes/TextEdit.xml:434
+msgid ""
+"If [code]true[/code], the native virtual keyboard is shown when focused on "
+"platforms that support it."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:179
msgid ""
"Emitted when trying to append text that would overflow the [member "
"max_length]."
msgstr ""
-#: doc/classes/LineEdit.xml:181 doc/classes/TextEdit.xml:525
+#: doc/classes/LineEdit.xml:186 doc/classes/TextEdit.xml:490
msgid "Emitted when the text changes."
msgstr ""
-#: doc/classes/LineEdit.xml:188
+#: doc/classes/LineEdit.xml:193
msgid "Emitted when the user presses [constant KEY_ENTER] on the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:194
+#: doc/classes/LineEdit.xml:199
msgid "Aligns the text on the left-hand side of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:197
+#: doc/classes/LineEdit.xml:202
msgid "Centers the text in the middle of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:200
+#: doc/classes/LineEdit.xml:205
msgid "Aligns the text on the right-hand side of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:203
+#: doc/classes/LineEdit.xml:208
msgid "Stretches whitespaces to fit the [LineEdit]'s width."
msgstr ""
-#: doc/classes/LineEdit.xml:206 doc/classes/TextEdit.xml:540
+#: doc/classes/LineEdit.xml:211 doc/classes/TextEdit.xml:505
msgid "Cuts (copies and clears) the selected text."
msgstr ""
-#: doc/classes/LineEdit.xml:209 doc/classes/TextEdit.xml:543
+#: doc/classes/LineEdit.xml:214 doc/classes/TextEdit.xml:508
msgid "Copies the selected text."
msgstr ""
-#: doc/classes/LineEdit.xml:212
+#: doc/classes/LineEdit.xml:217
msgid ""
"Pastes the clipboard text over the selected text (or at the cursor's "
"position).\n"
@@ -28358,80 +28917,80 @@ msgid ""
"clipboard via [method String.strip_escapes]."
msgstr ""
-#: doc/classes/LineEdit.xml:216
+#: doc/classes/LineEdit.xml:221
msgid "Erases the whole [LineEdit] text."
msgstr ""
-#: doc/classes/LineEdit.xml:219
+#: doc/classes/LineEdit.xml:224
msgid "Selects the whole [LineEdit] text."
msgstr ""
-#: doc/classes/LineEdit.xml:222 doc/classes/TextEdit.xml:555
+#: doc/classes/LineEdit.xml:227 doc/classes/TextEdit.xml:520
msgid "Undoes the previous action."
msgstr ""
-#: doc/classes/LineEdit.xml:225
+#: doc/classes/LineEdit.xml:230
msgid "Reverse the last undo action."
msgstr ""
-#: doc/classes/LineEdit.xml:228 doc/classes/TextEdit.xml:561
+#: doc/classes/LineEdit.xml:233 doc/classes/TextEdit.xml:526
msgid "Represents the size of the [enum MenuItems] enum."
msgstr ""
-#: doc/classes/LineEdit.xml:233
+#: doc/classes/LineEdit.xml:238
msgid "Texture for the clear button. See [member clear_button_enabled]."
msgstr ""
-#: doc/classes/LineEdit.xml:236
+#: doc/classes/LineEdit.xml:241
msgid "Color used as default tint for the clear button."
msgstr ""
-#: doc/classes/LineEdit.xml:239
+#: doc/classes/LineEdit.xml:244
msgid "Color used for the clear button when it's pressed."
msgstr ""
-#: doc/classes/LineEdit.xml:242
+#: doc/classes/LineEdit.xml:247
msgid "Color of the [LineEdit]'s visual cursor (caret)."
msgstr ""
-#: doc/classes/LineEdit.xml:245
+#: doc/classes/LineEdit.xml:250
msgid "Background used when [LineEdit] has GUI focus."
msgstr ""
-#: doc/classes/LineEdit.xml:248
+#: doc/classes/LineEdit.xml:253
msgid "Font used for the text."
msgstr ""
-#: doc/classes/LineEdit.xml:251
+#: doc/classes/LineEdit.xml:256
msgid "Default font color."
msgstr ""
-#: doc/classes/LineEdit.xml:254
+#: doc/classes/LineEdit.xml:259
msgid "Font color for selected text (inside the selection rectangle)."
msgstr ""
-#: doc/classes/LineEdit.xml:257
+#: doc/classes/LineEdit.xml:262
msgid "Font color when editing is disabled."
msgstr ""
-#: doc/classes/LineEdit.xml:260
+#: doc/classes/LineEdit.xml:265
msgid ""
"Minimum horizontal space for the text (not counting the clear button and "
"content margins). This value is measured in count of space characters (i.e. "
"this amount of space characters can be displayed without scrolling)."
msgstr ""
-#: doc/classes/LineEdit.xml:263
+#: doc/classes/LineEdit.xml:268
msgid "Default background for the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:266
+#: doc/classes/LineEdit.xml:271
msgid ""
"Background used when [LineEdit] is in read-only mode ([member editable] is "
"set to [code]false[/code])."
msgstr ""
-#: doc/classes/LineEdit.xml:269
+#: doc/classes/LineEdit.xml:274
msgid "Color of the selection rectangle."
msgstr ""
@@ -28649,14 +29208,14 @@ msgstr ""
msgid "Emitted when a user responds to a permission request."
msgstr ""
-#: doc/classes/MainLoop.xml:127 doc/classes/Node.xml:948
+#: doc/classes/MainLoop.xml:127 doc/classes/Node.xml:946
msgid ""
"Notification received from the OS when the application is exceeding its "
"allocated memory.\n"
"Specific to the iOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:131 doc/classes/Node.xml:952
+#: doc/classes/MainLoop.xml:131 doc/classes/Node.xml:950
msgid ""
"Notification received when translations may have changed. Can be triggered "
"by the user changing the locale. Can be used to respond to language changes, "
@@ -28664,39 +29223,55 @@ msgid ""
"the built-in translation support, like [method Object.tr]."
msgstr ""
-#: doc/classes/MainLoop.xml:134 doc/classes/Node.xml:955
+#: doc/classes/MainLoop.xml:134 doc/classes/Node.xml:953
msgid ""
"Notification received from the OS when a request for \"About\" information "
"is sent.\n"
"Specific to the macOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:138 doc/classes/Node.xml:959
+#: doc/classes/MainLoop.xml:138 doc/classes/Node.xml:957
msgid ""
"Notification received from Godot's crash handler when the engine is about to "
"crash.\n"
"Implemented on desktop platforms if the crash handler is enabled."
msgstr ""
-#: doc/classes/MainLoop.xml:142 doc/classes/Node.xml:963
+#: doc/classes/MainLoop.xml:142 doc/classes/Node.xml:961
msgid ""
"Notification received from the OS when an update of the Input Method Engine "
"occurs (e.g. change of IME cursor position or composition string).\n"
"Specific to the macOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:146 doc/classes/Node.xml:967
+#: doc/classes/MainLoop.xml:146 doc/classes/Node.xml:965
msgid ""
-"Notification received from the OS when the app is resumed.\n"
+"Notification received from the OS when the application is resumed.\n"
"Specific to the Android platform."
msgstr ""
-#: doc/classes/MainLoop.xml:150 doc/classes/Node.xml:971
+#: doc/classes/MainLoop.xml:150 doc/classes/Node.xml:969
msgid ""
-"Notification received from the OS when the app is paused.\n"
+"Notification received from the OS when the application is paused.\n"
"Specific to the Android platform."
msgstr ""
+#: doc/classes/MainLoop.xml:154 doc/classes/Node.xml:973
+msgid ""
+"Notification received from the OS when the application is focused, i.e. when "
+"changing the focus from the OS desktop or a thirdparty application to any "
+"open window of the Godot instance.\n"
+"Implemented on desktop platforms."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:158 doc/classes/Node.xml:977
+msgid ""
+"Notification received from the OS when the application is defocused, i.e. "
+"when changing the focus from any open window of the Godot instance to the OS "
+"desktop or a thirdparty application.\n"
+"Implemented on desktop platforms."
+msgstr ""
+
#: doc/classes/MarginContainer.xml:4
msgid "Simple margin container."
msgstr ""
@@ -29004,11 +29579,11 @@ msgstr ""
msgid "Render array as triangle strips."
msgstr ""
-#: doc/classes/Mesh.xml:126 doc/classes/RenderingServer.xml:3189
+#: doc/classes/Mesh.xml:126 doc/classes/RenderingServer.xml:3185
msgid "Blend shapes are normalized."
msgstr ""
-#: doc/classes/Mesh.xml:129 doc/classes/RenderingServer.xml:3192
+#: doc/classes/Mesh.xml:129 doc/classes/RenderingServer.xml:3188
msgid "Blend shapes are relative to base weight."
msgstr ""
@@ -29050,37 +29625,37 @@ msgstr ""
msgid "Mesh array uses indices."
msgstr ""
-#: doc/classes/Mesh.xml:159 doc/classes/RenderingServer.xml:3145
+#: doc/classes/Mesh.xml:159 doc/classes/RenderingServer.xml:3141
msgid "Flag used to mark a compressed (half float) normal array."
msgstr ""
-#: doc/classes/Mesh.xml:162 doc/classes/RenderingServer.xml:3148
+#: doc/classes/Mesh.xml:162 doc/classes/RenderingServer.xml:3144
msgid "Flag used to mark a compressed (half float) tangent array."
msgstr ""
-#: doc/classes/Mesh.xml:165 doc/classes/RenderingServer.xml:3151
+#: doc/classes/Mesh.xml:165 doc/classes/RenderingServer.xml:3147
msgid "Flag used to mark a compressed (half float) color array."
msgstr ""
-#: doc/classes/Mesh.xml:168 doc/classes/RenderingServer.xml:3154
+#: doc/classes/Mesh.xml:168 doc/classes/RenderingServer.xml:3150
msgid "Flag used to mark a compressed (half float) UV coordinates array."
msgstr ""
-#: doc/classes/Mesh.xml:171 doc/classes/RenderingServer.xml:3157
+#: doc/classes/Mesh.xml:171 doc/classes/RenderingServer.xml:3153
msgid ""
"Flag used to mark a compressed (half float) UV coordinates array for the "
"second UV coordinates."
msgstr ""
-#: doc/classes/Mesh.xml:174 doc/classes/RenderingServer.xml:3160
+#: doc/classes/Mesh.xml:174 doc/classes/RenderingServer.xml:3156
msgid "Flag used to mark a compressed index array."
msgstr ""
-#: doc/classes/Mesh.xml:177 doc/classes/RenderingServer.xml:3166
+#: doc/classes/Mesh.xml:177 doc/classes/RenderingServer.xml:3162
msgid "Flag used to mark that the array contains 2D vertices."
msgstr ""
-#: doc/classes/Mesh.xml:180 doc/classes/RenderingServer.xml:3163
+#: doc/classes/Mesh.xml:180 doc/classes/RenderingServer.xml:3159
msgid ""
"Used to set flags [constant ARRAY_COMPRESS_NORMAL], [constant "
"ARRAY_COMPRESS_TANGENT], [constant ARRAY_COMPRESS_COLOR], [constant "
@@ -30841,7 +31416,10 @@ msgstr ""
msgid ""
"The number of channels to be used by ENet. Channels are used to separate "
"different kinds of data. In reliable or ordered mode, for example, the "
-"packet delivery order is ensured on a per channel basis."
+"packet delivery order is ensured on a per-channel basis. This is done to "
+"combat latency and reduces ordering restrictions on packets. The delivery "
+"status of a packet in one channel won't stall the delivery of other packets "
+"in another channel."
msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:134
@@ -30868,11 +31446,12 @@ msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:144
msgid ""
"Set the default channel to be used to transfer data. By default, this value "
-"is [code]-1[/code] which means that ENet will only use 2 channels, one for "
-"reliable and one for unreliable packets. Channel [code]0[/code] is reserved, "
-"and cannot be used. Setting this member to any value between [code]0[/code] "
-"and [member channel_count] (excluded) will force ENet to use that channel "
-"for sending data."
+"is [code]-1[/code] which means that ENet will only use 2 channels: one for "
+"reliable packets, and one for unreliable packets. The channel [code]0[/code] "
+"is reserved and cannot be used. Setting this member to any value between "
+"[code]0[/code] and [member channel_count] (excluded) will force ENet to use "
+"that channel for sending data. See [member channel_count] for more "
+"information about ENet channels."
msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:148
@@ -32064,57 +32643,63 @@ msgstr ""
#: doc/classes/Node.xml:930
msgid ""
-"Notification received from the OS when the game window is focused.\n"
-"Implemented on all platforms."
+"Notification received from the OS when the node's parent [Window] is "
+"focused. This may be a change of focus between two windows of the same "
+"engine instance, or from the OS desktop or a third-party application to a "
+"window of the game (in which case [constant "
+"NOTIFICATION_APPLICATION_FOCUS_IN] is also emitted)."
msgstr ""
-#: doc/classes/Node.xml:934
+#: doc/classes/Node.xml:933
msgid ""
-"Notification received from the OS when the game window is unfocused.\n"
-"Implemented on all platforms."
+"Notification received from the OS when the node's parent [Window] is "
+"defocused. This may be a change of focus between two windows of the same "
+"engine instance, or from a window of the game to the OS desktop or a third-"
+"party application (in which case [constant "
+"NOTIFICATION_APPLICATION_FOCUS_OUT] is also emitted)."
msgstr ""
-#: doc/classes/Node.xml:938
+#: doc/classes/Node.xml:936
msgid ""
"Notification received from the OS when a close request is sent (e.g. closing "
"the window with a \"Close\" button or [kbd]Alt + F4[/kbd]).\n"
"Implemented on desktop platforms."
msgstr ""
-#: doc/classes/Node.xml:942
+#: doc/classes/Node.xml:940
msgid ""
"Notification received from the OS when a go back request is sent (e.g. "
"pressing the \"Back\" button on Android).\n"
"Specific to the Android platform."
msgstr ""
-#: doc/classes/Node.xml:975
+#: doc/classes/Node.xml:981
msgid ""
"Inherits pause mode from the node's parent. For the root node, it is "
"equivalent to [constant PAUSE_MODE_STOP]. Default."
msgstr ""
-#: doc/classes/Node.xml:978
+#: doc/classes/Node.xml:984
msgid "Stops processing when the [SceneTree] is paused."
msgstr ""
-#: doc/classes/Node.xml:981
+#: doc/classes/Node.xml:987
msgid "Continue to process regardless of the [SceneTree] pause state."
msgstr ""
-#: doc/classes/Node.xml:984
+#: doc/classes/Node.xml:990
msgid "Duplicate the node's signals."
msgstr ""
-#: doc/classes/Node.xml:987
+#: doc/classes/Node.xml:993
msgid "Duplicate the node's groups."
msgstr ""
-#: doc/classes/Node.xml:990
+#: doc/classes/Node.xml:996
msgid "Duplicate the node's scripts."
msgstr ""
-#: doc/classes/Node.xml:993
+#: doc/classes/Node.xml:999
msgid ""
"Duplicate using instancing.\n"
"An instance stays linked to the original so when the original changes, the "
@@ -32338,12 +32923,6 @@ msgid ""
"changes. [Node3D] will not propagate this by default."
msgstr ""
-#: doc/classes/Node3D.xml:104
-msgid ""
-"Returns whether the node is visible, taking into consideration that its "
-"parents visibility."
-msgstr ""
-
#: doc/classes/Node3D.xml:115
msgid ""
"Rotates itself so that the local -Z axis points towards the [code]target[/"
@@ -32513,7 +33092,10 @@ msgid "Local translation of this node."
msgstr ""
#: doc/classes/Node3D.xml:326
-msgid "If [code]true[/code], this node is drawn."
+msgid ""
+"If [code]true[/code], this node is drawn. The node is only visible if all of "
+"its antecedents are visible as well (in other words, [method "
+"is_visible_in_tree] must return [code]true[/code])."
msgstr ""
#: doc/classes/Node3D.xml:332
@@ -32770,10 +33352,20 @@ msgid ""
"the key exists, even if the value is [code]null[/code].\n"
"Objects also receive notifications. Notifications are a simple way to notify "
"the object about different events, so they can all be handled together. See "
-"[method _notification]."
+"[method _notification].\n"
+"[b]Note:[/b] Unlike references to a [Reference], references to an Object "
+"stored in a variable can become invalid without warning. Therefore, it's "
+"recommended to use [Reference] for data classes instead of [Object]."
msgstr ""
-#: doc/classes/Object.xml:30
+#: doc/classes/Object.xml:23 doc/classes/Reference.xml:12
+#: doc/classes/Resource.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/getting_started/workflow/"
+"best_practices/node_alternatives.html"
+msgstr ""
+
+#: doc/classes/Object.xml:32
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method get].\n"
@@ -32781,7 +33373,7 @@ msgid ""
"code] does not exist."
msgstr ""
-#: doc/classes/Object.xml:38
+#: doc/classes/Object.xml:40
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method get_property_list].\n"
@@ -32793,11 +33385,11 @@ msgid ""
"PropertyUsageFlags])."
msgstr ""
-#: doc/classes/Object.xml:47
+#: doc/classes/Object.xml:49
msgid "Called when the object is initialized."
msgstr ""
-#: doc/classes/Object.xml:56
+#: doc/classes/Object.xml:58
msgid ""
"Called whenever the object receives a notification, which is identified in "
"[code]what[/code] by a constant. The base [Object] has two constants "
@@ -32806,7 +33398,7 @@ msgid ""
"notifications which are also received by this method."
msgstr ""
-#: doc/classes/Object.xml:67
+#: doc/classes/Object.xml:69
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method set].\n"
@@ -32814,7 +33406,7 @@ msgid ""
"exists."
msgstr ""
-#: doc/classes/Object.xml:75
+#: doc/classes/Object.xml:77
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method to_string], and thus the object's representation where it is "
@@ -32823,34 +33415,42 @@ msgid ""
"[code]\"[ClassName:RID]\"[/code]."
msgstr ""
-#: doc/classes/Object.xml:87
+#: doc/classes/Object.xml:89
msgid ""
"Adds a user-defined [code]signal[/code]. Arguments are optional, but can be "
"added as an [Array] of dictionaries, each containing [code]name: String[/"
"code] and [code]type: int[/code] (see [enum Variant.Type]) entries."
msgstr ""
-#: doc/classes/Object.xml:96
+#: doc/classes/Object.xml:98
msgid ""
"Calls the [code]method[/code] on the object and returns the result. This "
"method supports a variable number of arguments, so parameters are passed as "
"a comma separated list. Example:\n"
"[codeblock]\n"
"call(\"set\", \"position\", Vector2(42.0, 0.0))\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] In C#, the method name must be specified as snake_case if it is "
+"defined by a built-in Godot node. This doesn't apply to user-defined methods "
+"where you should use the same convention as in the C# source (typically "
+"PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:108
+#: doc/classes/Object.xml:111
msgid ""
"Calls the [code]method[/code] on the object during idle time. This method "
"supports a variable number of arguments, so parameters are passed as a comma "
"separated list. Example:\n"
"[codeblock]\n"
"call_deferred(\"set\", \"position\", Vector2(42.0, 0.0))\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] In C#, the method name must be specified as snake_case if it is "
+"defined by a built-in Godot node. This doesn't apply to user-defined methods "
+"where you should use the same convention as in the C# source (typically "
+"PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:122
+#: doc/classes/Object.xml:126
msgid ""
"Calls the [code]method[/code] on the object and returns the result. "
"Contrarily to [method call], this method does not support a variable number "
@@ -32860,13 +33460,13 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:132
+#: doc/classes/Object.xml:136
msgid ""
"Returns [code]true[/code] if the object can translate strings. See [method "
"set_message_translation] and [method tr]."
msgstr ""
-#: doc/classes/Object.xml:147
+#: doc/classes/Object.xml:151
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32902,7 +33502,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:174
+#: doc/classes/Object.xml:178
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32913,7 +33513,7 @@ msgid ""
"exists."
msgstr ""
-#: doc/classes/Object.xml:185
+#: doc/classes/Object.xml:189
msgid ""
"Emits the given [code]signal[/code]. The signal must exist, so it should be "
"a built-in signal of this class or one of its parent classes, or a user-"
@@ -32925,24 +33525,28 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:196
+#: doc/classes/Object.xml:200
msgid ""
"Deletes the object from memory. Any pre-existing reference to the freed "
"object will become invalid, e.g. [code]is_instance_valid(object)[/code] will "
"return [code]false[/code]."
msgstr ""
-#: doc/classes/Object.xml:205
+#: doc/classes/Object.xml:209
msgid ""
"Returns the [Variant] value of the given [code]property[/code]. If the "
-"[code]property[/code] doesn't exist, this will return [code]null[/code]."
+"[code]property[/code] doesn't exist, this will return [code]null[/code].\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:212
+#: doc/classes/Object.xml:217
msgid "Returns the object's class as a [String]."
msgstr ""
-#: doc/classes/Object.xml:219
+#: doc/classes/Object.xml:224
msgid ""
"Returns an [Array] of dictionaries with information about signals that are "
"connected to the object.\n"
@@ -32953,7 +33557,7 @@ msgid ""
"connected."
msgstr ""
-#: doc/classes/Object.xml:232
+#: doc/classes/Object.xml:237
msgid ""
"Gets the object's property indexed by the given [NodePath]. The node path "
"should be relative to the current object and can use the colon character "
@@ -32961,26 +33565,26 @@ msgid ""
"\"[/code] or [code]\"material:next_pass:blend_mode\"[/code]."
msgstr ""
-#: doc/classes/Object.xml:239
+#: doc/classes/Object.xml:244
msgid ""
"Returns the object's unique instance ID.\n"
"This ID can be saved in [EncodedObjectAsID], and can be used to retrieve the "
"object instance with [method @GDScript.instance_from_id]."
msgstr ""
-#: doc/classes/Object.xml:249
+#: doc/classes/Object.xml:254
msgid "Returns the object's metadata entry for the given [code]name[/code]."
msgstr ""
-#: doc/classes/Object.xml:256
+#: doc/classes/Object.xml:261
msgid "Returns the object's metadata as a [PackedStringArray]."
msgstr ""
-#: doc/classes/Object.xml:263
+#: doc/classes/Object.xml:268
msgid "Returns the object's methods and their signatures as an [Array]."
msgstr ""
-#: doc/classes/Object.xml:270
+#: doc/classes/Object.xml:275
msgid ""
"Returns the object's property list as an [Array] of dictionaries.\n"
"Each property's [Dictionary] contain at least [code]name: String[/code] and "
@@ -32990,54 +33594,54 @@ msgid ""
"PropertyUsageFlags])."
msgstr ""
-#: doc/classes/Object.xml:278
+#: doc/classes/Object.xml:283
msgid ""
"Returns the object's [Script] instance, or [code]null[/code] if none is "
"assigned."
msgstr ""
-#: doc/classes/Object.xml:287
+#: doc/classes/Object.xml:292
msgid "Returns an [Array] of connections for the given [code]signal[/code]."
msgstr ""
-#: doc/classes/Object.xml:294
+#: doc/classes/Object.xml:299
msgid "Returns the list of signals as an [Array] of dictionaries."
msgstr ""
-#: doc/classes/Object.xml:303
+#: doc/classes/Object.xml:308
msgid ""
"Returns [code]true[/code] if a metadata entry is found with the given "
"[code]name[/code]."
msgstr ""
-#: doc/classes/Object.xml:312
+#: doc/classes/Object.xml:317
msgid ""
"Returns [code]true[/code] if the object contains the given [code]method[/"
"code]."
msgstr ""
-#: doc/classes/Object.xml:321
+#: doc/classes/Object.xml:326
msgid "Returns [code]true[/code] if the given [code]signal[/code] exists."
msgstr ""
-#: doc/classes/Object.xml:330
+#: doc/classes/Object.xml:335
msgid ""
"Returns [code]true[/code] if the given user-defined [code]signal[/code] "
"exists. Only signals added using [method add_user_signal] are taken into "
"account."
msgstr ""
-#: doc/classes/Object.xml:337
+#: doc/classes/Object.xml:342
msgid "Returns [code]true[/code] if signal emission blocking is enabled."
msgstr ""
-#: doc/classes/Object.xml:346
+#: doc/classes/Object.xml:351
msgid ""
"Returns [code]true[/code] if the object inherits from the given [code]class[/"
"code]."
msgstr ""
-#: doc/classes/Object.xml:357
+#: doc/classes/Object.xml:362
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -33045,13 +33649,13 @@ msgid ""
"code], [code]target[/code], and [code]method[/code]."
msgstr ""
-#: doc/classes/Object.xml:365
+#: doc/classes/Object.xml:370
msgid ""
"Returns [code]true[/code] if the [method Node.queue_free] method was called "
"for the object."
msgstr ""
-#: doc/classes/Object.xml:376
+#: doc/classes/Object.xml:381
msgid ""
"Send a given notification to the object, which will also trigger a call to "
"the [method _notification] method of all classes that the object inherits "
@@ -33063,34 +33667,42 @@ msgid ""
"and then down to its successive inheriting classes."
msgstr ""
-#: doc/classes/Object.xml:384
+#: doc/classes/Object.xml:389
msgid ""
"Notify the editor that the property list has changed, so that editor plugins "
"can take the new values into account. Does nothing on export builds."
msgstr ""
-#: doc/classes/Object.xml:393
+#: doc/classes/Object.xml:398
msgid "Removes a given entry from the object's metadata."
msgstr ""
-#: doc/classes/Object.xml:404
+#: doc/classes/Object.xml:409
msgid ""
"Assigns a new value to the given property. If the [code]property[/code] does "
-"not exist, nothing will happen."
+"not exist, nothing will happen.\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:413
+#: doc/classes/Object.xml:419
msgid "If set to [code]true[/code], signal emission is blocked."
msgstr ""
-#: doc/classes/Object.xml:424
+#: doc/classes/Object.xml:430
msgid ""
"Assigns a new value to the given property, after the current frame's physics "
"step. This is equivalent to calling [method set] via [method call_deferred], "
-"i.e. [code]call_deferred(\"set\", property, value)[/code]."
+"i.e. [code]call_deferred(\"set\", property, value)[/code].\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:435
+#: doc/classes/Object.xml:442
msgid ""
"Assigns a new value to the property identified by the [NodePath]. The node "
"path should be relative to the current object and can use the colon "
@@ -33102,19 +33714,19 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:449
+#: doc/classes/Object.xml:456
msgid ""
"Defines whether the object can translate strings (with calls to [method "
"tr]). Enabled by default."
msgstr ""
-#: doc/classes/Object.xml:460
+#: doc/classes/Object.xml:467
msgid ""
"Adds or changes a given entry in the object's metadata. Metadata are "
"serialized, and can take any [Variant] value."
msgstr ""
-#: doc/classes/Object.xml:469
+#: doc/classes/Object.xml:476
msgid ""
"Assigns a script to the object. Each object can have a single script "
"assigned to it, which are used to extend its functionality.\n"
@@ -33123,7 +33735,7 @@ msgid ""
"_init] method will be called."
msgstr ""
-#: doc/classes/Object.xml:477
+#: doc/classes/Object.xml:484
msgid ""
"Returns a [String] representing the object. If not overridden, defaults to "
"[code]\"[ClassName:RID]\"[/code].\n"
@@ -33131,7 +33743,7 @@ msgid ""
"representation."
msgstr ""
-#: doc/classes/Object.xml:487
+#: doc/classes/Object.xml:494
msgid ""
"Translates a message using translation catalogs configured in the Project "
"Settings.\n"
@@ -33140,35 +33752,35 @@ msgid ""
"set_message_translation]."
msgstr ""
-#: doc/classes/Object.xml:495
+#: doc/classes/Object.xml:502
msgid "Emitted whenever the object's script is changed."
msgstr ""
-#: doc/classes/Object.xml:501
+#: doc/classes/Object.xml:508
msgid "Called right when the object is initialized. Not available in script."
msgstr ""
-#: doc/classes/Object.xml:504
+#: doc/classes/Object.xml:511
msgid "Called before the object is about to be deleted."
msgstr ""
-#: doc/classes/Object.xml:507
+#: doc/classes/Object.xml:514
msgid ""
"Connects a signal in deferred mode. This way, signal emissions are stored in "
"a queue, then set on idle time."
msgstr ""
-#: doc/classes/Object.xml:510
+#: doc/classes/Object.xml:517
msgid "Persisting connections are saved when the object is serialized to file."
msgstr ""
-#: doc/classes/Object.xml:513
+#: doc/classes/Object.xml:520
msgid "One-shot connections disconnect themselves after emission."
msgstr ""
-#: doc/classes/Object.xml:516
+#: doc/classes/Object.xml:523
msgid ""
-"Connect a signal as reference counted. This means that a given signal can be "
+"Connect a signal as reference-counted. This means that a given signal can be "
"connected several times to the same target, and will only be fully "
"disconnected once no references are left."
msgstr ""
@@ -33633,10 +34245,29 @@ msgid "Returns the keycode of the given string (e.g. \"Escape\")."
msgstr ""
#: doc/classes/OS.xml:115
-msgid "Returns the command line arguments passed to the engine."
+msgid ""
+"Returns the command-line arguments passed to the engine.\n"
+"Command-line arguments can be written in any form, including both [code]--"
+"key value[/code] and [code]--key=value[/code] forms so they can be properly "
+"parsed, as long as custom command-line arguments do not conflict with engine "
+"arguments.\n"
+"You can also incorporate environment variables using the [method "
+"get_environment] method.\n"
+"You can set [code]editor/main_run_args[/code] in the Project Settings to "
+"define command-line arguments to be passed by the editor when running the "
+"project.\n"
+"Here's a minimal example on how to parse command-line arguments into a "
+"dictionary using the [code]--key=value[/code] form for arguments:\n"
+"[codeblock]\n"
+"var arguments = {}\n"
+"for argument in OS.get_cmdline_args():\n"
+" if argument.find(\"=\") > -1:\n"
+" var key_value = argument.split(\"=\")\n"
+" arguments[key_value[0].lstrip(\"--\")] = key_value[1]\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/OS.xml:122
+#: doc/classes/OS.xml:133
msgid ""
"Returns an array of MIDI device names.\n"
"The returned array will be empty if the system MIDI driver has not "
@@ -33644,14 +34275,14 @@ msgid ""
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:133
+#: doc/classes/OS.xml:144
msgid ""
"Returns current date as a dictionary of keys: [code]year[/code], "
"[code]month[/code], [code]day[/code], [code]weekday[/code], [code]dst[/code] "
"(Daylight Savings Time)."
msgstr ""
-#: doc/classes/OS.xml:142
+#: doc/classes/OS.xml:153
msgid ""
"Returns current datetime as a dictionary of keys: [code]year[/code], "
"[code]month[/code], [code]day[/code], [code]weekday[/code], [code]dst[/code] "
@@ -33659,7 +34290,7 @@ msgid ""
"[code]second[/code]."
msgstr ""
-#: doc/classes/OS.xml:151
+#: doc/classes/OS.xml:162
msgid ""
"Gets a dictionary of time values corresponding to the given UNIX epoch time "
"(in seconds).\n"
@@ -33668,22 +34299,22 @@ msgid ""
"the epoch."
msgstr ""
-#: doc/classes/OS.xml:161
+#: doc/classes/OS.xml:172
msgid "Returns an environment variable."
msgstr ""
-#: doc/classes/OS.xml:168
+#: doc/classes/OS.xml:179
msgid "Returns the path to the current engine executable."
msgstr ""
-#: doc/classes/OS.xml:175
+#: doc/classes/OS.xml:186
msgid ""
"With this function you can get the list of dangerous permissions that have "
"been granted to the Android application.\n"
"[b]Note:[/b] This method is implemented on Android."
msgstr ""
-#: doc/classes/OS.xml:185
+#: doc/classes/OS.xml:196
msgid ""
"Returns the given keycode as a string (e.g. Return values: [code]\"Escape\"[/"
"code], [code]\"Shift+Escape\"[/code]).\n"
@@ -33691,18 +34322,18 @@ msgid ""
"get_keycode_with_modifiers]."
msgstr ""
-#: doc/classes/OS.xml:193
+#: doc/classes/OS.xml:204
msgid "Returns the host OS locale."
msgstr ""
-#: doc/classes/OS.xml:200
+#: doc/classes/OS.xml:211
msgid ""
"Returns the model name of the current device.\n"
"[b]Note:[/b] This method is implemented on Android and iOS. Returns "
"[code]\"GenericDevice\"[/code] on unsupported platforms."
msgstr ""
-#: doc/classes/OS.xml:208
+#: doc/classes/OS.xml:219
msgid ""
"Returns the name of the host OS. Possible values are: [code]\"Android\"[/"
"code], [code]\"iOS\"[/code], [code]\"HTML5\"[/code], [code]\"OSX\"[/code], "
@@ -33710,81 +34341,81 @@ msgid ""
"[code]\"X11\"[/code]."
msgstr ""
-#: doc/classes/OS.xml:215
+#: doc/classes/OS.xml:226
msgid ""
"Returns the project's process ID.\n"
"[b]Note:[/b] This method is implemented on Android, iOS, Linux, macOS and "
"Windows."
msgstr ""
-#: doc/classes/OS.xml:223
+#: doc/classes/OS.xml:234
msgid "Returns the number of threads available on the host machine."
msgstr ""
-#: doc/classes/OS.xml:230
+#: doc/classes/OS.xml:241
msgid ""
"Returns the amount of time in milliseconds it took for the boot logo to "
"appear."
msgstr ""
-#: doc/classes/OS.xml:237
+#: doc/classes/OS.xml:248
msgid "Returns the maximum amount of static memory used (only works in debug)."
msgstr ""
-#: doc/classes/OS.xml:244
+#: doc/classes/OS.xml:255
msgid "Returns the amount of static memory being used by the program in bytes."
msgstr ""
-#: doc/classes/OS.xml:253
+#: doc/classes/OS.xml:264
msgid ""
"Returns the actual path to commonly used folders across different platforms. "
"Available locations are specified in [enum SystemDir].\n"
"[b]Note:[/b] This method is implemented on Android, Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:261
+#: doc/classes/OS.xml:272
msgid ""
"Returns the total number of available tablet drivers.\n"
"[b]Note:[/b] This method is implemented on Windows."
msgstr ""
-#: doc/classes/OS.xml:271
+#: doc/classes/OS.xml:282
msgid ""
"Returns the tablet driver name for the given index.\n"
"[b]Note:[/b] This method is implemented on Windows."
msgstr ""
-#: doc/classes/OS.xml:279
+#: doc/classes/OS.xml:290
msgid ""
"Returns the amount of time passed in milliseconds since the engine started."
msgstr ""
-#: doc/classes/OS.xml:286
+#: doc/classes/OS.xml:297
msgid ""
"Returns the amount of time passed in microseconds since the engine started."
msgstr ""
-#: doc/classes/OS.xml:295
+#: doc/classes/OS.xml:306
msgid "Returns current time as a dictionary of keys: hour, minute, second."
msgstr ""
-#: doc/classes/OS.xml:302
+#: doc/classes/OS.xml:313
msgid ""
"Returns the current time zone as a dictionary with the keys: bias and name."
msgstr ""
-#: doc/classes/OS.xml:309
+#: doc/classes/OS.xml:320
msgid ""
"Returns a string that is unique to the device.\n"
"[b]Note:[/b] Returns an empty string on HTML5 and UWP, as this method isn't "
"implemented on those platforms yet."
msgstr ""
-#: doc/classes/OS.xml:317
+#: doc/classes/OS.xml:328
msgid "Returns the current UNIX epoch timestamp."
msgstr ""
-#: doc/classes/OS.xml:326
+#: doc/classes/OS.xml:337
msgid ""
"Gets an epoch time value from a dictionary of time values.\n"
"[code]datetime[/code] must be populated with the following keys: [code]year[/"
@@ -33795,7 +34426,7 @@ msgid ""
"ignored."
msgstr ""
-#: doc/classes/OS.xml:335
+#: doc/classes/OS.xml:346
msgid ""
"Returns the absolute directory path where user data is written ([code]user://"
"[/code]).\n"
@@ -33813,11 +34444,11 @@ msgid ""
"[/code]."
msgstr ""
-#: doc/classes/OS.xml:348
+#: doc/classes/OS.xml:359
msgid "Returns [code]true[/code] if an environment variable exists."
msgstr ""
-#: doc/classes/OS.xml:357
+#: doc/classes/OS.xml:368
msgid ""
"Returns [code]true[/code] if the feature for the given feature tag is "
"supported in the currently running instance, depending on platform, build "
@@ -33828,7 +34459,7 @@ msgid ""
"[b]Note:[/b] Tag names are case-sensitive."
msgstr ""
-#: doc/classes/OS.xml:365
+#: doc/classes/OS.xml:376
msgid ""
"Returns [code]true[/code] if the Godot binary used to run the project is a "
"[i]debug[/i] export template, or when running in the editor.\n"
@@ -33839,26 +34470,26 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/OS.xml:376
+#: doc/classes/OS.xml:387
msgid ""
"Returns [code]true[/code] if the input keycode corresponds to a Unicode "
"character."
msgstr ""
-#: doc/classes/OS.xml:383
+#: doc/classes/OS.xml:394
msgid ""
"Returns [code]true[/code] if the engine was executed with [code]-v[/code] "
"(verbose stdout)."
msgstr ""
-#: doc/classes/OS.xml:390
+#: doc/classes/OS.xml:401
msgid ""
"If [code]true[/code], the [code]user://[/code] file system is persistent, so "
"that its state is the same after a player quits and starts the game again. "
"Relevant to the HTML5 platform, where this persistence may be unavailable."
msgstr ""
-#: doc/classes/OS.xml:399
+#: doc/classes/OS.xml:410
msgid ""
"Kill (terminate) the process identified by the given process ID ([code]pid[/"
"code]), e.g. the one returned by [method execute] in non-blocking mode.\n"
@@ -33868,37 +34499,37 @@ msgid ""
"Windows."
msgstr ""
-#: doc/classes/OS.xml:408
+#: doc/classes/OS.xml:419
msgid ""
"Initialises the singleton for the system MIDI driver.\n"
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:418
+#: doc/classes/OS.xml:429
msgid ""
"Shows all resources in the game. Optionally, the list can be written to a "
"file by specifying a file path in [code]tofile[/code]."
msgstr ""
-#: doc/classes/OS.xml:425
+#: doc/classes/OS.xml:436
msgid "Shows the list of loaded textures sorted by size in memory."
msgstr ""
-#: doc/classes/OS.xml:434
+#: doc/classes/OS.xml:445
msgid "Shows the number of resources loaded by the game of the given types."
msgstr ""
-#: doc/classes/OS.xml:443
+#: doc/classes/OS.xml:454
msgid "Shows all resources currently used by the game."
msgstr ""
-#: doc/classes/OS.xml:452
+#: doc/classes/OS.xml:463
msgid ""
"At the moment this function is only used by [code]AudioDriverOpenSL[/code] "
"to request permission for [code]RECORD_AUDIO[/code] on Android."
msgstr ""
-#: doc/classes/OS.xml:459
+#: doc/classes/OS.xml:470
msgid ""
"With this function you can request dangerous permissions since normal "
"permissions are automatically granted at install time in Android "
@@ -33906,15 +34537,15 @@ msgid ""
"[b]Note:[/b] This method is implemented on Android."
msgstr ""
-#: doc/classes/OS.xml:469
+#: doc/classes/OS.xml:480
msgid "Sets the name of the current thread."
msgstr ""
-#: doc/classes/OS.xml:478
+#: doc/classes/OS.xml:489
msgid "Enables backup saves if [code]enabled[/code] is [code]true[/code]."
msgstr ""
-#: doc/classes/OS.xml:487
+#: doc/classes/OS.xml:498
msgid ""
"Requests the OS to open a resource with the most appropriate program. For "
"example:\n"
@@ -33933,7 +34564,7 @@ msgid ""
"and Windows."
msgstr ""
-#: doc/classes/OS.xml:498
+#: doc/classes/OS.xml:509
msgid ""
"The exit code passed to the OS when the main loop exits. By convention, an "
"exit code of [code]0[/code] indicates success whereas a non-zero exit code "
@@ -33943,137 +34574,137 @@ msgid ""
"with an [code]exit_code[/code] argument passed."
msgstr ""
-#: doc/classes/OS.xml:502
+#: doc/classes/OS.xml:513
msgid ""
"If [code]true[/code], the engine optimizes for low processor usage by only "
"refreshing the screen if needed. Can improve battery consumption on mobile."
msgstr ""
-#: doc/classes/OS.xml:505
+#: doc/classes/OS.xml:516
msgid ""
"The amount of sleeping between frames when the low-processor usage mode is "
"enabled (in microseconds). Higher values will result in lower CPU usage."
msgstr ""
-#: doc/classes/OS.xml:508
-msgid "The current tablet drvier in use."
+#: doc/classes/OS.xml:519
+msgid "The current tablet driver in use."
msgstr ""
-#: doc/classes/OS.xml:513
+#: doc/classes/OS.xml:524
msgid ""
"The GLES2 rendering backend. It uses OpenGL ES 2.0 on mobile devices, OpenGL "
"2.1 on desktop platforms and WebGL 1.0 on the web."
msgstr ""
-#: doc/classes/OS.xml:516
+#: doc/classes/OS.xml:527
msgid "The Vulkan rendering backend."
msgstr ""
-#: doc/classes/OS.xml:519
+#: doc/classes/OS.xml:530
msgid "Sunday."
msgstr ""
-#: doc/classes/OS.xml:522
+#: doc/classes/OS.xml:533
msgid "Monday."
msgstr ""
-#: doc/classes/OS.xml:525
+#: doc/classes/OS.xml:536
msgid "Tuesday."
msgstr ""
-#: doc/classes/OS.xml:528
+#: doc/classes/OS.xml:539
msgid "Wednesday."
msgstr ""
-#: doc/classes/OS.xml:531
+#: doc/classes/OS.xml:542
msgid "Thursday."
msgstr ""
-#: doc/classes/OS.xml:534
+#: doc/classes/OS.xml:545
msgid "Friday."
msgstr ""
-#: doc/classes/OS.xml:537
+#: doc/classes/OS.xml:548
msgid "Saturday."
msgstr ""
-#: doc/classes/OS.xml:540
+#: doc/classes/OS.xml:551
msgid "January."
msgstr ""
-#: doc/classes/OS.xml:543
+#: doc/classes/OS.xml:554
msgid "February."
msgstr ""
-#: doc/classes/OS.xml:546
+#: doc/classes/OS.xml:557
msgid "March."
msgstr ""
-#: doc/classes/OS.xml:549
+#: doc/classes/OS.xml:560
msgid "April."
msgstr ""
-#: doc/classes/OS.xml:552
+#: doc/classes/OS.xml:563
msgid "May."
msgstr ""
-#: doc/classes/OS.xml:555
+#: doc/classes/OS.xml:566
msgid "June."
msgstr ""
-#: doc/classes/OS.xml:558
+#: doc/classes/OS.xml:569
msgid "July."
msgstr ""
-#: doc/classes/OS.xml:561
+#: doc/classes/OS.xml:572
msgid "August."
msgstr ""
-#: doc/classes/OS.xml:564
+#: doc/classes/OS.xml:575
msgid "September."
msgstr ""
-#: doc/classes/OS.xml:567
+#: doc/classes/OS.xml:578
msgid "October."
msgstr ""
-#: doc/classes/OS.xml:570
+#: doc/classes/OS.xml:581
msgid "November."
msgstr ""
-#: doc/classes/OS.xml:573
+#: doc/classes/OS.xml:584
msgid "December."
msgstr ""
-#: doc/classes/OS.xml:576
+#: doc/classes/OS.xml:587
msgid "Desktop directory path."
msgstr ""
-#: doc/classes/OS.xml:579
+#: doc/classes/OS.xml:590
msgid "DCIM (Digital Camera Images) directory path."
msgstr ""
-#: doc/classes/OS.xml:582
+#: doc/classes/OS.xml:593
msgid "Documents directory path."
msgstr ""
-#: doc/classes/OS.xml:585
+#: doc/classes/OS.xml:596
msgid "Downloads directory path."
msgstr ""
-#: doc/classes/OS.xml:588
+#: doc/classes/OS.xml:599
msgid "Movies directory path."
msgstr ""
-#: doc/classes/OS.xml:591
+#: doc/classes/OS.xml:602
msgid "Music directory path."
msgstr ""
-#: doc/classes/OS.xml:594
+#: doc/classes/OS.xml:605
msgid "Pictures directory path."
msgstr ""
-#: doc/classes/OS.xml:597
+#: doc/classes/OS.xml:608
msgid "Ringtones directory path."
msgstr ""
@@ -34128,7 +34759,16 @@ msgid ""
"should always be preferred."
msgstr ""
-#: doc/classes/PackedByteArray.xml:85
+#: doc/classes/PackedByteArray.xml:87 doc/classes/PackedColorArray.xml:53
+#: doc/classes/PackedFloat32Array.xml:54 doc/classes/PackedFloat64Array.xml:54
+#: doc/classes/PackedInt32Array.xml:54 doc/classes/PackedInt64Array.xml:54
+#: doc/classes/PackedStringArray.xml:53 doc/classes/PackedVector2Array.xml:53
+#: doc/classes/PackedVector3Array.xml:53
+#, fuzzy
+msgid "Returns [code]true[/code] if the array contains [code]value[/code]."
+msgstr "Ritorna [code]true[/code] se [code]s[/code] è zero o quasi zero."
+
+#: doc/classes/PackedByteArray.xml:94
msgid ""
"Returns a hexadecimal representation of this array as a [String].\n"
"[codeblock]\n"
@@ -34137,39 +34777,48 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/PackedByteArray.xml:100 doc/classes/PackedColorArray.xml:55
-#: doc/classes/PackedFloat32Array.xml:56 doc/classes/PackedFloat64Array.xml:56
-#: doc/classes/PackedStringArray.xml:55 doc/classes/PackedVector2Array.xml:55
-#: doc/classes/PackedVector3Array.xml:55
+#: doc/classes/PackedByteArray.xml:109 doc/classes/PackedColorArray.xml:64
+#: doc/classes/PackedFloat32Array.xml:65 doc/classes/PackedFloat64Array.xml:65
+#: doc/classes/PackedStringArray.xml:64 doc/classes/PackedVector2Array.xml:64
+#: doc/classes/PackedVector3Array.xml:64
msgid ""
"Inserts a new element at a given position in the array. The position must be "
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PackedByteArray.xml:134 doc/classes/PackedColorArray.xml:89
-#: doc/classes/PackedFloat32Array.xml:90 doc/classes/PackedFloat64Array.xml:90
-#: doc/classes/PackedInt32Array.xml:90 doc/classes/PackedInt64Array.xml:90
-#: doc/classes/PackedStringArray.xml:89 doc/classes/PackedVector2Array.xml:89
-#: doc/classes/PackedVector3Array.xml:89
+#: doc/classes/PackedByteArray.xml:143 doc/classes/PackedColorArray.xml:98
+#: doc/classes/PackedFloat32Array.xml:99 doc/classes/PackedFloat64Array.xml:99
+#: doc/classes/PackedInt32Array.xml:99 doc/classes/PackedInt64Array.xml:99
+#: doc/classes/PackedStringArray.xml:98 doc/classes/PackedVector2Array.xml:98
+#: doc/classes/PackedVector3Array.xml:98
msgid ""
"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."
msgstr ""
-#: doc/classes/PackedByteArray.xml:145
+#: doc/classes/PackedByteArray.xml:154
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PackedByteArray.xml:152 doc/classes/PackedColorArray.xml:107
-#: doc/classes/PackedFloat32Array.xml:108
-#: doc/classes/PackedFloat64Array.xml:108 doc/classes/PackedStringArray.xml:107
-#: doc/classes/PackedVector2Array.xml:107
-#: doc/classes/PackedVector3Array.xml:107
+#: doc/classes/PackedByteArray.xml:161 doc/classes/PackedColorArray.xml:116
+#: doc/classes/PackedFloat32Array.xml:117
+#: doc/classes/PackedFloat64Array.xml:117 doc/classes/PackedStringArray.xml:116
+#: doc/classes/PackedVector2Array.xml:116
+#: doc/classes/PackedVector3Array.xml:116
msgid "Returns the size of the array."
msgstr ""
-#: doc/classes/PackedByteArray.xml:163
+#: doc/classes/PackedByteArray.xml:168 doc/classes/PackedColorArray.xml:123
+#: doc/classes/PackedFloat32Array.xml:124
+#: doc/classes/PackedFloat64Array.xml:124 doc/classes/PackedInt32Array.xml:124
+#: doc/classes/PackedInt64Array.xml:124 doc/classes/PackedStringArray.xml:123
+#: doc/classes/PackedVector2Array.xml:123
+#: doc/classes/PackedVector3Array.xml:123
+msgid "Sorts the elements of the array in ascending order."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:179
msgid ""
"Returns the slice of the [PackedByteArray] between indices (inclusive) as a "
"new [PackedByteArray]. Any negative index is considered to be from the end "
@@ -34197,12 +34846,12 @@ msgstr ""
msgid "Appends a [PackedColorArray] at the end of this array."
msgstr ""
-#: doc/classes/PackedColorArray.xml:71 doc/classes/PackedInt32Array.xml:72
-#: doc/classes/PackedInt64Array.xml:72
+#: doc/classes/PackedColorArray.xml:80 doc/classes/PackedInt32Array.xml:81
+#: doc/classes/PackedInt64Array.xml:81
msgid "Appends a value to the array."
msgstr ""
-#: doc/classes/PackedColorArray.xml:100
+#: doc/classes/PackedColorArray.xml:109
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -34232,8 +34881,8 @@ msgstr ""
msgid "Appends a [PackedFloat32Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedFloat32Array.xml:101
-#: doc/classes/PackedFloat64Array.xml:101
+#: doc/classes/PackedFloat32Array.xml:110
+#: doc/classes/PackedFloat64Array.xml:110
msgid "Changes the float at the given index."
msgstr ""
@@ -34286,17 +34935,17 @@ msgstr ""
msgid "Appends a [PackedInt32Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:56 doc/classes/PackedInt64Array.xml:56
+#: doc/classes/PackedInt32Array.xml:65 doc/classes/PackedInt64Array.xml:65
msgid ""
"Inserts a new integer at a given position in the array. The position must be "
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:101 doc/classes/PackedInt64Array.xml:101
+#: doc/classes/PackedInt32Array.xml:110 doc/classes/PackedInt64Array.xml:110
msgid "Changes the integer at the given index."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:108 doc/classes/PackedInt64Array.xml:108
+#: doc/classes/PackedInt32Array.xml:117 doc/classes/PackedInt64Array.xml:117
msgid "Returns the array size."
msgstr ""
@@ -34337,6 +34986,14 @@ msgid ""
"Can be used to save a node to a file. When saving, the node as well as all "
"the node it owns get saved (see [code]owner[/code] property on [Node]).\n"
"[b]Note:[/b] The node doesn't need to own itself.\n"
+"[b]Example of loading a saved scene:[/b]\n"
+"[codeblock]\n"
+"# Use `load()` instead of `preload()` if the path isn't known at compile-"
+"time.\n"
+"var scene = preload(\"res://scene.tscn\").instance()\n"
+"# Add the node as a child of the node the script is attached to.\n"
+"add_child(scene)\n"
+"[/codeblock]\n"
"[b]Example of saving a node with different owners:[/b] The following example "
"creates 3 objects: [code]Node2D[/code] ([code]node[/code]), "
"[code]RigidBody2D[/code] ([code]rigid[/code]) and [code]CollisionObject2D[/"
@@ -34368,29 +35025,29 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/PackedScene.xml:40
+#: doc/classes/PackedScene.xml:47
msgid "Returns [code]true[/code] if the scene file has nodes."
msgstr ""
-#: doc/classes/PackedScene.xml:47
+#: doc/classes/PackedScene.xml:54
msgid ""
"Returns the [code]SceneState[/code] representing the scene file contents."
msgstr ""
-#: doc/classes/PackedScene.xml:56
+#: doc/classes/PackedScene.xml:63
msgid ""
"Instantiates the scene's node hierarchy. Triggers child scene "
"instantiation(s). Triggers a [constant Node.NOTIFICATION_INSTANCED] "
"notification on the root node."
msgstr ""
-#: doc/classes/PackedScene.xml:65
+#: doc/classes/PackedScene.xml:72
msgid ""
"Pack will ignore any sub-nodes not owned by given node. See [member Node."
"owner]."
msgstr ""
-#: doc/classes/PackedScene.xml:71
+#: doc/classes/PackedScene.xml:78
msgid ""
"A dictionary representation of the scene contents.\n"
"Available keys include \"rnames\" and \"variants\" for resources, "
@@ -34399,18 +35056,18 @@ msgid ""
"connections, and \"version\" for the format style of the PackedScene."
msgstr ""
-#: doc/classes/PackedScene.xml:77
+#: doc/classes/PackedScene.xml:84
msgid "If passed to [method instance], blocks edits to the scene state."
msgstr ""
-#: doc/classes/PackedScene.xml:80
+#: doc/classes/PackedScene.xml:87
msgid ""
"If passed to [method instance], provides local scene resources to the local "
"scene.\n"
"[b]Note:[/b] Only available in editor builds."
msgstr ""
-#: doc/classes/PackedScene.xml:84
+#: doc/classes/PackedScene.xml:91
msgid ""
"If passed to [method instance], provides local scene resources to the local "
"scene. Only the main scene should receive the main edit state.\n"
@@ -34438,11 +35095,11 @@ msgstr ""
msgid "Appends a [PackedStringArray] at the end of this array."
msgstr ""
-#: doc/classes/PackedStringArray.xml:71
+#: doc/classes/PackedStringArray.xml:80
msgid "Appends a string element at end of the array."
msgstr ""
-#: doc/classes/PackedStringArray.xml:100
+#: doc/classes/PackedStringArray.xml:109
msgid "Changes the [String] at the given index."
msgstr ""
@@ -34467,11 +35124,11 @@ msgstr ""
msgid "Appends a [PackedVector2Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedVector2Array.xml:71
+#: doc/classes/PackedVector2Array.xml:80
msgid "Inserts a [Vector2] at the end."
msgstr ""
-#: doc/classes/PackedVector2Array.xml:100
+#: doc/classes/PackedVector2Array.xml:109
msgid "Changes the [Vector2] at the given index."
msgstr ""
@@ -34496,11 +35153,11 @@ msgstr ""
msgid "Appends a [PackedVector3Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedVector3Array.xml:71
+#: doc/classes/PackedVector3Array.xml:80
msgid "Inserts a [Vector3] at the end."
msgstr ""
-#: doc/classes/PackedVector3Array.xml:100
+#: doc/classes/PackedVector3Array.xml:109
msgid "Changes the [Vector3] at the given index."
msgstr ""
@@ -35391,13 +36048,55 @@ msgid ""
"as the values displayed in the [b]Monitor[/b] tab in the editor's "
"[b]Debugger[/b] panel. By using the [method get_monitor] method of this "
"class, you can access this data from your code.\n"
+"You can add custom monitors using the [method add_custom_monitor] method. "
+"Custom monitors are available in [b]Monitor[/b] tab in the editor's "
+"[b]Debugger[/b] panel together with built-in monitors.\n"
"[b]Note:[/b] A few of these monitors are only available in debug mode and "
"will always return 0 when used in a release build.\n"
"[b]Note:[/b] Many of these monitors are not updated in real-time, so there "
-"may be a short delay between changes."
+"may be a short delay between changes.\n"
+"[b]Note:[/b] Custom monitors do not support negative values. Negative values "
+"are clamped to 0."
+msgstr ""
+
+#: doc/classes/Performance.xml:26
+msgid ""
+"Adds a custom monitor with name same as id. You can specify the category of "
+"monitor using '/' in id. If there are more than one '/' then default "
+"category is used. Default category is \"Custom\".\n"
+"[codeblock]\n"
+"Performance.add_custom_monitor(\"MyCategory/MyMonitor\", some_callable) # "
+"Adds monitor with name \"MyName\" to category \"MyCategory\"\n"
+"Performance.add_custom_monitor(\"MyMonitor\", some_callable) # Adds monitor "
+"with name \"MyName\" to category \"Custom\"\n"
+"# Note: \"MyCategory/MyMonitor\" and \"MyMonitor\" have same name but "
+"different ids so above code is valid\n"
+"Performance.add_custom_monitor(\"Custom/MyMonitor\", some_callable) # Adds "
+"monitor with name \"MyName\" to category \"Custom\"\n"
+"# Note: \"MyMonitor\" and \"Custom/MyMonitor\" have same name and same "
+"category but different ids so above code is valid\n"
+"Performance.add_custom_monitor(\"MyCategoryOne/MyCategoryTwo/MyMonitor\", "
+"some_callable) # Adds monitor with name \"MyCategoryOne/MyCategoryTwo/"
+"MyMonitor\" to category \"Custom\"\n"
+"[/codeblock]\n"
+"The debugger calls the callable to get the value of custom monitor. The "
+"callable must return a number.\n"
+"Callables are called with arguments supplied in argument array.\n"
+"[b]Note:[/b] It throws an error if given id is already present."
+msgstr ""
+
+#: doc/classes/Performance.xml:46
+msgid ""
+"Returns the value of custom monitor with given id. The callable is called to "
+"get the value of custom monitor.\n"
+"[b]Note:[/b] It throws an error if the given id is absent."
+msgstr ""
+
+#: doc/classes/Performance.xml:54
+msgid "Returns the names of active custom monitors in an array."
msgstr ""
-#: doc/classes/Performance.xml:20
+#: doc/classes/Performance.xml:63
msgid ""
"Returns the value of one of the available monitors. You should provide one "
"of the [enum Monitor] constants as the argument, like this:\n"
@@ -35407,123 +36106,139 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Performance.xml:29
+#: doc/classes/Performance.xml:73
+msgid "Returns the last tick in which custom monitor was added/removed."
+msgstr ""
+
+#: doc/classes/Performance.xml:82
+msgid ""
+"Returns true if custom monitor with the given id is present otherwise "
+"returns false."
+msgstr ""
+
+#: doc/classes/Performance.xml:91
+msgid ""
+"Removes the custom monitor with given id.\n"
+"[b]Note:[/b] It throws an error if the given id is already absent."
+msgstr ""
+
+#: doc/classes/Performance.xml:98
msgid "Number of frames per second."
msgstr ""
-#: doc/classes/Performance.xml:32
+#: doc/classes/Performance.xml:101
msgid "Time it took to complete one frame, in seconds."
msgstr ""
-#: doc/classes/Performance.xml:35
+#: doc/classes/Performance.xml:104
msgid "Time it took to complete one physics frame, in seconds."
msgstr ""
-#: doc/classes/Performance.xml:38
+#: doc/classes/Performance.xml:107
msgid ""
"Static memory currently used, in bytes. Not available in release builds."
msgstr ""
-#: doc/classes/Performance.xml:41
+#: doc/classes/Performance.xml:110
msgid "Available static memory. Not available in release builds."
msgstr ""
-#: doc/classes/Performance.xml:44
+#: doc/classes/Performance.xml:113
msgid ""
"Largest amount of memory the message queue buffer has used, in bytes. The "
"message queue is used for deferred functions calls and notifications."
msgstr ""
-#: doc/classes/Performance.xml:47
+#: doc/classes/Performance.xml:116
msgid "Number of objects currently instanced (including nodes)."
msgstr ""
-#: doc/classes/Performance.xml:50
+#: doc/classes/Performance.xml:119
msgid "Number of resources currently used."
msgstr ""
-#: doc/classes/Performance.xml:53
+#: doc/classes/Performance.xml:122
msgid ""
"Number of nodes currently instanced in the scene tree. This also includes "
"the root node."
msgstr ""
-#: doc/classes/Performance.xml:56
+#: doc/classes/Performance.xml:125
msgid ""
"Number of orphan nodes, i.e. nodes which are not parented to a node of the "
"scene tree."
msgstr ""
-#: doc/classes/Performance.xml:59
+#: doc/classes/Performance.xml:128
msgid "3D objects drawn per frame."
msgstr ""
-#: doc/classes/Performance.xml:62
+#: doc/classes/Performance.xml:131
msgid "Vertices drawn per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:65
+#: doc/classes/Performance.xml:134
msgid "Material changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:68
+#: doc/classes/Performance.xml:137
msgid "Shader changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:71
+#: doc/classes/Performance.xml:140
msgid "Render surface changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:74
+#: doc/classes/Performance.xml:143
msgid "Draw calls per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:77 doc/classes/RenderingServer.xml:3805
+#: doc/classes/Performance.xml:146 doc/classes/RenderingServer.xml:3816
msgid ""
"The amount of video memory used, i.e. texture and vertex memory combined."
msgstr ""
-#: doc/classes/Performance.xml:80 doc/classes/RenderingServer.xml:3808
+#: doc/classes/Performance.xml:149 doc/classes/RenderingServer.xml:3819
msgid "The amount of texture memory used."
msgstr ""
-#: doc/classes/Performance.xml:83 doc/classes/RenderingServer.xml:3811
+#: doc/classes/Performance.xml:152 doc/classes/RenderingServer.xml:3822
msgid "The amount of vertex memory used."
msgstr ""
-#: doc/classes/Performance.xml:86 doc/classes/RenderingServer.xml:3802
+#: doc/classes/Performance.xml:155 doc/classes/RenderingServer.xml:3813
msgid "Unimplemented in the GLES2 rendering backend, always returns 0."
msgstr ""
-#: doc/classes/Performance.xml:89
+#: doc/classes/Performance.xml:158
msgid "Number of active [RigidBody2D] nodes in the game."
msgstr ""
-#: doc/classes/Performance.xml:92
+#: doc/classes/Performance.xml:161
msgid "Number of collision pairs in the 2D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:95
+#: doc/classes/Performance.xml:164
msgid "Number of islands in the 2D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:98
+#: doc/classes/Performance.xml:167
msgid "Number of active [RigidBody3D] and [VehicleBody3D] nodes in the game."
msgstr ""
-#: doc/classes/Performance.xml:101
+#: doc/classes/Performance.xml:170
msgid "Number of collision pairs in the 3D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:104
+#: doc/classes/Performance.xml:173
msgid "Number of islands in the 3D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:107
+#: doc/classes/Performance.xml:176
msgid "Output latency of the [AudioServer]."
msgstr ""
-#: doc/classes/Performance.xml:110
+#: doc/classes/Performance.xml:179
msgid "Represents the size of the [enum Monitor] enum."
msgstr ""
@@ -35547,27 +36262,27 @@ msgstr ""
msgid "Damps the body's rotation if greater than [code]0[/code]."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:70 doc/classes/RigidBody3D.xml:132
+#: doc/classes/PhysicalBone3D.xml:70 doc/classes/RigidBody3D.xml:139
msgid "Lock the body's rotation in the X axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:73 doc/classes/RigidBody3D.xml:135
+#: doc/classes/PhysicalBone3D.xml:73 doc/classes/RigidBody3D.xml:142
msgid "Lock the body's rotation in the Y axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:76 doc/classes/RigidBody3D.xml:138
+#: doc/classes/PhysicalBone3D.xml:76 doc/classes/RigidBody3D.xml:145
msgid "Lock the body's rotation in the Z axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:79 doc/classes/RigidBody3D.xml:141
+#: doc/classes/PhysicalBone3D.xml:79 doc/classes/RigidBody3D.xml:148
msgid "Lock the body's movement in the X axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:82 doc/classes/RigidBody3D.xml:144
+#: doc/classes/PhysicalBone3D.xml:82 doc/classes/RigidBody3D.xml:151
msgid "Lock the body's movement in the Y axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:85 doc/classes/RigidBody3D.xml:147
+#: doc/classes/PhysicalBone3D.xml:85 doc/classes/RigidBody3D.xml:154
msgid "Lock the body's movement in the Z axis."
msgstr ""
@@ -35622,12 +36337,12 @@ msgstr ""
msgid "Damps the body's movement if greater than [code]0[/code]."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:118 doc/classes/RigidBody2D.xml:158
-#: doc/classes/RigidBody3D.xml:175
+#: doc/classes/PhysicalBone3D.xml:118 doc/classes/RigidBody2D.xml:159
+#: doc/classes/RigidBody3D.xml:183
msgid "The body's mass."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:121 doc/classes/RigidBody3D.xml:188
+#: doc/classes/PhysicalBone3D.xml:121 doc/classes/RigidBody3D.xml:196
msgid ""
"The body's weight based on its mass and the global 3D gravity. Global values "
"are set in [b]Project > Project Settings > Physics > 3d[/b]."
@@ -35934,7 +36649,7 @@ msgid "The inverse of the mass of the body."
msgstr ""
#: doc/classes/PhysicsDirectBodyState2D.xml:195
-#: doc/classes/PhysicsDirectBodyState3D.xml:198 doc/classes/RigidBody2D.xml:155
+#: doc/classes/PhysicsDirectBodyState3D.xml:198 doc/classes/RigidBody2D.xml:156
msgid "The body's linear velocity."
msgstr ""
@@ -36487,7 +37202,7 @@ msgid ""
msgstr ""
#: doc/classes/PhysicsServer2D.xml:620 doc/classes/PhysicsServer3D.xml:637
-#: doc/classes/RigidBody3D.xml:120
+#: doc/classes/RigidBody3D.xml:127
msgid ""
"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."
@@ -37552,47 +38267,64 @@ msgid ""
"collision queries. See also [PhysicsShapeQueryResult2D]."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:18
-msgid ""
-"Sets the [Shape2D] that will be used for collision/intersection queries."
-msgstr ""
-
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:24
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:15
msgid "If [code]true[/code], the query will take [Area2D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:18
msgid ""
"If [code]true[/code], the query will take [PhysicsBody2D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:30
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:30
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:21
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:21
msgid "The physics layer(s) the query will take into account (as a bitmask)."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:33
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:33
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:24
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:24
msgid ""
"The list of objects or object [RID]s that will be excluded from collisions."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:36
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:36 doc/classes/Shape3D.xml:16
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:27 doc/classes/Shape3D.xml:16
msgid "The collision margin for the shape."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:39
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:30
msgid "The motion of the shape being queried for."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:42
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:39
-msgid "The queried shape's [RID]. See also [method set_shape]."
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:33
+msgid ""
+"The [Shape2D] that will be used for collision/intersection queries. This "
+"stores the actual reference which avoids the shape to be released while "
+"being used for queries, so always prefer using this over [member shape_rid]."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:36
+msgid ""
+"The queried shape's [RID] that will be used for collision/intersection "
+"queries. Use this over [member shape] if you want to optimize for "
+"performance using the Servers API:\n"
+"[codeblock]\n"
+"var shape_rid = PhysicsServer2D.circle_shape_create()\n"
+"var radius = 64\n"
+"PhysicsServer2D.shape_set_data(shape_rid, radius)\n"
+"\n"
+"var params = PhysicsShapeQueryParameters2D.new()\n"
+"params.shape_rid = shape_rid\n"
+"\n"
+"# Execute physics queries here...\n"
+"\n"
+"# Release the shape when done with physics queries.\n"
+"PhysicsServer2D.free_rid(shape_rid)\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:45
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:42
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:52
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:49
msgid "The queried shape's transform matrix."
msgstr ""
@@ -37606,18 +38338,40 @@ msgid ""
"collision queries. See also [PhysicsShapeQueryResult3D]."
msgstr ""
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:15
+msgid "If [code]true[/code], the query will take [Area3D]s into account."
+msgstr ""
+
#: doc/classes/PhysicsShapeQueryParameters3D.xml:18
msgid ""
-"Sets the [Shape3D] that will be used for collision/intersection queries."
+"If [code]true[/code], the query will take [PhysicsBody3D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:24
-msgid "If [code]true[/code], the query will take [Area3D]s into account."
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:30
+msgid ""
+"The [Shape3D] that will be used for collision/intersection queries. This "
+"stores the actual reference which avoids the shape to be released while "
+"being used for queries, so always prefer using this over [member shape_rid]."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:33
msgid ""
-"If [code]true[/code], the query will take [PhysicsBody3D]s into account."
+"The queried shape's [RID] that will be used for collision/intersection "
+"queries. Use this over [member shape] if you want to optimize for "
+"performance using the Servers API:\n"
+"[codeblock]\n"
+"var shape_rid = PhysicsServer3D.shape_create(PhysicsServer3D.SHAPE_SPHERE)\n"
+"var radius = 2.0\n"
+"PhysicsServer3D.shape_set_data(shape_rid, radius)\n"
+"\n"
+"var params = PhysicsShapeQueryParameters3D.new()\n"
+"params.shape_rid = shape_rid\n"
+"\n"
+"# Execute physics queries here...\n"
+"\n"
+"# Release the shape when done with physics queries.\n"
+"PhysicsServer3D.free_rid(shape_rid)\n"
+"[/codeblock]"
msgstr ""
#: doc/classes/PhysicsShapeQueryResult2D.xml:4
@@ -37758,92 +38512,94 @@ msgid ""
"code]."
msgstr ""
-#: doc/classes/Plane.xml:72
-msgid "Returns a point on the plane."
-msgstr ""
-
-#: doc/classes/Plane.xml:83
+#: doc/classes/Plane.xml:76
msgid ""
-"Returns [code]true[/code] if [code]point[/code] is inside the plane (by a "
-"very minimum [code]epsilon[/code] threshold)."
+"Returns [code]true[/code] if [code]point[/code] is inside the plane. "
+"Comparison uses a custom minimum [code]epsilon[/code] threshold."
msgstr ""
-#: doc/classes/Plane.xml:94
+#: doc/classes/Plane.xml:87
msgid ""
"Returns the intersection point of the three planes [code]b[/code], [code]c[/"
"code] and this plane. If no intersection is found, [code]null[/code] is "
"returned."
msgstr ""
-#: doc/classes/Plane.xml:105
+#: doc/classes/Plane.xml:98
msgid ""
"Returns the intersection point of a ray consisting of the position "
"[code]from[/code] and the direction normal [code]dir[/code] with this plane. "
"If no intersection is found, [code]null[/code] is returned."
msgstr ""
-#: doc/classes/Plane.xml:116
+#: doc/classes/Plane.xml:109
msgid ""
"Returns the intersection point of a segment from position [code]begin[/code] "
"to position [code]end[/code] with this plane. If no intersection is found, "
"[code]null[/code] is returned."
msgstr ""
-#: doc/classes/Plane.xml:125
+#: doc/classes/Plane.xml:118
msgid ""
"Returns [code]true[/code] if this plane and [code]plane[/code] are "
"approximately equal, by running [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/Plane.xml:134
+#: doc/classes/Plane.xml:127
msgid ""
"Returns [code]true[/code] if [code]point[/code] is located above the plane."
msgstr ""
-#: doc/classes/Plane.xml:141
+#: doc/classes/Plane.xml:134
msgid "Returns a copy of the plane, normalized."
msgstr ""
-#: doc/classes/Plane.xml:150
+#: doc/classes/Plane.xml:143
msgid ""
-"Returns the orthogonal projection of point [code]p[/code] into a point in "
-"the plane."
+"Returns the orthogonal projection of [code]point[/code] into a point in the "
+"plane."
msgstr ""
-#: doc/classes/Plane.xml:156
+#: doc/classes/Plane.xml:149
msgid ""
-"Distance from the origin to the plane, in the direction of [member normal]."
+"The distance from the origin to the plane, in the direction of [member "
+"normal]. This value is typically non-negative.\n"
+"In the scalar equation of the plane [code]ax + by + cz = d[/code], this is "
+"[code]d[/code], while the [code](a, b, c)[/code] coordinates are represented "
+"by the [member normal] property."
msgstr ""
-#: doc/classes/Plane.xml:159
+#: doc/classes/Plane.xml:153
msgid ""
-"The normal of the plane. \"Over\" or \"Above\" the plane is considered the "
-"side of the plane towards where the normal is pointing."
+"The normal of the plane, which must be normalized.\n"
+"In the scalar equation of the plane [code]ax + by + cz = d[/code], this is "
+"the vector [code](a, b, c)[/code], where [code]d[/code] is the [member d] "
+"property."
msgstr ""
-#: doc/classes/Plane.xml:162
-msgid "The [member normal]'s X component."
+#: doc/classes/Plane.xml:157
+msgid "The X component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:165
-msgid "The [member normal]'s Y component."
+#: doc/classes/Plane.xml:160
+msgid "The Y component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:168
-msgid "The [member normal]'s Z component."
+#: doc/classes/Plane.xml:163
+msgid "The Z component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:173
-msgid "A plane that extends in the Y and Z axes."
+#: doc/classes/Plane.xml:168
+msgid "A plane that extends in the Y and Z axes (normal vector points +X)."
msgstr ""
-#: doc/classes/Plane.xml:176
-msgid "A plane that extends in the X and Z axes."
+#: doc/classes/Plane.xml:171
+msgid "A plane that extends in the X and Z axes (normal vector points +Y)."
msgstr ""
-#: doc/classes/Plane.xml:179
-msgid "A plane that extends in the X and Y axes."
+#: doc/classes/Plane.xml:174
+msgid "A plane that extends in the X and Y axes (normal vector points +Z)."
msgstr ""
#: doc/classes/PlaneMesh.xml:4
@@ -38554,18 +39310,25 @@ msgstr ""
#: doc/classes/PrimitiveMesh.xml:16
msgid ""
-"Returns mesh arrays used to constitute surface of [Mesh]. Mesh arrays can be "
-"used with [ArrayMesh] to create new surfaces."
+"Returns mesh arrays used to constitute surface of [Mesh]. The result can be "
+"passed to [method ArrayMesh.add_surface_from_arrays] to create a new "
+"surface. For example:\n"
+"[codeblock]\n"
+"var c := CylinderMesh.new()\n"
+"var arr_mesh := ArrayMesh.new()\n"
+"arr_mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLES, c."
+"get_mesh_arrays())\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:22
+#: doc/classes/PrimitiveMesh.xml:27
msgid ""
"Overrides the [AABB] with one defined by user for use with frustum culling. "
"Especially useful to avoid unnexpected culling when using a shader to "
"offset vertices."
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:25
+#: doc/classes/PrimitiveMesh.xml:30
msgid ""
"If set, the order of the vertices in each triangle are reversed resulting in "
"the backside of the mesh being drawn.\n"
@@ -38573,7 +39336,7 @@ msgid ""
"[member BaseMaterial3D.cull_mode]."
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:29
+#: doc/classes/PrimitiveMesh.xml:34
msgid "The current [Material] of the primitive mesh."
msgstr ""
@@ -39004,11 +39767,17 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:260
msgid ""
+"Safer override for [member audio/output_latency] in the Web platform, to "
+"avoid audio issues especially on mobile devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:263
+msgid ""
"Setting to hardcode audio delay when playing video. Best to leave this "
"untouched unless you know what you are doing."
msgstr ""
-#: doc/classes/ProjectSettings.xml:263
+#: doc/classes/ProjectSettings.xml:266
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -39018,7 +39787,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:269
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -39028,27 +39797,27 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:269
+#: doc/classes/ProjectSettings.xml:272
msgid ""
"The default compression level for Zstandard. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
"speed. Decompression speed is mostly unaffected by the compression level."
msgstr ""
-#: doc/classes/ProjectSettings.xml:272
+#: doc/classes/ProjectSettings.xml:275
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:278
msgid ""
"Largest size limit (in power of 2) allowed when compressing using long-"
"distance matching with Zstandard. Higher values can result in better "
"compression, but will require more memory when compressing and decompressing."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:281
msgid ""
"If [code]true[/code], displays getters and setters in autocompletion results "
"in the script editor. This setting is meant to be used when porting old "
@@ -39056,74 +39825,55 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:281
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:284
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:287
+#: doc/classes/ProjectSettings.xml:294
msgid ""
"If [code]true[/code], enables specific GDScript warnings (see [code]debug/"
"gdscript/warnings/*[/code] settings). If [code]false[/code], disables all "
"GDScript warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
-msgid ""
-"If [code]true[/code], enables warnings when a function is declared with the "
-"same name as a constant."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:296
-msgid ""
-"If [code]true[/code], enables warnings when a function is declared with the "
-"same name as a variable. This will turn into an error in a future version "
-"when first-class functions become supported in GDScript."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:299
-msgid ""
-"If [code]true[/code], enables warnings when a function assigned to a "
-"variable may yield and return a function state instead of a value."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:302
+#: doc/classes/ProjectSettings.xml:300
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:303
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when dividing an integer by another "
"integer (the decimal part will be discarded)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when passing a floating-point value "
"to a function that expects an integer (it will be converted and lose "
"precision)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:314
+#: doc/classes/ProjectSettings.xml:312
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
@@ -39144,102 +39894,85 @@ msgid ""
"member variable)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:323
+#: doc/classes/ProjectSettings.xml:325
msgid ""
"If [code]true[/code], enables warnings when calling an expression that has "
"no effect on the surrounding code, such as writing [code]2 + 2[/code] as a "
"statement."
msgstr ""
-#: doc/classes/ProjectSettings.xml:326
+#: doc/classes/ProjectSettings.xml:328
msgid ""
"If [code]true[/code], enables warnings when calling a ternary expression "
"that has no effect on the surrounding code, such as writing [code]42 if "
"active else 0[/code] as a statement."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:331
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:334
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:335
+#: doc/classes/ProjectSettings.xml:337
msgid ""
"If [code]true[/code], enables warnings when assigning a variable using an "
"assignment operator like [code]+=[/code] if the variable wasn't previously "
"assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:338
+#: doc/classes/ProjectSettings.xml:340
msgid ""
"If [code]true[/code], enables warnings when unreachable code is detected "
"(such as after a [code]return[/code] statement that will always be executed)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:345
msgid ""
"If [code]true[/code], enables warnings when using an expression whose type "
"may not be compatible with the function parameter expected."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:348
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:347
+#: doc/classes/ProjectSettings.xml:351
msgid ""
"If [code]true[/code], enables warnings when calling a method whose presence "
"is not guaranteed at compile-time in the class."
msgstr ""
-#: doc/classes/ProjectSettings.xml:350
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], enables warnings when accessing a property whose "
"presence is not guaranteed at compile-time in the class."
msgstr ""
-#: doc/classes/ProjectSettings.xml:353
-msgid ""
-"If [code]true[/code], enables warnings when a function parameter is unused."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:356
-msgid ""
-"If [code]true[/code], enables warnings when a member variable is unused."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:363
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:362
+#: doc/classes/ProjectSettings.xml:366
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:365
-msgid ""
-"If [code]true[/code], enables warnings when a variable is declared with the "
-"same name as a function. This will turn into an error in a future version "
-"when first-class functions become supported in GDScript."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:368
+#: doc/classes/ProjectSettings.xml:369
msgid ""
"If [code]true[/code], enables warnings when assigning the result of a "
"function that returns [code]void[/code] to a variable."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:374
+#: doc/classes/ProjectSettings.xml:375
msgid ""
"Maximum number of frames per second allowed. The actual number of frames per "
"second may still be below this value if the game is lagging.\n"
@@ -39250,143 +39983,143 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:379
+#: doc/classes/ProjectSettings.xml:380
msgid "Maximum call stack allowed for debugging GDScript."
msgstr ""
-#: doc/classes/ProjectSettings.xml:382
+#: doc/classes/ProjectSettings.xml:383
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:385
+#: doc/classes/ProjectSettings.xml:386
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:388
+#: doc/classes/ProjectSettings.xml:389
msgid ""
"Print more information to standard output when running. It displays "
"information such as memory leaks, which scenes and resources are being "
"loaded, etc."
msgstr ""
-#: doc/classes/ProjectSettings.xml:391
+#: doc/classes/ProjectSettings.xml:392
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:394
+#: doc/classes/ProjectSettings.xml:395
msgid ""
"Color of the contact points between collision shapes, visible when \"Visible "
"Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:397
+#: doc/classes/ProjectSettings.xml:398
msgid ""
"Maximum number of contact points between collision shapes to display when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:400
+#: doc/classes/ProjectSettings.xml:401
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
msgid "Hotspot for the custom mouse cursor image."
msgstr ""
-#: doc/classes/ProjectSettings.xml:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
msgid ""
"If [code]true[/code], allows HiDPI display on Windows and macOS. This "
"setting has no effect on desktop Linux, as DPI-awareness fallbacks are not "
"supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"If [code]true[/code], keeps the screen on (even in case of inactivity), so "
"the screensaver does not take over. Works on desktop and mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
msgid "Default orientation on mobile devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"If [code]true[/code], the home indicator is hidden automatically. This only "
"affects iOS devices without a physical home button."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid "Force the window to be always on top."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid "Force the window to be borderless."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Sets the window to full screen when it starts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid ""
"Sets the game's main viewport height. On desktop platforms, this is the "
"default window size. Stretch mode settings also use this as a reference when "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Allows the window to be resizable by default."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"Sets the game's main viewport width. On desktop platforms, this is the "
"default window size. Stretch mode settings also use this as a reference when "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:454
+#: doc/classes/ProjectSettings.xml:455
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:457
+#: doc/classes/ProjectSettings.xml:458
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -39395,7 +40128,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:460
+#: doc/classes/ProjectSettings.xml:461
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -39406,13 +40139,13 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:464
+#: doc/classes/ProjectSettings.xml:465
msgid ""
"Search path for project-specific script templates. Script templates will be "
"search both in the editor-specific path and in this project-specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:467
+#: doc/classes/ProjectSettings.xml:468
msgid ""
"Text-based file extensions to include in the script editor's \"Find in Files"
"\" feature. You can add e.g. [code]tscn[/code] if you wish to also parse "
@@ -39420,49 +40153,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:470
+#: doc/classes/ProjectSettings.xml:471
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:473
+#: doc/classes/ProjectSettings.xml:474
msgid ""
-"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
+"If [code]true[/code], swaps Cancel and OK buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:478
+#: doc/classes/ProjectSettings.xml:479
msgid ""
"Path to a custom [Theme] resource file to use for the project ([code]theme[/"
"code] or generic [code]tres[/code]/[code]res[/code] extension)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:484
+#: doc/classes/ProjectSettings.xml:485
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:487
+#: doc/classes/ProjectSettings.xml:488
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:490
+#: doc/classes/ProjectSettings.xml:491
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:493
+#: doc/classes/ProjectSettings.xml:494
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:496
+#: doc/classes/ProjectSettings.xml:497
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -39471,7 +40204,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"Default [InputEventAction] to discard a modal or pending input.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39479,7 +40212,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:504
+#: doc/classes/ProjectSettings.xml:505
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39487,7 +40220,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:508
+#: doc/classes/ProjectSettings.xml:509
msgid ""
"Default [InputEventAction] to go to the end position of a [Control] (e.g. "
"last item in an [ItemList] or a [Tree]), matching the behavior of [constant "
@@ -39497,7 +40230,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:512
+#: doc/classes/ProjectSettings.xml:513
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -39506,7 +40239,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:516
+#: doc/classes/ProjectSettings.xml:517
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -39515,7 +40248,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:520
+#: doc/classes/ProjectSettings.xml:521
msgid ""
"Default [InputEventAction] to go to the start position of a [Control] (e.g. "
"first item in an [ItemList] or a [Tree]), matching the behavior of [constant "
@@ -39525,7 +40258,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39533,7 +40266,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:528
+#: doc/classes/ProjectSettings.xml:529
msgid ""
"Default [InputEventAction] to go down a page in a [Control] (e.g. in an "
"[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEDOWN] on "
@@ -39543,7 +40276,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Default [InputEventAction] to go up a page in a [Control] (e.g. in an "
"[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEUP] on "
@@ -39553,7 +40286,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:536
+#: doc/classes/ProjectSettings.xml:537
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39561,7 +40294,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:540
+#: doc/classes/ProjectSettings.xml:541
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -39570,7 +40303,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39578,371 +40311,371 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:548
+#: doc/classes/ProjectSettings.xml:549
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:554
+#: doc/classes/ProjectSettings.xml:555
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:557
+#: doc/classes/ProjectSettings.xml:558
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:560
+#: doc/classes/ProjectSettings.xml:561
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:566
+#: doc/classes/ProjectSettings.xml:567
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:569
+#: doc/classes/ProjectSettings.xml:570
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:572
+#: doc/classes/ProjectSettings.xml:573
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:578
+#: doc/classes/ProjectSettings.xml:579
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:581
+#: doc/classes/ProjectSettings.xml:582
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:584
+#: doc/classes/ProjectSettings.xml:585
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:590
+#: doc/classes/ProjectSettings.xml:591
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:593
+#: doc/classes/ProjectSettings.xml:594
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:596
+#: doc/classes/ProjectSettings.xml:597
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:602
+#: doc/classes/ProjectSettings.xml:603
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid ""
"The locale to fall back to if a translation isn't available in a given "
"language. If left empty, [code]en[/code] (English) will be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "If [code]true[/code], logs all output to files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:806
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:809
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:812
msgid ""
"Godot uses a message queue to defer some function calls. If you run out of "
"space on it (you will see an error), you can increase the size here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:815
msgid ""
"This is used by servers when used in multi-threading mode (servers and "
"visual). RIDs are preallocated to avoid stalling the server requesting them "
@@ -39950,56 +40683,56 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:829
+#: doc/classes/ProjectSettings.xml:832
msgid ""
"Maximum amount of characters allowed to send as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:832
+#: doc/classes/ProjectSettings.xml:835
msgid ""
"Maximum number of errors allowed to be sent from the debugger. Over this "
"value, content is dropped. This helps not to stall the debugger connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:835
+#: doc/classes/ProjectSettings.xml:838
msgid ""
"Maximum amount of messages in the debugger queue. Over this value, content "
"is dropped. This helps to limit the debugger memory usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:838
+#: doc/classes/ProjectSettings.xml:841
msgid ""
"Maximum number of warnings allowed to be sent from the debugger. Over this "
"value, content is dropped. This helps not to stall the debugger connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:841
+#: doc/classes/ProjectSettings.xml:844
msgid ""
"Default size of packet peer stream for deserializing Godot data. Over this "
"size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:844
+#: doc/classes/ProjectSettings.xml:847
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:847
+#: doc/classes/ProjectSettings.xml:850
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:850
+#: doc/classes/ProjectSettings.xml:853
msgid ""
"Amount of read ahead used by remote filesystem. Higher values decrease the "
"effects of latency at the cost of higher bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:853
+#: doc/classes/ProjectSettings.xml:856
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:856
+#: doc/classes/ProjectSettings.xml:859
msgid ""
"The CA certificates bundle to use for SSL connections. If this is set to a "
"non-empty value, this will [i]override[/i] Godot's default [url=https://"
@@ -40009,31 +40742,31 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:863
msgid ""
"When creating node names automatically, set the type of casing in this "
"project. This is mostly an editor setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:866
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:869
msgid "Size of the hash table used for the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:872
msgid "Cell size used for the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:875
msgid "The default angular damp in 2D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:878
msgid ""
"The default gravity strength in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -40045,7 +40778,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:883
+#: doc/classes/ProjectSettings.xml:886
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -40057,38 +40790,38 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:891
+#: doc/classes/ProjectSettings.xml:894
msgid "The default linear damp in 2D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:894
+#: doc/classes/ProjectSettings.xml:897
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:897
+#: doc/classes/ProjectSettings.xml:900
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics2D\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:901
+#: doc/classes/ProjectSettings.xml:904
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant PhysicsServer2D."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:904
+#: doc/classes/ProjectSettings.xml:907
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant PhysicsServer2D."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:907
+#: doc/classes/ProjectSettings.xml:910
msgid ""
"Sets whether physics is run on the main thread or a separate one. Running "
"the server on a thread increases performance, but restricts API access to "
@@ -40098,23 +40831,23 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:914
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant PhysicsServer2D.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:917
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody3D] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:920
msgid "The default angular damp in 3D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:923
msgid ""
"The default gravity strength in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -40126,7 +40859,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:928
+#: doc/classes/ProjectSettings.xml:931
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -40138,11 +40871,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:936
+#: doc/classes/ProjectSettings.xml:939
msgid "The default linear damp in 3D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:939
+#: doc/classes/ProjectSettings.xml:942
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -40150,11 +40883,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:943
+#: doc/classes/ProjectSettings.xml:946
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:949
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -40163,7 +40896,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:950
+#: doc/classes/ProjectSettings.xml:953
msgid ""
"Fix to improve physics jitter, specially on monitors where refresh rate is "
"different than the physics FPS.\n"
@@ -40171,7 +40904,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:954
+#: doc/classes/ProjectSettings.xml:957
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -40179,7 +40912,7 @@ msgid ""
"programmatically, use [method RenderingServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:957
+#: doc/classes/ProjectSettings.xml:960
msgid ""
"[Environment] that will be used as a fallback environment in case a scene "
"does not specify its own environment. The default environment is loaded in "
@@ -40189,14 +40922,14 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:986
+#: doc/classes/ProjectSettings.xml:989
msgid ""
"Max amount of elements renderable in a frame. If more than this are visible "
"per frame, they will be dropped. Keep in mind elements refer to mesh "
"surfaces and not meshes themselves."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:994
msgid ""
"Some NVIDIA GPU drivers have a bug which produces flickering issues for the "
"[code]draw_rect[/code] method, especially as used in [TileMap]. Refer to "
@@ -40208,73 +40941,73 @@ msgid ""
"using the Vulkan backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:995
+#: doc/classes/ProjectSettings.xml:998
msgid ""
"If [code]true[/code], forces snapping of polygons to pixels in 2D rendering. "
"May help in some pixel art styles."
msgstr ""
-#: doc/classes/ProjectSettings.xml:998
+#: doc/classes/ProjectSettings.xml:1001
msgid ""
"Sets the quality of the depth of field effect. Higher quality takes more "
"samples, which is slower but looks smoother."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1001
+#: doc/classes/ProjectSettings.xml:1004
msgid ""
"Sets the depth of field shape. Can be Box, Hexagon, or Circle. Box is the "
"fastest. Circle is the most realistic, but also the most expensive to "
"compute."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1004
+#: doc/classes/ProjectSettings.xml:1007
msgid ""
"If [code]true[/code], jitters DOF samples to make effect slightly blurrier "
"and hide lines created from low sample rates. This can result in a slightly "
"grainy appearance when used with a low number of samples."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1010
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1010
+#: doc/classes/ProjectSettings.xml:1013
msgid ""
"If [code]true[/code], performs a previous depth pass before rendering "
"materials. This increases performance in scenes with high overdraw, when "
"complex materials and lighting are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1016
msgid ""
"The directional shadow's size in pixels. Higher values will result in "
"sharper shadows, at the cost of performance. The value will be rounded up to "
"the nearest power of 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1016
+#: doc/classes/ProjectSettings.xml:1019
msgid ""
"Lower-end override for [member rendering/quality/directional_shadow/size] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1019
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"Quality setting for shadows cast by [DirectionalLight3D]s. Higher quality "
"settings use more samples when reading from shadow maps and are thus slower. "
"Low quality settings may result in shadows looking grainy."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1022
+#: doc/classes/ProjectSettings.xml:1025
msgid ""
"Lower-end override for [member rendering/quality/directional_shadow/"
"soft_shadow_quality] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1028
msgid ""
"The video driver to use (\"GLES2\" or \"Vulkan\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -40284,32 +41017,32 @@ msgid ""
"get_current_video_driver[/code] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1031
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"If [code]true[/code], take additional samples when rendering objects "
"affected by a [GIProbe] to reduce artifacts from only sampling in one "
"direction."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1034
+#: doc/classes/ProjectSettings.xml:1037
msgid ""
"Sets the number of cone samples taken when rendering objects affected by "
"[GIProbe]s."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1037
+#: doc/classes/ProjectSettings.xml:1040
msgid ""
"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."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1040
+#: doc/classes/ProjectSettings.xml:1043
msgid ""
"Lower-end override for [member rendering/quality/glow/upscale_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1043
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Strategy used for framebuffer allocation. The simpler it is, the less "
"resources it uses (but the less features it supports). If set to \"2D "
@@ -40319,41 +41052,41 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1046
+#: doc/classes/ProjectSettings.xml:1049
msgid ""
"Lower-end override for [member rendering/quality/intended_usage/"
"framebuffer_allocation] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1052
msgid ""
"Number of cubemaps to store in the reflection atlas. The number of "
"[ReflectionProbe]s in a scene will be limited by this amount. A higher "
"number requires more VRAM."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1052
+#: doc/classes/ProjectSettings.xml:1055
msgid ""
"Size of cubemap faces for [ReflectionProbe]s. A higher number requires more "
"VRAM and may make reflection probe updating slower."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1055
+#: doc/classes/ProjectSettings.xml:1058
msgid ""
"Lower-end override for [member rendering/quality/reflection_atlas/"
"reflection_size] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1058
+#: doc/classes/ProjectSettings.xml:1061
msgid ""
"Use a higher quality variant of the fast filtering algorithm. Significantly "
"slower than using default quality, but results in smoother reflections. "
"Should only be used when the scene is especially detailed."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1061
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Sets the number of samples to take when using importance sampling for [Sky]s "
"and [ReflectionProbe]s. A higher value will result in smoother, higher "
@@ -40363,19 +41096,19 @@ msgid ""
"environments with a high level of detail."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1064
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Lower-end override for [member rendering/quality/reflections/ggx_samples] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1067
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Limits the number of layers to use in radiance maps when using importance "
"sampling. A lower number will be slightly faster and take up less VRAM."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1070
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise and "
@@ -40384,14 +41117,14 @@ msgid ""
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1073
+#: doc/classes/ProjectSettings.xml:1076
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"texture_array_reflections] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1079
msgid ""
"Sets the number of MSAA samples to use (as a power of two). MSAA is used to "
"reduce aliasing around the edges of polygons. A higher MSAA value results in "
@@ -40399,7 +41132,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1080
+#: doc/classes/ProjectSettings.xml:1083
msgid ""
"Sets the screen-space antialiasing mode for the default screen [Viewport]. "
"Screen-space antialiasing works by selectively blurring edges in a post-"
@@ -40408,133 +41141,117 @@ msgid ""
"MSAA and will smooth out specular aliasing, but tend to make scenes appear "
"blurry.\n"
"Another way to combat specular aliasing is to enable [member rendering/"
-"quality/screen_filters/screen_space_roughness_limiter]."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:1084
-msgid ""
-"Enables the screen-space roughness limiter which increases material "
-"roughness in areas with a high normal frequency (i.e. when normals change a "
-"lot from pixel to pixel). This helps to reduce the amount of specular "
-"aliasing in a scene. Specular aliasing looks like random bright pixels that "
-"occur in reflections."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:1087
-msgid ""
-"Curves the amount of the roughness limited effect. A higher value limits the "
-"effect to very sharply curved surfaces, while a lower threshold extends the "
-"effect to smoother surfaces."
+"quality/screen_filters/screen_space_roughness_limiter_enabled]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1090
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"Sets the quality for rough screen-space reflections. Turning off will make "
"all screen space reflections sharp, while higher values make rough "
"reflections look better."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1093
+#: doc/classes/ProjectSettings.xml:1096
msgid ""
"If [code]true[/code], uses faster but lower-quality Blinn model to generate "
"blurred reflections instead of the GGX model."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1099
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_blinn_over_ggx] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1102
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1102
+#: doc/classes/ProjectSettings.xml:1105
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_lambert_over_burley] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1105
+#: doc/classes/ProjectSettings.xml:1108
msgid ""
"If [code]true[/code], forces vertex shading for all rendering. This can "
"increase performance a lot, but also reduces quality immensely. Can be used "
"to optimize performance on low-end mobile devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1108
+#: doc/classes/ProjectSettings.xml:1111
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_vertex_shading] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1111 doc/classes/ProjectSettings.xml:1114
-#: doc/classes/ProjectSettings.xml:1117 doc/classes/ProjectSettings.xml:1120
+#: doc/classes/ProjectSettings.xml:1114 doc/classes/ProjectSettings.xml:1117
+#: doc/classes/ProjectSettings.xml:1120 doc/classes/ProjectSettings.xml:1123
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1123
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1126
+#: doc/classes/ProjectSettings.xml:1129
msgid ""
"Lower-end override for [member rendering/quality/shadow_atlas/size] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1132
msgid ""
"Quality setting for shadows cast by [OmniLight3D]s and [SpotLight3D]s. "
"Higher quality settings use more samples when reading from shadow maps and "
"are thus slower. Low quality settings may result in shadows looking grainy."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1132
+#: doc/classes/ProjectSettings.xml:1135
msgid ""
"Lower-end override for [member rendering/quality/shadows/"
"soft_shadow_quality] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1135
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"If [code]true[/code], screen-space ambient occlusion will be rendered at "
"half size and then upscaled before being added to the scene. This is "
"significantly faster but may miss small details."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1138
+#: doc/classes/ProjectSettings.xml:1141
msgid ""
"Sets the quality of the screen-space ambient occlusion effect. Higher values "
"take more samples and so will result in better quality, at the cost of "
"performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1144
msgid ""
"Scales the depth over which the subsurface scattering effect is applied. A "
"high value may allow light to scatter into a part of the mesh or another "
"mesh that is close in screen space but far in depth."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1144
+#: doc/classes/ProjectSettings.xml:1147
msgid ""
"Sets the quality of the subsurface scattering effect. Higher values are "
"slower but look nicer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1147
+#: doc/classes/ProjectSettings.xml:1150
msgid ""
"Scales the distance over which samples are taken for subsurface scattering "
"effect. Changing this does not impact performance, but higher values will "
@@ -40542,7 +41259,7 @@ msgid ""
"out. A lower value results in a smaller spread of scattered light."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1150
+#: doc/classes/ProjectSettings.xml:1153
msgid ""
"Sets the maximum number of samples to take when using anisotropic filtering "
"on textures (as a power of two). A higher sample count will result in "
@@ -40551,7 +41268,7 @@ msgid ""
"materials where it is enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1153
+#: doc/classes/ProjectSettings.xml:1156
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -40560,49 +41277,49 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Thread model for rendering. Rendering on a thread can vastly improve "
"performance, but synchronizing to the main thread can cause a bit more "
"jitter."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
"only supported on desktop platforms, and only when using the Vulkan renderer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
"doesn't support alpha channels in textures."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
"compression algorithm is only supported when using the Vulkan renderer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1175
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
"compression algorithm is only supported on iOS."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
"supported on desktop platforms and consoles."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1182
+#: doc/classes/ProjectSettings.xml:1189
msgid "Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses."
msgstr ""
@@ -40632,13 +41349,14 @@ msgstr ""
#: doc/classes/Quat.xml:7
msgid ""
-"A unit quaternion used for representing 3D rotations.\n"
-"It is similar to [Basis], which implements matrix representation of "
-"rotations, and can be parametrized using both an axis-angle pair or Euler "
-"angles. But due to its compactness and the way it is stored in memory, "
-"certain operations (obtaining axis-angle and performing SLERP, in "
-"particular) are more efficient and robust against floating-point errors.\n"
-"Quaternions need to be (re)normalized."
+"A unit quaternion used for representing 3D rotations. Quaternions need to be "
+"normalized to be used for rotation.\n"
+"It is similar to Basis, which implements matrix representation of rotations, "
+"and can be parametrized using both an axis-angle pair or Euler angles. Basis "
+"stores rotation, scale, and shearing, while Quat only stores rotation.\n"
+"Due to its compactness and the way it is stored in memory, certain "
+"operations (obtaining axis-angle and performing SLERP, in particular) are "
+"more efficient and robust against floating-point errors."
msgstr ""
#: doc/classes/Quat.xml:12
@@ -40648,29 +41366,31 @@ msgid ""
msgstr ""
#: doc/classes/Quat.xml:21
-msgid "Returns the rotation matrix corresponding to the given quaternion."
+msgid "Constructs a quaternion from the given [Basis]."
msgstr ""
#: doc/classes/Quat.xml:30
msgid ""
-"Returns a quaternion that will perform a rotation specified by Euler angles "
-"(in the YXZ convention: first Z, then X, and Y last), given in the vector "
-"format as (X angle, Y angle, Z angle)."
+"Constructs a quaternion that will perform a rotation specified by Euler "
+"angles (in the YXZ convention: when decomposing, first Z, then X, and Y "
+"last), given in the vector format as (X angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:41
msgid ""
-"Returns a quaternion that will rotate around the given axis by the specified "
-"angle. The axis must be a normalized vector."
+"Constructs a quaternion that will rotate around the given axis by the "
+"specified angle. The axis must be a normalized vector."
msgstr ""
#: doc/classes/Quat.xml:56
-msgid "Returns a quaternion defined by these values."
+msgid "Constructs a quaternion defined by the given values."
msgstr ""
#: doc/classes/Quat.xml:71
msgid ""
-"Performs a cubic spherical-linear interpolation with another quaternion."
+"Performs a cubic spherical interpolation between quaternions [code]preA[/"
+"code], this vector, [code]b[/code], and [code]postB[/code], by the given "
+"amount [code]t[/code]."
msgstr ""
#: doc/classes/Quat.xml:80
@@ -40679,10 +41399,10 @@ msgstr ""
#: doc/classes/Quat.xml:87
msgid ""
-"Returns Euler angles (in the YXZ convention: first Z, then X, and Y last) "
-"corresponding to the rotation represented by the unit quaternion. Returned "
-"vector contains the rotation angles in the format (X angle, Y angle, Z "
-"angle)."
+"Returns Euler angles (in the YXZ convention: when decomposing, first Z, then "
+"X, and Y last) corresponding to the rotation represented by the unit "
+"quaternion. Returned vector contains the rotation angles in the format (X "
+"angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:94
@@ -40721,44 +41441,57 @@ msgstr ""
#: doc/classes/Quat.xml:151
msgid ""
"Sets the quaternion to a rotation specified by Euler angles (in the YXZ "
-"convention: first Z, then X, and Y last), given in the vector format as (X "
-"angle, Y angle, Z angle)."
+"convention: when decomposing, first Z, then X, and Y last), given in the "
+"vector format as (X angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:162
-msgid "Performs a spherical-linear interpolation with another quaternion."
+msgid ""
+"Returns the result of the spherical linear interpolation between this "
+"quaternion and [code]to[/code] by amount [code]weight[/code].\n"
+"[b]Note:[/b] Both quaternions must be normalized."
msgstr ""
-#: doc/classes/Quat.xml:173
+#: doc/classes/Quat.xml:174
msgid ""
-"Performs a spherical-linear interpolation with another quaterion without "
-"checking if the rotation path is not bigger than 90°."
+"Returns the result of the spherical linear interpolation between this "
+"quaternion and [code]to[/code] by amount [code]weight[/code], but without "
+"checking if the rotation path is not bigger than 90 degrees."
msgstr ""
-#: doc/classes/Quat.xml:182
-msgid "Transforms the vector [code]v[/code] by this quaternion."
+#: doc/classes/Quat.xml:183
+msgid "Returns a vector transformed (multiplied) by this quaternion."
msgstr ""
-#: doc/classes/Quat.xml:188
-msgid "W component of the quaternion."
+#: doc/classes/Quat.xml:189
+msgid ""
+"W component of the quaternion (real part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:191
-msgid "X component of the quaternion."
+#: doc/classes/Quat.xml:193
+msgid ""
+"X component of the quaternion (imaginary [code]i[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:194
-msgid "Y component of the quaternion."
+#: doc/classes/Quat.xml:197
+msgid ""
+"Y component of the quaternion (imaginary [code]j[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:197
-msgid "Z component of the quaternion."
+#: doc/classes/Quat.xml:201
+msgid ""
+"Z component of the quaternion (imaginary [code]k[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:202
+#: doc/classes/Quat.xml:207
msgid ""
-"The identity rotation. Equivalent to an identity matrix. If a vector is "
-"transformed by an identity quaternion, it will not change."
+"The identity quaternion, representing no rotation. Equivalent to an identity "
+"[Basis] matrix. If a vector is transformed by an identity quaternion, it "
+"will not change."
msgstr ""
#: doc/classes/RandomNumberGenerator.xml:4
@@ -40961,7 +41694,8 @@ msgid ""
"collision information immediately instead of waiting for the next "
"[code]_physics_process[/code] call, for example if the ray or its parent has "
"changed state.\n"
-"[b]Note:[/b] [code]enabled == true[/code] is not required for this to work."
+"[b]Note:[/b] [member enabled] does not need to be [code]true[/code] for this "
+"to work."
msgstr ""
#: doc/classes/RayCast2D.xml:54 doc/classes/RayCast3D.xml:55
@@ -41067,7 +41801,8 @@ msgid ""
"Use this method to update the collision information immediately instead of "
"waiting for the next [code]_physics_process[/code] call, for example if the "
"ray or its parent has changed state.\n"
-"[b]Note:[/b] [code]enabled == true[/code] is not required for this to work."
+"[b]Note:[/b] [member enabled] does not need to be [code]true[/code] for this "
+"to work."
msgstr ""
#: doc/classes/RayCast3D.xml:71
@@ -41225,14 +41960,6 @@ msgstr ""
msgid "Returns a larger [Rect2] that contains this [Rect2] and [code]b[/code]."
msgstr ""
-#: doc/classes/Rect2.xml:174 doc/classes/Rect2i.xml:163
-msgid "Ending corner."
-msgstr ""
-
-#: doc/classes/Rect2.xml:177 doc/classes/Rect2i.xml:166
-msgid "Position (starting corner)."
-msgstr ""
-
#: doc/classes/Rect2i.xml:4
msgid "2D axis-aligned bounding box using integer coordinates."
msgstr ""
@@ -41348,22 +42075,22 @@ msgstr ""
msgid ""
"Base class for any object that keeps a reference count. [Resource] and many "
"other helper objects inherit this class.\n"
-"References keep an internal reference counter so that they are automatically "
-"released when no longer in use, and only then. References therefore do not "
-"need to be freed manually with [method Object.free].\n"
+"Unlike [Object]s, References keep an internal reference counter so that they "
+"are automatically released when no longer in use, and only then. References "
+"therefore do not need to be freed manually with [method Object.free].\n"
"In the vast majority of use cases, instantiating and using [Reference]-"
"derived types is all you need to do. The methods provided in this class are "
"only for advanced users, and can cause issues if misused."
msgstr ""
-#: doc/classes/Reference.xml:18
+#: doc/classes/Reference.xml:19
msgid ""
"Initializes the internal reference counter. Use this only if you really know "
"what you are doing.\n"
"Returns whether the initialization was successful."
msgstr ""
-#: doc/classes/Reference.xml:26
+#: doc/classes/Reference.xml:27
msgid ""
"Increments the internal reference counter. Use this only if you really know "
"what you are doing.\n"
@@ -41371,7 +42098,7 @@ msgid ""
"code] otherwise."
msgstr ""
-#: doc/classes/Reference.xml:34
+#: doc/classes/Reference.xml:35
msgid ""
"Decrements the internal reference counter. Use this only if you really know "
"what you are doing.\n"
@@ -41420,14 +42147,14 @@ msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/reflection_probes.html"
msgstr ""
-#: doc/classes/ReflectionProbe.xml:17
+#: doc/classes/ReflectionProbe.xml:23
msgid ""
"If [code]true[/code], enables box projection. This makes reflections look "
"more correct in rectangle-shaped rooms by offsetting the reflection center "
"depending on the camera's location."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:20
+#: doc/classes/ReflectionProbe.xml:26
msgid ""
"Sets the cull mask which determines what objects are drawn by this probe. "
"Every [VisualInstance3D] with a layer included in this cull mask will be "
@@ -41436,78 +42163,56 @@ msgid ""
"rendering cost."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:23
+#: doc/classes/ReflectionProbe.xml:29
msgid ""
"If [code]true[/code], computes shadows in the reflection probe. This makes "
"the reflection probe slower to render; you may want to disable this if using "
"the [constant UPDATE_ALWAYS] [member update_mode]."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:26
+#: doc/classes/ReflectionProbe.xml:32
msgid ""
"The size of the reflection probe. The larger the extents the more space "
"covered by the probe which will lower the perceived resolution. It is best "
"to keep the extents only as large as you need them."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:29
+#: doc/classes/ReflectionProbe.xml:35
msgid ""
"Defines the reflection intensity. Intensity modulates the strength of the "
"reflection."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:32
-msgid ""
-"Sets the ambient light color to be used when this probe is set to [member "
-"interior_enable]."
-msgstr ""
-
-#: doc/classes/ReflectionProbe.xml:35
-msgid ""
-"Sets the contribution value for how much the reflection affects the ambient "
-"light for this reflection probe when set to [member interior_enable]. Useful "
-"so that ambient light matches the color of the room."
-msgstr ""
-
#: doc/classes/ReflectionProbe.xml:38
-msgid ""
-"Sets the energy multiplier for this reflection probe's ambient light "
-"contribution when set to [member interior_enable]."
+msgid "If [code]true[/code], reflections will ignore sky contribution."
msgstr ""
#: doc/classes/ReflectionProbe.xml:41
msgid ""
-"If [code]true[/code], reflections will ignore sky contribution. Ambient "
-"lighting is then controlled by the [code]interior_ambient_*[/code] "
-"properties."
-msgstr ""
-
-#: doc/classes/ReflectionProbe.xml:44
-msgid ""
"Sets the max distance away from the probe an object can be before it is "
"culled."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:47
+#: doc/classes/ReflectionProbe.xml:44
msgid ""
"Sets the origin offset to be used when this reflection probe is in box "
"project mode."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:50
+#: doc/classes/ReflectionProbe.xml:47
msgid ""
"Sets how frequently the probe is updated. Can be [constant UPDATE_ONCE] or "
"[constant UPDATE_ALWAYS]."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:55
+#: doc/classes/ReflectionProbe.xml:52
msgid ""
"Update the probe once on the next frame. The corresponding radiance map will "
"be generated over the following six frames. This is slower to update than "
"[constant UPDATE_ALWAYS] but can result in higher quality reflections."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:58
+#: doc/classes/ReflectionProbe.xml:55
msgid ""
"Update the probe every frame. This is needed when you want to capture "
"dynamic objects. However, it results in an increased render time. Use "
@@ -41537,10 +42242,10 @@ msgid ""
"read by RegEx as [code]\\d+[/code]. Similarly, [code]compile(\"\\\"(?:\\\\\\"
"\\.|[^\\\"])*\\\"\")[/code] would be read as [code]\"(?:\\\\.|[^\"])*\"[/"
"code].\n"
-"Using [method search] you can find the pattern within the given text. If a "
+"Using [method search], you can find the pattern within the given text. If a "
"pattern is found, [RegExMatch] is returned and you can retrieve details of "
-"the results using functions such as [method RegExMatch.get_string] and "
-"[method RegExMatch.get_start].\n"
+"the results using methods such as [method RegExMatch.get_string] and [method "
+"RegExMatch.get_start].\n"
"[codeblock]\n"
"var regex = RegEx.new()\n"
"regex.compile(\"\\\\w-(\\\\d+)\")\n"
@@ -41549,7 +42254,7 @@ msgid ""
" print(result.get_string()) # Would print n-0123\n"
"[/codeblock]\n"
"The results of capturing groups [code]()[/code] can be retrieved by passing "
-"the group number to the various functions in [RegExMatch]. Group 0 is the "
+"the group number to the various methods in [RegExMatch]. Group 0 is the "
"default and will always refer to the entire pattern. In the above example, "
"calling [code]result.get_string(1)[/code] would give you [code]0123[/code].\n"
"This version of RegEx also supports named capturing groups, and the names "
@@ -41570,6 +42275,15 @@ msgid ""
" print(result.get_string(\"digit\"))\n"
"# Would print 01 03 0 3f 42\n"
"[/codeblock]\n"
+"[b]Example of splitting a string using a RegEx:[/b]\n"
+"[codeblock]\n"
+"var regex = RegEx.new()\n"
+"regex.compile(\"\\\\S+\") # Negated whitespace character class.\n"
+"var results = []\n"
+"for match in regex.search_all(\"One Two \\n\\tThree\"):\n"
+" results.push_back(match.get_string())\n"
+"# The `results` array now contains \"One\", \"Two\", \"Three\".\n"
+"[/codeblock]\n"
"[b]Note:[/b] Godot's regex implementation is based on the [url=https://www."
"pcre.org/]PCRE2[/url] library. You can view the full pattern reference "
"[url=https://www.pcre.org/current/doc/html/pcre2pattern.html]here[/url].\n"
@@ -41577,38 +42291,38 @@ msgid ""
"regular expressions online."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:47
+#: modules/regex/doc_classes/RegEx.xml:56
msgid ""
"This method resets the state of the object, as if it was freshly created. "
"Namely, it unassigns the regular expression of this object."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:56
+#: modules/regex/doc_classes/RegEx.xml:65
msgid ""
"Compiles and assign the search pattern to use. Returns [constant OK] if the "
"compilation is successful. If an error is encountered, details are printed "
"to standard output and an error is returned."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:63
+#: modules/regex/doc_classes/RegEx.xml:72
msgid "Returns the number of capturing groups in compiled pattern."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:70
+#: modules/regex/doc_classes/RegEx.xml:79
msgid ""
"Returns an array of names of named capturing groups in the compiled pattern. "
"They are ordered by appearance."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:77
+#: modules/regex/doc_classes/RegEx.xml:86
msgid "Returns the original search pattern that was compiled."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:84
+#: modules/regex/doc_classes/RegEx.xml:93
msgid "Returns whether this object has a valid search pattern assigned."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:97
+#: modules/regex/doc_classes/RegEx.xml:106
msgid ""
"Searches the text for the compiled pattern. Returns a [RegExMatch] container "
"of the first matching result if found, otherwise [code]null[/code]. The "
@@ -41616,7 +42330,7 @@ msgid ""
"and end anchor would be."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:110
+#: modules/regex/doc_classes/RegEx.xml:119
msgid ""
"Searches the text for the compiled pattern. Returns an array of [RegExMatch] "
"containers for each non-overlapping result. If no results were found, an "
@@ -41624,7 +42338,7 @@ msgid ""
"specified without modifying where the start and end anchor would be."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:127
+#: modules/regex/doc_classes/RegEx.xml:136
msgid ""
"Searches the text for the compiled pattern and replaces it with the "
"specified string. Escapes and backreferences such as [code]$1[/code] and "
@@ -42351,7 +43065,7 @@ msgid ""
msgstr ""
#: doc/classes/RenderingServer.xml:1222 doc/classes/RenderingServer.xml:1250
-#: doc/classes/RenderingServer.xml:1527
+#: doc/classes/RenderingServer.xml:1537
msgid "Not implemented in Godot 3.x."
msgstr ""
@@ -42498,30 +43212,30 @@ msgid ""
"OmniLight3D.omni_shadow_mode]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1481
+#: doc/classes/RenderingServer.xml:1491
msgid ""
"Sets the color of the light. Equivalent to [member Light3D.light_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1492
+#: doc/classes/RenderingServer.xml:1502
msgid ""
"Sets the cull mask for this Light3D. Lights only affect objects in the "
"selected layers. Equivalent to [member Light3D.light_cull_mask]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1503
+#: doc/classes/RenderingServer.xml:1513
msgid ""
"If [code]true[/code], light will subtract light instead of adding light. "
"Equivalent to [member Light3D.light_negative]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1516
+#: doc/classes/RenderingServer.xml:1526
msgid ""
"Sets the specified light parameter. See [enum LightParam] for options. "
"Equivalent to [method Light3D.set_param]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1538
+#: doc/classes/RenderingServer.xml:1548
msgid ""
"If [code]true[/code], reverses the backface culling of the mesh. This can be "
"useful when you have a flat mesh that has a light behind it. If you need to "
@@ -42530,29 +43244,25 @@ msgid ""
"to [member Light3D.shadow_reverse_cull_face]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1549
+#: doc/classes/RenderingServer.xml:1559
msgid ""
"If [code]true[/code], light will cast shadows. Equivalent to [member Light3D."
"shadow_enabled]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1560
+#: doc/classes/RenderingServer.xml:1570
msgid ""
"Sets the color of the shadow cast by the light. Equivalent to [member "
"Light3D.shadow_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1571
-msgid "Sets whether GI probes capture light information from this light."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:1584
+#: doc/classes/RenderingServer.xml:1583
msgid ""
"Returns a mesh of a sphere with the given amount of horizontal and vertical "
"subdivisions."
msgstr ""
-#: doc/classes/RenderingServer.xml:1591
+#: doc/classes/RenderingServer.xml:1590
msgid ""
"Creates an empty material and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42561,31 +43271,31 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:1603
+#: doc/classes/RenderingServer.xml:1602
msgid "Returns the value of a certain material's parameter."
msgstr ""
-#: doc/classes/RenderingServer.xml:1614
+#: doc/classes/RenderingServer.xml:1613
msgid "Sets an object's next material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1627
+#: doc/classes/RenderingServer.xml:1626
msgid "Sets a material's parameter."
msgstr ""
-#: doc/classes/RenderingServer.xml:1638
+#: doc/classes/RenderingServer.xml:1637
msgid "Sets a material's render priority."
msgstr ""
-#: doc/classes/RenderingServer.xml:1649
+#: doc/classes/RenderingServer.xml:1648
msgid "Sets a shader material's shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:1678
+#: doc/classes/RenderingServer.xml:1677
msgid "Removes all surfaces from a mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1685
+#: doc/classes/RenderingServer.xml:1684
msgid ""
"Creates a new mesh and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all [code]mesh_*[/"
@@ -42596,58 +43306,58 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:1696
+#: doc/classes/RenderingServer.xml:1695
msgid "Returns a mesh's blend shape count."
msgstr ""
-#: doc/classes/RenderingServer.xml:1705
+#: doc/classes/RenderingServer.xml:1704
msgid "Returns a mesh's blend shape mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:1714
+#: doc/classes/RenderingServer.xml:1713
msgid "Returns a mesh's custom aabb."
msgstr ""
-#: doc/classes/RenderingServer.xml:1723
+#: doc/classes/RenderingServer.xml:1722
msgid "Returns a mesh's number of surfaces."
msgstr ""
-#: doc/classes/RenderingServer.xml:1734
+#: doc/classes/RenderingServer.xml:1733
msgid "Sets a mesh's blend shape mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:1745
+#: doc/classes/RenderingServer.xml:1744
msgid "Sets a mesh's custom aabb."
msgstr ""
-#: doc/classes/RenderingServer.xml:1756
+#: doc/classes/RenderingServer.xml:1755
msgid "Returns a mesh's surface's buffer arrays."
msgstr ""
-#: doc/classes/RenderingServer.xml:1767
+#: doc/classes/RenderingServer.xml:1766
msgid "Returns a mesh's surface's arrays for blend shapes."
msgstr ""
-#: doc/classes/RenderingServer.xml:1782 doc/classes/RenderingServer.xml:1795
+#: doc/classes/RenderingServer.xml:1781 doc/classes/RenderingServer.xml:1794
msgid "Function is unused in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:1806
+#: doc/classes/RenderingServer.xml:1805
msgid "Returns a mesh's surface's material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1819
+#: doc/classes/RenderingServer.xml:1818
msgid "Sets a mesh's surface's material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1834
+#: doc/classes/RenderingServer.xml:1833
msgid ""
"Updates a specific region of a vertex buffer for the specified surface. "
"Warning: this function alters the vertex buffer directly with no safety "
"mechanisms, you can easily corrupt your mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1857
+#: doc/classes/RenderingServer.xml:1856
msgid ""
"Creates a new multimesh on the RenderingServer and returns an [RID] handle. "
"This RID will be used in all [code]multimesh_*[/code] RenderingServer "
@@ -42658,82 +43368,82 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:1868
+#: doc/classes/RenderingServer.xml:1867
msgid ""
"Calculates and returns the axis-aligned bounding box that encloses all "
"instances within the multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1885
+#: doc/classes/RenderingServer.xml:1884
msgid "Returns the number of instances allocated for this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1894
+#: doc/classes/RenderingServer.xml:1893
msgid ""
"Returns the RID of the mesh that will be used in drawing this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1903
+#: doc/classes/RenderingServer.xml:1902
msgid "Returns the number of visible instances for this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1914
+#: doc/classes/RenderingServer.xml:1913
msgid "Returns the color by which the specified instance will be modulated."
msgstr ""
-#: doc/classes/RenderingServer.xml:1925
+#: doc/classes/RenderingServer.xml:1924
msgid "Returns the custom data associated with the specified instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:1936
+#: doc/classes/RenderingServer.xml:1935
msgid "Returns the [Transform] of the specified instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:1947
+#: doc/classes/RenderingServer.xml:1946
msgid ""
"Returns the [Transform2D] of the specified instance. For use when the "
"multimesh is set to use 2D transforms."
msgstr ""
-#: doc/classes/RenderingServer.xml:1960
+#: doc/classes/RenderingServer.xml:1959
msgid ""
"Sets the color by which this instance will be modulated. Equivalent to "
"[method MultiMesh.set_instance_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1973
+#: doc/classes/RenderingServer.xml:1972
msgid ""
"Sets the custom data for this instance. Custom data is passed as a [Color], "
"but is interpreted as a [code]vec4[/code] in the shader. Equivalent to "
"[method MultiMesh.set_instance_custom_data]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1986
+#: doc/classes/RenderingServer.xml:1985
msgid ""
"Sets the [Transform] for this instance. Equivalent to [method MultiMesh."
"set_instance_transform]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1999
+#: doc/classes/RenderingServer.xml:1998
msgid ""
"Sets the [Transform2D] for this instance. For use when multimesh is used in "
"2D. Equivalent to [method MultiMesh.set_instance_transform_2d]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2020
+#: doc/classes/RenderingServer.xml:2019
msgid ""
"Sets the mesh to be drawn by the multimesh. Equivalent to [member MultiMesh."
"mesh]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2031
+#: doc/classes/RenderingServer.xml:2030
msgid ""
"Sets the number of instances visible at a given time. If -1, all instances "
"that have been allocated are drawn. Equivalent to [member MultiMesh."
"visible_instance_count]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2038
+#: doc/classes/RenderingServer.xml:2037
msgid ""
"Creates a new omni light and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID can be used in most "
@@ -42744,7 +43454,7 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2047
+#: doc/classes/RenderingServer.xml:2046
msgid ""
"Creates a particle system and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42755,23 +43465,23 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2058
+#: doc/classes/RenderingServer.xml:2057
msgid ""
"Calculates and returns the axis-aligned bounding box that contains all the "
"particles. Equivalent to [method GPUParticles3D.capture_aabb]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2067
+#: doc/classes/RenderingServer.xml:2066
msgid "Returns [code]true[/code] if particles are currently set to emitting."
msgstr ""
-#: doc/classes/RenderingServer.xml:2076
+#: doc/classes/RenderingServer.xml:2075
msgid ""
"Returns [code]true[/code] if particles are not emitting and particles are "
"set to inactive."
msgstr ""
-#: doc/classes/RenderingServer.xml:2085
+#: doc/classes/RenderingServer.xml:2084
msgid ""
"Add particle system to list of particle systems that need to be updated. "
"Update will take place on the next frame, or on the next call to [method "
@@ -42779,121 +43489,121 @@ msgid ""
"instances_cull_ray]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2094
+#: doc/classes/RenderingServer.xml:2093
msgid ""
"Reset the particles on the next update. Equivalent to [method GPUParticles3D."
"restart]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2105
+#: doc/classes/RenderingServer.xml:2104
msgid ""
"Sets the number of particles to be drawn and allocates the memory for them. "
"Equivalent to [member GPUParticles3D.amount]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2116
+#: doc/classes/RenderingServer.xml:2115
msgid ""
"Sets a custom axis-aligned bounding box for the particle system. Equivalent "
"to [member GPUParticles3D.visibility_aabb]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2127
+#: doc/classes/RenderingServer.xml:2126
msgid ""
"Sets the draw order of the particles to one of the named enums from [enum "
"ParticlesDrawOrder]. See [enum ParticlesDrawOrder] for options. Equivalent "
"to [member GPUParticles3D.draw_order]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2140
+#: doc/classes/RenderingServer.xml:2139
msgid ""
"Sets the mesh to be used for the specified draw pass. Equivalent to [member "
"GPUParticles3D.draw_pass_1], [member GPUParticles3D.draw_pass_2], [member "
"GPUParticles3D.draw_pass_3], and [member GPUParticles3D.draw_pass_4]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2151
+#: doc/classes/RenderingServer.xml:2150
msgid ""
"Sets the number of draw passes to use. Equivalent to [member GPUParticles3D."
"draw_passes]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2162
+#: doc/classes/RenderingServer.xml:2161
msgid ""
"Sets the [Transform] that will be used by the particles when they first emit."
msgstr ""
-#: doc/classes/RenderingServer.xml:2173
+#: doc/classes/RenderingServer.xml:2172
msgid ""
"If [code]true[/code], particles will emit over time. Setting to false does "
"not reset the particles, but only stops their emission. Equivalent to "
"[member GPUParticles3D.emitting]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2184
+#: doc/classes/RenderingServer.xml:2183
msgid ""
"Sets the explosiveness ratio. Equivalent to [member GPUParticles3D."
"explosiveness]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2195
+#: doc/classes/RenderingServer.xml:2194
msgid ""
"Sets the frame rate that the particle system rendering will be fixed to. "
"Equivalent to [member GPUParticles3D.fixed_fps]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2206
+#: doc/classes/RenderingServer.xml:2205
msgid ""
"If [code]true[/code], uses fractional delta which smooths the movement of "
"the particles. Equivalent to [member GPUParticles3D.fract_delta]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2217
+#: doc/classes/RenderingServer.xml:2216
msgid ""
"Sets the lifetime of each particle in the system. Equivalent to [member "
"GPUParticles3D.lifetime]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2228
+#: doc/classes/RenderingServer.xml:2227
msgid ""
"If [code]true[/code], particles will emit once and then stop. Equivalent to "
"[member GPUParticles3D.one_shot]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2239
+#: doc/classes/RenderingServer.xml:2238
msgid ""
"Sets the preprocess time for the particles animation. This lets you delay "
"starting an animation until after the particles have begun emitting. "
"Equivalent to [member GPUParticles3D.preprocess]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2250
+#: doc/classes/RenderingServer.xml:2249
msgid ""
"Sets the material for processing the particles. Note: this is not the "
"material used to draw the materials. Equivalent to [member GPUParticles3D."
"process_material]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2261
+#: doc/classes/RenderingServer.xml:2260
msgid ""
"Sets the emission randomness ratio. This randomizes the emission of "
"particles within their phase. Equivalent to [member GPUParticles3D."
"randomness]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2272
+#: doc/classes/RenderingServer.xml:2271
msgid ""
"Sets the speed scale of the particle system. Equivalent to [member "
"GPUParticles3D.speed_scale]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2283
+#: doc/classes/RenderingServer.xml:2282
msgid ""
"If [code]true[/code], particles use local coordinates. If [code]false[/code] "
"they use global coordinates. Equivalent to [member GPUParticles3D."
"local_coords]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2290
+#: doc/classes/RenderingServer.xml:2289
msgid ""
"Creates a reflection probe and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42904,85 +43614,64 @@ msgid ""
"[method instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2303
+#: doc/classes/RenderingServer.xml:2332
msgid ""
"If [code]true[/code], reflections will ignore sky contribution. Equivalent "
-"to [member ReflectionProbe.interior_enable]."
+"to [member ReflectionProbe.interior]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2314
+#: doc/classes/RenderingServer.xml:2343
msgid ""
"Sets the render cull mask for this reflection probe. Only instances with a "
"matching cull mask will be rendered by this probe. Equivalent to [member "
"ReflectionProbe.cull_mask]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2325
+#: doc/classes/RenderingServer.xml:2354
msgid ""
"If [code]true[/code], uses box projection. This can make reflections look "
"more correct in certain situations. Equivalent to [member ReflectionProbe."
"box_projection]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2336
+#: doc/classes/RenderingServer.xml:2365
msgid ""
"If [code]true[/code], computes shadows in the reflection probe. This makes "
"the reflection much slower to compute. Equivalent to [member ReflectionProbe."
"enable_shadows]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2347
+#: doc/classes/RenderingServer.xml:2376
msgid ""
"Sets the size of the area that the reflection probe will capture. Equivalent "
"to [member ReflectionProbe.extents]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2358
+#: doc/classes/RenderingServer.xml:2387
msgid ""
"Sets the intensity of the reflection probe. Intensity modulates the strength "
"of the reflection. Equivalent to [member ReflectionProbe.intensity]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2369
-msgid ""
-"Sets the ambient light color for this reflection probe when set to interior "
-"mode. Equivalent to [member ReflectionProbe.interior_ambient_color]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2380
-msgid ""
-"Sets the energy multiplier for this reflection probes ambient light "
-"contribution when set to interior mode. Equivalent to [member "
-"ReflectionProbe.interior_ambient_energy]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2391
-msgid ""
-"Sets the contribution value for how much the reflection affects the ambient "
-"light for this reflection probe when set to interior mode. Useful so that "
-"ambient light matches the color of the room. Equivalent to [member "
-"ReflectionProbe.interior_ambient_contrib]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2402
+#: doc/classes/RenderingServer.xml:2398
msgid ""
"Sets the max distance away from the probe an object can be before it is "
"culled. Equivalent to [member ReflectionProbe.max_distance]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2413
+#: doc/classes/RenderingServer.xml:2409
msgid ""
"Sets the origin offset to be used when this reflection probe is in box "
"project mode. Equivalent to [member ReflectionProbe.origin_offset]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2424
+#: doc/classes/RenderingServer.xml:2420
msgid ""
"Sets how often the reflection probe updates. Can either be once or every "
"frame. See [enum ReflectionProbeUpdateMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2437
+#: doc/classes/RenderingServer.xml:2433
msgid ""
"Schedules a callback to the corresponding named [code]method[/code] on "
"[code]where[/code] after a frame has been drawn.\n"
@@ -42990,7 +43679,7 @@ msgid ""
"[code]userdata[/code]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2445
+#: doc/classes/RenderingServer.xml:2441
msgid ""
"Creates a scenario and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all "
@@ -43000,24 +43689,24 @@ msgid ""
"The scenario is the 3D world that all the visual instances exist in."
msgstr ""
-#: doc/classes/RenderingServer.xml:2458
+#: doc/classes/RenderingServer.xml:2454
msgid ""
"Sets the [enum ScenarioDebugMode] for this scenario. See [enum "
"ScenarioDebugMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2469
+#: doc/classes/RenderingServer.xml:2465
msgid "Sets the environment that will be used with this scenario."
msgstr ""
-#: doc/classes/RenderingServer.xml:2480
+#: doc/classes/RenderingServer.xml:2476
msgid ""
"Sets the fallback environment to be used by this scenario. The fallback "
"environment is used if no environment is set. Internally, this is used by "
"the editor to provide a default environment."
msgstr ""
-#: doc/classes/RenderingServer.xml:2495
+#: doc/classes/RenderingServer.xml:2491
msgid ""
"Sets a boot image. The color defines the background color. If [code]scale[/"
"code] is [code]true[/code], the image will be scaled to fit the screen size. "
@@ -43026,19 +43715,19 @@ msgid ""
"the image will be scaled with nearest-neighbor interpolation."
msgstr ""
-#: doc/classes/RenderingServer.xml:2504
+#: doc/classes/RenderingServer.xml:2500
msgid ""
"If [code]true[/code], the engine will generate wireframes for use with the "
"wireframe debug mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:2513
+#: doc/classes/RenderingServer.xml:2509
msgid ""
"Sets the default clear color which is used when a specific clear color has "
"not been selected."
msgstr ""
-#: doc/classes/RenderingServer.xml:2520
+#: doc/classes/RenderingServer.xml:2516
msgid ""
"Creates an empty shader and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -43047,47 +43736,47 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2530
+#: doc/classes/RenderingServer.xml:2526
msgid "Returns a shader's code."
msgstr ""
-#: doc/classes/RenderingServer.xml:2541
+#: doc/classes/RenderingServer.xml:2537
msgid "Returns a default texture from a shader searched by name."
msgstr ""
-#: doc/classes/RenderingServer.xml:2560
+#: doc/classes/RenderingServer.xml:2556
msgid "Returns the parameters of a shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:2571
+#: doc/classes/RenderingServer.xml:2567
msgid "Sets a shader's code."
msgstr ""
-#: doc/classes/RenderingServer.xml:2584
+#: doc/classes/RenderingServer.xml:2580
msgid "Sets a shader's default texture. Overwrites the texture given by name."
msgstr ""
-#: doc/classes/RenderingServer.xml:2597
+#: doc/classes/RenderingServer.xml:2593
msgid "Allocates the GPU buffers for this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2608
+#: doc/classes/RenderingServer.xml:2604
msgid "Returns the [Transform] set for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2619
+#: doc/classes/RenderingServer.xml:2615
msgid "Returns the [Transform2D] set for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2632
+#: doc/classes/RenderingServer.xml:2628
msgid "Sets the [Transform] for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2645
+#: doc/classes/RenderingServer.xml:2641
msgid "Sets the [Transform2D] for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2652
+#: doc/classes/RenderingServer.xml:2648
msgid ""
"Creates a skeleton and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all "
@@ -43096,11 +43785,11 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2662
+#: doc/classes/RenderingServer.xml:2658
msgid "Returns the number of bones allocated for this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2669
+#: doc/classes/RenderingServer.xml:2665
msgid ""
"Creates an empty sky and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all [code]sky_*[/"
@@ -43109,13 +43798,13 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2681
+#: doc/classes/RenderingServer.xml:2677
msgid ""
"Sets the material that the sky uses to render the background and reflection "
"maps."
msgstr ""
-#: doc/classes/RenderingServer.xml:2688
+#: doc/classes/RenderingServer.xml:2684
msgid ""
"Creates a spot light and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID can be used in most [code]light_*[/"
@@ -43126,15 +43815,15 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2717
+#: doc/classes/RenderingServer.xml:2713
msgid "Sets a viewport's camera."
msgstr ""
-#: doc/classes/RenderingServer.xml:2728
+#: doc/classes/RenderingServer.xml:2724
msgid "Sets a viewport's canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:2741
+#: doc/classes/RenderingServer.xml:2737
msgid ""
"Copies the viewport to a region of the screen specified by [code]rect[/"
"code]. If [method viewport_set_render_direct_to_screen] is [code]true[/"
@@ -43156,7 +43845,7 @@ msgid ""
"viewport_set_render_direct_to_screen]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2755
+#: doc/classes/RenderingServer.xml:2751
msgid ""
"Creates an empty viewport and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -43165,72 +43854,72 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2767
+#: doc/classes/RenderingServer.xml:2763
msgid ""
"Returns a viewport's render information. For options, see the [enum "
"ViewportRenderInfo] constants."
msgstr ""
-#: doc/classes/RenderingServer.xml:2776
+#: doc/classes/RenderingServer.xml:2772
msgid "Returns the viewport's last rendered frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:2787
+#: doc/classes/RenderingServer.xml:2783
msgid "Detaches a viewport from a canvas and vice versa."
msgstr ""
-#: doc/classes/RenderingServer.xml:2798
+#: doc/classes/RenderingServer.xml:2794
msgid "If [code]true[/code], sets the viewport active, else sets it inactive."
msgstr ""
-#: doc/classes/RenderingServer.xml:2813
+#: doc/classes/RenderingServer.xml:2809
msgid ""
"Sets the stacking order for a viewport's canvas.\n"
"[code]layer[/code] is the actual canvas layer, while [code]sublayer[/code] "
"specifies the stacking order of the canvas among those in the same layer."
msgstr ""
-#: doc/classes/RenderingServer.xml:2827
+#: doc/classes/RenderingServer.xml:2823
msgid "Sets the transformation of a viewport's canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:2838
+#: doc/classes/RenderingServer.xml:2834
msgid ""
"Sets the clear mode of a viewport. See [enum ViewportClearMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2849
+#: doc/classes/RenderingServer.xml:2845
msgid ""
"Sets the debug draw mode of a viewport. See [enum ViewportDebugDraw] for "
"options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2860
+#: doc/classes/RenderingServer.xml:2856
msgid ""
"If [code]true[/code], rendering of a viewport's environment is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:2871
+#: doc/classes/RenderingServer.xml:2867
msgid "Sets the viewport's global transformation matrix."
msgstr ""
-#: doc/classes/RenderingServer.xml:2882
+#: doc/classes/RenderingServer.xml:2878
msgid "If [code]true[/code], the viewport's canvas is not rendered."
msgstr ""
-#: doc/classes/RenderingServer.xml:2893
+#: doc/classes/RenderingServer.xml:2889
msgid "Currently unimplemented in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:2904
+#: doc/classes/RenderingServer.xml:2900
msgid "Sets the anti-aliasing mode. See [enum ViewportMSAA] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2915
+#: doc/classes/RenderingServer.xml:2911
msgid "Sets the viewport's parent to another viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:2926
+#: doc/classes/RenderingServer.xml:2922
msgid ""
"If [code]true[/code], render the contents of the viewport directly to "
"screen. This allows a low-level optimization where you can skip drawing a "
@@ -43246,455 +43935,455 @@ msgid ""
"significantly larger than the window size."
msgstr ""
-#: doc/classes/RenderingServer.xml:2937
+#: doc/classes/RenderingServer.xml:2933
msgid ""
"Sets a viewport's scenario.\n"
"The scenario contains information about the [enum ScenarioDebugMode], "
"environment information, reflection atlas etc."
msgstr ""
-#: doc/classes/RenderingServer.xml:2951
+#: doc/classes/RenderingServer.xml:2947
msgid "Sets the shadow atlas quadrant's subdivision."
msgstr ""
-#: doc/classes/RenderingServer.xml:2962
+#: doc/classes/RenderingServer.xml:2958
msgid ""
"Sets the size of the shadow atlas's images (used for omni and spot lights). "
"The value will be rounded up to the nearest power of 2."
msgstr ""
-#: doc/classes/RenderingServer.xml:2975
+#: doc/classes/RenderingServer.xml:2971
msgid "Sets the viewport's width and height."
msgstr ""
-#: doc/classes/RenderingServer.xml:2986
+#: doc/classes/RenderingServer.xml:2982
msgid ""
"If [code]true[/code], the viewport renders its background as transparent."
msgstr ""
-#: doc/classes/RenderingServer.xml:2997
+#: doc/classes/RenderingServer.xml:2993
msgid ""
"Sets when the viewport should be updated. See [enum ViewportUpdateMode] "
"constants for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:3008
+#: doc/classes/RenderingServer.xml:3004
msgid ""
"If [code]true[/code], the viewport uses augmented or virtual reality "
"technologies. See [XRInterface]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3014
+#: doc/classes/RenderingServer.xml:3010
msgid ""
"If [code]false[/code], disables rendering completely, but the engine logic "
"is still being processed. You can call [method force_draw] to draw a frame "
"even with rendering disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3020
+#: doc/classes/RenderingServer.xml:3016
msgid ""
"Emitted at the end of the frame, after the RenderingServer has finished "
"updating all the Viewports."
msgstr ""
-#: doc/classes/RenderingServer.xml:3025
+#: doc/classes/RenderingServer.xml:3021
msgid ""
"Emitted at the beginning of the frame, before the RenderingServer updates "
"all the Viewports."
msgstr ""
-#: doc/classes/RenderingServer.xml:3031
+#: doc/classes/RenderingServer.xml:3027
msgid "Marks an error that shows that the index array is empty."
msgstr ""
-#: doc/classes/RenderingServer.xml:3034
+#: doc/classes/RenderingServer.xml:3030
msgid "Number of weights/bones per vertex."
msgstr ""
-#: doc/classes/RenderingServer.xml:3037
+#: doc/classes/RenderingServer.xml:3033
msgid "The minimum Z-layer for canvas items."
msgstr ""
-#: doc/classes/RenderingServer.xml:3040
+#: doc/classes/RenderingServer.xml:3036
msgid "The maximum Z-layer for canvas items."
msgstr ""
-#: doc/classes/RenderingServer.xml:3043
+#: doc/classes/RenderingServer.xml:3039
msgid ""
"Max number of glow levels that can be used with glow post-process effect."
msgstr ""
-#: doc/classes/RenderingServer.xml:3046
+#: doc/classes/RenderingServer.xml:3042
msgid "Unused enum in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:3067
+#: doc/classes/RenderingServer.xml:3063
msgid "Shader is a 3D shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3070
+#: doc/classes/RenderingServer.xml:3066
msgid "Shader is a 2D shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3073
+#: doc/classes/RenderingServer.xml:3069
msgid "Shader is a particle shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3076
+#: doc/classes/RenderingServer.xml:3072
msgid "Shader is a sky shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3079
+#: doc/classes/RenderingServer.xml:3075
msgid "Represents the size of the [enum ShaderMode] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3082
+#: doc/classes/RenderingServer.xml:3078
msgid "The minimum renderpriority of all materials."
msgstr ""
-#: doc/classes/RenderingServer.xml:3085
+#: doc/classes/RenderingServer.xml:3081
msgid "The maximum renderpriority of all materials."
msgstr ""
-#: doc/classes/RenderingServer.xml:3088
+#: doc/classes/RenderingServer.xml:3084
msgid "Array is a vertex array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3091
+#: doc/classes/RenderingServer.xml:3087
msgid "Array is a normal array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3094
+#: doc/classes/RenderingServer.xml:3090
msgid "Array is a tangent array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3097
+#: doc/classes/RenderingServer.xml:3093
msgid "Array is a color array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3100
+#: doc/classes/RenderingServer.xml:3096
msgid "Array is an UV coordinates array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3103
+#: doc/classes/RenderingServer.xml:3099
msgid "Array is an UV coordinates array for the second UV coordinates."
msgstr ""
-#: doc/classes/RenderingServer.xml:3106
+#: doc/classes/RenderingServer.xml:3102
msgid "Array contains bone information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3109
+#: doc/classes/RenderingServer.xml:3105
msgid "Array is weight information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3112
+#: doc/classes/RenderingServer.xml:3108
msgid "Array is index array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3118
+#: doc/classes/RenderingServer.xml:3114
msgid "Flag used to mark a vertex array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3121
+#: doc/classes/RenderingServer.xml:3117
msgid "Flag used to mark a normal array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3124
+#: doc/classes/RenderingServer.xml:3120
msgid "Flag used to mark a tangent array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3127
+#: doc/classes/RenderingServer.xml:3123
msgid "Flag used to mark a color array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3130
+#: doc/classes/RenderingServer.xml:3126
msgid "Flag used to mark an UV coordinates array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3133
+#: doc/classes/RenderingServer.xml:3129
msgid ""
"Flag used to mark an UV coordinates array for the second UV coordinates."
msgstr ""
-#: doc/classes/RenderingServer.xml:3136
+#: doc/classes/RenderingServer.xml:3132
msgid "Flag used to mark a bone information array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3139
+#: doc/classes/RenderingServer.xml:3135
msgid "Flag used to mark a weights array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3142
+#: doc/classes/RenderingServer.xml:3138
msgid "Flag used to mark an index array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3171
+#: doc/classes/RenderingServer.xml:3167
msgid "Primitive to draw consists of points."
msgstr ""
-#: doc/classes/RenderingServer.xml:3174
+#: doc/classes/RenderingServer.xml:3170
msgid "Primitive to draw consists of lines."
msgstr ""
-#: doc/classes/RenderingServer.xml:3177
+#: doc/classes/RenderingServer.xml:3173
msgid "Primitive to draw consists of a line strip from start to end."
msgstr ""
-#: doc/classes/RenderingServer.xml:3180
+#: doc/classes/RenderingServer.xml:3176
msgid "Primitive to draw consists of triangles."
msgstr ""
-#: doc/classes/RenderingServer.xml:3183
+#: doc/classes/RenderingServer.xml:3179
msgid ""
"Primitive to draw consists of a triangle strip (the last 3 vertices are "
"always combined to make a triangle)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3186
+#: doc/classes/RenderingServer.xml:3182
msgid "Represents the size of the [enum PrimitiveType] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3195
+#: doc/classes/RenderingServer.xml:3191
msgid "Use [Transform2D] to store MultiMesh transform."
msgstr ""
-#: doc/classes/RenderingServer.xml:3198
+#: doc/classes/RenderingServer.xml:3194
msgid "Use [Transform] to store MultiMesh transform."
msgstr ""
-#: doc/classes/RenderingServer.xml:3201
+#: doc/classes/RenderingServer.xml:3197
msgid "Is a directional (sun) light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3204
+#: doc/classes/RenderingServer.xml:3200
msgid "Is an omni light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3207
+#: doc/classes/RenderingServer.xml:3203
msgid "Is a spot light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3210
+#: doc/classes/RenderingServer.xml:3206
msgid "The light's energy."
msgstr ""
-#: doc/classes/RenderingServer.xml:3215
+#: doc/classes/RenderingServer.xml:3211
msgid "The light's influence on specularity."
msgstr ""
-#: doc/classes/RenderingServer.xml:3218
+#: doc/classes/RenderingServer.xml:3214
msgid "The light's range."
msgstr ""
-#: doc/classes/RenderingServer.xml:3221
+#: doc/classes/RenderingServer.xml:3217
msgid ""
"The size of the light when using spot light or omni light. The angular size "
"of the light when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3224
+#: doc/classes/RenderingServer.xml:3220
msgid "The light's attenuation."
msgstr ""
-#: doc/classes/RenderingServer.xml:3227
+#: doc/classes/RenderingServer.xml:3223
msgid "The spotlight's angle."
msgstr ""
-#: doc/classes/RenderingServer.xml:3230
+#: doc/classes/RenderingServer.xml:3226
msgid "The spotlight's attenuation."
msgstr ""
-#: doc/classes/RenderingServer.xml:3233
+#: doc/classes/RenderingServer.xml:3229
msgid "Max distance that shadows will be rendered."
msgstr ""
-#: doc/classes/RenderingServer.xml:3236
+#: doc/classes/RenderingServer.xml:3232
msgid "Proportion of shadow atlas occupied by the first split."
msgstr ""
-#: doc/classes/RenderingServer.xml:3239
+#: doc/classes/RenderingServer.xml:3235
msgid "Proportion of shadow atlas occupied by the second split."
msgstr ""
-#: doc/classes/RenderingServer.xml:3242
+#: doc/classes/RenderingServer.xml:3238
msgid ""
"Proportion of shadow atlas occupied by the third split. The fourth split "
"occupies the rest."
msgstr ""
-#: doc/classes/RenderingServer.xml:3245
+#: doc/classes/RenderingServer.xml:3241
msgid ""
"Proportion of shadow max distance where the shadow will start to fade out."
msgstr ""
-#: doc/classes/RenderingServer.xml:3248
+#: doc/classes/RenderingServer.xml:3244
msgid ""
"Normal bias used to offset shadow lookup by object normal. Can be used to "
"fix self-shadowing artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3251
+#: doc/classes/RenderingServer.xml:3247
msgid "Bias the shadow lookup to fix self-shadowing artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3257
+#: doc/classes/RenderingServer.xml:3253
msgid ""
"Blurs the edges of the shadow. Can be used to hide pixel artifacts in low "
"resolution shadow maps. A high value can make shadows appear grainy and can "
"cause other unwanted artifacts. Try to keep as near default as possible."
msgstr ""
-#: doc/classes/RenderingServer.xml:3262
+#: doc/classes/RenderingServer.xml:3258
msgid "Represents the size of the [enum LightParam] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3265
+#: doc/classes/RenderingServer.xml:3267
msgid "Use a dual paraboloid shadow map for omni lights."
msgstr ""
-#: doc/classes/RenderingServer.xml:3268
+#: doc/classes/RenderingServer.xml:3270
msgid ""
"Use a cubemap shadow map for omni lights. Slower but better quality than "
"dual paraboloid."
msgstr ""
-#: doc/classes/RenderingServer.xml:3271
+#: doc/classes/RenderingServer.xml:3273
msgid "Use orthogonal shadow projection for directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3274
+#: doc/classes/RenderingServer.xml:3276
msgid "Use 2 splits for shadow projection when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3277
+#: doc/classes/RenderingServer.xml:3279
msgid "Use 4 splits for shadow projection when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3280
+#: doc/classes/RenderingServer.xml:3282
msgid ""
"Keeps shadows stable as camera moves but has lower effective resolution."
msgstr ""
-#: doc/classes/RenderingServer.xml:3283
+#: doc/classes/RenderingServer.xml:3285
msgid ""
"Optimize use of shadow maps, increasing the effective resolution. But may "
"result in shadows moving or flickering slightly."
msgstr ""
-#: doc/classes/RenderingServer.xml:3286
+#: doc/classes/RenderingServer.xml:3288
msgid "Reflection probe will update reflections once and then stop."
msgstr ""
-#: doc/classes/RenderingServer.xml:3289
+#: doc/classes/RenderingServer.xml:3291
msgid ""
"Reflection probe will update each frame. This mode is necessary to capture "
"moving objects."
msgstr ""
-#: doc/classes/RenderingServer.xml:3302
+#: doc/classes/RenderingServer.xml:3310
msgid "Draw particles in the order that they appear in the particles array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3305
+#: doc/classes/RenderingServer.xml:3313
msgid "Sort particles based on their lifetime."
msgstr ""
-#: doc/classes/RenderingServer.xml:3308
+#: doc/classes/RenderingServer.xml:3316
msgid "Sort particles based on their distance to the camera."
msgstr ""
-#: doc/classes/RenderingServer.xml:3311
+#: doc/classes/RenderingServer.xml:3319
msgid "Do not update the viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:3314
+#: doc/classes/RenderingServer.xml:3322
msgid "Update the viewport once then set to disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3317
+#: doc/classes/RenderingServer.xml:3325
msgid "Update the viewport whenever it is visible."
msgstr ""
-#: doc/classes/RenderingServer.xml:3322
+#: doc/classes/RenderingServer.xml:3330
msgid "Always update the viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:3325
+#: doc/classes/RenderingServer.xml:3333
msgid "The viewport is always cleared before drawing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3328
+#: doc/classes/RenderingServer.xml:3336
msgid "The viewport is never cleared before drawing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3331
+#: doc/classes/RenderingServer.xml:3339
msgid ""
"The viewport is cleared once, then the clear mode is set to [constant "
"VIEWPORT_CLEAR_NEVER]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3334
+#: doc/classes/RenderingServer.xml:3342
msgid "Multisample antialiasing is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3337
+#: doc/classes/RenderingServer.xml:3345
msgid "Multisample antialiasing uses 2 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3340
+#: doc/classes/RenderingServer.xml:3348
msgid "Multisample antialiasing uses 4 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3343
+#: doc/classes/RenderingServer.xml:3351
msgid "Multisample antialiasing uses 8 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3346
+#: doc/classes/RenderingServer.xml:3354
msgid "Multisample antialiasing uses 16 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3357
+#: doc/classes/RenderingServer.xml:3365
msgid "Number of objects drawn in a single frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3360
+#: doc/classes/RenderingServer.xml:3368
msgid "Number of vertices drawn in a single frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3363
+#: doc/classes/RenderingServer.xml:3371
msgid "Number of material changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3366
+#: doc/classes/RenderingServer.xml:3374
msgid "Number of shader changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3369
+#: doc/classes/RenderingServer.xml:3377
msgid "Number of surface changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3372
+#: doc/classes/RenderingServer.xml:3380
msgid "Number of draw calls during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3375
+#: doc/classes/RenderingServer.xml:3383
msgid "Represents the size of the [enum ViewportRenderInfo] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3378
+#: doc/classes/RenderingServer.xml:3386
msgid "Debug draw is disabled. Default setting."
msgstr ""
-#: doc/classes/RenderingServer.xml:3381 doc/classes/Viewport.xml:348
+#: doc/classes/RenderingServer.xml:3389 doc/classes/Viewport.xml:348
msgid "Objects are displayed without light information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3384
+#: doc/classes/RenderingServer.xml:3392
msgid "Objects are displayed with only light information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3387 doc/classes/Viewport.xml:353
+#: doc/classes/RenderingServer.xml:3395 doc/classes/Viewport.xml:353
msgid ""
"Objects are displayed semi-transparent with additive blending so you can see "
"where they are drawing over top of one another. A higher overdraw means you "
@@ -43702,41 +44391,41 @@ msgid ""
"others."
msgstr ""
-#: doc/classes/RenderingServer.xml:3390
+#: doc/classes/RenderingServer.xml:3398
msgid "Debug draw draws objects in wireframe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3393
+#: doc/classes/RenderingServer.xml:3401
msgid ""
"Normal buffer is drawn instead of regular scene so you can see the per-pixel "
"normals that will be used by post-processing effects."
msgstr ""
-#: doc/classes/RenderingServer.xml:3396 doc/classes/Viewport.xml:361
+#: doc/classes/RenderingServer.xml:3404 doc/classes/Viewport.xml:361
msgid "Objects are displayed with only the albedo value from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3399 doc/classes/Viewport.xml:364
+#: doc/classes/RenderingServer.xml:3407 doc/classes/Viewport.xml:364
msgid "Objects are displayed with only the lighting value from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3402 doc/classes/Viewport.xml:367
+#: doc/classes/RenderingServer.xml:3410 doc/classes/Viewport.xml:367
msgid "Objects are displayed with only the emission color from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3405 doc/classes/Viewport.xml:370
+#: doc/classes/RenderingServer.xml:3413 doc/classes/Viewport.xml:370
msgid ""
"Draws the shadow atlas that stores shadows from [OmniLight3D]s and "
"[SpotLight3D]s in the upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3408 doc/classes/Viewport.xml:373
+#: doc/classes/RenderingServer.xml:3416 doc/classes/Viewport.xml:373
msgid ""
"Draws the shadow atlas that stores shadows from [DirectionalLight3D]s in the "
"upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3413
+#: doc/classes/RenderingServer.xml:3421
msgid ""
"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 "
@@ -43744,21 +44433,14 @@ msgid ""
"your [WorldEnvironment]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3416 doc/classes/Viewport.xml:381
-msgid ""
-"Draws the roughness limiter post process over the Viewport so you can see "
-"where it has an effect. It must be enabled in [member ProjectSettings."
-"rendering/quality/screen_filters/screen_space_roughness_limiter] to work."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:3419
+#: doc/classes/RenderingServer.xml:3424
msgid ""
"Colors each PSSM split for the [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."
msgstr ""
-#: doc/classes/RenderingServer.xml:3424
+#: doc/classes/RenderingServer.xml:3435
msgid ""
"Uses high quality importance sampling to process the radiance map. In "
"general, this results in much higher quality than [constant Sky."
@@ -43769,7 +44451,7 @@ msgid ""
"ggx_samples]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3427
+#: doc/classes/RenderingServer.xml:3438
msgid ""
"Uses the fast filtering algorithm to process the radiance map. In general "
"this results in lower quality, but substantially faster run times.\n"
@@ -43777,347 +44459,347 @@ msgid ""
"[member Sky.radiance_size] must be set to [constant Sky.RADIANCE_SIZE_256]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3431
+#: doc/classes/RenderingServer.xml:3442
msgid "Use the clear color as background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3434
+#: doc/classes/RenderingServer.xml:3445
msgid "Use a specified color as the background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3437
+#: doc/classes/RenderingServer.xml:3448
msgid "Use a sky resource for the background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3440
+#: doc/classes/RenderingServer.xml:3451
msgid ""
"Use a specified canvas layer as the background. This can be useful for "
"instantiating a 2D scene in a 3D world."
msgstr ""
-#: doc/classes/RenderingServer.xml:3443
+#: doc/classes/RenderingServer.xml:3454
msgid ""
"Do not clear the background, use whatever was rendered last frame as the "
"background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3449
+#: doc/classes/RenderingServer.xml:3460
msgid "Represents the size of the [enum EnvironmentBG] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3488
+#: doc/classes/RenderingServer.xml:3499
msgid "Output color as they came in."
msgstr ""
-#: doc/classes/RenderingServer.xml:3491
+#: doc/classes/RenderingServer.xml:3502
msgid "Use the Reinhard tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3494
+#: doc/classes/RenderingServer.xml:3505
msgid "Use the filmic tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3497
+#: doc/classes/RenderingServer.xml:3508
msgid "Use the ACES tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3508
+#: doc/classes/RenderingServer.xml:3519
msgid "Disables the blur set for SSAO. Will make SSAO look noisier."
msgstr ""
-#: doc/classes/RenderingServer.xml:3511
+#: doc/classes/RenderingServer.xml:3522
msgid "Perform a 1x1 blur on the SSAO output."
msgstr ""
-#: doc/classes/RenderingServer.xml:3514
+#: doc/classes/RenderingServer.xml:3525
msgid "Performs a 2x2 blur on the SSAO output."
msgstr ""
-#: doc/classes/RenderingServer.xml:3517
+#: doc/classes/RenderingServer.xml:3528
msgid "Performs a 3x3 blur on the SSAO output. Use this for smoothest SSAO."
msgstr ""
-#: doc/classes/RenderingServer.xml:3520
+#: doc/classes/RenderingServer.xml:3531
msgid "Lowest quality of screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3523
+#: doc/classes/RenderingServer.xml:3534
msgid "Medium quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3526
+#: doc/classes/RenderingServer.xml:3537
msgid "High quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3529
+#: doc/classes/RenderingServer.xml:3540
msgid "Highest quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3540
+#: doc/classes/RenderingServer.xml:3551
msgid ""
"Lowest quality DOF blur. This is the fastest setting, but you may be able to "
"see filtering artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3543
+#: doc/classes/RenderingServer.xml:3554
msgid "Low quality DOF blur."
msgstr ""
-#: doc/classes/RenderingServer.xml:3546
+#: doc/classes/RenderingServer.xml:3557
msgid "Medium quality DOF blur."
msgstr ""
-#: doc/classes/RenderingServer.xml:3549
+#: doc/classes/RenderingServer.xml:3560
msgid ""
"Highest quality DOF blur. Results in the smoothest looking blur by taking "
"the most samples, but is also significantly slower."
msgstr ""
-#: doc/classes/RenderingServer.xml:3552
+#: doc/classes/RenderingServer.xml:3563
msgid ""
"Calculate the DOF blur using a box filter. The fastest option, but results "
"in obvious lines in blur pattern."
msgstr ""
-#: doc/classes/RenderingServer.xml:3555
+#: doc/classes/RenderingServer.xml:3566
msgid "Calculates DOF blur using a hexagon shaped filter."
msgstr ""
-#: doc/classes/RenderingServer.xml:3558
+#: doc/classes/RenderingServer.xml:3569
msgid ""
"Calculates DOF blur using a circle shaped filter. Best quality and most "
"realistic, but slowest. Use only for areas where a lot of performance can be "
"dedicated to post-processing (e.g. cutscenes)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3573
+#: doc/classes/RenderingServer.xml:3584
msgid "Do not use a debug mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:3576
+#: doc/classes/RenderingServer.xml:3587
msgid "Draw all objects as wireframe models."
msgstr ""
-#: doc/classes/RenderingServer.xml:3579
+#: doc/classes/RenderingServer.xml:3590
msgid ""
"Draw all objects in a way that displays how much overdraw is occurring. "
"Overdraw occurs when a section of pixels is drawn and shaded and then "
"another object covers it up. To optimize a scene, you should reduce overdraw."
msgstr ""
-#: doc/classes/RenderingServer.xml:3582
+#: doc/classes/RenderingServer.xml:3593
msgid ""
"Draw all objects without shading. Equivalent to setting all objects shaders "
"to [code]unshaded[/code]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3585
+#: doc/classes/RenderingServer.xml:3596
msgid "The instance does not have a type."
msgstr ""
-#: doc/classes/RenderingServer.xml:3588
+#: doc/classes/RenderingServer.xml:3599
msgid "The instance is a mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:3591
+#: doc/classes/RenderingServer.xml:3602
msgid "The instance is a multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:3594
+#: doc/classes/RenderingServer.xml:3605
msgid "The instance is an immediate geometry."
msgstr ""
-#: doc/classes/RenderingServer.xml:3597
+#: doc/classes/RenderingServer.xml:3608
msgid "The instance is a particle emitter."
msgstr ""
-#: doc/classes/RenderingServer.xml:3600
+#: doc/classes/RenderingServer.xml:3611
msgid "The instance is a light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3603
+#: doc/classes/RenderingServer.xml:3614
msgid "The instance is a reflection probe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3606
+#: doc/classes/RenderingServer.xml:3617
msgid "The instance is a decal."
msgstr ""
-#: doc/classes/RenderingServer.xml:3609
+#: doc/classes/RenderingServer.xml:3620
msgid "The instance is a GI probe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3612
+#: doc/classes/RenderingServer.xml:3623
msgid "The instance is a lightmap."
msgstr ""
-#: doc/classes/RenderingServer.xml:3615
+#: doc/classes/RenderingServer.xml:3626
msgid "Represents the size of the [enum InstanceType] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3618
+#: doc/classes/RenderingServer.xml:3629
msgid ""
"A combination of the flags of geometry instances (mesh, multimesh, immediate "
"and particles)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3621
+#: doc/classes/RenderingServer.xml:3632
msgid "Allows the instance to be used in baked lighting."
msgstr ""
-#: doc/classes/RenderingServer.xml:3624
+#: doc/classes/RenderingServer.xml:3635
msgid "Allows the instance to be used with dynamic global illumination."
msgstr ""
-#: doc/classes/RenderingServer.xml:3627
+#: doc/classes/RenderingServer.xml:3638
msgid "When set, manually requests to draw geometry on next frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3630
+#: doc/classes/RenderingServer.xml:3641
msgid "Represents the size of the [enum InstanceFlags] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3633
+#: doc/classes/RenderingServer.xml:3644
msgid "Disable shadows from this instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:3636
+#: doc/classes/RenderingServer.xml:3647
msgid "Cast shadows from this instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:3639
+#: doc/classes/RenderingServer.xml:3650
msgid ""
"Disable backface culling when rendering the shadow of the object. This is "
"slightly slower but may result in more correct shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3642
+#: doc/classes/RenderingServer.xml:3653
msgid ""
"Only render the shadows from the object. The object itself will not be drawn."
msgstr ""
-#: doc/classes/RenderingServer.xml:3645
+#: doc/classes/RenderingServer.xml:3656
msgid "The nine patch gets stretched where needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3648
+#: doc/classes/RenderingServer.xml:3659
msgid "The nine patch gets filled with tiles where needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3651
+#: doc/classes/RenderingServer.xml:3662
msgid ""
"The nine patch gets filled with tiles where needed and stretches them a bit "
"if needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3654
+#: doc/classes/RenderingServer.xml:3665
msgid "Uses the default filter mode for this [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3666 doc/classes/Viewport.xml:399
+#: doc/classes/RenderingServer.xml:3677 doc/classes/Viewport.xml:402
msgid ""
"The texture filter blends between the nearest 4 pixels and between the "
"nearest 2 mipmaps."
msgstr ""
-#: doc/classes/RenderingServer.xml:3675
+#: doc/classes/RenderingServer.xml:3686
msgid "Max value for [enum CanvasItemTextureFilter] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3678
+#: doc/classes/RenderingServer.xml:3689
msgid "Uses the default repeat mode for this [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3681 doc/classes/Viewport.xml:405
+#: doc/classes/RenderingServer.xml:3692 doc/classes/Viewport.xml:408
msgid ""
"Disables textures repeating. Instead, when reading UVs outside the 0-1 "
"range, the value will be clamped to the edge of the texture, resulting in a "
"stretched out look at the borders of the texture."
msgstr ""
-#: doc/classes/RenderingServer.xml:3687 doc/classes/Viewport.xml:411
+#: doc/classes/RenderingServer.xml:3698 doc/classes/Viewport.xml:414
msgid ""
"Flip the texture when repeating so that the edge lines up instead of "
"abruptly changing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3690
+#: doc/classes/RenderingServer.xml:3701
msgid "Max value for [enum CanvasItemTextureRepeat] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3693
+#: doc/classes/RenderingServer.xml:3704
msgid "Adds light color additive to the canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:3696
+#: doc/classes/RenderingServer.xml:3707
msgid "Adds light color subtractive to the canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:3699
+#: doc/classes/RenderingServer.xml:3710
msgid "The light adds color depending on transparency."
msgstr ""
-#: doc/classes/RenderingServer.xml:3702
+#: doc/classes/RenderingServer.xml:3713
msgid "The light adds color depending on mask."
msgstr ""
-#: doc/classes/RenderingServer.xml:3705
+#: doc/classes/RenderingServer.xml:3716
msgid "Do not apply a filter to canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3708
+#: doc/classes/RenderingServer.xml:3719
msgid "Use PCF5 filtering to filter canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3711
+#: doc/classes/RenderingServer.xml:3722
msgid "Use PCF13 filtering to filter canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3714
+#: doc/classes/RenderingServer.xml:3725
msgid "Max value of the [enum CanvasLightShadowFilter] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3717
+#: doc/classes/RenderingServer.xml:3728
msgid "Culling of the canvas occluder is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3720
+#: doc/classes/RenderingServer.xml:3731
msgid "Culling of the canvas occluder is clockwise."
msgstr ""
-#: doc/classes/RenderingServer.xml:3723
+#: doc/classes/RenderingServer.xml:3734
msgid "Culling of the canvas occluder is counterclockwise."
msgstr ""
-#: doc/classes/RenderingServer.xml:3784
+#: doc/classes/RenderingServer.xml:3795
msgid "The amount of objects in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3787
+#: doc/classes/RenderingServer.xml:3798
msgid "The amount of vertices in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3790
+#: doc/classes/RenderingServer.xml:3801
msgid "The amount of modified materials in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3793
+#: doc/classes/RenderingServer.xml:3804
msgid "The amount of shader rebinds in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3796
+#: doc/classes/RenderingServer.xml:3807
msgid "The amount of surface changes in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3799
+#: doc/classes/RenderingServer.xml:3810
msgid "The amount of draw calls in frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3814
+#: doc/classes/RenderingServer.xml:3825
msgid "Hardware supports shaders. This enum is currently unused in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:3817
+#: doc/classes/RenderingServer.xml:3828
msgid ""
"Hardware supports multithreading. This enum is currently unused in Godot 3.x."
msgstr ""
@@ -44129,13 +44811,13 @@ msgstr ""
#: doc/classes/Resource.xml:7
msgid ""
"Resource is the base class for all Godot-specific resource types, serving "
-"primarily as data containers. They are reference counted and freed when no "
-"longer in use. They are also cached once loaded from disk, so that any "
-"further attempts to load a resource from a given path will return the same "
-"reference (all this in contrast to a [Node], which is not reference counted "
-"and can be instanced from disk as many times as desired). Resources can be "
-"saved externally on disk or bundled into another object, such as a [Node] or "
-"another resource."
+"primarily as data containers. Unlike [Object]s, they are reference-counted "
+"and freed when no longer in use. They are also cached once loaded from disk, "
+"so that any further attempts to load a resource from a given path will "
+"return the same reference (all this in contrast to a [Node], which is not "
+"reference-counted and can be instanced from disk as many times as desired). "
+"Resources can be saved externally on disk or bundled into another object, "
+"such as a [Node] or another resource."
msgstr ""
#: doc/classes/Resource.xml:10
@@ -44144,34 +44826,38 @@ msgid ""
"resources.html"
msgstr ""
-#: doc/classes/Resource.xml:17
+#: doc/classes/Resource.xml:18
msgid ""
"Virtual function which can be overridden to customize the behavior value of "
"[method setup_local_to_scene]."
msgstr ""
-#: doc/classes/Resource.xml:26
+#: doc/classes/Resource.xml:27
msgid ""
"Duplicates the resource, returning a new resource. By default, sub-resources "
-"are shared between resource copies for efficiency, this can be changed by "
-"passing [code]true[/code] to the [code]subresources[/code] argument."
+"are shared between resource copies for efficiency. This can be changed by "
+"passing [code]true[/code] to the [code]subresources[/code] argument which "
+"will copy the subresources.\n"
+"[b]Note:[/b] If [code]subresources[/code] is [code]true[/code], this method "
+"will only perform a shallow copy. Nested resources within subresources will "
+"not be duplicated and will still be shared."
msgstr ""
-#: doc/classes/Resource.xml:33
+#: doc/classes/Resource.xml:35
msgid ""
"If [member resource_local_to_scene] is enabled and the resource was loaded "
"from a [PackedScene] instantiation, returns the local scene where this "
"resource's unique copy is in use. Otherwise, returns [code]null[/code]."
msgstr ""
-#: doc/classes/Resource.xml:40
+#: doc/classes/Resource.xml:42
msgid ""
"Returns the RID of the resource (or an empty RID). Many resources (such as "
"[Texture2D], [Mesh], etc) are high-level abstractions of resources stored in "
"a server, so this function will return the original RID."
msgstr ""
-#: doc/classes/Resource.xml:47
+#: doc/classes/Resource.xml:49
msgid ""
"This method is called when a resource with [member resource_local_to_scene] "
"enabled is loaded from a [PackedScene] instantiation. Its behavior can be "
@@ -44181,7 +44867,7 @@ msgid ""
"local viewport."
msgstr ""
-#: doc/classes/Resource.xml:57
+#: doc/classes/Resource.xml:59
msgid ""
"Sets the path of the resource, potentially overriding an existing cache "
"entry for this path. This differs from setting [member resource_path], as "
@@ -44189,25 +44875,25 @@ msgid ""
"given path."
msgstr ""
-#: doc/classes/Resource.xml:63
+#: doc/classes/Resource.xml:65
msgid ""
"If [code]true[/code], the resource will be made unique in each instance of "
"its local scene. It can thus be modified in a scene instance without "
"impacting other instances of that same scene."
msgstr ""
-#: doc/classes/Resource.xml:66
+#: doc/classes/Resource.xml:68
msgid "The name of the resource. This is an optional identifier."
msgstr ""
-#: doc/classes/Resource.xml:69
+#: doc/classes/Resource.xml:71
msgid ""
"The path to the resource. In case it has its own file, it will return its "
"filepath. If it's tied to the scene, it will return the scene's path, "
"followed by the resource's index."
msgstr ""
-#: doc/classes/Resource.xml:75
+#: doc/classes/Resource.xml:77
msgid "Emitted whenever the resource changes."
msgstr ""
@@ -45026,11 +45712,11 @@ msgid ""
"global coordinate system, but is centered at the object's origin."
msgstr ""
-#: doc/classes/RigidBody2D.xml:87
+#: doc/classes/RigidBody2D.xml:87 doc/classes/RigidBody3D.xml:99
msgid ""
-"Returns a list of the bodies colliding with this one. Use [member "
-"contacts_reported] to set the maximum number reported. You must also set "
-"[member contact_monitor] to [code]true[/code].\n"
+"Returns a list of the bodies colliding with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
"For performance, list of collisions is updated once per frame and before the "
"physics step. Consider using signals instead."
@@ -45067,7 +45753,7 @@ msgstr ""
msgid "The body's total applied torque."
msgstr ""
-#: doc/classes/RigidBody2D.xml:130 doc/classes/RigidBody3D.xml:150
+#: doc/classes/RigidBody2D.xml:130 doc/classes/RigidBody3D.xml:157
msgid ""
"If [code]true[/code], the body can enter sleep mode when there is no "
"movement. See [member sleeping]."
@@ -45079,11 +45765,17 @@ msgid ""
"another RigidBody2D. See also [member contacts_reported]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:136
-msgid "The maximum number of contacts to report."
+#: doc/classes/RigidBody2D.xml:136 doc/classes/RigidBody3D.xml:163
+msgid ""
+"The maximum number of contacts that will be recorded. Requires [member "
+"contact_monitor] to be set to [code]true[/code].\n"
+"[b]Note:[/b] The number of contacts is different from the number of "
+"collisions. Collisions between parallel edges will result in two contacts "
+"(one at each end), and collisions between parallel faces will result in four "
+"contacts (one at each corner)."
msgstr ""
-#: doc/classes/RigidBody2D.xml:139
+#: doc/classes/RigidBody2D.xml:140
msgid ""
"Continuous collision detection mode.\n"
"Continuous collision detection tries to predict where a moving body will "
@@ -45093,21 +45785,21 @@ msgid ""
"methods are available. See [enum CCDMode] for details."
msgstr ""
-#: doc/classes/RigidBody2D.xml:143
+#: doc/classes/RigidBody2D.xml:144
msgid ""
"If [code]true[/code], internal force integration is disabled for this body. "
"Aside from collision response, the body will only move as determined by the "
"[method _integrate_forces] function."
msgstr ""
-#: doc/classes/RigidBody2D.xml:146
+#: doc/classes/RigidBody2D.xml:147
msgid ""
"Multiplies the gravity applied to the body. The body's gravity is calculated "
"from the [b]Default Gravity[/b] value in [b]Project > Project Settings > "
"Physics > 2d[/b] and/or any additional gravity vector applied by [Area2D]s."
msgstr ""
-#: doc/classes/RigidBody2D.xml:149
+#: doc/classes/RigidBody2D.xml:150
msgid ""
"The body's moment of inertia. This is like mass, but for rotation: it "
"determines how much torque it takes to rotate the body. The moment of "
@@ -45116,18 +45808,18 @@ msgid ""
"automatically computing it."
msgstr ""
-#: doc/classes/RigidBody2D.xml:152
+#: doc/classes/RigidBody2D.xml:153
msgid ""
"Damps the body's [member linear_velocity]. If [code]-1[/code], the body will "
"use the [b]Default Linear Damp[/b] in [b]Project > Project Settings > "
"Physics > 2d[/b]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:161
+#: doc/classes/RigidBody2D.xml:162
msgid "The body's mode. See [enum Mode] for possible values."
msgstr ""
-#: doc/classes/RigidBody2D.xml:164 doc/classes/RigidBody3D.xml:181
+#: doc/classes/RigidBody2D.xml:165 doc/classes/RigidBody3D.xml:189
#: doc/classes/StaticBody2D.xml:22 doc/classes/StaticBody3D.xml:22
msgid ""
"The physics material override for the body.\n"
@@ -45135,50 +45827,50 @@ msgid ""
"other physics material, such as an inherited one."
msgstr ""
-#: doc/classes/RigidBody2D.xml:168 doc/classes/RigidBody3D.xml:185
+#: doc/classes/RigidBody2D.xml:169 doc/classes/RigidBody3D.xml:193
msgid ""
"If [code]true[/code], the body will not move and will not calculate forces "
"until woken up by another body through, for example, a collision, or by "
"using the [method apply_impulse] or [method add_force] methods."
msgstr ""
-#: doc/classes/RigidBody2D.xml:171
+#: doc/classes/RigidBody2D.xml:172
msgid ""
"The body's weight based on its mass and the [b]Default Gravity[/b] value in "
"[b]Project > Project Settings > Physics > 2d[/b]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:179
+#: doc/classes/RigidBody2D.xml:180 doc/classes/RigidBody3D.xml:204
msgid ""
-"Emitted when a body enters into contact with this one. [member "
-"contact_monitor] must be [code]true[/code] and [member contacts_reported] "
-"greater than [code]0[/code]."
+"Emitted when a body enters into contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:186
+#: doc/classes/RigidBody2D.xml:187
msgid ""
-"Emitted when a body exits contact with this one. [member contact_monitor] "
-"must be [code]true[/code] and [member contacts_reported] greater than "
-"[code]0[/code]."
+"Emitted when a body exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:199
+#: doc/classes/RigidBody2D.xml:200
msgid ""
"Emitted when a body enters into contact with this one. Reports colliding "
"shape information. See [CollisionObject2D] for shape index information. "
-"[member contact_monitor] must be [code]true[/code] and [member "
-"contacts_reported] greater than [code]0[/code]."
+"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:212
+#: doc/classes/RigidBody2D.xml:213
msgid ""
"Emitted when a body shape exits contact with this one. Reports colliding "
"shape information. See [CollisionObject2D] for shape index information. "
-"[member contact_monitor] must be [code]true[/code] and [member "
-"contacts_reported] greater than [code]0[/code]."
+"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:217 doc/classes/RigidBody3D.xml:236
+#: doc/classes/RigidBody2D.xml:218 doc/classes/RigidBody3D.xml:244
msgid ""
"Emitted when the physics engine changes the body's sleeping state.\n"
"[b]Note:[/b] Changing the value [member sleeping] will not trigger this "
@@ -45186,41 +45878,41 @@ msgid ""
"engine or [code]emit_signal(\"sleeping_state_changed\")[/code] is used."
msgstr ""
-#: doc/classes/RigidBody2D.xml:224
+#: doc/classes/RigidBody2D.xml:225
msgid ""
"Rigid mode. The body behaves as a physical object. It collides with other "
"bodies and responds to forces applied to it. This is the default mode."
msgstr ""
-#: doc/classes/RigidBody2D.xml:227
+#: doc/classes/RigidBody2D.xml:228
msgid "Static mode. The body behaves like a [StaticBody2D] and does not move."
msgstr ""
-#: doc/classes/RigidBody2D.xml:230
+#: doc/classes/RigidBody2D.xml:231
msgid ""
"Character mode. Similar to [constant MODE_RIGID], but the body can not "
"rotate."
msgstr ""
-#: doc/classes/RigidBody2D.xml:233
+#: doc/classes/RigidBody2D.xml:234
msgid ""
"Kinematic mode. The body behaves like a [KinematicBody2D], and must be moved "
"by code."
msgstr ""
-#: doc/classes/RigidBody2D.xml:236
+#: doc/classes/RigidBody2D.xml:237
msgid ""
"Continuous collision detection disabled. This is the fastest way to detect "
"body collisions, but can miss small, fast-moving objects."
msgstr ""
-#: doc/classes/RigidBody2D.xml:239
+#: doc/classes/RigidBody2D.xml:240
msgid ""
"Continuous collision detection enabled using raycasting. This is faster than "
"shapecasting but less precise."
msgstr ""
-#: doc/classes/RigidBody2D.xml:242
+#: doc/classes/RigidBody2D.xml:243
msgid ""
"Continuous collision detection enabled using shapecasting. This is the "
"slowest CCD method and the most precise."
@@ -45306,42 +45998,31 @@ msgid ""
"locked."
msgstr ""
-#: doc/classes/RigidBody3D.xml:99
+#: doc/classes/RigidBody3D.xml:107
msgid ""
-"Returns a list of the bodies colliding with this one. By default, number of "
-"max contacts reported is at 0, see the [member contacts_reported] property "
-"to increase it.\n"
-"[b]Note:[/b] The result of this test is not immediate after moving objects. "
-"For performance, list of collisions is updated once per frame and before the "
-"physics step. Consider using signals instead."
+"Returns the inverse inertia tensor basis. This is used to calculate the "
+"angular acceleration resulting from a torque applied to the [RigidBody3D]."
msgstr ""
-#: doc/classes/RigidBody3D.xml:111
+#: doc/classes/RigidBody3D.xml:118
msgid "Locks the specified linear or rotational axis."
msgstr ""
-#: doc/classes/RigidBody3D.xml:126
+#: doc/classes/RigidBody3D.xml:133
msgid "Damps RigidBody3D's rotational forces."
msgstr ""
-#: doc/classes/RigidBody3D.xml:129
+#: doc/classes/RigidBody3D.xml:136
msgid "RigidBody3D's rotational velocity."
msgstr ""
-#: doc/classes/RigidBody3D.xml:153
+#: doc/classes/RigidBody3D.xml:160
msgid ""
"If [code]true[/code], the RigidBody3D will emit signals when it collides "
-"with another RigidBody3D."
+"with another RigidBody3D. See also [member contacts_reported]."
msgstr ""
-#: doc/classes/RigidBody3D.xml:156
-msgid ""
-"The maximum contacts to report. Bodies can keep a log of the contacts with "
-"other bodies, this is enabled by setting the maximum amount of contacts "
-"reported to a number greater than 0."
-msgstr ""
-
-#: doc/classes/RigidBody3D.xml:159
+#: doc/classes/RigidBody3D.xml:167
msgid ""
"If [code]true[/code], continuous collision detection is used.\n"
"Continuous collision detection tries to predict where a moving body will "
@@ -45351,7 +46032,7 @@ msgid ""
"faster to compute, but can miss small, fast-moving objects."
msgstr ""
-#: doc/classes/RigidBody3D.xml:163
+#: doc/classes/RigidBody3D.xml:171
msgid ""
"If [code]true[/code], internal force integration will be disabled (like "
"gravity or air friction) for this body. Other than collision response, the "
@@ -45359,7 +46040,7 @@ msgid ""
"function, if defined."
msgstr ""
-#: doc/classes/RigidBody3D.xml:166
+#: doc/classes/RigidBody3D.xml:174
msgid ""
"This is multiplied by the global 3D gravity setting found in [b]Project > "
"Project Settings > Physics > 3d[/b] to produce RigidBody3D's gravity. For "
@@ -45367,14 +46048,14 @@ msgid ""
"and 0.5 will apply half gravity to this object."
msgstr ""
-#: doc/classes/RigidBody3D.xml:169
+#: doc/classes/RigidBody3D.xml:177
msgid ""
"The body's linear damp. Cannot be less than -1.0. If this value is different "
"from -1.0, any linear damp derived from the world or areas will be "
"overridden."
msgstr ""
-#: doc/classes/RigidBody3D.xml:172
+#: doc/classes/RigidBody3D.xml:180
msgid ""
"The body's linear velocity. Can be used sporadically, but [b]don't set this "
"every frame[/b], because physics may run in another thread and runs at a "
@@ -45382,60 +46063,57 @@ msgid ""
"for precise control of the body state."
msgstr ""
-#: doc/classes/RigidBody3D.xml:178
+#: doc/classes/RigidBody3D.xml:186
msgid "The body mode. See [enum Mode] for possible values."
msgstr ""
-#: doc/classes/RigidBody3D.xml:196
-msgid ""
-"Emitted when a body enters into contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work."
-msgstr ""
-
-#: doc/classes/RigidBody3D.xml:203
+#: doc/classes/RigidBody3D.xml:211
msgid ""
-"Emitted when a body shape exits contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work."
+"Emitted when a body shape exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody3D.xml:216
+#: doc/classes/RigidBody3D.xml:224
msgid ""
-"Emitted when a body enters into contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work.\n"
+"Emitted when a body enters into contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"This signal not only receives the body that collided with this one, but also "
"its [RID] ([code]body_id[/code]), the shape index from the colliding body "
"([code]body_shape[/code]), and the shape index from this body "
"([code]local_shape[/code]) the other body collided with."
msgstr ""
-#: doc/classes/RigidBody3D.xml:230
+#: doc/classes/RigidBody3D.xml:238
msgid ""
-"Emitted when a body shape exits contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work.\n"
+"Emitted when a body shape exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"This signal not only receives the body that stopped colliding with this one, "
"but also its [RID] ([code]body_id[/code]), the shape index from the "
"colliding body ([code]body_shape[/code]), and the shape index from this body "
"([code]local_shape[/code]) the other body stopped colliding with."
msgstr ""
-#: doc/classes/RigidBody3D.xml:243
+#: doc/classes/RigidBody3D.xml:251
msgid ""
"Rigid body mode. This is the \"natural\" state of a rigid body. It is "
"affected by forces, and can move, rotate, and be affected by user code."
msgstr ""
-#: doc/classes/RigidBody3D.xml:246
+#: doc/classes/RigidBody3D.xml:254
msgid ""
"Static mode. The body behaves like a [StaticBody3D], and can only move by "
"user code."
msgstr ""
-#: doc/classes/RigidBody3D.xml:249
+#: doc/classes/RigidBody3D.xml:257
msgid ""
"Character body mode. This behaves like a rigid body, but can not rotate."
msgstr ""
-#: doc/classes/RigidBody3D.xml:252
+#: doc/classes/RigidBody3D.xml:260
msgid ""
"Kinematic body mode. The body behaves like a [KinematicBody3D], and can only "
"move by user code."
@@ -45942,7 +46620,7 @@ msgstr ""
msgid "The time remaining."
msgstr ""
-#: doc/classes/SceneTreeTimer.xml:28 doc/classes/Timer.xml:62
+#: doc/classes/SceneTreeTimer.xml:28 doc/classes/Timer.xml:63
msgid "Emitted when the timer reaches 0."
msgstr ""
@@ -46065,27 +46743,27 @@ msgid ""
"the singleton using [method EditorInterface.get_script_editor]."
msgstr ""
-#: doc/classes/ScriptEditor.xml:40
+#: doc/classes/ScriptEditor.xml:46
msgid "Returns a [Script] that is currently active in editor."
msgstr ""
-#: doc/classes/ScriptEditor.xml:57
+#: doc/classes/ScriptEditor.xml:69
msgid ""
"Returns an array with all [Script] objects which are currently open in "
"editor."
msgstr ""
-#: doc/classes/ScriptEditor.xml:66
+#: doc/classes/ScriptEditor.xml:78
msgid "Goes to the specified line in the current script."
msgstr ""
-#: doc/classes/ScriptEditor.xml:85
+#: doc/classes/ScriptEditor.xml:113
msgid ""
"Emitted when user changed active script. Argument is a freshly activated "
"[Script]."
msgstr ""
-#: doc/classes/ScriptEditor.xml:92
+#: doc/classes/ScriptEditor.xml:120
msgid ""
"Emitted when editor is about to close the active script. Argument is a "
"[Script] that is going to be closed."
@@ -46147,7 +46825,7 @@ msgid ""
"visible."
msgstr ""
-#: doc/classes/ScrollContainer.xml:37 doc/classes/TextEdit.xml:453
+#: doc/classes/ScrollContainer.xml:37 doc/classes/TextEdit.xml:407
msgid "The current horizontal scroll value."
msgstr ""
@@ -46155,7 +46833,7 @@ msgstr ""
msgid "If [code]true[/code], enables horizontal scrolling."
msgstr ""
-#: doc/classes/ScrollContainer.xml:43 doc/classes/TextEdit.xml:456
+#: doc/classes/ScrollContainer.xml:43 doc/classes/TextEdit.xml:410
msgid "The current vertical scroll value."
msgstr ""
@@ -46674,7 +47352,7 @@ msgstr ""
msgid ""
"Sets the global pose transform, [code]pose[/code], for the bone at "
"[code]bone_idx[/code].\n"
-"[code]amount[/code] is the interpolation strengh that will be used when "
+"[code]amount[/code] is the interpolation strength that will be used when "
"applying the pose, and [code]persistent[/code] determines if the applied "
"pose will remain.\n"
"[b]Note[/b]: The pose transform needs to be in bone space. Use [method "
@@ -46691,7 +47369,7 @@ msgstr ""
#: doc/classes/Skeleton3D.xml:266
msgid ""
-"Returns the pose transform for bone [code]bone_idx[/code].\n"
+"Sets the pose transform for bone [code]bone_idx[/code].\n"
"[b]Note[/b]: The pose transform needs to be in bone space. Use [method "
"world_transform_to_bone_transform] to convert a world transform, like one "
"you can get from a [Node3D], to bone space."
@@ -46784,6 +47462,16 @@ msgstr ""
#: doc/classes/Sky.xml:52
msgid ""
+"Automatically selects the appropriate process mode based on your sky shader. "
+"If your shader uses [code]TIME[/code] or [code]POSITION[/code], this will "
+"use [constant PROCESS_MODE_REALTIME]. If your shader uses any of the "
+"[code]LIGHT_*[/code] variables or any custom uniforms, this uses [constant "
+"PROCESS_MODE_INCREMENTAL]. Otherwise, this defaults to [constant "
+"PROCESS_MODE_QUALITY]."
+msgstr ""
+
+#: doc/classes/Sky.xml:55
+msgid ""
"Uses high quality importance sampling to process the radiance map. In "
"general, this results in much higher quality than [constant "
"PROCESS_MODE_REALTIME] but takes much longer to generate. This should not be "
@@ -46793,10 +47481,22 @@ msgid ""
"ggx_samples]."
msgstr ""
-#: doc/classes/Sky.xml:55
+#: doc/classes/Sky.xml:58
+msgid ""
+"Uses the same high quality importance sampling to process the radiance map "
+"as [constant PROCESS_MODE_QUALITY], but updates over several frames. The "
+"number of frames is determined by [member ProjectSettings.rendering/quality/"
+"reflections/roughness_layers]. Use this when you need highest quality "
+"radiance maps, but have a sky that updates slowly."
+msgstr ""
+
+#: doc/classes/Sky.xml:61
msgid ""
"Uses the fast filtering algorithm to process the radiance map. In general "
-"this results in lower quality, but substantially faster run times.\n"
+"this results in lower quality, but substantially faster run times. If you "
+"need better quality, but still need to update the sky every frame, consider "
+"turning on [member ProjectSettings.rendering/quality/reflections/"
+"fast_filter_high_quality].\n"
"[b]Note:[/b] The fast filtering algorithm is limited to 256x256 cubemaps, so "
"[member radiance_size] must be set to [constant RADIANCE_SIZE_256]."
msgstr ""
@@ -47133,10 +47833,9 @@ msgid ""
msgstr ""
#: doc/classes/SpringArm3D.xml:35
-msgid ""
-"Returns the proportion between the current arm length (after checking for "
-"collisions) and the [member spring_length]. Ranges from 0 to 1."
-msgstr ""
+#, fuzzy
+msgid "Returns the spring arm's current length."
+msgstr "Restituisce il seno del parametro."
#: doc/classes/SpringArm3D.xml:44
msgid ""
@@ -47831,7 +48530,7 @@ msgstr ""
msgid ""
"This is the built-in string class (and the one used by GDScript). It "
"supports Unicode and provides all necessary means for string handling. "
-"Strings are reference counted and use a copy-on-write approach, so passing "
+"Strings are reference-counted and use a copy-on-write approach, so passing "
"them around is cheap in resources."
msgstr ""
@@ -47986,26 +48685,32 @@ msgstr ""
#: doc/classes/String.xml:328
msgid ""
"Returns a copy of the string with escaped characters replaced by their "
-"meanings according to the C language standard."
+"meanings. Supported escape sequences are [code]\\'[/code], [code]\\\"[/"
+"code], [code]\\?[/code], [code]\\\\[/code], [code]\\a[/code], [code]\\b[/"
+"code], [code]\\f[/code], [code]\\n[/code], [code]\\r[/code], [code]\\t[/"
+"code], [code]\\v[/code].\n"
+"[b]Note:[/b] Unlike the GDScript parser, this method doesn't support the "
+"[code]\\uXXXX[/code] escape sequence."
msgstr ""
-#: doc/classes/String.xml:335
+#: doc/classes/String.xml:336
msgid ""
-"Changes the case of some letters. Replaces underscores with spaces, converts "
-"all letters to lowercase, then capitalizes first and every letter following "
-"the space character. For [code]capitalize camelCase mixed_with_underscores[/"
-"code], it will return [code]Capitalize Camelcase Mixed With Underscores[/"
+"Changes the case of some letters. Replaces underscores with spaces, adds "
+"spaces before in-word uppercase characters, converts all letters to "
+"lowercase, then capitalizes the first letter and every letter following a "
+"space character. For [code]capitalize camelCase mixed_with_underscores[/"
+"code], it will return [code]Capitalize Camel Case Mixed With Underscores[/"
"code]."
msgstr ""
-#: doc/classes/String.xml:344
+#: doc/classes/String.xml:345
msgid ""
"Performs a case-sensitive comparison to another string. Returns [code]-1[/"
"code] if less than, [code]+1[/code] if greater than, or [code]0[/code] if "
"equal."
msgstr ""
-#: doc/classes/String.xml:357
+#: doc/classes/String.xml:358
msgid ""
"Returns the number of occurrences of substring [code]what[/code] between "
"[code]from[/code] and [code]to[/code] positions. If [code]from[/code] and "
@@ -48013,7 +48718,7 @@ msgid ""
"code] equals 0 the remained substring will be used."
msgstr ""
-#: doc/classes/String.xml:370
+#: doc/classes/String.xml:371
msgid ""
"Returns the number of occurrences of substring [code]what[/code] (ignoring "
"case) between [code]from[/code] and [code]to[/code] positions. If "
@@ -48021,33 +48726,34 @@ msgid ""
"used. If only [code]to[/code] equals 0 the remained substring will be used."
msgstr ""
-#: doc/classes/String.xml:377
+#: doc/classes/String.xml:378
msgid ""
"Returns a copy of the string with indentation (leading tabs and spaces) "
"removed."
msgstr ""
-#: doc/classes/String.xml:384
+#: doc/classes/String.xml:385
#, fuzzy
msgid ""
"Returns [code]true[/code] if the length of the string equals [code]0[/code]."
msgstr "Ritorna [code]true[/code] se [code]s[/code] è zero o quasi zero."
-#: doc/classes/String.xml:393
+#: doc/classes/String.xml:394
msgid "Returns [code]true[/code] if the string ends with the given string."
msgstr ""
-#: doc/classes/String.xml:404
+#: doc/classes/String.xml:405
msgid ""
"Erases [code]chars[/code] characters from the string starting from "
"[code]position[/code]."
msgstr ""
-#: doc/classes/String.xml:415
+#: doc/classes/String.xml:416
msgid ""
-"Finds the first occurrence of a substring. Returns the starting position of "
-"the substring or [code]-1[/code] if not found. Optionally, the initial "
-"search index can be passed.\n"
+"Returns the index of the [b]first[/b] case-sensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the end of the "
+"string.\n"
"[b]Note:[/b] If you just want to know whether a string contains a substring, "
"use the [code]in[/code] operator as follows:\n"
"[codeblock]\n"
@@ -48057,48 +48763,42 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:430
-msgid ""
-"Finds the last occurrence of a substring. Returns the starting position of "
-"the substring or [code]-1[/code] if not found."
-msgstr ""
-
-#: doc/classes/String.xml:441
+#: doc/classes/String.xml:433
msgid ""
-"Finds the first occurrence of a substring, ignoring case. Returns the "
-"starting position of the substring or [code]-1[/code] if not found. "
-"Optionally, the initial search index can be passed."
+"Returns the index of the [b]first[/b] case-insensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the end of the string."
msgstr ""
-#: doc/classes/String.xml:452
+#: doc/classes/String.xml:444
msgid ""
"Formats the string by replacing all occurrences of [code]placeholder[/code] "
"with [code]values[/code]."
msgstr ""
-#: doc/classes/String.xml:459
+#: doc/classes/String.xml:451
msgid "If the string is a valid file path, returns the base directory name."
msgstr ""
-#: doc/classes/String.xml:466
+#: doc/classes/String.xml:458
msgid ""
"If the string is a valid file path, returns the full file path without the "
"extension."
msgstr ""
-#: doc/classes/String.xml:473
+#: doc/classes/String.xml:465
msgid "If the string is a valid file path, returns the extension."
msgstr ""
-#: doc/classes/String.xml:480
+#: doc/classes/String.xml:472
msgid "If the string is a valid file path, returns the filename."
msgstr ""
-#: doc/classes/String.xml:487
+#: doc/classes/String.xml:479
msgid "Hashes the string and returns a 32-bit integer."
msgstr ""
-#: doc/classes/String.xml:494
+#: doc/classes/String.xml:486
msgid ""
"Converts a string containing a hexadecimal number into an integer. "
"Hexadecimal strings are expected to be prefixed with \"[code]0x[/code]\" "
@@ -48108,7 +48808,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:504
+#: doc/classes/String.xml:496
msgid ""
"Escapes (encodes) a string to URL friendly format. Also referred to as 'URL "
"encode'.\n"
@@ -48118,7 +48818,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:514
+#: doc/classes/String.xml:506
msgid ""
"Unescapes (decodes) a string in URL encoded format. Also referred to as 'URL "
"decode'.\n"
@@ -48128,7 +48828,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:526
+#: doc/classes/String.xml:518
msgid ""
"Converts [code]size[/code] represented as number of bytes to human-readable "
"format using internationalized set of data size units, namely: B, KiB, MiB, "
@@ -48141,48 +48841,48 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:542
+#: doc/classes/String.xml:534
msgid ""
"Returns a copy of the string with the substring [code]what[/code] inserted "
"at the given position."
msgstr ""
-#: doc/classes/String.xml:549
+#: doc/classes/String.xml:541
msgid ""
"If the string is a path to a file or directory, returns [code]true[/code] if "
"the path is absolute."
msgstr ""
-#: doc/classes/String.xml:556
+#: doc/classes/String.xml:548
msgid ""
"If the string is a path to a file or directory, returns [code]true[/code] if "
"the path is relative."
msgstr ""
-#: doc/classes/String.xml:565
+#: doc/classes/String.xml:557
msgid ""
"Returns [code]true[/code] if this string is a subsequence of the given "
"string."
msgstr ""
-#: doc/classes/String.xml:574
+#: doc/classes/String.xml:566
msgid ""
"Returns [code]true[/code] if this string is a subsequence of the given "
"string, without considering case."
msgstr ""
-#: doc/classes/String.xml:581
+#: doc/classes/String.xml:573
msgid ""
"Returns [code]true[/code] if this string is free from characters that aren't "
"allowed in file names, those being:\n"
"[code]: / \\ ? * \" | % < >[/code]"
msgstr ""
-#: doc/classes/String.xml:589
+#: doc/classes/String.xml:581
msgid "Returns [code]true[/code] if this string contains a valid float."
msgstr ""
-#: doc/classes/String.xml:598
+#: doc/classes/String.xml:590
msgid ""
"Returns [code]true[/code] if this string contains a valid hexadecimal "
"number. If [code]with_prefix[/code] is [code]true[/code], then a validity of "
@@ -48190,7 +48890,7 @@ msgid ""
"instance: [code]0xDEADC0DE[/code]."
msgstr ""
-#: doc/classes/String.xml:605
+#: doc/classes/String.xml:597
msgid ""
"Returns [code]true[/code] if this string contains a valid color in "
"hexadecimal HTML notation. Other HTML notations such as named colors or "
@@ -48198,22 +48898,22 @@ msgid ""
"return [code]false[/code]."
msgstr ""
-#: doc/classes/String.xml:612
+#: doc/classes/String.xml:604
msgid ""
"Returns [code]true[/code] if this string is a valid identifier. A valid "
"identifier may contain only letters, digits and underscores ([code]_[/code]) "
"and the first character may not be a digit."
msgstr ""
-#: doc/classes/String.xml:619
+#: doc/classes/String.xml:611
msgid "Returns [code]true[/code] if this string contains a valid integer."
msgstr ""
-#: doc/classes/String.xml:626
+#: doc/classes/String.xml:618
msgid "Returns [code]true[/code] if this string contains a valid IP address."
msgstr ""
-#: doc/classes/String.xml:635
+#: doc/classes/String.xml:627
msgid ""
"Return a [String] which is the concatenation of the [code]parts[/code]. The "
"separator between elements is the string providing this method.\n"
@@ -48223,121 +48923,125 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:646
+#: doc/classes/String.xml:638
msgid ""
"Returns a copy of the string with special characters escaped using the JSON "
"standard."
msgstr ""
-#: doc/classes/String.xml:655
+#: doc/classes/String.xml:647
msgid "Returns a number of characters from the left of the string."
msgstr ""
-#: doc/classes/String.xml:662
+#: doc/classes/String.xml:654
msgid "Returns the string's amount of characters."
msgstr ""
-#: doc/classes/String.xml:671
+#: doc/classes/String.xml:663
msgid "Returns a copy of the string with characters removed from the left."
msgstr ""
-#: doc/classes/String.xml:680
+#: doc/classes/String.xml:672
msgid ""
"Does a simple case-sensitive expression match, where [code]\"*\"[/code] "
"matches zero or more arbitrary characters and [code]\"?\"[/code] matches any "
"single character except a period ([code]\".\"[/code])."
msgstr ""
-#: doc/classes/String.xml:689
+#: doc/classes/String.xml:681
msgid ""
"Does a simple case-insensitive expression match, where [code]\"*\"[/code] "
"matches zero or more arbitrary characters and [code]\"?\"[/code] matches any "
"single character except a period ([code]\".\"[/code])."
msgstr ""
-#: doc/classes/String.xml:696
+#: doc/classes/String.xml:688
msgid "Returns the MD5 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:703
+#: doc/classes/String.xml:695
msgid "Returns the MD5 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:712
+#: doc/classes/String.xml:704
msgid ""
"Performs a case-insensitive comparison to another string. Returns [code]-1[/"
"code] if less than, [code]+1[/code] if greater than, or [code]0[/code] if "
"equal."
msgstr ""
-#: doc/classes/String.xml:721
+#: doc/classes/String.xml:713
msgid "Returns the character code at position [code]at[/code]."
msgstr ""
-#: doc/classes/String.xml:730
+#: doc/classes/String.xml:722
msgid ""
"Formats a number to have an exact number of [code]digits[/code] after the "
"decimal point."
msgstr ""
-#: doc/classes/String.xml:739
+#: doc/classes/String.xml:731
msgid ""
"Formats a number to have an exact number of [code]digits[/code] before the "
"decimal point."
msgstr ""
-#: doc/classes/String.xml:746
+#: doc/classes/String.xml:738
msgid "Decode a percent-encoded string. See [method percent_encode]."
msgstr ""
-#: doc/classes/String.xml:753
+#: doc/classes/String.xml:745
msgid ""
"Percent-encodes a string. Encodes parameters in a URL when sending a HTTP "
"GET request (and bodies of form-urlencoded POST requests)."
msgstr ""
-#: doc/classes/String.xml:762
+#: doc/classes/String.xml:754
msgid ""
"If the string is a path, this concatenates [code]file[/code] at the end of "
"the string as a subpath. E.g. [code]\"this/is\".plus_file(\"path\") == "
"\"this/is/path\"[/code]."
msgstr ""
-#: doc/classes/String.xml:771
+#: doc/classes/String.xml:763
msgid ""
"Returns original string repeated a number of times. The number of "
"repetitions is given by the argument."
msgstr ""
-#: doc/classes/String.xml:782
+#: doc/classes/String.xml:774
msgid ""
"Replaces occurrences of a case-sensitive substring with the given one inside "
"the string."
msgstr ""
-#: doc/classes/String.xml:793
+#: doc/classes/String.xml:785
msgid ""
"Replaces occurrences of a case-insensitive substring with the given one "
"inside the string."
msgstr ""
-#: doc/classes/String.xml:804
+#: doc/classes/String.xml:796
msgid ""
-"Performs a case-sensitive search for a substring, but starts from the end of "
-"the string instead of the beginning."
+"Returns the index of the [b]last[/b] case-sensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the beginning of the "
+"string."
msgstr ""
-#: doc/classes/String.xml:815
+#: doc/classes/String.xml:807
msgid ""
-"Performs a case-insensitive search for a substring, but starts from the end "
-"of the string instead of the beginning."
+"Returns the index of the [b]last[/b] case-insensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the beginning of the "
+"string."
msgstr ""
-#: doc/classes/String.xml:824
+#: doc/classes/String.xml:816
msgid "Returns the right side of the string from a given position."
msgstr ""
-#: doc/classes/String.xml:837
+#: doc/classes/String.xml:829
msgid ""
"Splits the string by a [code]delimiter[/code] string and returns an array of "
"the substrings, starting from right.\n"
@@ -48356,39 +49060,39 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:856
+#: doc/classes/String.xml:848
msgid "Returns a copy of the string with characters removed from the right."
msgstr ""
-#: doc/classes/String.xml:863
+#: doc/classes/String.xml:855
msgid "Returns the SHA-1 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:870
+#: doc/classes/String.xml:862
msgid "Returns the SHA-1 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:877
+#: doc/classes/String.xml:869
msgid "Returns the SHA-256 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:884
+#: doc/classes/String.xml:876
msgid "Returns the SHA-256 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:893
+#: doc/classes/String.xml:885
msgid ""
"Returns the similarity index of the text compared to this string. 1 means "
"totally similar and 0 means totally dissimilar."
msgstr ""
-#: doc/classes/String.xml:906
+#: doc/classes/String.xml:898
msgid ""
"Splits the string by a [code]delimiter[/code] string and returns an array of "
-"the substrings.\n"
+"the substrings. The [code]delimiter[/code] can be of any length.\n"
"If [code]maxsplit[/code] is specified, it defines the number of splits to do "
-"from the left up to [code]maxsplit[/code]. The default value of 0 means that "
-"all items are split.\n"
+"from the left up to [code]maxsplit[/code]. The default value of [code]0[/"
+"code] means that all items are split.\n"
"Example:\n"
"[codeblock]\n"
"var some_string = \"One,Two,Three,Four\"\n"
@@ -48396,10 +49100,12 @@ msgid ""
"print(some_array.size()) # Prints 2\n"
"print(some_array[0]) # Prints \"One\"\n"
"print(some_array[1]) # Prints \"Two,Three,Four\"\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"If you need to split strings with more complex rules, use the [RegEx] class "
+"instead."
msgstr ""
-#: doc/classes/String.xml:926
+#: doc/classes/String.xml:919
msgid ""
"Splits the string in floats by using a delimiter string and returns an array "
"of the substrings.\n"
@@ -48407,7 +49113,7 @@ msgid ""
"split by [code]\",\"[/code]."
msgstr ""
-#: doc/classes/String.xml:938
+#: doc/classes/String.xml:931
msgid ""
"Returns a copy of the string stripped of any non-printable character "
"(including tabulations, spaces and line breaks) at the beginning and the "
@@ -48415,7 +49121,7 @@ msgid ""
"right edges respectively."
msgstr ""
-#: doc/classes/String.xml:945
+#: doc/classes/String.xml:938
msgid ""
"Returns a copy of the string stripped of any escape character. These include "
"all non-printable control characters of the first page of the ASCII table (< "
@@ -48423,14 +49129,14 @@ msgid ""
"code] and [code]\\r[/code]) characters, but not spaces."
msgstr ""
-#: doc/classes/String.xml:956
+#: doc/classes/String.xml:949
msgid ""
"Returns part of the string from the position [code]from[/code] with length "
"[code]len[/code]. Argument [code]len[/code] is optional and using [code]-1[/"
"code] will return remaining characters from given position."
msgstr ""
-#: doc/classes/String.xml:963
+#: doc/classes/String.xml:956
msgid ""
"Converts the String (which is a character array) to [PackedByteArray] (which "
"is an array of bytes). The conversion is faster compared to [method "
@@ -48438,25 +49144,25 @@ msgid ""
"ASCII characters."
msgstr ""
-#: doc/classes/String.xml:970
+#: doc/classes/String.xml:963
msgid ""
"Converts a string containing a decimal number into a [code]float[/code]."
msgstr ""
-#: doc/classes/String.xml:977
+#: doc/classes/String.xml:970
msgid ""
"Converts a string containing an integer number into an [code]int[/code]."
msgstr ""
-#: doc/classes/String.xml:984
+#: doc/classes/String.xml:977
msgid "Returns the string converted to lowercase."
msgstr ""
-#: doc/classes/String.xml:991
+#: doc/classes/String.xml:984
msgid "Returns the string converted to uppercase."
msgstr ""
-#: doc/classes/String.xml:998
+#: doc/classes/String.xml:991
msgid ""
"Converts the String (which is an array of characters) to [PackedByteArray] "
"(which is an array of bytes). The conversion is a bit slower than [method "
@@ -48464,25 +49170,25 @@ msgid ""
"this function over [method to_ascii]."
msgstr ""
-#: doc/classes/String.xml:1007
+#: doc/classes/String.xml:1000
msgid ""
"Removes a given string from the start if it starts with it or leaves the "
"string unchanged."
msgstr ""
-#: doc/classes/String.xml:1016
+#: doc/classes/String.xml:1009
msgid ""
"Removes a given string from the end if it ends with it or leaves the string "
"unchanged."
msgstr ""
-#: doc/classes/String.xml:1023
+#: doc/classes/String.xml:1016
msgid ""
"Returns a copy of the string with special characters escaped using the XML "
"standard."
msgstr ""
-#: doc/classes/String.xml:1030
+#: doc/classes/String.xml:1023
msgid ""
"Returns a copy of the string with escaped characters replaced by their "
"meanings according to the XML standard."
@@ -49714,50 +50420,42 @@ msgid ""
"undo/redo."
msgstr ""
-#: doc/classes/TextEdit.xml:24
-msgid "Adds color region (given the delimiters) and its colors."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:35
-msgid "Adds a [code]keyword[/code] and its [Color]."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:44
+#: doc/classes/TextEdit.xml:18
msgid ""
"Returns if the given line is foldable, that is, it has indented lines right "
"below it."
msgstr ""
-#: doc/classes/TextEdit.xml:57
+#: doc/classes/TextEdit.xml:25
msgid ""
-"Clears all custom syntax coloring information previously added with [method "
-"add_color_region] or [method add_keyword_color]."
+"Centers the viewport on the line the editing cursor is at. This also resets "
+"the [member scroll_horizontal] value to [code]0[/code]."
msgstr ""
-#: doc/classes/TextEdit.xml:64
+#: doc/classes/TextEdit.xml:32
msgid "Clears the undo history."
msgstr ""
-#: doc/classes/TextEdit.xml:71
+#: doc/classes/TextEdit.xml:39
msgid "Copy's the current text selection."
msgstr ""
-#: doc/classes/TextEdit.xml:78
+#: doc/classes/TextEdit.xml:46
msgid "Returns the column the editing cursor is at."
msgstr ""
-#: doc/classes/TextEdit.xml:85
+#: doc/classes/TextEdit.xml:53
msgid "Returns the line the editing cursor is at."
msgstr ""
-#: doc/classes/TextEdit.xml:96
+#: doc/classes/TextEdit.xml:64
msgid ""
"Moves the cursor at the specified [code]column[/code] index.\n"
"If [code]adjust_viewport[/code] is set to [code]true[/code], the viewport "
"will center at the cursor position after the move occurs."
msgstr ""
-#: doc/classes/TextEdit.xml:112
+#: doc/classes/TextEdit.xml:80
msgid ""
"Moves the cursor at the specified [code]line[/code] index.\n"
"If [code]adjust_viewport[/code] is set to [code]true[/code], the viewport "
@@ -49766,111 +50464,101 @@ msgid ""
"[code]line[/code] can be hidden using [method set_line_as_hidden]."
msgstr ""
-#: doc/classes/TextEdit.xml:121
+#: doc/classes/TextEdit.xml:89
msgid "Cut's the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:128
+#: doc/classes/TextEdit.xml:96
msgid "Deselects the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:135
+#: doc/classes/TextEdit.xml:103
msgid "Folds all lines that are possible to be folded (see [method can_fold])."
msgstr ""
-#: doc/classes/TextEdit.xml:144
+#: doc/classes/TextEdit.xml:112
msgid "Folds the given line, if possible (see [method can_fold])."
msgstr ""
-#: doc/classes/TextEdit.xml:151
+#: doc/classes/TextEdit.xml:119
msgid "Returns an array containing the line number of each breakpoint."
msgstr ""
-#: doc/classes/TextEdit.xml:160
-msgid "Returns the [Color] of the specified [code]keyword[/code]."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:169
+#: doc/classes/TextEdit.xml:128
msgid "Returns the text of a specific line."
msgstr ""
-#: doc/classes/TextEdit.xml:176
+#: doc/classes/TextEdit.xml:135
msgid "Returns the amount of total lines in the text."
msgstr ""
-#: doc/classes/TextEdit.xml:183
+#: doc/classes/TextEdit.xml:142
msgid ""
"Returns the [PopupMenu] of this [TextEdit]. By default, this menu is "
"displayed when right-clicking on the [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:190
+#: doc/classes/TextEdit.xml:149
msgid "Returns the selection begin column."
msgstr ""
-#: doc/classes/TextEdit.xml:197
+#: doc/classes/TextEdit.xml:156
msgid "Returns the selection begin line."
msgstr ""
-#: doc/classes/TextEdit.xml:204
+#: doc/classes/TextEdit.xml:163
msgid "Returns the text inside the selection."
msgstr ""
-#: doc/classes/TextEdit.xml:211
+#: doc/classes/TextEdit.xml:170
msgid "Returns the selection end column."
msgstr ""
-#: doc/classes/TextEdit.xml:218
+#: doc/classes/TextEdit.xml:177
msgid "Returns the selection end line."
msgstr ""
-#: doc/classes/TextEdit.xml:225
+#: doc/classes/TextEdit.xml:184
msgid "Returns a [String] text with the word under the mouse cursor location."
msgstr ""
-#: doc/classes/TextEdit.xml:234
-msgid ""
-"Returns whether the specified [code]keyword[/code] has a color set to it or "
-"not."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:243
+#: doc/classes/TextEdit.xml:193
msgid "Insert the specified text at the cursor position."
msgstr ""
-#: doc/classes/TextEdit.xml:252
+#: doc/classes/TextEdit.xml:202
msgid "Returns whether the line at the specified index is folded or not."
msgstr ""
-#: doc/classes/TextEdit.xml:261
+#: doc/classes/TextEdit.xml:211
msgid "Returns whether the line at the specified index is hidden or not."
msgstr ""
-#: doc/classes/TextEdit.xml:268
+#: doc/classes/TextEdit.xml:218
msgid "Returns [code]true[/code] if the selection is active."
msgstr ""
-#: doc/classes/TextEdit.xml:277
+#: doc/classes/TextEdit.xml:227
msgid ""
"Triggers a right-click menu action by the specified index. See [enum "
"MenuItems] for a list of available indexes."
msgstr ""
-#: doc/classes/TextEdit.xml:284
+#: doc/classes/TextEdit.xml:234
msgid "Paste the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:291
+#: doc/classes/TextEdit.xml:241
msgid "Perform redo operation."
msgstr ""
-#: doc/classes/TextEdit.xml:298
+#: doc/classes/TextEdit.xml:248
msgid ""
"Removes all the breakpoints. This will not fire the [signal "
"breakpoint_toggled] signal."
msgstr ""
-#: doc/classes/TextEdit.xml:313
+#: doc/classes/TextEdit.xml:263
msgid ""
"Perform a search inside the text. Search flags can be specified in the [enum "
"SearchFlags] enum.\n"
@@ -49886,244 +50574,265 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/TextEdit.xml:336
-msgid "Perform selection, from line/column to line/column."
+#: doc/classes/TextEdit.xml:286
+msgid ""
+"Perform selection, from line/column to line/column.\n"
+"If [member selecting_enabled] is [code]false[/code], no selection will occur."
msgstr ""
-#: doc/classes/TextEdit.xml:343
-msgid "Select all the text."
+#: doc/classes/TextEdit.xml:294
+msgid ""
+"Select all the text.\n"
+"If [member selecting_enabled] is [code]false[/code], no selection will occur."
msgstr ""
-#: doc/classes/TextEdit.xml:354
+#: doc/classes/TextEdit.xml:306
msgid "Sets the text for a specific line."
msgstr ""
-#: doc/classes/TextEdit.xml:365
+#: doc/classes/TextEdit.xml:317
msgid "If [code]true[/code], hides the line of the specified index."
msgstr ""
-#: doc/classes/TextEdit.xml:374
+#: doc/classes/TextEdit.xml:326
msgid "Toggle the folding of the code block at the given line."
msgstr ""
-#: doc/classes/TextEdit.xml:381
+#: doc/classes/TextEdit.xml:333
msgid "Perform undo operation."
msgstr ""
-#: doc/classes/TextEdit.xml:390
+#: doc/classes/TextEdit.xml:342
msgid "Unfolds the given line, if folded."
msgstr ""
-#: doc/classes/TextEdit.xml:397
+#: doc/classes/TextEdit.xml:349
msgid ""
"Unhide all lines that were previously set to hidden by [method "
"set_line_as_hidden]."
msgstr ""
-#: doc/classes/TextEdit.xml:403
+#: doc/classes/TextEdit.xml:355
msgid "If [code]true[/code], the breakpoint gutter is visible."
msgstr ""
-#: doc/classes/TextEdit.xml:412
+#: doc/classes/TextEdit.xml:364
msgid ""
"If [code]true[/code], the caret displays as a rectangle.\n"
"If [code]false[/code], the caret displays as a bar."
msgstr ""
-#: doc/classes/TextEdit.xml:416
+#: doc/classes/TextEdit.xml:368
msgid ""
"If [code]true[/code], a right-click moves the cursor at the mouse position "
"before displaying the context menu.\n"
"If [code]false[/code], the context menu disregards mouse location."
msgstr ""
-#: doc/classes/TextEdit.xml:420
+#: doc/classes/TextEdit.xml:372
msgid "If [code]true[/code], a right-click displays the context menu."
msgstr ""
-#: doc/classes/TextEdit.xml:423
+#: doc/classes/TextEdit.xml:375
msgid ""
"If [code]true[/code], the \"space\" character will have a visible "
"representation."
msgstr ""
-#: doc/classes/TextEdit.xml:426
+#: doc/classes/TextEdit.xml:378
msgid ""
"If [code]true[/code], the \"tab\" character will have a visible "
"representation."
msgstr ""
-#: doc/classes/TextEdit.xml:430
+#: doc/classes/TextEdit.xml:382
msgid ""
"If [code]true[/code], the fold gutter is visible. This enables folding "
"groups of indented lines."
msgstr ""
-#: doc/classes/TextEdit.xml:433
+#: doc/classes/TextEdit.xml:385
msgid ""
"If [code]true[/code], all lines that have been set to hidden by [method "
"set_line_as_hidden], will not be visible."
msgstr ""
-#: doc/classes/TextEdit.xml:436
+#: doc/classes/TextEdit.xml:388
msgid ""
"If [code]true[/code], all occurrences of the selected text will be "
"highlighted."
msgstr ""
-#: doc/classes/TextEdit.xml:439
+#: doc/classes/TextEdit.xml:391
msgid "If [code]true[/code], the line containing the cursor is highlighted."
msgstr ""
-#: doc/classes/TextEdit.xml:447
+#: doc/classes/TextEdit.xml:394
+msgid ""
+"If [code]true[/code], a minimap is shown, providing an outline of your "
+"source code."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:397
+msgid "The width, in pixels, of the minimap."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:401
msgid ""
"If [code]true[/code], custom [code]font_color_selected[/code] will be used "
"for selected text."
msgstr ""
-#: doc/classes/TextEdit.xml:450
+#: doc/classes/TextEdit.xml:404
msgid ""
"If [code]true[/code], read-only mode is enabled. Existing text cannot be "
"modified and new text cannot be added."
msgstr ""
-#: doc/classes/TextEdit.xml:463
+#: doc/classes/TextEdit.xml:413
msgid ""
-"If [code]true[/code], line numbers are displayed to the left of the text."
+"If [code]true[/code], text can be selected.\n"
+"If [code]false[/code], text can not be selected by the user or by the "
+"[method select] or [method select_all] methods."
msgstr ""
-#: doc/classes/TextEdit.xml:466
+#: doc/classes/TextEdit.xml:417
msgid ""
-"If [code]true[/code], sets the [code]step[/code] of the scrollbars to "
-"[code]0.25[/code] which results in smoother scrolling."
+"If [code]true[/code], shortcut keys for context menu items are enabled, even "
+"if the context menu is disabled."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:420
+msgid ""
+"If [code]true[/code], line numbers are displayed to the left of the text."
msgstr ""
-#: doc/classes/TextEdit.xml:469
+#: doc/classes/TextEdit.xml:423
msgid ""
-"If [code]true[/code], any custom color properties that have been set for "
-"this [TextEdit] will be visible."
+"If [code]true[/code], sets the [code]step[/code] of the scrollbars to "
+"[code]0.25[/code] which results in smoother scrolling."
msgstr ""
-#: doc/classes/TextEdit.xml:472
+#: doc/classes/TextEdit.xml:428
msgid "String value of the [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:475
+#: doc/classes/TextEdit.xml:431
msgid "Vertical scroll sensitivity."
msgstr ""
-#: doc/classes/TextEdit.xml:478
+#: doc/classes/TextEdit.xml:437
msgid ""
"If [code]true[/code], enables text wrapping when it goes beyond the edge of "
"what is visible."
msgstr ""
-#: doc/classes/TextEdit.xml:486
+#: doc/classes/TextEdit.xml:445
msgid "Emitted when a breakpoint is placed via the breakpoint gutter."
msgstr ""
-#: doc/classes/TextEdit.xml:491
+#: doc/classes/TextEdit.xml:450
msgid "Emitted when the cursor changes."
msgstr ""
-#: doc/classes/TextEdit.xml:500
+#: doc/classes/TextEdit.xml:459
msgid "Emitted when the info icon is clicked."
msgstr ""
-#: doc/classes/TextEdit.xml:531
+#: doc/classes/TextEdit.xml:496
msgid "Match case when searching."
msgstr ""
-#: doc/classes/TextEdit.xml:534
+#: doc/classes/TextEdit.xml:499
msgid "Match whole words when searching."
msgstr ""
-#: doc/classes/TextEdit.xml:537
+#: doc/classes/TextEdit.xml:502
msgid "Search from end to beginning."
msgstr ""
-#: doc/classes/TextEdit.xml:546
+#: doc/classes/TextEdit.xml:511
msgid ""
"Pastes the clipboard text over the selected text (or at the cursor's "
"position)."
msgstr ""
-#: doc/classes/TextEdit.xml:549
+#: doc/classes/TextEdit.xml:514
msgid "Erases the whole [TextEdit] text."
msgstr ""
-#: doc/classes/TextEdit.xml:552
+#: doc/classes/TextEdit.xml:517
msgid "Selects the whole [TextEdit] text."
msgstr ""
-#: doc/classes/TextEdit.xml:558
+#: doc/classes/TextEdit.xml:523
msgid "Redoes the previous action."
msgstr ""
-#: doc/classes/TextEdit.xml:566
+#: doc/classes/TextEdit.xml:531
msgid ""
"Sets the background [Color] of this [TextEdit]. [member syntax_highlighting] "
"has to be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:569
+#: doc/classes/TextEdit.xml:534
msgid ""
"Sets the [Color] of the bookmark marker. [member syntax_highlighting] has to "
"be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:574 doc/classes/TextEdit.xml:601
+#: doc/classes/TextEdit.xml:539 doc/classes/TextEdit.xml:566
msgid ""
"Sets the [Color] of the breakpoints. [member breakpoint_gutter] has to be "
"enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:612
+#: doc/classes/TextEdit.xml:577
msgid "Sets the default [Font]."
msgstr ""
-#: doc/classes/TextEdit.xml:615
+#: doc/classes/TextEdit.xml:580
msgid "Sets the font [Color]."
msgstr ""
-#: doc/classes/TextEdit.xml:620
+#: doc/classes/TextEdit.xml:585
msgid ""
"Sets the [Color] of the selected text. [member override_selected_font_color] "
"has to be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:625
+#: doc/classes/TextEdit.xml:588
msgid ""
"Sets the [Color] of the line numbers. [member show_line_numbers] has to be "
"enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:628
+#: doc/classes/TextEdit.xml:591
msgid "Sets the spacing between the lines."
msgstr ""
-#: doc/classes/TextEdit.xml:631
+#: doc/classes/TextEdit.xml:594
msgid "Sets the [Color] of marked text."
msgstr ""
-#: doc/classes/TextEdit.xml:636
+#: doc/classes/TextEdit.xml:597
msgid "Sets the [StyleBox] of this [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:641
+#: doc/classes/TextEdit.xml:600
msgid ""
"Sets the [StyleBox] of this [TextEdit] when [member readonly] is enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:646
+#: doc/classes/TextEdit.xml:605
msgid "Sets the highlight [Color] of text selections."
msgstr ""
-#: doc/classes/TextEdit.xml:653
+#: doc/classes/TextEdit.xml:610
msgid "Sets a custom [Texture2D] for tab text characters."
msgstr ""
-#: doc/classes/TextEdit.xml:656
+#: doc/classes/TextEdit.xml:613
msgid ""
"Sets the highlight [Color] of multiple occurrences. [member "
"highlight_all_occurrences] has to be enabled."
@@ -50201,80 +50910,80 @@ msgid ""
"the texture will not scale with the node."
msgstr ""
-#: doc/classes/TextureButton.xml:19
+#: doc/classes/TextureButton.xml:25
msgid ""
"Controls the texture's behavior when you resize the node's bounding "
"rectangle, [b]only if[/b] [member expand] is [code]true[/code]. Set it to "
"one of the [enum StretchMode] constants. See the constants to learn more."
msgstr ""
-#: doc/classes/TextureButton.xml:22
+#: doc/classes/TextureButton.xml:28
msgid ""
"Pure black and white [BitMap] image to use for click detection. On the mask, "
"white pixels represent the button's clickable area. Use it to create buttons "
"with curved shapes."
msgstr ""
-#: doc/classes/TextureButton.xml:25
+#: doc/classes/TextureButton.xml:31
msgid ""
"Texture to display when the node is disabled. See [member BaseButton."
"disabled]."
msgstr ""
-#: doc/classes/TextureButton.xml:28
+#: doc/classes/TextureButton.xml:34
msgid "Texture to display when the node has mouse or keyboard focus."
msgstr ""
-#: doc/classes/TextureButton.xml:31
+#: doc/classes/TextureButton.xml:37
msgid "Texture to display when the mouse hovers the node."
msgstr ""
-#: doc/classes/TextureButton.xml:34
+#: doc/classes/TextureButton.xml:40
msgid ""
"Texture to display by default, when the node is [b]not[/b] in the disabled, "
"focused, hover or pressed state."
msgstr ""
-#: doc/classes/TextureButton.xml:37
+#: doc/classes/TextureButton.xml:43
msgid ""
"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 "
"[member BaseButton.shortcut] key."
msgstr ""
-#: doc/classes/TextureButton.xml:42 doc/classes/TextureRect.xml:36
+#: doc/classes/TextureButton.xml:48 doc/classes/TextureRect.xml:36
msgid "Scale to fit the node's bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:45 doc/classes/TextureRect.xml:39
+#: doc/classes/TextureButton.xml:51 doc/classes/TextureRect.xml:39
msgid "Tile inside the node's bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:48 doc/classes/TextureRect.xml:42
+#: doc/classes/TextureButton.xml:54 doc/classes/TextureRect.xml:42
msgid ""
"The texture keeps its original size and stays in the bounding rectangle's "
"top-left corner."
msgstr ""
-#: doc/classes/TextureButton.xml:51 doc/classes/TextureRect.xml:45
+#: doc/classes/TextureButton.xml:57 doc/classes/TextureRect.xml:45
msgid ""
"The texture keeps its original size and stays centered in the node's "
"bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:54 doc/classes/TextureRect.xml:48
+#: doc/classes/TextureButton.xml:60 doc/classes/TextureRect.xml:48
msgid ""
"Scale the texture to fit the node's bounding rectangle, but maintain the "
"texture's aspect ratio."
msgstr ""
-#: doc/classes/TextureButton.xml:57
+#: doc/classes/TextureButton.xml:63
msgid ""
"Scale the texture to fit the node's bounding rectangle, center it, and "
"maintain its aspect ratio."
msgstr ""
-#: doc/classes/TextureButton.xml:60 doc/classes/TextureRect.xml:54
+#: doc/classes/TextureButton.xml:66 doc/classes/TextureRect.xml:54
msgid ""
"Scale the texture so that the shorter side fits the bounding rectangle. The "
"other side clips to the node's limits."
@@ -50724,19 +51433,25 @@ msgid ""
"advised if working with shared objects."
msgstr ""
-#: doc/classes/Thread.xml:17
+#: doc/classes/Thread.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/threads/thread_safe_apis."
+"html"
+msgstr ""
+
+#: doc/classes/Thread.xml:18
msgid ""
"Returns the current [Thread]'s ID, uniquely identifying it among all threads."
msgstr ""
-#: doc/classes/Thread.xml:24
+#: doc/classes/Thread.xml:25
msgid ""
"Returns [code]true[/code] if this [Thread] is currently active. An active "
"[Thread] cannot start work on a new method but can be joined with [method "
"wait_to_finish]."
msgstr ""
-#: doc/classes/Thread.xml:39
+#: doc/classes/Thread.xml:40
msgid ""
"Starts a new [Thread] that runs [code]method[/code] on object "
"[code]instance[/code] with [code]userdata[/code] passed as an argument. Even "
@@ -50746,21 +51461,21 @@ msgid ""
"Returns [constant OK] on success, or [constant ERR_CANT_CREATE] on failure."
msgstr ""
-#: doc/classes/Thread.xml:47
+#: doc/classes/Thread.xml:48
msgid ""
"Joins the [Thread] and waits for it to finish. Returns what the method "
"called returned."
msgstr ""
-#: doc/classes/Thread.xml:53
+#: doc/classes/Thread.xml:54
msgid "A thread running with lower priority than normally."
msgstr ""
-#: doc/classes/Thread.xml:56
+#: doc/classes/Thread.xml:57
msgid "A thread with a standard priority."
msgstr ""
-#: doc/classes/Thread.xml:59
+#: doc/classes/Thread.xml:60
msgid "A thread running with higher priority than normally."
msgstr ""
@@ -51295,50 +52010,61 @@ msgid "Returns the [Transform2D] of a tile's shape."
msgstr ""
#: doc/classes/TileSet.xml:481
-msgid "Returns an array of the tile's shapes."
+msgid ""
+"Returns an array of dictionaries describing the tile's shapes.\n"
+"[b]Dictionary structure in the array returned by this method:[/b]\n"
+"[codeblock]\n"
+"{\n"
+" \"autotile_coord\": Vector2,\n"
+" \"one_way\": bool,\n"
+" \"one_way_margin\": int,\n"
+" \"shape\": CollisionShape2D,\n"
+" \"shape_transform\": Transform2D,\n"
+"}\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/TileSet.xml:490
+#: doc/classes/TileSet.xml:500
msgid "Returns the tile's texture."
msgstr ""
-#: doc/classes/TileSet.xml:499
+#: doc/classes/TileSet.xml:509
msgid "Returns the texture offset of the tile."
msgstr ""
-#: doc/classes/TileSet.xml:508
+#: doc/classes/TileSet.xml:518
msgid "Returns the tile's [enum TileMode]."
msgstr ""
-#: doc/classes/TileSet.xml:517
+#: doc/classes/TileSet.xml:527
msgid "Returns the tile's Z index (drawing layer)."
msgstr ""
-#: doc/classes/TileSet.xml:528
+#: doc/classes/TileSet.xml:538
msgid "Sets a light occluder for the tile."
msgstr ""
-#: doc/classes/TileSet.xml:539
+#: doc/classes/TileSet.xml:549
msgid "Sets the tile's material."
msgstr ""
-#: doc/classes/TileSet.xml:550
+#: doc/classes/TileSet.xml:560
msgid "Sets the tile's modulation color."
msgstr ""
-#: doc/classes/TileSet.xml:561
+#: doc/classes/TileSet.xml:571
msgid "Sets the tile's name."
msgstr ""
-#: doc/classes/TileSet.xml:572
+#: doc/classes/TileSet.xml:582
msgid "Sets the tile's navigation polygon."
msgstr ""
-#: doc/classes/TileSet.xml:583
+#: doc/classes/TileSet.xml:593
msgid "Sets an offset for the tile's navigation polygon."
msgstr ""
-#: doc/classes/TileSet.xml:594
+#: doc/classes/TileSet.xml:604
msgid ""
"Sets the tile's normal map texture.\n"
"[b]Note:[/b] Godot expects the normal map to use X+, Y-, and Z+ coordinates. "
@@ -51347,48 +52073,48 @@ msgid ""
"a comparison of normal map coordinates expected by popular engines."
msgstr ""
-#: doc/classes/TileSet.xml:606
+#: doc/classes/TileSet.xml:616
msgid "Sets an offset for the tile's light occluder."
msgstr ""
-#: doc/classes/TileSet.xml:617
+#: doc/classes/TileSet.xml:627
msgid ""
"Sets the tile's sub-region in the texture. This is common in texture atlases."
msgstr ""
-#: doc/classes/TileSet.xml:630
+#: doc/classes/TileSet.xml:640
msgid "Sets a shape for the tile, enabling collision."
msgstr ""
-#: doc/classes/TileSet.xml:643
+#: doc/classes/TileSet.xml:653
msgid "Sets the offset of a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:656
+#: doc/classes/TileSet.xml:666
msgid "Enables one-way collision on a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:681
+#: doc/classes/TileSet.xml:691
msgid "Sets a [Transform2D] on a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:692
+#: doc/classes/TileSet.xml:702
msgid "Sets an array of shapes for the tile, enabling collision."
msgstr ""
-#: doc/classes/TileSet.xml:703
+#: doc/classes/TileSet.xml:713
msgid "Sets the tile's texture."
msgstr ""
-#: doc/classes/TileSet.xml:714
+#: doc/classes/TileSet.xml:724
msgid "Sets the tile's texture offset."
msgstr ""
-#: doc/classes/TileSet.xml:725
+#: doc/classes/TileSet.xml:735
msgid "Sets the tile's [enum TileMode]."
msgstr ""
-#: doc/classes/TileSet.xml:736
+#: doc/classes/TileSet.xml:746
msgid "Sets the tile's drawing index."
msgstr ""
@@ -51399,14 +52125,16 @@ msgstr ""
#: doc/classes/Timer.xml:7
msgid ""
"Counts down a specified interval and emits a signal on reaching 0. Can be "
-"set to repeat or \"one-shot\" mode."
+"set to repeat or \"one-shot\" mode.\n"
+"[b]Note:[/b] To create an one-shot timer without instantiating a node, use "
+"[method SceneTree.create_timer]."
msgstr ""
-#: doc/classes/Timer.xml:16
+#: doc/classes/Timer.xml:17
msgid "Returns [code]true[/code] if the timer is stopped."
msgstr ""
-#: doc/classes/Timer.xml:25
+#: doc/classes/Timer.xml:26
msgid ""
"Starts the timer. Sets [code]wait_time[/code] to [code]time_sec[/code] if "
"[code]time_sec > 0[/code]. This also resets the remaining time to "
@@ -51414,11 +52142,11 @@ msgid ""
"[b]Note:[/b] this method will not resume a paused timer. See [member paused]."
msgstr ""
-#: doc/classes/Timer.xml:33
+#: doc/classes/Timer.xml:34
msgid "Stops the timer."
msgstr ""
-#: doc/classes/Timer.xml:39
+#: doc/classes/Timer.xml:40
msgid ""
"If [code]true[/code], the timer will automatically start when entering the "
"scene tree.\n"
@@ -51426,40 +52154,40 @@ msgid ""
"the timer enters the scene tree and starts."
msgstr ""
-#: doc/classes/Timer.xml:43
+#: doc/classes/Timer.xml:44
msgid ""
"If [code]true[/code], the timer will stop when reaching 0. If [code]false[/"
"code], it will restart."
msgstr ""
-#: doc/classes/Timer.xml:46
+#: doc/classes/Timer.xml:47
msgid ""
"If [code]true[/code], the timer is paused and will not process until it is "
"unpaused again, even if [method start] is called."
msgstr ""
-#: doc/classes/Timer.xml:49
+#: doc/classes/Timer.xml:50
msgid "Processing mode. See [enum TimerProcessMode]."
msgstr ""
-#: doc/classes/Timer.xml:52
+#: doc/classes/Timer.xml:53
msgid ""
"The timer's remaining time in seconds. Returns 0 if the timer is inactive.\n"
"[b]Note:[/b] You cannot set this value. To change the timer's remaining "
"time, use [method start]."
msgstr ""
-#: doc/classes/Timer.xml:56
+#: doc/classes/Timer.xml:57
msgid "Wait time in seconds."
msgstr ""
-#: doc/classes/Timer.xml:68
+#: doc/classes/Timer.xml:69
msgid ""
"Update the timer during the physics step at each frame (fixed framerate "
"processing)."
msgstr ""
-#: doc/classes/Timer.xml:71
+#: doc/classes/Timer.xml:72
msgid "Update the timer during the idle time at each frame."
msgstr ""
@@ -51538,60 +52266,66 @@ msgstr ""
#: doc/classes/Transform.xml:7
msgid ""
-"Represents one or many transformations in 3D space such as translation, "
-"rotation, or scaling. It consists of a [member basis] and an [member "
-"origin]. It is similar to a 3×4 matrix."
+"3×4 matrix (3 rows, 4 columns) used for 3D linear transformations. It can "
+"represent transformations such as translation, rotation, or scaling. It "
+"consists of a [member basis] (first 3 columns) and a [Vector3] for the "
+"[member origin] (last column).\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
msgstr ""
-#: doc/classes/Transform.xml:26
+#: doc/classes/Transform.xml:28
msgid ""
-"Constructs the Transform from four [Vector3]. Each axis corresponds to local "
-"basis vectors (some of which may be scaled)."
+"Constructs a Transform from four [Vector3] values (matrix columns). Each "
+"axis corresponds to local basis vectors (some of which may be scaled)."
msgstr ""
-#: doc/classes/Transform.xml:37
-msgid "Constructs the Transform from a [Basis] and [Vector3]."
+#: doc/classes/Transform.xml:39
+msgid "Constructs a Transform from a [Basis] and [Vector3]."
msgstr ""
-#: doc/classes/Transform.xml:46
-msgid "Constructs the Transform from a [Transform2D]."
+#: doc/classes/Transform.xml:48
+msgid "Constructs a Transform from a [Transform2D]."
msgstr ""
-#: doc/classes/Transform.xml:55
+#: doc/classes/Transform.xml:57
msgid ""
-"Constructs the Transform from a [Quat]. The origin will be Vector3(0, 0, 0)."
+"Constructs a Transform from a [Quat]. The origin will be [code]Vector3(0, 0, "
+"0)[/code]."
msgstr ""
-#: doc/classes/Transform.xml:64
+#: doc/classes/Transform.xml:66
msgid ""
"Constructs the Transform from a [Basis]. The origin will be Vector3(0, 0, 0)."
msgstr ""
-#: doc/classes/Transform.xml:71
+#: doc/classes/Transform.xml:73 doc/classes/Transform2D.xml:51
msgid ""
"Returns the inverse of the transform, under the assumption that the "
"transformation is composed of rotation, scaling and translation."
msgstr ""
-#: doc/classes/Transform.xml:82
-msgid "Interpolates the transform to other Transform by weight amount (0-1)."
+#: doc/classes/Transform.xml:84
+msgid ""
+"Interpolates the transform to other Transform by weight amount (on the range "
+"of 0.0 to 1.0)."
msgstr ""
-#: doc/classes/Transform.xml:89 doc/classes/Transform2D.xml:106
+#: doc/classes/Transform.xml:91
msgid ""
"Returns the inverse of the transform, under the assumption that the "
"transformation is composed of rotation and translation (no scaling, use "
"affine_inverse for transforms with scaling)."
msgstr ""
-#: doc/classes/Transform.xml:98 doc/classes/Transform2D.xml:115
+#: doc/classes/Transform.xml:100 doc/classes/Transform2D.xml:119
msgid ""
"Returns [code]true[/code] if this transform and [code]transform[/code] are "
"approximately equal, by calling [code]is_equal_approx[/code] on each "
"component."
msgstr ""
-#: doc/classes/Transform.xml:109
+#: doc/classes/Transform.xml:111
msgid ""
"Returns a copy of the transform rotated such that its -Z axis points towards "
"the [code]target[/code] position.\n"
@@ -51601,25 +52335,25 @@ msgid ""
"Operations take place in global space."
msgstr ""
-#: doc/classes/Transform.xml:118 doc/classes/Transform2D.xml:122
+#: doc/classes/Transform.xml:120
msgid ""
"Returns the transform with the basis orthogonal (90 degrees), and normalized "
"axis vectors."
msgstr ""
-#: doc/classes/Transform.xml:129
+#: doc/classes/Transform.xml:131
msgid ""
"Rotates the transform around the given axis by the given angle (in radians), "
"using matrix multiplication. The axis must be a normalized vector."
msgstr ""
-#: doc/classes/Transform.xml:138
+#: doc/classes/Transform.xml:140
msgid ""
"Scales basis and origin of the transform by the given scale factor, using "
"matrix multiplication."
msgstr ""
-#: doc/classes/Transform.xml:147 doc/classes/Transform2D.xml:149
+#: doc/classes/Transform.xml:149 doc/classes/Transform2D.xml:153
msgid ""
"Translates the transform by the given offset, relative to the transform's "
"basis vectors.\n"
@@ -51627,152 +52361,162 @@ msgid ""
"multiplication."
msgstr ""
-#: doc/classes/Transform.xml:157
+#: doc/classes/Transform.xml:159
msgid ""
"Transforms the given [Vector3], [Plane], [AABB], or [PackedVector3Array] by "
"this transform."
msgstr ""
-#: doc/classes/Transform.xml:166
+#: doc/classes/Transform.xml:168
msgid ""
"Inverse-transforms the given [Vector3], [Plane], [AABB], or "
"[PackedVector3Array] by this transform."
msgstr ""
-#: doc/classes/Transform.xml:172
+#: doc/classes/Transform.xml:174
msgid ""
"The basis is a matrix containing 3 [Vector3] as its columns: X axis, Y axis, "
"and Z axis. These vectors can be interpreted as the basis vectors of local "
"coordinate system traveling with the object."
msgstr ""
-#: doc/classes/Transform.xml:175
-msgid "The translation offset of the transform."
+#: doc/classes/Transform.xml:177
+msgid ""
+"The translation offset of the transform (column 3, the fourth column). "
+"Equivalent to array index [code]3[/code]."
msgstr ""
-#: doc/classes/Transform.xml:180
+#: doc/classes/Transform.xml:182
msgid ""
"[Transform] with no translation, rotation or scaling applied. When applied "
"to other data structures, [constant IDENTITY] performs no transformation."
msgstr ""
-#: doc/classes/Transform.xml:183
+#: doc/classes/Transform.xml:185
msgid "[Transform] with mirroring applied perpendicular to the YZ plane."
msgstr ""
-#: doc/classes/Transform.xml:186
+#: doc/classes/Transform.xml:188
msgid "[Transform] with mirroring applied perpendicular to the XZ plane."
msgstr ""
-#: doc/classes/Transform.xml:189
+#: doc/classes/Transform.xml:191
msgid "[Transform] with mirroring applied perpendicular to the XY plane."
msgstr ""
#: doc/classes/Transform2D.xml:4
-msgid "2D transformation (3×2 matrix)."
+msgid "2D transformation (2×3 matrix)."
msgstr ""
#: doc/classes/Transform2D.xml:7
msgid ""
-"Represents one or many transformations in 2D space such as translation, "
-"rotation, or scaling. It consists of two [member x] and [member y] "
-"[Vector2]s and an [member origin]. It is similar to a 3×2 matrix."
+"2×3 matrix (2 rows, 3 columns) used for 2D linear transformations. It can "
+"represent transformations such as translation, rotation, or scaling. It "
+"consists of a three [Vector2] values: [member x], [member y], and the "
+"[member origin].\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
msgstr ""
-#: doc/classes/Transform2D.xml:18
+#: doc/classes/Transform2D.xml:20
msgid "Constructs the transform from a 3D [Transform]."
msgstr ""
-#: doc/classes/Transform2D.xml:31
+#: doc/classes/Transform2D.xml:33
msgid ""
-"Constructs the transform from 3 [Vector2]s representing x, y, and origin."
+"Constructs the transform from 3 [Vector2] values representing [member x], "
+"[member y], and the [member origin] (the three column vectors)."
msgstr ""
-#: doc/classes/Transform2D.xml:42
+#: doc/classes/Transform2D.xml:44
msgid "Constructs the transform from a given angle (in radians) and position."
msgstr ""
-#: doc/classes/Transform2D.xml:58
-msgid "Transforms the given vector by this transform's basis (no translation)."
+#: doc/classes/Transform2D.xml:60
+msgid ""
+"Returns a vector transformed (multiplied) by the basis matrix.\n"
+"This method does not account for translation (the origin vector)."
msgstr ""
-#: doc/classes/Transform2D.xml:67
+#: doc/classes/Transform2D.xml:70
msgid ""
-"Inverse-transforms the given vector by this transform's basis (no "
-"translation)."
+"Returns a vector transformed (multiplied) by the inverse basis matrix.\n"
+"This method does not account for translation (the origin vector)."
msgstr ""
-#: doc/classes/Transform2D.xml:74
+#: doc/classes/Transform2D.xml:78
msgid "Returns the transform's origin (translation)."
msgstr ""
-#: doc/classes/Transform2D.xml:81
+#: doc/classes/Transform2D.xml:85
msgid "Returns the transform's rotation (in radians)."
msgstr ""
-#: doc/classes/Transform2D.xml:88
+#: doc/classes/Transform2D.xml:92
msgid "Returns the scale."
msgstr ""
-#: doc/classes/Transform2D.xml:99
+#: doc/classes/Transform2D.xml:103
msgid ""
"Returns a transform interpolated between this transform and another by a "
-"given weight (0-1)."
+"given weight (on the range of 0.0 to 1.0)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:110
+msgid ""
+"Returns the inverse of the transform, under the assumption that the "
+"transformation is composed of rotation and translation (no scaling, use "
+"[method affine_inverse] for transforms with scaling)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:126
+msgid ""
+"Returns the transform with the basis orthogonal (90 degrees), and normalized "
+"axis vectors (scale of 1 or -1)."
msgstr ""
-#: doc/classes/Transform2D.xml:131
+#: doc/classes/Transform2D.xml:135
msgid ""
"Rotates the transform by the given angle (in radians), using matrix "
"multiplication."
msgstr ""
-#: doc/classes/Transform2D.xml:140
+#: doc/classes/Transform2D.xml:144
msgid ""
"Scales the transform by the given scale factor, using matrix multiplication."
msgstr ""
-#: doc/classes/Transform2D.xml:159
+#: doc/classes/Transform2D.xml:163
msgid ""
"Transforms the given [Vector2], [Rect2], or [PackedVector2Array] by this "
"transform."
msgstr ""
-#: doc/classes/Transform2D.xml:168
+#: doc/classes/Transform2D.xml:172
msgid ""
"Inverse-transforms the given [Vector2], [Rect2], or [PackedVector2Array] by "
"this transform."
msgstr ""
-#: doc/classes/Transform2D.xml:174
-msgid "The transform's translation offset."
-msgstr ""
-
-#: doc/classes/Transform2D.xml:177
+#: doc/classes/Transform2D.xml:178
msgid ""
-"The X axis of 2×2 basis matrix containing 2 [Vector2]s as its columns: X "
-"axis and Y axis. These vectors can be interpreted as the basis vectors of "
-"local coordinate system traveling with the object."
+"The origin vector (column 2, the third column). Equivalent to array index "
+"[code]2[/code]. The origin vector represents translation."
msgstr ""
-#: doc/classes/Transform2D.xml:180
+#: doc/classes/Transform2D.xml:189
msgid ""
-"The Y axis of 2×2 basis matrix containing 2 [Vector2]s as its columns: X "
-"axis and Y axis. These vectors can be interpreted as the basis vectors of "
-"local coordinate system traveling with the object."
-msgstr ""
-
-#: doc/classes/Transform2D.xml:185
-msgid ""
-"[Transform2D] with no translation, rotation or scaling applied. When applied "
-"to other data structures, [constant IDENTITY] performs no transformation."
+"The identity [Transform2D] with no translation, rotation or scaling applied. "
+"When applied to other data structures, [constant IDENTITY] performs no "
+"transformation."
msgstr ""
-#: doc/classes/Transform2D.xml:188
-msgid "[Transform2D] with mirroring applied parallel to the X axis."
+#: doc/classes/Transform2D.xml:192
+msgid "The [Transform2D] that will flip something along the X axis."
msgstr ""
-#: doc/classes/Transform2D.xml:191
-msgid "[Transform2D] with mirroring applied parallel to the Y axis."
+#: doc/classes/Transform2D.xml:195
+msgid "The [Transform2D] that will flip something along the Y axis."
msgstr ""
#: doc/classes/Translation.xml:4
@@ -52436,7 +53180,8 @@ msgid "Returns the column's cell mode."
msgstr ""
#: doc/classes/TreeItem.xml:121
-msgid "Returns the TreeItem's child items."
+msgid ""
+"Returns the TreeItem's first child item or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:130
@@ -52468,28 +53213,32 @@ msgid "Returns the icon [Texture2D] region as [Rect2]."
msgstr ""
#: doc/classes/TreeItem.xml:199
-msgid "Returns the next TreeItem in the tree."
+msgid ""
+"Returns the next TreeItem in the tree or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:208
msgid ""
-"Returns the next visible TreeItem in the tree.\n"
+"Returns the next visible TreeItem in the tree or a null object if there is "
+"none.\n"
"If [code]wrap[/code] is enabled, the method will wrap around to the first "
"visible element in the tree when called on the last visible element, "
"otherwise it returns [code]null[/code]."
msgstr ""
#: doc/classes/TreeItem.xml:216
-msgid "Returns the parent TreeItem."
+msgid "Returns the parent TreeItem or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:223
-msgid "Returns the previous TreeItem in the tree."
+msgid ""
+"Returns the previous TreeItem in the tree or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:232
msgid ""
-"Returns the previous visible TreeItem in the tree.\n"
+"Returns the previous visible TreeItem in the tree or a null object if there "
+"is none.\n"
"If [code]wrap[/code] is enabled, the method will wrap around to the last "
"visible element in the tree when called on the first visible element, "
"otherwise it returns [code]null[/code]."
@@ -52999,6 +53748,10 @@ msgid ""
"A simple server that opens a UDP socket and returns connected "
"[PacketPeerUDP] upon receiving new packets. See also [method PacketPeerUDP."
"connect_to_host].\n"
+"After starting the server ([method listen]), you will need to [method poll] "
+"it at regular intervals (e.g. inside [method Node._process]) for it to "
+"process new packets, delivering them to the appropriate [PacketPeerUDP], and "
+"taking new connections.\n"
"Below a small example of how it can be used:\n"
"[codeblock]\n"
"# server.gd\n"
@@ -53011,6 +53764,7 @@ msgid ""
" server.listen(4242)\n"
"\n"
"func _process(delta):\n"
+" server.poll() # Important!\n"
" if server.is_connection_available():\n"
" var peer : PacketPeerUDP = server.take_connection()\n"
" var pkt = peer.get_packet()\n"
@@ -53046,35 +53800,56 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/UDPServer.xml:60
+#: doc/classes/UDPServer.xml:62
+#, fuzzy
msgid ""
-"Returns [code]true[/code] if a packet with a new address/port combination is "
-"received on the socket."
-msgstr ""
+"Returns [code]true[/code] if a packet with a new address/port combination "
+"was received on the socket."
+msgstr "Ritorna [code]true[/code] se [code]s[/code] è zero o quasi zero."
-#: doc/classes/UDPServer.xml:67
+#: doc/classes/UDPServer.xml:69
msgid ""
"Returns [code]true[/code] if the socket is open and listening on a port."
msgstr ""
-#: doc/classes/UDPServer.xml:78
+#: doc/classes/UDPServer.xml:80
msgid ""
"Starts the server by opening a UDP socket listening on the given port. You "
"can optionally specify a [code]bind_address[/code] to only listen for "
"packets sent to that address. See also [method PacketPeerUDP.listen]."
msgstr ""
-#: doc/classes/UDPServer.xml:85
+#: doc/classes/UDPServer.xml:87
msgid ""
-"Stops the server, closing the UDP socket if open. Will not disconnect any "
-"connected [PacketPeerUDP]."
+"Call this method at regular intervals (e.g. inside [method Node._process]) "
+"to process new packets. And packet from known address/port pair will be "
+"delivered to the appropriate [PacketPeerUDP], any packet received from an "
+"unknown address/port pair will be added as a pending connection (see [method "
+"is_connection_available], [method take_connection]). The maximum number of "
+"pending connection is defined via [member max_pending_connections]."
msgstr ""
-#: doc/classes/UDPServer.xml:92
+#: doc/classes/UDPServer.xml:94
msgid ""
-"Returns a [PacketPeerUDP] connected to the address/port combination of the "
-"first packet in queue. Will return [code]null[/code] if no packet is in "
-"queue. See also [method PacketPeerUDP.connect_to_host]."
+"Stops the server, closing the UDP socket if open. Will close all connected "
+"[PacketPeerUDP] accepted via [method take_connection] (remote peers will not "
+"be notified)."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:101
+msgid ""
+"Returns the first pending connection (connected to the appropriate address/"
+"port). Will return [code]null[/code] if no new connection is available. See "
+"also [method is_connection_available], [method PacketPeerUDP."
+"connect_to_host]."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:107
+msgid ""
+"Define the maximum number of pending connections, during [method poll], any "
+"new pending connection exceeding that value will be automatically dropped. "
+"Setting this value to [code]0[/code] effectively prevents any new pending "
+"connection to be accepted (e.g. when all your players have connected)."
msgstr ""
#: doc/classes/UndoRedo.xml:4
@@ -53715,24 +54490,27 @@ msgstr ""
#: doc/classes/Vector2.xml:46
msgid ""
-"Returns the vector's angle in radians with respect to the X axis, or [code]"
-"(1, 0)[/code] vector.\n"
+"Returns this vector's angle with respect to the X axis, or [code](1, 0)[/"
+"code] vector, in radians.\n"
"Equivalent to the result of [method @GDScript.atan2] when called with the "
-"vector's [member x] and [member y] as parameters: [code]atan2(x, y)[/code]."
+"vector's [member y] and [member x] as parameters: [code]atan2(y, x)[/code]."
msgstr ""
#: doc/classes/Vector2.xml:56
-msgid "Returns the angle in radians between the two vectors."
-msgstr ""
+#, fuzzy
+msgid "Returns the angle to the given vector, in radians."
+msgstr "Restituisce il resto dei due vettori."
#: doc/classes/Vector2.xml:65
msgid ""
-"Returns the angle in radians between the line connecting the two points and "
-"the X coordinate."
+"Returns the angle between the line connecting the two points and the X axis, "
+"in radians."
msgstr ""
-#: doc/classes/Vector2.xml:72 doc/classes/Vector2i.xml:46
-msgid "Returns the ratio of [member x] to [member y]."
+#: doc/classes/Vector2.xml:72
+msgid ""
+"Returns the aspect ratio of this vector, the ratio of [member x] to [member "
+"y]."
msgstr ""
#: doc/classes/Vector2.xml:81 doc/classes/Vector3.xml:59
@@ -53741,24 +54519,28 @@ msgid ""
msgstr ""
#: doc/classes/Vector2.xml:88
-msgid "Returns the vector with all components rounded up."
+msgid ""
+"Returns the vector with all components rounded up (towards positive "
+"infinity)."
msgstr ""
#: doc/classes/Vector2.xml:97
-msgid "Returns the vector with a maximum length."
+msgid ""
+"Returns the vector with a maximum length by limiting its length to "
+"[code]length[/code]."
msgstr ""
#: doc/classes/Vector2.xml:106
-msgid ""
-"Returns the 2-dimensional analog of the cross product with the given vector."
-msgstr ""
+#, fuzzy
+msgid "Returns the cross product of this vector and [code]with[/code]."
+msgstr "Calcola il prodotto vettoriale di due vettori."
#: doc/classes/Vector2.xml:121
msgid ""
"Cubically interpolates between this vector and [code]b[/code] using "
"[code]pre_a[/code] and [code]post_b[/code] as handles, and returns the "
-"result at position [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation."
+"result at position [code]t[/code]. [code]t[/code] is on the range of 0.0 to "
+"1.0, representing the amount of interpolation."
msgstr ""
#: doc/classes/Vector2.xml:130 doc/classes/Vector3.xml:99
@@ -53766,182 +54548,200 @@ msgid ""
"Returns the normalized vector pointing from this vector to [code]b[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:139
+#: doc/classes/Vector2.xml:139 doc/classes/Vector3.xml:108
msgid ""
-"Returns the squared distance to vector [code]b[/code]. Prefer this function "
-"over [method distance_to] if you need to sort vectors or need the squared "
-"distance for some formula."
+"Returns the squared distance between this vector and [code]b[/code].\n"
+"This method runs faster than [method distance_to], so prefer it if you need "
+"to compare vectors or need the squared distance for some formula."
msgstr ""
-#: doc/classes/Vector2.xml:148
-msgid "Returns the distance to vector [code]b[/code]."
+#: doc/classes/Vector2.xml:149
+msgid "Returns the distance between this vector and [code]to[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:157
-msgid "Returns the dot product with vector [code]b[/code]."
+#: doc/classes/Vector2.xml:158
+msgid ""
+"Returns the dot product of this vector and [code]with[/code]. This can be "
+"used to compare the angle between two vectors. For example, this can be used "
+"to determine whether an enemy is facing the player.\n"
+"The dot product will be [code]0[/code] for a straight angle (90 degrees), "
+"greater than 0 for angles narrower than 90 degrees and lower than 0 for "
+"angles wider than 90 degrees.\n"
+"When using unit (normalized) vectors, the result will always be between "
+"[code]-1.0[/code] (180 degree angle) when the vectors are facing opposite "
+"directions, and [code]1.0[/code] (0 degree angle) when the vectors are "
+"aligned.\n"
+"[b]Note:[/b] [code]a.dot(b)[/code] is equivalent to [code]b.dot(a)[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:164
-msgid "Returns the vector with all components rounded down."
+#: doc/classes/Vector2.xml:168
+msgid ""
+"Returns the vector with all components rounded down (towards negative "
+"infinity)."
msgstr ""
-#: doc/classes/Vector2.xml:173 doc/classes/Vector3.xml:149
+#: doc/classes/Vector2.xml:177 doc/classes/Vector3.xml:153
msgid ""
"Returns [code]true[/code] if this vector and [code]v[/code] are "
"approximately equal, by running [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/Vector2.xml:180 doc/classes/Vector3.xml:156
-msgid "Returns [code]true[/code] if the vector is normalized."
-msgstr ""
+#: doc/classes/Vector2.xml:184 doc/classes/Vector3.xml:160
+#, fuzzy
+msgid ""
+"Returns [code]true[/code] if the vector is normalized, and false otherwise."
+msgstr "Ritorna [code]true[/code] se [code]s[/code] è zero o quasi zero."
-#: doc/classes/Vector2.xml:187 doc/classes/Vector3.xml:163
-msgid "Returns the vector's length."
-msgstr ""
+#: doc/classes/Vector2.xml:191 doc/classes/Vector3.xml:167
+#, fuzzy
+msgid "Returns the length (magnitude) of this vector."
+msgstr "Restituisce il resto dei due vettori."
-#: doc/classes/Vector2.xml:194
+#: doc/classes/Vector2.xml:198 doc/classes/Vector3.xml:174
msgid ""
-"Returns the vector's length squared. Prefer this method over [method length] "
-"if you need to sort vectors or need the squared length for some formula."
+"Returns the squared length (squared magnitude) of this vector.\n"
+"This method runs faster than [method length], so prefer it if you need to "
+"compare vectors or need the squared distance for some formula."
msgstr ""
-#: doc/classes/Vector2.xml:205
+#: doc/classes/Vector2.xml:210 doc/classes/Vector3.xml:186
msgid ""
"Returns the result of the linear interpolation between this vector and "
-"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation."
+"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is on the range of "
+"0.0 to 1.0, representing the amount of interpolation."
msgstr ""
-#: doc/classes/Vector2.xml:216 doc/classes/Vector3.xml:206
+#: doc/classes/Vector2.xml:221
msgid ""
"Moves the vector toward [code]to[/code] by the fixed [code]delta[/code] "
"amount."
msgstr ""
-#: doc/classes/Vector2.xml:223 doc/classes/Vector3.xml:213
+#: doc/classes/Vector2.xml:228 doc/classes/Vector3.xml:218
msgid ""
"Returns the vector scaled to unit length. Equivalent to [code]v / v.length()"
"[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:232 doc/classes/Vector3.xml:231
+#: doc/classes/Vector2.xml:237 doc/classes/Vector3.xml:236
msgid ""
-"Returns a vector composed of the [code]fposmod[/code] of this vector's "
+"Returns a vector composed of the [method @GDScript.fposmod] of this vector's "
"components and [code]mod[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:241 doc/classes/Vector3.xml:240
+#: doc/classes/Vector2.xml:246 doc/classes/Vector3.xml:245
msgid ""
-"Returns a vector composed of the [code]fposmod[/code] of this vector's "
+"Returns a vector composed of the [method @GDScript.fposmod] of this vector's "
"components and [code]modv[/code]'s components."
msgstr ""
-#: doc/classes/Vector2.xml:250 doc/classes/Vector3.xml:249
+#: doc/classes/Vector2.xml:255
msgid "Returns the vector projected onto the vector [code]b[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:259 doc/classes/Vector3.xml:258
+#: doc/classes/Vector2.xml:264
msgid "Returns the vector reflected from a plane defined by the given normal."
msgstr ""
-#: doc/classes/Vector2.xml:268
+#: doc/classes/Vector2.xml:273
msgid ""
"Returns the vector rotated by [code]phi[/code] radians. See also [method "
"@GDScript.deg2rad]."
msgstr ""
-#: doc/classes/Vector2.xml:275 doc/classes/Vector3.xml:276
+#: doc/classes/Vector2.xml:280
msgid ""
"Returns the vector with all components rounded to the nearest integer, with "
"halfway cases rounded away from zero."
msgstr ""
-#: doc/classes/Vector2.xml:282 doc/classes/Vector2i.xml:53
-#: doc/classes/Vector3.xml:283 doc/classes/Vector3i.xml:55
+#: doc/classes/Vector2.xml:287
msgid ""
"Returns the vector with each component set to one or negative one, depending "
-"on the signs of the components."
+"on the signs of the components, or zero if the component is zero, by calling "
+"[method @GDScript.sign] on each component."
msgstr ""
-#: doc/classes/Vector2.xml:293 doc/classes/Vector3.xml:294
+#: doc/classes/Vector2.xml:298 doc/classes/Vector3.xml:299
msgid ""
"Returns the result of spherical linear interpolation between this vector and "
-"[code]b[/code], by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation.\n"
+"[code]b[/code], by amount [code]t[/code]. [code]t[/code] is on the range of "
+"0.0 to 1.0, representing the amount of interpolation.\n"
"[b]Note:[/b] Both vectors must be normalized."
msgstr ""
-#: doc/classes/Vector2.xml:303 doc/classes/Vector3.xml:304
-msgid ""
-"Returns the component of the vector along a plane defined by the given "
-"normal."
+#: doc/classes/Vector2.xml:308 doc/classes/Vector3.xml:309
+msgid "Returns this vector slid along a plane defined by the given normal."
msgstr ""
-#: doc/classes/Vector2.xml:312 doc/classes/Vector3.xml:313
-msgid "Returns the vector snapped to a grid with the given size."
+#: doc/classes/Vector2.xml:317 doc/classes/Vector3.xml:318
+msgid ""
+"Returns this vector with each component snapped to the nearest multiple of "
+"[code]step[/code]. This can also be used to round to an arbitrary number of "
+"decimals."
msgstr ""
-#: doc/classes/Vector2.xml:319
-msgid "Returns a perpendicular vector."
+#: doc/classes/Vector2.xml:324
+msgid ""
+"Returns a perpendicular vector rotated 90 degrees counter-clockwise compared "
+"to the original, with the same length."
msgstr ""
-#: doc/classes/Vector2.xml:325 doc/classes/Vector2i.xml:59
-#: doc/classes/Vector3.xml:326 doc/classes/Vector3i.xml:61
+#: doc/classes/Vector2.xml:330 doc/classes/Vector2i.xml:59
+#: doc/classes/Vector3.xml:332 doc/classes/Vector3i.xml:61
msgid ""
"The vector's X component. Also accessible by using the index position [code]"
"[0][/code]."
msgstr ""
-#: doc/classes/Vector2.xml:328 doc/classes/Vector2i.xml:62
-#: doc/classes/Vector3.xml:329 doc/classes/Vector3i.xml:64
+#: doc/classes/Vector2.xml:333 doc/classes/Vector2i.xml:62
+#: doc/classes/Vector3.xml:335 doc/classes/Vector3i.xml:64
msgid ""
"The vector's Y component. Also accessible by using the index position [code]"
"[1][/code]."
msgstr ""
-#: doc/classes/Vector2.xml:333 doc/classes/Vector2i.xml:67
+#: doc/classes/Vector2.xml:338 doc/classes/Vector2i.xml:67
#: doc/classes/Vector3i.xml:72
msgid "Enumerated value for the X axis."
msgstr ""
-#: doc/classes/Vector2.xml:336 doc/classes/Vector2i.xml:70
+#: doc/classes/Vector2.xml:341 doc/classes/Vector2i.xml:70
#: doc/classes/Vector3i.xml:75
msgid "Enumerated value for the Y axis."
msgstr ""
-#: doc/classes/Vector2.xml:339 doc/classes/Vector2i.xml:73
-#: doc/classes/Vector3.xml:346 doc/classes/Vector3i.xml:81
-msgid "Zero vector."
+#: doc/classes/Vector2.xml:344 doc/classes/Vector2i.xml:73
+#: doc/classes/Vector3.xml:352 doc/classes/Vector3i.xml:81
+msgid "Zero vector, a vector with all components set to [code]0[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:342 doc/classes/Vector2i.xml:76
-#: doc/classes/Vector3.xml:349 doc/classes/Vector3i.xml:84
-msgid "One vector."
+#: doc/classes/Vector2.xml:347 doc/classes/Vector2i.xml:76
+#: doc/classes/Vector3.xml:355 doc/classes/Vector3i.xml:84
+msgid "One vector, a vector with all components set to [code]1[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:345 doc/classes/Vector3.xml:352
-msgid "Infinity vector."
+#: doc/classes/Vector2.xml:350 doc/classes/Vector3.xml:358
+msgid ""
+"Infinity vector, a vector with all components set to [constant @GDScript."
+"INF]."
msgstr ""
-#: doc/classes/Vector2.xml:348 doc/classes/Vector2i.xml:79
-#: doc/classes/Vector3.xml:355 doc/classes/Vector3i.xml:87
-msgid "Left unit vector."
+#: doc/classes/Vector2.xml:353 doc/classes/Vector2i.xml:79
+msgid "Left unit vector. Represents the direction of left."
msgstr ""
-#: doc/classes/Vector2.xml:351 doc/classes/Vector2i.xml:82
-#: doc/classes/Vector3.xml:358 doc/classes/Vector3i.xml:90
-msgid "Right unit vector."
+#: doc/classes/Vector2.xml:356 doc/classes/Vector2i.xml:82
+msgid "Right unit vector. Represents the direction of right."
msgstr ""
-#: doc/classes/Vector2.xml:354 doc/classes/Vector2i.xml:85
-#: doc/classes/Vector3.xml:361 doc/classes/Vector3i.xml:93
-msgid "Up unit vector."
+#: doc/classes/Vector2.xml:359 doc/classes/Vector2i.xml:85
+msgid "Up unit vector. Y is down in 2D, so this vector points -Y."
msgstr ""
-#: doc/classes/Vector2.xml:357 doc/classes/Vector2i.xml:88
-#: doc/classes/Vector3.xml:364 doc/classes/Vector3i.xml:96
-msgid "Down unit vector."
+#: doc/classes/Vector2.xml:362 doc/classes/Vector2i.xml:88
+msgid "Down unit vector. Y is down in 2D, so this vector points +Y."
msgstr ""
#: doc/classes/Vector2i.xml:4
@@ -53970,6 +54770,16 @@ msgid ""
"will be truncated."
msgstr ""
+#: doc/classes/Vector2i.xml:46
+msgid "Returns the ratio of [member x] to [member y]."
+msgstr ""
+
+#: doc/classes/Vector2i.xml:53 doc/classes/Vector3i.xml:55
+msgid ""
+"Returns the vector with each component set to one or negative one, depending "
+"on the signs of the components."
+msgstr ""
+
#: doc/classes/Vector3.xml:4
msgid "Vector used for 3D math using floating point coordinates."
msgstr ""
@@ -53994,120 +54804,172 @@ msgid "Returns a [Vector3] with the given components."
msgstr ""
#: doc/classes/Vector3.xml:50
-msgid "Returns the minimum angle to the given vector."
-msgstr ""
+#, fuzzy
+msgid "Returns the minimum angle to the given vector, in radians."
+msgstr "Restituisce il resto dei due vettori."
#: doc/classes/Vector3.xml:66
-msgid "Returns a new vector with all components rounded up."
+msgid ""
+"Returns a new vector with all components rounded up (towards positive "
+"infinity)."
msgstr ""
#: doc/classes/Vector3.xml:75
-msgid "Returns the cross product with [code]b[/code]."
-msgstr ""
+#, fuzzy
+msgid "Returns the cross product of this vector and [code]b[/code]."
+msgstr "Calcola il prodotto vettoriale di due vettori."
#: doc/classes/Vector3.xml:90
msgid ""
"Performs a cubic interpolation between vectors [code]pre_a[/code], [code]a[/"
"code], [code]b[/code], [code]post_b[/code] ([code]a[/code] is current), by "
-"the given amount [code]t[/code]. [code]t[/code] is in the range of [code]0.0 "
-"- 1.0[/code], representing the amount of interpolation."
+"the given amount [code]t[/code]. [code]t[/code] is on the range of 0.0 to "
+"1.0, representing the amount of interpolation."
msgstr ""
-#: doc/classes/Vector3.xml:108
-msgid ""
-"Returns the squared distance to [code]b[/code]. Prefer this function over "
-"[method distance_to] if you need to sort vectors or need the squared "
-"distance for some formula."
-msgstr ""
-
-#: doc/classes/Vector3.xml:117
-msgid "Returns the distance to [code]b[/code]."
+#: doc/classes/Vector3.xml:118
+msgid "Returns the distance between this vector and [code]b[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:126
-msgid "Returns the dot product with [code]b[/code]."
+#: doc/classes/Vector3.xml:127
+msgid ""
+"Returns the dot product of this vector and [code]b[/code]. This can be used "
+"to compare the angle between two vectors. For example, this can be used to "
+"determine whether an enemy is facing the player.\n"
+"The dot product will be [code]0[/code] for a straight angle (90 degrees), "
+"greater than 0 for angles narrower than 90 degrees and lower than 0 for "
+"angles wider than 90 degrees.\n"
+"When using unit (normalized) vectors, the result will always be between "
+"[code]-1.0[/code] (180 degree angle) when the vectors are facing opposite "
+"directions, and [code]1.0[/code] (0 degree angle) when the vectors are "
+"aligned.\n"
+"[b]Note:[/b] [code]a.dot(b)[/code] is equivalent to [code]b.dot(a)[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:133
-msgid "Returns a new vector with all components rounded down."
+#: doc/classes/Vector3.xml:137
+msgid ""
+"Returns a new vector with all components rounded down (towards negative "
+"infinity)."
msgstr ""
-#: doc/classes/Vector3.xml:140
+#: doc/classes/Vector3.xml:144
msgid ""
"Returns the inverse of the vector. This is the same as [code]Vector3( 1.0 / "
"v.x, 1.0 / v.y, 1.0 / v.z )[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:170
+#: doc/classes/Vector3.xml:193 doc/classes/Vector3i.xml:41
msgid ""
-"Returns the vector's length squared. Prefer this function over [method "
-"length] if you need to sort vectors or need the squared length for some "
-"formula."
+"Returns the axis of the vector's largest value. See [code]AXIS_*[/code] "
+"constants. If all components are equal, this method returns [constant "
+"AXIS_X]."
msgstr ""
-#: doc/classes/Vector3.xml:181
+#: doc/classes/Vector3.xml:200 doc/classes/Vector3i.xml:48
msgid ""
-"Returns the result of the linear interpolation between this vector and "
-"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation.."
+"Returns the axis of the vector's smallest value. See [code]AXIS_*[/code] "
+"constants. If all components are equal, this method returns [constant "
+"AXIS_Z]."
msgstr ""
-#: doc/classes/Vector3.xml:188 doc/classes/Vector3i.xml:41
+#: doc/classes/Vector3.xml:211
msgid ""
-"Returns the axis of the vector's largest value. See [code]AXIS_*[/code] "
-"constants."
+"Moves this vector toward [code]to[/code] by the fixed [code]delta[/code] "
+"amount."
+msgstr ""
+
+#: doc/classes/Vector3.xml:227
+msgid "Returns the outer product with [code]b[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:195 doc/classes/Vector3i.xml:48
+#: doc/classes/Vector3.xml:254
+msgid "Returns this vector projected onto another vector [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:263
+msgid "Returns this vector reflected from a plane defined by the given normal."
+msgstr ""
+
+#: doc/classes/Vector3.xml:274
msgid ""
-"Returns the axis of the vector's smallest value. See [code]AXIS_*[/code] "
-"constants."
+"Rotates this vector around a given axis by [code]phi[/code] radians. The "
+"axis must be a normalized vector."
msgstr ""
-#: doc/classes/Vector3.xml:222
-msgid "Returns the outer product with [code]b[/code]."
+#: doc/classes/Vector3.xml:281
+msgid ""
+"Returns this vector with all components rounded to the nearest integer, with "
+"halfway cases rounded away from zero."
msgstr ""
-#: doc/classes/Vector3.xml:269
+#: doc/classes/Vector3.xml:288
msgid ""
-"Rotates the vector around a given axis by [code]phi[/code] radians. The axis "
-"must be a normalized vector."
+"Returns a vector with each component set to one or negative one, depending "
+"on the signs of this vector's components, or zero if the component is zero, "
+"by calling [method @GDScript.sign] on each component."
msgstr ""
-#: doc/classes/Vector3.xml:320
-msgid "Returns a diagonal matrix with the vector as main diagonal."
+#: doc/classes/Vector3.xml:325
+msgid ""
+"Returns a diagonal matrix with the vector as main diagonal.\n"
+"This is equivalent to a Basis with no rotation or shearing and this vector's "
+"components set as the scale."
msgstr ""
-#: doc/classes/Vector3.xml:332 doc/classes/Vector3i.xml:67
+#: doc/classes/Vector3.xml:338 doc/classes/Vector3i.xml:67
msgid ""
"The vector's Z component. Also accessible by using the index position [code]"
"[2][/code]."
msgstr ""
-#: doc/classes/Vector3.xml:337
+#: doc/classes/Vector3.xml:343
msgid ""
"Enumerated value for the X axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:340
+#: doc/classes/Vector3.xml:346
msgid ""
"Enumerated value for the Y axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:343
+#: doc/classes/Vector3.xml:349
msgid ""
"Enumerated value for the Z axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:367 doc/classes/Vector3i.xml:99
-msgid "Forward unit vector."
+#: doc/classes/Vector3.xml:361 doc/classes/Vector3i.xml:87
+msgid ""
+"Left unit vector. Represents the local direction of left, and the global "
+"direction of west."
msgstr ""
-#: doc/classes/Vector3.xml:370 doc/classes/Vector3i.xml:102
-msgid "Back unit vector."
+#: doc/classes/Vector3.xml:364 doc/classes/Vector3i.xml:90
+msgid ""
+"Right unit vector. Represents the local direction of right, and the global "
+"direction of east."
+msgstr ""
+
+#: doc/classes/Vector3.xml:367 doc/classes/Vector3i.xml:93
+msgid "Up unit vector."
+msgstr ""
+
+#: doc/classes/Vector3.xml:370 doc/classes/Vector3i.xml:96
+msgid "Down unit vector."
+msgstr ""
+
+#: doc/classes/Vector3.xml:373 doc/classes/Vector3i.xml:99
+msgid ""
+"Forward unit vector. Represents the local direction of forward, and the "
+"global direction of north."
+msgstr ""
+
+#: doc/classes/Vector3.xml:376 doc/classes/Vector3i.xml:102
+msgid ""
+"Back unit vector. Represents the local direction of back, and the global "
+"direction of south."
msgstr ""
#: doc/classes/Vector3i.xml:4
@@ -54156,10 +55018,14 @@ msgid ""
"directly.\n"
"[b]Note:[/b] The origin point of your VehicleBody3D will determine the "
"center of gravity of your vehicle so it is better to keep this low and move "
-"the [CollisionShape3D] and [MeshInstance3D] upwards."
+"the [CollisionShape3D] and [MeshInstance3D] upwards.\n"
+"[b]Note:[/b] This class has known issues and isn't designed to provide "
+"realistic 3D vehicle physics. If you want advanced vehicle physics, you will "
+"probably have to write your own physics integration using another "
+"[PhysicsBody3D] class."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:16
+#: doc/classes/VehicleBody3D.xml:17
msgid ""
"Slows down the vehicle by applying a braking force. The vehicle is only "
"slowed down if the wheels are in contact with a surface. The force you need "
@@ -54168,7 +55034,7 @@ msgid ""
"a value in the 25 - 30 range for hard braking."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:19
+#: doc/classes/VehicleBody3D.xml:20
msgid ""
"Accelerates the vehicle by applying an engine force. The vehicle is only "
"speed up if the wheels that have [member VehicleWheel3D.use_as_traction] set "
@@ -54181,7 +55047,7 @@ msgid ""
"A negative value will result in the vehicle reversing."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:25
+#: doc/classes/VehicleBody3D.xml:26
msgid ""
"The steering angle for the vehicle. Setting this to a non-zero value will "
"result in the vehicle turning when it's moving. Wheels that have [member "
@@ -54197,25 +55063,29 @@ msgstr ""
msgid ""
"This node needs to be used as a child node of [VehicleBody3D] and simulates "
"the behavior of one of its wheels. This node also acts as a collider to "
-"detect if the wheel is touching a surface."
+"detect if the wheel is touching a surface.\n"
+"[b]Note:[/b] This class has known issues and isn't designed to provide "
+"realistic 3D vehicle physics. If you want advanced vehicle physics, you will "
+"probably have to write your own physics integration using another "
+"[PhysicsBody3D] class."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:16
+#: doc/classes/VehicleWheel3D.xml:17
msgid "Returns the rotational speed of the wheel in revolutions per minute."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:23
+#: doc/classes/VehicleWheel3D.xml:24
msgid ""
"Returns a value between 0.0 and 1.0 that indicates whether this wheel is "
"skidding. 0.0 is skidding (the wheel has lost grip, e.g. icy terrain), 1.0 "
"means not skidding (the wheel has full grip, e.g. dry asphalt road)."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:30
+#: doc/classes/VehicleWheel3D.xml:31
msgid "Returns [code]true[/code] if this wheel is in contact with a surface."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:36
+#: doc/classes/VehicleWheel3D.xml:37
msgid ""
"Slows down the wheel by applying a braking force. The wheel is only slowed "
"down if it is in contact with a surface. The force you need to apply to "
@@ -54224,7 +55094,7 @@ msgid ""
"- 30 range for hard braking."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:39
+#: doc/classes/VehicleWheel3D.xml:40
msgid ""
"The damping applied to the spring when the spring is being compressed. This "
"value should be between 0.0 (no damping) and 1.0. A value of 0.0 means the "
@@ -54232,7 +55102,7 @@ msgid ""
"is around 0.3 for a normal car, 0.5 for a race car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:42
+#: doc/classes/VehicleWheel3D.xml:43
msgid ""
"The damping applied to the spring when relaxing. This value should be "
"between 0.0 (no damping) and 1.0. This value should always be slightly "
@@ -54240,7 +55110,7 @@ msgid ""
"damping_compression] value of 0.3, try a relaxation value of 0.5."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:45
+#: doc/classes/VehicleWheel3D.xml:46
msgid ""
"Accelerates the wheel by applying an engine force. The wheel is only speed "
"up if it is in contact with a surface. The [member RigidBody3D.mass] of the "
@@ -54251,13 +55121,13 @@ msgid ""
"A negative value will result in the wheel reversing."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:50
+#: doc/classes/VehicleWheel3D.xml:51
msgid ""
"The steering angle for the wheel. Setting this to a non-zero value will "
"result in the vehicle turning when it's moving."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:53
+#: doc/classes/VehicleWheel3D.xml:54
msgid ""
"The maximum force the spring can resist. This value should be higher than a "
"quarter of the [member RigidBody3D.mass] of the [VehicleBody3D] or the "
@@ -54265,28 +55135,28 @@ msgid ""
"obtained by a value that is about 3× to 4× this number."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:56
+#: doc/classes/VehicleWheel3D.xml:57
msgid ""
"This value defines the stiffness of the suspension. Use a value lower than "
"50 for an off-road car, a value between 50 and 100 for a race car and try "
"something around 200 for something like a Formula 1 car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:59
+#: doc/classes/VehicleWheel3D.xml:60
msgid ""
"This is the distance the suspension can travel. As Godot units are "
"equivalent to meters, keep this setting relatively low. Try a value between "
"0.1 and 0.3 depending on the type of car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:62
+#: doc/classes/VehicleWheel3D.xml:63
msgid ""
"If [code]true[/code], this wheel will be turned when the car steers. This "
"value is used in conjunction with [member VehicleBody3D.steering] and "
"ignored if you are using the per-wheel [member steering] value instead."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:65
+#: doc/classes/VehicleWheel3D.xml:66
msgid ""
"If [code]true[/code], this wheel transfers engine force to the ground to "
"propel the vehicle forward. This value is used in conjunction with [member "
@@ -54294,7 +55164,7 @@ msgid ""
"[member engine_force] value instead."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:68
+#: doc/classes/VehicleWheel3D.xml:69
msgid ""
"This determines how much grip this wheel has. It is combined with the "
"friction setting of the surface the wheel is in contact with. 0.0 means no "
@@ -54304,11 +55174,11 @@ msgid ""
"It's best to set this to 1.0 when starting out."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:72
+#: doc/classes/VehicleWheel3D.xml:73
msgid "The radius of the wheel in meters."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:75
+#: doc/classes/VehicleWheel3D.xml:76
msgid ""
"This is the distance in meters the wheel is lowered from its origin point. "
"Don't set this to 0.0 and move the wheel into position, instead move the "
@@ -54317,7 +55187,7 @@ msgid ""
"down to the position it should be in when the car is in rest."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:78
+#: doc/classes/VehicleWheel3D.xml:79
msgid ""
"This value affects the roll of your vehicle. If set to 1.0 for all wheels, "
"your vehicle will be prone to rolling over, while a value of 0.0 will resist "
@@ -54795,7 +55665,7 @@ msgstr ""
#: doc/classes/Viewport.xml:318
msgid ""
"Use fast approximate antialiasing. FXAA is a popular screen-space "
-"antialising method, which is fast but will make the image look blurry, "
+"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."
msgstr ""
@@ -54848,24 +55718,24 @@ msgid ""
"your [WorldEnvironment]."
msgstr ""
-#: doc/classes/Viewport.xml:384
+#: doc/classes/Viewport.xml:381
msgid ""
"Colors each PSSM split for the [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, and yellow."
msgstr ""
-#: doc/classes/Viewport.xml:387
+#: doc/classes/Viewport.xml:384
msgid ""
"Draws the decal atlas used by [Decal]s and light projector textures in the "
"upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/Viewport.xml:402
+#: doc/classes/Viewport.xml:405
msgid "Max value for [enum DefaultCanvasItemTextureFilter] enum."
msgstr ""
-#: doc/classes/Viewport.xml:414
+#: doc/classes/Viewport.xml:417
msgid "Max value for [enum DefaultCanvasItemTextureRepeat] enum."
msgstr ""
@@ -54896,82 +55766,84 @@ msgid ""
"The VisibilityEnabler2D will disable [RigidBody2D], [AnimationPlayer], and "
"other nodes when they are not visible. It will only affect nodes with the "
"same root node as the VisibilityEnabler2D, and the root node itself.\n"
+"If you just want to receive notifications, use [VisibilityNotifier2D] "
+"instead.\n"
"[b]Note:[/b] For performance reasons, VisibilityEnabler2D uses an "
"approximate heuristic with precision determined by [member ProjectSettings."
-"world/2d/cell_size]. If you need exact visibility checking, use another "
+"world/2d/cell_size]. If you need precise visibility checking, use another "
"method such as adding an [Area2D] node as a child of a [Camera2D] node.\n"
"[b]Note:[/b] VisibilityEnabler2D will not affect nodes added after scene "
"initialization."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:20
-#: doc/classes/VisibilityEnabler3D.xml:20
+#: doc/classes/VisibilityEnabler2D.xml:21
+#: doc/classes/VisibilityEnabler3D.xml:21
msgid ""
"Returns whether the enabler identified by given [enum Enabler] constant is "
"active."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:31
-#: doc/classes/VisibilityEnabler3D.xml:31
+#: doc/classes/VisibilityEnabler2D.xml:32
+#: doc/classes/VisibilityEnabler3D.xml:32
msgid ""
"Sets active state of the enabler identified by given [enum Enabler] constant."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:37
+#: doc/classes/VisibilityEnabler2D.xml:38
msgid "If [code]true[/code], [RigidBody2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:40
+#: doc/classes/VisibilityEnabler2D.xml:41
msgid "If [code]true[/code], [AnimatedSprite2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:43
-#: doc/classes/VisibilityEnabler3D.xml:40
+#: doc/classes/VisibilityEnabler2D.xml:44
+#: doc/classes/VisibilityEnabler3D.xml:41
msgid "If [code]true[/code], [AnimationPlayer] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:46
+#: doc/classes/VisibilityEnabler2D.xml:47
msgid "If [code]true[/code], [GPUParticles2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:49
+#: doc/classes/VisibilityEnabler2D.xml:50
msgid ""
"If [code]true[/code], the parent's [method Node._physics_process] will be "
"stopped."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:52
+#: doc/classes/VisibilityEnabler2D.xml:53
msgid ""
"If [code]true[/code], the parent's [method Node._process] will be stopped."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:57
-#: doc/classes/VisibilityEnabler3D.xml:45
+#: doc/classes/VisibilityEnabler2D.xml:58
+#: doc/classes/VisibilityEnabler3D.xml:46
msgid "This enabler will pause [AnimationPlayer] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:60
+#: doc/classes/VisibilityEnabler2D.xml:61
msgid "This enabler will freeze [RigidBody2D] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:63
+#: doc/classes/VisibilityEnabler2D.xml:64
msgid "This enabler will stop [GPUParticles2D] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:66
+#: doc/classes/VisibilityEnabler2D.xml:67
msgid "This enabler will stop the parent's _process function."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:69
+#: doc/classes/VisibilityEnabler2D.xml:70
msgid "This enabler will stop the parent's _physics_process function."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:72
+#: doc/classes/VisibilityEnabler2D.xml:73
msgid "This enabler will stop [AnimatedSprite2D] nodes animations."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:75
-#: doc/classes/VisibilityEnabler3D.xml:51
+#: doc/classes/VisibilityEnabler2D.xml:76
+#: doc/classes/VisibilityEnabler3D.xml:52
msgid "Represents the size of the [enum Enabler] enum."
msgstr ""
@@ -54980,19 +55852,23 @@ msgid ""
"The VisibilityEnabler3D will disable [RigidBody3D] and [AnimationPlayer] "
"nodes when they are not visible. It will only affect other nodes within the "
"same scene as the VisibilityEnabler3D itself.\n"
+"If you just want to receive notifications, use [VisibilityNotifier3D] "
+"instead.\n"
"[b]Note:[/b] VisibilityEnabler3D uses an approximate heuristic for "
"performance reasons. It doesn't take walls and other occlusion into account. "
-"If you need exact visibility checking, use another method such as adding an "
-"[Area3D] node as a child of a [Camera3D] node.\n"
+"The heuristic is an implementation detail and may change in future versions. "
+"If you need precise visibility checking, use another method such as adding "
+"an [Area3D] node as a child of a [Camera3D] node and/or [method Vector3."
+"dot].\n"
"[b]Note:[/b] VisibilityEnabler3D will not affect nodes added after scene "
"initialization."
msgstr ""
-#: doc/classes/VisibilityEnabler3D.xml:37
+#: doc/classes/VisibilityEnabler3D.xml:38
msgid "If [code]true[/code], [RigidBody3D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler3D.xml:48
+#: doc/classes/VisibilityEnabler3D.xml:49
msgid "This enabler will freeze [RigidBody3D] nodes."
msgstr ""
@@ -55006,13 +55882,15 @@ msgid ""
"The VisibilityNotifier2D detects when it is visible on the screen. It also "
"notifies when its bounding rectangle enters or exits the screen or a "
"viewport.\n"
+"If you want nodes to be disabled automatically when they exit the screen, "
+"use [VisibilityEnabler2D] instead.\n"
"[b]Note:[/b] For performance reasons, VisibilityNotifier2D uses an "
"approximate heuristic with precision determined by [member ProjectSettings."
-"world/2d/cell_size]. If you need exact visibility checking, use another "
+"world/2d/cell_size]. If you need precise visibility checking, use another "
"method such as adding an [Area2D] node as a child of a [Camera2D] node."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:17
+#: doc/classes/VisibilityNotifier2D.xml:18
msgid ""
"If [code]true[/code], the bounding rectangle is on the screen.\n"
"[b]Note:[/b] It takes one frame for the node's visibility to be assessed "
@@ -55021,23 +55899,23 @@ msgid ""
"pass."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:24
+#: doc/classes/VisibilityNotifier2D.xml:25
msgid "The VisibilityNotifier2D's bounding rectangle."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:30
+#: doc/classes/VisibilityNotifier2D.xml:31
msgid "Emitted when the VisibilityNotifier2D enters the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:35
+#: doc/classes/VisibilityNotifier2D.xml:36
msgid "Emitted when the VisibilityNotifier2D exits the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:42
+#: doc/classes/VisibilityNotifier2D.xml:43
msgid "Emitted when the VisibilityNotifier2D enters a [Viewport]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:49
+#: doc/classes/VisibilityNotifier2D.xml:50
msgid "Emitted when the VisibilityNotifier2D exits a [Viewport]'s view."
msgstr ""
@@ -55046,13 +55924,16 @@ msgid ""
"The VisibilityNotifier3D detects when it is visible on the screen. It also "
"notifies when its bounding rectangle enters or exits the screen or a "
"[Camera3D]'s view.\n"
+"If you want nodes to be disabled automatically when they exit the screen, "
+"use [VisibilityEnabler3D] instead.\n"
"[b]Note:[/b] VisibilityNotifier3D uses an approximate heuristic for "
"performance reasons. It doesn't take walls and other occlusion into account. "
-"If you need exact visibility checking, use another method such as adding an "
-"[Area3D] node as a child of a [Camera3D] node."
+"The heuristic is an implementation detail and may change in future versions. "
+"If you need precise visibility checking, use another method such as adding "
+"an [Area3D] node as a child of a [Camera3D] node and/or [method Vector3.dot]."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:17
+#: doc/classes/VisibilityNotifier3D.xml:18
msgid ""
"If [code]true[/code], the bounding box is on the screen.\n"
"[b]Note:[/b] It takes one frame for the node's visibility to be assessed "
@@ -55061,23 +55942,23 @@ msgid ""
"pass."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:24
+#: doc/classes/VisibilityNotifier3D.xml:25
msgid "The VisibilityNotifier3D's bounding box."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:32
+#: doc/classes/VisibilityNotifier3D.xml:33
msgid "Emitted when the VisibilityNotifier3D enters a [Camera3D]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:39
+#: doc/classes/VisibilityNotifier3D.xml:40
msgid "Emitted when the VisibilityNotifier3D exits a [Camera3D]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:44
+#: doc/classes/VisibilityNotifier3D.xml:45
msgid "Emitted when the VisibilityNotifier3D enters the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:49
+#: doc/classes/VisibilityNotifier3D.xml:50
msgid "Emitted when the VisibilityNotifier3D exits the screen."
msgstr ""
@@ -55497,6 +56378,14 @@ msgid ""
"exist."
msgstr ""
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:90
+msgid ""
+"Easing function, based on exponent. 0 is constant, 1 is linear, 0 to 1 is "
+"ease-in, 1+ is ease out. Negative values are in-out/out in."
+msgstr ""
+"Funzione di easing, basata sull'esponente. 0 è costante, 1 è lineare, da 0 a "
+"1 è ease-in, 1+ è ease-out. I valori negativi sono in-out/out in."
+
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:93
msgid ""
"Return the number of digit places after the decimal that the first non-zero "
@@ -56382,6 +57271,7 @@ msgid "A shader for light calculations."
msgstr ""
#: doc/classes/VisualShader.xml:214
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:26
msgid "Represents the size of the [enum Type] enum."
msgstr ""
@@ -56484,6 +57374,24 @@ msgstr ""
msgid "Translated to [code]uniform bool[/code] in the shader language."
msgstr ""
+#: doc/classes/VisualShaderNodeBooleanUniform.xml:15
+#: doc/classes/VisualShaderNodeColorUniform.xml:15
+#: doc/classes/VisualShaderNodeFloatUniform.xml:15
+#: doc/classes/VisualShaderNodeIntUniform.xml:15
+#: doc/classes/VisualShaderNodeTransformUniform.xml:15
+#: doc/classes/VisualShaderNodeVec3Uniform.xml:15
+msgid "A default value to be assigned within the shader."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeBooleanUniform.xml:18
+#: doc/classes/VisualShaderNodeColorUniform.xml:18
+#: doc/classes/VisualShaderNodeFloatUniform.xml:18
+#: doc/classes/VisualShaderNodeIntUniform.xml:18
+#: doc/classes/VisualShaderNodeTransformUniform.xml:18
+#: doc/classes/VisualShaderNodeVec3Uniform.xml:18
+msgid "Enables usage of the [member default_value]."
+msgstr ""
+
#: doc/classes/VisualShaderNodeColorConstant.xml:4
msgid "A [Color] constant to be used within the visual shader graph."
msgstr ""
@@ -57334,49 +58242,49 @@ msgstr ""
msgid "Translated to [code]uniform float[/code] in the shader language."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:15
-#: doc/classes/VisualShaderNodeIntUniform.xml:15
+#: doc/classes/VisualShaderNodeFloatUniform.xml:21
+#: doc/classes/VisualShaderNodeIntUniform.xml:21
msgid ""
"A hint applied to the uniform, which controls the values it can take when "
"set through the inspector."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:18
-#: doc/classes/VisualShaderNodeIntUniform.xml:18
+#: doc/classes/VisualShaderNodeFloatUniform.xml:24
+#: doc/classes/VisualShaderNodeIntUniform.xml:24
msgid ""
"Minimum value for range hints. Used if [member hint] is set to [constant "
"HINT_RANGE] or [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:21
-#: doc/classes/VisualShaderNodeIntUniform.xml:21
+#: doc/classes/VisualShaderNodeFloatUniform.xml:27
+#: doc/classes/VisualShaderNodeIntUniform.xml:27
msgid ""
"Maximum value for range hints. Used if [member hint] is set to [constant "
"HINT_RANGE] or [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:24
-#: doc/classes/VisualShaderNodeIntUniform.xml:24
+#: doc/classes/VisualShaderNodeFloatUniform.xml:30
+#: doc/classes/VisualShaderNodeIntUniform.xml:30
msgid ""
"Step (increment) value for the range hint with step. Used if [member hint] "
"is set to [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:29
-#: doc/classes/VisualShaderNodeIntUniform.xml:29
+#: doc/classes/VisualShaderNodeFloatUniform.xml:35
+#: doc/classes/VisualShaderNodeIntUniform.xml:35
msgid "No hint used."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:32
-#: doc/classes/VisualShaderNodeIntUniform.xml:32
+#: doc/classes/VisualShaderNodeFloatUniform.xml:38
+#: doc/classes/VisualShaderNodeIntUniform.xml:38
msgid ""
"A range hint for scalar value, which limits possible input values between "
"[member min] and [member max]. Translated to [code]hint_range(min, max)[/"
"code] in shader code."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:35
-#: doc/classes/VisualShaderNodeIntUniform.xml:35
+#: doc/classes/VisualShaderNodeFloatUniform.xml:41
+#: doc/classes/VisualShaderNodeIntUniform.xml:41
msgid ""
"A range hint for scalar value with step, which limits possible input values "
"between [member min] and [member max], with a step (increment) of [member "
@@ -57392,7 +58300,7 @@ msgid ""
"Returns falloff based on the dot product of surface normal and view "
"direction of camera (pass associated inputs to it)."
msgstr ""
-"Ritorna il decadimento in base al prodotto scalare della normale della "
+"Restituisce il decadimento in base al prodotto scalare della normale della "
"superfice e direzione della telecamera (passa gli input associati ad essa)."
#: doc/classes/VisualShaderNodeGlobalExpression.xml:4
@@ -57660,6 +58568,26 @@ msgid ""
"results, e.g. division by zero)."
msgstr ""
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:4
+msgid "Performs a fused multiply-add operation within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:7
+msgid "Uses three operands to compute [code](a * b + c)[/code] expression."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:15
+msgid "A type of operands and returned value."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:20
+msgid "A scalar type."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:23
+msgid "A vector type."
+msgstr ""
+
#: doc/classes/VisualShaderNodeOuterProduct.xml:4
msgid ""
"Calculates an outer product of two vectors within the visual shader graph."
@@ -57682,7 +58610,7 @@ msgstr ""
#: doc/classes/VisualShaderNodeOutput.xml:7
msgid ""
"This visual shader node is present in all shader graphs in form of \"Output"
-"\" block with mutliple output value ports."
+"\" block with multiple output value ports."
msgstr ""
#: doc/classes/VisualShaderNodeSample3D.xml:4
@@ -58046,6 +58974,20 @@ msgid ""
"[ShaderMaterial] properties."
msgstr ""
+#: doc/classes/VisualShaderNodeUniformRef.xml:4
+msgid "A reference to an existing [VisualShaderNodeUniform]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniformRef.xml:7
+msgid ""
+"Creating a reference to a [VisualShaderNodeUniform] allows you to reuse this "
+"uniform in different shaders or shader stages easily."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniformRef.xml:15
+msgid "The name of the uniform which this reference points to."
+msgstr ""
+
#: doc/classes/VisualShaderNodeVec3Constant.xml:4
msgid "A [Vector3] constant to be used within the visual shader graph."
msgstr ""
@@ -58143,7 +59085,7 @@ msgstr ""
#: doc/classes/VisualShaderNodeVectorFunc.xml:26
msgid "Returns the opposite value of the parameter."
-msgstr ""
+msgstr "Restituisce il valore opposto del parametro."
#: doc/classes/VisualShaderNodeVectorFunc.xml:29
msgid "Returns [code]1/vector[/code]."
@@ -58151,96 +59093,98 @@ msgstr ""
#: doc/classes/VisualShaderNodeVectorFunc.xml:32
msgid "Converts RGB vector to HSV equivalent."
-msgstr ""
+msgstr "Converte un vettore RGB nel suo equivalente HSV."
#: doc/classes/VisualShaderNodeVectorFunc.xml:35
msgid "Converts HSV vector to RGB equivalent."
-msgstr ""
+msgstr "Converte un vettore HSV nel suo equivalente RGB."
#: doc/classes/VisualShaderNodeVectorFunc.xml:38
msgid "Returns the absolute value of the parameter."
-msgstr ""
+msgstr "Restituisce il valore assoluto del parametro."
#: doc/classes/VisualShaderNodeVectorFunc.xml:41
msgid "Returns the arc-cosine of the parameter."
-msgstr ""
+msgstr "Restituisce l'arco-coseno del parametro."
#: doc/classes/VisualShaderNodeVectorFunc.xml:44
msgid "Returns the inverse hyperbolic cosine of the parameter."
-msgstr ""
+msgstr "Restituisce l'inversa del coseno iperbolico del parametro."
#: doc/classes/VisualShaderNodeVectorFunc.xml:47
msgid "Returns the arc-sine of the parameter."
-msgstr ""
+msgstr "Restituisce l'arco-seno del parametro."
#: doc/classes/VisualShaderNodeVectorFunc.xml:50
msgid "Returns the inverse hyperbolic sine of the parameter."
-msgstr ""
+msgstr "Restituisce l'inversa del seno iperbolico del parametro."
#: doc/classes/VisualShaderNodeVectorFunc.xml:53
msgid "Returns the arc-tangent of the parameter."
-msgstr ""
+msgstr "Restituisce l'arco-tangente del parametro."
#: doc/classes/VisualShaderNodeVectorFunc.xml:56
msgid "Returns the inverse hyperbolic tangent of the parameter."
-msgstr ""
+msgstr "Restituisce l'inversa della tangente iperbolica del parametro."
#: doc/classes/VisualShaderNodeVectorFunc.xml:59
msgid ""
"Finds the nearest integer that is greater than or equal to the parameter."
msgstr ""
+"Trova il numero intero più vicino che sia maggiore o uguale al parametro."
#: doc/classes/VisualShaderNodeVectorFunc.xml:62
msgid "Returns the cosine of the parameter."
-msgstr ""
+msgstr "Restituisce il coseno del parametro."
#: doc/classes/VisualShaderNodeVectorFunc.xml:65
msgid "Returns the hyperbolic cosine of the parameter."
-msgstr ""
+msgstr "Restituisce il coseno iperbolico del parametro."
#: doc/classes/VisualShaderNodeVectorFunc.xml:68
msgid "Converts a quantity in radians to degrees."
-msgstr ""
+msgstr "Converte una quantità di radianti in gradi."
#: doc/classes/VisualShaderNodeVectorFunc.xml:71
msgid "Base-e Exponential."
-msgstr ""
+msgstr "Esponenziale in base e."
#: doc/classes/VisualShaderNodeVectorFunc.xml:74
msgid "Base-2 Exponential."
-msgstr ""
+msgstr "Esponenziale in base 2."
#: doc/classes/VisualShaderNodeVectorFunc.xml:77
msgid "Finds the nearest integer less than or equal to the parameter."
msgstr ""
+"Trova il numero intero più vicino che sia minore o uguale al parametro."
#: doc/classes/VisualShaderNodeVectorFunc.xml:80
msgid "Computes the fractional part of the argument."
-msgstr ""
+msgstr "Calcola la parte frazionaria dell'argomento."
#: doc/classes/VisualShaderNodeVectorFunc.xml:83
msgid "Returns the inverse of the square root of the parameter."
-msgstr ""
+msgstr "Restituisce l'inversa della radice quadrata del parametro."
#: doc/classes/VisualShaderNodeVectorFunc.xml:86
msgid "Natural logarithm."
-msgstr ""
+msgstr "Logaritmo naturale."
#: doc/classes/VisualShaderNodeVectorFunc.xml:89
msgid "Base-2 logarithm."
-msgstr ""
+msgstr "Logaritmo in base 2."
#: doc/classes/VisualShaderNodeVectorFunc.xml:92
msgid "Converts a quantity in degrees to radians."
-msgstr ""
+msgstr "Converte una quantità in gradi in radianti."
#: doc/classes/VisualShaderNodeVectorFunc.xml:95
msgid "Finds the nearest integer to the parameter."
-msgstr ""
+msgstr "Trova il numero intero più vicino al parametro."
#: doc/classes/VisualShaderNodeVectorFunc.xml:98
msgid "Finds the nearest even integer to the parameter."
-msgstr ""
+msgstr "Trova il numero intero pari più vicino al parametro."
#: doc/classes/VisualShaderNodeVectorFunc.xml:101
msgid ""
@@ -58251,23 +59195,23 @@ msgstr ""
#: doc/classes/VisualShaderNodeVectorFunc.xml:104
msgid "Returns the sine of the parameter."
-msgstr ""
+msgstr "Restituisce il seno del parametro."
#: doc/classes/VisualShaderNodeVectorFunc.xml:107
msgid "Returns the hyperbolic sine of the parameter."
-msgstr ""
+msgstr "Restituisce il seno iperbolico del parametro."
#: doc/classes/VisualShaderNodeVectorFunc.xml:110
msgid "Returns the square root of the parameter."
-msgstr ""
+msgstr "Restituisce la radice quadrata del parametro."
#: doc/classes/VisualShaderNodeVectorFunc.xml:113
msgid "Returns the tangent of the parameter."
-msgstr ""
+msgstr "Restituisce la tangente del parametro."
#: doc/classes/VisualShaderNodeVectorFunc.xml:116
msgid "Returns the hyperbolic tangent of the parameter."
-msgstr ""
+msgstr "Restituisce la tangente iperbolica del parametro."
#: doc/classes/VisualShaderNodeVectorFunc.xml:119
msgid ""
@@ -58326,11 +59270,11 @@ msgstr ""
#: doc/classes/VisualShaderNodeVectorOp.xml:29
msgid "Divides vector by vector."
-msgstr ""
+msgstr "Divide due vettori."
#: doc/classes/VisualShaderNodeVectorOp.xml:32
msgid "Returns the remainder of the two vectors."
-msgstr ""
+msgstr "Restituisce il resto dei due vettori."
#: doc/classes/VisualShaderNodeVectorOp.xml:35
msgid ""
@@ -58348,11 +59292,11 @@ msgstr ""
#: doc/classes/VisualShaderNodeVectorOp.xml:44
msgid "Calculates the cross product of two vectors."
-msgstr ""
+msgstr "Calcola il prodotto vettoriale di due vettori."
#: doc/classes/VisualShaderNodeVectorOp.xml:47
msgid "Returns the arc-tangent of the parameters."
-msgstr ""
+msgstr "Restituisce l'arco-tangente dei parametri."
#: doc/classes/VisualShaderNodeVectorOp.xml:50
msgid ""
@@ -58379,7 +59323,7 @@ msgstr ""
msgid ""
"Translated to [code]refract(I, N, eta)[/code] in the shader language, where "
"[code]I[/code] is the incident vector, [code]N[/code] is the normal vector "
-"and [code]eta[/code] is the ratio of the indicies of the refraction."
+"and [code]eta[/code] is the ratio of the indices of the refraction."
msgstr ""
#: doc/classes/VisualShaderNodeVectorScalarMix.xml:4
@@ -60157,3 +61101,10 @@ msgstr ""
msgid ""
"If [code]true[/code], child nodes are sorted, otherwise sorting is disabled."
msgstr ""
+
+#~ msgid ""
+#~ "Returns [code]true[/code] if [code]a[/code] and [code]b[/code] are "
+#~ "approximately equal to each other."
+#~ msgstr ""
+#~ "Restituisce [code]true[/code] se [code]a[/code] e [code]b[/code] sono "
+#~ "approssimativamente uguali tra di loro."
diff --git a/doc/translations/ja.po b/doc/translations/ja.po
index b5b3abdb9e..02072678ef 100644
--- a/doc/translations/ja.po
+++ b/doc/translations/ja.po
@@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Godot Engine class reference\n"
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
-"PO-Revision-Date: 2020-06-25 08:53+0000\n"
+"PO-Revision-Date: 2020-08-11 14:38+0000\n"
"Last-Translator: Wataru Onuki <bettawat@yahoo.co.jp>\n"
"Language-Team: Japanese <https://hosted.weblate.org/projects/godot-engine/"
"godot-class-reference/ja/>\n"
@@ -114,9 +114,10 @@ msgstr ""
"サãƒãƒ¼ãƒˆã•ã‚Œã‚‹è‰²ã®åå‰ã¯ [Color] ã«ã¦å®šæ•°ã¨ã—ã¦å®šç¾©ã•ã‚Œã¦ã„ã‚‹ã‚‚ã®ã¨åŒæ§˜ã§ã™ã€‚"
#: modules/gdscript/doc_classes/@GDScript.xml:55
+#, fuzzy
msgid ""
-"Returns the absolute value of parameter [code]s[/code] (i.e. unsigned value, "
-"works for integer and float).\n"
+"Returns the absolute value of parameter [code]s[/code] (i.e. positive "
+"value).\n"
"[codeblock]\n"
"# a is 1\n"
"a = abs(-1)\n"
@@ -201,12 +202,13 @@ msgstr ""
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:114
+#, fuzzy
msgid ""
"Returns the arc tangent of [code]s[/code] in radians. Use it to get the "
"angle from an angle's tangent in trigonometry: [code]atan(tan(angle)) == "
"angle[/code].\n"
"The method cannot know in which quadrant the angle should fall. See [method "
-"atan2] if you always want an exact angle.\n"
+"atan2] if you have both [code]y[/code] and [code]x[/code].\n"
"[codeblock]\n"
"a = atan(0.5) # a is 0.463648\n"
"[/codeblock]"
@@ -221,10 +223,12 @@ msgstr ""
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:129
+#, fuzzy
msgid ""
"Returns the arc tangent of [code]y/x[/code] in radians. Use to get the angle "
"of tangent [code]y/x[/code]. To compute the value, the method takes into "
"account the sign of both arguments in order to determine the quadrant.\n"
+"Important note: The Y coordinate comes first, by convention.\n"
"[codeblock]\n"
"a = atan2(0, -1) # a is 3.141593\n"
"[/codeblock]"
@@ -236,7 +240,7 @@ msgstr ""
"a = atan2(0, -1) # a 㯠3.141593\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:143
+#: modules/gdscript/doc_classes/@GDScript.xml:144
msgid ""
"Decodes a byte array back to a value. When [code]allow_objects[/code] is "
"[code]true[/code] decoding objects is allowed.\n"
@@ -248,10 +252,10 @@ msgstr ""
"[code]true[/code] ã®ã¨ãã¯ã€ã‚ªãƒ–ジェクトã®ãƒ‡ã‚³ãƒ¼ãƒ‰ã‚’許å¯ã—ã¾ã™ã€‚\n"
"[b]警告:[/b] 逆シリアル化ã•ã‚ŒãŸã‚ªãƒ–ジェクトã«ã‚³ãƒ¼ãƒ‰ãŒå«ã¾ã‚Œã¦ã„ã‚‹ã¨å®Ÿè¡Œã•ã‚Œã¾"
"ã™ã€‚シリアル化ã•ã‚ŒãŸã‚ªãƒ–ジェクトãŒä¿¡é ¼ã§ããªã„入手先ã‹ã‚‰ã®ã‚‚ã®ãªã‚‰ã°ã€æ½œåœ¨çš„"
-"ãªã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ä¸Šã®å±é™ºï¼ˆé éš”コード実行)を防ããŸã‚ã€ã“ã®ã‚ªãƒ—ションã¯ä½¿ç”¨ã—ãª"
+"ãªã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ä¸Šã®å±é™º (é éš”コード実行) を防ããŸã‚ã€ã“ã®ã‚ªãƒ—ションã¯ä½¿ç”¨ã—ãª"
"ã„ã§ãã ã•ã„。"
-#: modules/gdscript/doc_classes/@GDScript.xml:155
+#: modules/gdscript/doc_classes/@GDScript.xml:156
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:145
msgid ""
"Converts a 2D point expressed in the cartesian coordinate system (X and Y "
@@ -261,10 +265,11 @@ msgstr ""
"直交座標系 (X ãŠã‚ˆã³ Y 軸) ã§è¡¨ã•ã‚ŒãŸäºŒæ¬¡å…ƒã®ä½ç½®ã‚’ã€æ¥µåº§æ¨™ç³» (原点ã‹ã‚‰ã®è·é›¢"
"ã¨è§’度) ã«å¤‰æ›ã—ã¾ã™ã€‚"
-#: modules/gdscript/doc_classes/@GDScript.xml:164
+#: modules/gdscript/doc_classes/@GDScript.xml:165
+#, fuzzy
msgid ""
-"Rounds [code]s[/code] upward, returning the smallest integral value that is "
-"not less than [code]s[/code].\n"
+"Rounds [code]s[/code] upward (towards positive infinity), returning the "
+"smallest whole number that is not less than [code]s[/code].\n"
"[codeblock]\n"
"i = ceil(1.45) # i is 2\n"
"i = ceil(1.001) # i is 2\n"
@@ -277,7 +282,7 @@ msgstr ""
"i = ceil(1.001) # i 㯠2\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:177
+#: modules/gdscript/doc_classes/@GDScript.xml:178
msgid ""
"Returns a character as a String of the given Unicode code point (which is "
"compatible with ASCII code).\n"
@@ -297,7 +302,7 @@ msgstr ""
"[/codeblock]\n"
"ã“れ㯠[method ord] ã®é€†ã§ã™ã€‚"
-#: modules/gdscript/doc_classes/@GDScript.xml:196
+#: modules/gdscript/doc_classes/@GDScript.xml:197
msgid ""
"Clamps [code]value[/code] and returns a value not less than [code]min[/code] "
"and not more than [code]max[/code].\n"
@@ -323,7 +328,7 @@ msgstr ""
"a = clamp(speed, 1, 20)\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:216
+#: modules/gdscript/doc_classes/@GDScript.xml:217
msgid ""
"Converts from a type to another in the best way possible. The [code]type[/"
"code] parameter uses the [enum Variant.Type] values.\n"
@@ -347,7 +352,7 @@ msgstr ""
"print(a.length())\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:233
+#: modules/gdscript/doc_classes/@GDScript.xml:234
msgid ""
"Returns the cosine of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -363,7 +368,7 @@ msgstr ""
"print(cos(PI))\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:247
+#: modules/gdscript/doc_classes/@GDScript.xml:248
msgid ""
"Returns the hyperbolic cosine of [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -377,11 +382,11 @@ msgstr ""
"print(cosh(1))\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:260
+#: modules/gdscript/doc_classes/@GDScript.xml:261
msgid "Converts from decibels to linear energy (audio)."
msgstr "デシベルã‹ã‚‰ãƒªãƒ‹ã‚¢ エãƒãƒ«ã‚®ãƒ¼ã«å¤‰æ›ã—ã¾ã™ (オーディオ)。"
-#: modules/gdscript/doc_classes/@GDScript.xml:273
+#: modules/gdscript/doc_classes/@GDScript.xml:274
msgid ""
"Returns the result of [code]value[/code] decreased by [code]step[/code] * "
"[code]amount[/code].\n"
@@ -397,9 +402,10 @@ msgstr ""
"a = dectime(60, 10, 0.1))\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:286
+#: modules/gdscript/doc_classes/@GDScript.xml:287
+#, fuzzy
msgid ""
-"Returns degrees converted to radians.\n"
+"Converts an angle expressed in degrees to radians.\n"
"[codeblock]\n"
"# r is 3.141593\n"
"r = deg2rad(180)\n"
@@ -411,7 +417,7 @@ msgstr ""
"r = deg2rad(180)\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:299
+#: modules/gdscript/doc_classes/@GDScript.xml:300
msgid ""
"Converts a previously converted instance to a dictionary, back into an "
"instance. Useful for deserializing."
@@ -419,20 +425,23 @@ msgstr ""
"インスタンスã‹ã‚‰å¤‰æ›ã•ã‚ŒãŸè¾žæ›¸ã‚’ã€å…ƒã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã«å¤‰æ›ã—ã¦æˆ»ã—ã¾ã™ã€‚デシリ"
"アライズã™ã‚‹ã®ã«ä¾¿åˆ©ã§ã™ã€‚"
-#: modules/gdscript/doc_classes/@GDScript.xml:310
-#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:90
+#: modules/gdscript/doc_classes/@GDScript.xml:311
+#, fuzzy
msgid ""
-"Easing function, based on exponent. 0 is constant, 1 is linear, 0 to 1 is "
-"ease-in, 1+ is ease out. Negative values are in-out/out in."
+"Easing function, based on exponent. The curve values are: 0 is constant, 1 "
+"is linear, 0 to 1 is ease-in, 1+ is ease out. Negative values are in-out/out "
+"in."
msgstr ""
"指数ã«ã‚ˆã‚‹ã‚¤ãƒ¼ã‚¸ãƒ³ã‚°é–¢æ•°ã§ã™ã€‚0 ã¯ä¸å¤‰ã€1 ã¯ç­‰é€Ÿã€0 ã‹ã‚‰ 1 ã®é–“ã¯ã‚¤ãƒ¼ã‚ºã‚¤ãƒ³ã€"
"1 より上ã¯ã‚¤ãƒ¼ã‚ºã‚¢ã‚¦ãƒˆã§ã™ã€‚è² ã®å€¤ã¯ã‚¤ãƒ³ã‚¢ã‚¦ãƒˆ / アウトインã«ãªã‚Šã¾ã™ã€‚"
-#: modules/gdscript/doc_classes/@GDScript.xml:319
+#: modules/gdscript/doc_classes/@GDScript.xml:320
+#, fuzzy
msgid ""
"The natural exponential function. It raises the mathematical constant [b]e[/"
"b] to the power of [code]s[/code] and returns it.\n"
-"[b]e[/b] has an approximate value of 2.71828.\n"
+"[b]e[/b] has an approximate value of 2.71828, and can be obtained with "
+"[code]exp(1)[/code].\n"
"For exponents to other bases use the method [method pow].\n"
"[codeblock]\n"
"a = exp(2) # Approximately 7.39\n"
@@ -445,9 +454,11 @@ msgstr ""
"a = exp(2) # ãŠã‚ˆã 7.39\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:333
+#: modules/gdscript/doc_classes/@GDScript.xml:334
+#, fuzzy
msgid ""
-"Rounds [code]s[/code] to the closest smaller integer and returns it.\n"
+"Rounds [code]s[/code] downward (towards negative infinity), returning the "
+"largest whole number that is not more than [code]s[/code].\n"
"[codeblock]\n"
"# a is 2.0\n"
"a = floor(2.99)\n"
@@ -467,7 +478,7 @@ msgstr ""
"[b]注:[/b] ã“ã®ãƒ¡ã‚½ãƒƒãƒ‰ã¯æµ®å‹•å°æ•°ç‚¹æ•°ã§è¿”ã—ã¾ã™ã€‚ã‚‚ã—æ•´æ•°ãŒå¿…è¦ã§ã‚ã‚Œã°ã€ç›´"
"接 [code]int(s)[/code] ãŒä½¿ãˆã¾ã™ã€‚"
-#: modules/gdscript/doc_classes/@GDScript.xml:351
+#: modules/gdscript/doc_classes/@GDScript.xml:352
msgid ""
"Returns the floating-point remainder of [code]a/b[/code], keeping the sign "
"of [code]a[/code].\n"
@@ -485,7 +496,7 @@ msgstr ""
"[/codeblock]\n"
"æ•´æ•°ã«ã‚ˆã‚‹å‰°ä½™è¨ˆç®—ã‚’ã™ã‚‹ã«ã¯ã€% オペレータを使用ã—ã¦ãã ã•ã„。"
-#: modules/gdscript/doc_classes/@GDScript.xml:367
+#: modules/gdscript/doc_classes/@GDScript.xml:368
msgid ""
"Returns the floating-point modulus of [code]a/b[/code] that wraps equally in "
"positive and negative.\n"
@@ -532,7 +543,7 @@ msgstr ""
"4 1\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:398
+#: modules/gdscript/doc_classes/@GDScript.xml:399
msgid ""
"Returns a reference to the specified function [code]funcname[/code] in the "
"[code]instance[/code] node. As functions aren't first-class objects in "
@@ -558,7 +569,7 @@ msgstr ""
"print(a.call_func()) # bar ã¨è¡¨ç¤º\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:412
+#: modules/gdscript/doc_classes/@GDScript.xml:413
msgid ""
"Returns an array of dictionaries representing the current call stack.\n"
"[codeblock]\n"
@@ -594,7 +605,7 @@ msgstr ""
"source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:435
+#: modules/gdscript/doc_classes/@GDScript.xml:436
msgid ""
"Returns the integer hash of the variable passed.\n"
"[codeblock]\n"
@@ -606,7 +617,7 @@ msgstr ""
"print(hash(\"a\")) # 177670 ã¨è¡¨ç¤º\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:447
+#: modules/gdscript/doc_classes/@GDScript.xml:448
msgid ""
"Returns the passed instance converted to a dictionary (useful for "
"serializing).\n"
@@ -637,7 +648,7 @@ msgstr ""
"[, res://test.gd, bar]\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:468
+#: modules/gdscript/doc_classes/@GDScript.xml:469
msgid ""
"Returns the Object that corresponds to [code]instance_id[/code]. All Objects "
"have a unique instance ID.\n"
@@ -659,7 +670,7 @@ msgstr ""
" print(inst.foo) # bar ã¨è¡¨ç¤º\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:488
+#: modules/gdscript/doc_classes/@GDScript.xml:489
msgid ""
"Returns a normalized value considering the given range. This is the opposite "
"of [method lerp].\n"
@@ -682,15 +693,17 @@ msgstr ""
"# `ratio` 㯠0.75 ã«ãªã‚‹ã€‚\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:506
+#: modules/gdscript/doc_classes/@GDScript.xml:507
msgid ""
"Returns [code]true[/code] if [code]a[/code] and [code]b[/code] are "
-"approximately equal to each other."
+"approximately equal to each other.\n"
+"Here, approximately equal means that [code]a[/code] and [code]b[/code] are "
+"within a small internal epsilon of each other, which scales with the "
+"magnitude of the numbers.\n"
+"Infinity values of the same sign are considered equal."
msgstr ""
-"ã‚‚ã— [code]a[/code] 㨠[code]b[/code] ãŒã»ã¨ã‚“ã©ç­‰ã—ã„ãªã‚‰ã° [code]true[/"
-"code] ã‚’è¿”ã—ã¾ã™ã€‚"
-#: modules/gdscript/doc_classes/@GDScript.xml:515
+#: modules/gdscript/doc_classes/@GDScript.xml:518
msgid ""
"Returns whether [code]s[/code] is an infinity value (either positive "
"infinity or negative infinity)."
@@ -698,7 +711,7 @@ msgstr ""
"[code]s[/code] ãŒç„¡é™å¤§ã‹ã©ã†ã‹ã‚’è¿”ã—ã¾ã™ (æ­£ã®ç„¡é™å¤§ã‹è² ã®ç„¡é™å¤§ã‹ã«ã‹ã‹ã‚ら"
"ãš)。"
-#: modules/gdscript/doc_classes/@GDScript.xml:524
+#: modules/gdscript/doc_classes/@GDScript.xml:527
msgid ""
"Returns whether [code]instance[/code] is a valid object (e.g. has not been "
"deleted from memory)."
@@ -706,18 +719,24 @@ msgstr ""
"[code]instance[/code] ãŒæœ‰åŠ¹ãªã‚ªãƒ–ジェクト (ã¾ã ãƒ¡ãƒ¢ãƒªã‹ã‚‰æ¶ˆåŽ»ã•ã‚Œã¦ã„ãªã„) "
"ã‹ã©ã†ã‹ã‚’è¿”ã—ã¾ã™ã€‚"
-#: modules/gdscript/doc_classes/@GDScript.xml:533
-msgid "Returns whether [code]s[/code] is a NaN (Not-A-Number) value."
+#: modules/gdscript/doc_classes/@GDScript.xml:536
+#, fuzzy
+msgid ""
+"Returns whether [code]s[/code] is a NaN (\"Not a Number\" or invalid) value."
msgstr ""
"[code]s[/code] ㌠NaN (Not-A-Number, éžæ•°) 値ã§ã‚ã‚‹ã‹ã©ã†ã‹ã‚’è¿”ã—ã¾ã™ã€‚"
-#: modules/gdscript/doc_classes/@GDScript.xml:542
-msgid "Returns [code]true[/code] if [code]s[/code] is zero or almost zero."
+#: modules/gdscript/doc_classes/@GDScript.xml:545
+#, fuzzy
+msgid ""
+"Returns [code]true[/code] if [code]s[/code] is zero or almost zero.\n"
+"This method is faster than using [method is_equal_approx] with one value as "
+"zero."
msgstr ""
"[code]s[/code] ãŒã‚¼ãƒ­ã‚ã‚‹ã„ã¯ã€ã»ã¼ã‚¼ãƒ­ã§ã‚れ㰠[code]true[/code] ã‚’è¿”ã—ã¾"
"ã™ã€‚"
-#: modules/gdscript/doc_classes/@GDScript.xml:551
+#: modules/gdscript/doc_classes/@GDScript.xml:555
msgid ""
"Returns length of Variant [code]var[/code]. Length is the character count of "
"String, element count of Array, size of Dictionary, etc.\n"
@@ -736,7 +755,7 @@ msgstr ""
"len(a) # 4 ã‚’è¿”ã™\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:569
+#: modules/gdscript/doc_classes/@GDScript.xml:573
msgid ""
"Linearly interpolates between two values by a normalized value. This is the "
"opposite of [method inverse_lerp].\n"
@@ -762,7 +781,7 @@ msgstr ""
"lerp(Vector2(1, 5), Vector2(3, 2), 0.5) # Vector2(2, 3.5) ã¨è¿”ã™\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:588
+#: modules/gdscript/doc_classes/@GDScript.xml:592
msgid ""
"Linearly interpolates between two angles (in radians) by a normalized "
"value.\n"
@@ -791,7 +810,7 @@ msgstr ""
" elapsed += delta\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:607
+#: modules/gdscript/doc_classes/@GDScript.xml:611
msgid ""
"Converts from linear energy to decibels (audio). This can be used to "
"implement volume sliders that behave as expected (since volume isn't "
@@ -816,14 +835,23 @@ msgstr ""
"linear2db($Slider.value))\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:622
+#: modules/gdscript/doc_classes/@GDScript.xml:626
+#, fuzzy
msgid ""
-"Loads a resource from the filesystem located at [code]path[/code].\n"
+"Loads a resource from the filesystem located at [code]path[/code]. The "
+"resource is loaded on the method call (unless it's referenced already "
+"elsewhere, e.g. in another script or in the scene), which might cause slight "
+"delay, especially when loading scenes. To avoid unnecessary delays when "
+"loading something multiple times, either store the resource in a variable or "
+"use [method preload].\n"
"[b]Note:[/b] Resource paths can be obtained by right-clicking on a resource "
-"in the FileSystem dock and choosing [b]Copy Path[/b].\n"
+"in the FileSystem dock and choosing \"Copy Path\" or by dragging the file "
+"from the FileSystem dock into the script.\n"
"[codeblock]\n"
-"# Load a scene called main located in the root of the project directory.\n"
-"var main = load(\"res://main.tscn\")\n"
+"# Load a scene called main located in the root of the project directory and "
+"cache it in a variable.\n"
+"var main = load(\"res://main.tscn\") # main will contain a PackedScene "
+"resource.\n"
"[/codeblock]\n"
"[b]Important:[/b] The path must be absolute, a local path will just return "
"[code]null[/code]."
@@ -839,7 +867,8 @@ msgstr ""
"[b]é‡è¦:[/b] 絶対パスã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã€ç›¸å¯¾ãƒ‘スã ã¨å˜ã« [code]null[/code] ã‚’"
"è¿”ã—ã¾ã™ã€‚"
-#: modules/gdscript/doc_classes/@GDScript.xml:637
+#: modules/gdscript/doc_classes/@GDScript.xml:641
+#, fuzzy
msgid ""
"Natural logarithm. The amount of time needed to reach a certain level of "
"continuous growth.\n"
@@ -847,7 +876,9 @@ msgid ""
"calculators, which uses a base 10 logarithm.\n"
"[codeblock]\n"
"log(10) # Returns 2.302585\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] The logarithm of [code]0[/code] returns [code]-inf[/code], "
+"while negative values return [code]-nan[/code]."
msgstr ""
"自然対数。連続的ãªå¢—加ã«ãŠã„ã¦ã€ç‰¹å®šã®ä½ç½®ã«é”ã™ã‚‹ã¾ã§ã«å¿…è¦ãªæ™‚é–“ã§ã™ã€‚\n"
"[b]注:[/b] ã»ã¨ã‚“ã©ã®è¨ˆç®—æ©Ÿã«ã¤ã„ã¦ã„ã‚‹ log 関数ã¯ã€åº•ãŒ 10 ãªã®ã§ã€ã“ã‚Œã¨ç•°"
@@ -856,7 +887,7 @@ msgstr ""
"log(10) # 2.302585 ã‚’è¿”ã™\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:652
+#: modules/gdscript/doc_classes/@GDScript.xml:657
msgid ""
"Returns the maximum of two values.\n"
"[codeblock]\n"
@@ -870,7 +901,7 @@ msgstr ""
"max(-3.99, -4) # -3.99 ã¨è¿”ã™\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:667
+#: modules/gdscript/doc_classes/@GDScript.xml:672
msgid ""
"Returns the minimum of two values.\n"
"[codeblock]\n"
@@ -884,13 +915,16 @@ msgstr ""
"min(-3.99, -4) # -4 ã¨è¿”ã™\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:684
+#: modules/gdscript/doc_classes/@GDScript.xml:689
+#, fuzzy
msgid ""
"Moves [code]from[/code] toward [code]to[/code] by the [code]delta[/code] "
"value.\n"
"Use a negative [code]delta[/code] value to move away.\n"
"[codeblock]\n"
+"move_toward(5, 10, 4) # Returns 9\n"
"move_toward(10, 5, 4) # Returns 6\n"
+"move_toward(10, 5, -1.5) # Returns 11.5\n"
"[/codeblock]"
msgstr ""
"[code]delta[/code] ã®åˆ†ã ã‘ [code]from[/code] ã‹ã‚‰ [code]to[/code] ã«ç§»å‹•ã•ã›"
@@ -900,23 +934,27 @@ msgstr ""
"move_toward(10, 5, 4) # 6 ã¨è¿”ã‚‹\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:697
+#: modules/gdscript/doc_classes/@GDScript.xml:704
msgid ""
-"Returns the nearest larger power of 2 for integer [code]value[/code].\n"
+"Returns the nearest equal or larger power of 2 for integer [code]value[/"
+"code].\n"
+"In other words, returns the smallest value [code]a[/code] where [code]a = "
+"pow(2, n)[/code] such that [code]value <= a[/code] for some non-negative "
+"integer [code]n[/code].\n"
"[codeblock]\n"
"nearest_po2(3) # Returns 4\n"
"nearest_po2(4) # Returns 4\n"
"nearest_po2(5) # Returns 8\n"
-"[/codeblock]"
+"\n"
+"nearest_po2(0) # Returns 0 (this may not be what you expect)\n"
+"nearest_po2(-1) # Returns 0 (this may not be what you expect)\n"
+"[/codeblock]\n"
+"[b]WARNING:[/b] Due to the way it is implemented, this function returns "
+"[code]0[/code] rather than [code]1[/code] for non-positive values of "
+"[code]value[/code] (in reality, 1 is the smallest integer power of 2)."
msgstr ""
-"æ•´æ•° [code]value[/code] 以上ã§1 番近ã„2ã®å†ªæ•°ã‚’è¿”ã—ã¾ã™ã€‚\n"
-"[codeblock]\n"
-"nearest_po2(3) # 4 ã¨è¿”ã‚‹\n"
-"nearest_po2(4) # 4 ã¨è¿”ã‚‹\n"
-"nearest_po2(5) # 8 ã¨è¿”ã‚‹\n"
-"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:711
+#: modules/gdscript/doc_classes/@GDScript.xml:723
msgid ""
"Returns an integer representing the Unicode code point of the given Unicode "
"character [code]char[/code].\n"
@@ -935,24 +973,26 @@ msgstr ""
"[/codeblock]\n"
"ã“れ㯠[method char] ã®é€†ã§ã™ã€‚"
-#: modules/gdscript/doc_classes/@GDScript.xml:726
+#: modules/gdscript/doc_classes/@GDScript.xml:738
+#, fuzzy
msgid ""
-"Parse JSON text to a Variant (use [method typeof] to check if it is what you "
-"expect).\n"
-"Be aware that the JSON specification does not define integer or float types, "
-"but only a number type. Therefore, parsing a JSON text will convert all "
-"numerical values to [float] types.\n"
-"Note that JSON objects do not preserve key order like Godot dictionaries, "
-"thus you should not rely on keys being in a certain order if a dictionary is "
-"constructed from JSON. In contrast, JSON arrays retain the order of their "
+"Parse JSON text to a Variant. (Use [method typeof] to check if the Variant's "
+"type is what you expect.)\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, parsing a JSON text will convert "
+"all numerical values to [float] types.\n"
+"[b]Note:[/b] JSON objects do not preserve key order like Godot dictionaries, "
+"thus, you should not rely on keys being in a certain order if a dictionary "
+"is constructed from JSON. In contrast, JSON arrays retain the order of their "
"elements:\n"
"[codeblock]\n"
-"p = parse_json('[\"a\", \"b\", \"c\"]')\n"
-"if typeof(p) == TYPE_ARRAY:\n"
-" print(p[0]) # Prints a\n"
+"var p = JSON.parse('[\"hello\", \"world\", \"!\"]')\n"
+"if typeof(p.result) == TYPE_ARRAY:\n"
+" print(p.result[0]) # Prints \"hello\"\n"
"else:\n"
-" print(\"unexpected results\")\n"
-"[/codeblock]"
+" push_error(\"Unexpected results.\")\n"
+"[/codeblock]\n"
+"See also [JSON] for an alternative way to parse JSON text."
msgstr ""
"JSONテキストをパースã—ã¦Variantã«ã—ã¾ã™ (æ­£ã—ã„ã‹ã©ã†ã‹ã¯ [method typeof] ã§"
"確èªã—ã¦ãã ã•ã„)。\n"
@@ -970,7 +1010,7 @@ msgstr ""
" print(\"想定外ã®çµæžœ\")\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:746
+#: modules/gdscript/doc_classes/@GDScript.xml:759
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:142
msgid ""
"Converts a 2D point expressed in the polar coordinate system (a distance "
@@ -980,7 +1020,7 @@ msgstr ""
"極座標系 (原点ã‹ã‚‰ã®è·é›¢ [code]r[/code] ã¨è§’度 [code]th[/code] ã‹ã‚‰ãªã‚‹) ã«ãŠ"
"ã‘る二次元ã®ç‚¹ã‚’ã€ãƒ‡ã‚«ãƒ«ãƒˆåº§æ¨™ç³» (X ãŠã‚ˆã³ Y 軸) ã«å¤‰æ›ã—ã¾ã™ã€‚"
-#: modules/gdscript/doc_classes/@GDScript.xml:757
+#: modules/gdscript/doc_classes/@GDScript.xml:770
msgid ""
"Returns the integer modulus of [code]a/b[/code] that wraps equally in "
"positive and negative.\n"
@@ -1027,7 +1067,7 @@ msgstr ""
"4 1\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:788
+#: modules/gdscript/doc_classes/@GDScript.xml:801
msgid ""
"Returns the result of [code]x[/code] raised to the power of [code]y[/code].\n"
"[codeblock]\n"
@@ -1039,27 +1079,23 @@ msgstr ""
"pow(2, 5) # 32 ã¨è¿”ã™\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:800
+#: modules/gdscript/doc_classes/@GDScript.xml:813
msgid ""
-"Returns a resource from the filesystem that is loaded during script "
-"parsing.\n"
+"Returns a [Resource] from the filesystem located at [code]path[/code]. The "
+"resource is loaded during script parsing, i.e. is loaded with the script and "
+"[method preload] effectively acts as a reference to that resource. Note that "
+"the method requires a constant path. If you want to load a resource from a "
+"dynamic/variable path, use [method load].\n"
"[b]Note:[/b] Resource paths can be obtained by right clicking on a resource "
-"in the Assets Panel and choosing \"Copy Path\".\n"
+"in the Assets Panel and choosing \"Copy Path\" or by dragging the file from "
+"the FileSystem dock into the script.\n"
"[codeblock]\n"
-"# Load a scene called main located in the root of the project directory.\n"
-"var main = preload(\"res://main.tscn\")\n"
+"# Instance a scene.\n"
+"var diamond = preload(\"res://diamond.tscn\").instance()\n"
"[/codeblock]"
msgstr ""
-"ファイルシステムã«ã‚るリソースをã€ã‚¹ã‚¯ãƒªãƒ—トã®ãƒ‘ース中ã«èª­ã¿è¾¼ã¿ã¾ã™ã€‚\n"
-"[b]注:[/b] リソースã®ãƒ‘スã¯ã€ãƒ•ã‚¡ã‚¤ãƒ«ã‚·ã‚¹ãƒ†ãƒ  ドック内ã«ã‚るリソースをå³ã‚¯"
-"リックã—ã¦ã€Œãƒ‘スをコピーã€ã‚’é¸ã¹ã°å¾—られã¾ã™ã€‚\n"
-"[codeblock]\n"
-"# プロジェクト ディレクトリã®ãƒ«ãƒ¼ãƒˆã«ã‚ã‚‹ main ã¨ã„ã†åå‰ã®ã‚·ãƒ¼ãƒ³ã‚’読ã¿è¾¼"
-"む。\n"
-"var main = preload(\"res://main.tscn\")\n"
-"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:812
+#: modules/gdscript/doc_classes/@GDScript.xml:825
msgid ""
"Converts one or more arguments to strings in the best way possible and "
"prints them to the console.\n"
@@ -1075,11 +1111,11 @@ msgstr ""
"print(\"a\", \"b\", a) # ab[1, 2, 3] ã¨è¡¨ç¤º\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:823
+#: modules/gdscript/doc_classes/@GDScript.xml:836
msgid "Like [method print], but prints only when used in debug mode."
msgstr "[method print] ã¨åŒæ§˜ã§ã™ãŒã€ã—ã‹ã—デãƒãƒƒã‚°ãƒ¢ãƒ¼ãƒ‰æ™‚ã«ã®ã¿è¡¨ç¤ºã—ã¾ã™ã€‚"
-#: modules/gdscript/doc_classes/@GDScript.xml:830
+#: modules/gdscript/doc_classes/@GDScript.xml:843
msgid ""
"Prints a stack track at code location, only works when running with debugger "
"turned on.\n"
@@ -1095,7 +1131,7 @@ msgstr ""
"Frame 0 - res://test.gd:16 in function '_process'\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:841
+#: modules/gdscript/doc_classes/@GDScript.xml:854
msgid ""
"Prints one or more arguments to strings in the best way possible to standard "
"error line.\n"
@@ -1109,7 +1145,7 @@ msgstr ""
"printerr(\"stderr ã«å‡ºåŠ›\")\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:851
+#: modules/gdscript/doc_classes/@GDScript.xml:864
msgid ""
"Prints one or more arguments to strings in the best way possible to console. "
"No newline is added at the end.\n"
@@ -1133,7 +1169,7 @@ msgstr ""
"ã®ã¿å‡ºåŠ›ã—ã¾ã™ã€‚ã‚‚ã—エディタ上ã§è¡¨ç¤ºã™ã‚‹å¿…è¦ãŒã‚ã‚‹å ´åˆã¯ã€[method print] ãªã©"
"ã®ä»–ã®é–¢æ•°ã‚’利用ã—ã¦ãã ã•ã„。"
-#: modules/gdscript/doc_classes/@GDScript.xml:864
+#: modules/gdscript/doc_classes/@GDScript.xml:877
msgid ""
"Prints one or more arguments to the console with a space between each "
"argument.\n"
@@ -1146,7 +1182,7 @@ msgstr ""
"prints(\"A\", \"B\", \"C\") # A B Cã¨å‡ºåŠ›\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:874
+#: modules/gdscript/doc_classes/@GDScript.xml:887
msgid ""
"Prints one or more arguments to the console with a tab between each "
"argument.\n"
@@ -1159,7 +1195,7 @@ msgstr ""
"printt(\"A\", \"B\", \"C\") # A B Cã¨å‡ºåŠ›\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:886
+#: modules/gdscript/doc_classes/@GDScript.xml:899
msgid ""
"Pushes an error message to Godot's built-in debugger and to the OS "
"terminal.\n"
@@ -1174,7 +1210,7 @@ msgstr ""
"ターミナルã«å‡ºåŠ›\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:898
+#: modules/gdscript/doc_classes/@GDScript.xml:911
msgid ""
"Pushes a warning message to Godot's built-in debugger and to the OS "
"terminal.\n"
@@ -1189,9 +1225,10 @@ msgstr ""
"ã¨ã‚¿ãƒ¼ãƒŸãƒŠãƒ«ã«å‡ºåŠ›\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:910
+#: modules/gdscript/doc_classes/@GDScript.xml:923
+#, fuzzy
msgid ""
-"Converts from radians to degrees.\n"
+"Converts an angle expressed in radians to degrees.\n"
"[codeblock]\n"
"rad2deg(0.523599) # Returns 30\n"
"[/codeblock]"
@@ -1201,7 +1238,7 @@ msgstr ""
"rad2deg(0.523599) # 30 ã¨è¿”ã™\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:924
+#: modules/gdscript/doc_classes/@GDScript.xml:937
msgid ""
"Random range, any floating point value between [code]from[/code] and "
"[code]to[/code].\n"
@@ -1215,7 +1252,7 @@ msgstr ""
"prints(rand_range(0, 1), rand_range(0, 1)) # 0.135591 0.405263 ã®ã‚ˆã†ã«å‡ºåŠ›\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:936
+#: modules/gdscript/doc_classes/@GDScript.xml:949
msgid ""
"Random from seed: pass a [code]seed[/code], and an array with both number "
"and new seed is returned. \"Seed\" here refers to the internal state of the "
@@ -1226,7 +1263,7 @@ msgstr ""
"ãªã‚‹é…列を返ã—ã¾ã™ã€‚ã“ã“ã§ã„ã†ã€Œã‚·ãƒ¼ãƒ‰ã€ã¨ã¯ã€ç–‘似乱数生æˆå™¨ã®å†…部状態を指ã—"
"ã¾ã™ã€‚ç¾åœ¨ã®å®Ÿè£…ã«ãŠã‘る内部状態ã¯64ビットã§ã™ã€‚"
-#: modules/gdscript/doc_classes/@GDScript.xml:943
+#: modules/gdscript/doc_classes/@GDScript.xml:956
msgid ""
"Returns a random floating point value on the interval [code][0, 1][/code].\n"
"[codeblock]\n"
@@ -1238,7 +1275,7 @@ msgstr ""
"randf() # 0.375671 ã®ã‚ˆã†ã«è¿”ã‚‹\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:953
+#: modules/gdscript/doc_classes/@GDScript.xml:966
msgid ""
"Returns a random unsigned 32 bit integer. Use remainder to obtain a random "
"value in the interval [code][0, N - 1][/code] (where N is smaller than "
@@ -1259,7 +1296,7 @@ msgstr ""
"randi() % 100 + 1 # 1 ã‹ã‚‰ 100 ã¾ã§ã®ãƒ©ãƒ³ãƒ€ãƒ ãªæ•´æ•°ã‚’è¿”ã™\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:966
+#: modules/gdscript/doc_classes/@GDScript.xml:979
msgid ""
"Randomizes the seed (or the internal state) of the random number generator. "
"Current implementation reseeds using a number based on time.\n"
@@ -1275,7 +1312,7 @@ msgstr ""
" randomize()\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:977
+#: modules/gdscript/doc_classes/@GDScript.xml:990
msgid ""
"Returns an array with the given range. Range can be 1 argument N (0 to N-1), "
"two arguments (initial, final-1) or three arguments (initial, final-1, "
@@ -1331,7 +1368,7 @@ msgstr ""
"4\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:1017
+#: modules/gdscript/doc_classes/@GDScript.xml:1030
msgid ""
"Maps a [code]value[/code] from range [code][istart, istop][/code] to [code]"
"[ostart, ostop][/code].\n"
@@ -1345,10 +1382,11 @@ msgstr ""
"range_lerp(75, 0, 100, -1, 1) # 0.5 ã¨è¿”ã™\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:1029
+#: modules/gdscript/doc_classes/@GDScript.xml:1042
+#, fuzzy
msgid ""
-"Returns the integral value that is nearest to [code]s[/code], with halfway "
-"cases rounded away from zero.\n"
+"Rounds [code]s[/code] to the nearest whole number, with halfway cases "
+"rounded away from zero.\n"
"[codeblock]\n"
"round(2.6) # Returns 3\n"
"[/codeblock]"
@@ -1359,7 +1397,7 @@ msgstr ""
"round(2.6) # 3 ã¨è¿”ã™\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:1041
+#: modules/gdscript/doc_classes/@GDScript.xml:1054
msgid ""
"Sets seed for the random number generator.\n"
"[codeblock]\n"
@@ -1373,7 +1411,7 @@ msgstr ""
"seed(my_seed.hash())\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:1054
+#: modules/gdscript/doc_classes/@GDScript.xml:1067
msgid ""
"Returns the sign of [code]s[/code]: -1 or 1. Returns 0 if [code]s[/code] is "
"0.\n"
@@ -1391,7 +1429,7 @@ msgstr ""
"sign(6) # 返り値㯠1\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:1068
+#: modules/gdscript/doc_classes/@GDScript.xml:1081
msgid ""
"Returns the sine of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -1403,7 +1441,7 @@ msgstr ""
"sin(0.523599) # 返り値㯠0.5\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:1080
+#: modules/gdscript/doc_classes/@GDScript.xml:1093
msgid ""
"Returns the hyperbolic sine of [code]s[/code].\n"
"[codeblock]\n"
@@ -1417,39 +1455,37 @@ msgstr ""
"sinh(a) # 返り値㯠0.75\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:1097
+#: modules/gdscript/doc_classes/@GDScript.xml:1110
msgid ""
-"Returns a number smoothly interpolated between the [code]from[/code] and "
-"[code]to[/code], based on the [code]weight[/code]. Similar to [method lerp], "
-"but interpolates faster at the beginning and slower at the end.\n"
+"Returns the result of smoothly interpolating the value of [code]s[/code] "
+"between [code]0[/code] and [code]1[/code], based on the where [code]s[/code] "
+"lies with respect to the edges [code]from[/code] and [code]to[/code].\n"
+"The return value is [code]0[/code] if [code]s <= from[/code], and [code]1[/"
+"code] if [code]s >= to[/code]. If [code]s[/code] lies between [code]from[/"
+"code] and [code]to[/code], the returned value follows an S-shaped curve that "
+"maps [code]s[/code] between [code]0[/code] and [code]1[/code].\n"
+"This S-shaped curve is the cubic Hermite interpolator, given by [code]f(s) = "
+"3*s^2 - 2*s^3[/code].\n"
"[codeblock]\n"
-"smoothstep(0, 2, 0.5) # Returns 0.15\n"
+"smoothstep(0, 2, -5.0) # Returns 0.0\n"
+"smoothstep(0, 2, 0.5) # Returns 0.15625\n"
"smoothstep(0, 2, 1.0) # Returns 0.5\n"
"smoothstep(0, 2, 2.0) # Returns 1.0\n"
"[/codeblock]"
msgstr ""
-"[code]from[/code] ã‹ã‚‰ [code]to[/code] ã®é–“ã‚’ã€[code]weight[/code] ã«ã‚ˆã£ã¦ã‚¹"
-"ムーズã«è£œå®Œã—ã¦å€¤ã‚’è¿”ã—ã¾ã™ã€‚[method lerp] ã¨ä¼¼ã¦ã„ã¾ã™ãŒã€é–‹å§‹æ™‚ã¯ã‚ˆã‚Šé€²ã‚"
-"ã¦ã€æœ€çµ‚時ã¯ã‚ˆã‚Šé…ã‚Œã¦è£œå®Œã—ã¾ã™ã€‚\n"
-"[codeblock]\n"
-"smoothstep(0, 2, 0.5) # 返り値㯠0.15\n"
-"smoothstep(0, 2, 1.0) # 返り値㯠0.5\n"
-"smoothstep(0, 2, 2.0) # 返り値㯠1.0\n"
-"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:1111
+#: modules/gdscript/doc_classes/@GDScript.xml:1127
msgid ""
-"Returns the square root of [code]s[/code].\n"
+"Returns the square root of [code]s[/code], where [code]s[/code] is a non-"
+"negative number.\n"
"[codeblock]\n"
"sqrt(9) # Returns 3\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b]Negative values of [code]s[/code] return NaN. If you need "
+"negative inputs, use [code]System.Numerics.Complex[/code] in C#."
msgstr ""
-"[code]s[/code] ã®å¹³æ–¹æ ¹ã‚’è¿”ã—ã¾ã™ã€‚\n"
-"[codeblock]\n"
-"sqrt(9) # 3 ã¨è¿”ã™\n"
-"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:1123
+#: modules/gdscript/doc_classes/@GDScript.xml:1140
msgid ""
"Returns the position of the first non-zero digit, after the decimal point. "
"Note that the maximum return value is 10, which is a design decision in the "
@@ -1474,7 +1510,7 @@ msgstr ""
"n = step_decimals(0.000000005)\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:1142
+#: modules/gdscript/doc_classes/@GDScript.xml:1159
msgid ""
"Snaps float value [code]s[/code] to a given [code]step[/code]. This can also "
"be used to round a floating point number to an arbitrary number of "
@@ -1491,7 +1527,7 @@ msgstr ""
"stepify(3.14159, 0.01) # 返り値㯠3.14\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:1153
+#: modules/gdscript/doc_classes/@GDScript.xml:1170
msgid ""
"Converts one or more arguments to string in the best way possible.\n"
"[codeblock]\n"
@@ -1509,7 +1545,7 @@ msgstr ""
"len(b) # 返り値㯠12\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:1168
+#: modules/gdscript/doc_classes/@GDScript.xml:1185
msgid ""
"Converts a formatted string that was returned by [method var2str] to the "
"original value.\n"
@@ -1526,7 +1562,7 @@ msgstr ""
"print(b[\"a\"]) # 1 ã¨è¡¨ç¤º\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:1182
+#: modules/gdscript/doc_classes/@GDScript.xml:1199
msgid ""
"Returns the tangent of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -1538,7 +1574,7 @@ msgstr ""
"tan(deg2rad(45)) # 1 ã¨è¿”ã™\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:1194
+#: modules/gdscript/doc_classes/@GDScript.xml:1211
msgid ""
"Returns the hyperbolic tangent of [code]s[/code].\n"
"[codeblock]\n"
@@ -1552,25 +1588,25 @@ msgstr ""
"tanh(a) # 返り値㯠0.6\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:1207
+#: modules/gdscript/doc_classes/@GDScript.xml:1224
msgid ""
-"Converts a Variant [code]var[/code] to JSON text and return the result. "
+"Converts a [Variant] [code]var[/code] to JSON text and return the result. "
"Useful for serializing data to store or send over the network.\n"
"[codeblock]\n"
+"# Both numbers below are integers.\n"
"a = { \"a\": 1, \"b\": 2 }\n"
"b = to_json(a)\n"
"print(b) # {\"a\":1, \"b\":2}\n"
-"[/codeblock]"
+"# Both numbers above are floats, even if they display without any decimal "
+"places.\n"
+"[/codeblock]\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, converting a [Variant] to JSON "
+"text will convert all numerical values to [float] types.\n"
+"See also [JSON] for an alternative way to convert a [Variant] to JSON text."
msgstr ""
-"Variant [code]var[/code] ã‚’JSONテキストã«å¤‰æ›ã—ã¦ã‹ã‚‰è¿”ã—ã¾ã™ã€‚ä¿å­˜ã—ãŸã‚Šãƒãƒƒ"
-"トワーク上ã§é€ä¿¡ã—ãŸã‚Šã™ã‚‹ãŸã‚ã®ãƒ‡ãƒ¼ã‚¿ã‚’シリアライズã™ã‚‹éš›ã«ä¾¿åˆ©ã§ã™ã€‚\n"
-"[codeblock]\n"
-"a = { \"a\": 1, \"b\": 2 }\n"
-"b = to_json(a)\n"
-"print(b) # {\"a\":1, \"b\":2}\n"
-"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:1221
+#: modules/gdscript/doc_classes/@GDScript.xml:1242
msgid ""
"Returns whether the given class exists in [ClassDB].\n"
"[codeblock]\n"
@@ -1584,7 +1620,7 @@ msgstr ""
"type_exists(\"Variant\") # 返り値㯠false\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:1234
+#: modules/gdscript/doc_classes/@GDScript.xml:1255
msgid ""
"Returns the internal type of the given Variant object, using the [enum "
"Variant.Type] values.\n"
@@ -1605,7 +1641,8 @@ msgstr ""
" print(\"予期ã—ãªã„çµæžœ\")\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:1250
+#: modules/gdscript/doc_classes/@GDScript.xml:1271
+#, fuzzy
msgid ""
"Checks that [code]json[/code] is valid JSON data. Returns an empty string if "
"valid, or an error message otherwise.\n"
@@ -1613,9 +1650,9 @@ msgid ""
"j = to_json([1, 2, 3])\n"
"v = validate_json(j)\n"
"if not v:\n"
-" print(\"valid\")\n"
+" print(\"Valid JSON.\")\n"
"else:\n"
-" prints(\"invalid\", v)\n"
+" push_error(\"Invalid JSON: \" + v)\n"
"[/codeblock]"
msgstr ""
"[code]json[/code] ãŒæœ‰åŠ¹ãªJSONデータã‹ã©ã†ã‹æ¤œè¨¼ã—ã¾ã™ã€‚ã‚‚ã—有効ã§ã‚ã‚Œã°ç©ºã®"
@@ -1629,7 +1666,7 @@ msgstr ""
" prints(\"無効\", v)\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:1269
+#: modules/gdscript/doc_classes/@GDScript.xml:1290
msgid ""
"Encodes a variable value to a byte array. When [code]full_objects[/code] is "
"[code]true[/code] encoding objects is allowed (and can potentially include "
@@ -1639,7 +1676,7 @@ msgstr ""
"[code]true[/code] ã®ã¨ãã¯ã€ã‚ªãƒ–ジェクトã®ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‰ã‚‚許ã—ã¾ã™(コードもå«ã¾ã‚Œ"
"ã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™)。"
-#: modules/gdscript/doc_classes/@GDScript.xml:1278
+#: modules/gdscript/doc_classes/@GDScript.xml:1299
msgid ""
"Converts a Variant [code]var[/code] to a formatted string that can later be "
"parsed using [method str2var].\n"
@@ -1669,7 +1706,7 @@ msgstr ""
"}\n"
"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:1298
+#: modules/gdscript/doc_classes/@GDScript.xml:1319
msgid ""
"Returns a weak reference to an object.\n"
"A weak reference to an object is not enough to keep the object alive: when "
@@ -1685,178 +1722,71 @@ msgstr ""
"ã‚‹ã¾ã§ã¯ã€ãã‚Œã¸ã®å¼·å‚ç…§ãŒãªããªã£ãŸå ´åˆã§ã‚‚ã€å¼±å‚ç…§ã¯ãã®ã‚ªãƒ–ジェクトを返ã›"
"ã¾ã™ã€‚"
-#: modules/gdscript/doc_classes/@GDScript.xml:1312
+#: modules/gdscript/doc_classes/@GDScript.xml:1333
msgid ""
"Wraps float [code]value[/code] between [code]min[/code] and [code]max[/"
"code].\n"
"Usable for creating loop-alike behavior or infinite surfaces.\n"
"[codeblock]\n"
-"# a is 0.5\n"
-"a = wrapf(10.5, 0.0, 10.0)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# a is 9.5\n"
-"a = wrapf(-0.5, 0.0, 10.0)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# Infinite loop between 0.0 and 0.99\n"
-"f = wrapf(f + 0.1, 0.0, 1.0)\n"
+"# Infinite loop between 5.0 and 9.9\n"
+"value = wrapf(value + 0.1, 5.0, 10.0)\n"
"[/codeblock]\n"
"[codeblock]\n"
"# Infinite rotation (in radians)\n"
"angle = wrapf(angle + 0.1, 0.0, TAU)\n"
"[/codeblock]\n"
-"[b]Note:[/b] If you just want to wrap between 0.0 and [code]n[/code] (where "
-"[code]n[/code] is a positive floating-point value), it is better for "
-"performance to use the [method fmod] method like [code]fmod(number, n)[/"
-"code].\n"
-"[code]wrapf[/code] is more flexible than using the [method fmod] approach by "
-"giving the user a simple control over the minimum value. It also fully "
-"supports negative numbers, e.g.\n"
"[codeblock]\n"
"# Infinite rotation (in radians)\n"
"angle = wrapf(angle + 0.1, -PI, PI)\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] If [code]min[/code] is [code]0[/code], this is equivalent to "
+"[method fposmod], so prefer using that instead.\n"
+"[code]wrapf[/code] is more flexible than using the [method fposmod] approach "
+"by giving the user control over the minimum value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1348
+#: modules/gdscript/doc_classes/@GDScript.xml:1361
msgid ""
"Wraps integer [code]value[/code] between [code]min[/code] and [code]max[/"
"code].\n"
"Usable for creating loop-alike behavior or infinite surfaces.\n"
"[codeblock]\n"
-"# a is 0\n"
-"a = wrapi(10, 0, 10)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# a is 9\n"
-"a = wrapi(-1, 0, 10)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# Infinite loop between 0 and 9\n"
-"frame = wrapi(frame + 1, 0, 10)\n"
+"# Infinite loop between 5 and 9\n"
+"frame = wrapi(frame + 1, 5, 10)\n"
"[/codeblock]\n"
-"[b]Note:[/b] If you just want to wrap between 0 and [code]n[/code] (where "
-"[code]n[/code] is a positive integer value), it is better for performance to "
-"use the modulo operator like [code]number % n[/code].\n"
-"[code]wrapi[/code] is more flexible than using the modulo approach by giving "
-"the user a simple control over the minimum value. It also fully supports "
-"negative numbers, e.g.\n"
"[codeblock]\n"
"# result is -2\n"
"var result = wrapi(-6, -5, -1)\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] If [code]min[/code] is [code]0[/code], this is equivalent to "
+"[method posmod], so prefer using that instead.\n"
+"[code]wrapi[/code] is more flexible than using the [method posmod] approach "
+"by giving the user control over the minimum value."
msgstr ""
#: modules/gdscript/doc_classes/@GDScript.xml:1378
-msgid ""
-"Stops the function execution and returns the current suspended state to the "
-"calling function.\n"
-"From the caller, call [method GDScriptFunctionState.resume] on the state to "
-"resume execution. This invalidates the state. Within the resumed function, "
-"[code]yield()[/code] returns whatever was passed to the [code]resume()[/"
-"code] function call.\n"
-"If passed an object and a signal, the execution is resumed when the object "
-"emits the given signal. In this case, [code]yield()[/code] returns the "
-"argument passed to [code]emit_signal()[/code] if the signal takes only one "
-"argument, or an array containing all the arguments passed to "
-"[code]emit_signal()[/code] if the signal takes multiple arguments.\n"
-"You can also use [code]yield[/code] to wait for a function to finish:\n"
-"[codeblock]\n"
-"func _ready():\n"
-" yield(countdown(), \"completed\") # waiting for the countdown() function "
-"to complete\n"
-" print('Ready')\n"
-"\n"
-"func countdown():\n"
-" yield(get_tree(), \"idle_frame\") # returns a GDScriptFunctionState "
-"object to _ready()\n"
-" print(3)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-" print(2)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-" print(1)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-"\n"
-"# prints:\n"
-"# 3\n"
-"# 2\n"
-"# 1\n"
-"# Ready\n"
-"[/codeblock]\n"
-"When yielding on a function, the [code]completed[/code] signal will be "
-"emitted automatically when the function returns. It can, therefore, be used "
-"as the [code]signal[/code] parameter of the [code]yield[/code] method to "
-"resume.\n"
-"In order to yield on a function, the resulting function should also return a "
-"[code]GDScriptFunctionState[/code]. Notice [code]yield(get_tree(), "
-"\"idle_frame\")[/code] from the above example."
-msgstr ""
-"ç¾åœ¨ã®é–¢æ•°ã®å®Ÿè¡Œã‚’一時åœæ­¢ã—ã¦ã€åœæ­¢ä¸­ã®ç¾åœ¨ã®ã‚¹ãƒ†ãƒ¼ãƒˆã‚’ã€å‘¼ã³å‡ºã—å…ƒã®é–¢æ•°ã«"
-"è¿”ã—ã¾ã™ã€‚\n"
-"呼ã³å‡ºã—å…ƒã‹ã‚‰ã¯ã€ãã®ã‚¹ãƒ†ãƒ¼ãƒˆã® [method GDScriptFunctionState.resume] を呼ã³"
-"出ã›ã°å®Ÿè¡Œå†é–‹ã§ãã¾ã™ã€‚ã“ã‚Œã¯ã‚¹ãƒ†ãƒ¼ãƒˆã‚’å–り消ã—ã¾ã™ã€‚å†é–‹ã•ã‚ŒãŸé–¢æ•°å†…ã§ã¯ã€"
-"[code]yield()[/code] 㯠[code]resume()[/code] 関数ã«æ¸¡ã•ã‚ŒãŸã™ã¹ã¦ã®å¼•æ•°ã‚’è¿”"
-"ã—ã¾ã™ã€‚\n"
-"オブジェクトã¨ã‚·ã‚°ãƒŠãƒ«ã‚’渡ã›ã°ã€ãã®æ¸¡ã•ã‚ŒãŸã‚·ã‚°ãƒŠãƒ«ã‚’オブジェクトãŒç™ºä¿¡ã—ãŸ"
-"ã¨ãã«ã€å®Ÿè¡ŒãŒå†é–‹ã•ã‚Œã¾ã™ã€‚ã“ã®å ´åˆ [code]yield()[/code] ã¯ã€"
-"[code]emit_signal()[/code] ã«æ¸¡ã•ã‚ŒãŸå¼•æ•°ã‚’è¿”ã—ã¾ã™ã€‚ã‚‚ã—ã€ãã®ã‚·ã‚°ãƒŠãƒ«ã®å¼•æ•°"
-"ãŒã²ã¨ã¤ã ã‘ãªã‚‰å¼•æ•°ã‚’ãã®ã¾ã¾è¿”ã—ã€å¼•æ•°ãŒè¤‡æ•°ã‚れ㰠[code]emit_signal()[/"
-"code] ã«æ¸¡ã•ã‚ŒãŸã™ã¹ã¦ã®å¼•æ•°ã‚’å«ã‚€é…列を返ã—ã¾ã™ã€‚\n"
-"関数ã®å®Ÿè¡ŒãŒå®Œäº†ã™ã‚‹ã¾ã§å¾…ã¡ãŸã„ã¨ãã«ã‚‚ [code]yield[/code] ã¯ä½¿ãˆã¾ã™:\n"
-"[codeblock]\n"
-"func _ready():\n"
-" yield(countdown(), \"completed\") # countdown() 関数ãŒå®Œäº†ã™ã‚‹ã¾ã§å¾…ã¤\n"
-" print('Ready')\n"
-"\n"
-"func countdown():\n"
-" yield(get_tree(), \"idle_frame\") # GDScriptFunctionStateオブジェクトを "
-"_ready() ã«è¿”ã™\n"
-" print(3)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-" print(2)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-" print(1)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-"\n"
-"# çµæžœ:\n"
-"# 3\n"
-"# 2\n"
-"# 1\n"
-"# Ready\n"
-"[/codeblock]\n"
-"関数をyieldã™ã‚‹ã¨ã€é–¢æ•°ãŒreturnã™ã‚‹ã¨ãã« [code]completed[/code] シグナルãŒè‡ª"
-"å‹•çš„ã«ç™ºä¿¡ã•ã‚Œã¾ã™ã€‚ãã®ãŸã‚ã€ã“れを [code]yield[/code] メソッド㮠"
-"[code]signal[/code] パラメータã«ã™ã‚Œã°å†é–‹ã§ãã¾ã™ã€‚\n"
-"関数をyieldã™ã‚‹ã«ã¯ã€ãã®çµæžœã¨ãªã‚‹é–¢æ•°ã‚‚ã¾ãŸ [code]GDScriptFunctionState[/"
-"code] ã‚’è¿”ã™å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚上記ã®ä¾‹ã® [code]yield(get_tree(), \"idle_frame"
-"\")[/code] ã«æ³¨ç›®ã—ã¦ã¿ã¦ãã ã•ã„。"
-
-#: modules/gdscript/doc_classes/@GDScript.xml:1409
+#, fuzzy
msgid ""
"Constant that represents how many times the diameter of a circle fits around "
-"its perimeter."
+"its perimeter. This is equivalent to [code]TAU / 2[/code]."
msgstr "円周ã®é•·ã•ã‚’ã€å††ã®ç›´å¾„ã®ä½•å€ã‹ã§è¡¨ã—ãŸå®šæ•°ã€‚"
-#: modules/gdscript/doc_classes/@GDScript.xml:1412
-msgid "The circle constant, the circumference of the unit circle."
+#: modules/gdscript/doc_classes/@GDScript.xml:1381
+#, fuzzy
+msgid "The circle constant, the circumference of the unit circle in radians."
msgstr "円定数。å˜ä½å††ã®å††å‘¨ã€‚"
-#: modules/gdscript/doc_classes/@GDScript.xml:1415
-msgid "A positive infinity. (For negative infinity, use -INF)."
+#: modules/gdscript/doc_classes/@GDScript.xml:1384
+#, fuzzy
+msgid "Positive infinity. For negative infinity, use -INF."
msgstr "æ­£ã®ç„¡é™å¤§ (è² ã®ç„¡é™å¤§ã«ã¯ -INF を使ã£ã¦ãã ã•ã„)。"
-#: modules/gdscript/doc_classes/@GDScript.xml:1418
+#: modules/gdscript/doc_classes/@GDScript.xml:1387
msgid ""
-"Macro constant that expands to an expression of type float that represents a "
-"NaN.\n"
-"The NaN values are used to identify undefined or non-representable values "
-"for floating-point elements, such as the square root of negative numbers or "
-"the result of 0/0."
+"\"Not a Number\", an invalid value. [code]NaN[/code] has special properties, "
+"including that it is not equal to itself. It is output by some invalid "
+"operations, such as dividing zero by zero."
msgstr ""
-"NaNを表ç¾ã™ã‚‹æµ®å‹•å°æ•°ç‚¹æ•°åž‹ã¨ã—ã¦å±•é–‹ã™ã‚‹ãƒžã‚¯ãƒ­å®šæ•°ã€‚\n"
-"NaN値ã¯ã€æµ®å‹•å°æ•°ç‚¹æ•°ã®è¦ç´ ã«ãŠã„ã¦ã€è² æ•°ã®å¹³æ–¹æ ¹ã‚„ 0/0 ã®çµæžœã¨ã„ã£ãŸã€æœªå®š"
-"義ã¾ãŸã¯è¡¨ç¾ä¸èƒ½ãªå€¤ã‚’識別ã™ã‚‹ã®ã«ä½¿ã„ã¾ã™ã€‚"
#: doc/classes/@GlobalScope.xml:4
msgid "Global scope constants and variables."
@@ -1894,19 +1824,16 @@ msgid "The [Engine] singleton."
msgstr "[Engine] シングルトン。"
#: doc/classes/@GlobalScope.xml:31
-#, fuzzy
msgid "The [Geometry2D] singleton."
-msgstr "[Geometry] シングルトン。"
+msgstr "[Geometry2D] シングルトン。"
#: doc/classes/@GlobalScope.xml:34
-#, fuzzy
msgid "The [Geometry3D] singleton."
-msgstr "[Geometry] シングルトン。"
+msgstr "[Geometry3D] シングルトン。"
#: doc/classes/@GlobalScope.xml:37
-#, fuzzy
msgid "The [GodotSharp] singleton."
-msgstr "[Geometry] シングルトン。"
+msgstr "[GodotSharp] シングルトン。"
#: doc/classes/@GlobalScope.xml:40
msgid "The [IP] singleton."
@@ -3150,274 +3077,273 @@ msgid "Extra mouse button 2 mask."
msgstr "追加マウスボタン2マスク。"
#: doc/classes/@GlobalScope.xml:953
-#, fuzzy
msgid "An invalid game controller button."
-msgstr "任天堂コントローラAボタン。"
+msgstr "無効ãªã‚²ãƒ¼ãƒ ã‚³ãƒ³ãƒˆãƒ­ãƒ¼ãƒ© ボタン。"
#: doc/classes/@GlobalScope.xml:956
-#, fuzzy
msgid "Game controller SDL button A."
-msgstr "XboxコントローラBボタン。"
+msgstr "ゲームコントローラ SDLボタンA。"
#: doc/classes/@GlobalScope.xml:959
-#, fuzzy
msgid "Game controller SDL button B."
-msgstr "XboxコントローラBボタン。"
+msgstr "ゲームコントローラ SDLボタンB。"
#: doc/classes/@GlobalScope.xml:962
-#, fuzzy
msgid "Game controller SDL button X."
-msgstr "XboxコントローラBボタン。"
+msgstr "ゲームコントローラ SDLボタンX。"
#: doc/classes/@GlobalScope.xml:965
-#, fuzzy
msgid "Game controller SDL button Y."
-msgstr "XboxコントローラBボタン。"
+msgstr "ゲームコントローラ SDLボタンY。"
#: doc/classes/@GlobalScope.xml:968
-#, fuzzy
msgid "Game controller SDL back button."
-msgstr "XboxコントローラBボタン。"
+msgstr "ゲームコントローラ SDLãƒãƒƒã‚¯ãƒœã‚¿ãƒ³ã€‚"
#: doc/classes/@GlobalScope.xml:971
-#, fuzzy
msgid "Game controller SDL guide button."
-msgstr "XboxコントローラBボタン。"
+msgstr "ゲームコントローラ SDLガイドボタン。"
#: doc/classes/@GlobalScope.xml:974
-#, fuzzy
msgid "Game controller SDL start button."
-msgstr "XboxコントローラBボタン。"
+msgstr "ゲームコントローラ SDLスタートボタン。"
#: doc/classes/@GlobalScope.xml:977
-#, fuzzy
msgid "Game controller SDL left stick button."
-msgstr "XboxコントローラBボタン。"
+msgstr "ゲームコントローラ SDL左スティックボタン。"
#: doc/classes/@GlobalScope.xml:980
-#, fuzzy
msgid "Game controller SDL right stick button."
-msgstr "XboxコントローラBボタン。"
+msgstr "ゲームコントローラ SDLå³ã‚¹ãƒ†ã‚£ãƒƒã‚¯ãƒœã‚¿ãƒ³ã€‚"
#: doc/classes/@GlobalScope.xml:983
-#, fuzzy
msgid "Game controller SDL left shoulder button."
-msgstr "ゲームパッドã®Lボタン。"
+msgstr "ゲームコントローラ SDL 左 ショルダーボタン。"
#: doc/classes/@GlobalScope.xml:986
-#, fuzzy
msgid "Game controller SDL right shoulder button."
-msgstr "ゲームパッドã®Rボタン。"
+msgstr "ゲームコントローラ SDL å³ ã‚·ãƒ§ãƒ«ãƒ€ãƒ¼ãƒœã‚¿ãƒ³ã€‚"
#: doc/classes/@GlobalScope.xml:989
-#, fuzzy
msgid "Game controller SDL D-pad up button."
-msgstr "XboxコントローラBボタン。"
+msgstr "ゲームコントローラ SDL å字ボタン上。"
#: doc/classes/@GlobalScope.xml:992
-#, fuzzy
msgid "Game controller SDL D-pad down button."
-msgstr "XboxコントローラBボタン。"
+msgstr "ゲームコントローラ SDL å字ボタン下。"
#: doc/classes/@GlobalScope.xml:995
-#, fuzzy
msgid "Game controller SDL D-pad left button."
-msgstr "XboxコントローラBボタン。"
+msgstr "ゲームコントローラ SDL å字ボタン左。"
#: doc/classes/@GlobalScope.xml:998
-#, fuzzy
msgid "Game controller SDL D-pad right button."
-msgstr "XboxコントローラBボタン。"
+msgstr "ゲームコントローラ SDL å字ボタンå³ã€‚"
#: doc/classes/@GlobalScope.xml:1001
-#, fuzzy
msgid "The number of SDL game controller buttons."
-msgstr "XboxコントローラBボタン。"
+msgstr "SDLゲームコントローラã®ãƒœã‚¿ãƒ³ã®æ•°ã€‚"
#: doc/classes/@GlobalScope.xml:1004
msgid "Sony DualShock controller X button maps to SDL button A."
msgstr ""
+"SDLボタンAã«ãƒžãƒƒãƒ—ã•ã‚Œã‚‹ã€ã‚½ãƒ‹ãƒ¼ã®ãƒ‡ãƒ¥ã‚¢ãƒ«ã‚·ãƒ§ãƒƒã‚¯ コントローラ Xボタン。"
#: doc/classes/@GlobalScope.xml:1007
msgid "Sony DualShock controller cross button maps to SDL button A."
msgstr ""
+"SDLボタンAã«ãƒžãƒƒãƒ—ã•ã‚Œã‚‹ã€ã‚½ãƒ‹ãƒ¼ã®ãƒ‡ãƒ¥ã‚¢ãƒ«ã‚·ãƒ§ãƒƒã‚¯ コントローラ ×ボタン。"
#: doc/classes/@GlobalScope.xml:1010
msgid "Sony DualShock controller circle button maps to SDL button B."
msgstr ""
+"SDLボタンBã«ãƒžãƒƒãƒ—ã•ã‚Œã‚‹ã€ã‚½ãƒ‹ãƒ¼ã®ãƒ‡ãƒ¥ã‚¢ãƒ«ã‚·ãƒ§ãƒƒã‚¯ コントローラ ○ボタン。"
#: doc/classes/@GlobalScope.xml:1013
msgid "Sony DualShock controller square button maps to SDL button X."
msgstr ""
+"SDLボタンXã«ãƒžãƒƒãƒ—ã•ã‚Œã‚‹ã€ã‚½ãƒ‹ãƒ¼ã®ãƒ‡ãƒ¥ã‚¢ãƒ«ã‚·ãƒ§ãƒƒã‚¯ コントローラ □ボタン。"
#: doc/classes/@GlobalScope.xml:1016
msgid "Sony DualShock controller triangle button maps to SDL button Y."
msgstr ""
+"SDLボタンYã«ãƒžãƒƒãƒ—ã•ã‚Œã‚‹ã€ã‚½ãƒ‹ãƒ¼ã®ãƒ‡ãƒ¥ã‚¢ãƒ«ã‚·ãƒ§ãƒƒã‚¯ コントローラ △ボタン。"
#: doc/classes/@GlobalScope.xml:1019
msgid "Sony DualShock controller select button maps to SDL back button."
msgstr ""
+"SDL backボタンã«ãƒžãƒƒãƒ—ã•ã‚Œã‚‹ã€ã‚½ãƒ‹ãƒ¼ã®ãƒ‡ãƒ¥ã‚¢ãƒ«ã‚·ãƒ§ãƒƒã‚¯ コントローラ セレクト"
+"ボタン。"
#: doc/classes/@GlobalScope.xml:1022
msgid "Sony DualShock controller start button maps to SDL start button."
msgstr ""
+"SDL startボタンã«ãƒžãƒƒãƒ—ã•ã‚Œã‚‹ã€ã‚½ãƒ‹ãƒ¼ã®ãƒ‡ãƒ¥ã‚¢ãƒ«ã‚·ãƒ§ãƒƒã‚¯ コントローラ スタート"
+"ボタン。"
#: doc/classes/@GlobalScope.xml:1025
msgid "Sony DualShock controller PS button maps to SDL guide button."
msgstr ""
+"SDL guideボタンã«ãƒžãƒƒãƒ—ã•ã‚Œã‚‹ã€ã‚½ãƒ‹ãƒ¼ã®ãƒ‡ãƒ¥ã‚¢ãƒ«ã‚·ãƒ§ãƒƒã‚¯ コントローラ PSボタ"
+"ン。"
#: doc/classes/@GlobalScope.xml:1028
msgid "Sony DualShock controller L1 button maps to SDL left shoulder button."
msgstr ""
+"SDL 左ショルダーボタンã«ãƒžãƒƒãƒ—ã•ã‚Œã‚‹ã€ã‚½ãƒ‹ãƒ¼ã®ãƒ‡ãƒ¥ã‚¢ãƒ«ã‚·ãƒ§ãƒƒã‚¯ コントローラ "
+"L1ボタン。"
#: doc/classes/@GlobalScope.xml:1031
msgid "Sony DualShock controller R1 button maps to SDL right shoulder button."
msgstr ""
+"SDL å³ã‚·ãƒ§ãƒ«ãƒ€ãƒ¼ãƒœã‚¿ãƒ³ã«ãƒžãƒƒãƒ—ã•ã‚Œã‚‹ã€ã‚½ãƒ‹ãƒ¼ã®ãƒ‡ãƒ¥ã‚¢ãƒ«ã‚·ãƒ§ãƒƒã‚¯ コントローラ "
+"R1ボタン。"
#: doc/classes/@GlobalScope.xml:1034
msgid "Sony DualShock controller L3 button maps to SDL left stick button."
msgstr ""
+"SDL 左スティックボタンã«ãƒžãƒƒãƒ—ã•ã‚Œã‚‹ã€ã‚½ãƒ‹ãƒ¼ã®ãƒ‡ãƒ¥ã‚¢ãƒ«ã‚·ãƒ§ãƒƒã‚¯ コントローラ "
+"L3ボタン。"
#: doc/classes/@GlobalScope.xml:1037
msgid "Sony DualShock controller R3 button maps to SDL right stick button."
msgstr ""
+"SDL å³ã‚¹ãƒ†ã‚£ãƒƒã‚¯ãƒœã‚¿ãƒ³ã«ãƒžãƒƒãƒ—ã•ã‚Œã‚‹ã€ã‚½ãƒ‹ãƒ¼ã®ãƒ‡ãƒ¥ã‚¢ãƒ«ã‚·ãƒ§ãƒƒã‚¯ コントローラ "
+"R3ボタン。"
#: doc/classes/@GlobalScope.xml:1040
-#, fuzzy
msgid "Xbox game controller A button maps to SDL button A."
-msgstr "XboxコントローラAボタン。"
+msgstr "SDLボタンAã«ãƒžãƒƒãƒ—ã•ã‚Œã‚‹ã€Xboxゲームコントローラ Aボタン。"
#: doc/classes/@GlobalScope.xml:1043
-#, fuzzy
msgid "Xbox game controller B button maps to SDL button B."
-msgstr "XboxコントローラBボタン。"
+msgstr "SDLボタンBã«ãƒžãƒƒãƒ—ã•ã‚Œã‚‹ã€Xboxゲームコントローラ Bボタン。"
#: doc/classes/@GlobalScope.xml:1046
-#, fuzzy
msgid "Xbox game controller X button maps to SDL button X."
-msgstr "XboxコントローラXボタン。"
+msgstr "SDLボタンXã«ãƒžãƒƒãƒ—ã•ã‚Œã‚‹ã€Xboxゲームコントローラ Xボタン。"
#: doc/classes/@GlobalScope.xml:1049
-#, fuzzy
msgid "Xbox game controller Y button maps to SDL button Y."
-msgstr "XboxコントローラYボタン。"
+msgstr "SDLボタンYã«ãƒžãƒƒãƒ—ã•ã‚Œã‚‹ã€Xboxゲームコントローラ Yボタン。"
#: doc/classes/@GlobalScope.xml:1052
msgid "Xbox game controller back button maps to SDL back button."
-msgstr ""
+msgstr "SDL backボタンã«ãƒžãƒƒãƒ—ã•ã‚Œã‚‹ã€Xbox ゲーム コントローラ backボタン。"
#: doc/classes/@GlobalScope.xml:1055
msgid "Xbox game controller start button maps to SDL start button."
-msgstr ""
+msgstr "SDL startボタンã«ãƒžãƒƒãƒ—ã•ã‚Œã‚‹ã€Xbox ゲーム コントローラ startボタン。"
#: doc/classes/@GlobalScope.xml:1058
msgid "Xbox game controller home button maps to SDL guide button."
-msgstr ""
+msgstr "SDL guideボタンã«ãƒžãƒƒãƒ—ã•ã‚Œã‚‹ã€Xboxゲームコントローラ homeボタン。"
#: doc/classes/@GlobalScope.xml:1061
msgid "Xbox game controller left stick button maps to SDL left stick button."
msgstr ""
+"SDL 左スティックボタンã«ãƒžãƒƒãƒ—ã•ã‚Œã‚‹ã€Xboxゲーム コントローラ 左スティックボ"
+"タン。"
#: doc/classes/@GlobalScope.xml:1064
msgid "Xbox game controller right stick button maps to SDL right stick button."
msgstr ""
+"SDL å³ã‚¹ãƒ†ã‚£ãƒƒã‚¯ãƒœã‚¿ãƒ³ã«ãƒžãƒƒãƒ—ã•ã‚Œã‚‹ã€Xboxゲーム コントローラ å³ã‚¹ãƒ†ã‚£ãƒƒã‚¯ãƒœ"
+"タン。"
#: doc/classes/@GlobalScope.xml:1067
msgid ""
"Xbox game controller left bumper button maps to SDL left shoulder button."
msgstr ""
+"SDL 左ショルダーボタンã«ãƒžãƒƒãƒ—ã•ã‚Œã‚‹ã€Xboxゲーム コントローラ å·¦ãƒãƒ³ãƒ‘ーボタ"
+"ン。"
#: doc/classes/@GlobalScope.xml:1070
msgid ""
"Xbox game controller right bumper button maps to SDL right shoulder button."
msgstr ""
+"SDL å³ã‚·ãƒ§ãƒ«ãƒ€ãƒ¼ãƒœã‚¿ãƒ³ã«ãƒžãƒƒãƒ—ã•ã‚Œã‚‹ã€Xboxゲーム コントローラ å³ãƒãƒ³ãƒ‘ーボタ"
+"ン。"
#: doc/classes/@GlobalScope.xml:1073
-#, fuzzy
msgid "The maximum number of game controller buttons."
-msgstr "任天堂コントローラAボタン。"
+msgstr "ゲームコントローラ ボタンã®æœ€å¤§æ•°ã€‚"
#: doc/classes/@GlobalScope.xml:1076
msgid "An invalid game controller axis."
-msgstr ""
+msgstr "無効ãªã‚²ãƒ¼ãƒ ã‚³ãƒ³ãƒˆãƒ­ãƒ¼ãƒ©è»¸ã€‚"
#: doc/classes/@GlobalScope.xml:1079
-#, fuzzy
msgid "Game controller left joystick x-axis."
-msgstr "ゲームパッドã®å·¦ã‚¹ãƒ†ã‚£ãƒƒã‚¯åž‚直軸。"
+msgstr "ゲームコントローラã®å·¦ã‚¸ãƒ§ã‚¤ã‚¹ãƒ†ã‚£ãƒƒã‚¯ x軸。"
#: doc/classes/@GlobalScope.xml:1082
-#, fuzzy
msgid "Game controller left joystick y-axis."
-msgstr "ゲームパッドã®å·¦ã‚¹ãƒ†ã‚£ãƒƒã‚¯åž‚直軸。"
+msgstr "ゲームコントローラã®å·¦ã‚¸ãƒ§ã‚¤ã‚¹ãƒ†ã‚£ãƒƒã‚¯ y軸。"
#: doc/classes/@GlobalScope.xml:1085
-#, fuzzy
msgid "Game controller right joystick x-axis."
-msgstr "ゲームパッドã®å³ã‚¹ãƒ†ã‚£ãƒƒã‚¯åž‚直軸。"
+msgstr "ゲームコントローラã®å³ã‚¸ãƒ§ã‚¤ã‚¹ãƒ†ã‚£ãƒƒã‚¯ x軸。"
#: doc/classes/@GlobalScope.xml:1088
-#, fuzzy
msgid "Game controller right joystick y-axis."
-msgstr "ゲームパッドã®å³ã‚¹ãƒ†ã‚£ãƒƒã‚¯åž‚直軸。"
+msgstr "ゲームコントローラã®å³ã‚¸ãƒ§ã‚¤ã‚¹ãƒ†ã‚£ãƒƒã‚¯ y軸。"
#: doc/classes/@GlobalScope.xml:1091
-#, fuzzy
msgid "Game controller left trigger axis."
-msgstr "ゲームパッドã®å·¦ãƒˆãƒªã‚¬ãƒ¼ アナログ軸。"
+msgstr "ゲームコントローラã®å·¦ãƒˆãƒªã‚¬ãƒ¼è»¸ã€‚"
#: doc/classes/@GlobalScope.xml:1094
-#, fuzzy
msgid "Game controller right trigger axis."
-msgstr "ゲームパッドã®å³ãƒˆãƒªã‚¬ãƒ¼ アナログ軸。"
+msgstr "ゲームコントローラã®å³ãƒˆãƒªã‚¬ãƒ¼è»¸ã€‚"
#: doc/classes/@GlobalScope.xml:1097
msgid "The number of SDL game controller axes."
-msgstr ""
+msgstr "SDLゲームコントローラ軸ã®æ•°ã€‚"
#: doc/classes/@GlobalScope.xml:1100
msgid "Game controller joystick 0 x-axis."
-msgstr ""
+msgstr "ゲームコントローラ ジョイスティック0 X軸。"
#: doc/classes/@GlobalScope.xml:1103
msgid "Game controller joystick 0 y-axis."
-msgstr ""
+msgstr "ゲームコントローラ ジョイスティック0 Y軸。"
#: doc/classes/@GlobalScope.xml:1106
msgid "Game controller joystick 1 x-axis."
-msgstr ""
+msgstr "ゲームコントローラ ジョイスティック1 X軸。"
#: doc/classes/@GlobalScope.xml:1109
msgid "Game controller joystick 1 y-axis."
-msgstr ""
+msgstr "ゲームコントローラ ジョイスティック1 Y軸。"
#: doc/classes/@GlobalScope.xml:1112
msgid "Game controller joystick 2 x-axis."
-msgstr ""
+msgstr "ゲームコントローラ ジョイスティック2 X軸。"
#: doc/classes/@GlobalScope.xml:1115
msgid "Game controller joystick 2 y-axis."
-msgstr ""
+msgstr "ゲームコントローラ ジョイスティック2 Y軸。"
#: doc/classes/@GlobalScope.xml:1118
msgid "Game controller joystick 3 x-axis."
-msgstr ""
+msgstr "ゲームコントローラ ジョイスティック3 X軸。"
#: doc/classes/@GlobalScope.xml:1121
msgid "Game controller joystick 3 y-axis."
-msgstr ""
+msgstr "ゲームコントローラ ジョイスティック3 Y軸。"
#: doc/classes/@GlobalScope.xml:1124
msgid "Game controller joystick 4 x-axis."
-msgstr ""
+msgstr "ゲームコントローラ ジョイスティック4 X軸。"
#: doc/classes/@GlobalScope.xml:1127
msgid "Game controller joystick 4 y-axis."
-msgstr ""
+msgstr "ゲームコントローラ ジョイスティック4 Y軸。"
#: doc/classes/@GlobalScope.xml:1130
msgid "The maximum number of game controller axes."
-msgstr ""
+msgstr "ゲームコントローラ軸ã®æœ€å¤§æ•°ã€‚"
#: doc/classes/@GlobalScope.xml:1133
msgid "MIDI note OFF message."
@@ -3463,6 +3389,19 @@ msgid ""
" print(\"Still failing!\")\n"
"[/codeblock]"
msgstr ""
+"[enum Error] ã‚’è¿”ã™ãƒ¡ã‚½ãƒƒãƒ‰ã¯ã€ã‚¨ãƒ©ãƒ¼ãŒèµ·ã“らãªã‹ã£ãŸã¨ã㯠[constant OK] ã‚’"
+"è¿”ã—ã¾ã™ã€‚関数ã®å¤šãã¯ã‚¨ãƒ©ãƒ¼ã‚³ãƒ¼ãƒ‰ã‚’è¿”ã•ãšã«ã€æ¨™æº–出力ã«ã‚¨ãƒ©ãƒ¼ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’é€"
+"ã‚‹ã®ã§æ³¨æ„ã—ã¦ãã ã•ã„。\n"
+"[constant OK] ã®å€¤ã¯ 0 ãªã®ã§ã€ä»–ã®ã™ã¹ã¦ã®å¤±æ•—コードã¯æ­£ã®æ•´æ•°ã«ãªã£ã¦ã„ã¦ã€"
+"ブール値ãƒã‚§ãƒƒã‚¯ã§ã‚‚使ãˆã¾ã™ã€‚例ãˆã°:\n"
+"[codeblock]\n"
+"var err = method_that_returns_error()\n"
+"if err != OK:\n"
+" print(\"失敗ï¼\")\n"
+"# ã‚ã‚‹ã„ã¯ã€åŒæ§˜ã«:\n"
+"if err:\n"
+" print(\"ã¾ãŸå¤±æ•—ï¼\")\n"
+"[/codeblock]"
#: doc/classes/@GlobalScope.xml:1166
msgid "Generic error."
@@ -3590,11 +3529,11 @@ msgstr "ä¸æ­£ãªãƒ‘ラメータ エラー。"
#: doc/classes/@GlobalScope.xml:1259
msgid "Already exists error."
-msgstr ""
+msgstr "ã™ã§ã«å­˜åœ¨ã‚¨ãƒ©ãƒ¼ã€‚"
#: doc/classes/@GlobalScope.xml:1262
msgid "Does not exist error."
-msgstr ""
+msgstr "存在ã›ãšã‚¨ãƒ©ãƒ¼ã€‚"
#: doc/classes/@GlobalScope.xml:1265
msgid "Database: Read error."
@@ -3661,9 +3600,8 @@ msgstr ""
"ンメソッドã¯ç„¡ã„)"
#: doc/classes/@GlobalScope.xml:1310
-#, fuzzy
msgid "No hint for the edited property."
-msgstr "編集済ã¿ãƒ—ロパティã«ãƒ’ントãªã—。"
+msgstr "編集済ã¿ãƒ—ロパティ用ã®ãƒ’ントãªã—。"
#: doc/classes/@GlobalScope.xml:1313
msgid ""
@@ -3674,6 +3612,12 @@ msgid ""
"above the max or below the min values. Example: [code]\"-360,360,1,"
"or_greater,or_lesser\"[/code]."
msgstr ""
+"æ•´æ•°ã¾ãŸã¯æµ®å‹•å°æ•°ç‚¹æ•°ãƒ—ロパティã«ã¤ã„ã¦ã€ãƒ’ント文字列 [code]\"min,max\"[/"
+"code] ã¾ãŸã¯ [code]\"min,max,step\"[/code] ã§æŒ‡å®šã•ã‚ŒãŸç¯„囲内ã«ã‚ã‚‹ã¹ãã“ã¨ã‚’"
+"示ã™ãƒ’ント。ヒント文字列ã«ã¯ã€ã‚ªãƒ—ション㧠[code]\"or_greater\"[/code] ãŠã‚ˆ"
+"ã³/ã¾ãŸã¯ [code]\"or_lesser\"[/code] ã‚’å«ã‚ã‚‹ã“ã¨ãŒã§ãã€ãã‚Œãžã‚Œæœ€å¤§å€¤ã‚ˆã‚Šä¸Š"
+"ã¾ãŸã¯æœ€å°å€¤ã‚ˆã‚Šä¸‹ã¸ã®æ‰‹å‹•å…¥åŠ›ã‚’å¯èƒ½ã«ã—ã¾ã™ã€‚例 [code]\"-360,360,1,"
+"or_greater,or_lesser\"[/code]。"
#: doc/classes/@GlobalScope.xml:1316
msgid ""
@@ -3684,6 +3628,12 @@ msgid ""
"respectively above the max or below the min values. Example: "
"[code]\"0.01,100,0.01,or_greater\"[/code]."
msgstr ""
+"æ•´æ•°ã¾ãŸã¯æµ®å‹•å°æ•°ç‚¹æ•°ã®ãƒ—ロパティã«ã¤ã„ã¦ã€ãƒ’ント文字列 [code]\"min,max\"[/"
+"code] ã¾ãŸã¯ [code]\"min,max,step\"[/code] ã§æŒ‡å®šã•ã‚ŒãŸæŒ‡æ•°ã®ç¯„囲内ã«ã‚ã‚‹ã¹ã"
+"ã§ã‚ã‚‹ã“ã¨ã‚’示ã™ãƒ’ント。ヒント文字列ã¯ã€ã‚ªãƒ—ション㧠[code]\"or_greater\"[/"
+"code] ãŠã‚ˆã³/ã¾ãŸã¯ [code]\"or_lesser\"[/code] ã‚’å«ã‚€ã“ã¨ãŒã§ãã€ãã‚Œãžã‚Œæœ€å¤§"
+"値より上ã¾ãŸã¯æœ€å°å€¤ã‚ˆã‚Šä¸‹ã¸ã®æ‰‹å‹•å…¥åŠ›ã‚’å¯èƒ½ã«ã—ã¾ã™ã€‚例: "
+"[code]\"0.01,100,0.01,or_greater\"[/code]。"
#: doc/classes/@GlobalScope.xml:1319
msgid ""
@@ -3691,6 +3641,9 @@ msgid ""
"pick in a list specified via a hint string such as [code]\"Hello,Something,"
"Else\"[/code]."
msgstr ""
+"æ•´æ•°ã€æµ®å‹•å°æ•°ç‚¹æ•°ã€æ–‡å­—列ã®ãƒ—ロパティãŒã€[code]\"Hello,Something,Else\"[/"
+"code]ã®ã‚ˆã†ãªã€ãƒ’ント文字列ã§æŒ‡å®šã•ã‚ŒãŸãƒªã‚¹ãƒˆã®ä¸­ã§é¸æŠžã™ã‚‹ãŸã‚ã®åˆ—挙値ã§ã‚ã‚‹"
+"ã¨ã„ã†ãƒ’ント。"
#: doc/classes/@GlobalScope.xml:1322
msgid ""
@@ -3699,10 +3652,14 @@ msgid ""
"the curve horizontally and/or [code]\"inout\"[/code] to also include in/out "
"easing."
msgstr ""
+"浮動å°æ•°ç‚¹æ•°ãƒ—ロパティãŒç´¯ä¹—イージング関数を介ã—ã¦ç·¨é›†ã•ã‚Œã‚‹ã¹ãã§ã‚ã‚‹ã¨ã„ã†"
+"ヒント。ヒント文字列ã«ã¯ã€æ›²ç·šã‚’水平方å‘ã«å転ã•ã›ã‚‹ãŸã‚ã®[code]\"attenuation"
+"\"[/code] ã€ãŠã‚ˆã³/ã¾ãŸã¯ã€ã‚¤ãƒ³/アウト・イージングをå«ã‚ã‚‹ãŸã‚ã® "
+"[code]\"inout\"[/code] ã‚’å«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚"
#: doc/classes/@GlobalScope.xml:1325 doc/classes/@GlobalScope.xml:1328
msgid "Deprecated hint, unused."
-msgstr ""
+msgstr "éžæŽ¨å¥¨ã®ãƒ’ントã€æœªä½¿ç”¨ã€‚"
#: doc/classes/@GlobalScope.xml:1331
msgid ""
@@ -3710,30 +3667,41 @@ msgid ""
"example, to allow toggling bits 0, 1, 2 and 4, the hint could be something "
"like [code]\"Bit0,Bit1,Bit2,,Bit4\"[/code]."
msgstr ""
+"整数プロパティãŒã€æŒ‡å®šã•ã‚ŒãŸãƒ“ットフラグをæŒã¤ãƒ“ットマスクã§ã‚ã‚‹ã¨ã„ã†ãƒ’ン"
+"ト。例ãˆã°ã€ãƒ“ット 0, 1, 2, 4 をトグルã§ãるよã†ã«ã™ã‚‹ã«ã¯ã€ãƒ’ント㯠"
+"[code]\"Bit0,Bit1,Bit2,,Bit4\"[/code] ã®ã‚ˆã†ãªã‚‚ã®ã«ãªã‚Šã¾ã™ã€‚"
#: doc/classes/@GlobalScope.xml:1334
msgid ""
"Hints that an integer property is a bitmask using the optionally named 2D "
"render layers."
msgstr ""
+"整数プロパティãŒã€ã‚ªãƒ—ションã§æŒ‡å®šã•ã‚ŒãŸ 2D レンダー レイヤーを使用ã—ãŸãƒ“ット"
+"マスクã§ã‚ã‚‹ã“ã¨ã®ãƒ’ント。"
#: doc/classes/@GlobalScope.xml:1337
msgid ""
"Hints that an integer property is a bitmask using the optionally named 2D "
"physics layers."
msgstr ""
+"整数プロパティãŒã€ã‚ªãƒ—ションã§æŒ‡å®šã•ã‚ŒãŸ 2D 物ç†ãƒ¬ã‚¤ãƒ¤ãƒ¼ã‚’使用ã—ãŸãƒ“ットマス"
+"クã§ã‚ã‚‹ã“ã¨ã®ãƒ’ント。"
#: doc/classes/@GlobalScope.xml:1340
msgid ""
"Hints that an integer property is a bitmask using the optionally named 3D "
"render layers."
msgstr ""
+"整数プロパティãŒã€ã‚ªãƒ—ションã§æŒ‡å®šã•ã‚ŒãŸ 3D レンダー レイヤーを使用ã—ãŸãƒ“ット"
+"マスクã§ã‚ã‚‹ã“ã¨ã®ãƒ’ント。"
#: doc/classes/@GlobalScope.xml:1343
msgid ""
"Hints that an integer property is a bitmask using the optionally named 3D "
"physics layers."
msgstr ""
+"整数プロパティãŒã€ã‚ªãƒ—ションã§æŒ‡å®šã•ã‚ŒãŸ 3D 物ç†ãƒ¬ã‚¤ãƒ¤ãƒ¼ã‚’使用ã—ãŸãƒ“ットマス"
+"クã§ã‚ã‚‹ã“ã¨ã®ãƒ’ント。"
#: doc/classes/@GlobalScope.xml:1346
msgid ""
@@ -3741,12 +3709,18 @@ msgid ""
"file dialog for picking the path. The hint string can be a set of filters "
"with wildcards like [code]\"*.png,*.jpg\"[/code]."
msgstr ""
+"文字列プロパティãŒãƒ•ã‚¡ã‚¤ãƒ«ã¸ã®ãƒ‘スã§ã‚ã‚‹ã“ã¨ã®ãƒ’ント。ã“れを編集ã™ã‚‹ã¨ã€ãƒ‘ス"
+"ã‚’é¸æŠžã™ã‚‹ãŸã‚ã®ãƒ•ã‚¡ã‚¤ãƒ« ダイアログãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚ヒント文字列ã¯ã€[code]\"*."
+"png,*.jpg\"[/code] ã®ã‚ˆã†ãªãƒ¯ã‚¤ãƒ«ãƒ‰ã‚«ãƒ¼ãƒ‰ã‚’å«ã‚€ãƒ•ã‚£ãƒ«ã‚¿ã®ã‚»ãƒƒãƒˆã«ã™ã‚‹ã“ã¨ãŒã§"
+"ãã¾ã™ã€‚"
#: doc/classes/@GlobalScope.xml:1349
msgid ""
"Hints that a string property is a path to a directory. Editing it will show "
"a file dialog for picking the path."
msgstr ""
+"文字列プロパティãŒãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã¸ã®ãƒ‘スã§ã‚ã‚‹ã“ã¨ã®ãƒ’ント。ã“れを編集ã™ã‚‹ã¨ã€"
+"パスをé¸æŠžã™ã‚‹ãŸã‚ã®ãƒ•ã‚¡ã‚¤ãƒ« ダイアログãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚"
#: doc/classes/@GlobalScope.xml:1352
msgid ""
@@ -3755,12 +3729,19 @@ msgid ""
"hint string can be a set of filters with wildcards like [code]\"*.png,*.jpg"
"\"[/code]."
msgstr ""
+"文字列プロパティãŒã€ãƒ—ロジェクトフォルダ外ã®ãƒ•ã‚¡ã‚¤ãƒ«ã¸ã®çµ¶å¯¾ãƒ‘スã§ã‚ã‚‹ã“ã¨ã®"
+"ヒント。ã“れを編集ã™ã‚‹ã¨ã€ãƒ‘スをé¸æŠžã™ã‚‹ãŸã‚ã®ãƒ•ã‚¡ã‚¤ãƒ« ダイアログãŒè¡¨ç¤ºã•ã‚Œã¾"
+"ã™ã€‚ヒント文字列ã¯ã€[code]\"*.png,*.jpg\"[/code] ã®ã‚ˆã†ãªãƒ¯ã‚¤ãƒ«ãƒ‰ã‚«ãƒ¼ãƒ‰ã‚’å«ã‚€"
+"フィルタã®ã‚»ãƒƒãƒˆã«ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚"
#: doc/classes/@GlobalScope.xml:1355
msgid ""
"Hints that a string property is an absolute path to a directory outside the "
"project folder. Editing it will show a file dialog for picking the path."
msgstr ""
+"文字列プロパティãŒã€ãƒ—ロジェクトフォルダ外ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã¸ã®çµ¶å¯¾ãƒ‘スã§ã‚ã‚‹ã“"
+"ã¨ã®ãƒ’ント。ã“れを編集ã™ã‚‹ã¨ã€ãƒ‘スをé¸æŠžã™ã‚‹ãŸã‚ã®ãƒ•ã‚¡ã‚¤ãƒ« ダイアログãŒè¡¨ç¤ºã•"
+"ã‚Œã¾ã™ã€‚"
#: doc/classes/@GlobalScope.xml:1358
msgid ""
@@ -3768,12 +3749,18 @@ msgid ""
"optionally specified via the hint string (e.g. [code]\"Texture2D\"[/code]). "
"Editing it will show a popup menu of valid resource types to instantiate."
msgstr ""
+"プロパティ㌠[Resource] 派生型ã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã§ã‚ã‚‹ã“ã¨ã‚’示ã™ãƒ’ント。任æ„ã§ã•"
+"らã«è©³ã—ãヒント文字列 (例: [code]\"Texture2D\"[/code]) を指定ã§ãã¾ã™ã€‚ã“ã‚Œ"
+"を編集ã™ã‚‹ã¨ã€ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹åŒ–å¯èƒ½ãªãƒªã‚½ãƒ¼ã‚¹åž‹ã‚’ãƒãƒƒãƒ—アップメニューã§è¡¨ç¤ºã—ã¾"
+"ã™ã€‚"
#: doc/classes/@GlobalScope.xml:1361
msgid ""
"Hints that a string property is text with line breaks. Editing it will show "
"a text input field where line breaks can be typed."
msgstr ""
+"文字列プロパティãŒã€æ”¹è¡Œã®ã‚るテキストã§ã‚ã‚‹ã“ã¨ã®ãƒ’ント。ã“れを編集ã™ã‚‹ã¨ã€"
+"改行を入力ã§ãるテキスト入力フィールドãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚"
#: doc/classes/@GlobalScope.xml:1364
msgid ""
@@ -3781,508 +3768,558 @@ msgid ""
"input field, whenever the property is empty. The hint string is the "
"placeholder text to use."
msgstr ""
+"文字列プロパティãŒç©ºã®å ´åˆã¯å¸¸ã«ã€ãã®ãƒ—ロパティã®å…¥åŠ›ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã«ãƒ—レースホ"
+"ルダ テキストãŒè¡¨ç¤ºã•ã‚Œã‚‹ã¹ãã¨ã„ã†ãƒ’ント。ヒント文字列ã¯ã€ä½¿ç”¨ã™ã‚‹ãƒ—レースホ"
+"ルダ テキストã«ãªã‚Šã¾ã™ã€‚"
#: doc/classes/@GlobalScope.xml:1367
msgid ""
"Hints that a color property should be edited without changing its alpha "
"component, i.e. only R, G and B channels are edited."
msgstr ""
+"カラープロパティã®ã‚¢ãƒ«ãƒ•ã‚¡æˆåˆ†ã‚’変更ã›ãšã«ç·¨é›†ã™ã‚‹ã¹ãã¨ã„ã†ãƒ’ント。ã¤ã¾ã‚Šã€"
+"Rã€Gã€Bãƒãƒ£ãƒ³ãƒãƒ«ã®ã¿ã‚’編集ã§ãã¾ã™ã€‚"
#: doc/classes/@GlobalScope.xml:1370
msgid "Hints that an image is compressed using lossy compression."
-msgstr ""
+msgstr "ç”»åƒãŒéžå¯é€†åœ§ç¸®ã‚’使用ã—ã¦åœ§ç¸®ã•ã‚Œã¦ã„ã‚‹ã¨ã„ã†ãƒ’ント。"
#: doc/classes/@GlobalScope.xml:1373
msgid "Hints that an image is compressed using lossless compression."
-msgstr ""
+msgstr "ç”»åƒã¯ãƒ­ã‚¹ãƒ¬ã‚¹åœ§ç¸®ã«ã‚ˆã‚Šåœ§ç¸®ã•ã‚Œã¦ã„ã‚‹ã¨ã„ã†ãƒ’ント。"
#: doc/classes/@GlobalScope.xml:1376
msgid "The property is serialized and saved in the scene file (default)."
msgstr ""
+"プロパティã¯ã‚·ãƒªã‚¢ãƒ©ã‚¤ã‚ºã•ã‚Œã€ã‚·ãƒ¼ãƒ³ãƒ•ã‚¡ã‚¤ãƒ«ã«ä¿å­˜ã•ã‚Œã¾ã™ (デフォルト) 。"
#: doc/classes/@GlobalScope.xml:1379
msgid "The property is shown in the editor inspector (default)."
-msgstr ""
+msgstr "プロパティã¯ã‚¨ãƒ‡ã‚£ã‚¿ã®ã‚¤ãƒ³ã‚¹ãƒšã‚¯ã‚¿ã«è¡¨ç¤ºã•ã‚Œã¾ã™ (デフォルト) 。"
#: doc/classes/@GlobalScope.xml:1382 doc/classes/@GlobalScope.xml:1385
msgid "Deprecated usage flag, unused."
-msgstr ""
+msgstr "éžæŽ¨å¥¨ã®ä½¿ç”¨é‡ãƒ•ãƒ©ã‚°ã€æœªä½¿ç”¨ã€‚"
#: doc/classes/@GlobalScope.xml:1388
msgid "The property can be checked in the editor inspector."
-msgstr ""
+msgstr "プロパティã¯ã€ã‚¨ãƒ‡ã‚£ã‚¿ã®ã‚¤ãƒ³ã‚¹ãƒšã‚¯ã‚¿ã§ãƒã‚§ãƒƒã‚¯ãŒä»˜ã‘られã¾ã™ã€‚"
#: doc/classes/@GlobalScope.xml:1391
msgid "The property is checked in the editor inspector."
-msgstr ""
+msgstr "プロパティã¯ã€ã‚¨ãƒ‡ã‚£ã‚¿ã®ã‚¤ãƒ³ã‚¹ãƒšã‚¯ã‚¿ã§ãƒã‚§ãƒƒã‚¯ãŒä»˜ã„ã¦ã„ã¾ã™ã€‚"
#: doc/classes/@GlobalScope.xml:1394
msgid "The property is a translatable string."
-msgstr ""
+msgstr "プロパティã¯ç¿»è¨³å¯èƒ½ãªæ–‡å­—列ã§ã™ã€‚"
#: doc/classes/@GlobalScope.xml:1397
msgid "Used to group properties together in the editor."
-msgstr ""
+msgstr "エディタ内ã§ãƒ—ロパティをグループ化ã™ã‚‹ãŸã‚ã«ä½¿ç”¨ã—ã¾ã™ã€‚"
#: doc/classes/@GlobalScope.xml:1400
msgid "Used to categorize properties together in the editor."
-msgstr ""
+msgstr "エディタ内ã§ãƒ—ロパティをã¾ã¨ã‚ã¦åˆ†é¡žã™ã‚‹ã®ã«ä½¿ç”¨ã—ã¾ã™ã€‚"
#: doc/classes/@GlobalScope.xml:1403
msgid ""
"Used to group properties together in the editor in a subgroup (under a "
"group)."
msgstr ""
+"エディタ内ã§ãƒ—ロパティをサブグループ (グループã®ä¸‹) ã«ã¾ã¨ã‚ã¦ã‚°ãƒ«ãƒ¼ãƒ—化ã™ã‚‹"
+"ã®ã«ä½¿ç”¨ã—ã¾ã™ã€‚"
#: doc/classes/@GlobalScope.xml:1406
msgid "The property does not save its state in [PackedScene]."
-msgstr ""
+msgstr "プロパティã¯ã€ãã®çŠ¶æ…‹ã‚’ [PackedScene] ã«ä¿å­˜ã—ã¾ã›ã‚“。"
#: doc/classes/@GlobalScope.xml:1409
msgid "Editing the property prompts the user for restarting the editor."
msgstr ""
+"プロパティを編集ã™ã‚‹ã¨ã€ã‚¨ãƒ‡ã‚£ã‚¿ã®å†èµ·å‹•ã‚’促ã™ãƒ—ロンプトãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚"
#: doc/classes/@GlobalScope.xml:1412
msgid ""
"The property is a script variable which should be serialized and saved in "
"the scene file."
msgstr ""
+"ã“ã®ãƒ—ロパティã¯ã‚¹ã‚¯ãƒªãƒ—ト変数ã§ã‚ã‚Šã€ã‚·ãƒ¼ãƒ³ãƒ•ã‚¡ã‚¤ãƒ«ã«ã‚·ãƒªã‚¢ãƒ©ã‚¤ã‚ºã—ã¦ä¿å­˜ã™"
+"ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚"
#: doc/classes/@GlobalScope.xml:1415
msgid "Default usage (storage, editor and network)."
-msgstr ""
+msgstr "デフォルトã®ä½¿ç”¨é‡ (ストレージã€ã‚¨ãƒ‡ã‚£ã‚¿ã€ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯) 。"
#: doc/classes/@GlobalScope.xml:1418
msgid ""
"Default usage for translatable strings (storage, editor, network and "
"internationalized)."
msgstr ""
+"翻訳å¯èƒ½ãªæ–‡å­—列 (ストレージã€ã‚¨ãƒ‡ã‚£ã‚¿ã€ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã€å›½éš›åŒ–) ã§ã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆ"
+"ã®ä½¿ç”¨é‡ã€‚"
#: doc/classes/@GlobalScope.xml:1421
msgid ""
"Default usage but without showing the property in the editor (storage, "
"network)."
msgstr ""
+"デフォルトã®ä½¿ç”¨é‡ã§ã™ãŒã€ã‚¨ãƒ‡ã‚£ã‚¿ã«ãƒ—ロパティを表示ã—ã¾ã›ã‚“ (ストレージã€"
+"ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯) 。"
#: doc/classes/@GlobalScope.xml:1424
msgid "Flag for a normal method."
-msgstr ""
+msgstr "通常メソッド用ã®ãƒ•ãƒ©ã‚°ã€‚"
#: doc/classes/@GlobalScope.xml:1427
msgid "Flag for an editor method."
-msgstr ""
+msgstr "エディタメソッド用ã®ãƒ•ãƒ©ã‚°ã€‚"
#: doc/classes/@GlobalScope.xml:1430 doc/classes/@GlobalScope.xml:1436
#: doc/classes/@GlobalScope.xml:1442
msgid "Deprecated method flag, unused."
-msgstr ""
+msgstr "廃止予定ã®ãƒ¡ã‚½ãƒƒãƒ‰ãƒ•ãƒ©ã‚°ã€æœªä½¿ç”¨ã€‚"
#: doc/classes/@GlobalScope.xml:1433
msgid "Flag for a constant method."
-msgstr ""
+msgstr "定数メソッド用ã®ãƒ•ãƒ©ã‚°ã€‚"
#: doc/classes/@GlobalScope.xml:1439
msgid "Flag for a virtual method."
-msgstr ""
+msgstr "仮想メソッド用ã®ãƒ•ãƒ©ã‚°ã€‚"
#: doc/classes/@GlobalScope.xml:1445
msgid "Default method flags."
-msgstr ""
+msgstr "デフォルトã®ãƒ¡ã‚½ãƒƒãƒ‰ç”¨ãƒ•ãƒ©ã‚°ã€‚"
#: doc/classes/@GlobalScope.xml:1448
msgid "Variable is [code]null[/code]."
-msgstr ""
+msgstr "変数㯠[code]null[/code]。"
#: doc/classes/@GlobalScope.xml:1451
msgid "Variable is of type [bool]."
-msgstr ""
+msgstr "変数㯠[bool] 型。"
#: doc/classes/@GlobalScope.xml:1454
msgid "Variable is of type [int]."
-msgstr ""
+msgstr "変数㯠[int] 型。"
#: doc/classes/@GlobalScope.xml:1457
msgid "Variable is of type [float] (real)."
-msgstr ""
+msgstr "変数㯠[float] 型(実数)。"
#: doc/classes/@GlobalScope.xml:1460
msgid "Variable is of type [String]."
-msgstr ""
+msgstr "変数㯠[String] 型。"
#: doc/classes/@GlobalScope.xml:1463
msgid "Variable is of type [Vector2]."
-msgstr ""
+msgstr "変数㯠[Vector2] 型。"
#: doc/classes/@GlobalScope.xml:1466
msgid "Variable is of type [Vector2i]."
-msgstr ""
+msgstr "変数㯠[Vector2i] 型。"
#: doc/classes/@GlobalScope.xml:1469
msgid "Variable is of type [Rect2]."
-msgstr ""
+msgstr "変数㯠[Rect2] 型。"
#: doc/classes/@GlobalScope.xml:1472
msgid "Variable is of type [Rect2i]."
-msgstr ""
+msgstr "変数㯠[Rect2i] 型。"
#: doc/classes/@GlobalScope.xml:1475
msgid "Variable is of type [Vector3]."
-msgstr ""
+msgstr "変数㯠[Vector3] 型。"
#: doc/classes/@GlobalScope.xml:1478
msgid "Variable is of type [Vector3i]."
-msgstr ""
+msgstr "変数㯠[Vector3i] 型。"
#: doc/classes/@GlobalScope.xml:1481
msgid "Variable is of type [Transform2D]."
-msgstr ""
+msgstr "変数㯠[Transform2D] 型。"
#: doc/classes/@GlobalScope.xml:1484
msgid "Variable is of type [Plane]."
-msgstr ""
+msgstr "変数㯠[Plane] 型。"
#: doc/classes/@GlobalScope.xml:1487
msgid "Variable is of type [Quat]."
-msgstr ""
+msgstr "変数㯠[Quat] 型。"
#: doc/classes/@GlobalScope.xml:1490
msgid "Variable is of type [AABB]."
-msgstr ""
+msgstr "変数㯠[AABB] 型。"
#: doc/classes/@GlobalScope.xml:1493
msgid "Variable is of type [Basis]."
-msgstr ""
+msgstr "変数㯠[Basis] 型。"
#: doc/classes/@GlobalScope.xml:1496
msgid "Variable is of type [Transform]."
-msgstr ""
+msgstr "変数㯠[Transform] 型。"
#: doc/classes/@GlobalScope.xml:1499
msgid "Variable is of type [Color]."
-msgstr ""
+msgstr "変数㯠[Color] 型。"
#: doc/classes/@GlobalScope.xml:1502
msgid "Variable is of type [StringName]."
-msgstr ""
+msgstr "変数㯠[StringName] 型。"
#: doc/classes/@GlobalScope.xml:1505
msgid "Variable is of type [NodePath]."
-msgstr ""
+msgstr "変数㯠[NodePath] 型。"
#: doc/classes/@GlobalScope.xml:1508
msgid "Variable is of type [RID]."
-msgstr ""
+msgstr "変数㯠[RID] 型。"
#: doc/classes/@GlobalScope.xml:1511
msgid "Variable is of type [Object]."
-msgstr ""
+msgstr "変数㯠[Object] 型。"
#: doc/classes/@GlobalScope.xml:1514
msgid "Variable is of type [Callable]."
-msgstr ""
+msgstr "変数㯠[Callable] 型。"
#: doc/classes/@GlobalScope.xml:1517
msgid "Variable is of type [Signal]."
-msgstr ""
+msgstr "変数㯠[Signal] 型。"
#: doc/classes/@GlobalScope.xml:1520
msgid "Variable is of type [Dictionary]."
-msgstr ""
+msgstr "変数㯠[Dictionary] 型。"
#: doc/classes/@GlobalScope.xml:1523
msgid "Variable is of type [Array]."
-msgstr ""
+msgstr "変数㯠[Array] 型。"
#: doc/classes/@GlobalScope.xml:1526
msgid "Variable is of type [PackedByteArray]."
-msgstr ""
+msgstr "変数㯠[PackedByteArray] 型。"
#: doc/classes/@GlobalScope.xml:1529
msgid "Variable is of type [PackedInt32Array]."
-msgstr ""
+msgstr "変数㯠[PackedInt32Array] 型。"
#: doc/classes/@GlobalScope.xml:1532
msgid "Variable is of type [PackedInt64Array]."
-msgstr ""
+msgstr "変数㯠[PackedInt64Array] 型。"
#: doc/classes/@GlobalScope.xml:1535
msgid "Variable is of type [PackedFloat32Array]."
-msgstr ""
+msgstr "変数㯠[PackedFloat32Array] 型。"
#: doc/classes/@GlobalScope.xml:1538
msgid "Variable is of type [PackedFloat64Array]."
-msgstr ""
+msgstr "変数㯠[PackedFloat64Array] 型。"
#: doc/classes/@GlobalScope.xml:1541
msgid "Variable is of type [PackedStringArray]."
-msgstr ""
+msgstr "変数㯠[PackedStringArray] 型。"
#: doc/classes/@GlobalScope.xml:1544
msgid "Variable is of type [PackedVector2Array]."
-msgstr ""
+msgstr "変数㯠[PackedVector2Array] 型。"
#: doc/classes/@GlobalScope.xml:1547
msgid "Variable is of type [PackedVector3Array]."
-msgstr ""
+msgstr "変数㯠[PackedVector3Array] 型。"
#: doc/classes/@GlobalScope.xml:1550
msgid "Variable is of type [PackedColorArray]."
-msgstr ""
+msgstr "変数㯠[PackedColorArray] 型。"
#: doc/classes/@GlobalScope.xml:1553
msgid "Represents the size of the [enum Variant.Type] enum."
-msgstr ""
+msgstr "[enum Variant.Type] enumã®ã‚µã‚¤ã‚ºã‚’表ã™ã€‚"
#: doc/classes/@GlobalScope.xml:1556
msgid "Equality operator ([code]==[/code])."
-msgstr ""
+msgstr "ç­‰ä¾¡æ¼”ç®—å­ ([code]==[/code])。"
#: doc/classes/@GlobalScope.xml:1559
msgid "Inequality operator ([code]!=[/code])."
-msgstr ""
+msgstr "éžç­‰ä¾¡æ¼”ç®—å­ ([code]!=[/code])。"
#: doc/classes/@GlobalScope.xml:1562
msgid "Less than operator ([code]<[/code])."
-msgstr ""
+msgstr "å°ãªã‚Šæ¼”ç®—å­ ([code]<[/code])。"
#: doc/classes/@GlobalScope.xml:1565
msgid "Less than or equal operator ([code]<=[/code])."
-msgstr ""
+msgstr "å°ãªã‚Šã‚¤ã‚³ãƒ¼ãƒ«æ¼”ç®—å­ ([code]<=[/code])。"
#: doc/classes/@GlobalScope.xml:1568
msgid "Greater than operator ([code]>[/code])."
-msgstr ""
+msgstr "大ãªã‚Šæ¼”ç®—å­ ([code]>[/code])。"
#: doc/classes/@GlobalScope.xml:1571
msgid "Greater than or equal operator ([code]>=[/code])."
-msgstr ""
+msgstr "大ãªã‚Šã‚¤ã‚³ãƒ¼ãƒ«æ¼”ç®—å­ ([code]>=[/code])。"
#: doc/classes/@GlobalScope.xml:1574
msgid "Addition operator ([code]+[/code])."
-msgstr ""
+msgstr "åŠ ç®—æ¼”ç®—å­ ([code]+[/code])。"
#: doc/classes/@GlobalScope.xml:1577
msgid "Subtraction operator ([code]-[/code])."
-msgstr ""
+msgstr "æ¸›ç®—æ¼”ç®—å­ ([code]-[/code])。"
#: doc/classes/@GlobalScope.xml:1580
msgid "Multiplication operator ([code]*[/code])."
-msgstr ""
+msgstr "ä¹—ç®—æ¼”ç®—å­ ([code]*[/code])。"
#: doc/classes/@GlobalScope.xml:1583
msgid "Division operator ([code]/[/code])."
-msgstr ""
+msgstr "é™¤ç®—æ¼”ç®—å­ ([code]/[/code])。"
#: doc/classes/@GlobalScope.xml:1586
msgid "Unary negation operator ([code]-[/code])."
-msgstr ""
+msgstr "å˜é …ãƒžã‚¤ãƒŠã‚¹æ¼”ç®—å­ ([code]-[/code])。"
#: doc/classes/@GlobalScope.xml:1589
msgid "Unary plus operator ([code]+[/code])."
-msgstr ""
+msgstr "å˜é …ãƒ—ãƒ©ã‚¹æ¼”ç®—å­ ([code]+[/code])。"
#: doc/classes/@GlobalScope.xml:1592
msgid "Remainder/modulo operator ([code]%[/code])."
-msgstr ""
+msgstr "剰余/モジュロ æ¼”ç®—å­ ([code]%[/code])。"
#: doc/classes/@GlobalScope.xml:1595
msgid "String concatenation operator ([code]+[/code])."
-msgstr ""
+msgstr "文字列çµåˆæ¼”ç®—å­ ([code]+[/code])。"
#: doc/classes/@GlobalScope.xml:1598
msgid "Left shift operator ([code]<<[/code])."
-msgstr ""
+msgstr "å·¦ã‚·ãƒ•ãƒˆæ¼”ç®—å­ ([code]<<[/code])。"
#: doc/classes/@GlobalScope.xml:1601
msgid "Right shift operator ([code]>>[/code])."
-msgstr ""
+msgstr "å³ã‚·ãƒ•ãƒˆæ¼”ç®—å­ ([code]>>[/code])。"
#: doc/classes/@GlobalScope.xml:1604
msgid "Bitwise AND operator ([code]&[/code])."
-msgstr ""
+msgstr "ビットå˜ä½ANDæ¼”ç®—å­ ([code]&[/code])。"
#: doc/classes/@GlobalScope.xml:1607
msgid "Bitwise OR operator ([code]|[/code])."
-msgstr ""
+msgstr "ビットå˜ä½ORæ¼”ç®—å­ ([code]|[/code])。"
#: doc/classes/@GlobalScope.xml:1610
msgid "Bitwise XOR operator ([code]^[/code])."
-msgstr ""
+msgstr "ビットå˜ä½XORæ¼”ç®—å­ ([code]^[/code])。"
#: doc/classes/@GlobalScope.xml:1613
msgid "Bitwise NOT operator ([code]~[/code])."
-msgstr ""
+msgstr "ビットå˜ä½NOTæ¼”ç®—å­ ([code]~[/code])。"
#: doc/classes/@GlobalScope.xml:1616
msgid "Logical AND operator ([code]and[/code] or [code]&&[/code])."
-msgstr ""
+msgstr "è«–ç†ANDæ¼”ç®—å­ ([code]and[/code] ã¾ãŸã¯ [code]&&[/code])。"
#: doc/classes/@GlobalScope.xml:1619
msgid "Logical OR operator ([code]or[/code] or [code]||[/code])."
-msgstr ""
+msgstr "è«–ç†ORæ¼”ç®—å­ ([code]or[/code] ã¾ãŸã¯ [code]||[/code])。"
#: doc/classes/@GlobalScope.xml:1622
msgid "Logical XOR operator (not implemented in GDScript)."
-msgstr ""
+msgstr "è«–ç†XORæ¼”ç®—å­ (GDScriptã§ã¯æœªå®Ÿè£…)。"
#: doc/classes/@GlobalScope.xml:1625
msgid "Logical NOT operator ([code]not[/code] or [code]![/code])."
-msgstr ""
+msgstr "è«–ç†NOTæ¼”ç®—å­ ([code]not[/code] ã¾ãŸã¯ [code]![/code])。"
#: doc/classes/@GlobalScope.xml:1628
msgid "Logical IN operator ([code]in[/code])."
-msgstr ""
+msgstr "è«–ç†INæ¼”ç®—å­ ([code]in[/code])。"
#: doc/classes/@GlobalScope.xml:1631
msgid "Represents the size of the [enum Variant.Operator] enum."
-msgstr ""
+msgstr "[enum Variant.Operator] enumã®ã‚µã‚¤ã‚ºã‚’表ã™ã€‚"
#: doc/classes/AABB.xml:4
msgid "Axis-Aligned Bounding Box."
-msgstr ""
+msgstr "軸平行境界ボックス。"
#: doc/classes/AABB.xml:7
msgid ""
"AABB consists of a position, a size, and several utility functions. It is "
"typically used for fast overlap tests."
msgstr ""
+"AABBã¯ä½ç½®ã€å¤§ãã•ã€ãŠã‚ˆã³ã„ãã¤ã‹ã®ãƒ¦ãƒ¼ãƒ†ã‚£ãƒªãƒ†ã‚£é–¢æ•°ã‹ã‚‰ãªã‚Šã¾ã™ã€‚主ã«é«˜é€Ÿ"
+"ãªã‚ªãƒ¼ãƒãƒ¼ãƒ©ãƒƒãƒ—検出ã«ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚"
#: doc/classes/AABB.xml:10 doc/classes/Plane.xml:10 doc/classes/Rect2.xml:11
-#: doc/classes/Rect2i.xml:11 doc/classes/Transform.xml:10
+#: doc/classes/Rect2i.xml:11 doc/classes/Transform.xml:11
#: doc/classes/Vector2.xml:12 doc/classes/Vector2i.xml:12
#: doc/classes/Vector3.xml:12 doc/classes/Vector3i.xml:12
msgid "https://docs.godotengine.org/en/latest/tutorials/math/index.html"
-msgstr ""
+msgstr "https://docs.godotengine.org/ja/latest/tutorials/math/index.html"
#: doc/classes/AABB.xml:21
-msgid "Optional constructor, accepts position and size."
+#, fuzzy
+msgid "Constructs an [AABB] from a position and size."
+msgstr "オプションã®ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã€‚ä½ç½®ã¨ã‚µã‚¤ã‚ºã‚’å—ã‘å–ã‚Šã¾ã™ã€‚"
+
+#: doc/classes/AABB.xml:28
+msgid ""
+"Returns an AABB with equivalent position and size, modified so that the most-"
+"negative corner is the origin and the size is positive."
msgstr ""
-#: doc/classes/AABB.xml:30
+#: doc/classes/AABB.xml:37
msgid ""
"Returns [code]true[/code] if this [AABB] completely encloses another one."
msgstr ""
+"ã“ã® [AABB] ãŒã‚‚ã†ã²ã¨ã¤ã‚’完全ã«å†…包ã™ã‚‹å ´åˆ [code]true[/code] ã‚’è¿”ã—ã¾ã™ã€‚"
-#: doc/classes/AABB.xml:39
+#: doc/classes/AABB.xml:46
msgid "Returns this [AABB] expanded to include a given point."
-msgstr ""
+msgstr "与ãˆã‚‰ã‚ŒãŸãƒã‚¤ãƒ³ãƒˆã‚’å«ã‚€ã‚ˆã†æ‹¡å¤§ã—㟠[AABB] ã‚’è¿”ã—ã¾ã™ã€‚"
-#: doc/classes/AABB.xml:46
+#: doc/classes/AABB.xml:53
msgid "Returns the volume of the [AABB]."
-msgstr ""
+msgstr "[AABB] ã®ä½“ç©ã‚’è¿”ã—ã¾ã™ã€‚"
-#: doc/classes/AABB.xml:55
+#: doc/classes/AABB.xml:62
msgid "Gets the position of the 8 endpoints of the [AABB] in space."
-msgstr ""
+msgstr "空間ã«ã‚ã‚‹ [AABB] ã® 8 ãƒã‚¤ãƒ³ãƒˆã®ä½ç½®ã‚’è¿”ã—ã¾ã™ã€‚"
-#: doc/classes/AABB.xml:62
+#: doc/classes/AABB.xml:69
msgid "Returns the normalized longest axis of the [AABB]."
-msgstr ""
+msgstr "[AABB] ã®æœ€é•·è»¸ã‚’æ­£è¦åŒ–ã—ã¦è¿”ã—ã¾ã™ã€‚"
-#: doc/classes/AABB.xml:69
+#: doc/classes/AABB.xml:76
msgid ""
"Returns the index of the longest axis of the [AABB] (according to "
"[Vector3]'s [code]AXIS_*[/code] constants)."
msgstr ""
+"[AABB] ã®æœ€é•·è»¸ã®ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹ã‚’è¿”ã—ã¾ã™ ([Vector3]ã® [code]AXIS_*[/code] 定数"
+"ã«åŸºã¥ã)。"
-#: doc/classes/AABB.xml:76
+#: doc/classes/AABB.xml:83
msgid "Returns the scalar length of the longest axis of the [AABB]."
-msgstr ""
+msgstr "[AABB] ã®æœ€é•·è»¸ã®é•·ã•ã‚’スカラー数ã§è¿”ã—ã¾ã™ã€‚"
-#: doc/classes/AABB.xml:83
+#: doc/classes/AABB.xml:90
msgid "Returns the normalized shortest axis of the [AABB]."
-msgstr ""
+msgstr "[AABB] ã®æœ€çŸ­è»¸ã‚’æ­£è¦åŒ–ã—ã¦è¿”ã—ã¾ã™ã€‚"
-#: doc/classes/AABB.xml:90
+#: doc/classes/AABB.xml:97
msgid ""
"Returns the index of the shortest axis of the [AABB] (according to "
"[Vector3]::AXIS* enum)."
msgstr ""
+"[AABB] ã®æœ€çŸ­è»¸ã®ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹ã‚’è¿”ã—ã¾ã™ ([Vector3] ã® [code]AXIS_*[/code] 定"
+"æ•°ã«åŸºã¥ã)。"
-#: doc/classes/AABB.xml:97
+#: doc/classes/AABB.xml:104
msgid "Returns the scalar length of the shortest axis of the [AABB]."
-msgstr ""
+msgstr "[AABB] ã®æœ€çŸ­è»¸ã®é•·ã•ã‚’スカラー数ã§è¿”ã—ã¾ã™ã€‚"
-#: doc/classes/AABB.xml:106
+#: doc/classes/AABB.xml:113
msgid ""
"Returns the support point in a given direction. This is useful for collision "
"detection algorithms."
msgstr ""
+"指定ã—ãŸæ–¹å‘ã®ã‚µãƒãƒ¼ãƒˆãƒã‚¤ãƒ³ãƒˆã‚’è¿”ã—ã¾ã™ã€‚ã“ã‚Œã¯ã€è¡çªæ¤œå‡ºã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ å‘ã‘ã«"
+"便利ã§ã™ã€‚"
-#: doc/classes/AABB.xml:115
+#: doc/classes/AABB.xml:122
msgid ""
"Returns a copy of the [AABB] grown a given amount of units towards all the "
"sides."
-msgstr ""
+msgstr "与ãˆã‚‰ã‚ŒãŸé‡ã ã‘å…¨é¢æ–¹å‘ã«æ‹¡å¤§ã—㟠[AABB] ã®ã‚³ãƒ”ーを返ã—ã¾ã™ã€‚"
-#: doc/classes/AABB.xml:122
+#: doc/classes/AABB.xml:129
msgid "Returns [code]true[/code] if the [AABB] is flat or empty."
-msgstr ""
+msgstr "[AABB] ãŒå¹³å¦ã‚ã‚‹ã„ã¯ç©ºã§ã‚ã‚‹å ´åˆã« [code]true[/code] ã‚’è¿”ã—ã¾ã™ã€‚"
-#: doc/classes/AABB.xml:129
+#: doc/classes/AABB.xml:136
msgid "Returns [code]true[/code] if the [AABB] is empty."
-msgstr ""
+msgstr "[AABB] ãŒç©ºã§ã‚ã‚‹å ´åˆã« [code]true[/code] ã‚’è¿”ã—ã¾ã™ã€‚"
-#: doc/classes/AABB.xml:138
+#: doc/classes/AABB.xml:145
msgid "Returns [code]true[/code] if the [AABB] contains a point."
-msgstr ""
+msgstr "[AABB] ãŒãƒã‚¤ãƒ³ãƒˆã‚’å«ã‚€å ´åˆã« [code]true[/code] ã‚’è¿”ã—ã¾ã™ã€‚"
-#: doc/classes/AABB.xml:147
+#: doc/classes/AABB.xml:154
msgid ""
"Returns the intersection between two [AABB]. An empty AABB (size 0,0,0) is "
"returned on failure."
msgstr ""
+"2ã¤ã® [AABB] ã®äº¤å·®éƒ¨ã‚’è¿”ã—ã¾ã™ã€‚失敗ã—ãŸæ™‚ã¯ã€ç©ºã® AABB (大ãã• 0,0,0)ãŒè¿”ã‚Š"
+"ã¾ã™ã€‚"
-#: doc/classes/AABB.xml:156
+#: doc/classes/AABB.xml:163
msgid "Returns [code]true[/code] if the [AABB] overlaps with another."
msgstr ""
+"ã“ã® [AABB] ãŒã‚‚ã†ä¸€æ–¹ã¨é‡ãªã£ã¦ã„ã‚‹ã¨ãã« [code]true[/code] ã‚’è¿”ã—ã¾ã™ã€‚"
-#: doc/classes/AABB.xml:165
+#: doc/classes/AABB.xml:172
msgid "Returns [code]true[/code] if the [AABB] is on both sides of a plane."
-msgstr ""
+msgstr "[AABB] ãŒç‰¹å®šã®å¹³é¢ã®ä¸¡å´ã«ã‚ã‚‹å ´åˆã€[code]true[/code] ã‚’è¿”ã—ã¾ã™ã€‚"
-#: doc/classes/AABB.xml:176
+#: doc/classes/AABB.xml:183
msgid ""
"Returns [code]true[/code] if the [AABB] intersects the line segment between "
"[code]from[/code] and [code]to[/code]."
msgstr ""
+"[code]from[/code] ã‹ã‚‰ [code]to[/code] ã¾ã§ã®ç·šåˆ†ã«ã“ã® [AABB] ãŒäº¤å·®ã—ã¦ã„ã‚Œ"
+"ã° [code]true[/code] ã‚’è¿”ã—ã¾ã™ã€‚"
-#: doc/classes/AABB.xml:185
+#: doc/classes/AABB.xml:192
msgid ""
"Returns [code]true[/code] if this [AABB] and [code]aabb[/code] are "
"approximately equal, by calling [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
+"ã“ã® [AABB] 㨠[code]aabb[/code] ãŒã»ã¼ç­‰ã—ã‘れ㰠[code]true[/code] ã‚’è¿”ã—ã¾"
+"ã™ã€‚ãã‚Œãžã‚Œã®ã‚³ãƒ³ãƒãƒ¼ãƒãƒ³ãƒˆã§ [method @GDScript.is_equal_approx] ãŒå‘¼ã°ã‚Œã¾"
+"ã™ã€‚"
-#: doc/classes/AABB.xml:194
+#: doc/classes/AABB.xml:201
msgid ""
"Returns a larger [AABB] that contains both this [AABB] and [code]with[/code]."
msgstr ""
+"ã“ã® [AABB] 㨠[code]with[/code] を両方å«ã‚€ã€ã‚ˆã‚Šå¤§ã㪠[AABB] ã‚’è¿”ã—ã¾ã™ã€‚"
-#: doc/classes/AABB.xml:200
+#: doc/classes/AABB.xml:207 doc/classes/Rect2.xml:174
+#: doc/classes/Rect2i.xml:163
+#, fuzzy
msgid ""
-"Ending corner. This is calculated as [code]position + size[/code]. Changing "
-"this property changes [member size] accordingly."
+"Ending corner. This is calculated as [code]position + size[/code]. Setting "
+"this value will change the size."
msgstr ""
+"終端。ã“れ㯠[code]position + size[/code] ã¨ã—ã¦è¨ˆç®—ã•ã‚Œã¾ã™ã€‚ã“ã®ãƒ—ロパティ"
+"を変更ã™ã‚‹ã¨ã€åŒæ™‚ã« [member size] も変ã‚ã‚Šã¾ã™ã€‚"
-#: doc/classes/AABB.xml:203
-msgid "Beginning corner."
+#: doc/classes/AABB.xml:210 doc/classes/Rect2.xml:177
+#: doc/classes/Rect2i.xml:166
+msgid "Beginning corner. Typically has values lower than [member end]."
msgstr ""
-#: doc/classes/AABB.xml:206 doc/classes/Rect2.xml:180
+#: doc/classes/AABB.xml:213 doc/classes/Rect2.xml:180
#: doc/classes/Rect2i.xml:169
-msgid "Size from position to end."
+msgid ""
+"Size from [member position] to [member end]. Typically all components are "
+"positive.\n"
+"If the size is negative, you can use [method abs] to fix it."
msgstr ""
#: doc/classes/AcceptDialog.xml:4
msgid "Base dialog for user notification."
-msgstr ""
+msgstr "ユーザー通知ã®ãŸã‚ã®åŸºæœ¬ãƒ€ã‚¤ã‚¢ãƒ­ã‚°ã€‚"
#: doc/classes/AcceptDialog.xml:7
msgid ""
"This dialog is useful for small notifications to the user about an event. It "
"can only be accepted or closed, with the same result."
msgstr ""
+"ã“ã®ãƒ€ã‚¤ã‚¢ãƒ­ã‚°ã¯ã€ã‚¤ãƒ™ãƒ³ãƒˆç™ºç”Ÿã‚’ユーザーã«å°ã•ã通知ã™ã‚‹ã®ã«ä¾¿åˆ©ã§ã™ã€‚了承ã™"
+"ã‚‹ã“ã¨ãŠã‚ˆã³é–‰ã˜ã‚‹ã“ã¨ã®ã¿ãŒã§ãã€çµæžœã¯ã„ãšã‚Œã‚‚åŒã˜ã§ã™ã€‚"
#: doc/classes/AcceptDialog.xml:22
msgid ""
@@ -4292,30 +4329,39 @@ msgid ""
"If [code]true[/code], [code]right[/code] will place the button to the right "
"of any sibling buttons."
msgstr ""
+"ラベル [code]text[/code] ãŠã‚ˆã³ã‚«ã‚¹ã‚¿ãƒ ã® [code]action[/code] ã‹ã‚‰ãªã‚‹ãƒœã‚¿ãƒ³"
+"をダイアログã«è¿½åŠ ã—ã€ãã®ç”Ÿæˆã•ã‚ŒãŸãƒœã‚¿ãƒ³ã‚’è¿”ã—ã¾ã™ã€‚押ã•ã‚ŒãŸã¨ãã¯ã€"
+"[code]action[/code] ãŒã‚·ã‚°ãƒŠãƒ« [signal custom_action] ã«æ¸¡ã•ã‚Œã¾ã™ã€‚\n"
+"ã‚‚ã— [code]right[/code] ㌠[code]true[/code] ã§ã‚ã‚Œã°ã€ä»–ã®ãƒœã‚¿ãƒ³ã™ã¹ã¦ã®å³å´"
+"ã«é…ç½®ã•ã‚Œã¾ã™ã€‚"
#: doc/classes/AcceptDialog.xml:32
msgid ""
"Adds a button with label [code]name[/code] and a cancel action to the dialog "
"and returns the created button."
msgstr ""
+"ラベル [code]name[/code] ã¨ã‚­ãƒ£ãƒ³ã‚»ãƒ«ã‚¢ã‚¯ã‚·ãƒ§ãƒ³ã‚’æŒã¤ãƒœã‚¿ãƒ³ã‚’ダイアログã«è¿½åŠ "
+"ã—ã€ä½œæˆã—ãŸãƒœã‚¿ãƒ³ã‚’è¿”ã—ã¾ã™ã€‚"
#: doc/classes/AcceptDialog.xml:39
msgid "Returns the label used for built-in text."
-msgstr ""
+msgstr "組ã¿è¾¼ã¿ãƒ†ã‚­ã‚¹ãƒˆã«ä½¿ç”¨ã•ã‚Œã¦ã„るラベルを返ã—ã¾ã™ã€‚"
#: doc/classes/AcceptDialog.xml:46
msgid "Returns the OK [Button] instance."
-msgstr ""
+msgstr "OK [Button] インスタンスを返ã—ã¾ã™ã€‚"
#: doc/classes/AcceptDialog.xml:55
msgid ""
"Registers a [LineEdit] in the dialog. When the enter key is pressed, the "
"dialog will be accepted."
msgstr ""
+"ダイアログ㫠[LineEdit] を登録ã—ã¾ã™ã€‚Enterキーを押ã™ã¨ãƒ€ã‚¤ã‚¢ãƒ­ã‚°ã¯æ‰¿è«¾ã•ã‚Œã¾"
+"ã™ã€‚"
#: doc/classes/AcceptDialog.xml:61
msgid "Sets autowrapping for the text in the dialog."
-msgstr ""
+msgstr "ダイアログ内ã®ãƒ†ã‚­ã‚¹ãƒˆã®è‡ªå‹•æŠ˜ã‚Šè¿”ã—を設定ã—ã¾ã™ã€‚"
#: doc/classes/AcceptDialog.xml:64
msgid ""
@@ -4330,22 +4376,34 @@ msgid ""
"dialog if the input is valid. As such, this property can't be used in "
"[FileDialog] to disable hiding the dialog when pressing OK."
msgstr ""
+"[code]true[/code] ã®å ´åˆã€OKボタンを押ã™ã¨ãƒ€ã‚¤ã‚¢ãƒ­ã‚°ãŒéžè¡¨ç¤ºã«ãªã‚Šã¾ã™ã€‚例ãˆ"
+"ã°ã€[signal confirmed] シグナルをå—ä¿¡ã—ãŸæ™‚ã«å…¥åŠ›ã‚’確èªã—ãŸã„å ´åˆã‚„ã€ç‹¬è‡ªã®ãƒ­"
+"ジックã§ãƒ€ã‚¤ã‚¢ãƒ­ã‚°ã‚’éžè¡¨ç¤ºã«ã™ã‚‹å‡¦ç†ã‚’ã—ãŸã„å ´åˆã¯ã€[code]false[/code]ã«ã—ã¦"
+"ãã ã•ã„。\n"
+"[b]注: [/b] ã“ã®ã‚¯ãƒ©ã‚¹ã‹ã‚‰æ´¾ç”Ÿã—ãŸã„ãã¤ã‹ã®ãƒŽãƒ¼ãƒ‰ã§ã¯ã€ç•°ãªã‚‹ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ã‚’"
+"æŒã¤ã“ã¨ãŒã§ãã€ãれらã®ç‹¬è‡ªã®çµ„ã¿è¾¼ã¿ãƒ­ã‚¸ãƒƒã‚¯ãŒã“ã®è¨­å®šã‚’オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã™ã‚‹"
+"å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚例ãˆã°ã€[FileDialog] ã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ã¯ [code]false[/code] ã§"
+"ã‚ã‚Šã€OKを押ã—ãŸã¨ãã«å‘¼ã³å‡ºã•ã‚Œã‚‹ç‹¬è‡ªã®å…¥åŠ›æ¤œè¨¼ã‚³ãƒ¼ãƒ‰ã‚’æŒã£ã¦ã„ã¾ã™ã€‚ãã®ãŸ"
+"ã‚ã€ã“ã®ãƒ—ロパティ㯠[FileDialog] ã«ãŠã„㦠OK を押ã—ãŸã¨ãã«ãƒ€ã‚¤ã‚¢ãƒ­ã‚°ãŒéžè¡¨"
+"示ã«ãªã‚‹ã®ã‚’無効ã«ã™ã‚‹ãŸã‚ã«ã¯ä½¿ç”¨ã§ãã¾ã›ã‚“。"
#: doc/classes/AcceptDialog.xml:68
msgid "The text displayed by the dialog."
-msgstr ""
+msgstr "ダイアログã§è¡¨ç¤ºã•ã‚Œã‚‹ãƒ†ã‚­ã‚¹ãƒˆã€‚"
-#: doc/classes/AcceptDialog.xml:82
+#: doc/classes/AcceptDialog.xml:83
msgid "Emitted when the dialog is accepted, i.e. the OK button is pressed."
-msgstr ""
+msgstr "ダイアログを承諾ã—ãŸã¨ãã€ã¤ã¾ã‚ŠOKボタンãŒæŠ¼ã•ã‚ŒãŸã¨ãã«ç™ºä¿¡ã•ã‚Œã¾ã™ã€‚"
-#: doc/classes/AcceptDialog.xml:89
+#: doc/classes/AcceptDialog.xml:90
msgid "Emitted when a custom button is pressed. See [method add_button]."
msgstr ""
+"カスタムボタンãŒæŠ¼ã•ã‚ŒãŸã¨ãã«è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚[method add_button] ã‚’å‚ç…§ã—ã¦ã"
+"ã ã•ã„。"
#: doc/classes/AESContext.xml:4
msgid "Interface to low level AES encryption features."
-msgstr ""
+msgstr "低レベルAESæš—å·åŒ–機能ã¸ã®ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹ã€‚"
#: doc/classes/AESContext.xml:7
msgid ""
@@ -4384,18 +4442,60 @@ msgid ""
" assert(decrypted == data.to_utf8())\n"
"[/codeblock]"
msgstr ""
+"ã“ã®ã‚¯ãƒ©ã‚¹ã¯ã€ç”Ÿãƒ‡ãƒ¼ã‚¿ã® AES æš—å·åŒ–/復å·åŒ–ã¸ã®ã‚¢ã‚¯ã‚»ã‚¹ã‚’æä¾›ã—ã¾ã™ã€‚AES-ECB "
+"㨠AES-CBC ã®ä¸¡æ–¹ã«å¯¾å¿œã—ã¦ã„ã¾ã™ã€‚\n"
+"[codeblock]\n"
+"extends Node\n"
+"\n"
+"var aes = AESContext.new()\n"
+"\n"
+"func _ready():\n"
+" var key = \"My secret key!!!\" # キーã¯16ãƒã‚¤ãƒˆã‹32ãƒã‚¤ãƒˆã§ãªã‘ã‚Œã°ãªã‚Šã¾"
+"ã›ã‚“。\n"
+" var data = \"My secret text!!\" # データサイズã¯16ãƒã‚¤ãƒˆã®å€æ•°ã§ãªã‘ã‚Œã°"
+"ãªã‚Šã¾ã›ã‚“。必è¦ãªã‚‰æ–‡å­—を付ã‘足ã—ã¾ã™ã€‚\n"
+" # ECB æš—å·åŒ–\n"
+" aes.start(AESContext.MODE_ECB_ENCRYPT, key.to_utf8())\n"
+" var encrypted = aes.update(data.to_utf8())\n"
+" aes.finish()\n"
+" # ECB 復å·åŒ–\n"
+" aes.start(AESContext.MODE_ECB_DECRYPT, key.to_utf8())\n"
+" var decrypted = aes.update(encrypted)\n"
+" aes.finish()\n"
+" # ECB ãƒã‚§ãƒƒã‚¯\n"
+" assert(decrypted == data.to_utf8())\n"
+"\n"
+" var iv = \"My secret iv!!!\" # IVã¯æ­£ç¢ºã«16ãƒã‚¤ãƒˆã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚\n"
+" # CBC æš—å·åŒ–\n"
+" aes.start(AESContext.MODE_CBC_ENCRYPT, key.to_utf8(), iv.to_utf8())\n"
+" encrypted = aes.update(data.to_utf8())\n"
+" aes.finish()\n"
+" # CBC 復å·åŒ–\n"
+" aes.start(AESContext.MODE_CBC_DECRYPT, key.to_utf8(), iv.to_utf8())\n"
+" decrypted = aes.update(encrypted)\n"
+" aes.finish()\n"
+" # CBC ãƒã‚§ãƒƒã‚¯\n"
+" assert(decrypted == data.to_utf8())\n"
+"[/codeblock]"
#: doc/classes/AESContext.xml:47
msgid "Close this AES context so it can be started again. See [method start]."
msgstr ""
+"ã“ã® AES コンテキストを閉ã˜ã¦ã€å†åº¦é–‹å§‹ã§ãるよã†ã«ã—ã¾ã™ã€‚[method start] ã‚’"
+"å‚ç…§ã—ã¦ãã ã•ã„。"
#: doc/classes/AESContext.xml:54
+#, fuzzy
msgid ""
"Get the current IV state for this context (IV gets updated when calling "
-"[method update]). You normally don't need this funciton.\n"
+"[method update]). You normally don't need this function.\n"
"Note: This function only makes sense when the context is started with "
"[constant MODE_CBC_ENCRYPT] or [constant MODE_CBC_DECRYPT]."
msgstr ""
+"ã“ã®ã‚³ãƒ³ãƒ†ã‚­ã‚¹ãƒˆã®ç¾åœ¨ã® IV ステートをå–å¾—ã—ã¾ã™(IV㯠[method update] を呼ã³"
+"出ã™ã¨æ›´æ–°ã•ã‚Œã¾ã™)。通常ã¯ã“ã®é–¢æ•°ã¯å¿…è¦ã‚ã‚Šã¾ã›ã‚“。\n"
+"注: ã“ã®é–¢æ•°ã¯ã€ã‚³ãƒ³ãƒ†ã‚­ã‚¹ãƒˆãŒ [constant MODE_CBC_ENCRYPT] ã¾ãŸã¯ [constant "
+"MODE_CBC_DECRYPT] ã§é–‹å§‹ã•ã‚ŒãŸå ´åˆã«ã®ã¿æ„味をæŒã¡ã¾ã™ã€‚"
#: doc/classes/AESContext.xml:68
msgid ""
@@ -4404,6 +4504,11 @@ msgid ""
"(initialization vector) of exactly 16 bytes, is only needed when [code]mode[/"
"code] is either [constant MODE_CBC_ENCRYPT] or [constant MODE_CBC_DECRYPT]."
msgstr ""
+"与ãˆã‚‰ã‚ŒãŸ [code]mode[/code] 㧠AES コンテキストを起動ã—ã¾ã™ã€‚16ãƒã‚¤ãƒˆã¾ãŸã¯"
+"32ãƒã‚¤ãƒˆã® [code]key[/code] ãŒå¿…è¦ã§ã™ã€‚[code]mode[/code] ㌠[constant "
+"MODE_CBC_ENCRYPT] ã¾ãŸã¯ [constant MODE_CBC_DECRYPT] ã®å ´åˆã«ã®ã¿ã€æ­£ç¢ºã«16ãƒ"
+"イト㮠[code]iv[/code] (initialization vector åˆæœŸåŒ–ベクトル) ãŒã•ã‚‰ã«å¿…è¦ã«"
+"ãªã‚Šã¾ã™ã€‚"
#: doc/classes/AESContext.xml:77
msgid ""
@@ -4413,40 +4518,47 @@ msgid ""
"Note: The size of [code]src[/code] must be a multiple of 16. Apply some "
"padding if needed."
msgstr ""
+"ã“ã® AES コンテキストã«å¯¾ã—ã¦å¿…è¦ãªæ“作を実行ã—ã¾ã™ã€‚与ãˆã‚‰ã‚ŒãŸ [code]src[/"
+"code] ã‚’æš—å·åŒ– (ã¾ãŸã¯å¾©å·åŒ–) ã—ãŸçµæžœã‚’å«ã‚€ [PackedByteArray] ã‚’è¿”ã—ã¾ã™ã€‚å‹•"
+"作モードã«ã¤ã„ã¦ã¯ [method start] ã‚’å‚ç…§ã—ã¦ãã ã•ã„。\n"
+"注: [code]src[/code] ã®ã‚µã‚¤ã‚ºã¯16ã®å€æ•°ã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。必è¦ã§ã‚ã‚Œã°ã€ã„"
+"ãらã‹ãƒ‘ディングを加ãˆã¦ãã ã•ã„。"
#: doc/classes/AESContext.xml:84
msgid "AES electronic codebook encryption mode."
-msgstr ""
+msgstr "AES Electronic Codebook æš—å·åŒ–モード。"
#: doc/classes/AESContext.xml:87
msgid "AES electronic codebook decryption mode."
-msgstr ""
+msgstr "AES Electronic Codebook 復å·åŒ–モード。"
#: doc/classes/AESContext.xml:90
msgid "AES cipher blocker chaining encryption mode."
-msgstr ""
+msgstr "AES Cipher Block Chaining æš—å·åŒ–モード。"
#: doc/classes/AESContext.xml:93
msgid "AES cipher blocker chaining decryption mode."
-msgstr ""
+msgstr "AES Cipher Block Chaining 復å·åŒ–モード。"
#: doc/classes/AESContext.xml:96
msgid "Maximum value for the mode enum."
-msgstr ""
+msgstr "モード用enumã®æœ€å¤§å€¤ã€‚"
#: doc/classes/AnimatedSprite2D.xml:4
msgid "Sprite node that can use multiple textures for animation."
-msgstr ""
+msgstr "アニメーション用ã«è¤‡æ•°ã®ãƒ†ã‚¯ã‚¹ãƒãƒ£ã‚’使用ã§ãã‚‹Spriteノード。"
#: doc/classes/AnimatedSprite2D.xml:7 doc/classes/AnimatedSprite3D.xml:7
msgid ""
"Animations are created using a [SpriteFrames] resource, which can be "
"configured in the editor via the SpriteFrames panel."
msgstr ""
+"アニメーション㯠[SpriteFrames] リソースを使ã£ã¦ä½œæˆã—ã€ã‚¨ãƒ‡ã‚£ã‚¿ä¸Šã®"
+"SpriteFramesパãƒãƒ«ã«ã¦è¨­å®šã§ãã¾ã™ã€‚"
#: doc/classes/AnimatedSprite2D.xml:16 doc/classes/AnimatedSprite3D.xml:16
msgid "Returns [code]true[/code] if an animation is currently being played."
-msgstr ""
+msgstr "アニメーションãŒå†ç”Ÿä¸­ã§ã‚れ㰠[code]true[/code] ã‚’è¿”ã—ã¾ã™ã€‚"
#: doc/classes/AnimatedSprite2D.xml:27
msgid ""
@@ -4454,59 +4566,67 @@ msgid ""
"provided, the current animation is played. If [code]backwards[/code] is "
"[code]true[/code], the animation will be played in reverse."
msgstr ""
+"アニメーションå [code]anim[/code] ã®ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã‚’å†ç”Ÿã—ã¾ã™ã€‚ã‚‚ã— "
+"[code]anim[/code] ãŒä¸Žãˆã‚‰ã‚Œãªã‹ã£ãŸå ´åˆã¯ã€ç¾åœ¨ã®ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ãŒå†ç”Ÿã•ã‚Œã¾"
+"ã™ã€‚ã‚‚ã— [code]backwards[/code] ㌠[code]true[/code] ã§ã‚ã‚Œã°ã€ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³"
+"ã¯é€†å†ç”Ÿã•ã‚Œã¾ã™ã€‚"
#: doc/classes/AnimatedSprite2D.xml:34 doc/classes/AnimatedSprite3D.xml:32
msgid "Stops the current animation (does not reset the frame counter)."
-msgstr ""
+msgstr "ç¾åœ¨ã®ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã‚’åœæ­¢ã—ã¾ã™ (frameカウンターã¯ãƒªã‚»ãƒƒãƒˆã•ã‚Œãªã„)。"
#: doc/classes/AnimatedSprite2D.xml:40 doc/classes/AnimatedSprite3D.xml:38
msgid ""
"The current animation from the [code]frames[/code] resource. If this value "
"changes, the [code]frame[/code] counter is reset."
msgstr ""
+"[code]frames[/code] リソースã‹ã‚‰ã®ç¾åœ¨ã®ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã€‚ã“ã®å€¤ãŒå¤‰ã‚ã‚‹ã¨ã€"
+"[code]frame[/code] カウンタã¯ãƒªã‚»ãƒƒãƒˆã•ã‚Œã¾ã™ã€‚"
#: doc/classes/AnimatedSprite2D.xml:43 doc/classes/SpriteBase3D.xml:55
msgid "If [code]true[/code], texture will be centered."
-msgstr ""
+msgstr "[code]true[/code] ã§ã‚ã‚Œã°ã€ãƒ†ã‚¯ã‚¹ãƒãƒ£ã¯ä¸­å¤®ã«ãªã‚Šã¾ã™ã€‚"
#: doc/classes/AnimatedSprite2D.xml:46 doc/classes/Sprite2D.xml:41
-#: doc/classes/SpriteBase3D.xml:61 doc/classes/TextureRect.xml:18
+#: doc/classes/SpriteBase3D.xml:61 doc/classes/TextureButton.xml:19
+#: doc/classes/TextureRect.xml:18
msgid "If [code]true[/code], texture is flipped horizontally."
-msgstr ""
+msgstr "[code]true[/code] ã§ã‚ã‚Œã°ã€ãƒ†ã‚¯ã‚¹ãƒãƒ£ã¯æ°´å¹³ã«å転ã•ã‚Œã¾ã™ã€‚"
#: doc/classes/AnimatedSprite2D.xml:49 doc/classes/Sprite2D.xml:44
-#: doc/classes/SpriteBase3D.xml:64 doc/classes/TextureRect.xml:21
+#: doc/classes/SpriteBase3D.xml:64 doc/classes/TextureButton.xml:22
+#: doc/classes/TextureRect.xml:21
msgid "If [code]true[/code], texture is flipped vertically."
-msgstr ""
+msgstr "[code]true[/code] ã§ã‚ã‚Œã°ã€ãƒ†ã‚¯ã‚¹ãƒãƒ£ã¯åž‚ç›´ã«å転ã•ã‚Œã¾ã™ã€‚"
#: doc/classes/AnimatedSprite2D.xml:52 doc/classes/AnimatedSprite3D.xml:41
msgid "The displayed animation frame's index."
-msgstr ""
+msgstr "表示ã•ã‚Œã¦ã„るアニメーションフレームã®ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹ã€‚"
#: doc/classes/AnimatedSprite2D.xml:55 doc/classes/AnimatedSprite3D.xml:44
msgid "The [SpriteFrames] resource containing the animation(s)."
-msgstr ""
+msgstr "アニメーションを格ç´ã—ã¦ã„ã‚‹ [SpriteFrames] リソース。"
#: doc/classes/AnimatedSprite2D.xml:58 doc/classes/Sprite2D.xml:60
#: doc/classes/SpriteBase3D.xml:70
msgid "The texture's drawing offset."
-msgstr ""
+msgstr "テクスãƒãƒ£ã®æ写オフセット。"
#: doc/classes/AnimatedSprite2D.xml:61 doc/classes/AnimatedSprite3D.xml:47
msgid "If [code]true[/code], the [member animation] is currently playing."
-msgstr ""
+msgstr "[code]true[/code] ã§ã‚ã‚Œã°ã€[member animation] ãŒç¾åœ¨å†ç”Ÿä¸­ã€‚"
#: doc/classes/AnimatedSprite2D.xml:64
msgid "Strength of the specular light effect of this [AnimatedSprite2D]."
-msgstr ""
+msgstr "ã“ã® [AnimatedSprite2D] ã®ã‚¹ãƒšã‚­ãƒ¥ãƒ©å…‰ã‚¨ãƒ•ã‚§ã‚¯ãƒˆã®å¼·ã•ã€‚"
#: doc/classes/AnimatedSprite2D.xml:67 doc/classes/Sprite2D.xml:75
msgid "The color of the specular light effect."
-msgstr ""
+msgstr "スペキュラ光エフェクトã®è‰²ã€‚"
#: doc/classes/AnimatedSprite2D.xml:70
msgid "The animation speed is multiplied by this value."
-msgstr ""
+msgstr "アニメーションã®é€Ÿåº¦ã¯ã“ã®å€¤ã§ä¹—ç®—ã•ã‚Œã¾ã™ã€‚"
#: doc/classes/AnimatedSprite2D.xml:76
msgid ""
@@ -4514,25 +4634,32 @@ msgid ""
"the animation is looping, this signal is emitted every time the last frame "
"is drawn."
msgstr ""
+"アニメーションãŒçµ‚了ã—ãŸã¨ã (最後ã®ãƒ•ãƒ¬ãƒ¼ãƒ ã‚’å†ç”Ÿã—ãŸã¨ã) ã«ç™ºã›ã‚‰ã‚Œã¾ã™ã€‚"
+"アニメーションãŒãƒ«ãƒ¼ãƒ—ã—ã¦ã„ã‚‹å ´åˆã¯ã€æœ€å¾Œã®ãƒ•ãƒ¬ãƒ¼ãƒ ãŒæç”»ã•ã‚Œã‚‹ãŸã³ã«ã“ã®ã‚·"
+"グナルãŒç™ºä¿¡ã•ã‚Œã¾ã™ã€‚"
#: doc/classes/AnimatedSprite2D.xml:81 doc/classes/AnimatedSprite3D.xml:53
msgid "Emitted when [member frame] changed."
-msgstr ""
+msgstr "[member frame] ãŒå¤‰æ›´ã•ã‚ŒãŸã¨ãã«ç™ºä¿¡ã•ã‚Œã¾ã™ã€‚"
#: doc/classes/AnimatedSprite3D.xml:4
msgid ""
"2D sprite node in 3D world, that can use multiple 2D textures for animation."
msgstr ""
+"3Dワールド内ã§ã®2Dスプライトノード。複数ã®2Dテクスãƒãƒ£ã‚’使ã£ã¦ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³"
+"ã‚’è¡Œã†ã“ã¨ãŒã§ãã¾ã™ã€‚"
#: doc/classes/AnimatedSprite3D.xml:25
msgid ""
"Plays the animation named [code]anim[/code]. If no [code]anim[/code] is "
"provided, the current animation is played."
msgstr ""
+"[code]anim[/code] ã¨ã„ã†åå‰ã®ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã‚’å†ç”Ÿã—ã¾ã™ã€‚[code]anim[/code] "
+"ãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã¯ã€ç¾åœ¨ã®ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã‚’å†ç”Ÿã—ã¾ã™ã€‚"
#: doc/classes/AnimatedTexture.xml:4
msgid "Proxy texture for simple frame-based animations."
-msgstr ""
+msgstr "シンプルãªãƒ•ãƒ¬ãƒ¼ãƒ ãƒ™ãƒ¼ã‚¹ アニメーションã®ãŸã‚ã®ãƒ—ロキシ テクスãƒãƒ£ã€‚"
#: doc/classes/AnimatedTexture.xml:7
msgid ""
@@ -4550,14 +4677,26 @@ msgid ""
"Also, it doesn't support [AtlasTexture]. Each frame needs to be separate "
"image."
msgstr ""
+"[AnimatedTexture] ã¯ãƒ•ãƒ¬ãƒ¼ãƒ ãƒ™ãƒ¼ã‚¹ã®ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã®ãŸã‚ã®ãƒªã‚½ãƒ¼ã‚¹ãƒ•ã‚©ãƒ¼ãƒžãƒƒ"
+"トã§ã€è¤‡æ•°ã®ãƒ†ã‚¯ã‚¹ãƒãƒ£ã‚’フレームã”ã¨ã«ã‚らã‹ã˜ã‚定義ã•ã‚ŒãŸé…延時間ã§è‡ªå‹•çš„ã«"
+"連çµã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚[AnimationPlayer] ã‚„ [AnimatedSprite2D] ã¨ã¯ç•°ãªã‚Šã€"
+"ã“れ㯠[Node] ã§ã¯ã‚ã‚Šã¾ã›ã‚“ãŒã€ã—ã‹ã— [Texture2D] リソースãŒä½¿ç”¨ã§ãる場所ã§"
+"ã‚ã‚Œã°ã©ã“ã§ã‚‚使用ã§ãã‚‹ã¨ã„ã†åˆ©ç‚¹ãŒã‚ã‚Šã¾ã™ã€‚\n"
+"アニメーションã®å†ç”Ÿã¯ã€[member fps] プロパティã¨å„フレームã®ã‚ªãƒ—ションã®é…"
+"延 ([method set_frame_delay] ã‚’å‚ç…§) ã«ã‚ˆã£ã¦åˆ¶å¾¡ã•ã‚Œã¾ã™ã€‚アニメーションã¯"
+"ループã—ã¾ã™ã€‚ã¤ã¾ã‚Šã€æœ€å¾Œã®ãƒ•ãƒ¬ãƒ¼ãƒ ã‚’å†ç”Ÿã—ãŸå¾Œã€è‡ªå‹•çš„ã«0フレーム目ã‹ã‚‰å†é–‹"
+"ã—ã¾ã™ã€‚\n"
+"[AnimatedTexture] ã¯ä»Šã®ã¨ã“ã‚ã€ã™ã¹ã¦ã®ãƒ•ãƒ¬ãƒ¼ãƒ ãƒ†ã‚¯ã‚¹ãƒãƒ£ãŒåŒã˜ã‚µã‚¤ã‚ºã§ã‚ã‚‹"
+"ã“ã¨ãŒè¦æ±‚ã•ã‚Œã¾ã™ã€‚ã¾ãŸã€[AtlasTexture] ã«ã¯å¯¾å¿œã—ã¦ã„ã¾ã›ã‚“。å„フレームã¯åˆ¥"
+"ã®ç”»åƒã«ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚"
#: doc/classes/AnimatedTexture.xml:20
msgid "Returns the given frame's delay value."
-msgstr ""
+msgstr "指定ã—ãŸãƒ•ãƒ¬ãƒ¼ãƒ ã®é…延値を返ã—ã¾ã™ã€‚"
#: doc/classes/AnimatedTexture.xml:29
msgid "Returns the given frame's [Texture2D]."
-msgstr ""
+msgstr "与ãˆã‚‰ã‚ŒãŸãƒ•ãƒ¬ãƒ¼ãƒ ã® [Texture2D] ã‚’è¿”ã—ã¾ã™ã€‚"
#: doc/classes/AnimatedTexture.xml:40
msgid ""
@@ -4575,6 +4714,18 @@ msgid ""
"Total duration: 2.7 s\n"
"[/codeblock]"
msgstr ""
+"[member fps] ã§å®šç¾©ã•ã‚ŒãŸæ™‚é–“é–“éš”ã«è¿½åŠ ã•ã‚Œã‚‹ã€ã“ã®ãƒ•ãƒ¬ãƒ¼ãƒ ã‹ã‚‰æ¬¡ã®ãƒ•ãƒ¬ãƒ¼ãƒ ã¾"
+"ã§ã®è¿½åŠ ã®é…延時間(秒å˜ä½)を設定ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ãƒ•ãƒ¬ãƒ¼ãƒ ã«é…延ã¯å®šç¾©"
+"ã•ã‚Œã¦ã„ã¾ã›ã‚“。é…延値ãŒå®šç¾©ã•ã‚Œã¦ã„ã‚‹å ´åˆã€ã“ã®ãƒ•ãƒ¬ãƒ¼ãƒ ã¨æ¬¡ã®ãƒ•ãƒ¬ãƒ¼ãƒ é–“ã®æœ€"
+"終的ãªæ™‚間間隔㯠[code]1.0 / fps + é…延値[/code] ã«ãªã‚Šã¾ã™ã€‚\n"
+"例ãˆã°ã€åˆè¨ˆ3フレームã€2 FPSã€2フレーム目ã®ãƒ•ãƒ¬ãƒ¼ãƒ é…延ãŒ1.2ã®ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³"
+"ã®å ´åˆã€çµæžœã¨ã—ã¦ä»¥ä¸‹ã®ã‚ˆã†ã«å†ç”Ÿã•ã‚Œã¾ã™ã€‚\n"
+"[codeblock]\n"
+"Frame 0: 0.5 秒 (1 / fps)\n"
+"Frame 1: 1.7 秒 (1 / fps + 1.2)\n"
+"Frame 2: 0.5 秒 (1 / fps)\n"
+"åˆè¨ˆæ™‚é–“: 2.7 秒\n"
+"[/codeblock]"
#: doc/classes/AnimatedTexture.xml:58
msgid ""
@@ -4585,10 +4736,16 @@ msgid ""
"in mind that only frames from 0 to [member frames] - 1 will be part of the "
"animation."
msgstr ""
+"与ãˆã‚‰ã‚ŒãŸãƒ•ãƒ¬ãƒ¼ãƒ ã« [Texture2D] を割り当ã¦ã¾ã™ã€‚フレームIDã¯0ã‹ã‚‰å§‹ã¾ã‚‹ã®"
+"ã§ã€æœ€åˆã®ãƒ•ãƒ¬ãƒ¼ãƒ ã¯ID 0ã€ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã®æœ€å¾Œã®ãƒ•ãƒ¬ãƒ¼ãƒ ã¯ID [member frames] "
+"- 1ã¨ãªã‚Šã¾ã™ã€‚\n"
+"テクスãƒãƒ£ã®æ•°ã¯ [constant MAX_FRAMES] ã¾ã§è‡ªç”±ã«å®šç¾©ã§ãã¾ã™ãŒã€0ã‹ã‚‰ "
+"[member frames] - 1ã¾ã§ã®ãƒ•ãƒ¬ãƒ¼ãƒ ã®ã¿ãŒã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³éƒ¨ã¨ãªã‚‹ã“ã¨ã«æ³¨æ„ã—ã¦ã"
+"ã ã•ã„。"
#: doc/classes/AnimatedTexture.xml:65
msgid "Sets the currently visible frame of the texture."
-msgstr ""
+msgstr "テクスãƒãƒ£ã®ç¾åœ¨è¡¨ç¤ºã•ã‚Œã¦ã„るフレームを設定ã—ã¾ã™ã€‚"
#: doc/classes/AnimatedTexture.xml:68
msgid ""
@@ -4600,6 +4757,14 @@ msgid ""
"For example, an animation with 8 frames, no frame delay and a [code]fps[/"
"code] value of 2 will run for 4 seconds, with each frame lasting 0.5 seconds."
msgstr ""
+"アニメーションã®é€Ÿåº¦ã‚’ã€1秒当ãŸã‚Šã®ãƒ•ãƒ¬ãƒ¼ãƒ æ•°ã§æŒ‡å®šã—ã¾ã™ã€‚ã“ã®å€¤ã¯ã€ã‚¢ãƒ‹ãƒ¡ãƒ¼"
+"ションã®2ã¤ã®ãƒ•ãƒ¬ãƒ¼ãƒ é–“ã«ãŠã‘るデフォルトã®æ™‚間間隔を定義ã—ã€ãã‚Œã«ã‚ˆã‚Š "
+"[member frames] プロパティã«åŸºã¥ãアニメーションループ全体ã®å†ç”Ÿæ™‚間を定義ã—"
+"ã¾ã™ã€‚値ãŒ0ã®å ´åˆã€1秒ã‚ãŸã‚Šã®ãƒ•ãƒ¬ãƒ¼ãƒ æ•°ã¯äº‹å‰å®šç¾©ã•ã‚Œãšã€ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã¯å„"
+"フレームã®ãƒ•ãƒ¬ãƒ¼ãƒ é…延ã«å¿œã˜ã¦å†ç”Ÿã•ã‚Œã¾ã™ ([method set_frame_delay] ã‚’å‚"
+"照) 。\n"
+"例ãˆã°ã€8フレームã€ãƒ•ãƒ¬ãƒ¼ãƒ é…延ãªã—ã€[code]fps[/code] ã®å€¤ãŒ2ã®ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³"
+"ã¯ã€å„フレームã®æŒç¶šæ™‚é–“ãŒ0.5秒ã§ã€4秒間å†ç”Ÿã•ã‚Œã¾ã™ã€‚"
#: doc/classes/AnimatedTexture.xml:72
msgid ""
@@ -4608,6 +4773,10 @@ msgid ""
"for the animation to take new frames into account. The maximum number of "
"frames is [constant MAX_FRAMES]."
msgstr ""
+"アニメーションã§ä½¿ç”¨ã™ã‚‹ãƒ•ãƒ¬ãƒ¼ãƒ æ•°ã€‚フレーム自体㯠[method "
+"set_frame_texture] ã«ã‚ˆã‚Šåˆ¥ã«ä½œæˆã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ãŒã€æ–°ã—ã„フレームを有効ã«"
+"ã™ã‚‹ãŸã‚ã«ã¯ã“ã®å€¤ã‚’設定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚最大フレーム数㯠[constant "
+"MAX_FRAMES] ã§ã™ã€‚"
#: doc/classes/AnimatedTexture.xml:75
msgid ""
@@ -4615,6 +4784,9 @@ msgid ""
"back to the first frame after reaching the end. Note that reaching the end "
"will not set [member pause] to [code]true[/code]."
msgstr ""
+"[code]true[/code]ã®å ´åˆã€ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã¯ä¸€åº¦ã ã‘å†ç”Ÿã•ã‚Œã€çµ‚了ã—ã¦ã‚‚最åˆã®ãƒ•"
+"レームã«ã¯ãƒ«ãƒ¼ãƒ—ãƒãƒƒã‚¯ã—ã¾ã›ã‚“。終了ã—ã¦ã‚‚ [member pause] 㯠[code]true[/"
+"code] ã«è¨­å®šã•ã‚Œãªã„ã®ã§æ³¨æ„ã—ã¦ãã ã•ã„。"
#: doc/classes/AnimatedTexture.xml:78
msgid ""
@@ -4622,18 +4794,26 @@ msgid ""
"at [member current_frame]). The animation will continue from where it was "
"paused when changing this property to [code]false[/code]."
msgstr ""
+"[code]true[/code] ã®å ´åˆã€ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã¯ç¾åœ¨ã®ä½ç½® (ã¤ã¾ã‚Š [member "
+"current_frame] ã®ä½ç½®) ã§ä¸€æ™‚åœæ­¢ã—ã¾ã™ã€‚ã“ã®ãƒ—ロパティを [code]false[/code] "
+"ã«å¤‰æ›´ã™ã‚‹ã¨ã€ä¸€æ™‚åœæ­¢ã—ãŸå ´æ‰€ã‹ã‚‰ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã‚’続行ã—ã¾ã™ã€‚"
#: doc/classes/AnimatedTexture.xml:83
msgid ""
"The maximum number of frames supported by [AnimatedTexture]. If you need "
"more frames in your animation, use [AnimationPlayer] or [AnimatedSprite2D]."
msgstr ""
+"[AnimatedTexture] ãŒã‚µãƒãƒ¼ãƒˆã™ã‚‹æœ€å¤§ãƒ•ãƒ¬ãƒ¼ãƒ æ•°ã§ã™ã€‚ãれ以上ã®ãƒ•ãƒ¬ãƒ¼ãƒ æ•°ãŒå¿…"
+"è¦ãªå ´åˆã¯ã€ [AnimatedPlayer] ã‚„ [AnimatedSprite2D] を使用ã—ã¦ãã ã•ã„。"
#: doc/classes/Animation.xml:4
msgid "Contains data used to animate everything in the engine."
msgstr ""
+"エンジン内ã®ã™ã¹ã¦ã®ã‚‚ã®ã‚’アニメーション化ã™ã‚‹ãŸã‚ã«ä½¿ç”¨ã•ã‚Œã‚‹ãƒ‡ãƒ¼ã‚¿ãŒå«ã¾ã‚Œ"
+"ã¦ã„ã¾ã™ã€‚"
#: doc/classes/Animation.xml:7
+#, fuzzy
msgid ""
"An Animation resource contains data used to animate everything in the "
"engine. Animations are divided into tracks, and each track must be linked to "
@@ -4642,10 +4822,10 @@ msgid ""
"[codeblock]\n"
"# This creates an animation that makes the node \"Enemy\" move to the right "
"by\n"
-"# 100 pixels in 1 second.\n"
+"# 100 pixels in 0.5 seconds.\n"
"var animation = Animation.new()\n"
"var track_index = animation.add_track(Animation.TYPE_VALUE)\n"
-"animation.track_set_path(track_index, \"Enemy:position.x\")\n"
+"animation.track_set_path(track_index, \"Enemy:position:x\")\n"
"animation.track_insert_key(track_index, 0.0, 0)\n"
"animation.track_insert_key(track_index, 0.5, 100)\n"
"[/codeblock]\n"
@@ -4654,20 +4834,41 @@ msgid ""
"each with its own set of dedicated methods. Check [enum TrackType] to see "
"available types."
msgstr ""
+"Animation リソースã«ã¯ã€ã‚¨ãƒ³ã‚¸ãƒ³å†…ã®ã™ã¹ã¦ã®ã‚‚ã®ã‚’アニメーション化ã™ã‚‹ãŸã‚ã«"
+"使用ã•ã‚Œã‚‹ãƒ‡ãƒ¼ã‚¿ãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚アニメーションã¯ãƒˆãƒ©ãƒƒã‚¯ã«åˆ†å‰²ã•ã‚Œã¦ãŠã‚Šã€"
+"å„トラックã¯ãƒŽãƒ¼ãƒ‰ã«ãƒªãƒ³ã‚¯ã•ã‚Œã¦ã„ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。ãã®ãƒŽãƒ¼ãƒ‰ã®çŠ¶æ…‹ã¯ã€ãƒˆ"
+"ラックã«æ™‚間キー (イベント) を追加ã™ã‚‹ã“ã¨ã§ã€æ™‚é–“ã®çµŒéŽã¨ã¨ã‚‚ã«å¤‰æ›´ã™ã‚‹ã“ã¨"
+"ãŒã§ãã¾ã™ã€‚\n"
+"[codeblock]\n"
+"# ã“ã‚Œã¯ãƒŽãƒ¼ãƒ‰ã€ŒEnemyã€ã‚’å³ã«ç§»å‹•ã•ã›ã‚‹ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã‚’作æˆã—ã¾ã™\n"
+"# 1秒間ã§100ピクセル。\n"
+"var animation = Animation.new()\n"
+"var track_index = animation.add_track(Animation.TYPE_VALUE)\n"
+"animation.track_set_path(track_index, \"Enemy:position.x\")\n"
+"animation.track_insert_key(track_index, 0.0, 0)\n"
+"animation.track_insert_key(track_index, 0.5, 100)\n"
+"[/codeblock]\n"
+"Animation ã¯å˜ãªã‚‹ãƒ‡ãƒ¼ã‚¿ã‚³ãƒ³ãƒ†ãƒŠã§ã‚ã‚Šã€å†ç”Ÿã™ã‚‹ãŸã‚ã«ã¯ [AnimationPlayer] ãª"
+"ã©ã®ãƒŽãƒ¼ãƒ‰ã«è¿½åŠ ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚アニメーショントラックã«ã¯æ§˜ã€…ãªã‚¿ã‚¤ãƒ—ãŒ"
+"ã‚ã‚Šã€ãã‚Œãžã‚Œã«å°‚用ã®ãƒ¡ã‚½ãƒƒãƒ‰ãŒç”¨æ„ã•ã‚Œã¦ã„ã¾ã™ã€‚ [enum TrackType] ã‚’ãƒã‚§ãƒƒ"
+"クã—ã¦ã€åˆ©ç”¨å¯èƒ½ãªã‚¿ã‚¤ãƒ—を確èªã—ã¦ãã ã•ã„。"
#: doc/classes/Animation.xml:20 doc/classes/AnimationPlayer.xml:13
msgid "https://docs.godotengine.org/en/latest/tutorials/animation/index.html"
-msgstr ""
+msgstr "https://docs.godotengine.org/ja/latest/tutorials/animation/index.html"
#: doc/classes/Animation.xml:31
msgid "Adds a track to the Animation."
-msgstr ""
+msgstr "アニメーションã«ãƒˆãƒ©ãƒƒã‚¯ã‚’追加ã—ã¾ã™ã€‚"
#: doc/classes/Animation.xml:42
msgid ""
"Returns the animation name at the key identified by [code]key_idx[/code]. "
"The [code]track_idx[/code] must be the index of an Animation Track."
msgstr ""
+"[code]key_idx[/code] ã§æŒ‡å®šã•ã‚ŒãŸã‚­ãƒ¼ã®ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³åã‚’è¿”ã—ã¾ã™ã€‚"
+"[code]track_idx[/code] ã¯ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ãƒˆãƒ©ãƒƒã‚¯ã®ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹ã§ãªã‘ã‚Œã°ãªã‚Šã¾"
+"ã›ã‚“。"
#: doc/classes/Animation.xml:55
msgid ""
@@ -4675,12 +4876,18 @@ msgid ""
"code] (in seconds). The [code]track_idx[/code] must be the index of an "
"Animation Track."
msgstr ""
+"指定ã•ã‚ŒãŸ [code]time[/code] (秒数) ã«å€¤ [code]animation[/code] をキーã¨ã—ã¦"
+"挿入ã—ã¾ã™ã€‚[code]track_idx[/code] ã¯ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ãƒˆãƒ©ãƒƒã‚¯ã®ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹ã§ãª"
+"ã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。"
#: doc/classes/Animation.xml:68
msgid ""
"Sets the key identified by [code]key_idx[/code] to value [code]animation[/"
"code]. The [code]track_idx[/code] must be the index of an Animation Track."
msgstr ""
+"[code]key_idx[/code] ã§æŒ‡å®šã•ã‚ŒãŸã‚­ãƒ¼ã‚’ã€å€¤ [code]animation[/code] ã§è¨­å®šã—ã¾"
+"ã™ã€‚[code]track_idx[/code] ã¯ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ãƒˆãƒ©ãƒƒã‚¯ã®ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹ã§ãªã‘ã‚Œã°ãª"
+"ã‚Šã¾ã›ã‚“。"
#: doc/classes/Animation.xml:79
msgid ""
@@ -4689,6 +4896,10 @@ msgid ""
"End offset is the number of seconds cut off at the ending of the audio "
"stream."
msgstr ""
+"[code]key_idx[/code] ã§æŒ‡å®šã•ã‚ŒãŸã‚­ãƒ¼ã®å¾Œç«¯ã‚ªãƒ•ã‚»ãƒƒãƒˆã‚’è¿”ã—ã¾ã™ã€‚"
+"[code]track_idx[/code] ã¯ã‚ªãƒ¼ãƒ‡ã‚£ã‚ªãƒˆãƒ©ãƒƒã‚¯ã®ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹ã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›"
+"ん。\n"
+"後端オフセットã¯ã€ã‚ªãƒ¼ãƒ‡ã‚£ã‚ªã‚¹ãƒˆãƒªãƒ¼ãƒ ã®çµ‚了時ã«ã‚«ãƒƒãƒˆã‚ªãƒ•ã•ã‚Œã‚‹ç§’æ•°ã§ã™ã€‚"
#: doc/classes/Animation.xml:91
msgid ""
@@ -4697,12 +4908,19 @@ msgid ""
"Start offset is the number of seconds cut off at the beginning of the audio "
"stream."
msgstr ""
+"[code]key_idx[/code] ã§æŒ‡å®šã•ã‚ŒãŸã‚­ãƒ¼ã®å§‹ç«¯ã‚ªãƒ•ã‚»ãƒƒãƒˆã‚’è¿”ã—ã¾ã™ã€‚ "
+"[code]track_idx[/code] ã¯ã‚ªãƒ¼ãƒ‡ã‚£ã‚ªãƒˆãƒ©ãƒƒã‚¯ã®ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹ã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›"
+"ん。\n"
+"始端オフセットã¯ã€ã‚ªãƒ¼ãƒ‡ã‚£ã‚ªã‚¹ãƒˆãƒªãƒ¼ãƒ ã®å…ˆé ­ã§åˆ‡ã‚Šå–られる秒数ã§ã™ã€‚"
#: doc/classes/Animation.xml:103
msgid ""
"Returns the audio stream of the key identified by [code]key_idx[/code]. The "
"[code]track_idx[/code] must be the index of an Audio Track."
msgstr ""
+"[code]key_idx[/code] ã§æŒ‡å®šã•ã‚ŒãŸã‚­ãƒ¼ã®ã‚ªãƒ¼ãƒ‡ã‚£ã‚ªã‚¹ãƒˆãƒªãƒ¼ãƒ ã‚’è¿”ã—ã¾ã™ã€‚"
+"[code]track_idx[/code] ã¯ã‚ªãƒ¼ãƒ‡ã‚£ã‚ªãƒˆãƒ©ãƒƒã‚¯ã®ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹ã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾"
+"ã™ã€‚"
#: doc/classes/Animation.xml:120
msgid ""
@@ -4712,6 +4930,12 @@ msgid ""
"[code]start_offset[/code] is the number of seconds cut off at the beginning "
"of the audio stream, while [code]end_offset[/code] is at the ending."
msgstr ""
+"オーディオトラックã®ã‚­ãƒ¼ã‚’秒数 [code]time[/code] ã«æŒ¿å…¥ã—ã¾ã™ã€‚ "
+"[code]track_idx[/code] ã¯ã‚ªãƒ¼ãƒ‡ã‚£ã‚ªãƒˆãƒ©ãƒƒã‚¯ã®ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹ã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾"
+"ã™ã€‚\n"
+"[code]stream[/code] ã¯å†ç”Ÿã™ã‚‹ [AudioStream] リソースã§ã™ã€‚ "
+"[code]start_offset[/code] ã¯ã‚ªãƒ¼ãƒ‡ã‚£ã‚ªã‚¹ãƒˆãƒªãƒ¼ãƒ ã®å…ˆç«¯ã§ã‚«ãƒƒãƒˆã‚ªãƒ•ã™ã‚‹ç§’æ•°ã€"
+"一方 [code]end_offset[/code] ã¯å¾Œç«¯ã§ã‚«ãƒƒãƒˆã‚ªãƒ•ã™ã‚‹ç§’æ•°ã§ã™ã€‚"
#: doc/classes/Animation.xml:134
msgid ""
@@ -4719,6 +4943,9 @@ msgid ""
"[code]offset[/code]. The [code]track_idx[/code] must be the index of an "
"Audio Track."
msgstr ""
+"[code]key_idx[/code] ã§æŒ‡å®šã•ã‚Œã‚‹ã‚­ãƒ¼ã®å¾Œç«¯ã‚ªãƒ•ã‚»ãƒƒãƒˆã‚’値 [code]offset[/"
+"code] ã§è¨­å®šã—ã¾ã™ã€‚[code]track_idx[/code] ã¯ã‚ªãƒ¼ãƒ‡ã‚£ã‚ªãƒˆãƒ©ãƒƒã‚¯ã®ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹"
+"ã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。"
#: doc/classes/Animation.xml:147
msgid ""
@@ -4726,6 +4953,9 @@ msgid ""
"[code]offset[/code]. The [code]track_idx[/code] must be the index of an "
"Audio Track."
msgstr ""
+"[code]key_idx[/code] ã§æŒ‡å®šã•ã‚Œã‚‹ã‚­ãƒ¼ã®å§‹ç«¯ã‚ªãƒ•ã‚»ãƒƒãƒˆã‚’値 [code]offset[/"
+"code] ã«è¨­å®šã—ã¾ã™ã€‚[code]track_idx[/code] ã¯ã‚ªãƒ¼ãƒ‡ã‚£ã‚ªãƒˆãƒ©ãƒƒã‚¯ã®ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹"
+"ã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。"
#: doc/classes/Animation.xml:160
msgid ""
@@ -4733,24 +4963,33 @@ msgid ""
"[code]offset[/code]. The [code]track_idx[/code] must be the index of an "
"Audio Track."
msgstr ""
+"[code]key_idx[/code] ã§æŒ‡å®šã•ã‚ŒãŸã‚­ãƒ¼ã®ã‚¹ãƒˆãƒªãƒ¼ãƒ ã‚’値 [code]offset[/code] ã§"
+"設定ã—ã¾ã™ã€‚[code]track_idx[/code] ã¯ã‚ªãƒ¼ãƒ‡ã‚£ã‚ªãƒˆãƒ©ãƒƒã‚¯ã®ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹ã§ãªã‘ã‚Œ"
+"ã°ãªã‚Šã¾ã›ã‚“。"
#: doc/classes/Animation.xml:171
msgid ""
"Returns the in handle of the key identified by [code]key_idx[/code]. The "
"[code]track_idx[/code] must be the index of a Bezier Track."
msgstr ""
+"[code]key_idx[/code] ã§æŒ‡å®šã•ã‚ŒãŸã‚­ãƒ¼ã®ã‚¤ãƒ³ãƒãƒ³ãƒ‰ãƒ«ã‚’è¿”ã—ã¾ã™ã€‚ "
+"[code]track_idx[/code] ã¯ãƒ™ã‚¸ã‚§ãƒˆãƒ©ãƒƒã‚¯ã®ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹ã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。"
#: doc/classes/Animation.xml:182
msgid ""
"Returns the out handle of the key identified by [code]key_idx[/code]. The "
"[code]track_idx[/code] must be the index of a Bezier Track."
msgstr ""
+"[code]key_idx[/code] ã§æŒ‡å®šã•ã‚ŒãŸã‚­ãƒ¼ã®ã‚¢ã‚¦ãƒˆãƒãƒ³ãƒ‰ãƒ«ã‚’è¿”ã—ã¾ã™ã€‚ "
+"[code]track_idx[/code] ã¯ãƒ™ã‚¸ã‚§ãƒˆãƒ©ãƒƒã‚¯ã®ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹ã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。"
#: doc/classes/Animation.xml:193
msgid ""
"Returns the value of the key identified by [code]key_idx[/code]. The "
"[code]track_idx[/code] must be the index of a Bezier Track."
msgstr ""
+"[code]key_idx[/code] ã§æŒ‡å®šã•ã‚ŒãŸã‚­ãƒ¼ã®å€¤ã‚’è¿”ã—ã¾ã™ã€‚ [code]track_idx[/code] "
+"ã¯ãƒ™ã‚¸ã‚§ãƒˆãƒ©ãƒƒã‚¯ã®ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹ã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。"
#: doc/classes/Animation.xml:210
msgid ""
@@ -4760,12 +4999,19 @@ msgid ""
"point, [code]out_handle[/code] is the right-side one, while [code]value[/"
"code] is the actual value at this point."
msgstr ""
+"指定ã•ã‚ŒãŸç§’æ•° [code]time[/code] ã«ãƒ™ã‚¸ã‚§ãƒˆãƒ©ãƒƒã‚¯ã®ã‚­ãƒ¼ã‚’挿入ã—ã¾ã™ã€‚"
+"[code]track_idx[/code] ã¯ãƒ™ã‚¸ã‚§ãƒˆãƒ©ãƒƒã‚¯ã®ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹ã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。\n"
+"[code]in_handle[/code] ã¯è¿½åŠ ã—ãŸãƒ™ã‚¸ã‚§æ›²ç·šç‚¹ã®å·¦å´ã®é‡ã¿ã€ "
+"[code]out_handle[/code] ã¯å³å´ã®é‡ã¿ã€ [code]value[/code] ã¯ã“ã®æ™‚点ã§ã®å®Ÿéš›"
+"ã®å€¤ã§ã™ã€‚"
#: doc/classes/Animation.xml:222
msgid ""
"Returns the interpolated value at the given [code]time[/code] (in seconds). "
"The [code]track_idx[/code] must be the index of a Bezier Track."
msgstr ""
+"指定ã•ã‚ŒãŸ [code]time[/code] (秒数) ã«ãŠã‘る補間値を返ã—ã¾ã™ã€‚ "
+"[code]track_idx[/code] ã¯ãƒ™ã‚¸ã‚§ãƒˆãƒ©ãƒƒã‚¯ã®ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹ã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。"
#: doc/classes/Animation.xml:235
msgid ""
@@ -4773,6 +5019,9 @@ msgid ""
"[code]in_handle[/code]. The [code]track_idx[/code] must be the index of a "
"Bezier Track."
msgstr ""
+"[code]key_idx[/code] ã¨ã—ã¦è­˜åˆ¥ã•ã‚Œã‚‹ã‚­ãƒ¼ã®ã‚¤ãƒ³ãƒãƒ³ãƒ‰ãƒ«ã‚’値 [code]in_handle[/"
+"code] ã«è¨­å®šã—ã¾ã™ã€‚ [code]track_idx[/code] ã¯ãƒ™ã‚¸ã‚§ãƒˆãƒ©ãƒƒã‚¯ã®ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹ã§"
+"ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。"
#: doc/classes/Animation.xml:248
msgid ""
@@ -4780,165 +5029,198 @@ msgid ""
"[code]out_handle[/code]. The [code]track_idx[/code] must be the index of a "
"Bezier Track."
msgstr ""
+"[code]key_idx[/code] ã¨ã—ã¦è­˜åˆ¥ã•ã‚Œã‚‹ã‚­ãƒ¼ã®ã‚¢ã‚¦ãƒˆãƒãƒ³ãƒ‰ãƒ«ã‚’値 "
+"[code]out_handle[/code] ã«è¨­å®šã—ã¾ã™ã€‚ [code]track_idx[/code] ã¯ãƒ™ã‚¸ã‚§ãƒˆãƒ©ãƒƒ"
+"クã®ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹ã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。"
#: doc/classes/Animation.xml:261
msgid ""
"Sets the value of the key identified by [code]key_idx[/code] to the given "
"value. The [code]track_idx[/code] must be the index of a Bezier Track."
msgstr ""
+"[code]key_idx[/code] ã¨ã—ã¦è­˜åˆ¥ã•ã‚Œã‚‹ã‚­ãƒ¼ã®å€¤ã‚’ã€æŒ‡å®šã•ã‚ŒãŸå€¤ã«è¨­å®šã—ã¾ã™ã€‚ "
+"[code]track_idx[/code] ã¯ãƒ™ã‚¸ã‚§ãƒˆãƒ©ãƒƒã‚¯ã®ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹ã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。"
#: doc/classes/Animation.xml:268
msgid "Clear the animation (clear all tracks and reset all)."
-msgstr ""
+msgstr "アニメーションをクリアã™ã‚‹ (全トラックをクリアã—ã¦ã™ã¹ã¦ãƒªã‚»ãƒƒãƒˆ) 。"
#: doc/classes/Animation.xml:279
msgid ""
"Adds a new track that is a copy of the given track from [code]to_animation[/"
"code]."
msgstr ""
+"[code]to_animation[/code] ã§ä¸Žãˆã‚‰ã‚ŒãŸãƒˆãƒ©ãƒƒã‚¯ã®ã‚³ãƒ”ーã§ã‚ã‚‹ã€æ–°ã—ã„トラック"
+"を追加ã—ã¾ã™ã€‚"
#: doc/classes/Animation.xml:288
msgid ""
"Returns the index of the specified track. If the track is not found, return "
"-1."
msgstr ""
+"指定ã—ãŸãƒˆãƒ©ãƒƒã‚¯ã®ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹ã‚’è¿”ã—ã¾ã™ã€‚指定ã—ãŸãƒˆãƒ©ãƒƒã‚¯ãŒè¦‹ã¤ã‹ã‚‰ãªã‹ã£ãŸ"
+"å ´åˆã¯ -1 ã‚’è¿”ã—ã¾ã™ã€‚"
#: doc/classes/Animation.xml:295
msgid "Returns the amount of tracks in the animation."
-msgstr ""
+msgstr "アニメーションã®ãƒˆãƒ©ãƒƒã‚¯æ•°ã‚’è¿”ã—ã¾ã™ã€‚"
#: doc/classes/Animation.xml:308
msgid ""
"Returns all the key indices of a method track, given a position and delta "
"time."
msgstr ""
+"ä½ç½®ã¨ãƒ‡ãƒ«ã‚¿æ™‚間を指定ã—ã¦ã€ãƒ¡ã‚½ãƒƒãƒ‰ãƒˆãƒ©ãƒƒã‚¯ã®ã™ã¹ã¦ã®ã‚­ãƒ¼ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹ã‚’è¿”ã—"
+"ã¾ã™ã€‚"
#: doc/classes/Animation.xml:319
msgid "Returns the method name of a method track."
-msgstr ""
+msgstr "メソッドトラックã®ãƒ¡ã‚½ãƒƒãƒ‰åã‚’è¿”ã—ã¾ã™ã€‚"
#: doc/classes/Animation.xml:330
msgid ""
"Returns the arguments values to be called on a method track for a given key "
"in a given track."
msgstr ""
+"指定ã•ã‚ŒãŸãƒˆãƒ©ãƒƒã‚¯å†…ã®æŒ‡å®šã•ã‚ŒãŸã‚­ãƒ¼ã«ãŠã„ã¦ã€ãƒ¡ã‚½ãƒƒãƒ‰ãƒˆãƒ©ãƒƒã‚¯ã§å‘¼ã³å‡ºã•ã‚Œã‚‹"
+"引数ã®å€¤ã‚’è¿”ã—ã¾ã™ã€‚"
#: doc/classes/Animation.xml:339
msgid "Removes a track by specifying the track index."
-msgstr ""
+msgstr "トラックインデックスを指定ã—ã¦ãƒˆãƒ©ãƒƒã‚¯ã‚’削除ã—ã¾ã™ã€‚"
#: doc/classes/Animation.xml:352
msgid ""
"Finds the key index by time in a given track. Optionally, only find it if "
"the exact time is given."
msgstr ""
+"トラック内ã§æŒ‡å®šã•ã‚ŒãŸæ™‚é–“ã®ã‚­ãƒ¼ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹ã‚’見ã¤ã‘ã¾ã™ã€‚オプションã§ã¯ã€æ­£"
+"確ãªæ™‚é–“ãŒæŒ‡å®šã•ã‚Œã¦ã„ã‚‹å ´åˆã«ã®ã¿è¦‹ã¤ã‘ã¾ã™ã€‚"
#: doc/classes/Animation.xml:361
msgid ""
"Returns [code]true[/code] if the track at [code]idx[/code] wraps the "
"interpolation loop. New tracks wrap the interpolation loop by default."
msgstr ""
+"[code]idx[/code] ã®ãƒˆãƒ©ãƒƒã‚¯ãŒè£œé–“ループをラップã—ã¦ã„ã‚‹å ´åˆã€ [code]true[/"
+"code] ã‚’è¿”ã—ã¾ã™ã€‚æ–°ã—ã„トラックã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§è£œé–“ループをラップã—ã¾ã™ã€‚"
#: doc/classes/Animation.xml:370
msgid "Returns the interpolation type of a given track."
-msgstr ""
+msgstr "指定ã•ã‚ŒãŸãƒˆãƒ©ãƒƒã‚¯ã®è£œé–“タイプを返ã—ã¾ã™ã€‚"
#: doc/classes/Animation.xml:379
msgid "Returns the amount of keys in a given track."
-msgstr ""
+msgstr "指定ã—ãŸãƒˆãƒ©ãƒƒã‚¯ã®ã‚­ãƒ¼æ•°ã‚’è¿”ã—ã¾ã™ã€‚"
#: doc/classes/Animation.xml:390
msgid "Returns the time at which the key is located."
-msgstr ""
+msgstr "キーãŒé…ç½®ã•ã‚Œã¦ã„る時間を返ã—ã¾ã™ã€‚"
#: doc/classes/Animation.xml:401
msgid ""
"Returns the transition curve (easing) for a specific key (see the built-in "
"math function [method @GDScript.ease])."
msgstr ""
+"特定ã®ã‚­ãƒ¼ã®é·ç§»æ›²ç·š (イージング) ã‚’è¿”ã—ã¾ã™ (組ã¿è¾¼ã¿ã®æ•°å­¦é–¢æ•° [method "
+"@GDScript.ease] ã‚’å‚ç…§) 。"
#: doc/classes/Animation.xml:412
msgid "Returns the value of a given key in a given track."
-msgstr ""
+msgstr "指定ã•ã‚ŒãŸãƒˆãƒ©ãƒƒã‚¯å†…ã®ã€æŒ‡å®šã•ã‚ŒãŸã‚­ãƒ¼ã®å€¤ã‚’è¿”ã—ã¾ã™ã€‚"
#: doc/classes/Animation.xml:421
msgid ""
"Gets the path of a track. For more information on the path format, see "
"[method track_set_path]."
msgstr ""
+"トラックã®ãƒ‘スをå–å¾—ã—ã¾ã™ã€‚パスã®å½¢å¼ã«ã¤ã„ã¦ã¯ [method track_set_path] ã‚’å‚"
+"ç…§ã—ã¦ãã ã•ã„。"
#: doc/classes/Animation.xml:430
msgid "Gets the type of a track."
-msgstr ""
+msgstr "トラックã®ç¨®é¡žã‚’å–å¾—ã—ã¾ã™ã€‚"
#: doc/classes/Animation.xml:445
msgid "Insert a generic key in a given track."
-msgstr ""
+msgstr "指定ã•ã‚ŒãŸãƒˆãƒ©ãƒƒã‚¯ã«é€šå¸¸ã‚­ãƒ¼ã‚’挿入ã—ã¾ã™ã€‚"
#: doc/classes/Animation.xml:454
msgid ""
"Returns [code]true[/code] if the track at index [code]idx[/code] is enabled."
msgstr ""
+"インデックス [code]idx[/code] ã®ãƒˆãƒ©ãƒƒã‚¯ãŒæœ‰åŠ¹ãªå ´åˆã€ [code]true[/code] ã‚’è¿”"
+"ã—ã¾ã™ã€‚"
#: doc/classes/Animation.xml:463
msgid ""
"Returns [code]true[/code] if the given track is imported. Else, return "
"[code]false[/code]."
msgstr ""
+"指定ã—ãŸãƒˆãƒ©ãƒƒã‚¯ãŒã‚¤ãƒ³ãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã‚‹å ´åˆã€ [code]true[/code] ã‚’è¿”ã—ã¾ã™ã€‚ã"
+"ã†ã§ãªã‘ã‚Œã°ã€ [code]false[/code] ã‚’è¿”ã—ã¾ã™ã€‚"
#: doc/classes/Animation.xml:472
msgid "Moves a track down."
-msgstr ""
+msgstr "トラックを下ã«ç§»å‹•ã•ã›ã¾ã™ã€‚"
#: doc/classes/Animation.xml:483
msgid ""
"Changes the index position of track [code]idx[/code] to the one defined in "
"[code]to_idx[/code]."
msgstr ""
+"トラック [code]idx[/code] ã®ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹ä½ç½®ã‚’ [code]to_idx[/code] ã§å®šç¾©ã—ãŸ"
+"ã‚‚ã®ã«å¤‰æ›´ã—ã¾ã™ã€‚"
#: doc/classes/Animation.xml:492
msgid "Moves a track up."
-msgstr ""
+msgstr "トラックを上ã«ç§»å‹•ã•ã›ã¾ã™ã€‚"
#: doc/classes/Animation.xml:503
msgid "Removes a key by index in a given track."
-msgstr ""
+msgstr "指定ã•ã‚ŒãŸãƒˆãƒ©ãƒƒã‚¯ã«ã‚るキーをã€ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹ã«ã‚ˆã‚Šå‰Šé™¤ã—ã¾ã™ã€‚"
#: doc/classes/Animation.xml:514
msgid "Removes a key by position (seconds) in a given track."
-msgstr ""
+msgstr "指定ã•ã‚ŒãŸãƒˆãƒ©ãƒƒã‚¯ã«ã‚るキーをã€ä½ç½® (秒) ã«ã‚ˆã£ã¦å‰Šé™¤ã—ã¾ã™ã€‚"
#: doc/classes/Animation.xml:525
msgid "Enables/disables the given track. Tracks are enabled by default."
msgstr ""
+"指定ã•ã‚ŒãŸãƒˆãƒ©ãƒƒã‚¯ã‚’有効/無効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ãƒˆãƒ©ãƒƒã‚¯ã¯æœ‰åŠ¹ã«ãªã£ã¦ã„"
+"ã¾ã™ã€‚"
#: doc/classes/Animation.xml:536
msgid "Sets the given track as imported or not."
-msgstr ""
+msgstr "与ãˆã‚‰ã‚ŒãŸãƒˆãƒ©ãƒƒã‚¯ãŒã€ã‚¤ãƒ³ãƒãƒ¼ãƒˆã•ã‚ŒãŸã‹ã©ã†ã‹ã‚’設定ã—ã¾ã™ã€‚"
#: doc/classes/Animation.xml:547
msgid ""
"If [code]true[/code], the track at [code]idx[/code] wraps the interpolation "
"loop."
msgstr ""
+"[code]true[/code] ã®å ´åˆã€[code]idx[/code] ã®ãƒˆãƒ©ãƒƒã‚¯ã¯è£œé–“ループをラップã—ã¾"
+"ã™ã€‚"
#: doc/classes/Animation.xml:558
msgid "Sets the interpolation type of a given track."
-msgstr ""
+msgstr "指定ã•ã‚ŒãŸãƒˆãƒ©ãƒƒã‚¯ã®è£œé–“タイプを設定ã—ã¾ã™ã€‚"
#: doc/classes/Animation.xml:571
msgid "Sets the time of an existing key."
-msgstr ""
+msgstr "既存ã®ã‚­ãƒ¼ã®æ™‚間を設定ã—ã¾ã™ã€‚"
#: doc/classes/Animation.xml:584
msgid ""
"Sets the transition curve (easing) for a specific key (see the built-in math "
"function [method @GDScript.ease])."
msgstr ""
+"特定ã®ã‚­ãƒ¼ã®é·ç§»æ›²ç·š (イージング) を設定ã—ã¾ã™ (組ã¿è¾¼ã¿ã®æ•°å­¦é–¢æ•° "
+"[method@GDScript.ease] ã‚’å‚ç…§) 。"
#: doc/classes/Animation.xml:597
msgid "Sets the value of an existing key."
-msgstr ""
+msgstr "既存ã®ã‚­ãƒ¼ã®å€¤ã‚’設定ã—ã¾ã™ã€‚"
#: doc/classes/Animation.xml:608
msgid ""
@@ -4949,16 +5231,24 @@ msgid ""
"For example, [code]\"character/skeleton:ankle\"[/code] or [code]\"character/"
"mesh:transform/local\"[/code]."
msgstr ""
+"トラックã®ãƒ‘スを設定ã—ã¾ã™ã€‚パスã¯ã€ãƒŽãƒ¼ãƒ‰ã¸ã®æœ‰åŠ¹ãªã‚·ãƒ¼ãƒ³ãƒ„リーパスã§ãªã‘ã‚Œ"
+"ã°ãªã‚‰ãšã€ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã‚’å†ç¾ã™ã‚‹ãƒŽãƒ¼ãƒ‰ã®è¦ªãƒŽãƒ¼ãƒ‰ã‹ã‚‰å§‹ã¾ã‚‹ãƒ‘スを指定ã™ã‚‹å¿…"
+"è¦ãŒã‚ã‚Šã¾ã™ã€‚プロパティやボーンを制御ã™ã‚‹ãƒˆãƒ©ãƒƒã‚¯ã¯ã€[code]\":\"[/code] ã§åŒº"
+"切ã£ã¦ãƒ‘スã®å¾Œã«åå‰ã‚’追加ã—ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。\n"
+"例ãˆã°ã€[code]\"character/skeleton:ankle\"[/code] ã‚„ [code]\"character/mesh:"
+"transform/local\"[/code] ãªã©ã§ã™ã€‚"
#: doc/classes/Animation.xml:620
msgid ""
"Swaps the track [code]idx[/code]'s index position with the track "
"[code]with_idx[/code]."
msgstr ""
+"トラック [code]idx[/code] ã®ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹ä½ç½®ã‚’ã€ãƒˆãƒ©ãƒƒã‚¯ [code]with_idx[/"
+"code] ã¨å…¥ã‚Œæ›¿ãˆã¾ã™ã€‚"
#: doc/classes/Animation.xml:637
msgid "Insert a transform key for a transform track."
-msgstr ""
+msgstr "トランスフォームトラックã«ãƒˆãƒ©ãƒ³ã‚¹ãƒ•ã‚©ãƒ¼ãƒ ã‚­ãƒ¼ã‚’挿入ã—ã¾ã™ã€‚"
#: doc/classes/Animation.xml:648
msgid ""
@@ -4966,20 +5256,23 @@ msgid ""
"seconds). An array consisting of 3 elements: position ([Vector3]), rotation "
"([Quat]) and scale ([Vector3])."
msgstr ""
+"指定ã•ã‚ŒãŸæ™‚é–“ (秒) ã«ãŠã‘るトランスフォームトラックã®è£œé–“値を返ã—ã¾ã™ã€‚ä½ç½®"
+"([Vector3])ã€å›žè»¢([Quat])ã€ã‚¹ã‚±ãƒ¼ãƒ«([Vector3]) ã®3ã¤ã®è¦ç´ ã‹ã‚‰ãªã‚‹é…列ã§ã™ã€‚"
#: doc/classes/Animation.xml:661
msgid ""
"Returns all the key indices of a value track, given a position and delta "
"time."
msgstr ""
+"ä½ç½®ã¨ãƒ‡ãƒ«ã‚¿æ™‚間を指定ã—ã¦ã€å€¤ãƒˆãƒ©ãƒƒã‚¯ã®ã™ã¹ã¦ã®ã‚­ãƒ¼ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹ã‚’è¿”ã—ã¾ã™ã€‚"
#: doc/classes/Animation.xml:670
msgid "Returns the update mode of a value track."
-msgstr ""
+msgstr "値トラックã®æ›´æ–°ãƒ¢ãƒ¼ãƒ‰ã‚’è¿”ã—ã¾ã™ã€‚"
#: doc/classes/Animation.xml:681
msgid "Sets the update mode (see [enum UpdateMode]) of a value track."
-msgstr ""
+msgstr "値トラックã®æ›´æ–°ãƒ¢ãƒ¼ãƒ‰ ([enum UpdateMode] ã‚’å‚ç…§) を設定ã—ã¾ã™ã€‚"
#: doc/classes/Animation.xml:687
msgid ""
@@ -4987,6 +5280,9 @@ msgid ""
"[b]Note:[/b] Length is not delimited by the last key, as this one may be "
"before or after the end to ensure correct interpolation and looping."
msgstr ""
+"アニメーションã®å…¨é•· (秒) 。\n"
+"[b]注:[/b] 最後ã®ã‚­ãƒ¼ã¯çµ‚了時よりもå‰ã‹å¾Œã«ã‚ã‚‹ã‹ã‚‚ã—ã‚Œãªã„ã®ã§ã€æ­£ã—ã„補間ã¨"
+"ルーピングã®ãŸã‚ã€é•·ã•ã¯æœ€å¾Œã®ã‚­ãƒ¼ã§ã¯å®šã‚られã¾ã›ã‚“。"
#: doc/classes/Animation.xml:691
msgid ""
@@ -4994,32 +5290,41 @@ msgid ""
"interpolation of animation cycles, and for hinting the player that it must "
"restart the animation."
msgstr ""
+"アニメーションãŒãƒ«ãƒ¼ãƒ—ã—ãªã‘ã‚Œã°ãªã‚‰ãªã„ã“ã¨ã‚’示ã™ãƒ•ãƒ©ã‚°ã€‚ã“ã‚Œã¯ã€ã‚¢ãƒ‹ãƒ¡ãƒ¼"
+"ションã®ã‚µã‚¤ã‚¯ãƒ«ã‚’æ­£ã—ã補間ã—ãŸã‚Šã€ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã‚’å†ã‚¹ã‚¿ãƒ¼ãƒˆã•ã›ã‚‹å¿…è¦ãŒã‚"
+"ã‚‹ã“ã¨ã‚’プレーヤーã«çŸ¥ã‚‰ã›ã‚‹ãƒ’ントã¨ã—ã¦ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚"
#: doc/classes/Animation.xml:694
msgid "The animation step value."
-msgstr ""
+msgstr "アニメーションã®ã‚¹ãƒ†ãƒƒãƒ—値。"
#: doc/classes/Animation.xml:700
msgid ""
"Emitted when there's a change in the list of tracks, e.g. tracks are added, "
"moved or have changed paths."
msgstr ""
+"トラックãŒè¿½åŠ ã•ã‚ŒãŸã‚Šã€ç§»å‹•ã•ã‚ŒãŸã‚Šã€ãƒ‘スãŒå¤‰æ›´ã•ã‚ŒãŸã‚Šã—ãŸå ´åˆãªã©ã€ãƒˆãƒ©ãƒƒ"
+"クã®ãƒªã‚¹ãƒˆã«å¤‰æ›´ãŒã‚ã£ãŸå ´åˆã«ç™ºä¿¡ã•ã‚Œã¾ã™ã€‚"
#: doc/classes/Animation.xml:706
msgid ""
"Value tracks set values in node properties, but only those which can be "
"Interpolated."
msgstr ""
+"値トラックã¯ã€ãƒŽãƒ¼ãƒ‰ã®ãƒ—ロパティã®å€¤ã‚’設定ã—ã¾ã™ã€‚ãŸã ã—ã€è£œé–“å¯èƒ½ãªå€¤ã®ã¿å¯"
+"能ã§ã™ã€‚"
#: doc/classes/Animation.xml:709
msgid ""
"Transform tracks are used to change node local transforms or skeleton pose "
"bones. Transitions are interpolated."
msgstr ""
+"トランスフォーム トラックã¯ã€ãƒŽãƒ¼ãƒ‰ã®ãƒ­ãƒ¼ã‚«ãƒ« トランスフォームやã€ã‚¹ã‚±ãƒ«ãƒˆãƒ³"
+"ãƒãƒ¼ã‚ºã®ãƒœãƒ¼ãƒ³ã‚’変更ã™ã‚‹ãŸã‚ã«ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚é·ç§»ã¯è£œé–“ã•ã‚Œã¾ã™ã€‚"
#: doc/classes/Animation.xml:712
msgid "Method tracks call functions with given arguments per key."
-msgstr ""
+msgstr "メソッドトラックã¯ã€ã‚­ãƒ¼ã”ã¨ã«ä¸Žãˆã‚‰ã‚ŒãŸå¼•æ•°ã§é–¢æ•°ã‚’呼ã³å‡ºã—ã¾ã™ã€‚"
#: doc/classes/Animation.xml:715
msgid ""
@@ -5027,6 +5332,9 @@ msgid ""
"also be used to animate sub-properties of vectors and colors (e.g. alpha "
"value of a [Color])."
msgstr ""
+"ベジェトラックã¯ã€ã‚«ã‚¹ã‚¿ãƒ ã®ã‚«ãƒ¼ãƒ–を使用ã—ã¦å€¤ã‚’補間ã™ã‚‹ãŸã‚ã«ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚"
+"ベジェトラックã¯ã€ãƒ™ã‚¯ã‚¿ãƒ¼ã‚„カラーã®ã‚µãƒ–プロパティをアニメーション化ã™ã‚‹ãŸã‚"
+"ã«ã‚‚使用ã§ãã¾ã™ (例: [Color] ã®ã‚¢ãƒ«ãƒ•ã‚¡å€¤) 。"
#: doc/classes/Animation.xml:718
msgid ""
@@ -5034,44 +5342,51 @@ msgid ""
"[AudioStreamPlayer]. The stream can be trimmed and previewed in the "
"animation."
msgstr ""
+"オーディオトラックã¯ã€ã„ãšã‚Œã‹ã®ç¨®é¡žã® [AudioStreamPlayer] 上ã§ã‚ªãƒ¼ãƒ‡ã‚£ã‚ªã‚¹ãƒˆ"
+"リームをå†ç”Ÿã—ã¾ã™ã€‚ストリームã¯ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³å†…ã§ãƒˆãƒªãƒŸãƒ³ã‚°ã—ãŸã‚Šã€ãƒ—レ"
+"ビューã—ãŸã‚Šã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚"
#: doc/classes/Animation.xml:721
msgid "Animation tracks play animations in other [AnimationPlayer] nodes."
msgstr ""
+"アニメーショントラックã¯ã€ä»–ã® [AnimationPlayer] ノードã§ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã‚’å†ç”Ÿ"
+"ã—ã¾ã™ã€‚"
#: doc/classes/Animation.xml:724
msgid "No interpolation (nearest value)."
-msgstr ""
+msgstr "補間ãªã— (ç›´è¿‘ã®å€¤) 。"
#: doc/classes/Animation.xml:727
msgid "Linear interpolation."
-msgstr ""
+msgstr "線形補間。"
#: doc/classes/Animation.xml:730
msgid "Cubic interpolation."
-msgstr ""
+msgstr "キュービック補間。"
#: doc/classes/Animation.xml:733
msgid "Update between keyframes."
-msgstr ""
+msgstr "キーフレーム間ã§æ›´æ–°ã™ã‚‹ã€‚"
#: doc/classes/Animation.xml:736
msgid "Update at the keyframes and hold the value."
-msgstr ""
+msgstr "キーフレームã§æ›´æ–°ã—ã€å€¤ã‚’ä¿æŒã™ã‚‹ã€‚"
#: doc/classes/Animation.xml:739
msgid "Update at the keyframes."
-msgstr ""
+msgstr "キーフレームã§æ›´æ–°ã™ã‚‹ã€‚"
#: doc/classes/Animation.xml:742
msgid ""
"Same as linear interpolation, but also interpolates from the current value "
"(i.e. dynamically at runtime) if the first key isn't at 0 seconds."
msgstr ""
+"線形補間ã¨åŒã˜ã§ã™ãŒã€æœ€åˆã®ã‚­ãƒ¼ãŒ0秒時点ã«ãªã„å ´åˆã¯ã€ç¾åœ¨ã®å€¤ã‹ã‚‰è£œé–“ã—ã¾"
+"ã™ (実行時ã«å‹•çš„ã«) 。"
#: doc/classes/AnimationNode.xml:4
msgid "Base resource for [AnimationTree] nodes."
-msgstr ""
+msgstr "[AnimationTree] ノードã®åŸºåº•ãƒªã‚½ãƒ¼ã‚¹ã€‚"
#: doc/classes/AnimationNode.xml:7
msgid ""
@@ -5080,6 +5395,10 @@ msgid ""
"Inherit this when creating nodes mainly for use in [AnimationNodeBlendTree], "
"otherwise [AnimationRootNode] should be used instead."
msgstr ""
+"[AnimationTree] ノードã®åŸºåº•ãƒªã‚½ãƒ¼ã‚¹ã€‚ 一般的ã«ã€ç›´æŽ¥ä½¿ã†ã“ã¨ã¯ã‚ã‚Šã¾ã›ã‚“ãŒã€"
+"カスタムブレンドå¼ã‚’使ã†ã‚«ã‚¹ã‚¿ãƒ ãƒŽãƒ¼ãƒ‰ã‚’作æˆã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚\n"
+"主㫠[AnimationNodeBlendTree] ã§ä½¿ç”¨ã™ã‚‹ãƒŽãƒ¼ãƒ‰ã‚’作æˆã™ã‚‹å ´åˆã¯ã“れを継承ã—ã€"
+"ãれ以外ã®å ´åˆã¯ [AnimationRootNode] を使用ã—ã¦ãã ã•ã„。"
#: doc/classes/AnimationNode.xml:11 doc/classes/AnimationNodeAdd2.xml:10
#: doc/classes/AnimationNodeAdd3.xml:14
@@ -5101,12 +5420,16 @@ msgid ""
"https://docs.godotengine.org/en/latest/tutorials/animation/animation_tree."
"html"
msgstr ""
+"https://docs.godotengine.org/ja/latest/tutorials/animation/animation_tree."
+"html"
#: doc/classes/AnimationNode.xml:20
msgid ""
"Adds an input to the node. This is only useful for nodes created for use in "
"an [AnimationNodeBlendTree]."
msgstr ""
+"ノードã«å…¥åŠ›ã‚’追加ã—ã¾ã™ã€‚ã“れ㯠[AnimationNodeBlendTree] ã§ä½¿ç”¨ã™ã‚‹ãŸã‚ã«ä½œ"
+"æˆã•ã‚ŒãŸãƒŽãƒ¼ãƒ‰ã§ã®ã¿æœ‰ç”¨ã§ã™ã€‚"
#: doc/classes/AnimationNode.xml:37
msgid ""
@@ -5114,6 +5437,10 @@ msgid ""
"linked [AnimationPlayer]). A [code]time[/code] and [code]delta[/code] may be "
"passed, as well as whether [code]seek[/code] happened."
msgstr ""
+"アニメーションを [code]blend[/code] é‡ã§ãƒ–レンドã—ã¾ã™ (åå‰ã¯ãƒªãƒ³ã‚¯ã•ã‚ŒãŸ "
+"[AnimationPlayer] ã§æœ‰åŠ¹ã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“) 。[code]time[/code] 㨠"
+"[code]delta[/code] を渡ã—ãŸã‚Šã€[code]seek[/code] ãŒç™ºç”Ÿã—ãŸã‹ã©ã†ã‹ã‚’渡ã™ã“ã¨"
+"ã‚‚ã§ãã¾ã™ã€‚"
#: doc/classes/AnimationNode.xml:56
msgid ""
@@ -5123,6 +5450,11 @@ msgid ""
"absolute. A filter mode may be optionally passed (see [enum FilterAction] "
"for options)."
msgstr ""
+"入力をブレンドã—ã¾ã™ã€‚ã“れ㯠[AnimationNodeBlendTree] ã®ãŸã‚ã«ä½œæˆã•ã‚ŒãŸãƒŽãƒ¼"
+"ドã«å¯¾ã—ã¦ã®ã¿æœ‰ç”¨ã§ã™ã€‚[code]time[/code] パラメータã¯ç›¸å¯¾çš„ãªãƒ‡ãƒ«ã‚¿å€¤ã§ã™"
+"ãŒã€ã—ã‹ã— [code]seek[/code] ㌠[code]true[/code] ã®å ´åˆã¯çµ¶å¯¾å€¤ã§ã™ã€‚オプ"
+"ションã§ãƒ•ã‚£ãƒ«ã‚¿ãƒ¢ãƒ¼ãƒ‰ã‚’渡ã™ã“ã¨ãŒã§ãã¾ã™ (オプションã«ã¤ã„ã¦ã¯ [enum "
+"FilterAction] ã‚’å‚ç…§) 。"
#: doc/classes/AnimationNode.xml:77
msgid ""
@@ -5130,44 +5462,55 @@ msgid ""
"nodes). This function is only useful if you inherit from [AnimationRootNode] "
"instead, else editors will not display your node for addition."
msgstr ""
+"ã‚‚ã†ã²ã¨ã¤ã®ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ãƒŽãƒ¼ãƒ‰ã‚’ブレンドã—ã¾ã™ (ã“ã®ãƒŽãƒ¼ãƒ‰ã«å­ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§"
+"ンノードãŒå«ã¾ã‚Œã¦ã„ã‚‹å ´åˆ)。ã“ã®é–¢æ•°ã¯ [AnimationRootNode] を継承ã—ã¦ã„ã‚‹å ´"
+"åˆã«ã®ã¿æœ‰ç”¨ã§ã€ãã†ã§ãªã‘ã‚Œã°ã‚¨ãƒ‡ã‚£ã‚¿ã¯è¿½åŠ ç”¨ãƒŽãƒ¼ãƒ‰ã‚’表示ã—ã¾ã›ã‚“。"
#: doc/classes/AnimationNode.xml:84
msgid "Gets the text caption for this node (used by some editors)."
-msgstr ""
+msgstr "ã“ã®ãƒŽãƒ¼ãƒ‰ã®ãƒ†ã‚­ã‚¹ãƒˆã‚­ãƒ£ãƒ—ションをå–å¾—ã—ã¾ã™ (特定ã®ã‚¨ãƒ‡ã‚£ã‚¿ã§ä½¿ç”¨)。"
#: doc/classes/AnimationNode.xml:93
msgid ""
"Gets a child node by index (used by editors inheriting from "
"[AnimationRootNode])."
msgstr ""
+"å­ãƒŽãƒ¼ãƒ‰ã‚’インデックスã§å–å¾—ã—ã¾ã™ ([AnimationRootNode] を継承ã—ãŸã‚¨ãƒ‡ã‚£ã‚¿ã§"
+"使用)。"
#: doc/classes/AnimationNode.xml:100
msgid ""
"Gets all children nodes in order as a [code]name: node[/code] dictionary. "
"Only useful when inheriting [AnimationRootNode]."
msgstr ""
+"ã™ã¹ã¦ã®å­ãƒŽãƒ¼ãƒ‰ã‚’順番通り㫠[code]name: node[/code] ã®è¾žæ›¸ã¨ã—ã¦å–å¾—ã—ã¾ã™ã€‚"
+"[AnimationRootNode] を継承ã™ã‚‹å ´åˆã«ã®ã¿æœ‰ç”¨ã§ã™ã€‚"
#: doc/classes/AnimationNode.xml:107
msgid ""
"Amount of inputs in this node, only useful for nodes that go into "
"[AnimationNodeBlendTree]."
-msgstr ""
+msgstr "ノードã®å…¥åŠ›æ•°ã€‚[AnimationNodeBlendTree] 内ã®ãƒŽãƒ¼ãƒ‰ã§ã®ã¿æœ‰ç”¨ã§ã™ã€‚"
#: doc/classes/AnimationNode.xml:116
msgid "Gets the name of an input by index."
-msgstr ""
+msgstr "入力ã®åå‰ã‚’インデックスã§å–å¾—ã—ã¾ã™ã€‚"
#: doc/classes/AnimationNode.xml:125
msgid ""
"Gets the value of a parameter. Parameters are custom local memory used for "
"your nodes, given a resource can be reused in multiple trees."
msgstr ""
+"特定ã®ãƒ‘ラメータã®å€¤ã‚’å–å¾—ã—ã¾ã™ã€‚パラメータã¯ãƒŽãƒ¼ãƒ‰ã«ä½¿ç”¨ã•ã‚Œã‚‹ã‚«ã‚¹ã‚¿ãƒ ã®"
+"ローカルメモリã§ã€ä¸Žãˆã‚‰ã‚ŒãŸãƒªã‚½ãƒ¼ã‚¹ã¯è¤‡æ•°ã®ãƒ„リーã§å†åˆ©ç”¨ã§ãã¾ã™ã€‚"
#: doc/classes/AnimationNode.xml:134
msgid ""
"Gets the default value of a parameter. Parameters are custom local memory "
"used for your nodes, given a resource can be reused in multiple trees."
msgstr ""
+"特定ã®ãƒ‘ラメータã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ã‚’å–å¾—ã—ã¾ã™ã€‚パラメータã¯ãƒŽãƒ¼ãƒ‰ã«ä½¿ç”¨ã•ã‚Œã‚‹ã‚«"
+"スタムã®ãƒ­ãƒ¼ã‚«ãƒ«ãƒ¡ãƒ¢ãƒªã§ã€ä¸Žãˆã‚‰ã‚ŒãŸãƒªã‚½ãƒ¼ã‚¹ã¯è¤‡æ•°ã®ãƒ„リーã§å†åˆ©ç”¨ã§ãã¾ã™ã€‚"
#: doc/classes/AnimationNode.xml:141
msgid ""
@@ -5175,16 +5518,22 @@ msgid ""
"memory used for your nodes, given a resource can be reused in multiple "
"trees. Format is similar to [method Object.get_property_list]."
msgstr ""
+"パラメータã®ãƒ—ロパティ情報をå–å¾—ã—ã¾ã™ã€‚パラメータã¯ã€ãƒŽãƒ¼ãƒ‰ã®ãŸã‚ã«ä½¿ã‚れる"
+"カスタムã®ãƒ­ãƒ¼ã‚«ãƒ«ãƒ¡ãƒ¢ãƒªã§ã€ä¸Žãˆã‚‰ã‚ŒãŸãƒªã‚½ãƒ¼ã‚¹ã¯è¤‡æ•°ã®ãƒ„リーã§å†åˆ©ç”¨ã§ãã¾"
+"ã™ã€‚フォーマット㯠[method Object.get_property_list] ã«ä¼¼ã¦ã„ã¾ã™ã€‚"
#: doc/classes/AnimationNode.xml:148
msgid ""
"Returns [code]true[/code] whether you want the blend tree editor to display "
"filter editing on this node."
msgstr ""
+"ã“ã®ãƒŽãƒ¼ãƒ‰ã§ç·¨é›†ã™ã‚‹ãƒ•ã‚£ãƒ«ã‚¿ãƒ¼ã‚’ã€ãƒ–レンドツリーエディタã«ã¦è¡¨ç¤ºã•ã›ãŸã„å ´åˆ"
+"㯠[code]true[/code] ã‚’è¿”ã™ã‚ˆã†ã«ã—ã¾ã™ã€‚"
#: doc/classes/AnimationNode.xml:157
msgid "Returns [code]true[/code] whether a given path is filtered."
msgstr ""
+"指定ã—ãŸãƒ‘スãŒãƒ•ã‚£ãƒ«ã‚¿ãƒªãƒ³ã‚°ã•ã‚Œã¦ã„れ㰠[code]true[/code] ã‚’è¿”ã—ã¾ã™ã€‚"
#: doc/classes/AnimationNode.xml:168
msgid ""
@@ -5197,28 +5546,39 @@ msgid ""
"This function should return the time left for the current animation to "
"finish (if unsure, pass the value from the main blend being called)."
msgstr ""
+"カスタムノードãŒå‡¦ç†ã•ã‚ŒãŸã¨ãã«å‘¼ã³å‡ºã•ã‚Œã‚‹ã€ãƒ¦ãƒ¼ã‚¶ãƒ¼å®šç¾©ã®ã‚³ãƒ¼ãƒ«ãƒãƒƒã‚¯ã§"
+"ã™ã€‚[code]time[/code] パラメータã¯ç›¸å¯¾çš„ãªãƒ‡ãƒ«ã‚¿å€¤ã§ã™ãŒã€[code]seek[/code] "
+"㌠[code]true[/code] ã®å ´åˆã¯çµ¶å¯¾å€¤ã«ãªã‚Šã¾ã™ã€‚\n"
+"ã“ã“ã§ã¯ã€[method blend_input] 関数ã€[method blend_node] 関数ã€ã¾ãŸã¯ "
+"[method blend_animation] 関数を呼ã³å‡ºã—ã¦ãã ã•ã„。ã¾ãŸã€[method "
+"get_parameter] ã‚„ [method set_parameter] を使ã£ã¦ãƒ­ãƒ¼ã‚«ãƒ«ãƒ¡ãƒ¢ãƒªã‚’変更ã™ã‚‹ã“ã¨"
+"ã‚‚ã§ãã¾ã™ã€‚\n"
+"ã“ã®é–¢æ•°ã¯ã€ç¾åœ¨ã®ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ãŒçµ‚了ã™ã‚‹ã¾ã§ã®æ®‹ã‚Šæ™‚é–“ã‚’è¿”ã—ã¾ã™ (ä¸æ˜Žãªã¨"
+"ãã¯ã€å‘¼ã³å‡ºã•ã‚ŒãŸãƒ¡ã‚¤ãƒ³ ブレンドã®å€¤ã‚’渡ã—ã¾ã™)。"
#: doc/classes/AnimationNode.xml:179
msgid "Removes an input, call this only when inactive."
-msgstr ""
+msgstr "入力を削除ã—ã¾ã™ã€‚éžã‚¢ã‚¯ãƒ†ã‚£ãƒ–時ã«ã®ã¿å‘¼ã³å‡ºã—ã¦ãã ã•ã„。"
#: doc/classes/AnimationNode.xml:190
msgid "Adds or removes a path for the filter."
-msgstr ""
+msgstr "ã“ã®ãƒ•ã‚£ãƒ«ã‚¿ã®ãƒ‘スを追加ã‚ã‚‹ã„ã¯é™¤åŽ»ã—ã¾ã™ã€‚"
#: doc/classes/AnimationNode.xml:201
msgid ""
"Sets a custom parameter. These are used as local storage, because resources "
"can be reused across the tree or scenes."
msgstr ""
+"カスタムパラメータを設定ã—ã¾ã™ã€‚リソースã¯ãƒ„リーやシーン全体ã§å†åˆ©ç”¨ã§ãã‚‹ãŸ"
+"ã‚ã€ã“れらã¯ãƒ­ãƒ¼ã‚«ãƒ«ã‚¹ãƒˆãƒ¬ãƒ¼ã‚¸ã¨ã—ã¦æ©Ÿèƒ½ã—ã¾ã™ã€‚"
#: doc/classes/AnimationNode.xml:207
msgid "If [code]true[/code], filtering is enabled."
-msgstr ""
+msgstr "ã‚‚ã— [code]true[/code] ã§ã‚ã‚Œã°ã€ãƒ•ã‚£ãƒ«ã‚¿ãƒªãƒ³ã‚°ã¯æœ‰åŠ¹ã«ãªã‚Šã¾ã™ã€‚"
#: doc/classes/AnimationNode.xml:213
msgid "Called when the node was removed from the graph."
-msgstr ""
+msgstr "グラフã‹ã‚‰ãƒŽãƒ¼ãƒ‰ãŒé™¤åŽ»ã•ã‚ŒãŸéš›ã«ç™ºä¿¡ã•ã‚Œã¾ã™ã€‚"
#: doc/classes/AnimationNode.xml:218
msgid ""
@@ -5227,32 +5587,39 @@ msgid ""
"[AnimationNodeBlendSpace1D], [AnimationNodeBlendSpace2D], "
"[AnimationNodeStateMachine], and [AnimationNodeBlendTree]."
msgstr ""
+"ã“ã®ã‚¯ãƒ©ã‚¹ã‚’継承ã—ã¦ã„ã¦å†…部ツリーをæŒã¤ãƒŽãƒ¼ãƒ‰ã®ã€ã„ãšã‚Œã‹ã®ãƒŽãƒ¼ãƒ‰ãŒå¤‰åŒ–ã—ãŸ"
+"ã¨ãã«ç™ºä¿¡ã—ã¾ã™ã€‚ã“ã®ã‚·ã‚°ãƒŠãƒ«ã‚’発信ã™ã‚‹ãƒŽãƒ¼ãƒ‰ã¯ã€"
+"[AnimationNodeBlendSpace1D]ã€[AnimationNodeBlendSpace2D]ã€"
+"[AnimationNodeStateMachine]ã€ãŠã‚ˆã³ [AnimationNodeBlendTree] ã§ã™ã€‚"
#: doc/classes/AnimationNode.xml:224
msgid "Do not use filtering."
-msgstr ""
+msgstr "フィルタリングã¯æœªä½¿ç”¨ã€‚"
#: doc/classes/AnimationNode.xml:227
msgid "Paths matching the filter will be allowed to pass."
-msgstr ""
+msgstr "フィルタã«ãƒžãƒƒãƒã™ã‚‹ãƒ‘スã®é€šéŽã‚’許å¯ã€‚"
#: doc/classes/AnimationNode.xml:230
msgid "Paths matching the filter will be discarded."
-msgstr ""
+msgstr "フィルタã«ãƒžãƒƒãƒã™ã‚‹ãƒ‘スã®é€šéŽã‚’æ‹’å¦ã€‚"
#: doc/classes/AnimationNode.xml:233
msgid "Paths matching the filter will be blended (by the blend value)."
-msgstr ""
+msgstr "フィルターã«ãƒžãƒƒãƒã—ãŸãƒ‘スã¯ãƒ–レンドã•ã‚Œã‚‹ (ブレンド値ã«ã¦)。"
#: doc/classes/AnimationNodeAdd2.xml:4
msgid "Blends two animations additively inside of an [AnimationNodeBlendTree]."
msgstr ""
+"[AnimationNodeBlendTree] 内ã§2ã¤ã®ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã‚’加算ã—ã¦ãƒ–レンドã—ã¾ã™ã€‚"
#: doc/classes/AnimationNodeAdd2.xml:7
msgid ""
"A resource to add to an [AnimationNodeBlendTree]. Blends two animations "
"additively based on an amount value in the [code][0.0, 1.0][/code] range."
msgstr ""
+"[AnimationNodeBlendTree] ã«è¿½åŠ ã™ã‚‹ãƒªã‚½ãƒ¼ã‚¹ã§ã™ã€‚[code][0.0, 1.0][/code] ã®ç¯„"
+"囲ã«åŸºã¥ãã€2ã¤ã®ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã‚’加算ブレンドã—ã¾ã™ã€‚"
#: doc/classes/AnimationNodeAdd2.xml:16 doc/classes/AnimationNodeAdd3.xml:20
#: doc/classes/AnimationNodeBlend2.xml:16
@@ -5262,12 +5629,15 @@ msgid ""
"code] when calling [method AnimationNode.blend_input], forcing the blended "
"animations to update every frame."
msgstr ""
+"[code]true[/code] ã®å ´åˆã€[method AnimationNode.blend_input] を呼ã³å‡ºã™éš›ã«"
+"[code]optimization[/code] ã‚’ [code]false[/code] ã«è¨­å®šã—ã€ãƒ–レンドã•ã‚ŒãŸã‚¢ãƒ‹"
+"メーションをフレームã”ã¨ã«å¼·åˆ¶çš„ã«æ›´æ–°ã—ã¾ã™ã€‚"
#: doc/classes/AnimationNodeAdd3.xml:4
msgid ""
"Blends two of three animations additively inside of an "
"[AnimationNodeBlendTree]."
-msgstr ""
+msgstr "[AnimationNodeBlendTree] 内ã§2ã¤ã®ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã‚’加算ブレンドã—ã¾ã™ã€‚"
#: doc/classes/AnimationNodeAdd3.xml:7
msgid ""
@@ -5281,10 +5651,18 @@ msgid ""
"- A +add animation to blend with when the blend amount is in the [code][0.0, "
"1.0][/code] range"
msgstr ""
+"[AnimationNodeBlendTree] ã«è¿½åŠ ã™ã‚‹ãƒªã‚½ãƒ¼ã‚¹ã§ã™ã€‚[code][-1.0, 1.0][/code] ã®"
+"範囲ã«åŸºã¥ã„ã¦ã€3ã¤ã®ã†ã¡2ã¤ã®ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã‚’加算ブレンドã—ã¾ã™ã€‚\n"
+"ã“ã®ãƒŽãƒ¼ãƒ‰ã«ã¯3ã¤ã®å…¥åŠ›ãŒã‚ã‚Šã¾ã™:\n"
+"- 追加対象ã¨ãªã‚‹ãƒ™ãƒ¼ã‚¹ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³\n"
+"- ブレンドé‡ãŒ [code][-1.0, 0.0][/code] ã®ç¯„囲内ã«ã‚ã‚‹ã¨ãã«ãƒ–レンドã™ã‚‹ -"
+"add アニメーション\n"
+"- ブレンドé‡ãŒ [code][0.0, 1.0][/code] ã®ç¯„囲内ã«ã‚ã‚‹ã¨ãã«ãƒ–レンドã™ã‚‹ +add "
+"アニメーション"
#: doc/classes/AnimationNodeAnimation.xml:4
msgid "Input animation to use in an [AnimationNodeBlendTree]."
-msgstr ""
+msgstr "[AnimationNodeBlendTree] 内ã§ä½¿ç”¨ã™ã‚‹å…¥åŠ›ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã€‚"
#: doc/classes/AnimationNodeAnimation.xml:7
msgid ""
@@ -5292,28 +5670,36 @@ msgid ""
"set using the [member animation] property. Use it as an input for "
"[AnimationNode] that blend animations together."
msgstr ""
+"[AnimationNodeBlendTree] ã«è¿½åŠ ã™ã‚‹ãƒªã‚½ãƒ¼ã‚¹ã§ã™ã€‚[member animation] プロパ"
+"ティを使用ã™ã‚‹å‡ºåŠ›ã‚»ãƒƒãƒˆãŒã²ã¨ã¤ã ã‘ã‚ã‚Šã¾ã™ã€‚アニメーションをブレンドã™ã‚‹ "
+"[AnimationNode] ã®å…¥åŠ›ã¨ã—ã¦ä½¿ç”¨ã—ã¾ã™ã€‚"
#: doc/classes/AnimationNodeAnimation.xml:16
msgid ""
"Animation to use as an output. It is one of the animations provided by "
"[member AnimationTree.anim_player]."
msgstr ""
+"出力ã¨ã—ã¦ä½¿ç”¨ã™ã‚‹ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã€‚[member AnimationTree.anim_player] ãŒç”¨æ„ã—"
+"ãŸã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã®ã²ã¨ã¤ã§ã™ã€‚"
#: doc/classes/AnimationNodeBlend2.xml:4
msgid "Blends two animations linearly inside of an [AnimationNodeBlendTree]."
-msgstr ""
+msgstr "[AnimationNodeBlendTree] 内ã§2ã¤ã®ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã‚’線形ブレンドã—ã¾ã™ã€‚"
#: doc/classes/AnimationNodeBlend2.xml:7
msgid ""
"A resource to add to an [AnimationNodeBlendTree]. Blends two animations "
"linearly based on an amount value in the [code][0.0, 1.0][/code] range."
msgstr ""
+"[AnimationNodeBlendTree] ã«è¿½åŠ ã™ã‚‹ãƒªã‚½ãƒ¼ã‚¹ã§ã™ã€‚2ã¤ã®ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã‚’ [code]"
+"[0.0, 1.0][/code] ã®ç¯„囲ã«åŸºã¥ã„ã¦ç·šå½¢ãƒ–レンドã—ã¾ã™ã€‚"
#: doc/classes/AnimationNodeBlend3.xml:4
msgid ""
"Blends two of three animations linearly inside of an "
"[AnimationNodeBlendTree]."
msgstr ""
+"[AnimationNodeBlendTree] 内ã«ã‚ã‚‹3ã¤ã®ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã‚’線形ブレンドã—ã¾ã™ã€‚"
#: doc/classes/AnimationNodeBlend3.xml:7
msgid ""
@@ -5327,12 +5713,23 @@ msgid ""
"- A +blend animation to blend with when the blend amount is in the [code]"
"[0.0, 1.0][/code] range"
msgstr ""
+"[AnimationNodeBlendTree] ã«è¿½åŠ ã™ã‚‹ãƒªã‚½ãƒ¼ã‚¹ã§ã™ã€‚[code][-1.0, 1.0][/code] ã®"
+"範囲ã«åŸºã¥ã„ã¦ã€3ã¤ã®ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã®ã†ã¡2ã¤ã®ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã‚’線形ブレンドã—"
+"ã¾ã™ã€‚\n"
+"ã“ã®ãƒŽãƒ¼ãƒ‰ã«ã¯3ã¤ã®å…¥åŠ›ãŒã‚ã‚Šã¾ã™:\n"
+"- ベースã¨ãªã‚‹ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³\n"
+"- ブレンドé‡ãŒ [code][-1.0, 0.0][/code] ã®ç¯„囲内ã®ã¨ãã«ãƒ–レンドã™ã‚‹ -blend "
+"アニメーション。\n"
+"- ブレンドé‡ãŒ [code][0.0, 1.0][/code] ã®ç¯„囲内ã®ã¨ãã«ãƒ–レンドã™ã‚‹ +blend ã‚¢"
+"ニメーション"
#: doc/classes/AnimationNodeBlendSpace1D.xml:4
msgid ""
"Blends linearly between two of any number of [AnimationNode] of any type "
"placed on a virtual axis."
msgstr ""
+"仮想軸上ã«é…ç½®ã•ã‚ŒãŸä»»æ„ã®ç¨®é¡žã€ä»»æ„ã®æ•°ã® [AnimationNode] ã®ã†ã¡ã€2ã¤ã‚’ç·šå½¢"
+"ブレンドã—ã¾ã™ã€‚"
#: doc/classes/AnimationNodeBlendSpace1D.xml:7
msgid ""
@@ -5344,6 +5741,11 @@ msgid ""
"You can set the extents of the axis using the [member min_space] and [member "
"max_space]."
msgstr ""
+"[AnimationNodeBlendTree] ã«è¿½åŠ ã™ã‚‹ãƒªã‚½ãƒ¼ã‚¹ã§ã™ã€‚\n"
+"ã“ã‚Œã¯ä»®æƒ³è»¸ã§ã‚ã‚Šã€ã‚らゆる種類㮠[AnimationNode] ã‚’ [add_blend_point "
+"method] を使ã£ã¦è¿½åŠ ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚\n"
+"ノードã®ç¾åœ¨å€¤ã«æœ€ã‚‚è¿‘ã„2ã¤ã® [AnimationNode] ã®ç·šå½¢ãƒ–レンドを出力ã—ã¾ã™ã€‚\n"
+"軸ã®ç¯„囲㯠[member min_space] ãŠã‚ˆã³ [member max_space] ã§è¨­å®šã§ãã¾ã™ã€‚"
#: doc/classes/AnimationNodeBlendSpace1D.xml:26
msgid ""
@@ -5353,25 +5755,31 @@ msgid ""
"for [code]at_index[/code], the point is inserted at the end of the blend "
"points array."
msgstr ""
+"仮想軸上㮠[code]node[/code] を表ã™æ–°ã—ã„ãƒã‚¤ãƒ³ãƒˆã‚’ã€[code]pos[/code] ã§æŒ‡å®š"
+"ã—ãŸä½ç½®ã«è¿½åŠ ã—ã¾ã™ã€‚引数 [code]at_index[/code] ã§æŒ‡å®šã—ãŸã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹ã«æŒ¿å…¥"
+"ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚[code]at_index[/code] ã«ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ã‚’使用ã—ãŸå ´åˆã¯ã€ãƒ–"
+"レンドãƒã‚¤ãƒ³ãƒˆé…列ã®æœ€å¾Œã«æŒ¿å…¥ã•ã‚Œã¾ã™ã€‚"
#: doc/classes/AnimationNodeBlendSpace1D.xml:33
msgid "Returns the number of points on the blend axis."
-msgstr ""
+msgstr "ブレンド軸上ã®ãƒã‚¤ãƒ³ãƒˆã®æ•°ã‚’è¿”ã—ã¾ã™ã€‚"
#: doc/classes/AnimationNodeBlendSpace1D.xml:42
msgid ""
"Returns the [AnimationNode] referenced by the point at index [code]point[/"
"code]."
msgstr ""
+"インデックス [code]point[/code] ã®ãƒã‚¤ãƒ³ãƒˆãŒå‚ç…§ã—ã¦ã„ã‚‹ [AnimationNode] ã‚’è¿”"
+"ã—ã¾ã™ã€‚"
#: doc/classes/AnimationNodeBlendSpace1D.xml:51
#: doc/classes/AnimationNodeBlendSpace2D.xml:65
msgid "Returns the position of the point at index [code]point[/code]."
-msgstr ""
+msgstr "インデックス [code]point[/code] ã®ãƒã‚¤ãƒ³ãƒˆã®ä½ç½®ã‚’è¿”ã—ã¾ã™ã€‚"
#: doc/classes/AnimationNodeBlendSpace1D.xml:60
msgid "Removes the point at index [code]point[/code] from the blend axis."
-msgstr ""
+msgstr "ブレンド軸ã‹ã‚‰ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹ [code]point[/code] ã®ãƒã‚¤ãƒ³ãƒˆã‚’削除ã—ã¾ã™ã€‚"
#: doc/classes/AnimationNodeBlendSpace1D.xml:71
#: doc/classes/AnimationNodeBlendSpace2D.xml:112
@@ -5379,6 +5787,8 @@ msgid ""
"Changes the [AnimationNode] referenced by the point at index [code]point[/"
"code]."
msgstr ""
+"インデックス [code]point[/code] ã®ãƒã‚¤ãƒ³ãƒˆãŒå‚ç…§ã™ã‚‹ [AnimationNode] を変更ã—"
+"ã¾ã™ã€‚"
#: doc/classes/AnimationNodeBlendSpace1D.xml:82
#: doc/classes/AnimationNodeBlendSpace2D.xml:123
@@ -5386,32 +5796,39 @@ msgid ""
"Updates the position of the point at index [code]point[/code] on the blend "
"axis."
msgstr ""
+"ブレンド軸上ã«ã‚るインデックス [code]point[/code] ã®ãƒã‚¤ãƒ³ãƒˆã®ä½ç½®ã‚’æ›´æ–°ã—ã¾"
+"ã™ã€‚"
#: doc/classes/AnimationNodeBlendSpace1D.xml:88
msgid ""
"The blend space's axis's upper limit for the points' position. See [method "
"add_blend_point]."
msgstr ""
+"ブレンド空間軸ã®ãƒã‚¤ãƒ³ãƒˆä½ç½®ã®ä¸Šé™ã€‚[method add_blend_point] ã‚’å‚ç…§ã—ã¦ãã ã•"
+"ã„。"
#: doc/classes/AnimationNodeBlendSpace1D.xml:91
msgid ""
"The blend space's axis's lower limit for the points' position. See [method "
"add_blend_point]."
msgstr ""
+"ブレンド空間軸ã®ãƒã‚¤ãƒ³ãƒˆä½ç½®ã®ä¸‹é™ã€‚[method add_blend_point] ã‚’å‚ç…§ã—ã¦ãã ã•"
+"ã„。"
#: doc/classes/AnimationNodeBlendSpace1D.xml:94
msgid "Position increment to snap to when moving a point on the axis."
-msgstr ""
+msgstr "軸上ã§ãƒã‚¤ãƒ³ãƒˆã‚’移動ã™ã‚‹ã¨ãã«ã‚¹ãƒŠãƒƒãƒ—ã™ã‚‹ä½ç½®å¢—加é‡ã€‚"
#: doc/classes/AnimationNodeBlendSpace1D.xml:97
msgid "Label of the virtual axis of the blend space."
-msgstr ""
+msgstr "ブレンド空間ã®ä»®æƒ³è»¸ã®ãƒ©ãƒ™ãƒ«ã€‚"
#: doc/classes/AnimationNodeBlendSpace2D.xml:4
msgid ""
"Blends linearly between three [AnimationNode] of any type placed in a 2D "
"space."
msgstr ""
+"2D空間ã«é…ç½®ã•ã‚ŒãŸä»»æ„ã®ã‚¿ã‚¤ãƒ—ã® [AnimationNode] ã‚’3ã¤ç·šå½¢ãƒ–レンドã—ã¾ã™ã€‚"
#: doc/classes/AnimationNodeBlendSpace2D.xml:7
msgid ""
@@ -5423,6 +5840,13 @@ msgid ""
"[code]true[/code]. Otherwise, use [method add_triangle] and [method "
"remove_triangle] to create up the blend space by hand."
msgstr ""
+"[AnimationNodeBlendTree] ã«è¿½åŠ ã™ã‚‹ãƒªã‚½ãƒ¼ã‚¹ã§ã™ã€‚\n"
+"ã“ã®ãƒŽãƒ¼ãƒ‰ã‚’使ã†ã¨ã€[Vector2] ã®é‡ã¿ã‚’使ã£ã¦3ã¤ã®ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³é–“を線形ブレン"
+"ドã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚\n"
+"ブレンド空間ã«ã¯ [method add_blend_point] ã§é ‚点を追加ã§ãã€[member "
+"auto_triangles] ã‚’ [code]true[/code] ã«è¨­å®šã™ã‚‹ã“ã¨ã§è‡ªå‹•çš„ã«ä¸‰è§’å½¢ã«ã™ã‚‹ã“ã¨"
+"ãŒã§ãã¾ã™ã€‚ãれ以外ã®å ´åˆã¯ã€[method add_triangle] 㨠[method "
+"remove_triangle] を使ã£ã¦ãƒ–レンド空間を手作業ã§ä½œæˆã—ã¾ã™ã€‚"
#: doc/classes/AnimationNodeBlendSpace2D.xml:25
msgid ""
@@ -5432,6 +5856,10 @@ msgid ""
"[code]at_index[/code], the point is inserted at the end of the blend points "
"array."
msgstr ""
+"[code]pos[/code] ã§è¨­å®šã—ãŸä½ç½®ã«ã€[code]node[/code] を表ã™æ–°ã—ã„ãƒã‚¤ãƒ³ãƒˆã‚’追"
+"加ã—ã¾ã™ã€‚引数 [code]at_index[/code] ã§æŒ‡å®šã—ãŸã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹ã«æŒ¿å…¥ã§ãã¾ã™ã€‚"
+"[code]at_index[/code] ã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ã‚’使用ã—ãŸå ´åˆã€ãã®ãƒã‚¤ãƒ³ãƒˆã¯ãƒ–レンドãƒ"
+"イントé…列ã®æœ€å¾Œã«æŒ¿å…¥ã•ã‚Œã¾ã™ã€‚"
#: doc/classes/AnimationNodeBlendSpace2D.xml:40
msgid ""
@@ -5441,35 +5869,46 @@ msgid ""
"default value for [code]at_index[/code], the point is inserted at the end of "
"the blend points array."
msgstr ""
+"3ã¤ã®ãƒã‚¤ãƒ³ãƒˆ [code]x[/code]ã€[code]y[/code]ã€[code]z[/code] ã‹ã‚‰ãªã‚‹æ–°ã—ã„三"
+"角形を作æˆã—ã¾ã™ã€‚三角形ã¯é‡ãªã‚Šåˆã†ã“ã¨ãŒã§ãã¾ã™ã€‚三角形を特定ã®ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯"
+"スã«æŒ¿å…¥ã™ã‚‹ã«ã¯ã€[code]at_index[/code] 引数を使用ã—ã¾ã™ã€‚[code]at_index[/"
+"code] ã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ã‚’使用ã—ãŸå ´åˆã€ãã®ãƒã‚¤ãƒ³ãƒˆã¯ãƒ–レンドãƒã‚¤ãƒ³ãƒˆé…列ã®æœ€å¾Œ"
+"ã«æŒ¿å…¥ã•ã‚Œã¾ã™ã€‚"
#: doc/classes/AnimationNodeBlendSpace2D.xml:47
msgid "Returns the number of points in the blend space."
-msgstr ""
+msgstr "ブレンド空間内ã®ãƒã‚¤ãƒ³ãƒˆæ•°ã‚’è¿”ã—ã¾ã™ã€‚"
#: doc/classes/AnimationNodeBlendSpace2D.xml:56
msgid ""
"Returns the [AnimationRootNode] referenced by the point at index "
"[code]point[/code]."
msgstr ""
+"インデックス [code]point[/code] ã®ãƒã‚¤ãƒ³ãƒˆãŒå‚ç…§ã™ã‚‹ [AnimationRootNode] ã‚’è¿”"
+"ã—ã¾ã™ã€‚"
#: doc/classes/AnimationNodeBlendSpace2D.xml:72
msgid "Returns the number of triangles in the blend space."
-msgstr ""
+msgstr "ブレンド空間内ã®ä¸‰è§’å½¢ã®æ•°ã‚’è¿”ã—ã¾ã™ã€‚"
#: doc/classes/AnimationNodeBlendSpace2D.xml:83
msgid ""
"Returns the position of the point at index [code]point[/code] in the "
"triangle of index [code]triangle[/code]."
msgstr ""
+"インデックス [code]triangle[/code] ã®ä¸‰è§’形内ã«ã‚ã‚‹ã€ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹ "
+"[code]point[/code] ã®ãƒã‚¤ãƒ³ãƒˆã®ä½ç½®ã‚’è¿”ã—ã¾ã™ã€‚"
#: doc/classes/AnimationNodeBlendSpace2D.xml:92
msgid "Removes the point at index [code]point[/code] from the blend space."
msgstr ""
+"ブレンド空間ã‹ã‚‰ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹ [code]point[/code] ã®ãƒã‚¤ãƒ³ãƒˆã‚’削除ã—ã¾ã™ã€‚"
#: doc/classes/AnimationNodeBlendSpace2D.xml:101
msgid ""
"Removes the triangle at index [code]triangle[/code] from the blend space."
msgstr ""
+"ブレンド空間ã‹ã‚‰ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹ [code]triangle[/code] ã®ä¸‰è§’形を削除ã—ã¾ã™ã€‚"
#: doc/classes/AnimationNodeBlendSpace2D.xml:129
msgid ""
@@ -5477,143 +5916,166 @@ msgid ""
"mesh updates every time you add or remove points with [method "
"add_blend_point] and [method remove_blend_point]."
msgstr ""
+"[code]true[/code]ã®å ´åˆã¯ã€ãƒ–レンド空間ã¯è‡ªå‹•çš„ã«ä¸‰è§’å½¢ã«ãªã‚Šã¾ã™ã€‚[method "
+"add_blend_point] 㨠[method remove_blend_point] ã§ãƒã‚¤ãƒ³ãƒˆã‚’追加ã¾ãŸã¯å‰Šé™¤ã™"
+"ã‚‹ãŸã³ã«ãƒ¡ãƒƒã‚·ãƒ¥ãŒæ›´æ–°ã•ã‚Œã¾ã™ã€‚"
#: doc/classes/AnimationNodeBlendSpace2D.xml:132
msgid ""
"Controls the interpolation between animations. See [enum BlendMode] "
"constants."
msgstr ""
+"アニメーション間ã®è£œé–“を制御ã—ã¾ã™ã€‚[enum BlendMode] 定数をå‚ç…§ã—ã¦ãã ã•ã„。"
#: doc/classes/AnimationNodeBlendSpace2D.xml:135
msgid ""
"The blend space's X and Y axes' upper limit for the points' position. See "
"[method add_blend_point]."
msgstr ""
+"ブレンド空間ã®X軸ãŠã‚ˆã³Y軸ã«ãŠã‘ã‚‹ãƒã‚¤ãƒ³ãƒˆä½ç½®ã®ä¸Šé™ã€‚[method "
+"add_blend_point] ã‚’å‚ç…§ã—ã¦ãã ã•ã„。"
#: doc/classes/AnimationNodeBlendSpace2D.xml:138
msgid ""
"The blend space's X and Y axes' lower limit for the points' position. See "
"[method add_blend_point]."
msgstr ""
+"ブレンド空間ã®X軸ãŠã‚ˆã³Y軸ã«ãŠã‘ã‚‹ãƒã‚¤ãƒ³ãƒˆä½ç½®ã®ä¸‹é™ã€‚[method "
+"add_blend_point] ã‚’å‚ç…§ã—ã¦ãã ã•ã„。"
#: doc/classes/AnimationNodeBlendSpace2D.xml:141
msgid "Position increment to snap to when moving a point."
-msgstr ""
+msgstr "ãƒã‚¤ãƒ³ãƒˆã®ç§»å‹•æ™‚ã«ã‚¹ãƒŠãƒƒãƒ—ã™ã‚‹ä½ç½®ã®å¢—加分。"
#: doc/classes/AnimationNodeBlendSpace2D.xml:144
msgid "Name of the blend space's X axis."
-msgstr ""
+msgstr "ブレンド空間ã®X軸ã®åå‰ã€‚"
#: doc/classes/AnimationNodeBlendSpace2D.xml:147
msgid "Name of the blend space's Y axis."
-msgstr ""
+msgstr "ブレンド空間ã®Y軸ã®åå‰ã€‚"
#: doc/classes/AnimationNodeBlendSpace2D.xml:153
msgid ""
"Emitted every time the blend space's triangles are created, removed, or when "
"one of their vertices changes position."
msgstr ""
+"ブレンドスペースã®ä¸‰è§’å½¢ã®ä½œæˆã€å‰Šé™¤ã€ãŠã‚ˆã³é ‚点ã®ä½ç½®ãŒå¤‰ã‚ã‚‹ãŸã³ã«ç™ºä¿¡ã•ã‚Œ"
+"ã¾ã™ã€‚"
#: doc/classes/AnimationNodeBlendSpace2D.xml:159
msgid "The interpolation between animations is linear."
-msgstr ""
+msgstr "アニメーション間ã®è£œé–“ã¯ç·šå½¢ã§ã™ã€‚"
#: doc/classes/AnimationNodeBlendSpace2D.xml:162
msgid ""
"The blend space plays the animation of the node the blending position is "
"closest to. Useful for frame-by-frame 2D animations."
msgstr ""
+"ã“ã®ãƒ–レンドスペースã§ã¯ã€ãƒ–レンドä½ç½®ãŒæœ€ã‚‚è¿‘ã„ノードã®ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã‚’å†ç”Ÿ"
+"ã—ã¾ã™ã€‚フレームå˜ä½ã®2Dアニメーションã«ä¾¿åˆ©ã§ã™ã€‚"
#: doc/classes/AnimationNodeBlendSpace2D.xml:165
msgid ""
"Similar to [constant BLEND_MODE_DISCRETE], but starts the new animation at "
"the last animation's playback position."
msgstr ""
+"[constant BLEND_MODE_DISCRETE] ã¨ä¼¼ã¦ã„ã¾ã™ãŒã€æœ€å¾Œã®ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã®å†ç”Ÿä½ç½®"
+"ã‹ã‚‰æ–°ã—ã„アニメーションを開始ã—ã¾ã™ã€‚"
#: doc/classes/AnimationNodeBlendTree.xml:4
msgid "[AnimationTree] node resource that contains many blend type nodes."
-msgstr ""
+msgstr "ブレンドタイプã®ãƒŽãƒ¼ãƒ‰ã‚’多数å«ã‚€ [AnimationTree] ノードリソース。"
#: doc/classes/AnimationNodeBlendTree.xml:7
msgid ""
"This node may contain a sub-tree of any other blend type nodes, such as mix, "
"blend2, blend3, one shot, etc. This is one of the most commonly used roots."
msgstr ""
+"ã“ã®ãƒŽãƒ¼ãƒ‰ã¯ã€mixã€blend2ã€blend3ã€ãƒ¯ãƒ³ã‚·ãƒ§ãƒƒãƒˆãªã©ã€ä»–ã®ä»»æ„ã®ãƒ–レンドタイプ"
+"ã®ãƒŽãƒ¼ãƒ‰ã‚’サブツリーã¨ã—ã¦å«ã‚€ã“ã¨ãŒã§ãã¾ã™ã€‚ã“ã‚Œã¯ã€ä¸€èˆ¬çš„ã«ã‚ˆã使用ã•ã‚Œã‚‹"
+"ルートã®1ã¤ã§ã™ã€‚"
#: doc/classes/AnimationNodeBlendTree.xml:23
msgid ""
"Adds an [AnimationNode] at the given [code]position[/code]. The [code]name[/"
"code] is used to identify the created sub-node later."
msgstr ""
+"指定ã•ã‚ŒãŸ [code]position[/code] ã« [AnimationNode] を追加ã—ã¾ã™ã€‚"
+"[code]name[/code] ã¯ã€ä½œæˆã•ã‚ŒãŸã‚µãƒ–ノードを後ã§è­˜åˆ¥ã™ã‚‹ãŸã‚ã«ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚"
#: doc/classes/AnimationNodeBlendTree.xml:36
msgid ""
"Connects the output of an [AnimationNode] as input for another "
"[AnimationNode], at the input port specified by [code]input_index[/code]."
msgstr ""
+"ã‚ã‚‹ [AnimationNode] ã®å‡ºåŠ›ã‚’ã€[code]input_index[/code] ã§æŒ‡å®šã•ã‚ŒãŸå…¥åŠ›ãƒãƒ¼"
+"トã«ã€åˆ¥ã® [AnimationNode] ã®å…¥åŠ›ã¨ã—ã¦æŽ¥ç¶šã—ã¾ã™ã€‚"
#: doc/classes/AnimationNodeBlendTree.xml:47
msgid "Disconnects the node connected to the specified input."
-msgstr ""
+msgstr "指定ã•ã‚ŒãŸå…¥åŠ›ã«æŽ¥ç¶šã•ã‚Œã¦ã„るノードを切断ã—ã¾ã™ã€‚"
#: doc/classes/AnimationNodeBlendTree.xml:56
msgid "Returns the sub-node with the specified [code]name[/code]."
-msgstr ""
+msgstr "指定ã—㟠[code]name[/code] ã®ã‚µãƒ–ノードを返ã—ã¾ã™ã€‚"
#: doc/classes/AnimationNodeBlendTree.xml:65
msgid ""
"Returns the position of the sub-node with the specified [code]name[/code]."
-msgstr ""
+msgstr "指定ã—ãŸåå‰ [code]name[/code] ã®ã‚µãƒ–ノードã®ä½ç½®ã‚’è¿”ã—ã¾ã™ã€‚"
#: doc/classes/AnimationNodeBlendTree.xml:74
msgid ""
"Returns [code]true[/code] if a sub-node with specified [code]name[/code] "
"exists."
msgstr ""
+"指定ã•ã‚ŒãŸåå‰ [code]name[/code] ã®ã‚µãƒ–ノードãŒå­˜åœ¨ã™ã‚‹å ´åˆã€[code]true[/"
+"code] ã‚’è¿”ã—ã¾ã™ã€‚"
#: doc/classes/AnimationNodeBlendTree.xml:83
msgid "Removes a sub-node."
-msgstr ""
+msgstr "サブノードを除去ã—ã¾ã™ã€‚"
#: doc/classes/AnimationNodeBlendTree.xml:94
msgid "Changes the name of a sub-node."
-msgstr ""
+msgstr "サブノードã®åå‰ã‚’変更ã—ã¾ã™ã€‚"
#: doc/classes/AnimationNodeBlendTree.xml:105
msgid "Modifies the position of a sub-node."
-msgstr ""
+msgstr "サブノードã®ä½ç½®ã‚’変更ã—ã¾ã™ã€‚"
#: doc/classes/AnimationNodeBlendTree.xml:111
msgid "The global offset of all sub-nodes."
-msgstr ""
+msgstr "ã™ã¹ã¦ã®ã‚µãƒ–ノードã®ã‚°ãƒ­ãƒ¼ãƒãƒ«ã‚ªãƒ•ã‚»ãƒƒãƒˆã€‚"
#: doc/classes/AnimationNodeBlendTree.xml:116
msgid "The connection was successful."
-msgstr ""
+msgstr "接続æˆåŠŸã€‚"
#: doc/classes/AnimationNodeBlendTree.xml:119
msgid "The input node is [code]null[/code]."
-msgstr ""
+msgstr "入力ノード㌠[code]null[/code]。"
#: doc/classes/AnimationNodeBlendTree.xml:122
msgid "The specified input port is out of range."
-msgstr ""
+msgstr "指定ã•ã‚ŒãŸå…¥åŠ›ãƒãƒ¼ãƒˆãŒç¯„囲外。"
#: doc/classes/AnimationNodeBlendTree.xml:125
msgid "The output node is [code]null[/code]."
-msgstr ""
+msgstr "出力ノード㌠[code]null[/code]。"
#: doc/classes/AnimationNodeBlendTree.xml:128
msgid "Input and output nodes are the same."
-msgstr ""
+msgstr "入力ã¨å‡ºåŠ›ãƒŽãƒ¼ãƒ‰ãŒåŒä¸€ã€‚"
#: doc/classes/AnimationNodeBlendTree.xml:131
msgid "The specified connection already exists."
-msgstr ""
+msgstr "指定ã•ã‚ŒãŸæŽ¥ç¶šã¯å­˜åœ¨æ¸ˆã¿ã€‚"
#: doc/classes/AnimationNodeOneShot.xml:4
msgid "Plays an animation once in [AnimationNodeBlendTree]."
-msgstr ""
+msgstr "[AnimationNodeBlendTree] 内ã®ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã‚’1回å†ç”Ÿã—ã¾ã™ã€‚"
#: doc/classes/AnimationNodeOneShot.xml:7
msgid ""
@@ -5621,16 +6083,21 @@ msgid ""
"sub-animation and return once it finishes. Blend times for fading in and out "
"can be customized, as well as filters."
msgstr ""
+"[AnimationNodeBlendTree] ã«è¿½åŠ ã™ã‚‹ãƒªã‚½ãƒ¼ã‚¹ã€‚ã“ã®ãƒŽãƒ¼ãƒ‰ã¯ã‚µãƒ–アニメーションを"
+"実行ã—ã€çµ‚了ã™ã‚‹ã¨æˆ»ã‚Šã¾ã™ã€‚フェードインã¨ãƒ•ã‚§ãƒ¼ãƒ‰ã‚¢ã‚¦ãƒˆã®ãƒ–レンド時間やフィ"
+"ルターをカスタマイズã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚"
#: doc/classes/AnimationNodeOneShot.xml:30
msgid ""
"If [code]true[/code], the sub-animation will restart automatically after "
"finishing."
msgstr ""
+"[code]true[/code] ã®å ´åˆã€ã‚µãƒ–アニメーションã®çµ‚了後ã«è‡ªå‹•çš„ã«å†åº¦å†ç”Ÿã—ã¾"
+"ã™ã€‚"
#: doc/classes/AnimationNodeOneShot.xml:33
msgid "The delay after which the automatic restart is triggered, in seconds."
-msgstr ""
+msgstr "自動å†åº¦å†ç”ŸãŒé–‹å§‹ã•ã‚ŒãŸå¾Œã®é…延時間を秒å˜ä½ã§æŒ‡å®šã—ã¾ã™ã€‚"
#: doc/classes/AnimationNodeOneShot.xml:36
msgid ""
@@ -5638,14 +6105,16 @@ msgid ""
"seconds) between 0 and this value will be added to [member "
"autorestart_delay]."
msgstr ""
+"[member autorestart] ㌠[code]true[/code] ã®å ´åˆã€0ã‹ã‚‰ã“ã®å€¤ã®é–“ã§ãƒ©ãƒ³ãƒ€ãƒ ãª"
+"追加é…延時間 (秒å˜ä½) ㌠[member autorestart_delay] ã«è¿½åŠ ã•ã‚Œã¾ã™ã€‚"
#: doc/classes/AnimationNodeOutput.xml:4
msgid "Generic output node to be added to [AnimationNodeBlendTree]."
-msgstr ""
+msgstr "[AnimationNodeBlendTree] ã«è¿½åŠ ã™ã‚‹æ±Žç”¨å‡ºåŠ›ãƒŽãƒ¼ãƒ‰ã§ã™ã€‚"
#: doc/classes/AnimationNodeStateMachine.xml:4
msgid "State machine for control of animations."
-msgstr ""
+msgstr "アニメーションを制御ã™ã‚‹ãŸã‚ã®ã‚¹ãƒ†ãƒ¼ãƒˆãƒžã‚·ãƒ³ã§ã™ã€‚"
#: doc/classes/AnimationNodeStateMachine.xml:7
msgid ""
@@ -5660,6 +6129,15 @@ msgid ""
"state_machine.travel(\"some_state\")\n"
"[/codeblock]"
msgstr ""
+"グラフã§æŽ¥ç¶šã•ã‚Œã‚‹ã€ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã®çŠ¶æ…‹ã‚’表ã™è¤‡æ•°ã®ãƒŽãƒ¼ãƒ‰ã‚’å«ã¿ã¾ã™ã€‚ノード"
+"ã®é·ç§»ã¯ã€æœ€çŸ­ãƒ‘スアルゴリズムを使用ã—ã¦ã€è‡ªå‹•ã¾ãŸã¯ã‚³ãƒ¼ãƒ‰ã§è¨­å®šã§ãã¾ã™ã€‚プ"
+"ログラムã§åˆ¶å¾¡ã™ã‚‹ã«ã¯ã€[AnimationTree] ノードã‹ã‚‰ "
+"[AnimationNodeStateMachinePlayback] オブジェクトをå–å¾—ã—ã¦ãã ã•ã„。\n"
+"[b]例:[/b]\n"
+"[codeblock]\n"
+"var state_machine = $AnimationTree.get(\"parameters/playback\")\n"
+"state_machine.travel(\"some_state\")\n"
+"[/codeblock]"
#: doc/classes/AnimationNodeStateMachine.xml:28
msgid ""
@@ -5944,37 +6422,48 @@ msgid ""
"Triggers the [code]anim_to[/code] animation when the [code]anim_from[/code] "
"animation completes."
msgstr ""
+"[code]anim_from[/code] アニメーションãŒçµ‚了ã—ãŸã¨ãã€[code]anim_to[/code] ã‚¢"
+"ニメーションをå†ç”Ÿã—ã¾ã™ã€‚"
#: doc/classes/AnimationPlayer.xml:60
msgid ""
"[AnimationPlayer] caches animated nodes. It may not notice if a node "
"disappears; [method clear_caches] forces it to update the cache again."
msgstr ""
+"[AnimationPlayer] ã¯ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ãƒŽãƒ¼ãƒ‰ã‚’キャッシュã—ã¾ã™ã€‚ãã®ãƒŽãƒ¼ãƒ‰ãŒæ¶ˆãˆ"
+"ãŸå ´åˆã§ã‚‚æ°—ã¥ã‹ãªã„ã‹ã‚‚ã—ã‚Œã¾ã›ã‚“; [method clear_caches] ã¯å¼·åˆ¶çš„ã«ã‚­ãƒ£ãƒƒ"
+"シュをå†æ›´æ–°ã—ã¾ã™ã€‚"
#: doc/classes/AnimationPlayer.xml:67
msgid "Clears all queued, unplayed animations."
msgstr ""
+"キューã«å…¥ã£ã¦ã„ã‚‹ã€å†ç”Ÿã•ã‚Œã¦ã„ãªã„アニメーションをã™ã¹ã¦ã‚¯ãƒªã‚¢ã—ã¾ã™ã€‚"
#: doc/classes/AnimationPlayer.xml:76
msgid ""
"Returns the name of [code]animation[/code] or an empty string if not found."
msgstr ""
+"[code]animation[/code] ã®åå‰ã‚’è¿”ã—ã¾ã™ã€‚ã‚‚ã—ç„¡ã‘ã‚Œã°ã€ç©ºã®æ–‡å­—列を返ã—ã¾ã™ã€‚"
#: doc/classes/AnimationPlayer.xml:85
msgid ""
"Returns the [Animation] with key [code]name[/code] or [code]null[/code] if "
"not found."
msgstr ""
+"キー [code]name[/code] ã‚’æŒã¤ [Animation] ã‚’è¿”ã™ã‹ã€è¦‹ã¤ã‹ã‚‰ãªã„å ´åˆã¯ "
+"[code]null[/code] ã‚’è¿”ã—ã¾ã™ã€‚"
#: doc/classes/AnimationPlayer.xml:92
msgid "Returns the list of stored animation names."
-msgstr ""
+msgstr "æ ¼ç´ã•ã‚Œã¦ã„るアニメーションåã®ãƒªã‚¹ãƒˆã‚’è¿”ã—ã¾ã™ã€‚"
#: doc/classes/AnimationPlayer.xml:103
msgid ""
"Gets the blend time (in seconds) between two animations, referenced by their "
"names."
msgstr ""
+"åå‰ã«ã‚ˆã£ã¦å‚ç…§ã•ã‚Œã‚‹2ã¤ã®ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³é–“ã®ã€ãƒ–レンド時間 (秒) ã‚’å–å¾—ã—ã¾"
+"ã™ã€‚"
#: doc/classes/AnimationPlayer.xml:110
msgid ""
@@ -5983,6 +6472,9 @@ msgid ""
"[code]custom_speed[/code] argument specified when calling the [method play] "
"method."
msgstr ""
+"ç¾åœ¨ã®ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã®å®Ÿéš›ã®å†ç”Ÿé€Ÿåº¦ã‚’å–å¾—ã—ã¾ã™ã€‚å†ç”Ÿåœæ­¢æ™‚㯠0 ã«ãªã‚Šã¾ã™ã€‚"
+"ã“ã®é€Ÿåº¦ã¯ [member playback_speed] プロパティã«ã€[method play] メソッドã®å‘¼ã³"
+"出ã—時ã«æŒ‡å®šã•ã‚ŒãŸ [code]custom_speed[/code] 引数を掛ã‘åˆã‚ã›ãŸã‚‚ã®ã§ã™ã€‚"
#: doc/classes/AnimationPlayer.xml:117
msgid ""
@@ -6775,10 +7267,10 @@ msgstr ""
msgid ""
"Returns [code]true[/code] if the array contains the given value.\n"
"[codeblock]\n"
-"[\"inside\", 7].has(\"inside\") == true\n"
-"[\"inside\", 7].has(\"outside\") == false\n"
-"[\"inside\", 7].has(7) == true\n"
-"[\"inside\", 7].has(\"7\") == false\n"
+"print([\"inside\", 7].has(\"inside\")) # True\n"
+"print([\"inside\", 7].has(\"outside\")) # False\n"
+"print([\"inside\", 7].has(7)) # True\n"
+"print([\"inside\", 7].has(\"7\")) # False\n"
"[/codeblock]\n"
"[b]Note:[/b] This is equivalent to using the [code]in[/code] operator as "
"follows:\n"
@@ -6799,11 +7291,11 @@ msgid ""
"valid, or at the end of the array ([code]pos == size()[/code])."
msgstr ""
-#: doc/classes/Array.xml:265 doc/classes/PackedByteArray.xml:107
-#: doc/classes/PackedColorArray.xml:62 doc/classes/PackedFloat32Array.xml:63
-#: doc/classes/PackedFloat64Array.xml:63 doc/classes/PackedInt32Array.xml:63
-#: doc/classes/PackedInt64Array.xml:63 doc/classes/PackedStringArray.xml:62
-#: doc/classes/PackedVector2Array.xml:62 doc/classes/PackedVector3Array.xml:62
+#: doc/classes/Array.xml:265 doc/classes/PackedByteArray.xml:116
+#: doc/classes/PackedColorArray.xml:71 doc/classes/PackedFloat32Array.xml:72
+#: doc/classes/PackedFloat64Array.xml:72 doc/classes/PackedInt32Array.xml:72
+#: doc/classes/PackedInt64Array.xml:72 doc/classes/PackedStringArray.xml:71
+#: doc/classes/PackedVector2Array.xml:71 doc/classes/PackedVector3Array.xml:71
msgid "Reverses the order of the elements in the array."
msgstr ""
@@ -6833,8 +7325,8 @@ msgid ""
"code] if the array is empty."
msgstr ""
-#: doc/classes/Array.xml:302 doc/classes/PackedByteArray.xml:116
-#: doc/classes/PackedFloat32Array.xml:72 doc/classes/PackedFloat64Array.xml:72
+#: doc/classes/Array.xml:302 doc/classes/PackedByteArray.xml:125
+#: doc/classes/PackedFloat32Array.xml:81 doc/classes/PackedFloat64Array.xml:81
msgid "Appends an element at the end of the array."
msgstr ""
@@ -6842,11 +7334,11 @@ msgstr ""
msgid "Adds an element at the beginning of the array."
msgstr ""
-#: doc/classes/Array.xml:320 doc/classes/PackedByteArray.xml:125
-#: doc/classes/PackedColorArray.xml:80 doc/classes/PackedFloat32Array.xml:81
-#: doc/classes/PackedFloat64Array.xml:81 doc/classes/PackedInt32Array.xml:81
-#: doc/classes/PackedInt64Array.xml:81 doc/classes/PackedStringArray.xml:80
-#: doc/classes/PackedVector2Array.xml:80 doc/classes/PackedVector3Array.xml:80
+#: doc/classes/Array.xml:320 doc/classes/PackedByteArray.xml:134
+#: doc/classes/PackedColorArray.xml:89 doc/classes/PackedFloat32Array.xml:90
+#: doc/classes/PackedFloat64Array.xml:90 doc/classes/PackedInt32Array.xml:90
+#: doc/classes/PackedInt64Array.xml:90 doc/classes/PackedStringArray.xml:89
+#: doc/classes/PackedVector2Array.xml:89 doc/classes/PackedVector3Array.xml:89
msgid "Removes an element from the array by index."
msgstr ""
@@ -7129,7 +7621,7 @@ msgid ""
msgstr ""
#: doc/classes/ArrayMesh.xml:235 doc/classes/Mesh.xml:210
-#: doc/classes/RenderingServer.xml:3115
+#: doc/classes/RenderingServer.xml:3111
msgid "Represents the size of the [enum ArrayType] enum."
msgstr ""
@@ -8946,7 +9438,9 @@ msgid ""
msgstr ""
#: doc/classes/BaseButton.xml:16
-msgid "Called when the button is pressed."
+msgid ""
+"Called when the button is pressed. If you need to know the button's pressed "
+"state (and [member toggle_mode] is active), use [method _toggled] instead."
msgstr ""
#: doc/classes/BaseButton.xml:25
@@ -9040,43 +9534,45 @@ msgstr ""
msgid ""
"Emitted when the button is toggled or pressed. This is on [signal "
"button_down] if [member action_mode] is [constant ACTION_MODE_BUTTON_PRESS] "
-"and on [signal button_up] otherwise."
+"and on [signal button_up] otherwise.\n"
+"If you need to know the button's pressed state (and [member toggle_mode] is "
+"active), use [signal toggled] instead."
msgstr ""
-#: doc/classes/BaseButton.xml:98
+#: doc/classes/BaseButton.xml:99
msgid ""
"Emitted when the button was just toggled between pressed and normal states "
"(only if [member toggle_mode] is active). The new state is contained in the "
"[code]button_pressed[/code] argument."
msgstr ""
-#: doc/classes/BaseButton.xml:104
+#: doc/classes/BaseButton.xml:105
msgid ""
"The normal state (i.e. not pressed, not hovered, not toggled and enabled) of "
"buttons."
msgstr ""
-#: doc/classes/BaseButton.xml:107
+#: doc/classes/BaseButton.xml:108
msgid "The state of buttons are pressed."
msgstr ""
-#: doc/classes/BaseButton.xml:110
+#: doc/classes/BaseButton.xml:111
msgid "The state of buttons are hovered."
msgstr ""
-#: doc/classes/BaseButton.xml:113
+#: doc/classes/BaseButton.xml:114
msgid "The state of buttons are disabled."
msgstr ""
-#: doc/classes/BaseButton.xml:116
+#: doc/classes/BaseButton.xml:117
msgid "The state of buttons are both hovered and pressed."
msgstr ""
-#: doc/classes/BaseButton.xml:119
+#: doc/classes/BaseButton.xml:120
msgid "Require just a press to consider the button clicked."
msgstr ""
-#: doc/classes/BaseButton.xml:122
+#: doc/classes/BaseButton.xml:123
msgid ""
"Require a press and a subsequent release before considering the button "
"clicked."
@@ -9769,22 +10265,22 @@ msgstr ""
msgid "Represents the size of the [enum TextureParam] enum."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:451 doc/classes/RenderingServer.xml:3657
-#: doc/classes/Viewport.xml:390
+#: doc/classes/BaseMaterial3D.xml:451 doc/classes/RenderingServer.xml:3668
+#: doc/classes/Viewport.xml:393
msgid ""
"The texture filter reads from the nearest pixel only. The simplest and "
"fastest method of filtering, but the texture will look pixelized."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:454 doc/classes/RenderingServer.xml:3660
-#: doc/classes/Viewport.xml:393
+#: doc/classes/BaseMaterial3D.xml:454 doc/classes/RenderingServer.xml:3671
+#: doc/classes/Viewport.xml:396
msgid ""
"The texture filter blends between the nearest 4 pixels. Use this when you "
"want to avoid a pixelated style, but do not want mipmaps."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:457 doc/classes/RenderingServer.xml:3663
-#: doc/classes/Viewport.xml:396
+#: doc/classes/BaseMaterial3D.xml:457 doc/classes/RenderingServer.xml:3674
+#: doc/classes/Viewport.xml:399
msgid ""
"The texture filter reads from the nearest pixel in the nearest mipmap. The "
"fastest way to read from textures with mipmaps."
@@ -9797,14 +10293,14 @@ msgid ""
"smooth out pixels that are far from the camera."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:463 doc/classes/RenderingServer.xml:3669
+#: doc/classes/BaseMaterial3D.xml:463 doc/classes/RenderingServer.xml:3680
msgid ""
"The texture filter reads from the nearest pixel, but selects a mipmap based "
"on the angle between the surface and the camera view. This reduces artifacts "
"on surfaces that are almost in line with the camera."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:466 doc/classes/RenderingServer.xml:3672
+#: doc/classes/BaseMaterial3D.xml:466 doc/classes/RenderingServer.xml:3683
msgid ""
"The texture filter blends between the nearest 4 pixels and selects a mipmap "
"based on the angle between the surface and the camera view. This reduces "
@@ -9813,7 +10309,7 @@ msgid ""
"texturing."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:469 doc/classes/CanvasItem.xml:685
+#: doc/classes/BaseMaterial3D.xml:469 doc/classes/CanvasItem.xml:695
msgid "Represents the size of the [enum TextureFilter] enum."
msgstr ""
@@ -10036,8 +10532,8 @@ msgstr ""
msgid "Enables the shadow to opacity feature."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:622 doc/classes/RenderingServer.xml:3684
-#: doc/classes/Viewport.xml:408
+#: doc/classes/BaseMaterial3D.xml:622 doc/classes/RenderingServer.xml:3695
+#: doc/classes/Viewport.xml:411
msgid ""
"Enables the texture to repeat when UV coordinates are outside the 0-1 range. "
"If using one of the linear filtering modes, this can result in artifacts at "
@@ -10178,167 +10674,196 @@ msgstr ""
#: doc/classes/Basis.xml:7
msgid ""
-"3×3 matrix used for 3D rotation and scale. Contains 3 vector fields X, Y and "
-"Z as its columns, which can be interpreted as the local basis vectors of a "
-"transformation. Can also be accessed as array of 3D vectors. These vectors "
-"are orthogonal to each other, but are not necessarily normalized (due to "
-"scaling). Almost always used as an orthogonal basis for a [Transform].\n"
-"For such use, it is composed of a scaling and a rotation matrix, in that "
-"order (M = R.S)."
+"3×3 matrix used for 3D rotation and scale. Almost always used as an "
+"orthogonal basis for a Transform.\n"
+"Contains 3 vector fields X, Y and Z as its columns, which are typically "
+"interpreted as the local basis vectors of a transformation. For such use, it "
+"is composed of a scaling and a rotation matrix, in that order (M = R.S).\n"
+"Can also be accessed as array of 3D vectors. These vectors are normally "
+"orthogonal to each other, but are not necessarily normalized (due to "
+"scaling).\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
msgstr ""
-#: doc/classes/Basis.xml:11 doc/classes/Transform.xml:11
+#: doc/classes/Basis.xml:13 doc/classes/Transform.xml:12
+#: doc/classes/Transform2D.xml:11
+#, fuzzy
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/math/"
+"matrices_and_transforms.html"
+msgstr "https://docs.godotengine.org/ja/latest/tutorials/math/index.html"
+
+#: doc/classes/Basis.xml:14 doc/classes/Transform.xml:13
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/using_transforms.html"
msgstr ""
-#: doc/classes/Basis.xml:20
-msgid "Create a rotation matrix from the given quaternion."
+#: doc/classes/Basis.xml:23
+msgid "Constructs a pure rotation basis matrix from the given quaternion."
msgstr ""
-#: doc/classes/Basis.xml:29
+#: doc/classes/Basis.xml:32
msgid ""
-"Create a rotation matrix (in the YXZ convention: first Z, then X, and Y "
-"last) from the specified Euler angles, given in the vector format as (X "
-"angle, Y angle, Z angle)."
+"Constructs a pure rotation basis matrix from the given Euler angles (in the "
+"YXZ convention: when *composing*, first Y, then X, and Z last), given in the "
+"vector format as (X angle, Y angle, Z angle).\n"
+"Consider using the [Quat] constructor instead, which uses a quaternion "
+"instead of Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:40
+#: doc/classes/Basis.xml:44
msgid ""
-"Create a rotation matrix which rotates around the given axis by the "
-"specified angle, in radians. The axis must be a normalized vector."
+"Constructs a pure rotation basis matrix, rotated around the given "
+"[code]axis[/code] by [code]phi[/code], in radians. The axis must be a "
+"normalized vector."
msgstr ""
-#: doc/classes/Basis.xml:53
-msgid "Create a matrix from 3 axis vectors."
+#: doc/classes/Basis.xml:57
+msgid "Constructs a basis matrix from 3 axis vectors (matrix columns)."
msgstr ""
-#: doc/classes/Basis.xml:60
-msgid "Returns the determinant of the matrix."
+#: doc/classes/Basis.xml:64
+msgid ""
+"Returns the determinant of the basis matrix. If the basis is uniformly "
+"scaled, its determinant is the square of the scale.\n"
+"A negative determinant means the basis has a negative scale. A zero "
+"determinant means the basis isn't invertible, and is usually considered "
+"invalid."
msgstr ""
-#: doc/classes/Basis.xml:67
+#: doc/classes/Basis.xml:72
msgid ""
"Returns the basis's rotation in the form of Euler angles (in the YXZ "
-"convention: first Z, then X, and Y last). The returned vector contains the "
-"rotation angles in the format (X angle, Y angle, Z angle). See [method "
-"get_rotation_quat] if you need a quaternion instead."
+"convention: when decomposing, first Z, then X, and Y last). The returned "
+"vector contains the rotation angles in the format (X angle, Y angle, Z "
+"angle).\n"
+"Consider using the [method get_rotation_quat] method instead, which returns "
+"a [Quat] quaternion instead of Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:74
+#: doc/classes/Basis.xml:80
msgid ""
"This function considers a discretization of rotations into 24 points on unit "
"sphere, lying along the vectors (x,y,z) with each component being either -1, "
"0, or 1, and returns the index of the point best representing the "
-"orientation of the object. It is mainly used by the grid map editor. For "
+"orientation of the object. It is mainly used by the [GridMap] editor. For "
"further details, refer to the Godot source code."
msgstr ""
-#: doc/classes/Basis.xml:81
+#: doc/classes/Basis.xml:87
msgid ""
"Returns the basis's rotation in the form of a quaternion. See [method "
"get_euler] if you need Euler angles, but keep in mind quaternions should "
"generally be preferred to Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:88
+#: doc/classes/Basis.xml:94
msgid ""
"Assuming that the matrix is the combination of a rotation and scaling, "
"return the absolute value of scaling factors along each axis."
msgstr ""
-#: doc/classes/Basis.xml:95 doc/classes/Transform2D.xml:49
+#: doc/classes/Basis.xml:101
msgid "Returns the inverse of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:106
+#: doc/classes/Basis.xml:112
msgid ""
"Returns [code]true[/code] if this basis and [code]b[/code] are approximately "
"equal, by calling [code]is_equal_approx[/code] on each component."
msgstr ""
-#: doc/classes/Basis.xml:113
+#: doc/classes/Basis.xml:119
msgid ""
"Returns the orthonormalized version of the matrix (useful to call from time "
"to time to avoid rounding error for orthogonal matrices). This performs a "
"Gram-Schmidt orthonormalization on the basis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:124
+#: doc/classes/Basis.xml:130
msgid ""
"Introduce an additional rotation around the given axis by phi (radians). The "
"axis must be a normalized vector."
msgstr ""
-#: doc/classes/Basis.xml:133
+#: doc/classes/Basis.xml:139
msgid ""
"Introduce an additional scaling specified by the given 3D scaling factor."
msgstr ""
-#: doc/classes/Basis.xml:144
+#: doc/classes/Basis.xml:150
msgid ""
"Assuming that the matrix is a proper rotation matrix, slerp performs a "
"spherical-linear interpolation with another rotation matrix."
msgstr ""
-#: doc/classes/Basis.xml:153
+#: doc/classes/Basis.xml:159
msgid "Transposed dot product with the X axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:162
+#: doc/classes/Basis.xml:168
msgid "Transposed dot product with the Y axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:171
+#: doc/classes/Basis.xml:177
msgid "Transposed dot product with the Z axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:178
+#: doc/classes/Basis.xml:184
msgid "Returns the transposed version of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:187
+#: doc/classes/Basis.xml:193
msgid "Returns a vector transformed (multiplied) by the matrix."
msgstr ""
-#: doc/classes/Basis.xml:196
+#: doc/classes/Basis.xml:202
msgid ""
-"Returns a vector transformed (multiplied) by the transposed matrix.\n"
+"Returns a vector transformed (multiplied) by the transposed basis matrix.\n"
"[b]Note:[/b] This results in a multiplication by the inverse of the matrix "
"only if it represents a rotation-reflection."
msgstr ""
-#: doc/classes/Basis.xml:203
-msgid "The basis matrix's X vector."
+#: doc/classes/Basis.xml:209 doc/classes/Transform2D.xml:181
+msgid ""
+"The basis matrix's X vector (column 0). Equivalent to array index [code]0[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:206
-msgid "The basis matrix's Y vector."
+#: doc/classes/Basis.xml:212 doc/classes/Transform2D.xml:184
+msgid ""
+"The basis matrix's Y vector (column 1). Equivalent to array index [code]1[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:209
-msgid "The basis matrix's Z vector."
+#: doc/classes/Basis.xml:215
+msgid ""
+"The basis matrix's Z vector (column 2). Equivalent to array index [code]2[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:214
+#: doc/classes/Basis.xml:220
msgid ""
-"The identity basis. This is identical to calling [code]Basis()[/code] "
-"without any parameters. This constant can be used to make your code clearer."
+"The identity basis, with no rotation or scaling applied.\n"
+"This is identical to calling [code]Basis()[/code] without any parameters. "
+"This constant can be used to make your code clearer, and for consistency "
+"with C#."
msgstr ""
-#: doc/classes/Basis.xml:217
+#: doc/classes/Basis.xml:224
msgid ""
"The basis that will flip something along the X axis when used in a "
"transformation."
msgstr ""
-#: doc/classes/Basis.xml:220
+#: doc/classes/Basis.xml:227
msgid ""
"The basis that will flip something along the Y axis when used in a "
"transformation."
msgstr ""
-#: doc/classes/Basis.xml:223
+#: doc/classes/Basis.xml:230
msgid ""
"The basis that will flip something along the Z axis when used in a "
"transformation."
@@ -10651,97 +11176,111 @@ msgstr ""
#: doc/classes/Button.xml:7
msgid ""
"Button is the standard themed button. It can contain text and an icon, and "
-"will display them according to the current [Theme]."
+"will display them according to the current [Theme].\n"
+"[b]Example of creating a button and assigning an action when pressed by code:"
+"[/b]\n"
+"[codeblock]\n"
+"func _ready():\n"
+" var button = Button.new()\n"
+" button.text = \"Click me\"\n"
+" button.connect(\"pressed\", self, \"_button_pressed\")\n"
+" add_child(button)\n"
+"\n"
+"func _button_pressed():\n"
+" print(\"Hello world!\")\n"
+"[/codeblock]\n"
+"Buttons (like all Control nodes) can also be created in the editor, but some "
+"situations may require creating them from code."
msgstr ""
-#: doc/classes/Button.xml:15
+#: doc/classes/Button.xml:27
msgid ""
"Text alignment policy for the button's text, use one of the [enum TextAlign] "
"constants."
msgstr ""
-#: doc/classes/Button.xml:18
+#: doc/classes/Button.xml:30
msgid ""
"When this property is enabled, text that is too large to fit the button is "
"clipped, when disabled the Button will always be wide enough to hold the "
"text."
msgstr ""
-#: doc/classes/Button.xml:21
+#: doc/classes/Button.xml:33
msgid ""
"When enabled, the button's icon will expand/shrink to fit the button's size "
"while keeping its aspect."
msgstr ""
-#: doc/classes/Button.xml:24
+#: doc/classes/Button.xml:36
msgid "Flat buttons don't display decoration."
msgstr ""
-#: doc/classes/Button.xml:27
+#: doc/classes/Button.xml:39
msgid ""
"Button's icon, if text is present the icon will be placed before the text."
msgstr ""
-#: doc/classes/Button.xml:30 doc/classes/LinkButton.xml:18
+#: doc/classes/Button.xml:42 doc/classes/LinkButton.xml:18
msgid "The button's text that will be displayed inside the button's area."
msgstr ""
-#: doc/classes/Button.xml:35
+#: doc/classes/Button.xml:47
msgid "Align the text to the left."
msgstr ""
-#: doc/classes/Button.xml:38
+#: doc/classes/Button.xml:50
msgid "Align the text to the center."
msgstr ""
-#: doc/classes/Button.xml:41
+#: doc/classes/Button.xml:53
msgid "Align the text to the right."
msgstr ""
-#: doc/classes/Button.xml:46
+#: doc/classes/Button.xml:58
msgid "[StyleBox] used when the [Button] is disabled."
msgstr ""
-#: doc/classes/Button.xml:49
+#: doc/classes/Button.xml:61
msgid ""
"[StyleBox] used when the [Button] is focused. It is displayed over the "
"current [StyleBox], so using [StyleBoxEmpty] will just disable the focus "
"visual effect."
msgstr ""
-#: doc/classes/Button.xml:52
+#: doc/classes/Button.xml:64
msgid "[Font] of the [Button]'s text."
msgstr ""
-#: doc/classes/Button.xml:55
+#: doc/classes/Button.xml:67
msgid "Default text [Color] of the [Button]."
msgstr ""
-#: doc/classes/Button.xml:58
+#: doc/classes/Button.xml:70
msgid "Text [Color] used when the [Button] is disabled."
msgstr ""
-#: doc/classes/Button.xml:61
+#: doc/classes/Button.xml:73
msgid "Text [Color] used when the [Button] is being hovered."
msgstr ""
-#: doc/classes/Button.xml:64
+#: doc/classes/Button.xml:76
msgid "Text [Color] used when the [Button] is being pressed."
msgstr ""
-#: doc/classes/Button.xml:67
+#: doc/classes/Button.xml:79
msgid "[StyleBox] used when the [Button] is being hovered."
msgstr ""
-#: doc/classes/Button.xml:70
+#: doc/classes/Button.xml:82
msgid "The horizontal space between [Button]'s icon and text."
msgstr ""
-#: doc/classes/Button.xml:73
+#: doc/classes/Button.xml:85
msgid "Default [StyleBox] for the [Button]."
msgstr ""
-#: doc/classes/Button.xml:76
+#: doc/classes/Button.xml:88
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr ""
@@ -11393,7 +11932,7 @@ msgstr ""
#: doc/classes/CameraEffects.xml:37
msgid ""
"The exposure override value to use. Higher values will result in a brighter "
-"scene. Only effective if [member override_exposure_enable] is [code]true[/"
+"scene. Only effective if [member override_exposure_enabled] is [code]true[/"
"code]."
msgstr ""
@@ -11647,265 +12186,282 @@ msgid ""
msgstr ""
#: doc/classes/CanvasItem.xml:319
-msgid "Draws a string using a custom font."
+msgid ""
+"Draws [code]text[/code] using the specified [code]font[/code] at the "
+"[code]position[/code] (top-left corner). The text will have its color "
+"multiplied by [code]modulate[/code]. If [code]clip_w[/code] is greater than "
+"or equal to 0, the text will be clipped if it exceeds the specified width.\n"
+"[b]Example using the default project font:[/b]\n"
+"[codeblock]\n"
+"# If using this method in a script that redraws constantly, move the\n"
+"# `default_font` declaration to a member variable assigned in `_ready()`\n"
+"# so the Control is only created once.\n"
+"var default_font = Control.new().get_font(\"font\")\n"
+"draw_string(default_font, Vector2(64, 64), \"Hello world\")\n"
+"[/codeblock]\n"
+"See also [method Font.draw]."
msgstr ""
-#: doc/classes/CanvasItem.xml:330
+#: doc/classes/CanvasItem.xml:339
msgid "Draws a styled rectangle."
msgstr ""
-#: doc/classes/CanvasItem.xml:353
+#: doc/classes/CanvasItem.xml:362
msgid "Draws a texture at a given position."
msgstr ""
-#: doc/classes/CanvasItem.xml:380
+#: doc/classes/CanvasItem.xml:389
msgid ""
"Draws a textured rectangle at a given position, optionally modulated by a "
"color. If [code]transpose[/code] is [code]true[/code], the texture will have "
"its X and Y coordinates swapped."
msgstr ""
-#: doc/classes/CanvasItem.xml:409
+#: doc/classes/CanvasItem.xml:418
msgid ""
"Draws a textured rectangle region at a given position, optionally modulated "
"by a color. If [code]transpose[/code] is [code]true[/code], the texture will "
"have its X and Y coordinates swapped."
msgstr ""
-#: doc/classes/CanvasItem.xml:416 doc/classes/Node3D.xml:19
+#: doc/classes/CanvasItem.xml:425 doc/classes/Node3D.xml:19
msgid ""
"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."
msgstr ""
-#: doc/classes/CanvasItem.xml:423
+#: doc/classes/CanvasItem.xml:432
msgid "Returns the [RID] of the [World2D] canvas where this item is in."
msgstr ""
-#: doc/classes/CanvasItem.xml:430
+#: doc/classes/CanvasItem.xml:439
msgid "Returns the canvas item RID used by [RenderingServer] for this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:437
+#: doc/classes/CanvasItem.xml:446
msgid "Returns the transform matrix of this item's canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:444
+#: doc/classes/CanvasItem.xml:453
msgid "Returns the global position of the mouse."
msgstr ""
-#: doc/classes/CanvasItem.xml:451
+#: doc/classes/CanvasItem.xml:460
msgid "Returns the global transform matrix of this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:458
+#: doc/classes/CanvasItem.xml:467
msgid ""
"Returns the global transform matrix of this item in relation to the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:465
+#: doc/classes/CanvasItem.xml:474
msgid "Returns the mouse position relative to this item's position."
msgstr ""
-#: doc/classes/CanvasItem.xml:472
+#: doc/classes/CanvasItem.xml:481
msgid "Returns the transform matrix of this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:479
+#: doc/classes/CanvasItem.xml:488
msgid "Returns the viewport's boundaries as a [Rect2]."
msgstr ""
-#: doc/classes/CanvasItem.xml:486
+#: doc/classes/CanvasItem.xml:495
msgid "Returns this item's transform in relation to the viewport."
msgstr ""
-#: doc/classes/CanvasItem.xml:493
+#: doc/classes/CanvasItem.xml:502
msgid "Returns the [World2D] where this item is in."
msgstr ""
-#: doc/classes/CanvasItem.xml:500
+#: doc/classes/CanvasItem.xml:509
msgid "Hide the [CanvasItem] if it's currently visible."
msgstr ""
-#: doc/classes/CanvasItem.xml:507
+#: doc/classes/CanvasItem.xml:516
msgid ""
"Returns [code]true[/code] if local transform notifications are communicated "
"to children."
msgstr ""
-#: doc/classes/CanvasItem.xml:514
+#: doc/classes/CanvasItem.xml:523
msgid ""
"Returns [code]true[/code] if the node is set as top-level. See [method "
"set_as_toplevel]."
msgstr ""
-#: doc/classes/CanvasItem.xml:521
+#: doc/classes/CanvasItem.xml:530
msgid ""
"Returns [code]true[/code] if global transform notifications are communicated "
"to children."
msgstr ""
-#: doc/classes/CanvasItem.xml:528
+#: doc/classes/CanvasItem.xml:537 doc/classes/Node3D.xml:104
msgid ""
"Returns [code]true[/code] if the node is present in the [SceneTree], its "
-"[member visible] property is [code]true[/code] and its inherited visibility "
-"is also [code]true[/code]."
+"[member visible] property is [code]true[/code] and all its antecedents are "
+"also visible. If any antecedent is hidden, this node will not be visible in "
+"the scene tree."
msgstr ""
-#: doc/classes/CanvasItem.xml:537
+#: doc/classes/CanvasItem.xml:546
msgid "Assigns [code]screen_point[/code] as this node's new local transform."
msgstr ""
-#: doc/classes/CanvasItem.xml:546
+#: doc/classes/CanvasItem.xml:555
msgid ""
"Transformations issued by [code]event[/code]'s inputs are applied in local "
"space instead of global space."
msgstr ""
-#: doc/classes/CanvasItem.xml:555
+#: doc/classes/CanvasItem.xml:564
msgid ""
"If [code]enable[/code] is [code]true[/code], the node won't inherit its "
"transform from parent canvas items."
msgstr ""
-#: doc/classes/CanvasItem.xml:564
+#: doc/classes/CanvasItem.xml:573
msgid ""
"If [code]enable[/code] is [code]true[/code], children will be updated with "
"local transform data."
msgstr ""
-#: doc/classes/CanvasItem.xml:573
+#: doc/classes/CanvasItem.xml:582
msgid ""
"If [code]enable[/code] is [code]true[/code], children will be updated with "
"global transform data."
msgstr ""
-#: doc/classes/CanvasItem.xml:580
+#: doc/classes/CanvasItem.xml:589
msgid ""
"Show the [CanvasItem] if it's currently hidden. For controls that inherit "
"[Popup], the correct way to make them visible is to call one of the multiple "
"[code]popup*()[/code] functions instead."
msgstr ""
-#: doc/classes/CanvasItem.xml:587
+#: doc/classes/CanvasItem.xml:596
msgid ""
"Queue the [CanvasItem] for update. [constant NOTIFICATION_DRAW] will be "
"called on idle time to request redraw."
msgstr ""
-#: doc/classes/CanvasItem.xml:593
+#: doc/classes/CanvasItem.xml:602
msgid ""
"The rendering layers in which this [CanvasItem] responds to [Light2D] nodes."
msgstr ""
-#: doc/classes/CanvasItem.xml:596
+#: doc/classes/CanvasItem.xml:605
msgid "The material applied to textures on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:599
+#: doc/classes/CanvasItem.xml:608
msgid "The color applied to textures on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:602
+#: doc/classes/CanvasItem.xml:611
msgid ""
"The color applied to textures on this [CanvasItem]. This is not inherited by "
"children [CanvasItem]s."
msgstr ""
-#: doc/classes/CanvasItem.xml:605
+#: doc/classes/CanvasItem.xml:614
msgid "If [code]true[/code], the object draws behind its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:608
+#: doc/classes/CanvasItem.xml:617
msgid "If [code]true[/code], the object draws on top of its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:611
+#: doc/classes/CanvasItem.xml:620
msgid "The texture filtering mode to use on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:614
+#: doc/classes/CanvasItem.xml:623
msgid "The texture repeating mode to use on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:617
+#: doc/classes/CanvasItem.xml:626
msgid ""
"If [code]true[/code], the parent [CanvasItem]'s [member material] property "
"is used as this one's material."
msgstr ""
-#: doc/classes/CanvasItem.xml:620
+#: doc/classes/CanvasItem.xml:629
msgid ""
-"If [code]true[/code], this [CanvasItem] is drawn. For controls that inherit "
-"[Popup], the correct way to make them visible is to call one of the multiple "
-"[code]popup*()[/code] functions instead."
+"If [code]true[/code], this [CanvasItem] is drawn. The node is only visible "
+"if all of its antecedents are visible as well (in other words, [method "
+"is_visible_in_tree] must return [code]true[/code]).\n"
+"[b]Note:[/b] For controls that inherit [Popup], the correct way to make them "
+"visible is to call one of the multiple [code]popup*()[/code] functions "
+"instead."
msgstr ""
-#: doc/classes/CanvasItem.xml:626
+#: doc/classes/CanvasItem.xml:636
msgid ""
"Emitted when the [CanvasItem] must redraw. This can only be connected "
"realtime, as deferred will not allow drawing."
msgstr ""
-#: doc/classes/CanvasItem.xml:631
+#: doc/classes/CanvasItem.xml:641
msgid "Emitted when becoming hidden."
msgstr ""
-#: doc/classes/CanvasItem.xml:636
+#: doc/classes/CanvasItem.xml:646
msgid "Emitted when the item rect has changed."
msgstr ""
-#: doc/classes/CanvasItem.xml:641
+#: doc/classes/CanvasItem.xml:651
msgid "Emitted when the visibility (hidden/visible) changes."
msgstr ""
-#: doc/classes/CanvasItem.xml:647
+#: doc/classes/CanvasItem.xml:657
msgid ""
"The [CanvasItem]'s transform has changed. This notification is only received "
"if enabled by [method set_notify_transform] or [method "
"set_notify_local_transform]."
msgstr ""
-#: doc/classes/CanvasItem.xml:650
+#: doc/classes/CanvasItem.xml:660
msgid "The [CanvasItem] is requested to draw."
msgstr ""
-#: doc/classes/CanvasItem.xml:653
+#: doc/classes/CanvasItem.xml:663
msgid "The [CanvasItem]'s visibility has changed."
msgstr ""
-#: doc/classes/CanvasItem.xml:656
+#: doc/classes/CanvasItem.xml:666
msgid "The [CanvasItem] has entered the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:659
+#: doc/classes/CanvasItem.xml:669
msgid "The [CanvasItem] has exited the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:662 doc/classes/CanvasItem.xml:688
+#: doc/classes/CanvasItem.xml:672 doc/classes/CanvasItem.xml:698
msgid "The [CanvasItem] will inherit the filter from its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:665
+#: doc/classes/CanvasItem.xml:675
msgid ""
"The texture filter reads from the nearest pixel only. The simplest and "
"fastest method of filtering. Useful for pixel art."
msgstr ""
-#: doc/classes/CanvasItem.xml:668
+#: doc/classes/CanvasItem.xml:678
msgid ""
"The texture filter blends between the nearest four pixels. Use this for most "
"cases where you want to avoid a pixelated style."
msgstr ""
-#: doc/classes/CanvasItem.xml:671
+#: doc/classes/CanvasItem.xml:681
msgid ""
"The texture filter reads from the nearest pixel in the nearest mipmap. This "
"is the fastest way to read from textures with mipmaps."
msgstr ""
-#: doc/classes/CanvasItem.xml:674
+#: doc/classes/CanvasItem.xml:684
msgid ""
"The texture filter blends between the nearest 4 pixels and between the "
"nearest 2 mipmaps. Use this for non-pixel art textures that may be viewed at "
@@ -11913,7 +12469,7 @@ msgid ""
"smooth out pixels that are smaller than on-screen pixels."
msgstr ""
-#: doc/classes/CanvasItem.xml:677
+#: doc/classes/CanvasItem.xml:687
msgid ""
"The texture filter reads from the nearest pixel, but selects a mipmap based "
"on the angle between the surface and the camera view. This reduces artifacts "
@@ -11922,7 +12478,7 @@ msgid ""
"TEXTURE_FILTER_NEAREST_WITH_MIPMAPS] is usually more appropriate."
msgstr ""
-#: doc/classes/CanvasItem.xml:681
+#: doc/classes/CanvasItem.xml:691
msgid ""
"The texture filter blends between the nearest 4 pixels and selects a mipmap "
"based on the angle between the surface and the camera view. This reduces "
@@ -11933,21 +12489,21 @@ msgid ""
"TEXTURE_FILTER_LINEAR_WITH_MIPMAPS] is usually more appropriate."
msgstr ""
-#: doc/classes/CanvasItem.xml:691
+#: doc/classes/CanvasItem.xml:701
msgid "Texture will not repeat."
msgstr ""
-#: doc/classes/CanvasItem.xml:694
+#: doc/classes/CanvasItem.xml:704
msgid "Texture will repeat normally."
msgstr ""
-#: doc/classes/CanvasItem.xml:697
+#: doc/classes/CanvasItem.xml:707
msgid ""
"Texture will repeat in a 2x2 tiled mode, where elements at even positions "
"are mirrored."
msgstr ""
-#: doc/classes/CanvasItem.xml:700
+#: doc/classes/CanvasItem.xml:710
msgid "Represents the size of the [enum TextureRepeat] enum."
msgstr ""
@@ -13020,16 +13576,15 @@ msgid ""
msgstr ""
#: doc/classes/Color.xml:4
-msgid "Color in RGBA format with some support for ARGB format."
+msgid "Color in RGBA format using floats on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:7
msgid ""
-"A color is represented by red, green, and blue [code](r, g, b)[/code] "
-"components. Additionally, [code]a[/code] represents the alpha component, "
-"often used for transparency. Values are in floating-point and usually range "
-"from 0 to 1. Some properties (such as [member CanvasItem.modulate]) may "
-"accept values greater than 1.\n"
+"A color represented by red, green, blue, and alpha (RGBA) components. The "
+"alpha component is often used for transparency. Values are in floating-point "
+"and usually range from 0 to 1. Some properties (such as CanvasItem.modulate) "
+"may accept values greater than 1 (overbright or HDR colors).\n"
"You can also create a color from standardized color names by using [method "
"@GDScript.ColorN] or directly using the color constants defined here. The "
"standardized color set is based on the [url=https://en.wikipedia.org/wiki/"
@@ -13243,47 +13798,48 @@ msgid ""
msgstr ""
#: doc/classes/Color.xml:280
-msgid "Alpha value (range 0 to 1)."
+msgid ""
+"The color's alpha (transparency) component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:283
-msgid "Alpha value (range 0 to 255)."
+msgid "Wrapper for [member a] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:286
-msgid "Blue value (range 0 to 1)."
+msgid "The color's blue component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:289
-msgid "Blue value (range 0 to 255)."
+msgid "Wrapper for [member b] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:292
-msgid "Green value (range 0 to 1)."
+msgid "The color's green component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:295
-msgid "Green value (range 0 to 255)."
+msgid "Wrapper for [member g] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:298
-msgid "HSV hue value (range 0 to 1)."
+msgid "The HSV hue of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:301
-msgid "Red value (range 0 to 1)."
+msgid "The color's red component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:304
-msgid "Red value (range 0 to 255)."
+msgid "Wrapper for [member r] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:307
-msgid "HSV saturation value (range 0 to 1)."
+msgid "The HSV saturation of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:310
-msgid "HSV value (range 0 to 1)."
+msgid "The HSV value (brightness) of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:315
@@ -15203,23 +15759,35 @@ msgstr ""
#: doc/classes/Control.xml:859
msgid ""
"The node's scale, relative to its [member rect_size]. Change this property "
-"to scale the node around its [member rect_pivot_offset]."
-msgstr ""
-
-#: doc/classes/Control.xml:862
+"to scale the node around its [member rect_pivot_offset]. The Control's "
+"[member hint_tooltip] will also scale according to this value.\n"
+"[b]Note:[/b] This property is mainly intended to be used for animation "
+"purposes. Text inside the Control will look pixelated or blurry when the "
+"Control is scaled. To support multiple resolutions in your project, use an "
+"appropriate viewport stretch mode as described in the [url=https://docs."
+"godotengine.org/en/latest/tutorials/viewports/multiple_resolutions."
+"html]documentation[/url] instead of scaling Controls individually.\n"
+"[b]Note:[/b] If the Control node is a child of a [Container] node, the scale "
+"will be reset to [code]Vector2(1, 1)[/code] when the scene is instanced. To "
+"set the Control's scale when it's instanced, wait for one frame using "
+"[code]yield(get_tree(), \"idle_frame\")[/code] then set its [member "
+"rect_scale] property."
+msgstr ""
+
+#: doc/classes/Control.xml:864
msgid ""
"The size of the node's bounding rectangle, in pixels. [Container] nodes "
"update this property automatically."
msgstr ""
-#: doc/classes/Control.xml:865
+#: doc/classes/Control.xml:867
msgid ""
"Tells the parent [Container] nodes how they should resize and place the node "
"on the X axis. Use one of the [enum SizeFlags] constants to change the "
"flags. See the constants to learn what each does."
msgstr ""
-#: doc/classes/Control.xml:868
+#: doc/classes/Control.xml:870
msgid ""
"If the node and at least one of its neighbours uses the [constant "
"SIZE_EXPAND] size flag, the parent [Container] will let it take more or less "
@@ -15228,181 +15796,181 @@ msgid ""
"space."
msgstr ""
-#: doc/classes/Control.xml:871
+#: doc/classes/Control.xml:873
msgid ""
"Tells the parent [Container] nodes how they should resize and place the node "
"on the Y axis. Use one of the [enum SizeFlags] constants to change the "
"flags. See the constants to learn what each does."
msgstr ""
-#: doc/classes/Control.xml:874
+#: doc/classes/Control.xml:876
msgid ""
"Changing this property replaces the current [Theme] resource this node and "
"all its [Control] children use."
msgstr ""
-#: doc/classes/Control.xml:880
+#: doc/classes/Control.xml:882
msgid "Emitted when the node gains keyboard focus."
msgstr ""
-#: doc/classes/Control.xml:885
+#: doc/classes/Control.xml:887
msgid "Emitted when the node loses keyboard focus."
msgstr ""
-#: doc/classes/Control.xml:892
+#: doc/classes/Control.xml:894
msgid "Emitted when the node receives an [InputEvent]."
msgstr ""
-#: doc/classes/Control.xml:897
+#: doc/classes/Control.xml:899
msgid "Emitted when the node's minimum size changes."
msgstr ""
-#: doc/classes/Control.xml:902
+#: doc/classes/Control.xml:904
msgid ""
"Emitted when the mouse enters the control's [code]Rect[/code] area, provided "
"its [member mouse_filter] lets the event reach it."
msgstr ""
-#: doc/classes/Control.xml:907
+#: doc/classes/Control.xml:909
msgid ""
"Emitted when the mouse leaves the control's [code]Rect[/code] area, provided "
"its [member mouse_filter] lets the event reach it."
msgstr ""
-#: doc/classes/Control.xml:912
+#: doc/classes/Control.xml:914
msgid "Emitted when the control changes size."
msgstr ""
-#: doc/classes/Control.xml:917
+#: doc/classes/Control.xml:919
msgid ""
"Emitted when one of the size flags changes. See [member "
"size_flags_horizontal] and [member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:927
+#: doc/classes/Control.xml:929
msgid "The node cannot grab focus. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:930
+#: doc/classes/Control.xml:932
msgid ""
"The node can only grab focus on mouse clicks. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:933
+#: doc/classes/Control.xml:935
msgid ""
"The node can grab focus on mouse click or using the arrows and the Tab keys "
"on the keyboard. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:936
+#: doc/classes/Control.xml:938
msgid ""
"Sent when the node changes size. Use [member rect_size] to get the new size."
msgstr ""
-#: doc/classes/Control.xml:939
+#: doc/classes/Control.xml:941
msgid "Sent when the mouse pointer enters the node."
msgstr ""
-#: doc/classes/Control.xml:942
+#: doc/classes/Control.xml:944
msgid "Sent when the mouse pointer exits the node."
msgstr ""
-#: doc/classes/Control.xml:945
+#: doc/classes/Control.xml:947
msgid "Sent when the node grabs focus."
msgstr ""
-#: doc/classes/Control.xml:948
+#: doc/classes/Control.xml:950
msgid "Sent when the node loses focus."
msgstr ""
-#: doc/classes/Control.xml:951
+#: doc/classes/Control.xml:953
msgid ""
"Sent when the node's [member theme] changes, right before Godot redraws the "
"control. Happens when you call one of the [code]add_theme_*_override[/code] "
"methods."
msgstr ""
-#: doc/classes/Control.xml:954
+#: doc/classes/Control.xml:956
msgid ""
"Sent when this node is inside a [ScrollContainer] which has begun being "
"scrolled."
msgstr ""
-#: doc/classes/Control.xml:957
+#: doc/classes/Control.xml:959
msgid ""
"Sent when this node is inside a [ScrollContainer] which has stopped being "
"scrolled."
msgstr ""
-#: doc/classes/Control.xml:960
+#: doc/classes/Control.xml:962
msgid ""
"Show the system's arrow mouse cursor when the user hovers the node. Use with "
"[member mouse_default_cursor_shape]."
msgstr ""
-#: doc/classes/Control.xml:963
+#: doc/classes/Control.xml:965
msgid ""
"Show the system's I-beam mouse cursor when the user hovers the node. The I-"
"beam pointer has a shape similar to \"I\". It tells the user they can "
"highlight or insert text."
msgstr ""
-#: doc/classes/Control.xml:966
+#: doc/classes/Control.xml:968
msgid ""
"Show the system's pointing hand mouse cursor when the user hovers the node."
msgstr ""
-#: doc/classes/Control.xml:969
+#: doc/classes/Control.xml:971
msgid "Show the system's cross mouse cursor when the user hovers the node."
msgstr ""
-#: doc/classes/Control.xml:972
+#: doc/classes/Control.xml:974
msgid ""
"Show the system's wait mouse cursor, often an hourglass, when the user "
"hovers the node."
msgstr ""
-#: doc/classes/Control.xml:975
+#: doc/classes/Control.xml:977
msgid ""
"Show the system's busy mouse cursor when the user hovers the node. Often an "
"hourglass."
msgstr ""
-#: doc/classes/Control.xml:978
+#: doc/classes/Control.xml:980
msgid ""
"Show the system's drag mouse cursor, often a closed fist or a cross symbol, "
"when the user hovers the node. It tells the user they're currently dragging "
"an item, like a node in the Scene dock."
msgstr ""
-#: doc/classes/Control.xml:981
+#: doc/classes/Control.xml:983
msgid ""
"Show the system's drop mouse cursor when the user hovers the node. It can be "
"an open hand. It tells the user they can drop an item they're currently "
"grabbing, like a node in the Scene dock."
msgstr ""
-#: doc/classes/Control.xml:984
+#: doc/classes/Control.xml:986
msgid ""
"Show the system's forbidden mouse cursor when the user hovers the node. "
"Often a crossed circle."
msgstr ""
-#: doc/classes/Control.xml:987
+#: doc/classes/Control.xml:989
msgid ""
"Show the system's vertical resize mouse cursor when the user hovers the "
"node. A double-headed vertical arrow. It tells the user they can resize the "
"window or the panel vertically."
msgstr ""
-#: doc/classes/Control.xml:990
+#: doc/classes/Control.xml:992
msgid ""
"Show the system's horizontal resize mouse cursor when the user hovers the "
"node. A double-headed horizontal arrow. It tells the user they can resize "
"the window or the panel horizontally."
msgstr ""
-#: doc/classes/Control.xml:993
+#: doc/classes/Control.xml:995
msgid ""
"Show the system's window resize mouse cursor when the user hovers the node. "
"The cursor is a double-headed arrow that goes from the bottom left to the "
@@ -15410,7 +15978,7 @@ msgid ""
"horizontally and vertically."
msgstr ""
-#: doc/classes/Control.xml:996
+#: doc/classes/Control.xml:998
msgid ""
"Show the system's window resize mouse cursor when the user hovers the node. "
"The cursor is a double-headed arrow that goes from the top left to the "
@@ -15418,93 +15986,93 @@ msgid ""
"they can resize the window or the panel both horizontally and vertically."
msgstr ""
-#: doc/classes/Control.xml:999
+#: doc/classes/Control.xml:1001
msgid ""
"Show the system's move mouse cursor when the user hovers the node. It shows "
"2 double-headed arrows at a 90 degree angle. It tells the user they can move "
"a UI element freely."
msgstr ""
-#: doc/classes/Control.xml:1002
+#: doc/classes/Control.xml:1004
msgid ""
"Show the system's vertical split mouse cursor when the user hovers the node. "
"On Windows, it's the same as [constant CURSOR_VSIZE]."
msgstr ""
-#: doc/classes/Control.xml:1005
+#: doc/classes/Control.xml:1007
msgid ""
"Show the system's horizontal split mouse cursor when the user hovers the "
"node. On Windows, it's the same as [constant CURSOR_HSIZE]."
msgstr ""
-#: doc/classes/Control.xml:1008
+#: doc/classes/Control.xml:1010
msgid ""
"Show the system's help mouse cursor when the user hovers the node, a "
"question mark."
msgstr ""
-#: doc/classes/Control.xml:1011
+#: doc/classes/Control.xml:1013
msgid ""
"Snap all 4 anchors to the top-left of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1014
+#: doc/classes/Control.xml:1016
msgid ""
"Snap all 4 anchors to the top-right of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1017
+#: doc/classes/Control.xml:1019
msgid ""
"Snap all 4 anchors to the bottom-left of the parent control's bounds. Use "
"with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1020
+#: doc/classes/Control.xml:1022
msgid ""
"Snap all 4 anchors to the bottom-right of the parent control's bounds. Use "
"with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1023
+#: doc/classes/Control.xml:1025
msgid ""
"Snap all 4 anchors to the center of the left edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1026
+#: doc/classes/Control.xml:1028
msgid ""
"Snap all 4 anchors to the center of the top edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1029
+#: doc/classes/Control.xml:1031
msgid ""
"Snap all 4 anchors to the center of the right edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1032
+#: doc/classes/Control.xml:1034
msgid ""
"Snap all 4 anchors to the center of the bottom edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1035
+#: doc/classes/Control.xml:1037
msgid ""
"Snap all 4 anchors to the center of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1038
+#: doc/classes/Control.xml:1040
msgid ""
"Snap all 4 anchors to the left edge of the parent control. The left margin "
"becomes relative to the left edge and the top margin relative to the top "
"left corner of the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1041
+#: doc/classes/Control.xml:1043
msgid ""
"Snap all 4 anchors to the top edge of the parent control. The left margin "
"becomes relative to the top left corner, the top margin relative to the top "
@@ -15512,14 +16080,14 @@ msgid ""
"parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1044
+#: doc/classes/Control.xml:1046
msgid ""
"Snap all 4 anchors to the right edge of the parent control. The right margin "
"becomes relative to the right edge and the top margin relative to the top "
"right corner of the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1047
+#: doc/classes/Control.xml:1049
msgid ""
"Snap all 4 anchors to the bottom edge of the parent control. The left margin "
"becomes relative to the bottom left corner, the bottom margin relative to "
@@ -15527,19 +16095,19 @@ msgid ""
"the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1050
+#: doc/classes/Control.xml:1052
msgid ""
"Snap all 4 anchors to a vertical line that cuts the parent control in half. "
"Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1053
+#: doc/classes/Control.xml:1055
msgid ""
"Snap all 4 anchors to a horizontal line that cuts the parent control in "
"half. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1056
+#: doc/classes/Control.xml:1058
msgid ""
"Snap all 4 anchors to the respective corners of the parent control. Set all "
"4 margins to 0 after you applied this preset and the [Control] will fit its "
@@ -15547,30 +16115,30 @@ msgid ""
"editor. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1059
+#: doc/classes/Control.xml:1061
msgid "The control will be resized to its minimum size."
msgstr ""
-#: doc/classes/Control.xml:1062
+#: doc/classes/Control.xml:1064
msgid "The control's width will not change."
msgstr ""
-#: doc/classes/Control.xml:1065
+#: doc/classes/Control.xml:1067
msgid "The control's height will not change."
msgstr ""
-#: doc/classes/Control.xml:1068
+#: doc/classes/Control.xml:1070
msgid "The control's size will not change."
msgstr ""
-#: doc/classes/Control.xml:1071
+#: doc/classes/Control.xml:1073
msgid ""
"Tells the parent [Container] to expand the bounds of this node to fill all "
"the available space without pushing any other node. Use with [member "
"size_flags_horizontal] and [member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1074
+#: doc/classes/Control.xml:1076
msgid ""
"Tells the parent [Container] to let this node take all the available space "
"on the axis you flag. If multiple neighboring nodes are set to expand, "
@@ -15579,13 +16147,13 @@ msgid ""
"[member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1077
+#: doc/classes/Control.xml:1079
msgid ""
"Sets the node's size flags to both fill and expand. See the 2 constants "
"above for more information."
msgstr ""
-#: doc/classes/Control.xml:1080
+#: doc/classes/Control.xml:1082
msgid ""
"Tells the parent [Container] to center the node in itself. It centers the "
"control based on its bounding box, so it doesn't work with the fill or "
@@ -15593,7 +16161,7 @@ msgid ""
"size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1083
+#: doc/classes/Control.xml:1085
msgid ""
"Tells the parent [Container] to align the node with its end, either the "
"bottom or the right edge. It doesn't work with the fill or expand size "
@@ -15601,7 +16169,7 @@ msgid ""
"size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1086
+#: doc/classes/Control.xml:1088
msgid ""
"The control will receive mouse button input events through [method "
"_gui_input] if clicked on. And the control will receive the [signal "
@@ -15610,7 +16178,7 @@ msgid ""
"other controls. This also results in blocking signals in other controls."
msgstr ""
-#: doc/classes/Control.xml:1089
+#: doc/classes/Control.xml:1091
msgid ""
"The control will receive mouse button input events through [method "
"_gui_input] if clicked on. And the control will receive the [signal "
@@ -15622,7 +16190,7 @@ msgid ""
"not be fired."
msgstr ""
-#: doc/classes/Control.xml:1092
+#: doc/classes/Control.xml:1094
msgid ""
"The control will not receive mouse button input events through [method "
"_gui_input]. The control will also not receive the [signal mouse_entered] "
@@ -15631,25 +16199,25 @@ msgid ""
"handled automatically."
msgstr ""
-#: doc/classes/Control.xml:1095
+#: doc/classes/Control.xml:1097
msgid ""
"The control will grow to the left or top to make up if its minimum size is "
"changed to be greater than its current size on the respective axis."
msgstr ""
-#: doc/classes/Control.xml:1098
+#: doc/classes/Control.xml:1100
msgid ""
"The control will grow to the right or bottom to make up if its minimum size "
"is changed to be greater than its current size on the respective axis."
msgstr ""
-#: doc/classes/Control.xml:1101
+#: doc/classes/Control.xml:1103
msgid ""
"The control will grow in both directions equally to make up if its minimum "
"size is changed to be greater than its current size."
msgstr ""
-#: doc/classes/Control.xml:1104
+#: doc/classes/Control.xml:1106
msgid ""
"Snaps one of the 4 anchor's sides to the origin of the node's [code]Rect[/"
"code], in the top left. Use it with one of the [code]anchor_*[/code] member "
@@ -15657,7 +16225,7 @@ msgid ""
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1107
+#: doc/classes/Control.xml:1109
msgid ""
"Snaps one of the 4 anchor's sides to the end of the node's [code]Rect[/"
"code], in the bottom right. Use it with one of the [code]anchor_*[/code] "
@@ -17442,7 +18010,7 @@ msgstr ""
msgid ""
"Returns the [Texture2D] associated with the specified [enum DecalTexture]. "
"This is a convenience method, in most cases you should access the texture "
-"directly. \n"
+"directly.\n"
"For example, instead of [code]albedo_tex = $Decal.get_texture(Decal."
"TEXTURE_ALBEDO)[/code], use [code]albedo_tex = $Decal.texture_albedo[/"
"code].\n"
@@ -17458,7 +18026,7 @@ msgstr ""
msgid ""
"Sets the [Texture2D] associated with the specified [enum DecalTexture]. This "
"is a convenience method, in most cases you should access the texture "
-"directly. \n"
+"directly.\n"
"For example, instead of [code]$Decal.set_texture(Decal.TEXTURE_ALBEDO, "
"albedo_tex)[/code], use [code]$Decal.texture_albedo = albedo_tex[/code].\n"
"One case where this is better than accessing the texture directly is when "
@@ -17807,7 +18375,7 @@ msgstr ""
msgid "The light's shadow rendering algorithm. See [enum ShadowMode]."
msgstr ""
-#: doc/classes/DirectionalLight3D.xml:31 doc/classes/RenderingServer.xml:3254
+#: doc/classes/DirectionalLight3D.xml:31 doc/classes/RenderingServer.xml:3250
msgid ""
"Sets the size of the directional shadow pancake. The pancake offsets the "
"start of the shadow's camera frustum to provide a higher effective depth "
@@ -17881,10 +18449,10 @@ msgstr ""
msgid ""
"Directory type. It is used to manage directories and their content (not "
"restricted to the project folder).\n"
-"When creating a new [Directory], its default opened directory will be "
-"[code]res://[/code]. This may change in the future, so it is advised to "
-"always use [method open] to initialize your [Directory] where you want to "
-"operate, with explicit error checking.\n"
+"When creating a new [Directory], it must be explicitly opened using [method "
+"open] before most methods can be used. However, [method file_exists] and "
+"[method dir_exists] can be used without opening a directory. If so, they use "
+"a path relative to [code]res://[/code].\n"
"Here is an example on how to iterate through the files of a directory:\n"
"[codeblock]\n"
"func dir_contents(path):\n"
@@ -17903,7 +18471,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Directory.xml:27 doc/classes/File.xml:25
+#: doc/classes/Directory.xml:27 doc/classes/File.xml:26
msgid ""
"https://docs.godotengine.org/en/latest/getting_started/step_by_step/"
"filesystem.html"
@@ -17937,41 +18505,43 @@ msgstr ""
#: doc/classes/Directory.xml:65
msgid ""
"Returns whether the target directory exists. The argument can be relative to "
-"the current directory, or an absolute path."
+"the current directory, or an absolute path.\n"
+"If the [Directory] is not open, the path is relative to [code]res://[/code]."
msgstr ""
-#: doc/classes/Directory.xml:74
+#: doc/classes/Directory.xml:75
msgid ""
"Returns whether the target file exists. The argument can be relative to the "
-"current directory, or an absolute path."
+"current directory, or an absolute path.\n"
+"If the [Directory] is not open, the path is relative to [code]res://[/code]."
msgstr ""
-#: doc/classes/Directory.xml:81
+#: doc/classes/Directory.xml:83
msgid ""
"Returns the absolute path to the currently opened directory (e.g. "
"[code]res://folder[/code] or [code]C:\\tmp\\folder[/code])."
msgstr ""
-#: doc/classes/Directory.xml:88
+#: doc/classes/Directory.xml:90
msgid ""
"Returns the currently opened directory's drive index. See [method get_drive] "
"to convert returned index to the name of the drive."
msgstr ""
-#: doc/classes/Directory.xml:97
+#: doc/classes/Directory.xml:99
msgid ""
"On Windows, returns the name of the drive (partition) passed as an argument "
"(e.g. [code]C:[/code]). On other platforms, or if the requested drive does "
"not existed, the method returns an empty String."
msgstr ""
-#: doc/classes/Directory.xml:104
+#: doc/classes/Directory.xml:106
msgid ""
"On Windows, returns the number of drives (partitions) mounted on the current "
"filesystem. On other platforms, the method returns 0."
msgstr ""
-#: doc/classes/Directory.xml:111
+#: doc/classes/Directory.xml:113
msgid ""
"Returns the next element (file or directory) in the current directory "
"(including [code].[/code] and [code]..[/code], unless "
@@ -17982,14 +18552,14 @@ msgid ""
"mandatory in such a case)."
msgstr ""
-#: doc/classes/Directory.xml:119
+#: doc/classes/Directory.xml:121
msgid ""
"On UNIX desktop systems, returns the available space on the current "
"directory's disk. On other platforms, this information is not available and "
"the method returns 0 or -1."
msgstr ""
-#: doc/classes/Directory.xml:130
+#: doc/classes/Directory.xml:132
msgid ""
"Initializes the stream used to list all files and directories using the "
"[method get_next] function, closing the current opened stream if needed. "
@@ -18001,13 +18571,13 @@ msgid ""
"out."
msgstr ""
-#: doc/classes/Directory.xml:139
+#: doc/classes/Directory.xml:141
msgid ""
"Closes the current stream opened with [method list_dir_begin] (whether it "
"has been fully processed with [method get_next] or not does not matter)."
msgstr ""
-#: doc/classes/Directory.xml:148
+#: doc/classes/Directory.xml:150
msgid ""
"Creates a directory. The argument can be relative to the current directory, "
"or an absolute path. The target directory should be placed in an already "
@@ -18016,7 +18586,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:158
+#: doc/classes/Directory.xml:160
msgid ""
"Creates a target directory and all necessary intermediate directories in its "
"path, by calling [method make_dir] recursively. The argument can be relative "
@@ -18024,7 +18594,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:168
+#: doc/classes/Directory.xml:170
msgid ""
"Opens an existing directory of the filesystem. The [code]path[/code] "
"argument can be within the project tree ([code]res://folder[/code]), the "
@@ -18033,7 +18603,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:178
+#: doc/classes/Directory.xml:180
msgid ""
"Deletes the target file or an empty directory. The argument can be relative "
"to the current directory, or an absolute path. If the target directory is "
@@ -18041,7 +18611,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:190
+#: doc/classes/Directory.xml:192
msgid ""
"Renames (move) the [code]from[/code] file to the [code]to[/code] "
"destination. Both arguments should be paths to files, either relative or "
@@ -18082,6 +18652,53 @@ msgid ""
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
+#: doc/classes/DisplayServer.xml:530
+msgid ""
+"Return the greatest scale factor of all screens.\n"
+"[b]Note:[/b] On macOS returned value is [code]2.0[/code] if there is at "
+"least one hiDPI (Retina) screen in the system, and [code]1.0[/code] in all "
+"other cases.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:557
+msgid ""
+"Return the scale factor of the specified screen by index.\n"
+"[b]Note:[/b] On macOS returned value is [code]2.0[/code] for hiDPI (Retina) "
+"screen, and [code]1.0[/code] for all other cases.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:630
+msgid ""
+"Returns the on-screen keyboard's height in pixels. Returns 0 if there is no "
+"keyboard or if it is currently hidden."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:637
+msgid "Hides the virtual keyboard if it is shown, does nothing otherwise."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:656
+msgid ""
+"Shows the virtual keyboard if the platform has one.\n"
+"[code]existing_text[/code] parameter is useful for implementing your own "
+"[LineEdit] or [TextEdit], as it tells the virtual keyboard what text has "
+"already been typed (the virtual keyboard uses it for auto-correct and "
+"predictions).\n"
+"[code]position[/code] parameter is the screen space [Rect2] of the edited "
+"text.\n"
+"[code]multiline[/code] parameter needs to be set to [code]true[/code] to be "
+"able to enter multiple lines of text, as in [TextEdit].\n"
+"[code]max_length[/code] limits the number of characters that can be entered "
+"if different from [code]-1[/code].\n"
+"[code]cursor_start[/code] can optionally define the current text cursor "
+"position if [code]cursor_end[/code] is not set.\n"
+"[code]cursor_start[/code] and [code]cursor_end[/code] can optionally define "
+"the current text selection.\n"
+"[b]Note:[/b] This method is implemented on Android, iOS and UWP."
+msgstr ""
+
#: doc/classes/DTLSServer.xml:4
msgid "Helper class to implement a DTLS server."
msgstr ""
@@ -18202,54 +18819,62 @@ msgstr ""
msgid "Adds a fallback font."
msgstr ""
-#: doc/classes/DynamicFont.xml:35
+#: doc/classes/DynamicFont.xml:33
+msgid ""
+"Returns a string containing all the characters available in the main and all "
+"the fallback fonts.\n"
+"If a given character is included in more than one font, it appears only once "
+"in the returned string."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:43
msgid "Returns the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:42
+#: doc/classes/DynamicFont.xml:50
msgid "Returns the number of fallback fonts."
msgstr ""
-#: doc/classes/DynamicFont.xml:51
+#: doc/classes/DynamicFont.xml:59
msgid ""
"Returns the spacing for the given [code]type[/code] (see [enum SpacingType])."
msgstr ""
-#: doc/classes/DynamicFont.xml:60
+#: doc/classes/DynamicFont.xml:68
msgid "Removes the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:71
+#: doc/classes/DynamicFont.xml:79
msgid "Sets the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:82
+#: doc/classes/DynamicFont.xml:90
msgid ""
"Sets the spacing for [code]type[/code] (see [enum SpacingType]) to "
"[code]value[/code] in pixels (not relative to the font size)."
msgstr ""
-#: doc/classes/DynamicFont.xml:88
+#: doc/classes/DynamicFont.xml:96
msgid "Extra spacing at the bottom in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:91
+#: doc/classes/DynamicFont.xml:99
msgid "Extra character spacing in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:94
+#: doc/classes/DynamicFont.xml:102
msgid "Extra space spacing in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:97
+#: doc/classes/DynamicFont.xml:105
msgid "Extra spacing at the top in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:100
+#: doc/classes/DynamicFont.xml:108
msgid "The font data."
msgstr ""
-#: doc/classes/DynamicFont.xml:103
+#: doc/classes/DynamicFont.xml:111
msgid ""
"The font outline's color.\n"
"[b]Note:[/b] It's recommended to leave this at the default value so that you "
@@ -18258,27 +18883,27 @@ msgid ""
"outline modulate theme item."
msgstr ""
-#: doc/classes/DynamicFont.xml:107
+#: doc/classes/DynamicFont.xml:115
msgid "The font outline's thickness in pixels (not relative to the font size)."
msgstr ""
-#: doc/classes/DynamicFont.xml:110
+#: doc/classes/DynamicFont.xml:118
msgid "The font size in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:115
+#: doc/classes/DynamicFont.xml:123
msgid "Spacing at the top."
msgstr ""
-#: doc/classes/DynamicFont.xml:118
+#: doc/classes/DynamicFont.xml:126
msgid "Spacing at the bottom."
msgstr ""
-#: doc/classes/DynamicFont.xml:121
+#: doc/classes/DynamicFont.xml:129
msgid "Character spacing."
msgstr ""
-#: doc/classes/DynamicFont.xml:124
+#: doc/classes/DynamicFont.xml:132
msgid "Space spacing."
msgstr ""
@@ -18660,7 +19285,12 @@ msgstr ""
msgid "Remitted if a resource is reimported."
msgstr ""
-#: doc/classes/EditorFileSystem.xml:106
+#: doc/classes/EditorFileSystem.xml:100
+msgid ""
+"Emitted if at least one resource is reloaded when the filesystem is scanned."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:107
msgid "Emitted if the source of any imported file changed."
msgstr ""
@@ -18702,29 +19332,43 @@ msgstr ""
msgid "Returns the path to the file at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:86
+#: doc/classes/EditorFileSystemDirectory.xml:70
+msgid ""
+"Returns the base class of the script class defined in the file at index "
+"[code]idx[/code]. If the file doesn't define a script class using the "
+"[code]class_name[/code] syntax, this will return an empty string."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:79
+msgid ""
+"Returns the name of the script class defined in the file at index [code]idx[/"
+"code]. If the file doesn't define a script class using the [code]class_name[/"
+"code] syntax, this will return an empty string."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:88
msgid "Returns the file extension of the file at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:93
+#: doc/classes/EditorFileSystemDirectory.xml:95
msgid "Returns the name of this directory."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:100
+#: doc/classes/EditorFileSystemDirectory.xml:102
msgid ""
"Returns the parent directory for this directory or [code]null[/code] if "
"called on a directory at [code]res://[/code] or [code]user://[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:107
+#: doc/classes/EditorFileSystemDirectory.xml:109
msgid "Returns the path to this directory."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:116
+#: doc/classes/EditorFileSystemDirectory.xml:118
msgid "Returns the subdirectory at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:123
+#: doc/classes/EditorFileSystemDirectory.xml:125
msgid "Returns the number of subdirectories in this directory."
msgstr ""
@@ -18815,45 +19459,72 @@ msgstr ""
msgid "Gets the unique name of the importer."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:92
+#: doc/classes/EditorImportPlugin.xml:86
+msgid ""
+"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. For example:\n"
+"[codeblock]\n"
+"func get_option_visibility(option, options):\n"
+" # Only show the lossy quality setting if the compression mode is set to "
+"\"Lossy\".\n"
+" if option == \"compress/lossy_quality\" and options.has(\"compress/mode"
+"\"):\n"
+" return int(options[\"compress/mode\"]) == COMPRESS_LOSSY\n"
+"\n"
+" return true\n"
+"[/codeblock]\n"
+"Return [code]true[/code] to make all options always visible."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:102
msgid ""
"Gets the number of initial presets defined by the plugin. Use [method "
"get_import_options] to get the default options for the preset and [method "
"get_preset_name] to get the name of the preset."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:101
+#: doc/classes/EditorImportPlugin.xml:111
msgid "Gets the name of the options preset at this index."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:108
+#: doc/classes/EditorImportPlugin.xml:118
msgid ""
"Gets the priority of this plugin for the recognized extension. Higher "
"priority plugins will be preferred. The default priority is [code]1.0[/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:115
+#: doc/classes/EditorImportPlugin.xml:125
msgid ""
"Gets the list of file extensions to associate with this loader (case-"
"insensitive). e.g. [code][\"obj\"][/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:122
+#: doc/classes/EditorImportPlugin.xml:132
msgid ""
"Gets the Godot resource type associated with this loader. e.g. [code]\"Mesh"
"\"[/code] or [code]\"Animation\"[/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:129
+#: doc/classes/EditorImportPlugin.xml:139
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:136
+#: doc/classes/EditorImportPlugin.xml:146
msgid "Gets the name to display in the import window."
msgstr ""
+#: doc/classes/EditorImportPlugin.xml:163
+msgid ""
+"Imports [code]source_file[/code] into [code]save_path[/code] with the import "
+"[code]options[/code] specified. The [code]platform_variants[/code] and "
+"[code]gen_files[/code] arrays will be modified by this function.\n"
+"This method must be overridden to do the actual importing work. See this "
+"class' description for an example of overriding this method."
+msgstr ""
+
#: doc/classes/EditorInspector.xml:4
msgid "A tab used to edit properties of the selected node."
msgstr ""
@@ -18869,6 +19540,62 @@ msgid ""
"the singleton using [method EditorInterface.get_inspector]."
msgstr ""
+#: doc/classes/EditorInspector.xml:17
+msgid ""
+"Refreshes the inspector.\n"
+"[b]Note:[/b] To save on CPU resources, calling this method will do nothing "
+"if the time specified in [code]docks/property_editor/auto_refresh_interval[/"
+"code] editor setting hasn't passed yet since this method was last called. "
+"(By default, this interval is set to 0.3 seconds.)"
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:30
+msgid ""
+"Emitted when the Edit button of an [Object] has been pressed in the "
+"inspector. This is mainly used in the remote scene tree inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:37
+#, fuzzy
+msgid "Emitted when a property is removed from the inspector."
+msgstr "プロパティã¯ã€ã‚¨ãƒ‡ã‚£ã‚¿ã®ã‚¤ãƒ³ã‚¹ãƒšã‚¯ã‚¿ã§ãƒã‚§ãƒƒã‚¯ãŒä»˜ã„ã¦ã„ã¾ã™ã€‚"
+
+#: doc/classes/EditorInspector.xml:44
+#, fuzzy
+msgid "Emitted when a property is edited in the inspector."
+msgstr "プロパティã¯ã€ã‚¨ãƒ‡ã‚£ã‚¿ã®ã‚¤ãƒ³ã‚¹ãƒšã‚¯ã‚¿ã§ãƒã‚§ãƒƒã‚¯ãŒä»˜ã„ã¦ã„ã¾ã™ã€‚"
+
+#: doc/classes/EditorInspector.xml:51
+msgid ""
+"Emitted when a property is keyed in the inspector. Properties can be keyed "
+"by clicking the \"key\" icon next to a property when the Animation panel is "
+"toggled."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:58
+#, fuzzy
+msgid "Emitted when a property is selected in the inspector."
+msgstr "プロパティã¯ã€ã‚¨ãƒ‡ã‚£ã‚¿ã®ã‚¤ãƒ³ã‚¹ãƒšã‚¯ã‚¿ã§ãƒã‚§ãƒƒã‚¯ãŒä»˜ã„ã¦ã„ã¾ã™ã€‚"
+
+#: doc/classes/EditorInspector.xml:67
+msgid ""
+"Emitted when a boolean property is toggled in the inspector.\n"
+"[b]Note:[/b] This signal is never emitted if the internal [code]autoclear[/"
+"code] property enabled. Since this property is always enabled in the editor "
+"inspector, this signal is never emitted by the editor itself."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:77
+#, fuzzy
+msgid "Emitted when a resource is selected in the inspector."
+msgstr "プロパティã¯ã€ã‚¨ãƒ‡ã‚£ã‚¿ã®ã‚¤ãƒ³ã‚¹ãƒšã‚¯ã‚¿ã§ãƒã‚§ãƒƒã‚¯ãŒä»˜ã„ã¦ã„ã¾ã™ã€‚"
+
+#: doc/classes/EditorInspector.xml:82
+msgid ""
+"Emitted when a property that requires a restart to be applied is edited in "
+"the inspector. This is only used in the Project Settings and Editor Settings."
+msgstr ""
+
#: doc/classes/EditorInspectorPlugin.xml:4
msgid "Plugin for adding custom property editors on inspector."
msgstr ""
@@ -18947,91 +19674,170 @@ msgstr ""
#: doc/classes/EditorInterface.xml:26
msgid ""
-"Returns the main container of Godot editor's window. You can use it, for "
-"example, to retrieve the size of the container and place your controls "
+"Returns the main container of Godot editor's window. For example, you can "
+"use it to retrieve the size of the container and place your controls "
"accordingly."
msgstr ""
-#: doc/classes/EditorInterface.xml:39
-msgid "Returns the edited (current) scene's root [Node]."
+#: doc/classes/EditorInterface.xml:33
+msgid "Returns the current path being viewed in the [FileSystemDock]."
msgstr ""
-#: doc/classes/EditorInterface.xml:46
-msgid "Returns the [EditorSettings]."
+#: doc/classes/EditorInterface.xml:40
+msgid "Returns the edited (current) scene's root [Node]."
msgstr ""
-#: doc/classes/EditorInterface.xml:53
-msgid "Returns the editor [Viewport]."
+#: doc/classes/EditorInterface.xml:47
+#, fuzzy
+msgid "Returns the editor's [EditorSettings] instance."
+msgstr "OK [Button] インスタンスを返ã—ã¾ã™ã€‚"
+
+#: doc/classes/EditorInterface.xml:54
+msgid ""
+"Returns the main editor control. Use this as a parent for main screens.\n"
+"[b]Note:[/b] This returns the main editor control containing the whole "
+"editor, not the 2D or 3D viewports specifically."
msgstr ""
-#: doc/classes/EditorInterface.xml:72
+#: doc/classes/EditorInterface.xml:62
+#, fuzzy
+msgid "Returns the editor's [FileSystemDock] instance."
+msgstr "OK [Button] インスタンスを返ã—ã¾ã™ã€‚"
+
+#: doc/classes/EditorInterface.xml:69
+#, fuzzy
+msgid "Returns the editor's [EditorInspector] instance."
+msgstr "OK [Button] インスタンスを返ã—ã¾ã™ã€‚"
+
+#: doc/classes/EditorInterface.xml:76
msgid "Returns an [Array] with the file paths of the currently opened scenes."
msgstr ""
-#: doc/classes/EditorInterface.xml:79
-msgid "Returns the [EditorFileSystem]."
+#: doc/classes/EditorInterface.xml:83
+msgid ""
+"Returns the name of the scene that is being played. If no scene is currently "
+"being played, returns an empty string."
msgstr ""
-#: doc/classes/EditorInterface.xml:86
-msgid "Returns the [EditorResourcePreview]."
-msgstr ""
+#: doc/classes/EditorInterface.xml:90
+#, fuzzy
+msgid "Returns the editor's [EditorFileSystem] instance."
+msgstr "OK [Button] インスタンスを返ã—ã¾ã™ã€‚"
-#: doc/classes/EditorInterface.xml:93
-msgid "Returns the [ScriptEditor]."
-msgstr ""
+#: doc/classes/EditorInterface.xml:97
+#, fuzzy
+msgid "Returns the editor's [EditorResourcePreview] instance."
+msgstr "OK [Button] インスタンスを返ã—ã¾ã™ã€‚"
+
+#: doc/classes/EditorInterface.xml:104
+#, fuzzy
+msgid "Returns the editor's [ScriptEditor] instance."
+msgstr "OK [Button] インスタンスを返ã—ã¾ã™ã€‚"
-#: doc/classes/EditorInterface.xml:106
-msgid "Returns the [EditorSelection]."
+#: doc/classes/EditorInterface.xml:111
+msgid ""
+"Returns the path of the directory currently selected in the "
+"[FileSystemDock]. If a file is selected, its base directory will be returned "
+"using [method String.get_base_dir] instead."
msgstr ""
-#: doc/classes/EditorInterface.xml:117
+#: doc/classes/EditorInterface.xml:118
+#, fuzzy
+msgid "Returns the editor's [EditorSelection] instance."
+msgstr "OK [Button] インスタンスを返ã—ã¾ã™ã€‚"
+
+#: doc/classes/EditorInterface.xml:129
+#, fuzzy
msgid ""
-"Shows the given property on the given [code]object[/code] in the Editor's "
+"Shows the given property on the given [code]object[/code] in the editor's "
"Inspector dock."
+msgstr "プロパティã¯ã€ã‚¨ãƒ‡ã‚£ã‚¿ã®ã‚¤ãƒ³ã‚¹ãƒšã‚¯ã‚¿ã§ãƒã‚§ãƒƒã‚¯ãŒä»˜ã‘られã¾ã™ã€‚"
+
+#: doc/classes/EditorInterface.xml:136
+#, fuzzy
+msgid ""
+"Returns [code]true[/code] if a scene is currently being played, [code]false[/"
+"code] otherwise. Paused scenes are considered as being played."
msgstr ""
+"ドメインãŒãƒ•ã‚¡ã‚¤ãƒŠãƒ©ã‚¤ã‚ºä¸­ã§ã‚れ㰠[code]true[/code] ã‚’è¿”ã—ã€ãれ以外ã§ã¯ "
+"[code]false[/code] ã‚’è¿”ã—ã¾ã™ã€‚"
-#: doc/classes/EditorInterface.xml:126
+#: doc/classes/EditorInterface.xml:145
+#, fuzzy
msgid ""
-"Returns the enabled status of a plugin. The plugin name is the same as its "
-"directory name."
+"Returns [code]true[/code] if the specified [code]plugin[/code] is enabled. "
+"The plugin name is the same as its directory name."
msgstr ""
+"インデックス [code]idx[/code] ã®ãƒˆãƒ©ãƒƒã‚¯ãŒæœ‰åŠ¹ãªå ´åˆã€ [code]true[/code] ã‚’è¿”"
+"ã—ã¾ã™ã€‚"
-#: doc/classes/EditorInterface.xml:137
+#: doc/classes/EditorInterface.xml:156
msgid ""
"Returns mesh previews rendered at the given size as an [Array] of "
"[Texture2D]s."
msgstr ""
-#: doc/classes/EditorInterface.xml:146
+#: doc/classes/EditorInterface.xml:165
msgid "Opens the scene at the given path."
msgstr ""
-#: doc/classes/EditorInterface.xml:155
+#: doc/classes/EditorInterface.xml:172
+msgid "Plays the currently active scene."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:181
+msgid "Plays the scene specified by its filepath."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:188
+msgid "Plays the main scene."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:197
msgid "Reloads the scene at the given path."
msgstr ""
-#: doc/classes/EditorInterface.xml:162
+#: doc/classes/EditorInterface.xml:204
msgid ""
"Saves the scene. Returns either [code]OK[/code] or [code]ERR_CANT_CREATE[/"
"code] (see [@GlobalScope] constants)."
msgstr ""
-#: doc/classes/EditorInterface.xml:173
+#: doc/classes/EditorInterface.xml:215
msgid "Saves the scene as a file at [code]path[/code]."
msgstr ""
-#: doc/classes/EditorInterface.xml:182
+#: doc/classes/EditorInterface.xml:224
msgid ""
"Selects the file, with the path provided by [code]file[/code], in the "
"FileSystem dock."
msgstr ""
-#: doc/classes/EditorInterface.xml:201
+#: doc/classes/EditorInterface.xml:233
+msgid ""
+"Sets the editor's current main screen to the one specified in [code]name[/"
+"code]. [code]name[/code] must match the text of the tab in question exactly "
+"([code]2D[/code], [code]3D[/code], [code]Script[/code], [code]AssetLib[/"
+"code])."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:244
msgid ""
"Sets the enabled status of a plugin. The plugin name is the same as its "
"directory name."
msgstr ""
+#: doc/classes/EditorInterface.xml:251
+#, fuzzy
+msgid "Stops the scene that is currently playing."
+msgstr "[code]true[/code] ã§ã‚ã‚Œã°ã€[member animation] ãŒç¾åœ¨å†ç”Ÿä¸­ã€‚"
+
+#: doc/classes/EditorInterface.xml:257
+msgid ""
+"If [code]true[/code], enables distraction-free mode which hides side docks "
+"to increase the space available for the main view."
+msgstr ""
+
#: doc/classes/EditorNode3DGizmo.xml:4
msgid "Custom gizmo for editing Node3D objects."
msgstr ""
@@ -19043,14 +19849,20 @@ msgid ""
"information."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:26
+#: doc/classes/EditorNode3DGizmo.xml:18
+msgid ""
+"Adds the specified [code]segments[/code] to the gizmo's collision shape for "
+"picking. Call this function during [method redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:27
msgid ""
"Adds collision triangles to the gizmo for picking. A [TriangleMesh] can be "
"generated from a regular [Mesh] too. Call this function during [method "
"redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:41
+#: doc/classes/EditorNode3DGizmo.xml:42
msgid ""
"Adds a list of handles (points) which can be used to deform the object being "
"edited.\n"
@@ -19058,20 +19870,33 @@ msgid ""
"handles. Call this function during [method redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:57
+#: doc/classes/EditorNode3DGizmo.xml:58
msgid ""
"Adds lines to the gizmo (as sets of 2 points), with a given material. The "
"lines are used for visualizing the gizmo. Call this function during [method "
"redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:84
+#: doc/classes/EditorNode3DGizmo.xml:73
+msgid ""
+"Adds a mesh to the gizmo with the specified [code]billboard[/code] state, "
+"[code]skeleton[/code] and [code]material[/code]. If [code]billboard[/code] "
+"is [code]true[/code], the mesh will rotate to always face the camera. Call "
+"this function during [method redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:86
msgid ""
"Adds an unscaled billboard for visualization. Call this function during "
"[method redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:103
+#: doc/classes/EditorNode3DGizmo.xml:93
+msgid ""
+"Removes everything in the gizmo including meshes, collisions and handles."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:106
msgid ""
"Commit a handle being edited (handles must have been previously added by "
"[method add_handles]).\n"
@@ -19079,40 +19904,45 @@ msgid ""
"restore the edited value to the original is provided."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:113
+#: doc/classes/EditorNode3DGizmo.xml:116
msgid ""
"Gets the name of an edited handle (handles must have been previously added "
"by [method add_handles]).\n"
"Handles can be named for reference to the user when editing."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:123
+#: doc/classes/EditorNode3DGizmo.xml:126
msgid ""
"Gets actual value of a handle. This value can be anything and used for "
"eventually undoing the motion when calling [method commit_handle]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:130
+#: doc/classes/EditorNode3DGizmo.xml:133
msgid ""
"Returns the [EditorNode3DGizmoPlugin] that owns this gizmo. It's useful to "
"retrieve materials using [method EditorNode3DGizmoPlugin.get_material]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:137
+#: doc/classes/EditorNode3DGizmo.xml:140
msgid "Returns the Node3D node associated with this gizmo."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:146
-msgid "Gets whether a handle is highlighted or not."
+#: doc/classes/EditorNode3DGizmo.xml:149
+#, fuzzy
+msgid ""
+"Returns [code]true[/code] if the handle at index [code]index[/code] is "
+"highlighted by being hovered with the mouse."
msgstr ""
+"インデックス [code]idx[/code] ã®ãƒˆãƒ©ãƒƒã‚¯ãŒæœ‰åŠ¹ãªå ´åˆã€ [code]true[/code] ã‚’è¿”"
+"ã—ã¾ã™ã€‚"
-#: doc/classes/EditorNode3DGizmo.xml:153
+#: doc/classes/EditorNode3DGizmo.xml:156
msgid ""
-"This function is called when the Node3D this gizmo refers to changes (the "
+"This function is called when the [Node3D] this gizmo refers to changes (the "
"[method Node3D.update_gizmo] is called)."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:166
+#: doc/classes/EditorNode3DGizmo.xml:169
msgid ""
"This function is used when the user drags a gizmo handle (previously added "
"with [method add_handles]) in screen coordinates.\n"
@@ -19120,6 +19950,18 @@ msgid ""
"raycasts."
msgstr ""
+#: doc/classes/EditorNode3DGizmo.xml:179
+msgid ""
+"Sets the gizmo's hidden state. If [code]true[/code], the gizmo will be "
+"hidden. If [code]false[/code], it will be shown."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:188
+msgid ""
+"Sets the reference [Node3D] node for the gizmo. [code]node[/code] must "
+"inherit from [Node3D]."
+msgstr ""
+
#: doc/classes/EditorNode3DGizmoPlugin.xml:4
msgid "Used by the editor to define Node3D gizmo types."
msgstr ""
@@ -19212,7 +20054,17 @@ msgid ""
"visibility menu."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:150
+#: doc/classes/EditorNode3DGizmoPlugin.xml:142
+msgid ""
+"Override this method to set the gizmo's priority. Higher values correspond "
+"to higher priority. If a gizmo with higher priority conflicts with another "
+"gizmo, only the gizmo with higher priority will be used.\n"
+"All built-in editor gizmos return a priority of [code]-1[/code]. If not "
+"overridden, this method will return [code]0[/code], which means custom "
+"gizmos will automatically override built-in gizmos."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:152
msgid ""
"Override this method to define which Node3D nodes have a gizmo from this "
"plugin. Whenever a [Node3D] node is added to a scene this method is called, "
@@ -19220,25 +20072,25 @@ msgid ""
"assigned and is added to this plugin's list of active gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:161
+#: doc/classes/EditorNode3DGizmoPlugin.xml:163
msgid ""
"Gets whether a handle is highlighted or not. Called for this plugin's active "
"gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:168
+#: doc/classes/EditorNode3DGizmoPlugin.xml:170
msgid ""
"Override this method to define whether Node3D with this gizmo should be "
"selecteble even when the gizmo is hidden."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:177
+#: doc/classes/EditorNode3DGizmoPlugin.xml:179
msgid ""
"Callback to redraw the provided gizmo. Called for this plugin's active "
"gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:192
+#: doc/classes/EditorNode3DGizmoPlugin.xml:194
msgid ""
"Update the value of a handle after it has been updated. Called for this "
"plugin's active gizmos."
@@ -19325,7 +20177,13 @@ msgid ""
"should be cleaned up using [code]remove_tool_menu_item(name)[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:149
+#: doc/classes/EditorPlugin.xml:151
+msgid ""
+"Registers a custom translation parser plugin for extracting translatable "
+"strings from custom files."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:158
msgid ""
"This method is called when the editor is about to save the project, switch "
"to another tab, etc. It asks the plugin to apply any pending state changes "
@@ -19334,32 +20192,32 @@ msgid ""
"must apply the shader code being written by the user to the object."
msgstr ""
-#: doc/classes/EditorPlugin.xml:163
+#: doc/classes/EditorPlugin.xml:172
msgid ""
"Clear all the state and reset the object being edited to zero. This ensures "
"your plugin does not keep editing a currently existing node, or a node from "
"the wrong scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:170
+#: doc/classes/EditorPlugin.xml:179
msgid ""
"Called by the engine when the user disables the [EditorPlugin] in the Plugin "
"tab of the project settings window."
msgstr ""
-#: doc/classes/EditorPlugin.xml:179
+#: doc/classes/EditorPlugin.xml:188
msgid ""
"This function is used for plugins that edit specific object types (nodes or "
"resources). It requests the editor to edit the given object."
msgstr ""
-#: doc/classes/EditorPlugin.xml:186
+#: doc/classes/EditorPlugin.xml:195
msgid ""
"Called by the engine when the user enables the [EditorPlugin] in the Plugin "
"tab of the project settings window."
msgstr ""
-#: doc/classes/EditorPlugin.xml:211
+#: doc/classes/EditorPlugin.xml:220
msgid ""
"Called when there is a root node in the current edited scene, [method "
"handles] is implemented and an [InputEvent] happens in the 2D viewport. "
@@ -19384,7 +20242,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:237
+#: doc/classes/EditorPlugin.xml:246
msgid ""
"Called when there is a root node in the current edited scene, [method "
"handles] is implemented and an [InputEvent] happens in the 3D viewport. "
@@ -19409,20 +20267,20 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:259
+#: doc/classes/EditorPlugin.xml:268
msgid ""
"This is for editors that edit script-based objects. You can return a list of "
"breakpoints in the format ([code]script:line[/code]), for example: "
"[code]res://path_to_script.gd:25[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:266
+#: doc/classes/EditorPlugin.xml:275
msgid ""
"Returns the [EditorInterface] object that gives you control over Godot "
"editor's window and its functionalities."
msgstr ""
-#: doc/classes/EditorPlugin.xml:273
+#: doc/classes/EditorPlugin.xml:282
msgid ""
"Override this method in your plugin to return a [Texture2D] in order to give "
"it an icon.\n"
@@ -19440,7 +20298,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:289
+#: doc/classes/EditorPlugin.xml:298
msgid ""
"Override this method in your plugin to provide the name of the plugin when "
"displayed in the Godot editor.\n"
@@ -19448,33 +20306,33 @@ msgid ""
"of the \"2D\", \"3D\", \"Script\", and \"AssetLib\" buttons."
msgstr ""
-#: doc/classes/EditorPlugin.xml:297
+#: doc/classes/EditorPlugin.xml:306
msgid ""
"Gets the Editor's dialogue used for making scripts.\n"
"[b]Note:[/b] Users can configure it before use."
msgstr ""
-#: doc/classes/EditorPlugin.xml:305
+#: doc/classes/EditorPlugin.xml:314
msgid ""
"Gets the state of your plugin editor. This is used when saving the scene (so "
"state is kept when opening it again) and for switching tabs (so state can be "
"restored when the tab returns)."
msgstr ""
-#: doc/classes/EditorPlugin.xml:312
+#: doc/classes/EditorPlugin.xml:321
msgid ""
"Gets the undo/redo object. Most actions in the editor can be undoable, so "
"use this object to make sure this happens when it's worth it."
msgstr ""
-#: doc/classes/EditorPlugin.xml:321
+#: doc/classes/EditorPlugin.xml:330
msgid ""
"Gets the GUI layout of the plugin. This is used to save the project's editor "
"layout when [method queue_save_layout] is called or the editor layout was "
"changed(For example changing the position of a dock)."
msgstr ""
-#: doc/classes/EditorPlugin.xml:330
+#: doc/classes/EditorPlugin.xml:339
msgid ""
"Implement this function if your plugin edits a specific type of object "
"(Resource or Node). If you return [code]true[/code], then you will get the "
@@ -19484,14 +20342,14 @@ msgid ""
"be called too."
msgstr ""
-#: doc/classes/EditorPlugin.xml:337
+#: doc/classes/EditorPlugin.xml:346
msgid ""
"Returns [code]true[/code] if this is a main screen editor plugin (it goes in "
"the workspace selector together with [b]2D[/b], [b]3D[/b], [b]Script[/b] and "
"[b]AssetLib[/b])."
msgstr ""
-#: doc/classes/EditorPlugin.xml:360
+#: doc/classes/EditorPlugin.xml:369
msgid ""
"This function will be called when the editor is requested to become visible. "
"It is used for plugins that edit a specific object type.\n"
@@ -19499,85 +20357,89 @@ msgid ""
"manually."
msgstr ""
-#: doc/classes/EditorPlugin.xml:368
+#: doc/classes/EditorPlugin.xml:377
msgid "Queue save the project's editor layout."
msgstr ""
-#: doc/classes/EditorPlugin.xml:377
+#: doc/classes/EditorPlugin.xml:386
msgid "Removes an Autoload [code]name[/code] from the list."
msgstr ""
-#: doc/classes/EditorPlugin.xml:386
+#: doc/classes/EditorPlugin.xml:395
msgid ""
"Removes the control from the bottom panel. You have to manually [method Node."
"queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:397
+#: doc/classes/EditorPlugin.xml:406
msgid ""
"Removes the control from the specified container. You have to manually "
"[method Node.queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:406
+#: doc/classes/EditorPlugin.xml:415
msgid ""
"Removes the control from the dock. You have to manually [method Node."
"queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:415
+#: doc/classes/EditorPlugin.xml:424
msgid "Removes a custom type added by [method add_custom_type]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:464
+#: doc/classes/EditorPlugin.xml:473
msgid "Removes a menu [code]name[/code] from [b]Project > Tools[/b]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:471
+#: doc/classes/EditorPlugin.xml:482
+msgid "Removes a registered custom translation parser plugin."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:489
msgid ""
"This method is called after the editor saves the project or when it's "
"closed. It asks the plugin to save edited external scenes/resources."
msgstr ""
-#: doc/classes/EditorPlugin.xml:484
+#: doc/classes/EditorPlugin.xml:502
msgid ""
"Use this method if you always want to receive inputs from 3D view screen "
"inside [method forward_spatial_gui_input]. It might be especially usable if "
"your plugin will want to use raycast in the scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:493
+#: doc/classes/EditorPlugin.xml:511
msgid "Restore the state saved by [method get_state]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:502
+#: doc/classes/EditorPlugin.xml:520
msgid "Restore the plugin GUI layout saved by [method get_window_layout]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:509
+#: doc/classes/EditorPlugin.xml:527
msgid "Updates the overlays of the editor (2D/3D) viewport."
msgstr ""
-#: doc/classes/EditorPlugin.xml:518
+#: doc/classes/EditorPlugin.xml:536
msgid ""
"Emitted when user changes the workspace ([b]2D[/b], [b]3D[/b], [b]Script[/"
"b], [b]AssetLib[/b]). Also works with custom screens defined by plugins."
msgstr ""
-#: doc/classes/EditorPlugin.xml:531
+#: doc/classes/EditorPlugin.xml:549
msgid ""
"Emitted when the scene is changed in the editor. The argument will return "
"the root node of the scene that has just become active. If this scene is new "
"and empty, the argument will be [code]null[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:538
+#: doc/classes/EditorPlugin.xml:556
msgid ""
"Emitted when user closes a scene. The argument is file path to a closed "
"scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:584
+#: doc/classes/EditorPlugin.xml:602
msgid "Represents the size of the [enum DockSlot] enum."
msgstr ""
@@ -19632,64 +20494,83 @@ msgid "When this virtual function is called, you must update your editor."
msgstr ""
#: doc/classes/EditorProperty.xml:76
-msgid "Used by the inspector, set when property is checkable."
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is "
+"checkable."
msgstr ""
#: doc/classes/EditorProperty.xml:79
-msgid "Used by the inspector, when the property is checked."
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is checked."
msgstr ""
-#: doc/classes/EditorProperty.xml:84
-msgid "Used by the inspector, when the property must draw with error color."
+#: doc/classes/EditorProperty.xml:82
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property can be "
+"deleted by the user."
msgstr ""
-#: doc/classes/EditorProperty.xml:87
-msgid "Used by the inspector, when the property can add keys for animation."
+#: doc/classes/EditorProperty.xml:85
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property must draw "
+"with error color. This is used for editable children's properties."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:88
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property can add "
+"keys for animation."
msgstr ""
-#: doc/classes/EditorProperty.xml:90
-msgid "Sets this property to change the label (if you want to show one)."
+#: doc/classes/EditorProperty.xml:91
+msgid "Set this property to change the label (if you want to show one)."
msgstr ""
-#: doc/classes/EditorProperty.xml:93
-msgid "Used by the inspector, when the property is read-only."
+#: doc/classes/EditorProperty.xml:94
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is read-"
+"only."
msgstr ""
-#: doc/classes/EditorProperty.xml:103
+#: doc/classes/EditorProperty.xml:104
msgid ""
"Emit it if you want multiple properties modified at the same time. Do not "
"use if added via [method EditorInspectorPlugin.parse_property]."
msgstr ""
-#: doc/classes/EditorProperty.xml:112
+#: doc/classes/EditorProperty.xml:113
msgid "Used by sub-inspectors. Emit it if what was selected was an Object ID."
msgstr ""
-#: doc/classes/EditorProperty.xml:121
+#: doc/classes/EditorProperty.xml:122
msgid ""
"Do not emit this manually, use the [method emit_changed] method instead."
msgstr ""
-#: doc/classes/EditorProperty.xml:130
+#: doc/classes/EditorProperty.xml:131
msgid "Emitted when a property was checked. Used internally."
msgstr ""
-#: doc/classes/EditorProperty.xml:143
+#: doc/classes/EditorProperty.xml:138
+msgid "Emitted when a property was deleted. Used internally."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:145
msgid ""
"Emit it if you want to add this value as an animation key (check for keying "
"being enabled first)."
msgstr ""
-#: doc/classes/EditorProperty.xml:152
+#: doc/classes/EditorProperty.xml:154
msgid "Emit it if you want to key a property with a single value."
msgstr ""
-#: doc/classes/EditorProperty.xml:161
+#: doc/classes/EditorProperty.xml:163
msgid ""
"If you want a sub-resource to be edited, emit this signal with the resource."
msgstr ""
-#: doc/classes/EditorProperty.xml:170
+#: doc/classes/EditorProperty.xml:172
msgid "Emitted when selected. Used internally."
msgstr ""
@@ -19974,17 +20855,26 @@ msgstr ""
msgid ""
"Object that holds the project-independent editor settings. These settings "
"are generally visible in the [b]Editor > Editor Settings[/b] menu.\n"
-"Accessing the settings is done by using the regular [Object] API, such as:\n"
-"[codeblock]\n"
-"settings.set(prop,value)\n"
-"settings.get(prop)\n"
-"list_of_settings = settings.get_property_list()\n"
+"Property names use slash delimiters to distinguish sections. Setting values "
+"can be of any [Variant] type. It's recommended to use [code]snake_case[/"
+"code] for editor settings to be consistent with the Godot editor itself.\n"
+"Accessing the settings can be done using the following methods, such as:\n"
+"[codeblock]\n"
+"# `settings.set(\"some/property\", value)` also works as this class "
+"overrides `_set()` internally.\n"
+"settings.set_setting(\"some/property\",value)\n"
+"\n"
+"# `settings.get(\"some/property\", value)` also works as this class "
+"overrides `_get()` internally.\n"
+"settings.get_setting(\"some/property\")\n"
+"\n"
+"var list_of_settings = settings.get_property_list()\n"
"[/codeblock]\n"
"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
"the singleton using [method EditorInterface.get_editor_settings]."
msgstr ""
-#: doc/classes/EditorSettings.xml:25
+#: doc/classes/EditorSettings.xml:30
msgid ""
"Adds a custom property info to a property. The dictionary must contain:\n"
"- [code]name[/code]: [String] (the name of the property)\n"
@@ -20006,52 +20896,177 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorSettings.xml:50
-msgid "Erase a given setting (pass full property path)."
+#: doc/classes/EditorSettings.xml:55
+#, fuzzy
+msgid "Erases the setting whose name is specified by [code]property[/code]."
+msgstr "指定ã—㟠[code]name[/code] ã®ã‚µãƒ–ノードを返ã—ã¾ã™ã€‚"
+
+#: doc/classes/EditorSettings.xml:62
+msgid "Returns the list of favorite files and directories for this project."
msgstr ""
-#: doc/classes/EditorSettings.xml:57
-msgid "Gets the list of favorite files and directories for this project."
+#: doc/classes/EditorSettings.xml:75
+msgid ""
+"Returns project-specific metadata for the [code]section[/code] and "
+"[code]key[/code] specified. If the metadata doesn't exist, [code]default[/"
+"code] will be returned instead. See also [method set_project_metadata]."
msgstr ""
-#: doc/classes/EditorSettings.xml:76
+#: doc/classes/EditorSettings.xml:82
msgid ""
-"Gets the specific project settings path. Projects all have a unique sub-"
-"directory inside the settings path where project specific settings are saved."
+"Returns the project-specific settings path. Projects all have a unique "
+"subdirectory inside the settings path where project-specific settings are "
+"saved."
msgstr ""
-#: doc/classes/EditorSettings.xml:83
+#: doc/classes/EditorSettings.xml:89
msgid ""
-"Gets the list of recently visited folders in the file dialog for this "
+"Returns the list of recently visited folders in the file dialog for this "
"project."
msgstr ""
#: doc/classes/EditorSettings.xml:98
msgid ""
+"Returns the value of the setting specified by [code]name[/code]. This is "
+"equivalent to using [method Object.get] on the EditorSettings instance."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:105
+msgid ""
"Gets the global settings path for the engine. Inside this path, you can find "
"some standard paths such as:\n"
"[code]settings/tmp[/code] - Used for temporary storage of files\n"
"[code]settings/templates[/code] - Where export templates are located"
msgstr ""
-#: doc/classes/EditorSettings.xml:133
+#: doc/classes/EditorSettings.xml:116
+#, fuzzy
+msgid ""
+"Returns [code]true[/code] if the setting specified by [code]name[/code] "
+"exists, [code]false[/code] otherwise."
+msgstr ""
+"ドメインãŒãƒ•ã‚¡ã‚¤ãƒŠãƒ©ã‚¤ã‚ºä¸­ã§ã‚れ㰠[code]true[/code] ã‚’è¿”ã—ã€ãれ以外ã§ã¯ "
+"[code]false[/code] ã‚’è¿”ã—ã¾ã™ã€‚"
+
+#: doc/classes/EditorSettings.xml:125
+msgid ""
+"Returns [code]true[/code] if the setting specified by [code]name[/code] can "
+"have its value reverted to the default value, [code]false[/code] otherwise. "
+"When this method returns [code]true[/code], a Revert button will display "
+"next to the setting in the Editor Settings."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:134
+msgid ""
+"Returns the default value of the setting specified by [code]name[/code]. "
+"This is the value that would be applied when clicking the Revert button in "
+"the Editor Settings."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:143
msgid "Sets the list of favorite files and directories for this project."
msgstr ""
-#: doc/classes/EditorSettings.xml:166
+#: doc/classes/EditorSettings.xml:156
+msgid ""
+"Sets the initial value of the setting specified by [code]name[/code] to "
+"[code]value[/code]. This is used to provide a value for the Revert button in "
+"the Editor Settings. If [code]update_current[/code] is true, the current "
+"value of the setting will be set to [code]value[/code] as well."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:169
+msgid ""
+"Sets project-specific metadata with the [code]section[/code], [code]key[/"
+"code] and [code]data[/code] specified. This metadata is stored outside the "
+"project folder and therefore won't be checked into version control. See also "
+"[method get_project_metadata]."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:178
msgid ""
"Sets the list of recently visited folders in the file dialog for this "
"project."
msgstr ""
-#: doc/classes/EditorSettings.xml:183
-msgid "Emitted when editor settings change."
+#: doc/classes/EditorSettings.xml:189
+msgid ""
+"Sets the [code]value[/code] of the setting specified by [code]name[/code]. "
+"This is equivalent to using [method Object.set] on the EditorSettings "
+"instance."
msgstr ""
-#: doc/classes/EditorSettings.xml:189
+#: doc/classes/EditorSettings.xml:196
+msgid "Emitted after any editor setting has changed."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:202
+msgid ""
+"Emitted after any editor setting has changed. It's used by various editor "
+"plugins to update their visuals on theme changes or logic on configuration "
+"changes."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:4
+msgid ""
+"Plugin for adding custom parsers to extract strings that are to be "
+"translated from custom files (.csv, .json etc.)."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:7
+msgid ""
+"Plugins are registered via [method EditorPlugin."
+"add_translation_parser_plugin] method. To define the parsing and string "
+"extraction logic, override the [method parse_file] method in script.\n"
+"The extracted strings will be written into a POT file selected by user under "
+"\"POT Generation\" in \"Localization\" tab in \"Project Settings\" menu.\n"
+"Below shows an example of a custom parser that extracts strings in a CSV "
+"file to write into a POT.\n"
+"[codeblock]\n"
+"tool\n"
+"extends EditorTranslationParserPlugin\n"
+"\n"
+"\n"
+"func parse_file(path, extracted_strings):\n"
+" var file = File.new()\n"
+" file.open(path, File.READ)\n"
+" var text = file.get_as_text()\n"
+" var split_strs = text.split(\",\", false, 0)\n"
+" for s in split_strs:\n"
+" extracted_strings.append(s)\n"
+" #print(\"Extracted string: \" + s)\n"
+"\n"
+"\n"
+"func get_recognized_extensions():\n"
+" return [\"csv\"]\n"
+"[/codeblock]\n"
+"[b]Note:[/b] If you override parsing logic for standard script types "
+"(GDScript, C#, etc.), it would be better to load the [code]path[/code] "
+"argument using [method ResourceLoader.load]. This is because built-in "
+"scripts are loaded as [Resource] type, not [File] type.\n"
+"For example:\n"
+"[codeblock]\n"
+"func parse_file(path, extracted_strings):\n"
+" var res = ResourceLoader.load(path, \"Script\")\n"
+" var text = res.get_source_code()\n"
+" # Parsing logic.\n"
+"\n"
+"\n"
+"func get_recognized_extensions():\n"
+" return [\"gd\"]\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:48
msgid ""
-"Emitted when editor settings change. It used by various editor plugins to "
-"update their visuals on theme changes or logic on configuration changes."
+"Gets the list of file extensions to associate with this parser, e.g. [code]"
+"[\"csv\"][/code]."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:59
+msgid ""
+"Override this method to define a custom parsing logic to extract the "
+"translatable strings."
msgstr ""
#: doc/classes/EditorVCSInterface.xml:4
@@ -20662,15 +21677,15 @@ msgid ""
"to 1.3 to compensate for the lack of HDR rendering."
msgstr ""
-#: doc/classes/Environment.xml:190
+#: doc/classes/Environment.xml:214
msgid "The [Sky] resource used for this [Environment]."
msgstr ""
-#: doc/classes/Environment.xml:197
+#: doc/classes/Environment.xml:221
msgid "The depth tolerance for screen-space reflections."
msgstr ""
-#: doc/classes/Environment.xml:200
+#: doc/classes/Environment.xml:224
msgid ""
"If [code]true[/code], screen-space reflections are enabled. Screen-space "
"reflections are more accurate than reflections from [GIProbe]s or "
@@ -20678,48 +21693,48 @@ msgid ""
"others."
msgstr ""
-#: doc/classes/Environment.xml:203
+#: doc/classes/Environment.xml:227
msgid ""
"The fade-in distance for screen-space reflections. Affects the area from the "
"reflected material to the screen-space reflection)."
msgstr ""
-#: doc/classes/Environment.xml:206
+#: doc/classes/Environment.xml:230
msgid ""
"The fade-out distance for screen-space reflections. Affects the area from "
"the screen-space reflection to the \"global\" reflection."
msgstr ""
-#: doc/classes/Environment.xml:209
+#: doc/classes/Environment.xml:233
msgid ""
"The maximum number of steps for screen-space reflections. Higher values are "
"slower."
msgstr ""
-#: doc/classes/Environment.xml:212
+#: doc/classes/Environment.xml:236
msgid ""
"The screen-space ambient occlusion intensity on materials that have an AO "
"texture defined. Values higher than [code]0[/code] will make the SSAO effect "
"visible in areas darkened by AO textures."
msgstr ""
-#: doc/classes/Environment.xml:215
+#: doc/classes/Environment.xml:239
msgid ""
"The screen-space ambient occlusion bias. This should be kept high enough to "
"prevent \"smooth\" curves from being affected by ambient occlusion."
msgstr ""
-#: doc/classes/Environment.xml:218
+#: doc/classes/Environment.xml:242
msgid ""
"The screen-space ambient occlusion blur quality. See [enum SSAOBlur] for "
"possible values."
msgstr ""
-#: doc/classes/Environment.xml:221
+#: doc/classes/Environment.xml:245
msgid "The screen-space ambient occlusion edge sharpness."
msgstr ""
-#: doc/classes/Environment.xml:224
+#: doc/classes/Environment.xml:248
msgid ""
"If [code]true[/code], the screen-space ambient occlusion effect is enabled. "
"This darkens objects' corners and cavities to simulate ambient light not "
@@ -20730,13 +21745,13 @@ msgid ""
"issues."
msgstr ""
-#: doc/classes/Environment.xml:227
+#: doc/classes/Environment.xml:251
msgid ""
"The primary screen-space ambient occlusion intensity. See also [member "
"ssao_radius]."
msgstr ""
-#: doc/classes/Environment.xml:230
+#: doc/classes/Environment.xml:254
msgid ""
"The screen-space ambient occlusion intensity in direct light. In real life, "
"ambient occlusion only applies to indirect light, which means its effects "
@@ -20744,46 +21759,46 @@ msgid ""
"the SSAO effect visible in direct light."
msgstr ""
-#: doc/classes/Environment.xml:233
+#: doc/classes/Environment.xml:257
msgid "The primary screen-space ambient occlusion radius."
msgstr ""
-#: doc/classes/Environment.xml:236
+#: doc/classes/Environment.xml:260
msgid "The default exposure used for tonemapping."
msgstr ""
-#: doc/classes/Environment.xml:239
+#: doc/classes/Environment.xml:263
msgid ""
"The tonemapping mode to use. Tonemapping is the process that \"converts\" "
"HDR values to be suitable for rendering on a LDR display. (Godot doesn't "
"support rendering on HDR displays yet.)"
msgstr ""
-#: doc/classes/Environment.xml:242
+#: doc/classes/Environment.xml:266
msgid ""
"The white reference value for tonemapping. Only effective if the [member "
"tonemap_mode] isn't set to [constant TONE_MAPPER_LINEAR]."
msgstr ""
-#: doc/classes/Environment.xml:247
+#: doc/classes/Environment.xml:271
msgid ""
"Clears the background using the clear color defined in [member "
"ProjectSettings.rendering/environment/default_clear_color]."
msgstr ""
-#: doc/classes/Environment.xml:250
+#: doc/classes/Environment.xml:274
msgid "Clears the background using a custom clear color."
msgstr ""
-#: doc/classes/Environment.xml:253
+#: doc/classes/Environment.xml:277
msgid "Displays a user-defined sky in the background."
msgstr ""
-#: doc/classes/Environment.xml:256
+#: doc/classes/Environment.xml:280
msgid "Displays a [CanvasLayer] in the background."
msgstr ""
-#: doc/classes/Environment.xml:259
+#: doc/classes/Environment.xml:283
msgid ""
"Keeps on screen every pixel drawn in the background. This is the fastest "
"background mode, but it can only be safely used in fully-interior scenes (no "
@@ -20791,107 +21806,107 @@ msgid ""
"is visible, \"ghost trail\" artifacts will be visible when moving the camera."
msgstr ""
-#: doc/classes/Environment.xml:262 doc/classes/RenderingServer.xml:3446
+#: doc/classes/Environment.xml:286 doc/classes/RenderingServer.xml:3457
msgid "Displays a camera feed in the background."
msgstr ""
-#: doc/classes/Environment.xml:265
+#: doc/classes/Environment.xml:289
msgid "Represents the size of the [enum BGMode] enum."
msgstr ""
-#: doc/classes/Environment.xml:268 doc/classes/RenderingServer.xml:3452
+#: doc/classes/Environment.xml:292 doc/classes/RenderingServer.xml:3463
msgid ""
"Gather ambient light from whichever source is specified as the background."
msgstr ""
-#: doc/classes/Environment.xml:271 doc/classes/RenderingServer.xml:3455
+#: doc/classes/Environment.xml:295 doc/classes/RenderingServer.xml:3466
msgid "Disable ambient light."
msgstr ""
-#: doc/classes/Environment.xml:274 doc/classes/RenderingServer.xml:3458
+#: doc/classes/Environment.xml:298 doc/classes/RenderingServer.xml:3469
msgid "Specify a specific [Color] for ambient light."
msgstr ""
-#: doc/classes/Environment.xml:277 doc/classes/RenderingServer.xml:3461
+#: doc/classes/Environment.xml:301 doc/classes/RenderingServer.xml:3472
msgid ""
"Gather ambient light from the [Sky] regardless of what the background is."
msgstr ""
-#: doc/classes/Environment.xml:280 doc/classes/RenderingServer.xml:3464
+#: doc/classes/Environment.xml:304 doc/classes/RenderingServer.xml:3475
msgid "Use the background for reflections."
msgstr ""
-#: doc/classes/Environment.xml:283 doc/classes/RenderingServer.xml:3467
+#: doc/classes/Environment.xml:307 doc/classes/RenderingServer.xml:3478
msgid "Disable reflections."
msgstr ""
-#: doc/classes/Environment.xml:286 doc/classes/RenderingServer.xml:3470
+#: doc/classes/Environment.xml:310 doc/classes/RenderingServer.xml:3481
msgid "Use the [Sky] for reflections regardless of what the background is."
msgstr ""
-#: doc/classes/Environment.xml:289 doc/classes/RenderingServer.xml:3473
+#: doc/classes/Environment.xml:313
+msgid ""
+"Linear tonemapper operator. Reads the linear data and passes it on "
+"unmodified."
+msgstr ""
+
+#: doc/classes/Environment.xml:316
+msgid ""
+"Reinhardt tonemapper operator. Performs a variation on rendered pixels' "
+"colors by this formula: [code]color = color / (1 + color)[/code]."
+msgstr ""
+
+#: doc/classes/Environment.xml:319
+msgid "Filmic tonemapper operator."
+msgstr ""
+
+#: doc/classes/Environment.xml:322
+msgid "Academy Color Encoding System tonemapper operator."
+msgstr ""
+
+#: doc/classes/Environment.xml:325 doc/classes/RenderingServer.xml:3484
msgid ""
"Additive glow blending mode. Mostly used for particles, glows (bloom), lens "
"flare, bright sources."
msgstr ""
-#: doc/classes/Environment.xml:292 doc/classes/RenderingServer.xml:3476
+#: doc/classes/Environment.xml:328 doc/classes/RenderingServer.xml:3487
msgid ""
"Screen glow blending mode. Increases brightness, used frequently with bloom."
msgstr ""
-#: doc/classes/Environment.xml:295 doc/classes/RenderingServer.xml:3479
+#: doc/classes/Environment.xml:331 doc/classes/RenderingServer.xml:3490
msgid ""
"Soft light glow blending mode. Modifies contrast, exposes shadows and "
"highlights (vivid bloom)."
msgstr ""
-#: doc/classes/Environment.xml:298 doc/classes/RenderingServer.xml:3482
+#: doc/classes/Environment.xml:334 doc/classes/RenderingServer.xml:3493
msgid ""
"Replace glow blending mode. Replaces all pixels' color by the glow value. "
"This can be used to simulate a full-screen blur effect by tweaking the glow "
"parameters to match the original image's brightness."
msgstr ""
-#: doc/classes/Environment.xml:301 doc/classes/RenderingServer.xml:3485
+#: doc/classes/Environment.xml:337 doc/classes/RenderingServer.xml:3496
msgid ""
"Mixes the glow with the underlying color to avoid increasing brightness as "
"much while still maintaining a glow effect."
msgstr ""
-#: doc/classes/Environment.xml:304
-msgid ""
-"Linear tonemapper operator. Reads the linear data and passes it on "
-"unmodified."
-msgstr ""
-
-#: doc/classes/Environment.xml:307
-msgid ""
-"Reinhardt tonemapper operator. Performs a variation on rendered pixels' "
-"colors by this formula: [code]color = color / (1 + color)[/code]."
-msgstr ""
-
-#: doc/classes/Environment.xml:310
-msgid "Filmic tonemapper operator."
-msgstr ""
-
-#: doc/classes/Environment.xml:313
-msgid "Academy Color Encoding System tonemapper operator."
-msgstr ""
-
-#: doc/classes/Environment.xml:316
+#: doc/classes/Environment.xml:340
msgid "No blur for the screen-space ambient occlusion effect (fastest)."
msgstr ""
-#: doc/classes/Environment.xml:319
+#: doc/classes/Environment.xml:343
msgid "1×1 blur for the screen-space ambient occlusion effect."
msgstr ""
-#: doc/classes/Environment.xml:322
+#: doc/classes/Environment.xml:346
msgid "2×2 blur for the screen-space ambient occlusion effect."
msgstr ""
-#: doc/classes/Environment.xml:325
+#: doc/classes/Environment.xml:349
msgid ""
"3×3 blur for the screen-space ambient occlusion effect. Increases the radius "
"of the blur for a smoother look, but can result in checkerboard-like "
@@ -20976,14 +21991,17 @@ msgid ""
" var content = file.get_as_text()\n"
" file.close()\n"
" return content\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"In the example above, the file will be saved in the user data folder as "
+"specified in the [url=https://docs.godotengine.org/en/latest/tutorials/io/"
+"data_paths.html]Data paths[/url] documentation."
msgstr ""
-#: doc/classes/File.xml:32
+#: doc/classes/File.xml:33
msgid "Closes the currently opened file."
msgstr ""
-#: doc/classes/File.xml:39
+#: doc/classes/File.xml:40
msgid ""
"Returns [code]true[/code] if the file cursor has read past the end of the "
"file.\n"
@@ -20994,7 +22012,7 @@ msgid ""
"get_position] to implement a custom logic."
msgstr ""
-#: doc/classes/File.xml:49
+#: doc/classes/File.xml:50
msgid ""
"Returns [code]true[/code] if the file exists in the given path.\n"
"[b]Note:[/b] Many resources types are imported (e.g. textures or sound "
@@ -21007,41 +22025,41 @@ msgid ""
"source asset is present in [code]res://[/code], but fail when exported)."
msgstr ""
-#: doc/classes/File.xml:57
+#: doc/classes/File.xml:58
msgid ""
"Returns the next 16 bits from the file as an integer. See [method store_16] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:64
+#: doc/classes/File.xml:65
msgid ""
"Returns the next 32 bits from the file as an integer. See [method store_32] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:71
+#: doc/classes/File.xml:72
msgid ""
"Returns the next 64 bits from the file as an integer. See [method store_64] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:78
+#: doc/classes/File.xml:79
msgid ""
"Returns the next 8 bits from the file as an integer. See [method store_8] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:85
+#: doc/classes/File.xml:86
msgid ""
"Returns the whole file as a [String].\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:95
+#: doc/classes/File.xml:96
msgid "Returns next [code]len[/code] bytes of the file as a [PackedByteArray]."
msgstr ""
-#: doc/classes/File.xml:104
+#: doc/classes/File.xml:105
msgid ""
"Returns the next value of the file in CSV (Comma-Separated Values) format. "
"You can pass a different delimiter [code]delim[/code] to use other than the "
@@ -21050,37 +22068,37 @@ msgid ""
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:112
+#: doc/classes/File.xml:113
msgid "Returns the next 64 bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:119
+#: doc/classes/File.xml:120
msgid ""
"Returns the last error that happened when trying to perform operations. "
"Compare with the [code]ERR_FILE_*[/code] constants from [enum Error]."
msgstr ""
-#: doc/classes/File.xml:126
+#: doc/classes/File.xml:127
msgid "Returns the next 32 bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:133
+#: doc/classes/File.xml:134
msgid "Returns the size of the file in bytes."
msgstr ""
-#: doc/classes/File.xml:140
+#: doc/classes/File.xml:141
msgid ""
"Returns the next line of the file as a [String].\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:150
+#: doc/classes/File.xml:151
msgid ""
"Returns an MD5 String representing the file at the given path or an empty "
"[String] on failure."
msgstr ""
-#: doc/classes/File.xml:159
+#: doc/classes/File.xml:160
msgid ""
"Returns the last time the [code]file[/code] was modified in unix timestamp "
"format or returns a [String] \"ERROR IN [code]file[/code]\". This unix "
@@ -21088,35 +22106,35 @@ msgid ""
"get_datetime_from_unix_time]."
msgstr ""
-#: doc/classes/File.xml:166
+#: doc/classes/File.xml:167
msgid ""
"Returns a [String] saved in Pascal format from the file.\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:174
+#: doc/classes/File.xml:175
msgid "Returns the path as a [String] for the current open file."
msgstr ""
-#: doc/classes/File.xml:181
+#: doc/classes/File.xml:182
msgid "Returns the absolute path as a [String] for the current open file."
msgstr ""
-#: doc/classes/File.xml:188
+#: doc/classes/File.xml:189
msgid "Returns the file cursor's position."
msgstr ""
-#: doc/classes/File.xml:195
+#: doc/classes/File.xml:196
msgid "Returns the next bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:204
+#: doc/classes/File.xml:205
msgid ""
"Returns a SHA-256 [String] representing the file at the given path or an "
"empty [String] on failure."
msgstr ""
-#: doc/classes/File.xml:213
+#: doc/classes/File.xml:214
msgid ""
"Returns the next [Variant] value from the file. If [code]allow_objects[/"
"code] is [code]true[/code], decoding objects is allowed.\n"
@@ -21125,37 +22143,38 @@ msgid ""
"to avoid potential security threats such as remote code execution."
msgstr ""
-#: doc/classes/File.xml:221
+#: doc/classes/File.xml:222
msgid "Returns [code]true[/code] if the file is currently opened."
msgstr ""
-#: doc/classes/File.xml:232
+#: doc/classes/File.xml:233
msgid "Opens the file for writing or reading, depending on the flags."
msgstr ""
-#: doc/classes/File.xml:245
+#: doc/classes/File.xml:246
msgid "Opens a compressed file for reading or writing."
msgstr ""
-#: doc/classes/File.xml:258
+#: doc/classes/File.xml:259
msgid ""
"Opens an encrypted file in write or read mode. You need to pass a binary key "
-"to encrypt/decrypt it."
+"to encrypt/decrypt it.\n"
+"[b]Note:[/b] The provided key must be 32 bytes long."
msgstr ""
-#: doc/classes/File.xml:271
+#: doc/classes/File.xml:273
msgid ""
"Opens an encrypted file in write or read mode. You need to pass a password "
"to encrypt/decrypt it."
msgstr ""
-#: doc/classes/File.xml:280
+#: doc/classes/File.xml:282
msgid ""
"Changes the file reading/writing cursor to the specified position (in bytes "
"from the beginning of the file)."
msgstr ""
-#: doc/classes/File.xml:289
+#: doc/classes/File.xml:291
msgid ""
"Changes the file reading/writing cursor to the specified position (in bytes "
"from the end of the file).\n"
@@ -21163,7 +22182,7 @@ msgid ""
"cursor will be at the end of the file."
msgstr ""
-#: doc/classes/File.xml:299
+#: doc/classes/File.xml:301
msgid ""
"Stores an integer as 16 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, "
@@ -21191,7 +22210,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/File.xml:328
+#: doc/classes/File.xml:330
msgid ""
"Stores an integer as 32 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, "
@@ -21200,14 +22219,14 @@ msgid ""
"(see [method store_16] for an example)."
msgstr ""
-#: doc/classes/File.xml:339
+#: doc/classes/File.xml:341
msgid ""
"Stores an integer as 64 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] must lie in the interval [code][-2^63, "
"2^63 - 1][/code] (i.e. be a valid [int] value)."
msgstr ""
-#: doc/classes/File.xml:349
+#: doc/classes/File.xml:351
msgid ""
"Stores an integer as 8 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, 255]"
@@ -21216,11 +22235,11 @@ msgid ""
"(see [method store_16] for an example)."
msgstr ""
-#: doc/classes/File.xml:360
+#: doc/classes/File.xml:362
msgid "Stores the given array of bytes in the file."
msgstr ""
-#: doc/classes/File.xml:371
+#: doc/classes/File.xml:373
msgid ""
"Store the given [PackedStringArray] in the file as a line formatted in the "
"CSV (Comma-Separated Values) format. You can pass a different delimiter "
@@ -21229,45 +22248,45 @@ msgid ""
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:381
+#: doc/classes/File.xml:383
msgid "Stores a floating-point number as 64 bits in the file."
msgstr ""
-#: doc/classes/File.xml:390
+#: doc/classes/File.xml:392
msgid "Stores a floating-point number as 32 bits in the file."
msgstr ""
-#: doc/classes/File.xml:399
+#: doc/classes/File.xml:401
msgid ""
"Stores the given [String] as a line in the file.\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:409
+#: doc/classes/File.xml:411
msgid ""
"Stores the given [String] as a line in the file in Pascal format (i.e. also "
"store the length of the string).\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:419
+#: doc/classes/File.xml:421
msgid "Stores a floating-point number in the file."
msgstr ""
-#: doc/classes/File.xml:428
+#: doc/classes/File.xml:430
msgid ""
"Stores the given [String] in the file.\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:440
+#: doc/classes/File.xml:442
msgid ""
"Stores any Variant value in the file. If [code]full_objects[/code] is "
"[code]true[/code], encoding objects is allowed (and can potentially include "
"code)."
msgstr ""
-#: doc/classes/File.xml:446
+#: doc/classes/File.xml:448
msgid ""
"If [code]true[/code], the file's endianness is swapped. Use this if you're "
"dealing with files written on big-endian machines.\n"
@@ -21275,44 +22294,44 @@ msgid ""
"reset to [code]false[/code] whenever you open the file."
msgstr ""
-#: doc/classes/File.xml:452
+#: doc/classes/File.xml:454
msgid "Opens the file for read operations."
msgstr ""
-#: doc/classes/File.xml:455
+#: doc/classes/File.xml:457
msgid ""
"Opens the file for write operations. Create it if the file does not exist "
"and truncate if it exists."
msgstr ""
-#: doc/classes/File.xml:458
+#: doc/classes/File.xml:460
msgid ""
"Opens the file for read and write operations. Does not truncate the file."
msgstr ""
-#: doc/classes/File.xml:461
+#: doc/classes/File.xml:463
msgid ""
"Opens the file for read and write operations. Create it if the file does not "
"exist and truncate if it exists."
msgstr ""
-#: doc/classes/File.xml:464
+#: doc/classes/File.xml:466
msgid "Uses the [url=http://fastlz.org/]FastLZ[/url] compression method."
msgstr ""
-#: doc/classes/File.xml:467
+#: doc/classes/File.xml:469
msgid ""
"Uses the [url=https://en.wikipedia.org/wiki/DEFLATE]DEFLATE[/url] "
"compression method."
msgstr ""
-#: doc/classes/File.xml:470
+#: doc/classes/File.xml:472
msgid ""
"Uses the [url=https://facebook.github.io/zstd/]Zstandard[/url] compression "
"method."
msgstr ""
-#: doc/classes/File.xml:473
+#: doc/classes/File.xml:475
msgid "Uses the [url=https://www.gzip.org/]gzip[/url] compression method."
msgstr ""
@@ -21528,10 +22547,11 @@ msgid ""
"Draw [code]string[/code] into a canvas item using the font at a given "
"position, with [code]modulate[/code] color, and optionally clipping the "
"width. [code]position[/code] specifies the baseline, not the top. To draw "
-"from the top, [i]ascent[/i] must be added to the Y axis."
+"from the top, [i]ascent[/i] must be added to the Y axis.\n"
+"See also [method CanvasItem.draw_string]."
msgstr ""
-#: doc/classes/Font.xml:47
+#: doc/classes/Font.xml:48
msgid ""
"Draw character [code]char[/code] into a canvas item using the font at a "
"given position, with [code]modulate[/code] color, and optionally kerning if "
@@ -21541,39 +22561,39 @@ msgid ""
"making this function useful for drawing strings character by character."
msgstr ""
-#: doc/classes/Font.xml:54
+#: doc/classes/Font.xml:55
msgid "Returns the font ascent (number of pixels above the baseline)."
msgstr ""
-#: doc/classes/Font.xml:65
+#: doc/classes/Font.xml:66
msgid ""
"Returns the size of a character, optionally taking kerning into account if "
"the next character is provided."
msgstr ""
-#: doc/classes/Font.xml:72
+#: doc/classes/Font.xml:73
msgid "Returns the font descent (number of pixels below the baseline)."
msgstr ""
-#: doc/classes/Font.xml:79
+#: doc/classes/Font.xml:80
msgid "Returns the total font height (ascent plus descent) in pixels."
msgstr ""
-#: doc/classes/Font.xml:88
+#: doc/classes/Font.xml:89
msgid "Returns the size of a string, taking kerning and advance into account."
msgstr ""
-#: doc/classes/Font.xml:99
+#: doc/classes/Font.xml:100
msgid ""
"Returns the size that the string would have with word wrapping enabled with "
"a fixed [code]width[/code]."
msgstr ""
-#: doc/classes/Font.xml:106
+#: doc/classes/Font.xml:107
msgid "Returns [code]true[/code] if the font has an outline."
msgstr ""
-#: doc/classes/Font.xml:119
+#: doc/classes/Font.xml:120
msgid ""
"After editing a font (changing size, ascent, char rects, etc.). Call this "
"function to propagate changes to controls that might use it."
@@ -21745,13 +22765,14 @@ msgstr ""
#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:7
msgid ""
-"Calling [method @GDScript.yield] within a function will cause that function "
-"to yield and return its current state as an object of this type. The yielded "
+"FIXME: Outdated docs as of GDScript rewrite in 4.0.\n"
+"Calling [code]yield[/code] within a function will cause that function to "
+"yield and return its current state as an object of this type. The yielded "
"function call can then be resumed later by calling [method resume] on this "
"state object."
msgstr ""
-#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:18
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:19
msgid ""
"Check whether the function call may be resumed. This is not the case if the "
"function state was already resumed.\n"
@@ -21762,12 +22783,12 @@ msgid ""
"script have survived up to that point."
msgstr ""
-#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:28
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:29
msgid ""
"Resume execution of the yielded function call.\n"
-"If handed an argument, return the argument from the [method @GDScript.yield] "
-"call in the yielded function call. You can pass e.g. an [Array] to hand "
-"multiple arguments.\n"
+"If handed an argument, return the argument from the [code]yield[/code] call "
+"in the yielded function call. You can pass e.g. an [Array] to hand multiple "
+"arguments.\n"
"This function returns what the resumed function call returns, possibly "
"another function state if yielded again."
msgstr ""
@@ -22336,10 +23357,20 @@ msgid ""
"code], see [enum PolyJoinType].\n"
"The operation may result in an outer polygon (boundary) and inner polygon "
"(hole) produced which could be distinguished by calling [method "
-"is_polygon_clockwise]."
+"is_polygon_clockwise].\n"
+"[b]Note:[/b] To translate the polygon's vertices specifically, use the "
+"[method Transform2D.xform] method:\n"
+"[codeblock]\n"
+"var polygon = PackedVector2Array([Vector2(0, 0), Vector2(100, 0), "
+"Vector2(100, 100), Vector2(0, 100)])\n"
+"var offset = Vector2(50, 50)\n"
+"polygon = Transform2D(0, offset).xform(polygon)\n"
+"print(polygon) # prints [Vector2(50, 50), Vector2(150, 50), Vector2(150, "
+"150), Vector2(50, 150)]\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/Geometry2D.xml:217
+#: doc/classes/Geometry2D.xml:224
msgid ""
"Inflates or deflates [code]polyline[/code] by [code]delta[/code] units "
"(pixels), producing polygons. If [code]delta[/code] is positive, makes the "
@@ -22355,13 +23386,13 @@ msgid ""
"is_polygon_clockwise]."
msgstr ""
-#: doc/classes/Geometry2D.xml:235
+#: doc/classes/Geometry2D.xml:242
msgid ""
"Returns if [code]point[/code] is inside the triangle specified by [code]a[/"
"code], [code]b[/code] and [code]c[/code]."
msgstr ""
-#: doc/classes/Geometry2D.xml:250
+#: doc/classes/Geometry2D.xml:257
msgid ""
"Checks if the two segments ([code]from_a[/code], [code]to_a[/code]) and "
"([code]from_b[/code], [code]to_b[/code]) intersect. If yes, return the point "
@@ -22369,7 +23400,7 @@ msgid ""
"empty [Variant]."
msgstr ""
-#: doc/classes/Geometry2D.xml:259
+#: doc/classes/Geometry2D.xml:266
msgid ""
"Triangulates the area specified by discrete set of [code]points[/code] such "
"that no point is inside the circumcircle of any resulting triangle. Returns "
@@ -22380,7 +23411,7 @@ msgid ""
"[PackedInt32Array] is returned."
msgstr ""
-#: doc/classes/Geometry2D.xml:268
+#: doc/classes/Geometry2D.xml:275
msgid ""
"Triangulates the polygon specified by the points in [code]polygon[/code]. "
"Returns a [PackedInt32Array] where each triangle consists of three "
@@ -22390,40 +23421,40 @@ msgid ""
"[PackedInt32Array] is returned."
msgstr ""
-#: doc/classes/Geometry2D.xml:274
+#: doc/classes/Geometry2D.xml:281
msgid ""
"Create regions where either subject or clip polygons (or both) are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:277
+#: doc/classes/Geometry2D.xml:284
msgid ""
"Create regions where subject polygons are filled except where clip polygons "
"are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:280
+#: doc/classes/Geometry2D.xml:287
msgid "Create regions where both subject and clip polygons are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:283
+#: doc/classes/Geometry2D.xml:290
msgid ""
"Create regions where either subject or clip polygons are filled but not "
"where both are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:286
+#: doc/classes/Geometry2D.xml:293
msgid ""
"Squaring is applied uniformally at all convex edge joins at [code]1 * delta[/"
"code]."
msgstr ""
-#: doc/classes/Geometry2D.xml:289
+#: doc/classes/Geometry2D.xml:296
msgid ""
"While flattened paths can never perfectly trace an arc, they are "
"approximated by a series of arc chords."
msgstr ""
-#: doc/classes/Geometry2D.xml:292
+#: doc/classes/Geometry2D.xml:299
msgid ""
"There's a necessary limit to mitered joins since offsetting edges that join "
"at very acute angles will produce excessively long and narrow \"spikes\". "
@@ -22431,27 +23462,27 @@ msgid ""
"distance, \"square\" joining is applied."
msgstr ""
-#: doc/classes/Geometry2D.xml:295
+#: doc/classes/Geometry2D.xml:302
msgid ""
"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
"as a polygon."
msgstr ""
-#: doc/classes/Geometry2D.xml:298
+#: doc/classes/Geometry2D.xml:305
msgid ""
"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
"as a polyline."
msgstr ""
-#: doc/classes/Geometry2D.xml:301
+#: doc/classes/Geometry2D.xml:308
msgid "Endpoints are squared off with no extension."
msgstr ""
-#: doc/classes/Geometry2D.xml:304
+#: doc/classes/Geometry2D.xml:311
msgid "Endpoints are squared off and extended by [code]delta[/code] units."
msgstr ""
-#: doc/classes/Geometry2D.xml:307
+#: doc/classes/Geometry2D.xml:314
msgid "Endpoints are rounded off and extended by [code]delta[/code] units."
msgstr ""
@@ -22681,7 +23712,7 @@ msgstr ""
msgid ""
"Bakes the effect from all [GeometryInstance3D]s marked with [constant "
"GeometryInstance3D.GI_MODE_BAKED] and [Light3D]s marked with either "
-"[constant Light3D.BAKE_INDIRECT] or [constant Light3D.BAKE_ALL]. If "
+"[constant Light3D.BAKE_DYNAMIC] or [constant Light3D.BAKE_STATIC]. If "
"[code]create_visual_debug[/code] is [code]true[/code], after baking the "
"light, this will generate a [MultiMesh] that has a cube representing each "
"solid cell with each cube colored to the cell's albedo color. This can be "
@@ -22773,40 +23804,36 @@ msgid ""
msgstr ""
#: modules/mono/doc_classes/GodotSharp.xml:49
-#, fuzzy
msgid ""
"Returns [code]true[/code] if the domain is being finalized, [code]false[/"
"code] otherwise."
msgstr ""
-"[code]s[/code] ãŒã‚¼ãƒ­ã‚ã‚‹ã„ã¯ã€ã»ã¼ã‚¼ãƒ­ã§ã‚れ㰠[code]true[/code] ã‚’è¿”ã—ã¾"
-"ã™ã€‚"
+"ドメインãŒãƒ•ã‚¡ã‚¤ãƒŠãƒ©ã‚¤ã‚ºä¸­ã§ã‚れ㰠[code]true[/code] ã‚’è¿”ã—ã€ãれ以外ã§ã¯ "
+"[code]false[/code] ã‚’è¿”ã—ã¾ã™ã€‚"
#: modules/mono/doc_classes/GodotSharp.xml:56
-#, fuzzy
msgid ""
"Returns [code]true[/code] if the Mono runtime is initialized, [code]false[/"
"code] otherwise."
msgstr ""
-"[code]s[/code] ãŒã‚¼ãƒ­ã‚ã‚‹ã„ã¯ã€ã»ã¼ã‚¼ãƒ­ã§ã‚れ㰠[code]true[/code] ã‚’è¿”ã—ã¾"
-"ã™ã€‚"
+"MonoランタイムãŒåˆæœŸåŒ–完了ã™ã‚Œã° [code]true[/code] ã‚’è¿”ã—ã€ãれ以外ã§ã¯ "
+"[code]false[/code] ã‚’è¿”ã—ã¾ã™ã€‚"
#: modules/mono/doc_classes/GodotSharp.xml:63
-#, fuzzy
msgid ""
"Returns [code]true[/code] if the Mono runtime is shutting down, [code]false[/"
"code] otherwise."
msgstr ""
-"[code]s[/code] ãŒã‚¼ãƒ­ã‚ã‚‹ã„ã¯ã€ã»ã¼ã‚¼ãƒ­ã§ã‚れ㰠[code]true[/code] ã‚’è¿”ã—ã¾"
-"ã™ã€‚"
+"MonoランタイムãŒçµ‚了途中ã§ã‚れ㰠[code]true[/code] ã‚’è¿”ã—ã€ãれ以外ã§ã¯ "
+"[code]false[/code] ã‚’è¿”ã—ã¾ã™ã€‚"
#: modules/mono/doc_classes/GodotSharp.xml:70
-#, fuzzy
msgid ""
"Returns [code]true[/code] if the scripts domain is loaded, [code]false[/"
"code] otherwise."
msgstr ""
-"[code]s[/code] ãŒã‚¼ãƒ­ã‚ã‚‹ã„ã¯ã€ã»ã¼ã‚¼ãƒ­ã§ã‚れ㰠[code]true[/code] ã‚’è¿”ã—ã¾"
-"ã™ã€‚"
+"スクリプトドメインãŒèª­ã¿è¾¼ã¾ã‚ŒãŸã‚‰ [code]true[/code] ã‚’è¿”ã—ã€ãれ以外ã§ã¯ "
+"[code]false[/code] ã‚’è¿”ã—ã¾ã™ã€‚"
#: doc/classes/GPUParticles2D.xml:4
msgid "2D particle emitter."
@@ -23580,121 +24607,119 @@ msgstr ""
msgid "Clear all cells."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:53
+#: modules/gridmap/doc_classes/GridMap.xml:49
msgid ""
-"The [MeshLibrary] item index located at the grid-based X, Y and Z "
-"coordinates. If the cell is empty, [constant INVALID_CELL_ITEM] will be "
-"returned."
+"The [MeshLibrary] item index located at the given grid coordinates. If the "
+"cell is empty, [constant INVALID_CELL_ITEM] will be returned."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:66
+#: modules/gridmap/doc_classes/GridMap.xml:58
msgid ""
-"The orientation of the cell at the grid-based X, Y and Z coordinates. -1 is "
-"returned if the cell is empty."
+"The orientation of the cell at the given grid coordinates. [code]-1[/code] "
+"is returned if the cell is empty."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:75 doc/classes/PhysicsBody2D.xml:35
+#: modules/gridmap/doc_classes/GridMap.xml:67 doc/classes/PhysicsBody2D.xml:35
#: doc/classes/PhysicsBody3D.xml:35
msgid "Returns an individual bit on the [member collision_layer]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:84 doc/classes/PhysicsBody2D.xml:44
+#: modules/gridmap/doc_classes/GridMap.xml:76 doc/classes/PhysicsBody2D.xml:44
#: doc/classes/PhysicsBody3D.xml:44
msgid "Returns an individual bit on the [member collision_mask]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:91
+#: modules/gridmap/doc_classes/GridMap.xml:83
msgid ""
"Returns an array of [Transform] and [Mesh] references corresponding to the "
"non-empty cells in the grid. The transforms are specified in world space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:98
+#: modules/gridmap/doc_classes/GridMap.xml:90
msgid ""
"Returns an array of [Vector3] with the non-empty cell coordinates in the "
"grid map."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:121
+#: modules/gridmap/doc_classes/GridMap.xml:109
msgid ""
"Returns the position of a grid cell in the GridMap's local coordinate space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:146
+#: modules/gridmap/doc_classes/GridMap.xml:130
msgid ""
-"Sets the mesh index for the cell referenced by its grid-based X, Y and Z "
-"coordinates.\n"
+"Sets the mesh index for the cell referenced by its grid coordinates.\n"
"A negative item index such as [constant INVALID_CELL_ITEM] will clear the "
"cell.\n"
"Optionally, the item's orientation can be passed. For valid orientation "
"values, see [method Basis.get_orthogonal_index]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:173
+#: modules/gridmap/doc_classes/GridMap.xml:157
msgid "Sets an individual bit on the [member collision_layer]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:184
+#: modules/gridmap/doc_classes/GridMap.xml:168
msgid "Sets an individual bit on the [member collision_mask]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:193
+#: modules/gridmap/doc_classes/GridMap.xml:177
msgid ""
"Returns the coordinates of the grid cell containing the given point.\n"
"[code]pos[/code] should be in the GridMap's local coordinate space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:200
+#: modules/gridmap/doc_classes/GridMap.xml:184
msgid "If [code]true[/code], grid items are centered on the X axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:203
+#: modules/gridmap/doc_classes/GridMap.xml:187
msgid "If [code]true[/code], grid items are centered on the Y axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:206
+#: modules/gridmap/doc_classes/GridMap.xml:190
msgid "If [code]true[/code], grid items are centered on the Z axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:209
+#: modules/gridmap/doc_classes/GridMap.xml:193
msgid ""
"The size of each octant measured in number of cells. This applies to all "
"three axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:212
+#: modules/gridmap/doc_classes/GridMap.xml:196
msgid ""
"The scale of the cell items.\n"
"This does not affect the size of the grid cells themselves, only the items "
"in them. This can be used to make cell items overlap their neighbors."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:216
+#: modules/gridmap/doc_classes/GridMap.xml:200
msgid ""
"The dimensions of the grid's cells.\n"
"This does not affect the size of the meshes. See [member cell_scale]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:220
+#: modules/gridmap/doc_classes/GridMap.xml:204
msgid ""
"The physics layers this GridMap is in.\n"
"GridMaps act as static bodies, meaning they aren't affected by gravity or "
"other forces. They only affect other physics bodies that collide with them."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:224
+#: modules/gridmap/doc_classes/GridMap.xml:208
msgid "The physics layers this GridMap detects collisions in."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:227
+#: modules/gridmap/doc_classes/GridMap.xml:211
msgid "The assigned [MeshLibrary]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:235
+#: modules/gridmap/doc_classes/GridMap.xml:219
msgid "Emitted when [member cell_size] changes."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:241
+#: modules/gridmap/doc_classes/GridMap.xml:225
msgid ""
"Invalid cell item that can be used in [method set_cell_item] to clear cells "
"(or represent an empty cell in [method get_cell_item])."
@@ -24059,27 +25084,33 @@ msgid ""
"server's side.\n"
"For more information on HTTP, see https://developer.mozilla.org/en-US/docs/"
"Web/HTTP (or read RFC 2616 to get it straight from the source: https://tools."
-"ietf.org/html/rfc2616)."
+"ietf.org/html/rfc2616).\n"
+"[b]Note:[/b] When performing HTTP requests from a project exported to HTML5, "
+"keep in mind the remote server may not allow requests from foreign origins "
+"due to [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/"
+"url]. If you host the server in question, you should modify its backend to "
+"allow requests from foreign origins by adding the [code]Access-Control-Allow-"
+"Origin: *[/code] HTTP header."
msgstr ""
-#: doc/classes/HTTPClient.xml:13
+#: doc/classes/HTTPClient.xml:14
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/"
"http_client_class.html"
msgstr ""
-#: doc/classes/HTTPClient.xml:14 doc/classes/HTTPRequest.xml:62
+#: doc/classes/HTTPClient.xml:15 doc/classes/HTTPRequest.xml:71
#: doc/classes/StreamPeerSSL.xml:10
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/ssl_certificates."
"html"
msgstr ""
-#: doc/classes/HTTPClient.xml:21
+#: doc/classes/HTTPClient.xml:22
msgid "Closes the current connection, allowing reuse of this [HTTPClient]."
msgstr ""
-#: doc/classes/HTTPClient.xml:36
+#: doc/classes/HTTPClient.xml:37
msgid ""
"Connects to a host. This needs to be done before any requests are sent.\n"
"The host should not have http:// prepended but will strip the protocol "
@@ -24091,7 +25122,7 @@ msgid ""
"[code]true[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:46
+#: doc/classes/HTTPClient.xml:47
msgid ""
"Returns the response's body length.\n"
"[b]Note:[/b] Some Web servers may not send a body length. In this case, the "
@@ -24099,15 +25130,15 @@ msgid ""
"the body length will also be [code]-1[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:54
+#: doc/classes/HTTPClient.xml:55
msgid "Returns the response's HTTP status code."
msgstr ""
-#: doc/classes/HTTPClient.xml:61
+#: doc/classes/HTTPClient.xml:62
msgid "Returns the response headers."
msgstr ""
-#: doc/classes/HTTPClient.xml:68
+#: doc/classes/HTTPClient.xml:69
msgid ""
"Returns all response headers as a Dictionary of structure [code]{ \"key\": "
"\"value1; value2\" }[/code] where the case-sensitivity of the keys and "
@@ -24122,27 +25153,27 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:82
+#: doc/classes/HTTPClient.xml:83
msgid ""
"Returns a [enum Status] constant. Need to call [method poll] in order to get "
"status updates."
msgstr ""
-#: doc/classes/HTTPClient.xml:89
+#: doc/classes/HTTPClient.xml:90
msgid "If [code]true[/code], this [HTTPClient] has a response available."
msgstr ""
-#: doc/classes/HTTPClient.xml:96
+#: doc/classes/HTTPClient.xml:97
msgid "If [code]true[/code], this [HTTPClient] has a response that is chunked."
msgstr ""
-#: doc/classes/HTTPClient.xml:103
+#: doc/classes/HTTPClient.xml:104
msgid ""
"This needs to be called in order to have any request processed. Check "
"results with [method get_status]."
msgstr ""
-#: doc/classes/HTTPClient.xml:112
+#: doc/classes/HTTPClient.xml:113
msgid ""
"Generates a GET/POST application/x-www-form-urlencoded style query string "
"from a provided dictionary, e.g.:\n"
@@ -24162,11 +25193,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:130
+#: doc/classes/HTTPClient.xml:131
msgid "Reads one chunk from the response."
msgstr ""
-#: doc/classes/HTTPClient.xml:145
+#: doc/classes/HTTPClient.xml:146
msgid ""
"Sends a request to the connected host. The URL parameter is just the part "
"after the host, so for [code]http://somehost.com/index.php[/code], it is "
@@ -24184,7 +25215,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:168
+#: doc/classes/HTTPClient.xml:169
msgid ""
"Sends a raw request to the connected host. The URL parameter is just the "
"part after the host, so for [code]http://somehost.com/index.php[/code], it "
@@ -24194,43 +25225,43 @@ msgid ""
"Sends the body data raw, as a byte array and does not encode it in any way."
msgstr ""
-#: doc/classes/HTTPClient.xml:176
+#: doc/classes/HTTPClient.xml:177
msgid ""
"If [code]true[/code], execution will block until all data is read from the "
"response."
msgstr ""
-#: doc/classes/HTTPClient.xml:179
+#: doc/classes/HTTPClient.xml:180
msgid "The connection to use for this client."
msgstr ""
-#: doc/classes/HTTPClient.xml:182
+#: doc/classes/HTTPClient.xml:183
msgid ""
"The size of the buffer used and maximum bytes to read per iteration. See "
"[method read_response_body_chunk]."
msgstr ""
-#: doc/classes/HTTPClient.xml:187
+#: doc/classes/HTTPClient.xml:188
msgid ""
"HTTP GET method. The GET method requests a representation of the specified "
"resource. Requests using GET should only retrieve data."
msgstr ""
-#: doc/classes/HTTPClient.xml:190
+#: doc/classes/HTTPClient.xml:191
msgid ""
"HTTP HEAD method. The HEAD method asks for a response identical to that of a "
"GET request, but without the response body. This is useful to request "
"metadata like HTTP headers or to check if a resource exists."
msgstr ""
-#: doc/classes/HTTPClient.xml:193
+#: doc/classes/HTTPClient.xml:194
msgid ""
"HTTP POST method. The POST method is used to submit an entity to the "
"specified resource, often causing a change in state or side effects on the "
"server. This is often used for forms and submitting data or uploading files."
msgstr ""
-#: doc/classes/HTTPClient.xml:196
+#: doc/classes/HTTPClient.xml:197
msgid ""
"HTTP PUT method. The PUT method asks to replace all current representations "
"of the target resource with the request payload. (You can think of POST as "
@@ -24238,103 +25269,103 @@ msgid ""
"not make a clear distinction or change their meaning)."
msgstr ""
-#: doc/classes/HTTPClient.xml:199
+#: doc/classes/HTTPClient.xml:200
msgid ""
"HTTP DELETE method. The DELETE method requests to delete the specified "
"resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:202
+#: doc/classes/HTTPClient.xml:203
msgid ""
"HTTP OPTIONS method. The OPTIONS method asks for a description of the "
"communication options for the target resource. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:205
+#: doc/classes/HTTPClient.xml:206
msgid ""
"HTTP TRACE method. The TRACE method performs a message loop-back test along "
"the path to the target resource. Returns the entire HTTP request received in "
"the response body. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:208
+#: doc/classes/HTTPClient.xml:209
msgid ""
"HTTP CONNECT method. The CONNECT method establishes a tunnel to the server "
"identified by the target resource. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:211
+#: doc/classes/HTTPClient.xml:212
msgid ""
"HTTP PATCH method. The PATCH method is used to apply partial modifications "
"to a resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:214
+#: doc/classes/HTTPClient.xml:215
msgid "Represents the size of the [enum Method] enum."
msgstr ""
-#: doc/classes/HTTPClient.xml:217
+#: doc/classes/HTTPClient.xml:218
msgid "Status: Disconnected from the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:220
+#: doc/classes/HTTPClient.xml:221
msgid "Status: Currently resolving the hostname for the given URL into an IP."
msgstr ""
-#: doc/classes/HTTPClient.xml:223
+#: doc/classes/HTTPClient.xml:224
msgid "Status: DNS failure: Can't resolve the hostname for the given URL."
msgstr ""
-#: doc/classes/HTTPClient.xml:226
+#: doc/classes/HTTPClient.xml:227
msgid "Status: Currently connecting to server."
msgstr ""
-#: doc/classes/HTTPClient.xml:229
+#: doc/classes/HTTPClient.xml:230
msgid "Status: Can't connect to the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:232
+#: doc/classes/HTTPClient.xml:233
msgid "Status: Connection established."
msgstr ""
-#: doc/classes/HTTPClient.xml:235
+#: doc/classes/HTTPClient.xml:236
msgid "Status: Currently sending request."
msgstr ""
-#: doc/classes/HTTPClient.xml:238
+#: doc/classes/HTTPClient.xml:239
msgid "Status: HTTP body received."
msgstr ""
-#: doc/classes/HTTPClient.xml:241
+#: doc/classes/HTTPClient.xml:242
msgid "Status: Error in HTTP connection."
msgstr ""
-#: doc/classes/HTTPClient.xml:244
+#: doc/classes/HTTPClient.xml:245
msgid "Status: Error in SSL handshake."
msgstr ""
-#: doc/classes/HTTPClient.xml:247
+#: doc/classes/HTTPClient.xml:248
msgid ""
"HTTP status code [code]100 Continue[/code]. Interim response that indicates "
"everything so far is OK and that the client should continue with the request "
"(or ignore this status if already finished)."
msgstr ""
-#: doc/classes/HTTPClient.xml:250
+#: doc/classes/HTTPClient.xml:251
msgid ""
"HTTP status code [code]101 Switching Protocol[/code]. Sent in response to an "
"[code]Upgrade[/code] request header by the client. Indicates the protocol "
"the server is switching to."
msgstr ""
-#: doc/classes/HTTPClient.xml:253
+#: doc/classes/HTTPClient.xml:254
msgid ""
"HTTP status code [code]102 Processing[/code] (WebDAV). Indicates that the "
"server has received and is processing the request, but no response is "
"available yet."
msgstr ""
-#: doc/classes/HTTPClient.xml:256
+#: doc/classes/HTTPClient.xml:257
msgid ""
"HTTP status code [code]200 OK[/code]. The request has succeeded. Default "
"response for successful requests. Meaning varies depending on the request. "
@@ -24345,14 +25376,14 @@ msgid ""
"server."
msgstr ""
-#: doc/classes/HTTPClient.xml:259
+#: doc/classes/HTTPClient.xml:260
msgid ""
"HTTP status code [code]201 Created[/code]. The request has succeeded and a "
"new resource has been created as a result of it. This is typically the "
"response sent after a PUT request."
msgstr ""
-#: doc/classes/HTTPClient.xml:262
+#: doc/classes/HTTPClient.xml:263
msgid ""
"HTTP status code [code]202 Accepted[/code]. The request has been received "
"but not yet acted upon. It is non-committal, meaning that there is no way in "
@@ -24361,7 +25392,7 @@ msgid ""
"server handles the request, or for batch processing."
msgstr ""
-#: doc/classes/HTTPClient.xml:265
+#: doc/classes/HTTPClient.xml:266
msgid ""
"HTTP status code [code]203 Non-Authoritative Information[/code]. This "
"response code means returned meta-information set is not exact set as "
@@ -24370,14 +25401,14 @@ msgid ""
"instead of this response."
msgstr ""
-#: doc/classes/HTTPClient.xml:268
+#: doc/classes/HTTPClient.xml:269
msgid ""
"HTTP status code [code]204 No Content[/code]. There is no content to send "
"for this request, but the headers may be useful. The user-agent may update "
"its cached headers for this resource with the new ones."
msgstr ""
-#: doc/classes/HTTPClient.xml:271
+#: doc/classes/HTTPClient.xml:272
msgid ""
"HTTP status code [code]205 Reset Content[/code]. The server has fulfilled "
"the request and desires that the client resets the \"document view\" that "
@@ -24385,49 +25416,49 @@ msgid ""
"origin server."
msgstr ""
-#: doc/classes/HTTPClient.xml:274
+#: doc/classes/HTTPClient.xml:275
msgid ""
"HTTP status code [code]206 Partial Content[/code]. This response code is "
"used because of a range header sent by the client to separate download into "
"multiple streams."
msgstr ""
-#: doc/classes/HTTPClient.xml:277
+#: doc/classes/HTTPClient.xml:278
msgid ""
"HTTP status code [code]207 Multi-Status[/code] (WebDAV). A Multi-Status "
"response conveys information about multiple resources in situations where "
"multiple status codes might be appropriate."
msgstr ""
-#: doc/classes/HTTPClient.xml:280
+#: doc/classes/HTTPClient.xml:281
msgid ""
"HTTP status code [code]208 Already Reported[/code] (WebDAV). Used inside a "
"DAV: propstat response element to avoid enumerating the internal members of "
"multiple bindings to the same collection repeatedly."
msgstr ""
-#: doc/classes/HTTPClient.xml:283
+#: doc/classes/HTTPClient.xml:284
msgid ""
"HTTP status code [code]226 IM Used[/code] (WebDAV). The server has fulfilled "
"a GET request for the resource, and the response is a representation of the "
"result of one or more instance-manipulations applied to the current instance."
msgstr ""
-#: doc/classes/HTTPClient.xml:286
+#: doc/classes/HTTPClient.xml:287
msgid ""
"HTTP status code [code]300 Multiple Choice[/code]. The request has more than "
"one possible responses and there is no standardized way to choose one of the "
"responses. User-agent or user should choose one of them."
msgstr ""
-#: doc/classes/HTTPClient.xml:289
+#: doc/classes/HTTPClient.xml:290
msgid ""
"HTTP status code [code]301 Moved Permanently[/code]. Redirection. This "
"response code means the URI of requested resource has been changed. The new "
"URI is usually included in the response."
msgstr ""
-#: doc/classes/HTTPClient.xml:292
+#: doc/classes/HTTPClient.xml:293
msgid ""
"HTTP status code [code]302 Found[/code]. Temporary redirection. This "
"response code means the URI of requested resource has been changed "
@@ -24435,7 +25466,7 @@ msgid ""
"this same URI should be used by the client in future requests."
msgstr ""
-#: doc/classes/HTTPClient.xml:295
+#: doc/classes/HTTPClient.xml:296
msgid ""
"HTTP status code [code]303 See Other[/code]. The server is redirecting the "
"user agent to a different resource, as indicated by a URI in the Location "
@@ -24443,39 +25474,39 @@ msgid ""
"original request."
msgstr ""
-#: doc/classes/HTTPClient.xml:298
+#: doc/classes/HTTPClient.xml:299
msgid ""
"HTTP status code [code]304 Not Modified[/code]. A conditional GET or HEAD "
"request has been received and would have resulted in a 200 OK response if it "
"were not for the fact that the condition evaluated to [code]false[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:301
+#: doc/classes/HTTPClient.xml:302
msgid ""
"HTTP status code [code]305 Use Proxy[/code]. [i]Deprecated. Do not use.[/i]"
msgstr ""
-#: doc/classes/HTTPClient.xml:304
+#: doc/classes/HTTPClient.xml:305
msgid ""
"HTTP status code [code]306 Switch Proxy[/code]. [i]Deprecated. Do not use.[/"
"i]"
msgstr ""
-#: doc/classes/HTTPClient.xml:307
+#: doc/classes/HTTPClient.xml:308
msgid ""
"HTTP status code [code]307 Temporary Redirect[/code]. The target resource "
"resides temporarily under a different URI and the user agent MUST NOT change "
"the request method if it performs an automatic redirection to that URI."
msgstr ""
-#: doc/classes/HTTPClient.xml:310
+#: doc/classes/HTTPClient.xml:311
msgid ""
"HTTP status code [code]308 Permanent Redirect[/code]. The target resource "
"has been assigned a new permanent URI and any future references to this "
"resource ought to use one of the enclosed URIs."
msgstr ""
-#: doc/classes/HTTPClient.xml:313
+#: doc/classes/HTTPClient.xml:314
msgid ""
"HTTP status code [code]400 Bad Request[/code]. The request was invalid. The "
"server cannot or will not process the request due to something that is "
@@ -24484,21 +25515,21 @@ msgid ""
"routing)."
msgstr ""
-#: doc/classes/HTTPClient.xml:316
+#: doc/classes/HTTPClient.xml:317
msgid ""
"HTTP status code [code]401 Unauthorized[/code]. Credentials required. The "
"request has not been applied because it lacks valid authentication "
"credentials for the target resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:319
+#: doc/classes/HTTPClient.xml:320
msgid ""
"HTTP status code [code]402 Payment Required[/code]. This response code is "
"reserved for future use. Initial aim for creating this code was using it for "
"digital payment systems, however this is not currently used."
msgstr ""
-#: doc/classes/HTTPClient.xml:322
+#: doc/classes/HTTPClient.xml:323
msgid ""
"HTTP status code [code]403 Forbidden[/code]. The client does not have access "
"rights to the content, i.e. they are unauthorized, so server is rejecting to "
@@ -24506,7 +25537,7 @@ msgid ""
"known to the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:325
+#: doc/classes/HTTPClient.xml:326
msgid ""
"HTTP status code [code]404 Not Found[/code]. The server can not find "
"requested resource. Either the URL is not recognized or the endpoint is "
@@ -24514,7 +25545,7 @@ msgid ""
"403 to hide existence of a resource if the client is not authorized."
msgstr ""
-#: doc/classes/HTTPClient.xml:328
+#: doc/classes/HTTPClient.xml:329
msgid ""
"HTTP status code [code]405 Method Not Allowed[/code]. The request's HTTP "
"method is known by the server but has been disabled and cannot be used. For "
@@ -24522,7 +25553,7 @@ msgid ""
"GET and HEAD, must never be disabled and should not return this error code."
msgstr ""
-#: doc/classes/HTTPClient.xml:331
+#: doc/classes/HTTPClient.xml:332
msgid ""
"HTTP status code [code]406 Not Acceptable[/code]. The target resource does "
"not have a current representation that would be acceptable to the user "
@@ -24530,21 +25561,21 @@ msgid ""
"request. Used when negotiation content."
msgstr ""
-#: doc/classes/HTTPClient.xml:334
+#: doc/classes/HTTPClient.xml:335
msgid ""
"HTTP status code [code]407 Proxy Authentication Required[/code]. Similar to "
"401 Unauthorized, but it indicates that the client needs to authenticate "
"itself in order to use a proxy."
msgstr ""
-#: doc/classes/HTTPClient.xml:337
+#: doc/classes/HTTPClient.xml:338
msgid ""
"HTTP status code [code]408 Request Timeout[/code]. The server did not "
"receive a complete request message within the time that it was prepared to "
"wait."
msgstr ""
-#: doc/classes/HTTPClient.xml:340
+#: doc/classes/HTTPClient.xml:341
msgid ""
"HTTP status code [code]409 Conflict[/code]. The request could not be "
"completed due to a conflict with the current state of the target resource. "
@@ -24552,47 +25583,47 @@ msgid ""
"conflict and resubmit the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:343
+#: doc/classes/HTTPClient.xml:344
msgid ""
"HTTP status code [code]410 Gone[/code]. The target resource is no longer "
"available at the origin server and this condition is likely permanent."
msgstr ""
-#: doc/classes/HTTPClient.xml:346
+#: doc/classes/HTTPClient.xml:347
msgid ""
"HTTP status code [code]411 Length Required[/code]. The server refuses to "
"accept the request without a defined Content-Length header."
msgstr ""
-#: doc/classes/HTTPClient.xml:349
+#: doc/classes/HTTPClient.xml:350
msgid ""
"HTTP status code [code]412 Precondition Failed[/code]. One or more "
"conditions given in the request header fields evaluated to [code]false[/"
"code] when tested on the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:352
+#: doc/classes/HTTPClient.xml:353
msgid ""
"HTTP status code [code]413 Entity Too Large[/code]. The server is refusing "
"to process a request because the request payload is larger than the server "
"is willing or able to process."
msgstr ""
-#: doc/classes/HTTPClient.xml:355
+#: doc/classes/HTTPClient.xml:356
msgid ""
"HTTP status code [code]414 Request-URI Too Long[/code]. The server is "
"refusing to service the request because the request-target is longer than "
"the server is willing to interpret."
msgstr ""
-#: doc/classes/HTTPClient.xml:358
+#: doc/classes/HTTPClient.xml:359
msgid ""
"HTTP status code [code]415 Unsupported Media Type[/code]. The origin server "
"is refusing to service the request because the payload is in a format not "
"supported by this method on the target resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:361
+#: doc/classes/HTTPClient.xml:362
msgid ""
"HTTP status code [code]416 Requested Range Not Satisfiable[/code]. None of "
"the ranges in the request's Range header field overlap the current extent of "
@@ -24600,21 +25631,21 @@ msgid ""
"to invalid ranges or an excessive request of small or overlapping ranges."
msgstr ""
-#: doc/classes/HTTPClient.xml:364
+#: doc/classes/HTTPClient.xml:365
msgid ""
"HTTP status code [code]417 Expectation Failed[/code]. The expectation given "
"in the request's Expect header field could not be met by at least one of the "
"inbound servers."
msgstr ""
-#: doc/classes/HTTPClient.xml:367
+#: doc/classes/HTTPClient.xml:368
msgid ""
"HTTP status code [code]418 I'm A Teapot[/code]. Any attempt to brew coffee "
"with a teapot should result in the error code \"418 I'm a teapot\". The "
"resulting entity body MAY be short and stout."
msgstr ""
-#: doc/classes/HTTPClient.xml:370
+#: doc/classes/HTTPClient.xml:371
msgid ""
"HTTP status code [code]421 Misdirected Request[/code]. The request was "
"directed at a server that is not able to produce a response. This can be "
@@ -24622,7 +25653,7 @@ msgid ""
"combination of scheme and authority that are included in the request URI."
msgstr ""
-#: doc/classes/HTTPClient.xml:373
+#: doc/classes/HTTPClient.xml:374
msgid ""
"HTTP status code [code]422 Unprocessable Entity[/code] (WebDAV). The server "
"understands the content type of the request entity (hence a 415 Unsupported "
@@ -24631,40 +25662,40 @@ msgid ""
"was unable to process the contained instructions."
msgstr ""
-#: doc/classes/HTTPClient.xml:376
+#: doc/classes/HTTPClient.xml:377
msgid ""
"HTTP status code [code]423 Locked[/code] (WebDAV). The source or destination "
"resource of a method is locked."
msgstr ""
-#: doc/classes/HTTPClient.xml:379
+#: doc/classes/HTTPClient.xml:380
msgid ""
"HTTP status code [code]424 Failed Dependency[/code] (WebDAV). The method "
"could not be performed on the resource because the requested action depended "
"on another action and that action failed."
msgstr ""
-#: doc/classes/HTTPClient.xml:382
+#: doc/classes/HTTPClient.xml:383
msgid ""
"HTTP status code [code]426 Upgrade Required[/code]. The server refuses to "
"perform the request using the current protocol but might be willing to do so "
"after the client upgrades to a different protocol."
msgstr ""
-#: doc/classes/HTTPClient.xml:385
+#: doc/classes/HTTPClient.xml:386
msgid ""
"HTTP status code [code]428 Precondition Required[/code]. The origin server "
"requires the request to be conditional."
msgstr ""
-#: doc/classes/HTTPClient.xml:388
+#: doc/classes/HTTPClient.xml:389
msgid ""
"HTTP status code [code]429 Too Many Requests[/code]. The user has sent too "
"many requests in a given amount of time (see \"rate limiting\"). Back off "
"and increase time between requests or try again later."
msgstr ""
-#: doc/classes/HTTPClient.xml:391
+#: doc/classes/HTTPClient.xml:392
msgid ""
"HTTP status code [code]431 Request Header Fields Too Large[/code]. The "
"server is unwilling to process the request because its header fields are too "
@@ -24672,27 +25703,27 @@ msgid ""
"header fields."
msgstr ""
-#: doc/classes/HTTPClient.xml:394
+#: doc/classes/HTTPClient.xml:395
msgid ""
"HTTP status code [code]451 Response Unavailable For Legal Reasons[/code]. "
"The server is denying access to the resource as a consequence of a legal "
"demand."
msgstr ""
-#: doc/classes/HTTPClient.xml:397
+#: doc/classes/HTTPClient.xml:398
msgid ""
"HTTP status code [code]500 Internal Server Error[/code]. The server "
"encountered an unexpected condition that prevented it from fulfilling the "
"request."
msgstr ""
-#: doc/classes/HTTPClient.xml:400
+#: doc/classes/HTTPClient.xml:401
msgid ""
"HTTP status code [code]501 Not Implemented[/code]. The server does not "
"support the functionality required to fulfill the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:403
+#: doc/classes/HTTPClient.xml:404
msgid ""
"HTTP status code [code]502 Bad Gateway[/code]. The server, while acting as a "
"gateway or proxy, received an invalid response from an inbound server it "
@@ -24700,7 +25731,7 @@ msgid ""
"balancers or proxies."
msgstr ""
-#: doc/classes/HTTPClient.xml:406
+#: doc/classes/HTTPClient.xml:407
msgid ""
"HTTP status code [code]503 Service Unavailable[/code]. The server is "
"currently unable to handle the request due to a temporary overload or "
@@ -24708,7 +25739,7 @@ msgid ""
"again later."
msgstr ""
-#: doc/classes/HTTPClient.xml:409
+#: doc/classes/HTTPClient.xml:410
msgid ""
"HTTP status code [code]504 Gateway Timeout[/code]. The server, while acting "
"as a gateway or proxy, did not receive a timely response from an upstream "
@@ -24716,14 +25747,14 @@ msgid ""
"returned by load balancers or proxies."
msgstr ""
-#: doc/classes/HTTPClient.xml:412
+#: doc/classes/HTTPClient.xml:413
msgid ""
"HTTP status code [code]505 HTTP Version Not Supported[/code]. The server "
"does not support, or refuses to support, the major version of HTTP that was "
"used in the request message."
msgstr ""
-#: doc/classes/HTTPClient.xml:415
+#: doc/classes/HTTPClient.xml:416
msgid ""
"HTTP status code [code]506 Variant Also Negotiates[/code]. The server has an "
"internal configuration error: the chosen variant resource is configured to "
@@ -24731,14 +25762,14 @@ msgid ""
"proper end point in the negotiation process."
msgstr ""
-#: doc/classes/HTTPClient.xml:418
+#: doc/classes/HTTPClient.xml:419
msgid ""
"HTTP status code [code]507 Insufficient Storage[/code]. The method could not "
"be performed on the resource because the server is unable to store the "
"representation needed to successfully complete the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:421
+#: doc/classes/HTTPClient.xml:422
msgid ""
"HTTP status code [code]508 Loop Detected[/code]. The server terminated an "
"operation because it encountered an infinite loop while processing a request "
@@ -24746,14 +25777,14 @@ msgid ""
"failed."
msgstr ""
-#: doc/classes/HTTPClient.xml:424
+#: doc/classes/HTTPClient.xml:425
msgid ""
"HTTP status code [code]510 Not Extended[/code]. The policy for accessing the "
"resource has not been met in the request. The server should send back all "
"the information necessary for the client to issue an extended request."
msgstr ""
-#: doc/classes/HTTPClient.xml:427
+#: doc/classes/HTTPClient.xml:428
msgid ""
"HTTP status code [code]511 Network Authentication Required[/code]. The "
"client needs to authenticate to gain network access."
@@ -24779,12 +25810,21 @@ msgid ""
" http_request.connect(\"request_completed\", self, "
"\"_http_request_completed\")\n"
"\n"
-" # Perform the HTTP request. The URL below returns some JSON as of "
-"writing.\n"
+" # Perform a GET request. The URL below returns JSON as of writing.\n"
" var error = http_request.request(\"https://httpbin.org/get\")\n"
" if error != OK:\n"
" push_error(\"An error occurred in the HTTP request.\")\n"
"\n"
+" # Perform a POST request. The URL below returns JSON as of writing.\n"
+" # Note: Don't make simultaneous requests using a single HTTPRequest "
+"node.\n"
+" # The snippet below is provided for reference only.\n"
+" var body = {\"name\": \"Godette\"}\n"
+" var error = http_request.request(\"https://httpbin.org/post\", [], true, "
+"HTTPClient.METHOD_POST, body)\n"
+" if error != OK:\n"
+" push_error(\"An error occurred in the HTTP request.\")\n"
+"\n"
"\n"
"# Called when the HTTP request is completed.\n"
"func _http_request_completed(result, response_code, headers, body):\n"
@@ -24824,20 +25864,26 @@ msgid ""
" var texture_rect = TextureRect.new()\n"
" add_child(texture_rect)\n"
" texture_rect.texture = texture\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] When performing HTTP requests from a project exported to HTML5, "
+"keep in mind the remote server may not allow requests from foreign origins "
+"due to [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/"
+"url]. If you host the server in question, you should modify its backend to "
+"allow requests from foreign origins by adding the [code]Access-Control-Allow-"
+"Origin: *[/code] HTTP header."
msgstr ""
-#: doc/classes/HTTPRequest.xml:61
+#: doc/classes/HTTPRequest.xml:70
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/"
"http_request_class.html"
msgstr ""
-#: doc/classes/HTTPRequest.xml:69
+#: doc/classes/HTTPRequest.xml:78
msgid "Cancels the current request."
msgstr ""
-#: doc/classes/HTTPRequest.xml:76
+#: doc/classes/HTTPRequest.xml:85
msgid ""
"Returns the response body length.\n"
"[b]Note:[/b] Some Web servers may not send a body length. In this case, the "
@@ -24845,17 +25891,17 @@ msgid ""
"the body length will also be [code]-1[/code]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:84
+#: doc/classes/HTTPRequest.xml:93
msgid "Returns the amount of bytes this HTTPRequest downloaded."
msgstr ""
-#: doc/classes/HTTPRequest.xml:91
+#: doc/classes/HTTPRequest.xml:100
msgid ""
"Returns the current status of the underlying [HTTPClient]. See [enum "
"HTTPClient.Status]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:108
+#: doc/classes/HTTPRequest.xml:117
msgid ""
"Creates request on the underlying [HTTPClient]. If there is no configuration "
"errors, it tries to connect using [method HTTPClient.connect_to_host] and "
@@ -24868,11 +25914,11 @@ msgid ""
"connect to host."
msgstr ""
-#: doc/classes/HTTPRequest.xml:115
+#: doc/classes/HTTPRequest.xml:124
msgid "Maximum allowed size for response bodies."
msgstr ""
-#: doc/classes/HTTPRequest.xml:118
+#: doc/classes/HTTPRequest.xml:127
msgid ""
"The size of the buffer used and maximum bytes to read per iteration. See "
"[member HTTPClient.read_chunk_size].\n"
@@ -24880,63 +25926,63 @@ msgid ""
"files to achieve better speeds at the cost of memory."
msgstr ""
-#: doc/classes/HTTPRequest.xml:122
+#: doc/classes/HTTPRequest.xml:131
msgid "The file to download into. Will output any received file into it."
msgstr ""
-#: doc/classes/HTTPRequest.xml:125
+#: doc/classes/HTTPRequest.xml:134
msgid "Maximum number of allowed redirects."
msgstr ""
-#: doc/classes/HTTPRequest.xml:130
+#: doc/classes/HTTPRequest.xml:139
msgid "If [code]true[/code], multithreading is used to improve performance."
msgstr ""
-#: doc/classes/HTTPRequest.xml:144
+#: doc/classes/HTTPRequest.xml:153
msgid "Emitted when a request is completed."
msgstr ""
-#: doc/classes/HTTPRequest.xml:150
+#: doc/classes/HTTPRequest.xml:159
msgid "Request successful."
msgstr ""
-#: doc/classes/HTTPRequest.xml:155
+#: doc/classes/HTTPRequest.xml:164
msgid "Request failed while connecting."
msgstr ""
-#: doc/classes/HTTPRequest.xml:158
+#: doc/classes/HTTPRequest.xml:167
msgid "Request failed while resolving."
msgstr ""
-#: doc/classes/HTTPRequest.xml:161
+#: doc/classes/HTTPRequest.xml:170
msgid "Request failed due to connection (read/write) error."
msgstr ""
-#: doc/classes/HTTPRequest.xml:164
+#: doc/classes/HTTPRequest.xml:173
msgid "Request failed on SSL handshake."
msgstr ""
-#: doc/classes/HTTPRequest.xml:167
+#: doc/classes/HTTPRequest.xml:176
msgid "Request does not have a response (yet)."
msgstr ""
-#: doc/classes/HTTPRequest.xml:170
+#: doc/classes/HTTPRequest.xml:179
msgid "Request exceeded its maximum size limit, see [member body_size_limit]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:173
+#: doc/classes/HTTPRequest.xml:182
msgid "Request failed (currently unused)."
msgstr ""
-#: doc/classes/HTTPRequest.xml:176
+#: doc/classes/HTTPRequest.xml:185
msgid "HTTPRequest couldn't open the download file."
msgstr ""
-#: doc/classes/HTTPRequest.xml:179
+#: doc/classes/HTTPRequest.xml:188
msgid "HTTPRequest couldn't write to the download file."
msgstr ""
-#: doc/classes/HTTPRequest.xml:182
+#: doc/classes/HTTPRequest.xml:191
msgid "Request reached its maximum redirect limit, see [member max_redirects]."
msgstr ""
@@ -25160,42 +26206,46 @@ msgid "Loads an image from the binary contents of a PNG file."
msgstr ""
#: doc/classes/Image.xml:373
+msgid "Loads an image from the binary contents of a TGA file."
+msgstr ""
+
+#: doc/classes/Image.xml:382
msgid "Loads an image from the binary contents of a WebP file."
msgstr ""
-#: doc/classes/Image.xml:380
+#: doc/classes/Image.xml:389
msgid ""
"Converts the image's data to represent coordinates on a 3D plane. This is "
"used when the image represents a normalmap. A normalmap can add lots of "
"detail to a 3D surface without increasing the polygon count."
msgstr ""
-#: doc/classes/Image.xml:387
+#: doc/classes/Image.xml:396
msgid ""
"Multiplies color values with alpha values. Resulting color values for a "
"pixel are [code](color * alpha)/256[/code]."
msgstr ""
-#: doc/classes/Image.xml:400
+#: doc/classes/Image.xml:409
msgid ""
"Resizes the image to the given [code]width[/code] and [code]height[/code]. "
"New pixels are calculated using [code]interpolation[/code]. See "
"[code]interpolation[/code] constants."
msgstr ""
-#: doc/classes/Image.xml:409
+#: doc/classes/Image.xml:418
msgid ""
"Resizes the image to the nearest power of 2 for the width and height. If "
"[code]square[/code] is [code]true[/code] then set width and height to be the "
"same."
msgstr ""
-#: doc/classes/Image.xml:416
+#: doc/classes/Image.xml:425
msgid ""
"Converts a standard RGBE (Red Green Blue Exponent) image to an sRGB image."
msgstr ""
-#: doc/classes/Image.xml:427
+#: doc/classes/Image.xml:436
msgid ""
"Saves the image as an EXR file to [code]path[/code]. If [code]grayscale[/"
"code] is [code]true[/code] and the image has only one channel, it will be "
@@ -25204,11 +26254,11 @@ msgid ""
"TinyEXR module."
msgstr ""
-#: doc/classes/Image.xml:436
+#: doc/classes/Image.xml:445
msgid "Saves the image as a PNG file to [code]path[/code]."
msgstr ""
-#: doc/classes/Image.xml:455
+#: doc/classes/Image.xml:464
msgid ""
"Sets the [Color] of the pixel at [code](x, y)[/code]. Example:\n"
"[codeblock]\n"
@@ -25218,7 +26268,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Image.xml:471
+#: doc/classes/Image.xml:480
msgid ""
"Sets the [Color] of the pixel at [code](dst.x, dst.y)[/code]. Note that the "
"[code]dst[/code] values must be integers. Example:\n"
@@ -25229,51 +26279,51 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Image.xml:483
+#: doc/classes/Image.xml:492
msgid "Shrinks the image by a factor of 2."
msgstr ""
-#: doc/classes/Image.xml:490
+#: doc/classes/Image.xml:499
msgid "Converts the raw data from the sRGB colorspace to a linear scale."
msgstr ""
-#: doc/classes/Image.xml:496
+#: doc/classes/Image.xml:505
msgid ""
"Holds all of the image's color data in a given format. See [enum Format] "
"constants."
msgstr ""
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:510
msgid "The maximal width allowed for [Image] resources."
msgstr ""
-#: doc/classes/Image.xml:504
+#: doc/classes/Image.xml:513
msgid "The maximal height allowed for [Image] resources."
msgstr ""
-#: doc/classes/Image.xml:507
+#: doc/classes/Image.xml:516
msgid "Texture format with a single 8-bit depth representing luminance."
msgstr ""
-#: doc/classes/Image.xml:510
+#: doc/classes/Image.xml:519
msgid ""
"OpenGL texture format with two values, luminance and alpha each stored with "
"8 bits."
msgstr ""
-#: doc/classes/Image.xml:513
+#: doc/classes/Image.xml:522
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
"bitdepth of 8."
msgstr ""
-#: doc/classes/Image.xml:516
+#: doc/classes/Image.xml:525
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
-#: doc/classes/Image.xml:519
+#: doc/classes/Image.xml:528
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -25281,7 +26331,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:523
+#: doc/classes/Image.xml:532
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -25289,67 +26339,67 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:536
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
-#: doc/classes/Image.xml:532
+#: doc/classes/Image.xml:541
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
-#: doc/classes/Image.xml:535
+#: doc/classes/Image.xml:544
msgid ""
"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
"each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:538
+#: doc/classes/Image.xml:547
msgid ""
"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
"components, each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:541
+#: doc/classes/Image.xml:550
msgid ""
"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
"components, each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:544
+#: doc/classes/Image.xml:553
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 16-"
"bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:556
msgid ""
"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
"each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:550
+#: doc/classes/Image.xml:559
msgid ""
"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
"components, each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:553
+#: doc/classes/Image.xml:562
msgid ""
"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
"components, each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:556
+#: doc/classes/Image.xml:565
msgid ""
"A special OpenGL texture format where the three color components have 9 bits "
"of precision and all three share a single 5-bit exponent."
msgstr ""
-#: doc/classes/Image.xml:559
+#: doc/classes/Image.xml:568
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format that uses Block Compression 1, and is the smallest variation "
@@ -25359,7 +26409,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:563
+#: doc/classes/Image.xml:572
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format that uses Block Compression 2, and color data is interpreted "
@@ -25369,7 +26419,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:567
+#: doc/classes/Image.xml:576
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format also known as Block Compression 3 or BC3 that contains 64 "
@@ -25380,7 +26430,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:571
+#: doc/classes/Image.xml:580
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -25388,7 +26438,7 @@ msgid ""
"DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:574
+#: doc/classes/Image.xml:583
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -25396,7 +26446,7 @@ msgid ""
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:577
+#: doc/classes/Image.xml:586
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -25405,21 +26455,21 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:581
+#: doc/classes/Image.xml:590
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with signed floating-point "
"RGB components."
msgstr ""
-#: doc/classes/Image.xml:584
+#: doc/classes/Image.xml:593
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned floating-point "
"RGB components."
msgstr ""
-#: doc/classes/Image.xml:587
+#: doc/classes/Image.xml:596
msgid ""
"Texture format used on PowerVR-supported mobile platforms, uses 2-bit color "
"depth with no alpha. More information can be found [url=https://en.wikipedia."
@@ -25428,25 +26478,25 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:600
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:603
msgid ""
"Similar to [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with 4-"
"bit color depth and no alpha."
msgstr ""
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:606
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:609
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -25454,7 +26504,7 @@ msgid ""
"standard. This format cannot store an alpha channel."
msgstr ""
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:612
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -25462,7 +26512,7 @@ msgid ""
"unsigned data."
msgstr ""
-#: doc/classes/Image.xml:606
+#: doc/classes/Image.xml:615
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -25470,7 +26520,7 @@ msgid ""
"channel of signed data."
msgstr ""
-#: doc/classes/Image.xml:609
+#: doc/classes/Image.xml:618
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -25478,7 +26528,7 @@ msgid ""
"of unsigned data."
msgstr ""
-#: doc/classes/Image.xml:612
+#: doc/classes/Image.xml:621
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -25486,7 +26536,7 @@ msgid ""
"channels of signed data."
msgstr ""
-#: doc/classes/Image.xml:615
+#: doc/classes/Image.xml:624
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -25496,7 +26546,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:619
+#: doc/classes/Image.xml:628
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -25506,7 +26556,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:623
+#: doc/classes/Image.xml:632
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -25517,31 +26567,31 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:631
+#: doc/classes/Image.xml:640
msgid "Represents the size of the [enum Format] enum."
msgstr ""
-#: doc/classes/Image.xml:634
+#: doc/classes/Image.xml:643
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
-#: doc/classes/Image.xml:637
+#: doc/classes/Image.xml:646
msgid ""
"Performs bilinear interpolation. If the image is resized, it will be blurry. "
"This mode is faster than [constant INTERPOLATE_CUBIC], but it results in "
"lower quality."
msgstr ""
-#: doc/classes/Image.xml:640
+#: doc/classes/Image.xml:649
msgid ""
"Performs cubic interpolation. If the image is resized, it will be blurry. "
"This mode often gives better results compared to [constant "
"INTERPOLATE_BILINEAR], at the cost of being slower."
msgstr ""
-#: doc/classes/Image.xml:643
+#: doc/classes/Image.xml:652
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -25556,55 +26606,55 @@ msgid ""
"a new set will be generated for the resulting image."
msgstr ""
-#: doc/classes/Image.xml:650
+#: doc/classes/Image.xml:659
msgid ""
"Performs Lanczos interpolation. This is the slowest image resizing mode, but "
"it typically gives the best results, especially when downscalng images."
msgstr ""
-#: doc/classes/Image.xml:653
+#: doc/classes/Image.xml:662
msgid "Image does not have alpha."
msgstr ""
-#: doc/classes/Image.xml:656
+#: doc/classes/Image.xml:665
msgid "Image stores alpha in a single bit."
msgstr ""
-#: doc/classes/Image.xml:659
+#: doc/classes/Image.xml:668
msgid "Image uses alpha."
msgstr ""
-#: doc/classes/Image.xml:662
+#: doc/classes/Image.xml:671
msgid "Use S3TC compression."
msgstr ""
-#: doc/classes/Image.xml:665
+#: doc/classes/Image.xml:674
msgid "Use PVRTC2 compression."
msgstr ""
-#: doc/classes/Image.xml:668
+#: doc/classes/Image.xml:677
msgid "Use PVRTC4 compression."
msgstr ""
-#: doc/classes/Image.xml:671
+#: doc/classes/Image.xml:680
msgid "Use ETC compression."
msgstr ""
-#: doc/classes/Image.xml:674
+#: doc/classes/Image.xml:683
msgid "Use ETC2 compression."
msgstr ""
-#: doc/classes/Image.xml:689
+#: doc/classes/Image.xml:698
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
-#: doc/classes/Image.xml:692
+#: doc/classes/Image.xml:701
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
-#: doc/classes/Image.xml:695
+#: doc/classes/Image.xml:704
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -26423,7 +27473,7 @@ msgid "Contains mouse click information. See [method Node._input]."
msgstr ""
#: doc/classes/InputEventMouseButton.xml:10
-#: doc/classes/InputEventMouseMotion.xml:10
+#: doc/classes/InputEventMouseMotion.xml:11
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/inputs/"
"mouse_and_input_coordinates.html"
@@ -26460,29 +27510,36 @@ msgstr ""
#: doc/classes/InputEventMouseMotion.xml:7
msgid ""
"Contains mouse and pen motion information. Supports relative, absolute "
-"positions and speed. See [method Node._input]."
+"positions and speed. See [method Node._input].\n"
+"[b]Note:[/b] By default, this event is only emitted once per frame rendered "
+"at most. If you need more precise input reporting, call [method Input."
+"set_use_accumulated_input] with [code]false[/code] to make events emitted as "
+"often as possible. If you use InputEventMouseMotion to draw lines, consider "
+"implementing [url=https://en.wikipedia.org/wiki/Bresenham"
+"%27s_line_algorithm]Bresenham's line algorithm[/url] as well to avoid "
+"visible gaps in lines if the user is moving the mouse quickly."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:16
+#: doc/classes/InputEventMouseMotion.xml:17
msgid ""
"Represents the pressure the user puts on the pen. Ranges from [code]0.0[/"
"code] to [code]1.0[/code]."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:19
+#: doc/classes/InputEventMouseMotion.xml:20
msgid ""
"The mouse position relative to the previous position (position at the last "
-"frame). \n"
+"frame).\n"
"[b]Note:[/b] Since [InputEventMouseMotion] is only emitted when the mouse "
"moves, the last event won't have a relative position of [code]Vector2(0, 0)[/"
"code] when the user stops moving the mouse."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:23
+#: doc/classes/InputEventMouseMotion.xml:24
msgid "The mouse speed in pixels per second."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:26
+#: doc/classes/InputEventMouseMotion.xml:27
msgid ""
"Represents the angles of tilt of the pen. Positive X-coordinate value "
"indicates a tilt to the right. Positive Y-coordinate value indicates a tilt "
@@ -27372,14 +28429,17 @@ msgstr ""
#: doc/classes/JSON.xml:18
msgid ""
-"Parses a JSON encoded string and returns a [JSONParseResult] containing the "
+"Parses a JSON-encoded string and returns a [JSONParseResult] containing the "
"result."
msgstr ""
#: doc/classes/JSON.xml:31
msgid ""
"Converts a [Variant] var to JSON text and returns the result. Useful for "
-"serializing data to store or send over the network."
+"serializing data to store or send over the network.\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, converting a Variant to JSON text "
+"will convert all numerical values to [float] types."
msgstr ""
#: doc/classes/JSONParseResult.xml:4
@@ -27402,26 +28462,27 @@ msgstr ""
#: doc/classes/JSONParseResult.xml:18
msgid ""
-"The line number where the error occurred if JSON source was not successfully "
-"parsed."
+"The line number where the error occurred if the JSON source was not "
+"successfully parsed."
msgstr ""
#: doc/classes/JSONParseResult.xml:21
msgid ""
-"The error message if JSON source was not successfully parsed. See the [enum "
-"Error] constants."
+"The error message if the JSON source was not successfully parsed. See the "
+"[enum Error] constants."
msgstr ""
#: doc/classes/JSONParseResult.xml:24
+#, fuzzy
msgid ""
"A [Variant] containing the parsed JSON. Use [method @GDScript.typeof] or the "
"[code]is[/code] keyword to check if it is what you expect. For example, if "
"the JSON source starts with curly braces ([code]{}[/code]), a [Dictionary] "
-"will be returned. If the JSON source starts with braces ([code][][/code]), "
+"will be returned. If the JSON source starts with brackets ([code][][/code]), "
"an [Array] will be returned.\n"
"[b]Note:[/b] The JSON specification does not define integer or float types, "
-"but only a number type. Therefore, parsing a JSON text will convert all "
-"numerical values to float types.\n"
+"but only a [i]number[/i] type. Therefore, parsing a JSON text will convert "
+"all numerical values to [float] types.\n"
"[b]Note:[/b] JSON objects do not preserve key order like Godot dictionaries, "
"thus, you should not rely on keys being in a certain order if a dictionary "
"is constructed from JSON. In contrast, JSON arrays retain the order of their "
@@ -27431,9 +28492,24 @@ msgid ""
"if typeof(p.result) == TYPE_ARRAY:\n"
" print(p.result[0]) # Prints \"hello\"\n"
"else:\n"
-" print(\"unexpected results\")\n"
+" push_error(\"Unexpected results.\")\n"
"[/codeblock]"
msgstr ""
+"JSONテキストをパースã—ã¦Variantã«ã—ã¾ã™ (æ­£ã—ã„ã‹ã©ã†ã‹ã¯ [method typeof] ã§"
+"確èªã—ã¦ãã ã•ã„)。\n"
+"JSONã®è¦æ ¼ã§å®šç¾©ã•ã‚Œã¦ã„ã‚‹ã®ã¯æ•°å€¤åž‹ã®ã¿ã§ã€æ•´æ•°åž‹ã¨æµ®å‹•å°æ•°ç‚¹æ•°åž‹ã¯ç„¡ã„ã®ã§"
+"æ°—ã‚’ã¤ã‘ã¦ãã ã•ã„。ãã®ãŸã‚ã€JSONテキストをパースã™ã‚‹éš›ã¯ã€ã™ã¹ã¦ã®æ•°å€¤åž‹ã¯ "
+"[float] åž‹ã«å¤‰æ›ã•ã‚Œã¾ã™ã€‚\n"
+"Godotã®è¾žæ›¸ã¨ç•°ãªã‚Šã€JSONオブジェクトã¯ã‚­ãƒ¼ã®é †åºã‚’ä¿æŒã—ãªã„ã®ã§ã€JSONã‹ã‚‰ä½œ"
+"æˆã•ã‚ŒãŸè¾žæ›¸ã®ã‚­ãƒ¼é †åºã¯ä¿¡é ¼ã—ã¦ã¯ã„ã‘ã¾ã›ã‚“。ãã®ä¸€æ–¹ã§JSONã®é…列ã¯ã€è¦ç´ ã®"
+"é †åºã‚’維æŒã—ã¾ã™:\n"
+"[codeblock]\n"
+"p = parse_json('[\"a\", \"b\", \"c\"]')\n"
+"if typeof(p) == TYPE_ARRAY:\n"
+" print(p[0]) # a ã¨è¡¨ç¤º\n"
+"else:\n"
+" print(\"想定外ã®çµæžœ\")\n"
+"[/codeblock]"
#: doc/classes/KinematicBody2D.xml:4
msgid "Kinematic body 2D node."
@@ -27547,7 +28623,7 @@ msgid ""
"simulation will run at an incorrect speed.\n"
"[code]linear_velocity[/code] is the velocity vector in pixels per second. "
"Unlike in [method move_and_collide], you should [i]not[/i] multiply it by "
-"[code]delta[/code] — the physics engine handles applying the velocity. \n"
+"[code]delta[/code] — the physics engine handles applying the velocity.\n"
"[code]up_direction[/code] is the up direction, used to determine what is a "
"wall and what is a floor or a ceiling. If set to the default value of "
"[code]Vector2(0, 0)[/code], everything is considered a wall. This is useful "
@@ -27663,7 +28739,7 @@ msgid ""
"[code]linear_velocity[/code] is the velocity vector (typically meters per "
"second). Unlike in [method move_and_collide], you should [i]not[/i] multiply "
"it by [code]delta[/code] — the physics engine handles applying the "
-"velocity. \n"
+"velocity.\n"
"[code]up_direction[/code] is the up direction, used to determine what is a "
"wall and what is a floor or a ceiling. If set to the default value of "
"[code]Vector3(0, 0, 0)[/code], everything is considered a wall.\n"
@@ -28392,17 +29468,6 @@ msgid ""
"[b]Note:[/b] Hiding a light does [i]not[/i] affect baking."
msgstr ""
-#: doc/classes/Light3D.xml:152
-msgid "Only indirect lighting will be baked (default)."
-msgstr ""
-
-#: doc/classes/Light3D.xml:155
-msgid ""
-"Both direct and indirect light will be baked.\n"
-"[b]Note:[/b] You should hide the light if you don't want it to appear twice "
-"(dynamic and baked)."
-msgstr ""
-
#: doc/classes/LightOccluder2D.xml:4
msgid "Occludes light cast by a Light2D, casting shadows."
msgstr ""
@@ -28681,136 +29746,142 @@ msgstr ""
msgid "Text alignment as defined in the [enum Align] enum."
msgstr ""
-#: doc/classes/LineEdit.xml:120 doc/classes/TextEdit.xml:406
+#: doc/classes/LineEdit.xml:120 doc/classes/TextEdit.xml:358
msgid "If [code]true[/code], the caret (visual cursor) blinks."
msgstr ""
-#: doc/classes/LineEdit.xml:123 doc/classes/TextEdit.xml:409
+#: doc/classes/LineEdit.xml:123 doc/classes/TextEdit.xml:361
msgid "Duration (in seconds) of a caret's blinking cycle."
msgstr ""
-#: doc/classes/LineEdit.xml:126
+#: doc/classes/LineEdit.xml:128
msgid ""
"The cursor's position inside the [LineEdit]. When set, the text may scroll "
"to accommodate it."
msgstr ""
-#: doc/classes/LineEdit.xml:129
+#: doc/classes/LineEdit.xml:131
msgid ""
"If [code]true[/code], the [LineEdit] will show a clear button if [code]text[/"
"code] is not empty, which can be used to clear the text quickly."
msgstr ""
-#: doc/classes/LineEdit.xml:132
+#: doc/classes/LineEdit.xml:134
msgid "If [code]true[/code], the context menu will appear when right-clicked."
msgstr ""
-#: doc/classes/LineEdit.xml:135
+#: doc/classes/LineEdit.xml:137
msgid ""
"If [code]false[/code], existing text cannot be modified and new text cannot "
"be added."
msgstr ""
-#: doc/classes/LineEdit.xml:138
+#: doc/classes/LineEdit.xml:140
msgid ""
"If [code]true[/code], the [LineEdit] width will increase to stay longer than "
"the [member text]. It will [b]not[/b] compress if the [member text] is "
"shortened."
msgstr ""
-#: doc/classes/LineEdit.xml:142
+#: doc/classes/LineEdit.xml:144
msgid ""
"Maximum amount of characters that can be entered inside the [LineEdit]. If "
"[code]0[/code], there is no limit."
msgstr ""
-#: doc/classes/LineEdit.xml:146
+#: doc/classes/LineEdit.xml:148
msgid ""
"Opacity of the [member placeholder_text]. From [code]0[/code] to [code]1[/"
"code]."
msgstr ""
-#: doc/classes/LineEdit.xml:149
+#: doc/classes/LineEdit.xml:151
msgid ""
"Text shown when the [LineEdit] is empty. It is [b]not[/b] the [LineEdit]'s "
"default value (see [member text])."
msgstr ""
-#: doc/classes/LineEdit.xml:152
+#: doc/classes/LineEdit.xml:154
msgid ""
"Sets the icon that will appear in the right end of the [LineEdit] if there's "
"no [member text], or always, if [member clear_button_enabled] is set to "
"[code]false[/code]."
msgstr ""
-#: doc/classes/LineEdit.xml:155
+#: doc/classes/LineEdit.xml:157
msgid ""
"If [code]true[/code], every character is replaced with the secret character "
"(see [member secret_character])."
msgstr ""
-#: doc/classes/LineEdit.xml:158
+#: doc/classes/LineEdit.xml:160
msgid ""
"The character to use to mask secret input (defaults to \"*\"). Only a single "
"character can be used as the secret character."
msgstr ""
-#: doc/classes/LineEdit.xml:161
+#: doc/classes/LineEdit.xml:163
msgid ""
"If [code]false[/code], it's impossible to select the text using mouse nor "
"keyboard."
msgstr ""
-#: doc/classes/LineEdit.xml:164
+#: doc/classes/LineEdit.xml:166
msgid "If [code]false[/code], using shortcuts will be disabled."
msgstr ""
-#: doc/classes/LineEdit.xml:167
+#: doc/classes/LineEdit.xml:169
msgid ""
"String value of the [LineEdit].\n"
"[b]Note:[/b] Changing text using this property won't emit the [signal "
"text_changed] signal."
msgstr ""
-#: doc/classes/LineEdit.xml:174
+#: doc/classes/LineEdit.xml:173 doc/classes/TextEdit.xml:434
+msgid ""
+"If [code]true[/code], the native virtual keyboard is shown when focused on "
+"platforms that support it."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:179
msgid ""
"Emitted when trying to append text that would overflow the [member "
"max_length]."
msgstr ""
-#: doc/classes/LineEdit.xml:181 doc/classes/TextEdit.xml:525
+#: doc/classes/LineEdit.xml:186 doc/classes/TextEdit.xml:490
msgid "Emitted when the text changes."
msgstr ""
-#: doc/classes/LineEdit.xml:188
+#: doc/classes/LineEdit.xml:193
msgid "Emitted when the user presses [constant KEY_ENTER] on the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:194
+#: doc/classes/LineEdit.xml:199
msgid "Aligns the text on the left-hand side of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:197
+#: doc/classes/LineEdit.xml:202
msgid "Centers the text in the middle of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:200
+#: doc/classes/LineEdit.xml:205
msgid "Aligns the text on the right-hand side of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:203
+#: doc/classes/LineEdit.xml:208
msgid "Stretches whitespaces to fit the [LineEdit]'s width."
msgstr ""
-#: doc/classes/LineEdit.xml:206 doc/classes/TextEdit.xml:540
+#: doc/classes/LineEdit.xml:211 doc/classes/TextEdit.xml:505
msgid "Cuts (copies and clears) the selected text."
msgstr ""
-#: doc/classes/LineEdit.xml:209 doc/classes/TextEdit.xml:543
+#: doc/classes/LineEdit.xml:214 doc/classes/TextEdit.xml:508
msgid "Copies the selected text."
msgstr ""
-#: doc/classes/LineEdit.xml:212
+#: doc/classes/LineEdit.xml:217
msgid ""
"Pastes the clipboard text over the selected text (or at the cursor's "
"position).\n"
@@ -28818,80 +29889,80 @@ msgid ""
"clipboard via [method String.strip_escapes]."
msgstr ""
-#: doc/classes/LineEdit.xml:216
+#: doc/classes/LineEdit.xml:221
msgid "Erases the whole [LineEdit] text."
msgstr ""
-#: doc/classes/LineEdit.xml:219
+#: doc/classes/LineEdit.xml:224
msgid "Selects the whole [LineEdit] text."
msgstr ""
-#: doc/classes/LineEdit.xml:222 doc/classes/TextEdit.xml:555
+#: doc/classes/LineEdit.xml:227 doc/classes/TextEdit.xml:520
msgid "Undoes the previous action."
msgstr ""
-#: doc/classes/LineEdit.xml:225
+#: doc/classes/LineEdit.xml:230
msgid "Reverse the last undo action."
msgstr ""
-#: doc/classes/LineEdit.xml:228 doc/classes/TextEdit.xml:561
+#: doc/classes/LineEdit.xml:233 doc/classes/TextEdit.xml:526
msgid "Represents the size of the [enum MenuItems] enum."
msgstr ""
-#: doc/classes/LineEdit.xml:233
+#: doc/classes/LineEdit.xml:238
msgid "Texture for the clear button. See [member clear_button_enabled]."
msgstr ""
-#: doc/classes/LineEdit.xml:236
+#: doc/classes/LineEdit.xml:241
msgid "Color used as default tint for the clear button."
msgstr ""
-#: doc/classes/LineEdit.xml:239
+#: doc/classes/LineEdit.xml:244
msgid "Color used for the clear button when it's pressed."
msgstr ""
-#: doc/classes/LineEdit.xml:242
+#: doc/classes/LineEdit.xml:247
msgid "Color of the [LineEdit]'s visual cursor (caret)."
msgstr ""
-#: doc/classes/LineEdit.xml:245
+#: doc/classes/LineEdit.xml:250
msgid "Background used when [LineEdit] has GUI focus."
msgstr ""
-#: doc/classes/LineEdit.xml:248
+#: doc/classes/LineEdit.xml:253
msgid "Font used for the text."
msgstr ""
-#: doc/classes/LineEdit.xml:251
+#: doc/classes/LineEdit.xml:256
msgid "Default font color."
msgstr ""
-#: doc/classes/LineEdit.xml:254
+#: doc/classes/LineEdit.xml:259
msgid "Font color for selected text (inside the selection rectangle)."
msgstr ""
-#: doc/classes/LineEdit.xml:257
+#: doc/classes/LineEdit.xml:262
msgid "Font color when editing is disabled."
msgstr ""
-#: doc/classes/LineEdit.xml:260
+#: doc/classes/LineEdit.xml:265
msgid ""
"Minimum horizontal space for the text (not counting the clear button and "
"content margins). This value is measured in count of space characters (i.e. "
"this amount of space characters can be displayed without scrolling)."
msgstr ""
-#: doc/classes/LineEdit.xml:263
+#: doc/classes/LineEdit.xml:268
msgid "Default background for the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:266
+#: doc/classes/LineEdit.xml:271
msgid ""
"Background used when [LineEdit] is in read-only mode ([member editable] is "
"set to [code]false[/code])."
msgstr ""
-#: doc/classes/LineEdit.xml:269
+#: doc/classes/LineEdit.xml:274
msgid "Color of the selection rectangle."
msgstr ""
@@ -29109,14 +30180,14 @@ msgstr ""
msgid "Emitted when a user responds to a permission request."
msgstr ""
-#: doc/classes/MainLoop.xml:127 doc/classes/Node.xml:948
+#: doc/classes/MainLoop.xml:127 doc/classes/Node.xml:946
msgid ""
"Notification received from the OS when the application is exceeding its "
"allocated memory.\n"
"Specific to the iOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:131 doc/classes/Node.xml:952
+#: doc/classes/MainLoop.xml:131 doc/classes/Node.xml:950
msgid ""
"Notification received when translations may have changed. Can be triggered "
"by the user changing the locale. Can be used to respond to language changes, "
@@ -29124,39 +30195,55 @@ msgid ""
"the built-in translation support, like [method Object.tr]."
msgstr ""
-#: doc/classes/MainLoop.xml:134 doc/classes/Node.xml:955
+#: doc/classes/MainLoop.xml:134 doc/classes/Node.xml:953
msgid ""
"Notification received from the OS when a request for \"About\" information "
"is sent.\n"
"Specific to the macOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:138 doc/classes/Node.xml:959
+#: doc/classes/MainLoop.xml:138 doc/classes/Node.xml:957
msgid ""
"Notification received from Godot's crash handler when the engine is about to "
"crash.\n"
"Implemented on desktop platforms if the crash handler is enabled."
msgstr ""
-#: doc/classes/MainLoop.xml:142 doc/classes/Node.xml:963
+#: doc/classes/MainLoop.xml:142 doc/classes/Node.xml:961
msgid ""
"Notification received from the OS when an update of the Input Method Engine "
"occurs (e.g. change of IME cursor position or composition string).\n"
"Specific to the macOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:146 doc/classes/Node.xml:967
+#: doc/classes/MainLoop.xml:146 doc/classes/Node.xml:965
msgid ""
-"Notification received from the OS when the app is resumed.\n"
+"Notification received from the OS when the application is resumed.\n"
"Specific to the Android platform."
msgstr ""
-#: doc/classes/MainLoop.xml:150 doc/classes/Node.xml:971
+#: doc/classes/MainLoop.xml:150 doc/classes/Node.xml:969
msgid ""
-"Notification received from the OS when the app is paused.\n"
+"Notification received from the OS when the application is paused.\n"
"Specific to the Android platform."
msgstr ""
+#: doc/classes/MainLoop.xml:154 doc/classes/Node.xml:973
+msgid ""
+"Notification received from the OS when the application is focused, i.e. when "
+"changing the focus from the OS desktop or a thirdparty application to any "
+"open window of the Godot instance.\n"
+"Implemented on desktop platforms."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:158 doc/classes/Node.xml:977
+msgid ""
+"Notification received from the OS when the application is defocused, i.e. "
+"when changing the focus from any open window of the Godot instance to the OS "
+"desktop or a thirdparty application.\n"
+"Implemented on desktop platforms."
+msgstr ""
+
#: doc/classes/MarginContainer.xml:4
msgid "Simple margin container."
msgstr ""
@@ -29464,11 +30551,11 @@ msgstr ""
msgid "Render array as triangle strips."
msgstr ""
-#: doc/classes/Mesh.xml:126 doc/classes/RenderingServer.xml:3189
+#: doc/classes/Mesh.xml:126 doc/classes/RenderingServer.xml:3185
msgid "Blend shapes are normalized."
msgstr ""
-#: doc/classes/Mesh.xml:129 doc/classes/RenderingServer.xml:3192
+#: doc/classes/Mesh.xml:129 doc/classes/RenderingServer.xml:3188
msgid "Blend shapes are relative to base weight."
msgstr ""
@@ -29510,37 +30597,37 @@ msgstr ""
msgid "Mesh array uses indices."
msgstr ""
-#: doc/classes/Mesh.xml:159 doc/classes/RenderingServer.xml:3145
+#: doc/classes/Mesh.xml:159 doc/classes/RenderingServer.xml:3141
msgid "Flag used to mark a compressed (half float) normal array."
msgstr ""
-#: doc/classes/Mesh.xml:162 doc/classes/RenderingServer.xml:3148
+#: doc/classes/Mesh.xml:162 doc/classes/RenderingServer.xml:3144
msgid "Flag used to mark a compressed (half float) tangent array."
msgstr ""
-#: doc/classes/Mesh.xml:165 doc/classes/RenderingServer.xml:3151
+#: doc/classes/Mesh.xml:165 doc/classes/RenderingServer.xml:3147
msgid "Flag used to mark a compressed (half float) color array."
msgstr ""
-#: doc/classes/Mesh.xml:168 doc/classes/RenderingServer.xml:3154
+#: doc/classes/Mesh.xml:168 doc/classes/RenderingServer.xml:3150
msgid "Flag used to mark a compressed (half float) UV coordinates array."
msgstr ""
-#: doc/classes/Mesh.xml:171 doc/classes/RenderingServer.xml:3157
+#: doc/classes/Mesh.xml:171 doc/classes/RenderingServer.xml:3153
msgid ""
"Flag used to mark a compressed (half float) UV coordinates array for the "
"second UV coordinates."
msgstr ""
-#: doc/classes/Mesh.xml:174 doc/classes/RenderingServer.xml:3160
+#: doc/classes/Mesh.xml:174 doc/classes/RenderingServer.xml:3156
msgid "Flag used to mark a compressed index array."
msgstr ""
-#: doc/classes/Mesh.xml:177 doc/classes/RenderingServer.xml:3166
+#: doc/classes/Mesh.xml:177 doc/classes/RenderingServer.xml:3162
msgid "Flag used to mark that the array contains 2D vertices."
msgstr ""
-#: doc/classes/Mesh.xml:180 doc/classes/RenderingServer.xml:3163
+#: doc/classes/Mesh.xml:180 doc/classes/RenderingServer.xml:3159
msgid ""
"Used to set flags [constant ARRAY_COMPRESS_NORMAL], [constant "
"ARRAY_COMPRESS_TANGENT], [constant ARRAY_COMPRESS_COLOR], [constant "
@@ -31301,7 +32388,10 @@ msgstr ""
msgid ""
"The number of channels to be used by ENet. Channels are used to separate "
"different kinds of data. In reliable or ordered mode, for example, the "
-"packet delivery order is ensured on a per channel basis."
+"packet delivery order is ensured on a per-channel basis. This is done to "
+"combat latency and reduces ordering restrictions on packets. The delivery "
+"status of a packet in one channel won't stall the delivery of other packets "
+"in another channel."
msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:134
@@ -31328,11 +32418,12 @@ msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:144
msgid ""
"Set the default channel to be used to transfer data. By default, this value "
-"is [code]-1[/code] which means that ENet will only use 2 channels, one for "
-"reliable and one for unreliable packets. Channel [code]0[/code] is reserved, "
-"and cannot be used. Setting this member to any value between [code]0[/code] "
-"and [member channel_count] (excluded) will force ENet to use that channel "
-"for sending data."
+"is [code]-1[/code] which means that ENet will only use 2 channels: one for "
+"reliable packets, and one for unreliable packets. The channel [code]0[/code] "
+"is reserved and cannot be used. Setting this member to any value between "
+"[code]0[/code] and [member channel_count] (excluded) will force ENet to use "
+"that channel for sending data. See [member channel_count] for more "
+"information about ENet channels."
msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:148
@@ -32524,57 +33615,63 @@ msgstr ""
#: doc/classes/Node.xml:930
msgid ""
-"Notification received from the OS when the game window is focused.\n"
-"Implemented on all platforms."
+"Notification received from the OS when the node's parent [Window] is "
+"focused. This may be a change of focus between two windows of the same "
+"engine instance, or from the OS desktop or a third-party application to a "
+"window of the game (in which case [constant "
+"NOTIFICATION_APPLICATION_FOCUS_IN] is also emitted)."
msgstr ""
-#: doc/classes/Node.xml:934
+#: doc/classes/Node.xml:933
msgid ""
-"Notification received from the OS when the game window is unfocused.\n"
-"Implemented on all platforms."
+"Notification received from the OS when the node's parent [Window] is "
+"defocused. This may be a change of focus between two windows of the same "
+"engine instance, or from a window of the game to the OS desktop or a third-"
+"party application (in which case [constant "
+"NOTIFICATION_APPLICATION_FOCUS_OUT] is also emitted)."
msgstr ""
-#: doc/classes/Node.xml:938
+#: doc/classes/Node.xml:936
msgid ""
"Notification received from the OS when a close request is sent (e.g. closing "
"the window with a \"Close\" button or [kbd]Alt + F4[/kbd]).\n"
"Implemented on desktop platforms."
msgstr ""
-#: doc/classes/Node.xml:942
+#: doc/classes/Node.xml:940
msgid ""
"Notification received from the OS when a go back request is sent (e.g. "
"pressing the \"Back\" button on Android).\n"
"Specific to the Android platform."
msgstr ""
-#: doc/classes/Node.xml:975
+#: doc/classes/Node.xml:981
msgid ""
"Inherits pause mode from the node's parent. For the root node, it is "
"equivalent to [constant PAUSE_MODE_STOP]. Default."
msgstr ""
-#: doc/classes/Node.xml:978
+#: doc/classes/Node.xml:984
msgid "Stops processing when the [SceneTree] is paused."
msgstr ""
-#: doc/classes/Node.xml:981
+#: doc/classes/Node.xml:987
msgid "Continue to process regardless of the [SceneTree] pause state."
msgstr ""
-#: doc/classes/Node.xml:984
+#: doc/classes/Node.xml:990
msgid "Duplicate the node's signals."
msgstr ""
-#: doc/classes/Node.xml:987
+#: doc/classes/Node.xml:993
msgid "Duplicate the node's groups."
msgstr ""
-#: doc/classes/Node.xml:990
+#: doc/classes/Node.xml:996
msgid "Duplicate the node's scripts."
msgstr ""
-#: doc/classes/Node.xml:993
+#: doc/classes/Node.xml:999
msgid ""
"Duplicate using instancing.\n"
"An instance stays linked to the original so when the original changes, the "
@@ -32798,12 +33895,6 @@ msgid ""
"changes. [Node3D] will not propagate this by default."
msgstr ""
-#: doc/classes/Node3D.xml:104
-msgid ""
-"Returns whether the node is visible, taking into consideration that its "
-"parents visibility."
-msgstr ""
-
#: doc/classes/Node3D.xml:115
msgid ""
"Rotates itself so that the local -Z axis points towards the [code]target[/"
@@ -32973,7 +34064,10 @@ msgid "Local translation of this node."
msgstr ""
#: doc/classes/Node3D.xml:326
-msgid "If [code]true[/code], this node is drawn."
+msgid ""
+"If [code]true[/code], this node is drawn. The node is only visible if all of "
+"its antecedents are visible as well (in other words, [method "
+"is_visible_in_tree] must return [code]true[/code])."
msgstr ""
#: doc/classes/Node3D.xml:332
@@ -33230,10 +34324,21 @@ msgid ""
"the key exists, even if the value is [code]null[/code].\n"
"Objects also receive notifications. Notifications are a simple way to notify "
"the object about different events, so they can all be handled together. See "
-"[method _notification]."
+"[method _notification].\n"
+"[b]Note:[/b] Unlike references to a [Reference], references to an Object "
+"stored in a variable can become invalid without warning. Therefore, it's "
+"recommended to use [Reference] for data classes instead of [Object]."
msgstr ""
-#: doc/classes/Object.xml:30
+#: doc/classes/Object.xml:23 doc/classes/Reference.xml:12
+#: doc/classes/Resource.xml:11
+#, fuzzy
+msgid ""
+"https://docs.godotengine.org/en/latest/getting_started/workflow/"
+"best_practices/node_alternatives.html"
+msgstr "https://docs.godotengine.org/ja/latest/tutorials/math/index.html"
+
+#: doc/classes/Object.xml:32
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method get].\n"
@@ -33241,7 +34346,7 @@ msgid ""
"code] does not exist."
msgstr ""
-#: doc/classes/Object.xml:38
+#: doc/classes/Object.xml:40
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method get_property_list].\n"
@@ -33253,11 +34358,11 @@ msgid ""
"PropertyUsageFlags])."
msgstr ""
-#: doc/classes/Object.xml:47
+#: doc/classes/Object.xml:49
msgid "Called when the object is initialized."
msgstr ""
-#: doc/classes/Object.xml:56
+#: doc/classes/Object.xml:58
msgid ""
"Called whenever the object receives a notification, which is identified in "
"[code]what[/code] by a constant. The base [Object] has two constants "
@@ -33266,7 +34371,7 @@ msgid ""
"notifications which are also received by this method."
msgstr ""
-#: doc/classes/Object.xml:67
+#: doc/classes/Object.xml:69
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method set].\n"
@@ -33274,7 +34379,7 @@ msgid ""
"exists."
msgstr ""
-#: doc/classes/Object.xml:75
+#: doc/classes/Object.xml:77
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method to_string], and thus the object's representation where it is "
@@ -33283,34 +34388,42 @@ msgid ""
"[code]\"[ClassName:RID]\"[/code]."
msgstr ""
-#: doc/classes/Object.xml:87
+#: doc/classes/Object.xml:89
msgid ""
"Adds a user-defined [code]signal[/code]. Arguments are optional, but can be "
"added as an [Array] of dictionaries, each containing [code]name: String[/"
"code] and [code]type: int[/code] (see [enum Variant.Type]) entries."
msgstr ""
-#: doc/classes/Object.xml:96
+#: doc/classes/Object.xml:98
msgid ""
"Calls the [code]method[/code] on the object and returns the result. This "
"method supports a variable number of arguments, so parameters are passed as "
"a comma separated list. Example:\n"
"[codeblock]\n"
"call(\"set\", \"position\", Vector2(42.0, 0.0))\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] In C#, the method name must be specified as snake_case if it is "
+"defined by a built-in Godot node. This doesn't apply to user-defined methods "
+"where you should use the same convention as in the C# source (typically "
+"PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:108
+#: doc/classes/Object.xml:111
msgid ""
"Calls the [code]method[/code] on the object during idle time. This method "
"supports a variable number of arguments, so parameters are passed as a comma "
"separated list. Example:\n"
"[codeblock]\n"
"call_deferred(\"set\", \"position\", Vector2(42.0, 0.0))\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] In C#, the method name must be specified as snake_case if it is "
+"defined by a built-in Godot node. This doesn't apply to user-defined methods "
+"where you should use the same convention as in the C# source (typically "
+"PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:122
+#: doc/classes/Object.xml:126
msgid ""
"Calls the [code]method[/code] on the object and returns the result. "
"Contrarily to [method call], this method does not support a variable number "
@@ -33320,13 +34433,13 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:132
+#: doc/classes/Object.xml:136
msgid ""
"Returns [code]true[/code] if the object can translate strings. See [method "
"set_message_translation] and [method tr]."
msgstr ""
-#: doc/classes/Object.xml:147
+#: doc/classes/Object.xml:151
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -33362,7 +34475,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:174
+#: doc/classes/Object.xml:178
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -33373,7 +34486,7 @@ msgid ""
"exists."
msgstr ""
-#: doc/classes/Object.xml:185
+#: doc/classes/Object.xml:189
msgid ""
"Emits the given [code]signal[/code]. The signal must exist, so it should be "
"a built-in signal of this class or one of its parent classes, or a user-"
@@ -33385,24 +34498,28 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:196
+#: doc/classes/Object.xml:200
msgid ""
"Deletes the object from memory. Any pre-existing reference to the freed "
"object will become invalid, e.g. [code]is_instance_valid(object)[/code] will "
"return [code]false[/code]."
msgstr ""
-#: doc/classes/Object.xml:205
+#: doc/classes/Object.xml:209
msgid ""
"Returns the [Variant] value of the given [code]property[/code]. If the "
-"[code]property[/code] doesn't exist, this will return [code]null[/code]."
+"[code]property[/code] doesn't exist, this will return [code]null[/code].\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:212
+#: doc/classes/Object.xml:217
msgid "Returns the object's class as a [String]."
msgstr ""
-#: doc/classes/Object.xml:219
+#: doc/classes/Object.xml:224
msgid ""
"Returns an [Array] of dictionaries with information about signals that are "
"connected to the object.\n"
@@ -33413,7 +34530,7 @@ msgid ""
"connected."
msgstr ""
-#: doc/classes/Object.xml:232
+#: doc/classes/Object.xml:237
msgid ""
"Gets the object's property indexed by the given [NodePath]. The node path "
"should be relative to the current object and can use the colon character "
@@ -33421,26 +34538,26 @@ msgid ""
"\"[/code] or [code]\"material:next_pass:blend_mode\"[/code]."
msgstr ""
-#: doc/classes/Object.xml:239
+#: doc/classes/Object.xml:244
msgid ""
"Returns the object's unique instance ID.\n"
"This ID can be saved in [EncodedObjectAsID], and can be used to retrieve the "
"object instance with [method @GDScript.instance_from_id]."
msgstr ""
-#: doc/classes/Object.xml:249
+#: doc/classes/Object.xml:254
msgid "Returns the object's metadata entry for the given [code]name[/code]."
msgstr ""
-#: doc/classes/Object.xml:256
+#: doc/classes/Object.xml:261
msgid "Returns the object's metadata as a [PackedStringArray]."
msgstr ""
-#: doc/classes/Object.xml:263
+#: doc/classes/Object.xml:268
msgid "Returns the object's methods and their signatures as an [Array]."
msgstr ""
-#: doc/classes/Object.xml:270
+#: doc/classes/Object.xml:275
msgid ""
"Returns the object's property list as an [Array] of dictionaries.\n"
"Each property's [Dictionary] contain at least [code]name: String[/code] and "
@@ -33450,54 +34567,54 @@ msgid ""
"PropertyUsageFlags])."
msgstr ""
-#: doc/classes/Object.xml:278
+#: doc/classes/Object.xml:283
msgid ""
"Returns the object's [Script] instance, or [code]null[/code] if none is "
"assigned."
msgstr ""
-#: doc/classes/Object.xml:287
+#: doc/classes/Object.xml:292
msgid "Returns an [Array] of connections for the given [code]signal[/code]."
msgstr ""
-#: doc/classes/Object.xml:294
+#: doc/classes/Object.xml:299
msgid "Returns the list of signals as an [Array] of dictionaries."
msgstr ""
-#: doc/classes/Object.xml:303
+#: doc/classes/Object.xml:308
msgid ""
"Returns [code]true[/code] if a metadata entry is found with the given "
"[code]name[/code]."
msgstr ""
-#: doc/classes/Object.xml:312
+#: doc/classes/Object.xml:317
msgid ""
"Returns [code]true[/code] if the object contains the given [code]method[/"
"code]."
msgstr ""
-#: doc/classes/Object.xml:321
+#: doc/classes/Object.xml:326
msgid "Returns [code]true[/code] if the given [code]signal[/code] exists."
msgstr ""
-#: doc/classes/Object.xml:330
+#: doc/classes/Object.xml:335
msgid ""
"Returns [code]true[/code] if the given user-defined [code]signal[/code] "
"exists. Only signals added using [method add_user_signal] are taken into "
"account."
msgstr ""
-#: doc/classes/Object.xml:337
+#: doc/classes/Object.xml:342
msgid "Returns [code]true[/code] if signal emission blocking is enabled."
msgstr ""
-#: doc/classes/Object.xml:346
+#: doc/classes/Object.xml:351
msgid ""
"Returns [code]true[/code] if the object inherits from the given [code]class[/"
"code]."
msgstr ""
-#: doc/classes/Object.xml:357
+#: doc/classes/Object.xml:362
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -33505,13 +34622,13 @@ msgid ""
"code], [code]target[/code], and [code]method[/code]."
msgstr ""
-#: doc/classes/Object.xml:365
+#: doc/classes/Object.xml:370
msgid ""
"Returns [code]true[/code] if the [method Node.queue_free] method was called "
"for the object."
msgstr ""
-#: doc/classes/Object.xml:376
+#: doc/classes/Object.xml:381
msgid ""
"Send a given notification to the object, which will also trigger a call to "
"the [method _notification] method of all classes that the object inherits "
@@ -33523,34 +34640,42 @@ msgid ""
"and then down to its successive inheriting classes."
msgstr ""
-#: doc/classes/Object.xml:384
+#: doc/classes/Object.xml:389
msgid ""
"Notify the editor that the property list has changed, so that editor plugins "
"can take the new values into account. Does nothing on export builds."
msgstr ""
-#: doc/classes/Object.xml:393
+#: doc/classes/Object.xml:398
msgid "Removes a given entry from the object's metadata."
msgstr ""
-#: doc/classes/Object.xml:404
+#: doc/classes/Object.xml:409
msgid ""
"Assigns a new value to the given property. If the [code]property[/code] does "
-"not exist, nothing will happen."
+"not exist, nothing will happen.\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:413
+#: doc/classes/Object.xml:419
msgid "If set to [code]true[/code], signal emission is blocked."
msgstr ""
-#: doc/classes/Object.xml:424
+#: doc/classes/Object.xml:430
msgid ""
"Assigns a new value to the given property, after the current frame's physics "
"step. This is equivalent to calling [method set] via [method call_deferred], "
-"i.e. [code]call_deferred(\"set\", property, value)[/code]."
+"i.e. [code]call_deferred(\"set\", property, value)[/code].\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:435
+#: doc/classes/Object.xml:442
msgid ""
"Assigns a new value to the property identified by the [NodePath]. The node "
"path should be relative to the current object and can use the colon "
@@ -33562,19 +34687,19 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:449
+#: doc/classes/Object.xml:456
msgid ""
"Defines whether the object can translate strings (with calls to [method "
"tr]). Enabled by default."
msgstr ""
-#: doc/classes/Object.xml:460
+#: doc/classes/Object.xml:467
msgid ""
"Adds or changes a given entry in the object's metadata. Metadata are "
"serialized, and can take any [Variant] value."
msgstr ""
-#: doc/classes/Object.xml:469
+#: doc/classes/Object.xml:476
msgid ""
"Assigns a script to the object. Each object can have a single script "
"assigned to it, which are used to extend its functionality.\n"
@@ -33583,7 +34708,7 @@ msgid ""
"_init] method will be called."
msgstr ""
-#: doc/classes/Object.xml:477
+#: doc/classes/Object.xml:484
msgid ""
"Returns a [String] representing the object. If not overridden, defaults to "
"[code]\"[ClassName:RID]\"[/code].\n"
@@ -33591,7 +34716,7 @@ msgid ""
"representation."
msgstr ""
-#: doc/classes/Object.xml:487
+#: doc/classes/Object.xml:494
msgid ""
"Translates a message using translation catalogs configured in the Project "
"Settings.\n"
@@ -33600,35 +34725,35 @@ msgid ""
"set_message_translation]."
msgstr ""
-#: doc/classes/Object.xml:495
+#: doc/classes/Object.xml:502
msgid "Emitted whenever the object's script is changed."
msgstr ""
-#: doc/classes/Object.xml:501
+#: doc/classes/Object.xml:508
msgid "Called right when the object is initialized. Not available in script."
msgstr ""
-#: doc/classes/Object.xml:504
+#: doc/classes/Object.xml:511
msgid "Called before the object is about to be deleted."
msgstr ""
-#: doc/classes/Object.xml:507
+#: doc/classes/Object.xml:514
msgid ""
"Connects a signal in deferred mode. This way, signal emissions are stored in "
"a queue, then set on idle time."
msgstr ""
-#: doc/classes/Object.xml:510
+#: doc/classes/Object.xml:517
msgid "Persisting connections are saved when the object is serialized to file."
msgstr ""
-#: doc/classes/Object.xml:513
+#: doc/classes/Object.xml:520
msgid "One-shot connections disconnect themselves after emission."
msgstr ""
-#: doc/classes/Object.xml:516
+#: doc/classes/Object.xml:523
msgid ""
-"Connect a signal as reference counted. This means that a given signal can be "
+"Connect a signal as reference-counted. This means that a given signal can be "
"connected several times to the same target, and will only be fully "
"disconnected once no references are left."
msgstr ""
@@ -34093,10 +35218,29 @@ msgid "Returns the keycode of the given string (e.g. \"Escape\")."
msgstr ""
#: doc/classes/OS.xml:115
-msgid "Returns the command line arguments passed to the engine."
+msgid ""
+"Returns the command-line arguments passed to the engine.\n"
+"Command-line arguments can be written in any form, including both [code]--"
+"key value[/code] and [code]--key=value[/code] forms so they can be properly "
+"parsed, as long as custom command-line arguments do not conflict with engine "
+"arguments.\n"
+"You can also incorporate environment variables using the [method "
+"get_environment] method.\n"
+"You can set [code]editor/main_run_args[/code] in the Project Settings to "
+"define command-line arguments to be passed by the editor when running the "
+"project.\n"
+"Here's a minimal example on how to parse command-line arguments into a "
+"dictionary using the [code]--key=value[/code] form for arguments:\n"
+"[codeblock]\n"
+"var arguments = {}\n"
+"for argument in OS.get_cmdline_args():\n"
+" if argument.find(\"=\") > -1:\n"
+" var key_value = argument.split(\"=\")\n"
+" arguments[key_value[0].lstrip(\"--\")] = key_value[1]\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/OS.xml:122
+#: doc/classes/OS.xml:133
msgid ""
"Returns an array of MIDI device names.\n"
"The returned array will be empty if the system MIDI driver has not "
@@ -34104,14 +35248,14 @@ msgid ""
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:133
+#: doc/classes/OS.xml:144
msgid ""
"Returns current date as a dictionary of keys: [code]year[/code], "
"[code]month[/code], [code]day[/code], [code]weekday[/code], [code]dst[/code] "
"(Daylight Savings Time)."
msgstr ""
-#: doc/classes/OS.xml:142
+#: doc/classes/OS.xml:153
msgid ""
"Returns current datetime as a dictionary of keys: [code]year[/code], "
"[code]month[/code], [code]day[/code], [code]weekday[/code], [code]dst[/code] "
@@ -34119,7 +35263,7 @@ msgid ""
"[code]second[/code]."
msgstr ""
-#: doc/classes/OS.xml:151
+#: doc/classes/OS.xml:162
msgid ""
"Gets a dictionary of time values corresponding to the given UNIX epoch time "
"(in seconds).\n"
@@ -34128,22 +35272,22 @@ msgid ""
"the epoch."
msgstr ""
-#: doc/classes/OS.xml:161
+#: doc/classes/OS.xml:172
msgid "Returns an environment variable."
msgstr ""
-#: doc/classes/OS.xml:168
+#: doc/classes/OS.xml:179
msgid "Returns the path to the current engine executable."
msgstr ""
-#: doc/classes/OS.xml:175
+#: doc/classes/OS.xml:186
msgid ""
"With this function you can get the list of dangerous permissions that have "
"been granted to the Android application.\n"
"[b]Note:[/b] This method is implemented on Android."
msgstr ""
-#: doc/classes/OS.xml:185
+#: doc/classes/OS.xml:196
msgid ""
"Returns the given keycode as a string (e.g. Return values: [code]\"Escape\"[/"
"code], [code]\"Shift+Escape\"[/code]).\n"
@@ -34151,18 +35295,18 @@ msgid ""
"get_keycode_with_modifiers]."
msgstr ""
-#: doc/classes/OS.xml:193
+#: doc/classes/OS.xml:204
msgid "Returns the host OS locale."
msgstr ""
-#: doc/classes/OS.xml:200
+#: doc/classes/OS.xml:211
msgid ""
"Returns the model name of the current device.\n"
"[b]Note:[/b] This method is implemented on Android and iOS. Returns "
"[code]\"GenericDevice\"[/code] on unsupported platforms."
msgstr ""
-#: doc/classes/OS.xml:208
+#: doc/classes/OS.xml:219
msgid ""
"Returns the name of the host OS. Possible values are: [code]\"Android\"[/"
"code], [code]\"iOS\"[/code], [code]\"HTML5\"[/code], [code]\"OSX\"[/code], "
@@ -34170,81 +35314,81 @@ msgid ""
"[code]\"X11\"[/code]."
msgstr ""
-#: doc/classes/OS.xml:215
+#: doc/classes/OS.xml:226
msgid ""
"Returns the project's process ID.\n"
"[b]Note:[/b] This method is implemented on Android, iOS, Linux, macOS and "
"Windows."
msgstr ""
-#: doc/classes/OS.xml:223
+#: doc/classes/OS.xml:234
msgid "Returns the number of threads available on the host machine."
msgstr ""
-#: doc/classes/OS.xml:230
+#: doc/classes/OS.xml:241
msgid ""
"Returns the amount of time in milliseconds it took for the boot logo to "
"appear."
msgstr ""
-#: doc/classes/OS.xml:237
+#: doc/classes/OS.xml:248
msgid "Returns the maximum amount of static memory used (only works in debug)."
msgstr ""
-#: doc/classes/OS.xml:244
+#: doc/classes/OS.xml:255
msgid "Returns the amount of static memory being used by the program in bytes."
msgstr ""
-#: doc/classes/OS.xml:253
+#: doc/classes/OS.xml:264
msgid ""
"Returns the actual path to commonly used folders across different platforms. "
"Available locations are specified in [enum SystemDir].\n"
"[b]Note:[/b] This method is implemented on Android, Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:261
+#: doc/classes/OS.xml:272
msgid ""
"Returns the total number of available tablet drivers.\n"
"[b]Note:[/b] This method is implemented on Windows."
msgstr ""
-#: doc/classes/OS.xml:271
+#: doc/classes/OS.xml:282
msgid ""
"Returns the tablet driver name for the given index.\n"
"[b]Note:[/b] This method is implemented on Windows."
msgstr ""
-#: doc/classes/OS.xml:279
+#: doc/classes/OS.xml:290
msgid ""
"Returns the amount of time passed in milliseconds since the engine started."
msgstr ""
-#: doc/classes/OS.xml:286
+#: doc/classes/OS.xml:297
msgid ""
"Returns the amount of time passed in microseconds since the engine started."
msgstr ""
-#: doc/classes/OS.xml:295
+#: doc/classes/OS.xml:306
msgid "Returns current time as a dictionary of keys: hour, minute, second."
msgstr ""
-#: doc/classes/OS.xml:302
+#: doc/classes/OS.xml:313
msgid ""
"Returns the current time zone as a dictionary with the keys: bias and name."
msgstr ""
-#: doc/classes/OS.xml:309
+#: doc/classes/OS.xml:320
msgid ""
"Returns a string that is unique to the device.\n"
"[b]Note:[/b] Returns an empty string on HTML5 and UWP, as this method isn't "
"implemented on those platforms yet."
msgstr ""
-#: doc/classes/OS.xml:317
+#: doc/classes/OS.xml:328
msgid "Returns the current UNIX epoch timestamp."
msgstr ""
-#: doc/classes/OS.xml:326
+#: doc/classes/OS.xml:337
msgid ""
"Gets an epoch time value from a dictionary of time values.\n"
"[code]datetime[/code] must be populated with the following keys: [code]year[/"
@@ -34255,7 +35399,7 @@ msgid ""
"ignored."
msgstr ""
-#: doc/classes/OS.xml:335
+#: doc/classes/OS.xml:346
msgid ""
"Returns the absolute directory path where user data is written ([code]user://"
"[/code]).\n"
@@ -34273,11 +35417,11 @@ msgid ""
"[/code]."
msgstr ""
-#: doc/classes/OS.xml:348
+#: doc/classes/OS.xml:359
msgid "Returns [code]true[/code] if an environment variable exists."
msgstr ""
-#: doc/classes/OS.xml:357
+#: doc/classes/OS.xml:368
msgid ""
"Returns [code]true[/code] if the feature for the given feature tag is "
"supported in the currently running instance, depending on platform, build "
@@ -34288,7 +35432,7 @@ msgid ""
"[b]Note:[/b] Tag names are case-sensitive."
msgstr ""
-#: doc/classes/OS.xml:365
+#: doc/classes/OS.xml:376
msgid ""
"Returns [code]true[/code] if the Godot binary used to run the project is a "
"[i]debug[/i] export template, or when running in the editor.\n"
@@ -34299,26 +35443,26 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/OS.xml:376
+#: doc/classes/OS.xml:387
msgid ""
"Returns [code]true[/code] if the input keycode corresponds to a Unicode "
"character."
msgstr ""
-#: doc/classes/OS.xml:383
+#: doc/classes/OS.xml:394
msgid ""
"Returns [code]true[/code] if the engine was executed with [code]-v[/code] "
"(verbose stdout)."
msgstr ""
-#: doc/classes/OS.xml:390
+#: doc/classes/OS.xml:401
msgid ""
"If [code]true[/code], the [code]user://[/code] file system is persistent, so "
"that its state is the same after a player quits and starts the game again. "
"Relevant to the HTML5 platform, where this persistence may be unavailable."
msgstr ""
-#: doc/classes/OS.xml:399
+#: doc/classes/OS.xml:410
msgid ""
"Kill (terminate) the process identified by the given process ID ([code]pid[/"
"code]), e.g. the one returned by [method execute] in non-blocking mode.\n"
@@ -34328,37 +35472,37 @@ msgid ""
"Windows."
msgstr ""
-#: doc/classes/OS.xml:408
+#: doc/classes/OS.xml:419
msgid ""
"Initialises the singleton for the system MIDI driver.\n"
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:418
+#: doc/classes/OS.xml:429
msgid ""
"Shows all resources in the game. Optionally, the list can be written to a "
"file by specifying a file path in [code]tofile[/code]."
msgstr ""
-#: doc/classes/OS.xml:425
+#: doc/classes/OS.xml:436
msgid "Shows the list of loaded textures sorted by size in memory."
msgstr ""
-#: doc/classes/OS.xml:434
+#: doc/classes/OS.xml:445
msgid "Shows the number of resources loaded by the game of the given types."
msgstr ""
-#: doc/classes/OS.xml:443
+#: doc/classes/OS.xml:454
msgid "Shows all resources currently used by the game."
msgstr ""
-#: doc/classes/OS.xml:452
+#: doc/classes/OS.xml:463
msgid ""
"At the moment this function is only used by [code]AudioDriverOpenSL[/code] "
"to request permission for [code]RECORD_AUDIO[/code] on Android."
msgstr ""
-#: doc/classes/OS.xml:459
+#: doc/classes/OS.xml:470
msgid ""
"With this function you can request dangerous permissions since normal "
"permissions are automatically granted at install time in Android "
@@ -34366,15 +35510,15 @@ msgid ""
"[b]Note:[/b] This method is implemented on Android."
msgstr ""
-#: doc/classes/OS.xml:469
+#: doc/classes/OS.xml:480
msgid "Sets the name of the current thread."
msgstr ""
-#: doc/classes/OS.xml:478
+#: doc/classes/OS.xml:489
msgid "Enables backup saves if [code]enabled[/code] is [code]true[/code]."
msgstr ""
-#: doc/classes/OS.xml:487
+#: doc/classes/OS.xml:498
msgid ""
"Requests the OS to open a resource with the most appropriate program. For "
"example:\n"
@@ -34393,7 +35537,7 @@ msgid ""
"and Windows."
msgstr ""
-#: doc/classes/OS.xml:498
+#: doc/classes/OS.xml:509
msgid ""
"The exit code passed to the OS when the main loop exits. By convention, an "
"exit code of [code]0[/code] indicates success whereas a non-zero exit code "
@@ -34403,137 +35547,137 @@ msgid ""
"with an [code]exit_code[/code] argument passed."
msgstr ""
-#: doc/classes/OS.xml:502
+#: doc/classes/OS.xml:513
msgid ""
"If [code]true[/code], the engine optimizes for low processor usage by only "
"refreshing the screen if needed. Can improve battery consumption on mobile."
msgstr ""
-#: doc/classes/OS.xml:505
+#: doc/classes/OS.xml:516
msgid ""
"The amount of sleeping between frames when the low-processor usage mode is "
"enabled (in microseconds). Higher values will result in lower CPU usage."
msgstr ""
-#: doc/classes/OS.xml:508
-msgid "The current tablet drvier in use."
+#: doc/classes/OS.xml:519
+msgid "The current tablet driver in use."
msgstr ""
-#: doc/classes/OS.xml:513
+#: doc/classes/OS.xml:524
msgid ""
"The GLES2 rendering backend. It uses OpenGL ES 2.0 on mobile devices, OpenGL "
"2.1 on desktop platforms and WebGL 1.0 on the web."
msgstr ""
-#: doc/classes/OS.xml:516
+#: doc/classes/OS.xml:527
msgid "The Vulkan rendering backend."
msgstr ""
-#: doc/classes/OS.xml:519
+#: doc/classes/OS.xml:530
msgid "Sunday."
msgstr ""
-#: doc/classes/OS.xml:522
+#: doc/classes/OS.xml:533
msgid "Monday."
msgstr ""
-#: doc/classes/OS.xml:525
+#: doc/classes/OS.xml:536
msgid "Tuesday."
msgstr ""
-#: doc/classes/OS.xml:528
+#: doc/classes/OS.xml:539
msgid "Wednesday."
msgstr ""
-#: doc/classes/OS.xml:531
+#: doc/classes/OS.xml:542
msgid "Thursday."
msgstr ""
-#: doc/classes/OS.xml:534
+#: doc/classes/OS.xml:545
msgid "Friday."
msgstr ""
-#: doc/classes/OS.xml:537
+#: doc/classes/OS.xml:548
msgid "Saturday."
msgstr ""
-#: doc/classes/OS.xml:540
+#: doc/classes/OS.xml:551
msgid "January."
msgstr ""
-#: doc/classes/OS.xml:543
+#: doc/classes/OS.xml:554
msgid "February."
msgstr ""
-#: doc/classes/OS.xml:546
+#: doc/classes/OS.xml:557
msgid "March."
msgstr ""
-#: doc/classes/OS.xml:549
+#: doc/classes/OS.xml:560
msgid "April."
msgstr ""
-#: doc/classes/OS.xml:552
+#: doc/classes/OS.xml:563
msgid "May."
msgstr ""
-#: doc/classes/OS.xml:555
+#: doc/classes/OS.xml:566
msgid "June."
msgstr ""
-#: doc/classes/OS.xml:558
+#: doc/classes/OS.xml:569
msgid "July."
msgstr ""
-#: doc/classes/OS.xml:561
+#: doc/classes/OS.xml:572
msgid "August."
msgstr ""
-#: doc/classes/OS.xml:564
+#: doc/classes/OS.xml:575
msgid "September."
msgstr ""
-#: doc/classes/OS.xml:567
+#: doc/classes/OS.xml:578
msgid "October."
msgstr ""
-#: doc/classes/OS.xml:570
+#: doc/classes/OS.xml:581
msgid "November."
msgstr ""
-#: doc/classes/OS.xml:573
+#: doc/classes/OS.xml:584
msgid "December."
msgstr ""
-#: doc/classes/OS.xml:576
+#: doc/classes/OS.xml:587
msgid "Desktop directory path."
msgstr ""
-#: doc/classes/OS.xml:579
+#: doc/classes/OS.xml:590
msgid "DCIM (Digital Camera Images) directory path."
msgstr ""
-#: doc/classes/OS.xml:582
+#: doc/classes/OS.xml:593
msgid "Documents directory path."
msgstr ""
-#: doc/classes/OS.xml:585
+#: doc/classes/OS.xml:596
msgid "Downloads directory path."
msgstr ""
-#: doc/classes/OS.xml:588
+#: doc/classes/OS.xml:599
msgid "Movies directory path."
msgstr ""
-#: doc/classes/OS.xml:591
+#: doc/classes/OS.xml:602
msgid "Music directory path."
msgstr ""
-#: doc/classes/OS.xml:594
+#: doc/classes/OS.xml:605
msgid "Pictures directory path."
msgstr ""
-#: doc/classes/OS.xml:597
+#: doc/classes/OS.xml:608
msgid "Ringtones directory path."
msgstr ""
@@ -34588,7 +35732,17 @@ msgid ""
"should always be preferred."
msgstr ""
-#: doc/classes/PackedByteArray.xml:85
+#: doc/classes/PackedByteArray.xml:87 doc/classes/PackedColorArray.xml:53
+#: doc/classes/PackedFloat32Array.xml:54 doc/classes/PackedFloat64Array.xml:54
+#: doc/classes/PackedInt32Array.xml:54 doc/classes/PackedInt64Array.xml:54
+#: doc/classes/PackedStringArray.xml:53 doc/classes/PackedVector2Array.xml:53
+#: doc/classes/PackedVector3Array.xml:53
+#, fuzzy
+msgid "Returns [code]true[/code] if the array contains [code]value[/code]."
+msgstr ""
+"文字列ã®é•·ã•ãŒ [code]0[/code] ã«ç­‰ã—ã‘れ㰠[code]true[/code] ã‚’è¿”ã—ã¾ã™ã€‚"
+
+#: doc/classes/PackedByteArray.xml:94
msgid ""
"Returns a hexadecimal representation of this array as a [String].\n"
"[codeblock]\n"
@@ -34597,39 +35751,48 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/PackedByteArray.xml:100 doc/classes/PackedColorArray.xml:55
-#: doc/classes/PackedFloat32Array.xml:56 doc/classes/PackedFloat64Array.xml:56
-#: doc/classes/PackedStringArray.xml:55 doc/classes/PackedVector2Array.xml:55
-#: doc/classes/PackedVector3Array.xml:55
+#: doc/classes/PackedByteArray.xml:109 doc/classes/PackedColorArray.xml:64
+#: doc/classes/PackedFloat32Array.xml:65 doc/classes/PackedFloat64Array.xml:65
+#: doc/classes/PackedStringArray.xml:64 doc/classes/PackedVector2Array.xml:64
+#: doc/classes/PackedVector3Array.xml:64
msgid ""
"Inserts a new element at a given position in the array. The position must be "
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PackedByteArray.xml:134 doc/classes/PackedColorArray.xml:89
-#: doc/classes/PackedFloat32Array.xml:90 doc/classes/PackedFloat64Array.xml:90
-#: doc/classes/PackedInt32Array.xml:90 doc/classes/PackedInt64Array.xml:90
-#: doc/classes/PackedStringArray.xml:89 doc/classes/PackedVector2Array.xml:89
-#: doc/classes/PackedVector3Array.xml:89
+#: doc/classes/PackedByteArray.xml:143 doc/classes/PackedColorArray.xml:98
+#: doc/classes/PackedFloat32Array.xml:99 doc/classes/PackedFloat64Array.xml:99
+#: doc/classes/PackedInt32Array.xml:99 doc/classes/PackedInt64Array.xml:99
+#: doc/classes/PackedStringArray.xml:98 doc/classes/PackedVector2Array.xml:98
+#: doc/classes/PackedVector3Array.xml:98
msgid ""
"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."
msgstr ""
-#: doc/classes/PackedByteArray.xml:145
+#: doc/classes/PackedByteArray.xml:154
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PackedByteArray.xml:152 doc/classes/PackedColorArray.xml:107
-#: doc/classes/PackedFloat32Array.xml:108
-#: doc/classes/PackedFloat64Array.xml:108 doc/classes/PackedStringArray.xml:107
-#: doc/classes/PackedVector2Array.xml:107
-#: doc/classes/PackedVector3Array.xml:107
+#: doc/classes/PackedByteArray.xml:161 doc/classes/PackedColorArray.xml:116
+#: doc/classes/PackedFloat32Array.xml:117
+#: doc/classes/PackedFloat64Array.xml:117 doc/classes/PackedStringArray.xml:116
+#: doc/classes/PackedVector2Array.xml:116
+#: doc/classes/PackedVector3Array.xml:116
msgid "Returns the size of the array."
msgstr ""
-#: doc/classes/PackedByteArray.xml:163
+#: doc/classes/PackedByteArray.xml:168 doc/classes/PackedColorArray.xml:123
+#: doc/classes/PackedFloat32Array.xml:124
+#: doc/classes/PackedFloat64Array.xml:124 doc/classes/PackedInt32Array.xml:124
+#: doc/classes/PackedInt64Array.xml:124 doc/classes/PackedStringArray.xml:123
+#: doc/classes/PackedVector2Array.xml:123
+#: doc/classes/PackedVector3Array.xml:123
+msgid "Sorts the elements of the array in ascending order."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:179
msgid ""
"Returns the slice of the [PackedByteArray] between indices (inclusive) as a "
"new [PackedByteArray]. Any negative index is considered to be from the end "
@@ -34657,12 +35820,12 @@ msgstr ""
msgid "Appends a [PackedColorArray] at the end of this array."
msgstr ""
-#: doc/classes/PackedColorArray.xml:71 doc/classes/PackedInt32Array.xml:72
-#: doc/classes/PackedInt64Array.xml:72
+#: doc/classes/PackedColorArray.xml:80 doc/classes/PackedInt32Array.xml:81
+#: doc/classes/PackedInt64Array.xml:81
msgid "Appends a value to the array."
msgstr ""
-#: doc/classes/PackedColorArray.xml:100
+#: doc/classes/PackedColorArray.xml:109
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -34692,8 +35855,8 @@ msgstr ""
msgid "Appends a [PackedFloat32Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedFloat32Array.xml:101
-#: doc/classes/PackedFloat64Array.xml:101
+#: doc/classes/PackedFloat32Array.xml:110
+#: doc/classes/PackedFloat64Array.xml:110
msgid "Changes the float at the given index."
msgstr ""
@@ -34746,17 +35909,17 @@ msgstr ""
msgid "Appends a [PackedInt32Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:56 doc/classes/PackedInt64Array.xml:56
+#: doc/classes/PackedInt32Array.xml:65 doc/classes/PackedInt64Array.xml:65
msgid ""
"Inserts a new integer at a given position in the array. The position must be "
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:101 doc/classes/PackedInt64Array.xml:101
+#: doc/classes/PackedInt32Array.xml:110 doc/classes/PackedInt64Array.xml:110
msgid "Changes the integer at the given index."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:108 doc/classes/PackedInt64Array.xml:108
+#: doc/classes/PackedInt32Array.xml:117 doc/classes/PackedInt64Array.xml:117
msgid "Returns the array size."
msgstr ""
@@ -34797,6 +35960,14 @@ msgid ""
"Can be used to save a node to a file. When saving, the node as well as all "
"the node it owns get saved (see [code]owner[/code] property on [Node]).\n"
"[b]Note:[/b] The node doesn't need to own itself.\n"
+"[b]Example of loading a saved scene:[/b]\n"
+"[codeblock]\n"
+"# Use `load()` instead of `preload()` if the path isn't known at compile-"
+"time.\n"
+"var scene = preload(\"res://scene.tscn\").instance()\n"
+"# Add the node as a child of the node the script is attached to.\n"
+"add_child(scene)\n"
+"[/codeblock]\n"
"[b]Example of saving a node with different owners:[/b] The following example "
"creates 3 objects: [code]Node2D[/code] ([code]node[/code]), "
"[code]RigidBody2D[/code] ([code]rigid[/code]) and [code]CollisionObject2D[/"
@@ -34828,29 +35999,29 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/PackedScene.xml:40
+#: doc/classes/PackedScene.xml:47
msgid "Returns [code]true[/code] if the scene file has nodes."
msgstr ""
-#: doc/classes/PackedScene.xml:47
+#: doc/classes/PackedScene.xml:54
msgid ""
"Returns the [code]SceneState[/code] representing the scene file contents."
msgstr ""
-#: doc/classes/PackedScene.xml:56
+#: doc/classes/PackedScene.xml:63
msgid ""
"Instantiates the scene's node hierarchy. Triggers child scene "
"instantiation(s). Triggers a [constant Node.NOTIFICATION_INSTANCED] "
"notification on the root node."
msgstr ""
-#: doc/classes/PackedScene.xml:65
+#: doc/classes/PackedScene.xml:72
msgid ""
"Pack will ignore any sub-nodes not owned by given node. See [member Node."
"owner]."
msgstr ""
-#: doc/classes/PackedScene.xml:71
+#: doc/classes/PackedScene.xml:78
msgid ""
"A dictionary representation of the scene contents.\n"
"Available keys include \"rnames\" and \"variants\" for resources, "
@@ -34859,18 +36030,18 @@ msgid ""
"connections, and \"version\" for the format style of the PackedScene."
msgstr ""
-#: doc/classes/PackedScene.xml:77
+#: doc/classes/PackedScene.xml:84
msgid "If passed to [method instance], blocks edits to the scene state."
msgstr ""
-#: doc/classes/PackedScene.xml:80
+#: doc/classes/PackedScene.xml:87
msgid ""
"If passed to [method instance], provides local scene resources to the local "
"scene.\n"
"[b]Note:[/b] Only available in editor builds."
msgstr ""
-#: doc/classes/PackedScene.xml:84
+#: doc/classes/PackedScene.xml:91
msgid ""
"If passed to [method instance], provides local scene resources to the local "
"scene. Only the main scene should receive the main edit state.\n"
@@ -34898,11 +36069,11 @@ msgstr ""
msgid "Appends a [PackedStringArray] at the end of this array."
msgstr ""
-#: doc/classes/PackedStringArray.xml:71
+#: doc/classes/PackedStringArray.xml:80
msgid "Appends a string element at end of the array."
msgstr ""
-#: doc/classes/PackedStringArray.xml:100
+#: doc/classes/PackedStringArray.xml:109
msgid "Changes the [String] at the given index."
msgstr ""
@@ -34927,11 +36098,11 @@ msgstr ""
msgid "Appends a [PackedVector2Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedVector2Array.xml:71
+#: doc/classes/PackedVector2Array.xml:80
msgid "Inserts a [Vector2] at the end."
msgstr ""
-#: doc/classes/PackedVector2Array.xml:100
+#: doc/classes/PackedVector2Array.xml:109
msgid "Changes the [Vector2] at the given index."
msgstr ""
@@ -34956,11 +36127,11 @@ msgstr ""
msgid "Appends a [PackedVector3Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedVector3Array.xml:71
+#: doc/classes/PackedVector3Array.xml:80
msgid "Inserts a [Vector3] at the end."
msgstr ""
-#: doc/classes/PackedVector3Array.xml:100
+#: doc/classes/PackedVector3Array.xml:109
msgid "Changes the [Vector3] at the given index."
msgstr ""
@@ -35851,13 +37022,56 @@ msgid ""
"as the values displayed in the [b]Monitor[/b] tab in the editor's "
"[b]Debugger[/b] panel. By using the [method get_monitor] method of this "
"class, you can access this data from your code.\n"
+"You can add custom monitors using the [method add_custom_monitor] method. "
+"Custom monitors are available in [b]Monitor[/b] tab in the editor's "
+"[b]Debugger[/b] panel together with built-in monitors.\n"
"[b]Note:[/b] A few of these monitors are only available in debug mode and "
"will always return 0 when used in a release build.\n"
"[b]Note:[/b] Many of these monitors are not updated in real-time, so there "
-"may be a short delay between changes."
+"may be a short delay between changes.\n"
+"[b]Note:[/b] Custom monitors do not support negative values. Negative values "
+"are clamped to 0."
+msgstr ""
+
+#: doc/classes/Performance.xml:26
+msgid ""
+"Adds a custom monitor with name same as id. You can specify the category of "
+"monitor using '/' in id. If there are more than one '/' then default "
+"category is used. Default category is \"Custom\".\n"
+"[codeblock]\n"
+"Performance.add_custom_monitor(\"MyCategory/MyMonitor\", some_callable) # "
+"Adds monitor with name \"MyName\" to category \"MyCategory\"\n"
+"Performance.add_custom_monitor(\"MyMonitor\", some_callable) # Adds monitor "
+"with name \"MyName\" to category \"Custom\"\n"
+"# Note: \"MyCategory/MyMonitor\" and \"MyMonitor\" have same name but "
+"different ids so above code is valid\n"
+"Performance.add_custom_monitor(\"Custom/MyMonitor\", some_callable) # Adds "
+"monitor with name \"MyName\" to category \"Custom\"\n"
+"# Note: \"MyMonitor\" and \"Custom/MyMonitor\" have same name and same "
+"category but different ids so above code is valid\n"
+"Performance.add_custom_monitor(\"MyCategoryOne/MyCategoryTwo/MyMonitor\", "
+"some_callable) # Adds monitor with name \"MyCategoryOne/MyCategoryTwo/"
+"MyMonitor\" to category \"Custom\"\n"
+"[/codeblock]\n"
+"The debugger calls the callable to get the value of custom monitor. The "
+"callable must return a number.\n"
+"Callables are called with arguments supplied in argument array.\n"
+"[b]Note:[/b] It throws an error if given id is already present."
msgstr ""
-#: doc/classes/Performance.xml:20
+#: doc/classes/Performance.xml:46
+msgid ""
+"Returns the value of custom monitor with given id. The callable is called to "
+"get the value of custom monitor.\n"
+"[b]Note:[/b] It throws an error if the given id is absent."
+msgstr ""
+
+#: doc/classes/Performance.xml:54
+#, fuzzy
+msgid "Returns the names of active custom monitors in an array."
+msgstr "指定ã•ã‚ŒãŸãƒˆãƒ©ãƒƒã‚¯å†…ã®ã€æŒ‡å®šã•ã‚ŒãŸã‚­ãƒ¼ã®å€¤ã‚’è¿”ã—ã¾ã™ã€‚"
+
+#: doc/classes/Performance.xml:63
msgid ""
"Returns the value of one of the available monitors. You should provide one "
"of the [enum Monitor] constants as the argument, like this:\n"
@@ -35867,123 +37081,139 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Performance.xml:29
+#: doc/classes/Performance.xml:73
+msgid "Returns the last tick in which custom monitor was added/removed."
+msgstr ""
+
+#: doc/classes/Performance.xml:82
+msgid ""
+"Returns true if custom monitor with the given id is present otherwise "
+"returns false."
+msgstr ""
+
+#: doc/classes/Performance.xml:91
+msgid ""
+"Removes the custom monitor with given id.\n"
+"[b]Note:[/b] It throws an error if the given id is already absent."
+msgstr ""
+
+#: doc/classes/Performance.xml:98
msgid "Number of frames per second."
msgstr ""
-#: doc/classes/Performance.xml:32
+#: doc/classes/Performance.xml:101
msgid "Time it took to complete one frame, in seconds."
msgstr ""
-#: doc/classes/Performance.xml:35
+#: doc/classes/Performance.xml:104
msgid "Time it took to complete one physics frame, in seconds."
msgstr ""
-#: doc/classes/Performance.xml:38
+#: doc/classes/Performance.xml:107
msgid ""
"Static memory currently used, in bytes. Not available in release builds."
msgstr ""
-#: doc/classes/Performance.xml:41
+#: doc/classes/Performance.xml:110
msgid "Available static memory. Not available in release builds."
msgstr ""
-#: doc/classes/Performance.xml:44
+#: doc/classes/Performance.xml:113
msgid ""
"Largest amount of memory the message queue buffer has used, in bytes. The "
"message queue is used for deferred functions calls and notifications."
msgstr ""
-#: doc/classes/Performance.xml:47
+#: doc/classes/Performance.xml:116
msgid "Number of objects currently instanced (including nodes)."
msgstr ""
-#: doc/classes/Performance.xml:50
+#: doc/classes/Performance.xml:119
msgid "Number of resources currently used."
msgstr ""
-#: doc/classes/Performance.xml:53
+#: doc/classes/Performance.xml:122
msgid ""
"Number of nodes currently instanced in the scene tree. This also includes "
"the root node."
msgstr ""
-#: doc/classes/Performance.xml:56
+#: doc/classes/Performance.xml:125
msgid ""
"Number of orphan nodes, i.e. nodes which are not parented to a node of the "
"scene tree."
msgstr ""
-#: doc/classes/Performance.xml:59
+#: doc/classes/Performance.xml:128
msgid "3D objects drawn per frame."
msgstr ""
-#: doc/classes/Performance.xml:62
+#: doc/classes/Performance.xml:131
msgid "Vertices drawn per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:65
+#: doc/classes/Performance.xml:134
msgid "Material changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:68
+#: doc/classes/Performance.xml:137
msgid "Shader changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:71
+#: doc/classes/Performance.xml:140
msgid "Render surface changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:74
+#: doc/classes/Performance.xml:143
msgid "Draw calls per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:77 doc/classes/RenderingServer.xml:3805
+#: doc/classes/Performance.xml:146 doc/classes/RenderingServer.xml:3816
msgid ""
"The amount of video memory used, i.e. texture and vertex memory combined."
msgstr ""
-#: doc/classes/Performance.xml:80 doc/classes/RenderingServer.xml:3808
+#: doc/classes/Performance.xml:149 doc/classes/RenderingServer.xml:3819
msgid "The amount of texture memory used."
msgstr ""
-#: doc/classes/Performance.xml:83 doc/classes/RenderingServer.xml:3811
+#: doc/classes/Performance.xml:152 doc/classes/RenderingServer.xml:3822
msgid "The amount of vertex memory used."
msgstr ""
-#: doc/classes/Performance.xml:86 doc/classes/RenderingServer.xml:3802
+#: doc/classes/Performance.xml:155 doc/classes/RenderingServer.xml:3813
msgid "Unimplemented in the GLES2 rendering backend, always returns 0."
msgstr ""
-#: doc/classes/Performance.xml:89
+#: doc/classes/Performance.xml:158
msgid "Number of active [RigidBody2D] nodes in the game."
msgstr ""
-#: doc/classes/Performance.xml:92
+#: doc/classes/Performance.xml:161
msgid "Number of collision pairs in the 2D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:95
+#: doc/classes/Performance.xml:164
msgid "Number of islands in the 2D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:98
+#: doc/classes/Performance.xml:167
msgid "Number of active [RigidBody3D] and [VehicleBody3D] nodes in the game."
msgstr ""
-#: doc/classes/Performance.xml:101
+#: doc/classes/Performance.xml:170
msgid "Number of collision pairs in the 3D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:104
+#: doc/classes/Performance.xml:173
msgid "Number of islands in the 3D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:107
+#: doc/classes/Performance.xml:176
msgid "Output latency of the [AudioServer]."
msgstr ""
-#: doc/classes/Performance.xml:110
+#: doc/classes/Performance.xml:179
msgid "Represents the size of the [enum Monitor] enum."
msgstr ""
@@ -36007,27 +37237,27 @@ msgstr ""
msgid "Damps the body's rotation if greater than [code]0[/code]."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:70 doc/classes/RigidBody3D.xml:132
+#: doc/classes/PhysicalBone3D.xml:70 doc/classes/RigidBody3D.xml:139
msgid "Lock the body's rotation in the X axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:73 doc/classes/RigidBody3D.xml:135
+#: doc/classes/PhysicalBone3D.xml:73 doc/classes/RigidBody3D.xml:142
msgid "Lock the body's rotation in the Y axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:76 doc/classes/RigidBody3D.xml:138
+#: doc/classes/PhysicalBone3D.xml:76 doc/classes/RigidBody3D.xml:145
msgid "Lock the body's rotation in the Z axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:79 doc/classes/RigidBody3D.xml:141
+#: doc/classes/PhysicalBone3D.xml:79 doc/classes/RigidBody3D.xml:148
msgid "Lock the body's movement in the X axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:82 doc/classes/RigidBody3D.xml:144
+#: doc/classes/PhysicalBone3D.xml:82 doc/classes/RigidBody3D.xml:151
msgid "Lock the body's movement in the Y axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:85 doc/classes/RigidBody3D.xml:147
+#: doc/classes/PhysicalBone3D.xml:85 doc/classes/RigidBody3D.xml:154
msgid "Lock the body's movement in the Z axis."
msgstr ""
@@ -36082,12 +37312,12 @@ msgstr ""
msgid "Damps the body's movement if greater than [code]0[/code]."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:118 doc/classes/RigidBody2D.xml:158
-#: doc/classes/RigidBody3D.xml:175
+#: doc/classes/PhysicalBone3D.xml:118 doc/classes/RigidBody2D.xml:159
+#: doc/classes/RigidBody3D.xml:183
msgid "The body's mass."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:121 doc/classes/RigidBody3D.xml:188
+#: doc/classes/PhysicalBone3D.xml:121 doc/classes/RigidBody3D.xml:196
msgid ""
"The body's weight based on its mass and the global 3D gravity. Global values "
"are set in [b]Project > Project Settings > Physics > 3d[/b]."
@@ -36394,7 +37624,7 @@ msgid "The inverse of the mass of the body."
msgstr ""
#: doc/classes/PhysicsDirectBodyState2D.xml:195
-#: doc/classes/PhysicsDirectBodyState3D.xml:198 doc/classes/RigidBody2D.xml:155
+#: doc/classes/PhysicsDirectBodyState3D.xml:198 doc/classes/RigidBody2D.xml:156
msgid "The body's linear velocity."
msgstr ""
@@ -36947,7 +38177,7 @@ msgid ""
msgstr ""
#: doc/classes/PhysicsServer2D.xml:620 doc/classes/PhysicsServer3D.xml:637
-#: doc/classes/RigidBody3D.xml:120
+#: doc/classes/RigidBody3D.xml:127
msgid ""
"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."
@@ -38012,47 +39242,64 @@ msgid ""
"collision queries. See also [PhysicsShapeQueryResult2D]."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:18
-msgid ""
-"Sets the [Shape2D] that will be used for collision/intersection queries."
-msgstr ""
-
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:24
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:15
msgid "If [code]true[/code], the query will take [Area2D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:18
msgid ""
"If [code]true[/code], the query will take [PhysicsBody2D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:30
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:30
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:21
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:21
msgid "The physics layer(s) the query will take into account (as a bitmask)."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:33
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:33
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:24
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:24
msgid ""
"The list of objects or object [RID]s that will be excluded from collisions."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:36
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:36 doc/classes/Shape3D.xml:16
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:27 doc/classes/Shape3D.xml:16
msgid "The collision margin for the shape."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:39
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:30
msgid "The motion of the shape being queried for."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:42
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:39
-msgid "The queried shape's [RID]. See also [method set_shape]."
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:33
+msgid ""
+"The [Shape2D] that will be used for collision/intersection queries. This "
+"stores the actual reference which avoids the shape to be released while "
+"being used for queries, so always prefer using this over [member shape_rid]."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:36
+msgid ""
+"The queried shape's [RID] that will be used for collision/intersection "
+"queries. Use this over [member shape] if you want to optimize for "
+"performance using the Servers API:\n"
+"[codeblock]\n"
+"var shape_rid = PhysicsServer2D.circle_shape_create()\n"
+"var radius = 64\n"
+"PhysicsServer2D.shape_set_data(shape_rid, radius)\n"
+"\n"
+"var params = PhysicsShapeQueryParameters2D.new()\n"
+"params.shape_rid = shape_rid\n"
+"\n"
+"# Execute physics queries here...\n"
+"\n"
+"# Release the shape when done with physics queries.\n"
+"PhysicsServer2D.free_rid(shape_rid)\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:45
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:42
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:52
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:49
msgid "The queried shape's transform matrix."
msgstr ""
@@ -38066,18 +39313,40 @@ msgid ""
"collision queries. See also [PhysicsShapeQueryResult3D]."
msgstr ""
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:15
+msgid "If [code]true[/code], the query will take [Area3D]s into account."
+msgstr ""
+
#: doc/classes/PhysicsShapeQueryParameters3D.xml:18
msgid ""
-"Sets the [Shape3D] that will be used for collision/intersection queries."
+"If [code]true[/code], the query will take [PhysicsBody3D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:24
-msgid "If [code]true[/code], the query will take [Area3D]s into account."
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:30
+msgid ""
+"The [Shape3D] that will be used for collision/intersection queries. This "
+"stores the actual reference which avoids the shape to be released while "
+"being used for queries, so always prefer using this over [member shape_rid]."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:33
msgid ""
-"If [code]true[/code], the query will take [PhysicsBody3D]s into account."
+"The queried shape's [RID] that will be used for collision/intersection "
+"queries. Use this over [member shape] if you want to optimize for "
+"performance using the Servers API:\n"
+"[codeblock]\n"
+"var shape_rid = PhysicsServer3D.shape_create(PhysicsServer3D.SHAPE_SPHERE)\n"
+"var radius = 2.0\n"
+"PhysicsServer3D.shape_set_data(shape_rid, radius)\n"
+"\n"
+"var params = PhysicsShapeQueryParameters3D.new()\n"
+"params.shape_rid = shape_rid\n"
+"\n"
+"# Execute physics queries here...\n"
+"\n"
+"# Release the shape when done with physics queries.\n"
+"PhysicsServer3D.free_rid(shape_rid)\n"
+"[/codeblock]"
msgstr ""
#: doc/classes/PhysicsShapeQueryResult2D.xml:4
@@ -38218,92 +39487,96 @@ msgid ""
"code]."
msgstr ""
-#: doc/classes/Plane.xml:72
-msgid "Returns a point on the plane."
-msgstr ""
-
-#: doc/classes/Plane.xml:83
+#: doc/classes/Plane.xml:76
msgid ""
-"Returns [code]true[/code] if [code]point[/code] is inside the plane (by a "
-"very minimum [code]epsilon[/code] threshold)."
+"Returns [code]true[/code] if [code]point[/code] is inside the plane. "
+"Comparison uses a custom minimum [code]epsilon[/code] threshold."
msgstr ""
-#: doc/classes/Plane.xml:94
+#: doc/classes/Plane.xml:87
msgid ""
"Returns the intersection point of the three planes [code]b[/code], [code]c[/"
"code] and this plane. If no intersection is found, [code]null[/code] is "
"returned."
msgstr ""
-#: doc/classes/Plane.xml:105
+#: doc/classes/Plane.xml:98
msgid ""
"Returns the intersection point of a ray consisting of the position "
"[code]from[/code] and the direction normal [code]dir[/code] with this plane. "
"If no intersection is found, [code]null[/code] is returned."
msgstr ""
-#: doc/classes/Plane.xml:116
+#: doc/classes/Plane.xml:109
msgid ""
"Returns the intersection point of a segment from position [code]begin[/code] "
"to position [code]end[/code] with this plane. If no intersection is found, "
"[code]null[/code] is returned."
msgstr ""
-#: doc/classes/Plane.xml:125
+#: doc/classes/Plane.xml:118
msgid ""
"Returns [code]true[/code] if this plane and [code]plane[/code] are "
"approximately equal, by running [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/Plane.xml:134
+#: doc/classes/Plane.xml:127
msgid ""
"Returns [code]true[/code] if [code]point[/code] is located above the plane."
msgstr ""
-#: doc/classes/Plane.xml:141
+#: doc/classes/Plane.xml:134
msgid "Returns a copy of the plane, normalized."
msgstr ""
-#: doc/classes/Plane.xml:150
+#: doc/classes/Plane.xml:143
+#, fuzzy
msgid ""
-"Returns the orthogonal projection of point [code]p[/code] into a point in "
-"the plane."
+"Returns the orthogonal projection of [code]point[/code] into a point in the "
+"plane."
msgstr ""
+"[code]animation[/code] ã®åå‰ã‚’è¿”ã—ã¾ã™ã€‚ã‚‚ã—ç„¡ã‘ã‚Œã°ã€ç©ºã®æ–‡å­—列を返ã—ã¾ã™ã€‚"
-#: doc/classes/Plane.xml:156
+#: doc/classes/Plane.xml:149
msgid ""
-"Distance from the origin to the plane, in the direction of [member normal]."
+"The distance from the origin to the plane, in the direction of [member "
+"normal]. This value is typically non-negative.\n"
+"In the scalar equation of the plane [code]ax + by + cz = d[/code], this is "
+"[code]d[/code], while the [code](a, b, c)[/code] coordinates are represented "
+"by the [member normal] property."
msgstr ""
-#: doc/classes/Plane.xml:159
+#: doc/classes/Plane.xml:153
msgid ""
-"The normal of the plane. \"Over\" or \"Above\" the plane is considered the "
-"side of the plane towards where the normal is pointing."
+"The normal of the plane, which must be normalized.\n"
+"In the scalar equation of the plane [code]ax + by + cz = d[/code], this is "
+"the vector [code](a, b, c)[/code], where [code]d[/code] is the [member d] "
+"property."
msgstr ""
-#: doc/classes/Plane.xml:162
-msgid "The [member normal]'s X component."
+#: doc/classes/Plane.xml:157
+msgid "The X component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:165
-msgid "The [member normal]'s Y component."
+#: doc/classes/Plane.xml:160
+msgid "The Y component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:168
-msgid "The [member normal]'s Z component."
+#: doc/classes/Plane.xml:163
+msgid "The Z component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:173
-msgid "A plane that extends in the Y and Z axes."
+#: doc/classes/Plane.xml:168
+msgid "A plane that extends in the Y and Z axes (normal vector points +X)."
msgstr ""
-#: doc/classes/Plane.xml:176
-msgid "A plane that extends in the X and Z axes."
+#: doc/classes/Plane.xml:171
+msgid "A plane that extends in the X and Z axes (normal vector points +Y)."
msgstr ""
-#: doc/classes/Plane.xml:179
-msgid "A plane that extends in the X and Y axes."
+#: doc/classes/Plane.xml:174
+msgid "A plane that extends in the X and Y axes (normal vector points +Z)."
msgstr ""
#: doc/classes/PlaneMesh.xml:4
@@ -39014,18 +40287,25 @@ msgstr ""
#: doc/classes/PrimitiveMesh.xml:16
msgid ""
-"Returns mesh arrays used to constitute surface of [Mesh]. Mesh arrays can be "
-"used with [ArrayMesh] to create new surfaces."
+"Returns mesh arrays used to constitute surface of [Mesh]. The result can be "
+"passed to [method ArrayMesh.add_surface_from_arrays] to create a new "
+"surface. For example:\n"
+"[codeblock]\n"
+"var c := CylinderMesh.new()\n"
+"var arr_mesh := ArrayMesh.new()\n"
+"arr_mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLES, c."
+"get_mesh_arrays())\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:22
+#: doc/classes/PrimitiveMesh.xml:27
msgid ""
"Overrides the [AABB] with one defined by user for use with frustum culling. "
"Especially useful to avoid unnexpected culling when using a shader to "
"offset vertices."
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:25
+#: doc/classes/PrimitiveMesh.xml:30
msgid ""
"If set, the order of the vertices in each triangle are reversed resulting in "
"the backside of the mesh being drawn.\n"
@@ -39033,7 +40313,7 @@ msgid ""
"[member BaseMaterial3D.cull_mode]."
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:29
+#: doc/classes/PrimitiveMesh.xml:34
msgid "The current [Material] of the primitive mesh."
msgstr ""
@@ -39464,11 +40744,17 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:260
msgid ""
+"Safer override for [member audio/output_latency] in the Web platform, to "
+"avoid audio issues especially on mobile devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:263
+msgid ""
"Setting to hardcode audio delay when playing video. Best to leave this "
"untouched unless you know what you are doing."
msgstr ""
-#: doc/classes/ProjectSettings.xml:263
+#: doc/classes/ProjectSettings.xml:266
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -39478,7 +40764,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:269
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -39488,27 +40774,27 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:269
+#: doc/classes/ProjectSettings.xml:272
msgid ""
"The default compression level for Zstandard. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
"speed. Decompression speed is mostly unaffected by the compression level."
msgstr ""
-#: doc/classes/ProjectSettings.xml:272
+#: doc/classes/ProjectSettings.xml:275
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:278
msgid ""
"Largest size limit (in power of 2) allowed when compressing using long-"
"distance matching with Zstandard. Higher values can result in better "
"compression, but will require more memory when compressing and decompressing."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:281
msgid ""
"If [code]true[/code], displays getters and setters in autocompletion results "
"in the script editor. This setting is meant to be used when porting old "
@@ -39516,74 +40802,55 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:281
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:284
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:287
+#: doc/classes/ProjectSettings.xml:294
msgid ""
"If [code]true[/code], enables specific GDScript warnings (see [code]debug/"
"gdscript/warnings/*[/code] settings). If [code]false[/code], disables all "
"GDScript warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
-msgid ""
-"If [code]true[/code], enables warnings when a function is declared with the "
-"same name as a constant."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:296
-msgid ""
-"If [code]true[/code], enables warnings when a function is declared with the "
-"same name as a variable. This will turn into an error in a future version "
-"when first-class functions become supported in GDScript."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:299
-msgid ""
-"If [code]true[/code], enables warnings when a function assigned to a "
-"variable may yield and return a function state instead of a value."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:302
+#: doc/classes/ProjectSettings.xml:300
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:303
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when dividing an integer by another "
"integer (the decimal part will be discarded)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when passing a floating-point value "
"to a function that expects an integer (it will be converted and lose "
"precision)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:314
+#: doc/classes/ProjectSettings.xml:312
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
@@ -39604,102 +40871,85 @@ msgid ""
"member variable)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:323
+#: doc/classes/ProjectSettings.xml:325
msgid ""
"If [code]true[/code], enables warnings when calling an expression that has "
"no effect on the surrounding code, such as writing [code]2 + 2[/code] as a "
"statement."
msgstr ""
-#: doc/classes/ProjectSettings.xml:326
+#: doc/classes/ProjectSettings.xml:328
msgid ""
"If [code]true[/code], enables warnings when calling a ternary expression "
"that has no effect on the surrounding code, such as writing [code]42 if "
"active else 0[/code] as a statement."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:331
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:334
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:335
+#: doc/classes/ProjectSettings.xml:337
msgid ""
"If [code]true[/code], enables warnings when assigning a variable using an "
"assignment operator like [code]+=[/code] if the variable wasn't previously "
"assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:338
+#: doc/classes/ProjectSettings.xml:340
msgid ""
"If [code]true[/code], enables warnings when unreachable code is detected "
"(such as after a [code]return[/code] statement that will always be executed)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:345
msgid ""
"If [code]true[/code], enables warnings when using an expression whose type "
"may not be compatible with the function parameter expected."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:348
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:347
+#: doc/classes/ProjectSettings.xml:351
msgid ""
"If [code]true[/code], enables warnings when calling a method whose presence "
"is not guaranteed at compile-time in the class."
msgstr ""
-#: doc/classes/ProjectSettings.xml:350
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], enables warnings when accessing a property whose "
"presence is not guaranteed at compile-time in the class."
msgstr ""
-#: doc/classes/ProjectSettings.xml:353
-msgid ""
-"If [code]true[/code], enables warnings when a function parameter is unused."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:356
-msgid ""
-"If [code]true[/code], enables warnings when a member variable is unused."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:363
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:362
+#: doc/classes/ProjectSettings.xml:366
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:365
-msgid ""
-"If [code]true[/code], enables warnings when a variable is declared with the "
-"same name as a function. This will turn into an error in a future version "
-"when first-class functions become supported in GDScript."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:368
+#: doc/classes/ProjectSettings.xml:369
msgid ""
"If [code]true[/code], enables warnings when assigning the result of a "
"function that returns [code]void[/code] to a variable."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:374
+#: doc/classes/ProjectSettings.xml:375
msgid ""
"Maximum number of frames per second allowed. The actual number of frames per "
"second may still be below this value if the game is lagging.\n"
@@ -39710,143 +40960,143 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:379
+#: doc/classes/ProjectSettings.xml:380
msgid "Maximum call stack allowed for debugging GDScript."
msgstr ""
-#: doc/classes/ProjectSettings.xml:382
+#: doc/classes/ProjectSettings.xml:383
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:385
+#: doc/classes/ProjectSettings.xml:386
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:388
+#: doc/classes/ProjectSettings.xml:389
msgid ""
"Print more information to standard output when running. It displays "
"information such as memory leaks, which scenes and resources are being "
"loaded, etc."
msgstr ""
-#: doc/classes/ProjectSettings.xml:391
+#: doc/classes/ProjectSettings.xml:392
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:394
+#: doc/classes/ProjectSettings.xml:395
msgid ""
"Color of the contact points between collision shapes, visible when \"Visible "
"Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:397
+#: doc/classes/ProjectSettings.xml:398
msgid ""
"Maximum number of contact points between collision shapes to display when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:400
+#: doc/classes/ProjectSettings.xml:401
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
msgid "Hotspot for the custom mouse cursor image."
msgstr ""
-#: doc/classes/ProjectSettings.xml:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
msgid ""
"If [code]true[/code], allows HiDPI display on Windows and macOS. This "
"setting has no effect on desktop Linux, as DPI-awareness fallbacks are not "
"supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"If [code]true[/code], keeps the screen on (even in case of inactivity), so "
"the screensaver does not take over. Works on desktop and mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
msgid "Default orientation on mobile devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"If [code]true[/code], the home indicator is hidden automatically. This only "
"affects iOS devices without a physical home button."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid "Force the window to be always on top."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid "Force the window to be borderless."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Sets the window to full screen when it starts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid ""
"Sets the game's main viewport height. On desktop platforms, this is the "
"default window size. Stretch mode settings also use this as a reference when "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Allows the window to be resizable by default."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"Sets the game's main viewport width. On desktop platforms, this is the "
"default window size. Stretch mode settings also use this as a reference when "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:454
+#: doc/classes/ProjectSettings.xml:455
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:457
+#: doc/classes/ProjectSettings.xml:458
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -39855,7 +41105,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:460
+#: doc/classes/ProjectSettings.xml:461
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -39866,13 +41116,13 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:464
+#: doc/classes/ProjectSettings.xml:465
msgid ""
"Search path for project-specific script templates. Script templates will be "
"search both in the editor-specific path and in this project-specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:467
+#: doc/classes/ProjectSettings.xml:468
msgid ""
"Text-based file extensions to include in the script editor's \"Find in Files"
"\" feature. You can add e.g. [code]tscn[/code] if you wish to also parse "
@@ -39880,49 +41130,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:470
+#: doc/classes/ProjectSettings.xml:471
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:473
+#: doc/classes/ProjectSettings.xml:474
msgid ""
-"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
+"If [code]true[/code], swaps Cancel and OK buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:478
+#: doc/classes/ProjectSettings.xml:479
msgid ""
"Path to a custom [Theme] resource file to use for the project ([code]theme[/"
"code] or generic [code]tres[/code]/[code]res[/code] extension)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:484
+#: doc/classes/ProjectSettings.xml:485
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:487
+#: doc/classes/ProjectSettings.xml:488
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:490
+#: doc/classes/ProjectSettings.xml:491
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:493
+#: doc/classes/ProjectSettings.xml:494
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:496
+#: doc/classes/ProjectSettings.xml:497
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -39931,7 +41181,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"Default [InputEventAction] to discard a modal or pending input.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39939,7 +41189,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:504
+#: doc/classes/ProjectSettings.xml:505
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39947,7 +41197,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:508
+#: doc/classes/ProjectSettings.xml:509
msgid ""
"Default [InputEventAction] to go to the end position of a [Control] (e.g. "
"last item in an [ItemList] or a [Tree]), matching the behavior of [constant "
@@ -39957,7 +41207,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:512
+#: doc/classes/ProjectSettings.xml:513
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -39966,7 +41216,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:516
+#: doc/classes/ProjectSettings.xml:517
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -39975,7 +41225,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:520
+#: doc/classes/ProjectSettings.xml:521
msgid ""
"Default [InputEventAction] to go to the start position of a [Control] (e.g. "
"first item in an [ItemList] or a [Tree]), matching the behavior of [constant "
@@ -39985,7 +41235,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39993,7 +41243,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:528
+#: doc/classes/ProjectSettings.xml:529
msgid ""
"Default [InputEventAction] to go down a page in a [Control] (e.g. in an "
"[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEDOWN] on "
@@ -40003,7 +41253,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Default [InputEventAction] to go up a page in a [Control] (e.g. in an "
"[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEUP] on "
@@ -40013,7 +41263,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:536
+#: doc/classes/ProjectSettings.xml:537
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -40021,7 +41271,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:540
+#: doc/classes/ProjectSettings.xml:541
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -40030,7 +41280,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -40038,371 +41288,371 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:548
+#: doc/classes/ProjectSettings.xml:549
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:554
+#: doc/classes/ProjectSettings.xml:555
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:557
+#: doc/classes/ProjectSettings.xml:558
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:560
+#: doc/classes/ProjectSettings.xml:561
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:566
+#: doc/classes/ProjectSettings.xml:567
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:569
+#: doc/classes/ProjectSettings.xml:570
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:572
+#: doc/classes/ProjectSettings.xml:573
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:578
+#: doc/classes/ProjectSettings.xml:579
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:581
+#: doc/classes/ProjectSettings.xml:582
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:584
+#: doc/classes/ProjectSettings.xml:585
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:590
+#: doc/classes/ProjectSettings.xml:591
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:593
+#: doc/classes/ProjectSettings.xml:594
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:596
+#: doc/classes/ProjectSettings.xml:597
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:602
+#: doc/classes/ProjectSettings.xml:603
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid ""
"The locale to fall back to if a translation isn't available in a given "
"language. If left empty, [code]en[/code] (English) will be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "If [code]true[/code], logs all output to files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:806
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:809
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:812
msgid ""
"Godot uses a message queue to defer some function calls. If you run out of "
"space on it (you will see an error), you can increase the size here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:815
msgid ""
"This is used by servers when used in multi-threading mode (servers and "
"visual). RIDs are preallocated to avoid stalling the server requesting them "
@@ -40410,56 +41660,56 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:829
+#: doc/classes/ProjectSettings.xml:832
msgid ""
"Maximum amount of characters allowed to send as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:832
+#: doc/classes/ProjectSettings.xml:835
msgid ""
"Maximum number of errors allowed to be sent from the debugger. Over this "
"value, content is dropped. This helps not to stall the debugger connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:835
+#: doc/classes/ProjectSettings.xml:838
msgid ""
"Maximum amount of messages in the debugger queue. Over this value, content "
"is dropped. This helps to limit the debugger memory usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:838
+#: doc/classes/ProjectSettings.xml:841
msgid ""
"Maximum number of warnings allowed to be sent from the debugger. Over this "
"value, content is dropped. This helps not to stall the debugger connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:841
+#: doc/classes/ProjectSettings.xml:844
msgid ""
"Default size of packet peer stream for deserializing Godot data. Over this "
"size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:844
+#: doc/classes/ProjectSettings.xml:847
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:847
+#: doc/classes/ProjectSettings.xml:850
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:850
+#: doc/classes/ProjectSettings.xml:853
msgid ""
"Amount of read ahead used by remote filesystem. Higher values decrease the "
"effects of latency at the cost of higher bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:853
+#: doc/classes/ProjectSettings.xml:856
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:856
+#: doc/classes/ProjectSettings.xml:859
msgid ""
"The CA certificates bundle to use for SSL connections. If this is set to a "
"non-empty value, this will [i]override[/i] Godot's default [url=https://"
@@ -40469,31 +41719,31 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:863
msgid ""
"When creating node names automatically, set the type of casing in this "
"project. This is mostly an editor setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:866
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:869
msgid "Size of the hash table used for the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:872
msgid "Cell size used for the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:875
msgid "The default angular damp in 2D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:878
msgid ""
"The default gravity strength in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -40505,7 +41755,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:883
+#: doc/classes/ProjectSettings.xml:886
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -40517,38 +41767,38 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:891
+#: doc/classes/ProjectSettings.xml:894
msgid "The default linear damp in 2D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:894
+#: doc/classes/ProjectSettings.xml:897
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:897
+#: doc/classes/ProjectSettings.xml:900
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics2D\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:901
+#: doc/classes/ProjectSettings.xml:904
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant PhysicsServer2D."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:904
+#: doc/classes/ProjectSettings.xml:907
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant PhysicsServer2D."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:907
+#: doc/classes/ProjectSettings.xml:910
msgid ""
"Sets whether physics is run on the main thread or a separate one. Running "
"the server on a thread increases performance, but restricts API access to "
@@ -40558,23 +41808,23 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:914
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant PhysicsServer2D.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:917
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody3D] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:920
msgid "The default angular damp in 3D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:923
msgid ""
"The default gravity strength in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -40586,7 +41836,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:928
+#: doc/classes/ProjectSettings.xml:931
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -40598,11 +41848,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:936
+#: doc/classes/ProjectSettings.xml:939
msgid "The default linear damp in 3D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:939
+#: doc/classes/ProjectSettings.xml:942
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -40610,11 +41860,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:943
+#: doc/classes/ProjectSettings.xml:946
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:949
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -40623,7 +41873,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:950
+#: doc/classes/ProjectSettings.xml:953
msgid ""
"Fix to improve physics jitter, specially on monitors where refresh rate is "
"different than the physics FPS.\n"
@@ -40631,7 +41881,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:954
+#: doc/classes/ProjectSettings.xml:957
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -40639,7 +41889,7 @@ msgid ""
"programmatically, use [method RenderingServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:957
+#: doc/classes/ProjectSettings.xml:960
msgid ""
"[Environment] that will be used as a fallback environment in case a scene "
"does not specify its own environment. The default environment is loaded in "
@@ -40649,14 +41899,14 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:986
+#: doc/classes/ProjectSettings.xml:989
msgid ""
"Max amount of elements renderable in a frame. If more than this are visible "
"per frame, they will be dropped. Keep in mind elements refer to mesh "
"surfaces and not meshes themselves."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:994
msgid ""
"Some NVIDIA GPU drivers have a bug which produces flickering issues for the "
"[code]draw_rect[/code] method, especially as used in [TileMap]. Refer to "
@@ -40668,73 +41918,73 @@ msgid ""
"using the Vulkan backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:995
+#: doc/classes/ProjectSettings.xml:998
msgid ""
"If [code]true[/code], forces snapping of polygons to pixels in 2D rendering. "
"May help in some pixel art styles."
msgstr ""
-#: doc/classes/ProjectSettings.xml:998
+#: doc/classes/ProjectSettings.xml:1001
msgid ""
"Sets the quality of the depth of field effect. Higher quality takes more "
"samples, which is slower but looks smoother."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1001
+#: doc/classes/ProjectSettings.xml:1004
msgid ""
"Sets the depth of field shape. Can be Box, Hexagon, or Circle. Box is the "
"fastest. Circle is the most realistic, but also the most expensive to "
"compute."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1004
+#: doc/classes/ProjectSettings.xml:1007
msgid ""
"If [code]true[/code], jitters DOF samples to make effect slightly blurrier "
"and hide lines created from low sample rates. This can result in a slightly "
"grainy appearance when used with a low number of samples."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1010
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1010
+#: doc/classes/ProjectSettings.xml:1013
msgid ""
"If [code]true[/code], performs a previous depth pass before rendering "
"materials. This increases performance in scenes with high overdraw, when "
"complex materials and lighting are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1016
msgid ""
"The directional shadow's size in pixels. Higher values will result in "
"sharper shadows, at the cost of performance. The value will be rounded up to "
"the nearest power of 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1016
+#: doc/classes/ProjectSettings.xml:1019
msgid ""
"Lower-end override for [member rendering/quality/directional_shadow/size] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1019
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"Quality setting for shadows cast by [DirectionalLight3D]s. Higher quality "
"settings use more samples when reading from shadow maps and are thus slower. "
"Low quality settings may result in shadows looking grainy."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1022
+#: doc/classes/ProjectSettings.xml:1025
msgid ""
"Lower-end override for [member rendering/quality/directional_shadow/"
"soft_shadow_quality] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1028
msgid ""
"The video driver to use (\"GLES2\" or \"Vulkan\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -40744,32 +41994,32 @@ msgid ""
"get_current_video_driver[/code] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1031
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"If [code]true[/code], take additional samples when rendering objects "
"affected by a [GIProbe] to reduce artifacts from only sampling in one "
"direction."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1034
+#: doc/classes/ProjectSettings.xml:1037
msgid ""
"Sets the number of cone samples taken when rendering objects affected by "
"[GIProbe]s."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1037
+#: doc/classes/ProjectSettings.xml:1040
msgid ""
"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."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1040
+#: doc/classes/ProjectSettings.xml:1043
msgid ""
"Lower-end override for [member rendering/quality/glow/upscale_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1043
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Strategy used for framebuffer allocation. The simpler it is, the less "
"resources it uses (but the less features it supports). If set to \"2D "
@@ -40779,41 +42029,41 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1046
+#: doc/classes/ProjectSettings.xml:1049
msgid ""
"Lower-end override for [member rendering/quality/intended_usage/"
"framebuffer_allocation] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1052
msgid ""
"Number of cubemaps to store in the reflection atlas. The number of "
"[ReflectionProbe]s in a scene will be limited by this amount. A higher "
"number requires more VRAM."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1052
+#: doc/classes/ProjectSettings.xml:1055
msgid ""
"Size of cubemap faces for [ReflectionProbe]s. A higher number requires more "
"VRAM and may make reflection probe updating slower."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1055
+#: doc/classes/ProjectSettings.xml:1058
msgid ""
"Lower-end override for [member rendering/quality/reflection_atlas/"
"reflection_size] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1058
+#: doc/classes/ProjectSettings.xml:1061
msgid ""
"Use a higher quality variant of the fast filtering algorithm. Significantly "
"slower than using default quality, but results in smoother reflections. "
"Should only be used when the scene is especially detailed."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1061
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Sets the number of samples to take when using importance sampling for [Sky]s "
"and [ReflectionProbe]s. A higher value will result in smoother, higher "
@@ -40823,19 +42073,19 @@ msgid ""
"environments with a high level of detail."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1064
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Lower-end override for [member rendering/quality/reflections/ggx_samples] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1067
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Limits the number of layers to use in radiance maps when using importance "
"sampling. A lower number will be slightly faster and take up less VRAM."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1070
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise and "
@@ -40844,14 +42094,14 @@ msgid ""
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1073
+#: doc/classes/ProjectSettings.xml:1076
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"texture_array_reflections] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1079
msgid ""
"Sets the number of MSAA samples to use (as a power of two). MSAA is used to "
"reduce aliasing around the edges of polygons. A higher MSAA value results in "
@@ -40859,7 +42109,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1080
+#: doc/classes/ProjectSettings.xml:1083
msgid ""
"Sets the screen-space antialiasing mode for the default screen [Viewport]. "
"Screen-space antialiasing works by selectively blurring edges in a post-"
@@ -40868,133 +42118,117 @@ msgid ""
"MSAA and will smooth out specular aliasing, but tend to make scenes appear "
"blurry.\n"
"Another way to combat specular aliasing is to enable [member rendering/"
-"quality/screen_filters/screen_space_roughness_limiter]."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:1084
-msgid ""
-"Enables the screen-space roughness limiter which increases material "
-"roughness in areas with a high normal frequency (i.e. when normals change a "
-"lot from pixel to pixel). This helps to reduce the amount of specular "
-"aliasing in a scene. Specular aliasing looks like random bright pixels that "
-"occur in reflections."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:1087
-msgid ""
-"Curves the amount of the roughness limited effect. A higher value limits the "
-"effect to very sharply curved surfaces, while a lower threshold extends the "
-"effect to smoother surfaces."
+"quality/screen_filters/screen_space_roughness_limiter_enabled]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1090
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"Sets the quality for rough screen-space reflections. Turning off will make "
"all screen space reflections sharp, while higher values make rough "
"reflections look better."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1093
+#: doc/classes/ProjectSettings.xml:1096
msgid ""
"If [code]true[/code], uses faster but lower-quality Blinn model to generate "
"blurred reflections instead of the GGX model."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1099
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_blinn_over_ggx] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1102
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1102
+#: doc/classes/ProjectSettings.xml:1105
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_lambert_over_burley] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1105
+#: doc/classes/ProjectSettings.xml:1108
msgid ""
"If [code]true[/code], forces vertex shading for all rendering. This can "
"increase performance a lot, but also reduces quality immensely. Can be used "
"to optimize performance on low-end mobile devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1108
+#: doc/classes/ProjectSettings.xml:1111
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_vertex_shading] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1111 doc/classes/ProjectSettings.xml:1114
-#: doc/classes/ProjectSettings.xml:1117 doc/classes/ProjectSettings.xml:1120
+#: doc/classes/ProjectSettings.xml:1114 doc/classes/ProjectSettings.xml:1117
+#: doc/classes/ProjectSettings.xml:1120 doc/classes/ProjectSettings.xml:1123
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1123
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1126
+#: doc/classes/ProjectSettings.xml:1129
msgid ""
"Lower-end override for [member rendering/quality/shadow_atlas/size] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1132
msgid ""
"Quality setting for shadows cast by [OmniLight3D]s and [SpotLight3D]s. "
"Higher quality settings use more samples when reading from shadow maps and "
"are thus slower. Low quality settings may result in shadows looking grainy."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1132
+#: doc/classes/ProjectSettings.xml:1135
msgid ""
"Lower-end override for [member rendering/quality/shadows/"
"soft_shadow_quality] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1135
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"If [code]true[/code], screen-space ambient occlusion will be rendered at "
"half size and then upscaled before being added to the scene. This is "
"significantly faster but may miss small details."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1138
+#: doc/classes/ProjectSettings.xml:1141
msgid ""
"Sets the quality of the screen-space ambient occlusion effect. Higher values "
"take more samples and so will result in better quality, at the cost of "
"performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1144
msgid ""
"Scales the depth over which the subsurface scattering effect is applied. A "
"high value may allow light to scatter into a part of the mesh or another "
"mesh that is close in screen space but far in depth."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1144
+#: doc/classes/ProjectSettings.xml:1147
msgid ""
"Sets the quality of the subsurface scattering effect. Higher values are "
"slower but look nicer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1147
+#: doc/classes/ProjectSettings.xml:1150
msgid ""
"Scales the distance over which samples are taken for subsurface scattering "
"effect. Changing this does not impact performance, but higher values will "
@@ -41002,7 +42236,7 @@ msgid ""
"out. A lower value results in a smaller spread of scattered light."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1150
+#: doc/classes/ProjectSettings.xml:1153
msgid ""
"Sets the maximum number of samples to take when using anisotropic filtering "
"on textures (as a power of two). A higher sample count will result in "
@@ -41011,7 +42245,7 @@ msgid ""
"materials where it is enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1153
+#: doc/classes/ProjectSettings.xml:1156
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -41020,49 +42254,49 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Thread model for rendering. Rendering on a thread can vastly improve "
"performance, but synchronizing to the main thread can cause a bit more "
"jitter."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
"only supported on desktop platforms, and only when using the Vulkan renderer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
"doesn't support alpha channels in textures."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
"compression algorithm is only supported when using the Vulkan renderer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1175
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
"compression algorithm is only supported on iOS."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
"supported on desktop platforms and consoles."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1182
+#: doc/classes/ProjectSettings.xml:1189
msgid "Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses."
msgstr ""
@@ -41092,13 +42326,14 @@ msgstr ""
#: doc/classes/Quat.xml:7
msgid ""
-"A unit quaternion used for representing 3D rotations.\n"
-"It is similar to [Basis], which implements matrix representation of "
-"rotations, and can be parametrized using both an axis-angle pair or Euler "
-"angles. But due to its compactness and the way it is stored in memory, "
-"certain operations (obtaining axis-angle and performing SLERP, in "
-"particular) are more efficient and robust against floating-point errors.\n"
-"Quaternions need to be (re)normalized."
+"A unit quaternion used for representing 3D rotations. Quaternions need to be "
+"normalized to be used for rotation.\n"
+"It is similar to Basis, which implements matrix representation of rotations, "
+"and can be parametrized using both an axis-angle pair or Euler angles. Basis "
+"stores rotation, scale, and shearing, while Quat only stores rotation.\n"
+"Due to its compactness and the way it is stored in memory, certain "
+"operations (obtaining axis-angle and performing SLERP, in particular) are "
+"more efficient and robust against floating-point errors."
msgstr ""
#: doc/classes/Quat.xml:12
@@ -41108,29 +42343,31 @@ msgid ""
msgstr ""
#: doc/classes/Quat.xml:21
-msgid "Returns the rotation matrix corresponding to the given quaternion."
+msgid "Constructs a quaternion from the given [Basis]."
msgstr ""
#: doc/classes/Quat.xml:30
msgid ""
-"Returns a quaternion that will perform a rotation specified by Euler angles "
-"(in the YXZ convention: first Z, then X, and Y last), given in the vector "
-"format as (X angle, Y angle, Z angle)."
+"Constructs a quaternion that will perform a rotation specified by Euler "
+"angles (in the YXZ convention: when decomposing, first Z, then X, and Y "
+"last), given in the vector format as (X angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:41
msgid ""
-"Returns a quaternion that will rotate around the given axis by the specified "
-"angle. The axis must be a normalized vector."
+"Constructs a quaternion that will rotate around the given axis by the "
+"specified angle. The axis must be a normalized vector."
msgstr ""
#: doc/classes/Quat.xml:56
-msgid "Returns a quaternion defined by these values."
+msgid "Constructs a quaternion defined by the given values."
msgstr ""
#: doc/classes/Quat.xml:71
msgid ""
-"Performs a cubic spherical-linear interpolation with another quaternion."
+"Performs a cubic spherical interpolation between quaternions [code]preA[/"
+"code], this vector, [code]b[/code], and [code]postB[/code], by the given "
+"amount [code]t[/code]."
msgstr ""
#: doc/classes/Quat.xml:80
@@ -41139,10 +42376,10 @@ msgstr ""
#: doc/classes/Quat.xml:87
msgid ""
-"Returns Euler angles (in the YXZ convention: first Z, then X, and Y last) "
-"corresponding to the rotation represented by the unit quaternion. Returned "
-"vector contains the rotation angles in the format (X angle, Y angle, Z "
-"angle)."
+"Returns Euler angles (in the YXZ convention: when decomposing, first Z, then "
+"X, and Y last) corresponding to the rotation represented by the unit "
+"quaternion. Returned vector contains the rotation angles in the format (X "
+"angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:94
@@ -41181,44 +42418,57 @@ msgstr ""
#: doc/classes/Quat.xml:151
msgid ""
"Sets the quaternion to a rotation specified by Euler angles (in the YXZ "
-"convention: first Z, then X, and Y last), given in the vector format as (X "
-"angle, Y angle, Z angle)."
+"convention: when decomposing, first Z, then X, and Y last), given in the "
+"vector format as (X angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:162
-msgid "Performs a spherical-linear interpolation with another quaternion."
+msgid ""
+"Returns the result of the spherical linear interpolation between this "
+"quaternion and [code]to[/code] by amount [code]weight[/code].\n"
+"[b]Note:[/b] Both quaternions must be normalized."
msgstr ""
-#: doc/classes/Quat.xml:173
+#: doc/classes/Quat.xml:174
msgid ""
-"Performs a spherical-linear interpolation with another quaterion without "
-"checking if the rotation path is not bigger than 90°."
+"Returns the result of the spherical linear interpolation between this "
+"quaternion and [code]to[/code] by amount [code]weight[/code], but without "
+"checking if the rotation path is not bigger than 90 degrees."
msgstr ""
-#: doc/classes/Quat.xml:182
-msgid "Transforms the vector [code]v[/code] by this quaternion."
+#: doc/classes/Quat.xml:183
+msgid "Returns a vector transformed (multiplied) by this quaternion."
msgstr ""
-#: doc/classes/Quat.xml:188
-msgid "W component of the quaternion."
+#: doc/classes/Quat.xml:189
+msgid ""
+"W component of the quaternion (real part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:191
-msgid "X component of the quaternion."
+#: doc/classes/Quat.xml:193
+msgid ""
+"X component of the quaternion (imaginary [code]i[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:194
-msgid "Y component of the quaternion."
+#: doc/classes/Quat.xml:197
+msgid ""
+"Y component of the quaternion (imaginary [code]j[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:197
-msgid "Z component of the quaternion."
+#: doc/classes/Quat.xml:201
+msgid ""
+"Z component of the quaternion (imaginary [code]k[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:202
+#: doc/classes/Quat.xml:207
msgid ""
-"The identity rotation. Equivalent to an identity matrix. If a vector is "
-"transformed by an identity quaternion, it will not change."
+"The identity quaternion, representing no rotation. Equivalent to an identity "
+"[Basis] matrix. If a vector is transformed by an identity quaternion, it "
+"will not change."
msgstr ""
#: doc/classes/RandomNumberGenerator.xml:4
@@ -41421,7 +42671,8 @@ msgid ""
"collision information immediately instead of waiting for the next "
"[code]_physics_process[/code] call, for example if the ray or its parent has "
"changed state.\n"
-"[b]Note:[/b] [code]enabled == true[/code] is not required for this to work."
+"[b]Note:[/b] [member enabled] does not need to be [code]true[/code] for this "
+"to work."
msgstr ""
#: doc/classes/RayCast2D.xml:54 doc/classes/RayCast3D.xml:55
@@ -41527,7 +42778,8 @@ msgid ""
"Use this method to update the collision information immediately instead of "
"waiting for the next [code]_physics_process[/code] call, for example if the "
"ray or its parent has changed state.\n"
-"[b]Note:[/b] [code]enabled == true[/code] is not required for this to work."
+"[b]Note:[/b] [member enabled] does not need to be [code]true[/code] for this "
+"to work."
msgstr ""
#: doc/classes/RayCast3D.xml:71
@@ -41685,14 +42937,6 @@ msgstr ""
msgid "Returns a larger [Rect2] that contains this [Rect2] and [code]b[/code]."
msgstr ""
-#: doc/classes/Rect2.xml:174 doc/classes/Rect2i.xml:163
-msgid "Ending corner."
-msgstr ""
-
-#: doc/classes/Rect2.xml:177 doc/classes/Rect2i.xml:166
-msgid "Position (starting corner)."
-msgstr ""
-
#: doc/classes/Rect2i.xml:4
msgid "2D axis-aligned bounding box using integer coordinates."
msgstr ""
@@ -41730,12 +42974,11 @@ msgid "Returns the intersection of this [Rect2i] and b."
msgstr ""
#: doc/classes/Rect2i.xml:71
-#, fuzzy
msgid ""
"Returns [code]true[/code] if this [Rect2i] completely encloses another one."
msgstr ""
-"[code]s[/code] ãŒã‚¼ãƒ­ã‚ã‚‹ã„ã¯ã€ã»ã¼ã‚¼ãƒ­ã§ã‚れ㰠[code]true[/code] ã‚’è¿”ã—ã¾"
-"ã™ã€‚"
+"ã“ã® [Rect2i] ãŒã€ã‚‚ã†ã²ã¨ã¤ã‚’完全ã«å†…包ã—ã¦ã„ã‚‹å ´åˆã¯ [code]true[/code] ã‚’è¿”"
+"ã—ã¾ã™ã€‚"
#: doc/classes/Rect2i.xml:80
msgid "Returns this [Rect2i] expanded to include a given point."
@@ -41771,11 +43014,8 @@ msgstr ""
"ã™ã€‚"
#: doc/classes/Rect2i.xml:138
-#, fuzzy
msgid "Returns [code]true[/code] if the [Rect2i] contains a point."
-msgstr ""
-"[code]s[/code] ãŒã‚¼ãƒ­ã‚ã‚‹ã„ã¯ã€ã»ã¼ã‚¼ãƒ­ã§ã‚れ㰠[code]true[/code] ã‚’è¿”ã—ã¾"
-"ã™ã€‚"
+msgstr "ãƒã‚¤ãƒ³ãƒˆãŒ [Rect2i] 内ã«ã‚れ㰠[code]true[/code] ã‚’è¿”ã—ã¾ã™ã€‚"
#: doc/classes/Rect2i.xml:147
msgid ""
@@ -41814,22 +43054,22 @@ msgstr ""
msgid ""
"Base class for any object that keeps a reference count. [Resource] and many "
"other helper objects inherit this class.\n"
-"References keep an internal reference counter so that they are automatically "
-"released when no longer in use, and only then. References therefore do not "
-"need to be freed manually with [method Object.free].\n"
+"Unlike [Object]s, References keep an internal reference counter so that they "
+"are automatically released when no longer in use, and only then. References "
+"therefore do not need to be freed manually with [method Object.free].\n"
"In the vast majority of use cases, instantiating and using [Reference]-"
"derived types is all you need to do. The methods provided in this class are "
"only for advanced users, and can cause issues if misused."
msgstr ""
-#: doc/classes/Reference.xml:18
+#: doc/classes/Reference.xml:19
msgid ""
"Initializes the internal reference counter. Use this only if you really know "
"what you are doing.\n"
"Returns whether the initialization was successful."
msgstr ""
-#: doc/classes/Reference.xml:26
+#: doc/classes/Reference.xml:27
msgid ""
"Increments the internal reference counter. Use this only if you really know "
"what you are doing.\n"
@@ -41837,7 +43077,7 @@ msgid ""
"code] otherwise."
msgstr ""
-#: doc/classes/Reference.xml:34
+#: doc/classes/Reference.xml:35
msgid ""
"Decrements the internal reference counter. Use this only if you really know "
"what you are doing.\n"
@@ -41886,14 +43126,14 @@ msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/reflection_probes.html"
msgstr ""
-#: doc/classes/ReflectionProbe.xml:17
+#: doc/classes/ReflectionProbe.xml:23
msgid ""
"If [code]true[/code], enables box projection. This makes reflections look "
"more correct in rectangle-shaped rooms by offsetting the reflection center "
"depending on the camera's location."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:20
+#: doc/classes/ReflectionProbe.xml:26
msgid ""
"Sets the cull mask which determines what objects are drawn by this probe. "
"Every [VisualInstance3D] with a layer included in this cull mask will be "
@@ -41902,78 +43142,57 @@ msgid ""
"rendering cost."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:23
+#: doc/classes/ReflectionProbe.xml:29
msgid ""
"If [code]true[/code], computes shadows in the reflection probe. This makes "
"the reflection probe slower to render; you may want to disable this if using "
"the [constant UPDATE_ALWAYS] [member update_mode]."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:26
+#: doc/classes/ReflectionProbe.xml:32
msgid ""
"The size of the reflection probe. The larger the extents the more space "
"covered by the probe which will lower the perceived resolution. It is best "
"to keep the extents only as large as you need them."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:29
+#: doc/classes/ReflectionProbe.xml:35
msgid ""
"Defines the reflection intensity. Intensity modulates the strength of the "
"reflection."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:32
-msgid ""
-"Sets the ambient light color to be used when this probe is set to [member "
-"interior_enable]."
-msgstr ""
-
-#: doc/classes/ReflectionProbe.xml:35
-msgid ""
-"Sets the contribution value for how much the reflection affects the ambient "
-"light for this reflection probe when set to [member interior_enable]. Useful "
-"so that ambient light matches the color of the room."
-msgstr ""
-
#: doc/classes/ReflectionProbe.xml:38
-msgid ""
-"Sets the energy multiplier for this reflection probe's ambient light "
-"contribution when set to [member interior_enable]."
-msgstr ""
+#, fuzzy
+msgid "If [code]true[/code], reflections will ignore sky contribution."
+msgstr "[code]true[/code] ã§ã‚ã‚Œã°ã€ãƒ†ã‚¯ã‚¹ãƒãƒ£ã¯ä¸­å¤®ã«ãªã‚Šã¾ã™ã€‚"
#: doc/classes/ReflectionProbe.xml:41
msgid ""
-"If [code]true[/code], reflections will ignore sky contribution. Ambient "
-"lighting is then controlled by the [code]interior_ambient_*[/code] "
-"properties."
-msgstr ""
-
-#: doc/classes/ReflectionProbe.xml:44
-msgid ""
"Sets the max distance away from the probe an object can be before it is "
"culled."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:47
+#: doc/classes/ReflectionProbe.xml:44
msgid ""
"Sets the origin offset to be used when this reflection probe is in box "
"project mode."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:50
+#: doc/classes/ReflectionProbe.xml:47
msgid ""
"Sets how frequently the probe is updated. Can be [constant UPDATE_ONCE] or "
"[constant UPDATE_ALWAYS]."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:55
+#: doc/classes/ReflectionProbe.xml:52
msgid ""
"Update the probe once on the next frame. The corresponding radiance map will "
"be generated over the following six frames. This is slower to update than "
"[constant UPDATE_ALWAYS] but can result in higher quality reflections."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:58
+#: doc/classes/ReflectionProbe.xml:55
msgid ""
"Update the probe every frame. This is needed when you want to capture "
"dynamic objects. However, it results in an increased render time. Use "
@@ -42003,10 +43222,10 @@ msgid ""
"read by RegEx as [code]\\d+[/code]. Similarly, [code]compile(\"\\\"(?:\\\\\\"
"\\.|[^\\\"])*\\\"\")[/code] would be read as [code]\"(?:\\\\.|[^\"])*\"[/"
"code].\n"
-"Using [method search] you can find the pattern within the given text. If a "
+"Using [method search], you can find the pattern within the given text. If a "
"pattern is found, [RegExMatch] is returned and you can retrieve details of "
-"the results using functions such as [method RegExMatch.get_string] and "
-"[method RegExMatch.get_start].\n"
+"the results using methods such as [method RegExMatch.get_string] and [method "
+"RegExMatch.get_start].\n"
"[codeblock]\n"
"var regex = RegEx.new()\n"
"regex.compile(\"\\\\w-(\\\\d+)\")\n"
@@ -42015,7 +43234,7 @@ msgid ""
" print(result.get_string()) # Would print n-0123\n"
"[/codeblock]\n"
"The results of capturing groups [code]()[/code] can be retrieved by passing "
-"the group number to the various functions in [RegExMatch]. Group 0 is the "
+"the group number to the various methods in [RegExMatch]. Group 0 is the "
"default and will always refer to the entire pattern. In the above example, "
"calling [code]result.get_string(1)[/code] would give you [code]0123[/code].\n"
"This version of RegEx also supports named capturing groups, and the names "
@@ -42036,6 +43255,15 @@ msgid ""
" print(result.get_string(\"digit\"))\n"
"# Would print 01 03 0 3f 42\n"
"[/codeblock]\n"
+"[b]Example of splitting a string using a RegEx:[/b]\n"
+"[codeblock]\n"
+"var regex = RegEx.new()\n"
+"regex.compile(\"\\\\S+\") # Negated whitespace character class.\n"
+"var results = []\n"
+"for match in regex.search_all(\"One Two \\n\\tThree\"):\n"
+" results.push_back(match.get_string())\n"
+"# The `results` array now contains \"One\", \"Two\", \"Three\".\n"
+"[/codeblock]\n"
"[b]Note:[/b] Godot's regex implementation is based on the [url=https://www."
"pcre.org/]PCRE2[/url] library. You can view the full pattern reference "
"[url=https://www.pcre.org/current/doc/html/pcre2pattern.html]here[/url].\n"
@@ -42043,38 +43271,38 @@ msgid ""
"regular expressions online."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:47
+#: modules/regex/doc_classes/RegEx.xml:56
msgid ""
"This method resets the state of the object, as if it was freshly created. "
"Namely, it unassigns the regular expression of this object."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:56
+#: modules/regex/doc_classes/RegEx.xml:65
msgid ""
"Compiles and assign the search pattern to use. Returns [constant OK] if the "
"compilation is successful. If an error is encountered, details are printed "
"to standard output and an error is returned."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:63
+#: modules/regex/doc_classes/RegEx.xml:72
msgid "Returns the number of capturing groups in compiled pattern."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:70
+#: modules/regex/doc_classes/RegEx.xml:79
msgid ""
"Returns an array of names of named capturing groups in the compiled pattern. "
"They are ordered by appearance."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:77
+#: modules/regex/doc_classes/RegEx.xml:86
msgid "Returns the original search pattern that was compiled."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:84
+#: modules/regex/doc_classes/RegEx.xml:93
msgid "Returns whether this object has a valid search pattern assigned."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:97
+#: modules/regex/doc_classes/RegEx.xml:106
msgid ""
"Searches the text for the compiled pattern. Returns a [RegExMatch] container "
"of the first matching result if found, otherwise [code]null[/code]. The "
@@ -42082,7 +43310,7 @@ msgid ""
"and end anchor would be."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:110
+#: modules/regex/doc_classes/RegEx.xml:119
msgid ""
"Searches the text for the compiled pattern. Returns an array of [RegExMatch] "
"containers for each non-overlapping result. If no results were found, an "
@@ -42090,7 +43318,7 @@ msgid ""
"specified without modifying where the start and end anchor would be."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:127
+#: modules/regex/doc_classes/RegEx.xml:136
msgid ""
"Searches the text for the compiled pattern and replaces it with the "
"specified string. Escapes and backreferences such as [code]$1[/code] and "
@@ -42817,7 +44045,7 @@ msgid ""
msgstr ""
#: doc/classes/RenderingServer.xml:1222 doc/classes/RenderingServer.xml:1250
-#: doc/classes/RenderingServer.xml:1527
+#: doc/classes/RenderingServer.xml:1537
msgid "Not implemented in Godot 3.x."
msgstr ""
@@ -42964,30 +44192,30 @@ msgid ""
"OmniLight3D.omni_shadow_mode]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1481
+#: doc/classes/RenderingServer.xml:1491
msgid ""
"Sets the color of the light. Equivalent to [member Light3D.light_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1492
+#: doc/classes/RenderingServer.xml:1502
msgid ""
"Sets the cull mask for this Light3D. Lights only affect objects in the "
"selected layers. Equivalent to [member Light3D.light_cull_mask]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1503
+#: doc/classes/RenderingServer.xml:1513
msgid ""
"If [code]true[/code], light will subtract light instead of adding light. "
"Equivalent to [member Light3D.light_negative]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1516
+#: doc/classes/RenderingServer.xml:1526
msgid ""
"Sets the specified light parameter. See [enum LightParam] for options. "
"Equivalent to [method Light3D.set_param]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1538
+#: doc/classes/RenderingServer.xml:1548
msgid ""
"If [code]true[/code], reverses the backface culling of the mesh. This can be "
"useful when you have a flat mesh that has a light behind it. If you need to "
@@ -42996,29 +44224,25 @@ msgid ""
"to [member Light3D.shadow_reverse_cull_face]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1549
+#: doc/classes/RenderingServer.xml:1559
msgid ""
"If [code]true[/code], light will cast shadows. Equivalent to [member Light3D."
"shadow_enabled]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1560
+#: doc/classes/RenderingServer.xml:1570
msgid ""
"Sets the color of the shadow cast by the light. Equivalent to [member "
"Light3D.shadow_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1571
-msgid "Sets whether GI probes capture light information from this light."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:1584
+#: doc/classes/RenderingServer.xml:1583
msgid ""
"Returns a mesh of a sphere with the given amount of horizontal and vertical "
"subdivisions."
msgstr ""
-#: doc/classes/RenderingServer.xml:1591
+#: doc/classes/RenderingServer.xml:1590
msgid ""
"Creates an empty material and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -43027,31 +44251,31 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:1603
+#: doc/classes/RenderingServer.xml:1602
msgid "Returns the value of a certain material's parameter."
msgstr ""
-#: doc/classes/RenderingServer.xml:1614
+#: doc/classes/RenderingServer.xml:1613
msgid "Sets an object's next material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1627
+#: doc/classes/RenderingServer.xml:1626
msgid "Sets a material's parameter."
msgstr ""
-#: doc/classes/RenderingServer.xml:1638
+#: doc/classes/RenderingServer.xml:1637
msgid "Sets a material's render priority."
msgstr ""
-#: doc/classes/RenderingServer.xml:1649
+#: doc/classes/RenderingServer.xml:1648
msgid "Sets a shader material's shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:1678
+#: doc/classes/RenderingServer.xml:1677
msgid "Removes all surfaces from a mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1685
+#: doc/classes/RenderingServer.xml:1684
msgid ""
"Creates a new mesh and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all [code]mesh_*[/"
@@ -43062,58 +44286,58 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:1696
+#: doc/classes/RenderingServer.xml:1695
msgid "Returns a mesh's blend shape count."
msgstr ""
-#: doc/classes/RenderingServer.xml:1705
+#: doc/classes/RenderingServer.xml:1704
msgid "Returns a mesh's blend shape mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:1714
+#: doc/classes/RenderingServer.xml:1713
msgid "Returns a mesh's custom aabb."
msgstr ""
-#: doc/classes/RenderingServer.xml:1723
+#: doc/classes/RenderingServer.xml:1722
msgid "Returns a mesh's number of surfaces."
msgstr ""
-#: doc/classes/RenderingServer.xml:1734
+#: doc/classes/RenderingServer.xml:1733
msgid "Sets a mesh's blend shape mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:1745
+#: doc/classes/RenderingServer.xml:1744
msgid "Sets a mesh's custom aabb."
msgstr ""
-#: doc/classes/RenderingServer.xml:1756
+#: doc/classes/RenderingServer.xml:1755
msgid "Returns a mesh's surface's buffer arrays."
msgstr ""
-#: doc/classes/RenderingServer.xml:1767
+#: doc/classes/RenderingServer.xml:1766
msgid "Returns a mesh's surface's arrays for blend shapes."
msgstr ""
-#: doc/classes/RenderingServer.xml:1782 doc/classes/RenderingServer.xml:1795
+#: doc/classes/RenderingServer.xml:1781 doc/classes/RenderingServer.xml:1794
msgid "Function is unused in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:1806
+#: doc/classes/RenderingServer.xml:1805
msgid "Returns a mesh's surface's material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1819
+#: doc/classes/RenderingServer.xml:1818
msgid "Sets a mesh's surface's material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1834
+#: doc/classes/RenderingServer.xml:1833
msgid ""
"Updates a specific region of a vertex buffer for the specified surface. "
"Warning: this function alters the vertex buffer directly with no safety "
"mechanisms, you can easily corrupt your mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1857
+#: doc/classes/RenderingServer.xml:1856
msgid ""
"Creates a new multimesh on the RenderingServer and returns an [RID] handle. "
"This RID will be used in all [code]multimesh_*[/code] RenderingServer "
@@ -43124,82 +44348,82 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:1868
+#: doc/classes/RenderingServer.xml:1867
msgid ""
"Calculates and returns the axis-aligned bounding box that encloses all "
"instances within the multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1885
+#: doc/classes/RenderingServer.xml:1884
msgid "Returns the number of instances allocated for this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1894
+#: doc/classes/RenderingServer.xml:1893
msgid ""
"Returns the RID of the mesh that will be used in drawing this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1903
+#: doc/classes/RenderingServer.xml:1902
msgid "Returns the number of visible instances for this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1914
+#: doc/classes/RenderingServer.xml:1913
msgid "Returns the color by which the specified instance will be modulated."
msgstr ""
-#: doc/classes/RenderingServer.xml:1925
+#: doc/classes/RenderingServer.xml:1924
msgid "Returns the custom data associated with the specified instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:1936
+#: doc/classes/RenderingServer.xml:1935
msgid "Returns the [Transform] of the specified instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:1947
+#: doc/classes/RenderingServer.xml:1946
msgid ""
"Returns the [Transform2D] of the specified instance. For use when the "
"multimesh is set to use 2D transforms."
msgstr ""
-#: doc/classes/RenderingServer.xml:1960
+#: doc/classes/RenderingServer.xml:1959
msgid ""
"Sets the color by which this instance will be modulated. Equivalent to "
"[method MultiMesh.set_instance_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1973
+#: doc/classes/RenderingServer.xml:1972
msgid ""
"Sets the custom data for this instance. Custom data is passed as a [Color], "
"but is interpreted as a [code]vec4[/code] in the shader. Equivalent to "
"[method MultiMesh.set_instance_custom_data]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1986
+#: doc/classes/RenderingServer.xml:1985
msgid ""
"Sets the [Transform] for this instance. Equivalent to [method MultiMesh."
"set_instance_transform]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1999
+#: doc/classes/RenderingServer.xml:1998
msgid ""
"Sets the [Transform2D] for this instance. For use when multimesh is used in "
"2D. Equivalent to [method MultiMesh.set_instance_transform_2d]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2020
+#: doc/classes/RenderingServer.xml:2019
msgid ""
"Sets the mesh to be drawn by the multimesh. Equivalent to [member MultiMesh."
"mesh]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2031
+#: doc/classes/RenderingServer.xml:2030
msgid ""
"Sets the number of instances visible at a given time. If -1, all instances "
"that have been allocated are drawn. Equivalent to [member MultiMesh."
"visible_instance_count]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2038
+#: doc/classes/RenderingServer.xml:2037
msgid ""
"Creates a new omni light and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID can be used in most "
@@ -43210,7 +44434,7 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2047
+#: doc/classes/RenderingServer.xml:2046
msgid ""
"Creates a particle system and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -43221,23 +44445,23 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2058
+#: doc/classes/RenderingServer.xml:2057
msgid ""
"Calculates and returns the axis-aligned bounding box that contains all the "
"particles. Equivalent to [method GPUParticles3D.capture_aabb]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2067
+#: doc/classes/RenderingServer.xml:2066
msgid "Returns [code]true[/code] if particles are currently set to emitting."
msgstr ""
-#: doc/classes/RenderingServer.xml:2076
+#: doc/classes/RenderingServer.xml:2075
msgid ""
"Returns [code]true[/code] if particles are not emitting and particles are "
"set to inactive."
msgstr ""
-#: doc/classes/RenderingServer.xml:2085
+#: doc/classes/RenderingServer.xml:2084
msgid ""
"Add particle system to list of particle systems that need to be updated. "
"Update will take place on the next frame, or on the next call to [method "
@@ -43245,121 +44469,121 @@ msgid ""
"instances_cull_ray]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2094
+#: doc/classes/RenderingServer.xml:2093
msgid ""
"Reset the particles on the next update. Equivalent to [method GPUParticles3D."
"restart]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2105
+#: doc/classes/RenderingServer.xml:2104
msgid ""
"Sets the number of particles to be drawn and allocates the memory for them. "
"Equivalent to [member GPUParticles3D.amount]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2116
+#: doc/classes/RenderingServer.xml:2115
msgid ""
"Sets a custom axis-aligned bounding box for the particle system. Equivalent "
"to [member GPUParticles3D.visibility_aabb]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2127
+#: doc/classes/RenderingServer.xml:2126
msgid ""
"Sets the draw order of the particles to one of the named enums from [enum "
"ParticlesDrawOrder]. See [enum ParticlesDrawOrder] for options. Equivalent "
"to [member GPUParticles3D.draw_order]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2140
+#: doc/classes/RenderingServer.xml:2139
msgid ""
"Sets the mesh to be used for the specified draw pass. Equivalent to [member "
"GPUParticles3D.draw_pass_1], [member GPUParticles3D.draw_pass_2], [member "
"GPUParticles3D.draw_pass_3], and [member GPUParticles3D.draw_pass_4]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2151
+#: doc/classes/RenderingServer.xml:2150
msgid ""
"Sets the number of draw passes to use. Equivalent to [member GPUParticles3D."
"draw_passes]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2162
+#: doc/classes/RenderingServer.xml:2161
msgid ""
"Sets the [Transform] that will be used by the particles when they first emit."
msgstr ""
-#: doc/classes/RenderingServer.xml:2173
+#: doc/classes/RenderingServer.xml:2172
msgid ""
"If [code]true[/code], particles will emit over time. Setting to false does "
"not reset the particles, but only stops their emission. Equivalent to "
"[member GPUParticles3D.emitting]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2184
+#: doc/classes/RenderingServer.xml:2183
msgid ""
"Sets the explosiveness ratio. Equivalent to [member GPUParticles3D."
"explosiveness]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2195
+#: doc/classes/RenderingServer.xml:2194
msgid ""
"Sets the frame rate that the particle system rendering will be fixed to. "
"Equivalent to [member GPUParticles3D.fixed_fps]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2206
+#: doc/classes/RenderingServer.xml:2205
msgid ""
"If [code]true[/code], uses fractional delta which smooths the movement of "
"the particles. Equivalent to [member GPUParticles3D.fract_delta]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2217
+#: doc/classes/RenderingServer.xml:2216
msgid ""
"Sets the lifetime of each particle in the system. Equivalent to [member "
"GPUParticles3D.lifetime]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2228
+#: doc/classes/RenderingServer.xml:2227
msgid ""
"If [code]true[/code], particles will emit once and then stop. Equivalent to "
"[member GPUParticles3D.one_shot]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2239
+#: doc/classes/RenderingServer.xml:2238
msgid ""
"Sets the preprocess time for the particles animation. This lets you delay "
"starting an animation until after the particles have begun emitting. "
"Equivalent to [member GPUParticles3D.preprocess]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2250
+#: doc/classes/RenderingServer.xml:2249
msgid ""
"Sets the material for processing the particles. Note: this is not the "
"material used to draw the materials. Equivalent to [member GPUParticles3D."
"process_material]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2261
+#: doc/classes/RenderingServer.xml:2260
msgid ""
"Sets the emission randomness ratio. This randomizes the emission of "
"particles within their phase. Equivalent to [member GPUParticles3D."
"randomness]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2272
+#: doc/classes/RenderingServer.xml:2271
msgid ""
"Sets the speed scale of the particle system. Equivalent to [member "
"GPUParticles3D.speed_scale]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2283
+#: doc/classes/RenderingServer.xml:2282
msgid ""
"If [code]true[/code], particles use local coordinates. If [code]false[/code] "
"they use global coordinates. Equivalent to [member GPUParticles3D."
"local_coords]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2290
+#: doc/classes/RenderingServer.xml:2289
msgid ""
"Creates a reflection probe and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -43370,85 +44594,64 @@ msgid ""
"[method instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2303
+#: doc/classes/RenderingServer.xml:2332
msgid ""
"If [code]true[/code], reflections will ignore sky contribution. Equivalent "
-"to [member ReflectionProbe.interior_enable]."
+"to [member ReflectionProbe.interior]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2314
+#: doc/classes/RenderingServer.xml:2343
msgid ""
"Sets the render cull mask for this reflection probe. Only instances with a "
"matching cull mask will be rendered by this probe. Equivalent to [member "
"ReflectionProbe.cull_mask]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2325
+#: doc/classes/RenderingServer.xml:2354
msgid ""
"If [code]true[/code], uses box projection. This can make reflections look "
"more correct in certain situations. Equivalent to [member ReflectionProbe."
"box_projection]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2336
+#: doc/classes/RenderingServer.xml:2365
msgid ""
"If [code]true[/code], computes shadows in the reflection probe. This makes "
"the reflection much slower to compute. Equivalent to [member ReflectionProbe."
"enable_shadows]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2347
+#: doc/classes/RenderingServer.xml:2376
msgid ""
"Sets the size of the area that the reflection probe will capture. Equivalent "
"to [member ReflectionProbe.extents]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2358
+#: doc/classes/RenderingServer.xml:2387
msgid ""
"Sets the intensity of the reflection probe. Intensity modulates the strength "
"of the reflection. Equivalent to [member ReflectionProbe.intensity]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2369
-msgid ""
-"Sets the ambient light color for this reflection probe when set to interior "
-"mode. Equivalent to [member ReflectionProbe.interior_ambient_color]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2380
-msgid ""
-"Sets the energy multiplier for this reflection probes ambient light "
-"contribution when set to interior mode. Equivalent to [member "
-"ReflectionProbe.interior_ambient_energy]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2391
-msgid ""
-"Sets the contribution value for how much the reflection affects the ambient "
-"light for this reflection probe when set to interior mode. Useful so that "
-"ambient light matches the color of the room. Equivalent to [member "
-"ReflectionProbe.interior_ambient_contrib]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2402
+#: doc/classes/RenderingServer.xml:2398
msgid ""
"Sets the max distance away from the probe an object can be before it is "
"culled. Equivalent to [member ReflectionProbe.max_distance]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2413
+#: doc/classes/RenderingServer.xml:2409
msgid ""
"Sets the origin offset to be used when this reflection probe is in box "
"project mode. Equivalent to [member ReflectionProbe.origin_offset]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2424
+#: doc/classes/RenderingServer.xml:2420
msgid ""
"Sets how often the reflection probe updates. Can either be once or every "
"frame. See [enum ReflectionProbeUpdateMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2437
+#: doc/classes/RenderingServer.xml:2433
msgid ""
"Schedules a callback to the corresponding named [code]method[/code] on "
"[code]where[/code] after a frame has been drawn.\n"
@@ -43456,7 +44659,7 @@ msgid ""
"[code]userdata[/code]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2445
+#: doc/classes/RenderingServer.xml:2441
msgid ""
"Creates a scenario and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all "
@@ -43466,24 +44669,24 @@ msgid ""
"The scenario is the 3D world that all the visual instances exist in."
msgstr ""
-#: doc/classes/RenderingServer.xml:2458
+#: doc/classes/RenderingServer.xml:2454
msgid ""
"Sets the [enum ScenarioDebugMode] for this scenario. See [enum "
"ScenarioDebugMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2469
+#: doc/classes/RenderingServer.xml:2465
msgid "Sets the environment that will be used with this scenario."
msgstr ""
-#: doc/classes/RenderingServer.xml:2480
+#: doc/classes/RenderingServer.xml:2476
msgid ""
"Sets the fallback environment to be used by this scenario. The fallback "
"environment is used if no environment is set. Internally, this is used by "
"the editor to provide a default environment."
msgstr ""
-#: doc/classes/RenderingServer.xml:2495
+#: doc/classes/RenderingServer.xml:2491
msgid ""
"Sets a boot image. The color defines the background color. If [code]scale[/"
"code] is [code]true[/code], the image will be scaled to fit the screen size. "
@@ -43492,19 +44695,19 @@ msgid ""
"the image will be scaled with nearest-neighbor interpolation."
msgstr ""
-#: doc/classes/RenderingServer.xml:2504
+#: doc/classes/RenderingServer.xml:2500
msgid ""
"If [code]true[/code], the engine will generate wireframes for use with the "
"wireframe debug mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:2513
+#: doc/classes/RenderingServer.xml:2509
msgid ""
"Sets the default clear color which is used when a specific clear color has "
"not been selected."
msgstr ""
-#: doc/classes/RenderingServer.xml:2520
+#: doc/classes/RenderingServer.xml:2516
msgid ""
"Creates an empty shader and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -43513,47 +44716,47 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2530
+#: doc/classes/RenderingServer.xml:2526
msgid "Returns a shader's code."
msgstr ""
-#: doc/classes/RenderingServer.xml:2541
+#: doc/classes/RenderingServer.xml:2537
msgid "Returns a default texture from a shader searched by name."
msgstr ""
-#: doc/classes/RenderingServer.xml:2560
+#: doc/classes/RenderingServer.xml:2556
msgid "Returns the parameters of a shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:2571
+#: doc/classes/RenderingServer.xml:2567
msgid "Sets a shader's code."
msgstr ""
-#: doc/classes/RenderingServer.xml:2584
+#: doc/classes/RenderingServer.xml:2580
msgid "Sets a shader's default texture. Overwrites the texture given by name."
msgstr ""
-#: doc/classes/RenderingServer.xml:2597
+#: doc/classes/RenderingServer.xml:2593
msgid "Allocates the GPU buffers for this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2608
+#: doc/classes/RenderingServer.xml:2604
msgid "Returns the [Transform] set for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2619
+#: doc/classes/RenderingServer.xml:2615
msgid "Returns the [Transform2D] set for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2632
+#: doc/classes/RenderingServer.xml:2628
msgid "Sets the [Transform] for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2645
+#: doc/classes/RenderingServer.xml:2641
msgid "Sets the [Transform2D] for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2652
+#: doc/classes/RenderingServer.xml:2648
msgid ""
"Creates a skeleton and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all "
@@ -43562,11 +44765,11 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2662
+#: doc/classes/RenderingServer.xml:2658
msgid "Returns the number of bones allocated for this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2669
+#: doc/classes/RenderingServer.xml:2665
msgid ""
"Creates an empty sky and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all [code]sky_*[/"
@@ -43575,13 +44778,13 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2681
+#: doc/classes/RenderingServer.xml:2677
msgid ""
"Sets the material that the sky uses to render the background and reflection "
"maps."
msgstr ""
-#: doc/classes/RenderingServer.xml:2688
+#: doc/classes/RenderingServer.xml:2684
msgid ""
"Creates a spot light and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID can be used in most [code]light_*[/"
@@ -43592,15 +44795,15 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2717
+#: doc/classes/RenderingServer.xml:2713
msgid "Sets a viewport's camera."
msgstr ""
-#: doc/classes/RenderingServer.xml:2728
+#: doc/classes/RenderingServer.xml:2724
msgid "Sets a viewport's canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:2741
+#: doc/classes/RenderingServer.xml:2737
msgid ""
"Copies the viewport to a region of the screen specified by [code]rect[/"
"code]. If [method viewport_set_render_direct_to_screen] is [code]true[/"
@@ -43622,7 +44825,7 @@ msgid ""
"viewport_set_render_direct_to_screen]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2755
+#: doc/classes/RenderingServer.xml:2751
msgid ""
"Creates an empty viewport and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -43631,72 +44834,72 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2767
+#: doc/classes/RenderingServer.xml:2763
msgid ""
"Returns a viewport's render information. For options, see the [enum "
"ViewportRenderInfo] constants."
msgstr ""
-#: doc/classes/RenderingServer.xml:2776
+#: doc/classes/RenderingServer.xml:2772
msgid "Returns the viewport's last rendered frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:2787
+#: doc/classes/RenderingServer.xml:2783
msgid "Detaches a viewport from a canvas and vice versa."
msgstr ""
-#: doc/classes/RenderingServer.xml:2798
+#: doc/classes/RenderingServer.xml:2794
msgid "If [code]true[/code], sets the viewport active, else sets it inactive."
msgstr ""
-#: doc/classes/RenderingServer.xml:2813
+#: doc/classes/RenderingServer.xml:2809
msgid ""
"Sets the stacking order for a viewport's canvas.\n"
"[code]layer[/code] is the actual canvas layer, while [code]sublayer[/code] "
"specifies the stacking order of the canvas among those in the same layer."
msgstr ""
-#: doc/classes/RenderingServer.xml:2827
+#: doc/classes/RenderingServer.xml:2823
msgid "Sets the transformation of a viewport's canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:2838
+#: doc/classes/RenderingServer.xml:2834
msgid ""
"Sets the clear mode of a viewport. See [enum ViewportClearMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2849
+#: doc/classes/RenderingServer.xml:2845
msgid ""
"Sets the debug draw mode of a viewport. See [enum ViewportDebugDraw] for "
"options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2860
+#: doc/classes/RenderingServer.xml:2856
msgid ""
"If [code]true[/code], rendering of a viewport's environment is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:2871
+#: doc/classes/RenderingServer.xml:2867
msgid "Sets the viewport's global transformation matrix."
msgstr ""
-#: doc/classes/RenderingServer.xml:2882
+#: doc/classes/RenderingServer.xml:2878
msgid "If [code]true[/code], the viewport's canvas is not rendered."
msgstr ""
-#: doc/classes/RenderingServer.xml:2893
+#: doc/classes/RenderingServer.xml:2889
msgid "Currently unimplemented in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:2904
+#: doc/classes/RenderingServer.xml:2900
msgid "Sets the anti-aliasing mode. See [enum ViewportMSAA] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2915
+#: doc/classes/RenderingServer.xml:2911
msgid "Sets the viewport's parent to another viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:2926
+#: doc/classes/RenderingServer.xml:2922
msgid ""
"If [code]true[/code], render the contents of the viewport directly to "
"screen. This allows a low-level optimization where you can skip drawing a "
@@ -43712,455 +44915,455 @@ msgid ""
"significantly larger than the window size."
msgstr ""
-#: doc/classes/RenderingServer.xml:2937
+#: doc/classes/RenderingServer.xml:2933
msgid ""
"Sets a viewport's scenario.\n"
"The scenario contains information about the [enum ScenarioDebugMode], "
"environment information, reflection atlas etc."
msgstr ""
-#: doc/classes/RenderingServer.xml:2951
+#: doc/classes/RenderingServer.xml:2947
msgid "Sets the shadow atlas quadrant's subdivision."
msgstr ""
-#: doc/classes/RenderingServer.xml:2962
+#: doc/classes/RenderingServer.xml:2958
msgid ""
"Sets the size of the shadow atlas's images (used for omni and spot lights). "
"The value will be rounded up to the nearest power of 2."
msgstr ""
-#: doc/classes/RenderingServer.xml:2975
+#: doc/classes/RenderingServer.xml:2971
msgid "Sets the viewport's width and height."
msgstr ""
-#: doc/classes/RenderingServer.xml:2986
+#: doc/classes/RenderingServer.xml:2982
msgid ""
"If [code]true[/code], the viewport renders its background as transparent."
msgstr ""
-#: doc/classes/RenderingServer.xml:2997
+#: doc/classes/RenderingServer.xml:2993
msgid ""
"Sets when the viewport should be updated. See [enum ViewportUpdateMode] "
"constants for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:3008
+#: doc/classes/RenderingServer.xml:3004
msgid ""
"If [code]true[/code], the viewport uses augmented or virtual reality "
"technologies. See [XRInterface]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3014
+#: doc/classes/RenderingServer.xml:3010
msgid ""
"If [code]false[/code], disables rendering completely, but the engine logic "
"is still being processed. You can call [method force_draw] to draw a frame "
"even with rendering disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3020
+#: doc/classes/RenderingServer.xml:3016
msgid ""
"Emitted at the end of the frame, after the RenderingServer has finished "
"updating all the Viewports."
msgstr ""
-#: doc/classes/RenderingServer.xml:3025
+#: doc/classes/RenderingServer.xml:3021
msgid ""
"Emitted at the beginning of the frame, before the RenderingServer updates "
"all the Viewports."
msgstr ""
-#: doc/classes/RenderingServer.xml:3031
+#: doc/classes/RenderingServer.xml:3027
msgid "Marks an error that shows that the index array is empty."
msgstr ""
-#: doc/classes/RenderingServer.xml:3034
+#: doc/classes/RenderingServer.xml:3030
msgid "Number of weights/bones per vertex."
msgstr ""
-#: doc/classes/RenderingServer.xml:3037
+#: doc/classes/RenderingServer.xml:3033
msgid "The minimum Z-layer for canvas items."
msgstr ""
-#: doc/classes/RenderingServer.xml:3040
+#: doc/classes/RenderingServer.xml:3036
msgid "The maximum Z-layer for canvas items."
msgstr ""
-#: doc/classes/RenderingServer.xml:3043
+#: doc/classes/RenderingServer.xml:3039
msgid ""
"Max number of glow levels that can be used with glow post-process effect."
msgstr ""
-#: doc/classes/RenderingServer.xml:3046
+#: doc/classes/RenderingServer.xml:3042
msgid "Unused enum in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:3067
+#: doc/classes/RenderingServer.xml:3063
msgid "Shader is a 3D shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3070
+#: doc/classes/RenderingServer.xml:3066
msgid "Shader is a 2D shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3073
+#: doc/classes/RenderingServer.xml:3069
msgid "Shader is a particle shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3076
+#: doc/classes/RenderingServer.xml:3072
msgid "Shader is a sky shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3079
+#: doc/classes/RenderingServer.xml:3075
msgid "Represents the size of the [enum ShaderMode] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3082
+#: doc/classes/RenderingServer.xml:3078
msgid "The minimum renderpriority of all materials."
msgstr ""
-#: doc/classes/RenderingServer.xml:3085
+#: doc/classes/RenderingServer.xml:3081
msgid "The maximum renderpriority of all materials."
msgstr ""
-#: doc/classes/RenderingServer.xml:3088
+#: doc/classes/RenderingServer.xml:3084
msgid "Array is a vertex array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3091
+#: doc/classes/RenderingServer.xml:3087
msgid "Array is a normal array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3094
+#: doc/classes/RenderingServer.xml:3090
msgid "Array is a tangent array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3097
+#: doc/classes/RenderingServer.xml:3093
msgid "Array is a color array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3100
+#: doc/classes/RenderingServer.xml:3096
msgid "Array is an UV coordinates array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3103
+#: doc/classes/RenderingServer.xml:3099
msgid "Array is an UV coordinates array for the second UV coordinates."
msgstr ""
-#: doc/classes/RenderingServer.xml:3106
+#: doc/classes/RenderingServer.xml:3102
msgid "Array contains bone information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3109
+#: doc/classes/RenderingServer.xml:3105
msgid "Array is weight information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3112
+#: doc/classes/RenderingServer.xml:3108
msgid "Array is index array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3118
+#: doc/classes/RenderingServer.xml:3114
msgid "Flag used to mark a vertex array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3121
+#: doc/classes/RenderingServer.xml:3117
msgid "Flag used to mark a normal array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3124
+#: doc/classes/RenderingServer.xml:3120
msgid "Flag used to mark a tangent array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3127
+#: doc/classes/RenderingServer.xml:3123
msgid "Flag used to mark a color array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3130
+#: doc/classes/RenderingServer.xml:3126
msgid "Flag used to mark an UV coordinates array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3133
+#: doc/classes/RenderingServer.xml:3129
msgid ""
"Flag used to mark an UV coordinates array for the second UV coordinates."
msgstr ""
-#: doc/classes/RenderingServer.xml:3136
+#: doc/classes/RenderingServer.xml:3132
msgid "Flag used to mark a bone information array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3139
+#: doc/classes/RenderingServer.xml:3135
msgid "Flag used to mark a weights array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3142
+#: doc/classes/RenderingServer.xml:3138
msgid "Flag used to mark an index array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3171
+#: doc/classes/RenderingServer.xml:3167
msgid "Primitive to draw consists of points."
msgstr ""
-#: doc/classes/RenderingServer.xml:3174
+#: doc/classes/RenderingServer.xml:3170
msgid "Primitive to draw consists of lines."
msgstr ""
-#: doc/classes/RenderingServer.xml:3177
+#: doc/classes/RenderingServer.xml:3173
msgid "Primitive to draw consists of a line strip from start to end."
msgstr ""
-#: doc/classes/RenderingServer.xml:3180
+#: doc/classes/RenderingServer.xml:3176
msgid "Primitive to draw consists of triangles."
msgstr ""
-#: doc/classes/RenderingServer.xml:3183
+#: doc/classes/RenderingServer.xml:3179
msgid ""
"Primitive to draw consists of a triangle strip (the last 3 vertices are "
"always combined to make a triangle)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3186
+#: doc/classes/RenderingServer.xml:3182
msgid "Represents the size of the [enum PrimitiveType] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3195
+#: doc/classes/RenderingServer.xml:3191
msgid "Use [Transform2D] to store MultiMesh transform."
msgstr ""
-#: doc/classes/RenderingServer.xml:3198
+#: doc/classes/RenderingServer.xml:3194
msgid "Use [Transform] to store MultiMesh transform."
msgstr ""
-#: doc/classes/RenderingServer.xml:3201
+#: doc/classes/RenderingServer.xml:3197
msgid "Is a directional (sun) light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3204
+#: doc/classes/RenderingServer.xml:3200
msgid "Is an omni light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3207
+#: doc/classes/RenderingServer.xml:3203
msgid "Is a spot light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3210
+#: doc/classes/RenderingServer.xml:3206
msgid "The light's energy."
msgstr ""
-#: doc/classes/RenderingServer.xml:3215
+#: doc/classes/RenderingServer.xml:3211
msgid "The light's influence on specularity."
msgstr ""
-#: doc/classes/RenderingServer.xml:3218
+#: doc/classes/RenderingServer.xml:3214
msgid "The light's range."
msgstr ""
-#: doc/classes/RenderingServer.xml:3221
+#: doc/classes/RenderingServer.xml:3217
msgid ""
"The size of the light when using spot light or omni light. The angular size "
"of the light when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3224
+#: doc/classes/RenderingServer.xml:3220
msgid "The light's attenuation."
msgstr ""
-#: doc/classes/RenderingServer.xml:3227
+#: doc/classes/RenderingServer.xml:3223
msgid "The spotlight's angle."
msgstr ""
-#: doc/classes/RenderingServer.xml:3230
+#: doc/classes/RenderingServer.xml:3226
msgid "The spotlight's attenuation."
msgstr ""
-#: doc/classes/RenderingServer.xml:3233
+#: doc/classes/RenderingServer.xml:3229
msgid "Max distance that shadows will be rendered."
msgstr ""
-#: doc/classes/RenderingServer.xml:3236
+#: doc/classes/RenderingServer.xml:3232
msgid "Proportion of shadow atlas occupied by the first split."
msgstr ""
-#: doc/classes/RenderingServer.xml:3239
+#: doc/classes/RenderingServer.xml:3235
msgid "Proportion of shadow atlas occupied by the second split."
msgstr ""
-#: doc/classes/RenderingServer.xml:3242
+#: doc/classes/RenderingServer.xml:3238
msgid ""
"Proportion of shadow atlas occupied by the third split. The fourth split "
"occupies the rest."
msgstr ""
-#: doc/classes/RenderingServer.xml:3245
+#: doc/classes/RenderingServer.xml:3241
msgid ""
"Proportion of shadow max distance where the shadow will start to fade out."
msgstr ""
-#: doc/classes/RenderingServer.xml:3248
+#: doc/classes/RenderingServer.xml:3244
msgid ""
"Normal bias used to offset shadow lookup by object normal. Can be used to "
"fix self-shadowing artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3251
+#: doc/classes/RenderingServer.xml:3247
msgid "Bias the shadow lookup to fix self-shadowing artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3257
+#: doc/classes/RenderingServer.xml:3253
msgid ""
"Blurs the edges of the shadow. Can be used to hide pixel artifacts in low "
"resolution shadow maps. A high value can make shadows appear grainy and can "
"cause other unwanted artifacts. Try to keep as near default as possible."
msgstr ""
-#: doc/classes/RenderingServer.xml:3262
+#: doc/classes/RenderingServer.xml:3258
msgid "Represents the size of the [enum LightParam] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3265
+#: doc/classes/RenderingServer.xml:3267
msgid "Use a dual paraboloid shadow map for omni lights."
msgstr ""
-#: doc/classes/RenderingServer.xml:3268
+#: doc/classes/RenderingServer.xml:3270
msgid ""
"Use a cubemap shadow map for omni lights. Slower but better quality than "
"dual paraboloid."
msgstr ""
-#: doc/classes/RenderingServer.xml:3271
+#: doc/classes/RenderingServer.xml:3273
msgid "Use orthogonal shadow projection for directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3274
+#: doc/classes/RenderingServer.xml:3276
msgid "Use 2 splits for shadow projection when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3277
+#: doc/classes/RenderingServer.xml:3279
msgid "Use 4 splits for shadow projection when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3280
+#: doc/classes/RenderingServer.xml:3282
msgid ""
"Keeps shadows stable as camera moves but has lower effective resolution."
msgstr ""
-#: doc/classes/RenderingServer.xml:3283
+#: doc/classes/RenderingServer.xml:3285
msgid ""
"Optimize use of shadow maps, increasing the effective resolution. But may "
"result in shadows moving or flickering slightly."
msgstr ""
-#: doc/classes/RenderingServer.xml:3286
+#: doc/classes/RenderingServer.xml:3288
msgid "Reflection probe will update reflections once and then stop."
msgstr ""
-#: doc/classes/RenderingServer.xml:3289
+#: doc/classes/RenderingServer.xml:3291
msgid ""
"Reflection probe will update each frame. This mode is necessary to capture "
"moving objects."
msgstr ""
-#: doc/classes/RenderingServer.xml:3302
+#: doc/classes/RenderingServer.xml:3310
msgid "Draw particles in the order that they appear in the particles array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3305
+#: doc/classes/RenderingServer.xml:3313
msgid "Sort particles based on their lifetime."
msgstr ""
-#: doc/classes/RenderingServer.xml:3308
+#: doc/classes/RenderingServer.xml:3316
msgid "Sort particles based on their distance to the camera."
msgstr ""
-#: doc/classes/RenderingServer.xml:3311
+#: doc/classes/RenderingServer.xml:3319
msgid "Do not update the viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:3314
+#: doc/classes/RenderingServer.xml:3322
msgid "Update the viewport once then set to disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3317
+#: doc/classes/RenderingServer.xml:3325
msgid "Update the viewport whenever it is visible."
msgstr ""
-#: doc/classes/RenderingServer.xml:3322
+#: doc/classes/RenderingServer.xml:3330
msgid "Always update the viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:3325
+#: doc/classes/RenderingServer.xml:3333
msgid "The viewport is always cleared before drawing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3328
+#: doc/classes/RenderingServer.xml:3336
msgid "The viewport is never cleared before drawing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3331
+#: doc/classes/RenderingServer.xml:3339
msgid ""
"The viewport is cleared once, then the clear mode is set to [constant "
"VIEWPORT_CLEAR_NEVER]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3334
+#: doc/classes/RenderingServer.xml:3342
msgid "Multisample antialiasing is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3337
+#: doc/classes/RenderingServer.xml:3345
msgid "Multisample antialiasing uses 2 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3340
+#: doc/classes/RenderingServer.xml:3348
msgid "Multisample antialiasing uses 4 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3343
+#: doc/classes/RenderingServer.xml:3351
msgid "Multisample antialiasing uses 8 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3346
+#: doc/classes/RenderingServer.xml:3354
msgid "Multisample antialiasing uses 16 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3357
+#: doc/classes/RenderingServer.xml:3365
msgid "Number of objects drawn in a single frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3360
+#: doc/classes/RenderingServer.xml:3368
msgid "Number of vertices drawn in a single frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3363
+#: doc/classes/RenderingServer.xml:3371
msgid "Number of material changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3366
+#: doc/classes/RenderingServer.xml:3374
msgid "Number of shader changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3369
+#: doc/classes/RenderingServer.xml:3377
msgid "Number of surface changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3372
+#: doc/classes/RenderingServer.xml:3380
msgid "Number of draw calls during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3375
+#: doc/classes/RenderingServer.xml:3383
msgid "Represents the size of the [enum ViewportRenderInfo] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3378
+#: doc/classes/RenderingServer.xml:3386
msgid "Debug draw is disabled. Default setting."
msgstr ""
-#: doc/classes/RenderingServer.xml:3381 doc/classes/Viewport.xml:348
+#: doc/classes/RenderingServer.xml:3389 doc/classes/Viewport.xml:348
msgid "Objects are displayed without light information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3384
+#: doc/classes/RenderingServer.xml:3392
msgid "Objects are displayed with only light information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3387 doc/classes/Viewport.xml:353
+#: doc/classes/RenderingServer.xml:3395 doc/classes/Viewport.xml:353
msgid ""
"Objects are displayed semi-transparent with additive blending so you can see "
"where they are drawing over top of one another. A higher overdraw means you "
@@ -44168,41 +45371,41 @@ msgid ""
"others."
msgstr ""
-#: doc/classes/RenderingServer.xml:3390
+#: doc/classes/RenderingServer.xml:3398
msgid "Debug draw draws objects in wireframe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3393
+#: doc/classes/RenderingServer.xml:3401
msgid ""
"Normal buffer is drawn instead of regular scene so you can see the per-pixel "
"normals that will be used by post-processing effects."
msgstr ""
-#: doc/classes/RenderingServer.xml:3396 doc/classes/Viewport.xml:361
+#: doc/classes/RenderingServer.xml:3404 doc/classes/Viewport.xml:361
msgid "Objects are displayed with only the albedo value from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3399 doc/classes/Viewport.xml:364
+#: doc/classes/RenderingServer.xml:3407 doc/classes/Viewport.xml:364
msgid "Objects are displayed with only the lighting value from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3402 doc/classes/Viewport.xml:367
+#: doc/classes/RenderingServer.xml:3410 doc/classes/Viewport.xml:367
msgid "Objects are displayed with only the emission color from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3405 doc/classes/Viewport.xml:370
+#: doc/classes/RenderingServer.xml:3413 doc/classes/Viewport.xml:370
msgid ""
"Draws the shadow atlas that stores shadows from [OmniLight3D]s and "
"[SpotLight3D]s in the upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3408 doc/classes/Viewport.xml:373
+#: doc/classes/RenderingServer.xml:3416 doc/classes/Viewport.xml:373
msgid ""
"Draws the shadow atlas that stores shadows from [DirectionalLight3D]s in the "
"upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3413
+#: doc/classes/RenderingServer.xml:3421
msgid ""
"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 "
@@ -44210,21 +45413,14 @@ msgid ""
"your [WorldEnvironment]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3416 doc/classes/Viewport.xml:381
-msgid ""
-"Draws the roughness limiter post process over the Viewport so you can see "
-"where it has an effect. It must be enabled in [member ProjectSettings."
-"rendering/quality/screen_filters/screen_space_roughness_limiter] to work."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:3419
+#: doc/classes/RenderingServer.xml:3424
msgid ""
"Colors each PSSM split for the [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."
msgstr ""
-#: doc/classes/RenderingServer.xml:3424
+#: doc/classes/RenderingServer.xml:3435
msgid ""
"Uses high quality importance sampling to process the radiance map. In "
"general, this results in much higher quality than [constant Sky."
@@ -44235,7 +45431,7 @@ msgid ""
"ggx_samples]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3427
+#: doc/classes/RenderingServer.xml:3438
msgid ""
"Uses the fast filtering algorithm to process the radiance map. In general "
"this results in lower quality, but substantially faster run times.\n"
@@ -44243,347 +45439,347 @@ msgid ""
"[member Sky.radiance_size] must be set to [constant Sky.RADIANCE_SIZE_256]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3431
+#: doc/classes/RenderingServer.xml:3442
msgid "Use the clear color as background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3434
+#: doc/classes/RenderingServer.xml:3445
msgid "Use a specified color as the background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3437
+#: doc/classes/RenderingServer.xml:3448
msgid "Use a sky resource for the background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3440
+#: doc/classes/RenderingServer.xml:3451
msgid ""
"Use a specified canvas layer as the background. This can be useful for "
"instantiating a 2D scene in a 3D world."
msgstr ""
-#: doc/classes/RenderingServer.xml:3443
+#: doc/classes/RenderingServer.xml:3454
msgid ""
"Do not clear the background, use whatever was rendered last frame as the "
"background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3449
+#: doc/classes/RenderingServer.xml:3460
msgid "Represents the size of the [enum EnvironmentBG] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3488
+#: doc/classes/RenderingServer.xml:3499
msgid "Output color as they came in."
msgstr ""
-#: doc/classes/RenderingServer.xml:3491
+#: doc/classes/RenderingServer.xml:3502
msgid "Use the Reinhard tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3494
+#: doc/classes/RenderingServer.xml:3505
msgid "Use the filmic tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3497
+#: doc/classes/RenderingServer.xml:3508
msgid "Use the ACES tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3508
+#: doc/classes/RenderingServer.xml:3519
msgid "Disables the blur set for SSAO. Will make SSAO look noisier."
msgstr ""
-#: doc/classes/RenderingServer.xml:3511
+#: doc/classes/RenderingServer.xml:3522
msgid "Perform a 1x1 blur on the SSAO output."
msgstr ""
-#: doc/classes/RenderingServer.xml:3514
+#: doc/classes/RenderingServer.xml:3525
msgid "Performs a 2x2 blur on the SSAO output."
msgstr ""
-#: doc/classes/RenderingServer.xml:3517
+#: doc/classes/RenderingServer.xml:3528
msgid "Performs a 3x3 blur on the SSAO output. Use this for smoothest SSAO."
msgstr ""
-#: doc/classes/RenderingServer.xml:3520
+#: doc/classes/RenderingServer.xml:3531
msgid "Lowest quality of screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3523
+#: doc/classes/RenderingServer.xml:3534
msgid "Medium quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3526
+#: doc/classes/RenderingServer.xml:3537
msgid "High quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3529
+#: doc/classes/RenderingServer.xml:3540
msgid "Highest quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3540
+#: doc/classes/RenderingServer.xml:3551
msgid ""
"Lowest quality DOF blur. This is the fastest setting, but you may be able to "
"see filtering artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3543
+#: doc/classes/RenderingServer.xml:3554
msgid "Low quality DOF blur."
msgstr ""
-#: doc/classes/RenderingServer.xml:3546
+#: doc/classes/RenderingServer.xml:3557
msgid "Medium quality DOF blur."
msgstr ""
-#: doc/classes/RenderingServer.xml:3549
+#: doc/classes/RenderingServer.xml:3560
msgid ""
"Highest quality DOF blur. Results in the smoothest looking blur by taking "
"the most samples, but is also significantly slower."
msgstr ""
-#: doc/classes/RenderingServer.xml:3552
+#: doc/classes/RenderingServer.xml:3563
msgid ""
"Calculate the DOF blur using a box filter. The fastest option, but results "
"in obvious lines in blur pattern."
msgstr ""
-#: doc/classes/RenderingServer.xml:3555
+#: doc/classes/RenderingServer.xml:3566
msgid "Calculates DOF blur using a hexagon shaped filter."
msgstr ""
-#: doc/classes/RenderingServer.xml:3558
+#: doc/classes/RenderingServer.xml:3569
msgid ""
"Calculates DOF blur using a circle shaped filter. Best quality and most "
"realistic, but slowest. Use only for areas where a lot of performance can be "
"dedicated to post-processing (e.g. cutscenes)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3573
+#: doc/classes/RenderingServer.xml:3584
msgid "Do not use a debug mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:3576
+#: doc/classes/RenderingServer.xml:3587
msgid "Draw all objects as wireframe models."
msgstr ""
-#: doc/classes/RenderingServer.xml:3579
+#: doc/classes/RenderingServer.xml:3590
msgid ""
"Draw all objects in a way that displays how much overdraw is occurring. "
"Overdraw occurs when a section of pixels is drawn and shaded and then "
"another object covers it up. To optimize a scene, you should reduce overdraw."
msgstr ""
-#: doc/classes/RenderingServer.xml:3582
+#: doc/classes/RenderingServer.xml:3593
msgid ""
"Draw all objects without shading. Equivalent to setting all objects shaders "
"to [code]unshaded[/code]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3585
+#: doc/classes/RenderingServer.xml:3596
msgid "The instance does not have a type."
msgstr ""
-#: doc/classes/RenderingServer.xml:3588
+#: doc/classes/RenderingServer.xml:3599
msgid "The instance is a mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:3591
+#: doc/classes/RenderingServer.xml:3602
msgid "The instance is a multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:3594
+#: doc/classes/RenderingServer.xml:3605
msgid "The instance is an immediate geometry."
msgstr ""
-#: doc/classes/RenderingServer.xml:3597
+#: doc/classes/RenderingServer.xml:3608
msgid "The instance is a particle emitter."
msgstr ""
-#: doc/classes/RenderingServer.xml:3600
+#: doc/classes/RenderingServer.xml:3611
msgid "The instance is a light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3603
+#: doc/classes/RenderingServer.xml:3614
msgid "The instance is a reflection probe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3606
+#: doc/classes/RenderingServer.xml:3617
msgid "The instance is a decal."
msgstr ""
-#: doc/classes/RenderingServer.xml:3609
+#: doc/classes/RenderingServer.xml:3620
msgid "The instance is a GI probe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3612
+#: doc/classes/RenderingServer.xml:3623
msgid "The instance is a lightmap."
msgstr ""
-#: doc/classes/RenderingServer.xml:3615
+#: doc/classes/RenderingServer.xml:3626
msgid "Represents the size of the [enum InstanceType] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3618
+#: doc/classes/RenderingServer.xml:3629
msgid ""
"A combination of the flags of geometry instances (mesh, multimesh, immediate "
"and particles)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3621
+#: doc/classes/RenderingServer.xml:3632
msgid "Allows the instance to be used in baked lighting."
msgstr ""
-#: doc/classes/RenderingServer.xml:3624
+#: doc/classes/RenderingServer.xml:3635
msgid "Allows the instance to be used with dynamic global illumination."
msgstr ""
-#: doc/classes/RenderingServer.xml:3627
+#: doc/classes/RenderingServer.xml:3638
msgid "When set, manually requests to draw geometry on next frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3630
+#: doc/classes/RenderingServer.xml:3641
msgid "Represents the size of the [enum InstanceFlags] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3633
+#: doc/classes/RenderingServer.xml:3644
msgid "Disable shadows from this instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:3636
+#: doc/classes/RenderingServer.xml:3647
msgid "Cast shadows from this instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:3639
+#: doc/classes/RenderingServer.xml:3650
msgid ""
"Disable backface culling when rendering the shadow of the object. This is "
"slightly slower but may result in more correct shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3642
+#: doc/classes/RenderingServer.xml:3653
msgid ""
"Only render the shadows from the object. The object itself will not be drawn."
msgstr ""
-#: doc/classes/RenderingServer.xml:3645
+#: doc/classes/RenderingServer.xml:3656
msgid "The nine patch gets stretched where needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3648
+#: doc/classes/RenderingServer.xml:3659
msgid "The nine patch gets filled with tiles where needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3651
+#: doc/classes/RenderingServer.xml:3662
msgid ""
"The nine patch gets filled with tiles where needed and stretches them a bit "
"if needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3654
+#: doc/classes/RenderingServer.xml:3665
msgid "Uses the default filter mode for this [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3666 doc/classes/Viewport.xml:399
+#: doc/classes/RenderingServer.xml:3677 doc/classes/Viewport.xml:402
msgid ""
"The texture filter blends between the nearest 4 pixels and between the "
"nearest 2 mipmaps."
msgstr ""
-#: doc/classes/RenderingServer.xml:3675
+#: doc/classes/RenderingServer.xml:3686
msgid "Max value for [enum CanvasItemTextureFilter] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3678
+#: doc/classes/RenderingServer.xml:3689
msgid "Uses the default repeat mode for this [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3681 doc/classes/Viewport.xml:405
+#: doc/classes/RenderingServer.xml:3692 doc/classes/Viewport.xml:408
msgid ""
"Disables textures repeating. Instead, when reading UVs outside the 0-1 "
"range, the value will be clamped to the edge of the texture, resulting in a "
"stretched out look at the borders of the texture."
msgstr ""
-#: doc/classes/RenderingServer.xml:3687 doc/classes/Viewport.xml:411
+#: doc/classes/RenderingServer.xml:3698 doc/classes/Viewport.xml:414
msgid ""
"Flip the texture when repeating so that the edge lines up instead of "
"abruptly changing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3690
+#: doc/classes/RenderingServer.xml:3701
msgid "Max value for [enum CanvasItemTextureRepeat] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3693
+#: doc/classes/RenderingServer.xml:3704
msgid "Adds light color additive to the canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:3696
+#: doc/classes/RenderingServer.xml:3707
msgid "Adds light color subtractive to the canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:3699
+#: doc/classes/RenderingServer.xml:3710
msgid "The light adds color depending on transparency."
msgstr ""
-#: doc/classes/RenderingServer.xml:3702
+#: doc/classes/RenderingServer.xml:3713
msgid "The light adds color depending on mask."
msgstr ""
-#: doc/classes/RenderingServer.xml:3705
+#: doc/classes/RenderingServer.xml:3716
msgid "Do not apply a filter to canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3708
+#: doc/classes/RenderingServer.xml:3719
msgid "Use PCF5 filtering to filter canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3711
+#: doc/classes/RenderingServer.xml:3722
msgid "Use PCF13 filtering to filter canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3714
+#: doc/classes/RenderingServer.xml:3725
msgid "Max value of the [enum CanvasLightShadowFilter] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3717
+#: doc/classes/RenderingServer.xml:3728
msgid "Culling of the canvas occluder is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3720
+#: doc/classes/RenderingServer.xml:3731
msgid "Culling of the canvas occluder is clockwise."
msgstr ""
-#: doc/classes/RenderingServer.xml:3723
+#: doc/classes/RenderingServer.xml:3734
msgid "Culling of the canvas occluder is counterclockwise."
msgstr ""
-#: doc/classes/RenderingServer.xml:3784
+#: doc/classes/RenderingServer.xml:3795
msgid "The amount of objects in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3787
+#: doc/classes/RenderingServer.xml:3798
msgid "The amount of vertices in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3790
+#: doc/classes/RenderingServer.xml:3801
msgid "The amount of modified materials in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3793
+#: doc/classes/RenderingServer.xml:3804
msgid "The amount of shader rebinds in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3796
+#: doc/classes/RenderingServer.xml:3807
msgid "The amount of surface changes in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3799
+#: doc/classes/RenderingServer.xml:3810
msgid "The amount of draw calls in frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3814
+#: doc/classes/RenderingServer.xml:3825
msgid "Hardware supports shaders. This enum is currently unused in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:3817
+#: doc/classes/RenderingServer.xml:3828
msgid ""
"Hardware supports multithreading. This enum is currently unused in Godot 3.x."
msgstr ""
@@ -44595,13 +45791,13 @@ msgstr ""
#: doc/classes/Resource.xml:7
msgid ""
"Resource is the base class for all Godot-specific resource types, serving "
-"primarily as data containers. They are reference counted and freed when no "
-"longer in use. They are also cached once loaded from disk, so that any "
-"further attempts to load a resource from a given path will return the same "
-"reference (all this in contrast to a [Node], which is not reference counted "
-"and can be instanced from disk as many times as desired). Resources can be "
-"saved externally on disk or bundled into another object, such as a [Node] or "
-"another resource."
+"primarily as data containers. Unlike [Object]s, they are reference-counted "
+"and freed when no longer in use. They are also cached once loaded from disk, "
+"so that any further attempts to load a resource from a given path will "
+"return the same reference (all this in contrast to a [Node], which is not "
+"reference-counted and can be instanced from disk as many times as desired). "
+"Resources can be saved externally on disk or bundled into another object, "
+"such as a [Node] or another resource."
msgstr ""
#: doc/classes/Resource.xml:10
@@ -44610,34 +45806,38 @@ msgid ""
"resources.html"
msgstr ""
-#: doc/classes/Resource.xml:17
+#: doc/classes/Resource.xml:18
msgid ""
"Virtual function which can be overridden to customize the behavior value of "
"[method setup_local_to_scene]."
msgstr ""
-#: doc/classes/Resource.xml:26
+#: doc/classes/Resource.xml:27
msgid ""
"Duplicates the resource, returning a new resource. By default, sub-resources "
-"are shared between resource copies for efficiency, this can be changed by "
-"passing [code]true[/code] to the [code]subresources[/code] argument."
+"are shared between resource copies for efficiency. This can be changed by "
+"passing [code]true[/code] to the [code]subresources[/code] argument which "
+"will copy the subresources.\n"
+"[b]Note:[/b] If [code]subresources[/code] is [code]true[/code], this method "
+"will only perform a shallow copy. Nested resources within subresources will "
+"not be duplicated and will still be shared."
msgstr ""
-#: doc/classes/Resource.xml:33
+#: doc/classes/Resource.xml:35
msgid ""
"If [member resource_local_to_scene] is enabled and the resource was loaded "
"from a [PackedScene] instantiation, returns the local scene where this "
"resource's unique copy is in use. Otherwise, returns [code]null[/code]."
msgstr ""
-#: doc/classes/Resource.xml:40
+#: doc/classes/Resource.xml:42
msgid ""
"Returns the RID of the resource (or an empty RID). Many resources (such as "
"[Texture2D], [Mesh], etc) are high-level abstractions of resources stored in "
"a server, so this function will return the original RID."
msgstr ""
-#: doc/classes/Resource.xml:47
+#: doc/classes/Resource.xml:49
msgid ""
"This method is called when a resource with [member resource_local_to_scene] "
"enabled is loaded from a [PackedScene] instantiation. Its behavior can be "
@@ -44647,7 +45847,7 @@ msgid ""
"local viewport."
msgstr ""
-#: doc/classes/Resource.xml:57
+#: doc/classes/Resource.xml:59
msgid ""
"Sets the path of the resource, potentially overriding an existing cache "
"entry for this path. This differs from setting [member resource_path], as "
@@ -44655,25 +45855,25 @@ msgid ""
"given path."
msgstr ""
-#: doc/classes/Resource.xml:63
+#: doc/classes/Resource.xml:65
msgid ""
"If [code]true[/code], the resource will be made unique in each instance of "
"its local scene. It can thus be modified in a scene instance without "
"impacting other instances of that same scene."
msgstr ""
-#: doc/classes/Resource.xml:66
+#: doc/classes/Resource.xml:68
msgid "The name of the resource. This is an optional identifier."
msgstr ""
-#: doc/classes/Resource.xml:69
+#: doc/classes/Resource.xml:71
msgid ""
"The path to the resource. In case it has its own file, it will return its "
"filepath. If it's tied to the scene, it will return the scene's path, "
"followed by the resource's index."
msgstr ""
-#: doc/classes/Resource.xml:75
+#: doc/classes/Resource.xml:77
msgid "Emitted whenever the resource changes."
msgstr ""
@@ -45492,11 +46692,11 @@ msgid ""
"global coordinate system, but is centered at the object's origin."
msgstr ""
-#: doc/classes/RigidBody2D.xml:87
+#: doc/classes/RigidBody2D.xml:87 doc/classes/RigidBody3D.xml:99
msgid ""
-"Returns a list of the bodies colliding with this one. Use [member "
-"contacts_reported] to set the maximum number reported. You must also set "
-"[member contact_monitor] to [code]true[/code].\n"
+"Returns a list of the bodies colliding with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
"For performance, list of collisions is updated once per frame and before the "
"physics step. Consider using signals instead."
@@ -45533,7 +46733,7 @@ msgstr ""
msgid "The body's total applied torque."
msgstr ""
-#: doc/classes/RigidBody2D.xml:130 doc/classes/RigidBody3D.xml:150
+#: doc/classes/RigidBody2D.xml:130 doc/classes/RigidBody3D.xml:157
msgid ""
"If [code]true[/code], the body can enter sleep mode when there is no "
"movement. See [member sleeping]."
@@ -45545,11 +46745,17 @@ msgid ""
"another RigidBody2D. See also [member contacts_reported]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:136
-msgid "The maximum number of contacts to report."
+#: doc/classes/RigidBody2D.xml:136 doc/classes/RigidBody3D.xml:163
+msgid ""
+"The maximum number of contacts that will be recorded. Requires [member "
+"contact_monitor] to be set to [code]true[/code].\n"
+"[b]Note:[/b] The number of contacts is different from the number of "
+"collisions. Collisions between parallel edges will result in two contacts "
+"(one at each end), and collisions between parallel faces will result in four "
+"contacts (one at each corner)."
msgstr ""
-#: doc/classes/RigidBody2D.xml:139
+#: doc/classes/RigidBody2D.xml:140
msgid ""
"Continuous collision detection mode.\n"
"Continuous collision detection tries to predict where a moving body will "
@@ -45559,21 +46765,21 @@ msgid ""
"methods are available. See [enum CCDMode] for details."
msgstr ""
-#: doc/classes/RigidBody2D.xml:143
+#: doc/classes/RigidBody2D.xml:144
msgid ""
"If [code]true[/code], internal force integration is disabled for this body. "
"Aside from collision response, the body will only move as determined by the "
"[method _integrate_forces] function."
msgstr ""
-#: doc/classes/RigidBody2D.xml:146
+#: doc/classes/RigidBody2D.xml:147
msgid ""
"Multiplies the gravity applied to the body. The body's gravity is calculated "
"from the [b]Default Gravity[/b] value in [b]Project > Project Settings > "
"Physics > 2d[/b] and/or any additional gravity vector applied by [Area2D]s."
msgstr ""
-#: doc/classes/RigidBody2D.xml:149
+#: doc/classes/RigidBody2D.xml:150
msgid ""
"The body's moment of inertia. This is like mass, but for rotation: it "
"determines how much torque it takes to rotate the body. The moment of "
@@ -45582,18 +46788,18 @@ msgid ""
"automatically computing it."
msgstr ""
-#: doc/classes/RigidBody2D.xml:152
+#: doc/classes/RigidBody2D.xml:153
msgid ""
"Damps the body's [member linear_velocity]. If [code]-1[/code], the body will "
"use the [b]Default Linear Damp[/b] in [b]Project > Project Settings > "
"Physics > 2d[/b]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:161
+#: doc/classes/RigidBody2D.xml:162
msgid "The body's mode. See [enum Mode] for possible values."
msgstr ""
-#: doc/classes/RigidBody2D.xml:164 doc/classes/RigidBody3D.xml:181
+#: doc/classes/RigidBody2D.xml:165 doc/classes/RigidBody3D.xml:189
#: doc/classes/StaticBody2D.xml:22 doc/classes/StaticBody3D.xml:22
msgid ""
"The physics material override for the body.\n"
@@ -45601,50 +46807,50 @@ msgid ""
"other physics material, such as an inherited one."
msgstr ""
-#: doc/classes/RigidBody2D.xml:168 doc/classes/RigidBody3D.xml:185
+#: doc/classes/RigidBody2D.xml:169 doc/classes/RigidBody3D.xml:193
msgid ""
"If [code]true[/code], the body will not move and will not calculate forces "
"until woken up by another body through, for example, a collision, or by "
"using the [method apply_impulse] or [method add_force] methods."
msgstr ""
-#: doc/classes/RigidBody2D.xml:171
+#: doc/classes/RigidBody2D.xml:172
msgid ""
"The body's weight based on its mass and the [b]Default Gravity[/b] value in "
"[b]Project > Project Settings > Physics > 2d[/b]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:179
+#: doc/classes/RigidBody2D.xml:180 doc/classes/RigidBody3D.xml:204
msgid ""
-"Emitted when a body enters into contact with this one. [member "
-"contact_monitor] must be [code]true[/code] and [member contacts_reported] "
-"greater than [code]0[/code]."
+"Emitted when a body enters into contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:186
+#: doc/classes/RigidBody2D.xml:187
msgid ""
-"Emitted when a body exits contact with this one. [member contact_monitor] "
-"must be [code]true[/code] and [member contacts_reported] greater than "
-"[code]0[/code]."
+"Emitted when a body exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:199
+#: doc/classes/RigidBody2D.xml:200
msgid ""
"Emitted when a body enters into contact with this one. Reports colliding "
"shape information. See [CollisionObject2D] for shape index information. "
-"[member contact_monitor] must be [code]true[/code] and [member "
-"contacts_reported] greater than [code]0[/code]."
+"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:212
+#: doc/classes/RigidBody2D.xml:213
msgid ""
"Emitted when a body shape exits contact with this one. Reports colliding "
"shape information. See [CollisionObject2D] for shape index information. "
-"[member contact_monitor] must be [code]true[/code] and [member "
-"contacts_reported] greater than [code]0[/code]."
+"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:217 doc/classes/RigidBody3D.xml:236
+#: doc/classes/RigidBody2D.xml:218 doc/classes/RigidBody3D.xml:244
msgid ""
"Emitted when the physics engine changes the body's sleeping state.\n"
"[b]Note:[/b] Changing the value [member sleeping] will not trigger this "
@@ -45652,41 +46858,41 @@ msgid ""
"engine or [code]emit_signal(\"sleeping_state_changed\")[/code] is used."
msgstr ""
-#: doc/classes/RigidBody2D.xml:224
+#: doc/classes/RigidBody2D.xml:225
msgid ""
"Rigid mode. The body behaves as a physical object. It collides with other "
"bodies and responds to forces applied to it. This is the default mode."
msgstr ""
-#: doc/classes/RigidBody2D.xml:227
+#: doc/classes/RigidBody2D.xml:228
msgid "Static mode. The body behaves like a [StaticBody2D] and does not move."
msgstr ""
-#: doc/classes/RigidBody2D.xml:230
+#: doc/classes/RigidBody2D.xml:231
msgid ""
"Character mode. Similar to [constant MODE_RIGID], but the body can not "
"rotate."
msgstr ""
-#: doc/classes/RigidBody2D.xml:233
+#: doc/classes/RigidBody2D.xml:234
msgid ""
"Kinematic mode. The body behaves like a [KinematicBody2D], and must be moved "
"by code."
msgstr ""
-#: doc/classes/RigidBody2D.xml:236
+#: doc/classes/RigidBody2D.xml:237
msgid ""
"Continuous collision detection disabled. This is the fastest way to detect "
"body collisions, but can miss small, fast-moving objects."
msgstr ""
-#: doc/classes/RigidBody2D.xml:239
+#: doc/classes/RigidBody2D.xml:240
msgid ""
"Continuous collision detection enabled using raycasting. This is faster than "
"shapecasting but less precise."
msgstr ""
-#: doc/classes/RigidBody2D.xml:242
+#: doc/classes/RigidBody2D.xml:243
msgid ""
"Continuous collision detection enabled using shapecasting. This is the "
"slowest CCD method and the most precise."
@@ -45772,42 +46978,31 @@ msgid ""
"locked."
msgstr ""
-#: doc/classes/RigidBody3D.xml:99
+#: doc/classes/RigidBody3D.xml:107
msgid ""
-"Returns a list of the bodies colliding with this one. By default, number of "
-"max contacts reported is at 0, see the [member contacts_reported] property "
-"to increase it.\n"
-"[b]Note:[/b] The result of this test is not immediate after moving objects. "
-"For performance, list of collisions is updated once per frame and before the "
-"physics step. Consider using signals instead."
+"Returns the inverse inertia tensor basis. This is used to calculate the "
+"angular acceleration resulting from a torque applied to the [RigidBody3D]."
msgstr ""
-#: doc/classes/RigidBody3D.xml:111
+#: doc/classes/RigidBody3D.xml:118
msgid "Locks the specified linear or rotational axis."
msgstr ""
-#: doc/classes/RigidBody3D.xml:126
+#: doc/classes/RigidBody3D.xml:133
msgid "Damps RigidBody3D's rotational forces."
msgstr ""
-#: doc/classes/RigidBody3D.xml:129
+#: doc/classes/RigidBody3D.xml:136
msgid "RigidBody3D's rotational velocity."
msgstr ""
-#: doc/classes/RigidBody3D.xml:153
+#: doc/classes/RigidBody3D.xml:160
msgid ""
"If [code]true[/code], the RigidBody3D will emit signals when it collides "
-"with another RigidBody3D."
+"with another RigidBody3D. See also [member contacts_reported]."
msgstr ""
-#: doc/classes/RigidBody3D.xml:156
-msgid ""
-"The maximum contacts to report. Bodies can keep a log of the contacts with "
-"other bodies, this is enabled by setting the maximum amount of contacts "
-"reported to a number greater than 0."
-msgstr ""
-
-#: doc/classes/RigidBody3D.xml:159
+#: doc/classes/RigidBody3D.xml:167
msgid ""
"If [code]true[/code], continuous collision detection is used.\n"
"Continuous collision detection tries to predict where a moving body will "
@@ -45817,7 +47012,7 @@ msgid ""
"faster to compute, but can miss small, fast-moving objects."
msgstr ""
-#: doc/classes/RigidBody3D.xml:163
+#: doc/classes/RigidBody3D.xml:171
msgid ""
"If [code]true[/code], internal force integration will be disabled (like "
"gravity or air friction) for this body. Other than collision response, the "
@@ -45825,7 +47020,7 @@ msgid ""
"function, if defined."
msgstr ""
-#: doc/classes/RigidBody3D.xml:166
+#: doc/classes/RigidBody3D.xml:174
msgid ""
"This is multiplied by the global 3D gravity setting found in [b]Project > "
"Project Settings > Physics > 3d[/b] to produce RigidBody3D's gravity. For "
@@ -45833,14 +47028,14 @@ msgid ""
"and 0.5 will apply half gravity to this object."
msgstr ""
-#: doc/classes/RigidBody3D.xml:169
+#: doc/classes/RigidBody3D.xml:177
msgid ""
"The body's linear damp. Cannot be less than -1.0. If this value is different "
"from -1.0, any linear damp derived from the world or areas will be "
"overridden."
msgstr ""
-#: doc/classes/RigidBody3D.xml:172
+#: doc/classes/RigidBody3D.xml:180
msgid ""
"The body's linear velocity. Can be used sporadically, but [b]don't set this "
"every frame[/b], because physics may run in another thread and runs at a "
@@ -45848,60 +47043,57 @@ msgid ""
"for precise control of the body state."
msgstr ""
-#: doc/classes/RigidBody3D.xml:178
+#: doc/classes/RigidBody3D.xml:186
msgid "The body mode. See [enum Mode] for possible values."
msgstr ""
-#: doc/classes/RigidBody3D.xml:196
-msgid ""
-"Emitted when a body enters into contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work."
-msgstr ""
-
-#: doc/classes/RigidBody3D.xml:203
+#: doc/classes/RigidBody3D.xml:211
msgid ""
-"Emitted when a body shape exits contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work."
+"Emitted when a body shape exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody3D.xml:216
+#: doc/classes/RigidBody3D.xml:224
msgid ""
-"Emitted when a body enters into contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work.\n"
+"Emitted when a body enters into contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"This signal not only receives the body that collided with this one, but also "
"its [RID] ([code]body_id[/code]), the shape index from the colliding body "
"([code]body_shape[/code]), and the shape index from this body "
"([code]local_shape[/code]) the other body collided with."
msgstr ""
-#: doc/classes/RigidBody3D.xml:230
+#: doc/classes/RigidBody3D.xml:238
msgid ""
-"Emitted when a body shape exits contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work.\n"
+"Emitted when a body shape exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"This signal not only receives the body that stopped colliding with this one, "
"but also its [RID] ([code]body_id[/code]), the shape index from the "
"colliding body ([code]body_shape[/code]), and the shape index from this body "
"([code]local_shape[/code]) the other body stopped colliding with."
msgstr ""
-#: doc/classes/RigidBody3D.xml:243
+#: doc/classes/RigidBody3D.xml:251
msgid ""
"Rigid body mode. This is the \"natural\" state of a rigid body. It is "
"affected by forces, and can move, rotate, and be affected by user code."
msgstr ""
-#: doc/classes/RigidBody3D.xml:246
+#: doc/classes/RigidBody3D.xml:254
msgid ""
"Static mode. The body behaves like a [StaticBody3D], and can only move by "
"user code."
msgstr ""
-#: doc/classes/RigidBody3D.xml:249
+#: doc/classes/RigidBody3D.xml:257
msgid ""
"Character body mode. This behaves like a rigid body, but can not rotate."
msgstr ""
-#: doc/classes/RigidBody3D.xml:252
+#: doc/classes/RigidBody3D.xml:260
msgid ""
"Kinematic body mode. The body behaves like a [KinematicBody3D], and can only "
"move by user code."
@@ -46408,7 +47600,7 @@ msgstr ""
msgid "The time remaining."
msgstr ""
-#: doc/classes/SceneTreeTimer.xml:28 doc/classes/Timer.xml:62
+#: doc/classes/SceneTreeTimer.xml:28 doc/classes/Timer.xml:63
msgid "Emitted when the timer reaches 0."
msgstr ""
@@ -46531,27 +47723,27 @@ msgid ""
"the singleton using [method EditorInterface.get_script_editor]."
msgstr ""
-#: doc/classes/ScriptEditor.xml:40
+#: doc/classes/ScriptEditor.xml:46
msgid "Returns a [Script] that is currently active in editor."
msgstr ""
-#: doc/classes/ScriptEditor.xml:57
+#: doc/classes/ScriptEditor.xml:69
msgid ""
"Returns an array with all [Script] objects which are currently open in "
"editor."
msgstr ""
-#: doc/classes/ScriptEditor.xml:66
+#: doc/classes/ScriptEditor.xml:78
msgid "Goes to the specified line in the current script."
msgstr ""
-#: doc/classes/ScriptEditor.xml:85
+#: doc/classes/ScriptEditor.xml:113
msgid ""
"Emitted when user changed active script. Argument is a freshly activated "
"[Script]."
msgstr ""
-#: doc/classes/ScriptEditor.xml:92
+#: doc/classes/ScriptEditor.xml:120
msgid ""
"Emitted when editor is about to close the active script. Argument is a "
"[Script] that is going to be closed."
@@ -46613,7 +47805,7 @@ msgid ""
"visible."
msgstr ""
-#: doc/classes/ScrollContainer.xml:37 doc/classes/TextEdit.xml:453
+#: doc/classes/ScrollContainer.xml:37 doc/classes/TextEdit.xml:407
msgid "The current horizontal scroll value."
msgstr ""
@@ -46621,7 +47813,7 @@ msgstr ""
msgid "If [code]true[/code], enables horizontal scrolling."
msgstr ""
-#: doc/classes/ScrollContainer.xml:43 doc/classes/TextEdit.xml:456
+#: doc/classes/ScrollContainer.xml:43 doc/classes/TextEdit.xml:410
msgid "The current vertical scroll value."
msgstr ""
@@ -47140,7 +48332,7 @@ msgstr ""
msgid ""
"Sets the global pose transform, [code]pose[/code], for the bone at "
"[code]bone_idx[/code].\n"
-"[code]amount[/code] is the interpolation strengh that will be used when "
+"[code]amount[/code] is the interpolation strength that will be used when "
"applying the pose, and [code]persistent[/code] determines if the applied "
"pose will remain.\n"
"[b]Note[/b]: The pose transform needs to be in bone space. Use [method "
@@ -47157,7 +48349,7 @@ msgstr ""
#: doc/classes/Skeleton3D.xml:266
msgid ""
-"Returns the pose transform for bone [code]bone_idx[/code].\n"
+"Sets the pose transform for bone [code]bone_idx[/code].\n"
"[b]Note[/b]: The pose transform needs to be in bone space. Use [method "
"world_transform_to_bone_transform] to convert a world transform, like one "
"you can get from a [Node3D], to bone space."
@@ -47250,6 +48442,16 @@ msgstr ""
#: doc/classes/Sky.xml:52
msgid ""
+"Automatically selects the appropriate process mode based on your sky shader. "
+"If your shader uses [code]TIME[/code] or [code]POSITION[/code], this will "
+"use [constant PROCESS_MODE_REALTIME]. If your shader uses any of the "
+"[code]LIGHT_*[/code] variables or any custom uniforms, this uses [constant "
+"PROCESS_MODE_INCREMENTAL]. Otherwise, this defaults to [constant "
+"PROCESS_MODE_QUALITY]."
+msgstr ""
+
+#: doc/classes/Sky.xml:55
+msgid ""
"Uses high quality importance sampling to process the radiance map. In "
"general, this results in much higher quality than [constant "
"PROCESS_MODE_REALTIME] but takes much longer to generate. This should not be "
@@ -47259,10 +48461,22 @@ msgid ""
"ggx_samples]."
msgstr ""
-#: doc/classes/Sky.xml:55
+#: doc/classes/Sky.xml:58
+msgid ""
+"Uses the same high quality importance sampling to process the radiance map "
+"as [constant PROCESS_MODE_QUALITY], but updates over several frames. The "
+"number of frames is determined by [member ProjectSettings.rendering/quality/"
+"reflections/roughness_layers]. Use this when you need highest quality "
+"radiance maps, but have a sky that updates slowly."
+msgstr ""
+
+#: doc/classes/Sky.xml:61
msgid ""
"Uses the fast filtering algorithm to process the radiance map. In general "
-"this results in lower quality, but substantially faster run times.\n"
+"this results in lower quality, but substantially faster run times. If you "
+"need better quality, but still need to update the sky every frame, consider "
+"turning on [member ProjectSettings.rendering/quality/reflections/"
+"fast_filter_high_quality].\n"
"[b]Note:[/b] The fast filtering algorithm is limited to 256x256 cubemaps, so "
"[member radiance_size] must be set to [constant RADIANCE_SIZE_256]."
msgstr ""
@@ -47599,10 +48813,9 @@ msgid ""
msgstr ""
#: doc/classes/SpringArm3D.xml:35
-msgid ""
-"Returns the proportion between the current arm length (after checking for "
-"collisions) and the [member spring_length]. Ranges from 0 to 1."
-msgstr ""
+#, fuzzy
+msgid "Returns the spring arm's current length."
+msgstr "指定ã—ãŸãƒ•ãƒ¬ãƒ¼ãƒ ã®é…延値を返ã—ã¾ã™ã€‚"
#: doc/classes/SpringArm3D.xml:44
msgid ""
@@ -48297,7 +49510,7 @@ msgstr ""
msgid ""
"This is the built-in string class (and the one used by GDScript). It "
"supports Unicode and provides all necessary means for string handling. "
-"Strings are reference counted and use a copy-on-write approach, so passing "
+"Strings are reference-counted and use a copy-on-write approach, so passing "
"them around is cheap in resources."
msgstr ""
@@ -48452,26 +49665,32 @@ msgstr ""
#: doc/classes/String.xml:328
msgid ""
"Returns a copy of the string with escaped characters replaced by their "
-"meanings according to the C language standard."
+"meanings. Supported escape sequences are [code]\\'[/code], [code]\\\"[/"
+"code], [code]\\?[/code], [code]\\\\[/code], [code]\\a[/code], [code]\\b[/"
+"code], [code]\\f[/code], [code]\\n[/code], [code]\\r[/code], [code]\\t[/"
+"code], [code]\\v[/code].\n"
+"[b]Note:[/b] Unlike the GDScript parser, this method doesn't support the "
+"[code]\\uXXXX[/code] escape sequence."
msgstr ""
-#: doc/classes/String.xml:335
+#: doc/classes/String.xml:336
msgid ""
-"Changes the case of some letters. Replaces underscores with spaces, converts "
-"all letters to lowercase, then capitalizes first and every letter following "
-"the space character. For [code]capitalize camelCase mixed_with_underscores[/"
-"code], it will return [code]Capitalize Camelcase Mixed With Underscores[/"
+"Changes the case of some letters. Replaces underscores with spaces, adds "
+"spaces before in-word uppercase characters, converts all letters to "
+"lowercase, then capitalizes the first letter and every letter following a "
+"space character. For [code]capitalize camelCase mixed_with_underscores[/"
+"code], it will return [code]Capitalize Camel Case Mixed With Underscores[/"
"code]."
msgstr ""
-#: doc/classes/String.xml:344
+#: doc/classes/String.xml:345
msgid ""
"Performs a case-sensitive comparison to another string. Returns [code]-1[/"
"code] if less than, [code]+1[/code] if greater than, or [code]0[/code] if "
"equal."
msgstr ""
-#: doc/classes/String.xml:357
+#: doc/classes/String.xml:358
msgid ""
"Returns the number of occurrences of substring [code]what[/code] between "
"[code]from[/code] and [code]to[/code] positions. If [code]from[/code] and "
@@ -48479,7 +49698,7 @@ msgid ""
"code] equals 0 the remained substring will be used."
msgstr ""
-#: doc/classes/String.xml:370
+#: doc/classes/String.xml:371
msgid ""
"Returns the number of occurrences of substring [code]what[/code] (ignoring "
"case) between [code]from[/code] and [code]to[/code] positions. If "
@@ -48487,35 +49706,34 @@ msgid ""
"used. If only [code]to[/code] equals 0 the remained substring will be used."
msgstr ""
-#: doc/classes/String.xml:377
+#: doc/classes/String.xml:378
msgid ""
"Returns a copy of the string with indentation (leading tabs and spaces) "
"removed."
msgstr ""
-#: doc/classes/String.xml:384
-#, fuzzy
+#: doc/classes/String.xml:385
msgid ""
"Returns [code]true[/code] if the length of the string equals [code]0[/code]."
msgstr ""
-"[code]s[/code] ãŒã‚¼ãƒ­ã‚ã‚‹ã„ã¯ã€ã»ã¼ã‚¼ãƒ­ã§ã‚れ㰠[code]true[/code] ã‚’è¿”ã—ã¾"
-"ã™ã€‚"
+"文字列ã®é•·ã•ãŒ [code]0[/code] ã«ç­‰ã—ã‘れ㰠[code]true[/code] ã‚’è¿”ã—ã¾ã™ã€‚"
-#: doc/classes/String.xml:393
+#: doc/classes/String.xml:394
msgid "Returns [code]true[/code] if the string ends with the given string."
msgstr ""
-#: doc/classes/String.xml:404
+#: doc/classes/String.xml:405
msgid ""
"Erases [code]chars[/code] characters from the string starting from "
"[code]position[/code]."
msgstr ""
-#: doc/classes/String.xml:415
+#: doc/classes/String.xml:416
msgid ""
-"Finds the first occurrence of a substring. Returns the starting position of "
-"the substring or [code]-1[/code] if not found. Optionally, the initial "
-"search index can be passed.\n"
+"Returns the index of the [b]first[/b] case-sensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the end of the "
+"string.\n"
"[b]Note:[/b] If you just want to know whether a string contains a substring, "
"use the [code]in[/code] operator as follows:\n"
"[codeblock]\n"
@@ -48525,48 +49743,42 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:430
-msgid ""
-"Finds the last occurrence of a substring. Returns the starting position of "
-"the substring or [code]-1[/code] if not found."
-msgstr ""
-
-#: doc/classes/String.xml:441
+#: doc/classes/String.xml:433
msgid ""
-"Finds the first occurrence of a substring, ignoring case. Returns the "
-"starting position of the substring or [code]-1[/code] if not found. "
-"Optionally, the initial search index can be passed."
+"Returns the index of the [b]first[/b] case-insensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the end of the string."
msgstr ""
-#: doc/classes/String.xml:452
+#: doc/classes/String.xml:444
msgid ""
"Formats the string by replacing all occurrences of [code]placeholder[/code] "
"with [code]values[/code]."
msgstr ""
-#: doc/classes/String.xml:459
+#: doc/classes/String.xml:451
msgid "If the string is a valid file path, returns the base directory name."
msgstr ""
-#: doc/classes/String.xml:466
+#: doc/classes/String.xml:458
msgid ""
"If the string is a valid file path, returns the full file path without the "
"extension."
msgstr ""
-#: doc/classes/String.xml:473
+#: doc/classes/String.xml:465
msgid "If the string is a valid file path, returns the extension."
msgstr ""
-#: doc/classes/String.xml:480
+#: doc/classes/String.xml:472
msgid "If the string is a valid file path, returns the filename."
msgstr ""
-#: doc/classes/String.xml:487
+#: doc/classes/String.xml:479
msgid "Hashes the string and returns a 32-bit integer."
msgstr ""
-#: doc/classes/String.xml:494
+#: doc/classes/String.xml:486
msgid ""
"Converts a string containing a hexadecimal number into an integer. "
"Hexadecimal strings are expected to be prefixed with \"[code]0x[/code]\" "
@@ -48576,7 +49788,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:504
+#: doc/classes/String.xml:496
msgid ""
"Escapes (encodes) a string to URL friendly format. Also referred to as 'URL "
"encode'.\n"
@@ -48586,7 +49798,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:514
+#: doc/classes/String.xml:506
msgid ""
"Unescapes (decodes) a string in URL encoded format. Also referred to as 'URL "
"decode'.\n"
@@ -48596,7 +49808,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:526
+#: doc/classes/String.xml:518
msgid ""
"Converts [code]size[/code] represented as number of bytes to human-readable "
"format using internationalized set of data size units, namely: B, KiB, MiB, "
@@ -48609,48 +49821,48 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:542
+#: doc/classes/String.xml:534
msgid ""
"Returns a copy of the string with the substring [code]what[/code] inserted "
"at the given position."
msgstr ""
-#: doc/classes/String.xml:549
+#: doc/classes/String.xml:541
msgid ""
"If the string is a path to a file or directory, returns [code]true[/code] if "
"the path is absolute."
msgstr ""
-#: doc/classes/String.xml:556
+#: doc/classes/String.xml:548
msgid ""
"If the string is a path to a file or directory, returns [code]true[/code] if "
"the path is relative."
msgstr ""
-#: doc/classes/String.xml:565
+#: doc/classes/String.xml:557
msgid ""
"Returns [code]true[/code] if this string is a subsequence of the given "
"string."
msgstr ""
-#: doc/classes/String.xml:574
+#: doc/classes/String.xml:566
msgid ""
"Returns [code]true[/code] if this string is a subsequence of the given "
"string, without considering case."
msgstr ""
-#: doc/classes/String.xml:581
+#: doc/classes/String.xml:573
msgid ""
"Returns [code]true[/code] if this string is free from characters that aren't "
"allowed in file names, those being:\n"
"[code]: / \\ ? * \" | % < >[/code]"
msgstr ""
-#: doc/classes/String.xml:589
+#: doc/classes/String.xml:581
msgid "Returns [code]true[/code] if this string contains a valid float."
msgstr ""
-#: doc/classes/String.xml:598
+#: doc/classes/String.xml:590
msgid ""
"Returns [code]true[/code] if this string contains a valid hexadecimal "
"number. If [code]with_prefix[/code] is [code]true[/code], then a validity of "
@@ -48658,7 +49870,7 @@ msgid ""
"instance: [code]0xDEADC0DE[/code]."
msgstr ""
-#: doc/classes/String.xml:605
+#: doc/classes/String.xml:597
msgid ""
"Returns [code]true[/code] if this string contains a valid color in "
"hexadecimal HTML notation. Other HTML notations such as named colors or "
@@ -48666,22 +49878,22 @@ msgid ""
"return [code]false[/code]."
msgstr ""
-#: doc/classes/String.xml:612
+#: doc/classes/String.xml:604
msgid ""
"Returns [code]true[/code] if this string is a valid identifier. A valid "
"identifier may contain only letters, digits and underscores ([code]_[/code]) "
"and the first character may not be a digit."
msgstr ""
-#: doc/classes/String.xml:619
+#: doc/classes/String.xml:611
msgid "Returns [code]true[/code] if this string contains a valid integer."
msgstr ""
-#: doc/classes/String.xml:626
+#: doc/classes/String.xml:618
msgid "Returns [code]true[/code] if this string contains a valid IP address."
msgstr ""
-#: doc/classes/String.xml:635
+#: doc/classes/String.xml:627
msgid ""
"Return a [String] which is the concatenation of the [code]parts[/code]. The "
"separator between elements is the string providing this method.\n"
@@ -48691,121 +49903,125 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:646
+#: doc/classes/String.xml:638
msgid ""
"Returns a copy of the string with special characters escaped using the JSON "
"standard."
msgstr ""
-#: doc/classes/String.xml:655
+#: doc/classes/String.xml:647
msgid "Returns a number of characters from the left of the string."
msgstr ""
-#: doc/classes/String.xml:662
+#: doc/classes/String.xml:654
msgid "Returns the string's amount of characters."
msgstr ""
-#: doc/classes/String.xml:671
+#: doc/classes/String.xml:663
msgid "Returns a copy of the string with characters removed from the left."
msgstr ""
-#: doc/classes/String.xml:680
+#: doc/classes/String.xml:672
msgid ""
"Does a simple case-sensitive expression match, where [code]\"*\"[/code] "
"matches zero or more arbitrary characters and [code]\"?\"[/code] matches any "
"single character except a period ([code]\".\"[/code])."
msgstr ""
-#: doc/classes/String.xml:689
+#: doc/classes/String.xml:681
msgid ""
"Does a simple case-insensitive expression match, where [code]\"*\"[/code] "
"matches zero or more arbitrary characters and [code]\"?\"[/code] matches any "
"single character except a period ([code]\".\"[/code])."
msgstr ""
-#: doc/classes/String.xml:696
+#: doc/classes/String.xml:688
msgid "Returns the MD5 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:703
+#: doc/classes/String.xml:695
msgid "Returns the MD5 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:712
+#: doc/classes/String.xml:704
msgid ""
"Performs a case-insensitive comparison to another string. Returns [code]-1[/"
"code] if less than, [code]+1[/code] if greater than, or [code]0[/code] if "
"equal."
msgstr ""
-#: doc/classes/String.xml:721
+#: doc/classes/String.xml:713
msgid "Returns the character code at position [code]at[/code]."
msgstr ""
-#: doc/classes/String.xml:730
+#: doc/classes/String.xml:722
msgid ""
"Formats a number to have an exact number of [code]digits[/code] after the "
"decimal point."
msgstr ""
-#: doc/classes/String.xml:739
+#: doc/classes/String.xml:731
msgid ""
"Formats a number to have an exact number of [code]digits[/code] before the "
"decimal point."
msgstr ""
-#: doc/classes/String.xml:746
+#: doc/classes/String.xml:738
msgid "Decode a percent-encoded string. See [method percent_encode]."
msgstr ""
-#: doc/classes/String.xml:753
+#: doc/classes/String.xml:745
msgid ""
"Percent-encodes a string. Encodes parameters in a URL when sending a HTTP "
"GET request (and bodies of form-urlencoded POST requests)."
msgstr ""
-#: doc/classes/String.xml:762
+#: doc/classes/String.xml:754
msgid ""
"If the string is a path, this concatenates [code]file[/code] at the end of "
"the string as a subpath. E.g. [code]\"this/is\".plus_file(\"path\") == "
"\"this/is/path\"[/code]."
msgstr ""
-#: doc/classes/String.xml:771
+#: doc/classes/String.xml:763
msgid ""
"Returns original string repeated a number of times. The number of "
"repetitions is given by the argument."
msgstr ""
-#: doc/classes/String.xml:782
+#: doc/classes/String.xml:774
msgid ""
"Replaces occurrences of a case-sensitive substring with the given one inside "
"the string."
msgstr ""
-#: doc/classes/String.xml:793
+#: doc/classes/String.xml:785
msgid ""
"Replaces occurrences of a case-insensitive substring with the given one "
"inside the string."
msgstr ""
-#: doc/classes/String.xml:804
+#: doc/classes/String.xml:796
msgid ""
-"Performs a case-sensitive search for a substring, but starts from the end of "
-"the string instead of the beginning."
+"Returns the index of the [b]last[/b] case-sensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the beginning of the "
+"string."
msgstr ""
-#: doc/classes/String.xml:815
+#: doc/classes/String.xml:807
msgid ""
-"Performs a case-insensitive search for a substring, but starts from the end "
-"of the string instead of the beginning."
+"Returns the index of the [b]last[/b] case-insensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the beginning of the "
+"string."
msgstr ""
-#: doc/classes/String.xml:824
+#: doc/classes/String.xml:816
msgid "Returns the right side of the string from a given position."
msgstr ""
-#: doc/classes/String.xml:837
+#: doc/classes/String.xml:829
msgid ""
"Splits the string by a [code]delimiter[/code] string and returns an array of "
"the substrings, starting from right.\n"
@@ -48824,39 +50040,39 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:856
+#: doc/classes/String.xml:848
msgid "Returns a copy of the string with characters removed from the right."
msgstr ""
-#: doc/classes/String.xml:863
+#: doc/classes/String.xml:855
msgid "Returns the SHA-1 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:870
+#: doc/classes/String.xml:862
msgid "Returns the SHA-1 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:877
+#: doc/classes/String.xml:869
msgid "Returns the SHA-256 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:884
+#: doc/classes/String.xml:876
msgid "Returns the SHA-256 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:893
+#: doc/classes/String.xml:885
msgid ""
"Returns the similarity index of the text compared to this string. 1 means "
"totally similar and 0 means totally dissimilar."
msgstr ""
-#: doc/classes/String.xml:906
+#: doc/classes/String.xml:898
msgid ""
"Splits the string by a [code]delimiter[/code] string and returns an array of "
-"the substrings.\n"
+"the substrings. The [code]delimiter[/code] can be of any length.\n"
"If [code]maxsplit[/code] is specified, it defines the number of splits to do "
-"from the left up to [code]maxsplit[/code]. The default value of 0 means that "
-"all items are split.\n"
+"from the left up to [code]maxsplit[/code]. The default value of [code]0[/"
+"code] means that all items are split.\n"
"Example:\n"
"[codeblock]\n"
"var some_string = \"One,Two,Three,Four\"\n"
@@ -48864,10 +50080,12 @@ msgid ""
"print(some_array.size()) # Prints 2\n"
"print(some_array[0]) # Prints \"One\"\n"
"print(some_array[1]) # Prints \"Two,Three,Four\"\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"If you need to split strings with more complex rules, use the [RegEx] class "
+"instead."
msgstr ""
-#: doc/classes/String.xml:926
+#: doc/classes/String.xml:919
msgid ""
"Splits the string in floats by using a delimiter string and returns an array "
"of the substrings.\n"
@@ -48875,7 +50093,7 @@ msgid ""
"split by [code]\",\"[/code]."
msgstr ""
-#: doc/classes/String.xml:938
+#: doc/classes/String.xml:931
msgid ""
"Returns a copy of the string stripped of any non-printable character "
"(including tabulations, spaces and line breaks) at the beginning and the "
@@ -48883,7 +50101,7 @@ msgid ""
"right edges respectively."
msgstr ""
-#: doc/classes/String.xml:945
+#: doc/classes/String.xml:938
msgid ""
"Returns a copy of the string stripped of any escape character. These include "
"all non-printable control characters of the first page of the ASCII table (< "
@@ -48891,14 +50109,14 @@ msgid ""
"code] and [code]\\r[/code]) characters, but not spaces."
msgstr ""
-#: doc/classes/String.xml:956
+#: doc/classes/String.xml:949
msgid ""
"Returns part of the string from the position [code]from[/code] with length "
"[code]len[/code]. Argument [code]len[/code] is optional and using [code]-1[/"
"code] will return remaining characters from given position."
msgstr ""
-#: doc/classes/String.xml:963
+#: doc/classes/String.xml:956
msgid ""
"Converts the String (which is a character array) to [PackedByteArray] (which "
"is an array of bytes). The conversion is faster compared to [method "
@@ -48906,25 +50124,25 @@ msgid ""
"ASCII characters."
msgstr ""
-#: doc/classes/String.xml:970
+#: doc/classes/String.xml:963
msgid ""
"Converts a string containing a decimal number into a [code]float[/code]."
msgstr ""
-#: doc/classes/String.xml:977
+#: doc/classes/String.xml:970
msgid ""
"Converts a string containing an integer number into an [code]int[/code]."
msgstr ""
-#: doc/classes/String.xml:984
+#: doc/classes/String.xml:977
msgid "Returns the string converted to lowercase."
msgstr ""
-#: doc/classes/String.xml:991
+#: doc/classes/String.xml:984
msgid "Returns the string converted to uppercase."
msgstr ""
-#: doc/classes/String.xml:998
+#: doc/classes/String.xml:991
msgid ""
"Converts the String (which is an array of characters) to [PackedByteArray] "
"(which is an array of bytes). The conversion is a bit slower than [method "
@@ -48932,25 +50150,25 @@ msgid ""
"this function over [method to_ascii]."
msgstr ""
-#: doc/classes/String.xml:1007
+#: doc/classes/String.xml:1000
msgid ""
"Removes a given string from the start if it starts with it or leaves the "
"string unchanged."
msgstr ""
-#: doc/classes/String.xml:1016
+#: doc/classes/String.xml:1009
msgid ""
"Removes a given string from the end if it ends with it or leaves the string "
"unchanged."
msgstr ""
-#: doc/classes/String.xml:1023
+#: doc/classes/String.xml:1016
msgid ""
"Returns a copy of the string with special characters escaped using the XML "
"standard."
msgstr ""
-#: doc/classes/String.xml:1030
+#: doc/classes/String.xml:1023
msgid ""
"Returns a copy of the string with escaped characters replaced by their "
"meanings according to the XML standard."
@@ -50182,50 +51400,42 @@ msgid ""
"undo/redo."
msgstr ""
-#: doc/classes/TextEdit.xml:24
-msgid "Adds color region (given the delimiters) and its colors."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:35
-msgid "Adds a [code]keyword[/code] and its [Color]."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:44
+#: doc/classes/TextEdit.xml:18
msgid ""
"Returns if the given line is foldable, that is, it has indented lines right "
"below it."
msgstr ""
-#: doc/classes/TextEdit.xml:57
+#: doc/classes/TextEdit.xml:25
msgid ""
-"Clears all custom syntax coloring information previously added with [method "
-"add_color_region] or [method add_keyword_color]."
+"Centers the viewport on the line the editing cursor is at. This also resets "
+"the [member scroll_horizontal] value to [code]0[/code]."
msgstr ""
-#: doc/classes/TextEdit.xml:64
+#: doc/classes/TextEdit.xml:32
msgid "Clears the undo history."
msgstr ""
-#: doc/classes/TextEdit.xml:71
+#: doc/classes/TextEdit.xml:39
msgid "Copy's the current text selection."
msgstr ""
-#: doc/classes/TextEdit.xml:78
+#: doc/classes/TextEdit.xml:46
msgid "Returns the column the editing cursor is at."
msgstr ""
-#: doc/classes/TextEdit.xml:85
+#: doc/classes/TextEdit.xml:53
msgid "Returns the line the editing cursor is at."
msgstr ""
-#: doc/classes/TextEdit.xml:96
+#: doc/classes/TextEdit.xml:64
msgid ""
"Moves the cursor at the specified [code]column[/code] index.\n"
"If [code]adjust_viewport[/code] is set to [code]true[/code], the viewport "
"will center at the cursor position after the move occurs."
msgstr ""
-#: doc/classes/TextEdit.xml:112
+#: doc/classes/TextEdit.xml:80
msgid ""
"Moves the cursor at the specified [code]line[/code] index.\n"
"If [code]adjust_viewport[/code] is set to [code]true[/code], the viewport "
@@ -50234,111 +51444,101 @@ msgid ""
"[code]line[/code] can be hidden using [method set_line_as_hidden]."
msgstr ""
-#: doc/classes/TextEdit.xml:121
+#: doc/classes/TextEdit.xml:89
msgid "Cut's the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:128
+#: doc/classes/TextEdit.xml:96
msgid "Deselects the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:135
+#: doc/classes/TextEdit.xml:103
msgid "Folds all lines that are possible to be folded (see [method can_fold])."
msgstr ""
-#: doc/classes/TextEdit.xml:144
+#: doc/classes/TextEdit.xml:112
msgid "Folds the given line, if possible (see [method can_fold])."
msgstr ""
-#: doc/classes/TextEdit.xml:151
+#: doc/classes/TextEdit.xml:119
msgid "Returns an array containing the line number of each breakpoint."
msgstr ""
-#: doc/classes/TextEdit.xml:160
-msgid "Returns the [Color] of the specified [code]keyword[/code]."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:169
+#: doc/classes/TextEdit.xml:128
msgid "Returns the text of a specific line."
msgstr ""
-#: doc/classes/TextEdit.xml:176
+#: doc/classes/TextEdit.xml:135
msgid "Returns the amount of total lines in the text."
msgstr ""
-#: doc/classes/TextEdit.xml:183
+#: doc/classes/TextEdit.xml:142
msgid ""
"Returns the [PopupMenu] of this [TextEdit]. By default, this menu is "
"displayed when right-clicking on the [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:190
+#: doc/classes/TextEdit.xml:149
msgid "Returns the selection begin column."
msgstr ""
-#: doc/classes/TextEdit.xml:197
+#: doc/classes/TextEdit.xml:156
msgid "Returns the selection begin line."
msgstr ""
-#: doc/classes/TextEdit.xml:204
+#: doc/classes/TextEdit.xml:163
msgid "Returns the text inside the selection."
msgstr ""
-#: doc/classes/TextEdit.xml:211
+#: doc/classes/TextEdit.xml:170
msgid "Returns the selection end column."
msgstr ""
-#: doc/classes/TextEdit.xml:218
+#: doc/classes/TextEdit.xml:177
msgid "Returns the selection end line."
msgstr ""
-#: doc/classes/TextEdit.xml:225
+#: doc/classes/TextEdit.xml:184
msgid "Returns a [String] text with the word under the mouse cursor location."
msgstr ""
-#: doc/classes/TextEdit.xml:234
-msgid ""
-"Returns whether the specified [code]keyword[/code] has a color set to it or "
-"not."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:243
+#: doc/classes/TextEdit.xml:193
msgid "Insert the specified text at the cursor position."
msgstr ""
-#: doc/classes/TextEdit.xml:252
+#: doc/classes/TextEdit.xml:202
msgid "Returns whether the line at the specified index is folded or not."
msgstr ""
-#: doc/classes/TextEdit.xml:261
+#: doc/classes/TextEdit.xml:211
msgid "Returns whether the line at the specified index is hidden or not."
msgstr ""
-#: doc/classes/TextEdit.xml:268
+#: doc/classes/TextEdit.xml:218
msgid "Returns [code]true[/code] if the selection is active."
msgstr ""
-#: doc/classes/TextEdit.xml:277
+#: doc/classes/TextEdit.xml:227
msgid ""
"Triggers a right-click menu action by the specified index. See [enum "
"MenuItems] for a list of available indexes."
msgstr ""
-#: doc/classes/TextEdit.xml:284
+#: doc/classes/TextEdit.xml:234
msgid "Paste the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:291
+#: doc/classes/TextEdit.xml:241
msgid "Perform redo operation."
msgstr ""
-#: doc/classes/TextEdit.xml:298
+#: doc/classes/TextEdit.xml:248
msgid ""
"Removes all the breakpoints. This will not fire the [signal "
"breakpoint_toggled] signal."
msgstr ""
-#: doc/classes/TextEdit.xml:313
+#: doc/classes/TextEdit.xml:263
msgid ""
"Perform a search inside the text. Search flags can be specified in the [enum "
"SearchFlags] enum.\n"
@@ -50354,244 +51554,265 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/TextEdit.xml:336
-msgid "Perform selection, from line/column to line/column."
+#: doc/classes/TextEdit.xml:286
+msgid ""
+"Perform selection, from line/column to line/column.\n"
+"If [member selecting_enabled] is [code]false[/code], no selection will occur."
msgstr ""
-#: doc/classes/TextEdit.xml:343
-msgid "Select all the text."
+#: doc/classes/TextEdit.xml:294
+msgid ""
+"Select all the text.\n"
+"If [member selecting_enabled] is [code]false[/code], no selection will occur."
msgstr ""
-#: doc/classes/TextEdit.xml:354
+#: doc/classes/TextEdit.xml:306
msgid "Sets the text for a specific line."
msgstr ""
-#: doc/classes/TextEdit.xml:365
+#: doc/classes/TextEdit.xml:317
msgid "If [code]true[/code], hides the line of the specified index."
msgstr ""
-#: doc/classes/TextEdit.xml:374
+#: doc/classes/TextEdit.xml:326
msgid "Toggle the folding of the code block at the given line."
msgstr ""
-#: doc/classes/TextEdit.xml:381
+#: doc/classes/TextEdit.xml:333
msgid "Perform undo operation."
msgstr ""
-#: doc/classes/TextEdit.xml:390
+#: doc/classes/TextEdit.xml:342
msgid "Unfolds the given line, if folded."
msgstr ""
-#: doc/classes/TextEdit.xml:397
+#: doc/classes/TextEdit.xml:349
msgid ""
"Unhide all lines that were previously set to hidden by [method "
"set_line_as_hidden]."
msgstr ""
-#: doc/classes/TextEdit.xml:403
+#: doc/classes/TextEdit.xml:355
msgid "If [code]true[/code], the breakpoint gutter is visible."
msgstr ""
-#: doc/classes/TextEdit.xml:412
+#: doc/classes/TextEdit.xml:364
msgid ""
"If [code]true[/code], the caret displays as a rectangle.\n"
"If [code]false[/code], the caret displays as a bar."
msgstr ""
-#: doc/classes/TextEdit.xml:416
+#: doc/classes/TextEdit.xml:368
msgid ""
"If [code]true[/code], a right-click moves the cursor at the mouse position "
"before displaying the context menu.\n"
"If [code]false[/code], the context menu disregards mouse location."
msgstr ""
-#: doc/classes/TextEdit.xml:420
+#: doc/classes/TextEdit.xml:372
msgid "If [code]true[/code], a right-click displays the context menu."
msgstr ""
-#: doc/classes/TextEdit.xml:423
+#: doc/classes/TextEdit.xml:375
msgid ""
"If [code]true[/code], the \"space\" character will have a visible "
"representation."
msgstr ""
-#: doc/classes/TextEdit.xml:426
+#: doc/classes/TextEdit.xml:378
msgid ""
"If [code]true[/code], the \"tab\" character will have a visible "
"representation."
msgstr ""
-#: doc/classes/TextEdit.xml:430
+#: doc/classes/TextEdit.xml:382
msgid ""
"If [code]true[/code], the fold gutter is visible. This enables folding "
"groups of indented lines."
msgstr ""
-#: doc/classes/TextEdit.xml:433
+#: doc/classes/TextEdit.xml:385
msgid ""
"If [code]true[/code], all lines that have been set to hidden by [method "
"set_line_as_hidden], will not be visible."
msgstr ""
-#: doc/classes/TextEdit.xml:436
+#: doc/classes/TextEdit.xml:388
msgid ""
"If [code]true[/code], all occurrences of the selected text will be "
"highlighted."
msgstr ""
-#: doc/classes/TextEdit.xml:439
+#: doc/classes/TextEdit.xml:391
msgid "If [code]true[/code], the line containing the cursor is highlighted."
msgstr ""
-#: doc/classes/TextEdit.xml:447
+#: doc/classes/TextEdit.xml:394
+msgid ""
+"If [code]true[/code], a minimap is shown, providing an outline of your "
+"source code."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:397
+msgid "The width, in pixels, of the minimap."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:401
msgid ""
"If [code]true[/code], custom [code]font_color_selected[/code] will be used "
"for selected text."
msgstr ""
-#: doc/classes/TextEdit.xml:450
+#: doc/classes/TextEdit.xml:404
msgid ""
"If [code]true[/code], read-only mode is enabled. Existing text cannot be "
"modified and new text cannot be added."
msgstr ""
-#: doc/classes/TextEdit.xml:463
+#: doc/classes/TextEdit.xml:413
msgid ""
-"If [code]true[/code], line numbers are displayed to the left of the text."
+"If [code]true[/code], text can be selected.\n"
+"If [code]false[/code], text can not be selected by the user or by the "
+"[method select] or [method select_all] methods."
msgstr ""
-#: doc/classes/TextEdit.xml:466
+#: doc/classes/TextEdit.xml:417
msgid ""
-"If [code]true[/code], sets the [code]step[/code] of the scrollbars to "
-"[code]0.25[/code] which results in smoother scrolling."
+"If [code]true[/code], shortcut keys for context menu items are enabled, even "
+"if the context menu is disabled."
msgstr ""
-#: doc/classes/TextEdit.xml:469
+#: doc/classes/TextEdit.xml:420
msgid ""
-"If [code]true[/code], any custom color properties that have been set for "
-"this [TextEdit] will be visible."
+"If [code]true[/code], line numbers are displayed to the left of the text."
msgstr ""
-#: doc/classes/TextEdit.xml:472
+#: doc/classes/TextEdit.xml:423
+msgid ""
+"If [code]true[/code], sets the [code]step[/code] of the scrollbars to "
+"[code]0.25[/code] which results in smoother scrolling."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:428
msgid "String value of the [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:475
+#: doc/classes/TextEdit.xml:431
msgid "Vertical scroll sensitivity."
msgstr ""
-#: doc/classes/TextEdit.xml:478
+#: doc/classes/TextEdit.xml:437
msgid ""
"If [code]true[/code], enables text wrapping when it goes beyond the edge of "
"what is visible."
msgstr ""
-#: doc/classes/TextEdit.xml:486
+#: doc/classes/TextEdit.xml:445
msgid "Emitted when a breakpoint is placed via the breakpoint gutter."
msgstr ""
-#: doc/classes/TextEdit.xml:491
+#: doc/classes/TextEdit.xml:450
msgid "Emitted when the cursor changes."
msgstr ""
-#: doc/classes/TextEdit.xml:500
+#: doc/classes/TextEdit.xml:459
msgid "Emitted when the info icon is clicked."
msgstr ""
-#: doc/classes/TextEdit.xml:531
+#: doc/classes/TextEdit.xml:496
msgid "Match case when searching."
msgstr ""
-#: doc/classes/TextEdit.xml:534
+#: doc/classes/TextEdit.xml:499
msgid "Match whole words when searching."
msgstr ""
-#: doc/classes/TextEdit.xml:537
+#: doc/classes/TextEdit.xml:502
msgid "Search from end to beginning."
msgstr ""
-#: doc/classes/TextEdit.xml:546
+#: doc/classes/TextEdit.xml:511
msgid ""
"Pastes the clipboard text over the selected text (or at the cursor's "
"position)."
msgstr ""
-#: doc/classes/TextEdit.xml:549
+#: doc/classes/TextEdit.xml:514
msgid "Erases the whole [TextEdit] text."
msgstr ""
-#: doc/classes/TextEdit.xml:552
+#: doc/classes/TextEdit.xml:517
msgid "Selects the whole [TextEdit] text."
msgstr ""
-#: doc/classes/TextEdit.xml:558
+#: doc/classes/TextEdit.xml:523
msgid "Redoes the previous action."
msgstr ""
-#: doc/classes/TextEdit.xml:566
+#: doc/classes/TextEdit.xml:531
msgid ""
"Sets the background [Color] of this [TextEdit]. [member syntax_highlighting] "
"has to be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:569
+#: doc/classes/TextEdit.xml:534
msgid ""
"Sets the [Color] of the bookmark marker. [member syntax_highlighting] has to "
"be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:574 doc/classes/TextEdit.xml:601
+#: doc/classes/TextEdit.xml:539 doc/classes/TextEdit.xml:566
msgid ""
"Sets the [Color] of the breakpoints. [member breakpoint_gutter] has to be "
"enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:612
+#: doc/classes/TextEdit.xml:577
msgid "Sets the default [Font]."
msgstr ""
-#: doc/classes/TextEdit.xml:615
+#: doc/classes/TextEdit.xml:580
msgid "Sets the font [Color]."
msgstr ""
-#: doc/classes/TextEdit.xml:620
+#: doc/classes/TextEdit.xml:585
msgid ""
"Sets the [Color] of the selected text. [member override_selected_font_color] "
"has to be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:625
+#: doc/classes/TextEdit.xml:588
msgid ""
"Sets the [Color] of the line numbers. [member show_line_numbers] has to be "
"enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:628
+#: doc/classes/TextEdit.xml:591
msgid "Sets the spacing between the lines."
msgstr ""
-#: doc/classes/TextEdit.xml:631
+#: doc/classes/TextEdit.xml:594
msgid "Sets the [Color] of marked text."
msgstr ""
-#: doc/classes/TextEdit.xml:636
+#: doc/classes/TextEdit.xml:597
msgid "Sets the [StyleBox] of this [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:641
+#: doc/classes/TextEdit.xml:600
msgid ""
"Sets the [StyleBox] of this [TextEdit] when [member readonly] is enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:646
+#: doc/classes/TextEdit.xml:605
msgid "Sets the highlight [Color] of text selections."
msgstr ""
-#: doc/classes/TextEdit.xml:653
+#: doc/classes/TextEdit.xml:610
msgid "Sets a custom [Texture2D] for tab text characters."
msgstr ""
-#: doc/classes/TextEdit.xml:656
+#: doc/classes/TextEdit.xml:613
msgid ""
"Sets the highlight [Color] of multiple occurrences. [member "
"highlight_all_occurrences] has to be enabled."
@@ -50669,80 +51890,80 @@ msgid ""
"the texture will not scale with the node."
msgstr ""
-#: doc/classes/TextureButton.xml:19
+#: doc/classes/TextureButton.xml:25
msgid ""
"Controls the texture's behavior when you resize the node's bounding "
"rectangle, [b]only if[/b] [member expand] is [code]true[/code]. Set it to "
"one of the [enum StretchMode] constants. See the constants to learn more."
msgstr ""
-#: doc/classes/TextureButton.xml:22
+#: doc/classes/TextureButton.xml:28
msgid ""
"Pure black and white [BitMap] image to use for click detection. On the mask, "
"white pixels represent the button's clickable area. Use it to create buttons "
"with curved shapes."
msgstr ""
-#: doc/classes/TextureButton.xml:25
+#: doc/classes/TextureButton.xml:31
msgid ""
"Texture to display when the node is disabled. See [member BaseButton."
"disabled]."
msgstr ""
-#: doc/classes/TextureButton.xml:28
+#: doc/classes/TextureButton.xml:34
msgid "Texture to display when the node has mouse or keyboard focus."
msgstr ""
-#: doc/classes/TextureButton.xml:31
+#: doc/classes/TextureButton.xml:37
msgid "Texture to display when the mouse hovers the node."
msgstr ""
-#: doc/classes/TextureButton.xml:34
+#: doc/classes/TextureButton.xml:40
msgid ""
"Texture to display by default, when the node is [b]not[/b] in the disabled, "
"focused, hover or pressed state."
msgstr ""
-#: doc/classes/TextureButton.xml:37
+#: doc/classes/TextureButton.xml:43
msgid ""
"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 "
"[member BaseButton.shortcut] key."
msgstr ""
-#: doc/classes/TextureButton.xml:42 doc/classes/TextureRect.xml:36
+#: doc/classes/TextureButton.xml:48 doc/classes/TextureRect.xml:36
msgid "Scale to fit the node's bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:45 doc/classes/TextureRect.xml:39
+#: doc/classes/TextureButton.xml:51 doc/classes/TextureRect.xml:39
msgid "Tile inside the node's bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:48 doc/classes/TextureRect.xml:42
+#: doc/classes/TextureButton.xml:54 doc/classes/TextureRect.xml:42
msgid ""
"The texture keeps its original size and stays in the bounding rectangle's "
"top-left corner."
msgstr ""
-#: doc/classes/TextureButton.xml:51 doc/classes/TextureRect.xml:45
+#: doc/classes/TextureButton.xml:57 doc/classes/TextureRect.xml:45
msgid ""
"The texture keeps its original size and stays centered in the node's "
"bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:54 doc/classes/TextureRect.xml:48
+#: doc/classes/TextureButton.xml:60 doc/classes/TextureRect.xml:48
msgid ""
"Scale the texture to fit the node's bounding rectangle, but maintain the "
"texture's aspect ratio."
msgstr ""
-#: doc/classes/TextureButton.xml:57
+#: doc/classes/TextureButton.xml:63
msgid ""
"Scale the texture to fit the node's bounding rectangle, center it, and "
"maintain its aspect ratio."
msgstr ""
-#: doc/classes/TextureButton.xml:60 doc/classes/TextureRect.xml:54
+#: doc/classes/TextureButton.xml:66 doc/classes/TextureRect.xml:54
msgid ""
"Scale the texture so that the shorter side fits the bounding rectangle. The "
"other side clips to the node's limits."
@@ -51192,19 +52413,26 @@ msgid ""
"advised if working with shared objects."
msgstr ""
-#: doc/classes/Thread.xml:17
+#: doc/classes/Thread.xml:11
+#, fuzzy
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/threads/thread_safe_apis."
+"html"
+msgstr "https://docs.godotengine.org/ja/latest/tutorials/math/index.html"
+
+#: doc/classes/Thread.xml:18
msgid ""
"Returns the current [Thread]'s ID, uniquely identifying it among all threads."
msgstr ""
-#: doc/classes/Thread.xml:24
+#: doc/classes/Thread.xml:25
msgid ""
"Returns [code]true[/code] if this [Thread] is currently active. An active "
"[Thread] cannot start work on a new method but can be joined with [method "
"wait_to_finish]."
msgstr ""
-#: doc/classes/Thread.xml:39
+#: doc/classes/Thread.xml:40
msgid ""
"Starts a new [Thread] that runs [code]method[/code] on object "
"[code]instance[/code] with [code]userdata[/code] passed as an argument. Even "
@@ -51214,21 +52442,21 @@ msgid ""
"Returns [constant OK] on success, or [constant ERR_CANT_CREATE] on failure."
msgstr ""
-#: doc/classes/Thread.xml:47
+#: doc/classes/Thread.xml:48
msgid ""
"Joins the [Thread] and waits for it to finish. Returns what the method "
"called returned."
msgstr ""
-#: doc/classes/Thread.xml:53
+#: doc/classes/Thread.xml:54
msgid "A thread running with lower priority than normally."
msgstr ""
-#: doc/classes/Thread.xml:56
+#: doc/classes/Thread.xml:57
msgid "A thread with a standard priority."
msgstr ""
-#: doc/classes/Thread.xml:59
+#: doc/classes/Thread.xml:60
msgid "A thread running with higher priority than normally."
msgstr ""
@@ -51763,50 +52991,61 @@ msgid "Returns the [Transform2D] of a tile's shape."
msgstr ""
#: doc/classes/TileSet.xml:481
-msgid "Returns an array of the tile's shapes."
+msgid ""
+"Returns an array of dictionaries describing the tile's shapes.\n"
+"[b]Dictionary structure in the array returned by this method:[/b]\n"
+"[codeblock]\n"
+"{\n"
+" \"autotile_coord\": Vector2,\n"
+" \"one_way\": bool,\n"
+" \"one_way_margin\": int,\n"
+" \"shape\": CollisionShape2D,\n"
+" \"shape_transform\": Transform2D,\n"
+"}\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/TileSet.xml:490
+#: doc/classes/TileSet.xml:500
msgid "Returns the tile's texture."
msgstr ""
-#: doc/classes/TileSet.xml:499
+#: doc/classes/TileSet.xml:509
msgid "Returns the texture offset of the tile."
msgstr ""
-#: doc/classes/TileSet.xml:508
+#: doc/classes/TileSet.xml:518
msgid "Returns the tile's [enum TileMode]."
msgstr ""
-#: doc/classes/TileSet.xml:517
+#: doc/classes/TileSet.xml:527
msgid "Returns the tile's Z index (drawing layer)."
msgstr ""
-#: doc/classes/TileSet.xml:528
+#: doc/classes/TileSet.xml:538
msgid "Sets a light occluder for the tile."
msgstr ""
-#: doc/classes/TileSet.xml:539
+#: doc/classes/TileSet.xml:549
msgid "Sets the tile's material."
msgstr ""
-#: doc/classes/TileSet.xml:550
+#: doc/classes/TileSet.xml:560
msgid "Sets the tile's modulation color."
msgstr ""
-#: doc/classes/TileSet.xml:561
+#: doc/classes/TileSet.xml:571
msgid "Sets the tile's name."
msgstr ""
-#: doc/classes/TileSet.xml:572
+#: doc/classes/TileSet.xml:582
msgid "Sets the tile's navigation polygon."
msgstr ""
-#: doc/classes/TileSet.xml:583
+#: doc/classes/TileSet.xml:593
msgid "Sets an offset for the tile's navigation polygon."
msgstr ""
-#: doc/classes/TileSet.xml:594
+#: doc/classes/TileSet.xml:604
msgid ""
"Sets the tile's normal map texture.\n"
"[b]Note:[/b] Godot expects the normal map to use X+, Y-, and Z+ coordinates. "
@@ -51815,48 +53054,48 @@ msgid ""
"a comparison of normal map coordinates expected by popular engines."
msgstr ""
-#: doc/classes/TileSet.xml:606
+#: doc/classes/TileSet.xml:616
msgid "Sets an offset for the tile's light occluder."
msgstr ""
-#: doc/classes/TileSet.xml:617
+#: doc/classes/TileSet.xml:627
msgid ""
"Sets the tile's sub-region in the texture. This is common in texture atlases."
msgstr ""
-#: doc/classes/TileSet.xml:630
+#: doc/classes/TileSet.xml:640
msgid "Sets a shape for the tile, enabling collision."
msgstr ""
-#: doc/classes/TileSet.xml:643
+#: doc/classes/TileSet.xml:653
msgid "Sets the offset of a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:656
+#: doc/classes/TileSet.xml:666
msgid "Enables one-way collision on a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:681
+#: doc/classes/TileSet.xml:691
msgid "Sets a [Transform2D] on a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:692
+#: doc/classes/TileSet.xml:702
msgid "Sets an array of shapes for the tile, enabling collision."
msgstr ""
-#: doc/classes/TileSet.xml:703
+#: doc/classes/TileSet.xml:713
msgid "Sets the tile's texture."
msgstr ""
-#: doc/classes/TileSet.xml:714
+#: doc/classes/TileSet.xml:724
msgid "Sets the tile's texture offset."
msgstr ""
-#: doc/classes/TileSet.xml:725
+#: doc/classes/TileSet.xml:735
msgid "Sets the tile's [enum TileMode]."
msgstr ""
-#: doc/classes/TileSet.xml:736
+#: doc/classes/TileSet.xml:746
msgid "Sets the tile's drawing index."
msgstr ""
@@ -51867,14 +53106,16 @@ msgstr ""
#: doc/classes/Timer.xml:7
msgid ""
"Counts down a specified interval and emits a signal on reaching 0. Can be "
-"set to repeat or \"one-shot\" mode."
+"set to repeat or \"one-shot\" mode.\n"
+"[b]Note:[/b] To create an one-shot timer without instantiating a node, use "
+"[method SceneTree.create_timer]."
msgstr ""
-#: doc/classes/Timer.xml:16
+#: doc/classes/Timer.xml:17
msgid "Returns [code]true[/code] if the timer is stopped."
msgstr ""
-#: doc/classes/Timer.xml:25
+#: doc/classes/Timer.xml:26
msgid ""
"Starts the timer. Sets [code]wait_time[/code] to [code]time_sec[/code] if "
"[code]time_sec > 0[/code]. This also resets the remaining time to "
@@ -51882,11 +53123,11 @@ msgid ""
"[b]Note:[/b] this method will not resume a paused timer. See [member paused]."
msgstr ""
-#: doc/classes/Timer.xml:33
+#: doc/classes/Timer.xml:34
msgid "Stops the timer."
msgstr ""
-#: doc/classes/Timer.xml:39
+#: doc/classes/Timer.xml:40
msgid ""
"If [code]true[/code], the timer will automatically start when entering the "
"scene tree.\n"
@@ -51894,40 +53135,40 @@ msgid ""
"the timer enters the scene tree and starts."
msgstr ""
-#: doc/classes/Timer.xml:43
+#: doc/classes/Timer.xml:44
msgid ""
"If [code]true[/code], the timer will stop when reaching 0. If [code]false[/"
"code], it will restart."
msgstr ""
-#: doc/classes/Timer.xml:46
+#: doc/classes/Timer.xml:47
msgid ""
"If [code]true[/code], the timer is paused and will not process until it is "
"unpaused again, even if [method start] is called."
msgstr ""
-#: doc/classes/Timer.xml:49
+#: doc/classes/Timer.xml:50
msgid "Processing mode. See [enum TimerProcessMode]."
msgstr ""
-#: doc/classes/Timer.xml:52
+#: doc/classes/Timer.xml:53
msgid ""
"The timer's remaining time in seconds. Returns 0 if the timer is inactive.\n"
"[b]Note:[/b] You cannot set this value. To change the timer's remaining "
"time, use [method start]."
msgstr ""
-#: doc/classes/Timer.xml:56
+#: doc/classes/Timer.xml:57
msgid "Wait time in seconds."
msgstr ""
-#: doc/classes/Timer.xml:68
+#: doc/classes/Timer.xml:69
msgid ""
"Update the timer during the physics step at each frame (fixed framerate "
"processing)."
msgstr ""
-#: doc/classes/Timer.xml:71
+#: doc/classes/Timer.xml:72
msgid "Update the timer during the idle time at each frame."
msgstr ""
@@ -52006,60 +53247,67 @@ msgstr ""
#: doc/classes/Transform.xml:7
msgid ""
-"Represents one or many transformations in 3D space such as translation, "
-"rotation, or scaling. It consists of a [member basis] and an [member "
-"origin]. It is similar to a 3×4 matrix."
+"3×4 matrix (3 rows, 4 columns) used for 3D linear transformations. It can "
+"represent transformations such as translation, rotation, or scaling. It "
+"consists of a [member basis] (first 3 columns) and a [Vector3] for the "
+"[member origin] (last column).\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
msgstr ""
-#: doc/classes/Transform.xml:26
+#: doc/classes/Transform.xml:28
msgid ""
-"Constructs the Transform from four [Vector3]. Each axis corresponds to local "
-"basis vectors (some of which may be scaled)."
+"Constructs a Transform from four [Vector3] values (matrix columns). Each "
+"axis corresponds to local basis vectors (some of which may be scaled)."
msgstr ""
-#: doc/classes/Transform.xml:37
-msgid "Constructs the Transform from a [Basis] and [Vector3]."
+#: doc/classes/Transform.xml:39
+msgid "Constructs a Transform from a [Basis] and [Vector3]."
msgstr ""
-#: doc/classes/Transform.xml:46
-msgid "Constructs the Transform from a [Transform2D]."
-msgstr ""
+#: doc/classes/Transform.xml:48
+#, fuzzy
+msgid "Constructs a Transform from a [Transform2D]."
+msgstr "トランスフォームトラックã«ãƒˆãƒ©ãƒ³ã‚¹ãƒ•ã‚©ãƒ¼ãƒ ã‚­ãƒ¼ã‚’挿入ã—ã¾ã™ã€‚"
-#: doc/classes/Transform.xml:55
+#: doc/classes/Transform.xml:57
msgid ""
-"Constructs the Transform from a [Quat]. The origin will be Vector3(0, 0, 0)."
+"Constructs a Transform from a [Quat]. The origin will be [code]Vector3(0, 0, "
+"0)[/code]."
msgstr ""
-#: doc/classes/Transform.xml:64
+#: doc/classes/Transform.xml:66
msgid ""
"Constructs the Transform from a [Basis]. The origin will be Vector3(0, 0, 0)."
msgstr ""
-#: doc/classes/Transform.xml:71
+#: doc/classes/Transform.xml:73 doc/classes/Transform2D.xml:51
msgid ""
"Returns the inverse of the transform, under the assumption that the "
"transformation is composed of rotation, scaling and translation."
msgstr ""
-#: doc/classes/Transform.xml:82
-msgid "Interpolates the transform to other Transform by weight amount (0-1)."
+#: doc/classes/Transform.xml:84
+msgid ""
+"Interpolates the transform to other Transform by weight amount (on the range "
+"of 0.0 to 1.0)."
msgstr ""
-#: doc/classes/Transform.xml:89 doc/classes/Transform2D.xml:106
+#: doc/classes/Transform.xml:91
msgid ""
"Returns the inverse of the transform, under the assumption that the "
"transformation is composed of rotation and translation (no scaling, use "
"affine_inverse for transforms with scaling)."
msgstr ""
-#: doc/classes/Transform.xml:98 doc/classes/Transform2D.xml:115
+#: doc/classes/Transform.xml:100 doc/classes/Transform2D.xml:119
msgid ""
"Returns [code]true[/code] if this transform and [code]transform[/code] are "
"approximately equal, by calling [code]is_equal_approx[/code] on each "
"component."
msgstr ""
-#: doc/classes/Transform.xml:109
+#: doc/classes/Transform.xml:111
msgid ""
"Returns a copy of the transform rotated such that its -Z axis points towards "
"the [code]target[/code] position.\n"
@@ -52069,25 +53317,25 @@ msgid ""
"Operations take place in global space."
msgstr ""
-#: doc/classes/Transform.xml:118 doc/classes/Transform2D.xml:122
+#: doc/classes/Transform.xml:120
msgid ""
"Returns the transform with the basis orthogonal (90 degrees), and normalized "
"axis vectors."
msgstr ""
-#: doc/classes/Transform.xml:129
+#: doc/classes/Transform.xml:131
msgid ""
"Rotates the transform around the given axis by the given angle (in radians), "
"using matrix multiplication. The axis must be a normalized vector."
msgstr ""
-#: doc/classes/Transform.xml:138
+#: doc/classes/Transform.xml:140
msgid ""
"Scales basis and origin of the transform by the given scale factor, using "
"matrix multiplication."
msgstr ""
-#: doc/classes/Transform.xml:147 doc/classes/Transform2D.xml:149
+#: doc/classes/Transform.xml:149 doc/classes/Transform2D.xml:153
msgid ""
"Translates the transform by the given offset, relative to the transform's "
"basis vectors.\n"
@@ -52095,152 +53343,162 @@ msgid ""
"multiplication."
msgstr ""
-#: doc/classes/Transform.xml:157
+#: doc/classes/Transform.xml:159
msgid ""
"Transforms the given [Vector3], [Plane], [AABB], or [PackedVector3Array] by "
"this transform."
msgstr ""
-#: doc/classes/Transform.xml:166
+#: doc/classes/Transform.xml:168
msgid ""
"Inverse-transforms the given [Vector3], [Plane], [AABB], or "
"[PackedVector3Array] by this transform."
msgstr ""
-#: doc/classes/Transform.xml:172
+#: doc/classes/Transform.xml:174
msgid ""
"The basis is a matrix containing 3 [Vector3] as its columns: X axis, Y axis, "
"and Z axis. These vectors can be interpreted as the basis vectors of local "
"coordinate system traveling with the object."
msgstr ""
-#: doc/classes/Transform.xml:175
-msgid "The translation offset of the transform."
+#: doc/classes/Transform.xml:177
+msgid ""
+"The translation offset of the transform (column 3, the fourth column). "
+"Equivalent to array index [code]3[/code]."
msgstr ""
-#: doc/classes/Transform.xml:180
+#: doc/classes/Transform.xml:182
msgid ""
"[Transform] with no translation, rotation or scaling applied. When applied "
"to other data structures, [constant IDENTITY] performs no transformation."
msgstr ""
-#: doc/classes/Transform.xml:183
+#: doc/classes/Transform.xml:185
msgid "[Transform] with mirroring applied perpendicular to the YZ plane."
msgstr ""
-#: doc/classes/Transform.xml:186
+#: doc/classes/Transform.xml:188
msgid "[Transform] with mirroring applied perpendicular to the XZ plane."
msgstr ""
-#: doc/classes/Transform.xml:189
+#: doc/classes/Transform.xml:191
msgid "[Transform] with mirroring applied perpendicular to the XY plane."
msgstr ""
#: doc/classes/Transform2D.xml:4
-msgid "2D transformation (3×2 matrix)."
+msgid "2D transformation (2×3 matrix)."
msgstr ""
#: doc/classes/Transform2D.xml:7
msgid ""
-"Represents one or many transformations in 2D space such as translation, "
-"rotation, or scaling. It consists of two [member x] and [member y] "
-"[Vector2]s and an [member origin]. It is similar to a 3×2 matrix."
+"2×3 matrix (2 rows, 3 columns) used for 2D linear transformations. It can "
+"represent transformations such as translation, rotation, or scaling. It "
+"consists of a three [Vector2] values: [member x], [member y], and the "
+"[member origin].\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
msgstr ""
-#: doc/classes/Transform2D.xml:18
+#: doc/classes/Transform2D.xml:20
msgid "Constructs the transform from a 3D [Transform]."
msgstr ""
-#: doc/classes/Transform2D.xml:31
+#: doc/classes/Transform2D.xml:33
msgid ""
-"Constructs the transform from 3 [Vector2]s representing x, y, and origin."
+"Constructs the transform from 3 [Vector2] values representing [member x], "
+"[member y], and the [member origin] (the three column vectors)."
msgstr ""
-#: doc/classes/Transform2D.xml:42
+#: doc/classes/Transform2D.xml:44
msgid "Constructs the transform from a given angle (in radians) and position."
msgstr ""
-#: doc/classes/Transform2D.xml:58
-msgid "Transforms the given vector by this transform's basis (no translation)."
+#: doc/classes/Transform2D.xml:60
+msgid ""
+"Returns a vector transformed (multiplied) by the basis matrix.\n"
+"This method does not account for translation (the origin vector)."
msgstr ""
-#: doc/classes/Transform2D.xml:67
+#: doc/classes/Transform2D.xml:70
msgid ""
-"Inverse-transforms the given vector by this transform's basis (no "
-"translation)."
+"Returns a vector transformed (multiplied) by the inverse basis matrix.\n"
+"This method does not account for translation (the origin vector)."
msgstr ""
-#: doc/classes/Transform2D.xml:74
+#: doc/classes/Transform2D.xml:78
msgid "Returns the transform's origin (translation)."
msgstr ""
-#: doc/classes/Transform2D.xml:81
+#: doc/classes/Transform2D.xml:85
msgid "Returns the transform's rotation (in radians)."
msgstr ""
-#: doc/classes/Transform2D.xml:88
+#: doc/classes/Transform2D.xml:92
msgid "Returns the scale."
msgstr ""
-#: doc/classes/Transform2D.xml:99
+#: doc/classes/Transform2D.xml:103
msgid ""
"Returns a transform interpolated between this transform and another by a "
-"given weight (0-1)."
+"given weight (on the range of 0.0 to 1.0)."
msgstr ""
-#: doc/classes/Transform2D.xml:131
+#: doc/classes/Transform2D.xml:110
+msgid ""
+"Returns the inverse of the transform, under the assumption that the "
+"transformation is composed of rotation and translation (no scaling, use "
+"[method affine_inverse] for transforms with scaling)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:126
+msgid ""
+"Returns the transform with the basis orthogonal (90 degrees), and normalized "
+"axis vectors (scale of 1 or -1)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:135
msgid ""
"Rotates the transform by the given angle (in radians), using matrix "
"multiplication."
msgstr ""
-#: doc/classes/Transform2D.xml:140
+#: doc/classes/Transform2D.xml:144
msgid ""
"Scales the transform by the given scale factor, using matrix multiplication."
msgstr ""
-#: doc/classes/Transform2D.xml:159
+#: doc/classes/Transform2D.xml:163
msgid ""
"Transforms the given [Vector2], [Rect2], or [PackedVector2Array] by this "
"transform."
msgstr ""
-#: doc/classes/Transform2D.xml:168
+#: doc/classes/Transform2D.xml:172
msgid ""
"Inverse-transforms the given [Vector2], [Rect2], or [PackedVector2Array] by "
"this transform."
msgstr ""
-#: doc/classes/Transform2D.xml:174
-msgid "The transform's translation offset."
-msgstr ""
-
-#: doc/classes/Transform2D.xml:177
-msgid ""
-"The X axis of 2×2 basis matrix containing 2 [Vector2]s as its columns: X "
-"axis and Y axis. These vectors can be interpreted as the basis vectors of "
-"local coordinate system traveling with the object."
-msgstr ""
-
-#: doc/classes/Transform2D.xml:180
+#: doc/classes/Transform2D.xml:178
msgid ""
-"The Y axis of 2×2 basis matrix containing 2 [Vector2]s as its columns: X "
-"axis and Y axis. These vectors can be interpreted as the basis vectors of "
-"local coordinate system traveling with the object."
+"The origin vector (column 2, the third column). Equivalent to array index "
+"[code]2[/code]. The origin vector represents translation."
msgstr ""
-#: doc/classes/Transform2D.xml:185
+#: doc/classes/Transform2D.xml:189
msgid ""
-"[Transform2D] with no translation, rotation or scaling applied. When applied "
-"to other data structures, [constant IDENTITY] performs no transformation."
+"The identity [Transform2D] with no translation, rotation or scaling applied. "
+"When applied to other data structures, [constant IDENTITY] performs no "
+"transformation."
msgstr ""
-#: doc/classes/Transform2D.xml:188
-msgid "[Transform2D] with mirroring applied parallel to the X axis."
+#: doc/classes/Transform2D.xml:192
+msgid "The [Transform2D] that will flip something along the X axis."
msgstr ""
-#: doc/classes/Transform2D.xml:191
-msgid "[Transform2D] with mirroring applied parallel to the Y axis."
+#: doc/classes/Transform2D.xml:195
+msgid "The [Transform2D] that will flip something along the Y axis."
msgstr ""
#: doc/classes/Translation.xml:4
@@ -52904,7 +54162,8 @@ msgid "Returns the column's cell mode."
msgstr ""
#: doc/classes/TreeItem.xml:121
-msgid "Returns the TreeItem's child items."
+msgid ""
+"Returns the TreeItem's first child item or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:130
@@ -52936,28 +54195,32 @@ msgid "Returns the icon [Texture2D] region as [Rect2]."
msgstr ""
#: doc/classes/TreeItem.xml:199
-msgid "Returns the next TreeItem in the tree."
+msgid ""
+"Returns the next TreeItem in the tree or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:208
msgid ""
-"Returns the next visible TreeItem in the tree.\n"
+"Returns the next visible TreeItem in the tree or a null object if there is "
+"none.\n"
"If [code]wrap[/code] is enabled, the method will wrap around to the first "
"visible element in the tree when called on the last visible element, "
"otherwise it returns [code]null[/code]."
msgstr ""
#: doc/classes/TreeItem.xml:216
-msgid "Returns the parent TreeItem."
+msgid "Returns the parent TreeItem or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:223
-msgid "Returns the previous TreeItem in the tree."
+msgid ""
+"Returns the previous TreeItem in the tree or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:232
msgid ""
-"Returns the previous visible TreeItem in the tree.\n"
+"Returns the previous visible TreeItem in the tree or a null object if there "
+"is none.\n"
"If [code]wrap[/code] is enabled, the method will wrap around to the last "
"visible element in the tree when called on the first visible element, "
"otherwise it returns [code]null[/code]."
@@ -53467,6 +54730,10 @@ msgid ""
"A simple server that opens a UDP socket and returns connected "
"[PacketPeerUDP] upon receiving new packets. See also [method PacketPeerUDP."
"connect_to_host].\n"
+"After starting the server ([method listen]), you will need to [method poll] "
+"it at regular intervals (e.g. inside [method Node._process]) for it to "
+"process new packets, delivering them to the appropriate [PacketPeerUDP], and "
+"taking new connections.\n"
"Below a small example of how it can be used:\n"
"[codeblock]\n"
"# server.gd\n"
@@ -53479,6 +54746,7 @@ msgid ""
" server.listen(4242)\n"
"\n"
"func _process(delta):\n"
+" server.poll() # Important!\n"
" if server.is_connection_available():\n"
" var peer : PacketPeerUDP = server.take_connection()\n"
" var pkt = peer.get_packet()\n"
@@ -53514,35 +54782,58 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/UDPServer.xml:60
+#: doc/classes/UDPServer.xml:62
+#, fuzzy
msgid ""
-"Returns [code]true[/code] if a packet with a new address/port combination is "
-"received on the socket."
+"Returns [code]true[/code] if a packet with a new address/port combination "
+"was received on the socket."
msgstr ""
+"スクリプトドメインãŒèª­ã¿è¾¼ã¾ã‚ŒãŸã‚‰ [code]true[/code] ã‚’è¿”ã—ã€ãれ以外ã§ã¯ "
+"[code]false[/code] ã‚’è¿”ã—ã¾ã™ã€‚"
-#: doc/classes/UDPServer.xml:67
+#: doc/classes/UDPServer.xml:69
msgid ""
"Returns [code]true[/code] if the socket is open and listening on a port."
msgstr ""
-#: doc/classes/UDPServer.xml:78
+#: doc/classes/UDPServer.xml:80
msgid ""
"Starts the server by opening a UDP socket listening on the given port. You "
"can optionally specify a [code]bind_address[/code] to only listen for "
"packets sent to that address. See also [method PacketPeerUDP.listen]."
msgstr ""
-#: doc/classes/UDPServer.xml:85
+#: doc/classes/UDPServer.xml:87
+msgid ""
+"Call this method at regular intervals (e.g. inside [method Node._process]) "
+"to process new packets. And packet from known address/port pair will be "
+"delivered to the appropriate [PacketPeerUDP], any packet received from an "
+"unknown address/port pair will be added as a pending connection (see [method "
+"is_connection_available], [method take_connection]). The maximum number of "
+"pending connection is defined via [member max_pending_connections]."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:94
msgid ""
-"Stops the server, closing the UDP socket if open. Will not disconnect any "
-"connected [PacketPeerUDP]."
+"Stops the server, closing the UDP socket if open. Will close all connected "
+"[PacketPeerUDP] accepted via [method take_connection] (remote peers will not "
+"be notified)."
msgstr ""
-#: doc/classes/UDPServer.xml:92
+#: doc/classes/UDPServer.xml:101
msgid ""
-"Returns a [PacketPeerUDP] connected to the address/port combination of the "
-"first packet in queue. Will return [code]null[/code] if no packet is in "
-"queue. See also [method PacketPeerUDP.connect_to_host]."
+"Returns the first pending connection (connected to the appropriate address/"
+"port). Will return [code]null[/code] if no new connection is available. See "
+"also [method is_connection_available], [method PacketPeerUDP."
+"connect_to_host]."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:107
+msgid ""
+"Define the maximum number of pending connections, during [method poll], any "
+"new pending connection exceeding that value will be automatically dropped. "
+"Setting this value to [code]0[/code] effectively prevents any new pending "
+"connection to be accepted (e.g. when all your players have connected)."
msgstr ""
#: doc/classes/UndoRedo.xml:4
@@ -54183,24 +55474,27 @@ msgstr ""
#: doc/classes/Vector2.xml:46
msgid ""
-"Returns the vector's angle in radians with respect to the X axis, or [code]"
-"(1, 0)[/code] vector.\n"
+"Returns this vector's angle with respect to the X axis, or [code](1, 0)[/"
+"code] vector, in radians.\n"
"Equivalent to the result of [method @GDScript.atan2] when called with the "
-"vector's [member x] and [member y] as parameters: [code]atan2(x, y)[/code]."
+"vector's [member y] and [member x] as parameters: [code]atan2(y, x)[/code]."
msgstr ""
#: doc/classes/Vector2.xml:56
-msgid "Returns the angle in radians between the two vectors."
-msgstr ""
+#, fuzzy
+msgid "Returns the angle to the given vector, in radians."
+msgstr "2ã¤ã®ãƒ™ã‚¯ãƒˆãƒ«ã®å‰°ä½™ã‚’è¿”ã—ã¾ã™ã€‚"
#: doc/classes/Vector2.xml:65
msgid ""
-"Returns the angle in radians between the line connecting the two points and "
-"the X coordinate."
+"Returns the angle between the line connecting the two points and the X axis, "
+"in radians."
msgstr ""
-#: doc/classes/Vector2.xml:72 doc/classes/Vector2i.xml:46
-msgid "Returns the ratio of [member x] to [member y]."
+#: doc/classes/Vector2.xml:72
+msgid ""
+"Returns the aspect ratio of this vector, the ratio of [member x] to [member "
+"y]."
msgstr ""
#: doc/classes/Vector2.xml:81 doc/classes/Vector3.xml:59
@@ -54209,24 +55503,28 @@ msgid ""
msgstr ""
#: doc/classes/Vector2.xml:88
-msgid "Returns the vector with all components rounded up."
+msgid ""
+"Returns the vector with all components rounded up (towards positive "
+"infinity)."
msgstr ""
#: doc/classes/Vector2.xml:97
-msgid "Returns the vector with a maximum length."
+msgid ""
+"Returns the vector with a maximum length by limiting its length to "
+"[code]length[/code]."
msgstr ""
#: doc/classes/Vector2.xml:106
-msgid ""
-"Returns the 2-dimensional analog of the cross product with the given vector."
-msgstr ""
+#, fuzzy
+msgid "Returns the cross product of this vector and [code]with[/code]."
+msgstr "インデックス [code]point[/code] ã®ãƒã‚¤ãƒ³ãƒˆã®ä½ç½®ã‚’è¿”ã—ã¾ã™ã€‚"
#: doc/classes/Vector2.xml:121
msgid ""
"Cubically interpolates between this vector and [code]b[/code] using "
"[code]pre_a[/code] and [code]post_b[/code] as handles, and returns the "
-"result at position [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation."
+"result at position [code]t[/code]. [code]t[/code] is on the range of 0.0 to "
+"1.0, representing the amount of interpolation."
msgstr ""
#: doc/classes/Vector2.xml:130 doc/classes/Vector3.xml:99
@@ -54234,182 +55532,203 @@ msgid ""
"Returns the normalized vector pointing from this vector to [code]b[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:139
+#: doc/classes/Vector2.xml:139 doc/classes/Vector3.xml:108
msgid ""
-"Returns the squared distance to vector [code]b[/code]. Prefer this function "
-"over [method distance_to] if you need to sort vectors or need the squared "
-"distance for some formula."
+"Returns the squared distance between this vector and [code]b[/code].\n"
+"This method runs faster than [method distance_to], so prefer it if you need "
+"to compare vectors or need the squared distance for some formula."
msgstr ""
-#: doc/classes/Vector2.xml:148
-msgid "Returns the distance to vector [code]b[/code]."
-msgstr ""
+#: doc/classes/Vector2.xml:149
+#, fuzzy
+msgid "Returns the distance between this vector and [code]to[/code]."
+msgstr "インデックス [code]point[/code] ã®ãƒã‚¤ãƒ³ãƒˆã®ä½ç½®ã‚’è¿”ã—ã¾ã™ã€‚"
-#: doc/classes/Vector2.xml:157
-msgid "Returns the dot product with vector [code]b[/code]."
+#: doc/classes/Vector2.xml:158
+msgid ""
+"Returns the dot product of this vector and [code]with[/code]. This can be "
+"used to compare the angle between two vectors. For example, this can be used "
+"to determine whether an enemy is facing the player.\n"
+"The dot product will be [code]0[/code] for a straight angle (90 degrees), "
+"greater than 0 for angles narrower than 90 degrees and lower than 0 for "
+"angles wider than 90 degrees.\n"
+"When using unit (normalized) vectors, the result will always be between "
+"[code]-1.0[/code] (180 degree angle) when the vectors are facing opposite "
+"directions, and [code]1.0[/code] (0 degree angle) when the vectors are "
+"aligned.\n"
+"[b]Note:[/b] [code]a.dot(b)[/code] is equivalent to [code]b.dot(a)[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:164
-msgid "Returns the vector with all components rounded down."
+#: doc/classes/Vector2.xml:168
+msgid ""
+"Returns the vector with all components rounded down (towards negative "
+"infinity)."
msgstr ""
-#: doc/classes/Vector2.xml:173 doc/classes/Vector3.xml:149
+#: doc/classes/Vector2.xml:177 doc/classes/Vector3.xml:153
msgid ""
"Returns [code]true[/code] if this vector and [code]v[/code] are "
"approximately equal, by running [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/Vector2.xml:180 doc/classes/Vector3.xml:156
-msgid "Returns [code]true[/code] if the vector is normalized."
+#: doc/classes/Vector2.xml:184 doc/classes/Vector3.xml:160
+#, fuzzy
+msgid ""
+"Returns [code]true[/code] if the vector is normalized, and false otherwise."
msgstr ""
+"MonoランタイムãŒåˆæœŸåŒ–完了ã™ã‚Œã° [code]true[/code] ã‚’è¿”ã—ã€ãれ以外ã§ã¯ "
+"[code]false[/code] ã‚’è¿”ã—ã¾ã™ã€‚"
-#: doc/classes/Vector2.xml:187 doc/classes/Vector3.xml:163
-msgid "Returns the vector's length."
-msgstr ""
+#: doc/classes/Vector2.xml:191 doc/classes/Vector3.xml:167
+#, fuzzy
+msgid "Returns the length (magnitude) of this vector."
+msgstr "2ã¤ã®ãƒ™ã‚¯ãƒˆãƒ«ã®å‰°ä½™ã‚’è¿”ã—ã¾ã™ã€‚"
-#: doc/classes/Vector2.xml:194
+#: doc/classes/Vector2.xml:198 doc/classes/Vector3.xml:174
msgid ""
-"Returns the vector's length squared. Prefer this method over [method length] "
-"if you need to sort vectors or need the squared length for some formula."
+"Returns the squared length (squared magnitude) of this vector.\n"
+"This method runs faster than [method length], so prefer it if you need to "
+"compare vectors or need the squared distance for some formula."
msgstr ""
-#: doc/classes/Vector2.xml:205
+#: doc/classes/Vector2.xml:210 doc/classes/Vector3.xml:186
msgid ""
"Returns the result of the linear interpolation between this vector and "
-"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation."
+"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is on the range of "
+"0.0 to 1.0, representing the amount of interpolation."
msgstr ""
-#: doc/classes/Vector2.xml:216 doc/classes/Vector3.xml:206
+#: doc/classes/Vector2.xml:221
msgid ""
"Moves the vector toward [code]to[/code] by the fixed [code]delta[/code] "
"amount."
msgstr ""
-#: doc/classes/Vector2.xml:223 doc/classes/Vector3.xml:213
+#: doc/classes/Vector2.xml:228 doc/classes/Vector3.xml:218
msgid ""
"Returns the vector scaled to unit length. Equivalent to [code]v / v.length()"
"[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:232 doc/classes/Vector3.xml:231
+#: doc/classes/Vector2.xml:237 doc/classes/Vector3.xml:236
msgid ""
-"Returns a vector composed of the [code]fposmod[/code] of this vector's "
+"Returns a vector composed of the [method @GDScript.fposmod] of this vector's "
"components and [code]mod[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:241 doc/classes/Vector3.xml:240
+#: doc/classes/Vector2.xml:246 doc/classes/Vector3.xml:245
msgid ""
-"Returns a vector composed of the [code]fposmod[/code] of this vector's "
+"Returns a vector composed of the [method @GDScript.fposmod] of this vector's "
"components and [code]modv[/code]'s components."
msgstr ""
-#: doc/classes/Vector2.xml:250 doc/classes/Vector3.xml:249
+#: doc/classes/Vector2.xml:255
msgid "Returns the vector projected onto the vector [code]b[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:259 doc/classes/Vector3.xml:258
+#: doc/classes/Vector2.xml:264
msgid "Returns the vector reflected from a plane defined by the given normal."
msgstr ""
-#: doc/classes/Vector2.xml:268
+#: doc/classes/Vector2.xml:273
msgid ""
"Returns the vector rotated by [code]phi[/code] radians. See also [method "
"@GDScript.deg2rad]."
msgstr ""
-#: doc/classes/Vector2.xml:275 doc/classes/Vector3.xml:276
+#: doc/classes/Vector2.xml:280
msgid ""
"Returns the vector with all components rounded to the nearest integer, with "
"halfway cases rounded away from zero."
msgstr ""
-#: doc/classes/Vector2.xml:282 doc/classes/Vector2i.xml:53
-#: doc/classes/Vector3.xml:283 doc/classes/Vector3i.xml:55
+#: doc/classes/Vector2.xml:287
msgid ""
"Returns the vector with each component set to one or negative one, depending "
-"on the signs of the components."
+"on the signs of the components, or zero if the component is zero, by calling "
+"[method @GDScript.sign] on each component."
msgstr ""
-#: doc/classes/Vector2.xml:293 doc/classes/Vector3.xml:294
+#: doc/classes/Vector2.xml:298 doc/classes/Vector3.xml:299
msgid ""
"Returns the result of spherical linear interpolation between this vector and "
-"[code]b[/code], by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation.\n"
+"[code]b[/code], by amount [code]t[/code]. [code]t[/code] is on the range of "
+"0.0 to 1.0, representing the amount of interpolation.\n"
"[b]Note:[/b] Both vectors must be normalized."
msgstr ""
-#: doc/classes/Vector2.xml:303 doc/classes/Vector3.xml:304
-msgid ""
-"Returns the component of the vector along a plane defined by the given "
-"normal."
+#: doc/classes/Vector2.xml:308 doc/classes/Vector3.xml:309
+msgid "Returns this vector slid along a plane defined by the given normal."
msgstr ""
-#: doc/classes/Vector2.xml:312 doc/classes/Vector3.xml:313
-msgid "Returns the vector snapped to a grid with the given size."
+#: doc/classes/Vector2.xml:317 doc/classes/Vector3.xml:318
+msgid ""
+"Returns this vector with each component snapped to the nearest multiple of "
+"[code]step[/code]. This can also be used to round to an arbitrary number of "
+"decimals."
msgstr ""
-#: doc/classes/Vector2.xml:319
-msgid "Returns a perpendicular vector."
+#: doc/classes/Vector2.xml:324
+msgid ""
+"Returns a perpendicular vector rotated 90 degrees counter-clockwise compared "
+"to the original, with the same length."
msgstr ""
-#: doc/classes/Vector2.xml:325 doc/classes/Vector2i.xml:59
-#: doc/classes/Vector3.xml:326 doc/classes/Vector3i.xml:61
+#: doc/classes/Vector2.xml:330 doc/classes/Vector2i.xml:59
+#: doc/classes/Vector3.xml:332 doc/classes/Vector3i.xml:61
msgid ""
"The vector's X component. Also accessible by using the index position [code]"
"[0][/code]."
msgstr ""
-#: doc/classes/Vector2.xml:328 doc/classes/Vector2i.xml:62
-#: doc/classes/Vector3.xml:329 doc/classes/Vector3i.xml:64
+#: doc/classes/Vector2.xml:333 doc/classes/Vector2i.xml:62
+#: doc/classes/Vector3.xml:335 doc/classes/Vector3i.xml:64
msgid ""
"The vector's Y component. Also accessible by using the index position [code]"
"[1][/code]."
msgstr ""
-#: doc/classes/Vector2.xml:333 doc/classes/Vector2i.xml:67
+#: doc/classes/Vector2.xml:338 doc/classes/Vector2i.xml:67
#: doc/classes/Vector3i.xml:72
msgid "Enumerated value for the X axis."
msgstr ""
-#: doc/classes/Vector2.xml:336 doc/classes/Vector2i.xml:70
+#: doc/classes/Vector2.xml:341 doc/classes/Vector2i.xml:70
#: doc/classes/Vector3i.xml:75
msgid "Enumerated value for the Y axis."
msgstr ""
-#: doc/classes/Vector2.xml:339 doc/classes/Vector2i.xml:73
-#: doc/classes/Vector3.xml:346 doc/classes/Vector3i.xml:81
-msgid "Zero vector."
+#: doc/classes/Vector2.xml:344 doc/classes/Vector2i.xml:73
+#: doc/classes/Vector3.xml:352 doc/classes/Vector3i.xml:81
+msgid "Zero vector, a vector with all components set to [code]0[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:342 doc/classes/Vector2i.xml:76
-#: doc/classes/Vector3.xml:349 doc/classes/Vector3i.xml:84
-msgid "One vector."
+#: doc/classes/Vector2.xml:347 doc/classes/Vector2i.xml:76
+#: doc/classes/Vector3.xml:355 doc/classes/Vector3i.xml:84
+msgid "One vector, a vector with all components set to [code]1[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:345 doc/classes/Vector3.xml:352
-msgid "Infinity vector."
+#: doc/classes/Vector2.xml:350 doc/classes/Vector3.xml:358
+msgid ""
+"Infinity vector, a vector with all components set to [constant @GDScript."
+"INF]."
msgstr ""
-#: doc/classes/Vector2.xml:348 doc/classes/Vector2i.xml:79
-#: doc/classes/Vector3.xml:355 doc/classes/Vector3i.xml:87
-msgid "Left unit vector."
+#: doc/classes/Vector2.xml:353 doc/classes/Vector2i.xml:79
+msgid "Left unit vector. Represents the direction of left."
msgstr ""
-#: doc/classes/Vector2.xml:351 doc/classes/Vector2i.xml:82
-#: doc/classes/Vector3.xml:358 doc/classes/Vector3i.xml:90
-msgid "Right unit vector."
+#: doc/classes/Vector2.xml:356 doc/classes/Vector2i.xml:82
+msgid "Right unit vector. Represents the direction of right."
msgstr ""
-#: doc/classes/Vector2.xml:354 doc/classes/Vector2i.xml:85
-#: doc/classes/Vector3.xml:361 doc/classes/Vector3i.xml:93
-msgid "Up unit vector."
+#: doc/classes/Vector2.xml:359 doc/classes/Vector2i.xml:85
+msgid "Up unit vector. Y is down in 2D, so this vector points -Y."
msgstr ""
-#: doc/classes/Vector2.xml:357 doc/classes/Vector2i.xml:88
-#: doc/classes/Vector3.xml:364 doc/classes/Vector3i.xml:96
-msgid "Down unit vector."
+#: doc/classes/Vector2.xml:362 doc/classes/Vector2i.xml:88
+msgid "Down unit vector. Y is down in 2D, so this vector points +Y."
msgstr ""
#: doc/classes/Vector2i.xml:4
@@ -54438,6 +55757,16 @@ msgid ""
"will be truncated."
msgstr ""
+#: doc/classes/Vector2i.xml:46
+msgid "Returns the ratio of [member x] to [member y]."
+msgstr ""
+
+#: doc/classes/Vector2i.xml:53 doc/classes/Vector3i.xml:55
+msgid ""
+"Returns the vector with each component set to one or negative one, depending "
+"on the signs of the components."
+msgstr ""
+
#: doc/classes/Vector3.xml:4
msgid "Vector used for 3D math using floating point coordinates."
msgstr ""
@@ -54462,120 +55791,174 @@ msgid "Returns a [Vector3] with the given components."
msgstr ""
#: doc/classes/Vector3.xml:50
-msgid "Returns the minimum angle to the given vector."
-msgstr ""
+#, fuzzy
+msgid "Returns the minimum angle to the given vector, in radians."
+msgstr "2ã¤ã®ãƒ™ã‚¯ãƒˆãƒ«ã®å‰°ä½™ã‚’è¿”ã—ã¾ã™ã€‚"
#: doc/classes/Vector3.xml:66
-msgid "Returns a new vector with all components rounded up."
+msgid ""
+"Returns a new vector with all components rounded up (towards positive "
+"infinity)."
msgstr ""
#: doc/classes/Vector3.xml:75
-msgid "Returns the cross product with [code]b[/code]."
-msgstr ""
+#, fuzzy
+msgid "Returns the cross product of this vector and [code]b[/code]."
+msgstr "インデックス [code]point[/code] ã®ãƒã‚¤ãƒ³ãƒˆã®ä½ç½®ã‚’è¿”ã—ã¾ã™ã€‚"
#: doc/classes/Vector3.xml:90
msgid ""
"Performs a cubic interpolation between vectors [code]pre_a[/code], [code]a[/"
"code], [code]b[/code], [code]post_b[/code] ([code]a[/code] is current), by "
-"the given amount [code]t[/code]. [code]t[/code] is in the range of [code]0.0 "
-"- 1.0[/code], representing the amount of interpolation."
-msgstr ""
-
-#: doc/classes/Vector3.xml:108
-msgid ""
-"Returns the squared distance to [code]b[/code]. Prefer this function over "
-"[method distance_to] if you need to sort vectors or need the squared "
-"distance for some formula."
+"the given amount [code]t[/code]. [code]t[/code] is on the range of 0.0 to "
+"1.0, representing the amount of interpolation."
msgstr ""
-#: doc/classes/Vector3.xml:117
-msgid "Returns the distance to [code]b[/code]."
-msgstr ""
+#: doc/classes/Vector3.xml:118
+#, fuzzy
+msgid "Returns the distance between this vector and [code]b[/code]."
+msgstr "指定ã—㟠[code]name[/code] ã®ã‚µãƒ–ノードを返ã—ã¾ã™ã€‚"
-#: doc/classes/Vector3.xml:126
-msgid "Returns the dot product with [code]b[/code]."
+#: doc/classes/Vector3.xml:127
+msgid ""
+"Returns the dot product of this vector and [code]b[/code]. This can be used "
+"to compare the angle between two vectors. For example, this can be used to "
+"determine whether an enemy is facing the player.\n"
+"The dot product will be [code]0[/code] for a straight angle (90 degrees), "
+"greater than 0 for angles narrower than 90 degrees and lower than 0 for "
+"angles wider than 90 degrees.\n"
+"When using unit (normalized) vectors, the result will always be between "
+"[code]-1.0[/code] (180 degree angle) when the vectors are facing opposite "
+"directions, and [code]1.0[/code] (0 degree angle) when the vectors are "
+"aligned.\n"
+"[b]Note:[/b] [code]a.dot(b)[/code] is equivalent to [code]b.dot(a)[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:133
-msgid "Returns a new vector with all components rounded down."
+#: doc/classes/Vector3.xml:137
+msgid ""
+"Returns a new vector with all components rounded down (towards negative "
+"infinity)."
msgstr ""
-#: doc/classes/Vector3.xml:140
+#: doc/classes/Vector3.xml:144
msgid ""
"Returns the inverse of the vector. This is the same as [code]Vector3( 1.0 / "
"v.x, 1.0 / v.y, 1.0 / v.z )[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:170
+#: doc/classes/Vector3.xml:193 doc/classes/Vector3i.xml:41
msgid ""
-"Returns the vector's length squared. Prefer this function over [method "
-"length] if you need to sort vectors or need the squared length for some "
-"formula."
+"Returns the axis of the vector's largest value. See [code]AXIS_*[/code] "
+"constants. If all components are equal, this method returns [constant "
+"AXIS_X]."
msgstr ""
-#: doc/classes/Vector3.xml:181
+#: doc/classes/Vector3.xml:200 doc/classes/Vector3i.xml:48
msgid ""
-"Returns the result of the linear interpolation between this vector and "
-"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation.."
+"Returns the axis of the vector's smallest value. See [code]AXIS_*[/code] "
+"constants. If all components are equal, this method returns [constant "
+"AXIS_Z]."
msgstr ""
-#: doc/classes/Vector3.xml:188 doc/classes/Vector3i.xml:41
+#: doc/classes/Vector3.xml:211
msgid ""
-"Returns the axis of the vector's largest value. See [code]AXIS_*[/code] "
-"constants."
+"Moves this vector toward [code]to[/code] by the fixed [code]delta[/code] "
+"amount."
+msgstr ""
+
+#: doc/classes/Vector3.xml:227
+msgid "Returns the outer product with [code]b[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:195 doc/classes/Vector3i.xml:48
+#: doc/classes/Vector3.xml:254
+#, fuzzy
+msgid "Returns this vector projected onto another vector [code]b[/code]."
+msgstr "インデックス [code]point[/code] ã®ãƒã‚¤ãƒ³ãƒˆã®ä½ç½®ã‚’è¿”ã—ã¾ã™ã€‚"
+
+#: doc/classes/Vector3.xml:263
+msgid "Returns this vector reflected from a plane defined by the given normal."
+msgstr ""
+
+#: doc/classes/Vector3.xml:274
msgid ""
-"Returns the axis of the vector's smallest value. See [code]AXIS_*[/code] "
-"constants."
+"Rotates this vector around a given axis by [code]phi[/code] radians. The "
+"axis must be a normalized vector."
msgstr ""
-#: doc/classes/Vector3.xml:222
-msgid "Returns the outer product with [code]b[/code]."
+#: doc/classes/Vector3.xml:281
+msgid ""
+"Returns this vector with all components rounded to the nearest integer, with "
+"halfway cases rounded away from zero."
msgstr ""
-#: doc/classes/Vector3.xml:269
+#: doc/classes/Vector3.xml:288
msgid ""
-"Rotates the vector around a given axis by [code]phi[/code] radians. The axis "
-"must be a normalized vector."
+"Returns a vector with each component set to one or negative one, depending "
+"on the signs of this vector's components, or zero if the component is zero, "
+"by calling [method @GDScript.sign] on each component."
msgstr ""
-#: doc/classes/Vector3.xml:320
-msgid "Returns a diagonal matrix with the vector as main diagonal."
+#: doc/classes/Vector3.xml:325
+msgid ""
+"Returns a diagonal matrix with the vector as main diagonal.\n"
+"This is equivalent to a Basis with no rotation or shearing and this vector's "
+"components set as the scale."
msgstr ""
-#: doc/classes/Vector3.xml:332 doc/classes/Vector3i.xml:67
+#: doc/classes/Vector3.xml:338 doc/classes/Vector3i.xml:67
msgid ""
"The vector's Z component. Also accessible by using the index position [code]"
"[2][/code]."
msgstr ""
-#: doc/classes/Vector3.xml:337
+#: doc/classes/Vector3.xml:343
msgid ""
"Enumerated value for the X axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:340
+#: doc/classes/Vector3.xml:346
msgid ""
"Enumerated value for the Y axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:343
+#: doc/classes/Vector3.xml:349
msgid ""
"Enumerated value for the Z axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:367 doc/classes/Vector3i.xml:99
-msgid "Forward unit vector."
+#: doc/classes/Vector3.xml:361 doc/classes/Vector3i.xml:87
+msgid ""
+"Left unit vector. Represents the local direction of left, and the global "
+"direction of west."
+msgstr ""
+
+#: doc/classes/Vector3.xml:364 doc/classes/Vector3i.xml:90
+msgid ""
+"Right unit vector. Represents the local direction of right, and the global "
+"direction of east."
+msgstr ""
+
+#: doc/classes/Vector3.xml:367 doc/classes/Vector3i.xml:93
+msgid "Up unit vector."
+msgstr ""
+
+#: doc/classes/Vector3.xml:370 doc/classes/Vector3i.xml:96
+msgid "Down unit vector."
msgstr ""
-#: doc/classes/Vector3.xml:370 doc/classes/Vector3i.xml:102
-msgid "Back unit vector."
+#: doc/classes/Vector3.xml:373 doc/classes/Vector3i.xml:99
+msgid ""
+"Forward unit vector. Represents the local direction of forward, and the "
+"global direction of north."
+msgstr ""
+
+#: doc/classes/Vector3.xml:376 doc/classes/Vector3i.xml:102
+msgid ""
+"Back unit vector. Represents the local direction of back, and the global "
+"direction of south."
msgstr ""
#: doc/classes/Vector3i.xml:4
@@ -54624,10 +56007,14 @@ msgid ""
"directly.\n"
"[b]Note:[/b] The origin point of your VehicleBody3D will determine the "
"center of gravity of your vehicle so it is better to keep this low and move "
-"the [CollisionShape3D] and [MeshInstance3D] upwards."
+"the [CollisionShape3D] and [MeshInstance3D] upwards.\n"
+"[b]Note:[/b] This class has known issues and isn't designed to provide "
+"realistic 3D vehicle physics. If you want advanced vehicle physics, you will "
+"probably have to write your own physics integration using another "
+"[PhysicsBody3D] class."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:16
+#: doc/classes/VehicleBody3D.xml:17
msgid ""
"Slows down the vehicle by applying a braking force. The vehicle is only "
"slowed down if the wheels are in contact with a surface. The force you need "
@@ -54636,7 +56023,7 @@ msgid ""
"a value in the 25 - 30 range for hard braking."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:19
+#: doc/classes/VehicleBody3D.xml:20
msgid ""
"Accelerates the vehicle by applying an engine force. The vehicle is only "
"speed up if the wheels that have [member VehicleWheel3D.use_as_traction] set "
@@ -54649,7 +56036,7 @@ msgid ""
"A negative value will result in the vehicle reversing."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:25
+#: doc/classes/VehicleBody3D.xml:26
msgid ""
"The steering angle for the vehicle. Setting this to a non-zero value will "
"result in the vehicle turning when it's moving. Wheels that have [member "
@@ -54665,25 +56052,29 @@ msgstr ""
msgid ""
"This node needs to be used as a child node of [VehicleBody3D] and simulates "
"the behavior of one of its wheels. This node also acts as a collider to "
-"detect if the wheel is touching a surface."
+"detect if the wheel is touching a surface.\n"
+"[b]Note:[/b] This class has known issues and isn't designed to provide "
+"realistic 3D vehicle physics. If you want advanced vehicle physics, you will "
+"probably have to write your own physics integration using another "
+"[PhysicsBody3D] class."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:16
+#: doc/classes/VehicleWheel3D.xml:17
msgid "Returns the rotational speed of the wheel in revolutions per minute."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:23
+#: doc/classes/VehicleWheel3D.xml:24
msgid ""
"Returns a value between 0.0 and 1.0 that indicates whether this wheel is "
"skidding. 0.0 is skidding (the wheel has lost grip, e.g. icy terrain), 1.0 "
"means not skidding (the wheel has full grip, e.g. dry asphalt road)."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:30
+#: doc/classes/VehicleWheel3D.xml:31
msgid "Returns [code]true[/code] if this wheel is in contact with a surface."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:36
+#: doc/classes/VehicleWheel3D.xml:37
msgid ""
"Slows down the wheel by applying a braking force. The wheel is only slowed "
"down if it is in contact with a surface. The force you need to apply to "
@@ -54692,7 +56083,7 @@ msgid ""
"- 30 range for hard braking."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:39
+#: doc/classes/VehicleWheel3D.xml:40
msgid ""
"The damping applied to the spring when the spring is being compressed. This "
"value should be between 0.0 (no damping) and 1.0. A value of 0.0 means the "
@@ -54700,7 +56091,7 @@ msgid ""
"is around 0.3 for a normal car, 0.5 for a race car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:42
+#: doc/classes/VehicleWheel3D.xml:43
msgid ""
"The damping applied to the spring when relaxing. This value should be "
"between 0.0 (no damping) and 1.0. This value should always be slightly "
@@ -54708,7 +56099,7 @@ msgid ""
"damping_compression] value of 0.3, try a relaxation value of 0.5."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:45
+#: doc/classes/VehicleWheel3D.xml:46
msgid ""
"Accelerates the wheel by applying an engine force. The wheel is only speed "
"up if it is in contact with a surface. The [member RigidBody3D.mass] of the "
@@ -54719,13 +56110,13 @@ msgid ""
"A negative value will result in the wheel reversing."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:50
+#: doc/classes/VehicleWheel3D.xml:51
msgid ""
"The steering angle for the wheel. Setting this to a non-zero value will "
"result in the vehicle turning when it's moving."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:53
+#: doc/classes/VehicleWheel3D.xml:54
msgid ""
"The maximum force the spring can resist. This value should be higher than a "
"quarter of the [member RigidBody3D.mass] of the [VehicleBody3D] or the "
@@ -54733,28 +56124,28 @@ msgid ""
"obtained by a value that is about 3× to 4× this number."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:56
+#: doc/classes/VehicleWheel3D.xml:57
msgid ""
"This value defines the stiffness of the suspension. Use a value lower than "
"50 for an off-road car, a value between 50 and 100 for a race car and try "
"something around 200 for something like a Formula 1 car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:59
+#: doc/classes/VehicleWheel3D.xml:60
msgid ""
"This is the distance the suspension can travel. As Godot units are "
"equivalent to meters, keep this setting relatively low. Try a value between "
"0.1 and 0.3 depending on the type of car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:62
+#: doc/classes/VehicleWheel3D.xml:63
msgid ""
"If [code]true[/code], this wheel will be turned when the car steers. This "
"value is used in conjunction with [member VehicleBody3D.steering] and "
"ignored if you are using the per-wheel [member steering] value instead."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:65
+#: doc/classes/VehicleWheel3D.xml:66
msgid ""
"If [code]true[/code], this wheel transfers engine force to the ground to "
"propel the vehicle forward. This value is used in conjunction with [member "
@@ -54762,7 +56153,7 @@ msgid ""
"[member engine_force] value instead."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:68
+#: doc/classes/VehicleWheel3D.xml:69
msgid ""
"This determines how much grip this wheel has. It is combined with the "
"friction setting of the surface the wheel is in contact with. 0.0 means no "
@@ -54772,11 +56163,11 @@ msgid ""
"It's best to set this to 1.0 when starting out."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:72
+#: doc/classes/VehicleWheel3D.xml:73
msgid "The radius of the wheel in meters."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:75
+#: doc/classes/VehicleWheel3D.xml:76
msgid ""
"This is the distance in meters the wheel is lowered from its origin point. "
"Don't set this to 0.0 and move the wheel into position, instead move the "
@@ -54785,7 +56176,7 @@ msgid ""
"down to the position it should be in when the car is in rest."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:78
+#: doc/classes/VehicleWheel3D.xml:79
msgid ""
"This value affects the roll of your vehicle. If set to 1.0 for all wheels, "
"your vehicle will be prone to rolling over, while a value of 0.0 will resist "
@@ -55263,7 +56654,7 @@ msgstr ""
#: doc/classes/Viewport.xml:318
msgid ""
"Use fast approximate antialiasing. FXAA is a popular screen-space "
-"antialising method, which is fast but will make the image look blurry, "
+"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."
msgstr ""
@@ -55316,24 +56707,24 @@ msgid ""
"your [WorldEnvironment]."
msgstr ""
-#: doc/classes/Viewport.xml:384
+#: doc/classes/Viewport.xml:381
msgid ""
"Colors each PSSM split for the [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, and yellow."
msgstr ""
-#: doc/classes/Viewport.xml:387
+#: doc/classes/Viewport.xml:384
msgid ""
"Draws the decal atlas used by [Decal]s and light projector textures in the "
"upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/Viewport.xml:402
+#: doc/classes/Viewport.xml:405
msgid "Max value for [enum DefaultCanvasItemTextureFilter] enum."
msgstr ""
-#: doc/classes/Viewport.xml:414
+#: doc/classes/Viewport.xml:417
msgid "Max value for [enum DefaultCanvasItemTextureRepeat] enum."
msgstr ""
@@ -55364,82 +56755,84 @@ msgid ""
"The VisibilityEnabler2D will disable [RigidBody2D], [AnimationPlayer], and "
"other nodes when they are not visible. It will only affect nodes with the "
"same root node as the VisibilityEnabler2D, and the root node itself.\n"
+"If you just want to receive notifications, use [VisibilityNotifier2D] "
+"instead.\n"
"[b]Note:[/b] For performance reasons, VisibilityEnabler2D uses an "
"approximate heuristic with precision determined by [member ProjectSettings."
-"world/2d/cell_size]. If you need exact visibility checking, use another "
+"world/2d/cell_size]. If you need precise visibility checking, use another "
"method such as adding an [Area2D] node as a child of a [Camera2D] node.\n"
"[b]Note:[/b] VisibilityEnabler2D will not affect nodes added after scene "
"initialization."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:20
-#: doc/classes/VisibilityEnabler3D.xml:20
+#: doc/classes/VisibilityEnabler2D.xml:21
+#: doc/classes/VisibilityEnabler3D.xml:21
msgid ""
"Returns whether the enabler identified by given [enum Enabler] constant is "
"active."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:31
-#: doc/classes/VisibilityEnabler3D.xml:31
+#: doc/classes/VisibilityEnabler2D.xml:32
+#: doc/classes/VisibilityEnabler3D.xml:32
msgid ""
"Sets active state of the enabler identified by given [enum Enabler] constant."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:37
+#: doc/classes/VisibilityEnabler2D.xml:38
msgid "If [code]true[/code], [RigidBody2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:40
+#: doc/classes/VisibilityEnabler2D.xml:41
msgid "If [code]true[/code], [AnimatedSprite2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:43
-#: doc/classes/VisibilityEnabler3D.xml:40
+#: doc/classes/VisibilityEnabler2D.xml:44
+#: doc/classes/VisibilityEnabler3D.xml:41
msgid "If [code]true[/code], [AnimationPlayer] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:46
+#: doc/classes/VisibilityEnabler2D.xml:47
msgid "If [code]true[/code], [GPUParticles2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:49
+#: doc/classes/VisibilityEnabler2D.xml:50
msgid ""
"If [code]true[/code], the parent's [method Node._physics_process] will be "
"stopped."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:52
+#: doc/classes/VisibilityEnabler2D.xml:53
msgid ""
"If [code]true[/code], the parent's [method Node._process] will be stopped."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:57
-#: doc/classes/VisibilityEnabler3D.xml:45
+#: doc/classes/VisibilityEnabler2D.xml:58
+#: doc/classes/VisibilityEnabler3D.xml:46
msgid "This enabler will pause [AnimationPlayer] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:60
+#: doc/classes/VisibilityEnabler2D.xml:61
msgid "This enabler will freeze [RigidBody2D] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:63
+#: doc/classes/VisibilityEnabler2D.xml:64
msgid "This enabler will stop [GPUParticles2D] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:66
+#: doc/classes/VisibilityEnabler2D.xml:67
msgid "This enabler will stop the parent's _process function."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:69
+#: doc/classes/VisibilityEnabler2D.xml:70
msgid "This enabler will stop the parent's _physics_process function."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:72
+#: doc/classes/VisibilityEnabler2D.xml:73
msgid "This enabler will stop [AnimatedSprite2D] nodes animations."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:75
-#: doc/classes/VisibilityEnabler3D.xml:51
+#: doc/classes/VisibilityEnabler2D.xml:76
+#: doc/classes/VisibilityEnabler3D.xml:52
msgid "Represents the size of the [enum Enabler] enum."
msgstr ""
@@ -55448,19 +56841,23 @@ msgid ""
"The VisibilityEnabler3D will disable [RigidBody3D] and [AnimationPlayer] "
"nodes when they are not visible. It will only affect other nodes within the "
"same scene as the VisibilityEnabler3D itself.\n"
+"If you just want to receive notifications, use [VisibilityNotifier3D] "
+"instead.\n"
"[b]Note:[/b] VisibilityEnabler3D uses an approximate heuristic for "
"performance reasons. It doesn't take walls and other occlusion into account. "
-"If you need exact visibility checking, use another method such as adding an "
-"[Area3D] node as a child of a [Camera3D] node.\n"
+"The heuristic is an implementation detail and may change in future versions. "
+"If you need precise visibility checking, use another method such as adding "
+"an [Area3D] node as a child of a [Camera3D] node and/or [method Vector3."
+"dot].\n"
"[b]Note:[/b] VisibilityEnabler3D will not affect nodes added after scene "
"initialization."
msgstr ""
-#: doc/classes/VisibilityEnabler3D.xml:37
+#: doc/classes/VisibilityEnabler3D.xml:38
msgid "If [code]true[/code], [RigidBody3D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler3D.xml:48
+#: doc/classes/VisibilityEnabler3D.xml:49
msgid "This enabler will freeze [RigidBody3D] nodes."
msgstr ""
@@ -55474,13 +56871,15 @@ msgid ""
"The VisibilityNotifier2D detects when it is visible on the screen. It also "
"notifies when its bounding rectangle enters or exits the screen or a "
"viewport.\n"
+"If you want nodes to be disabled automatically when they exit the screen, "
+"use [VisibilityEnabler2D] instead.\n"
"[b]Note:[/b] For performance reasons, VisibilityNotifier2D uses an "
"approximate heuristic with precision determined by [member ProjectSettings."
-"world/2d/cell_size]. If you need exact visibility checking, use another "
+"world/2d/cell_size]. If you need precise visibility checking, use another "
"method such as adding an [Area2D] node as a child of a [Camera2D] node."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:17
+#: doc/classes/VisibilityNotifier2D.xml:18
msgid ""
"If [code]true[/code], the bounding rectangle is on the screen.\n"
"[b]Note:[/b] It takes one frame for the node's visibility to be assessed "
@@ -55489,23 +56888,23 @@ msgid ""
"pass."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:24
+#: doc/classes/VisibilityNotifier2D.xml:25
msgid "The VisibilityNotifier2D's bounding rectangle."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:30
+#: doc/classes/VisibilityNotifier2D.xml:31
msgid "Emitted when the VisibilityNotifier2D enters the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:35
+#: doc/classes/VisibilityNotifier2D.xml:36
msgid "Emitted when the VisibilityNotifier2D exits the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:42
+#: doc/classes/VisibilityNotifier2D.xml:43
msgid "Emitted when the VisibilityNotifier2D enters a [Viewport]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:49
+#: doc/classes/VisibilityNotifier2D.xml:50
msgid "Emitted when the VisibilityNotifier2D exits a [Viewport]'s view."
msgstr ""
@@ -55514,13 +56913,16 @@ msgid ""
"The VisibilityNotifier3D detects when it is visible on the screen. It also "
"notifies when its bounding rectangle enters or exits the screen or a "
"[Camera3D]'s view.\n"
+"If you want nodes to be disabled automatically when they exit the screen, "
+"use [VisibilityEnabler3D] instead.\n"
"[b]Note:[/b] VisibilityNotifier3D uses an approximate heuristic for "
"performance reasons. It doesn't take walls and other occlusion into account. "
-"If you need exact visibility checking, use another method such as adding an "
-"[Area3D] node as a child of a [Camera3D] node."
+"The heuristic is an implementation detail and may change in future versions. "
+"If you need precise visibility checking, use another method such as adding "
+"an [Area3D] node as a child of a [Camera3D] node and/or [method Vector3.dot]."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:17
+#: doc/classes/VisibilityNotifier3D.xml:18
msgid ""
"If [code]true[/code], the bounding box is on the screen.\n"
"[b]Note:[/b] It takes one frame for the node's visibility to be assessed "
@@ -55529,23 +56931,23 @@ msgid ""
"pass."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:24
+#: doc/classes/VisibilityNotifier3D.xml:25
msgid "The VisibilityNotifier3D's bounding box."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:32
+#: doc/classes/VisibilityNotifier3D.xml:33
msgid "Emitted when the VisibilityNotifier3D enters a [Camera3D]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:39
+#: doc/classes/VisibilityNotifier3D.xml:40
msgid "Emitted when the VisibilityNotifier3D exits a [Camera3D]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:44
+#: doc/classes/VisibilityNotifier3D.xml:45
msgid "Emitted when the VisibilityNotifier3D enters the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:49
+#: doc/classes/VisibilityNotifier3D.xml:50
msgid "Emitted when the VisibilityNotifier3D exits the screen."
msgstr ""
@@ -55965,6 +57367,14 @@ msgid ""
"exist."
msgstr ""
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:90
+msgid ""
+"Easing function, based on exponent. 0 is constant, 1 is linear, 0 to 1 is "
+"ease-in, 1+ is ease out. Negative values are in-out/out in."
+msgstr ""
+"指数ã«ã‚ˆã‚‹ã‚¤ãƒ¼ã‚¸ãƒ³ã‚°é–¢æ•°ã§ã™ã€‚0 ã¯ä¸å¤‰ã€1 ã¯ç­‰é€Ÿã€0 ã‹ã‚‰ 1 ã®é–“ã¯ã‚¤ãƒ¼ã‚ºã‚¤ãƒ³ã€"
+"1 より上ã¯ã‚¤ãƒ¼ã‚ºã‚¢ã‚¦ãƒˆã§ã™ã€‚è² ã®å€¤ã¯ã‚¤ãƒ³ã‚¢ã‚¦ãƒˆ / アウトインã«ãªã‚Šã¾ã™ã€‚"
+
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:93
msgid ""
"Return the number of digit places after the decimal that the first non-zero "
@@ -56850,6 +58260,7 @@ msgid "A shader for light calculations."
msgstr ""
#: doc/classes/VisualShader.xml:214
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:26
msgid "Represents the size of the [enum Type] enum."
msgstr ""
@@ -56952,6 +58363,24 @@ msgstr ""
msgid "Translated to [code]uniform bool[/code] in the shader language."
msgstr ""
+#: doc/classes/VisualShaderNodeBooleanUniform.xml:15
+#: doc/classes/VisualShaderNodeColorUniform.xml:15
+#: doc/classes/VisualShaderNodeFloatUniform.xml:15
+#: doc/classes/VisualShaderNodeIntUniform.xml:15
+#: doc/classes/VisualShaderNodeTransformUniform.xml:15
+#: doc/classes/VisualShaderNodeVec3Uniform.xml:15
+msgid "A default value to be assigned within the shader."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeBooleanUniform.xml:18
+#: doc/classes/VisualShaderNodeColorUniform.xml:18
+#: doc/classes/VisualShaderNodeFloatUniform.xml:18
+#: doc/classes/VisualShaderNodeIntUniform.xml:18
+#: doc/classes/VisualShaderNodeTransformUniform.xml:18
+#: doc/classes/VisualShaderNodeVec3Uniform.xml:18
+msgid "Enables usage of the [member default_value]."
+msgstr ""
+
#: doc/classes/VisualShaderNodeColorConstant.xml:4
msgid "A [Color] constant to be used within the visual shader graph."
msgstr ""
@@ -57802,49 +59231,49 @@ msgstr ""
msgid "Translated to [code]uniform float[/code] in the shader language."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:15
-#: doc/classes/VisualShaderNodeIntUniform.xml:15
+#: doc/classes/VisualShaderNodeFloatUniform.xml:21
+#: doc/classes/VisualShaderNodeIntUniform.xml:21
msgid ""
"A hint applied to the uniform, which controls the values it can take when "
"set through the inspector."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:18
-#: doc/classes/VisualShaderNodeIntUniform.xml:18
+#: doc/classes/VisualShaderNodeFloatUniform.xml:24
+#: doc/classes/VisualShaderNodeIntUniform.xml:24
msgid ""
"Minimum value for range hints. Used if [member hint] is set to [constant "
"HINT_RANGE] or [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:21
-#: doc/classes/VisualShaderNodeIntUniform.xml:21
+#: doc/classes/VisualShaderNodeFloatUniform.xml:27
+#: doc/classes/VisualShaderNodeIntUniform.xml:27
msgid ""
"Maximum value for range hints. Used if [member hint] is set to [constant "
"HINT_RANGE] or [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:24
-#: doc/classes/VisualShaderNodeIntUniform.xml:24
+#: doc/classes/VisualShaderNodeFloatUniform.xml:30
+#: doc/classes/VisualShaderNodeIntUniform.xml:30
msgid ""
"Step (increment) value for the range hint with step. Used if [member hint] "
"is set to [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:29
-#: doc/classes/VisualShaderNodeIntUniform.xml:29
+#: doc/classes/VisualShaderNodeFloatUniform.xml:35
+#: doc/classes/VisualShaderNodeIntUniform.xml:35
msgid "No hint used."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:32
-#: doc/classes/VisualShaderNodeIntUniform.xml:32
+#: doc/classes/VisualShaderNodeFloatUniform.xml:38
+#: doc/classes/VisualShaderNodeIntUniform.xml:38
msgid ""
"A range hint for scalar value, which limits possible input values between "
"[member min] and [member max]. Translated to [code]hint_range(min, max)[/"
"code] in shader code."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:35
-#: doc/classes/VisualShaderNodeIntUniform.xml:35
+#: doc/classes/VisualShaderNodeFloatUniform.xml:41
+#: doc/classes/VisualShaderNodeIntUniform.xml:41
msgid ""
"A range hint for scalar value with step, which limits possible input values "
"between [member min] and [member max], with a step (increment) of [member "
@@ -58128,6 +59557,26 @@ msgid ""
"results, e.g. division by zero)."
msgstr ""
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:4
+msgid "Performs a fused multiply-add operation within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:7
+msgid "Uses three operands to compute [code](a * b + c)[/code] expression."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:15
+msgid "A type of operands and returned value."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:20
+msgid "A scalar type."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:23
+msgid "A vector type."
+msgstr ""
+
#: doc/classes/VisualShaderNodeOuterProduct.xml:4
msgid ""
"Calculates an outer product of two vectors within the visual shader graph."
@@ -58150,7 +59599,7 @@ msgstr ""
#: doc/classes/VisualShaderNodeOutput.xml:7
msgid ""
"This visual shader node is present in all shader graphs in form of \"Output"
-"\" block with mutliple output value ports."
+"\" block with multiple output value ports."
msgstr ""
#: doc/classes/VisualShaderNodeSample3D.xml:4
@@ -58514,6 +59963,20 @@ msgid ""
"[ShaderMaterial] properties."
msgstr ""
+#: doc/classes/VisualShaderNodeUniformRef.xml:4
+msgid "A reference to an existing [VisualShaderNodeUniform]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniformRef.xml:7
+msgid ""
+"Creating a reference to a [VisualShaderNodeUniform] allows you to reuse this "
+"uniform in different shaders or shader stages easily."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniformRef.xml:15
+msgid "The name of the uniform which this reference points to."
+msgstr ""
+
#: doc/classes/VisualShaderNodeVec3Constant.xml:4
msgid "A [Vector3] constant to be used within the visual shader graph."
msgstr ""
@@ -58611,7 +60074,7 @@ msgstr ""
#: doc/classes/VisualShaderNodeVectorFunc.xml:26
msgid "Returns the opposite value of the parameter."
-msgstr ""
+msgstr "パラメータã®å対ã®å€¤ã‚’è¿”ã—ã¾ã™ã€‚"
#: doc/classes/VisualShaderNodeVectorFunc.xml:29
msgid "Returns [code]1/vector[/code]."
@@ -58619,96 +60082,96 @@ msgstr ""
#: doc/classes/VisualShaderNodeVectorFunc.xml:32
msgid "Converts RGB vector to HSV equivalent."
-msgstr ""
+msgstr "RGBベクトルをHSVベクトルã«å¤‰æ›ã€‚"
#: doc/classes/VisualShaderNodeVectorFunc.xml:35
msgid "Converts HSV vector to RGB equivalent."
-msgstr ""
+msgstr "HSVベクトルをRGBベクトルã«å¤‰æ›ã€‚"
#: doc/classes/VisualShaderNodeVectorFunc.xml:38
msgid "Returns the absolute value of the parameter."
-msgstr ""
+msgstr "パラメータã®çµ¶å¯¾å€¤ã‚’è¿”ã—ã¾ã™ã€‚"
#: doc/classes/VisualShaderNodeVectorFunc.xml:41
msgid "Returns the arc-cosine of the parameter."
-msgstr ""
+msgstr "パラメータã®é€†ã‚³ã‚µã‚¤ãƒ³ã‚’è¿”ã—ã¾ã™ã€‚"
#: doc/classes/VisualShaderNodeVectorFunc.xml:44
msgid "Returns the inverse hyperbolic cosine of the parameter."
-msgstr ""
+msgstr "パラメータã®é€†åŒæ›²ç·šä½™å¼¦ã‚’è¿”ã—ã¾ã™ã€‚"
#: doc/classes/VisualShaderNodeVectorFunc.xml:47
msgid "Returns the arc-sine of the parameter."
-msgstr ""
+msgstr "パラメータã®é€†ã‚µã‚¤ãƒ³ã‚’è¿”ã—ã¾ã™ã€‚"
#: doc/classes/VisualShaderNodeVectorFunc.xml:50
msgid "Returns the inverse hyperbolic sine of the parameter."
-msgstr ""
+msgstr "パラメータã®åŒæ›²ç·šé€†ã‚µã‚¤ãƒ³ã‚’è¿”ã—ã¾ã™ã€‚"
#: doc/classes/VisualShaderNodeVectorFunc.xml:53
msgid "Returns the arc-tangent of the parameter."
-msgstr ""
+msgstr "パラメータã®é€†ã‚¿ãƒ³ã‚¸ã‚§ãƒ³ãƒˆã‚’è¿”ã—ã¾ã™ã€‚"
#: doc/classes/VisualShaderNodeVectorFunc.xml:56
msgid "Returns the inverse hyperbolic tangent of the parameter."
-msgstr ""
+msgstr "パラメータã®åŒæ›²ç·šé€†ã‚¿ãƒ³ã‚¸ã‚§ãƒ³ãƒˆã‚’è¿”ã—ã¾ã™ã€‚"
#: doc/classes/VisualShaderNodeVectorFunc.xml:59
msgid ""
"Finds the nearest integer that is greater than or equal to the parameter."
-msgstr ""
+msgstr "パラメータ以上ã®æœ€ã‚‚è¿‘ã„整数を検索ã—ã¾ã™ã€‚"
#: doc/classes/VisualShaderNodeVectorFunc.xml:62
msgid "Returns the cosine of the parameter."
-msgstr ""
+msgstr "パラメータã®ã‚³ã‚µã‚¤ãƒ³ã‚’è¿”ã—ã¾ã™ã€‚"
#: doc/classes/VisualShaderNodeVectorFunc.xml:65
msgid "Returns the hyperbolic cosine of the parameter."
-msgstr ""
+msgstr "パラメータã®åŒæ›²ç·šã‚³ã‚µã‚¤ãƒ³ã‚’è¿”ã—ã¾ã™ã€‚"
#: doc/classes/VisualShaderNodeVectorFunc.xml:68
msgid "Converts a quantity in radians to degrees."
-msgstr ""
+msgstr "ラジアンå˜ä½ã®æ•°é‡ã‚’度ã«å¤‰æ›ã—ã¾ã™ã€‚"
#: doc/classes/VisualShaderNodeVectorFunc.xml:71
msgid "Base-e Exponential."
-msgstr ""
+msgstr "ベースe指数。"
#: doc/classes/VisualShaderNodeVectorFunc.xml:74
msgid "Base-2 Exponential."
-msgstr ""
+msgstr "2を底ã¨ã™ã‚‹æŒ‡æ•°ã€‚"
#: doc/classes/VisualShaderNodeVectorFunc.xml:77
msgid "Finds the nearest integer less than or equal to the parameter."
-msgstr ""
+msgstr "パラメータ以下ã®æœ€ã‚‚è¿‘ã„整数を検索ã—ã¾ã™ã€‚"
#: doc/classes/VisualShaderNodeVectorFunc.xml:80
msgid "Computes the fractional part of the argument."
-msgstr ""
+msgstr "引数ã®å°æ•°éƒ¨ã‚’計算ã—ã¾ã™ã€‚"
#: doc/classes/VisualShaderNodeVectorFunc.xml:83
msgid "Returns the inverse of the square root of the parameter."
-msgstr ""
+msgstr "パラメータã®å¹³æ–¹æ ¹ã®é€†æ•°ã‚’è¿”ã—ã¾ã™ã€‚"
#: doc/classes/VisualShaderNodeVectorFunc.xml:86
msgid "Natural logarithm."
-msgstr ""
+msgstr "自然対数。"
#: doc/classes/VisualShaderNodeVectorFunc.xml:89
msgid "Base-2 logarithm."
-msgstr ""
+msgstr "2を底ã¨ã™ã‚‹å¯¾æ•°ã€‚"
#: doc/classes/VisualShaderNodeVectorFunc.xml:92
msgid "Converts a quantity in degrees to radians."
-msgstr ""
+msgstr "度å˜ä½ã®é‡ã‚’ラジアンã«å¤‰æ›ã—ã¾ã™ã€‚"
#: doc/classes/VisualShaderNodeVectorFunc.xml:95
msgid "Finds the nearest integer to the parameter."
-msgstr ""
+msgstr "パラメータã«æœ€ã‚‚è¿‘ã„整数を検索ã—ã¾ã™ã€‚"
#: doc/classes/VisualShaderNodeVectorFunc.xml:98
msgid "Finds the nearest even integer to the parameter."
-msgstr ""
+msgstr "パラメータã«æœ€ã‚‚è¿‘ã„å¶æ•°ã®æ•´æ•°ã‚’検索ã—ã¾ã™ã€‚"
#: doc/classes/VisualShaderNodeVectorFunc.xml:101
msgid ""
@@ -58719,23 +60182,23 @@ msgstr ""
#: doc/classes/VisualShaderNodeVectorFunc.xml:104
msgid "Returns the sine of the parameter."
-msgstr ""
+msgstr "パラメータã®ã‚µã‚¤ãƒ³ã‚’è¿”ã—ã¾ã™ã€‚"
#: doc/classes/VisualShaderNodeVectorFunc.xml:107
msgid "Returns the hyperbolic sine of the parameter."
-msgstr ""
+msgstr "パラメータã®åŒæ›²ã‚µã‚¤ãƒ³ã‚’è¿”ã—ã¾ã™ã€‚"
#: doc/classes/VisualShaderNodeVectorFunc.xml:110
msgid "Returns the square root of the parameter."
-msgstr ""
+msgstr "パラメータã®å¹³æ–¹æ ¹ã‚’è¿”ã—ã¾ã™ã€‚"
#: doc/classes/VisualShaderNodeVectorFunc.xml:113
msgid "Returns the tangent of the parameter."
-msgstr ""
+msgstr "パラメータã®ã‚¿ãƒ³ã‚¸ã‚§ãƒ³ãƒˆã‚’è¿”ã—ã¾ã™ã€‚"
#: doc/classes/VisualShaderNodeVectorFunc.xml:116
msgid "Returns the hyperbolic tangent of the parameter."
-msgstr ""
+msgstr "パラメータã®åŒæ›²ã‚¿ãƒ³ã‚¸ã‚§ãƒ³ãƒˆã‚’è¿”ã—ã¾ã™ã€‚"
#: doc/classes/VisualShaderNodeVectorFunc.xml:119
msgid ""
@@ -58794,11 +60257,11 @@ msgstr ""
#: doc/classes/VisualShaderNodeVectorOp.xml:29
msgid "Divides vector by vector."
-msgstr ""
+msgstr "ベクトルã§ãƒ™ã‚¯ãƒˆãƒ«ã‚’除算ã—ã¾ã™ã€‚"
#: doc/classes/VisualShaderNodeVectorOp.xml:32
msgid "Returns the remainder of the two vectors."
-msgstr ""
+msgstr "2ã¤ã®ãƒ™ã‚¯ãƒˆãƒ«ã®å‰°ä½™ã‚’è¿”ã—ã¾ã™ã€‚"
#: doc/classes/VisualShaderNodeVectorOp.xml:35
msgid ""
@@ -58816,11 +60279,11 @@ msgstr ""
#: doc/classes/VisualShaderNodeVectorOp.xml:44
msgid "Calculates the cross product of two vectors."
-msgstr ""
+msgstr "2ã¤ã®ãƒ™ã‚¯ãƒˆãƒ«ã®å¤–ç©ã‚’計算ã—ã¾ã™ã€‚"
#: doc/classes/VisualShaderNodeVectorOp.xml:47
msgid "Returns the arc-tangent of the parameters."
-msgstr ""
+msgstr "複数パラメータã®é€†ã‚¿ãƒ³ã‚¸ã‚§ãƒ³ãƒˆã‚’è¿”ã—ã¾ã™ã€‚"
#: doc/classes/VisualShaderNodeVectorOp.xml:50
msgid ""
@@ -58847,7 +60310,7 @@ msgstr ""
msgid ""
"Translated to [code]refract(I, N, eta)[/code] in the shader language, where "
"[code]I[/code] is the incident vector, [code]N[/code] is the normal vector "
-"and [code]eta[/code] is the ratio of the indicies of the refraction."
+"and [code]eta[/code] is the ratio of the indices of the refraction."
msgstr ""
#: doc/classes/VisualShaderNodeVectorScalarMix.xml:4
@@ -60628,6 +62091,196 @@ msgid ""
"If [code]true[/code], child nodes are sorted, otherwise sorting is disabled."
msgstr ""
+#~ msgid ""
+#~ "Returns [code]true[/code] if [code]a[/code] and [code]b[/code] are "
+#~ "approximately equal to each other."
+#~ msgstr ""
+#~ "ã‚‚ã— [code]a[/code] 㨠[code]b[/code] ãŒã»ã¨ã‚“ã©ç­‰ã—ã„ãªã‚‰ã° [code]true[/"
+#~ "code] ã‚’è¿”ã—ã¾ã™ã€‚"
+
+#~ msgid ""
+#~ "Returns the nearest larger power of 2 for integer [code]value[/code].\n"
+#~ "[codeblock]\n"
+#~ "nearest_po2(3) # Returns 4\n"
+#~ "nearest_po2(4) # Returns 4\n"
+#~ "nearest_po2(5) # Returns 8\n"
+#~ "[/codeblock]"
+#~ msgstr ""
+#~ "æ•´æ•° [code]value[/code] 以上ã§1 番近ã„2ã®å†ªæ•°ã‚’è¿”ã—ã¾ã™ã€‚\n"
+#~ "[codeblock]\n"
+#~ "nearest_po2(3) # 4 ã¨è¿”ã‚‹\n"
+#~ "nearest_po2(4) # 4 ã¨è¿”ã‚‹\n"
+#~ "nearest_po2(5) # 8 ã¨è¿”ã‚‹\n"
+#~ "[/codeblock]"
+
+#~ msgid ""
+#~ "Returns a resource from the filesystem that is loaded during script "
+#~ "parsing.\n"
+#~ "[b]Note:[/b] Resource paths can be obtained by right clicking on a "
+#~ "resource in the Assets Panel and choosing \"Copy Path\".\n"
+#~ "[codeblock]\n"
+#~ "# Load a scene called main located in the root of the project directory.\n"
+#~ "var main = preload(\"res://main.tscn\")\n"
+#~ "[/codeblock]"
+#~ msgstr ""
+#~ "ファイルシステムã«ã‚るリソースをã€ã‚¹ã‚¯ãƒªãƒ—トã®ãƒ‘ース中ã«èª­ã¿è¾¼ã¿ã¾ã™ã€‚\n"
+#~ "[b]注:[/b] リソースã®ãƒ‘スã¯ã€ãƒ•ã‚¡ã‚¤ãƒ«ã‚·ã‚¹ãƒ†ãƒ  ドック内ã«ã‚るリソースをå³ã‚¯"
+#~ "リックã—ã¦ã€Œãƒ‘スをコピーã€ã‚’é¸ã¹ã°å¾—られã¾ã™ã€‚\n"
+#~ "[codeblock]\n"
+#~ "# プロジェクト ディレクトリã®ãƒ«ãƒ¼ãƒˆã«ã‚ã‚‹ main ã¨ã„ã†åå‰ã®ã‚·ãƒ¼ãƒ³ã‚’読ã¿è¾¼"
+#~ "む。\n"
+#~ "var main = preload(\"res://main.tscn\")\n"
+#~ "[/codeblock]"
+
+#~ msgid ""
+#~ "Returns a number smoothly interpolated between the [code]from[/code] and "
+#~ "[code]to[/code], based on the [code]weight[/code]. Similar to [method "
+#~ "lerp], but interpolates faster at the beginning and slower at the end.\n"
+#~ "[codeblock]\n"
+#~ "smoothstep(0, 2, 0.5) # Returns 0.15\n"
+#~ "smoothstep(0, 2, 1.0) # Returns 0.5\n"
+#~ "smoothstep(0, 2, 2.0) # Returns 1.0\n"
+#~ "[/codeblock]"
+#~ msgstr ""
+#~ "[code]from[/code] ã‹ã‚‰ [code]to[/code] ã®é–“ã‚’ã€[code]weight[/code] ã«ã‚ˆã£"
+#~ "ã¦ã‚¹ãƒ ãƒ¼ã‚ºã«è£œå®Œã—ã¦å€¤ã‚’è¿”ã—ã¾ã™ã€‚[method lerp] ã¨ä¼¼ã¦ã„ã¾ã™ãŒã€é–‹å§‹æ™‚ã¯ã‚ˆ"
+#~ "り進ã‚ã¦ã€æœ€çµ‚時ã¯ã‚ˆã‚Šé…ã‚Œã¦è£œå®Œã—ã¾ã™ã€‚\n"
+#~ "[codeblock]\n"
+#~ "smoothstep(0, 2, 0.5) # 返り値㯠0.15\n"
+#~ "smoothstep(0, 2, 1.0) # 返り値㯠0.5\n"
+#~ "smoothstep(0, 2, 2.0) # 返り値㯠1.0\n"
+#~ "[/codeblock]"
+
+#~ msgid ""
+#~ "Returns the square root of [code]s[/code].\n"
+#~ "[codeblock]\n"
+#~ "sqrt(9) # Returns 3\n"
+#~ "[/codeblock]"
+#~ msgstr ""
+#~ "[code]s[/code] ã®å¹³æ–¹æ ¹ã‚’è¿”ã—ã¾ã™ã€‚\n"
+#~ "[codeblock]\n"
+#~ "sqrt(9) # 3 ã¨è¿”ã™\n"
+#~ "[/codeblock]"
+
+#~ msgid ""
+#~ "Converts a Variant [code]var[/code] to JSON text and return the result. "
+#~ "Useful for serializing data to store or send over the network.\n"
+#~ "[codeblock]\n"
+#~ "a = { \"a\": 1, \"b\": 2 }\n"
+#~ "b = to_json(a)\n"
+#~ "print(b) # {\"a\":1, \"b\":2}\n"
+#~ "[/codeblock]"
+#~ msgstr ""
+#~ "Variant [code]var[/code] ã‚’JSONテキストã«å¤‰æ›ã—ã¦ã‹ã‚‰è¿”ã—ã¾ã™ã€‚ä¿å­˜ã—ãŸã‚Š"
+#~ "ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ä¸Šã§é€ä¿¡ã—ãŸã‚Šã™ã‚‹ãŸã‚ã®ãƒ‡ãƒ¼ã‚¿ã‚’シリアライズã™ã‚‹éš›ã«ä¾¿åˆ©ã§"
+#~ "ã™ã€‚\n"
+#~ "[codeblock]\n"
+#~ "a = { \"a\": 1, \"b\": 2 }\n"
+#~ "b = to_json(a)\n"
+#~ "print(b) # {\"a\":1, \"b\":2}\n"
+#~ "[/codeblock]"
+
+#~ msgid ""
+#~ "Stops the function execution and returns the current suspended state to "
+#~ "the calling function.\n"
+#~ "From the caller, call [method GDScriptFunctionState.resume] on the state "
+#~ "to resume execution. This invalidates the state. Within the resumed "
+#~ "function, [code]yield()[/code] returns whatever was passed to the "
+#~ "[code]resume()[/code] function call.\n"
+#~ "If passed an object and a signal, the execution is resumed when the "
+#~ "object emits the given signal. In this case, [code]yield()[/code] returns "
+#~ "the argument passed to [code]emit_signal()[/code] if the signal takes "
+#~ "only one argument, or an array containing all the arguments passed to "
+#~ "[code]emit_signal()[/code] if the signal takes multiple arguments.\n"
+#~ "You can also use [code]yield[/code] to wait for a function to finish:\n"
+#~ "[codeblock]\n"
+#~ "func _ready():\n"
+#~ " yield(countdown(), \"completed\") # waiting for the countdown() "
+#~ "function to complete\n"
+#~ " print('Ready')\n"
+#~ "\n"
+#~ "func countdown():\n"
+#~ " yield(get_tree(), \"idle_frame\") # returns a GDScriptFunctionState "
+#~ "object to _ready()\n"
+#~ " print(3)\n"
+#~ " yield(get_tree().create_timer(1.0), \"timeout\")\n"
+#~ " print(2)\n"
+#~ " yield(get_tree().create_timer(1.0), \"timeout\")\n"
+#~ " print(1)\n"
+#~ " yield(get_tree().create_timer(1.0), \"timeout\")\n"
+#~ "\n"
+#~ "# prints:\n"
+#~ "# 3\n"
+#~ "# 2\n"
+#~ "# 1\n"
+#~ "# Ready\n"
+#~ "[/codeblock]\n"
+#~ "When yielding on a function, the [code]completed[/code] signal will be "
+#~ "emitted automatically when the function returns. It can, therefore, be "
+#~ "used as the [code]signal[/code] parameter of the [code]yield[/code] "
+#~ "method to resume.\n"
+#~ "In order to yield on a function, the resulting function should also "
+#~ "return a [code]GDScriptFunctionState[/code]. Notice "
+#~ "[code]yield(get_tree(), \"idle_frame\")[/code] from the above example."
+#~ msgstr ""
+#~ "ç¾åœ¨ã®é–¢æ•°ã®å®Ÿè¡Œã‚’一時åœæ­¢ã—ã¦ã€åœæ­¢ä¸­ã®ç¾åœ¨ã®ã‚¹ãƒ†ãƒ¼ãƒˆã‚’ã€å‘¼ã³å‡ºã—å…ƒã®é–¢æ•°"
+#~ "ã«è¿”ã—ã¾ã™ã€‚\n"
+#~ "呼ã³å‡ºã—å…ƒã‹ã‚‰ã¯ã€ãã®ã‚¹ãƒ†ãƒ¼ãƒˆã® [method GDScriptFunctionState.resume] ã‚’"
+#~ "呼ã³å‡ºã›ã°å®Ÿè¡Œå†é–‹ã§ãã¾ã™ã€‚ã“ã‚Œã¯ã‚¹ãƒ†ãƒ¼ãƒˆã‚’å–り消ã—ã¾ã™ã€‚å†é–‹ã•ã‚ŒãŸé–¢æ•°å†…"
+#~ "ã§ã¯ã€[code]yield()[/code] 㯠[code]resume()[/code] 関数ã«æ¸¡ã•ã‚ŒãŸã™ã¹ã¦ã®"
+#~ "引数を返ã—ã¾ã™ã€‚\n"
+#~ "オブジェクトã¨ã‚·ã‚°ãƒŠãƒ«ã‚’渡ã›ã°ã€ãã®æ¸¡ã•ã‚ŒãŸã‚·ã‚°ãƒŠãƒ«ã‚’オブジェクトãŒç™ºä¿¡ã—"
+#~ "ãŸã¨ãã«ã€å®Ÿè¡ŒãŒå†é–‹ã•ã‚Œã¾ã™ã€‚ã“ã®å ´åˆ [code]yield()[/code] ã¯ã€"
+#~ "[code]emit_signal()[/code] ã«æ¸¡ã•ã‚ŒãŸå¼•æ•°ã‚’è¿”ã—ã¾ã™ã€‚ã‚‚ã—ã€ãã®ã‚·ã‚°ãƒŠãƒ«ã®"
+#~ "引数ãŒã²ã¨ã¤ã ã‘ãªã‚‰å¼•æ•°ã‚’ãã®ã¾ã¾è¿”ã—ã€å¼•æ•°ãŒè¤‡æ•°ã‚れ㰠"
+#~ "[code]emit_signal()[/code] ã«æ¸¡ã•ã‚ŒãŸã™ã¹ã¦ã®å¼•æ•°ã‚’å«ã‚€é…列を返ã—ã¾ã™ã€‚\n"
+#~ "関数ã®å®Ÿè¡ŒãŒå®Œäº†ã™ã‚‹ã¾ã§å¾…ã¡ãŸã„ã¨ãã«ã‚‚ [code]yield[/code] ã¯ä½¿ãˆã¾ã™:\n"
+#~ "[codeblock]\n"
+#~ "func _ready():\n"
+#~ " yield(countdown(), \"completed\") # countdown() 関数ãŒå®Œäº†ã™ã‚‹ã¾ã§å¾…"
+#~ "ã¤\n"
+#~ " print('Ready')\n"
+#~ "\n"
+#~ "func countdown():\n"
+#~ " yield(get_tree(), \"idle_frame\") # GDScriptFunctionStateオブジェクト"
+#~ "ã‚’ _ready() ã«è¿”ã™\n"
+#~ " print(3)\n"
+#~ " yield(get_tree().create_timer(1.0), \"timeout\")\n"
+#~ " print(2)\n"
+#~ " yield(get_tree().create_timer(1.0), \"timeout\")\n"
+#~ " print(1)\n"
+#~ " yield(get_tree().create_timer(1.0), \"timeout\")\n"
+#~ "\n"
+#~ "# çµæžœ:\n"
+#~ "# 3\n"
+#~ "# 2\n"
+#~ "# 1\n"
+#~ "# Ready\n"
+#~ "[/codeblock]\n"
+#~ "関数をyieldã™ã‚‹ã¨ã€é–¢æ•°ãŒreturnã™ã‚‹ã¨ãã« [code]completed[/code] シグナル"
+#~ "ãŒè‡ªå‹•çš„ã«ç™ºä¿¡ã•ã‚Œã¾ã™ã€‚ãã®ãŸã‚ã€ã“れを [code]yield[/code] メソッド㮠"
+#~ "[code]signal[/code] パラメータã«ã™ã‚Œã°å†é–‹ã§ãã¾ã™ã€‚\n"
+#~ "関数をyieldã™ã‚‹ã«ã¯ã€ãã®çµæžœã¨ãªã‚‹é–¢æ•°ã‚‚ã¾ãŸ "
+#~ "[code]GDScriptFunctionState[/code] ã‚’è¿”ã™å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚上記ã®ä¾‹ã® "
+#~ "[code]yield(get_tree(), \"idle_frame\")[/code] ã«æ³¨ç›®ã—ã¦ã¿ã¦ãã ã•ã„。"
+
+#~ msgid ""
+#~ "Macro constant that expands to an expression of type float that "
+#~ "represents a NaN.\n"
+#~ "The NaN values are used to identify undefined or non-representable values "
+#~ "for floating-point elements, such as the square root of negative numbers "
+#~ "or the result of 0/0."
+#~ msgstr ""
+#~ "NaNを表ç¾ã™ã‚‹æµ®å‹•å°æ•°ç‚¹æ•°åž‹ã¨ã—ã¦å±•é–‹ã™ã‚‹ãƒžã‚¯ãƒ­å®šæ•°ã€‚\n"
+#~ "NaN値ã¯ã€æµ®å‹•å°æ•°ç‚¹æ•°ã®è¦ç´ ã«ãŠã„ã¦ã€è² æ•°ã®å¹³æ–¹æ ¹ã‚„ 0/0 ã®çµæžœã¨ã„ã£ãŸã€æœª"
+#~ "定義ã¾ãŸã¯è¡¨ç¾ä¸èƒ½ãªå€¤ã‚’識別ã™ã‚‹ã®ã«ä½¿ã„ã¾ã™ã€‚"
+
+#~ msgid "Beginning corner."
+#~ msgstr "始端。"
+
+#~ msgid "Size from position to end."
+#~ msgstr "position ã‹ã‚‰ end ã¾ã§ã®å¤§ãã•ã€‚"
+
#~ msgid "Gamepad button 0."
#~ msgstr "ゲームパッド ボタン0。"
diff --git a/doc/translations/ko.po b/doc/translations/ko.po
index 438cd0ce90..ddc892b659 100644
--- a/doc/translations/ko.po
+++ b/doc/translations/ko.po
@@ -96,8 +96,8 @@ msgstr ""
#: modules/gdscript/doc_classes/@GDScript.xml:55
msgid ""
-"Returns the absolute value of parameter [code]s[/code] (i.e. unsigned value, "
-"works for integer and float).\n"
+"Returns the absolute value of parameter [code]s[/code] (i.e. positive "
+"value).\n"
"[codeblock]\n"
"# a is 1\n"
"a = abs(-1)\n"
@@ -152,7 +152,7 @@ msgid ""
"angle from an angle's tangent in trigonometry: [code]atan(tan(angle)) == "
"angle[/code].\n"
"The method cannot know in which quadrant the angle should fall. See [method "
-"atan2] if you always want an exact angle.\n"
+"atan2] if you have both [code]y[/code] and [code]x[/code].\n"
"[codeblock]\n"
"a = atan(0.5) # a is 0.463648\n"
"[/codeblock]"
@@ -163,12 +163,13 @@ msgid ""
"Returns the arc tangent of [code]y/x[/code] in radians. Use to get the angle "
"of tangent [code]y/x[/code]. To compute the value, the method takes into "
"account the sign of both arguments in order to determine the quadrant.\n"
+"Important note: The Y coordinate comes first, by convention.\n"
"[codeblock]\n"
"a = atan2(0, -1) # a is 3.141593\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:143
+#: modules/gdscript/doc_classes/@GDScript.xml:144
msgid ""
"Decodes a byte array back to a value. When [code]allow_objects[/code] is "
"[code]true[/code] decoding objects is allowed.\n"
@@ -177,7 +178,7 @@ msgid ""
"avoid potential security threats (remote code execution)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:155
+#: modules/gdscript/doc_classes/@GDScript.xml:156
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:145
msgid ""
"Converts a 2D point expressed in the cartesian coordinate system (X and Y "
@@ -187,17 +188,17 @@ msgstr ""
"ì§êµ 좌표계로 í‘œí˜„ëœ 2D 좌표(X축, Y축)를 극좌표계(ì›ì ìœ¼ë¡œë¶€í„°ì˜ 거리와 ê°ë„)"
"로 변환합니다."
-#: modules/gdscript/doc_classes/@GDScript.xml:164
+#: modules/gdscript/doc_classes/@GDScript.xml:165
msgid ""
-"Rounds [code]s[/code] upward, returning the smallest integral value that is "
-"not less than [code]s[/code].\n"
+"Rounds [code]s[/code] upward (towards positive infinity), returning the "
+"smallest whole number that is not less than [code]s[/code].\n"
"[codeblock]\n"
"i = ceil(1.45) # i is 2\n"
"i = ceil(1.001) # i is 2\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:177
+#: modules/gdscript/doc_classes/@GDScript.xml:178
msgid ""
"Returns a character as a String of the given Unicode code point (which is "
"compatible with ASCII code).\n"
@@ -209,7 +210,7 @@ msgid ""
"This is the inverse of [method ord]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:196
+#: modules/gdscript/doc_classes/@GDScript.xml:197
msgid ""
"Clamps [code]value[/code] and returns a value not less than [code]min[/code] "
"and not more than [code]max[/code].\n"
@@ -224,7 +225,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:216
+#: modules/gdscript/doc_classes/@GDScript.xml:217
msgid ""
"Converts from a type to another in the best way possible. The [code]type[/"
"code] parameter uses the [enum Variant.Type] values.\n"
@@ -238,7 +239,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:233
+#: modules/gdscript/doc_classes/@GDScript.xml:234
msgid ""
"Returns the cosine of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -248,7 +249,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:247
+#: modules/gdscript/doc_classes/@GDScript.xml:248
msgid ""
"Returns the hyperbolic cosine of [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -257,11 +258,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:260
+#: modules/gdscript/doc_classes/@GDScript.xml:261
msgid "Converts from decibels to linear energy (audio)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:273
+#: modules/gdscript/doc_classes/@GDScript.xml:274
msgid ""
"Returns the result of [code]value[/code] decreased by [code]step[/code] * "
"[code]amount[/code].\n"
@@ -271,42 +272,44 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:286
+#: modules/gdscript/doc_classes/@GDScript.xml:287
msgid ""
-"Returns degrees converted to radians.\n"
+"Converts an angle expressed in degrees to radians.\n"
"[codeblock]\n"
"# r is 3.141593\n"
"r = deg2rad(180)\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:299
+#: modules/gdscript/doc_classes/@GDScript.xml:300
msgid ""
"Converts a previously converted instance to a dictionary, back into an "
"instance. Useful for deserializing."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:310
-#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:90
+#: modules/gdscript/doc_classes/@GDScript.xml:311
msgid ""
-"Easing function, based on exponent. 0 is constant, 1 is linear, 0 to 1 is "
-"ease-in, 1+ is ease out. Negative values are in-out/out in."
+"Easing function, based on exponent. The curve values are: 0 is constant, 1 "
+"is linear, 0 to 1 is ease-in, 1+ is ease out. Negative values are in-out/out "
+"in."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:319
+#: modules/gdscript/doc_classes/@GDScript.xml:320
msgid ""
"The natural exponential function. It raises the mathematical constant [b]e[/"
"b] to the power of [code]s[/code] and returns it.\n"
-"[b]e[/b] has an approximate value of 2.71828.\n"
+"[b]e[/b] has an approximate value of 2.71828, and can be obtained with "
+"[code]exp(1)[/code].\n"
"For exponents to other bases use the method [method pow].\n"
"[codeblock]\n"
"a = exp(2) # Approximately 7.39\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:333
+#: modules/gdscript/doc_classes/@GDScript.xml:334
msgid ""
-"Rounds [code]s[/code] to the closest smaller integer and returns it.\n"
+"Rounds [code]s[/code] downward (towards negative infinity), returning the "
+"largest whole number that is not more than [code]s[/code].\n"
"[codeblock]\n"
"# a is 2.0\n"
"a = floor(2.99)\n"
@@ -317,7 +320,7 @@ msgid ""
"use [code]int(s)[/code] directly."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:351
+#: modules/gdscript/doc_classes/@GDScript.xml:352
msgid ""
"Returns the floating-point remainder of [code]a/b[/code], keeping the sign "
"of [code]a[/code].\n"
@@ -328,7 +331,7 @@ msgid ""
"For the integer remainder operation, use the % operator."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:367
+#: modules/gdscript/doc_classes/@GDScript.xml:368
msgid ""
"Returns the floating-point modulus of [code]a/b[/code] that wraps equally in "
"positive and negative.\n"
@@ -354,7 +357,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:398
+#: modules/gdscript/doc_classes/@GDScript.xml:399
msgid ""
"Returns a reference to the specified function [code]funcname[/code] in the "
"[code]instance[/code] node. As functions aren't first-class objects in "
@@ -369,7 +372,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:412
+#: modules/gdscript/doc_classes/@GDScript.xml:413
msgid ""
"Returns an array of dictionaries representing the current call stack.\n"
"[codeblock]\n"
@@ -389,7 +392,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:435
+#: modules/gdscript/doc_classes/@GDScript.xml:436
msgid ""
"Returns the integer hash of the variable passed.\n"
"[codeblock]\n"
@@ -397,7 +400,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:447
+#: modules/gdscript/doc_classes/@GDScript.xml:448
msgid ""
"Returns the passed instance converted to a dictionary (useful for "
"serializing).\n"
@@ -415,7 +418,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:468
+#: modules/gdscript/doc_classes/@GDScript.xml:469
msgid ""
"Returns the Object that corresponds to [code]instance_id[/code]. All Objects "
"have a unique instance ID.\n"
@@ -428,7 +431,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:488
+#: modules/gdscript/doc_classes/@GDScript.xml:489
msgid ""
"Returns a normalized value considering the given range. This is the opposite "
"of [method lerp].\n"
@@ -442,33 +445,41 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:506
+#: modules/gdscript/doc_classes/@GDScript.xml:507
msgid ""
"Returns [code]true[/code] if [code]a[/code] and [code]b[/code] are "
-"approximately equal to each other."
+"approximately equal to each other.\n"
+"Here, approximately equal means that [code]a[/code] and [code]b[/code] are "
+"within a small internal epsilon of each other, which scales with the "
+"magnitude of the numbers.\n"
+"Infinity values of the same sign are considered equal."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:515
+#: modules/gdscript/doc_classes/@GDScript.xml:518
msgid ""
"Returns whether [code]s[/code] is an infinity value (either positive "
"infinity or negative infinity)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:524
+#: modules/gdscript/doc_classes/@GDScript.xml:527
msgid ""
"Returns whether [code]instance[/code] is a valid object (e.g. has not been "
"deleted from memory)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:533
-msgid "Returns whether [code]s[/code] is a NaN (Not-A-Number) value."
+#: modules/gdscript/doc_classes/@GDScript.xml:536
+msgid ""
+"Returns whether [code]s[/code] is a NaN (\"Not a Number\" or invalid) value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:542
-msgid "Returns [code]true[/code] if [code]s[/code] is zero or almost zero."
+#: modules/gdscript/doc_classes/@GDScript.xml:545
+msgid ""
+"Returns [code]true[/code] if [code]s[/code] is zero or almost zero.\n"
+"This method is faster than using [method is_equal_approx] with one value as "
+"zero."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:551
+#: modules/gdscript/doc_classes/@GDScript.xml:555
msgid ""
"Returns length of Variant [code]var[/code]. Length is the character count of "
"String, element count of Array, size of Dictionary, etc.\n"
@@ -479,7 +490,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:569
+#: modules/gdscript/doc_classes/@GDScript.xml:573
msgid ""
"Linearly interpolates between two values by a normalized value. This is the "
"opposite of [method inverse_lerp].\n"
@@ -494,7 +505,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:588
+#: modules/gdscript/doc_classes/@GDScript.xml:592
msgid ""
"Linearly interpolates between two angles (in radians) by a normalized "
"value.\n"
@@ -511,7 +522,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:607
+#: modules/gdscript/doc_classes/@GDScript.xml:611
msgid ""
"Converts from linear energy to decibels (audio). This can be used to "
"implement volume sliders that behave as expected (since volume isn't "
@@ -527,20 +538,28 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:622
+#: modules/gdscript/doc_classes/@GDScript.xml:626
msgid ""
-"Loads a resource from the filesystem located at [code]path[/code].\n"
+"Loads a resource from the filesystem located at [code]path[/code]. The "
+"resource is loaded on the method call (unless it's referenced already "
+"elsewhere, e.g. in another script or in the scene), which might cause slight "
+"delay, especially when loading scenes. To avoid unnecessary delays when "
+"loading something multiple times, either store the resource in a variable or "
+"use [method preload].\n"
"[b]Note:[/b] Resource paths can be obtained by right-clicking on a resource "
-"in the FileSystem dock and choosing [b]Copy Path[/b].\n"
+"in the FileSystem dock and choosing \"Copy Path\" or by dragging the file "
+"from the FileSystem dock into the script.\n"
"[codeblock]\n"
-"# Load a scene called main located in the root of the project directory.\n"
-"var main = load(\"res://main.tscn\")\n"
+"# Load a scene called main located in the root of the project directory and "
+"cache it in a variable.\n"
+"var main = load(\"res://main.tscn\") # main will contain a PackedScene "
+"resource.\n"
"[/codeblock]\n"
"[b]Important:[/b] The path must be absolute, a local path will just return "
"[code]null[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:637
+#: modules/gdscript/doc_classes/@GDScript.xml:641
msgid ""
"Natural logarithm. The amount of time needed to reach a certain level of "
"continuous growth.\n"
@@ -548,10 +567,12 @@ msgid ""
"calculators, which uses a base 10 logarithm.\n"
"[codeblock]\n"
"log(10) # Returns 2.302585\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] The logarithm of [code]0[/code] returns [code]-inf[/code], "
+"while negative values return [code]-nan[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:652
+#: modules/gdscript/doc_classes/@GDScript.xml:657
msgid ""
"Returns the maximum of two values.\n"
"[codeblock]\n"
@@ -560,7 +581,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:667
+#: modules/gdscript/doc_classes/@GDScript.xml:672
msgid ""
"Returns the minimum of two values.\n"
"[codeblock]\n"
@@ -569,27 +590,39 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:684
+#: modules/gdscript/doc_classes/@GDScript.xml:689
msgid ""
"Moves [code]from[/code] toward [code]to[/code] by the [code]delta[/code] "
"value.\n"
"Use a negative [code]delta[/code] value to move away.\n"
"[codeblock]\n"
+"move_toward(5, 10, 4) # Returns 9\n"
"move_toward(10, 5, 4) # Returns 6\n"
+"move_toward(10, 5, -1.5) # Returns 11.5\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:697
+#: modules/gdscript/doc_classes/@GDScript.xml:704
msgid ""
-"Returns the nearest larger power of 2 for integer [code]value[/code].\n"
+"Returns the nearest equal or larger power of 2 for integer [code]value[/"
+"code].\n"
+"In other words, returns the smallest value [code]a[/code] where [code]a = "
+"pow(2, n)[/code] such that [code]value <= a[/code] for some non-negative "
+"integer [code]n[/code].\n"
"[codeblock]\n"
"nearest_po2(3) # Returns 4\n"
"nearest_po2(4) # Returns 4\n"
"nearest_po2(5) # Returns 8\n"
-"[/codeblock]"
+"\n"
+"nearest_po2(0) # Returns 0 (this may not be what you expect)\n"
+"nearest_po2(-1) # Returns 0 (this may not be what you expect)\n"
+"[/codeblock]\n"
+"[b]WARNING:[/b] Due to the way it is implemented, this function returns "
+"[code]0[/code] rather than [code]1[/code] for non-positive values of "
+"[code]value[/code] (in reality, 1 is the smallest integer power of 2)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:711
+#: modules/gdscript/doc_classes/@GDScript.xml:723
msgid ""
"Returns an integer representing the Unicode code point of the given Unicode "
"character [code]char[/code].\n"
@@ -601,27 +634,28 @@ msgid ""
"This is the inverse of [method char]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:726
+#: modules/gdscript/doc_classes/@GDScript.xml:738
msgid ""
-"Parse JSON text to a Variant (use [method typeof] to check if it is what you "
-"expect).\n"
-"Be aware that the JSON specification does not define integer or float types, "
-"but only a number type. Therefore, parsing a JSON text will convert all "
-"numerical values to [float] types.\n"
-"Note that JSON objects do not preserve key order like Godot dictionaries, "
-"thus you should not rely on keys being in a certain order if a dictionary is "
-"constructed from JSON. In contrast, JSON arrays retain the order of their "
+"Parse JSON text to a Variant. (Use [method typeof] to check if the Variant's "
+"type is what you expect.)\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, parsing a JSON text will convert "
+"all numerical values to [float] types.\n"
+"[b]Note:[/b] JSON objects do not preserve key order like Godot dictionaries, "
+"thus, you should not rely on keys being in a certain order if a dictionary "
+"is constructed from JSON. In contrast, JSON arrays retain the order of their "
"elements:\n"
"[codeblock]\n"
-"p = parse_json('[\"a\", \"b\", \"c\"]')\n"
-"if typeof(p) == TYPE_ARRAY:\n"
-" print(p[0]) # Prints a\n"
+"var p = JSON.parse('[\"hello\", \"world\", \"!\"]')\n"
+"if typeof(p.result) == TYPE_ARRAY:\n"
+" print(p.result[0]) # Prints \"hello\"\n"
"else:\n"
-" print(\"unexpected results\")\n"
-"[/codeblock]"
+" push_error(\"Unexpected results.\")\n"
+"[/codeblock]\n"
+"See also [JSON] for an alternative way to parse JSON text."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:746
+#: modules/gdscript/doc_classes/@GDScript.xml:759
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:142
msgid ""
"Converts a 2D point expressed in the polar coordinate system (a distance "
@@ -629,7 +663,7 @@ msgid ""
"cartesian coordinate system (X and Y axis)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:757
+#: modules/gdscript/doc_classes/@GDScript.xml:770
msgid ""
"Returns the integer modulus of [code]a/b[/code] that wraps equally in "
"positive and negative.\n"
@@ -655,7 +689,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:788
+#: modules/gdscript/doc_classes/@GDScript.xml:801
msgid ""
"Returns the result of [code]x[/code] raised to the power of [code]y[/code].\n"
"[codeblock]\n"
@@ -663,19 +697,23 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:800
+#: modules/gdscript/doc_classes/@GDScript.xml:813
msgid ""
-"Returns a resource from the filesystem that is loaded during script "
-"parsing.\n"
+"Returns a [Resource] from the filesystem located at [code]path[/code]. The "
+"resource is loaded during script parsing, i.e. is loaded with the script and "
+"[method preload] effectively acts as a reference to that resource. Note that "
+"the method requires a constant path. If you want to load a resource from a "
+"dynamic/variable path, use [method load].\n"
"[b]Note:[/b] Resource paths can be obtained by right clicking on a resource "
-"in the Assets Panel and choosing \"Copy Path\".\n"
+"in the Assets Panel and choosing \"Copy Path\" or by dragging the file from "
+"the FileSystem dock into the script.\n"
"[codeblock]\n"
-"# Load a scene called main located in the root of the project directory.\n"
-"var main = preload(\"res://main.tscn\")\n"
+"# Instance a scene.\n"
+"var diamond = preload(\"res://diamond.tscn\").instance()\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:812
+#: modules/gdscript/doc_classes/@GDScript.xml:825
msgid ""
"Converts one or more arguments to strings in the best way possible and "
"prints them to the console.\n"
@@ -685,11 +723,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:823
+#: modules/gdscript/doc_classes/@GDScript.xml:836
msgid "Like [method print], but prints only when used in debug mode."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:830
+#: modules/gdscript/doc_classes/@GDScript.xml:843
msgid ""
"Prints a stack track at code location, only works when running with debugger "
"turned on.\n"
@@ -699,7 +737,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:841
+#: modules/gdscript/doc_classes/@GDScript.xml:854
msgid ""
"Prints one or more arguments to strings in the best way possible to standard "
"error line.\n"
@@ -708,7 +746,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:851
+#: modules/gdscript/doc_classes/@GDScript.xml:864
msgid ""
"Prints one or more arguments to strings in the best way possible to console. "
"No newline is added at the end.\n"
@@ -722,7 +760,7 @@ msgid ""
"method, such as [method print]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:864
+#: modules/gdscript/doc_classes/@GDScript.xml:877
msgid ""
"Prints one or more arguments to the console with a space between each "
"argument.\n"
@@ -731,7 +769,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:874
+#: modules/gdscript/doc_classes/@GDScript.xml:887
msgid ""
"Prints one or more arguments to the console with a tab between each "
"argument.\n"
@@ -740,7 +778,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:886
+#: modules/gdscript/doc_classes/@GDScript.xml:899
msgid ""
"Pushes an error message to Godot's built-in debugger and to the OS "
"terminal.\n"
@@ -750,7 +788,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:898
+#: modules/gdscript/doc_classes/@GDScript.xml:911
msgid ""
"Pushes a warning message to Godot's built-in debugger and to the OS "
"terminal.\n"
@@ -760,15 +798,15 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:910
+#: modules/gdscript/doc_classes/@GDScript.xml:923
msgid ""
-"Converts from radians to degrees.\n"
+"Converts an angle expressed in radians to degrees.\n"
"[codeblock]\n"
"rad2deg(0.523599) # Returns 30\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:924
+#: modules/gdscript/doc_classes/@GDScript.xml:937
msgid ""
"Random range, any floating point value between [code]from[/code] and "
"[code]to[/code].\n"
@@ -777,7 +815,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:936
+#: modules/gdscript/doc_classes/@GDScript.xml:949
msgid ""
"Random from seed: pass a [code]seed[/code], and an array with both number "
"and new seed is returned. \"Seed\" here refers to the internal state of the "
@@ -785,7 +823,7 @@ msgid ""
"implementation is 64 bits."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:943
+#: modules/gdscript/doc_classes/@GDScript.xml:956
msgid ""
"Returns a random floating point value on the interval [code][0, 1][/code].\n"
"[codeblock]\n"
@@ -793,7 +831,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:953
+#: modules/gdscript/doc_classes/@GDScript.xml:966
msgid ""
"Returns a random unsigned 32 bit integer. Use remainder to obtain a random "
"value in the interval [code][0, N - 1][/code] (where N is smaller than "
@@ -806,7 +844,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:966
+#: modules/gdscript/doc_classes/@GDScript.xml:979
msgid ""
"Randomizes the seed (or the internal state) of the random number generator. "
"Current implementation reseeds using a number based on time.\n"
@@ -816,7 +854,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:977
+#: modules/gdscript/doc_classes/@GDScript.xml:990
msgid ""
"Returns an array with the given range. Range can be 1 argument N (0 to N-1), "
"two arguments (initial, final-1) or three arguments (initial, final-1, "
@@ -846,7 +884,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1017
+#: modules/gdscript/doc_classes/@GDScript.xml:1030
msgid ""
"Maps a [code]value[/code] from range [code][istart, istop][/code] to [code]"
"[ostart, ostop][/code].\n"
@@ -855,16 +893,16 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1029
+#: modules/gdscript/doc_classes/@GDScript.xml:1042
msgid ""
-"Returns the integral value that is nearest to [code]s[/code], with halfway "
-"cases rounded away from zero.\n"
+"Rounds [code]s[/code] to the nearest whole number, with halfway cases "
+"rounded away from zero.\n"
"[codeblock]\n"
"round(2.6) # Returns 3\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1041
+#: modules/gdscript/doc_classes/@GDScript.xml:1054
msgid ""
"Sets seed for the random number generator.\n"
"[codeblock]\n"
@@ -873,7 +911,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1054
+#: modules/gdscript/doc_classes/@GDScript.xml:1067
msgid ""
"Returns the sign of [code]s[/code]: -1 or 1. Returns 0 if [code]s[/code] is "
"0.\n"
@@ -884,7 +922,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1068
+#: modules/gdscript/doc_classes/@GDScript.xml:1081
msgid ""
"Returns the sine of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -892,7 +930,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1080
+#: modules/gdscript/doc_classes/@GDScript.xml:1093
msgid ""
"Returns the hyperbolic sine of [code]s[/code].\n"
"[codeblock]\n"
@@ -901,27 +939,37 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1097
+#: modules/gdscript/doc_classes/@GDScript.xml:1110
msgid ""
-"Returns a number smoothly interpolated between the [code]from[/code] and "
-"[code]to[/code], based on the [code]weight[/code]. Similar to [method lerp], "
-"but interpolates faster at the beginning and slower at the end.\n"
+"Returns the result of smoothly interpolating the value of [code]s[/code] "
+"between [code]0[/code] and [code]1[/code], based on the where [code]s[/code] "
+"lies with respect to the edges [code]from[/code] and [code]to[/code].\n"
+"The return value is [code]0[/code] if [code]s <= from[/code], and [code]1[/"
+"code] if [code]s >= to[/code]. If [code]s[/code] lies between [code]from[/"
+"code] and [code]to[/code], the returned value follows an S-shaped curve that "
+"maps [code]s[/code] between [code]0[/code] and [code]1[/code].\n"
+"This S-shaped curve is the cubic Hermite interpolator, given by [code]f(s) = "
+"3*s^2 - 2*s^3[/code].\n"
"[codeblock]\n"
-"smoothstep(0, 2, 0.5) # Returns 0.15\n"
+"smoothstep(0, 2, -5.0) # Returns 0.0\n"
+"smoothstep(0, 2, 0.5) # Returns 0.15625\n"
"smoothstep(0, 2, 1.0) # Returns 0.5\n"
"smoothstep(0, 2, 2.0) # Returns 1.0\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1111
+#: modules/gdscript/doc_classes/@GDScript.xml:1127
msgid ""
-"Returns the square root of [code]s[/code].\n"
+"Returns the square root of [code]s[/code], where [code]s[/code] is a non-"
+"negative number.\n"
"[codeblock]\n"
"sqrt(9) # Returns 3\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b]Negative values of [code]s[/code] return NaN. If you need "
+"negative inputs, use [code]System.Numerics.Complex[/code] in C#."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1123
+#: modules/gdscript/doc_classes/@GDScript.xml:1140
msgid ""
"Returns the position of the first non-zero digit, after the decimal point. "
"Note that the maximum return value is 10, which is a design decision in the "
@@ -936,7 +984,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1142
+#: modules/gdscript/doc_classes/@GDScript.xml:1159
msgid ""
"Snaps float value [code]s[/code] to a given [code]step[/code]. This can also "
"be used to round a floating point number to an arbitrary number of "
@@ -947,7 +995,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1153
+#: modules/gdscript/doc_classes/@GDScript.xml:1170
msgid ""
"Converts one or more arguments to string in the best way possible.\n"
"[codeblock]\n"
@@ -958,7 +1006,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1168
+#: modules/gdscript/doc_classes/@GDScript.xml:1185
msgid ""
"Converts a formatted string that was returned by [method var2str] to the "
"original value.\n"
@@ -969,7 +1017,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1182
+#: modules/gdscript/doc_classes/@GDScript.xml:1199
msgid ""
"Returns the tangent of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -977,7 +1025,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1194
+#: modules/gdscript/doc_classes/@GDScript.xml:1211
msgid ""
"Returns the hyperbolic tangent of [code]s[/code].\n"
"[codeblock]\n"
@@ -986,18 +1034,25 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1207
+#: modules/gdscript/doc_classes/@GDScript.xml:1224
msgid ""
-"Converts a Variant [code]var[/code] to JSON text and return the result. "
+"Converts a [Variant] [code]var[/code] to JSON text and return the result. "
"Useful for serializing data to store or send over the network.\n"
"[codeblock]\n"
+"# Both numbers below are integers.\n"
"a = { \"a\": 1, \"b\": 2 }\n"
"b = to_json(a)\n"
"print(b) # {\"a\":1, \"b\":2}\n"
-"[/codeblock]"
+"# Both numbers above are floats, even if they display without any decimal "
+"places.\n"
+"[/codeblock]\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, converting a [Variant] to JSON "
+"text will convert all numerical values to [float] types.\n"
+"See also [JSON] for an alternative way to convert a [Variant] to JSON text."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1221
+#: modules/gdscript/doc_classes/@GDScript.xml:1242
msgid ""
"Returns whether the given class exists in [ClassDB].\n"
"[codeblock]\n"
@@ -1006,7 +1061,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1234
+#: modules/gdscript/doc_classes/@GDScript.xml:1255
msgid ""
"Returns the internal type of the given Variant object, using the [enum "
"Variant.Type] values.\n"
@@ -1019,7 +1074,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1250
+#: modules/gdscript/doc_classes/@GDScript.xml:1271
msgid ""
"Checks that [code]json[/code] is valid JSON data. Returns an empty string if "
"valid, or an error message otherwise.\n"
@@ -1027,20 +1082,20 @@ msgid ""
"j = to_json([1, 2, 3])\n"
"v = validate_json(j)\n"
"if not v:\n"
-" print(\"valid\")\n"
+" print(\"Valid JSON.\")\n"
"else:\n"
-" prints(\"invalid\", v)\n"
+" push_error(\"Invalid JSON: \" + v)\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1269
+#: modules/gdscript/doc_classes/@GDScript.xml:1290
msgid ""
"Encodes a variable value to a byte array. When [code]full_objects[/code] is "
"[code]true[/code] encoding objects is allowed (and can potentially include "
"code)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1278
+#: modules/gdscript/doc_classes/@GDScript.xml:1299
msgid ""
"Converts a Variant [code]var[/code] to a formatted string that can later be "
"parsed using [method str2var].\n"
@@ -1057,7 +1112,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1298
+#: modules/gdscript/doc_classes/@GDScript.xml:1319
msgid ""
"Returns a weak reference to an object.\n"
"A weak reference to an object is not enough to keep the object alive: when "
@@ -1067,135 +1122,67 @@ msgid ""
"reference may return the object even if there are no strong references to it."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1312
+#: modules/gdscript/doc_classes/@GDScript.xml:1333
msgid ""
"Wraps float [code]value[/code] between [code]min[/code] and [code]max[/"
"code].\n"
"Usable for creating loop-alike behavior or infinite surfaces.\n"
"[codeblock]\n"
-"# a is 0.5\n"
-"a = wrapf(10.5, 0.0, 10.0)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# a is 9.5\n"
-"a = wrapf(-0.5, 0.0, 10.0)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# Infinite loop between 0.0 and 0.99\n"
-"f = wrapf(f + 0.1, 0.0, 1.0)\n"
+"# Infinite loop between 5.0 and 9.9\n"
+"value = wrapf(value + 0.1, 5.0, 10.0)\n"
"[/codeblock]\n"
"[codeblock]\n"
"# Infinite rotation (in radians)\n"
"angle = wrapf(angle + 0.1, 0.0, TAU)\n"
"[/codeblock]\n"
-"[b]Note:[/b] If you just want to wrap between 0.0 and [code]n[/code] (where "
-"[code]n[/code] is a positive floating-point value), it is better for "
-"performance to use the [method fmod] method like [code]fmod(number, n)[/"
-"code].\n"
-"[code]wrapf[/code] is more flexible than using the [method fmod] approach by "
-"giving the user a simple control over the minimum value. It also fully "
-"supports negative numbers, e.g.\n"
"[codeblock]\n"
"# Infinite rotation (in radians)\n"
"angle = wrapf(angle + 0.1, -PI, PI)\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] If [code]min[/code] is [code]0[/code], this is equivalent to "
+"[method fposmod], so prefer using that instead.\n"
+"[code]wrapf[/code] is more flexible than using the [method fposmod] approach "
+"by giving the user control over the minimum value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1348
+#: modules/gdscript/doc_classes/@GDScript.xml:1361
msgid ""
"Wraps integer [code]value[/code] between [code]min[/code] and [code]max[/"
"code].\n"
"Usable for creating loop-alike behavior or infinite surfaces.\n"
"[codeblock]\n"
-"# a is 0\n"
-"a = wrapi(10, 0, 10)\n"
+"# Infinite loop between 5 and 9\n"
+"frame = wrapi(frame + 1, 5, 10)\n"
"[/codeblock]\n"
"[codeblock]\n"
-"# a is 9\n"
-"a = wrapi(-1, 0, 10)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# Infinite loop between 0 and 9\n"
-"frame = wrapi(frame + 1, 0, 10)\n"
-"[/codeblock]\n"
-"[b]Note:[/b] If you just want to wrap between 0 and [code]n[/code] (where "
-"[code]n[/code] is a positive integer value), it is better for performance to "
-"use the modulo operator like [code]number % n[/code].\n"
-"[code]wrapi[/code] is more flexible than using the modulo approach by giving "
-"the user a simple control over the minimum value. It also fully supports "
-"negative numbers, e.g.\n"
-"[codeblock]\n"
"# result is -2\n"
"var result = wrapi(-6, -5, -1)\n"
-"[/codeblock]"
-msgstr ""
-
-#: modules/gdscript/doc_classes/@GDScript.xml:1378
-msgid ""
-"Stops the function execution and returns the current suspended state to the "
-"calling function.\n"
-"From the caller, call [method GDScriptFunctionState.resume] on the state to "
-"resume execution. This invalidates the state. Within the resumed function, "
-"[code]yield()[/code] returns whatever was passed to the [code]resume()[/"
-"code] function call.\n"
-"If passed an object and a signal, the execution is resumed when the object "
-"emits the given signal. In this case, [code]yield()[/code] returns the "
-"argument passed to [code]emit_signal()[/code] if the signal takes only one "
-"argument, or an array containing all the arguments passed to "
-"[code]emit_signal()[/code] if the signal takes multiple arguments.\n"
-"You can also use [code]yield[/code] to wait for a function to finish:\n"
-"[codeblock]\n"
-"func _ready():\n"
-" yield(countdown(), \"completed\") # waiting for the countdown() function "
-"to complete\n"
-" print('Ready')\n"
-"\n"
-"func countdown():\n"
-" yield(get_tree(), \"idle_frame\") # returns a GDScriptFunctionState "
-"object to _ready()\n"
-" print(3)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-" print(2)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-" print(1)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-"\n"
-"# prints:\n"
-"# 3\n"
-"# 2\n"
-"# 1\n"
-"# Ready\n"
"[/codeblock]\n"
-"When yielding on a function, the [code]completed[/code] signal will be "
-"emitted automatically when the function returns. It can, therefore, be used "
-"as the [code]signal[/code] parameter of the [code]yield[/code] method to "
-"resume.\n"
-"In order to yield on a function, the resulting function should also return a "
-"[code]GDScriptFunctionState[/code]. Notice [code]yield(get_tree(), "
-"\"idle_frame\")[/code] from the above example."
+"[b]Note:[/b] If [code]min[/code] is [code]0[/code], this is equivalent to "
+"[method posmod], so prefer using that instead.\n"
+"[code]wrapi[/code] is more flexible than using the [method posmod] approach "
+"by giving the user control over the minimum value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1409
+#: modules/gdscript/doc_classes/@GDScript.xml:1378
msgid ""
"Constant that represents how many times the diameter of a circle fits around "
-"its perimeter."
+"its perimeter. This is equivalent to [code]TAU / 2[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1412
-msgid "The circle constant, the circumference of the unit circle."
+#: modules/gdscript/doc_classes/@GDScript.xml:1381
+msgid "The circle constant, the circumference of the unit circle in radians."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1415
-msgid "A positive infinity. (For negative infinity, use -INF)."
+#: modules/gdscript/doc_classes/@GDScript.xml:1384
+msgid "Positive infinity. For negative infinity, use -INF."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1418
+#: modules/gdscript/doc_classes/@GDScript.xml:1387
msgid ""
-"Macro constant that expands to an expression of type float that represents a "
-"NaN.\n"
-"The NaN values are used to identify undefined or non-representable values "
-"for floating-point elements, such as the square root of negative numbers or "
-"the result of 0/0."
+"\"Not a Number\", an invalid value. [code]NaN[/code] has special properties, "
+"including that it is not equal to itself. It is output by some invalid "
+"operations, such as dividing zero by zero."
msgstr ""
#: doc/classes/@GlobalScope.xml:4
@@ -3431,130 +3418,141 @@ msgid ""
msgstr ""
#: doc/classes/AABB.xml:10 doc/classes/Plane.xml:10 doc/classes/Rect2.xml:11
-#: doc/classes/Rect2i.xml:11 doc/classes/Transform.xml:10
+#: doc/classes/Rect2i.xml:11 doc/classes/Transform.xml:11
#: doc/classes/Vector2.xml:12 doc/classes/Vector2i.xml:12
#: doc/classes/Vector3.xml:12 doc/classes/Vector3i.xml:12
msgid "https://docs.godotengine.org/en/latest/tutorials/math/index.html"
msgstr ""
#: doc/classes/AABB.xml:21
-msgid "Optional constructor, accepts position and size."
+msgid "Constructs an [AABB] from a position and size."
msgstr ""
-#: doc/classes/AABB.xml:30
+#: doc/classes/AABB.xml:28
+msgid ""
+"Returns an AABB with equivalent position and size, modified so that the most-"
+"negative corner is the origin and the size is positive."
+msgstr ""
+
+#: doc/classes/AABB.xml:37
msgid ""
"Returns [code]true[/code] if this [AABB] completely encloses another one."
msgstr ""
-#: doc/classes/AABB.xml:39
+#: doc/classes/AABB.xml:46
msgid "Returns this [AABB] expanded to include a given point."
msgstr ""
-#: doc/classes/AABB.xml:46
+#: doc/classes/AABB.xml:53
msgid "Returns the volume of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:55
+#: doc/classes/AABB.xml:62
msgid "Gets the position of the 8 endpoints of the [AABB] in space."
msgstr ""
-#: doc/classes/AABB.xml:62
+#: doc/classes/AABB.xml:69
msgid "Returns the normalized longest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:69
+#: doc/classes/AABB.xml:76
msgid ""
"Returns the index of the longest axis of the [AABB] (according to "
"[Vector3]'s [code]AXIS_*[/code] constants)."
msgstr ""
-#: doc/classes/AABB.xml:76
+#: doc/classes/AABB.xml:83
msgid "Returns the scalar length of the longest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:83
+#: doc/classes/AABB.xml:90
msgid "Returns the normalized shortest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:90
+#: doc/classes/AABB.xml:97
msgid ""
"Returns the index of the shortest axis of the [AABB] (according to "
"[Vector3]::AXIS* enum)."
msgstr ""
-#: doc/classes/AABB.xml:97
+#: doc/classes/AABB.xml:104
msgid "Returns the scalar length of the shortest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:106
+#: doc/classes/AABB.xml:113
msgid ""
"Returns the support point in a given direction. This is useful for collision "
"detection algorithms."
msgstr ""
-#: doc/classes/AABB.xml:115
+#: doc/classes/AABB.xml:122
msgid ""
"Returns a copy of the [AABB] grown a given amount of units towards all the "
"sides."
msgstr ""
-#: doc/classes/AABB.xml:122
+#: doc/classes/AABB.xml:129
msgid "Returns [code]true[/code] if the [AABB] is flat or empty."
msgstr ""
-#: doc/classes/AABB.xml:129
+#: doc/classes/AABB.xml:136
msgid "Returns [code]true[/code] if the [AABB] is empty."
msgstr ""
-#: doc/classes/AABB.xml:138
+#: doc/classes/AABB.xml:145
msgid "Returns [code]true[/code] if the [AABB] contains a point."
msgstr ""
-#: doc/classes/AABB.xml:147
+#: doc/classes/AABB.xml:154
msgid ""
"Returns the intersection between two [AABB]. An empty AABB (size 0,0,0) is "
"returned on failure."
msgstr ""
-#: doc/classes/AABB.xml:156
+#: doc/classes/AABB.xml:163
msgid "Returns [code]true[/code] if the [AABB] overlaps with another."
msgstr ""
-#: doc/classes/AABB.xml:165
+#: doc/classes/AABB.xml:172
msgid "Returns [code]true[/code] if the [AABB] is on both sides of a plane."
msgstr ""
-#: doc/classes/AABB.xml:176
+#: doc/classes/AABB.xml:183
msgid ""
"Returns [code]true[/code] if the [AABB] intersects the line segment between "
"[code]from[/code] and [code]to[/code]."
msgstr ""
-#: doc/classes/AABB.xml:185
+#: doc/classes/AABB.xml:192
msgid ""
"Returns [code]true[/code] if this [AABB] and [code]aabb[/code] are "
"approximately equal, by calling [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/AABB.xml:194
+#: doc/classes/AABB.xml:201
msgid ""
"Returns a larger [AABB] that contains both this [AABB] and [code]with[/code]."
msgstr ""
-#: doc/classes/AABB.xml:200
+#: doc/classes/AABB.xml:207 doc/classes/Rect2.xml:174
+#: doc/classes/Rect2i.xml:163
msgid ""
-"Ending corner. This is calculated as [code]position + size[/code]. Changing "
-"this property changes [member size] accordingly."
+"Ending corner. This is calculated as [code]position + size[/code]. Setting "
+"this value will change the size."
msgstr ""
-#: doc/classes/AABB.xml:203
-msgid "Beginning corner."
+#: doc/classes/AABB.xml:210 doc/classes/Rect2.xml:177
+#: doc/classes/Rect2i.xml:166
+msgid "Beginning corner. Typically has values lower than [member end]."
msgstr ""
-#: doc/classes/AABB.xml:206 doc/classes/Rect2.xml:180
+#: doc/classes/AABB.xml:213 doc/classes/Rect2.xml:180
#: doc/classes/Rect2i.xml:169
-msgid "Size from position to end."
+msgid ""
+"Size from [member position] to [member end]. Typically all components are "
+"positive.\n"
+"If the size is negative, you can use [method abs] to fix it."
msgstr ""
#: doc/classes/AcceptDialog.xml:4
@@ -3618,11 +3616,11 @@ msgstr ""
msgid "The text displayed by the dialog."
msgstr ""
-#: doc/classes/AcceptDialog.xml:82
+#: doc/classes/AcceptDialog.xml:83
msgid "Emitted when the dialog is accepted, i.e. the OK button is pressed."
msgstr ""
-#: doc/classes/AcceptDialog.xml:89
+#: doc/classes/AcceptDialog.xml:90
msgid "Emitted when a custom button is pressed. See [method add_button]."
msgstr ""
@@ -3675,7 +3673,7 @@ msgstr ""
#: doc/classes/AESContext.xml:54
msgid ""
"Get the current IV state for this context (IV gets updated when calling "
-"[method update]). You normally don't need this funciton.\n"
+"[method update]). You normally don't need this function.\n"
"Note: This function only makes sense when the context is started with "
"[constant MODE_CBC_ENCRYPT] or [constant MODE_CBC_DECRYPT]."
msgstr ""
@@ -3753,12 +3751,14 @@ msgid "If [code]true[/code], texture will be centered."
msgstr ""
#: doc/classes/AnimatedSprite2D.xml:46 doc/classes/Sprite2D.xml:41
-#: doc/classes/SpriteBase3D.xml:61 doc/classes/TextureRect.xml:18
+#: doc/classes/SpriteBase3D.xml:61 doc/classes/TextureButton.xml:19
+#: doc/classes/TextureRect.xml:18
msgid "If [code]true[/code], texture is flipped horizontally."
msgstr ""
#: doc/classes/AnimatedSprite2D.xml:49 doc/classes/Sprite2D.xml:44
-#: doc/classes/SpriteBase3D.xml:64 doc/classes/TextureRect.xml:21
+#: doc/classes/SpriteBase3D.xml:64 doc/classes/TextureButton.xml:22
+#: doc/classes/TextureRect.xml:21
msgid "If [code]true[/code], texture is flipped vertically."
msgstr ""
@@ -3925,10 +3925,10 @@ msgid ""
"[codeblock]\n"
"# This creates an animation that makes the node \"Enemy\" move to the right "
"by\n"
-"# 100 pixels in 1 second.\n"
+"# 100 pixels in 0.5 seconds.\n"
"var animation = Animation.new()\n"
"var track_index = animation.add_track(Animation.TYPE_VALUE)\n"
-"animation.track_set_path(track_index, \"Enemy:position.x\")\n"
+"animation.track_set_path(track_index, \"Enemy:position:x\")\n"
"animation.track_insert_key(track_index, 0.0, 0)\n"
"animation.track_insert_key(track_index, 0.5, 100)\n"
"[/codeblock]\n"
@@ -6056,10 +6056,10 @@ msgstr ""
msgid ""
"Returns [code]true[/code] if the array contains the given value.\n"
"[codeblock]\n"
-"[\"inside\", 7].has(\"inside\") == true\n"
-"[\"inside\", 7].has(\"outside\") == false\n"
-"[\"inside\", 7].has(7) == true\n"
-"[\"inside\", 7].has(\"7\") == false\n"
+"print([\"inside\", 7].has(\"inside\")) # True\n"
+"print([\"inside\", 7].has(\"outside\")) # False\n"
+"print([\"inside\", 7].has(7)) # True\n"
+"print([\"inside\", 7].has(\"7\")) # False\n"
"[/codeblock]\n"
"[b]Note:[/b] This is equivalent to using the [code]in[/code] operator as "
"follows:\n"
@@ -6080,11 +6080,11 @@ msgid ""
"valid, or at the end of the array ([code]pos == size()[/code])."
msgstr ""
-#: doc/classes/Array.xml:265 doc/classes/PackedByteArray.xml:107
-#: doc/classes/PackedColorArray.xml:62 doc/classes/PackedFloat32Array.xml:63
-#: doc/classes/PackedFloat64Array.xml:63 doc/classes/PackedInt32Array.xml:63
-#: doc/classes/PackedInt64Array.xml:63 doc/classes/PackedStringArray.xml:62
-#: doc/classes/PackedVector2Array.xml:62 doc/classes/PackedVector3Array.xml:62
+#: doc/classes/Array.xml:265 doc/classes/PackedByteArray.xml:116
+#: doc/classes/PackedColorArray.xml:71 doc/classes/PackedFloat32Array.xml:72
+#: doc/classes/PackedFloat64Array.xml:72 doc/classes/PackedInt32Array.xml:72
+#: doc/classes/PackedInt64Array.xml:72 doc/classes/PackedStringArray.xml:71
+#: doc/classes/PackedVector2Array.xml:71 doc/classes/PackedVector3Array.xml:71
msgid "Reverses the order of the elements in the array."
msgstr ""
@@ -6114,8 +6114,8 @@ msgid ""
"code] if the array is empty."
msgstr ""
-#: doc/classes/Array.xml:302 doc/classes/PackedByteArray.xml:116
-#: doc/classes/PackedFloat32Array.xml:72 doc/classes/PackedFloat64Array.xml:72
+#: doc/classes/Array.xml:302 doc/classes/PackedByteArray.xml:125
+#: doc/classes/PackedFloat32Array.xml:81 doc/classes/PackedFloat64Array.xml:81
msgid "Appends an element at the end of the array."
msgstr ""
@@ -6123,11 +6123,11 @@ msgstr ""
msgid "Adds an element at the beginning of the array."
msgstr ""
-#: doc/classes/Array.xml:320 doc/classes/PackedByteArray.xml:125
-#: doc/classes/PackedColorArray.xml:80 doc/classes/PackedFloat32Array.xml:81
-#: doc/classes/PackedFloat64Array.xml:81 doc/classes/PackedInt32Array.xml:81
-#: doc/classes/PackedInt64Array.xml:81 doc/classes/PackedStringArray.xml:80
-#: doc/classes/PackedVector2Array.xml:80 doc/classes/PackedVector3Array.xml:80
+#: doc/classes/Array.xml:320 doc/classes/PackedByteArray.xml:134
+#: doc/classes/PackedColorArray.xml:89 doc/classes/PackedFloat32Array.xml:90
+#: doc/classes/PackedFloat64Array.xml:90 doc/classes/PackedInt32Array.xml:90
+#: doc/classes/PackedInt64Array.xml:90 doc/classes/PackedStringArray.xml:89
+#: doc/classes/PackedVector2Array.xml:89 doc/classes/PackedVector3Array.xml:89
msgid "Removes an element from the array by index."
msgstr ""
@@ -6410,7 +6410,7 @@ msgid ""
msgstr ""
#: doc/classes/ArrayMesh.xml:235 doc/classes/Mesh.xml:210
-#: doc/classes/RenderingServer.xml:3115
+#: doc/classes/RenderingServer.xml:3111
msgid "Represents the size of the [enum ArrayType] enum."
msgstr ""
@@ -8227,7 +8227,9 @@ msgid ""
msgstr ""
#: doc/classes/BaseButton.xml:16
-msgid "Called when the button is pressed."
+msgid ""
+"Called when the button is pressed. If you need to know the button's pressed "
+"state (and [member toggle_mode] is active), use [method _toggled] instead."
msgstr ""
#: doc/classes/BaseButton.xml:25
@@ -8321,43 +8323,45 @@ msgstr ""
msgid ""
"Emitted when the button is toggled or pressed. This is on [signal "
"button_down] if [member action_mode] is [constant ACTION_MODE_BUTTON_PRESS] "
-"and on [signal button_up] otherwise."
+"and on [signal button_up] otherwise.\n"
+"If you need to know the button's pressed state (and [member toggle_mode] is "
+"active), use [signal toggled] instead."
msgstr ""
-#: doc/classes/BaseButton.xml:98
+#: doc/classes/BaseButton.xml:99
msgid ""
"Emitted when the button was just toggled between pressed and normal states "
"(only if [member toggle_mode] is active). The new state is contained in the "
"[code]button_pressed[/code] argument."
msgstr ""
-#: doc/classes/BaseButton.xml:104
+#: doc/classes/BaseButton.xml:105
msgid ""
"The normal state (i.e. not pressed, not hovered, not toggled and enabled) of "
"buttons."
msgstr ""
-#: doc/classes/BaseButton.xml:107
+#: doc/classes/BaseButton.xml:108
msgid "The state of buttons are pressed."
msgstr ""
-#: doc/classes/BaseButton.xml:110
+#: doc/classes/BaseButton.xml:111
msgid "The state of buttons are hovered."
msgstr ""
-#: doc/classes/BaseButton.xml:113
+#: doc/classes/BaseButton.xml:114
msgid "The state of buttons are disabled."
msgstr ""
-#: doc/classes/BaseButton.xml:116
+#: doc/classes/BaseButton.xml:117
msgid "The state of buttons are both hovered and pressed."
msgstr ""
-#: doc/classes/BaseButton.xml:119
+#: doc/classes/BaseButton.xml:120
msgid "Require just a press to consider the button clicked."
msgstr ""
-#: doc/classes/BaseButton.xml:122
+#: doc/classes/BaseButton.xml:123
msgid ""
"Require a press and a subsequent release before considering the button "
"clicked."
@@ -9050,22 +9054,22 @@ msgstr ""
msgid "Represents the size of the [enum TextureParam] enum."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:451 doc/classes/RenderingServer.xml:3657
-#: doc/classes/Viewport.xml:390
+#: doc/classes/BaseMaterial3D.xml:451 doc/classes/RenderingServer.xml:3668
+#: doc/classes/Viewport.xml:393
msgid ""
"The texture filter reads from the nearest pixel only. The simplest and "
"fastest method of filtering, but the texture will look pixelized."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:454 doc/classes/RenderingServer.xml:3660
-#: doc/classes/Viewport.xml:393
+#: doc/classes/BaseMaterial3D.xml:454 doc/classes/RenderingServer.xml:3671
+#: doc/classes/Viewport.xml:396
msgid ""
"The texture filter blends between the nearest 4 pixels. Use this when you "
"want to avoid a pixelated style, but do not want mipmaps."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:457 doc/classes/RenderingServer.xml:3663
-#: doc/classes/Viewport.xml:396
+#: doc/classes/BaseMaterial3D.xml:457 doc/classes/RenderingServer.xml:3674
+#: doc/classes/Viewport.xml:399
msgid ""
"The texture filter reads from the nearest pixel in the nearest mipmap. The "
"fastest way to read from textures with mipmaps."
@@ -9078,14 +9082,14 @@ msgid ""
"smooth out pixels that are far from the camera."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:463 doc/classes/RenderingServer.xml:3669
+#: doc/classes/BaseMaterial3D.xml:463 doc/classes/RenderingServer.xml:3680
msgid ""
"The texture filter reads from the nearest pixel, but selects a mipmap based "
"on the angle between the surface and the camera view. This reduces artifacts "
"on surfaces that are almost in line with the camera."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:466 doc/classes/RenderingServer.xml:3672
+#: doc/classes/BaseMaterial3D.xml:466 doc/classes/RenderingServer.xml:3683
msgid ""
"The texture filter blends between the nearest 4 pixels and selects a mipmap "
"based on the angle between the surface and the camera view. This reduces "
@@ -9094,7 +9098,7 @@ msgid ""
"texturing."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:469 doc/classes/CanvasItem.xml:685
+#: doc/classes/BaseMaterial3D.xml:469 doc/classes/CanvasItem.xml:695
msgid "Represents the size of the [enum TextureFilter] enum."
msgstr ""
@@ -9317,8 +9321,8 @@ msgstr ""
msgid "Enables the shadow to opacity feature."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:622 doc/classes/RenderingServer.xml:3684
-#: doc/classes/Viewport.xml:408
+#: doc/classes/BaseMaterial3D.xml:622 doc/classes/RenderingServer.xml:3695
+#: doc/classes/Viewport.xml:411
msgid ""
"Enables the texture to repeat when UV coordinates are outside the 0-1 range. "
"If using one of the linear filtering modes, this can result in artifacts at "
@@ -9459,167 +9463,195 @@ msgstr ""
#: doc/classes/Basis.xml:7
msgid ""
-"3×3 matrix used for 3D rotation and scale. Contains 3 vector fields X, Y and "
-"Z as its columns, which can be interpreted as the local basis vectors of a "
-"transformation. Can also be accessed as array of 3D vectors. These vectors "
-"are orthogonal to each other, but are not necessarily normalized (due to "
-"scaling). Almost always used as an orthogonal basis for a [Transform].\n"
-"For such use, it is composed of a scaling and a rotation matrix, in that "
-"order (M = R.S)."
+"3×3 matrix used for 3D rotation and scale. Almost always used as an "
+"orthogonal basis for a Transform.\n"
+"Contains 3 vector fields X, Y and Z as its columns, which are typically "
+"interpreted as the local basis vectors of a transformation. For such use, it "
+"is composed of a scaling and a rotation matrix, in that order (M = R.S).\n"
+"Can also be accessed as array of 3D vectors. These vectors are normally "
+"orthogonal to each other, but are not necessarily normalized (due to "
+"scaling).\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
+msgstr ""
+
+#: doc/classes/Basis.xml:13 doc/classes/Transform.xml:12
+#: doc/classes/Transform2D.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/math/"
+"matrices_and_transforms.html"
msgstr ""
-#: doc/classes/Basis.xml:11 doc/classes/Transform.xml:11
+#: doc/classes/Basis.xml:14 doc/classes/Transform.xml:13
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/using_transforms.html"
msgstr ""
-#: doc/classes/Basis.xml:20
-msgid "Create a rotation matrix from the given quaternion."
+#: doc/classes/Basis.xml:23
+msgid "Constructs a pure rotation basis matrix from the given quaternion."
msgstr ""
-#: doc/classes/Basis.xml:29
+#: doc/classes/Basis.xml:32
msgid ""
-"Create a rotation matrix (in the YXZ convention: first Z, then X, and Y "
-"last) from the specified Euler angles, given in the vector format as (X "
-"angle, Y angle, Z angle)."
+"Constructs a pure rotation basis matrix from the given Euler angles (in the "
+"YXZ convention: when *composing*, first Y, then X, and Z last), given in the "
+"vector format as (X angle, Y angle, Z angle).\n"
+"Consider using the [Quat] constructor instead, which uses a quaternion "
+"instead of Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:40
+#: doc/classes/Basis.xml:44
msgid ""
-"Create a rotation matrix which rotates around the given axis by the "
-"specified angle, in radians. The axis must be a normalized vector."
+"Constructs a pure rotation basis matrix, rotated around the given "
+"[code]axis[/code] by [code]phi[/code], in radians. The axis must be a "
+"normalized vector."
msgstr ""
-#: doc/classes/Basis.xml:53
-msgid "Create a matrix from 3 axis vectors."
+#: doc/classes/Basis.xml:57
+msgid "Constructs a basis matrix from 3 axis vectors (matrix columns)."
msgstr ""
-#: doc/classes/Basis.xml:60
-msgid "Returns the determinant of the matrix."
+#: doc/classes/Basis.xml:64
+msgid ""
+"Returns the determinant of the basis matrix. If the basis is uniformly "
+"scaled, its determinant is the square of the scale.\n"
+"A negative determinant means the basis has a negative scale. A zero "
+"determinant means the basis isn't invertible, and is usually considered "
+"invalid."
msgstr ""
-#: doc/classes/Basis.xml:67
+#: doc/classes/Basis.xml:72
msgid ""
"Returns the basis's rotation in the form of Euler angles (in the YXZ "
-"convention: first Z, then X, and Y last). The returned vector contains the "
-"rotation angles in the format (X angle, Y angle, Z angle). See [method "
-"get_rotation_quat] if you need a quaternion instead."
+"convention: when decomposing, first Z, then X, and Y last). The returned "
+"vector contains the rotation angles in the format (X angle, Y angle, Z "
+"angle).\n"
+"Consider using the [method get_rotation_quat] method instead, which returns "
+"a [Quat] quaternion instead of Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:74
+#: doc/classes/Basis.xml:80
msgid ""
"This function considers a discretization of rotations into 24 points on unit "
"sphere, lying along the vectors (x,y,z) with each component being either -1, "
"0, or 1, and returns the index of the point best representing the "
-"orientation of the object. It is mainly used by the grid map editor. For "
+"orientation of the object. It is mainly used by the [GridMap] editor. For "
"further details, refer to the Godot source code."
msgstr ""
-#: doc/classes/Basis.xml:81
+#: doc/classes/Basis.xml:87
msgid ""
"Returns the basis's rotation in the form of a quaternion. See [method "
"get_euler] if you need Euler angles, but keep in mind quaternions should "
"generally be preferred to Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:88
+#: doc/classes/Basis.xml:94
msgid ""
"Assuming that the matrix is the combination of a rotation and scaling, "
"return the absolute value of scaling factors along each axis."
msgstr ""
-#: doc/classes/Basis.xml:95 doc/classes/Transform2D.xml:49
+#: doc/classes/Basis.xml:101
msgid "Returns the inverse of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:106
+#: doc/classes/Basis.xml:112
msgid ""
"Returns [code]true[/code] if this basis and [code]b[/code] are approximately "
"equal, by calling [code]is_equal_approx[/code] on each component."
msgstr ""
-#: doc/classes/Basis.xml:113
+#: doc/classes/Basis.xml:119
msgid ""
"Returns the orthonormalized version of the matrix (useful to call from time "
"to time to avoid rounding error for orthogonal matrices). This performs a "
"Gram-Schmidt orthonormalization on the basis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:124
+#: doc/classes/Basis.xml:130
msgid ""
"Introduce an additional rotation around the given axis by phi (radians). The "
"axis must be a normalized vector."
msgstr ""
-#: doc/classes/Basis.xml:133
+#: doc/classes/Basis.xml:139
msgid ""
"Introduce an additional scaling specified by the given 3D scaling factor."
msgstr ""
-#: doc/classes/Basis.xml:144
+#: doc/classes/Basis.xml:150
msgid ""
"Assuming that the matrix is a proper rotation matrix, slerp performs a "
"spherical-linear interpolation with another rotation matrix."
msgstr ""
-#: doc/classes/Basis.xml:153
+#: doc/classes/Basis.xml:159
msgid "Transposed dot product with the X axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:162
+#: doc/classes/Basis.xml:168
msgid "Transposed dot product with the Y axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:171
+#: doc/classes/Basis.xml:177
msgid "Transposed dot product with the Z axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:178
+#: doc/classes/Basis.xml:184
msgid "Returns the transposed version of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:187
+#: doc/classes/Basis.xml:193
msgid "Returns a vector transformed (multiplied) by the matrix."
msgstr ""
-#: doc/classes/Basis.xml:196
+#: doc/classes/Basis.xml:202
msgid ""
-"Returns a vector transformed (multiplied) by the transposed matrix.\n"
+"Returns a vector transformed (multiplied) by the transposed basis matrix.\n"
"[b]Note:[/b] This results in a multiplication by the inverse of the matrix "
"only if it represents a rotation-reflection."
msgstr ""
-#: doc/classes/Basis.xml:203
-msgid "The basis matrix's X vector."
+#: doc/classes/Basis.xml:209 doc/classes/Transform2D.xml:181
+msgid ""
+"The basis matrix's X vector (column 0). Equivalent to array index [code]0[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:206
-msgid "The basis matrix's Y vector."
+#: doc/classes/Basis.xml:212 doc/classes/Transform2D.xml:184
+msgid ""
+"The basis matrix's Y vector (column 1). Equivalent to array index [code]1[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:209
-msgid "The basis matrix's Z vector."
+#: doc/classes/Basis.xml:215
+msgid ""
+"The basis matrix's Z vector (column 2). Equivalent to array index [code]2[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:214
+#: doc/classes/Basis.xml:220
msgid ""
-"The identity basis. This is identical to calling [code]Basis()[/code] "
-"without any parameters. This constant can be used to make your code clearer."
+"The identity basis, with no rotation or scaling applied.\n"
+"This is identical to calling [code]Basis()[/code] without any parameters. "
+"This constant can be used to make your code clearer, and for consistency "
+"with C#."
msgstr ""
-#: doc/classes/Basis.xml:217
+#: doc/classes/Basis.xml:224
msgid ""
"The basis that will flip something along the X axis when used in a "
"transformation."
msgstr ""
-#: doc/classes/Basis.xml:220
+#: doc/classes/Basis.xml:227
msgid ""
"The basis that will flip something along the Y axis when used in a "
"transformation."
msgstr ""
-#: doc/classes/Basis.xml:223
+#: doc/classes/Basis.xml:230
msgid ""
"The basis that will flip something along the Z axis when used in a "
"transformation."
@@ -9932,97 +9964,111 @@ msgstr ""
#: doc/classes/Button.xml:7
msgid ""
"Button is the standard themed button. It can contain text and an icon, and "
-"will display them according to the current [Theme]."
+"will display them according to the current [Theme].\n"
+"[b]Example of creating a button and assigning an action when pressed by code:"
+"[/b]\n"
+"[codeblock]\n"
+"func _ready():\n"
+" var button = Button.new()\n"
+" button.text = \"Click me\"\n"
+" button.connect(\"pressed\", self, \"_button_pressed\")\n"
+" add_child(button)\n"
+"\n"
+"func _button_pressed():\n"
+" print(\"Hello world!\")\n"
+"[/codeblock]\n"
+"Buttons (like all Control nodes) can also be created in the editor, but some "
+"situations may require creating them from code."
msgstr ""
-#: doc/classes/Button.xml:15
+#: doc/classes/Button.xml:27
msgid ""
"Text alignment policy for the button's text, use one of the [enum TextAlign] "
"constants."
msgstr ""
-#: doc/classes/Button.xml:18
+#: doc/classes/Button.xml:30
msgid ""
"When this property is enabled, text that is too large to fit the button is "
"clipped, when disabled the Button will always be wide enough to hold the "
"text."
msgstr ""
-#: doc/classes/Button.xml:21
+#: doc/classes/Button.xml:33
msgid ""
"When enabled, the button's icon will expand/shrink to fit the button's size "
"while keeping its aspect."
msgstr ""
-#: doc/classes/Button.xml:24
+#: doc/classes/Button.xml:36
msgid "Flat buttons don't display decoration."
msgstr ""
-#: doc/classes/Button.xml:27
+#: doc/classes/Button.xml:39
msgid ""
"Button's icon, if text is present the icon will be placed before the text."
msgstr ""
-#: doc/classes/Button.xml:30 doc/classes/LinkButton.xml:18
+#: doc/classes/Button.xml:42 doc/classes/LinkButton.xml:18
msgid "The button's text that will be displayed inside the button's area."
msgstr ""
-#: doc/classes/Button.xml:35
+#: doc/classes/Button.xml:47
msgid "Align the text to the left."
msgstr ""
-#: doc/classes/Button.xml:38
+#: doc/classes/Button.xml:50
msgid "Align the text to the center."
msgstr ""
-#: doc/classes/Button.xml:41
+#: doc/classes/Button.xml:53
msgid "Align the text to the right."
msgstr ""
-#: doc/classes/Button.xml:46
+#: doc/classes/Button.xml:58
msgid "[StyleBox] used when the [Button] is disabled."
msgstr ""
-#: doc/classes/Button.xml:49
+#: doc/classes/Button.xml:61
msgid ""
"[StyleBox] used when the [Button] is focused. It is displayed over the "
"current [StyleBox], so using [StyleBoxEmpty] will just disable the focus "
"visual effect."
msgstr ""
-#: doc/classes/Button.xml:52
+#: doc/classes/Button.xml:64
msgid "[Font] of the [Button]'s text."
msgstr ""
-#: doc/classes/Button.xml:55
+#: doc/classes/Button.xml:67
msgid "Default text [Color] of the [Button]."
msgstr ""
-#: doc/classes/Button.xml:58
+#: doc/classes/Button.xml:70
msgid "Text [Color] used when the [Button] is disabled."
msgstr ""
-#: doc/classes/Button.xml:61
+#: doc/classes/Button.xml:73
msgid "Text [Color] used when the [Button] is being hovered."
msgstr ""
-#: doc/classes/Button.xml:64
+#: doc/classes/Button.xml:76
msgid "Text [Color] used when the [Button] is being pressed."
msgstr ""
-#: doc/classes/Button.xml:67
+#: doc/classes/Button.xml:79
msgid "[StyleBox] used when the [Button] is being hovered."
msgstr ""
-#: doc/classes/Button.xml:70
+#: doc/classes/Button.xml:82
msgid "The horizontal space between [Button]'s icon and text."
msgstr ""
-#: doc/classes/Button.xml:73
+#: doc/classes/Button.xml:85
msgid "Default [StyleBox] for the [Button]."
msgstr ""
-#: doc/classes/Button.xml:76
+#: doc/classes/Button.xml:88
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr ""
@@ -10674,7 +10720,7 @@ msgstr ""
#: doc/classes/CameraEffects.xml:37
msgid ""
"The exposure override value to use. Higher values will result in a brighter "
-"scene. Only effective if [member override_exposure_enable] is [code]true[/"
+"scene. Only effective if [member override_exposure_enabled] is [code]true[/"
"code]."
msgstr ""
@@ -10928,265 +10974,282 @@ msgid ""
msgstr ""
#: doc/classes/CanvasItem.xml:319
-msgid "Draws a string using a custom font."
+msgid ""
+"Draws [code]text[/code] using the specified [code]font[/code] at the "
+"[code]position[/code] (top-left corner). The text will have its color "
+"multiplied by [code]modulate[/code]. If [code]clip_w[/code] is greater than "
+"or equal to 0, the text will be clipped if it exceeds the specified width.\n"
+"[b]Example using the default project font:[/b]\n"
+"[codeblock]\n"
+"# If using this method in a script that redraws constantly, move the\n"
+"# `default_font` declaration to a member variable assigned in `_ready()`\n"
+"# so the Control is only created once.\n"
+"var default_font = Control.new().get_font(\"font\")\n"
+"draw_string(default_font, Vector2(64, 64), \"Hello world\")\n"
+"[/codeblock]\n"
+"See also [method Font.draw]."
msgstr ""
-#: doc/classes/CanvasItem.xml:330
+#: doc/classes/CanvasItem.xml:339
msgid "Draws a styled rectangle."
msgstr ""
-#: doc/classes/CanvasItem.xml:353
+#: doc/classes/CanvasItem.xml:362
msgid "Draws a texture at a given position."
msgstr ""
-#: doc/classes/CanvasItem.xml:380
+#: doc/classes/CanvasItem.xml:389
msgid ""
"Draws a textured rectangle at a given position, optionally modulated by a "
"color. If [code]transpose[/code] is [code]true[/code], the texture will have "
"its X and Y coordinates swapped."
msgstr ""
-#: doc/classes/CanvasItem.xml:409
+#: doc/classes/CanvasItem.xml:418
msgid ""
"Draws a textured rectangle region at a given position, optionally modulated "
"by a color. If [code]transpose[/code] is [code]true[/code], the texture will "
"have its X and Y coordinates swapped."
msgstr ""
-#: doc/classes/CanvasItem.xml:416 doc/classes/Node3D.xml:19
+#: doc/classes/CanvasItem.xml:425 doc/classes/Node3D.xml:19
msgid ""
"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."
msgstr ""
-#: doc/classes/CanvasItem.xml:423
+#: doc/classes/CanvasItem.xml:432
msgid "Returns the [RID] of the [World2D] canvas where this item is in."
msgstr ""
-#: doc/classes/CanvasItem.xml:430
+#: doc/classes/CanvasItem.xml:439
msgid "Returns the canvas item RID used by [RenderingServer] for this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:437
+#: doc/classes/CanvasItem.xml:446
msgid "Returns the transform matrix of this item's canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:444
+#: doc/classes/CanvasItem.xml:453
msgid "Returns the global position of the mouse."
msgstr ""
-#: doc/classes/CanvasItem.xml:451
+#: doc/classes/CanvasItem.xml:460
msgid "Returns the global transform matrix of this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:458
+#: doc/classes/CanvasItem.xml:467
msgid ""
"Returns the global transform matrix of this item in relation to the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:465
+#: doc/classes/CanvasItem.xml:474
msgid "Returns the mouse position relative to this item's position."
msgstr ""
-#: doc/classes/CanvasItem.xml:472
+#: doc/classes/CanvasItem.xml:481
msgid "Returns the transform matrix of this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:479
+#: doc/classes/CanvasItem.xml:488
msgid "Returns the viewport's boundaries as a [Rect2]."
msgstr ""
-#: doc/classes/CanvasItem.xml:486
+#: doc/classes/CanvasItem.xml:495
msgid "Returns this item's transform in relation to the viewport."
msgstr ""
-#: doc/classes/CanvasItem.xml:493
+#: doc/classes/CanvasItem.xml:502
msgid "Returns the [World2D] where this item is in."
msgstr ""
-#: doc/classes/CanvasItem.xml:500
+#: doc/classes/CanvasItem.xml:509
msgid "Hide the [CanvasItem] if it's currently visible."
msgstr ""
-#: doc/classes/CanvasItem.xml:507
+#: doc/classes/CanvasItem.xml:516
msgid ""
"Returns [code]true[/code] if local transform notifications are communicated "
"to children."
msgstr ""
-#: doc/classes/CanvasItem.xml:514
+#: doc/classes/CanvasItem.xml:523
msgid ""
"Returns [code]true[/code] if the node is set as top-level. See [method "
"set_as_toplevel]."
msgstr ""
-#: doc/classes/CanvasItem.xml:521
+#: doc/classes/CanvasItem.xml:530
msgid ""
"Returns [code]true[/code] if global transform notifications are communicated "
"to children."
msgstr ""
-#: doc/classes/CanvasItem.xml:528
+#: doc/classes/CanvasItem.xml:537 doc/classes/Node3D.xml:104
msgid ""
"Returns [code]true[/code] if the node is present in the [SceneTree], its "
-"[member visible] property is [code]true[/code] and its inherited visibility "
-"is also [code]true[/code]."
+"[member visible] property is [code]true[/code] and all its antecedents are "
+"also visible. If any antecedent is hidden, this node will not be visible in "
+"the scene tree."
msgstr ""
-#: doc/classes/CanvasItem.xml:537
+#: doc/classes/CanvasItem.xml:546
msgid "Assigns [code]screen_point[/code] as this node's new local transform."
msgstr ""
-#: doc/classes/CanvasItem.xml:546
+#: doc/classes/CanvasItem.xml:555
msgid ""
"Transformations issued by [code]event[/code]'s inputs are applied in local "
"space instead of global space."
msgstr ""
-#: doc/classes/CanvasItem.xml:555
+#: doc/classes/CanvasItem.xml:564
msgid ""
"If [code]enable[/code] is [code]true[/code], the node won't inherit its "
"transform from parent canvas items."
msgstr ""
-#: doc/classes/CanvasItem.xml:564
+#: doc/classes/CanvasItem.xml:573
msgid ""
"If [code]enable[/code] is [code]true[/code], children will be updated with "
"local transform data."
msgstr ""
-#: doc/classes/CanvasItem.xml:573
+#: doc/classes/CanvasItem.xml:582
msgid ""
"If [code]enable[/code] is [code]true[/code], children will be updated with "
"global transform data."
msgstr ""
-#: doc/classes/CanvasItem.xml:580
+#: doc/classes/CanvasItem.xml:589
msgid ""
"Show the [CanvasItem] if it's currently hidden. For controls that inherit "
"[Popup], the correct way to make them visible is to call one of the multiple "
"[code]popup*()[/code] functions instead."
msgstr ""
-#: doc/classes/CanvasItem.xml:587
+#: doc/classes/CanvasItem.xml:596
msgid ""
"Queue the [CanvasItem] for update. [constant NOTIFICATION_DRAW] will be "
"called on idle time to request redraw."
msgstr ""
-#: doc/classes/CanvasItem.xml:593
+#: doc/classes/CanvasItem.xml:602
msgid ""
"The rendering layers in which this [CanvasItem] responds to [Light2D] nodes."
msgstr ""
-#: doc/classes/CanvasItem.xml:596
+#: doc/classes/CanvasItem.xml:605
msgid "The material applied to textures on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:599
+#: doc/classes/CanvasItem.xml:608
msgid "The color applied to textures on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:602
+#: doc/classes/CanvasItem.xml:611
msgid ""
"The color applied to textures on this [CanvasItem]. This is not inherited by "
"children [CanvasItem]s."
msgstr ""
-#: doc/classes/CanvasItem.xml:605
+#: doc/classes/CanvasItem.xml:614
msgid "If [code]true[/code], the object draws behind its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:608
+#: doc/classes/CanvasItem.xml:617
msgid "If [code]true[/code], the object draws on top of its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:611
+#: doc/classes/CanvasItem.xml:620
msgid "The texture filtering mode to use on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:614
+#: doc/classes/CanvasItem.xml:623
msgid "The texture repeating mode to use on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:617
+#: doc/classes/CanvasItem.xml:626
msgid ""
"If [code]true[/code], the parent [CanvasItem]'s [member material] property "
"is used as this one's material."
msgstr ""
-#: doc/classes/CanvasItem.xml:620
+#: doc/classes/CanvasItem.xml:629
msgid ""
-"If [code]true[/code], this [CanvasItem] is drawn. For controls that inherit "
-"[Popup], the correct way to make them visible is to call one of the multiple "
-"[code]popup*()[/code] functions instead."
+"If [code]true[/code], this [CanvasItem] is drawn. The node is only visible "
+"if all of its antecedents are visible as well (in other words, [method "
+"is_visible_in_tree] must return [code]true[/code]).\n"
+"[b]Note:[/b] For controls that inherit [Popup], the correct way to make them "
+"visible is to call one of the multiple [code]popup*()[/code] functions "
+"instead."
msgstr ""
-#: doc/classes/CanvasItem.xml:626
+#: doc/classes/CanvasItem.xml:636
msgid ""
"Emitted when the [CanvasItem] must redraw. This can only be connected "
"realtime, as deferred will not allow drawing."
msgstr ""
-#: doc/classes/CanvasItem.xml:631
+#: doc/classes/CanvasItem.xml:641
msgid "Emitted when becoming hidden."
msgstr ""
-#: doc/classes/CanvasItem.xml:636
+#: doc/classes/CanvasItem.xml:646
msgid "Emitted when the item rect has changed."
msgstr ""
-#: doc/classes/CanvasItem.xml:641
+#: doc/classes/CanvasItem.xml:651
msgid "Emitted when the visibility (hidden/visible) changes."
msgstr ""
-#: doc/classes/CanvasItem.xml:647
+#: doc/classes/CanvasItem.xml:657
msgid ""
"The [CanvasItem]'s transform has changed. This notification is only received "
"if enabled by [method set_notify_transform] or [method "
"set_notify_local_transform]."
msgstr ""
-#: doc/classes/CanvasItem.xml:650
+#: doc/classes/CanvasItem.xml:660
msgid "The [CanvasItem] is requested to draw."
msgstr ""
-#: doc/classes/CanvasItem.xml:653
+#: doc/classes/CanvasItem.xml:663
msgid "The [CanvasItem]'s visibility has changed."
msgstr ""
-#: doc/classes/CanvasItem.xml:656
+#: doc/classes/CanvasItem.xml:666
msgid "The [CanvasItem] has entered the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:659
+#: doc/classes/CanvasItem.xml:669
msgid "The [CanvasItem] has exited the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:662 doc/classes/CanvasItem.xml:688
+#: doc/classes/CanvasItem.xml:672 doc/classes/CanvasItem.xml:698
msgid "The [CanvasItem] will inherit the filter from its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:665
+#: doc/classes/CanvasItem.xml:675
msgid ""
"The texture filter reads from the nearest pixel only. The simplest and "
"fastest method of filtering. Useful for pixel art."
msgstr ""
-#: doc/classes/CanvasItem.xml:668
+#: doc/classes/CanvasItem.xml:678
msgid ""
"The texture filter blends between the nearest four pixels. Use this for most "
"cases where you want to avoid a pixelated style."
msgstr ""
-#: doc/classes/CanvasItem.xml:671
+#: doc/classes/CanvasItem.xml:681
msgid ""
"The texture filter reads from the nearest pixel in the nearest mipmap. This "
"is the fastest way to read from textures with mipmaps."
msgstr ""
-#: doc/classes/CanvasItem.xml:674
+#: doc/classes/CanvasItem.xml:684
msgid ""
"The texture filter blends between the nearest 4 pixels and between the "
"nearest 2 mipmaps. Use this for non-pixel art textures that may be viewed at "
@@ -11194,7 +11257,7 @@ msgid ""
"smooth out pixels that are smaller than on-screen pixels."
msgstr ""
-#: doc/classes/CanvasItem.xml:677
+#: doc/classes/CanvasItem.xml:687
msgid ""
"The texture filter reads from the nearest pixel, but selects a mipmap based "
"on the angle between the surface and the camera view. This reduces artifacts "
@@ -11203,7 +11266,7 @@ msgid ""
"TEXTURE_FILTER_NEAREST_WITH_MIPMAPS] is usually more appropriate."
msgstr ""
-#: doc/classes/CanvasItem.xml:681
+#: doc/classes/CanvasItem.xml:691
msgid ""
"The texture filter blends between the nearest 4 pixels and selects a mipmap "
"based on the angle between the surface and the camera view. This reduces "
@@ -11214,21 +11277,21 @@ msgid ""
"TEXTURE_FILTER_LINEAR_WITH_MIPMAPS] is usually more appropriate."
msgstr ""
-#: doc/classes/CanvasItem.xml:691
+#: doc/classes/CanvasItem.xml:701
msgid "Texture will not repeat."
msgstr ""
-#: doc/classes/CanvasItem.xml:694
+#: doc/classes/CanvasItem.xml:704
msgid "Texture will repeat normally."
msgstr ""
-#: doc/classes/CanvasItem.xml:697
+#: doc/classes/CanvasItem.xml:707
msgid ""
"Texture will repeat in a 2x2 tiled mode, where elements at even positions "
"are mirrored."
msgstr ""
-#: doc/classes/CanvasItem.xml:700
+#: doc/classes/CanvasItem.xml:710
msgid "Represents the size of the [enum TextureRepeat] enum."
msgstr ""
@@ -12301,16 +12364,15 @@ msgid ""
msgstr ""
#: doc/classes/Color.xml:4
-msgid "Color in RGBA format with some support for ARGB format."
+msgid "Color in RGBA format using floats on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:7
msgid ""
-"A color is represented by red, green, and blue [code](r, g, b)[/code] "
-"components. Additionally, [code]a[/code] represents the alpha component, "
-"often used for transparency. Values are in floating-point and usually range "
-"from 0 to 1. Some properties (such as [member CanvasItem.modulate]) may "
-"accept values greater than 1.\n"
+"A color represented by red, green, blue, and alpha (RGBA) components. The "
+"alpha component is often used for transparency. Values are in floating-point "
+"and usually range from 0 to 1. Some properties (such as CanvasItem.modulate) "
+"may accept values greater than 1 (overbright or HDR colors).\n"
"You can also create a color from standardized color names by using [method "
"@GDScript.ColorN] or directly using the color constants defined here. The "
"standardized color set is based on the [url=https://en.wikipedia.org/wiki/"
@@ -12524,47 +12586,48 @@ msgid ""
msgstr ""
#: doc/classes/Color.xml:280
-msgid "Alpha value (range 0 to 1)."
+msgid ""
+"The color's alpha (transparency) component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:283
-msgid "Alpha value (range 0 to 255)."
+msgid "Wrapper for [member a] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:286
-msgid "Blue value (range 0 to 1)."
+msgid "The color's blue component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:289
-msgid "Blue value (range 0 to 255)."
+msgid "Wrapper for [member b] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:292
-msgid "Green value (range 0 to 1)."
+msgid "The color's green component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:295
-msgid "Green value (range 0 to 255)."
+msgid "Wrapper for [member g] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:298
-msgid "HSV hue value (range 0 to 1)."
+msgid "The HSV hue of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:301
-msgid "Red value (range 0 to 1)."
+msgid "The color's red component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:304
-msgid "Red value (range 0 to 255)."
+msgid "Wrapper for [member r] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:307
-msgid "HSV saturation value (range 0 to 1)."
+msgid "The HSV saturation of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:310
-msgid "HSV value (range 0 to 1)."
+msgid "The HSV value (brightness) of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:315
@@ -14484,23 +14547,35 @@ msgstr ""
#: doc/classes/Control.xml:859
msgid ""
"The node's scale, relative to its [member rect_size]. Change this property "
-"to scale the node around its [member rect_pivot_offset]."
-msgstr ""
-
-#: doc/classes/Control.xml:862
+"to scale the node around its [member rect_pivot_offset]. The Control's "
+"[member hint_tooltip] will also scale according to this value.\n"
+"[b]Note:[/b] This property is mainly intended to be used for animation "
+"purposes. Text inside the Control will look pixelated or blurry when the "
+"Control is scaled. To support multiple resolutions in your project, use an "
+"appropriate viewport stretch mode as described in the [url=https://docs."
+"godotengine.org/en/latest/tutorials/viewports/multiple_resolutions."
+"html]documentation[/url] instead of scaling Controls individually.\n"
+"[b]Note:[/b] If the Control node is a child of a [Container] node, the scale "
+"will be reset to [code]Vector2(1, 1)[/code] when the scene is instanced. To "
+"set the Control's scale when it's instanced, wait for one frame using "
+"[code]yield(get_tree(), \"idle_frame\")[/code] then set its [member "
+"rect_scale] property."
+msgstr ""
+
+#: doc/classes/Control.xml:864
msgid ""
"The size of the node's bounding rectangle, in pixels. [Container] nodes "
"update this property automatically."
msgstr ""
-#: doc/classes/Control.xml:865
+#: doc/classes/Control.xml:867
msgid ""
"Tells the parent [Container] nodes how they should resize and place the node "
"on the X axis. Use one of the [enum SizeFlags] constants to change the "
"flags. See the constants to learn what each does."
msgstr ""
-#: doc/classes/Control.xml:868
+#: doc/classes/Control.xml:870
msgid ""
"If the node and at least one of its neighbours uses the [constant "
"SIZE_EXPAND] size flag, the parent [Container] will let it take more or less "
@@ -14509,181 +14584,181 @@ msgid ""
"space."
msgstr ""
-#: doc/classes/Control.xml:871
+#: doc/classes/Control.xml:873
msgid ""
"Tells the parent [Container] nodes how they should resize and place the node "
"on the Y axis. Use one of the [enum SizeFlags] constants to change the "
"flags. See the constants to learn what each does."
msgstr ""
-#: doc/classes/Control.xml:874
+#: doc/classes/Control.xml:876
msgid ""
"Changing this property replaces the current [Theme] resource this node and "
"all its [Control] children use."
msgstr ""
-#: doc/classes/Control.xml:880
+#: doc/classes/Control.xml:882
msgid "Emitted when the node gains keyboard focus."
msgstr ""
-#: doc/classes/Control.xml:885
+#: doc/classes/Control.xml:887
msgid "Emitted when the node loses keyboard focus."
msgstr ""
-#: doc/classes/Control.xml:892
+#: doc/classes/Control.xml:894
msgid "Emitted when the node receives an [InputEvent]."
msgstr ""
-#: doc/classes/Control.xml:897
+#: doc/classes/Control.xml:899
msgid "Emitted when the node's minimum size changes."
msgstr ""
-#: doc/classes/Control.xml:902
+#: doc/classes/Control.xml:904
msgid ""
"Emitted when the mouse enters the control's [code]Rect[/code] area, provided "
"its [member mouse_filter] lets the event reach it."
msgstr ""
-#: doc/classes/Control.xml:907
+#: doc/classes/Control.xml:909
msgid ""
"Emitted when the mouse leaves the control's [code]Rect[/code] area, provided "
"its [member mouse_filter] lets the event reach it."
msgstr ""
-#: doc/classes/Control.xml:912
+#: doc/classes/Control.xml:914
msgid "Emitted when the control changes size."
msgstr ""
-#: doc/classes/Control.xml:917
+#: doc/classes/Control.xml:919
msgid ""
"Emitted when one of the size flags changes. See [member "
"size_flags_horizontal] and [member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:927
+#: doc/classes/Control.xml:929
msgid "The node cannot grab focus. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:930
+#: doc/classes/Control.xml:932
msgid ""
"The node can only grab focus on mouse clicks. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:933
+#: doc/classes/Control.xml:935
msgid ""
"The node can grab focus on mouse click or using the arrows and the Tab keys "
"on the keyboard. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:936
+#: doc/classes/Control.xml:938
msgid ""
"Sent when the node changes size. Use [member rect_size] to get the new size."
msgstr ""
-#: doc/classes/Control.xml:939
+#: doc/classes/Control.xml:941
msgid "Sent when the mouse pointer enters the node."
msgstr ""
-#: doc/classes/Control.xml:942
+#: doc/classes/Control.xml:944
msgid "Sent when the mouse pointer exits the node."
msgstr ""
-#: doc/classes/Control.xml:945
+#: doc/classes/Control.xml:947
msgid "Sent when the node grabs focus."
msgstr ""
-#: doc/classes/Control.xml:948
+#: doc/classes/Control.xml:950
msgid "Sent when the node loses focus."
msgstr ""
-#: doc/classes/Control.xml:951
+#: doc/classes/Control.xml:953
msgid ""
"Sent when the node's [member theme] changes, right before Godot redraws the "
"control. Happens when you call one of the [code]add_theme_*_override[/code] "
"methods."
msgstr ""
-#: doc/classes/Control.xml:954
+#: doc/classes/Control.xml:956
msgid ""
"Sent when this node is inside a [ScrollContainer] which has begun being "
"scrolled."
msgstr ""
-#: doc/classes/Control.xml:957
+#: doc/classes/Control.xml:959
msgid ""
"Sent when this node is inside a [ScrollContainer] which has stopped being "
"scrolled."
msgstr ""
-#: doc/classes/Control.xml:960
+#: doc/classes/Control.xml:962
msgid ""
"Show the system's arrow mouse cursor when the user hovers the node. Use with "
"[member mouse_default_cursor_shape]."
msgstr ""
-#: doc/classes/Control.xml:963
+#: doc/classes/Control.xml:965
msgid ""
"Show the system's I-beam mouse cursor when the user hovers the node. The I-"
"beam pointer has a shape similar to \"I\". It tells the user they can "
"highlight or insert text."
msgstr ""
-#: doc/classes/Control.xml:966
+#: doc/classes/Control.xml:968
msgid ""
"Show the system's pointing hand mouse cursor when the user hovers the node."
msgstr ""
-#: doc/classes/Control.xml:969
+#: doc/classes/Control.xml:971
msgid "Show the system's cross mouse cursor when the user hovers the node."
msgstr ""
-#: doc/classes/Control.xml:972
+#: doc/classes/Control.xml:974
msgid ""
"Show the system's wait mouse cursor, often an hourglass, when the user "
"hovers the node."
msgstr ""
-#: doc/classes/Control.xml:975
+#: doc/classes/Control.xml:977
msgid ""
"Show the system's busy mouse cursor when the user hovers the node. Often an "
"hourglass."
msgstr ""
-#: doc/classes/Control.xml:978
+#: doc/classes/Control.xml:980
msgid ""
"Show the system's drag mouse cursor, often a closed fist or a cross symbol, "
"when the user hovers the node. It tells the user they're currently dragging "
"an item, like a node in the Scene dock."
msgstr ""
-#: doc/classes/Control.xml:981
+#: doc/classes/Control.xml:983
msgid ""
"Show the system's drop mouse cursor when the user hovers the node. It can be "
"an open hand. It tells the user they can drop an item they're currently "
"grabbing, like a node in the Scene dock."
msgstr ""
-#: doc/classes/Control.xml:984
+#: doc/classes/Control.xml:986
msgid ""
"Show the system's forbidden mouse cursor when the user hovers the node. "
"Often a crossed circle."
msgstr ""
-#: doc/classes/Control.xml:987
+#: doc/classes/Control.xml:989
msgid ""
"Show the system's vertical resize mouse cursor when the user hovers the "
"node. A double-headed vertical arrow. It tells the user they can resize the "
"window or the panel vertically."
msgstr ""
-#: doc/classes/Control.xml:990
+#: doc/classes/Control.xml:992
msgid ""
"Show the system's horizontal resize mouse cursor when the user hovers the "
"node. A double-headed horizontal arrow. It tells the user they can resize "
"the window or the panel horizontally."
msgstr ""
-#: doc/classes/Control.xml:993
+#: doc/classes/Control.xml:995
msgid ""
"Show the system's window resize mouse cursor when the user hovers the node. "
"The cursor is a double-headed arrow that goes from the bottom left to the "
@@ -14691,7 +14766,7 @@ msgid ""
"horizontally and vertically."
msgstr ""
-#: doc/classes/Control.xml:996
+#: doc/classes/Control.xml:998
msgid ""
"Show the system's window resize mouse cursor when the user hovers the node. "
"The cursor is a double-headed arrow that goes from the top left to the "
@@ -14699,93 +14774,93 @@ msgid ""
"they can resize the window or the panel both horizontally and vertically."
msgstr ""
-#: doc/classes/Control.xml:999
+#: doc/classes/Control.xml:1001
msgid ""
"Show the system's move mouse cursor when the user hovers the node. It shows "
"2 double-headed arrows at a 90 degree angle. It tells the user they can move "
"a UI element freely."
msgstr ""
-#: doc/classes/Control.xml:1002
+#: doc/classes/Control.xml:1004
msgid ""
"Show the system's vertical split mouse cursor when the user hovers the node. "
"On Windows, it's the same as [constant CURSOR_VSIZE]."
msgstr ""
-#: doc/classes/Control.xml:1005
+#: doc/classes/Control.xml:1007
msgid ""
"Show the system's horizontal split mouse cursor when the user hovers the "
"node. On Windows, it's the same as [constant CURSOR_HSIZE]."
msgstr ""
-#: doc/classes/Control.xml:1008
+#: doc/classes/Control.xml:1010
msgid ""
"Show the system's help mouse cursor when the user hovers the node, a "
"question mark."
msgstr ""
-#: doc/classes/Control.xml:1011
+#: doc/classes/Control.xml:1013
msgid ""
"Snap all 4 anchors to the top-left of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1014
+#: doc/classes/Control.xml:1016
msgid ""
"Snap all 4 anchors to the top-right of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1017
+#: doc/classes/Control.xml:1019
msgid ""
"Snap all 4 anchors to the bottom-left of the parent control's bounds. Use "
"with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1020
+#: doc/classes/Control.xml:1022
msgid ""
"Snap all 4 anchors to the bottom-right of the parent control's bounds. Use "
"with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1023
+#: doc/classes/Control.xml:1025
msgid ""
"Snap all 4 anchors to the center of the left edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1026
+#: doc/classes/Control.xml:1028
msgid ""
"Snap all 4 anchors to the center of the top edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1029
+#: doc/classes/Control.xml:1031
msgid ""
"Snap all 4 anchors to the center of the right edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1032
+#: doc/classes/Control.xml:1034
msgid ""
"Snap all 4 anchors to the center of the bottom edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1035
+#: doc/classes/Control.xml:1037
msgid ""
"Snap all 4 anchors to the center of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1038
+#: doc/classes/Control.xml:1040
msgid ""
"Snap all 4 anchors to the left edge of the parent control. The left margin "
"becomes relative to the left edge and the top margin relative to the top "
"left corner of the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1041
+#: doc/classes/Control.xml:1043
msgid ""
"Snap all 4 anchors to the top edge of the parent control. The left margin "
"becomes relative to the top left corner, the top margin relative to the top "
@@ -14793,14 +14868,14 @@ msgid ""
"parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1044
+#: doc/classes/Control.xml:1046
msgid ""
"Snap all 4 anchors to the right edge of the parent control. The right margin "
"becomes relative to the right edge and the top margin relative to the top "
"right corner of the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1047
+#: doc/classes/Control.xml:1049
msgid ""
"Snap all 4 anchors to the bottom edge of the parent control. The left margin "
"becomes relative to the bottom left corner, the bottom margin relative to "
@@ -14808,19 +14883,19 @@ msgid ""
"the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1050
+#: doc/classes/Control.xml:1052
msgid ""
"Snap all 4 anchors to a vertical line that cuts the parent control in half. "
"Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1053
+#: doc/classes/Control.xml:1055
msgid ""
"Snap all 4 anchors to a horizontal line that cuts the parent control in "
"half. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1056
+#: doc/classes/Control.xml:1058
msgid ""
"Snap all 4 anchors to the respective corners of the parent control. Set all "
"4 margins to 0 after you applied this preset and the [Control] will fit its "
@@ -14828,30 +14903,30 @@ msgid ""
"editor. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1059
+#: doc/classes/Control.xml:1061
msgid "The control will be resized to its minimum size."
msgstr ""
-#: doc/classes/Control.xml:1062
+#: doc/classes/Control.xml:1064
msgid "The control's width will not change."
msgstr ""
-#: doc/classes/Control.xml:1065
+#: doc/classes/Control.xml:1067
msgid "The control's height will not change."
msgstr ""
-#: doc/classes/Control.xml:1068
+#: doc/classes/Control.xml:1070
msgid "The control's size will not change."
msgstr ""
-#: doc/classes/Control.xml:1071
+#: doc/classes/Control.xml:1073
msgid ""
"Tells the parent [Container] to expand the bounds of this node to fill all "
"the available space without pushing any other node. Use with [member "
"size_flags_horizontal] and [member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1074
+#: doc/classes/Control.xml:1076
msgid ""
"Tells the parent [Container] to let this node take all the available space "
"on the axis you flag. If multiple neighboring nodes are set to expand, "
@@ -14860,13 +14935,13 @@ msgid ""
"[member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1077
+#: doc/classes/Control.xml:1079
msgid ""
"Sets the node's size flags to both fill and expand. See the 2 constants "
"above for more information."
msgstr ""
-#: doc/classes/Control.xml:1080
+#: doc/classes/Control.xml:1082
msgid ""
"Tells the parent [Container] to center the node in itself. It centers the "
"control based on its bounding box, so it doesn't work with the fill or "
@@ -14874,7 +14949,7 @@ msgid ""
"size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1083
+#: doc/classes/Control.xml:1085
msgid ""
"Tells the parent [Container] to align the node with its end, either the "
"bottom or the right edge. It doesn't work with the fill or expand size "
@@ -14882,7 +14957,7 @@ msgid ""
"size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1086
+#: doc/classes/Control.xml:1088
msgid ""
"The control will receive mouse button input events through [method "
"_gui_input] if clicked on. And the control will receive the [signal "
@@ -14891,7 +14966,7 @@ msgid ""
"other controls. This also results in blocking signals in other controls."
msgstr ""
-#: doc/classes/Control.xml:1089
+#: doc/classes/Control.xml:1091
msgid ""
"The control will receive mouse button input events through [method "
"_gui_input] if clicked on. And the control will receive the [signal "
@@ -14903,7 +14978,7 @@ msgid ""
"not be fired."
msgstr ""
-#: doc/classes/Control.xml:1092
+#: doc/classes/Control.xml:1094
msgid ""
"The control will not receive mouse button input events through [method "
"_gui_input]. The control will also not receive the [signal mouse_entered] "
@@ -14912,25 +14987,25 @@ msgid ""
"handled automatically."
msgstr ""
-#: doc/classes/Control.xml:1095
+#: doc/classes/Control.xml:1097
msgid ""
"The control will grow to the left or top to make up if its minimum size is "
"changed to be greater than its current size on the respective axis."
msgstr ""
-#: doc/classes/Control.xml:1098
+#: doc/classes/Control.xml:1100
msgid ""
"The control will grow to the right or bottom to make up if its minimum size "
"is changed to be greater than its current size on the respective axis."
msgstr ""
-#: doc/classes/Control.xml:1101
+#: doc/classes/Control.xml:1103
msgid ""
"The control will grow in both directions equally to make up if its minimum "
"size is changed to be greater than its current size."
msgstr ""
-#: doc/classes/Control.xml:1104
+#: doc/classes/Control.xml:1106
msgid ""
"Snaps one of the 4 anchor's sides to the origin of the node's [code]Rect[/"
"code], in the top left. Use it with one of the [code]anchor_*[/code] member "
@@ -14938,7 +15013,7 @@ msgid ""
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1107
+#: doc/classes/Control.xml:1109
msgid ""
"Snaps one of the 4 anchor's sides to the end of the node's [code]Rect[/"
"code], in the bottom right. Use it with one of the [code]anchor_*[/code] "
@@ -16723,7 +16798,7 @@ msgstr ""
msgid ""
"Returns the [Texture2D] associated with the specified [enum DecalTexture]. "
"This is a convenience method, in most cases you should access the texture "
-"directly. \n"
+"directly.\n"
"For example, instead of [code]albedo_tex = $Decal.get_texture(Decal."
"TEXTURE_ALBEDO)[/code], use [code]albedo_tex = $Decal.texture_albedo[/"
"code].\n"
@@ -16739,7 +16814,7 @@ msgstr ""
msgid ""
"Sets the [Texture2D] associated with the specified [enum DecalTexture]. This "
"is a convenience method, in most cases you should access the texture "
-"directly. \n"
+"directly.\n"
"For example, instead of [code]$Decal.set_texture(Decal.TEXTURE_ALBEDO, "
"albedo_tex)[/code], use [code]$Decal.texture_albedo = albedo_tex[/code].\n"
"One case where this is better than accessing the texture directly is when "
@@ -17088,7 +17163,7 @@ msgstr ""
msgid "The light's shadow rendering algorithm. See [enum ShadowMode]."
msgstr ""
-#: doc/classes/DirectionalLight3D.xml:31 doc/classes/RenderingServer.xml:3254
+#: doc/classes/DirectionalLight3D.xml:31 doc/classes/RenderingServer.xml:3250
msgid ""
"Sets the size of the directional shadow pancake. The pancake offsets the "
"start of the shadow's camera frustum to provide a higher effective depth "
@@ -17162,10 +17237,10 @@ msgstr ""
msgid ""
"Directory type. It is used to manage directories and their content (not "
"restricted to the project folder).\n"
-"When creating a new [Directory], its default opened directory will be "
-"[code]res://[/code]. This may change in the future, so it is advised to "
-"always use [method open] to initialize your [Directory] where you want to "
-"operate, with explicit error checking.\n"
+"When creating a new [Directory], it must be explicitly opened using [method "
+"open] before most methods can be used. However, [method file_exists] and "
+"[method dir_exists] can be used without opening a directory. If so, they use "
+"a path relative to [code]res://[/code].\n"
"Here is an example on how to iterate through the files of a directory:\n"
"[codeblock]\n"
"func dir_contents(path):\n"
@@ -17184,7 +17259,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Directory.xml:27 doc/classes/File.xml:25
+#: doc/classes/Directory.xml:27 doc/classes/File.xml:26
msgid ""
"https://docs.godotengine.org/en/latest/getting_started/step_by_step/"
"filesystem.html"
@@ -17218,41 +17293,43 @@ msgstr ""
#: doc/classes/Directory.xml:65
msgid ""
"Returns whether the target directory exists. The argument can be relative to "
-"the current directory, or an absolute path."
+"the current directory, or an absolute path.\n"
+"If the [Directory] is not open, the path is relative to [code]res://[/code]."
msgstr ""
-#: doc/classes/Directory.xml:74
+#: doc/classes/Directory.xml:75
msgid ""
"Returns whether the target file exists. The argument can be relative to the "
-"current directory, or an absolute path."
+"current directory, or an absolute path.\n"
+"If the [Directory] is not open, the path is relative to [code]res://[/code]."
msgstr ""
-#: doc/classes/Directory.xml:81
+#: doc/classes/Directory.xml:83
msgid ""
"Returns the absolute path to the currently opened directory (e.g. "
"[code]res://folder[/code] or [code]C:\\tmp\\folder[/code])."
msgstr ""
-#: doc/classes/Directory.xml:88
+#: doc/classes/Directory.xml:90
msgid ""
"Returns the currently opened directory's drive index. See [method get_drive] "
"to convert returned index to the name of the drive."
msgstr ""
-#: doc/classes/Directory.xml:97
+#: doc/classes/Directory.xml:99
msgid ""
"On Windows, returns the name of the drive (partition) passed as an argument "
"(e.g. [code]C:[/code]). On other platforms, or if the requested drive does "
"not existed, the method returns an empty String."
msgstr ""
-#: doc/classes/Directory.xml:104
+#: doc/classes/Directory.xml:106
msgid ""
"On Windows, returns the number of drives (partitions) mounted on the current "
"filesystem. On other platforms, the method returns 0."
msgstr ""
-#: doc/classes/Directory.xml:111
+#: doc/classes/Directory.xml:113
msgid ""
"Returns the next element (file or directory) in the current directory "
"(including [code].[/code] and [code]..[/code], unless "
@@ -17263,14 +17340,14 @@ msgid ""
"mandatory in such a case)."
msgstr ""
-#: doc/classes/Directory.xml:119
+#: doc/classes/Directory.xml:121
msgid ""
"On UNIX desktop systems, returns the available space on the current "
"directory's disk. On other platforms, this information is not available and "
"the method returns 0 or -1."
msgstr ""
-#: doc/classes/Directory.xml:130
+#: doc/classes/Directory.xml:132
msgid ""
"Initializes the stream used to list all files and directories using the "
"[method get_next] function, closing the current opened stream if needed. "
@@ -17282,13 +17359,13 @@ msgid ""
"out."
msgstr ""
-#: doc/classes/Directory.xml:139
+#: doc/classes/Directory.xml:141
msgid ""
"Closes the current stream opened with [method list_dir_begin] (whether it "
"has been fully processed with [method get_next] or not does not matter)."
msgstr ""
-#: doc/classes/Directory.xml:148
+#: doc/classes/Directory.xml:150
msgid ""
"Creates a directory. The argument can be relative to the current directory, "
"or an absolute path. The target directory should be placed in an already "
@@ -17297,7 +17374,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:158
+#: doc/classes/Directory.xml:160
msgid ""
"Creates a target directory and all necessary intermediate directories in its "
"path, by calling [method make_dir] recursively. The argument can be relative "
@@ -17305,7 +17382,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:168
+#: doc/classes/Directory.xml:170
msgid ""
"Opens an existing directory of the filesystem. The [code]path[/code] "
"argument can be within the project tree ([code]res://folder[/code]), the "
@@ -17314,7 +17391,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:178
+#: doc/classes/Directory.xml:180
msgid ""
"Deletes the target file or an empty directory. The argument can be relative "
"to the current directory, or an absolute path. If the target directory is "
@@ -17322,7 +17399,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:190
+#: doc/classes/Directory.xml:192
msgid ""
"Renames (move) the [code]from[/code] file to the [code]to[/code] "
"destination. Both arguments should be paths to files, either relative or "
@@ -17363,6 +17440,53 @@ msgid ""
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
+#: doc/classes/DisplayServer.xml:530
+msgid ""
+"Return the greatest scale factor of all screens.\n"
+"[b]Note:[/b] On macOS returned value is [code]2.0[/code] if there is at "
+"least one hiDPI (Retina) screen in the system, and [code]1.0[/code] in all "
+"other cases.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:557
+msgid ""
+"Return the scale factor of the specified screen by index.\n"
+"[b]Note:[/b] On macOS returned value is [code]2.0[/code] for hiDPI (Retina) "
+"screen, and [code]1.0[/code] for all other cases.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:630
+msgid ""
+"Returns the on-screen keyboard's height in pixels. Returns 0 if there is no "
+"keyboard or if it is currently hidden."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:637
+msgid "Hides the virtual keyboard if it is shown, does nothing otherwise."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:656
+msgid ""
+"Shows the virtual keyboard if the platform has one.\n"
+"[code]existing_text[/code] parameter is useful for implementing your own "
+"[LineEdit] or [TextEdit], as it tells the virtual keyboard what text has "
+"already been typed (the virtual keyboard uses it for auto-correct and "
+"predictions).\n"
+"[code]position[/code] parameter is the screen space [Rect2] of the edited "
+"text.\n"
+"[code]multiline[/code] parameter needs to be set to [code]true[/code] to be "
+"able to enter multiple lines of text, as in [TextEdit].\n"
+"[code]max_length[/code] limits the number of characters that can be entered "
+"if different from [code]-1[/code].\n"
+"[code]cursor_start[/code] can optionally define the current text cursor "
+"position if [code]cursor_end[/code] is not set.\n"
+"[code]cursor_start[/code] and [code]cursor_end[/code] can optionally define "
+"the current text selection.\n"
+"[b]Note:[/b] This method is implemented on Android, iOS and UWP."
+msgstr ""
+
#: doc/classes/DTLSServer.xml:4
msgid "Helper class to implement a DTLS server."
msgstr ""
@@ -17483,54 +17607,62 @@ msgstr ""
msgid "Adds a fallback font."
msgstr ""
-#: doc/classes/DynamicFont.xml:35
+#: doc/classes/DynamicFont.xml:33
+msgid ""
+"Returns a string containing all the characters available in the main and all "
+"the fallback fonts.\n"
+"If a given character is included in more than one font, it appears only once "
+"in the returned string."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:43
msgid "Returns the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:42
+#: doc/classes/DynamicFont.xml:50
msgid "Returns the number of fallback fonts."
msgstr ""
-#: doc/classes/DynamicFont.xml:51
+#: doc/classes/DynamicFont.xml:59
msgid ""
"Returns the spacing for the given [code]type[/code] (see [enum SpacingType])."
msgstr ""
-#: doc/classes/DynamicFont.xml:60
+#: doc/classes/DynamicFont.xml:68
msgid "Removes the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:71
+#: doc/classes/DynamicFont.xml:79
msgid "Sets the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:82
+#: doc/classes/DynamicFont.xml:90
msgid ""
"Sets the spacing for [code]type[/code] (see [enum SpacingType]) to "
"[code]value[/code] in pixels (not relative to the font size)."
msgstr ""
-#: doc/classes/DynamicFont.xml:88
+#: doc/classes/DynamicFont.xml:96
msgid "Extra spacing at the bottom in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:91
+#: doc/classes/DynamicFont.xml:99
msgid "Extra character spacing in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:94
+#: doc/classes/DynamicFont.xml:102
msgid "Extra space spacing in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:97
+#: doc/classes/DynamicFont.xml:105
msgid "Extra spacing at the top in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:100
+#: doc/classes/DynamicFont.xml:108
msgid "The font data."
msgstr ""
-#: doc/classes/DynamicFont.xml:103
+#: doc/classes/DynamicFont.xml:111
msgid ""
"The font outline's color.\n"
"[b]Note:[/b] It's recommended to leave this at the default value so that you "
@@ -17539,27 +17671,27 @@ msgid ""
"outline modulate theme item."
msgstr ""
-#: doc/classes/DynamicFont.xml:107
+#: doc/classes/DynamicFont.xml:115
msgid "The font outline's thickness in pixels (not relative to the font size)."
msgstr ""
-#: doc/classes/DynamicFont.xml:110
+#: doc/classes/DynamicFont.xml:118
msgid "The font size in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:115
+#: doc/classes/DynamicFont.xml:123
msgid "Spacing at the top."
msgstr ""
-#: doc/classes/DynamicFont.xml:118
+#: doc/classes/DynamicFont.xml:126
msgid "Spacing at the bottom."
msgstr ""
-#: doc/classes/DynamicFont.xml:121
+#: doc/classes/DynamicFont.xml:129
msgid "Character spacing."
msgstr ""
-#: doc/classes/DynamicFont.xml:124
+#: doc/classes/DynamicFont.xml:132
msgid "Space spacing."
msgstr ""
@@ -17941,7 +18073,12 @@ msgstr ""
msgid "Remitted if a resource is reimported."
msgstr ""
-#: doc/classes/EditorFileSystem.xml:106
+#: doc/classes/EditorFileSystem.xml:100
+msgid ""
+"Emitted if at least one resource is reloaded when the filesystem is scanned."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:107
msgid "Emitted if the source of any imported file changed."
msgstr ""
@@ -17983,29 +18120,43 @@ msgstr ""
msgid "Returns the path to the file at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:86
+#: doc/classes/EditorFileSystemDirectory.xml:70
+msgid ""
+"Returns the base class of the script class defined in the file at index "
+"[code]idx[/code]. If the file doesn't define a script class using the "
+"[code]class_name[/code] syntax, this will return an empty string."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:79
+msgid ""
+"Returns the name of the script class defined in the file at index [code]idx[/"
+"code]. If the file doesn't define a script class using the [code]class_name[/"
+"code] syntax, this will return an empty string."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:88
msgid "Returns the file extension of the file at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:93
+#: doc/classes/EditorFileSystemDirectory.xml:95
msgid "Returns the name of this directory."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:100
+#: doc/classes/EditorFileSystemDirectory.xml:102
msgid ""
"Returns the parent directory for this directory or [code]null[/code] if "
"called on a directory at [code]res://[/code] or [code]user://[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:107
+#: doc/classes/EditorFileSystemDirectory.xml:109
msgid "Returns the path to this directory."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:116
+#: doc/classes/EditorFileSystemDirectory.xml:118
msgid "Returns the subdirectory at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:123
+#: doc/classes/EditorFileSystemDirectory.xml:125
msgid "Returns the number of subdirectories in this directory."
msgstr ""
@@ -18096,45 +18247,72 @@ msgstr ""
msgid "Gets the unique name of the importer."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:92
+#: doc/classes/EditorImportPlugin.xml:86
+msgid ""
+"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. For example:\n"
+"[codeblock]\n"
+"func get_option_visibility(option, options):\n"
+" # Only show the lossy quality setting if the compression mode is set to "
+"\"Lossy\".\n"
+" if option == \"compress/lossy_quality\" and options.has(\"compress/mode"
+"\"):\n"
+" return int(options[\"compress/mode\"]) == COMPRESS_LOSSY\n"
+"\n"
+" return true\n"
+"[/codeblock]\n"
+"Return [code]true[/code] to make all options always visible."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:102
msgid ""
"Gets the number of initial presets defined by the plugin. Use [method "
"get_import_options] to get the default options for the preset and [method "
"get_preset_name] to get the name of the preset."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:101
+#: doc/classes/EditorImportPlugin.xml:111
msgid "Gets the name of the options preset at this index."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:108
+#: doc/classes/EditorImportPlugin.xml:118
msgid ""
"Gets the priority of this plugin for the recognized extension. Higher "
"priority plugins will be preferred. The default priority is [code]1.0[/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:115
+#: doc/classes/EditorImportPlugin.xml:125
msgid ""
"Gets the list of file extensions to associate with this loader (case-"
"insensitive). e.g. [code][\"obj\"][/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:122
+#: doc/classes/EditorImportPlugin.xml:132
msgid ""
"Gets the Godot resource type associated with this loader. e.g. [code]\"Mesh"
"\"[/code] or [code]\"Animation\"[/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:129
+#: doc/classes/EditorImportPlugin.xml:139
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:136
+#: doc/classes/EditorImportPlugin.xml:146
msgid "Gets the name to display in the import window."
msgstr ""
+#: doc/classes/EditorImportPlugin.xml:163
+msgid ""
+"Imports [code]source_file[/code] into [code]save_path[/code] with the import "
+"[code]options[/code] specified. The [code]platform_variants[/code] and "
+"[code]gen_files[/code] arrays will be modified by this function.\n"
+"This method must be overridden to do the actual importing work. See this "
+"class' description for an example of overriding this method."
+msgstr ""
+
#: doc/classes/EditorInspector.xml:4
msgid "A tab used to edit properties of the selected node."
msgstr ""
@@ -18150,6 +18328,58 @@ msgid ""
"the singleton using [method EditorInterface.get_inspector]."
msgstr ""
+#: doc/classes/EditorInspector.xml:17
+msgid ""
+"Refreshes the inspector.\n"
+"[b]Note:[/b] To save on CPU resources, calling this method will do nothing "
+"if the time specified in [code]docks/property_editor/auto_refresh_interval[/"
+"code] editor setting hasn't passed yet since this method was last called. "
+"(By default, this interval is set to 0.3 seconds.)"
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:30
+msgid ""
+"Emitted when the Edit button of an [Object] has been pressed in the "
+"inspector. This is mainly used in the remote scene tree inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:37
+msgid "Emitted when a property is removed from the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:44
+msgid "Emitted when a property is edited in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:51
+msgid ""
+"Emitted when a property is keyed in the inspector. Properties can be keyed "
+"by clicking the \"key\" icon next to a property when the Animation panel is "
+"toggled."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:58
+msgid "Emitted when a property is selected in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:67
+msgid ""
+"Emitted when a boolean property is toggled in the inspector.\n"
+"[b]Note:[/b] This signal is never emitted if the internal [code]autoclear[/"
+"code] property enabled. Since this property is always enabled in the editor "
+"inspector, this signal is never emitted by the editor itself."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:77
+msgid "Emitted when a resource is selected in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:82
+msgid ""
+"Emitted when a property that requires a restart to be applied is edited in "
+"the inspector. This is only used in the Project Settings and Editor Settings."
+msgstr ""
+
#: doc/classes/EditorInspectorPlugin.xml:4
msgid "Plugin for adding custom property editors on inspector."
msgstr ""
@@ -18228,91 +18458,155 @@ msgstr ""
#: doc/classes/EditorInterface.xml:26
msgid ""
-"Returns the main container of Godot editor's window. You can use it, for "
-"example, to retrieve the size of the container and place your controls "
+"Returns the main container of Godot editor's window. For example, you can "
+"use it to retrieve the size of the container and place your controls "
"accordingly."
msgstr ""
-#: doc/classes/EditorInterface.xml:39
+#: doc/classes/EditorInterface.xml:33
+msgid "Returns the current path being viewed in the [FileSystemDock]."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:40
msgid "Returns the edited (current) scene's root [Node]."
msgstr ""
-#: doc/classes/EditorInterface.xml:46
-msgid "Returns the [EditorSettings]."
+#: doc/classes/EditorInterface.xml:47
+msgid "Returns the editor's [EditorSettings] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:53
-msgid "Returns the editor [Viewport]."
+#: doc/classes/EditorInterface.xml:54
+msgid ""
+"Returns the main editor control. Use this as a parent for main screens.\n"
+"[b]Note:[/b] This returns the main editor control containing the whole "
+"editor, not the 2D or 3D viewports specifically."
msgstr ""
-#: doc/classes/EditorInterface.xml:72
+#: doc/classes/EditorInterface.xml:62
+msgid "Returns the editor's [FileSystemDock] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:69
+msgid "Returns the editor's [EditorInspector] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:76
msgid "Returns an [Array] with the file paths of the currently opened scenes."
msgstr ""
-#: doc/classes/EditorInterface.xml:79
-msgid "Returns the [EditorFileSystem]."
+#: doc/classes/EditorInterface.xml:83
+msgid ""
+"Returns the name of the scene that is being played. If no scene is currently "
+"being played, returns an empty string."
msgstr ""
-#: doc/classes/EditorInterface.xml:86
-msgid "Returns the [EditorResourcePreview]."
+#: doc/classes/EditorInterface.xml:90
+msgid "Returns the editor's [EditorFileSystem] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:93
-msgid "Returns the [ScriptEditor]."
+#: doc/classes/EditorInterface.xml:97
+msgid "Returns the editor's [EditorResourcePreview] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:106
-msgid "Returns the [EditorSelection]."
+#: doc/classes/EditorInterface.xml:104
+msgid "Returns the editor's [ScriptEditor] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:117
+#: doc/classes/EditorInterface.xml:111
msgid ""
-"Shows the given property on the given [code]object[/code] in the Editor's "
+"Returns the path of the directory currently selected in the "
+"[FileSystemDock]. If a file is selected, its base directory will be returned "
+"using [method String.get_base_dir] instead."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:118
+msgid "Returns the editor's [EditorSelection] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:129
+msgid ""
+"Shows the given property on the given [code]object[/code] in the editor's "
"Inspector dock."
msgstr ""
-#: doc/classes/EditorInterface.xml:126
+#: doc/classes/EditorInterface.xml:136
msgid ""
-"Returns the enabled status of a plugin. The plugin name is the same as its "
-"directory name."
+"Returns [code]true[/code] if a scene is currently being played, [code]false[/"
+"code] otherwise. Paused scenes are considered as being played."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:145
+msgid ""
+"Returns [code]true[/code] if the specified [code]plugin[/code] is enabled. "
+"The plugin name is the same as its directory name."
msgstr ""
-#: doc/classes/EditorInterface.xml:137
+#: doc/classes/EditorInterface.xml:156
msgid ""
"Returns mesh previews rendered at the given size as an [Array] of "
"[Texture2D]s."
msgstr ""
-#: doc/classes/EditorInterface.xml:146
+#: doc/classes/EditorInterface.xml:165
msgid "Opens the scene at the given path."
msgstr ""
-#: doc/classes/EditorInterface.xml:155
+#: doc/classes/EditorInterface.xml:172
+msgid "Plays the currently active scene."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:181
+msgid "Plays the scene specified by its filepath."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:188
+msgid "Plays the main scene."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:197
msgid "Reloads the scene at the given path."
msgstr ""
-#: doc/classes/EditorInterface.xml:162
+#: doc/classes/EditorInterface.xml:204
msgid ""
"Saves the scene. Returns either [code]OK[/code] or [code]ERR_CANT_CREATE[/"
"code] (see [@GlobalScope] constants)."
msgstr ""
-#: doc/classes/EditorInterface.xml:173
+#: doc/classes/EditorInterface.xml:215
msgid "Saves the scene as a file at [code]path[/code]."
msgstr ""
-#: doc/classes/EditorInterface.xml:182
+#: doc/classes/EditorInterface.xml:224
msgid ""
"Selects the file, with the path provided by [code]file[/code], in the "
"FileSystem dock."
msgstr ""
-#: doc/classes/EditorInterface.xml:201
+#: doc/classes/EditorInterface.xml:233
+msgid ""
+"Sets the editor's current main screen to the one specified in [code]name[/"
+"code]. [code]name[/code] must match the text of the tab in question exactly "
+"([code]2D[/code], [code]3D[/code], [code]Script[/code], [code]AssetLib[/"
+"code])."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:244
msgid ""
"Sets the enabled status of a plugin. The plugin name is the same as its "
"directory name."
msgstr ""
+#: doc/classes/EditorInterface.xml:251
+msgid "Stops the scene that is currently playing."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:257
+msgid ""
+"If [code]true[/code], enables distraction-free mode which hides side docks "
+"to increase the space available for the main view."
+msgstr ""
+
#: doc/classes/EditorNode3DGizmo.xml:4
msgid "Custom gizmo for editing Node3D objects."
msgstr ""
@@ -18324,14 +18618,20 @@ msgid ""
"information."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:26
+#: doc/classes/EditorNode3DGizmo.xml:18
+msgid ""
+"Adds the specified [code]segments[/code] to the gizmo's collision shape for "
+"picking. Call this function during [method redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:27
msgid ""
"Adds collision triangles to the gizmo for picking. A [TriangleMesh] can be "
"generated from a regular [Mesh] too. Call this function during [method "
"redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:41
+#: doc/classes/EditorNode3DGizmo.xml:42
msgid ""
"Adds a list of handles (points) which can be used to deform the object being "
"edited.\n"
@@ -18339,20 +18639,33 @@ msgid ""
"handles. Call this function during [method redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:57
+#: doc/classes/EditorNode3DGizmo.xml:58
msgid ""
"Adds lines to the gizmo (as sets of 2 points), with a given material. The "
"lines are used for visualizing the gizmo. Call this function during [method "
"redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:84
+#: doc/classes/EditorNode3DGizmo.xml:73
+msgid ""
+"Adds a mesh to the gizmo with the specified [code]billboard[/code] state, "
+"[code]skeleton[/code] and [code]material[/code]. If [code]billboard[/code] "
+"is [code]true[/code], the mesh will rotate to always face the camera. Call "
+"this function during [method redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:86
msgid ""
"Adds an unscaled billboard for visualization. Call this function during "
"[method redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:103
+#: doc/classes/EditorNode3DGizmo.xml:93
+msgid ""
+"Removes everything in the gizmo including meshes, collisions and handles."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:106
msgid ""
"Commit a handle being edited (handles must have been previously added by "
"[method add_handles]).\n"
@@ -18360,40 +18673,42 @@ msgid ""
"restore the edited value to the original is provided."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:113
+#: doc/classes/EditorNode3DGizmo.xml:116
msgid ""
"Gets the name of an edited handle (handles must have been previously added "
"by [method add_handles]).\n"
"Handles can be named for reference to the user when editing."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:123
+#: doc/classes/EditorNode3DGizmo.xml:126
msgid ""
"Gets actual value of a handle. This value can be anything and used for "
"eventually undoing the motion when calling [method commit_handle]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:130
+#: doc/classes/EditorNode3DGizmo.xml:133
msgid ""
"Returns the [EditorNode3DGizmoPlugin] that owns this gizmo. It's useful to "
"retrieve materials using [method EditorNode3DGizmoPlugin.get_material]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:137
+#: doc/classes/EditorNode3DGizmo.xml:140
msgid "Returns the Node3D node associated with this gizmo."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:146
-msgid "Gets whether a handle is highlighted or not."
+#: doc/classes/EditorNode3DGizmo.xml:149
+msgid ""
+"Returns [code]true[/code] if the handle at index [code]index[/code] is "
+"highlighted by being hovered with the mouse."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:153
+#: doc/classes/EditorNode3DGizmo.xml:156
msgid ""
-"This function is called when the Node3D this gizmo refers to changes (the "
+"This function is called when the [Node3D] this gizmo refers to changes (the "
"[method Node3D.update_gizmo] is called)."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:166
+#: doc/classes/EditorNode3DGizmo.xml:169
msgid ""
"This function is used when the user drags a gizmo handle (previously added "
"with [method add_handles]) in screen coordinates.\n"
@@ -18401,6 +18716,18 @@ msgid ""
"raycasts."
msgstr ""
+#: doc/classes/EditorNode3DGizmo.xml:179
+msgid ""
+"Sets the gizmo's hidden state. If [code]true[/code], the gizmo will be "
+"hidden. If [code]false[/code], it will be shown."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:188
+msgid ""
+"Sets the reference [Node3D] node for the gizmo. [code]node[/code] must "
+"inherit from [Node3D]."
+msgstr ""
+
#: doc/classes/EditorNode3DGizmoPlugin.xml:4
msgid "Used by the editor to define Node3D gizmo types."
msgstr ""
@@ -18493,7 +18820,17 @@ msgid ""
"visibility menu."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:150
+#: doc/classes/EditorNode3DGizmoPlugin.xml:142
+msgid ""
+"Override this method to set the gizmo's priority. Higher values correspond "
+"to higher priority. If a gizmo with higher priority conflicts with another "
+"gizmo, only the gizmo with higher priority will be used.\n"
+"All built-in editor gizmos return a priority of [code]-1[/code]. If not "
+"overridden, this method will return [code]0[/code], which means custom "
+"gizmos will automatically override built-in gizmos."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:152
msgid ""
"Override this method to define which Node3D nodes have a gizmo from this "
"plugin. Whenever a [Node3D] node is added to a scene this method is called, "
@@ -18501,25 +18838,25 @@ msgid ""
"assigned and is added to this plugin's list of active gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:161
+#: doc/classes/EditorNode3DGizmoPlugin.xml:163
msgid ""
"Gets whether a handle is highlighted or not. Called for this plugin's active "
"gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:168
+#: doc/classes/EditorNode3DGizmoPlugin.xml:170
msgid ""
"Override this method to define whether Node3D with this gizmo should be "
"selecteble even when the gizmo is hidden."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:177
+#: doc/classes/EditorNode3DGizmoPlugin.xml:179
msgid ""
"Callback to redraw the provided gizmo. Called for this plugin's active "
"gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:192
+#: doc/classes/EditorNode3DGizmoPlugin.xml:194
msgid ""
"Update the value of a handle after it has been updated. Called for this "
"plugin's active gizmos."
@@ -18606,7 +18943,13 @@ msgid ""
"should be cleaned up using [code]remove_tool_menu_item(name)[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:149
+#: doc/classes/EditorPlugin.xml:151
+msgid ""
+"Registers a custom translation parser plugin for extracting translatable "
+"strings from custom files."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:158
msgid ""
"This method is called when the editor is about to save the project, switch "
"to another tab, etc. It asks the plugin to apply any pending state changes "
@@ -18615,32 +18958,32 @@ msgid ""
"must apply the shader code being written by the user to the object."
msgstr ""
-#: doc/classes/EditorPlugin.xml:163
+#: doc/classes/EditorPlugin.xml:172
msgid ""
"Clear all the state and reset the object being edited to zero. This ensures "
"your plugin does not keep editing a currently existing node, or a node from "
"the wrong scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:170
+#: doc/classes/EditorPlugin.xml:179
msgid ""
"Called by the engine when the user disables the [EditorPlugin] in the Plugin "
"tab of the project settings window."
msgstr ""
-#: doc/classes/EditorPlugin.xml:179
+#: doc/classes/EditorPlugin.xml:188
msgid ""
"This function is used for plugins that edit specific object types (nodes or "
"resources). It requests the editor to edit the given object."
msgstr ""
-#: doc/classes/EditorPlugin.xml:186
+#: doc/classes/EditorPlugin.xml:195
msgid ""
"Called by the engine when the user enables the [EditorPlugin] in the Plugin "
"tab of the project settings window."
msgstr ""
-#: doc/classes/EditorPlugin.xml:211
+#: doc/classes/EditorPlugin.xml:220
msgid ""
"Called when there is a root node in the current edited scene, [method "
"handles] is implemented and an [InputEvent] happens in the 2D viewport. "
@@ -18665,7 +19008,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:237
+#: doc/classes/EditorPlugin.xml:246
msgid ""
"Called when there is a root node in the current edited scene, [method "
"handles] is implemented and an [InputEvent] happens in the 3D viewport. "
@@ -18690,20 +19033,20 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:259
+#: doc/classes/EditorPlugin.xml:268
msgid ""
"This is for editors that edit script-based objects. You can return a list of "
"breakpoints in the format ([code]script:line[/code]), for example: "
"[code]res://path_to_script.gd:25[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:266
+#: doc/classes/EditorPlugin.xml:275
msgid ""
"Returns the [EditorInterface] object that gives you control over Godot "
"editor's window and its functionalities."
msgstr ""
-#: doc/classes/EditorPlugin.xml:273
+#: doc/classes/EditorPlugin.xml:282
msgid ""
"Override this method in your plugin to return a [Texture2D] in order to give "
"it an icon.\n"
@@ -18721,7 +19064,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:289
+#: doc/classes/EditorPlugin.xml:298
msgid ""
"Override this method in your plugin to provide the name of the plugin when "
"displayed in the Godot editor.\n"
@@ -18729,33 +19072,33 @@ msgid ""
"of the \"2D\", \"3D\", \"Script\", and \"AssetLib\" buttons."
msgstr ""
-#: doc/classes/EditorPlugin.xml:297
+#: doc/classes/EditorPlugin.xml:306
msgid ""
"Gets the Editor's dialogue used for making scripts.\n"
"[b]Note:[/b] Users can configure it before use."
msgstr ""
-#: doc/classes/EditorPlugin.xml:305
+#: doc/classes/EditorPlugin.xml:314
msgid ""
"Gets the state of your plugin editor. This is used when saving the scene (so "
"state is kept when opening it again) and for switching tabs (so state can be "
"restored when the tab returns)."
msgstr ""
-#: doc/classes/EditorPlugin.xml:312
+#: doc/classes/EditorPlugin.xml:321
msgid ""
"Gets the undo/redo object. Most actions in the editor can be undoable, so "
"use this object to make sure this happens when it's worth it."
msgstr ""
-#: doc/classes/EditorPlugin.xml:321
+#: doc/classes/EditorPlugin.xml:330
msgid ""
"Gets the GUI layout of the plugin. This is used to save the project's editor "
"layout when [method queue_save_layout] is called or the editor layout was "
"changed(For example changing the position of a dock)."
msgstr ""
-#: doc/classes/EditorPlugin.xml:330
+#: doc/classes/EditorPlugin.xml:339
msgid ""
"Implement this function if your plugin edits a specific type of object "
"(Resource or Node). If you return [code]true[/code], then you will get the "
@@ -18765,14 +19108,14 @@ msgid ""
"be called too."
msgstr ""
-#: doc/classes/EditorPlugin.xml:337
+#: doc/classes/EditorPlugin.xml:346
msgid ""
"Returns [code]true[/code] if this is a main screen editor plugin (it goes in "
"the workspace selector together with [b]2D[/b], [b]3D[/b], [b]Script[/b] and "
"[b]AssetLib[/b])."
msgstr ""
-#: doc/classes/EditorPlugin.xml:360
+#: doc/classes/EditorPlugin.xml:369
msgid ""
"This function will be called when the editor is requested to become visible. "
"It is used for plugins that edit a specific object type.\n"
@@ -18780,85 +19123,89 @@ msgid ""
"manually."
msgstr ""
-#: doc/classes/EditorPlugin.xml:368
+#: doc/classes/EditorPlugin.xml:377
msgid "Queue save the project's editor layout."
msgstr ""
-#: doc/classes/EditorPlugin.xml:377
+#: doc/classes/EditorPlugin.xml:386
msgid "Removes an Autoload [code]name[/code] from the list."
msgstr ""
-#: doc/classes/EditorPlugin.xml:386
+#: doc/classes/EditorPlugin.xml:395
msgid ""
"Removes the control from the bottom panel. You have to manually [method Node."
"queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:397
+#: doc/classes/EditorPlugin.xml:406
msgid ""
"Removes the control from the specified container. You have to manually "
"[method Node.queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:406
+#: doc/classes/EditorPlugin.xml:415
msgid ""
"Removes the control from the dock. You have to manually [method Node."
"queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:415
+#: doc/classes/EditorPlugin.xml:424
msgid "Removes a custom type added by [method add_custom_type]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:464
+#: doc/classes/EditorPlugin.xml:473
msgid "Removes a menu [code]name[/code] from [b]Project > Tools[/b]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:471
+#: doc/classes/EditorPlugin.xml:482
+msgid "Removes a registered custom translation parser plugin."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:489
msgid ""
"This method is called after the editor saves the project or when it's "
"closed. It asks the plugin to save edited external scenes/resources."
msgstr ""
-#: doc/classes/EditorPlugin.xml:484
+#: doc/classes/EditorPlugin.xml:502
msgid ""
"Use this method if you always want to receive inputs from 3D view screen "
"inside [method forward_spatial_gui_input]. It might be especially usable if "
"your plugin will want to use raycast in the scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:493
+#: doc/classes/EditorPlugin.xml:511
msgid "Restore the state saved by [method get_state]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:502
+#: doc/classes/EditorPlugin.xml:520
msgid "Restore the plugin GUI layout saved by [method get_window_layout]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:509
+#: doc/classes/EditorPlugin.xml:527
msgid "Updates the overlays of the editor (2D/3D) viewport."
msgstr ""
-#: doc/classes/EditorPlugin.xml:518
+#: doc/classes/EditorPlugin.xml:536
msgid ""
"Emitted when user changes the workspace ([b]2D[/b], [b]3D[/b], [b]Script[/"
"b], [b]AssetLib[/b]). Also works with custom screens defined by plugins."
msgstr ""
-#: doc/classes/EditorPlugin.xml:531
+#: doc/classes/EditorPlugin.xml:549
msgid ""
"Emitted when the scene is changed in the editor. The argument will return "
"the root node of the scene that has just become active. If this scene is new "
"and empty, the argument will be [code]null[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:538
+#: doc/classes/EditorPlugin.xml:556
msgid ""
"Emitted when user closes a scene. The argument is file path to a closed "
"scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:584
+#: doc/classes/EditorPlugin.xml:602
msgid "Represents the size of the [enum DockSlot] enum."
msgstr ""
@@ -18913,64 +19260,83 @@ msgid "When this virtual function is called, you must update your editor."
msgstr ""
#: doc/classes/EditorProperty.xml:76
-msgid "Used by the inspector, set when property is checkable."
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is "
+"checkable."
msgstr ""
#: doc/classes/EditorProperty.xml:79
-msgid "Used by the inspector, when the property is checked."
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is checked."
msgstr ""
-#: doc/classes/EditorProperty.xml:84
-msgid "Used by the inspector, when the property must draw with error color."
+#: doc/classes/EditorProperty.xml:82
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property can be "
+"deleted by the user."
msgstr ""
-#: doc/classes/EditorProperty.xml:87
-msgid "Used by the inspector, when the property can add keys for animation."
+#: doc/classes/EditorProperty.xml:85
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property must draw "
+"with error color. This is used for editable children's properties."
msgstr ""
-#: doc/classes/EditorProperty.xml:90
-msgid "Sets this property to change the label (if you want to show one)."
+#: doc/classes/EditorProperty.xml:88
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property can add "
+"keys for animation."
msgstr ""
-#: doc/classes/EditorProperty.xml:93
-msgid "Used by the inspector, when the property is read-only."
+#: doc/classes/EditorProperty.xml:91
+msgid "Set this property to change the label (if you want to show one)."
msgstr ""
-#: doc/classes/EditorProperty.xml:103
+#: doc/classes/EditorProperty.xml:94
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is read-"
+"only."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:104
msgid ""
"Emit it if you want multiple properties modified at the same time. Do not "
"use if added via [method EditorInspectorPlugin.parse_property]."
msgstr ""
-#: doc/classes/EditorProperty.xml:112
+#: doc/classes/EditorProperty.xml:113
msgid "Used by sub-inspectors. Emit it if what was selected was an Object ID."
msgstr ""
-#: doc/classes/EditorProperty.xml:121
+#: doc/classes/EditorProperty.xml:122
msgid ""
"Do not emit this manually, use the [method emit_changed] method instead."
msgstr ""
-#: doc/classes/EditorProperty.xml:130
+#: doc/classes/EditorProperty.xml:131
msgid "Emitted when a property was checked. Used internally."
msgstr ""
-#: doc/classes/EditorProperty.xml:143
+#: doc/classes/EditorProperty.xml:138
+msgid "Emitted when a property was deleted. Used internally."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:145
msgid ""
"Emit it if you want to add this value as an animation key (check for keying "
"being enabled first)."
msgstr ""
-#: doc/classes/EditorProperty.xml:152
+#: doc/classes/EditorProperty.xml:154
msgid "Emit it if you want to key a property with a single value."
msgstr ""
-#: doc/classes/EditorProperty.xml:161
+#: doc/classes/EditorProperty.xml:163
msgid ""
"If you want a sub-resource to be edited, emit this signal with the resource."
msgstr ""
-#: doc/classes/EditorProperty.xml:170
+#: doc/classes/EditorProperty.xml:172
msgid "Emitted when selected. Used internally."
msgstr ""
@@ -19255,17 +19621,26 @@ msgstr ""
msgid ""
"Object that holds the project-independent editor settings. These settings "
"are generally visible in the [b]Editor > Editor Settings[/b] menu.\n"
-"Accessing the settings is done by using the regular [Object] API, such as:\n"
-"[codeblock]\n"
-"settings.set(prop,value)\n"
-"settings.get(prop)\n"
-"list_of_settings = settings.get_property_list()\n"
+"Property names use slash delimiters to distinguish sections. Setting values "
+"can be of any [Variant] type. It's recommended to use [code]snake_case[/"
+"code] for editor settings to be consistent with the Godot editor itself.\n"
+"Accessing the settings can be done using the following methods, such as:\n"
+"[codeblock]\n"
+"# `settings.set(\"some/property\", value)` also works as this class "
+"overrides `_set()` internally.\n"
+"settings.set_setting(\"some/property\",value)\n"
+"\n"
+"# `settings.get(\"some/property\", value)` also works as this class "
+"overrides `_get()` internally.\n"
+"settings.get_setting(\"some/property\")\n"
+"\n"
+"var list_of_settings = settings.get_property_list()\n"
"[/codeblock]\n"
"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
"the singleton using [method EditorInterface.get_editor_settings]."
msgstr ""
-#: doc/classes/EditorSettings.xml:25
+#: doc/classes/EditorSettings.xml:30
msgid ""
"Adds a custom property info to a property. The dictionary must contain:\n"
"- [code]name[/code]: [String] (the name of the property)\n"
@@ -19287,52 +19662,173 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorSettings.xml:50
-msgid "Erase a given setting (pass full property path)."
+#: doc/classes/EditorSettings.xml:55
+msgid "Erases the setting whose name is specified by [code]property[/code]."
msgstr ""
-#: doc/classes/EditorSettings.xml:57
-msgid "Gets the list of favorite files and directories for this project."
+#: doc/classes/EditorSettings.xml:62
+msgid "Returns the list of favorite files and directories for this project."
msgstr ""
-#: doc/classes/EditorSettings.xml:76
+#: doc/classes/EditorSettings.xml:75
msgid ""
-"Gets the specific project settings path. Projects all have a unique sub-"
-"directory inside the settings path where project specific settings are saved."
+"Returns project-specific metadata for the [code]section[/code] and "
+"[code]key[/code] specified. If the metadata doesn't exist, [code]default[/"
+"code] will be returned instead. See also [method set_project_metadata]."
msgstr ""
-#: doc/classes/EditorSettings.xml:83
+#: doc/classes/EditorSettings.xml:82
msgid ""
-"Gets the list of recently visited folders in the file dialog for this "
+"Returns the project-specific settings path. Projects all have a unique "
+"subdirectory inside the settings path where project-specific settings are "
+"saved."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:89
+msgid ""
+"Returns the list of recently visited folders in the file dialog for this "
"project."
msgstr ""
#: doc/classes/EditorSettings.xml:98
msgid ""
+"Returns the value of the setting specified by [code]name[/code]. This is "
+"equivalent to using [method Object.get] on the EditorSettings instance."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:105
+msgid ""
"Gets the global settings path for the engine. Inside this path, you can find "
"some standard paths such as:\n"
"[code]settings/tmp[/code] - Used for temporary storage of files\n"
"[code]settings/templates[/code] - Where export templates are located"
msgstr ""
-#: doc/classes/EditorSettings.xml:133
+#: doc/classes/EditorSettings.xml:116
+msgid ""
+"Returns [code]true[/code] if the setting specified by [code]name[/code] "
+"exists, [code]false[/code] otherwise."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:125
+msgid ""
+"Returns [code]true[/code] if the setting specified by [code]name[/code] can "
+"have its value reverted to the default value, [code]false[/code] otherwise. "
+"When this method returns [code]true[/code], a Revert button will display "
+"next to the setting in the Editor Settings."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:134
+msgid ""
+"Returns the default value of the setting specified by [code]name[/code]. "
+"This is the value that would be applied when clicking the Revert button in "
+"the Editor Settings."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:143
msgid "Sets the list of favorite files and directories for this project."
msgstr ""
-#: doc/classes/EditorSettings.xml:166
+#: doc/classes/EditorSettings.xml:156
+msgid ""
+"Sets the initial value of the setting specified by [code]name[/code] to "
+"[code]value[/code]. This is used to provide a value for the Revert button in "
+"the Editor Settings. If [code]update_current[/code] is true, the current "
+"value of the setting will be set to [code]value[/code] as well."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:169
+msgid ""
+"Sets project-specific metadata with the [code]section[/code], [code]key[/"
+"code] and [code]data[/code] specified. This metadata is stored outside the "
+"project folder and therefore won't be checked into version control. See also "
+"[method get_project_metadata]."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:178
msgid ""
"Sets the list of recently visited folders in the file dialog for this "
"project."
msgstr ""
-#: doc/classes/EditorSettings.xml:183
-msgid "Emitted when editor settings change."
+#: doc/classes/EditorSettings.xml:189
+msgid ""
+"Sets the [code]value[/code] of the setting specified by [code]name[/code]. "
+"This is equivalent to using [method Object.set] on the EditorSettings "
+"instance."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:196
+msgid "Emitted after any editor setting has changed."
msgstr ""
-#: doc/classes/EditorSettings.xml:189
+#: doc/classes/EditorSettings.xml:202
+msgid ""
+"Emitted after any editor setting has changed. It's used by various editor "
+"plugins to update their visuals on theme changes or logic on configuration "
+"changes."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:4
+msgid ""
+"Plugin for adding custom parsers to extract strings that are to be "
+"translated from custom files (.csv, .json etc.)."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:7
+msgid ""
+"Plugins are registered via [method EditorPlugin."
+"add_translation_parser_plugin] method. To define the parsing and string "
+"extraction logic, override the [method parse_file] method in script.\n"
+"The extracted strings will be written into a POT file selected by user under "
+"\"POT Generation\" in \"Localization\" tab in \"Project Settings\" menu.\n"
+"Below shows an example of a custom parser that extracts strings in a CSV "
+"file to write into a POT.\n"
+"[codeblock]\n"
+"tool\n"
+"extends EditorTranslationParserPlugin\n"
+"\n"
+"\n"
+"func parse_file(path, extracted_strings):\n"
+" var file = File.new()\n"
+" file.open(path, File.READ)\n"
+" var text = file.get_as_text()\n"
+" var split_strs = text.split(\",\", false, 0)\n"
+" for s in split_strs:\n"
+" extracted_strings.append(s)\n"
+" #print(\"Extracted string: \" + s)\n"
+"\n"
+"\n"
+"func get_recognized_extensions():\n"
+" return [\"csv\"]\n"
+"[/codeblock]\n"
+"[b]Note:[/b] If you override parsing logic for standard script types "
+"(GDScript, C#, etc.), it would be better to load the [code]path[/code] "
+"argument using [method ResourceLoader.load]. This is because built-in "
+"scripts are loaded as [Resource] type, not [File] type.\n"
+"For example:\n"
+"[codeblock]\n"
+"func parse_file(path, extracted_strings):\n"
+" var res = ResourceLoader.load(path, \"Script\")\n"
+" var text = res.get_source_code()\n"
+" # Parsing logic.\n"
+"\n"
+"\n"
+"func get_recognized_extensions():\n"
+" return [\"gd\"]\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:48
+msgid ""
+"Gets the list of file extensions to associate with this parser, e.g. [code]"
+"[\"csv\"][/code]."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:59
msgid ""
-"Emitted when editor settings change. It used by various editor plugins to "
-"update their visuals on theme changes or logic on configuration changes."
+"Override this method to define a custom parsing logic to extract the "
+"translatable strings."
msgstr ""
#: doc/classes/EditorVCSInterface.xml:4
@@ -19943,15 +20439,15 @@ msgid ""
"to 1.3 to compensate for the lack of HDR rendering."
msgstr ""
-#: doc/classes/Environment.xml:190
+#: doc/classes/Environment.xml:214
msgid "The [Sky] resource used for this [Environment]."
msgstr ""
-#: doc/classes/Environment.xml:197
+#: doc/classes/Environment.xml:221
msgid "The depth tolerance for screen-space reflections."
msgstr ""
-#: doc/classes/Environment.xml:200
+#: doc/classes/Environment.xml:224
msgid ""
"If [code]true[/code], screen-space reflections are enabled. Screen-space "
"reflections are more accurate than reflections from [GIProbe]s or "
@@ -19959,48 +20455,48 @@ msgid ""
"others."
msgstr ""
-#: doc/classes/Environment.xml:203
+#: doc/classes/Environment.xml:227
msgid ""
"The fade-in distance for screen-space reflections. Affects the area from the "
"reflected material to the screen-space reflection)."
msgstr ""
-#: doc/classes/Environment.xml:206
+#: doc/classes/Environment.xml:230
msgid ""
"The fade-out distance for screen-space reflections. Affects the area from "
"the screen-space reflection to the \"global\" reflection."
msgstr ""
-#: doc/classes/Environment.xml:209
+#: doc/classes/Environment.xml:233
msgid ""
"The maximum number of steps for screen-space reflections. Higher values are "
"slower."
msgstr ""
-#: doc/classes/Environment.xml:212
+#: doc/classes/Environment.xml:236
msgid ""
"The screen-space ambient occlusion intensity on materials that have an AO "
"texture defined. Values higher than [code]0[/code] will make the SSAO effect "
"visible in areas darkened by AO textures."
msgstr ""
-#: doc/classes/Environment.xml:215
+#: doc/classes/Environment.xml:239
msgid ""
"The screen-space ambient occlusion bias. This should be kept high enough to "
"prevent \"smooth\" curves from being affected by ambient occlusion."
msgstr ""
-#: doc/classes/Environment.xml:218
+#: doc/classes/Environment.xml:242
msgid ""
"The screen-space ambient occlusion blur quality. See [enum SSAOBlur] for "
"possible values."
msgstr ""
-#: doc/classes/Environment.xml:221
+#: doc/classes/Environment.xml:245
msgid "The screen-space ambient occlusion edge sharpness."
msgstr ""
-#: doc/classes/Environment.xml:224
+#: doc/classes/Environment.xml:248
msgid ""
"If [code]true[/code], the screen-space ambient occlusion effect is enabled. "
"This darkens objects' corners and cavities to simulate ambient light not "
@@ -20011,13 +20507,13 @@ msgid ""
"issues."
msgstr ""
-#: doc/classes/Environment.xml:227
+#: doc/classes/Environment.xml:251
msgid ""
"The primary screen-space ambient occlusion intensity. See also [member "
"ssao_radius]."
msgstr ""
-#: doc/classes/Environment.xml:230
+#: doc/classes/Environment.xml:254
msgid ""
"The screen-space ambient occlusion intensity in direct light. In real life, "
"ambient occlusion only applies to indirect light, which means its effects "
@@ -20025,46 +20521,46 @@ msgid ""
"the SSAO effect visible in direct light."
msgstr ""
-#: doc/classes/Environment.xml:233
+#: doc/classes/Environment.xml:257
msgid "The primary screen-space ambient occlusion radius."
msgstr ""
-#: doc/classes/Environment.xml:236
+#: doc/classes/Environment.xml:260
msgid "The default exposure used for tonemapping."
msgstr ""
-#: doc/classes/Environment.xml:239
+#: doc/classes/Environment.xml:263
msgid ""
"The tonemapping mode to use. Tonemapping is the process that \"converts\" "
"HDR values to be suitable for rendering on a LDR display. (Godot doesn't "
"support rendering on HDR displays yet.)"
msgstr ""
-#: doc/classes/Environment.xml:242
+#: doc/classes/Environment.xml:266
msgid ""
"The white reference value for tonemapping. Only effective if the [member "
"tonemap_mode] isn't set to [constant TONE_MAPPER_LINEAR]."
msgstr ""
-#: doc/classes/Environment.xml:247
+#: doc/classes/Environment.xml:271
msgid ""
"Clears the background using the clear color defined in [member "
"ProjectSettings.rendering/environment/default_clear_color]."
msgstr ""
-#: doc/classes/Environment.xml:250
+#: doc/classes/Environment.xml:274
msgid "Clears the background using a custom clear color."
msgstr ""
-#: doc/classes/Environment.xml:253
+#: doc/classes/Environment.xml:277
msgid "Displays a user-defined sky in the background."
msgstr ""
-#: doc/classes/Environment.xml:256
+#: doc/classes/Environment.xml:280
msgid "Displays a [CanvasLayer] in the background."
msgstr ""
-#: doc/classes/Environment.xml:259
+#: doc/classes/Environment.xml:283
msgid ""
"Keeps on screen every pixel drawn in the background. This is the fastest "
"background mode, but it can only be safely used in fully-interior scenes (no "
@@ -20072,107 +20568,107 @@ msgid ""
"is visible, \"ghost trail\" artifacts will be visible when moving the camera."
msgstr ""
-#: doc/classes/Environment.xml:262 doc/classes/RenderingServer.xml:3446
+#: doc/classes/Environment.xml:286 doc/classes/RenderingServer.xml:3457
msgid "Displays a camera feed in the background."
msgstr ""
-#: doc/classes/Environment.xml:265
+#: doc/classes/Environment.xml:289
msgid "Represents the size of the [enum BGMode] enum."
msgstr ""
-#: doc/classes/Environment.xml:268 doc/classes/RenderingServer.xml:3452
+#: doc/classes/Environment.xml:292 doc/classes/RenderingServer.xml:3463
msgid ""
"Gather ambient light from whichever source is specified as the background."
msgstr ""
-#: doc/classes/Environment.xml:271 doc/classes/RenderingServer.xml:3455
+#: doc/classes/Environment.xml:295 doc/classes/RenderingServer.xml:3466
msgid "Disable ambient light."
msgstr ""
-#: doc/classes/Environment.xml:274 doc/classes/RenderingServer.xml:3458
+#: doc/classes/Environment.xml:298 doc/classes/RenderingServer.xml:3469
msgid "Specify a specific [Color] for ambient light."
msgstr ""
-#: doc/classes/Environment.xml:277 doc/classes/RenderingServer.xml:3461
+#: doc/classes/Environment.xml:301 doc/classes/RenderingServer.xml:3472
msgid ""
"Gather ambient light from the [Sky] regardless of what the background is."
msgstr ""
-#: doc/classes/Environment.xml:280 doc/classes/RenderingServer.xml:3464
+#: doc/classes/Environment.xml:304 doc/classes/RenderingServer.xml:3475
msgid "Use the background for reflections."
msgstr ""
-#: doc/classes/Environment.xml:283 doc/classes/RenderingServer.xml:3467
+#: doc/classes/Environment.xml:307 doc/classes/RenderingServer.xml:3478
msgid "Disable reflections."
msgstr ""
-#: doc/classes/Environment.xml:286 doc/classes/RenderingServer.xml:3470
+#: doc/classes/Environment.xml:310 doc/classes/RenderingServer.xml:3481
msgid "Use the [Sky] for reflections regardless of what the background is."
msgstr ""
-#: doc/classes/Environment.xml:289 doc/classes/RenderingServer.xml:3473
+#: doc/classes/Environment.xml:313
+msgid ""
+"Linear tonemapper operator. Reads the linear data and passes it on "
+"unmodified."
+msgstr ""
+
+#: doc/classes/Environment.xml:316
+msgid ""
+"Reinhardt tonemapper operator. Performs a variation on rendered pixels' "
+"colors by this formula: [code]color = color / (1 + color)[/code]."
+msgstr ""
+
+#: doc/classes/Environment.xml:319
+msgid "Filmic tonemapper operator."
+msgstr ""
+
+#: doc/classes/Environment.xml:322
+msgid "Academy Color Encoding System tonemapper operator."
+msgstr ""
+
+#: doc/classes/Environment.xml:325 doc/classes/RenderingServer.xml:3484
msgid ""
"Additive glow blending mode. Mostly used for particles, glows (bloom), lens "
"flare, bright sources."
msgstr ""
-#: doc/classes/Environment.xml:292 doc/classes/RenderingServer.xml:3476
+#: doc/classes/Environment.xml:328 doc/classes/RenderingServer.xml:3487
msgid ""
"Screen glow blending mode. Increases brightness, used frequently with bloom."
msgstr ""
-#: doc/classes/Environment.xml:295 doc/classes/RenderingServer.xml:3479
+#: doc/classes/Environment.xml:331 doc/classes/RenderingServer.xml:3490
msgid ""
"Soft light glow blending mode. Modifies contrast, exposes shadows and "
"highlights (vivid bloom)."
msgstr ""
-#: doc/classes/Environment.xml:298 doc/classes/RenderingServer.xml:3482
+#: doc/classes/Environment.xml:334 doc/classes/RenderingServer.xml:3493
msgid ""
"Replace glow blending mode. Replaces all pixels' color by the glow value. "
"This can be used to simulate a full-screen blur effect by tweaking the glow "
"parameters to match the original image's brightness."
msgstr ""
-#: doc/classes/Environment.xml:301 doc/classes/RenderingServer.xml:3485
+#: doc/classes/Environment.xml:337 doc/classes/RenderingServer.xml:3496
msgid ""
"Mixes the glow with the underlying color to avoid increasing brightness as "
"much while still maintaining a glow effect."
msgstr ""
-#: doc/classes/Environment.xml:304
-msgid ""
-"Linear tonemapper operator. Reads the linear data and passes it on "
-"unmodified."
-msgstr ""
-
-#: doc/classes/Environment.xml:307
-msgid ""
-"Reinhardt tonemapper operator. Performs a variation on rendered pixels' "
-"colors by this formula: [code]color = color / (1 + color)[/code]."
-msgstr ""
-
-#: doc/classes/Environment.xml:310
-msgid "Filmic tonemapper operator."
-msgstr ""
-
-#: doc/classes/Environment.xml:313
-msgid "Academy Color Encoding System tonemapper operator."
-msgstr ""
-
-#: doc/classes/Environment.xml:316
+#: doc/classes/Environment.xml:340
msgid "No blur for the screen-space ambient occlusion effect (fastest)."
msgstr ""
-#: doc/classes/Environment.xml:319
+#: doc/classes/Environment.xml:343
msgid "1×1 blur for the screen-space ambient occlusion effect."
msgstr ""
-#: doc/classes/Environment.xml:322
+#: doc/classes/Environment.xml:346
msgid "2×2 blur for the screen-space ambient occlusion effect."
msgstr ""
-#: doc/classes/Environment.xml:325
+#: doc/classes/Environment.xml:349
msgid ""
"3×3 blur for the screen-space ambient occlusion effect. Increases the radius "
"of the blur for a smoother look, but can result in checkerboard-like "
@@ -20257,14 +20753,17 @@ msgid ""
" var content = file.get_as_text()\n"
" file.close()\n"
" return content\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"In the example above, the file will be saved in the user data folder as "
+"specified in the [url=https://docs.godotengine.org/en/latest/tutorials/io/"
+"data_paths.html]Data paths[/url] documentation."
msgstr ""
-#: doc/classes/File.xml:32
+#: doc/classes/File.xml:33
msgid "Closes the currently opened file."
msgstr ""
-#: doc/classes/File.xml:39
+#: doc/classes/File.xml:40
msgid ""
"Returns [code]true[/code] if the file cursor has read past the end of the "
"file.\n"
@@ -20275,7 +20774,7 @@ msgid ""
"get_position] to implement a custom logic."
msgstr ""
-#: doc/classes/File.xml:49
+#: doc/classes/File.xml:50
msgid ""
"Returns [code]true[/code] if the file exists in the given path.\n"
"[b]Note:[/b] Many resources types are imported (e.g. textures or sound "
@@ -20288,41 +20787,41 @@ msgid ""
"source asset is present in [code]res://[/code], but fail when exported)."
msgstr ""
-#: doc/classes/File.xml:57
+#: doc/classes/File.xml:58
msgid ""
"Returns the next 16 bits from the file as an integer. See [method store_16] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:64
+#: doc/classes/File.xml:65
msgid ""
"Returns the next 32 bits from the file as an integer. See [method store_32] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:71
+#: doc/classes/File.xml:72
msgid ""
"Returns the next 64 bits from the file as an integer. See [method store_64] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:78
+#: doc/classes/File.xml:79
msgid ""
"Returns the next 8 bits from the file as an integer. See [method store_8] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:85
+#: doc/classes/File.xml:86
msgid ""
"Returns the whole file as a [String].\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:95
+#: doc/classes/File.xml:96
msgid "Returns next [code]len[/code] bytes of the file as a [PackedByteArray]."
msgstr ""
-#: doc/classes/File.xml:104
+#: doc/classes/File.xml:105
msgid ""
"Returns the next value of the file in CSV (Comma-Separated Values) format. "
"You can pass a different delimiter [code]delim[/code] to use other than the "
@@ -20331,37 +20830,37 @@ msgid ""
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:112
+#: doc/classes/File.xml:113
msgid "Returns the next 64 bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:119
+#: doc/classes/File.xml:120
msgid ""
"Returns the last error that happened when trying to perform operations. "
"Compare with the [code]ERR_FILE_*[/code] constants from [enum Error]."
msgstr ""
-#: doc/classes/File.xml:126
+#: doc/classes/File.xml:127
msgid "Returns the next 32 bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:133
+#: doc/classes/File.xml:134
msgid "Returns the size of the file in bytes."
msgstr ""
-#: doc/classes/File.xml:140
+#: doc/classes/File.xml:141
msgid ""
"Returns the next line of the file as a [String].\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:150
+#: doc/classes/File.xml:151
msgid ""
"Returns an MD5 String representing the file at the given path or an empty "
"[String] on failure."
msgstr ""
-#: doc/classes/File.xml:159
+#: doc/classes/File.xml:160
msgid ""
"Returns the last time the [code]file[/code] was modified in unix timestamp "
"format or returns a [String] \"ERROR IN [code]file[/code]\". This unix "
@@ -20369,35 +20868,35 @@ msgid ""
"get_datetime_from_unix_time]."
msgstr ""
-#: doc/classes/File.xml:166
+#: doc/classes/File.xml:167
msgid ""
"Returns a [String] saved in Pascal format from the file.\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:174
+#: doc/classes/File.xml:175
msgid "Returns the path as a [String] for the current open file."
msgstr ""
-#: doc/classes/File.xml:181
+#: doc/classes/File.xml:182
msgid "Returns the absolute path as a [String] for the current open file."
msgstr ""
-#: doc/classes/File.xml:188
+#: doc/classes/File.xml:189
msgid "Returns the file cursor's position."
msgstr ""
-#: doc/classes/File.xml:195
+#: doc/classes/File.xml:196
msgid "Returns the next bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:204
+#: doc/classes/File.xml:205
msgid ""
"Returns a SHA-256 [String] representing the file at the given path or an "
"empty [String] on failure."
msgstr ""
-#: doc/classes/File.xml:213
+#: doc/classes/File.xml:214
msgid ""
"Returns the next [Variant] value from the file. If [code]allow_objects[/"
"code] is [code]true[/code], decoding objects is allowed.\n"
@@ -20406,37 +20905,38 @@ msgid ""
"to avoid potential security threats such as remote code execution."
msgstr ""
-#: doc/classes/File.xml:221
+#: doc/classes/File.xml:222
msgid "Returns [code]true[/code] if the file is currently opened."
msgstr ""
-#: doc/classes/File.xml:232
+#: doc/classes/File.xml:233
msgid "Opens the file for writing or reading, depending on the flags."
msgstr ""
-#: doc/classes/File.xml:245
+#: doc/classes/File.xml:246
msgid "Opens a compressed file for reading or writing."
msgstr ""
-#: doc/classes/File.xml:258
+#: doc/classes/File.xml:259
msgid ""
"Opens an encrypted file in write or read mode. You need to pass a binary key "
-"to encrypt/decrypt it."
+"to encrypt/decrypt it.\n"
+"[b]Note:[/b] The provided key must be 32 bytes long."
msgstr ""
-#: doc/classes/File.xml:271
+#: doc/classes/File.xml:273
msgid ""
"Opens an encrypted file in write or read mode. You need to pass a password "
"to encrypt/decrypt it."
msgstr ""
-#: doc/classes/File.xml:280
+#: doc/classes/File.xml:282
msgid ""
"Changes the file reading/writing cursor to the specified position (in bytes "
"from the beginning of the file)."
msgstr ""
-#: doc/classes/File.xml:289
+#: doc/classes/File.xml:291
msgid ""
"Changes the file reading/writing cursor to the specified position (in bytes "
"from the end of the file).\n"
@@ -20444,7 +20944,7 @@ msgid ""
"cursor will be at the end of the file."
msgstr ""
-#: doc/classes/File.xml:299
+#: doc/classes/File.xml:301
msgid ""
"Stores an integer as 16 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, "
@@ -20472,7 +20972,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/File.xml:328
+#: doc/classes/File.xml:330
msgid ""
"Stores an integer as 32 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, "
@@ -20481,14 +20981,14 @@ msgid ""
"(see [method store_16] for an example)."
msgstr ""
-#: doc/classes/File.xml:339
+#: doc/classes/File.xml:341
msgid ""
"Stores an integer as 64 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] must lie in the interval [code][-2^63, "
"2^63 - 1][/code] (i.e. be a valid [int] value)."
msgstr ""
-#: doc/classes/File.xml:349
+#: doc/classes/File.xml:351
msgid ""
"Stores an integer as 8 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, 255]"
@@ -20497,11 +20997,11 @@ msgid ""
"(see [method store_16] for an example)."
msgstr ""
-#: doc/classes/File.xml:360
+#: doc/classes/File.xml:362
msgid "Stores the given array of bytes in the file."
msgstr ""
-#: doc/classes/File.xml:371
+#: doc/classes/File.xml:373
msgid ""
"Store the given [PackedStringArray] in the file as a line formatted in the "
"CSV (Comma-Separated Values) format. You can pass a different delimiter "
@@ -20510,45 +21010,45 @@ msgid ""
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:381
+#: doc/classes/File.xml:383
msgid "Stores a floating-point number as 64 bits in the file."
msgstr ""
-#: doc/classes/File.xml:390
+#: doc/classes/File.xml:392
msgid "Stores a floating-point number as 32 bits in the file."
msgstr ""
-#: doc/classes/File.xml:399
+#: doc/classes/File.xml:401
msgid ""
"Stores the given [String] as a line in the file.\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:409
+#: doc/classes/File.xml:411
msgid ""
"Stores the given [String] as a line in the file in Pascal format (i.e. also "
"store the length of the string).\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:419
+#: doc/classes/File.xml:421
msgid "Stores a floating-point number in the file."
msgstr ""
-#: doc/classes/File.xml:428
+#: doc/classes/File.xml:430
msgid ""
"Stores the given [String] in the file.\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:440
+#: doc/classes/File.xml:442
msgid ""
"Stores any Variant value in the file. If [code]full_objects[/code] is "
"[code]true[/code], encoding objects is allowed (and can potentially include "
"code)."
msgstr ""
-#: doc/classes/File.xml:446
+#: doc/classes/File.xml:448
msgid ""
"If [code]true[/code], the file's endianness is swapped. Use this if you're "
"dealing with files written on big-endian machines.\n"
@@ -20556,44 +21056,44 @@ msgid ""
"reset to [code]false[/code] whenever you open the file."
msgstr ""
-#: doc/classes/File.xml:452
+#: doc/classes/File.xml:454
msgid "Opens the file for read operations."
msgstr ""
-#: doc/classes/File.xml:455
+#: doc/classes/File.xml:457
msgid ""
"Opens the file for write operations. Create it if the file does not exist "
"and truncate if it exists."
msgstr ""
-#: doc/classes/File.xml:458
+#: doc/classes/File.xml:460
msgid ""
"Opens the file for read and write operations. Does not truncate the file."
msgstr ""
-#: doc/classes/File.xml:461
+#: doc/classes/File.xml:463
msgid ""
"Opens the file for read and write operations. Create it if the file does not "
"exist and truncate if it exists."
msgstr ""
-#: doc/classes/File.xml:464
+#: doc/classes/File.xml:466
msgid "Uses the [url=http://fastlz.org/]FastLZ[/url] compression method."
msgstr ""
-#: doc/classes/File.xml:467
+#: doc/classes/File.xml:469
msgid ""
"Uses the [url=https://en.wikipedia.org/wiki/DEFLATE]DEFLATE[/url] "
"compression method."
msgstr ""
-#: doc/classes/File.xml:470
+#: doc/classes/File.xml:472
msgid ""
"Uses the [url=https://facebook.github.io/zstd/]Zstandard[/url] compression "
"method."
msgstr ""
-#: doc/classes/File.xml:473
+#: doc/classes/File.xml:475
msgid "Uses the [url=https://www.gzip.org/]gzip[/url] compression method."
msgstr ""
@@ -20809,10 +21309,11 @@ msgid ""
"Draw [code]string[/code] into a canvas item using the font at a given "
"position, with [code]modulate[/code] color, and optionally clipping the "
"width. [code]position[/code] specifies the baseline, not the top. To draw "
-"from the top, [i]ascent[/i] must be added to the Y axis."
+"from the top, [i]ascent[/i] must be added to the Y axis.\n"
+"See also [method CanvasItem.draw_string]."
msgstr ""
-#: doc/classes/Font.xml:47
+#: doc/classes/Font.xml:48
msgid ""
"Draw character [code]char[/code] into a canvas item using the font at a "
"given position, with [code]modulate[/code] color, and optionally kerning if "
@@ -20822,39 +21323,39 @@ msgid ""
"making this function useful for drawing strings character by character."
msgstr ""
-#: doc/classes/Font.xml:54
+#: doc/classes/Font.xml:55
msgid "Returns the font ascent (number of pixels above the baseline)."
msgstr ""
-#: doc/classes/Font.xml:65
+#: doc/classes/Font.xml:66
msgid ""
"Returns the size of a character, optionally taking kerning into account if "
"the next character is provided."
msgstr ""
-#: doc/classes/Font.xml:72
+#: doc/classes/Font.xml:73
msgid "Returns the font descent (number of pixels below the baseline)."
msgstr ""
-#: doc/classes/Font.xml:79
+#: doc/classes/Font.xml:80
msgid "Returns the total font height (ascent plus descent) in pixels."
msgstr ""
-#: doc/classes/Font.xml:88
+#: doc/classes/Font.xml:89
msgid "Returns the size of a string, taking kerning and advance into account."
msgstr ""
-#: doc/classes/Font.xml:99
+#: doc/classes/Font.xml:100
msgid ""
"Returns the size that the string would have with word wrapping enabled with "
"a fixed [code]width[/code]."
msgstr ""
-#: doc/classes/Font.xml:106
+#: doc/classes/Font.xml:107
msgid "Returns [code]true[/code] if the font has an outline."
msgstr ""
-#: doc/classes/Font.xml:119
+#: doc/classes/Font.xml:120
msgid ""
"After editing a font (changing size, ascent, char rects, etc.). Call this "
"function to propagate changes to controls that might use it."
@@ -21026,13 +21527,14 @@ msgstr ""
#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:7
msgid ""
-"Calling [method @GDScript.yield] within a function will cause that function "
-"to yield and return its current state as an object of this type. The yielded "
+"FIXME: Outdated docs as of GDScript rewrite in 4.0.\n"
+"Calling [code]yield[/code] within a function will cause that function to "
+"yield and return its current state as an object of this type. The yielded "
"function call can then be resumed later by calling [method resume] on this "
"state object."
msgstr ""
-#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:18
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:19
msgid ""
"Check whether the function call may be resumed. This is not the case if the "
"function state was already resumed.\n"
@@ -21043,12 +21545,12 @@ msgid ""
"script have survived up to that point."
msgstr ""
-#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:28
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:29
msgid ""
"Resume execution of the yielded function call.\n"
-"If handed an argument, return the argument from the [method @GDScript.yield] "
-"call in the yielded function call. You can pass e.g. an [Array] to hand "
-"multiple arguments.\n"
+"If handed an argument, return the argument from the [code]yield[/code] call "
+"in the yielded function call. You can pass e.g. an [Array] to hand multiple "
+"arguments.\n"
"This function returns what the resumed function call returns, possibly "
"another function state if yielded again."
msgstr ""
@@ -21617,10 +22119,20 @@ msgid ""
"code], see [enum PolyJoinType].\n"
"The operation may result in an outer polygon (boundary) and inner polygon "
"(hole) produced which could be distinguished by calling [method "
-"is_polygon_clockwise]."
+"is_polygon_clockwise].\n"
+"[b]Note:[/b] To translate the polygon's vertices specifically, use the "
+"[method Transform2D.xform] method:\n"
+"[codeblock]\n"
+"var polygon = PackedVector2Array([Vector2(0, 0), Vector2(100, 0), "
+"Vector2(100, 100), Vector2(0, 100)])\n"
+"var offset = Vector2(50, 50)\n"
+"polygon = Transform2D(0, offset).xform(polygon)\n"
+"print(polygon) # prints [Vector2(50, 50), Vector2(150, 50), Vector2(150, "
+"150), Vector2(50, 150)]\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/Geometry2D.xml:217
+#: doc/classes/Geometry2D.xml:224
msgid ""
"Inflates or deflates [code]polyline[/code] by [code]delta[/code] units "
"(pixels), producing polygons. If [code]delta[/code] is positive, makes the "
@@ -21636,13 +22148,13 @@ msgid ""
"is_polygon_clockwise]."
msgstr ""
-#: doc/classes/Geometry2D.xml:235
+#: doc/classes/Geometry2D.xml:242
msgid ""
"Returns if [code]point[/code] is inside the triangle specified by [code]a[/"
"code], [code]b[/code] and [code]c[/code]."
msgstr ""
-#: doc/classes/Geometry2D.xml:250
+#: doc/classes/Geometry2D.xml:257
msgid ""
"Checks if the two segments ([code]from_a[/code], [code]to_a[/code]) and "
"([code]from_b[/code], [code]to_b[/code]) intersect. If yes, return the point "
@@ -21650,7 +22162,7 @@ msgid ""
"empty [Variant]."
msgstr ""
-#: doc/classes/Geometry2D.xml:259
+#: doc/classes/Geometry2D.xml:266
msgid ""
"Triangulates the area specified by discrete set of [code]points[/code] such "
"that no point is inside the circumcircle of any resulting triangle. Returns "
@@ -21661,7 +22173,7 @@ msgid ""
"[PackedInt32Array] is returned."
msgstr ""
-#: doc/classes/Geometry2D.xml:268
+#: doc/classes/Geometry2D.xml:275
msgid ""
"Triangulates the polygon specified by the points in [code]polygon[/code]. "
"Returns a [PackedInt32Array] where each triangle consists of three "
@@ -21671,40 +22183,40 @@ msgid ""
"[PackedInt32Array] is returned."
msgstr ""
-#: doc/classes/Geometry2D.xml:274
+#: doc/classes/Geometry2D.xml:281
msgid ""
"Create regions where either subject or clip polygons (or both) are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:277
+#: doc/classes/Geometry2D.xml:284
msgid ""
"Create regions where subject polygons are filled except where clip polygons "
"are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:280
+#: doc/classes/Geometry2D.xml:287
msgid "Create regions where both subject and clip polygons are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:283
+#: doc/classes/Geometry2D.xml:290
msgid ""
"Create regions where either subject or clip polygons are filled but not "
"where both are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:286
+#: doc/classes/Geometry2D.xml:293
msgid ""
"Squaring is applied uniformally at all convex edge joins at [code]1 * delta[/"
"code]."
msgstr ""
-#: doc/classes/Geometry2D.xml:289
+#: doc/classes/Geometry2D.xml:296
msgid ""
"While flattened paths can never perfectly trace an arc, they are "
"approximated by a series of arc chords."
msgstr ""
-#: doc/classes/Geometry2D.xml:292
+#: doc/classes/Geometry2D.xml:299
msgid ""
"There's a necessary limit to mitered joins since offsetting edges that join "
"at very acute angles will produce excessively long and narrow \"spikes\". "
@@ -21712,27 +22224,27 @@ msgid ""
"distance, \"square\" joining is applied."
msgstr ""
-#: doc/classes/Geometry2D.xml:295
+#: doc/classes/Geometry2D.xml:302
msgid ""
"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
"as a polygon."
msgstr ""
-#: doc/classes/Geometry2D.xml:298
+#: doc/classes/Geometry2D.xml:305
msgid ""
"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
"as a polyline."
msgstr ""
-#: doc/classes/Geometry2D.xml:301
+#: doc/classes/Geometry2D.xml:308
msgid "Endpoints are squared off with no extension."
msgstr ""
-#: doc/classes/Geometry2D.xml:304
+#: doc/classes/Geometry2D.xml:311
msgid "Endpoints are squared off and extended by [code]delta[/code] units."
msgstr ""
-#: doc/classes/Geometry2D.xml:307
+#: doc/classes/Geometry2D.xml:314
msgid "Endpoints are rounded off and extended by [code]delta[/code] units."
msgstr ""
@@ -21962,7 +22474,7 @@ msgstr ""
msgid ""
"Bakes the effect from all [GeometryInstance3D]s marked with [constant "
"GeometryInstance3D.GI_MODE_BAKED] and [Light3D]s marked with either "
-"[constant Light3D.BAKE_INDIRECT] or [constant Light3D.BAKE_ALL]. If "
+"[constant Light3D.BAKE_DYNAMIC] or [constant Light3D.BAKE_STATIC]. If "
"[code]create_visual_debug[/code] is [code]true[/code], after baking the "
"light, this will generate a [MultiMesh] that has a cube representing each "
"solid cell with each cube colored to the cell's albedo color. This can be "
@@ -22849,121 +23361,119 @@ msgstr ""
msgid "Clear all cells."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:53
+#: modules/gridmap/doc_classes/GridMap.xml:49
msgid ""
-"The [MeshLibrary] item index located at the grid-based X, Y and Z "
-"coordinates. If the cell is empty, [constant INVALID_CELL_ITEM] will be "
-"returned."
+"The [MeshLibrary] item index located at the given grid coordinates. If the "
+"cell is empty, [constant INVALID_CELL_ITEM] will be returned."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:66
+#: modules/gridmap/doc_classes/GridMap.xml:58
msgid ""
-"The orientation of the cell at the grid-based X, Y and Z coordinates. -1 is "
-"returned if the cell is empty."
+"The orientation of the cell at the given grid coordinates. [code]-1[/code] "
+"is returned if the cell is empty."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:75 doc/classes/PhysicsBody2D.xml:35
+#: modules/gridmap/doc_classes/GridMap.xml:67 doc/classes/PhysicsBody2D.xml:35
#: doc/classes/PhysicsBody3D.xml:35
msgid "Returns an individual bit on the [member collision_layer]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:84 doc/classes/PhysicsBody2D.xml:44
+#: modules/gridmap/doc_classes/GridMap.xml:76 doc/classes/PhysicsBody2D.xml:44
#: doc/classes/PhysicsBody3D.xml:44
msgid "Returns an individual bit on the [member collision_mask]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:91
+#: modules/gridmap/doc_classes/GridMap.xml:83
msgid ""
"Returns an array of [Transform] and [Mesh] references corresponding to the "
"non-empty cells in the grid. The transforms are specified in world space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:98
+#: modules/gridmap/doc_classes/GridMap.xml:90
msgid ""
"Returns an array of [Vector3] with the non-empty cell coordinates in the "
"grid map."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:121
+#: modules/gridmap/doc_classes/GridMap.xml:109
msgid ""
"Returns the position of a grid cell in the GridMap's local coordinate space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:146
+#: modules/gridmap/doc_classes/GridMap.xml:130
msgid ""
-"Sets the mesh index for the cell referenced by its grid-based X, Y and Z "
-"coordinates.\n"
+"Sets the mesh index for the cell referenced by its grid coordinates.\n"
"A negative item index such as [constant INVALID_CELL_ITEM] will clear the "
"cell.\n"
"Optionally, the item's orientation can be passed. For valid orientation "
"values, see [method Basis.get_orthogonal_index]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:173
+#: modules/gridmap/doc_classes/GridMap.xml:157
msgid "Sets an individual bit on the [member collision_layer]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:184
+#: modules/gridmap/doc_classes/GridMap.xml:168
msgid "Sets an individual bit on the [member collision_mask]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:193
+#: modules/gridmap/doc_classes/GridMap.xml:177
msgid ""
"Returns the coordinates of the grid cell containing the given point.\n"
"[code]pos[/code] should be in the GridMap's local coordinate space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:200
+#: modules/gridmap/doc_classes/GridMap.xml:184
msgid "If [code]true[/code], grid items are centered on the X axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:203
+#: modules/gridmap/doc_classes/GridMap.xml:187
msgid "If [code]true[/code], grid items are centered on the Y axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:206
+#: modules/gridmap/doc_classes/GridMap.xml:190
msgid "If [code]true[/code], grid items are centered on the Z axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:209
+#: modules/gridmap/doc_classes/GridMap.xml:193
msgid ""
"The size of each octant measured in number of cells. This applies to all "
"three axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:212
+#: modules/gridmap/doc_classes/GridMap.xml:196
msgid ""
"The scale of the cell items.\n"
"This does not affect the size of the grid cells themselves, only the items "
"in them. This can be used to make cell items overlap their neighbors."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:216
+#: modules/gridmap/doc_classes/GridMap.xml:200
msgid ""
"The dimensions of the grid's cells.\n"
"This does not affect the size of the meshes. See [member cell_scale]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:220
+#: modules/gridmap/doc_classes/GridMap.xml:204
msgid ""
"The physics layers this GridMap is in.\n"
"GridMaps act as static bodies, meaning they aren't affected by gravity or "
"other forces. They only affect other physics bodies that collide with them."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:224
+#: modules/gridmap/doc_classes/GridMap.xml:208
msgid "The physics layers this GridMap detects collisions in."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:227
+#: modules/gridmap/doc_classes/GridMap.xml:211
msgid "The assigned [MeshLibrary]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:235
+#: modules/gridmap/doc_classes/GridMap.xml:219
msgid "Emitted when [member cell_size] changes."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:241
+#: modules/gridmap/doc_classes/GridMap.xml:225
msgid ""
"Invalid cell item that can be used in [method set_cell_item] to clear cells "
"(or represent an empty cell in [method get_cell_item])."
@@ -23328,27 +23838,33 @@ msgid ""
"server's side.\n"
"For more information on HTTP, see https://developer.mozilla.org/en-US/docs/"
"Web/HTTP (or read RFC 2616 to get it straight from the source: https://tools."
-"ietf.org/html/rfc2616)."
+"ietf.org/html/rfc2616).\n"
+"[b]Note:[/b] When performing HTTP requests from a project exported to HTML5, "
+"keep in mind the remote server may not allow requests from foreign origins "
+"due to [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/"
+"url]. If you host the server in question, you should modify its backend to "
+"allow requests from foreign origins by adding the [code]Access-Control-Allow-"
+"Origin: *[/code] HTTP header."
msgstr ""
-#: doc/classes/HTTPClient.xml:13
+#: doc/classes/HTTPClient.xml:14
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/"
"http_client_class.html"
msgstr ""
-#: doc/classes/HTTPClient.xml:14 doc/classes/HTTPRequest.xml:62
+#: doc/classes/HTTPClient.xml:15 doc/classes/HTTPRequest.xml:71
#: doc/classes/StreamPeerSSL.xml:10
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/ssl_certificates."
"html"
msgstr ""
-#: doc/classes/HTTPClient.xml:21
+#: doc/classes/HTTPClient.xml:22
msgid "Closes the current connection, allowing reuse of this [HTTPClient]."
msgstr ""
-#: doc/classes/HTTPClient.xml:36
+#: doc/classes/HTTPClient.xml:37
msgid ""
"Connects to a host. This needs to be done before any requests are sent.\n"
"The host should not have http:// prepended but will strip the protocol "
@@ -23360,7 +23876,7 @@ msgid ""
"[code]true[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:46
+#: doc/classes/HTTPClient.xml:47
msgid ""
"Returns the response's body length.\n"
"[b]Note:[/b] Some Web servers may not send a body length. In this case, the "
@@ -23368,15 +23884,15 @@ msgid ""
"the body length will also be [code]-1[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:54
+#: doc/classes/HTTPClient.xml:55
msgid "Returns the response's HTTP status code."
msgstr ""
-#: doc/classes/HTTPClient.xml:61
+#: doc/classes/HTTPClient.xml:62
msgid "Returns the response headers."
msgstr ""
-#: doc/classes/HTTPClient.xml:68
+#: doc/classes/HTTPClient.xml:69
msgid ""
"Returns all response headers as a Dictionary of structure [code]{ \"key\": "
"\"value1; value2\" }[/code] where the case-sensitivity of the keys and "
@@ -23391,27 +23907,27 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:82
+#: doc/classes/HTTPClient.xml:83
msgid ""
"Returns a [enum Status] constant. Need to call [method poll] in order to get "
"status updates."
msgstr ""
-#: doc/classes/HTTPClient.xml:89
+#: doc/classes/HTTPClient.xml:90
msgid "If [code]true[/code], this [HTTPClient] has a response available."
msgstr ""
-#: doc/classes/HTTPClient.xml:96
+#: doc/classes/HTTPClient.xml:97
msgid "If [code]true[/code], this [HTTPClient] has a response that is chunked."
msgstr ""
-#: doc/classes/HTTPClient.xml:103
+#: doc/classes/HTTPClient.xml:104
msgid ""
"This needs to be called in order to have any request processed. Check "
"results with [method get_status]."
msgstr ""
-#: doc/classes/HTTPClient.xml:112
+#: doc/classes/HTTPClient.xml:113
msgid ""
"Generates a GET/POST application/x-www-form-urlencoded style query string "
"from a provided dictionary, e.g.:\n"
@@ -23431,11 +23947,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:130
+#: doc/classes/HTTPClient.xml:131
msgid "Reads one chunk from the response."
msgstr ""
-#: doc/classes/HTTPClient.xml:145
+#: doc/classes/HTTPClient.xml:146
msgid ""
"Sends a request to the connected host. The URL parameter is just the part "
"after the host, so for [code]http://somehost.com/index.php[/code], it is "
@@ -23453,7 +23969,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:168
+#: doc/classes/HTTPClient.xml:169
msgid ""
"Sends a raw request to the connected host. The URL parameter is just the "
"part after the host, so for [code]http://somehost.com/index.php[/code], it "
@@ -23463,43 +23979,43 @@ msgid ""
"Sends the body data raw, as a byte array and does not encode it in any way."
msgstr ""
-#: doc/classes/HTTPClient.xml:176
+#: doc/classes/HTTPClient.xml:177
msgid ""
"If [code]true[/code], execution will block until all data is read from the "
"response."
msgstr ""
-#: doc/classes/HTTPClient.xml:179
+#: doc/classes/HTTPClient.xml:180
msgid "The connection to use for this client."
msgstr ""
-#: doc/classes/HTTPClient.xml:182
+#: doc/classes/HTTPClient.xml:183
msgid ""
"The size of the buffer used and maximum bytes to read per iteration. See "
"[method read_response_body_chunk]."
msgstr ""
-#: doc/classes/HTTPClient.xml:187
+#: doc/classes/HTTPClient.xml:188
msgid ""
"HTTP GET method. The GET method requests a representation of the specified "
"resource. Requests using GET should only retrieve data."
msgstr ""
-#: doc/classes/HTTPClient.xml:190
+#: doc/classes/HTTPClient.xml:191
msgid ""
"HTTP HEAD method. The HEAD method asks for a response identical to that of a "
"GET request, but without the response body. This is useful to request "
"metadata like HTTP headers or to check if a resource exists."
msgstr ""
-#: doc/classes/HTTPClient.xml:193
+#: doc/classes/HTTPClient.xml:194
msgid ""
"HTTP POST method. The POST method is used to submit an entity to the "
"specified resource, often causing a change in state or side effects on the "
"server. This is often used for forms and submitting data or uploading files."
msgstr ""
-#: doc/classes/HTTPClient.xml:196
+#: doc/classes/HTTPClient.xml:197
msgid ""
"HTTP PUT method. The PUT method asks to replace all current representations "
"of the target resource with the request payload. (You can think of POST as "
@@ -23507,103 +24023,103 @@ msgid ""
"not make a clear distinction or change their meaning)."
msgstr ""
-#: doc/classes/HTTPClient.xml:199
+#: doc/classes/HTTPClient.xml:200
msgid ""
"HTTP DELETE method. The DELETE method requests to delete the specified "
"resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:202
+#: doc/classes/HTTPClient.xml:203
msgid ""
"HTTP OPTIONS method. The OPTIONS method asks for a description of the "
"communication options for the target resource. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:205
+#: doc/classes/HTTPClient.xml:206
msgid ""
"HTTP TRACE method. The TRACE method performs a message loop-back test along "
"the path to the target resource. Returns the entire HTTP request received in "
"the response body. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:208
+#: doc/classes/HTTPClient.xml:209
msgid ""
"HTTP CONNECT method. The CONNECT method establishes a tunnel to the server "
"identified by the target resource. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:211
+#: doc/classes/HTTPClient.xml:212
msgid ""
"HTTP PATCH method. The PATCH method is used to apply partial modifications "
"to a resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:214
+#: doc/classes/HTTPClient.xml:215
msgid "Represents the size of the [enum Method] enum."
msgstr ""
-#: doc/classes/HTTPClient.xml:217
+#: doc/classes/HTTPClient.xml:218
msgid "Status: Disconnected from the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:220
+#: doc/classes/HTTPClient.xml:221
msgid "Status: Currently resolving the hostname for the given URL into an IP."
msgstr ""
-#: doc/classes/HTTPClient.xml:223
+#: doc/classes/HTTPClient.xml:224
msgid "Status: DNS failure: Can't resolve the hostname for the given URL."
msgstr ""
-#: doc/classes/HTTPClient.xml:226
+#: doc/classes/HTTPClient.xml:227
msgid "Status: Currently connecting to server."
msgstr ""
-#: doc/classes/HTTPClient.xml:229
+#: doc/classes/HTTPClient.xml:230
msgid "Status: Can't connect to the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:232
+#: doc/classes/HTTPClient.xml:233
msgid "Status: Connection established."
msgstr ""
-#: doc/classes/HTTPClient.xml:235
+#: doc/classes/HTTPClient.xml:236
msgid "Status: Currently sending request."
msgstr ""
-#: doc/classes/HTTPClient.xml:238
+#: doc/classes/HTTPClient.xml:239
msgid "Status: HTTP body received."
msgstr ""
-#: doc/classes/HTTPClient.xml:241
+#: doc/classes/HTTPClient.xml:242
msgid "Status: Error in HTTP connection."
msgstr ""
-#: doc/classes/HTTPClient.xml:244
+#: doc/classes/HTTPClient.xml:245
msgid "Status: Error in SSL handshake."
msgstr ""
-#: doc/classes/HTTPClient.xml:247
+#: doc/classes/HTTPClient.xml:248
msgid ""
"HTTP status code [code]100 Continue[/code]. Interim response that indicates "
"everything so far is OK and that the client should continue with the request "
"(or ignore this status if already finished)."
msgstr ""
-#: doc/classes/HTTPClient.xml:250
+#: doc/classes/HTTPClient.xml:251
msgid ""
"HTTP status code [code]101 Switching Protocol[/code]. Sent in response to an "
"[code]Upgrade[/code] request header by the client. Indicates the protocol "
"the server is switching to."
msgstr ""
-#: doc/classes/HTTPClient.xml:253
+#: doc/classes/HTTPClient.xml:254
msgid ""
"HTTP status code [code]102 Processing[/code] (WebDAV). Indicates that the "
"server has received and is processing the request, but no response is "
"available yet."
msgstr ""
-#: doc/classes/HTTPClient.xml:256
+#: doc/classes/HTTPClient.xml:257
msgid ""
"HTTP status code [code]200 OK[/code]. The request has succeeded. Default "
"response for successful requests. Meaning varies depending on the request. "
@@ -23614,14 +24130,14 @@ msgid ""
"server."
msgstr ""
-#: doc/classes/HTTPClient.xml:259
+#: doc/classes/HTTPClient.xml:260
msgid ""
"HTTP status code [code]201 Created[/code]. The request has succeeded and a "
"new resource has been created as a result of it. This is typically the "
"response sent after a PUT request."
msgstr ""
-#: doc/classes/HTTPClient.xml:262
+#: doc/classes/HTTPClient.xml:263
msgid ""
"HTTP status code [code]202 Accepted[/code]. The request has been received "
"but not yet acted upon. It is non-committal, meaning that there is no way in "
@@ -23630,7 +24146,7 @@ msgid ""
"server handles the request, or for batch processing."
msgstr ""
-#: doc/classes/HTTPClient.xml:265
+#: doc/classes/HTTPClient.xml:266
msgid ""
"HTTP status code [code]203 Non-Authoritative Information[/code]. This "
"response code means returned meta-information set is not exact set as "
@@ -23639,14 +24155,14 @@ msgid ""
"instead of this response."
msgstr ""
-#: doc/classes/HTTPClient.xml:268
+#: doc/classes/HTTPClient.xml:269
msgid ""
"HTTP status code [code]204 No Content[/code]. There is no content to send "
"for this request, but the headers may be useful. The user-agent may update "
"its cached headers for this resource with the new ones."
msgstr ""
-#: doc/classes/HTTPClient.xml:271
+#: doc/classes/HTTPClient.xml:272
msgid ""
"HTTP status code [code]205 Reset Content[/code]. The server has fulfilled "
"the request and desires that the client resets the \"document view\" that "
@@ -23654,49 +24170,49 @@ msgid ""
"origin server."
msgstr ""
-#: doc/classes/HTTPClient.xml:274
+#: doc/classes/HTTPClient.xml:275
msgid ""
"HTTP status code [code]206 Partial Content[/code]. This response code is "
"used because of a range header sent by the client to separate download into "
"multiple streams."
msgstr ""
-#: doc/classes/HTTPClient.xml:277
+#: doc/classes/HTTPClient.xml:278
msgid ""
"HTTP status code [code]207 Multi-Status[/code] (WebDAV). A Multi-Status "
"response conveys information about multiple resources in situations where "
"multiple status codes might be appropriate."
msgstr ""
-#: doc/classes/HTTPClient.xml:280
+#: doc/classes/HTTPClient.xml:281
msgid ""
"HTTP status code [code]208 Already Reported[/code] (WebDAV). Used inside a "
"DAV: propstat response element to avoid enumerating the internal members of "
"multiple bindings to the same collection repeatedly."
msgstr ""
-#: doc/classes/HTTPClient.xml:283
+#: doc/classes/HTTPClient.xml:284
msgid ""
"HTTP status code [code]226 IM Used[/code] (WebDAV). The server has fulfilled "
"a GET request for the resource, and the response is a representation of the "
"result of one or more instance-manipulations applied to the current instance."
msgstr ""
-#: doc/classes/HTTPClient.xml:286
+#: doc/classes/HTTPClient.xml:287
msgid ""
"HTTP status code [code]300 Multiple Choice[/code]. The request has more than "
"one possible responses and there is no standardized way to choose one of the "
"responses. User-agent or user should choose one of them."
msgstr ""
-#: doc/classes/HTTPClient.xml:289
+#: doc/classes/HTTPClient.xml:290
msgid ""
"HTTP status code [code]301 Moved Permanently[/code]. Redirection. This "
"response code means the URI of requested resource has been changed. The new "
"URI is usually included in the response."
msgstr ""
-#: doc/classes/HTTPClient.xml:292
+#: doc/classes/HTTPClient.xml:293
msgid ""
"HTTP status code [code]302 Found[/code]. Temporary redirection. This "
"response code means the URI of requested resource has been changed "
@@ -23704,7 +24220,7 @@ msgid ""
"this same URI should be used by the client in future requests."
msgstr ""
-#: doc/classes/HTTPClient.xml:295
+#: doc/classes/HTTPClient.xml:296
msgid ""
"HTTP status code [code]303 See Other[/code]. The server is redirecting the "
"user agent to a different resource, as indicated by a URI in the Location "
@@ -23712,39 +24228,39 @@ msgid ""
"original request."
msgstr ""
-#: doc/classes/HTTPClient.xml:298
+#: doc/classes/HTTPClient.xml:299
msgid ""
"HTTP status code [code]304 Not Modified[/code]. A conditional GET or HEAD "
"request has been received and would have resulted in a 200 OK response if it "
"were not for the fact that the condition evaluated to [code]false[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:301
+#: doc/classes/HTTPClient.xml:302
msgid ""
"HTTP status code [code]305 Use Proxy[/code]. [i]Deprecated. Do not use.[/i]"
msgstr ""
-#: doc/classes/HTTPClient.xml:304
+#: doc/classes/HTTPClient.xml:305
msgid ""
"HTTP status code [code]306 Switch Proxy[/code]. [i]Deprecated. Do not use.[/"
"i]"
msgstr ""
-#: doc/classes/HTTPClient.xml:307
+#: doc/classes/HTTPClient.xml:308
msgid ""
"HTTP status code [code]307 Temporary Redirect[/code]. The target resource "
"resides temporarily under a different URI and the user agent MUST NOT change "
"the request method if it performs an automatic redirection to that URI."
msgstr ""
-#: doc/classes/HTTPClient.xml:310
+#: doc/classes/HTTPClient.xml:311
msgid ""
"HTTP status code [code]308 Permanent Redirect[/code]. The target resource "
"has been assigned a new permanent URI and any future references to this "
"resource ought to use one of the enclosed URIs."
msgstr ""
-#: doc/classes/HTTPClient.xml:313
+#: doc/classes/HTTPClient.xml:314
msgid ""
"HTTP status code [code]400 Bad Request[/code]. The request was invalid. The "
"server cannot or will not process the request due to something that is "
@@ -23753,21 +24269,21 @@ msgid ""
"routing)."
msgstr ""
-#: doc/classes/HTTPClient.xml:316
+#: doc/classes/HTTPClient.xml:317
msgid ""
"HTTP status code [code]401 Unauthorized[/code]. Credentials required. The "
"request has not been applied because it lacks valid authentication "
"credentials for the target resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:319
+#: doc/classes/HTTPClient.xml:320
msgid ""
"HTTP status code [code]402 Payment Required[/code]. This response code is "
"reserved for future use. Initial aim for creating this code was using it for "
"digital payment systems, however this is not currently used."
msgstr ""
-#: doc/classes/HTTPClient.xml:322
+#: doc/classes/HTTPClient.xml:323
msgid ""
"HTTP status code [code]403 Forbidden[/code]. The client does not have access "
"rights to the content, i.e. they are unauthorized, so server is rejecting to "
@@ -23775,7 +24291,7 @@ msgid ""
"known to the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:325
+#: doc/classes/HTTPClient.xml:326
msgid ""
"HTTP status code [code]404 Not Found[/code]. The server can not find "
"requested resource. Either the URL is not recognized or the endpoint is "
@@ -23783,7 +24299,7 @@ msgid ""
"403 to hide existence of a resource if the client is not authorized."
msgstr ""
-#: doc/classes/HTTPClient.xml:328
+#: doc/classes/HTTPClient.xml:329
msgid ""
"HTTP status code [code]405 Method Not Allowed[/code]. The request's HTTP "
"method is known by the server but has been disabled and cannot be used. For "
@@ -23791,7 +24307,7 @@ msgid ""
"GET and HEAD, must never be disabled and should not return this error code."
msgstr ""
-#: doc/classes/HTTPClient.xml:331
+#: doc/classes/HTTPClient.xml:332
msgid ""
"HTTP status code [code]406 Not Acceptable[/code]. The target resource does "
"not have a current representation that would be acceptable to the user "
@@ -23799,21 +24315,21 @@ msgid ""
"request. Used when negotiation content."
msgstr ""
-#: doc/classes/HTTPClient.xml:334
+#: doc/classes/HTTPClient.xml:335
msgid ""
"HTTP status code [code]407 Proxy Authentication Required[/code]. Similar to "
"401 Unauthorized, but it indicates that the client needs to authenticate "
"itself in order to use a proxy."
msgstr ""
-#: doc/classes/HTTPClient.xml:337
+#: doc/classes/HTTPClient.xml:338
msgid ""
"HTTP status code [code]408 Request Timeout[/code]. The server did not "
"receive a complete request message within the time that it was prepared to "
"wait."
msgstr ""
-#: doc/classes/HTTPClient.xml:340
+#: doc/classes/HTTPClient.xml:341
msgid ""
"HTTP status code [code]409 Conflict[/code]. The request could not be "
"completed due to a conflict with the current state of the target resource. "
@@ -23821,47 +24337,47 @@ msgid ""
"conflict and resubmit the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:343
+#: doc/classes/HTTPClient.xml:344
msgid ""
"HTTP status code [code]410 Gone[/code]. The target resource is no longer "
"available at the origin server and this condition is likely permanent."
msgstr ""
-#: doc/classes/HTTPClient.xml:346
+#: doc/classes/HTTPClient.xml:347
msgid ""
"HTTP status code [code]411 Length Required[/code]. The server refuses to "
"accept the request without a defined Content-Length header."
msgstr ""
-#: doc/classes/HTTPClient.xml:349
+#: doc/classes/HTTPClient.xml:350
msgid ""
"HTTP status code [code]412 Precondition Failed[/code]. One or more "
"conditions given in the request header fields evaluated to [code]false[/"
"code] when tested on the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:352
+#: doc/classes/HTTPClient.xml:353
msgid ""
"HTTP status code [code]413 Entity Too Large[/code]. The server is refusing "
"to process a request because the request payload is larger than the server "
"is willing or able to process."
msgstr ""
-#: doc/classes/HTTPClient.xml:355
+#: doc/classes/HTTPClient.xml:356
msgid ""
"HTTP status code [code]414 Request-URI Too Long[/code]. The server is "
"refusing to service the request because the request-target is longer than "
"the server is willing to interpret."
msgstr ""
-#: doc/classes/HTTPClient.xml:358
+#: doc/classes/HTTPClient.xml:359
msgid ""
"HTTP status code [code]415 Unsupported Media Type[/code]. The origin server "
"is refusing to service the request because the payload is in a format not "
"supported by this method on the target resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:361
+#: doc/classes/HTTPClient.xml:362
msgid ""
"HTTP status code [code]416 Requested Range Not Satisfiable[/code]. None of "
"the ranges in the request's Range header field overlap the current extent of "
@@ -23869,21 +24385,21 @@ msgid ""
"to invalid ranges or an excessive request of small or overlapping ranges."
msgstr ""
-#: doc/classes/HTTPClient.xml:364
+#: doc/classes/HTTPClient.xml:365
msgid ""
"HTTP status code [code]417 Expectation Failed[/code]. The expectation given "
"in the request's Expect header field could not be met by at least one of the "
"inbound servers."
msgstr ""
-#: doc/classes/HTTPClient.xml:367
+#: doc/classes/HTTPClient.xml:368
msgid ""
"HTTP status code [code]418 I'm A Teapot[/code]. Any attempt to brew coffee "
"with a teapot should result in the error code \"418 I'm a teapot\". The "
"resulting entity body MAY be short and stout."
msgstr ""
-#: doc/classes/HTTPClient.xml:370
+#: doc/classes/HTTPClient.xml:371
msgid ""
"HTTP status code [code]421 Misdirected Request[/code]. The request was "
"directed at a server that is not able to produce a response. This can be "
@@ -23891,7 +24407,7 @@ msgid ""
"combination of scheme and authority that are included in the request URI."
msgstr ""
-#: doc/classes/HTTPClient.xml:373
+#: doc/classes/HTTPClient.xml:374
msgid ""
"HTTP status code [code]422 Unprocessable Entity[/code] (WebDAV). The server "
"understands the content type of the request entity (hence a 415 Unsupported "
@@ -23900,40 +24416,40 @@ msgid ""
"was unable to process the contained instructions."
msgstr ""
-#: doc/classes/HTTPClient.xml:376
+#: doc/classes/HTTPClient.xml:377
msgid ""
"HTTP status code [code]423 Locked[/code] (WebDAV). The source or destination "
"resource of a method is locked."
msgstr ""
-#: doc/classes/HTTPClient.xml:379
+#: doc/classes/HTTPClient.xml:380
msgid ""
"HTTP status code [code]424 Failed Dependency[/code] (WebDAV). The method "
"could not be performed on the resource because the requested action depended "
"on another action and that action failed."
msgstr ""
-#: doc/classes/HTTPClient.xml:382
+#: doc/classes/HTTPClient.xml:383
msgid ""
"HTTP status code [code]426 Upgrade Required[/code]. The server refuses to "
"perform the request using the current protocol but might be willing to do so "
"after the client upgrades to a different protocol."
msgstr ""
-#: doc/classes/HTTPClient.xml:385
+#: doc/classes/HTTPClient.xml:386
msgid ""
"HTTP status code [code]428 Precondition Required[/code]. The origin server "
"requires the request to be conditional."
msgstr ""
-#: doc/classes/HTTPClient.xml:388
+#: doc/classes/HTTPClient.xml:389
msgid ""
"HTTP status code [code]429 Too Many Requests[/code]. The user has sent too "
"many requests in a given amount of time (see \"rate limiting\"). Back off "
"and increase time between requests or try again later."
msgstr ""
-#: doc/classes/HTTPClient.xml:391
+#: doc/classes/HTTPClient.xml:392
msgid ""
"HTTP status code [code]431 Request Header Fields Too Large[/code]. The "
"server is unwilling to process the request because its header fields are too "
@@ -23941,27 +24457,27 @@ msgid ""
"header fields."
msgstr ""
-#: doc/classes/HTTPClient.xml:394
+#: doc/classes/HTTPClient.xml:395
msgid ""
"HTTP status code [code]451 Response Unavailable For Legal Reasons[/code]. "
"The server is denying access to the resource as a consequence of a legal "
"demand."
msgstr ""
-#: doc/classes/HTTPClient.xml:397
+#: doc/classes/HTTPClient.xml:398
msgid ""
"HTTP status code [code]500 Internal Server Error[/code]. The server "
"encountered an unexpected condition that prevented it from fulfilling the "
"request."
msgstr ""
-#: doc/classes/HTTPClient.xml:400
+#: doc/classes/HTTPClient.xml:401
msgid ""
"HTTP status code [code]501 Not Implemented[/code]. The server does not "
"support the functionality required to fulfill the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:403
+#: doc/classes/HTTPClient.xml:404
msgid ""
"HTTP status code [code]502 Bad Gateway[/code]. The server, while acting as a "
"gateway or proxy, received an invalid response from an inbound server it "
@@ -23969,7 +24485,7 @@ msgid ""
"balancers or proxies."
msgstr ""
-#: doc/classes/HTTPClient.xml:406
+#: doc/classes/HTTPClient.xml:407
msgid ""
"HTTP status code [code]503 Service Unavailable[/code]. The server is "
"currently unable to handle the request due to a temporary overload or "
@@ -23977,7 +24493,7 @@ msgid ""
"again later."
msgstr ""
-#: doc/classes/HTTPClient.xml:409
+#: doc/classes/HTTPClient.xml:410
msgid ""
"HTTP status code [code]504 Gateway Timeout[/code]. The server, while acting "
"as a gateway or proxy, did not receive a timely response from an upstream "
@@ -23985,14 +24501,14 @@ msgid ""
"returned by load balancers or proxies."
msgstr ""
-#: doc/classes/HTTPClient.xml:412
+#: doc/classes/HTTPClient.xml:413
msgid ""
"HTTP status code [code]505 HTTP Version Not Supported[/code]. The server "
"does not support, or refuses to support, the major version of HTTP that was "
"used in the request message."
msgstr ""
-#: doc/classes/HTTPClient.xml:415
+#: doc/classes/HTTPClient.xml:416
msgid ""
"HTTP status code [code]506 Variant Also Negotiates[/code]. The server has an "
"internal configuration error: the chosen variant resource is configured to "
@@ -24000,14 +24516,14 @@ msgid ""
"proper end point in the negotiation process."
msgstr ""
-#: doc/classes/HTTPClient.xml:418
+#: doc/classes/HTTPClient.xml:419
msgid ""
"HTTP status code [code]507 Insufficient Storage[/code]. The method could not "
"be performed on the resource because the server is unable to store the "
"representation needed to successfully complete the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:421
+#: doc/classes/HTTPClient.xml:422
msgid ""
"HTTP status code [code]508 Loop Detected[/code]. The server terminated an "
"operation because it encountered an infinite loop while processing a request "
@@ -24015,14 +24531,14 @@ msgid ""
"failed."
msgstr ""
-#: doc/classes/HTTPClient.xml:424
+#: doc/classes/HTTPClient.xml:425
msgid ""
"HTTP status code [code]510 Not Extended[/code]. The policy for accessing the "
"resource has not been met in the request. The server should send back all "
"the information necessary for the client to issue an extended request."
msgstr ""
-#: doc/classes/HTTPClient.xml:427
+#: doc/classes/HTTPClient.xml:428
msgid ""
"HTTP status code [code]511 Network Authentication Required[/code]. The "
"client needs to authenticate to gain network access."
@@ -24048,12 +24564,21 @@ msgid ""
" http_request.connect(\"request_completed\", self, "
"\"_http_request_completed\")\n"
"\n"
-" # Perform the HTTP request. The URL below returns some JSON as of "
-"writing.\n"
+" # Perform a GET request. The URL below returns JSON as of writing.\n"
" var error = http_request.request(\"https://httpbin.org/get\")\n"
" if error != OK:\n"
" push_error(\"An error occurred in the HTTP request.\")\n"
"\n"
+" # Perform a POST request. The URL below returns JSON as of writing.\n"
+" # Note: Don't make simultaneous requests using a single HTTPRequest "
+"node.\n"
+" # The snippet below is provided for reference only.\n"
+" var body = {\"name\": \"Godette\"}\n"
+" var error = http_request.request(\"https://httpbin.org/post\", [], true, "
+"HTTPClient.METHOD_POST, body)\n"
+" if error != OK:\n"
+" push_error(\"An error occurred in the HTTP request.\")\n"
+"\n"
"\n"
"# Called when the HTTP request is completed.\n"
"func _http_request_completed(result, response_code, headers, body):\n"
@@ -24093,20 +24618,26 @@ msgid ""
" var texture_rect = TextureRect.new()\n"
" add_child(texture_rect)\n"
" texture_rect.texture = texture\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] When performing HTTP requests from a project exported to HTML5, "
+"keep in mind the remote server may not allow requests from foreign origins "
+"due to [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/"
+"url]. If you host the server in question, you should modify its backend to "
+"allow requests from foreign origins by adding the [code]Access-Control-Allow-"
+"Origin: *[/code] HTTP header."
msgstr ""
-#: doc/classes/HTTPRequest.xml:61
+#: doc/classes/HTTPRequest.xml:70
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/"
"http_request_class.html"
msgstr ""
-#: doc/classes/HTTPRequest.xml:69
+#: doc/classes/HTTPRequest.xml:78
msgid "Cancels the current request."
msgstr ""
-#: doc/classes/HTTPRequest.xml:76
+#: doc/classes/HTTPRequest.xml:85
msgid ""
"Returns the response body length.\n"
"[b]Note:[/b] Some Web servers may not send a body length. In this case, the "
@@ -24114,17 +24645,17 @@ msgid ""
"the body length will also be [code]-1[/code]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:84
+#: doc/classes/HTTPRequest.xml:93
msgid "Returns the amount of bytes this HTTPRequest downloaded."
msgstr ""
-#: doc/classes/HTTPRequest.xml:91
+#: doc/classes/HTTPRequest.xml:100
msgid ""
"Returns the current status of the underlying [HTTPClient]. See [enum "
"HTTPClient.Status]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:108
+#: doc/classes/HTTPRequest.xml:117
msgid ""
"Creates request on the underlying [HTTPClient]. If there is no configuration "
"errors, it tries to connect using [method HTTPClient.connect_to_host] and "
@@ -24137,11 +24668,11 @@ msgid ""
"connect to host."
msgstr ""
-#: doc/classes/HTTPRequest.xml:115
+#: doc/classes/HTTPRequest.xml:124
msgid "Maximum allowed size for response bodies."
msgstr ""
-#: doc/classes/HTTPRequest.xml:118
+#: doc/classes/HTTPRequest.xml:127
msgid ""
"The size of the buffer used and maximum bytes to read per iteration. See "
"[member HTTPClient.read_chunk_size].\n"
@@ -24149,63 +24680,63 @@ msgid ""
"files to achieve better speeds at the cost of memory."
msgstr ""
-#: doc/classes/HTTPRequest.xml:122
+#: doc/classes/HTTPRequest.xml:131
msgid "The file to download into. Will output any received file into it."
msgstr ""
-#: doc/classes/HTTPRequest.xml:125
+#: doc/classes/HTTPRequest.xml:134
msgid "Maximum number of allowed redirects."
msgstr ""
-#: doc/classes/HTTPRequest.xml:130
+#: doc/classes/HTTPRequest.xml:139
msgid "If [code]true[/code], multithreading is used to improve performance."
msgstr ""
-#: doc/classes/HTTPRequest.xml:144
+#: doc/classes/HTTPRequest.xml:153
msgid "Emitted when a request is completed."
msgstr ""
-#: doc/classes/HTTPRequest.xml:150
+#: doc/classes/HTTPRequest.xml:159
msgid "Request successful."
msgstr ""
-#: doc/classes/HTTPRequest.xml:155
+#: doc/classes/HTTPRequest.xml:164
msgid "Request failed while connecting."
msgstr ""
-#: doc/classes/HTTPRequest.xml:158
+#: doc/classes/HTTPRequest.xml:167
msgid "Request failed while resolving."
msgstr ""
-#: doc/classes/HTTPRequest.xml:161
+#: doc/classes/HTTPRequest.xml:170
msgid "Request failed due to connection (read/write) error."
msgstr ""
-#: doc/classes/HTTPRequest.xml:164
+#: doc/classes/HTTPRequest.xml:173
msgid "Request failed on SSL handshake."
msgstr ""
-#: doc/classes/HTTPRequest.xml:167
+#: doc/classes/HTTPRequest.xml:176
msgid "Request does not have a response (yet)."
msgstr ""
-#: doc/classes/HTTPRequest.xml:170
+#: doc/classes/HTTPRequest.xml:179
msgid "Request exceeded its maximum size limit, see [member body_size_limit]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:173
+#: doc/classes/HTTPRequest.xml:182
msgid "Request failed (currently unused)."
msgstr ""
-#: doc/classes/HTTPRequest.xml:176
+#: doc/classes/HTTPRequest.xml:185
msgid "HTTPRequest couldn't open the download file."
msgstr ""
-#: doc/classes/HTTPRequest.xml:179
+#: doc/classes/HTTPRequest.xml:188
msgid "HTTPRequest couldn't write to the download file."
msgstr ""
-#: doc/classes/HTTPRequest.xml:182
+#: doc/classes/HTTPRequest.xml:191
msgid "Request reached its maximum redirect limit, see [member max_redirects]."
msgstr ""
@@ -24429,42 +24960,46 @@ msgid "Loads an image from the binary contents of a PNG file."
msgstr ""
#: doc/classes/Image.xml:373
+msgid "Loads an image from the binary contents of a TGA file."
+msgstr ""
+
+#: doc/classes/Image.xml:382
msgid "Loads an image from the binary contents of a WebP file."
msgstr ""
-#: doc/classes/Image.xml:380
+#: doc/classes/Image.xml:389
msgid ""
"Converts the image's data to represent coordinates on a 3D plane. This is "
"used when the image represents a normalmap. A normalmap can add lots of "
"detail to a 3D surface without increasing the polygon count."
msgstr ""
-#: doc/classes/Image.xml:387
+#: doc/classes/Image.xml:396
msgid ""
"Multiplies color values with alpha values. Resulting color values for a "
"pixel are [code](color * alpha)/256[/code]."
msgstr ""
-#: doc/classes/Image.xml:400
+#: doc/classes/Image.xml:409
msgid ""
"Resizes the image to the given [code]width[/code] and [code]height[/code]. "
"New pixels are calculated using [code]interpolation[/code]. See "
"[code]interpolation[/code] constants."
msgstr ""
-#: doc/classes/Image.xml:409
+#: doc/classes/Image.xml:418
msgid ""
"Resizes the image to the nearest power of 2 for the width and height. If "
"[code]square[/code] is [code]true[/code] then set width and height to be the "
"same."
msgstr ""
-#: doc/classes/Image.xml:416
+#: doc/classes/Image.xml:425
msgid ""
"Converts a standard RGBE (Red Green Blue Exponent) image to an sRGB image."
msgstr ""
-#: doc/classes/Image.xml:427
+#: doc/classes/Image.xml:436
msgid ""
"Saves the image as an EXR file to [code]path[/code]. If [code]grayscale[/"
"code] is [code]true[/code] and the image has only one channel, it will be "
@@ -24473,11 +25008,11 @@ msgid ""
"TinyEXR module."
msgstr ""
-#: doc/classes/Image.xml:436
+#: doc/classes/Image.xml:445
msgid "Saves the image as a PNG file to [code]path[/code]."
msgstr ""
-#: doc/classes/Image.xml:455
+#: doc/classes/Image.xml:464
msgid ""
"Sets the [Color] of the pixel at [code](x, y)[/code]. Example:\n"
"[codeblock]\n"
@@ -24487,7 +25022,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Image.xml:471
+#: doc/classes/Image.xml:480
msgid ""
"Sets the [Color] of the pixel at [code](dst.x, dst.y)[/code]. Note that the "
"[code]dst[/code] values must be integers. Example:\n"
@@ -24498,51 +25033,51 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Image.xml:483
+#: doc/classes/Image.xml:492
msgid "Shrinks the image by a factor of 2."
msgstr ""
-#: doc/classes/Image.xml:490
+#: doc/classes/Image.xml:499
msgid "Converts the raw data from the sRGB colorspace to a linear scale."
msgstr ""
-#: doc/classes/Image.xml:496
+#: doc/classes/Image.xml:505
msgid ""
"Holds all of the image's color data in a given format. See [enum Format] "
"constants."
msgstr ""
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:510
msgid "The maximal width allowed for [Image] resources."
msgstr ""
-#: doc/classes/Image.xml:504
+#: doc/classes/Image.xml:513
msgid "The maximal height allowed for [Image] resources."
msgstr ""
-#: doc/classes/Image.xml:507
+#: doc/classes/Image.xml:516
msgid "Texture format with a single 8-bit depth representing luminance."
msgstr ""
-#: doc/classes/Image.xml:510
+#: doc/classes/Image.xml:519
msgid ""
"OpenGL texture format with two values, luminance and alpha each stored with "
"8 bits."
msgstr ""
-#: doc/classes/Image.xml:513
+#: doc/classes/Image.xml:522
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
"bitdepth of 8."
msgstr ""
-#: doc/classes/Image.xml:516
+#: doc/classes/Image.xml:525
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
-#: doc/classes/Image.xml:519
+#: doc/classes/Image.xml:528
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -24550,7 +25085,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:523
+#: doc/classes/Image.xml:532
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -24558,67 +25093,67 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:536
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
-#: doc/classes/Image.xml:532
+#: doc/classes/Image.xml:541
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
-#: doc/classes/Image.xml:535
+#: doc/classes/Image.xml:544
msgid ""
"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
"each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:538
+#: doc/classes/Image.xml:547
msgid ""
"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
"components, each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:541
+#: doc/classes/Image.xml:550
msgid ""
"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
"components, each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:544
+#: doc/classes/Image.xml:553
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 16-"
"bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:556
msgid ""
"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
"each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:550
+#: doc/classes/Image.xml:559
msgid ""
"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
"components, each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:553
+#: doc/classes/Image.xml:562
msgid ""
"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
"components, each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:556
+#: doc/classes/Image.xml:565
msgid ""
"A special OpenGL texture format where the three color components have 9 bits "
"of precision and all three share a single 5-bit exponent."
msgstr ""
-#: doc/classes/Image.xml:559
+#: doc/classes/Image.xml:568
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format that uses Block Compression 1, and is the smallest variation "
@@ -24628,7 +25163,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:563
+#: doc/classes/Image.xml:572
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format that uses Block Compression 2, and color data is interpreted "
@@ -24638,7 +25173,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:567
+#: doc/classes/Image.xml:576
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format also known as Block Compression 3 or BC3 that contains 64 "
@@ -24649,7 +25184,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:571
+#: doc/classes/Image.xml:580
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -24657,7 +25192,7 @@ msgid ""
"DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:574
+#: doc/classes/Image.xml:583
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -24665,7 +25200,7 @@ msgid ""
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:577
+#: doc/classes/Image.xml:586
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -24674,21 +25209,21 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:581
+#: doc/classes/Image.xml:590
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with signed floating-point "
"RGB components."
msgstr ""
-#: doc/classes/Image.xml:584
+#: doc/classes/Image.xml:593
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned floating-point "
"RGB components."
msgstr ""
-#: doc/classes/Image.xml:587
+#: doc/classes/Image.xml:596
msgid ""
"Texture format used on PowerVR-supported mobile platforms, uses 2-bit color "
"depth with no alpha. More information can be found [url=https://en.wikipedia."
@@ -24697,25 +25232,25 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:600
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:603
msgid ""
"Similar to [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with 4-"
"bit color depth and no alpha."
msgstr ""
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:606
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:609
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -24723,7 +25258,7 @@ msgid ""
"standard. This format cannot store an alpha channel."
msgstr ""
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:612
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24731,7 +25266,7 @@ msgid ""
"unsigned data."
msgstr ""
-#: doc/classes/Image.xml:606
+#: doc/classes/Image.xml:615
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24739,7 +25274,7 @@ msgid ""
"channel of signed data."
msgstr ""
-#: doc/classes/Image.xml:609
+#: doc/classes/Image.xml:618
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24747,7 +25282,7 @@ msgid ""
"of unsigned data."
msgstr ""
-#: doc/classes/Image.xml:612
+#: doc/classes/Image.xml:621
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24755,7 +25290,7 @@ msgid ""
"channels of signed data."
msgstr ""
-#: doc/classes/Image.xml:615
+#: doc/classes/Image.xml:624
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24765,7 +25300,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:619
+#: doc/classes/Image.xml:628
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24775,7 +25310,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:623
+#: doc/classes/Image.xml:632
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24786,31 +25321,31 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:631
+#: doc/classes/Image.xml:640
msgid "Represents the size of the [enum Format] enum."
msgstr ""
-#: doc/classes/Image.xml:634
+#: doc/classes/Image.xml:643
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
-#: doc/classes/Image.xml:637
+#: doc/classes/Image.xml:646
msgid ""
"Performs bilinear interpolation. If the image is resized, it will be blurry. "
"This mode is faster than [constant INTERPOLATE_CUBIC], but it results in "
"lower quality."
msgstr ""
-#: doc/classes/Image.xml:640
+#: doc/classes/Image.xml:649
msgid ""
"Performs cubic interpolation. If the image is resized, it will be blurry. "
"This mode often gives better results compared to [constant "
"INTERPOLATE_BILINEAR], at the cost of being slower."
msgstr ""
-#: doc/classes/Image.xml:643
+#: doc/classes/Image.xml:652
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -24825,55 +25360,55 @@ msgid ""
"a new set will be generated for the resulting image."
msgstr ""
-#: doc/classes/Image.xml:650
+#: doc/classes/Image.xml:659
msgid ""
"Performs Lanczos interpolation. This is the slowest image resizing mode, but "
"it typically gives the best results, especially when downscalng images."
msgstr ""
-#: doc/classes/Image.xml:653
+#: doc/classes/Image.xml:662
msgid "Image does not have alpha."
msgstr ""
-#: doc/classes/Image.xml:656
+#: doc/classes/Image.xml:665
msgid "Image stores alpha in a single bit."
msgstr ""
-#: doc/classes/Image.xml:659
+#: doc/classes/Image.xml:668
msgid "Image uses alpha."
msgstr ""
-#: doc/classes/Image.xml:662
+#: doc/classes/Image.xml:671
msgid "Use S3TC compression."
msgstr ""
-#: doc/classes/Image.xml:665
+#: doc/classes/Image.xml:674
msgid "Use PVRTC2 compression."
msgstr ""
-#: doc/classes/Image.xml:668
+#: doc/classes/Image.xml:677
msgid "Use PVRTC4 compression."
msgstr ""
-#: doc/classes/Image.xml:671
+#: doc/classes/Image.xml:680
msgid "Use ETC compression."
msgstr ""
-#: doc/classes/Image.xml:674
+#: doc/classes/Image.xml:683
msgid "Use ETC2 compression."
msgstr ""
-#: doc/classes/Image.xml:689
+#: doc/classes/Image.xml:698
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
-#: doc/classes/Image.xml:692
+#: doc/classes/Image.xml:701
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
-#: doc/classes/Image.xml:695
+#: doc/classes/Image.xml:704
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -25692,7 +26227,7 @@ msgid "Contains mouse click information. See [method Node._input]."
msgstr ""
#: doc/classes/InputEventMouseButton.xml:10
-#: doc/classes/InputEventMouseMotion.xml:10
+#: doc/classes/InputEventMouseMotion.xml:11
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/inputs/"
"mouse_and_input_coordinates.html"
@@ -25729,29 +26264,36 @@ msgstr ""
#: doc/classes/InputEventMouseMotion.xml:7
msgid ""
"Contains mouse and pen motion information. Supports relative, absolute "
-"positions and speed. See [method Node._input]."
+"positions and speed. See [method Node._input].\n"
+"[b]Note:[/b] By default, this event is only emitted once per frame rendered "
+"at most. If you need more precise input reporting, call [method Input."
+"set_use_accumulated_input] with [code]false[/code] to make events emitted as "
+"often as possible. If you use InputEventMouseMotion to draw lines, consider "
+"implementing [url=https://en.wikipedia.org/wiki/Bresenham"
+"%27s_line_algorithm]Bresenham's line algorithm[/url] as well to avoid "
+"visible gaps in lines if the user is moving the mouse quickly."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:16
+#: doc/classes/InputEventMouseMotion.xml:17
msgid ""
"Represents the pressure the user puts on the pen. Ranges from [code]0.0[/"
"code] to [code]1.0[/code]."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:19
+#: doc/classes/InputEventMouseMotion.xml:20
msgid ""
"The mouse position relative to the previous position (position at the last "
-"frame). \n"
+"frame).\n"
"[b]Note:[/b] Since [InputEventMouseMotion] is only emitted when the mouse "
"moves, the last event won't have a relative position of [code]Vector2(0, 0)[/"
"code] when the user stops moving the mouse."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:23
+#: doc/classes/InputEventMouseMotion.xml:24
msgid "The mouse speed in pixels per second."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:26
+#: doc/classes/InputEventMouseMotion.xml:27
msgid ""
"Represents the angles of tilt of the pen. Positive X-coordinate value "
"indicates a tilt to the right. Positive Y-coordinate value indicates a tilt "
@@ -26641,14 +27183,17 @@ msgstr ""
#: doc/classes/JSON.xml:18
msgid ""
-"Parses a JSON encoded string and returns a [JSONParseResult] containing the "
+"Parses a JSON-encoded string and returns a [JSONParseResult] containing the "
"result."
msgstr ""
#: doc/classes/JSON.xml:31
msgid ""
"Converts a [Variant] var to JSON text and returns the result. Useful for "
-"serializing data to store or send over the network."
+"serializing data to store or send over the network.\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, converting a Variant to JSON text "
+"will convert all numerical values to [float] types."
msgstr ""
#: doc/classes/JSONParseResult.xml:4
@@ -26671,14 +27216,14 @@ msgstr ""
#: doc/classes/JSONParseResult.xml:18
msgid ""
-"The line number where the error occurred if JSON source was not successfully "
-"parsed."
+"The line number where the error occurred if the JSON source was not "
+"successfully parsed."
msgstr ""
#: doc/classes/JSONParseResult.xml:21
msgid ""
-"The error message if JSON source was not successfully parsed. See the [enum "
-"Error] constants."
+"The error message if the JSON source was not successfully parsed. See the "
+"[enum Error] constants."
msgstr ""
#: doc/classes/JSONParseResult.xml:24
@@ -26686,11 +27231,11 @@ msgid ""
"A [Variant] containing the parsed JSON. Use [method @GDScript.typeof] or the "
"[code]is[/code] keyword to check if it is what you expect. For example, if "
"the JSON source starts with curly braces ([code]{}[/code]), a [Dictionary] "
-"will be returned. If the JSON source starts with braces ([code][][/code]), "
+"will be returned. If the JSON source starts with brackets ([code][][/code]), "
"an [Array] will be returned.\n"
"[b]Note:[/b] The JSON specification does not define integer or float types, "
-"but only a number type. Therefore, parsing a JSON text will convert all "
-"numerical values to float types.\n"
+"but only a [i]number[/i] type. Therefore, parsing a JSON text will convert "
+"all numerical values to [float] types.\n"
"[b]Note:[/b] JSON objects do not preserve key order like Godot dictionaries, "
"thus, you should not rely on keys being in a certain order if a dictionary "
"is constructed from JSON. In contrast, JSON arrays retain the order of their "
@@ -26700,7 +27245,7 @@ msgid ""
"if typeof(p.result) == TYPE_ARRAY:\n"
" print(p.result[0]) # Prints \"hello\"\n"
"else:\n"
-" print(\"unexpected results\")\n"
+" push_error(\"Unexpected results.\")\n"
"[/codeblock]"
msgstr ""
@@ -26816,7 +27361,7 @@ msgid ""
"simulation will run at an incorrect speed.\n"
"[code]linear_velocity[/code] is the velocity vector in pixels per second. "
"Unlike in [method move_and_collide], you should [i]not[/i] multiply it by "
-"[code]delta[/code] — the physics engine handles applying the velocity. \n"
+"[code]delta[/code] — the physics engine handles applying the velocity.\n"
"[code]up_direction[/code] is the up direction, used to determine what is a "
"wall and what is a floor or a ceiling. If set to the default value of "
"[code]Vector2(0, 0)[/code], everything is considered a wall. This is useful "
@@ -26932,7 +27477,7 @@ msgid ""
"[code]linear_velocity[/code] is the velocity vector (typically meters per "
"second). Unlike in [method move_and_collide], you should [i]not[/i] multiply "
"it by [code]delta[/code] — the physics engine handles applying the "
-"velocity. \n"
+"velocity.\n"
"[code]up_direction[/code] is the up direction, used to determine what is a "
"wall and what is a floor or a ceiling. If set to the default value of "
"[code]Vector3(0, 0, 0)[/code], everything is considered a wall.\n"
@@ -27661,17 +28206,6 @@ msgid ""
"[b]Note:[/b] Hiding a light does [i]not[/i] affect baking."
msgstr ""
-#: doc/classes/Light3D.xml:152
-msgid "Only indirect lighting will be baked (default)."
-msgstr ""
-
-#: doc/classes/Light3D.xml:155
-msgid ""
-"Both direct and indirect light will be baked.\n"
-"[b]Note:[/b] You should hide the light if you don't want it to appear twice "
-"(dynamic and baked)."
-msgstr ""
-
#: doc/classes/LightOccluder2D.xml:4
msgid "Occludes light cast by a Light2D, casting shadows."
msgstr ""
@@ -27950,136 +28484,142 @@ msgstr ""
msgid "Text alignment as defined in the [enum Align] enum."
msgstr ""
-#: doc/classes/LineEdit.xml:120 doc/classes/TextEdit.xml:406
+#: doc/classes/LineEdit.xml:120 doc/classes/TextEdit.xml:358
msgid "If [code]true[/code], the caret (visual cursor) blinks."
msgstr ""
-#: doc/classes/LineEdit.xml:123 doc/classes/TextEdit.xml:409
+#: doc/classes/LineEdit.xml:123 doc/classes/TextEdit.xml:361
msgid "Duration (in seconds) of a caret's blinking cycle."
msgstr ""
-#: doc/classes/LineEdit.xml:126
+#: doc/classes/LineEdit.xml:128
msgid ""
"The cursor's position inside the [LineEdit]. When set, the text may scroll "
"to accommodate it."
msgstr ""
-#: doc/classes/LineEdit.xml:129
+#: doc/classes/LineEdit.xml:131
msgid ""
"If [code]true[/code], the [LineEdit] will show a clear button if [code]text[/"
"code] is not empty, which can be used to clear the text quickly."
msgstr ""
-#: doc/classes/LineEdit.xml:132
+#: doc/classes/LineEdit.xml:134
msgid "If [code]true[/code], the context menu will appear when right-clicked."
msgstr ""
-#: doc/classes/LineEdit.xml:135
+#: doc/classes/LineEdit.xml:137
msgid ""
"If [code]false[/code], existing text cannot be modified and new text cannot "
"be added."
msgstr ""
-#: doc/classes/LineEdit.xml:138
+#: doc/classes/LineEdit.xml:140
msgid ""
"If [code]true[/code], the [LineEdit] width will increase to stay longer than "
"the [member text]. It will [b]not[/b] compress if the [member text] is "
"shortened."
msgstr ""
-#: doc/classes/LineEdit.xml:142
+#: doc/classes/LineEdit.xml:144
msgid ""
"Maximum amount of characters that can be entered inside the [LineEdit]. If "
"[code]0[/code], there is no limit."
msgstr ""
-#: doc/classes/LineEdit.xml:146
+#: doc/classes/LineEdit.xml:148
msgid ""
"Opacity of the [member placeholder_text]. From [code]0[/code] to [code]1[/"
"code]."
msgstr ""
-#: doc/classes/LineEdit.xml:149
+#: doc/classes/LineEdit.xml:151
msgid ""
"Text shown when the [LineEdit] is empty. It is [b]not[/b] the [LineEdit]'s "
"default value (see [member text])."
msgstr ""
-#: doc/classes/LineEdit.xml:152
+#: doc/classes/LineEdit.xml:154
msgid ""
"Sets the icon that will appear in the right end of the [LineEdit] if there's "
"no [member text], or always, if [member clear_button_enabled] is set to "
"[code]false[/code]."
msgstr ""
-#: doc/classes/LineEdit.xml:155
+#: doc/classes/LineEdit.xml:157
msgid ""
"If [code]true[/code], every character is replaced with the secret character "
"(see [member secret_character])."
msgstr ""
-#: doc/classes/LineEdit.xml:158
+#: doc/classes/LineEdit.xml:160
msgid ""
"The character to use to mask secret input (defaults to \"*\"). Only a single "
"character can be used as the secret character."
msgstr ""
-#: doc/classes/LineEdit.xml:161
+#: doc/classes/LineEdit.xml:163
msgid ""
"If [code]false[/code], it's impossible to select the text using mouse nor "
"keyboard."
msgstr ""
-#: doc/classes/LineEdit.xml:164
+#: doc/classes/LineEdit.xml:166
msgid "If [code]false[/code], using shortcuts will be disabled."
msgstr ""
-#: doc/classes/LineEdit.xml:167
+#: doc/classes/LineEdit.xml:169
msgid ""
"String value of the [LineEdit].\n"
"[b]Note:[/b] Changing text using this property won't emit the [signal "
"text_changed] signal."
msgstr ""
-#: doc/classes/LineEdit.xml:174
+#: doc/classes/LineEdit.xml:173 doc/classes/TextEdit.xml:434
+msgid ""
+"If [code]true[/code], the native virtual keyboard is shown when focused on "
+"platforms that support it."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:179
msgid ""
"Emitted when trying to append text that would overflow the [member "
"max_length]."
msgstr ""
-#: doc/classes/LineEdit.xml:181 doc/classes/TextEdit.xml:525
+#: doc/classes/LineEdit.xml:186 doc/classes/TextEdit.xml:490
msgid "Emitted when the text changes."
msgstr ""
-#: doc/classes/LineEdit.xml:188
+#: doc/classes/LineEdit.xml:193
msgid "Emitted when the user presses [constant KEY_ENTER] on the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:194
+#: doc/classes/LineEdit.xml:199
msgid "Aligns the text on the left-hand side of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:197
+#: doc/classes/LineEdit.xml:202
msgid "Centers the text in the middle of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:200
+#: doc/classes/LineEdit.xml:205
msgid "Aligns the text on the right-hand side of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:203
+#: doc/classes/LineEdit.xml:208
msgid "Stretches whitespaces to fit the [LineEdit]'s width."
msgstr ""
-#: doc/classes/LineEdit.xml:206 doc/classes/TextEdit.xml:540
+#: doc/classes/LineEdit.xml:211 doc/classes/TextEdit.xml:505
msgid "Cuts (copies and clears) the selected text."
msgstr ""
-#: doc/classes/LineEdit.xml:209 doc/classes/TextEdit.xml:543
+#: doc/classes/LineEdit.xml:214 doc/classes/TextEdit.xml:508
msgid "Copies the selected text."
msgstr ""
-#: doc/classes/LineEdit.xml:212
+#: doc/classes/LineEdit.xml:217
msgid ""
"Pastes the clipboard text over the selected text (or at the cursor's "
"position).\n"
@@ -28087,80 +28627,80 @@ msgid ""
"clipboard via [method String.strip_escapes]."
msgstr ""
-#: doc/classes/LineEdit.xml:216
+#: doc/classes/LineEdit.xml:221
msgid "Erases the whole [LineEdit] text."
msgstr ""
-#: doc/classes/LineEdit.xml:219
+#: doc/classes/LineEdit.xml:224
msgid "Selects the whole [LineEdit] text."
msgstr ""
-#: doc/classes/LineEdit.xml:222 doc/classes/TextEdit.xml:555
+#: doc/classes/LineEdit.xml:227 doc/classes/TextEdit.xml:520
msgid "Undoes the previous action."
msgstr ""
-#: doc/classes/LineEdit.xml:225
+#: doc/classes/LineEdit.xml:230
msgid "Reverse the last undo action."
msgstr ""
-#: doc/classes/LineEdit.xml:228 doc/classes/TextEdit.xml:561
+#: doc/classes/LineEdit.xml:233 doc/classes/TextEdit.xml:526
msgid "Represents the size of the [enum MenuItems] enum."
msgstr ""
-#: doc/classes/LineEdit.xml:233
+#: doc/classes/LineEdit.xml:238
msgid "Texture for the clear button. See [member clear_button_enabled]."
msgstr ""
-#: doc/classes/LineEdit.xml:236
+#: doc/classes/LineEdit.xml:241
msgid "Color used as default tint for the clear button."
msgstr ""
-#: doc/classes/LineEdit.xml:239
+#: doc/classes/LineEdit.xml:244
msgid "Color used for the clear button when it's pressed."
msgstr ""
-#: doc/classes/LineEdit.xml:242
+#: doc/classes/LineEdit.xml:247
msgid "Color of the [LineEdit]'s visual cursor (caret)."
msgstr ""
-#: doc/classes/LineEdit.xml:245
+#: doc/classes/LineEdit.xml:250
msgid "Background used when [LineEdit] has GUI focus."
msgstr ""
-#: doc/classes/LineEdit.xml:248
+#: doc/classes/LineEdit.xml:253
msgid "Font used for the text."
msgstr ""
-#: doc/classes/LineEdit.xml:251
+#: doc/classes/LineEdit.xml:256
msgid "Default font color."
msgstr ""
-#: doc/classes/LineEdit.xml:254
+#: doc/classes/LineEdit.xml:259
msgid "Font color for selected text (inside the selection rectangle)."
msgstr ""
-#: doc/classes/LineEdit.xml:257
+#: doc/classes/LineEdit.xml:262
msgid "Font color when editing is disabled."
msgstr ""
-#: doc/classes/LineEdit.xml:260
+#: doc/classes/LineEdit.xml:265
msgid ""
"Minimum horizontal space for the text (not counting the clear button and "
"content margins). This value is measured in count of space characters (i.e. "
"this amount of space characters can be displayed without scrolling)."
msgstr ""
-#: doc/classes/LineEdit.xml:263
+#: doc/classes/LineEdit.xml:268
msgid "Default background for the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:266
+#: doc/classes/LineEdit.xml:271
msgid ""
"Background used when [LineEdit] is in read-only mode ([member editable] is "
"set to [code]false[/code])."
msgstr ""
-#: doc/classes/LineEdit.xml:269
+#: doc/classes/LineEdit.xml:274
msgid "Color of the selection rectangle."
msgstr ""
@@ -28378,14 +28918,14 @@ msgstr ""
msgid "Emitted when a user responds to a permission request."
msgstr ""
-#: doc/classes/MainLoop.xml:127 doc/classes/Node.xml:948
+#: doc/classes/MainLoop.xml:127 doc/classes/Node.xml:946
msgid ""
"Notification received from the OS when the application is exceeding its "
"allocated memory.\n"
"Specific to the iOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:131 doc/classes/Node.xml:952
+#: doc/classes/MainLoop.xml:131 doc/classes/Node.xml:950
msgid ""
"Notification received when translations may have changed. Can be triggered "
"by the user changing the locale. Can be used to respond to language changes, "
@@ -28393,39 +28933,55 @@ msgid ""
"the built-in translation support, like [method Object.tr]."
msgstr ""
-#: doc/classes/MainLoop.xml:134 doc/classes/Node.xml:955
+#: doc/classes/MainLoop.xml:134 doc/classes/Node.xml:953
msgid ""
"Notification received from the OS when a request for \"About\" information "
"is sent.\n"
"Specific to the macOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:138 doc/classes/Node.xml:959
+#: doc/classes/MainLoop.xml:138 doc/classes/Node.xml:957
msgid ""
"Notification received from Godot's crash handler when the engine is about to "
"crash.\n"
"Implemented on desktop platforms if the crash handler is enabled."
msgstr ""
-#: doc/classes/MainLoop.xml:142 doc/classes/Node.xml:963
+#: doc/classes/MainLoop.xml:142 doc/classes/Node.xml:961
msgid ""
"Notification received from the OS when an update of the Input Method Engine "
"occurs (e.g. change of IME cursor position or composition string).\n"
"Specific to the macOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:146 doc/classes/Node.xml:967
+#: doc/classes/MainLoop.xml:146 doc/classes/Node.xml:965
msgid ""
-"Notification received from the OS when the app is resumed.\n"
+"Notification received from the OS when the application is resumed.\n"
"Specific to the Android platform."
msgstr ""
-#: doc/classes/MainLoop.xml:150 doc/classes/Node.xml:971
+#: doc/classes/MainLoop.xml:150 doc/classes/Node.xml:969
msgid ""
-"Notification received from the OS when the app is paused.\n"
+"Notification received from the OS when the application is paused.\n"
"Specific to the Android platform."
msgstr ""
+#: doc/classes/MainLoop.xml:154 doc/classes/Node.xml:973
+msgid ""
+"Notification received from the OS when the application is focused, i.e. when "
+"changing the focus from the OS desktop or a thirdparty application to any "
+"open window of the Godot instance.\n"
+"Implemented on desktop platforms."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:158 doc/classes/Node.xml:977
+msgid ""
+"Notification received from the OS when the application is defocused, i.e. "
+"when changing the focus from any open window of the Godot instance to the OS "
+"desktop or a thirdparty application.\n"
+"Implemented on desktop platforms."
+msgstr ""
+
#: doc/classes/MarginContainer.xml:4
msgid "Simple margin container."
msgstr ""
@@ -28733,11 +29289,11 @@ msgstr ""
msgid "Render array as triangle strips."
msgstr ""
-#: doc/classes/Mesh.xml:126 doc/classes/RenderingServer.xml:3189
+#: doc/classes/Mesh.xml:126 doc/classes/RenderingServer.xml:3185
msgid "Blend shapes are normalized."
msgstr ""
-#: doc/classes/Mesh.xml:129 doc/classes/RenderingServer.xml:3192
+#: doc/classes/Mesh.xml:129 doc/classes/RenderingServer.xml:3188
msgid "Blend shapes are relative to base weight."
msgstr ""
@@ -28779,37 +29335,37 @@ msgstr ""
msgid "Mesh array uses indices."
msgstr ""
-#: doc/classes/Mesh.xml:159 doc/classes/RenderingServer.xml:3145
+#: doc/classes/Mesh.xml:159 doc/classes/RenderingServer.xml:3141
msgid "Flag used to mark a compressed (half float) normal array."
msgstr ""
-#: doc/classes/Mesh.xml:162 doc/classes/RenderingServer.xml:3148
+#: doc/classes/Mesh.xml:162 doc/classes/RenderingServer.xml:3144
msgid "Flag used to mark a compressed (half float) tangent array."
msgstr ""
-#: doc/classes/Mesh.xml:165 doc/classes/RenderingServer.xml:3151
+#: doc/classes/Mesh.xml:165 doc/classes/RenderingServer.xml:3147
msgid "Flag used to mark a compressed (half float) color array."
msgstr ""
-#: doc/classes/Mesh.xml:168 doc/classes/RenderingServer.xml:3154
+#: doc/classes/Mesh.xml:168 doc/classes/RenderingServer.xml:3150
msgid "Flag used to mark a compressed (half float) UV coordinates array."
msgstr ""
-#: doc/classes/Mesh.xml:171 doc/classes/RenderingServer.xml:3157
+#: doc/classes/Mesh.xml:171 doc/classes/RenderingServer.xml:3153
msgid ""
"Flag used to mark a compressed (half float) UV coordinates array for the "
"second UV coordinates."
msgstr ""
-#: doc/classes/Mesh.xml:174 doc/classes/RenderingServer.xml:3160
+#: doc/classes/Mesh.xml:174 doc/classes/RenderingServer.xml:3156
msgid "Flag used to mark a compressed index array."
msgstr ""
-#: doc/classes/Mesh.xml:177 doc/classes/RenderingServer.xml:3166
+#: doc/classes/Mesh.xml:177 doc/classes/RenderingServer.xml:3162
msgid "Flag used to mark that the array contains 2D vertices."
msgstr ""
-#: doc/classes/Mesh.xml:180 doc/classes/RenderingServer.xml:3163
+#: doc/classes/Mesh.xml:180 doc/classes/RenderingServer.xml:3159
msgid ""
"Used to set flags [constant ARRAY_COMPRESS_NORMAL], [constant "
"ARRAY_COMPRESS_TANGENT], [constant ARRAY_COMPRESS_COLOR], [constant "
@@ -30570,7 +31126,10 @@ msgstr ""
msgid ""
"The number of channels to be used by ENet. Channels are used to separate "
"different kinds of data. In reliable or ordered mode, for example, the "
-"packet delivery order is ensured on a per channel basis."
+"packet delivery order is ensured on a per-channel basis. This is done to "
+"combat latency and reduces ordering restrictions on packets. The delivery "
+"status of a packet in one channel won't stall the delivery of other packets "
+"in another channel."
msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:134
@@ -30597,11 +31156,12 @@ msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:144
msgid ""
"Set the default channel to be used to transfer data. By default, this value "
-"is [code]-1[/code] which means that ENet will only use 2 channels, one for "
-"reliable and one for unreliable packets. Channel [code]0[/code] is reserved, "
-"and cannot be used. Setting this member to any value between [code]0[/code] "
-"and [member channel_count] (excluded) will force ENet to use that channel "
-"for sending data."
+"is [code]-1[/code] which means that ENet will only use 2 channels: one for "
+"reliable packets, and one for unreliable packets. The channel [code]0[/code] "
+"is reserved and cannot be used. Setting this member to any value between "
+"[code]0[/code] and [member channel_count] (excluded) will force ENet to use "
+"that channel for sending data. See [member channel_count] for more "
+"information about ENet channels."
msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:148
@@ -31793,57 +32353,63 @@ msgstr ""
#: doc/classes/Node.xml:930
msgid ""
-"Notification received from the OS when the game window is focused.\n"
-"Implemented on all platforms."
+"Notification received from the OS when the node's parent [Window] is "
+"focused. This may be a change of focus between two windows of the same "
+"engine instance, or from the OS desktop or a third-party application to a "
+"window of the game (in which case [constant "
+"NOTIFICATION_APPLICATION_FOCUS_IN] is also emitted)."
msgstr ""
-#: doc/classes/Node.xml:934
+#: doc/classes/Node.xml:933
msgid ""
-"Notification received from the OS when the game window is unfocused.\n"
-"Implemented on all platforms."
+"Notification received from the OS when the node's parent [Window] is "
+"defocused. This may be a change of focus between two windows of the same "
+"engine instance, or from a window of the game to the OS desktop or a third-"
+"party application (in which case [constant "
+"NOTIFICATION_APPLICATION_FOCUS_OUT] is also emitted)."
msgstr ""
-#: doc/classes/Node.xml:938
+#: doc/classes/Node.xml:936
msgid ""
"Notification received from the OS when a close request is sent (e.g. closing "
"the window with a \"Close\" button or [kbd]Alt + F4[/kbd]).\n"
"Implemented on desktop platforms."
msgstr ""
-#: doc/classes/Node.xml:942
+#: doc/classes/Node.xml:940
msgid ""
"Notification received from the OS when a go back request is sent (e.g. "
"pressing the \"Back\" button on Android).\n"
"Specific to the Android platform."
msgstr ""
-#: doc/classes/Node.xml:975
+#: doc/classes/Node.xml:981
msgid ""
"Inherits pause mode from the node's parent. For the root node, it is "
"equivalent to [constant PAUSE_MODE_STOP]. Default."
msgstr ""
-#: doc/classes/Node.xml:978
+#: doc/classes/Node.xml:984
msgid "Stops processing when the [SceneTree] is paused."
msgstr ""
-#: doc/classes/Node.xml:981
+#: doc/classes/Node.xml:987
msgid "Continue to process regardless of the [SceneTree] pause state."
msgstr ""
-#: doc/classes/Node.xml:984
+#: doc/classes/Node.xml:990
msgid "Duplicate the node's signals."
msgstr ""
-#: doc/classes/Node.xml:987
+#: doc/classes/Node.xml:993
msgid "Duplicate the node's groups."
msgstr ""
-#: doc/classes/Node.xml:990
+#: doc/classes/Node.xml:996
msgid "Duplicate the node's scripts."
msgstr ""
-#: doc/classes/Node.xml:993
+#: doc/classes/Node.xml:999
msgid ""
"Duplicate using instancing.\n"
"An instance stays linked to the original so when the original changes, the "
@@ -32067,12 +32633,6 @@ msgid ""
"changes. [Node3D] will not propagate this by default."
msgstr ""
-#: doc/classes/Node3D.xml:104
-msgid ""
-"Returns whether the node is visible, taking into consideration that its "
-"parents visibility."
-msgstr ""
-
#: doc/classes/Node3D.xml:115
msgid ""
"Rotates itself so that the local -Z axis points towards the [code]target[/"
@@ -32242,7 +32802,10 @@ msgid "Local translation of this node."
msgstr ""
#: doc/classes/Node3D.xml:326
-msgid "If [code]true[/code], this node is drawn."
+msgid ""
+"If [code]true[/code], this node is drawn. The node is only visible if all of "
+"its antecedents are visible as well (in other words, [method "
+"is_visible_in_tree] must return [code]true[/code])."
msgstr ""
#: doc/classes/Node3D.xml:332
@@ -32499,10 +33062,20 @@ msgid ""
"the key exists, even if the value is [code]null[/code].\n"
"Objects also receive notifications. Notifications are a simple way to notify "
"the object about different events, so they can all be handled together. See "
-"[method _notification]."
+"[method _notification].\n"
+"[b]Note:[/b] Unlike references to a [Reference], references to an Object "
+"stored in a variable can become invalid without warning. Therefore, it's "
+"recommended to use [Reference] for data classes instead of [Object]."
msgstr ""
-#: doc/classes/Object.xml:30
+#: doc/classes/Object.xml:23 doc/classes/Reference.xml:12
+#: doc/classes/Resource.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/getting_started/workflow/"
+"best_practices/node_alternatives.html"
+msgstr ""
+
+#: doc/classes/Object.xml:32
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method get].\n"
@@ -32510,7 +33083,7 @@ msgid ""
"code] does not exist."
msgstr ""
-#: doc/classes/Object.xml:38
+#: doc/classes/Object.xml:40
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method get_property_list].\n"
@@ -32522,11 +33095,11 @@ msgid ""
"PropertyUsageFlags])."
msgstr ""
-#: doc/classes/Object.xml:47
+#: doc/classes/Object.xml:49
msgid "Called when the object is initialized."
msgstr ""
-#: doc/classes/Object.xml:56
+#: doc/classes/Object.xml:58
msgid ""
"Called whenever the object receives a notification, which is identified in "
"[code]what[/code] by a constant. The base [Object] has two constants "
@@ -32535,7 +33108,7 @@ msgid ""
"notifications which are also received by this method."
msgstr ""
-#: doc/classes/Object.xml:67
+#: doc/classes/Object.xml:69
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method set].\n"
@@ -32543,7 +33116,7 @@ msgid ""
"exists."
msgstr ""
-#: doc/classes/Object.xml:75
+#: doc/classes/Object.xml:77
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method to_string], and thus the object's representation where it is "
@@ -32552,34 +33125,42 @@ msgid ""
"[code]\"[ClassName:RID]\"[/code]."
msgstr ""
-#: doc/classes/Object.xml:87
+#: doc/classes/Object.xml:89
msgid ""
"Adds a user-defined [code]signal[/code]. Arguments are optional, but can be "
"added as an [Array] of dictionaries, each containing [code]name: String[/"
"code] and [code]type: int[/code] (see [enum Variant.Type]) entries."
msgstr ""
-#: doc/classes/Object.xml:96
+#: doc/classes/Object.xml:98
msgid ""
"Calls the [code]method[/code] on the object and returns the result. This "
"method supports a variable number of arguments, so parameters are passed as "
"a comma separated list. Example:\n"
"[codeblock]\n"
"call(\"set\", \"position\", Vector2(42.0, 0.0))\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] In C#, the method name must be specified as snake_case if it is "
+"defined by a built-in Godot node. This doesn't apply to user-defined methods "
+"where you should use the same convention as in the C# source (typically "
+"PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:108
+#: doc/classes/Object.xml:111
msgid ""
"Calls the [code]method[/code] on the object during idle time. This method "
"supports a variable number of arguments, so parameters are passed as a comma "
"separated list. Example:\n"
"[codeblock]\n"
"call_deferred(\"set\", \"position\", Vector2(42.0, 0.0))\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] In C#, the method name must be specified as snake_case if it is "
+"defined by a built-in Godot node. This doesn't apply to user-defined methods "
+"where you should use the same convention as in the C# source (typically "
+"PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:122
+#: doc/classes/Object.xml:126
msgid ""
"Calls the [code]method[/code] on the object and returns the result. "
"Contrarily to [method call], this method does not support a variable number "
@@ -32589,13 +33170,13 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:132
+#: doc/classes/Object.xml:136
msgid ""
"Returns [code]true[/code] if the object can translate strings. See [method "
"set_message_translation] and [method tr]."
msgstr ""
-#: doc/classes/Object.xml:147
+#: doc/classes/Object.xml:151
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32631,7 +33212,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:174
+#: doc/classes/Object.xml:178
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32642,7 +33223,7 @@ msgid ""
"exists."
msgstr ""
-#: doc/classes/Object.xml:185
+#: doc/classes/Object.xml:189
msgid ""
"Emits the given [code]signal[/code]. The signal must exist, so it should be "
"a built-in signal of this class or one of its parent classes, or a user-"
@@ -32654,24 +33235,28 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:196
+#: doc/classes/Object.xml:200
msgid ""
"Deletes the object from memory. Any pre-existing reference to the freed "
"object will become invalid, e.g. [code]is_instance_valid(object)[/code] will "
"return [code]false[/code]."
msgstr ""
-#: doc/classes/Object.xml:205
+#: doc/classes/Object.xml:209
msgid ""
"Returns the [Variant] value of the given [code]property[/code]. If the "
-"[code]property[/code] doesn't exist, this will return [code]null[/code]."
+"[code]property[/code] doesn't exist, this will return [code]null[/code].\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:212
+#: doc/classes/Object.xml:217
msgid "Returns the object's class as a [String]."
msgstr ""
-#: doc/classes/Object.xml:219
+#: doc/classes/Object.xml:224
msgid ""
"Returns an [Array] of dictionaries with information about signals that are "
"connected to the object.\n"
@@ -32682,7 +33267,7 @@ msgid ""
"connected."
msgstr ""
-#: doc/classes/Object.xml:232
+#: doc/classes/Object.xml:237
msgid ""
"Gets the object's property indexed by the given [NodePath]. The node path "
"should be relative to the current object and can use the colon character "
@@ -32690,26 +33275,26 @@ msgid ""
"\"[/code] or [code]\"material:next_pass:blend_mode\"[/code]."
msgstr ""
-#: doc/classes/Object.xml:239
+#: doc/classes/Object.xml:244
msgid ""
"Returns the object's unique instance ID.\n"
"This ID can be saved in [EncodedObjectAsID], and can be used to retrieve the "
"object instance with [method @GDScript.instance_from_id]."
msgstr ""
-#: doc/classes/Object.xml:249
+#: doc/classes/Object.xml:254
msgid "Returns the object's metadata entry for the given [code]name[/code]."
msgstr ""
-#: doc/classes/Object.xml:256
+#: doc/classes/Object.xml:261
msgid "Returns the object's metadata as a [PackedStringArray]."
msgstr ""
-#: doc/classes/Object.xml:263
+#: doc/classes/Object.xml:268
msgid "Returns the object's methods and their signatures as an [Array]."
msgstr ""
-#: doc/classes/Object.xml:270
+#: doc/classes/Object.xml:275
msgid ""
"Returns the object's property list as an [Array] of dictionaries.\n"
"Each property's [Dictionary] contain at least [code]name: String[/code] and "
@@ -32719,54 +33304,54 @@ msgid ""
"PropertyUsageFlags])."
msgstr ""
-#: doc/classes/Object.xml:278
+#: doc/classes/Object.xml:283
msgid ""
"Returns the object's [Script] instance, or [code]null[/code] if none is "
"assigned."
msgstr ""
-#: doc/classes/Object.xml:287
+#: doc/classes/Object.xml:292
msgid "Returns an [Array] of connections for the given [code]signal[/code]."
msgstr ""
-#: doc/classes/Object.xml:294
+#: doc/classes/Object.xml:299
msgid "Returns the list of signals as an [Array] of dictionaries."
msgstr ""
-#: doc/classes/Object.xml:303
+#: doc/classes/Object.xml:308
msgid ""
"Returns [code]true[/code] if a metadata entry is found with the given "
"[code]name[/code]."
msgstr ""
-#: doc/classes/Object.xml:312
+#: doc/classes/Object.xml:317
msgid ""
"Returns [code]true[/code] if the object contains the given [code]method[/"
"code]."
msgstr ""
-#: doc/classes/Object.xml:321
+#: doc/classes/Object.xml:326
msgid "Returns [code]true[/code] if the given [code]signal[/code] exists."
msgstr ""
-#: doc/classes/Object.xml:330
+#: doc/classes/Object.xml:335
msgid ""
"Returns [code]true[/code] if the given user-defined [code]signal[/code] "
"exists. Only signals added using [method add_user_signal] are taken into "
"account."
msgstr ""
-#: doc/classes/Object.xml:337
+#: doc/classes/Object.xml:342
msgid "Returns [code]true[/code] if signal emission blocking is enabled."
msgstr ""
-#: doc/classes/Object.xml:346
+#: doc/classes/Object.xml:351
msgid ""
"Returns [code]true[/code] if the object inherits from the given [code]class[/"
"code]."
msgstr ""
-#: doc/classes/Object.xml:357
+#: doc/classes/Object.xml:362
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32774,13 +33359,13 @@ msgid ""
"code], [code]target[/code], and [code]method[/code]."
msgstr ""
-#: doc/classes/Object.xml:365
+#: doc/classes/Object.xml:370
msgid ""
"Returns [code]true[/code] if the [method Node.queue_free] method was called "
"for the object."
msgstr ""
-#: doc/classes/Object.xml:376
+#: doc/classes/Object.xml:381
msgid ""
"Send a given notification to the object, which will also trigger a call to "
"the [method _notification] method of all classes that the object inherits "
@@ -32792,34 +33377,42 @@ msgid ""
"and then down to its successive inheriting classes."
msgstr ""
-#: doc/classes/Object.xml:384
+#: doc/classes/Object.xml:389
msgid ""
"Notify the editor that the property list has changed, so that editor plugins "
"can take the new values into account. Does nothing on export builds."
msgstr ""
-#: doc/classes/Object.xml:393
+#: doc/classes/Object.xml:398
msgid "Removes a given entry from the object's metadata."
msgstr ""
-#: doc/classes/Object.xml:404
+#: doc/classes/Object.xml:409
msgid ""
"Assigns a new value to the given property. If the [code]property[/code] does "
-"not exist, nothing will happen."
+"not exist, nothing will happen.\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:413
+#: doc/classes/Object.xml:419
msgid "If set to [code]true[/code], signal emission is blocked."
msgstr ""
-#: doc/classes/Object.xml:424
+#: doc/classes/Object.xml:430
msgid ""
"Assigns a new value to the given property, after the current frame's physics "
"step. This is equivalent to calling [method set] via [method call_deferred], "
-"i.e. [code]call_deferred(\"set\", property, value)[/code]."
+"i.e. [code]call_deferred(\"set\", property, value)[/code].\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:435
+#: doc/classes/Object.xml:442
msgid ""
"Assigns a new value to the property identified by the [NodePath]. The node "
"path should be relative to the current object and can use the colon "
@@ -32831,19 +33424,19 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:449
+#: doc/classes/Object.xml:456
msgid ""
"Defines whether the object can translate strings (with calls to [method "
"tr]). Enabled by default."
msgstr ""
-#: doc/classes/Object.xml:460
+#: doc/classes/Object.xml:467
msgid ""
"Adds or changes a given entry in the object's metadata. Metadata are "
"serialized, and can take any [Variant] value."
msgstr ""
-#: doc/classes/Object.xml:469
+#: doc/classes/Object.xml:476
msgid ""
"Assigns a script to the object. Each object can have a single script "
"assigned to it, which are used to extend its functionality.\n"
@@ -32852,7 +33445,7 @@ msgid ""
"_init] method will be called."
msgstr ""
-#: doc/classes/Object.xml:477
+#: doc/classes/Object.xml:484
msgid ""
"Returns a [String] representing the object. If not overridden, defaults to "
"[code]\"[ClassName:RID]\"[/code].\n"
@@ -32860,7 +33453,7 @@ msgid ""
"representation."
msgstr ""
-#: doc/classes/Object.xml:487
+#: doc/classes/Object.xml:494
msgid ""
"Translates a message using translation catalogs configured in the Project "
"Settings.\n"
@@ -32869,35 +33462,35 @@ msgid ""
"set_message_translation]."
msgstr ""
-#: doc/classes/Object.xml:495
+#: doc/classes/Object.xml:502
msgid "Emitted whenever the object's script is changed."
msgstr ""
-#: doc/classes/Object.xml:501
+#: doc/classes/Object.xml:508
msgid "Called right when the object is initialized. Not available in script."
msgstr ""
-#: doc/classes/Object.xml:504
+#: doc/classes/Object.xml:511
msgid "Called before the object is about to be deleted."
msgstr ""
-#: doc/classes/Object.xml:507
+#: doc/classes/Object.xml:514
msgid ""
"Connects a signal in deferred mode. This way, signal emissions are stored in "
"a queue, then set on idle time."
msgstr ""
-#: doc/classes/Object.xml:510
+#: doc/classes/Object.xml:517
msgid "Persisting connections are saved when the object is serialized to file."
msgstr ""
-#: doc/classes/Object.xml:513
+#: doc/classes/Object.xml:520
msgid "One-shot connections disconnect themselves after emission."
msgstr ""
-#: doc/classes/Object.xml:516
+#: doc/classes/Object.xml:523
msgid ""
-"Connect a signal as reference counted. This means that a given signal can be "
+"Connect a signal as reference-counted. This means that a given signal can be "
"connected several times to the same target, and will only be fully "
"disconnected once no references are left."
msgstr ""
@@ -33362,10 +33955,29 @@ msgid "Returns the keycode of the given string (e.g. \"Escape\")."
msgstr ""
#: doc/classes/OS.xml:115
-msgid "Returns the command line arguments passed to the engine."
+msgid ""
+"Returns the command-line arguments passed to the engine.\n"
+"Command-line arguments can be written in any form, including both [code]--"
+"key value[/code] and [code]--key=value[/code] forms so they can be properly "
+"parsed, as long as custom command-line arguments do not conflict with engine "
+"arguments.\n"
+"You can also incorporate environment variables using the [method "
+"get_environment] method.\n"
+"You can set [code]editor/main_run_args[/code] in the Project Settings to "
+"define command-line arguments to be passed by the editor when running the "
+"project.\n"
+"Here's a minimal example on how to parse command-line arguments into a "
+"dictionary using the [code]--key=value[/code] form for arguments:\n"
+"[codeblock]\n"
+"var arguments = {}\n"
+"for argument in OS.get_cmdline_args():\n"
+" if argument.find(\"=\") > -1:\n"
+" var key_value = argument.split(\"=\")\n"
+" arguments[key_value[0].lstrip(\"--\")] = key_value[1]\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/OS.xml:122
+#: doc/classes/OS.xml:133
msgid ""
"Returns an array of MIDI device names.\n"
"The returned array will be empty if the system MIDI driver has not "
@@ -33373,14 +33985,14 @@ msgid ""
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:133
+#: doc/classes/OS.xml:144
msgid ""
"Returns current date as a dictionary of keys: [code]year[/code], "
"[code]month[/code], [code]day[/code], [code]weekday[/code], [code]dst[/code] "
"(Daylight Savings Time)."
msgstr ""
-#: doc/classes/OS.xml:142
+#: doc/classes/OS.xml:153
msgid ""
"Returns current datetime as a dictionary of keys: [code]year[/code], "
"[code]month[/code], [code]day[/code], [code]weekday[/code], [code]dst[/code] "
@@ -33388,7 +34000,7 @@ msgid ""
"[code]second[/code]."
msgstr ""
-#: doc/classes/OS.xml:151
+#: doc/classes/OS.xml:162
msgid ""
"Gets a dictionary of time values corresponding to the given UNIX epoch time "
"(in seconds).\n"
@@ -33397,22 +34009,22 @@ msgid ""
"the epoch."
msgstr ""
-#: doc/classes/OS.xml:161
+#: doc/classes/OS.xml:172
msgid "Returns an environment variable."
msgstr ""
-#: doc/classes/OS.xml:168
+#: doc/classes/OS.xml:179
msgid "Returns the path to the current engine executable."
msgstr ""
-#: doc/classes/OS.xml:175
+#: doc/classes/OS.xml:186
msgid ""
"With this function you can get the list of dangerous permissions that have "
"been granted to the Android application.\n"
"[b]Note:[/b] This method is implemented on Android."
msgstr ""
-#: doc/classes/OS.xml:185
+#: doc/classes/OS.xml:196
msgid ""
"Returns the given keycode as a string (e.g. Return values: [code]\"Escape\"[/"
"code], [code]\"Shift+Escape\"[/code]).\n"
@@ -33420,18 +34032,18 @@ msgid ""
"get_keycode_with_modifiers]."
msgstr ""
-#: doc/classes/OS.xml:193
+#: doc/classes/OS.xml:204
msgid "Returns the host OS locale."
msgstr ""
-#: doc/classes/OS.xml:200
+#: doc/classes/OS.xml:211
msgid ""
"Returns the model name of the current device.\n"
"[b]Note:[/b] This method is implemented on Android and iOS. Returns "
"[code]\"GenericDevice\"[/code] on unsupported platforms."
msgstr ""
-#: doc/classes/OS.xml:208
+#: doc/classes/OS.xml:219
msgid ""
"Returns the name of the host OS. Possible values are: [code]\"Android\"[/"
"code], [code]\"iOS\"[/code], [code]\"HTML5\"[/code], [code]\"OSX\"[/code], "
@@ -33439,81 +34051,81 @@ msgid ""
"[code]\"X11\"[/code]."
msgstr ""
-#: doc/classes/OS.xml:215
+#: doc/classes/OS.xml:226
msgid ""
"Returns the project's process ID.\n"
"[b]Note:[/b] This method is implemented on Android, iOS, Linux, macOS and "
"Windows."
msgstr ""
-#: doc/classes/OS.xml:223
+#: doc/classes/OS.xml:234
msgid "Returns the number of threads available on the host machine."
msgstr ""
-#: doc/classes/OS.xml:230
+#: doc/classes/OS.xml:241
msgid ""
"Returns the amount of time in milliseconds it took for the boot logo to "
"appear."
msgstr ""
-#: doc/classes/OS.xml:237
+#: doc/classes/OS.xml:248
msgid "Returns the maximum amount of static memory used (only works in debug)."
msgstr ""
-#: doc/classes/OS.xml:244
+#: doc/classes/OS.xml:255
msgid "Returns the amount of static memory being used by the program in bytes."
msgstr ""
-#: doc/classes/OS.xml:253
+#: doc/classes/OS.xml:264
msgid ""
"Returns the actual path to commonly used folders across different platforms. "
"Available locations are specified in [enum SystemDir].\n"
"[b]Note:[/b] This method is implemented on Android, Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:261
+#: doc/classes/OS.xml:272
msgid ""
"Returns the total number of available tablet drivers.\n"
"[b]Note:[/b] This method is implemented on Windows."
msgstr ""
-#: doc/classes/OS.xml:271
+#: doc/classes/OS.xml:282
msgid ""
"Returns the tablet driver name for the given index.\n"
"[b]Note:[/b] This method is implemented on Windows."
msgstr ""
-#: doc/classes/OS.xml:279
+#: doc/classes/OS.xml:290
msgid ""
"Returns the amount of time passed in milliseconds since the engine started."
msgstr ""
-#: doc/classes/OS.xml:286
+#: doc/classes/OS.xml:297
msgid ""
"Returns the amount of time passed in microseconds since the engine started."
msgstr ""
-#: doc/classes/OS.xml:295
+#: doc/classes/OS.xml:306
msgid "Returns current time as a dictionary of keys: hour, minute, second."
msgstr ""
-#: doc/classes/OS.xml:302
+#: doc/classes/OS.xml:313
msgid ""
"Returns the current time zone as a dictionary with the keys: bias and name."
msgstr ""
-#: doc/classes/OS.xml:309
+#: doc/classes/OS.xml:320
msgid ""
"Returns a string that is unique to the device.\n"
"[b]Note:[/b] Returns an empty string on HTML5 and UWP, as this method isn't "
"implemented on those platforms yet."
msgstr ""
-#: doc/classes/OS.xml:317
+#: doc/classes/OS.xml:328
msgid "Returns the current UNIX epoch timestamp."
msgstr ""
-#: doc/classes/OS.xml:326
+#: doc/classes/OS.xml:337
msgid ""
"Gets an epoch time value from a dictionary of time values.\n"
"[code]datetime[/code] must be populated with the following keys: [code]year[/"
@@ -33524,7 +34136,7 @@ msgid ""
"ignored."
msgstr ""
-#: doc/classes/OS.xml:335
+#: doc/classes/OS.xml:346
msgid ""
"Returns the absolute directory path where user data is written ([code]user://"
"[/code]).\n"
@@ -33542,11 +34154,11 @@ msgid ""
"[/code]."
msgstr ""
-#: doc/classes/OS.xml:348
+#: doc/classes/OS.xml:359
msgid "Returns [code]true[/code] if an environment variable exists."
msgstr ""
-#: doc/classes/OS.xml:357
+#: doc/classes/OS.xml:368
msgid ""
"Returns [code]true[/code] if the feature for the given feature tag is "
"supported in the currently running instance, depending on platform, build "
@@ -33557,7 +34169,7 @@ msgid ""
"[b]Note:[/b] Tag names are case-sensitive."
msgstr ""
-#: doc/classes/OS.xml:365
+#: doc/classes/OS.xml:376
msgid ""
"Returns [code]true[/code] if the Godot binary used to run the project is a "
"[i]debug[/i] export template, or when running in the editor.\n"
@@ -33568,26 +34180,26 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/OS.xml:376
+#: doc/classes/OS.xml:387
msgid ""
"Returns [code]true[/code] if the input keycode corresponds to a Unicode "
"character."
msgstr ""
-#: doc/classes/OS.xml:383
+#: doc/classes/OS.xml:394
msgid ""
"Returns [code]true[/code] if the engine was executed with [code]-v[/code] "
"(verbose stdout)."
msgstr ""
-#: doc/classes/OS.xml:390
+#: doc/classes/OS.xml:401
msgid ""
"If [code]true[/code], the [code]user://[/code] file system is persistent, so "
"that its state is the same after a player quits and starts the game again. "
"Relevant to the HTML5 platform, where this persistence may be unavailable."
msgstr ""
-#: doc/classes/OS.xml:399
+#: doc/classes/OS.xml:410
msgid ""
"Kill (terminate) the process identified by the given process ID ([code]pid[/"
"code]), e.g. the one returned by [method execute] in non-blocking mode.\n"
@@ -33597,37 +34209,37 @@ msgid ""
"Windows."
msgstr ""
-#: doc/classes/OS.xml:408
+#: doc/classes/OS.xml:419
msgid ""
"Initialises the singleton for the system MIDI driver.\n"
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:418
+#: doc/classes/OS.xml:429
msgid ""
"Shows all resources in the game. Optionally, the list can be written to a "
"file by specifying a file path in [code]tofile[/code]."
msgstr ""
-#: doc/classes/OS.xml:425
+#: doc/classes/OS.xml:436
msgid "Shows the list of loaded textures sorted by size in memory."
msgstr ""
-#: doc/classes/OS.xml:434
+#: doc/classes/OS.xml:445
msgid "Shows the number of resources loaded by the game of the given types."
msgstr ""
-#: doc/classes/OS.xml:443
+#: doc/classes/OS.xml:454
msgid "Shows all resources currently used by the game."
msgstr ""
-#: doc/classes/OS.xml:452
+#: doc/classes/OS.xml:463
msgid ""
"At the moment this function is only used by [code]AudioDriverOpenSL[/code] "
"to request permission for [code]RECORD_AUDIO[/code] on Android."
msgstr ""
-#: doc/classes/OS.xml:459
+#: doc/classes/OS.xml:470
msgid ""
"With this function you can request dangerous permissions since normal "
"permissions are automatically granted at install time in Android "
@@ -33635,15 +34247,15 @@ msgid ""
"[b]Note:[/b] This method is implemented on Android."
msgstr ""
-#: doc/classes/OS.xml:469
+#: doc/classes/OS.xml:480
msgid "Sets the name of the current thread."
msgstr ""
-#: doc/classes/OS.xml:478
+#: doc/classes/OS.xml:489
msgid "Enables backup saves if [code]enabled[/code] is [code]true[/code]."
msgstr ""
-#: doc/classes/OS.xml:487
+#: doc/classes/OS.xml:498
msgid ""
"Requests the OS to open a resource with the most appropriate program. For "
"example:\n"
@@ -33662,7 +34274,7 @@ msgid ""
"and Windows."
msgstr ""
-#: doc/classes/OS.xml:498
+#: doc/classes/OS.xml:509
msgid ""
"The exit code passed to the OS when the main loop exits. By convention, an "
"exit code of [code]0[/code] indicates success whereas a non-zero exit code "
@@ -33672,137 +34284,137 @@ msgid ""
"with an [code]exit_code[/code] argument passed."
msgstr ""
-#: doc/classes/OS.xml:502
+#: doc/classes/OS.xml:513
msgid ""
"If [code]true[/code], the engine optimizes for low processor usage by only "
"refreshing the screen if needed. Can improve battery consumption on mobile."
msgstr ""
-#: doc/classes/OS.xml:505
+#: doc/classes/OS.xml:516
msgid ""
"The amount of sleeping between frames when the low-processor usage mode is "
"enabled (in microseconds). Higher values will result in lower CPU usage."
msgstr ""
-#: doc/classes/OS.xml:508
-msgid "The current tablet drvier in use."
+#: doc/classes/OS.xml:519
+msgid "The current tablet driver in use."
msgstr ""
-#: doc/classes/OS.xml:513
+#: doc/classes/OS.xml:524
msgid ""
"The GLES2 rendering backend. It uses OpenGL ES 2.0 on mobile devices, OpenGL "
"2.1 on desktop platforms and WebGL 1.0 on the web."
msgstr ""
-#: doc/classes/OS.xml:516
+#: doc/classes/OS.xml:527
msgid "The Vulkan rendering backend."
msgstr ""
-#: doc/classes/OS.xml:519
+#: doc/classes/OS.xml:530
msgid "Sunday."
msgstr ""
-#: doc/classes/OS.xml:522
+#: doc/classes/OS.xml:533
msgid "Monday."
msgstr ""
-#: doc/classes/OS.xml:525
+#: doc/classes/OS.xml:536
msgid "Tuesday."
msgstr ""
-#: doc/classes/OS.xml:528
+#: doc/classes/OS.xml:539
msgid "Wednesday."
msgstr ""
-#: doc/classes/OS.xml:531
+#: doc/classes/OS.xml:542
msgid "Thursday."
msgstr ""
-#: doc/classes/OS.xml:534
+#: doc/classes/OS.xml:545
msgid "Friday."
msgstr ""
-#: doc/classes/OS.xml:537
+#: doc/classes/OS.xml:548
msgid "Saturday."
msgstr ""
-#: doc/classes/OS.xml:540
+#: doc/classes/OS.xml:551
msgid "January."
msgstr ""
-#: doc/classes/OS.xml:543
+#: doc/classes/OS.xml:554
msgid "February."
msgstr ""
-#: doc/classes/OS.xml:546
+#: doc/classes/OS.xml:557
msgid "March."
msgstr ""
-#: doc/classes/OS.xml:549
+#: doc/classes/OS.xml:560
msgid "April."
msgstr ""
-#: doc/classes/OS.xml:552
+#: doc/classes/OS.xml:563
msgid "May."
msgstr ""
-#: doc/classes/OS.xml:555
+#: doc/classes/OS.xml:566
msgid "June."
msgstr ""
-#: doc/classes/OS.xml:558
+#: doc/classes/OS.xml:569
msgid "July."
msgstr ""
-#: doc/classes/OS.xml:561
+#: doc/classes/OS.xml:572
msgid "August."
msgstr ""
-#: doc/classes/OS.xml:564
+#: doc/classes/OS.xml:575
msgid "September."
msgstr ""
-#: doc/classes/OS.xml:567
+#: doc/classes/OS.xml:578
msgid "October."
msgstr ""
-#: doc/classes/OS.xml:570
+#: doc/classes/OS.xml:581
msgid "November."
msgstr ""
-#: doc/classes/OS.xml:573
+#: doc/classes/OS.xml:584
msgid "December."
msgstr ""
-#: doc/classes/OS.xml:576
+#: doc/classes/OS.xml:587
msgid "Desktop directory path."
msgstr ""
-#: doc/classes/OS.xml:579
+#: doc/classes/OS.xml:590
msgid "DCIM (Digital Camera Images) directory path."
msgstr ""
-#: doc/classes/OS.xml:582
+#: doc/classes/OS.xml:593
msgid "Documents directory path."
msgstr ""
-#: doc/classes/OS.xml:585
+#: doc/classes/OS.xml:596
msgid "Downloads directory path."
msgstr ""
-#: doc/classes/OS.xml:588
+#: doc/classes/OS.xml:599
msgid "Movies directory path."
msgstr ""
-#: doc/classes/OS.xml:591
+#: doc/classes/OS.xml:602
msgid "Music directory path."
msgstr ""
-#: doc/classes/OS.xml:594
+#: doc/classes/OS.xml:605
msgid "Pictures directory path."
msgstr ""
-#: doc/classes/OS.xml:597
+#: doc/classes/OS.xml:608
msgid "Ringtones directory path."
msgstr ""
@@ -33857,7 +34469,15 @@ msgid ""
"should always be preferred."
msgstr ""
-#: doc/classes/PackedByteArray.xml:85
+#: doc/classes/PackedByteArray.xml:87 doc/classes/PackedColorArray.xml:53
+#: doc/classes/PackedFloat32Array.xml:54 doc/classes/PackedFloat64Array.xml:54
+#: doc/classes/PackedInt32Array.xml:54 doc/classes/PackedInt64Array.xml:54
+#: doc/classes/PackedStringArray.xml:53 doc/classes/PackedVector2Array.xml:53
+#: doc/classes/PackedVector3Array.xml:53
+msgid "Returns [code]true[/code] if the array contains [code]value[/code]."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:94
msgid ""
"Returns a hexadecimal representation of this array as a [String].\n"
"[codeblock]\n"
@@ -33866,39 +34486,48 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/PackedByteArray.xml:100 doc/classes/PackedColorArray.xml:55
-#: doc/classes/PackedFloat32Array.xml:56 doc/classes/PackedFloat64Array.xml:56
-#: doc/classes/PackedStringArray.xml:55 doc/classes/PackedVector2Array.xml:55
-#: doc/classes/PackedVector3Array.xml:55
+#: doc/classes/PackedByteArray.xml:109 doc/classes/PackedColorArray.xml:64
+#: doc/classes/PackedFloat32Array.xml:65 doc/classes/PackedFloat64Array.xml:65
+#: doc/classes/PackedStringArray.xml:64 doc/classes/PackedVector2Array.xml:64
+#: doc/classes/PackedVector3Array.xml:64
msgid ""
"Inserts a new element at a given position in the array. The position must be "
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PackedByteArray.xml:134 doc/classes/PackedColorArray.xml:89
-#: doc/classes/PackedFloat32Array.xml:90 doc/classes/PackedFloat64Array.xml:90
-#: doc/classes/PackedInt32Array.xml:90 doc/classes/PackedInt64Array.xml:90
-#: doc/classes/PackedStringArray.xml:89 doc/classes/PackedVector2Array.xml:89
-#: doc/classes/PackedVector3Array.xml:89
+#: doc/classes/PackedByteArray.xml:143 doc/classes/PackedColorArray.xml:98
+#: doc/classes/PackedFloat32Array.xml:99 doc/classes/PackedFloat64Array.xml:99
+#: doc/classes/PackedInt32Array.xml:99 doc/classes/PackedInt64Array.xml:99
+#: doc/classes/PackedStringArray.xml:98 doc/classes/PackedVector2Array.xml:98
+#: doc/classes/PackedVector3Array.xml:98
msgid ""
"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."
msgstr ""
-#: doc/classes/PackedByteArray.xml:145
+#: doc/classes/PackedByteArray.xml:154
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PackedByteArray.xml:152 doc/classes/PackedColorArray.xml:107
-#: doc/classes/PackedFloat32Array.xml:108
-#: doc/classes/PackedFloat64Array.xml:108 doc/classes/PackedStringArray.xml:107
-#: doc/classes/PackedVector2Array.xml:107
-#: doc/classes/PackedVector3Array.xml:107
+#: doc/classes/PackedByteArray.xml:161 doc/classes/PackedColorArray.xml:116
+#: doc/classes/PackedFloat32Array.xml:117
+#: doc/classes/PackedFloat64Array.xml:117 doc/classes/PackedStringArray.xml:116
+#: doc/classes/PackedVector2Array.xml:116
+#: doc/classes/PackedVector3Array.xml:116
msgid "Returns the size of the array."
msgstr ""
-#: doc/classes/PackedByteArray.xml:163
+#: doc/classes/PackedByteArray.xml:168 doc/classes/PackedColorArray.xml:123
+#: doc/classes/PackedFloat32Array.xml:124
+#: doc/classes/PackedFloat64Array.xml:124 doc/classes/PackedInt32Array.xml:124
+#: doc/classes/PackedInt64Array.xml:124 doc/classes/PackedStringArray.xml:123
+#: doc/classes/PackedVector2Array.xml:123
+#: doc/classes/PackedVector3Array.xml:123
+msgid "Sorts the elements of the array in ascending order."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:179
msgid ""
"Returns the slice of the [PackedByteArray] between indices (inclusive) as a "
"new [PackedByteArray]. Any negative index is considered to be from the end "
@@ -33926,12 +34555,12 @@ msgstr ""
msgid "Appends a [PackedColorArray] at the end of this array."
msgstr ""
-#: doc/classes/PackedColorArray.xml:71 doc/classes/PackedInt32Array.xml:72
-#: doc/classes/PackedInt64Array.xml:72
+#: doc/classes/PackedColorArray.xml:80 doc/classes/PackedInt32Array.xml:81
+#: doc/classes/PackedInt64Array.xml:81
msgid "Appends a value to the array."
msgstr ""
-#: doc/classes/PackedColorArray.xml:100
+#: doc/classes/PackedColorArray.xml:109
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -33961,8 +34590,8 @@ msgstr ""
msgid "Appends a [PackedFloat32Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedFloat32Array.xml:101
-#: doc/classes/PackedFloat64Array.xml:101
+#: doc/classes/PackedFloat32Array.xml:110
+#: doc/classes/PackedFloat64Array.xml:110
msgid "Changes the float at the given index."
msgstr ""
@@ -34015,17 +34644,17 @@ msgstr ""
msgid "Appends a [PackedInt32Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:56 doc/classes/PackedInt64Array.xml:56
+#: doc/classes/PackedInt32Array.xml:65 doc/classes/PackedInt64Array.xml:65
msgid ""
"Inserts a new integer at a given position in the array. The position must be "
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:101 doc/classes/PackedInt64Array.xml:101
+#: doc/classes/PackedInt32Array.xml:110 doc/classes/PackedInt64Array.xml:110
msgid "Changes the integer at the given index."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:108 doc/classes/PackedInt64Array.xml:108
+#: doc/classes/PackedInt32Array.xml:117 doc/classes/PackedInt64Array.xml:117
msgid "Returns the array size."
msgstr ""
@@ -34066,6 +34695,14 @@ msgid ""
"Can be used to save a node to a file. When saving, the node as well as all "
"the node it owns get saved (see [code]owner[/code] property on [Node]).\n"
"[b]Note:[/b] The node doesn't need to own itself.\n"
+"[b]Example of loading a saved scene:[/b]\n"
+"[codeblock]\n"
+"# Use `load()` instead of `preload()` if the path isn't known at compile-"
+"time.\n"
+"var scene = preload(\"res://scene.tscn\").instance()\n"
+"# Add the node as a child of the node the script is attached to.\n"
+"add_child(scene)\n"
+"[/codeblock]\n"
"[b]Example of saving a node with different owners:[/b] The following example "
"creates 3 objects: [code]Node2D[/code] ([code]node[/code]), "
"[code]RigidBody2D[/code] ([code]rigid[/code]) and [code]CollisionObject2D[/"
@@ -34097,29 +34734,29 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/PackedScene.xml:40
+#: doc/classes/PackedScene.xml:47
msgid "Returns [code]true[/code] if the scene file has nodes."
msgstr ""
-#: doc/classes/PackedScene.xml:47
+#: doc/classes/PackedScene.xml:54
msgid ""
"Returns the [code]SceneState[/code] representing the scene file contents."
msgstr ""
-#: doc/classes/PackedScene.xml:56
+#: doc/classes/PackedScene.xml:63
msgid ""
"Instantiates the scene's node hierarchy. Triggers child scene "
"instantiation(s). Triggers a [constant Node.NOTIFICATION_INSTANCED] "
"notification on the root node."
msgstr ""
-#: doc/classes/PackedScene.xml:65
+#: doc/classes/PackedScene.xml:72
msgid ""
"Pack will ignore any sub-nodes not owned by given node. See [member Node."
"owner]."
msgstr ""
-#: doc/classes/PackedScene.xml:71
+#: doc/classes/PackedScene.xml:78
msgid ""
"A dictionary representation of the scene contents.\n"
"Available keys include \"rnames\" and \"variants\" for resources, "
@@ -34128,18 +34765,18 @@ msgid ""
"connections, and \"version\" for the format style of the PackedScene."
msgstr ""
-#: doc/classes/PackedScene.xml:77
+#: doc/classes/PackedScene.xml:84
msgid "If passed to [method instance], blocks edits to the scene state."
msgstr ""
-#: doc/classes/PackedScene.xml:80
+#: doc/classes/PackedScene.xml:87
msgid ""
"If passed to [method instance], provides local scene resources to the local "
"scene.\n"
"[b]Note:[/b] Only available in editor builds."
msgstr ""
-#: doc/classes/PackedScene.xml:84
+#: doc/classes/PackedScene.xml:91
msgid ""
"If passed to [method instance], provides local scene resources to the local "
"scene. Only the main scene should receive the main edit state.\n"
@@ -34167,11 +34804,11 @@ msgstr ""
msgid "Appends a [PackedStringArray] at the end of this array."
msgstr ""
-#: doc/classes/PackedStringArray.xml:71
+#: doc/classes/PackedStringArray.xml:80
msgid "Appends a string element at end of the array."
msgstr ""
-#: doc/classes/PackedStringArray.xml:100
+#: doc/classes/PackedStringArray.xml:109
msgid "Changes the [String] at the given index."
msgstr ""
@@ -34196,11 +34833,11 @@ msgstr ""
msgid "Appends a [PackedVector2Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedVector2Array.xml:71
+#: doc/classes/PackedVector2Array.xml:80
msgid "Inserts a [Vector2] at the end."
msgstr ""
-#: doc/classes/PackedVector2Array.xml:100
+#: doc/classes/PackedVector2Array.xml:109
msgid "Changes the [Vector2] at the given index."
msgstr ""
@@ -34225,11 +34862,11 @@ msgstr ""
msgid "Appends a [PackedVector3Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedVector3Array.xml:71
+#: doc/classes/PackedVector3Array.xml:80
msgid "Inserts a [Vector3] at the end."
msgstr ""
-#: doc/classes/PackedVector3Array.xml:100
+#: doc/classes/PackedVector3Array.xml:109
msgid "Changes the [Vector3] at the given index."
msgstr ""
@@ -35120,13 +35757,55 @@ msgid ""
"as the values displayed in the [b]Monitor[/b] tab in the editor's "
"[b]Debugger[/b] panel. By using the [method get_monitor] method of this "
"class, you can access this data from your code.\n"
+"You can add custom monitors using the [method add_custom_monitor] method. "
+"Custom monitors are available in [b]Monitor[/b] tab in the editor's "
+"[b]Debugger[/b] panel together with built-in monitors.\n"
"[b]Note:[/b] A few of these monitors are only available in debug mode and "
"will always return 0 when used in a release build.\n"
"[b]Note:[/b] Many of these monitors are not updated in real-time, so there "
-"may be a short delay between changes."
+"may be a short delay between changes.\n"
+"[b]Note:[/b] Custom monitors do not support negative values. Negative values "
+"are clamped to 0."
+msgstr ""
+
+#: doc/classes/Performance.xml:26
+msgid ""
+"Adds a custom monitor with name same as id. You can specify the category of "
+"monitor using '/' in id. If there are more than one '/' then default "
+"category is used. Default category is \"Custom\".\n"
+"[codeblock]\n"
+"Performance.add_custom_monitor(\"MyCategory/MyMonitor\", some_callable) # "
+"Adds monitor with name \"MyName\" to category \"MyCategory\"\n"
+"Performance.add_custom_monitor(\"MyMonitor\", some_callable) # Adds monitor "
+"with name \"MyName\" to category \"Custom\"\n"
+"# Note: \"MyCategory/MyMonitor\" and \"MyMonitor\" have same name but "
+"different ids so above code is valid\n"
+"Performance.add_custom_monitor(\"Custom/MyMonitor\", some_callable) # Adds "
+"monitor with name \"MyName\" to category \"Custom\"\n"
+"# Note: \"MyMonitor\" and \"Custom/MyMonitor\" have same name and same "
+"category but different ids so above code is valid\n"
+"Performance.add_custom_monitor(\"MyCategoryOne/MyCategoryTwo/MyMonitor\", "
+"some_callable) # Adds monitor with name \"MyCategoryOne/MyCategoryTwo/"
+"MyMonitor\" to category \"Custom\"\n"
+"[/codeblock]\n"
+"The debugger calls the callable to get the value of custom monitor. The "
+"callable must return a number.\n"
+"Callables are called with arguments supplied in argument array.\n"
+"[b]Note:[/b] It throws an error if given id is already present."
+msgstr ""
+
+#: doc/classes/Performance.xml:46
+msgid ""
+"Returns the value of custom monitor with given id. The callable is called to "
+"get the value of custom monitor.\n"
+"[b]Note:[/b] It throws an error if the given id is absent."
+msgstr ""
+
+#: doc/classes/Performance.xml:54
+msgid "Returns the names of active custom monitors in an array."
msgstr ""
-#: doc/classes/Performance.xml:20
+#: doc/classes/Performance.xml:63
msgid ""
"Returns the value of one of the available monitors. You should provide one "
"of the [enum Monitor] constants as the argument, like this:\n"
@@ -35136,123 +35815,139 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Performance.xml:29
+#: doc/classes/Performance.xml:73
+msgid "Returns the last tick in which custom monitor was added/removed."
+msgstr ""
+
+#: doc/classes/Performance.xml:82
+msgid ""
+"Returns true if custom monitor with the given id is present otherwise "
+"returns false."
+msgstr ""
+
+#: doc/classes/Performance.xml:91
+msgid ""
+"Removes the custom monitor with given id.\n"
+"[b]Note:[/b] It throws an error if the given id is already absent."
+msgstr ""
+
+#: doc/classes/Performance.xml:98
msgid "Number of frames per second."
msgstr ""
-#: doc/classes/Performance.xml:32
+#: doc/classes/Performance.xml:101
msgid "Time it took to complete one frame, in seconds."
msgstr ""
-#: doc/classes/Performance.xml:35
+#: doc/classes/Performance.xml:104
msgid "Time it took to complete one physics frame, in seconds."
msgstr ""
-#: doc/classes/Performance.xml:38
+#: doc/classes/Performance.xml:107
msgid ""
"Static memory currently used, in bytes. Not available in release builds."
msgstr ""
-#: doc/classes/Performance.xml:41
+#: doc/classes/Performance.xml:110
msgid "Available static memory. Not available in release builds."
msgstr ""
-#: doc/classes/Performance.xml:44
+#: doc/classes/Performance.xml:113
msgid ""
"Largest amount of memory the message queue buffer has used, in bytes. The "
"message queue is used for deferred functions calls and notifications."
msgstr ""
-#: doc/classes/Performance.xml:47
+#: doc/classes/Performance.xml:116
msgid "Number of objects currently instanced (including nodes)."
msgstr ""
-#: doc/classes/Performance.xml:50
+#: doc/classes/Performance.xml:119
msgid "Number of resources currently used."
msgstr ""
-#: doc/classes/Performance.xml:53
+#: doc/classes/Performance.xml:122
msgid ""
"Number of nodes currently instanced in the scene tree. This also includes "
"the root node."
msgstr ""
-#: doc/classes/Performance.xml:56
+#: doc/classes/Performance.xml:125
msgid ""
"Number of orphan nodes, i.e. nodes which are not parented to a node of the "
"scene tree."
msgstr ""
-#: doc/classes/Performance.xml:59
+#: doc/classes/Performance.xml:128
msgid "3D objects drawn per frame."
msgstr ""
-#: doc/classes/Performance.xml:62
+#: doc/classes/Performance.xml:131
msgid "Vertices drawn per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:65
+#: doc/classes/Performance.xml:134
msgid "Material changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:68
+#: doc/classes/Performance.xml:137
msgid "Shader changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:71
+#: doc/classes/Performance.xml:140
msgid "Render surface changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:74
+#: doc/classes/Performance.xml:143
msgid "Draw calls per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:77 doc/classes/RenderingServer.xml:3805
+#: doc/classes/Performance.xml:146 doc/classes/RenderingServer.xml:3816
msgid ""
"The amount of video memory used, i.e. texture and vertex memory combined."
msgstr ""
-#: doc/classes/Performance.xml:80 doc/classes/RenderingServer.xml:3808
+#: doc/classes/Performance.xml:149 doc/classes/RenderingServer.xml:3819
msgid "The amount of texture memory used."
msgstr ""
-#: doc/classes/Performance.xml:83 doc/classes/RenderingServer.xml:3811
+#: doc/classes/Performance.xml:152 doc/classes/RenderingServer.xml:3822
msgid "The amount of vertex memory used."
msgstr ""
-#: doc/classes/Performance.xml:86 doc/classes/RenderingServer.xml:3802
+#: doc/classes/Performance.xml:155 doc/classes/RenderingServer.xml:3813
msgid "Unimplemented in the GLES2 rendering backend, always returns 0."
msgstr ""
-#: doc/classes/Performance.xml:89
+#: doc/classes/Performance.xml:158
msgid "Number of active [RigidBody2D] nodes in the game."
msgstr ""
-#: doc/classes/Performance.xml:92
+#: doc/classes/Performance.xml:161
msgid "Number of collision pairs in the 2D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:95
+#: doc/classes/Performance.xml:164
msgid "Number of islands in the 2D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:98
+#: doc/classes/Performance.xml:167
msgid "Number of active [RigidBody3D] and [VehicleBody3D] nodes in the game."
msgstr ""
-#: doc/classes/Performance.xml:101
+#: doc/classes/Performance.xml:170
msgid "Number of collision pairs in the 3D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:104
+#: doc/classes/Performance.xml:173
msgid "Number of islands in the 3D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:107
+#: doc/classes/Performance.xml:176
msgid "Output latency of the [AudioServer]."
msgstr ""
-#: doc/classes/Performance.xml:110
+#: doc/classes/Performance.xml:179
msgid "Represents the size of the [enum Monitor] enum."
msgstr ""
@@ -35276,27 +35971,27 @@ msgstr ""
msgid "Damps the body's rotation if greater than [code]0[/code]."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:70 doc/classes/RigidBody3D.xml:132
+#: doc/classes/PhysicalBone3D.xml:70 doc/classes/RigidBody3D.xml:139
msgid "Lock the body's rotation in the X axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:73 doc/classes/RigidBody3D.xml:135
+#: doc/classes/PhysicalBone3D.xml:73 doc/classes/RigidBody3D.xml:142
msgid "Lock the body's rotation in the Y axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:76 doc/classes/RigidBody3D.xml:138
+#: doc/classes/PhysicalBone3D.xml:76 doc/classes/RigidBody3D.xml:145
msgid "Lock the body's rotation in the Z axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:79 doc/classes/RigidBody3D.xml:141
+#: doc/classes/PhysicalBone3D.xml:79 doc/classes/RigidBody3D.xml:148
msgid "Lock the body's movement in the X axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:82 doc/classes/RigidBody3D.xml:144
+#: doc/classes/PhysicalBone3D.xml:82 doc/classes/RigidBody3D.xml:151
msgid "Lock the body's movement in the Y axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:85 doc/classes/RigidBody3D.xml:147
+#: doc/classes/PhysicalBone3D.xml:85 doc/classes/RigidBody3D.xml:154
msgid "Lock the body's movement in the Z axis."
msgstr ""
@@ -35351,12 +36046,12 @@ msgstr ""
msgid "Damps the body's movement if greater than [code]0[/code]."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:118 doc/classes/RigidBody2D.xml:158
-#: doc/classes/RigidBody3D.xml:175
+#: doc/classes/PhysicalBone3D.xml:118 doc/classes/RigidBody2D.xml:159
+#: doc/classes/RigidBody3D.xml:183
msgid "The body's mass."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:121 doc/classes/RigidBody3D.xml:188
+#: doc/classes/PhysicalBone3D.xml:121 doc/classes/RigidBody3D.xml:196
msgid ""
"The body's weight based on its mass and the global 3D gravity. Global values "
"are set in [b]Project > Project Settings > Physics > 3d[/b]."
@@ -35663,7 +36358,7 @@ msgid "The inverse of the mass of the body."
msgstr ""
#: doc/classes/PhysicsDirectBodyState2D.xml:195
-#: doc/classes/PhysicsDirectBodyState3D.xml:198 doc/classes/RigidBody2D.xml:155
+#: doc/classes/PhysicsDirectBodyState3D.xml:198 doc/classes/RigidBody2D.xml:156
msgid "The body's linear velocity."
msgstr ""
@@ -36216,7 +36911,7 @@ msgid ""
msgstr ""
#: doc/classes/PhysicsServer2D.xml:620 doc/classes/PhysicsServer3D.xml:637
-#: doc/classes/RigidBody3D.xml:120
+#: doc/classes/RigidBody3D.xml:127
msgid ""
"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."
@@ -37281,47 +37976,64 @@ msgid ""
"collision queries. See also [PhysicsShapeQueryResult2D]."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:18
-msgid ""
-"Sets the [Shape2D] that will be used for collision/intersection queries."
-msgstr ""
-
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:24
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:15
msgid "If [code]true[/code], the query will take [Area2D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:18
msgid ""
"If [code]true[/code], the query will take [PhysicsBody2D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:30
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:30
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:21
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:21
msgid "The physics layer(s) the query will take into account (as a bitmask)."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:33
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:33
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:24
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:24
msgid ""
"The list of objects or object [RID]s that will be excluded from collisions."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:36
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:36 doc/classes/Shape3D.xml:16
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:27 doc/classes/Shape3D.xml:16
msgid "The collision margin for the shape."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:39
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:30
msgid "The motion of the shape being queried for."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:42
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:39
-msgid "The queried shape's [RID]. See also [method set_shape]."
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:33
+msgid ""
+"The [Shape2D] that will be used for collision/intersection queries. This "
+"stores the actual reference which avoids the shape to be released while "
+"being used for queries, so always prefer using this over [member shape_rid]."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:36
+msgid ""
+"The queried shape's [RID] that will be used for collision/intersection "
+"queries. Use this over [member shape] if you want to optimize for "
+"performance using the Servers API:\n"
+"[codeblock]\n"
+"var shape_rid = PhysicsServer2D.circle_shape_create()\n"
+"var radius = 64\n"
+"PhysicsServer2D.shape_set_data(shape_rid, radius)\n"
+"\n"
+"var params = PhysicsShapeQueryParameters2D.new()\n"
+"params.shape_rid = shape_rid\n"
+"\n"
+"# Execute physics queries here...\n"
+"\n"
+"# Release the shape when done with physics queries.\n"
+"PhysicsServer2D.free_rid(shape_rid)\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:45
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:42
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:52
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:49
msgid "The queried shape's transform matrix."
msgstr ""
@@ -37335,18 +38047,40 @@ msgid ""
"collision queries. See also [PhysicsShapeQueryResult3D]."
msgstr ""
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:15
+msgid "If [code]true[/code], the query will take [Area3D]s into account."
+msgstr ""
+
#: doc/classes/PhysicsShapeQueryParameters3D.xml:18
msgid ""
-"Sets the [Shape3D] that will be used for collision/intersection queries."
+"If [code]true[/code], the query will take [PhysicsBody3D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:24
-msgid "If [code]true[/code], the query will take [Area3D]s into account."
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:30
+msgid ""
+"The [Shape3D] that will be used for collision/intersection queries. This "
+"stores the actual reference which avoids the shape to be released while "
+"being used for queries, so always prefer using this over [member shape_rid]."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:33
msgid ""
-"If [code]true[/code], the query will take [PhysicsBody3D]s into account."
+"The queried shape's [RID] that will be used for collision/intersection "
+"queries. Use this over [member shape] if you want to optimize for "
+"performance using the Servers API:\n"
+"[codeblock]\n"
+"var shape_rid = PhysicsServer3D.shape_create(PhysicsServer3D.SHAPE_SPHERE)\n"
+"var radius = 2.0\n"
+"PhysicsServer3D.shape_set_data(shape_rid, radius)\n"
+"\n"
+"var params = PhysicsShapeQueryParameters3D.new()\n"
+"params.shape_rid = shape_rid\n"
+"\n"
+"# Execute physics queries here...\n"
+"\n"
+"# Release the shape when done with physics queries.\n"
+"PhysicsServer3D.free_rid(shape_rid)\n"
+"[/codeblock]"
msgstr ""
#: doc/classes/PhysicsShapeQueryResult2D.xml:4
@@ -37487,92 +38221,94 @@ msgid ""
"code]."
msgstr ""
-#: doc/classes/Plane.xml:72
-msgid "Returns a point on the plane."
-msgstr ""
-
-#: doc/classes/Plane.xml:83
+#: doc/classes/Plane.xml:76
msgid ""
-"Returns [code]true[/code] if [code]point[/code] is inside the plane (by a "
-"very minimum [code]epsilon[/code] threshold)."
+"Returns [code]true[/code] if [code]point[/code] is inside the plane. "
+"Comparison uses a custom minimum [code]epsilon[/code] threshold."
msgstr ""
-#: doc/classes/Plane.xml:94
+#: doc/classes/Plane.xml:87
msgid ""
"Returns the intersection point of the three planes [code]b[/code], [code]c[/"
"code] and this plane. If no intersection is found, [code]null[/code] is "
"returned."
msgstr ""
-#: doc/classes/Plane.xml:105
+#: doc/classes/Plane.xml:98
msgid ""
"Returns the intersection point of a ray consisting of the position "
"[code]from[/code] and the direction normal [code]dir[/code] with this plane. "
"If no intersection is found, [code]null[/code] is returned."
msgstr ""
-#: doc/classes/Plane.xml:116
+#: doc/classes/Plane.xml:109
msgid ""
"Returns the intersection point of a segment from position [code]begin[/code] "
"to position [code]end[/code] with this plane. If no intersection is found, "
"[code]null[/code] is returned."
msgstr ""
-#: doc/classes/Plane.xml:125
+#: doc/classes/Plane.xml:118
msgid ""
"Returns [code]true[/code] if this plane and [code]plane[/code] are "
"approximately equal, by running [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/Plane.xml:134
+#: doc/classes/Plane.xml:127
msgid ""
"Returns [code]true[/code] if [code]point[/code] is located above the plane."
msgstr ""
-#: doc/classes/Plane.xml:141
+#: doc/classes/Plane.xml:134
msgid "Returns a copy of the plane, normalized."
msgstr ""
-#: doc/classes/Plane.xml:150
+#: doc/classes/Plane.xml:143
msgid ""
-"Returns the orthogonal projection of point [code]p[/code] into a point in "
-"the plane."
+"Returns the orthogonal projection of [code]point[/code] into a point in the "
+"plane."
msgstr ""
-#: doc/classes/Plane.xml:156
+#: doc/classes/Plane.xml:149
msgid ""
-"Distance from the origin to the plane, in the direction of [member normal]."
+"The distance from the origin to the plane, in the direction of [member "
+"normal]. This value is typically non-negative.\n"
+"In the scalar equation of the plane [code]ax + by + cz = d[/code], this is "
+"[code]d[/code], while the [code](a, b, c)[/code] coordinates are represented "
+"by the [member normal] property."
msgstr ""
-#: doc/classes/Plane.xml:159
+#: doc/classes/Plane.xml:153
msgid ""
-"The normal of the plane. \"Over\" or \"Above\" the plane is considered the "
-"side of the plane towards where the normal is pointing."
+"The normal of the plane, which must be normalized.\n"
+"In the scalar equation of the plane [code]ax + by + cz = d[/code], this is "
+"the vector [code](a, b, c)[/code], where [code]d[/code] is the [member d] "
+"property."
msgstr ""
-#: doc/classes/Plane.xml:162
-msgid "The [member normal]'s X component."
+#: doc/classes/Plane.xml:157
+msgid "The X component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:165
-msgid "The [member normal]'s Y component."
+#: doc/classes/Plane.xml:160
+msgid "The Y component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:168
-msgid "The [member normal]'s Z component."
+#: doc/classes/Plane.xml:163
+msgid "The Z component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:173
-msgid "A plane that extends in the Y and Z axes."
+#: doc/classes/Plane.xml:168
+msgid "A plane that extends in the Y and Z axes (normal vector points +X)."
msgstr ""
-#: doc/classes/Plane.xml:176
-msgid "A plane that extends in the X and Z axes."
+#: doc/classes/Plane.xml:171
+msgid "A plane that extends in the X and Z axes (normal vector points +Y)."
msgstr ""
-#: doc/classes/Plane.xml:179
-msgid "A plane that extends in the X and Y axes."
+#: doc/classes/Plane.xml:174
+msgid "A plane that extends in the X and Y axes (normal vector points +Z)."
msgstr ""
#: doc/classes/PlaneMesh.xml:4
@@ -38283,18 +39019,25 @@ msgstr ""
#: doc/classes/PrimitiveMesh.xml:16
msgid ""
-"Returns mesh arrays used to constitute surface of [Mesh]. Mesh arrays can be "
-"used with [ArrayMesh] to create new surfaces."
+"Returns mesh arrays used to constitute surface of [Mesh]. The result can be "
+"passed to [method ArrayMesh.add_surface_from_arrays] to create a new "
+"surface. For example:\n"
+"[codeblock]\n"
+"var c := CylinderMesh.new()\n"
+"var arr_mesh := ArrayMesh.new()\n"
+"arr_mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLES, c."
+"get_mesh_arrays())\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:22
+#: doc/classes/PrimitiveMesh.xml:27
msgid ""
"Overrides the [AABB] with one defined by user for use with frustum culling. "
"Especially useful to avoid unnexpected culling when using a shader to "
"offset vertices."
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:25
+#: doc/classes/PrimitiveMesh.xml:30
msgid ""
"If set, the order of the vertices in each triangle are reversed resulting in "
"the backside of the mesh being drawn.\n"
@@ -38302,7 +39045,7 @@ msgid ""
"[member BaseMaterial3D.cull_mode]."
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:29
+#: doc/classes/PrimitiveMesh.xml:34
msgid "The current [Material] of the primitive mesh."
msgstr ""
@@ -38733,11 +39476,17 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:260
msgid ""
+"Safer override for [member audio/output_latency] in the Web platform, to "
+"avoid audio issues especially on mobile devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:263
+msgid ""
"Setting to hardcode audio delay when playing video. Best to leave this "
"untouched unless you know what you are doing."
msgstr ""
-#: doc/classes/ProjectSettings.xml:263
+#: doc/classes/ProjectSettings.xml:266
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -38747,7 +39496,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:269
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -38757,27 +39506,27 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:269
+#: doc/classes/ProjectSettings.xml:272
msgid ""
"The default compression level for Zstandard. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
"speed. Decompression speed is mostly unaffected by the compression level."
msgstr ""
-#: doc/classes/ProjectSettings.xml:272
+#: doc/classes/ProjectSettings.xml:275
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:278
msgid ""
"Largest size limit (in power of 2) allowed when compressing using long-"
"distance matching with Zstandard. Higher values can result in better "
"compression, but will require more memory when compressing and decompressing."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:281
msgid ""
"If [code]true[/code], displays getters and setters in autocompletion results "
"in the script editor. This setting is meant to be used when porting old "
@@ -38785,74 +39534,55 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:281
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:284
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:287
+#: doc/classes/ProjectSettings.xml:294
msgid ""
"If [code]true[/code], enables specific GDScript warnings (see [code]debug/"
"gdscript/warnings/*[/code] settings). If [code]false[/code], disables all "
"GDScript warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
-msgid ""
-"If [code]true[/code], enables warnings when a function is declared with the "
-"same name as a constant."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:296
-msgid ""
-"If [code]true[/code], enables warnings when a function is declared with the "
-"same name as a variable. This will turn into an error in a future version "
-"when first-class functions become supported in GDScript."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:299
-msgid ""
-"If [code]true[/code], enables warnings when a function assigned to a "
-"variable may yield and return a function state instead of a value."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:302
+#: doc/classes/ProjectSettings.xml:300
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:303
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when dividing an integer by another "
"integer (the decimal part will be discarded)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when passing a floating-point value "
"to a function that expects an integer (it will be converted and lose "
"precision)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:314
+#: doc/classes/ProjectSettings.xml:312
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
@@ -38873,102 +39603,85 @@ msgid ""
"member variable)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:323
+#: doc/classes/ProjectSettings.xml:325
msgid ""
"If [code]true[/code], enables warnings when calling an expression that has "
"no effect on the surrounding code, such as writing [code]2 + 2[/code] as a "
"statement."
msgstr ""
-#: doc/classes/ProjectSettings.xml:326
+#: doc/classes/ProjectSettings.xml:328
msgid ""
"If [code]true[/code], enables warnings when calling a ternary expression "
"that has no effect on the surrounding code, such as writing [code]42 if "
"active else 0[/code] as a statement."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:331
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:334
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:335
+#: doc/classes/ProjectSettings.xml:337
msgid ""
"If [code]true[/code], enables warnings when assigning a variable using an "
"assignment operator like [code]+=[/code] if the variable wasn't previously "
"assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:338
+#: doc/classes/ProjectSettings.xml:340
msgid ""
"If [code]true[/code], enables warnings when unreachable code is detected "
"(such as after a [code]return[/code] statement that will always be executed)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:345
msgid ""
"If [code]true[/code], enables warnings when using an expression whose type "
"may not be compatible with the function parameter expected."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:348
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:347
+#: doc/classes/ProjectSettings.xml:351
msgid ""
"If [code]true[/code], enables warnings when calling a method whose presence "
"is not guaranteed at compile-time in the class."
msgstr ""
-#: doc/classes/ProjectSettings.xml:350
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], enables warnings when accessing a property whose "
"presence is not guaranteed at compile-time in the class."
msgstr ""
-#: doc/classes/ProjectSettings.xml:353
-msgid ""
-"If [code]true[/code], enables warnings when a function parameter is unused."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:356
-msgid ""
-"If [code]true[/code], enables warnings when a member variable is unused."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:363
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:362
+#: doc/classes/ProjectSettings.xml:366
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:365
-msgid ""
-"If [code]true[/code], enables warnings when a variable is declared with the "
-"same name as a function. This will turn into an error in a future version "
-"when first-class functions become supported in GDScript."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:368
+#: doc/classes/ProjectSettings.xml:369
msgid ""
"If [code]true[/code], enables warnings when assigning the result of a "
"function that returns [code]void[/code] to a variable."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:374
+#: doc/classes/ProjectSettings.xml:375
msgid ""
"Maximum number of frames per second allowed. The actual number of frames per "
"second may still be below this value if the game is lagging.\n"
@@ -38979,143 +39692,143 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:379
+#: doc/classes/ProjectSettings.xml:380
msgid "Maximum call stack allowed for debugging GDScript."
msgstr ""
-#: doc/classes/ProjectSettings.xml:382
+#: doc/classes/ProjectSettings.xml:383
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:385
+#: doc/classes/ProjectSettings.xml:386
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:388
+#: doc/classes/ProjectSettings.xml:389
msgid ""
"Print more information to standard output when running. It displays "
"information such as memory leaks, which scenes and resources are being "
"loaded, etc."
msgstr ""
-#: doc/classes/ProjectSettings.xml:391
+#: doc/classes/ProjectSettings.xml:392
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:394
+#: doc/classes/ProjectSettings.xml:395
msgid ""
"Color of the contact points between collision shapes, visible when \"Visible "
"Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:397
+#: doc/classes/ProjectSettings.xml:398
msgid ""
"Maximum number of contact points between collision shapes to display when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:400
+#: doc/classes/ProjectSettings.xml:401
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
msgid "Hotspot for the custom mouse cursor image."
msgstr ""
-#: doc/classes/ProjectSettings.xml:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
msgid ""
"If [code]true[/code], allows HiDPI display on Windows and macOS. This "
"setting has no effect on desktop Linux, as DPI-awareness fallbacks are not "
"supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"If [code]true[/code], keeps the screen on (even in case of inactivity), so "
"the screensaver does not take over. Works on desktop and mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
msgid "Default orientation on mobile devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"If [code]true[/code], the home indicator is hidden automatically. This only "
"affects iOS devices without a physical home button."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid "Force the window to be always on top."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid "Force the window to be borderless."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Sets the window to full screen when it starts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid ""
"Sets the game's main viewport height. On desktop platforms, this is the "
"default window size. Stretch mode settings also use this as a reference when "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Allows the window to be resizable by default."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"Sets the game's main viewport width. On desktop platforms, this is the "
"default window size. Stretch mode settings also use this as a reference when "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:454
+#: doc/classes/ProjectSettings.xml:455
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:457
+#: doc/classes/ProjectSettings.xml:458
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -39124,7 +39837,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:460
+#: doc/classes/ProjectSettings.xml:461
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -39135,13 +39848,13 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:464
+#: doc/classes/ProjectSettings.xml:465
msgid ""
"Search path for project-specific script templates. Script templates will be "
"search both in the editor-specific path and in this project-specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:467
+#: doc/classes/ProjectSettings.xml:468
msgid ""
"Text-based file extensions to include in the script editor's \"Find in Files"
"\" feature. You can add e.g. [code]tscn[/code] if you wish to also parse "
@@ -39149,49 +39862,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:470
+#: doc/classes/ProjectSettings.xml:471
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:473
+#: doc/classes/ProjectSettings.xml:474
msgid ""
-"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
+"If [code]true[/code], swaps Cancel and OK buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:478
+#: doc/classes/ProjectSettings.xml:479
msgid ""
"Path to a custom [Theme] resource file to use for the project ([code]theme[/"
"code] or generic [code]tres[/code]/[code]res[/code] extension)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:484
+#: doc/classes/ProjectSettings.xml:485
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:487
+#: doc/classes/ProjectSettings.xml:488
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:490
+#: doc/classes/ProjectSettings.xml:491
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:493
+#: doc/classes/ProjectSettings.xml:494
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:496
+#: doc/classes/ProjectSettings.xml:497
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -39200,7 +39913,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"Default [InputEventAction] to discard a modal or pending input.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39208,7 +39921,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:504
+#: doc/classes/ProjectSettings.xml:505
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39216,7 +39929,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:508
+#: doc/classes/ProjectSettings.xml:509
msgid ""
"Default [InputEventAction] to go to the end position of a [Control] (e.g. "
"last item in an [ItemList] or a [Tree]), matching the behavior of [constant "
@@ -39226,7 +39939,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:512
+#: doc/classes/ProjectSettings.xml:513
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -39235,7 +39948,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:516
+#: doc/classes/ProjectSettings.xml:517
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -39244,7 +39957,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:520
+#: doc/classes/ProjectSettings.xml:521
msgid ""
"Default [InputEventAction] to go to the start position of a [Control] (e.g. "
"first item in an [ItemList] or a [Tree]), matching the behavior of [constant "
@@ -39254,7 +39967,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39262,7 +39975,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:528
+#: doc/classes/ProjectSettings.xml:529
msgid ""
"Default [InputEventAction] to go down a page in a [Control] (e.g. in an "
"[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEDOWN] on "
@@ -39272,7 +39985,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Default [InputEventAction] to go up a page in a [Control] (e.g. in an "
"[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEUP] on "
@@ -39282,7 +39995,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:536
+#: doc/classes/ProjectSettings.xml:537
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39290,7 +40003,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:540
+#: doc/classes/ProjectSettings.xml:541
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -39299,7 +40012,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39307,371 +40020,371 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:548
+#: doc/classes/ProjectSettings.xml:549
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:554
+#: doc/classes/ProjectSettings.xml:555
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:557
+#: doc/classes/ProjectSettings.xml:558
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:560
+#: doc/classes/ProjectSettings.xml:561
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:566
+#: doc/classes/ProjectSettings.xml:567
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:569
+#: doc/classes/ProjectSettings.xml:570
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:572
+#: doc/classes/ProjectSettings.xml:573
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:578
+#: doc/classes/ProjectSettings.xml:579
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:581
+#: doc/classes/ProjectSettings.xml:582
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:584
+#: doc/classes/ProjectSettings.xml:585
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:590
+#: doc/classes/ProjectSettings.xml:591
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:593
+#: doc/classes/ProjectSettings.xml:594
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:596
+#: doc/classes/ProjectSettings.xml:597
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:602
+#: doc/classes/ProjectSettings.xml:603
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid ""
"The locale to fall back to if a translation isn't available in a given "
"language. If left empty, [code]en[/code] (English) will be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "If [code]true[/code], logs all output to files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:806
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:809
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:812
msgid ""
"Godot uses a message queue to defer some function calls. If you run out of "
"space on it (you will see an error), you can increase the size here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:815
msgid ""
"This is used by servers when used in multi-threading mode (servers and "
"visual). RIDs are preallocated to avoid stalling the server requesting them "
@@ -39679,56 +40392,56 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:829
+#: doc/classes/ProjectSettings.xml:832
msgid ""
"Maximum amount of characters allowed to send as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:832
+#: doc/classes/ProjectSettings.xml:835
msgid ""
"Maximum number of errors allowed to be sent from the debugger. Over this "
"value, content is dropped. This helps not to stall the debugger connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:835
+#: doc/classes/ProjectSettings.xml:838
msgid ""
"Maximum amount of messages in the debugger queue. Over this value, content "
"is dropped. This helps to limit the debugger memory usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:838
+#: doc/classes/ProjectSettings.xml:841
msgid ""
"Maximum number of warnings allowed to be sent from the debugger. Over this "
"value, content is dropped. This helps not to stall the debugger connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:841
+#: doc/classes/ProjectSettings.xml:844
msgid ""
"Default size of packet peer stream for deserializing Godot data. Over this "
"size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:844
+#: doc/classes/ProjectSettings.xml:847
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:847
+#: doc/classes/ProjectSettings.xml:850
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:850
+#: doc/classes/ProjectSettings.xml:853
msgid ""
"Amount of read ahead used by remote filesystem. Higher values decrease the "
"effects of latency at the cost of higher bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:853
+#: doc/classes/ProjectSettings.xml:856
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:856
+#: doc/classes/ProjectSettings.xml:859
msgid ""
"The CA certificates bundle to use for SSL connections. If this is set to a "
"non-empty value, this will [i]override[/i] Godot's default [url=https://"
@@ -39738,31 +40451,31 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:863
msgid ""
"When creating node names automatically, set the type of casing in this "
"project. This is mostly an editor setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:866
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:869
msgid "Size of the hash table used for the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:872
msgid "Cell size used for the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:875
msgid "The default angular damp in 2D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:878
msgid ""
"The default gravity strength in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39774,7 +40487,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:883
+#: doc/classes/ProjectSettings.xml:886
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39786,38 +40499,38 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:891
+#: doc/classes/ProjectSettings.xml:894
msgid "The default linear damp in 2D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:894
+#: doc/classes/ProjectSettings.xml:897
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:897
+#: doc/classes/ProjectSettings.xml:900
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics2D\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:901
+#: doc/classes/ProjectSettings.xml:904
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant PhysicsServer2D."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:904
+#: doc/classes/ProjectSettings.xml:907
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant PhysicsServer2D."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:907
+#: doc/classes/ProjectSettings.xml:910
msgid ""
"Sets whether physics is run on the main thread or a separate one. Running "
"the server on a thread increases performance, but restricts API access to "
@@ -39827,23 +40540,23 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:914
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant PhysicsServer2D.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:917
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody3D] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:920
msgid "The default angular damp in 3D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:923
msgid ""
"The default gravity strength in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39855,7 +40568,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:928
+#: doc/classes/ProjectSettings.xml:931
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39867,11 +40580,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:936
+#: doc/classes/ProjectSettings.xml:939
msgid "The default linear damp in 3D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:939
+#: doc/classes/ProjectSettings.xml:942
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -39879,11 +40592,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:943
+#: doc/classes/ProjectSettings.xml:946
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:949
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -39892,7 +40605,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:950
+#: doc/classes/ProjectSettings.xml:953
msgid ""
"Fix to improve physics jitter, specially on monitors where refresh rate is "
"different than the physics FPS.\n"
@@ -39900,7 +40613,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:954
+#: doc/classes/ProjectSettings.xml:957
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -39908,7 +40621,7 @@ msgid ""
"programmatically, use [method RenderingServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:957
+#: doc/classes/ProjectSettings.xml:960
msgid ""
"[Environment] that will be used as a fallback environment in case a scene "
"does not specify its own environment. The default environment is loaded in "
@@ -39918,14 +40631,14 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:986
+#: doc/classes/ProjectSettings.xml:989
msgid ""
"Max amount of elements renderable in a frame. If more than this are visible "
"per frame, they will be dropped. Keep in mind elements refer to mesh "
"surfaces and not meshes themselves."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:994
msgid ""
"Some NVIDIA GPU drivers have a bug which produces flickering issues for the "
"[code]draw_rect[/code] method, especially as used in [TileMap]. Refer to "
@@ -39937,73 +40650,73 @@ msgid ""
"using the Vulkan backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:995
+#: doc/classes/ProjectSettings.xml:998
msgid ""
"If [code]true[/code], forces snapping of polygons to pixels in 2D rendering. "
"May help in some pixel art styles."
msgstr ""
-#: doc/classes/ProjectSettings.xml:998
+#: doc/classes/ProjectSettings.xml:1001
msgid ""
"Sets the quality of the depth of field effect. Higher quality takes more "
"samples, which is slower but looks smoother."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1001
+#: doc/classes/ProjectSettings.xml:1004
msgid ""
"Sets the depth of field shape. Can be Box, Hexagon, or Circle. Box is the "
"fastest. Circle is the most realistic, but also the most expensive to "
"compute."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1004
+#: doc/classes/ProjectSettings.xml:1007
msgid ""
"If [code]true[/code], jitters DOF samples to make effect slightly blurrier "
"and hide lines created from low sample rates. This can result in a slightly "
"grainy appearance when used with a low number of samples."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1010
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1010
+#: doc/classes/ProjectSettings.xml:1013
msgid ""
"If [code]true[/code], performs a previous depth pass before rendering "
"materials. This increases performance in scenes with high overdraw, when "
"complex materials and lighting are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1016
msgid ""
"The directional shadow's size in pixels. Higher values will result in "
"sharper shadows, at the cost of performance. The value will be rounded up to "
"the nearest power of 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1016
+#: doc/classes/ProjectSettings.xml:1019
msgid ""
"Lower-end override for [member rendering/quality/directional_shadow/size] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1019
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"Quality setting for shadows cast by [DirectionalLight3D]s. Higher quality "
"settings use more samples when reading from shadow maps and are thus slower. "
"Low quality settings may result in shadows looking grainy."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1022
+#: doc/classes/ProjectSettings.xml:1025
msgid ""
"Lower-end override for [member rendering/quality/directional_shadow/"
"soft_shadow_quality] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1028
msgid ""
"The video driver to use (\"GLES2\" or \"Vulkan\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -40013,32 +40726,32 @@ msgid ""
"get_current_video_driver[/code] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1031
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"If [code]true[/code], take additional samples when rendering objects "
"affected by a [GIProbe] to reduce artifacts from only sampling in one "
"direction."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1034
+#: doc/classes/ProjectSettings.xml:1037
msgid ""
"Sets the number of cone samples taken when rendering objects affected by "
"[GIProbe]s."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1037
+#: doc/classes/ProjectSettings.xml:1040
msgid ""
"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."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1040
+#: doc/classes/ProjectSettings.xml:1043
msgid ""
"Lower-end override for [member rendering/quality/glow/upscale_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1043
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Strategy used for framebuffer allocation. The simpler it is, the less "
"resources it uses (but the less features it supports). If set to \"2D "
@@ -40048,41 +40761,41 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1046
+#: doc/classes/ProjectSettings.xml:1049
msgid ""
"Lower-end override for [member rendering/quality/intended_usage/"
"framebuffer_allocation] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1052
msgid ""
"Number of cubemaps to store in the reflection atlas. The number of "
"[ReflectionProbe]s in a scene will be limited by this amount. A higher "
"number requires more VRAM."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1052
+#: doc/classes/ProjectSettings.xml:1055
msgid ""
"Size of cubemap faces for [ReflectionProbe]s. A higher number requires more "
"VRAM and may make reflection probe updating slower."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1055
+#: doc/classes/ProjectSettings.xml:1058
msgid ""
"Lower-end override for [member rendering/quality/reflection_atlas/"
"reflection_size] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1058
+#: doc/classes/ProjectSettings.xml:1061
msgid ""
"Use a higher quality variant of the fast filtering algorithm. Significantly "
"slower than using default quality, but results in smoother reflections. "
"Should only be used when the scene is especially detailed."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1061
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Sets the number of samples to take when using importance sampling for [Sky]s "
"and [ReflectionProbe]s. A higher value will result in smoother, higher "
@@ -40092,19 +40805,19 @@ msgid ""
"environments with a high level of detail."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1064
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Lower-end override for [member rendering/quality/reflections/ggx_samples] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1067
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Limits the number of layers to use in radiance maps when using importance "
"sampling. A lower number will be slightly faster and take up less VRAM."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1070
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise and "
@@ -40113,14 +40826,14 @@ msgid ""
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1073
+#: doc/classes/ProjectSettings.xml:1076
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"texture_array_reflections] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1079
msgid ""
"Sets the number of MSAA samples to use (as a power of two). MSAA is used to "
"reduce aliasing around the edges of polygons. A higher MSAA value results in "
@@ -40128,7 +40841,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1080
+#: doc/classes/ProjectSettings.xml:1083
msgid ""
"Sets the screen-space antialiasing mode for the default screen [Viewport]. "
"Screen-space antialiasing works by selectively blurring edges in a post-"
@@ -40137,133 +40850,117 @@ msgid ""
"MSAA and will smooth out specular aliasing, but tend to make scenes appear "
"blurry.\n"
"Another way to combat specular aliasing is to enable [member rendering/"
-"quality/screen_filters/screen_space_roughness_limiter]."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:1084
-msgid ""
-"Enables the screen-space roughness limiter which increases material "
-"roughness in areas with a high normal frequency (i.e. when normals change a "
-"lot from pixel to pixel). This helps to reduce the amount of specular "
-"aliasing in a scene. Specular aliasing looks like random bright pixels that "
-"occur in reflections."
+"quality/screen_filters/screen_space_roughness_limiter_enabled]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1087
-msgid ""
-"Curves the amount of the roughness limited effect. A higher value limits the "
-"effect to very sharply curved surfaces, while a lower threshold extends the "
-"effect to smoother surfaces."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:1090
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"Sets the quality for rough screen-space reflections. Turning off will make "
"all screen space reflections sharp, while higher values make rough "
"reflections look better."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1093
+#: doc/classes/ProjectSettings.xml:1096
msgid ""
"If [code]true[/code], uses faster but lower-quality Blinn model to generate "
"blurred reflections instead of the GGX model."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1099
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_blinn_over_ggx] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1102
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1102
+#: doc/classes/ProjectSettings.xml:1105
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_lambert_over_burley] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1105
+#: doc/classes/ProjectSettings.xml:1108
msgid ""
"If [code]true[/code], forces vertex shading for all rendering. This can "
"increase performance a lot, but also reduces quality immensely. Can be used "
"to optimize performance on low-end mobile devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1108
+#: doc/classes/ProjectSettings.xml:1111
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_vertex_shading] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1111 doc/classes/ProjectSettings.xml:1114
-#: doc/classes/ProjectSettings.xml:1117 doc/classes/ProjectSettings.xml:1120
+#: doc/classes/ProjectSettings.xml:1114 doc/classes/ProjectSettings.xml:1117
+#: doc/classes/ProjectSettings.xml:1120 doc/classes/ProjectSettings.xml:1123
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1123
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1126
+#: doc/classes/ProjectSettings.xml:1129
msgid ""
"Lower-end override for [member rendering/quality/shadow_atlas/size] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1132
msgid ""
"Quality setting for shadows cast by [OmniLight3D]s and [SpotLight3D]s. "
"Higher quality settings use more samples when reading from shadow maps and "
"are thus slower. Low quality settings may result in shadows looking grainy."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1132
+#: doc/classes/ProjectSettings.xml:1135
msgid ""
"Lower-end override for [member rendering/quality/shadows/"
"soft_shadow_quality] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1135
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"If [code]true[/code], screen-space ambient occlusion will be rendered at "
"half size and then upscaled before being added to the scene. This is "
"significantly faster but may miss small details."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1138
+#: doc/classes/ProjectSettings.xml:1141
msgid ""
"Sets the quality of the screen-space ambient occlusion effect. Higher values "
"take more samples and so will result in better quality, at the cost of "
"performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1144
msgid ""
"Scales the depth over which the subsurface scattering effect is applied. A "
"high value may allow light to scatter into a part of the mesh or another "
"mesh that is close in screen space but far in depth."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1144
+#: doc/classes/ProjectSettings.xml:1147
msgid ""
"Sets the quality of the subsurface scattering effect. Higher values are "
"slower but look nicer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1147
+#: doc/classes/ProjectSettings.xml:1150
msgid ""
"Scales the distance over which samples are taken for subsurface scattering "
"effect. Changing this does not impact performance, but higher values will "
@@ -40271,7 +40968,7 @@ msgid ""
"out. A lower value results in a smaller spread of scattered light."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1150
+#: doc/classes/ProjectSettings.xml:1153
msgid ""
"Sets the maximum number of samples to take when using anisotropic filtering "
"on textures (as a power of two). A higher sample count will result in "
@@ -40280,7 +40977,7 @@ msgid ""
"materials where it is enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1153
+#: doc/classes/ProjectSettings.xml:1156
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -40289,49 +40986,49 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Thread model for rendering. Rendering on a thread can vastly improve "
"performance, but synchronizing to the main thread can cause a bit more "
"jitter."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
"only supported on desktop platforms, and only when using the Vulkan renderer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
"doesn't support alpha channels in textures."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
"compression algorithm is only supported when using the Vulkan renderer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1175
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
"compression algorithm is only supported on iOS."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
"supported on desktop platforms and consoles."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1182
+#: doc/classes/ProjectSettings.xml:1189
msgid "Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses."
msgstr ""
@@ -40361,13 +41058,14 @@ msgstr ""
#: doc/classes/Quat.xml:7
msgid ""
-"A unit quaternion used for representing 3D rotations.\n"
-"It is similar to [Basis], which implements matrix representation of "
-"rotations, and can be parametrized using both an axis-angle pair or Euler "
-"angles. But due to its compactness and the way it is stored in memory, "
-"certain operations (obtaining axis-angle and performing SLERP, in "
-"particular) are more efficient and robust against floating-point errors.\n"
-"Quaternions need to be (re)normalized."
+"A unit quaternion used for representing 3D rotations. Quaternions need to be "
+"normalized to be used for rotation.\n"
+"It is similar to Basis, which implements matrix representation of rotations, "
+"and can be parametrized using both an axis-angle pair or Euler angles. Basis "
+"stores rotation, scale, and shearing, while Quat only stores rotation.\n"
+"Due to its compactness and the way it is stored in memory, certain "
+"operations (obtaining axis-angle and performing SLERP, in particular) are "
+"more efficient and robust against floating-point errors."
msgstr ""
#: doc/classes/Quat.xml:12
@@ -40377,29 +41075,31 @@ msgid ""
msgstr ""
#: doc/classes/Quat.xml:21
-msgid "Returns the rotation matrix corresponding to the given quaternion."
+msgid "Constructs a quaternion from the given [Basis]."
msgstr ""
#: doc/classes/Quat.xml:30
msgid ""
-"Returns a quaternion that will perform a rotation specified by Euler angles "
-"(in the YXZ convention: first Z, then X, and Y last), given in the vector "
-"format as (X angle, Y angle, Z angle)."
+"Constructs a quaternion that will perform a rotation specified by Euler "
+"angles (in the YXZ convention: when decomposing, first Z, then X, and Y "
+"last), given in the vector format as (X angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:41
msgid ""
-"Returns a quaternion that will rotate around the given axis by the specified "
-"angle. The axis must be a normalized vector."
+"Constructs a quaternion that will rotate around the given axis by the "
+"specified angle. The axis must be a normalized vector."
msgstr ""
#: doc/classes/Quat.xml:56
-msgid "Returns a quaternion defined by these values."
+msgid "Constructs a quaternion defined by the given values."
msgstr ""
#: doc/classes/Quat.xml:71
msgid ""
-"Performs a cubic spherical-linear interpolation with another quaternion."
+"Performs a cubic spherical interpolation between quaternions [code]preA[/"
+"code], this vector, [code]b[/code], and [code]postB[/code], by the given "
+"amount [code]t[/code]."
msgstr ""
#: doc/classes/Quat.xml:80
@@ -40408,10 +41108,10 @@ msgstr ""
#: doc/classes/Quat.xml:87
msgid ""
-"Returns Euler angles (in the YXZ convention: first Z, then X, and Y last) "
-"corresponding to the rotation represented by the unit quaternion. Returned "
-"vector contains the rotation angles in the format (X angle, Y angle, Z "
-"angle)."
+"Returns Euler angles (in the YXZ convention: when decomposing, first Z, then "
+"X, and Y last) corresponding to the rotation represented by the unit "
+"quaternion. Returned vector contains the rotation angles in the format (X "
+"angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:94
@@ -40450,44 +41150,57 @@ msgstr ""
#: doc/classes/Quat.xml:151
msgid ""
"Sets the quaternion to a rotation specified by Euler angles (in the YXZ "
-"convention: first Z, then X, and Y last), given in the vector format as (X "
-"angle, Y angle, Z angle)."
+"convention: when decomposing, first Z, then X, and Y last), given in the "
+"vector format as (X angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:162
-msgid "Performs a spherical-linear interpolation with another quaternion."
+msgid ""
+"Returns the result of the spherical linear interpolation between this "
+"quaternion and [code]to[/code] by amount [code]weight[/code].\n"
+"[b]Note:[/b] Both quaternions must be normalized."
msgstr ""
-#: doc/classes/Quat.xml:173
+#: doc/classes/Quat.xml:174
msgid ""
-"Performs a spherical-linear interpolation with another quaterion without "
-"checking if the rotation path is not bigger than 90°."
+"Returns the result of the spherical linear interpolation between this "
+"quaternion and [code]to[/code] by amount [code]weight[/code], but without "
+"checking if the rotation path is not bigger than 90 degrees."
msgstr ""
-#: doc/classes/Quat.xml:182
-msgid "Transforms the vector [code]v[/code] by this quaternion."
+#: doc/classes/Quat.xml:183
+msgid "Returns a vector transformed (multiplied) by this quaternion."
msgstr ""
-#: doc/classes/Quat.xml:188
-msgid "W component of the quaternion."
+#: doc/classes/Quat.xml:189
+msgid ""
+"W component of the quaternion (real part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:191
-msgid "X component of the quaternion."
+#: doc/classes/Quat.xml:193
+msgid ""
+"X component of the quaternion (imaginary [code]i[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:194
-msgid "Y component of the quaternion."
+#: doc/classes/Quat.xml:197
+msgid ""
+"Y component of the quaternion (imaginary [code]j[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:197
-msgid "Z component of the quaternion."
+#: doc/classes/Quat.xml:201
+msgid ""
+"Z component of the quaternion (imaginary [code]k[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:202
+#: doc/classes/Quat.xml:207
msgid ""
-"The identity rotation. Equivalent to an identity matrix. If a vector is "
-"transformed by an identity quaternion, it will not change."
+"The identity quaternion, representing no rotation. Equivalent to an identity "
+"[Basis] matrix. If a vector is transformed by an identity quaternion, it "
+"will not change."
msgstr ""
#: doc/classes/RandomNumberGenerator.xml:4
@@ -40690,7 +41403,8 @@ msgid ""
"collision information immediately instead of waiting for the next "
"[code]_physics_process[/code] call, for example if the ray or its parent has "
"changed state.\n"
-"[b]Note:[/b] [code]enabled == true[/code] is not required for this to work."
+"[b]Note:[/b] [member enabled] does not need to be [code]true[/code] for this "
+"to work."
msgstr ""
#: doc/classes/RayCast2D.xml:54 doc/classes/RayCast3D.xml:55
@@ -40796,7 +41510,8 @@ msgid ""
"Use this method to update the collision information immediately instead of "
"waiting for the next [code]_physics_process[/code] call, for example if the "
"ray or its parent has changed state.\n"
-"[b]Note:[/b] [code]enabled == true[/code] is not required for this to work."
+"[b]Note:[/b] [member enabled] does not need to be [code]true[/code] for this "
+"to work."
msgstr ""
#: doc/classes/RayCast3D.xml:71
@@ -40954,14 +41669,6 @@ msgstr ""
msgid "Returns a larger [Rect2] that contains this [Rect2] and [code]b[/code]."
msgstr ""
-#: doc/classes/Rect2.xml:174 doc/classes/Rect2i.xml:163
-msgid "Ending corner."
-msgstr ""
-
-#: doc/classes/Rect2.xml:177 doc/classes/Rect2i.xml:166
-msgid "Position (starting corner)."
-msgstr ""
-
#: doc/classes/Rect2i.xml:4
msgid "2D axis-aligned bounding box using integer coordinates."
msgstr ""
@@ -41074,22 +41781,22 @@ msgstr ""
msgid ""
"Base class for any object that keeps a reference count. [Resource] and many "
"other helper objects inherit this class.\n"
-"References keep an internal reference counter so that they are automatically "
-"released when no longer in use, and only then. References therefore do not "
-"need to be freed manually with [method Object.free].\n"
+"Unlike [Object]s, References keep an internal reference counter so that they "
+"are automatically released when no longer in use, and only then. References "
+"therefore do not need to be freed manually with [method Object.free].\n"
"In the vast majority of use cases, instantiating and using [Reference]-"
"derived types is all you need to do. The methods provided in this class are "
"only for advanced users, and can cause issues if misused."
msgstr ""
-#: doc/classes/Reference.xml:18
+#: doc/classes/Reference.xml:19
msgid ""
"Initializes the internal reference counter. Use this only if you really know "
"what you are doing.\n"
"Returns whether the initialization was successful."
msgstr ""
-#: doc/classes/Reference.xml:26
+#: doc/classes/Reference.xml:27
msgid ""
"Increments the internal reference counter. Use this only if you really know "
"what you are doing.\n"
@@ -41097,7 +41804,7 @@ msgid ""
"code] otherwise."
msgstr ""
-#: doc/classes/Reference.xml:34
+#: doc/classes/Reference.xml:35
msgid ""
"Decrements the internal reference counter. Use this only if you really know "
"what you are doing.\n"
@@ -41146,14 +41853,14 @@ msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/reflection_probes.html"
msgstr ""
-#: doc/classes/ReflectionProbe.xml:17
+#: doc/classes/ReflectionProbe.xml:23
msgid ""
"If [code]true[/code], enables box projection. This makes reflections look "
"more correct in rectangle-shaped rooms by offsetting the reflection center "
"depending on the camera's location."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:20
+#: doc/classes/ReflectionProbe.xml:26
msgid ""
"Sets the cull mask which determines what objects are drawn by this probe. "
"Every [VisualInstance3D] with a layer included in this cull mask will be "
@@ -41162,78 +41869,56 @@ msgid ""
"rendering cost."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:23
+#: doc/classes/ReflectionProbe.xml:29
msgid ""
"If [code]true[/code], computes shadows in the reflection probe. This makes "
"the reflection probe slower to render; you may want to disable this if using "
"the [constant UPDATE_ALWAYS] [member update_mode]."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:26
+#: doc/classes/ReflectionProbe.xml:32
msgid ""
"The size of the reflection probe. The larger the extents the more space "
"covered by the probe which will lower the perceived resolution. It is best "
"to keep the extents only as large as you need them."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:29
+#: doc/classes/ReflectionProbe.xml:35
msgid ""
"Defines the reflection intensity. Intensity modulates the strength of the "
"reflection."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:32
-msgid ""
-"Sets the ambient light color to be used when this probe is set to [member "
-"interior_enable]."
-msgstr ""
-
-#: doc/classes/ReflectionProbe.xml:35
-msgid ""
-"Sets the contribution value for how much the reflection affects the ambient "
-"light for this reflection probe when set to [member interior_enable]. Useful "
-"so that ambient light matches the color of the room."
-msgstr ""
-
#: doc/classes/ReflectionProbe.xml:38
-msgid ""
-"Sets the energy multiplier for this reflection probe's ambient light "
-"contribution when set to [member interior_enable]."
+msgid "If [code]true[/code], reflections will ignore sky contribution."
msgstr ""
#: doc/classes/ReflectionProbe.xml:41
msgid ""
-"If [code]true[/code], reflections will ignore sky contribution. Ambient "
-"lighting is then controlled by the [code]interior_ambient_*[/code] "
-"properties."
-msgstr ""
-
-#: doc/classes/ReflectionProbe.xml:44
-msgid ""
"Sets the max distance away from the probe an object can be before it is "
"culled."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:47
+#: doc/classes/ReflectionProbe.xml:44
msgid ""
"Sets the origin offset to be used when this reflection probe is in box "
"project mode."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:50
+#: doc/classes/ReflectionProbe.xml:47
msgid ""
"Sets how frequently the probe is updated. Can be [constant UPDATE_ONCE] or "
"[constant UPDATE_ALWAYS]."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:55
+#: doc/classes/ReflectionProbe.xml:52
msgid ""
"Update the probe once on the next frame. The corresponding radiance map will "
"be generated over the following six frames. This is slower to update than "
"[constant UPDATE_ALWAYS] but can result in higher quality reflections."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:58
+#: doc/classes/ReflectionProbe.xml:55
msgid ""
"Update the probe every frame. This is needed when you want to capture "
"dynamic objects. However, it results in an increased render time. Use "
@@ -41263,10 +41948,10 @@ msgid ""
"read by RegEx as [code]\\d+[/code]. Similarly, [code]compile(\"\\\"(?:\\\\\\"
"\\.|[^\\\"])*\\\"\")[/code] would be read as [code]\"(?:\\\\.|[^\"])*\"[/"
"code].\n"
-"Using [method search] you can find the pattern within the given text. If a "
+"Using [method search], you can find the pattern within the given text. If a "
"pattern is found, [RegExMatch] is returned and you can retrieve details of "
-"the results using functions such as [method RegExMatch.get_string] and "
-"[method RegExMatch.get_start].\n"
+"the results using methods such as [method RegExMatch.get_string] and [method "
+"RegExMatch.get_start].\n"
"[codeblock]\n"
"var regex = RegEx.new()\n"
"regex.compile(\"\\\\w-(\\\\d+)\")\n"
@@ -41275,7 +41960,7 @@ msgid ""
" print(result.get_string()) # Would print n-0123\n"
"[/codeblock]\n"
"The results of capturing groups [code]()[/code] can be retrieved by passing "
-"the group number to the various functions in [RegExMatch]. Group 0 is the "
+"the group number to the various methods in [RegExMatch]. Group 0 is the "
"default and will always refer to the entire pattern. In the above example, "
"calling [code]result.get_string(1)[/code] would give you [code]0123[/code].\n"
"This version of RegEx also supports named capturing groups, and the names "
@@ -41296,6 +41981,15 @@ msgid ""
" print(result.get_string(\"digit\"))\n"
"# Would print 01 03 0 3f 42\n"
"[/codeblock]\n"
+"[b]Example of splitting a string using a RegEx:[/b]\n"
+"[codeblock]\n"
+"var regex = RegEx.new()\n"
+"regex.compile(\"\\\\S+\") # Negated whitespace character class.\n"
+"var results = []\n"
+"for match in regex.search_all(\"One Two \\n\\tThree\"):\n"
+" results.push_back(match.get_string())\n"
+"# The `results` array now contains \"One\", \"Two\", \"Three\".\n"
+"[/codeblock]\n"
"[b]Note:[/b] Godot's regex implementation is based on the [url=https://www."
"pcre.org/]PCRE2[/url] library. You can view the full pattern reference "
"[url=https://www.pcre.org/current/doc/html/pcre2pattern.html]here[/url].\n"
@@ -41303,38 +41997,38 @@ msgid ""
"regular expressions online."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:47
+#: modules/regex/doc_classes/RegEx.xml:56
msgid ""
"This method resets the state of the object, as if it was freshly created. "
"Namely, it unassigns the regular expression of this object."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:56
+#: modules/regex/doc_classes/RegEx.xml:65
msgid ""
"Compiles and assign the search pattern to use. Returns [constant OK] if the "
"compilation is successful. If an error is encountered, details are printed "
"to standard output and an error is returned."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:63
+#: modules/regex/doc_classes/RegEx.xml:72
msgid "Returns the number of capturing groups in compiled pattern."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:70
+#: modules/regex/doc_classes/RegEx.xml:79
msgid ""
"Returns an array of names of named capturing groups in the compiled pattern. "
"They are ordered by appearance."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:77
+#: modules/regex/doc_classes/RegEx.xml:86
msgid "Returns the original search pattern that was compiled."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:84
+#: modules/regex/doc_classes/RegEx.xml:93
msgid "Returns whether this object has a valid search pattern assigned."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:97
+#: modules/regex/doc_classes/RegEx.xml:106
msgid ""
"Searches the text for the compiled pattern. Returns a [RegExMatch] container "
"of the first matching result if found, otherwise [code]null[/code]. The "
@@ -41342,7 +42036,7 @@ msgid ""
"and end anchor would be."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:110
+#: modules/regex/doc_classes/RegEx.xml:119
msgid ""
"Searches the text for the compiled pattern. Returns an array of [RegExMatch] "
"containers for each non-overlapping result. If no results were found, an "
@@ -41350,7 +42044,7 @@ msgid ""
"specified without modifying where the start and end anchor would be."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:127
+#: modules/regex/doc_classes/RegEx.xml:136
msgid ""
"Searches the text for the compiled pattern and replaces it with the "
"specified string. Escapes and backreferences such as [code]$1[/code] and "
@@ -42077,7 +42771,7 @@ msgid ""
msgstr ""
#: doc/classes/RenderingServer.xml:1222 doc/classes/RenderingServer.xml:1250
-#: doc/classes/RenderingServer.xml:1527
+#: doc/classes/RenderingServer.xml:1537
msgid "Not implemented in Godot 3.x."
msgstr ""
@@ -42224,30 +42918,30 @@ msgid ""
"OmniLight3D.omni_shadow_mode]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1481
+#: doc/classes/RenderingServer.xml:1491
msgid ""
"Sets the color of the light. Equivalent to [member Light3D.light_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1492
+#: doc/classes/RenderingServer.xml:1502
msgid ""
"Sets the cull mask for this Light3D. Lights only affect objects in the "
"selected layers. Equivalent to [member Light3D.light_cull_mask]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1503
+#: doc/classes/RenderingServer.xml:1513
msgid ""
"If [code]true[/code], light will subtract light instead of adding light. "
"Equivalent to [member Light3D.light_negative]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1516
+#: doc/classes/RenderingServer.xml:1526
msgid ""
"Sets the specified light parameter. See [enum LightParam] for options. "
"Equivalent to [method Light3D.set_param]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1538
+#: doc/classes/RenderingServer.xml:1548
msgid ""
"If [code]true[/code], reverses the backface culling of the mesh. This can be "
"useful when you have a flat mesh that has a light behind it. If you need to "
@@ -42256,29 +42950,25 @@ msgid ""
"to [member Light3D.shadow_reverse_cull_face]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1549
+#: doc/classes/RenderingServer.xml:1559
msgid ""
"If [code]true[/code], light will cast shadows. Equivalent to [member Light3D."
"shadow_enabled]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1560
+#: doc/classes/RenderingServer.xml:1570
msgid ""
"Sets the color of the shadow cast by the light. Equivalent to [member "
"Light3D.shadow_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1571
-msgid "Sets whether GI probes capture light information from this light."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:1584
+#: doc/classes/RenderingServer.xml:1583
msgid ""
"Returns a mesh of a sphere with the given amount of horizontal and vertical "
"subdivisions."
msgstr ""
-#: doc/classes/RenderingServer.xml:1591
+#: doc/classes/RenderingServer.xml:1590
msgid ""
"Creates an empty material and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42287,31 +42977,31 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:1603
+#: doc/classes/RenderingServer.xml:1602
msgid "Returns the value of a certain material's parameter."
msgstr ""
-#: doc/classes/RenderingServer.xml:1614
+#: doc/classes/RenderingServer.xml:1613
msgid "Sets an object's next material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1627
+#: doc/classes/RenderingServer.xml:1626
msgid "Sets a material's parameter."
msgstr ""
-#: doc/classes/RenderingServer.xml:1638
+#: doc/classes/RenderingServer.xml:1637
msgid "Sets a material's render priority."
msgstr ""
-#: doc/classes/RenderingServer.xml:1649
+#: doc/classes/RenderingServer.xml:1648
msgid "Sets a shader material's shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:1678
+#: doc/classes/RenderingServer.xml:1677
msgid "Removes all surfaces from a mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1685
+#: doc/classes/RenderingServer.xml:1684
msgid ""
"Creates a new mesh and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all [code]mesh_*[/"
@@ -42322,58 +43012,58 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:1696
+#: doc/classes/RenderingServer.xml:1695
msgid "Returns a mesh's blend shape count."
msgstr ""
-#: doc/classes/RenderingServer.xml:1705
+#: doc/classes/RenderingServer.xml:1704
msgid "Returns a mesh's blend shape mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:1714
+#: doc/classes/RenderingServer.xml:1713
msgid "Returns a mesh's custom aabb."
msgstr ""
-#: doc/classes/RenderingServer.xml:1723
+#: doc/classes/RenderingServer.xml:1722
msgid "Returns a mesh's number of surfaces."
msgstr ""
-#: doc/classes/RenderingServer.xml:1734
+#: doc/classes/RenderingServer.xml:1733
msgid "Sets a mesh's blend shape mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:1745
+#: doc/classes/RenderingServer.xml:1744
msgid "Sets a mesh's custom aabb."
msgstr ""
-#: doc/classes/RenderingServer.xml:1756
+#: doc/classes/RenderingServer.xml:1755
msgid "Returns a mesh's surface's buffer arrays."
msgstr ""
-#: doc/classes/RenderingServer.xml:1767
+#: doc/classes/RenderingServer.xml:1766
msgid "Returns a mesh's surface's arrays for blend shapes."
msgstr ""
-#: doc/classes/RenderingServer.xml:1782 doc/classes/RenderingServer.xml:1795
+#: doc/classes/RenderingServer.xml:1781 doc/classes/RenderingServer.xml:1794
msgid "Function is unused in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:1806
+#: doc/classes/RenderingServer.xml:1805
msgid "Returns a mesh's surface's material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1819
+#: doc/classes/RenderingServer.xml:1818
msgid "Sets a mesh's surface's material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1834
+#: doc/classes/RenderingServer.xml:1833
msgid ""
"Updates a specific region of a vertex buffer for the specified surface. "
"Warning: this function alters the vertex buffer directly with no safety "
"mechanisms, you can easily corrupt your mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1857
+#: doc/classes/RenderingServer.xml:1856
msgid ""
"Creates a new multimesh on the RenderingServer and returns an [RID] handle. "
"This RID will be used in all [code]multimesh_*[/code] RenderingServer "
@@ -42384,82 +43074,82 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:1868
+#: doc/classes/RenderingServer.xml:1867
msgid ""
"Calculates and returns the axis-aligned bounding box that encloses all "
"instances within the multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1885
+#: doc/classes/RenderingServer.xml:1884
msgid "Returns the number of instances allocated for this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1894
+#: doc/classes/RenderingServer.xml:1893
msgid ""
"Returns the RID of the mesh that will be used in drawing this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1903
+#: doc/classes/RenderingServer.xml:1902
msgid "Returns the number of visible instances for this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1914
+#: doc/classes/RenderingServer.xml:1913
msgid "Returns the color by which the specified instance will be modulated."
msgstr ""
-#: doc/classes/RenderingServer.xml:1925
+#: doc/classes/RenderingServer.xml:1924
msgid "Returns the custom data associated with the specified instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:1936
+#: doc/classes/RenderingServer.xml:1935
msgid "Returns the [Transform] of the specified instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:1947
+#: doc/classes/RenderingServer.xml:1946
msgid ""
"Returns the [Transform2D] of the specified instance. For use when the "
"multimesh is set to use 2D transforms."
msgstr ""
-#: doc/classes/RenderingServer.xml:1960
+#: doc/classes/RenderingServer.xml:1959
msgid ""
"Sets the color by which this instance will be modulated. Equivalent to "
"[method MultiMesh.set_instance_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1973
+#: doc/classes/RenderingServer.xml:1972
msgid ""
"Sets the custom data for this instance. Custom data is passed as a [Color], "
"but is interpreted as a [code]vec4[/code] in the shader. Equivalent to "
"[method MultiMesh.set_instance_custom_data]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1986
+#: doc/classes/RenderingServer.xml:1985
msgid ""
"Sets the [Transform] for this instance. Equivalent to [method MultiMesh."
"set_instance_transform]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1999
+#: doc/classes/RenderingServer.xml:1998
msgid ""
"Sets the [Transform2D] for this instance. For use when multimesh is used in "
"2D. Equivalent to [method MultiMesh.set_instance_transform_2d]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2020
+#: doc/classes/RenderingServer.xml:2019
msgid ""
"Sets the mesh to be drawn by the multimesh. Equivalent to [member MultiMesh."
"mesh]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2031
+#: doc/classes/RenderingServer.xml:2030
msgid ""
"Sets the number of instances visible at a given time. If -1, all instances "
"that have been allocated are drawn. Equivalent to [member MultiMesh."
"visible_instance_count]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2038
+#: doc/classes/RenderingServer.xml:2037
msgid ""
"Creates a new omni light and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID can be used in most "
@@ -42470,7 +43160,7 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2047
+#: doc/classes/RenderingServer.xml:2046
msgid ""
"Creates a particle system and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42481,23 +43171,23 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2058
+#: doc/classes/RenderingServer.xml:2057
msgid ""
"Calculates and returns the axis-aligned bounding box that contains all the "
"particles. Equivalent to [method GPUParticles3D.capture_aabb]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2067
+#: doc/classes/RenderingServer.xml:2066
msgid "Returns [code]true[/code] if particles are currently set to emitting."
msgstr ""
-#: doc/classes/RenderingServer.xml:2076
+#: doc/classes/RenderingServer.xml:2075
msgid ""
"Returns [code]true[/code] if particles are not emitting and particles are "
"set to inactive."
msgstr ""
-#: doc/classes/RenderingServer.xml:2085
+#: doc/classes/RenderingServer.xml:2084
msgid ""
"Add particle system to list of particle systems that need to be updated. "
"Update will take place on the next frame, or on the next call to [method "
@@ -42505,121 +43195,121 @@ msgid ""
"instances_cull_ray]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2094
+#: doc/classes/RenderingServer.xml:2093
msgid ""
"Reset the particles on the next update. Equivalent to [method GPUParticles3D."
"restart]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2105
+#: doc/classes/RenderingServer.xml:2104
msgid ""
"Sets the number of particles to be drawn and allocates the memory for them. "
"Equivalent to [member GPUParticles3D.amount]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2116
+#: doc/classes/RenderingServer.xml:2115
msgid ""
"Sets a custom axis-aligned bounding box for the particle system. Equivalent "
"to [member GPUParticles3D.visibility_aabb]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2127
+#: doc/classes/RenderingServer.xml:2126
msgid ""
"Sets the draw order of the particles to one of the named enums from [enum "
"ParticlesDrawOrder]. See [enum ParticlesDrawOrder] for options. Equivalent "
"to [member GPUParticles3D.draw_order]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2140
+#: doc/classes/RenderingServer.xml:2139
msgid ""
"Sets the mesh to be used for the specified draw pass. Equivalent to [member "
"GPUParticles3D.draw_pass_1], [member GPUParticles3D.draw_pass_2], [member "
"GPUParticles3D.draw_pass_3], and [member GPUParticles3D.draw_pass_4]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2151
+#: doc/classes/RenderingServer.xml:2150
msgid ""
"Sets the number of draw passes to use. Equivalent to [member GPUParticles3D."
"draw_passes]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2162
+#: doc/classes/RenderingServer.xml:2161
msgid ""
"Sets the [Transform] that will be used by the particles when they first emit."
msgstr ""
-#: doc/classes/RenderingServer.xml:2173
+#: doc/classes/RenderingServer.xml:2172
msgid ""
"If [code]true[/code], particles will emit over time. Setting to false does "
"not reset the particles, but only stops their emission. Equivalent to "
"[member GPUParticles3D.emitting]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2184
+#: doc/classes/RenderingServer.xml:2183
msgid ""
"Sets the explosiveness ratio. Equivalent to [member GPUParticles3D."
"explosiveness]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2195
+#: doc/classes/RenderingServer.xml:2194
msgid ""
"Sets the frame rate that the particle system rendering will be fixed to. "
"Equivalent to [member GPUParticles3D.fixed_fps]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2206
+#: doc/classes/RenderingServer.xml:2205
msgid ""
"If [code]true[/code], uses fractional delta which smooths the movement of "
"the particles. Equivalent to [member GPUParticles3D.fract_delta]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2217
+#: doc/classes/RenderingServer.xml:2216
msgid ""
"Sets the lifetime of each particle in the system. Equivalent to [member "
"GPUParticles3D.lifetime]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2228
+#: doc/classes/RenderingServer.xml:2227
msgid ""
"If [code]true[/code], particles will emit once and then stop. Equivalent to "
"[member GPUParticles3D.one_shot]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2239
+#: doc/classes/RenderingServer.xml:2238
msgid ""
"Sets the preprocess time for the particles animation. This lets you delay "
"starting an animation until after the particles have begun emitting. "
"Equivalent to [member GPUParticles3D.preprocess]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2250
+#: doc/classes/RenderingServer.xml:2249
msgid ""
"Sets the material for processing the particles. Note: this is not the "
"material used to draw the materials. Equivalent to [member GPUParticles3D."
"process_material]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2261
+#: doc/classes/RenderingServer.xml:2260
msgid ""
"Sets the emission randomness ratio. This randomizes the emission of "
"particles within their phase. Equivalent to [member GPUParticles3D."
"randomness]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2272
+#: doc/classes/RenderingServer.xml:2271
msgid ""
"Sets the speed scale of the particle system. Equivalent to [member "
"GPUParticles3D.speed_scale]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2283
+#: doc/classes/RenderingServer.xml:2282
msgid ""
"If [code]true[/code], particles use local coordinates. If [code]false[/code] "
"they use global coordinates. Equivalent to [member GPUParticles3D."
"local_coords]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2290
+#: doc/classes/RenderingServer.xml:2289
msgid ""
"Creates a reflection probe and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42630,85 +43320,64 @@ msgid ""
"[method instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2303
+#: doc/classes/RenderingServer.xml:2332
msgid ""
"If [code]true[/code], reflections will ignore sky contribution. Equivalent "
-"to [member ReflectionProbe.interior_enable]."
+"to [member ReflectionProbe.interior]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2314
+#: doc/classes/RenderingServer.xml:2343
msgid ""
"Sets the render cull mask for this reflection probe. Only instances with a "
"matching cull mask will be rendered by this probe. Equivalent to [member "
"ReflectionProbe.cull_mask]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2325
+#: doc/classes/RenderingServer.xml:2354
msgid ""
"If [code]true[/code], uses box projection. This can make reflections look "
"more correct in certain situations. Equivalent to [member ReflectionProbe."
"box_projection]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2336
+#: doc/classes/RenderingServer.xml:2365
msgid ""
"If [code]true[/code], computes shadows in the reflection probe. This makes "
"the reflection much slower to compute. Equivalent to [member ReflectionProbe."
"enable_shadows]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2347
+#: doc/classes/RenderingServer.xml:2376
msgid ""
"Sets the size of the area that the reflection probe will capture. Equivalent "
"to [member ReflectionProbe.extents]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2358
+#: doc/classes/RenderingServer.xml:2387
msgid ""
"Sets the intensity of the reflection probe. Intensity modulates the strength "
"of the reflection. Equivalent to [member ReflectionProbe.intensity]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2369
-msgid ""
-"Sets the ambient light color for this reflection probe when set to interior "
-"mode. Equivalent to [member ReflectionProbe.interior_ambient_color]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2380
-msgid ""
-"Sets the energy multiplier for this reflection probes ambient light "
-"contribution when set to interior mode. Equivalent to [member "
-"ReflectionProbe.interior_ambient_energy]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2391
-msgid ""
-"Sets the contribution value for how much the reflection affects the ambient "
-"light for this reflection probe when set to interior mode. Useful so that "
-"ambient light matches the color of the room. Equivalent to [member "
-"ReflectionProbe.interior_ambient_contrib]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2402
+#: doc/classes/RenderingServer.xml:2398
msgid ""
"Sets the max distance away from the probe an object can be before it is "
"culled. Equivalent to [member ReflectionProbe.max_distance]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2413
+#: doc/classes/RenderingServer.xml:2409
msgid ""
"Sets the origin offset to be used when this reflection probe is in box "
"project mode. Equivalent to [member ReflectionProbe.origin_offset]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2424
+#: doc/classes/RenderingServer.xml:2420
msgid ""
"Sets how often the reflection probe updates. Can either be once or every "
"frame. See [enum ReflectionProbeUpdateMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2437
+#: doc/classes/RenderingServer.xml:2433
msgid ""
"Schedules a callback to the corresponding named [code]method[/code] on "
"[code]where[/code] after a frame has been drawn.\n"
@@ -42716,7 +43385,7 @@ msgid ""
"[code]userdata[/code]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2445
+#: doc/classes/RenderingServer.xml:2441
msgid ""
"Creates a scenario and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all "
@@ -42726,24 +43395,24 @@ msgid ""
"The scenario is the 3D world that all the visual instances exist in."
msgstr ""
-#: doc/classes/RenderingServer.xml:2458
+#: doc/classes/RenderingServer.xml:2454
msgid ""
"Sets the [enum ScenarioDebugMode] for this scenario. See [enum "
"ScenarioDebugMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2469
+#: doc/classes/RenderingServer.xml:2465
msgid "Sets the environment that will be used with this scenario."
msgstr ""
-#: doc/classes/RenderingServer.xml:2480
+#: doc/classes/RenderingServer.xml:2476
msgid ""
"Sets the fallback environment to be used by this scenario. The fallback "
"environment is used if no environment is set. Internally, this is used by "
"the editor to provide a default environment."
msgstr ""
-#: doc/classes/RenderingServer.xml:2495
+#: doc/classes/RenderingServer.xml:2491
msgid ""
"Sets a boot image. The color defines the background color. If [code]scale[/"
"code] is [code]true[/code], the image will be scaled to fit the screen size. "
@@ -42752,19 +43421,19 @@ msgid ""
"the image will be scaled with nearest-neighbor interpolation."
msgstr ""
-#: doc/classes/RenderingServer.xml:2504
+#: doc/classes/RenderingServer.xml:2500
msgid ""
"If [code]true[/code], the engine will generate wireframes for use with the "
"wireframe debug mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:2513
+#: doc/classes/RenderingServer.xml:2509
msgid ""
"Sets the default clear color which is used when a specific clear color has "
"not been selected."
msgstr ""
-#: doc/classes/RenderingServer.xml:2520
+#: doc/classes/RenderingServer.xml:2516
msgid ""
"Creates an empty shader and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42773,47 +43442,47 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2530
+#: doc/classes/RenderingServer.xml:2526
msgid "Returns a shader's code."
msgstr ""
-#: doc/classes/RenderingServer.xml:2541
+#: doc/classes/RenderingServer.xml:2537
msgid "Returns a default texture from a shader searched by name."
msgstr ""
-#: doc/classes/RenderingServer.xml:2560
+#: doc/classes/RenderingServer.xml:2556
msgid "Returns the parameters of a shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:2571
+#: doc/classes/RenderingServer.xml:2567
msgid "Sets a shader's code."
msgstr ""
-#: doc/classes/RenderingServer.xml:2584
+#: doc/classes/RenderingServer.xml:2580
msgid "Sets a shader's default texture. Overwrites the texture given by name."
msgstr ""
-#: doc/classes/RenderingServer.xml:2597
+#: doc/classes/RenderingServer.xml:2593
msgid "Allocates the GPU buffers for this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2608
+#: doc/classes/RenderingServer.xml:2604
msgid "Returns the [Transform] set for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2619
+#: doc/classes/RenderingServer.xml:2615
msgid "Returns the [Transform2D] set for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2632
+#: doc/classes/RenderingServer.xml:2628
msgid "Sets the [Transform] for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2645
+#: doc/classes/RenderingServer.xml:2641
msgid "Sets the [Transform2D] for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2652
+#: doc/classes/RenderingServer.xml:2648
msgid ""
"Creates a skeleton and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all "
@@ -42822,11 +43491,11 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2662
+#: doc/classes/RenderingServer.xml:2658
msgid "Returns the number of bones allocated for this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2669
+#: doc/classes/RenderingServer.xml:2665
msgid ""
"Creates an empty sky and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all [code]sky_*[/"
@@ -42835,13 +43504,13 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2681
+#: doc/classes/RenderingServer.xml:2677
msgid ""
"Sets the material that the sky uses to render the background and reflection "
"maps."
msgstr ""
-#: doc/classes/RenderingServer.xml:2688
+#: doc/classes/RenderingServer.xml:2684
msgid ""
"Creates a spot light and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID can be used in most [code]light_*[/"
@@ -42852,15 +43521,15 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2717
+#: doc/classes/RenderingServer.xml:2713
msgid "Sets a viewport's camera."
msgstr ""
-#: doc/classes/RenderingServer.xml:2728
+#: doc/classes/RenderingServer.xml:2724
msgid "Sets a viewport's canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:2741
+#: doc/classes/RenderingServer.xml:2737
msgid ""
"Copies the viewport to a region of the screen specified by [code]rect[/"
"code]. If [method viewport_set_render_direct_to_screen] is [code]true[/"
@@ -42882,7 +43551,7 @@ msgid ""
"viewport_set_render_direct_to_screen]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2755
+#: doc/classes/RenderingServer.xml:2751
msgid ""
"Creates an empty viewport and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42891,72 +43560,72 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2767
+#: doc/classes/RenderingServer.xml:2763
msgid ""
"Returns a viewport's render information. For options, see the [enum "
"ViewportRenderInfo] constants."
msgstr ""
-#: doc/classes/RenderingServer.xml:2776
+#: doc/classes/RenderingServer.xml:2772
msgid "Returns the viewport's last rendered frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:2787
+#: doc/classes/RenderingServer.xml:2783
msgid "Detaches a viewport from a canvas and vice versa."
msgstr ""
-#: doc/classes/RenderingServer.xml:2798
+#: doc/classes/RenderingServer.xml:2794
msgid "If [code]true[/code], sets the viewport active, else sets it inactive."
msgstr ""
-#: doc/classes/RenderingServer.xml:2813
+#: doc/classes/RenderingServer.xml:2809
msgid ""
"Sets the stacking order for a viewport's canvas.\n"
"[code]layer[/code] is the actual canvas layer, while [code]sublayer[/code] "
"specifies the stacking order of the canvas among those in the same layer."
msgstr ""
-#: doc/classes/RenderingServer.xml:2827
+#: doc/classes/RenderingServer.xml:2823
msgid "Sets the transformation of a viewport's canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:2838
+#: doc/classes/RenderingServer.xml:2834
msgid ""
"Sets the clear mode of a viewport. See [enum ViewportClearMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2849
+#: doc/classes/RenderingServer.xml:2845
msgid ""
"Sets the debug draw mode of a viewport. See [enum ViewportDebugDraw] for "
"options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2860
+#: doc/classes/RenderingServer.xml:2856
msgid ""
"If [code]true[/code], rendering of a viewport's environment is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:2871
+#: doc/classes/RenderingServer.xml:2867
msgid "Sets the viewport's global transformation matrix."
msgstr ""
-#: doc/classes/RenderingServer.xml:2882
+#: doc/classes/RenderingServer.xml:2878
msgid "If [code]true[/code], the viewport's canvas is not rendered."
msgstr ""
-#: doc/classes/RenderingServer.xml:2893
+#: doc/classes/RenderingServer.xml:2889
msgid "Currently unimplemented in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:2904
+#: doc/classes/RenderingServer.xml:2900
msgid "Sets the anti-aliasing mode. See [enum ViewportMSAA] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2915
+#: doc/classes/RenderingServer.xml:2911
msgid "Sets the viewport's parent to another viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:2926
+#: doc/classes/RenderingServer.xml:2922
msgid ""
"If [code]true[/code], render the contents of the viewport directly to "
"screen. This allows a low-level optimization where you can skip drawing a "
@@ -42972,455 +43641,455 @@ msgid ""
"significantly larger than the window size."
msgstr ""
-#: doc/classes/RenderingServer.xml:2937
+#: doc/classes/RenderingServer.xml:2933
msgid ""
"Sets a viewport's scenario.\n"
"The scenario contains information about the [enum ScenarioDebugMode], "
"environment information, reflection atlas etc."
msgstr ""
-#: doc/classes/RenderingServer.xml:2951
+#: doc/classes/RenderingServer.xml:2947
msgid "Sets the shadow atlas quadrant's subdivision."
msgstr ""
-#: doc/classes/RenderingServer.xml:2962
+#: doc/classes/RenderingServer.xml:2958
msgid ""
"Sets the size of the shadow atlas's images (used for omni and spot lights). "
"The value will be rounded up to the nearest power of 2."
msgstr ""
-#: doc/classes/RenderingServer.xml:2975
+#: doc/classes/RenderingServer.xml:2971
msgid "Sets the viewport's width and height."
msgstr ""
-#: doc/classes/RenderingServer.xml:2986
+#: doc/classes/RenderingServer.xml:2982
msgid ""
"If [code]true[/code], the viewport renders its background as transparent."
msgstr ""
-#: doc/classes/RenderingServer.xml:2997
+#: doc/classes/RenderingServer.xml:2993
msgid ""
"Sets when the viewport should be updated. See [enum ViewportUpdateMode] "
"constants for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:3008
+#: doc/classes/RenderingServer.xml:3004
msgid ""
"If [code]true[/code], the viewport uses augmented or virtual reality "
"technologies. See [XRInterface]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3014
+#: doc/classes/RenderingServer.xml:3010
msgid ""
"If [code]false[/code], disables rendering completely, but the engine logic "
"is still being processed. You can call [method force_draw] to draw a frame "
"even with rendering disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3020
+#: doc/classes/RenderingServer.xml:3016
msgid ""
"Emitted at the end of the frame, after the RenderingServer has finished "
"updating all the Viewports."
msgstr ""
-#: doc/classes/RenderingServer.xml:3025
+#: doc/classes/RenderingServer.xml:3021
msgid ""
"Emitted at the beginning of the frame, before the RenderingServer updates "
"all the Viewports."
msgstr ""
-#: doc/classes/RenderingServer.xml:3031
+#: doc/classes/RenderingServer.xml:3027
msgid "Marks an error that shows that the index array is empty."
msgstr ""
-#: doc/classes/RenderingServer.xml:3034
+#: doc/classes/RenderingServer.xml:3030
msgid "Number of weights/bones per vertex."
msgstr ""
-#: doc/classes/RenderingServer.xml:3037
+#: doc/classes/RenderingServer.xml:3033
msgid "The minimum Z-layer for canvas items."
msgstr ""
-#: doc/classes/RenderingServer.xml:3040
+#: doc/classes/RenderingServer.xml:3036
msgid "The maximum Z-layer for canvas items."
msgstr ""
-#: doc/classes/RenderingServer.xml:3043
+#: doc/classes/RenderingServer.xml:3039
msgid ""
"Max number of glow levels that can be used with glow post-process effect."
msgstr ""
-#: doc/classes/RenderingServer.xml:3046
+#: doc/classes/RenderingServer.xml:3042
msgid "Unused enum in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:3067
+#: doc/classes/RenderingServer.xml:3063
msgid "Shader is a 3D shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3070
+#: doc/classes/RenderingServer.xml:3066
msgid "Shader is a 2D shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3073
+#: doc/classes/RenderingServer.xml:3069
msgid "Shader is a particle shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3076
+#: doc/classes/RenderingServer.xml:3072
msgid "Shader is a sky shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3079
+#: doc/classes/RenderingServer.xml:3075
msgid "Represents the size of the [enum ShaderMode] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3082
+#: doc/classes/RenderingServer.xml:3078
msgid "The minimum renderpriority of all materials."
msgstr ""
-#: doc/classes/RenderingServer.xml:3085
+#: doc/classes/RenderingServer.xml:3081
msgid "The maximum renderpriority of all materials."
msgstr ""
-#: doc/classes/RenderingServer.xml:3088
+#: doc/classes/RenderingServer.xml:3084
msgid "Array is a vertex array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3091
+#: doc/classes/RenderingServer.xml:3087
msgid "Array is a normal array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3094
+#: doc/classes/RenderingServer.xml:3090
msgid "Array is a tangent array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3097
+#: doc/classes/RenderingServer.xml:3093
msgid "Array is a color array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3100
+#: doc/classes/RenderingServer.xml:3096
msgid "Array is an UV coordinates array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3103
+#: doc/classes/RenderingServer.xml:3099
msgid "Array is an UV coordinates array for the second UV coordinates."
msgstr ""
-#: doc/classes/RenderingServer.xml:3106
+#: doc/classes/RenderingServer.xml:3102
msgid "Array contains bone information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3109
+#: doc/classes/RenderingServer.xml:3105
msgid "Array is weight information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3112
+#: doc/classes/RenderingServer.xml:3108
msgid "Array is index array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3118
+#: doc/classes/RenderingServer.xml:3114
msgid "Flag used to mark a vertex array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3121
+#: doc/classes/RenderingServer.xml:3117
msgid "Flag used to mark a normal array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3124
+#: doc/classes/RenderingServer.xml:3120
msgid "Flag used to mark a tangent array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3127
+#: doc/classes/RenderingServer.xml:3123
msgid "Flag used to mark a color array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3130
+#: doc/classes/RenderingServer.xml:3126
msgid "Flag used to mark an UV coordinates array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3133
+#: doc/classes/RenderingServer.xml:3129
msgid ""
"Flag used to mark an UV coordinates array for the second UV coordinates."
msgstr ""
-#: doc/classes/RenderingServer.xml:3136
+#: doc/classes/RenderingServer.xml:3132
msgid "Flag used to mark a bone information array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3139
+#: doc/classes/RenderingServer.xml:3135
msgid "Flag used to mark a weights array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3142
+#: doc/classes/RenderingServer.xml:3138
msgid "Flag used to mark an index array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3171
+#: doc/classes/RenderingServer.xml:3167
msgid "Primitive to draw consists of points."
msgstr ""
-#: doc/classes/RenderingServer.xml:3174
+#: doc/classes/RenderingServer.xml:3170
msgid "Primitive to draw consists of lines."
msgstr ""
-#: doc/classes/RenderingServer.xml:3177
+#: doc/classes/RenderingServer.xml:3173
msgid "Primitive to draw consists of a line strip from start to end."
msgstr ""
-#: doc/classes/RenderingServer.xml:3180
+#: doc/classes/RenderingServer.xml:3176
msgid "Primitive to draw consists of triangles."
msgstr ""
-#: doc/classes/RenderingServer.xml:3183
+#: doc/classes/RenderingServer.xml:3179
msgid ""
"Primitive to draw consists of a triangle strip (the last 3 vertices are "
"always combined to make a triangle)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3186
+#: doc/classes/RenderingServer.xml:3182
msgid "Represents the size of the [enum PrimitiveType] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3195
+#: doc/classes/RenderingServer.xml:3191
msgid "Use [Transform2D] to store MultiMesh transform."
msgstr ""
-#: doc/classes/RenderingServer.xml:3198
+#: doc/classes/RenderingServer.xml:3194
msgid "Use [Transform] to store MultiMesh transform."
msgstr ""
-#: doc/classes/RenderingServer.xml:3201
+#: doc/classes/RenderingServer.xml:3197
msgid "Is a directional (sun) light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3204
+#: doc/classes/RenderingServer.xml:3200
msgid "Is an omni light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3207
+#: doc/classes/RenderingServer.xml:3203
msgid "Is a spot light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3210
+#: doc/classes/RenderingServer.xml:3206
msgid "The light's energy."
msgstr ""
-#: doc/classes/RenderingServer.xml:3215
+#: doc/classes/RenderingServer.xml:3211
msgid "The light's influence on specularity."
msgstr ""
-#: doc/classes/RenderingServer.xml:3218
+#: doc/classes/RenderingServer.xml:3214
msgid "The light's range."
msgstr ""
-#: doc/classes/RenderingServer.xml:3221
+#: doc/classes/RenderingServer.xml:3217
msgid ""
"The size of the light when using spot light or omni light. The angular size "
"of the light when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3224
+#: doc/classes/RenderingServer.xml:3220
msgid "The light's attenuation."
msgstr ""
-#: doc/classes/RenderingServer.xml:3227
+#: doc/classes/RenderingServer.xml:3223
msgid "The spotlight's angle."
msgstr ""
-#: doc/classes/RenderingServer.xml:3230
+#: doc/classes/RenderingServer.xml:3226
msgid "The spotlight's attenuation."
msgstr ""
-#: doc/classes/RenderingServer.xml:3233
+#: doc/classes/RenderingServer.xml:3229
msgid "Max distance that shadows will be rendered."
msgstr ""
-#: doc/classes/RenderingServer.xml:3236
+#: doc/classes/RenderingServer.xml:3232
msgid "Proportion of shadow atlas occupied by the first split."
msgstr ""
-#: doc/classes/RenderingServer.xml:3239
+#: doc/classes/RenderingServer.xml:3235
msgid "Proportion of shadow atlas occupied by the second split."
msgstr ""
-#: doc/classes/RenderingServer.xml:3242
+#: doc/classes/RenderingServer.xml:3238
msgid ""
"Proportion of shadow atlas occupied by the third split. The fourth split "
"occupies the rest."
msgstr ""
-#: doc/classes/RenderingServer.xml:3245
+#: doc/classes/RenderingServer.xml:3241
msgid ""
"Proportion of shadow max distance where the shadow will start to fade out."
msgstr ""
-#: doc/classes/RenderingServer.xml:3248
+#: doc/classes/RenderingServer.xml:3244
msgid ""
"Normal bias used to offset shadow lookup by object normal. Can be used to "
"fix self-shadowing artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3251
+#: doc/classes/RenderingServer.xml:3247
msgid "Bias the shadow lookup to fix self-shadowing artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3257
+#: doc/classes/RenderingServer.xml:3253
msgid ""
"Blurs the edges of the shadow. Can be used to hide pixel artifacts in low "
"resolution shadow maps. A high value can make shadows appear grainy and can "
"cause other unwanted artifacts. Try to keep as near default as possible."
msgstr ""
-#: doc/classes/RenderingServer.xml:3262
+#: doc/classes/RenderingServer.xml:3258
msgid "Represents the size of the [enum LightParam] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3265
+#: doc/classes/RenderingServer.xml:3267
msgid "Use a dual paraboloid shadow map for omni lights."
msgstr ""
-#: doc/classes/RenderingServer.xml:3268
+#: doc/classes/RenderingServer.xml:3270
msgid ""
"Use a cubemap shadow map for omni lights. Slower but better quality than "
"dual paraboloid."
msgstr ""
-#: doc/classes/RenderingServer.xml:3271
+#: doc/classes/RenderingServer.xml:3273
msgid "Use orthogonal shadow projection for directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3274
+#: doc/classes/RenderingServer.xml:3276
msgid "Use 2 splits for shadow projection when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3277
+#: doc/classes/RenderingServer.xml:3279
msgid "Use 4 splits for shadow projection when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3280
+#: doc/classes/RenderingServer.xml:3282
msgid ""
"Keeps shadows stable as camera moves but has lower effective resolution."
msgstr ""
-#: doc/classes/RenderingServer.xml:3283
+#: doc/classes/RenderingServer.xml:3285
msgid ""
"Optimize use of shadow maps, increasing the effective resolution. But may "
"result in shadows moving or flickering slightly."
msgstr ""
-#: doc/classes/RenderingServer.xml:3286
+#: doc/classes/RenderingServer.xml:3288
msgid "Reflection probe will update reflections once and then stop."
msgstr ""
-#: doc/classes/RenderingServer.xml:3289
+#: doc/classes/RenderingServer.xml:3291
msgid ""
"Reflection probe will update each frame. This mode is necessary to capture "
"moving objects."
msgstr ""
-#: doc/classes/RenderingServer.xml:3302
+#: doc/classes/RenderingServer.xml:3310
msgid "Draw particles in the order that they appear in the particles array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3305
+#: doc/classes/RenderingServer.xml:3313
msgid "Sort particles based on their lifetime."
msgstr ""
-#: doc/classes/RenderingServer.xml:3308
+#: doc/classes/RenderingServer.xml:3316
msgid "Sort particles based on their distance to the camera."
msgstr ""
-#: doc/classes/RenderingServer.xml:3311
+#: doc/classes/RenderingServer.xml:3319
msgid "Do not update the viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:3314
+#: doc/classes/RenderingServer.xml:3322
msgid "Update the viewport once then set to disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3317
+#: doc/classes/RenderingServer.xml:3325
msgid "Update the viewport whenever it is visible."
msgstr ""
-#: doc/classes/RenderingServer.xml:3322
+#: doc/classes/RenderingServer.xml:3330
msgid "Always update the viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:3325
+#: doc/classes/RenderingServer.xml:3333
msgid "The viewport is always cleared before drawing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3328
+#: doc/classes/RenderingServer.xml:3336
msgid "The viewport is never cleared before drawing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3331
+#: doc/classes/RenderingServer.xml:3339
msgid ""
"The viewport is cleared once, then the clear mode is set to [constant "
"VIEWPORT_CLEAR_NEVER]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3334
+#: doc/classes/RenderingServer.xml:3342
msgid "Multisample antialiasing is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3337
+#: doc/classes/RenderingServer.xml:3345
msgid "Multisample antialiasing uses 2 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3340
+#: doc/classes/RenderingServer.xml:3348
msgid "Multisample antialiasing uses 4 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3343
+#: doc/classes/RenderingServer.xml:3351
msgid "Multisample antialiasing uses 8 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3346
+#: doc/classes/RenderingServer.xml:3354
msgid "Multisample antialiasing uses 16 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3357
+#: doc/classes/RenderingServer.xml:3365
msgid "Number of objects drawn in a single frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3360
+#: doc/classes/RenderingServer.xml:3368
msgid "Number of vertices drawn in a single frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3363
+#: doc/classes/RenderingServer.xml:3371
msgid "Number of material changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3366
+#: doc/classes/RenderingServer.xml:3374
msgid "Number of shader changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3369
+#: doc/classes/RenderingServer.xml:3377
msgid "Number of surface changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3372
+#: doc/classes/RenderingServer.xml:3380
msgid "Number of draw calls during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3375
+#: doc/classes/RenderingServer.xml:3383
msgid "Represents the size of the [enum ViewportRenderInfo] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3378
+#: doc/classes/RenderingServer.xml:3386
msgid "Debug draw is disabled. Default setting."
msgstr ""
-#: doc/classes/RenderingServer.xml:3381 doc/classes/Viewport.xml:348
+#: doc/classes/RenderingServer.xml:3389 doc/classes/Viewport.xml:348
msgid "Objects are displayed without light information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3384
+#: doc/classes/RenderingServer.xml:3392
msgid "Objects are displayed with only light information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3387 doc/classes/Viewport.xml:353
+#: doc/classes/RenderingServer.xml:3395 doc/classes/Viewport.xml:353
msgid ""
"Objects are displayed semi-transparent with additive blending so you can see "
"where they are drawing over top of one another. A higher overdraw means you "
@@ -43428,41 +44097,41 @@ msgid ""
"others."
msgstr ""
-#: doc/classes/RenderingServer.xml:3390
+#: doc/classes/RenderingServer.xml:3398
msgid "Debug draw draws objects in wireframe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3393
+#: doc/classes/RenderingServer.xml:3401
msgid ""
"Normal buffer is drawn instead of regular scene so you can see the per-pixel "
"normals that will be used by post-processing effects."
msgstr ""
-#: doc/classes/RenderingServer.xml:3396 doc/classes/Viewport.xml:361
+#: doc/classes/RenderingServer.xml:3404 doc/classes/Viewport.xml:361
msgid "Objects are displayed with only the albedo value from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3399 doc/classes/Viewport.xml:364
+#: doc/classes/RenderingServer.xml:3407 doc/classes/Viewport.xml:364
msgid "Objects are displayed with only the lighting value from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3402 doc/classes/Viewport.xml:367
+#: doc/classes/RenderingServer.xml:3410 doc/classes/Viewport.xml:367
msgid "Objects are displayed with only the emission color from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3405 doc/classes/Viewport.xml:370
+#: doc/classes/RenderingServer.xml:3413 doc/classes/Viewport.xml:370
msgid ""
"Draws the shadow atlas that stores shadows from [OmniLight3D]s and "
"[SpotLight3D]s in the upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3408 doc/classes/Viewport.xml:373
+#: doc/classes/RenderingServer.xml:3416 doc/classes/Viewport.xml:373
msgid ""
"Draws the shadow atlas that stores shadows from [DirectionalLight3D]s in the "
"upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3413
+#: doc/classes/RenderingServer.xml:3421
msgid ""
"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 "
@@ -43470,21 +44139,14 @@ msgid ""
"your [WorldEnvironment]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3416 doc/classes/Viewport.xml:381
-msgid ""
-"Draws the roughness limiter post process over the Viewport so you can see "
-"where it has an effect. It must be enabled in [member ProjectSettings."
-"rendering/quality/screen_filters/screen_space_roughness_limiter] to work."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:3419
+#: doc/classes/RenderingServer.xml:3424
msgid ""
"Colors each PSSM split for the [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."
msgstr ""
-#: doc/classes/RenderingServer.xml:3424
+#: doc/classes/RenderingServer.xml:3435
msgid ""
"Uses high quality importance sampling to process the radiance map. In "
"general, this results in much higher quality than [constant Sky."
@@ -43495,7 +44157,7 @@ msgid ""
"ggx_samples]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3427
+#: doc/classes/RenderingServer.xml:3438
msgid ""
"Uses the fast filtering algorithm to process the radiance map. In general "
"this results in lower quality, but substantially faster run times.\n"
@@ -43503,347 +44165,347 @@ msgid ""
"[member Sky.radiance_size] must be set to [constant Sky.RADIANCE_SIZE_256]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3431
+#: doc/classes/RenderingServer.xml:3442
msgid "Use the clear color as background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3434
+#: doc/classes/RenderingServer.xml:3445
msgid "Use a specified color as the background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3437
+#: doc/classes/RenderingServer.xml:3448
msgid "Use a sky resource for the background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3440
+#: doc/classes/RenderingServer.xml:3451
msgid ""
"Use a specified canvas layer as the background. This can be useful for "
"instantiating a 2D scene in a 3D world."
msgstr ""
-#: doc/classes/RenderingServer.xml:3443
+#: doc/classes/RenderingServer.xml:3454
msgid ""
"Do not clear the background, use whatever was rendered last frame as the "
"background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3449
+#: doc/classes/RenderingServer.xml:3460
msgid "Represents the size of the [enum EnvironmentBG] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3488
+#: doc/classes/RenderingServer.xml:3499
msgid "Output color as they came in."
msgstr ""
-#: doc/classes/RenderingServer.xml:3491
+#: doc/classes/RenderingServer.xml:3502
msgid "Use the Reinhard tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3494
+#: doc/classes/RenderingServer.xml:3505
msgid "Use the filmic tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3497
+#: doc/classes/RenderingServer.xml:3508
msgid "Use the ACES tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3508
+#: doc/classes/RenderingServer.xml:3519
msgid "Disables the blur set for SSAO. Will make SSAO look noisier."
msgstr ""
-#: doc/classes/RenderingServer.xml:3511
+#: doc/classes/RenderingServer.xml:3522
msgid "Perform a 1x1 blur on the SSAO output."
msgstr ""
-#: doc/classes/RenderingServer.xml:3514
+#: doc/classes/RenderingServer.xml:3525
msgid "Performs a 2x2 blur on the SSAO output."
msgstr ""
-#: doc/classes/RenderingServer.xml:3517
+#: doc/classes/RenderingServer.xml:3528
msgid "Performs a 3x3 blur on the SSAO output. Use this for smoothest SSAO."
msgstr ""
-#: doc/classes/RenderingServer.xml:3520
+#: doc/classes/RenderingServer.xml:3531
msgid "Lowest quality of screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3523
+#: doc/classes/RenderingServer.xml:3534
msgid "Medium quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3526
+#: doc/classes/RenderingServer.xml:3537
msgid "High quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3529
+#: doc/classes/RenderingServer.xml:3540
msgid "Highest quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3540
+#: doc/classes/RenderingServer.xml:3551
msgid ""
"Lowest quality DOF blur. This is the fastest setting, but you may be able to "
"see filtering artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3543
+#: doc/classes/RenderingServer.xml:3554
msgid "Low quality DOF blur."
msgstr ""
-#: doc/classes/RenderingServer.xml:3546
+#: doc/classes/RenderingServer.xml:3557
msgid "Medium quality DOF blur."
msgstr ""
-#: doc/classes/RenderingServer.xml:3549
+#: doc/classes/RenderingServer.xml:3560
msgid ""
"Highest quality DOF blur. Results in the smoothest looking blur by taking "
"the most samples, but is also significantly slower."
msgstr ""
-#: doc/classes/RenderingServer.xml:3552
+#: doc/classes/RenderingServer.xml:3563
msgid ""
"Calculate the DOF blur using a box filter. The fastest option, but results "
"in obvious lines in blur pattern."
msgstr ""
-#: doc/classes/RenderingServer.xml:3555
+#: doc/classes/RenderingServer.xml:3566
msgid "Calculates DOF blur using a hexagon shaped filter."
msgstr ""
-#: doc/classes/RenderingServer.xml:3558
+#: doc/classes/RenderingServer.xml:3569
msgid ""
"Calculates DOF blur using a circle shaped filter. Best quality and most "
"realistic, but slowest. Use only for areas where a lot of performance can be "
"dedicated to post-processing (e.g. cutscenes)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3573
+#: doc/classes/RenderingServer.xml:3584
msgid "Do not use a debug mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:3576
+#: doc/classes/RenderingServer.xml:3587
msgid "Draw all objects as wireframe models."
msgstr ""
-#: doc/classes/RenderingServer.xml:3579
+#: doc/classes/RenderingServer.xml:3590
msgid ""
"Draw all objects in a way that displays how much overdraw is occurring. "
"Overdraw occurs when a section of pixels is drawn and shaded and then "
"another object covers it up. To optimize a scene, you should reduce overdraw."
msgstr ""
-#: doc/classes/RenderingServer.xml:3582
+#: doc/classes/RenderingServer.xml:3593
msgid ""
"Draw all objects without shading. Equivalent to setting all objects shaders "
"to [code]unshaded[/code]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3585
+#: doc/classes/RenderingServer.xml:3596
msgid "The instance does not have a type."
msgstr ""
-#: doc/classes/RenderingServer.xml:3588
+#: doc/classes/RenderingServer.xml:3599
msgid "The instance is a mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:3591
+#: doc/classes/RenderingServer.xml:3602
msgid "The instance is a multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:3594
+#: doc/classes/RenderingServer.xml:3605
msgid "The instance is an immediate geometry."
msgstr ""
-#: doc/classes/RenderingServer.xml:3597
+#: doc/classes/RenderingServer.xml:3608
msgid "The instance is a particle emitter."
msgstr ""
-#: doc/classes/RenderingServer.xml:3600
+#: doc/classes/RenderingServer.xml:3611
msgid "The instance is a light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3603
+#: doc/classes/RenderingServer.xml:3614
msgid "The instance is a reflection probe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3606
+#: doc/classes/RenderingServer.xml:3617
msgid "The instance is a decal."
msgstr ""
-#: doc/classes/RenderingServer.xml:3609
+#: doc/classes/RenderingServer.xml:3620
msgid "The instance is a GI probe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3612
+#: doc/classes/RenderingServer.xml:3623
msgid "The instance is a lightmap."
msgstr ""
-#: doc/classes/RenderingServer.xml:3615
+#: doc/classes/RenderingServer.xml:3626
msgid "Represents the size of the [enum InstanceType] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3618
+#: doc/classes/RenderingServer.xml:3629
msgid ""
"A combination of the flags of geometry instances (mesh, multimesh, immediate "
"and particles)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3621
+#: doc/classes/RenderingServer.xml:3632
msgid "Allows the instance to be used in baked lighting."
msgstr ""
-#: doc/classes/RenderingServer.xml:3624
+#: doc/classes/RenderingServer.xml:3635
msgid "Allows the instance to be used with dynamic global illumination."
msgstr ""
-#: doc/classes/RenderingServer.xml:3627
+#: doc/classes/RenderingServer.xml:3638
msgid "When set, manually requests to draw geometry on next frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3630
+#: doc/classes/RenderingServer.xml:3641
msgid "Represents the size of the [enum InstanceFlags] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3633
+#: doc/classes/RenderingServer.xml:3644
msgid "Disable shadows from this instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:3636
+#: doc/classes/RenderingServer.xml:3647
msgid "Cast shadows from this instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:3639
+#: doc/classes/RenderingServer.xml:3650
msgid ""
"Disable backface culling when rendering the shadow of the object. This is "
"slightly slower but may result in more correct shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3642
+#: doc/classes/RenderingServer.xml:3653
msgid ""
"Only render the shadows from the object. The object itself will not be drawn."
msgstr ""
-#: doc/classes/RenderingServer.xml:3645
+#: doc/classes/RenderingServer.xml:3656
msgid "The nine patch gets stretched where needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3648
+#: doc/classes/RenderingServer.xml:3659
msgid "The nine patch gets filled with tiles where needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3651
+#: doc/classes/RenderingServer.xml:3662
msgid ""
"The nine patch gets filled with tiles where needed and stretches them a bit "
"if needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3654
+#: doc/classes/RenderingServer.xml:3665
msgid "Uses the default filter mode for this [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3666 doc/classes/Viewport.xml:399
+#: doc/classes/RenderingServer.xml:3677 doc/classes/Viewport.xml:402
msgid ""
"The texture filter blends between the nearest 4 pixels and between the "
"nearest 2 mipmaps."
msgstr ""
-#: doc/classes/RenderingServer.xml:3675
+#: doc/classes/RenderingServer.xml:3686
msgid "Max value for [enum CanvasItemTextureFilter] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3678
+#: doc/classes/RenderingServer.xml:3689
msgid "Uses the default repeat mode for this [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3681 doc/classes/Viewport.xml:405
+#: doc/classes/RenderingServer.xml:3692 doc/classes/Viewport.xml:408
msgid ""
"Disables textures repeating. Instead, when reading UVs outside the 0-1 "
"range, the value will be clamped to the edge of the texture, resulting in a "
"stretched out look at the borders of the texture."
msgstr ""
-#: doc/classes/RenderingServer.xml:3687 doc/classes/Viewport.xml:411
+#: doc/classes/RenderingServer.xml:3698 doc/classes/Viewport.xml:414
msgid ""
"Flip the texture when repeating so that the edge lines up instead of "
"abruptly changing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3690
+#: doc/classes/RenderingServer.xml:3701
msgid "Max value for [enum CanvasItemTextureRepeat] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3693
+#: doc/classes/RenderingServer.xml:3704
msgid "Adds light color additive to the canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:3696
+#: doc/classes/RenderingServer.xml:3707
msgid "Adds light color subtractive to the canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:3699
+#: doc/classes/RenderingServer.xml:3710
msgid "The light adds color depending on transparency."
msgstr ""
-#: doc/classes/RenderingServer.xml:3702
+#: doc/classes/RenderingServer.xml:3713
msgid "The light adds color depending on mask."
msgstr ""
-#: doc/classes/RenderingServer.xml:3705
+#: doc/classes/RenderingServer.xml:3716
msgid "Do not apply a filter to canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3708
+#: doc/classes/RenderingServer.xml:3719
msgid "Use PCF5 filtering to filter canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3711
+#: doc/classes/RenderingServer.xml:3722
msgid "Use PCF13 filtering to filter canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3714
+#: doc/classes/RenderingServer.xml:3725
msgid "Max value of the [enum CanvasLightShadowFilter] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3717
+#: doc/classes/RenderingServer.xml:3728
msgid "Culling of the canvas occluder is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3720
+#: doc/classes/RenderingServer.xml:3731
msgid "Culling of the canvas occluder is clockwise."
msgstr ""
-#: doc/classes/RenderingServer.xml:3723
+#: doc/classes/RenderingServer.xml:3734
msgid "Culling of the canvas occluder is counterclockwise."
msgstr ""
-#: doc/classes/RenderingServer.xml:3784
+#: doc/classes/RenderingServer.xml:3795
msgid "The amount of objects in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3787
+#: doc/classes/RenderingServer.xml:3798
msgid "The amount of vertices in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3790
+#: doc/classes/RenderingServer.xml:3801
msgid "The amount of modified materials in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3793
+#: doc/classes/RenderingServer.xml:3804
msgid "The amount of shader rebinds in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3796
+#: doc/classes/RenderingServer.xml:3807
msgid "The amount of surface changes in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3799
+#: doc/classes/RenderingServer.xml:3810
msgid "The amount of draw calls in frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3814
+#: doc/classes/RenderingServer.xml:3825
msgid "Hardware supports shaders. This enum is currently unused in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:3817
+#: doc/classes/RenderingServer.xml:3828
msgid ""
"Hardware supports multithreading. This enum is currently unused in Godot 3.x."
msgstr ""
@@ -43855,13 +44517,13 @@ msgstr ""
#: doc/classes/Resource.xml:7
msgid ""
"Resource is the base class for all Godot-specific resource types, serving "
-"primarily as data containers. They are reference counted and freed when no "
-"longer in use. They are also cached once loaded from disk, so that any "
-"further attempts to load a resource from a given path will return the same "
-"reference (all this in contrast to a [Node], which is not reference counted "
-"and can be instanced from disk as many times as desired). Resources can be "
-"saved externally on disk or bundled into another object, such as a [Node] or "
-"another resource."
+"primarily as data containers. Unlike [Object]s, they are reference-counted "
+"and freed when no longer in use. They are also cached once loaded from disk, "
+"so that any further attempts to load a resource from a given path will "
+"return the same reference (all this in contrast to a [Node], which is not "
+"reference-counted and can be instanced from disk as many times as desired). "
+"Resources can be saved externally on disk or bundled into another object, "
+"such as a [Node] or another resource."
msgstr ""
#: doc/classes/Resource.xml:10
@@ -43870,34 +44532,38 @@ msgid ""
"resources.html"
msgstr ""
-#: doc/classes/Resource.xml:17
+#: doc/classes/Resource.xml:18
msgid ""
"Virtual function which can be overridden to customize the behavior value of "
"[method setup_local_to_scene]."
msgstr ""
-#: doc/classes/Resource.xml:26
+#: doc/classes/Resource.xml:27
msgid ""
"Duplicates the resource, returning a new resource. By default, sub-resources "
-"are shared between resource copies for efficiency, this can be changed by "
-"passing [code]true[/code] to the [code]subresources[/code] argument."
+"are shared between resource copies for efficiency. This can be changed by "
+"passing [code]true[/code] to the [code]subresources[/code] argument which "
+"will copy the subresources.\n"
+"[b]Note:[/b] If [code]subresources[/code] is [code]true[/code], this method "
+"will only perform a shallow copy. Nested resources within subresources will "
+"not be duplicated and will still be shared."
msgstr ""
-#: doc/classes/Resource.xml:33
+#: doc/classes/Resource.xml:35
msgid ""
"If [member resource_local_to_scene] is enabled and the resource was loaded "
"from a [PackedScene] instantiation, returns the local scene where this "
"resource's unique copy is in use. Otherwise, returns [code]null[/code]."
msgstr ""
-#: doc/classes/Resource.xml:40
+#: doc/classes/Resource.xml:42
msgid ""
"Returns the RID of the resource (or an empty RID). Many resources (such as "
"[Texture2D], [Mesh], etc) are high-level abstractions of resources stored in "
"a server, so this function will return the original RID."
msgstr ""
-#: doc/classes/Resource.xml:47
+#: doc/classes/Resource.xml:49
msgid ""
"This method is called when a resource with [member resource_local_to_scene] "
"enabled is loaded from a [PackedScene] instantiation. Its behavior can be "
@@ -43907,7 +44573,7 @@ msgid ""
"local viewport."
msgstr ""
-#: doc/classes/Resource.xml:57
+#: doc/classes/Resource.xml:59
msgid ""
"Sets the path of the resource, potentially overriding an existing cache "
"entry for this path. This differs from setting [member resource_path], as "
@@ -43915,25 +44581,25 @@ msgid ""
"given path."
msgstr ""
-#: doc/classes/Resource.xml:63
+#: doc/classes/Resource.xml:65
msgid ""
"If [code]true[/code], the resource will be made unique in each instance of "
"its local scene. It can thus be modified in a scene instance without "
"impacting other instances of that same scene."
msgstr ""
-#: doc/classes/Resource.xml:66
+#: doc/classes/Resource.xml:68
msgid "The name of the resource. This is an optional identifier."
msgstr ""
-#: doc/classes/Resource.xml:69
+#: doc/classes/Resource.xml:71
msgid ""
"The path to the resource. In case it has its own file, it will return its "
"filepath. If it's tied to the scene, it will return the scene's path, "
"followed by the resource's index."
msgstr ""
-#: doc/classes/Resource.xml:75
+#: doc/classes/Resource.xml:77
msgid "Emitted whenever the resource changes."
msgstr ""
@@ -44752,11 +45418,11 @@ msgid ""
"global coordinate system, but is centered at the object's origin."
msgstr ""
-#: doc/classes/RigidBody2D.xml:87
+#: doc/classes/RigidBody2D.xml:87 doc/classes/RigidBody3D.xml:99
msgid ""
-"Returns a list of the bodies colliding with this one. Use [member "
-"contacts_reported] to set the maximum number reported. You must also set "
-"[member contact_monitor] to [code]true[/code].\n"
+"Returns a list of the bodies colliding with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
"For performance, list of collisions is updated once per frame and before the "
"physics step. Consider using signals instead."
@@ -44793,7 +45459,7 @@ msgstr ""
msgid "The body's total applied torque."
msgstr ""
-#: doc/classes/RigidBody2D.xml:130 doc/classes/RigidBody3D.xml:150
+#: doc/classes/RigidBody2D.xml:130 doc/classes/RigidBody3D.xml:157
msgid ""
"If [code]true[/code], the body can enter sleep mode when there is no "
"movement. See [member sleeping]."
@@ -44805,11 +45471,17 @@ msgid ""
"another RigidBody2D. See also [member contacts_reported]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:136
-msgid "The maximum number of contacts to report."
+#: doc/classes/RigidBody2D.xml:136 doc/classes/RigidBody3D.xml:163
+msgid ""
+"The maximum number of contacts that will be recorded. Requires [member "
+"contact_monitor] to be set to [code]true[/code].\n"
+"[b]Note:[/b] The number of contacts is different from the number of "
+"collisions. Collisions between parallel edges will result in two contacts "
+"(one at each end), and collisions between parallel faces will result in four "
+"contacts (one at each corner)."
msgstr ""
-#: doc/classes/RigidBody2D.xml:139
+#: doc/classes/RigidBody2D.xml:140
msgid ""
"Continuous collision detection mode.\n"
"Continuous collision detection tries to predict where a moving body will "
@@ -44819,21 +45491,21 @@ msgid ""
"methods are available. See [enum CCDMode] for details."
msgstr ""
-#: doc/classes/RigidBody2D.xml:143
+#: doc/classes/RigidBody2D.xml:144
msgid ""
"If [code]true[/code], internal force integration is disabled for this body. "
"Aside from collision response, the body will only move as determined by the "
"[method _integrate_forces] function."
msgstr ""
-#: doc/classes/RigidBody2D.xml:146
+#: doc/classes/RigidBody2D.xml:147
msgid ""
"Multiplies the gravity applied to the body. The body's gravity is calculated "
"from the [b]Default Gravity[/b] value in [b]Project > Project Settings > "
"Physics > 2d[/b] and/or any additional gravity vector applied by [Area2D]s."
msgstr ""
-#: doc/classes/RigidBody2D.xml:149
+#: doc/classes/RigidBody2D.xml:150
msgid ""
"The body's moment of inertia. This is like mass, but for rotation: it "
"determines how much torque it takes to rotate the body. The moment of "
@@ -44842,18 +45514,18 @@ msgid ""
"automatically computing it."
msgstr ""
-#: doc/classes/RigidBody2D.xml:152
+#: doc/classes/RigidBody2D.xml:153
msgid ""
"Damps the body's [member linear_velocity]. If [code]-1[/code], the body will "
"use the [b]Default Linear Damp[/b] in [b]Project > Project Settings > "
"Physics > 2d[/b]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:161
+#: doc/classes/RigidBody2D.xml:162
msgid "The body's mode. See [enum Mode] for possible values."
msgstr ""
-#: doc/classes/RigidBody2D.xml:164 doc/classes/RigidBody3D.xml:181
+#: doc/classes/RigidBody2D.xml:165 doc/classes/RigidBody3D.xml:189
#: doc/classes/StaticBody2D.xml:22 doc/classes/StaticBody3D.xml:22
msgid ""
"The physics material override for the body.\n"
@@ -44861,50 +45533,50 @@ msgid ""
"other physics material, such as an inherited one."
msgstr ""
-#: doc/classes/RigidBody2D.xml:168 doc/classes/RigidBody3D.xml:185
+#: doc/classes/RigidBody2D.xml:169 doc/classes/RigidBody3D.xml:193
msgid ""
"If [code]true[/code], the body will not move and will not calculate forces "
"until woken up by another body through, for example, a collision, or by "
"using the [method apply_impulse] or [method add_force] methods."
msgstr ""
-#: doc/classes/RigidBody2D.xml:171
+#: doc/classes/RigidBody2D.xml:172
msgid ""
"The body's weight based on its mass and the [b]Default Gravity[/b] value in "
"[b]Project > Project Settings > Physics > 2d[/b]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:179
+#: doc/classes/RigidBody2D.xml:180 doc/classes/RigidBody3D.xml:204
msgid ""
-"Emitted when a body enters into contact with this one. [member "
-"contact_monitor] must be [code]true[/code] and [member contacts_reported] "
-"greater than [code]0[/code]."
+"Emitted when a body enters into contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:186
+#: doc/classes/RigidBody2D.xml:187
msgid ""
-"Emitted when a body exits contact with this one. [member contact_monitor] "
-"must be [code]true[/code] and [member contacts_reported] greater than "
-"[code]0[/code]."
+"Emitted when a body exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:199
+#: doc/classes/RigidBody2D.xml:200
msgid ""
"Emitted when a body enters into contact with this one. Reports colliding "
"shape information. See [CollisionObject2D] for shape index information. "
-"[member contact_monitor] must be [code]true[/code] and [member "
-"contacts_reported] greater than [code]0[/code]."
+"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:212
+#: doc/classes/RigidBody2D.xml:213
msgid ""
"Emitted when a body shape exits contact with this one. Reports colliding "
"shape information. See [CollisionObject2D] for shape index information. "
-"[member contact_monitor] must be [code]true[/code] and [member "
-"contacts_reported] greater than [code]0[/code]."
+"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:217 doc/classes/RigidBody3D.xml:236
+#: doc/classes/RigidBody2D.xml:218 doc/classes/RigidBody3D.xml:244
msgid ""
"Emitted when the physics engine changes the body's sleeping state.\n"
"[b]Note:[/b] Changing the value [member sleeping] will not trigger this "
@@ -44912,41 +45584,41 @@ msgid ""
"engine or [code]emit_signal(\"sleeping_state_changed\")[/code] is used."
msgstr ""
-#: doc/classes/RigidBody2D.xml:224
+#: doc/classes/RigidBody2D.xml:225
msgid ""
"Rigid mode. The body behaves as a physical object. It collides with other "
"bodies and responds to forces applied to it. This is the default mode."
msgstr ""
-#: doc/classes/RigidBody2D.xml:227
+#: doc/classes/RigidBody2D.xml:228
msgid "Static mode. The body behaves like a [StaticBody2D] and does not move."
msgstr ""
-#: doc/classes/RigidBody2D.xml:230
+#: doc/classes/RigidBody2D.xml:231
msgid ""
"Character mode. Similar to [constant MODE_RIGID], but the body can not "
"rotate."
msgstr ""
-#: doc/classes/RigidBody2D.xml:233
+#: doc/classes/RigidBody2D.xml:234
msgid ""
"Kinematic mode. The body behaves like a [KinematicBody2D], and must be moved "
"by code."
msgstr ""
-#: doc/classes/RigidBody2D.xml:236
+#: doc/classes/RigidBody2D.xml:237
msgid ""
"Continuous collision detection disabled. This is the fastest way to detect "
"body collisions, but can miss small, fast-moving objects."
msgstr ""
-#: doc/classes/RigidBody2D.xml:239
+#: doc/classes/RigidBody2D.xml:240
msgid ""
"Continuous collision detection enabled using raycasting. This is faster than "
"shapecasting but less precise."
msgstr ""
-#: doc/classes/RigidBody2D.xml:242
+#: doc/classes/RigidBody2D.xml:243
msgid ""
"Continuous collision detection enabled using shapecasting. This is the "
"slowest CCD method and the most precise."
@@ -45032,42 +45704,31 @@ msgid ""
"locked."
msgstr ""
-#: doc/classes/RigidBody3D.xml:99
+#: doc/classes/RigidBody3D.xml:107
msgid ""
-"Returns a list of the bodies colliding with this one. By default, number of "
-"max contacts reported is at 0, see the [member contacts_reported] property "
-"to increase it.\n"
-"[b]Note:[/b] The result of this test is not immediate after moving objects. "
-"For performance, list of collisions is updated once per frame and before the "
-"physics step. Consider using signals instead."
+"Returns the inverse inertia tensor basis. This is used to calculate the "
+"angular acceleration resulting from a torque applied to the [RigidBody3D]."
msgstr ""
-#: doc/classes/RigidBody3D.xml:111
+#: doc/classes/RigidBody3D.xml:118
msgid "Locks the specified linear or rotational axis."
msgstr ""
-#: doc/classes/RigidBody3D.xml:126
+#: doc/classes/RigidBody3D.xml:133
msgid "Damps RigidBody3D's rotational forces."
msgstr ""
-#: doc/classes/RigidBody3D.xml:129
+#: doc/classes/RigidBody3D.xml:136
msgid "RigidBody3D's rotational velocity."
msgstr ""
-#: doc/classes/RigidBody3D.xml:153
+#: doc/classes/RigidBody3D.xml:160
msgid ""
"If [code]true[/code], the RigidBody3D will emit signals when it collides "
-"with another RigidBody3D."
+"with another RigidBody3D. See also [member contacts_reported]."
msgstr ""
-#: doc/classes/RigidBody3D.xml:156
-msgid ""
-"The maximum contacts to report. Bodies can keep a log of the contacts with "
-"other bodies, this is enabled by setting the maximum amount of contacts "
-"reported to a number greater than 0."
-msgstr ""
-
-#: doc/classes/RigidBody3D.xml:159
+#: doc/classes/RigidBody3D.xml:167
msgid ""
"If [code]true[/code], continuous collision detection is used.\n"
"Continuous collision detection tries to predict where a moving body will "
@@ -45077,7 +45738,7 @@ msgid ""
"faster to compute, but can miss small, fast-moving objects."
msgstr ""
-#: doc/classes/RigidBody3D.xml:163
+#: doc/classes/RigidBody3D.xml:171
msgid ""
"If [code]true[/code], internal force integration will be disabled (like "
"gravity or air friction) for this body. Other than collision response, the "
@@ -45085,7 +45746,7 @@ msgid ""
"function, if defined."
msgstr ""
-#: doc/classes/RigidBody3D.xml:166
+#: doc/classes/RigidBody3D.xml:174
msgid ""
"This is multiplied by the global 3D gravity setting found in [b]Project > "
"Project Settings > Physics > 3d[/b] to produce RigidBody3D's gravity. For "
@@ -45093,14 +45754,14 @@ msgid ""
"and 0.5 will apply half gravity to this object."
msgstr ""
-#: doc/classes/RigidBody3D.xml:169
+#: doc/classes/RigidBody3D.xml:177
msgid ""
"The body's linear damp. Cannot be less than -1.0. If this value is different "
"from -1.0, any linear damp derived from the world or areas will be "
"overridden."
msgstr ""
-#: doc/classes/RigidBody3D.xml:172
+#: doc/classes/RigidBody3D.xml:180
msgid ""
"The body's linear velocity. Can be used sporadically, but [b]don't set this "
"every frame[/b], because physics may run in another thread and runs at a "
@@ -45108,60 +45769,57 @@ msgid ""
"for precise control of the body state."
msgstr ""
-#: doc/classes/RigidBody3D.xml:178
+#: doc/classes/RigidBody3D.xml:186
msgid "The body mode. See [enum Mode] for possible values."
msgstr ""
-#: doc/classes/RigidBody3D.xml:196
-msgid ""
-"Emitted when a body enters into contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work."
-msgstr ""
-
-#: doc/classes/RigidBody3D.xml:203
+#: doc/classes/RigidBody3D.xml:211
msgid ""
-"Emitted when a body shape exits contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work."
+"Emitted when a body shape exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody3D.xml:216
+#: doc/classes/RigidBody3D.xml:224
msgid ""
-"Emitted when a body enters into contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work.\n"
+"Emitted when a body enters into contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"This signal not only receives the body that collided with this one, but also "
"its [RID] ([code]body_id[/code]), the shape index from the colliding body "
"([code]body_shape[/code]), and the shape index from this body "
"([code]local_shape[/code]) the other body collided with."
msgstr ""
-#: doc/classes/RigidBody3D.xml:230
+#: doc/classes/RigidBody3D.xml:238
msgid ""
-"Emitted when a body shape exits contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work.\n"
+"Emitted when a body shape exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"This signal not only receives the body that stopped colliding with this one, "
"but also its [RID] ([code]body_id[/code]), the shape index from the "
"colliding body ([code]body_shape[/code]), and the shape index from this body "
"([code]local_shape[/code]) the other body stopped colliding with."
msgstr ""
-#: doc/classes/RigidBody3D.xml:243
+#: doc/classes/RigidBody3D.xml:251
msgid ""
"Rigid body mode. This is the \"natural\" state of a rigid body. It is "
"affected by forces, and can move, rotate, and be affected by user code."
msgstr ""
-#: doc/classes/RigidBody3D.xml:246
+#: doc/classes/RigidBody3D.xml:254
msgid ""
"Static mode. The body behaves like a [StaticBody3D], and can only move by "
"user code."
msgstr ""
-#: doc/classes/RigidBody3D.xml:249
+#: doc/classes/RigidBody3D.xml:257
msgid ""
"Character body mode. This behaves like a rigid body, but can not rotate."
msgstr ""
-#: doc/classes/RigidBody3D.xml:252
+#: doc/classes/RigidBody3D.xml:260
msgid ""
"Kinematic body mode. The body behaves like a [KinematicBody3D], and can only "
"move by user code."
@@ -45668,7 +46326,7 @@ msgstr ""
msgid "The time remaining."
msgstr ""
-#: doc/classes/SceneTreeTimer.xml:28 doc/classes/Timer.xml:62
+#: doc/classes/SceneTreeTimer.xml:28 doc/classes/Timer.xml:63
msgid "Emitted when the timer reaches 0."
msgstr ""
@@ -45791,27 +46449,27 @@ msgid ""
"the singleton using [method EditorInterface.get_script_editor]."
msgstr ""
-#: doc/classes/ScriptEditor.xml:40
+#: doc/classes/ScriptEditor.xml:46
msgid "Returns a [Script] that is currently active in editor."
msgstr ""
-#: doc/classes/ScriptEditor.xml:57
+#: doc/classes/ScriptEditor.xml:69
msgid ""
"Returns an array with all [Script] objects which are currently open in "
"editor."
msgstr ""
-#: doc/classes/ScriptEditor.xml:66
+#: doc/classes/ScriptEditor.xml:78
msgid "Goes to the specified line in the current script."
msgstr ""
-#: doc/classes/ScriptEditor.xml:85
+#: doc/classes/ScriptEditor.xml:113
msgid ""
"Emitted when user changed active script. Argument is a freshly activated "
"[Script]."
msgstr ""
-#: doc/classes/ScriptEditor.xml:92
+#: doc/classes/ScriptEditor.xml:120
msgid ""
"Emitted when editor is about to close the active script. Argument is a "
"[Script] that is going to be closed."
@@ -45873,7 +46531,7 @@ msgid ""
"visible."
msgstr ""
-#: doc/classes/ScrollContainer.xml:37 doc/classes/TextEdit.xml:453
+#: doc/classes/ScrollContainer.xml:37 doc/classes/TextEdit.xml:407
msgid "The current horizontal scroll value."
msgstr ""
@@ -45881,7 +46539,7 @@ msgstr ""
msgid "If [code]true[/code], enables horizontal scrolling."
msgstr ""
-#: doc/classes/ScrollContainer.xml:43 doc/classes/TextEdit.xml:456
+#: doc/classes/ScrollContainer.xml:43 doc/classes/TextEdit.xml:410
msgid "The current vertical scroll value."
msgstr ""
@@ -46400,7 +47058,7 @@ msgstr ""
msgid ""
"Sets the global pose transform, [code]pose[/code], for the bone at "
"[code]bone_idx[/code].\n"
-"[code]amount[/code] is the interpolation strengh that will be used when "
+"[code]amount[/code] is the interpolation strength that will be used when "
"applying the pose, and [code]persistent[/code] determines if the applied "
"pose will remain.\n"
"[b]Note[/b]: The pose transform needs to be in bone space. Use [method "
@@ -46417,7 +47075,7 @@ msgstr ""
#: doc/classes/Skeleton3D.xml:266
msgid ""
-"Returns the pose transform for bone [code]bone_idx[/code].\n"
+"Sets the pose transform for bone [code]bone_idx[/code].\n"
"[b]Note[/b]: The pose transform needs to be in bone space. Use [method "
"world_transform_to_bone_transform] to convert a world transform, like one "
"you can get from a [Node3D], to bone space."
@@ -46510,6 +47168,16 @@ msgstr ""
#: doc/classes/Sky.xml:52
msgid ""
+"Automatically selects the appropriate process mode based on your sky shader. "
+"If your shader uses [code]TIME[/code] or [code]POSITION[/code], this will "
+"use [constant PROCESS_MODE_REALTIME]. If your shader uses any of the "
+"[code]LIGHT_*[/code] variables or any custom uniforms, this uses [constant "
+"PROCESS_MODE_INCREMENTAL]. Otherwise, this defaults to [constant "
+"PROCESS_MODE_QUALITY]."
+msgstr ""
+
+#: doc/classes/Sky.xml:55
+msgid ""
"Uses high quality importance sampling to process the radiance map. In "
"general, this results in much higher quality than [constant "
"PROCESS_MODE_REALTIME] but takes much longer to generate. This should not be "
@@ -46519,10 +47187,22 @@ msgid ""
"ggx_samples]."
msgstr ""
-#: doc/classes/Sky.xml:55
+#: doc/classes/Sky.xml:58
+msgid ""
+"Uses the same high quality importance sampling to process the radiance map "
+"as [constant PROCESS_MODE_QUALITY], but updates over several frames. The "
+"number of frames is determined by [member ProjectSettings.rendering/quality/"
+"reflections/roughness_layers]. Use this when you need highest quality "
+"radiance maps, but have a sky that updates slowly."
+msgstr ""
+
+#: doc/classes/Sky.xml:61
msgid ""
"Uses the fast filtering algorithm to process the radiance map. In general "
-"this results in lower quality, but substantially faster run times.\n"
+"this results in lower quality, but substantially faster run times. If you "
+"need better quality, but still need to update the sky every frame, consider "
+"turning on [member ProjectSettings.rendering/quality/reflections/"
+"fast_filter_high_quality].\n"
"[b]Note:[/b] The fast filtering algorithm is limited to 256x256 cubemaps, so "
"[member radiance_size] must be set to [constant RADIANCE_SIZE_256]."
msgstr ""
@@ -46859,9 +47539,7 @@ msgid ""
msgstr ""
#: doc/classes/SpringArm3D.xml:35
-msgid ""
-"Returns the proportion between the current arm length (after checking for "
-"collisions) and the [member spring_length]. Ranges from 0 to 1."
+msgid "Returns the spring arm's current length."
msgstr ""
#: doc/classes/SpringArm3D.xml:44
@@ -47557,7 +48235,7 @@ msgstr ""
msgid ""
"This is the built-in string class (and the one used by GDScript). It "
"supports Unicode and provides all necessary means for string handling. "
-"Strings are reference counted and use a copy-on-write approach, so passing "
+"Strings are reference-counted and use a copy-on-write approach, so passing "
"them around is cheap in resources."
msgstr ""
@@ -47712,26 +48390,32 @@ msgstr ""
#: doc/classes/String.xml:328
msgid ""
"Returns a copy of the string with escaped characters replaced by their "
-"meanings according to the C language standard."
+"meanings. Supported escape sequences are [code]\\'[/code], [code]\\\"[/"
+"code], [code]\\?[/code], [code]\\\\[/code], [code]\\a[/code], [code]\\b[/"
+"code], [code]\\f[/code], [code]\\n[/code], [code]\\r[/code], [code]\\t[/"
+"code], [code]\\v[/code].\n"
+"[b]Note:[/b] Unlike the GDScript parser, this method doesn't support the "
+"[code]\\uXXXX[/code] escape sequence."
msgstr ""
-#: doc/classes/String.xml:335
+#: doc/classes/String.xml:336
msgid ""
-"Changes the case of some letters. Replaces underscores with spaces, converts "
-"all letters to lowercase, then capitalizes first and every letter following "
-"the space character. For [code]capitalize camelCase mixed_with_underscores[/"
-"code], it will return [code]Capitalize Camelcase Mixed With Underscores[/"
+"Changes the case of some letters. Replaces underscores with spaces, adds "
+"spaces before in-word uppercase characters, converts all letters to "
+"lowercase, then capitalizes the first letter and every letter following a "
+"space character. For [code]capitalize camelCase mixed_with_underscores[/"
+"code], it will return [code]Capitalize Camel Case Mixed With Underscores[/"
"code]."
msgstr ""
-#: doc/classes/String.xml:344
+#: doc/classes/String.xml:345
msgid ""
"Performs a case-sensitive comparison to another string. Returns [code]-1[/"
"code] if less than, [code]+1[/code] if greater than, or [code]0[/code] if "
"equal."
msgstr ""
-#: doc/classes/String.xml:357
+#: doc/classes/String.xml:358
msgid ""
"Returns the number of occurrences of substring [code]what[/code] between "
"[code]from[/code] and [code]to[/code] positions. If [code]from[/code] and "
@@ -47739,7 +48423,7 @@ msgid ""
"code] equals 0 the remained substring will be used."
msgstr ""
-#: doc/classes/String.xml:370
+#: doc/classes/String.xml:371
msgid ""
"Returns the number of occurrences of substring [code]what[/code] (ignoring "
"case) between [code]from[/code] and [code]to[/code] positions. If "
@@ -47747,32 +48431,33 @@ msgid ""
"used. If only [code]to[/code] equals 0 the remained substring will be used."
msgstr ""
-#: doc/classes/String.xml:377
+#: doc/classes/String.xml:378
msgid ""
"Returns a copy of the string with indentation (leading tabs and spaces) "
"removed."
msgstr ""
-#: doc/classes/String.xml:384
+#: doc/classes/String.xml:385
msgid ""
"Returns [code]true[/code] if the length of the string equals [code]0[/code]."
msgstr ""
-#: doc/classes/String.xml:393
+#: doc/classes/String.xml:394
msgid "Returns [code]true[/code] if the string ends with the given string."
msgstr ""
-#: doc/classes/String.xml:404
+#: doc/classes/String.xml:405
msgid ""
"Erases [code]chars[/code] characters from the string starting from "
"[code]position[/code]."
msgstr ""
-#: doc/classes/String.xml:415
+#: doc/classes/String.xml:416
msgid ""
-"Finds the first occurrence of a substring. Returns the starting position of "
-"the substring or [code]-1[/code] if not found. Optionally, the initial "
-"search index can be passed.\n"
+"Returns the index of the [b]first[/b] case-sensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the end of the "
+"string.\n"
"[b]Note:[/b] If you just want to know whether a string contains a substring, "
"use the [code]in[/code] operator as follows:\n"
"[codeblock]\n"
@@ -47782,48 +48467,42 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:430
+#: doc/classes/String.xml:433
msgid ""
-"Finds the last occurrence of a substring. Returns the starting position of "
-"the substring or [code]-1[/code] if not found."
+"Returns the index of the [b]first[/b] case-insensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the end of the string."
msgstr ""
-#: doc/classes/String.xml:441
-msgid ""
-"Finds the first occurrence of a substring, ignoring case. Returns the "
-"starting position of the substring or [code]-1[/code] if not found. "
-"Optionally, the initial search index can be passed."
-msgstr ""
-
-#: doc/classes/String.xml:452
+#: doc/classes/String.xml:444
msgid ""
"Formats the string by replacing all occurrences of [code]placeholder[/code] "
"with [code]values[/code]."
msgstr ""
-#: doc/classes/String.xml:459
+#: doc/classes/String.xml:451
msgid "If the string is a valid file path, returns the base directory name."
msgstr ""
-#: doc/classes/String.xml:466
+#: doc/classes/String.xml:458
msgid ""
"If the string is a valid file path, returns the full file path without the "
"extension."
msgstr ""
-#: doc/classes/String.xml:473
+#: doc/classes/String.xml:465
msgid "If the string is a valid file path, returns the extension."
msgstr ""
-#: doc/classes/String.xml:480
+#: doc/classes/String.xml:472
msgid "If the string is a valid file path, returns the filename."
msgstr ""
-#: doc/classes/String.xml:487
+#: doc/classes/String.xml:479
msgid "Hashes the string and returns a 32-bit integer."
msgstr ""
-#: doc/classes/String.xml:494
+#: doc/classes/String.xml:486
msgid ""
"Converts a string containing a hexadecimal number into an integer. "
"Hexadecimal strings are expected to be prefixed with \"[code]0x[/code]\" "
@@ -47833,7 +48512,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:504
+#: doc/classes/String.xml:496
msgid ""
"Escapes (encodes) a string to URL friendly format. Also referred to as 'URL "
"encode'.\n"
@@ -47843,7 +48522,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:514
+#: doc/classes/String.xml:506
msgid ""
"Unescapes (decodes) a string in URL encoded format. Also referred to as 'URL "
"decode'.\n"
@@ -47853,7 +48532,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:526
+#: doc/classes/String.xml:518
msgid ""
"Converts [code]size[/code] represented as number of bytes to human-readable "
"format using internationalized set of data size units, namely: B, KiB, MiB, "
@@ -47866,48 +48545,48 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:542
+#: doc/classes/String.xml:534
msgid ""
"Returns a copy of the string with the substring [code]what[/code] inserted "
"at the given position."
msgstr ""
-#: doc/classes/String.xml:549
+#: doc/classes/String.xml:541
msgid ""
"If the string is a path to a file or directory, returns [code]true[/code] if "
"the path is absolute."
msgstr ""
-#: doc/classes/String.xml:556
+#: doc/classes/String.xml:548
msgid ""
"If the string is a path to a file or directory, returns [code]true[/code] if "
"the path is relative."
msgstr ""
-#: doc/classes/String.xml:565
+#: doc/classes/String.xml:557
msgid ""
"Returns [code]true[/code] if this string is a subsequence of the given "
"string."
msgstr ""
-#: doc/classes/String.xml:574
+#: doc/classes/String.xml:566
msgid ""
"Returns [code]true[/code] if this string is a subsequence of the given "
"string, without considering case."
msgstr ""
-#: doc/classes/String.xml:581
+#: doc/classes/String.xml:573
msgid ""
"Returns [code]true[/code] if this string is free from characters that aren't "
"allowed in file names, those being:\n"
"[code]: / \\ ? * \" | % < >[/code]"
msgstr ""
-#: doc/classes/String.xml:589
+#: doc/classes/String.xml:581
msgid "Returns [code]true[/code] if this string contains a valid float."
msgstr ""
-#: doc/classes/String.xml:598
+#: doc/classes/String.xml:590
msgid ""
"Returns [code]true[/code] if this string contains a valid hexadecimal "
"number. If [code]with_prefix[/code] is [code]true[/code], then a validity of "
@@ -47915,7 +48594,7 @@ msgid ""
"instance: [code]0xDEADC0DE[/code]."
msgstr ""
-#: doc/classes/String.xml:605
+#: doc/classes/String.xml:597
msgid ""
"Returns [code]true[/code] if this string contains a valid color in "
"hexadecimal HTML notation. Other HTML notations such as named colors or "
@@ -47923,22 +48602,22 @@ msgid ""
"return [code]false[/code]."
msgstr ""
-#: doc/classes/String.xml:612
+#: doc/classes/String.xml:604
msgid ""
"Returns [code]true[/code] if this string is a valid identifier. A valid "
"identifier may contain only letters, digits and underscores ([code]_[/code]) "
"and the first character may not be a digit."
msgstr ""
-#: doc/classes/String.xml:619
+#: doc/classes/String.xml:611
msgid "Returns [code]true[/code] if this string contains a valid integer."
msgstr ""
-#: doc/classes/String.xml:626
+#: doc/classes/String.xml:618
msgid "Returns [code]true[/code] if this string contains a valid IP address."
msgstr ""
-#: doc/classes/String.xml:635
+#: doc/classes/String.xml:627
msgid ""
"Return a [String] which is the concatenation of the [code]parts[/code]. The "
"separator between elements is the string providing this method.\n"
@@ -47948,121 +48627,125 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:646
+#: doc/classes/String.xml:638
msgid ""
"Returns a copy of the string with special characters escaped using the JSON "
"standard."
msgstr ""
-#: doc/classes/String.xml:655
+#: doc/classes/String.xml:647
msgid "Returns a number of characters from the left of the string."
msgstr ""
-#: doc/classes/String.xml:662
+#: doc/classes/String.xml:654
msgid "Returns the string's amount of characters."
msgstr ""
-#: doc/classes/String.xml:671
+#: doc/classes/String.xml:663
msgid "Returns a copy of the string with characters removed from the left."
msgstr ""
-#: doc/classes/String.xml:680
+#: doc/classes/String.xml:672
msgid ""
"Does a simple case-sensitive expression match, where [code]\"*\"[/code] "
"matches zero or more arbitrary characters and [code]\"?\"[/code] matches any "
"single character except a period ([code]\".\"[/code])."
msgstr ""
-#: doc/classes/String.xml:689
+#: doc/classes/String.xml:681
msgid ""
"Does a simple case-insensitive expression match, where [code]\"*\"[/code] "
"matches zero or more arbitrary characters and [code]\"?\"[/code] matches any "
"single character except a period ([code]\".\"[/code])."
msgstr ""
-#: doc/classes/String.xml:696
+#: doc/classes/String.xml:688
msgid "Returns the MD5 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:703
+#: doc/classes/String.xml:695
msgid "Returns the MD5 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:712
+#: doc/classes/String.xml:704
msgid ""
"Performs a case-insensitive comparison to another string. Returns [code]-1[/"
"code] if less than, [code]+1[/code] if greater than, or [code]0[/code] if "
"equal."
msgstr ""
-#: doc/classes/String.xml:721
+#: doc/classes/String.xml:713
msgid "Returns the character code at position [code]at[/code]."
msgstr ""
-#: doc/classes/String.xml:730
+#: doc/classes/String.xml:722
msgid ""
"Formats a number to have an exact number of [code]digits[/code] after the "
"decimal point."
msgstr ""
-#: doc/classes/String.xml:739
+#: doc/classes/String.xml:731
msgid ""
"Formats a number to have an exact number of [code]digits[/code] before the "
"decimal point."
msgstr ""
-#: doc/classes/String.xml:746
+#: doc/classes/String.xml:738
msgid "Decode a percent-encoded string. See [method percent_encode]."
msgstr ""
-#: doc/classes/String.xml:753
+#: doc/classes/String.xml:745
msgid ""
"Percent-encodes a string. Encodes parameters in a URL when sending a HTTP "
"GET request (and bodies of form-urlencoded POST requests)."
msgstr ""
-#: doc/classes/String.xml:762
+#: doc/classes/String.xml:754
msgid ""
"If the string is a path, this concatenates [code]file[/code] at the end of "
"the string as a subpath. E.g. [code]\"this/is\".plus_file(\"path\") == "
"\"this/is/path\"[/code]."
msgstr ""
-#: doc/classes/String.xml:771
+#: doc/classes/String.xml:763
msgid ""
"Returns original string repeated a number of times. The number of "
"repetitions is given by the argument."
msgstr ""
-#: doc/classes/String.xml:782
+#: doc/classes/String.xml:774
msgid ""
"Replaces occurrences of a case-sensitive substring with the given one inside "
"the string."
msgstr ""
-#: doc/classes/String.xml:793
+#: doc/classes/String.xml:785
msgid ""
"Replaces occurrences of a case-insensitive substring with the given one "
"inside the string."
msgstr ""
-#: doc/classes/String.xml:804
+#: doc/classes/String.xml:796
msgid ""
-"Performs a case-sensitive search for a substring, but starts from the end of "
-"the string instead of the beginning."
+"Returns the index of the [b]last[/b] case-sensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the beginning of the "
+"string."
msgstr ""
-#: doc/classes/String.xml:815
+#: doc/classes/String.xml:807
msgid ""
-"Performs a case-insensitive search for a substring, but starts from the end "
-"of the string instead of the beginning."
+"Returns the index of the [b]last[/b] case-insensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the beginning of the "
+"string."
msgstr ""
-#: doc/classes/String.xml:824
+#: doc/classes/String.xml:816
msgid "Returns the right side of the string from a given position."
msgstr ""
-#: doc/classes/String.xml:837
+#: doc/classes/String.xml:829
msgid ""
"Splits the string by a [code]delimiter[/code] string and returns an array of "
"the substrings, starting from right.\n"
@@ -48081,39 +48764,39 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:856
+#: doc/classes/String.xml:848
msgid "Returns a copy of the string with characters removed from the right."
msgstr ""
-#: doc/classes/String.xml:863
+#: doc/classes/String.xml:855
msgid "Returns the SHA-1 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:870
+#: doc/classes/String.xml:862
msgid "Returns the SHA-1 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:877
+#: doc/classes/String.xml:869
msgid "Returns the SHA-256 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:884
+#: doc/classes/String.xml:876
msgid "Returns the SHA-256 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:893
+#: doc/classes/String.xml:885
msgid ""
"Returns the similarity index of the text compared to this string. 1 means "
"totally similar and 0 means totally dissimilar."
msgstr ""
-#: doc/classes/String.xml:906
+#: doc/classes/String.xml:898
msgid ""
"Splits the string by a [code]delimiter[/code] string and returns an array of "
-"the substrings.\n"
+"the substrings. The [code]delimiter[/code] can be of any length.\n"
"If [code]maxsplit[/code] is specified, it defines the number of splits to do "
-"from the left up to [code]maxsplit[/code]. The default value of 0 means that "
-"all items are split.\n"
+"from the left up to [code]maxsplit[/code]. The default value of [code]0[/"
+"code] means that all items are split.\n"
"Example:\n"
"[codeblock]\n"
"var some_string = \"One,Two,Three,Four\"\n"
@@ -48121,10 +48804,12 @@ msgid ""
"print(some_array.size()) # Prints 2\n"
"print(some_array[0]) # Prints \"One\"\n"
"print(some_array[1]) # Prints \"Two,Three,Four\"\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"If you need to split strings with more complex rules, use the [RegEx] class "
+"instead."
msgstr ""
-#: doc/classes/String.xml:926
+#: doc/classes/String.xml:919
msgid ""
"Splits the string in floats by using a delimiter string and returns an array "
"of the substrings.\n"
@@ -48132,7 +48817,7 @@ msgid ""
"split by [code]\",\"[/code]."
msgstr ""
-#: doc/classes/String.xml:938
+#: doc/classes/String.xml:931
msgid ""
"Returns a copy of the string stripped of any non-printable character "
"(including tabulations, spaces and line breaks) at the beginning and the "
@@ -48140,7 +48825,7 @@ msgid ""
"right edges respectively."
msgstr ""
-#: doc/classes/String.xml:945
+#: doc/classes/String.xml:938
msgid ""
"Returns a copy of the string stripped of any escape character. These include "
"all non-printable control characters of the first page of the ASCII table (< "
@@ -48148,14 +48833,14 @@ msgid ""
"code] and [code]\\r[/code]) characters, but not spaces."
msgstr ""
-#: doc/classes/String.xml:956
+#: doc/classes/String.xml:949
msgid ""
"Returns part of the string from the position [code]from[/code] with length "
"[code]len[/code]. Argument [code]len[/code] is optional and using [code]-1[/"
"code] will return remaining characters from given position."
msgstr ""
-#: doc/classes/String.xml:963
+#: doc/classes/String.xml:956
msgid ""
"Converts the String (which is a character array) to [PackedByteArray] (which "
"is an array of bytes). The conversion is faster compared to [method "
@@ -48163,25 +48848,25 @@ msgid ""
"ASCII characters."
msgstr ""
-#: doc/classes/String.xml:970
+#: doc/classes/String.xml:963
msgid ""
"Converts a string containing a decimal number into a [code]float[/code]."
msgstr ""
-#: doc/classes/String.xml:977
+#: doc/classes/String.xml:970
msgid ""
"Converts a string containing an integer number into an [code]int[/code]."
msgstr ""
-#: doc/classes/String.xml:984
+#: doc/classes/String.xml:977
msgid "Returns the string converted to lowercase."
msgstr ""
-#: doc/classes/String.xml:991
+#: doc/classes/String.xml:984
msgid "Returns the string converted to uppercase."
msgstr ""
-#: doc/classes/String.xml:998
+#: doc/classes/String.xml:991
msgid ""
"Converts the String (which is an array of characters) to [PackedByteArray] "
"(which is an array of bytes). The conversion is a bit slower than [method "
@@ -48189,25 +48874,25 @@ msgid ""
"this function over [method to_ascii]."
msgstr ""
-#: doc/classes/String.xml:1007
+#: doc/classes/String.xml:1000
msgid ""
"Removes a given string from the start if it starts with it or leaves the "
"string unchanged."
msgstr ""
-#: doc/classes/String.xml:1016
+#: doc/classes/String.xml:1009
msgid ""
"Removes a given string from the end if it ends with it or leaves the string "
"unchanged."
msgstr ""
-#: doc/classes/String.xml:1023
+#: doc/classes/String.xml:1016
msgid ""
"Returns a copy of the string with special characters escaped using the XML "
"standard."
msgstr ""
-#: doc/classes/String.xml:1030
+#: doc/classes/String.xml:1023
msgid ""
"Returns a copy of the string with escaped characters replaced by their "
"meanings according to the XML standard."
@@ -49439,50 +50124,42 @@ msgid ""
"undo/redo."
msgstr ""
-#: doc/classes/TextEdit.xml:24
-msgid "Adds color region (given the delimiters) and its colors."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:35
-msgid "Adds a [code]keyword[/code] and its [Color]."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:44
+#: doc/classes/TextEdit.xml:18
msgid ""
"Returns if the given line is foldable, that is, it has indented lines right "
"below it."
msgstr ""
-#: doc/classes/TextEdit.xml:57
+#: doc/classes/TextEdit.xml:25
msgid ""
-"Clears all custom syntax coloring information previously added with [method "
-"add_color_region] or [method add_keyword_color]."
+"Centers the viewport on the line the editing cursor is at. This also resets "
+"the [member scroll_horizontal] value to [code]0[/code]."
msgstr ""
-#: doc/classes/TextEdit.xml:64
+#: doc/classes/TextEdit.xml:32
msgid "Clears the undo history."
msgstr ""
-#: doc/classes/TextEdit.xml:71
+#: doc/classes/TextEdit.xml:39
msgid "Copy's the current text selection."
msgstr ""
-#: doc/classes/TextEdit.xml:78
+#: doc/classes/TextEdit.xml:46
msgid "Returns the column the editing cursor is at."
msgstr ""
-#: doc/classes/TextEdit.xml:85
+#: doc/classes/TextEdit.xml:53
msgid "Returns the line the editing cursor is at."
msgstr ""
-#: doc/classes/TextEdit.xml:96
+#: doc/classes/TextEdit.xml:64
msgid ""
"Moves the cursor at the specified [code]column[/code] index.\n"
"If [code]adjust_viewport[/code] is set to [code]true[/code], the viewport "
"will center at the cursor position after the move occurs."
msgstr ""
-#: doc/classes/TextEdit.xml:112
+#: doc/classes/TextEdit.xml:80
msgid ""
"Moves the cursor at the specified [code]line[/code] index.\n"
"If [code]adjust_viewport[/code] is set to [code]true[/code], the viewport "
@@ -49491,111 +50168,101 @@ msgid ""
"[code]line[/code] can be hidden using [method set_line_as_hidden]."
msgstr ""
-#: doc/classes/TextEdit.xml:121
+#: doc/classes/TextEdit.xml:89
msgid "Cut's the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:128
+#: doc/classes/TextEdit.xml:96
msgid "Deselects the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:135
+#: doc/classes/TextEdit.xml:103
msgid "Folds all lines that are possible to be folded (see [method can_fold])."
msgstr ""
-#: doc/classes/TextEdit.xml:144
+#: doc/classes/TextEdit.xml:112
msgid "Folds the given line, if possible (see [method can_fold])."
msgstr ""
-#: doc/classes/TextEdit.xml:151
+#: doc/classes/TextEdit.xml:119
msgid "Returns an array containing the line number of each breakpoint."
msgstr ""
-#: doc/classes/TextEdit.xml:160
-msgid "Returns the [Color] of the specified [code]keyword[/code]."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:169
+#: doc/classes/TextEdit.xml:128
msgid "Returns the text of a specific line."
msgstr ""
-#: doc/classes/TextEdit.xml:176
+#: doc/classes/TextEdit.xml:135
msgid "Returns the amount of total lines in the text."
msgstr ""
-#: doc/classes/TextEdit.xml:183
+#: doc/classes/TextEdit.xml:142
msgid ""
"Returns the [PopupMenu] of this [TextEdit]. By default, this menu is "
"displayed when right-clicking on the [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:190
+#: doc/classes/TextEdit.xml:149
msgid "Returns the selection begin column."
msgstr ""
-#: doc/classes/TextEdit.xml:197
+#: doc/classes/TextEdit.xml:156
msgid "Returns the selection begin line."
msgstr ""
-#: doc/classes/TextEdit.xml:204
+#: doc/classes/TextEdit.xml:163
msgid "Returns the text inside the selection."
msgstr ""
-#: doc/classes/TextEdit.xml:211
+#: doc/classes/TextEdit.xml:170
msgid "Returns the selection end column."
msgstr ""
-#: doc/classes/TextEdit.xml:218
+#: doc/classes/TextEdit.xml:177
msgid "Returns the selection end line."
msgstr ""
-#: doc/classes/TextEdit.xml:225
+#: doc/classes/TextEdit.xml:184
msgid "Returns a [String] text with the word under the mouse cursor location."
msgstr ""
-#: doc/classes/TextEdit.xml:234
-msgid ""
-"Returns whether the specified [code]keyword[/code] has a color set to it or "
-"not."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:243
+#: doc/classes/TextEdit.xml:193
msgid "Insert the specified text at the cursor position."
msgstr ""
-#: doc/classes/TextEdit.xml:252
+#: doc/classes/TextEdit.xml:202
msgid "Returns whether the line at the specified index is folded or not."
msgstr ""
-#: doc/classes/TextEdit.xml:261
+#: doc/classes/TextEdit.xml:211
msgid "Returns whether the line at the specified index is hidden or not."
msgstr ""
-#: doc/classes/TextEdit.xml:268
+#: doc/classes/TextEdit.xml:218
msgid "Returns [code]true[/code] if the selection is active."
msgstr ""
-#: doc/classes/TextEdit.xml:277
+#: doc/classes/TextEdit.xml:227
msgid ""
"Triggers a right-click menu action by the specified index. See [enum "
"MenuItems] for a list of available indexes."
msgstr ""
-#: doc/classes/TextEdit.xml:284
+#: doc/classes/TextEdit.xml:234
msgid "Paste the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:291
+#: doc/classes/TextEdit.xml:241
msgid "Perform redo operation."
msgstr ""
-#: doc/classes/TextEdit.xml:298
+#: doc/classes/TextEdit.xml:248
msgid ""
"Removes all the breakpoints. This will not fire the [signal "
"breakpoint_toggled] signal."
msgstr ""
-#: doc/classes/TextEdit.xml:313
+#: doc/classes/TextEdit.xml:263
msgid ""
"Perform a search inside the text. Search flags can be specified in the [enum "
"SearchFlags] enum.\n"
@@ -49611,244 +50278,265 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/TextEdit.xml:336
-msgid "Perform selection, from line/column to line/column."
+#: doc/classes/TextEdit.xml:286
+msgid ""
+"Perform selection, from line/column to line/column.\n"
+"If [member selecting_enabled] is [code]false[/code], no selection will occur."
msgstr ""
-#: doc/classes/TextEdit.xml:343
-msgid "Select all the text."
+#: doc/classes/TextEdit.xml:294
+msgid ""
+"Select all the text.\n"
+"If [member selecting_enabled] is [code]false[/code], no selection will occur."
msgstr ""
-#: doc/classes/TextEdit.xml:354
+#: doc/classes/TextEdit.xml:306
msgid "Sets the text for a specific line."
msgstr ""
-#: doc/classes/TextEdit.xml:365
+#: doc/classes/TextEdit.xml:317
msgid "If [code]true[/code], hides the line of the specified index."
msgstr ""
-#: doc/classes/TextEdit.xml:374
+#: doc/classes/TextEdit.xml:326
msgid "Toggle the folding of the code block at the given line."
msgstr ""
-#: doc/classes/TextEdit.xml:381
+#: doc/classes/TextEdit.xml:333
msgid "Perform undo operation."
msgstr ""
-#: doc/classes/TextEdit.xml:390
+#: doc/classes/TextEdit.xml:342
msgid "Unfolds the given line, if folded."
msgstr ""
-#: doc/classes/TextEdit.xml:397
+#: doc/classes/TextEdit.xml:349
msgid ""
"Unhide all lines that were previously set to hidden by [method "
"set_line_as_hidden]."
msgstr ""
-#: doc/classes/TextEdit.xml:403
+#: doc/classes/TextEdit.xml:355
msgid "If [code]true[/code], the breakpoint gutter is visible."
msgstr ""
-#: doc/classes/TextEdit.xml:412
+#: doc/classes/TextEdit.xml:364
msgid ""
"If [code]true[/code], the caret displays as a rectangle.\n"
"If [code]false[/code], the caret displays as a bar."
msgstr ""
-#: doc/classes/TextEdit.xml:416
+#: doc/classes/TextEdit.xml:368
msgid ""
"If [code]true[/code], a right-click moves the cursor at the mouse position "
"before displaying the context menu.\n"
"If [code]false[/code], the context menu disregards mouse location."
msgstr ""
-#: doc/classes/TextEdit.xml:420
+#: doc/classes/TextEdit.xml:372
msgid "If [code]true[/code], a right-click displays the context menu."
msgstr ""
-#: doc/classes/TextEdit.xml:423
+#: doc/classes/TextEdit.xml:375
msgid ""
"If [code]true[/code], the \"space\" character will have a visible "
"representation."
msgstr ""
-#: doc/classes/TextEdit.xml:426
+#: doc/classes/TextEdit.xml:378
msgid ""
"If [code]true[/code], the \"tab\" character will have a visible "
"representation."
msgstr ""
-#: doc/classes/TextEdit.xml:430
+#: doc/classes/TextEdit.xml:382
msgid ""
"If [code]true[/code], the fold gutter is visible. This enables folding "
"groups of indented lines."
msgstr ""
-#: doc/classes/TextEdit.xml:433
+#: doc/classes/TextEdit.xml:385
msgid ""
"If [code]true[/code], all lines that have been set to hidden by [method "
"set_line_as_hidden], will not be visible."
msgstr ""
-#: doc/classes/TextEdit.xml:436
+#: doc/classes/TextEdit.xml:388
msgid ""
"If [code]true[/code], all occurrences of the selected text will be "
"highlighted."
msgstr ""
-#: doc/classes/TextEdit.xml:439
+#: doc/classes/TextEdit.xml:391
msgid "If [code]true[/code], the line containing the cursor is highlighted."
msgstr ""
-#: doc/classes/TextEdit.xml:447
+#: doc/classes/TextEdit.xml:394
+msgid ""
+"If [code]true[/code], a minimap is shown, providing an outline of your "
+"source code."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:397
+msgid "The width, in pixels, of the minimap."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:401
msgid ""
"If [code]true[/code], custom [code]font_color_selected[/code] will be used "
"for selected text."
msgstr ""
-#: doc/classes/TextEdit.xml:450
+#: doc/classes/TextEdit.xml:404
msgid ""
"If [code]true[/code], read-only mode is enabled. Existing text cannot be "
"modified and new text cannot be added."
msgstr ""
-#: doc/classes/TextEdit.xml:463
+#: doc/classes/TextEdit.xml:413
msgid ""
-"If [code]true[/code], line numbers are displayed to the left of the text."
+"If [code]true[/code], text can be selected.\n"
+"If [code]false[/code], text can not be selected by the user or by the "
+"[method select] or [method select_all] methods."
msgstr ""
-#: doc/classes/TextEdit.xml:466
+#: doc/classes/TextEdit.xml:417
msgid ""
-"If [code]true[/code], sets the [code]step[/code] of the scrollbars to "
-"[code]0.25[/code] which results in smoother scrolling."
+"If [code]true[/code], shortcut keys for context menu items are enabled, even "
+"if the context menu is disabled."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:420
+msgid ""
+"If [code]true[/code], line numbers are displayed to the left of the text."
msgstr ""
-#: doc/classes/TextEdit.xml:469
+#: doc/classes/TextEdit.xml:423
msgid ""
-"If [code]true[/code], any custom color properties that have been set for "
-"this [TextEdit] will be visible."
+"If [code]true[/code], sets the [code]step[/code] of the scrollbars to "
+"[code]0.25[/code] which results in smoother scrolling."
msgstr ""
-#: doc/classes/TextEdit.xml:472
+#: doc/classes/TextEdit.xml:428
msgid "String value of the [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:475
+#: doc/classes/TextEdit.xml:431
msgid "Vertical scroll sensitivity."
msgstr ""
-#: doc/classes/TextEdit.xml:478
+#: doc/classes/TextEdit.xml:437
msgid ""
"If [code]true[/code], enables text wrapping when it goes beyond the edge of "
"what is visible."
msgstr ""
-#: doc/classes/TextEdit.xml:486
+#: doc/classes/TextEdit.xml:445
msgid "Emitted when a breakpoint is placed via the breakpoint gutter."
msgstr ""
-#: doc/classes/TextEdit.xml:491
+#: doc/classes/TextEdit.xml:450
msgid "Emitted when the cursor changes."
msgstr ""
-#: doc/classes/TextEdit.xml:500
+#: doc/classes/TextEdit.xml:459
msgid "Emitted when the info icon is clicked."
msgstr ""
-#: doc/classes/TextEdit.xml:531
+#: doc/classes/TextEdit.xml:496
msgid "Match case when searching."
msgstr ""
-#: doc/classes/TextEdit.xml:534
+#: doc/classes/TextEdit.xml:499
msgid "Match whole words when searching."
msgstr ""
-#: doc/classes/TextEdit.xml:537
+#: doc/classes/TextEdit.xml:502
msgid "Search from end to beginning."
msgstr ""
-#: doc/classes/TextEdit.xml:546
+#: doc/classes/TextEdit.xml:511
msgid ""
"Pastes the clipboard text over the selected text (or at the cursor's "
"position)."
msgstr ""
-#: doc/classes/TextEdit.xml:549
+#: doc/classes/TextEdit.xml:514
msgid "Erases the whole [TextEdit] text."
msgstr ""
-#: doc/classes/TextEdit.xml:552
+#: doc/classes/TextEdit.xml:517
msgid "Selects the whole [TextEdit] text."
msgstr ""
-#: doc/classes/TextEdit.xml:558
+#: doc/classes/TextEdit.xml:523
msgid "Redoes the previous action."
msgstr ""
-#: doc/classes/TextEdit.xml:566
+#: doc/classes/TextEdit.xml:531
msgid ""
"Sets the background [Color] of this [TextEdit]. [member syntax_highlighting] "
"has to be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:569
+#: doc/classes/TextEdit.xml:534
msgid ""
"Sets the [Color] of the bookmark marker. [member syntax_highlighting] has to "
"be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:574 doc/classes/TextEdit.xml:601
+#: doc/classes/TextEdit.xml:539 doc/classes/TextEdit.xml:566
msgid ""
"Sets the [Color] of the breakpoints. [member breakpoint_gutter] has to be "
"enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:612
+#: doc/classes/TextEdit.xml:577
msgid "Sets the default [Font]."
msgstr ""
-#: doc/classes/TextEdit.xml:615
+#: doc/classes/TextEdit.xml:580
msgid "Sets the font [Color]."
msgstr ""
-#: doc/classes/TextEdit.xml:620
+#: doc/classes/TextEdit.xml:585
msgid ""
"Sets the [Color] of the selected text. [member override_selected_font_color] "
"has to be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:625
+#: doc/classes/TextEdit.xml:588
msgid ""
"Sets the [Color] of the line numbers. [member show_line_numbers] has to be "
"enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:628
+#: doc/classes/TextEdit.xml:591
msgid "Sets the spacing between the lines."
msgstr ""
-#: doc/classes/TextEdit.xml:631
+#: doc/classes/TextEdit.xml:594
msgid "Sets the [Color] of marked text."
msgstr ""
-#: doc/classes/TextEdit.xml:636
+#: doc/classes/TextEdit.xml:597
msgid "Sets the [StyleBox] of this [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:641
+#: doc/classes/TextEdit.xml:600
msgid ""
"Sets the [StyleBox] of this [TextEdit] when [member readonly] is enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:646
+#: doc/classes/TextEdit.xml:605
msgid "Sets the highlight [Color] of text selections."
msgstr ""
-#: doc/classes/TextEdit.xml:653
+#: doc/classes/TextEdit.xml:610
msgid "Sets a custom [Texture2D] for tab text characters."
msgstr ""
-#: doc/classes/TextEdit.xml:656
+#: doc/classes/TextEdit.xml:613
msgid ""
"Sets the highlight [Color] of multiple occurrences. [member "
"highlight_all_occurrences] has to be enabled."
@@ -49926,80 +50614,80 @@ msgid ""
"the texture will not scale with the node."
msgstr ""
-#: doc/classes/TextureButton.xml:19
+#: doc/classes/TextureButton.xml:25
msgid ""
"Controls the texture's behavior when you resize the node's bounding "
"rectangle, [b]only if[/b] [member expand] is [code]true[/code]. Set it to "
"one of the [enum StretchMode] constants. See the constants to learn more."
msgstr ""
-#: doc/classes/TextureButton.xml:22
+#: doc/classes/TextureButton.xml:28
msgid ""
"Pure black and white [BitMap] image to use for click detection. On the mask, "
"white pixels represent the button's clickable area. Use it to create buttons "
"with curved shapes."
msgstr ""
-#: doc/classes/TextureButton.xml:25
+#: doc/classes/TextureButton.xml:31
msgid ""
"Texture to display when the node is disabled. See [member BaseButton."
"disabled]."
msgstr ""
-#: doc/classes/TextureButton.xml:28
+#: doc/classes/TextureButton.xml:34
msgid "Texture to display when the node has mouse or keyboard focus."
msgstr ""
-#: doc/classes/TextureButton.xml:31
+#: doc/classes/TextureButton.xml:37
msgid "Texture to display when the mouse hovers the node."
msgstr ""
-#: doc/classes/TextureButton.xml:34
+#: doc/classes/TextureButton.xml:40
msgid ""
"Texture to display by default, when the node is [b]not[/b] in the disabled, "
"focused, hover or pressed state."
msgstr ""
-#: doc/classes/TextureButton.xml:37
+#: doc/classes/TextureButton.xml:43
msgid ""
"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 "
"[member BaseButton.shortcut] key."
msgstr ""
-#: doc/classes/TextureButton.xml:42 doc/classes/TextureRect.xml:36
+#: doc/classes/TextureButton.xml:48 doc/classes/TextureRect.xml:36
msgid "Scale to fit the node's bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:45 doc/classes/TextureRect.xml:39
+#: doc/classes/TextureButton.xml:51 doc/classes/TextureRect.xml:39
msgid "Tile inside the node's bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:48 doc/classes/TextureRect.xml:42
+#: doc/classes/TextureButton.xml:54 doc/classes/TextureRect.xml:42
msgid ""
"The texture keeps its original size and stays in the bounding rectangle's "
"top-left corner."
msgstr ""
-#: doc/classes/TextureButton.xml:51 doc/classes/TextureRect.xml:45
+#: doc/classes/TextureButton.xml:57 doc/classes/TextureRect.xml:45
msgid ""
"The texture keeps its original size and stays centered in the node's "
"bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:54 doc/classes/TextureRect.xml:48
+#: doc/classes/TextureButton.xml:60 doc/classes/TextureRect.xml:48
msgid ""
"Scale the texture to fit the node's bounding rectangle, but maintain the "
"texture's aspect ratio."
msgstr ""
-#: doc/classes/TextureButton.xml:57
+#: doc/classes/TextureButton.xml:63
msgid ""
"Scale the texture to fit the node's bounding rectangle, center it, and "
"maintain its aspect ratio."
msgstr ""
-#: doc/classes/TextureButton.xml:60 doc/classes/TextureRect.xml:54
+#: doc/classes/TextureButton.xml:66 doc/classes/TextureRect.xml:54
msgid ""
"Scale the texture so that the shorter side fits the bounding rectangle. The "
"other side clips to the node's limits."
@@ -50449,19 +51137,25 @@ msgid ""
"advised if working with shared objects."
msgstr ""
-#: doc/classes/Thread.xml:17
+#: doc/classes/Thread.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/threads/thread_safe_apis."
+"html"
+msgstr ""
+
+#: doc/classes/Thread.xml:18
msgid ""
"Returns the current [Thread]'s ID, uniquely identifying it among all threads."
msgstr ""
-#: doc/classes/Thread.xml:24
+#: doc/classes/Thread.xml:25
msgid ""
"Returns [code]true[/code] if this [Thread] is currently active. An active "
"[Thread] cannot start work on a new method but can be joined with [method "
"wait_to_finish]."
msgstr ""
-#: doc/classes/Thread.xml:39
+#: doc/classes/Thread.xml:40
msgid ""
"Starts a new [Thread] that runs [code]method[/code] on object "
"[code]instance[/code] with [code]userdata[/code] passed as an argument. Even "
@@ -50471,21 +51165,21 @@ msgid ""
"Returns [constant OK] on success, or [constant ERR_CANT_CREATE] on failure."
msgstr ""
-#: doc/classes/Thread.xml:47
+#: doc/classes/Thread.xml:48
msgid ""
"Joins the [Thread] and waits for it to finish. Returns what the method "
"called returned."
msgstr ""
-#: doc/classes/Thread.xml:53
+#: doc/classes/Thread.xml:54
msgid "A thread running with lower priority than normally."
msgstr ""
-#: doc/classes/Thread.xml:56
+#: doc/classes/Thread.xml:57
msgid "A thread with a standard priority."
msgstr ""
-#: doc/classes/Thread.xml:59
+#: doc/classes/Thread.xml:60
msgid "A thread running with higher priority than normally."
msgstr ""
@@ -51020,50 +51714,61 @@ msgid "Returns the [Transform2D] of a tile's shape."
msgstr ""
#: doc/classes/TileSet.xml:481
-msgid "Returns an array of the tile's shapes."
+msgid ""
+"Returns an array of dictionaries describing the tile's shapes.\n"
+"[b]Dictionary structure in the array returned by this method:[/b]\n"
+"[codeblock]\n"
+"{\n"
+" \"autotile_coord\": Vector2,\n"
+" \"one_way\": bool,\n"
+" \"one_way_margin\": int,\n"
+" \"shape\": CollisionShape2D,\n"
+" \"shape_transform\": Transform2D,\n"
+"}\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/TileSet.xml:490
+#: doc/classes/TileSet.xml:500
msgid "Returns the tile's texture."
msgstr ""
-#: doc/classes/TileSet.xml:499
+#: doc/classes/TileSet.xml:509
msgid "Returns the texture offset of the tile."
msgstr ""
-#: doc/classes/TileSet.xml:508
+#: doc/classes/TileSet.xml:518
msgid "Returns the tile's [enum TileMode]."
msgstr ""
-#: doc/classes/TileSet.xml:517
+#: doc/classes/TileSet.xml:527
msgid "Returns the tile's Z index (drawing layer)."
msgstr ""
-#: doc/classes/TileSet.xml:528
+#: doc/classes/TileSet.xml:538
msgid "Sets a light occluder for the tile."
msgstr ""
-#: doc/classes/TileSet.xml:539
+#: doc/classes/TileSet.xml:549
msgid "Sets the tile's material."
msgstr ""
-#: doc/classes/TileSet.xml:550
+#: doc/classes/TileSet.xml:560
msgid "Sets the tile's modulation color."
msgstr ""
-#: doc/classes/TileSet.xml:561
+#: doc/classes/TileSet.xml:571
msgid "Sets the tile's name."
msgstr ""
-#: doc/classes/TileSet.xml:572
+#: doc/classes/TileSet.xml:582
msgid "Sets the tile's navigation polygon."
msgstr ""
-#: doc/classes/TileSet.xml:583
+#: doc/classes/TileSet.xml:593
msgid "Sets an offset for the tile's navigation polygon."
msgstr ""
-#: doc/classes/TileSet.xml:594
+#: doc/classes/TileSet.xml:604
msgid ""
"Sets the tile's normal map texture.\n"
"[b]Note:[/b] Godot expects the normal map to use X+, Y-, and Z+ coordinates. "
@@ -51072,48 +51777,48 @@ msgid ""
"a comparison of normal map coordinates expected by popular engines."
msgstr ""
-#: doc/classes/TileSet.xml:606
+#: doc/classes/TileSet.xml:616
msgid "Sets an offset for the tile's light occluder."
msgstr ""
-#: doc/classes/TileSet.xml:617
+#: doc/classes/TileSet.xml:627
msgid ""
"Sets the tile's sub-region in the texture. This is common in texture atlases."
msgstr ""
-#: doc/classes/TileSet.xml:630
+#: doc/classes/TileSet.xml:640
msgid "Sets a shape for the tile, enabling collision."
msgstr ""
-#: doc/classes/TileSet.xml:643
+#: doc/classes/TileSet.xml:653
msgid "Sets the offset of a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:656
+#: doc/classes/TileSet.xml:666
msgid "Enables one-way collision on a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:681
+#: doc/classes/TileSet.xml:691
msgid "Sets a [Transform2D] on a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:692
+#: doc/classes/TileSet.xml:702
msgid "Sets an array of shapes for the tile, enabling collision."
msgstr ""
-#: doc/classes/TileSet.xml:703
+#: doc/classes/TileSet.xml:713
msgid "Sets the tile's texture."
msgstr ""
-#: doc/classes/TileSet.xml:714
+#: doc/classes/TileSet.xml:724
msgid "Sets the tile's texture offset."
msgstr ""
-#: doc/classes/TileSet.xml:725
+#: doc/classes/TileSet.xml:735
msgid "Sets the tile's [enum TileMode]."
msgstr ""
-#: doc/classes/TileSet.xml:736
+#: doc/classes/TileSet.xml:746
msgid "Sets the tile's drawing index."
msgstr ""
@@ -51124,14 +51829,16 @@ msgstr ""
#: doc/classes/Timer.xml:7
msgid ""
"Counts down a specified interval and emits a signal on reaching 0. Can be "
-"set to repeat or \"one-shot\" mode."
+"set to repeat or \"one-shot\" mode.\n"
+"[b]Note:[/b] To create an one-shot timer without instantiating a node, use "
+"[method SceneTree.create_timer]."
msgstr ""
-#: doc/classes/Timer.xml:16
+#: doc/classes/Timer.xml:17
msgid "Returns [code]true[/code] if the timer is stopped."
msgstr ""
-#: doc/classes/Timer.xml:25
+#: doc/classes/Timer.xml:26
msgid ""
"Starts the timer. Sets [code]wait_time[/code] to [code]time_sec[/code] if "
"[code]time_sec > 0[/code]. This also resets the remaining time to "
@@ -51139,11 +51846,11 @@ msgid ""
"[b]Note:[/b] this method will not resume a paused timer. See [member paused]."
msgstr ""
-#: doc/classes/Timer.xml:33
+#: doc/classes/Timer.xml:34
msgid "Stops the timer."
msgstr ""
-#: doc/classes/Timer.xml:39
+#: doc/classes/Timer.xml:40
msgid ""
"If [code]true[/code], the timer will automatically start when entering the "
"scene tree.\n"
@@ -51151,40 +51858,40 @@ msgid ""
"the timer enters the scene tree and starts."
msgstr ""
-#: doc/classes/Timer.xml:43
+#: doc/classes/Timer.xml:44
msgid ""
"If [code]true[/code], the timer will stop when reaching 0. If [code]false[/"
"code], it will restart."
msgstr ""
-#: doc/classes/Timer.xml:46
+#: doc/classes/Timer.xml:47
msgid ""
"If [code]true[/code], the timer is paused and will not process until it is "
"unpaused again, even if [method start] is called."
msgstr ""
-#: doc/classes/Timer.xml:49
+#: doc/classes/Timer.xml:50
msgid "Processing mode. See [enum TimerProcessMode]."
msgstr ""
-#: doc/classes/Timer.xml:52
+#: doc/classes/Timer.xml:53
msgid ""
"The timer's remaining time in seconds. Returns 0 if the timer is inactive.\n"
"[b]Note:[/b] You cannot set this value. To change the timer's remaining "
"time, use [method start]."
msgstr ""
-#: doc/classes/Timer.xml:56
+#: doc/classes/Timer.xml:57
msgid "Wait time in seconds."
msgstr ""
-#: doc/classes/Timer.xml:68
+#: doc/classes/Timer.xml:69
msgid ""
"Update the timer during the physics step at each frame (fixed framerate "
"processing)."
msgstr ""
-#: doc/classes/Timer.xml:71
+#: doc/classes/Timer.xml:72
msgid "Update the timer during the idle time at each frame."
msgstr ""
@@ -51263,60 +51970,66 @@ msgstr ""
#: doc/classes/Transform.xml:7
msgid ""
-"Represents one or many transformations in 3D space such as translation, "
-"rotation, or scaling. It consists of a [member basis] and an [member "
-"origin]. It is similar to a 3×4 matrix."
+"3×4 matrix (3 rows, 4 columns) used for 3D linear transformations. It can "
+"represent transformations such as translation, rotation, or scaling. It "
+"consists of a [member basis] (first 3 columns) and a [Vector3] for the "
+"[member origin] (last column).\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
msgstr ""
-#: doc/classes/Transform.xml:26
+#: doc/classes/Transform.xml:28
msgid ""
-"Constructs the Transform from four [Vector3]. Each axis corresponds to local "
-"basis vectors (some of which may be scaled)."
+"Constructs a Transform from four [Vector3] values (matrix columns). Each "
+"axis corresponds to local basis vectors (some of which may be scaled)."
msgstr ""
-#: doc/classes/Transform.xml:37
-msgid "Constructs the Transform from a [Basis] and [Vector3]."
+#: doc/classes/Transform.xml:39
+msgid "Constructs a Transform from a [Basis] and [Vector3]."
msgstr ""
-#: doc/classes/Transform.xml:46
-msgid "Constructs the Transform from a [Transform2D]."
+#: doc/classes/Transform.xml:48
+msgid "Constructs a Transform from a [Transform2D]."
msgstr ""
-#: doc/classes/Transform.xml:55
+#: doc/classes/Transform.xml:57
msgid ""
-"Constructs the Transform from a [Quat]. The origin will be Vector3(0, 0, 0)."
+"Constructs a Transform from a [Quat]. The origin will be [code]Vector3(0, 0, "
+"0)[/code]."
msgstr ""
-#: doc/classes/Transform.xml:64
+#: doc/classes/Transform.xml:66
msgid ""
"Constructs the Transform from a [Basis]. The origin will be Vector3(0, 0, 0)."
msgstr ""
-#: doc/classes/Transform.xml:71
+#: doc/classes/Transform.xml:73 doc/classes/Transform2D.xml:51
msgid ""
"Returns the inverse of the transform, under the assumption that the "
"transformation is composed of rotation, scaling and translation."
msgstr ""
-#: doc/classes/Transform.xml:82
-msgid "Interpolates the transform to other Transform by weight amount (0-1)."
+#: doc/classes/Transform.xml:84
+msgid ""
+"Interpolates the transform to other Transform by weight amount (on the range "
+"of 0.0 to 1.0)."
msgstr ""
-#: doc/classes/Transform.xml:89 doc/classes/Transform2D.xml:106
+#: doc/classes/Transform.xml:91
msgid ""
"Returns the inverse of the transform, under the assumption that the "
"transformation is composed of rotation and translation (no scaling, use "
"affine_inverse for transforms with scaling)."
msgstr ""
-#: doc/classes/Transform.xml:98 doc/classes/Transform2D.xml:115
+#: doc/classes/Transform.xml:100 doc/classes/Transform2D.xml:119
msgid ""
"Returns [code]true[/code] if this transform and [code]transform[/code] are "
"approximately equal, by calling [code]is_equal_approx[/code] on each "
"component."
msgstr ""
-#: doc/classes/Transform.xml:109
+#: doc/classes/Transform.xml:111
msgid ""
"Returns a copy of the transform rotated such that its -Z axis points towards "
"the [code]target[/code] position.\n"
@@ -51326,25 +52039,25 @@ msgid ""
"Operations take place in global space."
msgstr ""
-#: doc/classes/Transform.xml:118 doc/classes/Transform2D.xml:122
+#: doc/classes/Transform.xml:120
msgid ""
"Returns the transform with the basis orthogonal (90 degrees), and normalized "
"axis vectors."
msgstr ""
-#: doc/classes/Transform.xml:129
+#: doc/classes/Transform.xml:131
msgid ""
"Rotates the transform around the given axis by the given angle (in radians), "
"using matrix multiplication. The axis must be a normalized vector."
msgstr ""
-#: doc/classes/Transform.xml:138
+#: doc/classes/Transform.xml:140
msgid ""
"Scales basis and origin of the transform by the given scale factor, using "
"matrix multiplication."
msgstr ""
-#: doc/classes/Transform.xml:147 doc/classes/Transform2D.xml:149
+#: doc/classes/Transform.xml:149 doc/classes/Transform2D.xml:153
msgid ""
"Translates the transform by the given offset, relative to the transform's "
"basis vectors.\n"
@@ -51352,152 +52065,162 @@ msgid ""
"multiplication."
msgstr ""
-#: doc/classes/Transform.xml:157
+#: doc/classes/Transform.xml:159
msgid ""
"Transforms the given [Vector3], [Plane], [AABB], or [PackedVector3Array] by "
"this transform."
msgstr ""
-#: doc/classes/Transform.xml:166
+#: doc/classes/Transform.xml:168
msgid ""
"Inverse-transforms the given [Vector3], [Plane], [AABB], or "
"[PackedVector3Array] by this transform."
msgstr ""
-#: doc/classes/Transform.xml:172
+#: doc/classes/Transform.xml:174
msgid ""
"The basis is a matrix containing 3 [Vector3] as its columns: X axis, Y axis, "
"and Z axis. These vectors can be interpreted as the basis vectors of local "
"coordinate system traveling with the object."
msgstr ""
-#: doc/classes/Transform.xml:175
-msgid "The translation offset of the transform."
+#: doc/classes/Transform.xml:177
+msgid ""
+"The translation offset of the transform (column 3, the fourth column). "
+"Equivalent to array index [code]3[/code]."
msgstr ""
-#: doc/classes/Transform.xml:180
+#: doc/classes/Transform.xml:182
msgid ""
"[Transform] with no translation, rotation or scaling applied. When applied "
"to other data structures, [constant IDENTITY] performs no transformation."
msgstr ""
-#: doc/classes/Transform.xml:183
+#: doc/classes/Transform.xml:185
msgid "[Transform] with mirroring applied perpendicular to the YZ plane."
msgstr ""
-#: doc/classes/Transform.xml:186
+#: doc/classes/Transform.xml:188
msgid "[Transform] with mirroring applied perpendicular to the XZ plane."
msgstr ""
-#: doc/classes/Transform.xml:189
+#: doc/classes/Transform.xml:191
msgid "[Transform] with mirroring applied perpendicular to the XY plane."
msgstr ""
#: doc/classes/Transform2D.xml:4
-msgid "2D transformation (3×2 matrix)."
+msgid "2D transformation (2×3 matrix)."
msgstr ""
#: doc/classes/Transform2D.xml:7
msgid ""
-"Represents one or many transformations in 2D space such as translation, "
-"rotation, or scaling. It consists of two [member x] and [member y] "
-"[Vector2]s and an [member origin]. It is similar to a 3×2 matrix."
+"2×3 matrix (2 rows, 3 columns) used for 2D linear transformations. It can "
+"represent transformations such as translation, rotation, or scaling. It "
+"consists of a three [Vector2] values: [member x], [member y], and the "
+"[member origin].\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
msgstr ""
-#: doc/classes/Transform2D.xml:18
+#: doc/classes/Transform2D.xml:20
msgid "Constructs the transform from a 3D [Transform]."
msgstr ""
-#: doc/classes/Transform2D.xml:31
+#: doc/classes/Transform2D.xml:33
msgid ""
-"Constructs the transform from 3 [Vector2]s representing x, y, and origin."
+"Constructs the transform from 3 [Vector2] values representing [member x], "
+"[member y], and the [member origin] (the three column vectors)."
msgstr ""
-#: doc/classes/Transform2D.xml:42
+#: doc/classes/Transform2D.xml:44
msgid "Constructs the transform from a given angle (in radians) and position."
msgstr ""
-#: doc/classes/Transform2D.xml:58
-msgid "Transforms the given vector by this transform's basis (no translation)."
+#: doc/classes/Transform2D.xml:60
+msgid ""
+"Returns a vector transformed (multiplied) by the basis matrix.\n"
+"This method does not account for translation (the origin vector)."
msgstr ""
-#: doc/classes/Transform2D.xml:67
+#: doc/classes/Transform2D.xml:70
msgid ""
-"Inverse-transforms the given vector by this transform's basis (no "
-"translation)."
+"Returns a vector transformed (multiplied) by the inverse basis matrix.\n"
+"This method does not account for translation (the origin vector)."
msgstr ""
-#: doc/classes/Transform2D.xml:74
+#: doc/classes/Transform2D.xml:78
msgid "Returns the transform's origin (translation)."
msgstr ""
-#: doc/classes/Transform2D.xml:81
+#: doc/classes/Transform2D.xml:85
msgid "Returns the transform's rotation (in radians)."
msgstr ""
-#: doc/classes/Transform2D.xml:88
+#: doc/classes/Transform2D.xml:92
msgid "Returns the scale."
msgstr ""
-#: doc/classes/Transform2D.xml:99
+#: doc/classes/Transform2D.xml:103
msgid ""
"Returns a transform interpolated between this transform and another by a "
-"given weight (0-1)."
+"given weight (on the range of 0.0 to 1.0)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:110
+msgid ""
+"Returns the inverse of the transform, under the assumption that the "
+"transformation is composed of rotation and translation (no scaling, use "
+"[method affine_inverse] for transforms with scaling)."
msgstr ""
-#: doc/classes/Transform2D.xml:131
+#: doc/classes/Transform2D.xml:126
+msgid ""
+"Returns the transform with the basis orthogonal (90 degrees), and normalized "
+"axis vectors (scale of 1 or -1)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:135
msgid ""
"Rotates the transform by the given angle (in radians), using matrix "
"multiplication."
msgstr ""
-#: doc/classes/Transform2D.xml:140
+#: doc/classes/Transform2D.xml:144
msgid ""
"Scales the transform by the given scale factor, using matrix multiplication."
msgstr ""
-#: doc/classes/Transform2D.xml:159
+#: doc/classes/Transform2D.xml:163
msgid ""
"Transforms the given [Vector2], [Rect2], or [PackedVector2Array] by this "
"transform."
msgstr ""
-#: doc/classes/Transform2D.xml:168
+#: doc/classes/Transform2D.xml:172
msgid ""
"Inverse-transforms the given [Vector2], [Rect2], or [PackedVector2Array] by "
"this transform."
msgstr ""
-#: doc/classes/Transform2D.xml:174
-msgid "The transform's translation offset."
-msgstr ""
-
-#: doc/classes/Transform2D.xml:177
-msgid ""
-"The X axis of 2×2 basis matrix containing 2 [Vector2]s as its columns: X "
-"axis and Y axis. These vectors can be interpreted as the basis vectors of "
-"local coordinate system traveling with the object."
-msgstr ""
-
-#: doc/classes/Transform2D.xml:180
+#: doc/classes/Transform2D.xml:178
msgid ""
-"The Y axis of 2×2 basis matrix containing 2 [Vector2]s as its columns: X "
-"axis and Y axis. These vectors can be interpreted as the basis vectors of "
-"local coordinate system traveling with the object."
+"The origin vector (column 2, the third column). Equivalent to array index "
+"[code]2[/code]. The origin vector represents translation."
msgstr ""
-#: doc/classes/Transform2D.xml:185
+#: doc/classes/Transform2D.xml:189
msgid ""
-"[Transform2D] with no translation, rotation or scaling applied. When applied "
-"to other data structures, [constant IDENTITY] performs no transformation."
+"The identity [Transform2D] with no translation, rotation or scaling applied. "
+"When applied to other data structures, [constant IDENTITY] performs no "
+"transformation."
msgstr ""
-#: doc/classes/Transform2D.xml:188
-msgid "[Transform2D] with mirroring applied parallel to the X axis."
+#: doc/classes/Transform2D.xml:192
+msgid "The [Transform2D] that will flip something along the X axis."
msgstr ""
-#: doc/classes/Transform2D.xml:191
-msgid "[Transform2D] with mirroring applied parallel to the Y axis."
+#: doc/classes/Transform2D.xml:195
+msgid "The [Transform2D] that will flip something along the Y axis."
msgstr ""
#: doc/classes/Translation.xml:4
@@ -52161,7 +52884,8 @@ msgid "Returns the column's cell mode."
msgstr ""
#: doc/classes/TreeItem.xml:121
-msgid "Returns the TreeItem's child items."
+msgid ""
+"Returns the TreeItem's first child item or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:130
@@ -52193,28 +52917,32 @@ msgid "Returns the icon [Texture2D] region as [Rect2]."
msgstr ""
#: doc/classes/TreeItem.xml:199
-msgid "Returns the next TreeItem in the tree."
+msgid ""
+"Returns the next TreeItem in the tree or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:208
msgid ""
-"Returns the next visible TreeItem in the tree.\n"
+"Returns the next visible TreeItem in the tree or a null object if there is "
+"none.\n"
"If [code]wrap[/code] is enabled, the method will wrap around to the first "
"visible element in the tree when called on the last visible element, "
"otherwise it returns [code]null[/code]."
msgstr ""
#: doc/classes/TreeItem.xml:216
-msgid "Returns the parent TreeItem."
+msgid "Returns the parent TreeItem or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:223
-msgid "Returns the previous TreeItem in the tree."
+msgid ""
+"Returns the previous TreeItem in the tree or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:232
msgid ""
-"Returns the previous visible TreeItem in the tree.\n"
+"Returns the previous visible TreeItem in the tree or a null object if there "
+"is none.\n"
"If [code]wrap[/code] is enabled, the method will wrap around to the last "
"visible element in the tree when called on the first visible element, "
"otherwise it returns [code]null[/code]."
@@ -52724,6 +53452,10 @@ msgid ""
"A simple server that opens a UDP socket and returns connected "
"[PacketPeerUDP] upon receiving new packets. See also [method PacketPeerUDP."
"connect_to_host].\n"
+"After starting the server ([method listen]), you will need to [method poll] "
+"it at regular intervals (e.g. inside [method Node._process]) for it to "
+"process new packets, delivering them to the appropriate [PacketPeerUDP], and "
+"taking new connections.\n"
"Below a small example of how it can be used:\n"
"[codeblock]\n"
"# server.gd\n"
@@ -52736,6 +53468,7 @@ msgid ""
" server.listen(4242)\n"
"\n"
"func _process(delta):\n"
+" server.poll() # Important!\n"
" if server.is_connection_available():\n"
" var peer : PacketPeerUDP = server.take_connection()\n"
" var pkt = peer.get_packet()\n"
@@ -52771,35 +53504,55 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/UDPServer.xml:60
+#: doc/classes/UDPServer.xml:62
msgid ""
-"Returns [code]true[/code] if a packet with a new address/port combination is "
-"received on the socket."
+"Returns [code]true[/code] if a packet with a new address/port combination "
+"was received on the socket."
msgstr ""
-#: doc/classes/UDPServer.xml:67
+#: doc/classes/UDPServer.xml:69
msgid ""
"Returns [code]true[/code] if the socket is open and listening on a port."
msgstr ""
-#: doc/classes/UDPServer.xml:78
+#: doc/classes/UDPServer.xml:80
msgid ""
"Starts the server by opening a UDP socket listening on the given port. You "
"can optionally specify a [code]bind_address[/code] to only listen for "
"packets sent to that address. See also [method PacketPeerUDP.listen]."
msgstr ""
-#: doc/classes/UDPServer.xml:85
+#: doc/classes/UDPServer.xml:87
+msgid ""
+"Call this method at regular intervals (e.g. inside [method Node._process]) "
+"to process new packets. And packet from known address/port pair will be "
+"delivered to the appropriate [PacketPeerUDP], any packet received from an "
+"unknown address/port pair will be added as a pending connection (see [method "
+"is_connection_available], [method take_connection]). The maximum number of "
+"pending connection is defined via [member max_pending_connections]."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:94
+msgid ""
+"Stops the server, closing the UDP socket if open. Will close all connected "
+"[PacketPeerUDP] accepted via [method take_connection] (remote peers will not "
+"be notified)."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:101
msgid ""
-"Stops the server, closing the UDP socket if open. Will not disconnect any "
-"connected [PacketPeerUDP]."
+"Returns the first pending connection (connected to the appropriate address/"
+"port). Will return [code]null[/code] if no new connection is available. See "
+"also [method is_connection_available], [method PacketPeerUDP."
+"connect_to_host]."
msgstr ""
-#: doc/classes/UDPServer.xml:92
+#: doc/classes/UDPServer.xml:107
msgid ""
-"Returns a [PacketPeerUDP] connected to the address/port combination of the "
-"first packet in queue. Will return [code]null[/code] if no packet is in "
-"queue. See also [method PacketPeerUDP.connect_to_host]."
+"Define the maximum number of pending connections, during [method poll], any "
+"new pending connection exceeding that value will be automatically dropped. "
+"Setting this value to [code]0[/code] effectively prevents any new pending "
+"connection to be accepted (e.g. when all your players have connected)."
msgstr ""
#: doc/classes/UndoRedo.xml:4
@@ -53440,24 +54193,26 @@ msgstr ""
#: doc/classes/Vector2.xml:46
msgid ""
-"Returns the vector's angle in radians with respect to the X axis, or [code]"
-"(1, 0)[/code] vector.\n"
+"Returns this vector's angle with respect to the X axis, or [code](1, 0)[/"
+"code] vector, in radians.\n"
"Equivalent to the result of [method @GDScript.atan2] when called with the "
-"vector's [member x] and [member y] as parameters: [code]atan2(x, y)[/code]."
+"vector's [member y] and [member x] as parameters: [code]atan2(y, x)[/code]."
msgstr ""
#: doc/classes/Vector2.xml:56
-msgid "Returns the angle in radians between the two vectors."
+msgid "Returns the angle to the given vector, in radians."
msgstr ""
#: doc/classes/Vector2.xml:65
msgid ""
-"Returns the angle in radians between the line connecting the two points and "
-"the X coordinate."
+"Returns the angle between the line connecting the two points and the X axis, "
+"in radians."
msgstr ""
-#: doc/classes/Vector2.xml:72 doc/classes/Vector2i.xml:46
-msgid "Returns the ratio of [member x] to [member y]."
+#: doc/classes/Vector2.xml:72
+msgid ""
+"Returns the aspect ratio of this vector, the ratio of [member x] to [member "
+"y]."
msgstr ""
#: doc/classes/Vector2.xml:81 doc/classes/Vector3.xml:59
@@ -53466,24 +54221,27 @@ msgid ""
msgstr ""
#: doc/classes/Vector2.xml:88
-msgid "Returns the vector with all components rounded up."
+msgid ""
+"Returns the vector with all components rounded up (towards positive "
+"infinity)."
msgstr ""
#: doc/classes/Vector2.xml:97
-msgid "Returns the vector with a maximum length."
+msgid ""
+"Returns the vector with a maximum length by limiting its length to "
+"[code]length[/code]."
msgstr ""
#: doc/classes/Vector2.xml:106
-msgid ""
-"Returns the 2-dimensional analog of the cross product with the given vector."
+msgid "Returns the cross product of this vector and [code]with[/code]."
msgstr ""
#: doc/classes/Vector2.xml:121
msgid ""
"Cubically interpolates between this vector and [code]b[/code] using "
"[code]pre_a[/code] and [code]post_b[/code] as handles, and returns the "
-"result at position [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation."
+"result at position [code]t[/code]. [code]t[/code] is on the range of 0.0 to "
+"1.0, representing the amount of interpolation."
msgstr ""
#: doc/classes/Vector2.xml:130 doc/classes/Vector3.xml:99
@@ -53491,182 +54249,198 @@ msgid ""
"Returns the normalized vector pointing from this vector to [code]b[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:139
+#: doc/classes/Vector2.xml:139 doc/classes/Vector3.xml:108
msgid ""
-"Returns the squared distance to vector [code]b[/code]. Prefer this function "
-"over [method distance_to] if you need to sort vectors or need the squared "
-"distance for some formula."
+"Returns the squared distance between this vector and [code]b[/code].\n"
+"This method runs faster than [method distance_to], so prefer it if you need "
+"to compare vectors or need the squared distance for some formula."
msgstr ""
-#: doc/classes/Vector2.xml:148
-msgid "Returns the distance to vector [code]b[/code]."
+#: doc/classes/Vector2.xml:149
+msgid "Returns the distance between this vector and [code]to[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:157
-msgid "Returns the dot product with vector [code]b[/code]."
+#: doc/classes/Vector2.xml:158
+msgid ""
+"Returns the dot product of this vector and [code]with[/code]. This can be "
+"used to compare the angle between two vectors. For example, this can be used "
+"to determine whether an enemy is facing the player.\n"
+"The dot product will be [code]0[/code] for a straight angle (90 degrees), "
+"greater than 0 for angles narrower than 90 degrees and lower than 0 for "
+"angles wider than 90 degrees.\n"
+"When using unit (normalized) vectors, the result will always be between "
+"[code]-1.0[/code] (180 degree angle) when the vectors are facing opposite "
+"directions, and [code]1.0[/code] (0 degree angle) when the vectors are "
+"aligned.\n"
+"[b]Note:[/b] [code]a.dot(b)[/code] is equivalent to [code]b.dot(a)[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:164
-msgid "Returns the vector with all components rounded down."
+#: doc/classes/Vector2.xml:168
+msgid ""
+"Returns the vector with all components rounded down (towards negative "
+"infinity)."
msgstr ""
-#: doc/classes/Vector2.xml:173 doc/classes/Vector3.xml:149
+#: doc/classes/Vector2.xml:177 doc/classes/Vector3.xml:153
msgid ""
"Returns [code]true[/code] if this vector and [code]v[/code] are "
"approximately equal, by running [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/Vector2.xml:180 doc/classes/Vector3.xml:156
-msgid "Returns [code]true[/code] if the vector is normalized."
+#: doc/classes/Vector2.xml:184 doc/classes/Vector3.xml:160
+msgid ""
+"Returns [code]true[/code] if the vector is normalized, and false otherwise."
msgstr ""
-#: doc/classes/Vector2.xml:187 doc/classes/Vector3.xml:163
-msgid "Returns the vector's length."
+#: doc/classes/Vector2.xml:191 doc/classes/Vector3.xml:167
+msgid "Returns the length (magnitude) of this vector."
msgstr ""
-#: doc/classes/Vector2.xml:194
+#: doc/classes/Vector2.xml:198 doc/classes/Vector3.xml:174
msgid ""
-"Returns the vector's length squared. Prefer this method over [method length] "
-"if you need to sort vectors or need the squared length for some formula."
+"Returns the squared length (squared magnitude) of this vector.\n"
+"This method runs faster than [method length], so prefer it if you need to "
+"compare vectors or need the squared distance for some formula."
msgstr ""
-#: doc/classes/Vector2.xml:205
+#: doc/classes/Vector2.xml:210 doc/classes/Vector3.xml:186
msgid ""
"Returns the result of the linear interpolation between this vector and "
-"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation."
+"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is on the range of "
+"0.0 to 1.0, representing the amount of interpolation."
msgstr ""
-#: doc/classes/Vector2.xml:216 doc/classes/Vector3.xml:206
+#: doc/classes/Vector2.xml:221
msgid ""
"Moves the vector toward [code]to[/code] by the fixed [code]delta[/code] "
"amount."
msgstr ""
-#: doc/classes/Vector2.xml:223 doc/classes/Vector3.xml:213
+#: doc/classes/Vector2.xml:228 doc/classes/Vector3.xml:218
msgid ""
"Returns the vector scaled to unit length. Equivalent to [code]v / v.length()"
"[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:232 doc/classes/Vector3.xml:231
+#: doc/classes/Vector2.xml:237 doc/classes/Vector3.xml:236
msgid ""
-"Returns a vector composed of the [code]fposmod[/code] of this vector's "
+"Returns a vector composed of the [method @GDScript.fposmod] of this vector's "
"components and [code]mod[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:241 doc/classes/Vector3.xml:240
+#: doc/classes/Vector2.xml:246 doc/classes/Vector3.xml:245
msgid ""
-"Returns a vector composed of the [code]fposmod[/code] of this vector's "
+"Returns a vector composed of the [method @GDScript.fposmod] of this vector's "
"components and [code]modv[/code]'s components."
msgstr ""
-#: doc/classes/Vector2.xml:250 doc/classes/Vector3.xml:249
+#: doc/classes/Vector2.xml:255
msgid "Returns the vector projected onto the vector [code]b[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:259 doc/classes/Vector3.xml:258
+#: doc/classes/Vector2.xml:264
msgid "Returns the vector reflected from a plane defined by the given normal."
msgstr ""
-#: doc/classes/Vector2.xml:268
+#: doc/classes/Vector2.xml:273
msgid ""
"Returns the vector rotated by [code]phi[/code] radians. See also [method "
"@GDScript.deg2rad]."
msgstr ""
-#: doc/classes/Vector2.xml:275 doc/classes/Vector3.xml:276
+#: doc/classes/Vector2.xml:280
msgid ""
"Returns the vector with all components rounded to the nearest integer, with "
"halfway cases rounded away from zero."
msgstr ""
-#: doc/classes/Vector2.xml:282 doc/classes/Vector2i.xml:53
-#: doc/classes/Vector3.xml:283 doc/classes/Vector3i.xml:55
+#: doc/classes/Vector2.xml:287
msgid ""
"Returns the vector with each component set to one or negative one, depending "
-"on the signs of the components."
+"on the signs of the components, or zero if the component is zero, by calling "
+"[method @GDScript.sign] on each component."
msgstr ""
-#: doc/classes/Vector2.xml:293 doc/classes/Vector3.xml:294
+#: doc/classes/Vector2.xml:298 doc/classes/Vector3.xml:299
msgid ""
"Returns the result of spherical linear interpolation between this vector and "
-"[code]b[/code], by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation.\n"
+"[code]b[/code], by amount [code]t[/code]. [code]t[/code] is on the range of "
+"0.0 to 1.0, representing the amount of interpolation.\n"
"[b]Note:[/b] Both vectors must be normalized."
msgstr ""
-#: doc/classes/Vector2.xml:303 doc/classes/Vector3.xml:304
-msgid ""
-"Returns the component of the vector along a plane defined by the given "
-"normal."
+#: doc/classes/Vector2.xml:308 doc/classes/Vector3.xml:309
+msgid "Returns this vector slid along a plane defined by the given normal."
msgstr ""
-#: doc/classes/Vector2.xml:312 doc/classes/Vector3.xml:313
-msgid "Returns the vector snapped to a grid with the given size."
+#: doc/classes/Vector2.xml:317 doc/classes/Vector3.xml:318
+msgid ""
+"Returns this vector with each component snapped to the nearest multiple of "
+"[code]step[/code]. This can also be used to round to an arbitrary number of "
+"decimals."
msgstr ""
-#: doc/classes/Vector2.xml:319
-msgid "Returns a perpendicular vector."
+#: doc/classes/Vector2.xml:324
+msgid ""
+"Returns a perpendicular vector rotated 90 degrees counter-clockwise compared "
+"to the original, with the same length."
msgstr ""
-#: doc/classes/Vector2.xml:325 doc/classes/Vector2i.xml:59
-#: doc/classes/Vector3.xml:326 doc/classes/Vector3i.xml:61
+#: doc/classes/Vector2.xml:330 doc/classes/Vector2i.xml:59
+#: doc/classes/Vector3.xml:332 doc/classes/Vector3i.xml:61
msgid ""
"The vector's X component. Also accessible by using the index position [code]"
"[0][/code]."
msgstr ""
-#: doc/classes/Vector2.xml:328 doc/classes/Vector2i.xml:62
-#: doc/classes/Vector3.xml:329 doc/classes/Vector3i.xml:64
+#: doc/classes/Vector2.xml:333 doc/classes/Vector2i.xml:62
+#: doc/classes/Vector3.xml:335 doc/classes/Vector3i.xml:64
msgid ""
"The vector's Y component. Also accessible by using the index position [code]"
"[1][/code]."
msgstr ""
-#: doc/classes/Vector2.xml:333 doc/classes/Vector2i.xml:67
+#: doc/classes/Vector2.xml:338 doc/classes/Vector2i.xml:67
#: doc/classes/Vector3i.xml:72
msgid "Enumerated value for the X axis."
msgstr ""
-#: doc/classes/Vector2.xml:336 doc/classes/Vector2i.xml:70
+#: doc/classes/Vector2.xml:341 doc/classes/Vector2i.xml:70
#: doc/classes/Vector3i.xml:75
msgid "Enumerated value for the Y axis."
msgstr ""
-#: doc/classes/Vector2.xml:339 doc/classes/Vector2i.xml:73
-#: doc/classes/Vector3.xml:346 doc/classes/Vector3i.xml:81
-msgid "Zero vector."
+#: doc/classes/Vector2.xml:344 doc/classes/Vector2i.xml:73
+#: doc/classes/Vector3.xml:352 doc/classes/Vector3i.xml:81
+msgid "Zero vector, a vector with all components set to [code]0[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:342 doc/classes/Vector2i.xml:76
-#: doc/classes/Vector3.xml:349 doc/classes/Vector3i.xml:84
-msgid "One vector."
+#: doc/classes/Vector2.xml:347 doc/classes/Vector2i.xml:76
+#: doc/classes/Vector3.xml:355 doc/classes/Vector3i.xml:84
+msgid "One vector, a vector with all components set to [code]1[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:345 doc/classes/Vector3.xml:352
-msgid "Infinity vector."
+#: doc/classes/Vector2.xml:350 doc/classes/Vector3.xml:358
+msgid ""
+"Infinity vector, a vector with all components set to [constant @GDScript."
+"INF]."
msgstr ""
-#: doc/classes/Vector2.xml:348 doc/classes/Vector2i.xml:79
-#: doc/classes/Vector3.xml:355 doc/classes/Vector3i.xml:87
-msgid "Left unit vector."
+#: doc/classes/Vector2.xml:353 doc/classes/Vector2i.xml:79
+msgid "Left unit vector. Represents the direction of left."
msgstr ""
-#: doc/classes/Vector2.xml:351 doc/classes/Vector2i.xml:82
-#: doc/classes/Vector3.xml:358 doc/classes/Vector3i.xml:90
-msgid "Right unit vector."
+#: doc/classes/Vector2.xml:356 doc/classes/Vector2i.xml:82
+msgid "Right unit vector. Represents the direction of right."
msgstr ""
-#: doc/classes/Vector2.xml:354 doc/classes/Vector2i.xml:85
-#: doc/classes/Vector3.xml:361 doc/classes/Vector3i.xml:93
-msgid "Up unit vector."
+#: doc/classes/Vector2.xml:359 doc/classes/Vector2i.xml:85
+msgid "Up unit vector. Y is down in 2D, so this vector points -Y."
msgstr ""
-#: doc/classes/Vector2.xml:357 doc/classes/Vector2i.xml:88
-#: doc/classes/Vector3.xml:364 doc/classes/Vector3i.xml:96
-msgid "Down unit vector."
+#: doc/classes/Vector2.xml:362 doc/classes/Vector2i.xml:88
+msgid "Down unit vector. Y is down in 2D, so this vector points +Y."
msgstr ""
#: doc/classes/Vector2i.xml:4
@@ -53695,6 +54469,16 @@ msgid ""
"will be truncated."
msgstr ""
+#: doc/classes/Vector2i.xml:46
+msgid "Returns the ratio of [member x] to [member y]."
+msgstr ""
+
+#: doc/classes/Vector2i.xml:53 doc/classes/Vector3i.xml:55
+msgid ""
+"Returns the vector with each component set to one or negative one, depending "
+"on the signs of the components."
+msgstr ""
+
#: doc/classes/Vector3.xml:4
msgid "Vector used for 3D math using floating point coordinates."
msgstr ""
@@ -53719,120 +54503,170 @@ msgid "Returns a [Vector3] with the given components."
msgstr ""
#: doc/classes/Vector3.xml:50
-msgid "Returns the minimum angle to the given vector."
+msgid "Returns the minimum angle to the given vector, in radians."
msgstr ""
#: doc/classes/Vector3.xml:66
-msgid "Returns a new vector with all components rounded up."
+msgid ""
+"Returns a new vector with all components rounded up (towards positive "
+"infinity)."
msgstr ""
#: doc/classes/Vector3.xml:75
-msgid "Returns the cross product with [code]b[/code]."
+msgid "Returns the cross product of this vector and [code]b[/code]."
msgstr ""
#: doc/classes/Vector3.xml:90
msgid ""
"Performs a cubic interpolation between vectors [code]pre_a[/code], [code]a[/"
"code], [code]b[/code], [code]post_b[/code] ([code]a[/code] is current), by "
-"the given amount [code]t[/code]. [code]t[/code] is in the range of [code]0.0 "
-"- 1.0[/code], representing the amount of interpolation."
-msgstr ""
-
-#: doc/classes/Vector3.xml:108
-msgid ""
-"Returns the squared distance to [code]b[/code]. Prefer this function over "
-"[method distance_to] if you need to sort vectors or need the squared "
-"distance for some formula."
+"the given amount [code]t[/code]. [code]t[/code] is on the range of 0.0 to "
+"1.0, representing the amount of interpolation."
msgstr ""
-#: doc/classes/Vector3.xml:117
-msgid "Returns the distance to [code]b[/code]."
+#: doc/classes/Vector3.xml:118
+msgid "Returns the distance between this vector and [code]b[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:126
-msgid "Returns the dot product with [code]b[/code]."
+#: doc/classes/Vector3.xml:127
+msgid ""
+"Returns the dot product of this vector and [code]b[/code]. This can be used "
+"to compare the angle between two vectors. For example, this can be used to "
+"determine whether an enemy is facing the player.\n"
+"The dot product will be [code]0[/code] for a straight angle (90 degrees), "
+"greater than 0 for angles narrower than 90 degrees and lower than 0 for "
+"angles wider than 90 degrees.\n"
+"When using unit (normalized) vectors, the result will always be between "
+"[code]-1.0[/code] (180 degree angle) when the vectors are facing opposite "
+"directions, and [code]1.0[/code] (0 degree angle) when the vectors are "
+"aligned.\n"
+"[b]Note:[/b] [code]a.dot(b)[/code] is equivalent to [code]b.dot(a)[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:133
-msgid "Returns a new vector with all components rounded down."
+#: doc/classes/Vector3.xml:137
+msgid ""
+"Returns a new vector with all components rounded down (towards negative "
+"infinity)."
msgstr ""
-#: doc/classes/Vector3.xml:140
+#: doc/classes/Vector3.xml:144
msgid ""
"Returns the inverse of the vector. This is the same as [code]Vector3( 1.0 / "
"v.x, 1.0 / v.y, 1.0 / v.z )[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:170
+#: doc/classes/Vector3.xml:193 doc/classes/Vector3i.xml:41
msgid ""
-"Returns the vector's length squared. Prefer this function over [method "
-"length] if you need to sort vectors or need the squared length for some "
-"formula."
+"Returns the axis of the vector's largest value. See [code]AXIS_*[/code] "
+"constants. If all components are equal, this method returns [constant "
+"AXIS_X]."
msgstr ""
-#: doc/classes/Vector3.xml:181
+#: doc/classes/Vector3.xml:200 doc/classes/Vector3i.xml:48
msgid ""
-"Returns the result of the linear interpolation between this vector and "
-"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation.."
+"Returns the axis of the vector's smallest value. See [code]AXIS_*[/code] "
+"constants. If all components are equal, this method returns [constant "
+"AXIS_Z]."
msgstr ""
-#: doc/classes/Vector3.xml:188 doc/classes/Vector3i.xml:41
+#: doc/classes/Vector3.xml:211
msgid ""
-"Returns the axis of the vector's largest value. See [code]AXIS_*[/code] "
-"constants."
+"Moves this vector toward [code]to[/code] by the fixed [code]delta[/code] "
+"amount."
msgstr ""
-#: doc/classes/Vector3.xml:195 doc/classes/Vector3i.xml:48
+#: doc/classes/Vector3.xml:227
+msgid "Returns the outer product with [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:254
+msgid "Returns this vector projected onto another vector [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:263
+msgid "Returns this vector reflected from a plane defined by the given normal."
+msgstr ""
+
+#: doc/classes/Vector3.xml:274
msgid ""
-"Returns the axis of the vector's smallest value. See [code]AXIS_*[/code] "
-"constants."
+"Rotates this vector around a given axis by [code]phi[/code] radians. The "
+"axis must be a normalized vector."
msgstr ""
-#: doc/classes/Vector3.xml:222
-msgid "Returns the outer product with [code]b[/code]."
+#: doc/classes/Vector3.xml:281
+msgid ""
+"Returns this vector with all components rounded to the nearest integer, with "
+"halfway cases rounded away from zero."
msgstr ""
-#: doc/classes/Vector3.xml:269
+#: doc/classes/Vector3.xml:288
msgid ""
-"Rotates the vector around a given axis by [code]phi[/code] radians. The axis "
-"must be a normalized vector."
+"Returns a vector with each component set to one or negative one, depending "
+"on the signs of this vector's components, or zero if the component is zero, "
+"by calling [method @GDScript.sign] on each component."
msgstr ""
-#: doc/classes/Vector3.xml:320
-msgid "Returns a diagonal matrix with the vector as main diagonal."
+#: doc/classes/Vector3.xml:325
+msgid ""
+"Returns a diagonal matrix with the vector as main diagonal.\n"
+"This is equivalent to a Basis with no rotation or shearing and this vector's "
+"components set as the scale."
msgstr ""
-#: doc/classes/Vector3.xml:332 doc/classes/Vector3i.xml:67
+#: doc/classes/Vector3.xml:338 doc/classes/Vector3i.xml:67
msgid ""
"The vector's Z component. Also accessible by using the index position [code]"
"[2][/code]."
msgstr ""
-#: doc/classes/Vector3.xml:337
+#: doc/classes/Vector3.xml:343
msgid ""
"Enumerated value for the X axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:340
+#: doc/classes/Vector3.xml:346
msgid ""
"Enumerated value for the Y axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:343
+#: doc/classes/Vector3.xml:349
msgid ""
"Enumerated value for the Z axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:367 doc/classes/Vector3i.xml:99
-msgid "Forward unit vector."
+#: doc/classes/Vector3.xml:361 doc/classes/Vector3i.xml:87
+msgid ""
+"Left unit vector. Represents the local direction of left, and the global "
+"direction of west."
msgstr ""
-#: doc/classes/Vector3.xml:370 doc/classes/Vector3i.xml:102
-msgid "Back unit vector."
+#: doc/classes/Vector3.xml:364 doc/classes/Vector3i.xml:90
+msgid ""
+"Right unit vector. Represents the local direction of right, and the global "
+"direction of east."
+msgstr ""
+
+#: doc/classes/Vector3.xml:367 doc/classes/Vector3i.xml:93
+msgid "Up unit vector."
+msgstr ""
+
+#: doc/classes/Vector3.xml:370 doc/classes/Vector3i.xml:96
+msgid "Down unit vector."
+msgstr ""
+
+#: doc/classes/Vector3.xml:373 doc/classes/Vector3i.xml:99
+msgid ""
+"Forward unit vector. Represents the local direction of forward, and the "
+"global direction of north."
+msgstr ""
+
+#: doc/classes/Vector3.xml:376 doc/classes/Vector3i.xml:102
+msgid ""
+"Back unit vector. Represents the local direction of back, and the global "
+"direction of south."
msgstr ""
#: doc/classes/Vector3i.xml:4
@@ -53881,10 +54715,14 @@ msgid ""
"directly.\n"
"[b]Note:[/b] The origin point of your VehicleBody3D will determine the "
"center of gravity of your vehicle so it is better to keep this low and move "
-"the [CollisionShape3D] and [MeshInstance3D] upwards."
+"the [CollisionShape3D] and [MeshInstance3D] upwards.\n"
+"[b]Note:[/b] This class has known issues and isn't designed to provide "
+"realistic 3D vehicle physics. If you want advanced vehicle physics, you will "
+"probably have to write your own physics integration using another "
+"[PhysicsBody3D] class."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:16
+#: doc/classes/VehicleBody3D.xml:17
msgid ""
"Slows down the vehicle by applying a braking force. The vehicle is only "
"slowed down if the wheels are in contact with a surface. The force you need "
@@ -53893,7 +54731,7 @@ msgid ""
"a value in the 25 - 30 range for hard braking."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:19
+#: doc/classes/VehicleBody3D.xml:20
msgid ""
"Accelerates the vehicle by applying an engine force. The vehicle is only "
"speed up if the wheels that have [member VehicleWheel3D.use_as_traction] set "
@@ -53906,7 +54744,7 @@ msgid ""
"A negative value will result in the vehicle reversing."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:25
+#: doc/classes/VehicleBody3D.xml:26
msgid ""
"The steering angle for the vehicle. Setting this to a non-zero value will "
"result in the vehicle turning when it's moving. Wheels that have [member "
@@ -53922,25 +54760,29 @@ msgstr ""
msgid ""
"This node needs to be used as a child node of [VehicleBody3D] and simulates "
"the behavior of one of its wheels. This node also acts as a collider to "
-"detect if the wheel is touching a surface."
+"detect if the wheel is touching a surface.\n"
+"[b]Note:[/b] This class has known issues and isn't designed to provide "
+"realistic 3D vehicle physics. If you want advanced vehicle physics, you will "
+"probably have to write your own physics integration using another "
+"[PhysicsBody3D] class."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:16
+#: doc/classes/VehicleWheel3D.xml:17
msgid "Returns the rotational speed of the wheel in revolutions per minute."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:23
+#: doc/classes/VehicleWheel3D.xml:24
msgid ""
"Returns a value between 0.0 and 1.0 that indicates whether this wheel is "
"skidding. 0.0 is skidding (the wheel has lost grip, e.g. icy terrain), 1.0 "
"means not skidding (the wheel has full grip, e.g. dry asphalt road)."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:30
+#: doc/classes/VehicleWheel3D.xml:31
msgid "Returns [code]true[/code] if this wheel is in contact with a surface."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:36
+#: doc/classes/VehicleWheel3D.xml:37
msgid ""
"Slows down the wheel by applying a braking force. The wheel is only slowed "
"down if it is in contact with a surface. The force you need to apply to "
@@ -53949,7 +54791,7 @@ msgid ""
"- 30 range for hard braking."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:39
+#: doc/classes/VehicleWheel3D.xml:40
msgid ""
"The damping applied to the spring when the spring is being compressed. This "
"value should be between 0.0 (no damping) and 1.0. A value of 0.0 means the "
@@ -53957,7 +54799,7 @@ msgid ""
"is around 0.3 for a normal car, 0.5 for a race car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:42
+#: doc/classes/VehicleWheel3D.xml:43
msgid ""
"The damping applied to the spring when relaxing. This value should be "
"between 0.0 (no damping) and 1.0. This value should always be slightly "
@@ -53965,7 +54807,7 @@ msgid ""
"damping_compression] value of 0.3, try a relaxation value of 0.5."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:45
+#: doc/classes/VehicleWheel3D.xml:46
msgid ""
"Accelerates the wheel by applying an engine force. The wheel is only speed "
"up if it is in contact with a surface. The [member RigidBody3D.mass] of the "
@@ -53976,13 +54818,13 @@ msgid ""
"A negative value will result in the wheel reversing."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:50
+#: doc/classes/VehicleWheel3D.xml:51
msgid ""
"The steering angle for the wheel. Setting this to a non-zero value will "
"result in the vehicle turning when it's moving."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:53
+#: doc/classes/VehicleWheel3D.xml:54
msgid ""
"The maximum force the spring can resist. This value should be higher than a "
"quarter of the [member RigidBody3D.mass] of the [VehicleBody3D] or the "
@@ -53990,28 +54832,28 @@ msgid ""
"obtained by a value that is about 3× to 4× this number."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:56
+#: doc/classes/VehicleWheel3D.xml:57
msgid ""
"This value defines the stiffness of the suspension. Use a value lower than "
"50 for an off-road car, a value between 50 and 100 for a race car and try "
"something around 200 for something like a Formula 1 car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:59
+#: doc/classes/VehicleWheel3D.xml:60
msgid ""
"This is the distance the suspension can travel. As Godot units are "
"equivalent to meters, keep this setting relatively low. Try a value between "
"0.1 and 0.3 depending on the type of car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:62
+#: doc/classes/VehicleWheel3D.xml:63
msgid ""
"If [code]true[/code], this wheel will be turned when the car steers. This "
"value is used in conjunction with [member VehicleBody3D.steering] and "
"ignored if you are using the per-wheel [member steering] value instead."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:65
+#: doc/classes/VehicleWheel3D.xml:66
msgid ""
"If [code]true[/code], this wheel transfers engine force to the ground to "
"propel the vehicle forward. This value is used in conjunction with [member "
@@ -54019,7 +54861,7 @@ msgid ""
"[member engine_force] value instead."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:68
+#: doc/classes/VehicleWheel3D.xml:69
msgid ""
"This determines how much grip this wheel has. It is combined with the "
"friction setting of the surface the wheel is in contact with. 0.0 means no "
@@ -54029,11 +54871,11 @@ msgid ""
"It's best to set this to 1.0 when starting out."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:72
+#: doc/classes/VehicleWheel3D.xml:73
msgid "The radius of the wheel in meters."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:75
+#: doc/classes/VehicleWheel3D.xml:76
msgid ""
"This is the distance in meters the wheel is lowered from its origin point. "
"Don't set this to 0.0 and move the wheel into position, instead move the "
@@ -54042,7 +54884,7 @@ msgid ""
"down to the position it should be in when the car is in rest."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:78
+#: doc/classes/VehicleWheel3D.xml:79
msgid ""
"This value affects the roll of your vehicle. If set to 1.0 for all wheels, "
"your vehicle will be prone to rolling over, while a value of 0.0 will resist "
@@ -54520,7 +55362,7 @@ msgstr ""
#: doc/classes/Viewport.xml:318
msgid ""
"Use fast approximate antialiasing. FXAA is a popular screen-space "
-"antialising method, which is fast but will make the image look blurry, "
+"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."
msgstr ""
@@ -54573,24 +55415,24 @@ msgid ""
"your [WorldEnvironment]."
msgstr ""
-#: doc/classes/Viewport.xml:384
+#: doc/classes/Viewport.xml:381
msgid ""
"Colors each PSSM split for the [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, and yellow."
msgstr ""
-#: doc/classes/Viewport.xml:387
+#: doc/classes/Viewport.xml:384
msgid ""
"Draws the decal atlas used by [Decal]s and light projector textures in the "
"upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/Viewport.xml:402
+#: doc/classes/Viewport.xml:405
msgid "Max value for [enum DefaultCanvasItemTextureFilter] enum."
msgstr ""
-#: doc/classes/Viewport.xml:414
+#: doc/classes/Viewport.xml:417
msgid "Max value for [enum DefaultCanvasItemTextureRepeat] enum."
msgstr ""
@@ -54621,82 +55463,84 @@ msgid ""
"The VisibilityEnabler2D will disable [RigidBody2D], [AnimationPlayer], and "
"other nodes when they are not visible. It will only affect nodes with the "
"same root node as the VisibilityEnabler2D, and the root node itself.\n"
+"If you just want to receive notifications, use [VisibilityNotifier2D] "
+"instead.\n"
"[b]Note:[/b] For performance reasons, VisibilityEnabler2D uses an "
"approximate heuristic with precision determined by [member ProjectSettings."
-"world/2d/cell_size]. If you need exact visibility checking, use another "
+"world/2d/cell_size]. If you need precise visibility checking, use another "
"method such as adding an [Area2D] node as a child of a [Camera2D] node.\n"
"[b]Note:[/b] VisibilityEnabler2D will not affect nodes added after scene "
"initialization."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:20
-#: doc/classes/VisibilityEnabler3D.xml:20
+#: doc/classes/VisibilityEnabler2D.xml:21
+#: doc/classes/VisibilityEnabler3D.xml:21
msgid ""
"Returns whether the enabler identified by given [enum Enabler] constant is "
"active."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:31
-#: doc/classes/VisibilityEnabler3D.xml:31
+#: doc/classes/VisibilityEnabler2D.xml:32
+#: doc/classes/VisibilityEnabler3D.xml:32
msgid ""
"Sets active state of the enabler identified by given [enum Enabler] constant."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:37
+#: doc/classes/VisibilityEnabler2D.xml:38
msgid "If [code]true[/code], [RigidBody2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:40
+#: doc/classes/VisibilityEnabler2D.xml:41
msgid "If [code]true[/code], [AnimatedSprite2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:43
-#: doc/classes/VisibilityEnabler3D.xml:40
+#: doc/classes/VisibilityEnabler2D.xml:44
+#: doc/classes/VisibilityEnabler3D.xml:41
msgid "If [code]true[/code], [AnimationPlayer] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:46
+#: doc/classes/VisibilityEnabler2D.xml:47
msgid "If [code]true[/code], [GPUParticles2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:49
+#: doc/classes/VisibilityEnabler2D.xml:50
msgid ""
"If [code]true[/code], the parent's [method Node._physics_process] will be "
"stopped."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:52
+#: doc/classes/VisibilityEnabler2D.xml:53
msgid ""
"If [code]true[/code], the parent's [method Node._process] will be stopped."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:57
-#: doc/classes/VisibilityEnabler3D.xml:45
+#: doc/classes/VisibilityEnabler2D.xml:58
+#: doc/classes/VisibilityEnabler3D.xml:46
msgid "This enabler will pause [AnimationPlayer] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:60
+#: doc/classes/VisibilityEnabler2D.xml:61
msgid "This enabler will freeze [RigidBody2D] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:63
+#: doc/classes/VisibilityEnabler2D.xml:64
msgid "This enabler will stop [GPUParticles2D] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:66
+#: doc/classes/VisibilityEnabler2D.xml:67
msgid "This enabler will stop the parent's _process function."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:69
+#: doc/classes/VisibilityEnabler2D.xml:70
msgid "This enabler will stop the parent's _physics_process function."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:72
+#: doc/classes/VisibilityEnabler2D.xml:73
msgid "This enabler will stop [AnimatedSprite2D] nodes animations."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:75
-#: doc/classes/VisibilityEnabler3D.xml:51
+#: doc/classes/VisibilityEnabler2D.xml:76
+#: doc/classes/VisibilityEnabler3D.xml:52
msgid "Represents the size of the [enum Enabler] enum."
msgstr ""
@@ -54705,19 +55549,23 @@ msgid ""
"The VisibilityEnabler3D will disable [RigidBody3D] and [AnimationPlayer] "
"nodes when they are not visible. It will only affect other nodes within the "
"same scene as the VisibilityEnabler3D itself.\n"
+"If you just want to receive notifications, use [VisibilityNotifier3D] "
+"instead.\n"
"[b]Note:[/b] VisibilityEnabler3D uses an approximate heuristic for "
"performance reasons. It doesn't take walls and other occlusion into account. "
-"If you need exact visibility checking, use another method such as adding an "
-"[Area3D] node as a child of a [Camera3D] node.\n"
+"The heuristic is an implementation detail and may change in future versions. "
+"If you need precise visibility checking, use another method such as adding "
+"an [Area3D] node as a child of a [Camera3D] node and/or [method Vector3."
+"dot].\n"
"[b]Note:[/b] VisibilityEnabler3D will not affect nodes added after scene "
"initialization."
msgstr ""
-#: doc/classes/VisibilityEnabler3D.xml:37
+#: doc/classes/VisibilityEnabler3D.xml:38
msgid "If [code]true[/code], [RigidBody3D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler3D.xml:48
+#: doc/classes/VisibilityEnabler3D.xml:49
msgid "This enabler will freeze [RigidBody3D] nodes."
msgstr ""
@@ -54731,13 +55579,15 @@ msgid ""
"The VisibilityNotifier2D detects when it is visible on the screen. It also "
"notifies when its bounding rectangle enters or exits the screen or a "
"viewport.\n"
+"If you want nodes to be disabled automatically when they exit the screen, "
+"use [VisibilityEnabler2D] instead.\n"
"[b]Note:[/b] For performance reasons, VisibilityNotifier2D uses an "
"approximate heuristic with precision determined by [member ProjectSettings."
-"world/2d/cell_size]. If you need exact visibility checking, use another "
+"world/2d/cell_size]. If you need precise visibility checking, use another "
"method such as adding an [Area2D] node as a child of a [Camera2D] node."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:17
+#: doc/classes/VisibilityNotifier2D.xml:18
msgid ""
"If [code]true[/code], the bounding rectangle is on the screen.\n"
"[b]Note:[/b] It takes one frame for the node's visibility to be assessed "
@@ -54746,23 +55596,23 @@ msgid ""
"pass."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:24
+#: doc/classes/VisibilityNotifier2D.xml:25
msgid "The VisibilityNotifier2D's bounding rectangle."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:30
+#: doc/classes/VisibilityNotifier2D.xml:31
msgid "Emitted when the VisibilityNotifier2D enters the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:35
+#: doc/classes/VisibilityNotifier2D.xml:36
msgid "Emitted when the VisibilityNotifier2D exits the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:42
+#: doc/classes/VisibilityNotifier2D.xml:43
msgid "Emitted when the VisibilityNotifier2D enters a [Viewport]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:49
+#: doc/classes/VisibilityNotifier2D.xml:50
msgid "Emitted when the VisibilityNotifier2D exits a [Viewport]'s view."
msgstr ""
@@ -54771,13 +55621,16 @@ msgid ""
"The VisibilityNotifier3D detects when it is visible on the screen. It also "
"notifies when its bounding rectangle enters or exits the screen or a "
"[Camera3D]'s view.\n"
+"If you want nodes to be disabled automatically when they exit the screen, "
+"use [VisibilityEnabler3D] instead.\n"
"[b]Note:[/b] VisibilityNotifier3D uses an approximate heuristic for "
"performance reasons. It doesn't take walls and other occlusion into account. "
-"If you need exact visibility checking, use another method such as adding an "
-"[Area3D] node as a child of a [Camera3D] node."
+"The heuristic is an implementation detail and may change in future versions. "
+"If you need precise visibility checking, use another method such as adding "
+"an [Area3D] node as a child of a [Camera3D] node and/or [method Vector3.dot]."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:17
+#: doc/classes/VisibilityNotifier3D.xml:18
msgid ""
"If [code]true[/code], the bounding box is on the screen.\n"
"[b]Note:[/b] It takes one frame for the node's visibility to be assessed "
@@ -54786,23 +55639,23 @@ msgid ""
"pass."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:24
+#: doc/classes/VisibilityNotifier3D.xml:25
msgid "The VisibilityNotifier3D's bounding box."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:32
+#: doc/classes/VisibilityNotifier3D.xml:33
msgid "Emitted when the VisibilityNotifier3D enters a [Camera3D]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:39
+#: doc/classes/VisibilityNotifier3D.xml:40
msgid "Emitted when the VisibilityNotifier3D exits a [Camera3D]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:44
+#: doc/classes/VisibilityNotifier3D.xml:45
msgid "Emitted when the VisibilityNotifier3D enters the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:49
+#: doc/classes/VisibilityNotifier3D.xml:50
msgid "Emitted when the VisibilityNotifier3D exits the screen."
msgstr ""
@@ -55222,6 +56075,12 @@ msgid ""
"exist."
msgstr ""
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:90
+msgid ""
+"Easing function, based on exponent. 0 is constant, 1 is linear, 0 to 1 is "
+"ease-in, 1+ is ease out. Negative values are in-out/out in."
+msgstr ""
+
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:93
msgid ""
"Return the number of digit places after the decimal that the first non-zero "
@@ -56107,6 +56966,7 @@ msgid "A shader for light calculations."
msgstr ""
#: doc/classes/VisualShader.xml:214
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:26
msgid "Represents the size of the [enum Type] enum."
msgstr ""
@@ -56209,6 +57069,24 @@ msgstr ""
msgid "Translated to [code]uniform bool[/code] in the shader language."
msgstr ""
+#: doc/classes/VisualShaderNodeBooleanUniform.xml:15
+#: doc/classes/VisualShaderNodeColorUniform.xml:15
+#: doc/classes/VisualShaderNodeFloatUniform.xml:15
+#: doc/classes/VisualShaderNodeIntUniform.xml:15
+#: doc/classes/VisualShaderNodeTransformUniform.xml:15
+#: doc/classes/VisualShaderNodeVec3Uniform.xml:15
+msgid "A default value to be assigned within the shader."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeBooleanUniform.xml:18
+#: doc/classes/VisualShaderNodeColorUniform.xml:18
+#: doc/classes/VisualShaderNodeFloatUniform.xml:18
+#: doc/classes/VisualShaderNodeIntUniform.xml:18
+#: doc/classes/VisualShaderNodeTransformUniform.xml:18
+#: doc/classes/VisualShaderNodeVec3Uniform.xml:18
+msgid "Enables usage of the [member default_value]."
+msgstr ""
+
#: doc/classes/VisualShaderNodeColorConstant.xml:4
msgid "A [Color] constant to be used within the visual shader graph."
msgstr ""
@@ -57059,49 +57937,49 @@ msgstr ""
msgid "Translated to [code]uniform float[/code] in the shader language."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:15
-#: doc/classes/VisualShaderNodeIntUniform.xml:15
+#: doc/classes/VisualShaderNodeFloatUniform.xml:21
+#: doc/classes/VisualShaderNodeIntUniform.xml:21
msgid ""
"A hint applied to the uniform, which controls the values it can take when "
"set through the inspector."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:18
-#: doc/classes/VisualShaderNodeIntUniform.xml:18
+#: doc/classes/VisualShaderNodeFloatUniform.xml:24
+#: doc/classes/VisualShaderNodeIntUniform.xml:24
msgid ""
"Minimum value for range hints. Used if [member hint] is set to [constant "
"HINT_RANGE] or [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:21
-#: doc/classes/VisualShaderNodeIntUniform.xml:21
+#: doc/classes/VisualShaderNodeFloatUniform.xml:27
+#: doc/classes/VisualShaderNodeIntUniform.xml:27
msgid ""
"Maximum value for range hints. Used if [member hint] is set to [constant "
"HINT_RANGE] or [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:24
-#: doc/classes/VisualShaderNodeIntUniform.xml:24
+#: doc/classes/VisualShaderNodeFloatUniform.xml:30
+#: doc/classes/VisualShaderNodeIntUniform.xml:30
msgid ""
"Step (increment) value for the range hint with step. Used if [member hint] "
"is set to [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:29
-#: doc/classes/VisualShaderNodeIntUniform.xml:29
+#: doc/classes/VisualShaderNodeFloatUniform.xml:35
+#: doc/classes/VisualShaderNodeIntUniform.xml:35
msgid "No hint used."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:32
-#: doc/classes/VisualShaderNodeIntUniform.xml:32
+#: doc/classes/VisualShaderNodeFloatUniform.xml:38
+#: doc/classes/VisualShaderNodeIntUniform.xml:38
msgid ""
"A range hint for scalar value, which limits possible input values between "
"[member min] and [member max]. Translated to [code]hint_range(min, max)[/"
"code] in shader code."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:35
-#: doc/classes/VisualShaderNodeIntUniform.xml:35
+#: doc/classes/VisualShaderNodeFloatUniform.xml:41
+#: doc/classes/VisualShaderNodeIntUniform.xml:41
msgid ""
"A range hint for scalar value with step, which limits possible input values "
"between [member min] and [member max], with a step (increment) of [member "
@@ -57385,6 +58263,26 @@ msgid ""
"results, e.g. division by zero)."
msgstr ""
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:4
+msgid "Performs a fused multiply-add operation within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:7
+msgid "Uses three operands to compute [code](a * b + c)[/code] expression."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:15
+msgid "A type of operands and returned value."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:20
+msgid "A scalar type."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:23
+msgid "A vector type."
+msgstr ""
+
#: doc/classes/VisualShaderNodeOuterProduct.xml:4
msgid ""
"Calculates an outer product of two vectors within the visual shader graph."
@@ -57407,7 +58305,7 @@ msgstr ""
#: doc/classes/VisualShaderNodeOutput.xml:7
msgid ""
"This visual shader node is present in all shader graphs in form of \"Output"
-"\" block with mutliple output value ports."
+"\" block with multiple output value ports."
msgstr ""
#: doc/classes/VisualShaderNodeSample3D.xml:4
@@ -57771,6 +58669,20 @@ msgid ""
"[ShaderMaterial] properties."
msgstr ""
+#: doc/classes/VisualShaderNodeUniformRef.xml:4
+msgid "A reference to an existing [VisualShaderNodeUniform]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniformRef.xml:7
+msgid ""
+"Creating a reference to a [VisualShaderNodeUniform] allows you to reuse this "
+"uniform in different shaders or shader stages easily."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniformRef.xml:15
+msgid "The name of the uniform which this reference points to."
+msgstr ""
+
#: doc/classes/VisualShaderNodeVec3Constant.xml:4
msgid "A [Vector3] constant to be used within the visual shader graph."
msgstr ""
@@ -58101,7 +59013,7 @@ msgstr ""
msgid ""
"Translated to [code]refract(I, N, eta)[/code] in the shader language, where "
"[code]I[/code] is the incident vector, [code]N[/code] is the normal vector "
-"and [code]eta[/code] is the ratio of the indicies of the refraction."
+"and [code]eta[/code] is the ratio of the indices of the refraction."
msgstr ""
#: doc/classes/VisualShaderNodeVectorScalarMix.xml:4
diff --git a/doc/translations/nl.po b/doc/translations/nl.po
index ee9f366b56..4f840c229c 100644
--- a/doc/translations/nl.po
+++ b/doc/translations/nl.po
@@ -4,12 +4,13 @@
# This file is distributed under the same license as the Godot source code.
#
# Stijn Hinlopen <f.a.hinlopen@gmail.com>, 2020.
+# marnicq van loon <marnicqvanloon@gmail.com>, 2020.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine class reference\n"
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
-"PO-Revision-Date: 2020-06-25 08:53+0000\n"
-"Last-Translator: Stijn Hinlopen <f.a.hinlopen@gmail.com>\n"
+"PO-Revision-Date: 2020-07-04 08:58+0000\n"
+"Last-Translator: marnicq van loon <marnicqvanloon@gmail.com>\n"
"Language-Team: Dutch <https://hosted.weblate.org/projects/godot-engine/godot-"
"class-reference/nl/>\n"
"Language: nl\n"
@@ -69,6 +70,9 @@ msgid ""
"utilities. Everything else is provided by objects. (Keywords: builtin, built "
"in, global functions.)"
msgstr ""
+"Lijst van kern ingebouwde GDScript functies. Wiskunde functies en andere "
+"hulpprogrammas. De rest is gegeven door objecten. (Keywords: ingebouwd, in "
+"gebouwd, globale functie.)"
#: modules/gdscript/doc_classes/@GDScript.xml:24
msgid ""
@@ -83,6 +87,16 @@ msgid ""
"red = Color8(255, 0, 0)\n"
"[/codeblock]"
msgstr ""
+"Geeft als resultaat een kleur die is opgebouwd uit gehele getallen rode, "
+"groene, blauwe en alfakanalen. Elk kanaal moet 8 bits informatie hebben, "
+"variërend van 0 tot 255.\n"
+"[code]r8[/code] rood kanaal\n"
+"[code]g8[/code] groen kanaal\n"
+"[code]b8[/code] blauw kanaal\n"
+"[code]a8[/code] alpha channel\n"
+"[codeblock]\n"
+"rood = Color8(255, 0, 0)\n"
+"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:42
msgid ""
@@ -93,16 +107,30 @@ msgid ""
"[/codeblock]\n"
"Supported color names are the same as the constants defined in [Color]."
msgstr ""
+"Geeft als resultaat een kleur volgens de gestandaardiseerde [code]naam[/"
+"code] met [code]alfa[/code] variërend van 0 tot 1.\n"
+"[codeblock]\n"
+"rood = ColorN(\"rood\", 1)\n"
+"[/codeblock]\n"
+"De ondersteunde kleurnamen zijn dezelfde als de constanten die in [Color] "
+"zijn gedefinieerd."
#: modules/gdscript/doc_classes/@GDScript.xml:55
+#, fuzzy
msgid ""
-"Returns the absolute value of parameter [code]s[/code] (i.e. unsigned value, "
-"works for integer and float).\n"
+"Returns the absolute value of parameter [code]s[/code] (i.e. positive "
+"value).\n"
"[codeblock]\n"
"# a is 1\n"
"a = abs(-1)\n"
"[/codeblock]"
msgstr ""
+"Geeft als resultaat de absolute waarde van de parameter [code]s[/code] (d.w."
+"z. ongetekende waarde, werkt voor integer en float).\n"
+"[codeblock]\n"
+"# a is 1\n"
+"a = abs(-1)\n"
+"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:68
msgid ""
@@ -152,7 +180,7 @@ msgid ""
"angle from an angle's tangent in trigonometry: [code]atan(tan(angle)) == "
"angle[/code].\n"
"The method cannot know in which quadrant the angle should fall. See [method "
-"atan2] if you always want an exact angle.\n"
+"atan2] if you have both [code]y[/code] and [code]x[/code].\n"
"[codeblock]\n"
"a = atan(0.5) # a is 0.463648\n"
"[/codeblock]"
@@ -163,12 +191,13 @@ msgid ""
"Returns the arc tangent of [code]y/x[/code] in radians. Use to get the angle "
"of tangent [code]y/x[/code]. To compute the value, the method takes into "
"account the sign of both arguments in order to determine the quadrant.\n"
+"Important note: The Y coordinate comes first, by convention.\n"
"[codeblock]\n"
"a = atan2(0, -1) # a is 3.141593\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:143
+#: modules/gdscript/doc_classes/@GDScript.xml:144
msgid ""
"Decodes a byte array back to a value. When [code]allow_objects[/code] is "
"[code]true[/code] decoding objects is allowed.\n"
@@ -177,7 +206,7 @@ msgid ""
"avoid potential security threats (remote code execution)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:155
+#: modules/gdscript/doc_classes/@GDScript.xml:156
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:145
msgid ""
"Converts a 2D point expressed in the cartesian coordinate system (X and Y "
@@ -185,17 +214,17 @@ msgid ""
"angle)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:164
+#: modules/gdscript/doc_classes/@GDScript.xml:165
msgid ""
-"Rounds [code]s[/code] upward, returning the smallest integral value that is "
-"not less than [code]s[/code].\n"
+"Rounds [code]s[/code] upward (towards positive infinity), returning the "
+"smallest whole number that is not less than [code]s[/code].\n"
"[codeblock]\n"
"i = ceil(1.45) # i is 2\n"
"i = ceil(1.001) # i is 2\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:177
+#: modules/gdscript/doc_classes/@GDScript.xml:178
msgid ""
"Returns a character as a String of the given Unicode code point (which is "
"compatible with ASCII code).\n"
@@ -207,7 +236,7 @@ msgid ""
"This is the inverse of [method ord]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:196
+#: modules/gdscript/doc_classes/@GDScript.xml:197
msgid ""
"Clamps [code]value[/code] and returns a value not less than [code]min[/code] "
"and not more than [code]max[/code].\n"
@@ -222,7 +251,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:216
+#: modules/gdscript/doc_classes/@GDScript.xml:217
msgid ""
"Converts from a type to another in the best way possible. The [code]type[/"
"code] parameter uses the [enum Variant.Type] values.\n"
@@ -236,7 +265,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:233
+#: modules/gdscript/doc_classes/@GDScript.xml:234
msgid ""
"Returns the cosine of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -246,7 +275,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:247
+#: modules/gdscript/doc_classes/@GDScript.xml:248
msgid ""
"Returns the hyperbolic cosine of [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -255,11 +284,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:260
+#: modules/gdscript/doc_classes/@GDScript.xml:261
msgid "Converts from decibels to linear energy (audio)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:273
+#: modules/gdscript/doc_classes/@GDScript.xml:274
msgid ""
"Returns the result of [code]value[/code] decreased by [code]step[/code] * "
"[code]amount[/code].\n"
@@ -269,42 +298,44 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:286
+#: modules/gdscript/doc_classes/@GDScript.xml:287
msgid ""
-"Returns degrees converted to radians.\n"
+"Converts an angle expressed in degrees to radians.\n"
"[codeblock]\n"
"# r is 3.141593\n"
"r = deg2rad(180)\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:299
+#: modules/gdscript/doc_classes/@GDScript.xml:300
msgid ""
"Converts a previously converted instance to a dictionary, back into an "
"instance. Useful for deserializing."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:310
-#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:90
+#: modules/gdscript/doc_classes/@GDScript.xml:311
msgid ""
-"Easing function, based on exponent. 0 is constant, 1 is linear, 0 to 1 is "
-"ease-in, 1+ is ease out. Negative values are in-out/out in."
+"Easing function, based on exponent. The curve values are: 0 is constant, 1 "
+"is linear, 0 to 1 is ease-in, 1+ is ease out. Negative values are in-out/out "
+"in."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:319
+#: modules/gdscript/doc_classes/@GDScript.xml:320
msgid ""
"The natural exponential function. It raises the mathematical constant [b]e[/"
"b] to the power of [code]s[/code] and returns it.\n"
-"[b]e[/b] has an approximate value of 2.71828.\n"
+"[b]e[/b] has an approximate value of 2.71828, and can be obtained with "
+"[code]exp(1)[/code].\n"
"For exponents to other bases use the method [method pow].\n"
"[codeblock]\n"
"a = exp(2) # Approximately 7.39\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:333
+#: modules/gdscript/doc_classes/@GDScript.xml:334
msgid ""
-"Rounds [code]s[/code] to the closest smaller integer and returns it.\n"
+"Rounds [code]s[/code] downward (towards negative infinity), returning the "
+"largest whole number that is not more than [code]s[/code].\n"
"[codeblock]\n"
"# a is 2.0\n"
"a = floor(2.99)\n"
@@ -315,7 +346,7 @@ msgid ""
"use [code]int(s)[/code] directly."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:351
+#: modules/gdscript/doc_classes/@GDScript.xml:352
msgid ""
"Returns the floating-point remainder of [code]a/b[/code], keeping the sign "
"of [code]a[/code].\n"
@@ -326,7 +357,7 @@ msgid ""
"For the integer remainder operation, use the % operator."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:367
+#: modules/gdscript/doc_classes/@GDScript.xml:368
msgid ""
"Returns the floating-point modulus of [code]a/b[/code] that wraps equally in "
"positive and negative.\n"
@@ -352,7 +383,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:398
+#: modules/gdscript/doc_classes/@GDScript.xml:399
msgid ""
"Returns a reference to the specified function [code]funcname[/code] in the "
"[code]instance[/code] node. As functions aren't first-class objects in "
@@ -367,7 +398,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:412
+#: modules/gdscript/doc_classes/@GDScript.xml:413
msgid ""
"Returns an array of dictionaries representing the current call stack.\n"
"[codeblock]\n"
@@ -387,7 +418,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:435
+#: modules/gdscript/doc_classes/@GDScript.xml:436
msgid ""
"Returns the integer hash of the variable passed.\n"
"[codeblock]\n"
@@ -395,7 +426,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:447
+#: modules/gdscript/doc_classes/@GDScript.xml:448
msgid ""
"Returns the passed instance converted to a dictionary (useful for "
"serializing).\n"
@@ -413,7 +444,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:468
+#: modules/gdscript/doc_classes/@GDScript.xml:469
msgid ""
"Returns the Object that corresponds to [code]instance_id[/code]. All Objects "
"have a unique instance ID.\n"
@@ -426,7 +457,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:488
+#: modules/gdscript/doc_classes/@GDScript.xml:489
msgid ""
"Returns a normalized value considering the given range. This is the opposite "
"of [method lerp].\n"
@@ -440,33 +471,41 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:506
+#: modules/gdscript/doc_classes/@GDScript.xml:507
msgid ""
"Returns [code]true[/code] if [code]a[/code] and [code]b[/code] are "
-"approximately equal to each other."
+"approximately equal to each other.\n"
+"Here, approximately equal means that [code]a[/code] and [code]b[/code] are "
+"within a small internal epsilon of each other, which scales with the "
+"magnitude of the numbers.\n"
+"Infinity values of the same sign are considered equal."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:515
+#: modules/gdscript/doc_classes/@GDScript.xml:518
msgid ""
"Returns whether [code]s[/code] is an infinity value (either positive "
"infinity or negative infinity)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:524
+#: modules/gdscript/doc_classes/@GDScript.xml:527
msgid ""
"Returns whether [code]instance[/code] is a valid object (e.g. has not been "
"deleted from memory)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:533
-msgid "Returns whether [code]s[/code] is a NaN (Not-A-Number) value."
+#: modules/gdscript/doc_classes/@GDScript.xml:536
+msgid ""
+"Returns whether [code]s[/code] is a NaN (\"Not a Number\" or invalid) value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:542
-msgid "Returns [code]true[/code] if [code]s[/code] is zero or almost zero."
+#: modules/gdscript/doc_classes/@GDScript.xml:545
+msgid ""
+"Returns [code]true[/code] if [code]s[/code] is zero or almost zero.\n"
+"This method is faster than using [method is_equal_approx] with one value as "
+"zero."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:551
+#: modules/gdscript/doc_classes/@GDScript.xml:555
msgid ""
"Returns length of Variant [code]var[/code]. Length is the character count of "
"String, element count of Array, size of Dictionary, etc.\n"
@@ -477,7 +516,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:569
+#: modules/gdscript/doc_classes/@GDScript.xml:573
msgid ""
"Linearly interpolates between two values by a normalized value. This is the "
"opposite of [method inverse_lerp].\n"
@@ -492,7 +531,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:588
+#: modules/gdscript/doc_classes/@GDScript.xml:592
msgid ""
"Linearly interpolates between two angles (in radians) by a normalized "
"value.\n"
@@ -509,7 +548,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:607
+#: modules/gdscript/doc_classes/@GDScript.xml:611
msgid ""
"Converts from linear energy to decibels (audio). This can be used to "
"implement volume sliders that behave as expected (since volume isn't "
@@ -525,20 +564,28 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:622
+#: modules/gdscript/doc_classes/@GDScript.xml:626
msgid ""
-"Loads a resource from the filesystem located at [code]path[/code].\n"
+"Loads a resource from the filesystem located at [code]path[/code]. The "
+"resource is loaded on the method call (unless it's referenced already "
+"elsewhere, e.g. in another script or in the scene), which might cause slight "
+"delay, especially when loading scenes. To avoid unnecessary delays when "
+"loading something multiple times, either store the resource in a variable or "
+"use [method preload].\n"
"[b]Note:[/b] Resource paths can be obtained by right-clicking on a resource "
-"in the FileSystem dock and choosing [b]Copy Path[/b].\n"
+"in the FileSystem dock and choosing \"Copy Path\" or by dragging the file "
+"from the FileSystem dock into the script.\n"
"[codeblock]\n"
-"# Load a scene called main located in the root of the project directory.\n"
-"var main = load(\"res://main.tscn\")\n"
+"# Load a scene called main located in the root of the project directory and "
+"cache it in a variable.\n"
+"var main = load(\"res://main.tscn\") # main will contain a PackedScene "
+"resource.\n"
"[/codeblock]\n"
"[b]Important:[/b] The path must be absolute, a local path will just return "
"[code]null[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:637
+#: modules/gdscript/doc_classes/@GDScript.xml:641
msgid ""
"Natural logarithm. The amount of time needed to reach a certain level of "
"continuous growth.\n"
@@ -546,10 +593,12 @@ msgid ""
"calculators, which uses a base 10 logarithm.\n"
"[codeblock]\n"
"log(10) # Returns 2.302585\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] The logarithm of [code]0[/code] returns [code]-inf[/code], "
+"while negative values return [code]-nan[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:652
+#: modules/gdscript/doc_classes/@GDScript.xml:657
msgid ""
"Returns the maximum of two values.\n"
"[codeblock]\n"
@@ -558,7 +607,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:667
+#: modules/gdscript/doc_classes/@GDScript.xml:672
msgid ""
"Returns the minimum of two values.\n"
"[codeblock]\n"
@@ -567,27 +616,39 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:684
+#: modules/gdscript/doc_classes/@GDScript.xml:689
msgid ""
"Moves [code]from[/code] toward [code]to[/code] by the [code]delta[/code] "
"value.\n"
"Use a negative [code]delta[/code] value to move away.\n"
"[codeblock]\n"
+"move_toward(5, 10, 4) # Returns 9\n"
"move_toward(10, 5, 4) # Returns 6\n"
+"move_toward(10, 5, -1.5) # Returns 11.5\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:697
+#: modules/gdscript/doc_classes/@GDScript.xml:704
msgid ""
-"Returns the nearest larger power of 2 for integer [code]value[/code].\n"
+"Returns the nearest equal or larger power of 2 for integer [code]value[/"
+"code].\n"
+"In other words, returns the smallest value [code]a[/code] where [code]a = "
+"pow(2, n)[/code] such that [code]value <= a[/code] for some non-negative "
+"integer [code]n[/code].\n"
"[codeblock]\n"
"nearest_po2(3) # Returns 4\n"
"nearest_po2(4) # Returns 4\n"
"nearest_po2(5) # Returns 8\n"
-"[/codeblock]"
+"\n"
+"nearest_po2(0) # Returns 0 (this may not be what you expect)\n"
+"nearest_po2(-1) # Returns 0 (this may not be what you expect)\n"
+"[/codeblock]\n"
+"[b]WARNING:[/b] Due to the way it is implemented, this function returns "
+"[code]0[/code] rather than [code]1[/code] for non-positive values of "
+"[code]value[/code] (in reality, 1 is the smallest integer power of 2)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:711
+#: modules/gdscript/doc_classes/@GDScript.xml:723
msgid ""
"Returns an integer representing the Unicode code point of the given Unicode "
"character [code]char[/code].\n"
@@ -599,27 +660,28 @@ msgid ""
"This is the inverse of [method char]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:726
+#: modules/gdscript/doc_classes/@GDScript.xml:738
msgid ""
-"Parse JSON text to a Variant (use [method typeof] to check if it is what you "
-"expect).\n"
-"Be aware that the JSON specification does not define integer or float types, "
-"but only a number type. Therefore, parsing a JSON text will convert all "
-"numerical values to [float] types.\n"
-"Note that JSON objects do not preserve key order like Godot dictionaries, "
-"thus you should not rely on keys being in a certain order if a dictionary is "
-"constructed from JSON. In contrast, JSON arrays retain the order of their "
+"Parse JSON text to a Variant. (Use [method typeof] to check if the Variant's "
+"type is what you expect.)\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, parsing a JSON text will convert "
+"all numerical values to [float] types.\n"
+"[b]Note:[/b] JSON objects do not preserve key order like Godot dictionaries, "
+"thus, you should not rely on keys being in a certain order if a dictionary "
+"is constructed from JSON. In contrast, JSON arrays retain the order of their "
"elements:\n"
"[codeblock]\n"
-"p = parse_json('[\"a\", \"b\", \"c\"]')\n"
-"if typeof(p) == TYPE_ARRAY:\n"
-" print(p[0]) # Prints a\n"
+"var p = JSON.parse('[\"hello\", \"world\", \"!\"]')\n"
+"if typeof(p.result) == TYPE_ARRAY:\n"
+" print(p.result[0]) # Prints \"hello\"\n"
"else:\n"
-" print(\"unexpected results\")\n"
-"[/codeblock]"
+" push_error(\"Unexpected results.\")\n"
+"[/codeblock]\n"
+"See also [JSON] for an alternative way to parse JSON text."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:746
+#: modules/gdscript/doc_classes/@GDScript.xml:759
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:142
msgid ""
"Converts a 2D point expressed in the polar coordinate system (a distance "
@@ -627,7 +689,7 @@ msgid ""
"cartesian coordinate system (X and Y axis)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:757
+#: modules/gdscript/doc_classes/@GDScript.xml:770
msgid ""
"Returns the integer modulus of [code]a/b[/code] that wraps equally in "
"positive and negative.\n"
@@ -653,7 +715,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:788
+#: modules/gdscript/doc_classes/@GDScript.xml:801
msgid ""
"Returns the result of [code]x[/code] raised to the power of [code]y[/code].\n"
"[codeblock]\n"
@@ -661,19 +723,23 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:800
+#: modules/gdscript/doc_classes/@GDScript.xml:813
msgid ""
-"Returns a resource from the filesystem that is loaded during script "
-"parsing.\n"
+"Returns a [Resource] from the filesystem located at [code]path[/code]. The "
+"resource is loaded during script parsing, i.e. is loaded with the script and "
+"[method preload] effectively acts as a reference to that resource. Note that "
+"the method requires a constant path. If you want to load a resource from a "
+"dynamic/variable path, use [method load].\n"
"[b]Note:[/b] Resource paths can be obtained by right clicking on a resource "
-"in the Assets Panel and choosing \"Copy Path\".\n"
+"in the Assets Panel and choosing \"Copy Path\" or by dragging the file from "
+"the FileSystem dock into the script.\n"
"[codeblock]\n"
-"# Load a scene called main located in the root of the project directory.\n"
-"var main = preload(\"res://main.tscn\")\n"
+"# Instance a scene.\n"
+"var diamond = preload(\"res://diamond.tscn\").instance()\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:812
+#: modules/gdscript/doc_classes/@GDScript.xml:825
msgid ""
"Converts one or more arguments to strings in the best way possible and "
"prints them to the console.\n"
@@ -683,11 +749,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:823
+#: modules/gdscript/doc_classes/@GDScript.xml:836
msgid "Like [method print], but prints only when used in debug mode."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:830
+#: modules/gdscript/doc_classes/@GDScript.xml:843
msgid ""
"Prints a stack track at code location, only works when running with debugger "
"turned on.\n"
@@ -697,7 +763,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:841
+#: modules/gdscript/doc_classes/@GDScript.xml:854
msgid ""
"Prints one or more arguments to strings in the best way possible to standard "
"error line.\n"
@@ -706,7 +772,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:851
+#: modules/gdscript/doc_classes/@GDScript.xml:864
msgid ""
"Prints one or more arguments to strings in the best way possible to console. "
"No newline is added at the end.\n"
@@ -720,7 +786,7 @@ msgid ""
"method, such as [method print]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:864
+#: modules/gdscript/doc_classes/@GDScript.xml:877
msgid ""
"Prints one or more arguments to the console with a space between each "
"argument.\n"
@@ -729,7 +795,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:874
+#: modules/gdscript/doc_classes/@GDScript.xml:887
msgid ""
"Prints one or more arguments to the console with a tab between each "
"argument.\n"
@@ -738,7 +804,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:886
+#: modules/gdscript/doc_classes/@GDScript.xml:899
msgid ""
"Pushes an error message to Godot's built-in debugger and to the OS "
"terminal.\n"
@@ -748,7 +814,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:898
+#: modules/gdscript/doc_classes/@GDScript.xml:911
msgid ""
"Pushes a warning message to Godot's built-in debugger and to the OS "
"terminal.\n"
@@ -758,15 +824,15 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:910
+#: modules/gdscript/doc_classes/@GDScript.xml:923
msgid ""
-"Converts from radians to degrees.\n"
+"Converts an angle expressed in radians to degrees.\n"
"[codeblock]\n"
"rad2deg(0.523599) # Returns 30\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:924
+#: modules/gdscript/doc_classes/@GDScript.xml:937
msgid ""
"Random range, any floating point value between [code]from[/code] and "
"[code]to[/code].\n"
@@ -775,7 +841,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:936
+#: modules/gdscript/doc_classes/@GDScript.xml:949
msgid ""
"Random from seed: pass a [code]seed[/code], and an array with both number "
"and new seed is returned. \"Seed\" here refers to the internal state of the "
@@ -783,7 +849,7 @@ msgid ""
"implementation is 64 bits."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:943
+#: modules/gdscript/doc_classes/@GDScript.xml:956
msgid ""
"Returns a random floating point value on the interval [code][0, 1][/code].\n"
"[codeblock]\n"
@@ -791,7 +857,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:953
+#: modules/gdscript/doc_classes/@GDScript.xml:966
msgid ""
"Returns a random unsigned 32 bit integer. Use remainder to obtain a random "
"value in the interval [code][0, N - 1][/code] (where N is smaller than "
@@ -804,7 +870,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:966
+#: modules/gdscript/doc_classes/@GDScript.xml:979
msgid ""
"Randomizes the seed (or the internal state) of the random number generator. "
"Current implementation reseeds using a number based on time.\n"
@@ -814,7 +880,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:977
+#: modules/gdscript/doc_classes/@GDScript.xml:990
msgid ""
"Returns an array with the given range. Range can be 1 argument N (0 to N-1), "
"two arguments (initial, final-1) or three arguments (initial, final-1, "
@@ -844,7 +910,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1017
+#: modules/gdscript/doc_classes/@GDScript.xml:1030
msgid ""
"Maps a [code]value[/code] from range [code][istart, istop][/code] to [code]"
"[ostart, ostop][/code].\n"
@@ -853,16 +919,16 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1029
+#: modules/gdscript/doc_classes/@GDScript.xml:1042
msgid ""
-"Returns the integral value that is nearest to [code]s[/code], with halfway "
-"cases rounded away from zero.\n"
+"Rounds [code]s[/code] to the nearest whole number, with halfway cases "
+"rounded away from zero.\n"
"[codeblock]\n"
"round(2.6) # Returns 3\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1041
+#: modules/gdscript/doc_classes/@GDScript.xml:1054
msgid ""
"Sets seed for the random number generator.\n"
"[codeblock]\n"
@@ -871,7 +937,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1054
+#: modules/gdscript/doc_classes/@GDScript.xml:1067
msgid ""
"Returns the sign of [code]s[/code]: -1 or 1. Returns 0 if [code]s[/code] is "
"0.\n"
@@ -882,7 +948,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1068
+#: modules/gdscript/doc_classes/@GDScript.xml:1081
msgid ""
"Returns the sine of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -890,7 +956,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1080
+#: modules/gdscript/doc_classes/@GDScript.xml:1093
msgid ""
"Returns the hyperbolic sine of [code]s[/code].\n"
"[codeblock]\n"
@@ -899,27 +965,37 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1097
+#: modules/gdscript/doc_classes/@GDScript.xml:1110
msgid ""
-"Returns a number smoothly interpolated between the [code]from[/code] and "
-"[code]to[/code], based on the [code]weight[/code]. Similar to [method lerp], "
-"but interpolates faster at the beginning and slower at the end.\n"
+"Returns the result of smoothly interpolating the value of [code]s[/code] "
+"between [code]0[/code] and [code]1[/code], based on the where [code]s[/code] "
+"lies with respect to the edges [code]from[/code] and [code]to[/code].\n"
+"The return value is [code]0[/code] if [code]s <= from[/code], and [code]1[/"
+"code] if [code]s >= to[/code]. If [code]s[/code] lies between [code]from[/"
+"code] and [code]to[/code], the returned value follows an S-shaped curve that "
+"maps [code]s[/code] between [code]0[/code] and [code]1[/code].\n"
+"This S-shaped curve is the cubic Hermite interpolator, given by [code]f(s) = "
+"3*s^2 - 2*s^3[/code].\n"
"[codeblock]\n"
-"smoothstep(0, 2, 0.5) # Returns 0.15\n"
+"smoothstep(0, 2, -5.0) # Returns 0.0\n"
+"smoothstep(0, 2, 0.5) # Returns 0.15625\n"
"smoothstep(0, 2, 1.0) # Returns 0.5\n"
"smoothstep(0, 2, 2.0) # Returns 1.0\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1111
+#: modules/gdscript/doc_classes/@GDScript.xml:1127
msgid ""
-"Returns the square root of [code]s[/code].\n"
+"Returns the square root of [code]s[/code], where [code]s[/code] is a non-"
+"negative number.\n"
"[codeblock]\n"
"sqrt(9) # Returns 3\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b]Negative values of [code]s[/code] return NaN. If you need "
+"negative inputs, use [code]System.Numerics.Complex[/code] in C#."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1123
+#: modules/gdscript/doc_classes/@GDScript.xml:1140
msgid ""
"Returns the position of the first non-zero digit, after the decimal point. "
"Note that the maximum return value is 10, which is a design decision in the "
@@ -934,7 +1010,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1142
+#: modules/gdscript/doc_classes/@GDScript.xml:1159
msgid ""
"Snaps float value [code]s[/code] to a given [code]step[/code]. This can also "
"be used to round a floating point number to an arbitrary number of "
@@ -945,7 +1021,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1153
+#: modules/gdscript/doc_classes/@GDScript.xml:1170
msgid ""
"Converts one or more arguments to string in the best way possible.\n"
"[codeblock]\n"
@@ -956,7 +1032,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1168
+#: modules/gdscript/doc_classes/@GDScript.xml:1185
msgid ""
"Converts a formatted string that was returned by [method var2str] to the "
"original value.\n"
@@ -967,7 +1043,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1182
+#: modules/gdscript/doc_classes/@GDScript.xml:1199
msgid ""
"Returns the tangent of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -975,7 +1051,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1194
+#: modules/gdscript/doc_classes/@GDScript.xml:1211
msgid ""
"Returns the hyperbolic tangent of [code]s[/code].\n"
"[codeblock]\n"
@@ -984,18 +1060,25 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1207
+#: modules/gdscript/doc_classes/@GDScript.xml:1224
msgid ""
-"Converts a Variant [code]var[/code] to JSON text and return the result. "
+"Converts a [Variant] [code]var[/code] to JSON text and return the result. "
"Useful for serializing data to store or send over the network.\n"
"[codeblock]\n"
+"# Both numbers below are integers.\n"
"a = { \"a\": 1, \"b\": 2 }\n"
"b = to_json(a)\n"
"print(b) # {\"a\":1, \"b\":2}\n"
-"[/codeblock]"
+"# Both numbers above are floats, even if they display without any decimal "
+"places.\n"
+"[/codeblock]\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, converting a [Variant] to JSON "
+"text will convert all numerical values to [float] types.\n"
+"See also [JSON] for an alternative way to convert a [Variant] to JSON text."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1221
+#: modules/gdscript/doc_classes/@GDScript.xml:1242
msgid ""
"Returns whether the given class exists in [ClassDB].\n"
"[codeblock]\n"
@@ -1004,7 +1087,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1234
+#: modules/gdscript/doc_classes/@GDScript.xml:1255
msgid ""
"Returns the internal type of the given Variant object, using the [enum "
"Variant.Type] values.\n"
@@ -1017,7 +1100,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1250
+#: modules/gdscript/doc_classes/@GDScript.xml:1271
msgid ""
"Checks that [code]json[/code] is valid JSON data. Returns an empty string if "
"valid, or an error message otherwise.\n"
@@ -1025,20 +1108,20 @@ msgid ""
"j = to_json([1, 2, 3])\n"
"v = validate_json(j)\n"
"if not v:\n"
-" print(\"valid\")\n"
+" print(\"Valid JSON.\")\n"
"else:\n"
-" prints(\"invalid\", v)\n"
+" push_error(\"Invalid JSON: \" + v)\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1269
+#: modules/gdscript/doc_classes/@GDScript.xml:1290
msgid ""
"Encodes a variable value to a byte array. When [code]full_objects[/code] is "
"[code]true[/code] encoding objects is allowed (and can potentially include "
"code)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1278
+#: modules/gdscript/doc_classes/@GDScript.xml:1299
msgid ""
"Converts a Variant [code]var[/code] to a formatted string that can later be "
"parsed using [method str2var].\n"
@@ -1055,7 +1138,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1298
+#: modules/gdscript/doc_classes/@GDScript.xml:1319
msgid ""
"Returns a weak reference to an object.\n"
"A weak reference to an object is not enough to keep the object alive: when "
@@ -1065,135 +1148,67 @@ msgid ""
"reference may return the object even if there are no strong references to it."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1312
+#: modules/gdscript/doc_classes/@GDScript.xml:1333
msgid ""
"Wraps float [code]value[/code] between [code]min[/code] and [code]max[/"
"code].\n"
"Usable for creating loop-alike behavior or infinite surfaces.\n"
"[codeblock]\n"
-"# a is 0.5\n"
-"a = wrapf(10.5, 0.0, 10.0)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# a is 9.5\n"
-"a = wrapf(-0.5, 0.0, 10.0)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# Infinite loop between 0.0 and 0.99\n"
-"f = wrapf(f + 0.1, 0.0, 1.0)\n"
+"# Infinite loop between 5.0 and 9.9\n"
+"value = wrapf(value + 0.1, 5.0, 10.0)\n"
"[/codeblock]\n"
"[codeblock]\n"
"# Infinite rotation (in radians)\n"
"angle = wrapf(angle + 0.1, 0.0, TAU)\n"
"[/codeblock]\n"
-"[b]Note:[/b] If you just want to wrap between 0.0 and [code]n[/code] (where "
-"[code]n[/code] is a positive floating-point value), it is better for "
-"performance to use the [method fmod] method like [code]fmod(number, n)[/"
-"code].\n"
-"[code]wrapf[/code] is more flexible than using the [method fmod] approach by "
-"giving the user a simple control over the minimum value. It also fully "
-"supports negative numbers, e.g.\n"
"[codeblock]\n"
"# Infinite rotation (in radians)\n"
"angle = wrapf(angle + 0.1, -PI, PI)\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] If [code]min[/code] is [code]0[/code], this is equivalent to "
+"[method fposmod], so prefer using that instead.\n"
+"[code]wrapf[/code] is more flexible than using the [method fposmod] approach "
+"by giving the user control over the minimum value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1348
+#: modules/gdscript/doc_classes/@GDScript.xml:1361
msgid ""
"Wraps integer [code]value[/code] between [code]min[/code] and [code]max[/"
"code].\n"
"Usable for creating loop-alike behavior or infinite surfaces.\n"
"[codeblock]\n"
-"# a is 0\n"
-"a = wrapi(10, 0, 10)\n"
+"# Infinite loop between 5 and 9\n"
+"frame = wrapi(frame + 1, 5, 10)\n"
"[/codeblock]\n"
"[codeblock]\n"
-"# a is 9\n"
-"a = wrapi(-1, 0, 10)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# Infinite loop between 0 and 9\n"
-"frame = wrapi(frame + 1, 0, 10)\n"
-"[/codeblock]\n"
-"[b]Note:[/b] If you just want to wrap between 0 and [code]n[/code] (where "
-"[code]n[/code] is a positive integer value), it is better for performance to "
-"use the modulo operator like [code]number % n[/code].\n"
-"[code]wrapi[/code] is more flexible than using the modulo approach by giving "
-"the user a simple control over the minimum value. It also fully supports "
-"negative numbers, e.g.\n"
-"[codeblock]\n"
"# result is -2\n"
"var result = wrapi(-6, -5, -1)\n"
-"[/codeblock]"
-msgstr ""
-
-#: modules/gdscript/doc_classes/@GDScript.xml:1378
-msgid ""
-"Stops the function execution and returns the current suspended state to the "
-"calling function.\n"
-"From the caller, call [method GDScriptFunctionState.resume] on the state to "
-"resume execution. This invalidates the state. Within the resumed function, "
-"[code]yield()[/code] returns whatever was passed to the [code]resume()[/"
-"code] function call.\n"
-"If passed an object and a signal, the execution is resumed when the object "
-"emits the given signal. In this case, [code]yield()[/code] returns the "
-"argument passed to [code]emit_signal()[/code] if the signal takes only one "
-"argument, or an array containing all the arguments passed to "
-"[code]emit_signal()[/code] if the signal takes multiple arguments.\n"
-"You can also use [code]yield[/code] to wait for a function to finish:\n"
-"[codeblock]\n"
-"func _ready():\n"
-" yield(countdown(), \"completed\") # waiting for the countdown() function "
-"to complete\n"
-" print('Ready')\n"
-"\n"
-"func countdown():\n"
-" yield(get_tree(), \"idle_frame\") # returns a GDScriptFunctionState "
-"object to _ready()\n"
-" print(3)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-" print(2)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-" print(1)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-"\n"
-"# prints:\n"
-"# 3\n"
-"# 2\n"
-"# 1\n"
-"# Ready\n"
"[/codeblock]\n"
-"When yielding on a function, the [code]completed[/code] signal will be "
-"emitted automatically when the function returns. It can, therefore, be used "
-"as the [code]signal[/code] parameter of the [code]yield[/code] method to "
-"resume.\n"
-"In order to yield on a function, the resulting function should also return a "
-"[code]GDScriptFunctionState[/code]. Notice [code]yield(get_tree(), "
-"\"idle_frame\")[/code] from the above example."
+"[b]Note:[/b] If [code]min[/code] is [code]0[/code], this is equivalent to "
+"[method posmod], so prefer using that instead.\n"
+"[code]wrapi[/code] is more flexible than using the [method posmod] approach "
+"by giving the user control over the minimum value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1409
+#: modules/gdscript/doc_classes/@GDScript.xml:1378
msgid ""
"Constant that represents how many times the diameter of a circle fits around "
-"its perimeter."
+"its perimeter. This is equivalent to [code]TAU / 2[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1412
-msgid "The circle constant, the circumference of the unit circle."
+#: modules/gdscript/doc_classes/@GDScript.xml:1381
+msgid "The circle constant, the circumference of the unit circle in radians."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1415
-msgid "A positive infinity. (For negative infinity, use -INF)."
+#: modules/gdscript/doc_classes/@GDScript.xml:1384
+msgid "Positive infinity. For negative infinity, use -INF."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1418
+#: modules/gdscript/doc_classes/@GDScript.xml:1387
msgid ""
-"Macro constant that expands to an expression of type float that represents a "
-"NaN.\n"
-"The NaN values are used to identify undefined or non-representable values "
-"for floating-point elements, such as the square root of negative numbers or "
-"the result of 0/0."
+"\"Not a Number\", an invalid value. [code]NaN[/code] has special properties, "
+"including that it is not equal to itself. It is output by some invalid "
+"operations, such as dividing zero by zero."
msgstr ""
#: doc/classes/@GlobalScope.xml:4
@@ -3429,130 +3444,141 @@ msgid ""
msgstr ""
#: doc/classes/AABB.xml:10 doc/classes/Plane.xml:10 doc/classes/Rect2.xml:11
-#: doc/classes/Rect2i.xml:11 doc/classes/Transform.xml:10
+#: doc/classes/Rect2i.xml:11 doc/classes/Transform.xml:11
#: doc/classes/Vector2.xml:12 doc/classes/Vector2i.xml:12
#: doc/classes/Vector3.xml:12 doc/classes/Vector3i.xml:12
msgid "https://docs.godotengine.org/en/latest/tutorials/math/index.html"
msgstr ""
#: doc/classes/AABB.xml:21
-msgid "Optional constructor, accepts position and size."
+msgid "Constructs an [AABB] from a position and size."
msgstr ""
-#: doc/classes/AABB.xml:30
+#: doc/classes/AABB.xml:28
+msgid ""
+"Returns an AABB with equivalent position and size, modified so that the most-"
+"negative corner is the origin and the size is positive."
+msgstr ""
+
+#: doc/classes/AABB.xml:37
msgid ""
"Returns [code]true[/code] if this [AABB] completely encloses another one."
msgstr ""
-#: doc/classes/AABB.xml:39
+#: doc/classes/AABB.xml:46
msgid "Returns this [AABB] expanded to include a given point."
msgstr ""
-#: doc/classes/AABB.xml:46
+#: doc/classes/AABB.xml:53
msgid "Returns the volume of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:55
+#: doc/classes/AABB.xml:62
msgid "Gets the position of the 8 endpoints of the [AABB] in space."
msgstr ""
-#: doc/classes/AABB.xml:62
+#: doc/classes/AABB.xml:69
msgid "Returns the normalized longest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:69
+#: doc/classes/AABB.xml:76
msgid ""
"Returns the index of the longest axis of the [AABB] (according to "
"[Vector3]'s [code]AXIS_*[/code] constants)."
msgstr ""
-#: doc/classes/AABB.xml:76
+#: doc/classes/AABB.xml:83
msgid "Returns the scalar length of the longest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:83
+#: doc/classes/AABB.xml:90
msgid "Returns the normalized shortest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:90
+#: doc/classes/AABB.xml:97
msgid ""
"Returns the index of the shortest axis of the [AABB] (according to "
"[Vector3]::AXIS* enum)."
msgstr ""
-#: doc/classes/AABB.xml:97
+#: doc/classes/AABB.xml:104
msgid "Returns the scalar length of the shortest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:106
+#: doc/classes/AABB.xml:113
msgid ""
"Returns the support point in a given direction. This is useful for collision "
"detection algorithms."
msgstr ""
-#: doc/classes/AABB.xml:115
+#: doc/classes/AABB.xml:122
msgid ""
"Returns a copy of the [AABB] grown a given amount of units towards all the "
"sides."
msgstr ""
-#: doc/classes/AABB.xml:122
+#: doc/classes/AABB.xml:129
msgid "Returns [code]true[/code] if the [AABB] is flat or empty."
msgstr ""
-#: doc/classes/AABB.xml:129
+#: doc/classes/AABB.xml:136
msgid "Returns [code]true[/code] if the [AABB] is empty."
msgstr ""
-#: doc/classes/AABB.xml:138
+#: doc/classes/AABB.xml:145
msgid "Returns [code]true[/code] if the [AABB] contains a point."
msgstr ""
-#: doc/classes/AABB.xml:147
+#: doc/classes/AABB.xml:154
msgid ""
"Returns the intersection between two [AABB]. An empty AABB (size 0,0,0) is "
"returned on failure."
msgstr ""
-#: doc/classes/AABB.xml:156
+#: doc/classes/AABB.xml:163
msgid "Returns [code]true[/code] if the [AABB] overlaps with another."
msgstr ""
-#: doc/classes/AABB.xml:165
+#: doc/classes/AABB.xml:172
msgid "Returns [code]true[/code] if the [AABB] is on both sides of a plane."
msgstr ""
-#: doc/classes/AABB.xml:176
+#: doc/classes/AABB.xml:183
msgid ""
"Returns [code]true[/code] if the [AABB] intersects the line segment between "
"[code]from[/code] and [code]to[/code]."
msgstr ""
-#: doc/classes/AABB.xml:185
+#: doc/classes/AABB.xml:192
msgid ""
"Returns [code]true[/code] if this [AABB] and [code]aabb[/code] are "
"approximately equal, by calling [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/AABB.xml:194
+#: doc/classes/AABB.xml:201
msgid ""
"Returns a larger [AABB] that contains both this [AABB] and [code]with[/code]."
msgstr ""
-#: doc/classes/AABB.xml:200
+#: doc/classes/AABB.xml:207 doc/classes/Rect2.xml:174
+#: doc/classes/Rect2i.xml:163
msgid ""
-"Ending corner. This is calculated as [code]position + size[/code]. Changing "
-"this property changes [member size] accordingly."
+"Ending corner. This is calculated as [code]position + size[/code]. Setting "
+"this value will change the size."
msgstr ""
-#: doc/classes/AABB.xml:203
-msgid "Beginning corner."
+#: doc/classes/AABB.xml:210 doc/classes/Rect2.xml:177
+#: doc/classes/Rect2i.xml:166
+msgid "Beginning corner. Typically has values lower than [member end]."
msgstr ""
-#: doc/classes/AABB.xml:206 doc/classes/Rect2.xml:180
+#: doc/classes/AABB.xml:213 doc/classes/Rect2.xml:180
#: doc/classes/Rect2i.xml:169
-msgid "Size from position to end."
+msgid ""
+"Size from [member position] to [member end]. Typically all components are "
+"positive.\n"
+"If the size is negative, you can use [method abs] to fix it."
msgstr ""
#: doc/classes/AcceptDialog.xml:4
@@ -3616,11 +3642,11 @@ msgstr ""
msgid "The text displayed by the dialog."
msgstr ""
-#: doc/classes/AcceptDialog.xml:82
+#: doc/classes/AcceptDialog.xml:83
msgid "Emitted when the dialog is accepted, i.e. the OK button is pressed."
msgstr ""
-#: doc/classes/AcceptDialog.xml:89
+#: doc/classes/AcceptDialog.xml:90
msgid "Emitted when a custom button is pressed. See [method add_button]."
msgstr ""
@@ -3673,7 +3699,7 @@ msgstr ""
#: doc/classes/AESContext.xml:54
msgid ""
"Get the current IV state for this context (IV gets updated when calling "
-"[method update]). You normally don't need this funciton.\n"
+"[method update]). You normally don't need this function.\n"
"Note: This function only makes sense when the context is started with "
"[constant MODE_CBC_ENCRYPT] or [constant MODE_CBC_DECRYPT]."
msgstr ""
@@ -3751,12 +3777,14 @@ msgid "If [code]true[/code], texture will be centered."
msgstr ""
#: doc/classes/AnimatedSprite2D.xml:46 doc/classes/Sprite2D.xml:41
-#: doc/classes/SpriteBase3D.xml:61 doc/classes/TextureRect.xml:18
+#: doc/classes/SpriteBase3D.xml:61 doc/classes/TextureButton.xml:19
+#: doc/classes/TextureRect.xml:18
msgid "If [code]true[/code], texture is flipped horizontally."
msgstr ""
#: doc/classes/AnimatedSprite2D.xml:49 doc/classes/Sprite2D.xml:44
-#: doc/classes/SpriteBase3D.xml:64 doc/classes/TextureRect.xml:21
+#: doc/classes/SpriteBase3D.xml:64 doc/classes/TextureButton.xml:22
+#: doc/classes/TextureRect.xml:21
msgid "If [code]true[/code], texture is flipped vertically."
msgstr ""
@@ -3923,10 +3951,10 @@ msgid ""
"[codeblock]\n"
"# This creates an animation that makes the node \"Enemy\" move to the right "
"by\n"
-"# 100 pixels in 1 second.\n"
+"# 100 pixels in 0.5 seconds.\n"
"var animation = Animation.new()\n"
"var track_index = animation.add_track(Animation.TYPE_VALUE)\n"
-"animation.track_set_path(track_index, \"Enemy:position.x\")\n"
+"animation.track_set_path(track_index, \"Enemy:position:x\")\n"
"animation.track_insert_key(track_index, 0.0, 0)\n"
"animation.track_insert_key(track_index, 0.5, 100)\n"
"[/codeblock]\n"
@@ -6054,10 +6082,10 @@ msgstr ""
msgid ""
"Returns [code]true[/code] if the array contains the given value.\n"
"[codeblock]\n"
-"[\"inside\", 7].has(\"inside\") == true\n"
-"[\"inside\", 7].has(\"outside\") == false\n"
-"[\"inside\", 7].has(7) == true\n"
-"[\"inside\", 7].has(\"7\") == false\n"
+"print([\"inside\", 7].has(\"inside\")) # True\n"
+"print([\"inside\", 7].has(\"outside\")) # False\n"
+"print([\"inside\", 7].has(7)) # True\n"
+"print([\"inside\", 7].has(\"7\")) # False\n"
"[/codeblock]\n"
"[b]Note:[/b] This is equivalent to using the [code]in[/code] operator as "
"follows:\n"
@@ -6078,11 +6106,11 @@ msgid ""
"valid, or at the end of the array ([code]pos == size()[/code])."
msgstr ""
-#: doc/classes/Array.xml:265 doc/classes/PackedByteArray.xml:107
-#: doc/classes/PackedColorArray.xml:62 doc/classes/PackedFloat32Array.xml:63
-#: doc/classes/PackedFloat64Array.xml:63 doc/classes/PackedInt32Array.xml:63
-#: doc/classes/PackedInt64Array.xml:63 doc/classes/PackedStringArray.xml:62
-#: doc/classes/PackedVector2Array.xml:62 doc/classes/PackedVector3Array.xml:62
+#: doc/classes/Array.xml:265 doc/classes/PackedByteArray.xml:116
+#: doc/classes/PackedColorArray.xml:71 doc/classes/PackedFloat32Array.xml:72
+#: doc/classes/PackedFloat64Array.xml:72 doc/classes/PackedInt32Array.xml:72
+#: doc/classes/PackedInt64Array.xml:72 doc/classes/PackedStringArray.xml:71
+#: doc/classes/PackedVector2Array.xml:71 doc/classes/PackedVector3Array.xml:71
msgid "Reverses the order of the elements in the array."
msgstr ""
@@ -6112,8 +6140,8 @@ msgid ""
"code] if the array is empty."
msgstr ""
-#: doc/classes/Array.xml:302 doc/classes/PackedByteArray.xml:116
-#: doc/classes/PackedFloat32Array.xml:72 doc/classes/PackedFloat64Array.xml:72
+#: doc/classes/Array.xml:302 doc/classes/PackedByteArray.xml:125
+#: doc/classes/PackedFloat32Array.xml:81 doc/classes/PackedFloat64Array.xml:81
msgid "Appends an element at the end of the array."
msgstr ""
@@ -6121,11 +6149,11 @@ msgstr ""
msgid "Adds an element at the beginning of the array."
msgstr ""
-#: doc/classes/Array.xml:320 doc/classes/PackedByteArray.xml:125
-#: doc/classes/PackedColorArray.xml:80 doc/classes/PackedFloat32Array.xml:81
-#: doc/classes/PackedFloat64Array.xml:81 doc/classes/PackedInt32Array.xml:81
-#: doc/classes/PackedInt64Array.xml:81 doc/classes/PackedStringArray.xml:80
-#: doc/classes/PackedVector2Array.xml:80 doc/classes/PackedVector3Array.xml:80
+#: doc/classes/Array.xml:320 doc/classes/PackedByteArray.xml:134
+#: doc/classes/PackedColorArray.xml:89 doc/classes/PackedFloat32Array.xml:90
+#: doc/classes/PackedFloat64Array.xml:90 doc/classes/PackedInt32Array.xml:90
+#: doc/classes/PackedInt64Array.xml:90 doc/classes/PackedStringArray.xml:89
+#: doc/classes/PackedVector2Array.xml:89 doc/classes/PackedVector3Array.xml:89
msgid "Removes an element from the array by index."
msgstr ""
@@ -6408,7 +6436,7 @@ msgid ""
msgstr ""
#: doc/classes/ArrayMesh.xml:235 doc/classes/Mesh.xml:210
-#: doc/classes/RenderingServer.xml:3115
+#: doc/classes/RenderingServer.xml:3111
msgid "Represents the size of the [enum ArrayType] enum."
msgstr ""
@@ -8225,7 +8253,9 @@ msgid ""
msgstr ""
#: doc/classes/BaseButton.xml:16
-msgid "Called when the button is pressed."
+msgid ""
+"Called when the button is pressed. If you need to know the button's pressed "
+"state (and [member toggle_mode] is active), use [method _toggled] instead."
msgstr ""
#: doc/classes/BaseButton.xml:25
@@ -8319,43 +8349,45 @@ msgstr ""
msgid ""
"Emitted when the button is toggled or pressed. This is on [signal "
"button_down] if [member action_mode] is [constant ACTION_MODE_BUTTON_PRESS] "
-"and on [signal button_up] otherwise."
+"and on [signal button_up] otherwise.\n"
+"If you need to know the button's pressed state (and [member toggle_mode] is "
+"active), use [signal toggled] instead."
msgstr ""
-#: doc/classes/BaseButton.xml:98
+#: doc/classes/BaseButton.xml:99
msgid ""
"Emitted when the button was just toggled between pressed and normal states "
"(only if [member toggle_mode] is active). The new state is contained in the "
"[code]button_pressed[/code] argument."
msgstr ""
-#: doc/classes/BaseButton.xml:104
+#: doc/classes/BaseButton.xml:105
msgid ""
"The normal state (i.e. not pressed, not hovered, not toggled and enabled) of "
"buttons."
msgstr ""
-#: doc/classes/BaseButton.xml:107
+#: doc/classes/BaseButton.xml:108
msgid "The state of buttons are pressed."
msgstr ""
-#: doc/classes/BaseButton.xml:110
+#: doc/classes/BaseButton.xml:111
msgid "The state of buttons are hovered."
msgstr ""
-#: doc/classes/BaseButton.xml:113
+#: doc/classes/BaseButton.xml:114
msgid "The state of buttons are disabled."
msgstr ""
-#: doc/classes/BaseButton.xml:116
+#: doc/classes/BaseButton.xml:117
msgid "The state of buttons are both hovered and pressed."
msgstr ""
-#: doc/classes/BaseButton.xml:119
+#: doc/classes/BaseButton.xml:120
msgid "Require just a press to consider the button clicked."
msgstr ""
-#: doc/classes/BaseButton.xml:122
+#: doc/classes/BaseButton.xml:123
msgid ""
"Require a press and a subsequent release before considering the button "
"clicked."
@@ -9048,22 +9080,22 @@ msgstr ""
msgid "Represents the size of the [enum TextureParam] enum."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:451 doc/classes/RenderingServer.xml:3657
-#: doc/classes/Viewport.xml:390
+#: doc/classes/BaseMaterial3D.xml:451 doc/classes/RenderingServer.xml:3668
+#: doc/classes/Viewport.xml:393
msgid ""
"The texture filter reads from the nearest pixel only. The simplest and "
"fastest method of filtering, but the texture will look pixelized."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:454 doc/classes/RenderingServer.xml:3660
-#: doc/classes/Viewport.xml:393
+#: doc/classes/BaseMaterial3D.xml:454 doc/classes/RenderingServer.xml:3671
+#: doc/classes/Viewport.xml:396
msgid ""
"The texture filter blends between the nearest 4 pixels. Use this when you "
"want to avoid a pixelated style, but do not want mipmaps."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:457 doc/classes/RenderingServer.xml:3663
-#: doc/classes/Viewport.xml:396
+#: doc/classes/BaseMaterial3D.xml:457 doc/classes/RenderingServer.xml:3674
+#: doc/classes/Viewport.xml:399
msgid ""
"The texture filter reads from the nearest pixel in the nearest mipmap. The "
"fastest way to read from textures with mipmaps."
@@ -9076,14 +9108,14 @@ msgid ""
"smooth out pixels that are far from the camera."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:463 doc/classes/RenderingServer.xml:3669
+#: doc/classes/BaseMaterial3D.xml:463 doc/classes/RenderingServer.xml:3680
msgid ""
"The texture filter reads from the nearest pixel, but selects a mipmap based "
"on the angle between the surface and the camera view. This reduces artifacts "
"on surfaces that are almost in line with the camera."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:466 doc/classes/RenderingServer.xml:3672
+#: doc/classes/BaseMaterial3D.xml:466 doc/classes/RenderingServer.xml:3683
msgid ""
"The texture filter blends between the nearest 4 pixels and selects a mipmap "
"based on the angle between the surface and the camera view. This reduces "
@@ -9092,7 +9124,7 @@ msgid ""
"texturing."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:469 doc/classes/CanvasItem.xml:685
+#: doc/classes/BaseMaterial3D.xml:469 doc/classes/CanvasItem.xml:695
msgid "Represents the size of the [enum TextureFilter] enum."
msgstr ""
@@ -9315,8 +9347,8 @@ msgstr ""
msgid "Enables the shadow to opacity feature."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:622 doc/classes/RenderingServer.xml:3684
-#: doc/classes/Viewport.xml:408
+#: doc/classes/BaseMaterial3D.xml:622 doc/classes/RenderingServer.xml:3695
+#: doc/classes/Viewport.xml:411
msgid ""
"Enables the texture to repeat when UV coordinates are outside the 0-1 range. "
"If using one of the linear filtering modes, this can result in artifacts at "
@@ -9457,167 +9489,195 @@ msgstr ""
#: doc/classes/Basis.xml:7
msgid ""
-"3×3 matrix used for 3D rotation and scale. Contains 3 vector fields X, Y and "
-"Z as its columns, which can be interpreted as the local basis vectors of a "
-"transformation. Can also be accessed as array of 3D vectors. These vectors "
-"are orthogonal to each other, but are not necessarily normalized (due to "
-"scaling). Almost always used as an orthogonal basis for a [Transform].\n"
-"For such use, it is composed of a scaling and a rotation matrix, in that "
-"order (M = R.S)."
+"3×3 matrix used for 3D rotation and scale. Almost always used as an "
+"orthogonal basis for a Transform.\n"
+"Contains 3 vector fields X, Y and Z as its columns, which are typically "
+"interpreted as the local basis vectors of a transformation. For such use, it "
+"is composed of a scaling and a rotation matrix, in that order (M = R.S).\n"
+"Can also be accessed as array of 3D vectors. These vectors are normally "
+"orthogonal to each other, but are not necessarily normalized (due to "
+"scaling).\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
+msgstr ""
+
+#: doc/classes/Basis.xml:13 doc/classes/Transform.xml:12
+#: doc/classes/Transform2D.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/math/"
+"matrices_and_transforms.html"
msgstr ""
-#: doc/classes/Basis.xml:11 doc/classes/Transform.xml:11
+#: doc/classes/Basis.xml:14 doc/classes/Transform.xml:13
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/using_transforms.html"
msgstr ""
-#: doc/classes/Basis.xml:20
-msgid "Create a rotation matrix from the given quaternion."
+#: doc/classes/Basis.xml:23
+msgid "Constructs a pure rotation basis matrix from the given quaternion."
msgstr ""
-#: doc/classes/Basis.xml:29
+#: doc/classes/Basis.xml:32
msgid ""
-"Create a rotation matrix (in the YXZ convention: first Z, then X, and Y "
-"last) from the specified Euler angles, given in the vector format as (X "
-"angle, Y angle, Z angle)."
+"Constructs a pure rotation basis matrix from the given Euler angles (in the "
+"YXZ convention: when *composing*, first Y, then X, and Z last), given in the "
+"vector format as (X angle, Y angle, Z angle).\n"
+"Consider using the [Quat] constructor instead, which uses a quaternion "
+"instead of Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:40
+#: doc/classes/Basis.xml:44
msgid ""
-"Create a rotation matrix which rotates around the given axis by the "
-"specified angle, in radians. The axis must be a normalized vector."
+"Constructs a pure rotation basis matrix, rotated around the given "
+"[code]axis[/code] by [code]phi[/code], in radians. The axis must be a "
+"normalized vector."
msgstr ""
-#: doc/classes/Basis.xml:53
-msgid "Create a matrix from 3 axis vectors."
+#: doc/classes/Basis.xml:57
+msgid "Constructs a basis matrix from 3 axis vectors (matrix columns)."
msgstr ""
-#: doc/classes/Basis.xml:60
-msgid "Returns the determinant of the matrix."
+#: doc/classes/Basis.xml:64
+msgid ""
+"Returns the determinant of the basis matrix. If the basis is uniformly "
+"scaled, its determinant is the square of the scale.\n"
+"A negative determinant means the basis has a negative scale. A zero "
+"determinant means the basis isn't invertible, and is usually considered "
+"invalid."
msgstr ""
-#: doc/classes/Basis.xml:67
+#: doc/classes/Basis.xml:72
msgid ""
"Returns the basis's rotation in the form of Euler angles (in the YXZ "
-"convention: first Z, then X, and Y last). The returned vector contains the "
-"rotation angles in the format (X angle, Y angle, Z angle). See [method "
-"get_rotation_quat] if you need a quaternion instead."
+"convention: when decomposing, first Z, then X, and Y last). The returned "
+"vector contains the rotation angles in the format (X angle, Y angle, Z "
+"angle).\n"
+"Consider using the [method get_rotation_quat] method instead, which returns "
+"a [Quat] quaternion instead of Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:74
+#: doc/classes/Basis.xml:80
msgid ""
"This function considers a discretization of rotations into 24 points on unit "
"sphere, lying along the vectors (x,y,z) with each component being either -1, "
"0, or 1, and returns the index of the point best representing the "
-"orientation of the object. It is mainly used by the grid map editor. For "
+"orientation of the object. It is mainly used by the [GridMap] editor. For "
"further details, refer to the Godot source code."
msgstr ""
-#: doc/classes/Basis.xml:81
+#: doc/classes/Basis.xml:87
msgid ""
"Returns the basis's rotation in the form of a quaternion. See [method "
"get_euler] if you need Euler angles, but keep in mind quaternions should "
"generally be preferred to Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:88
+#: doc/classes/Basis.xml:94
msgid ""
"Assuming that the matrix is the combination of a rotation and scaling, "
"return the absolute value of scaling factors along each axis."
msgstr ""
-#: doc/classes/Basis.xml:95 doc/classes/Transform2D.xml:49
+#: doc/classes/Basis.xml:101
msgid "Returns the inverse of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:106
+#: doc/classes/Basis.xml:112
msgid ""
"Returns [code]true[/code] if this basis and [code]b[/code] are approximately "
"equal, by calling [code]is_equal_approx[/code] on each component."
msgstr ""
-#: doc/classes/Basis.xml:113
+#: doc/classes/Basis.xml:119
msgid ""
"Returns the orthonormalized version of the matrix (useful to call from time "
"to time to avoid rounding error for orthogonal matrices). This performs a "
"Gram-Schmidt orthonormalization on the basis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:124
+#: doc/classes/Basis.xml:130
msgid ""
"Introduce an additional rotation around the given axis by phi (radians). The "
"axis must be a normalized vector."
msgstr ""
-#: doc/classes/Basis.xml:133
+#: doc/classes/Basis.xml:139
msgid ""
"Introduce an additional scaling specified by the given 3D scaling factor."
msgstr ""
-#: doc/classes/Basis.xml:144
+#: doc/classes/Basis.xml:150
msgid ""
"Assuming that the matrix is a proper rotation matrix, slerp performs a "
"spherical-linear interpolation with another rotation matrix."
msgstr ""
-#: doc/classes/Basis.xml:153
+#: doc/classes/Basis.xml:159
msgid "Transposed dot product with the X axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:162
+#: doc/classes/Basis.xml:168
msgid "Transposed dot product with the Y axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:171
+#: doc/classes/Basis.xml:177
msgid "Transposed dot product with the Z axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:178
+#: doc/classes/Basis.xml:184
msgid "Returns the transposed version of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:187
+#: doc/classes/Basis.xml:193
msgid "Returns a vector transformed (multiplied) by the matrix."
msgstr ""
-#: doc/classes/Basis.xml:196
+#: doc/classes/Basis.xml:202
msgid ""
-"Returns a vector transformed (multiplied) by the transposed matrix.\n"
+"Returns a vector transformed (multiplied) by the transposed basis matrix.\n"
"[b]Note:[/b] This results in a multiplication by the inverse of the matrix "
"only if it represents a rotation-reflection."
msgstr ""
-#: doc/classes/Basis.xml:203
-msgid "The basis matrix's X vector."
+#: doc/classes/Basis.xml:209 doc/classes/Transform2D.xml:181
+msgid ""
+"The basis matrix's X vector (column 0). Equivalent to array index [code]0[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:206
-msgid "The basis matrix's Y vector."
+#: doc/classes/Basis.xml:212 doc/classes/Transform2D.xml:184
+msgid ""
+"The basis matrix's Y vector (column 1). Equivalent to array index [code]1[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:209
-msgid "The basis matrix's Z vector."
+#: doc/classes/Basis.xml:215
+msgid ""
+"The basis matrix's Z vector (column 2). Equivalent to array index [code]2[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:214
+#: doc/classes/Basis.xml:220
msgid ""
-"The identity basis. This is identical to calling [code]Basis()[/code] "
-"without any parameters. This constant can be used to make your code clearer."
+"The identity basis, with no rotation or scaling applied.\n"
+"This is identical to calling [code]Basis()[/code] without any parameters. "
+"This constant can be used to make your code clearer, and for consistency "
+"with C#."
msgstr ""
-#: doc/classes/Basis.xml:217
+#: doc/classes/Basis.xml:224
msgid ""
"The basis that will flip something along the X axis when used in a "
"transformation."
msgstr ""
-#: doc/classes/Basis.xml:220
+#: doc/classes/Basis.xml:227
msgid ""
"The basis that will flip something along the Y axis when used in a "
"transformation."
msgstr ""
-#: doc/classes/Basis.xml:223
+#: doc/classes/Basis.xml:230
msgid ""
"The basis that will flip something along the Z axis when used in a "
"transformation."
@@ -9930,97 +9990,111 @@ msgstr ""
#: doc/classes/Button.xml:7
msgid ""
"Button is the standard themed button. It can contain text and an icon, and "
-"will display them according to the current [Theme]."
+"will display them according to the current [Theme].\n"
+"[b]Example of creating a button and assigning an action when pressed by code:"
+"[/b]\n"
+"[codeblock]\n"
+"func _ready():\n"
+" var button = Button.new()\n"
+" button.text = \"Click me\"\n"
+" button.connect(\"pressed\", self, \"_button_pressed\")\n"
+" add_child(button)\n"
+"\n"
+"func _button_pressed():\n"
+" print(\"Hello world!\")\n"
+"[/codeblock]\n"
+"Buttons (like all Control nodes) can also be created in the editor, but some "
+"situations may require creating them from code."
msgstr ""
-#: doc/classes/Button.xml:15
+#: doc/classes/Button.xml:27
msgid ""
"Text alignment policy for the button's text, use one of the [enum TextAlign] "
"constants."
msgstr ""
-#: doc/classes/Button.xml:18
+#: doc/classes/Button.xml:30
msgid ""
"When this property is enabled, text that is too large to fit the button is "
"clipped, when disabled the Button will always be wide enough to hold the "
"text."
msgstr ""
-#: doc/classes/Button.xml:21
+#: doc/classes/Button.xml:33
msgid ""
"When enabled, the button's icon will expand/shrink to fit the button's size "
"while keeping its aspect."
msgstr ""
-#: doc/classes/Button.xml:24
+#: doc/classes/Button.xml:36
msgid "Flat buttons don't display decoration."
msgstr ""
-#: doc/classes/Button.xml:27
+#: doc/classes/Button.xml:39
msgid ""
"Button's icon, if text is present the icon will be placed before the text."
msgstr ""
-#: doc/classes/Button.xml:30 doc/classes/LinkButton.xml:18
+#: doc/classes/Button.xml:42 doc/classes/LinkButton.xml:18
msgid "The button's text that will be displayed inside the button's area."
msgstr ""
-#: doc/classes/Button.xml:35
+#: doc/classes/Button.xml:47
msgid "Align the text to the left."
msgstr ""
-#: doc/classes/Button.xml:38
+#: doc/classes/Button.xml:50
msgid "Align the text to the center."
msgstr ""
-#: doc/classes/Button.xml:41
+#: doc/classes/Button.xml:53
msgid "Align the text to the right."
msgstr ""
-#: doc/classes/Button.xml:46
+#: doc/classes/Button.xml:58
msgid "[StyleBox] used when the [Button] is disabled."
msgstr ""
-#: doc/classes/Button.xml:49
+#: doc/classes/Button.xml:61
msgid ""
"[StyleBox] used when the [Button] is focused. It is displayed over the "
"current [StyleBox], so using [StyleBoxEmpty] will just disable the focus "
"visual effect."
msgstr ""
-#: doc/classes/Button.xml:52
+#: doc/classes/Button.xml:64
msgid "[Font] of the [Button]'s text."
msgstr ""
-#: doc/classes/Button.xml:55
+#: doc/classes/Button.xml:67
msgid "Default text [Color] of the [Button]."
msgstr ""
-#: doc/classes/Button.xml:58
+#: doc/classes/Button.xml:70
msgid "Text [Color] used when the [Button] is disabled."
msgstr ""
-#: doc/classes/Button.xml:61
+#: doc/classes/Button.xml:73
msgid "Text [Color] used when the [Button] is being hovered."
msgstr ""
-#: doc/classes/Button.xml:64
+#: doc/classes/Button.xml:76
msgid "Text [Color] used when the [Button] is being pressed."
msgstr ""
-#: doc/classes/Button.xml:67
+#: doc/classes/Button.xml:79
msgid "[StyleBox] used when the [Button] is being hovered."
msgstr ""
-#: doc/classes/Button.xml:70
+#: doc/classes/Button.xml:82
msgid "The horizontal space between [Button]'s icon and text."
msgstr ""
-#: doc/classes/Button.xml:73
+#: doc/classes/Button.xml:85
msgid "Default [StyleBox] for the [Button]."
msgstr ""
-#: doc/classes/Button.xml:76
+#: doc/classes/Button.xml:88
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr ""
@@ -10672,7 +10746,7 @@ msgstr ""
#: doc/classes/CameraEffects.xml:37
msgid ""
"The exposure override value to use. Higher values will result in a brighter "
-"scene. Only effective if [member override_exposure_enable] is [code]true[/"
+"scene. Only effective if [member override_exposure_enabled] is [code]true[/"
"code]."
msgstr ""
@@ -10926,265 +11000,282 @@ msgid ""
msgstr ""
#: doc/classes/CanvasItem.xml:319
-msgid "Draws a string using a custom font."
+msgid ""
+"Draws [code]text[/code] using the specified [code]font[/code] at the "
+"[code]position[/code] (top-left corner). The text will have its color "
+"multiplied by [code]modulate[/code]. If [code]clip_w[/code] is greater than "
+"or equal to 0, the text will be clipped if it exceeds the specified width.\n"
+"[b]Example using the default project font:[/b]\n"
+"[codeblock]\n"
+"# If using this method in a script that redraws constantly, move the\n"
+"# `default_font` declaration to a member variable assigned in `_ready()`\n"
+"# so the Control is only created once.\n"
+"var default_font = Control.new().get_font(\"font\")\n"
+"draw_string(default_font, Vector2(64, 64), \"Hello world\")\n"
+"[/codeblock]\n"
+"See also [method Font.draw]."
msgstr ""
-#: doc/classes/CanvasItem.xml:330
+#: doc/classes/CanvasItem.xml:339
msgid "Draws a styled rectangle."
msgstr ""
-#: doc/classes/CanvasItem.xml:353
+#: doc/classes/CanvasItem.xml:362
msgid "Draws a texture at a given position."
msgstr ""
-#: doc/classes/CanvasItem.xml:380
+#: doc/classes/CanvasItem.xml:389
msgid ""
"Draws a textured rectangle at a given position, optionally modulated by a "
"color. If [code]transpose[/code] is [code]true[/code], the texture will have "
"its X and Y coordinates swapped."
msgstr ""
-#: doc/classes/CanvasItem.xml:409
+#: doc/classes/CanvasItem.xml:418
msgid ""
"Draws a textured rectangle region at a given position, optionally modulated "
"by a color. If [code]transpose[/code] is [code]true[/code], the texture will "
"have its X and Y coordinates swapped."
msgstr ""
-#: doc/classes/CanvasItem.xml:416 doc/classes/Node3D.xml:19
+#: doc/classes/CanvasItem.xml:425 doc/classes/Node3D.xml:19
msgid ""
"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."
msgstr ""
-#: doc/classes/CanvasItem.xml:423
+#: doc/classes/CanvasItem.xml:432
msgid "Returns the [RID] of the [World2D] canvas where this item is in."
msgstr ""
-#: doc/classes/CanvasItem.xml:430
+#: doc/classes/CanvasItem.xml:439
msgid "Returns the canvas item RID used by [RenderingServer] for this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:437
+#: doc/classes/CanvasItem.xml:446
msgid "Returns the transform matrix of this item's canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:444
+#: doc/classes/CanvasItem.xml:453
msgid "Returns the global position of the mouse."
msgstr ""
-#: doc/classes/CanvasItem.xml:451
+#: doc/classes/CanvasItem.xml:460
msgid "Returns the global transform matrix of this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:458
+#: doc/classes/CanvasItem.xml:467
msgid ""
"Returns the global transform matrix of this item in relation to the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:465
+#: doc/classes/CanvasItem.xml:474
msgid "Returns the mouse position relative to this item's position."
msgstr ""
-#: doc/classes/CanvasItem.xml:472
+#: doc/classes/CanvasItem.xml:481
msgid "Returns the transform matrix of this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:479
+#: doc/classes/CanvasItem.xml:488
msgid "Returns the viewport's boundaries as a [Rect2]."
msgstr ""
-#: doc/classes/CanvasItem.xml:486
+#: doc/classes/CanvasItem.xml:495
msgid "Returns this item's transform in relation to the viewport."
msgstr ""
-#: doc/classes/CanvasItem.xml:493
+#: doc/classes/CanvasItem.xml:502
msgid "Returns the [World2D] where this item is in."
msgstr ""
-#: doc/classes/CanvasItem.xml:500
+#: doc/classes/CanvasItem.xml:509
msgid "Hide the [CanvasItem] if it's currently visible."
msgstr ""
-#: doc/classes/CanvasItem.xml:507
+#: doc/classes/CanvasItem.xml:516
msgid ""
"Returns [code]true[/code] if local transform notifications are communicated "
"to children."
msgstr ""
-#: doc/classes/CanvasItem.xml:514
+#: doc/classes/CanvasItem.xml:523
msgid ""
"Returns [code]true[/code] if the node is set as top-level. See [method "
"set_as_toplevel]."
msgstr ""
-#: doc/classes/CanvasItem.xml:521
+#: doc/classes/CanvasItem.xml:530
msgid ""
"Returns [code]true[/code] if global transform notifications are communicated "
"to children."
msgstr ""
-#: doc/classes/CanvasItem.xml:528
+#: doc/classes/CanvasItem.xml:537 doc/classes/Node3D.xml:104
msgid ""
"Returns [code]true[/code] if the node is present in the [SceneTree], its "
-"[member visible] property is [code]true[/code] and its inherited visibility "
-"is also [code]true[/code]."
+"[member visible] property is [code]true[/code] and all its antecedents are "
+"also visible. If any antecedent is hidden, this node will not be visible in "
+"the scene tree."
msgstr ""
-#: doc/classes/CanvasItem.xml:537
+#: doc/classes/CanvasItem.xml:546
msgid "Assigns [code]screen_point[/code] as this node's new local transform."
msgstr ""
-#: doc/classes/CanvasItem.xml:546
+#: doc/classes/CanvasItem.xml:555
msgid ""
"Transformations issued by [code]event[/code]'s inputs are applied in local "
"space instead of global space."
msgstr ""
-#: doc/classes/CanvasItem.xml:555
+#: doc/classes/CanvasItem.xml:564
msgid ""
"If [code]enable[/code] is [code]true[/code], the node won't inherit its "
"transform from parent canvas items."
msgstr ""
-#: doc/classes/CanvasItem.xml:564
+#: doc/classes/CanvasItem.xml:573
msgid ""
"If [code]enable[/code] is [code]true[/code], children will be updated with "
"local transform data."
msgstr ""
-#: doc/classes/CanvasItem.xml:573
+#: doc/classes/CanvasItem.xml:582
msgid ""
"If [code]enable[/code] is [code]true[/code], children will be updated with "
"global transform data."
msgstr ""
-#: doc/classes/CanvasItem.xml:580
+#: doc/classes/CanvasItem.xml:589
msgid ""
"Show the [CanvasItem] if it's currently hidden. For controls that inherit "
"[Popup], the correct way to make them visible is to call one of the multiple "
"[code]popup*()[/code] functions instead."
msgstr ""
-#: doc/classes/CanvasItem.xml:587
+#: doc/classes/CanvasItem.xml:596
msgid ""
"Queue the [CanvasItem] for update. [constant NOTIFICATION_DRAW] will be "
"called on idle time to request redraw."
msgstr ""
-#: doc/classes/CanvasItem.xml:593
+#: doc/classes/CanvasItem.xml:602
msgid ""
"The rendering layers in which this [CanvasItem] responds to [Light2D] nodes."
msgstr ""
-#: doc/classes/CanvasItem.xml:596
+#: doc/classes/CanvasItem.xml:605
msgid "The material applied to textures on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:599
+#: doc/classes/CanvasItem.xml:608
msgid "The color applied to textures on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:602
+#: doc/classes/CanvasItem.xml:611
msgid ""
"The color applied to textures on this [CanvasItem]. This is not inherited by "
"children [CanvasItem]s."
msgstr ""
-#: doc/classes/CanvasItem.xml:605
+#: doc/classes/CanvasItem.xml:614
msgid "If [code]true[/code], the object draws behind its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:608
+#: doc/classes/CanvasItem.xml:617
msgid "If [code]true[/code], the object draws on top of its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:611
+#: doc/classes/CanvasItem.xml:620
msgid "The texture filtering mode to use on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:614
+#: doc/classes/CanvasItem.xml:623
msgid "The texture repeating mode to use on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:617
+#: doc/classes/CanvasItem.xml:626
msgid ""
"If [code]true[/code], the parent [CanvasItem]'s [member material] property "
"is used as this one's material."
msgstr ""
-#: doc/classes/CanvasItem.xml:620
+#: doc/classes/CanvasItem.xml:629
msgid ""
-"If [code]true[/code], this [CanvasItem] is drawn. For controls that inherit "
-"[Popup], the correct way to make them visible is to call one of the multiple "
-"[code]popup*()[/code] functions instead."
+"If [code]true[/code], this [CanvasItem] is drawn. The node is only visible "
+"if all of its antecedents are visible as well (in other words, [method "
+"is_visible_in_tree] must return [code]true[/code]).\n"
+"[b]Note:[/b] For controls that inherit [Popup], the correct way to make them "
+"visible is to call one of the multiple [code]popup*()[/code] functions "
+"instead."
msgstr ""
-#: doc/classes/CanvasItem.xml:626
+#: doc/classes/CanvasItem.xml:636
msgid ""
"Emitted when the [CanvasItem] must redraw. This can only be connected "
"realtime, as deferred will not allow drawing."
msgstr ""
-#: doc/classes/CanvasItem.xml:631
+#: doc/classes/CanvasItem.xml:641
msgid "Emitted when becoming hidden."
msgstr ""
-#: doc/classes/CanvasItem.xml:636
+#: doc/classes/CanvasItem.xml:646
msgid "Emitted when the item rect has changed."
msgstr ""
-#: doc/classes/CanvasItem.xml:641
+#: doc/classes/CanvasItem.xml:651
msgid "Emitted when the visibility (hidden/visible) changes."
msgstr ""
-#: doc/classes/CanvasItem.xml:647
+#: doc/classes/CanvasItem.xml:657
msgid ""
"The [CanvasItem]'s transform has changed. This notification is only received "
"if enabled by [method set_notify_transform] or [method "
"set_notify_local_transform]."
msgstr ""
-#: doc/classes/CanvasItem.xml:650
+#: doc/classes/CanvasItem.xml:660
msgid "The [CanvasItem] is requested to draw."
msgstr ""
-#: doc/classes/CanvasItem.xml:653
+#: doc/classes/CanvasItem.xml:663
msgid "The [CanvasItem]'s visibility has changed."
msgstr ""
-#: doc/classes/CanvasItem.xml:656
+#: doc/classes/CanvasItem.xml:666
msgid "The [CanvasItem] has entered the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:659
+#: doc/classes/CanvasItem.xml:669
msgid "The [CanvasItem] has exited the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:662 doc/classes/CanvasItem.xml:688
+#: doc/classes/CanvasItem.xml:672 doc/classes/CanvasItem.xml:698
msgid "The [CanvasItem] will inherit the filter from its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:665
+#: doc/classes/CanvasItem.xml:675
msgid ""
"The texture filter reads from the nearest pixel only. The simplest and "
"fastest method of filtering. Useful for pixel art."
msgstr ""
-#: doc/classes/CanvasItem.xml:668
+#: doc/classes/CanvasItem.xml:678
msgid ""
"The texture filter blends between the nearest four pixels. Use this for most "
"cases where you want to avoid a pixelated style."
msgstr ""
-#: doc/classes/CanvasItem.xml:671
+#: doc/classes/CanvasItem.xml:681
msgid ""
"The texture filter reads from the nearest pixel in the nearest mipmap. This "
"is the fastest way to read from textures with mipmaps."
msgstr ""
-#: doc/classes/CanvasItem.xml:674
+#: doc/classes/CanvasItem.xml:684
msgid ""
"The texture filter blends between the nearest 4 pixels and between the "
"nearest 2 mipmaps. Use this for non-pixel art textures that may be viewed at "
@@ -11192,7 +11283,7 @@ msgid ""
"smooth out pixels that are smaller than on-screen pixels."
msgstr ""
-#: doc/classes/CanvasItem.xml:677
+#: doc/classes/CanvasItem.xml:687
msgid ""
"The texture filter reads from the nearest pixel, but selects a mipmap based "
"on the angle between the surface and the camera view. This reduces artifacts "
@@ -11201,7 +11292,7 @@ msgid ""
"TEXTURE_FILTER_NEAREST_WITH_MIPMAPS] is usually more appropriate."
msgstr ""
-#: doc/classes/CanvasItem.xml:681
+#: doc/classes/CanvasItem.xml:691
msgid ""
"The texture filter blends between the nearest 4 pixels and selects a mipmap "
"based on the angle between the surface and the camera view. This reduces "
@@ -11212,21 +11303,21 @@ msgid ""
"TEXTURE_FILTER_LINEAR_WITH_MIPMAPS] is usually more appropriate."
msgstr ""
-#: doc/classes/CanvasItem.xml:691
+#: doc/classes/CanvasItem.xml:701
msgid "Texture will not repeat."
msgstr ""
-#: doc/classes/CanvasItem.xml:694
+#: doc/classes/CanvasItem.xml:704
msgid "Texture will repeat normally."
msgstr ""
-#: doc/classes/CanvasItem.xml:697
+#: doc/classes/CanvasItem.xml:707
msgid ""
"Texture will repeat in a 2x2 tiled mode, where elements at even positions "
"are mirrored."
msgstr ""
-#: doc/classes/CanvasItem.xml:700
+#: doc/classes/CanvasItem.xml:710
msgid "Represents the size of the [enum TextureRepeat] enum."
msgstr ""
@@ -12299,16 +12390,15 @@ msgid ""
msgstr ""
#: doc/classes/Color.xml:4
-msgid "Color in RGBA format with some support for ARGB format."
+msgid "Color in RGBA format using floats on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:7
msgid ""
-"A color is represented by red, green, and blue [code](r, g, b)[/code] "
-"components. Additionally, [code]a[/code] represents the alpha component, "
-"often used for transparency. Values are in floating-point and usually range "
-"from 0 to 1. Some properties (such as [member CanvasItem.modulate]) may "
-"accept values greater than 1.\n"
+"A color represented by red, green, blue, and alpha (RGBA) components. The "
+"alpha component is often used for transparency. Values are in floating-point "
+"and usually range from 0 to 1. Some properties (such as CanvasItem.modulate) "
+"may accept values greater than 1 (overbright or HDR colors).\n"
"You can also create a color from standardized color names by using [method "
"@GDScript.ColorN] or directly using the color constants defined here. The "
"standardized color set is based on the [url=https://en.wikipedia.org/wiki/"
@@ -12522,47 +12612,48 @@ msgid ""
msgstr ""
#: doc/classes/Color.xml:280
-msgid "Alpha value (range 0 to 1)."
+msgid ""
+"The color's alpha (transparency) component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:283
-msgid "Alpha value (range 0 to 255)."
+msgid "Wrapper for [member a] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:286
-msgid "Blue value (range 0 to 1)."
+msgid "The color's blue component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:289
-msgid "Blue value (range 0 to 255)."
+msgid "Wrapper for [member b] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:292
-msgid "Green value (range 0 to 1)."
+msgid "The color's green component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:295
-msgid "Green value (range 0 to 255)."
+msgid "Wrapper for [member g] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:298
-msgid "HSV hue value (range 0 to 1)."
+msgid "The HSV hue of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:301
-msgid "Red value (range 0 to 1)."
+msgid "The color's red component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:304
-msgid "Red value (range 0 to 255)."
+msgid "Wrapper for [member r] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:307
-msgid "HSV saturation value (range 0 to 1)."
+msgid "The HSV saturation of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:310
-msgid "HSV value (range 0 to 1)."
+msgid "The HSV value (brightness) of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:315
@@ -14482,23 +14573,35 @@ msgstr ""
#: doc/classes/Control.xml:859
msgid ""
"The node's scale, relative to its [member rect_size]. Change this property "
-"to scale the node around its [member rect_pivot_offset]."
-msgstr ""
-
-#: doc/classes/Control.xml:862
+"to scale the node around its [member rect_pivot_offset]. The Control's "
+"[member hint_tooltip] will also scale according to this value.\n"
+"[b]Note:[/b] This property is mainly intended to be used for animation "
+"purposes. Text inside the Control will look pixelated or blurry when the "
+"Control is scaled. To support multiple resolutions in your project, use an "
+"appropriate viewport stretch mode as described in the [url=https://docs."
+"godotengine.org/en/latest/tutorials/viewports/multiple_resolutions."
+"html]documentation[/url] instead of scaling Controls individually.\n"
+"[b]Note:[/b] If the Control node is a child of a [Container] node, the scale "
+"will be reset to [code]Vector2(1, 1)[/code] when the scene is instanced. To "
+"set the Control's scale when it's instanced, wait for one frame using "
+"[code]yield(get_tree(), \"idle_frame\")[/code] then set its [member "
+"rect_scale] property."
+msgstr ""
+
+#: doc/classes/Control.xml:864
msgid ""
"The size of the node's bounding rectangle, in pixels. [Container] nodes "
"update this property automatically."
msgstr ""
-#: doc/classes/Control.xml:865
+#: doc/classes/Control.xml:867
msgid ""
"Tells the parent [Container] nodes how they should resize and place the node "
"on the X axis. Use one of the [enum SizeFlags] constants to change the "
"flags. See the constants to learn what each does."
msgstr ""
-#: doc/classes/Control.xml:868
+#: doc/classes/Control.xml:870
msgid ""
"If the node and at least one of its neighbours uses the [constant "
"SIZE_EXPAND] size flag, the parent [Container] will let it take more or less "
@@ -14507,181 +14610,181 @@ msgid ""
"space."
msgstr ""
-#: doc/classes/Control.xml:871
+#: doc/classes/Control.xml:873
msgid ""
"Tells the parent [Container] nodes how they should resize and place the node "
"on the Y axis. Use one of the [enum SizeFlags] constants to change the "
"flags. See the constants to learn what each does."
msgstr ""
-#: doc/classes/Control.xml:874
+#: doc/classes/Control.xml:876
msgid ""
"Changing this property replaces the current [Theme] resource this node and "
"all its [Control] children use."
msgstr ""
-#: doc/classes/Control.xml:880
+#: doc/classes/Control.xml:882
msgid "Emitted when the node gains keyboard focus."
msgstr ""
-#: doc/classes/Control.xml:885
+#: doc/classes/Control.xml:887
msgid "Emitted when the node loses keyboard focus."
msgstr ""
-#: doc/classes/Control.xml:892
+#: doc/classes/Control.xml:894
msgid "Emitted when the node receives an [InputEvent]."
msgstr ""
-#: doc/classes/Control.xml:897
+#: doc/classes/Control.xml:899
msgid "Emitted when the node's minimum size changes."
msgstr ""
-#: doc/classes/Control.xml:902
+#: doc/classes/Control.xml:904
msgid ""
"Emitted when the mouse enters the control's [code]Rect[/code] area, provided "
"its [member mouse_filter] lets the event reach it."
msgstr ""
-#: doc/classes/Control.xml:907
+#: doc/classes/Control.xml:909
msgid ""
"Emitted when the mouse leaves the control's [code]Rect[/code] area, provided "
"its [member mouse_filter] lets the event reach it."
msgstr ""
-#: doc/classes/Control.xml:912
+#: doc/classes/Control.xml:914
msgid "Emitted when the control changes size."
msgstr ""
-#: doc/classes/Control.xml:917
+#: doc/classes/Control.xml:919
msgid ""
"Emitted when one of the size flags changes. See [member "
"size_flags_horizontal] and [member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:927
+#: doc/classes/Control.xml:929
msgid "The node cannot grab focus. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:930
+#: doc/classes/Control.xml:932
msgid ""
"The node can only grab focus on mouse clicks. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:933
+#: doc/classes/Control.xml:935
msgid ""
"The node can grab focus on mouse click or using the arrows and the Tab keys "
"on the keyboard. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:936
+#: doc/classes/Control.xml:938
msgid ""
"Sent when the node changes size. Use [member rect_size] to get the new size."
msgstr ""
-#: doc/classes/Control.xml:939
+#: doc/classes/Control.xml:941
msgid "Sent when the mouse pointer enters the node."
msgstr ""
-#: doc/classes/Control.xml:942
+#: doc/classes/Control.xml:944
msgid "Sent when the mouse pointer exits the node."
msgstr ""
-#: doc/classes/Control.xml:945
+#: doc/classes/Control.xml:947
msgid "Sent when the node grabs focus."
msgstr ""
-#: doc/classes/Control.xml:948
+#: doc/classes/Control.xml:950
msgid "Sent when the node loses focus."
msgstr ""
-#: doc/classes/Control.xml:951
+#: doc/classes/Control.xml:953
msgid ""
"Sent when the node's [member theme] changes, right before Godot redraws the "
"control. Happens when you call one of the [code]add_theme_*_override[/code] "
"methods."
msgstr ""
-#: doc/classes/Control.xml:954
+#: doc/classes/Control.xml:956
msgid ""
"Sent when this node is inside a [ScrollContainer] which has begun being "
"scrolled."
msgstr ""
-#: doc/classes/Control.xml:957
+#: doc/classes/Control.xml:959
msgid ""
"Sent when this node is inside a [ScrollContainer] which has stopped being "
"scrolled."
msgstr ""
-#: doc/classes/Control.xml:960
+#: doc/classes/Control.xml:962
msgid ""
"Show the system's arrow mouse cursor when the user hovers the node. Use with "
"[member mouse_default_cursor_shape]."
msgstr ""
-#: doc/classes/Control.xml:963
+#: doc/classes/Control.xml:965
msgid ""
"Show the system's I-beam mouse cursor when the user hovers the node. The I-"
"beam pointer has a shape similar to \"I\". It tells the user they can "
"highlight or insert text."
msgstr ""
-#: doc/classes/Control.xml:966
+#: doc/classes/Control.xml:968
msgid ""
"Show the system's pointing hand mouse cursor when the user hovers the node."
msgstr ""
-#: doc/classes/Control.xml:969
+#: doc/classes/Control.xml:971
msgid "Show the system's cross mouse cursor when the user hovers the node."
msgstr ""
-#: doc/classes/Control.xml:972
+#: doc/classes/Control.xml:974
msgid ""
"Show the system's wait mouse cursor, often an hourglass, when the user "
"hovers the node."
msgstr ""
-#: doc/classes/Control.xml:975
+#: doc/classes/Control.xml:977
msgid ""
"Show the system's busy mouse cursor when the user hovers the node. Often an "
"hourglass."
msgstr ""
-#: doc/classes/Control.xml:978
+#: doc/classes/Control.xml:980
msgid ""
"Show the system's drag mouse cursor, often a closed fist or a cross symbol, "
"when the user hovers the node. It tells the user they're currently dragging "
"an item, like a node in the Scene dock."
msgstr ""
-#: doc/classes/Control.xml:981
+#: doc/classes/Control.xml:983
msgid ""
"Show the system's drop mouse cursor when the user hovers the node. It can be "
"an open hand. It tells the user they can drop an item they're currently "
"grabbing, like a node in the Scene dock."
msgstr ""
-#: doc/classes/Control.xml:984
+#: doc/classes/Control.xml:986
msgid ""
"Show the system's forbidden mouse cursor when the user hovers the node. "
"Often a crossed circle."
msgstr ""
-#: doc/classes/Control.xml:987
+#: doc/classes/Control.xml:989
msgid ""
"Show the system's vertical resize mouse cursor when the user hovers the "
"node. A double-headed vertical arrow. It tells the user they can resize the "
"window or the panel vertically."
msgstr ""
-#: doc/classes/Control.xml:990
+#: doc/classes/Control.xml:992
msgid ""
"Show the system's horizontal resize mouse cursor when the user hovers the "
"node. A double-headed horizontal arrow. It tells the user they can resize "
"the window or the panel horizontally."
msgstr ""
-#: doc/classes/Control.xml:993
+#: doc/classes/Control.xml:995
msgid ""
"Show the system's window resize mouse cursor when the user hovers the node. "
"The cursor is a double-headed arrow that goes from the bottom left to the "
@@ -14689,7 +14792,7 @@ msgid ""
"horizontally and vertically."
msgstr ""
-#: doc/classes/Control.xml:996
+#: doc/classes/Control.xml:998
msgid ""
"Show the system's window resize mouse cursor when the user hovers the node. "
"The cursor is a double-headed arrow that goes from the top left to the "
@@ -14697,93 +14800,93 @@ msgid ""
"they can resize the window or the panel both horizontally and vertically."
msgstr ""
-#: doc/classes/Control.xml:999
+#: doc/classes/Control.xml:1001
msgid ""
"Show the system's move mouse cursor when the user hovers the node. It shows "
"2 double-headed arrows at a 90 degree angle. It tells the user they can move "
"a UI element freely."
msgstr ""
-#: doc/classes/Control.xml:1002
+#: doc/classes/Control.xml:1004
msgid ""
"Show the system's vertical split mouse cursor when the user hovers the node. "
"On Windows, it's the same as [constant CURSOR_VSIZE]."
msgstr ""
-#: doc/classes/Control.xml:1005
+#: doc/classes/Control.xml:1007
msgid ""
"Show the system's horizontal split mouse cursor when the user hovers the "
"node. On Windows, it's the same as [constant CURSOR_HSIZE]."
msgstr ""
-#: doc/classes/Control.xml:1008
+#: doc/classes/Control.xml:1010
msgid ""
"Show the system's help mouse cursor when the user hovers the node, a "
"question mark."
msgstr ""
-#: doc/classes/Control.xml:1011
+#: doc/classes/Control.xml:1013
msgid ""
"Snap all 4 anchors to the top-left of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1014
+#: doc/classes/Control.xml:1016
msgid ""
"Snap all 4 anchors to the top-right of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1017
+#: doc/classes/Control.xml:1019
msgid ""
"Snap all 4 anchors to the bottom-left of the parent control's bounds. Use "
"with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1020
+#: doc/classes/Control.xml:1022
msgid ""
"Snap all 4 anchors to the bottom-right of the parent control's bounds. Use "
"with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1023
+#: doc/classes/Control.xml:1025
msgid ""
"Snap all 4 anchors to the center of the left edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1026
+#: doc/classes/Control.xml:1028
msgid ""
"Snap all 4 anchors to the center of the top edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1029
+#: doc/classes/Control.xml:1031
msgid ""
"Snap all 4 anchors to the center of the right edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1032
+#: doc/classes/Control.xml:1034
msgid ""
"Snap all 4 anchors to the center of the bottom edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1035
+#: doc/classes/Control.xml:1037
msgid ""
"Snap all 4 anchors to the center of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1038
+#: doc/classes/Control.xml:1040
msgid ""
"Snap all 4 anchors to the left edge of the parent control. The left margin "
"becomes relative to the left edge and the top margin relative to the top "
"left corner of the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1041
+#: doc/classes/Control.xml:1043
msgid ""
"Snap all 4 anchors to the top edge of the parent control. The left margin "
"becomes relative to the top left corner, the top margin relative to the top "
@@ -14791,14 +14894,14 @@ msgid ""
"parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1044
+#: doc/classes/Control.xml:1046
msgid ""
"Snap all 4 anchors to the right edge of the parent control. The right margin "
"becomes relative to the right edge and the top margin relative to the top "
"right corner of the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1047
+#: doc/classes/Control.xml:1049
msgid ""
"Snap all 4 anchors to the bottom edge of the parent control. The left margin "
"becomes relative to the bottom left corner, the bottom margin relative to "
@@ -14806,19 +14909,19 @@ msgid ""
"the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1050
+#: doc/classes/Control.xml:1052
msgid ""
"Snap all 4 anchors to a vertical line that cuts the parent control in half. "
"Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1053
+#: doc/classes/Control.xml:1055
msgid ""
"Snap all 4 anchors to a horizontal line that cuts the parent control in "
"half. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1056
+#: doc/classes/Control.xml:1058
msgid ""
"Snap all 4 anchors to the respective corners of the parent control. Set all "
"4 margins to 0 after you applied this preset and the [Control] will fit its "
@@ -14826,30 +14929,30 @@ msgid ""
"editor. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1059
+#: doc/classes/Control.xml:1061
msgid "The control will be resized to its minimum size."
msgstr ""
-#: doc/classes/Control.xml:1062
+#: doc/classes/Control.xml:1064
msgid "The control's width will not change."
msgstr ""
-#: doc/classes/Control.xml:1065
+#: doc/classes/Control.xml:1067
msgid "The control's height will not change."
msgstr ""
-#: doc/classes/Control.xml:1068
+#: doc/classes/Control.xml:1070
msgid "The control's size will not change."
msgstr ""
-#: doc/classes/Control.xml:1071
+#: doc/classes/Control.xml:1073
msgid ""
"Tells the parent [Container] to expand the bounds of this node to fill all "
"the available space without pushing any other node. Use with [member "
"size_flags_horizontal] and [member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1074
+#: doc/classes/Control.xml:1076
msgid ""
"Tells the parent [Container] to let this node take all the available space "
"on the axis you flag. If multiple neighboring nodes are set to expand, "
@@ -14858,13 +14961,13 @@ msgid ""
"[member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1077
+#: doc/classes/Control.xml:1079
msgid ""
"Sets the node's size flags to both fill and expand. See the 2 constants "
"above for more information."
msgstr ""
-#: doc/classes/Control.xml:1080
+#: doc/classes/Control.xml:1082
msgid ""
"Tells the parent [Container] to center the node in itself. It centers the "
"control based on its bounding box, so it doesn't work with the fill or "
@@ -14872,7 +14975,7 @@ msgid ""
"size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1083
+#: doc/classes/Control.xml:1085
msgid ""
"Tells the parent [Container] to align the node with its end, either the "
"bottom or the right edge. It doesn't work with the fill or expand size "
@@ -14880,7 +14983,7 @@ msgid ""
"size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1086
+#: doc/classes/Control.xml:1088
msgid ""
"The control will receive mouse button input events through [method "
"_gui_input] if clicked on. And the control will receive the [signal "
@@ -14889,7 +14992,7 @@ msgid ""
"other controls. This also results in blocking signals in other controls."
msgstr ""
-#: doc/classes/Control.xml:1089
+#: doc/classes/Control.xml:1091
msgid ""
"The control will receive mouse button input events through [method "
"_gui_input] if clicked on. And the control will receive the [signal "
@@ -14901,7 +15004,7 @@ msgid ""
"not be fired."
msgstr ""
-#: doc/classes/Control.xml:1092
+#: doc/classes/Control.xml:1094
msgid ""
"The control will not receive mouse button input events through [method "
"_gui_input]. The control will also not receive the [signal mouse_entered] "
@@ -14910,25 +15013,25 @@ msgid ""
"handled automatically."
msgstr ""
-#: doc/classes/Control.xml:1095
+#: doc/classes/Control.xml:1097
msgid ""
"The control will grow to the left or top to make up if its minimum size is "
"changed to be greater than its current size on the respective axis."
msgstr ""
-#: doc/classes/Control.xml:1098
+#: doc/classes/Control.xml:1100
msgid ""
"The control will grow to the right or bottom to make up if its minimum size "
"is changed to be greater than its current size on the respective axis."
msgstr ""
-#: doc/classes/Control.xml:1101
+#: doc/classes/Control.xml:1103
msgid ""
"The control will grow in both directions equally to make up if its minimum "
"size is changed to be greater than its current size."
msgstr ""
-#: doc/classes/Control.xml:1104
+#: doc/classes/Control.xml:1106
msgid ""
"Snaps one of the 4 anchor's sides to the origin of the node's [code]Rect[/"
"code], in the top left. Use it with one of the [code]anchor_*[/code] member "
@@ -14936,7 +15039,7 @@ msgid ""
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1107
+#: doc/classes/Control.xml:1109
msgid ""
"Snaps one of the 4 anchor's sides to the end of the node's [code]Rect[/"
"code], in the bottom right. Use it with one of the [code]anchor_*[/code] "
@@ -16721,7 +16824,7 @@ msgstr ""
msgid ""
"Returns the [Texture2D] associated with the specified [enum DecalTexture]. "
"This is a convenience method, in most cases you should access the texture "
-"directly. \n"
+"directly.\n"
"For example, instead of [code]albedo_tex = $Decal.get_texture(Decal."
"TEXTURE_ALBEDO)[/code], use [code]albedo_tex = $Decal.texture_albedo[/"
"code].\n"
@@ -16737,7 +16840,7 @@ msgstr ""
msgid ""
"Sets the [Texture2D] associated with the specified [enum DecalTexture]. This "
"is a convenience method, in most cases you should access the texture "
-"directly. \n"
+"directly.\n"
"For example, instead of [code]$Decal.set_texture(Decal.TEXTURE_ALBEDO, "
"albedo_tex)[/code], use [code]$Decal.texture_albedo = albedo_tex[/code].\n"
"One case where this is better than accessing the texture directly is when "
@@ -17086,7 +17189,7 @@ msgstr ""
msgid "The light's shadow rendering algorithm. See [enum ShadowMode]."
msgstr ""
-#: doc/classes/DirectionalLight3D.xml:31 doc/classes/RenderingServer.xml:3254
+#: doc/classes/DirectionalLight3D.xml:31 doc/classes/RenderingServer.xml:3250
msgid ""
"Sets the size of the directional shadow pancake. The pancake offsets the "
"start of the shadow's camera frustum to provide a higher effective depth "
@@ -17160,10 +17263,10 @@ msgstr ""
msgid ""
"Directory type. It is used to manage directories and their content (not "
"restricted to the project folder).\n"
-"When creating a new [Directory], its default opened directory will be "
-"[code]res://[/code]. This may change in the future, so it is advised to "
-"always use [method open] to initialize your [Directory] where you want to "
-"operate, with explicit error checking.\n"
+"When creating a new [Directory], it must be explicitly opened using [method "
+"open] before most methods can be used. However, [method file_exists] and "
+"[method dir_exists] can be used without opening a directory. If so, they use "
+"a path relative to [code]res://[/code].\n"
"Here is an example on how to iterate through the files of a directory:\n"
"[codeblock]\n"
"func dir_contents(path):\n"
@@ -17182,7 +17285,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Directory.xml:27 doc/classes/File.xml:25
+#: doc/classes/Directory.xml:27 doc/classes/File.xml:26
msgid ""
"https://docs.godotengine.org/en/latest/getting_started/step_by_step/"
"filesystem.html"
@@ -17216,41 +17319,43 @@ msgstr ""
#: doc/classes/Directory.xml:65
msgid ""
"Returns whether the target directory exists. The argument can be relative to "
-"the current directory, or an absolute path."
+"the current directory, or an absolute path.\n"
+"If the [Directory] is not open, the path is relative to [code]res://[/code]."
msgstr ""
-#: doc/classes/Directory.xml:74
+#: doc/classes/Directory.xml:75
msgid ""
"Returns whether the target file exists. The argument can be relative to the "
-"current directory, or an absolute path."
+"current directory, or an absolute path.\n"
+"If the [Directory] is not open, the path is relative to [code]res://[/code]."
msgstr ""
-#: doc/classes/Directory.xml:81
+#: doc/classes/Directory.xml:83
msgid ""
"Returns the absolute path to the currently opened directory (e.g. "
"[code]res://folder[/code] or [code]C:\\tmp\\folder[/code])."
msgstr ""
-#: doc/classes/Directory.xml:88
+#: doc/classes/Directory.xml:90
msgid ""
"Returns the currently opened directory's drive index. See [method get_drive] "
"to convert returned index to the name of the drive."
msgstr ""
-#: doc/classes/Directory.xml:97
+#: doc/classes/Directory.xml:99
msgid ""
"On Windows, returns the name of the drive (partition) passed as an argument "
"(e.g. [code]C:[/code]). On other platforms, or if the requested drive does "
"not existed, the method returns an empty String."
msgstr ""
-#: doc/classes/Directory.xml:104
+#: doc/classes/Directory.xml:106
msgid ""
"On Windows, returns the number of drives (partitions) mounted on the current "
"filesystem. On other platforms, the method returns 0."
msgstr ""
-#: doc/classes/Directory.xml:111
+#: doc/classes/Directory.xml:113
msgid ""
"Returns the next element (file or directory) in the current directory "
"(including [code].[/code] and [code]..[/code], unless "
@@ -17261,14 +17366,14 @@ msgid ""
"mandatory in such a case)."
msgstr ""
-#: doc/classes/Directory.xml:119
+#: doc/classes/Directory.xml:121
msgid ""
"On UNIX desktop systems, returns the available space on the current "
"directory's disk. On other platforms, this information is not available and "
"the method returns 0 or -1."
msgstr ""
-#: doc/classes/Directory.xml:130
+#: doc/classes/Directory.xml:132
msgid ""
"Initializes the stream used to list all files and directories using the "
"[method get_next] function, closing the current opened stream if needed. "
@@ -17280,13 +17385,13 @@ msgid ""
"out."
msgstr ""
-#: doc/classes/Directory.xml:139
+#: doc/classes/Directory.xml:141
msgid ""
"Closes the current stream opened with [method list_dir_begin] (whether it "
"has been fully processed with [method get_next] or not does not matter)."
msgstr ""
-#: doc/classes/Directory.xml:148
+#: doc/classes/Directory.xml:150
msgid ""
"Creates a directory. The argument can be relative to the current directory, "
"or an absolute path. The target directory should be placed in an already "
@@ -17295,7 +17400,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:158
+#: doc/classes/Directory.xml:160
msgid ""
"Creates a target directory and all necessary intermediate directories in its "
"path, by calling [method make_dir] recursively. The argument can be relative "
@@ -17303,7 +17408,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:168
+#: doc/classes/Directory.xml:170
msgid ""
"Opens an existing directory of the filesystem. The [code]path[/code] "
"argument can be within the project tree ([code]res://folder[/code]), the "
@@ -17312,7 +17417,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:178
+#: doc/classes/Directory.xml:180
msgid ""
"Deletes the target file or an empty directory. The argument can be relative "
"to the current directory, or an absolute path. If the target directory is "
@@ -17320,7 +17425,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:190
+#: doc/classes/Directory.xml:192
msgid ""
"Renames (move) the [code]from[/code] file to the [code]to[/code] "
"destination. Both arguments should be paths to files, either relative or "
@@ -17361,6 +17466,53 @@ msgid ""
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
+#: doc/classes/DisplayServer.xml:530
+msgid ""
+"Return the greatest scale factor of all screens.\n"
+"[b]Note:[/b] On macOS returned value is [code]2.0[/code] if there is at "
+"least one hiDPI (Retina) screen in the system, and [code]1.0[/code] in all "
+"other cases.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:557
+msgid ""
+"Return the scale factor of the specified screen by index.\n"
+"[b]Note:[/b] On macOS returned value is [code]2.0[/code] for hiDPI (Retina) "
+"screen, and [code]1.0[/code] for all other cases.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:630
+msgid ""
+"Returns the on-screen keyboard's height in pixels. Returns 0 if there is no "
+"keyboard or if it is currently hidden."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:637
+msgid "Hides the virtual keyboard if it is shown, does nothing otherwise."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:656
+msgid ""
+"Shows the virtual keyboard if the platform has one.\n"
+"[code]existing_text[/code] parameter is useful for implementing your own "
+"[LineEdit] or [TextEdit], as it tells the virtual keyboard what text has "
+"already been typed (the virtual keyboard uses it for auto-correct and "
+"predictions).\n"
+"[code]position[/code] parameter is the screen space [Rect2] of the edited "
+"text.\n"
+"[code]multiline[/code] parameter needs to be set to [code]true[/code] to be "
+"able to enter multiple lines of text, as in [TextEdit].\n"
+"[code]max_length[/code] limits the number of characters that can be entered "
+"if different from [code]-1[/code].\n"
+"[code]cursor_start[/code] can optionally define the current text cursor "
+"position if [code]cursor_end[/code] is not set.\n"
+"[code]cursor_start[/code] and [code]cursor_end[/code] can optionally define "
+"the current text selection.\n"
+"[b]Note:[/b] This method is implemented on Android, iOS and UWP."
+msgstr ""
+
#: doc/classes/DTLSServer.xml:4
msgid "Helper class to implement a DTLS server."
msgstr ""
@@ -17481,54 +17633,62 @@ msgstr ""
msgid "Adds a fallback font."
msgstr ""
-#: doc/classes/DynamicFont.xml:35
+#: doc/classes/DynamicFont.xml:33
+msgid ""
+"Returns a string containing all the characters available in the main and all "
+"the fallback fonts.\n"
+"If a given character is included in more than one font, it appears only once "
+"in the returned string."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:43
msgid "Returns the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:42
+#: doc/classes/DynamicFont.xml:50
msgid "Returns the number of fallback fonts."
msgstr ""
-#: doc/classes/DynamicFont.xml:51
+#: doc/classes/DynamicFont.xml:59
msgid ""
"Returns the spacing for the given [code]type[/code] (see [enum SpacingType])."
msgstr ""
-#: doc/classes/DynamicFont.xml:60
+#: doc/classes/DynamicFont.xml:68
msgid "Removes the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:71
+#: doc/classes/DynamicFont.xml:79
msgid "Sets the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:82
+#: doc/classes/DynamicFont.xml:90
msgid ""
"Sets the spacing for [code]type[/code] (see [enum SpacingType]) to "
"[code]value[/code] in pixels (not relative to the font size)."
msgstr ""
-#: doc/classes/DynamicFont.xml:88
+#: doc/classes/DynamicFont.xml:96
msgid "Extra spacing at the bottom in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:91
+#: doc/classes/DynamicFont.xml:99
msgid "Extra character spacing in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:94
+#: doc/classes/DynamicFont.xml:102
msgid "Extra space spacing in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:97
+#: doc/classes/DynamicFont.xml:105
msgid "Extra spacing at the top in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:100
+#: doc/classes/DynamicFont.xml:108
msgid "The font data."
msgstr ""
-#: doc/classes/DynamicFont.xml:103
+#: doc/classes/DynamicFont.xml:111
msgid ""
"The font outline's color.\n"
"[b]Note:[/b] It's recommended to leave this at the default value so that you "
@@ -17537,27 +17697,27 @@ msgid ""
"outline modulate theme item."
msgstr ""
-#: doc/classes/DynamicFont.xml:107
+#: doc/classes/DynamicFont.xml:115
msgid "The font outline's thickness in pixels (not relative to the font size)."
msgstr ""
-#: doc/classes/DynamicFont.xml:110
+#: doc/classes/DynamicFont.xml:118
msgid "The font size in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:115
+#: doc/classes/DynamicFont.xml:123
msgid "Spacing at the top."
msgstr ""
-#: doc/classes/DynamicFont.xml:118
+#: doc/classes/DynamicFont.xml:126
msgid "Spacing at the bottom."
msgstr ""
-#: doc/classes/DynamicFont.xml:121
+#: doc/classes/DynamicFont.xml:129
msgid "Character spacing."
msgstr ""
-#: doc/classes/DynamicFont.xml:124
+#: doc/classes/DynamicFont.xml:132
msgid "Space spacing."
msgstr ""
@@ -17939,7 +18099,12 @@ msgstr ""
msgid "Remitted if a resource is reimported."
msgstr ""
-#: doc/classes/EditorFileSystem.xml:106
+#: doc/classes/EditorFileSystem.xml:100
+msgid ""
+"Emitted if at least one resource is reloaded when the filesystem is scanned."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:107
msgid "Emitted if the source of any imported file changed."
msgstr ""
@@ -17981,29 +18146,43 @@ msgstr ""
msgid "Returns the path to the file at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:86
+#: doc/classes/EditorFileSystemDirectory.xml:70
+msgid ""
+"Returns the base class of the script class defined in the file at index "
+"[code]idx[/code]. If the file doesn't define a script class using the "
+"[code]class_name[/code] syntax, this will return an empty string."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:79
+msgid ""
+"Returns the name of the script class defined in the file at index [code]idx[/"
+"code]. If the file doesn't define a script class using the [code]class_name[/"
+"code] syntax, this will return an empty string."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:88
msgid "Returns the file extension of the file at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:93
+#: doc/classes/EditorFileSystemDirectory.xml:95
msgid "Returns the name of this directory."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:100
+#: doc/classes/EditorFileSystemDirectory.xml:102
msgid ""
"Returns the parent directory for this directory or [code]null[/code] if "
"called on a directory at [code]res://[/code] or [code]user://[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:107
+#: doc/classes/EditorFileSystemDirectory.xml:109
msgid "Returns the path to this directory."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:116
+#: doc/classes/EditorFileSystemDirectory.xml:118
msgid "Returns the subdirectory at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:123
+#: doc/classes/EditorFileSystemDirectory.xml:125
msgid "Returns the number of subdirectories in this directory."
msgstr ""
@@ -18094,45 +18273,72 @@ msgstr ""
msgid "Gets the unique name of the importer."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:92
+#: doc/classes/EditorImportPlugin.xml:86
+msgid ""
+"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. For example:\n"
+"[codeblock]\n"
+"func get_option_visibility(option, options):\n"
+" # Only show the lossy quality setting if the compression mode is set to "
+"\"Lossy\".\n"
+" if option == \"compress/lossy_quality\" and options.has(\"compress/mode"
+"\"):\n"
+" return int(options[\"compress/mode\"]) == COMPRESS_LOSSY\n"
+"\n"
+" return true\n"
+"[/codeblock]\n"
+"Return [code]true[/code] to make all options always visible."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:102
msgid ""
"Gets the number of initial presets defined by the plugin. Use [method "
"get_import_options] to get the default options for the preset and [method "
"get_preset_name] to get the name of the preset."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:101
+#: doc/classes/EditorImportPlugin.xml:111
msgid "Gets the name of the options preset at this index."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:108
+#: doc/classes/EditorImportPlugin.xml:118
msgid ""
"Gets the priority of this plugin for the recognized extension. Higher "
"priority plugins will be preferred. The default priority is [code]1.0[/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:115
+#: doc/classes/EditorImportPlugin.xml:125
msgid ""
"Gets the list of file extensions to associate with this loader (case-"
"insensitive). e.g. [code][\"obj\"][/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:122
+#: doc/classes/EditorImportPlugin.xml:132
msgid ""
"Gets the Godot resource type associated with this loader. e.g. [code]\"Mesh"
"\"[/code] or [code]\"Animation\"[/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:129
+#: doc/classes/EditorImportPlugin.xml:139
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:136
+#: doc/classes/EditorImportPlugin.xml:146
msgid "Gets the name to display in the import window."
msgstr ""
+#: doc/classes/EditorImportPlugin.xml:163
+msgid ""
+"Imports [code]source_file[/code] into [code]save_path[/code] with the import "
+"[code]options[/code] specified. The [code]platform_variants[/code] and "
+"[code]gen_files[/code] arrays will be modified by this function.\n"
+"This method must be overridden to do the actual importing work. See this "
+"class' description for an example of overriding this method."
+msgstr ""
+
#: doc/classes/EditorInspector.xml:4
msgid "A tab used to edit properties of the selected node."
msgstr ""
@@ -18148,6 +18354,58 @@ msgid ""
"the singleton using [method EditorInterface.get_inspector]."
msgstr ""
+#: doc/classes/EditorInspector.xml:17
+msgid ""
+"Refreshes the inspector.\n"
+"[b]Note:[/b] To save on CPU resources, calling this method will do nothing "
+"if the time specified in [code]docks/property_editor/auto_refresh_interval[/"
+"code] editor setting hasn't passed yet since this method was last called. "
+"(By default, this interval is set to 0.3 seconds.)"
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:30
+msgid ""
+"Emitted when the Edit button of an [Object] has been pressed in the "
+"inspector. This is mainly used in the remote scene tree inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:37
+msgid "Emitted when a property is removed from the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:44
+msgid "Emitted when a property is edited in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:51
+msgid ""
+"Emitted when a property is keyed in the inspector. Properties can be keyed "
+"by clicking the \"key\" icon next to a property when the Animation panel is "
+"toggled."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:58
+msgid "Emitted when a property is selected in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:67
+msgid ""
+"Emitted when a boolean property is toggled in the inspector.\n"
+"[b]Note:[/b] This signal is never emitted if the internal [code]autoclear[/"
+"code] property enabled. Since this property is always enabled in the editor "
+"inspector, this signal is never emitted by the editor itself."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:77
+msgid "Emitted when a resource is selected in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:82
+msgid ""
+"Emitted when a property that requires a restart to be applied is edited in "
+"the inspector. This is only used in the Project Settings and Editor Settings."
+msgstr ""
+
#: doc/classes/EditorInspectorPlugin.xml:4
msgid "Plugin for adding custom property editors on inspector."
msgstr ""
@@ -18226,91 +18484,155 @@ msgstr ""
#: doc/classes/EditorInterface.xml:26
msgid ""
-"Returns the main container of Godot editor's window. You can use it, for "
-"example, to retrieve the size of the container and place your controls "
+"Returns the main container of Godot editor's window. For example, you can "
+"use it to retrieve the size of the container and place your controls "
"accordingly."
msgstr ""
-#: doc/classes/EditorInterface.xml:39
+#: doc/classes/EditorInterface.xml:33
+msgid "Returns the current path being viewed in the [FileSystemDock]."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:40
msgid "Returns the edited (current) scene's root [Node]."
msgstr ""
-#: doc/classes/EditorInterface.xml:46
-msgid "Returns the [EditorSettings]."
+#: doc/classes/EditorInterface.xml:47
+msgid "Returns the editor's [EditorSettings] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:53
-msgid "Returns the editor [Viewport]."
+#: doc/classes/EditorInterface.xml:54
+msgid ""
+"Returns the main editor control. Use this as a parent for main screens.\n"
+"[b]Note:[/b] This returns the main editor control containing the whole "
+"editor, not the 2D or 3D viewports specifically."
msgstr ""
-#: doc/classes/EditorInterface.xml:72
+#: doc/classes/EditorInterface.xml:62
+msgid "Returns the editor's [FileSystemDock] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:69
+msgid "Returns the editor's [EditorInspector] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:76
msgid "Returns an [Array] with the file paths of the currently opened scenes."
msgstr ""
-#: doc/classes/EditorInterface.xml:79
-msgid "Returns the [EditorFileSystem]."
+#: doc/classes/EditorInterface.xml:83
+msgid ""
+"Returns the name of the scene that is being played. If no scene is currently "
+"being played, returns an empty string."
msgstr ""
-#: doc/classes/EditorInterface.xml:86
-msgid "Returns the [EditorResourcePreview]."
+#: doc/classes/EditorInterface.xml:90
+msgid "Returns the editor's [EditorFileSystem] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:93
-msgid "Returns the [ScriptEditor]."
+#: doc/classes/EditorInterface.xml:97
+msgid "Returns the editor's [EditorResourcePreview] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:104
+msgid "Returns the editor's [ScriptEditor] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:111
+msgid ""
+"Returns the path of the directory currently selected in the "
+"[FileSystemDock]. If a file is selected, its base directory will be returned "
+"using [method String.get_base_dir] instead."
msgstr ""
-#: doc/classes/EditorInterface.xml:106
-msgid "Returns the [EditorSelection]."
+#: doc/classes/EditorInterface.xml:118
+msgid "Returns the editor's [EditorSelection] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:117
+#: doc/classes/EditorInterface.xml:129
msgid ""
-"Shows the given property on the given [code]object[/code] in the Editor's "
+"Shows the given property on the given [code]object[/code] in the editor's "
"Inspector dock."
msgstr ""
-#: doc/classes/EditorInterface.xml:126
+#: doc/classes/EditorInterface.xml:136
msgid ""
-"Returns the enabled status of a plugin. The plugin name is the same as its "
-"directory name."
+"Returns [code]true[/code] if a scene is currently being played, [code]false[/"
+"code] otherwise. Paused scenes are considered as being played."
msgstr ""
-#: doc/classes/EditorInterface.xml:137
+#: doc/classes/EditorInterface.xml:145
+msgid ""
+"Returns [code]true[/code] if the specified [code]plugin[/code] is enabled. "
+"The plugin name is the same as its directory name."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:156
msgid ""
"Returns mesh previews rendered at the given size as an [Array] of "
"[Texture2D]s."
msgstr ""
-#: doc/classes/EditorInterface.xml:146
+#: doc/classes/EditorInterface.xml:165
msgid "Opens the scene at the given path."
msgstr ""
-#: doc/classes/EditorInterface.xml:155
+#: doc/classes/EditorInterface.xml:172
+msgid "Plays the currently active scene."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:181
+msgid "Plays the scene specified by its filepath."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:188
+msgid "Plays the main scene."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:197
msgid "Reloads the scene at the given path."
msgstr ""
-#: doc/classes/EditorInterface.xml:162
+#: doc/classes/EditorInterface.xml:204
msgid ""
"Saves the scene. Returns either [code]OK[/code] or [code]ERR_CANT_CREATE[/"
"code] (see [@GlobalScope] constants)."
msgstr ""
-#: doc/classes/EditorInterface.xml:173
+#: doc/classes/EditorInterface.xml:215
msgid "Saves the scene as a file at [code]path[/code]."
msgstr ""
-#: doc/classes/EditorInterface.xml:182
+#: doc/classes/EditorInterface.xml:224
msgid ""
"Selects the file, with the path provided by [code]file[/code], in the "
"FileSystem dock."
msgstr ""
-#: doc/classes/EditorInterface.xml:201
+#: doc/classes/EditorInterface.xml:233
+msgid ""
+"Sets the editor's current main screen to the one specified in [code]name[/"
+"code]. [code]name[/code] must match the text of the tab in question exactly "
+"([code]2D[/code], [code]3D[/code], [code]Script[/code], [code]AssetLib[/"
+"code])."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:244
msgid ""
"Sets the enabled status of a plugin. The plugin name is the same as its "
"directory name."
msgstr ""
+#: doc/classes/EditorInterface.xml:251
+msgid "Stops the scene that is currently playing."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:257
+msgid ""
+"If [code]true[/code], enables distraction-free mode which hides side docks "
+"to increase the space available for the main view."
+msgstr ""
+
#: doc/classes/EditorNode3DGizmo.xml:4
msgid "Custom gizmo for editing Node3D objects."
msgstr ""
@@ -18322,14 +18644,20 @@ msgid ""
"information."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:26
+#: doc/classes/EditorNode3DGizmo.xml:18
+msgid ""
+"Adds the specified [code]segments[/code] to the gizmo's collision shape for "
+"picking. Call this function during [method redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:27
msgid ""
"Adds collision triangles to the gizmo for picking. A [TriangleMesh] can be "
"generated from a regular [Mesh] too. Call this function during [method "
"redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:41
+#: doc/classes/EditorNode3DGizmo.xml:42
msgid ""
"Adds a list of handles (points) which can be used to deform the object being "
"edited.\n"
@@ -18337,20 +18665,33 @@ msgid ""
"handles. Call this function during [method redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:57
+#: doc/classes/EditorNode3DGizmo.xml:58
msgid ""
"Adds lines to the gizmo (as sets of 2 points), with a given material. The "
"lines are used for visualizing the gizmo. Call this function during [method "
"redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:84
+#: doc/classes/EditorNode3DGizmo.xml:73
+msgid ""
+"Adds a mesh to the gizmo with the specified [code]billboard[/code] state, "
+"[code]skeleton[/code] and [code]material[/code]. If [code]billboard[/code] "
+"is [code]true[/code], the mesh will rotate to always face the camera. Call "
+"this function during [method redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:86
msgid ""
"Adds an unscaled billboard for visualization. Call this function during "
"[method redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:103
+#: doc/classes/EditorNode3DGizmo.xml:93
+msgid ""
+"Removes everything in the gizmo including meshes, collisions and handles."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:106
msgid ""
"Commit a handle being edited (handles must have been previously added by "
"[method add_handles]).\n"
@@ -18358,40 +18699,42 @@ msgid ""
"restore the edited value to the original is provided."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:113
+#: doc/classes/EditorNode3DGizmo.xml:116
msgid ""
"Gets the name of an edited handle (handles must have been previously added "
"by [method add_handles]).\n"
"Handles can be named for reference to the user when editing."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:123
+#: doc/classes/EditorNode3DGizmo.xml:126
msgid ""
"Gets actual value of a handle. This value can be anything and used for "
"eventually undoing the motion when calling [method commit_handle]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:130
+#: doc/classes/EditorNode3DGizmo.xml:133
msgid ""
"Returns the [EditorNode3DGizmoPlugin] that owns this gizmo. It's useful to "
"retrieve materials using [method EditorNode3DGizmoPlugin.get_material]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:137
+#: doc/classes/EditorNode3DGizmo.xml:140
msgid "Returns the Node3D node associated with this gizmo."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:146
-msgid "Gets whether a handle is highlighted or not."
+#: doc/classes/EditorNode3DGizmo.xml:149
+msgid ""
+"Returns [code]true[/code] if the handle at index [code]index[/code] is "
+"highlighted by being hovered with the mouse."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:153
+#: doc/classes/EditorNode3DGizmo.xml:156
msgid ""
-"This function is called when the Node3D this gizmo refers to changes (the "
+"This function is called when the [Node3D] this gizmo refers to changes (the "
"[method Node3D.update_gizmo] is called)."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:166
+#: doc/classes/EditorNode3DGizmo.xml:169
msgid ""
"This function is used when the user drags a gizmo handle (previously added "
"with [method add_handles]) in screen coordinates.\n"
@@ -18399,6 +18742,18 @@ msgid ""
"raycasts."
msgstr ""
+#: doc/classes/EditorNode3DGizmo.xml:179
+msgid ""
+"Sets the gizmo's hidden state. If [code]true[/code], the gizmo will be "
+"hidden. If [code]false[/code], it will be shown."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:188
+msgid ""
+"Sets the reference [Node3D] node for the gizmo. [code]node[/code] must "
+"inherit from [Node3D]."
+msgstr ""
+
#: doc/classes/EditorNode3DGizmoPlugin.xml:4
msgid "Used by the editor to define Node3D gizmo types."
msgstr ""
@@ -18491,7 +18846,17 @@ msgid ""
"visibility menu."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:150
+#: doc/classes/EditorNode3DGizmoPlugin.xml:142
+msgid ""
+"Override this method to set the gizmo's priority. Higher values correspond "
+"to higher priority. If a gizmo with higher priority conflicts with another "
+"gizmo, only the gizmo with higher priority will be used.\n"
+"All built-in editor gizmos return a priority of [code]-1[/code]. If not "
+"overridden, this method will return [code]0[/code], which means custom "
+"gizmos will automatically override built-in gizmos."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:152
msgid ""
"Override this method to define which Node3D nodes have a gizmo from this "
"plugin. Whenever a [Node3D] node is added to a scene this method is called, "
@@ -18499,25 +18864,25 @@ msgid ""
"assigned and is added to this plugin's list of active gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:161
+#: doc/classes/EditorNode3DGizmoPlugin.xml:163
msgid ""
"Gets whether a handle is highlighted or not. Called for this plugin's active "
"gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:168
+#: doc/classes/EditorNode3DGizmoPlugin.xml:170
msgid ""
"Override this method to define whether Node3D with this gizmo should be "
"selecteble even when the gizmo is hidden."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:177
+#: doc/classes/EditorNode3DGizmoPlugin.xml:179
msgid ""
"Callback to redraw the provided gizmo. Called for this plugin's active "
"gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:192
+#: doc/classes/EditorNode3DGizmoPlugin.xml:194
msgid ""
"Update the value of a handle after it has been updated. Called for this "
"plugin's active gizmos."
@@ -18604,7 +18969,13 @@ msgid ""
"should be cleaned up using [code]remove_tool_menu_item(name)[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:149
+#: doc/classes/EditorPlugin.xml:151
+msgid ""
+"Registers a custom translation parser plugin for extracting translatable "
+"strings from custom files."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:158
msgid ""
"This method is called when the editor is about to save the project, switch "
"to another tab, etc. It asks the plugin to apply any pending state changes "
@@ -18613,32 +18984,32 @@ msgid ""
"must apply the shader code being written by the user to the object."
msgstr ""
-#: doc/classes/EditorPlugin.xml:163
+#: doc/classes/EditorPlugin.xml:172
msgid ""
"Clear all the state and reset the object being edited to zero. This ensures "
"your plugin does not keep editing a currently existing node, or a node from "
"the wrong scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:170
+#: doc/classes/EditorPlugin.xml:179
msgid ""
"Called by the engine when the user disables the [EditorPlugin] in the Plugin "
"tab of the project settings window."
msgstr ""
-#: doc/classes/EditorPlugin.xml:179
+#: doc/classes/EditorPlugin.xml:188
msgid ""
"This function is used for plugins that edit specific object types (nodes or "
"resources). It requests the editor to edit the given object."
msgstr ""
-#: doc/classes/EditorPlugin.xml:186
+#: doc/classes/EditorPlugin.xml:195
msgid ""
"Called by the engine when the user enables the [EditorPlugin] in the Plugin "
"tab of the project settings window."
msgstr ""
-#: doc/classes/EditorPlugin.xml:211
+#: doc/classes/EditorPlugin.xml:220
msgid ""
"Called when there is a root node in the current edited scene, [method "
"handles] is implemented and an [InputEvent] happens in the 2D viewport. "
@@ -18663,7 +19034,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:237
+#: doc/classes/EditorPlugin.xml:246
msgid ""
"Called when there is a root node in the current edited scene, [method "
"handles] is implemented and an [InputEvent] happens in the 3D viewport. "
@@ -18688,20 +19059,20 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:259
+#: doc/classes/EditorPlugin.xml:268
msgid ""
"This is for editors that edit script-based objects. You can return a list of "
"breakpoints in the format ([code]script:line[/code]), for example: "
"[code]res://path_to_script.gd:25[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:266
+#: doc/classes/EditorPlugin.xml:275
msgid ""
"Returns the [EditorInterface] object that gives you control over Godot "
"editor's window and its functionalities."
msgstr ""
-#: doc/classes/EditorPlugin.xml:273
+#: doc/classes/EditorPlugin.xml:282
msgid ""
"Override this method in your plugin to return a [Texture2D] in order to give "
"it an icon.\n"
@@ -18719,7 +19090,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:289
+#: doc/classes/EditorPlugin.xml:298
msgid ""
"Override this method in your plugin to provide the name of the plugin when "
"displayed in the Godot editor.\n"
@@ -18727,33 +19098,33 @@ msgid ""
"of the \"2D\", \"3D\", \"Script\", and \"AssetLib\" buttons."
msgstr ""
-#: doc/classes/EditorPlugin.xml:297
+#: doc/classes/EditorPlugin.xml:306
msgid ""
"Gets the Editor's dialogue used for making scripts.\n"
"[b]Note:[/b] Users can configure it before use."
msgstr ""
-#: doc/classes/EditorPlugin.xml:305
+#: doc/classes/EditorPlugin.xml:314
msgid ""
"Gets the state of your plugin editor. This is used when saving the scene (so "
"state is kept when opening it again) and for switching tabs (so state can be "
"restored when the tab returns)."
msgstr ""
-#: doc/classes/EditorPlugin.xml:312
+#: doc/classes/EditorPlugin.xml:321
msgid ""
"Gets the undo/redo object. Most actions in the editor can be undoable, so "
"use this object to make sure this happens when it's worth it."
msgstr ""
-#: doc/classes/EditorPlugin.xml:321
+#: doc/classes/EditorPlugin.xml:330
msgid ""
"Gets the GUI layout of the plugin. This is used to save the project's editor "
"layout when [method queue_save_layout] is called or the editor layout was "
"changed(For example changing the position of a dock)."
msgstr ""
-#: doc/classes/EditorPlugin.xml:330
+#: doc/classes/EditorPlugin.xml:339
msgid ""
"Implement this function if your plugin edits a specific type of object "
"(Resource or Node). If you return [code]true[/code], then you will get the "
@@ -18763,14 +19134,14 @@ msgid ""
"be called too."
msgstr ""
-#: doc/classes/EditorPlugin.xml:337
+#: doc/classes/EditorPlugin.xml:346
msgid ""
"Returns [code]true[/code] if this is a main screen editor plugin (it goes in "
"the workspace selector together with [b]2D[/b], [b]3D[/b], [b]Script[/b] and "
"[b]AssetLib[/b])."
msgstr ""
-#: doc/classes/EditorPlugin.xml:360
+#: doc/classes/EditorPlugin.xml:369
msgid ""
"This function will be called when the editor is requested to become visible. "
"It is used for plugins that edit a specific object type.\n"
@@ -18778,85 +19149,89 @@ msgid ""
"manually."
msgstr ""
-#: doc/classes/EditorPlugin.xml:368
+#: doc/classes/EditorPlugin.xml:377
msgid "Queue save the project's editor layout."
msgstr ""
-#: doc/classes/EditorPlugin.xml:377
+#: doc/classes/EditorPlugin.xml:386
msgid "Removes an Autoload [code]name[/code] from the list."
msgstr ""
-#: doc/classes/EditorPlugin.xml:386
+#: doc/classes/EditorPlugin.xml:395
msgid ""
"Removes the control from the bottom panel. You have to manually [method Node."
"queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:397
+#: doc/classes/EditorPlugin.xml:406
msgid ""
"Removes the control from the specified container. You have to manually "
"[method Node.queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:406
+#: doc/classes/EditorPlugin.xml:415
msgid ""
"Removes the control from the dock. You have to manually [method Node."
"queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:415
+#: doc/classes/EditorPlugin.xml:424
msgid "Removes a custom type added by [method add_custom_type]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:464
+#: doc/classes/EditorPlugin.xml:473
msgid "Removes a menu [code]name[/code] from [b]Project > Tools[/b]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:471
+#: doc/classes/EditorPlugin.xml:482
+msgid "Removes a registered custom translation parser plugin."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:489
msgid ""
"This method is called after the editor saves the project or when it's "
"closed. It asks the plugin to save edited external scenes/resources."
msgstr ""
-#: doc/classes/EditorPlugin.xml:484
+#: doc/classes/EditorPlugin.xml:502
msgid ""
"Use this method if you always want to receive inputs from 3D view screen "
"inside [method forward_spatial_gui_input]. It might be especially usable if "
"your plugin will want to use raycast in the scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:493
+#: doc/classes/EditorPlugin.xml:511
msgid "Restore the state saved by [method get_state]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:502
+#: doc/classes/EditorPlugin.xml:520
msgid "Restore the plugin GUI layout saved by [method get_window_layout]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:509
+#: doc/classes/EditorPlugin.xml:527
msgid "Updates the overlays of the editor (2D/3D) viewport."
msgstr ""
-#: doc/classes/EditorPlugin.xml:518
+#: doc/classes/EditorPlugin.xml:536
msgid ""
"Emitted when user changes the workspace ([b]2D[/b], [b]3D[/b], [b]Script[/"
"b], [b]AssetLib[/b]). Also works with custom screens defined by plugins."
msgstr ""
-#: doc/classes/EditorPlugin.xml:531
+#: doc/classes/EditorPlugin.xml:549
msgid ""
"Emitted when the scene is changed in the editor. The argument will return "
"the root node of the scene that has just become active. If this scene is new "
"and empty, the argument will be [code]null[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:538
+#: doc/classes/EditorPlugin.xml:556
msgid ""
"Emitted when user closes a scene. The argument is file path to a closed "
"scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:584
+#: doc/classes/EditorPlugin.xml:602
msgid "Represents the size of the [enum DockSlot] enum."
msgstr ""
@@ -18911,64 +19286,83 @@ msgid "When this virtual function is called, you must update your editor."
msgstr ""
#: doc/classes/EditorProperty.xml:76
-msgid "Used by the inspector, set when property is checkable."
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is "
+"checkable."
msgstr ""
#: doc/classes/EditorProperty.xml:79
-msgid "Used by the inspector, when the property is checked."
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is checked."
msgstr ""
-#: doc/classes/EditorProperty.xml:84
-msgid "Used by the inspector, when the property must draw with error color."
+#: doc/classes/EditorProperty.xml:82
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property can be "
+"deleted by the user."
msgstr ""
-#: doc/classes/EditorProperty.xml:87
-msgid "Used by the inspector, when the property can add keys for animation."
+#: doc/classes/EditorProperty.xml:85
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property must draw "
+"with error color. This is used for editable children's properties."
msgstr ""
-#: doc/classes/EditorProperty.xml:90
-msgid "Sets this property to change the label (if you want to show one)."
+#: doc/classes/EditorProperty.xml:88
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property can add "
+"keys for animation."
msgstr ""
-#: doc/classes/EditorProperty.xml:93
-msgid "Used by the inspector, when the property is read-only."
+#: doc/classes/EditorProperty.xml:91
+msgid "Set this property to change the label (if you want to show one)."
msgstr ""
-#: doc/classes/EditorProperty.xml:103
+#: doc/classes/EditorProperty.xml:94
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is read-"
+"only."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:104
msgid ""
"Emit it if you want multiple properties modified at the same time. Do not "
"use if added via [method EditorInspectorPlugin.parse_property]."
msgstr ""
-#: doc/classes/EditorProperty.xml:112
+#: doc/classes/EditorProperty.xml:113
msgid "Used by sub-inspectors. Emit it if what was selected was an Object ID."
msgstr ""
-#: doc/classes/EditorProperty.xml:121
+#: doc/classes/EditorProperty.xml:122
msgid ""
"Do not emit this manually, use the [method emit_changed] method instead."
msgstr ""
-#: doc/classes/EditorProperty.xml:130
+#: doc/classes/EditorProperty.xml:131
msgid "Emitted when a property was checked. Used internally."
msgstr ""
-#: doc/classes/EditorProperty.xml:143
+#: doc/classes/EditorProperty.xml:138
+msgid "Emitted when a property was deleted. Used internally."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:145
msgid ""
"Emit it if you want to add this value as an animation key (check for keying "
"being enabled first)."
msgstr ""
-#: doc/classes/EditorProperty.xml:152
+#: doc/classes/EditorProperty.xml:154
msgid "Emit it if you want to key a property with a single value."
msgstr ""
-#: doc/classes/EditorProperty.xml:161
+#: doc/classes/EditorProperty.xml:163
msgid ""
"If you want a sub-resource to be edited, emit this signal with the resource."
msgstr ""
-#: doc/classes/EditorProperty.xml:170
+#: doc/classes/EditorProperty.xml:172
msgid "Emitted when selected. Used internally."
msgstr ""
@@ -19253,17 +19647,26 @@ msgstr ""
msgid ""
"Object that holds the project-independent editor settings. These settings "
"are generally visible in the [b]Editor > Editor Settings[/b] menu.\n"
-"Accessing the settings is done by using the regular [Object] API, such as:\n"
-"[codeblock]\n"
-"settings.set(prop,value)\n"
-"settings.get(prop)\n"
-"list_of_settings = settings.get_property_list()\n"
+"Property names use slash delimiters to distinguish sections. Setting values "
+"can be of any [Variant] type. It's recommended to use [code]snake_case[/"
+"code] for editor settings to be consistent with the Godot editor itself.\n"
+"Accessing the settings can be done using the following methods, such as:\n"
+"[codeblock]\n"
+"# `settings.set(\"some/property\", value)` also works as this class "
+"overrides `_set()` internally.\n"
+"settings.set_setting(\"some/property\",value)\n"
+"\n"
+"# `settings.get(\"some/property\", value)` also works as this class "
+"overrides `_get()` internally.\n"
+"settings.get_setting(\"some/property\")\n"
+"\n"
+"var list_of_settings = settings.get_property_list()\n"
"[/codeblock]\n"
"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
"the singleton using [method EditorInterface.get_editor_settings]."
msgstr ""
-#: doc/classes/EditorSettings.xml:25
+#: doc/classes/EditorSettings.xml:30
msgid ""
"Adds a custom property info to a property. The dictionary must contain:\n"
"- [code]name[/code]: [String] (the name of the property)\n"
@@ -19285,52 +19688,173 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorSettings.xml:50
-msgid "Erase a given setting (pass full property path)."
+#: doc/classes/EditorSettings.xml:55
+msgid "Erases the setting whose name is specified by [code]property[/code]."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:62
+msgid "Returns the list of favorite files and directories for this project."
msgstr ""
-#: doc/classes/EditorSettings.xml:57
-msgid "Gets the list of favorite files and directories for this project."
+#: doc/classes/EditorSettings.xml:75
+msgid ""
+"Returns project-specific metadata for the [code]section[/code] and "
+"[code]key[/code] specified. If the metadata doesn't exist, [code]default[/"
+"code] will be returned instead. See also [method set_project_metadata]."
msgstr ""
-#: doc/classes/EditorSettings.xml:76
+#: doc/classes/EditorSettings.xml:82
msgid ""
-"Gets the specific project settings path. Projects all have a unique sub-"
-"directory inside the settings path where project specific settings are saved."
+"Returns the project-specific settings path. Projects all have a unique "
+"subdirectory inside the settings path where project-specific settings are "
+"saved."
msgstr ""
-#: doc/classes/EditorSettings.xml:83
+#: doc/classes/EditorSettings.xml:89
msgid ""
-"Gets the list of recently visited folders in the file dialog for this "
+"Returns the list of recently visited folders in the file dialog for this "
"project."
msgstr ""
#: doc/classes/EditorSettings.xml:98
msgid ""
+"Returns the value of the setting specified by [code]name[/code]. This is "
+"equivalent to using [method Object.get] on the EditorSettings instance."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:105
+msgid ""
"Gets the global settings path for the engine. Inside this path, you can find "
"some standard paths such as:\n"
"[code]settings/tmp[/code] - Used for temporary storage of files\n"
"[code]settings/templates[/code] - Where export templates are located"
msgstr ""
-#: doc/classes/EditorSettings.xml:133
+#: doc/classes/EditorSettings.xml:116
+msgid ""
+"Returns [code]true[/code] if the setting specified by [code]name[/code] "
+"exists, [code]false[/code] otherwise."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:125
+msgid ""
+"Returns [code]true[/code] if the setting specified by [code]name[/code] can "
+"have its value reverted to the default value, [code]false[/code] otherwise. "
+"When this method returns [code]true[/code], a Revert button will display "
+"next to the setting in the Editor Settings."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:134
+msgid ""
+"Returns the default value of the setting specified by [code]name[/code]. "
+"This is the value that would be applied when clicking the Revert button in "
+"the Editor Settings."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:143
msgid "Sets the list of favorite files and directories for this project."
msgstr ""
-#: doc/classes/EditorSettings.xml:166
+#: doc/classes/EditorSettings.xml:156
+msgid ""
+"Sets the initial value of the setting specified by [code]name[/code] to "
+"[code]value[/code]. This is used to provide a value for the Revert button in "
+"the Editor Settings. If [code]update_current[/code] is true, the current "
+"value of the setting will be set to [code]value[/code] as well."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:169
+msgid ""
+"Sets project-specific metadata with the [code]section[/code], [code]key[/"
+"code] and [code]data[/code] specified. This metadata is stored outside the "
+"project folder and therefore won't be checked into version control. See also "
+"[method get_project_metadata]."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:178
msgid ""
"Sets the list of recently visited folders in the file dialog for this "
"project."
msgstr ""
-#: doc/classes/EditorSettings.xml:183
-msgid "Emitted when editor settings change."
+#: doc/classes/EditorSettings.xml:189
+msgid ""
+"Sets the [code]value[/code] of the setting specified by [code]name[/code]. "
+"This is equivalent to using [method Object.set] on the EditorSettings "
+"instance."
msgstr ""
-#: doc/classes/EditorSettings.xml:189
+#: doc/classes/EditorSettings.xml:196
+msgid "Emitted after any editor setting has changed."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:202
+msgid ""
+"Emitted after any editor setting has changed. It's used by various editor "
+"plugins to update their visuals on theme changes or logic on configuration "
+"changes."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:4
+msgid ""
+"Plugin for adding custom parsers to extract strings that are to be "
+"translated from custom files (.csv, .json etc.)."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:7
+msgid ""
+"Plugins are registered via [method EditorPlugin."
+"add_translation_parser_plugin] method. To define the parsing and string "
+"extraction logic, override the [method parse_file] method in script.\n"
+"The extracted strings will be written into a POT file selected by user under "
+"\"POT Generation\" in \"Localization\" tab in \"Project Settings\" menu.\n"
+"Below shows an example of a custom parser that extracts strings in a CSV "
+"file to write into a POT.\n"
+"[codeblock]\n"
+"tool\n"
+"extends EditorTranslationParserPlugin\n"
+"\n"
+"\n"
+"func parse_file(path, extracted_strings):\n"
+" var file = File.new()\n"
+" file.open(path, File.READ)\n"
+" var text = file.get_as_text()\n"
+" var split_strs = text.split(\",\", false, 0)\n"
+" for s in split_strs:\n"
+" extracted_strings.append(s)\n"
+" #print(\"Extracted string: \" + s)\n"
+"\n"
+"\n"
+"func get_recognized_extensions():\n"
+" return [\"csv\"]\n"
+"[/codeblock]\n"
+"[b]Note:[/b] If you override parsing logic for standard script types "
+"(GDScript, C#, etc.), it would be better to load the [code]path[/code] "
+"argument using [method ResourceLoader.load]. This is because built-in "
+"scripts are loaded as [Resource] type, not [File] type.\n"
+"For example:\n"
+"[codeblock]\n"
+"func parse_file(path, extracted_strings):\n"
+" var res = ResourceLoader.load(path, \"Script\")\n"
+" var text = res.get_source_code()\n"
+" # Parsing logic.\n"
+"\n"
+"\n"
+"func get_recognized_extensions():\n"
+" return [\"gd\"]\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:48
+msgid ""
+"Gets the list of file extensions to associate with this parser, e.g. [code]"
+"[\"csv\"][/code]."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:59
msgid ""
-"Emitted when editor settings change. It used by various editor plugins to "
-"update their visuals on theme changes or logic on configuration changes."
+"Override this method to define a custom parsing logic to extract the "
+"translatable strings."
msgstr ""
#: doc/classes/EditorVCSInterface.xml:4
@@ -19941,15 +20465,15 @@ msgid ""
"to 1.3 to compensate for the lack of HDR rendering."
msgstr ""
-#: doc/classes/Environment.xml:190
+#: doc/classes/Environment.xml:214
msgid "The [Sky] resource used for this [Environment]."
msgstr ""
-#: doc/classes/Environment.xml:197
+#: doc/classes/Environment.xml:221
msgid "The depth tolerance for screen-space reflections."
msgstr ""
-#: doc/classes/Environment.xml:200
+#: doc/classes/Environment.xml:224
msgid ""
"If [code]true[/code], screen-space reflections are enabled. Screen-space "
"reflections are more accurate than reflections from [GIProbe]s or "
@@ -19957,48 +20481,48 @@ msgid ""
"others."
msgstr ""
-#: doc/classes/Environment.xml:203
+#: doc/classes/Environment.xml:227
msgid ""
"The fade-in distance for screen-space reflections. Affects the area from the "
"reflected material to the screen-space reflection)."
msgstr ""
-#: doc/classes/Environment.xml:206
+#: doc/classes/Environment.xml:230
msgid ""
"The fade-out distance for screen-space reflections. Affects the area from "
"the screen-space reflection to the \"global\" reflection."
msgstr ""
-#: doc/classes/Environment.xml:209
+#: doc/classes/Environment.xml:233
msgid ""
"The maximum number of steps for screen-space reflections. Higher values are "
"slower."
msgstr ""
-#: doc/classes/Environment.xml:212
+#: doc/classes/Environment.xml:236
msgid ""
"The screen-space ambient occlusion intensity on materials that have an AO "
"texture defined. Values higher than [code]0[/code] will make the SSAO effect "
"visible in areas darkened by AO textures."
msgstr ""
-#: doc/classes/Environment.xml:215
+#: doc/classes/Environment.xml:239
msgid ""
"The screen-space ambient occlusion bias. This should be kept high enough to "
"prevent \"smooth\" curves from being affected by ambient occlusion."
msgstr ""
-#: doc/classes/Environment.xml:218
+#: doc/classes/Environment.xml:242
msgid ""
"The screen-space ambient occlusion blur quality. See [enum SSAOBlur] for "
"possible values."
msgstr ""
-#: doc/classes/Environment.xml:221
+#: doc/classes/Environment.xml:245
msgid "The screen-space ambient occlusion edge sharpness."
msgstr ""
-#: doc/classes/Environment.xml:224
+#: doc/classes/Environment.xml:248
msgid ""
"If [code]true[/code], the screen-space ambient occlusion effect is enabled. "
"This darkens objects' corners and cavities to simulate ambient light not "
@@ -20009,13 +20533,13 @@ msgid ""
"issues."
msgstr ""
-#: doc/classes/Environment.xml:227
+#: doc/classes/Environment.xml:251
msgid ""
"The primary screen-space ambient occlusion intensity. See also [member "
"ssao_radius]."
msgstr ""
-#: doc/classes/Environment.xml:230
+#: doc/classes/Environment.xml:254
msgid ""
"The screen-space ambient occlusion intensity in direct light. In real life, "
"ambient occlusion only applies to indirect light, which means its effects "
@@ -20023,46 +20547,46 @@ msgid ""
"the SSAO effect visible in direct light."
msgstr ""
-#: doc/classes/Environment.xml:233
+#: doc/classes/Environment.xml:257
msgid "The primary screen-space ambient occlusion radius."
msgstr ""
-#: doc/classes/Environment.xml:236
+#: doc/classes/Environment.xml:260
msgid "The default exposure used for tonemapping."
msgstr ""
-#: doc/classes/Environment.xml:239
+#: doc/classes/Environment.xml:263
msgid ""
"The tonemapping mode to use. Tonemapping is the process that \"converts\" "
"HDR values to be suitable for rendering on a LDR display. (Godot doesn't "
"support rendering on HDR displays yet.)"
msgstr ""
-#: doc/classes/Environment.xml:242
+#: doc/classes/Environment.xml:266
msgid ""
"The white reference value for tonemapping. Only effective if the [member "
"tonemap_mode] isn't set to [constant TONE_MAPPER_LINEAR]."
msgstr ""
-#: doc/classes/Environment.xml:247
+#: doc/classes/Environment.xml:271
msgid ""
"Clears the background using the clear color defined in [member "
"ProjectSettings.rendering/environment/default_clear_color]."
msgstr ""
-#: doc/classes/Environment.xml:250
+#: doc/classes/Environment.xml:274
msgid "Clears the background using a custom clear color."
msgstr ""
-#: doc/classes/Environment.xml:253
+#: doc/classes/Environment.xml:277
msgid "Displays a user-defined sky in the background."
msgstr ""
-#: doc/classes/Environment.xml:256
+#: doc/classes/Environment.xml:280
msgid "Displays a [CanvasLayer] in the background."
msgstr ""
-#: doc/classes/Environment.xml:259
+#: doc/classes/Environment.xml:283
msgid ""
"Keeps on screen every pixel drawn in the background. This is the fastest "
"background mode, but it can only be safely used in fully-interior scenes (no "
@@ -20070,107 +20594,107 @@ msgid ""
"is visible, \"ghost trail\" artifacts will be visible when moving the camera."
msgstr ""
-#: doc/classes/Environment.xml:262 doc/classes/RenderingServer.xml:3446
+#: doc/classes/Environment.xml:286 doc/classes/RenderingServer.xml:3457
msgid "Displays a camera feed in the background."
msgstr ""
-#: doc/classes/Environment.xml:265
+#: doc/classes/Environment.xml:289
msgid "Represents the size of the [enum BGMode] enum."
msgstr ""
-#: doc/classes/Environment.xml:268 doc/classes/RenderingServer.xml:3452
+#: doc/classes/Environment.xml:292 doc/classes/RenderingServer.xml:3463
msgid ""
"Gather ambient light from whichever source is specified as the background."
msgstr ""
-#: doc/classes/Environment.xml:271 doc/classes/RenderingServer.xml:3455
+#: doc/classes/Environment.xml:295 doc/classes/RenderingServer.xml:3466
msgid "Disable ambient light."
msgstr ""
-#: doc/classes/Environment.xml:274 doc/classes/RenderingServer.xml:3458
+#: doc/classes/Environment.xml:298 doc/classes/RenderingServer.xml:3469
msgid "Specify a specific [Color] for ambient light."
msgstr ""
-#: doc/classes/Environment.xml:277 doc/classes/RenderingServer.xml:3461
+#: doc/classes/Environment.xml:301 doc/classes/RenderingServer.xml:3472
msgid ""
"Gather ambient light from the [Sky] regardless of what the background is."
msgstr ""
-#: doc/classes/Environment.xml:280 doc/classes/RenderingServer.xml:3464
+#: doc/classes/Environment.xml:304 doc/classes/RenderingServer.xml:3475
msgid "Use the background for reflections."
msgstr ""
-#: doc/classes/Environment.xml:283 doc/classes/RenderingServer.xml:3467
+#: doc/classes/Environment.xml:307 doc/classes/RenderingServer.xml:3478
msgid "Disable reflections."
msgstr ""
-#: doc/classes/Environment.xml:286 doc/classes/RenderingServer.xml:3470
+#: doc/classes/Environment.xml:310 doc/classes/RenderingServer.xml:3481
msgid "Use the [Sky] for reflections regardless of what the background is."
msgstr ""
-#: doc/classes/Environment.xml:289 doc/classes/RenderingServer.xml:3473
+#: doc/classes/Environment.xml:313
+msgid ""
+"Linear tonemapper operator. Reads the linear data and passes it on "
+"unmodified."
+msgstr ""
+
+#: doc/classes/Environment.xml:316
+msgid ""
+"Reinhardt tonemapper operator. Performs a variation on rendered pixels' "
+"colors by this formula: [code]color = color / (1 + color)[/code]."
+msgstr ""
+
+#: doc/classes/Environment.xml:319
+msgid "Filmic tonemapper operator."
+msgstr ""
+
+#: doc/classes/Environment.xml:322
+msgid "Academy Color Encoding System tonemapper operator."
+msgstr ""
+
+#: doc/classes/Environment.xml:325 doc/classes/RenderingServer.xml:3484
msgid ""
"Additive glow blending mode. Mostly used for particles, glows (bloom), lens "
"flare, bright sources."
msgstr ""
-#: doc/classes/Environment.xml:292 doc/classes/RenderingServer.xml:3476
+#: doc/classes/Environment.xml:328 doc/classes/RenderingServer.xml:3487
msgid ""
"Screen glow blending mode. Increases brightness, used frequently with bloom."
msgstr ""
-#: doc/classes/Environment.xml:295 doc/classes/RenderingServer.xml:3479
+#: doc/classes/Environment.xml:331 doc/classes/RenderingServer.xml:3490
msgid ""
"Soft light glow blending mode. Modifies contrast, exposes shadows and "
"highlights (vivid bloom)."
msgstr ""
-#: doc/classes/Environment.xml:298 doc/classes/RenderingServer.xml:3482
+#: doc/classes/Environment.xml:334 doc/classes/RenderingServer.xml:3493
msgid ""
"Replace glow blending mode. Replaces all pixels' color by the glow value. "
"This can be used to simulate a full-screen blur effect by tweaking the glow "
"parameters to match the original image's brightness."
msgstr ""
-#: doc/classes/Environment.xml:301 doc/classes/RenderingServer.xml:3485
+#: doc/classes/Environment.xml:337 doc/classes/RenderingServer.xml:3496
msgid ""
"Mixes the glow with the underlying color to avoid increasing brightness as "
"much while still maintaining a glow effect."
msgstr ""
-#: doc/classes/Environment.xml:304
-msgid ""
-"Linear tonemapper operator. Reads the linear data and passes it on "
-"unmodified."
-msgstr ""
-
-#: doc/classes/Environment.xml:307
-msgid ""
-"Reinhardt tonemapper operator. Performs a variation on rendered pixels' "
-"colors by this formula: [code]color = color / (1 + color)[/code]."
-msgstr ""
-
-#: doc/classes/Environment.xml:310
-msgid "Filmic tonemapper operator."
-msgstr ""
-
-#: doc/classes/Environment.xml:313
-msgid "Academy Color Encoding System tonemapper operator."
-msgstr ""
-
-#: doc/classes/Environment.xml:316
+#: doc/classes/Environment.xml:340
msgid "No blur for the screen-space ambient occlusion effect (fastest)."
msgstr ""
-#: doc/classes/Environment.xml:319
+#: doc/classes/Environment.xml:343
msgid "1×1 blur for the screen-space ambient occlusion effect."
msgstr ""
-#: doc/classes/Environment.xml:322
+#: doc/classes/Environment.xml:346
msgid "2×2 blur for the screen-space ambient occlusion effect."
msgstr ""
-#: doc/classes/Environment.xml:325
+#: doc/classes/Environment.xml:349
msgid ""
"3×3 blur for the screen-space ambient occlusion effect. Increases the radius "
"of the blur for a smoother look, but can result in checkerboard-like "
@@ -20255,14 +20779,17 @@ msgid ""
" var content = file.get_as_text()\n"
" file.close()\n"
" return content\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"In the example above, the file will be saved in the user data folder as "
+"specified in the [url=https://docs.godotengine.org/en/latest/tutorials/io/"
+"data_paths.html]Data paths[/url] documentation."
msgstr ""
-#: doc/classes/File.xml:32
+#: doc/classes/File.xml:33
msgid "Closes the currently opened file."
msgstr ""
-#: doc/classes/File.xml:39
+#: doc/classes/File.xml:40
msgid ""
"Returns [code]true[/code] if the file cursor has read past the end of the "
"file.\n"
@@ -20273,7 +20800,7 @@ msgid ""
"get_position] to implement a custom logic."
msgstr ""
-#: doc/classes/File.xml:49
+#: doc/classes/File.xml:50
msgid ""
"Returns [code]true[/code] if the file exists in the given path.\n"
"[b]Note:[/b] Many resources types are imported (e.g. textures or sound "
@@ -20286,41 +20813,41 @@ msgid ""
"source asset is present in [code]res://[/code], but fail when exported)."
msgstr ""
-#: doc/classes/File.xml:57
+#: doc/classes/File.xml:58
msgid ""
"Returns the next 16 bits from the file as an integer. See [method store_16] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:64
+#: doc/classes/File.xml:65
msgid ""
"Returns the next 32 bits from the file as an integer. See [method store_32] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:71
+#: doc/classes/File.xml:72
msgid ""
"Returns the next 64 bits from the file as an integer. See [method store_64] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:78
+#: doc/classes/File.xml:79
msgid ""
"Returns the next 8 bits from the file as an integer. See [method store_8] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:85
+#: doc/classes/File.xml:86
msgid ""
"Returns the whole file as a [String].\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:95
+#: doc/classes/File.xml:96
msgid "Returns next [code]len[/code] bytes of the file as a [PackedByteArray]."
msgstr ""
-#: doc/classes/File.xml:104
+#: doc/classes/File.xml:105
msgid ""
"Returns the next value of the file in CSV (Comma-Separated Values) format. "
"You can pass a different delimiter [code]delim[/code] to use other than the "
@@ -20329,37 +20856,37 @@ msgid ""
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:112
+#: doc/classes/File.xml:113
msgid "Returns the next 64 bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:119
+#: doc/classes/File.xml:120
msgid ""
"Returns the last error that happened when trying to perform operations. "
"Compare with the [code]ERR_FILE_*[/code] constants from [enum Error]."
msgstr ""
-#: doc/classes/File.xml:126
+#: doc/classes/File.xml:127
msgid "Returns the next 32 bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:133
+#: doc/classes/File.xml:134
msgid "Returns the size of the file in bytes."
msgstr ""
-#: doc/classes/File.xml:140
+#: doc/classes/File.xml:141
msgid ""
"Returns the next line of the file as a [String].\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:150
+#: doc/classes/File.xml:151
msgid ""
"Returns an MD5 String representing the file at the given path or an empty "
"[String] on failure."
msgstr ""
-#: doc/classes/File.xml:159
+#: doc/classes/File.xml:160
msgid ""
"Returns the last time the [code]file[/code] was modified in unix timestamp "
"format or returns a [String] \"ERROR IN [code]file[/code]\". This unix "
@@ -20367,35 +20894,35 @@ msgid ""
"get_datetime_from_unix_time]."
msgstr ""
-#: doc/classes/File.xml:166
+#: doc/classes/File.xml:167
msgid ""
"Returns a [String] saved in Pascal format from the file.\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:174
+#: doc/classes/File.xml:175
msgid "Returns the path as a [String] for the current open file."
msgstr ""
-#: doc/classes/File.xml:181
+#: doc/classes/File.xml:182
msgid "Returns the absolute path as a [String] for the current open file."
msgstr ""
-#: doc/classes/File.xml:188
+#: doc/classes/File.xml:189
msgid "Returns the file cursor's position."
msgstr ""
-#: doc/classes/File.xml:195
+#: doc/classes/File.xml:196
msgid "Returns the next bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:204
+#: doc/classes/File.xml:205
msgid ""
"Returns a SHA-256 [String] representing the file at the given path or an "
"empty [String] on failure."
msgstr ""
-#: doc/classes/File.xml:213
+#: doc/classes/File.xml:214
msgid ""
"Returns the next [Variant] value from the file. If [code]allow_objects[/"
"code] is [code]true[/code], decoding objects is allowed.\n"
@@ -20404,37 +20931,38 @@ msgid ""
"to avoid potential security threats such as remote code execution."
msgstr ""
-#: doc/classes/File.xml:221
+#: doc/classes/File.xml:222
msgid "Returns [code]true[/code] if the file is currently opened."
msgstr ""
-#: doc/classes/File.xml:232
+#: doc/classes/File.xml:233
msgid "Opens the file for writing or reading, depending on the flags."
msgstr ""
-#: doc/classes/File.xml:245
+#: doc/classes/File.xml:246
msgid "Opens a compressed file for reading or writing."
msgstr ""
-#: doc/classes/File.xml:258
+#: doc/classes/File.xml:259
msgid ""
"Opens an encrypted file in write or read mode. You need to pass a binary key "
-"to encrypt/decrypt it."
+"to encrypt/decrypt it.\n"
+"[b]Note:[/b] The provided key must be 32 bytes long."
msgstr ""
-#: doc/classes/File.xml:271
+#: doc/classes/File.xml:273
msgid ""
"Opens an encrypted file in write or read mode. You need to pass a password "
"to encrypt/decrypt it."
msgstr ""
-#: doc/classes/File.xml:280
+#: doc/classes/File.xml:282
msgid ""
"Changes the file reading/writing cursor to the specified position (in bytes "
"from the beginning of the file)."
msgstr ""
-#: doc/classes/File.xml:289
+#: doc/classes/File.xml:291
msgid ""
"Changes the file reading/writing cursor to the specified position (in bytes "
"from the end of the file).\n"
@@ -20442,7 +20970,7 @@ msgid ""
"cursor will be at the end of the file."
msgstr ""
-#: doc/classes/File.xml:299
+#: doc/classes/File.xml:301
msgid ""
"Stores an integer as 16 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, "
@@ -20470,7 +20998,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/File.xml:328
+#: doc/classes/File.xml:330
msgid ""
"Stores an integer as 32 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, "
@@ -20479,14 +21007,14 @@ msgid ""
"(see [method store_16] for an example)."
msgstr ""
-#: doc/classes/File.xml:339
+#: doc/classes/File.xml:341
msgid ""
"Stores an integer as 64 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] must lie in the interval [code][-2^63, "
"2^63 - 1][/code] (i.e. be a valid [int] value)."
msgstr ""
-#: doc/classes/File.xml:349
+#: doc/classes/File.xml:351
msgid ""
"Stores an integer as 8 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, 255]"
@@ -20495,11 +21023,11 @@ msgid ""
"(see [method store_16] for an example)."
msgstr ""
-#: doc/classes/File.xml:360
+#: doc/classes/File.xml:362
msgid "Stores the given array of bytes in the file."
msgstr ""
-#: doc/classes/File.xml:371
+#: doc/classes/File.xml:373
msgid ""
"Store the given [PackedStringArray] in the file as a line formatted in the "
"CSV (Comma-Separated Values) format. You can pass a different delimiter "
@@ -20508,45 +21036,45 @@ msgid ""
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:381
+#: doc/classes/File.xml:383
msgid "Stores a floating-point number as 64 bits in the file."
msgstr ""
-#: doc/classes/File.xml:390
+#: doc/classes/File.xml:392
msgid "Stores a floating-point number as 32 bits in the file."
msgstr ""
-#: doc/classes/File.xml:399
+#: doc/classes/File.xml:401
msgid ""
"Stores the given [String] as a line in the file.\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:409
+#: doc/classes/File.xml:411
msgid ""
"Stores the given [String] as a line in the file in Pascal format (i.e. also "
"store the length of the string).\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:419
+#: doc/classes/File.xml:421
msgid "Stores a floating-point number in the file."
msgstr ""
-#: doc/classes/File.xml:428
+#: doc/classes/File.xml:430
msgid ""
"Stores the given [String] in the file.\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:440
+#: doc/classes/File.xml:442
msgid ""
"Stores any Variant value in the file. If [code]full_objects[/code] is "
"[code]true[/code], encoding objects is allowed (and can potentially include "
"code)."
msgstr ""
-#: doc/classes/File.xml:446
+#: doc/classes/File.xml:448
msgid ""
"If [code]true[/code], the file's endianness is swapped. Use this if you're "
"dealing with files written on big-endian machines.\n"
@@ -20554,44 +21082,44 @@ msgid ""
"reset to [code]false[/code] whenever you open the file."
msgstr ""
-#: doc/classes/File.xml:452
+#: doc/classes/File.xml:454
msgid "Opens the file for read operations."
msgstr ""
-#: doc/classes/File.xml:455
+#: doc/classes/File.xml:457
msgid ""
"Opens the file for write operations. Create it if the file does not exist "
"and truncate if it exists."
msgstr ""
-#: doc/classes/File.xml:458
+#: doc/classes/File.xml:460
msgid ""
"Opens the file for read and write operations. Does not truncate the file."
msgstr ""
-#: doc/classes/File.xml:461
+#: doc/classes/File.xml:463
msgid ""
"Opens the file for read and write operations. Create it if the file does not "
"exist and truncate if it exists."
msgstr ""
-#: doc/classes/File.xml:464
+#: doc/classes/File.xml:466
msgid "Uses the [url=http://fastlz.org/]FastLZ[/url] compression method."
msgstr ""
-#: doc/classes/File.xml:467
+#: doc/classes/File.xml:469
msgid ""
"Uses the [url=https://en.wikipedia.org/wiki/DEFLATE]DEFLATE[/url] "
"compression method."
msgstr ""
-#: doc/classes/File.xml:470
+#: doc/classes/File.xml:472
msgid ""
"Uses the [url=https://facebook.github.io/zstd/]Zstandard[/url] compression "
"method."
msgstr ""
-#: doc/classes/File.xml:473
+#: doc/classes/File.xml:475
msgid "Uses the [url=https://www.gzip.org/]gzip[/url] compression method."
msgstr ""
@@ -20807,10 +21335,11 @@ msgid ""
"Draw [code]string[/code] into a canvas item using the font at a given "
"position, with [code]modulate[/code] color, and optionally clipping the "
"width. [code]position[/code] specifies the baseline, not the top. To draw "
-"from the top, [i]ascent[/i] must be added to the Y axis."
+"from the top, [i]ascent[/i] must be added to the Y axis.\n"
+"See also [method CanvasItem.draw_string]."
msgstr ""
-#: doc/classes/Font.xml:47
+#: doc/classes/Font.xml:48
msgid ""
"Draw character [code]char[/code] into a canvas item using the font at a "
"given position, with [code]modulate[/code] color, and optionally kerning if "
@@ -20820,39 +21349,39 @@ msgid ""
"making this function useful for drawing strings character by character."
msgstr ""
-#: doc/classes/Font.xml:54
+#: doc/classes/Font.xml:55
msgid "Returns the font ascent (number of pixels above the baseline)."
msgstr ""
-#: doc/classes/Font.xml:65
+#: doc/classes/Font.xml:66
msgid ""
"Returns the size of a character, optionally taking kerning into account if "
"the next character is provided."
msgstr ""
-#: doc/classes/Font.xml:72
+#: doc/classes/Font.xml:73
msgid "Returns the font descent (number of pixels below the baseline)."
msgstr ""
-#: doc/classes/Font.xml:79
+#: doc/classes/Font.xml:80
msgid "Returns the total font height (ascent plus descent) in pixels."
msgstr ""
-#: doc/classes/Font.xml:88
+#: doc/classes/Font.xml:89
msgid "Returns the size of a string, taking kerning and advance into account."
msgstr ""
-#: doc/classes/Font.xml:99
+#: doc/classes/Font.xml:100
msgid ""
"Returns the size that the string would have with word wrapping enabled with "
"a fixed [code]width[/code]."
msgstr ""
-#: doc/classes/Font.xml:106
+#: doc/classes/Font.xml:107
msgid "Returns [code]true[/code] if the font has an outline."
msgstr ""
-#: doc/classes/Font.xml:119
+#: doc/classes/Font.xml:120
msgid ""
"After editing a font (changing size, ascent, char rects, etc.). Call this "
"function to propagate changes to controls that might use it."
@@ -21024,13 +21553,14 @@ msgstr ""
#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:7
msgid ""
-"Calling [method @GDScript.yield] within a function will cause that function "
-"to yield and return its current state as an object of this type. The yielded "
+"FIXME: Outdated docs as of GDScript rewrite in 4.0.\n"
+"Calling [code]yield[/code] within a function will cause that function to "
+"yield and return its current state as an object of this type. The yielded "
"function call can then be resumed later by calling [method resume] on this "
"state object."
msgstr ""
-#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:18
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:19
msgid ""
"Check whether the function call may be resumed. This is not the case if the "
"function state was already resumed.\n"
@@ -21041,12 +21571,12 @@ msgid ""
"script have survived up to that point."
msgstr ""
-#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:28
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:29
msgid ""
"Resume execution of the yielded function call.\n"
-"If handed an argument, return the argument from the [method @GDScript.yield] "
-"call in the yielded function call. You can pass e.g. an [Array] to hand "
-"multiple arguments.\n"
+"If handed an argument, return the argument from the [code]yield[/code] call "
+"in the yielded function call. You can pass e.g. an [Array] to hand multiple "
+"arguments.\n"
"This function returns what the resumed function call returns, possibly "
"another function state if yielded again."
msgstr ""
@@ -21615,10 +22145,20 @@ msgid ""
"code], see [enum PolyJoinType].\n"
"The operation may result in an outer polygon (boundary) and inner polygon "
"(hole) produced which could be distinguished by calling [method "
-"is_polygon_clockwise]."
+"is_polygon_clockwise].\n"
+"[b]Note:[/b] To translate the polygon's vertices specifically, use the "
+"[method Transform2D.xform] method:\n"
+"[codeblock]\n"
+"var polygon = PackedVector2Array([Vector2(0, 0), Vector2(100, 0), "
+"Vector2(100, 100), Vector2(0, 100)])\n"
+"var offset = Vector2(50, 50)\n"
+"polygon = Transform2D(0, offset).xform(polygon)\n"
+"print(polygon) # prints [Vector2(50, 50), Vector2(150, 50), Vector2(150, "
+"150), Vector2(50, 150)]\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/Geometry2D.xml:217
+#: doc/classes/Geometry2D.xml:224
msgid ""
"Inflates or deflates [code]polyline[/code] by [code]delta[/code] units "
"(pixels), producing polygons. If [code]delta[/code] is positive, makes the "
@@ -21634,13 +22174,13 @@ msgid ""
"is_polygon_clockwise]."
msgstr ""
-#: doc/classes/Geometry2D.xml:235
+#: doc/classes/Geometry2D.xml:242
msgid ""
"Returns if [code]point[/code] is inside the triangle specified by [code]a[/"
"code], [code]b[/code] and [code]c[/code]."
msgstr ""
-#: doc/classes/Geometry2D.xml:250
+#: doc/classes/Geometry2D.xml:257
msgid ""
"Checks if the two segments ([code]from_a[/code], [code]to_a[/code]) and "
"([code]from_b[/code], [code]to_b[/code]) intersect. If yes, return the point "
@@ -21648,7 +22188,7 @@ msgid ""
"empty [Variant]."
msgstr ""
-#: doc/classes/Geometry2D.xml:259
+#: doc/classes/Geometry2D.xml:266
msgid ""
"Triangulates the area specified by discrete set of [code]points[/code] such "
"that no point is inside the circumcircle of any resulting triangle. Returns "
@@ -21659,7 +22199,7 @@ msgid ""
"[PackedInt32Array] is returned."
msgstr ""
-#: doc/classes/Geometry2D.xml:268
+#: doc/classes/Geometry2D.xml:275
msgid ""
"Triangulates the polygon specified by the points in [code]polygon[/code]. "
"Returns a [PackedInt32Array] where each triangle consists of three "
@@ -21669,40 +22209,40 @@ msgid ""
"[PackedInt32Array] is returned."
msgstr ""
-#: doc/classes/Geometry2D.xml:274
+#: doc/classes/Geometry2D.xml:281
msgid ""
"Create regions where either subject or clip polygons (or both) are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:277
+#: doc/classes/Geometry2D.xml:284
msgid ""
"Create regions where subject polygons are filled except where clip polygons "
"are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:280
+#: doc/classes/Geometry2D.xml:287
msgid "Create regions where both subject and clip polygons are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:283
+#: doc/classes/Geometry2D.xml:290
msgid ""
"Create regions where either subject or clip polygons are filled but not "
"where both are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:286
+#: doc/classes/Geometry2D.xml:293
msgid ""
"Squaring is applied uniformally at all convex edge joins at [code]1 * delta[/"
"code]."
msgstr ""
-#: doc/classes/Geometry2D.xml:289
+#: doc/classes/Geometry2D.xml:296
msgid ""
"While flattened paths can never perfectly trace an arc, they are "
"approximated by a series of arc chords."
msgstr ""
-#: doc/classes/Geometry2D.xml:292
+#: doc/classes/Geometry2D.xml:299
msgid ""
"There's a necessary limit to mitered joins since offsetting edges that join "
"at very acute angles will produce excessively long and narrow \"spikes\". "
@@ -21710,27 +22250,27 @@ msgid ""
"distance, \"square\" joining is applied."
msgstr ""
-#: doc/classes/Geometry2D.xml:295
+#: doc/classes/Geometry2D.xml:302
msgid ""
"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
"as a polygon."
msgstr ""
-#: doc/classes/Geometry2D.xml:298
+#: doc/classes/Geometry2D.xml:305
msgid ""
"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
"as a polyline."
msgstr ""
-#: doc/classes/Geometry2D.xml:301
+#: doc/classes/Geometry2D.xml:308
msgid "Endpoints are squared off with no extension."
msgstr ""
-#: doc/classes/Geometry2D.xml:304
+#: doc/classes/Geometry2D.xml:311
msgid "Endpoints are squared off and extended by [code]delta[/code] units."
msgstr ""
-#: doc/classes/Geometry2D.xml:307
+#: doc/classes/Geometry2D.xml:314
msgid "Endpoints are rounded off and extended by [code]delta[/code] units."
msgstr ""
@@ -21960,7 +22500,7 @@ msgstr ""
msgid ""
"Bakes the effect from all [GeometryInstance3D]s marked with [constant "
"GeometryInstance3D.GI_MODE_BAKED] and [Light3D]s marked with either "
-"[constant Light3D.BAKE_INDIRECT] or [constant Light3D.BAKE_ALL]. If "
+"[constant Light3D.BAKE_DYNAMIC] or [constant Light3D.BAKE_STATIC]. If "
"[code]create_visual_debug[/code] is [code]true[/code], after baking the "
"light, this will generate a [MultiMesh] that has a cube representing each "
"solid cell with each cube colored to the cell's albedo color. This can be "
@@ -22847,121 +23387,119 @@ msgstr ""
msgid "Clear all cells."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:53
+#: modules/gridmap/doc_classes/GridMap.xml:49
msgid ""
-"The [MeshLibrary] item index located at the grid-based X, Y and Z "
-"coordinates. If the cell is empty, [constant INVALID_CELL_ITEM] will be "
-"returned."
+"The [MeshLibrary] item index located at the given grid coordinates. If the "
+"cell is empty, [constant INVALID_CELL_ITEM] will be returned."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:66
+#: modules/gridmap/doc_classes/GridMap.xml:58
msgid ""
-"The orientation of the cell at the grid-based X, Y and Z coordinates. -1 is "
-"returned if the cell is empty."
+"The orientation of the cell at the given grid coordinates. [code]-1[/code] "
+"is returned if the cell is empty."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:75 doc/classes/PhysicsBody2D.xml:35
+#: modules/gridmap/doc_classes/GridMap.xml:67 doc/classes/PhysicsBody2D.xml:35
#: doc/classes/PhysicsBody3D.xml:35
msgid "Returns an individual bit on the [member collision_layer]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:84 doc/classes/PhysicsBody2D.xml:44
+#: modules/gridmap/doc_classes/GridMap.xml:76 doc/classes/PhysicsBody2D.xml:44
#: doc/classes/PhysicsBody3D.xml:44
msgid "Returns an individual bit on the [member collision_mask]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:91
+#: modules/gridmap/doc_classes/GridMap.xml:83
msgid ""
"Returns an array of [Transform] and [Mesh] references corresponding to the "
"non-empty cells in the grid. The transforms are specified in world space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:98
+#: modules/gridmap/doc_classes/GridMap.xml:90
msgid ""
"Returns an array of [Vector3] with the non-empty cell coordinates in the "
"grid map."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:121
+#: modules/gridmap/doc_classes/GridMap.xml:109
msgid ""
"Returns the position of a grid cell in the GridMap's local coordinate space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:146
+#: modules/gridmap/doc_classes/GridMap.xml:130
msgid ""
-"Sets the mesh index for the cell referenced by its grid-based X, Y and Z "
-"coordinates.\n"
+"Sets the mesh index for the cell referenced by its grid coordinates.\n"
"A negative item index such as [constant INVALID_CELL_ITEM] will clear the "
"cell.\n"
"Optionally, the item's orientation can be passed. For valid orientation "
"values, see [method Basis.get_orthogonal_index]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:173
+#: modules/gridmap/doc_classes/GridMap.xml:157
msgid "Sets an individual bit on the [member collision_layer]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:184
+#: modules/gridmap/doc_classes/GridMap.xml:168
msgid "Sets an individual bit on the [member collision_mask]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:193
+#: modules/gridmap/doc_classes/GridMap.xml:177
msgid ""
"Returns the coordinates of the grid cell containing the given point.\n"
"[code]pos[/code] should be in the GridMap's local coordinate space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:200
+#: modules/gridmap/doc_classes/GridMap.xml:184
msgid "If [code]true[/code], grid items are centered on the X axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:203
+#: modules/gridmap/doc_classes/GridMap.xml:187
msgid "If [code]true[/code], grid items are centered on the Y axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:206
+#: modules/gridmap/doc_classes/GridMap.xml:190
msgid "If [code]true[/code], grid items are centered on the Z axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:209
+#: modules/gridmap/doc_classes/GridMap.xml:193
msgid ""
"The size of each octant measured in number of cells. This applies to all "
"three axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:212
+#: modules/gridmap/doc_classes/GridMap.xml:196
msgid ""
"The scale of the cell items.\n"
"This does not affect the size of the grid cells themselves, only the items "
"in them. This can be used to make cell items overlap their neighbors."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:216
+#: modules/gridmap/doc_classes/GridMap.xml:200
msgid ""
"The dimensions of the grid's cells.\n"
"This does not affect the size of the meshes. See [member cell_scale]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:220
+#: modules/gridmap/doc_classes/GridMap.xml:204
msgid ""
"The physics layers this GridMap is in.\n"
"GridMaps act as static bodies, meaning they aren't affected by gravity or "
"other forces. They only affect other physics bodies that collide with them."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:224
+#: modules/gridmap/doc_classes/GridMap.xml:208
msgid "The physics layers this GridMap detects collisions in."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:227
+#: modules/gridmap/doc_classes/GridMap.xml:211
msgid "The assigned [MeshLibrary]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:235
+#: modules/gridmap/doc_classes/GridMap.xml:219
msgid "Emitted when [member cell_size] changes."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:241
+#: modules/gridmap/doc_classes/GridMap.xml:225
msgid ""
"Invalid cell item that can be used in [method set_cell_item] to clear cells "
"(or represent an empty cell in [method get_cell_item])."
@@ -23326,27 +23864,33 @@ msgid ""
"server's side.\n"
"For more information on HTTP, see https://developer.mozilla.org/en-US/docs/"
"Web/HTTP (or read RFC 2616 to get it straight from the source: https://tools."
-"ietf.org/html/rfc2616)."
+"ietf.org/html/rfc2616).\n"
+"[b]Note:[/b] When performing HTTP requests from a project exported to HTML5, "
+"keep in mind the remote server may not allow requests from foreign origins "
+"due to [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/"
+"url]. If you host the server in question, you should modify its backend to "
+"allow requests from foreign origins by adding the [code]Access-Control-Allow-"
+"Origin: *[/code] HTTP header."
msgstr ""
-#: doc/classes/HTTPClient.xml:13
+#: doc/classes/HTTPClient.xml:14
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/"
"http_client_class.html"
msgstr ""
-#: doc/classes/HTTPClient.xml:14 doc/classes/HTTPRequest.xml:62
+#: doc/classes/HTTPClient.xml:15 doc/classes/HTTPRequest.xml:71
#: doc/classes/StreamPeerSSL.xml:10
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/ssl_certificates."
"html"
msgstr ""
-#: doc/classes/HTTPClient.xml:21
+#: doc/classes/HTTPClient.xml:22
msgid "Closes the current connection, allowing reuse of this [HTTPClient]."
msgstr ""
-#: doc/classes/HTTPClient.xml:36
+#: doc/classes/HTTPClient.xml:37
msgid ""
"Connects to a host. This needs to be done before any requests are sent.\n"
"The host should not have http:// prepended but will strip the protocol "
@@ -23358,7 +23902,7 @@ msgid ""
"[code]true[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:46
+#: doc/classes/HTTPClient.xml:47
msgid ""
"Returns the response's body length.\n"
"[b]Note:[/b] Some Web servers may not send a body length. In this case, the "
@@ -23366,15 +23910,15 @@ msgid ""
"the body length will also be [code]-1[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:54
+#: doc/classes/HTTPClient.xml:55
msgid "Returns the response's HTTP status code."
msgstr ""
-#: doc/classes/HTTPClient.xml:61
+#: doc/classes/HTTPClient.xml:62
msgid "Returns the response headers."
msgstr ""
-#: doc/classes/HTTPClient.xml:68
+#: doc/classes/HTTPClient.xml:69
msgid ""
"Returns all response headers as a Dictionary of structure [code]{ \"key\": "
"\"value1; value2\" }[/code] where the case-sensitivity of the keys and "
@@ -23389,27 +23933,27 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:82
+#: doc/classes/HTTPClient.xml:83
msgid ""
"Returns a [enum Status] constant. Need to call [method poll] in order to get "
"status updates."
msgstr ""
-#: doc/classes/HTTPClient.xml:89
+#: doc/classes/HTTPClient.xml:90
msgid "If [code]true[/code], this [HTTPClient] has a response available."
msgstr ""
-#: doc/classes/HTTPClient.xml:96
+#: doc/classes/HTTPClient.xml:97
msgid "If [code]true[/code], this [HTTPClient] has a response that is chunked."
msgstr ""
-#: doc/classes/HTTPClient.xml:103
+#: doc/classes/HTTPClient.xml:104
msgid ""
"This needs to be called in order to have any request processed. Check "
"results with [method get_status]."
msgstr ""
-#: doc/classes/HTTPClient.xml:112
+#: doc/classes/HTTPClient.xml:113
msgid ""
"Generates a GET/POST application/x-www-form-urlencoded style query string "
"from a provided dictionary, e.g.:\n"
@@ -23429,11 +23973,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:130
+#: doc/classes/HTTPClient.xml:131
msgid "Reads one chunk from the response."
msgstr ""
-#: doc/classes/HTTPClient.xml:145
+#: doc/classes/HTTPClient.xml:146
msgid ""
"Sends a request to the connected host. The URL parameter is just the part "
"after the host, so for [code]http://somehost.com/index.php[/code], it is "
@@ -23451,7 +23995,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:168
+#: doc/classes/HTTPClient.xml:169
msgid ""
"Sends a raw request to the connected host. The URL parameter is just the "
"part after the host, so for [code]http://somehost.com/index.php[/code], it "
@@ -23461,43 +24005,43 @@ msgid ""
"Sends the body data raw, as a byte array and does not encode it in any way."
msgstr ""
-#: doc/classes/HTTPClient.xml:176
+#: doc/classes/HTTPClient.xml:177
msgid ""
"If [code]true[/code], execution will block until all data is read from the "
"response."
msgstr ""
-#: doc/classes/HTTPClient.xml:179
+#: doc/classes/HTTPClient.xml:180
msgid "The connection to use for this client."
msgstr ""
-#: doc/classes/HTTPClient.xml:182
+#: doc/classes/HTTPClient.xml:183
msgid ""
"The size of the buffer used and maximum bytes to read per iteration. See "
"[method read_response_body_chunk]."
msgstr ""
-#: doc/classes/HTTPClient.xml:187
+#: doc/classes/HTTPClient.xml:188
msgid ""
"HTTP GET method. The GET method requests a representation of the specified "
"resource. Requests using GET should only retrieve data."
msgstr ""
-#: doc/classes/HTTPClient.xml:190
+#: doc/classes/HTTPClient.xml:191
msgid ""
"HTTP HEAD method. The HEAD method asks for a response identical to that of a "
"GET request, but without the response body. This is useful to request "
"metadata like HTTP headers or to check if a resource exists."
msgstr ""
-#: doc/classes/HTTPClient.xml:193
+#: doc/classes/HTTPClient.xml:194
msgid ""
"HTTP POST method. The POST method is used to submit an entity to the "
"specified resource, often causing a change in state or side effects on the "
"server. This is often used for forms and submitting data or uploading files."
msgstr ""
-#: doc/classes/HTTPClient.xml:196
+#: doc/classes/HTTPClient.xml:197
msgid ""
"HTTP PUT method. The PUT method asks to replace all current representations "
"of the target resource with the request payload. (You can think of POST as "
@@ -23505,103 +24049,103 @@ msgid ""
"not make a clear distinction or change their meaning)."
msgstr ""
-#: doc/classes/HTTPClient.xml:199
+#: doc/classes/HTTPClient.xml:200
msgid ""
"HTTP DELETE method. The DELETE method requests to delete the specified "
"resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:202
+#: doc/classes/HTTPClient.xml:203
msgid ""
"HTTP OPTIONS method. The OPTIONS method asks for a description of the "
"communication options for the target resource. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:205
+#: doc/classes/HTTPClient.xml:206
msgid ""
"HTTP TRACE method. The TRACE method performs a message loop-back test along "
"the path to the target resource. Returns the entire HTTP request received in "
"the response body. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:208
+#: doc/classes/HTTPClient.xml:209
msgid ""
"HTTP CONNECT method. The CONNECT method establishes a tunnel to the server "
"identified by the target resource. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:211
+#: doc/classes/HTTPClient.xml:212
msgid ""
"HTTP PATCH method. The PATCH method is used to apply partial modifications "
"to a resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:214
+#: doc/classes/HTTPClient.xml:215
msgid "Represents the size of the [enum Method] enum."
msgstr ""
-#: doc/classes/HTTPClient.xml:217
+#: doc/classes/HTTPClient.xml:218
msgid "Status: Disconnected from the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:220
+#: doc/classes/HTTPClient.xml:221
msgid "Status: Currently resolving the hostname for the given URL into an IP."
msgstr ""
-#: doc/classes/HTTPClient.xml:223
+#: doc/classes/HTTPClient.xml:224
msgid "Status: DNS failure: Can't resolve the hostname for the given URL."
msgstr ""
-#: doc/classes/HTTPClient.xml:226
+#: doc/classes/HTTPClient.xml:227
msgid "Status: Currently connecting to server."
msgstr ""
-#: doc/classes/HTTPClient.xml:229
+#: doc/classes/HTTPClient.xml:230
msgid "Status: Can't connect to the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:232
+#: doc/classes/HTTPClient.xml:233
msgid "Status: Connection established."
msgstr ""
-#: doc/classes/HTTPClient.xml:235
+#: doc/classes/HTTPClient.xml:236
msgid "Status: Currently sending request."
msgstr ""
-#: doc/classes/HTTPClient.xml:238
+#: doc/classes/HTTPClient.xml:239
msgid "Status: HTTP body received."
msgstr ""
-#: doc/classes/HTTPClient.xml:241
+#: doc/classes/HTTPClient.xml:242
msgid "Status: Error in HTTP connection."
msgstr ""
-#: doc/classes/HTTPClient.xml:244
+#: doc/classes/HTTPClient.xml:245
msgid "Status: Error in SSL handshake."
msgstr ""
-#: doc/classes/HTTPClient.xml:247
+#: doc/classes/HTTPClient.xml:248
msgid ""
"HTTP status code [code]100 Continue[/code]. Interim response that indicates "
"everything so far is OK and that the client should continue with the request "
"(or ignore this status if already finished)."
msgstr ""
-#: doc/classes/HTTPClient.xml:250
+#: doc/classes/HTTPClient.xml:251
msgid ""
"HTTP status code [code]101 Switching Protocol[/code]. Sent in response to an "
"[code]Upgrade[/code] request header by the client. Indicates the protocol "
"the server is switching to."
msgstr ""
-#: doc/classes/HTTPClient.xml:253
+#: doc/classes/HTTPClient.xml:254
msgid ""
"HTTP status code [code]102 Processing[/code] (WebDAV). Indicates that the "
"server has received and is processing the request, but no response is "
"available yet."
msgstr ""
-#: doc/classes/HTTPClient.xml:256
+#: doc/classes/HTTPClient.xml:257
msgid ""
"HTTP status code [code]200 OK[/code]. The request has succeeded. Default "
"response for successful requests. Meaning varies depending on the request. "
@@ -23612,14 +24156,14 @@ msgid ""
"server."
msgstr ""
-#: doc/classes/HTTPClient.xml:259
+#: doc/classes/HTTPClient.xml:260
msgid ""
"HTTP status code [code]201 Created[/code]. The request has succeeded and a "
"new resource has been created as a result of it. This is typically the "
"response sent after a PUT request."
msgstr ""
-#: doc/classes/HTTPClient.xml:262
+#: doc/classes/HTTPClient.xml:263
msgid ""
"HTTP status code [code]202 Accepted[/code]. The request has been received "
"but not yet acted upon. It is non-committal, meaning that there is no way in "
@@ -23628,7 +24172,7 @@ msgid ""
"server handles the request, or for batch processing."
msgstr ""
-#: doc/classes/HTTPClient.xml:265
+#: doc/classes/HTTPClient.xml:266
msgid ""
"HTTP status code [code]203 Non-Authoritative Information[/code]. This "
"response code means returned meta-information set is not exact set as "
@@ -23637,14 +24181,14 @@ msgid ""
"instead of this response."
msgstr ""
-#: doc/classes/HTTPClient.xml:268
+#: doc/classes/HTTPClient.xml:269
msgid ""
"HTTP status code [code]204 No Content[/code]. There is no content to send "
"for this request, but the headers may be useful. The user-agent may update "
"its cached headers for this resource with the new ones."
msgstr ""
-#: doc/classes/HTTPClient.xml:271
+#: doc/classes/HTTPClient.xml:272
msgid ""
"HTTP status code [code]205 Reset Content[/code]. The server has fulfilled "
"the request and desires that the client resets the \"document view\" that "
@@ -23652,49 +24196,49 @@ msgid ""
"origin server."
msgstr ""
-#: doc/classes/HTTPClient.xml:274
+#: doc/classes/HTTPClient.xml:275
msgid ""
"HTTP status code [code]206 Partial Content[/code]. This response code is "
"used because of a range header sent by the client to separate download into "
"multiple streams."
msgstr ""
-#: doc/classes/HTTPClient.xml:277
+#: doc/classes/HTTPClient.xml:278
msgid ""
"HTTP status code [code]207 Multi-Status[/code] (WebDAV). A Multi-Status "
"response conveys information about multiple resources in situations where "
"multiple status codes might be appropriate."
msgstr ""
-#: doc/classes/HTTPClient.xml:280
+#: doc/classes/HTTPClient.xml:281
msgid ""
"HTTP status code [code]208 Already Reported[/code] (WebDAV). Used inside a "
"DAV: propstat response element to avoid enumerating the internal members of "
"multiple bindings to the same collection repeatedly."
msgstr ""
-#: doc/classes/HTTPClient.xml:283
+#: doc/classes/HTTPClient.xml:284
msgid ""
"HTTP status code [code]226 IM Used[/code] (WebDAV). The server has fulfilled "
"a GET request for the resource, and the response is a representation of the "
"result of one or more instance-manipulations applied to the current instance."
msgstr ""
-#: doc/classes/HTTPClient.xml:286
+#: doc/classes/HTTPClient.xml:287
msgid ""
"HTTP status code [code]300 Multiple Choice[/code]. The request has more than "
"one possible responses and there is no standardized way to choose one of the "
"responses. User-agent or user should choose one of them."
msgstr ""
-#: doc/classes/HTTPClient.xml:289
+#: doc/classes/HTTPClient.xml:290
msgid ""
"HTTP status code [code]301 Moved Permanently[/code]. Redirection. This "
"response code means the URI of requested resource has been changed. The new "
"URI is usually included in the response."
msgstr ""
-#: doc/classes/HTTPClient.xml:292
+#: doc/classes/HTTPClient.xml:293
msgid ""
"HTTP status code [code]302 Found[/code]. Temporary redirection. This "
"response code means the URI of requested resource has been changed "
@@ -23702,7 +24246,7 @@ msgid ""
"this same URI should be used by the client in future requests."
msgstr ""
-#: doc/classes/HTTPClient.xml:295
+#: doc/classes/HTTPClient.xml:296
msgid ""
"HTTP status code [code]303 See Other[/code]. The server is redirecting the "
"user agent to a different resource, as indicated by a URI in the Location "
@@ -23710,39 +24254,39 @@ msgid ""
"original request."
msgstr ""
-#: doc/classes/HTTPClient.xml:298
+#: doc/classes/HTTPClient.xml:299
msgid ""
"HTTP status code [code]304 Not Modified[/code]. A conditional GET or HEAD "
"request has been received and would have resulted in a 200 OK response if it "
"were not for the fact that the condition evaluated to [code]false[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:301
+#: doc/classes/HTTPClient.xml:302
msgid ""
"HTTP status code [code]305 Use Proxy[/code]. [i]Deprecated. Do not use.[/i]"
msgstr ""
-#: doc/classes/HTTPClient.xml:304
+#: doc/classes/HTTPClient.xml:305
msgid ""
"HTTP status code [code]306 Switch Proxy[/code]. [i]Deprecated. Do not use.[/"
"i]"
msgstr ""
-#: doc/classes/HTTPClient.xml:307
+#: doc/classes/HTTPClient.xml:308
msgid ""
"HTTP status code [code]307 Temporary Redirect[/code]. The target resource "
"resides temporarily under a different URI and the user agent MUST NOT change "
"the request method if it performs an automatic redirection to that URI."
msgstr ""
-#: doc/classes/HTTPClient.xml:310
+#: doc/classes/HTTPClient.xml:311
msgid ""
"HTTP status code [code]308 Permanent Redirect[/code]. The target resource "
"has been assigned a new permanent URI and any future references to this "
"resource ought to use one of the enclosed URIs."
msgstr ""
-#: doc/classes/HTTPClient.xml:313
+#: doc/classes/HTTPClient.xml:314
msgid ""
"HTTP status code [code]400 Bad Request[/code]. The request was invalid. The "
"server cannot or will not process the request due to something that is "
@@ -23751,21 +24295,21 @@ msgid ""
"routing)."
msgstr ""
-#: doc/classes/HTTPClient.xml:316
+#: doc/classes/HTTPClient.xml:317
msgid ""
"HTTP status code [code]401 Unauthorized[/code]. Credentials required. The "
"request has not been applied because it lacks valid authentication "
"credentials for the target resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:319
+#: doc/classes/HTTPClient.xml:320
msgid ""
"HTTP status code [code]402 Payment Required[/code]. This response code is "
"reserved for future use. Initial aim for creating this code was using it for "
"digital payment systems, however this is not currently used."
msgstr ""
-#: doc/classes/HTTPClient.xml:322
+#: doc/classes/HTTPClient.xml:323
msgid ""
"HTTP status code [code]403 Forbidden[/code]. The client does not have access "
"rights to the content, i.e. they are unauthorized, so server is rejecting to "
@@ -23773,7 +24317,7 @@ msgid ""
"known to the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:325
+#: doc/classes/HTTPClient.xml:326
msgid ""
"HTTP status code [code]404 Not Found[/code]. The server can not find "
"requested resource. Either the URL is not recognized or the endpoint is "
@@ -23781,7 +24325,7 @@ msgid ""
"403 to hide existence of a resource if the client is not authorized."
msgstr ""
-#: doc/classes/HTTPClient.xml:328
+#: doc/classes/HTTPClient.xml:329
msgid ""
"HTTP status code [code]405 Method Not Allowed[/code]. The request's HTTP "
"method is known by the server but has been disabled and cannot be used. For "
@@ -23789,7 +24333,7 @@ msgid ""
"GET and HEAD, must never be disabled and should not return this error code."
msgstr ""
-#: doc/classes/HTTPClient.xml:331
+#: doc/classes/HTTPClient.xml:332
msgid ""
"HTTP status code [code]406 Not Acceptable[/code]. The target resource does "
"not have a current representation that would be acceptable to the user "
@@ -23797,21 +24341,21 @@ msgid ""
"request. Used when negotiation content."
msgstr ""
-#: doc/classes/HTTPClient.xml:334
+#: doc/classes/HTTPClient.xml:335
msgid ""
"HTTP status code [code]407 Proxy Authentication Required[/code]. Similar to "
"401 Unauthorized, but it indicates that the client needs to authenticate "
"itself in order to use a proxy."
msgstr ""
-#: doc/classes/HTTPClient.xml:337
+#: doc/classes/HTTPClient.xml:338
msgid ""
"HTTP status code [code]408 Request Timeout[/code]. The server did not "
"receive a complete request message within the time that it was prepared to "
"wait."
msgstr ""
-#: doc/classes/HTTPClient.xml:340
+#: doc/classes/HTTPClient.xml:341
msgid ""
"HTTP status code [code]409 Conflict[/code]. The request could not be "
"completed due to a conflict with the current state of the target resource. "
@@ -23819,47 +24363,47 @@ msgid ""
"conflict and resubmit the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:343
+#: doc/classes/HTTPClient.xml:344
msgid ""
"HTTP status code [code]410 Gone[/code]. The target resource is no longer "
"available at the origin server and this condition is likely permanent."
msgstr ""
-#: doc/classes/HTTPClient.xml:346
+#: doc/classes/HTTPClient.xml:347
msgid ""
"HTTP status code [code]411 Length Required[/code]. The server refuses to "
"accept the request without a defined Content-Length header."
msgstr ""
-#: doc/classes/HTTPClient.xml:349
+#: doc/classes/HTTPClient.xml:350
msgid ""
"HTTP status code [code]412 Precondition Failed[/code]. One or more "
"conditions given in the request header fields evaluated to [code]false[/"
"code] when tested on the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:352
+#: doc/classes/HTTPClient.xml:353
msgid ""
"HTTP status code [code]413 Entity Too Large[/code]. The server is refusing "
"to process a request because the request payload is larger than the server "
"is willing or able to process."
msgstr ""
-#: doc/classes/HTTPClient.xml:355
+#: doc/classes/HTTPClient.xml:356
msgid ""
"HTTP status code [code]414 Request-URI Too Long[/code]. The server is "
"refusing to service the request because the request-target is longer than "
"the server is willing to interpret."
msgstr ""
-#: doc/classes/HTTPClient.xml:358
+#: doc/classes/HTTPClient.xml:359
msgid ""
"HTTP status code [code]415 Unsupported Media Type[/code]. The origin server "
"is refusing to service the request because the payload is in a format not "
"supported by this method on the target resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:361
+#: doc/classes/HTTPClient.xml:362
msgid ""
"HTTP status code [code]416 Requested Range Not Satisfiable[/code]. None of "
"the ranges in the request's Range header field overlap the current extent of "
@@ -23867,21 +24411,21 @@ msgid ""
"to invalid ranges or an excessive request of small or overlapping ranges."
msgstr ""
-#: doc/classes/HTTPClient.xml:364
+#: doc/classes/HTTPClient.xml:365
msgid ""
"HTTP status code [code]417 Expectation Failed[/code]. The expectation given "
"in the request's Expect header field could not be met by at least one of the "
"inbound servers."
msgstr ""
-#: doc/classes/HTTPClient.xml:367
+#: doc/classes/HTTPClient.xml:368
msgid ""
"HTTP status code [code]418 I'm A Teapot[/code]. Any attempt to brew coffee "
"with a teapot should result in the error code \"418 I'm a teapot\". The "
"resulting entity body MAY be short and stout."
msgstr ""
-#: doc/classes/HTTPClient.xml:370
+#: doc/classes/HTTPClient.xml:371
msgid ""
"HTTP status code [code]421 Misdirected Request[/code]. The request was "
"directed at a server that is not able to produce a response. This can be "
@@ -23889,7 +24433,7 @@ msgid ""
"combination of scheme and authority that are included in the request URI."
msgstr ""
-#: doc/classes/HTTPClient.xml:373
+#: doc/classes/HTTPClient.xml:374
msgid ""
"HTTP status code [code]422 Unprocessable Entity[/code] (WebDAV). The server "
"understands the content type of the request entity (hence a 415 Unsupported "
@@ -23898,40 +24442,40 @@ msgid ""
"was unable to process the contained instructions."
msgstr ""
-#: doc/classes/HTTPClient.xml:376
+#: doc/classes/HTTPClient.xml:377
msgid ""
"HTTP status code [code]423 Locked[/code] (WebDAV). The source or destination "
"resource of a method is locked."
msgstr ""
-#: doc/classes/HTTPClient.xml:379
+#: doc/classes/HTTPClient.xml:380
msgid ""
"HTTP status code [code]424 Failed Dependency[/code] (WebDAV). The method "
"could not be performed on the resource because the requested action depended "
"on another action and that action failed."
msgstr ""
-#: doc/classes/HTTPClient.xml:382
+#: doc/classes/HTTPClient.xml:383
msgid ""
"HTTP status code [code]426 Upgrade Required[/code]. The server refuses to "
"perform the request using the current protocol but might be willing to do so "
"after the client upgrades to a different protocol."
msgstr ""
-#: doc/classes/HTTPClient.xml:385
+#: doc/classes/HTTPClient.xml:386
msgid ""
"HTTP status code [code]428 Precondition Required[/code]. The origin server "
"requires the request to be conditional."
msgstr ""
-#: doc/classes/HTTPClient.xml:388
+#: doc/classes/HTTPClient.xml:389
msgid ""
"HTTP status code [code]429 Too Many Requests[/code]. The user has sent too "
"many requests in a given amount of time (see \"rate limiting\"). Back off "
"and increase time between requests or try again later."
msgstr ""
-#: doc/classes/HTTPClient.xml:391
+#: doc/classes/HTTPClient.xml:392
msgid ""
"HTTP status code [code]431 Request Header Fields Too Large[/code]. The "
"server is unwilling to process the request because its header fields are too "
@@ -23939,27 +24483,27 @@ msgid ""
"header fields."
msgstr ""
-#: doc/classes/HTTPClient.xml:394
+#: doc/classes/HTTPClient.xml:395
msgid ""
"HTTP status code [code]451 Response Unavailable For Legal Reasons[/code]. "
"The server is denying access to the resource as a consequence of a legal "
"demand."
msgstr ""
-#: doc/classes/HTTPClient.xml:397
+#: doc/classes/HTTPClient.xml:398
msgid ""
"HTTP status code [code]500 Internal Server Error[/code]. The server "
"encountered an unexpected condition that prevented it from fulfilling the "
"request."
msgstr ""
-#: doc/classes/HTTPClient.xml:400
+#: doc/classes/HTTPClient.xml:401
msgid ""
"HTTP status code [code]501 Not Implemented[/code]. The server does not "
"support the functionality required to fulfill the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:403
+#: doc/classes/HTTPClient.xml:404
msgid ""
"HTTP status code [code]502 Bad Gateway[/code]. The server, while acting as a "
"gateway or proxy, received an invalid response from an inbound server it "
@@ -23967,7 +24511,7 @@ msgid ""
"balancers or proxies."
msgstr ""
-#: doc/classes/HTTPClient.xml:406
+#: doc/classes/HTTPClient.xml:407
msgid ""
"HTTP status code [code]503 Service Unavailable[/code]. The server is "
"currently unable to handle the request due to a temporary overload or "
@@ -23975,7 +24519,7 @@ msgid ""
"again later."
msgstr ""
-#: doc/classes/HTTPClient.xml:409
+#: doc/classes/HTTPClient.xml:410
msgid ""
"HTTP status code [code]504 Gateway Timeout[/code]. The server, while acting "
"as a gateway or proxy, did not receive a timely response from an upstream "
@@ -23983,14 +24527,14 @@ msgid ""
"returned by load balancers or proxies."
msgstr ""
-#: doc/classes/HTTPClient.xml:412
+#: doc/classes/HTTPClient.xml:413
msgid ""
"HTTP status code [code]505 HTTP Version Not Supported[/code]. The server "
"does not support, or refuses to support, the major version of HTTP that was "
"used in the request message."
msgstr ""
-#: doc/classes/HTTPClient.xml:415
+#: doc/classes/HTTPClient.xml:416
msgid ""
"HTTP status code [code]506 Variant Also Negotiates[/code]. The server has an "
"internal configuration error: the chosen variant resource is configured to "
@@ -23998,14 +24542,14 @@ msgid ""
"proper end point in the negotiation process."
msgstr ""
-#: doc/classes/HTTPClient.xml:418
+#: doc/classes/HTTPClient.xml:419
msgid ""
"HTTP status code [code]507 Insufficient Storage[/code]. The method could not "
"be performed on the resource because the server is unable to store the "
"representation needed to successfully complete the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:421
+#: doc/classes/HTTPClient.xml:422
msgid ""
"HTTP status code [code]508 Loop Detected[/code]. The server terminated an "
"operation because it encountered an infinite loop while processing a request "
@@ -24013,14 +24557,14 @@ msgid ""
"failed."
msgstr ""
-#: doc/classes/HTTPClient.xml:424
+#: doc/classes/HTTPClient.xml:425
msgid ""
"HTTP status code [code]510 Not Extended[/code]. The policy for accessing the "
"resource has not been met in the request. The server should send back all "
"the information necessary for the client to issue an extended request."
msgstr ""
-#: doc/classes/HTTPClient.xml:427
+#: doc/classes/HTTPClient.xml:428
msgid ""
"HTTP status code [code]511 Network Authentication Required[/code]. The "
"client needs to authenticate to gain network access."
@@ -24046,12 +24590,21 @@ msgid ""
" http_request.connect(\"request_completed\", self, "
"\"_http_request_completed\")\n"
"\n"
-" # Perform the HTTP request. The URL below returns some JSON as of "
-"writing.\n"
+" # Perform a GET request. The URL below returns JSON as of writing.\n"
" var error = http_request.request(\"https://httpbin.org/get\")\n"
" if error != OK:\n"
" push_error(\"An error occurred in the HTTP request.\")\n"
"\n"
+" # Perform a POST request. The URL below returns JSON as of writing.\n"
+" # Note: Don't make simultaneous requests using a single HTTPRequest "
+"node.\n"
+" # The snippet below is provided for reference only.\n"
+" var body = {\"name\": \"Godette\"}\n"
+" var error = http_request.request(\"https://httpbin.org/post\", [], true, "
+"HTTPClient.METHOD_POST, body)\n"
+" if error != OK:\n"
+" push_error(\"An error occurred in the HTTP request.\")\n"
+"\n"
"\n"
"# Called when the HTTP request is completed.\n"
"func _http_request_completed(result, response_code, headers, body):\n"
@@ -24091,20 +24644,26 @@ msgid ""
" var texture_rect = TextureRect.new()\n"
" add_child(texture_rect)\n"
" texture_rect.texture = texture\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] When performing HTTP requests from a project exported to HTML5, "
+"keep in mind the remote server may not allow requests from foreign origins "
+"due to [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/"
+"url]. If you host the server in question, you should modify its backend to "
+"allow requests from foreign origins by adding the [code]Access-Control-Allow-"
+"Origin: *[/code] HTTP header."
msgstr ""
-#: doc/classes/HTTPRequest.xml:61
+#: doc/classes/HTTPRequest.xml:70
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/"
"http_request_class.html"
msgstr ""
-#: doc/classes/HTTPRequest.xml:69
+#: doc/classes/HTTPRequest.xml:78
msgid "Cancels the current request."
msgstr ""
-#: doc/classes/HTTPRequest.xml:76
+#: doc/classes/HTTPRequest.xml:85
msgid ""
"Returns the response body length.\n"
"[b]Note:[/b] Some Web servers may not send a body length. In this case, the "
@@ -24112,17 +24671,17 @@ msgid ""
"the body length will also be [code]-1[/code]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:84
+#: doc/classes/HTTPRequest.xml:93
msgid "Returns the amount of bytes this HTTPRequest downloaded."
msgstr ""
-#: doc/classes/HTTPRequest.xml:91
+#: doc/classes/HTTPRequest.xml:100
msgid ""
"Returns the current status of the underlying [HTTPClient]. See [enum "
"HTTPClient.Status]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:108
+#: doc/classes/HTTPRequest.xml:117
msgid ""
"Creates request on the underlying [HTTPClient]. If there is no configuration "
"errors, it tries to connect using [method HTTPClient.connect_to_host] and "
@@ -24135,11 +24694,11 @@ msgid ""
"connect to host."
msgstr ""
-#: doc/classes/HTTPRequest.xml:115
+#: doc/classes/HTTPRequest.xml:124
msgid "Maximum allowed size for response bodies."
msgstr ""
-#: doc/classes/HTTPRequest.xml:118
+#: doc/classes/HTTPRequest.xml:127
msgid ""
"The size of the buffer used and maximum bytes to read per iteration. See "
"[member HTTPClient.read_chunk_size].\n"
@@ -24147,63 +24706,63 @@ msgid ""
"files to achieve better speeds at the cost of memory."
msgstr ""
-#: doc/classes/HTTPRequest.xml:122
+#: doc/classes/HTTPRequest.xml:131
msgid "The file to download into. Will output any received file into it."
msgstr ""
-#: doc/classes/HTTPRequest.xml:125
+#: doc/classes/HTTPRequest.xml:134
msgid "Maximum number of allowed redirects."
msgstr ""
-#: doc/classes/HTTPRequest.xml:130
+#: doc/classes/HTTPRequest.xml:139
msgid "If [code]true[/code], multithreading is used to improve performance."
msgstr ""
-#: doc/classes/HTTPRequest.xml:144
+#: doc/classes/HTTPRequest.xml:153
msgid "Emitted when a request is completed."
msgstr ""
-#: doc/classes/HTTPRequest.xml:150
+#: doc/classes/HTTPRequest.xml:159
msgid "Request successful."
msgstr ""
-#: doc/classes/HTTPRequest.xml:155
+#: doc/classes/HTTPRequest.xml:164
msgid "Request failed while connecting."
msgstr ""
-#: doc/classes/HTTPRequest.xml:158
+#: doc/classes/HTTPRequest.xml:167
msgid "Request failed while resolving."
msgstr ""
-#: doc/classes/HTTPRequest.xml:161
+#: doc/classes/HTTPRequest.xml:170
msgid "Request failed due to connection (read/write) error."
msgstr ""
-#: doc/classes/HTTPRequest.xml:164
+#: doc/classes/HTTPRequest.xml:173
msgid "Request failed on SSL handshake."
msgstr ""
-#: doc/classes/HTTPRequest.xml:167
+#: doc/classes/HTTPRequest.xml:176
msgid "Request does not have a response (yet)."
msgstr ""
-#: doc/classes/HTTPRequest.xml:170
+#: doc/classes/HTTPRequest.xml:179
msgid "Request exceeded its maximum size limit, see [member body_size_limit]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:173
+#: doc/classes/HTTPRequest.xml:182
msgid "Request failed (currently unused)."
msgstr ""
-#: doc/classes/HTTPRequest.xml:176
+#: doc/classes/HTTPRequest.xml:185
msgid "HTTPRequest couldn't open the download file."
msgstr ""
-#: doc/classes/HTTPRequest.xml:179
+#: doc/classes/HTTPRequest.xml:188
msgid "HTTPRequest couldn't write to the download file."
msgstr ""
-#: doc/classes/HTTPRequest.xml:182
+#: doc/classes/HTTPRequest.xml:191
msgid "Request reached its maximum redirect limit, see [member max_redirects]."
msgstr ""
@@ -24427,42 +24986,46 @@ msgid "Loads an image from the binary contents of a PNG file."
msgstr ""
#: doc/classes/Image.xml:373
+msgid "Loads an image from the binary contents of a TGA file."
+msgstr ""
+
+#: doc/classes/Image.xml:382
msgid "Loads an image from the binary contents of a WebP file."
msgstr ""
-#: doc/classes/Image.xml:380
+#: doc/classes/Image.xml:389
msgid ""
"Converts the image's data to represent coordinates on a 3D plane. This is "
"used when the image represents a normalmap. A normalmap can add lots of "
"detail to a 3D surface without increasing the polygon count."
msgstr ""
-#: doc/classes/Image.xml:387
+#: doc/classes/Image.xml:396
msgid ""
"Multiplies color values with alpha values. Resulting color values for a "
"pixel are [code](color * alpha)/256[/code]."
msgstr ""
-#: doc/classes/Image.xml:400
+#: doc/classes/Image.xml:409
msgid ""
"Resizes the image to the given [code]width[/code] and [code]height[/code]. "
"New pixels are calculated using [code]interpolation[/code]. See "
"[code]interpolation[/code] constants."
msgstr ""
-#: doc/classes/Image.xml:409
+#: doc/classes/Image.xml:418
msgid ""
"Resizes the image to the nearest power of 2 for the width and height. If "
"[code]square[/code] is [code]true[/code] then set width and height to be the "
"same."
msgstr ""
-#: doc/classes/Image.xml:416
+#: doc/classes/Image.xml:425
msgid ""
"Converts a standard RGBE (Red Green Blue Exponent) image to an sRGB image."
msgstr ""
-#: doc/classes/Image.xml:427
+#: doc/classes/Image.xml:436
msgid ""
"Saves the image as an EXR file to [code]path[/code]. If [code]grayscale[/"
"code] is [code]true[/code] and the image has only one channel, it will be "
@@ -24471,11 +25034,11 @@ msgid ""
"TinyEXR module."
msgstr ""
-#: doc/classes/Image.xml:436
+#: doc/classes/Image.xml:445
msgid "Saves the image as a PNG file to [code]path[/code]."
msgstr ""
-#: doc/classes/Image.xml:455
+#: doc/classes/Image.xml:464
msgid ""
"Sets the [Color] of the pixel at [code](x, y)[/code]. Example:\n"
"[codeblock]\n"
@@ -24485,7 +25048,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Image.xml:471
+#: doc/classes/Image.xml:480
msgid ""
"Sets the [Color] of the pixel at [code](dst.x, dst.y)[/code]. Note that the "
"[code]dst[/code] values must be integers. Example:\n"
@@ -24496,51 +25059,51 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Image.xml:483
+#: doc/classes/Image.xml:492
msgid "Shrinks the image by a factor of 2."
msgstr ""
-#: doc/classes/Image.xml:490
+#: doc/classes/Image.xml:499
msgid "Converts the raw data from the sRGB colorspace to a linear scale."
msgstr ""
-#: doc/classes/Image.xml:496
+#: doc/classes/Image.xml:505
msgid ""
"Holds all of the image's color data in a given format. See [enum Format] "
"constants."
msgstr ""
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:510
msgid "The maximal width allowed for [Image] resources."
msgstr ""
-#: doc/classes/Image.xml:504
+#: doc/classes/Image.xml:513
msgid "The maximal height allowed for [Image] resources."
msgstr ""
-#: doc/classes/Image.xml:507
+#: doc/classes/Image.xml:516
msgid "Texture format with a single 8-bit depth representing luminance."
msgstr ""
-#: doc/classes/Image.xml:510
+#: doc/classes/Image.xml:519
msgid ""
"OpenGL texture format with two values, luminance and alpha each stored with "
"8 bits."
msgstr ""
-#: doc/classes/Image.xml:513
+#: doc/classes/Image.xml:522
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
"bitdepth of 8."
msgstr ""
-#: doc/classes/Image.xml:516
+#: doc/classes/Image.xml:525
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
-#: doc/classes/Image.xml:519
+#: doc/classes/Image.xml:528
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -24548,7 +25111,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:523
+#: doc/classes/Image.xml:532
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -24556,67 +25119,67 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:536
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
-#: doc/classes/Image.xml:532
+#: doc/classes/Image.xml:541
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
-#: doc/classes/Image.xml:535
+#: doc/classes/Image.xml:544
msgid ""
"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
"each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:538
+#: doc/classes/Image.xml:547
msgid ""
"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
"components, each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:541
+#: doc/classes/Image.xml:550
msgid ""
"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
"components, each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:544
+#: doc/classes/Image.xml:553
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 16-"
"bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:556
msgid ""
"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
"each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:550
+#: doc/classes/Image.xml:559
msgid ""
"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
"components, each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:553
+#: doc/classes/Image.xml:562
msgid ""
"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
"components, each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:556
+#: doc/classes/Image.xml:565
msgid ""
"A special OpenGL texture format where the three color components have 9 bits "
"of precision and all three share a single 5-bit exponent."
msgstr ""
-#: doc/classes/Image.xml:559
+#: doc/classes/Image.xml:568
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format that uses Block Compression 1, and is the smallest variation "
@@ -24626,7 +25189,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:563
+#: doc/classes/Image.xml:572
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format that uses Block Compression 2, and color data is interpreted "
@@ -24636,7 +25199,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:567
+#: doc/classes/Image.xml:576
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format also known as Block Compression 3 or BC3 that contains 64 "
@@ -24647,7 +25210,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:571
+#: doc/classes/Image.xml:580
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -24655,7 +25218,7 @@ msgid ""
"DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:574
+#: doc/classes/Image.xml:583
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -24663,7 +25226,7 @@ msgid ""
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:577
+#: doc/classes/Image.xml:586
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -24672,21 +25235,21 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:581
+#: doc/classes/Image.xml:590
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with signed floating-point "
"RGB components."
msgstr ""
-#: doc/classes/Image.xml:584
+#: doc/classes/Image.xml:593
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned floating-point "
"RGB components."
msgstr ""
-#: doc/classes/Image.xml:587
+#: doc/classes/Image.xml:596
msgid ""
"Texture format used on PowerVR-supported mobile platforms, uses 2-bit color "
"depth with no alpha. More information can be found [url=https://en.wikipedia."
@@ -24695,25 +25258,25 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:600
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:603
msgid ""
"Similar to [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with 4-"
"bit color depth and no alpha."
msgstr ""
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:606
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:609
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -24721,7 +25284,7 @@ msgid ""
"standard. This format cannot store an alpha channel."
msgstr ""
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:612
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24729,7 +25292,7 @@ msgid ""
"unsigned data."
msgstr ""
-#: doc/classes/Image.xml:606
+#: doc/classes/Image.xml:615
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24737,7 +25300,7 @@ msgid ""
"channel of signed data."
msgstr ""
-#: doc/classes/Image.xml:609
+#: doc/classes/Image.xml:618
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24745,7 +25308,7 @@ msgid ""
"of unsigned data."
msgstr ""
-#: doc/classes/Image.xml:612
+#: doc/classes/Image.xml:621
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24753,7 +25316,7 @@ msgid ""
"channels of signed data."
msgstr ""
-#: doc/classes/Image.xml:615
+#: doc/classes/Image.xml:624
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24763,7 +25326,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:619
+#: doc/classes/Image.xml:628
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24773,7 +25336,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:623
+#: doc/classes/Image.xml:632
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24784,31 +25347,31 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:631
+#: doc/classes/Image.xml:640
msgid "Represents the size of the [enum Format] enum."
msgstr ""
-#: doc/classes/Image.xml:634
+#: doc/classes/Image.xml:643
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
-#: doc/classes/Image.xml:637
+#: doc/classes/Image.xml:646
msgid ""
"Performs bilinear interpolation. If the image is resized, it will be blurry. "
"This mode is faster than [constant INTERPOLATE_CUBIC], but it results in "
"lower quality."
msgstr ""
-#: doc/classes/Image.xml:640
+#: doc/classes/Image.xml:649
msgid ""
"Performs cubic interpolation. If the image is resized, it will be blurry. "
"This mode often gives better results compared to [constant "
"INTERPOLATE_BILINEAR], at the cost of being slower."
msgstr ""
-#: doc/classes/Image.xml:643
+#: doc/classes/Image.xml:652
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -24823,55 +25386,55 @@ msgid ""
"a new set will be generated for the resulting image."
msgstr ""
-#: doc/classes/Image.xml:650
+#: doc/classes/Image.xml:659
msgid ""
"Performs Lanczos interpolation. This is the slowest image resizing mode, but "
"it typically gives the best results, especially when downscalng images."
msgstr ""
-#: doc/classes/Image.xml:653
+#: doc/classes/Image.xml:662
msgid "Image does not have alpha."
msgstr ""
-#: doc/classes/Image.xml:656
+#: doc/classes/Image.xml:665
msgid "Image stores alpha in a single bit."
msgstr ""
-#: doc/classes/Image.xml:659
+#: doc/classes/Image.xml:668
msgid "Image uses alpha."
msgstr ""
-#: doc/classes/Image.xml:662
+#: doc/classes/Image.xml:671
msgid "Use S3TC compression."
msgstr ""
-#: doc/classes/Image.xml:665
+#: doc/classes/Image.xml:674
msgid "Use PVRTC2 compression."
msgstr ""
-#: doc/classes/Image.xml:668
+#: doc/classes/Image.xml:677
msgid "Use PVRTC4 compression."
msgstr ""
-#: doc/classes/Image.xml:671
+#: doc/classes/Image.xml:680
msgid "Use ETC compression."
msgstr ""
-#: doc/classes/Image.xml:674
+#: doc/classes/Image.xml:683
msgid "Use ETC2 compression."
msgstr ""
-#: doc/classes/Image.xml:689
+#: doc/classes/Image.xml:698
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
-#: doc/classes/Image.xml:692
+#: doc/classes/Image.xml:701
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
-#: doc/classes/Image.xml:695
+#: doc/classes/Image.xml:704
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -25690,7 +26253,7 @@ msgid "Contains mouse click information. See [method Node._input]."
msgstr ""
#: doc/classes/InputEventMouseButton.xml:10
-#: doc/classes/InputEventMouseMotion.xml:10
+#: doc/classes/InputEventMouseMotion.xml:11
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/inputs/"
"mouse_and_input_coordinates.html"
@@ -25727,29 +26290,36 @@ msgstr ""
#: doc/classes/InputEventMouseMotion.xml:7
msgid ""
"Contains mouse and pen motion information. Supports relative, absolute "
-"positions and speed. See [method Node._input]."
+"positions and speed. See [method Node._input].\n"
+"[b]Note:[/b] By default, this event is only emitted once per frame rendered "
+"at most. If you need more precise input reporting, call [method Input."
+"set_use_accumulated_input] with [code]false[/code] to make events emitted as "
+"often as possible. If you use InputEventMouseMotion to draw lines, consider "
+"implementing [url=https://en.wikipedia.org/wiki/Bresenham"
+"%27s_line_algorithm]Bresenham's line algorithm[/url] as well to avoid "
+"visible gaps in lines if the user is moving the mouse quickly."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:16
+#: doc/classes/InputEventMouseMotion.xml:17
msgid ""
"Represents the pressure the user puts on the pen. Ranges from [code]0.0[/"
"code] to [code]1.0[/code]."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:19
+#: doc/classes/InputEventMouseMotion.xml:20
msgid ""
"The mouse position relative to the previous position (position at the last "
-"frame). \n"
+"frame).\n"
"[b]Note:[/b] Since [InputEventMouseMotion] is only emitted when the mouse "
"moves, the last event won't have a relative position of [code]Vector2(0, 0)[/"
"code] when the user stops moving the mouse."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:23
+#: doc/classes/InputEventMouseMotion.xml:24
msgid "The mouse speed in pixels per second."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:26
+#: doc/classes/InputEventMouseMotion.xml:27
msgid ""
"Represents the angles of tilt of the pen. Positive X-coordinate value "
"indicates a tilt to the right. Positive Y-coordinate value indicates a tilt "
@@ -26639,14 +27209,17 @@ msgstr ""
#: doc/classes/JSON.xml:18
msgid ""
-"Parses a JSON encoded string and returns a [JSONParseResult] containing the "
+"Parses a JSON-encoded string and returns a [JSONParseResult] containing the "
"result."
msgstr ""
#: doc/classes/JSON.xml:31
msgid ""
"Converts a [Variant] var to JSON text and returns the result. Useful for "
-"serializing data to store or send over the network."
+"serializing data to store or send over the network.\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, converting a Variant to JSON text "
+"will convert all numerical values to [float] types."
msgstr ""
#: doc/classes/JSONParseResult.xml:4
@@ -26669,14 +27242,14 @@ msgstr ""
#: doc/classes/JSONParseResult.xml:18
msgid ""
-"The line number where the error occurred if JSON source was not successfully "
-"parsed."
+"The line number where the error occurred if the JSON source was not "
+"successfully parsed."
msgstr ""
#: doc/classes/JSONParseResult.xml:21
msgid ""
-"The error message if JSON source was not successfully parsed. See the [enum "
-"Error] constants."
+"The error message if the JSON source was not successfully parsed. See the "
+"[enum Error] constants."
msgstr ""
#: doc/classes/JSONParseResult.xml:24
@@ -26684,11 +27257,11 @@ msgid ""
"A [Variant] containing the parsed JSON. Use [method @GDScript.typeof] or the "
"[code]is[/code] keyword to check if it is what you expect. For example, if "
"the JSON source starts with curly braces ([code]{}[/code]), a [Dictionary] "
-"will be returned. If the JSON source starts with braces ([code][][/code]), "
+"will be returned. If the JSON source starts with brackets ([code][][/code]), "
"an [Array] will be returned.\n"
"[b]Note:[/b] The JSON specification does not define integer or float types, "
-"but only a number type. Therefore, parsing a JSON text will convert all "
-"numerical values to float types.\n"
+"but only a [i]number[/i] type. Therefore, parsing a JSON text will convert "
+"all numerical values to [float] types.\n"
"[b]Note:[/b] JSON objects do not preserve key order like Godot dictionaries, "
"thus, you should not rely on keys being in a certain order if a dictionary "
"is constructed from JSON. In contrast, JSON arrays retain the order of their "
@@ -26698,7 +27271,7 @@ msgid ""
"if typeof(p.result) == TYPE_ARRAY:\n"
" print(p.result[0]) # Prints \"hello\"\n"
"else:\n"
-" print(\"unexpected results\")\n"
+" push_error(\"Unexpected results.\")\n"
"[/codeblock]"
msgstr ""
@@ -26814,7 +27387,7 @@ msgid ""
"simulation will run at an incorrect speed.\n"
"[code]linear_velocity[/code] is the velocity vector in pixels per second. "
"Unlike in [method move_and_collide], you should [i]not[/i] multiply it by "
-"[code]delta[/code] — the physics engine handles applying the velocity. \n"
+"[code]delta[/code] — the physics engine handles applying the velocity.\n"
"[code]up_direction[/code] is the up direction, used to determine what is a "
"wall and what is a floor or a ceiling. If set to the default value of "
"[code]Vector2(0, 0)[/code], everything is considered a wall. This is useful "
@@ -26930,7 +27503,7 @@ msgid ""
"[code]linear_velocity[/code] is the velocity vector (typically meters per "
"second). Unlike in [method move_and_collide], you should [i]not[/i] multiply "
"it by [code]delta[/code] — the physics engine handles applying the "
-"velocity. \n"
+"velocity.\n"
"[code]up_direction[/code] is the up direction, used to determine what is a "
"wall and what is a floor or a ceiling. If set to the default value of "
"[code]Vector3(0, 0, 0)[/code], everything is considered a wall.\n"
@@ -27659,17 +28232,6 @@ msgid ""
"[b]Note:[/b] Hiding a light does [i]not[/i] affect baking."
msgstr ""
-#: doc/classes/Light3D.xml:152
-msgid "Only indirect lighting will be baked (default)."
-msgstr ""
-
-#: doc/classes/Light3D.xml:155
-msgid ""
-"Both direct and indirect light will be baked.\n"
-"[b]Note:[/b] You should hide the light if you don't want it to appear twice "
-"(dynamic and baked)."
-msgstr ""
-
#: doc/classes/LightOccluder2D.xml:4
msgid "Occludes light cast by a Light2D, casting shadows."
msgstr ""
@@ -27948,136 +28510,142 @@ msgstr ""
msgid "Text alignment as defined in the [enum Align] enum."
msgstr ""
-#: doc/classes/LineEdit.xml:120 doc/classes/TextEdit.xml:406
+#: doc/classes/LineEdit.xml:120 doc/classes/TextEdit.xml:358
msgid "If [code]true[/code], the caret (visual cursor) blinks."
msgstr ""
-#: doc/classes/LineEdit.xml:123 doc/classes/TextEdit.xml:409
+#: doc/classes/LineEdit.xml:123 doc/classes/TextEdit.xml:361
msgid "Duration (in seconds) of a caret's blinking cycle."
msgstr ""
-#: doc/classes/LineEdit.xml:126
+#: doc/classes/LineEdit.xml:128
msgid ""
"The cursor's position inside the [LineEdit]. When set, the text may scroll "
"to accommodate it."
msgstr ""
-#: doc/classes/LineEdit.xml:129
+#: doc/classes/LineEdit.xml:131
msgid ""
"If [code]true[/code], the [LineEdit] will show a clear button if [code]text[/"
"code] is not empty, which can be used to clear the text quickly."
msgstr ""
-#: doc/classes/LineEdit.xml:132
+#: doc/classes/LineEdit.xml:134
msgid "If [code]true[/code], the context menu will appear when right-clicked."
msgstr ""
-#: doc/classes/LineEdit.xml:135
+#: doc/classes/LineEdit.xml:137
msgid ""
"If [code]false[/code], existing text cannot be modified and new text cannot "
"be added."
msgstr ""
-#: doc/classes/LineEdit.xml:138
+#: doc/classes/LineEdit.xml:140
msgid ""
"If [code]true[/code], the [LineEdit] width will increase to stay longer than "
"the [member text]. It will [b]not[/b] compress if the [member text] is "
"shortened."
msgstr ""
-#: doc/classes/LineEdit.xml:142
+#: doc/classes/LineEdit.xml:144
msgid ""
"Maximum amount of characters that can be entered inside the [LineEdit]. If "
"[code]0[/code], there is no limit."
msgstr ""
-#: doc/classes/LineEdit.xml:146
+#: doc/classes/LineEdit.xml:148
msgid ""
"Opacity of the [member placeholder_text]. From [code]0[/code] to [code]1[/"
"code]."
msgstr ""
-#: doc/classes/LineEdit.xml:149
+#: doc/classes/LineEdit.xml:151
msgid ""
"Text shown when the [LineEdit] is empty. It is [b]not[/b] the [LineEdit]'s "
"default value (see [member text])."
msgstr ""
-#: doc/classes/LineEdit.xml:152
+#: doc/classes/LineEdit.xml:154
msgid ""
"Sets the icon that will appear in the right end of the [LineEdit] if there's "
"no [member text], or always, if [member clear_button_enabled] is set to "
"[code]false[/code]."
msgstr ""
-#: doc/classes/LineEdit.xml:155
+#: doc/classes/LineEdit.xml:157
msgid ""
"If [code]true[/code], every character is replaced with the secret character "
"(see [member secret_character])."
msgstr ""
-#: doc/classes/LineEdit.xml:158
+#: doc/classes/LineEdit.xml:160
msgid ""
"The character to use to mask secret input (defaults to \"*\"). Only a single "
"character can be used as the secret character."
msgstr ""
-#: doc/classes/LineEdit.xml:161
+#: doc/classes/LineEdit.xml:163
msgid ""
"If [code]false[/code], it's impossible to select the text using mouse nor "
"keyboard."
msgstr ""
-#: doc/classes/LineEdit.xml:164
+#: doc/classes/LineEdit.xml:166
msgid "If [code]false[/code], using shortcuts will be disabled."
msgstr ""
-#: doc/classes/LineEdit.xml:167
+#: doc/classes/LineEdit.xml:169
msgid ""
"String value of the [LineEdit].\n"
"[b]Note:[/b] Changing text using this property won't emit the [signal "
"text_changed] signal."
msgstr ""
-#: doc/classes/LineEdit.xml:174
+#: doc/classes/LineEdit.xml:173 doc/classes/TextEdit.xml:434
+msgid ""
+"If [code]true[/code], the native virtual keyboard is shown when focused on "
+"platforms that support it."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:179
msgid ""
"Emitted when trying to append text that would overflow the [member "
"max_length]."
msgstr ""
-#: doc/classes/LineEdit.xml:181 doc/classes/TextEdit.xml:525
+#: doc/classes/LineEdit.xml:186 doc/classes/TextEdit.xml:490
msgid "Emitted when the text changes."
msgstr ""
-#: doc/classes/LineEdit.xml:188
+#: doc/classes/LineEdit.xml:193
msgid "Emitted when the user presses [constant KEY_ENTER] on the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:194
+#: doc/classes/LineEdit.xml:199
msgid "Aligns the text on the left-hand side of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:197
+#: doc/classes/LineEdit.xml:202
msgid "Centers the text in the middle of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:200
+#: doc/classes/LineEdit.xml:205
msgid "Aligns the text on the right-hand side of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:203
+#: doc/classes/LineEdit.xml:208
msgid "Stretches whitespaces to fit the [LineEdit]'s width."
msgstr ""
-#: doc/classes/LineEdit.xml:206 doc/classes/TextEdit.xml:540
+#: doc/classes/LineEdit.xml:211 doc/classes/TextEdit.xml:505
msgid "Cuts (copies and clears) the selected text."
msgstr ""
-#: doc/classes/LineEdit.xml:209 doc/classes/TextEdit.xml:543
+#: doc/classes/LineEdit.xml:214 doc/classes/TextEdit.xml:508
msgid "Copies the selected text."
msgstr ""
-#: doc/classes/LineEdit.xml:212
+#: doc/classes/LineEdit.xml:217
msgid ""
"Pastes the clipboard text over the selected text (or at the cursor's "
"position).\n"
@@ -28085,80 +28653,80 @@ msgid ""
"clipboard via [method String.strip_escapes]."
msgstr ""
-#: doc/classes/LineEdit.xml:216
+#: doc/classes/LineEdit.xml:221
msgid "Erases the whole [LineEdit] text."
msgstr ""
-#: doc/classes/LineEdit.xml:219
+#: doc/classes/LineEdit.xml:224
msgid "Selects the whole [LineEdit] text."
msgstr ""
-#: doc/classes/LineEdit.xml:222 doc/classes/TextEdit.xml:555
+#: doc/classes/LineEdit.xml:227 doc/classes/TextEdit.xml:520
msgid "Undoes the previous action."
msgstr ""
-#: doc/classes/LineEdit.xml:225
+#: doc/classes/LineEdit.xml:230
msgid "Reverse the last undo action."
msgstr ""
-#: doc/classes/LineEdit.xml:228 doc/classes/TextEdit.xml:561
+#: doc/classes/LineEdit.xml:233 doc/classes/TextEdit.xml:526
msgid "Represents the size of the [enum MenuItems] enum."
msgstr ""
-#: doc/classes/LineEdit.xml:233
+#: doc/classes/LineEdit.xml:238
msgid "Texture for the clear button. See [member clear_button_enabled]."
msgstr ""
-#: doc/classes/LineEdit.xml:236
+#: doc/classes/LineEdit.xml:241
msgid "Color used as default tint for the clear button."
msgstr ""
-#: doc/classes/LineEdit.xml:239
+#: doc/classes/LineEdit.xml:244
msgid "Color used for the clear button when it's pressed."
msgstr ""
-#: doc/classes/LineEdit.xml:242
+#: doc/classes/LineEdit.xml:247
msgid "Color of the [LineEdit]'s visual cursor (caret)."
msgstr ""
-#: doc/classes/LineEdit.xml:245
+#: doc/classes/LineEdit.xml:250
msgid "Background used when [LineEdit] has GUI focus."
msgstr ""
-#: doc/classes/LineEdit.xml:248
+#: doc/classes/LineEdit.xml:253
msgid "Font used for the text."
msgstr ""
-#: doc/classes/LineEdit.xml:251
+#: doc/classes/LineEdit.xml:256
msgid "Default font color."
msgstr ""
-#: doc/classes/LineEdit.xml:254
+#: doc/classes/LineEdit.xml:259
msgid "Font color for selected text (inside the selection rectangle)."
msgstr ""
-#: doc/classes/LineEdit.xml:257
+#: doc/classes/LineEdit.xml:262
msgid "Font color when editing is disabled."
msgstr ""
-#: doc/classes/LineEdit.xml:260
+#: doc/classes/LineEdit.xml:265
msgid ""
"Minimum horizontal space for the text (not counting the clear button and "
"content margins). This value is measured in count of space characters (i.e. "
"this amount of space characters can be displayed without scrolling)."
msgstr ""
-#: doc/classes/LineEdit.xml:263
+#: doc/classes/LineEdit.xml:268
msgid "Default background for the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:266
+#: doc/classes/LineEdit.xml:271
msgid ""
"Background used when [LineEdit] is in read-only mode ([member editable] is "
"set to [code]false[/code])."
msgstr ""
-#: doc/classes/LineEdit.xml:269
+#: doc/classes/LineEdit.xml:274
msgid "Color of the selection rectangle."
msgstr ""
@@ -28376,14 +28944,14 @@ msgstr ""
msgid "Emitted when a user responds to a permission request."
msgstr ""
-#: doc/classes/MainLoop.xml:127 doc/classes/Node.xml:948
+#: doc/classes/MainLoop.xml:127 doc/classes/Node.xml:946
msgid ""
"Notification received from the OS when the application is exceeding its "
"allocated memory.\n"
"Specific to the iOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:131 doc/classes/Node.xml:952
+#: doc/classes/MainLoop.xml:131 doc/classes/Node.xml:950
msgid ""
"Notification received when translations may have changed. Can be triggered "
"by the user changing the locale. Can be used to respond to language changes, "
@@ -28391,39 +28959,55 @@ msgid ""
"the built-in translation support, like [method Object.tr]."
msgstr ""
-#: doc/classes/MainLoop.xml:134 doc/classes/Node.xml:955
+#: doc/classes/MainLoop.xml:134 doc/classes/Node.xml:953
msgid ""
"Notification received from the OS when a request for \"About\" information "
"is sent.\n"
"Specific to the macOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:138 doc/classes/Node.xml:959
+#: doc/classes/MainLoop.xml:138 doc/classes/Node.xml:957
msgid ""
"Notification received from Godot's crash handler when the engine is about to "
"crash.\n"
"Implemented on desktop platforms if the crash handler is enabled."
msgstr ""
-#: doc/classes/MainLoop.xml:142 doc/classes/Node.xml:963
+#: doc/classes/MainLoop.xml:142 doc/classes/Node.xml:961
msgid ""
"Notification received from the OS when an update of the Input Method Engine "
"occurs (e.g. change of IME cursor position or composition string).\n"
"Specific to the macOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:146 doc/classes/Node.xml:967
+#: doc/classes/MainLoop.xml:146 doc/classes/Node.xml:965
msgid ""
-"Notification received from the OS when the app is resumed.\n"
+"Notification received from the OS when the application is resumed.\n"
"Specific to the Android platform."
msgstr ""
-#: doc/classes/MainLoop.xml:150 doc/classes/Node.xml:971
+#: doc/classes/MainLoop.xml:150 doc/classes/Node.xml:969
msgid ""
-"Notification received from the OS when the app is paused.\n"
+"Notification received from the OS when the application is paused.\n"
"Specific to the Android platform."
msgstr ""
+#: doc/classes/MainLoop.xml:154 doc/classes/Node.xml:973
+msgid ""
+"Notification received from the OS when the application is focused, i.e. when "
+"changing the focus from the OS desktop or a thirdparty application to any "
+"open window of the Godot instance.\n"
+"Implemented on desktop platforms."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:158 doc/classes/Node.xml:977
+msgid ""
+"Notification received from the OS when the application is defocused, i.e. "
+"when changing the focus from any open window of the Godot instance to the OS "
+"desktop or a thirdparty application.\n"
+"Implemented on desktop platforms."
+msgstr ""
+
#: doc/classes/MarginContainer.xml:4
msgid "Simple margin container."
msgstr ""
@@ -28731,11 +29315,11 @@ msgstr ""
msgid "Render array as triangle strips."
msgstr ""
-#: doc/classes/Mesh.xml:126 doc/classes/RenderingServer.xml:3189
+#: doc/classes/Mesh.xml:126 doc/classes/RenderingServer.xml:3185
msgid "Blend shapes are normalized."
msgstr ""
-#: doc/classes/Mesh.xml:129 doc/classes/RenderingServer.xml:3192
+#: doc/classes/Mesh.xml:129 doc/classes/RenderingServer.xml:3188
msgid "Blend shapes are relative to base weight."
msgstr ""
@@ -28777,37 +29361,37 @@ msgstr ""
msgid "Mesh array uses indices."
msgstr ""
-#: doc/classes/Mesh.xml:159 doc/classes/RenderingServer.xml:3145
+#: doc/classes/Mesh.xml:159 doc/classes/RenderingServer.xml:3141
msgid "Flag used to mark a compressed (half float) normal array."
msgstr ""
-#: doc/classes/Mesh.xml:162 doc/classes/RenderingServer.xml:3148
+#: doc/classes/Mesh.xml:162 doc/classes/RenderingServer.xml:3144
msgid "Flag used to mark a compressed (half float) tangent array."
msgstr ""
-#: doc/classes/Mesh.xml:165 doc/classes/RenderingServer.xml:3151
+#: doc/classes/Mesh.xml:165 doc/classes/RenderingServer.xml:3147
msgid "Flag used to mark a compressed (half float) color array."
msgstr ""
-#: doc/classes/Mesh.xml:168 doc/classes/RenderingServer.xml:3154
+#: doc/classes/Mesh.xml:168 doc/classes/RenderingServer.xml:3150
msgid "Flag used to mark a compressed (half float) UV coordinates array."
msgstr ""
-#: doc/classes/Mesh.xml:171 doc/classes/RenderingServer.xml:3157
+#: doc/classes/Mesh.xml:171 doc/classes/RenderingServer.xml:3153
msgid ""
"Flag used to mark a compressed (half float) UV coordinates array for the "
"second UV coordinates."
msgstr ""
-#: doc/classes/Mesh.xml:174 doc/classes/RenderingServer.xml:3160
+#: doc/classes/Mesh.xml:174 doc/classes/RenderingServer.xml:3156
msgid "Flag used to mark a compressed index array."
msgstr ""
-#: doc/classes/Mesh.xml:177 doc/classes/RenderingServer.xml:3166
+#: doc/classes/Mesh.xml:177 doc/classes/RenderingServer.xml:3162
msgid "Flag used to mark that the array contains 2D vertices."
msgstr ""
-#: doc/classes/Mesh.xml:180 doc/classes/RenderingServer.xml:3163
+#: doc/classes/Mesh.xml:180 doc/classes/RenderingServer.xml:3159
msgid ""
"Used to set flags [constant ARRAY_COMPRESS_NORMAL], [constant "
"ARRAY_COMPRESS_TANGENT], [constant ARRAY_COMPRESS_COLOR], [constant "
@@ -30568,7 +31152,10 @@ msgstr ""
msgid ""
"The number of channels to be used by ENet. Channels are used to separate "
"different kinds of data. In reliable or ordered mode, for example, the "
-"packet delivery order is ensured on a per channel basis."
+"packet delivery order is ensured on a per-channel basis. This is done to "
+"combat latency and reduces ordering restrictions on packets. The delivery "
+"status of a packet in one channel won't stall the delivery of other packets "
+"in another channel."
msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:134
@@ -30595,11 +31182,12 @@ msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:144
msgid ""
"Set the default channel to be used to transfer data. By default, this value "
-"is [code]-1[/code] which means that ENet will only use 2 channels, one for "
-"reliable and one for unreliable packets. Channel [code]0[/code] is reserved, "
-"and cannot be used. Setting this member to any value between [code]0[/code] "
-"and [member channel_count] (excluded) will force ENet to use that channel "
-"for sending data."
+"is [code]-1[/code] which means that ENet will only use 2 channels: one for "
+"reliable packets, and one for unreliable packets. The channel [code]0[/code] "
+"is reserved and cannot be used. Setting this member to any value between "
+"[code]0[/code] and [member channel_count] (excluded) will force ENet to use "
+"that channel for sending data. See [member channel_count] for more "
+"information about ENet channels."
msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:148
@@ -31791,57 +32379,63 @@ msgstr ""
#: doc/classes/Node.xml:930
msgid ""
-"Notification received from the OS when the game window is focused.\n"
-"Implemented on all platforms."
+"Notification received from the OS when the node's parent [Window] is "
+"focused. This may be a change of focus between two windows of the same "
+"engine instance, or from the OS desktop or a third-party application to a "
+"window of the game (in which case [constant "
+"NOTIFICATION_APPLICATION_FOCUS_IN] is also emitted)."
msgstr ""
-#: doc/classes/Node.xml:934
+#: doc/classes/Node.xml:933
msgid ""
-"Notification received from the OS when the game window is unfocused.\n"
-"Implemented on all platforms."
+"Notification received from the OS when the node's parent [Window] is "
+"defocused. This may be a change of focus between two windows of the same "
+"engine instance, or from a window of the game to the OS desktop or a third-"
+"party application (in which case [constant "
+"NOTIFICATION_APPLICATION_FOCUS_OUT] is also emitted)."
msgstr ""
-#: doc/classes/Node.xml:938
+#: doc/classes/Node.xml:936
msgid ""
"Notification received from the OS when a close request is sent (e.g. closing "
"the window with a \"Close\" button or [kbd]Alt + F4[/kbd]).\n"
"Implemented on desktop platforms."
msgstr ""
-#: doc/classes/Node.xml:942
+#: doc/classes/Node.xml:940
msgid ""
"Notification received from the OS when a go back request is sent (e.g. "
"pressing the \"Back\" button on Android).\n"
"Specific to the Android platform."
msgstr ""
-#: doc/classes/Node.xml:975
+#: doc/classes/Node.xml:981
msgid ""
"Inherits pause mode from the node's parent. For the root node, it is "
"equivalent to [constant PAUSE_MODE_STOP]. Default."
msgstr ""
-#: doc/classes/Node.xml:978
+#: doc/classes/Node.xml:984
msgid "Stops processing when the [SceneTree] is paused."
msgstr ""
-#: doc/classes/Node.xml:981
+#: doc/classes/Node.xml:987
msgid "Continue to process regardless of the [SceneTree] pause state."
msgstr ""
-#: doc/classes/Node.xml:984
+#: doc/classes/Node.xml:990
msgid "Duplicate the node's signals."
msgstr ""
-#: doc/classes/Node.xml:987
+#: doc/classes/Node.xml:993
msgid "Duplicate the node's groups."
msgstr ""
-#: doc/classes/Node.xml:990
+#: doc/classes/Node.xml:996
msgid "Duplicate the node's scripts."
msgstr ""
-#: doc/classes/Node.xml:993
+#: doc/classes/Node.xml:999
msgid ""
"Duplicate using instancing.\n"
"An instance stays linked to the original so when the original changes, the "
@@ -32065,12 +32659,6 @@ msgid ""
"changes. [Node3D] will not propagate this by default."
msgstr ""
-#: doc/classes/Node3D.xml:104
-msgid ""
-"Returns whether the node is visible, taking into consideration that its "
-"parents visibility."
-msgstr ""
-
#: doc/classes/Node3D.xml:115
msgid ""
"Rotates itself so that the local -Z axis points towards the [code]target[/"
@@ -32240,7 +32828,10 @@ msgid "Local translation of this node."
msgstr ""
#: doc/classes/Node3D.xml:326
-msgid "If [code]true[/code], this node is drawn."
+msgid ""
+"If [code]true[/code], this node is drawn. The node is only visible if all of "
+"its antecedents are visible as well (in other words, [method "
+"is_visible_in_tree] must return [code]true[/code])."
msgstr ""
#: doc/classes/Node3D.xml:332
@@ -32497,10 +33088,20 @@ msgid ""
"the key exists, even if the value is [code]null[/code].\n"
"Objects also receive notifications. Notifications are a simple way to notify "
"the object about different events, so they can all be handled together. See "
-"[method _notification]."
+"[method _notification].\n"
+"[b]Note:[/b] Unlike references to a [Reference], references to an Object "
+"stored in a variable can become invalid without warning. Therefore, it's "
+"recommended to use [Reference] for data classes instead of [Object]."
msgstr ""
-#: doc/classes/Object.xml:30
+#: doc/classes/Object.xml:23 doc/classes/Reference.xml:12
+#: doc/classes/Resource.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/getting_started/workflow/"
+"best_practices/node_alternatives.html"
+msgstr ""
+
+#: doc/classes/Object.xml:32
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method get].\n"
@@ -32508,7 +33109,7 @@ msgid ""
"code] does not exist."
msgstr ""
-#: doc/classes/Object.xml:38
+#: doc/classes/Object.xml:40
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method get_property_list].\n"
@@ -32520,11 +33121,11 @@ msgid ""
"PropertyUsageFlags])."
msgstr ""
-#: doc/classes/Object.xml:47
+#: doc/classes/Object.xml:49
msgid "Called when the object is initialized."
msgstr ""
-#: doc/classes/Object.xml:56
+#: doc/classes/Object.xml:58
msgid ""
"Called whenever the object receives a notification, which is identified in "
"[code]what[/code] by a constant. The base [Object] has two constants "
@@ -32533,7 +33134,7 @@ msgid ""
"notifications which are also received by this method."
msgstr ""
-#: doc/classes/Object.xml:67
+#: doc/classes/Object.xml:69
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method set].\n"
@@ -32541,7 +33142,7 @@ msgid ""
"exists."
msgstr ""
-#: doc/classes/Object.xml:75
+#: doc/classes/Object.xml:77
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method to_string], and thus the object's representation where it is "
@@ -32550,34 +33151,42 @@ msgid ""
"[code]\"[ClassName:RID]\"[/code]."
msgstr ""
-#: doc/classes/Object.xml:87
+#: doc/classes/Object.xml:89
msgid ""
"Adds a user-defined [code]signal[/code]. Arguments are optional, but can be "
"added as an [Array] of dictionaries, each containing [code]name: String[/"
"code] and [code]type: int[/code] (see [enum Variant.Type]) entries."
msgstr ""
-#: doc/classes/Object.xml:96
+#: doc/classes/Object.xml:98
msgid ""
"Calls the [code]method[/code] on the object and returns the result. This "
"method supports a variable number of arguments, so parameters are passed as "
"a comma separated list. Example:\n"
"[codeblock]\n"
"call(\"set\", \"position\", Vector2(42.0, 0.0))\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] In C#, the method name must be specified as snake_case if it is "
+"defined by a built-in Godot node. This doesn't apply to user-defined methods "
+"where you should use the same convention as in the C# source (typically "
+"PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:108
+#: doc/classes/Object.xml:111
msgid ""
"Calls the [code]method[/code] on the object during idle time. This method "
"supports a variable number of arguments, so parameters are passed as a comma "
"separated list. Example:\n"
"[codeblock]\n"
"call_deferred(\"set\", \"position\", Vector2(42.0, 0.0))\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] In C#, the method name must be specified as snake_case if it is "
+"defined by a built-in Godot node. This doesn't apply to user-defined methods "
+"where you should use the same convention as in the C# source (typically "
+"PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:122
+#: doc/classes/Object.xml:126
msgid ""
"Calls the [code]method[/code] on the object and returns the result. "
"Contrarily to [method call], this method does not support a variable number "
@@ -32587,13 +33196,13 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:132
+#: doc/classes/Object.xml:136
msgid ""
"Returns [code]true[/code] if the object can translate strings. See [method "
"set_message_translation] and [method tr]."
msgstr ""
-#: doc/classes/Object.xml:147
+#: doc/classes/Object.xml:151
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32629,7 +33238,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:174
+#: doc/classes/Object.xml:178
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32640,7 +33249,7 @@ msgid ""
"exists."
msgstr ""
-#: doc/classes/Object.xml:185
+#: doc/classes/Object.xml:189
msgid ""
"Emits the given [code]signal[/code]. The signal must exist, so it should be "
"a built-in signal of this class or one of its parent classes, or a user-"
@@ -32652,24 +33261,28 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:196
+#: doc/classes/Object.xml:200
msgid ""
"Deletes the object from memory. Any pre-existing reference to the freed "
"object will become invalid, e.g. [code]is_instance_valid(object)[/code] will "
"return [code]false[/code]."
msgstr ""
-#: doc/classes/Object.xml:205
+#: doc/classes/Object.xml:209
msgid ""
"Returns the [Variant] value of the given [code]property[/code]. If the "
-"[code]property[/code] doesn't exist, this will return [code]null[/code]."
+"[code]property[/code] doesn't exist, this will return [code]null[/code].\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:212
+#: doc/classes/Object.xml:217
msgid "Returns the object's class as a [String]."
msgstr ""
-#: doc/classes/Object.xml:219
+#: doc/classes/Object.xml:224
msgid ""
"Returns an [Array] of dictionaries with information about signals that are "
"connected to the object.\n"
@@ -32680,7 +33293,7 @@ msgid ""
"connected."
msgstr ""
-#: doc/classes/Object.xml:232
+#: doc/classes/Object.xml:237
msgid ""
"Gets the object's property indexed by the given [NodePath]. The node path "
"should be relative to the current object and can use the colon character "
@@ -32688,26 +33301,26 @@ msgid ""
"\"[/code] or [code]\"material:next_pass:blend_mode\"[/code]."
msgstr ""
-#: doc/classes/Object.xml:239
+#: doc/classes/Object.xml:244
msgid ""
"Returns the object's unique instance ID.\n"
"This ID can be saved in [EncodedObjectAsID], and can be used to retrieve the "
"object instance with [method @GDScript.instance_from_id]."
msgstr ""
-#: doc/classes/Object.xml:249
+#: doc/classes/Object.xml:254
msgid "Returns the object's metadata entry for the given [code]name[/code]."
msgstr ""
-#: doc/classes/Object.xml:256
+#: doc/classes/Object.xml:261
msgid "Returns the object's metadata as a [PackedStringArray]."
msgstr ""
-#: doc/classes/Object.xml:263
+#: doc/classes/Object.xml:268
msgid "Returns the object's methods and their signatures as an [Array]."
msgstr ""
-#: doc/classes/Object.xml:270
+#: doc/classes/Object.xml:275
msgid ""
"Returns the object's property list as an [Array] of dictionaries.\n"
"Each property's [Dictionary] contain at least [code]name: String[/code] and "
@@ -32717,54 +33330,54 @@ msgid ""
"PropertyUsageFlags])."
msgstr ""
-#: doc/classes/Object.xml:278
+#: doc/classes/Object.xml:283
msgid ""
"Returns the object's [Script] instance, or [code]null[/code] if none is "
"assigned."
msgstr ""
-#: doc/classes/Object.xml:287
+#: doc/classes/Object.xml:292
msgid "Returns an [Array] of connections for the given [code]signal[/code]."
msgstr ""
-#: doc/classes/Object.xml:294
+#: doc/classes/Object.xml:299
msgid "Returns the list of signals as an [Array] of dictionaries."
msgstr ""
-#: doc/classes/Object.xml:303
+#: doc/classes/Object.xml:308
msgid ""
"Returns [code]true[/code] if a metadata entry is found with the given "
"[code]name[/code]."
msgstr ""
-#: doc/classes/Object.xml:312
+#: doc/classes/Object.xml:317
msgid ""
"Returns [code]true[/code] if the object contains the given [code]method[/"
"code]."
msgstr ""
-#: doc/classes/Object.xml:321
+#: doc/classes/Object.xml:326
msgid "Returns [code]true[/code] if the given [code]signal[/code] exists."
msgstr ""
-#: doc/classes/Object.xml:330
+#: doc/classes/Object.xml:335
msgid ""
"Returns [code]true[/code] if the given user-defined [code]signal[/code] "
"exists. Only signals added using [method add_user_signal] are taken into "
"account."
msgstr ""
-#: doc/classes/Object.xml:337
+#: doc/classes/Object.xml:342
msgid "Returns [code]true[/code] if signal emission blocking is enabled."
msgstr ""
-#: doc/classes/Object.xml:346
+#: doc/classes/Object.xml:351
msgid ""
"Returns [code]true[/code] if the object inherits from the given [code]class[/"
"code]."
msgstr ""
-#: doc/classes/Object.xml:357
+#: doc/classes/Object.xml:362
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32772,13 +33385,13 @@ msgid ""
"code], [code]target[/code], and [code]method[/code]."
msgstr ""
-#: doc/classes/Object.xml:365
+#: doc/classes/Object.xml:370
msgid ""
"Returns [code]true[/code] if the [method Node.queue_free] method was called "
"for the object."
msgstr ""
-#: doc/classes/Object.xml:376
+#: doc/classes/Object.xml:381
msgid ""
"Send a given notification to the object, which will also trigger a call to "
"the [method _notification] method of all classes that the object inherits "
@@ -32790,34 +33403,42 @@ msgid ""
"and then down to its successive inheriting classes."
msgstr ""
-#: doc/classes/Object.xml:384
+#: doc/classes/Object.xml:389
msgid ""
"Notify the editor that the property list has changed, so that editor plugins "
"can take the new values into account. Does nothing on export builds."
msgstr ""
-#: doc/classes/Object.xml:393
+#: doc/classes/Object.xml:398
msgid "Removes a given entry from the object's metadata."
msgstr ""
-#: doc/classes/Object.xml:404
+#: doc/classes/Object.xml:409
msgid ""
"Assigns a new value to the given property. If the [code]property[/code] does "
-"not exist, nothing will happen."
+"not exist, nothing will happen.\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:413
+#: doc/classes/Object.xml:419
msgid "If set to [code]true[/code], signal emission is blocked."
msgstr ""
-#: doc/classes/Object.xml:424
+#: doc/classes/Object.xml:430
msgid ""
"Assigns a new value to the given property, after the current frame's physics "
"step. This is equivalent to calling [method set] via [method call_deferred], "
-"i.e. [code]call_deferred(\"set\", property, value)[/code]."
+"i.e. [code]call_deferred(\"set\", property, value)[/code].\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:435
+#: doc/classes/Object.xml:442
msgid ""
"Assigns a new value to the property identified by the [NodePath]. The node "
"path should be relative to the current object and can use the colon "
@@ -32829,19 +33450,19 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:449
+#: doc/classes/Object.xml:456
msgid ""
"Defines whether the object can translate strings (with calls to [method "
"tr]). Enabled by default."
msgstr ""
-#: doc/classes/Object.xml:460
+#: doc/classes/Object.xml:467
msgid ""
"Adds or changes a given entry in the object's metadata. Metadata are "
"serialized, and can take any [Variant] value."
msgstr ""
-#: doc/classes/Object.xml:469
+#: doc/classes/Object.xml:476
msgid ""
"Assigns a script to the object. Each object can have a single script "
"assigned to it, which are used to extend its functionality.\n"
@@ -32850,7 +33471,7 @@ msgid ""
"_init] method will be called."
msgstr ""
-#: doc/classes/Object.xml:477
+#: doc/classes/Object.xml:484
msgid ""
"Returns a [String] representing the object. If not overridden, defaults to "
"[code]\"[ClassName:RID]\"[/code].\n"
@@ -32858,7 +33479,7 @@ msgid ""
"representation."
msgstr ""
-#: doc/classes/Object.xml:487
+#: doc/classes/Object.xml:494
msgid ""
"Translates a message using translation catalogs configured in the Project "
"Settings.\n"
@@ -32867,35 +33488,35 @@ msgid ""
"set_message_translation]."
msgstr ""
-#: doc/classes/Object.xml:495
+#: doc/classes/Object.xml:502
msgid "Emitted whenever the object's script is changed."
msgstr ""
-#: doc/classes/Object.xml:501
+#: doc/classes/Object.xml:508
msgid "Called right when the object is initialized. Not available in script."
msgstr ""
-#: doc/classes/Object.xml:504
+#: doc/classes/Object.xml:511
msgid "Called before the object is about to be deleted."
msgstr ""
-#: doc/classes/Object.xml:507
+#: doc/classes/Object.xml:514
msgid ""
"Connects a signal in deferred mode. This way, signal emissions are stored in "
"a queue, then set on idle time."
msgstr ""
-#: doc/classes/Object.xml:510
+#: doc/classes/Object.xml:517
msgid "Persisting connections are saved when the object is serialized to file."
msgstr ""
-#: doc/classes/Object.xml:513
+#: doc/classes/Object.xml:520
msgid "One-shot connections disconnect themselves after emission."
msgstr ""
-#: doc/classes/Object.xml:516
+#: doc/classes/Object.xml:523
msgid ""
-"Connect a signal as reference counted. This means that a given signal can be "
+"Connect a signal as reference-counted. This means that a given signal can be "
"connected several times to the same target, and will only be fully "
"disconnected once no references are left."
msgstr ""
@@ -33360,10 +33981,29 @@ msgid "Returns the keycode of the given string (e.g. \"Escape\")."
msgstr ""
#: doc/classes/OS.xml:115
-msgid "Returns the command line arguments passed to the engine."
+msgid ""
+"Returns the command-line arguments passed to the engine.\n"
+"Command-line arguments can be written in any form, including both [code]--"
+"key value[/code] and [code]--key=value[/code] forms so they can be properly "
+"parsed, as long as custom command-line arguments do not conflict with engine "
+"arguments.\n"
+"You can also incorporate environment variables using the [method "
+"get_environment] method.\n"
+"You can set [code]editor/main_run_args[/code] in the Project Settings to "
+"define command-line arguments to be passed by the editor when running the "
+"project.\n"
+"Here's a minimal example on how to parse command-line arguments into a "
+"dictionary using the [code]--key=value[/code] form for arguments:\n"
+"[codeblock]\n"
+"var arguments = {}\n"
+"for argument in OS.get_cmdline_args():\n"
+" if argument.find(\"=\") > -1:\n"
+" var key_value = argument.split(\"=\")\n"
+" arguments[key_value[0].lstrip(\"--\")] = key_value[1]\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/OS.xml:122
+#: doc/classes/OS.xml:133
msgid ""
"Returns an array of MIDI device names.\n"
"The returned array will be empty if the system MIDI driver has not "
@@ -33371,14 +34011,14 @@ msgid ""
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:133
+#: doc/classes/OS.xml:144
msgid ""
"Returns current date as a dictionary of keys: [code]year[/code], "
"[code]month[/code], [code]day[/code], [code]weekday[/code], [code]dst[/code] "
"(Daylight Savings Time)."
msgstr ""
-#: doc/classes/OS.xml:142
+#: doc/classes/OS.xml:153
msgid ""
"Returns current datetime as a dictionary of keys: [code]year[/code], "
"[code]month[/code], [code]day[/code], [code]weekday[/code], [code]dst[/code] "
@@ -33386,7 +34026,7 @@ msgid ""
"[code]second[/code]."
msgstr ""
-#: doc/classes/OS.xml:151
+#: doc/classes/OS.xml:162
msgid ""
"Gets a dictionary of time values corresponding to the given UNIX epoch time "
"(in seconds).\n"
@@ -33395,22 +34035,22 @@ msgid ""
"the epoch."
msgstr ""
-#: doc/classes/OS.xml:161
+#: doc/classes/OS.xml:172
msgid "Returns an environment variable."
msgstr ""
-#: doc/classes/OS.xml:168
+#: doc/classes/OS.xml:179
msgid "Returns the path to the current engine executable."
msgstr ""
-#: doc/classes/OS.xml:175
+#: doc/classes/OS.xml:186
msgid ""
"With this function you can get the list of dangerous permissions that have "
"been granted to the Android application.\n"
"[b]Note:[/b] This method is implemented on Android."
msgstr ""
-#: doc/classes/OS.xml:185
+#: doc/classes/OS.xml:196
msgid ""
"Returns the given keycode as a string (e.g. Return values: [code]\"Escape\"[/"
"code], [code]\"Shift+Escape\"[/code]).\n"
@@ -33418,18 +34058,18 @@ msgid ""
"get_keycode_with_modifiers]."
msgstr ""
-#: doc/classes/OS.xml:193
+#: doc/classes/OS.xml:204
msgid "Returns the host OS locale."
msgstr ""
-#: doc/classes/OS.xml:200
+#: doc/classes/OS.xml:211
msgid ""
"Returns the model name of the current device.\n"
"[b]Note:[/b] This method is implemented on Android and iOS. Returns "
"[code]\"GenericDevice\"[/code] on unsupported platforms."
msgstr ""
-#: doc/classes/OS.xml:208
+#: doc/classes/OS.xml:219
msgid ""
"Returns the name of the host OS. Possible values are: [code]\"Android\"[/"
"code], [code]\"iOS\"[/code], [code]\"HTML5\"[/code], [code]\"OSX\"[/code], "
@@ -33437,81 +34077,81 @@ msgid ""
"[code]\"X11\"[/code]."
msgstr ""
-#: doc/classes/OS.xml:215
+#: doc/classes/OS.xml:226
msgid ""
"Returns the project's process ID.\n"
"[b]Note:[/b] This method is implemented on Android, iOS, Linux, macOS and "
"Windows."
msgstr ""
-#: doc/classes/OS.xml:223
+#: doc/classes/OS.xml:234
msgid "Returns the number of threads available on the host machine."
msgstr ""
-#: doc/classes/OS.xml:230
+#: doc/classes/OS.xml:241
msgid ""
"Returns the amount of time in milliseconds it took for the boot logo to "
"appear."
msgstr ""
-#: doc/classes/OS.xml:237
+#: doc/classes/OS.xml:248
msgid "Returns the maximum amount of static memory used (only works in debug)."
msgstr ""
-#: doc/classes/OS.xml:244
+#: doc/classes/OS.xml:255
msgid "Returns the amount of static memory being used by the program in bytes."
msgstr ""
-#: doc/classes/OS.xml:253
+#: doc/classes/OS.xml:264
msgid ""
"Returns the actual path to commonly used folders across different platforms. "
"Available locations are specified in [enum SystemDir].\n"
"[b]Note:[/b] This method is implemented on Android, Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:261
+#: doc/classes/OS.xml:272
msgid ""
"Returns the total number of available tablet drivers.\n"
"[b]Note:[/b] This method is implemented on Windows."
msgstr ""
-#: doc/classes/OS.xml:271
+#: doc/classes/OS.xml:282
msgid ""
"Returns the tablet driver name for the given index.\n"
"[b]Note:[/b] This method is implemented on Windows."
msgstr ""
-#: doc/classes/OS.xml:279
+#: doc/classes/OS.xml:290
msgid ""
"Returns the amount of time passed in milliseconds since the engine started."
msgstr ""
-#: doc/classes/OS.xml:286
+#: doc/classes/OS.xml:297
msgid ""
"Returns the amount of time passed in microseconds since the engine started."
msgstr ""
-#: doc/classes/OS.xml:295
+#: doc/classes/OS.xml:306
msgid "Returns current time as a dictionary of keys: hour, minute, second."
msgstr ""
-#: doc/classes/OS.xml:302
+#: doc/classes/OS.xml:313
msgid ""
"Returns the current time zone as a dictionary with the keys: bias and name."
msgstr ""
-#: doc/classes/OS.xml:309
+#: doc/classes/OS.xml:320
msgid ""
"Returns a string that is unique to the device.\n"
"[b]Note:[/b] Returns an empty string on HTML5 and UWP, as this method isn't "
"implemented on those platforms yet."
msgstr ""
-#: doc/classes/OS.xml:317
+#: doc/classes/OS.xml:328
msgid "Returns the current UNIX epoch timestamp."
msgstr ""
-#: doc/classes/OS.xml:326
+#: doc/classes/OS.xml:337
msgid ""
"Gets an epoch time value from a dictionary of time values.\n"
"[code]datetime[/code] must be populated with the following keys: [code]year[/"
@@ -33522,7 +34162,7 @@ msgid ""
"ignored."
msgstr ""
-#: doc/classes/OS.xml:335
+#: doc/classes/OS.xml:346
msgid ""
"Returns the absolute directory path where user data is written ([code]user://"
"[/code]).\n"
@@ -33540,11 +34180,11 @@ msgid ""
"[/code]."
msgstr ""
-#: doc/classes/OS.xml:348
+#: doc/classes/OS.xml:359
msgid "Returns [code]true[/code] if an environment variable exists."
msgstr ""
-#: doc/classes/OS.xml:357
+#: doc/classes/OS.xml:368
msgid ""
"Returns [code]true[/code] if the feature for the given feature tag is "
"supported in the currently running instance, depending on platform, build "
@@ -33555,7 +34195,7 @@ msgid ""
"[b]Note:[/b] Tag names are case-sensitive."
msgstr ""
-#: doc/classes/OS.xml:365
+#: doc/classes/OS.xml:376
msgid ""
"Returns [code]true[/code] if the Godot binary used to run the project is a "
"[i]debug[/i] export template, or when running in the editor.\n"
@@ -33566,26 +34206,26 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/OS.xml:376
+#: doc/classes/OS.xml:387
msgid ""
"Returns [code]true[/code] if the input keycode corresponds to a Unicode "
"character."
msgstr ""
-#: doc/classes/OS.xml:383
+#: doc/classes/OS.xml:394
msgid ""
"Returns [code]true[/code] if the engine was executed with [code]-v[/code] "
"(verbose stdout)."
msgstr ""
-#: doc/classes/OS.xml:390
+#: doc/classes/OS.xml:401
msgid ""
"If [code]true[/code], the [code]user://[/code] file system is persistent, so "
"that its state is the same after a player quits and starts the game again. "
"Relevant to the HTML5 platform, where this persistence may be unavailable."
msgstr ""
-#: doc/classes/OS.xml:399
+#: doc/classes/OS.xml:410
msgid ""
"Kill (terminate) the process identified by the given process ID ([code]pid[/"
"code]), e.g. the one returned by [method execute] in non-blocking mode.\n"
@@ -33595,37 +34235,37 @@ msgid ""
"Windows."
msgstr ""
-#: doc/classes/OS.xml:408
+#: doc/classes/OS.xml:419
msgid ""
"Initialises the singleton for the system MIDI driver.\n"
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:418
+#: doc/classes/OS.xml:429
msgid ""
"Shows all resources in the game. Optionally, the list can be written to a "
"file by specifying a file path in [code]tofile[/code]."
msgstr ""
-#: doc/classes/OS.xml:425
+#: doc/classes/OS.xml:436
msgid "Shows the list of loaded textures sorted by size in memory."
msgstr ""
-#: doc/classes/OS.xml:434
+#: doc/classes/OS.xml:445
msgid "Shows the number of resources loaded by the game of the given types."
msgstr ""
-#: doc/classes/OS.xml:443
+#: doc/classes/OS.xml:454
msgid "Shows all resources currently used by the game."
msgstr ""
-#: doc/classes/OS.xml:452
+#: doc/classes/OS.xml:463
msgid ""
"At the moment this function is only used by [code]AudioDriverOpenSL[/code] "
"to request permission for [code]RECORD_AUDIO[/code] on Android."
msgstr ""
-#: doc/classes/OS.xml:459
+#: doc/classes/OS.xml:470
msgid ""
"With this function you can request dangerous permissions since normal "
"permissions are automatically granted at install time in Android "
@@ -33633,15 +34273,15 @@ msgid ""
"[b]Note:[/b] This method is implemented on Android."
msgstr ""
-#: doc/classes/OS.xml:469
+#: doc/classes/OS.xml:480
msgid "Sets the name of the current thread."
msgstr ""
-#: doc/classes/OS.xml:478
+#: doc/classes/OS.xml:489
msgid "Enables backup saves if [code]enabled[/code] is [code]true[/code]."
msgstr ""
-#: doc/classes/OS.xml:487
+#: doc/classes/OS.xml:498
msgid ""
"Requests the OS to open a resource with the most appropriate program. For "
"example:\n"
@@ -33660,7 +34300,7 @@ msgid ""
"and Windows."
msgstr ""
-#: doc/classes/OS.xml:498
+#: doc/classes/OS.xml:509
msgid ""
"The exit code passed to the OS when the main loop exits. By convention, an "
"exit code of [code]0[/code] indicates success whereas a non-zero exit code "
@@ -33670,137 +34310,137 @@ msgid ""
"with an [code]exit_code[/code] argument passed."
msgstr ""
-#: doc/classes/OS.xml:502
+#: doc/classes/OS.xml:513
msgid ""
"If [code]true[/code], the engine optimizes for low processor usage by only "
"refreshing the screen if needed. Can improve battery consumption on mobile."
msgstr ""
-#: doc/classes/OS.xml:505
+#: doc/classes/OS.xml:516
msgid ""
"The amount of sleeping between frames when the low-processor usage mode is "
"enabled (in microseconds). Higher values will result in lower CPU usage."
msgstr ""
-#: doc/classes/OS.xml:508
-msgid "The current tablet drvier in use."
+#: doc/classes/OS.xml:519
+msgid "The current tablet driver in use."
msgstr ""
-#: doc/classes/OS.xml:513
+#: doc/classes/OS.xml:524
msgid ""
"The GLES2 rendering backend. It uses OpenGL ES 2.0 on mobile devices, OpenGL "
"2.1 on desktop platforms and WebGL 1.0 on the web."
msgstr ""
-#: doc/classes/OS.xml:516
+#: doc/classes/OS.xml:527
msgid "The Vulkan rendering backend."
msgstr ""
-#: doc/classes/OS.xml:519
+#: doc/classes/OS.xml:530
msgid "Sunday."
msgstr ""
-#: doc/classes/OS.xml:522
+#: doc/classes/OS.xml:533
msgid "Monday."
msgstr ""
-#: doc/classes/OS.xml:525
+#: doc/classes/OS.xml:536
msgid "Tuesday."
msgstr ""
-#: doc/classes/OS.xml:528
+#: doc/classes/OS.xml:539
msgid "Wednesday."
msgstr ""
-#: doc/classes/OS.xml:531
+#: doc/classes/OS.xml:542
msgid "Thursday."
msgstr ""
-#: doc/classes/OS.xml:534
+#: doc/classes/OS.xml:545
msgid "Friday."
msgstr ""
-#: doc/classes/OS.xml:537
+#: doc/classes/OS.xml:548
msgid "Saturday."
msgstr ""
-#: doc/classes/OS.xml:540
+#: doc/classes/OS.xml:551
msgid "January."
msgstr ""
-#: doc/classes/OS.xml:543
+#: doc/classes/OS.xml:554
msgid "February."
msgstr ""
-#: doc/classes/OS.xml:546
+#: doc/classes/OS.xml:557
msgid "March."
msgstr ""
-#: doc/classes/OS.xml:549
+#: doc/classes/OS.xml:560
msgid "April."
msgstr ""
-#: doc/classes/OS.xml:552
+#: doc/classes/OS.xml:563
msgid "May."
msgstr ""
-#: doc/classes/OS.xml:555
+#: doc/classes/OS.xml:566
msgid "June."
msgstr ""
-#: doc/classes/OS.xml:558
+#: doc/classes/OS.xml:569
msgid "July."
msgstr ""
-#: doc/classes/OS.xml:561
+#: doc/classes/OS.xml:572
msgid "August."
msgstr ""
-#: doc/classes/OS.xml:564
+#: doc/classes/OS.xml:575
msgid "September."
msgstr ""
-#: doc/classes/OS.xml:567
+#: doc/classes/OS.xml:578
msgid "October."
msgstr ""
-#: doc/classes/OS.xml:570
+#: doc/classes/OS.xml:581
msgid "November."
msgstr ""
-#: doc/classes/OS.xml:573
+#: doc/classes/OS.xml:584
msgid "December."
msgstr ""
-#: doc/classes/OS.xml:576
+#: doc/classes/OS.xml:587
msgid "Desktop directory path."
msgstr ""
-#: doc/classes/OS.xml:579
+#: doc/classes/OS.xml:590
msgid "DCIM (Digital Camera Images) directory path."
msgstr ""
-#: doc/classes/OS.xml:582
+#: doc/classes/OS.xml:593
msgid "Documents directory path."
msgstr ""
-#: doc/classes/OS.xml:585
+#: doc/classes/OS.xml:596
msgid "Downloads directory path."
msgstr ""
-#: doc/classes/OS.xml:588
+#: doc/classes/OS.xml:599
msgid "Movies directory path."
msgstr ""
-#: doc/classes/OS.xml:591
+#: doc/classes/OS.xml:602
msgid "Music directory path."
msgstr ""
-#: doc/classes/OS.xml:594
+#: doc/classes/OS.xml:605
msgid "Pictures directory path."
msgstr ""
-#: doc/classes/OS.xml:597
+#: doc/classes/OS.xml:608
msgid "Ringtones directory path."
msgstr ""
@@ -33855,7 +34495,15 @@ msgid ""
"should always be preferred."
msgstr ""
-#: doc/classes/PackedByteArray.xml:85
+#: doc/classes/PackedByteArray.xml:87 doc/classes/PackedColorArray.xml:53
+#: doc/classes/PackedFloat32Array.xml:54 doc/classes/PackedFloat64Array.xml:54
+#: doc/classes/PackedInt32Array.xml:54 doc/classes/PackedInt64Array.xml:54
+#: doc/classes/PackedStringArray.xml:53 doc/classes/PackedVector2Array.xml:53
+#: doc/classes/PackedVector3Array.xml:53
+msgid "Returns [code]true[/code] if the array contains [code]value[/code]."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:94
msgid ""
"Returns a hexadecimal representation of this array as a [String].\n"
"[codeblock]\n"
@@ -33864,39 +34512,48 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/PackedByteArray.xml:100 doc/classes/PackedColorArray.xml:55
-#: doc/classes/PackedFloat32Array.xml:56 doc/classes/PackedFloat64Array.xml:56
-#: doc/classes/PackedStringArray.xml:55 doc/classes/PackedVector2Array.xml:55
-#: doc/classes/PackedVector3Array.xml:55
+#: doc/classes/PackedByteArray.xml:109 doc/classes/PackedColorArray.xml:64
+#: doc/classes/PackedFloat32Array.xml:65 doc/classes/PackedFloat64Array.xml:65
+#: doc/classes/PackedStringArray.xml:64 doc/classes/PackedVector2Array.xml:64
+#: doc/classes/PackedVector3Array.xml:64
msgid ""
"Inserts a new element at a given position in the array. The position must be "
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PackedByteArray.xml:134 doc/classes/PackedColorArray.xml:89
-#: doc/classes/PackedFloat32Array.xml:90 doc/classes/PackedFloat64Array.xml:90
-#: doc/classes/PackedInt32Array.xml:90 doc/classes/PackedInt64Array.xml:90
-#: doc/classes/PackedStringArray.xml:89 doc/classes/PackedVector2Array.xml:89
-#: doc/classes/PackedVector3Array.xml:89
+#: doc/classes/PackedByteArray.xml:143 doc/classes/PackedColorArray.xml:98
+#: doc/classes/PackedFloat32Array.xml:99 doc/classes/PackedFloat64Array.xml:99
+#: doc/classes/PackedInt32Array.xml:99 doc/classes/PackedInt64Array.xml:99
+#: doc/classes/PackedStringArray.xml:98 doc/classes/PackedVector2Array.xml:98
+#: doc/classes/PackedVector3Array.xml:98
msgid ""
"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."
msgstr ""
-#: doc/classes/PackedByteArray.xml:145
+#: doc/classes/PackedByteArray.xml:154
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PackedByteArray.xml:152 doc/classes/PackedColorArray.xml:107
-#: doc/classes/PackedFloat32Array.xml:108
-#: doc/classes/PackedFloat64Array.xml:108 doc/classes/PackedStringArray.xml:107
-#: doc/classes/PackedVector2Array.xml:107
-#: doc/classes/PackedVector3Array.xml:107
+#: doc/classes/PackedByteArray.xml:161 doc/classes/PackedColorArray.xml:116
+#: doc/classes/PackedFloat32Array.xml:117
+#: doc/classes/PackedFloat64Array.xml:117 doc/classes/PackedStringArray.xml:116
+#: doc/classes/PackedVector2Array.xml:116
+#: doc/classes/PackedVector3Array.xml:116
msgid "Returns the size of the array."
msgstr ""
-#: doc/classes/PackedByteArray.xml:163
+#: doc/classes/PackedByteArray.xml:168 doc/classes/PackedColorArray.xml:123
+#: doc/classes/PackedFloat32Array.xml:124
+#: doc/classes/PackedFloat64Array.xml:124 doc/classes/PackedInt32Array.xml:124
+#: doc/classes/PackedInt64Array.xml:124 doc/classes/PackedStringArray.xml:123
+#: doc/classes/PackedVector2Array.xml:123
+#: doc/classes/PackedVector3Array.xml:123
+msgid "Sorts the elements of the array in ascending order."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:179
msgid ""
"Returns the slice of the [PackedByteArray] between indices (inclusive) as a "
"new [PackedByteArray]. Any negative index is considered to be from the end "
@@ -33924,12 +34581,12 @@ msgstr ""
msgid "Appends a [PackedColorArray] at the end of this array."
msgstr ""
-#: doc/classes/PackedColorArray.xml:71 doc/classes/PackedInt32Array.xml:72
-#: doc/classes/PackedInt64Array.xml:72
+#: doc/classes/PackedColorArray.xml:80 doc/classes/PackedInt32Array.xml:81
+#: doc/classes/PackedInt64Array.xml:81
msgid "Appends a value to the array."
msgstr ""
-#: doc/classes/PackedColorArray.xml:100
+#: doc/classes/PackedColorArray.xml:109
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -33959,8 +34616,8 @@ msgstr ""
msgid "Appends a [PackedFloat32Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedFloat32Array.xml:101
-#: doc/classes/PackedFloat64Array.xml:101
+#: doc/classes/PackedFloat32Array.xml:110
+#: doc/classes/PackedFloat64Array.xml:110
msgid "Changes the float at the given index."
msgstr ""
@@ -34013,17 +34670,17 @@ msgstr ""
msgid "Appends a [PackedInt32Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:56 doc/classes/PackedInt64Array.xml:56
+#: doc/classes/PackedInt32Array.xml:65 doc/classes/PackedInt64Array.xml:65
msgid ""
"Inserts a new integer at a given position in the array. The position must be "
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:101 doc/classes/PackedInt64Array.xml:101
+#: doc/classes/PackedInt32Array.xml:110 doc/classes/PackedInt64Array.xml:110
msgid "Changes the integer at the given index."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:108 doc/classes/PackedInt64Array.xml:108
+#: doc/classes/PackedInt32Array.xml:117 doc/classes/PackedInt64Array.xml:117
msgid "Returns the array size."
msgstr ""
@@ -34064,6 +34721,14 @@ msgid ""
"Can be used to save a node to a file. When saving, the node as well as all "
"the node it owns get saved (see [code]owner[/code] property on [Node]).\n"
"[b]Note:[/b] The node doesn't need to own itself.\n"
+"[b]Example of loading a saved scene:[/b]\n"
+"[codeblock]\n"
+"# Use `load()` instead of `preload()` if the path isn't known at compile-"
+"time.\n"
+"var scene = preload(\"res://scene.tscn\").instance()\n"
+"# Add the node as a child of the node the script is attached to.\n"
+"add_child(scene)\n"
+"[/codeblock]\n"
"[b]Example of saving a node with different owners:[/b] The following example "
"creates 3 objects: [code]Node2D[/code] ([code]node[/code]), "
"[code]RigidBody2D[/code] ([code]rigid[/code]) and [code]CollisionObject2D[/"
@@ -34095,29 +34760,29 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/PackedScene.xml:40
+#: doc/classes/PackedScene.xml:47
msgid "Returns [code]true[/code] if the scene file has nodes."
msgstr ""
-#: doc/classes/PackedScene.xml:47
+#: doc/classes/PackedScene.xml:54
msgid ""
"Returns the [code]SceneState[/code] representing the scene file contents."
msgstr ""
-#: doc/classes/PackedScene.xml:56
+#: doc/classes/PackedScene.xml:63
msgid ""
"Instantiates the scene's node hierarchy. Triggers child scene "
"instantiation(s). Triggers a [constant Node.NOTIFICATION_INSTANCED] "
"notification on the root node."
msgstr ""
-#: doc/classes/PackedScene.xml:65
+#: doc/classes/PackedScene.xml:72
msgid ""
"Pack will ignore any sub-nodes not owned by given node. See [member Node."
"owner]."
msgstr ""
-#: doc/classes/PackedScene.xml:71
+#: doc/classes/PackedScene.xml:78
msgid ""
"A dictionary representation of the scene contents.\n"
"Available keys include \"rnames\" and \"variants\" for resources, "
@@ -34126,18 +34791,18 @@ msgid ""
"connections, and \"version\" for the format style of the PackedScene."
msgstr ""
-#: doc/classes/PackedScene.xml:77
+#: doc/classes/PackedScene.xml:84
msgid "If passed to [method instance], blocks edits to the scene state."
msgstr ""
-#: doc/classes/PackedScene.xml:80
+#: doc/classes/PackedScene.xml:87
msgid ""
"If passed to [method instance], provides local scene resources to the local "
"scene.\n"
"[b]Note:[/b] Only available in editor builds."
msgstr ""
-#: doc/classes/PackedScene.xml:84
+#: doc/classes/PackedScene.xml:91
msgid ""
"If passed to [method instance], provides local scene resources to the local "
"scene. Only the main scene should receive the main edit state.\n"
@@ -34165,11 +34830,11 @@ msgstr ""
msgid "Appends a [PackedStringArray] at the end of this array."
msgstr ""
-#: doc/classes/PackedStringArray.xml:71
+#: doc/classes/PackedStringArray.xml:80
msgid "Appends a string element at end of the array."
msgstr ""
-#: doc/classes/PackedStringArray.xml:100
+#: doc/classes/PackedStringArray.xml:109
msgid "Changes the [String] at the given index."
msgstr ""
@@ -34194,11 +34859,11 @@ msgstr ""
msgid "Appends a [PackedVector2Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedVector2Array.xml:71
+#: doc/classes/PackedVector2Array.xml:80
msgid "Inserts a [Vector2] at the end."
msgstr ""
-#: doc/classes/PackedVector2Array.xml:100
+#: doc/classes/PackedVector2Array.xml:109
msgid "Changes the [Vector2] at the given index."
msgstr ""
@@ -34223,11 +34888,11 @@ msgstr ""
msgid "Appends a [PackedVector3Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedVector3Array.xml:71
+#: doc/classes/PackedVector3Array.xml:80
msgid "Inserts a [Vector3] at the end."
msgstr ""
-#: doc/classes/PackedVector3Array.xml:100
+#: doc/classes/PackedVector3Array.xml:109
msgid "Changes the [Vector3] at the given index."
msgstr ""
@@ -35118,13 +35783,55 @@ msgid ""
"as the values displayed in the [b]Monitor[/b] tab in the editor's "
"[b]Debugger[/b] panel. By using the [method get_monitor] method of this "
"class, you can access this data from your code.\n"
+"You can add custom monitors using the [method add_custom_monitor] method. "
+"Custom monitors are available in [b]Monitor[/b] tab in the editor's "
+"[b]Debugger[/b] panel together with built-in monitors.\n"
"[b]Note:[/b] A few of these monitors are only available in debug mode and "
"will always return 0 when used in a release build.\n"
"[b]Note:[/b] Many of these monitors are not updated in real-time, so there "
-"may be a short delay between changes."
+"may be a short delay between changes.\n"
+"[b]Note:[/b] Custom monitors do not support negative values. Negative values "
+"are clamped to 0."
+msgstr ""
+
+#: doc/classes/Performance.xml:26
+msgid ""
+"Adds a custom monitor with name same as id. You can specify the category of "
+"monitor using '/' in id. If there are more than one '/' then default "
+"category is used. Default category is \"Custom\".\n"
+"[codeblock]\n"
+"Performance.add_custom_monitor(\"MyCategory/MyMonitor\", some_callable) # "
+"Adds monitor with name \"MyName\" to category \"MyCategory\"\n"
+"Performance.add_custom_monitor(\"MyMonitor\", some_callable) # Adds monitor "
+"with name \"MyName\" to category \"Custom\"\n"
+"# Note: \"MyCategory/MyMonitor\" and \"MyMonitor\" have same name but "
+"different ids so above code is valid\n"
+"Performance.add_custom_monitor(\"Custom/MyMonitor\", some_callable) # Adds "
+"monitor with name \"MyName\" to category \"Custom\"\n"
+"# Note: \"MyMonitor\" and \"Custom/MyMonitor\" have same name and same "
+"category but different ids so above code is valid\n"
+"Performance.add_custom_monitor(\"MyCategoryOne/MyCategoryTwo/MyMonitor\", "
+"some_callable) # Adds monitor with name \"MyCategoryOne/MyCategoryTwo/"
+"MyMonitor\" to category \"Custom\"\n"
+"[/codeblock]\n"
+"The debugger calls the callable to get the value of custom monitor. The "
+"callable must return a number.\n"
+"Callables are called with arguments supplied in argument array.\n"
+"[b]Note:[/b] It throws an error if given id is already present."
msgstr ""
-#: doc/classes/Performance.xml:20
+#: doc/classes/Performance.xml:46
+msgid ""
+"Returns the value of custom monitor with given id. The callable is called to "
+"get the value of custom monitor.\n"
+"[b]Note:[/b] It throws an error if the given id is absent."
+msgstr ""
+
+#: doc/classes/Performance.xml:54
+msgid "Returns the names of active custom monitors in an array."
+msgstr ""
+
+#: doc/classes/Performance.xml:63
msgid ""
"Returns the value of one of the available monitors. You should provide one "
"of the [enum Monitor] constants as the argument, like this:\n"
@@ -35134,123 +35841,139 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Performance.xml:29
+#: doc/classes/Performance.xml:73
+msgid "Returns the last tick in which custom monitor was added/removed."
+msgstr ""
+
+#: doc/classes/Performance.xml:82
+msgid ""
+"Returns true if custom monitor with the given id is present otherwise "
+"returns false."
+msgstr ""
+
+#: doc/classes/Performance.xml:91
+msgid ""
+"Removes the custom monitor with given id.\n"
+"[b]Note:[/b] It throws an error if the given id is already absent."
+msgstr ""
+
+#: doc/classes/Performance.xml:98
msgid "Number of frames per second."
msgstr ""
-#: doc/classes/Performance.xml:32
+#: doc/classes/Performance.xml:101
msgid "Time it took to complete one frame, in seconds."
msgstr ""
-#: doc/classes/Performance.xml:35
+#: doc/classes/Performance.xml:104
msgid "Time it took to complete one physics frame, in seconds."
msgstr ""
-#: doc/classes/Performance.xml:38
+#: doc/classes/Performance.xml:107
msgid ""
"Static memory currently used, in bytes. Not available in release builds."
msgstr ""
-#: doc/classes/Performance.xml:41
+#: doc/classes/Performance.xml:110
msgid "Available static memory. Not available in release builds."
msgstr ""
-#: doc/classes/Performance.xml:44
+#: doc/classes/Performance.xml:113
msgid ""
"Largest amount of memory the message queue buffer has used, in bytes. The "
"message queue is used for deferred functions calls and notifications."
msgstr ""
-#: doc/classes/Performance.xml:47
+#: doc/classes/Performance.xml:116
msgid "Number of objects currently instanced (including nodes)."
msgstr ""
-#: doc/classes/Performance.xml:50
+#: doc/classes/Performance.xml:119
msgid "Number of resources currently used."
msgstr ""
-#: doc/classes/Performance.xml:53
+#: doc/classes/Performance.xml:122
msgid ""
"Number of nodes currently instanced in the scene tree. This also includes "
"the root node."
msgstr ""
-#: doc/classes/Performance.xml:56
+#: doc/classes/Performance.xml:125
msgid ""
"Number of orphan nodes, i.e. nodes which are not parented to a node of the "
"scene tree."
msgstr ""
-#: doc/classes/Performance.xml:59
+#: doc/classes/Performance.xml:128
msgid "3D objects drawn per frame."
msgstr ""
-#: doc/classes/Performance.xml:62
+#: doc/classes/Performance.xml:131
msgid "Vertices drawn per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:65
+#: doc/classes/Performance.xml:134
msgid "Material changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:68
+#: doc/classes/Performance.xml:137
msgid "Shader changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:71
+#: doc/classes/Performance.xml:140
msgid "Render surface changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:74
+#: doc/classes/Performance.xml:143
msgid "Draw calls per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:77 doc/classes/RenderingServer.xml:3805
+#: doc/classes/Performance.xml:146 doc/classes/RenderingServer.xml:3816
msgid ""
"The amount of video memory used, i.e. texture and vertex memory combined."
msgstr ""
-#: doc/classes/Performance.xml:80 doc/classes/RenderingServer.xml:3808
+#: doc/classes/Performance.xml:149 doc/classes/RenderingServer.xml:3819
msgid "The amount of texture memory used."
msgstr ""
-#: doc/classes/Performance.xml:83 doc/classes/RenderingServer.xml:3811
+#: doc/classes/Performance.xml:152 doc/classes/RenderingServer.xml:3822
msgid "The amount of vertex memory used."
msgstr ""
-#: doc/classes/Performance.xml:86 doc/classes/RenderingServer.xml:3802
+#: doc/classes/Performance.xml:155 doc/classes/RenderingServer.xml:3813
msgid "Unimplemented in the GLES2 rendering backend, always returns 0."
msgstr ""
-#: doc/classes/Performance.xml:89
+#: doc/classes/Performance.xml:158
msgid "Number of active [RigidBody2D] nodes in the game."
msgstr ""
-#: doc/classes/Performance.xml:92
+#: doc/classes/Performance.xml:161
msgid "Number of collision pairs in the 2D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:95
+#: doc/classes/Performance.xml:164
msgid "Number of islands in the 2D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:98
+#: doc/classes/Performance.xml:167
msgid "Number of active [RigidBody3D] and [VehicleBody3D] nodes in the game."
msgstr ""
-#: doc/classes/Performance.xml:101
+#: doc/classes/Performance.xml:170
msgid "Number of collision pairs in the 3D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:104
+#: doc/classes/Performance.xml:173
msgid "Number of islands in the 3D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:107
+#: doc/classes/Performance.xml:176
msgid "Output latency of the [AudioServer]."
msgstr ""
-#: doc/classes/Performance.xml:110
+#: doc/classes/Performance.xml:179
msgid "Represents the size of the [enum Monitor] enum."
msgstr ""
@@ -35274,27 +35997,27 @@ msgstr ""
msgid "Damps the body's rotation if greater than [code]0[/code]."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:70 doc/classes/RigidBody3D.xml:132
+#: doc/classes/PhysicalBone3D.xml:70 doc/classes/RigidBody3D.xml:139
msgid "Lock the body's rotation in the X axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:73 doc/classes/RigidBody3D.xml:135
+#: doc/classes/PhysicalBone3D.xml:73 doc/classes/RigidBody3D.xml:142
msgid "Lock the body's rotation in the Y axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:76 doc/classes/RigidBody3D.xml:138
+#: doc/classes/PhysicalBone3D.xml:76 doc/classes/RigidBody3D.xml:145
msgid "Lock the body's rotation in the Z axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:79 doc/classes/RigidBody3D.xml:141
+#: doc/classes/PhysicalBone3D.xml:79 doc/classes/RigidBody3D.xml:148
msgid "Lock the body's movement in the X axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:82 doc/classes/RigidBody3D.xml:144
+#: doc/classes/PhysicalBone3D.xml:82 doc/classes/RigidBody3D.xml:151
msgid "Lock the body's movement in the Y axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:85 doc/classes/RigidBody3D.xml:147
+#: doc/classes/PhysicalBone3D.xml:85 doc/classes/RigidBody3D.xml:154
msgid "Lock the body's movement in the Z axis."
msgstr ""
@@ -35349,12 +36072,12 @@ msgstr ""
msgid "Damps the body's movement if greater than [code]0[/code]."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:118 doc/classes/RigidBody2D.xml:158
-#: doc/classes/RigidBody3D.xml:175
+#: doc/classes/PhysicalBone3D.xml:118 doc/classes/RigidBody2D.xml:159
+#: doc/classes/RigidBody3D.xml:183
msgid "The body's mass."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:121 doc/classes/RigidBody3D.xml:188
+#: doc/classes/PhysicalBone3D.xml:121 doc/classes/RigidBody3D.xml:196
msgid ""
"The body's weight based on its mass and the global 3D gravity. Global values "
"are set in [b]Project > Project Settings > Physics > 3d[/b]."
@@ -35661,7 +36384,7 @@ msgid "The inverse of the mass of the body."
msgstr ""
#: doc/classes/PhysicsDirectBodyState2D.xml:195
-#: doc/classes/PhysicsDirectBodyState3D.xml:198 doc/classes/RigidBody2D.xml:155
+#: doc/classes/PhysicsDirectBodyState3D.xml:198 doc/classes/RigidBody2D.xml:156
msgid "The body's linear velocity."
msgstr ""
@@ -36214,7 +36937,7 @@ msgid ""
msgstr ""
#: doc/classes/PhysicsServer2D.xml:620 doc/classes/PhysicsServer3D.xml:637
-#: doc/classes/RigidBody3D.xml:120
+#: doc/classes/RigidBody3D.xml:127
msgid ""
"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."
@@ -37279,47 +38002,64 @@ msgid ""
"collision queries. See also [PhysicsShapeQueryResult2D]."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:18
-msgid ""
-"Sets the [Shape2D] that will be used for collision/intersection queries."
-msgstr ""
-
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:24
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:15
msgid "If [code]true[/code], the query will take [Area2D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:18
msgid ""
"If [code]true[/code], the query will take [PhysicsBody2D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:30
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:30
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:21
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:21
msgid "The physics layer(s) the query will take into account (as a bitmask)."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:33
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:33
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:24
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:24
msgid ""
"The list of objects or object [RID]s that will be excluded from collisions."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:36
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:36 doc/classes/Shape3D.xml:16
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:27 doc/classes/Shape3D.xml:16
msgid "The collision margin for the shape."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:39
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:30
msgid "The motion of the shape being queried for."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:42
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:39
-msgid "The queried shape's [RID]. See also [method set_shape]."
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:33
+msgid ""
+"The [Shape2D] that will be used for collision/intersection queries. This "
+"stores the actual reference which avoids the shape to be released while "
+"being used for queries, so always prefer using this over [member shape_rid]."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:45
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:42
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:36
+msgid ""
+"The queried shape's [RID] that will be used for collision/intersection "
+"queries. Use this over [member shape] if you want to optimize for "
+"performance using the Servers API:\n"
+"[codeblock]\n"
+"var shape_rid = PhysicsServer2D.circle_shape_create()\n"
+"var radius = 64\n"
+"PhysicsServer2D.shape_set_data(shape_rid, radius)\n"
+"\n"
+"var params = PhysicsShapeQueryParameters2D.new()\n"
+"params.shape_rid = shape_rid\n"
+"\n"
+"# Execute physics queries here...\n"
+"\n"
+"# Release the shape when done with physics queries.\n"
+"PhysicsServer2D.free_rid(shape_rid)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:52
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:49
msgid "The queried shape's transform matrix."
msgstr ""
@@ -37333,18 +38073,40 @@ msgid ""
"collision queries. See also [PhysicsShapeQueryResult3D]."
msgstr ""
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:15
+msgid "If [code]true[/code], the query will take [Area3D]s into account."
+msgstr ""
+
#: doc/classes/PhysicsShapeQueryParameters3D.xml:18
msgid ""
-"Sets the [Shape3D] that will be used for collision/intersection queries."
+"If [code]true[/code], the query will take [PhysicsBody3D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:24
-msgid "If [code]true[/code], the query will take [Area3D]s into account."
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:30
+msgid ""
+"The [Shape3D] that will be used for collision/intersection queries. This "
+"stores the actual reference which avoids the shape to be released while "
+"being used for queries, so always prefer using this over [member shape_rid]."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:33
msgid ""
-"If [code]true[/code], the query will take [PhysicsBody3D]s into account."
+"The queried shape's [RID] that will be used for collision/intersection "
+"queries. Use this over [member shape] if you want to optimize for "
+"performance using the Servers API:\n"
+"[codeblock]\n"
+"var shape_rid = PhysicsServer3D.shape_create(PhysicsServer3D.SHAPE_SPHERE)\n"
+"var radius = 2.0\n"
+"PhysicsServer3D.shape_set_data(shape_rid, radius)\n"
+"\n"
+"var params = PhysicsShapeQueryParameters3D.new()\n"
+"params.shape_rid = shape_rid\n"
+"\n"
+"# Execute physics queries here...\n"
+"\n"
+"# Release the shape when done with physics queries.\n"
+"PhysicsServer3D.free_rid(shape_rid)\n"
+"[/codeblock]"
msgstr ""
#: doc/classes/PhysicsShapeQueryResult2D.xml:4
@@ -37485,92 +38247,94 @@ msgid ""
"code]."
msgstr ""
-#: doc/classes/Plane.xml:72
-msgid "Returns a point on the plane."
-msgstr ""
-
-#: doc/classes/Plane.xml:83
+#: doc/classes/Plane.xml:76
msgid ""
-"Returns [code]true[/code] if [code]point[/code] is inside the plane (by a "
-"very minimum [code]epsilon[/code] threshold)."
+"Returns [code]true[/code] if [code]point[/code] is inside the plane. "
+"Comparison uses a custom minimum [code]epsilon[/code] threshold."
msgstr ""
-#: doc/classes/Plane.xml:94
+#: doc/classes/Plane.xml:87
msgid ""
"Returns the intersection point of the three planes [code]b[/code], [code]c[/"
"code] and this plane. If no intersection is found, [code]null[/code] is "
"returned."
msgstr ""
-#: doc/classes/Plane.xml:105
+#: doc/classes/Plane.xml:98
msgid ""
"Returns the intersection point of a ray consisting of the position "
"[code]from[/code] and the direction normal [code]dir[/code] with this plane. "
"If no intersection is found, [code]null[/code] is returned."
msgstr ""
-#: doc/classes/Plane.xml:116
+#: doc/classes/Plane.xml:109
msgid ""
"Returns the intersection point of a segment from position [code]begin[/code] "
"to position [code]end[/code] with this plane. If no intersection is found, "
"[code]null[/code] is returned."
msgstr ""
-#: doc/classes/Plane.xml:125
+#: doc/classes/Plane.xml:118
msgid ""
"Returns [code]true[/code] if this plane and [code]plane[/code] are "
"approximately equal, by running [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/Plane.xml:134
+#: doc/classes/Plane.xml:127
msgid ""
"Returns [code]true[/code] if [code]point[/code] is located above the plane."
msgstr ""
-#: doc/classes/Plane.xml:141
+#: doc/classes/Plane.xml:134
msgid "Returns a copy of the plane, normalized."
msgstr ""
-#: doc/classes/Plane.xml:150
+#: doc/classes/Plane.xml:143
msgid ""
-"Returns the orthogonal projection of point [code]p[/code] into a point in "
-"the plane."
+"Returns the orthogonal projection of [code]point[/code] into a point in the "
+"plane."
msgstr ""
-#: doc/classes/Plane.xml:156
+#: doc/classes/Plane.xml:149
msgid ""
-"Distance from the origin to the plane, in the direction of [member normal]."
+"The distance from the origin to the plane, in the direction of [member "
+"normal]. This value is typically non-negative.\n"
+"In the scalar equation of the plane [code]ax + by + cz = d[/code], this is "
+"[code]d[/code], while the [code](a, b, c)[/code] coordinates are represented "
+"by the [member normal] property."
msgstr ""
-#: doc/classes/Plane.xml:159
+#: doc/classes/Plane.xml:153
msgid ""
-"The normal of the plane. \"Over\" or \"Above\" the plane is considered the "
-"side of the plane towards where the normal is pointing."
+"The normal of the plane, which must be normalized.\n"
+"In the scalar equation of the plane [code]ax + by + cz = d[/code], this is "
+"the vector [code](a, b, c)[/code], where [code]d[/code] is the [member d] "
+"property."
msgstr ""
-#: doc/classes/Plane.xml:162
-msgid "The [member normal]'s X component."
+#: doc/classes/Plane.xml:157
+msgid "The X component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:165
-msgid "The [member normal]'s Y component."
+#: doc/classes/Plane.xml:160
+msgid "The Y component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:168
-msgid "The [member normal]'s Z component."
+#: doc/classes/Plane.xml:163
+msgid "The Z component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:173
-msgid "A plane that extends in the Y and Z axes."
+#: doc/classes/Plane.xml:168
+msgid "A plane that extends in the Y and Z axes (normal vector points +X)."
msgstr ""
-#: doc/classes/Plane.xml:176
-msgid "A plane that extends in the X and Z axes."
+#: doc/classes/Plane.xml:171
+msgid "A plane that extends in the X and Z axes (normal vector points +Y)."
msgstr ""
-#: doc/classes/Plane.xml:179
-msgid "A plane that extends in the X and Y axes."
+#: doc/classes/Plane.xml:174
+msgid "A plane that extends in the X and Y axes (normal vector points +Z)."
msgstr ""
#: doc/classes/PlaneMesh.xml:4
@@ -38281,18 +39045,25 @@ msgstr ""
#: doc/classes/PrimitiveMesh.xml:16
msgid ""
-"Returns mesh arrays used to constitute surface of [Mesh]. Mesh arrays can be "
-"used with [ArrayMesh] to create new surfaces."
+"Returns mesh arrays used to constitute surface of [Mesh]. The result can be "
+"passed to [method ArrayMesh.add_surface_from_arrays] to create a new "
+"surface. For example:\n"
+"[codeblock]\n"
+"var c := CylinderMesh.new()\n"
+"var arr_mesh := ArrayMesh.new()\n"
+"arr_mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLES, c."
+"get_mesh_arrays())\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:22
+#: doc/classes/PrimitiveMesh.xml:27
msgid ""
"Overrides the [AABB] with one defined by user for use with frustum culling. "
"Especially useful to avoid unnexpected culling when using a shader to "
"offset vertices."
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:25
+#: doc/classes/PrimitiveMesh.xml:30
msgid ""
"If set, the order of the vertices in each triangle are reversed resulting in "
"the backside of the mesh being drawn.\n"
@@ -38300,7 +39071,7 @@ msgid ""
"[member BaseMaterial3D.cull_mode]."
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:29
+#: doc/classes/PrimitiveMesh.xml:34
msgid "The current [Material] of the primitive mesh."
msgstr ""
@@ -38731,11 +39502,17 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:260
msgid ""
+"Safer override for [member audio/output_latency] in the Web platform, to "
+"avoid audio issues especially on mobile devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:263
+msgid ""
"Setting to hardcode audio delay when playing video. Best to leave this "
"untouched unless you know what you are doing."
msgstr ""
-#: doc/classes/ProjectSettings.xml:263
+#: doc/classes/ProjectSettings.xml:266
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -38745,7 +39522,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:269
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -38755,27 +39532,27 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:269
+#: doc/classes/ProjectSettings.xml:272
msgid ""
"The default compression level for Zstandard. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
"speed. Decompression speed is mostly unaffected by the compression level."
msgstr ""
-#: doc/classes/ProjectSettings.xml:272
+#: doc/classes/ProjectSettings.xml:275
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:278
msgid ""
"Largest size limit (in power of 2) allowed when compressing using long-"
"distance matching with Zstandard. Higher values can result in better "
"compression, but will require more memory when compressing and decompressing."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:281
msgid ""
"If [code]true[/code], displays getters and setters in autocompletion results "
"in the script editor. This setting is meant to be used when porting old "
@@ -38783,74 +39560,55 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:281
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:284
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:287
+#: doc/classes/ProjectSettings.xml:294
msgid ""
"If [code]true[/code], enables specific GDScript warnings (see [code]debug/"
"gdscript/warnings/*[/code] settings). If [code]false[/code], disables all "
"GDScript warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
-msgid ""
-"If [code]true[/code], enables warnings when a function is declared with the "
-"same name as a constant."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:296
-msgid ""
-"If [code]true[/code], enables warnings when a function is declared with the "
-"same name as a variable. This will turn into an error in a future version "
-"when first-class functions become supported in GDScript."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:299
-msgid ""
-"If [code]true[/code], enables warnings when a function assigned to a "
-"variable may yield and return a function state instead of a value."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:302
+#: doc/classes/ProjectSettings.xml:300
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:303
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when dividing an integer by another "
"integer (the decimal part will be discarded)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when passing a floating-point value "
"to a function that expects an integer (it will be converted and lose "
"precision)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:314
+#: doc/classes/ProjectSettings.xml:312
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
@@ -38871,102 +39629,85 @@ msgid ""
"member variable)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:323
+#: doc/classes/ProjectSettings.xml:325
msgid ""
"If [code]true[/code], enables warnings when calling an expression that has "
"no effect on the surrounding code, such as writing [code]2 + 2[/code] as a "
"statement."
msgstr ""
-#: doc/classes/ProjectSettings.xml:326
+#: doc/classes/ProjectSettings.xml:328
msgid ""
"If [code]true[/code], enables warnings when calling a ternary expression "
"that has no effect on the surrounding code, such as writing [code]42 if "
"active else 0[/code] as a statement."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:331
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:334
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:335
+#: doc/classes/ProjectSettings.xml:337
msgid ""
"If [code]true[/code], enables warnings when assigning a variable using an "
"assignment operator like [code]+=[/code] if the variable wasn't previously "
"assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:338
+#: doc/classes/ProjectSettings.xml:340
msgid ""
"If [code]true[/code], enables warnings when unreachable code is detected "
"(such as after a [code]return[/code] statement that will always be executed)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:345
msgid ""
"If [code]true[/code], enables warnings when using an expression whose type "
"may not be compatible with the function parameter expected."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:348
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:347
+#: doc/classes/ProjectSettings.xml:351
msgid ""
"If [code]true[/code], enables warnings when calling a method whose presence "
"is not guaranteed at compile-time in the class."
msgstr ""
-#: doc/classes/ProjectSettings.xml:350
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], enables warnings when accessing a property whose "
"presence is not guaranteed at compile-time in the class."
msgstr ""
-#: doc/classes/ProjectSettings.xml:353
-msgid ""
-"If [code]true[/code], enables warnings when a function parameter is unused."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:356
-msgid ""
-"If [code]true[/code], enables warnings when a member variable is unused."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:363
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:362
+#: doc/classes/ProjectSettings.xml:366
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:365
-msgid ""
-"If [code]true[/code], enables warnings when a variable is declared with the "
-"same name as a function. This will turn into an error in a future version "
-"when first-class functions become supported in GDScript."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:368
+#: doc/classes/ProjectSettings.xml:369
msgid ""
"If [code]true[/code], enables warnings when assigning the result of a "
"function that returns [code]void[/code] to a variable."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:374
+#: doc/classes/ProjectSettings.xml:375
msgid ""
"Maximum number of frames per second allowed. The actual number of frames per "
"second may still be below this value if the game is lagging.\n"
@@ -38977,143 +39718,143 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:379
+#: doc/classes/ProjectSettings.xml:380
msgid "Maximum call stack allowed for debugging GDScript."
msgstr ""
-#: doc/classes/ProjectSettings.xml:382
+#: doc/classes/ProjectSettings.xml:383
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:385
+#: doc/classes/ProjectSettings.xml:386
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:388
+#: doc/classes/ProjectSettings.xml:389
msgid ""
"Print more information to standard output when running. It displays "
"information such as memory leaks, which scenes and resources are being "
"loaded, etc."
msgstr ""
-#: doc/classes/ProjectSettings.xml:391
+#: doc/classes/ProjectSettings.xml:392
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:394
+#: doc/classes/ProjectSettings.xml:395
msgid ""
"Color of the contact points between collision shapes, visible when \"Visible "
"Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:397
+#: doc/classes/ProjectSettings.xml:398
msgid ""
"Maximum number of contact points between collision shapes to display when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:400
+#: doc/classes/ProjectSettings.xml:401
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
msgid "Hotspot for the custom mouse cursor image."
msgstr ""
-#: doc/classes/ProjectSettings.xml:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
msgid ""
"If [code]true[/code], allows HiDPI display on Windows and macOS. This "
"setting has no effect on desktop Linux, as DPI-awareness fallbacks are not "
"supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"If [code]true[/code], keeps the screen on (even in case of inactivity), so "
"the screensaver does not take over. Works on desktop and mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
msgid "Default orientation on mobile devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"If [code]true[/code], the home indicator is hidden automatically. This only "
"affects iOS devices without a physical home button."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid "Force the window to be always on top."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid "Force the window to be borderless."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Sets the window to full screen when it starts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid ""
"Sets the game's main viewport height. On desktop platforms, this is the "
"default window size. Stretch mode settings also use this as a reference when "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Allows the window to be resizable by default."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"Sets the game's main viewport width. On desktop platforms, this is the "
"default window size. Stretch mode settings also use this as a reference when "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:454
+#: doc/classes/ProjectSettings.xml:455
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:457
+#: doc/classes/ProjectSettings.xml:458
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -39122,7 +39863,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:460
+#: doc/classes/ProjectSettings.xml:461
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -39133,13 +39874,13 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:464
+#: doc/classes/ProjectSettings.xml:465
msgid ""
"Search path for project-specific script templates. Script templates will be "
"search both in the editor-specific path and in this project-specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:467
+#: doc/classes/ProjectSettings.xml:468
msgid ""
"Text-based file extensions to include in the script editor's \"Find in Files"
"\" feature. You can add e.g. [code]tscn[/code] if you wish to also parse "
@@ -39147,49 +39888,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:470
+#: doc/classes/ProjectSettings.xml:471
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:473
+#: doc/classes/ProjectSettings.xml:474
msgid ""
-"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
+"If [code]true[/code], swaps Cancel and OK buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:478
+#: doc/classes/ProjectSettings.xml:479
msgid ""
"Path to a custom [Theme] resource file to use for the project ([code]theme[/"
"code] or generic [code]tres[/code]/[code]res[/code] extension)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:484
+#: doc/classes/ProjectSettings.xml:485
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:487
+#: doc/classes/ProjectSettings.xml:488
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:490
+#: doc/classes/ProjectSettings.xml:491
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:493
+#: doc/classes/ProjectSettings.xml:494
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:496
+#: doc/classes/ProjectSettings.xml:497
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -39198,7 +39939,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"Default [InputEventAction] to discard a modal or pending input.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39206,7 +39947,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:504
+#: doc/classes/ProjectSettings.xml:505
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39214,7 +39955,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:508
+#: doc/classes/ProjectSettings.xml:509
msgid ""
"Default [InputEventAction] to go to the end position of a [Control] (e.g. "
"last item in an [ItemList] or a [Tree]), matching the behavior of [constant "
@@ -39224,7 +39965,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:512
+#: doc/classes/ProjectSettings.xml:513
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -39233,7 +39974,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:516
+#: doc/classes/ProjectSettings.xml:517
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -39242,7 +39983,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:520
+#: doc/classes/ProjectSettings.xml:521
msgid ""
"Default [InputEventAction] to go to the start position of a [Control] (e.g. "
"first item in an [ItemList] or a [Tree]), matching the behavior of [constant "
@@ -39252,7 +39993,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39260,7 +40001,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:528
+#: doc/classes/ProjectSettings.xml:529
msgid ""
"Default [InputEventAction] to go down a page in a [Control] (e.g. in an "
"[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEDOWN] on "
@@ -39270,7 +40011,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Default [InputEventAction] to go up a page in a [Control] (e.g. in an "
"[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEUP] on "
@@ -39280,7 +40021,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:536
+#: doc/classes/ProjectSettings.xml:537
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39288,7 +40029,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:540
+#: doc/classes/ProjectSettings.xml:541
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -39297,7 +40038,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39305,371 +40046,371 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:548
+#: doc/classes/ProjectSettings.xml:549
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:554
+#: doc/classes/ProjectSettings.xml:555
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:557
+#: doc/classes/ProjectSettings.xml:558
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:560
+#: doc/classes/ProjectSettings.xml:561
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:566
+#: doc/classes/ProjectSettings.xml:567
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:569
+#: doc/classes/ProjectSettings.xml:570
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:572
+#: doc/classes/ProjectSettings.xml:573
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:578
+#: doc/classes/ProjectSettings.xml:579
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:581
+#: doc/classes/ProjectSettings.xml:582
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:584
+#: doc/classes/ProjectSettings.xml:585
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:590
+#: doc/classes/ProjectSettings.xml:591
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:593
+#: doc/classes/ProjectSettings.xml:594
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:596
+#: doc/classes/ProjectSettings.xml:597
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:602
+#: doc/classes/ProjectSettings.xml:603
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid ""
"The locale to fall back to if a translation isn't available in a given "
"language. If left empty, [code]en[/code] (English) will be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "If [code]true[/code], logs all output to files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:806
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:809
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:812
msgid ""
"Godot uses a message queue to defer some function calls. If you run out of "
"space on it (you will see an error), you can increase the size here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:815
msgid ""
"This is used by servers when used in multi-threading mode (servers and "
"visual). RIDs are preallocated to avoid stalling the server requesting them "
@@ -39677,56 +40418,56 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:829
+#: doc/classes/ProjectSettings.xml:832
msgid ""
"Maximum amount of characters allowed to send as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:832
+#: doc/classes/ProjectSettings.xml:835
msgid ""
"Maximum number of errors allowed to be sent from the debugger. Over this "
"value, content is dropped. This helps not to stall the debugger connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:835
+#: doc/classes/ProjectSettings.xml:838
msgid ""
"Maximum amount of messages in the debugger queue. Over this value, content "
"is dropped. This helps to limit the debugger memory usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:838
+#: doc/classes/ProjectSettings.xml:841
msgid ""
"Maximum number of warnings allowed to be sent from the debugger. Over this "
"value, content is dropped. This helps not to stall the debugger connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:841
+#: doc/classes/ProjectSettings.xml:844
msgid ""
"Default size of packet peer stream for deserializing Godot data. Over this "
"size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:844
+#: doc/classes/ProjectSettings.xml:847
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:847
+#: doc/classes/ProjectSettings.xml:850
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:850
+#: doc/classes/ProjectSettings.xml:853
msgid ""
"Amount of read ahead used by remote filesystem. Higher values decrease the "
"effects of latency at the cost of higher bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:853
+#: doc/classes/ProjectSettings.xml:856
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:856
+#: doc/classes/ProjectSettings.xml:859
msgid ""
"The CA certificates bundle to use for SSL connections. If this is set to a "
"non-empty value, this will [i]override[/i] Godot's default [url=https://"
@@ -39736,31 +40477,31 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:863
msgid ""
"When creating node names automatically, set the type of casing in this "
"project. This is mostly an editor setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:866
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:869
msgid "Size of the hash table used for the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:872
msgid "Cell size used for the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:875
msgid "The default angular damp in 2D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:878
msgid ""
"The default gravity strength in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39772,7 +40513,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:883
+#: doc/classes/ProjectSettings.xml:886
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39784,38 +40525,38 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:891
+#: doc/classes/ProjectSettings.xml:894
msgid "The default linear damp in 2D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:894
+#: doc/classes/ProjectSettings.xml:897
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:897
+#: doc/classes/ProjectSettings.xml:900
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics2D\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:901
+#: doc/classes/ProjectSettings.xml:904
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant PhysicsServer2D."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:904
+#: doc/classes/ProjectSettings.xml:907
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant PhysicsServer2D."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:907
+#: doc/classes/ProjectSettings.xml:910
msgid ""
"Sets whether physics is run on the main thread or a separate one. Running "
"the server on a thread increases performance, but restricts API access to "
@@ -39825,23 +40566,23 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:914
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant PhysicsServer2D.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:917
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody3D] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:920
msgid "The default angular damp in 3D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:923
msgid ""
"The default gravity strength in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39853,7 +40594,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:928
+#: doc/classes/ProjectSettings.xml:931
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39865,11 +40606,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:936
+#: doc/classes/ProjectSettings.xml:939
msgid "The default linear damp in 3D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:939
+#: doc/classes/ProjectSettings.xml:942
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -39877,11 +40618,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:943
+#: doc/classes/ProjectSettings.xml:946
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:949
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -39890,7 +40631,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:950
+#: doc/classes/ProjectSettings.xml:953
msgid ""
"Fix to improve physics jitter, specially on monitors where refresh rate is "
"different than the physics FPS.\n"
@@ -39898,7 +40639,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:954
+#: doc/classes/ProjectSettings.xml:957
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -39906,7 +40647,7 @@ msgid ""
"programmatically, use [method RenderingServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:957
+#: doc/classes/ProjectSettings.xml:960
msgid ""
"[Environment] that will be used as a fallback environment in case a scene "
"does not specify its own environment. The default environment is loaded in "
@@ -39916,14 +40657,14 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:986
+#: doc/classes/ProjectSettings.xml:989
msgid ""
"Max amount of elements renderable in a frame. If more than this are visible "
"per frame, they will be dropped. Keep in mind elements refer to mesh "
"surfaces and not meshes themselves."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:994
msgid ""
"Some NVIDIA GPU drivers have a bug which produces flickering issues for the "
"[code]draw_rect[/code] method, especially as used in [TileMap]. Refer to "
@@ -39935,73 +40676,73 @@ msgid ""
"using the Vulkan backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:995
+#: doc/classes/ProjectSettings.xml:998
msgid ""
"If [code]true[/code], forces snapping of polygons to pixels in 2D rendering. "
"May help in some pixel art styles."
msgstr ""
-#: doc/classes/ProjectSettings.xml:998
+#: doc/classes/ProjectSettings.xml:1001
msgid ""
"Sets the quality of the depth of field effect. Higher quality takes more "
"samples, which is slower but looks smoother."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1001
+#: doc/classes/ProjectSettings.xml:1004
msgid ""
"Sets the depth of field shape. Can be Box, Hexagon, or Circle. Box is the "
"fastest. Circle is the most realistic, but also the most expensive to "
"compute."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1004
+#: doc/classes/ProjectSettings.xml:1007
msgid ""
"If [code]true[/code], jitters DOF samples to make effect slightly blurrier "
"and hide lines created from low sample rates. This can result in a slightly "
"grainy appearance when used with a low number of samples."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1010
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1010
+#: doc/classes/ProjectSettings.xml:1013
msgid ""
"If [code]true[/code], performs a previous depth pass before rendering "
"materials. This increases performance in scenes with high overdraw, when "
"complex materials and lighting are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1016
msgid ""
"The directional shadow's size in pixels. Higher values will result in "
"sharper shadows, at the cost of performance. The value will be rounded up to "
"the nearest power of 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1016
+#: doc/classes/ProjectSettings.xml:1019
msgid ""
"Lower-end override for [member rendering/quality/directional_shadow/size] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1019
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"Quality setting for shadows cast by [DirectionalLight3D]s. Higher quality "
"settings use more samples when reading from shadow maps and are thus slower. "
"Low quality settings may result in shadows looking grainy."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1022
+#: doc/classes/ProjectSettings.xml:1025
msgid ""
"Lower-end override for [member rendering/quality/directional_shadow/"
"soft_shadow_quality] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1028
msgid ""
"The video driver to use (\"GLES2\" or \"Vulkan\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -40011,32 +40752,32 @@ msgid ""
"get_current_video_driver[/code] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1031
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"If [code]true[/code], take additional samples when rendering objects "
"affected by a [GIProbe] to reduce artifacts from only sampling in one "
"direction."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1034
+#: doc/classes/ProjectSettings.xml:1037
msgid ""
"Sets the number of cone samples taken when rendering objects affected by "
"[GIProbe]s."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1037
+#: doc/classes/ProjectSettings.xml:1040
msgid ""
"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."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1040
+#: doc/classes/ProjectSettings.xml:1043
msgid ""
"Lower-end override for [member rendering/quality/glow/upscale_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1043
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Strategy used for framebuffer allocation. The simpler it is, the less "
"resources it uses (but the less features it supports). If set to \"2D "
@@ -40046,41 +40787,41 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1046
+#: doc/classes/ProjectSettings.xml:1049
msgid ""
"Lower-end override for [member rendering/quality/intended_usage/"
"framebuffer_allocation] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1052
msgid ""
"Number of cubemaps to store in the reflection atlas. The number of "
"[ReflectionProbe]s in a scene will be limited by this amount. A higher "
"number requires more VRAM."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1052
+#: doc/classes/ProjectSettings.xml:1055
msgid ""
"Size of cubemap faces for [ReflectionProbe]s. A higher number requires more "
"VRAM and may make reflection probe updating slower."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1055
+#: doc/classes/ProjectSettings.xml:1058
msgid ""
"Lower-end override for [member rendering/quality/reflection_atlas/"
"reflection_size] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1058
+#: doc/classes/ProjectSettings.xml:1061
msgid ""
"Use a higher quality variant of the fast filtering algorithm. Significantly "
"slower than using default quality, but results in smoother reflections. "
"Should only be used when the scene is especially detailed."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1061
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Sets the number of samples to take when using importance sampling for [Sky]s "
"and [ReflectionProbe]s. A higher value will result in smoother, higher "
@@ -40090,19 +40831,19 @@ msgid ""
"environments with a high level of detail."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1064
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Lower-end override for [member rendering/quality/reflections/ggx_samples] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1067
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Limits the number of layers to use in radiance maps when using importance "
"sampling. A lower number will be slightly faster and take up less VRAM."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1070
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise and "
@@ -40111,14 +40852,14 @@ msgid ""
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1073
+#: doc/classes/ProjectSettings.xml:1076
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"texture_array_reflections] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1079
msgid ""
"Sets the number of MSAA samples to use (as a power of two). MSAA is used to "
"reduce aliasing around the edges of polygons. A higher MSAA value results in "
@@ -40126,7 +40867,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1080
+#: doc/classes/ProjectSettings.xml:1083
msgid ""
"Sets the screen-space antialiasing mode for the default screen [Viewport]. "
"Screen-space antialiasing works by selectively blurring edges in a post-"
@@ -40135,133 +40876,117 @@ msgid ""
"MSAA and will smooth out specular aliasing, but tend to make scenes appear "
"blurry.\n"
"Another way to combat specular aliasing is to enable [member rendering/"
-"quality/screen_filters/screen_space_roughness_limiter]."
+"quality/screen_filters/screen_space_roughness_limiter_enabled]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1084
-msgid ""
-"Enables the screen-space roughness limiter which increases material "
-"roughness in areas with a high normal frequency (i.e. when normals change a "
-"lot from pixel to pixel). This helps to reduce the amount of specular "
-"aliasing in a scene. Specular aliasing looks like random bright pixels that "
-"occur in reflections."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:1087
-msgid ""
-"Curves the amount of the roughness limited effect. A higher value limits the "
-"effect to very sharply curved surfaces, while a lower threshold extends the "
-"effect to smoother surfaces."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:1090
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"Sets the quality for rough screen-space reflections. Turning off will make "
"all screen space reflections sharp, while higher values make rough "
"reflections look better."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1093
+#: doc/classes/ProjectSettings.xml:1096
msgid ""
"If [code]true[/code], uses faster but lower-quality Blinn model to generate "
"blurred reflections instead of the GGX model."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1099
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_blinn_over_ggx] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1102
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1102
+#: doc/classes/ProjectSettings.xml:1105
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_lambert_over_burley] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1105
+#: doc/classes/ProjectSettings.xml:1108
msgid ""
"If [code]true[/code], forces vertex shading for all rendering. This can "
"increase performance a lot, but also reduces quality immensely. Can be used "
"to optimize performance on low-end mobile devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1108
+#: doc/classes/ProjectSettings.xml:1111
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_vertex_shading] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1111 doc/classes/ProjectSettings.xml:1114
-#: doc/classes/ProjectSettings.xml:1117 doc/classes/ProjectSettings.xml:1120
+#: doc/classes/ProjectSettings.xml:1114 doc/classes/ProjectSettings.xml:1117
+#: doc/classes/ProjectSettings.xml:1120 doc/classes/ProjectSettings.xml:1123
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1123
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1126
+#: doc/classes/ProjectSettings.xml:1129
msgid ""
"Lower-end override for [member rendering/quality/shadow_atlas/size] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1132
msgid ""
"Quality setting for shadows cast by [OmniLight3D]s and [SpotLight3D]s. "
"Higher quality settings use more samples when reading from shadow maps and "
"are thus slower. Low quality settings may result in shadows looking grainy."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1132
+#: doc/classes/ProjectSettings.xml:1135
msgid ""
"Lower-end override for [member rendering/quality/shadows/"
"soft_shadow_quality] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1135
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"If [code]true[/code], screen-space ambient occlusion will be rendered at "
"half size and then upscaled before being added to the scene. This is "
"significantly faster but may miss small details."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1138
+#: doc/classes/ProjectSettings.xml:1141
msgid ""
"Sets the quality of the screen-space ambient occlusion effect. Higher values "
"take more samples and so will result in better quality, at the cost of "
"performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1144
msgid ""
"Scales the depth over which the subsurface scattering effect is applied. A "
"high value may allow light to scatter into a part of the mesh or another "
"mesh that is close in screen space but far in depth."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1144
+#: doc/classes/ProjectSettings.xml:1147
msgid ""
"Sets the quality of the subsurface scattering effect. Higher values are "
"slower but look nicer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1147
+#: doc/classes/ProjectSettings.xml:1150
msgid ""
"Scales the distance over which samples are taken for subsurface scattering "
"effect. Changing this does not impact performance, but higher values will "
@@ -40269,7 +40994,7 @@ msgid ""
"out. A lower value results in a smaller spread of scattered light."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1150
+#: doc/classes/ProjectSettings.xml:1153
msgid ""
"Sets the maximum number of samples to take when using anisotropic filtering "
"on textures (as a power of two). A higher sample count will result in "
@@ -40278,7 +41003,7 @@ msgid ""
"materials where it is enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1153
+#: doc/classes/ProjectSettings.xml:1156
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -40287,49 +41012,49 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Thread model for rendering. Rendering on a thread can vastly improve "
"performance, but synchronizing to the main thread can cause a bit more "
"jitter."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
"only supported on desktop platforms, and only when using the Vulkan renderer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
"doesn't support alpha channels in textures."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
"compression algorithm is only supported when using the Vulkan renderer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1175
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
"compression algorithm is only supported on iOS."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
"supported on desktop platforms and consoles."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1182
+#: doc/classes/ProjectSettings.xml:1189
msgid "Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses."
msgstr ""
@@ -40359,13 +41084,14 @@ msgstr ""
#: doc/classes/Quat.xml:7
msgid ""
-"A unit quaternion used for representing 3D rotations.\n"
-"It is similar to [Basis], which implements matrix representation of "
-"rotations, and can be parametrized using both an axis-angle pair or Euler "
-"angles. But due to its compactness and the way it is stored in memory, "
-"certain operations (obtaining axis-angle and performing SLERP, in "
-"particular) are more efficient and robust against floating-point errors.\n"
-"Quaternions need to be (re)normalized."
+"A unit quaternion used for representing 3D rotations. Quaternions need to be "
+"normalized to be used for rotation.\n"
+"It is similar to Basis, which implements matrix representation of rotations, "
+"and can be parametrized using both an axis-angle pair or Euler angles. Basis "
+"stores rotation, scale, and shearing, while Quat only stores rotation.\n"
+"Due to its compactness and the way it is stored in memory, certain "
+"operations (obtaining axis-angle and performing SLERP, in particular) are "
+"more efficient and robust against floating-point errors."
msgstr ""
#: doc/classes/Quat.xml:12
@@ -40375,29 +41101,31 @@ msgid ""
msgstr ""
#: doc/classes/Quat.xml:21
-msgid "Returns the rotation matrix corresponding to the given quaternion."
+msgid "Constructs a quaternion from the given [Basis]."
msgstr ""
#: doc/classes/Quat.xml:30
msgid ""
-"Returns a quaternion that will perform a rotation specified by Euler angles "
-"(in the YXZ convention: first Z, then X, and Y last), given in the vector "
-"format as (X angle, Y angle, Z angle)."
+"Constructs a quaternion that will perform a rotation specified by Euler "
+"angles (in the YXZ convention: when decomposing, first Z, then X, and Y "
+"last), given in the vector format as (X angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:41
msgid ""
-"Returns a quaternion that will rotate around the given axis by the specified "
-"angle. The axis must be a normalized vector."
+"Constructs a quaternion that will rotate around the given axis by the "
+"specified angle. The axis must be a normalized vector."
msgstr ""
#: doc/classes/Quat.xml:56
-msgid "Returns a quaternion defined by these values."
+msgid "Constructs a quaternion defined by the given values."
msgstr ""
#: doc/classes/Quat.xml:71
msgid ""
-"Performs a cubic spherical-linear interpolation with another quaternion."
+"Performs a cubic spherical interpolation between quaternions [code]preA[/"
+"code], this vector, [code]b[/code], and [code]postB[/code], by the given "
+"amount [code]t[/code]."
msgstr ""
#: doc/classes/Quat.xml:80
@@ -40406,10 +41134,10 @@ msgstr ""
#: doc/classes/Quat.xml:87
msgid ""
-"Returns Euler angles (in the YXZ convention: first Z, then X, and Y last) "
-"corresponding to the rotation represented by the unit quaternion. Returned "
-"vector contains the rotation angles in the format (X angle, Y angle, Z "
-"angle)."
+"Returns Euler angles (in the YXZ convention: when decomposing, first Z, then "
+"X, and Y last) corresponding to the rotation represented by the unit "
+"quaternion. Returned vector contains the rotation angles in the format (X "
+"angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:94
@@ -40448,44 +41176,57 @@ msgstr ""
#: doc/classes/Quat.xml:151
msgid ""
"Sets the quaternion to a rotation specified by Euler angles (in the YXZ "
-"convention: first Z, then X, and Y last), given in the vector format as (X "
-"angle, Y angle, Z angle)."
+"convention: when decomposing, first Z, then X, and Y last), given in the "
+"vector format as (X angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:162
-msgid "Performs a spherical-linear interpolation with another quaternion."
+msgid ""
+"Returns the result of the spherical linear interpolation between this "
+"quaternion and [code]to[/code] by amount [code]weight[/code].\n"
+"[b]Note:[/b] Both quaternions must be normalized."
msgstr ""
-#: doc/classes/Quat.xml:173
+#: doc/classes/Quat.xml:174
msgid ""
-"Performs a spherical-linear interpolation with another quaterion without "
-"checking if the rotation path is not bigger than 90°."
+"Returns the result of the spherical linear interpolation between this "
+"quaternion and [code]to[/code] by amount [code]weight[/code], but without "
+"checking if the rotation path is not bigger than 90 degrees."
msgstr ""
-#: doc/classes/Quat.xml:182
-msgid "Transforms the vector [code]v[/code] by this quaternion."
+#: doc/classes/Quat.xml:183
+msgid "Returns a vector transformed (multiplied) by this quaternion."
msgstr ""
-#: doc/classes/Quat.xml:188
-msgid "W component of the quaternion."
+#: doc/classes/Quat.xml:189
+msgid ""
+"W component of the quaternion (real part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:191
-msgid "X component of the quaternion."
+#: doc/classes/Quat.xml:193
+msgid ""
+"X component of the quaternion (imaginary [code]i[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:194
-msgid "Y component of the quaternion."
+#: doc/classes/Quat.xml:197
+msgid ""
+"Y component of the quaternion (imaginary [code]j[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:197
-msgid "Z component of the quaternion."
+#: doc/classes/Quat.xml:201
+msgid ""
+"Z component of the quaternion (imaginary [code]k[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:202
+#: doc/classes/Quat.xml:207
msgid ""
-"The identity rotation. Equivalent to an identity matrix. If a vector is "
-"transformed by an identity quaternion, it will not change."
+"The identity quaternion, representing no rotation. Equivalent to an identity "
+"[Basis] matrix. If a vector is transformed by an identity quaternion, it "
+"will not change."
msgstr ""
#: doc/classes/RandomNumberGenerator.xml:4
@@ -40688,7 +41429,8 @@ msgid ""
"collision information immediately instead of waiting for the next "
"[code]_physics_process[/code] call, for example if the ray or its parent has "
"changed state.\n"
-"[b]Note:[/b] [code]enabled == true[/code] is not required for this to work."
+"[b]Note:[/b] [member enabled] does not need to be [code]true[/code] for this "
+"to work."
msgstr ""
#: doc/classes/RayCast2D.xml:54 doc/classes/RayCast3D.xml:55
@@ -40794,7 +41536,8 @@ msgid ""
"Use this method to update the collision information immediately instead of "
"waiting for the next [code]_physics_process[/code] call, for example if the "
"ray or its parent has changed state.\n"
-"[b]Note:[/b] [code]enabled == true[/code] is not required for this to work."
+"[b]Note:[/b] [member enabled] does not need to be [code]true[/code] for this "
+"to work."
msgstr ""
#: doc/classes/RayCast3D.xml:71
@@ -40952,14 +41695,6 @@ msgstr ""
msgid "Returns a larger [Rect2] that contains this [Rect2] and [code]b[/code]."
msgstr ""
-#: doc/classes/Rect2.xml:174 doc/classes/Rect2i.xml:163
-msgid "Ending corner."
-msgstr ""
-
-#: doc/classes/Rect2.xml:177 doc/classes/Rect2i.xml:166
-msgid "Position (starting corner)."
-msgstr ""
-
#: doc/classes/Rect2i.xml:4
msgid "2D axis-aligned bounding box using integer coordinates."
msgstr ""
@@ -41072,22 +41807,22 @@ msgstr ""
msgid ""
"Base class for any object that keeps a reference count. [Resource] and many "
"other helper objects inherit this class.\n"
-"References keep an internal reference counter so that they are automatically "
-"released when no longer in use, and only then. References therefore do not "
-"need to be freed manually with [method Object.free].\n"
+"Unlike [Object]s, References keep an internal reference counter so that they "
+"are automatically released when no longer in use, and only then. References "
+"therefore do not need to be freed manually with [method Object.free].\n"
"In the vast majority of use cases, instantiating and using [Reference]-"
"derived types is all you need to do. The methods provided in this class are "
"only for advanced users, and can cause issues if misused."
msgstr ""
-#: doc/classes/Reference.xml:18
+#: doc/classes/Reference.xml:19
msgid ""
"Initializes the internal reference counter. Use this only if you really know "
"what you are doing.\n"
"Returns whether the initialization was successful."
msgstr ""
-#: doc/classes/Reference.xml:26
+#: doc/classes/Reference.xml:27
msgid ""
"Increments the internal reference counter. Use this only if you really know "
"what you are doing.\n"
@@ -41095,7 +41830,7 @@ msgid ""
"code] otherwise."
msgstr ""
-#: doc/classes/Reference.xml:34
+#: doc/classes/Reference.xml:35
msgid ""
"Decrements the internal reference counter. Use this only if you really know "
"what you are doing.\n"
@@ -41144,14 +41879,14 @@ msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/reflection_probes.html"
msgstr ""
-#: doc/classes/ReflectionProbe.xml:17
+#: doc/classes/ReflectionProbe.xml:23
msgid ""
"If [code]true[/code], enables box projection. This makes reflections look "
"more correct in rectangle-shaped rooms by offsetting the reflection center "
"depending on the camera's location."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:20
+#: doc/classes/ReflectionProbe.xml:26
msgid ""
"Sets the cull mask which determines what objects are drawn by this probe. "
"Every [VisualInstance3D] with a layer included in this cull mask will be "
@@ -41160,78 +41895,56 @@ msgid ""
"rendering cost."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:23
+#: doc/classes/ReflectionProbe.xml:29
msgid ""
"If [code]true[/code], computes shadows in the reflection probe. This makes "
"the reflection probe slower to render; you may want to disable this if using "
"the [constant UPDATE_ALWAYS] [member update_mode]."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:26
+#: doc/classes/ReflectionProbe.xml:32
msgid ""
"The size of the reflection probe. The larger the extents the more space "
"covered by the probe which will lower the perceived resolution. It is best "
"to keep the extents only as large as you need them."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:29
+#: doc/classes/ReflectionProbe.xml:35
msgid ""
"Defines the reflection intensity. Intensity modulates the strength of the "
"reflection."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:32
-msgid ""
-"Sets the ambient light color to be used when this probe is set to [member "
-"interior_enable]."
-msgstr ""
-
-#: doc/classes/ReflectionProbe.xml:35
-msgid ""
-"Sets the contribution value for how much the reflection affects the ambient "
-"light for this reflection probe when set to [member interior_enable]. Useful "
-"so that ambient light matches the color of the room."
-msgstr ""
-
#: doc/classes/ReflectionProbe.xml:38
-msgid ""
-"Sets the energy multiplier for this reflection probe's ambient light "
-"contribution when set to [member interior_enable]."
+msgid "If [code]true[/code], reflections will ignore sky contribution."
msgstr ""
#: doc/classes/ReflectionProbe.xml:41
msgid ""
-"If [code]true[/code], reflections will ignore sky contribution. Ambient "
-"lighting is then controlled by the [code]interior_ambient_*[/code] "
-"properties."
-msgstr ""
-
-#: doc/classes/ReflectionProbe.xml:44
-msgid ""
"Sets the max distance away from the probe an object can be before it is "
"culled."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:47
+#: doc/classes/ReflectionProbe.xml:44
msgid ""
"Sets the origin offset to be used when this reflection probe is in box "
"project mode."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:50
+#: doc/classes/ReflectionProbe.xml:47
msgid ""
"Sets how frequently the probe is updated. Can be [constant UPDATE_ONCE] or "
"[constant UPDATE_ALWAYS]."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:55
+#: doc/classes/ReflectionProbe.xml:52
msgid ""
"Update the probe once on the next frame. The corresponding radiance map will "
"be generated over the following six frames. This is slower to update than "
"[constant UPDATE_ALWAYS] but can result in higher quality reflections."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:58
+#: doc/classes/ReflectionProbe.xml:55
msgid ""
"Update the probe every frame. This is needed when you want to capture "
"dynamic objects. However, it results in an increased render time. Use "
@@ -41261,10 +41974,10 @@ msgid ""
"read by RegEx as [code]\\d+[/code]. Similarly, [code]compile(\"\\\"(?:\\\\\\"
"\\.|[^\\\"])*\\\"\")[/code] would be read as [code]\"(?:\\\\.|[^\"])*\"[/"
"code].\n"
-"Using [method search] you can find the pattern within the given text. If a "
+"Using [method search], you can find the pattern within the given text. If a "
"pattern is found, [RegExMatch] is returned and you can retrieve details of "
-"the results using functions such as [method RegExMatch.get_string] and "
-"[method RegExMatch.get_start].\n"
+"the results using methods such as [method RegExMatch.get_string] and [method "
+"RegExMatch.get_start].\n"
"[codeblock]\n"
"var regex = RegEx.new()\n"
"regex.compile(\"\\\\w-(\\\\d+)\")\n"
@@ -41273,7 +41986,7 @@ msgid ""
" print(result.get_string()) # Would print n-0123\n"
"[/codeblock]\n"
"The results of capturing groups [code]()[/code] can be retrieved by passing "
-"the group number to the various functions in [RegExMatch]. Group 0 is the "
+"the group number to the various methods in [RegExMatch]. Group 0 is the "
"default and will always refer to the entire pattern. In the above example, "
"calling [code]result.get_string(1)[/code] would give you [code]0123[/code].\n"
"This version of RegEx also supports named capturing groups, and the names "
@@ -41294,6 +42007,15 @@ msgid ""
" print(result.get_string(\"digit\"))\n"
"# Would print 01 03 0 3f 42\n"
"[/codeblock]\n"
+"[b]Example of splitting a string using a RegEx:[/b]\n"
+"[codeblock]\n"
+"var regex = RegEx.new()\n"
+"regex.compile(\"\\\\S+\") # Negated whitespace character class.\n"
+"var results = []\n"
+"for match in regex.search_all(\"One Two \\n\\tThree\"):\n"
+" results.push_back(match.get_string())\n"
+"# The `results` array now contains \"One\", \"Two\", \"Three\".\n"
+"[/codeblock]\n"
"[b]Note:[/b] Godot's regex implementation is based on the [url=https://www."
"pcre.org/]PCRE2[/url] library. You can view the full pattern reference "
"[url=https://www.pcre.org/current/doc/html/pcre2pattern.html]here[/url].\n"
@@ -41301,38 +42023,38 @@ msgid ""
"regular expressions online."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:47
+#: modules/regex/doc_classes/RegEx.xml:56
msgid ""
"This method resets the state of the object, as if it was freshly created. "
"Namely, it unassigns the regular expression of this object."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:56
+#: modules/regex/doc_classes/RegEx.xml:65
msgid ""
"Compiles and assign the search pattern to use. Returns [constant OK] if the "
"compilation is successful. If an error is encountered, details are printed "
"to standard output and an error is returned."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:63
+#: modules/regex/doc_classes/RegEx.xml:72
msgid "Returns the number of capturing groups in compiled pattern."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:70
+#: modules/regex/doc_classes/RegEx.xml:79
msgid ""
"Returns an array of names of named capturing groups in the compiled pattern. "
"They are ordered by appearance."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:77
+#: modules/regex/doc_classes/RegEx.xml:86
msgid "Returns the original search pattern that was compiled."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:84
+#: modules/regex/doc_classes/RegEx.xml:93
msgid "Returns whether this object has a valid search pattern assigned."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:97
+#: modules/regex/doc_classes/RegEx.xml:106
msgid ""
"Searches the text for the compiled pattern. Returns a [RegExMatch] container "
"of the first matching result if found, otherwise [code]null[/code]. The "
@@ -41340,7 +42062,7 @@ msgid ""
"and end anchor would be."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:110
+#: modules/regex/doc_classes/RegEx.xml:119
msgid ""
"Searches the text for the compiled pattern. Returns an array of [RegExMatch] "
"containers for each non-overlapping result. If no results were found, an "
@@ -41348,7 +42070,7 @@ msgid ""
"specified without modifying where the start and end anchor would be."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:127
+#: modules/regex/doc_classes/RegEx.xml:136
msgid ""
"Searches the text for the compiled pattern and replaces it with the "
"specified string. Escapes and backreferences such as [code]$1[/code] and "
@@ -42075,7 +42797,7 @@ msgid ""
msgstr ""
#: doc/classes/RenderingServer.xml:1222 doc/classes/RenderingServer.xml:1250
-#: doc/classes/RenderingServer.xml:1527
+#: doc/classes/RenderingServer.xml:1537
msgid "Not implemented in Godot 3.x."
msgstr ""
@@ -42222,30 +42944,30 @@ msgid ""
"OmniLight3D.omni_shadow_mode]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1481
+#: doc/classes/RenderingServer.xml:1491
msgid ""
"Sets the color of the light. Equivalent to [member Light3D.light_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1492
+#: doc/classes/RenderingServer.xml:1502
msgid ""
"Sets the cull mask for this Light3D. Lights only affect objects in the "
"selected layers. Equivalent to [member Light3D.light_cull_mask]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1503
+#: doc/classes/RenderingServer.xml:1513
msgid ""
"If [code]true[/code], light will subtract light instead of adding light. "
"Equivalent to [member Light3D.light_negative]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1516
+#: doc/classes/RenderingServer.xml:1526
msgid ""
"Sets the specified light parameter. See [enum LightParam] for options. "
"Equivalent to [method Light3D.set_param]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1538
+#: doc/classes/RenderingServer.xml:1548
msgid ""
"If [code]true[/code], reverses the backface culling of the mesh. This can be "
"useful when you have a flat mesh that has a light behind it. If you need to "
@@ -42254,29 +42976,25 @@ msgid ""
"to [member Light3D.shadow_reverse_cull_face]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1549
+#: doc/classes/RenderingServer.xml:1559
msgid ""
"If [code]true[/code], light will cast shadows. Equivalent to [member Light3D."
"shadow_enabled]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1560
+#: doc/classes/RenderingServer.xml:1570
msgid ""
"Sets the color of the shadow cast by the light. Equivalent to [member "
"Light3D.shadow_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1571
-msgid "Sets whether GI probes capture light information from this light."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:1584
+#: doc/classes/RenderingServer.xml:1583
msgid ""
"Returns a mesh of a sphere with the given amount of horizontal and vertical "
"subdivisions."
msgstr ""
-#: doc/classes/RenderingServer.xml:1591
+#: doc/classes/RenderingServer.xml:1590
msgid ""
"Creates an empty material and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42285,31 +43003,31 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:1603
+#: doc/classes/RenderingServer.xml:1602
msgid "Returns the value of a certain material's parameter."
msgstr ""
-#: doc/classes/RenderingServer.xml:1614
+#: doc/classes/RenderingServer.xml:1613
msgid "Sets an object's next material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1627
+#: doc/classes/RenderingServer.xml:1626
msgid "Sets a material's parameter."
msgstr ""
-#: doc/classes/RenderingServer.xml:1638
+#: doc/classes/RenderingServer.xml:1637
msgid "Sets a material's render priority."
msgstr ""
-#: doc/classes/RenderingServer.xml:1649
+#: doc/classes/RenderingServer.xml:1648
msgid "Sets a shader material's shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:1678
+#: doc/classes/RenderingServer.xml:1677
msgid "Removes all surfaces from a mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1685
+#: doc/classes/RenderingServer.xml:1684
msgid ""
"Creates a new mesh and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all [code]mesh_*[/"
@@ -42320,58 +43038,58 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:1696
+#: doc/classes/RenderingServer.xml:1695
msgid "Returns a mesh's blend shape count."
msgstr ""
-#: doc/classes/RenderingServer.xml:1705
+#: doc/classes/RenderingServer.xml:1704
msgid "Returns a mesh's blend shape mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:1714
+#: doc/classes/RenderingServer.xml:1713
msgid "Returns a mesh's custom aabb."
msgstr ""
-#: doc/classes/RenderingServer.xml:1723
+#: doc/classes/RenderingServer.xml:1722
msgid "Returns a mesh's number of surfaces."
msgstr ""
-#: doc/classes/RenderingServer.xml:1734
+#: doc/classes/RenderingServer.xml:1733
msgid "Sets a mesh's blend shape mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:1745
+#: doc/classes/RenderingServer.xml:1744
msgid "Sets a mesh's custom aabb."
msgstr ""
-#: doc/classes/RenderingServer.xml:1756
+#: doc/classes/RenderingServer.xml:1755
msgid "Returns a mesh's surface's buffer arrays."
msgstr ""
-#: doc/classes/RenderingServer.xml:1767
+#: doc/classes/RenderingServer.xml:1766
msgid "Returns a mesh's surface's arrays for blend shapes."
msgstr ""
-#: doc/classes/RenderingServer.xml:1782 doc/classes/RenderingServer.xml:1795
+#: doc/classes/RenderingServer.xml:1781 doc/classes/RenderingServer.xml:1794
msgid "Function is unused in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:1806
+#: doc/classes/RenderingServer.xml:1805
msgid "Returns a mesh's surface's material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1819
+#: doc/classes/RenderingServer.xml:1818
msgid "Sets a mesh's surface's material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1834
+#: doc/classes/RenderingServer.xml:1833
msgid ""
"Updates a specific region of a vertex buffer for the specified surface. "
"Warning: this function alters the vertex buffer directly with no safety "
"mechanisms, you can easily corrupt your mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1857
+#: doc/classes/RenderingServer.xml:1856
msgid ""
"Creates a new multimesh on the RenderingServer and returns an [RID] handle. "
"This RID will be used in all [code]multimesh_*[/code] RenderingServer "
@@ -42382,82 +43100,82 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:1868
+#: doc/classes/RenderingServer.xml:1867
msgid ""
"Calculates and returns the axis-aligned bounding box that encloses all "
"instances within the multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1885
+#: doc/classes/RenderingServer.xml:1884
msgid "Returns the number of instances allocated for this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1894
+#: doc/classes/RenderingServer.xml:1893
msgid ""
"Returns the RID of the mesh that will be used in drawing this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1903
+#: doc/classes/RenderingServer.xml:1902
msgid "Returns the number of visible instances for this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1914
+#: doc/classes/RenderingServer.xml:1913
msgid "Returns the color by which the specified instance will be modulated."
msgstr ""
-#: doc/classes/RenderingServer.xml:1925
+#: doc/classes/RenderingServer.xml:1924
msgid "Returns the custom data associated with the specified instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:1936
+#: doc/classes/RenderingServer.xml:1935
msgid "Returns the [Transform] of the specified instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:1947
+#: doc/classes/RenderingServer.xml:1946
msgid ""
"Returns the [Transform2D] of the specified instance. For use when the "
"multimesh is set to use 2D transforms."
msgstr ""
-#: doc/classes/RenderingServer.xml:1960
+#: doc/classes/RenderingServer.xml:1959
msgid ""
"Sets the color by which this instance will be modulated. Equivalent to "
"[method MultiMesh.set_instance_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1973
+#: doc/classes/RenderingServer.xml:1972
msgid ""
"Sets the custom data for this instance. Custom data is passed as a [Color], "
"but is interpreted as a [code]vec4[/code] in the shader. Equivalent to "
"[method MultiMesh.set_instance_custom_data]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1986
+#: doc/classes/RenderingServer.xml:1985
msgid ""
"Sets the [Transform] for this instance. Equivalent to [method MultiMesh."
"set_instance_transform]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1999
+#: doc/classes/RenderingServer.xml:1998
msgid ""
"Sets the [Transform2D] for this instance. For use when multimesh is used in "
"2D. Equivalent to [method MultiMesh.set_instance_transform_2d]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2020
+#: doc/classes/RenderingServer.xml:2019
msgid ""
"Sets the mesh to be drawn by the multimesh. Equivalent to [member MultiMesh."
"mesh]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2031
+#: doc/classes/RenderingServer.xml:2030
msgid ""
"Sets the number of instances visible at a given time. If -1, all instances "
"that have been allocated are drawn. Equivalent to [member MultiMesh."
"visible_instance_count]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2038
+#: doc/classes/RenderingServer.xml:2037
msgid ""
"Creates a new omni light and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID can be used in most "
@@ -42468,7 +43186,7 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2047
+#: doc/classes/RenderingServer.xml:2046
msgid ""
"Creates a particle system and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42479,23 +43197,23 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2058
+#: doc/classes/RenderingServer.xml:2057
msgid ""
"Calculates and returns the axis-aligned bounding box that contains all the "
"particles. Equivalent to [method GPUParticles3D.capture_aabb]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2067
+#: doc/classes/RenderingServer.xml:2066
msgid "Returns [code]true[/code] if particles are currently set to emitting."
msgstr ""
-#: doc/classes/RenderingServer.xml:2076
+#: doc/classes/RenderingServer.xml:2075
msgid ""
"Returns [code]true[/code] if particles are not emitting and particles are "
"set to inactive."
msgstr ""
-#: doc/classes/RenderingServer.xml:2085
+#: doc/classes/RenderingServer.xml:2084
msgid ""
"Add particle system to list of particle systems that need to be updated. "
"Update will take place on the next frame, or on the next call to [method "
@@ -42503,121 +43221,121 @@ msgid ""
"instances_cull_ray]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2094
+#: doc/classes/RenderingServer.xml:2093
msgid ""
"Reset the particles on the next update. Equivalent to [method GPUParticles3D."
"restart]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2105
+#: doc/classes/RenderingServer.xml:2104
msgid ""
"Sets the number of particles to be drawn and allocates the memory for them. "
"Equivalent to [member GPUParticles3D.amount]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2116
+#: doc/classes/RenderingServer.xml:2115
msgid ""
"Sets a custom axis-aligned bounding box for the particle system. Equivalent "
"to [member GPUParticles3D.visibility_aabb]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2127
+#: doc/classes/RenderingServer.xml:2126
msgid ""
"Sets the draw order of the particles to one of the named enums from [enum "
"ParticlesDrawOrder]. See [enum ParticlesDrawOrder] for options. Equivalent "
"to [member GPUParticles3D.draw_order]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2140
+#: doc/classes/RenderingServer.xml:2139
msgid ""
"Sets the mesh to be used for the specified draw pass. Equivalent to [member "
"GPUParticles3D.draw_pass_1], [member GPUParticles3D.draw_pass_2], [member "
"GPUParticles3D.draw_pass_3], and [member GPUParticles3D.draw_pass_4]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2151
+#: doc/classes/RenderingServer.xml:2150
msgid ""
"Sets the number of draw passes to use. Equivalent to [member GPUParticles3D."
"draw_passes]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2162
+#: doc/classes/RenderingServer.xml:2161
msgid ""
"Sets the [Transform] that will be used by the particles when they first emit."
msgstr ""
-#: doc/classes/RenderingServer.xml:2173
+#: doc/classes/RenderingServer.xml:2172
msgid ""
"If [code]true[/code], particles will emit over time. Setting to false does "
"not reset the particles, but only stops their emission. Equivalent to "
"[member GPUParticles3D.emitting]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2184
+#: doc/classes/RenderingServer.xml:2183
msgid ""
"Sets the explosiveness ratio. Equivalent to [member GPUParticles3D."
"explosiveness]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2195
+#: doc/classes/RenderingServer.xml:2194
msgid ""
"Sets the frame rate that the particle system rendering will be fixed to. "
"Equivalent to [member GPUParticles3D.fixed_fps]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2206
+#: doc/classes/RenderingServer.xml:2205
msgid ""
"If [code]true[/code], uses fractional delta which smooths the movement of "
"the particles. Equivalent to [member GPUParticles3D.fract_delta]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2217
+#: doc/classes/RenderingServer.xml:2216
msgid ""
"Sets the lifetime of each particle in the system. Equivalent to [member "
"GPUParticles3D.lifetime]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2228
+#: doc/classes/RenderingServer.xml:2227
msgid ""
"If [code]true[/code], particles will emit once and then stop. Equivalent to "
"[member GPUParticles3D.one_shot]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2239
+#: doc/classes/RenderingServer.xml:2238
msgid ""
"Sets the preprocess time for the particles animation. This lets you delay "
"starting an animation until after the particles have begun emitting. "
"Equivalent to [member GPUParticles3D.preprocess]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2250
+#: doc/classes/RenderingServer.xml:2249
msgid ""
"Sets the material for processing the particles. Note: this is not the "
"material used to draw the materials. Equivalent to [member GPUParticles3D."
"process_material]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2261
+#: doc/classes/RenderingServer.xml:2260
msgid ""
"Sets the emission randomness ratio. This randomizes the emission of "
"particles within their phase. Equivalent to [member GPUParticles3D."
"randomness]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2272
+#: doc/classes/RenderingServer.xml:2271
msgid ""
"Sets the speed scale of the particle system. Equivalent to [member "
"GPUParticles3D.speed_scale]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2283
+#: doc/classes/RenderingServer.xml:2282
msgid ""
"If [code]true[/code], particles use local coordinates. If [code]false[/code] "
"they use global coordinates. Equivalent to [member GPUParticles3D."
"local_coords]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2290
+#: doc/classes/RenderingServer.xml:2289
msgid ""
"Creates a reflection probe and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42628,85 +43346,64 @@ msgid ""
"[method instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2303
+#: doc/classes/RenderingServer.xml:2332
msgid ""
"If [code]true[/code], reflections will ignore sky contribution. Equivalent "
-"to [member ReflectionProbe.interior_enable]."
+"to [member ReflectionProbe.interior]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2314
+#: doc/classes/RenderingServer.xml:2343
msgid ""
"Sets the render cull mask for this reflection probe. Only instances with a "
"matching cull mask will be rendered by this probe. Equivalent to [member "
"ReflectionProbe.cull_mask]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2325
+#: doc/classes/RenderingServer.xml:2354
msgid ""
"If [code]true[/code], uses box projection. This can make reflections look "
"more correct in certain situations. Equivalent to [member ReflectionProbe."
"box_projection]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2336
+#: doc/classes/RenderingServer.xml:2365
msgid ""
"If [code]true[/code], computes shadows in the reflection probe. This makes "
"the reflection much slower to compute. Equivalent to [member ReflectionProbe."
"enable_shadows]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2347
+#: doc/classes/RenderingServer.xml:2376
msgid ""
"Sets the size of the area that the reflection probe will capture. Equivalent "
"to [member ReflectionProbe.extents]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2358
+#: doc/classes/RenderingServer.xml:2387
msgid ""
"Sets the intensity of the reflection probe. Intensity modulates the strength "
"of the reflection. Equivalent to [member ReflectionProbe.intensity]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2369
-msgid ""
-"Sets the ambient light color for this reflection probe when set to interior "
-"mode. Equivalent to [member ReflectionProbe.interior_ambient_color]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2380
-msgid ""
-"Sets the energy multiplier for this reflection probes ambient light "
-"contribution when set to interior mode. Equivalent to [member "
-"ReflectionProbe.interior_ambient_energy]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2391
-msgid ""
-"Sets the contribution value for how much the reflection affects the ambient "
-"light for this reflection probe when set to interior mode. Useful so that "
-"ambient light matches the color of the room. Equivalent to [member "
-"ReflectionProbe.interior_ambient_contrib]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2402
+#: doc/classes/RenderingServer.xml:2398
msgid ""
"Sets the max distance away from the probe an object can be before it is "
"culled. Equivalent to [member ReflectionProbe.max_distance]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2413
+#: doc/classes/RenderingServer.xml:2409
msgid ""
"Sets the origin offset to be used when this reflection probe is in box "
"project mode. Equivalent to [member ReflectionProbe.origin_offset]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2424
+#: doc/classes/RenderingServer.xml:2420
msgid ""
"Sets how often the reflection probe updates. Can either be once or every "
"frame. See [enum ReflectionProbeUpdateMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2437
+#: doc/classes/RenderingServer.xml:2433
msgid ""
"Schedules a callback to the corresponding named [code]method[/code] on "
"[code]where[/code] after a frame has been drawn.\n"
@@ -42714,7 +43411,7 @@ msgid ""
"[code]userdata[/code]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2445
+#: doc/classes/RenderingServer.xml:2441
msgid ""
"Creates a scenario and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all "
@@ -42724,24 +43421,24 @@ msgid ""
"The scenario is the 3D world that all the visual instances exist in."
msgstr ""
-#: doc/classes/RenderingServer.xml:2458
+#: doc/classes/RenderingServer.xml:2454
msgid ""
"Sets the [enum ScenarioDebugMode] for this scenario. See [enum "
"ScenarioDebugMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2469
+#: doc/classes/RenderingServer.xml:2465
msgid "Sets the environment that will be used with this scenario."
msgstr ""
-#: doc/classes/RenderingServer.xml:2480
+#: doc/classes/RenderingServer.xml:2476
msgid ""
"Sets the fallback environment to be used by this scenario. The fallback "
"environment is used if no environment is set. Internally, this is used by "
"the editor to provide a default environment."
msgstr ""
-#: doc/classes/RenderingServer.xml:2495
+#: doc/classes/RenderingServer.xml:2491
msgid ""
"Sets a boot image. The color defines the background color. If [code]scale[/"
"code] is [code]true[/code], the image will be scaled to fit the screen size. "
@@ -42750,19 +43447,19 @@ msgid ""
"the image will be scaled with nearest-neighbor interpolation."
msgstr ""
-#: doc/classes/RenderingServer.xml:2504
+#: doc/classes/RenderingServer.xml:2500
msgid ""
"If [code]true[/code], the engine will generate wireframes for use with the "
"wireframe debug mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:2513
+#: doc/classes/RenderingServer.xml:2509
msgid ""
"Sets the default clear color which is used when a specific clear color has "
"not been selected."
msgstr ""
-#: doc/classes/RenderingServer.xml:2520
+#: doc/classes/RenderingServer.xml:2516
msgid ""
"Creates an empty shader and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42771,47 +43468,47 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2530
+#: doc/classes/RenderingServer.xml:2526
msgid "Returns a shader's code."
msgstr ""
-#: doc/classes/RenderingServer.xml:2541
+#: doc/classes/RenderingServer.xml:2537
msgid "Returns a default texture from a shader searched by name."
msgstr ""
-#: doc/classes/RenderingServer.xml:2560
+#: doc/classes/RenderingServer.xml:2556
msgid "Returns the parameters of a shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:2571
+#: doc/classes/RenderingServer.xml:2567
msgid "Sets a shader's code."
msgstr ""
-#: doc/classes/RenderingServer.xml:2584
+#: doc/classes/RenderingServer.xml:2580
msgid "Sets a shader's default texture. Overwrites the texture given by name."
msgstr ""
-#: doc/classes/RenderingServer.xml:2597
+#: doc/classes/RenderingServer.xml:2593
msgid "Allocates the GPU buffers for this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2608
+#: doc/classes/RenderingServer.xml:2604
msgid "Returns the [Transform] set for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2619
+#: doc/classes/RenderingServer.xml:2615
msgid "Returns the [Transform2D] set for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2632
+#: doc/classes/RenderingServer.xml:2628
msgid "Sets the [Transform] for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2645
+#: doc/classes/RenderingServer.xml:2641
msgid "Sets the [Transform2D] for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2652
+#: doc/classes/RenderingServer.xml:2648
msgid ""
"Creates a skeleton and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all "
@@ -42820,11 +43517,11 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2662
+#: doc/classes/RenderingServer.xml:2658
msgid "Returns the number of bones allocated for this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2669
+#: doc/classes/RenderingServer.xml:2665
msgid ""
"Creates an empty sky and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all [code]sky_*[/"
@@ -42833,13 +43530,13 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2681
+#: doc/classes/RenderingServer.xml:2677
msgid ""
"Sets the material that the sky uses to render the background and reflection "
"maps."
msgstr ""
-#: doc/classes/RenderingServer.xml:2688
+#: doc/classes/RenderingServer.xml:2684
msgid ""
"Creates a spot light and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID can be used in most [code]light_*[/"
@@ -42850,15 +43547,15 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2717
+#: doc/classes/RenderingServer.xml:2713
msgid "Sets a viewport's camera."
msgstr ""
-#: doc/classes/RenderingServer.xml:2728
+#: doc/classes/RenderingServer.xml:2724
msgid "Sets a viewport's canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:2741
+#: doc/classes/RenderingServer.xml:2737
msgid ""
"Copies the viewport to a region of the screen specified by [code]rect[/"
"code]. If [method viewport_set_render_direct_to_screen] is [code]true[/"
@@ -42880,7 +43577,7 @@ msgid ""
"viewport_set_render_direct_to_screen]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2755
+#: doc/classes/RenderingServer.xml:2751
msgid ""
"Creates an empty viewport and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42889,72 +43586,72 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2767
+#: doc/classes/RenderingServer.xml:2763
msgid ""
"Returns a viewport's render information. For options, see the [enum "
"ViewportRenderInfo] constants."
msgstr ""
-#: doc/classes/RenderingServer.xml:2776
+#: doc/classes/RenderingServer.xml:2772
msgid "Returns the viewport's last rendered frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:2787
+#: doc/classes/RenderingServer.xml:2783
msgid "Detaches a viewport from a canvas and vice versa."
msgstr ""
-#: doc/classes/RenderingServer.xml:2798
+#: doc/classes/RenderingServer.xml:2794
msgid "If [code]true[/code], sets the viewport active, else sets it inactive."
msgstr ""
-#: doc/classes/RenderingServer.xml:2813
+#: doc/classes/RenderingServer.xml:2809
msgid ""
"Sets the stacking order for a viewport's canvas.\n"
"[code]layer[/code] is the actual canvas layer, while [code]sublayer[/code] "
"specifies the stacking order of the canvas among those in the same layer."
msgstr ""
-#: doc/classes/RenderingServer.xml:2827
+#: doc/classes/RenderingServer.xml:2823
msgid "Sets the transformation of a viewport's canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:2838
+#: doc/classes/RenderingServer.xml:2834
msgid ""
"Sets the clear mode of a viewport. See [enum ViewportClearMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2849
+#: doc/classes/RenderingServer.xml:2845
msgid ""
"Sets the debug draw mode of a viewport. See [enum ViewportDebugDraw] for "
"options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2860
+#: doc/classes/RenderingServer.xml:2856
msgid ""
"If [code]true[/code], rendering of a viewport's environment is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:2871
+#: doc/classes/RenderingServer.xml:2867
msgid "Sets the viewport's global transformation matrix."
msgstr ""
-#: doc/classes/RenderingServer.xml:2882
+#: doc/classes/RenderingServer.xml:2878
msgid "If [code]true[/code], the viewport's canvas is not rendered."
msgstr ""
-#: doc/classes/RenderingServer.xml:2893
+#: doc/classes/RenderingServer.xml:2889
msgid "Currently unimplemented in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:2904
+#: doc/classes/RenderingServer.xml:2900
msgid "Sets the anti-aliasing mode. See [enum ViewportMSAA] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2915
+#: doc/classes/RenderingServer.xml:2911
msgid "Sets the viewport's parent to another viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:2926
+#: doc/classes/RenderingServer.xml:2922
msgid ""
"If [code]true[/code], render the contents of the viewport directly to "
"screen. This allows a low-level optimization where you can skip drawing a "
@@ -42970,455 +43667,455 @@ msgid ""
"significantly larger than the window size."
msgstr ""
-#: doc/classes/RenderingServer.xml:2937
+#: doc/classes/RenderingServer.xml:2933
msgid ""
"Sets a viewport's scenario.\n"
"The scenario contains information about the [enum ScenarioDebugMode], "
"environment information, reflection atlas etc."
msgstr ""
-#: doc/classes/RenderingServer.xml:2951
+#: doc/classes/RenderingServer.xml:2947
msgid "Sets the shadow atlas quadrant's subdivision."
msgstr ""
-#: doc/classes/RenderingServer.xml:2962
+#: doc/classes/RenderingServer.xml:2958
msgid ""
"Sets the size of the shadow atlas's images (used for omni and spot lights). "
"The value will be rounded up to the nearest power of 2."
msgstr ""
-#: doc/classes/RenderingServer.xml:2975
+#: doc/classes/RenderingServer.xml:2971
msgid "Sets the viewport's width and height."
msgstr ""
-#: doc/classes/RenderingServer.xml:2986
+#: doc/classes/RenderingServer.xml:2982
msgid ""
"If [code]true[/code], the viewport renders its background as transparent."
msgstr ""
-#: doc/classes/RenderingServer.xml:2997
+#: doc/classes/RenderingServer.xml:2993
msgid ""
"Sets when the viewport should be updated. See [enum ViewportUpdateMode] "
"constants for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:3008
+#: doc/classes/RenderingServer.xml:3004
msgid ""
"If [code]true[/code], the viewport uses augmented or virtual reality "
"technologies. See [XRInterface]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3014
+#: doc/classes/RenderingServer.xml:3010
msgid ""
"If [code]false[/code], disables rendering completely, but the engine logic "
"is still being processed. You can call [method force_draw] to draw a frame "
"even with rendering disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3020
+#: doc/classes/RenderingServer.xml:3016
msgid ""
"Emitted at the end of the frame, after the RenderingServer has finished "
"updating all the Viewports."
msgstr ""
-#: doc/classes/RenderingServer.xml:3025
+#: doc/classes/RenderingServer.xml:3021
msgid ""
"Emitted at the beginning of the frame, before the RenderingServer updates "
"all the Viewports."
msgstr ""
-#: doc/classes/RenderingServer.xml:3031
+#: doc/classes/RenderingServer.xml:3027
msgid "Marks an error that shows that the index array is empty."
msgstr ""
-#: doc/classes/RenderingServer.xml:3034
+#: doc/classes/RenderingServer.xml:3030
msgid "Number of weights/bones per vertex."
msgstr ""
-#: doc/classes/RenderingServer.xml:3037
+#: doc/classes/RenderingServer.xml:3033
msgid "The minimum Z-layer for canvas items."
msgstr ""
-#: doc/classes/RenderingServer.xml:3040
+#: doc/classes/RenderingServer.xml:3036
msgid "The maximum Z-layer for canvas items."
msgstr ""
-#: doc/classes/RenderingServer.xml:3043
+#: doc/classes/RenderingServer.xml:3039
msgid ""
"Max number of glow levels that can be used with glow post-process effect."
msgstr ""
-#: doc/classes/RenderingServer.xml:3046
+#: doc/classes/RenderingServer.xml:3042
msgid "Unused enum in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:3067
+#: doc/classes/RenderingServer.xml:3063
msgid "Shader is a 3D shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3070
+#: doc/classes/RenderingServer.xml:3066
msgid "Shader is a 2D shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3073
+#: doc/classes/RenderingServer.xml:3069
msgid "Shader is a particle shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3076
+#: doc/classes/RenderingServer.xml:3072
msgid "Shader is a sky shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3079
+#: doc/classes/RenderingServer.xml:3075
msgid "Represents the size of the [enum ShaderMode] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3082
+#: doc/classes/RenderingServer.xml:3078
msgid "The minimum renderpriority of all materials."
msgstr ""
-#: doc/classes/RenderingServer.xml:3085
+#: doc/classes/RenderingServer.xml:3081
msgid "The maximum renderpriority of all materials."
msgstr ""
-#: doc/classes/RenderingServer.xml:3088
+#: doc/classes/RenderingServer.xml:3084
msgid "Array is a vertex array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3091
+#: doc/classes/RenderingServer.xml:3087
msgid "Array is a normal array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3094
+#: doc/classes/RenderingServer.xml:3090
msgid "Array is a tangent array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3097
+#: doc/classes/RenderingServer.xml:3093
msgid "Array is a color array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3100
+#: doc/classes/RenderingServer.xml:3096
msgid "Array is an UV coordinates array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3103
+#: doc/classes/RenderingServer.xml:3099
msgid "Array is an UV coordinates array for the second UV coordinates."
msgstr ""
-#: doc/classes/RenderingServer.xml:3106
+#: doc/classes/RenderingServer.xml:3102
msgid "Array contains bone information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3109
+#: doc/classes/RenderingServer.xml:3105
msgid "Array is weight information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3112
+#: doc/classes/RenderingServer.xml:3108
msgid "Array is index array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3118
+#: doc/classes/RenderingServer.xml:3114
msgid "Flag used to mark a vertex array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3121
+#: doc/classes/RenderingServer.xml:3117
msgid "Flag used to mark a normal array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3124
+#: doc/classes/RenderingServer.xml:3120
msgid "Flag used to mark a tangent array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3127
+#: doc/classes/RenderingServer.xml:3123
msgid "Flag used to mark a color array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3130
+#: doc/classes/RenderingServer.xml:3126
msgid "Flag used to mark an UV coordinates array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3133
+#: doc/classes/RenderingServer.xml:3129
msgid ""
"Flag used to mark an UV coordinates array for the second UV coordinates."
msgstr ""
-#: doc/classes/RenderingServer.xml:3136
+#: doc/classes/RenderingServer.xml:3132
msgid "Flag used to mark a bone information array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3139
+#: doc/classes/RenderingServer.xml:3135
msgid "Flag used to mark a weights array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3142
+#: doc/classes/RenderingServer.xml:3138
msgid "Flag used to mark an index array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3171
+#: doc/classes/RenderingServer.xml:3167
msgid "Primitive to draw consists of points."
msgstr ""
-#: doc/classes/RenderingServer.xml:3174
+#: doc/classes/RenderingServer.xml:3170
msgid "Primitive to draw consists of lines."
msgstr ""
-#: doc/classes/RenderingServer.xml:3177
+#: doc/classes/RenderingServer.xml:3173
msgid "Primitive to draw consists of a line strip from start to end."
msgstr ""
-#: doc/classes/RenderingServer.xml:3180
+#: doc/classes/RenderingServer.xml:3176
msgid "Primitive to draw consists of triangles."
msgstr ""
-#: doc/classes/RenderingServer.xml:3183
+#: doc/classes/RenderingServer.xml:3179
msgid ""
"Primitive to draw consists of a triangle strip (the last 3 vertices are "
"always combined to make a triangle)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3186
+#: doc/classes/RenderingServer.xml:3182
msgid "Represents the size of the [enum PrimitiveType] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3195
+#: doc/classes/RenderingServer.xml:3191
msgid "Use [Transform2D] to store MultiMesh transform."
msgstr ""
-#: doc/classes/RenderingServer.xml:3198
+#: doc/classes/RenderingServer.xml:3194
msgid "Use [Transform] to store MultiMesh transform."
msgstr ""
-#: doc/classes/RenderingServer.xml:3201
+#: doc/classes/RenderingServer.xml:3197
msgid "Is a directional (sun) light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3204
+#: doc/classes/RenderingServer.xml:3200
msgid "Is an omni light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3207
+#: doc/classes/RenderingServer.xml:3203
msgid "Is a spot light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3210
+#: doc/classes/RenderingServer.xml:3206
msgid "The light's energy."
msgstr ""
-#: doc/classes/RenderingServer.xml:3215
+#: doc/classes/RenderingServer.xml:3211
msgid "The light's influence on specularity."
msgstr ""
-#: doc/classes/RenderingServer.xml:3218
+#: doc/classes/RenderingServer.xml:3214
msgid "The light's range."
msgstr ""
-#: doc/classes/RenderingServer.xml:3221
+#: doc/classes/RenderingServer.xml:3217
msgid ""
"The size of the light when using spot light or omni light. The angular size "
"of the light when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3224
+#: doc/classes/RenderingServer.xml:3220
msgid "The light's attenuation."
msgstr ""
-#: doc/classes/RenderingServer.xml:3227
+#: doc/classes/RenderingServer.xml:3223
msgid "The spotlight's angle."
msgstr ""
-#: doc/classes/RenderingServer.xml:3230
+#: doc/classes/RenderingServer.xml:3226
msgid "The spotlight's attenuation."
msgstr ""
-#: doc/classes/RenderingServer.xml:3233
+#: doc/classes/RenderingServer.xml:3229
msgid "Max distance that shadows will be rendered."
msgstr ""
-#: doc/classes/RenderingServer.xml:3236
+#: doc/classes/RenderingServer.xml:3232
msgid "Proportion of shadow atlas occupied by the first split."
msgstr ""
-#: doc/classes/RenderingServer.xml:3239
+#: doc/classes/RenderingServer.xml:3235
msgid "Proportion of shadow atlas occupied by the second split."
msgstr ""
-#: doc/classes/RenderingServer.xml:3242
+#: doc/classes/RenderingServer.xml:3238
msgid ""
"Proportion of shadow atlas occupied by the third split. The fourth split "
"occupies the rest."
msgstr ""
-#: doc/classes/RenderingServer.xml:3245
+#: doc/classes/RenderingServer.xml:3241
msgid ""
"Proportion of shadow max distance where the shadow will start to fade out."
msgstr ""
-#: doc/classes/RenderingServer.xml:3248
+#: doc/classes/RenderingServer.xml:3244
msgid ""
"Normal bias used to offset shadow lookup by object normal. Can be used to "
"fix self-shadowing artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3251
+#: doc/classes/RenderingServer.xml:3247
msgid "Bias the shadow lookup to fix self-shadowing artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3257
+#: doc/classes/RenderingServer.xml:3253
msgid ""
"Blurs the edges of the shadow. Can be used to hide pixel artifacts in low "
"resolution shadow maps. A high value can make shadows appear grainy and can "
"cause other unwanted artifacts. Try to keep as near default as possible."
msgstr ""
-#: doc/classes/RenderingServer.xml:3262
+#: doc/classes/RenderingServer.xml:3258
msgid "Represents the size of the [enum LightParam] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3265
+#: doc/classes/RenderingServer.xml:3267
msgid "Use a dual paraboloid shadow map for omni lights."
msgstr ""
-#: doc/classes/RenderingServer.xml:3268
+#: doc/classes/RenderingServer.xml:3270
msgid ""
"Use a cubemap shadow map for omni lights. Slower but better quality than "
"dual paraboloid."
msgstr ""
-#: doc/classes/RenderingServer.xml:3271
+#: doc/classes/RenderingServer.xml:3273
msgid "Use orthogonal shadow projection for directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3274
+#: doc/classes/RenderingServer.xml:3276
msgid "Use 2 splits for shadow projection when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3277
+#: doc/classes/RenderingServer.xml:3279
msgid "Use 4 splits for shadow projection when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3280
+#: doc/classes/RenderingServer.xml:3282
msgid ""
"Keeps shadows stable as camera moves but has lower effective resolution."
msgstr ""
-#: doc/classes/RenderingServer.xml:3283
+#: doc/classes/RenderingServer.xml:3285
msgid ""
"Optimize use of shadow maps, increasing the effective resolution. But may "
"result in shadows moving or flickering slightly."
msgstr ""
-#: doc/classes/RenderingServer.xml:3286
+#: doc/classes/RenderingServer.xml:3288
msgid "Reflection probe will update reflections once and then stop."
msgstr ""
-#: doc/classes/RenderingServer.xml:3289
+#: doc/classes/RenderingServer.xml:3291
msgid ""
"Reflection probe will update each frame. This mode is necessary to capture "
"moving objects."
msgstr ""
-#: doc/classes/RenderingServer.xml:3302
+#: doc/classes/RenderingServer.xml:3310
msgid "Draw particles in the order that they appear in the particles array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3305
+#: doc/classes/RenderingServer.xml:3313
msgid "Sort particles based on their lifetime."
msgstr ""
-#: doc/classes/RenderingServer.xml:3308
+#: doc/classes/RenderingServer.xml:3316
msgid "Sort particles based on their distance to the camera."
msgstr ""
-#: doc/classes/RenderingServer.xml:3311
+#: doc/classes/RenderingServer.xml:3319
msgid "Do not update the viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:3314
+#: doc/classes/RenderingServer.xml:3322
msgid "Update the viewport once then set to disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3317
+#: doc/classes/RenderingServer.xml:3325
msgid "Update the viewport whenever it is visible."
msgstr ""
-#: doc/classes/RenderingServer.xml:3322
+#: doc/classes/RenderingServer.xml:3330
msgid "Always update the viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:3325
+#: doc/classes/RenderingServer.xml:3333
msgid "The viewport is always cleared before drawing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3328
+#: doc/classes/RenderingServer.xml:3336
msgid "The viewport is never cleared before drawing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3331
+#: doc/classes/RenderingServer.xml:3339
msgid ""
"The viewport is cleared once, then the clear mode is set to [constant "
"VIEWPORT_CLEAR_NEVER]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3334
+#: doc/classes/RenderingServer.xml:3342
msgid "Multisample antialiasing is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3337
+#: doc/classes/RenderingServer.xml:3345
msgid "Multisample antialiasing uses 2 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3340
+#: doc/classes/RenderingServer.xml:3348
msgid "Multisample antialiasing uses 4 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3343
+#: doc/classes/RenderingServer.xml:3351
msgid "Multisample antialiasing uses 8 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3346
+#: doc/classes/RenderingServer.xml:3354
msgid "Multisample antialiasing uses 16 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3357
+#: doc/classes/RenderingServer.xml:3365
msgid "Number of objects drawn in a single frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3360
+#: doc/classes/RenderingServer.xml:3368
msgid "Number of vertices drawn in a single frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3363
+#: doc/classes/RenderingServer.xml:3371
msgid "Number of material changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3366
+#: doc/classes/RenderingServer.xml:3374
msgid "Number of shader changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3369
+#: doc/classes/RenderingServer.xml:3377
msgid "Number of surface changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3372
+#: doc/classes/RenderingServer.xml:3380
msgid "Number of draw calls during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3375
+#: doc/classes/RenderingServer.xml:3383
msgid "Represents the size of the [enum ViewportRenderInfo] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3378
+#: doc/classes/RenderingServer.xml:3386
msgid "Debug draw is disabled. Default setting."
msgstr ""
-#: doc/classes/RenderingServer.xml:3381 doc/classes/Viewport.xml:348
+#: doc/classes/RenderingServer.xml:3389 doc/classes/Viewport.xml:348
msgid "Objects are displayed without light information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3384
+#: doc/classes/RenderingServer.xml:3392
msgid "Objects are displayed with only light information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3387 doc/classes/Viewport.xml:353
+#: doc/classes/RenderingServer.xml:3395 doc/classes/Viewport.xml:353
msgid ""
"Objects are displayed semi-transparent with additive blending so you can see "
"where they are drawing over top of one another. A higher overdraw means you "
@@ -43426,41 +44123,41 @@ msgid ""
"others."
msgstr ""
-#: doc/classes/RenderingServer.xml:3390
+#: doc/classes/RenderingServer.xml:3398
msgid "Debug draw draws objects in wireframe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3393
+#: doc/classes/RenderingServer.xml:3401
msgid ""
"Normal buffer is drawn instead of regular scene so you can see the per-pixel "
"normals that will be used by post-processing effects."
msgstr ""
-#: doc/classes/RenderingServer.xml:3396 doc/classes/Viewport.xml:361
+#: doc/classes/RenderingServer.xml:3404 doc/classes/Viewport.xml:361
msgid "Objects are displayed with only the albedo value from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3399 doc/classes/Viewport.xml:364
+#: doc/classes/RenderingServer.xml:3407 doc/classes/Viewport.xml:364
msgid "Objects are displayed with only the lighting value from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3402 doc/classes/Viewport.xml:367
+#: doc/classes/RenderingServer.xml:3410 doc/classes/Viewport.xml:367
msgid "Objects are displayed with only the emission color from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3405 doc/classes/Viewport.xml:370
+#: doc/classes/RenderingServer.xml:3413 doc/classes/Viewport.xml:370
msgid ""
"Draws the shadow atlas that stores shadows from [OmniLight3D]s and "
"[SpotLight3D]s in the upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3408 doc/classes/Viewport.xml:373
+#: doc/classes/RenderingServer.xml:3416 doc/classes/Viewport.xml:373
msgid ""
"Draws the shadow atlas that stores shadows from [DirectionalLight3D]s in the "
"upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3413
+#: doc/classes/RenderingServer.xml:3421
msgid ""
"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 "
@@ -43468,21 +44165,14 @@ msgid ""
"your [WorldEnvironment]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3416 doc/classes/Viewport.xml:381
-msgid ""
-"Draws the roughness limiter post process over the Viewport so you can see "
-"where it has an effect. It must be enabled in [member ProjectSettings."
-"rendering/quality/screen_filters/screen_space_roughness_limiter] to work."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:3419
+#: doc/classes/RenderingServer.xml:3424
msgid ""
"Colors each PSSM split for the [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."
msgstr ""
-#: doc/classes/RenderingServer.xml:3424
+#: doc/classes/RenderingServer.xml:3435
msgid ""
"Uses high quality importance sampling to process the radiance map. In "
"general, this results in much higher quality than [constant Sky."
@@ -43493,7 +44183,7 @@ msgid ""
"ggx_samples]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3427
+#: doc/classes/RenderingServer.xml:3438
msgid ""
"Uses the fast filtering algorithm to process the radiance map. In general "
"this results in lower quality, but substantially faster run times.\n"
@@ -43501,347 +44191,347 @@ msgid ""
"[member Sky.radiance_size] must be set to [constant Sky.RADIANCE_SIZE_256]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3431
+#: doc/classes/RenderingServer.xml:3442
msgid "Use the clear color as background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3434
+#: doc/classes/RenderingServer.xml:3445
msgid "Use a specified color as the background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3437
+#: doc/classes/RenderingServer.xml:3448
msgid "Use a sky resource for the background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3440
+#: doc/classes/RenderingServer.xml:3451
msgid ""
"Use a specified canvas layer as the background. This can be useful for "
"instantiating a 2D scene in a 3D world."
msgstr ""
-#: doc/classes/RenderingServer.xml:3443
+#: doc/classes/RenderingServer.xml:3454
msgid ""
"Do not clear the background, use whatever was rendered last frame as the "
"background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3449
+#: doc/classes/RenderingServer.xml:3460
msgid "Represents the size of the [enum EnvironmentBG] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3488
+#: doc/classes/RenderingServer.xml:3499
msgid "Output color as they came in."
msgstr ""
-#: doc/classes/RenderingServer.xml:3491
+#: doc/classes/RenderingServer.xml:3502
msgid "Use the Reinhard tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3494
+#: doc/classes/RenderingServer.xml:3505
msgid "Use the filmic tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3497
+#: doc/classes/RenderingServer.xml:3508
msgid "Use the ACES tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3508
+#: doc/classes/RenderingServer.xml:3519
msgid "Disables the blur set for SSAO. Will make SSAO look noisier."
msgstr ""
-#: doc/classes/RenderingServer.xml:3511
+#: doc/classes/RenderingServer.xml:3522
msgid "Perform a 1x1 blur on the SSAO output."
msgstr ""
-#: doc/classes/RenderingServer.xml:3514
+#: doc/classes/RenderingServer.xml:3525
msgid "Performs a 2x2 blur on the SSAO output."
msgstr ""
-#: doc/classes/RenderingServer.xml:3517
+#: doc/classes/RenderingServer.xml:3528
msgid "Performs a 3x3 blur on the SSAO output. Use this for smoothest SSAO."
msgstr ""
-#: doc/classes/RenderingServer.xml:3520
+#: doc/classes/RenderingServer.xml:3531
msgid "Lowest quality of screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3523
+#: doc/classes/RenderingServer.xml:3534
msgid "Medium quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3526
+#: doc/classes/RenderingServer.xml:3537
msgid "High quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3529
+#: doc/classes/RenderingServer.xml:3540
msgid "Highest quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3540
+#: doc/classes/RenderingServer.xml:3551
msgid ""
"Lowest quality DOF blur. This is the fastest setting, but you may be able to "
"see filtering artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3543
+#: doc/classes/RenderingServer.xml:3554
msgid "Low quality DOF blur."
msgstr ""
-#: doc/classes/RenderingServer.xml:3546
+#: doc/classes/RenderingServer.xml:3557
msgid "Medium quality DOF blur."
msgstr ""
-#: doc/classes/RenderingServer.xml:3549
+#: doc/classes/RenderingServer.xml:3560
msgid ""
"Highest quality DOF blur. Results in the smoothest looking blur by taking "
"the most samples, but is also significantly slower."
msgstr ""
-#: doc/classes/RenderingServer.xml:3552
+#: doc/classes/RenderingServer.xml:3563
msgid ""
"Calculate the DOF blur using a box filter. The fastest option, but results "
"in obvious lines in blur pattern."
msgstr ""
-#: doc/classes/RenderingServer.xml:3555
+#: doc/classes/RenderingServer.xml:3566
msgid "Calculates DOF blur using a hexagon shaped filter."
msgstr ""
-#: doc/classes/RenderingServer.xml:3558
+#: doc/classes/RenderingServer.xml:3569
msgid ""
"Calculates DOF blur using a circle shaped filter. Best quality and most "
"realistic, but slowest. Use only for areas where a lot of performance can be "
"dedicated to post-processing (e.g. cutscenes)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3573
+#: doc/classes/RenderingServer.xml:3584
msgid "Do not use a debug mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:3576
+#: doc/classes/RenderingServer.xml:3587
msgid "Draw all objects as wireframe models."
msgstr ""
-#: doc/classes/RenderingServer.xml:3579
+#: doc/classes/RenderingServer.xml:3590
msgid ""
"Draw all objects in a way that displays how much overdraw is occurring. "
"Overdraw occurs when a section of pixels is drawn and shaded and then "
"another object covers it up. To optimize a scene, you should reduce overdraw."
msgstr ""
-#: doc/classes/RenderingServer.xml:3582
+#: doc/classes/RenderingServer.xml:3593
msgid ""
"Draw all objects without shading. Equivalent to setting all objects shaders "
"to [code]unshaded[/code]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3585
+#: doc/classes/RenderingServer.xml:3596
msgid "The instance does not have a type."
msgstr ""
-#: doc/classes/RenderingServer.xml:3588
+#: doc/classes/RenderingServer.xml:3599
msgid "The instance is a mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:3591
+#: doc/classes/RenderingServer.xml:3602
msgid "The instance is a multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:3594
+#: doc/classes/RenderingServer.xml:3605
msgid "The instance is an immediate geometry."
msgstr ""
-#: doc/classes/RenderingServer.xml:3597
+#: doc/classes/RenderingServer.xml:3608
msgid "The instance is a particle emitter."
msgstr ""
-#: doc/classes/RenderingServer.xml:3600
+#: doc/classes/RenderingServer.xml:3611
msgid "The instance is a light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3603
+#: doc/classes/RenderingServer.xml:3614
msgid "The instance is a reflection probe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3606
+#: doc/classes/RenderingServer.xml:3617
msgid "The instance is a decal."
msgstr ""
-#: doc/classes/RenderingServer.xml:3609
+#: doc/classes/RenderingServer.xml:3620
msgid "The instance is a GI probe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3612
+#: doc/classes/RenderingServer.xml:3623
msgid "The instance is a lightmap."
msgstr ""
-#: doc/classes/RenderingServer.xml:3615
+#: doc/classes/RenderingServer.xml:3626
msgid "Represents the size of the [enum InstanceType] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3618
+#: doc/classes/RenderingServer.xml:3629
msgid ""
"A combination of the flags of geometry instances (mesh, multimesh, immediate "
"and particles)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3621
+#: doc/classes/RenderingServer.xml:3632
msgid "Allows the instance to be used in baked lighting."
msgstr ""
-#: doc/classes/RenderingServer.xml:3624
+#: doc/classes/RenderingServer.xml:3635
msgid "Allows the instance to be used with dynamic global illumination."
msgstr ""
-#: doc/classes/RenderingServer.xml:3627
+#: doc/classes/RenderingServer.xml:3638
msgid "When set, manually requests to draw geometry on next frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3630
+#: doc/classes/RenderingServer.xml:3641
msgid "Represents the size of the [enum InstanceFlags] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3633
+#: doc/classes/RenderingServer.xml:3644
msgid "Disable shadows from this instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:3636
+#: doc/classes/RenderingServer.xml:3647
msgid "Cast shadows from this instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:3639
+#: doc/classes/RenderingServer.xml:3650
msgid ""
"Disable backface culling when rendering the shadow of the object. This is "
"slightly slower but may result in more correct shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3642
+#: doc/classes/RenderingServer.xml:3653
msgid ""
"Only render the shadows from the object. The object itself will not be drawn."
msgstr ""
-#: doc/classes/RenderingServer.xml:3645
+#: doc/classes/RenderingServer.xml:3656
msgid "The nine patch gets stretched where needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3648
+#: doc/classes/RenderingServer.xml:3659
msgid "The nine patch gets filled with tiles where needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3651
+#: doc/classes/RenderingServer.xml:3662
msgid ""
"The nine patch gets filled with tiles where needed and stretches them a bit "
"if needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3654
+#: doc/classes/RenderingServer.xml:3665
msgid "Uses the default filter mode for this [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3666 doc/classes/Viewport.xml:399
+#: doc/classes/RenderingServer.xml:3677 doc/classes/Viewport.xml:402
msgid ""
"The texture filter blends between the nearest 4 pixels and between the "
"nearest 2 mipmaps."
msgstr ""
-#: doc/classes/RenderingServer.xml:3675
+#: doc/classes/RenderingServer.xml:3686
msgid "Max value for [enum CanvasItemTextureFilter] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3678
+#: doc/classes/RenderingServer.xml:3689
msgid "Uses the default repeat mode for this [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3681 doc/classes/Viewport.xml:405
+#: doc/classes/RenderingServer.xml:3692 doc/classes/Viewport.xml:408
msgid ""
"Disables textures repeating. Instead, when reading UVs outside the 0-1 "
"range, the value will be clamped to the edge of the texture, resulting in a "
"stretched out look at the borders of the texture."
msgstr ""
-#: doc/classes/RenderingServer.xml:3687 doc/classes/Viewport.xml:411
+#: doc/classes/RenderingServer.xml:3698 doc/classes/Viewport.xml:414
msgid ""
"Flip the texture when repeating so that the edge lines up instead of "
"abruptly changing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3690
+#: doc/classes/RenderingServer.xml:3701
msgid "Max value for [enum CanvasItemTextureRepeat] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3693
+#: doc/classes/RenderingServer.xml:3704
msgid "Adds light color additive to the canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:3696
+#: doc/classes/RenderingServer.xml:3707
msgid "Adds light color subtractive to the canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:3699
+#: doc/classes/RenderingServer.xml:3710
msgid "The light adds color depending on transparency."
msgstr ""
-#: doc/classes/RenderingServer.xml:3702
+#: doc/classes/RenderingServer.xml:3713
msgid "The light adds color depending on mask."
msgstr ""
-#: doc/classes/RenderingServer.xml:3705
+#: doc/classes/RenderingServer.xml:3716
msgid "Do not apply a filter to canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3708
+#: doc/classes/RenderingServer.xml:3719
msgid "Use PCF5 filtering to filter canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3711
+#: doc/classes/RenderingServer.xml:3722
msgid "Use PCF13 filtering to filter canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3714
+#: doc/classes/RenderingServer.xml:3725
msgid "Max value of the [enum CanvasLightShadowFilter] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3717
+#: doc/classes/RenderingServer.xml:3728
msgid "Culling of the canvas occluder is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3720
+#: doc/classes/RenderingServer.xml:3731
msgid "Culling of the canvas occluder is clockwise."
msgstr ""
-#: doc/classes/RenderingServer.xml:3723
+#: doc/classes/RenderingServer.xml:3734
msgid "Culling of the canvas occluder is counterclockwise."
msgstr ""
-#: doc/classes/RenderingServer.xml:3784
+#: doc/classes/RenderingServer.xml:3795
msgid "The amount of objects in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3787
+#: doc/classes/RenderingServer.xml:3798
msgid "The amount of vertices in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3790
+#: doc/classes/RenderingServer.xml:3801
msgid "The amount of modified materials in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3793
+#: doc/classes/RenderingServer.xml:3804
msgid "The amount of shader rebinds in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3796
+#: doc/classes/RenderingServer.xml:3807
msgid "The amount of surface changes in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3799
+#: doc/classes/RenderingServer.xml:3810
msgid "The amount of draw calls in frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3814
+#: doc/classes/RenderingServer.xml:3825
msgid "Hardware supports shaders. This enum is currently unused in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:3817
+#: doc/classes/RenderingServer.xml:3828
msgid ""
"Hardware supports multithreading. This enum is currently unused in Godot 3.x."
msgstr ""
@@ -43853,13 +44543,13 @@ msgstr ""
#: doc/classes/Resource.xml:7
msgid ""
"Resource is the base class for all Godot-specific resource types, serving "
-"primarily as data containers. They are reference counted and freed when no "
-"longer in use. They are also cached once loaded from disk, so that any "
-"further attempts to load a resource from a given path will return the same "
-"reference (all this in contrast to a [Node], which is not reference counted "
-"and can be instanced from disk as many times as desired). Resources can be "
-"saved externally on disk or bundled into another object, such as a [Node] or "
-"another resource."
+"primarily as data containers. Unlike [Object]s, they are reference-counted "
+"and freed when no longer in use. They are also cached once loaded from disk, "
+"so that any further attempts to load a resource from a given path will "
+"return the same reference (all this in contrast to a [Node], which is not "
+"reference-counted and can be instanced from disk as many times as desired). "
+"Resources can be saved externally on disk or bundled into another object, "
+"such as a [Node] or another resource."
msgstr ""
#: doc/classes/Resource.xml:10
@@ -43868,34 +44558,38 @@ msgid ""
"resources.html"
msgstr ""
-#: doc/classes/Resource.xml:17
+#: doc/classes/Resource.xml:18
msgid ""
"Virtual function which can be overridden to customize the behavior value of "
"[method setup_local_to_scene]."
msgstr ""
-#: doc/classes/Resource.xml:26
+#: doc/classes/Resource.xml:27
msgid ""
"Duplicates the resource, returning a new resource. By default, sub-resources "
-"are shared between resource copies for efficiency, this can be changed by "
-"passing [code]true[/code] to the [code]subresources[/code] argument."
+"are shared between resource copies for efficiency. This can be changed by "
+"passing [code]true[/code] to the [code]subresources[/code] argument which "
+"will copy the subresources.\n"
+"[b]Note:[/b] If [code]subresources[/code] is [code]true[/code], this method "
+"will only perform a shallow copy. Nested resources within subresources will "
+"not be duplicated and will still be shared."
msgstr ""
-#: doc/classes/Resource.xml:33
+#: doc/classes/Resource.xml:35
msgid ""
"If [member resource_local_to_scene] is enabled and the resource was loaded "
"from a [PackedScene] instantiation, returns the local scene where this "
"resource's unique copy is in use. Otherwise, returns [code]null[/code]."
msgstr ""
-#: doc/classes/Resource.xml:40
+#: doc/classes/Resource.xml:42
msgid ""
"Returns the RID of the resource (or an empty RID). Many resources (such as "
"[Texture2D], [Mesh], etc) are high-level abstractions of resources stored in "
"a server, so this function will return the original RID."
msgstr ""
-#: doc/classes/Resource.xml:47
+#: doc/classes/Resource.xml:49
msgid ""
"This method is called when a resource with [member resource_local_to_scene] "
"enabled is loaded from a [PackedScene] instantiation. Its behavior can be "
@@ -43905,7 +44599,7 @@ msgid ""
"local viewport."
msgstr ""
-#: doc/classes/Resource.xml:57
+#: doc/classes/Resource.xml:59
msgid ""
"Sets the path of the resource, potentially overriding an existing cache "
"entry for this path. This differs from setting [member resource_path], as "
@@ -43913,25 +44607,25 @@ msgid ""
"given path."
msgstr ""
-#: doc/classes/Resource.xml:63
+#: doc/classes/Resource.xml:65
msgid ""
"If [code]true[/code], the resource will be made unique in each instance of "
"its local scene. It can thus be modified in a scene instance without "
"impacting other instances of that same scene."
msgstr ""
-#: doc/classes/Resource.xml:66
+#: doc/classes/Resource.xml:68
msgid "The name of the resource. This is an optional identifier."
msgstr ""
-#: doc/classes/Resource.xml:69
+#: doc/classes/Resource.xml:71
msgid ""
"The path to the resource. In case it has its own file, it will return its "
"filepath. If it's tied to the scene, it will return the scene's path, "
"followed by the resource's index."
msgstr ""
-#: doc/classes/Resource.xml:75
+#: doc/classes/Resource.xml:77
msgid "Emitted whenever the resource changes."
msgstr ""
@@ -44750,11 +45444,11 @@ msgid ""
"global coordinate system, but is centered at the object's origin."
msgstr ""
-#: doc/classes/RigidBody2D.xml:87
+#: doc/classes/RigidBody2D.xml:87 doc/classes/RigidBody3D.xml:99
msgid ""
-"Returns a list of the bodies colliding with this one. Use [member "
-"contacts_reported] to set the maximum number reported. You must also set "
-"[member contact_monitor] to [code]true[/code].\n"
+"Returns a list of the bodies colliding with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
"For performance, list of collisions is updated once per frame and before the "
"physics step. Consider using signals instead."
@@ -44791,7 +45485,7 @@ msgstr ""
msgid "The body's total applied torque."
msgstr ""
-#: doc/classes/RigidBody2D.xml:130 doc/classes/RigidBody3D.xml:150
+#: doc/classes/RigidBody2D.xml:130 doc/classes/RigidBody3D.xml:157
msgid ""
"If [code]true[/code], the body can enter sleep mode when there is no "
"movement. See [member sleeping]."
@@ -44803,11 +45497,17 @@ msgid ""
"another RigidBody2D. See also [member contacts_reported]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:136
-msgid "The maximum number of contacts to report."
+#: doc/classes/RigidBody2D.xml:136 doc/classes/RigidBody3D.xml:163
+msgid ""
+"The maximum number of contacts that will be recorded. Requires [member "
+"contact_monitor] to be set to [code]true[/code].\n"
+"[b]Note:[/b] The number of contacts is different from the number of "
+"collisions. Collisions between parallel edges will result in two contacts "
+"(one at each end), and collisions between parallel faces will result in four "
+"contacts (one at each corner)."
msgstr ""
-#: doc/classes/RigidBody2D.xml:139
+#: doc/classes/RigidBody2D.xml:140
msgid ""
"Continuous collision detection mode.\n"
"Continuous collision detection tries to predict where a moving body will "
@@ -44817,21 +45517,21 @@ msgid ""
"methods are available. See [enum CCDMode] for details."
msgstr ""
-#: doc/classes/RigidBody2D.xml:143
+#: doc/classes/RigidBody2D.xml:144
msgid ""
"If [code]true[/code], internal force integration is disabled for this body. "
"Aside from collision response, the body will only move as determined by the "
"[method _integrate_forces] function."
msgstr ""
-#: doc/classes/RigidBody2D.xml:146
+#: doc/classes/RigidBody2D.xml:147
msgid ""
"Multiplies the gravity applied to the body. The body's gravity is calculated "
"from the [b]Default Gravity[/b] value in [b]Project > Project Settings > "
"Physics > 2d[/b] and/or any additional gravity vector applied by [Area2D]s."
msgstr ""
-#: doc/classes/RigidBody2D.xml:149
+#: doc/classes/RigidBody2D.xml:150
msgid ""
"The body's moment of inertia. This is like mass, but for rotation: it "
"determines how much torque it takes to rotate the body. The moment of "
@@ -44840,18 +45540,18 @@ msgid ""
"automatically computing it."
msgstr ""
-#: doc/classes/RigidBody2D.xml:152
+#: doc/classes/RigidBody2D.xml:153
msgid ""
"Damps the body's [member linear_velocity]. If [code]-1[/code], the body will "
"use the [b]Default Linear Damp[/b] in [b]Project > Project Settings > "
"Physics > 2d[/b]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:161
+#: doc/classes/RigidBody2D.xml:162
msgid "The body's mode. See [enum Mode] for possible values."
msgstr ""
-#: doc/classes/RigidBody2D.xml:164 doc/classes/RigidBody3D.xml:181
+#: doc/classes/RigidBody2D.xml:165 doc/classes/RigidBody3D.xml:189
#: doc/classes/StaticBody2D.xml:22 doc/classes/StaticBody3D.xml:22
msgid ""
"The physics material override for the body.\n"
@@ -44859,50 +45559,50 @@ msgid ""
"other physics material, such as an inherited one."
msgstr ""
-#: doc/classes/RigidBody2D.xml:168 doc/classes/RigidBody3D.xml:185
+#: doc/classes/RigidBody2D.xml:169 doc/classes/RigidBody3D.xml:193
msgid ""
"If [code]true[/code], the body will not move and will not calculate forces "
"until woken up by another body through, for example, a collision, or by "
"using the [method apply_impulse] or [method add_force] methods."
msgstr ""
-#: doc/classes/RigidBody2D.xml:171
+#: doc/classes/RigidBody2D.xml:172
msgid ""
"The body's weight based on its mass and the [b]Default Gravity[/b] value in "
"[b]Project > Project Settings > Physics > 2d[/b]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:179
+#: doc/classes/RigidBody2D.xml:180 doc/classes/RigidBody3D.xml:204
msgid ""
-"Emitted when a body enters into contact with this one. [member "
-"contact_monitor] must be [code]true[/code] and [member contacts_reported] "
-"greater than [code]0[/code]."
+"Emitted when a body enters into contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:186
+#: doc/classes/RigidBody2D.xml:187
msgid ""
-"Emitted when a body exits contact with this one. [member contact_monitor] "
-"must be [code]true[/code] and [member contacts_reported] greater than "
-"[code]0[/code]."
+"Emitted when a body exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:199
+#: doc/classes/RigidBody2D.xml:200
msgid ""
"Emitted when a body enters into contact with this one. Reports colliding "
"shape information. See [CollisionObject2D] for shape index information. "
-"[member contact_monitor] must be [code]true[/code] and [member "
-"contacts_reported] greater than [code]0[/code]."
+"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:212
+#: doc/classes/RigidBody2D.xml:213
msgid ""
"Emitted when a body shape exits contact with this one. Reports colliding "
"shape information. See [CollisionObject2D] for shape index information. "
-"[member contact_monitor] must be [code]true[/code] and [member "
-"contacts_reported] greater than [code]0[/code]."
+"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:217 doc/classes/RigidBody3D.xml:236
+#: doc/classes/RigidBody2D.xml:218 doc/classes/RigidBody3D.xml:244
msgid ""
"Emitted when the physics engine changes the body's sleeping state.\n"
"[b]Note:[/b] Changing the value [member sleeping] will not trigger this "
@@ -44910,41 +45610,41 @@ msgid ""
"engine or [code]emit_signal(\"sleeping_state_changed\")[/code] is used."
msgstr ""
-#: doc/classes/RigidBody2D.xml:224
+#: doc/classes/RigidBody2D.xml:225
msgid ""
"Rigid mode. The body behaves as a physical object. It collides with other "
"bodies and responds to forces applied to it. This is the default mode."
msgstr ""
-#: doc/classes/RigidBody2D.xml:227
+#: doc/classes/RigidBody2D.xml:228
msgid "Static mode. The body behaves like a [StaticBody2D] and does not move."
msgstr ""
-#: doc/classes/RigidBody2D.xml:230
+#: doc/classes/RigidBody2D.xml:231
msgid ""
"Character mode. Similar to [constant MODE_RIGID], but the body can not "
"rotate."
msgstr ""
-#: doc/classes/RigidBody2D.xml:233
+#: doc/classes/RigidBody2D.xml:234
msgid ""
"Kinematic mode. The body behaves like a [KinematicBody2D], and must be moved "
"by code."
msgstr ""
-#: doc/classes/RigidBody2D.xml:236
+#: doc/classes/RigidBody2D.xml:237
msgid ""
"Continuous collision detection disabled. This is the fastest way to detect "
"body collisions, but can miss small, fast-moving objects."
msgstr ""
-#: doc/classes/RigidBody2D.xml:239
+#: doc/classes/RigidBody2D.xml:240
msgid ""
"Continuous collision detection enabled using raycasting. This is faster than "
"shapecasting but less precise."
msgstr ""
-#: doc/classes/RigidBody2D.xml:242
+#: doc/classes/RigidBody2D.xml:243
msgid ""
"Continuous collision detection enabled using shapecasting. This is the "
"slowest CCD method and the most precise."
@@ -45030,42 +45730,31 @@ msgid ""
"locked."
msgstr ""
-#: doc/classes/RigidBody3D.xml:99
+#: doc/classes/RigidBody3D.xml:107
msgid ""
-"Returns a list of the bodies colliding with this one. By default, number of "
-"max contacts reported is at 0, see the [member contacts_reported] property "
-"to increase it.\n"
-"[b]Note:[/b] The result of this test is not immediate after moving objects. "
-"For performance, list of collisions is updated once per frame and before the "
-"physics step. Consider using signals instead."
+"Returns the inverse inertia tensor basis. This is used to calculate the "
+"angular acceleration resulting from a torque applied to the [RigidBody3D]."
msgstr ""
-#: doc/classes/RigidBody3D.xml:111
+#: doc/classes/RigidBody3D.xml:118
msgid "Locks the specified linear or rotational axis."
msgstr ""
-#: doc/classes/RigidBody3D.xml:126
+#: doc/classes/RigidBody3D.xml:133
msgid "Damps RigidBody3D's rotational forces."
msgstr ""
-#: doc/classes/RigidBody3D.xml:129
+#: doc/classes/RigidBody3D.xml:136
msgid "RigidBody3D's rotational velocity."
msgstr ""
-#: doc/classes/RigidBody3D.xml:153
+#: doc/classes/RigidBody3D.xml:160
msgid ""
"If [code]true[/code], the RigidBody3D will emit signals when it collides "
-"with another RigidBody3D."
-msgstr ""
-
-#: doc/classes/RigidBody3D.xml:156
-msgid ""
-"The maximum contacts to report. Bodies can keep a log of the contacts with "
-"other bodies, this is enabled by setting the maximum amount of contacts "
-"reported to a number greater than 0."
+"with another RigidBody3D. See also [member contacts_reported]."
msgstr ""
-#: doc/classes/RigidBody3D.xml:159
+#: doc/classes/RigidBody3D.xml:167
msgid ""
"If [code]true[/code], continuous collision detection is used.\n"
"Continuous collision detection tries to predict where a moving body will "
@@ -45075,7 +45764,7 @@ msgid ""
"faster to compute, but can miss small, fast-moving objects."
msgstr ""
-#: doc/classes/RigidBody3D.xml:163
+#: doc/classes/RigidBody3D.xml:171
msgid ""
"If [code]true[/code], internal force integration will be disabled (like "
"gravity or air friction) for this body. Other than collision response, the "
@@ -45083,7 +45772,7 @@ msgid ""
"function, if defined."
msgstr ""
-#: doc/classes/RigidBody3D.xml:166
+#: doc/classes/RigidBody3D.xml:174
msgid ""
"This is multiplied by the global 3D gravity setting found in [b]Project > "
"Project Settings > Physics > 3d[/b] to produce RigidBody3D's gravity. For "
@@ -45091,14 +45780,14 @@ msgid ""
"and 0.5 will apply half gravity to this object."
msgstr ""
-#: doc/classes/RigidBody3D.xml:169
+#: doc/classes/RigidBody3D.xml:177
msgid ""
"The body's linear damp. Cannot be less than -1.0. If this value is different "
"from -1.0, any linear damp derived from the world or areas will be "
"overridden."
msgstr ""
-#: doc/classes/RigidBody3D.xml:172
+#: doc/classes/RigidBody3D.xml:180
msgid ""
"The body's linear velocity. Can be used sporadically, but [b]don't set this "
"every frame[/b], because physics may run in another thread and runs at a "
@@ -45106,60 +45795,57 @@ msgid ""
"for precise control of the body state."
msgstr ""
-#: doc/classes/RigidBody3D.xml:178
+#: doc/classes/RigidBody3D.xml:186
msgid "The body mode. See [enum Mode] for possible values."
msgstr ""
-#: doc/classes/RigidBody3D.xml:196
+#: doc/classes/RigidBody3D.xml:211
msgid ""
-"Emitted when a body enters into contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work."
+"Emitted when a body shape exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody3D.xml:203
+#: doc/classes/RigidBody3D.xml:224
msgid ""
-"Emitted when a body shape exits contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work."
-msgstr ""
-
-#: doc/classes/RigidBody3D.xml:216
-msgid ""
-"Emitted when a body enters into contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work.\n"
+"Emitted when a body enters into contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"This signal not only receives the body that collided with this one, but also "
"its [RID] ([code]body_id[/code]), the shape index from the colliding body "
"([code]body_shape[/code]), and the shape index from this body "
"([code]local_shape[/code]) the other body collided with."
msgstr ""
-#: doc/classes/RigidBody3D.xml:230
+#: doc/classes/RigidBody3D.xml:238
msgid ""
-"Emitted when a body shape exits contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work.\n"
+"Emitted when a body shape exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"This signal not only receives the body that stopped colliding with this one, "
"but also its [RID] ([code]body_id[/code]), the shape index from the "
"colliding body ([code]body_shape[/code]), and the shape index from this body "
"([code]local_shape[/code]) the other body stopped colliding with."
msgstr ""
-#: doc/classes/RigidBody3D.xml:243
+#: doc/classes/RigidBody3D.xml:251
msgid ""
"Rigid body mode. This is the \"natural\" state of a rigid body. It is "
"affected by forces, and can move, rotate, and be affected by user code."
msgstr ""
-#: doc/classes/RigidBody3D.xml:246
+#: doc/classes/RigidBody3D.xml:254
msgid ""
"Static mode. The body behaves like a [StaticBody3D], and can only move by "
"user code."
msgstr ""
-#: doc/classes/RigidBody3D.xml:249
+#: doc/classes/RigidBody3D.xml:257
msgid ""
"Character body mode. This behaves like a rigid body, but can not rotate."
msgstr ""
-#: doc/classes/RigidBody3D.xml:252
+#: doc/classes/RigidBody3D.xml:260
msgid ""
"Kinematic body mode. The body behaves like a [KinematicBody3D], and can only "
"move by user code."
@@ -45666,7 +46352,7 @@ msgstr ""
msgid "The time remaining."
msgstr ""
-#: doc/classes/SceneTreeTimer.xml:28 doc/classes/Timer.xml:62
+#: doc/classes/SceneTreeTimer.xml:28 doc/classes/Timer.xml:63
msgid "Emitted when the timer reaches 0."
msgstr ""
@@ -45789,27 +46475,27 @@ msgid ""
"the singleton using [method EditorInterface.get_script_editor]."
msgstr ""
-#: doc/classes/ScriptEditor.xml:40
+#: doc/classes/ScriptEditor.xml:46
msgid "Returns a [Script] that is currently active in editor."
msgstr ""
-#: doc/classes/ScriptEditor.xml:57
+#: doc/classes/ScriptEditor.xml:69
msgid ""
"Returns an array with all [Script] objects which are currently open in "
"editor."
msgstr ""
-#: doc/classes/ScriptEditor.xml:66
+#: doc/classes/ScriptEditor.xml:78
msgid "Goes to the specified line in the current script."
msgstr ""
-#: doc/classes/ScriptEditor.xml:85
+#: doc/classes/ScriptEditor.xml:113
msgid ""
"Emitted when user changed active script. Argument is a freshly activated "
"[Script]."
msgstr ""
-#: doc/classes/ScriptEditor.xml:92
+#: doc/classes/ScriptEditor.xml:120
msgid ""
"Emitted when editor is about to close the active script. Argument is a "
"[Script] that is going to be closed."
@@ -45871,7 +46557,7 @@ msgid ""
"visible."
msgstr ""
-#: doc/classes/ScrollContainer.xml:37 doc/classes/TextEdit.xml:453
+#: doc/classes/ScrollContainer.xml:37 doc/classes/TextEdit.xml:407
msgid "The current horizontal scroll value."
msgstr ""
@@ -45879,7 +46565,7 @@ msgstr ""
msgid "If [code]true[/code], enables horizontal scrolling."
msgstr ""
-#: doc/classes/ScrollContainer.xml:43 doc/classes/TextEdit.xml:456
+#: doc/classes/ScrollContainer.xml:43 doc/classes/TextEdit.xml:410
msgid "The current vertical scroll value."
msgstr ""
@@ -46398,7 +47084,7 @@ msgstr ""
msgid ""
"Sets the global pose transform, [code]pose[/code], for the bone at "
"[code]bone_idx[/code].\n"
-"[code]amount[/code] is the interpolation strengh that will be used when "
+"[code]amount[/code] is the interpolation strength that will be used when "
"applying the pose, and [code]persistent[/code] determines if the applied "
"pose will remain.\n"
"[b]Note[/b]: The pose transform needs to be in bone space. Use [method "
@@ -46415,7 +47101,7 @@ msgstr ""
#: doc/classes/Skeleton3D.xml:266
msgid ""
-"Returns the pose transform for bone [code]bone_idx[/code].\n"
+"Sets the pose transform for bone [code]bone_idx[/code].\n"
"[b]Note[/b]: The pose transform needs to be in bone space. Use [method "
"world_transform_to_bone_transform] to convert a world transform, like one "
"you can get from a [Node3D], to bone space."
@@ -46508,6 +47194,16 @@ msgstr ""
#: doc/classes/Sky.xml:52
msgid ""
+"Automatically selects the appropriate process mode based on your sky shader. "
+"If your shader uses [code]TIME[/code] or [code]POSITION[/code], this will "
+"use [constant PROCESS_MODE_REALTIME]. If your shader uses any of the "
+"[code]LIGHT_*[/code] variables or any custom uniforms, this uses [constant "
+"PROCESS_MODE_INCREMENTAL]. Otherwise, this defaults to [constant "
+"PROCESS_MODE_QUALITY]."
+msgstr ""
+
+#: doc/classes/Sky.xml:55
+msgid ""
"Uses high quality importance sampling to process the radiance map. In "
"general, this results in much higher quality than [constant "
"PROCESS_MODE_REALTIME] but takes much longer to generate. This should not be "
@@ -46517,10 +47213,22 @@ msgid ""
"ggx_samples]."
msgstr ""
-#: doc/classes/Sky.xml:55
+#: doc/classes/Sky.xml:58
+msgid ""
+"Uses the same high quality importance sampling to process the radiance map "
+"as [constant PROCESS_MODE_QUALITY], but updates over several frames. The "
+"number of frames is determined by [member ProjectSettings.rendering/quality/"
+"reflections/roughness_layers]. Use this when you need highest quality "
+"radiance maps, but have a sky that updates slowly."
+msgstr ""
+
+#: doc/classes/Sky.xml:61
msgid ""
"Uses the fast filtering algorithm to process the radiance map. In general "
-"this results in lower quality, but substantially faster run times.\n"
+"this results in lower quality, but substantially faster run times. If you "
+"need better quality, but still need to update the sky every frame, consider "
+"turning on [member ProjectSettings.rendering/quality/reflections/"
+"fast_filter_high_quality].\n"
"[b]Note:[/b] The fast filtering algorithm is limited to 256x256 cubemaps, so "
"[member radiance_size] must be set to [constant RADIANCE_SIZE_256]."
msgstr ""
@@ -46857,9 +47565,7 @@ msgid ""
msgstr ""
#: doc/classes/SpringArm3D.xml:35
-msgid ""
-"Returns the proportion between the current arm length (after checking for "
-"collisions) and the [member spring_length]. Ranges from 0 to 1."
+msgid "Returns the spring arm's current length."
msgstr ""
#: doc/classes/SpringArm3D.xml:44
@@ -47555,7 +48261,7 @@ msgstr ""
msgid ""
"This is the built-in string class (and the one used by GDScript). It "
"supports Unicode and provides all necessary means for string handling. "
-"Strings are reference counted and use a copy-on-write approach, so passing "
+"Strings are reference-counted and use a copy-on-write approach, so passing "
"them around is cheap in resources."
msgstr ""
@@ -47710,26 +48416,32 @@ msgstr ""
#: doc/classes/String.xml:328
msgid ""
"Returns a copy of the string with escaped characters replaced by their "
-"meanings according to the C language standard."
+"meanings. Supported escape sequences are [code]\\'[/code], [code]\\\"[/"
+"code], [code]\\?[/code], [code]\\\\[/code], [code]\\a[/code], [code]\\b[/"
+"code], [code]\\f[/code], [code]\\n[/code], [code]\\r[/code], [code]\\t[/"
+"code], [code]\\v[/code].\n"
+"[b]Note:[/b] Unlike the GDScript parser, this method doesn't support the "
+"[code]\\uXXXX[/code] escape sequence."
msgstr ""
-#: doc/classes/String.xml:335
+#: doc/classes/String.xml:336
msgid ""
-"Changes the case of some letters. Replaces underscores with spaces, converts "
-"all letters to lowercase, then capitalizes first and every letter following "
-"the space character. For [code]capitalize camelCase mixed_with_underscores[/"
-"code], it will return [code]Capitalize Camelcase Mixed With Underscores[/"
+"Changes the case of some letters. Replaces underscores with spaces, adds "
+"spaces before in-word uppercase characters, converts all letters to "
+"lowercase, then capitalizes the first letter and every letter following a "
+"space character. For [code]capitalize camelCase mixed_with_underscores[/"
+"code], it will return [code]Capitalize Camel Case Mixed With Underscores[/"
"code]."
msgstr ""
-#: doc/classes/String.xml:344
+#: doc/classes/String.xml:345
msgid ""
"Performs a case-sensitive comparison to another string. Returns [code]-1[/"
"code] if less than, [code]+1[/code] if greater than, or [code]0[/code] if "
"equal."
msgstr ""
-#: doc/classes/String.xml:357
+#: doc/classes/String.xml:358
msgid ""
"Returns the number of occurrences of substring [code]what[/code] between "
"[code]from[/code] and [code]to[/code] positions. If [code]from[/code] and "
@@ -47737,7 +48449,7 @@ msgid ""
"code] equals 0 the remained substring will be used."
msgstr ""
-#: doc/classes/String.xml:370
+#: doc/classes/String.xml:371
msgid ""
"Returns the number of occurrences of substring [code]what[/code] (ignoring "
"case) between [code]from[/code] and [code]to[/code] positions. If "
@@ -47745,32 +48457,33 @@ msgid ""
"used. If only [code]to[/code] equals 0 the remained substring will be used."
msgstr ""
-#: doc/classes/String.xml:377
+#: doc/classes/String.xml:378
msgid ""
"Returns a copy of the string with indentation (leading tabs and spaces) "
"removed."
msgstr ""
-#: doc/classes/String.xml:384
+#: doc/classes/String.xml:385
msgid ""
"Returns [code]true[/code] if the length of the string equals [code]0[/code]."
msgstr ""
-#: doc/classes/String.xml:393
+#: doc/classes/String.xml:394
msgid "Returns [code]true[/code] if the string ends with the given string."
msgstr ""
-#: doc/classes/String.xml:404
+#: doc/classes/String.xml:405
msgid ""
"Erases [code]chars[/code] characters from the string starting from "
"[code]position[/code]."
msgstr ""
-#: doc/classes/String.xml:415
+#: doc/classes/String.xml:416
msgid ""
-"Finds the first occurrence of a substring. Returns the starting position of "
-"the substring or [code]-1[/code] if not found. Optionally, the initial "
-"search index can be passed.\n"
+"Returns the index of the [b]first[/b] case-sensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the end of the "
+"string.\n"
"[b]Note:[/b] If you just want to know whether a string contains a substring, "
"use the [code]in[/code] operator as follows:\n"
"[codeblock]\n"
@@ -47780,48 +48493,42 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:430
+#: doc/classes/String.xml:433
msgid ""
-"Finds the last occurrence of a substring. Returns the starting position of "
-"the substring or [code]-1[/code] if not found."
+"Returns the index of the [b]first[/b] case-insensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the end of the string."
msgstr ""
-#: doc/classes/String.xml:441
-msgid ""
-"Finds the first occurrence of a substring, ignoring case. Returns the "
-"starting position of the substring or [code]-1[/code] if not found. "
-"Optionally, the initial search index can be passed."
-msgstr ""
-
-#: doc/classes/String.xml:452
+#: doc/classes/String.xml:444
msgid ""
"Formats the string by replacing all occurrences of [code]placeholder[/code] "
"with [code]values[/code]."
msgstr ""
-#: doc/classes/String.xml:459
+#: doc/classes/String.xml:451
msgid "If the string is a valid file path, returns the base directory name."
msgstr ""
-#: doc/classes/String.xml:466
+#: doc/classes/String.xml:458
msgid ""
"If the string is a valid file path, returns the full file path without the "
"extension."
msgstr ""
-#: doc/classes/String.xml:473
+#: doc/classes/String.xml:465
msgid "If the string is a valid file path, returns the extension."
msgstr ""
-#: doc/classes/String.xml:480
+#: doc/classes/String.xml:472
msgid "If the string is a valid file path, returns the filename."
msgstr ""
-#: doc/classes/String.xml:487
+#: doc/classes/String.xml:479
msgid "Hashes the string and returns a 32-bit integer."
msgstr ""
-#: doc/classes/String.xml:494
+#: doc/classes/String.xml:486
msgid ""
"Converts a string containing a hexadecimal number into an integer. "
"Hexadecimal strings are expected to be prefixed with \"[code]0x[/code]\" "
@@ -47831,7 +48538,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:504
+#: doc/classes/String.xml:496
msgid ""
"Escapes (encodes) a string to URL friendly format. Also referred to as 'URL "
"encode'.\n"
@@ -47841,7 +48548,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:514
+#: doc/classes/String.xml:506
msgid ""
"Unescapes (decodes) a string in URL encoded format. Also referred to as 'URL "
"decode'.\n"
@@ -47851,7 +48558,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:526
+#: doc/classes/String.xml:518
msgid ""
"Converts [code]size[/code] represented as number of bytes to human-readable "
"format using internationalized set of data size units, namely: B, KiB, MiB, "
@@ -47864,48 +48571,48 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:542
+#: doc/classes/String.xml:534
msgid ""
"Returns a copy of the string with the substring [code]what[/code] inserted "
"at the given position."
msgstr ""
-#: doc/classes/String.xml:549
+#: doc/classes/String.xml:541
msgid ""
"If the string is a path to a file or directory, returns [code]true[/code] if "
"the path is absolute."
msgstr ""
-#: doc/classes/String.xml:556
+#: doc/classes/String.xml:548
msgid ""
"If the string is a path to a file or directory, returns [code]true[/code] if "
"the path is relative."
msgstr ""
-#: doc/classes/String.xml:565
+#: doc/classes/String.xml:557
msgid ""
"Returns [code]true[/code] if this string is a subsequence of the given "
"string."
msgstr ""
-#: doc/classes/String.xml:574
+#: doc/classes/String.xml:566
msgid ""
"Returns [code]true[/code] if this string is a subsequence of the given "
"string, without considering case."
msgstr ""
-#: doc/classes/String.xml:581
+#: doc/classes/String.xml:573
msgid ""
"Returns [code]true[/code] if this string is free from characters that aren't "
"allowed in file names, those being:\n"
"[code]: / \\ ? * \" | % < >[/code]"
msgstr ""
-#: doc/classes/String.xml:589
+#: doc/classes/String.xml:581
msgid "Returns [code]true[/code] if this string contains a valid float."
msgstr ""
-#: doc/classes/String.xml:598
+#: doc/classes/String.xml:590
msgid ""
"Returns [code]true[/code] if this string contains a valid hexadecimal "
"number. If [code]with_prefix[/code] is [code]true[/code], then a validity of "
@@ -47913,7 +48620,7 @@ msgid ""
"instance: [code]0xDEADC0DE[/code]."
msgstr ""
-#: doc/classes/String.xml:605
+#: doc/classes/String.xml:597
msgid ""
"Returns [code]true[/code] if this string contains a valid color in "
"hexadecimal HTML notation. Other HTML notations such as named colors or "
@@ -47921,22 +48628,22 @@ msgid ""
"return [code]false[/code]."
msgstr ""
-#: doc/classes/String.xml:612
+#: doc/classes/String.xml:604
msgid ""
"Returns [code]true[/code] if this string is a valid identifier. A valid "
"identifier may contain only letters, digits and underscores ([code]_[/code]) "
"and the first character may not be a digit."
msgstr ""
-#: doc/classes/String.xml:619
+#: doc/classes/String.xml:611
msgid "Returns [code]true[/code] if this string contains a valid integer."
msgstr ""
-#: doc/classes/String.xml:626
+#: doc/classes/String.xml:618
msgid "Returns [code]true[/code] if this string contains a valid IP address."
msgstr ""
-#: doc/classes/String.xml:635
+#: doc/classes/String.xml:627
msgid ""
"Return a [String] which is the concatenation of the [code]parts[/code]. The "
"separator between elements is the string providing this method.\n"
@@ -47946,121 +48653,125 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:646
+#: doc/classes/String.xml:638
msgid ""
"Returns a copy of the string with special characters escaped using the JSON "
"standard."
msgstr ""
-#: doc/classes/String.xml:655
+#: doc/classes/String.xml:647
msgid "Returns a number of characters from the left of the string."
msgstr ""
-#: doc/classes/String.xml:662
+#: doc/classes/String.xml:654
msgid "Returns the string's amount of characters."
msgstr ""
-#: doc/classes/String.xml:671
+#: doc/classes/String.xml:663
msgid "Returns a copy of the string with characters removed from the left."
msgstr ""
-#: doc/classes/String.xml:680
+#: doc/classes/String.xml:672
msgid ""
"Does a simple case-sensitive expression match, where [code]\"*\"[/code] "
"matches zero or more arbitrary characters and [code]\"?\"[/code] matches any "
"single character except a period ([code]\".\"[/code])."
msgstr ""
-#: doc/classes/String.xml:689
+#: doc/classes/String.xml:681
msgid ""
"Does a simple case-insensitive expression match, where [code]\"*\"[/code] "
"matches zero or more arbitrary characters and [code]\"?\"[/code] matches any "
"single character except a period ([code]\".\"[/code])."
msgstr ""
-#: doc/classes/String.xml:696
+#: doc/classes/String.xml:688
msgid "Returns the MD5 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:703
+#: doc/classes/String.xml:695
msgid "Returns the MD5 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:712
+#: doc/classes/String.xml:704
msgid ""
"Performs a case-insensitive comparison to another string. Returns [code]-1[/"
"code] if less than, [code]+1[/code] if greater than, or [code]0[/code] if "
"equal."
msgstr ""
-#: doc/classes/String.xml:721
+#: doc/classes/String.xml:713
msgid "Returns the character code at position [code]at[/code]."
msgstr ""
-#: doc/classes/String.xml:730
+#: doc/classes/String.xml:722
msgid ""
"Formats a number to have an exact number of [code]digits[/code] after the "
"decimal point."
msgstr ""
-#: doc/classes/String.xml:739
+#: doc/classes/String.xml:731
msgid ""
"Formats a number to have an exact number of [code]digits[/code] before the "
"decimal point."
msgstr ""
-#: doc/classes/String.xml:746
+#: doc/classes/String.xml:738
msgid "Decode a percent-encoded string. See [method percent_encode]."
msgstr ""
-#: doc/classes/String.xml:753
+#: doc/classes/String.xml:745
msgid ""
"Percent-encodes a string. Encodes parameters in a URL when sending a HTTP "
"GET request (and bodies of form-urlencoded POST requests)."
msgstr ""
-#: doc/classes/String.xml:762
+#: doc/classes/String.xml:754
msgid ""
"If the string is a path, this concatenates [code]file[/code] at the end of "
"the string as a subpath. E.g. [code]\"this/is\".plus_file(\"path\") == "
"\"this/is/path\"[/code]."
msgstr ""
-#: doc/classes/String.xml:771
+#: doc/classes/String.xml:763
msgid ""
"Returns original string repeated a number of times. The number of "
"repetitions is given by the argument."
msgstr ""
-#: doc/classes/String.xml:782
+#: doc/classes/String.xml:774
msgid ""
"Replaces occurrences of a case-sensitive substring with the given one inside "
"the string."
msgstr ""
-#: doc/classes/String.xml:793
+#: doc/classes/String.xml:785
msgid ""
"Replaces occurrences of a case-insensitive substring with the given one "
"inside the string."
msgstr ""
-#: doc/classes/String.xml:804
+#: doc/classes/String.xml:796
msgid ""
-"Performs a case-sensitive search for a substring, but starts from the end of "
-"the string instead of the beginning."
+"Returns the index of the [b]last[/b] case-sensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the beginning of the "
+"string."
msgstr ""
-#: doc/classes/String.xml:815
+#: doc/classes/String.xml:807
msgid ""
-"Performs a case-insensitive search for a substring, but starts from the end "
-"of the string instead of the beginning."
+"Returns the index of the [b]last[/b] case-insensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the beginning of the "
+"string."
msgstr ""
-#: doc/classes/String.xml:824
+#: doc/classes/String.xml:816
msgid "Returns the right side of the string from a given position."
msgstr ""
-#: doc/classes/String.xml:837
+#: doc/classes/String.xml:829
msgid ""
"Splits the string by a [code]delimiter[/code] string and returns an array of "
"the substrings, starting from right.\n"
@@ -48079,39 +48790,39 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:856
+#: doc/classes/String.xml:848
msgid "Returns a copy of the string with characters removed from the right."
msgstr ""
-#: doc/classes/String.xml:863
+#: doc/classes/String.xml:855
msgid "Returns the SHA-1 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:870
+#: doc/classes/String.xml:862
msgid "Returns the SHA-1 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:877
+#: doc/classes/String.xml:869
msgid "Returns the SHA-256 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:884
+#: doc/classes/String.xml:876
msgid "Returns the SHA-256 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:893
+#: doc/classes/String.xml:885
msgid ""
"Returns the similarity index of the text compared to this string. 1 means "
"totally similar and 0 means totally dissimilar."
msgstr ""
-#: doc/classes/String.xml:906
+#: doc/classes/String.xml:898
msgid ""
"Splits the string by a [code]delimiter[/code] string and returns an array of "
-"the substrings.\n"
+"the substrings. The [code]delimiter[/code] can be of any length.\n"
"If [code]maxsplit[/code] is specified, it defines the number of splits to do "
-"from the left up to [code]maxsplit[/code]. The default value of 0 means that "
-"all items are split.\n"
+"from the left up to [code]maxsplit[/code]. The default value of [code]0[/"
+"code] means that all items are split.\n"
"Example:\n"
"[codeblock]\n"
"var some_string = \"One,Two,Three,Four\"\n"
@@ -48119,10 +48830,12 @@ msgid ""
"print(some_array.size()) # Prints 2\n"
"print(some_array[0]) # Prints \"One\"\n"
"print(some_array[1]) # Prints \"Two,Three,Four\"\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"If you need to split strings with more complex rules, use the [RegEx] class "
+"instead."
msgstr ""
-#: doc/classes/String.xml:926
+#: doc/classes/String.xml:919
msgid ""
"Splits the string in floats by using a delimiter string and returns an array "
"of the substrings.\n"
@@ -48130,7 +48843,7 @@ msgid ""
"split by [code]\",\"[/code]."
msgstr ""
-#: doc/classes/String.xml:938
+#: doc/classes/String.xml:931
msgid ""
"Returns a copy of the string stripped of any non-printable character "
"(including tabulations, spaces and line breaks) at the beginning and the "
@@ -48138,7 +48851,7 @@ msgid ""
"right edges respectively."
msgstr ""
-#: doc/classes/String.xml:945
+#: doc/classes/String.xml:938
msgid ""
"Returns a copy of the string stripped of any escape character. These include "
"all non-printable control characters of the first page of the ASCII table (< "
@@ -48146,14 +48859,14 @@ msgid ""
"code] and [code]\\r[/code]) characters, but not spaces."
msgstr ""
-#: doc/classes/String.xml:956
+#: doc/classes/String.xml:949
msgid ""
"Returns part of the string from the position [code]from[/code] with length "
"[code]len[/code]. Argument [code]len[/code] is optional and using [code]-1[/"
"code] will return remaining characters from given position."
msgstr ""
-#: doc/classes/String.xml:963
+#: doc/classes/String.xml:956
msgid ""
"Converts the String (which is a character array) to [PackedByteArray] (which "
"is an array of bytes). The conversion is faster compared to [method "
@@ -48161,25 +48874,25 @@ msgid ""
"ASCII characters."
msgstr ""
-#: doc/classes/String.xml:970
+#: doc/classes/String.xml:963
msgid ""
"Converts a string containing a decimal number into a [code]float[/code]."
msgstr ""
-#: doc/classes/String.xml:977
+#: doc/classes/String.xml:970
msgid ""
"Converts a string containing an integer number into an [code]int[/code]."
msgstr ""
-#: doc/classes/String.xml:984
+#: doc/classes/String.xml:977
msgid "Returns the string converted to lowercase."
msgstr ""
-#: doc/classes/String.xml:991
+#: doc/classes/String.xml:984
msgid "Returns the string converted to uppercase."
msgstr ""
-#: doc/classes/String.xml:998
+#: doc/classes/String.xml:991
msgid ""
"Converts the String (which is an array of characters) to [PackedByteArray] "
"(which is an array of bytes). The conversion is a bit slower than [method "
@@ -48187,25 +48900,25 @@ msgid ""
"this function over [method to_ascii]."
msgstr ""
-#: doc/classes/String.xml:1007
+#: doc/classes/String.xml:1000
msgid ""
"Removes a given string from the start if it starts with it or leaves the "
"string unchanged."
msgstr ""
-#: doc/classes/String.xml:1016
+#: doc/classes/String.xml:1009
msgid ""
"Removes a given string from the end if it ends with it or leaves the string "
"unchanged."
msgstr ""
-#: doc/classes/String.xml:1023
+#: doc/classes/String.xml:1016
msgid ""
"Returns a copy of the string with special characters escaped using the XML "
"standard."
msgstr ""
-#: doc/classes/String.xml:1030
+#: doc/classes/String.xml:1023
msgid ""
"Returns a copy of the string with escaped characters replaced by their "
"meanings according to the XML standard."
@@ -49437,50 +50150,42 @@ msgid ""
"undo/redo."
msgstr ""
-#: doc/classes/TextEdit.xml:24
-msgid "Adds color region (given the delimiters) and its colors."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:35
-msgid "Adds a [code]keyword[/code] and its [Color]."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:44
+#: doc/classes/TextEdit.xml:18
msgid ""
"Returns if the given line is foldable, that is, it has indented lines right "
"below it."
msgstr ""
-#: doc/classes/TextEdit.xml:57
+#: doc/classes/TextEdit.xml:25
msgid ""
-"Clears all custom syntax coloring information previously added with [method "
-"add_color_region] or [method add_keyword_color]."
+"Centers the viewport on the line the editing cursor is at. This also resets "
+"the [member scroll_horizontal] value to [code]0[/code]."
msgstr ""
-#: doc/classes/TextEdit.xml:64
+#: doc/classes/TextEdit.xml:32
msgid "Clears the undo history."
msgstr ""
-#: doc/classes/TextEdit.xml:71
+#: doc/classes/TextEdit.xml:39
msgid "Copy's the current text selection."
msgstr ""
-#: doc/classes/TextEdit.xml:78
+#: doc/classes/TextEdit.xml:46
msgid "Returns the column the editing cursor is at."
msgstr ""
-#: doc/classes/TextEdit.xml:85
+#: doc/classes/TextEdit.xml:53
msgid "Returns the line the editing cursor is at."
msgstr ""
-#: doc/classes/TextEdit.xml:96
+#: doc/classes/TextEdit.xml:64
msgid ""
"Moves the cursor at the specified [code]column[/code] index.\n"
"If [code]adjust_viewport[/code] is set to [code]true[/code], the viewport "
"will center at the cursor position after the move occurs."
msgstr ""
-#: doc/classes/TextEdit.xml:112
+#: doc/classes/TextEdit.xml:80
msgid ""
"Moves the cursor at the specified [code]line[/code] index.\n"
"If [code]adjust_viewport[/code] is set to [code]true[/code], the viewport "
@@ -49489,111 +50194,101 @@ msgid ""
"[code]line[/code] can be hidden using [method set_line_as_hidden]."
msgstr ""
-#: doc/classes/TextEdit.xml:121
+#: doc/classes/TextEdit.xml:89
msgid "Cut's the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:128
+#: doc/classes/TextEdit.xml:96
msgid "Deselects the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:135
+#: doc/classes/TextEdit.xml:103
msgid "Folds all lines that are possible to be folded (see [method can_fold])."
msgstr ""
-#: doc/classes/TextEdit.xml:144
+#: doc/classes/TextEdit.xml:112
msgid "Folds the given line, if possible (see [method can_fold])."
msgstr ""
-#: doc/classes/TextEdit.xml:151
+#: doc/classes/TextEdit.xml:119
msgid "Returns an array containing the line number of each breakpoint."
msgstr ""
-#: doc/classes/TextEdit.xml:160
-msgid "Returns the [Color] of the specified [code]keyword[/code]."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:169
+#: doc/classes/TextEdit.xml:128
msgid "Returns the text of a specific line."
msgstr ""
-#: doc/classes/TextEdit.xml:176
+#: doc/classes/TextEdit.xml:135
msgid "Returns the amount of total lines in the text."
msgstr ""
-#: doc/classes/TextEdit.xml:183
+#: doc/classes/TextEdit.xml:142
msgid ""
"Returns the [PopupMenu] of this [TextEdit]. By default, this menu is "
"displayed when right-clicking on the [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:190
+#: doc/classes/TextEdit.xml:149
msgid "Returns the selection begin column."
msgstr ""
-#: doc/classes/TextEdit.xml:197
+#: doc/classes/TextEdit.xml:156
msgid "Returns the selection begin line."
msgstr ""
-#: doc/classes/TextEdit.xml:204
+#: doc/classes/TextEdit.xml:163
msgid "Returns the text inside the selection."
msgstr ""
-#: doc/classes/TextEdit.xml:211
+#: doc/classes/TextEdit.xml:170
msgid "Returns the selection end column."
msgstr ""
-#: doc/classes/TextEdit.xml:218
+#: doc/classes/TextEdit.xml:177
msgid "Returns the selection end line."
msgstr ""
-#: doc/classes/TextEdit.xml:225
+#: doc/classes/TextEdit.xml:184
msgid "Returns a [String] text with the word under the mouse cursor location."
msgstr ""
-#: doc/classes/TextEdit.xml:234
-msgid ""
-"Returns whether the specified [code]keyword[/code] has a color set to it or "
-"not."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:243
+#: doc/classes/TextEdit.xml:193
msgid "Insert the specified text at the cursor position."
msgstr ""
-#: doc/classes/TextEdit.xml:252
+#: doc/classes/TextEdit.xml:202
msgid "Returns whether the line at the specified index is folded or not."
msgstr ""
-#: doc/classes/TextEdit.xml:261
+#: doc/classes/TextEdit.xml:211
msgid "Returns whether the line at the specified index is hidden or not."
msgstr ""
-#: doc/classes/TextEdit.xml:268
+#: doc/classes/TextEdit.xml:218
msgid "Returns [code]true[/code] if the selection is active."
msgstr ""
-#: doc/classes/TextEdit.xml:277
+#: doc/classes/TextEdit.xml:227
msgid ""
"Triggers a right-click menu action by the specified index. See [enum "
"MenuItems] for a list of available indexes."
msgstr ""
-#: doc/classes/TextEdit.xml:284
+#: doc/classes/TextEdit.xml:234
msgid "Paste the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:291
+#: doc/classes/TextEdit.xml:241
msgid "Perform redo operation."
msgstr ""
-#: doc/classes/TextEdit.xml:298
+#: doc/classes/TextEdit.xml:248
msgid ""
"Removes all the breakpoints. This will not fire the [signal "
"breakpoint_toggled] signal."
msgstr ""
-#: doc/classes/TextEdit.xml:313
+#: doc/classes/TextEdit.xml:263
msgid ""
"Perform a search inside the text. Search flags can be specified in the [enum "
"SearchFlags] enum.\n"
@@ -49609,244 +50304,265 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/TextEdit.xml:336
-msgid "Perform selection, from line/column to line/column."
+#: doc/classes/TextEdit.xml:286
+msgid ""
+"Perform selection, from line/column to line/column.\n"
+"If [member selecting_enabled] is [code]false[/code], no selection will occur."
msgstr ""
-#: doc/classes/TextEdit.xml:343
-msgid "Select all the text."
+#: doc/classes/TextEdit.xml:294
+msgid ""
+"Select all the text.\n"
+"If [member selecting_enabled] is [code]false[/code], no selection will occur."
msgstr ""
-#: doc/classes/TextEdit.xml:354
+#: doc/classes/TextEdit.xml:306
msgid "Sets the text for a specific line."
msgstr ""
-#: doc/classes/TextEdit.xml:365
+#: doc/classes/TextEdit.xml:317
msgid "If [code]true[/code], hides the line of the specified index."
msgstr ""
-#: doc/classes/TextEdit.xml:374
+#: doc/classes/TextEdit.xml:326
msgid "Toggle the folding of the code block at the given line."
msgstr ""
-#: doc/classes/TextEdit.xml:381
+#: doc/classes/TextEdit.xml:333
msgid "Perform undo operation."
msgstr ""
-#: doc/classes/TextEdit.xml:390
+#: doc/classes/TextEdit.xml:342
msgid "Unfolds the given line, if folded."
msgstr ""
-#: doc/classes/TextEdit.xml:397
+#: doc/classes/TextEdit.xml:349
msgid ""
"Unhide all lines that were previously set to hidden by [method "
"set_line_as_hidden]."
msgstr ""
-#: doc/classes/TextEdit.xml:403
+#: doc/classes/TextEdit.xml:355
msgid "If [code]true[/code], the breakpoint gutter is visible."
msgstr ""
-#: doc/classes/TextEdit.xml:412
+#: doc/classes/TextEdit.xml:364
msgid ""
"If [code]true[/code], the caret displays as a rectangle.\n"
"If [code]false[/code], the caret displays as a bar."
msgstr ""
-#: doc/classes/TextEdit.xml:416
+#: doc/classes/TextEdit.xml:368
msgid ""
"If [code]true[/code], a right-click moves the cursor at the mouse position "
"before displaying the context menu.\n"
"If [code]false[/code], the context menu disregards mouse location."
msgstr ""
-#: doc/classes/TextEdit.xml:420
+#: doc/classes/TextEdit.xml:372
msgid "If [code]true[/code], a right-click displays the context menu."
msgstr ""
-#: doc/classes/TextEdit.xml:423
+#: doc/classes/TextEdit.xml:375
msgid ""
"If [code]true[/code], the \"space\" character will have a visible "
"representation."
msgstr ""
-#: doc/classes/TextEdit.xml:426
+#: doc/classes/TextEdit.xml:378
msgid ""
"If [code]true[/code], the \"tab\" character will have a visible "
"representation."
msgstr ""
-#: doc/classes/TextEdit.xml:430
+#: doc/classes/TextEdit.xml:382
msgid ""
"If [code]true[/code], the fold gutter is visible. This enables folding "
"groups of indented lines."
msgstr ""
-#: doc/classes/TextEdit.xml:433
+#: doc/classes/TextEdit.xml:385
msgid ""
"If [code]true[/code], all lines that have been set to hidden by [method "
"set_line_as_hidden], will not be visible."
msgstr ""
-#: doc/classes/TextEdit.xml:436
+#: doc/classes/TextEdit.xml:388
msgid ""
"If [code]true[/code], all occurrences of the selected text will be "
"highlighted."
msgstr ""
-#: doc/classes/TextEdit.xml:439
+#: doc/classes/TextEdit.xml:391
msgid "If [code]true[/code], the line containing the cursor is highlighted."
msgstr ""
-#: doc/classes/TextEdit.xml:447
+#: doc/classes/TextEdit.xml:394
+msgid ""
+"If [code]true[/code], a minimap is shown, providing an outline of your "
+"source code."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:397
+msgid "The width, in pixels, of the minimap."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:401
msgid ""
"If [code]true[/code], custom [code]font_color_selected[/code] will be used "
"for selected text."
msgstr ""
-#: doc/classes/TextEdit.xml:450
+#: doc/classes/TextEdit.xml:404
msgid ""
"If [code]true[/code], read-only mode is enabled. Existing text cannot be "
"modified and new text cannot be added."
msgstr ""
-#: doc/classes/TextEdit.xml:463
+#: doc/classes/TextEdit.xml:413
msgid ""
-"If [code]true[/code], line numbers are displayed to the left of the text."
+"If [code]true[/code], text can be selected.\n"
+"If [code]false[/code], text can not be selected by the user or by the "
+"[method select] or [method select_all] methods."
msgstr ""
-#: doc/classes/TextEdit.xml:466
+#: doc/classes/TextEdit.xml:417
msgid ""
-"If [code]true[/code], sets the [code]step[/code] of the scrollbars to "
-"[code]0.25[/code] which results in smoother scrolling."
+"If [code]true[/code], shortcut keys for context menu items are enabled, even "
+"if the context menu is disabled."
msgstr ""
-#: doc/classes/TextEdit.xml:469
+#: doc/classes/TextEdit.xml:420
msgid ""
-"If [code]true[/code], any custom color properties that have been set for "
-"this [TextEdit] will be visible."
+"If [code]true[/code], line numbers are displayed to the left of the text."
msgstr ""
-#: doc/classes/TextEdit.xml:472
+#: doc/classes/TextEdit.xml:423
+msgid ""
+"If [code]true[/code], sets the [code]step[/code] of the scrollbars to "
+"[code]0.25[/code] which results in smoother scrolling."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:428
msgid "String value of the [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:475
+#: doc/classes/TextEdit.xml:431
msgid "Vertical scroll sensitivity."
msgstr ""
-#: doc/classes/TextEdit.xml:478
+#: doc/classes/TextEdit.xml:437
msgid ""
"If [code]true[/code], enables text wrapping when it goes beyond the edge of "
"what is visible."
msgstr ""
-#: doc/classes/TextEdit.xml:486
+#: doc/classes/TextEdit.xml:445
msgid "Emitted when a breakpoint is placed via the breakpoint gutter."
msgstr ""
-#: doc/classes/TextEdit.xml:491
+#: doc/classes/TextEdit.xml:450
msgid "Emitted when the cursor changes."
msgstr ""
-#: doc/classes/TextEdit.xml:500
+#: doc/classes/TextEdit.xml:459
msgid "Emitted when the info icon is clicked."
msgstr ""
-#: doc/classes/TextEdit.xml:531
+#: doc/classes/TextEdit.xml:496
msgid "Match case when searching."
msgstr ""
-#: doc/classes/TextEdit.xml:534
+#: doc/classes/TextEdit.xml:499
msgid "Match whole words when searching."
msgstr ""
-#: doc/classes/TextEdit.xml:537
+#: doc/classes/TextEdit.xml:502
msgid "Search from end to beginning."
msgstr ""
-#: doc/classes/TextEdit.xml:546
+#: doc/classes/TextEdit.xml:511
msgid ""
"Pastes the clipboard text over the selected text (or at the cursor's "
"position)."
msgstr ""
-#: doc/classes/TextEdit.xml:549
+#: doc/classes/TextEdit.xml:514
msgid "Erases the whole [TextEdit] text."
msgstr ""
-#: doc/classes/TextEdit.xml:552
+#: doc/classes/TextEdit.xml:517
msgid "Selects the whole [TextEdit] text."
msgstr ""
-#: doc/classes/TextEdit.xml:558
+#: doc/classes/TextEdit.xml:523
msgid "Redoes the previous action."
msgstr ""
-#: doc/classes/TextEdit.xml:566
+#: doc/classes/TextEdit.xml:531
msgid ""
"Sets the background [Color] of this [TextEdit]. [member syntax_highlighting] "
"has to be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:569
+#: doc/classes/TextEdit.xml:534
msgid ""
"Sets the [Color] of the bookmark marker. [member syntax_highlighting] has to "
"be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:574 doc/classes/TextEdit.xml:601
+#: doc/classes/TextEdit.xml:539 doc/classes/TextEdit.xml:566
msgid ""
"Sets the [Color] of the breakpoints. [member breakpoint_gutter] has to be "
"enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:612
+#: doc/classes/TextEdit.xml:577
msgid "Sets the default [Font]."
msgstr ""
-#: doc/classes/TextEdit.xml:615
+#: doc/classes/TextEdit.xml:580
msgid "Sets the font [Color]."
msgstr ""
-#: doc/classes/TextEdit.xml:620
+#: doc/classes/TextEdit.xml:585
msgid ""
"Sets the [Color] of the selected text. [member override_selected_font_color] "
"has to be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:625
+#: doc/classes/TextEdit.xml:588
msgid ""
"Sets the [Color] of the line numbers. [member show_line_numbers] has to be "
"enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:628
+#: doc/classes/TextEdit.xml:591
msgid "Sets the spacing between the lines."
msgstr ""
-#: doc/classes/TextEdit.xml:631
+#: doc/classes/TextEdit.xml:594
msgid "Sets the [Color] of marked text."
msgstr ""
-#: doc/classes/TextEdit.xml:636
+#: doc/classes/TextEdit.xml:597
msgid "Sets the [StyleBox] of this [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:641
+#: doc/classes/TextEdit.xml:600
msgid ""
"Sets the [StyleBox] of this [TextEdit] when [member readonly] is enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:646
+#: doc/classes/TextEdit.xml:605
msgid "Sets the highlight [Color] of text selections."
msgstr ""
-#: doc/classes/TextEdit.xml:653
+#: doc/classes/TextEdit.xml:610
msgid "Sets a custom [Texture2D] for tab text characters."
msgstr ""
-#: doc/classes/TextEdit.xml:656
+#: doc/classes/TextEdit.xml:613
msgid ""
"Sets the highlight [Color] of multiple occurrences. [member "
"highlight_all_occurrences] has to be enabled."
@@ -49924,80 +50640,80 @@ msgid ""
"the texture will not scale with the node."
msgstr ""
-#: doc/classes/TextureButton.xml:19
+#: doc/classes/TextureButton.xml:25
msgid ""
"Controls the texture's behavior when you resize the node's bounding "
"rectangle, [b]only if[/b] [member expand] is [code]true[/code]. Set it to "
"one of the [enum StretchMode] constants. See the constants to learn more."
msgstr ""
-#: doc/classes/TextureButton.xml:22
+#: doc/classes/TextureButton.xml:28
msgid ""
"Pure black and white [BitMap] image to use for click detection. On the mask, "
"white pixels represent the button's clickable area. Use it to create buttons "
"with curved shapes."
msgstr ""
-#: doc/classes/TextureButton.xml:25
+#: doc/classes/TextureButton.xml:31
msgid ""
"Texture to display when the node is disabled. See [member BaseButton."
"disabled]."
msgstr ""
-#: doc/classes/TextureButton.xml:28
+#: doc/classes/TextureButton.xml:34
msgid "Texture to display when the node has mouse or keyboard focus."
msgstr ""
-#: doc/classes/TextureButton.xml:31
+#: doc/classes/TextureButton.xml:37
msgid "Texture to display when the mouse hovers the node."
msgstr ""
-#: doc/classes/TextureButton.xml:34
+#: doc/classes/TextureButton.xml:40
msgid ""
"Texture to display by default, when the node is [b]not[/b] in the disabled, "
"focused, hover or pressed state."
msgstr ""
-#: doc/classes/TextureButton.xml:37
+#: doc/classes/TextureButton.xml:43
msgid ""
"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 "
"[member BaseButton.shortcut] key."
msgstr ""
-#: doc/classes/TextureButton.xml:42 doc/classes/TextureRect.xml:36
+#: doc/classes/TextureButton.xml:48 doc/classes/TextureRect.xml:36
msgid "Scale to fit the node's bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:45 doc/classes/TextureRect.xml:39
+#: doc/classes/TextureButton.xml:51 doc/classes/TextureRect.xml:39
msgid "Tile inside the node's bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:48 doc/classes/TextureRect.xml:42
+#: doc/classes/TextureButton.xml:54 doc/classes/TextureRect.xml:42
msgid ""
"The texture keeps its original size and stays in the bounding rectangle's "
"top-left corner."
msgstr ""
-#: doc/classes/TextureButton.xml:51 doc/classes/TextureRect.xml:45
+#: doc/classes/TextureButton.xml:57 doc/classes/TextureRect.xml:45
msgid ""
"The texture keeps its original size and stays centered in the node's "
"bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:54 doc/classes/TextureRect.xml:48
+#: doc/classes/TextureButton.xml:60 doc/classes/TextureRect.xml:48
msgid ""
"Scale the texture to fit the node's bounding rectangle, but maintain the "
"texture's aspect ratio."
msgstr ""
-#: doc/classes/TextureButton.xml:57
+#: doc/classes/TextureButton.xml:63
msgid ""
"Scale the texture to fit the node's bounding rectangle, center it, and "
"maintain its aspect ratio."
msgstr ""
-#: doc/classes/TextureButton.xml:60 doc/classes/TextureRect.xml:54
+#: doc/classes/TextureButton.xml:66 doc/classes/TextureRect.xml:54
msgid ""
"Scale the texture so that the shorter side fits the bounding rectangle. The "
"other side clips to the node's limits."
@@ -50447,19 +51163,25 @@ msgid ""
"advised if working with shared objects."
msgstr ""
-#: doc/classes/Thread.xml:17
+#: doc/classes/Thread.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/threads/thread_safe_apis."
+"html"
+msgstr ""
+
+#: doc/classes/Thread.xml:18
msgid ""
"Returns the current [Thread]'s ID, uniquely identifying it among all threads."
msgstr ""
-#: doc/classes/Thread.xml:24
+#: doc/classes/Thread.xml:25
msgid ""
"Returns [code]true[/code] if this [Thread] is currently active. An active "
"[Thread] cannot start work on a new method but can be joined with [method "
"wait_to_finish]."
msgstr ""
-#: doc/classes/Thread.xml:39
+#: doc/classes/Thread.xml:40
msgid ""
"Starts a new [Thread] that runs [code]method[/code] on object "
"[code]instance[/code] with [code]userdata[/code] passed as an argument. Even "
@@ -50469,21 +51191,21 @@ msgid ""
"Returns [constant OK] on success, or [constant ERR_CANT_CREATE] on failure."
msgstr ""
-#: doc/classes/Thread.xml:47
+#: doc/classes/Thread.xml:48
msgid ""
"Joins the [Thread] and waits for it to finish. Returns what the method "
"called returned."
msgstr ""
-#: doc/classes/Thread.xml:53
+#: doc/classes/Thread.xml:54
msgid "A thread running with lower priority than normally."
msgstr ""
-#: doc/classes/Thread.xml:56
+#: doc/classes/Thread.xml:57
msgid "A thread with a standard priority."
msgstr ""
-#: doc/classes/Thread.xml:59
+#: doc/classes/Thread.xml:60
msgid "A thread running with higher priority than normally."
msgstr ""
@@ -51018,50 +51740,61 @@ msgid "Returns the [Transform2D] of a tile's shape."
msgstr ""
#: doc/classes/TileSet.xml:481
-msgid "Returns an array of the tile's shapes."
+msgid ""
+"Returns an array of dictionaries describing the tile's shapes.\n"
+"[b]Dictionary structure in the array returned by this method:[/b]\n"
+"[codeblock]\n"
+"{\n"
+" \"autotile_coord\": Vector2,\n"
+" \"one_way\": bool,\n"
+" \"one_way_margin\": int,\n"
+" \"shape\": CollisionShape2D,\n"
+" \"shape_transform\": Transform2D,\n"
+"}\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/TileSet.xml:490
+#: doc/classes/TileSet.xml:500
msgid "Returns the tile's texture."
msgstr ""
-#: doc/classes/TileSet.xml:499
+#: doc/classes/TileSet.xml:509
msgid "Returns the texture offset of the tile."
msgstr ""
-#: doc/classes/TileSet.xml:508
+#: doc/classes/TileSet.xml:518
msgid "Returns the tile's [enum TileMode]."
msgstr ""
-#: doc/classes/TileSet.xml:517
+#: doc/classes/TileSet.xml:527
msgid "Returns the tile's Z index (drawing layer)."
msgstr ""
-#: doc/classes/TileSet.xml:528
+#: doc/classes/TileSet.xml:538
msgid "Sets a light occluder for the tile."
msgstr ""
-#: doc/classes/TileSet.xml:539
+#: doc/classes/TileSet.xml:549
msgid "Sets the tile's material."
msgstr ""
-#: doc/classes/TileSet.xml:550
+#: doc/classes/TileSet.xml:560
msgid "Sets the tile's modulation color."
msgstr ""
-#: doc/classes/TileSet.xml:561
+#: doc/classes/TileSet.xml:571
msgid "Sets the tile's name."
msgstr ""
-#: doc/classes/TileSet.xml:572
+#: doc/classes/TileSet.xml:582
msgid "Sets the tile's navigation polygon."
msgstr ""
-#: doc/classes/TileSet.xml:583
+#: doc/classes/TileSet.xml:593
msgid "Sets an offset for the tile's navigation polygon."
msgstr ""
-#: doc/classes/TileSet.xml:594
+#: doc/classes/TileSet.xml:604
msgid ""
"Sets the tile's normal map texture.\n"
"[b]Note:[/b] Godot expects the normal map to use X+, Y-, and Z+ coordinates. "
@@ -51070,48 +51803,48 @@ msgid ""
"a comparison of normal map coordinates expected by popular engines."
msgstr ""
-#: doc/classes/TileSet.xml:606
+#: doc/classes/TileSet.xml:616
msgid "Sets an offset for the tile's light occluder."
msgstr ""
-#: doc/classes/TileSet.xml:617
+#: doc/classes/TileSet.xml:627
msgid ""
"Sets the tile's sub-region in the texture. This is common in texture atlases."
msgstr ""
-#: doc/classes/TileSet.xml:630
+#: doc/classes/TileSet.xml:640
msgid "Sets a shape for the tile, enabling collision."
msgstr ""
-#: doc/classes/TileSet.xml:643
+#: doc/classes/TileSet.xml:653
msgid "Sets the offset of a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:656
+#: doc/classes/TileSet.xml:666
msgid "Enables one-way collision on a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:681
+#: doc/classes/TileSet.xml:691
msgid "Sets a [Transform2D] on a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:692
+#: doc/classes/TileSet.xml:702
msgid "Sets an array of shapes for the tile, enabling collision."
msgstr ""
-#: doc/classes/TileSet.xml:703
+#: doc/classes/TileSet.xml:713
msgid "Sets the tile's texture."
msgstr ""
-#: doc/classes/TileSet.xml:714
+#: doc/classes/TileSet.xml:724
msgid "Sets the tile's texture offset."
msgstr ""
-#: doc/classes/TileSet.xml:725
+#: doc/classes/TileSet.xml:735
msgid "Sets the tile's [enum TileMode]."
msgstr ""
-#: doc/classes/TileSet.xml:736
+#: doc/classes/TileSet.xml:746
msgid "Sets the tile's drawing index."
msgstr ""
@@ -51122,14 +51855,16 @@ msgstr ""
#: doc/classes/Timer.xml:7
msgid ""
"Counts down a specified interval and emits a signal on reaching 0. Can be "
-"set to repeat or \"one-shot\" mode."
+"set to repeat or \"one-shot\" mode.\n"
+"[b]Note:[/b] To create an one-shot timer without instantiating a node, use "
+"[method SceneTree.create_timer]."
msgstr ""
-#: doc/classes/Timer.xml:16
+#: doc/classes/Timer.xml:17
msgid "Returns [code]true[/code] if the timer is stopped."
msgstr ""
-#: doc/classes/Timer.xml:25
+#: doc/classes/Timer.xml:26
msgid ""
"Starts the timer. Sets [code]wait_time[/code] to [code]time_sec[/code] if "
"[code]time_sec > 0[/code]. This also resets the remaining time to "
@@ -51137,11 +51872,11 @@ msgid ""
"[b]Note:[/b] this method will not resume a paused timer. See [member paused]."
msgstr ""
-#: doc/classes/Timer.xml:33
+#: doc/classes/Timer.xml:34
msgid "Stops the timer."
msgstr ""
-#: doc/classes/Timer.xml:39
+#: doc/classes/Timer.xml:40
msgid ""
"If [code]true[/code], the timer will automatically start when entering the "
"scene tree.\n"
@@ -51149,40 +51884,40 @@ msgid ""
"the timer enters the scene tree and starts."
msgstr ""
-#: doc/classes/Timer.xml:43
+#: doc/classes/Timer.xml:44
msgid ""
"If [code]true[/code], the timer will stop when reaching 0. If [code]false[/"
"code], it will restart."
msgstr ""
-#: doc/classes/Timer.xml:46
+#: doc/classes/Timer.xml:47
msgid ""
"If [code]true[/code], the timer is paused and will not process until it is "
"unpaused again, even if [method start] is called."
msgstr ""
-#: doc/classes/Timer.xml:49
+#: doc/classes/Timer.xml:50
msgid "Processing mode. See [enum TimerProcessMode]."
msgstr ""
-#: doc/classes/Timer.xml:52
+#: doc/classes/Timer.xml:53
msgid ""
"The timer's remaining time in seconds. Returns 0 if the timer is inactive.\n"
"[b]Note:[/b] You cannot set this value. To change the timer's remaining "
"time, use [method start]."
msgstr ""
-#: doc/classes/Timer.xml:56
+#: doc/classes/Timer.xml:57
msgid "Wait time in seconds."
msgstr ""
-#: doc/classes/Timer.xml:68
+#: doc/classes/Timer.xml:69
msgid ""
"Update the timer during the physics step at each frame (fixed framerate "
"processing)."
msgstr ""
-#: doc/classes/Timer.xml:71
+#: doc/classes/Timer.xml:72
msgid "Update the timer during the idle time at each frame."
msgstr ""
@@ -51261,60 +51996,66 @@ msgstr ""
#: doc/classes/Transform.xml:7
msgid ""
-"Represents one or many transformations in 3D space such as translation, "
-"rotation, or scaling. It consists of a [member basis] and an [member "
-"origin]. It is similar to a 3×4 matrix."
+"3×4 matrix (3 rows, 4 columns) used for 3D linear transformations. It can "
+"represent transformations such as translation, rotation, or scaling. It "
+"consists of a [member basis] (first 3 columns) and a [Vector3] for the "
+"[member origin] (last column).\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
msgstr ""
-#: doc/classes/Transform.xml:26
+#: doc/classes/Transform.xml:28
msgid ""
-"Constructs the Transform from four [Vector3]. Each axis corresponds to local "
-"basis vectors (some of which may be scaled)."
+"Constructs a Transform from four [Vector3] values (matrix columns). Each "
+"axis corresponds to local basis vectors (some of which may be scaled)."
msgstr ""
-#: doc/classes/Transform.xml:37
-msgid "Constructs the Transform from a [Basis] and [Vector3]."
+#: doc/classes/Transform.xml:39
+msgid "Constructs a Transform from a [Basis] and [Vector3]."
msgstr ""
-#: doc/classes/Transform.xml:46
-msgid "Constructs the Transform from a [Transform2D]."
+#: doc/classes/Transform.xml:48
+msgid "Constructs a Transform from a [Transform2D]."
msgstr ""
-#: doc/classes/Transform.xml:55
+#: doc/classes/Transform.xml:57
msgid ""
-"Constructs the Transform from a [Quat]. The origin will be Vector3(0, 0, 0)."
+"Constructs a Transform from a [Quat]. The origin will be [code]Vector3(0, 0, "
+"0)[/code]."
msgstr ""
-#: doc/classes/Transform.xml:64
+#: doc/classes/Transform.xml:66
msgid ""
"Constructs the Transform from a [Basis]. The origin will be Vector3(0, 0, 0)."
msgstr ""
-#: doc/classes/Transform.xml:71
+#: doc/classes/Transform.xml:73 doc/classes/Transform2D.xml:51
msgid ""
"Returns the inverse of the transform, under the assumption that the "
"transformation is composed of rotation, scaling and translation."
msgstr ""
-#: doc/classes/Transform.xml:82
-msgid "Interpolates the transform to other Transform by weight amount (0-1)."
+#: doc/classes/Transform.xml:84
+msgid ""
+"Interpolates the transform to other Transform by weight amount (on the range "
+"of 0.0 to 1.0)."
msgstr ""
-#: doc/classes/Transform.xml:89 doc/classes/Transform2D.xml:106
+#: doc/classes/Transform.xml:91
msgid ""
"Returns the inverse of the transform, under the assumption that the "
"transformation is composed of rotation and translation (no scaling, use "
"affine_inverse for transforms with scaling)."
msgstr ""
-#: doc/classes/Transform.xml:98 doc/classes/Transform2D.xml:115
+#: doc/classes/Transform.xml:100 doc/classes/Transform2D.xml:119
msgid ""
"Returns [code]true[/code] if this transform and [code]transform[/code] are "
"approximately equal, by calling [code]is_equal_approx[/code] on each "
"component."
msgstr ""
-#: doc/classes/Transform.xml:109
+#: doc/classes/Transform.xml:111
msgid ""
"Returns a copy of the transform rotated such that its -Z axis points towards "
"the [code]target[/code] position.\n"
@@ -51324,25 +52065,25 @@ msgid ""
"Operations take place in global space."
msgstr ""
-#: doc/classes/Transform.xml:118 doc/classes/Transform2D.xml:122
+#: doc/classes/Transform.xml:120
msgid ""
"Returns the transform with the basis orthogonal (90 degrees), and normalized "
"axis vectors."
msgstr ""
-#: doc/classes/Transform.xml:129
+#: doc/classes/Transform.xml:131
msgid ""
"Rotates the transform around the given axis by the given angle (in radians), "
"using matrix multiplication. The axis must be a normalized vector."
msgstr ""
-#: doc/classes/Transform.xml:138
+#: doc/classes/Transform.xml:140
msgid ""
"Scales basis and origin of the transform by the given scale factor, using "
"matrix multiplication."
msgstr ""
-#: doc/classes/Transform.xml:147 doc/classes/Transform2D.xml:149
+#: doc/classes/Transform.xml:149 doc/classes/Transform2D.xml:153
msgid ""
"Translates the transform by the given offset, relative to the transform's "
"basis vectors.\n"
@@ -51350,152 +52091,162 @@ msgid ""
"multiplication."
msgstr ""
-#: doc/classes/Transform.xml:157
+#: doc/classes/Transform.xml:159
msgid ""
"Transforms the given [Vector3], [Plane], [AABB], or [PackedVector3Array] by "
"this transform."
msgstr ""
-#: doc/classes/Transform.xml:166
+#: doc/classes/Transform.xml:168
msgid ""
"Inverse-transforms the given [Vector3], [Plane], [AABB], or "
"[PackedVector3Array] by this transform."
msgstr ""
-#: doc/classes/Transform.xml:172
+#: doc/classes/Transform.xml:174
msgid ""
"The basis is a matrix containing 3 [Vector3] as its columns: X axis, Y axis, "
"and Z axis. These vectors can be interpreted as the basis vectors of local "
"coordinate system traveling with the object."
msgstr ""
-#: doc/classes/Transform.xml:175
-msgid "The translation offset of the transform."
+#: doc/classes/Transform.xml:177
+msgid ""
+"The translation offset of the transform (column 3, the fourth column). "
+"Equivalent to array index [code]3[/code]."
msgstr ""
-#: doc/classes/Transform.xml:180
+#: doc/classes/Transform.xml:182
msgid ""
"[Transform] with no translation, rotation or scaling applied. When applied "
"to other data structures, [constant IDENTITY] performs no transformation."
msgstr ""
-#: doc/classes/Transform.xml:183
+#: doc/classes/Transform.xml:185
msgid "[Transform] with mirroring applied perpendicular to the YZ plane."
msgstr ""
-#: doc/classes/Transform.xml:186
+#: doc/classes/Transform.xml:188
msgid "[Transform] with mirroring applied perpendicular to the XZ plane."
msgstr ""
-#: doc/classes/Transform.xml:189
+#: doc/classes/Transform.xml:191
msgid "[Transform] with mirroring applied perpendicular to the XY plane."
msgstr ""
#: doc/classes/Transform2D.xml:4
-msgid "2D transformation (3×2 matrix)."
+msgid "2D transformation (2×3 matrix)."
msgstr ""
#: doc/classes/Transform2D.xml:7
msgid ""
-"Represents one or many transformations in 2D space such as translation, "
-"rotation, or scaling. It consists of two [member x] and [member y] "
-"[Vector2]s and an [member origin]. It is similar to a 3×2 matrix."
+"2×3 matrix (2 rows, 3 columns) used for 2D linear transformations. It can "
+"represent transformations such as translation, rotation, or scaling. It "
+"consists of a three [Vector2] values: [member x], [member y], and the "
+"[member origin].\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
msgstr ""
-#: doc/classes/Transform2D.xml:18
+#: doc/classes/Transform2D.xml:20
msgid "Constructs the transform from a 3D [Transform]."
msgstr ""
-#: doc/classes/Transform2D.xml:31
+#: doc/classes/Transform2D.xml:33
msgid ""
-"Constructs the transform from 3 [Vector2]s representing x, y, and origin."
+"Constructs the transform from 3 [Vector2] values representing [member x], "
+"[member y], and the [member origin] (the three column vectors)."
msgstr ""
-#: doc/classes/Transform2D.xml:42
+#: doc/classes/Transform2D.xml:44
msgid "Constructs the transform from a given angle (in radians) and position."
msgstr ""
-#: doc/classes/Transform2D.xml:58
-msgid "Transforms the given vector by this transform's basis (no translation)."
+#: doc/classes/Transform2D.xml:60
+msgid ""
+"Returns a vector transformed (multiplied) by the basis matrix.\n"
+"This method does not account for translation (the origin vector)."
msgstr ""
-#: doc/classes/Transform2D.xml:67
+#: doc/classes/Transform2D.xml:70
msgid ""
-"Inverse-transforms the given vector by this transform's basis (no "
-"translation)."
+"Returns a vector transformed (multiplied) by the inverse basis matrix.\n"
+"This method does not account for translation (the origin vector)."
msgstr ""
-#: doc/classes/Transform2D.xml:74
+#: doc/classes/Transform2D.xml:78
msgid "Returns the transform's origin (translation)."
msgstr ""
-#: doc/classes/Transform2D.xml:81
+#: doc/classes/Transform2D.xml:85
msgid "Returns the transform's rotation (in radians)."
msgstr ""
-#: doc/classes/Transform2D.xml:88
+#: doc/classes/Transform2D.xml:92
msgid "Returns the scale."
msgstr ""
-#: doc/classes/Transform2D.xml:99
+#: doc/classes/Transform2D.xml:103
msgid ""
"Returns a transform interpolated between this transform and another by a "
-"given weight (0-1)."
+"given weight (on the range of 0.0 to 1.0)."
msgstr ""
-#: doc/classes/Transform2D.xml:131
+#: doc/classes/Transform2D.xml:110
+msgid ""
+"Returns the inverse of the transform, under the assumption that the "
+"transformation is composed of rotation and translation (no scaling, use "
+"[method affine_inverse] for transforms with scaling)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:126
+msgid ""
+"Returns the transform with the basis orthogonal (90 degrees), and normalized "
+"axis vectors (scale of 1 or -1)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:135
msgid ""
"Rotates the transform by the given angle (in radians), using matrix "
"multiplication."
msgstr ""
-#: doc/classes/Transform2D.xml:140
+#: doc/classes/Transform2D.xml:144
msgid ""
"Scales the transform by the given scale factor, using matrix multiplication."
msgstr ""
-#: doc/classes/Transform2D.xml:159
+#: doc/classes/Transform2D.xml:163
msgid ""
"Transforms the given [Vector2], [Rect2], or [PackedVector2Array] by this "
"transform."
msgstr ""
-#: doc/classes/Transform2D.xml:168
+#: doc/classes/Transform2D.xml:172
msgid ""
"Inverse-transforms the given [Vector2], [Rect2], or [PackedVector2Array] by "
"this transform."
msgstr ""
-#: doc/classes/Transform2D.xml:174
-msgid "The transform's translation offset."
-msgstr ""
-
-#: doc/classes/Transform2D.xml:177
+#: doc/classes/Transform2D.xml:178
msgid ""
-"The X axis of 2×2 basis matrix containing 2 [Vector2]s as its columns: X "
-"axis and Y axis. These vectors can be interpreted as the basis vectors of "
-"local coordinate system traveling with the object."
+"The origin vector (column 2, the third column). Equivalent to array index "
+"[code]2[/code]. The origin vector represents translation."
msgstr ""
-#: doc/classes/Transform2D.xml:180
+#: doc/classes/Transform2D.xml:189
msgid ""
-"The Y axis of 2×2 basis matrix containing 2 [Vector2]s as its columns: X "
-"axis and Y axis. These vectors can be interpreted as the basis vectors of "
-"local coordinate system traveling with the object."
-msgstr ""
-
-#: doc/classes/Transform2D.xml:185
-msgid ""
-"[Transform2D] with no translation, rotation or scaling applied. When applied "
-"to other data structures, [constant IDENTITY] performs no transformation."
+"The identity [Transform2D] with no translation, rotation or scaling applied. "
+"When applied to other data structures, [constant IDENTITY] performs no "
+"transformation."
msgstr ""
-#: doc/classes/Transform2D.xml:188
-msgid "[Transform2D] with mirroring applied parallel to the X axis."
+#: doc/classes/Transform2D.xml:192
+msgid "The [Transform2D] that will flip something along the X axis."
msgstr ""
-#: doc/classes/Transform2D.xml:191
-msgid "[Transform2D] with mirroring applied parallel to the Y axis."
+#: doc/classes/Transform2D.xml:195
+msgid "The [Transform2D] that will flip something along the Y axis."
msgstr ""
#: doc/classes/Translation.xml:4
@@ -52159,7 +52910,8 @@ msgid "Returns the column's cell mode."
msgstr ""
#: doc/classes/TreeItem.xml:121
-msgid "Returns the TreeItem's child items."
+msgid ""
+"Returns the TreeItem's first child item or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:130
@@ -52191,28 +52943,32 @@ msgid "Returns the icon [Texture2D] region as [Rect2]."
msgstr ""
#: doc/classes/TreeItem.xml:199
-msgid "Returns the next TreeItem in the tree."
+msgid ""
+"Returns the next TreeItem in the tree or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:208
msgid ""
-"Returns the next visible TreeItem in the tree.\n"
+"Returns the next visible TreeItem in the tree or a null object if there is "
+"none.\n"
"If [code]wrap[/code] is enabled, the method will wrap around to the first "
"visible element in the tree when called on the last visible element, "
"otherwise it returns [code]null[/code]."
msgstr ""
#: doc/classes/TreeItem.xml:216
-msgid "Returns the parent TreeItem."
+msgid "Returns the parent TreeItem or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:223
-msgid "Returns the previous TreeItem in the tree."
+msgid ""
+"Returns the previous TreeItem in the tree or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:232
msgid ""
-"Returns the previous visible TreeItem in the tree.\n"
+"Returns the previous visible TreeItem in the tree or a null object if there "
+"is none.\n"
"If [code]wrap[/code] is enabled, the method will wrap around to the last "
"visible element in the tree when called on the first visible element, "
"otherwise it returns [code]null[/code]."
@@ -52722,6 +53478,10 @@ msgid ""
"A simple server that opens a UDP socket and returns connected "
"[PacketPeerUDP] upon receiving new packets. See also [method PacketPeerUDP."
"connect_to_host].\n"
+"After starting the server ([method listen]), you will need to [method poll] "
+"it at regular intervals (e.g. inside [method Node._process]) for it to "
+"process new packets, delivering them to the appropriate [PacketPeerUDP], and "
+"taking new connections.\n"
"Below a small example of how it can be used:\n"
"[codeblock]\n"
"# server.gd\n"
@@ -52734,6 +53494,7 @@ msgid ""
" server.listen(4242)\n"
"\n"
"func _process(delta):\n"
+" server.poll() # Important!\n"
" if server.is_connection_available():\n"
" var peer : PacketPeerUDP = server.take_connection()\n"
" var pkt = peer.get_packet()\n"
@@ -52769,35 +53530,55 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/UDPServer.xml:60
+#: doc/classes/UDPServer.xml:62
msgid ""
-"Returns [code]true[/code] if a packet with a new address/port combination is "
-"received on the socket."
+"Returns [code]true[/code] if a packet with a new address/port combination "
+"was received on the socket."
msgstr ""
-#: doc/classes/UDPServer.xml:67
+#: doc/classes/UDPServer.xml:69
msgid ""
"Returns [code]true[/code] if the socket is open and listening on a port."
msgstr ""
-#: doc/classes/UDPServer.xml:78
+#: doc/classes/UDPServer.xml:80
msgid ""
"Starts the server by opening a UDP socket listening on the given port. You "
"can optionally specify a [code]bind_address[/code] to only listen for "
"packets sent to that address. See also [method PacketPeerUDP.listen]."
msgstr ""
-#: doc/classes/UDPServer.xml:85
+#: doc/classes/UDPServer.xml:87
+msgid ""
+"Call this method at regular intervals (e.g. inside [method Node._process]) "
+"to process new packets. And packet from known address/port pair will be "
+"delivered to the appropriate [PacketPeerUDP], any packet received from an "
+"unknown address/port pair will be added as a pending connection (see [method "
+"is_connection_available], [method take_connection]). The maximum number of "
+"pending connection is defined via [member max_pending_connections]."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:94
msgid ""
-"Stops the server, closing the UDP socket if open. Will not disconnect any "
-"connected [PacketPeerUDP]."
+"Stops the server, closing the UDP socket if open. Will close all connected "
+"[PacketPeerUDP] accepted via [method take_connection] (remote peers will not "
+"be notified)."
msgstr ""
-#: doc/classes/UDPServer.xml:92
+#: doc/classes/UDPServer.xml:101
msgid ""
-"Returns a [PacketPeerUDP] connected to the address/port combination of the "
-"first packet in queue. Will return [code]null[/code] if no packet is in "
-"queue. See also [method PacketPeerUDP.connect_to_host]."
+"Returns the first pending connection (connected to the appropriate address/"
+"port). Will return [code]null[/code] if no new connection is available. See "
+"also [method is_connection_available], [method PacketPeerUDP."
+"connect_to_host]."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:107
+msgid ""
+"Define the maximum number of pending connections, during [method poll], any "
+"new pending connection exceeding that value will be automatically dropped. "
+"Setting this value to [code]0[/code] effectively prevents any new pending "
+"connection to be accepted (e.g. when all your players have connected)."
msgstr ""
#: doc/classes/UndoRedo.xml:4
@@ -53438,24 +54219,26 @@ msgstr ""
#: doc/classes/Vector2.xml:46
msgid ""
-"Returns the vector's angle in radians with respect to the X axis, or [code]"
-"(1, 0)[/code] vector.\n"
+"Returns this vector's angle with respect to the X axis, or [code](1, 0)[/"
+"code] vector, in radians.\n"
"Equivalent to the result of [method @GDScript.atan2] when called with the "
-"vector's [member x] and [member y] as parameters: [code]atan2(x, y)[/code]."
+"vector's [member y] and [member x] as parameters: [code]atan2(y, x)[/code]."
msgstr ""
#: doc/classes/Vector2.xml:56
-msgid "Returns the angle in radians between the two vectors."
+msgid "Returns the angle to the given vector, in radians."
msgstr ""
#: doc/classes/Vector2.xml:65
msgid ""
-"Returns the angle in radians between the line connecting the two points and "
-"the X coordinate."
+"Returns the angle between the line connecting the two points and the X axis, "
+"in radians."
msgstr ""
-#: doc/classes/Vector2.xml:72 doc/classes/Vector2i.xml:46
-msgid "Returns the ratio of [member x] to [member y]."
+#: doc/classes/Vector2.xml:72
+msgid ""
+"Returns the aspect ratio of this vector, the ratio of [member x] to [member "
+"y]."
msgstr ""
#: doc/classes/Vector2.xml:81 doc/classes/Vector3.xml:59
@@ -53464,24 +54247,27 @@ msgid ""
msgstr ""
#: doc/classes/Vector2.xml:88
-msgid "Returns the vector with all components rounded up."
+msgid ""
+"Returns the vector with all components rounded up (towards positive "
+"infinity)."
msgstr ""
#: doc/classes/Vector2.xml:97
-msgid "Returns the vector with a maximum length."
+msgid ""
+"Returns the vector with a maximum length by limiting its length to "
+"[code]length[/code]."
msgstr ""
#: doc/classes/Vector2.xml:106
-msgid ""
-"Returns the 2-dimensional analog of the cross product with the given vector."
+msgid "Returns the cross product of this vector and [code]with[/code]."
msgstr ""
#: doc/classes/Vector2.xml:121
msgid ""
"Cubically interpolates between this vector and [code]b[/code] using "
"[code]pre_a[/code] and [code]post_b[/code] as handles, and returns the "
-"result at position [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation."
+"result at position [code]t[/code]. [code]t[/code] is on the range of 0.0 to "
+"1.0, representing the amount of interpolation."
msgstr ""
#: doc/classes/Vector2.xml:130 doc/classes/Vector3.xml:99
@@ -53489,182 +54275,198 @@ msgid ""
"Returns the normalized vector pointing from this vector to [code]b[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:139
+#: doc/classes/Vector2.xml:139 doc/classes/Vector3.xml:108
msgid ""
-"Returns the squared distance to vector [code]b[/code]. Prefer this function "
-"over [method distance_to] if you need to sort vectors or need the squared "
-"distance for some formula."
+"Returns the squared distance between this vector and [code]b[/code].\n"
+"This method runs faster than [method distance_to], so prefer it if you need "
+"to compare vectors or need the squared distance for some formula."
msgstr ""
-#: doc/classes/Vector2.xml:148
-msgid "Returns the distance to vector [code]b[/code]."
+#: doc/classes/Vector2.xml:149
+msgid "Returns the distance between this vector and [code]to[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:157
-msgid "Returns the dot product with vector [code]b[/code]."
+#: doc/classes/Vector2.xml:158
+msgid ""
+"Returns the dot product of this vector and [code]with[/code]. This can be "
+"used to compare the angle between two vectors. For example, this can be used "
+"to determine whether an enemy is facing the player.\n"
+"The dot product will be [code]0[/code] for a straight angle (90 degrees), "
+"greater than 0 for angles narrower than 90 degrees and lower than 0 for "
+"angles wider than 90 degrees.\n"
+"When using unit (normalized) vectors, the result will always be between "
+"[code]-1.0[/code] (180 degree angle) when the vectors are facing opposite "
+"directions, and [code]1.0[/code] (0 degree angle) when the vectors are "
+"aligned.\n"
+"[b]Note:[/b] [code]a.dot(b)[/code] is equivalent to [code]b.dot(a)[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:164
-msgid "Returns the vector with all components rounded down."
+#: doc/classes/Vector2.xml:168
+msgid ""
+"Returns the vector with all components rounded down (towards negative "
+"infinity)."
msgstr ""
-#: doc/classes/Vector2.xml:173 doc/classes/Vector3.xml:149
+#: doc/classes/Vector2.xml:177 doc/classes/Vector3.xml:153
msgid ""
"Returns [code]true[/code] if this vector and [code]v[/code] are "
"approximately equal, by running [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/Vector2.xml:180 doc/classes/Vector3.xml:156
-msgid "Returns [code]true[/code] if the vector is normalized."
+#: doc/classes/Vector2.xml:184 doc/classes/Vector3.xml:160
+msgid ""
+"Returns [code]true[/code] if the vector is normalized, and false otherwise."
msgstr ""
-#: doc/classes/Vector2.xml:187 doc/classes/Vector3.xml:163
-msgid "Returns the vector's length."
+#: doc/classes/Vector2.xml:191 doc/classes/Vector3.xml:167
+msgid "Returns the length (magnitude) of this vector."
msgstr ""
-#: doc/classes/Vector2.xml:194
+#: doc/classes/Vector2.xml:198 doc/classes/Vector3.xml:174
msgid ""
-"Returns the vector's length squared. Prefer this method over [method length] "
-"if you need to sort vectors or need the squared length for some formula."
+"Returns the squared length (squared magnitude) of this vector.\n"
+"This method runs faster than [method length], so prefer it if you need to "
+"compare vectors or need the squared distance for some formula."
msgstr ""
-#: doc/classes/Vector2.xml:205
+#: doc/classes/Vector2.xml:210 doc/classes/Vector3.xml:186
msgid ""
"Returns the result of the linear interpolation between this vector and "
-"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation."
+"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is on the range of "
+"0.0 to 1.0, representing the amount of interpolation."
msgstr ""
-#: doc/classes/Vector2.xml:216 doc/classes/Vector3.xml:206
+#: doc/classes/Vector2.xml:221
msgid ""
"Moves the vector toward [code]to[/code] by the fixed [code]delta[/code] "
"amount."
msgstr ""
-#: doc/classes/Vector2.xml:223 doc/classes/Vector3.xml:213
+#: doc/classes/Vector2.xml:228 doc/classes/Vector3.xml:218
msgid ""
"Returns the vector scaled to unit length. Equivalent to [code]v / v.length()"
"[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:232 doc/classes/Vector3.xml:231
+#: doc/classes/Vector2.xml:237 doc/classes/Vector3.xml:236
msgid ""
-"Returns a vector composed of the [code]fposmod[/code] of this vector's "
+"Returns a vector composed of the [method @GDScript.fposmod] of this vector's "
"components and [code]mod[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:241 doc/classes/Vector3.xml:240
+#: doc/classes/Vector2.xml:246 doc/classes/Vector3.xml:245
msgid ""
-"Returns a vector composed of the [code]fposmod[/code] of this vector's "
+"Returns a vector composed of the [method @GDScript.fposmod] of this vector's "
"components and [code]modv[/code]'s components."
msgstr ""
-#: doc/classes/Vector2.xml:250 doc/classes/Vector3.xml:249
+#: doc/classes/Vector2.xml:255
msgid "Returns the vector projected onto the vector [code]b[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:259 doc/classes/Vector3.xml:258
+#: doc/classes/Vector2.xml:264
msgid "Returns the vector reflected from a plane defined by the given normal."
msgstr ""
-#: doc/classes/Vector2.xml:268
+#: doc/classes/Vector2.xml:273
msgid ""
"Returns the vector rotated by [code]phi[/code] radians. See also [method "
"@GDScript.deg2rad]."
msgstr ""
-#: doc/classes/Vector2.xml:275 doc/classes/Vector3.xml:276
+#: doc/classes/Vector2.xml:280
msgid ""
"Returns the vector with all components rounded to the nearest integer, with "
"halfway cases rounded away from zero."
msgstr ""
-#: doc/classes/Vector2.xml:282 doc/classes/Vector2i.xml:53
-#: doc/classes/Vector3.xml:283 doc/classes/Vector3i.xml:55
+#: doc/classes/Vector2.xml:287
msgid ""
"Returns the vector with each component set to one or negative one, depending "
-"on the signs of the components."
+"on the signs of the components, or zero if the component is zero, by calling "
+"[method @GDScript.sign] on each component."
msgstr ""
-#: doc/classes/Vector2.xml:293 doc/classes/Vector3.xml:294
+#: doc/classes/Vector2.xml:298 doc/classes/Vector3.xml:299
msgid ""
"Returns the result of spherical linear interpolation between this vector and "
-"[code]b[/code], by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation.\n"
+"[code]b[/code], by amount [code]t[/code]. [code]t[/code] is on the range of "
+"0.0 to 1.0, representing the amount of interpolation.\n"
"[b]Note:[/b] Both vectors must be normalized."
msgstr ""
-#: doc/classes/Vector2.xml:303 doc/classes/Vector3.xml:304
-msgid ""
-"Returns the component of the vector along a plane defined by the given "
-"normal."
+#: doc/classes/Vector2.xml:308 doc/classes/Vector3.xml:309
+msgid "Returns this vector slid along a plane defined by the given normal."
msgstr ""
-#: doc/classes/Vector2.xml:312 doc/classes/Vector3.xml:313
-msgid "Returns the vector snapped to a grid with the given size."
+#: doc/classes/Vector2.xml:317 doc/classes/Vector3.xml:318
+msgid ""
+"Returns this vector with each component snapped to the nearest multiple of "
+"[code]step[/code]. This can also be used to round to an arbitrary number of "
+"decimals."
msgstr ""
-#: doc/classes/Vector2.xml:319
-msgid "Returns a perpendicular vector."
+#: doc/classes/Vector2.xml:324
+msgid ""
+"Returns a perpendicular vector rotated 90 degrees counter-clockwise compared "
+"to the original, with the same length."
msgstr ""
-#: doc/classes/Vector2.xml:325 doc/classes/Vector2i.xml:59
-#: doc/classes/Vector3.xml:326 doc/classes/Vector3i.xml:61
+#: doc/classes/Vector2.xml:330 doc/classes/Vector2i.xml:59
+#: doc/classes/Vector3.xml:332 doc/classes/Vector3i.xml:61
msgid ""
"The vector's X component. Also accessible by using the index position [code]"
"[0][/code]."
msgstr ""
-#: doc/classes/Vector2.xml:328 doc/classes/Vector2i.xml:62
-#: doc/classes/Vector3.xml:329 doc/classes/Vector3i.xml:64
+#: doc/classes/Vector2.xml:333 doc/classes/Vector2i.xml:62
+#: doc/classes/Vector3.xml:335 doc/classes/Vector3i.xml:64
msgid ""
"The vector's Y component. Also accessible by using the index position [code]"
"[1][/code]."
msgstr ""
-#: doc/classes/Vector2.xml:333 doc/classes/Vector2i.xml:67
+#: doc/classes/Vector2.xml:338 doc/classes/Vector2i.xml:67
#: doc/classes/Vector3i.xml:72
msgid "Enumerated value for the X axis."
msgstr ""
-#: doc/classes/Vector2.xml:336 doc/classes/Vector2i.xml:70
+#: doc/classes/Vector2.xml:341 doc/classes/Vector2i.xml:70
#: doc/classes/Vector3i.xml:75
msgid "Enumerated value for the Y axis."
msgstr ""
-#: doc/classes/Vector2.xml:339 doc/classes/Vector2i.xml:73
-#: doc/classes/Vector3.xml:346 doc/classes/Vector3i.xml:81
-msgid "Zero vector."
+#: doc/classes/Vector2.xml:344 doc/classes/Vector2i.xml:73
+#: doc/classes/Vector3.xml:352 doc/classes/Vector3i.xml:81
+msgid "Zero vector, a vector with all components set to [code]0[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:342 doc/classes/Vector2i.xml:76
-#: doc/classes/Vector3.xml:349 doc/classes/Vector3i.xml:84
-msgid "One vector."
+#: doc/classes/Vector2.xml:347 doc/classes/Vector2i.xml:76
+#: doc/classes/Vector3.xml:355 doc/classes/Vector3i.xml:84
+msgid "One vector, a vector with all components set to [code]1[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:345 doc/classes/Vector3.xml:352
-msgid "Infinity vector."
+#: doc/classes/Vector2.xml:350 doc/classes/Vector3.xml:358
+msgid ""
+"Infinity vector, a vector with all components set to [constant @GDScript."
+"INF]."
msgstr ""
-#: doc/classes/Vector2.xml:348 doc/classes/Vector2i.xml:79
-#: doc/classes/Vector3.xml:355 doc/classes/Vector3i.xml:87
-msgid "Left unit vector."
+#: doc/classes/Vector2.xml:353 doc/classes/Vector2i.xml:79
+msgid "Left unit vector. Represents the direction of left."
msgstr ""
-#: doc/classes/Vector2.xml:351 doc/classes/Vector2i.xml:82
-#: doc/classes/Vector3.xml:358 doc/classes/Vector3i.xml:90
-msgid "Right unit vector."
+#: doc/classes/Vector2.xml:356 doc/classes/Vector2i.xml:82
+msgid "Right unit vector. Represents the direction of right."
msgstr ""
-#: doc/classes/Vector2.xml:354 doc/classes/Vector2i.xml:85
-#: doc/classes/Vector3.xml:361 doc/classes/Vector3i.xml:93
-msgid "Up unit vector."
+#: doc/classes/Vector2.xml:359 doc/classes/Vector2i.xml:85
+msgid "Up unit vector. Y is down in 2D, so this vector points -Y."
msgstr ""
-#: doc/classes/Vector2.xml:357 doc/classes/Vector2i.xml:88
-#: doc/classes/Vector3.xml:364 doc/classes/Vector3i.xml:96
-msgid "Down unit vector."
+#: doc/classes/Vector2.xml:362 doc/classes/Vector2i.xml:88
+msgid "Down unit vector. Y is down in 2D, so this vector points +Y."
msgstr ""
#: doc/classes/Vector2i.xml:4
@@ -53693,6 +54495,16 @@ msgid ""
"will be truncated."
msgstr ""
+#: doc/classes/Vector2i.xml:46
+msgid "Returns the ratio of [member x] to [member y]."
+msgstr ""
+
+#: doc/classes/Vector2i.xml:53 doc/classes/Vector3i.xml:55
+msgid ""
+"Returns the vector with each component set to one or negative one, depending "
+"on the signs of the components."
+msgstr ""
+
#: doc/classes/Vector3.xml:4
msgid "Vector used for 3D math using floating point coordinates."
msgstr ""
@@ -53717,120 +54529,170 @@ msgid "Returns a [Vector3] with the given components."
msgstr ""
#: doc/classes/Vector3.xml:50
-msgid "Returns the minimum angle to the given vector."
+msgid "Returns the minimum angle to the given vector, in radians."
msgstr ""
#: doc/classes/Vector3.xml:66
-msgid "Returns a new vector with all components rounded up."
+msgid ""
+"Returns a new vector with all components rounded up (towards positive "
+"infinity)."
msgstr ""
#: doc/classes/Vector3.xml:75
-msgid "Returns the cross product with [code]b[/code]."
+msgid "Returns the cross product of this vector and [code]b[/code]."
msgstr ""
#: doc/classes/Vector3.xml:90
msgid ""
"Performs a cubic interpolation between vectors [code]pre_a[/code], [code]a[/"
"code], [code]b[/code], [code]post_b[/code] ([code]a[/code] is current), by "
-"the given amount [code]t[/code]. [code]t[/code] is in the range of [code]0.0 "
-"- 1.0[/code], representing the amount of interpolation."
+"the given amount [code]t[/code]. [code]t[/code] is on the range of 0.0 to "
+"1.0, representing the amount of interpolation."
msgstr ""
-#: doc/classes/Vector3.xml:108
-msgid ""
-"Returns the squared distance to [code]b[/code]. Prefer this function over "
-"[method distance_to] if you need to sort vectors or need the squared "
-"distance for some formula."
+#: doc/classes/Vector3.xml:118
+msgid "Returns the distance between this vector and [code]b[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:117
-msgid "Returns the distance to [code]b[/code]."
-msgstr ""
-
-#: doc/classes/Vector3.xml:126
-msgid "Returns the dot product with [code]b[/code]."
+#: doc/classes/Vector3.xml:127
+msgid ""
+"Returns the dot product of this vector and [code]b[/code]. This can be used "
+"to compare the angle between two vectors. For example, this can be used to "
+"determine whether an enemy is facing the player.\n"
+"The dot product will be [code]0[/code] for a straight angle (90 degrees), "
+"greater than 0 for angles narrower than 90 degrees and lower than 0 for "
+"angles wider than 90 degrees.\n"
+"When using unit (normalized) vectors, the result will always be between "
+"[code]-1.0[/code] (180 degree angle) when the vectors are facing opposite "
+"directions, and [code]1.0[/code] (0 degree angle) when the vectors are "
+"aligned.\n"
+"[b]Note:[/b] [code]a.dot(b)[/code] is equivalent to [code]b.dot(a)[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:133
-msgid "Returns a new vector with all components rounded down."
+#: doc/classes/Vector3.xml:137
+msgid ""
+"Returns a new vector with all components rounded down (towards negative "
+"infinity)."
msgstr ""
-#: doc/classes/Vector3.xml:140
+#: doc/classes/Vector3.xml:144
msgid ""
"Returns the inverse of the vector. This is the same as [code]Vector3( 1.0 / "
"v.x, 1.0 / v.y, 1.0 / v.z )[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:170
+#: doc/classes/Vector3.xml:193 doc/classes/Vector3i.xml:41
msgid ""
-"Returns the vector's length squared. Prefer this function over [method "
-"length] if you need to sort vectors or need the squared length for some "
-"formula."
+"Returns the axis of the vector's largest value. See [code]AXIS_*[/code] "
+"constants. If all components are equal, this method returns [constant "
+"AXIS_X]."
msgstr ""
-#: doc/classes/Vector3.xml:181
+#: doc/classes/Vector3.xml:200 doc/classes/Vector3i.xml:48
msgid ""
-"Returns the result of the linear interpolation between this vector and "
-"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation.."
+"Returns the axis of the vector's smallest value. See [code]AXIS_*[/code] "
+"constants. If all components are equal, this method returns [constant "
+"AXIS_Z]."
msgstr ""
-#: doc/classes/Vector3.xml:188 doc/classes/Vector3i.xml:41
+#: doc/classes/Vector3.xml:211
msgid ""
-"Returns the axis of the vector's largest value. See [code]AXIS_*[/code] "
-"constants."
+"Moves this vector toward [code]to[/code] by the fixed [code]delta[/code] "
+"amount."
msgstr ""
-#: doc/classes/Vector3.xml:195 doc/classes/Vector3i.xml:48
+#: doc/classes/Vector3.xml:227
+msgid "Returns the outer product with [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:254
+msgid "Returns this vector projected onto another vector [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:263
+msgid "Returns this vector reflected from a plane defined by the given normal."
+msgstr ""
+
+#: doc/classes/Vector3.xml:274
msgid ""
-"Returns the axis of the vector's smallest value. See [code]AXIS_*[/code] "
-"constants."
+"Rotates this vector around a given axis by [code]phi[/code] radians. The "
+"axis must be a normalized vector."
msgstr ""
-#: doc/classes/Vector3.xml:222
-msgid "Returns the outer product with [code]b[/code]."
+#: doc/classes/Vector3.xml:281
+msgid ""
+"Returns this vector with all components rounded to the nearest integer, with "
+"halfway cases rounded away from zero."
msgstr ""
-#: doc/classes/Vector3.xml:269
+#: doc/classes/Vector3.xml:288
msgid ""
-"Rotates the vector around a given axis by [code]phi[/code] radians. The axis "
-"must be a normalized vector."
+"Returns a vector with each component set to one or negative one, depending "
+"on the signs of this vector's components, or zero if the component is zero, "
+"by calling [method @GDScript.sign] on each component."
msgstr ""
-#: doc/classes/Vector3.xml:320
-msgid "Returns a diagonal matrix with the vector as main diagonal."
+#: doc/classes/Vector3.xml:325
+msgid ""
+"Returns a diagonal matrix with the vector as main diagonal.\n"
+"This is equivalent to a Basis with no rotation or shearing and this vector's "
+"components set as the scale."
msgstr ""
-#: doc/classes/Vector3.xml:332 doc/classes/Vector3i.xml:67
+#: doc/classes/Vector3.xml:338 doc/classes/Vector3i.xml:67
msgid ""
"The vector's Z component. Also accessible by using the index position [code]"
"[2][/code]."
msgstr ""
-#: doc/classes/Vector3.xml:337
+#: doc/classes/Vector3.xml:343
msgid ""
"Enumerated value for the X axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:340
+#: doc/classes/Vector3.xml:346
msgid ""
"Enumerated value for the Y axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:343
+#: doc/classes/Vector3.xml:349
msgid ""
"Enumerated value for the Z axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:367 doc/classes/Vector3i.xml:99
-msgid "Forward unit vector."
+#: doc/classes/Vector3.xml:361 doc/classes/Vector3i.xml:87
+msgid ""
+"Left unit vector. Represents the local direction of left, and the global "
+"direction of west."
msgstr ""
-#: doc/classes/Vector3.xml:370 doc/classes/Vector3i.xml:102
-msgid "Back unit vector."
+#: doc/classes/Vector3.xml:364 doc/classes/Vector3i.xml:90
+msgid ""
+"Right unit vector. Represents the local direction of right, and the global "
+"direction of east."
+msgstr ""
+
+#: doc/classes/Vector3.xml:367 doc/classes/Vector3i.xml:93
+msgid "Up unit vector."
+msgstr ""
+
+#: doc/classes/Vector3.xml:370 doc/classes/Vector3i.xml:96
+msgid "Down unit vector."
+msgstr ""
+
+#: doc/classes/Vector3.xml:373 doc/classes/Vector3i.xml:99
+msgid ""
+"Forward unit vector. Represents the local direction of forward, and the "
+"global direction of north."
+msgstr ""
+
+#: doc/classes/Vector3.xml:376 doc/classes/Vector3i.xml:102
+msgid ""
+"Back unit vector. Represents the local direction of back, and the global "
+"direction of south."
msgstr ""
#: doc/classes/Vector3i.xml:4
@@ -53879,10 +54741,14 @@ msgid ""
"directly.\n"
"[b]Note:[/b] The origin point of your VehicleBody3D will determine the "
"center of gravity of your vehicle so it is better to keep this low and move "
-"the [CollisionShape3D] and [MeshInstance3D] upwards."
+"the [CollisionShape3D] and [MeshInstance3D] upwards.\n"
+"[b]Note:[/b] This class has known issues and isn't designed to provide "
+"realistic 3D vehicle physics. If you want advanced vehicle physics, you will "
+"probably have to write your own physics integration using another "
+"[PhysicsBody3D] class."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:16
+#: doc/classes/VehicleBody3D.xml:17
msgid ""
"Slows down the vehicle by applying a braking force. The vehicle is only "
"slowed down if the wheels are in contact with a surface. The force you need "
@@ -53891,7 +54757,7 @@ msgid ""
"a value in the 25 - 30 range for hard braking."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:19
+#: doc/classes/VehicleBody3D.xml:20
msgid ""
"Accelerates the vehicle by applying an engine force. The vehicle is only "
"speed up if the wheels that have [member VehicleWheel3D.use_as_traction] set "
@@ -53904,7 +54770,7 @@ msgid ""
"A negative value will result in the vehicle reversing."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:25
+#: doc/classes/VehicleBody3D.xml:26
msgid ""
"The steering angle for the vehicle. Setting this to a non-zero value will "
"result in the vehicle turning when it's moving. Wheels that have [member "
@@ -53920,25 +54786,29 @@ msgstr ""
msgid ""
"This node needs to be used as a child node of [VehicleBody3D] and simulates "
"the behavior of one of its wheels. This node also acts as a collider to "
-"detect if the wheel is touching a surface."
+"detect if the wheel is touching a surface.\n"
+"[b]Note:[/b] This class has known issues and isn't designed to provide "
+"realistic 3D vehicle physics. If you want advanced vehicle physics, you will "
+"probably have to write your own physics integration using another "
+"[PhysicsBody3D] class."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:16
+#: doc/classes/VehicleWheel3D.xml:17
msgid "Returns the rotational speed of the wheel in revolutions per minute."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:23
+#: doc/classes/VehicleWheel3D.xml:24
msgid ""
"Returns a value between 0.0 and 1.0 that indicates whether this wheel is "
"skidding. 0.0 is skidding (the wheel has lost grip, e.g. icy terrain), 1.0 "
"means not skidding (the wheel has full grip, e.g. dry asphalt road)."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:30
+#: doc/classes/VehicleWheel3D.xml:31
msgid "Returns [code]true[/code] if this wheel is in contact with a surface."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:36
+#: doc/classes/VehicleWheel3D.xml:37
msgid ""
"Slows down the wheel by applying a braking force. The wheel is only slowed "
"down if it is in contact with a surface. The force you need to apply to "
@@ -53947,7 +54817,7 @@ msgid ""
"- 30 range for hard braking."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:39
+#: doc/classes/VehicleWheel3D.xml:40
msgid ""
"The damping applied to the spring when the spring is being compressed. This "
"value should be between 0.0 (no damping) and 1.0. A value of 0.0 means the "
@@ -53955,7 +54825,7 @@ msgid ""
"is around 0.3 for a normal car, 0.5 for a race car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:42
+#: doc/classes/VehicleWheel3D.xml:43
msgid ""
"The damping applied to the spring when relaxing. This value should be "
"between 0.0 (no damping) and 1.0. This value should always be slightly "
@@ -53963,7 +54833,7 @@ msgid ""
"damping_compression] value of 0.3, try a relaxation value of 0.5."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:45
+#: doc/classes/VehicleWheel3D.xml:46
msgid ""
"Accelerates the wheel by applying an engine force. The wheel is only speed "
"up if it is in contact with a surface. The [member RigidBody3D.mass] of the "
@@ -53974,13 +54844,13 @@ msgid ""
"A negative value will result in the wheel reversing."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:50
+#: doc/classes/VehicleWheel3D.xml:51
msgid ""
"The steering angle for the wheel. Setting this to a non-zero value will "
"result in the vehicle turning when it's moving."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:53
+#: doc/classes/VehicleWheel3D.xml:54
msgid ""
"The maximum force the spring can resist. This value should be higher than a "
"quarter of the [member RigidBody3D.mass] of the [VehicleBody3D] or the "
@@ -53988,28 +54858,28 @@ msgid ""
"obtained by a value that is about 3× to 4× this number."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:56
+#: doc/classes/VehicleWheel3D.xml:57
msgid ""
"This value defines the stiffness of the suspension. Use a value lower than "
"50 for an off-road car, a value between 50 and 100 for a race car and try "
"something around 200 for something like a Formula 1 car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:59
+#: doc/classes/VehicleWheel3D.xml:60
msgid ""
"This is the distance the suspension can travel. As Godot units are "
"equivalent to meters, keep this setting relatively low. Try a value between "
"0.1 and 0.3 depending on the type of car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:62
+#: doc/classes/VehicleWheel3D.xml:63
msgid ""
"If [code]true[/code], this wheel will be turned when the car steers. This "
"value is used in conjunction with [member VehicleBody3D.steering] and "
"ignored if you are using the per-wheel [member steering] value instead."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:65
+#: doc/classes/VehicleWheel3D.xml:66
msgid ""
"If [code]true[/code], this wheel transfers engine force to the ground to "
"propel the vehicle forward. This value is used in conjunction with [member "
@@ -54017,7 +54887,7 @@ msgid ""
"[member engine_force] value instead."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:68
+#: doc/classes/VehicleWheel3D.xml:69
msgid ""
"This determines how much grip this wheel has. It is combined with the "
"friction setting of the surface the wheel is in contact with. 0.0 means no "
@@ -54027,11 +54897,11 @@ msgid ""
"It's best to set this to 1.0 when starting out."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:72
+#: doc/classes/VehicleWheel3D.xml:73
msgid "The radius of the wheel in meters."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:75
+#: doc/classes/VehicleWheel3D.xml:76
msgid ""
"This is the distance in meters the wheel is lowered from its origin point. "
"Don't set this to 0.0 and move the wheel into position, instead move the "
@@ -54040,7 +54910,7 @@ msgid ""
"down to the position it should be in when the car is in rest."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:78
+#: doc/classes/VehicleWheel3D.xml:79
msgid ""
"This value affects the roll of your vehicle. If set to 1.0 for all wheels, "
"your vehicle will be prone to rolling over, while a value of 0.0 will resist "
@@ -54518,7 +55388,7 @@ msgstr ""
#: doc/classes/Viewport.xml:318
msgid ""
"Use fast approximate antialiasing. FXAA is a popular screen-space "
-"antialising method, which is fast but will make the image look blurry, "
+"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."
msgstr ""
@@ -54571,24 +55441,24 @@ msgid ""
"your [WorldEnvironment]."
msgstr ""
-#: doc/classes/Viewport.xml:384
+#: doc/classes/Viewport.xml:381
msgid ""
"Colors each PSSM split for the [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, and yellow."
msgstr ""
-#: doc/classes/Viewport.xml:387
+#: doc/classes/Viewport.xml:384
msgid ""
"Draws the decal atlas used by [Decal]s and light projector textures in the "
"upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/Viewport.xml:402
+#: doc/classes/Viewport.xml:405
msgid "Max value for [enum DefaultCanvasItemTextureFilter] enum."
msgstr ""
-#: doc/classes/Viewport.xml:414
+#: doc/classes/Viewport.xml:417
msgid "Max value for [enum DefaultCanvasItemTextureRepeat] enum."
msgstr ""
@@ -54619,82 +55489,84 @@ msgid ""
"The VisibilityEnabler2D will disable [RigidBody2D], [AnimationPlayer], and "
"other nodes when they are not visible. It will only affect nodes with the "
"same root node as the VisibilityEnabler2D, and the root node itself.\n"
+"If you just want to receive notifications, use [VisibilityNotifier2D] "
+"instead.\n"
"[b]Note:[/b] For performance reasons, VisibilityEnabler2D uses an "
"approximate heuristic with precision determined by [member ProjectSettings."
-"world/2d/cell_size]. If you need exact visibility checking, use another "
+"world/2d/cell_size]. If you need precise visibility checking, use another "
"method such as adding an [Area2D] node as a child of a [Camera2D] node.\n"
"[b]Note:[/b] VisibilityEnabler2D will not affect nodes added after scene "
"initialization."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:20
-#: doc/classes/VisibilityEnabler3D.xml:20
+#: doc/classes/VisibilityEnabler2D.xml:21
+#: doc/classes/VisibilityEnabler3D.xml:21
msgid ""
"Returns whether the enabler identified by given [enum Enabler] constant is "
"active."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:31
-#: doc/classes/VisibilityEnabler3D.xml:31
+#: doc/classes/VisibilityEnabler2D.xml:32
+#: doc/classes/VisibilityEnabler3D.xml:32
msgid ""
"Sets active state of the enabler identified by given [enum Enabler] constant."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:37
+#: doc/classes/VisibilityEnabler2D.xml:38
msgid "If [code]true[/code], [RigidBody2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:40
+#: doc/classes/VisibilityEnabler2D.xml:41
msgid "If [code]true[/code], [AnimatedSprite2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:43
-#: doc/classes/VisibilityEnabler3D.xml:40
+#: doc/classes/VisibilityEnabler2D.xml:44
+#: doc/classes/VisibilityEnabler3D.xml:41
msgid "If [code]true[/code], [AnimationPlayer] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:46
+#: doc/classes/VisibilityEnabler2D.xml:47
msgid "If [code]true[/code], [GPUParticles2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:49
+#: doc/classes/VisibilityEnabler2D.xml:50
msgid ""
"If [code]true[/code], the parent's [method Node._physics_process] will be "
"stopped."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:52
+#: doc/classes/VisibilityEnabler2D.xml:53
msgid ""
"If [code]true[/code], the parent's [method Node._process] will be stopped."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:57
-#: doc/classes/VisibilityEnabler3D.xml:45
+#: doc/classes/VisibilityEnabler2D.xml:58
+#: doc/classes/VisibilityEnabler3D.xml:46
msgid "This enabler will pause [AnimationPlayer] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:60
+#: doc/classes/VisibilityEnabler2D.xml:61
msgid "This enabler will freeze [RigidBody2D] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:63
+#: doc/classes/VisibilityEnabler2D.xml:64
msgid "This enabler will stop [GPUParticles2D] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:66
+#: doc/classes/VisibilityEnabler2D.xml:67
msgid "This enabler will stop the parent's _process function."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:69
+#: doc/classes/VisibilityEnabler2D.xml:70
msgid "This enabler will stop the parent's _physics_process function."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:72
+#: doc/classes/VisibilityEnabler2D.xml:73
msgid "This enabler will stop [AnimatedSprite2D] nodes animations."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:75
-#: doc/classes/VisibilityEnabler3D.xml:51
+#: doc/classes/VisibilityEnabler2D.xml:76
+#: doc/classes/VisibilityEnabler3D.xml:52
msgid "Represents the size of the [enum Enabler] enum."
msgstr ""
@@ -54703,19 +55575,23 @@ msgid ""
"The VisibilityEnabler3D will disable [RigidBody3D] and [AnimationPlayer] "
"nodes when they are not visible. It will only affect other nodes within the "
"same scene as the VisibilityEnabler3D itself.\n"
+"If you just want to receive notifications, use [VisibilityNotifier3D] "
+"instead.\n"
"[b]Note:[/b] VisibilityEnabler3D uses an approximate heuristic for "
"performance reasons. It doesn't take walls and other occlusion into account. "
-"If you need exact visibility checking, use another method such as adding an "
-"[Area3D] node as a child of a [Camera3D] node.\n"
+"The heuristic is an implementation detail and may change in future versions. "
+"If you need precise visibility checking, use another method such as adding "
+"an [Area3D] node as a child of a [Camera3D] node and/or [method Vector3."
+"dot].\n"
"[b]Note:[/b] VisibilityEnabler3D will not affect nodes added after scene "
"initialization."
msgstr ""
-#: doc/classes/VisibilityEnabler3D.xml:37
+#: doc/classes/VisibilityEnabler3D.xml:38
msgid "If [code]true[/code], [RigidBody3D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler3D.xml:48
+#: doc/classes/VisibilityEnabler3D.xml:49
msgid "This enabler will freeze [RigidBody3D] nodes."
msgstr ""
@@ -54729,13 +55605,15 @@ msgid ""
"The VisibilityNotifier2D detects when it is visible on the screen. It also "
"notifies when its bounding rectangle enters or exits the screen or a "
"viewport.\n"
+"If you want nodes to be disabled automatically when they exit the screen, "
+"use [VisibilityEnabler2D] instead.\n"
"[b]Note:[/b] For performance reasons, VisibilityNotifier2D uses an "
"approximate heuristic with precision determined by [member ProjectSettings."
-"world/2d/cell_size]. If you need exact visibility checking, use another "
+"world/2d/cell_size]. If you need precise visibility checking, use another "
"method such as adding an [Area2D] node as a child of a [Camera2D] node."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:17
+#: doc/classes/VisibilityNotifier2D.xml:18
msgid ""
"If [code]true[/code], the bounding rectangle is on the screen.\n"
"[b]Note:[/b] It takes one frame for the node's visibility to be assessed "
@@ -54744,23 +55622,23 @@ msgid ""
"pass."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:24
+#: doc/classes/VisibilityNotifier2D.xml:25
msgid "The VisibilityNotifier2D's bounding rectangle."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:30
+#: doc/classes/VisibilityNotifier2D.xml:31
msgid "Emitted when the VisibilityNotifier2D enters the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:35
+#: doc/classes/VisibilityNotifier2D.xml:36
msgid "Emitted when the VisibilityNotifier2D exits the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:42
+#: doc/classes/VisibilityNotifier2D.xml:43
msgid "Emitted when the VisibilityNotifier2D enters a [Viewport]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:49
+#: doc/classes/VisibilityNotifier2D.xml:50
msgid "Emitted when the VisibilityNotifier2D exits a [Viewport]'s view."
msgstr ""
@@ -54769,13 +55647,16 @@ msgid ""
"The VisibilityNotifier3D detects when it is visible on the screen. It also "
"notifies when its bounding rectangle enters or exits the screen or a "
"[Camera3D]'s view.\n"
+"If you want nodes to be disabled automatically when they exit the screen, "
+"use [VisibilityEnabler3D] instead.\n"
"[b]Note:[/b] VisibilityNotifier3D uses an approximate heuristic for "
"performance reasons. It doesn't take walls and other occlusion into account. "
-"If you need exact visibility checking, use another method such as adding an "
-"[Area3D] node as a child of a [Camera3D] node."
+"The heuristic is an implementation detail and may change in future versions. "
+"If you need precise visibility checking, use another method such as adding "
+"an [Area3D] node as a child of a [Camera3D] node and/or [method Vector3.dot]."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:17
+#: doc/classes/VisibilityNotifier3D.xml:18
msgid ""
"If [code]true[/code], the bounding box is on the screen.\n"
"[b]Note:[/b] It takes one frame for the node's visibility to be assessed "
@@ -54784,23 +55665,23 @@ msgid ""
"pass."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:24
+#: doc/classes/VisibilityNotifier3D.xml:25
msgid "The VisibilityNotifier3D's bounding box."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:32
+#: doc/classes/VisibilityNotifier3D.xml:33
msgid "Emitted when the VisibilityNotifier3D enters a [Camera3D]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:39
+#: doc/classes/VisibilityNotifier3D.xml:40
msgid "Emitted when the VisibilityNotifier3D exits a [Camera3D]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:44
+#: doc/classes/VisibilityNotifier3D.xml:45
msgid "Emitted when the VisibilityNotifier3D enters the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:49
+#: doc/classes/VisibilityNotifier3D.xml:50
msgid "Emitted when the VisibilityNotifier3D exits the screen."
msgstr ""
@@ -55220,6 +56101,12 @@ msgid ""
"exist."
msgstr ""
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:90
+msgid ""
+"Easing function, based on exponent. 0 is constant, 1 is linear, 0 to 1 is "
+"ease-in, 1+ is ease out. Negative values are in-out/out in."
+msgstr ""
+
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:93
msgid ""
"Return the number of digit places after the decimal that the first non-zero "
@@ -56105,6 +56992,7 @@ msgid "A shader for light calculations."
msgstr ""
#: doc/classes/VisualShader.xml:214
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:26
msgid "Represents the size of the [enum Type] enum."
msgstr ""
@@ -56207,6 +57095,24 @@ msgstr ""
msgid "Translated to [code]uniform bool[/code] in the shader language."
msgstr ""
+#: doc/classes/VisualShaderNodeBooleanUniform.xml:15
+#: doc/classes/VisualShaderNodeColorUniform.xml:15
+#: doc/classes/VisualShaderNodeFloatUniform.xml:15
+#: doc/classes/VisualShaderNodeIntUniform.xml:15
+#: doc/classes/VisualShaderNodeTransformUniform.xml:15
+#: doc/classes/VisualShaderNodeVec3Uniform.xml:15
+msgid "A default value to be assigned within the shader."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeBooleanUniform.xml:18
+#: doc/classes/VisualShaderNodeColorUniform.xml:18
+#: doc/classes/VisualShaderNodeFloatUniform.xml:18
+#: doc/classes/VisualShaderNodeIntUniform.xml:18
+#: doc/classes/VisualShaderNodeTransformUniform.xml:18
+#: doc/classes/VisualShaderNodeVec3Uniform.xml:18
+msgid "Enables usage of the [member default_value]."
+msgstr ""
+
#: doc/classes/VisualShaderNodeColorConstant.xml:4
msgid "A [Color] constant to be used within the visual shader graph."
msgstr ""
@@ -57057,49 +57963,49 @@ msgstr ""
msgid "Translated to [code]uniform float[/code] in the shader language."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:15
-#: doc/classes/VisualShaderNodeIntUniform.xml:15
+#: doc/classes/VisualShaderNodeFloatUniform.xml:21
+#: doc/classes/VisualShaderNodeIntUniform.xml:21
msgid ""
"A hint applied to the uniform, which controls the values it can take when "
"set through the inspector."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:18
-#: doc/classes/VisualShaderNodeIntUniform.xml:18
+#: doc/classes/VisualShaderNodeFloatUniform.xml:24
+#: doc/classes/VisualShaderNodeIntUniform.xml:24
msgid ""
"Minimum value for range hints. Used if [member hint] is set to [constant "
"HINT_RANGE] or [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:21
-#: doc/classes/VisualShaderNodeIntUniform.xml:21
+#: doc/classes/VisualShaderNodeFloatUniform.xml:27
+#: doc/classes/VisualShaderNodeIntUniform.xml:27
msgid ""
"Maximum value for range hints. Used if [member hint] is set to [constant "
"HINT_RANGE] or [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:24
-#: doc/classes/VisualShaderNodeIntUniform.xml:24
+#: doc/classes/VisualShaderNodeFloatUniform.xml:30
+#: doc/classes/VisualShaderNodeIntUniform.xml:30
msgid ""
"Step (increment) value for the range hint with step. Used if [member hint] "
"is set to [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:29
-#: doc/classes/VisualShaderNodeIntUniform.xml:29
+#: doc/classes/VisualShaderNodeFloatUniform.xml:35
+#: doc/classes/VisualShaderNodeIntUniform.xml:35
msgid "No hint used."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:32
-#: doc/classes/VisualShaderNodeIntUniform.xml:32
+#: doc/classes/VisualShaderNodeFloatUniform.xml:38
+#: doc/classes/VisualShaderNodeIntUniform.xml:38
msgid ""
"A range hint for scalar value, which limits possible input values between "
"[member min] and [member max]. Translated to [code]hint_range(min, max)[/"
"code] in shader code."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:35
-#: doc/classes/VisualShaderNodeIntUniform.xml:35
+#: doc/classes/VisualShaderNodeFloatUniform.xml:41
+#: doc/classes/VisualShaderNodeIntUniform.xml:41
msgid ""
"A range hint for scalar value with step, which limits possible input values "
"between [member min] and [member max], with a step (increment) of [member "
@@ -57381,6 +58287,26 @@ msgid ""
"results, e.g. division by zero)."
msgstr ""
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:4
+msgid "Performs a fused multiply-add operation within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:7
+msgid "Uses three operands to compute [code](a * b + c)[/code] expression."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:15
+msgid "A type of operands and returned value."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:20
+msgid "A scalar type."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:23
+msgid "A vector type."
+msgstr ""
+
#: doc/classes/VisualShaderNodeOuterProduct.xml:4
msgid ""
"Calculates an outer product of two vectors within the visual shader graph."
@@ -57403,7 +58329,7 @@ msgstr ""
#: doc/classes/VisualShaderNodeOutput.xml:7
msgid ""
"This visual shader node is present in all shader graphs in form of \"Output"
-"\" block with mutliple output value ports."
+"\" block with multiple output value ports."
msgstr ""
#: doc/classes/VisualShaderNodeSample3D.xml:4
@@ -57767,6 +58693,20 @@ msgid ""
"[ShaderMaterial] properties."
msgstr ""
+#: doc/classes/VisualShaderNodeUniformRef.xml:4
+msgid "A reference to an existing [VisualShaderNodeUniform]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniformRef.xml:7
+msgid ""
+"Creating a reference to a [VisualShaderNodeUniform] allows you to reuse this "
+"uniform in different shaders or shader stages easily."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniformRef.xml:15
+msgid "The name of the uniform which this reference points to."
+msgstr ""
+
#: doc/classes/VisualShaderNodeVec3Constant.xml:4
msgid "A [Vector3] constant to be used within the visual shader graph."
msgstr ""
@@ -58097,7 +59037,7 @@ msgstr ""
msgid ""
"Translated to [code]refract(I, N, eta)[/code] in the shader language, where "
"[code]I[/code] is the incident vector, [code]N[/code] is the normal vector "
-"and [code]eta[/code] is the ratio of the indicies of the refraction."
+"and [code]eta[/code] is the ratio of the indices of the refraction."
msgstr ""
#: doc/classes/VisualShaderNodeVectorScalarMix.xml:4
diff --git a/doc/translations/pl.po b/doc/translations/pl.po
index 3249a14e9f..b3817aa5f6 100644
--- a/doc/translations/pl.po
+++ b/doc/translations/pl.po
@@ -5,12 +5,14 @@
#
# Tomek <kobewi4e@gmail.com>, 2020.
# wieslaw.mlynarski Wiesław <wieslaw.mlynarski@gmail.com>, 2020.
+# Dawid <marzecdawid@gmail.com>, 2020.
+# Filip Glura <mcmr.slendy@gmail.com>, 2020.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine class reference\n"
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
-"PO-Revision-Date: 2020-06-25 08:53+0000\n"
-"Last-Translator: Tomek <kobewi4e@gmail.com>\n"
+"PO-Revision-Date: 2020-07-22 08:42+0000\n"
+"Last-Translator: Filip Glura <mcmr.slendy@gmail.com>\n"
"Language-Team: Polish <https://hosted.weblate.org/projects/godot-engine/"
"godot-class-reference/pl/>\n"
"Language: pl\n"
@@ -116,9 +118,10 @@ msgstr ""
"Wspierane nazwy są takie same jak stałe zdefiniowane w [Color]."
#: modules/gdscript/doc_classes/@GDScript.xml:55
+#, fuzzy
msgid ""
-"Returns the absolute value of parameter [code]s[/code] (i.e. unsigned value, "
-"works for integer and float).\n"
+"Returns the absolute value of parameter [code]s[/code] (i.e. positive "
+"value).\n"
"[codeblock]\n"
"# a is 1\n"
"a = abs(-1)\n"
@@ -179,7 +182,7 @@ msgid ""
"angle from an angle's tangent in trigonometry: [code]atan(tan(angle)) == "
"angle[/code].\n"
"The method cannot know in which quadrant the angle should fall. See [method "
-"atan2] if you always want an exact angle.\n"
+"atan2] if you have both [code]y[/code] and [code]x[/code].\n"
"[codeblock]\n"
"a = atan(0.5) # a is 0.463648\n"
"[/codeblock]"
@@ -190,12 +193,13 @@ msgid ""
"Returns the arc tangent of [code]y/x[/code] in radians. Use to get the angle "
"of tangent [code]y/x[/code]. To compute the value, the method takes into "
"account the sign of both arguments in order to determine the quadrant.\n"
+"Important note: The Y coordinate comes first, by convention.\n"
"[codeblock]\n"
"a = atan2(0, -1) # a is 3.141593\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:143
+#: modules/gdscript/doc_classes/@GDScript.xml:144
msgid ""
"Decodes a byte array back to a value. When [code]allow_objects[/code] is "
"[code]true[/code] decoding objects is allowed.\n"
@@ -204,7 +208,7 @@ msgid ""
"avoid potential security threats (remote code execution)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:155
+#: modules/gdscript/doc_classes/@GDScript.xml:156
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:145
msgid ""
"Converts a 2D point expressed in the cartesian coordinate system (X and Y "
@@ -212,17 +216,17 @@ msgid ""
"angle)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:164
+#: modules/gdscript/doc_classes/@GDScript.xml:165
msgid ""
-"Rounds [code]s[/code] upward, returning the smallest integral value that is "
-"not less than [code]s[/code].\n"
+"Rounds [code]s[/code] upward (towards positive infinity), returning the "
+"smallest whole number that is not less than [code]s[/code].\n"
"[codeblock]\n"
"i = ceil(1.45) # i is 2\n"
"i = ceil(1.001) # i is 2\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:177
+#: modules/gdscript/doc_classes/@GDScript.xml:178
msgid ""
"Returns a character as a String of the given Unicode code point (which is "
"compatible with ASCII code).\n"
@@ -234,7 +238,7 @@ msgid ""
"This is the inverse of [method ord]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:196
+#: modules/gdscript/doc_classes/@GDScript.xml:197
msgid ""
"Clamps [code]value[/code] and returns a value not less than [code]min[/code] "
"and not more than [code]max[/code].\n"
@@ -249,7 +253,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:216
+#: modules/gdscript/doc_classes/@GDScript.xml:217
msgid ""
"Converts from a type to another in the best way possible. The [code]type[/"
"code] parameter uses the [enum Variant.Type] values.\n"
@@ -263,7 +267,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:233
+#: modules/gdscript/doc_classes/@GDScript.xml:234
msgid ""
"Returns the cosine of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -273,7 +277,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:247
+#: modules/gdscript/doc_classes/@GDScript.xml:248
msgid ""
"Returns the hyperbolic cosine of [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -282,11 +286,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:260
+#: modules/gdscript/doc_classes/@GDScript.xml:261
msgid "Converts from decibels to linear energy (audio)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:273
+#: modules/gdscript/doc_classes/@GDScript.xml:274
msgid ""
"Returns the result of [code]value[/code] decreased by [code]step[/code] * "
"[code]amount[/code].\n"
@@ -296,42 +300,44 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:286
+#: modules/gdscript/doc_classes/@GDScript.xml:287
msgid ""
-"Returns degrees converted to radians.\n"
+"Converts an angle expressed in degrees to radians.\n"
"[codeblock]\n"
"# r is 3.141593\n"
"r = deg2rad(180)\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:299
+#: modules/gdscript/doc_classes/@GDScript.xml:300
msgid ""
"Converts a previously converted instance to a dictionary, back into an "
"instance. Useful for deserializing."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:310
-#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:90
+#: modules/gdscript/doc_classes/@GDScript.xml:311
msgid ""
-"Easing function, based on exponent. 0 is constant, 1 is linear, 0 to 1 is "
-"ease-in, 1+ is ease out. Negative values are in-out/out in."
+"Easing function, based on exponent. The curve values are: 0 is constant, 1 "
+"is linear, 0 to 1 is ease-in, 1+ is ease out. Negative values are in-out/out "
+"in."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:319
+#: modules/gdscript/doc_classes/@GDScript.xml:320
msgid ""
"The natural exponential function. It raises the mathematical constant [b]e[/"
"b] to the power of [code]s[/code] and returns it.\n"
-"[b]e[/b] has an approximate value of 2.71828.\n"
+"[b]e[/b] has an approximate value of 2.71828, and can be obtained with "
+"[code]exp(1)[/code].\n"
"For exponents to other bases use the method [method pow].\n"
"[codeblock]\n"
"a = exp(2) # Approximately 7.39\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:333
+#: modules/gdscript/doc_classes/@GDScript.xml:334
msgid ""
-"Rounds [code]s[/code] to the closest smaller integer and returns it.\n"
+"Rounds [code]s[/code] downward (towards negative infinity), returning the "
+"largest whole number that is not more than [code]s[/code].\n"
"[codeblock]\n"
"# a is 2.0\n"
"a = floor(2.99)\n"
@@ -342,7 +348,7 @@ msgid ""
"use [code]int(s)[/code] directly."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:351
+#: modules/gdscript/doc_classes/@GDScript.xml:352
msgid ""
"Returns the floating-point remainder of [code]a/b[/code], keeping the sign "
"of [code]a[/code].\n"
@@ -353,7 +359,7 @@ msgid ""
"For the integer remainder operation, use the % operator."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:367
+#: modules/gdscript/doc_classes/@GDScript.xml:368
msgid ""
"Returns the floating-point modulus of [code]a/b[/code] that wraps equally in "
"positive and negative.\n"
@@ -379,7 +385,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:398
+#: modules/gdscript/doc_classes/@GDScript.xml:399
msgid ""
"Returns a reference to the specified function [code]funcname[/code] in the "
"[code]instance[/code] node. As functions aren't first-class objects in "
@@ -394,7 +400,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:412
+#: modules/gdscript/doc_classes/@GDScript.xml:413
msgid ""
"Returns an array of dictionaries representing the current call stack.\n"
"[codeblock]\n"
@@ -414,7 +420,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:435
+#: modules/gdscript/doc_classes/@GDScript.xml:436
msgid ""
"Returns the integer hash of the variable passed.\n"
"[codeblock]\n"
@@ -422,7 +428,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:447
+#: modules/gdscript/doc_classes/@GDScript.xml:448
msgid ""
"Returns the passed instance converted to a dictionary (useful for "
"serializing).\n"
@@ -440,7 +446,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:468
+#: modules/gdscript/doc_classes/@GDScript.xml:469
msgid ""
"Returns the Object that corresponds to [code]instance_id[/code]. All Objects "
"have a unique instance ID.\n"
@@ -453,7 +459,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:488
+#: modules/gdscript/doc_classes/@GDScript.xml:489
msgid ""
"Returns a normalized value considering the given range. This is the opposite "
"of [method lerp].\n"
@@ -467,33 +473,41 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:506
+#: modules/gdscript/doc_classes/@GDScript.xml:507
msgid ""
"Returns [code]true[/code] if [code]a[/code] and [code]b[/code] are "
-"approximately equal to each other."
+"approximately equal to each other.\n"
+"Here, approximately equal means that [code]a[/code] and [code]b[/code] are "
+"within a small internal epsilon of each other, which scales with the "
+"magnitude of the numbers.\n"
+"Infinity values of the same sign are considered equal."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:515
+#: modules/gdscript/doc_classes/@GDScript.xml:518
msgid ""
"Returns whether [code]s[/code] is an infinity value (either positive "
"infinity or negative infinity)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:524
+#: modules/gdscript/doc_classes/@GDScript.xml:527
msgid ""
"Returns whether [code]instance[/code] is a valid object (e.g. has not been "
"deleted from memory)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:533
-msgid "Returns whether [code]s[/code] is a NaN (Not-A-Number) value."
+#: modules/gdscript/doc_classes/@GDScript.xml:536
+msgid ""
+"Returns whether [code]s[/code] is a NaN (\"Not a Number\" or invalid) value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:542
-msgid "Returns [code]true[/code] if [code]s[/code] is zero or almost zero."
+#: modules/gdscript/doc_classes/@GDScript.xml:545
+msgid ""
+"Returns [code]true[/code] if [code]s[/code] is zero or almost zero.\n"
+"This method is faster than using [method is_equal_approx] with one value as "
+"zero."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:551
+#: modules/gdscript/doc_classes/@GDScript.xml:555
msgid ""
"Returns length of Variant [code]var[/code]. Length is the character count of "
"String, element count of Array, size of Dictionary, etc.\n"
@@ -504,7 +518,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:569
+#: modules/gdscript/doc_classes/@GDScript.xml:573
msgid ""
"Linearly interpolates between two values by a normalized value. This is the "
"opposite of [method inverse_lerp].\n"
@@ -519,7 +533,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:588
+#: modules/gdscript/doc_classes/@GDScript.xml:592
msgid ""
"Linearly interpolates between two angles (in radians) by a normalized "
"value.\n"
@@ -536,7 +550,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:607
+#: modules/gdscript/doc_classes/@GDScript.xml:611
msgid ""
"Converts from linear energy to decibels (audio). This can be used to "
"implement volume sliders that behave as expected (since volume isn't "
@@ -552,20 +566,28 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:622
+#: modules/gdscript/doc_classes/@GDScript.xml:626
msgid ""
-"Loads a resource from the filesystem located at [code]path[/code].\n"
+"Loads a resource from the filesystem located at [code]path[/code]. The "
+"resource is loaded on the method call (unless it's referenced already "
+"elsewhere, e.g. in another script or in the scene), which might cause slight "
+"delay, especially when loading scenes. To avoid unnecessary delays when "
+"loading something multiple times, either store the resource in a variable or "
+"use [method preload].\n"
"[b]Note:[/b] Resource paths can be obtained by right-clicking on a resource "
-"in the FileSystem dock and choosing [b]Copy Path[/b].\n"
+"in the FileSystem dock and choosing \"Copy Path\" or by dragging the file "
+"from the FileSystem dock into the script.\n"
"[codeblock]\n"
-"# Load a scene called main located in the root of the project directory.\n"
-"var main = load(\"res://main.tscn\")\n"
+"# Load a scene called main located in the root of the project directory and "
+"cache it in a variable.\n"
+"var main = load(\"res://main.tscn\") # main will contain a PackedScene "
+"resource.\n"
"[/codeblock]\n"
"[b]Important:[/b] The path must be absolute, a local path will just return "
"[code]null[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:637
+#: modules/gdscript/doc_classes/@GDScript.xml:641
msgid ""
"Natural logarithm. The amount of time needed to reach a certain level of "
"continuous growth.\n"
@@ -573,10 +595,12 @@ msgid ""
"calculators, which uses a base 10 logarithm.\n"
"[codeblock]\n"
"log(10) # Returns 2.302585\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] The logarithm of [code]0[/code] returns [code]-inf[/code], "
+"while negative values return [code]-nan[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:652
+#: modules/gdscript/doc_classes/@GDScript.xml:657
msgid ""
"Returns the maximum of two values.\n"
"[codeblock]\n"
@@ -585,7 +609,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:667
+#: modules/gdscript/doc_classes/@GDScript.xml:672
msgid ""
"Returns the minimum of two values.\n"
"[codeblock]\n"
@@ -594,27 +618,39 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:684
+#: modules/gdscript/doc_classes/@GDScript.xml:689
msgid ""
"Moves [code]from[/code] toward [code]to[/code] by the [code]delta[/code] "
"value.\n"
"Use a negative [code]delta[/code] value to move away.\n"
"[codeblock]\n"
+"move_toward(5, 10, 4) # Returns 9\n"
"move_toward(10, 5, 4) # Returns 6\n"
+"move_toward(10, 5, -1.5) # Returns 11.5\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:697
+#: modules/gdscript/doc_classes/@GDScript.xml:704
msgid ""
-"Returns the nearest larger power of 2 for integer [code]value[/code].\n"
+"Returns the nearest equal or larger power of 2 for integer [code]value[/"
+"code].\n"
+"In other words, returns the smallest value [code]a[/code] where [code]a = "
+"pow(2, n)[/code] such that [code]value <= a[/code] for some non-negative "
+"integer [code]n[/code].\n"
"[codeblock]\n"
"nearest_po2(3) # Returns 4\n"
"nearest_po2(4) # Returns 4\n"
"nearest_po2(5) # Returns 8\n"
-"[/codeblock]"
+"\n"
+"nearest_po2(0) # Returns 0 (this may not be what you expect)\n"
+"nearest_po2(-1) # Returns 0 (this may not be what you expect)\n"
+"[/codeblock]\n"
+"[b]WARNING:[/b] Due to the way it is implemented, this function returns "
+"[code]0[/code] rather than [code]1[/code] for non-positive values of "
+"[code]value[/code] (in reality, 1 is the smallest integer power of 2)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:711
+#: modules/gdscript/doc_classes/@GDScript.xml:723
msgid ""
"Returns an integer representing the Unicode code point of the given Unicode "
"character [code]char[/code].\n"
@@ -626,27 +662,28 @@ msgid ""
"This is the inverse of [method char]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:726
+#: modules/gdscript/doc_classes/@GDScript.xml:738
msgid ""
-"Parse JSON text to a Variant (use [method typeof] to check if it is what you "
-"expect).\n"
-"Be aware that the JSON specification does not define integer or float types, "
-"but only a number type. Therefore, parsing a JSON text will convert all "
-"numerical values to [float] types.\n"
-"Note that JSON objects do not preserve key order like Godot dictionaries, "
-"thus you should not rely on keys being in a certain order if a dictionary is "
-"constructed from JSON. In contrast, JSON arrays retain the order of their "
+"Parse JSON text to a Variant. (Use [method typeof] to check if the Variant's "
+"type is what you expect.)\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, parsing a JSON text will convert "
+"all numerical values to [float] types.\n"
+"[b]Note:[/b] JSON objects do not preserve key order like Godot dictionaries, "
+"thus, you should not rely on keys being in a certain order if a dictionary "
+"is constructed from JSON. In contrast, JSON arrays retain the order of their "
"elements:\n"
"[codeblock]\n"
-"p = parse_json('[\"a\", \"b\", \"c\"]')\n"
-"if typeof(p) == TYPE_ARRAY:\n"
-" print(p[0]) # Prints a\n"
+"var p = JSON.parse('[\"hello\", \"world\", \"!\"]')\n"
+"if typeof(p.result) == TYPE_ARRAY:\n"
+" print(p.result[0]) # Prints \"hello\"\n"
"else:\n"
-" print(\"unexpected results\")\n"
-"[/codeblock]"
+" push_error(\"Unexpected results.\")\n"
+"[/codeblock]\n"
+"See also [JSON] for an alternative way to parse JSON text."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:746
+#: modules/gdscript/doc_classes/@GDScript.xml:759
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:142
msgid ""
"Converts a 2D point expressed in the polar coordinate system (a distance "
@@ -654,7 +691,7 @@ msgid ""
"cartesian coordinate system (X and Y axis)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:757
+#: modules/gdscript/doc_classes/@GDScript.xml:770
msgid ""
"Returns the integer modulus of [code]a/b[/code] that wraps equally in "
"positive and negative.\n"
@@ -680,7 +717,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:788
+#: modules/gdscript/doc_classes/@GDScript.xml:801
msgid ""
"Returns the result of [code]x[/code] raised to the power of [code]y[/code].\n"
"[codeblock]\n"
@@ -688,19 +725,23 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:800
+#: modules/gdscript/doc_classes/@GDScript.xml:813
msgid ""
-"Returns a resource from the filesystem that is loaded during script "
-"parsing.\n"
+"Returns a [Resource] from the filesystem located at [code]path[/code]. The "
+"resource is loaded during script parsing, i.e. is loaded with the script and "
+"[method preload] effectively acts as a reference to that resource. Note that "
+"the method requires a constant path. If you want to load a resource from a "
+"dynamic/variable path, use [method load].\n"
"[b]Note:[/b] Resource paths can be obtained by right clicking on a resource "
-"in the Assets Panel and choosing \"Copy Path\".\n"
+"in the Assets Panel and choosing \"Copy Path\" or by dragging the file from "
+"the FileSystem dock into the script.\n"
"[codeblock]\n"
-"# Load a scene called main located in the root of the project directory.\n"
-"var main = preload(\"res://main.tscn\")\n"
+"# Instance a scene.\n"
+"var diamond = preload(\"res://diamond.tscn\").instance()\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:812
+#: modules/gdscript/doc_classes/@GDScript.xml:825
msgid ""
"Converts one or more arguments to strings in the best way possible and "
"prints them to the console.\n"
@@ -710,11 +751,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:823
+#: modules/gdscript/doc_classes/@GDScript.xml:836
msgid "Like [method print], but prints only when used in debug mode."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:830
+#: modules/gdscript/doc_classes/@GDScript.xml:843
msgid ""
"Prints a stack track at code location, only works when running with debugger "
"turned on.\n"
@@ -724,7 +765,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:841
+#: modules/gdscript/doc_classes/@GDScript.xml:854
msgid ""
"Prints one or more arguments to strings in the best way possible to standard "
"error line.\n"
@@ -733,7 +774,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:851
+#: modules/gdscript/doc_classes/@GDScript.xml:864
msgid ""
"Prints one or more arguments to strings in the best way possible to console. "
"No newline is added at the end.\n"
@@ -747,7 +788,7 @@ msgid ""
"method, such as [method print]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:864
+#: modules/gdscript/doc_classes/@GDScript.xml:877
msgid ""
"Prints one or more arguments to the console with a space between each "
"argument.\n"
@@ -756,7 +797,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:874
+#: modules/gdscript/doc_classes/@GDScript.xml:887
msgid ""
"Prints one or more arguments to the console with a tab between each "
"argument.\n"
@@ -765,7 +806,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:886
+#: modules/gdscript/doc_classes/@GDScript.xml:899
msgid ""
"Pushes an error message to Godot's built-in debugger and to the OS "
"terminal.\n"
@@ -775,7 +816,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:898
+#: modules/gdscript/doc_classes/@GDScript.xml:911
msgid ""
"Pushes a warning message to Godot's built-in debugger and to the OS "
"terminal.\n"
@@ -785,15 +826,15 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:910
+#: modules/gdscript/doc_classes/@GDScript.xml:923
msgid ""
-"Converts from radians to degrees.\n"
+"Converts an angle expressed in radians to degrees.\n"
"[codeblock]\n"
"rad2deg(0.523599) # Returns 30\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:924
+#: modules/gdscript/doc_classes/@GDScript.xml:937
msgid ""
"Random range, any floating point value between [code]from[/code] and "
"[code]to[/code].\n"
@@ -802,7 +843,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:936
+#: modules/gdscript/doc_classes/@GDScript.xml:949
msgid ""
"Random from seed: pass a [code]seed[/code], and an array with both number "
"and new seed is returned. \"Seed\" here refers to the internal state of the "
@@ -810,7 +851,7 @@ msgid ""
"implementation is 64 bits."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:943
+#: modules/gdscript/doc_classes/@GDScript.xml:956
msgid ""
"Returns a random floating point value on the interval [code][0, 1][/code].\n"
"[codeblock]\n"
@@ -818,7 +859,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:953
+#: modules/gdscript/doc_classes/@GDScript.xml:966
msgid ""
"Returns a random unsigned 32 bit integer. Use remainder to obtain a random "
"value in the interval [code][0, N - 1][/code] (where N is smaller than "
@@ -831,7 +872,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:966
+#: modules/gdscript/doc_classes/@GDScript.xml:979
msgid ""
"Randomizes the seed (or the internal state) of the random number generator. "
"Current implementation reseeds using a number based on time.\n"
@@ -841,7 +882,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:977
+#: modules/gdscript/doc_classes/@GDScript.xml:990
msgid ""
"Returns an array with the given range. Range can be 1 argument N (0 to N-1), "
"two arguments (initial, final-1) or three arguments (initial, final-1, "
@@ -871,7 +912,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1017
+#: modules/gdscript/doc_classes/@GDScript.xml:1030
msgid ""
"Maps a [code]value[/code] from range [code][istart, istop][/code] to [code]"
"[ostart, ostop][/code].\n"
@@ -880,16 +921,16 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1029
+#: modules/gdscript/doc_classes/@GDScript.xml:1042
msgid ""
-"Returns the integral value that is nearest to [code]s[/code], with halfway "
-"cases rounded away from zero.\n"
+"Rounds [code]s[/code] to the nearest whole number, with halfway cases "
+"rounded away from zero.\n"
"[codeblock]\n"
"round(2.6) # Returns 3\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1041
+#: modules/gdscript/doc_classes/@GDScript.xml:1054
msgid ""
"Sets seed for the random number generator.\n"
"[codeblock]\n"
@@ -898,7 +939,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1054
+#: modules/gdscript/doc_classes/@GDScript.xml:1067
msgid ""
"Returns the sign of [code]s[/code]: -1 or 1. Returns 0 if [code]s[/code] is "
"0.\n"
@@ -909,7 +950,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1068
+#: modules/gdscript/doc_classes/@GDScript.xml:1081
msgid ""
"Returns the sine of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -917,7 +958,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1080
+#: modules/gdscript/doc_classes/@GDScript.xml:1093
msgid ""
"Returns the hyperbolic sine of [code]s[/code].\n"
"[codeblock]\n"
@@ -926,27 +967,37 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1097
+#: modules/gdscript/doc_classes/@GDScript.xml:1110
msgid ""
-"Returns a number smoothly interpolated between the [code]from[/code] and "
-"[code]to[/code], based on the [code]weight[/code]. Similar to [method lerp], "
-"but interpolates faster at the beginning and slower at the end.\n"
+"Returns the result of smoothly interpolating the value of [code]s[/code] "
+"between [code]0[/code] and [code]1[/code], based on the where [code]s[/code] "
+"lies with respect to the edges [code]from[/code] and [code]to[/code].\n"
+"The return value is [code]0[/code] if [code]s <= from[/code], and [code]1[/"
+"code] if [code]s >= to[/code]. If [code]s[/code] lies between [code]from[/"
+"code] and [code]to[/code], the returned value follows an S-shaped curve that "
+"maps [code]s[/code] between [code]0[/code] and [code]1[/code].\n"
+"This S-shaped curve is the cubic Hermite interpolator, given by [code]f(s) = "
+"3*s^2 - 2*s^3[/code].\n"
"[codeblock]\n"
-"smoothstep(0, 2, 0.5) # Returns 0.15\n"
+"smoothstep(0, 2, -5.0) # Returns 0.0\n"
+"smoothstep(0, 2, 0.5) # Returns 0.15625\n"
"smoothstep(0, 2, 1.0) # Returns 0.5\n"
"smoothstep(0, 2, 2.0) # Returns 1.0\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1111
+#: modules/gdscript/doc_classes/@GDScript.xml:1127
msgid ""
-"Returns the square root of [code]s[/code].\n"
+"Returns the square root of [code]s[/code], where [code]s[/code] is a non-"
+"negative number.\n"
"[codeblock]\n"
"sqrt(9) # Returns 3\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b]Negative values of [code]s[/code] return NaN. If you need "
+"negative inputs, use [code]System.Numerics.Complex[/code] in C#."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1123
+#: modules/gdscript/doc_classes/@GDScript.xml:1140
msgid ""
"Returns the position of the first non-zero digit, after the decimal point. "
"Note that the maximum return value is 10, which is a design decision in the "
@@ -961,7 +1012,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1142
+#: modules/gdscript/doc_classes/@GDScript.xml:1159
msgid ""
"Snaps float value [code]s[/code] to a given [code]step[/code]. This can also "
"be used to round a floating point number to an arbitrary number of "
@@ -972,7 +1023,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1153
+#: modules/gdscript/doc_classes/@GDScript.xml:1170
msgid ""
"Converts one or more arguments to string in the best way possible.\n"
"[codeblock]\n"
@@ -983,7 +1034,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1168
+#: modules/gdscript/doc_classes/@GDScript.xml:1185
msgid ""
"Converts a formatted string that was returned by [method var2str] to the "
"original value.\n"
@@ -994,7 +1045,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1182
+#: modules/gdscript/doc_classes/@GDScript.xml:1199
msgid ""
"Returns the tangent of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -1002,7 +1053,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1194
+#: modules/gdscript/doc_classes/@GDScript.xml:1211
msgid ""
"Returns the hyperbolic tangent of [code]s[/code].\n"
"[codeblock]\n"
@@ -1011,18 +1062,25 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1207
+#: modules/gdscript/doc_classes/@GDScript.xml:1224
msgid ""
-"Converts a Variant [code]var[/code] to JSON text and return the result. "
+"Converts a [Variant] [code]var[/code] to JSON text and return the result. "
"Useful for serializing data to store or send over the network.\n"
"[codeblock]\n"
+"# Both numbers below are integers.\n"
"a = { \"a\": 1, \"b\": 2 }\n"
"b = to_json(a)\n"
"print(b) # {\"a\":1, \"b\":2}\n"
-"[/codeblock]"
+"# Both numbers above are floats, even if they display without any decimal "
+"places.\n"
+"[/codeblock]\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, converting a [Variant] to JSON "
+"text will convert all numerical values to [float] types.\n"
+"See also [JSON] for an alternative way to convert a [Variant] to JSON text."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1221
+#: modules/gdscript/doc_classes/@GDScript.xml:1242
msgid ""
"Returns whether the given class exists in [ClassDB].\n"
"[codeblock]\n"
@@ -1031,7 +1089,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1234
+#: modules/gdscript/doc_classes/@GDScript.xml:1255
msgid ""
"Returns the internal type of the given Variant object, using the [enum "
"Variant.Type] values.\n"
@@ -1044,7 +1102,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1250
+#: modules/gdscript/doc_classes/@GDScript.xml:1271
msgid ""
"Checks that [code]json[/code] is valid JSON data. Returns an empty string if "
"valid, or an error message otherwise.\n"
@@ -1052,20 +1110,20 @@ msgid ""
"j = to_json([1, 2, 3])\n"
"v = validate_json(j)\n"
"if not v:\n"
-" print(\"valid\")\n"
+" print(\"Valid JSON.\")\n"
"else:\n"
-" prints(\"invalid\", v)\n"
+" push_error(\"Invalid JSON: \" + v)\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1269
+#: modules/gdscript/doc_classes/@GDScript.xml:1290
msgid ""
"Encodes a variable value to a byte array. When [code]full_objects[/code] is "
"[code]true[/code] encoding objects is allowed (and can potentially include "
"code)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1278
+#: modules/gdscript/doc_classes/@GDScript.xml:1299
msgid ""
"Converts a Variant [code]var[/code] to a formatted string that can later be "
"parsed using [method str2var].\n"
@@ -1082,7 +1140,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1298
+#: modules/gdscript/doc_classes/@GDScript.xml:1319
msgid ""
"Returns a weak reference to an object.\n"
"A weak reference to an object is not enough to keep the object alive: when "
@@ -1092,135 +1150,68 @@ msgid ""
"reference may return the object even if there are no strong references to it."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1312
+#: modules/gdscript/doc_classes/@GDScript.xml:1333
msgid ""
"Wraps float [code]value[/code] between [code]min[/code] and [code]max[/"
"code].\n"
"Usable for creating loop-alike behavior or infinite surfaces.\n"
"[codeblock]\n"
-"# a is 0.5\n"
-"a = wrapf(10.5, 0.0, 10.0)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# a is 9.5\n"
-"a = wrapf(-0.5, 0.0, 10.0)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# Infinite loop between 0.0 and 0.99\n"
-"f = wrapf(f + 0.1, 0.0, 1.0)\n"
+"# Infinite loop between 5.0 and 9.9\n"
+"value = wrapf(value + 0.1, 5.0, 10.0)\n"
"[/codeblock]\n"
"[codeblock]\n"
"# Infinite rotation (in radians)\n"
"angle = wrapf(angle + 0.1, 0.0, TAU)\n"
"[/codeblock]\n"
-"[b]Note:[/b] If you just want to wrap between 0.0 and [code]n[/code] (where "
-"[code]n[/code] is a positive floating-point value), it is better for "
-"performance to use the [method fmod] method like [code]fmod(number, n)[/"
-"code].\n"
-"[code]wrapf[/code] is more flexible than using the [method fmod] approach by "
-"giving the user a simple control over the minimum value. It also fully "
-"supports negative numbers, e.g.\n"
"[codeblock]\n"
"# Infinite rotation (in radians)\n"
"angle = wrapf(angle + 0.1, -PI, PI)\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] If [code]min[/code] is [code]0[/code], this is equivalent to "
+"[method fposmod], so prefer using that instead.\n"
+"[code]wrapf[/code] is more flexible than using the [method fposmod] approach "
+"by giving the user control over the minimum value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1348
+#: modules/gdscript/doc_classes/@GDScript.xml:1361
msgid ""
"Wraps integer [code]value[/code] between [code]min[/code] and [code]max[/"
"code].\n"
"Usable for creating loop-alike behavior or infinite surfaces.\n"
"[codeblock]\n"
-"# a is 0\n"
-"a = wrapi(10, 0, 10)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# a is 9\n"
-"a = wrapi(-1, 0, 10)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# Infinite loop between 0 and 9\n"
-"frame = wrapi(frame + 1, 0, 10)\n"
+"# Infinite loop between 5 and 9\n"
+"frame = wrapi(frame + 1, 5, 10)\n"
"[/codeblock]\n"
-"[b]Note:[/b] If you just want to wrap between 0 and [code]n[/code] (where "
-"[code]n[/code] is a positive integer value), it is better for performance to "
-"use the modulo operator like [code]number % n[/code].\n"
-"[code]wrapi[/code] is more flexible than using the modulo approach by giving "
-"the user a simple control over the minimum value. It also fully supports "
-"negative numbers, e.g.\n"
"[codeblock]\n"
"# result is -2\n"
"var result = wrapi(-6, -5, -1)\n"
-"[/codeblock]"
-msgstr ""
-
-#: modules/gdscript/doc_classes/@GDScript.xml:1378
-msgid ""
-"Stops the function execution and returns the current suspended state to the "
-"calling function.\n"
-"From the caller, call [method GDScriptFunctionState.resume] on the state to "
-"resume execution. This invalidates the state. Within the resumed function, "
-"[code]yield()[/code] returns whatever was passed to the [code]resume()[/"
-"code] function call.\n"
-"If passed an object and a signal, the execution is resumed when the object "
-"emits the given signal. In this case, [code]yield()[/code] returns the "
-"argument passed to [code]emit_signal()[/code] if the signal takes only one "
-"argument, or an array containing all the arguments passed to "
-"[code]emit_signal()[/code] if the signal takes multiple arguments.\n"
-"You can also use [code]yield[/code] to wait for a function to finish:\n"
-"[codeblock]\n"
-"func _ready():\n"
-" yield(countdown(), \"completed\") # waiting for the countdown() function "
-"to complete\n"
-" print('Ready')\n"
-"\n"
-"func countdown():\n"
-" yield(get_tree(), \"idle_frame\") # returns a GDScriptFunctionState "
-"object to _ready()\n"
-" print(3)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-" print(2)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-" print(1)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-"\n"
-"# prints:\n"
-"# 3\n"
-"# 2\n"
-"# 1\n"
-"# Ready\n"
"[/codeblock]\n"
-"When yielding on a function, the [code]completed[/code] signal will be "
-"emitted automatically when the function returns. It can, therefore, be used "
-"as the [code]signal[/code] parameter of the [code]yield[/code] method to "
-"resume.\n"
-"In order to yield on a function, the resulting function should also return a "
-"[code]GDScriptFunctionState[/code]. Notice [code]yield(get_tree(), "
-"\"idle_frame\")[/code] from the above example."
+"[b]Note:[/b] If [code]min[/code] is [code]0[/code], this is equivalent to "
+"[method posmod], so prefer using that instead.\n"
+"[code]wrapi[/code] is more flexible than using the [method posmod] approach "
+"by giving the user control over the minimum value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1409
+#: modules/gdscript/doc_classes/@GDScript.xml:1378
msgid ""
"Constant that represents how many times the diameter of a circle fits around "
-"its perimeter."
+"its perimeter. This is equivalent to [code]TAU / 2[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1412
-msgid "The circle constant, the circumference of the unit circle."
+#: modules/gdscript/doc_classes/@GDScript.xml:1381
+msgid "The circle constant, the circumference of the unit circle in radians."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1415
-msgid "A positive infinity. (For negative infinity, use -INF)."
+#: modules/gdscript/doc_classes/@GDScript.xml:1384
+#, fuzzy
+msgid "Positive infinity. For negative infinity, use -INF."
msgstr "Dodatnia nieskończoność. (Dla ujemnej nieskończoności, użyj -INF)."
-#: modules/gdscript/doc_classes/@GDScript.xml:1418
+#: modules/gdscript/doc_classes/@GDScript.xml:1387
msgid ""
-"Macro constant that expands to an expression of type float that represents a "
-"NaN.\n"
-"The NaN values are used to identify undefined or non-representable values "
-"for floating-point elements, such as the square root of negative numbers or "
-"the result of 0/0."
+"\"Not a Number\", an invalid value. [code]NaN[/code] has special properties, "
+"including that it is not equal to itself. It is output by some invalid "
+"operations, such as dividing zero by zero."
msgstr ""
#: doc/classes/@GlobalScope.xml:4
@@ -3471,130 +3462,141 @@ msgid ""
msgstr ""
#: doc/classes/AABB.xml:10 doc/classes/Plane.xml:10 doc/classes/Rect2.xml:11
-#: doc/classes/Rect2i.xml:11 doc/classes/Transform.xml:10
+#: doc/classes/Rect2i.xml:11 doc/classes/Transform.xml:11
#: doc/classes/Vector2.xml:12 doc/classes/Vector2i.xml:12
#: doc/classes/Vector3.xml:12 doc/classes/Vector3i.xml:12
msgid "https://docs.godotengine.org/en/latest/tutorials/math/index.html"
msgstr ""
#: doc/classes/AABB.xml:21
-msgid "Optional constructor, accepts position and size."
+msgid "Constructs an [AABB] from a position and size."
+msgstr ""
+
+#: doc/classes/AABB.xml:28
+msgid ""
+"Returns an AABB with equivalent position and size, modified so that the most-"
+"negative corner is the origin and the size is positive."
msgstr ""
-#: doc/classes/AABB.xml:30
+#: doc/classes/AABB.xml:37
msgid ""
"Returns [code]true[/code] if this [AABB] completely encloses another one."
msgstr ""
-#: doc/classes/AABB.xml:39
+#: doc/classes/AABB.xml:46
msgid "Returns this [AABB] expanded to include a given point."
msgstr ""
-#: doc/classes/AABB.xml:46
+#: doc/classes/AABB.xml:53
msgid "Returns the volume of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:55
+#: doc/classes/AABB.xml:62
msgid "Gets the position of the 8 endpoints of the [AABB] in space."
msgstr ""
-#: doc/classes/AABB.xml:62
+#: doc/classes/AABB.xml:69
msgid "Returns the normalized longest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:69
+#: doc/classes/AABB.xml:76
msgid ""
"Returns the index of the longest axis of the [AABB] (according to "
"[Vector3]'s [code]AXIS_*[/code] constants)."
msgstr ""
-#: doc/classes/AABB.xml:76
+#: doc/classes/AABB.xml:83
msgid "Returns the scalar length of the longest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:83
+#: doc/classes/AABB.xml:90
msgid "Returns the normalized shortest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:90
+#: doc/classes/AABB.xml:97
msgid ""
"Returns the index of the shortest axis of the [AABB] (according to "
"[Vector3]::AXIS* enum)."
msgstr ""
-#: doc/classes/AABB.xml:97
+#: doc/classes/AABB.xml:104
msgid "Returns the scalar length of the shortest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:106
+#: doc/classes/AABB.xml:113
msgid ""
"Returns the support point in a given direction. This is useful for collision "
"detection algorithms."
msgstr ""
-#: doc/classes/AABB.xml:115
+#: doc/classes/AABB.xml:122
msgid ""
"Returns a copy of the [AABB] grown a given amount of units towards all the "
"sides."
msgstr ""
-#: doc/classes/AABB.xml:122
+#: doc/classes/AABB.xml:129
msgid "Returns [code]true[/code] if the [AABB] is flat or empty."
msgstr ""
-#: doc/classes/AABB.xml:129
+#: doc/classes/AABB.xml:136
msgid "Returns [code]true[/code] if the [AABB] is empty."
msgstr ""
-#: doc/classes/AABB.xml:138
+#: doc/classes/AABB.xml:145
msgid "Returns [code]true[/code] if the [AABB] contains a point."
msgstr ""
-#: doc/classes/AABB.xml:147
+#: doc/classes/AABB.xml:154
msgid ""
"Returns the intersection between two [AABB]. An empty AABB (size 0,0,0) is "
"returned on failure."
msgstr ""
-#: doc/classes/AABB.xml:156
+#: doc/classes/AABB.xml:163
msgid "Returns [code]true[/code] if the [AABB] overlaps with another."
msgstr ""
-#: doc/classes/AABB.xml:165
+#: doc/classes/AABB.xml:172
msgid "Returns [code]true[/code] if the [AABB] is on both sides of a plane."
msgstr ""
-#: doc/classes/AABB.xml:176
+#: doc/classes/AABB.xml:183
msgid ""
"Returns [code]true[/code] if the [AABB] intersects the line segment between "
"[code]from[/code] and [code]to[/code]."
msgstr ""
-#: doc/classes/AABB.xml:185
+#: doc/classes/AABB.xml:192
msgid ""
"Returns [code]true[/code] if this [AABB] and [code]aabb[/code] are "
"approximately equal, by calling [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/AABB.xml:194
+#: doc/classes/AABB.xml:201
msgid ""
"Returns a larger [AABB] that contains both this [AABB] and [code]with[/code]."
msgstr ""
-#: doc/classes/AABB.xml:200
+#: doc/classes/AABB.xml:207 doc/classes/Rect2.xml:174
+#: doc/classes/Rect2i.xml:163
msgid ""
-"Ending corner. This is calculated as [code]position + size[/code]. Changing "
-"this property changes [member size] accordingly."
+"Ending corner. This is calculated as [code]position + size[/code]. Setting "
+"this value will change the size."
msgstr ""
-#: doc/classes/AABB.xml:203
-msgid "Beginning corner."
+#: doc/classes/AABB.xml:210 doc/classes/Rect2.xml:177
+#: doc/classes/Rect2i.xml:166
+msgid "Beginning corner. Typically has values lower than [member end]."
msgstr ""
-#: doc/classes/AABB.xml:206 doc/classes/Rect2.xml:180
+#: doc/classes/AABB.xml:213 doc/classes/Rect2.xml:180
#: doc/classes/Rect2i.xml:169
-msgid "Size from position to end."
+msgid ""
+"Size from [member position] to [member end]. Typically all components are "
+"positive.\n"
+"If the size is negative, you can use [method abs] to fix it."
msgstr ""
#: doc/classes/AcceptDialog.xml:4
@@ -3658,11 +3660,11 @@ msgstr ""
msgid "The text displayed by the dialog."
msgstr ""
-#: doc/classes/AcceptDialog.xml:82
+#: doc/classes/AcceptDialog.xml:83
msgid "Emitted when the dialog is accepted, i.e. the OK button is pressed."
msgstr ""
-#: doc/classes/AcceptDialog.xml:89
+#: doc/classes/AcceptDialog.xml:90
msgid "Emitted when a custom button is pressed. See [method add_button]."
msgstr ""
@@ -3715,7 +3717,7 @@ msgstr ""
#: doc/classes/AESContext.xml:54
msgid ""
"Get the current IV state for this context (IV gets updated when calling "
-"[method update]). You normally don't need this funciton.\n"
+"[method update]). You normally don't need this function.\n"
"Note: This function only makes sense when the context is started with "
"[constant MODE_CBC_ENCRYPT] or [constant MODE_CBC_DECRYPT]."
msgstr ""
@@ -3793,12 +3795,14 @@ msgid "If [code]true[/code], texture will be centered."
msgstr ""
#: doc/classes/AnimatedSprite2D.xml:46 doc/classes/Sprite2D.xml:41
-#: doc/classes/SpriteBase3D.xml:61 doc/classes/TextureRect.xml:18
+#: doc/classes/SpriteBase3D.xml:61 doc/classes/TextureButton.xml:19
+#: doc/classes/TextureRect.xml:18
msgid "If [code]true[/code], texture is flipped horizontally."
msgstr ""
#: doc/classes/AnimatedSprite2D.xml:49 doc/classes/Sprite2D.xml:44
-#: doc/classes/SpriteBase3D.xml:64 doc/classes/TextureRect.xml:21
+#: doc/classes/SpriteBase3D.xml:64 doc/classes/TextureButton.xml:22
+#: doc/classes/TextureRect.xml:21
msgid "If [code]true[/code], texture is flipped vertically."
msgstr ""
@@ -3965,10 +3969,10 @@ msgid ""
"[codeblock]\n"
"# This creates an animation that makes the node \"Enemy\" move to the right "
"by\n"
-"# 100 pixels in 1 second.\n"
+"# 100 pixels in 0.5 seconds.\n"
"var animation = Animation.new()\n"
"var track_index = animation.add_track(Animation.TYPE_VALUE)\n"
-"animation.track_set_path(track_index, \"Enemy:position.x\")\n"
+"animation.track_set_path(track_index, \"Enemy:position:x\")\n"
"animation.track_insert_key(track_index, 0.0, 0)\n"
"animation.track_insert_key(track_index, 0.5, 100)\n"
"[/codeblock]\n"
@@ -6096,10 +6100,10 @@ msgstr ""
msgid ""
"Returns [code]true[/code] if the array contains the given value.\n"
"[codeblock]\n"
-"[\"inside\", 7].has(\"inside\") == true\n"
-"[\"inside\", 7].has(\"outside\") == false\n"
-"[\"inside\", 7].has(7) == true\n"
-"[\"inside\", 7].has(\"7\") == false\n"
+"print([\"inside\", 7].has(\"inside\")) # True\n"
+"print([\"inside\", 7].has(\"outside\")) # False\n"
+"print([\"inside\", 7].has(7)) # True\n"
+"print([\"inside\", 7].has(\"7\")) # False\n"
"[/codeblock]\n"
"[b]Note:[/b] This is equivalent to using the [code]in[/code] operator as "
"follows:\n"
@@ -6120,11 +6124,11 @@ msgid ""
"valid, or at the end of the array ([code]pos == size()[/code])."
msgstr ""
-#: doc/classes/Array.xml:265 doc/classes/PackedByteArray.xml:107
-#: doc/classes/PackedColorArray.xml:62 doc/classes/PackedFloat32Array.xml:63
-#: doc/classes/PackedFloat64Array.xml:63 doc/classes/PackedInt32Array.xml:63
-#: doc/classes/PackedInt64Array.xml:63 doc/classes/PackedStringArray.xml:62
-#: doc/classes/PackedVector2Array.xml:62 doc/classes/PackedVector3Array.xml:62
+#: doc/classes/Array.xml:265 doc/classes/PackedByteArray.xml:116
+#: doc/classes/PackedColorArray.xml:71 doc/classes/PackedFloat32Array.xml:72
+#: doc/classes/PackedFloat64Array.xml:72 doc/classes/PackedInt32Array.xml:72
+#: doc/classes/PackedInt64Array.xml:72 doc/classes/PackedStringArray.xml:71
+#: doc/classes/PackedVector2Array.xml:71 doc/classes/PackedVector3Array.xml:71
msgid "Reverses the order of the elements in the array."
msgstr ""
@@ -6154,8 +6158,8 @@ msgid ""
"code] if the array is empty."
msgstr ""
-#: doc/classes/Array.xml:302 doc/classes/PackedByteArray.xml:116
-#: doc/classes/PackedFloat32Array.xml:72 doc/classes/PackedFloat64Array.xml:72
+#: doc/classes/Array.xml:302 doc/classes/PackedByteArray.xml:125
+#: doc/classes/PackedFloat32Array.xml:81 doc/classes/PackedFloat64Array.xml:81
msgid "Appends an element at the end of the array."
msgstr ""
@@ -6163,11 +6167,11 @@ msgstr ""
msgid "Adds an element at the beginning of the array."
msgstr ""
-#: doc/classes/Array.xml:320 doc/classes/PackedByteArray.xml:125
-#: doc/classes/PackedColorArray.xml:80 doc/classes/PackedFloat32Array.xml:81
-#: doc/classes/PackedFloat64Array.xml:81 doc/classes/PackedInt32Array.xml:81
-#: doc/classes/PackedInt64Array.xml:81 doc/classes/PackedStringArray.xml:80
-#: doc/classes/PackedVector2Array.xml:80 doc/classes/PackedVector3Array.xml:80
+#: doc/classes/Array.xml:320 doc/classes/PackedByteArray.xml:134
+#: doc/classes/PackedColorArray.xml:89 doc/classes/PackedFloat32Array.xml:90
+#: doc/classes/PackedFloat64Array.xml:90 doc/classes/PackedInt32Array.xml:90
+#: doc/classes/PackedInt64Array.xml:90 doc/classes/PackedStringArray.xml:89
+#: doc/classes/PackedVector2Array.xml:89 doc/classes/PackedVector3Array.xml:89
msgid "Removes an element from the array by index."
msgstr ""
@@ -6450,7 +6454,7 @@ msgid ""
msgstr ""
#: doc/classes/ArrayMesh.xml:235 doc/classes/Mesh.xml:210
-#: doc/classes/RenderingServer.xml:3115
+#: doc/classes/RenderingServer.xml:3111
msgid "Represents the size of the [enum ArrayType] enum."
msgstr ""
@@ -8267,7 +8271,9 @@ msgid ""
msgstr ""
#: doc/classes/BaseButton.xml:16
-msgid "Called when the button is pressed."
+msgid ""
+"Called when the button is pressed. If you need to know the button's pressed "
+"state (and [member toggle_mode] is active), use [method _toggled] instead."
msgstr ""
#: doc/classes/BaseButton.xml:25
@@ -8361,43 +8367,45 @@ msgstr ""
msgid ""
"Emitted when the button is toggled or pressed. This is on [signal "
"button_down] if [member action_mode] is [constant ACTION_MODE_BUTTON_PRESS] "
-"and on [signal button_up] otherwise."
+"and on [signal button_up] otherwise.\n"
+"If you need to know the button's pressed state (and [member toggle_mode] is "
+"active), use [signal toggled] instead."
msgstr ""
-#: doc/classes/BaseButton.xml:98
+#: doc/classes/BaseButton.xml:99
msgid ""
"Emitted when the button was just toggled between pressed and normal states "
"(only if [member toggle_mode] is active). The new state is contained in the "
"[code]button_pressed[/code] argument."
msgstr ""
-#: doc/classes/BaseButton.xml:104
+#: doc/classes/BaseButton.xml:105
msgid ""
"The normal state (i.e. not pressed, not hovered, not toggled and enabled) of "
"buttons."
msgstr ""
-#: doc/classes/BaseButton.xml:107
+#: doc/classes/BaseButton.xml:108
msgid "The state of buttons are pressed."
msgstr ""
-#: doc/classes/BaseButton.xml:110
+#: doc/classes/BaseButton.xml:111
msgid "The state of buttons are hovered."
msgstr ""
-#: doc/classes/BaseButton.xml:113
+#: doc/classes/BaseButton.xml:114
msgid "The state of buttons are disabled."
msgstr ""
-#: doc/classes/BaseButton.xml:116
+#: doc/classes/BaseButton.xml:117
msgid "The state of buttons are both hovered and pressed."
msgstr ""
-#: doc/classes/BaseButton.xml:119
+#: doc/classes/BaseButton.xml:120
msgid "Require just a press to consider the button clicked."
msgstr ""
-#: doc/classes/BaseButton.xml:122
+#: doc/classes/BaseButton.xml:123
msgid ""
"Require a press and a subsequent release before considering the button "
"clicked."
@@ -9090,22 +9098,22 @@ msgstr ""
msgid "Represents the size of the [enum TextureParam] enum."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:451 doc/classes/RenderingServer.xml:3657
-#: doc/classes/Viewport.xml:390
+#: doc/classes/BaseMaterial3D.xml:451 doc/classes/RenderingServer.xml:3668
+#: doc/classes/Viewport.xml:393
msgid ""
"The texture filter reads from the nearest pixel only. The simplest and "
"fastest method of filtering, but the texture will look pixelized."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:454 doc/classes/RenderingServer.xml:3660
-#: doc/classes/Viewport.xml:393
+#: doc/classes/BaseMaterial3D.xml:454 doc/classes/RenderingServer.xml:3671
+#: doc/classes/Viewport.xml:396
msgid ""
"The texture filter blends between the nearest 4 pixels. Use this when you "
"want to avoid a pixelated style, but do not want mipmaps."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:457 doc/classes/RenderingServer.xml:3663
-#: doc/classes/Viewport.xml:396
+#: doc/classes/BaseMaterial3D.xml:457 doc/classes/RenderingServer.xml:3674
+#: doc/classes/Viewport.xml:399
msgid ""
"The texture filter reads from the nearest pixel in the nearest mipmap. The "
"fastest way to read from textures with mipmaps."
@@ -9118,14 +9126,14 @@ msgid ""
"smooth out pixels that are far from the camera."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:463 doc/classes/RenderingServer.xml:3669
+#: doc/classes/BaseMaterial3D.xml:463 doc/classes/RenderingServer.xml:3680
msgid ""
"The texture filter reads from the nearest pixel, but selects a mipmap based "
"on the angle between the surface and the camera view. This reduces artifacts "
"on surfaces that are almost in line with the camera."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:466 doc/classes/RenderingServer.xml:3672
+#: doc/classes/BaseMaterial3D.xml:466 doc/classes/RenderingServer.xml:3683
msgid ""
"The texture filter blends between the nearest 4 pixels and selects a mipmap "
"based on the angle between the surface and the camera view. This reduces "
@@ -9134,7 +9142,7 @@ msgid ""
"texturing."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:469 doc/classes/CanvasItem.xml:685
+#: doc/classes/BaseMaterial3D.xml:469 doc/classes/CanvasItem.xml:695
msgid "Represents the size of the [enum TextureFilter] enum."
msgstr ""
@@ -9357,8 +9365,8 @@ msgstr ""
msgid "Enables the shadow to opacity feature."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:622 doc/classes/RenderingServer.xml:3684
-#: doc/classes/Viewport.xml:408
+#: doc/classes/BaseMaterial3D.xml:622 doc/classes/RenderingServer.xml:3695
+#: doc/classes/Viewport.xml:411
msgid ""
"Enables the texture to repeat when UV coordinates are outside the 0-1 range. "
"If using one of the linear filtering modes, this can result in artifacts at "
@@ -9499,167 +9507,195 @@ msgstr ""
#: doc/classes/Basis.xml:7
msgid ""
-"3×3 matrix used for 3D rotation and scale. Contains 3 vector fields X, Y and "
-"Z as its columns, which can be interpreted as the local basis vectors of a "
-"transformation. Can also be accessed as array of 3D vectors. These vectors "
-"are orthogonal to each other, but are not necessarily normalized (due to "
-"scaling). Almost always used as an orthogonal basis for a [Transform].\n"
-"For such use, it is composed of a scaling and a rotation matrix, in that "
-"order (M = R.S)."
+"3×3 matrix used for 3D rotation and scale. Almost always used as an "
+"orthogonal basis for a Transform.\n"
+"Contains 3 vector fields X, Y and Z as its columns, which are typically "
+"interpreted as the local basis vectors of a transformation. For such use, it "
+"is composed of a scaling and a rotation matrix, in that order (M = R.S).\n"
+"Can also be accessed as array of 3D vectors. These vectors are normally "
+"orthogonal to each other, but are not necessarily normalized (due to "
+"scaling).\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
msgstr ""
-#: doc/classes/Basis.xml:11 doc/classes/Transform.xml:11
+#: doc/classes/Basis.xml:13 doc/classes/Transform.xml:12
+#: doc/classes/Transform2D.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/math/"
+"matrices_and_transforms.html"
+msgstr ""
+
+#: doc/classes/Basis.xml:14 doc/classes/Transform.xml:13
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/using_transforms.html"
msgstr ""
-#: doc/classes/Basis.xml:20
-msgid "Create a rotation matrix from the given quaternion."
+#: doc/classes/Basis.xml:23
+msgid "Constructs a pure rotation basis matrix from the given quaternion."
msgstr ""
-#: doc/classes/Basis.xml:29
+#: doc/classes/Basis.xml:32
msgid ""
-"Create a rotation matrix (in the YXZ convention: first Z, then X, and Y "
-"last) from the specified Euler angles, given in the vector format as (X "
-"angle, Y angle, Z angle)."
+"Constructs a pure rotation basis matrix from the given Euler angles (in the "
+"YXZ convention: when *composing*, first Y, then X, and Z last), given in the "
+"vector format as (X angle, Y angle, Z angle).\n"
+"Consider using the [Quat] constructor instead, which uses a quaternion "
+"instead of Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:40
+#: doc/classes/Basis.xml:44
msgid ""
-"Create a rotation matrix which rotates around the given axis by the "
-"specified angle, in radians. The axis must be a normalized vector."
+"Constructs a pure rotation basis matrix, rotated around the given "
+"[code]axis[/code] by [code]phi[/code], in radians. The axis must be a "
+"normalized vector."
msgstr ""
-#: doc/classes/Basis.xml:53
-msgid "Create a matrix from 3 axis vectors."
+#: doc/classes/Basis.xml:57
+msgid "Constructs a basis matrix from 3 axis vectors (matrix columns)."
msgstr ""
-#: doc/classes/Basis.xml:60
-msgid "Returns the determinant of the matrix."
+#: doc/classes/Basis.xml:64
+msgid ""
+"Returns the determinant of the basis matrix. If the basis is uniformly "
+"scaled, its determinant is the square of the scale.\n"
+"A negative determinant means the basis has a negative scale. A zero "
+"determinant means the basis isn't invertible, and is usually considered "
+"invalid."
msgstr ""
-#: doc/classes/Basis.xml:67
+#: doc/classes/Basis.xml:72
msgid ""
"Returns the basis's rotation in the form of Euler angles (in the YXZ "
-"convention: first Z, then X, and Y last). The returned vector contains the "
-"rotation angles in the format (X angle, Y angle, Z angle). See [method "
-"get_rotation_quat] if you need a quaternion instead."
+"convention: when decomposing, first Z, then X, and Y last). The returned "
+"vector contains the rotation angles in the format (X angle, Y angle, Z "
+"angle).\n"
+"Consider using the [method get_rotation_quat] method instead, which returns "
+"a [Quat] quaternion instead of Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:74
+#: doc/classes/Basis.xml:80
msgid ""
"This function considers a discretization of rotations into 24 points on unit "
"sphere, lying along the vectors (x,y,z) with each component being either -1, "
"0, or 1, and returns the index of the point best representing the "
-"orientation of the object. It is mainly used by the grid map editor. For "
+"orientation of the object. It is mainly used by the [GridMap] editor. For "
"further details, refer to the Godot source code."
msgstr ""
-#: doc/classes/Basis.xml:81
+#: doc/classes/Basis.xml:87
msgid ""
"Returns the basis's rotation in the form of a quaternion. See [method "
"get_euler] if you need Euler angles, but keep in mind quaternions should "
"generally be preferred to Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:88
+#: doc/classes/Basis.xml:94
msgid ""
"Assuming that the matrix is the combination of a rotation and scaling, "
"return the absolute value of scaling factors along each axis."
msgstr ""
-#: doc/classes/Basis.xml:95 doc/classes/Transform2D.xml:49
+#: doc/classes/Basis.xml:101
msgid "Returns the inverse of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:106
+#: doc/classes/Basis.xml:112
msgid ""
"Returns [code]true[/code] if this basis and [code]b[/code] are approximately "
"equal, by calling [code]is_equal_approx[/code] on each component."
msgstr ""
-#: doc/classes/Basis.xml:113
+#: doc/classes/Basis.xml:119
msgid ""
"Returns the orthonormalized version of the matrix (useful to call from time "
"to time to avoid rounding error for orthogonal matrices). This performs a "
"Gram-Schmidt orthonormalization on the basis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:124
+#: doc/classes/Basis.xml:130
msgid ""
"Introduce an additional rotation around the given axis by phi (radians). The "
"axis must be a normalized vector."
msgstr ""
-#: doc/classes/Basis.xml:133
+#: doc/classes/Basis.xml:139
msgid ""
"Introduce an additional scaling specified by the given 3D scaling factor."
msgstr ""
-#: doc/classes/Basis.xml:144
+#: doc/classes/Basis.xml:150
msgid ""
"Assuming that the matrix is a proper rotation matrix, slerp performs a "
"spherical-linear interpolation with another rotation matrix."
msgstr ""
-#: doc/classes/Basis.xml:153
+#: doc/classes/Basis.xml:159
msgid "Transposed dot product with the X axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:162
+#: doc/classes/Basis.xml:168
msgid "Transposed dot product with the Y axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:171
+#: doc/classes/Basis.xml:177
msgid "Transposed dot product with the Z axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:178
+#: doc/classes/Basis.xml:184
msgid "Returns the transposed version of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:187
+#: doc/classes/Basis.xml:193
msgid "Returns a vector transformed (multiplied) by the matrix."
msgstr ""
-#: doc/classes/Basis.xml:196
+#: doc/classes/Basis.xml:202
msgid ""
-"Returns a vector transformed (multiplied) by the transposed matrix.\n"
+"Returns a vector transformed (multiplied) by the transposed basis matrix.\n"
"[b]Note:[/b] This results in a multiplication by the inverse of the matrix "
"only if it represents a rotation-reflection."
msgstr ""
-#: doc/classes/Basis.xml:203
-msgid "The basis matrix's X vector."
+#: doc/classes/Basis.xml:209 doc/classes/Transform2D.xml:181
+msgid ""
+"The basis matrix's X vector (column 0). Equivalent to array index [code]0[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:206
-msgid "The basis matrix's Y vector."
+#: doc/classes/Basis.xml:212 doc/classes/Transform2D.xml:184
+msgid ""
+"The basis matrix's Y vector (column 1). Equivalent to array index [code]1[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:209
-msgid "The basis matrix's Z vector."
+#: doc/classes/Basis.xml:215
+msgid ""
+"The basis matrix's Z vector (column 2). Equivalent to array index [code]2[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:214
+#: doc/classes/Basis.xml:220
msgid ""
-"The identity basis. This is identical to calling [code]Basis()[/code] "
-"without any parameters. This constant can be used to make your code clearer."
+"The identity basis, with no rotation or scaling applied.\n"
+"This is identical to calling [code]Basis()[/code] without any parameters. "
+"This constant can be used to make your code clearer, and for consistency "
+"with C#."
msgstr ""
-#: doc/classes/Basis.xml:217
+#: doc/classes/Basis.xml:224
msgid ""
"The basis that will flip something along the X axis when used in a "
"transformation."
msgstr ""
-#: doc/classes/Basis.xml:220
+#: doc/classes/Basis.xml:227
msgid ""
"The basis that will flip something along the Y axis when used in a "
"transformation."
msgstr ""
-#: doc/classes/Basis.xml:223
+#: doc/classes/Basis.xml:230
msgid ""
"The basis that will flip something along the Z axis when used in a "
"transformation."
@@ -9972,97 +10008,111 @@ msgstr ""
#: doc/classes/Button.xml:7
msgid ""
"Button is the standard themed button. It can contain text and an icon, and "
-"will display them according to the current [Theme]."
+"will display them according to the current [Theme].\n"
+"[b]Example of creating a button and assigning an action when pressed by code:"
+"[/b]\n"
+"[codeblock]\n"
+"func _ready():\n"
+" var button = Button.new()\n"
+" button.text = \"Click me\"\n"
+" button.connect(\"pressed\", self, \"_button_pressed\")\n"
+" add_child(button)\n"
+"\n"
+"func _button_pressed():\n"
+" print(\"Hello world!\")\n"
+"[/codeblock]\n"
+"Buttons (like all Control nodes) can also be created in the editor, but some "
+"situations may require creating them from code."
msgstr ""
-#: doc/classes/Button.xml:15
+#: doc/classes/Button.xml:27
msgid ""
"Text alignment policy for the button's text, use one of the [enum TextAlign] "
"constants."
msgstr ""
-#: doc/classes/Button.xml:18
+#: doc/classes/Button.xml:30
msgid ""
"When this property is enabled, text that is too large to fit the button is "
"clipped, when disabled the Button will always be wide enough to hold the "
"text."
msgstr ""
-#: doc/classes/Button.xml:21
+#: doc/classes/Button.xml:33
msgid ""
"When enabled, the button's icon will expand/shrink to fit the button's size "
"while keeping its aspect."
msgstr ""
-#: doc/classes/Button.xml:24
+#: doc/classes/Button.xml:36
msgid "Flat buttons don't display decoration."
msgstr ""
-#: doc/classes/Button.xml:27
+#: doc/classes/Button.xml:39
msgid ""
"Button's icon, if text is present the icon will be placed before the text."
msgstr ""
-#: doc/classes/Button.xml:30 doc/classes/LinkButton.xml:18
+#: doc/classes/Button.xml:42 doc/classes/LinkButton.xml:18
msgid "The button's text that will be displayed inside the button's area."
msgstr ""
-#: doc/classes/Button.xml:35
+#: doc/classes/Button.xml:47
msgid "Align the text to the left."
msgstr ""
-#: doc/classes/Button.xml:38
+#: doc/classes/Button.xml:50
msgid "Align the text to the center."
msgstr ""
-#: doc/classes/Button.xml:41
+#: doc/classes/Button.xml:53
msgid "Align the text to the right."
msgstr ""
-#: doc/classes/Button.xml:46
+#: doc/classes/Button.xml:58
msgid "[StyleBox] used when the [Button] is disabled."
msgstr ""
-#: doc/classes/Button.xml:49
+#: doc/classes/Button.xml:61
msgid ""
"[StyleBox] used when the [Button] is focused. It is displayed over the "
"current [StyleBox], so using [StyleBoxEmpty] will just disable the focus "
"visual effect."
msgstr ""
-#: doc/classes/Button.xml:52
+#: doc/classes/Button.xml:64
msgid "[Font] of the [Button]'s text."
msgstr ""
-#: doc/classes/Button.xml:55
+#: doc/classes/Button.xml:67
msgid "Default text [Color] of the [Button]."
msgstr ""
-#: doc/classes/Button.xml:58
+#: doc/classes/Button.xml:70
msgid "Text [Color] used when the [Button] is disabled."
msgstr ""
-#: doc/classes/Button.xml:61
+#: doc/classes/Button.xml:73
msgid "Text [Color] used when the [Button] is being hovered."
msgstr ""
-#: doc/classes/Button.xml:64
+#: doc/classes/Button.xml:76
msgid "Text [Color] used when the [Button] is being pressed."
msgstr ""
-#: doc/classes/Button.xml:67
+#: doc/classes/Button.xml:79
msgid "[StyleBox] used when the [Button] is being hovered."
msgstr ""
-#: doc/classes/Button.xml:70
+#: doc/classes/Button.xml:82
msgid "The horizontal space between [Button]'s icon and text."
msgstr ""
-#: doc/classes/Button.xml:73
+#: doc/classes/Button.xml:85
msgid "Default [StyleBox] for the [Button]."
msgstr ""
-#: doc/classes/Button.xml:76
+#: doc/classes/Button.xml:88
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr ""
@@ -10714,7 +10764,7 @@ msgstr ""
#: doc/classes/CameraEffects.xml:37
msgid ""
"The exposure override value to use. Higher values will result in a brighter "
-"scene. Only effective if [member override_exposure_enable] is [code]true[/"
+"scene. Only effective if [member override_exposure_enabled] is [code]true[/"
"code]."
msgstr ""
@@ -10968,265 +11018,282 @@ msgid ""
msgstr ""
#: doc/classes/CanvasItem.xml:319
-msgid "Draws a string using a custom font."
+msgid ""
+"Draws [code]text[/code] using the specified [code]font[/code] at the "
+"[code]position[/code] (top-left corner). The text will have its color "
+"multiplied by [code]modulate[/code]. If [code]clip_w[/code] is greater than "
+"or equal to 0, the text will be clipped if it exceeds the specified width.\n"
+"[b]Example using the default project font:[/b]\n"
+"[codeblock]\n"
+"# If using this method in a script that redraws constantly, move the\n"
+"# `default_font` declaration to a member variable assigned in `_ready()`\n"
+"# so the Control is only created once.\n"
+"var default_font = Control.new().get_font(\"font\")\n"
+"draw_string(default_font, Vector2(64, 64), \"Hello world\")\n"
+"[/codeblock]\n"
+"See also [method Font.draw]."
msgstr ""
-#: doc/classes/CanvasItem.xml:330
+#: doc/classes/CanvasItem.xml:339
msgid "Draws a styled rectangle."
msgstr ""
-#: doc/classes/CanvasItem.xml:353
+#: doc/classes/CanvasItem.xml:362
msgid "Draws a texture at a given position."
msgstr ""
-#: doc/classes/CanvasItem.xml:380
+#: doc/classes/CanvasItem.xml:389
msgid ""
"Draws a textured rectangle at a given position, optionally modulated by a "
"color. If [code]transpose[/code] is [code]true[/code], the texture will have "
"its X and Y coordinates swapped."
msgstr ""
-#: doc/classes/CanvasItem.xml:409
+#: doc/classes/CanvasItem.xml:418
msgid ""
"Draws a textured rectangle region at a given position, optionally modulated "
"by a color. If [code]transpose[/code] is [code]true[/code], the texture will "
"have its X and Y coordinates swapped."
msgstr ""
-#: doc/classes/CanvasItem.xml:416 doc/classes/Node3D.xml:19
+#: doc/classes/CanvasItem.xml:425 doc/classes/Node3D.xml:19
msgid ""
"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."
msgstr ""
-#: doc/classes/CanvasItem.xml:423
+#: doc/classes/CanvasItem.xml:432
msgid "Returns the [RID] of the [World2D] canvas where this item is in."
msgstr ""
-#: doc/classes/CanvasItem.xml:430
+#: doc/classes/CanvasItem.xml:439
msgid "Returns the canvas item RID used by [RenderingServer] for this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:437
+#: doc/classes/CanvasItem.xml:446
msgid "Returns the transform matrix of this item's canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:444
+#: doc/classes/CanvasItem.xml:453
msgid "Returns the global position of the mouse."
msgstr ""
-#: doc/classes/CanvasItem.xml:451
+#: doc/classes/CanvasItem.xml:460
msgid "Returns the global transform matrix of this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:458
+#: doc/classes/CanvasItem.xml:467
msgid ""
"Returns the global transform matrix of this item in relation to the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:465
+#: doc/classes/CanvasItem.xml:474
msgid "Returns the mouse position relative to this item's position."
msgstr ""
-#: doc/classes/CanvasItem.xml:472
+#: doc/classes/CanvasItem.xml:481
msgid "Returns the transform matrix of this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:479
+#: doc/classes/CanvasItem.xml:488
msgid "Returns the viewport's boundaries as a [Rect2]."
msgstr ""
-#: doc/classes/CanvasItem.xml:486
+#: doc/classes/CanvasItem.xml:495
msgid "Returns this item's transform in relation to the viewport."
msgstr ""
-#: doc/classes/CanvasItem.xml:493
+#: doc/classes/CanvasItem.xml:502
msgid "Returns the [World2D] where this item is in."
msgstr ""
-#: doc/classes/CanvasItem.xml:500
+#: doc/classes/CanvasItem.xml:509
msgid "Hide the [CanvasItem] if it's currently visible."
msgstr ""
-#: doc/classes/CanvasItem.xml:507
+#: doc/classes/CanvasItem.xml:516
msgid ""
"Returns [code]true[/code] if local transform notifications are communicated "
"to children."
msgstr ""
-#: doc/classes/CanvasItem.xml:514
+#: doc/classes/CanvasItem.xml:523
msgid ""
"Returns [code]true[/code] if the node is set as top-level. See [method "
"set_as_toplevel]."
msgstr ""
-#: doc/classes/CanvasItem.xml:521
+#: doc/classes/CanvasItem.xml:530
msgid ""
"Returns [code]true[/code] if global transform notifications are communicated "
"to children."
msgstr ""
-#: doc/classes/CanvasItem.xml:528
+#: doc/classes/CanvasItem.xml:537 doc/classes/Node3D.xml:104
msgid ""
"Returns [code]true[/code] if the node is present in the [SceneTree], its "
-"[member visible] property is [code]true[/code] and its inherited visibility "
-"is also [code]true[/code]."
+"[member visible] property is [code]true[/code] and all its antecedents are "
+"also visible. If any antecedent is hidden, this node will not be visible in "
+"the scene tree."
msgstr ""
-#: doc/classes/CanvasItem.xml:537
+#: doc/classes/CanvasItem.xml:546
msgid "Assigns [code]screen_point[/code] as this node's new local transform."
msgstr ""
-#: doc/classes/CanvasItem.xml:546
+#: doc/classes/CanvasItem.xml:555
msgid ""
"Transformations issued by [code]event[/code]'s inputs are applied in local "
"space instead of global space."
msgstr ""
-#: doc/classes/CanvasItem.xml:555
+#: doc/classes/CanvasItem.xml:564
msgid ""
"If [code]enable[/code] is [code]true[/code], the node won't inherit its "
"transform from parent canvas items."
msgstr ""
-#: doc/classes/CanvasItem.xml:564
+#: doc/classes/CanvasItem.xml:573
msgid ""
"If [code]enable[/code] is [code]true[/code], children will be updated with "
"local transform data."
msgstr ""
-#: doc/classes/CanvasItem.xml:573
+#: doc/classes/CanvasItem.xml:582
msgid ""
"If [code]enable[/code] is [code]true[/code], children will be updated with "
"global transform data."
msgstr ""
-#: doc/classes/CanvasItem.xml:580
+#: doc/classes/CanvasItem.xml:589
msgid ""
"Show the [CanvasItem] if it's currently hidden. For controls that inherit "
"[Popup], the correct way to make them visible is to call one of the multiple "
"[code]popup*()[/code] functions instead."
msgstr ""
-#: doc/classes/CanvasItem.xml:587
+#: doc/classes/CanvasItem.xml:596
msgid ""
"Queue the [CanvasItem] for update. [constant NOTIFICATION_DRAW] will be "
"called on idle time to request redraw."
msgstr ""
-#: doc/classes/CanvasItem.xml:593
+#: doc/classes/CanvasItem.xml:602
msgid ""
"The rendering layers in which this [CanvasItem] responds to [Light2D] nodes."
msgstr ""
-#: doc/classes/CanvasItem.xml:596
+#: doc/classes/CanvasItem.xml:605
msgid "The material applied to textures on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:599
+#: doc/classes/CanvasItem.xml:608
msgid "The color applied to textures on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:602
+#: doc/classes/CanvasItem.xml:611
msgid ""
"The color applied to textures on this [CanvasItem]. This is not inherited by "
"children [CanvasItem]s."
msgstr ""
-#: doc/classes/CanvasItem.xml:605
+#: doc/classes/CanvasItem.xml:614
msgid "If [code]true[/code], the object draws behind its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:608
+#: doc/classes/CanvasItem.xml:617
msgid "If [code]true[/code], the object draws on top of its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:611
+#: doc/classes/CanvasItem.xml:620
msgid "The texture filtering mode to use on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:614
+#: doc/classes/CanvasItem.xml:623
msgid "The texture repeating mode to use on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:617
+#: doc/classes/CanvasItem.xml:626
msgid ""
"If [code]true[/code], the parent [CanvasItem]'s [member material] property "
"is used as this one's material."
msgstr ""
-#: doc/classes/CanvasItem.xml:620
+#: doc/classes/CanvasItem.xml:629
msgid ""
-"If [code]true[/code], this [CanvasItem] is drawn. For controls that inherit "
-"[Popup], the correct way to make them visible is to call one of the multiple "
-"[code]popup*()[/code] functions instead."
+"If [code]true[/code], this [CanvasItem] is drawn. The node is only visible "
+"if all of its antecedents are visible as well (in other words, [method "
+"is_visible_in_tree] must return [code]true[/code]).\n"
+"[b]Note:[/b] For controls that inherit [Popup], the correct way to make them "
+"visible is to call one of the multiple [code]popup*()[/code] functions "
+"instead."
msgstr ""
-#: doc/classes/CanvasItem.xml:626
+#: doc/classes/CanvasItem.xml:636
msgid ""
"Emitted when the [CanvasItem] must redraw. This can only be connected "
"realtime, as deferred will not allow drawing."
msgstr ""
-#: doc/classes/CanvasItem.xml:631
+#: doc/classes/CanvasItem.xml:641
msgid "Emitted when becoming hidden."
msgstr ""
-#: doc/classes/CanvasItem.xml:636
+#: doc/classes/CanvasItem.xml:646
msgid "Emitted when the item rect has changed."
msgstr ""
-#: doc/classes/CanvasItem.xml:641
+#: doc/classes/CanvasItem.xml:651
msgid "Emitted when the visibility (hidden/visible) changes."
msgstr ""
-#: doc/classes/CanvasItem.xml:647
+#: doc/classes/CanvasItem.xml:657
msgid ""
"The [CanvasItem]'s transform has changed. This notification is only received "
"if enabled by [method set_notify_transform] or [method "
"set_notify_local_transform]."
msgstr ""
-#: doc/classes/CanvasItem.xml:650
+#: doc/classes/CanvasItem.xml:660
msgid "The [CanvasItem] is requested to draw."
msgstr ""
-#: doc/classes/CanvasItem.xml:653
+#: doc/classes/CanvasItem.xml:663
msgid "The [CanvasItem]'s visibility has changed."
msgstr ""
-#: doc/classes/CanvasItem.xml:656
+#: doc/classes/CanvasItem.xml:666
msgid "The [CanvasItem] has entered the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:659
+#: doc/classes/CanvasItem.xml:669
msgid "The [CanvasItem] has exited the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:662 doc/classes/CanvasItem.xml:688
+#: doc/classes/CanvasItem.xml:672 doc/classes/CanvasItem.xml:698
msgid "The [CanvasItem] will inherit the filter from its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:665
+#: doc/classes/CanvasItem.xml:675
msgid ""
"The texture filter reads from the nearest pixel only. The simplest and "
"fastest method of filtering. Useful for pixel art."
msgstr ""
-#: doc/classes/CanvasItem.xml:668
+#: doc/classes/CanvasItem.xml:678
msgid ""
"The texture filter blends between the nearest four pixels. Use this for most "
"cases where you want to avoid a pixelated style."
msgstr ""
-#: doc/classes/CanvasItem.xml:671
+#: doc/classes/CanvasItem.xml:681
msgid ""
"The texture filter reads from the nearest pixel in the nearest mipmap. This "
"is the fastest way to read from textures with mipmaps."
msgstr ""
-#: doc/classes/CanvasItem.xml:674
+#: doc/classes/CanvasItem.xml:684
msgid ""
"The texture filter blends between the nearest 4 pixels and between the "
"nearest 2 mipmaps. Use this for non-pixel art textures that may be viewed at "
@@ -11234,7 +11301,7 @@ msgid ""
"smooth out pixels that are smaller than on-screen pixels."
msgstr ""
-#: doc/classes/CanvasItem.xml:677
+#: doc/classes/CanvasItem.xml:687
msgid ""
"The texture filter reads from the nearest pixel, but selects a mipmap based "
"on the angle between the surface and the camera view. This reduces artifacts "
@@ -11243,7 +11310,7 @@ msgid ""
"TEXTURE_FILTER_NEAREST_WITH_MIPMAPS] is usually more appropriate."
msgstr ""
-#: doc/classes/CanvasItem.xml:681
+#: doc/classes/CanvasItem.xml:691
msgid ""
"The texture filter blends between the nearest 4 pixels and selects a mipmap "
"based on the angle between the surface and the camera view. This reduces "
@@ -11254,21 +11321,21 @@ msgid ""
"TEXTURE_FILTER_LINEAR_WITH_MIPMAPS] is usually more appropriate."
msgstr ""
-#: doc/classes/CanvasItem.xml:691
+#: doc/classes/CanvasItem.xml:701
msgid "Texture will not repeat."
msgstr ""
-#: doc/classes/CanvasItem.xml:694
+#: doc/classes/CanvasItem.xml:704
msgid "Texture will repeat normally."
msgstr ""
-#: doc/classes/CanvasItem.xml:697
+#: doc/classes/CanvasItem.xml:707
msgid ""
"Texture will repeat in a 2x2 tiled mode, where elements at even positions "
"are mirrored."
msgstr ""
-#: doc/classes/CanvasItem.xml:700
+#: doc/classes/CanvasItem.xml:710
msgid "Represents the size of the [enum TextureRepeat] enum."
msgstr ""
@@ -12341,16 +12408,15 @@ msgid ""
msgstr ""
#: doc/classes/Color.xml:4
-msgid "Color in RGBA format with some support for ARGB format."
+msgid "Color in RGBA format using floats on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:7
msgid ""
-"A color is represented by red, green, and blue [code](r, g, b)[/code] "
-"components. Additionally, [code]a[/code] represents the alpha component, "
-"often used for transparency. Values are in floating-point and usually range "
-"from 0 to 1. Some properties (such as [member CanvasItem.modulate]) may "
-"accept values greater than 1.\n"
+"A color represented by red, green, blue, and alpha (RGBA) components. The "
+"alpha component is often used for transparency. Values are in floating-point "
+"and usually range from 0 to 1. Some properties (such as CanvasItem.modulate) "
+"may accept values greater than 1 (overbright or HDR colors).\n"
"You can also create a color from standardized color names by using [method "
"@GDScript.ColorN] or directly using the color constants defined here. The "
"standardized color set is based on the [url=https://en.wikipedia.org/wiki/"
@@ -12564,47 +12630,48 @@ msgid ""
msgstr ""
#: doc/classes/Color.xml:280
-msgid "Alpha value (range 0 to 1)."
+msgid ""
+"The color's alpha (transparency) component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:283
-msgid "Alpha value (range 0 to 255)."
+msgid "Wrapper for [member a] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:286
-msgid "Blue value (range 0 to 1)."
+msgid "The color's blue component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:289
-msgid "Blue value (range 0 to 255)."
+msgid "Wrapper for [member b] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:292
-msgid "Green value (range 0 to 1)."
+msgid "The color's green component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:295
-msgid "Green value (range 0 to 255)."
+msgid "Wrapper for [member g] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:298
-msgid "HSV hue value (range 0 to 1)."
+msgid "The HSV hue of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:301
-msgid "Red value (range 0 to 1)."
+msgid "The color's red component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:304
-msgid "Red value (range 0 to 255)."
+msgid "Wrapper for [member r] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:307
-msgid "HSV saturation value (range 0 to 1)."
+msgid "The HSV saturation of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:310
-msgid "HSV value (range 0 to 1)."
+msgid "The HSV value (brightness) of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:315
@@ -14524,23 +14591,35 @@ msgstr ""
#: doc/classes/Control.xml:859
msgid ""
"The node's scale, relative to its [member rect_size]. Change this property "
-"to scale the node around its [member rect_pivot_offset]."
-msgstr ""
-
-#: doc/classes/Control.xml:862
+"to scale the node around its [member rect_pivot_offset]. The Control's "
+"[member hint_tooltip] will also scale according to this value.\n"
+"[b]Note:[/b] This property is mainly intended to be used for animation "
+"purposes. Text inside the Control will look pixelated or blurry when the "
+"Control is scaled. To support multiple resolutions in your project, use an "
+"appropriate viewport stretch mode as described in the [url=https://docs."
+"godotengine.org/en/latest/tutorials/viewports/multiple_resolutions."
+"html]documentation[/url] instead of scaling Controls individually.\n"
+"[b]Note:[/b] If the Control node is a child of a [Container] node, the scale "
+"will be reset to [code]Vector2(1, 1)[/code] when the scene is instanced. To "
+"set the Control's scale when it's instanced, wait for one frame using "
+"[code]yield(get_tree(), \"idle_frame\")[/code] then set its [member "
+"rect_scale] property."
+msgstr ""
+
+#: doc/classes/Control.xml:864
msgid ""
"The size of the node's bounding rectangle, in pixels. [Container] nodes "
"update this property automatically."
msgstr ""
-#: doc/classes/Control.xml:865
+#: doc/classes/Control.xml:867
msgid ""
"Tells the parent [Container] nodes how they should resize and place the node "
"on the X axis. Use one of the [enum SizeFlags] constants to change the "
"flags. See the constants to learn what each does."
msgstr ""
-#: doc/classes/Control.xml:868
+#: doc/classes/Control.xml:870
msgid ""
"If the node and at least one of its neighbours uses the [constant "
"SIZE_EXPAND] size flag, the parent [Container] will let it take more or less "
@@ -14549,181 +14628,181 @@ msgid ""
"space."
msgstr ""
-#: doc/classes/Control.xml:871
+#: doc/classes/Control.xml:873
msgid ""
"Tells the parent [Container] nodes how they should resize and place the node "
"on the Y axis. Use one of the [enum SizeFlags] constants to change the "
"flags. See the constants to learn what each does."
msgstr ""
-#: doc/classes/Control.xml:874
+#: doc/classes/Control.xml:876
msgid ""
"Changing this property replaces the current [Theme] resource this node and "
"all its [Control] children use."
msgstr ""
-#: doc/classes/Control.xml:880
+#: doc/classes/Control.xml:882
msgid "Emitted when the node gains keyboard focus."
msgstr ""
-#: doc/classes/Control.xml:885
+#: doc/classes/Control.xml:887
msgid "Emitted when the node loses keyboard focus."
msgstr ""
-#: doc/classes/Control.xml:892
+#: doc/classes/Control.xml:894
msgid "Emitted when the node receives an [InputEvent]."
msgstr ""
-#: doc/classes/Control.xml:897
+#: doc/classes/Control.xml:899
msgid "Emitted when the node's minimum size changes."
msgstr ""
-#: doc/classes/Control.xml:902
+#: doc/classes/Control.xml:904
msgid ""
"Emitted when the mouse enters the control's [code]Rect[/code] area, provided "
"its [member mouse_filter] lets the event reach it."
msgstr ""
-#: doc/classes/Control.xml:907
+#: doc/classes/Control.xml:909
msgid ""
"Emitted when the mouse leaves the control's [code]Rect[/code] area, provided "
"its [member mouse_filter] lets the event reach it."
msgstr ""
-#: doc/classes/Control.xml:912
+#: doc/classes/Control.xml:914
msgid "Emitted when the control changes size."
msgstr ""
-#: doc/classes/Control.xml:917
+#: doc/classes/Control.xml:919
msgid ""
"Emitted when one of the size flags changes. See [member "
"size_flags_horizontal] and [member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:927
+#: doc/classes/Control.xml:929
msgid "The node cannot grab focus. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:930
+#: doc/classes/Control.xml:932
msgid ""
"The node can only grab focus on mouse clicks. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:933
+#: doc/classes/Control.xml:935
msgid ""
"The node can grab focus on mouse click or using the arrows and the Tab keys "
"on the keyboard. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:936
+#: doc/classes/Control.xml:938
msgid ""
"Sent when the node changes size. Use [member rect_size] to get the new size."
msgstr ""
-#: doc/classes/Control.xml:939
+#: doc/classes/Control.xml:941
msgid "Sent when the mouse pointer enters the node."
msgstr ""
-#: doc/classes/Control.xml:942
+#: doc/classes/Control.xml:944
msgid "Sent when the mouse pointer exits the node."
msgstr ""
-#: doc/classes/Control.xml:945
+#: doc/classes/Control.xml:947
msgid "Sent when the node grabs focus."
msgstr ""
-#: doc/classes/Control.xml:948
+#: doc/classes/Control.xml:950
msgid "Sent when the node loses focus."
msgstr ""
-#: doc/classes/Control.xml:951
+#: doc/classes/Control.xml:953
msgid ""
"Sent when the node's [member theme] changes, right before Godot redraws the "
"control. Happens when you call one of the [code]add_theme_*_override[/code] "
"methods."
msgstr ""
-#: doc/classes/Control.xml:954
+#: doc/classes/Control.xml:956
msgid ""
"Sent when this node is inside a [ScrollContainer] which has begun being "
"scrolled."
msgstr ""
-#: doc/classes/Control.xml:957
+#: doc/classes/Control.xml:959
msgid ""
"Sent when this node is inside a [ScrollContainer] which has stopped being "
"scrolled."
msgstr ""
-#: doc/classes/Control.xml:960
+#: doc/classes/Control.xml:962
msgid ""
"Show the system's arrow mouse cursor when the user hovers the node. Use with "
"[member mouse_default_cursor_shape]."
msgstr ""
-#: doc/classes/Control.xml:963
+#: doc/classes/Control.xml:965
msgid ""
"Show the system's I-beam mouse cursor when the user hovers the node. The I-"
"beam pointer has a shape similar to \"I\". It tells the user they can "
"highlight or insert text."
msgstr ""
-#: doc/classes/Control.xml:966
+#: doc/classes/Control.xml:968
msgid ""
"Show the system's pointing hand mouse cursor when the user hovers the node."
msgstr ""
-#: doc/classes/Control.xml:969
+#: doc/classes/Control.xml:971
msgid "Show the system's cross mouse cursor when the user hovers the node."
msgstr ""
-#: doc/classes/Control.xml:972
+#: doc/classes/Control.xml:974
msgid ""
"Show the system's wait mouse cursor, often an hourglass, when the user "
"hovers the node."
msgstr ""
-#: doc/classes/Control.xml:975
+#: doc/classes/Control.xml:977
msgid ""
"Show the system's busy mouse cursor when the user hovers the node. Often an "
"hourglass."
msgstr ""
-#: doc/classes/Control.xml:978
+#: doc/classes/Control.xml:980
msgid ""
"Show the system's drag mouse cursor, often a closed fist or a cross symbol, "
"when the user hovers the node. It tells the user they're currently dragging "
"an item, like a node in the Scene dock."
msgstr ""
-#: doc/classes/Control.xml:981
+#: doc/classes/Control.xml:983
msgid ""
"Show the system's drop mouse cursor when the user hovers the node. It can be "
"an open hand. It tells the user they can drop an item they're currently "
"grabbing, like a node in the Scene dock."
msgstr ""
-#: doc/classes/Control.xml:984
+#: doc/classes/Control.xml:986
msgid ""
"Show the system's forbidden mouse cursor when the user hovers the node. "
"Often a crossed circle."
msgstr ""
-#: doc/classes/Control.xml:987
+#: doc/classes/Control.xml:989
msgid ""
"Show the system's vertical resize mouse cursor when the user hovers the "
"node. A double-headed vertical arrow. It tells the user they can resize the "
"window or the panel vertically."
msgstr ""
-#: doc/classes/Control.xml:990
+#: doc/classes/Control.xml:992
msgid ""
"Show the system's horizontal resize mouse cursor when the user hovers the "
"node. A double-headed horizontal arrow. It tells the user they can resize "
"the window or the panel horizontally."
msgstr ""
-#: doc/classes/Control.xml:993
+#: doc/classes/Control.xml:995
msgid ""
"Show the system's window resize mouse cursor when the user hovers the node. "
"The cursor is a double-headed arrow that goes from the bottom left to the "
@@ -14731,7 +14810,7 @@ msgid ""
"horizontally and vertically."
msgstr ""
-#: doc/classes/Control.xml:996
+#: doc/classes/Control.xml:998
msgid ""
"Show the system's window resize mouse cursor when the user hovers the node. "
"The cursor is a double-headed arrow that goes from the top left to the "
@@ -14739,93 +14818,93 @@ msgid ""
"they can resize the window or the panel both horizontally and vertically."
msgstr ""
-#: doc/classes/Control.xml:999
+#: doc/classes/Control.xml:1001
msgid ""
"Show the system's move mouse cursor when the user hovers the node. It shows "
"2 double-headed arrows at a 90 degree angle. It tells the user they can move "
"a UI element freely."
msgstr ""
-#: doc/classes/Control.xml:1002
+#: doc/classes/Control.xml:1004
msgid ""
"Show the system's vertical split mouse cursor when the user hovers the node. "
"On Windows, it's the same as [constant CURSOR_VSIZE]."
msgstr ""
-#: doc/classes/Control.xml:1005
+#: doc/classes/Control.xml:1007
msgid ""
"Show the system's horizontal split mouse cursor when the user hovers the "
"node. On Windows, it's the same as [constant CURSOR_HSIZE]."
msgstr ""
-#: doc/classes/Control.xml:1008
+#: doc/classes/Control.xml:1010
msgid ""
"Show the system's help mouse cursor when the user hovers the node, a "
"question mark."
msgstr ""
-#: doc/classes/Control.xml:1011
+#: doc/classes/Control.xml:1013
msgid ""
"Snap all 4 anchors to the top-left of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1014
+#: doc/classes/Control.xml:1016
msgid ""
"Snap all 4 anchors to the top-right of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1017
+#: doc/classes/Control.xml:1019
msgid ""
"Snap all 4 anchors to the bottom-left of the parent control's bounds. Use "
"with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1020
+#: doc/classes/Control.xml:1022
msgid ""
"Snap all 4 anchors to the bottom-right of the parent control's bounds. Use "
"with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1023
+#: doc/classes/Control.xml:1025
msgid ""
"Snap all 4 anchors to the center of the left edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1026
+#: doc/classes/Control.xml:1028
msgid ""
"Snap all 4 anchors to the center of the top edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1029
+#: doc/classes/Control.xml:1031
msgid ""
"Snap all 4 anchors to the center of the right edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1032
+#: doc/classes/Control.xml:1034
msgid ""
"Snap all 4 anchors to the center of the bottom edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1035
+#: doc/classes/Control.xml:1037
msgid ""
"Snap all 4 anchors to the center of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1038
+#: doc/classes/Control.xml:1040
msgid ""
"Snap all 4 anchors to the left edge of the parent control. The left margin "
"becomes relative to the left edge and the top margin relative to the top "
"left corner of the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1041
+#: doc/classes/Control.xml:1043
msgid ""
"Snap all 4 anchors to the top edge of the parent control. The left margin "
"becomes relative to the top left corner, the top margin relative to the top "
@@ -14833,14 +14912,14 @@ msgid ""
"parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1044
+#: doc/classes/Control.xml:1046
msgid ""
"Snap all 4 anchors to the right edge of the parent control. The right margin "
"becomes relative to the right edge and the top margin relative to the top "
"right corner of the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1047
+#: doc/classes/Control.xml:1049
msgid ""
"Snap all 4 anchors to the bottom edge of the parent control. The left margin "
"becomes relative to the bottom left corner, the bottom margin relative to "
@@ -14848,19 +14927,19 @@ msgid ""
"the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1050
+#: doc/classes/Control.xml:1052
msgid ""
"Snap all 4 anchors to a vertical line that cuts the parent control in half. "
"Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1053
+#: doc/classes/Control.xml:1055
msgid ""
"Snap all 4 anchors to a horizontal line that cuts the parent control in "
"half. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1056
+#: doc/classes/Control.xml:1058
msgid ""
"Snap all 4 anchors to the respective corners of the parent control. Set all "
"4 margins to 0 after you applied this preset and the [Control] will fit its "
@@ -14868,30 +14947,30 @@ msgid ""
"editor. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1059
+#: doc/classes/Control.xml:1061
msgid "The control will be resized to its minimum size."
msgstr ""
-#: doc/classes/Control.xml:1062
+#: doc/classes/Control.xml:1064
msgid "The control's width will not change."
msgstr ""
-#: doc/classes/Control.xml:1065
+#: doc/classes/Control.xml:1067
msgid "The control's height will not change."
msgstr ""
-#: doc/classes/Control.xml:1068
+#: doc/classes/Control.xml:1070
msgid "The control's size will not change."
msgstr ""
-#: doc/classes/Control.xml:1071
+#: doc/classes/Control.xml:1073
msgid ""
"Tells the parent [Container] to expand the bounds of this node to fill all "
"the available space without pushing any other node. Use with [member "
"size_flags_horizontal] and [member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1074
+#: doc/classes/Control.xml:1076
msgid ""
"Tells the parent [Container] to let this node take all the available space "
"on the axis you flag. If multiple neighboring nodes are set to expand, "
@@ -14900,13 +14979,13 @@ msgid ""
"[member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1077
+#: doc/classes/Control.xml:1079
msgid ""
"Sets the node's size flags to both fill and expand. See the 2 constants "
"above for more information."
msgstr ""
-#: doc/classes/Control.xml:1080
+#: doc/classes/Control.xml:1082
msgid ""
"Tells the parent [Container] to center the node in itself. It centers the "
"control based on its bounding box, so it doesn't work with the fill or "
@@ -14914,7 +14993,7 @@ msgid ""
"size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1083
+#: doc/classes/Control.xml:1085
msgid ""
"Tells the parent [Container] to align the node with its end, either the "
"bottom or the right edge. It doesn't work with the fill or expand size "
@@ -14922,7 +15001,7 @@ msgid ""
"size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1086
+#: doc/classes/Control.xml:1088
msgid ""
"The control will receive mouse button input events through [method "
"_gui_input] if clicked on. And the control will receive the [signal "
@@ -14931,7 +15010,7 @@ msgid ""
"other controls. This also results in blocking signals in other controls."
msgstr ""
-#: doc/classes/Control.xml:1089
+#: doc/classes/Control.xml:1091
msgid ""
"The control will receive mouse button input events through [method "
"_gui_input] if clicked on. And the control will receive the [signal "
@@ -14943,7 +15022,7 @@ msgid ""
"not be fired."
msgstr ""
-#: doc/classes/Control.xml:1092
+#: doc/classes/Control.xml:1094
msgid ""
"The control will not receive mouse button input events through [method "
"_gui_input]. The control will also not receive the [signal mouse_entered] "
@@ -14952,25 +15031,25 @@ msgid ""
"handled automatically."
msgstr ""
-#: doc/classes/Control.xml:1095
+#: doc/classes/Control.xml:1097
msgid ""
"The control will grow to the left or top to make up if its minimum size is "
"changed to be greater than its current size on the respective axis."
msgstr ""
-#: doc/classes/Control.xml:1098
+#: doc/classes/Control.xml:1100
msgid ""
"The control will grow to the right or bottom to make up if its minimum size "
"is changed to be greater than its current size on the respective axis."
msgstr ""
-#: doc/classes/Control.xml:1101
+#: doc/classes/Control.xml:1103
msgid ""
"The control will grow in both directions equally to make up if its minimum "
"size is changed to be greater than its current size."
msgstr ""
-#: doc/classes/Control.xml:1104
+#: doc/classes/Control.xml:1106
msgid ""
"Snaps one of the 4 anchor's sides to the origin of the node's [code]Rect[/"
"code], in the top left. Use it with one of the [code]anchor_*[/code] member "
@@ -14978,7 +15057,7 @@ msgid ""
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1107
+#: doc/classes/Control.xml:1109
msgid ""
"Snaps one of the 4 anchor's sides to the end of the node's [code]Rect[/"
"code], in the bottom right. Use it with one of the [code]anchor_*[/code] "
@@ -16763,7 +16842,7 @@ msgstr ""
msgid ""
"Returns the [Texture2D] associated with the specified [enum DecalTexture]. "
"This is a convenience method, in most cases you should access the texture "
-"directly. \n"
+"directly.\n"
"For example, instead of [code]albedo_tex = $Decal.get_texture(Decal."
"TEXTURE_ALBEDO)[/code], use [code]albedo_tex = $Decal.texture_albedo[/"
"code].\n"
@@ -16779,7 +16858,7 @@ msgstr ""
msgid ""
"Sets the [Texture2D] associated with the specified [enum DecalTexture]. This "
"is a convenience method, in most cases you should access the texture "
-"directly. \n"
+"directly.\n"
"For example, instead of [code]$Decal.set_texture(Decal.TEXTURE_ALBEDO, "
"albedo_tex)[/code], use [code]$Decal.texture_albedo = albedo_tex[/code].\n"
"One case where this is better than accessing the texture directly is when "
@@ -17128,7 +17207,7 @@ msgstr ""
msgid "The light's shadow rendering algorithm. See [enum ShadowMode]."
msgstr ""
-#: doc/classes/DirectionalLight3D.xml:31 doc/classes/RenderingServer.xml:3254
+#: doc/classes/DirectionalLight3D.xml:31 doc/classes/RenderingServer.xml:3250
msgid ""
"Sets the size of the directional shadow pancake. The pancake offsets the "
"start of the shadow's camera frustum to provide a higher effective depth "
@@ -17202,10 +17281,10 @@ msgstr ""
msgid ""
"Directory type. It is used to manage directories and their content (not "
"restricted to the project folder).\n"
-"When creating a new [Directory], its default opened directory will be "
-"[code]res://[/code]. This may change in the future, so it is advised to "
-"always use [method open] to initialize your [Directory] where you want to "
-"operate, with explicit error checking.\n"
+"When creating a new [Directory], it must be explicitly opened using [method "
+"open] before most methods can be used. However, [method file_exists] and "
+"[method dir_exists] can be used without opening a directory. If so, they use "
+"a path relative to [code]res://[/code].\n"
"Here is an example on how to iterate through the files of a directory:\n"
"[codeblock]\n"
"func dir_contents(path):\n"
@@ -17224,7 +17303,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Directory.xml:27 doc/classes/File.xml:25
+#: doc/classes/Directory.xml:27 doc/classes/File.xml:26
msgid ""
"https://docs.godotengine.org/en/latest/getting_started/step_by_step/"
"filesystem.html"
@@ -17258,41 +17337,43 @@ msgstr ""
#: doc/classes/Directory.xml:65
msgid ""
"Returns whether the target directory exists. The argument can be relative to "
-"the current directory, or an absolute path."
+"the current directory, or an absolute path.\n"
+"If the [Directory] is not open, the path is relative to [code]res://[/code]."
msgstr ""
-#: doc/classes/Directory.xml:74
+#: doc/classes/Directory.xml:75
msgid ""
"Returns whether the target file exists. The argument can be relative to the "
-"current directory, or an absolute path."
+"current directory, or an absolute path.\n"
+"If the [Directory] is not open, the path is relative to [code]res://[/code]."
msgstr ""
-#: doc/classes/Directory.xml:81
+#: doc/classes/Directory.xml:83
msgid ""
"Returns the absolute path to the currently opened directory (e.g. "
"[code]res://folder[/code] or [code]C:\\tmp\\folder[/code])."
msgstr ""
-#: doc/classes/Directory.xml:88
+#: doc/classes/Directory.xml:90
msgid ""
"Returns the currently opened directory's drive index. See [method get_drive] "
"to convert returned index to the name of the drive."
msgstr ""
-#: doc/classes/Directory.xml:97
+#: doc/classes/Directory.xml:99
msgid ""
"On Windows, returns the name of the drive (partition) passed as an argument "
"(e.g. [code]C:[/code]). On other platforms, or if the requested drive does "
"not existed, the method returns an empty String."
msgstr ""
-#: doc/classes/Directory.xml:104
+#: doc/classes/Directory.xml:106
msgid ""
"On Windows, returns the number of drives (partitions) mounted on the current "
"filesystem. On other platforms, the method returns 0."
msgstr ""
-#: doc/classes/Directory.xml:111
+#: doc/classes/Directory.xml:113
msgid ""
"Returns the next element (file or directory) in the current directory "
"(including [code].[/code] and [code]..[/code], unless "
@@ -17303,14 +17384,14 @@ msgid ""
"mandatory in such a case)."
msgstr ""
-#: doc/classes/Directory.xml:119
+#: doc/classes/Directory.xml:121
msgid ""
"On UNIX desktop systems, returns the available space on the current "
"directory's disk. On other platforms, this information is not available and "
"the method returns 0 or -1."
msgstr ""
-#: doc/classes/Directory.xml:130
+#: doc/classes/Directory.xml:132
msgid ""
"Initializes the stream used to list all files and directories using the "
"[method get_next] function, closing the current opened stream if needed. "
@@ -17322,13 +17403,13 @@ msgid ""
"out."
msgstr ""
-#: doc/classes/Directory.xml:139
+#: doc/classes/Directory.xml:141
msgid ""
"Closes the current stream opened with [method list_dir_begin] (whether it "
"has been fully processed with [method get_next] or not does not matter)."
msgstr ""
-#: doc/classes/Directory.xml:148
+#: doc/classes/Directory.xml:150
msgid ""
"Creates a directory. The argument can be relative to the current directory, "
"or an absolute path. The target directory should be placed in an already "
@@ -17337,7 +17418,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:158
+#: doc/classes/Directory.xml:160
msgid ""
"Creates a target directory and all necessary intermediate directories in its "
"path, by calling [method make_dir] recursively. The argument can be relative "
@@ -17345,7 +17426,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:168
+#: doc/classes/Directory.xml:170
msgid ""
"Opens an existing directory of the filesystem. The [code]path[/code] "
"argument can be within the project tree ([code]res://folder[/code]), the "
@@ -17354,7 +17435,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:178
+#: doc/classes/Directory.xml:180
msgid ""
"Deletes the target file or an empty directory. The argument can be relative "
"to the current directory, or an absolute path. If the target directory is "
@@ -17362,7 +17443,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:190
+#: doc/classes/Directory.xml:192
msgid ""
"Renames (move) the [code]from[/code] file to the [code]to[/code] "
"destination. Both arguments should be paths to files, either relative or "
@@ -17403,6 +17484,53 @@ msgid ""
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
+#: doc/classes/DisplayServer.xml:530
+msgid ""
+"Return the greatest scale factor of all screens.\n"
+"[b]Note:[/b] On macOS returned value is [code]2.0[/code] if there is at "
+"least one hiDPI (Retina) screen in the system, and [code]1.0[/code] in all "
+"other cases.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:557
+msgid ""
+"Return the scale factor of the specified screen by index.\n"
+"[b]Note:[/b] On macOS returned value is [code]2.0[/code] for hiDPI (Retina) "
+"screen, and [code]1.0[/code] for all other cases.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:630
+msgid ""
+"Returns the on-screen keyboard's height in pixels. Returns 0 if there is no "
+"keyboard or if it is currently hidden."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:637
+msgid "Hides the virtual keyboard if it is shown, does nothing otherwise."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:656
+msgid ""
+"Shows the virtual keyboard if the platform has one.\n"
+"[code]existing_text[/code] parameter is useful for implementing your own "
+"[LineEdit] or [TextEdit], as it tells the virtual keyboard what text has "
+"already been typed (the virtual keyboard uses it for auto-correct and "
+"predictions).\n"
+"[code]position[/code] parameter is the screen space [Rect2] of the edited "
+"text.\n"
+"[code]multiline[/code] parameter needs to be set to [code]true[/code] to be "
+"able to enter multiple lines of text, as in [TextEdit].\n"
+"[code]max_length[/code] limits the number of characters that can be entered "
+"if different from [code]-1[/code].\n"
+"[code]cursor_start[/code] can optionally define the current text cursor "
+"position if [code]cursor_end[/code] is not set.\n"
+"[code]cursor_start[/code] and [code]cursor_end[/code] can optionally define "
+"the current text selection.\n"
+"[b]Note:[/b] This method is implemented on Android, iOS and UWP."
+msgstr ""
+
#: doc/classes/DTLSServer.xml:4
msgid "Helper class to implement a DTLS server."
msgstr ""
@@ -17523,54 +17651,62 @@ msgstr ""
msgid "Adds a fallback font."
msgstr ""
-#: doc/classes/DynamicFont.xml:35
+#: doc/classes/DynamicFont.xml:33
+msgid ""
+"Returns a string containing all the characters available in the main and all "
+"the fallback fonts.\n"
+"If a given character is included in more than one font, it appears only once "
+"in the returned string."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:43
msgid "Returns the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:42
+#: doc/classes/DynamicFont.xml:50
msgid "Returns the number of fallback fonts."
msgstr ""
-#: doc/classes/DynamicFont.xml:51
+#: doc/classes/DynamicFont.xml:59
msgid ""
"Returns the spacing for the given [code]type[/code] (see [enum SpacingType])."
msgstr ""
-#: doc/classes/DynamicFont.xml:60
+#: doc/classes/DynamicFont.xml:68
msgid "Removes the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:71
+#: doc/classes/DynamicFont.xml:79
msgid "Sets the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:82
+#: doc/classes/DynamicFont.xml:90
msgid ""
"Sets the spacing for [code]type[/code] (see [enum SpacingType]) to "
"[code]value[/code] in pixels (not relative to the font size)."
msgstr ""
-#: doc/classes/DynamicFont.xml:88
+#: doc/classes/DynamicFont.xml:96
msgid "Extra spacing at the bottom in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:91
+#: doc/classes/DynamicFont.xml:99
msgid "Extra character spacing in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:94
+#: doc/classes/DynamicFont.xml:102
msgid "Extra space spacing in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:97
+#: doc/classes/DynamicFont.xml:105
msgid "Extra spacing at the top in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:100
+#: doc/classes/DynamicFont.xml:108
msgid "The font data."
msgstr ""
-#: doc/classes/DynamicFont.xml:103
+#: doc/classes/DynamicFont.xml:111
msgid ""
"The font outline's color.\n"
"[b]Note:[/b] It's recommended to leave this at the default value so that you "
@@ -17579,27 +17715,27 @@ msgid ""
"outline modulate theme item."
msgstr ""
-#: doc/classes/DynamicFont.xml:107
+#: doc/classes/DynamicFont.xml:115
msgid "The font outline's thickness in pixels (not relative to the font size)."
msgstr ""
-#: doc/classes/DynamicFont.xml:110
+#: doc/classes/DynamicFont.xml:118
msgid "The font size in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:115
+#: doc/classes/DynamicFont.xml:123
msgid "Spacing at the top."
msgstr ""
-#: doc/classes/DynamicFont.xml:118
+#: doc/classes/DynamicFont.xml:126
msgid "Spacing at the bottom."
msgstr ""
-#: doc/classes/DynamicFont.xml:121
+#: doc/classes/DynamicFont.xml:129
msgid "Character spacing."
msgstr ""
-#: doc/classes/DynamicFont.xml:124
+#: doc/classes/DynamicFont.xml:132
msgid "Space spacing."
msgstr ""
@@ -17981,7 +18117,12 @@ msgstr ""
msgid "Remitted if a resource is reimported."
msgstr ""
-#: doc/classes/EditorFileSystem.xml:106
+#: doc/classes/EditorFileSystem.xml:100
+msgid ""
+"Emitted if at least one resource is reloaded when the filesystem is scanned."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:107
msgid "Emitted if the source of any imported file changed."
msgstr ""
@@ -18023,29 +18164,43 @@ msgstr ""
msgid "Returns the path to the file at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:86
+#: doc/classes/EditorFileSystemDirectory.xml:70
+msgid ""
+"Returns the base class of the script class defined in the file at index "
+"[code]idx[/code]. If the file doesn't define a script class using the "
+"[code]class_name[/code] syntax, this will return an empty string."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:79
+msgid ""
+"Returns the name of the script class defined in the file at index [code]idx[/"
+"code]. If the file doesn't define a script class using the [code]class_name[/"
+"code] syntax, this will return an empty string."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:88
msgid "Returns the file extension of the file at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:93
+#: doc/classes/EditorFileSystemDirectory.xml:95
msgid "Returns the name of this directory."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:100
+#: doc/classes/EditorFileSystemDirectory.xml:102
msgid ""
"Returns the parent directory for this directory or [code]null[/code] if "
"called on a directory at [code]res://[/code] or [code]user://[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:107
+#: doc/classes/EditorFileSystemDirectory.xml:109
msgid "Returns the path to this directory."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:116
+#: doc/classes/EditorFileSystemDirectory.xml:118
msgid "Returns the subdirectory at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:123
+#: doc/classes/EditorFileSystemDirectory.xml:125
msgid "Returns the number of subdirectories in this directory."
msgstr ""
@@ -18136,45 +18291,72 @@ msgstr ""
msgid "Gets the unique name of the importer."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:92
+#: doc/classes/EditorImportPlugin.xml:86
+msgid ""
+"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. For example:\n"
+"[codeblock]\n"
+"func get_option_visibility(option, options):\n"
+" # Only show the lossy quality setting if the compression mode is set to "
+"\"Lossy\".\n"
+" if option == \"compress/lossy_quality\" and options.has(\"compress/mode"
+"\"):\n"
+" return int(options[\"compress/mode\"]) == COMPRESS_LOSSY\n"
+"\n"
+" return true\n"
+"[/codeblock]\n"
+"Return [code]true[/code] to make all options always visible."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:102
msgid ""
"Gets the number of initial presets defined by the plugin. Use [method "
"get_import_options] to get the default options for the preset and [method "
"get_preset_name] to get the name of the preset."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:101
+#: doc/classes/EditorImportPlugin.xml:111
msgid "Gets the name of the options preset at this index."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:108
+#: doc/classes/EditorImportPlugin.xml:118
msgid ""
"Gets the priority of this plugin for the recognized extension. Higher "
"priority plugins will be preferred. The default priority is [code]1.0[/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:115
+#: doc/classes/EditorImportPlugin.xml:125
msgid ""
"Gets the list of file extensions to associate with this loader (case-"
"insensitive). e.g. [code][\"obj\"][/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:122
+#: doc/classes/EditorImportPlugin.xml:132
msgid ""
"Gets the Godot resource type associated with this loader. e.g. [code]\"Mesh"
"\"[/code] or [code]\"Animation\"[/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:129
+#: doc/classes/EditorImportPlugin.xml:139
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:136
+#: doc/classes/EditorImportPlugin.xml:146
msgid "Gets the name to display in the import window."
msgstr ""
+#: doc/classes/EditorImportPlugin.xml:163
+msgid ""
+"Imports [code]source_file[/code] into [code]save_path[/code] with the import "
+"[code]options[/code] specified. The [code]platform_variants[/code] and "
+"[code]gen_files[/code] arrays will be modified by this function.\n"
+"This method must be overridden to do the actual importing work. See this "
+"class' description for an example of overriding this method."
+msgstr ""
+
#: doc/classes/EditorInspector.xml:4
msgid "A tab used to edit properties of the selected node."
msgstr ""
@@ -18190,6 +18372,58 @@ msgid ""
"the singleton using [method EditorInterface.get_inspector]."
msgstr ""
+#: doc/classes/EditorInspector.xml:17
+msgid ""
+"Refreshes the inspector.\n"
+"[b]Note:[/b] To save on CPU resources, calling this method will do nothing "
+"if the time specified in [code]docks/property_editor/auto_refresh_interval[/"
+"code] editor setting hasn't passed yet since this method was last called. "
+"(By default, this interval is set to 0.3 seconds.)"
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:30
+msgid ""
+"Emitted when the Edit button of an [Object] has been pressed in the "
+"inspector. This is mainly used in the remote scene tree inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:37
+msgid "Emitted when a property is removed from the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:44
+msgid "Emitted when a property is edited in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:51
+msgid ""
+"Emitted when a property is keyed in the inspector. Properties can be keyed "
+"by clicking the \"key\" icon next to a property when the Animation panel is "
+"toggled."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:58
+msgid "Emitted when a property is selected in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:67
+msgid ""
+"Emitted when a boolean property is toggled in the inspector.\n"
+"[b]Note:[/b] This signal is never emitted if the internal [code]autoclear[/"
+"code] property enabled. Since this property is always enabled in the editor "
+"inspector, this signal is never emitted by the editor itself."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:77
+msgid "Emitted when a resource is selected in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:82
+msgid ""
+"Emitted when a property that requires a restart to be applied is edited in "
+"the inspector. This is only used in the Project Settings and Editor Settings."
+msgstr ""
+
#: doc/classes/EditorInspectorPlugin.xml:4
msgid "Plugin for adding custom property editors on inspector."
msgstr ""
@@ -18268,91 +18502,156 @@ msgstr ""
#: doc/classes/EditorInterface.xml:26
msgid ""
-"Returns the main container of Godot editor's window. You can use it, for "
-"example, to retrieve the size of the container and place your controls "
+"Returns the main container of Godot editor's window. For example, you can "
+"use it to retrieve the size of the container and place your controls "
"accordingly."
msgstr ""
-#: doc/classes/EditorInterface.xml:39
+#: doc/classes/EditorInterface.xml:33
+msgid "Returns the current path being viewed in the [FileSystemDock]."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:40
msgid "Returns the edited (current) scene's root [Node]."
msgstr ""
-#: doc/classes/EditorInterface.xml:46
-msgid "Returns the [EditorSettings]."
+#: doc/classes/EditorInterface.xml:47
+msgid "Returns the editor's [EditorSettings] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:54
+msgid ""
+"Returns the main editor control. Use this as a parent for main screens.\n"
+"[b]Note:[/b] This returns the main editor control containing the whole "
+"editor, not the 2D or 3D viewports specifically."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:62
+msgid "Returns the editor's [FileSystemDock] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:53
-msgid "Returns the editor [Viewport]."
+#: doc/classes/EditorInterface.xml:69
+msgid "Returns the editor's [EditorInspector] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:72
+#: doc/classes/EditorInterface.xml:76
msgid "Returns an [Array] with the file paths of the currently opened scenes."
msgstr ""
-#: doc/classes/EditorInterface.xml:79
-msgid "Returns the [EditorFileSystem]."
+#: doc/classes/EditorInterface.xml:83
+msgid ""
+"Returns the name of the scene that is being played. If no scene is currently "
+"being played, returns an empty string."
msgstr ""
-#: doc/classes/EditorInterface.xml:86
-msgid "Returns the [EditorResourcePreview]."
+#: doc/classes/EditorInterface.xml:90
+msgid "Returns the editor's [EditorFileSystem] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:93
-msgid "Returns the [ScriptEditor]."
+#: doc/classes/EditorInterface.xml:97
+msgid "Returns the editor's [EditorResourcePreview] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:106
-msgid "Returns the [EditorSelection]."
+#: doc/classes/EditorInterface.xml:104
+#, fuzzy
+msgid "Returns the editor's [ScriptEditor] instance."
+msgstr "Singleton [VisualScriptEditor]."
+
+#: doc/classes/EditorInterface.xml:111
+msgid ""
+"Returns the path of the directory currently selected in the "
+"[FileSystemDock]. If a file is selected, its base directory will be returned "
+"using [method String.get_base_dir] instead."
msgstr ""
-#: doc/classes/EditorInterface.xml:117
+#: doc/classes/EditorInterface.xml:118
+msgid "Returns the editor's [EditorSelection] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:129
msgid ""
-"Shows the given property on the given [code]object[/code] in the Editor's "
+"Shows the given property on the given [code]object[/code] in the editor's "
"Inspector dock."
msgstr ""
-#: doc/classes/EditorInterface.xml:126
+#: doc/classes/EditorInterface.xml:136
msgid ""
-"Returns the enabled status of a plugin. The plugin name is the same as its "
-"directory name."
+"Returns [code]true[/code] if a scene is currently being played, [code]false[/"
+"code] otherwise. Paused scenes are considered as being played."
msgstr ""
-#: doc/classes/EditorInterface.xml:137
+#: doc/classes/EditorInterface.xml:145
+msgid ""
+"Returns [code]true[/code] if the specified [code]plugin[/code] is enabled. "
+"The plugin name is the same as its directory name."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:156
msgid ""
"Returns mesh previews rendered at the given size as an [Array] of "
"[Texture2D]s."
msgstr ""
-#: doc/classes/EditorInterface.xml:146
+#: doc/classes/EditorInterface.xml:165
msgid "Opens the scene at the given path."
msgstr ""
-#: doc/classes/EditorInterface.xml:155
+#: doc/classes/EditorInterface.xml:172
+msgid "Plays the currently active scene."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:181
+msgid "Plays the scene specified by its filepath."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:188
+msgid "Plays the main scene."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:197
msgid "Reloads the scene at the given path."
msgstr ""
-#: doc/classes/EditorInterface.xml:162
+#: doc/classes/EditorInterface.xml:204
msgid ""
"Saves the scene. Returns either [code]OK[/code] or [code]ERR_CANT_CREATE[/"
"code] (see [@GlobalScope] constants)."
msgstr ""
-#: doc/classes/EditorInterface.xml:173
+#: doc/classes/EditorInterface.xml:215
msgid "Saves the scene as a file at [code]path[/code]."
msgstr ""
-#: doc/classes/EditorInterface.xml:182
+#: doc/classes/EditorInterface.xml:224
msgid ""
"Selects the file, with the path provided by [code]file[/code], in the "
"FileSystem dock."
msgstr ""
-#: doc/classes/EditorInterface.xml:201
+#: doc/classes/EditorInterface.xml:233
+msgid ""
+"Sets the editor's current main screen to the one specified in [code]name[/"
+"code]. [code]name[/code] must match the text of the tab in question exactly "
+"([code]2D[/code], [code]3D[/code], [code]Script[/code], [code]AssetLib[/"
+"code])."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:244
msgid ""
"Sets the enabled status of a plugin. The plugin name is the same as its "
"directory name."
msgstr ""
+#: doc/classes/EditorInterface.xml:251
+msgid "Stops the scene that is currently playing."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:257
+msgid ""
+"If [code]true[/code], enables distraction-free mode which hides side docks "
+"to increase the space available for the main view."
+msgstr ""
+
#: doc/classes/EditorNode3DGizmo.xml:4
msgid "Custom gizmo for editing Node3D objects."
msgstr ""
@@ -18364,14 +18663,20 @@ msgid ""
"information."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:26
+#: doc/classes/EditorNode3DGizmo.xml:18
+msgid ""
+"Adds the specified [code]segments[/code] to the gizmo's collision shape for "
+"picking. Call this function during [method redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:27
msgid ""
"Adds collision triangles to the gizmo for picking. A [TriangleMesh] can be "
"generated from a regular [Mesh] too. Call this function during [method "
"redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:41
+#: doc/classes/EditorNode3DGizmo.xml:42
msgid ""
"Adds a list of handles (points) which can be used to deform the object being "
"edited.\n"
@@ -18379,20 +18684,33 @@ msgid ""
"handles. Call this function during [method redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:57
+#: doc/classes/EditorNode3DGizmo.xml:58
msgid ""
"Adds lines to the gizmo (as sets of 2 points), with a given material. The "
"lines are used for visualizing the gizmo. Call this function during [method "
"redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:84
+#: doc/classes/EditorNode3DGizmo.xml:73
+msgid ""
+"Adds a mesh to the gizmo with the specified [code]billboard[/code] state, "
+"[code]skeleton[/code] and [code]material[/code]. If [code]billboard[/code] "
+"is [code]true[/code], the mesh will rotate to always face the camera. Call "
+"this function during [method redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:86
msgid ""
"Adds an unscaled billboard for visualization. Call this function during "
"[method redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:103
+#: doc/classes/EditorNode3DGizmo.xml:93
+msgid ""
+"Removes everything in the gizmo including meshes, collisions and handles."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:106
msgid ""
"Commit a handle being edited (handles must have been previously added by "
"[method add_handles]).\n"
@@ -18400,40 +18718,42 @@ msgid ""
"restore the edited value to the original is provided."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:113
+#: doc/classes/EditorNode3DGizmo.xml:116
msgid ""
"Gets the name of an edited handle (handles must have been previously added "
"by [method add_handles]).\n"
"Handles can be named for reference to the user when editing."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:123
+#: doc/classes/EditorNode3DGizmo.xml:126
msgid ""
"Gets actual value of a handle. This value can be anything and used for "
"eventually undoing the motion when calling [method commit_handle]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:130
+#: doc/classes/EditorNode3DGizmo.xml:133
msgid ""
"Returns the [EditorNode3DGizmoPlugin] that owns this gizmo. It's useful to "
"retrieve materials using [method EditorNode3DGizmoPlugin.get_material]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:137
+#: doc/classes/EditorNode3DGizmo.xml:140
msgid "Returns the Node3D node associated with this gizmo."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:146
-msgid "Gets whether a handle is highlighted or not."
+#: doc/classes/EditorNode3DGizmo.xml:149
+msgid ""
+"Returns [code]true[/code] if the handle at index [code]index[/code] is "
+"highlighted by being hovered with the mouse."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:153
+#: doc/classes/EditorNode3DGizmo.xml:156
msgid ""
-"This function is called when the Node3D this gizmo refers to changes (the "
+"This function is called when the [Node3D] this gizmo refers to changes (the "
"[method Node3D.update_gizmo] is called)."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:166
+#: doc/classes/EditorNode3DGizmo.xml:169
msgid ""
"This function is used when the user drags a gizmo handle (previously added "
"with [method add_handles]) in screen coordinates.\n"
@@ -18441,6 +18761,18 @@ msgid ""
"raycasts."
msgstr ""
+#: doc/classes/EditorNode3DGizmo.xml:179
+msgid ""
+"Sets the gizmo's hidden state. If [code]true[/code], the gizmo will be "
+"hidden. If [code]false[/code], it will be shown."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:188
+msgid ""
+"Sets the reference [Node3D] node for the gizmo. [code]node[/code] must "
+"inherit from [Node3D]."
+msgstr ""
+
#: doc/classes/EditorNode3DGizmoPlugin.xml:4
msgid "Used by the editor to define Node3D gizmo types."
msgstr ""
@@ -18533,7 +18865,17 @@ msgid ""
"visibility menu."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:150
+#: doc/classes/EditorNode3DGizmoPlugin.xml:142
+msgid ""
+"Override this method to set the gizmo's priority. Higher values correspond "
+"to higher priority. If a gizmo with higher priority conflicts with another "
+"gizmo, only the gizmo with higher priority will be used.\n"
+"All built-in editor gizmos return a priority of [code]-1[/code]. If not "
+"overridden, this method will return [code]0[/code], which means custom "
+"gizmos will automatically override built-in gizmos."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:152
msgid ""
"Override this method to define which Node3D nodes have a gizmo from this "
"plugin. Whenever a [Node3D] node is added to a scene this method is called, "
@@ -18541,25 +18883,25 @@ msgid ""
"assigned and is added to this plugin's list of active gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:161
+#: doc/classes/EditorNode3DGizmoPlugin.xml:163
msgid ""
"Gets whether a handle is highlighted or not. Called for this plugin's active "
"gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:168
+#: doc/classes/EditorNode3DGizmoPlugin.xml:170
msgid ""
"Override this method to define whether Node3D with this gizmo should be "
"selecteble even when the gizmo is hidden."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:177
+#: doc/classes/EditorNode3DGizmoPlugin.xml:179
msgid ""
"Callback to redraw the provided gizmo. Called for this plugin's active "
"gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:192
+#: doc/classes/EditorNode3DGizmoPlugin.xml:194
msgid ""
"Update the value of a handle after it has been updated. Called for this "
"plugin's active gizmos."
@@ -18646,7 +18988,13 @@ msgid ""
"should be cleaned up using [code]remove_tool_menu_item(name)[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:149
+#: doc/classes/EditorPlugin.xml:151
+msgid ""
+"Registers a custom translation parser plugin for extracting translatable "
+"strings from custom files."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:158
msgid ""
"This method is called when the editor is about to save the project, switch "
"to another tab, etc. It asks the plugin to apply any pending state changes "
@@ -18655,32 +19003,32 @@ msgid ""
"must apply the shader code being written by the user to the object."
msgstr ""
-#: doc/classes/EditorPlugin.xml:163
+#: doc/classes/EditorPlugin.xml:172
msgid ""
"Clear all the state and reset the object being edited to zero. This ensures "
"your plugin does not keep editing a currently existing node, or a node from "
"the wrong scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:170
+#: doc/classes/EditorPlugin.xml:179
msgid ""
"Called by the engine when the user disables the [EditorPlugin] in the Plugin "
"tab of the project settings window."
msgstr ""
-#: doc/classes/EditorPlugin.xml:179
+#: doc/classes/EditorPlugin.xml:188
msgid ""
"This function is used for plugins that edit specific object types (nodes or "
"resources). It requests the editor to edit the given object."
msgstr ""
-#: doc/classes/EditorPlugin.xml:186
+#: doc/classes/EditorPlugin.xml:195
msgid ""
"Called by the engine when the user enables the [EditorPlugin] in the Plugin "
"tab of the project settings window."
msgstr ""
-#: doc/classes/EditorPlugin.xml:211
+#: doc/classes/EditorPlugin.xml:220
msgid ""
"Called when there is a root node in the current edited scene, [method "
"handles] is implemented and an [InputEvent] happens in the 2D viewport. "
@@ -18705,7 +19053,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:237
+#: doc/classes/EditorPlugin.xml:246
msgid ""
"Called when there is a root node in the current edited scene, [method "
"handles] is implemented and an [InputEvent] happens in the 3D viewport. "
@@ -18730,20 +19078,20 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:259
+#: doc/classes/EditorPlugin.xml:268
msgid ""
"This is for editors that edit script-based objects. You can return a list of "
"breakpoints in the format ([code]script:line[/code]), for example: "
"[code]res://path_to_script.gd:25[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:266
+#: doc/classes/EditorPlugin.xml:275
msgid ""
"Returns the [EditorInterface] object that gives you control over Godot "
"editor's window and its functionalities."
msgstr ""
-#: doc/classes/EditorPlugin.xml:273
+#: doc/classes/EditorPlugin.xml:282
msgid ""
"Override this method in your plugin to return a [Texture2D] in order to give "
"it an icon.\n"
@@ -18761,7 +19109,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:289
+#: doc/classes/EditorPlugin.xml:298
msgid ""
"Override this method in your plugin to provide the name of the plugin when "
"displayed in the Godot editor.\n"
@@ -18769,33 +19117,33 @@ msgid ""
"of the \"2D\", \"3D\", \"Script\", and \"AssetLib\" buttons."
msgstr ""
-#: doc/classes/EditorPlugin.xml:297
+#: doc/classes/EditorPlugin.xml:306
msgid ""
"Gets the Editor's dialogue used for making scripts.\n"
"[b]Note:[/b] Users can configure it before use."
msgstr ""
-#: doc/classes/EditorPlugin.xml:305
+#: doc/classes/EditorPlugin.xml:314
msgid ""
"Gets the state of your plugin editor. This is used when saving the scene (so "
"state is kept when opening it again) and for switching tabs (so state can be "
"restored when the tab returns)."
msgstr ""
-#: doc/classes/EditorPlugin.xml:312
+#: doc/classes/EditorPlugin.xml:321
msgid ""
"Gets the undo/redo object. Most actions in the editor can be undoable, so "
"use this object to make sure this happens when it's worth it."
msgstr ""
-#: doc/classes/EditorPlugin.xml:321
+#: doc/classes/EditorPlugin.xml:330
msgid ""
"Gets the GUI layout of the plugin. This is used to save the project's editor "
"layout when [method queue_save_layout] is called or the editor layout was "
"changed(For example changing the position of a dock)."
msgstr ""
-#: doc/classes/EditorPlugin.xml:330
+#: doc/classes/EditorPlugin.xml:339
msgid ""
"Implement this function if your plugin edits a specific type of object "
"(Resource or Node). If you return [code]true[/code], then you will get the "
@@ -18805,14 +19153,14 @@ msgid ""
"be called too."
msgstr ""
-#: doc/classes/EditorPlugin.xml:337
+#: doc/classes/EditorPlugin.xml:346
msgid ""
"Returns [code]true[/code] if this is a main screen editor plugin (it goes in "
"the workspace selector together with [b]2D[/b], [b]3D[/b], [b]Script[/b] and "
"[b]AssetLib[/b])."
msgstr ""
-#: doc/classes/EditorPlugin.xml:360
+#: doc/classes/EditorPlugin.xml:369
msgid ""
"This function will be called when the editor is requested to become visible. "
"It is used for plugins that edit a specific object type.\n"
@@ -18820,85 +19168,89 @@ msgid ""
"manually."
msgstr ""
-#: doc/classes/EditorPlugin.xml:368
+#: doc/classes/EditorPlugin.xml:377
msgid "Queue save the project's editor layout."
msgstr ""
-#: doc/classes/EditorPlugin.xml:377
+#: doc/classes/EditorPlugin.xml:386
msgid "Removes an Autoload [code]name[/code] from the list."
msgstr ""
-#: doc/classes/EditorPlugin.xml:386
+#: doc/classes/EditorPlugin.xml:395
msgid ""
"Removes the control from the bottom panel. You have to manually [method Node."
"queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:397
+#: doc/classes/EditorPlugin.xml:406
msgid ""
"Removes the control from the specified container. You have to manually "
"[method Node.queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:406
+#: doc/classes/EditorPlugin.xml:415
msgid ""
"Removes the control from the dock. You have to manually [method Node."
"queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:415
+#: doc/classes/EditorPlugin.xml:424
msgid "Removes a custom type added by [method add_custom_type]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:464
+#: doc/classes/EditorPlugin.xml:473
msgid "Removes a menu [code]name[/code] from [b]Project > Tools[/b]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:471
+#: doc/classes/EditorPlugin.xml:482
+msgid "Removes a registered custom translation parser plugin."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:489
msgid ""
"This method is called after the editor saves the project or when it's "
"closed. It asks the plugin to save edited external scenes/resources."
msgstr ""
-#: doc/classes/EditorPlugin.xml:484
+#: doc/classes/EditorPlugin.xml:502
msgid ""
"Use this method if you always want to receive inputs from 3D view screen "
"inside [method forward_spatial_gui_input]. It might be especially usable if "
"your plugin will want to use raycast in the scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:493
+#: doc/classes/EditorPlugin.xml:511
msgid "Restore the state saved by [method get_state]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:502
+#: doc/classes/EditorPlugin.xml:520
msgid "Restore the plugin GUI layout saved by [method get_window_layout]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:509
+#: doc/classes/EditorPlugin.xml:527
msgid "Updates the overlays of the editor (2D/3D) viewport."
msgstr ""
-#: doc/classes/EditorPlugin.xml:518
+#: doc/classes/EditorPlugin.xml:536
msgid ""
"Emitted when user changes the workspace ([b]2D[/b], [b]3D[/b], [b]Script[/"
"b], [b]AssetLib[/b]). Also works with custom screens defined by plugins."
msgstr ""
-#: doc/classes/EditorPlugin.xml:531
+#: doc/classes/EditorPlugin.xml:549
msgid ""
"Emitted when the scene is changed in the editor. The argument will return "
"the root node of the scene that has just become active. If this scene is new "
"and empty, the argument will be [code]null[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:538
+#: doc/classes/EditorPlugin.xml:556
msgid ""
"Emitted when user closes a scene. The argument is file path to a closed "
"scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:584
+#: doc/classes/EditorPlugin.xml:602
msgid "Represents the size of the [enum DockSlot] enum."
msgstr ""
@@ -18953,64 +19305,83 @@ msgid "When this virtual function is called, you must update your editor."
msgstr ""
#: doc/classes/EditorProperty.xml:76
-msgid "Used by the inspector, set when property is checkable."
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is "
+"checkable."
msgstr ""
#: doc/classes/EditorProperty.xml:79
-msgid "Used by the inspector, when the property is checked."
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is checked."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:82
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property can be "
+"deleted by the user."
msgstr ""
-#: doc/classes/EditorProperty.xml:84
-msgid "Used by the inspector, when the property must draw with error color."
+#: doc/classes/EditorProperty.xml:85
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property must draw "
+"with error color. This is used for editable children's properties."
msgstr ""
-#: doc/classes/EditorProperty.xml:87
-msgid "Used by the inspector, when the property can add keys for animation."
+#: doc/classes/EditorProperty.xml:88
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property can add "
+"keys for animation."
msgstr ""
-#: doc/classes/EditorProperty.xml:90
-msgid "Sets this property to change the label (if you want to show one)."
+#: doc/classes/EditorProperty.xml:91
+msgid "Set this property to change the label (if you want to show one)."
msgstr ""
-#: doc/classes/EditorProperty.xml:93
-msgid "Used by the inspector, when the property is read-only."
+#: doc/classes/EditorProperty.xml:94
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is read-"
+"only."
msgstr ""
-#: doc/classes/EditorProperty.xml:103
+#: doc/classes/EditorProperty.xml:104
msgid ""
"Emit it if you want multiple properties modified at the same time. Do not "
"use if added via [method EditorInspectorPlugin.parse_property]."
msgstr ""
-#: doc/classes/EditorProperty.xml:112
+#: doc/classes/EditorProperty.xml:113
msgid "Used by sub-inspectors. Emit it if what was selected was an Object ID."
msgstr ""
-#: doc/classes/EditorProperty.xml:121
+#: doc/classes/EditorProperty.xml:122
msgid ""
"Do not emit this manually, use the [method emit_changed] method instead."
msgstr ""
-#: doc/classes/EditorProperty.xml:130
+#: doc/classes/EditorProperty.xml:131
msgid "Emitted when a property was checked. Used internally."
msgstr ""
-#: doc/classes/EditorProperty.xml:143
+#: doc/classes/EditorProperty.xml:138
+msgid "Emitted when a property was deleted. Used internally."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:145
msgid ""
"Emit it if you want to add this value as an animation key (check for keying "
"being enabled first)."
msgstr ""
-#: doc/classes/EditorProperty.xml:152
+#: doc/classes/EditorProperty.xml:154
msgid "Emit it if you want to key a property with a single value."
msgstr ""
-#: doc/classes/EditorProperty.xml:161
+#: doc/classes/EditorProperty.xml:163
msgid ""
"If you want a sub-resource to be edited, emit this signal with the resource."
msgstr ""
-#: doc/classes/EditorProperty.xml:170
+#: doc/classes/EditorProperty.xml:172
msgid "Emitted when selected. Used internally."
msgstr ""
@@ -19295,17 +19666,26 @@ msgstr ""
msgid ""
"Object that holds the project-independent editor settings. These settings "
"are generally visible in the [b]Editor > Editor Settings[/b] menu.\n"
-"Accessing the settings is done by using the regular [Object] API, such as:\n"
-"[codeblock]\n"
-"settings.set(prop,value)\n"
-"settings.get(prop)\n"
-"list_of_settings = settings.get_property_list()\n"
+"Property names use slash delimiters to distinguish sections. Setting values "
+"can be of any [Variant] type. It's recommended to use [code]snake_case[/"
+"code] for editor settings to be consistent with the Godot editor itself.\n"
+"Accessing the settings can be done using the following methods, such as:\n"
+"[codeblock]\n"
+"# `settings.set(\"some/property\", value)` also works as this class "
+"overrides `_set()` internally.\n"
+"settings.set_setting(\"some/property\",value)\n"
+"\n"
+"# `settings.get(\"some/property\", value)` also works as this class "
+"overrides `_get()` internally.\n"
+"settings.get_setting(\"some/property\")\n"
+"\n"
+"var list_of_settings = settings.get_property_list()\n"
"[/codeblock]\n"
"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
"the singleton using [method EditorInterface.get_editor_settings]."
msgstr ""
-#: doc/classes/EditorSettings.xml:25
+#: doc/classes/EditorSettings.xml:30
msgid ""
"Adds a custom property info to a property. The dictionary must contain:\n"
"- [code]name[/code]: [String] (the name of the property)\n"
@@ -19327,52 +19707,173 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorSettings.xml:50
-msgid "Erase a given setting (pass full property path)."
+#: doc/classes/EditorSettings.xml:55
+msgid "Erases the setting whose name is specified by [code]property[/code]."
msgstr ""
-#: doc/classes/EditorSettings.xml:57
-msgid "Gets the list of favorite files and directories for this project."
+#: doc/classes/EditorSettings.xml:62
+msgid "Returns the list of favorite files and directories for this project."
msgstr ""
-#: doc/classes/EditorSettings.xml:76
+#: doc/classes/EditorSettings.xml:75
msgid ""
-"Gets the specific project settings path. Projects all have a unique sub-"
-"directory inside the settings path where project specific settings are saved."
+"Returns project-specific metadata for the [code]section[/code] and "
+"[code]key[/code] specified. If the metadata doesn't exist, [code]default[/"
+"code] will be returned instead. See also [method set_project_metadata]."
msgstr ""
-#: doc/classes/EditorSettings.xml:83
+#: doc/classes/EditorSettings.xml:82
msgid ""
-"Gets the list of recently visited folders in the file dialog for this "
+"Returns the project-specific settings path. Projects all have a unique "
+"subdirectory inside the settings path where project-specific settings are "
+"saved."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:89
+msgid ""
+"Returns the list of recently visited folders in the file dialog for this "
"project."
msgstr ""
#: doc/classes/EditorSettings.xml:98
msgid ""
+"Returns the value of the setting specified by [code]name[/code]. This is "
+"equivalent to using [method Object.get] on the EditorSettings instance."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:105
+msgid ""
"Gets the global settings path for the engine. Inside this path, you can find "
"some standard paths such as:\n"
"[code]settings/tmp[/code] - Used for temporary storage of files\n"
"[code]settings/templates[/code] - Where export templates are located"
msgstr ""
-#: doc/classes/EditorSettings.xml:133
+#: doc/classes/EditorSettings.xml:116
+msgid ""
+"Returns [code]true[/code] if the setting specified by [code]name[/code] "
+"exists, [code]false[/code] otherwise."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:125
+msgid ""
+"Returns [code]true[/code] if the setting specified by [code]name[/code] can "
+"have its value reverted to the default value, [code]false[/code] otherwise. "
+"When this method returns [code]true[/code], a Revert button will display "
+"next to the setting in the Editor Settings."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:134
+msgid ""
+"Returns the default value of the setting specified by [code]name[/code]. "
+"This is the value that would be applied when clicking the Revert button in "
+"the Editor Settings."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:143
msgid "Sets the list of favorite files and directories for this project."
msgstr ""
-#: doc/classes/EditorSettings.xml:166
+#: doc/classes/EditorSettings.xml:156
+msgid ""
+"Sets the initial value of the setting specified by [code]name[/code] to "
+"[code]value[/code]. This is used to provide a value for the Revert button in "
+"the Editor Settings. If [code]update_current[/code] is true, the current "
+"value of the setting will be set to [code]value[/code] as well."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:169
+msgid ""
+"Sets project-specific metadata with the [code]section[/code], [code]key[/"
+"code] and [code]data[/code] specified. This metadata is stored outside the "
+"project folder and therefore won't be checked into version control. See also "
+"[method get_project_metadata]."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:178
msgid ""
"Sets the list of recently visited folders in the file dialog for this "
"project."
msgstr ""
-#: doc/classes/EditorSettings.xml:183
-msgid "Emitted when editor settings change."
+#: doc/classes/EditorSettings.xml:189
+msgid ""
+"Sets the [code]value[/code] of the setting specified by [code]name[/code]. "
+"This is equivalent to using [method Object.set] on the EditorSettings "
+"instance."
msgstr ""
-#: doc/classes/EditorSettings.xml:189
+#: doc/classes/EditorSettings.xml:196
+msgid "Emitted after any editor setting has changed."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:202
msgid ""
-"Emitted when editor settings change. It used by various editor plugins to "
-"update their visuals on theme changes or logic on configuration changes."
+"Emitted after any editor setting has changed. It's used by various editor "
+"plugins to update their visuals on theme changes or logic on configuration "
+"changes."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:4
+msgid ""
+"Plugin for adding custom parsers to extract strings that are to be "
+"translated from custom files (.csv, .json etc.)."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:7
+msgid ""
+"Plugins are registered via [method EditorPlugin."
+"add_translation_parser_plugin] method. To define the parsing and string "
+"extraction logic, override the [method parse_file] method in script.\n"
+"The extracted strings will be written into a POT file selected by user under "
+"\"POT Generation\" in \"Localization\" tab in \"Project Settings\" menu.\n"
+"Below shows an example of a custom parser that extracts strings in a CSV "
+"file to write into a POT.\n"
+"[codeblock]\n"
+"tool\n"
+"extends EditorTranslationParserPlugin\n"
+"\n"
+"\n"
+"func parse_file(path, extracted_strings):\n"
+" var file = File.new()\n"
+" file.open(path, File.READ)\n"
+" var text = file.get_as_text()\n"
+" var split_strs = text.split(\",\", false, 0)\n"
+" for s in split_strs:\n"
+" extracted_strings.append(s)\n"
+" #print(\"Extracted string: \" + s)\n"
+"\n"
+"\n"
+"func get_recognized_extensions():\n"
+" return [\"csv\"]\n"
+"[/codeblock]\n"
+"[b]Note:[/b] If you override parsing logic for standard script types "
+"(GDScript, C#, etc.), it would be better to load the [code]path[/code] "
+"argument using [method ResourceLoader.load]. This is because built-in "
+"scripts are loaded as [Resource] type, not [File] type.\n"
+"For example:\n"
+"[codeblock]\n"
+"func parse_file(path, extracted_strings):\n"
+" var res = ResourceLoader.load(path, \"Script\")\n"
+" var text = res.get_source_code()\n"
+" # Parsing logic.\n"
+"\n"
+"\n"
+"func get_recognized_extensions():\n"
+" return [\"gd\"]\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:48
+msgid ""
+"Gets the list of file extensions to associate with this parser, e.g. [code]"
+"[\"csv\"][/code]."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:59
+msgid ""
+"Override this method to define a custom parsing logic to extract the "
+"translatable strings."
msgstr ""
#: doc/classes/EditorVCSInterface.xml:4
@@ -19983,15 +20484,15 @@ msgid ""
"to 1.3 to compensate for the lack of HDR rendering."
msgstr ""
-#: doc/classes/Environment.xml:190
+#: doc/classes/Environment.xml:214
msgid "The [Sky] resource used for this [Environment]."
msgstr ""
-#: doc/classes/Environment.xml:197
+#: doc/classes/Environment.xml:221
msgid "The depth tolerance for screen-space reflections."
msgstr ""
-#: doc/classes/Environment.xml:200
+#: doc/classes/Environment.xml:224
msgid ""
"If [code]true[/code], screen-space reflections are enabled. Screen-space "
"reflections are more accurate than reflections from [GIProbe]s or "
@@ -19999,48 +20500,48 @@ msgid ""
"others."
msgstr ""
-#: doc/classes/Environment.xml:203
+#: doc/classes/Environment.xml:227
msgid ""
"The fade-in distance for screen-space reflections. Affects the area from the "
"reflected material to the screen-space reflection)."
msgstr ""
-#: doc/classes/Environment.xml:206
+#: doc/classes/Environment.xml:230
msgid ""
"The fade-out distance for screen-space reflections. Affects the area from "
"the screen-space reflection to the \"global\" reflection."
msgstr ""
-#: doc/classes/Environment.xml:209
+#: doc/classes/Environment.xml:233
msgid ""
"The maximum number of steps for screen-space reflections. Higher values are "
"slower."
msgstr ""
-#: doc/classes/Environment.xml:212
+#: doc/classes/Environment.xml:236
msgid ""
"The screen-space ambient occlusion intensity on materials that have an AO "
"texture defined. Values higher than [code]0[/code] will make the SSAO effect "
"visible in areas darkened by AO textures."
msgstr ""
-#: doc/classes/Environment.xml:215
+#: doc/classes/Environment.xml:239
msgid ""
"The screen-space ambient occlusion bias. This should be kept high enough to "
"prevent \"smooth\" curves from being affected by ambient occlusion."
msgstr ""
-#: doc/classes/Environment.xml:218
+#: doc/classes/Environment.xml:242
msgid ""
"The screen-space ambient occlusion blur quality. See [enum SSAOBlur] for "
"possible values."
msgstr ""
-#: doc/classes/Environment.xml:221
+#: doc/classes/Environment.xml:245
msgid "The screen-space ambient occlusion edge sharpness."
msgstr ""
-#: doc/classes/Environment.xml:224
+#: doc/classes/Environment.xml:248
msgid ""
"If [code]true[/code], the screen-space ambient occlusion effect is enabled. "
"This darkens objects' corners and cavities to simulate ambient light not "
@@ -20051,13 +20552,13 @@ msgid ""
"issues."
msgstr ""
-#: doc/classes/Environment.xml:227
+#: doc/classes/Environment.xml:251
msgid ""
"The primary screen-space ambient occlusion intensity. See also [member "
"ssao_radius]."
msgstr ""
-#: doc/classes/Environment.xml:230
+#: doc/classes/Environment.xml:254
msgid ""
"The screen-space ambient occlusion intensity in direct light. In real life, "
"ambient occlusion only applies to indirect light, which means its effects "
@@ -20065,46 +20566,46 @@ msgid ""
"the SSAO effect visible in direct light."
msgstr ""
-#: doc/classes/Environment.xml:233
+#: doc/classes/Environment.xml:257
msgid "The primary screen-space ambient occlusion radius."
msgstr ""
-#: doc/classes/Environment.xml:236
+#: doc/classes/Environment.xml:260
msgid "The default exposure used for tonemapping."
msgstr ""
-#: doc/classes/Environment.xml:239
+#: doc/classes/Environment.xml:263
msgid ""
"The tonemapping mode to use. Tonemapping is the process that \"converts\" "
"HDR values to be suitable for rendering on a LDR display. (Godot doesn't "
"support rendering on HDR displays yet.)"
msgstr ""
-#: doc/classes/Environment.xml:242
+#: doc/classes/Environment.xml:266
msgid ""
"The white reference value for tonemapping. Only effective if the [member "
"tonemap_mode] isn't set to [constant TONE_MAPPER_LINEAR]."
msgstr ""
-#: doc/classes/Environment.xml:247
+#: doc/classes/Environment.xml:271
msgid ""
"Clears the background using the clear color defined in [member "
"ProjectSettings.rendering/environment/default_clear_color]."
msgstr ""
-#: doc/classes/Environment.xml:250
+#: doc/classes/Environment.xml:274
msgid "Clears the background using a custom clear color."
msgstr ""
-#: doc/classes/Environment.xml:253
+#: doc/classes/Environment.xml:277
msgid "Displays a user-defined sky in the background."
msgstr ""
-#: doc/classes/Environment.xml:256
+#: doc/classes/Environment.xml:280
msgid "Displays a [CanvasLayer] in the background."
msgstr ""
-#: doc/classes/Environment.xml:259
+#: doc/classes/Environment.xml:283
msgid ""
"Keeps on screen every pixel drawn in the background. This is the fastest "
"background mode, but it can only be safely used in fully-interior scenes (no "
@@ -20112,107 +20613,107 @@ msgid ""
"is visible, \"ghost trail\" artifacts will be visible when moving the camera."
msgstr ""
-#: doc/classes/Environment.xml:262 doc/classes/RenderingServer.xml:3446
+#: doc/classes/Environment.xml:286 doc/classes/RenderingServer.xml:3457
msgid "Displays a camera feed in the background."
msgstr ""
-#: doc/classes/Environment.xml:265
+#: doc/classes/Environment.xml:289
msgid "Represents the size of the [enum BGMode] enum."
msgstr ""
-#: doc/classes/Environment.xml:268 doc/classes/RenderingServer.xml:3452
+#: doc/classes/Environment.xml:292 doc/classes/RenderingServer.xml:3463
msgid ""
"Gather ambient light from whichever source is specified as the background."
msgstr ""
-#: doc/classes/Environment.xml:271 doc/classes/RenderingServer.xml:3455
+#: doc/classes/Environment.xml:295 doc/classes/RenderingServer.xml:3466
msgid "Disable ambient light."
msgstr ""
-#: doc/classes/Environment.xml:274 doc/classes/RenderingServer.xml:3458
+#: doc/classes/Environment.xml:298 doc/classes/RenderingServer.xml:3469
msgid "Specify a specific [Color] for ambient light."
msgstr ""
-#: doc/classes/Environment.xml:277 doc/classes/RenderingServer.xml:3461
+#: doc/classes/Environment.xml:301 doc/classes/RenderingServer.xml:3472
msgid ""
"Gather ambient light from the [Sky] regardless of what the background is."
msgstr ""
-#: doc/classes/Environment.xml:280 doc/classes/RenderingServer.xml:3464
+#: doc/classes/Environment.xml:304 doc/classes/RenderingServer.xml:3475
msgid "Use the background for reflections."
msgstr ""
-#: doc/classes/Environment.xml:283 doc/classes/RenderingServer.xml:3467
+#: doc/classes/Environment.xml:307 doc/classes/RenderingServer.xml:3478
msgid "Disable reflections."
msgstr ""
-#: doc/classes/Environment.xml:286 doc/classes/RenderingServer.xml:3470
+#: doc/classes/Environment.xml:310 doc/classes/RenderingServer.xml:3481
msgid "Use the [Sky] for reflections regardless of what the background is."
msgstr ""
-#: doc/classes/Environment.xml:289 doc/classes/RenderingServer.xml:3473
+#: doc/classes/Environment.xml:313
+msgid ""
+"Linear tonemapper operator. Reads the linear data and passes it on "
+"unmodified."
+msgstr ""
+
+#: doc/classes/Environment.xml:316
+msgid ""
+"Reinhardt tonemapper operator. Performs a variation on rendered pixels' "
+"colors by this formula: [code]color = color / (1 + color)[/code]."
+msgstr ""
+
+#: doc/classes/Environment.xml:319
+msgid "Filmic tonemapper operator."
+msgstr ""
+
+#: doc/classes/Environment.xml:322
+msgid "Academy Color Encoding System tonemapper operator."
+msgstr ""
+
+#: doc/classes/Environment.xml:325 doc/classes/RenderingServer.xml:3484
msgid ""
"Additive glow blending mode. Mostly used for particles, glows (bloom), lens "
"flare, bright sources."
msgstr ""
-#: doc/classes/Environment.xml:292 doc/classes/RenderingServer.xml:3476
+#: doc/classes/Environment.xml:328 doc/classes/RenderingServer.xml:3487
msgid ""
"Screen glow blending mode. Increases brightness, used frequently with bloom."
msgstr ""
-#: doc/classes/Environment.xml:295 doc/classes/RenderingServer.xml:3479
+#: doc/classes/Environment.xml:331 doc/classes/RenderingServer.xml:3490
msgid ""
"Soft light glow blending mode. Modifies contrast, exposes shadows and "
"highlights (vivid bloom)."
msgstr ""
-#: doc/classes/Environment.xml:298 doc/classes/RenderingServer.xml:3482
+#: doc/classes/Environment.xml:334 doc/classes/RenderingServer.xml:3493
msgid ""
"Replace glow blending mode. Replaces all pixels' color by the glow value. "
"This can be used to simulate a full-screen blur effect by tweaking the glow "
"parameters to match the original image's brightness."
msgstr ""
-#: doc/classes/Environment.xml:301 doc/classes/RenderingServer.xml:3485
+#: doc/classes/Environment.xml:337 doc/classes/RenderingServer.xml:3496
msgid ""
"Mixes the glow with the underlying color to avoid increasing brightness as "
"much while still maintaining a glow effect."
msgstr ""
-#: doc/classes/Environment.xml:304
-msgid ""
-"Linear tonemapper operator. Reads the linear data and passes it on "
-"unmodified."
-msgstr ""
-
-#: doc/classes/Environment.xml:307
-msgid ""
-"Reinhardt tonemapper operator. Performs a variation on rendered pixels' "
-"colors by this formula: [code]color = color / (1 + color)[/code]."
-msgstr ""
-
-#: doc/classes/Environment.xml:310
-msgid "Filmic tonemapper operator."
-msgstr ""
-
-#: doc/classes/Environment.xml:313
-msgid "Academy Color Encoding System tonemapper operator."
-msgstr ""
-
-#: doc/classes/Environment.xml:316
+#: doc/classes/Environment.xml:340
msgid "No blur for the screen-space ambient occlusion effect (fastest)."
msgstr ""
-#: doc/classes/Environment.xml:319
+#: doc/classes/Environment.xml:343
msgid "1×1 blur for the screen-space ambient occlusion effect."
msgstr ""
-#: doc/classes/Environment.xml:322
+#: doc/classes/Environment.xml:346
msgid "2×2 blur for the screen-space ambient occlusion effect."
msgstr ""
-#: doc/classes/Environment.xml:325
+#: doc/classes/Environment.xml:349
msgid ""
"3×3 blur for the screen-space ambient occlusion effect. Increases the radius "
"of the blur for a smoother look, but can result in checkerboard-like "
@@ -20297,14 +20798,17 @@ msgid ""
" var content = file.get_as_text()\n"
" file.close()\n"
" return content\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"In the example above, the file will be saved in the user data folder as "
+"specified in the [url=https://docs.godotengine.org/en/latest/tutorials/io/"
+"data_paths.html]Data paths[/url] documentation."
msgstr ""
-#: doc/classes/File.xml:32
+#: doc/classes/File.xml:33
msgid "Closes the currently opened file."
msgstr ""
-#: doc/classes/File.xml:39
+#: doc/classes/File.xml:40
msgid ""
"Returns [code]true[/code] if the file cursor has read past the end of the "
"file.\n"
@@ -20315,7 +20819,7 @@ msgid ""
"get_position] to implement a custom logic."
msgstr ""
-#: doc/classes/File.xml:49
+#: doc/classes/File.xml:50
msgid ""
"Returns [code]true[/code] if the file exists in the given path.\n"
"[b]Note:[/b] Many resources types are imported (e.g. textures or sound "
@@ -20328,41 +20832,41 @@ msgid ""
"source asset is present in [code]res://[/code], but fail when exported)."
msgstr ""
-#: doc/classes/File.xml:57
+#: doc/classes/File.xml:58
msgid ""
"Returns the next 16 bits from the file as an integer. See [method store_16] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:64
+#: doc/classes/File.xml:65
msgid ""
"Returns the next 32 bits from the file as an integer. See [method store_32] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:71
+#: doc/classes/File.xml:72
msgid ""
"Returns the next 64 bits from the file as an integer. See [method store_64] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:78
+#: doc/classes/File.xml:79
msgid ""
"Returns the next 8 bits from the file as an integer. See [method store_8] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:85
+#: doc/classes/File.xml:86
msgid ""
"Returns the whole file as a [String].\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:95
+#: doc/classes/File.xml:96
msgid "Returns next [code]len[/code] bytes of the file as a [PackedByteArray]."
msgstr ""
-#: doc/classes/File.xml:104
+#: doc/classes/File.xml:105
msgid ""
"Returns the next value of the file in CSV (Comma-Separated Values) format. "
"You can pass a different delimiter [code]delim[/code] to use other than the "
@@ -20371,37 +20875,37 @@ msgid ""
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:112
+#: doc/classes/File.xml:113
msgid "Returns the next 64 bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:119
+#: doc/classes/File.xml:120
msgid ""
"Returns the last error that happened when trying to perform operations. "
"Compare with the [code]ERR_FILE_*[/code] constants from [enum Error]."
msgstr ""
-#: doc/classes/File.xml:126
+#: doc/classes/File.xml:127
msgid "Returns the next 32 bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:133
+#: doc/classes/File.xml:134
msgid "Returns the size of the file in bytes."
msgstr ""
-#: doc/classes/File.xml:140
+#: doc/classes/File.xml:141
msgid ""
"Returns the next line of the file as a [String].\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:150
+#: doc/classes/File.xml:151
msgid ""
"Returns an MD5 String representing the file at the given path or an empty "
"[String] on failure."
msgstr ""
-#: doc/classes/File.xml:159
+#: doc/classes/File.xml:160
msgid ""
"Returns the last time the [code]file[/code] was modified in unix timestamp "
"format or returns a [String] \"ERROR IN [code]file[/code]\". This unix "
@@ -20409,35 +20913,35 @@ msgid ""
"get_datetime_from_unix_time]."
msgstr ""
-#: doc/classes/File.xml:166
+#: doc/classes/File.xml:167
msgid ""
"Returns a [String] saved in Pascal format from the file.\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:174
+#: doc/classes/File.xml:175
msgid "Returns the path as a [String] for the current open file."
msgstr ""
-#: doc/classes/File.xml:181
+#: doc/classes/File.xml:182
msgid "Returns the absolute path as a [String] for the current open file."
msgstr ""
-#: doc/classes/File.xml:188
+#: doc/classes/File.xml:189
msgid "Returns the file cursor's position."
msgstr ""
-#: doc/classes/File.xml:195
+#: doc/classes/File.xml:196
msgid "Returns the next bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:204
+#: doc/classes/File.xml:205
msgid ""
"Returns a SHA-256 [String] representing the file at the given path or an "
"empty [String] on failure."
msgstr ""
-#: doc/classes/File.xml:213
+#: doc/classes/File.xml:214
msgid ""
"Returns the next [Variant] value from the file. If [code]allow_objects[/"
"code] is [code]true[/code], decoding objects is allowed.\n"
@@ -20446,37 +20950,38 @@ msgid ""
"to avoid potential security threats such as remote code execution."
msgstr ""
-#: doc/classes/File.xml:221
+#: doc/classes/File.xml:222
msgid "Returns [code]true[/code] if the file is currently opened."
msgstr ""
-#: doc/classes/File.xml:232
+#: doc/classes/File.xml:233
msgid "Opens the file for writing or reading, depending on the flags."
msgstr ""
-#: doc/classes/File.xml:245
+#: doc/classes/File.xml:246
msgid "Opens a compressed file for reading or writing."
msgstr ""
-#: doc/classes/File.xml:258
+#: doc/classes/File.xml:259
msgid ""
"Opens an encrypted file in write or read mode. You need to pass a binary key "
-"to encrypt/decrypt it."
+"to encrypt/decrypt it.\n"
+"[b]Note:[/b] The provided key must be 32 bytes long."
msgstr ""
-#: doc/classes/File.xml:271
+#: doc/classes/File.xml:273
msgid ""
"Opens an encrypted file in write or read mode. You need to pass a password "
"to encrypt/decrypt it."
msgstr ""
-#: doc/classes/File.xml:280
+#: doc/classes/File.xml:282
msgid ""
"Changes the file reading/writing cursor to the specified position (in bytes "
"from the beginning of the file)."
msgstr ""
-#: doc/classes/File.xml:289
+#: doc/classes/File.xml:291
msgid ""
"Changes the file reading/writing cursor to the specified position (in bytes "
"from the end of the file).\n"
@@ -20484,7 +20989,7 @@ msgid ""
"cursor will be at the end of the file."
msgstr ""
-#: doc/classes/File.xml:299
+#: doc/classes/File.xml:301
msgid ""
"Stores an integer as 16 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, "
@@ -20512,7 +21017,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/File.xml:328
+#: doc/classes/File.xml:330
msgid ""
"Stores an integer as 32 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, "
@@ -20521,14 +21026,14 @@ msgid ""
"(see [method store_16] for an example)."
msgstr ""
-#: doc/classes/File.xml:339
+#: doc/classes/File.xml:341
msgid ""
"Stores an integer as 64 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] must lie in the interval [code][-2^63, "
"2^63 - 1][/code] (i.e. be a valid [int] value)."
msgstr ""
-#: doc/classes/File.xml:349
+#: doc/classes/File.xml:351
msgid ""
"Stores an integer as 8 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, 255]"
@@ -20537,11 +21042,11 @@ msgid ""
"(see [method store_16] for an example)."
msgstr ""
-#: doc/classes/File.xml:360
+#: doc/classes/File.xml:362
msgid "Stores the given array of bytes in the file."
msgstr ""
-#: doc/classes/File.xml:371
+#: doc/classes/File.xml:373
msgid ""
"Store the given [PackedStringArray] in the file as a line formatted in the "
"CSV (Comma-Separated Values) format. You can pass a different delimiter "
@@ -20550,45 +21055,45 @@ msgid ""
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:381
+#: doc/classes/File.xml:383
msgid "Stores a floating-point number as 64 bits in the file."
msgstr ""
-#: doc/classes/File.xml:390
+#: doc/classes/File.xml:392
msgid "Stores a floating-point number as 32 bits in the file."
msgstr ""
-#: doc/classes/File.xml:399
+#: doc/classes/File.xml:401
msgid ""
"Stores the given [String] as a line in the file.\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:409
+#: doc/classes/File.xml:411
msgid ""
"Stores the given [String] as a line in the file in Pascal format (i.e. also "
"store the length of the string).\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:419
+#: doc/classes/File.xml:421
msgid "Stores a floating-point number in the file."
msgstr ""
-#: doc/classes/File.xml:428
+#: doc/classes/File.xml:430
msgid ""
"Stores the given [String] in the file.\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:440
+#: doc/classes/File.xml:442
msgid ""
"Stores any Variant value in the file. If [code]full_objects[/code] is "
"[code]true[/code], encoding objects is allowed (and can potentially include "
"code)."
msgstr ""
-#: doc/classes/File.xml:446
+#: doc/classes/File.xml:448
msgid ""
"If [code]true[/code], the file's endianness is swapped. Use this if you're "
"dealing with files written on big-endian machines.\n"
@@ -20596,44 +21101,44 @@ msgid ""
"reset to [code]false[/code] whenever you open the file."
msgstr ""
-#: doc/classes/File.xml:452
+#: doc/classes/File.xml:454
msgid "Opens the file for read operations."
msgstr ""
-#: doc/classes/File.xml:455
+#: doc/classes/File.xml:457
msgid ""
"Opens the file for write operations. Create it if the file does not exist "
"and truncate if it exists."
msgstr ""
-#: doc/classes/File.xml:458
+#: doc/classes/File.xml:460
msgid ""
"Opens the file for read and write operations. Does not truncate the file."
msgstr ""
-#: doc/classes/File.xml:461
+#: doc/classes/File.xml:463
msgid ""
"Opens the file for read and write operations. Create it if the file does not "
"exist and truncate if it exists."
msgstr ""
-#: doc/classes/File.xml:464
+#: doc/classes/File.xml:466
msgid "Uses the [url=http://fastlz.org/]FastLZ[/url] compression method."
msgstr ""
-#: doc/classes/File.xml:467
+#: doc/classes/File.xml:469
msgid ""
"Uses the [url=https://en.wikipedia.org/wiki/DEFLATE]DEFLATE[/url] "
"compression method."
msgstr ""
-#: doc/classes/File.xml:470
+#: doc/classes/File.xml:472
msgid ""
"Uses the [url=https://facebook.github.io/zstd/]Zstandard[/url] compression "
"method."
msgstr ""
-#: doc/classes/File.xml:473
+#: doc/classes/File.xml:475
msgid "Uses the [url=https://www.gzip.org/]gzip[/url] compression method."
msgstr ""
@@ -20849,10 +21354,11 @@ msgid ""
"Draw [code]string[/code] into a canvas item using the font at a given "
"position, with [code]modulate[/code] color, and optionally clipping the "
"width. [code]position[/code] specifies the baseline, not the top. To draw "
-"from the top, [i]ascent[/i] must be added to the Y axis."
+"from the top, [i]ascent[/i] must be added to the Y axis.\n"
+"See also [method CanvasItem.draw_string]."
msgstr ""
-#: doc/classes/Font.xml:47
+#: doc/classes/Font.xml:48
msgid ""
"Draw character [code]char[/code] into a canvas item using the font at a "
"given position, with [code]modulate[/code] color, and optionally kerning if "
@@ -20862,39 +21368,39 @@ msgid ""
"making this function useful for drawing strings character by character."
msgstr ""
-#: doc/classes/Font.xml:54
+#: doc/classes/Font.xml:55
msgid "Returns the font ascent (number of pixels above the baseline)."
msgstr ""
-#: doc/classes/Font.xml:65
+#: doc/classes/Font.xml:66
msgid ""
"Returns the size of a character, optionally taking kerning into account if "
"the next character is provided."
msgstr ""
-#: doc/classes/Font.xml:72
+#: doc/classes/Font.xml:73
msgid "Returns the font descent (number of pixels below the baseline)."
msgstr ""
-#: doc/classes/Font.xml:79
+#: doc/classes/Font.xml:80
msgid "Returns the total font height (ascent plus descent) in pixels."
msgstr ""
-#: doc/classes/Font.xml:88
+#: doc/classes/Font.xml:89
msgid "Returns the size of a string, taking kerning and advance into account."
msgstr ""
-#: doc/classes/Font.xml:99
+#: doc/classes/Font.xml:100
msgid ""
"Returns the size that the string would have with word wrapping enabled with "
"a fixed [code]width[/code]."
msgstr ""
-#: doc/classes/Font.xml:106
+#: doc/classes/Font.xml:107
msgid "Returns [code]true[/code] if the font has an outline."
msgstr ""
-#: doc/classes/Font.xml:119
+#: doc/classes/Font.xml:120
msgid ""
"After editing a font (changing size, ascent, char rects, etc.). Call this "
"function to propagate changes to controls that might use it."
@@ -21066,13 +21572,14 @@ msgstr ""
#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:7
msgid ""
-"Calling [method @GDScript.yield] within a function will cause that function "
-"to yield and return its current state as an object of this type. The yielded "
+"FIXME: Outdated docs as of GDScript rewrite in 4.0.\n"
+"Calling [code]yield[/code] within a function will cause that function to "
+"yield and return its current state as an object of this type. The yielded "
"function call can then be resumed later by calling [method resume] on this "
"state object."
msgstr ""
-#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:18
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:19
msgid ""
"Check whether the function call may be resumed. This is not the case if the "
"function state was already resumed.\n"
@@ -21083,12 +21590,12 @@ msgid ""
"script have survived up to that point."
msgstr ""
-#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:28
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:29
msgid ""
"Resume execution of the yielded function call.\n"
-"If handed an argument, return the argument from the [method @GDScript.yield] "
-"call in the yielded function call. You can pass e.g. an [Array] to hand "
-"multiple arguments.\n"
+"If handed an argument, return the argument from the [code]yield[/code] call "
+"in the yielded function call. You can pass e.g. an [Array] to hand multiple "
+"arguments.\n"
"This function returns what the resumed function call returns, possibly "
"another function state if yielded again."
msgstr ""
@@ -21657,10 +22164,20 @@ msgid ""
"code], see [enum PolyJoinType].\n"
"The operation may result in an outer polygon (boundary) and inner polygon "
"(hole) produced which could be distinguished by calling [method "
-"is_polygon_clockwise]."
+"is_polygon_clockwise].\n"
+"[b]Note:[/b] To translate the polygon's vertices specifically, use the "
+"[method Transform2D.xform] method:\n"
+"[codeblock]\n"
+"var polygon = PackedVector2Array([Vector2(0, 0), Vector2(100, 0), "
+"Vector2(100, 100), Vector2(0, 100)])\n"
+"var offset = Vector2(50, 50)\n"
+"polygon = Transform2D(0, offset).xform(polygon)\n"
+"print(polygon) # prints [Vector2(50, 50), Vector2(150, 50), Vector2(150, "
+"150), Vector2(50, 150)]\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/Geometry2D.xml:217
+#: doc/classes/Geometry2D.xml:224
msgid ""
"Inflates or deflates [code]polyline[/code] by [code]delta[/code] units "
"(pixels), producing polygons. If [code]delta[/code] is positive, makes the "
@@ -21676,13 +22193,13 @@ msgid ""
"is_polygon_clockwise]."
msgstr ""
-#: doc/classes/Geometry2D.xml:235
+#: doc/classes/Geometry2D.xml:242
msgid ""
"Returns if [code]point[/code] is inside the triangle specified by [code]a[/"
"code], [code]b[/code] and [code]c[/code]."
msgstr ""
-#: doc/classes/Geometry2D.xml:250
+#: doc/classes/Geometry2D.xml:257
msgid ""
"Checks if the two segments ([code]from_a[/code], [code]to_a[/code]) and "
"([code]from_b[/code], [code]to_b[/code]) intersect. If yes, return the point "
@@ -21690,7 +22207,7 @@ msgid ""
"empty [Variant]."
msgstr ""
-#: doc/classes/Geometry2D.xml:259
+#: doc/classes/Geometry2D.xml:266
msgid ""
"Triangulates the area specified by discrete set of [code]points[/code] such "
"that no point is inside the circumcircle of any resulting triangle. Returns "
@@ -21701,7 +22218,7 @@ msgid ""
"[PackedInt32Array] is returned."
msgstr ""
-#: doc/classes/Geometry2D.xml:268
+#: doc/classes/Geometry2D.xml:275
msgid ""
"Triangulates the polygon specified by the points in [code]polygon[/code]. "
"Returns a [PackedInt32Array] where each triangle consists of three "
@@ -21711,40 +22228,40 @@ msgid ""
"[PackedInt32Array] is returned."
msgstr ""
-#: doc/classes/Geometry2D.xml:274
+#: doc/classes/Geometry2D.xml:281
msgid ""
"Create regions where either subject or clip polygons (or both) are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:277
+#: doc/classes/Geometry2D.xml:284
msgid ""
"Create regions where subject polygons are filled except where clip polygons "
"are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:280
+#: doc/classes/Geometry2D.xml:287
msgid "Create regions where both subject and clip polygons are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:283
+#: doc/classes/Geometry2D.xml:290
msgid ""
"Create regions where either subject or clip polygons are filled but not "
"where both are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:286
+#: doc/classes/Geometry2D.xml:293
msgid ""
"Squaring is applied uniformally at all convex edge joins at [code]1 * delta[/"
"code]."
msgstr ""
-#: doc/classes/Geometry2D.xml:289
+#: doc/classes/Geometry2D.xml:296
msgid ""
"While flattened paths can never perfectly trace an arc, they are "
"approximated by a series of arc chords."
msgstr ""
-#: doc/classes/Geometry2D.xml:292
+#: doc/classes/Geometry2D.xml:299
msgid ""
"There's a necessary limit to mitered joins since offsetting edges that join "
"at very acute angles will produce excessively long and narrow \"spikes\". "
@@ -21752,27 +22269,27 @@ msgid ""
"distance, \"square\" joining is applied."
msgstr ""
-#: doc/classes/Geometry2D.xml:295
+#: doc/classes/Geometry2D.xml:302
msgid ""
"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
"as a polygon."
msgstr ""
-#: doc/classes/Geometry2D.xml:298
+#: doc/classes/Geometry2D.xml:305
msgid ""
"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
"as a polyline."
msgstr ""
-#: doc/classes/Geometry2D.xml:301
+#: doc/classes/Geometry2D.xml:308
msgid "Endpoints are squared off with no extension."
msgstr ""
-#: doc/classes/Geometry2D.xml:304
+#: doc/classes/Geometry2D.xml:311
msgid "Endpoints are squared off and extended by [code]delta[/code] units."
msgstr ""
-#: doc/classes/Geometry2D.xml:307
+#: doc/classes/Geometry2D.xml:314
msgid "Endpoints are rounded off and extended by [code]delta[/code] units."
msgstr ""
@@ -22002,7 +22519,7 @@ msgstr ""
msgid ""
"Bakes the effect from all [GeometryInstance3D]s marked with [constant "
"GeometryInstance3D.GI_MODE_BAKED] and [Light3D]s marked with either "
-"[constant Light3D.BAKE_INDIRECT] or [constant Light3D.BAKE_ALL]. If "
+"[constant Light3D.BAKE_DYNAMIC] or [constant Light3D.BAKE_STATIC]. If "
"[code]create_visual_debug[/code] is [code]true[/code], after baking the "
"light, this will generate a [MultiMesh] that has a cube representing each "
"solid cell with each cube colored to the cell's albedo color. This can be "
@@ -22889,121 +23406,119 @@ msgstr ""
msgid "Clear all cells."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:53
+#: modules/gridmap/doc_classes/GridMap.xml:49
msgid ""
-"The [MeshLibrary] item index located at the grid-based X, Y and Z "
-"coordinates. If the cell is empty, [constant INVALID_CELL_ITEM] will be "
-"returned."
+"The [MeshLibrary] item index located at the given grid coordinates. If the "
+"cell is empty, [constant INVALID_CELL_ITEM] will be returned."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:66
+#: modules/gridmap/doc_classes/GridMap.xml:58
msgid ""
-"The orientation of the cell at the grid-based X, Y and Z coordinates. -1 is "
-"returned if the cell is empty."
+"The orientation of the cell at the given grid coordinates. [code]-1[/code] "
+"is returned if the cell is empty."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:75 doc/classes/PhysicsBody2D.xml:35
+#: modules/gridmap/doc_classes/GridMap.xml:67 doc/classes/PhysicsBody2D.xml:35
#: doc/classes/PhysicsBody3D.xml:35
msgid "Returns an individual bit on the [member collision_layer]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:84 doc/classes/PhysicsBody2D.xml:44
+#: modules/gridmap/doc_classes/GridMap.xml:76 doc/classes/PhysicsBody2D.xml:44
#: doc/classes/PhysicsBody3D.xml:44
msgid "Returns an individual bit on the [member collision_mask]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:91
+#: modules/gridmap/doc_classes/GridMap.xml:83
msgid ""
"Returns an array of [Transform] and [Mesh] references corresponding to the "
"non-empty cells in the grid. The transforms are specified in world space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:98
+#: modules/gridmap/doc_classes/GridMap.xml:90
msgid ""
"Returns an array of [Vector3] with the non-empty cell coordinates in the "
"grid map."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:121
+#: modules/gridmap/doc_classes/GridMap.xml:109
msgid ""
"Returns the position of a grid cell in the GridMap's local coordinate space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:146
+#: modules/gridmap/doc_classes/GridMap.xml:130
msgid ""
-"Sets the mesh index for the cell referenced by its grid-based X, Y and Z "
-"coordinates.\n"
+"Sets the mesh index for the cell referenced by its grid coordinates.\n"
"A negative item index such as [constant INVALID_CELL_ITEM] will clear the "
"cell.\n"
"Optionally, the item's orientation can be passed. For valid orientation "
"values, see [method Basis.get_orthogonal_index]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:173
+#: modules/gridmap/doc_classes/GridMap.xml:157
msgid "Sets an individual bit on the [member collision_layer]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:184
+#: modules/gridmap/doc_classes/GridMap.xml:168
msgid "Sets an individual bit on the [member collision_mask]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:193
+#: modules/gridmap/doc_classes/GridMap.xml:177
msgid ""
"Returns the coordinates of the grid cell containing the given point.\n"
"[code]pos[/code] should be in the GridMap's local coordinate space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:200
+#: modules/gridmap/doc_classes/GridMap.xml:184
msgid "If [code]true[/code], grid items are centered on the X axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:203
+#: modules/gridmap/doc_classes/GridMap.xml:187
msgid "If [code]true[/code], grid items are centered on the Y axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:206
+#: modules/gridmap/doc_classes/GridMap.xml:190
msgid "If [code]true[/code], grid items are centered on the Z axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:209
+#: modules/gridmap/doc_classes/GridMap.xml:193
msgid ""
"The size of each octant measured in number of cells. This applies to all "
"three axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:212
+#: modules/gridmap/doc_classes/GridMap.xml:196
msgid ""
"The scale of the cell items.\n"
"This does not affect the size of the grid cells themselves, only the items "
"in them. This can be used to make cell items overlap their neighbors."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:216
+#: modules/gridmap/doc_classes/GridMap.xml:200
msgid ""
"The dimensions of the grid's cells.\n"
"This does not affect the size of the meshes. See [member cell_scale]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:220
+#: modules/gridmap/doc_classes/GridMap.xml:204
msgid ""
"The physics layers this GridMap is in.\n"
"GridMaps act as static bodies, meaning they aren't affected by gravity or "
"other forces. They only affect other physics bodies that collide with them."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:224
+#: modules/gridmap/doc_classes/GridMap.xml:208
msgid "The physics layers this GridMap detects collisions in."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:227
+#: modules/gridmap/doc_classes/GridMap.xml:211
msgid "The assigned [MeshLibrary]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:235
+#: modules/gridmap/doc_classes/GridMap.xml:219
msgid "Emitted when [member cell_size] changes."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:241
+#: modules/gridmap/doc_classes/GridMap.xml:225
msgid ""
"Invalid cell item that can be used in [method set_cell_item] to clear cells "
"(or represent an empty cell in [method get_cell_item])."
@@ -23368,27 +23883,33 @@ msgid ""
"server's side.\n"
"For more information on HTTP, see https://developer.mozilla.org/en-US/docs/"
"Web/HTTP (or read RFC 2616 to get it straight from the source: https://tools."
-"ietf.org/html/rfc2616)."
+"ietf.org/html/rfc2616).\n"
+"[b]Note:[/b] When performing HTTP requests from a project exported to HTML5, "
+"keep in mind the remote server may not allow requests from foreign origins "
+"due to [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/"
+"url]. If you host the server in question, you should modify its backend to "
+"allow requests from foreign origins by adding the [code]Access-Control-Allow-"
+"Origin: *[/code] HTTP header."
msgstr ""
-#: doc/classes/HTTPClient.xml:13
+#: doc/classes/HTTPClient.xml:14
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/"
"http_client_class.html"
msgstr ""
-#: doc/classes/HTTPClient.xml:14 doc/classes/HTTPRequest.xml:62
+#: doc/classes/HTTPClient.xml:15 doc/classes/HTTPRequest.xml:71
#: doc/classes/StreamPeerSSL.xml:10
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/ssl_certificates."
"html"
msgstr ""
-#: doc/classes/HTTPClient.xml:21
+#: doc/classes/HTTPClient.xml:22
msgid "Closes the current connection, allowing reuse of this [HTTPClient]."
msgstr ""
-#: doc/classes/HTTPClient.xml:36
+#: doc/classes/HTTPClient.xml:37
msgid ""
"Connects to a host. This needs to be done before any requests are sent.\n"
"The host should not have http:// prepended but will strip the protocol "
@@ -23400,7 +23921,7 @@ msgid ""
"[code]true[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:46
+#: doc/classes/HTTPClient.xml:47
msgid ""
"Returns the response's body length.\n"
"[b]Note:[/b] Some Web servers may not send a body length. In this case, the "
@@ -23408,15 +23929,15 @@ msgid ""
"the body length will also be [code]-1[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:54
+#: doc/classes/HTTPClient.xml:55
msgid "Returns the response's HTTP status code."
msgstr ""
-#: doc/classes/HTTPClient.xml:61
+#: doc/classes/HTTPClient.xml:62
msgid "Returns the response headers."
msgstr ""
-#: doc/classes/HTTPClient.xml:68
+#: doc/classes/HTTPClient.xml:69
msgid ""
"Returns all response headers as a Dictionary of structure [code]{ \"key\": "
"\"value1; value2\" }[/code] where the case-sensitivity of the keys and "
@@ -23431,27 +23952,27 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:82
+#: doc/classes/HTTPClient.xml:83
msgid ""
"Returns a [enum Status] constant. Need to call [method poll] in order to get "
"status updates."
msgstr ""
-#: doc/classes/HTTPClient.xml:89
+#: doc/classes/HTTPClient.xml:90
msgid "If [code]true[/code], this [HTTPClient] has a response available."
msgstr ""
-#: doc/classes/HTTPClient.xml:96
+#: doc/classes/HTTPClient.xml:97
msgid "If [code]true[/code], this [HTTPClient] has a response that is chunked."
msgstr ""
-#: doc/classes/HTTPClient.xml:103
+#: doc/classes/HTTPClient.xml:104
msgid ""
"This needs to be called in order to have any request processed. Check "
"results with [method get_status]."
msgstr ""
-#: doc/classes/HTTPClient.xml:112
+#: doc/classes/HTTPClient.xml:113
msgid ""
"Generates a GET/POST application/x-www-form-urlencoded style query string "
"from a provided dictionary, e.g.:\n"
@@ -23471,11 +23992,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:130
+#: doc/classes/HTTPClient.xml:131
msgid "Reads one chunk from the response."
msgstr ""
-#: doc/classes/HTTPClient.xml:145
+#: doc/classes/HTTPClient.xml:146
msgid ""
"Sends a request to the connected host. The URL parameter is just the part "
"after the host, so for [code]http://somehost.com/index.php[/code], it is "
@@ -23493,7 +24014,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:168
+#: doc/classes/HTTPClient.xml:169
msgid ""
"Sends a raw request to the connected host. The URL parameter is just the "
"part after the host, so for [code]http://somehost.com/index.php[/code], it "
@@ -23503,43 +24024,43 @@ msgid ""
"Sends the body data raw, as a byte array and does not encode it in any way."
msgstr ""
-#: doc/classes/HTTPClient.xml:176
+#: doc/classes/HTTPClient.xml:177
msgid ""
"If [code]true[/code], execution will block until all data is read from the "
"response."
msgstr ""
-#: doc/classes/HTTPClient.xml:179
+#: doc/classes/HTTPClient.xml:180
msgid "The connection to use for this client."
msgstr ""
-#: doc/classes/HTTPClient.xml:182
+#: doc/classes/HTTPClient.xml:183
msgid ""
"The size of the buffer used and maximum bytes to read per iteration. See "
"[method read_response_body_chunk]."
msgstr ""
-#: doc/classes/HTTPClient.xml:187
+#: doc/classes/HTTPClient.xml:188
msgid ""
"HTTP GET method. The GET method requests a representation of the specified "
"resource. Requests using GET should only retrieve data."
msgstr ""
-#: doc/classes/HTTPClient.xml:190
+#: doc/classes/HTTPClient.xml:191
msgid ""
"HTTP HEAD method. The HEAD method asks for a response identical to that of a "
"GET request, but without the response body. This is useful to request "
"metadata like HTTP headers or to check if a resource exists."
msgstr ""
-#: doc/classes/HTTPClient.xml:193
+#: doc/classes/HTTPClient.xml:194
msgid ""
"HTTP POST method. The POST method is used to submit an entity to the "
"specified resource, often causing a change in state or side effects on the "
"server. This is often used for forms and submitting data or uploading files."
msgstr ""
-#: doc/classes/HTTPClient.xml:196
+#: doc/classes/HTTPClient.xml:197
msgid ""
"HTTP PUT method. The PUT method asks to replace all current representations "
"of the target resource with the request payload. (You can think of POST as "
@@ -23547,103 +24068,103 @@ msgid ""
"not make a clear distinction or change their meaning)."
msgstr ""
-#: doc/classes/HTTPClient.xml:199
+#: doc/classes/HTTPClient.xml:200
msgid ""
"HTTP DELETE method. The DELETE method requests to delete the specified "
"resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:202
+#: doc/classes/HTTPClient.xml:203
msgid ""
"HTTP OPTIONS method. The OPTIONS method asks for a description of the "
"communication options for the target resource. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:205
+#: doc/classes/HTTPClient.xml:206
msgid ""
"HTTP TRACE method. The TRACE method performs a message loop-back test along "
"the path to the target resource. Returns the entire HTTP request received in "
"the response body. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:208
+#: doc/classes/HTTPClient.xml:209
msgid ""
"HTTP CONNECT method. The CONNECT method establishes a tunnel to the server "
"identified by the target resource. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:211
+#: doc/classes/HTTPClient.xml:212
msgid ""
"HTTP PATCH method. The PATCH method is used to apply partial modifications "
"to a resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:214
+#: doc/classes/HTTPClient.xml:215
msgid "Represents the size of the [enum Method] enum."
msgstr ""
-#: doc/classes/HTTPClient.xml:217
+#: doc/classes/HTTPClient.xml:218
msgid "Status: Disconnected from the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:220
+#: doc/classes/HTTPClient.xml:221
msgid "Status: Currently resolving the hostname for the given URL into an IP."
msgstr ""
-#: doc/classes/HTTPClient.xml:223
+#: doc/classes/HTTPClient.xml:224
msgid "Status: DNS failure: Can't resolve the hostname for the given URL."
msgstr ""
-#: doc/classes/HTTPClient.xml:226
+#: doc/classes/HTTPClient.xml:227
msgid "Status: Currently connecting to server."
msgstr ""
-#: doc/classes/HTTPClient.xml:229
+#: doc/classes/HTTPClient.xml:230
msgid "Status: Can't connect to the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:232
+#: doc/classes/HTTPClient.xml:233
msgid "Status: Connection established."
msgstr ""
-#: doc/classes/HTTPClient.xml:235
+#: doc/classes/HTTPClient.xml:236
msgid "Status: Currently sending request."
msgstr ""
-#: doc/classes/HTTPClient.xml:238
+#: doc/classes/HTTPClient.xml:239
msgid "Status: HTTP body received."
msgstr ""
-#: doc/classes/HTTPClient.xml:241
+#: doc/classes/HTTPClient.xml:242
msgid "Status: Error in HTTP connection."
msgstr ""
-#: doc/classes/HTTPClient.xml:244
+#: doc/classes/HTTPClient.xml:245
msgid "Status: Error in SSL handshake."
msgstr ""
-#: doc/classes/HTTPClient.xml:247
+#: doc/classes/HTTPClient.xml:248
msgid ""
"HTTP status code [code]100 Continue[/code]. Interim response that indicates "
"everything so far is OK and that the client should continue with the request "
"(or ignore this status if already finished)."
msgstr ""
-#: doc/classes/HTTPClient.xml:250
+#: doc/classes/HTTPClient.xml:251
msgid ""
"HTTP status code [code]101 Switching Protocol[/code]. Sent in response to an "
"[code]Upgrade[/code] request header by the client. Indicates the protocol "
"the server is switching to."
msgstr ""
-#: doc/classes/HTTPClient.xml:253
+#: doc/classes/HTTPClient.xml:254
msgid ""
"HTTP status code [code]102 Processing[/code] (WebDAV). Indicates that the "
"server has received and is processing the request, but no response is "
"available yet."
msgstr ""
-#: doc/classes/HTTPClient.xml:256
+#: doc/classes/HTTPClient.xml:257
msgid ""
"HTTP status code [code]200 OK[/code]. The request has succeeded. Default "
"response for successful requests. Meaning varies depending on the request. "
@@ -23654,14 +24175,14 @@ msgid ""
"server."
msgstr ""
-#: doc/classes/HTTPClient.xml:259
+#: doc/classes/HTTPClient.xml:260
msgid ""
"HTTP status code [code]201 Created[/code]. The request has succeeded and a "
"new resource has been created as a result of it. This is typically the "
"response sent after a PUT request."
msgstr ""
-#: doc/classes/HTTPClient.xml:262
+#: doc/classes/HTTPClient.xml:263
msgid ""
"HTTP status code [code]202 Accepted[/code]. The request has been received "
"but not yet acted upon. It is non-committal, meaning that there is no way in "
@@ -23670,7 +24191,7 @@ msgid ""
"server handles the request, or for batch processing."
msgstr ""
-#: doc/classes/HTTPClient.xml:265
+#: doc/classes/HTTPClient.xml:266
msgid ""
"HTTP status code [code]203 Non-Authoritative Information[/code]. This "
"response code means returned meta-information set is not exact set as "
@@ -23679,14 +24200,14 @@ msgid ""
"instead of this response."
msgstr ""
-#: doc/classes/HTTPClient.xml:268
+#: doc/classes/HTTPClient.xml:269
msgid ""
"HTTP status code [code]204 No Content[/code]. There is no content to send "
"for this request, but the headers may be useful. The user-agent may update "
"its cached headers for this resource with the new ones."
msgstr ""
-#: doc/classes/HTTPClient.xml:271
+#: doc/classes/HTTPClient.xml:272
msgid ""
"HTTP status code [code]205 Reset Content[/code]. The server has fulfilled "
"the request and desires that the client resets the \"document view\" that "
@@ -23694,49 +24215,49 @@ msgid ""
"origin server."
msgstr ""
-#: doc/classes/HTTPClient.xml:274
+#: doc/classes/HTTPClient.xml:275
msgid ""
"HTTP status code [code]206 Partial Content[/code]. This response code is "
"used because of a range header sent by the client to separate download into "
"multiple streams."
msgstr ""
-#: doc/classes/HTTPClient.xml:277
+#: doc/classes/HTTPClient.xml:278
msgid ""
"HTTP status code [code]207 Multi-Status[/code] (WebDAV). A Multi-Status "
"response conveys information about multiple resources in situations where "
"multiple status codes might be appropriate."
msgstr ""
-#: doc/classes/HTTPClient.xml:280
+#: doc/classes/HTTPClient.xml:281
msgid ""
"HTTP status code [code]208 Already Reported[/code] (WebDAV). Used inside a "
"DAV: propstat response element to avoid enumerating the internal members of "
"multiple bindings to the same collection repeatedly."
msgstr ""
-#: doc/classes/HTTPClient.xml:283
+#: doc/classes/HTTPClient.xml:284
msgid ""
"HTTP status code [code]226 IM Used[/code] (WebDAV). The server has fulfilled "
"a GET request for the resource, and the response is a representation of the "
"result of one or more instance-manipulations applied to the current instance."
msgstr ""
-#: doc/classes/HTTPClient.xml:286
+#: doc/classes/HTTPClient.xml:287
msgid ""
"HTTP status code [code]300 Multiple Choice[/code]. The request has more than "
"one possible responses and there is no standardized way to choose one of the "
"responses. User-agent or user should choose one of them."
msgstr ""
-#: doc/classes/HTTPClient.xml:289
+#: doc/classes/HTTPClient.xml:290
msgid ""
"HTTP status code [code]301 Moved Permanently[/code]. Redirection. This "
"response code means the URI of requested resource has been changed. The new "
"URI is usually included in the response."
msgstr ""
-#: doc/classes/HTTPClient.xml:292
+#: doc/classes/HTTPClient.xml:293
msgid ""
"HTTP status code [code]302 Found[/code]. Temporary redirection. This "
"response code means the URI of requested resource has been changed "
@@ -23744,7 +24265,7 @@ msgid ""
"this same URI should be used by the client in future requests."
msgstr ""
-#: doc/classes/HTTPClient.xml:295
+#: doc/classes/HTTPClient.xml:296
msgid ""
"HTTP status code [code]303 See Other[/code]. The server is redirecting the "
"user agent to a different resource, as indicated by a URI in the Location "
@@ -23752,39 +24273,39 @@ msgid ""
"original request."
msgstr ""
-#: doc/classes/HTTPClient.xml:298
+#: doc/classes/HTTPClient.xml:299
msgid ""
"HTTP status code [code]304 Not Modified[/code]. A conditional GET or HEAD "
"request has been received and would have resulted in a 200 OK response if it "
"were not for the fact that the condition evaluated to [code]false[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:301
+#: doc/classes/HTTPClient.xml:302
msgid ""
"HTTP status code [code]305 Use Proxy[/code]. [i]Deprecated. Do not use.[/i]"
msgstr ""
-#: doc/classes/HTTPClient.xml:304
+#: doc/classes/HTTPClient.xml:305
msgid ""
"HTTP status code [code]306 Switch Proxy[/code]. [i]Deprecated. Do not use.[/"
"i]"
msgstr ""
-#: doc/classes/HTTPClient.xml:307
+#: doc/classes/HTTPClient.xml:308
msgid ""
"HTTP status code [code]307 Temporary Redirect[/code]. The target resource "
"resides temporarily under a different URI and the user agent MUST NOT change "
"the request method if it performs an automatic redirection to that URI."
msgstr ""
-#: doc/classes/HTTPClient.xml:310
+#: doc/classes/HTTPClient.xml:311
msgid ""
"HTTP status code [code]308 Permanent Redirect[/code]. The target resource "
"has been assigned a new permanent URI and any future references to this "
"resource ought to use one of the enclosed URIs."
msgstr ""
-#: doc/classes/HTTPClient.xml:313
+#: doc/classes/HTTPClient.xml:314
msgid ""
"HTTP status code [code]400 Bad Request[/code]. The request was invalid. The "
"server cannot or will not process the request due to something that is "
@@ -23793,21 +24314,21 @@ msgid ""
"routing)."
msgstr ""
-#: doc/classes/HTTPClient.xml:316
+#: doc/classes/HTTPClient.xml:317
msgid ""
"HTTP status code [code]401 Unauthorized[/code]. Credentials required. The "
"request has not been applied because it lacks valid authentication "
"credentials for the target resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:319
+#: doc/classes/HTTPClient.xml:320
msgid ""
"HTTP status code [code]402 Payment Required[/code]. This response code is "
"reserved for future use. Initial aim for creating this code was using it for "
"digital payment systems, however this is not currently used."
msgstr ""
-#: doc/classes/HTTPClient.xml:322
+#: doc/classes/HTTPClient.xml:323
msgid ""
"HTTP status code [code]403 Forbidden[/code]. The client does not have access "
"rights to the content, i.e. they are unauthorized, so server is rejecting to "
@@ -23815,7 +24336,7 @@ msgid ""
"known to the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:325
+#: doc/classes/HTTPClient.xml:326
msgid ""
"HTTP status code [code]404 Not Found[/code]. The server can not find "
"requested resource. Either the URL is not recognized or the endpoint is "
@@ -23823,7 +24344,7 @@ msgid ""
"403 to hide existence of a resource if the client is not authorized."
msgstr ""
-#: doc/classes/HTTPClient.xml:328
+#: doc/classes/HTTPClient.xml:329
msgid ""
"HTTP status code [code]405 Method Not Allowed[/code]. The request's HTTP "
"method is known by the server but has been disabled and cannot be used. For "
@@ -23831,7 +24352,7 @@ msgid ""
"GET and HEAD, must never be disabled and should not return this error code."
msgstr ""
-#: doc/classes/HTTPClient.xml:331
+#: doc/classes/HTTPClient.xml:332
msgid ""
"HTTP status code [code]406 Not Acceptable[/code]. The target resource does "
"not have a current representation that would be acceptable to the user "
@@ -23839,21 +24360,21 @@ msgid ""
"request. Used when negotiation content."
msgstr ""
-#: doc/classes/HTTPClient.xml:334
+#: doc/classes/HTTPClient.xml:335
msgid ""
"HTTP status code [code]407 Proxy Authentication Required[/code]. Similar to "
"401 Unauthorized, but it indicates that the client needs to authenticate "
"itself in order to use a proxy."
msgstr ""
-#: doc/classes/HTTPClient.xml:337
+#: doc/classes/HTTPClient.xml:338
msgid ""
"HTTP status code [code]408 Request Timeout[/code]. The server did not "
"receive a complete request message within the time that it was prepared to "
"wait."
msgstr ""
-#: doc/classes/HTTPClient.xml:340
+#: doc/classes/HTTPClient.xml:341
msgid ""
"HTTP status code [code]409 Conflict[/code]. The request could not be "
"completed due to a conflict with the current state of the target resource. "
@@ -23861,47 +24382,47 @@ msgid ""
"conflict and resubmit the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:343
+#: doc/classes/HTTPClient.xml:344
msgid ""
"HTTP status code [code]410 Gone[/code]. The target resource is no longer "
"available at the origin server and this condition is likely permanent."
msgstr ""
-#: doc/classes/HTTPClient.xml:346
+#: doc/classes/HTTPClient.xml:347
msgid ""
"HTTP status code [code]411 Length Required[/code]. The server refuses to "
"accept the request without a defined Content-Length header."
msgstr ""
-#: doc/classes/HTTPClient.xml:349
+#: doc/classes/HTTPClient.xml:350
msgid ""
"HTTP status code [code]412 Precondition Failed[/code]. One or more "
"conditions given in the request header fields evaluated to [code]false[/"
"code] when tested on the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:352
+#: doc/classes/HTTPClient.xml:353
msgid ""
"HTTP status code [code]413 Entity Too Large[/code]. The server is refusing "
"to process a request because the request payload is larger than the server "
"is willing or able to process."
msgstr ""
-#: doc/classes/HTTPClient.xml:355
+#: doc/classes/HTTPClient.xml:356
msgid ""
"HTTP status code [code]414 Request-URI Too Long[/code]. The server is "
"refusing to service the request because the request-target is longer than "
"the server is willing to interpret."
msgstr ""
-#: doc/classes/HTTPClient.xml:358
+#: doc/classes/HTTPClient.xml:359
msgid ""
"HTTP status code [code]415 Unsupported Media Type[/code]. The origin server "
"is refusing to service the request because the payload is in a format not "
"supported by this method on the target resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:361
+#: doc/classes/HTTPClient.xml:362
msgid ""
"HTTP status code [code]416 Requested Range Not Satisfiable[/code]. None of "
"the ranges in the request's Range header field overlap the current extent of "
@@ -23909,21 +24430,21 @@ msgid ""
"to invalid ranges or an excessive request of small or overlapping ranges."
msgstr ""
-#: doc/classes/HTTPClient.xml:364
+#: doc/classes/HTTPClient.xml:365
msgid ""
"HTTP status code [code]417 Expectation Failed[/code]. The expectation given "
"in the request's Expect header field could not be met by at least one of the "
"inbound servers."
msgstr ""
-#: doc/classes/HTTPClient.xml:367
+#: doc/classes/HTTPClient.xml:368
msgid ""
"HTTP status code [code]418 I'm A Teapot[/code]. Any attempt to brew coffee "
"with a teapot should result in the error code \"418 I'm a teapot\". The "
"resulting entity body MAY be short and stout."
msgstr ""
-#: doc/classes/HTTPClient.xml:370
+#: doc/classes/HTTPClient.xml:371
msgid ""
"HTTP status code [code]421 Misdirected Request[/code]. The request was "
"directed at a server that is not able to produce a response. This can be "
@@ -23931,7 +24452,7 @@ msgid ""
"combination of scheme and authority that are included in the request URI."
msgstr ""
-#: doc/classes/HTTPClient.xml:373
+#: doc/classes/HTTPClient.xml:374
msgid ""
"HTTP status code [code]422 Unprocessable Entity[/code] (WebDAV). The server "
"understands the content type of the request entity (hence a 415 Unsupported "
@@ -23940,40 +24461,40 @@ msgid ""
"was unable to process the contained instructions."
msgstr ""
-#: doc/classes/HTTPClient.xml:376
+#: doc/classes/HTTPClient.xml:377
msgid ""
"HTTP status code [code]423 Locked[/code] (WebDAV). The source or destination "
"resource of a method is locked."
msgstr ""
-#: doc/classes/HTTPClient.xml:379
+#: doc/classes/HTTPClient.xml:380
msgid ""
"HTTP status code [code]424 Failed Dependency[/code] (WebDAV). The method "
"could not be performed on the resource because the requested action depended "
"on another action and that action failed."
msgstr ""
-#: doc/classes/HTTPClient.xml:382
+#: doc/classes/HTTPClient.xml:383
msgid ""
"HTTP status code [code]426 Upgrade Required[/code]. The server refuses to "
"perform the request using the current protocol but might be willing to do so "
"after the client upgrades to a different protocol."
msgstr ""
-#: doc/classes/HTTPClient.xml:385
+#: doc/classes/HTTPClient.xml:386
msgid ""
"HTTP status code [code]428 Precondition Required[/code]. The origin server "
"requires the request to be conditional."
msgstr ""
-#: doc/classes/HTTPClient.xml:388
+#: doc/classes/HTTPClient.xml:389
msgid ""
"HTTP status code [code]429 Too Many Requests[/code]. The user has sent too "
"many requests in a given amount of time (see \"rate limiting\"). Back off "
"and increase time between requests or try again later."
msgstr ""
-#: doc/classes/HTTPClient.xml:391
+#: doc/classes/HTTPClient.xml:392
msgid ""
"HTTP status code [code]431 Request Header Fields Too Large[/code]. The "
"server is unwilling to process the request because its header fields are too "
@@ -23981,27 +24502,27 @@ msgid ""
"header fields."
msgstr ""
-#: doc/classes/HTTPClient.xml:394
+#: doc/classes/HTTPClient.xml:395
msgid ""
"HTTP status code [code]451 Response Unavailable For Legal Reasons[/code]. "
"The server is denying access to the resource as a consequence of a legal "
"demand."
msgstr ""
-#: doc/classes/HTTPClient.xml:397
+#: doc/classes/HTTPClient.xml:398
msgid ""
"HTTP status code [code]500 Internal Server Error[/code]. The server "
"encountered an unexpected condition that prevented it from fulfilling the "
"request."
msgstr ""
-#: doc/classes/HTTPClient.xml:400
+#: doc/classes/HTTPClient.xml:401
msgid ""
"HTTP status code [code]501 Not Implemented[/code]. The server does not "
"support the functionality required to fulfill the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:403
+#: doc/classes/HTTPClient.xml:404
msgid ""
"HTTP status code [code]502 Bad Gateway[/code]. The server, while acting as a "
"gateway or proxy, received an invalid response from an inbound server it "
@@ -24009,7 +24530,7 @@ msgid ""
"balancers or proxies."
msgstr ""
-#: doc/classes/HTTPClient.xml:406
+#: doc/classes/HTTPClient.xml:407
msgid ""
"HTTP status code [code]503 Service Unavailable[/code]. The server is "
"currently unable to handle the request due to a temporary overload or "
@@ -24017,7 +24538,7 @@ msgid ""
"again later."
msgstr ""
-#: doc/classes/HTTPClient.xml:409
+#: doc/classes/HTTPClient.xml:410
msgid ""
"HTTP status code [code]504 Gateway Timeout[/code]. The server, while acting "
"as a gateway or proxy, did not receive a timely response from an upstream "
@@ -24025,14 +24546,14 @@ msgid ""
"returned by load balancers or proxies."
msgstr ""
-#: doc/classes/HTTPClient.xml:412
+#: doc/classes/HTTPClient.xml:413
msgid ""
"HTTP status code [code]505 HTTP Version Not Supported[/code]. The server "
"does not support, or refuses to support, the major version of HTTP that was "
"used in the request message."
msgstr ""
-#: doc/classes/HTTPClient.xml:415
+#: doc/classes/HTTPClient.xml:416
msgid ""
"HTTP status code [code]506 Variant Also Negotiates[/code]. The server has an "
"internal configuration error: the chosen variant resource is configured to "
@@ -24040,14 +24561,14 @@ msgid ""
"proper end point in the negotiation process."
msgstr ""
-#: doc/classes/HTTPClient.xml:418
+#: doc/classes/HTTPClient.xml:419
msgid ""
"HTTP status code [code]507 Insufficient Storage[/code]. The method could not "
"be performed on the resource because the server is unable to store the "
"representation needed to successfully complete the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:421
+#: doc/classes/HTTPClient.xml:422
msgid ""
"HTTP status code [code]508 Loop Detected[/code]. The server terminated an "
"operation because it encountered an infinite loop while processing a request "
@@ -24055,14 +24576,14 @@ msgid ""
"failed."
msgstr ""
-#: doc/classes/HTTPClient.xml:424
+#: doc/classes/HTTPClient.xml:425
msgid ""
"HTTP status code [code]510 Not Extended[/code]. The policy for accessing the "
"resource has not been met in the request. The server should send back all "
"the information necessary for the client to issue an extended request."
msgstr ""
-#: doc/classes/HTTPClient.xml:427
+#: doc/classes/HTTPClient.xml:428
msgid ""
"HTTP status code [code]511 Network Authentication Required[/code]. The "
"client needs to authenticate to gain network access."
@@ -24088,12 +24609,21 @@ msgid ""
" http_request.connect(\"request_completed\", self, "
"\"_http_request_completed\")\n"
"\n"
-" # Perform the HTTP request. The URL below returns some JSON as of "
-"writing.\n"
+" # Perform a GET request. The URL below returns JSON as of writing.\n"
" var error = http_request.request(\"https://httpbin.org/get\")\n"
" if error != OK:\n"
" push_error(\"An error occurred in the HTTP request.\")\n"
"\n"
+" # Perform a POST request. The URL below returns JSON as of writing.\n"
+" # Note: Don't make simultaneous requests using a single HTTPRequest "
+"node.\n"
+" # The snippet below is provided for reference only.\n"
+" var body = {\"name\": \"Godette\"}\n"
+" var error = http_request.request(\"https://httpbin.org/post\", [], true, "
+"HTTPClient.METHOD_POST, body)\n"
+" if error != OK:\n"
+" push_error(\"An error occurred in the HTTP request.\")\n"
+"\n"
"\n"
"# Called when the HTTP request is completed.\n"
"func _http_request_completed(result, response_code, headers, body):\n"
@@ -24133,20 +24663,26 @@ msgid ""
" var texture_rect = TextureRect.new()\n"
" add_child(texture_rect)\n"
" texture_rect.texture = texture\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] When performing HTTP requests from a project exported to HTML5, "
+"keep in mind the remote server may not allow requests from foreign origins "
+"due to [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/"
+"url]. If you host the server in question, you should modify its backend to "
+"allow requests from foreign origins by adding the [code]Access-Control-Allow-"
+"Origin: *[/code] HTTP header."
msgstr ""
-#: doc/classes/HTTPRequest.xml:61
+#: doc/classes/HTTPRequest.xml:70
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/"
"http_request_class.html"
msgstr ""
-#: doc/classes/HTTPRequest.xml:69
+#: doc/classes/HTTPRequest.xml:78
msgid "Cancels the current request."
msgstr ""
-#: doc/classes/HTTPRequest.xml:76
+#: doc/classes/HTTPRequest.xml:85
msgid ""
"Returns the response body length.\n"
"[b]Note:[/b] Some Web servers may not send a body length. In this case, the "
@@ -24154,17 +24690,17 @@ msgid ""
"the body length will also be [code]-1[/code]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:84
+#: doc/classes/HTTPRequest.xml:93
msgid "Returns the amount of bytes this HTTPRequest downloaded."
msgstr ""
-#: doc/classes/HTTPRequest.xml:91
+#: doc/classes/HTTPRequest.xml:100
msgid ""
"Returns the current status of the underlying [HTTPClient]. See [enum "
"HTTPClient.Status]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:108
+#: doc/classes/HTTPRequest.xml:117
msgid ""
"Creates request on the underlying [HTTPClient]. If there is no configuration "
"errors, it tries to connect using [method HTTPClient.connect_to_host] and "
@@ -24177,11 +24713,11 @@ msgid ""
"connect to host."
msgstr ""
-#: doc/classes/HTTPRequest.xml:115
+#: doc/classes/HTTPRequest.xml:124
msgid "Maximum allowed size for response bodies."
msgstr ""
-#: doc/classes/HTTPRequest.xml:118
+#: doc/classes/HTTPRequest.xml:127
msgid ""
"The size of the buffer used and maximum bytes to read per iteration. See "
"[member HTTPClient.read_chunk_size].\n"
@@ -24189,63 +24725,63 @@ msgid ""
"files to achieve better speeds at the cost of memory."
msgstr ""
-#: doc/classes/HTTPRequest.xml:122
+#: doc/classes/HTTPRequest.xml:131
msgid "The file to download into. Will output any received file into it."
msgstr ""
-#: doc/classes/HTTPRequest.xml:125
+#: doc/classes/HTTPRequest.xml:134
msgid "Maximum number of allowed redirects."
msgstr ""
-#: doc/classes/HTTPRequest.xml:130
+#: doc/classes/HTTPRequest.xml:139
msgid "If [code]true[/code], multithreading is used to improve performance."
msgstr ""
-#: doc/classes/HTTPRequest.xml:144
+#: doc/classes/HTTPRequest.xml:153
msgid "Emitted when a request is completed."
msgstr ""
-#: doc/classes/HTTPRequest.xml:150
+#: doc/classes/HTTPRequest.xml:159
msgid "Request successful."
msgstr ""
-#: doc/classes/HTTPRequest.xml:155
+#: doc/classes/HTTPRequest.xml:164
msgid "Request failed while connecting."
msgstr ""
-#: doc/classes/HTTPRequest.xml:158
+#: doc/classes/HTTPRequest.xml:167
msgid "Request failed while resolving."
msgstr ""
-#: doc/classes/HTTPRequest.xml:161
+#: doc/classes/HTTPRequest.xml:170
msgid "Request failed due to connection (read/write) error."
msgstr ""
-#: doc/classes/HTTPRequest.xml:164
+#: doc/classes/HTTPRequest.xml:173
msgid "Request failed on SSL handshake."
msgstr ""
-#: doc/classes/HTTPRequest.xml:167
+#: doc/classes/HTTPRequest.xml:176
msgid "Request does not have a response (yet)."
msgstr ""
-#: doc/classes/HTTPRequest.xml:170
+#: doc/classes/HTTPRequest.xml:179
msgid "Request exceeded its maximum size limit, see [member body_size_limit]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:173
+#: doc/classes/HTTPRequest.xml:182
msgid "Request failed (currently unused)."
msgstr ""
-#: doc/classes/HTTPRequest.xml:176
+#: doc/classes/HTTPRequest.xml:185
msgid "HTTPRequest couldn't open the download file."
msgstr ""
-#: doc/classes/HTTPRequest.xml:179
+#: doc/classes/HTTPRequest.xml:188
msgid "HTTPRequest couldn't write to the download file."
msgstr ""
-#: doc/classes/HTTPRequest.xml:182
+#: doc/classes/HTTPRequest.xml:191
msgid "Request reached its maximum redirect limit, see [member max_redirects]."
msgstr ""
@@ -24469,42 +25005,46 @@ msgid "Loads an image from the binary contents of a PNG file."
msgstr ""
#: doc/classes/Image.xml:373
+msgid "Loads an image from the binary contents of a TGA file."
+msgstr ""
+
+#: doc/classes/Image.xml:382
msgid "Loads an image from the binary contents of a WebP file."
msgstr ""
-#: doc/classes/Image.xml:380
+#: doc/classes/Image.xml:389
msgid ""
"Converts the image's data to represent coordinates on a 3D plane. This is "
"used when the image represents a normalmap. A normalmap can add lots of "
"detail to a 3D surface without increasing the polygon count."
msgstr ""
-#: doc/classes/Image.xml:387
+#: doc/classes/Image.xml:396
msgid ""
"Multiplies color values with alpha values. Resulting color values for a "
"pixel are [code](color * alpha)/256[/code]."
msgstr ""
-#: doc/classes/Image.xml:400
+#: doc/classes/Image.xml:409
msgid ""
"Resizes the image to the given [code]width[/code] and [code]height[/code]. "
"New pixels are calculated using [code]interpolation[/code]. See "
"[code]interpolation[/code] constants."
msgstr ""
-#: doc/classes/Image.xml:409
+#: doc/classes/Image.xml:418
msgid ""
"Resizes the image to the nearest power of 2 for the width and height. If "
"[code]square[/code] is [code]true[/code] then set width and height to be the "
"same."
msgstr ""
-#: doc/classes/Image.xml:416
+#: doc/classes/Image.xml:425
msgid ""
"Converts a standard RGBE (Red Green Blue Exponent) image to an sRGB image."
msgstr ""
-#: doc/classes/Image.xml:427
+#: doc/classes/Image.xml:436
msgid ""
"Saves the image as an EXR file to [code]path[/code]. If [code]grayscale[/"
"code] is [code]true[/code] and the image has only one channel, it will be "
@@ -24513,11 +25053,11 @@ msgid ""
"TinyEXR module."
msgstr ""
-#: doc/classes/Image.xml:436
+#: doc/classes/Image.xml:445
msgid "Saves the image as a PNG file to [code]path[/code]."
msgstr ""
-#: doc/classes/Image.xml:455
+#: doc/classes/Image.xml:464
msgid ""
"Sets the [Color] of the pixel at [code](x, y)[/code]. Example:\n"
"[codeblock]\n"
@@ -24527,7 +25067,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Image.xml:471
+#: doc/classes/Image.xml:480
msgid ""
"Sets the [Color] of the pixel at [code](dst.x, dst.y)[/code]. Note that the "
"[code]dst[/code] values must be integers. Example:\n"
@@ -24538,51 +25078,51 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Image.xml:483
+#: doc/classes/Image.xml:492
msgid "Shrinks the image by a factor of 2."
msgstr ""
-#: doc/classes/Image.xml:490
+#: doc/classes/Image.xml:499
msgid "Converts the raw data from the sRGB colorspace to a linear scale."
msgstr ""
-#: doc/classes/Image.xml:496
+#: doc/classes/Image.xml:505
msgid ""
"Holds all of the image's color data in a given format. See [enum Format] "
"constants."
msgstr ""
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:510
msgid "The maximal width allowed for [Image] resources."
msgstr ""
-#: doc/classes/Image.xml:504
+#: doc/classes/Image.xml:513
msgid "The maximal height allowed for [Image] resources."
msgstr ""
-#: doc/classes/Image.xml:507
+#: doc/classes/Image.xml:516
msgid "Texture format with a single 8-bit depth representing luminance."
msgstr ""
-#: doc/classes/Image.xml:510
+#: doc/classes/Image.xml:519
msgid ""
"OpenGL texture format with two values, luminance and alpha each stored with "
"8 bits."
msgstr ""
-#: doc/classes/Image.xml:513
+#: doc/classes/Image.xml:522
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
"bitdepth of 8."
msgstr ""
-#: doc/classes/Image.xml:516
+#: doc/classes/Image.xml:525
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
-#: doc/classes/Image.xml:519
+#: doc/classes/Image.xml:528
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -24590,7 +25130,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:523
+#: doc/classes/Image.xml:532
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -24598,67 +25138,67 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:536
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
-#: doc/classes/Image.xml:532
+#: doc/classes/Image.xml:541
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
-#: doc/classes/Image.xml:535
+#: doc/classes/Image.xml:544
msgid ""
"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
"each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:538
+#: doc/classes/Image.xml:547
msgid ""
"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
"components, each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:541
+#: doc/classes/Image.xml:550
msgid ""
"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
"components, each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:544
+#: doc/classes/Image.xml:553
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 16-"
"bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:556
msgid ""
"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
"each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:550
+#: doc/classes/Image.xml:559
msgid ""
"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
"components, each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:553
+#: doc/classes/Image.xml:562
msgid ""
"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
"components, each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:556
+#: doc/classes/Image.xml:565
msgid ""
"A special OpenGL texture format where the three color components have 9 bits "
"of precision and all three share a single 5-bit exponent."
msgstr ""
-#: doc/classes/Image.xml:559
+#: doc/classes/Image.xml:568
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format that uses Block Compression 1, and is the smallest variation "
@@ -24668,7 +25208,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:563
+#: doc/classes/Image.xml:572
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format that uses Block Compression 2, and color data is interpreted "
@@ -24678,7 +25218,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:567
+#: doc/classes/Image.xml:576
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format also known as Block Compression 3 or BC3 that contains 64 "
@@ -24689,7 +25229,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:571
+#: doc/classes/Image.xml:580
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -24697,7 +25237,7 @@ msgid ""
"DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:574
+#: doc/classes/Image.xml:583
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -24705,7 +25245,7 @@ msgid ""
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:577
+#: doc/classes/Image.xml:586
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -24714,21 +25254,21 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:581
+#: doc/classes/Image.xml:590
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with signed floating-point "
"RGB components."
msgstr ""
-#: doc/classes/Image.xml:584
+#: doc/classes/Image.xml:593
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned floating-point "
"RGB components."
msgstr ""
-#: doc/classes/Image.xml:587
+#: doc/classes/Image.xml:596
msgid ""
"Texture format used on PowerVR-supported mobile platforms, uses 2-bit color "
"depth with no alpha. More information can be found [url=https://en.wikipedia."
@@ -24737,25 +25277,25 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:600
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:603
msgid ""
"Similar to [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with 4-"
"bit color depth and no alpha."
msgstr ""
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:606
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:609
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -24763,7 +25303,7 @@ msgid ""
"standard. This format cannot store an alpha channel."
msgstr ""
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:612
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24771,7 +25311,7 @@ msgid ""
"unsigned data."
msgstr ""
-#: doc/classes/Image.xml:606
+#: doc/classes/Image.xml:615
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24779,7 +25319,7 @@ msgid ""
"channel of signed data."
msgstr ""
-#: doc/classes/Image.xml:609
+#: doc/classes/Image.xml:618
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24787,7 +25327,7 @@ msgid ""
"of unsigned data."
msgstr ""
-#: doc/classes/Image.xml:612
+#: doc/classes/Image.xml:621
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24795,7 +25335,7 @@ msgid ""
"channels of signed data."
msgstr ""
-#: doc/classes/Image.xml:615
+#: doc/classes/Image.xml:624
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24805,7 +25345,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:619
+#: doc/classes/Image.xml:628
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24815,7 +25355,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:623
+#: doc/classes/Image.xml:632
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24826,31 +25366,31 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:631
+#: doc/classes/Image.xml:640
msgid "Represents the size of the [enum Format] enum."
msgstr ""
-#: doc/classes/Image.xml:634
+#: doc/classes/Image.xml:643
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
-#: doc/classes/Image.xml:637
+#: doc/classes/Image.xml:646
msgid ""
"Performs bilinear interpolation. If the image is resized, it will be blurry. "
"This mode is faster than [constant INTERPOLATE_CUBIC], but it results in "
"lower quality."
msgstr ""
-#: doc/classes/Image.xml:640
+#: doc/classes/Image.xml:649
msgid ""
"Performs cubic interpolation. If the image is resized, it will be blurry. "
"This mode often gives better results compared to [constant "
"INTERPOLATE_BILINEAR], at the cost of being slower."
msgstr ""
-#: doc/classes/Image.xml:643
+#: doc/classes/Image.xml:652
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -24865,55 +25405,55 @@ msgid ""
"a new set will be generated for the resulting image."
msgstr ""
-#: doc/classes/Image.xml:650
+#: doc/classes/Image.xml:659
msgid ""
"Performs Lanczos interpolation. This is the slowest image resizing mode, but "
"it typically gives the best results, especially when downscalng images."
msgstr ""
-#: doc/classes/Image.xml:653
+#: doc/classes/Image.xml:662
msgid "Image does not have alpha."
msgstr ""
-#: doc/classes/Image.xml:656
+#: doc/classes/Image.xml:665
msgid "Image stores alpha in a single bit."
msgstr ""
-#: doc/classes/Image.xml:659
+#: doc/classes/Image.xml:668
msgid "Image uses alpha."
msgstr ""
-#: doc/classes/Image.xml:662
+#: doc/classes/Image.xml:671
msgid "Use S3TC compression."
msgstr ""
-#: doc/classes/Image.xml:665
+#: doc/classes/Image.xml:674
msgid "Use PVRTC2 compression."
msgstr ""
-#: doc/classes/Image.xml:668
+#: doc/classes/Image.xml:677
msgid "Use PVRTC4 compression."
msgstr ""
-#: doc/classes/Image.xml:671
+#: doc/classes/Image.xml:680
msgid "Use ETC compression."
msgstr ""
-#: doc/classes/Image.xml:674
+#: doc/classes/Image.xml:683
msgid "Use ETC2 compression."
msgstr ""
-#: doc/classes/Image.xml:689
+#: doc/classes/Image.xml:698
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
-#: doc/classes/Image.xml:692
+#: doc/classes/Image.xml:701
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
-#: doc/classes/Image.xml:695
+#: doc/classes/Image.xml:704
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -25732,7 +26272,7 @@ msgid "Contains mouse click information. See [method Node._input]."
msgstr ""
#: doc/classes/InputEventMouseButton.xml:10
-#: doc/classes/InputEventMouseMotion.xml:10
+#: doc/classes/InputEventMouseMotion.xml:11
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/inputs/"
"mouse_and_input_coordinates.html"
@@ -25769,29 +26309,36 @@ msgstr ""
#: doc/classes/InputEventMouseMotion.xml:7
msgid ""
"Contains mouse and pen motion information. Supports relative, absolute "
-"positions and speed. See [method Node._input]."
+"positions and speed. See [method Node._input].\n"
+"[b]Note:[/b] By default, this event is only emitted once per frame rendered "
+"at most. If you need more precise input reporting, call [method Input."
+"set_use_accumulated_input] with [code]false[/code] to make events emitted as "
+"often as possible. If you use InputEventMouseMotion to draw lines, consider "
+"implementing [url=https://en.wikipedia.org/wiki/Bresenham"
+"%27s_line_algorithm]Bresenham's line algorithm[/url] as well to avoid "
+"visible gaps in lines if the user is moving the mouse quickly."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:16
+#: doc/classes/InputEventMouseMotion.xml:17
msgid ""
"Represents the pressure the user puts on the pen. Ranges from [code]0.0[/"
"code] to [code]1.0[/code]."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:19
+#: doc/classes/InputEventMouseMotion.xml:20
msgid ""
"The mouse position relative to the previous position (position at the last "
-"frame). \n"
+"frame).\n"
"[b]Note:[/b] Since [InputEventMouseMotion] is only emitted when the mouse "
"moves, the last event won't have a relative position of [code]Vector2(0, 0)[/"
"code] when the user stops moving the mouse."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:23
+#: doc/classes/InputEventMouseMotion.xml:24
msgid "The mouse speed in pixels per second."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:26
+#: doc/classes/InputEventMouseMotion.xml:27
msgid ""
"Represents the angles of tilt of the pen. Positive X-coordinate value "
"indicates a tilt to the right. Positive Y-coordinate value indicates a tilt "
@@ -26681,14 +27228,17 @@ msgstr ""
#: doc/classes/JSON.xml:18
msgid ""
-"Parses a JSON encoded string and returns a [JSONParseResult] containing the "
+"Parses a JSON-encoded string and returns a [JSONParseResult] containing the "
"result."
msgstr ""
#: doc/classes/JSON.xml:31
msgid ""
"Converts a [Variant] var to JSON text and returns the result. Useful for "
-"serializing data to store or send over the network."
+"serializing data to store or send over the network.\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, converting a Variant to JSON text "
+"will convert all numerical values to [float] types."
msgstr ""
#: doc/classes/JSONParseResult.xml:4
@@ -26711,14 +27261,14 @@ msgstr ""
#: doc/classes/JSONParseResult.xml:18
msgid ""
-"The line number where the error occurred if JSON source was not successfully "
-"parsed."
+"The line number where the error occurred if the JSON source was not "
+"successfully parsed."
msgstr ""
#: doc/classes/JSONParseResult.xml:21
msgid ""
-"The error message if JSON source was not successfully parsed. See the [enum "
-"Error] constants."
+"The error message if the JSON source was not successfully parsed. See the "
+"[enum Error] constants."
msgstr ""
#: doc/classes/JSONParseResult.xml:24
@@ -26726,11 +27276,11 @@ msgid ""
"A [Variant] containing the parsed JSON. Use [method @GDScript.typeof] or the "
"[code]is[/code] keyword to check if it is what you expect. For example, if "
"the JSON source starts with curly braces ([code]{}[/code]), a [Dictionary] "
-"will be returned. If the JSON source starts with braces ([code][][/code]), "
+"will be returned. If the JSON source starts with brackets ([code][][/code]), "
"an [Array] will be returned.\n"
"[b]Note:[/b] The JSON specification does not define integer or float types, "
-"but only a number type. Therefore, parsing a JSON text will convert all "
-"numerical values to float types.\n"
+"but only a [i]number[/i] type. Therefore, parsing a JSON text will convert "
+"all numerical values to [float] types.\n"
"[b]Note:[/b] JSON objects do not preserve key order like Godot dictionaries, "
"thus, you should not rely on keys being in a certain order if a dictionary "
"is constructed from JSON. In contrast, JSON arrays retain the order of their "
@@ -26740,7 +27290,7 @@ msgid ""
"if typeof(p.result) == TYPE_ARRAY:\n"
" print(p.result[0]) # Prints \"hello\"\n"
"else:\n"
-" print(\"unexpected results\")\n"
+" push_error(\"Unexpected results.\")\n"
"[/codeblock]"
msgstr ""
@@ -26856,7 +27406,7 @@ msgid ""
"simulation will run at an incorrect speed.\n"
"[code]linear_velocity[/code] is the velocity vector in pixels per second. "
"Unlike in [method move_and_collide], you should [i]not[/i] multiply it by "
-"[code]delta[/code] — the physics engine handles applying the velocity. \n"
+"[code]delta[/code] — the physics engine handles applying the velocity.\n"
"[code]up_direction[/code] is the up direction, used to determine what is a "
"wall and what is a floor or a ceiling. If set to the default value of "
"[code]Vector2(0, 0)[/code], everything is considered a wall. This is useful "
@@ -26972,7 +27522,7 @@ msgid ""
"[code]linear_velocity[/code] is the velocity vector (typically meters per "
"second). Unlike in [method move_and_collide], you should [i]not[/i] multiply "
"it by [code]delta[/code] — the physics engine handles applying the "
-"velocity. \n"
+"velocity.\n"
"[code]up_direction[/code] is the up direction, used to determine what is a "
"wall and what is a floor or a ceiling. If set to the default value of "
"[code]Vector3(0, 0, 0)[/code], everything is considered a wall.\n"
@@ -27701,17 +28251,6 @@ msgid ""
"[b]Note:[/b] Hiding a light does [i]not[/i] affect baking."
msgstr ""
-#: doc/classes/Light3D.xml:152
-msgid "Only indirect lighting will be baked (default)."
-msgstr ""
-
-#: doc/classes/Light3D.xml:155
-msgid ""
-"Both direct and indirect light will be baked.\n"
-"[b]Note:[/b] You should hide the light if you don't want it to appear twice "
-"(dynamic and baked)."
-msgstr ""
-
#: doc/classes/LightOccluder2D.xml:4
msgid "Occludes light cast by a Light2D, casting shadows."
msgstr ""
@@ -27990,136 +28529,142 @@ msgstr ""
msgid "Text alignment as defined in the [enum Align] enum."
msgstr ""
-#: doc/classes/LineEdit.xml:120 doc/classes/TextEdit.xml:406
+#: doc/classes/LineEdit.xml:120 doc/classes/TextEdit.xml:358
msgid "If [code]true[/code], the caret (visual cursor) blinks."
msgstr ""
-#: doc/classes/LineEdit.xml:123 doc/classes/TextEdit.xml:409
+#: doc/classes/LineEdit.xml:123 doc/classes/TextEdit.xml:361
msgid "Duration (in seconds) of a caret's blinking cycle."
msgstr ""
-#: doc/classes/LineEdit.xml:126
+#: doc/classes/LineEdit.xml:128
msgid ""
"The cursor's position inside the [LineEdit]. When set, the text may scroll "
"to accommodate it."
msgstr ""
-#: doc/classes/LineEdit.xml:129
+#: doc/classes/LineEdit.xml:131
msgid ""
"If [code]true[/code], the [LineEdit] will show a clear button if [code]text[/"
"code] is not empty, which can be used to clear the text quickly."
msgstr ""
-#: doc/classes/LineEdit.xml:132
+#: doc/classes/LineEdit.xml:134
msgid "If [code]true[/code], the context menu will appear when right-clicked."
msgstr ""
-#: doc/classes/LineEdit.xml:135
+#: doc/classes/LineEdit.xml:137
msgid ""
"If [code]false[/code], existing text cannot be modified and new text cannot "
"be added."
msgstr ""
-#: doc/classes/LineEdit.xml:138
+#: doc/classes/LineEdit.xml:140
msgid ""
"If [code]true[/code], the [LineEdit] width will increase to stay longer than "
"the [member text]. It will [b]not[/b] compress if the [member text] is "
"shortened."
msgstr ""
-#: doc/classes/LineEdit.xml:142
+#: doc/classes/LineEdit.xml:144
msgid ""
"Maximum amount of characters that can be entered inside the [LineEdit]. If "
"[code]0[/code], there is no limit."
msgstr ""
-#: doc/classes/LineEdit.xml:146
+#: doc/classes/LineEdit.xml:148
msgid ""
"Opacity of the [member placeholder_text]. From [code]0[/code] to [code]1[/"
"code]."
msgstr ""
-#: doc/classes/LineEdit.xml:149
+#: doc/classes/LineEdit.xml:151
msgid ""
"Text shown when the [LineEdit] is empty. It is [b]not[/b] the [LineEdit]'s "
"default value (see [member text])."
msgstr ""
-#: doc/classes/LineEdit.xml:152
+#: doc/classes/LineEdit.xml:154
msgid ""
"Sets the icon that will appear in the right end of the [LineEdit] if there's "
"no [member text], or always, if [member clear_button_enabled] is set to "
"[code]false[/code]."
msgstr ""
-#: doc/classes/LineEdit.xml:155
+#: doc/classes/LineEdit.xml:157
msgid ""
"If [code]true[/code], every character is replaced with the secret character "
"(see [member secret_character])."
msgstr ""
-#: doc/classes/LineEdit.xml:158
+#: doc/classes/LineEdit.xml:160
msgid ""
"The character to use to mask secret input (defaults to \"*\"). Only a single "
"character can be used as the secret character."
msgstr ""
-#: doc/classes/LineEdit.xml:161
+#: doc/classes/LineEdit.xml:163
msgid ""
"If [code]false[/code], it's impossible to select the text using mouse nor "
"keyboard."
msgstr ""
-#: doc/classes/LineEdit.xml:164
+#: doc/classes/LineEdit.xml:166
msgid "If [code]false[/code], using shortcuts will be disabled."
msgstr ""
-#: doc/classes/LineEdit.xml:167
+#: doc/classes/LineEdit.xml:169
msgid ""
"String value of the [LineEdit].\n"
"[b]Note:[/b] Changing text using this property won't emit the [signal "
"text_changed] signal."
msgstr ""
-#: doc/classes/LineEdit.xml:174
+#: doc/classes/LineEdit.xml:173 doc/classes/TextEdit.xml:434
+msgid ""
+"If [code]true[/code], the native virtual keyboard is shown when focused on "
+"platforms that support it."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:179
msgid ""
"Emitted when trying to append text that would overflow the [member "
"max_length]."
msgstr ""
-#: doc/classes/LineEdit.xml:181 doc/classes/TextEdit.xml:525
+#: doc/classes/LineEdit.xml:186 doc/classes/TextEdit.xml:490
msgid "Emitted when the text changes."
msgstr ""
-#: doc/classes/LineEdit.xml:188
+#: doc/classes/LineEdit.xml:193
msgid "Emitted when the user presses [constant KEY_ENTER] on the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:194
+#: doc/classes/LineEdit.xml:199
msgid "Aligns the text on the left-hand side of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:197
+#: doc/classes/LineEdit.xml:202
msgid "Centers the text in the middle of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:200
+#: doc/classes/LineEdit.xml:205
msgid "Aligns the text on the right-hand side of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:203
+#: doc/classes/LineEdit.xml:208
msgid "Stretches whitespaces to fit the [LineEdit]'s width."
msgstr ""
-#: doc/classes/LineEdit.xml:206 doc/classes/TextEdit.xml:540
+#: doc/classes/LineEdit.xml:211 doc/classes/TextEdit.xml:505
msgid "Cuts (copies and clears) the selected text."
msgstr ""
-#: doc/classes/LineEdit.xml:209 doc/classes/TextEdit.xml:543
+#: doc/classes/LineEdit.xml:214 doc/classes/TextEdit.xml:508
msgid "Copies the selected text."
msgstr ""
-#: doc/classes/LineEdit.xml:212
+#: doc/classes/LineEdit.xml:217
msgid ""
"Pastes the clipboard text over the selected text (or at the cursor's "
"position).\n"
@@ -28127,80 +28672,80 @@ msgid ""
"clipboard via [method String.strip_escapes]."
msgstr ""
-#: doc/classes/LineEdit.xml:216
+#: doc/classes/LineEdit.xml:221
msgid "Erases the whole [LineEdit] text."
msgstr ""
-#: doc/classes/LineEdit.xml:219
+#: doc/classes/LineEdit.xml:224
msgid "Selects the whole [LineEdit] text."
msgstr ""
-#: doc/classes/LineEdit.xml:222 doc/classes/TextEdit.xml:555
+#: doc/classes/LineEdit.xml:227 doc/classes/TextEdit.xml:520
msgid "Undoes the previous action."
msgstr ""
-#: doc/classes/LineEdit.xml:225
+#: doc/classes/LineEdit.xml:230
msgid "Reverse the last undo action."
msgstr ""
-#: doc/classes/LineEdit.xml:228 doc/classes/TextEdit.xml:561
+#: doc/classes/LineEdit.xml:233 doc/classes/TextEdit.xml:526
msgid "Represents the size of the [enum MenuItems] enum."
msgstr ""
-#: doc/classes/LineEdit.xml:233
+#: doc/classes/LineEdit.xml:238
msgid "Texture for the clear button. See [member clear_button_enabled]."
msgstr ""
-#: doc/classes/LineEdit.xml:236
+#: doc/classes/LineEdit.xml:241
msgid "Color used as default tint for the clear button."
msgstr ""
-#: doc/classes/LineEdit.xml:239
+#: doc/classes/LineEdit.xml:244
msgid "Color used for the clear button when it's pressed."
msgstr ""
-#: doc/classes/LineEdit.xml:242
+#: doc/classes/LineEdit.xml:247
msgid "Color of the [LineEdit]'s visual cursor (caret)."
msgstr ""
-#: doc/classes/LineEdit.xml:245
+#: doc/classes/LineEdit.xml:250
msgid "Background used when [LineEdit] has GUI focus."
msgstr ""
-#: doc/classes/LineEdit.xml:248
+#: doc/classes/LineEdit.xml:253
msgid "Font used for the text."
msgstr ""
-#: doc/classes/LineEdit.xml:251
+#: doc/classes/LineEdit.xml:256
msgid "Default font color."
msgstr ""
-#: doc/classes/LineEdit.xml:254
+#: doc/classes/LineEdit.xml:259
msgid "Font color for selected text (inside the selection rectangle)."
msgstr ""
-#: doc/classes/LineEdit.xml:257
+#: doc/classes/LineEdit.xml:262
msgid "Font color when editing is disabled."
msgstr ""
-#: doc/classes/LineEdit.xml:260
+#: doc/classes/LineEdit.xml:265
msgid ""
"Minimum horizontal space for the text (not counting the clear button and "
"content margins). This value is measured in count of space characters (i.e. "
"this amount of space characters can be displayed without scrolling)."
msgstr ""
-#: doc/classes/LineEdit.xml:263
+#: doc/classes/LineEdit.xml:268
msgid "Default background for the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:266
+#: doc/classes/LineEdit.xml:271
msgid ""
"Background used when [LineEdit] is in read-only mode ([member editable] is "
"set to [code]false[/code])."
msgstr ""
-#: doc/classes/LineEdit.xml:269
+#: doc/classes/LineEdit.xml:274
msgid "Color of the selection rectangle."
msgstr ""
@@ -28418,14 +28963,14 @@ msgstr ""
msgid "Emitted when a user responds to a permission request."
msgstr ""
-#: doc/classes/MainLoop.xml:127 doc/classes/Node.xml:948
+#: doc/classes/MainLoop.xml:127 doc/classes/Node.xml:946
msgid ""
"Notification received from the OS when the application is exceeding its "
"allocated memory.\n"
"Specific to the iOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:131 doc/classes/Node.xml:952
+#: doc/classes/MainLoop.xml:131 doc/classes/Node.xml:950
msgid ""
"Notification received when translations may have changed. Can be triggered "
"by the user changing the locale. Can be used to respond to language changes, "
@@ -28433,39 +28978,55 @@ msgid ""
"the built-in translation support, like [method Object.tr]."
msgstr ""
-#: doc/classes/MainLoop.xml:134 doc/classes/Node.xml:955
+#: doc/classes/MainLoop.xml:134 doc/classes/Node.xml:953
msgid ""
"Notification received from the OS when a request for \"About\" information "
"is sent.\n"
"Specific to the macOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:138 doc/classes/Node.xml:959
+#: doc/classes/MainLoop.xml:138 doc/classes/Node.xml:957
msgid ""
"Notification received from Godot's crash handler when the engine is about to "
"crash.\n"
"Implemented on desktop platforms if the crash handler is enabled."
msgstr ""
-#: doc/classes/MainLoop.xml:142 doc/classes/Node.xml:963
+#: doc/classes/MainLoop.xml:142 doc/classes/Node.xml:961
msgid ""
"Notification received from the OS when an update of the Input Method Engine "
"occurs (e.g. change of IME cursor position or composition string).\n"
"Specific to the macOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:146 doc/classes/Node.xml:967
+#: doc/classes/MainLoop.xml:146 doc/classes/Node.xml:965
msgid ""
-"Notification received from the OS when the app is resumed.\n"
+"Notification received from the OS when the application is resumed.\n"
"Specific to the Android platform."
msgstr ""
-#: doc/classes/MainLoop.xml:150 doc/classes/Node.xml:971
+#: doc/classes/MainLoop.xml:150 doc/classes/Node.xml:969
msgid ""
-"Notification received from the OS when the app is paused.\n"
+"Notification received from the OS when the application is paused.\n"
"Specific to the Android platform."
msgstr ""
+#: doc/classes/MainLoop.xml:154 doc/classes/Node.xml:973
+msgid ""
+"Notification received from the OS when the application is focused, i.e. when "
+"changing the focus from the OS desktop or a thirdparty application to any "
+"open window of the Godot instance.\n"
+"Implemented on desktop platforms."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:158 doc/classes/Node.xml:977
+msgid ""
+"Notification received from the OS when the application is defocused, i.e. "
+"when changing the focus from any open window of the Godot instance to the OS "
+"desktop or a thirdparty application.\n"
+"Implemented on desktop platforms."
+msgstr ""
+
#: doc/classes/MarginContainer.xml:4
msgid "Simple margin container."
msgstr ""
@@ -28773,11 +29334,11 @@ msgstr ""
msgid "Render array as triangle strips."
msgstr ""
-#: doc/classes/Mesh.xml:126 doc/classes/RenderingServer.xml:3189
+#: doc/classes/Mesh.xml:126 doc/classes/RenderingServer.xml:3185
msgid "Blend shapes are normalized."
msgstr ""
-#: doc/classes/Mesh.xml:129 doc/classes/RenderingServer.xml:3192
+#: doc/classes/Mesh.xml:129 doc/classes/RenderingServer.xml:3188
msgid "Blend shapes are relative to base weight."
msgstr ""
@@ -28819,37 +29380,37 @@ msgstr ""
msgid "Mesh array uses indices."
msgstr ""
-#: doc/classes/Mesh.xml:159 doc/classes/RenderingServer.xml:3145
+#: doc/classes/Mesh.xml:159 doc/classes/RenderingServer.xml:3141
msgid "Flag used to mark a compressed (half float) normal array."
msgstr ""
-#: doc/classes/Mesh.xml:162 doc/classes/RenderingServer.xml:3148
+#: doc/classes/Mesh.xml:162 doc/classes/RenderingServer.xml:3144
msgid "Flag used to mark a compressed (half float) tangent array."
msgstr ""
-#: doc/classes/Mesh.xml:165 doc/classes/RenderingServer.xml:3151
+#: doc/classes/Mesh.xml:165 doc/classes/RenderingServer.xml:3147
msgid "Flag used to mark a compressed (half float) color array."
msgstr ""
-#: doc/classes/Mesh.xml:168 doc/classes/RenderingServer.xml:3154
+#: doc/classes/Mesh.xml:168 doc/classes/RenderingServer.xml:3150
msgid "Flag used to mark a compressed (half float) UV coordinates array."
msgstr ""
-#: doc/classes/Mesh.xml:171 doc/classes/RenderingServer.xml:3157
+#: doc/classes/Mesh.xml:171 doc/classes/RenderingServer.xml:3153
msgid ""
"Flag used to mark a compressed (half float) UV coordinates array for the "
"second UV coordinates."
msgstr ""
-#: doc/classes/Mesh.xml:174 doc/classes/RenderingServer.xml:3160
+#: doc/classes/Mesh.xml:174 doc/classes/RenderingServer.xml:3156
msgid "Flag used to mark a compressed index array."
msgstr ""
-#: doc/classes/Mesh.xml:177 doc/classes/RenderingServer.xml:3166
+#: doc/classes/Mesh.xml:177 doc/classes/RenderingServer.xml:3162
msgid "Flag used to mark that the array contains 2D vertices."
msgstr ""
-#: doc/classes/Mesh.xml:180 doc/classes/RenderingServer.xml:3163
+#: doc/classes/Mesh.xml:180 doc/classes/RenderingServer.xml:3159
msgid ""
"Used to set flags [constant ARRAY_COMPRESS_NORMAL], [constant "
"ARRAY_COMPRESS_TANGENT], [constant ARRAY_COMPRESS_COLOR], [constant "
@@ -30610,7 +31171,10 @@ msgstr ""
msgid ""
"The number of channels to be used by ENet. Channels are used to separate "
"different kinds of data. In reliable or ordered mode, for example, the "
-"packet delivery order is ensured on a per channel basis."
+"packet delivery order is ensured on a per-channel basis. This is done to "
+"combat latency and reduces ordering restrictions on packets. The delivery "
+"status of a packet in one channel won't stall the delivery of other packets "
+"in another channel."
msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:134
@@ -30637,11 +31201,12 @@ msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:144
msgid ""
"Set the default channel to be used to transfer data. By default, this value "
-"is [code]-1[/code] which means that ENet will only use 2 channels, one for "
-"reliable and one for unreliable packets. Channel [code]0[/code] is reserved, "
-"and cannot be used. Setting this member to any value between [code]0[/code] "
-"and [member channel_count] (excluded) will force ENet to use that channel "
-"for sending data."
+"is [code]-1[/code] which means that ENet will only use 2 channels: one for "
+"reliable packets, and one for unreliable packets. The channel [code]0[/code] "
+"is reserved and cannot be used. Setting this member to any value between "
+"[code]0[/code] and [member channel_count] (excluded) will force ENet to use "
+"that channel for sending data. See [member channel_count] for more "
+"information about ENet channels."
msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:148
@@ -31833,57 +32398,63 @@ msgstr ""
#: doc/classes/Node.xml:930
msgid ""
-"Notification received from the OS when the game window is focused.\n"
-"Implemented on all platforms."
+"Notification received from the OS when the node's parent [Window] is "
+"focused. This may be a change of focus between two windows of the same "
+"engine instance, or from the OS desktop or a third-party application to a "
+"window of the game (in which case [constant "
+"NOTIFICATION_APPLICATION_FOCUS_IN] is also emitted)."
msgstr ""
-#: doc/classes/Node.xml:934
+#: doc/classes/Node.xml:933
msgid ""
-"Notification received from the OS when the game window is unfocused.\n"
-"Implemented on all platforms."
+"Notification received from the OS when the node's parent [Window] is "
+"defocused. This may be a change of focus between two windows of the same "
+"engine instance, or from a window of the game to the OS desktop or a third-"
+"party application (in which case [constant "
+"NOTIFICATION_APPLICATION_FOCUS_OUT] is also emitted)."
msgstr ""
-#: doc/classes/Node.xml:938
+#: doc/classes/Node.xml:936
msgid ""
"Notification received from the OS when a close request is sent (e.g. closing "
"the window with a \"Close\" button or [kbd]Alt + F4[/kbd]).\n"
"Implemented on desktop platforms."
msgstr ""
-#: doc/classes/Node.xml:942
+#: doc/classes/Node.xml:940
msgid ""
"Notification received from the OS when a go back request is sent (e.g. "
"pressing the \"Back\" button on Android).\n"
"Specific to the Android platform."
msgstr ""
-#: doc/classes/Node.xml:975
+#: doc/classes/Node.xml:981
msgid ""
"Inherits pause mode from the node's parent. For the root node, it is "
"equivalent to [constant PAUSE_MODE_STOP]. Default."
msgstr ""
-#: doc/classes/Node.xml:978
+#: doc/classes/Node.xml:984
msgid "Stops processing when the [SceneTree] is paused."
msgstr ""
-#: doc/classes/Node.xml:981
+#: doc/classes/Node.xml:987
msgid "Continue to process regardless of the [SceneTree] pause state."
msgstr ""
-#: doc/classes/Node.xml:984
+#: doc/classes/Node.xml:990
msgid "Duplicate the node's signals."
msgstr ""
-#: doc/classes/Node.xml:987
+#: doc/classes/Node.xml:993
msgid "Duplicate the node's groups."
msgstr ""
-#: doc/classes/Node.xml:990
+#: doc/classes/Node.xml:996
msgid "Duplicate the node's scripts."
msgstr ""
-#: doc/classes/Node.xml:993
+#: doc/classes/Node.xml:999
msgid ""
"Duplicate using instancing.\n"
"An instance stays linked to the original so when the original changes, the "
@@ -32107,12 +32678,6 @@ msgid ""
"changes. [Node3D] will not propagate this by default."
msgstr ""
-#: doc/classes/Node3D.xml:104
-msgid ""
-"Returns whether the node is visible, taking into consideration that its "
-"parents visibility."
-msgstr ""
-
#: doc/classes/Node3D.xml:115
msgid ""
"Rotates itself so that the local -Z axis points towards the [code]target[/"
@@ -32282,7 +32847,10 @@ msgid "Local translation of this node."
msgstr ""
#: doc/classes/Node3D.xml:326
-msgid "If [code]true[/code], this node is drawn."
+msgid ""
+"If [code]true[/code], this node is drawn. The node is only visible if all of "
+"its antecedents are visible as well (in other words, [method "
+"is_visible_in_tree] must return [code]true[/code])."
msgstr ""
#: doc/classes/Node3D.xml:332
@@ -32539,10 +33107,20 @@ msgid ""
"the key exists, even if the value is [code]null[/code].\n"
"Objects also receive notifications. Notifications are a simple way to notify "
"the object about different events, so they can all be handled together. See "
-"[method _notification]."
+"[method _notification].\n"
+"[b]Note:[/b] Unlike references to a [Reference], references to an Object "
+"stored in a variable can become invalid without warning. Therefore, it's "
+"recommended to use [Reference] for data classes instead of [Object]."
+msgstr ""
+
+#: doc/classes/Object.xml:23 doc/classes/Reference.xml:12
+#: doc/classes/Resource.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/getting_started/workflow/"
+"best_practices/node_alternatives.html"
msgstr ""
-#: doc/classes/Object.xml:30
+#: doc/classes/Object.xml:32
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method get].\n"
@@ -32550,7 +33128,7 @@ msgid ""
"code] does not exist."
msgstr ""
-#: doc/classes/Object.xml:38
+#: doc/classes/Object.xml:40
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method get_property_list].\n"
@@ -32562,11 +33140,11 @@ msgid ""
"PropertyUsageFlags])."
msgstr ""
-#: doc/classes/Object.xml:47
+#: doc/classes/Object.xml:49
msgid "Called when the object is initialized."
msgstr ""
-#: doc/classes/Object.xml:56
+#: doc/classes/Object.xml:58
msgid ""
"Called whenever the object receives a notification, which is identified in "
"[code]what[/code] by a constant. The base [Object] has two constants "
@@ -32575,7 +33153,7 @@ msgid ""
"notifications which are also received by this method."
msgstr ""
-#: doc/classes/Object.xml:67
+#: doc/classes/Object.xml:69
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method set].\n"
@@ -32583,7 +33161,7 @@ msgid ""
"exists."
msgstr ""
-#: doc/classes/Object.xml:75
+#: doc/classes/Object.xml:77
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method to_string], and thus the object's representation where it is "
@@ -32592,34 +33170,42 @@ msgid ""
"[code]\"[ClassName:RID]\"[/code]."
msgstr ""
-#: doc/classes/Object.xml:87
+#: doc/classes/Object.xml:89
msgid ""
"Adds a user-defined [code]signal[/code]. Arguments are optional, but can be "
"added as an [Array] of dictionaries, each containing [code]name: String[/"
"code] and [code]type: int[/code] (see [enum Variant.Type]) entries."
msgstr ""
-#: doc/classes/Object.xml:96
+#: doc/classes/Object.xml:98
msgid ""
"Calls the [code]method[/code] on the object and returns the result. This "
"method supports a variable number of arguments, so parameters are passed as "
"a comma separated list. Example:\n"
"[codeblock]\n"
"call(\"set\", \"position\", Vector2(42.0, 0.0))\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] In C#, the method name must be specified as snake_case if it is "
+"defined by a built-in Godot node. This doesn't apply to user-defined methods "
+"where you should use the same convention as in the C# source (typically "
+"PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:108
+#: doc/classes/Object.xml:111
msgid ""
"Calls the [code]method[/code] on the object during idle time. This method "
"supports a variable number of arguments, so parameters are passed as a comma "
"separated list. Example:\n"
"[codeblock]\n"
"call_deferred(\"set\", \"position\", Vector2(42.0, 0.0))\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] In C#, the method name must be specified as snake_case if it is "
+"defined by a built-in Godot node. This doesn't apply to user-defined methods "
+"where you should use the same convention as in the C# source (typically "
+"PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:122
+#: doc/classes/Object.xml:126
msgid ""
"Calls the [code]method[/code] on the object and returns the result. "
"Contrarily to [method call], this method does not support a variable number "
@@ -32629,13 +33215,13 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:132
+#: doc/classes/Object.xml:136
msgid ""
"Returns [code]true[/code] if the object can translate strings. See [method "
"set_message_translation] and [method tr]."
msgstr ""
-#: doc/classes/Object.xml:147
+#: doc/classes/Object.xml:151
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32671,7 +33257,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:174
+#: doc/classes/Object.xml:178
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32682,7 +33268,7 @@ msgid ""
"exists."
msgstr ""
-#: doc/classes/Object.xml:185
+#: doc/classes/Object.xml:189
msgid ""
"Emits the given [code]signal[/code]. The signal must exist, so it should be "
"a built-in signal of this class or one of its parent classes, or a user-"
@@ -32694,24 +33280,28 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:196
+#: doc/classes/Object.xml:200
msgid ""
"Deletes the object from memory. Any pre-existing reference to the freed "
"object will become invalid, e.g. [code]is_instance_valid(object)[/code] will "
"return [code]false[/code]."
msgstr ""
-#: doc/classes/Object.xml:205
+#: doc/classes/Object.xml:209
msgid ""
"Returns the [Variant] value of the given [code]property[/code]. If the "
-"[code]property[/code] doesn't exist, this will return [code]null[/code]."
+"[code]property[/code] doesn't exist, this will return [code]null[/code].\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:212
+#: doc/classes/Object.xml:217
msgid "Returns the object's class as a [String]."
msgstr ""
-#: doc/classes/Object.xml:219
+#: doc/classes/Object.xml:224
msgid ""
"Returns an [Array] of dictionaries with information about signals that are "
"connected to the object.\n"
@@ -32722,7 +33312,7 @@ msgid ""
"connected."
msgstr ""
-#: doc/classes/Object.xml:232
+#: doc/classes/Object.xml:237
msgid ""
"Gets the object's property indexed by the given [NodePath]. The node path "
"should be relative to the current object and can use the colon character "
@@ -32730,26 +33320,26 @@ msgid ""
"\"[/code] or [code]\"material:next_pass:blend_mode\"[/code]."
msgstr ""
-#: doc/classes/Object.xml:239
+#: doc/classes/Object.xml:244
msgid ""
"Returns the object's unique instance ID.\n"
"This ID can be saved in [EncodedObjectAsID], and can be used to retrieve the "
"object instance with [method @GDScript.instance_from_id]."
msgstr ""
-#: doc/classes/Object.xml:249
+#: doc/classes/Object.xml:254
msgid "Returns the object's metadata entry for the given [code]name[/code]."
msgstr ""
-#: doc/classes/Object.xml:256
+#: doc/classes/Object.xml:261
msgid "Returns the object's metadata as a [PackedStringArray]."
msgstr ""
-#: doc/classes/Object.xml:263
+#: doc/classes/Object.xml:268
msgid "Returns the object's methods and their signatures as an [Array]."
msgstr ""
-#: doc/classes/Object.xml:270
+#: doc/classes/Object.xml:275
msgid ""
"Returns the object's property list as an [Array] of dictionaries.\n"
"Each property's [Dictionary] contain at least [code]name: String[/code] and "
@@ -32759,54 +33349,54 @@ msgid ""
"PropertyUsageFlags])."
msgstr ""
-#: doc/classes/Object.xml:278
+#: doc/classes/Object.xml:283
msgid ""
"Returns the object's [Script] instance, or [code]null[/code] if none is "
"assigned."
msgstr ""
-#: doc/classes/Object.xml:287
+#: doc/classes/Object.xml:292
msgid "Returns an [Array] of connections for the given [code]signal[/code]."
msgstr ""
-#: doc/classes/Object.xml:294
+#: doc/classes/Object.xml:299
msgid "Returns the list of signals as an [Array] of dictionaries."
msgstr ""
-#: doc/classes/Object.xml:303
+#: doc/classes/Object.xml:308
msgid ""
"Returns [code]true[/code] if a metadata entry is found with the given "
"[code]name[/code]."
msgstr ""
-#: doc/classes/Object.xml:312
+#: doc/classes/Object.xml:317
msgid ""
"Returns [code]true[/code] if the object contains the given [code]method[/"
"code]."
msgstr ""
-#: doc/classes/Object.xml:321
+#: doc/classes/Object.xml:326
msgid "Returns [code]true[/code] if the given [code]signal[/code] exists."
msgstr ""
-#: doc/classes/Object.xml:330
+#: doc/classes/Object.xml:335
msgid ""
"Returns [code]true[/code] if the given user-defined [code]signal[/code] "
"exists. Only signals added using [method add_user_signal] are taken into "
"account."
msgstr ""
-#: doc/classes/Object.xml:337
+#: doc/classes/Object.xml:342
msgid "Returns [code]true[/code] if signal emission blocking is enabled."
msgstr ""
-#: doc/classes/Object.xml:346
+#: doc/classes/Object.xml:351
msgid ""
"Returns [code]true[/code] if the object inherits from the given [code]class[/"
"code]."
msgstr ""
-#: doc/classes/Object.xml:357
+#: doc/classes/Object.xml:362
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32814,13 +33404,13 @@ msgid ""
"code], [code]target[/code], and [code]method[/code]."
msgstr ""
-#: doc/classes/Object.xml:365
+#: doc/classes/Object.xml:370
msgid ""
"Returns [code]true[/code] if the [method Node.queue_free] method was called "
"for the object."
msgstr ""
-#: doc/classes/Object.xml:376
+#: doc/classes/Object.xml:381
msgid ""
"Send a given notification to the object, which will also trigger a call to "
"the [method _notification] method of all classes that the object inherits "
@@ -32832,34 +33422,42 @@ msgid ""
"and then down to its successive inheriting classes."
msgstr ""
-#: doc/classes/Object.xml:384
+#: doc/classes/Object.xml:389
msgid ""
"Notify the editor that the property list has changed, so that editor plugins "
"can take the new values into account. Does nothing on export builds."
msgstr ""
-#: doc/classes/Object.xml:393
+#: doc/classes/Object.xml:398
msgid "Removes a given entry from the object's metadata."
msgstr ""
-#: doc/classes/Object.xml:404
+#: doc/classes/Object.xml:409
msgid ""
"Assigns a new value to the given property. If the [code]property[/code] does "
-"not exist, nothing will happen."
+"not exist, nothing will happen.\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:413
+#: doc/classes/Object.xml:419
msgid "If set to [code]true[/code], signal emission is blocked."
msgstr ""
-#: doc/classes/Object.xml:424
+#: doc/classes/Object.xml:430
msgid ""
"Assigns a new value to the given property, after the current frame's physics "
"step. This is equivalent to calling [method set] via [method call_deferred], "
-"i.e. [code]call_deferred(\"set\", property, value)[/code]."
+"i.e. [code]call_deferred(\"set\", property, value)[/code].\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:435
+#: doc/classes/Object.xml:442
msgid ""
"Assigns a new value to the property identified by the [NodePath]. The node "
"path should be relative to the current object and can use the colon "
@@ -32871,19 +33469,19 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:449
+#: doc/classes/Object.xml:456
msgid ""
"Defines whether the object can translate strings (with calls to [method "
"tr]). Enabled by default."
msgstr ""
-#: doc/classes/Object.xml:460
+#: doc/classes/Object.xml:467
msgid ""
"Adds or changes a given entry in the object's metadata. Metadata are "
"serialized, and can take any [Variant] value."
msgstr ""
-#: doc/classes/Object.xml:469
+#: doc/classes/Object.xml:476
msgid ""
"Assigns a script to the object. Each object can have a single script "
"assigned to it, which are used to extend its functionality.\n"
@@ -32892,7 +33490,7 @@ msgid ""
"_init] method will be called."
msgstr ""
-#: doc/classes/Object.xml:477
+#: doc/classes/Object.xml:484
msgid ""
"Returns a [String] representing the object. If not overridden, defaults to "
"[code]\"[ClassName:RID]\"[/code].\n"
@@ -32900,7 +33498,7 @@ msgid ""
"representation."
msgstr ""
-#: doc/classes/Object.xml:487
+#: doc/classes/Object.xml:494
msgid ""
"Translates a message using translation catalogs configured in the Project "
"Settings.\n"
@@ -32909,35 +33507,35 @@ msgid ""
"set_message_translation]."
msgstr ""
-#: doc/classes/Object.xml:495
+#: doc/classes/Object.xml:502
msgid "Emitted whenever the object's script is changed."
msgstr ""
-#: doc/classes/Object.xml:501
+#: doc/classes/Object.xml:508
msgid "Called right when the object is initialized. Not available in script."
msgstr ""
-#: doc/classes/Object.xml:504
+#: doc/classes/Object.xml:511
msgid "Called before the object is about to be deleted."
msgstr ""
-#: doc/classes/Object.xml:507
+#: doc/classes/Object.xml:514
msgid ""
"Connects a signal in deferred mode. This way, signal emissions are stored in "
"a queue, then set on idle time."
msgstr ""
-#: doc/classes/Object.xml:510
+#: doc/classes/Object.xml:517
msgid "Persisting connections are saved when the object is serialized to file."
msgstr ""
-#: doc/classes/Object.xml:513
+#: doc/classes/Object.xml:520
msgid "One-shot connections disconnect themselves after emission."
msgstr ""
-#: doc/classes/Object.xml:516
+#: doc/classes/Object.xml:523
msgid ""
-"Connect a signal as reference counted. This means that a given signal can be "
+"Connect a signal as reference-counted. This means that a given signal can be "
"connected several times to the same target, and will only be fully "
"disconnected once no references are left."
msgstr ""
@@ -33402,10 +34000,29 @@ msgid "Returns the keycode of the given string (e.g. \"Escape\")."
msgstr ""
#: doc/classes/OS.xml:115
-msgid "Returns the command line arguments passed to the engine."
+msgid ""
+"Returns the command-line arguments passed to the engine.\n"
+"Command-line arguments can be written in any form, including both [code]--"
+"key value[/code] and [code]--key=value[/code] forms so they can be properly "
+"parsed, as long as custom command-line arguments do not conflict with engine "
+"arguments.\n"
+"You can also incorporate environment variables using the [method "
+"get_environment] method.\n"
+"You can set [code]editor/main_run_args[/code] in the Project Settings to "
+"define command-line arguments to be passed by the editor when running the "
+"project.\n"
+"Here's a minimal example on how to parse command-line arguments into a "
+"dictionary using the [code]--key=value[/code] form for arguments:\n"
+"[codeblock]\n"
+"var arguments = {}\n"
+"for argument in OS.get_cmdline_args():\n"
+" if argument.find(\"=\") > -1:\n"
+" var key_value = argument.split(\"=\")\n"
+" arguments[key_value[0].lstrip(\"--\")] = key_value[1]\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/OS.xml:122
+#: doc/classes/OS.xml:133
msgid ""
"Returns an array of MIDI device names.\n"
"The returned array will be empty if the system MIDI driver has not "
@@ -33413,14 +34030,14 @@ msgid ""
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:133
+#: doc/classes/OS.xml:144
msgid ""
"Returns current date as a dictionary of keys: [code]year[/code], "
"[code]month[/code], [code]day[/code], [code]weekday[/code], [code]dst[/code] "
"(Daylight Savings Time)."
msgstr ""
-#: doc/classes/OS.xml:142
+#: doc/classes/OS.xml:153
msgid ""
"Returns current datetime as a dictionary of keys: [code]year[/code], "
"[code]month[/code], [code]day[/code], [code]weekday[/code], [code]dst[/code] "
@@ -33428,7 +34045,7 @@ msgid ""
"[code]second[/code]."
msgstr ""
-#: doc/classes/OS.xml:151
+#: doc/classes/OS.xml:162
msgid ""
"Gets a dictionary of time values corresponding to the given UNIX epoch time "
"(in seconds).\n"
@@ -33437,22 +34054,22 @@ msgid ""
"the epoch."
msgstr ""
-#: doc/classes/OS.xml:161
+#: doc/classes/OS.xml:172
msgid "Returns an environment variable."
msgstr ""
-#: doc/classes/OS.xml:168
+#: doc/classes/OS.xml:179
msgid "Returns the path to the current engine executable."
msgstr ""
-#: doc/classes/OS.xml:175
+#: doc/classes/OS.xml:186
msgid ""
"With this function you can get the list of dangerous permissions that have "
"been granted to the Android application.\n"
"[b]Note:[/b] This method is implemented on Android."
msgstr ""
-#: doc/classes/OS.xml:185
+#: doc/classes/OS.xml:196
msgid ""
"Returns the given keycode as a string (e.g. Return values: [code]\"Escape\"[/"
"code], [code]\"Shift+Escape\"[/code]).\n"
@@ -33460,18 +34077,18 @@ msgid ""
"get_keycode_with_modifiers]."
msgstr ""
-#: doc/classes/OS.xml:193
+#: doc/classes/OS.xml:204
msgid "Returns the host OS locale."
msgstr ""
-#: doc/classes/OS.xml:200
+#: doc/classes/OS.xml:211
msgid ""
"Returns the model name of the current device.\n"
"[b]Note:[/b] This method is implemented on Android and iOS. Returns "
"[code]\"GenericDevice\"[/code] on unsupported platforms."
msgstr ""
-#: doc/classes/OS.xml:208
+#: doc/classes/OS.xml:219
msgid ""
"Returns the name of the host OS. Possible values are: [code]\"Android\"[/"
"code], [code]\"iOS\"[/code], [code]\"HTML5\"[/code], [code]\"OSX\"[/code], "
@@ -33479,81 +34096,81 @@ msgid ""
"[code]\"X11\"[/code]."
msgstr ""
-#: doc/classes/OS.xml:215
+#: doc/classes/OS.xml:226
msgid ""
"Returns the project's process ID.\n"
"[b]Note:[/b] This method is implemented on Android, iOS, Linux, macOS and "
"Windows."
msgstr ""
-#: doc/classes/OS.xml:223
+#: doc/classes/OS.xml:234
msgid "Returns the number of threads available on the host machine."
msgstr ""
-#: doc/classes/OS.xml:230
+#: doc/classes/OS.xml:241
msgid ""
"Returns the amount of time in milliseconds it took for the boot logo to "
"appear."
msgstr ""
-#: doc/classes/OS.xml:237
+#: doc/classes/OS.xml:248
msgid "Returns the maximum amount of static memory used (only works in debug)."
msgstr ""
-#: doc/classes/OS.xml:244
+#: doc/classes/OS.xml:255
msgid "Returns the amount of static memory being used by the program in bytes."
msgstr ""
-#: doc/classes/OS.xml:253
+#: doc/classes/OS.xml:264
msgid ""
"Returns the actual path to commonly used folders across different platforms. "
"Available locations are specified in [enum SystemDir].\n"
"[b]Note:[/b] This method is implemented on Android, Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:261
+#: doc/classes/OS.xml:272
msgid ""
"Returns the total number of available tablet drivers.\n"
"[b]Note:[/b] This method is implemented on Windows."
msgstr ""
-#: doc/classes/OS.xml:271
+#: doc/classes/OS.xml:282
msgid ""
"Returns the tablet driver name for the given index.\n"
"[b]Note:[/b] This method is implemented on Windows."
msgstr ""
-#: doc/classes/OS.xml:279
+#: doc/classes/OS.xml:290
msgid ""
"Returns the amount of time passed in milliseconds since the engine started."
msgstr ""
-#: doc/classes/OS.xml:286
+#: doc/classes/OS.xml:297
msgid ""
"Returns the amount of time passed in microseconds since the engine started."
msgstr ""
-#: doc/classes/OS.xml:295
+#: doc/classes/OS.xml:306
msgid "Returns current time as a dictionary of keys: hour, minute, second."
msgstr ""
-#: doc/classes/OS.xml:302
+#: doc/classes/OS.xml:313
msgid ""
"Returns the current time zone as a dictionary with the keys: bias and name."
msgstr ""
-#: doc/classes/OS.xml:309
+#: doc/classes/OS.xml:320
msgid ""
"Returns a string that is unique to the device.\n"
"[b]Note:[/b] Returns an empty string on HTML5 and UWP, as this method isn't "
"implemented on those platforms yet."
msgstr ""
-#: doc/classes/OS.xml:317
+#: doc/classes/OS.xml:328
msgid "Returns the current UNIX epoch timestamp."
msgstr ""
-#: doc/classes/OS.xml:326
+#: doc/classes/OS.xml:337
msgid ""
"Gets an epoch time value from a dictionary of time values.\n"
"[code]datetime[/code] must be populated with the following keys: [code]year[/"
@@ -33564,7 +34181,7 @@ msgid ""
"ignored."
msgstr ""
-#: doc/classes/OS.xml:335
+#: doc/classes/OS.xml:346
msgid ""
"Returns the absolute directory path where user data is written ([code]user://"
"[/code]).\n"
@@ -33582,11 +34199,11 @@ msgid ""
"[/code]."
msgstr ""
-#: doc/classes/OS.xml:348
+#: doc/classes/OS.xml:359
msgid "Returns [code]true[/code] if an environment variable exists."
msgstr ""
-#: doc/classes/OS.xml:357
+#: doc/classes/OS.xml:368
msgid ""
"Returns [code]true[/code] if the feature for the given feature tag is "
"supported in the currently running instance, depending on platform, build "
@@ -33597,7 +34214,7 @@ msgid ""
"[b]Note:[/b] Tag names are case-sensitive."
msgstr ""
-#: doc/classes/OS.xml:365
+#: doc/classes/OS.xml:376
msgid ""
"Returns [code]true[/code] if the Godot binary used to run the project is a "
"[i]debug[/i] export template, or when running in the editor.\n"
@@ -33608,26 +34225,26 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/OS.xml:376
+#: doc/classes/OS.xml:387
msgid ""
"Returns [code]true[/code] if the input keycode corresponds to a Unicode "
"character."
msgstr ""
-#: doc/classes/OS.xml:383
+#: doc/classes/OS.xml:394
msgid ""
"Returns [code]true[/code] if the engine was executed with [code]-v[/code] "
"(verbose stdout)."
msgstr ""
-#: doc/classes/OS.xml:390
+#: doc/classes/OS.xml:401
msgid ""
"If [code]true[/code], the [code]user://[/code] file system is persistent, so "
"that its state is the same after a player quits and starts the game again. "
"Relevant to the HTML5 platform, where this persistence may be unavailable."
msgstr ""
-#: doc/classes/OS.xml:399
+#: doc/classes/OS.xml:410
msgid ""
"Kill (terminate) the process identified by the given process ID ([code]pid[/"
"code]), e.g. the one returned by [method execute] in non-blocking mode.\n"
@@ -33637,37 +34254,37 @@ msgid ""
"Windows."
msgstr ""
-#: doc/classes/OS.xml:408
+#: doc/classes/OS.xml:419
msgid ""
"Initialises the singleton for the system MIDI driver.\n"
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:418
+#: doc/classes/OS.xml:429
msgid ""
"Shows all resources in the game. Optionally, the list can be written to a "
"file by specifying a file path in [code]tofile[/code]."
msgstr ""
-#: doc/classes/OS.xml:425
+#: doc/classes/OS.xml:436
msgid "Shows the list of loaded textures sorted by size in memory."
msgstr ""
-#: doc/classes/OS.xml:434
+#: doc/classes/OS.xml:445
msgid "Shows the number of resources loaded by the game of the given types."
msgstr ""
-#: doc/classes/OS.xml:443
+#: doc/classes/OS.xml:454
msgid "Shows all resources currently used by the game."
msgstr ""
-#: doc/classes/OS.xml:452
+#: doc/classes/OS.xml:463
msgid ""
"At the moment this function is only used by [code]AudioDriverOpenSL[/code] "
"to request permission for [code]RECORD_AUDIO[/code] on Android."
msgstr ""
-#: doc/classes/OS.xml:459
+#: doc/classes/OS.xml:470
msgid ""
"With this function you can request dangerous permissions since normal "
"permissions are automatically granted at install time in Android "
@@ -33675,15 +34292,15 @@ msgid ""
"[b]Note:[/b] This method is implemented on Android."
msgstr ""
-#: doc/classes/OS.xml:469
+#: doc/classes/OS.xml:480
msgid "Sets the name of the current thread."
msgstr ""
-#: doc/classes/OS.xml:478
+#: doc/classes/OS.xml:489
msgid "Enables backup saves if [code]enabled[/code] is [code]true[/code]."
msgstr ""
-#: doc/classes/OS.xml:487
+#: doc/classes/OS.xml:498
msgid ""
"Requests the OS to open a resource with the most appropriate program. For "
"example:\n"
@@ -33702,7 +34319,7 @@ msgid ""
"and Windows."
msgstr ""
-#: doc/classes/OS.xml:498
+#: doc/classes/OS.xml:509
msgid ""
"The exit code passed to the OS when the main loop exits. By convention, an "
"exit code of [code]0[/code] indicates success whereas a non-zero exit code "
@@ -33712,137 +34329,137 @@ msgid ""
"with an [code]exit_code[/code] argument passed."
msgstr ""
-#: doc/classes/OS.xml:502
+#: doc/classes/OS.xml:513
msgid ""
"If [code]true[/code], the engine optimizes for low processor usage by only "
"refreshing the screen if needed. Can improve battery consumption on mobile."
msgstr ""
-#: doc/classes/OS.xml:505
+#: doc/classes/OS.xml:516
msgid ""
"The amount of sleeping between frames when the low-processor usage mode is "
"enabled (in microseconds). Higher values will result in lower CPU usage."
msgstr ""
-#: doc/classes/OS.xml:508
-msgid "The current tablet drvier in use."
+#: doc/classes/OS.xml:519
+msgid "The current tablet driver in use."
msgstr ""
-#: doc/classes/OS.xml:513
+#: doc/classes/OS.xml:524
msgid ""
"The GLES2 rendering backend. It uses OpenGL ES 2.0 on mobile devices, OpenGL "
"2.1 on desktop platforms and WebGL 1.0 on the web."
msgstr ""
-#: doc/classes/OS.xml:516
+#: doc/classes/OS.xml:527
msgid "The Vulkan rendering backend."
msgstr ""
-#: doc/classes/OS.xml:519
+#: doc/classes/OS.xml:530
msgid "Sunday."
msgstr ""
-#: doc/classes/OS.xml:522
+#: doc/classes/OS.xml:533
msgid "Monday."
msgstr ""
-#: doc/classes/OS.xml:525
+#: doc/classes/OS.xml:536
msgid "Tuesday."
msgstr ""
-#: doc/classes/OS.xml:528
+#: doc/classes/OS.xml:539
msgid "Wednesday."
msgstr ""
-#: doc/classes/OS.xml:531
+#: doc/classes/OS.xml:542
msgid "Thursday."
msgstr ""
-#: doc/classes/OS.xml:534
+#: doc/classes/OS.xml:545
msgid "Friday."
msgstr ""
-#: doc/classes/OS.xml:537
+#: doc/classes/OS.xml:548
msgid "Saturday."
msgstr ""
-#: doc/classes/OS.xml:540
+#: doc/classes/OS.xml:551
msgid "January."
msgstr ""
-#: doc/classes/OS.xml:543
+#: doc/classes/OS.xml:554
msgid "February."
msgstr ""
-#: doc/classes/OS.xml:546
+#: doc/classes/OS.xml:557
msgid "March."
msgstr ""
-#: doc/classes/OS.xml:549
+#: doc/classes/OS.xml:560
msgid "April."
msgstr ""
-#: doc/classes/OS.xml:552
+#: doc/classes/OS.xml:563
msgid "May."
msgstr ""
-#: doc/classes/OS.xml:555
+#: doc/classes/OS.xml:566
msgid "June."
msgstr ""
-#: doc/classes/OS.xml:558
+#: doc/classes/OS.xml:569
msgid "July."
msgstr ""
-#: doc/classes/OS.xml:561
+#: doc/classes/OS.xml:572
msgid "August."
msgstr ""
-#: doc/classes/OS.xml:564
+#: doc/classes/OS.xml:575
msgid "September."
msgstr ""
-#: doc/classes/OS.xml:567
+#: doc/classes/OS.xml:578
msgid "October."
msgstr ""
-#: doc/classes/OS.xml:570
+#: doc/classes/OS.xml:581
msgid "November."
msgstr ""
-#: doc/classes/OS.xml:573
+#: doc/classes/OS.xml:584
msgid "December."
msgstr ""
-#: doc/classes/OS.xml:576
+#: doc/classes/OS.xml:587
msgid "Desktop directory path."
msgstr ""
-#: doc/classes/OS.xml:579
+#: doc/classes/OS.xml:590
msgid "DCIM (Digital Camera Images) directory path."
msgstr ""
-#: doc/classes/OS.xml:582
+#: doc/classes/OS.xml:593
msgid "Documents directory path."
msgstr ""
-#: doc/classes/OS.xml:585
+#: doc/classes/OS.xml:596
msgid "Downloads directory path."
msgstr ""
-#: doc/classes/OS.xml:588
+#: doc/classes/OS.xml:599
msgid "Movies directory path."
msgstr ""
-#: doc/classes/OS.xml:591
+#: doc/classes/OS.xml:602
msgid "Music directory path."
msgstr ""
-#: doc/classes/OS.xml:594
+#: doc/classes/OS.xml:605
msgid "Pictures directory path."
msgstr ""
-#: doc/classes/OS.xml:597
+#: doc/classes/OS.xml:608
msgid "Ringtones directory path."
msgstr ""
@@ -33897,7 +34514,15 @@ msgid ""
"should always be preferred."
msgstr ""
-#: doc/classes/PackedByteArray.xml:85
+#: doc/classes/PackedByteArray.xml:87 doc/classes/PackedColorArray.xml:53
+#: doc/classes/PackedFloat32Array.xml:54 doc/classes/PackedFloat64Array.xml:54
+#: doc/classes/PackedInt32Array.xml:54 doc/classes/PackedInt64Array.xml:54
+#: doc/classes/PackedStringArray.xml:53 doc/classes/PackedVector2Array.xml:53
+#: doc/classes/PackedVector3Array.xml:53
+msgid "Returns [code]true[/code] if the array contains [code]value[/code]."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:94
msgid ""
"Returns a hexadecimal representation of this array as a [String].\n"
"[codeblock]\n"
@@ -33906,39 +34531,48 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/PackedByteArray.xml:100 doc/classes/PackedColorArray.xml:55
-#: doc/classes/PackedFloat32Array.xml:56 doc/classes/PackedFloat64Array.xml:56
-#: doc/classes/PackedStringArray.xml:55 doc/classes/PackedVector2Array.xml:55
-#: doc/classes/PackedVector3Array.xml:55
+#: doc/classes/PackedByteArray.xml:109 doc/classes/PackedColorArray.xml:64
+#: doc/classes/PackedFloat32Array.xml:65 doc/classes/PackedFloat64Array.xml:65
+#: doc/classes/PackedStringArray.xml:64 doc/classes/PackedVector2Array.xml:64
+#: doc/classes/PackedVector3Array.xml:64
msgid ""
"Inserts a new element at a given position in the array. The position must be "
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PackedByteArray.xml:134 doc/classes/PackedColorArray.xml:89
-#: doc/classes/PackedFloat32Array.xml:90 doc/classes/PackedFloat64Array.xml:90
-#: doc/classes/PackedInt32Array.xml:90 doc/classes/PackedInt64Array.xml:90
-#: doc/classes/PackedStringArray.xml:89 doc/classes/PackedVector2Array.xml:89
-#: doc/classes/PackedVector3Array.xml:89
+#: doc/classes/PackedByteArray.xml:143 doc/classes/PackedColorArray.xml:98
+#: doc/classes/PackedFloat32Array.xml:99 doc/classes/PackedFloat64Array.xml:99
+#: doc/classes/PackedInt32Array.xml:99 doc/classes/PackedInt64Array.xml:99
+#: doc/classes/PackedStringArray.xml:98 doc/classes/PackedVector2Array.xml:98
+#: doc/classes/PackedVector3Array.xml:98
msgid ""
"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."
msgstr ""
-#: doc/classes/PackedByteArray.xml:145
+#: doc/classes/PackedByteArray.xml:154
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PackedByteArray.xml:152 doc/classes/PackedColorArray.xml:107
-#: doc/classes/PackedFloat32Array.xml:108
-#: doc/classes/PackedFloat64Array.xml:108 doc/classes/PackedStringArray.xml:107
-#: doc/classes/PackedVector2Array.xml:107
-#: doc/classes/PackedVector3Array.xml:107
+#: doc/classes/PackedByteArray.xml:161 doc/classes/PackedColorArray.xml:116
+#: doc/classes/PackedFloat32Array.xml:117
+#: doc/classes/PackedFloat64Array.xml:117 doc/classes/PackedStringArray.xml:116
+#: doc/classes/PackedVector2Array.xml:116
+#: doc/classes/PackedVector3Array.xml:116
msgid "Returns the size of the array."
msgstr ""
-#: doc/classes/PackedByteArray.xml:163
+#: doc/classes/PackedByteArray.xml:168 doc/classes/PackedColorArray.xml:123
+#: doc/classes/PackedFloat32Array.xml:124
+#: doc/classes/PackedFloat64Array.xml:124 doc/classes/PackedInt32Array.xml:124
+#: doc/classes/PackedInt64Array.xml:124 doc/classes/PackedStringArray.xml:123
+#: doc/classes/PackedVector2Array.xml:123
+#: doc/classes/PackedVector3Array.xml:123
+msgid "Sorts the elements of the array in ascending order."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:179
msgid ""
"Returns the slice of the [PackedByteArray] between indices (inclusive) as a "
"new [PackedByteArray]. Any negative index is considered to be from the end "
@@ -33966,12 +34600,12 @@ msgstr ""
msgid "Appends a [PackedColorArray] at the end of this array."
msgstr ""
-#: doc/classes/PackedColorArray.xml:71 doc/classes/PackedInt32Array.xml:72
-#: doc/classes/PackedInt64Array.xml:72
+#: doc/classes/PackedColorArray.xml:80 doc/classes/PackedInt32Array.xml:81
+#: doc/classes/PackedInt64Array.xml:81
msgid "Appends a value to the array."
msgstr ""
-#: doc/classes/PackedColorArray.xml:100
+#: doc/classes/PackedColorArray.xml:109
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -34001,8 +34635,8 @@ msgstr ""
msgid "Appends a [PackedFloat32Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedFloat32Array.xml:101
-#: doc/classes/PackedFloat64Array.xml:101
+#: doc/classes/PackedFloat32Array.xml:110
+#: doc/classes/PackedFloat64Array.xml:110
msgid "Changes the float at the given index."
msgstr ""
@@ -34055,17 +34689,17 @@ msgstr ""
msgid "Appends a [PackedInt32Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:56 doc/classes/PackedInt64Array.xml:56
+#: doc/classes/PackedInt32Array.xml:65 doc/classes/PackedInt64Array.xml:65
msgid ""
"Inserts a new integer at a given position in the array. The position must be "
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:101 doc/classes/PackedInt64Array.xml:101
+#: doc/classes/PackedInt32Array.xml:110 doc/classes/PackedInt64Array.xml:110
msgid "Changes the integer at the given index."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:108 doc/classes/PackedInt64Array.xml:108
+#: doc/classes/PackedInt32Array.xml:117 doc/classes/PackedInt64Array.xml:117
msgid "Returns the array size."
msgstr ""
@@ -34106,6 +34740,14 @@ msgid ""
"Can be used to save a node to a file. When saving, the node as well as all "
"the node it owns get saved (see [code]owner[/code] property on [Node]).\n"
"[b]Note:[/b] The node doesn't need to own itself.\n"
+"[b]Example of loading a saved scene:[/b]\n"
+"[codeblock]\n"
+"# Use `load()` instead of `preload()` if the path isn't known at compile-"
+"time.\n"
+"var scene = preload(\"res://scene.tscn\").instance()\n"
+"# Add the node as a child of the node the script is attached to.\n"
+"add_child(scene)\n"
+"[/codeblock]\n"
"[b]Example of saving a node with different owners:[/b] The following example "
"creates 3 objects: [code]Node2D[/code] ([code]node[/code]), "
"[code]RigidBody2D[/code] ([code]rigid[/code]) and [code]CollisionObject2D[/"
@@ -34137,29 +34779,29 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/PackedScene.xml:40
+#: doc/classes/PackedScene.xml:47
msgid "Returns [code]true[/code] if the scene file has nodes."
msgstr ""
-#: doc/classes/PackedScene.xml:47
+#: doc/classes/PackedScene.xml:54
msgid ""
"Returns the [code]SceneState[/code] representing the scene file contents."
msgstr ""
-#: doc/classes/PackedScene.xml:56
+#: doc/classes/PackedScene.xml:63
msgid ""
"Instantiates the scene's node hierarchy. Triggers child scene "
"instantiation(s). Triggers a [constant Node.NOTIFICATION_INSTANCED] "
"notification on the root node."
msgstr ""
-#: doc/classes/PackedScene.xml:65
+#: doc/classes/PackedScene.xml:72
msgid ""
"Pack will ignore any sub-nodes not owned by given node. See [member Node."
"owner]."
msgstr ""
-#: doc/classes/PackedScene.xml:71
+#: doc/classes/PackedScene.xml:78
msgid ""
"A dictionary representation of the scene contents.\n"
"Available keys include \"rnames\" and \"variants\" for resources, "
@@ -34168,18 +34810,18 @@ msgid ""
"connections, and \"version\" for the format style of the PackedScene."
msgstr ""
-#: doc/classes/PackedScene.xml:77
+#: doc/classes/PackedScene.xml:84
msgid "If passed to [method instance], blocks edits to the scene state."
msgstr ""
-#: doc/classes/PackedScene.xml:80
+#: doc/classes/PackedScene.xml:87
msgid ""
"If passed to [method instance], provides local scene resources to the local "
"scene.\n"
"[b]Note:[/b] Only available in editor builds."
msgstr ""
-#: doc/classes/PackedScene.xml:84
+#: doc/classes/PackedScene.xml:91
msgid ""
"If passed to [method instance], provides local scene resources to the local "
"scene. Only the main scene should receive the main edit state.\n"
@@ -34207,11 +34849,11 @@ msgstr ""
msgid "Appends a [PackedStringArray] at the end of this array."
msgstr ""
-#: doc/classes/PackedStringArray.xml:71
+#: doc/classes/PackedStringArray.xml:80
msgid "Appends a string element at end of the array."
msgstr ""
-#: doc/classes/PackedStringArray.xml:100
+#: doc/classes/PackedStringArray.xml:109
msgid "Changes the [String] at the given index."
msgstr ""
@@ -34236,11 +34878,11 @@ msgstr ""
msgid "Appends a [PackedVector2Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedVector2Array.xml:71
+#: doc/classes/PackedVector2Array.xml:80
msgid "Inserts a [Vector2] at the end."
msgstr ""
-#: doc/classes/PackedVector2Array.xml:100
+#: doc/classes/PackedVector2Array.xml:109
msgid "Changes the [Vector2] at the given index."
msgstr ""
@@ -34265,11 +34907,11 @@ msgstr ""
msgid "Appends a [PackedVector3Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedVector3Array.xml:71
+#: doc/classes/PackedVector3Array.xml:80
msgid "Inserts a [Vector3] at the end."
msgstr ""
-#: doc/classes/PackedVector3Array.xml:100
+#: doc/classes/PackedVector3Array.xml:109
msgid "Changes the [Vector3] at the given index."
msgstr ""
@@ -35160,13 +35802,55 @@ msgid ""
"as the values displayed in the [b]Monitor[/b] tab in the editor's "
"[b]Debugger[/b] panel. By using the [method get_monitor] method of this "
"class, you can access this data from your code.\n"
+"You can add custom monitors using the [method add_custom_monitor] method. "
+"Custom monitors are available in [b]Monitor[/b] tab in the editor's "
+"[b]Debugger[/b] panel together with built-in monitors.\n"
"[b]Note:[/b] A few of these monitors are only available in debug mode and "
"will always return 0 when used in a release build.\n"
"[b]Note:[/b] Many of these monitors are not updated in real-time, so there "
-"may be a short delay between changes."
+"may be a short delay between changes.\n"
+"[b]Note:[/b] Custom monitors do not support negative values. Negative values "
+"are clamped to 0."
+msgstr ""
+
+#: doc/classes/Performance.xml:26
+msgid ""
+"Adds a custom monitor with name same as id. You can specify the category of "
+"monitor using '/' in id. If there are more than one '/' then default "
+"category is used. Default category is \"Custom\".\n"
+"[codeblock]\n"
+"Performance.add_custom_monitor(\"MyCategory/MyMonitor\", some_callable) # "
+"Adds monitor with name \"MyName\" to category \"MyCategory\"\n"
+"Performance.add_custom_monitor(\"MyMonitor\", some_callable) # Adds monitor "
+"with name \"MyName\" to category \"Custom\"\n"
+"# Note: \"MyCategory/MyMonitor\" and \"MyMonitor\" have same name but "
+"different ids so above code is valid\n"
+"Performance.add_custom_monitor(\"Custom/MyMonitor\", some_callable) # Adds "
+"monitor with name \"MyName\" to category \"Custom\"\n"
+"# Note: \"MyMonitor\" and \"Custom/MyMonitor\" have same name and same "
+"category but different ids so above code is valid\n"
+"Performance.add_custom_monitor(\"MyCategoryOne/MyCategoryTwo/MyMonitor\", "
+"some_callable) # Adds monitor with name \"MyCategoryOne/MyCategoryTwo/"
+"MyMonitor\" to category \"Custom\"\n"
+"[/codeblock]\n"
+"The debugger calls the callable to get the value of custom monitor. The "
+"callable must return a number.\n"
+"Callables are called with arguments supplied in argument array.\n"
+"[b]Note:[/b] It throws an error if given id is already present."
msgstr ""
-#: doc/classes/Performance.xml:20
+#: doc/classes/Performance.xml:46
+msgid ""
+"Returns the value of custom monitor with given id. The callable is called to "
+"get the value of custom monitor.\n"
+"[b]Note:[/b] It throws an error if the given id is absent."
+msgstr ""
+
+#: doc/classes/Performance.xml:54
+msgid "Returns the names of active custom monitors in an array."
+msgstr ""
+
+#: doc/classes/Performance.xml:63
msgid ""
"Returns the value of one of the available monitors. You should provide one "
"of the [enum Monitor] constants as the argument, like this:\n"
@@ -35176,123 +35860,139 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Performance.xml:29
+#: doc/classes/Performance.xml:73
+msgid "Returns the last tick in which custom monitor was added/removed."
+msgstr ""
+
+#: doc/classes/Performance.xml:82
+msgid ""
+"Returns true if custom monitor with the given id is present otherwise "
+"returns false."
+msgstr ""
+
+#: doc/classes/Performance.xml:91
+msgid ""
+"Removes the custom monitor with given id.\n"
+"[b]Note:[/b] It throws an error if the given id is already absent."
+msgstr ""
+
+#: doc/classes/Performance.xml:98
msgid "Number of frames per second."
msgstr ""
-#: doc/classes/Performance.xml:32
+#: doc/classes/Performance.xml:101
msgid "Time it took to complete one frame, in seconds."
msgstr ""
-#: doc/classes/Performance.xml:35
+#: doc/classes/Performance.xml:104
msgid "Time it took to complete one physics frame, in seconds."
msgstr ""
-#: doc/classes/Performance.xml:38
+#: doc/classes/Performance.xml:107
msgid ""
"Static memory currently used, in bytes. Not available in release builds."
msgstr ""
-#: doc/classes/Performance.xml:41
+#: doc/classes/Performance.xml:110
msgid "Available static memory. Not available in release builds."
msgstr ""
-#: doc/classes/Performance.xml:44
+#: doc/classes/Performance.xml:113
msgid ""
"Largest amount of memory the message queue buffer has used, in bytes. The "
"message queue is used for deferred functions calls and notifications."
msgstr ""
-#: doc/classes/Performance.xml:47
+#: doc/classes/Performance.xml:116
msgid "Number of objects currently instanced (including nodes)."
msgstr ""
-#: doc/classes/Performance.xml:50
+#: doc/classes/Performance.xml:119
msgid "Number of resources currently used."
msgstr ""
-#: doc/classes/Performance.xml:53
+#: doc/classes/Performance.xml:122
msgid ""
"Number of nodes currently instanced in the scene tree. This also includes "
"the root node."
msgstr ""
-#: doc/classes/Performance.xml:56
+#: doc/classes/Performance.xml:125
msgid ""
"Number of orphan nodes, i.e. nodes which are not parented to a node of the "
"scene tree."
msgstr ""
-#: doc/classes/Performance.xml:59
+#: doc/classes/Performance.xml:128
msgid "3D objects drawn per frame."
msgstr ""
-#: doc/classes/Performance.xml:62
+#: doc/classes/Performance.xml:131
msgid "Vertices drawn per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:65
+#: doc/classes/Performance.xml:134
msgid "Material changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:68
+#: doc/classes/Performance.xml:137
msgid "Shader changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:71
+#: doc/classes/Performance.xml:140
msgid "Render surface changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:74
+#: doc/classes/Performance.xml:143
msgid "Draw calls per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:77 doc/classes/RenderingServer.xml:3805
+#: doc/classes/Performance.xml:146 doc/classes/RenderingServer.xml:3816
msgid ""
"The amount of video memory used, i.e. texture and vertex memory combined."
msgstr ""
-#: doc/classes/Performance.xml:80 doc/classes/RenderingServer.xml:3808
+#: doc/classes/Performance.xml:149 doc/classes/RenderingServer.xml:3819
msgid "The amount of texture memory used."
msgstr ""
-#: doc/classes/Performance.xml:83 doc/classes/RenderingServer.xml:3811
+#: doc/classes/Performance.xml:152 doc/classes/RenderingServer.xml:3822
msgid "The amount of vertex memory used."
msgstr ""
-#: doc/classes/Performance.xml:86 doc/classes/RenderingServer.xml:3802
+#: doc/classes/Performance.xml:155 doc/classes/RenderingServer.xml:3813
msgid "Unimplemented in the GLES2 rendering backend, always returns 0."
msgstr ""
-#: doc/classes/Performance.xml:89
+#: doc/classes/Performance.xml:158
msgid "Number of active [RigidBody2D] nodes in the game."
msgstr ""
-#: doc/classes/Performance.xml:92
+#: doc/classes/Performance.xml:161
msgid "Number of collision pairs in the 2D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:95
+#: doc/classes/Performance.xml:164
msgid "Number of islands in the 2D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:98
+#: doc/classes/Performance.xml:167
msgid "Number of active [RigidBody3D] and [VehicleBody3D] nodes in the game."
msgstr ""
-#: doc/classes/Performance.xml:101
+#: doc/classes/Performance.xml:170
msgid "Number of collision pairs in the 3D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:104
+#: doc/classes/Performance.xml:173
msgid "Number of islands in the 3D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:107
+#: doc/classes/Performance.xml:176
msgid "Output latency of the [AudioServer]."
msgstr ""
-#: doc/classes/Performance.xml:110
+#: doc/classes/Performance.xml:179
msgid "Represents the size of the [enum Monitor] enum."
msgstr ""
@@ -35316,27 +36016,27 @@ msgstr ""
msgid "Damps the body's rotation if greater than [code]0[/code]."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:70 doc/classes/RigidBody3D.xml:132
+#: doc/classes/PhysicalBone3D.xml:70 doc/classes/RigidBody3D.xml:139
msgid "Lock the body's rotation in the X axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:73 doc/classes/RigidBody3D.xml:135
+#: doc/classes/PhysicalBone3D.xml:73 doc/classes/RigidBody3D.xml:142
msgid "Lock the body's rotation in the Y axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:76 doc/classes/RigidBody3D.xml:138
+#: doc/classes/PhysicalBone3D.xml:76 doc/classes/RigidBody3D.xml:145
msgid "Lock the body's rotation in the Z axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:79 doc/classes/RigidBody3D.xml:141
+#: doc/classes/PhysicalBone3D.xml:79 doc/classes/RigidBody3D.xml:148
msgid "Lock the body's movement in the X axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:82 doc/classes/RigidBody3D.xml:144
+#: doc/classes/PhysicalBone3D.xml:82 doc/classes/RigidBody3D.xml:151
msgid "Lock the body's movement in the Y axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:85 doc/classes/RigidBody3D.xml:147
+#: doc/classes/PhysicalBone3D.xml:85 doc/classes/RigidBody3D.xml:154
msgid "Lock the body's movement in the Z axis."
msgstr ""
@@ -35391,12 +36091,12 @@ msgstr ""
msgid "Damps the body's movement if greater than [code]0[/code]."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:118 doc/classes/RigidBody2D.xml:158
-#: doc/classes/RigidBody3D.xml:175
+#: doc/classes/PhysicalBone3D.xml:118 doc/classes/RigidBody2D.xml:159
+#: doc/classes/RigidBody3D.xml:183
msgid "The body's mass."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:121 doc/classes/RigidBody3D.xml:188
+#: doc/classes/PhysicalBone3D.xml:121 doc/classes/RigidBody3D.xml:196
msgid ""
"The body's weight based on its mass and the global 3D gravity. Global values "
"are set in [b]Project > Project Settings > Physics > 3d[/b]."
@@ -35703,7 +36403,7 @@ msgid "The inverse of the mass of the body."
msgstr ""
#: doc/classes/PhysicsDirectBodyState2D.xml:195
-#: doc/classes/PhysicsDirectBodyState3D.xml:198 doc/classes/RigidBody2D.xml:155
+#: doc/classes/PhysicsDirectBodyState3D.xml:198 doc/classes/RigidBody2D.xml:156
msgid "The body's linear velocity."
msgstr ""
@@ -36256,7 +36956,7 @@ msgid ""
msgstr ""
#: doc/classes/PhysicsServer2D.xml:620 doc/classes/PhysicsServer3D.xml:637
-#: doc/classes/RigidBody3D.xml:120
+#: doc/classes/RigidBody3D.xml:127
msgid ""
"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."
@@ -37321,47 +38021,64 @@ msgid ""
"collision queries. See also [PhysicsShapeQueryResult2D]."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:18
-msgid ""
-"Sets the [Shape2D] that will be used for collision/intersection queries."
-msgstr ""
-
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:24
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:15
msgid "If [code]true[/code], the query will take [Area2D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:18
msgid ""
"If [code]true[/code], the query will take [PhysicsBody2D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:30
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:30
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:21
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:21
msgid "The physics layer(s) the query will take into account (as a bitmask)."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:33
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:33
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:24
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:24
msgid ""
"The list of objects or object [RID]s that will be excluded from collisions."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:36
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:36 doc/classes/Shape3D.xml:16
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:27 doc/classes/Shape3D.xml:16
msgid "The collision margin for the shape."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:39
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:30
msgid "The motion of the shape being queried for."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:42
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:39
-msgid "The queried shape's [RID]. See also [method set_shape]."
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:33
+msgid ""
+"The [Shape2D] that will be used for collision/intersection queries. This "
+"stores the actual reference which avoids the shape to be released while "
+"being used for queries, so always prefer using this over [member shape_rid]."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:45
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:42
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:36
+msgid ""
+"The queried shape's [RID] that will be used for collision/intersection "
+"queries. Use this over [member shape] if you want to optimize for "
+"performance using the Servers API:\n"
+"[codeblock]\n"
+"var shape_rid = PhysicsServer2D.circle_shape_create()\n"
+"var radius = 64\n"
+"PhysicsServer2D.shape_set_data(shape_rid, radius)\n"
+"\n"
+"var params = PhysicsShapeQueryParameters2D.new()\n"
+"params.shape_rid = shape_rid\n"
+"\n"
+"# Execute physics queries here...\n"
+"\n"
+"# Release the shape when done with physics queries.\n"
+"PhysicsServer2D.free_rid(shape_rid)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:52
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:49
msgid "The queried shape's transform matrix."
msgstr ""
@@ -37375,18 +38092,40 @@ msgid ""
"collision queries. See also [PhysicsShapeQueryResult3D]."
msgstr ""
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:15
+msgid "If [code]true[/code], the query will take [Area3D]s into account."
+msgstr ""
+
#: doc/classes/PhysicsShapeQueryParameters3D.xml:18
msgid ""
-"Sets the [Shape3D] that will be used for collision/intersection queries."
+"If [code]true[/code], the query will take [PhysicsBody3D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:24
-msgid "If [code]true[/code], the query will take [Area3D]s into account."
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:30
+msgid ""
+"The [Shape3D] that will be used for collision/intersection queries. This "
+"stores the actual reference which avoids the shape to be released while "
+"being used for queries, so always prefer using this over [member shape_rid]."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:33
msgid ""
-"If [code]true[/code], the query will take [PhysicsBody3D]s into account."
+"The queried shape's [RID] that will be used for collision/intersection "
+"queries. Use this over [member shape] if you want to optimize for "
+"performance using the Servers API:\n"
+"[codeblock]\n"
+"var shape_rid = PhysicsServer3D.shape_create(PhysicsServer3D.SHAPE_SPHERE)\n"
+"var radius = 2.0\n"
+"PhysicsServer3D.shape_set_data(shape_rid, radius)\n"
+"\n"
+"var params = PhysicsShapeQueryParameters3D.new()\n"
+"params.shape_rid = shape_rid\n"
+"\n"
+"# Execute physics queries here...\n"
+"\n"
+"# Release the shape when done with physics queries.\n"
+"PhysicsServer3D.free_rid(shape_rid)\n"
+"[/codeblock]"
msgstr ""
#: doc/classes/PhysicsShapeQueryResult2D.xml:4
@@ -37527,92 +38266,94 @@ msgid ""
"code]."
msgstr ""
-#: doc/classes/Plane.xml:72
-msgid "Returns a point on the plane."
-msgstr ""
-
-#: doc/classes/Plane.xml:83
+#: doc/classes/Plane.xml:76
msgid ""
-"Returns [code]true[/code] if [code]point[/code] is inside the plane (by a "
-"very minimum [code]epsilon[/code] threshold)."
+"Returns [code]true[/code] if [code]point[/code] is inside the plane. "
+"Comparison uses a custom minimum [code]epsilon[/code] threshold."
msgstr ""
-#: doc/classes/Plane.xml:94
+#: doc/classes/Plane.xml:87
msgid ""
"Returns the intersection point of the three planes [code]b[/code], [code]c[/"
"code] and this plane. If no intersection is found, [code]null[/code] is "
"returned."
msgstr ""
-#: doc/classes/Plane.xml:105
+#: doc/classes/Plane.xml:98
msgid ""
"Returns the intersection point of a ray consisting of the position "
"[code]from[/code] and the direction normal [code]dir[/code] with this plane. "
"If no intersection is found, [code]null[/code] is returned."
msgstr ""
-#: doc/classes/Plane.xml:116
+#: doc/classes/Plane.xml:109
msgid ""
"Returns the intersection point of a segment from position [code]begin[/code] "
"to position [code]end[/code] with this plane. If no intersection is found, "
"[code]null[/code] is returned."
msgstr ""
-#: doc/classes/Plane.xml:125
+#: doc/classes/Plane.xml:118
msgid ""
"Returns [code]true[/code] if this plane and [code]plane[/code] are "
"approximately equal, by running [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/Plane.xml:134
+#: doc/classes/Plane.xml:127
msgid ""
"Returns [code]true[/code] if [code]point[/code] is located above the plane."
msgstr ""
-#: doc/classes/Plane.xml:141
+#: doc/classes/Plane.xml:134
msgid "Returns a copy of the plane, normalized."
msgstr ""
-#: doc/classes/Plane.xml:150
+#: doc/classes/Plane.xml:143
msgid ""
-"Returns the orthogonal projection of point [code]p[/code] into a point in "
-"the plane."
+"Returns the orthogonal projection of [code]point[/code] into a point in the "
+"plane."
msgstr ""
-#: doc/classes/Plane.xml:156
+#: doc/classes/Plane.xml:149
msgid ""
-"Distance from the origin to the plane, in the direction of [member normal]."
+"The distance from the origin to the plane, in the direction of [member "
+"normal]. This value is typically non-negative.\n"
+"In the scalar equation of the plane [code]ax + by + cz = d[/code], this is "
+"[code]d[/code], while the [code](a, b, c)[/code] coordinates are represented "
+"by the [member normal] property."
msgstr ""
-#: doc/classes/Plane.xml:159
+#: doc/classes/Plane.xml:153
msgid ""
-"The normal of the plane. \"Over\" or \"Above\" the plane is considered the "
-"side of the plane towards where the normal is pointing."
+"The normal of the plane, which must be normalized.\n"
+"In the scalar equation of the plane [code]ax + by + cz = d[/code], this is "
+"the vector [code](a, b, c)[/code], where [code]d[/code] is the [member d] "
+"property."
msgstr ""
-#: doc/classes/Plane.xml:162
-msgid "The [member normal]'s X component."
+#: doc/classes/Plane.xml:157
+msgid "The X component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:165
-msgid "The [member normal]'s Y component."
+#: doc/classes/Plane.xml:160
+msgid "The Y component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:168
-msgid "The [member normal]'s Z component."
+#: doc/classes/Plane.xml:163
+msgid "The Z component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:173
-msgid "A plane that extends in the Y and Z axes."
+#: doc/classes/Plane.xml:168
+msgid "A plane that extends in the Y and Z axes (normal vector points +X)."
msgstr ""
-#: doc/classes/Plane.xml:176
-msgid "A plane that extends in the X and Z axes."
+#: doc/classes/Plane.xml:171
+msgid "A plane that extends in the X and Z axes (normal vector points +Y)."
msgstr ""
-#: doc/classes/Plane.xml:179
-msgid "A plane that extends in the X and Y axes."
+#: doc/classes/Plane.xml:174
+msgid "A plane that extends in the X and Y axes (normal vector points +Z)."
msgstr ""
#: doc/classes/PlaneMesh.xml:4
@@ -38323,18 +39064,25 @@ msgstr ""
#: doc/classes/PrimitiveMesh.xml:16
msgid ""
-"Returns mesh arrays used to constitute surface of [Mesh]. Mesh arrays can be "
-"used with [ArrayMesh] to create new surfaces."
+"Returns mesh arrays used to constitute surface of [Mesh]. The result can be "
+"passed to [method ArrayMesh.add_surface_from_arrays] to create a new "
+"surface. For example:\n"
+"[codeblock]\n"
+"var c := CylinderMesh.new()\n"
+"var arr_mesh := ArrayMesh.new()\n"
+"arr_mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLES, c."
+"get_mesh_arrays())\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:22
+#: doc/classes/PrimitiveMesh.xml:27
msgid ""
"Overrides the [AABB] with one defined by user for use with frustum culling. "
"Especially useful to avoid unnexpected culling when using a shader to "
"offset vertices."
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:25
+#: doc/classes/PrimitiveMesh.xml:30
msgid ""
"If set, the order of the vertices in each triangle are reversed resulting in "
"the backside of the mesh being drawn.\n"
@@ -38342,7 +39090,7 @@ msgid ""
"[member BaseMaterial3D.cull_mode]."
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:29
+#: doc/classes/PrimitiveMesh.xml:34
msgid "The current [Material] of the primitive mesh."
msgstr ""
@@ -38773,11 +39521,17 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:260
msgid ""
+"Safer override for [member audio/output_latency] in the Web platform, to "
+"avoid audio issues especially on mobile devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:263
+msgid ""
"Setting to hardcode audio delay when playing video. Best to leave this "
"untouched unless you know what you are doing."
msgstr ""
-#: doc/classes/ProjectSettings.xml:263
+#: doc/classes/ProjectSettings.xml:266
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -38787,7 +39541,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:269
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -38797,27 +39551,27 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:269
+#: doc/classes/ProjectSettings.xml:272
msgid ""
"The default compression level for Zstandard. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
"speed. Decompression speed is mostly unaffected by the compression level."
msgstr ""
-#: doc/classes/ProjectSettings.xml:272
+#: doc/classes/ProjectSettings.xml:275
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:278
msgid ""
"Largest size limit (in power of 2) allowed when compressing using long-"
"distance matching with Zstandard. Higher values can result in better "
"compression, but will require more memory when compressing and decompressing."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:281
msgid ""
"If [code]true[/code], displays getters and setters in autocompletion results "
"in the script editor. This setting is meant to be used when porting old "
@@ -38825,74 +39579,55 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:281
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:284
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:287
+#: doc/classes/ProjectSettings.xml:294
msgid ""
"If [code]true[/code], enables specific GDScript warnings (see [code]debug/"
"gdscript/warnings/*[/code] settings). If [code]false[/code], disables all "
"GDScript warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
-msgid ""
-"If [code]true[/code], enables warnings when a function is declared with the "
-"same name as a constant."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:296
-msgid ""
-"If [code]true[/code], enables warnings when a function is declared with the "
-"same name as a variable. This will turn into an error in a future version "
-"when first-class functions become supported in GDScript."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:299
-msgid ""
-"If [code]true[/code], enables warnings when a function assigned to a "
-"variable may yield and return a function state instead of a value."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:302
+#: doc/classes/ProjectSettings.xml:300
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:303
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when dividing an integer by another "
"integer (the decimal part will be discarded)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when passing a floating-point value "
"to a function that expects an integer (it will be converted and lose "
"precision)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:314
+#: doc/classes/ProjectSettings.xml:312
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
@@ -38913,102 +39648,85 @@ msgid ""
"member variable)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:323
+#: doc/classes/ProjectSettings.xml:325
msgid ""
"If [code]true[/code], enables warnings when calling an expression that has "
"no effect on the surrounding code, such as writing [code]2 + 2[/code] as a "
"statement."
msgstr ""
-#: doc/classes/ProjectSettings.xml:326
+#: doc/classes/ProjectSettings.xml:328
msgid ""
"If [code]true[/code], enables warnings when calling a ternary expression "
"that has no effect on the surrounding code, such as writing [code]42 if "
"active else 0[/code] as a statement."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:331
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:334
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:335
+#: doc/classes/ProjectSettings.xml:337
msgid ""
"If [code]true[/code], enables warnings when assigning a variable using an "
"assignment operator like [code]+=[/code] if the variable wasn't previously "
"assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:338
+#: doc/classes/ProjectSettings.xml:340
msgid ""
"If [code]true[/code], enables warnings when unreachable code is detected "
"(such as after a [code]return[/code] statement that will always be executed)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:345
msgid ""
"If [code]true[/code], enables warnings when using an expression whose type "
"may not be compatible with the function parameter expected."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:348
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:347
+#: doc/classes/ProjectSettings.xml:351
msgid ""
"If [code]true[/code], enables warnings when calling a method whose presence "
"is not guaranteed at compile-time in the class."
msgstr ""
-#: doc/classes/ProjectSettings.xml:350
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], enables warnings when accessing a property whose "
"presence is not guaranteed at compile-time in the class."
msgstr ""
-#: doc/classes/ProjectSettings.xml:353
-msgid ""
-"If [code]true[/code], enables warnings when a function parameter is unused."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:356
-msgid ""
-"If [code]true[/code], enables warnings when a member variable is unused."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:363
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:362
+#: doc/classes/ProjectSettings.xml:366
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:365
-msgid ""
-"If [code]true[/code], enables warnings when a variable is declared with the "
-"same name as a function. This will turn into an error in a future version "
-"when first-class functions become supported in GDScript."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:368
+#: doc/classes/ProjectSettings.xml:369
msgid ""
"If [code]true[/code], enables warnings when assigning the result of a "
"function that returns [code]void[/code] to a variable."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:374
+#: doc/classes/ProjectSettings.xml:375
msgid ""
"Maximum number of frames per second allowed. The actual number of frames per "
"second may still be below this value if the game is lagging.\n"
@@ -39019,143 +39737,143 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:379
+#: doc/classes/ProjectSettings.xml:380
msgid "Maximum call stack allowed for debugging GDScript."
msgstr ""
-#: doc/classes/ProjectSettings.xml:382
+#: doc/classes/ProjectSettings.xml:383
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:385
+#: doc/classes/ProjectSettings.xml:386
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:388
+#: doc/classes/ProjectSettings.xml:389
msgid ""
"Print more information to standard output when running. It displays "
"information such as memory leaks, which scenes and resources are being "
"loaded, etc."
msgstr ""
-#: doc/classes/ProjectSettings.xml:391
+#: doc/classes/ProjectSettings.xml:392
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:394
+#: doc/classes/ProjectSettings.xml:395
msgid ""
"Color of the contact points between collision shapes, visible when \"Visible "
"Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:397
+#: doc/classes/ProjectSettings.xml:398
msgid ""
"Maximum number of contact points between collision shapes to display when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:400
+#: doc/classes/ProjectSettings.xml:401
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
msgid "Hotspot for the custom mouse cursor image."
msgstr ""
-#: doc/classes/ProjectSettings.xml:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
msgid ""
"If [code]true[/code], allows HiDPI display on Windows and macOS. This "
"setting has no effect on desktop Linux, as DPI-awareness fallbacks are not "
"supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"If [code]true[/code], keeps the screen on (even in case of inactivity), so "
"the screensaver does not take over. Works on desktop and mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
msgid "Default orientation on mobile devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"If [code]true[/code], the home indicator is hidden automatically. This only "
"affects iOS devices without a physical home button."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid "Force the window to be always on top."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid "Force the window to be borderless."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Sets the window to full screen when it starts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid ""
"Sets the game's main viewport height. On desktop platforms, this is the "
"default window size. Stretch mode settings also use this as a reference when "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Allows the window to be resizable by default."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"Sets the game's main viewport width. On desktop platforms, this is the "
"default window size. Stretch mode settings also use this as a reference when "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:454
+#: doc/classes/ProjectSettings.xml:455
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:457
+#: doc/classes/ProjectSettings.xml:458
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -39164,7 +39882,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:460
+#: doc/classes/ProjectSettings.xml:461
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -39175,13 +39893,13 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:464
+#: doc/classes/ProjectSettings.xml:465
msgid ""
"Search path for project-specific script templates. Script templates will be "
"search both in the editor-specific path and in this project-specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:467
+#: doc/classes/ProjectSettings.xml:468
msgid ""
"Text-based file extensions to include in the script editor's \"Find in Files"
"\" feature. You can add e.g. [code]tscn[/code] if you wish to also parse "
@@ -39189,49 +39907,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:470
+#: doc/classes/ProjectSettings.xml:471
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:473
+#: doc/classes/ProjectSettings.xml:474
msgid ""
-"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
+"If [code]true[/code], swaps Cancel and OK buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:478
+#: doc/classes/ProjectSettings.xml:479
msgid ""
"Path to a custom [Theme] resource file to use for the project ([code]theme[/"
"code] or generic [code]tres[/code]/[code]res[/code] extension)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:484
+#: doc/classes/ProjectSettings.xml:485
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:487
+#: doc/classes/ProjectSettings.xml:488
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:490
+#: doc/classes/ProjectSettings.xml:491
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:493
+#: doc/classes/ProjectSettings.xml:494
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:496
+#: doc/classes/ProjectSettings.xml:497
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -39240,7 +39958,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"Default [InputEventAction] to discard a modal or pending input.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39248,7 +39966,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:504
+#: doc/classes/ProjectSettings.xml:505
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39256,7 +39974,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:508
+#: doc/classes/ProjectSettings.xml:509
msgid ""
"Default [InputEventAction] to go to the end position of a [Control] (e.g. "
"last item in an [ItemList] or a [Tree]), matching the behavior of [constant "
@@ -39266,7 +39984,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:512
+#: doc/classes/ProjectSettings.xml:513
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -39275,7 +39993,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:516
+#: doc/classes/ProjectSettings.xml:517
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -39284,7 +40002,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:520
+#: doc/classes/ProjectSettings.xml:521
msgid ""
"Default [InputEventAction] to go to the start position of a [Control] (e.g. "
"first item in an [ItemList] or a [Tree]), matching the behavior of [constant "
@@ -39294,7 +40012,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39302,7 +40020,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:528
+#: doc/classes/ProjectSettings.xml:529
msgid ""
"Default [InputEventAction] to go down a page in a [Control] (e.g. in an "
"[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEDOWN] on "
@@ -39312,7 +40030,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Default [InputEventAction] to go up a page in a [Control] (e.g. in an "
"[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEUP] on "
@@ -39322,7 +40040,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:536
+#: doc/classes/ProjectSettings.xml:537
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39330,7 +40048,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:540
+#: doc/classes/ProjectSettings.xml:541
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -39339,7 +40057,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39347,371 +40065,371 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:548
+#: doc/classes/ProjectSettings.xml:549
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:554
+#: doc/classes/ProjectSettings.xml:555
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:557
+#: doc/classes/ProjectSettings.xml:558
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:560
+#: doc/classes/ProjectSettings.xml:561
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:566
+#: doc/classes/ProjectSettings.xml:567
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:569
+#: doc/classes/ProjectSettings.xml:570
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:572
+#: doc/classes/ProjectSettings.xml:573
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:578
+#: doc/classes/ProjectSettings.xml:579
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:581
+#: doc/classes/ProjectSettings.xml:582
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:584
+#: doc/classes/ProjectSettings.xml:585
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:590
+#: doc/classes/ProjectSettings.xml:591
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:593
+#: doc/classes/ProjectSettings.xml:594
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:596
+#: doc/classes/ProjectSettings.xml:597
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:602
+#: doc/classes/ProjectSettings.xml:603
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid ""
"The locale to fall back to if a translation isn't available in a given "
"language. If left empty, [code]en[/code] (English) will be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "If [code]true[/code], logs all output to files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:806
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:809
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:812
msgid ""
"Godot uses a message queue to defer some function calls. If you run out of "
"space on it (you will see an error), you can increase the size here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:815
msgid ""
"This is used by servers when used in multi-threading mode (servers and "
"visual). RIDs are preallocated to avoid stalling the server requesting them "
@@ -39719,56 +40437,56 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:829
+#: doc/classes/ProjectSettings.xml:832
msgid ""
"Maximum amount of characters allowed to send as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:832
+#: doc/classes/ProjectSettings.xml:835
msgid ""
"Maximum number of errors allowed to be sent from the debugger. Over this "
"value, content is dropped. This helps not to stall the debugger connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:835
+#: doc/classes/ProjectSettings.xml:838
msgid ""
"Maximum amount of messages in the debugger queue. Over this value, content "
"is dropped. This helps to limit the debugger memory usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:838
+#: doc/classes/ProjectSettings.xml:841
msgid ""
"Maximum number of warnings allowed to be sent from the debugger. Over this "
"value, content is dropped. This helps not to stall the debugger connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:841
+#: doc/classes/ProjectSettings.xml:844
msgid ""
"Default size of packet peer stream for deserializing Godot data. Over this "
"size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:844
+#: doc/classes/ProjectSettings.xml:847
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:847
+#: doc/classes/ProjectSettings.xml:850
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:850
+#: doc/classes/ProjectSettings.xml:853
msgid ""
"Amount of read ahead used by remote filesystem. Higher values decrease the "
"effects of latency at the cost of higher bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:853
+#: doc/classes/ProjectSettings.xml:856
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:856
+#: doc/classes/ProjectSettings.xml:859
msgid ""
"The CA certificates bundle to use for SSL connections. If this is set to a "
"non-empty value, this will [i]override[/i] Godot's default [url=https://"
@@ -39778,31 +40496,31 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:863
msgid ""
"When creating node names automatically, set the type of casing in this "
"project. This is mostly an editor setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:866
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:869
msgid "Size of the hash table used for the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:872
msgid "Cell size used for the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:875
msgid "The default angular damp in 2D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:878
msgid ""
"The default gravity strength in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39814,7 +40532,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:883
+#: doc/classes/ProjectSettings.xml:886
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39826,38 +40544,38 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:891
+#: doc/classes/ProjectSettings.xml:894
msgid "The default linear damp in 2D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:894
+#: doc/classes/ProjectSettings.xml:897
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:897
+#: doc/classes/ProjectSettings.xml:900
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics2D\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:901
+#: doc/classes/ProjectSettings.xml:904
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant PhysicsServer2D."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:904
+#: doc/classes/ProjectSettings.xml:907
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant PhysicsServer2D."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:907
+#: doc/classes/ProjectSettings.xml:910
msgid ""
"Sets whether physics is run on the main thread or a separate one. Running "
"the server on a thread increases performance, but restricts API access to "
@@ -39867,23 +40585,23 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:914
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant PhysicsServer2D.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:917
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody3D] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:920
msgid "The default angular damp in 3D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:923
msgid ""
"The default gravity strength in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39895,7 +40613,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:928
+#: doc/classes/ProjectSettings.xml:931
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39907,11 +40625,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:936
+#: doc/classes/ProjectSettings.xml:939
msgid "The default linear damp in 3D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:939
+#: doc/classes/ProjectSettings.xml:942
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -39919,11 +40637,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:943
+#: doc/classes/ProjectSettings.xml:946
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:949
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -39932,7 +40650,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:950
+#: doc/classes/ProjectSettings.xml:953
msgid ""
"Fix to improve physics jitter, specially on monitors where refresh rate is "
"different than the physics FPS.\n"
@@ -39940,7 +40658,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:954
+#: doc/classes/ProjectSettings.xml:957
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -39948,7 +40666,7 @@ msgid ""
"programmatically, use [method RenderingServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:957
+#: doc/classes/ProjectSettings.xml:960
msgid ""
"[Environment] that will be used as a fallback environment in case a scene "
"does not specify its own environment. The default environment is loaded in "
@@ -39958,14 +40676,14 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:986
+#: doc/classes/ProjectSettings.xml:989
msgid ""
"Max amount of elements renderable in a frame. If more than this are visible "
"per frame, they will be dropped. Keep in mind elements refer to mesh "
"surfaces and not meshes themselves."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:994
msgid ""
"Some NVIDIA GPU drivers have a bug which produces flickering issues for the "
"[code]draw_rect[/code] method, especially as used in [TileMap]. Refer to "
@@ -39977,73 +40695,73 @@ msgid ""
"using the Vulkan backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:995
+#: doc/classes/ProjectSettings.xml:998
msgid ""
"If [code]true[/code], forces snapping of polygons to pixels in 2D rendering. "
"May help in some pixel art styles."
msgstr ""
-#: doc/classes/ProjectSettings.xml:998
+#: doc/classes/ProjectSettings.xml:1001
msgid ""
"Sets the quality of the depth of field effect. Higher quality takes more "
"samples, which is slower but looks smoother."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1001
+#: doc/classes/ProjectSettings.xml:1004
msgid ""
"Sets the depth of field shape. Can be Box, Hexagon, or Circle. Box is the "
"fastest. Circle is the most realistic, but also the most expensive to "
"compute."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1004
+#: doc/classes/ProjectSettings.xml:1007
msgid ""
"If [code]true[/code], jitters DOF samples to make effect slightly blurrier "
"and hide lines created from low sample rates. This can result in a slightly "
"grainy appearance when used with a low number of samples."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1010
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1010
+#: doc/classes/ProjectSettings.xml:1013
msgid ""
"If [code]true[/code], performs a previous depth pass before rendering "
"materials. This increases performance in scenes with high overdraw, when "
"complex materials and lighting are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1016
msgid ""
"The directional shadow's size in pixels. Higher values will result in "
"sharper shadows, at the cost of performance. The value will be rounded up to "
"the nearest power of 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1016
+#: doc/classes/ProjectSettings.xml:1019
msgid ""
"Lower-end override for [member rendering/quality/directional_shadow/size] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1019
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"Quality setting for shadows cast by [DirectionalLight3D]s. Higher quality "
"settings use more samples when reading from shadow maps and are thus slower. "
"Low quality settings may result in shadows looking grainy."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1022
+#: doc/classes/ProjectSettings.xml:1025
msgid ""
"Lower-end override for [member rendering/quality/directional_shadow/"
"soft_shadow_quality] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1028
msgid ""
"The video driver to use (\"GLES2\" or \"Vulkan\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -40053,32 +40771,32 @@ msgid ""
"get_current_video_driver[/code] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1031
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"If [code]true[/code], take additional samples when rendering objects "
"affected by a [GIProbe] to reduce artifacts from only sampling in one "
"direction."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1034
+#: doc/classes/ProjectSettings.xml:1037
msgid ""
"Sets the number of cone samples taken when rendering objects affected by "
"[GIProbe]s."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1037
+#: doc/classes/ProjectSettings.xml:1040
msgid ""
"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."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1040
+#: doc/classes/ProjectSettings.xml:1043
msgid ""
"Lower-end override for [member rendering/quality/glow/upscale_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1043
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Strategy used for framebuffer allocation. The simpler it is, the less "
"resources it uses (but the less features it supports). If set to \"2D "
@@ -40088,41 +40806,41 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1046
+#: doc/classes/ProjectSettings.xml:1049
msgid ""
"Lower-end override for [member rendering/quality/intended_usage/"
"framebuffer_allocation] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1052
msgid ""
"Number of cubemaps to store in the reflection atlas. The number of "
"[ReflectionProbe]s in a scene will be limited by this amount. A higher "
"number requires more VRAM."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1052
+#: doc/classes/ProjectSettings.xml:1055
msgid ""
"Size of cubemap faces for [ReflectionProbe]s. A higher number requires more "
"VRAM and may make reflection probe updating slower."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1055
+#: doc/classes/ProjectSettings.xml:1058
msgid ""
"Lower-end override for [member rendering/quality/reflection_atlas/"
"reflection_size] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1058
+#: doc/classes/ProjectSettings.xml:1061
msgid ""
"Use a higher quality variant of the fast filtering algorithm. Significantly "
"slower than using default quality, but results in smoother reflections. "
"Should only be used when the scene is especially detailed."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1061
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Sets the number of samples to take when using importance sampling for [Sky]s "
"and [ReflectionProbe]s. A higher value will result in smoother, higher "
@@ -40132,19 +40850,19 @@ msgid ""
"environments with a high level of detail."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1064
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Lower-end override for [member rendering/quality/reflections/ggx_samples] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1067
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Limits the number of layers to use in radiance maps when using importance "
"sampling. A lower number will be slightly faster and take up less VRAM."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1070
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise and "
@@ -40153,14 +40871,14 @@ msgid ""
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1073
+#: doc/classes/ProjectSettings.xml:1076
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"texture_array_reflections] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1079
msgid ""
"Sets the number of MSAA samples to use (as a power of two). MSAA is used to "
"reduce aliasing around the edges of polygons. A higher MSAA value results in "
@@ -40168,7 +40886,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1080
+#: doc/classes/ProjectSettings.xml:1083
msgid ""
"Sets the screen-space antialiasing mode for the default screen [Viewport]. "
"Screen-space antialiasing works by selectively blurring edges in a post-"
@@ -40177,133 +40895,117 @@ msgid ""
"MSAA and will smooth out specular aliasing, but tend to make scenes appear "
"blurry.\n"
"Another way to combat specular aliasing is to enable [member rendering/"
-"quality/screen_filters/screen_space_roughness_limiter]."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:1084
-msgid ""
-"Enables the screen-space roughness limiter which increases material "
-"roughness in areas with a high normal frequency (i.e. when normals change a "
-"lot from pixel to pixel). This helps to reduce the amount of specular "
-"aliasing in a scene. Specular aliasing looks like random bright pixels that "
-"occur in reflections."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:1087
-msgid ""
-"Curves the amount of the roughness limited effect. A higher value limits the "
-"effect to very sharply curved surfaces, while a lower threshold extends the "
-"effect to smoother surfaces."
+"quality/screen_filters/screen_space_roughness_limiter_enabled]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1090
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"Sets the quality for rough screen-space reflections. Turning off will make "
"all screen space reflections sharp, while higher values make rough "
"reflections look better."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1093
+#: doc/classes/ProjectSettings.xml:1096
msgid ""
"If [code]true[/code], uses faster but lower-quality Blinn model to generate "
"blurred reflections instead of the GGX model."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1099
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_blinn_over_ggx] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1102
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1102
+#: doc/classes/ProjectSettings.xml:1105
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_lambert_over_burley] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1105
+#: doc/classes/ProjectSettings.xml:1108
msgid ""
"If [code]true[/code], forces vertex shading for all rendering. This can "
"increase performance a lot, but also reduces quality immensely. Can be used "
"to optimize performance on low-end mobile devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1108
+#: doc/classes/ProjectSettings.xml:1111
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_vertex_shading] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1111 doc/classes/ProjectSettings.xml:1114
-#: doc/classes/ProjectSettings.xml:1117 doc/classes/ProjectSettings.xml:1120
+#: doc/classes/ProjectSettings.xml:1114 doc/classes/ProjectSettings.xml:1117
+#: doc/classes/ProjectSettings.xml:1120 doc/classes/ProjectSettings.xml:1123
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1123
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1126
+#: doc/classes/ProjectSettings.xml:1129
msgid ""
"Lower-end override for [member rendering/quality/shadow_atlas/size] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1132
msgid ""
"Quality setting for shadows cast by [OmniLight3D]s and [SpotLight3D]s. "
"Higher quality settings use more samples when reading from shadow maps and "
"are thus slower. Low quality settings may result in shadows looking grainy."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1132
+#: doc/classes/ProjectSettings.xml:1135
msgid ""
"Lower-end override for [member rendering/quality/shadows/"
"soft_shadow_quality] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1135
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"If [code]true[/code], screen-space ambient occlusion will be rendered at "
"half size and then upscaled before being added to the scene. This is "
"significantly faster but may miss small details."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1138
+#: doc/classes/ProjectSettings.xml:1141
msgid ""
"Sets the quality of the screen-space ambient occlusion effect. Higher values "
"take more samples and so will result in better quality, at the cost of "
"performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1144
msgid ""
"Scales the depth over which the subsurface scattering effect is applied. A "
"high value may allow light to scatter into a part of the mesh or another "
"mesh that is close in screen space but far in depth."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1144
+#: doc/classes/ProjectSettings.xml:1147
msgid ""
"Sets the quality of the subsurface scattering effect. Higher values are "
"slower but look nicer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1147
+#: doc/classes/ProjectSettings.xml:1150
msgid ""
"Scales the distance over which samples are taken for subsurface scattering "
"effect. Changing this does not impact performance, but higher values will "
@@ -40311,7 +41013,7 @@ msgid ""
"out. A lower value results in a smaller spread of scattered light."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1150
+#: doc/classes/ProjectSettings.xml:1153
msgid ""
"Sets the maximum number of samples to take when using anisotropic filtering "
"on textures (as a power of two). A higher sample count will result in "
@@ -40320,7 +41022,7 @@ msgid ""
"materials where it is enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1153
+#: doc/classes/ProjectSettings.xml:1156
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -40329,49 +41031,49 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Thread model for rendering. Rendering on a thread can vastly improve "
"performance, but synchronizing to the main thread can cause a bit more "
"jitter."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
"only supported on desktop platforms, and only when using the Vulkan renderer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
"doesn't support alpha channels in textures."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
"compression algorithm is only supported when using the Vulkan renderer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1175
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
"compression algorithm is only supported on iOS."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
"supported on desktop platforms and consoles."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1182
+#: doc/classes/ProjectSettings.xml:1189
msgid "Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses."
msgstr ""
@@ -40401,13 +41103,14 @@ msgstr ""
#: doc/classes/Quat.xml:7
msgid ""
-"A unit quaternion used for representing 3D rotations.\n"
-"It is similar to [Basis], which implements matrix representation of "
-"rotations, and can be parametrized using both an axis-angle pair or Euler "
-"angles. But due to its compactness and the way it is stored in memory, "
-"certain operations (obtaining axis-angle and performing SLERP, in "
-"particular) are more efficient and robust against floating-point errors.\n"
-"Quaternions need to be (re)normalized."
+"A unit quaternion used for representing 3D rotations. Quaternions need to be "
+"normalized to be used for rotation.\n"
+"It is similar to Basis, which implements matrix representation of rotations, "
+"and can be parametrized using both an axis-angle pair or Euler angles. Basis "
+"stores rotation, scale, and shearing, while Quat only stores rotation.\n"
+"Due to its compactness and the way it is stored in memory, certain "
+"operations (obtaining axis-angle and performing SLERP, in particular) are "
+"more efficient and robust against floating-point errors."
msgstr ""
#: doc/classes/Quat.xml:12
@@ -40417,29 +41120,31 @@ msgid ""
msgstr ""
#: doc/classes/Quat.xml:21
-msgid "Returns the rotation matrix corresponding to the given quaternion."
+msgid "Constructs a quaternion from the given [Basis]."
msgstr ""
#: doc/classes/Quat.xml:30
msgid ""
-"Returns a quaternion that will perform a rotation specified by Euler angles "
-"(in the YXZ convention: first Z, then X, and Y last), given in the vector "
-"format as (X angle, Y angle, Z angle)."
+"Constructs a quaternion that will perform a rotation specified by Euler "
+"angles (in the YXZ convention: when decomposing, first Z, then X, and Y "
+"last), given in the vector format as (X angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:41
msgid ""
-"Returns a quaternion that will rotate around the given axis by the specified "
-"angle. The axis must be a normalized vector."
+"Constructs a quaternion that will rotate around the given axis by the "
+"specified angle. The axis must be a normalized vector."
msgstr ""
#: doc/classes/Quat.xml:56
-msgid "Returns a quaternion defined by these values."
+msgid "Constructs a quaternion defined by the given values."
msgstr ""
#: doc/classes/Quat.xml:71
msgid ""
-"Performs a cubic spherical-linear interpolation with another quaternion."
+"Performs a cubic spherical interpolation between quaternions [code]preA[/"
+"code], this vector, [code]b[/code], and [code]postB[/code], by the given "
+"amount [code]t[/code]."
msgstr ""
#: doc/classes/Quat.xml:80
@@ -40448,10 +41153,10 @@ msgstr ""
#: doc/classes/Quat.xml:87
msgid ""
-"Returns Euler angles (in the YXZ convention: first Z, then X, and Y last) "
-"corresponding to the rotation represented by the unit quaternion. Returned "
-"vector contains the rotation angles in the format (X angle, Y angle, Z "
-"angle)."
+"Returns Euler angles (in the YXZ convention: when decomposing, first Z, then "
+"X, and Y last) corresponding to the rotation represented by the unit "
+"quaternion. Returned vector contains the rotation angles in the format (X "
+"angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:94
@@ -40490,44 +41195,57 @@ msgstr ""
#: doc/classes/Quat.xml:151
msgid ""
"Sets the quaternion to a rotation specified by Euler angles (in the YXZ "
-"convention: first Z, then X, and Y last), given in the vector format as (X "
-"angle, Y angle, Z angle)."
+"convention: when decomposing, first Z, then X, and Y last), given in the "
+"vector format as (X angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:162
-msgid "Performs a spherical-linear interpolation with another quaternion."
+msgid ""
+"Returns the result of the spherical linear interpolation between this "
+"quaternion and [code]to[/code] by amount [code]weight[/code].\n"
+"[b]Note:[/b] Both quaternions must be normalized."
msgstr ""
-#: doc/classes/Quat.xml:173
+#: doc/classes/Quat.xml:174
msgid ""
-"Performs a spherical-linear interpolation with another quaterion without "
-"checking if the rotation path is not bigger than 90°."
+"Returns the result of the spherical linear interpolation between this "
+"quaternion and [code]to[/code] by amount [code]weight[/code], but without "
+"checking if the rotation path is not bigger than 90 degrees."
msgstr ""
-#: doc/classes/Quat.xml:182
-msgid "Transforms the vector [code]v[/code] by this quaternion."
+#: doc/classes/Quat.xml:183
+msgid "Returns a vector transformed (multiplied) by this quaternion."
msgstr ""
-#: doc/classes/Quat.xml:188
-msgid "W component of the quaternion."
+#: doc/classes/Quat.xml:189
+msgid ""
+"W component of the quaternion (real part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:191
-msgid "X component of the quaternion."
+#: doc/classes/Quat.xml:193
+msgid ""
+"X component of the quaternion (imaginary [code]i[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:194
-msgid "Y component of the quaternion."
+#: doc/classes/Quat.xml:197
+msgid ""
+"Y component of the quaternion (imaginary [code]j[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:197
-msgid "Z component of the quaternion."
+#: doc/classes/Quat.xml:201
+msgid ""
+"Z component of the quaternion (imaginary [code]k[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:202
+#: doc/classes/Quat.xml:207
msgid ""
-"The identity rotation. Equivalent to an identity matrix. If a vector is "
-"transformed by an identity quaternion, it will not change."
+"The identity quaternion, representing no rotation. Equivalent to an identity "
+"[Basis] matrix. If a vector is transformed by an identity quaternion, it "
+"will not change."
msgstr ""
#: doc/classes/RandomNumberGenerator.xml:4
@@ -40730,7 +41448,8 @@ msgid ""
"collision information immediately instead of waiting for the next "
"[code]_physics_process[/code] call, for example if the ray or its parent has "
"changed state.\n"
-"[b]Note:[/b] [code]enabled == true[/code] is not required for this to work."
+"[b]Note:[/b] [member enabled] does not need to be [code]true[/code] for this "
+"to work."
msgstr ""
#: doc/classes/RayCast2D.xml:54 doc/classes/RayCast3D.xml:55
@@ -40836,7 +41555,8 @@ msgid ""
"Use this method to update the collision information immediately instead of "
"waiting for the next [code]_physics_process[/code] call, for example if the "
"ray or its parent has changed state.\n"
-"[b]Note:[/b] [code]enabled == true[/code] is not required for this to work."
+"[b]Note:[/b] [member enabled] does not need to be [code]true[/code] for this "
+"to work."
msgstr ""
#: doc/classes/RayCast3D.xml:71
@@ -40994,14 +41714,6 @@ msgstr ""
msgid "Returns a larger [Rect2] that contains this [Rect2] and [code]b[/code]."
msgstr ""
-#: doc/classes/Rect2.xml:174 doc/classes/Rect2i.xml:163
-msgid "Ending corner."
-msgstr ""
-
-#: doc/classes/Rect2.xml:177 doc/classes/Rect2i.xml:166
-msgid "Position (starting corner)."
-msgstr ""
-
#: doc/classes/Rect2i.xml:4
msgid "2D axis-aligned bounding box using integer coordinates."
msgstr ""
@@ -41114,22 +41826,22 @@ msgstr ""
msgid ""
"Base class for any object that keeps a reference count. [Resource] and many "
"other helper objects inherit this class.\n"
-"References keep an internal reference counter so that they are automatically "
-"released when no longer in use, and only then. References therefore do not "
-"need to be freed manually with [method Object.free].\n"
+"Unlike [Object]s, References keep an internal reference counter so that they "
+"are automatically released when no longer in use, and only then. References "
+"therefore do not need to be freed manually with [method Object.free].\n"
"In the vast majority of use cases, instantiating and using [Reference]-"
"derived types is all you need to do. The methods provided in this class are "
"only for advanced users, and can cause issues if misused."
msgstr ""
-#: doc/classes/Reference.xml:18
+#: doc/classes/Reference.xml:19
msgid ""
"Initializes the internal reference counter. Use this only if you really know "
"what you are doing.\n"
"Returns whether the initialization was successful."
msgstr ""
-#: doc/classes/Reference.xml:26
+#: doc/classes/Reference.xml:27
msgid ""
"Increments the internal reference counter. Use this only if you really know "
"what you are doing.\n"
@@ -41137,7 +41849,7 @@ msgid ""
"code] otherwise."
msgstr ""
-#: doc/classes/Reference.xml:34
+#: doc/classes/Reference.xml:35
msgid ""
"Decrements the internal reference counter. Use this only if you really know "
"what you are doing.\n"
@@ -41186,14 +41898,14 @@ msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/reflection_probes.html"
msgstr ""
-#: doc/classes/ReflectionProbe.xml:17
+#: doc/classes/ReflectionProbe.xml:23
msgid ""
"If [code]true[/code], enables box projection. This makes reflections look "
"more correct in rectangle-shaped rooms by offsetting the reflection center "
"depending on the camera's location."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:20
+#: doc/classes/ReflectionProbe.xml:26
msgid ""
"Sets the cull mask which determines what objects are drawn by this probe. "
"Every [VisualInstance3D] with a layer included in this cull mask will be "
@@ -41202,78 +41914,56 @@ msgid ""
"rendering cost."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:23
+#: doc/classes/ReflectionProbe.xml:29
msgid ""
"If [code]true[/code], computes shadows in the reflection probe. This makes "
"the reflection probe slower to render; you may want to disable this if using "
"the [constant UPDATE_ALWAYS] [member update_mode]."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:26
+#: doc/classes/ReflectionProbe.xml:32
msgid ""
"The size of the reflection probe. The larger the extents the more space "
"covered by the probe which will lower the perceived resolution. It is best "
"to keep the extents only as large as you need them."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:29
+#: doc/classes/ReflectionProbe.xml:35
msgid ""
"Defines the reflection intensity. Intensity modulates the strength of the "
"reflection."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:32
-msgid ""
-"Sets the ambient light color to be used when this probe is set to [member "
-"interior_enable]."
-msgstr ""
-
-#: doc/classes/ReflectionProbe.xml:35
-msgid ""
-"Sets the contribution value for how much the reflection affects the ambient "
-"light for this reflection probe when set to [member interior_enable]. Useful "
-"so that ambient light matches the color of the room."
-msgstr ""
-
#: doc/classes/ReflectionProbe.xml:38
-msgid ""
-"Sets the energy multiplier for this reflection probe's ambient light "
-"contribution when set to [member interior_enable]."
+msgid "If [code]true[/code], reflections will ignore sky contribution."
msgstr ""
#: doc/classes/ReflectionProbe.xml:41
msgid ""
-"If [code]true[/code], reflections will ignore sky contribution. Ambient "
-"lighting is then controlled by the [code]interior_ambient_*[/code] "
-"properties."
-msgstr ""
-
-#: doc/classes/ReflectionProbe.xml:44
-msgid ""
"Sets the max distance away from the probe an object can be before it is "
"culled."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:47
+#: doc/classes/ReflectionProbe.xml:44
msgid ""
"Sets the origin offset to be used when this reflection probe is in box "
"project mode."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:50
+#: doc/classes/ReflectionProbe.xml:47
msgid ""
"Sets how frequently the probe is updated. Can be [constant UPDATE_ONCE] or "
"[constant UPDATE_ALWAYS]."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:55
+#: doc/classes/ReflectionProbe.xml:52
msgid ""
"Update the probe once on the next frame. The corresponding radiance map will "
"be generated over the following six frames. This is slower to update than "
"[constant UPDATE_ALWAYS] but can result in higher quality reflections."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:58
+#: doc/classes/ReflectionProbe.xml:55
msgid ""
"Update the probe every frame. This is needed when you want to capture "
"dynamic objects. However, it results in an increased render time. Use "
@@ -41303,10 +41993,10 @@ msgid ""
"read by RegEx as [code]\\d+[/code]. Similarly, [code]compile(\"\\\"(?:\\\\\\"
"\\.|[^\\\"])*\\\"\")[/code] would be read as [code]\"(?:\\\\.|[^\"])*\"[/"
"code].\n"
-"Using [method search] you can find the pattern within the given text. If a "
+"Using [method search], you can find the pattern within the given text. If a "
"pattern is found, [RegExMatch] is returned and you can retrieve details of "
-"the results using functions such as [method RegExMatch.get_string] and "
-"[method RegExMatch.get_start].\n"
+"the results using methods such as [method RegExMatch.get_string] and [method "
+"RegExMatch.get_start].\n"
"[codeblock]\n"
"var regex = RegEx.new()\n"
"regex.compile(\"\\\\w-(\\\\d+)\")\n"
@@ -41315,7 +42005,7 @@ msgid ""
" print(result.get_string()) # Would print n-0123\n"
"[/codeblock]\n"
"The results of capturing groups [code]()[/code] can be retrieved by passing "
-"the group number to the various functions in [RegExMatch]. Group 0 is the "
+"the group number to the various methods in [RegExMatch]. Group 0 is the "
"default and will always refer to the entire pattern. In the above example, "
"calling [code]result.get_string(1)[/code] would give you [code]0123[/code].\n"
"This version of RegEx also supports named capturing groups, and the names "
@@ -41336,6 +42026,15 @@ msgid ""
" print(result.get_string(\"digit\"))\n"
"# Would print 01 03 0 3f 42\n"
"[/codeblock]\n"
+"[b]Example of splitting a string using a RegEx:[/b]\n"
+"[codeblock]\n"
+"var regex = RegEx.new()\n"
+"regex.compile(\"\\\\S+\") # Negated whitespace character class.\n"
+"var results = []\n"
+"for match in regex.search_all(\"One Two \\n\\tThree\"):\n"
+" results.push_back(match.get_string())\n"
+"# The `results` array now contains \"One\", \"Two\", \"Three\".\n"
+"[/codeblock]\n"
"[b]Note:[/b] Godot's regex implementation is based on the [url=https://www."
"pcre.org/]PCRE2[/url] library. You can view the full pattern reference "
"[url=https://www.pcre.org/current/doc/html/pcre2pattern.html]here[/url].\n"
@@ -41343,38 +42042,38 @@ msgid ""
"regular expressions online."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:47
+#: modules/regex/doc_classes/RegEx.xml:56
msgid ""
"This method resets the state of the object, as if it was freshly created. "
"Namely, it unassigns the regular expression of this object."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:56
+#: modules/regex/doc_classes/RegEx.xml:65
msgid ""
"Compiles and assign the search pattern to use. Returns [constant OK] if the "
"compilation is successful. If an error is encountered, details are printed "
"to standard output and an error is returned."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:63
+#: modules/regex/doc_classes/RegEx.xml:72
msgid "Returns the number of capturing groups in compiled pattern."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:70
+#: modules/regex/doc_classes/RegEx.xml:79
msgid ""
"Returns an array of names of named capturing groups in the compiled pattern. "
"They are ordered by appearance."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:77
+#: modules/regex/doc_classes/RegEx.xml:86
msgid "Returns the original search pattern that was compiled."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:84
+#: modules/regex/doc_classes/RegEx.xml:93
msgid "Returns whether this object has a valid search pattern assigned."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:97
+#: modules/regex/doc_classes/RegEx.xml:106
msgid ""
"Searches the text for the compiled pattern. Returns a [RegExMatch] container "
"of the first matching result if found, otherwise [code]null[/code]. The "
@@ -41382,7 +42081,7 @@ msgid ""
"and end anchor would be."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:110
+#: modules/regex/doc_classes/RegEx.xml:119
msgid ""
"Searches the text for the compiled pattern. Returns an array of [RegExMatch] "
"containers for each non-overlapping result. If no results were found, an "
@@ -41390,7 +42089,7 @@ msgid ""
"specified without modifying where the start and end anchor would be."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:127
+#: modules/regex/doc_classes/RegEx.xml:136
msgid ""
"Searches the text for the compiled pattern and replaces it with the "
"specified string. Escapes and backreferences such as [code]$1[/code] and "
@@ -42117,7 +42816,7 @@ msgid ""
msgstr ""
#: doc/classes/RenderingServer.xml:1222 doc/classes/RenderingServer.xml:1250
-#: doc/classes/RenderingServer.xml:1527
+#: doc/classes/RenderingServer.xml:1537
msgid "Not implemented in Godot 3.x."
msgstr ""
@@ -42264,30 +42963,30 @@ msgid ""
"OmniLight3D.omni_shadow_mode]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1481
+#: doc/classes/RenderingServer.xml:1491
msgid ""
"Sets the color of the light. Equivalent to [member Light3D.light_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1492
+#: doc/classes/RenderingServer.xml:1502
msgid ""
"Sets the cull mask for this Light3D. Lights only affect objects in the "
"selected layers. Equivalent to [member Light3D.light_cull_mask]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1503
+#: doc/classes/RenderingServer.xml:1513
msgid ""
"If [code]true[/code], light will subtract light instead of adding light. "
"Equivalent to [member Light3D.light_negative]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1516
+#: doc/classes/RenderingServer.xml:1526
msgid ""
"Sets the specified light parameter. See [enum LightParam] for options. "
"Equivalent to [method Light3D.set_param]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1538
+#: doc/classes/RenderingServer.xml:1548
msgid ""
"If [code]true[/code], reverses the backface culling of the mesh. This can be "
"useful when you have a flat mesh that has a light behind it. If you need to "
@@ -42296,29 +42995,25 @@ msgid ""
"to [member Light3D.shadow_reverse_cull_face]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1549
+#: doc/classes/RenderingServer.xml:1559
msgid ""
"If [code]true[/code], light will cast shadows. Equivalent to [member Light3D."
"shadow_enabled]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1560
+#: doc/classes/RenderingServer.xml:1570
msgid ""
"Sets the color of the shadow cast by the light. Equivalent to [member "
"Light3D.shadow_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1571
-msgid "Sets whether GI probes capture light information from this light."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:1584
+#: doc/classes/RenderingServer.xml:1583
msgid ""
"Returns a mesh of a sphere with the given amount of horizontal and vertical "
"subdivisions."
msgstr ""
-#: doc/classes/RenderingServer.xml:1591
+#: doc/classes/RenderingServer.xml:1590
msgid ""
"Creates an empty material and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42327,31 +43022,31 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:1603
+#: doc/classes/RenderingServer.xml:1602
msgid "Returns the value of a certain material's parameter."
msgstr ""
-#: doc/classes/RenderingServer.xml:1614
+#: doc/classes/RenderingServer.xml:1613
msgid "Sets an object's next material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1627
+#: doc/classes/RenderingServer.xml:1626
msgid "Sets a material's parameter."
msgstr ""
-#: doc/classes/RenderingServer.xml:1638
+#: doc/classes/RenderingServer.xml:1637
msgid "Sets a material's render priority."
msgstr ""
-#: doc/classes/RenderingServer.xml:1649
+#: doc/classes/RenderingServer.xml:1648
msgid "Sets a shader material's shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:1678
+#: doc/classes/RenderingServer.xml:1677
msgid "Removes all surfaces from a mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1685
+#: doc/classes/RenderingServer.xml:1684
msgid ""
"Creates a new mesh and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all [code]mesh_*[/"
@@ -42362,58 +43057,58 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:1696
+#: doc/classes/RenderingServer.xml:1695
msgid "Returns a mesh's blend shape count."
msgstr ""
-#: doc/classes/RenderingServer.xml:1705
+#: doc/classes/RenderingServer.xml:1704
msgid "Returns a mesh's blend shape mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:1714
+#: doc/classes/RenderingServer.xml:1713
msgid "Returns a mesh's custom aabb."
msgstr ""
-#: doc/classes/RenderingServer.xml:1723
+#: doc/classes/RenderingServer.xml:1722
msgid "Returns a mesh's number of surfaces."
msgstr ""
-#: doc/classes/RenderingServer.xml:1734
+#: doc/classes/RenderingServer.xml:1733
msgid "Sets a mesh's blend shape mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:1745
+#: doc/classes/RenderingServer.xml:1744
msgid "Sets a mesh's custom aabb."
msgstr ""
-#: doc/classes/RenderingServer.xml:1756
+#: doc/classes/RenderingServer.xml:1755
msgid "Returns a mesh's surface's buffer arrays."
msgstr ""
-#: doc/classes/RenderingServer.xml:1767
+#: doc/classes/RenderingServer.xml:1766
msgid "Returns a mesh's surface's arrays for blend shapes."
msgstr ""
-#: doc/classes/RenderingServer.xml:1782 doc/classes/RenderingServer.xml:1795
+#: doc/classes/RenderingServer.xml:1781 doc/classes/RenderingServer.xml:1794
msgid "Function is unused in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:1806
+#: doc/classes/RenderingServer.xml:1805
msgid "Returns a mesh's surface's material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1819
+#: doc/classes/RenderingServer.xml:1818
msgid "Sets a mesh's surface's material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1834
+#: doc/classes/RenderingServer.xml:1833
msgid ""
"Updates a specific region of a vertex buffer for the specified surface. "
"Warning: this function alters the vertex buffer directly with no safety "
"mechanisms, you can easily corrupt your mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1857
+#: doc/classes/RenderingServer.xml:1856
msgid ""
"Creates a new multimesh on the RenderingServer and returns an [RID] handle. "
"This RID will be used in all [code]multimesh_*[/code] RenderingServer "
@@ -42424,82 +43119,82 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:1868
+#: doc/classes/RenderingServer.xml:1867
msgid ""
"Calculates and returns the axis-aligned bounding box that encloses all "
"instances within the multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1885
+#: doc/classes/RenderingServer.xml:1884
msgid "Returns the number of instances allocated for this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1894
+#: doc/classes/RenderingServer.xml:1893
msgid ""
"Returns the RID of the mesh that will be used in drawing this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1903
+#: doc/classes/RenderingServer.xml:1902
msgid "Returns the number of visible instances for this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1914
+#: doc/classes/RenderingServer.xml:1913
msgid "Returns the color by which the specified instance will be modulated."
msgstr ""
-#: doc/classes/RenderingServer.xml:1925
+#: doc/classes/RenderingServer.xml:1924
msgid "Returns the custom data associated with the specified instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:1936
+#: doc/classes/RenderingServer.xml:1935
msgid "Returns the [Transform] of the specified instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:1947
+#: doc/classes/RenderingServer.xml:1946
msgid ""
"Returns the [Transform2D] of the specified instance. For use when the "
"multimesh is set to use 2D transforms."
msgstr ""
-#: doc/classes/RenderingServer.xml:1960
+#: doc/classes/RenderingServer.xml:1959
msgid ""
"Sets the color by which this instance will be modulated. Equivalent to "
"[method MultiMesh.set_instance_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1973
+#: doc/classes/RenderingServer.xml:1972
msgid ""
"Sets the custom data for this instance. Custom data is passed as a [Color], "
"but is interpreted as a [code]vec4[/code] in the shader. Equivalent to "
"[method MultiMesh.set_instance_custom_data]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1986
+#: doc/classes/RenderingServer.xml:1985
msgid ""
"Sets the [Transform] for this instance. Equivalent to [method MultiMesh."
"set_instance_transform]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1999
+#: doc/classes/RenderingServer.xml:1998
msgid ""
"Sets the [Transform2D] for this instance. For use when multimesh is used in "
"2D. Equivalent to [method MultiMesh.set_instance_transform_2d]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2020
+#: doc/classes/RenderingServer.xml:2019
msgid ""
"Sets the mesh to be drawn by the multimesh. Equivalent to [member MultiMesh."
"mesh]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2031
+#: doc/classes/RenderingServer.xml:2030
msgid ""
"Sets the number of instances visible at a given time. If -1, all instances "
"that have been allocated are drawn. Equivalent to [member MultiMesh."
"visible_instance_count]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2038
+#: doc/classes/RenderingServer.xml:2037
msgid ""
"Creates a new omni light and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID can be used in most "
@@ -42510,7 +43205,7 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2047
+#: doc/classes/RenderingServer.xml:2046
msgid ""
"Creates a particle system and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42521,23 +43216,23 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2058
+#: doc/classes/RenderingServer.xml:2057
msgid ""
"Calculates and returns the axis-aligned bounding box that contains all the "
"particles. Equivalent to [method GPUParticles3D.capture_aabb]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2067
+#: doc/classes/RenderingServer.xml:2066
msgid "Returns [code]true[/code] if particles are currently set to emitting."
msgstr ""
-#: doc/classes/RenderingServer.xml:2076
+#: doc/classes/RenderingServer.xml:2075
msgid ""
"Returns [code]true[/code] if particles are not emitting and particles are "
"set to inactive."
msgstr ""
-#: doc/classes/RenderingServer.xml:2085
+#: doc/classes/RenderingServer.xml:2084
msgid ""
"Add particle system to list of particle systems that need to be updated. "
"Update will take place on the next frame, or on the next call to [method "
@@ -42545,121 +43240,121 @@ msgid ""
"instances_cull_ray]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2094
+#: doc/classes/RenderingServer.xml:2093
msgid ""
"Reset the particles on the next update. Equivalent to [method GPUParticles3D."
"restart]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2105
+#: doc/classes/RenderingServer.xml:2104
msgid ""
"Sets the number of particles to be drawn and allocates the memory for them. "
"Equivalent to [member GPUParticles3D.amount]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2116
+#: doc/classes/RenderingServer.xml:2115
msgid ""
"Sets a custom axis-aligned bounding box for the particle system. Equivalent "
"to [member GPUParticles3D.visibility_aabb]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2127
+#: doc/classes/RenderingServer.xml:2126
msgid ""
"Sets the draw order of the particles to one of the named enums from [enum "
"ParticlesDrawOrder]. See [enum ParticlesDrawOrder] for options. Equivalent "
"to [member GPUParticles3D.draw_order]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2140
+#: doc/classes/RenderingServer.xml:2139
msgid ""
"Sets the mesh to be used for the specified draw pass. Equivalent to [member "
"GPUParticles3D.draw_pass_1], [member GPUParticles3D.draw_pass_2], [member "
"GPUParticles3D.draw_pass_3], and [member GPUParticles3D.draw_pass_4]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2151
+#: doc/classes/RenderingServer.xml:2150
msgid ""
"Sets the number of draw passes to use. Equivalent to [member GPUParticles3D."
"draw_passes]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2162
+#: doc/classes/RenderingServer.xml:2161
msgid ""
"Sets the [Transform] that will be used by the particles when they first emit."
msgstr ""
-#: doc/classes/RenderingServer.xml:2173
+#: doc/classes/RenderingServer.xml:2172
msgid ""
"If [code]true[/code], particles will emit over time. Setting to false does "
"not reset the particles, but only stops their emission. Equivalent to "
"[member GPUParticles3D.emitting]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2184
+#: doc/classes/RenderingServer.xml:2183
msgid ""
"Sets the explosiveness ratio. Equivalent to [member GPUParticles3D."
"explosiveness]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2195
+#: doc/classes/RenderingServer.xml:2194
msgid ""
"Sets the frame rate that the particle system rendering will be fixed to. "
"Equivalent to [member GPUParticles3D.fixed_fps]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2206
+#: doc/classes/RenderingServer.xml:2205
msgid ""
"If [code]true[/code], uses fractional delta which smooths the movement of "
"the particles. Equivalent to [member GPUParticles3D.fract_delta]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2217
+#: doc/classes/RenderingServer.xml:2216
msgid ""
"Sets the lifetime of each particle in the system. Equivalent to [member "
"GPUParticles3D.lifetime]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2228
+#: doc/classes/RenderingServer.xml:2227
msgid ""
"If [code]true[/code], particles will emit once and then stop. Equivalent to "
"[member GPUParticles3D.one_shot]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2239
+#: doc/classes/RenderingServer.xml:2238
msgid ""
"Sets the preprocess time for the particles animation. This lets you delay "
"starting an animation until after the particles have begun emitting. "
"Equivalent to [member GPUParticles3D.preprocess]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2250
+#: doc/classes/RenderingServer.xml:2249
msgid ""
"Sets the material for processing the particles. Note: this is not the "
"material used to draw the materials. Equivalent to [member GPUParticles3D."
"process_material]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2261
+#: doc/classes/RenderingServer.xml:2260
msgid ""
"Sets the emission randomness ratio. This randomizes the emission of "
"particles within their phase. Equivalent to [member GPUParticles3D."
"randomness]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2272
+#: doc/classes/RenderingServer.xml:2271
msgid ""
"Sets the speed scale of the particle system. Equivalent to [member "
"GPUParticles3D.speed_scale]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2283
+#: doc/classes/RenderingServer.xml:2282
msgid ""
"If [code]true[/code], particles use local coordinates. If [code]false[/code] "
"they use global coordinates. Equivalent to [member GPUParticles3D."
"local_coords]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2290
+#: doc/classes/RenderingServer.xml:2289
msgid ""
"Creates a reflection probe and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42670,85 +43365,64 @@ msgid ""
"[method instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2303
+#: doc/classes/RenderingServer.xml:2332
msgid ""
"If [code]true[/code], reflections will ignore sky contribution. Equivalent "
-"to [member ReflectionProbe.interior_enable]."
+"to [member ReflectionProbe.interior]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2314
+#: doc/classes/RenderingServer.xml:2343
msgid ""
"Sets the render cull mask for this reflection probe. Only instances with a "
"matching cull mask will be rendered by this probe. Equivalent to [member "
"ReflectionProbe.cull_mask]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2325
+#: doc/classes/RenderingServer.xml:2354
msgid ""
"If [code]true[/code], uses box projection. This can make reflections look "
"more correct in certain situations. Equivalent to [member ReflectionProbe."
"box_projection]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2336
+#: doc/classes/RenderingServer.xml:2365
msgid ""
"If [code]true[/code], computes shadows in the reflection probe. This makes "
"the reflection much slower to compute. Equivalent to [member ReflectionProbe."
"enable_shadows]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2347
+#: doc/classes/RenderingServer.xml:2376
msgid ""
"Sets the size of the area that the reflection probe will capture. Equivalent "
"to [member ReflectionProbe.extents]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2358
+#: doc/classes/RenderingServer.xml:2387
msgid ""
"Sets the intensity of the reflection probe. Intensity modulates the strength "
"of the reflection. Equivalent to [member ReflectionProbe.intensity]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2369
-msgid ""
-"Sets the ambient light color for this reflection probe when set to interior "
-"mode. Equivalent to [member ReflectionProbe.interior_ambient_color]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2380
-msgid ""
-"Sets the energy multiplier for this reflection probes ambient light "
-"contribution when set to interior mode. Equivalent to [member "
-"ReflectionProbe.interior_ambient_energy]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2391
-msgid ""
-"Sets the contribution value for how much the reflection affects the ambient "
-"light for this reflection probe when set to interior mode. Useful so that "
-"ambient light matches the color of the room. Equivalent to [member "
-"ReflectionProbe.interior_ambient_contrib]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2402
+#: doc/classes/RenderingServer.xml:2398
msgid ""
"Sets the max distance away from the probe an object can be before it is "
"culled. Equivalent to [member ReflectionProbe.max_distance]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2413
+#: doc/classes/RenderingServer.xml:2409
msgid ""
"Sets the origin offset to be used when this reflection probe is in box "
"project mode. Equivalent to [member ReflectionProbe.origin_offset]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2424
+#: doc/classes/RenderingServer.xml:2420
msgid ""
"Sets how often the reflection probe updates. Can either be once or every "
"frame. See [enum ReflectionProbeUpdateMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2437
+#: doc/classes/RenderingServer.xml:2433
msgid ""
"Schedules a callback to the corresponding named [code]method[/code] on "
"[code]where[/code] after a frame has been drawn.\n"
@@ -42756,7 +43430,7 @@ msgid ""
"[code]userdata[/code]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2445
+#: doc/classes/RenderingServer.xml:2441
msgid ""
"Creates a scenario and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all "
@@ -42766,24 +43440,24 @@ msgid ""
"The scenario is the 3D world that all the visual instances exist in."
msgstr ""
-#: doc/classes/RenderingServer.xml:2458
+#: doc/classes/RenderingServer.xml:2454
msgid ""
"Sets the [enum ScenarioDebugMode] for this scenario. See [enum "
"ScenarioDebugMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2469
+#: doc/classes/RenderingServer.xml:2465
msgid "Sets the environment that will be used with this scenario."
msgstr ""
-#: doc/classes/RenderingServer.xml:2480
+#: doc/classes/RenderingServer.xml:2476
msgid ""
"Sets the fallback environment to be used by this scenario. The fallback "
"environment is used if no environment is set. Internally, this is used by "
"the editor to provide a default environment."
msgstr ""
-#: doc/classes/RenderingServer.xml:2495
+#: doc/classes/RenderingServer.xml:2491
msgid ""
"Sets a boot image. The color defines the background color. If [code]scale[/"
"code] is [code]true[/code], the image will be scaled to fit the screen size. "
@@ -42792,19 +43466,19 @@ msgid ""
"the image will be scaled with nearest-neighbor interpolation."
msgstr ""
-#: doc/classes/RenderingServer.xml:2504
+#: doc/classes/RenderingServer.xml:2500
msgid ""
"If [code]true[/code], the engine will generate wireframes for use with the "
"wireframe debug mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:2513
+#: doc/classes/RenderingServer.xml:2509
msgid ""
"Sets the default clear color which is used when a specific clear color has "
"not been selected."
msgstr ""
-#: doc/classes/RenderingServer.xml:2520
+#: doc/classes/RenderingServer.xml:2516
msgid ""
"Creates an empty shader and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42813,47 +43487,47 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2530
+#: doc/classes/RenderingServer.xml:2526
msgid "Returns a shader's code."
msgstr ""
-#: doc/classes/RenderingServer.xml:2541
+#: doc/classes/RenderingServer.xml:2537
msgid "Returns a default texture from a shader searched by name."
msgstr ""
-#: doc/classes/RenderingServer.xml:2560
+#: doc/classes/RenderingServer.xml:2556
msgid "Returns the parameters of a shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:2571
+#: doc/classes/RenderingServer.xml:2567
msgid "Sets a shader's code."
msgstr ""
-#: doc/classes/RenderingServer.xml:2584
+#: doc/classes/RenderingServer.xml:2580
msgid "Sets a shader's default texture. Overwrites the texture given by name."
msgstr ""
-#: doc/classes/RenderingServer.xml:2597
+#: doc/classes/RenderingServer.xml:2593
msgid "Allocates the GPU buffers for this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2608
+#: doc/classes/RenderingServer.xml:2604
msgid "Returns the [Transform] set for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2619
+#: doc/classes/RenderingServer.xml:2615
msgid "Returns the [Transform2D] set for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2632
+#: doc/classes/RenderingServer.xml:2628
msgid "Sets the [Transform] for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2645
+#: doc/classes/RenderingServer.xml:2641
msgid "Sets the [Transform2D] for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2652
+#: doc/classes/RenderingServer.xml:2648
msgid ""
"Creates a skeleton and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all "
@@ -42862,11 +43536,11 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2662
+#: doc/classes/RenderingServer.xml:2658
msgid "Returns the number of bones allocated for this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2669
+#: doc/classes/RenderingServer.xml:2665
msgid ""
"Creates an empty sky and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all [code]sky_*[/"
@@ -42875,13 +43549,13 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2681
+#: doc/classes/RenderingServer.xml:2677
msgid ""
"Sets the material that the sky uses to render the background and reflection "
"maps."
msgstr ""
-#: doc/classes/RenderingServer.xml:2688
+#: doc/classes/RenderingServer.xml:2684
msgid ""
"Creates a spot light and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID can be used in most [code]light_*[/"
@@ -42892,15 +43566,15 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2717
+#: doc/classes/RenderingServer.xml:2713
msgid "Sets a viewport's camera."
msgstr ""
-#: doc/classes/RenderingServer.xml:2728
+#: doc/classes/RenderingServer.xml:2724
msgid "Sets a viewport's canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:2741
+#: doc/classes/RenderingServer.xml:2737
msgid ""
"Copies the viewport to a region of the screen specified by [code]rect[/"
"code]. If [method viewport_set_render_direct_to_screen] is [code]true[/"
@@ -42922,7 +43596,7 @@ msgid ""
"viewport_set_render_direct_to_screen]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2755
+#: doc/classes/RenderingServer.xml:2751
msgid ""
"Creates an empty viewport and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42931,72 +43605,72 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2767
+#: doc/classes/RenderingServer.xml:2763
msgid ""
"Returns a viewport's render information. For options, see the [enum "
"ViewportRenderInfo] constants."
msgstr ""
-#: doc/classes/RenderingServer.xml:2776
+#: doc/classes/RenderingServer.xml:2772
msgid "Returns the viewport's last rendered frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:2787
+#: doc/classes/RenderingServer.xml:2783
msgid "Detaches a viewport from a canvas and vice versa."
msgstr ""
-#: doc/classes/RenderingServer.xml:2798
+#: doc/classes/RenderingServer.xml:2794
msgid "If [code]true[/code], sets the viewport active, else sets it inactive."
msgstr ""
-#: doc/classes/RenderingServer.xml:2813
+#: doc/classes/RenderingServer.xml:2809
msgid ""
"Sets the stacking order for a viewport's canvas.\n"
"[code]layer[/code] is the actual canvas layer, while [code]sublayer[/code] "
"specifies the stacking order of the canvas among those in the same layer."
msgstr ""
-#: doc/classes/RenderingServer.xml:2827
+#: doc/classes/RenderingServer.xml:2823
msgid "Sets the transformation of a viewport's canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:2838
+#: doc/classes/RenderingServer.xml:2834
msgid ""
"Sets the clear mode of a viewport. See [enum ViewportClearMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2849
+#: doc/classes/RenderingServer.xml:2845
msgid ""
"Sets the debug draw mode of a viewport. See [enum ViewportDebugDraw] for "
"options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2860
+#: doc/classes/RenderingServer.xml:2856
msgid ""
"If [code]true[/code], rendering of a viewport's environment is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:2871
+#: doc/classes/RenderingServer.xml:2867
msgid "Sets the viewport's global transformation matrix."
msgstr ""
-#: doc/classes/RenderingServer.xml:2882
+#: doc/classes/RenderingServer.xml:2878
msgid "If [code]true[/code], the viewport's canvas is not rendered."
msgstr ""
-#: doc/classes/RenderingServer.xml:2893
+#: doc/classes/RenderingServer.xml:2889
msgid "Currently unimplemented in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:2904
+#: doc/classes/RenderingServer.xml:2900
msgid "Sets the anti-aliasing mode. See [enum ViewportMSAA] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2915
+#: doc/classes/RenderingServer.xml:2911
msgid "Sets the viewport's parent to another viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:2926
+#: doc/classes/RenderingServer.xml:2922
msgid ""
"If [code]true[/code], render the contents of the viewport directly to "
"screen. This allows a low-level optimization where you can skip drawing a "
@@ -43012,455 +43686,455 @@ msgid ""
"significantly larger than the window size."
msgstr ""
-#: doc/classes/RenderingServer.xml:2937
+#: doc/classes/RenderingServer.xml:2933
msgid ""
"Sets a viewport's scenario.\n"
"The scenario contains information about the [enum ScenarioDebugMode], "
"environment information, reflection atlas etc."
msgstr ""
-#: doc/classes/RenderingServer.xml:2951
+#: doc/classes/RenderingServer.xml:2947
msgid "Sets the shadow atlas quadrant's subdivision."
msgstr ""
-#: doc/classes/RenderingServer.xml:2962
+#: doc/classes/RenderingServer.xml:2958
msgid ""
"Sets the size of the shadow atlas's images (used for omni and spot lights). "
"The value will be rounded up to the nearest power of 2."
msgstr ""
-#: doc/classes/RenderingServer.xml:2975
+#: doc/classes/RenderingServer.xml:2971
msgid "Sets the viewport's width and height."
msgstr ""
-#: doc/classes/RenderingServer.xml:2986
+#: doc/classes/RenderingServer.xml:2982
msgid ""
"If [code]true[/code], the viewport renders its background as transparent."
msgstr ""
-#: doc/classes/RenderingServer.xml:2997
+#: doc/classes/RenderingServer.xml:2993
msgid ""
"Sets when the viewport should be updated. See [enum ViewportUpdateMode] "
"constants for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:3008
+#: doc/classes/RenderingServer.xml:3004
msgid ""
"If [code]true[/code], the viewport uses augmented or virtual reality "
"technologies. See [XRInterface]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3014
+#: doc/classes/RenderingServer.xml:3010
msgid ""
"If [code]false[/code], disables rendering completely, but the engine logic "
"is still being processed. You can call [method force_draw] to draw a frame "
"even with rendering disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3020
+#: doc/classes/RenderingServer.xml:3016
msgid ""
"Emitted at the end of the frame, after the RenderingServer has finished "
"updating all the Viewports."
msgstr ""
-#: doc/classes/RenderingServer.xml:3025
+#: doc/classes/RenderingServer.xml:3021
msgid ""
"Emitted at the beginning of the frame, before the RenderingServer updates "
"all the Viewports."
msgstr ""
-#: doc/classes/RenderingServer.xml:3031
+#: doc/classes/RenderingServer.xml:3027
msgid "Marks an error that shows that the index array is empty."
msgstr ""
-#: doc/classes/RenderingServer.xml:3034
+#: doc/classes/RenderingServer.xml:3030
msgid "Number of weights/bones per vertex."
msgstr ""
-#: doc/classes/RenderingServer.xml:3037
+#: doc/classes/RenderingServer.xml:3033
msgid "The minimum Z-layer for canvas items."
msgstr ""
-#: doc/classes/RenderingServer.xml:3040
+#: doc/classes/RenderingServer.xml:3036
msgid "The maximum Z-layer for canvas items."
msgstr ""
-#: doc/classes/RenderingServer.xml:3043
+#: doc/classes/RenderingServer.xml:3039
msgid ""
"Max number of glow levels that can be used with glow post-process effect."
msgstr ""
-#: doc/classes/RenderingServer.xml:3046
+#: doc/classes/RenderingServer.xml:3042
msgid "Unused enum in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:3067
+#: doc/classes/RenderingServer.xml:3063
msgid "Shader is a 3D shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3070
+#: doc/classes/RenderingServer.xml:3066
msgid "Shader is a 2D shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3073
+#: doc/classes/RenderingServer.xml:3069
msgid "Shader is a particle shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3076
+#: doc/classes/RenderingServer.xml:3072
msgid "Shader is a sky shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3079
+#: doc/classes/RenderingServer.xml:3075
msgid "Represents the size of the [enum ShaderMode] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3082
+#: doc/classes/RenderingServer.xml:3078
msgid "The minimum renderpriority of all materials."
msgstr ""
-#: doc/classes/RenderingServer.xml:3085
+#: doc/classes/RenderingServer.xml:3081
msgid "The maximum renderpriority of all materials."
msgstr ""
-#: doc/classes/RenderingServer.xml:3088
+#: doc/classes/RenderingServer.xml:3084
msgid "Array is a vertex array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3091
+#: doc/classes/RenderingServer.xml:3087
msgid "Array is a normal array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3094
+#: doc/classes/RenderingServer.xml:3090
msgid "Array is a tangent array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3097
+#: doc/classes/RenderingServer.xml:3093
msgid "Array is a color array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3100
+#: doc/classes/RenderingServer.xml:3096
msgid "Array is an UV coordinates array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3103
+#: doc/classes/RenderingServer.xml:3099
msgid "Array is an UV coordinates array for the second UV coordinates."
msgstr ""
-#: doc/classes/RenderingServer.xml:3106
+#: doc/classes/RenderingServer.xml:3102
msgid "Array contains bone information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3109
+#: doc/classes/RenderingServer.xml:3105
msgid "Array is weight information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3112
+#: doc/classes/RenderingServer.xml:3108
msgid "Array is index array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3118
+#: doc/classes/RenderingServer.xml:3114
msgid "Flag used to mark a vertex array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3121
+#: doc/classes/RenderingServer.xml:3117
msgid "Flag used to mark a normal array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3124
+#: doc/classes/RenderingServer.xml:3120
msgid "Flag used to mark a tangent array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3127
+#: doc/classes/RenderingServer.xml:3123
msgid "Flag used to mark a color array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3130
+#: doc/classes/RenderingServer.xml:3126
msgid "Flag used to mark an UV coordinates array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3133
+#: doc/classes/RenderingServer.xml:3129
msgid ""
"Flag used to mark an UV coordinates array for the second UV coordinates."
msgstr ""
-#: doc/classes/RenderingServer.xml:3136
+#: doc/classes/RenderingServer.xml:3132
msgid "Flag used to mark a bone information array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3139
+#: doc/classes/RenderingServer.xml:3135
msgid "Flag used to mark a weights array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3142
+#: doc/classes/RenderingServer.xml:3138
msgid "Flag used to mark an index array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3171
+#: doc/classes/RenderingServer.xml:3167
msgid "Primitive to draw consists of points."
msgstr ""
-#: doc/classes/RenderingServer.xml:3174
+#: doc/classes/RenderingServer.xml:3170
msgid "Primitive to draw consists of lines."
msgstr ""
-#: doc/classes/RenderingServer.xml:3177
+#: doc/classes/RenderingServer.xml:3173
msgid "Primitive to draw consists of a line strip from start to end."
msgstr ""
-#: doc/classes/RenderingServer.xml:3180
+#: doc/classes/RenderingServer.xml:3176
msgid "Primitive to draw consists of triangles."
msgstr ""
-#: doc/classes/RenderingServer.xml:3183
+#: doc/classes/RenderingServer.xml:3179
msgid ""
"Primitive to draw consists of a triangle strip (the last 3 vertices are "
"always combined to make a triangle)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3186
+#: doc/classes/RenderingServer.xml:3182
msgid "Represents the size of the [enum PrimitiveType] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3195
+#: doc/classes/RenderingServer.xml:3191
msgid "Use [Transform2D] to store MultiMesh transform."
msgstr ""
-#: doc/classes/RenderingServer.xml:3198
+#: doc/classes/RenderingServer.xml:3194
msgid "Use [Transform] to store MultiMesh transform."
msgstr ""
-#: doc/classes/RenderingServer.xml:3201
+#: doc/classes/RenderingServer.xml:3197
msgid "Is a directional (sun) light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3204
+#: doc/classes/RenderingServer.xml:3200
msgid "Is an omni light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3207
+#: doc/classes/RenderingServer.xml:3203
msgid "Is a spot light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3210
+#: doc/classes/RenderingServer.xml:3206
msgid "The light's energy."
msgstr ""
-#: doc/classes/RenderingServer.xml:3215
+#: doc/classes/RenderingServer.xml:3211
msgid "The light's influence on specularity."
msgstr ""
-#: doc/classes/RenderingServer.xml:3218
+#: doc/classes/RenderingServer.xml:3214
msgid "The light's range."
msgstr ""
-#: doc/classes/RenderingServer.xml:3221
+#: doc/classes/RenderingServer.xml:3217
msgid ""
"The size of the light when using spot light or omni light. The angular size "
"of the light when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3224
+#: doc/classes/RenderingServer.xml:3220
msgid "The light's attenuation."
msgstr ""
-#: doc/classes/RenderingServer.xml:3227
+#: doc/classes/RenderingServer.xml:3223
msgid "The spotlight's angle."
msgstr ""
-#: doc/classes/RenderingServer.xml:3230
+#: doc/classes/RenderingServer.xml:3226
msgid "The spotlight's attenuation."
msgstr ""
-#: doc/classes/RenderingServer.xml:3233
+#: doc/classes/RenderingServer.xml:3229
msgid "Max distance that shadows will be rendered."
msgstr ""
-#: doc/classes/RenderingServer.xml:3236
+#: doc/classes/RenderingServer.xml:3232
msgid "Proportion of shadow atlas occupied by the first split."
msgstr ""
-#: doc/classes/RenderingServer.xml:3239
+#: doc/classes/RenderingServer.xml:3235
msgid "Proportion of shadow atlas occupied by the second split."
msgstr ""
-#: doc/classes/RenderingServer.xml:3242
+#: doc/classes/RenderingServer.xml:3238
msgid ""
"Proportion of shadow atlas occupied by the third split. The fourth split "
"occupies the rest."
msgstr ""
-#: doc/classes/RenderingServer.xml:3245
+#: doc/classes/RenderingServer.xml:3241
msgid ""
"Proportion of shadow max distance where the shadow will start to fade out."
msgstr ""
-#: doc/classes/RenderingServer.xml:3248
+#: doc/classes/RenderingServer.xml:3244
msgid ""
"Normal bias used to offset shadow lookup by object normal. Can be used to "
"fix self-shadowing artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3251
+#: doc/classes/RenderingServer.xml:3247
msgid "Bias the shadow lookup to fix self-shadowing artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3257
+#: doc/classes/RenderingServer.xml:3253
msgid ""
"Blurs the edges of the shadow. Can be used to hide pixel artifacts in low "
"resolution shadow maps. A high value can make shadows appear grainy and can "
"cause other unwanted artifacts. Try to keep as near default as possible."
msgstr ""
-#: doc/classes/RenderingServer.xml:3262
+#: doc/classes/RenderingServer.xml:3258
msgid "Represents the size of the [enum LightParam] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3265
+#: doc/classes/RenderingServer.xml:3267
msgid "Use a dual paraboloid shadow map for omni lights."
msgstr ""
-#: doc/classes/RenderingServer.xml:3268
+#: doc/classes/RenderingServer.xml:3270
msgid ""
"Use a cubemap shadow map for omni lights. Slower but better quality than "
"dual paraboloid."
msgstr ""
-#: doc/classes/RenderingServer.xml:3271
+#: doc/classes/RenderingServer.xml:3273
msgid "Use orthogonal shadow projection for directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3274
+#: doc/classes/RenderingServer.xml:3276
msgid "Use 2 splits for shadow projection when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3277
+#: doc/classes/RenderingServer.xml:3279
msgid "Use 4 splits for shadow projection when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3280
+#: doc/classes/RenderingServer.xml:3282
msgid ""
"Keeps shadows stable as camera moves but has lower effective resolution."
msgstr ""
-#: doc/classes/RenderingServer.xml:3283
+#: doc/classes/RenderingServer.xml:3285
msgid ""
"Optimize use of shadow maps, increasing the effective resolution. But may "
"result in shadows moving or flickering slightly."
msgstr ""
-#: doc/classes/RenderingServer.xml:3286
+#: doc/classes/RenderingServer.xml:3288
msgid "Reflection probe will update reflections once and then stop."
msgstr ""
-#: doc/classes/RenderingServer.xml:3289
+#: doc/classes/RenderingServer.xml:3291
msgid ""
"Reflection probe will update each frame. This mode is necessary to capture "
"moving objects."
msgstr ""
-#: doc/classes/RenderingServer.xml:3302
+#: doc/classes/RenderingServer.xml:3310
msgid "Draw particles in the order that they appear in the particles array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3305
+#: doc/classes/RenderingServer.xml:3313
msgid "Sort particles based on their lifetime."
msgstr ""
-#: doc/classes/RenderingServer.xml:3308
+#: doc/classes/RenderingServer.xml:3316
msgid "Sort particles based on their distance to the camera."
msgstr ""
-#: doc/classes/RenderingServer.xml:3311
+#: doc/classes/RenderingServer.xml:3319
msgid "Do not update the viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:3314
+#: doc/classes/RenderingServer.xml:3322
msgid "Update the viewport once then set to disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3317
+#: doc/classes/RenderingServer.xml:3325
msgid "Update the viewport whenever it is visible."
msgstr ""
-#: doc/classes/RenderingServer.xml:3322
+#: doc/classes/RenderingServer.xml:3330
msgid "Always update the viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:3325
+#: doc/classes/RenderingServer.xml:3333
msgid "The viewport is always cleared before drawing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3328
+#: doc/classes/RenderingServer.xml:3336
msgid "The viewport is never cleared before drawing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3331
+#: doc/classes/RenderingServer.xml:3339
msgid ""
"The viewport is cleared once, then the clear mode is set to [constant "
"VIEWPORT_CLEAR_NEVER]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3334
+#: doc/classes/RenderingServer.xml:3342
msgid "Multisample antialiasing is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3337
+#: doc/classes/RenderingServer.xml:3345
msgid "Multisample antialiasing uses 2 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3340
+#: doc/classes/RenderingServer.xml:3348
msgid "Multisample antialiasing uses 4 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3343
+#: doc/classes/RenderingServer.xml:3351
msgid "Multisample antialiasing uses 8 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3346
+#: doc/classes/RenderingServer.xml:3354
msgid "Multisample antialiasing uses 16 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3357
+#: doc/classes/RenderingServer.xml:3365
msgid "Number of objects drawn in a single frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3360
+#: doc/classes/RenderingServer.xml:3368
msgid "Number of vertices drawn in a single frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3363
+#: doc/classes/RenderingServer.xml:3371
msgid "Number of material changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3366
+#: doc/classes/RenderingServer.xml:3374
msgid "Number of shader changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3369
+#: doc/classes/RenderingServer.xml:3377
msgid "Number of surface changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3372
+#: doc/classes/RenderingServer.xml:3380
msgid "Number of draw calls during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3375
+#: doc/classes/RenderingServer.xml:3383
msgid "Represents the size of the [enum ViewportRenderInfo] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3378
+#: doc/classes/RenderingServer.xml:3386
msgid "Debug draw is disabled. Default setting."
msgstr ""
-#: doc/classes/RenderingServer.xml:3381 doc/classes/Viewport.xml:348
+#: doc/classes/RenderingServer.xml:3389 doc/classes/Viewport.xml:348
msgid "Objects are displayed without light information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3384
+#: doc/classes/RenderingServer.xml:3392
msgid "Objects are displayed with only light information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3387 doc/classes/Viewport.xml:353
+#: doc/classes/RenderingServer.xml:3395 doc/classes/Viewport.xml:353
msgid ""
"Objects are displayed semi-transparent with additive blending so you can see "
"where they are drawing over top of one another. A higher overdraw means you "
@@ -43468,41 +44142,41 @@ msgid ""
"others."
msgstr ""
-#: doc/classes/RenderingServer.xml:3390
+#: doc/classes/RenderingServer.xml:3398
msgid "Debug draw draws objects in wireframe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3393
+#: doc/classes/RenderingServer.xml:3401
msgid ""
"Normal buffer is drawn instead of regular scene so you can see the per-pixel "
"normals that will be used by post-processing effects."
msgstr ""
-#: doc/classes/RenderingServer.xml:3396 doc/classes/Viewport.xml:361
+#: doc/classes/RenderingServer.xml:3404 doc/classes/Viewport.xml:361
msgid "Objects are displayed with only the albedo value from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3399 doc/classes/Viewport.xml:364
+#: doc/classes/RenderingServer.xml:3407 doc/classes/Viewport.xml:364
msgid "Objects are displayed with only the lighting value from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3402 doc/classes/Viewport.xml:367
+#: doc/classes/RenderingServer.xml:3410 doc/classes/Viewport.xml:367
msgid "Objects are displayed with only the emission color from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3405 doc/classes/Viewport.xml:370
+#: doc/classes/RenderingServer.xml:3413 doc/classes/Viewport.xml:370
msgid ""
"Draws the shadow atlas that stores shadows from [OmniLight3D]s and "
"[SpotLight3D]s in the upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3408 doc/classes/Viewport.xml:373
+#: doc/classes/RenderingServer.xml:3416 doc/classes/Viewport.xml:373
msgid ""
"Draws the shadow atlas that stores shadows from [DirectionalLight3D]s in the "
"upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3413
+#: doc/classes/RenderingServer.xml:3421
msgid ""
"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 "
@@ -43510,21 +44184,14 @@ msgid ""
"your [WorldEnvironment]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3416 doc/classes/Viewport.xml:381
-msgid ""
-"Draws the roughness limiter post process over the Viewport so you can see "
-"where it has an effect. It must be enabled in [member ProjectSettings."
-"rendering/quality/screen_filters/screen_space_roughness_limiter] to work."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:3419
+#: doc/classes/RenderingServer.xml:3424
msgid ""
"Colors each PSSM split for the [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."
msgstr ""
-#: doc/classes/RenderingServer.xml:3424
+#: doc/classes/RenderingServer.xml:3435
msgid ""
"Uses high quality importance sampling to process the radiance map. In "
"general, this results in much higher quality than [constant Sky."
@@ -43535,7 +44202,7 @@ msgid ""
"ggx_samples]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3427
+#: doc/classes/RenderingServer.xml:3438
msgid ""
"Uses the fast filtering algorithm to process the radiance map. In general "
"this results in lower quality, but substantially faster run times.\n"
@@ -43543,347 +44210,347 @@ msgid ""
"[member Sky.radiance_size] must be set to [constant Sky.RADIANCE_SIZE_256]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3431
+#: doc/classes/RenderingServer.xml:3442
msgid "Use the clear color as background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3434
+#: doc/classes/RenderingServer.xml:3445
msgid "Use a specified color as the background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3437
+#: doc/classes/RenderingServer.xml:3448
msgid "Use a sky resource for the background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3440
+#: doc/classes/RenderingServer.xml:3451
msgid ""
"Use a specified canvas layer as the background. This can be useful for "
"instantiating a 2D scene in a 3D world."
msgstr ""
-#: doc/classes/RenderingServer.xml:3443
+#: doc/classes/RenderingServer.xml:3454
msgid ""
"Do not clear the background, use whatever was rendered last frame as the "
"background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3449
+#: doc/classes/RenderingServer.xml:3460
msgid "Represents the size of the [enum EnvironmentBG] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3488
+#: doc/classes/RenderingServer.xml:3499
msgid "Output color as they came in."
msgstr ""
-#: doc/classes/RenderingServer.xml:3491
+#: doc/classes/RenderingServer.xml:3502
msgid "Use the Reinhard tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3494
+#: doc/classes/RenderingServer.xml:3505
msgid "Use the filmic tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3497
+#: doc/classes/RenderingServer.xml:3508
msgid "Use the ACES tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3508
+#: doc/classes/RenderingServer.xml:3519
msgid "Disables the blur set for SSAO. Will make SSAO look noisier."
msgstr ""
-#: doc/classes/RenderingServer.xml:3511
+#: doc/classes/RenderingServer.xml:3522
msgid "Perform a 1x1 blur on the SSAO output."
msgstr ""
-#: doc/classes/RenderingServer.xml:3514
+#: doc/classes/RenderingServer.xml:3525
msgid "Performs a 2x2 blur on the SSAO output."
msgstr ""
-#: doc/classes/RenderingServer.xml:3517
+#: doc/classes/RenderingServer.xml:3528
msgid "Performs a 3x3 blur on the SSAO output. Use this for smoothest SSAO."
msgstr ""
-#: doc/classes/RenderingServer.xml:3520
+#: doc/classes/RenderingServer.xml:3531
msgid "Lowest quality of screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3523
+#: doc/classes/RenderingServer.xml:3534
msgid "Medium quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3526
+#: doc/classes/RenderingServer.xml:3537
msgid "High quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3529
+#: doc/classes/RenderingServer.xml:3540
msgid "Highest quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3540
+#: doc/classes/RenderingServer.xml:3551
msgid ""
"Lowest quality DOF blur. This is the fastest setting, but you may be able to "
"see filtering artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3543
+#: doc/classes/RenderingServer.xml:3554
msgid "Low quality DOF blur."
msgstr ""
-#: doc/classes/RenderingServer.xml:3546
+#: doc/classes/RenderingServer.xml:3557
msgid "Medium quality DOF blur."
msgstr ""
-#: doc/classes/RenderingServer.xml:3549
+#: doc/classes/RenderingServer.xml:3560
msgid ""
"Highest quality DOF blur. Results in the smoothest looking blur by taking "
"the most samples, but is also significantly slower."
msgstr ""
-#: doc/classes/RenderingServer.xml:3552
+#: doc/classes/RenderingServer.xml:3563
msgid ""
"Calculate the DOF blur using a box filter. The fastest option, but results "
"in obvious lines in blur pattern."
msgstr ""
-#: doc/classes/RenderingServer.xml:3555
+#: doc/classes/RenderingServer.xml:3566
msgid "Calculates DOF blur using a hexagon shaped filter."
msgstr ""
-#: doc/classes/RenderingServer.xml:3558
+#: doc/classes/RenderingServer.xml:3569
msgid ""
"Calculates DOF blur using a circle shaped filter. Best quality and most "
"realistic, but slowest. Use only for areas where a lot of performance can be "
"dedicated to post-processing (e.g. cutscenes)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3573
+#: doc/classes/RenderingServer.xml:3584
msgid "Do not use a debug mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:3576
+#: doc/classes/RenderingServer.xml:3587
msgid "Draw all objects as wireframe models."
msgstr ""
-#: doc/classes/RenderingServer.xml:3579
+#: doc/classes/RenderingServer.xml:3590
msgid ""
"Draw all objects in a way that displays how much overdraw is occurring. "
"Overdraw occurs when a section of pixels is drawn and shaded and then "
"another object covers it up. To optimize a scene, you should reduce overdraw."
msgstr ""
-#: doc/classes/RenderingServer.xml:3582
+#: doc/classes/RenderingServer.xml:3593
msgid ""
"Draw all objects without shading. Equivalent to setting all objects shaders "
"to [code]unshaded[/code]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3585
+#: doc/classes/RenderingServer.xml:3596
msgid "The instance does not have a type."
msgstr ""
-#: doc/classes/RenderingServer.xml:3588
+#: doc/classes/RenderingServer.xml:3599
msgid "The instance is a mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:3591
+#: doc/classes/RenderingServer.xml:3602
msgid "The instance is a multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:3594
+#: doc/classes/RenderingServer.xml:3605
msgid "The instance is an immediate geometry."
msgstr ""
-#: doc/classes/RenderingServer.xml:3597
+#: doc/classes/RenderingServer.xml:3608
msgid "The instance is a particle emitter."
msgstr ""
-#: doc/classes/RenderingServer.xml:3600
+#: doc/classes/RenderingServer.xml:3611
msgid "The instance is a light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3603
+#: doc/classes/RenderingServer.xml:3614
msgid "The instance is a reflection probe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3606
+#: doc/classes/RenderingServer.xml:3617
msgid "The instance is a decal."
msgstr ""
-#: doc/classes/RenderingServer.xml:3609
+#: doc/classes/RenderingServer.xml:3620
msgid "The instance is a GI probe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3612
+#: doc/classes/RenderingServer.xml:3623
msgid "The instance is a lightmap."
msgstr ""
-#: doc/classes/RenderingServer.xml:3615
+#: doc/classes/RenderingServer.xml:3626
msgid "Represents the size of the [enum InstanceType] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3618
+#: doc/classes/RenderingServer.xml:3629
msgid ""
"A combination of the flags of geometry instances (mesh, multimesh, immediate "
"and particles)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3621
+#: doc/classes/RenderingServer.xml:3632
msgid "Allows the instance to be used in baked lighting."
msgstr ""
-#: doc/classes/RenderingServer.xml:3624
+#: doc/classes/RenderingServer.xml:3635
msgid "Allows the instance to be used with dynamic global illumination."
msgstr ""
-#: doc/classes/RenderingServer.xml:3627
+#: doc/classes/RenderingServer.xml:3638
msgid "When set, manually requests to draw geometry on next frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3630
+#: doc/classes/RenderingServer.xml:3641
msgid "Represents the size of the [enum InstanceFlags] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3633
+#: doc/classes/RenderingServer.xml:3644
msgid "Disable shadows from this instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:3636
+#: doc/classes/RenderingServer.xml:3647
msgid "Cast shadows from this instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:3639
+#: doc/classes/RenderingServer.xml:3650
msgid ""
"Disable backface culling when rendering the shadow of the object. This is "
"slightly slower but may result in more correct shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3642
+#: doc/classes/RenderingServer.xml:3653
msgid ""
"Only render the shadows from the object. The object itself will not be drawn."
msgstr ""
-#: doc/classes/RenderingServer.xml:3645
+#: doc/classes/RenderingServer.xml:3656
msgid "The nine patch gets stretched where needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3648
+#: doc/classes/RenderingServer.xml:3659
msgid "The nine patch gets filled with tiles where needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3651
+#: doc/classes/RenderingServer.xml:3662
msgid ""
"The nine patch gets filled with tiles where needed and stretches them a bit "
"if needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3654
+#: doc/classes/RenderingServer.xml:3665
msgid "Uses the default filter mode for this [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3666 doc/classes/Viewport.xml:399
+#: doc/classes/RenderingServer.xml:3677 doc/classes/Viewport.xml:402
msgid ""
"The texture filter blends between the nearest 4 pixels and between the "
"nearest 2 mipmaps."
msgstr ""
-#: doc/classes/RenderingServer.xml:3675
+#: doc/classes/RenderingServer.xml:3686
msgid "Max value for [enum CanvasItemTextureFilter] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3678
+#: doc/classes/RenderingServer.xml:3689
msgid "Uses the default repeat mode for this [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3681 doc/classes/Viewport.xml:405
+#: doc/classes/RenderingServer.xml:3692 doc/classes/Viewport.xml:408
msgid ""
"Disables textures repeating. Instead, when reading UVs outside the 0-1 "
"range, the value will be clamped to the edge of the texture, resulting in a "
"stretched out look at the borders of the texture."
msgstr ""
-#: doc/classes/RenderingServer.xml:3687 doc/classes/Viewport.xml:411
+#: doc/classes/RenderingServer.xml:3698 doc/classes/Viewport.xml:414
msgid ""
"Flip the texture when repeating so that the edge lines up instead of "
"abruptly changing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3690
+#: doc/classes/RenderingServer.xml:3701
msgid "Max value for [enum CanvasItemTextureRepeat] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3693
+#: doc/classes/RenderingServer.xml:3704
msgid "Adds light color additive to the canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:3696
+#: doc/classes/RenderingServer.xml:3707
msgid "Adds light color subtractive to the canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:3699
+#: doc/classes/RenderingServer.xml:3710
msgid "The light adds color depending on transparency."
msgstr ""
-#: doc/classes/RenderingServer.xml:3702
+#: doc/classes/RenderingServer.xml:3713
msgid "The light adds color depending on mask."
msgstr ""
-#: doc/classes/RenderingServer.xml:3705
+#: doc/classes/RenderingServer.xml:3716
msgid "Do not apply a filter to canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3708
+#: doc/classes/RenderingServer.xml:3719
msgid "Use PCF5 filtering to filter canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3711
+#: doc/classes/RenderingServer.xml:3722
msgid "Use PCF13 filtering to filter canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3714
+#: doc/classes/RenderingServer.xml:3725
msgid "Max value of the [enum CanvasLightShadowFilter] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3717
+#: doc/classes/RenderingServer.xml:3728
msgid "Culling of the canvas occluder is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3720
+#: doc/classes/RenderingServer.xml:3731
msgid "Culling of the canvas occluder is clockwise."
msgstr ""
-#: doc/classes/RenderingServer.xml:3723
+#: doc/classes/RenderingServer.xml:3734
msgid "Culling of the canvas occluder is counterclockwise."
msgstr ""
-#: doc/classes/RenderingServer.xml:3784
+#: doc/classes/RenderingServer.xml:3795
msgid "The amount of objects in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3787
+#: doc/classes/RenderingServer.xml:3798
msgid "The amount of vertices in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3790
+#: doc/classes/RenderingServer.xml:3801
msgid "The amount of modified materials in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3793
+#: doc/classes/RenderingServer.xml:3804
msgid "The amount of shader rebinds in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3796
+#: doc/classes/RenderingServer.xml:3807
msgid "The amount of surface changes in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3799
+#: doc/classes/RenderingServer.xml:3810
msgid "The amount of draw calls in frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3814
+#: doc/classes/RenderingServer.xml:3825
msgid "Hardware supports shaders. This enum is currently unused in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:3817
+#: doc/classes/RenderingServer.xml:3828
msgid ""
"Hardware supports multithreading. This enum is currently unused in Godot 3.x."
msgstr ""
@@ -43895,13 +44562,13 @@ msgstr ""
#: doc/classes/Resource.xml:7
msgid ""
"Resource is the base class for all Godot-specific resource types, serving "
-"primarily as data containers. They are reference counted and freed when no "
-"longer in use. They are also cached once loaded from disk, so that any "
-"further attempts to load a resource from a given path will return the same "
-"reference (all this in contrast to a [Node], which is not reference counted "
-"and can be instanced from disk as many times as desired). Resources can be "
-"saved externally on disk or bundled into another object, such as a [Node] or "
-"another resource."
+"primarily as data containers. Unlike [Object]s, they are reference-counted "
+"and freed when no longer in use. They are also cached once loaded from disk, "
+"so that any further attempts to load a resource from a given path will "
+"return the same reference (all this in contrast to a [Node], which is not "
+"reference-counted and can be instanced from disk as many times as desired). "
+"Resources can be saved externally on disk or bundled into another object, "
+"such as a [Node] or another resource."
msgstr ""
#: doc/classes/Resource.xml:10
@@ -43910,34 +44577,38 @@ msgid ""
"resources.html"
msgstr ""
-#: doc/classes/Resource.xml:17
+#: doc/classes/Resource.xml:18
msgid ""
"Virtual function which can be overridden to customize the behavior value of "
"[method setup_local_to_scene]."
msgstr ""
-#: doc/classes/Resource.xml:26
+#: doc/classes/Resource.xml:27
msgid ""
"Duplicates the resource, returning a new resource. By default, sub-resources "
-"are shared between resource copies for efficiency, this can be changed by "
-"passing [code]true[/code] to the [code]subresources[/code] argument."
+"are shared between resource copies for efficiency. This can be changed by "
+"passing [code]true[/code] to the [code]subresources[/code] argument which "
+"will copy the subresources.\n"
+"[b]Note:[/b] If [code]subresources[/code] is [code]true[/code], this method "
+"will only perform a shallow copy. Nested resources within subresources will "
+"not be duplicated and will still be shared."
msgstr ""
-#: doc/classes/Resource.xml:33
+#: doc/classes/Resource.xml:35
msgid ""
"If [member resource_local_to_scene] is enabled and the resource was loaded "
"from a [PackedScene] instantiation, returns the local scene where this "
"resource's unique copy is in use. Otherwise, returns [code]null[/code]."
msgstr ""
-#: doc/classes/Resource.xml:40
+#: doc/classes/Resource.xml:42
msgid ""
"Returns the RID of the resource (or an empty RID). Many resources (such as "
"[Texture2D], [Mesh], etc) are high-level abstractions of resources stored in "
"a server, so this function will return the original RID."
msgstr ""
-#: doc/classes/Resource.xml:47
+#: doc/classes/Resource.xml:49
msgid ""
"This method is called when a resource with [member resource_local_to_scene] "
"enabled is loaded from a [PackedScene] instantiation. Its behavior can be "
@@ -43947,7 +44618,7 @@ msgid ""
"local viewport."
msgstr ""
-#: doc/classes/Resource.xml:57
+#: doc/classes/Resource.xml:59
msgid ""
"Sets the path of the resource, potentially overriding an existing cache "
"entry for this path. This differs from setting [member resource_path], as "
@@ -43955,25 +44626,25 @@ msgid ""
"given path."
msgstr ""
-#: doc/classes/Resource.xml:63
+#: doc/classes/Resource.xml:65
msgid ""
"If [code]true[/code], the resource will be made unique in each instance of "
"its local scene. It can thus be modified in a scene instance without "
"impacting other instances of that same scene."
msgstr ""
-#: doc/classes/Resource.xml:66
+#: doc/classes/Resource.xml:68
msgid "The name of the resource. This is an optional identifier."
msgstr ""
-#: doc/classes/Resource.xml:69
+#: doc/classes/Resource.xml:71
msgid ""
"The path to the resource. In case it has its own file, it will return its "
"filepath. If it's tied to the scene, it will return the scene's path, "
"followed by the resource's index."
msgstr ""
-#: doc/classes/Resource.xml:75
+#: doc/classes/Resource.xml:77
msgid "Emitted whenever the resource changes."
msgstr ""
@@ -44792,11 +45463,11 @@ msgid ""
"global coordinate system, but is centered at the object's origin."
msgstr ""
-#: doc/classes/RigidBody2D.xml:87
+#: doc/classes/RigidBody2D.xml:87 doc/classes/RigidBody3D.xml:99
msgid ""
-"Returns a list of the bodies colliding with this one. Use [member "
-"contacts_reported] to set the maximum number reported. You must also set "
-"[member contact_monitor] to [code]true[/code].\n"
+"Returns a list of the bodies colliding with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
"For performance, list of collisions is updated once per frame and before the "
"physics step. Consider using signals instead."
@@ -44833,7 +45504,7 @@ msgstr ""
msgid "The body's total applied torque."
msgstr ""
-#: doc/classes/RigidBody2D.xml:130 doc/classes/RigidBody3D.xml:150
+#: doc/classes/RigidBody2D.xml:130 doc/classes/RigidBody3D.xml:157
msgid ""
"If [code]true[/code], the body can enter sleep mode when there is no "
"movement. See [member sleeping]."
@@ -44845,11 +45516,17 @@ msgid ""
"another RigidBody2D. See also [member contacts_reported]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:136
-msgid "The maximum number of contacts to report."
+#: doc/classes/RigidBody2D.xml:136 doc/classes/RigidBody3D.xml:163
+msgid ""
+"The maximum number of contacts that will be recorded. Requires [member "
+"contact_monitor] to be set to [code]true[/code].\n"
+"[b]Note:[/b] The number of contacts is different from the number of "
+"collisions. Collisions between parallel edges will result in two contacts "
+"(one at each end), and collisions between parallel faces will result in four "
+"contacts (one at each corner)."
msgstr ""
-#: doc/classes/RigidBody2D.xml:139
+#: doc/classes/RigidBody2D.xml:140
msgid ""
"Continuous collision detection mode.\n"
"Continuous collision detection tries to predict where a moving body will "
@@ -44859,21 +45536,21 @@ msgid ""
"methods are available. See [enum CCDMode] for details."
msgstr ""
-#: doc/classes/RigidBody2D.xml:143
+#: doc/classes/RigidBody2D.xml:144
msgid ""
"If [code]true[/code], internal force integration is disabled for this body. "
"Aside from collision response, the body will only move as determined by the "
"[method _integrate_forces] function."
msgstr ""
-#: doc/classes/RigidBody2D.xml:146
+#: doc/classes/RigidBody2D.xml:147
msgid ""
"Multiplies the gravity applied to the body. The body's gravity is calculated "
"from the [b]Default Gravity[/b] value in [b]Project > Project Settings > "
"Physics > 2d[/b] and/or any additional gravity vector applied by [Area2D]s."
msgstr ""
-#: doc/classes/RigidBody2D.xml:149
+#: doc/classes/RigidBody2D.xml:150
msgid ""
"The body's moment of inertia. This is like mass, but for rotation: it "
"determines how much torque it takes to rotate the body. The moment of "
@@ -44882,18 +45559,18 @@ msgid ""
"automatically computing it."
msgstr ""
-#: doc/classes/RigidBody2D.xml:152
+#: doc/classes/RigidBody2D.xml:153
msgid ""
"Damps the body's [member linear_velocity]. If [code]-1[/code], the body will "
"use the [b]Default Linear Damp[/b] in [b]Project > Project Settings > "
"Physics > 2d[/b]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:161
+#: doc/classes/RigidBody2D.xml:162
msgid "The body's mode. See [enum Mode] for possible values."
msgstr ""
-#: doc/classes/RigidBody2D.xml:164 doc/classes/RigidBody3D.xml:181
+#: doc/classes/RigidBody2D.xml:165 doc/classes/RigidBody3D.xml:189
#: doc/classes/StaticBody2D.xml:22 doc/classes/StaticBody3D.xml:22
msgid ""
"The physics material override for the body.\n"
@@ -44901,50 +45578,50 @@ msgid ""
"other physics material, such as an inherited one."
msgstr ""
-#: doc/classes/RigidBody2D.xml:168 doc/classes/RigidBody3D.xml:185
+#: doc/classes/RigidBody2D.xml:169 doc/classes/RigidBody3D.xml:193
msgid ""
"If [code]true[/code], the body will not move and will not calculate forces "
"until woken up by another body through, for example, a collision, or by "
"using the [method apply_impulse] or [method add_force] methods."
msgstr ""
-#: doc/classes/RigidBody2D.xml:171
+#: doc/classes/RigidBody2D.xml:172
msgid ""
"The body's weight based on its mass and the [b]Default Gravity[/b] value in "
"[b]Project > Project Settings > Physics > 2d[/b]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:179
+#: doc/classes/RigidBody2D.xml:180 doc/classes/RigidBody3D.xml:204
msgid ""
-"Emitted when a body enters into contact with this one. [member "
-"contact_monitor] must be [code]true[/code] and [member contacts_reported] "
-"greater than [code]0[/code]."
+"Emitted when a body enters into contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:186
+#: doc/classes/RigidBody2D.xml:187
msgid ""
-"Emitted when a body exits contact with this one. [member contact_monitor] "
-"must be [code]true[/code] and [member contacts_reported] greater than "
-"[code]0[/code]."
+"Emitted when a body exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:199
+#: doc/classes/RigidBody2D.xml:200
msgid ""
"Emitted when a body enters into contact with this one. Reports colliding "
"shape information. See [CollisionObject2D] for shape index information. "
-"[member contact_monitor] must be [code]true[/code] and [member "
-"contacts_reported] greater than [code]0[/code]."
+"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:212
+#: doc/classes/RigidBody2D.xml:213
msgid ""
"Emitted when a body shape exits contact with this one. Reports colliding "
"shape information. See [CollisionObject2D] for shape index information. "
-"[member contact_monitor] must be [code]true[/code] and [member "
-"contacts_reported] greater than [code]0[/code]."
+"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:217 doc/classes/RigidBody3D.xml:236
+#: doc/classes/RigidBody2D.xml:218 doc/classes/RigidBody3D.xml:244
msgid ""
"Emitted when the physics engine changes the body's sleeping state.\n"
"[b]Note:[/b] Changing the value [member sleeping] will not trigger this "
@@ -44952,41 +45629,41 @@ msgid ""
"engine or [code]emit_signal(\"sleeping_state_changed\")[/code] is used."
msgstr ""
-#: doc/classes/RigidBody2D.xml:224
+#: doc/classes/RigidBody2D.xml:225
msgid ""
"Rigid mode. The body behaves as a physical object. It collides with other "
"bodies and responds to forces applied to it. This is the default mode."
msgstr ""
-#: doc/classes/RigidBody2D.xml:227
+#: doc/classes/RigidBody2D.xml:228
msgid "Static mode. The body behaves like a [StaticBody2D] and does not move."
msgstr ""
-#: doc/classes/RigidBody2D.xml:230
+#: doc/classes/RigidBody2D.xml:231
msgid ""
"Character mode. Similar to [constant MODE_RIGID], but the body can not "
"rotate."
msgstr ""
-#: doc/classes/RigidBody2D.xml:233
+#: doc/classes/RigidBody2D.xml:234
msgid ""
"Kinematic mode. The body behaves like a [KinematicBody2D], and must be moved "
"by code."
msgstr ""
-#: doc/classes/RigidBody2D.xml:236
+#: doc/classes/RigidBody2D.xml:237
msgid ""
"Continuous collision detection disabled. This is the fastest way to detect "
"body collisions, but can miss small, fast-moving objects."
msgstr ""
-#: doc/classes/RigidBody2D.xml:239
+#: doc/classes/RigidBody2D.xml:240
msgid ""
"Continuous collision detection enabled using raycasting. This is faster than "
"shapecasting but less precise."
msgstr ""
-#: doc/classes/RigidBody2D.xml:242
+#: doc/classes/RigidBody2D.xml:243
msgid ""
"Continuous collision detection enabled using shapecasting. This is the "
"slowest CCD method and the most precise."
@@ -45072,42 +45749,31 @@ msgid ""
"locked."
msgstr ""
-#: doc/classes/RigidBody3D.xml:99
+#: doc/classes/RigidBody3D.xml:107
msgid ""
-"Returns a list of the bodies colliding with this one. By default, number of "
-"max contacts reported is at 0, see the [member contacts_reported] property "
-"to increase it.\n"
-"[b]Note:[/b] The result of this test is not immediate after moving objects. "
-"For performance, list of collisions is updated once per frame and before the "
-"physics step. Consider using signals instead."
+"Returns the inverse inertia tensor basis. This is used to calculate the "
+"angular acceleration resulting from a torque applied to the [RigidBody3D]."
msgstr ""
-#: doc/classes/RigidBody3D.xml:111
+#: doc/classes/RigidBody3D.xml:118
msgid "Locks the specified linear or rotational axis."
msgstr ""
-#: doc/classes/RigidBody3D.xml:126
+#: doc/classes/RigidBody3D.xml:133
msgid "Damps RigidBody3D's rotational forces."
msgstr ""
-#: doc/classes/RigidBody3D.xml:129
+#: doc/classes/RigidBody3D.xml:136
msgid "RigidBody3D's rotational velocity."
msgstr ""
-#: doc/classes/RigidBody3D.xml:153
+#: doc/classes/RigidBody3D.xml:160
msgid ""
"If [code]true[/code], the RigidBody3D will emit signals when it collides "
-"with another RigidBody3D."
-msgstr ""
-
-#: doc/classes/RigidBody3D.xml:156
-msgid ""
-"The maximum contacts to report. Bodies can keep a log of the contacts with "
-"other bodies, this is enabled by setting the maximum amount of contacts "
-"reported to a number greater than 0."
+"with another RigidBody3D. See also [member contacts_reported]."
msgstr ""
-#: doc/classes/RigidBody3D.xml:159
+#: doc/classes/RigidBody3D.xml:167
msgid ""
"If [code]true[/code], continuous collision detection is used.\n"
"Continuous collision detection tries to predict where a moving body will "
@@ -45117,7 +45783,7 @@ msgid ""
"faster to compute, but can miss small, fast-moving objects."
msgstr ""
-#: doc/classes/RigidBody3D.xml:163
+#: doc/classes/RigidBody3D.xml:171
msgid ""
"If [code]true[/code], internal force integration will be disabled (like "
"gravity or air friction) for this body. Other than collision response, the "
@@ -45125,7 +45791,7 @@ msgid ""
"function, if defined."
msgstr ""
-#: doc/classes/RigidBody3D.xml:166
+#: doc/classes/RigidBody3D.xml:174
msgid ""
"This is multiplied by the global 3D gravity setting found in [b]Project > "
"Project Settings > Physics > 3d[/b] to produce RigidBody3D's gravity. For "
@@ -45133,14 +45799,14 @@ msgid ""
"and 0.5 will apply half gravity to this object."
msgstr ""
-#: doc/classes/RigidBody3D.xml:169
+#: doc/classes/RigidBody3D.xml:177
msgid ""
"The body's linear damp. Cannot be less than -1.0. If this value is different "
"from -1.0, any linear damp derived from the world or areas will be "
"overridden."
msgstr ""
-#: doc/classes/RigidBody3D.xml:172
+#: doc/classes/RigidBody3D.xml:180
msgid ""
"The body's linear velocity. Can be used sporadically, but [b]don't set this "
"every frame[/b], because physics may run in another thread and runs at a "
@@ -45148,60 +45814,57 @@ msgid ""
"for precise control of the body state."
msgstr ""
-#: doc/classes/RigidBody3D.xml:178
+#: doc/classes/RigidBody3D.xml:186
msgid "The body mode. See [enum Mode] for possible values."
msgstr ""
-#: doc/classes/RigidBody3D.xml:196
+#: doc/classes/RigidBody3D.xml:211
msgid ""
-"Emitted when a body enters into contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work."
+"Emitted when a body shape exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody3D.xml:203
+#: doc/classes/RigidBody3D.xml:224
msgid ""
-"Emitted when a body shape exits contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work."
-msgstr ""
-
-#: doc/classes/RigidBody3D.xml:216
-msgid ""
-"Emitted when a body enters into contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work.\n"
+"Emitted when a body enters into contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"This signal not only receives the body that collided with this one, but also "
"its [RID] ([code]body_id[/code]), the shape index from the colliding body "
"([code]body_shape[/code]), and the shape index from this body "
"([code]local_shape[/code]) the other body collided with."
msgstr ""
-#: doc/classes/RigidBody3D.xml:230
+#: doc/classes/RigidBody3D.xml:238
msgid ""
-"Emitted when a body shape exits contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work.\n"
+"Emitted when a body shape exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"This signal not only receives the body that stopped colliding with this one, "
"but also its [RID] ([code]body_id[/code]), the shape index from the "
"colliding body ([code]body_shape[/code]), and the shape index from this body "
"([code]local_shape[/code]) the other body stopped colliding with."
msgstr ""
-#: doc/classes/RigidBody3D.xml:243
+#: doc/classes/RigidBody3D.xml:251
msgid ""
"Rigid body mode. This is the \"natural\" state of a rigid body. It is "
"affected by forces, and can move, rotate, and be affected by user code."
msgstr ""
-#: doc/classes/RigidBody3D.xml:246
+#: doc/classes/RigidBody3D.xml:254
msgid ""
"Static mode. The body behaves like a [StaticBody3D], and can only move by "
"user code."
msgstr ""
-#: doc/classes/RigidBody3D.xml:249
+#: doc/classes/RigidBody3D.xml:257
msgid ""
"Character body mode. This behaves like a rigid body, but can not rotate."
msgstr ""
-#: doc/classes/RigidBody3D.xml:252
+#: doc/classes/RigidBody3D.xml:260
msgid ""
"Kinematic body mode. The body behaves like a [KinematicBody3D], and can only "
"move by user code."
@@ -45708,7 +46371,7 @@ msgstr ""
msgid "The time remaining."
msgstr ""
-#: doc/classes/SceneTreeTimer.xml:28 doc/classes/Timer.xml:62
+#: doc/classes/SceneTreeTimer.xml:28 doc/classes/Timer.xml:63
msgid "Emitted when the timer reaches 0."
msgstr ""
@@ -45831,27 +46494,27 @@ msgid ""
"the singleton using [method EditorInterface.get_script_editor]."
msgstr ""
-#: doc/classes/ScriptEditor.xml:40
+#: doc/classes/ScriptEditor.xml:46
msgid "Returns a [Script] that is currently active in editor."
msgstr ""
-#: doc/classes/ScriptEditor.xml:57
+#: doc/classes/ScriptEditor.xml:69
msgid ""
"Returns an array with all [Script] objects which are currently open in "
"editor."
msgstr ""
-#: doc/classes/ScriptEditor.xml:66
+#: doc/classes/ScriptEditor.xml:78
msgid "Goes to the specified line in the current script."
msgstr ""
-#: doc/classes/ScriptEditor.xml:85
+#: doc/classes/ScriptEditor.xml:113
msgid ""
"Emitted when user changed active script. Argument is a freshly activated "
"[Script]."
msgstr ""
-#: doc/classes/ScriptEditor.xml:92
+#: doc/classes/ScriptEditor.xml:120
msgid ""
"Emitted when editor is about to close the active script. Argument is a "
"[Script] that is going to be closed."
@@ -45913,7 +46576,7 @@ msgid ""
"visible."
msgstr ""
-#: doc/classes/ScrollContainer.xml:37 doc/classes/TextEdit.xml:453
+#: doc/classes/ScrollContainer.xml:37 doc/classes/TextEdit.xml:407
msgid "The current horizontal scroll value."
msgstr ""
@@ -45921,7 +46584,7 @@ msgstr ""
msgid "If [code]true[/code], enables horizontal scrolling."
msgstr ""
-#: doc/classes/ScrollContainer.xml:43 doc/classes/TextEdit.xml:456
+#: doc/classes/ScrollContainer.xml:43 doc/classes/TextEdit.xml:410
msgid "The current vertical scroll value."
msgstr ""
@@ -46440,7 +47103,7 @@ msgstr ""
msgid ""
"Sets the global pose transform, [code]pose[/code], for the bone at "
"[code]bone_idx[/code].\n"
-"[code]amount[/code] is the interpolation strengh that will be used when "
+"[code]amount[/code] is the interpolation strength that will be used when "
"applying the pose, and [code]persistent[/code] determines if the applied "
"pose will remain.\n"
"[b]Note[/b]: The pose transform needs to be in bone space. Use [method "
@@ -46457,7 +47120,7 @@ msgstr ""
#: doc/classes/Skeleton3D.xml:266
msgid ""
-"Returns the pose transform for bone [code]bone_idx[/code].\n"
+"Sets the pose transform for bone [code]bone_idx[/code].\n"
"[b]Note[/b]: The pose transform needs to be in bone space. Use [method "
"world_transform_to_bone_transform] to convert a world transform, like one "
"you can get from a [Node3D], to bone space."
@@ -46550,6 +47213,16 @@ msgstr ""
#: doc/classes/Sky.xml:52
msgid ""
+"Automatically selects the appropriate process mode based on your sky shader. "
+"If your shader uses [code]TIME[/code] or [code]POSITION[/code], this will "
+"use [constant PROCESS_MODE_REALTIME]. If your shader uses any of the "
+"[code]LIGHT_*[/code] variables or any custom uniforms, this uses [constant "
+"PROCESS_MODE_INCREMENTAL]. Otherwise, this defaults to [constant "
+"PROCESS_MODE_QUALITY]."
+msgstr ""
+
+#: doc/classes/Sky.xml:55
+msgid ""
"Uses high quality importance sampling to process the radiance map. In "
"general, this results in much higher quality than [constant "
"PROCESS_MODE_REALTIME] but takes much longer to generate. This should not be "
@@ -46559,10 +47232,22 @@ msgid ""
"ggx_samples]."
msgstr ""
-#: doc/classes/Sky.xml:55
+#: doc/classes/Sky.xml:58
+msgid ""
+"Uses the same high quality importance sampling to process the radiance map "
+"as [constant PROCESS_MODE_QUALITY], but updates over several frames. The "
+"number of frames is determined by [member ProjectSettings.rendering/quality/"
+"reflections/roughness_layers]. Use this when you need highest quality "
+"radiance maps, but have a sky that updates slowly."
+msgstr ""
+
+#: doc/classes/Sky.xml:61
msgid ""
"Uses the fast filtering algorithm to process the radiance map. In general "
-"this results in lower quality, but substantially faster run times.\n"
+"this results in lower quality, but substantially faster run times. If you "
+"need better quality, but still need to update the sky every frame, consider "
+"turning on [member ProjectSettings.rendering/quality/reflections/"
+"fast_filter_high_quality].\n"
"[b]Note:[/b] The fast filtering algorithm is limited to 256x256 cubemaps, so "
"[member radiance_size] must be set to [constant RADIANCE_SIZE_256]."
msgstr ""
@@ -46899,10 +47584,9 @@ msgid ""
msgstr ""
#: doc/classes/SpringArm3D.xml:35
-msgid ""
-"Returns the proportion between the current arm length (after checking for "
-"collisions) and the [member spring_length]. Ranges from 0 to 1."
-msgstr ""
+#, fuzzy
+msgid "Returns the spring arm's current length."
+msgstr "Zwraca sinus parametru."
#: doc/classes/SpringArm3D.xml:44
msgid ""
@@ -47597,7 +48281,7 @@ msgstr ""
msgid ""
"This is the built-in string class (and the one used by GDScript). It "
"supports Unicode and provides all necessary means for string handling. "
-"Strings are reference counted and use a copy-on-write approach, so passing "
+"Strings are reference-counted and use a copy-on-write approach, so passing "
"them around is cheap in resources."
msgstr ""
@@ -47752,26 +48436,32 @@ msgstr ""
#: doc/classes/String.xml:328
msgid ""
"Returns a copy of the string with escaped characters replaced by their "
-"meanings according to the C language standard."
+"meanings. Supported escape sequences are [code]\\'[/code], [code]\\\"[/"
+"code], [code]\\?[/code], [code]\\\\[/code], [code]\\a[/code], [code]\\b[/"
+"code], [code]\\f[/code], [code]\\n[/code], [code]\\r[/code], [code]\\t[/"
+"code], [code]\\v[/code].\n"
+"[b]Note:[/b] Unlike the GDScript parser, this method doesn't support the "
+"[code]\\uXXXX[/code] escape sequence."
msgstr ""
-#: doc/classes/String.xml:335
+#: doc/classes/String.xml:336
msgid ""
-"Changes the case of some letters. Replaces underscores with spaces, converts "
-"all letters to lowercase, then capitalizes first and every letter following "
-"the space character. For [code]capitalize camelCase mixed_with_underscores[/"
-"code], it will return [code]Capitalize Camelcase Mixed With Underscores[/"
+"Changes the case of some letters. Replaces underscores with spaces, adds "
+"spaces before in-word uppercase characters, converts all letters to "
+"lowercase, then capitalizes the first letter and every letter following a "
+"space character. For [code]capitalize camelCase mixed_with_underscores[/"
+"code], it will return [code]Capitalize Camel Case Mixed With Underscores[/"
"code]."
msgstr ""
-#: doc/classes/String.xml:344
+#: doc/classes/String.xml:345
msgid ""
"Performs a case-sensitive comparison to another string. Returns [code]-1[/"
"code] if less than, [code]+1[/code] if greater than, or [code]0[/code] if "
"equal."
msgstr ""
-#: doc/classes/String.xml:357
+#: doc/classes/String.xml:358
msgid ""
"Returns the number of occurrences of substring [code]what[/code] between "
"[code]from[/code] and [code]to[/code] positions. If [code]from[/code] and "
@@ -47779,7 +48469,7 @@ msgid ""
"code] equals 0 the remained substring will be used."
msgstr ""
-#: doc/classes/String.xml:370
+#: doc/classes/String.xml:371
msgid ""
"Returns the number of occurrences of substring [code]what[/code] (ignoring "
"case) between [code]from[/code] and [code]to[/code] positions. If "
@@ -47787,32 +48477,33 @@ msgid ""
"used. If only [code]to[/code] equals 0 the remained substring will be used."
msgstr ""
-#: doc/classes/String.xml:377
+#: doc/classes/String.xml:378
msgid ""
"Returns a copy of the string with indentation (leading tabs and spaces) "
"removed."
msgstr ""
-#: doc/classes/String.xml:384
+#: doc/classes/String.xml:385
msgid ""
"Returns [code]true[/code] if the length of the string equals [code]0[/code]."
msgstr ""
-#: doc/classes/String.xml:393
+#: doc/classes/String.xml:394
msgid "Returns [code]true[/code] if the string ends with the given string."
msgstr ""
-#: doc/classes/String.xml:404
+#: doc/classes/String.xml:405
msgid ""
"Erases [code]chars[/code] characters from the string starting from "
"[code]position[/code]."
msgstr ""
-#: doc/classes/String.xml:415
+#: doc/classes/String.xml:416
msgid ""
-"Finds the first occurrence of a substring. Returns the starting position of "
-"the substring or [code]-1[/code] if not found. Optionally, the initial "
-"search index can be passed.\n"
+"Returns the index of the [b]first[/b] case-sensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the end of the "
+"string.\n"
"[b]Note:[/b] If you just want to know whether a string contains a substring, "
"use the [code]in[/code] operator as follows:\n"
"[codeblock]\n"
@@ -47822,48 +48513,42 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:430
+#: doc/classes/String.xml:433
msgid ""
-"Finds the last occurrence of a substring. Returns the starting position of "
-"the substring or [code]-1[/code] if not found."
+"Returns the index of the [b]first[/b] case-insensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the end of the string."
msgstr ""
-#: doc/classes/String.xml:441
-msgid ""
-"Finds the first occurrence of a substring, ignoring case. Returns the "
-"starting position of the substring or [code]-1[/code] if not found. "
-"Optionally, the initial search index can be passed."
-msgstr ""
-
-#: doc/classes/String.xml:452
+#: doc/classes/String.xml:444
msgid ""
"Formats the string by replacing all occurrences of [code]placeholder[/code] "
"with [code]values[/code]."
msgstr ""
-#: doc/classes/String.xml:459
+#: doc/classes/String.xml:451
msgid "If the string is a valid file path, returns the base directory name."
msgstr ""
-#: doc/classes/String.xml:466
+#: doc/classes/String.xml:458
msgid ""
"If the string is a valid file path, returns the full file path without the "
"extension."
msgstr ""
-#: doc/classes/String.xml:473
+#: doc/classes/String.xml:465
msgid "If the string is a valid file path, returns the extension."
msgstr ""
-#: doc/classes/String.xml:480
+#: doc/classes/String.xml:472
msgid "If the string is a valid file path, returns the filename."
msgstr ""
-#: doc/classes/String.xml:487
+#: doc/classes/String.xml:479
msgid "Hashes the string and returns a 32-bit integer."
msgstr ""
-#: doc/classes/String.xml:494
+#: doc/classes/String.xml:486
msgid ""
"Converts a string containing a hexadecimal number into an integer. "
"Hexadecimal strings are expected to be prefixed with \"[code]0x[/code]\" "
@@ -47873,7 +48558,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:504
+#: doc/classes/String.xml:496
msgid ""
"Escapes (encodes) a string to URL friendly format. Also referred to as 'URL "
"encode'.\n"
@@ -47883,7 +48568,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:514
+#: doc/classes/String.xml:506
msgid ""
"Unescapes (decodes) a string in URL encoded format. Also referred to as 'URL "
"decode'.\n"
@@ -47893,7 +48578,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:526
+#: doc/classes/String.xml:518
msgid ""
"Converts [code]size[/code] represented as number of bytes to human-readable "
"format using internationalized set of data size units, namely: B, KiB, MiB, "
@@ -47906,48 +48591,48 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:542
+#: doc/classes/String.xml:534
msgid ""
"Returns a copy of the string with the substring [code]what[/code] inserted "
"at the given position."
msgstr ""
-#: doc/classes/String.xml:549
+#: doc/classes/String.xml:541
msgid ""
"If the string is a path to a file or directory, returns [code]true[/code] if "
"the path is absolute."
msgstr ""
-#: doc/classes/String.xml:556
+#: doc/classes/String.xml:548
msgid ""
"If the string is a path to a file or directory, returns [code]true[/code] if "
"the path is relative."
msgstr ""
-#: doc/classes/String.xml:565
+#: doc/classes/String.xml:557
msgid ""
"Returns [code]true[/code] if this string is a subsequence of the given "
"string."
msgstr ""
-#: doc/classes/String.xml:574
+#: doc/classes/String.xml:566
msgid ""
"Returns [code]true[/code] if this string is a subsequence of the given "
"string, without considering case."
msgstr ""
-#: doc/classes/String.xml:581
+#: doc/classes/String.xml:573
msgid ""
"Returns [code]true[/code] if this string is free from characters that aren't "
"allowed in file names, those being:\n"
"[code]: / \\ ? * \" | % < >[/code]"
msgstr ""
-#: doc/classes/String.xml:589
+#: doc/classes/String.xml:581
msgid "Returns [code]true[/code] if this string contains a valid float."
msgstr ""
-#: doc/classes/String.xml:598
+#: doc/classes/String.xml:590
msgid ""
"Returns [code]true[/code] if this string contains a valid hexadecimal "
"number. If [code]with_prefix[/code] is [code]true[/code], then a validity of "
@@ -47955,7 +48640,7 @@ msgid ""
"instance: [code]0xDEADC0DE[/code]."
msgstr ""
-#: doc/classes/String.xml:605
+#: doc/classes/String.xml:597
msgid ""
"Returns [code]true[/code] if this string contains a valid color in "
"hexadecimal HTML notation. Other HTML notations such as named colors or "
@@ -47963,22 +48648,22 @@ msgid ""
"return [code]false[/code]."
msgstr ""
-#: doc/classes/String.xml:612
+#: doc/classes/String.xml:604
msgid ""
"Returns [code]true[/code] if this string is a valid identifier. A valid "
"identifier may contain only letters, digits and underscores ([code]_[/code]) "
"and the first character may not be a digit."
msgstr ""
-#: doc/classes/String.xml:619
+#: doc/classes/String.xml:611
msgid "Returns [code]true[/code] if this string contains a valid integer."
msgstr ""
-#: doc/classes/String.xml:626
+#: doc/classes/String.xml:618
msgid "Returns [code]true[/code] if this string contains a valid IP address."
msgstr ""
-#: doc/classes/String.xml:635
+#: doc/classes/String.xml:627
msgid ""
"Return a [String] which is the concatenation of the [code]parts[/code]. The "
"separator between elements is the string providing this method.\n"
@@ -47988,121 +48673,125 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:646
+#: doc/classes/String.xml:638
msgid ""
"Returns a copy of the string with special characters escaped using the JSON "
"standard."
msgstr ""
-#: doc/classes/String.xml:655
+#: doc/classes/String.xml:647
msgid "Returns a number of characters from the left of the string."
msgstr ""
-#: doc/classes/String.xml:662
+#: doc/classes/String.xml:654
msgid "Returns the string's amount of characters."
msgstr ""
-#: doc/classes/String.xml:671
+#: doc/classes/String.xml:663
msgid "Returns a copy of the string with characters removed from the left."
msgstr ""
-#: doc/classes/String.xml:680
+#: doc/classes/String.xml:672
msgid ""
"Does a simple case-sensitive expression match, where [code]\"*\"[/code] "
"matches zero or more arbitrary characters and [code]\"?\"[/code] matches any "
"single character except a period ([code]\".\"[/code])."
msgstr ""
-#: doc/classes/String.xml:689
+#: doc/classes/String.xml:681
msgid ""
"Does a simple case-insensitive expression match, where [code]\"*\"[/code] "
"matches zero or more arbitrary characters and [code]\"?\"[/code] matches any "
"single character except a period ([code]\".\"[/code])."
msgstr ""
-#: doc/classes/String.xml:696
+#: doc/classes/String.xml:688
msgid "Returns the MD5 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:703
+#: doc/classes/String.xml:695
msgid "Returns the MD5 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:712
+#: doc/classes/String.xml:704
msgid ""
"Performs a case-insensitive comparison to another string. Returns [code]-1[/"
"code] if less than, [code]+1[/code] if greater than, or [code]0[/code] if "
"equal."
msgstr ""
-#: doc/classes/String.xml:721
+#: doc/classes/String.xml:713
msgid "Returns the character code at position [code]at[/code]."
msgstr ""
-#: doc/classes/String.xml:730
+#: doc/classes/String.xml:722
msgid ""
"Formats a number to have an exact number of [code]digits[/code] after the "
"decimal point."
msgstr ""
-#: doc/classes/String.xml:739
+#: doc/classes/String.xml:731
msgid ""
"Formats a number to have an exact number of [code]digits[/code] before the "
"decimal point."
msgstr ""
-#: doc/classes/String.xml:746
+#: doc/classes/String.xml:738
msgid "Decode a percent-encoded string. See [method percent_encode]."
msgstr ""
-#: doc/classes/String.xml:753
+#: doc/classes/String.xml:745
msgid ""
"Percent-encodes a string. Encodes parameters in a URL when sending a HTTP "
"GET request (and bodies of form-urlencoded POST requests)."
msgstr ""
-#: doc/classes/String.xml:762
+#: doc/classes/String.xml:754
msgid ""
"If the string is a path, this concatenates [code]file[/code] at the end of "
"the string as a subpath. E.g. [code]\"this/is\".plus_file(\"path\") == "
"\"this/is/path\"[/code]."
msgstr ""
-#: doc/classes/String.xml:771
+#: doc/classes/String.xml:763
msgid ""
"Returns original string repeated a number of times. The number of "
"repetitions is given by the argument."
msgstr ""
-#: doc/classes/String.xml:782
+#: doc/classes/String.xml:774
msgid ""
"Replaces occurrences of a case-sensitive substring with the given one inside "
"the string."
msgstr ""
-#: doc/classes/String.xml:793
+#: doc/classes/String.xml:785
msgid ""
"Replaces occurrences of a case-insensitive substring with the given one "
"inside the string."
msgstr ""
-#: doc/classes/String.xml:804
+#: doc/classes/String.xml:796
msgid ""
-"Performs a case-sensitive search for a substring, but starts from the end of "
-"the string instead of the beginning."
+"Returns the index of the [b]last[/b] case-sensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the beginning of the "
+"string."
msgstr ""
-#: doc/classes/String.xml:815
+#: doc/classes/String.xml:807
msgid ""
-"Performs a case-insensitive search for a substring, but starts from the end "
-"of the string instead of the beginning."
+"Returns the index of the [b]last[/b] case-insensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the beginning of the "
+"string."
msgstr ""
-#: doc/classes/String.xml:824
+#: doc/classes/String.xml:816
msgid "Returns the right side of the string from a given position."
msgstr ""
-#: doc/classes/String.xml:837
+#: doc/classes/String.xml:829
msgid ""
"Splits the string by a [code]delimiter[/code] string and returns an array of "
"the substrings, starting from right.\n"
@@ -48121,39 +48810,39 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:856
+#: doc/classes/String.xml:848
msgid "Returns a copy of the string with characters removed from the right."
msgstr ""
-#: doc/classes/String.xml:863
+#: doc/classes/String.xml:855
msgid "Returns the SHA-1 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:870
+#: doc/classes/String.xml:862
msgid "Returns the SHA-1 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:877
+#: doc/classes/String.xml:869
msgid "Returns the SHA-256 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:884
+#: doc/classes/String.xml:876
msgid "Returns the SHA-256 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:893
+#: doc/classes/String.xml:885
msgid ""
"Returns the similarity index of the text compared to this string. 1 means "
"totally similar and 0 means totally dissimilar."
msgstr ""
-#: doc/classes/String.xml:906
+#: doc/classes/String.xml:898
msgid ""
"Splits the string by a [code]delimiter[/code] string and returns an array of "
-"the substrings.\n"
+"the substrings. The [code]delimiter[/code] can be of any length.\n"
"If [code]maxsplit[/code] is specified, it defines the number of splits to do "
-"from the left up to [code]maxsplit[/code]. The default value of 0 means that "
-"all items are split.\n"
+"from the left up to [code]maxsplit[/code]. The default value of [code]0[/"
+"code] means that all items are split.\n"
"Example:\n"
"[codeblock]\n"
"var some_string = \"One,Two,Three,Four\"\n"
@@ -48161,10 +48850,12 @@ msgid ""
"print(some_array.size()) # Prints 2\n"
"print(some_array[0]) # Prints \"One\"\n"
"print(some_array[1]) # Prints \"Two,Three,Four\"\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"If you need to split strings with more complex rules, use the [RegEx] class "
+"instead."
msgstr ""
-#: doc/classes/String.xml:926
+#: doc/classes/String.xml:919
msgid ""
"Splits the string in floats by using a delimiter string and returns an array "
"of the substrings.\n"
@@ -48172,7 +48863,7 @@ msgid ""
"split by [code]\",\"[/code]."
msgstr ""
-#: doc/classes/String.xml:938
+#: doc/classes/String.xml:931
msgid ""
"Returns a copy of the string stripped of any non-printable character "
"(including tabulations, spaces and line breaks) at the beginning and the "
@@ -48180,7 +48871,7 @@ msgid ""
"right edges respectively."
msgstr ""
-#: doc/classes/String.xml:945
+#: doc/classes/String.xml:938
msgid ""
"Returns a copy of the string stripped of any escape character. These include "
"all non-printable control characters of the first page of the ASCII table (< "
@@ -48188,14 +48879,14 @@ msgid ""
"code] and [code]\\r[/code]) characters, but not spaces."
msgstr ""
-#: doc/classes/String.xml:956
+#: doc/classes/String.xml:949
msgid ""
"Returns part of the string from the position [code]from[/code] with length "
"[code]len[/code]. Argument [code]len[/code] is optional and using [code]-1[/"
"code] will return remaining characters from given position."
msgstr ""
-#: doc/classes/String.xml:963
+#: doc/classes/String.xml:956
msgid ""
"Converts the String (which is a character array) to [PackedByteArray] (which "
"is an array of bytes). The conversion is faster compared to [method "
@@ -48203,25 +48894,25 @@ msgid ""
"ASCII characters."
msgstr ""
-#: doc/classes/String.xml:970
+#: doc/classes/String.xml:963
msgid ""
"Converts a string containing a decimal number into a [code]float[/code]."
msgstr ""
-#: doc/classes/String.xml:977
+#: doc/classes/String.xml:970
msgid ""
"Converts a string containing an integer number into an [code]int[/code]."
msgstr ""
-#: doc/classes/String.xml:984
+#: doc/classes/String.xml:977
msgid "Returns the string converted to lowercase."
msgstr ""
-#: doc/classes/String.xml:991
+#: doc/classes/String.xml:984
msgid "Returns the string converted to uppercase."
msgstr ""
-#: doc/classes/String.xml:998
+#: doc/classes/String.xml:991
msgid ""
"Converts the String (which is an array of characters) to [PackedByteArray] "
"(which is an array of bytes). The conversion is a bit slower than [method "
@@ -48229,25 +48920,25 @@ msgid ""
"this function over [method to_ascii]."
msgstr ""
-#: doc/classes/String.xml:1007
+#: doc/classes/String.xml:1000
msgid ""
"Removes a given string from the start if it starts with it or leaves the "
"string unchanged."
msgstr ""
-#: doc/classes/String.xml:1016
+#: doc/classes/String.xml:1009
msgid ""
"Removes a given string from the end if it ends with it or leaves the string "
"unchanged."
msgstr ""
-#: doc/classes/String.xml:1023
+#: doc/classes/String.xml:1016
msgid ""
"Returns a copy of the string with special characters escaped using the XML "
"standard."
msgstr ""
-#: doc/classes/String.xml:1030
+#: doc/classes/String.xml:1023
msgid ""
"Returns a copy of the string with escaped characters replaced by their "
"meanings according to the XML standard."
@@ -49479,50 +50170,42 @@ msgid ""
"undo/redo."
msgstr ""
-#: doc/classes/TextEdit.xml:24
-msgid "Adds color region (given the delimiters) and its colors."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:35
-msgid "Adds a [code]keyword[/code] and its [Color]."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:44
+#: doc/classes/TextEdit.xml:18
msgid ""
"Returns if the given line is foldable, that is, it has indented lines right "
"below it."
msgstr ""
-#: doc/classes/TextEdit.xml:57
+#: doc/classes/TextEdit.xml:25
msgid ""
-"Clears all custom syntax coloring information previously added with [method "
-"add_color_region] or [method add_keyword_color]."
+"Centers the viewport on the line the editing cursor is at. This also resets "
+"the [member scroll_horizontal] value to [code]0[/code]."
msgstr ""
-#: doc/classes/TextEdit.xml:64
+#: doc/classes/TextEdit.xml:32
msgid "Clears the undo history."
msgstr ""
-#: doc/classes/TextEdit.xml:71
+#: doc/classes/TextEdit.xml:39
msgid "Copy's the current text selection."
msgstr ""
-#: doc/classes/TextEdit.xml:78
+#: doc/classes/TextEdit.xml:46
msgid "Returns the column the editing cursor is at."
msgstr ""
-#: doc/classes/TextEdit.xml:85
+#: doc/classes/TextEdit.xml:53
msgid "Returns the line the editing cursor is at."
msgstr ""
-#: doc/classes/TextEdit.xml:96
+#: doc/classes/TextEdit.xml:64
msgid ""
"Moves the cursor at the specified [code]column[/code] index.\n"
"If [code]adjust_viewport[/code] is set to [code]true[/code], the viewport "
"will center at the cursor position after the move occurs."
msgstr ""
-#: doc/classes/TextEdit.xml:112
+#: doc/classes/TextEdit.xml:80
msgid ""
"Moves the cursor at the specified [code]line[/code] index.\n"
"If [code]adjust_viewport[/code] is set to [code]true[/code], the viewport "
@@ -49531,111 +50214,101 @@ msgid ""
"[code]line[/code] can be hidden using [method set_line_as_hidden]."
msgstr ""
-#: doc/classes/TextEdit.xml:121
+#: doc/classes/TextEdit.xml:89
msgid "Cut's the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:128
+#: doc/classes/TextEdit.xml:96
msgid "Deselects the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:135
+#: doc/classes/TextEdit.xml:103
msgid "Folds all lines that are possible to be folded (see [method can_fold])."
msgstr ""
-#: doc/classes/TextEdit.xml:144
+#: doc/classes/TextEdit.xml:112
msgid "Folds the given line, if possible (see [method can_fold])."
msgstr ""
-#: doc/classes/TextEdit.xml:151
+#: doc/classes/TextEdit.xml:119
msgid "Returns an array containing the line number of each breakpoint."
msgstr ""
-#: doc/classes/TextEdit.xml:160
-msgid "Returns the [Color] of the specified [code]keyword[/code]."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:169
+#: doc/classes/TextEdit.xml:128
msgid "Returns the text of a specific line."
msgstr ""
-#: doc/classes/TextEdit.xml:176
+#: doc/classes/TextEdit.xml:135
msgid "Returns the amount of total lines in the text."
msgstr ""
-#: doc/classes/TextEdit.xml:183
+#: doc/classes/TextEdit.xml:142
msgid ""
"Returns the [PopupMenu] of this [TextEdit]. By default, this menu is "
"displayed when right-clicking on the [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:190
+#: doc/classes/TextEdit.xml:149
msgid "Returns the selection begin column."
msgstr ""
-#: doc/classes/TextEdit.xml:197
+#: doc/classes/TextEdit.xml:156
msgid "Returns the selection begin line."
msgstr ""
-#: doc/classes/TextEdit.xml:204
+#: doc/classes/TextEdit.xml:163
msgid "Returns the text inside the selection."
msgstr ""
-#: doc/classes/TextEdit.xml:211
+#: doc/classes/TextEdit.xml:170
msgid "Returns the selection end column."
msgstr ""
-#: doc/classes/TextEdit.xml:218
+#: doc/classes/TextEdit.xml:177
msgid "Returns the selection end line."
msgstr ""
-#: doc/classes/TextEdit.xml:225
+#: doc/classes/TextEdit.xml:184
msgid "Returns a [String] text with the word under the mouse cursor location."
msgstr ""
-#: doc/classes/TextEdit.xml:234
-msgid ""
-"Returns whether the specified [code]keyword[/code] has a color set to it or "
-"not."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:243
+#: doc/classes/TextEdit.xml:193
msgid "Insert the specified text at the cursor position."
msgstr ""
-#: doc/classes/TextEdit.xml:252
+#: doc/classes/TextEdit.xml:202
msgid "Returns whether the line at the specified index is folded or not."
msgstr ""
-#: doc/classes/TextEdit.xml:261
+#: doc/classes/TextEdit.xml:211
msgid "Returns whether the line at the specified index is hidden or not."
msgstr ""
-#: doc/classes/TextEdit.xml:268
+#: doc/classes/TextEdit.xml:218
msgid "Returns [code]true[/code] if the selection is active."
msgstr ""
-#: doc/classes/TextEdit.xml:277
+#: doc/classes/TextEdit.xml:227
msgid ""
"Triggers a right-click menu action by the specified index. See [enum "
"MenuItems] for a list of available indexes."
msgstr ""
-#: doc/classes/TextEdit.xml:284
+#: doc/classes/TextEdit.xml:234
msgid "Paste the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:291
+#: doc/classes/TextEdit.xml:241
msgid "Perform redo operation."
msgstr ""
-#: doc/classes/TextEdit.xml:298
+#: doc/classes/TextEdit.xml:248
msgid ""
"Removes all the breakpoints. This will not fire the [signal "
"breakpoint_toggled] signal."
msgstr ""
-#: doc/classes/TextEdit.xml:313
+#: doc/classes/TextEdit.xml:263
msgid ""
"Perform a search inside the text. Search flags can be specified in the [enum "
"SearchFlags] enum.\n"
@@ -49651,244 +50324,268 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/TextEdit.xml:336
-msgid "Perform selection, from line/column to line/column."
+#: doc/classes/TextEdit.xml:286
+msgid ""
+"Perform selection, from line/column to line/column.\n"
+"If [member selecting_enabled] is [code]false[/code], no selection will occur."
msgstr ""
-#: doc/classes/TextEdit.xml:343
-msgid "Select all the text."
+#: doc/classes/TextEdit.xml:294
+msgid ""
+"Select all the text.\n"
+"If [member selecting_enabled] is [code]false[/code], no selection will occur."
msgstr ""
-#: doc/classes/TextEdit.xml:354
+#: doc/classes/TextEdit.xml:306
msgid "Sets the text for a specific line."
msgstr ""
-#: doc/classes/TextEdit.xml:365
+#: doc/classes/TextEdit.xml:317
msgid "If [code]true[/code], hides the line of the specified index."
msgstr ""
-#: doc/classes/TextEdit.xml:374
+#: doc/classes/TextEdit.xml:326
msgid "Toggle the folding of the code block at the given line."
msgstr ""
-#: doc/classes/TextEdit.xml:381
+#: doc/classes/TextEdit.xml:333
msgid "Perform undo operation."
msgstr ""
-#: doc/classes/TextEdit.xml:390
+#: doc/classes/TextEdit.xml:342
msgid "Unfolds the given line, if folded."
msgstr ""
-#: doc/classes/TextEdit.xml:397
+#: doc/classes/TextEdit.xml:349
msgid ""
"Unhide all lines that were previously set to hidden by [method "
"set_line_as_hidden]."
msgstr ""
-#: doc/classes/TextEdit.xml:403
+#: doc/classes/TextEdit.xml:355
msgid "If [code]true[/code], the breakpoint gutter is visible."
msgstr ""
-#: doc/classes/TextEdit.xml:412
+#: doc/classes/TextEdit.xml:364
msgid ""
"If [code]true[/code], the caret displays as a rectangle.\n"
"If [code]false[/code], the caret displays as a bar."
msgstr ""
-#: doc/classes/TextEdit.xml:416
+#: doc/classes/TextEdit.xml:368
msgid ""
"If [code]true[/code], a right-click moves the cursor at the mouse position "
"before displaying the context menu.\n"
"If [code]false[/code], the context menu disregards mouse location."
msgstr ""
-#: doc/classes/TextEdit.xml:420
+#: doc/classes/TextEdit.xml:372
msgid "If [code]true[/code], a right-click displays the context menu."
msgstr ""
-#: doc/classes/TextEdit.xml:423
+#: doc/classes/TextEdit.xml:375
msgid ""
"If [code]true[/code], the \"space\" character will have a visible "
"representation."
msgstr ""
-#: doc/classes/TextEdit.xml:426
+#: doc/classes/TextEdit.xml:378
msgid ""
"If [code]true[/code], the \"tab\" character will have a visible "
"representation."
msgstr ""
-#: doc/classes/TextEdit.xml:430
+#: doc/classes/TextEdit.xml:382
msgid ""
"If [code]true[/code], the fold gutter is visible. This enables folding "
"groups of indented lines."
msgstr ""
-#: doc/classes/TextEdit.xml:433
+#: doc/classes/TextEdit.xml:385
msgid ""
"If [code]true[/code], all lines that have been set to hidden by [method "
"set_line_as_hidden], will not be visible."
msgstr ""
-#: doc/classes/TextEdit.xml:436
+#: doc/classes/TextEdit.xml:388
msgid ""
"If [code]true[/code], all occurrences of the selected text will be "
"highlighted."
msgstr ""
-#: doc/classes/TextEdit.xml:439
+#: doc/classes/TextEdit.xml:391
msgid "If [code]true[/code], the line containing the cursor is highlighted."
msgstr ""
-#: doc/classes/TextEdit.xml:447
+#: doc/classes/TextEdit.xml:394
+msgid ""
+"If [code]true[/code], a minimap is shown, providing an outline of your "
+"source code."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:397
+msgid "The width, in pixels, of the minimap."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:401
msgid ""
"If [code]true[/code], custom [code]font_color_selected[/code] will be used "
"for selected text."
msgstr ""
-#: doc/classes/TextEdit.xml:450
+#: doc/classes/TextEdit.xml:404
msgid ""
"If [code]true[/code], read-only mode is enabled. Existing text cannot be "
"modified and new text cannot be added."
msgstr ""
-#: doc/classes/TextEdit.xml:463
+#: doc/classes/TextEdit.xml:413
msgid ""
-"If [code]true[/code], line numbers are displayed to the left of the text."
+"If [code]true[/code], text can be selected.\n"
+"If [code]false[/code], text can not be selected by the user or by the "
+"[method select] or [method select_all] methods."
msgstr ""
-#: doc/classes/TextEdit.xml:466
+#: doc/classes/TextEdit.xml:417
+#, fuzzy
msgid ""
-"If [code]true[/code], sets the [code]step[/code] of the scrollbars to "
-"[code]0.25[/code] which results in smoother scrolling."
+"If [code]true[/code], shortcut keys for context menu items are enabled, even "
+"if the context menu is disabled."
msgstr ""
+"Jeśli [code]true[/code], potomne węzły są sortowane. W innym przypadku jest "
+"wyłączone."
-#: doc/classes/TextEdit.xml:469
+#: doc/classes/TextEdit.xml:420
msgid ""
-"If [code]true[/code], any custom color properties that have been set for "
-"this [TextEdit] will be visible."
+"If [code]true[/code], line numbers are displayed to the left of the text."
msgstr ""
-#: doc/classes/TextEdit.xml:472
+#: doc/classes/TextEdit.xml:423
+msgid ""
+"If [code]true[/code], sets the [code]step[/code] of the scrollbars to "
+"[code]0.25[/code] which results in smoother scrolling."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:428
msgid "String value of the [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:475
+#: doc/classes/TextEdit.xml:431
msgid "Vertical scroll sensitivity."
msgstr ""
-#: doc/classes/TextEdit.xml:478
+#: doc/classes/TextEdit.xml:437
msgid ""
"If [code]true[/code], enables text wrapping when it goes beyond the edge of "
"what is visible."
msgstr ""
-#: doc/classes/TextEdit.xml:486
+#: doc/classes/TextEdit.xml:445
msgid "Emitted when a breakpoint is placed via the breakpoint gutter."
msgstr ""
-#: doc/classes/TextEdit.xml:491
+#: doc/classes/TextEdit.xml:450
msgid "Emitted when the cursor changes."
msgstr ""
-#: doc/classes/TextEdit.xml:500
+#: doc/classes/TextEdit.xml:459
msgid "Emitted when the info icon is clicked."
msgstr ""
-#: doc/classes/TextEdit.xml:531
+#: doc/classes/TextEdit.xml:496
msgid "Match case when searching."
msgstr ""
-#: doc/classes/TextEdit.xml:534
+#: doc/classes/TextEdit.xml:499
msgid "Match whole words when searching."
msgstr ""
-#: doc/classes/TextEdit.xml:537
+#: doc/classes/TextEdit.xml:502
msgid "Search from end to beginning."
msgstr ""
-#: doc/classes/TextEdit.xml:546
+#: doc/classes/TextEdit.xml:511
msgid ""
"Pastes the clipboard text over the selected text (or at the cursor's "
"position)."
msgstr ""
-#: doc/classes/TextEdit.xml:549
+#: doc/classes/TextEdit.xml:514
msgid "Erases the whole [TextEdit] text."
msgstr ""
-#: doc/classes/TextEdit.xml:552
+#: doc/classes/TextEdit.xml:517
msgid "Selects the whole [TextEdit] text."
msgstr ""
-#: doc/classes/TextEdit.xml:558
+#: doc/classes/TextEdit.xml:523
msgid "Redoes the previous action."
msgstr ""
-#: doc/classes/TextEdit.xml:566
+#: doc/classes/TextEdit.xml:531
msgid ""
"Sets the background [Color] of this [TextEdit]. [member syntax_highlighting] "
"has to be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:569
+#: doc/classes/TextEdit.xml:534
msgid ""
"Sets the [Color] of the bookmark marker. [member syntax_highlighting] has to "
"be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:574 doc/classes/TextEdit.xml:601
+#: doc/classes/TextEdit.xml:539 doc/classes/TextEdit.xml:566
msgid ""
"Sets the [Color] of the breakpoints. [member breakpoint_gutter] has to be "
"enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:612
+#: doc/classes/TextEdit.xml:577
msgid "Sets the default [Font]."
msgstr ""
-#: doc/classes/TextEdit.xml:615
+#: doc/classes/TextEdit.xml:580
msgid "Sets the font [Color]."
msgstr ""
-#: doc/classes/TextEdit.xml:620
+#: doc/classes/TextEdit.xml:585
msgid ""
"Sets the [Color] of the selected text. [member override_selected_font_color] "
"has to be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:625
+#: doc/classes/TextEdit.xml:588
msgid ""
"Sets the [Color] of the line numbers. [member show_line_numbers] has to be "
"enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:628
+#: doc/classes/TextEdit.xml:591
msgid "Sets the spacing between the lines."
msgstr ""
-#: doc/classes/TextEdit.xml:631
+#: doc/classes/TextEdit.xml:594
msgid "Sets the [Color] of marked text."
msgstr ""
-#: doc/classes/TextEdit.xml:636
+#: doc/classes/TextEdit.xml:597
msgid "Sets the [StyleBox] of this [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:641
+#: doc/classes/TextEdit.xml:600
msgid ""
"Sets the [StyleBox] of this [TextEdit] when [member readonly] is enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:646
+#: doc/classes/TextEdit.xml:605
msgid "Sets the highlight [Color] of text selections."
msgstr ""
-#: doc/classes/TextEdit.xml:653
+#: doc/classes/TextEdit.xml:610
msgid "Sets a custom [Texture2D] for tab text characters."
msgstr ""
-#: doc/classes/TextEdit.xml:656
+#: doc/classes/TextEdit.xml:613
msgid ""
"Sets the highlight [Color] of multiple occurrences. [member "
"highlight_all_occurrences] has to be enabled."
@@ -49966,80 +50663,80 @@ msgid ""
"the texture will not scale with the node."
msgstr ""
-#: doc/classes/TextureButton.xml:19
+#: doc/classes/TextureButton.xml:25
msgid ""
"Controls the texture's behavior when you resize the node's bounding "
"rectangle, [b]only if[/b] [member expand] is [code]true[/code]. Set it to "
"one of the [enum StretchMode] constants. See the constants to learn more."
msgstr ""
-#: doc/classes/TextureButton.xml:22
+#: doc/classes/TextureButton.xml:28
msgid ""
"Pure black and white [BitMap] image to use for click detection. On the mask, "
"white pixels represent the button's clickable area. Use it to create buttons "
"with curved shapes."
msgstr ""
-#: doc/classes/TextureButton.xml:25
+#: doc/classes/TextureButton.xml:31
msgid ""
"Texture to display when the node is disabled. See [member BaseButton."
"disabled]."
msgstr ""
-#: doc/classes/TextureButton.xml:28
+#: doc/classes/TextureButton.xml:34
msgid "Texture to display when the node has mouse or keyboard focus."
msgstr ""
-#: doc/classes/TextureButton.xml:31
+#: doc/classes/TextureButton.xml:37
msgid "Texture to display when the mouse hovers the node."
msgstr ""
-#: doc/classes/TextureButton.xml:34
+#: doc/classes/TextureButton.xml:40
msgid ""
"Texture to display by default, when the node is [b]not[/b] in the disabled, "
"focused, hover or pressed state."
msgstr ""
-#: doc/classes/TextureButton.xml:37
+#: doc/classes/TextureButton.xml:43
msgid ""
"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 "
"[member BaseButton.shortcut] key."
msgstr ""
-#: doc/classes/TextureButton.xml:42 doc/classes/TextureRect.xml:36
+#: doc/classes/TextureButton.xml:48 doc/classes/TextureRect.xml:36
msgid "Scale to fit the node's bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:45 doc/classes/TextureRect.xml:39
+#: doc/classes/TextureButton.xml:51 doc/classes/TextureRect.xml:39
msgid "Tile inside the node's bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:48 doc/classes/TextureRect.xml:42
+#: doc/classes/TextureButton.xml:54 doc/classes/TextureRect.xml:42
msgid ""
"The texture keeps its original size and stays in the bounding rectangle's "
"top-left corner."
msgstr ""
-#: doc/classes/TextureButton.xml:51 doc/classes/TextureRect.xml:45
+#: doc/classes/TextureButton.xml:57 doc/classes/TextureRect.xml:45
msgid ""
"The texture keeps its original size and stays centered in the node's "
"bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:54 doc/classes/TextureRect.xml:48
+#: doc/classes/TextureButton.xml:60 doc/classes/TextureRect.xml:48
msgid ""
"Scale the texture to fit the node's bounding rectangle, but maintain the "
"texture's aspect ratio."
msgstr ""
-#: doc/classes/TextureButton.xml:57
+#: doc/classes/TextureButton.xml:63
msgid ""
"Scale the texture to fit the node's bounding rectangle, center it, and "
"maintain its aspect ratio."
msgstr ""
-#: doc/classes/TextureButton.xml:60 doc/classes/TextureRect.xml:54
+#: doc/classes/TextureButton.xml:66 doc/classes/TextureRect.xml:54
msgid ""
"Scale the texture so that the shorter side fits the bounding rectangle. The "
"other side clips to the node's limits."
@@ -50489,19 +51186,25 @@ msgid ""
"advised if working with shared objects."
msgstr ""
-#: doc/classes/Thread.xml:17
+#: doc/classes/Thread.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/threads/thread_safe_apis."
+"html"
+msgstr ""
+
+#: doc/classes/Thread.xml:18
msgid ""
"Returns the current [Thread]'s ID, uniquely identifying it among all threads."
msgstr ""
-#: doc/classes/Thread.xml:24
+#: doc/classes/Thread.xml:25
msgid ""
"Returns [code]true[/code] if this [Thread] is currently active. An active "
"[Thread] cannot start work on a new method but can be joined with [method "
"wait_to_finish]."
msgstr ""
-#: doc/classes/Thread.xml:39
+#: doc/classes/Thread.xml:40
msgid ""
"Starts a new [Thread] that runs [code]method[/code] on object "
"[code]instance[/code] with [code]userdata[/code] passed as an argument. Even "
@@ -50511,21 +51214,21 @@ msgid ""
"Returns [constant OK] on success, or [constant ERR_CANT_CREATE] on failure."
msgstr ""
-#: doc/classes/Thread.xml:47
+#: doc/classes/Thread.xml:48
msgid ""
"Joins the [Thread] and waits for it to finish. Returns what the method "
"called returned."
msgstr ""
-#: doc/classes/Thread.xml:53
+#: doc/classes/Thread.xml:54
msgid "A thread running with lower priority than normally."
msgstr ""
-#: doc/classes/Thread.xml:56
+#: doc/classes/Thread.xml:57
msgid "A thread with a standard priority."
msgstr ""
-#: doc/classes/Thread.xml:59
+#: doc/classes/Thread.xml:60
msgid "A thread running with higher priority than normally."
msgstr ""
@@ -51060,50 +51763,61 @@ msgid "Returns the [Transform2D] of a tile's shape."
msgstr ""
#: doc/classes/TileSet.xml:481
-msgid "Returns an array of the tile's shapes."
+msgid ""
+"Returns an array of dictionaries describing the tile's shapes.\n"
+"[b]Dictionary structure in the array returned by this method:[/b]\n"
+"[codeblock]\n"
+"{\n"
+" \"autotile_coord\": Vector2,\n"
+" \"one_way\": bool,\n"
+" \"one_way_margin\": int,\n"
+" \"shape\": CollisionShape2D,\n"
+" \"shape_transform\": Transform2D,\n"
+"}\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/TileSet.xml:490
+#: doc/classes/TileSet.xml:500
msgid "Returns the tile's texture."
msgstr ""
-#: doc/classes/TileSet.xml:499
+#: doc/classes/TileSet.xml:509
msgid "Returns the texture offset of the tile."
msgstr ""
-#: doc/classes/TileSet.xml:508
+#: doc/classes/TileSet.xml:518
msgid "Returns the tile's [enum TileMode]."
msgstr ""
-#: doc/classes/TileSet.xml:517
+#: doc/classes/TileSet.xml:527
msgid "Returns the tile's Z index (drawing layer)."
msgstr ""
-#: doc/classes/TileSet.xml:528
+#: doc/classes/TileSet.xml:538
msgid "Sets a light occluder for the tile."
msgstr ""
-#: doc/classes/TileSet.xml:539
+#: doc/classes/TileSet.xml:549
msgid "Sets the tile's material."
msgstr ""
-#: doc/classes/TileSet.xml:550
+#: doc/classes/TileSet.xml:560
msgid "Sets the tile's modulation color."
msgstr ""
-#: doc/classes/TileSet.xml:561
+#: doc/classes/TileSet.xml:571
msgid "Sets the tile's name."
msgstr ""
-#: doc/classes/TileSet.xml:572
+#: doc/classes/TileSet.xml:582
msgid "Sets the tile's navigation polygon."
msgstr ""
-#: doc/classes/TileSet.xml:583
+#: doc/classes/TileSet.xml:593
msgid "Sets an offset for the tile's navigation polygon."
msgstr ""
-#: doc/classes/TileSet.xml:594
+#: doc/classes/TileSet.xml:604
msgid ""
"Sets the tile's normal map texture.\n"
"[b]Note:[/b] Godot expects the normal map to use X+, Y-, and Z+ coordinates. "
@@ -51112,48 +51826,48 @@ msgid ""
"a comparison of normal map coordinates expected by popular engines."
msgstr ""
-#: doc/classes/TileSet.xml:606
+#: doc/classes/TileSet.xml:616
msgid "Sets an offset for the tile's light occluder."
msgstr ""
-#: doc/classes/TileSet.xml:617
+#: doc/classes/TileSet.xml:627
msgid ""
"Sets the tile's sub-region in the texture. This is common in texture atlases."
msgstr ""
-#: doc/classes/TileSet.xml:630
+#: doc/classes/TileSet.xml:640
msgid "Sets a shape for the tile, enabling collision."
msgstr ""
-#: doc/classes/TileSet.xml:643
+#: doc/classes/TileSet.xml:653
msgid "Sets the offset of a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:656
+#: doc/classes/TileSet.xml:666
msgid "Enables one-way collision on a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:681
+#: doc/classes/TileSet.xml:691
msgid "Sets a [Transform2D] on a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:692
+#: doc/classes/TileSet.xml:702
msgid "Sets an array of shapes for the tile, enabling collision."
msgstr ""
-#: doc/classes/TileSet.xml:703
+#: doc/classes/TileSet.xml:713
msgid "Sets the tile's texture."
msgstr ""
-#: doc/classes/TileSet.xml:714
+#: doc/classes/TileSet.xml:724
msgid "Sets the tile's texture offset."
msgstr ""
-#: doc/classes/TileSet.xml:725
+#: doc/classes/TileSet.xml:735
msgid "Sets the tile's [enum TileMode]."
msgstr ""
-#: doc/classes/TileSet.xml:736
+#: doc/classes/TileSet.xml:746
msgid "Sets the tile's drawing index."
msgstr ""
@@ -51164,14 +51878,16 @@ msgstr ""
#: doc/classes/Timer.xml:7
msgid ""
"Counts down a specified interval and emits a signal on reaching 0. Can be "
-"set to repeat or \"one-shot\" mode."
+"set to repeat or \"one-shot\" mode.\n"
+"[b]Note:[/b] To create an one-shot timer without instantiating a node, use "
+"[method SceneTree.create_timer]."
msgstr ""
-#: doc/classes/Timer.xml:16
+#: doc/classes/Timer.xml:17
msgid "Returns [code]true[/code] if the timer is stopped."
msgstr ""
-#: doc/classes/Timer.xml:25
+#: doc/classes/Timer.xml:26
msgid ""
"Starts the timer. Sets [code]wait_time[/code] to [code]time_sec[/code] if "
"[code]time_sec > 0[/code]. This also resets the remaining time to "
@@ -51179,11 +51895,11 @@ msgid ""
"[b]Note:[/b] this method will not resume a paused timer. See [member paused]."
msgstr ""
-#: doc/classes/Timer.xml:33
+#: doc/classes/Timer.xml:34
msgid "Stops the timer."
msgstr ""
-#: doc/classes/Timer.xml:39
+#: doc/classes/Timer.xml:40
msgid ""
"If [code]true[/code], the timer will automatically start when entering the "
"scene tree.\n"
@@ -51191,40 +51907,40 @@ msgid ""
"the timer enters the scene tree and starts."
msgstr ""
-#: doc/classes/Timer.xml:43
+#: doc/classes/Timer.xml:44
msgid ""
"If [code]true[/code], the timer will stop when reaching 0. If [code]false[/"
"code], it will restart."
msgstr ""
-#: doc/classes/Timer.xml:46
+#: doc/classes/Timer.xml:47
msgid ""
"If [code]true[/code], the timer is paused and will not process until it is "
"unpaused again, even if [method start] is called."
msgstr ""
-#: doc/classes/Timer.xml:49
+#: doc/classes/Timer.xml:50
msgid "Processing mode. See [enum TimerProcessMode]."
msgstr ""
-#: doc/classes/Timer.xml:52
+#: doc/classes/Timer.xml:53
msgid ""
"The timer's remaining time in seconds. Returns 0 if the timer is inactive.\n"
"[b]Note:[/b] You cannot set this value. To change the timer's remaining "
"time, use [method start]."
msgstr ""
-#: doc/classes/Timer.xml:56
+#: doc/classes/Timer.xml:57
msgid "Wait time in seconds."
msgstr ""
-#: doc/classes/Timer.xml:68
+#: doc/classes/Timer.xml:69
msgid ""
"Update the timer during the physics step at each frame (fixed framerate "
"processing)."
msgstr ""
-#: doc/classes/Timer.xml:71
+#: doc/classes/Timer.xml:72
msgid "Update the timer during the idle time at each frame."
msgstr ""
@@ -51303,60 +52019,66 @@ msgstr ""
#: doc/classes/Transform.xml:7
msgid ""
-"Represents one or many transformations in 3D space such as translation, "
-"rotation, or scaling. It consists of a [member basis] and an [member "
-"origin]. It is similar to a 3×4 matrix."
+"3×4 matrix (3 rows, 4 columns) used for 3D linear transformations. It can "
+"represent transformations such as translation, rotation, or scaling. It "
+"consists of a [member basis] (first 3 columns) and a [Vector3] for the "
+"[member origin] (last column).\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
msgstr ""
-#: doc/classes/Transform.xml:26
+#: doc/classes/Transform.xml:28
msgid ""
-"Constructs the Transform from four [Vector3]. Each axis corresponds to local "
-"basis vectors (some of which may be scaled)."
+"Constructs a Transform from four [Vector3] values (matrix columns). Each "
+"axis corresponds to local basis vectors (some of which may be scaled)."
msgstr ""
-#: doc/classes/Transform.xml:37
-msgid "Constructs the Transform from a [Basis] and [Vector3]."
+#: doc/classes/Transform.xml:39
+msgid "Constructs a Transform from a [Basis] and [Vector3]."
msgstr ""
-#: doc/classes/Transform.xml:46
-msgid "Constructs the Transform from a [Transform2D]."
+#: doc/classes/Transform.xml:48
+msgid "Constructs a Transform from a [Transform2D]."
msgstr ""
-#: doc/classes/Transform.xml:55
+#: doc/classes/Transform.xml:57
msgid ""
-"Constructs the Transform from a [Quat]. The origin will be Vector3(0, 0, 0)."
+"Constructs a Transform from a [Quat]. The origin will be [code]Vector3(0, 0, "
+"0)[/code]."
msgstr ""
-#: doc/classes/Transform.xml:64
+#: doc/classes/Transform.xml:66
msgid ""
"Constructs the Transform from a [Basis]. The origin will be Vector3(0, 0, 0)."
msgstr ""
-#: doc/classes/Transform.xml:71
+#: doc/classes/Transform.xml:73 doc/classes/Transform2D.xml:51
msgid ""
"Returns the inverse of the transform, under the assumption that the "
"transformation is composed of rotation, scaling and translation."
msgstr ""
-#: doc/classes/Transform.xml:82
-msgid "Interpolates the transform to other Transform by weight amount (0-1)."
+#: doc/classes/Transform.xml:84
+msgid ""
+"Interpolates the transform to other Transform by weight amount (on the range "
+"of 0.0 to 1.0)."
msgstr ""
-#: doc/classes/Transform.xml:89 doc/classes/Transform2D.xml:106
+#: doc/classes/Transform.xml:91
msgid ""
"Returns the inverse of the transform, under the assumption that the "
"transformation is composed of rotation and translation (no scaling, use "
"affine_inverse for transforms with scaling)."
msgstr ""
-#: doc/classes/Transform.xml:98 doc/classes/Transform2D.xml:115
+#: doc/classes/Transform.xml:100 doc/classes/Transform2D.xml:119
msgid ""
"Returns [code]true[/code] if this transform and [code]transform[/code] are "
"approximately equal, by calling [code]is_equal_approx[/code] on each "
"component."
msgstr ""
-#: doc/classes/Transform.xml:109
+#: doc/classes/Transform.xml:111
msgid ""
"Returns a copy of the transform rotated such that its -Z axis points towards "
"the [code]target[/code] position.\n"
@@ -51366,25 +52088,25 @@ msgid ""
"Operations take place in global space."
msgstr ""
-#: doc/classes/Transform.xml:118 doc/classes/Transform2D.xml:122
+#: doc/classes/Transform.xml:120
msgid ""
"Returns the transform with the basis orthogonal (90 degrees), and normalized "
"axis vectors."
msgstr ""
-#: doc/classes/Transform.xml:129
+#: doc/classes/Transform.xml:131
msgid ""
"Rotates the transform around the given axis by the given angle (in radians), "
"using matrix multiplication. The axis must be a normalized vector."
msgstr ""
-#: doc/classes/Transform.xml:138
+#: doc/classes/Transform.xml:140
msgid ""
"Scales basis and origin of the transform by the given scale factor, using "
"matrix multiplication."
msgstr ""
-#: doc/classes/Transform.xml:147 doc/classes/Transform2D.xml:149
+#: doc/classes/Transform.xml:149 doc/classes/Transform2D.xml:153
msgid ""
"Translates the transform by the given offset, relative to the transform's "
"basis vectors.\n"
@@ -51392,152 +52114,162 @@ msgid ""
"multiplication."
msgstr ""
-#: doc/classes/Transform.xml:157
+#: doc/classes/Transform.xml:159
msgid ""
"Transforms the given [Vector3], [Plane], [AABB], or [PackedVector3Array] by "
"this transform."
msgstr ""
-#: doc/classes/Transform.xml:166
+#: doc/classes/Transform.xml:168
msgid ""
"Inverse-transforms the given [Vector3], [Plane], [AABB], or "
"[PackedVector3Array] by this transform."
msgstr ""
-#: doc/classes/Transform.xml:172
+#: doc/classes/Transform.xml:174
msgid ""
"The basis is a matrix containing 3 [Vector3] as its columns: X axis, Y axis, "
"and Z axis. These vectors can be interpreted as the basis vectors of local "
"coordinate system traveling with the object."
msgstr ""
-#: doc/classes/Transform.xml:175
-msgid "The translation offset of the transform."
+#: doc/classes/Transform.xml:177
+msgid ""
+"The translation offset of the transform (column 3, the fourth column). "
+"Equivalent to array index [code]3[/code]."
msgstr ""
-#: doc/classes/Transform.xml:180
+#: doc/classes/Transform.xml:182
msgid ""
"[Transform] with no translation, rotation or scaling applied. When applied "
"to other data structures, [constant IDENTITY] performs no transformation."
msgstr ""
-#: doc/classes/Transform.xml:183
+#: doc/classes/Transform.xml:185
msgid "[Transform] with mirroring applied perpendicular to the YZ plane."
msgstr ""
-#: doc/classes/Transform.xml:186
+#: doc/classes/Transform.xml:188
msgid "[Transform] with mirroring applied perpendicular to the XZ plane."
msgstr ""
-#: doc/classes/Transform.xml:189
+#: doc/classes/Transform.xml:191
msgid "[Transform] with mirroring applied perpendicular to the XY plane."
msgstr ""
#: doc/classes/Transform2D.xml:4
-msgid "2D transformation (3×2 matrix)."
+msgid "2D transformation (2×3 matrix)."
msgstr ""
#: doc/classes/Transform2D.xml:7
msgid ""
-"Represents one or many transformations in 2D space such as translation, "
-"rotation, or scaling. It consists of two [member x] and [member y] "
-"[Vector2]s and an [member origin]. It is similar to a 3×2 matrix."
+"2×3 matrix (2 rows, 3 columns) used for 2D linear transformations. It can "
+"represent transformations such as translation, rotation, or scaling. It "
+"consists of a three [Vector2] values: [member x], [member y], and the "
+"[member origin].\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
msgstr ""
-#: doc/classes/Transform2D.xml:18
+#: doc/classes/Transform2D.xml:20
msgid "Constructs the transform from a 3D [Transform]."
msgstr ""
-#: doc/classes/Transform2D.xml:31
+#: doc/classes/Transform2D.xml:33
msgid ""
-"Constructs the transform from 3 [Vector2]s representing x, y, and origin."
+"Constructs the transform from 3 [Vector2] values representing [member x], "
+"[member y], and the [member origin] (the three column vectors)."
msgstr ""
-#: doc/classes/Transform2D.xml:42
+#: doc/classes/Transform2D.xml:44
msgid "Constructs the transform from a given angle (in radians) and position."
msgstr ""
-#: doc/classes/Transform2D.xml:58
-msgid "Transforms the given vector by this transform's basis (no translation)."
+#: doc/classes/Transform2D.xml:60
+msgid ""
+"Returns a vector transformed (multiplied) by the basis matrix.\n"
+"This method does not account for translation (the origin vector)."
msgstr ""
-#: doc/classes/Transform2D.xml:67
+#: doc/classes/Transform2D.xml:70
msgid ""
-"Inverse-transforms the given vector by this transform's basis (no "
-"translation)."
+"Returns a vector transformed (multiplied) by the inverse basis matrix.\n"
+"This method does not account for translation (the origin vector)."
msgstr ""
-#: doc/classes/Transform2D.xml:74
+#: doc/classes/Transform2D.xml:78
msgid "Returns the transform's origin (translation)."
msgstr ""
-#: doc/classes/Transform2D.xml:81
+#: doc/classes/Transform2D.xml:85
msgid "Returns the transform's rotation (in radians)."
msgstr ""
-#: doc/classes/Transform2D.xml:88
+#: doc/classes/Transform2D.xml:92
msgid "Returns the scale."
msgstr ""
-#: doc/classes/Transform2D.xml:99
+#: doc/classes/Transform2D.xml:103
msgid ""
"Returns a transform interpolated between this transform and another by a "
-"given weight (0-1)."
+"given weight (on the range of 0.0 to 1.0)."
msgstr ""
-#: doc/classes/Transform2D.xml:131
+#: doc/classes/Transform2D.xml:110
+msgid ""
+"Returns the inverse of the transform, under the assumption that the "
+"transformation is composed of rotation and translation (no scaling, use "
+"[method affine_inverse] for transforms with scaling)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:126
+msgid ""
+"Returns the transform with the basis orthogonal (90 degrees), and normalized "
+"axis vectors (scale of 1 or -1)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:135
msgid ""
"Rotates the transform by the given angle (in radians), using matrix "
"multiplication."
msgstr ""
-#: doc/classes/Transform2D.xml:140
+#: doc/classes/Transform2D.xml:144
msgid ""
"Scales the transform by the given scale factor, using matrix multiplication."
msgstr ""
-#: doc/classes/Transform2D.xml:159
+#: doc/classes/Transform2D.xml:163
msgid ""
"Transforms the given [Vector2], [Rect2], or [PackedVector2Array] by this "
"transform."
msgstr ""
-#: doc/classes/Transform2D.xml:168
+#: doc/classes/Transform2D.xml:172
msgid ""
"Inverse-transforms the given [Vector2], [Rect2], or [PackedVector2Array] by "
"this transform."
msgstr ""
-#: doc/classes/Transform2D.xml:174
-msgid "The transform's translation offset."
-msgstr ""
-
-#: doc/classes/Transform2D.xml:177
-msgid ""
-"The X axis of 2×2 basis matrix containing 2 [Vector2]s as its columns: X "
-"axis and Y axis. These vectors can be interpreted as the basis vectors of "
-"local coordinate system traveling with the object."
-msgstr ""
-
-#: doc/classes/Transform2D.xml:180
+#: doc/classes/Transform2D.xml:178
msgid ""
-"The Y axis of 2×2 basis matrix containing 2 [Vector2]s as its columns: X "
-"axis and Y axis. These vectors can be interpreted as the basis vectors of "
-"local coordinate system traveling with the object."
+"The origin vector (column 2, the third column). Equivalent to array index "
+"[code]2[/code]. The origin vector represents translation."
msgstr ""
-#: doc/classes/Transform2D.xml:185
+#: doc/classes/Transform2D.xml:189
msgid ""
-"[Transform2D] with no translation, rotation or scaling applied. When applied "
-"to other data structures, [constant IDENTITY] performs no transformation."
+"The identity [Transform2D] with no translation, rotation or scaling applied. "
+"When applied to other data structures, [constant IDENTITY] performs no "
+"transformation."
msgstr ""
-#: doc/classes/Transform2D.xml:188
-msgid "[Transform2D] with mirroring applied parallel to the X axis."
+#: doc/classes/Transform2D.xml:192
+msgid "The [Transform2D] that will flip something along the X axis."
msgstr ""
-#: doc/classes/Transform2D.xml:191
-msgid "[Transform2D] with mirroring applied parallel to the Y axis."
+#: doc/classes/Transform2D.xml:195
+msgid "The [Transform2D] that will flip something along the Y axis."
msgstr ""
#: doc/classes/Translation.xml:4
@@ -52201,7 +52933,8 @@ msgid "Returns the column's cell mode."
msgstr ""
#: doc/classes/TreeItem.xml:121
-msgid "Returns the TreeItem's child items."
+msgid ""
+"Returns the TreeItem's first child item or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:130
@@ -52233,28 +52966,32 @@ msgid "Returns the icon [Texture2D] region as [Rect2]."
msgstr ""
#: doc/classes/TreeItem.xml:199
-msgid "Returns the next TreeItem in the tree."
+msgid ""
+"Returns the next TreeItem in the tree or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:208
msgid ""
-"Returns the next visible TreeItem in the tree.\n"
+"Returns the next visible TreeItem in the tree or a null object if there is "
+"none.\n"
"If [code]wrap[/code] is enabled, the method will wrap around to the first "
"visible element in the tree when called on the last visible element, "
"otherwise it returns [code]null[/code]."
msgstr ""
#: doc/classes/TreeItem.xml:216
-msgid "Returns the parent TreeItem."
+msgid "Returns the parent TreeItem or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:223
-msgid "Returns the previous TreeItem in the tree."
+msgid ""
+"Returns the previous TreeItem in the tree or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:232
msgid ""
-"Returns the previous visible TreeItem in the tree.\n"
+"Returns the previous visible TreeItem in the tree or a null object if there "
+"is none.\n"
"If [code]wrap[/code] is enabled, the method will wrap around to the last "
"visible element in the tree when called on the first visible element, "
"otherwise it returns [code]null[/code]."
@@ -52764,6 +53501,10 @@ msgid ""
"A simple server that opens a UDP socket and returns connected "
"[PacketPeerUDP] upon receiving new packets. See also [method PacketPeerUDP."
"connect_to_host].\n"
+"After starting the server ([method listen]), you will need to [method poll] "
+"it at regular intervals (e.g. inside [method Node._process]) for it to "
+"process new packets, delivering them to the appropriate [PacketPeerUDP], and "
+"taking new connections.\n"
"Below a small example of how it can be used:\n"
"[codeblock]\n"
"# server.gd\n"
@@ -52776,6 +53517,7 @@ msgid ""
" server.listen(4242)\n"
"\n"
"func _process(delta):\n"
+" server.poll() # Important!\n"
" if server.is_connection_available():\n"
" var peer : PacketPeerUDP = server.take_connection()\n"
" var pkt = peer.get_packet()\n"
@@ -52811,35 +53553,55 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/UDPServer.xml:60
+#: doc/classes/UDPServer.xml:62
msgid ""
-"Returns [code]true[/code] if a packet with a new address/port combination is "
-"received on the socket."
+"Returns [code]true[/code] if a packet with a new address/port combination "
+"was received on the socket."
msgstr ""
-#: doc/classes/UDPServer.xml:67
+#: doc/classes/UDPServer.xml:69
msgid ""
"Returns [code]true[/code] if the socket is open and listening on a port."
msgstr ""
-#: doc/classes/UDPServer.xml:78
+#: doc/classes/UDPServer.xml:80
msgid ""
"Starts the server by opening a UDP socket listening on the given port. You "
"can optionally specify a [code]bind_address[/code] to only listen for "
"packets sent to that address. See also [method PacketPeerUDP.listen]."
msgstr ""
-#: doc/classes/UDPServer.xml:85
+#: doc/classes/UDPServer.xml:87
+msgid ""
+"Call this method at regular intervals (e.g. inside [method Node._process]) "
+"to process new packets. And packet from known address/port pair will be "
+"delivered to the appropriate [PacketPeerUDP], any packet received from an "
+"unknown address/port pair will be added as a pending connection (see [method "
+"is_connection_available], [method take_connection]). The maximum number of "
+"pending connection is defined via [member max_pending_connections]."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:94
msgid ""
-"Stops the server, closing the UDP socket if open. Will not disconnect any "
-"connected [PacketPeerUDP]."
+"Stops the server, closing the UDP socket if open. Will close all connected "
+"[PacketPeerUDP] accepted via [method take_connection] (remote peers will not "
+"be notified)."
msgstr ""
-#: doc/classes/UDPServer.xml:92
+#: doc/classes/UDPServer.xml:101
msgid ""
-"Returns a [PacketPeerUDP] connected to the address/port combination of the "
-"first packet in queue. Will return [code]null[/code] if no packet is in "
-"queue. See also [method PacketPeerUDP.connect_to_host]."
+"Returns the first pending connection (connected to the appropriate address/"
+"port). Will return [code]null[/code] if no new connection is available. See "
+"also [method is_connection_available], [method PacketPeerUDP."
+"connect_to_host]."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:107
+msgid ""
+"Define the maximum number of pending connections, during [method poll], any "
+"new pending connection exceeding that value will be automatically dropped. "
+"Setting this value to [code]0[/code] effectively prevents any new pending "
+"connection to be accepted (e.g. when all your players have connected)."
msgstr ""
#: doc/classes/UndoRedo.xml:4
@@ -53480,24 +54242,27 @@ msgstr ""
#: doc/classes/Vector2.xml:46
msgid ""
-"Returns the vector's angle in radians with respect to the X axis, or [code]"
-"(1, 0)[/code] vector.\n"
+"Returns this vector's angle with respect to the X axis, or [code](1, 0)[/"
+"code] vector, in radians.\n"
"Equivalent to the result of [method @GDScript.atan2] when called with the "
-"vector's [member x] and [member y] as parameters: [code]atan2(x, y)[/code]."
+"vector's [member y] and [member x] as parameters: [code]atan2(y, x)[/code]."
msgstr ""
#: doc/classes/Vector2.xml:56
-msgid "Returns the angle in radians between the two vectors."
-msgstr ""
+#, fuzzy
+msgid "Returns the angle to the given vector, in radians."
+msgstr "Zwraca resztę z dwóch wektorów."
#: doc/classes/Vector2.xml:65
msgid ""
-"Returns the angle in radians between the line connecting the two points and "
-"the X coordinate."
+"Returns the angle between the line connecting the two points and the X axis, "
+"in radians."
msgstr ""
-#: doc/classes/Vector2.xml:72 doc/classes/Vector2i.xml:46
-msgid "Returns the ratio of [member x] to [member y]."
+#: doc/classes/Vector2.xml:72
+msgid ""
+"Returns the aspect ratio of this vector, the ratio of [member x] to [member "
+"y]."
msgstr ""
#: doc/classes/Vector2.xml:81 doc/classes/Vector3.xml:59
@@ -53506,24 +54271,28 @@ msgid ""
msgstr ""
#: doc/classes/Vector2.xml:88
-msgid "Returns the vector with all components rounded up."
+msgid ""
+"Returns the vector with all components rounded up (towards positive "
+"infinity)."
msgstr ""
#: doc/classes/Vector2.xml:97
-msgid "Returns the vector with a maximum length."
+msgid ""
+"Returns the vector with a maximum length by limiting its length to "
+"[code]length[/code]."
msgstr ""
#: doc/classes/Vector2.xml:106
-msgid ""
-"Returns the 2-dimensional analog of the cross product with the given vector."
-msgstr ""
+#, fuzzy
+msgid "Returns the cross product of this vector and [code]with[/code]."
+msgstr "Liczy iloczyn wektorowy dwóch wektorów."
#: doc/classes/Vector2.xml:121
msgid ""
"Cubically interpolates between this vector and [code]b[/code] using "
"[code]pre_a[/code] and [code]post_b[/code] as handles, and returns the "
-"result at position [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation."
+"result at position [code]t[/code]. [code]t[/code] is on the range of 0.0 to "
+"1.0, representing the amount of interpolation."
msgstr ""
#: doc/classes/Vector2.xml:130 doc/classes/Vector3.xml:99
@@ -53531,182 +54300,199 @@ msgid ""
"Returns the normalized vector pointing from this vector to [code]b[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:139
+#: doc/classes/Vector2.xml:139 doc/classes/Vector3.xml:108
msgid ""
-"Returns the squared distance to vector [code]b[/code]. Prefer this function "
-"over [method distance_to] if you need to sort vectors or need the squared "
-"distance for some formula."
+"Returns the squared distance between this vector and [code]b[/code].\n"
+"This method runs faster than [method distance_to], so prefer it if you need "
+"to compare vectors or need the squared distance for some formula."
msgstr ""
-#: doc/classes/Vector2.xml:148
-msgid "Returns the distance to vector [code]b[/code]."
+#: doc/classes/Vector2.xml:149
+msgid "Returns the distance between this vector and [code]to[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:157
-msgid "Returns the dot product with vector [code]b[/code]."
+#: doc/classes/Vector2.xml:158
+msgid ""
+"Returns the dot product of this vector and [code]with[/code]. This can be "
+"used to compare the angle between two vectors. For example, this can be used "
+"to determine whether an enemy is facing the player.\n"
+"The dot product will be [code]0[/code] for a straight angle (90 degrees), "
+"greater than 0 for angles narrower than 90 degrees and lower than 0 for "
+"angles wider than 90 degrees.\n"
+"When using unit (normalized) vectors, the result will always be between "
+"[code]-1.0[/code] (180 degree angle) when the vectors are facing opposite "
+"directions, and [code]1.0[/code] (0 degree angle) when the vectors are "
+"aligned.\n"
+"[b]Note:[/b] [code]a.dot(b)[/code] is equivalent to [code]b.dot(a)[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:164
-msgid "Returns the vector with all components rounded down."
+#: doc/classes/Vector2.xml:168
+msgid ""
+"Returns the vector with all components rounded down (towards negative "
+"infinity)."
msgstr ""
-#: doc/classes/Vector2.xml:173 doc/classes/Vector3.xml:149
+#: doc/classes/Vector2.xml:177 doc/classes/Vector3.xml:153
msgid ""
"Returns [code]true[/code] if this vector and [code]v[/code] are "
"approximately equal, by running [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/Vector2.xml:180 doc/classes/Vector3.xml:156
-msgid "Returns [code]true[/code] if the vector is normalized."
+#: doc/classes/Vector2.xml:184 doc/classes/Vector3.xml:160
+msgid ""
+"Returns [code]true[/code] if the vector is normalized, and false otherwise."
msgstr ""
-#: doc/classes/Vector2.xml:187 doc/classes/Vector3.xml:163
-msgid "Returns the vector's length."
-msgstr ""
+#: doc/classes/Vector2.xml:191 doc/classes/Vector3.xml:167
+#, fuzzy
+msgid "Returns the length (magnitude) of this vector."
+msgstr "Zwraca resztę z dwóch wektorów."
-#: doc/classes/Vector2.xml:194
+#: doc/classes/Vector2.xml:198 doc/classes/Vector3.xml:174
msgid ""
-"Returns the vector's length squared. Prefer this method over [method length] "
-"if you need to sort vectors or need the squared length for some formula."
+"Returns the squared length (squared magnitude) of this vector.\n"
+"This method runs faster than [method length], so prefer it if you need to "
+"compare vectors or need the squared distance for some formula."
msgstr ""
-#: doc/classes/Vector2.xml:205
+#: doc/classes/Vector2.xml:210 doc/classes/Vector3.xml:186
msgid ""
"Returns the result of the linear interpolation between this vector and "
-"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation."
+"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is on the range of "
+"0.0 to 1.0, representing the amount of interpolation."
msgstr ""
-#: doc/classes/Vector2.xml:216 doc/classes/Vector3.xml:206
+#: doc/classes/Vector2.xml:221
msgid ""
"Moves the vector toward [code]to[/code] by the fixed [code]delta[/code] "
"amount."
msgstr ""
-#: doc/classes/Vector2.xml:223 doc/classes/Vector3.xml:213
+#: doc/classes/Vector2.xml:228 doc/classes/Vector3.xml:218
msgid ""
"Returns the vector scaled to unit length. Equivalent to [code]v / v.length()"
"[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:232 doc/classes/Vector3.xml:231
+#: doc/classes/Vector2.xml:237 doc/classes/Vector3.xml:236
msgid ""
-"Returns a vector composed of the [code]fposmod[/code] of this vector's "
+"Returns a vector composed of the [method @GDScript.fposmod] of this vector's "
"components and [code]mod[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:241 doc/classes/Vector3.xml:240
+#: doc/classes/Vector2.xml:246 doc/classes/Vector3.xml:245
msgid ""
-"Returns a vector composed of the [code]fposmod[/code] of this vector's "
+"Returns a vector composed of the [method @GDScript.fposmod] of this vector's "
"components and [code]modv[/code]'s components."
msgstr ""
-#: doc/classes/Vector2.xml:250 doc/classes/Vector3.xml:249
+#: doc/classes/Vector2.xml:255
msgid "Returns the vector projected onto the vector [code]b[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:259 doc/classes/Vector3.xml:258
+#: doc/classes/Vector2.xml:264
msgid "Returns the vector reflected from a plane defined by the given normal."
msgstr ""
-#: doc/classes/Vector2.xml:268
+#: doc/classes/Vector2.xml:273
msgid ""
"Returns the vector rotated by [code]phi[/code] radians. See also [method "
"@GDScript.deg2rad]."
msgstr ""
-#: doc/classes/Vector2.xml:275 doc/classes/Vector3.xml:276
+#: doc/classes/Vector2.xml:280
msgid ""
"Returns the vector with all components rounded to the nearest integer, with "
"halfway cases rounded away from zero."
msgstr ""
-#: doc/classes/Vector2.xml:282 doc/classes/Vector2i.xml:53
-#: doc/classes/Vector3.xml:283 doc/classes/Vector3i.xml:55
+#: doc/classes/Vector2.xml:287
msgid ""
"Returns the vector with each component set to one or negative one, depending "
-"on the signs of the components."
+"on the signs of the components, or zero if the component is zero, by calling "
+"[method @GDScript.sign] on each component."
msgstr ""
-#: doc/classes/Vector2.xml:293 doc/classes/Vector3.xml:294
+#: doc/classes/Vector2.xml:298 doc/classes/Vector3.xml:299
msgid ""
"Returns the result of spherical linear interpolation between this vector and "
-"[code]b[/code], by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation.\n"
+"[code]b[/code], by amount [code]t[/code]. [code]t[/code] is on the range of "
+"0.0 to 1.0, representing the amount of interpolation.\n"
"[b]Note:[/b] Both vectors must be normalized."
msgstr ""
-#: doc/classes/Vector2.xml:303 doc/classes/Vector3.xml:304
-msgid ""
-"Returns the component of the vector along a plane defined by the given "
-"normal."
+#: doc/classes/Vector2.xml:308 doc/classes/Vector3.xml:309
+msgid "Returns this vector slid along a plane defined by the given normal."
msgstr ""
-#: doc/classes/Vector2.xml:312 doc/classes/Vector3.xml:313
-msgid "Returns the vector snapped to a grid with the given size."
+#: doc/classes/Vector2.xml:317 doc/classes/Vector3.xml:318
+msgid ""
+"Returns this vector with each component snapped to the nearest multiple of "
+"[code]step[/code]. This can also be used to round to an arbitrary number of "
+"decimals."
msgstr ""
-#: doc/classes/Vector2.xml:319
-msgid "Returns a perpendicular vector."
+#: doc/classes/Vector2.xml:324
+msgid ""
+"Returns a perpendicular vector rotated 90 degrees counter-clockwise compared "
+"to the original, with the same length."
msgstr ""
-#: doc/classes/Vector2.xml:325 doc/classes/Vector2i.xml:59
-#: doc/classes/Vector3.xml:326 doc/classes/Vector3i.xml:61
+#: doc/classes/Vector2.xml:330 doc/classes/Vector2i.xml:59
+#: doc/classes/Vector3.xml:332 doc/classes/Vector3i.xml:61
msgid ""
"The vector's X component. Also accessible by using the index position [code]"
"[0][/code]."
msgstr ""
-#: doc/classes/Vector2.xml:328 doc/classes/Vector2i.xml:62
-#: doc/classes/Vector3.xml:329 doc/classes/Vector3i.xml:64
+#: doc/classes/Vector2.xml:333 doc/classes/Vector2i.xml:62
+#: doc/classes/Vector3.xml:335 doc/classes/Vector3i.xml:64
msgid ""
"The vector's Y component. Also accessible by using the index position [code]"
"[1][/code]."
msgstr ""
-#: doc/classes/Vector2.xml:333 doc/classes/Vector2i.xml:67
+#: doc/classes/Vector2.xml:338 doc/classes/Vector2i.xml:67
#: doc/classes/Vector3i.xml:72
msgid "Enumerated value for the X axis."
msgstr ""
-#: doc/classes/Vector2.xml:336 doc/classes/Vector2i.xml:70
+#: doc/classes/Vector2.xml:341 doc/classes/Vector2i.xml:70
#: doc/classes/Vector3i.xml:75
msgid "Enumerated value for the Y axis."
msgstr ""
-#: doc/classes/Vector2.xml:339 doc/classes/Vector2i.xml:73
-#: doc/classes/Vector3.xml:346 doc/classes/Vector3i.xml:81
-msgid "Zero vector."
+#: doc/classes/Vector2.xml:344 doc/classes/Vector2i.xml:73
+#: doc/classes/Vector3.xml:352 doc/classes/Vector3i.xml:81
+msgid "Zero vector, a vector with all components set to [code]0[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:342 doc/classes/Vector2i.xml:76
-#: doc/classes/Vector3.xml:349 doc/classes/Vector3i.xml:84
-msgid "One vector."
+#: doc/classes/Vector2.xml:347 doc/classes/Vector2i.xml:76
+#: doc/classes/Vector3.xml:355 doc/classes/Vector3i.xml:84
+msgid "One vector, a vector with all components set to [code]1[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:345 doc/classes/Vector3.xml:352
-msgid "Infinity vector."
+#: doc/classes/Vector2.xml:350 doc/classes/Vector3.xml:358
+msgid ""
+"Infinity vector, a vector with all components set to [constant @GDScript."
+"INF]."
msgstr ""
-#: doc/classes/Vector2.xml:348 doc/classes/Vector2i.xml:79
-#: doc/classes/Vector3.xml:355 doc/classes/Vector3i.xml:87
-msgid "Left unit vector."
+#: doc/classes/Vector2.xml:353 doc/classes/Vector2i.xml:79
+msgid "Left unit vector. Represents the direction of left."
msgstr ""
-#: doc/classes/Vector2.xml:351 doc/classes/Vector2i.xml:82
-#: doc/classes/Vector3.xml:358 doc/classes/Vector3i.xml:90
-msgid "Right unit vector."
+#: doc/classes/Vector2.xml:356 doc/classes/Vector2i.xml:82
+msgid "Right unit vector. Represents the direction of right."
msgstr ""
-#: doc/classes/Vector2.xml:354 doc/classes/Vector2i.xml:85
-#: doc/classes/Vector3.xml:361 doc/classes/Vector3i.xml:93
-msgid "Up unit vector."
+#: doc/classes/Vector2.xml:359 doc/classes/Vector2i.xml:85
+msgid "Up unit vector. Y is down in 2D, so this vector points -Y."
msgstr ""
-#: doc/classes/Vector2.xml:357 doc/classes/Vector2i.xml:88
-#: doc/classes/Vector3.xml:364 doc/classes/Vector3i.xml:96
-msgid "Down unit vector."
+#: doc/classes/Vector2.xml:362 doc/classes/Vector2i.xml:88
+msgid "Down unit vector. Y is down in 2D, so this vector points +Y."
msgstr ""
#: doc/classes/Vector2i.xml:4
@@ -53735,6 +54521,16 @@ msgid ""
"will be truncated."
msgstr ""
+#: doc/classes/Vector2i.xml:46
+msgid "Returns the ratio of [member x] to [member y]."
+msgstr ""
+
+#: doc/classes/Vector2i.xml:53 doc/classes/Vector3i.xml:55
+msgid ""
+"Returns the vector with each component set to one or negative one, depending "
+"on the signs of the components."
+msgstr ""
+
#: doc/classes/Vector3.xml:4
msgid "Vector used for 3D math using floating point coordinates."
msgstr ""
@@ -53759,120 +54555,172 @@ msgid "Returns a [Vector3] with the given components."
msgstr ""
#: doc/classes/Vector3.xml:50
-msgid "Returns the minimum angle to the given vector."
-msgstr ""
+#, fuzzy
+msgid "Returns the minimum angle to the given vector, in radians."
+msgstr "Zwraca resztę z dwóch wektorów."
#: doc/classes/Vector3.xml:66
-msgid "Returns a new vector with all components rounded up."
+msgid ""
+"Returns a new vector with all components rounded up (towards positive "
+"infinity)."
msgstr ""
#: doc/classes/Vector3.xml:75
-msgid "Returns the cross product with [code]b[/code]."
-msgstr ""
+#, fuzzy
+msgid "Returns the cross product of this vector and [code]b[/code]."
+msgstr "Liczy iloczyn wektorowy dwóch wektorów."
#: doc/classes/Vector3.xml:90
msgid ""
"Performs a cubic interpolation between vectors [code]pre_a[/code], [code]a[/"
"code], [code]b[/code], [code]post_b[/code] ([code]a[/code] is current), by "
-"the given amount [code]t[/code]. [code]t[/code] is in the range of [code]0.0 "
-"- 1.0[/code], representing the amount of interpolation."
+"the given amount [code]t[/code]. [code]t[/code] is on the range of 0.0 to "
+"1.0, representing the amount of interpolation."
msgstr ""
-#: doc/classes/Vector3.xml:108
-msgid ""
-"Returns the squared distance to [code]b[/code]. Prefer this function over "
-"[method distance_to] if you need to sort vectors or need the squared "
-"distance for some formula."
+#: doc/classes/Vector3.xml:118
+msgid "Returns the distance between this vector and [code]b[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:117
-msgid "Returns the distance to [code]b[/code]."
-msgstr ""
-
-#: doc/classes/Vector3.xml:126
-msgid "Returns the dot product with [code]b[/code]."
+#: doc/classes/Vector3.xml:127
+msgid ""
+"Returns the dot product of this vector and [code]b[/code]. This can be used "
+"to compare the angle between two vectors. For example, this can be used to "
+"determine whether an enemy is facing the player.\n"
+"The dot product will be [code]0[/code] for a straight angle (90 degrees), "
+"greater than 0 for angles narrower than 90 degrees and lower than 0 for "
+"angles wider than 90 degrees.\n"
+"When using unit (normalized) vectors, the result will always be between "
+"[code]-1.0[/code] (180 degree angle) when the vectors are facing opposite "
+"directions, and [code]1.0[/code] (0 degree angle) when the vectors are "
+"aligned.\n"
+"[b]Note:[/b] [code]a.dot(b)[/code] is equivalent to [code]b.dot(a)[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:133
-msgid "Returns a new vector with all components rounded down."
+#: doc/classes/Vector3.xml:137
+msgid ""
+"Returns a new vector with all components rounded down (towards negative "
+"infinity)."
msgstr ""
-#: doc/classes/Vector3.xml:140
+#: doc/classes/Vector3.xml:144
msgid ""
"Returns the inverse of the vector. This is the same as [code]Vector3( 1.0 / "
"v.x, 1.0 / v.y, 1.0 / v.z )[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:170
+#: doc/classes/Vector3.xml:193 doc/classes/Vector3i.xml:41
msgid ""
-"Returns the vector's length squared. Prefer this function over [method "
-"length] if you need to sort vectors or need the squared length for some "
-"formula."
+"Returns the axis of the vector's largest value. See [code]AXIS_*[/code] "
+"constants. If all components are equal, this method returns [constant "
+"AXIS_X]."
msgstr ""
-#: doc/classes/Vector3.xml:181
+#: doc/classes/Vector3.xml:200 doc/classes/Vector3i.xml:48
msgid ""
-"Returns the result of the linear interpolation between this vector and "
-"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation.."
+"Returns the axis of the vector's smallest value. See [code]AXIS_*[/code] "
+"constants. If all components are equal, this method returns [constant "
+"AXIS_Z]."
msgstr ""
-#: doc/classes/Vector3.xml:188 doc/classes/Vector3i.xml:41
+#: doc/classes/Vector3.xml:211
msgid ""
-"Returns the axis of the vector's largest value. See [code]AXIS_*[/code] "
-"constants."
+"Moves this vector toward [code]to[/code] by the fixed [code]delta[/code] "
+"amount."
msgstr ""
-#: doc/classes/Vector3.xml:195 doc/classes/Vector3i.xml:48
+#: doc/classes/Vector3.xml:227
+msgid "Returns the outer product with [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:254
+msgid "Returns this vector projected onto another vector [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:263
+msgid "Returns this vector reflected from a plane defined by the given normal."
+msgstr ""
+
+#: doc/classes/Vector3.xml:274
msgid ""
-"Returns the axis of the vector's smallest value. See [code]AXIS_*[/code] "
-"constants."
+"Rotates this vector around a given axis by [code]phi[/code] radians. The "
+"axis must be a normalized vector."
msgstr ""
-#: doc/classes/Vector3.xml:222
-msgid "Returns the outer product with [code]b[/code]."
+#: doc/classes/Vector3.xml:281
+msgid ""
+"Returns this vector with all components rounded to the nearest integer, with "
+"halfway cases rounded away from zero."
msgstr ""
-#: doc/classes/Vector3.xml:269
+#: doc/classes/Vector3.xml:288
msgid ""
-"Rotates the vector around a given axis by [code]phi[/code] radians. The axis "
-"must be a normalized vector."
+"Returns a vector with each component set to one or negative one, depending "
+"on the signs of this vector's components, or zero if the component is zero, "
+"by calling [method @GDScript.sign] on each component."
msgstr ""
-#: doc/classes/Vector3.xml:320
-msgid "Returns a diagonal matrix with the vector as main diagonal."
+#: doc/classes/Vector3.xml:325
+msgid ""
+"Returns a diagonal matrix with the vector as main diagonal.\n"
+"This is equivalent to a Basis with no rotation or shearing and this vector's "
+"components set as the scale."
msgstr ""
-#: doc/classes/Vector3.xml:332 doc/classes/Vector3i.xml:67
+#: doc/classes/Vector3.xml:338 doc/classes/Vector3i.xml:67
msgid ""
"The vector's Z component. Also accessible by using the index position [code]"
"[2][/code]."
msgstr ""
-#: doc/classes/Vector3.xml:337
+#: doc/classes/Vector3.xml:343
msgid ""
"Enumerated value for the X axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:340
+#: doc/classes/Vector3.xml:346
msgid ""
"Enumerated value for the Y axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:343
+#: doc/classes/Vector3.xml:349
msgid ""
"Enumerated value for the Z axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:367 doc/classes/Vector3i.xml:99
-msgid "Forward unit vector."
+#: doc/classes/Vector3.xml:361 doc/classes/Vector3i.xml:87
+msgid ""
+"Left unit vector. Represents the local direction of left, and the global "
+"direction of west."
+msgstr ""
+
+#: doc/classes/Vector3.xml:364 doc/classes/Vector3i.xml:90
+msgid ""
+"Right unit vector. Represents the local direction of right, and the global "
+"direction of east."
+msgstr ""
+
+#: doc/classes/Vector3.xml:367 doc/classes/Vector3i.xml:93
+msgid "Up unit vector."
+msgstr ""
+
+#: doc/classes/Vector3.xml:370 doc/classes/Vector3i.xml:96
+msgid "Down unit vector."
msgstr ""
-#: doc/classes/Vector3.xml:370 doc/classes/Vector3i.xml:102
-msgid "Back unit vector."
+#: doc/classes/Vector3.xml:373 doc/classes/Vector3i.xml:99
+msgid ""
+"Forward unit vector. Represents the local direction of forward, and the "
+"global direction of north."
+msgstr ""
+
+#: doc/classes/Vector3.xml:376 doc/classes/Vector3i.xml:102
+msgid ""
+"Back unit vector. Represents the local direction of back, and the global "
+"direction of south."
msgstr ""
#: doc/classes/Vector3i.xml:4
@@ -53921,10 +54769,14 @@ msgid ""
"directly.\n"
"[b]Note:[/b] The origin point of your VehicleBody3D will determine the "
"center of gravity of your vehicle so it is better to keep this low and move "
-"the [CollisionShape3D] and [MeshInstance3D] upwards."
+"the [CollisionShape3D] and [MeshInstance3D] upwards.\n"
+"[b]Note:[/b] This class has known issues and isn't designed to provide "
+"realistic 3D vehicle physics. If you want advanced vehicle physics, you will "
+"probably have to write your own physics integration using another "
+"[PhysicsBody3D] class."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:16
+#: doc/classes/VehicleBody3D.xml:17
msgid ""
"Slows down the vehicle by applying a braking force. The vehicle is only "
"slowed down if the wheels are in contact with a surface. The force you need "
@@ -53933,7 +54785,7 @@ msgid ""
"a value in the 25 - 30 range for hard braking."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:19
+#: doc/classes/VehicleBody3D.xml:20
msgid ""
"Accelerates the vehicle by applying an engine force. The vehicle is only "
"speed up if the wheels that have [member VehicleWheel3D.use_as_traction] set "
@@ -53946,7 +54798,7 @@ msgid ""
"A negative value will result in the vehicle reversing."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:25
+#: doc/classes/VehicleBody3D.xml:26
msgid ""
"The steering angle for the vehicle. Setting this to a non-zero value will "
"result in the vehicle turning when it's moving. Wheels that have [member "
@@ -53962,25 +54814,29 @@ msgstr ""
msgid ""
"This node needs to be used as a child node of [VehicleBody3D] and simulates "
"the behavior of one of its wheels. This node also acts as a collider to "
-"detect if the wheel is touching a surface."
+"detect if the wheel is touching a surface.\n"
+"[b]Note:[/b] This class has known issues and isn't designed to provide "
+"realistic 3D vehicle physics. If you want advanced vehicle physics, you will "
+"probably have to write your own physics integration using another "
+"[PhysicsBody3D] class."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:16
+#: doc/classes/VehicleWheel3D.xml:17
msgid "Returns the rotational speed of the wheel in revolutions per minute."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:23
+#: doc/classes/VehicleWheel3D.xml:24
msgid ""
"Returns a value between 0.0 and 1.0 that indicates whether this wheel is "
"skidding. 0.0 is skidding (the wheel has lost grip, e.g. icy terrain), 1.0 "
"means not skidding (the wheel has full grip, e.g. dry asphalt road)."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:30
+#: doc/classes/VehicleWheel3D.xml:31
msgid "Returns [code]true[/code] if this wheel is in contact with a surface."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:36
+#: doc/classes/VehicleWheel3D.xml:37
msgid ""
"Slows down the wheel by applying a braking force. The wheel is only slowed "
"down if it is in contact with a surface. The force you need to apply to "
@@ -53989,7 +54845,7 @@ msgid ""
"- 30 range for hard braking."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:39
+#: doc/classes/VehicleWheel3D.xml:40
msgid ""
"The damping applied to the spring when the spring is being compressed. This "
"value should be between 0.0 (no damping) and 1.0. A value of 0.0 means the "
@@ -53997,7 +54853,7 @@ msgid ""
"is around 0.3 for a normal car, 0.5 for a race car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:42
+#: doc/classes/VehicleWheel3D.xml:43
msgid ""
"The damping applied to the spring when relaxing. This value should be "
"between 0.0 (no damping) and 1.0. This value should always be slightly "
@@ -54005,7 +54861,7 @@ msgid ""
"damping_compression] value of 0.3, try a relaxation value of 0.5."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:45
+#: doc/classes/VehicleWheel3D.xml:46
msgid ""
"Accelerates the wheel by applying an engine force. The wheel is only speed "
"up if it is in contact with a surface. The [member RigidBody3D.mass] of the "
@@ -54016,13 +54872,13 @@ msgid ""
"A negative value will result in the wheel reversing."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:50
+#: doc/classes/VehicleWheel3D.xml:51
msgid ""
"The steering angle for the wheel. Setting this to a non-zero value will "
"result in the vehicle turning when it's moving."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:53
+#: doc/classes/VehicleWheel3D.xml:54
msgid ""
"The maximum force the spring can resist. This value should be higher than a "
"quarter of the [member RigidBody3D.mass] of the [VehicleBody3D] or the "
@@ -54030,28 +54886,28 @@ msgid ""
"obtained by a value that is about 3× to 4× this number."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:56
+#: doc/classes/VehicleWheel3D.xml:57
msgid ""
"This value defines the stiffness of the suspension. Use a value lower than "
"50 for an off-road car, a value between 50 and 100 for a race car and try "
"something around 200 for something like a Formula 1 car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:59
+#: doc/classes/VehicleWheel3D.xml:60
msgid ""
"This is the distance the suspension can travel. As Godot units are "
"equivalent to meters, keep this setting relatively low. Try a value between "
"0.1 and 0.3 depending on the type of car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:62
+#: doc/classes/VehicleWheel3D.xml:63
msgid ""
"If [code]true[/code], this wheel will be turned when the car steers. This "
"value is used in conjunction with [member VehicleBody3D.steering] and "
"ignored if you are using the per-wheel [member steering] value instead."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:65
+#: doc/classes/VehicleWheel3D.xml:66
msgid ""
"If [code]true[/code], this wheel transfers engine force to the ground to "
"propel the vehicle forward. This value is used in conjunction with [member "
@@ -54059,7 +54915,7 @@ msgid ""
"[member engine_force] value instead."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:68
+#: doc/classes/VehicleWheel3D.xml:69
msgid ""
"This determines how much grip this wheel has. It is combined with the "
"friction setting of the surface the wheel is in contact with. 0.0 means no "
@@ -54069,11 +54925,11 @@ msgid ""
"It's best to set this to 1.0 when starting out."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:72
+#: doc/classes/VehicleWheel3D.xml:73
msgid "The radius of the wheel in meters."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:75
+#: doc/classes/VehicleWheel3D.xml:76
msgid ""
"This is the distance in meters the wheel is lowered from its origin point. "
"Don't set this to 0.0 and move the wheel into position, instead move the "
@@ -54082,7 +54938,7 @@ msgid ""
"down to the position it should be in when the car is in rest."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:78
+#: doc/classes/VehicleWheel3D.xml:79
msgid ""
"This value affects the roll of your vehicle. If set to 1.0 for all wheels, "
"your vehicle will be prone to rolling over, while a value of 0.0 will resist "
@@ -54560,7 +55416,7 @@ msgstr ""
#: doc/classes/Viewport.xml:318
msgid ""
"Use fast approximate antialiasing. FXAA is a popular screen-space "
-"antialising method, which is fast but will make the image look blurry, "
+"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."
msgstr ""
@@ -54613,24 +55469,24 @@ msgid ""
"your [WorldEnvironment]."
msgstr ""
-#: doc/classes/Viewport.xml:384
+#: doc/classes/Viewport.xml:381
msgid ""
"Colors each PSSM split for the [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, and yellow."
msgstr ""
-#: doc/classes/Viewport.xml:387
+#: doc/classes/Viewport.xml:384
msgid ""
"Draws the decal atlas used by [Decal]s and light projector textures in the "
"upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/Viewport.xml:402
+#: doc/classes/Viewport.xml:405
msgid "Max value for [enum DefaultCanvasItemTextureFilter] enum."
msgstr ""
-#: doc/classes/Viewport.xml:414
+#: doc/classes/Viewport.xml:417
msgid "Max value for [enum DefaultCanvasItemTextureRepeat] enum."
msgstr ""
@@ -54661,82 +55517,84 @@ msgid ""
"The VisibilityEnabler2D will disable [RigidBody2D], [AnimationPlayer], and "
"other nodes when they are not visible. It will only affect nodes with the "
"same root node as the VisibilityEnabler2D, and the root node itself.\n"
+"If you just want to receive notifications, use [VisibilityNotifier2D] "
+"instead.\n"
"[b]Note:[/b] For performance reasons, VisibilityEnabler2D uses an "
"approximate heuristic with precision determined by [member ProjectSettings."
-"world/2d/cell_size]. If you need exact visibility checking, use another "
+"world/2d/cell_size]. If you need precise visibility checking, use another "
"method such as adding an [Area2D] node as a child of a [Camera2D] node.\n"
"[b]Note:[/b] VisibilityEnabler2D will not affect nodes added after scene "
"initialization."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:20
-#: doc/classes/VisibilityEnabler3D.xml:20
+#: doc/classes/VisibilityEnabler2D.xml:21
+#: doc/classes/VisibilityEnabler3D.xml:21
msgid ""
"Returns whether the enabler identified by given [enum Enabler] constant is "
"active."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:31
-#: doc/classes/VisibilityEnabler3D.xml:31
+#: doc/classes/VisibilityEnabler2D.xml:32
+#: doc/classes/VisibilityEnabler3D.xml:32
msgid ""
"Sets active state of the enabler identified by given [enum Enabler] constant."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:37
+#: doc/classes/VisibilityEnabler2D.xml:38
msgid "If [code]true[/code], [RigidBody2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:40
+#: doc/classes/VisibilityEnabler2D.xml:41
msgid "If [code]true[/code], [AnimatedSprite2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:43
-#: doc/classes/VisibilityEnabler3D.xml:40
+#: doc/classes/VisibilityEnabler2D.xml:44
+#: doc/classes/VisibilityEnabler3D.xml:41
msgid "If [code]true[/code], [AnimationPlayer] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:46
+#: doc/classes/VisibilityEnabler2D.xml:47
msgid "If [code]true[/code], [GPUParticles2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:49
+#: doc/classes/VisibilityEnabler2D.xml:50
msgid ""
"If [code]true[/code], the parent's [method Node._physics_process] will be "
"stopped."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:52
+#: doc/classes/VisibilityEnabler2D.xml:53
msgid ""
"If [code]true[/code], the parent's [method Node._process] will be stopped."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:57
-#: doc/classes/VisibilityEnabler3D.xml:45
+#: doc/classes/VisibilityEnabler2D.xml:58
+#: doc/classes/VisibilityEnabler3D.xml:46
msgid "This enabler will pause [AnimationPlayer] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:60
+#: doc/classes/VisibilityEnabler2D.xml:61
msgid "This enabler will freeze [RigidBody2D] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:63
+#: doc/classes/VisibilityEnabler2D.xml:64
msgid "This enabler will stop [GPUParticles2D] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:66
+#: doc/classes/VisibilityEnabler2D.xml:67
msgid "This enabler will stop the parent's _process function."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:69
+#: doc/classes/VisibilityEnabler2D.xml:70
msgid "This enabler will stop the parent's _physics_process function."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:72
+#: doc/classes/VisibilityEnabler2D.xml:73
msgid "This enabler will stop [AnimatedSprite2D] nodes animations."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:75
-#: doc/classes/VisibilityEnabler3D.xml:51
+#: doc/classes/VisibilityEnabler2D.xml:76
+#: doc/classes/VisibilityEnabler3D.xml:52
msgid "Represents the size of the [enum Enabler] enum."
msgstr ""
@@ -54745,19 +55603,23 @@ msgid ""
"The VisibilityEnabler3D will disable [RigidBody3D] and [AnimationPlayer] "
"nodes when they are not visible. It will only affect other nodes within the "
"same scene as the VisibilityEnabler3D itself.\n"
+"If you just want to receive notifications, use [VisibilityNotifier3D] "
+"instead.\n"
"[b]Note:[/b] VisibilityEnabler3D uses an approximate heuristic for "
"performance reasons. It doesn't take walls and other occlusion into account. "
-"If you need exact visibility checking, use another method such as adding an "
-"[Area3D] node as a child of a [Camera3D] node.\n"
+"The heuristic is an implementation detail and may change in future versions. "
+"If you need precise visibility checking, use another method such as adding "
+"an [Area3D] node as a child of a [Camera3D] node and/or [method Vector3."
+"dot].\n"
"[b]Note:[/b] VisibilityEnabler3D will not affect nodes added after scene "
"initialization."
msgstr ""
-#: doc/classes/VisibilityEnabler3D.xml:37
+#: doc/classes/VisibilityEnabler3D.xml:38
msgid "If [code]true[/code], [RigidBody3D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler3D.xml:48
+#: doc/classes/VisibilityEnabler3D.xml:49
msgid "This enabler will freeze [RigidBody3D] nodes."
msgstr ""
@@ -54771,13 +55633,15 @@ msgid ""
"The VisibilityNotifier2D detects when it is visible on the screen. It also "
"notifies when its bounding rectangle enters or exits the screen or a "
"viewport.\n"
+"If you want nodes to be disabled automatically when they exit the screen, "
+"use [VisibilityEnabler2D] instead.\n"
"[b]Note:[/b] For performance reasons, VisibilityNotifier2D uses an "
"approximate heuristic with precision determined by [member ProjectSettings."
-"world/2d/cell_size]. If you need exact visibility checking, use another "
+"world/2d/cell_size]. If you need precise visibility checking, use another "
"method such as adding an [Area2D] node as a child of a [Camera2D] node."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:17
+#: doc/classes/VisibilityNotifier2D.xml:18
msgid ""
"If [code]true[/code], the bounding rectangle is on the screen.\n"
"[b]Note:[/b] It takes one frame for the node's visibility to be assessed "
@@ -54786,23 +55650,23 @@ msgid ""
"pass."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:24
+#: doc/classes/VisibilityNotifier2D.xml:25
msgid "The VisibilityNotifier2D's bounding rectangle."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:30
+#: doc/classes/VisibilityNotifier2D.xml:31
msgid "Emitted when the VisibilityNotifier2D enters the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:35
+#: doc/classes/VisibilityNotifier2D.xml:36
msgid "Emitted when the VisibilityNotifier2D exits the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:42
+#: doc/classes/VisibilityNotifier2D.xml:43
msgid "Emitted when the VisibilityNotifier2D enters a [Viewport]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:49
+#: doc/classes/VisibilityNotifier2D.xml:50
msgid "Emitted when the VisibilityNotifier2D exits a [Viewport]'s view."
msgstr ""
@@ -54811,13 +55675,16 @@ msgid ""
"The VisibilityNotifier3D detects when it is visible on the screen. It also "
"notifies when its bounding rectangle enters or exits the screen or a "
"[Camera3D]'s view.\n"
+"If you want nodes to be disabled automatically when they exit the screen, "
+"use [VisibilityEnabler3D] instead.\n"
"[b]Note:[/b] VisibilityNotifier3D uses an approximate heuristic for "
"performance reasons. It doesn't take walls and other occlusion into account. "
-"If you need exact visibility checking, use another method such as adding an "
-"[Area3D] node as a child of a [Camera3D] node."
+"The heuristic is an implementation detail and may change in future versions. "
+"If you need precise visibility checking, use another method such as adding "
+"an [Area3D] node as a child of a [Camera3D] node and/or [method Vector3.dot]."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:17
+#: doc/classes/VisibilityNotifier3D.xml:18
msgid ""
"If [code]true[/code], the bounding box is on the screen.\n"
"[b]Note:[/b] It takes one frame for the node's visibility to be assessed "
@@ -54826,23 +55693,23 @@ msgid ""
"pass."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:24
+#: doc/classes/VisibilityNotifier3D.xml:25
msgid "The VisibilityNotifier3D's bounding box."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:32
+#: doc/classes/VisibilityNotifier3D.xml:33
msgid "Emitted when the VisibilityNotifier3D enters a [Camera3D]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:39
+#: doc/classes/VisibilityNotifier3D.xml:40
msgid "Emitted when the VisibilityNotifier3D exits a [Camera3D]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:44
+#: doc/classes/VisibilityNotifier3D.xml:45
msgid "Emitted when the VisibilityNotifier3D enters the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:49
+#: doc/classes/VisibilityNotifier3D.xml:50
msgid "Emitted when the VisibilityNotifier3D exits the screen."
msgstr ""
@@ -55262,6 +56129,12 @@ msgid ""
"exist."
msgstr ""
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:90
+msgid ""
+"Easing function, based on exponent. 0 is constant, 1 is linear, 0 to 1 is "
+"ease-in, 1+ is ease out. Negative values are in-out/out in."
+msgstr ""
+
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:93
msgid ""
"Return the number of digit places after the decimal that the first non-zero "
@@ -56147,6 +57020,7 @@ msgid "A shader for light calculations."
msgstr ""
#: doc/classes/VisualShader.xml:214
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:26
msgid "Represents the size of the [enum Type] enum."
msgstr ""
@@ -56249,6 +57123,24 @@ msgstr ""
msgid "Translated to [code]uniform bool[/code] in the shader language."
msgstr ""
+#: doc/classes/VisualShaderNodeBooleanUniform.xml:15
+#: doc/classes/VisualShaderNodeColorUniform.xml:15
+#: doc/classes/VisualShaderNodeFloatUniform.xml:15
+#: doc/classes/VisualShaderNodeIntUniform.xml:15
+#: doc/classes/VisualShaderNodeTransformUniform.xml:15
+#: doc/classes/VisualShaderNodeVec3Uniform.xml:15
+msgid "A default value to be assigned within the shader."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeBooleanUniform.xml:18
+#: doc/classes/VisualShaderNodeColorUniform.xml:18
+#: doc/classes/VisualShaderNodeFloatUniform.xml:18
+#: doc/classes/VisualShaderNodeIntUniform.xml:18
+#: doc/classes/VisualShaderNodeTransformUniform.xml:18
+#: doc/classes/VisualShaderNodeVec3Uniform.xml:18
+msgid "Enables usage of the [member default_value]."
+msgstr ""
+
#: doc/classes/VisualShaderNodeColorConstant.xml:4
msgid "A [Color] constant to be used within the visual shader graph."
msgstr ""
@@ -57099,49 +57991,49 @@ msgstr ""
msgid "Translated to [code]uniform float[/code] in the shader language."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:15
-#: doc/classes/VisualShaderNodeIntUniform.xml:15
+#: doc/classes/VisualShaderNodeFloatUniform.xml:21
+#: doc/classes/VisualShaderNodeIntUniform.xml:21
msgid ""
"A hint applied to the uniform, which controls the values it can take when "
"set through the inspector."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:18
-#: doc/classes/VisualShaderNodeIntUniform.xml:18
+#: doc/classes/VisualShaderNodeFloatUniform.xml:24
+#: doc/classes/VisualShaderNodeIntUniform.xml:24
msgid ""
"Minimum value for range hints. Used if [member hint] is set to [constant "
"HINT_RANGE] or [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:21
-#: doc/classes/VisualShaderNodeIntUniform.xml:21
+#: doc/classes/VisualShaderNodeFloatUniform.xml:27
+#: doc/classes/VisualShaderNodeIntUniform.xml:27
msgid ""
"Maximum value for range hints. Used if [member hint] is set to [constant "
"HINT_RANGE] or [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:24
-#: doc/classes/VisualShaderNodeIntUniform.xml:24
+#: doc/classes/VisualShaderNodeFloatUniform.xml:30
+#: doc/classes/VisualShaderNodeIntUniform.xml:30
msgid ""
"Step (increment) value for the range hint with step. Used if [member hint] "
"is set to [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:29
-#: doc/classes/VisualShaderNodeIntUniform.xml:29
+#: doc/classes/VisualShaderNodeFloatUniform.xml:35
+#: doc/classes/VisualShaderNodeIntUniform.xml:35
msgid "No hint used."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:32
-#: doc/classes/VisualShaderNodeIntUniform.xml:32
+#: doc/classes/VisualShaderNodeFloatUniform.xml:38
+#: doc/classes/VisualShaderNodeIntUniform.xml:38
msgid ""
"A range hint for scalar value, which limits possible input values between "
"[member min] and [member max]. Translated to [code]hint_range(min, max)[/"
"code] in shader code."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:35
-#: doc/classes/VisualShaderNodeIntUniform.xml:35
+#: doc/classes/VisualShaderNodeFloatUniform.xml:41
+#: doc/classes/VisualShaderNodeIntUniform.xml:41
msgid ""
"A range hint for scalar value with step, which limits possible input values "
"between [member min] and [member max], with a step (increment) of [member "
@@ -57425,6 +58317,26 @@ msgid ""
"results, e.g. division by zero)."
msgstr ""
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:4
+msgid "Performs a fused multiply-add operation within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:7
+msgid "Uses three operands to compute [code](a * b + c)[/code] expression."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:15
+msgid "A type of operands and returned value."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:20
+msgid "A scalar type."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:23
+msgid "A vector type."
+msgstr ""
+
#: doc/classes/VisualShaderNodeOuterProduct.xml:4
msgid ""
"Calculates an outer product of two vectors within the visual shader graph."
@@ -57447,7 +58359,7 @@ msgstr ""
#: doc/classes/VisualShaderNodeOutput.xml:7
msgid ""
"This visual shader node is present in all shader graphs in form of \"Output"
-"\" block with mutliple output value ports."
+"\" block with multiple output value ports."
msgstr ""
#: doc/classes/VisualShaderNodeSample3D.xml:4
@@ -57811,6 +58723,20 @@ msgid ""
"[ShaderMaterial] properties."
msgstr ""
+#: doc/classes/VisualShaderNodeUniformRef.xml:4
+msgid "A reference to an existing [VisualShaderNodeUniform]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniformRef.xml:7
+msgid ""
+"Creating a reference to a [VisualShaderNodeUniform] allows you to reuse this "
+"uniform in different shaders or shader stages easily."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniformRef.xml:15
+msgid "The name of the uniform which this reference points to."
+msgstr ""
+
#: doc/classes/VisualShaderNodeVec3Constant.xml:4
msgid "A [Vector3] constant to be used within the visual shader graph."
msgstr ""
@@ -57908,7 +58834,7 @@ msgstr ""
#: doc/classes/VisualShaderNodeVectorFunc.xml:26
msgid "Returns the opposite value of the parameter."
-msgstr ""
+msgstr "Zwraca przeciwieństwo parametru."
#: doc/classes/VisualShaderNodeVectorFunc.xml:29
msgid "Returns [code]1/vector[/code]."
@@ -57916,96 +58842,96 @@ msgstr ""
#: doc/classes/VisualShaderNodeVectorFunc.xml:32
msgid "Converts RGB vector to HSV equivalent."
-msgstr ""
+msgstr "Konwertuje wektor RGB do odpowiednika HSV."
#: doc/classes/VisualShaderNodeVectorFunc.xml:35
msgid "Converts HSV vector to RGB equivalent."
-msgstr ""
+msgstr "Konwertuje wektor HSV do odpowiednika RGB."
#: doc/classes/VisualShaderNodeVectorFunc.xml:38
msgid "Returns the absolute value of the parameter."
-msgstr ""
+msgstr "Zwraca wartość bezwzględną parametru."
#: doc/classes/VisualShaderNodeVectorFunc.xml:41
msgid "Returns the arc-cosine of the parameter."
-msgstr ""
+msgstr "Zwraca arcus cosinus parametru."
#: doc/classes/VisualShaderNodeVectorFunc.xml:44
msgid "Returns the inverse hyperbolic cosine of the parameter."
-msgstr ""
+msgstr "Zwraca odwrócony cosinus hiperboliczny parametru."
#: doc/classes/VisualShaderNodeVectorFunc.xml:47
msgid "Returns the arc-sine of the parameter."
-msgstr ""
+msgstr "Zwraca arcus sinus parametru."
#: doc/classes/VisualShaderNodeVectorFunc.xml:50
msgid "Returns the inverse hyperbolic sine of the parameter."
-msgstr ""
+msgstr "Zwraca odwrócony sinus hiperboliczny parametru."
#: doc/classes/VisualShaderNodeVectorFunc.xml:53
msgid "Returns the arc-tangent of the parameter."
-msgstr ""
+msgstr "Zwraca arcus tangens parametru."
#: doc/classes/VisualShaderNodeVectorFunc.xml:56
msgid "Returns the inverse hyperbolic tangent of the parameter."
-msgstr ""
+msgstr "Zwraca odwrócony tangens hiperboliczny parametru."
#: doc/classes/VisualShaderNodeVectorFunc.xml:59
msgid ""
"Finds the nearest integer that is greater than or equal to the parameter."
-msgstr ""
+msgstr "Znajduje najbliższą liczbę całkowitą większą lub równą parametrowi."
#: doc/classes/VisualShaderNodeVectorFunc.xml:62
msgid "Returns the cosine of the parameter."
-msgstr ""
+msgstr "Zwraca cosinus parametru."
#: doc/classes/VisualShaderNodeVectorFunc.xml:65
msgid "Returns the hyperbolic cosine of the parameter."
-msgstr ""
+msgstr "Zwraca cosinus hiperboliczny parametru."
#: doc/classes/VisualShaderNodeVectorFunc.xml:68
msgid "Converts a quantity in radians to degrees."
-msgstr ""
+msgstr "Konwertuje wartość w radianach na stopnie."
#: doc/classes/VisualShaderNodeVectorFunc.xml:71
msgid "Base-e Exponential."
-msgstr ""
+msgstr "Eksponenta o podstawie e."
#: doc/classes/VisualShaderNodeVectorFunc.xml:74
msgid "Base-2 Exponential."
-msgstr ""
+msgstr "Eksponenta o podstawie 2."
#: doc/classes/VisualShaderNodeVectorFunc.xml:77
msgid "Finds the nearest integer less than or equal to the parameter."
-msgstr ""
+msgstr "Znajduje najbliższą liczbę całkowitą mniejszą lub równą parametrowi."
#: doc/classes/VisualShaderNodeVectorFunc.xml:80
msgid "Computes the fractional part of the argument."
-msgstr ""
+msgstr "Liczy ułamkową część argumentu."
#: doc/classes/VisualShaderNodeVectorFunc.xml:83
msgid "Returns the inverse of the square root of the parameter."
-msgstr ""
+msgstr "Zwraca odwrotność pierwiastka kwadratowego z parametru."
#: doc/classes/VisualShaderNodeVectorFunc.xml:86
msgid "Natural logarithm."
-msgstr ""
+msgstr "Logarytm naturalny."
#: doc/classes/VisualShaderNodeVectorFunc.xml:89
msgid "Base-2 logarithm."
-msgstr ""
+msgstr "Logarytm o podstawie 2."
#: doc/classes/VisualShaderNodeVectorFunc.xml:92
msgid "Converts a quantity in degrees to radians."
-msgstr ""
+msgstr "Konwertuje wartość ze stopni na radiany."
#: doc/classes/VisualShaderNodeVectorFunc.xml:95
msgid "Finds the nearest integer to the parameter."
-msgstr ""
+msgstr "Znajduje najbliższą parametrowi liczbę całkowitą."
#: doc/classes/VisualShaderNodeVectorFunc.xml:98
msgid "Finds the nearest even integer to the parameter."
-msgstr ""
+msgstr "Znajduje najbliższą parametrowi parzystą liczbę całkowitą."
#: doc/classes/VisualShaderNodeVectorFunc.xml:101
msgid ""
@@ -58016,23 +58942,23 @@ msgstr ""
#: doc/classes/VisualShaderNodeVectorFunc.xml:104
msgid "Returns the sine of the parameter."
-msgstr ""
+msgstr "Zwraca sinus parametru."
#: doc/classes/VisualShaderNodeVectorFunc.xml:107
msgid "Returns the hyperbolic sine of the parameter."
-msgstr ""
+msgstr "Zwraca sinus hiperboliczny parametru."
#: doc/classes/VisualShaderNodeVectorFunc.xml:110
msgid "Returns the square root of the parameter."
-msgstr ""
+msgstr "Zwraca pierwiastek kwadratowy parametru."
#: doc/classes/VisualShaderNodeVectorFunc.xml:113
msgid "Returns the tangent of the parameter."
-msgstr ""
+msgstr "Zwraca tangens parametru."
#: doc/classes/VisualShaderNodeVectorFunc.xml:116
msgid "Returns the hyperbolic tangent of the parameter."
-msgstr ""
+msgstr "Zwraca tangens hiperboliczny parametru."
#: doc/classes/VisualShaderNodeVectorFunc.xml:119
msgid ""
@@ -58091,11 +59017,11 @@ msgstr ""
#: doc/classes/VisualShaderNodeVectorOp.xml:29
msgid "Divides vector by vector."
-msgstr ""
+msgstr "Dzieli wektor przez wektor."
#: doc/classes/VisualShaderNodeVectorOp.xml:32
msgid "Returns the remainder of the two vectors."
-msgstr ""
+msgstr "Zwraca resztę z dwóch wektorów."
#: doc/classes/VisualShaderNodeVectorOp.xml:35
msgid ""
@@ -58113,11 +59039,11 @@ msgstr ""
#: doc/classes/VisualShaderNodeVectorOp.xml:44
msgid "Calculates the cross product of two vectors."
-msgstr ""
+msgstr "Liczy iloczyn wektorowy dwóch wektorów."
#: doc/classes/VisualShaderNodeVectorOp.xml:47
msgid "Returns the arc-tangent of the parameters."
-msgstr ""
+msgstr "Zwraca arcus tangens parametrów."
#: doc/classes/VisualShaderNodeVectorOp.xml:50
msgid ""
@@ -58141,7 +59067,7 @@ msgstr ""
msgid ""
"Translated to [code]refract(I, N, eta)[/code] in the shader language, where "
"[code]I[/code] is the incident vector, [code]N[/code] is the normal vector "
-"and [code]eta[/code] is the ratio of the indicies of the refraction."
+"and [code]eta[/code] is the ratio of the indices of the refraction."
msgstr ""
#: doc/classes/VisualShaderNodeVectorScalarMix.xml:4
diff --git a/doc/translations/pt_BR.po b/doc/translations/pt_BR.po
index c86f9d57ff..89460c5caf 100644
--- a/doc/translations/pt_BR.po
+++ b/doc/translations/pt_BR.po
@@ -4,58 +4,67 @@
# This file is distributed under the same license as the Godot source code.
#
# José Paulo <jose.paulo1919@gmail.com>, 2020.
+# Necco <necco@outlook.com>, 2020.
+# Marcelo Silveira Hayden <mshayden.1998@gmail.com>, 2020.
+# Felipe Jesus Macedo <fmacedo746@gmail.com>, 2020.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine class reference\n"
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
+"PO-Revision-Date: 2020-07-03 02:06+0000\n"
+"Last-Translator: Felipe Jesus Macedo <fmacedo746@gmail.com>\n"
+"Language-Team: Portuguese (Brazil) <https://hosted.weblate.org/projects/"
+"godot-engine/godot-class-reference/pt_BR/>\n"
"Language: pt_BR\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8-bit\n"
+"Plural-Forms: nplurals=2; plural=n > 1;\n"
+"X-Generator: Weblate 4.2-dev\n"
#: doc/tools/makerst.py
msgid "Description"
-msgstr ""
+msgstr "Descrição"
#: doc/tools/makerst.py
msgid "Tutorials"
-msgstr ""
+msgstr "Tutoriais"
#: doc/tools/makerst.py
msgid "Properties"
-msgstr ""
+msgstr "Propriedades"
#: doc/tools/makerst.py
msgid "Methods"
-msgstr ""
+msgstr "Métodos"
#: doc/tools/makerst.py
msgid "Theme Properties"
-msgstr ""
+msgstr "Propriedades do Tema"
#: doc/tools/makerst.py
msgid "Signals"
-msgstr ""
+msgstr "Sinais"
#: doc/tools/makerst.py
msgid "Enumerations"
-msgstr ""
+msgstr "Enumerações"
#: doc/tools/makerst.py
msgid "Constants"
-msgstr ""
+msgstr "Constantes"
#: doc/tools/makerst.py
msgid "Property Descriptions"
-msgstr ""
+msgstr "Descrições da Propriedade"
#: doc/tools/makerst.py
msgid "Method Descriptions"
-msgstr ""
+msgstr "Descrições do Método"
#: modules/gdscript/doc_classes/@GDScript.xml:4
msgid "Built-in GDScript functions."
-msgstr ""
+msgstr "Funções GDScript embutidas."
#: modules/gdscript/doc_classes/@GDScript.xml:7
msgid ""
@@ -63,6 +72,9 @@ msgid ""
"utilities. Everything else is provided by objects. (Keywords: builtin, built "
"in, global functions.)"
msgstr ""
+"Lista das funções essenciais embutidas em GDScript. Funções matemáticas e "
+"outras utilidades. Todo o resto é fornecido por objetos. (Palavras-chave: "
+"embutido, funções globais.)"
#: modules/gdscript/doc_classes/@GDScript.xml:24
msgid ""
@@ -77,6 +89,15 @@ msgid ""
"red = Color8(255, 0, 0)\n"
"[/codeblock]"
msgstr ""
+"Retorna uma cor construída de inteiros para os canais vermelho, verde, azul "
+"e alfa. Cada canal deve ter 8 bits de informação indo de 0 a 255.\n"
+"[code]r8[/code] canal vermelho\n"
+"[code]g8[/code] canal verde\n"
+"[code]b8[/code] canal azul\n"
+"[code]a8[/code] canal alfa\n"
+"[codeblock]\n"
+"red = Color8(255, 0, 0)\n"
+"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:42
msgid ""
@@ -87,16 +108,30 @@ msgid ""
"[/codeblock]\n"
"Supported color names are the same as the constants defined in [Color]."
msgstr ""
+"Retorna uma cor de acordo com o [code]nome[/code] padronizado, com "
+"[code]alfa[/code] indo de 0 a 1.\n"
+"[codeblock]\n"
+"vermelho = ColorN(\"red\", 1)\n"
+"[/codeblock]\n"
+"Os nomes de cor suportados são os mesmos que as constantes definidas em "
+"[Color]."
#: modules/gdscript/doc_classes/@GDScript.xml:55
+#, fuzzy
msgid ""
-"Returns the absolute value of parameter [code]s[/code] (i.e. unsigned value, "
-"works for integer and float).\n"
+"Returns the absolute value of parameter [code]s[/code] (i.e. positive "
+"value).\n"
"[codeblock]\n"
"# a is 1\n"
"a = abs(-1)\n"
"[/codeblock]"
msgstr ""
+"Retorna o valor absoluto do parâmetro [code]s[/code] (i.e. valor sem sinal, "
+"funciona para inteiros e floats).\n"
+"[codeblock]\n"
+"# a is 1\n"
+"a = abs(-1)\n"
+"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:68
msgid ""
@@ -107,6 +142,12 @@ msgid ""
"c = acos(0.866025)\n"
"[/codeblock]"
msgstr ""
+"Retorna o arco cosseno de [code]s[/code] em radianos. Utilize-a para obter o "
+"ângulo do cosseno de [code]s[/code].\n"
+"[codeblock]\n"
+"# c é 0.523599 ou 30 graus, se convertido com rad2deg(s)\n"
+"c = acos(0.866025)\n"
+"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:81
msgid ""
@@ -117,6 +158,12 @@ msgid ""
"s = asin(0.5)\n"
"[/codeblock]"
msgstr ""
+"Retorna o arc seno de [code]s[/code] em radianos. Use para calcular o ângulo "
+"do seno de [code]s[/code].\n"
+"[codeblock]\n"
+"# s é 0.523599 ou 30 graus, se convertido com rad2deg(s)\n"
+"s = asin(0.5)\n"
+"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:96
msgid ""
@@ -146,7 +193,7 @@ msgid ""
"angle from an angle's tangent in trigonometry: [code]atan(tan(angle)) == "
"angle[/code].\n"
"The method cannot know in which quadrant the angle should fall. See [method "
-"atan2] if you always want an exact angle.\n"
+"atan2] if you have both [code]y[/code] and [code]x[/code].\n"
"[codeblock]\n"
"a = atan(0.5) # a is 0.463648\n"
"[/codeblock]"
@@ -157,12 +204,13 @@ msgid ""
"Returns the arc tangent of [code]y/x[/code] in radians. Use to get the angle "
"of tangent [code]y/x[/code]. To compute the value, the method takes into "
"account the sign of both arguments in order to determine the quadrant.\n"
+"Important note: The Y coordinate comes first, by convention.\n"
"[codeblock]\n"
"a = atan2(0, -1) # a is 3.141593\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:143
+#: modules/gdscript/doc_classes/@GDScript.xml:144
msgid ""
"Decodes a byte array back to a value. When [code]allow_objects[/code] is "
"[code]true[/code] decoding objects is allowed.\n"
@@ -171,7 +219,7 @@ msgid ""
"avoid potential security threats (remote code execution)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:155
+#: modules/gdscript/doc_classes/@GDScript.xml:156
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:145
msgid ""
"Converts a 2D point expressed in the cartesian coordinate system (X and Y "
@@ -179,17 +227,17 @@ msgid ""
"angle)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:164
+#: modules/gdscript/doc_classes/@GDScript.xml:165
msgid ""
-"Rounds [code]s[/code] upward, returning the smallest integral value that is "
-"not less than [code]s[/code].\n"
+"Rounds [code]s[/code] upward (towards positive infinity), returning the "
+"smallest whole number that is not less than [code]s[/code].\n"
"[codeblock]\n"
"i = ceil(1.45) # i is 2\n"
"i = ceil(1.001) # i is 2\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:177
+#: modules/gdscript/doc_classes/@GDScript.xml:178
msgid ""
"Returns a character as a String of the given Unicode code point (which is "
"compatible with ASCII code).\n"
@@ -201,7 +249,7 @@ msgid ""
"This is the inverse of [method ord]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:196
+#: modules/gdscript/doc_classes/@GDScript.xml:197
msgid ""
"Clamps [code]value[/code] and returns a value not less than [code]min[/code] "
"and not more than [code]max[/code].\n"
@@ -216,7 +264,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:216
+#: modules/gdscript/doc_classes/@GDScript.xml:217
msgid ""
"Converts from a type to another in the best way possible. The [code]type[/"
"code] parameter uses the [enum Variant.Type] values.\n"
@@ -230,7 +278,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:233
+#: modules/gdscript/doc_classes/@GDScript.xml:234
msgid ""
"Returns the cosine of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -240,7 +288,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:247
+#: modules/gdscript/doc_classes/@GDScript.xml:248
msgid ""
"Returns the hyperbolic cosine of [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -249,11 +297,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:260
+#: modules/gdscript/doc_classes/@GDScript.xml:261
msgid "Converts from decibels to linear energy (audio)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:273
+#: modules/gdscript/doc_classes/@GDScript.xml:274
msgid ""
"Returns the result of [code]value[/code] decreased by [code]step[/code] * "
"[code]amount[/code].\n"
@@ -263,42 +311,44 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:286
+#: modules/gdscript/doc_classes/@GDScript.xml:287
msgid ""
-"Returns degrees converted to radians.\n"
+"Converts an angle expressed in degrees to radians.\n"
"[codeblock]\n"
"# r is 3.141593\n"
"r = deg2rad(180)\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:299
+#: modules/gdscript/doc_classes/@GDScript.xml:300
msgid ""
"Converts a previously converted instance to a dictionary, back into an "
"instance. Useful for deserializing."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:310
-#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:90
+#: modules/gdscript/doc_classes/@GDScript.xml:311
msgid ""
-"Easing function, based on exponent. 0 is constant, 1 is linear, 0 to 1 is "
-"ease-in, 1+ is ease out. Negative values are in-out/out in."
+"Easing function, based on exponent. The curve values are: 0 is constant, 1 "
+"is linear, 0 to 1 is ease-in, 1+ is ease out. Negative values are in-out/out "
+"in."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:319
+#: modules/gdscript/doc_classes/@GDScript.xml:320
msgid ""
"The natural exponential function. It raises the mathematical constant [b]e[/"
"b] to the power of [code]s[/code] and returns it.\n"
-"[b]e[/b] has an approximate value of 2.71828.\n"
+"[b]e[/b] has an approximate value of 2.71828, and can be obtained with "
+"[code]exp(1)[/code].\n"
"For exponents to other bases use the method [method pow].\n"
"[codeblock]\n"
"a = exp(2) # Approximately 7.39\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:333
+#: modules/gdscript/doc_classes/@GDScript.xml:334
msgid ""
-"Rounds [code]s[/code] to the closest smaller integer and returns it.\n"
+"Rounds [code]s[/code] downward (towards negative infinity), returning the "
+"largest whole number that is not more than [code]s[/code].\n"
"[codeblock]\n"
"# a is 2.0\n"
"a = floor(2.99)\n"
@@ -309,7 +359,7 @@ msgid ""
"use [code]int(s)[/code] directly."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:351
+#: modules/gdscript/doc_classes/@GDScript.xml:352
msgid ""
"Returns the floating-point remainder of [code]a/b[/code], keeping the sign "
"of [code]a[/code].\n"
@@ -320,7 +370,7 @@ msgid ""
"For the integer remainder operation, use the % operator."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:367
+#: modules/gdscript/doc_classes/@GDScript.xml:368
msgid ""
"Returns the floating-point modulus of [code]a/b[/code] that wraps equally in "
"positive and negative.\n"
@@ -346,7 +396,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:398
+#: modules/gdscript/doc_classes/@GDScript.xml:399
msgid ""
"Returns a reference to the specified function [code]funcname[/code] in the "
"[code]instance[/code] node. As functions aren't first-class objects in "
@@ -361,7 +411,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:412
+#: modules/gdscript/doc_classes/@GDScript.xml:413
msgid ""
"Returns an array of dictionaries representing the current call stack.\n"
"[codeblock]\n"
@@ -381,7 +431,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:435
+#: modules/gdscript/doc_classes/@GDScript.xml:436
msgid ""
"Returns the integer hash of the variable passed.\n"
"[codeblock]\n"
@@ -389,7 +439,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:447
+#: modules/gdscript/doc_classes/@GDScript.xml:448
msgid ""
"Returns the passed instance converted to a dictionary (useful for "
"serializing).\n"
@@ -407,7 +457,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:468
+#: modules/gdscript/doc_classes/@GDScript.xml:469
msgid ""
"Returns the Object that corresponds to [code]instance_id[/code]. All Objects "
"have a unique instance ID.\n"
@@ -420,7 +470,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:488
+#: modules/gdscript/doc_classes/@GDScript.xml:489
msgid ""
"Returns a normalized value considering the given range. This is the opposite "
"of [method lerp].\n"
@@ -434,33 +484,41 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:506
+#: modules/gdscript/doc_classes/@GDScript.xml:507
msgid ""
"Returns [code]true[/code] if [code]a[/code] and [code]b[/code] are "
-"approximately equal to each other."
+"approximately equal to each other.\n"
+"Here, approximately equal means that [code]a[/code] and [code]b[/code] are "
+"within a small internal epsilon of each other, which scales with the "
+"magnitude of the numbers.\n"
+"Infinity values of the same sign are considered equal."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:515
+#: modules/gdscript/doc_classes/@GDScript.xml:518
msgid ""
"Returns whether [code]s[/code] is an infinity value (either positive "
"infinity or negative infinity)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:524
+#: modules/gdscript/doc_classes/@GDScript.xml:527
msgid ""
"Returns whether [code]instance[/code] is a valid object (e.g. has not been "
"deleted from memory)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:533
-msgid "Returns whether [code]s[/code] is a NaN (Not-A-Number) value."
+#: modules/gdscript/doc_classes/@GDScript.xml:536
+msgid ""
+"Returns whether [code]s[/code] is a NaN (\"Not a Number\" or invalid) value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:542
-msgid "Returns [code]true[/code] if [code]s[/code] is zero or almost zero."
+#: modules/gdscript/doc_classes/@GDScript.xml:545
+msgid ""
+"Returns [code]true[/code] if [code]s[/code] is zero or almost zero.\n"
+"This method is faster than using [method is_equal_approx] with one value as "
+"zero."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:551
+#: modules/gdscript/doc_classes/@GDScript.xml:555
msgid ""
"Returns length of Variant [code]var[/code]. Length is the character count of "
"String, element count of Array, size of Dictionary, etc.\n"
@@ -471,7 +529,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:569
+#: modules/gdscript/doc_classes/@GDScript.xml:573
msgid ""
"Linearly interpolates between two values by a normalized value. This is the "
"opposite of [method inverse_lerp].\n"
@@ -486,7 +544,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:588
+#: modules/gdscript/doc_classes/@GDScript.xml:592
msgid ""
"Linearly interpolates between two angles (in radians) by a normalized "
"value.\n"
@@ -503,7 +561,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:607
+#: modules/gdscript/doc_classes/@GDScript.xml:611
msgid ""
"Converts from linear energy to decibels (audio). This can be used to "
"implement volume sliders that behave as expected (since volume isn't "
@@ -519,20 +577,28 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:622
+#: modules/gdscript/doc_classes/@GDScript.xml:626
msgid ""
-"Loads a resource from the filesystem located at [code]path[/code].\n"
+"Loads a resource from the filesystem located at [code]path[/code]. The "
+"resource is loaded on the method call (unless it's referenced already "
+"elsewhere, e.g. in another script or in the scene), which might cause slight "
+"delay, especially when loading scenes. To avoid unnecessary delays when "
+"loading something multiple times, either store the resource in a variable or "
+"use [method preload].\n"
"[b]Note:[/b] Resource paths can be obtained by right-clicking on a resource "
-"in the FileSystem dock and choosing [b]Copy Path[/b].\n"
+"in the FileSystem dock and choosing \"Copy Path\" or by dragging the file "
+"from the FileSystem dock into the script.\n"
"[codeblock]\n"
-"# Load a scene called main located in the root of the project directory.\n"
-"var main = load(\"res://main.tscn\")\n"
+"# Load a scene called main located in the root of the project directory and "
+"cache it in a variable.\n"
+"var main = load(\"res://main.tscn\") # main will contain a PackedScene "
+"resource.\n"
"[/codeblock]\n"
"[b]Important:[/b] The path must be absolute, a local path will just return "
"[code]null[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:637
+#: modules/gdscript/doc_classes/@GDScript.xml:641
msgid ""
"Natural logarithm. The amount of time needed to reach a certain level of "
"continuous growth.\n"
@@ -540,10 +606,12 @@ msgid ""
"calculators, which uses a base 10 logarithm.\n"
"[codeblock]\n"
"log(10) # Returns 2.302585\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] The logarithm of [code]0[/code] returns [code]-inf[/code], "
+"while negative values return [code]-nan[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:652
+#: modules/gdscript/doc_classes/@GDScript.xml:657
msgid ""
"Returns the maximum of two values.\n"
"[codeblock]\n"
@@ -552,7 +620,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:667
+#: modules/gdscript/doc_classes/@GDScript.xml:672
msgid ""
"Returns the minimum of two values.\n"
"[codeblock]\n"
@@ -561,27 +629,39 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:684
+#: modules/gdscript/doc_classes/@GDScript.xml:689
msgid ""
"Moves [code]from[/code] toward [code]to[/code] by the [code]delta[/code] "
"value.\n"
"Use a negative [code]delta[/code] value to move away.\n"
"[codeblock]\n"
+"move_toward(5, 10, 4) # Returns 9\n"
"move_toward(10, 5, 4) # Returns 6\n"
+"move_toward(10, 5, -1.5) # Returns 11.5\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:697
+#: modules/gdscript/doc_classes/@GDScript.xml:704
msgid ""
-"Returns the nearest larger power of 2 for integer [code]value[/code].\n"
+"Returns the nearest equal or larger power of 2 for integer [code]value[/"
+"code].\n"
+"In other words, returns the smallest value [code]a[/code] where [code]a = "
+"pow(2, n)[/code] such that [code]value <= a[/code] for some non-negative "
+"integer [code]n[/code].\n"
"[codeblock]\n"
"nearest_po2(3) # Returns 4\n"
"nearest_po2(4) # Returns 4\n"
"nearest_po2(5) # Returns 8\n"
-"[/codeblock]"
+"\n"
+"nearest_po2(0) # Returns 0 (this may not be what you expect)\n"
+"nearest_po2(-1) # Returns 0 (this may not be what you expect)\n"
+"[/codeblock]\n"
+"[b]WARNING:[/b] Due to the way it is implemented, this function returns "
+"[code]0[/code] rather than [code]1[/code] for non-positive values of "
+"[code]value[/code] (in reality, 1 is the smallest integer power of 2)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:711
+#: modules/gdscript/doc_classes/@GDScript.xml:723
msgid ""
"Returns an integer representing the Unicode code point of the given Unicode "
"character [code]char[/code].\n"
@@ -593,27 +673,28 @@ msgid ""
"This is the inverse of [method char]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:726
+#: modules/gdscript/doc_classes/@GDScript.xml:738
msgid ""
-"Parse JSON text to a Variant (use [method typeof] to check if it is what you "
-"expect).\n"
-"Be aware that the JSON specification does not define integer or float types, "
-"but only a number type. Therefore, parsing a JSON text will convert all "
-"numerical values to [float] types.\n"
-"Note that JSON objects do not preserve key order like Godot dictionaries, "
-"thus you should not rely on keys being in a certain order if a dictionary is "
-"constructed from JSON. In contrast, JSON arrays retain the order of their "
+"Parse JSON text to a Variant. (Use [method typeof] to check if the Variant's "
+"type is what you expect.)\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, parsing a JSON text will convert "
+"all numerical values to [float] types.\n"
+"[b]Note:[/b] JSON objects do not preserve key order like Godot dictionaries, "
+"thus, you should not rely on keys being in a certain order if a dictionary "
+"is constructed from JSON. In contrast, JSON arrays retain the order of their "
"elements:\n"
"[codeblock]\n"
-"p = parse_json('[\"a\", \"b\", \"c\"]')\n"
-"if typeof(p) == TYPE_ARRAY:\n"
-" print(p[0]) # Prints a\n"
+"var p = JSON.parse('[\"hello\", \"world\", \"!\"]')\n"
+"if typeof(p.result) == TYPE_ARRAY:\n"
+" print(p.result[0]) # Prints \"hello\"\n"
"else:\n"
-" print(\"unexpected results\")\n"
-"[/codeblock]"
+" push_error(\"Unexpected results.\")\n"
+"[/codeblock]\n"
+"See also [JSON] for an alternative way to parse JSON text."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:746
+#: modules/gdscript/doc_classes/@GDScript.xml:759
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:142
msgid ""
"Converts a 2D point expressed in the polar coordinate system (a distance "
@@ -621,7 +702,7 @@ msgid ""
"cartesian coordinate system (X and Y axis)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:757
+#: modules/gdscript/doc_classes/@GDScript.xml:770
msgid ""
"Returns the integer modulus of [code]a/b[/code] that wraps equally in "
"positive and negative.\n"
@@ -647,7 +728,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:788
+#: modules/gdscript/doc_classes/@GDScript.xml:801
msgid ""
"Returns the result of [code]x[/code] raised to the power of [code]y[/code].\n"
"[codeblock]\n"
@@ -655,19 +736,23 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:800
+#: modules/gdscript/doc_classes/@GDScript.xml:813
msgid ""
-"Returns a resource from the filesystem that is loaded during script "
-"parsing.\n"
+"Returns a [Resource] from the filesystem located at [code]path[/code]. The "
+"resource is loaded during script parsing, i.e. is loaded with the script and "
+"[method preload] effectively acts as a reference to that resource. Note that "
+"the method requires a constant path. If you want to load a resource from a "
+"dynamic/variable path, use [method load].\n"
"[b]Note:[/b] Resource paths can be obtained by right clicking on a resource "
-"in the Assets Panel and choosing \"Copy Path\".\n"
+"in the Assets Panel and choosing \"Copy Path\" or by dragging the file from "
+"the FileSystem dock into the script.\n"
"[codeblock]\n"
-"# Load a scene called main located in the root of the project directory.\n"
-"var main = preload(\"res://main.tscn\")\n"
+"# Instance a scene.\n"
+"var diamond = preload(\"res://diamond.tscn\").instance()\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:812
+#: modules/gdscript/doc_classes/@GDScript.xml:825
msgid ""
"Converts one or more arguments to strings in the best way possible and "
"prints them to the console.\n"
@@ -677,11 +762,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:823
+#: modules/gdscript/doc_classes/@GDScript.xml:836
msgid "Like [method print], but prints only when used in debug mode."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:830
+#: modules/gdscript/doc_classes/@GDScript.xml:843
msgid ""
"Prints a stack track at code location, only works when running with debugger "
"turned on.\n"
@@ -691,7 +776,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:841
+#: modules/gdscript/doc_classes/@GDScript.xml:854
msgid ""
"Prints one or more arguments to strings in the best way possible to standard "
"error line.\n"
@@ -700,7 +785,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:851
+#: modules/gdscript/doc_classes/@GDScript.xml:864
msgid ""
"Prints one or more arguments to strings in the best way possible to console. "
"No newline is added at the end.\n"
@@ -714,7 +799,7 @@ msgid ""
"method, such as [method print]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:864
+#: modules/gdscript/doc_classes/@GDScript.xml:877
msgid ""
"Prints one or more arguments to the console with a space between each "
"argument.\n"
@@ -723,7 +808,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:874
+#: modules/gdscript/doc_classes/@GDScript.xml:887
msgid ""
"Prints one or more arguments to the console with a tab between each "
"argument.\n"
@@ -732,7 +817,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:886
+#: modules/gdscript/doc_classes/@GDScript.xml:899
msgid ""
"Pushes an error message to Godot's built-in debugger and to the OS "
"terminal.\n"
@@ -742,7 +827,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:898
+#: modules/gdscript/doc_classes/@GDScript.xml:911
msgid ""
"Pushes a warning message to Godot's built-in debugger and to the OS "
"terminal.\n"
@@ -752,15 +837,15 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:910
+#: modules/gdscript/doc_classes/@GDScript.xml:923
msgid ""
-"Converts from radians to degrees.\n"
+"Converts an angle expressed in radians to degrees.\n"
"[codeblock]\n"
"rad2deg(0.523599) # Returns 30\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:924
+#: modules/gdscript/doc_classes/@GDScript.xml:937
msgid ""
"Random range, any floating point value between [code]from[/code] and "
"[code]to[/code].\n"
@@ -769,7 +854,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:936
+#: modules/gdscript/doc_classes/@GDScript.xml:949
msgid ""
"Random from seed: pass a [code]seed[/code], and an array with both number "
"and new seed is returned. \"Seed\" here refers to the internal state of the "
@@ -777,7 +862,7 @@ msgid ""
"implementation is 64 bits."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:943
+#: modules/gdscript/doc_classes/@GDScript.xml:956
msgid ""
"Returns a random floating point value on the interval [code][0, 1][/code].\n"
"[codeblock]\n"
@@ -785,7 +870,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:953
+#: modules/gdscript/doc_classes/@GDScript.xml:966
msgid ""
"Returns a random unsigned 32 bit integer. Use remainder to obtain a random "
"value in the interval [code][0, N - 1][/code] (where N is smaller than "
@@ -798,7 +883,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:966
+#: modules/gdscript/doc_classes/@GDScript.xml:979
msgid ""
"Randomizes the seed (or the internal state) of the random number generator. "
"Current implementation reseeds using a number based on time.\n"
@@ -808,7 +893,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:977
+#: modules/gdscript/doc_classes/@GDScript.xml:990
msgid ""
"Returns an array with the given range. Range can be 1 argument N (0 to N-1), "
"two arguments (initial, final-1) or three arguments (initial, final-1, "
@@ -838,7 +923,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1017
+#: modules/gdscript/doc_classes/@GDScript.xml:1030
msgid ""
"Maps a [code]value[/code] from range [code][istart, istop][/code] to [code]"
"[ostart, ostop][/code].\n"
@@ -847,16 +932,16 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1029
+#: modules/gdscript/doc_classes/@GDScript.xml:1042
msgid ""
-"Returns the integral value that is nearest to [code]s[/code], with halfway "
-"cases rounded away from zero.\n"
+"Rounds [code]s[/code] to the nearest whole number, with halfway cases "
+"rounded away from zero.\n"
"[codeblock]\n"
"round(2.6) # Returns 3\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1041
+#: modules/gdscript/doc_classes/@GDScript.xml:1054
msgid ""
"Sets seed for the random number generator.\n"
"[codeblock]\n"
@@ -865,7 +950,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1054
+#: modules/gdscript/doc_classes/@GDScript.xml:1067
msgid ""
"Returns the sign of [code]s[/code]: -1 or 1. Returns 0 if [code]s[/code] is "
"0.\n"
@@ -876,7 +961,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1068
+#: modules/gdscript/doc_classes/@GDScript.xml:1081
msgid ""
"Returns the sine of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -884,7 +969,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1080
+#: modules/gdscript/doc_classes/@GDScript.xml:1093
msgid ""
"Returns the hyperbolic sine of [code]s[/code].\n"
"[codeblock]\n"
@@ -893,27 +978,37 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1097
+#: modules/gdscript/doc_classes/@GDScript.xml:1110
msgid ""
-"Returns a number smoothly interpolated between the [code]from[/code] and "
-"[code]to[/code], based on the [code]weight[/code]. Similar to [method lerp], "
-"but interpolates faster at the beginning and slower at the end.\n"
+"Returns the result of smoothly interpolating the value of [code]s[/code] "
+"between [code]0[/code] and [code]1[/code], based on the where [code]s[/code] "
+"lies with respect to the edges [code]from[/code] and [code]to[/code].\n"
+"The return value is [code]0[/code] if [code]s <= from[/code], and [code]1[/"
+"code] if [code]s >= to[/code]. If [code]s[/code] lies between [code]from[/"
+"code] and [code]to[/code], the returned value follows an S-shaped curve that "
+"maps [code]s[/code] between [code]0[/code] and [code]1[/code].\n"
+"This S-shaped curve is the cubic Hermite interpolator, given by [code]f(s) = "
+"3*s^2 - 2*s^3[/code].\n"
"[codeblock]\n"
-"smoothstep(0, 2, 0.5) # Returns 0.15\n"
+"smoothstep(0, 2, -5.0) # Returns 0.0\n"
+"smoothstep(0, 2, 0.5) # Returns 0.15625\n"
"smoothstep(0, 2, 1.0) # Returns 0.5\n"
"smoothstep(0, 2, 2.0) # Returns 1.0\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1111
+#: modules/gdscript/doc_classes/@GDScript.xml:1127
msgid ""
-"Returns the square root of [code]s[/code].\n"
+"Returns the square root of [code]s[/code], where [code]s[/code] is a non-"
+"negative number.\n"
"[codeblock]\n"
"sqrt(9) # Returns 3\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b]Negative values of [code]s[/code] return NaN. If you need "
+"negative inputs, use [code]System.Numerics.Complex[/code] in C#."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1123
+#: modules/gdscript/doc_classes/@GDScript.xml:1140
msgid ""
"Returns the position of the first non-zero digit, after the decimal point. "
"Note that the maximum return value is 10, which is a design decision in the "
@@ -928,7 +1023,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1142
+#: modules/gdscript/doc_classes/@GDScript.xml:1159
msgid ""
"Snaps float value [code]s[/code] to a given [code]step[/code]. This can also "
"be used to round a floating point number to an arbitrary number of "
@@ -939,7 +1034,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1153
+#: modules/gdscript/doc_classes/@GDScript.xml:1170
msgid ""
"Converts one or more arguments to string in the best way possible.\n"
"[codeblock]\n"
@@ -950,7 +1045,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1168
+#: modules/gdscript/doc_classes/@GDScript.xml:1185
msgid ""
"Converts a formatted string that was returned by [method var2str] to the "
"original value.\n"
@@ -961,7 +1056,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1182
+#: modules/gdscript/doc_classes/@GDScript.xml:1199
msgid ""
"Returns the tangent of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -969,7 +1064,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1194
+#: modules/gdscript/doc_classes/@GDScript.xml:1211
msgid ""
"Returns the hyperbolic tangent of [code]s[/code].\n"
"[codeblock]\n"
@@ -978,18 +1073,25 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1207
+#: modules/gdscript/doc_classes/@GDScript.xml:1224
msgid ""
-"Converts a Variant [code]var[/code] to JSON text and return the result. "
+"Converts a [Variant] [code]var[/code] to JSON text and return the result. "
"Useful for serializing data to store or send over the network.\n"
"[codeblock]\n"
+"# Both numbers below are integers.\n"
"a = { \"a\": 1, \"b\": 2 }\n"
"b = to_json(a)\n"
"print(b) # {\"a\":1, \"b\":2}\n"
-"[/codeblock]"
+"# Both numbers above are floats, even if they display without any decimal "
+"places.\n"
+"[/codeblock]\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, converting a [Variant] to JSON "
+"text will convert all numerical values to [float] types.\n"
+"See also [JSON] for an alternative way to convert a [Variant] to JSON text."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1221
+#: modules/gdscript/doc_classes/@GDScript.xml:1242
msgid ""
"Returns whether the given class exists in [ClassDB].\n"
"[codeblock]\n"
@@ -998,7 +1100,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1234
+#: modules/gdscript/doc_classes/@GDScript.xml:1255
msgid ""
"Returns the internal type of the given Variant object, using the [enum "
"Variant.Type] values.\n"
@@ -1011,7 +1113,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1250
+#: modules/gdscript/doc_classes/@GDScript.xml:1271
msgid ""
"Checks that [code]json[/code] is valid JSON data. Returns an empty string if "
"valid, or an error message otherwise.\n"
@@ -1019,20 +1121,20 @@ msgid ""
"j = to_json([1, 2, 3])\n"
"v = validate_json(j)\n"
"if not v:\n"
-" print(\"valid\")\n"
+" print(\"Valid JSON.\")\n"
"else:\n"
-" prints(\"invalid\", v)\n"
+" push_error(\"Invalid JSON: \" + v)\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1269
+#: modules/gdscript/doc_classes/@GDScript.xml:1290
msgid ""
"Encodes a variable value to a byte array. When [code]full_objects[/code] is "
"[code]true[/code] encoding objects is allowed (and can potentially include "
"code)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1278
+#: modules/gdscript/doc_classes/@GDScript.xml:1299
msgid ""
"Converts a Variant [code]var[/code] to a formatted string that can later be "
"parsed using [method str2var].\n"
@@ -1049,7 +1151,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1298
+#: modules/gdscript/doc_classes/@GDScript.xml:1319
msgid ""
"Returns a weak reference to an object.\n"
"A weak reference to an object is not enough to keep the object alive: when "
@@ -1059,135 +1161,67 @@ msgid ""
"reference may return the object even if there are no strong references to it."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1312
+#: modules/gdscript/doc_classes/@GDScript.xml:1333
msgid ""
"Wraps float [code]value[/code] between [code]min[/code] and [code]max[/"
"code].\n"
"Usable for creating loop-alike behavior or infinite surfaces.\n"
"[codeblock]\n"
-"# a is 0.5\n"
-"a = wrapf(10.5, 0.0, 10.0)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# a is 9.5\n"
-"a = wrapf(-0.5, 0.0, 10.0)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# Infinite loop between 0.0 and 0.99\n"
-"f = wrapf(f + 0.1, 0.0, 1.0)\n"
+"# Infinite loop between 5.0 and 9.9\n"
+"value = wrapf(value + 0.1, 5.0, 10.0)\n"
"[/codeblock]\n"
"[codeblock]\n"
"# Infinite rotation (in radians)\n"
"angle = wrapf(angle + 0.1, 0.0, TAU)\n"
"[/codeblock]\n"
-"[b]Note:[/b] If you just want to wrap between 0.0 and [code]n[/code] (where "
-"[code]n[/code] is a positive floating-point value), it is better for "
-"performance to use the [method fmod] method like [code]fmod(number, n)[/"
-"code].\n"
-"[code]wrapf[/code] is more flexible than using the [method fmod] approach by "
-"giving the user a simple control over the minimum value. It also fully "
-"supports negative numbers, e.g.\n"
"[codeblock]\n"
"# Infinite rotation (in radians)\n"
"angle = wrapf(angle + 0.1, -PI, PI)\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] If [code]min[/code] is [code]0[/code], this is equivalent to "
+"[method fposmod], so prefer using that instead.\n"
+"[code]wrapf[/code] is more flexible than using the [method fposmod] approach "
+"by giving the user control over the minimum value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1348
+#: modules/gdscript/doc_classes/@GDScript.xml:1361
msgid ""
"Wraps integer [code]value[/code] between [code]min[/code] and [code]max[/"
"code].\n"
"Usable for creating loop-alike behavior or infinite surfaces.\n"
"[codeblock]\n"
-"# a is 0\n"
-"a = wrapi(10, 0, 10)\n"
+"# Infinite loop between 5 and 9\n"
+"frame = wrapi(frame + 1, 5, 10)\n"
"[/codeblock]\n"
"[codeblock]\n"
-"# a is 9\n"
-"a = wrapi(-1, 0, 10)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# Infinite loop between 0 and 9\n"
-"frame = wrapi(frame + 1, 0, 10)\n"
-"[/codeblock]\n"
-"[b]Note:[/b] If you just want to wrap between 0 and [code]n[/code] (where "
-"[code]n[/code] is a positive integer value), it is better for performance to "
-"use the modulo operator like [code]number % n[/code].\n"
-"[code]wrapi[/code] is more flexible than using the modulo approach by giving "
-"the user a simple control over the minimum value. It also fully supports "
-"negative numbers, e.g.\n"
-"[codeblock]\n"
"# result is -2\n"
"var result = wrapi(-6, -5, -1)\n"
-"[/codeblock]"
-msgstr ""
-
-#: modules/gdscript/doc_classes/@GDScript.xml:1378
-msgid ""
-"Stops the function execution and returns the current suspended state to the "
-"calling function.\n"
-"From the caller, call [method GDScriptFunctionState.resume] on the state to "
-"resume execution. This invalidates the state. Within the resumed function, "
-"[code]yield()[/code] returns whatever was passed to the [code]resume()[/"
-"code] function call.\n"
-"If passed an object and a signal, the execution is resumed when the object "
-"emits the given signal. In this case, [code]yield()[/code] returns the "
-"argument passed to [code]emit_signal()[/code] if the signal takes only one "
-"argument, or an array containing all the arguments passed to "
-"[code]emit_signal()[/code] if the signal takes multiple arguments.\n"
-"You can also use [code]yield[/code] to wait for a function to finish:\n"
-"[codeblock]\n"
-"func _ready():\n"
-" yield(countdown(), \"completed\") # waiting for the countdown() function "
-"to complete\n"
-" print('Ready')\n"
-"\n"
-"func countdown():\n"
-" yield(get_tree(), \"idle_frame\") # returns a GDScriptFunctionState "
-"object to _ready()\n"
-" print(3)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-" print(2)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-" print(1)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-"\n"
-"# prints:\n"
-"# 3\n"
-"# 2\n"
-"# 1\n"
-"# Ready\n"
"[/codeblock]\n"
-"When yielding on a function, the [code]completed[/code] signal will be "
-"emitted automatically when the function returns. It can, therefore, be used "
-"as the [code]signal[/code] parameter of the [code]yield[/code] method to "
-"resume.\n"
-"In order to yield on a function, the resulting function should also return a "
-"[code]GDScriptFunctionState[/code]. Notice [code]yield(get_tree(), "
-"\"idle_frame\")[/code] from the above example."
+"[b]Note:[/b] If [code]min[/code] is [code]0[/code], this is equivalent to "
+"[method posmod], so prefer using that instead.\n"
+"[code]wrapi[/code] is more flexible than using the [method posmod] approach "
+"by giving the user control over the minimum value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1409
+#: modules/gdscript/doc_classes/@GDScript.xml:1378
msgid ""
"Constant that represents how many times the diameter of a circle fits around "
-"its perimeter."
+"its perimeter. This is equivalent to [code]TAU / 2[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1412
-msgid "The circle constant, the circumference of the unit circle."
+#: modules/gdscript/doc_classes/@GDScript.xml:1381
+msgid "The circle constant, the circumference of the unit circle in radians."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1415
-msgid "A positive infinity. (For negative infinity, use -INF)."
+#: modules/gdscript/doc_classes/@GDScript.xml:1384
+msgid "Positive infinity. For negative infinity, use -INF."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1418
+#: modules/gdscript/doc_classes/@GDScript.xml:1387
msgid ""
-"Macro constant that expands to an expression of type float that represents a "
-"NaN.\n"
-"The NaN values are used to identify undefined or non-representable values "
-"for floating-point elements, such as the square root of negative numbers or "
-"the result of 0/0."
+"\"Not a Number\", an invalid value. [code]NaN[/code] has special properties, "
+"including that it is not equal to itself. It is output by some invalid "
+"operations, such as dividing zero by zero."
msgstr ""
#: doc/classes/@GlobalScope.xml:4
@@ -3423,130 +3457,141 @@ msgid ""
msgstr ""
#: doc/classes/AABB.xml:10 doc/classes/Plane.xml:10 doc/classes/Rect2.xml:11
-#: doc/classes/Rect2i.xml:11 doc/classes/Transform.xml:10
+#: doc/classes/Rect2i.xml:11 doc/classes/Transform.xml:11
#: doc/classes/Vector2.xml:12 doc/classes/Vector2i.xml:12
#: doc/classes/Vector3.xml:12 doc/classes/Vector3i.xml:12
msgid "https://docs.godotengine.org/en/latest/tutorials/math/index.html"
msgstr ""
#: doc/classes/AABB.xml:21
-msgid "Optional constructor, accepts position and size."
+msgid "Constructs an [AABB] from a position and size."
+msgstr ""
+
+#: doc/classes/AABB.xml:28
+msgid ""
+"Returns an AABB with equivalent position and size, modified so that the most-"
+"negative corner is the origin and the size is positive."
msgstr ""
-#: doc/classes/AABB.xml:30
+#: doc/classes/AABB.xml:37
msgid ""
"Returns [code]true[/code] if this [AABB] completely encloses another one."
msgstr ""
-#: doc/classes/AABB.xml:39
+#: doc/classes/AABB.xml:46
msgid "Returns this [AABB] expanded to include a given point."
msgstr ""
-#: doc/classes/AABB.xml:46
+#: doc/classes/AABB.xml:53
msgid "Returns the volume of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:55
+#: doc/classes/AABB.xml:62
msgid "Gets the position of the 8 endpoints of the [AABB] in space."
msgstr ""
-#: doc/classes/AABB.xml:62
+#: doc/classes/AABB.xml:69
msgid "Returns the normalized longest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:69
+#: doc/classes/AABB.xml:76
msgid ""
"Returns the index of the longest axis of the [AABB] (according to "
"[Vector3]'s [code]AXIS_*[/code] constants)."
msgstr ""
-#: doc/classes/AABB.xml:76
+#: doc/classes/AABB.xml:83
msgid "Returns the scalar length of the longest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:83
+#: doc/classes/AABB.xml:90
msgid "Returns the normalized shortest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:90
+#: doc/classes/AABB.xml:97
msgid ""
"Returns the index of the shortest axis of the [AABB] (according to "
"[Vector3]::AXIS* enum)."
msgstr ""
-#: doc/classes/AABB.xml:97
+#: doc/classes/AABB.xml:104
msgid "Returns the scalar length of the shortest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:106
+#: doc/classes/AABB.xml:113
msgid ""
"Returns the support point in a given direction. This is useful for collision "
"detection algorithms."
msgstr ""
-#: doc/classes/AABB.xml:115
+#: doc/classes/AABB.xml:122
msgid ""
"Returns a copy of the [AABB] grown a given amount of units towards all the "
"sides."
msgstr ""
-#: doc/classes/AABB.xml:122
+#: doc/classes/AABB.xml:129
msgid "Returns [code]true[/code] if the [AABB] is flat or empty."
msgstr ""
-#: doc/classes/AABB.xml:129
+#: doc/classes/AABB.xml:136
msgid "Returns [code]true[/code] if the [AABB] is empty."
msgstr ""
-#: doc/classes/AABB.xml:138
+#: doc/classes/AABB.xml:145
msgid "Returns [code]true[/code] if the [AABB] contains a point."
msgstr ""
-#: doc/classes/AABB.xml:147
+#: doc/classes/AABB.xml:154
msgid ""
"Returns the intersection between two [AABB]. An empty AABB (size 0,0,0) is "
"returned on failure."
msgstr ""
-#: doc/classes/AABB.xml:156
+#: doc/classes/AABB.xml:163
msgid "Returns [code]true[/code] if the [AABB] overlaps with another."
msgstr ""
-#: doc/classes/AABB.xml:165
+#: doc/classes/AABB.xml:172
msgid "Returns [code]true[/code] if the [AABB] is on both sides of a plane."
msgstr ""
-#: doc/classes/AABB.xml:176
+#: doc/classes/AABB.xml:183
msgid ""
"Returns [code]true[/code] if the [AABB] intersects the line segment between "
"[code]from[/code] and [code]to[/code]."
msgstr ""
-#: doc/classes/AABB.xml:185
+#: doc/classes/AABB.xml:192
msgid ""
"Returns [code]true[/code] if this [AABB] and [code]aabb[/code] are "
"approximately equal, by calling [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/AABB.xml:194
+#: doc/classes/AABB.xml:201
msgid ""
"Returns a larger [AABB] that contains both this [AABB] and [code]with[/code]."
msgstr ""
-#: doc/classes/AABB.xml:200
+#: doc/classes/AABB.xml:207 doc/classes/Rect2.xml:174
+#: doc/classes/Rect2i.xml:163
msgid ""
-"Ending corner. This is calculated as [code]position + size[/code]. Changing "
-"this property changes [member size] accordingly."
+"Ending corner. This is calculated as [code]position + size[/code]. Setting "
+"this value will change the size."
msgstr ""
-#: doc/classes/AABB.xml:203
-msgid "Beginning corner."
+#: doc/classes/AABB.xml:210 doc/classes/Rect2.xml:177
+#: doc/classes/Rect2i.xml:166
+msgid "Beginning corner. Typically has values lower than [member end]."
msgstr ""
-#: doc/classes/AABB.xml:206 doc/classes/Rect2.xml:180
+#: doc/classes/AABB.xml:213 doc/classes/Rect2.xml:180
#: doc/classes/Rect2i.xml:169
-msgid "Size from position to end."
+msgid ""
+"Size from [member position] to [member end]. Typically all components are "
+"positive.\n"
+"If the size is negative, you can use [method abs] to fix it."
msgstr ""
#: doc/classes/AcceptDialog.xml:4
@@ -3610,11 +3655,11 @@ msgstr ""
msgid "The text displayed by the dialog."
msgstr ""
-#: doc/classes/AcceptDialog.xml:82
+#: doc/classes/AcceptDialog.xml:83
msgid "Emitted when the dialog is accepted, i.e. the OK button is pressed."
msgstr ""
-#: doc/classes/AcceptDialog.xml:89
+#: doc/classes/AcceptDialog.xml:90
msgid "Emitted when a custom button is pressed. See [method add_button]."
msgstr ""
@@ -3667,7 +3712,7 @@ msgstr ""
#: doc/classes/AESContext.xml:54
msgid ""
"Get the current IV state for this context (IV gets updated when calling "
-"[method update]). You normally don't need this funciton.\n"
+"[method update]). You normally don't need this function.\n"
"Note: This function only makes sense when the context is started with "
"[constant MODE_CBC_ENCRYPT] or [constant MODE_CBC_DECRYPT]."
msgstr ""
@@ -3745,12 +3790,14 @@ msgid "If [code]true[/code], texture will be centered."
msgstr ""
#: doc/classes/AnimatedSprite2D.xml:46 doc/classes/Sprite2D.xml:41
-#: doc/classes/SpriteBase3D.xml:61 doc/classes/TextureRect.xml:18
+#: doc/classes/SpriteBase3D.xml:61 doc/classes/TextureButton.xml:19
+#: doc/classes/TextureRect.xml:18
msgid "If [code]true[/code], texture is flipped horizontally."
msgstr ""
#: doc/classes/AnimatedSprite2D.xml:49 doc/classes/Sprite2D.xml:44
-#: doc/classes/SpriteBase3D.xml:64 doc/classes/TextureRect.xml:21
+#: doc/classes/SpriteBase3D.xml:64 doc/classes/TextureButton.xml:22
+#: doc/classes/TextureRect.xml:21
msgid "If [code]true[/code], texture is flipped vertically."
msgstr ""
@@ -3917,10 +3964,10 @@ msgid ""
"[codeblock]\n"
"# This creates an animation that makes the node \"Enemy\" move to the right "
"by\n"
-"# 100 pixels in 1 second.\n"
+"# 100 pixels in 0.5 seconds.\n"
"var animation = Animation.new()\n"
"var track_index = animation.add_track(Animation.TYPE_VALUE)\n"
-"animation.track_set_path(track_index, \"Enemy:position.x\")\n"
+"animation.track_set_path(track_index, \"Enemy:position:x\")\n"
"animation.track_insert_key(track_index, 0.0, 0)\n"
"animation.track_insert_key(track_index, 0.5, 100)\n"
"[/codeblock]\n"
@@ -6048,10 +6095,10 @@ msgstr ""
msgid ""
"Returns [code]true[/code] if the array contains the given value.\n"
"[codeblock]\n"
-"[\"inside\", 7].has(\"inside\") == true\n"
-"[\"inside\", 7].has(\"outside\") == false\n"
-"[\"inside\", 7].has(7) == true\n"
-"[\"inside\", 7].has(\"7\") == false\n"
+"print([\"inside\", 7].has(\"inside\")) # True\n"
+"print([\"inside\", 7].has(\"outside\")) # False\n"
+"print([\"inside\", 7].has(7)) # True\n"
+"print([\"inside\", 7].has(\"7\")) # False\n"
"[/codeblock]\n"
"[b]Note:[/b] This is equivalent to using the [code]in[/code] operator as "
"follows:\n"
@@ -6072,11 +6119,11 @@ msgid ""
"valid, or at the end of the array ([code]pos == size()[/code])."
msgstr ""
-#: doc/classes/Array.xml:265 doc/classes/PackedByteArray.xml:107
-#: doc/classes/PackedColorArray.xml:62 doc/classes/PackedFloat32Array.xml:63
-#: doc/classes/PackedFloat64Array.xml:63 doc/classes/PackedInt32Array.xml:63
-#: doc/classes/PackedInt64Array.xml:63 doc/classes/PackedStringArray.xml:62
-#: doc/classes/PackedVector2Array.xml:62 doc/classes/PackedVector3Array.xml:62
+#: doc/classes/Array.xml:265 doc/classes/PackedByteArray.xml:116
+#: doc/classes/PackedColorArray.xml:71 doc/classes/PackedFloat32Array.xml:72
+#: doc/classes/PackedFloat64Array.xml:72 doc/classes/PackedInt32Array.xml:72
+#: doc/classes/PackedInt64Array.xml:72 doc/classes/PackedStringArray.xml:71
+#: doc/classes/PackedVector2Array.xml:71 doc/classes/PackedVector3Array.xml:71
msgid "Reverses the order of the elements in the array."
msgstr ""
@@ -6106,8 +6153,8 @@ msgid ""
"code] if the array is empty."
msgstr ""
-#: doc/classes/Array.xml:302 doc/classes/PackedByteArray.xml:116
-#: doc/classes/PackedFloat32Array.xml:72 doc/classes/PackedFloat64Array.xml:72
+#: doc/classes/Array.xml:302 doc/classes/PackedByteArray.xml:125
+#: doc/classes/PackedFloat32Array.xml:81 doc/classes/PackedFloat64Array.xml:81
msgid "Appends an element at the end of the array."
msgstr ""
@@ -6115,11 +6162,11 @@ msgstr ""
msgid "Adds an element at the beginning of the array."
msgstr ""
-#: doc/classes/Array.xml:320 doc/classes/PackedByteArray.xml:125
-#: doc/classes/PackedColorArray.xml:80 doc/classes/PackedFloat32Array.xml:81
-#: doc/classes/PackedFloat64Array.xml:81 doc/classes/PackedInt32Array.xml:81
-#: doc/classes/PackedInt64Array.xml:81 doc/classes/PackedStringArray.xml:80
-#: doc/classes/PackedVector2Array.xml:80 doc/classes/PackedVector3Array.xml:80
+#: doc/classes/Array.xml:320 doc/classes/PackedByteArray.xml:134
+#: doc/classes/PackedColorArray.xml:89 doc/classes/PackedFloat32Array.xml:90
+#: doc/classes/PackedFloat64Array.xml:90 doc/classes/PackedInt32Array.xml:90
+#: doc/classes/PackedInt64Array.xml:90 doc/classes/PackedStringArray.xml:89
+#: doc/classes/PackedVector2Array.xml:89 doc/classes/PackedVector3Array.xml:89
msgid "Removes an element from the array by index."
msgstr ""
@@ -6402,7 +6449,7 @@ msgid ""
msgstr ""
#: doc/classes/ArrayMesh.xml:235 doc/classes/Mesh.xml:210
-#: doc/classes/RenderingServer.xml:3115
+#: doc/classes/RenderingServer.xml:3111
msgid "Represents the size of the [enum ArrayType] enum."
msgstr ""
@@ -8219,7 +8266,9 @@ msgid ""
msgstr ""
#: doc/classes/BaseButton.xml:16
-msgid "Called when the button is pressed."
+msgid ""
+"Called when the button is pressed. If you need to know the button's pressed "
+"state (and [member toggle_mode] is active), use [method _toggled] instead."
msgstr ""
#: doc/classes/BaseButton.xml:25
@@ -8313,43 +8362,45 @@ msgstr ""
msgid ""
"Emitted when the button is toggled or pressed. This is on [signal "
"button_down] if [member action_mode] is [constant ACTION_MODE_BUTTON_PRESS] "
-"and on [signal button_up] otherwise."
+"and on [signal button_up] otherwise.\n"
+"If you need to know the button's pressed state (and [member toggle_mode] is "
+"active), use [signal toggled] instead."
msgstr ""
-#: doc/classes/BaseButton.xml:98
+#: doc/classes/BaseButton.xml:99
msgid ""
"Emitted when the button was just toggled between pressed and normal states "
"(only if [member toggle_mode] is active). The new state is contained in the "
"[code]button_pressed[/code] argument."
msgstr ""
-#: doc/classes/BaseButton.xml:104
+#: doc/classes/BaseButton.xml:105
msgid ""
"The normal state (i.e. not pressed, not hovered, not toggled and enabled) of "
"buttons."
msgstr ""
-#: doc/classes/BaseButton.xml:107
+#: doc/classes/BaseButton.xml:108
msgid "The state of buttons are pressed."
msgstr ""
-#: doc/classes/BaseButton.xml:110
+#: doc/classes/BaseButton.xml:111
msgid "The state of buttons are hovered."
msgstr ""
-#: doc/classes/BaseButton.xml:113
+#: doc/classes/BaseButton.xml:114
msgid "The state of buttons are disabled."
msgstr ""
-#: doc/classes/BaseButton.xml:116
+#: doc/classes/BaseButton.xml:117
msgid "The state of buttons are both hovered and pressed."
msgstr ""
-#: doc/classes/BaseButton.xml:119
+#: doc/classes/BaseButton.xml:120
msgid "Require just a press to consider the button clicked."
msgstr ""
-#: doc/classes/BaseButton.xml:122
+#: doc/classes/BaseButton.xml:123
msgid ""
"Require a press and a subsequent release before considering the button "
"clicked."
@@ -9042,22 +9093,22 @@ msgstr ""
msgid "Represents the size of the [enum TextureParam] enum."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:451 doc/classes/RenderingServer.xml:3657
-#: doc/classes/Viewport.xml:390
+#: doc/classes/BaseMaterial3D.xml:451 doc/classes/RenderingServer.xml:3668
+#: doc/classes/Viewport.xml:393
msgid ""
"The texture filter reads from the nearest pixel only. The simplest and "
"fastest method of filtering, but the texture will look pixelized."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:454 doc/classes/RenderingServer.xml:3660
-#: doc/classes/Viewport.xml:393
+#: doc/classes/BaseMaterial3D.xml:454 doc/classes/RenderingServer.xml:3671
+#: doc/classes/Viewport.xml:396
msgid ""
"The texture filter blends between the nearest 4 pixels. Use this when you "
"want to avoid a pixelated style, but do not want mipmaps."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:457 doc/classes/RenderingServer.xml:3663
-#: doc/classes/Viewport.xml:396
+#: doc/classes/BaseMaterial3D.xml:457 doc/classes/RenderingServer.xml:3674
+#: doc/classes/Viewport.xml:399
msgid ""
"The texture filter reads from the nearest pixel in the nearest mipmap. The "
"fastest way to read from textures with mipmaps."
@@ -9070,14 +9121,14 @@ msgid ""
"smooth out pixels that are far from the camera."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:463 doc/classes/RenderingServer.xml:3669
+#: doc/classes/BaseMaterial3D.xml:463 doc/classes/RenderingServer.xml:3680
msgid ""
"The texture filter reads from the nearest pixel, but selects a mipmap based "
"on the angle between the surface and the camera view. This reduces artifacts "
"on surfaces that are almost in line with the camera."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:466 doc/classes/RenderingServer.xml:3672
+#: doc/classes/BaseMaterial3D.xml:466 doc/classes/RenderingServer.xml:3683
msgid ""
"The texture filter blends between the nearest 4 pixels and selects a mipmap "
"based on the angle between the surface and the camera view. This reduces "
@@ -9086,7 +9137,7 @@ msgid ""
"texturing."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:469 doc/classes/CanvasItem.xml:685
+#: doc/classes/BaseMaterial3D.xml:469 doc/classes/CanvasItem.xml:695
msgid "Represents the size of the [enum TextureFilter] enum."
msgstr ""
@@ -9309,8 +9360,8 @@ msgstr ""
msgid "Enables the shadow to opacity feature."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:622 doc/classes/RenderingServer.xml:3684
-#: doc/classes/Viewport.xml:408
+#: doc/classes/BaseMaterial3D.xml:622 doc/classes/RenderingServer.xml:3695
+#: doc/classes/Viewport.xml:411
msgid ""
"Enables the texture to repeat when UV coordinates are outside the 0-1 range. "
"If using one of the linear filtering modes, this can result in artifacts at "
@@ -9451,167 +9502,195 @@ msgstr ""
#: doc/classes/Basis.xml:7
msgid ""
-"3×3 matrix used for 3D rotation and scale. Contains 3 vector fields X, Y and "
-"Z as its columns, which can be interpreted as the local basis vectors of a "
-"transformation. Can also be accessed as array of 3D vectors. These vectors "
-"are orthogonal to each other, but are not necessarily normalized (due to "
-"scaling). Almost always used as an orthogonal basis for a [Transform].\n"
-"For such use, it is composed of a scaling and a rotation matrix, in that "
-"order (M = R.S)."
+"3×3 matrix used for 3D rotation and scale. Almost always used as an "
+"orthogonal basis for a Transform.\n"
+"Contains 3 vector fields X, Y and Z as its columns, which are typically "
+"interpreted as the local basis vectors of a transformation. For such use, it "
+"is composed of a scaling and a rotation matrix, in that order (M = R.S).\n"
+"Can also be accessed as array of 3D vectors. These vectors are normally "
+"orthogonal to each other, but are not necessarily normalized (due to "
+"scaling).\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
msgstr ""
-#: doc/classes/Basis.xml:11 doc/classes/Transform.xml:11
+#: doc/classes/Basis.xml:13 doc/classes/Transform.xml:12
+#: doc/classes/Transform2D.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/math/"
+"matrices_and_transforms.html"
+msgstr ""
+
+#: doc/classes/Basis.xml:14 doc/classes/Transform.xml:13
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/using_transforms.html"
msgstr ""
-#: doc/classes/Basis.xml:20
-msgid "Create a rotation matrix from the given quaternion."
+#: doc/classes/Basis.xml:23
+msgid "Constructs a pure rotation basis matrix from the given quaternion."
msgstr ""
-#: doc/classes/Basis.xml:29
+#: doc/classes/Basis.xml:32
msgid ""
-"Create a rotation matrix (in the YXZ convention: first Z, then X, and Y "
-"last) from the specified Euler angles, given in the vector format as (X "
-"angle, Y angle, Z angle)."
+"Constructs a pure rotation basis matrix from the given Euler angles (in the "
+"YXZ convention: when *composing*, first Y, then X, and Z last), given in the "
+"vector format as (X angle, Y angle, Z angle).\n"
+"Consider using the [Quat] constructor instead, which uses a quaternion "
+"instead of Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:40
+#: doc/classes/Basis.xml:44
msgid ""
-"Create a rotation matrix which rotates around the given axis by the "
-"specified angle, in radians. The axis must be a normalized vector."
+"Constructs a pure rotation basis matrix, rotated around the given "
+"[code]axis[/code] by [code]phi[/code], in radians. The axis must be a "
+"normalized vector."
msgstr ""
-#: doc/classes/Basis.xml:53
-msgid "Create a matrix from 3 axis vectors."
+#: doc/classes/Basis.xml:57
+msgid "Constructs a basis matrix from 3 axis vectors (matrix columns)."
msgstr ""
-#: doc/classes/Basis.xml:60
-msgid "Returns the determinant of the matrix."
+#: doc/classes/Basis.xml:64
+msgid ""
+"Returns the determinant of the basis matrix. If the basis is uniformly "
+"scaled, its determinant is the square of the scale.\n"
+"A negative determinant means the basis has a negative scale. A zero "
+"determinant means the basis isn't invertible, and is usually considered "
+"invalid."
msgstr ""
-#: doc/classes/Basis.xml:67
+#: doc/classes/Basis.xml:72
msgid ""
"Returns the basis's rotation in the form of Euler angles (in the YXZ "
-"convention: first Z, then X, and Y last). The returned vector contains the "
-"rotation angles in the format (X angle, Y angle, Z angle). See [method "
-"get_rotation_quat] if you need a quaternion instead."
+"convention: when decomposing, first Z, then X, and Y last). The returned "
+"vector contains the rotation angles in the format (X angle, Y angle, Z "
+"angle).\n"
+"Consider using the [method get_rotation_quat] method instead, which returns "
+"a [Quat] quaternion instead of Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:74
+#: doc/classes/Basis.xml:80
msgid ""
"This function considers a discretization of rotations into 24 points on unit "
"sphere, lying along the vectors (x,y,z) with each component being either -1, "
"0, or 1, and returns the index of the point best representing the "
-"orientation of the object. It is mainly used by the grid map editor. For "
+"orientation of the object. It is mainly used by the [GridMap] editor. For "
"further details, refer to the Godot source code."
msgstr ""
-#: doc/classes/Basis.xml:81
+#: doc/classes/Basis.xml:87
msgid ""
"Returns the basis's rotation in the form of a quaternion. See [method "
"get_euler] if you need Euler angles, but keep in mind quaternions should "
"generally be preferred to Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:88
+#: doc/classes/Basis.xml:94
msgid ""
"Assuming that the matrix is the combination of a rotation and scaling, "
"return the absolute value of scaling factors along each axis."
msgstr ""
-#: doc/classes/Basis.xml:95 doc/classes/Transform2D.xml:49
+#: doc/classes/Basis.xml:101
msgid "Returns the inverse of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:106
+#: doc/classes/Basis.xml:112
msgid ""
"Returns [code]true[/code] if this basis and [code]b[/code] are approximately "
"equal, by calling [code]is_equal_approx[/code] on each component."
msgstr ""
-#: doc/classes/Basis.xml:113
+#: doc/classes/Basis.xml:119
msgid ""
"Returns the orthonormalized version of the matrix (useful to call from time "
"to time to avoid rounding error for orthogonal matrices). This performs a "
"Gram-Schmidt orthonormalization on the basis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:124
+#: doc/classes/Basis.xml:130
msgid ""
"Introduce an additional rotation around the given axis by phi (radians). The "
"axis must be a normalized vector."
msgstr ""
-#: doc/classes/Basis.xml:133
+#: doc/classes/Basis.xml:139
msgid ""
"Introduce an additional scaling specified by the given 3D scaling factor."
msgstr ""
-#: doc/classes/Basis.xml:144
+#: doc/classes/Basis.xml:150
msgid ""
"Assuming that the matrix is a proper rotation matrix, slerp performs a "
"spherical-linear interpolation with another rotation matrix."
msgstr ""
-#: doc/classes/Basis.xml:153
+#: doc/classes/Basis.xml:159
msgid "Transposed dot product with the X axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:162
+#: doc/classes/Basis.xml:168
msgid "Transposed dot product with the Y axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:171
+#: doc/classes/Basis.xml:177
msgid "Transposed dot product with the Z axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:178
+#: doc/classes/Basis.xml:184
msgid "Returns the transposed version of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:187
+#: doc/classes/Basis.xml:193
msgid "Returns a vector transformed (multiplied) by the matrix."
msgstr ""
-#: doc/classes/Basis.xml:196
+#: doc/classes/Basis.xml:202
msgid ""
-"Returns a vector transformed (multiplied) by the transposed matrix.\n"
+"Returns a vector transformed (multiplied) by the transposed basis matrix.\n"
"[b]Note:[/b] This results in a multiplication by the inverse of the matrix "
"only if it represents a rotation-reflection."
msgstr ""
-#: doc/classes/Basis.xml:203
-msgid "The basis matrix's X vector."
+#: doc/classes/Basis.xml:209 doc/classes/Transform2D.xml:181
+msgid ""
+"The basis matrix's X vector (column 0). Equivalent to array index [code]0[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:206
-msgid "The basis matrix's Y vector."
+#: doc/classes/Basis.xml:212 doc/classes/Transform2D.xml:184
+msgid ""
+"The basis matrix's Y vector (column 1). Equivalent to array index [code]1[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:209
-msgid "The basis matrix's Z vector."
+#: doc/classes/Basis.xml:215
+msgid ""
+"The basis matrix's Z vector (column 2). Equivalent to array index [code]2[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:214
+#: doc/classes/Basis.xml:220
msgid ""
-"The identity basis. This is identical to calling [code]Basis()[/code] "
-"without any parameters. This constant can be used to make your code clearer."
+"The identity basis, with no rotation or scaling applied.\n"
+"This is identical to calling [code]Basis()[/code] without any parameters. "
+"This constant can be used to make your code clearer, and for consistency "
+"with C#."
msgstr ""
-#: doc/classes/Basis.xml:217
+#: doc/classes/Basis.xml:224
msgid ""
"The basis that will flip something along the X axis when used in a "
"transformation."
msgstr ""
-#: doc/classes/Basis.xml:220
+#: doc/classes/Basis.xml:227
msgid ""
"The basis that will flip something along the Y axis when used in a "
"transformation."
msgstr ""
-#: doc/classes/Basis.xml:223
+#: doc/classes/Basis.xml:230
msgid ""
"The basis that will flip something along the Z axis when used in a "
"transformation."
@@ -9924,97 +10003,111 @@ msgstr ""
#: doc/classes/Button.xml:7
msgid ""
"Button is the standard themed button. It can contain text and an icon, and "
-"will display them according to the current [Theme]."
+"will display them according to the current [Theme].\n"
+"[b]Example of creating a button and assigning an action when pressed by code:"
+"[/b]\n"
+"[codeblock]\n"
+"func _ready():\n"
+" var button = Button.new()\n"
+" button.text = \"Click me\"\n"
+" button.connect(\"pressed\", self, \"_button_pressed\")\n"
+" add_child(button)\n"
+"\n"
+"func _button_pressed():\n"
+" print(\"Hello world!\")\n"
+"[/codeblock]\n"
+"Buttons (like all Control nodes) can also be created in the editor, but some "
+"situations may require creating them from code."
msgstr ""
-#: doc/classes/Button.xml:15
+#: doc/classes/Button.xml:27
msgid ""
"Text alignment policy for the button's text, use one of the [enum TextAlign] "
"constants."
msgstr ""
-#: doc/classes/Button.xml:18
+#: doc/classes/Button.xml:30
msgid ""
"When this property is enabled, text that is too large to fit the button is "
"clipped, when disabled the Button will always be wide enough to hold the "
"text."
msgstr ""
-#: doc/classes/Button.xml:21
+#: doc/classes/Button.xml:33
msgid ""
"When enabled, the button's icon will expand/shrink to fit the button's size "
"while keeping its aspect."
msgstr ""
-#: doc/classes/Button.xml:24
+#: doc/classes/Button.xml:36
msgid "Flat buttons don't display decoration."
msgstr ""
-#: doc/classes/Button.xml:27
+#: doc/classes/Button.xml:39
msgid ""
"Button's icon, if text is present the icon will be placed before the text."
msgstr ""
-#: doc/classes/Button.xml:30 doc/classes/LinkButton.xml:18
+#: doc/classes/Button.xml:42 doc/classes/LinkButton.xml:18
msgid "The button's text that will be displayed inside the button's area."
msgstr ""
-#: doc/classes/Button.xml:35
+#: doc/classes/Button.xml:47
msgid "Align the text to the left."
msgstr ""
-#: doc/classes/Button.xml:38
+#: doc/classes/Button.xml:50
msgid "Align the text to the center."
msgstr ""
-#: doc/classes/Button.xml:41
+#: doc/classes/Button.xml:53
msgid "Align the text to the right."
msgstr ""
-#: doc/classes/Button.xml:46
+#: doc/classes/Button.xml:58
msgid "[StyleBox] used when the [Button] is disabled."
msgstr ""
-#: doc/classes/Button.xml:49
+#: doc/classes/Button.xml:61
msgid ""
"[StyleBox] used when the [Button] is focused. It is displayed over the "
"current [StyleBox], so using [StyleBoxEmpty] will just disable the focus "
"visual effect."
msgstr ""
-#: doc/classes/Button.xml:52
+#: doc/classes/Button.xml:64
msgid "[Font] of the [Button]'s text."
msgstr ""
-#: doc/classes/Button.xml:55
+#: doc/classes/Button.xml:67
msgid "Default text [Color] of the [Button]."
msgstr ""
-#: doc/classes/Button.xml:58
+#: doc/classes/Button.xml:70
msgid "Text [Color] used when the [Button] is disabled."
msgstr ""
-#: doc/classes/Button.xml:61
+#: doc/classes/Button.xml:73
msgid "Text [Color] used when the [Button] is being hovered."
msgstr ""
-#: doc/classes/Button.xml:64
+#: doc/classes/Button.xml:76
msgid "Text [Color] used when the [Button] is being pressed."
msgstr ""
-#: doc/classes/Button.xml:67
+#: doc/classes/Button.xml:79
msgid "[StyleBox] used when the [Button] is being hovered."
msgstr ""
-#: doc/classes/Button.xml:70
+#: doc/classes/Button.xml:82
msgid "The horizontal space between [Button]'s icon and text."
msgstr ""
-#: doc/classes/Button.xml:73
+#: doc/classes/Button.xml:85
msgid "Default [StyleBox] for the [Button]."
msgstr ""
-#: doc/classes/Button.xml:76
+#: doc/classes/Button.xml:88
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr ""
@@ -10666,7 +10759,7 @@ msgstr ""
#: doc/classes/CameraEffects.xml:37
msgid ""
"The exposure override value to use. Higher values will result in a brighter "
-"scene. Only effective if [member override_exposure_enable] is [code]true[/"
+"scene. Only effective if [member override_exposure_enabled] is [code]true[/"
"code]."
msgstr ""
@@ -10920,265 +11013,282 @@ msgid ""
msgstr ""
#: doc/classes/CanvasItem.xml:319
-msgid "Draws a string using a custom font."
+msgid ""
+"Draws [code]text[/code] using the specified [code]font[/code] at the "
+"[code]position[/code] (top-left corner). The text will have its color "
+"multiplied by [code]modulate[/code]. If [code]clip_w[/code] is greater than "
+"or equal to 0, the text will be clipped if it exceeds the specified width.\n"
+"[b]Example using the default project font:[/b]\n"
+"[codeblock]\n"
+"# If using this method in a script that redraws constantly, move the\n"
+"# `default_font` declaration to a member variable assigned in `_ready()`\n"
+"# so the Control is only created once.\n"
+"var default_font = Control.new().get_font(\"font\")\n"
+"draw_string(default_font, Vector2(64, 64), \"Hello world\")\n"
+"[/codeblock]\n"
+"See also [method Font.draw]."
msgstr ""
-#: doc/classes/CanvasItem.xml:330
+#: doc/classes/CanvasItem.xml:339
msgid "Draws a styled rectangle."
msgstr ""
-#: doc/classes/CanvasItem.xml:353
+#: doc/classes/CanvasItem.xml:362
msgid "Draws a texture at a given position."
msgstr ""
-#: doc/classes/CanvasItem.xml:380
+#: doc/classes/CanvasItem.xml:389
msgid ""
"Draws a textured rectangle at a given position, optionally modulated by a "
"color. If [code]transpose[/code] is [code]true[/code], the texture will have "
"its X and Y coordinates swapped."
msgstr ""
-#: doc/classes/CanvasItem.xml:409
+#: doc/classes/CanvasItem.xml:418
msgid ""
"Draws a textured rectangle region at a given position, optionally modulated "
"by a color. If [code]transpose[/code] is [code]true[/code], the texture will "
"have its X and Y coordinates swapped."
msgstr ""
-#: doc/classes/CanvasItem.xml:416 doc/classes/Node3D.xml:19
+#: doc/classes/CanvasItem.xml:425 doc/classes/Node3D.xml:19
msgid ""
"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."
msgstr ""
-#: doc/classes/CanvasItem.xml:423
+#: doc/classes/CanvasItem.xml:432
msgid "Returns the [RID] of the [World2D] canvas where this item is in."
msgstr ""
-#: doc/classes/CanvasItem.xml:430
+#: doc/classes/CanvasItem.xml:439
msgid "Returns the canvas item RID used by [RenderingServer] for this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:437
+#: doc/classes/CanvasItem.xml:446
msgid "Returns the transform matrix of this item's canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:444
+#: doc/classes/CanvasItem.xml:453
msgid "Returns the global position of the mouse."
msgstr ""
-#: doc/classes/CanvasItem.xml:451
+#: doc/classes/CanvasItem.xml:460
msgid "Returns the global transform matrix of this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:458
+#: doc/classes/CanvasItem.xml:467
msgid ""
"Returns the global transform matrix of this item in relation to the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:465
+#: doc/classes/CanvasItem.xml:474
msgid "Returns the mouse position relative to this item's position."
msgstr ""
-#: doc/classes/CanvasItem.xml:472
+#: doc/classes/CanvasItem.xml:481
msgid "Returns the transform matrix of this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:479
+#: doc/classes/CanvasItem.xml:488
msgid "Returns the viewport's boundaries as a [Rect2]."
msgstr ""
-#: doc/classes/CanvasItem.xml:486
+#: doc/classes/CanvasItem.xml:495
msgid "Returns this item's transform in relation to the viewport."
msgstr ""
-#: doc/classes/CanvasItem.xml:493
+#: doc/classes/CanvasItem.xml:502
msgid "Returns the [World2D] where this item is in."
msgstr ""
-#: doc/classes/CanvasItem.xml:500
+#: doc/classes/CanvasItem.xml:509
msgid "Hide the [CanvasItem] if it's currently visible."
msgstr ""
-#: doc/classes/CanvasItem.xml:507
+#: doc/classes/CanvasItem.xml:516
msgid ""
"Returns [code]true[/code] if local transform notifications are communicated "
"to children."
msgstr ""
-#: doc/classes/CanvasItem.xml:514
+#: doc/classes/CanvasItem.xml:523
msgid ""
"Returns [code]true[/code] if the node is set as top-level. See [method "
"set_as_toplevel]."
msgstr ""
-#: doc/classes/CanvasItem.xml:521
+#: doc/classes/CanvasItem.xml:530
msgid ""
"Returns [code]true[/code] if global transform notifications are communicated "
"to children."
msgstr ""
-#: doc/classes/CanvasItem.xml:528
+#: doc/classes/CanvasItem.xml:537 doc/classes/Node3D.xml:104
msgid ""
"Returns [code]true[/code] if the node is present in the [SceneTree], its "
-"[member visible] property is [code]true[/code] and its inherited visibility "
-"is also [code]true[/code]."
+"[member visible] property is [code]true[/code] and all its antecedents are "
+"also visible. If any antecedent is hidden, this node will not be visible in "
+"the scene tree."
msgstr ""
-#: doc/classes/CanvasItem.xml:537
+#: doc/classes/CanvasItem.xml:546
msgid "Assigns [code]screen_point[/code] as this node's new local transform."
msgstr ""
-#: doc/classes/CanvasItem.xml:546
+#: doc/classes/CanvasItem.xml:555
msgid ""
"Transformations issued by [code]event[/code]'s inputs are applied in local "
"space instead of global space."
msgstr ""
-#: doc/classes/CanvasItem.xml:555
+#: doc/classes/CanvasItem.xml:564
msgid ""
"If [code]enable[/code] is [code]true[/code], the node won't inherit its "
"transform from parent canvas items."
msgstr ""
-#: doc/classes/CanvasItem.xml:564
+#: doc/classes/CanvasItem.xml:573
msgid ""
"If [code]enable[/code] is [code]true[/code], children will be updated with "
"local transform data."
msgstr ""
-#: doc/classes/CanvasItem.xml:573
+#: doc/classes/CanvasItem.xml:582
msgid ""
"If [code]enable[/code] is [code]true[/code], children will be updated with "
"global transform data."
msgstr ""
-#: doc/classes/CanvasItem.xml:580
+#: doc/classes/CanvasItem.xml:589
msgid ""
"Show the [CanvasItem] if it's currently hidden. For controls that inherit "
"[Popup], the correct way to make them visible is to call one of the multiple "
"[code]popup*()[/code] functions instead."
msgstr ""
-#: doc/classes/CanvasItem.xml:587
+#: doc/classes/CanvasItem.xml:596
msgid ""
"Queue the [CanvasItem] for update. [constant NOTIFICATION_DRAW] will be "
"called on idle time to request redraw."
msgstr ""
-#: doc/classes/CanvasItem.xml:593
+#: doc/classes/CanvasItem.xml:602
msgid ""
"The rendering layers in which this [CanvasItem] responds to [Light2D] nodes."
msgstr ""
-#: doc/classes/CanvasItem.xml:596
+#: doc/classes/CanvasItem.xml:605
msgid "The material applied to textures on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:599
+#: doc/classes/CanvasItem.xml:608
msgid "The color applied to textures on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:602
+#: doc/classes/CanvasItem.xml:611
msgid ""
"The color applied to textures on this [CanvasItem]. This is not inherited by "
"children [CanvasItem]s."
msgstr ""
-#: doc/classes/CanvasItem.xml:605
+#: doc/classes/CanvasItem.xml:614
msgid "If [code]true[/code], the object draws behind its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:608
+#: doc/classes/CanvasItem.xml:617
msgid "If [code]true[/code], the object draws on top of its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:611
+#: doc/classes/CanvasItem.xml:620
msgid "The texture filtering mode to use on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:614
+#: doc/classes/CanvasItem.xml:623
msgid "The texture repeating mode to use on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:617
+#: doc/classes/CanvasItem.xml:626
msgid ""
"If [code]true[/code], the parent [CanvasItem]'s [member material] property "
"is used as this one's material."
msgstr ""
-#: doc/classes/CanvasItem.xml:620
+#: doc/classes/CanvasItem.xml:629
msgid ""
-"If [code]true[/code], this [CanvasItem] is drawn. For controls that inherit "
-"[Popup], the correct way to make them visible is to call one of the multiple "
-"[code]popup*()[/code] functions instead."
+"If [code]true[/code], this [CanvasItem] is drawn. The node is only visible "
+"if all of its antecedents are visible as well (in other words, [method "
+"is_visible_in_tree] must return [code]true[/code]).\n"
+"[b]Note:[/b] For controls that inherit [Popup], the correct way to make them "
+"visible is to call one of the multiple [code]popup*()[/code] functions "
+"instead."
msgstr ""
-#: doc/classes/CanvasItem.xml:626
+#: doc/classes/CanvasItem.xml:636
msgid ""
"Emitted when the [CanvasItem] must redraw. This can only be connected "
"realtime, as deferred will not allow drawing."
msgstr ""
-#: doc/classes/CanvasItem.xml:631
+#: doc/classes/CanvasItem.xml:641
msgid "Emitted when becoming hidden."
msgstr ""
-#: doc/classes/CanvasItem.xml:636
+#: doc/classes/CanvasItem.xml:646
msgid "Emitted when the item rect has changed."
msgstr ""
-#: doc/classes/CanvasItem.xml:641
+#: doc/classes/CanvasItem.xml:651
msgid "Emitted when the visibility (hidden/visible) changes."
msgstr ""
-#: doc/classes/CanvasItem.xml:647
+#: doc/classes/CanvasItem.xml:657
msgid ""
"The [CanvasItem]'s transform has changed. This notification is only received "
"if enabled by [method set_notify_transform] or [method "
"set_notify_local_transform]."
msgstr ""
-#: doc/classes/CanvasItem.xml:650
+#: doc/classes/CanvasItem.xml:660
msgid "The [CanvasItem] is requested to draw."
msgstr ""
-#: doc/classes/CanvasItem.xml:653
+#: doc/classes/CanvasItem.xml:663
msgid "The [CanvasItem]'s visibility has changed."
msgstr ""
-#: doc/classes/CanvasItem.xml:656
+#: doc/classes/CanvasItem.xml:666
msgid "The [CanvasItem] has entered the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:659
+#: doc/classes/CanvasItem.xml:669
msgid "The [CanvasItem] has exited the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:662 doc/classes/CanvasItem.xml:688
+#: doc/classes/CanvasItem.xml:672 doc/classes/CanvasItem.xml:698
msgid "The [CanvasItem] will inherit the filter from its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:665
+#: doc/classes/CanvasItem.xml:675
msgid ""
"The texture filter reads from the nearest pixel only. The simplest and "
"fastest method of filtering. Useful for pixel art."
msgstr ""
-#: doc/classes/CanvasItem.xml:668
+#: doc/classes/CanvasItem.xml:678
msgid ""
"The texture filter blends between the nearest four pixels. Use this for most "
"cases where you want to avoid a pixelated style."
msgstr ""
-#: doc/classes/CanvasItem.xml:671
+#: doc/classes/CanvasItem.xml:681
msgid ""
"The texture filter reads from the nearest pixel in the nearest mipmap. This "
"is the fastest way to read from textures with mipmaps."
msgstr ""
-#: doc/classes/CanvasItem.xml:674
+#: doc/classes/CanvasItem.xml:684
msgid ""
"The texture filter blends between the nearest 4 pixels and between the "
"nearest 2 mipmaps. Use this for non-pixel art textures that may be viewed at "
@@ -11186,7 +11296,7 @@ msgid ""
"smooth out pixels that are smaller than on-screen pixels."
msgstr ""
-#: doc/classes/CanvasItem.xml:677
+#: doc/classes/CanvasItem.xml:687
msgid ""
"The texture filter reads from the nearest pixel, but selects a mipmap based "
"on the angle between the surface and the camera view. This reduces artifacts "
@@ -11195,7 +11305,7 @@ msgid ""
"TEXTURE_FILTER_NEAREST_WITH_MIPMAPS] is usually more appropriate."
msgstr ""
-#: doc/classes/CanvasItem.xml:681
+#: doc/classes/CanvasItem.xml:691
msgid ""
"The texture filter blends between the nearest 4 pixels and selects a mipmap "
"based on the angle between the surface and the camera view. This reduces "
@@ -11206,21 +11316,21 @@ msgid ""
"TEXTURE_FILTER_LINEAR_WITH_MIPMAPS] is usually more appropriate."
msgstr ""
-#: doc/classes/CanvasItem.xml:691
+#: doc/classes/CanvasItem.xml:701
msgid "Texture will not repeat."
msgstr ""
-#: doc/classes/CanvasItem.xml:694
+#: doc/classes/CanvasItem.xml:704
msgid "Texture will repeat normally."
msgstr ""
-#: doc/classes/CanvasItem.xml:697
+#: doc/classes/CanvasItem.xml:707
msgid ""
"Texture will repeat in a 2x2 tiled mode, where elements at even positions "
"are mirrored."
msgstr ""
-#: doc/classes/CanvasItem.xml:700
+#: doc/classes/CanvasItem.xml:710
msgid "Represents the size of the [enum TextureRepeat] enum."
msgstr ""
@@ -12293,16 +12403,15 @@ msgid ""
msgstr ""
#: doc/classes/Color.xml:4
-msgid "Color in RGBA format with some support for ARGB format."
+msgid "Color in RGBA format using floats on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:7
msgid ""
-"A color is represented by red, green, and blue [code](r, g, b)[/code] "
-"components. Additionally, [code]a[/code] represents the alpha component, "
-"often used for transparency. Values are in floating-point and usually range "
-"from 0 to 1. Some properties (such as [member CanvasItem.modulate]) may "
-"accept values greater than 1.\n"
+"A color represented by red, green, blue, and alpha (RGBA) components. The "
+"alpha component is often used for transparency. Values are in floating-point "
+"and usually range from 0 to 1. Some properties (such as CanvasItem.modulate) "
+"may accept values greater than 1 (overbright or HDR colors).\n"
"You can also create a color from standardized color names by using [method "
"@GDScript.ColorN] or directly using the color constants defined here. The "
"standardized color set is based on the [url=https://en.wikipedia.org/wiki/"
@@ -12516,47 +12625,48 @@ msgid ""
msgstr ""
#: doc/classes/Color.xml:280
-msgid "Alpha value (range 0 to 1)."
+msgid ""
+"The color's alpha (transparency) component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:283
-msgid "Alpha value (range 0 to 255)."
+msgid "Wrapper for [member a] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:286
-msgid "Blue value (range 0 to 1)."
+msgid "The color's blue component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:289
-msgid "Blue value (range 0 to 255)."
+msgid "Wrapper for [member b] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:292
-msgid "Green value (range 0 to 1)."
+msgid "The color's green component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:295
-msgid "Green value (range 0 to 255)."
+msgid "Wrapper for [member g] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:298
-msgid "HSV hue value (range 0 to 1)."
+msgid "The HSV hue of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:301
-msgid "Red value (range 0 to 1)."
+msgid "The color's red component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:304
-msgid "Red value (range 0 to 255)."
+msgid "Wrapper for [member r] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:307
-msgid "HSV saturation value (range 0 to 1)."
+msgid "The HSV saturation of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:310
-msgid "HSV value (range 0 to 1)."
+msgid "The HSV value (brightness) of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:315
@@ -14476,23 +14586,35 @@ msgstr ""
#: doc/classes/Control.xml:859
msgid ""
"The node's scale, relative to its [member rect_size]. Change this property "
-"to scale the node around its [member rect_pivot_offset]."
-msgstr ""
-
-#: doc/classes/Control.xml:862
+"to scale the node around its [member rect_pivot_offset]. The Control's "
+"[member hint_tooltip] will also scale according to this value.\n"
+"[b]Note:[/b] This property is mainly intended to be used for animation "
+"purposes. Text inside the Control will look pixelated or blurry when the "
+"Control is scaled. To support multiple resolutions in your project, use an "
+"appropriate viewport stretch mode as described in the [url=https://docs."
+"godotengine.org/en/latest/tutorials/viewports/multiple_resolutions."
+"html]documentation[/url] instead of scaling Controls individually.\n"
+"[b]Note:[/b] If the Control node is a child of a [Container] node, the scale "
+"will be reset to [code]Vector2(1, 1)[/code] when the scene is instanced. To "
+"set the Control's scale when it's instanced, wait for one frame using "
+"[code]yield(get_tree(), \"idle_frame\")[/code] then set its [member "
+"rect_scale] property."
+msgstr ""
+
+#: doc/classes/Control.xml:864
msgid ""
"The size of the node's bounding rectangle, in pixels. [Container] nodes "
"update this property automatically."
msgstr ""
-#: doc/classes/Control.xml:865
+#: doc/classes/Control.xml:867
msgid ""
"Tells the parent [Container] nodes how they should resize and place the node "
"on the X axis. Use one of the [enum SizeFlags] constants to change the "
"flags. See the constants to learn what each does."
msgstr ""
-#: doc/classes/Control.xml:868
+#: doc/classes/Control.xml:870
msgid ""
"If the node and at least one of its neighbours uses the [constant "
"SIZE_EXPAND] size flag, the parent [Container] will let it take more or less "
@@ -14501,181 +14623,181 @@ msgid ""
"space."
msgstr ""
-#: doc/classes/Control.xml:871
+#: doc/classes/Control.xml:873
msgid ""
"Tells the parent [Container] nodes how they should resize and place the node "
"on the Y axis. Use one of the [enum SizeFlags] constants to change the "
"flags. See the constants to learn what each does."
msgstr ""
-#: doc/classes/Control.xml:874
+#: doc/classes/Control.xml:876
msgid ""
"Changing this property replaces the current [Theme] resource this node and "
"all its [Control] children use."
msgstr ""
-#: doc/classes/Control.xml:880
+#: doc/classes/Control.xml:882
msgid "Emitted when the node gains keyboard focus."
msgstr ""
-#: doc/classes/Control.xml:885
+#: doc/classes/Control.xml:887
msgid "Emitted when the node loses keyboard focus."
msgstr ""
-#: doc/classes/Control.xml:892
+#: doc/classes/Control.xml:894
msgid "Emitted when the node receives an [InputEvent]."
msgstr ""
-#: doc/classes/Control.xml:897
+#: doc/classes/Control.xml:899
msgid "Emitted when the node's minimum size changes."
msgstr ""
-#: doc/classes/Control.xml:902
+#: doc/classes/Control.xml:904
msgid ""
"Emitted when the mouse enters the control's [code]Rect[/code] area, provided "
"its [member mouse_filter] lets the event reach it."
msgstr ""
-#: doc/classes/Control.xml:907
+#: doc/classes/Control.xml:909
msgid ""
"Emitted when the mouse leaves the control's [code]Rect[/code] area, provided "
"its [member mouse_filter] lets the event reach it."
msgstr ""
-#: doc/classes/Control.xml:912
+#: doc/classes/Control.xml:914
msgid "Emitted when the control changes size."
msgstr ""
-#: doc/classes/Control.xml:917
+#: doc/classes/Control.xml:919
msgid ""
"Emitted when one of the size flags changes. See [member "
"size_flags_horizontal] and [member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:927
+#: doc/classes/Control.xml:929
msgid "The node cannot grab focus. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:930
+#: doc/classes/Control.xml:932
msgid ""
"The node can only grab focus on mouse clicks. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:933
+#: doc/classes/Control.xml:935
msgid ""
"The node can grab focus on mouse click or using the arrows and the Tab keys "
"on the keyboard. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:936
+#: doc/classes/Control.xml:938
msgid ""
"Sent when the node changes size. Use [member rect_size] to get the new size."
msgstr ""
-#: doc/classes/Control.xml:939
+#: doc/classes/Control.xml:941
msgid "Sent when the mouse pointer enters the node."
msgstr ""
-#: doc/classes/Control.xml:942
+#: doc/classes/Control.xml:944
msgid "Sent when the mouse pointer exits the node."
msgstr ""
-#: doc/classes/Control.xml:945
+#: doc/classes/Control.xml:947
msgid "Sent when the node grabs focus."
msgstr ""
-#: doc/classes/Control.xml:948
+#: doc/classes/Control.xml:950
msgid "Sent when the node loses focus."
msgstr ""
-#: doc/classes/Control.xml:951
+#: doc/classes/Control.xml:953
msgid ""
"Sent when the node's [member theme] changes, right before Godot redraws the "
"control. Happens when you call one of the [code]add_theme_*_override[/code] "
"methods."
msgstr ""
-#: doc/classes/Control.xml:954
+#: doc/classes/Control.xml:956
msgid ""
"Sent when this node is inside a [ScrollContainer] which has begun being "
"scrolled."
msgstr ""
-#: doc/classes/Control.xml:957
+#: doc/classes/Control.xml:959
msgid ""
"Sent when this node is inside a [ScrollContainer] which has stopped being "
"scrolled."
msgstr ""
-#: doc/classes/Control.xml:960
+#: doc/classes/Control.xml:962
msgid ""
"Show the system's arrow mouse cursor when the user hovers the node. Use with "
"[member mouse_default_cursor_shape]."
msgstr ""
-#: doc/classes/Control.xml:963
+#: doc/classes/Control.xml:965
msgid ""
"Show the system's I-beam mouse cursor when the user hovers the node. The I-"
"beam pointer has a shape similar to \"I\". It tells the user they can "
"highlight or insert text."
msgstr ""
-#: doc/classes/Control.xml:966
+#: doc/classes/Control.xml:968
msgid ""
"Show the system's pointing hand mouse cursor when the user hovers the node."
msgstr ""
-#: doc/classes/Control.xml:969
+#: doc/classes/Control.xml:971
msgid "Show the system's cross mouse cursor when the user hovers the node."
msgstr ""
-#: doc/classes/Control.xml:972
+#: doc/classes/Control.xml:974
msgid ""
"Show the system's wait mouse cursor, often an hourglass, when the user "
"hovers the node."
msgstr ""
-#: doc/classes/Control.xml:975
+#: doc/classes/Control.xml:977
msgid ""
"Show the system's busy mouse cursor when the user hovers the node. Often an "
"hourglass."
msgstr ""
-#: doc/classes/Control.xml:978
+#: doc/classes/Control.xml:980
msgid ""
"Show the system's drag mouse cursor, often a closed fist or a cross symbol, "
"when the user hovers the node. It tells the user they're currently dragging "
"an item, like a node in the Scene dock."
msgstr ""
-#: doc/classes/Control.xml:981
+#: doc/classes/Control.xml:983
msgid ""
"Show the system's drop mouse cursor when the user hovers the node. It can be "
"an open hand. It tells the user they can drop an item they're currently "
"grabbing, like a node in the Scene dock."
msgstr ""
-#: doc/classes/Control.xml:984
+#: doc/classes/Control.xml:986
msgid ""
"Show the system's forbidden mouse cursor when the user hovers the node. "
"Often a crossed circle."
msgstr ""
-#: doc/classes/Control.xml:987
+#: doc/classes/Control.xml:989
msgid ""
"Show the system's vertical resize mouse cursor when the user hovers the "
"node. A double-headed vertical arrow. It tells the user they can resize the "
"window or the panel vertically."
msgstr ""
-#: doc/classes/Control.xml:990
+#: doc/classes/Control.xml:992
msgid ""
"Show the system's horizontal resize mouse cursor when the user hovers the "
"node. A double-headed horizontal arrow. It tells the user they can resize "
"the window or the panel horizontally."
msgstr ""
-#: doc/classes/Control.xml:993
+#: doc/classes/Control.xml:995
msgid ""
"Show the system's window resize mouse cursor when the user hovers the node. "
"The cursor is a double-headed arrow that goes from the bottom left to the "
@@ -14683,7 +14805,7 @@ msgid ""
"horizontally and vertically."
msgstr ""
-#: doc/classes/Control.xml:996
+#: doc/classes/Control.xml:998
msgid ""
"Show the system's window resize mouse cursor when the user hovers the node. "
"The cursor is a double-headed arrow that goes from the top left to the "
@@ -14691,93 +14813,93 @@ msgid ""
"they can resize the window or the panel both horizontally and vertically."
msgstr ""
-#: doc/classes/Control.xml:999
+#: doc/classes/Control.xml:1001
msgid ""
"Show the system's move mouse cursor when the user hovers the node. It shows "
"2 double-headed arrows at a 90 degree angle. It tells the user they can move "
"a UI element freely."
msgstr ""
-#: doc/classes/Control.xml:1002
+#: doc/classes/Control.xml:1004
msgid ""
"Show the system's vertical split mouse cursor when the user hovers the node. "
"On Windows, it's the same as [constant CURSOR_VSIZE]."
msgstr ""
-#: doc/classes/Control.xml:1005
+#: doc/classes/Control.xml:1007
msgid ""
"Show the system's horizontal split mouse cursor when the user hovers the "
"node. On Windows, it's the same as [constant CURSOR_HSIZE]."
msgstr ""
-#: doc/classes/Control.xml:1008
+#: doc/classes/Control.xml:1010
msgid ""
"Show the system's help mouse cursor when the user hovers the node, a "
"question mark."
msgstr ""
-#: doc/classes/Control.xml:1011
+#: doc/classes/Control.xml:1013
msgid ""
"Snap all 4 anchors to the top-left of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1014
+#: doc/classes/Control.xml:1016
msgid ""
"Snap all 4 anchors to the top-right of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1017
+#: doc/classes/Control.xml:1019
msgid ""
"Snap all 4 anchors to the bottom-left of the parent control's bounds. Use "
"with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1020
+#: doc/classes/Control.xml:1022
msgid ""
"Snap all 4 anchors to the bottom-right of the parent control's bounds. Use "
"with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1023
+#: doc/classes/Control.xml:1025
msgid ""
"Snap all 4 anchors to the center of the left edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1026
+#: doc/classes/Control.xml:1028
msgid ""
"Snap all 4 anchors to the center of the top edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1029
+#: doc/classes/Control.xml:1031
msgid ""
"Snap all 4 anchors to the center of the right edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1032
+#: doc/classes/Control.xml:1034
msgid ""
"Snap all 4 anchors to the center of the bottom edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1035
+#: doc/classes/Control.xml:1037
msgid ""
"Snap all 4 anchors to the center of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1038
+#: doc/classes/Control.xml:1040
msgid ""
"Snap all 4 anchors to the left edge of the parent control. The left margin "
"becomes relative to the left edge and the top margin relative to the top "
"left corner of the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1041
+#: doc/classes/Control.xml:1043
msgid ""
"Snap all 4 anchors to the top edge of the parent control. The left margin "
"becomes relative to the top left corner, the top margin relative to the top "
@@ -14785,14 +14907,14 @@ msgid ""
"parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1044
+#: doc/classes/Control.xml:1046
msgid ""
"Snap all 4 anchors to the right edge of the parent control. The right margin "
"becomes relative to the right edge and the top margin relative to the top "
"right corner of the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1047
+#: doc/classes/Control.xml:1049
msgid ""
"Snap all 4 anchors to the bottom edge of the parent control. The left margin "
"becomes relative to the bottom left corner, the bottom margin relative to "
@@ -14800,19 +14922,19 @@ msgid ""
"the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1050
+#: doc/classes/Control.xml:1052
msgid ""
"Snap all 4 anchors to a vertical line that cuts the parent control in half. "
"Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1053
+#: doc/classes/Control.xml:1055
msgid ""
"Snap all 4 anchors to a horizontal line that cuts the parent control in "
"half. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1056
+#: doc/classes/Control.xml:1058
msgid ""
"Snap all 4 anchors to the respective corners of the parent control. Set all "
"4 margins to 0 after you applied this preset and the [Control] will fit its "
@@ -14820,30 +14942,30 @@ msgid ""
"editor. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1059
+#: doc/classes/Control.xml:1061
msgid "The control will be resized to its minimum size."
msgstr ""
-#: doc/classes/Control.xml:1062
+#: doc/classes/Control.xml:1064
msgid "The control's width will not change."
msgstr ""
-#: doc/classes/Control.xml:1065
+#: doc/classes/Control.xml:1067
msgid "The control's height will not change."
msgstr ""
-#: doc/classes/Control.xml:1068
+#: doc/classes/Control.xml:1070
msgid "The control's size will not change."
msgstr ""
-#: doc/classes/Control.xml:1071
+#: doc/classes/Control.xml:1073
msgid ""
"Tells the parent [Container] to expand the bounds of this node to fill all "
"the available space without pushing any other node. Use with [member "
"size_flags_horizontal] and [member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1074
+#: doc/classes/Control.xml:1076
msgid ""
"Tells the parent [Container] to let this node take all the available space "
"on the axis you flag. If multiple neighboring nodes are set to expand, "
@@ -14852,13 +14974,13 @@ msgid ""
"[member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1077
+#: doc/classes/Control.xml:1079
msgid ""
"Sets the node's size flags to both fill and expand. See the 2 constants "
"above for more information."
msgstr ""
-#: doc/classes/Control.xml:1080
+#: doc/classes/Control.xml:1082
msgid ""
"Tells the parent [Container] to center the node in itself. It centers the "
"control based on its bounding box, so it doesn't work with the fill or "
@@ -14866,7 +14988,7 @@ msgid ""
"size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1083
+#: doc/classes/Control.xml:1085
msgid ""
"Tells the parent [Container] to align the node with its end, either the "
"bottom or the right edge. It doesn't work with the fill or expand size "
@@ -14874,7 +14996,7 @@ msgid ""
"size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1086
+#: doc/classes/Control.xml:1088
msgid ""
"The control will receive mouse button input events through [method "
"_gui_input] if clicked on. And the control will receive the [signal "
@@ -14883,7 +15005,7 @@ msgid ""
"other controls. This also results in blocking signals in other controls."
msgstr ""
-#: doc/classes/Control.xml:1089
+#: doc/classes/Control.xml:1091
msgid ""
"The control will receive mouse button input events through [method "
"_gui_input] if clicked on. And the control will receive the [signal "
@@ -14895,7 +15017,7 @@ msgid ""
"not be fired."
msgstr ""
-#: doc/classes/Control.xml:1092
+#: doc/classes/Control.xml:1094
msgid ""
"The control will not receive mouse button input events through [method "
"_gui_input]. The control will also not receive the [signal mouse_entered] "
@@ -14904,25 +15026,25 @@ msgid ""
"handled automatically."
msgstr ""
-#: doc/classes/Control.xml:1095
+#: doc/classes/Control.xml:1097
msgid ""
"The control will grow to the left or top to make up if its minimum size is "
"changed to be greater than its current size on the respective axis."
msgstr ""
-#: doc/classes/Control.xml:1098
+#: doc/classes/Control.xml:1100
msgid ""
"The control will grow to the right or bottom to make up if its minimum size "
"is changed to be greater than its current size on the respective axis."
msgstr ""
-#: doc/classes/Control.xml:1101
+#: doc/classes/Control.xml:1103
msgid ""
"The control will grow in both directions equally to make up if its minimum "
"size is changed to be greater than its current size."
msgstr ""
-#: doc/classes/Control.xml:1104
+#: doc/classes/Control.xml:1106
msgid ""
"Snaps one of the 4 anchor's sides to the origin of the node's [code]Rect[/"
"code], in the top left. Use it with one of the [code]anchor_*[/code] member "
@@ -14930,7 +15052,7 @@ msgid ""
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1107
+#: doc/classes/Control.xml:1109
msgid ""
"Snaps one of the 4 anchor's sides to the end of the node's [code]Rect[/"
"code], in the bottom right. Use it with one of the [code]anchor_*[/code] "
@@ -16715,7 +16837,7 @@ msgstr ""
msgid ""
"Returns the [Texture2D] associated with the specified [enum DecalTexture]. "
"This is a convenience method, in most cases you should access the texture "
-"directly. \n"
+"directly.\n"
"For example, instead of [code]albedo_tex = $Decal.get_texture(Decal."
"TEXTURE_ALBEDO)[/code], use [code]albedo_tex = $Decal.texture_albedo[/"
"code].\n"
@@ -16731,7 +16853,7 @@ msgstr ""
msgid ""
"Sets the [Texture2D] associated with the specified [enum DecalTexture]. This "
"is a convenience method, in most cases you should access the texture "
-"directly. \n"
+"directly.\n"
"For example, instead of [code]$Decal.set_texture(Decal.TEXTURE_ALBEDO, "
"albedo_tex)[/code], use [code]$Decal.texture_albedo = albedo_tex[/code].\n"
"One case where this is better than accessing the texture directly is when "
@@ -17080,7 +17202,7 @@ msgstr ""
msgid "The light's shadow rendering algorithm. See [enum ShadowMode]."
msgstr ""
-#: doc/classes/DirectionalLight3D.xml:31 doc/classes/RenderingServer.xml:3254
+#: doc/classes/DirectionalLight3D.xml:31 doc/classes/RenderingServer.xml:3250
msgid ""
"Sets the size of the directional shadow pancake. The pancake offsets the "
"start of the shadow's camera frustum to provide a higher effective depth "
@@ -17154,10 +17276,10 @@ msgstr ""
msgid ""
"Directory type. It is used to manage directories and their content (not "
"restricted to the project folder).\n"
-"When creating a new [Directory], its default opened directory will be "
-"[code]res://[/code]. This may change in the future, so it is advised to "
-"always use [method open] to initialize your [Directory] where you want to "
-"operate, with explicit error checking.\n"
+"When creating a new [Directory], it must be explicitly opened using [method "
+"open] before most methods can be used. However, [method file_exists] and "
+"[method dir_exists] can be used without opening a directory. If so, they use "
+"a path relative to [code]res://[/code].\n"
"Here is an example on how to iterate through the files of a directory:\n"
"[codeblock]\n"
"func dir_contents(path):\n"
@@ -17176,7 +17298,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Directory.xml:27 doc/classes/File.xml:25
+#: doc/classes/Directory.xml:27 doc/classes/File.xml:26
msgid ""
"https://docs.godotengine.org/en/latest/getting_started/step_by_step/"
"filesystem.html"
@@ -17210,41 +17332,43 @@ msgstr ""
#: doc/classes/Directory.xml:65
msgid ""
"Returns whether the target directory exists. The argument can be relative to "
-"the current directory, or an absolute path."
+"the current directory, or an absolute path.\n"
+"If the [Directory] is not open, the path is relative to [code]res://[/code]."
msgstr ""
-#: doc/classes/Directory.xml:74
+#: doc/classes/Directory.xml:75
msgid ""
"Returns whether the target file exists. The argument can be relative to the "
-"current directory, or an absolute path."
+"current directory, or an absolute path.\n"
+"If the [Directory] is not open, the path is relative to [code]res://[/code]."
msgstr ""
-#: doc/classes/Directory.xml:81
+#: doc/classes/Directory.xml:83
msgid ""
"Returns the absolute path to the currently opened directory (e.g. "
"[code]res://folder[/code] or [code]C:\\tmp\\folder[/code])."
msgstr ""
-#: doc/classes/Directory.xml:88
+#: doc/classes/Directory.xml:90
msgid ""
"Returns the currently opened directory's drive index. See [method get_drive] "
"to convert returned index to the name of the drive."
msgstr ""
-#: doc/classes/Directory.xml:97
+#: doc/classes/Directory.xml:99
msgid ""
"On Windows, returns the name of the drive (partition) passed as an argument "
"(e.g. [code]C:[/code]). On other platforms, or if the requested drive does "
"not existed, the method returns an empty String."
msgstr ""
-#: doc/classes/Directory.xml:104
+#: doc/classes/Directory.xml:106
msgid ""
"On Windows, returns the number of drives (partitions) mounted on the current "
"filesystem. On other platforms, the method returns 0."
msgstr ""
-#: doc/classes/Directory.xml:111
+#: doc/classes/Directory.xml:113
msgid ""
"Returns the next element (file or directory) in the current directory "
"(including [code].[/code] and [code]..[/code], unless "
@@ -17255,14 +17379,14 @@ msgid ""
"mandatory in such a case)."
msgstr ""
-#: doc/classes/Directory.xml:119
+#: doc/classes/Directory.xml:121
msgid ""
"On UNIX desktop systems, returns the available space on the current "
"directory's disk. On other platforms, this information is not available and "
"the method returns 0 or -1."
msgstr ""
-#: doc/classes/Directory.xml:130
+#: doc/classes/Directory.xml:132
msgid ""
"Initializes the stream used to list all files and directories using the "
"[method get_next] function, closing the current opened stream if needed. "
@@ -17274,13 +17398,13 @@ msgid ""
"out."
msgstr ""
-#: doc/classes/Directory.xml:139
+#: doc/classes/Directory.xml:141
msgid ""
"Closes the current stream opened with [method list_dir_begin] (whether it "
"has been fully processed with [method get_next] or not does not matter)."
msgstr ""
-#: doc/classes/Directory.xml:148
+#: doc/classes/Directory.xml:150
msgid ""
"Creates a directory. The argument can be relative to the current directory, "
"or an absolute path. The target directory should be placed in an already "
@@ -17289,7 +17413,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:158
+#: doc/classes/Directory.xml:160
msgid ""
"Creates a target directory and all necessary intermediate directories in its "
"path, by calling [method make_dir] recursively. The argument can be relative "
@@ -17297,7 +17421,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:168
+#: doc/classes/Directory.xml:170
msgid ""
"Opens an existing directory of the filesystem. The [code]path[/code] "
"argument can be within the project tree ([code]res://folder[/code]), the "
@@ -17306,7 +17430,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:178
+#: doc/classes/Directory.xml:180
msgid ""
"Deletes the target file or an empty directory. The argument can be relative "
"to the current directory, or an absolute path. If the target directory is "
@@ -17314,7 +17438,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:190
+#: doc/classes/Directory.xml:192
msgid ""
"Renames (move) the [code]from[/code] file to the [code]to[/code] "
"destination. Both arguments should be paths to files, either relative or "
@@ -17355,6 +17479,53 @@ msgid ""
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
+#: doc/classes/DisplayServer.xml:530
+msgid ""
+"Return the greatest scale factor of all screens.\n"
+"[b]Note:[/b] On macOS returned value is [code]2.0[/code] if there is at "
+"least one hiDPI (Retina) screen in the system, and [code]1.0[/code] in all "
+"other cases.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:557
+msgid ""
+"Return the scale factor of the specified screen by index.\n"
+"[b]Note:[/b] On macOS returned value is [code]2.0[/code] for hiDPI (Retina) "
+"screen, and [code]1.0[/code] for all other cases.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:630
+msgid ""
+"Returns the on-screen keyboard's height in pixels. Returns 0 if there is no "
+"keyboard or if it is currently hidden."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:637
+msgid "Hides the virtual keyboard if it is shown, does nothing otherwise."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:656
+msgid ""
+"Shows the virtual keyboard if the platform has one.\n"
+"[code]existing_text[/code] parameter is useful for implementing your own "
+"[LineEdit] or [TextEdit], as it tells the virtual keyboard what text has "
+"already been typed (the virtual keyboard uses it for auto-correct and "
+"predictions).\n"
+"[code]position[/code] parameter is the screen space [Rect2] of the edited "
+"text.\n"
+"[code]multiline[/code] parameter needs to be set to [code]true[/code] to be "
+"able to enter multiple lines of text, as in [TextEdit].\n"
+"[code]max_length[/code] limits the number of characters that can be entered "
+"if different from [code]-1[/code].\n"
+"[code]cursor_start[/code] can optionally define the current text cursor "
+"position if [code]cursor_end[/code] is not set.\n"
+"[code]cursor_start[/code] and [code]cursor_end[/code] can optionally define "
+"the current text selection.\n"
+"[b]Note:[/b] This method is implemented on Android, iOS and UWP."
+msgstr ""
+
#: doc/classes/DTLSServer.xml:4
msgid "Helper class to implement a DTLS server."
msgstr ""
@@ -17475,54 +17646,62 @@ msgstr ""
msgid "Adds a fallback font."
msgstr ""
-#: doc/classes/DynamicFont.xml:35
+#: doc/classes/DynamicFont.xml:33
+msgid ""
+"Returns a string containing all the characters available in the main and all "
+"the fallback fonts.\n"
+"If a given character is included in more than one font, it appears only once "
+"in the returned string."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:43
msgid "Returns the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:42
+#: doc/classes/DynamicFont.xml:50
msgid "Returns the number of fallback fonts."
msgstr ""
-#: doc/classes/DynamicFont.xml:51
+#: doc/classes/DynamicFont.xml:59
msgid ""
"Returns the spacing for the given [code]type[/code] (see [enum SpacingType])."
msgstr ""
-#: doc/classes/DynamicFont.xml:60
+#: doc/classes/DynamicFont.xml:68
msgid "Removes the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:71
+#: doc/classes/DynamicFont.xml:79
msgid "Sets the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:82
+#: doc/classes/DynamicFont.xml:90
msgid ""
"Sets the spacing for [code]type[/code] (see [enum SpacingType]) to "
"[code]value[/code] in pixels (not relative to the font size)."
msgstr ""
-#: doc/classes/DynamicFont.xml:88
+#: doc/classes/DynamicFont.xml:96
msgid "Extra spacing at the bottom in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:91
+#: doc/classes/DynamicFont.xml:99
msgid "Extra character spacing in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:94
+#: doc/classes/DynamicFont.xml:102
msgid "Extra space spacing in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:97
+#: doc/classes/DynamicFont.xml:105
msgid "Extra spacing at the top in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:100
+#: doc/classes/DynamicFont.xml:108
msgid "The font data."
msgstr ""
-#: doc/classes/DynamicFont.xml:103
+#: doc/classes/DynamicFont.xml:111
msgid ""
"The font outline's color.\n"
"[b]Note:[/b] It's recommended to leave this at the default value so that you "
@@ -17531,27 +17710,27 @@ msgid ""
"outline modulate theme item."
msgstr ""
-#: doc/classes/DynamicFont.xml:107
+#: doc/classes/DynamicFont.xml:115
msgid "The font outline's thickness in pixels (not relative to the font size)."
msgstr ""
-#: doc/classes/DynamicFont.xml:110
+#: doc/classes/DynamicFont.xml:118
msgid "The font size in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:115
+#: doc/classes/DynamicFont.xml:123
msgid "Spacing at the top."
msgstr ""
-#: doc/classes/DynamicFont.xml:118
+#: doc/classes/DynamicFont.xml:126
msgid "Spacing at the bottom."
msgstr ""
-#: doc/classes/DynamicFont.xml:121
+#: doc/classes/DynamicFont.xml:129
msgid "Character spacing."
msgstr ""
-#: doc/classes/DynamicFont.xml:124
+#: doc/classes/DynamicFont.xml:132
msgid "Space spacing."
msgstr ""
@@ -17933,7 +18112,12 @@ msgstr ""
msgid "Remitted if a resource is reimported."
msgstr ""
-#: doc/classes/EditorFileSystem.xml:106
+#: doc/classes/EditorFileSystem.xml:100
+msgid ""
+"Emitted if at least one resource is reloaded when the filesystem is scanned."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:107
msgid "Emitted if the source of any imported file changed."
msgstr ""
@@ -17975,29 +18159,43 @@ msgstr ""
msgid "Returns the path to the file at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:86
+#: doc/classes/EditorFileSystemDirectory.xml:70
+msgid ""
+"Returns the base class of the script class defined in the file at index "
+"[code]idx[/code]. If the file doesn't define a script class using the "
+"[code]class_name[/code] syntax, this will return an empty string."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:79
+msgid ""
+"Returns the name of the script class defined in the file at index [code]idx[/"
+"code]. If the file doesn't define a script class using the [code]class_name[/"
+"code] syntax, this will return an empty string."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:88
msgid "Returns the file extension of the file at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:93
+#: doc/classes/EditorFileSystemDirectory.xml:95
msgid "Returns the name of this directory."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:100
+#: doc/classes/EditorFileSystemDirectory.xml:102
msgid ""
"Returns the parent directory for this directory or [code]null[/code] if "
"called on a directory at [code]res://[/code] or [code]user://[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:107
+#: doc/classes/EditorFileSystemDirectory.xml:109
msgid "Returns the path to this directory."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:116
+#: doc/classes/EditorFileSystemDirectory.xml:118
msgid "Returns the subdirectory at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:123
+#: doc/classes/EditorFileSystemDirectory.xml:125
msgid "Returns the number of subdirectories in this directory."
msgstr ""
@@ -18088,45 +18286,72 @@ msgstr ""
msgid "Gets the unique name of the importer."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:92
+#: doc/classes/EditorImportPlugin.xml:86
+msgid ""
+"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. For example:\n"
+"[codeblock]\n"
+"func get_option_visibility(option, options):\n"
+" # Only show the lossy quality setting if the compression mode is set to "
+"\"Lossy\".\n"
+" if option == \"compress/lossy_quality\" and options.has(\"compress/mode"
+"\"):\n"
+" return int(options[\"compress/mode\"]) == COMPRESS_LOSSY\n"
+"\n"
+" return true\n"
+"[/codeblock]\n"
+"Return [code]true[/code] to make all options always visible."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:102
msgid ""
"Gets the number of initial presets defined by the plugin. Use [method "
"get_import_options] to get the default options for the preset and [method "
"get_preset_name] to get the name of the preset."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:101
+#: doc/classes/EditorImportPlugin.xml:111
msgid "Gets the name of the options preset at this index."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:108
+#: doc/classes/EditorImportPlugin.xml:118
msgid ""
"Gets the priority of this plugin for the recognized extension. Higher "
"priority plugins will be preferred. The default priority is [code]1.0[/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:115
+#: doc/classes/EditorImportPlugin.xml:125
msgid ""
"Gets the list of file extensions to associate with this loader (case-"
"insensitive). e.g. [code][\"obj\"][/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:122
+#: doc/classes/EditorImportPlugin.xml:132
msgid ""
"Gets the Godot resource type associated with this loader. e.g. [code]\"Mesh"
"\"[/code] or [code]\"Animation\"[/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:129
+#: doc/classes/EditorImportPlugin.xml:139
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:136
+#: doc/classes/EditorImportPlugin.xml:146
msgid "Gets the name to display in the import window."
msgstr ""
+#: doc/classes/EditorImportPlugin.xml:163
+msgid ""
+"Imports [code]source_file[/code] into [code]save_path[/code] with the import "
+"[code]options[/code] specified. The [code]platform_variants[/code] and "
+"[code]gen_files[/code] arrays will be modified by this function.\n"
+"This method must be overridden to do the actual importing work. See this "
+"class' description for an example of overriding this method."
+msgstr ""
+
#: doc/classes/EditorInspector.xml:4
msgid "A tab used to edit properties of the selected node."
msgstr ""
@@ -18142,6 +18367,58 @@ msgid ""
"the singleton using [method EditorInterface.get_inspector]."
msgstr ""
+#: doc/classes/EditorInspector.xml:17
+msgid ""
+"Refreshes the inspector.\n"
+"[b]Note:[/b] To save on CPU resources, calling this method will do nothing "
+"if the time specified in [code]docks/property_editor/auto_refresh_interval[/"
+"code] editor setting hasn't passed yet since this method was last called. "
+"(By default, this interval is set to 0.3 seconds.)"
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:30
+msgid ""
+"Emitted when the Edit button of an [Object] has been pressed in the "
+"inspector. This is mainly used in the remote scene tree inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:37
+msgid "Emitted when a property is removed from the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:44
+msgid "Emitted when a property is edited in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:51
+msgid ""
+"Emitted when a property is keyed in the inspector. Properties can be keyed "
+"by clicking the \"key\" icon next to a property when the Animation panel is "
+"toggled."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:58
+msgid "Emitted when a property is selected in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:67
+msgid ""
+"Emitted when a boolean property is toggled in the inspector.\n"
+"[b]Note:[/b] This signal is never emitted if the internal [code]autoclear[/"
+"code] property enabled. Since this property is always enabled in the editor "
+"inspector, this signal is never emitted by the editor itself."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:77
+msgid "Emitted when a resource is selected in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:82
+msgid ""
+"Emitted when a property that requires a restart to be applied is edited in "
+"the inspector. This is only used in the Project Settings and Editor Settings."
+msgstr ""
+
#: doc/classes/EditorInspectorPlugin.xml:4
msgid "Plugin for adding custom property editors on inspector."
msgstr ""
@@ -18220,91 +18497,155 @@ msgstr ""
#: doc/classes/EditorInterface.xml:26
msgid ""
-"Returns the main container of Godot editor's window. You can use it, for "
-"example, to retrieve the size of the container and place your controls "
+"Returns the main container of Godot editor's window. For example, you can "
+"use it to retrieve the size of the container and place your controls "
"accordingly."
msgstr ""
-#: doc/classes/EditorInterface.xml:39
+#: doc/classes/EditorInterface.xml:33
+msgid "Returns the current path being viewed in the [FileSystemDock]."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:40
msgid "Returns the edited (current) scene's root [Node]."
msgstr ""
-#: doc/classes/EditorInterface.xml:46
-msgid "Returns the [EditorSettings]."
+#: doc/classes/EditorInterface.xml:47
+msgid "Returns the editor's [EditorSettings] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:54
+msgid ""
+"Returns the main editor control. Use this as a parent for main screens.\n"
+"[b]Note:[/b] This returns the main editor control containing the whole "
+"editor, not the 2D or 3D viewports specifically."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:62
+msgid "Returns the editor's [FileSystemDock] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:53
-msgid "Returns the editor [Viewport]."
+#: doc/classes/EditorInterface.xml:69
+msgid "Returns the editor's [EditorInspector] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:72
+#: doc/classes/EditorInterface.xml:76
msgid "Returns an [Array] with the file paths of the currently opened scenes."
msgstr ""
-#: doc/classes/EditorInterface.xml:79
-msgid "Returns the [EditorFileSystem]."
+#: doc/classes/EditorInterface.xml:83
+msgid ""
+"Returns the name of the scene that is being played. If no scene is currently "
+"being played, returns an empty string."
msgstr ""
-#: doc/classes/EditorInterface.xml:86
-msgid "Returns the [EditorResourcePreview]."
+#: doc/classes/EditorInterface.xml:90
+msgid "Returns the editor's [EditorFileSystem] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:93
-msgid "Returns the [ScriptEditor]."
+#: doc/classes/EditorInterface.xml:97
+msgid "Returns the editor's [EditorResourcePreview] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:106
-msgid "Returns the [EditorSelection]."
+#: doc/classes/EditorInterface.xml:104
+msgid "Returns the editor's [ScriptEditor] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:117
+#: doc/classes/EditorInterface.xml:111
msgid ""
-"Shows the given property on the given [code]object[/code] in the Editor's "
+"Returns the path of the directory currently selected in the "
+"[FileSystemDock]. If a file is selected, its base directory will be returned "
+"using [method String.get_base_dir] instead."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:118
+msgid "Returns the editor's [EditorSelection] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:129
+msgid ""
+"Shows the given property on the given [code]object[/code] in the editor's "
"Inspector dock."
msgstr ""
-#: doc/classes/EditorInterface.xml:126
+#: doc/classes/EditorInterface.xml:136
msgid ""
-"Returns the enabled status of a plugin. The plugin name is the same as its "
-"directory name."
+"Returns [code]true[/code] if a scene is currently being played, [code]false[/"
+"code] otherwise. Paused scenes are considered as being played."
msgstr ""
-#: doc/classes/EditorInterface.xml:137
+#: doc/classes/EditorInterface.xml:145
+msgid ""
+"Returns [code]true[/code] if the specified [code]plugin[/code] is enabled. "
+"The plugin name is the same as its directory name."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:156
msgid ""
"Returns mesh previews rendered at the given size as an [Array] of "
"[Texture2D]s."
msgstr ""
-#: doc/classes/EditorInterface.xml:146
+#: doc/classes/EditorInterface.xml:165
msgid "Opens the scene at the given path."
msgstr ""
-#: doc/classes/EditorInterface.xml:155
+#: doc/classes/EditorInterface.xml:172
+msgid "Plays the currently active scene."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:181
+msgid "Plays the scene specified by its filepath."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:188
+msgid "Plays the main scene."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:197
msgid "Reloads the scene at the given path."
msgstr ""
-#: doc/classes/EditorInterface.xml:162
+#: doc/classes/EditorInterface.xml:204
msgid ""
"Saves the scene. Returns either [code]OK[/code] or [code]ERR_CANT_CREATE[/"
"code] (see [@GlobalScope] constants)."
msgstr ""
-#: doc/classes/EditorInterface.xml:173
+#: doc/classes/EditorInterface.xml:215
msgid "Saves the scene as a file at [code]path[/code]."
msgstr ""
-#: doc/classes/EditorInterface.xml:182
+#: doc/classes/EditorInterface.xml:224
msgid ""
"Selects the file, with the path provided by [code]file[/code], in the "
"FileSystem dock."
msgstr ""
-#: doc/classes/EditorInterface.xml:201
+#: doc/classes/EditorInterface.xml:233
+msgid ""
+"Sets the editor's current main screen to the one specified in [code]name[/"
+"code]. [code]name[/code] must match the text of the tab in question exactly "
+"([code]2D[/code], [code]3D[/code], [code]Script[/code], [code]AssetLib[/"
+"code])."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:244
msgid ""
"Sets the enabled status of a plugin. The plugin name is the same as its "
"directory name."
msgstr ""
+#: doc/classes/EditorInterface.xml:251
+msgid "Stops the scene that is currently playing."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:257
+msgid ""
+"If [code]true[/code], enables distraction-free mode which hides side docks "
+"to increase the space available for the main view."
+msgstr ""
+
#: doc/classes/EditorNode3DGizmo.xml:4
msgid "Custom gizmo for editing Node3D objects."
msgstr ""
@@ -18316,14 +18657,20 @@ msgid ""
"information."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:26
+#: doc/classes/EditorNode3DGizmo.xml:18
+msgid ""
+"Adds the specified [code]segments[/code] to the gizmo's collision shape for "
+"picking. Call this function during [method redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:27
msgid ""
"Adds collision triangles to the gizmo for picking. A [TriangleMesh] can be "
"generated from a regular [Mesh] too. Call this function during [method "
"redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:41
+#: doc/classes/EditorNode3DGizmo.xml:42
msgid ""
"Adds a list of handles (points) which can be used to deform the object being "
"edited.\n"
@@ -18331,20 +18678,33 @@ msgid ""
"handles. Call this function during [method redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:57
+#: doc/classes/EditorNode3DGizmo.xml:58
msgid ""
"Adds lines to the gizmo (as sets of 2 points), with a given material. The "
"lines are used for visualizing the gizmo. Call this function during [method "
"redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:84
+#: doc/classes/EditorNode3DGizmo.xml:73
+msgid ""
+"Adds a mesh to the gizmo with the specified [code]billboard[/code] state, "
+"[code]skeleton[/code] and [code]material[/code]. If [code]billboard[/code] "
+"is [code]true[/code], the mesh will rotate to always face the camera. Call "
+"this function during [method redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:86
msgid ""
"Adds an unscaled billboard for visualization. Call this function during "
"[method redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:103
+#: doc/classes/EditorNode3DGizmo.xml:93
+msgid ""
+"Removes everything in the gizmo including meshes, collisions and handles."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:106
msgid ""
"Commit a handle being edited (handles must have been previously added by "
"[method add_handles]).\n"
@@ -18352,40 +18712,42 @@ msgid ""
"restore the edited value to the original is provided."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:113
+#: doc/classes/EditorNode3DGizmo.xml:116
msgid ""
"Gets the name of an edited handle (handles must have been previously added "
"by [method add_handles]).\n"
"Handles can be named for reference to the user when editing."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:123
+#: doc/classes/EditorNode3DGizmo.xml:126
msgid ""
"Gets actual value of a handle. This value can be anything and used for "
"eventually undoing the motion when calling [method commit_handle]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:130
+#: doc/classes/EditorNode3DGizmo.xml:133
msgid ""
"Returns the [EditorNode3DGizmoPlugin] that owns this gizmo. It's useful to "
"retrieve materials using [method EditorNode3DGizmoPlugin.get_material]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:137
+#: doc/classes/EditorNode3DGizmo.xml:140
msgid "Returns the Node3D node associated with this gizmo."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:146
-msgid "Gets whether a handle is highlighted or not."
+#: doc/classes/EditorNode3DGizmo.xml:149
+msgid ""
+"Returns [code]true[/code] if the handle at index [code]index[/code] is "
+"highlighted by being hovered with the mouse."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:153
+#: doc/classes/EditorNode3DGizmo.xml:156
msgid ""
-"This function is called when the Node3D this gizmo refers to changes (the "
+"This function is called when the [Node3D] this gizmo refers to changes (the "
"[method Node3D.update_gizmo] is called)."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:166
+#: doc/classes/EditorNode3DGizmo.xml:169
msgid ""
"This function is used when the user drags a gizmo handle (previously added "
"with [method add_handles]) in screen coordinates.\n"
@@ -18393,6 +18755,18 @@ msgid ""
"raycasts."
msgstr ""
+#: doc/classes/EditorNode3DGizmo.xml:179
+msgid ""
+"Sets the gizmo's hidden state. If [code]true[/code], the gizmo will be "
+"hidden. If [code]false[/code], it will be shown."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:188
+msgid ""
+"Sets the reference [Node3D] node for the gizmo. [code]node[/code] must "
+"inherit from [Node3D]."
+msgstr ""
+
#: doc/classes/EditorNode3DGizmoPlugin.xml:4
msgid "Used by the editor to define Node3D gizmo types."
msgstr ""
@@ -18485,7 +18859,17 @@ msgid ""
"visibility menu."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:150
+#: doc/classes/EditorNode3DGizmoPlugin.xml:142
+msgid ""
+"Override this method to set the gizmo's priority. Higher values correspond "
+"to higher priority. If a gizmo with higher priority conflicts with another "
+"gizmo, only the gizmo with higher priority will be used.\n"
+"All built-in editor gizmos return a priority of [code]-1[/code]. If not "
+"overridden, this method will return [code]0[/code], which means custom "
+"gizmos will automatically override built-in gizmos."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:152
msgid ""
"Override this method to define which Node3D nodes have a gizmo from this "
"plugin. Whenever a [Node3D] node is added to a scene this method is called, "
@@ -18493,25 +18877,25 @@ msgid ""
"assigned and is added to this plugin's list of active gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:161
+#: doc/classes/EditorNode3DGizmoPlugin.xml:163
msgid ""
"Gets whether a handle is highlighted or not. Called for this plugin's active "
"gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:168
+#: doc/classes/EditorNode3DGizmoPlugin.xml:170
msgid ""
"Override this method to define whether Node3D with this gizmo should be "
"selecteble even when the gizmo is hidden."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:177
+#: doc/classes/EditorNode3DGizmoPlugin.xml:179
msgid ""
"Callback to redraw the provided gizmo. Called for this plugin's active "
"gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:192
+#: doc/classes/EditorNode3DGizmoPlugin.xml:194
msgid ""
"Update the value of a handle after it has been updated. Called for this "
"plugin's active gizmos."
@@ -18598,7 +18982,13 @@ msgid ""
"should be cleaned up using [code]remove_tool_menu_item(name)[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:149
+#: doc/classes/EditorPlugin.xml:151
+msgid ""
+"Registers a custom translation parser plugin for extracting translatable "
+"strings from custom files."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:158
msgid ""
"This method is called when the editor is about to save the project, switch "
"to another tab, etc. It asks the plugin to apply any pending state changes "
@@ -18607,32 +18997,32 @@ msgid ""
"must apply the shader code being written by the user to the object."
msgstr ""
-#: doc/classes/EditorPlugin.xml:163
+#: doc/classes/EditorPlugin.xml:172
msgid ""
"Clear all the state and reset the object being edited to zero. This ensures "
"your plugin does not keep editing a currently existing node, or a node from "
"the wrong scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:170
+#: doc/classes/EditorPlugin.xml:179
msgid ""
"Called by the engine when the user disables the [EditorPlugin] in the Plugin "
"tab of the project settings window."
msgstr ""
-#: doc/classes/EditorPlugin.xml:179
+#: doc/classes/EditorPlugin.xml:188
msgid ""
"This function is used for plugins that edit specific object types (nodes or "
"resources). It requests the editor to edit the given object."
msgstr ""
-#: doc/classes/EditorPlugin.xml:186
+#: doc/classes/EditorPlugin.xml:195
msgid ""
"Called by the engine when the user enables the [EditorPlugin] in the Plugin "
"tab of the project settings window."
msgstr ""
-#: doc/classes/EditorPlugin.xml:211
+#: doc/classes/EditorPlugin.xml:220
msgid ""
"Called when there is a root node in the current edited scene, [method "
"handles] is implemented and an [InputEvent] happens in the 2D viewport. "
@@ -18657,7 +19047,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:237
+#: doc/classes/EditorPlugin.xml:246
msgid ""
"Called when there is a root node in the current edited scene, [method "
"handles] is implemented and an [InputEvent] happens in the 3D viewport. "
@@ -18682,20 +19072,20 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:259
+#: doc/classes/EditorPlugin.xml:268
msgid ""
"This is for editors that edit script-based objects. You can return a list of "
"breakpoints in the format ([code]script:line[/code]), for example: "
"[code]res://path_to_script.gd:25[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:266
+#: doc/classes/EditorPlugin.xml:275
msgid ""
"Returns the [EditorInterface] object that gives you control over Godot "
"editor's window and its functionalities."
msgstr ""
-#: doc/classes/EditorPlugin.xml:273
+#: doc/classes/EditorPlugin.xml:282
msgid ""
"Override this method in your plugin to return a [Texture2D] in order to give "
"it an icon.\n"
@@ -18713,7 +19103,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:289
+#: doc/classes/EditorPlugin.xml:298
msgid ""
"Override this method in your plugin to provide the name of the plugin when "
"displayed in the Godot editor.\n"
@@ -18721,33 +19111,33 @@ msgid ""
"of the \"2D\", \"3D\", \"Script\", and \"AssetLib\" buttons."
msgstr ""
-#: doc/classes/EditorPlugin.xml:297
+#: doc/classes/EditorPlugin.xml:306
msgid ""
"Gets the Editor's dialogue used for making scripts.\n"
"[b]Note:[/b] Users can configure it before use."
msgstr ""
-#: doc/classes/EditorPlugin.xml:305
+#: doc/classes/EditorPlugin.xml:314
msgid ""
"Gets the state of your plugin editor. This is used when saving the scene (so "
"state is kept when opening it again) and for switching tabs (so state can be "
"restored when the tab returns)."
msgstr ""
-#: doc/classes/EditorPlugin.xml:312
+#: doc/classes/EditorPlugin.xml:321
msgid ""
"Gets the undo/redo object. Most actions in the editor can be undoable, so "
"use this object to make sure this happens when it's worth it."
msgstr ""
-#: doc/classes/EditorPlugin.xml:321
+#: doc/classes/EditorPlugin.xml:330
msgid ""
"Gets the GUI layout of the plugin. This is used to save the project's editor "
"layout when [method queue_save_layout] is called or the editor layout was "
"changed(For example changing the position of a dock)."
msgstr ""
-#: doc/classes/EditorPlugin.xml:330
+#: doc/classes/EditorPlugin.xml:339
msgid ""
"Implement this function if your plugin edits a specific type of object "
"(Resource or Node). If you return [code]true[/code], then you will get the "
@@ -18757,14 +19147,14 @@ msgid ""
"be called too."
msgstr ""
-#: doc/classes/EditorPlugin.xml:337
+#: doc/classes/EditorPlugin.xml:346
msgid ""
"Returns [code]true[/code] if this is a main screen editor plugin (it goes in "
"the workspace selector together with [b]2D[/b], [b]3D[/b], [b]Script[/b] and "
"[b]AssetLib[/b])."
msgstr ""
-#: doc/classes/EditorPlugin.xml:360
+#: doc/classes/EditorPlugin.xml:369
msgid ""
"This function will be called when the editor is requested to become visible. "
"It is used for plugins that edit a specific object type.\n"
@@ -18772,85 +19162,89 @@ msgid ""
"manually."
msgstr ""
-#: doc/classes/EditorPlugin.xml:368
+#: doc/classes/EditorPlugin.xml:377
msgid "Queue save the project's editor layout."
msgstr ""
-#: doc/classes/EditorPlugin.xml:377
+#: doc/classes/EditorPlugin.xml:386
msgid "Removes an Autoload [code]name[/code] from the list."
msgstr ""
-#: doc/classes/EditorPlugin.xml:386
+#: doc/classes/EditorPlugin.xml:395
msgid ""
"Removes the control from the bottom panel. You have to manually [method Node."
"queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:397
+#: doc/classes/EditorPlugin.xml:406
msgid ""
"Removes the control from the specified container. You have to manually "
"[method Node.queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:406
+#: doc/classes/EditorPlugin.xml:415
msgid ""
"Removes the control from the dock. You have to manually [method Node."
"queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:415
+#: doc/classes/EditorPlugin.xml:424
msgid "Removes a custom type added by [method add_custom_type]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:464
+#: doc/classes/EditorPlugin.xml:473
msgid "Removes a menu [code]name[/code] from [b]Project > Tools[/b]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:471
+#: doc/classes/EditorPlugin.xml:482
+msgid "Removes a registered custom translation parser plugin."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:489
msgid ""
"This method is called after the editor saves the project or when it's "
"closed. It asks the plugin to save edited external scenes/resources."
msgstr ""
-#: doc/classes/EditorPlugin.xml:484
+#: doc/classes/EditorPlugin.xml:502
msgid ""
"Use this method if you always want to receive inputs from 3D view screen "
"inside [method forward_spatial_gui_input]. It might be especially usable if "
"your plugin will want to use raycast in the scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:493
+#: doc/classes/EditorPlugin.xml:511
msgid "Restore the state saved by [method get_state]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:502
+#: doc/classes/EditorPlugin.xml:520
msgid "Restore the plugin GUI layout saved by [method get_window_layout]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:509
+#: doc/classes/EditorPlugin.xml:527
msgid "Updates the overlays of the editor (2D/3D) viewport."
msgstr ""
-#: doc/classes/EditorPlugin.xml:518
+#: doc/classes/EditorPlugin.xml:536
msgid ""
"Emitted when user changes the workspace ([b]2D[/b], [b]3D[/b], [b]Script[/"
"b], [b]AssetLib[/b]). Also works with custom screens defined by plugins."
msgstr ""
-#: doc/classes/EditorPlugin.xml:531
+#: doc/classes/EditorPlugin.xml:549
msgid ""
"Emitted when the scene is changed in the editor. The argument will return "
"the root node of the scene that has just become active. If this scene is new "
"and empty, the argument will be [code]null[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:538
+#: doc/classes/EditorPlugin.xml:556
msgid ""
"Emitted when user closes a scene. The argument is file path to a closed "
"scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:584
+#: doc/classes/EditorPlugin.xml:602
msgid "Represents the size of the [enum DockSlot] enum."
msgstr ""
@@ -18905,64 +19299,83 @@ msgid "When this virtual function is called, you must update your editor."
msgstr ""
#: doc/classes/EditorProperty.xml:76
-msgid "Used by the inspector, set when property is checkable."
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is "
+"checkable."
msgstr ""
#: doc/classes/EditorProperty.xml:79
-msgid "Used by the inspector, when the property is checked."
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is checked."
msgstr ""
-#: doc/classes/EditorProperty.xml:84
-msgid "Used by the inspector, when the property must draw with error color."
+#: doc/classes/EditorProperty.xml:82
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property can be "
+"deleted by the user."
msgstr ""
-#: doc/classes/EditorProperty.xml:87
-msgid "Used by the inspector, when the property can add keys for animation."
+#: doc/classes/EditorProperty.xml:85
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property must draw "
+"with error color. This is used for editable children's properties."
msgstr ""
-#: doc/classes/EditorProperty.xml:90
-msgid "Sets this property to change the label (if you want to show one)."
+#: doc/classes/EditorProperty.xml:88
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property can add "
+"keys for animation."
msgstr ""
-#: doc/classes/EditorProperty.xml:93
-msgid "Used by the inspector, when the property is read-only."
+#: doc/classes/EditorProperty.xml:91
+msgid "Set this property to change the label (if you want to show one)."
msgstr ""
-#: doc/classes/EditorProperty.xml:103
+#: doc/classes/EditorProperty.xml:94
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is read-"
+"only."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:104
msgid ""
"Emit it if you want multiple properties modified at the same time. Do not "
"use if added via [method EditorInspectorPlugin.parse_property]."
msgstr ""
-#: doc/classes/EditorProperty.xml:112
+#: doc/classes/EditorProperty.xml:113
msgid "Used by sub-inspectors. Emit it if what was selected was an Object ID."
msgstr ""
-#: doc/classes/EditorProperty.xml:121
+#: doc/classes/EditorProperty.xml:122
msgid ""
"Do not emit this manually, use the [method emit_changed] method instead."
msgstr ""
-#: doc/classes/EditorProperty.xml:130
+#: doc/classes/EditorProperty.xml:131
msgid "Emitted when a property was checked. Used internally."
msgstr ""
-#: doc/classes/EditorProperty.xml:143
+#: doc/classes/EditorProperty.xml:138
+msgid "Emitted when a property was deleted. Used internally."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:145
msgid ""
"Emit it if you want to add this value as an animation key (check for keying "
"being enabled first)."
msgstr ""
-#: doc/classes/EditorProperty.xml:152
+#: doc/classes/EditorProperty.xml:154
msgid "Emit it if you want to key a property with a single value."
msgstr ""
-#: doc/classes/EditorProperty.xml:161
+#: doc/classes/EditorProperty.xml:163
msgid ""
"If you want a sub-resource to be edited, emit this signal with the resource."
msgstr ""
-#: doc/classes/EditorProperty.xml:170
+#: doc/classes/EditorProperty.xml:172
msgid "Emitted when selected. Used internally."
msgstr ""
@@ -19247,17 +19660,26 @@ msgstr ""
msgid ""
"Object that holds the project-independent editor settings. These settings "
"are generally visible in the [b]Editor > Editor Settings[/b] menu.\n"
-"Accessing the settings is done by using the regular [Object] API, such as:\n"
-"[codeblock]\n"
-"settings.set(prop,value)\n"
-"settings.get(prop)\n"
-"list_of_settings = settings.get_property_list()\n"
+"Property names use slash delimiters to distinguish sections. Setting values "
+"can be of any [Variant] type. It's recommended to use [code]snake_case[/"
+"code] for editor settings to be consistent with the Godot editor itself.\n"
+"Accessing the settings can be done using the following methods, such as:\n"
+"[codeblock]\n"
+"# `settings.set(\"some/property\", value)` also works as this class "
+"overrides `_set()` internally.\n"
+"settings.set_setting(\"some/property\",value)\n"
+"\n"
+"# `settings.get(\"some/property\", value)` also works as this class "
+"overrides `_get()` internally.\n"
+"settings.get_setting(\"some/property\")\n"
+"\n"
+"var list_of_settings = settings.get_property_list()\n"
"[/codeblock]\n"
"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
"the singleton using [method EditorInterface.get_editor_settings]."
msgstr ""
-#: doc/classes/EditorSettings.xml:25
+#: doc/classes/EditorSettings.xml:30
msgid ""
"Adds a custom property info to a property. The dictionary must contain:\n"
"- [code]name[/code]: [String] (the name of the property)\n"
@@ -19279,52 +19701,173 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorSettings.xml:50
-msgid "Erase a given setting (pass full property path)."
+#: doc/classes/EditorSettings.xml:55
+msgid "Erases the setting whose name is specified by [code]property[/code]."
msgstr ""
-#: doc/classes/EditorSettings.xml:57
-msgid "Gets the list of favorite files and directories for this project."
+#: doc/classes/EditorSettings.xml:62
+msgid "Returns the list of favorite files and directories for this project."
msgstr ""
-#: doc/classes/EditorSettings.xml:76
+#: doc/classes/EditorSettings.xml:75
msgid ""
-"Gets the specific project settings path. Projects all have a unique sub-"
-"directory inside the settings path where project specific settings are saved."
+"Returns project-specific metadata for the [code]section[/code] and "
+"[code]key[/code] specified. If the metadata doesn't exist, [code]default[/"
+"code] will be returned instead. See also [method set_project_metadata]."
msgstr ""
-#: doc/classes/EditorSettings.xml:83
+#: doc/classes/EditorSettings.xml:82
msgid ""
-"Gets the list of recently visited folders in the file dialog for this "
+"Returns the project-specific settings path. Projects all have a unique "
+"subdirectory inside the settings path where project-specific settings are "
+"saved."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:89
+msgid ""
+"Returns the list of recently visited folders in the file dialog for this "
"project."
msgstr ""
#: doc/classes/EditorSettings.xml:98
msgid ""
+"Returns the value of the setting specified by [code]name[/code]. This is "
+"equivalent to using [method Object.get] on the EditorSettings instance."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:105
+msgid ""
"Gets the global settings path for the engine. Inside this path, you can find "
"some standard paths such as:\n"
"[code]settings/tmp[/code] - Used for temporary storage of files\n"
"[code]settings/templates[/code] - Where export templates are located"
msgstr ""
-#: doc/classes/EditorSettings.xml:133
+#: doc/classes/EditorSettings.xml:116
+msgid ""
+"Returns [code]true[/code] if the setting specified by [code]name[/code] "
+"exists, [code]false[/code] otherwise."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:125
+msgid ""
+"Returns [code]true[/code] if the setting specified by [code]name[/code] can "
+"have its value reverted to the default value, [code]false[/code] otherwise. "
+"When this method returns [code]true[/code], a Revert button will display "
+"next to the setting in the Editor Settings."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:134
+msgid ""
+"Returns the default value of the setting specified by [code]name[/code]. "
+"This is the value that would be applied when clicking the Revert button in "
+"the Editor Settings."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:143
msgid "Sets the list of favorite files and directories for this project."
msgstr ""
-#: doc/classes/EditorSettings.xml:166
+#: doc/classes/EditorSettings.xml:156
+msgid ""
+"Sets the initial value of the setting specified by [code]name[/code] to "
+"[code]value[/code]. This is used to provide a value for the Revert button in "
+"the Editor Settings. If [code]update_current[/code] is true, the current "
+"value of the setting will be set to [code]value[/code] as well."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:169
+msgid ""
+"Sets project-specific metadata with the [code]section[/code], [code]key[/"
+"code] and [code]data[/code] specified. This metadata is stored outside the "
+"project folder and therefore won't be checked into version control. See also "
+"[method get_project_metadata]."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:178
msgid ""
"Sets the list of recently visited folders in the file dialog for this "
"project."
msgstr ""
-#: doc/classes/EditorSettings.xml:183
-msgid "Emitted when editor settings change."
+#: doc/classes/EditorSettings.xml:189
+msgid ""
+"Sets the [code]value[/code] of the setting specified by [code]name[/code]. "
+"This is equivalent to using [method Object.set] on the EditorSettings "
+"instance."
msgstr ""
-#: doc/classes/EditorSettings.xml:189
+#: doc/classes/EditorSettings.xml:196
+msgid "Emitted after any editor setting has changed."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:202
+msgid ""
+"Emitted after any editor setting has changed. It's used by various editor "
+"plugins to update their visuals on theme changes or logic on configuration "
+"changes."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:4
msgid ""
-"Emitted when editor settings change. It used by various editor plugins to "
-"update their visuals on theme changes or logic on configuration changes."
+"Plugin for adding custom parsers to extract strings that are to be "
+"translated from custom files (.csv, .json etc.)."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:7
+msgid ""
+"Plugins are registered via [method EditorPlugin."
+"add_translation_parser_plugin] method. To define the parsing and string "
+"extraction logic, override the [method parse_file] method in script.\n"
+"The extracted strings will be written into a POT file selected by user under "
+"\"POT Generation\" in \"Localization\" tab in \"Project Settings\" menu.\n"
+"Below shows an example of a custom parser that extracts strings in a CSV "
+"file to write into a POT.\n"
+"[codeblock]\n"
+"tool\n"
+"extends EditorTranslationParserPlugin\n"
+"\n"
+"\n"
+"func parse_file(path, extracted_strings):\n"
+" var file = File.new()\n"
+" file.open(path, File.READ)\n"
+" var text = file.get_as_text()\n"
+" var split_strs = text.split(\",\", false, 0)\n"
+" for s in split_strs:\n"
+" extracted_strings.append(s)\n"
+" #print(\"Extracted string: \" + s)\n"
+"\n"
+"\n"
+"func get_recognized_extensions():\n"
+" return [\"csv\"]\n"
+"[/codeblock]\n"
+"[b]Note:[/b] If you override parsing logic for standard script types "
+"(GDScript, C#, etc.), it would be better to load the [code]path[/code] "
+"argument using [method ResourceLoader.load]. This is because built-in "
+"scripts are loaded as [Resource] type, not [File] type.\n"
+"For example:\n"
+"[codeblock]\n"
+"func parse_file(path, extracted_strings):\n"
+" var res = ResourceLoader.load(path, \"Script\")\n"
+" var text = res.get_source_code()\n"
+" # Parsing logic.\n"
+"\n"
+"\n"
+"func get_recognized_extensions():\n"
+" return [\"gd\"]\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:48
+msgid ""
+"Gets the list of file extensions to associate with this parser, e.g. [code]"
+"[\"csv\"][/code]."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:59
+msgid ""
+"Override this method to define a custom parsing logic to extract the "
+"translatable strings."
msgstr ""
#: doc/classes/EditorVCSInterface.xml:4
@@ -19935,15 +20478,15 @@ msgid ""
"to 1.3 to compensate for the lack of HDR rendering."
msgstr ""
-#: doc/classes/Environment.xml:190
+#: doc/classes/Environment.xml:214
msgid "The [Sky] resource used for this [Environment]."
msgstr ""
-#: doc/classes/Environment.xml:197
+#: doc/classes/Environment.xml:221
msgid "The depth tolerance for screen-space reflections."
msgstr ""
-#: doc/classes/Environment.xml:200
+#: doc/classes/Environment.xml:224
msgid ""
"If [code]true[/code], screen-space reflections are enabled. Screen-space "
"reflections are more accurate than reflections from [GIProbe]s or "
@@ -19951,48 +20494,48 @@ msgid ""
"others."
msgstr ""
-#: doc/classes/Environment.xml:203
+#: doc/classes/Environment.xml:227
msgid ""
"The fade-in distance for screen-space reflections. Affects the area from the "
"reflected material to the screen-space reflection)."
msgstr ""
-#: doc/classes/Environment.xml:206
+#: doc/classes/Environment.xml:230
msgid ""
"The fade-out distance for screen-space reflections. Affects the area from "
"the screen-space reflection to the \"global\" reflection."
msgstr ""
-#: doc/classes/Environment.xml:209
+#: doc/classes/Environment.xml:233
msgid ""
"The maximum number of steps for screen-space reflections. Higher values are "
"slower."
msgstr ""
-#: doc/classes/Environment.xml:212
+#: doc/classes/Environment.xml:236
msgid ""
"The screen-space ambient occlusion intensity on materials that have an AO "
"texture defined. Values higher than [code]0[/code] will make the SSAO effect "
"visible in areas darkened by AO textures."
msgstr ""
-#: doc/classes/Environment.xml:215
+#: doc/classes/Environment.xml:239
msgid ""
"The screen-space ambient occlusion bias. This should be kept high enough to "
"prevent \"smooth\" curves from being affected by ambient occlusion."
msgstr ""
-#: doc/classes/Environment.xml:218
+#: doc/classes/Environment.xml:242
msgid ""
"The screen-space ambient occlusion blur quality. See [enum SSAOBlur] for "
"possible values."
msgstr ""
-#: doc/classes/Environment.xml:221
+#: doc/classes/Environment.xml:245
msgid "The screen-space ambient occlusion edge sharpness."
msgstr ""
-#: doc/classes/Environment.xml:224
+#: doc/classes/Environment.xml:248
msgid ""
"If [code]true[/code], the screen-space ambient occlusion effect is enabled. "
"This darkens objects' corners and cavities to simulate ambient light not "
@@ -20003,13 +20546,13 @@ msgid ""
"issues."
msgstr ""
-#: doc/classes/Environment.xml:227
+#: doc/classes/Environment.xml:251
msgid ""
"The primary screen-space ambient occlusion intensity. See also [member "
"ssao_radius]."
msgstr ""
-#: doc/classes/Environment.xml:230
+#: doc/classes/Environment.xml:254
msgid ""
"The screen-space ambient occlusion intensity in direct light. In real life, "
"ambient occlusion only applies to indirect light, which means its effects "
@@ -20017,46 +20560,46 @@ msgid ""
"the SSAO effect visible in direct light."
msgstr ""
-#: doc/classes/Environment.xml:233
+#: doc/classes/Environment.xml:257
msgid "The primary screen-space ambient occlusion radius."
msgstr ""
-#: doc/classes/Environment.xml:236
+#: doc/classes/Environment.xml:260
msgid "The default exposure used for tonemapping."
msgstr ""
-#: doc/classes/Environment.xml:239
+#: doc/classes/Environment.xml:263
msgid ""
"The tonemapping mode to use. Tonemapping is the process that \"converts\" "
"HDR values to be suitable for rendering on a LDR display. (Godot doesn't "
"support rendering on HDR displays yet.)"
msgstr ""
-#: doc/classes/Environment.xml:242
+#: doc/classes/Environment.xml:266
msgid ""
"The white reference value for tonemapping. Only effective if the [member "
"tonemap_mode] isn't set to [constant TONE_MAPPER_LINEAR]."
msgstr ""
-#: doc/classes/Environment.xml:247
+#: doc/classes/Environment.xml:271
msgid ""
"Clears the background using the clear color defined in [member "
"ProjectSettings.rendering/environment/default_clear_color]."
msgstr ""
-#: doc/classes/Environment.xml:250
+#: doc/classes/Environment.xml:274
msgid "Clears the background using a custom clear color."
msgstr ""
-#: doc/classes/Environment.xml:253
+#: doc/classes/Environment.xml:277
msgid "Displays a user-defined sky in the background."
msgstr ""
-#: doc/classes/Environment.xml:256
+#: doc/classes/Environment.xml:280
msgid "Displays a [CanvasLayer] in the background."
msgstr ""
-#: doc/classes/Environment.xml:259
+#: doc/classes/Environment.xml:283
msgid ""
"Keeps on screen every pixel drawn in the background. This is the fastest "
"background mode, but it can only be safely used in fully-interior scenes (no "
@@ -20064,107 +20607,107 @@ msgid ""
"is visible, \"ghost trail\" artifacts will be visible when moving the camera."
msgstr ""
-#: doc/classes/Environment.xml:262 doc/classes/RenderingServer.xml:3446
+#: doc/classes/Environment.xml:286 doc/classes/RenderingServer.xml:3457
msgid "Displays a camera feed in the background."
msgstr ""
-#: doc/classes/Environment.xml:265
+#: doc/classes/Environment.xml:289
msgid "Represents the size of the [enum BGMode] enum."
msgstr ""
-#: doc/classes/Environment.xml:268 doc/classes/RenderingServer.xml:3452
+#: doc/classes/Environment.xml:292 doc/classes/RenderingServer.xml:3463
msgid ""
"Gather ambient light from whichever source is specified as the background."
msgstr ""
-#: doc/classes/Environment.xml:271 doc/classes/RenderingServer.xml:3455
+#: doc/classes/Environment.xml:295 doc/classes/RenderingServer.xml:3466
msgid "Disable ambient light."
msgstr ""
-#: doc/classes/Environment.xml:274 doc/classes/RenderingServer.xml:3458
+#: doc/classes/Environment.xml:298 doc/classes/RenderingServer.xml:3469
msgid "Specify a specific [Color] for ambient light."
msgstr ""
-#: doc/classes/Environment.xml:277 doc/classes/RenderingServer.xml:3461
+#: doc/classes/Environment.xml:301 doc/classes/RenderingServer.xml:3472
msgid ""
"Gather ambient light from the [Sky] regardless of what the background is."
msgstr ""
-#: doc/classes/Environment.xml:280 doc/classes/RenderingServer.xml:3464
+#: doc/classes/Environment.xml:304 doc/classes/RenderingServer.xml:3475
msgid "Use the background for reflections."
msgstr ""
-#: doc/classes/Environment.xml:283 doc/classes/RenderingServer.xml:3467
+#: doc/classes/Environment.xml:307 doc/classes/RenderingServer.xml:3478
msgid "Disable reflections."
msgstr ""
-#: doc/classes/Environment.xml:286 doc/classes/RenderingServer.xml:3470
+#: doc/classes/Environment.xml:310 doc/classes/RenderingServer.xml:3481
msgid "Use the [Sky] for reflections regardless of what the background is."
msgstr ""
-#: doc/classes/Environment.xml:289 doc/classes/RenderingServer.xml:3473
+#: doc/classes/Environment.xml:313
+msgid ""
+"Linear tonemapper operator. Reads the linear data and passes it on "
+"unmodified."
+msgstr ""
+
+#: doc/classes/Environment.xml:316
+msgid ""
+"Reinhardt tonemapper operator. Performs a variation on rendered pixels' "
+"colors by this formula: [code]color = color / (1 + color)[/code]."
+msgstr ""
+
+#: doc/classes/Environment.xml:319
+msgid "Filmic tonemapper operator."
+msgstr ""
+
+#: doc/classes/Environment.xml:322
+msgid "Academy Color Encoding System tonemapper operator."
+msgstr ""
+
+#: doc/classes/Environment.xml:325 doc/classes/RenderingServer.xml:3484
msgid ""
"Additive glow blending mode. Mostly used for particles, glows (bloom), lens "
"flare, bright sources."
msgstr ""
-#: doc/classes/Environment.xml:292 doc/classes/RenderingServer.xml:3476
+#: doc/classes/Environment.xml:328 doc/classes/RenderingServer.xml:3487
msgid ""
"Screen glow blending mode. Increases brightness, used frequently with bloom."
msgstr ""
-#: doc/classes/Environment.xml:295 doc/classes/RenderingServer.xml:3479
+#: doc/classes/Environment.xml:331 doc/classes/RenderingServer.xml:3490
msgid ""
"Soft light glow blending mode. Modifies contrast, exposes shadows and "
"highlights (vivid bloom)."
msgstr ""
-#: doc/classes/Environment.xml:298 doc/classes/RenderingServer.xml:3482
+#: doc/classes/Environment.xml:334 doc/classes/RenderingServer.xml:3493
msgid ""
"Replace glow blending mode. Replaces all pixels' color by the glow value. "
"This can be used to simulate a full-screen blur effect by tweaking the glow "
"parameters to match the original image's brightness."
msgstr ""
-#: doc/classes/Environment.xml:301 doc/classes/RenderingServer.xml:3485
+#: doc/classes/Environment.xml:337 doc/classes/RenderingServer.xml:3496
msgid ""
"Mixes the glow with the underlying color to avoid increasing brightness as "
"much while still maintaining a glow effect."
msgstr ""
-#: doc/classes/Environment.xml:304
-msgid ""
-"Linear tonemapper operator. Reads the linear data and passes it on "
-"unmodified."
-msgstr ""
-
-#: doc/classes/Environment.xml:307
-msgid ""
-"Reinhardt tonemapper operator. Performs a variation on rendered pixels' "
-"colors by this formula: [code]color = color / (1 + color)[/code]."
-msgstr ""
-
-#: doc/classes/Environment.xml:310
-msgid "Filmic tonemapper operator."
-msgstr ""
-
-#: doc/classes/Environment.xml:313
-msgid "Academy Color Encoding System tonemapper operator."
-msgstr ""
-
-#: doc/classes/Environment.xml:316
+#: doc/classes/Environment.xml:340
msgid "No blur for the screen-space ambient occlusion effect (fastest)."
msgstr ""
-#: doc/classes/Environment.xml:319
+#: doc/classes/Environment.xml:343
msgid "1×1 blur for the screen-space ambient occlusion effect."
msgstr ""
-#: doc/classes/Environment.xml:322
+#: doc/classes/Environment.xml:346
msgid "2×2 blur for the screen-space ambient occlusion effect."
msgstr ""
-#: doc/classes/Environment.xml:325
+#: doc/classes/Environment.xml:349
msgid ""
"3×3 blur for the screen-space ambient occlusion effect. Increases the radius "
"of the blur for a smoother look, but can result in checkerboard-like "
@@ -20249,14 +20792,17 @@ msgid ""
" var content = file.get_as_text()\n"
" file.close()\n"
" return content\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"In the example above, the file will be saved in the user data folder as "
+"specified in the [url=https://docs.godotengine.org/en/latest/tutorials/io/"
+"data_paths.html]Data paths[/url] documentation."
msgstr ""
-#: doc/classes/File.xml:32
+#: doc/classes/File.xml:33
msgid "Closes the currently opened file."
msgstr ""
-#: doc/classes/File.xml:39
+#: doc/classes/File.xml:40
msgid ""
"Returns [code]true[/code] if the file cursor has read past the end of the "
"file.\n"
@@ -20267,7 +20813,7 @@ msgid ""
"get_position] to implement a custom logic."
msgstr ""
-#: doc/classes/File.xml:49
+#: doc/classes/File.xml:50
msgid ""
"Returns [code]true[/code] if the file exists in the given path.\n"
"[b]Note:[/b] Many resources types are imported (e.g. textures or sound "
@@ -20280,41 +20826,41 @@ msgid ""
"source asset is present in [code]res://[/code], but fail when exported)."
msgstr ""
-#: doc/classes/File.xml:57
+#: doc/classes/File.xml:58
msgid ""
"Returns the next 16 bits from the file as an integer. See [method store_16] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:64
+#: doc/classes/File.xml:65
msgid ""
"Returns the next 32 bits from the file as an integer. See [method store_32] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:71
+#: doc/classes/File.xml:72
msgid ""
"Returns the next 64 bits from the file as an integer. See [method store_64] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:78
+#: doc/classes/File.xml:79
msgid ""
"Returns the next 8 bits from the file as an integer. See [method store_8] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:85
+#: doc/classes/File.xml:86
msgid ""
"Returns the whole file as a [String].\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:95
+#: doc/classes/File.xml:96
msgid "Returns next [code]len[/code] bytes of the file as a [PackedByteArray]."
msgstr ""
-#: doc/classes/File.xml:104
+#: doc/classes/File.xml:105
msgid ""
"Returns the next value of the file in CSV (Comma-Separated Values) format. "
"You can pass a different delimiter [code]delim[/code] to use other than the "
@@ -20323,37 +20869,37 @@ msgid ""
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:112
+#: doc/classes/File.xml:113
msgid "Returns the next 64 bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:119
+#: doc/classes/File.xml:120
msgid ""
"Returns the last error that happened when trying to perform operations. "
"Compare with the [code]ERR_FILE_*[/code] constants from [enum Error]."
msgstr ""
-#: doc/classes/File.xml:126
+#: doc/classes/File.xml:127
msgid "Returns the next 32 bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:133
+#: doc/classes/File.xml:134
msgid "Returns the size of the file in bytes."
msgstr ""
-#: doc/classes/File.xml:140
+#: doc/classes/File.xml:141
msgid ""
"Returns the next line of the file as a [String].\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:150
+#: doc/classes/File.xml:151
msgid ""
"Returns an MD5 String representing the file at the given path or an empty "
"[String] on failure."
msgstr ""
-#: doc/classes/File.xml:159
+#: doc/classes/File.xml:160
msgid ""
"Returns the last time the [code]file[/code] was modified in unix timestamp "
"format or returns a [String] \"ERROR IN [code]file[/code]\". This unix "
@@ -20361,35 +20907,35 @@ msgid ""
"get_datetime_from_unix_time]."
msgstr ""
-#: doc/classes/File.xml:166
+#: doc/classes/File.xml:167
msgid ""
"Returns a [String] saved in Pascal format from the file.\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:174
+#: doc/classes/File.xml:175
msgid "Returns the path as a [String] for the current open file."
msgstr ""
-#: doc/classes/File.xml:181
+#: doc/classes/File.xml:182
msgid "Returns the absolute path as a [String] for the current open file."
msgstr ""
-#: doc/classes/File.xml:188
+#: doc/classes/File.xml:189
msgid "Returns the file cursor's position."
msgstr ""
-#: doc/classes/File.xml:195
+#: doc/classes/File.xml:196
msgid "Returns the next bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:204
+#: doc/classes/File.xml:205
msgid ""
"Returns a SHA-256 [String] representing the file at the given path or an "
"empty [String] on failure."
msgstr ""
-#: doc/classes/File.xml:213
+#: doc/classes/File.xml:214
msgid ""
"Returns the next [Variant] value from the file. If [code]allow_objects[/"
"code] is [code]true[/code], decoding objects is allowed.\n"
@@ -20398,37 +20944,38 @@ msgid ""
"to avoid potential security threats such as remote code execution."
msgstr ""
-#: doc/classes/File.xml:221
+#: doc/classes/File.xml:222
msgid "Returns [code]true[/code] if the file is currently opened."
msgstr ""
-#: doc/classes/File.xml:232
+#: doc/classes/File.xml:233
msgid "Opens the file for writing or reading, depending on the flags."
msgstr ""
-#: doc/classes/File.xml:245
+#: doc/classes/File.xml:246
msgid "Opens a compressed file for reading or writing."
msgstr ""
-#: doc/classes/File.xml:258
+#: doc/classes/File.xml:259
msgid ""
"Opens an encrypted file in write or read mode. You need to pass a binary key "
-"to encrypt/decrypt it."
+"to encrypt/decrypt it.\n"
+"[b]Note:[/b] The provided key must be 32 bytes long."
msgstr ""
-#: doc/classes/File.xml:271
+#: doc/classes/File.xml:273
msgid ""
"Opens an encrypted file in write or read mode. You need to pass a password "
"to encrypt/decrypt it."
msgstr ""
-#: doc/classes/File.xml:280
+#: doc/classes/File.xml:282
msgid ""
"Changes the file reading/writing cursor to the specified position (in bytes "
"from the beginning of the file)."
msgstr ""
-#: doc/classes/File.xml:289
+#: doc/classes/File.xml:291
msgid ""
"Changes the file reading/writing cursor to the specified position (in bytes "
"from the end of the file).\n"
@@ -20436,7 +20983,7 @@ msgid ""
"cursor will be at the end of the file."
msgstr ""
-#: doc/classes/File.xml:299
+#: doc/classes/File.xml:301
msgid ""
"Stores an integer as 16 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, "
@@ -20464,7 +21011,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/File.xml:328
+#: doc/classes/File.xml:330
msgid ""
"Stores an integer as 32 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, "
@@ -20473,14 +21020,14 @@ msgid ""
"(see [method store_16] for an example)."
msgstr ""
-#: doc/classes/File.xml:339
+#: doc/classes/File.xml:341
msgid ""
"Stores an integer as 64 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] must lie in the interval [code][-2^63, "
"2^63 - 1][/code] (i.e. be a valid [int] value)."
msgstr ""
-#: doc/classes/File.xml:349
+#: doc/classes/File.xml:351
msgid ""
"Stores an integer as 8 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, 255]"
@@ -20489,11 +21036,11 @@ msgid ""
"(see [method store_16] for an example)."
msgstr ""
-#: doc/classes/File.xml:360
+#: doc/classes/File.xml:362
msgid "Stores the given array of bytes in the file."
msgstr ""
-#: doc/classes/File.xml:371
+#: doc/classes/File.xml:373
msgid ""
"Store the given [PackedStringArray] in the file as a line formatted in the "
"CSV (Comma-Separated Values) format. You can pass a different delimiter "
@@ -20502,45 +21049,45 @@ msgid ""
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:381
+#: doc/classes/File.xml:383
msgid "Stores a floating-point number as 64 bits in the file."
msgstr ""
-#: doc/classes/File.xml:390
+#: doc/classes/File.xml:392
msgid "Stores a floating-point number as 32 bits in the file."
msgstr ""
-#: doc/classes/File.xml:399
+#: doc/classes/File.xml:401
msgid ""
"Stores the given [String] as a line in the file.\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:409
+#: doc/classes/File.xml:411
msgid ""
"Stores the given [String] as a line in the file in Pascal format (i.e. also "
"store the length of the string).\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:419
+#: doc/classes/File.xml:421
msgid "Stores a floating-point number in the file."
msgstr ""
-#: doc/classes/File.xml:428
+#: doc/classes/File.xml:430
msgid ""
"Stores the given [String] in the file.\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:440
+#: doc/classes/File.xml:442
msgid ""
"Stores any Variant value in the file. If [code]full_objects[/code] is "
"[code]true[/code], encoding objects is allowed (and can potentially include "
"code)."
msgstr ""
-#: doc/classes/File.xml:446
+#: doc/classes/File.xml:448
msgid ""
"If [code]true[/code], the file's endianness is swapped. Use this if you're "
"dealing with files written on big-endian machines.\n"
@@ -20548,44 +21095,44 @@ msgid ""
"reset to [code]false[/code] whenever you open the file."
msgstr ""
-#: doc/classes/File.xml:452
+#: doc/classes/File.xml:454
msgid "Opens the file for read operations."
msgstr ""
-#: doc/classes/File.xml:455
+#: doc/classes/File.xml:457
msgid ""
"Opens the file for write operations. Create it if the file does not exist "
"and truncate if it exists."
msgstr ""
-#: doc/classes/File.xml:458
+#: doc/classes/File.xml:460
msgid ""
"Opens the file for read and write operations. Does not truncate the file."
msgstr ""
-#: doc/classes/File.xml:461
+#: doc/classes/File.xml:463
msgid ""
"Opens the file for read and write operations. Create it if the file does not "
"exist and truncate if it exists."
msgstr ""
-#: doc/classes/File.xml:464
+#: doc/classes/File.xml:466
msgid "Uses the [url=http://fastlz.org/]FastLZ[/url] compression method."
msgstr ""
-#: doc/classes/File.xml:467
+#: doc/classes/File.xml:469
msgid ""
"Uses the [url=https://en.wikipedia.org/wiki/DEFLATE]DEFLATE[/url] "
"compression method."
msgstr ""
-#: doc/classes/File.xml:470
+#: doc/classes/File.xml:472
msgid ""
"Uses the [url=https://facebook.github.io/zstd/]Zstandard[/url] compression "
"method."
msgstr ""
-#: doc/classes/File.xml:473
+#: doc/classes/File.xml:475
msgid "Uses the [url=https://www.gzip.org/]gzip[/url] compression method."
msgstr ""
@@ -20801,10 +21348,11 @@ msgid ""
"Draw [code]string[/code] into a canvas item using the font at a given "
"position, with [code]modulate[/code] color, and optionally clipping the "
"width. [code]position[/code] specifies the baseline, not the top. To draw "
-"from the top, [i]ascent[/i] must be added to the Y axis."
+"from the top, [i]ascent[/i] must be added to the Y axis.\n"
+"See also [method CanvasItem.draw_string]."
msgstr ""
-#: doc/classes/Font.xml:47
+#: doc/classes/Font.xml:48
msgid ""
"Draw character [code]char[/code] into a canvas item using the font at a "
"given position, with [code]modulate[/code] color, and optionally kerning if "
@@ -20814,39 +21362,39 @@ msgid ""
"making this function useful for drawing strings character by character."
msgstr ""
-#: doc/classes/Font.xml:54
+#: doc/classes/Font.xml:55
msgid "Returns the font ascent (number of pixels above the baseline)."
msgstr ""
-#: doc/classes/Font.xml:65
+#: doc/classes/Font.xml:66
msgid ""
"Returns the size of a character, optionally taking kerning into account if "
"the next character is provided."
msgstr ""
-#: doc/classes/Font.xml:72
+#: doc/classes/Font.xml:73
msgid "Returns the font descent (number of pixels below the baseline)."
msgstr ""
-#: doc/classes/Font.xml:79
+#: doc/classes/Font.xml:80
msgid "Returns the total font height (ascent plus descent) in pixels."
msgstr ""
-#: doc/classes/Font.xml:88
+#: doc/classes/Font.xml:89
msgid "Returns the size of a string, taking kerning and advance into account."
msgstr ""
-#: doc/classes/Font.xml:99
+#: doc/classes/Font.xml:100
msgid ""
"Returns the size that the string would have with word wrapping enabled with "
"a fixed [code]width[/code]."
msgstr ""
-#: doc/classes/Font.xml:106
+#: doc/classes/Font.xml:107
msgid "Returns [code]true[/code] if the font has an outline."
msgstr ""
-#: doc/classes/Font.xml:119
+#: doc/classes/Font.xml:120
msgid ""
"After editing a font (changing size, ascent, char rects, etc.). Call this "
"function to propagate changes to controls that might use it."
@@ -21018,13 +21566,14 @@ msgstr ""
#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:7
msgid ""
-"Calling [method @GDScript.yield] within a function will cause that function "
-"to yield and return its current state as an object of this type. The yielded "
+"FIXME: Outdated docs as of GDScript rewrite in 4.0.\n"
+"Calling [code]yield[/code] within a function will cause that function to "
+"yield and return its current state as an object of this type. The yielded "
"function call can then be resumed later by calling [method resume] on this "
"state object."
msgstr ""
-#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:18
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:19
msgid ""
"Check whether the function call may be resumed. This is not the case if the "
"function state was already resumed.\n"
@@ -21035,12 +21584,12 @@ msgid ""
"script have survived up to that point."
msgstr ""
-#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:28
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:29
msgid ""
"Resume execution of the yielded function call.\n"
-"If handed an argument, return the argument from the [method @GDScript.yield] "
-"call in the yielded function call. You can pass e.g. an [Array] to hand "
-"multiple arguments.\n"
+"If handed an argument, return the argument from the [code]yield[/code] call "
+"in the yielded function call. You can pass e.g. an [Array] to hand multiple "
+"arguments.\n"
"This function returns what the resumed function call returns, possibly "
"another function state if yielded again."
msgstr ""
@@ -21609,10 +22158,20 @@ msgid ""
"code], see [enum PolyJoinType].\n"
"The operation may result in an outer polygon (boundary) and inner polygon "
"(hole) produced which could be distinguished by calling [method "
-"is_polygon_clockwise]."
+"is_polygon_clockwise].\n"
+"[b]Note:[/b] To translate the polygon's vertices specifically, use the "
+"[method Transform2D.xform] method:\n"
+"[codeblock]\n"
+"var polygon = PackedVector2Array([Vector2(0, 0), Vector2(100, 0), "
+"Vector2(100, 100), Vector2(0, 100)])\n"
+"var offset = Vector2(50, 50)\n"
+"polygon = Transform2D(0, offset).xform(polygon)\n"
+"print(polygon) # prints [Vector2(50, 50), Vector2(150, 50), Vector2(150, "
+"150), Vector2(50, 150)]\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/Geometry2D.xml:217
+#: doc/classes/Geometry2D.xml:224
msgid ""
"Inflates or deflates [code]polyline[/code] by [code]delta[/code] units "
"(pixels), producing polygons. If [code]delta[/code] is positive, makes the "
@@ -21628,13 +22187,13 @@ msgid ""
"is_polygon_clockwise]."
msgstr ""
-#: doc/classes/Geometry2D.xml:235
+#: doc/classes/Geometry2D.xml:242
msgid ""
"Returns if [code]point[/code] is inside the triangle specified by [code]a[/"
"code], [code]b[/code] and [code]c[/code]."
msgstr ""
-#: doc/classes/Geometry2D.xml:250
+#: doc/classes/Geometry2D.xml:257
msgid ""
"Checks if the two segments ([code]from_a[/code], [code]to_a[/code]) and "
"([code]from_b[/code], [code]to_b[/code]) intersect. If yes, return the point "
@@ -21642,7 +22201,7 @@ msgid ""
"empty [Variant]."
msgstr ""
-#: doc/classes/Geometry2D.xml:259
+#: doc/classes/Geometry2D.xml:266
msgid ""
"Triangulates the area specified by discrete set of [code]points[/code] such "
"that no point is inside the circumcircle of any resulting triangle. Returns "
@@ -21653,7 +22212,7 @@ msgid ""
"[PackedInt32Array] is returned."
msgstr ""
-#: doc/classes/Geometry2D.xml:268
+#: doc/classes/Geometry2D.xml:275
msgid ""
"Triangulates the polygon specified by the points in [code]polygon[/code]. "
"Returns a [PackedInt32Array] where each triangle consists of three "
@@ -21663,40 +22222,40 @@ msgid ""
"[PackedInt32Array] is returned."
msgstr ""
-#: doc/classes/Geometry2D.xml:274
+#: doc/classes/Geometry2D.xml:281
msgid ""
"Create regions where either subject or clip polygons (or both) are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:277
+#: doc/classes/Geometry2D.xml:284
msgid ""
"Create regions where subject polygons are filled except where clip polygons "
"are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:280
+#: doc/classes/Geometry2D.xml:287
msgid "Create regions where both subject and clip polygons are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:283
+#: doc/classes/Geometry2D.xml:290
msgid ""
"Create regions where either subject or clip polygons are filled but not "
"where both are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:286
+#: doc/classes/Geometry2D.xml:293
msgid ""
"Squaring is applied uniformally at all convex edge joins at [code]1 * delta[/"
"code]."
msgstr ""
-#: doc/classes/Geometry2D.xml:289
+#: doc/classes/Geometry2D.xml:296
msgid ""
"While flattened paths can never perfectly trace an arc, they are "
"approximated by a series of arc chords."
msgstr ""
-#: doc/classes/Geometry2D.xml:292
+#: doc/classes/Geometry2D.xml:299
msgid ""
"There's a necessary limit to mitered joins since offsetting edges that join "
"at very acute angles will produce excessively long and narrow \"spikes\". "
@@ -21704,27 +22263,27 @@ msgid ""
"distance, \"square\" joining is applied."
msgstr ""
-#: doc/classes/Geometry2D.xml:295
+#: doc/classes/Geometry2D.xml:302
msgid ""
"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
"as a polygon."
msgstr ""
-#: doc/classes/Geometry2D.xml:298
+#: doc/classes/Geometry2D.xml:305
msgid ""
"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
"as a polyline."
msgstr ""
-#: doc/classes/Geometry2D.xml:301
+#: doc/classes/Geometry2D.xml:308
msgid "Endpoints are squared off with no extension."
msgstr ""
-#: doc/classes/Geometry2D.xml:304
+#: doc/classes/Geometry2D.xml:311
msgid "Endpoints are squared off and extended by [code]delta[/code] units."
msgstr ""
-#: doc/classes/Geometry2D.xml:307
+#: doc/classes/Geometry2D.xml:314
msgid "Endpoints are rounded off and extended by [code]delta[/code] units."
msgstr ""
@@ -21954,7 +22513,7 @@ msgstr ""
msgid ""
"Bakes the effect from all [GeometryInstance3D]s marked with [constant "
"GeometryInstance3D.GI_MODE_BAKED] and [Light3D]s marked with either "
-"[constant Light3D.BAKE_INDIRECT] or [constant Light3D.BAKE_ALL]. If "
+"[constant Light3D.BAKE_DYNAMIC] or [constant Light3D.BAKE_STATIC]. If "
"[code]create_visual_debug[/code] is [code]true[/code], after baking the "
"light, this will generate a [MultiMesh] that has a cube representing each "
"solid cell with each cube colored to the cell's albedo color. This can be "
@@ -22841,121 +23400,119 @@ msgstr ""
msgid "Clear all cells."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:53
+#: modules/gridmap/doc_classes/GridMap.xml:49
msgid ""
-"The [MeshLibrary] item index located at the grid-based X, Y and Z "
-"coordinates. If the cell is empty, [constant INVALID_CELL_ITEM] will be "
-"returned."
+"The [MeshLibrary] item index located at the given grid coordinates. If the "
+"cell is empty, [constant INVALID_CELL_ITEM] will be returned."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:66
+#: modules/gridmap/doc_classes/GridMap.xml:58
msgid ""
-"The orientation of the cell at the grid-based X, Y and Z coordinates. -1 is "
-"returned if the cell is empty."
+"The orientation of the cell at the given grid coordinates. [code]-1[/code] "
+"is returned if the cell is empty."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:75 doc/classes/PhysicsBody2D.xml:35
+#: modules/gridmap/doc_classes/GridMap.xml:67 doc/classes/PhysicsBody2D.xml:35
#: doc/classes/PhysicsBody3D.xml:35
msgid "Returns an individual bit on the [member collision_layer]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:84 doc/classes/PhysicsBody2D.xml:44
+#: modules/gridmap/doc_classes/GridMap.xml:76 doc/classes/PhysicsBody2D.xml:44
#: doc/classes/PhysicsBody3D.xml:44
msgid "Returns an individual bit on the [member collision_mask]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:91
+#: modules/gridmap/doc_classes/GridMap.xml:83
msgid ""
"Returns an array of [Transform] and [Mesh] references corresponding to the "
"non-empty cells in the grid. The transforms are specified in world space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:98
+#: modules/gridmap/doc_classes/GridMap.xml:90
msgid ""
"Returns an array of [Vector3] with the non-empty cell coordinates in the "
"grid map."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:121
+#: modules/gridmap/doc_classes/GridMap.xml:109
msgid ""
"Returns the position of a grid cell in the GridMap's local coordinate space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:146
+#: modules/gridmap/doc_classes/GridMap.xml:130
msgid ""
-"Sets the mesh index for the cell referenced by its grid-based X, Y and Z "
-"coordinates.\n"
+"Sets the mesh index for the cell referenced by its grid coordinates.\n"
"A negative item index such as [constant INVALID_CELL_ITEM] will clear the "
"cell.\n"
"Optionally, the item's orientation can be passed. For valid orientation "
"values, see [method Basis.get_orthogonal_index]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:173
+#: modules/gridmap/doc_classes/GridMap.xml:157
msgid "Sets an individual bit on the [member collision_layer]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:184
+#: modules/gridmap/doc_classes/GridMap.xml:168
msgid "Sets an individual bit on the [member collision_mask]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:193
+#: modules/gridmap/doc_classes/GridMap.xml:177
msgid ""
"Returns the coordinates of the grid cell containing the given point.\n"
"[code]pos[/code] should be in the GridMap's local coordinate space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:200
+#: modules/gridmap/doc_classes/GridMap.xml:184
msgid "If [code]true[/code], grid items are centered on the X axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:203
+#: modules/gridmap/doc_classes/GridMap.xml:187
msgid "If [code]true[/code], grid items are centered on the Y axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:206
+#: modules/gridmap/doc_classes/GridMap.xml:190
msgid "If [code]true[/code], grid items are centered on the Z axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:209
+#: modules/gridmap/doc_classes/GridMap.xml:193
msgid ""
"The size of each octant measured in number of cells. This applies to all "
"three axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:212
+#: modules/gridmap/doc_classes/GridMap.xml:196
msgid ""
"The scale of the cell items.\n"
"This does not affect the size of the grid cells themselves, only the items "
"in them. This can be used to make cell items overlap their neighbors."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:216
+#: modules/gridmap/doc_classes/GridMap.xml:200
msgid ""
"The dimensions of the grid's cells.\n"
"This does not affect the size of the meshes. See [member cell_scale]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:220
+#: modules/gridmap/doc_classes/GridMap.xml:204
msgid ""
"The physics layers this GridMap is in.\n"
"GridMaps act as static bodies, meaning they aren't affected by gravity or "
"other forces. They only affect other physics bodies that collide with them."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:224
+#: modules/gridmap/doc_classes/GridMap.xml:208
msgid "The physics layers this GridMap detects collisions in."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:227
+#: modules/gridmap/doc_classes/GridMap.xml:211
msgid "The assigned [MeshLibrary]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:235
+#: modules/gridmap/doc_classes/GridMap.xml:219
msgid "Emitted when [member cell_size] changes."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:241
+#: modules/gridmap/doc_classes/GridMap.xml:225
msgid ""
"Invalid cell item that can be used in [method set_cell_item] to clear cells "
"(or represent an empty cell in [method get_cell_item])."
@@ -23320,27 +23877,33 @@ msgid ""
"server's side.\n"
"For more information on HTTP, see https://developer.mozilla.org/en-US/docs/"
"Web/HTTP (or read RFC 2616 to get it straight from the source: https://tools."
-"ietf.org/html/rfc2616)."
+"ietf.org/html/rfc2616).\n"
+"[b]Note:[/b] When performing HTTP requests from a project exported to HTML5, "
+"keep in mind the remote server may not allow requests from foreign origins "
+"due to [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/"
+"url]. If you host the server in question, you should modify its backend to "
+"allow requests from foreign origins by adding the [code]Access-Control-Allow-"
+"Origin: *[/code] HTTP header."
msgstr ""
-#: doc/classes/HTTPClient.xml:13
+#: doc/classes/HTTPClient.xml:14
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/"
"http_client_class.html"
msgstr ""
-#: doc/classes/HTTPClient.xml:14 doc/classes/HTTPRequest.xml:62
+#: doc/classes/HTTPClient.xml:15 doc/classes/HTTPRequest.xml:71
#: doc/classes/StreamPeerSSL.xml:10
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/ssl_certificates."
"html"
msgstr ""
-#: doc/classes/HTTPClient.xml:21
+#: doc/classes/HTTPClient.xml:22
msgid "Closes the current connection, allowing reuse of this [HTTPClient]."
msgstr ""
-#: doc/classes/HTTPClient.xml:36
+#: doc/classes/HTTPClient.xml:37
msgid ""
"Connects to a host. This needs to be done before any requests are sent.\n"
"The host should not have http:// prepended but will strip the protocol "
@@ -23352,7 +23915,7 @@ msgid ""
"[code]true[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:46
+#: doc/classes/HTTPClient.xml:47
msgid ""
"Returns the response's body length.\n"
"[b]Note:[/b] Some Web servers may not send a body length. In this case, the "
@@ -23360,15 +23923,15 @@ msgid ""
"the body length will also be [code]-1[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:54
+#: doc/classes/HTTPClient.xml:55
msgid "Returns the response's HTTP status code."
msgstr ""
-#: doc/classes/HTTPClient.xml:61
+#: doc/classes/HTTPClient.xml:62
msgid "Returns the response headers."
msgstr ""
-#: doc/classes/HTTPClient.xml:68
+#: doc/classes/HTTPClient.xml:69
msgid ""
"Returns all response headers as a Dictionary of structure [code]{ \"key\": "
"\"value1; value2\" }[/code] where the case-sensitivity of the keys and "
@@ -23383,27 +23946,27 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:82
+#: doc/classes/HTTPClient.xml:83
msgid ""
"Returns a [enum Status] constant. Need to call [method poll] in order to get "
"status updates."
msgstr ""
-#: doc/classes/HTTPClient.xml:89
+#: doc/classes/HTTPClient.xml:90
msgid "If [code]true[/code], this [HTTPClient] has a response available."
msgstr ""
-#: doc/classes/HTTPClient.xml:96
+#: doc/classes/HTTPClient.xml:97
msgid "If [code]true[/code], this [HTTPClient] has a response that is chunked."
msgstr ""
-#: doc/classes/HTTPClient.xml:103
+#: doc/classes/HTTPClient.xml:104
msgid ""
"This needs to be called in order to have any request processed. Check "
"results with [method get_status]."
msgstr ""
-#: doc/classes/HTTPClient.xml:112
+#: doc/classes/HTTPClient.xml:113
msgid ""
"Generates a GET/POST application/x-www-form-urlencoded style query string "
"from a provided dictionary, e.g.:\n"
@@ -23423,11 +23986,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:130
+#: doc/classes/HTTPClient.xml:131
msgid "Reads one chunk from the response."
msgstr ""
-#: doc/classes/HTTPClient.xml:145
+#: doc/classes/HTTPClient.xml:146
msgid ""
"Sends a request to the connected host. The URL parameter is just the part "
"after the host, so for [code]http://somehost.com/index.php[/code], it is "
@@ -23445,7 +24008,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:168
+#: doc/classes/HTTPClient.xml:169
msgid ""
"Sends a raw request to the connected host. The URL parameter is just the "
"part after the host, so for [code]http://somehost.com/index.php[/code], it "
@@ -23455,43 +24018,43 @@ msgid ""
"Sends the body data raw, as a byte array and does not encode it in any way."
msgstr ""
-#: doc/classes/HTTPClient.xml:176
+#: doc/classes/HTTPClient.xml:177
msgid ""
"If [code]true[/code], execution will block until all data is read from the "
"response."
msgstr ""
-#: doc/classes/HTTPClient.xml:179
+#: doc/classes/HTTPClient.xml:180
msgid "The connection to use for this client."
msgstr ""
-#: doc/classes/HTTPClient.xml:182
+#: doc/classes/HTTPClient.xml:183
msgid ""
"The size of the buffer used and maximum bytes to read per iteration. See "
"[method read_response_body_chunk]."
msgstr ""
-#: doc/classes/HTTPClient.xml:187
+#: doc/classes/HTTPClient.xml:188
msgid ""
"HTTP GET method. The GET method requests a representation of the specified "
"resource. Requests using GET should only retrieve data."
msgstr ""
-#: doc/classes/HTTPClient.xml:190
+#: doc/classes/HTTPClient.xml:191
msgid ""
"HTTP HEAD method. The HEAD method asks for a response identical to that of a "
"GET request, but without the response body. This is useful to request "
"metadata like HTTP headers or to check if a resource exists."
msgstr ""
-#: doc/classes/HTTPClient.xml:193
+#: doc/classes/HTTPClient.xml:194
msgid ""
"HTTP POST method. The POST method is used to submit an entity to the "
"specified resource, often causing a change in state or side effects on the "
"server. This is often used for forms and submitting data or uploading files."
msgstr ""
-#: doc/classes/HTTPClient.xml:196
+#: doc/classes/HTTPClient.xml:197
msgid ""
"HTTP PUT method. The PUT method asks to replace all current representations "
"of the target resource with the request payload. (You can think of POST as "
@@ -23499,103 +24062,103 @@ msgid ""
"not make a clear distinction or change their meaning)."
msgstr ""
-#: doc/classes/HTTPClient.xml:199
+#: doc/classes/HTTPClient.xml:200
msgid ""
"HTTP DELETE method. The DELETE method requests to delete the specified "
"resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:202
+#: doc/classes/HTTPClient.xml:203
msgid ""
"HTTP OPTIONS method. The OPTIONS method asks for a description of the "
"communication options for the target resource. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:205
+#: doc/classes/HTTPClient.xml:206
msgid ""
"HTTP TRACE method. The TRACE method performs a message loop-back test along "
"the path to the target resource. Returns the entire HTTP request received in "
"the response body. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:208
+#: doc/classes/HTTPClient.xml:209
msgid ""
"HTTP CONNECT method. The CONNECT method establishes a tunnel to the server "
"identified by the target resource. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:211
+#: doc/classes/HTTPClient.xml:212
msgid ""
"HTTP PATCH method. The PATCH method is used to apply partial modifications "
"to a resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:214
+#: doc/classes/HTTPClient.xml:215
msgid "Represents the size of the [enum Method] enum."
msgstr ""
-#: doc/classes/HTTPClient.xml:217
+#: doc/classes/HTTPClient.xml:218
msgid "Status: Disconnected from the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:220
+#: doc/classes/HTTPClient.xml:221
msgid "Status: Currently resolving the hostname for the given URL into an IP."
msgstr ""
-#: doc/classes/HTTPClient.xml:223
+#: doc/classes/HTTPClient.xml:224
msgid "Status: DNS failure: Can't resolve the hostname for the given URL."
msgstr ""
-#: doc/classes/HTTPClient.xml:226
+#: doc/classes/HTTPClient.xml:227
msgid "Status: Currently connecting to server."
msgstr ""
-#: doc/classes/HTTPClient.xml:229
+#: doc/classes/HTTPClient.xml:230
msgid "Status: Can't connect to the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:232
+#: doc/classes/HTTPClient.xml:233
msgid "Status: Connection established."
msgstr ""
-#: doc/classes/HTTPClient.xml:235
+#: doc/classes/HTTPClient.xml:236
msgid "Status: Currently sending request."
msgstr ""
-#: doc/classes/HTTPClient.xml:238
+#: doc/classes/HTTPClient.xml:239
msgid "Status: HTTP body received."
msgstr ""
-#: doc/classes/HTTPClient.xml:241
+#: doc/classes/HTTPClient.xml:242
msgid "Status: Error in HTTP connection."
msgstr ""
-#: doc/classes/HTTPClient.xml:244
+#: doc/classes/HTTPClient.xml:245
msgid "Status: Error in SSL handshake."
msgstr ""
-#: doc/classes/HTTPClient.xml:247
+#: doc/classes/HTTPClient.xml:248
msgid ""
"HTTP status code [code]100 Continue[/code]. Interim response that indicates "
"everything so far is OK and that the client should continue with the request "
"(or ignore this status if already finished)."
msgstr ""
-#: doc/classes/HTTPClient.xml:250
+#: doc/classes/HTTPClient.xml:251
msgid ""
"HTTP status code [code]101 Switching Protocol[/code]. Sent in response to an "
"[code]Upgrade[/code] request header by the client. Indicates the protocol "
"the server is switching to."
msgstr ""
-#: doc/classes/HTTPClient.xml:253
+#: doc/classes/HTTPClient.xml:254
msgid ""
"HTTP status code [code]102 Processing[/code] (WebDAV). Indicates that the "
"server has received and is processing the request, but no response is "
"available yet."
msgstr ""
-#: doc/classes/HTTPClient.xml:256
+#: doc/classes/HTTPClient.xml:257
msgid ""
"HTTP status code [code]200 OK[/code]. The request has succeeded. Default "
"response for successful requests. Meaning varies depending on the request. "
@@ -23606,14 +24169,14 @@ msgid ""
"server."
msgstr ""
-#: doc/classes/HTTPClient.xml:259
+#: doc/classes/HTTPClient.xml:260
msgid ""
"HTTP status code [code]201 Created[/code]. The request has succeeded and a "
"new resource has been created as a result of it. This is typically the "
"response sent after a PUT request."
msgstr ""
-#: doc/classes/HTTPClient.xml:262
+#: doc/classes/HTTPClient.xml:263
msgid ""
"HTTP status code [code]202 Accepted[/code]. The request has been received "
"but not yet acted upon. It is non-committal, meaning that there is no way in "
@@ -23622,7 +24185,7 @@ msgid ""
"server handles the request, or for batch processing."
msgstr ""
-#: doc/classes/HTTPClient.xml:265
+#: doc/classes/HTTPClient.xml:266
msgid ""
"HTTP status code [code]203 Non-Authoritative Information[/code]. This "
"response code means returned meta-information set is not exact set as "
@@ -23631,14 +24194,14 @@ msgid ""
"instead of this response."
msgstr ""
-#: doc/classes/HTTPClient.xml:268
+#: doc/classes/HTTPClient.xml:269
msgid ""
"HTTP status code [code]204 No Content[/code]. There is no content to send "
"for this request, but the headers may be useful. The user-agent may update "
"its cached headers for this resource with the new ones."
msgstr ""
-#: doc/classes/HTTPClient.xml:271
+#: doc/classes/HTTPClient.xml:272
msgid ""
"HTTP status code [code]205 Reset Content[/code]. The server has fulfilled "
"the request and desires that the client resets the \"document view\" that "
@@ -23646,49 +24209,49 @@ msgid ""
"origin server."
msgstr ""
-#: doc/classes/HTTPClient.xml:274
+#: doc/classes/HTTPClient.xml:275
msgid ""
"HTTP status code [code]206 Partial Content[/code]. This response code is "
"used because of a range header sent by the client to separate download into "
"multiple streams."
msgstr ""
-#: doc/classes/HTTPClient.xml:277
+#: doc/classes/HTTPClient.xml:278
msgid ""
"HTTP status code [code]207 Multi-Status[/code] (WebDAV). A Multi-Status "
"response conveys information about multiple resources in situations where "
"multiple status codes might be appropriate."
msgstr ""
-#: doc/classes/HTTPClient.xml:280
+#: doc/classes/HTTPClient.xml:281
msgid ""
"HTTP status code [code]208 Already Reported[/code] (WebDAV). Used inside a "
"DAV: propstat response element to avoid enumerating the internal members of "
"multiple bindings to the same collection repeatedly."
msgstr ""
-#: doc/classes/HTTPClient.xml:283
+#: doc/classes/HTTPClient.xml:284
msgid ""
"HTTP status code [code]226 IM Used[/code] (WebDAV). The server has fulfilled "
"a GET request for the resource, and the response is a representation of the "
"result of one or more instance-manipulations applied to the current instance."
msgstr ""
-#: doc/classes/HTTPClient.xml:286
+#: doc/classes/HTTPClient.xml:287
msgid ""
"HTTP status code [code]300 Multiple Choice[/code]. The request has more than "
"one possible responses and there is no standardized way to choose one of the "
"responses. User-agent or user should choose one of them."
msgstr ""
-#: doc/classes/HTTPClient.xml:289
+#: doc/classes/HTTPClient.xml:290
msgid ""
"HTTP status code [code]301 Moved Permanently[/code]. Redirection. This "
"response code means the URI of requested resource has been changed. The new "
"URI is usually included in the response."
msgstr ""
-#: doc/classes/HTTPClient.xml:292
+#: doc/classes/HTTPClient.xml:293
msgid ""
"HTTP status code [code]302 Found[/code]. Temporary redirection. This "
"response code means the URI of requested resource has been changed "
@@ -23696,7 +24259,7 @@ msgid ""
"this same URI should be used by the client in future requests."
msgstr ""
-#: doc/classes/HTTPClient.xml:295
+#: doc/classes/HTTPClient.xml:296
msgid ""
"HTTP status code [code]303 See Other[/code]. The server is redirecting the "
"user agent to a different resource, as indicated by a URI in the Location "
@@ -23704,39 +24267,39 @@ msgid ""
"original request."
msgstr ""
-#: doc/classes/HTTPClient.xml:298
+#: doc/classes/HTTPClient.xml:299
msgid ""
"HTTP status code [code]304 Not Modified[/code]. A conditional GET or HEAD "
"request has been received and would have resulted in a 200 OK response if it "
"were not for the fact that the condition evaluated to [code]false[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:301
+#: doc/classes/HTTPClient.xml:302
msgid ""
"HTTP status code [code]305 Use Proxy[/code]. [i]Deprecated. Do not use.[/i]"
msgstr ""
-#: doc/classes/HTTPClient.xml:304
+#: doc/classes/HTTPClient.xml:305
msgid ""
"HTTP status code [code]306 Switch Proxy[/code]. [i]Deprecated. Do not use.[/"
"i]"
msgstr ""
-#: doc/classes/HTTPClient.xml:307
+#: doc/classes/HTTPClient.xml:308
msgid ""
"HTTP status code [code]307 Temporary Redirect[/code]. The target resource "
"resides temporarily under a different URI and the user agent MUST NOT change "
"the request method if it performs an automatic redirection to that URI."
msgstr ""
-#: doc/classes/HTTPClient.xml:310
+#: doc/classes/HTTPClient.xml:311
msgid ""
"HTTP status code [code]308 Permanent Redirect[/code]. The target resource "
"has been assigned a new permanent URI and any future references to this "
"resource ought to use one of the enclosed URIs."
msgstr ""
-#: doc/classes/HTTPClient.xml:313
+#: doc/classes/HTTPClient.xml:314
msgid ""
"HTTP status code [code]400 Bad Request[/code]. The request was invalid. The "
"server cannot or will not process the request due to something that is "
@@ -23745,21 +24308,21 @@ msgid ""
"routing)."
msgstr ""
-#: doc/classes/HTTPClient.xml:316
+#: doc/classes/HTTPClient.xml:317
msgid ""
"HTTP status code [code]401 Unauthorized[/code]. Credentials required. The "
"request has not been applied because it lacks valid authentication "
"credentials for the target resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:319
+#: doc/classes/HTTPClient.xml:320
msgid ""
"HTTP status code [code]402 Payment Required[/code]. This response code is "
"reserved for future use. Initial aim for creating this code was using it for "
"digital payment systems, however this is not currently used."
msgstr ""
-#: doc/classes/HTTPClient.xml:322
+#: doc/classes/HTTPClient.xml:323
msgid ""
"HTTP status code [code]403 Forbidden[/code]. The client does not have access "
"rights to the content, i.e. they are unauthorized, so server is rejecting to "
@@ -23767,7 +24330,7 @@ msgid ""
"known to the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:325
+#: doc/classes/HTTPClient.xml:326
msgid ""
"HTTP status code [code]404 Not Found[/code]. The server can not find "
"requested resource. Either the URL is not recognized or the endpoint is "
@@ -23775,7 +24338,7 @@ msgid ""
"403 to hide existence of a resource if the client is not authorized."
msgstr ""
-#: doc/classes/HTTPClient.xml:328
+#: doc/classes/HTTPClient.xml:329
msgid ""
"HTTP status code [code]405 Method Not Allowed[/code]. The request's HTTP "
"method is known by the server but has been disabled and cannot be used. For "
@@ -23783,7 +24346,7 @@ msgid ""
"GET and HEAD, must never be disabled and should not return this error code."
msgstr ""
-#: doc/classes/HTTPClient.xml:331
+#: doc/classes/HTTPClient.xml:332
msgid ""
"HTTP status code [code]406 Not Acceptable[/code]. The target resource does "
"not have a current representation that would be acceptable to the user "
@@ -23791,21 +24354,21 @@ msgid ""
"request. Used when negotiation content."
msgstr ""
-#: doc/classes/HTTPClient.xml:334
+#: doc/classes/HTTPClient.xml:335
msgid ""
"HTTP status code [code]407 Proxy Authentication Required[/code]. Similar to "
"401 Unauthorized, but it indicates that the client needs to authenticate "
"itself in order to use a proxy."
msgstr ""
-#: doc/classes/HTTPClient.xml:337
+#: doc/classes/HTTPClient.xml:338
msgid ""
"HTTP status code [code]408 Request Timeout[/code]. The server did not "
"receive a complete request message within the time that it was prepared to "
"wait."
msgstr ""
-#: doc/classes/HTTPClient.xml:340
+#: doc/classes/HTTPClient.xml:341
msgid ""
"HTTP status code [code]409 Conflict[/code]. The request could not be "
"completed due to a conflict with the current state of the target resource. "
@@ -23813,47 +24376,47 @@ msgid ""
"conflict and resubmit the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:343
+#: doc/classes/HTTPClient.xml:344
msgid ""
"HTTP status code [code]410 Gone[/code]. The target resource is no longer "
"available at the origin server and this condition is likely permanent."
msgstr ""
-#: doc/classes/HTTPClient.xml:346
+#: doc/classes/HTTPClient.xml:347
msgid ""
"HTTP status code [code]411 Length Required[/code]. The server refuses to "
"accept the request without a defined Content-Length header."
msgstr ""
-#: doc/classes/HTTPClient.xml:349
+#: doc/classes/HTTPClient.xml:350
msgid ""
"HTTP status code [code]412 Precondition Failed[/code]. One or more "
"conditions given in the request header fields evaluated to [code]false[/"
"code] when tested on the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:352
+#: doc/classes/HTTPClient.xml:353
msgid ""
"HTTP status code [code]413 Entity Too Large[/code]. The server is refusing "
"to process a request because the request payload is larger than the server "
"is willing or able to process."
msgstr ""
-#: doc/classes/HTTPClient.xml:355
+#: doc/classes/HTTPClient.xml:356
msgid ""
"HTTP status code [code]414 Request-URI Too Long[/code]. The server is "
"refusing to service the request because the request-target is longer than "
"the server is willing to interpret."
msgstr ""
-#: doc/classes/HTTPClient.xml:358
+#: doc/classes/HTTPClient.xml:359
msgid ""
"HTTP status code [code]415 Unsupported Media Type[/code]. The origin server "
"is refusing to service the request because the payload is in a format not "
"supported by this method on the target resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:361
+#: doc/classes/HTTPClient.xml:362
msgid ""
"HTTP status code [code]416 Requested Range Not Satisfiable[/code]. None of "
"the ranges in the request's Range header field overlap the current extent of "
@@ -23861,21 +24424,21 @@ msgid ""
"to invalid ranges or an excessive request of small or overlapping ranges."
msgstr ""
-#: doc/classes/HTTPClient.xml:364
+#: doc/classes/HTTPClient.xml:365
msgid ""
"HTTP status code [code]417 Expectation Failed[/code]. The expectation given "
"in the request's Expect header field could not be met by at least one of the "
"inbound servers."
msgstr ""
-#: doc/classes/HTTPClient.xml:367
+#: doc/classes/HTTPClient.xml:368
msgid ""
"HTTP status code [code]418 I'm A Teapot[/code]. Any attempt to brew coffee "
"with a teapot should result in the error code \"418 I'm a teapot\". The "
"resulting entity body MAY be short and stout."
msgstr ""
-#: doc/classes/HTTPClient.xml:370
+#: doc/classes/HTTPClient.xml:371
msgid ""
"HTTP status code [code]421 Misdirected Request[/code]. The request was "
"directed at a server that is not able to produce a response. This can be "
@@ -23883,7 +24446,7 @@ msgid ""
"combination of scheme and authority that are included in the request URI."
msgstr ""
-#: doc/classes/HTTPClient.xml:373
+#: doc/classes/HTTPClient.xml:374
msgid ""
"HTTP status code [code]422 Unprocessable Entity[/code] (WebDAV). The server "
"understands the content type of the request entity (hence a 415 Unsupported "
@@ -23892,40 +24455,40 @@ msgid ""
"was unable to process the contained instructions."
msgstr ""
-#: doc/classes/HTTPClient.xml:376
+#: doc/classes/HTTPClient.xml:377
msgid ""
"HTTP status code [code]423 Locked[/code] (WebDAV). The source or destination "
"resource of a method is locked."
msgstr ""
-#: doc/classes/HTTPClient.xml:379
+#: doc/classes/HTTPClient.xml:380
msgid ""
"HTTP status code [code]424 Failed Dependency[/code] (WebDAV). The method "
"could not be performed on the resource because the requested action depended "
"on another action and that action failed."
msgstr ""
-#: doc/classes/HTTPClient.xml:382
+#: doc/classes/HTTPClient.xml:383
msgid ""
"HTTP status code [code]426 Upgrade Required[/code]. The server refuses to "
"perform the request using the current protocol but might be willing to do so "
"after the client upgrades to a different protocol."
msgstr ""
-#: doc/classes/HTTPClient.xml:385
+#: doc/classes/HTTPClient.xml:386
msgid ""
"HTTP status code [code]428 Precondition Required[/code]. The origin server "
"requires the request to be conditional."
msgstr ""
-#: doc/classes/HTTPClient.xml:388
+#: doc/classes/HTTPClient.xml:389
msgid ""
"HTTP status code [code]429 Too Many Requests[/code]. The user has sent too "
"many requests in a given amount of time (see \"rate limiting\"). Back off "
"and increase time between requests or try again later."
msgstr ""
-#: doc/classes/HTTPClient.xml:391
+#: doc/classes/HTTPClient.xml:392
msgid ""
"HTTP status code [code]431 Request Header Fields Too Large[/code]. The "
"server is unwilling to process the request because its header fields are too "
@@ -23933,27 +24496,27 @@ msgid ""
"header fields."
msgstr ""
-#: doc/classes/HTTPClient.xml:394
+#: doc/classes/HTTPClient.xml:395
msgid ""
"HTTP status code [code]451 Response Unavailable For Legal Reasons[/code]. "
"The server is denying access to the resource as a consequence of a legal "
"demand."
msgstr ""
-#: doc/classes/HTTPClient.xml:397
+#: doc/classes/HTTPClient.xml:398
msgid ""
"HTTP status code [code]500 Internal Server Error[/code]. The server "
"encountered an unexpected condition that prevented it from fulfilling the "
"request."
msgstr ""
-#: doc/classes/HTTPClient.xml:400
+#: doc/classes/HTTPClient.xml:401
msgid ""
"HTTP status code [code]501 Not Implemented[/code]. The server does not "
"support the functionality required to fulfill the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:403
+#: doc/classes/HTTPClient.xml:404
msgid ""
"HTTP status code [code]502 Bad Gateway[/code]. The server, while acting as a "
"gateway or proxy, received an invalid response from an inbound server it "
@@ -23961,7 +24524,7 @@ msgid ""
"balancers or proxies."
msgstr ""
-#: doc/classes/HTTPClient.xml:406
+#: doc/classes/HTTPClient.xml:407
msgid ""
"HTTP status code [code]503 Service Unavailable[/code]. The server is "
"currently unable to handle the request due to a temporary overload or "
@@ -23969,7 +24532,7 @@ msgid ""
"again later."
msgstr ""
-#: doc/classes/HTTPClient.xml:409
+#: doc/classes/HTTPClient.xml:410
msgid ""
"HTTP status code [code]504 Gateway Timeout[/code]. The server, while acting "
"as a gateway or proxy, did not receive a timely response from an upstream "
@@ -23977,14 +24540,14 @@ msgid ""
"returned by load balancers or proxies."
msgstr ""
-#: doc/classes/HTTPClient.xml:412
+#: doc/classes/HTTPClient.xml:413
msgid ""
"HTTP status code [code]505 HTTP Version Not Supported[/code]. The server "
"does not support, or refuses to support, the major version of HTTP that was "
"used in the request message."
msgstr ""
-#: doc/classes/HTTPClient.xml:415
+#: doc/classes/HTTPClient.xml:416
msgid ""
"HTTP status code [code]506 Variant Also Negotiates[/code]. The server has an "
"internal configuration error: the chosen variant resource is configured to "
@@ -23992,14 +24555,14 @@ msgid ""
"proper end point in the negotiation process."
msgstr ""
-#: doc/classes/HTTPClient.xml:418
+#: doc/classes/HTTPClient.xml:419
msgid ""
"HTTP status code [code]507 Insufficient Storage[/code]. The method could not "
"be performed on the resource because the server is unable to store the "
"representation needed to successfully complete the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:421
+#: doc/classes/HTTPClient.xml:422
msgid ""
"HTTP status code [code]508 Loop Detected[/code]. The server terminated an "
"operation because it encountered an infinite loop while processing a request "
@@ -24007,14 +24570,14 @@ msgid ""
"failed."
msgstr ""
-#: doc/classes/HTTPClient.xml:424
+#: doc/classes/HTTPClient.xml:425
msgid ""
"HTTP status code [code]510 Not Extended[/code]. The policy for accessing the "
"resource has not been met in the request. The server should send back all "
"the information necessary for the client to issue an extended request."
msgstr ""
-#: doc/classes/HTTPClient.xml:427
+#: doc/classes/HTTPClient.xml:428
msgid ""
"HTTP status code [code]511 Network Authentication Required[/code]. The "
"client needs to authenticate to gain network access."
@@ -24040,12 +24603,21 @@ msgid ""
" http_request.connect(\"request_completed\", self, "
"\"_http_request_completed\")\n"
"\n"
-" # Perform the HTTP request. The URL below returns some JSON as of "
-"writing.\n"
+" # Perform a GET request. The URL below returns JSON as of writing.\n"
" var error = http_request.request(\"https://httpbin.org/get\")\n"
" if error != OK:\n"
" push_error(\"An error occurred in the HTTP request.\")\n"
"\n"
+" # Perform a POST request. The URL below returns JSON as of writing.\n"
+" # Note: Don't make simultaneous requests using a single HTTPRequest "
+"node.\n"
+" # The snippet below is provided for reference only.\n"
+" var body = {\"name\": \"Godette\"}\n"
+" var error = http_request.request(\"https://httpbin.org/post\", [], true, "
+"HTTPClient.METHOD_POST, body)\n"
+" if error != OK:\n"
+" push_error(\"An error occurred in the HTTP request.\")\n"
+"\n"
"\n"
"# Called when the HTTP request is completed.\n"
"func _http_request_completed(result, response_code, headers, body):\n"
@@ -24085,20 +24657,26 @@ msgid ""
" var texture_rect = TextureRect.new()\n"
" add_child(texture_rect)\n"
" texture_rect.texture = texture\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] When performing HTTP requests from a project exported to HTML5, "
+"keep in mind the remote server may not allow requests from foreign origins "
+"due to [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/"
+"url]. If you host the server in question, you should modify its backend to "
+"allow requests from foreign origins by adding the [code]Access-Control-Allow-"
+"Origin: *[/code] HTTP header."
msgstr ""
-#: doc/classes/HTTPRequest.xml:61
+#: doc/classes/HTTPRequest.xml:70
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/"
"http_request_class.html"
msgstr ""
-#: doc/classes/HTTPRequest.xml:69
+#: doc/classes/HTTPRequest.xml:78
msgid "Cancels the current request."
msgstr ""
-#: doc/classes/HTTPRequest.xml:76
+#: doc/classes/HTTPRequest.xml:85
msgid ""
"Returns the response body length.\n"
"[b]Note:[/b] Some Web servers may not send a body length. In this case, the "
@@ -24106,17 +24684,17 @@ msgid ""
"the body length will also be [code]-1[/code]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:84
+#: doc/classes/HTTPRequest.xml:93
msgid "Returns the amount of bytes this HTTPRequest downloaded."
msgstr ""
-#: doc/classes/HTTPRequest.xml:91
+#: doc/classes/HTTPRequest.xml:100
msgid ""
"Returns the current status of the underlying [HTTPClient]. See [enum "
"HTTPClient.Status]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:108
+#: doc/classes/HTTPRequest.xml:117
msgid ""
"Creates request on the underlying [HTTPClient]. If there is no configuration "
"errors, it tries to connect using [method HTTPClient.connect_to_host] and "
@@ -24129,11 +24707,11 @@ msgid ""
"connect to host."
msgstr ""
-#: doc/classes/HTTPRequest.xml:115
+#: doc/classes/HTTPRequest.xml:124
msgid "Maximum allowed size for response bodies."
msgstr ""
-#: doc/classes/HTTPRequest.xml:118
+#: doc/classes/HTTPRequest.xml:127
msgid ""
"The size of the buffer used and maximum bytes to read per iteration. See "
"[member HTTPClient.read_chunk_size].\n"
@@ -24141,63 +24719,63 @@ msgid ""
"files to achieve better speeds at the cost of memory."
msgstr ""
-#: doc/classes/HTTPRequest.xml:122
+#: doc/classes/HTTPRequest.xml:131
msgid "The file to download into. Will output any received file into it."
msgstr ""
-#: doc/classes/HTTPRequest.xml:125
+#: doc/classes/HTTPRequest.xml:134
msgid "Maximum number of allowed redirects."
msgstr ""
-#: doc/classes/HTTPRequest.xml:130
+#: doc/classes/HTTPRequest.xml:139
msgid "If [code]true[/code], multithreading is used to improve performance."
msgstr ""
-#: doc/classes/HTTPRequest.xml:144
+#: doc/classes/HTTPRequest.xml:153
msgid "Emitted when a request is completed."
msgstr ""
-#: doc/classes/HTTPRequest.xml:150
+#: doc/classes/HTTPRequest.xml:159
msgid "Request successful."
msgstr ""
-#: doc/classes/HTTPRequest.xml:155
+#: doc/classes/HTTPRequest.xml:164
msgid "Request failed while connecting."
msgstr ""
-#: doc/classes/HTTPRequest.xml:158
+#: doc/classes/HTTPRequest.xml:167
msgid "Request failed while resolving."
msgstr ""
-#: doc/classes/HTTPRequest.xml:161
+#: doc/classes/HTTPRequest.xml:170
msgid "Request failed due to connection (read/write) error."
msgstr ""
-#: doc/classes/HTTPRequest.xml:164
+#: doc/classes/HTTPRequest.xml:173
msgid "Request failed on SSL handshake."
msgstr ""
-#: doc/classes/HTTPRequest.xml:167
+#: doc/classes/HTTPRequest.xml:176
msgid "Request does not have a response (yet)."
msgstr ""
-#: doc/classes/HTTPRequest.xml:170
+#: doc/classes/HTTPRequest.xml:179
msgid "Request exceeded its maximum size limit, see [member body_size_limit]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:173
+#: doc/classes/HTTPRequest.xml:182
msgid "Request failed (currently unused)."
msgstr ""
-#: doc/classes/HTTPRequest.xml:176
+#: doc/classes/HTTPRequest.xml:185
msgid "HTTPRequest couldn't open the download file."
msgstr ""
-#: doc/classes/HTTPRequest.xml:179
+#: doc/classes/HTTPRequest.xml:188
msgid "HTTPRequest couldn't write to the download file."
msgstr ""
-#: doc/classes/HTTPRequest.xml:182
+#: doc/classes/HTTPRequest.xml:191
msgid "Request reached its maximum redirect limit, see [member max_redirects]."
msgstr ""
@@ -24421,42 +24999,46 @@ msgid "Loads an image from the binary contents of a PNG file."
msgstr ""
#: doc/classes/Image.xml:373
+msgid "Loads an image from the binary contents of a TGA file."
+msgstr ""
+
+#: doc/classes/Image.xml:382
msgid "Loads an image from the binary contents of a WebP file."
msgstr ""
-#: doc/classes/Image.xml:380
+#: doc/classes/Image.xml:389
msgid ""
"Converts the image's data to represent coordinates on a 3D plane. This is "
"used when the image represents a normalmap. A normalmap can add lots of "
"detail to a 3D surface without increasing the polygon count."
msgstr ""
-#: doc/classes/Image.xml:387
+#: doc/classes/Image.xml:396
msgid ""
"Multiplies color values with alpha values. Resulting color values for a "
"pixel are [code](color * alpha)/256[/code]."
msgstr ""
-#: doc/classes/Image.xml:400
+#: doc/classes/Image.xml:409
msgid ""
"Resizes the image to the given [code]width[/code] and [code]height[/code]. "
"New pixels are calculated using [code]interpolation[/code]. See "
"[code]interpolation[/code] constants."
msgstr ""
-#: doc/classes/Image.xml:409
+#: doc/classes/Image.xml:418
msgid ""
"Resizes the image to the nearest power of 2 for the width and height. If "
"[code]square[/code] is [code]true[/code] then set width and height to be the "
"same."
msgstr ""
-#: doc/classes/Image.xml:416
+#: doc/classes/Image.xml:425
msgid ""
"Converts a standard RGBE (Red Green Blue Exponent) image to an sRGB image."
msgstr ""
-#: doc/classes/Image.xml:427
+#: doc/classes/Image.xml:436
msgid ""
"Saves the image as an EXR file to [code]path[/code]. If [code]grayscale[/"
"code] is [code]true[/code] and the image has only one channel, it will be "
@@ -24465,11 +25047,11 @@ msgid ""
"TinyEXR module."
msgstr ""
-#: doc/classes/Image.xml:436
+#: doc/classes/Image.xml:445
msgid "Saves the image as a PNG file to [code]path[/code]."
msgstr ""
-#: doc/classes/Image.xml:455
+#: doc/classes/Image.xml:464
msgid ""
"Sets the [Color] of the pixel at [code](x, y)[/code]. Example:\n"
"[codeblock]\n"
@@ -24479,7 +25061,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Image.xml:471
+#: doc/classes/Image.xml:480
msgid ""
"Sets the [Color] of the pixel at [code](dst.x, dst.y)[/code]. Note that the "
"[code]dst[/code] values must be integers. Example:\n"
@@ -24490,51 +25072,51 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Image.xml:483
+#: doc/classes/Image.xml:492
msgid "Shrinks the image by a factor of 2."
msgstr ""
-#: doc/classes/Image.xml:490
+#: doc/classes/Image.xml:499
msgid "Converts the raw data from the sRGB colorspace to a linear scale."
msgstr ""
-#: doc/classes/Image.xml:496
+#: doc/classes/Image.xml:505
msgid ""
"Holds all of the image's color data in a given format. See [enum Format] "
"constants."
msgstr ""
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:510
msgid "The maximal width allowed for [Image] resources."
msgstr ""
-#: doc/classes/Image.xml:504
+#: doc/classes/Image.xml:513
msgid "The maximal height allowed for [Image] resources."
msgstr ""
-#: doc/classes/Image.xml:507
+#: doc/classes/Image.xml:516
msgid "Texture format with a single 8-bit depth representing luminance."
msgstr ""
-#: doc/classes/Image.xml:510
+#: doc/classes/Image.xml:519
msgid ""
"OpenGL texture format with two values, luminance and alpha each stored with "
"8 bits."
msgstr ""
-#: doc/classes/Image.xml:513
+#: doc/classes/Image.xml:522
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
"bitdepth of 8."
msgstr ""
-#: doc/classes/Image.xml:516
+#: doc/classes/Image.xml:525
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
-#: doc/classes/Image.xml:519
+#: doc/classes/Image.xml:528
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -24542,7 +25124,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:523
+#: doc/classes/Image.xml:532
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -24550,67 +25132,67 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:536
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
-#: doc/classes/Image.xml:532
+#: doc/classes/Image.xml:541
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
-#: doc/classes/Image.xml:535
+#: doc/classes/Image.xml:544
msgid ""
"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
"each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:538
+#: doc/classes/Image.xml:547
msgid ""
"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
"components, each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:541
+#: doc/classes/Image.xml:550
msgid ""
"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
"components, each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:544
+#: doc/classes/Image.xml:553
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 16-"
"bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:556
msgid ""
"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
"each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:550
+#: doc/classes/Image.xml:559
msgid ""
"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
"components, each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:553
+#: doc/classes/Image.xml:562
msgid ""
"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
"components, each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:556
+#: doc/classes/Image.xml:565
msgid ""
"A special OpenGL texture format where the three color components have 9 bits "
"of precision and all three share a single 5-bit exponent."
msgstr ""
-#: doc/classes/Image.xml:559
+#: doc/classes/Image.xml:568
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format that uses Block Compression 1, and is the smallest variation "
@@ -24620,7 +25202,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:563
+#: doc/classes/Image.xml:572
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format that uses Block Compression 2, and color data is interpreted "
@@ -24630,7 +25212,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:567
+#: doc/classes/Image.xml:576
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format also known as Block Compression 3 or BC3 that contains 64 "
@@ -24641,7 +25223,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:571
+#: doc/classes/Image.xml:580
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -24649,7 +25231,7 @@ msgid ""
"DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:574
+#: doc/classes/Image.xml:583
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -24657,7 +25239,7 @@ msgid ""
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:577
+#: doc/classes/Image.xml:586
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -24666,21 +25248,21 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:581
+#: doc/classes/Image.xml:590
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with signed floating-point "
"RGB components."
msgstr ""
-#: doc/classes/Image.xml:584
+#: doc/classes/Image.xml:593
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned floating-point "
"RGB components."
msgstr ""
-#: doc/classes/Image.xml:587
+#: doc/classes/Image.xml:596
msgid ""
"Texture format used on PowerVR-supported mobile platforms, uses 2-bit color "
"depth with no alpha. More information can be found [url=https://en.wikipedia."
@@ -24689,25 +25271,25 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:600
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:603
msgid ""
"Similar to [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with 4-"
"bit color depth and no alpha."
msgstr ""
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:606
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:609
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -24715,7 +25297,7 @@ msgid ""
"standard. This format cannot store an alpha channel."
msgstr ""
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:612
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24723,7 +25305,7 @@ msgid ""
"unsigned data."
msgstr ""
-#: doc/classes/Image.xml:606
+#: doc/classes/Image.xml:615
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24731,7 +25313,7 @@ msgid ""
"channel of signed data."
msgstr ""
-#: doc/classes/Image.xml:609
+#: doc/classes/Image.xml:618
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24739,7 +25321,7 @@ msgid ""
"of unsigned data."
msgstr ""
-#: doc/classes/Image.xml:612
+#: doc/classes/Image.xml:621
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24747,7 +25329,7 @@ msgid ""
"channels of signed data."
msgstr ""
-#: doc/classes/Image.xml:615
+#: doc/classes/Image.xml:624
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24757,7 +25339,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:619
+#: doc/classes/Image.xml:628
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24767,7 +25349,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:623
+#: doc/classes/Image.xml:632
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24778,31 +25360,31 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:631
+#: doc/classes/Image.xml:640
msgid "Represents the size of the [enum Format] enum."
msgstr ""
-#: doc/classes/Image.xml:634
+#: doc/classes/Image.xml:643
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
-#: doc/classes/Image.xml:637
+#: doc/classes/Image.xml:646
msgid ""
"Performs bilinear interpolation. If the image is resized, it will be blurry. "
"This mode is faster than [constant INTERPOLATE_CUBIC], but it results in "
"lower quality."
msgstr ""
-#: doc/classes/Image.xml:640
+#: doc/classes/Image.xml:649
msgid ""
"Performs cubic interpolation. If the image is resized, it will be blurry. "
"This mode often gives better results compared to [constant "
"INTERPOLATE_BILINEAR], at the cost of being slower."
msgstr ""
-#: doc/classes/Image.xml:643
+#: doc/classes/Image.xml:652
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -24817,55 +25399,55 @@ msgid ""
"a new set will be generated for the resulting image."
msgstr ""
-#: doc/classes/Image.xml:650
+#: doc/classes/Image.xml:659
msgid ""
"Performs Lanczos interpolation. This is the slowest image resizing mode, but "
"it typically gives the best results, especially when downscalng images."
msgstr ""
-#: doc/classes/Image.xml:653
+#: doc/classes/Image.xml:662
msgid "Image does not have alpha."
msgstr ""
-#: doc/classes/Image.xml:656
+#: doc/classes/Image.xml:665
msgid "Image stores alpha in a single bit."
msgstr ""
-#: doc/classes/Image.xml:659
+#: doc/classes/Image.xml:668
msgid "Image uses alpha."
msgstr ""
-#: doc/classes/Image.xml:662
+#: doc/classes/Image.xml:671
msgid "Use S3TC compression."
msgstr ""
-#: doc/classes/Image.xml:665
+#: doc/classes/Image.xml:674
msgid "Use PVRTC2 compression."
msgstr ""
-#: doc/classes/Image.xml:668
+#: doc/classes/Image.xml:677
msgid "Use PVRTC4 compression."
msgstr ""
-#: doc/classes/Image.xml:671
+#: doc/classes/Image.xml:680
msgid "Use ETC compression."
msgstr ""
-#: doc/classes/Image.xml:674
+#: doc/classes/Image.xml:683
msgid "Use ETC2 compression."
msgstr ""
-#: doc/classes/Image.xml:689
+#: doc/classes/Image.xml:698
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
-#: doc/classes/Image.xml:692
+#: doc/classes/Image.xml:701
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
-#: doc/classes/Image.xml:695
+#: doc/classes/Image.xml:704
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -25684,7 +26266,7 @@ msgid "Contains mouse click information. See [method Node._input]."
msgstr ""
#: doc/classes/InputEventMouseButton.xml:10
-#: doc/classes/InputEventMouseMotion.xml:10
+#: doc/classes/InputEventMouseMotion.xml:11
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/inputs/"
"mouse_and_input_coordinates.html"
@@ -25721,29 +26303,36 @@ msgstr ""
#: doc/classes/InputEventMouseMotion.xml:7
msgid ""
"Contains mouse and pen motion information. Supports relative, absolute "
-"positions and speed. See [method Node._input]."
+"positions and speed. See [method Node._input].\n"
+"[b]Note:[/b] By default, this event is only emitted once per frame rendered "
+"at most. If you need more precise input reporting, call [method Input."
+"set_use_accumulated_input] with [code]false[/code] to make events emitted as "
+"often as possible. If you use InputEventMouseMotion to draw lines, consider "
+"implementing [url=https://en.wikipedia.org/wiki/Bresenham"
+"%27s_line_algorithm]Bresenham's line algorithm[/url] as well to avoid "
+"visible gaps in lines if the user is moving the mouse quickly."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:16
+#: doc/classes/InputEventMouseMotion.xml:17
msgid ""
"Represents the pressure the user puts on the pen. Ranges from [code]0.0[/"
"code] to [code]1.0[/code]."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:19
+#: doc/classes/InputEventMouseMotion.xml:20
msgid ""
"The mouse position relative to the previous position (position at the last "
-"frame). \n"
+"frame).\n"
"[b]Note:[/b] Since [InputEventMouseMotion] is only emitted when the mouse "
"moves, the last event won't have a relative position of [code]Vector2(0, 0)[/"
"code] when the user stops moving the mouse."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:23
+#: doc/classes/InputEventMouseMotion.xml:24
msgid "The mouse speed in pixels per second."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:26
+#: doc/classes/InputEventMouseMotion.xml:27
msgid ""
"Represents the angles of tilt of the pen. Positive X-coordinate value "
"indicates a tilt to the right. Positive Y-coordinate value indicates a tilt "
@@ -26633,14 +27222,17 @@ msgstr ""
#: doc/classes/JSON.xml:18
msgid ""
-"Parses a JSON encoded string and returns a [JSONParseResult] containing the "
+"Parses a JSON-encoded string and returns a [JSONParseResult] containing the "
"result."
msgstr ""
#: doc/classes/JSON.xml:31
msgid ""
"Converts a [Variant] var to JSON text and returns the result. Useful for "
-"serializing data to store or send over the network."
+"serializing data to store or send over the network.\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, converting a Variant to JSON text "
+"will convert all numerical values to [float] types."
msgstr ""
#: doc/classes/JSONParseResult.xml:4
@@ -26663,14 +27255,14 @@ msgstr ""
#: doc/classes/JSONParseResult.xml:18
msgid ""
-"The line number where the error occurred if JSON source was not successfully "
-"parsed."
+"The line number where the error occurred if the JSON source was not "
+"successfully parsed."
msgstr ""
#: doc/classes/JSONParseResult.xml:21
msgid ""
-"The error message if JSON source was not successfully parsed. See the [enum "
-"Error] constants."
+"The error message if the JSON source was not successfully parsed. See the "
+"[enum Error] constants."
msgstr ""
#: doc/classes/JSONParseResult.xml:24
@@ -26678,11 +27270,11 @@ msgid ""
"A [Variant] containing the parsed JSON. Use [method @GDScript.typeof] or the "
"[code]is[/code] keyword to check if it is what you expect. For example, if "
"the JSON source starts with curly braces ([code]{}[/code]), a [Dictionary] "
-"will be returned. If the JSON source starts with braces ([code][][/code]), "
+"will be returned. If the JSON source starts with brackets ([code][][/code]), "
"an [Array] will be returned.\n"
"[b]Note:[/b] The JSON specification does not define integer or float types, "
-"but only a number type. Therefore, parsing a JSON text will convert all "
-"numerical values to float types.\n"
+"but only a [i]number[/i] type. Therefore, parsing a JSON text will convert "
+"all numerical values to [float] types.\n"
"[b]Note:[/b] JSON objects do not preserve key order like Godot dictionaries, "
"thus, you should not rely on keys being in a certain order if a dictionary "
"is constructed from JSON. In contrast, JSON arrays retain the order of their "
@@ -26692,7 +27284,7 @@ msgid ""
"if typeof(p.result) == TYPE_ARRAY:\n"
" print(p.result[0]) # Prints \"hello\"\n"
"else:\n"
-" print(\"unexpected results\")\n"
+" push_error(\"Unexpected results.\")\n"
"[/codeblock]"
msgstr ""
@@ -26808,7 +27400,7 @@ msgid ""
"simulation will run at an incorrect speed.\n"
"[code]linear_velocity[/code] is the velocity vector in pixels per second. "
"Unlike in [method move_and_collide], you should [i]not[/i] multiply it by "
-"[code]delta[/code] — the physics engine handles applying the velocity. \n"
+"[code]delta[/code] — the physics engine handles applying the velocity.\n"
"[code]up_direction[/code] is the up direction, used to determine what is a "
"wall and what is a floor or a ceiling. If set to the default value of "
"[code]Vector2(0, 0)[/code], everything is considered a wall. This is useful "
@@ -26924,7 +27516,7 @@ msgid ""
"[code]linear_velocity[/code] is the velocity vector (typically meters per "
"second). Unlike in [method move_and_collide], you should [i]not[/i] multiply "
"it by [code]delta[/code] — the physics engine handles applying the "
-"velocity. \n"
+"velocity.\n"
"[code]up_direction[/code] is the up direction, used to determine what is a "
"wall and what is a floor or a ceiling. If set to the default value of "
"[code]Vector3(0, 0, 0)[/code], everything is considered a wall.\n"
@@ -27653,17 +28245,6 @@ msgid ""
"[b]Note:[/b] Hiding a light does [i]not[/i] affect baking."
msgstr ""
-#: doc/classes/Light3D.xml:152
-msgid "Only indirect lighting will be baked (default)."
-msgstr ""
-
-#: doc/classes/Light3D.xml:155
-msgid ""
-"Both direct and indirect light will be baked.\n"
-"[b]Note:[/b] You should hide the light if you don't want it to appear twice "
-"(dynamic and baked)."
-msgstr ""
-
#: doc/classes/LightOccluder2D.xml:4
msgid "Occludes light cast by a Light2D, casting shadows."
msgstr ""
@@ -27942,136 +28523,142 @@ msgstr ""
msgid "Text alignment as defined in the [enum Align] enum."
msgstr ""
-#: doc/classes/LineEdit.xml:120 doc/classes/TextEdit.xml:406
+#: doc/classes/LineEdit.xml:120 doc/classes/TextEdit.xml:358
msgid "If [code]true[/code], the caret (visual cursor) blinks."
msgstr ""
-#: doc/classes/LineEdit.xml:123 doc/classes/TextEdit.xml:409
+#: doc/classes/LineEdit.xml:123 doc/classes/TextEdit.xml:361
msgid "Duration (in seconds) of a caret's blinking cycle."
msgstr ""
-#: doc/classes/LineEdit.xml:126
+#: doc/classes/LineEdit.xml:128
msgid ""
"The cursor's position inside the [LineEdit]. When set, the text may scroll "
"to accommodate it."
msgstr ""
-#: doc/classes/LineEdit.xml:129
+#: doc/classes/LineEdit.xml:131
msgid ""
"If [code]true[/code], the [LineEdit] will show a clear button if [code]text[/"
"code] is not empty, which can be used to clear the text quickly."
msgstr ""
-#: doc/classes/LineEdit.xml:132
+#: doc/classes/LineEdit.xml:134
msgid "If [code]true[/code], the context menu will appear when right-clicked."
msgstr ""
-#: doc/classes/LineEdit.xml:135
+#: doc/classes/LineEdit.xml:137
msgid ""
"If [code]false[/code], existing text cannot be modified and new text cannot "
"be added."
msgstr ""
-#: doc/classes/LineEdit.xml:138
+#: doc/classes/LineEdit.xml:140
msgid ""
"If [code]true[/code], the [LineEdit] width will increase to stay longer than "
"the [member text]. It will [b]not[/b] compress if the [member text] is "
"shortened."
msgstr ""
-#: doc/classes/LineEdit.xml:142
+#: doc/classes/LineEdit.xml:144
msgid ""
"Maximum amount of characters that can be entered inside the [LineEdit]. If "
"[code]0[/code], there is no limit."
msgstr ""
-#: doc/classes/LineEdit.xml:146
+#: doc/classes/LineEdit.xml:148
msgid ""
"Opacity of the [member placeholder_text]. From [code]0[/code] to [code]1[/"
"code]."
msgstr ""
-#: doc/classes/LineEdit.xml:149
+#: doc/classes/LineEdit.xml:151
msgid ""
"Text shown when the [LineEdit] is empty. It is [b]not[/b] the [LineEdit]'s "
"default value (see [member text])."
msgstr ""
-#: doc/classes/LineEdit.xml:152
+#: doc/classes/LineEdit.xml:154
msgid ""
"Sets the icon that will appear in the right end of the [LineEdit] if there's "
"no [member text], or always, if [member clear_button_enabled] is set to "
"[code]false[/code]."
msgstr ""
-#: doc/classes/LineEdit.xml:155
+#: doc/classes/LineEdit.xml:157
msgid ""
"If [code]true[/code], every character is replaced with the secret character "
"(see [member secret_character])."
msgstr ""
-#: doc/classes/LineEdit.xml:158
+#: doc/classes/LineEdit.xml:160
msgid ""
"The character to use to mask secret input (defaults to \"*\"). Only a single "
"character can be used as the secret character."
msgstr ""
-#: doc/classes/LineEdit.xml:161
+#: doc/classes/LineEdit.xml:163
msgid ""
"If [code]false[/code], it's impossible to select the text using mouse nor "
"keyboard."
msgstr ""
-#: doc/classes/LineEdit.xml:164
+#: doc/classes/LineEdit.xml:166
msgid "If [code]false[/code], using shortcuts will be disabled."
msgstr ""
-#: doc/classes/LineEdit.xml:167
+#: doc/classes/LineEdit.xml:169
msgid ""
"String value of the [LineEdit].\n"
"[b]Note:[/b] Changing text using this property won't emit the [signal "
"text_changed] signal."
msgstr ""
-#: doc/classes/LineEdit.xml:174
+#: doc/classes/LineEdit.xml:173 doc/classes/TextEdit.xml:434
+msgid ""
+"If [code]true[/code], the native virtual keyboard is shown when focused on "
+"platforms that support it."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:179
msgid ""
"Emitted when trying to append text that would overflow the [member "
"max_length]."
msgstr ""
-#: doc/classes/LineEdit.xml:181 doc/classes/TextEdit.xml:525
+#: doc/classes/LineEdit.xml:186 doc/classes/TextEdit.xml:490
msgid "Emitted when the text changes."
msgstr ""
-#: doc/classes/LineEdit.xml:188
+#: doc/classes/LineEdit.xml:193
msgid "Emitted when the user presses [constant KEY_ENTER] on the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:194
+#: doc/classes/LineEdit.xml:199
msgid "Aligns the text on the left-hand side of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:197
+#: doc/classes/LineEdit.xml:202
msgid "Centers the text in the middle of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:200
+#: doc/classes/LineEdit.xml:205
msgid "Aligns the text on the right-hand side of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:203
+#: doc/classes/LineEdit.xml:208
msgid "Stretches whitespaces to fit the [LineEdit]'s width."
msgstr ""
-#: doc/classes/LineEdit.xml:206 doc/classes/TextEdit.xml:540
+#: doc/classes/LineEdit.xml:211 doc/classes/TextEdit.xml:505
msgid "Cuts (copies and clears) the selected text."
msgstr ""
-#: doc/classes/LineEdit.xml:209 doc/classes/TextEdit.xml:543
+#: doc/classes/LineEdit.xml:214 doc/classes/TextEdit.xml:508
msgid "Copies the selected text."
msgstr ""
-#: doc/classes/LineEdit.xml:212
+#: doc/classes/LineEdit.xml:217
msgid ""
"Pastes the clipboard text over the selected text (or at the cursor's "
"position).\n"
@@ -28079,80 +28666,80 @@ msgid ""
"clipboard via [method String.strip_escapes]."
msgstr ""
-#: doc/classes/LineEdit.xml:216
+#: doc/classes/LineEdit.xml:221
msgid "Erases the whole [LineEdit] text."
msgstr ""
-#: doc/classes/LineEdit.xml:219
+#: doc/classes/LineEdit.xml:224
msgid "Selects the whole [LineEdit] text."
msgstr ""
-#: doc/classes/LineEdit.xml:222 doc/classes/TextEdit.xml:555
+#: doc/classes/LineEdit.xml:227 doc/classes/TextEdit.xml:520
msgid "Undoes the previous action."
msgstr ""
-#: doc/classes/LineEdit.xml:225
+#: doc/classes/LineEdit.xml:230
msgid "Reverse the last undo action."
msgstr ""
-#: doc/classes/LineEdit.xml:228 doc/classes/TextEdit.xml:561
+#: doc/classes/LineEdit.xml:233 doc/classes/TextEdit.xml:526
msgid "Represents the size of the [enum MenuItems] enum."
msgstr ""
-#: doc/classes/LineEdit.xml:233
+#: doc/classes/LineEdit.xml:238
msgid "Texture for the clear button. See [member clear_button_enabled]."
msgstr ""
-#: doc/classes/LineEdit.xml:236
+#: doc/classes/LineEdit.xml:241
msgid "Color used as default tint for the clear button."
msgstr ""
-#: doc/classes/LineEdit.xml:239
+#: doc/classes/LineEdit.xml:244
msgid "Color used for the clear button when it's pressed."
msgstr ""
-#: doc/classes/LineEdit.xml:242
+#: doc/classes/LineEdit.xml:247
msgid "Color of the [LineEdit]'s visual cursor (caret)."
msgstr ""
-#: doc/classes/LineEdit.xml:245
+#: doc/classes/LineEdit.xml:250
msgid "Background used when [LineEdit] has GUI focus."
msgstr ""
-#: doc/classes/LineEdit.xml:248
+#: doc/classes/LineEdit.xml:253
msgid "Font used for the text."
msgstr ""
-#: doc/classes/LineEdit.xml:251
+#: doc/classes/LineEdit.xml:256
msgid "Default font color."
msgstr ""
-#: doc/classes/LineEdit.xml:254
+#: doc/classes/LineEdit.xml:259
msgid "Font color for selected text (inside the selection rectangle)."
msgstr ""
-#: doc/classes/LineEdit.xml:257
+#: doc/classes/LineEdit.xml:262
msgid "Font color when editing is disabled."
msgstr ""
-#: doc/classes/LineEdit.xml:260
+#: doc/classes/LineEdit.xml:265
msgid ""
"Minimum horizontal space for the text (not counting the clear button and "
"content margins). This value is measured in count of space characters (i.e. "
"this amount of space characters can be displayed without scrolling)."
msgstr ""
-#: doc/classes/LineEdit.xml:263
+#: doc/classes/LineEdit.xml:268
msgid "Default background for the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:266
+#: doc/classes/LineEdit.xml:271
msgid ""
"Background used when [LineEdit] is in read-only mode ([member editable] is "
"set to [code]false[/code])."
msgstr ""
-#: doc/classes/LineEdit.xml:269
+#: doc/classes/LineEdit.xml:274
msgid "Color of the selection rectangle."
msgstr ""
@@ -28370,14 +28957,14 @@ msgstr ""
msgid "Emitted when a user responds to a permission request."
msgstr ""
-#: doc/classes/MainLoop.xml:127 doc/classes/Node.xml:948
+#: doc/classes/MainLoop.xml:127 doc/classes/Node.xml:946
msgid ""
"Notification received from the OS when the application is exceeding its "
"allocated memory.\n"
"Specific to the iOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:131 doc/classes/Node.xml:952
+#: doc/classes/MainLoop.xml:131 doc/classes/Node.xml:950
msgid ""
"Notification received when translations may have changed. Can be triggered "
"by the user changing the locale. Can be used to respond to language changes, "
@@ -28385,39 +28972,55 @@ msgid ""
"the built-in translation support, like [method Object.tr]."
msgstr ""
-#: doc/classes/MainLoop.xml:134 doc/classes/Node.xml:955
+#: doc/classes/MainLoop.xml:134 doc/classes/Node.xml:953
msgid ""
"Notification received from the OS when a request for \"About\" information "
"is sent.\n"
"Specific to the macOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:138 doc/classes/Node.xml:959
+#: doc/classes/MainLoop.xml:138 doc/classes/Node.xml:957
msgid ""
"Notification received from Godot's crash handler when the engine is about to "
"crash.\n"
"Implemented on desktop platforms if the crash handler is enabled."
msgstr ""
-#: doc/classes/MainLoop.xml:142 doc/classes/Node.xml:963
+#: doc/classes/MainLoop.xml:142 doc/classes/Node.xml:961
msgid ""
"Notification received from the OS when an update of the Input Method Engine "
"occurs (e.g. change of IME cursor position or composition string).\n"
"Specific to the macOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:146 doc/classes/Node.xml:967
+#: doc/classes/MainLoop.xml:146 doc/classes/Node.xml:965
msgid ""
-"Notification received from the OS when the app is resumed.\n"
+"Notification received from the OS when the application is resumed.\n"
"Specific to the Android platform."
msgstr ""
-#: doc/classes/MainLoop.xml:150 doc/classes/Node.xml:971
+#: doc/classes/MainLoop.xml:150 doc/classes/Node.xml:969
msgid ""
-"Notification received from the OS when the app is paused.\n"
+"Notification received from the OS when the application is paused.\n"
"Specific to the Android platform."
msgstr ""
+#: doc/classes/MainLoop.xml:154 doc/classes/Node.xml:973
+msgid ""
+"Notification received from the OS when the application is focused, i.e. when "
+"changing the focus from the OS desktop or a thirdparty application to any "
+"open window of the Godot instance.\n"
+"Implemented on desktop platforms."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:158 doc/classes/Node.xml:977
+msgid ""
+"Notification received from the OS when the application is defocused, i.e. "
+"when changing the focus from any open window of the Godot instance to the OS "
+"desktop or a thirdparty application.\n"
+"Implemented on desktop platforms."
+msgstr ""
+
#: doc/classes/MarginContainer.xml:4
msgid "Simple margin container."
msgstr ""
@@ -28725,11 +29328,11 @@ msgstr ""
msgid "Render array as triangle strips."
msgstr ""
-#: doc/classes/Mesh.xml:126 doc/classes/RenderingServer.xml:3189
+#: doc/classes/Mesh.xml:126 doc/classes/RenderingServer.xml:3185
msgid "Blend shapes are normalized."
msgstr ""
-#: doc/classes/Mesh.xml:129 doc/classes/RenderingServer.xml:3192
+#: doc/classes/Mesh.xml:129 doc/classes/RenderingServer.xml:3188
msgid "Blend shapes are relative to base weight."
msgstr ""
@@ -28771,37 +29374,37 @@ msgstr ""
msgid "Mesh array uses indices."
msgstr ""
-#: doc/classes/Mesh.xml:159 doc/classes/RenderingServer.xml:3145
+#: doc/classes/Mesh.xml:159 doc/classes/RenderingServer.xml:3141
msgid "Flag used to mark a compressed (half float) normal array."
msgstr ""
-#: doc/classes/Mesh.xml:162 doc/classes/RenderingServer.xml:3148
+#: doc/classes/Mesh.xml:162 doc/classes/RenderingServer.xml:3144
msgid "Flag used to mark a compressed (half float) tangent array."
msgstr ""
-#: doc/classes/Mesh.xml:165 doc/classes/RenderingServer.xml:3151
+#: doc/classes/Mesh.xml:165 doc/classes/RenderingServer.xml:3147
msgid "Flag used to mark a compressed (half float) color array."
msgstr ""
-#: doc/classes/Mesh.xml:168 doc/classes/RenderingServer.xml:3154
+#: doc/classes/Mesh.xml:168 doc/classes/RenderingServer.xml:3150
msgid "Flag used to mark a compressed (half float) UV coordinates array."
msgstr ""
-#: doc/classes/Mesh.xml:171 doc/classes/RenderingServer.xml:3157
+#: doc/classes/Mesh.xml:171 doc/classes/RenderingServer.xml:3153
msgid ""
"Flag used to mark a compressed (half float) UV coordinates array for the "
"second UV coordinates."
msgstr ""
-#: doc/classes/Mesh.xml:174 doc/classes/RenderingServer.xml:3160
+#: doc/classes/Mesh.xml:174 doc/classes/RenderingServer.xml:3156
msgid "Flag used to mark a compressed index array."
msgstr ""
-#: doc/classes/Mesh.xml:177 doc/classes/RenderingServer.xml:3166
+#: doc/classes/Mesh.xml:177 doc/classes/RenderingServer.xml:3162
msgid "Flag used to mark that the array contains 2D vertices."
msgstr ""
-#: doc/classes/Mesh.xml:180 doc/classes/RenderingServer.xml:3163
+#: doc/classes/Mesh.xml:180 doc/classes/RenderingServer.xml:3159
msgid ""
"Used to set flags [constant ARRAY_COMPRESS_NORMAL], [constant "
"ARRAY_COMPRESS_TANGENT], [constant ARRAY_COMPRESS_COLOR], [constant "
@@ -30562,7 +31165,10 @@ msgstr ""
msgid ""
"The number of channels to be used by ENet. Channels are used to separate "
"different kinds of data. In reliable or ordered mode, for example, the "
-"packet delivery order is ensured on a per channel basis."
+"packet delivery order is ensured on a per-channel basis. This is done to "
+"combat latency and reduces ordering restrictions on packets. The delivery "
+"status of a packet in one channel won't stall the delivery of other packets "
+"in another channel."
msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:134
@@ -30589,11 +31195,12 @@ msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:144
msgid ""
"Set the default channel to be used to transfer data. By default, this value "
-"is [code]-1[/code] which means that ENet will only use 2 channels, one for "
-"reliable and one for unreliable packets. Channel [code]0[/code] is reserved, "
-"and cannot be used. Setting this member to any value between [code]0[/code] "
-"and [member channel_count] (excluded) will force ENet to use that channel "
-"for sending data."
+"is [code]-1[/code] which means that ENet will only use 2 channels: one for "
+"reliable packets, and one for unreliable packets. The channel [code]0[/code] "
+"is reserved and cannot be used. Setting this member to any value between "
+"[code]0[/code] and [member channel_count] (excluded) will force ENet to use "
+"that channel for sending data. See [member channel_count] for more "
+"information about ENet channels."
msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:148
@@ -31785,57 +32392,63 @@ msgstr ""
#: doc/classes/Node.xml:930
msgid ""
-"Notification received from the OS when the game window is focused.\n"
-"Implemented on all platforms."
+"Notification received from the OS when the node's parent [Window] is "
+"focused. This may be a change of focus between two windows of the same "
+"engine instance, or from the OS desktop or a third-party application to a "
+"window of the game (in which case [constant "
+"NOTIFICATION_APPLICATION_FOCUS_IN] is also emitted)."
msgstr ""
-#: doc/classes/Node.xml:934
+#: doc/classes/Node.xml:933
msgid ""
-"Notification received from the OS when the game window is unfocused.\n"
-"Implemented on all platforms."
+"Notification received from the OS when the node's parent [Window] is "
+"defocused. This may be a change of focus between two windows of the same "
+"engine instance, or from a window of the game to the OS desktop or a third-"
+"party application (in which case [constant "
+"NOTIFICATION_APPLICATION_FOCUS_OUT] is also emitted)."
msgstr ""
-#: doc/classes/Node.xml:938
+#: doc/classes/Node.xml:936
msgid ""
"Notification received from the OS when a close request is sent (e.g. closing "
"the window with a \"Close\" button or [kbd]Alt + F4[/kbd]).\n"
"Implemented on desktop platforms."
msgstr ""
-#: doc/classes/Node.xml:942
+#: doc/classes/Node.xml:940
msgid ""
"Notification received from the OS when a go back request is sent (e.g. "
"pressing the \"Back\" button on Android).\n"
"Specific to the Android platform."
msgstr ""
-#: doc/classes/Node.xml:975
+#: doc/classes/Node.xml:981
msgid ""
"Inherits pause mode from the node's parent. For the root node, it is "
"equivalent to [constant PAUSE_MODE_STOP]. Default."
msgstr ""
-#: doc/classes/Node.xml:978
+#: doc/classes/Node.xml:984
msgid "Stops processing when the [SceneTree] is paused."
msgstr ""
-#: doc/classes/Node.xml:981
+#: doc/classes/Node.xml:987
msgid "Continue to process regardless of the [SceneTree] pause state."
msgstr ""
-#: doc/classes/Node.xml:984
+#: doc/classes/Node.xml:990
msgid "Duplicate the node's signals."
msgstr ""
-#: doc/classes/Node.xml:987
+#: doc/classes/Node.xml:993
msgid "Duplicate the node's groups."
msgstr ""
-#: doc/classes/Node.xml:990
+#: doc/classes/Node.xml:996
msgid "Duplicate the node's scripts."
msgstr ""
-#: doc/classes/Node.xml:993
+#: doc/classes/Node.xml:999
msgid ""
"Duplicate using instancing.\n"
"An instance stays linked to the original so when the original changes, the "
@@ -32059,12 +32672,6 @@ msgid ""
"changes. [Node3D] will not propagate this by default."
msgstr ""
-#: doc/classes/Node3D.xml:104
-msgid ""
-"Returns whether the node is visible, taking into consideration that its "
-"parents visibility."
-msgstr ""
-
#: doc/classes/Node3D.xml:115
msgid ""
"Rotates itself so that the local -Z axis points towards the [code]target[/"
@@ -32234,7 +32841,10 @@ msgid "Local translation of this node."
msgstr ""
#: doc/classes/Node3D.xml:326
-msgid "If [code]true[/code], this node is drawn."
+msgid ""
+"If [code]true[/code], this node is drawn. The node is only visible if all of "
+"its antecedents are visible as well (in other words, [method "
+"is_visible_in_tree] must return [code]true[/code])."
msgstr ""
#: doc/classes/Node3D.xml:332
@@ -32491,10 +33101,20 @@ msgid ""
"the key exists, even if the value is [code]null[/code].\n"
"Objects also receive notifications. Notifications are a simple way to notify "
"the object about different events, so they can all be handled together. See "
-"[method _notification]."
+"[method _notification].\n"
+"[b]Note:[/b] Unlike references to a [Reference], references to an Object "
+"stored in a variable can become invalid without warning. Therefore, it's "
+"recommended to use [Reference] for data classes instead of [Object]."
msgstr ""
-#: doc/classes/Object.xml:30
+#: doc/classes/Object.xml:23 doc/classes/Reference.xml:12
+#: doc/classes/Resource.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/getting_started/workflow/"
+"best_practices/node_alternatives.html"
+msgstr ""
+
+#: doc/classes/Object.xml:32
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method get].\n"
@@ -32502,7 +33122,7 @@ msgid ""
"code] does not exist."
msgstr ""
-#: doc/classes/Object.xml:38
+#: doc/classes/Object.xml:40
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method get_property_list].\n"
@@ -32514,11 +33134,11 @@ msgid ""
"PropertyUsageFlags])."
msgstr ""
-#: doc/classes/Object.xml:47
+#: doc/classes/Object.xml:49
msgid "Called when the object is initialized."
msgstr ""
-#: doc/classes/Object.xml:56
+#: doc/classes/Object.xml:58
msgid ""
"Called whenever the object receives a notification, which is identified in "
"[code]what[/code] by a constant. The base [Object] has two constants "
@@ -32527,7 +33147,7 @@ msgid ""
"notifications which are also received by this method."
msgstr ""
-#: doc/classes/Object.xml:67
+#: doc/classes/Object.xml:69
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method set].\n"
@@ -32535,7 +33155,7 @@ msgid ""
"exists."
msgstr ""
-#: doc/classes/Object.xml:75
+#: doc/classes/Object.xml:77
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method to_string], and thus the object's representation where it is "
@@ -32544,34 +33164,42 @@ msgid ""
"[code]\"[ClassName:RID]\"[/code]."
msgstr ""
-#: doc/classes/Object.xml:87
+#: doc/classes/Object.xml:89
msgid ""
"Adds a user-defined [code]signal[/code]. Arguments are optional, but can be "
"added as an [Array] of dictionaries, each containing [code]name: String[/"
"code] and [code]type: int[/code] (see [enum Variant.Type]) entries."
msgstr ""
-#: doc/classes/Object.xml:96
+#: doc/classes/Object.xml:98
msgid ""
"Calls the [code]method[/code] on the object and returns the result. This "
"method supports a variable number of arguments, so parameters are passed as "
"a comma separated list. Example:\n"
"[codeblock]\n"
"call(\"set\", \"position\", Vector2(42.0, 0.0))\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] In C#, the method name must be specified as snake_case if it is "
+"defined by a built-in Godot node. This doesn't apply to user-defined methods "
+"where you should use the same convention as in the C# source (typically "
+"PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:108
+#: doc/classes/Object.xml:111
msgid ""
"Calls the [code]method[/code] on the object during idle time. This method "
"supports a variable number of arguments, so parameters are passed as a comma "
"separated list. Example:\n"
"[codeblock]\n"
"call_deferred(\"set\", \"position\", Vector2(42.0, 0.0))\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] In C#, the method name must be specified as snake_case if it is "
+"defined by a built-in Godot node. This doesn't apply to user-defined methods "
+"where you should use the same convention as in the C# source (typically "
+"PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:122
+#: doc/classes/Object.xml:126
msgid ""
"Calls the [code]method[/code] on the object and returns the result. "
"Contrarily to [method call], this method does not support a variable number "
@@ -32581,13 +33209,13 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:132
+#: doc/classes/Object.xml:136
msgid ""
"Returns [code]true[/code] if the object can translate strings. See [method "
"set_message_translation] and [method tr]."
msgstr ""
-#: doc/classes/Object.xml:147
+#: doc/classes/Object.xml:151
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32623,7 +33251,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:174
+#: doc/classes/Object.xml:178
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32634,7 +33262,7 @@ msgid ""
"exists."
msgstr ""
-#: doc/classes/Object.xml:185
+#: doc/classes/Object.xml:189
msgid ""
"Emits the given [code]signal[/code]. The signal must exist, so it should be "
"a built-in signal of this class or one of its parent classes, or a user-"
@@ -32646,24 +33274,28 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:196
+#: doc/classes/Object.xml:200
msgid ""
"Deletes the object from memory. Any pre-existing reference to the freed "
"object will become invalid, e.g. [code]is_instance_valid(object)[/code] will "
"return [code]false[/code]."
msgstr ""
-#: doc/classes/Object.xml:205
+#: doc/classes/Object.xml:209
msgid ""
"Returns the [Variant] value of the given [code]property[/code]. If the "
-"[code]property[/code] doesn't exist, this will return [code]null[/code]."
+"[code]property[/code] doesn't exist, this will return [code]null[/code].\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:212
+#: doc/classes/Object.xml:217
msgid "Returns the object's class as a [String]."
msgstr ""
-#: doc/classes/Object.xml:219
+#: doc/classes/Object.xml:224
msgid ""
"Returns an [Array] of dictionaries with information about signals that are "
"connected to the object.\n"
@@ -32674,7 +33306,7 @@ msgid ""
"connected."
msgstr ""
-#: doc/classes/Object.xml:232
+#: doc/classes/Object.xml:237
msgid ""
"Gets the object's property indexed by the given [NodePath]. The node path "
"should be relative to the current object and can use the colon character "
@@ -32682,26 +33314,26 @@ msgid ""
"\"[/code] or [code]\"material:next_pass:blend_mode\"[/code]."
msgstr ""
-#: doc/classes/Object.xml:239
+#: doc/classes/Object.xml:244
msgid ""
"Returns the object's unique instance ID.\n"
"This ID can be saved in [EncodedObjectAsID], and can be used to retrieve the "
"object instance with [method @GDScript.instance_from_id]."
msgstr ""
-#: doc/classes/Object.xml:249
+#: doc/classes/Object.xml:254
msgid "Returns the object's metadata entry for the given [code]name[/code]."
msgstr ""
-#: doc/classes/Object.xml:256
+#: doc/classes/Object.xml:261
msgid "Returns the object's metadata as a [PackedStringArray]."
msgstr ""
-#: doc/classes/Object.xml:263
+#: doc/classes/Object.xml:268
msgid "Returns the object's methods and their signatures as an [Array]."
msgstr ""
-#: doc/classes/Object.xml:270
+#: doc/classes/Object.xml:275
msgid ""
"Returns the object's property list as an [Array] of dictionaries.\n"
"Each property's [Dictionary] contain at least [code]name: String[/code] and "
@@ -32711,54 +33343,54 @@ msgid ""
"PropertyUsageFlags])."
msgstr ""
-#: doc/classes/Object.xml:278
+#: doc/classes/Object.xml:283
msgid ""
"Returns the object's [Script] instance, or [code]null[/code] if none is "
"assigned."
msgstr ""
-#: doc/classes/Object.xml:287
+#: doc/classes/Object.xml:292
msgid "Returns an [Array] of connections for the given [code]signal[/code]."
msgstr ""
-#: doc/classes/Object.xml:294
+#: doc/classes/Object.xml:299
msgid "Returns the list of signals as an [Array] of dictionaries."
msgstr ""
-#: doc/classes/Object.xml:303
+#: doc/classes/Object.xml:308
msgid ""
"Returns [code]true[/code] if a metadata entry is found with the given "
"[code]name[/code]."
msgstr ""
-#: doc/classes/Object.xml:312
+#: doc/classes/Object.xml:317
msgid ""
"Returns [code]true[/code] if the object contains the given [code]method[/"
"code]."
msgstr ""
-#: doc/classes/Object.xml:321
+#: doc/classes/Object.xml:326
msgid "Returns [code]true[/code] if the given [code]signal[/code] exists."
msgstr ""
-#: doc/classes/Object.xml:330
+#: doc/classes/Object.xml:335
msgid ""
"Returns [code]true[/code] if the given user-defined [code]signal[/code] "
"exists. Only signals added using [method add_user_signal] are taken into "
"account."
msgstr ""
-#: doc/classes/Object.xml:337
+#: doc/classes/Object.xml:342
msgid "Returns [code]true[/code] if signal emission blocking is enabled."
msgstr ""
-#: doc/classes/Object.xml:346
+#: doc/classes/Object.xml:351
msgid ""
"Returns [code]true[/code] if the object inherits from the given [code]class[/"
"code]."
msgstr ""
-#: doc/classes/Object.xml:357
+#: doc/classes/Object.xml:362
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32766,13 +33398,13 @@ msgid ""
"code], [code]target[/code], and [code]method[/code]."
msgstr ""
-#: doc/classes/Object.xml:365
+#: doc/classes/Object.xml:370
msgid ""
"Returns [code]true[/code] if the [method Node.queue_free] method was called "
"for the object."
msgstr ""
-#: doc/classes/Object.xml:376
+#: doc/classes/Object.xml:381
msgid ""
"Send a given notification to the object, which will also trigger a call to "
"the [method _notification] method of all classes that the object inherits "
@@ -32784,34 +33416,42 @@ msgid ""
"and then down to its successive inheriting classes."
msgstr ""
-#: doc/classes/Object.xml:384
+#: doc/classes/Object.xml:389
msgid ""
"Notify the editor that the property list has changed, so that editor plugins "
"can take the new values into account. Does nothing on export builds."
msgstr ""
-#: doc/classes/Object.xml:393
+#: doc/classes/Object.xml:398
msgid "Removes a given entry from the object's metadata."
msgstr ""
-#: doc/classes/Object.xml:404
+#: doc/classes/Object.xml:409
msgid ""
"Assigns a new value to the given property. If the [code]property[/code] does "
-"not exist, nothing will happen."
+"not exist, nothing will happen.\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:413
+#: doc/classes/Object.xml:419
msgid "If set to [code]true[/code], signal emission is blocked."
msgstr ""
-#: doc/classes/Object.xml:424
+#: doc/classes/Object.xml:430
msgid ""
"Assigns a new value to the given property, after the current frame's physics "
"step. This is equivalent to calling [method set] via [method call_deferred], "
-"i.e. [code]call_deferred(\"set\", property, value)[/code]."
+"i.e. [code]call_deferred(\"set\", property, value)[/code].\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:435
+#: doc/classes/Object.xml:442
msgid ""
"Assigns a new value to the property identified by the [NodePath]. The node "
"path should be relative to the current object and can use the colon "
@@ -32823,19 +33463,19 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:449
+#: doc/classes/Object.xml:456
msgid ""
"Defines whether the object can translate strings (with calls to [method "
"tr]). Enabled by default."
msgstr ""
-#: doc/classes/Object.xml:460
+#: doc/classes/Object.xml:467
msgid ""
"Adds or changes a given entry in the object's metadata. Metadata are "
"serialized, and can take any [Variant] value."
msgstr ""
-#: doc/classes/Object.xml:469
+#: doc/classes/Object.xml:476
msgid ""
"Assigns a script to the object. Each object can have a single script "
"assigned to it, which are used to extend its functionality.\n"
@@ -32844,7 +33484,7 @@ msgid ""
"_init] method will be called."
msgstr ""
-#: doc/classes/Object.xml:477
+#: doc/classes/Object.xml:484
msgid ""
"Returns a [String] representing the object. If not overridden, defaults to "
"[code]\"[ClassName:RID]\"[/code].\n"
@@ -32852,7 +33492,7 @@ msgid ""
"representation."
msgstr ""
-#: doc/classes/Object.xml:487
+#: doc/classes/Object.xml:494
msgid ""
"Translates a message using translation catalogs configured in the Project "
"Settings.\n"
@@ -32861,35 +33501,35 @@ msgid ""
"set_message_translation]."
msgstr ""
-#: doc/classes/Object.xml:495
+#: doc/classes/Object.xml:502
msgid "Emitted whenever the object's script is changed."
msgstr ""
-#: doc/classes/Object.xml:501
+#: doc/classes/Object.xml:508
msgid "Called right when the object is initialized. Not available in script."
msgstr ""
-#: doc/classes/Object.xml:504
+#: doc/classes/Object.xml:511
msgid "Called before the object is about to be deleted."
msgstr ""
-#: doc/classes/Object.xml:507
+#: doc/classes/Object.xml:514
msgid ""
"Connects a signal in deferred mode. This way, signal emissions are stored in "
"a queue, then set on idle time."
msgstr ""
-#: doc/classes/Object.xml:510
+#: doc/classes/Object.xml:517
msgid "Persisting connections are saved when the object is serialized to file."
msgstr ""
-#: doc/classes/Object.xml:513
+#: doc/classes/Object.xml:520
msgid "One-shot connections disconnect themselves after emission."
msgstr ""
-#: doc/classes/Object.xml:516
+#: doc/classes/Object.xml:523
msgid ""
-"Connect a signal as reference counted. This means that a given signal can be "
+"Connect a signal as reference-counted. This means that a given signal can be "
"connected several times to the same target, and will only be fully "
"disconnected once no references are left."
msgstr ""
@@ -33354,10 +33994,29 @@ msgid "Returns the keycode of the given string (e.g. \"Escape\")."
msgstr ""
#: doc/classes/OS.xml:115
-msgid "Returns the command line arguments passed to the engine."
+msgid ""
+"Returns the command-line arguments passed to the engine.\n"
+"Command-line arguments can be written in any form, including both [code]--"
+"key value[/code] and [code]--key=value[/code] forms so they can be properly "
+"parsed, as long as custom command-line arguments do not conflict with engine "
+"arguments.\n"
+"You can also incorporate environment variables using the [method "
+"get_environment] method.\n"
+"You can set [code]editor/main_run_args[/code] in the Project Settings to "
+"define command-line arguments to be passed by the editor when running the "
+"project.\n"
+"Here's a minimal example on how to parse command-line arguments into a "
+"dictionary using the [code]--key=value[/code] form for arguments:\n"
+"[codeblock]\n"
+"var arguments = {}\n"
+"for argument in OS.get_cmdline_args():\n"
+" if argument.find(\"=\") > -1:\n"
+" var key_value = argument.split(\"=\")\n"
+" arguments[key_value[0].lstrip(\"--\")] = key_value[1]\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/OS.xml:122
+#: doc/classes/OS.xml:133
msgid ""
"Returns an array of MIDI device names.\n"
"The returned array will be empty if the system MIDI driver has not "
@@ -33365,14 +34024,14 @@ msgid ""
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:133
+#: doc/classes/OS.xml:144
msgid ""
"Returns current date as a dictionary of keys: [code]year[/code], "
"[code]month[/code], [code]day[/code], [code]weekday[/code], [code]dst[/code] "
"(Daylight Savings Time)."
msgstr ""
-#: doc/classes/OS.xml:142
+#: doc/classes/OS.xml:153
msgid ""
"Returns current datetime as a dictionary of keys: [code]year[/code], "
"[code]month[/code], [code]day[/code], [code]weekday[/code], [code]dst[/code] "
@@ -33380,7 +34039,7 @@ msgid ""
"[code]second[/code]."
msgstr ""
-#: doc/classes/OS.xml:151
+#: doc/classes/OS.xml:162
msgid ""
"Gets a dictionary of time values corresponding to the given UNIX epoch time "
"(in seconds).\n"
@@ -33389,22 +34048,22 @@ msgid ""
"the epoch."
msgstr ""
-#: doc/classes/OS.xml:161
+#: doc/classes/OS.xml:172
msgid "Returns an environment variable."
msgstr ""
-#: doc/classes/OS.xml:168
+#: doc/classes/OS.xml:179
msgid "Returns the path to the current engine executable."
msgstr ""
-#: doc/classes/OS.xml:175
+#: doc/classes/OS.xml:186
msgid ""
"With this function you can get the list of dangerous permissions that have "
"been granted to the Android application.\n"
"[b]Note:[/b] This method is implemented on Android."
msgstr ""
-#: doc/classes/OS.xml:185
+#: doc/classes/OS.xml:196
msgid ""
"Returns the given keycode as a string (e.g. Return values: [code]\"Escape\"[/"
"code], [code]\"Shift+Escape\"[/code]).\n"
@@ -33412,18 +34071,18 @@ msgid ""
"get_keycode_with_modifiers]."
msgstr ""
-#: doc/classes/OS.xml:193
+#: doc/classes/OS.xml:204
msgid "Returns the host OS locale."
msgstr ""
-#: doc/classes/OS.xml:200
+#: doc/classes/OS.xml:211
msgid ""
"Returns the model name of the current device.\n"
"[b]Note:[/b] This method is implemented on Android and iOS. Returns "
"[code]\"GenericDevice\"[/code] on unsupported platforms."
msgstr ""
-#: doc/classes/OS.xml:208
+#: doc/classes/OS.xml:219
msgid ""
"Returns the name of the host OS. Possible values are: [code]\"Android\"[/"
"code], [code]\"iOS\"[/code], [code]\"HTML5\"[/code], [code]\"OSX\"[/code], "
@@ -33431,81 +34090,81 @@ msgid ""
"[code]\"X11\"[/code]."
msgstr ""
-#: doc/classes/OS.xml:215
+#: doc/classes/OS.xml:226
msgid ""
"Returns the project's process ID.\n"
"[b]Note:[/b] This method is implemented on Android, iOS, Linux, macOS and "
"Windows."
msgstr ""
-#: doc/classes/OS.xml:223
+#: doc/classes/OS.xml:234
msgid "Returns the number of threads available on the host machine."
msgstr ""
-#: doc/classes/OS.xml:230
+#: doc/classes/OS.xml:241
msgid ""
"Returns the amount of time in milliseconds it took for the boot logo to "
"appear."
msgstr ""
-#: doc/classes/OS.xml:237
+#: doc/classes/OS.xml:248
msgid "Returns the maximum amount of static memory used (only works in debug)."
msgstr ""
-#: doc/classes/OS.xml:244
+#: doc/classes/OS.xml:255
msgid "Returns the amount of static memory being used by the program in bytes."
msgstr ""
-#: doc/classes/OS.xml:253
+#: doc/classes/OS.xml:264
msgid ""
"Returns the actual path to commonly used folders across different platforms. "
"Available locations are specified in [enum SystemDir].\n"
"[b]Note:[/b] This method is implemented on Android, Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:261
+#: doc/classes/OS.xml:272
msgid ""
"Returns the total number of available tablet drivers.\n"
"[b]Note:[/b] This method is implemented on Windows."
msgstr ""
-#: doc/classes/OS.xml:271
+#: doc/classes/OS.xml:282
msgid ""
"Returns the tablet driver name for the given index.\n"
"[b]Note:[/b] This method is implemented on Windows."
msgstr ""
-#: doc/classes/OS.xml:279
+#: doc/classes/OS.xml:290
msgid ""
"Returns the amount of time passed in milliseconds since the engine started."
msgstr ""
-#: doc/classes/OS.xml:286
+#: doc/classes/OS.xml:297
msgid ""
"Returns the amount of time passed in microseconds since the engine started."
msgstr ""
-#: doc/classes/OS.xml:295
+#: doc/classes/OS.xml:306
msgid "Returns current time as a dictionary of keys: hour, minute, second."
msgstr ""
-#: doc/classes/OS.xml:302
+#: doc/classes/OS.xml:313
msgid ""
"Returns the current time zone as a dictionary with the keys: bias and name."
msgstr ""
-#: doc/classes/OS.xml:309
+#: doc/classes/OS.xml:320
msgid ""
"Returns a string that is unique to the device.\n"
"[b]Note:[/b] Returns an empty string on HTML5 and UWP, as this method isn't "
"implemented on those platforms yet."
msgstr ""
-#: doc/classes/OS.xml:317
+#: doc/classes/OS.xml:328
msgid "Returns the current UNIX epoch timestamp."
msgstr ""
-#: doc/classes/OS.xml:326
+#: doc/classes/OS.xml:337
msgid ""
"Gets an epoch time value from a dictionary of time values.\n"
"[code]datetime[/code] must be populated with the following keys: [code]year[/"
@@ -33516,7 +34175,7 @@ msgid ""
"ignored."
msgstr ""
-#: doc/classes/OS.xml:335
+#: doc/classes/OS.xml:346
msgid ""
"Returns the absolute directory path where user data is written ([code]user://"
"[/code]).\n"
@@ -33534,11 +34193,11 @@ msgid ""
"[/code]."
msgstr ""
-#: doc/classes/OS.xml:348
+#: doc/classes/OS.xml:359
msgid "Returns [code]true[/code] if an environment variable exists."
msgstr ""
-#: doc/classes/OS.xml:357
+#: doc/classes/OS.xml:368
msgid ""
"Returns [code]true[/code] if the feature for the given feature tag is "
"supported in the currently running instance, depending on platform, build "
@@ -33549,7 +34208,7 @@ msgid ""
"[b]Note:[/b] Tag names are case-sensitive."
msgstr ""
-#: doc/classes/OS.xml:365
+#: doc/classes/OS.xml:376
msgid ""
"Returns [code]true[/code] if the Godot binary used to run the project is a "
"[i]debug[/i] export template, or when running in the editor.\n"
@@ -33560,26 +34219,26 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/OS.xml:376
+#: doc/classes/OS.xml:387
msgid ""
"Returns [code]true[/code] if the input keycode corresponds to a Unicode "
"character."
msgstr ""
-#: doc/classes/OS.xml:383
+#: doc/classes/OS.xml:394
msgid ""
"Returns [code]true[/code] if the engine was executed with [code]-v[/code] "
"(verbose stdout)."
msgstr ""
-#: doc/classes/OS.xml:390
+#: doc/classes/OS.xml:401
msgid ""
"If [code]true[/code], the [code]user://[/code] file system is persistent, so "
"that its state is the same after a player quits and starts the game again. "
"Relevant to the HTML5 platform, where this persistence may be unavailable."
msgstr ""
-#: doc/classes/OS.xml:399
+#: doc/classes/OS.xml:410
msgid ""
"Kill (terminate) the process identified by the given process ID ([code]pid[/"
"code]), e.g. the one returned by [method execute] in non-blocking mode.\n"
@@ -33589,37 +34248,37 @@ msgid ""
"Windows."
msgstr ""
-#: doc/classes/OS.xml:408
+#: doc/classes/OS.xml:419
msgid ""
"Initialises the singleton for the system MIDI driver.\n"
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:418
+#: doc/classes/OS.xml:429
msgid ""
"Shows all resources in the game. Optionally, the list can be written to a "
"file by specifying a file path in [code]tofile[/code]."
msgstr ""
-#: doc/classes/OS.xml:425
+#: doc/classes/OS.xml:436
msgid "Shows the list of loaded textures sorted by size in memory."
msgstr ""
-#: doc/classes/OS.xml:434
+#: doc/classes/OS.xml:445
msgid "Shows the number of resources loaded by the game of the given types."
msgstr ""
-#: doc/classes/OS.xml:443
+#: doc/classes/OS.xml:454
msgid "Shows all resources currently used by the game."
msgstr ""
-#: doc/classes/OS.xml:452
+#: doc/classes/OS.xml:463
msgid ""
"At the moment this function is only used by [code]AudioDriverOpenSL[/code] "
"to request permission for [code]RECORD_AUDIO[/code] on Android."
msgstr ""
-#: doc/classes/OS.xml:459
+#: doc/classes/OS.xml:470
msgid ""
"With this function you can request dangerous permissions since normal "
"permissions are automatically granted at install time in Android "
@@ -33627,15 +34286,15 @@ msgid ""
"[b]Note:[/b] This method is implemented on Android."
msgstr ""
-#: doc/classes/OS.xml:469
+#: doc/classes/OS.xml:480
msgid "Sets the name of the current thread."
msgstr ""
-#: doc/classes/OS.xml:478
+#: doc/classes/OS.xml:489
msgid "Enables backup saves if [code]enabled[/code] is [code]true[/code]."
msgstr ""
-#: doc/classes/OS.xml:487
+#: doc/classes/OS.xml:498
msgid ""
"Requests the OS to open a resource with the most appropriate program. For "
"example:\n"
@@ -33654,7 +34313,7 @@ msgid ""
"and Windows."
msgstr ""
-#: doc/classes/OS.xml:498
+#: doc/classes/OS.xml:509
msgid ""
"The exit code passed to the OS when the main loop exits. By convention, an "
"exit code of [code]0[/code] indicates success whereas a non-zero exit code "
@@ -33664,137 +34323,137 @@ msgid ""
"with an [code]exit_code[/code] argument passed."
msgstr ""
-#: doc/classes/OS.xml:502
+#: doc/classes/OS.xml:513
msgid ""
"If [code]true[/code], the engine optimizes for low processor usage by only "
"refreshing the screen if needed. Can improve battery consumption on mobile."
msgstr ""
-#: doc/classes/OS.xml:505
+#: doc/classes/OS.xml:516
msgid ""
"The amount of sleeping between frames when the low-processor usage mode is "
"enabled (in microseconds). Higher values will result in lower CPU usage."
msgstr ""
-#: doc/classes/OS.xml:508
-msgid "The current tablet drvier in use."
+#: doc/classes/OS.xml:519
+msgid "The current tablet driver in use."
msgstr ""
-#: doc/classes/OS.xml:513
+#: doc/classes/OS.xml:524
msgid ""
"The GLES2 rendering backend. It uses OpenGL ES 2.0 on mobile devices, OpenGL "
"2.1 on desktop platforms and WebGL 1.0 on the web."
msgstr ""
-#: doc/classes/OS.xml:516
+#: doc/classes/OS.xml:527
msgid "The Vulkan rendering backend."
msgstr ""
-#: doc/classes/OS.xml:519
+#: doc/classes/OS.xml:530
msgid "Sunday."
msgstr ""
-#: doc/classes/OS.xml:522
+#: doc/classes/OS.xml:533
msgid "Monday."
msgstr ""
-#: doc/classes/OS.xml:525
+#: doc/classes/OS.xml:536
msgid "Tuesday."
msgstr ""
-#: doc/classes/OS.xml:528
+#: doc/classes/OS.xml:539
msgid "Wednesday."
msgstr ""
-#: doc/classes/OS.xml:531
+#: doc/classes/OS.xml:542
msgid "Thursday."
msgstr ""
-#: doc/classes/OS.xml:534
+#: doc/classes/OS.xml:545
msgid "Friday."
msgstr ""
-#: doc/classes/OS.xml:537
+#: doc/classes/OS.xml:548
msgid "Saturday."
msgstr ""
-#: doc/classes/OS.xml:540
+#: doc/classes/OS.xml:551
msgid "January."
msgstr ""
-#: doc/classes/OS.xml:543
+#: doc/classes/OS.xml:554
msgid "February."
msgstr ""
-#: doc/classes/OS.xml:546
+#: doc/classes/OS.xml:557
msgid "March."
msgstr ""
-#: doc/classes/OS.xml:549
+#: doc/classes/OS.xml:560
msgid "April."
msgstr ""
-#: doc/classes/OS.xml:552
+#: doc/classes/OS.xml:563
msgid "May."
msgstr ""
-#: doc/classes/OS.xml:555
+#: doc/classes/OS.xml:566
msgid "June."
msgstr ""
-#: doc/classes/OS.xml:558
+#: doc/classes/OS.xml:569
msgid "July."
msgstr ""
-#: doc/classes/OS.xml:561
+#: doc/classes/OS.xml:572
msgid "August."
msgstr ""
-#: doc/classes/OS.xml:564
+#: doc/classes/OS.xml:575
msgid "September."
msgstr ""
-#: doc/classes/OS.xml:567
+#: doc/classes/OS.xml:578
msgid "October."
msgstr ""
-#: doc/classes/OS.xml:570
+#: doc/classes/OS.xml:581
msgid "November."
msgstr ""
-#: doc/classes/OS.xml:573
+#: doc/classes/OS.xml:584
msgid "December."
msgstr ""
-#: doc/classes/OS.xml:576
+#: doc/classes/OS.xml:587
msgid "Desktop directory path."
msgstr ""
-#: doc/classes/OS.xml:579
+#: doc/classes/OS.xml:590
msgid "DCIM (Digital Camera Images) directory path."
msgstr ""
-#: doc/classes/OS.xml:582
+#: doc/classes/OS.xml:593
msgid "Documents directory path."
msgstr ""
-#: doc/classes/OS.xml:585
+#: doc/classes/OS.xml:596
msgid "Downloads directory path."
msgstr ""
-#: doc/classes/OS.xml:588
+#: doc/classes/OS.xml:599
msgid "Movies directory path."
msgstr ""
-#: doc/classes/OS.xml:591
+#: doc/classes/OS.xml:602
msgid "Music directory path."
msgstr ""
-#: doc/classes/OS.xml:594
+#: doc/classes/OS.xml:605
msgid "Pictures directory path."
msgstr ""
-#: doc/classes/OS.xml:597
+#: doc/classes/OS.xml:608
msgid "Ringtones directory path."
msgstr ""
@@ -33849,7 +34508,15 @@ msgid ""
"should always be preferred."
msgstr ""
-#: doc/classes/PackedByteArray.xml:85
+#: doc/classes/PackedByteArray.xml:87 doc/classes/PackedColorArray.xml:53
+#: doc/classes/PackedFloat32Array.xml:54 doc/classes/PackedFloat64Array.xml:54
+#: doc/classes/PackedInt32Array.xml:54 doc/classes/PackedInt64Array.xml:54
+#: doc/classes/PackedStringArray.xml:53 doc/classes/PackedVector2Array.xml:53
+#: doc/classes/PackedVector3Array.xml:53
+msgid "Returns [code]true[/code] if the array contains [code]value[/code]."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:94
msgid ""
"Returns a hexadecimal representation of this array as a [String].\n"
"[codeblock]\n"
@@ -33858,39 +34525,48 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/PackedByteArray.xml:100 doc/classes/PackedColorArray.xml:55
-#: doc/classes/PackedFloat32Array.xml:56 doc/classes/PackedFloat64Array.xml:56
-#: doc/classes/PackedStringArray.xml:55 doc/classes/PackedVector2Array.xml:55
-#: doc/classes/PackedVector3Array.xml:55
+#: doc/classes/PackedByteArray.xml:109 doc/classes/PackedColorArray.xml:64
+#: doc/classes/PackedFloat32Array.xml:65 doc/classes/PackedFloat64Array.xml:65
+#: doc/classes/PackedStringArray.xml:64 doc/classes/PackedVector2Array.xml:64
+#: doc/classes/PackedVector3Array.xml:64
msgid ""
"Inserts a new element at a given position in the array. The position must be "
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PackedByteArray.xml:134 doc/classes/PackedColorArray.xml:89
-#: doc/classes/PackedFloat32Array.xml:90 doc/classes/PackedFloat64Array.xml:90
-#: doc/classes/PackedInt32Array.xml:90 doc/classes/PackedInt64Array.xml:90
-#: doc/classes/PackedStringArray.xml:89 doc/classes/PackedVector2Array.xml:89
-#: doc/classes/PackedVector3Array.xml:89
+#: doc/classes/PackedByteArray.xml:143 doc/classes/PackedColorArray.xml:98
+#: doc/classes/PackedFloat32Array.xml:99 doc/classes/PackedFloat64Array.xml:99
+#: doc/classes/PackedInt32Array.xml:99 doc/classes/PackedInt64Array.xml:99
+#: doc/classes/PackedStringArray.xml:98 doc/classes/PackedVector2Array.xml:98
+#: doc/classes/PackedVector3Array.xml:98
msgid ""
"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."
msgstr ""
-#: doc/classes/PackedByteArray.xml:145
+#: doc/classes/PackedByteArray.xml:154
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PackedByteArray.xml:152 doc/classes/PackedColorArray.xml:107
-#: doc/classes/PackedFloat32Array.xml:108
-#: doc/classes/PackedFloat64Array.xml:108 doc/classes/PackedStringArray.xml:107
-#: doc/classes/PackedVector2Array.xml:107
-#: doc/classes/PackedVector3Array.xml:107
+#: doc/classes/PackedByteArray.xml:161 doc/classes/PackedColorArray.xml:116
+#: doc/classes/PackedFloat32Array.xml:117
+#: doc/classes/PackedFloat64Array.xml:117 doc/classes/PackedStringArray.xml:116
+#: doc/classes/PackedVector2Array.xml:116
+#: doc/classes/PackedVector3Array.xml:116
msgid "Returns the size of the array."
msgstr ""
-#: doc/classes/PackedByteArray.xml:163
+#: doc/classes/PackedByteArray.xml:168 doc/classes/PackedColorArray.xml:123
+#: doc/classes/PackedFloat32Array.xml:124
+#: doc/classes/PackedFloat64Array.xml:124 doc/classes/PackedInt32Array.xml:124
+#: doc/classes/PackedInt64Array.xml:124 doc/classes/PackedStringArray.xml:123
+#: doc/classes/PackedVector2Array.xml:123
+#: doc/classes/PackedVector3Array.xml:123
+msgid "Sorts the elements of the array in ascending order."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:179
msgid ""
"Returns the slice of the [PackedByteArray] between indices (inclusive) as a "
"new [PackedByteArray]. Any negative index is considered to be from the end "
@@ -33918,12 +34594,12 @@ msgstr ""
msgid "Appends a [PackedColorArray] at the end of this array."
msgstr ""
-#: doc/classes/PackedColorArray.xml:71 doc/classes/PackedInt32Array.xml:72
-#: doc/classes/PackedInt64Array.xml:72
+#: doc/classes/PackedColorArray.xml:80 doc/classes/PackedInt32Array.xml:81
+#: doc/classes/PackedInt64Array.xml:81
msgid "Appends a value to the array."
msgstr ""
-#: doc/classes/PackedColorArray.xml:100
+#: doc/classes/PackedColorArray.xml:109
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -33953,8 +34629,8 @@ msgstr ""
msgid "Appends a [PackedFloat32Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedFloat32Array.xml:101
-#: doc/classes/PackedFloat64Array.xml:101
+#: doc/classes/PackedFloat32Array.xml:110
+#: doc/classes/PackedFloat64Array.xml:110
msgid "Changes the float at the given index."
msgstr ""
@@ -34007,17 +34683,17 @@ msgstr ""
msgid "Appends a [PackedInt32Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:56 doc/classes/PackedInt64Array.xml:56
+#: doc/classes/PackedInt32Array.xml:65 doc/classes/PackedInt64Array.xml:65
msgid ""
"Inserts a new integer at a given position in the array. The position must be "
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:101 doc/classes/PackedInt64Array.xml:101
+#: doc/classes/PackedInt32Array.xml:110 doc/classes/PackedInt64Array.xml:110
msgid "Changes the integer at the given index."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:108 doc/classes/PackedInt64Array.xml:108
+#: doc/classes/PackedInt32Array.xml:117 doc/classes/PackedInt64Array.xml:117
msgid "Returns the array size."
msgstr ""
@@ -34058,6 +34734,14 @@ msgid ""
"Can be used to save a node to a file. When saving, the node as well as all "
"the node it owns get saved (see [code]owner[/code] property on [Node]).\n"
"[b]Note:[/b] The node doesn't need to own itself.\n"
+"[b]Example of loading a saved scene:[/b]\n"
+"[codeblock]\n"
+"# Use `load()` instead of `preload()` if the path isn't known at compile-"
+"time.\n"
+"var scene = preload(\"res://scene.tscn\").instance()\n"
+"# Add the node as a child of the node the script is attached to.\n"
+"add_child(scene)\n"
+"[/codeblock]\n"
"[b]Example of saving a node with different owners:[/b] The following example "
"creates 3 objects: [code]Node2D[/code] ([code]node[/code]), "
"[code]RigidBody2D[/code] ([code]rigid[/code]) and [code]CollisionObject2D[/"
@@ -34089,29 +34773,29 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/PackedScene.xml:40
+#: doc/classes/PackedScene.xml:47
msgid "Returns [code]true[/code] if the scene file has nodes."
msgstr ""
-#: doc/classes/PackedScene.xml:47
+#: doc/classes/PackedScene.xml:54
msgid ""
"Returns the [code]SceneState[/code] representing the scene file contents."
msgstr ""
-#: doc/classes/PackedScene.xml:56
+#: doc/classes/PackedScene.xml:63
msgid ""
"Instantiates the scene's node hierarchy. Triggers child scene "
"instantiation(s). Triggers a [constant Node.NOTIFICATION_INSTANCED] "
"notification on the root node."
msgstr ""
-#: doc/classes/PackedScene.xml:65
+#: doc/classes/PackedScene.xml:72
msgid ""
"Pack will ignore any sub-nodes not owned by given node. See [member Node."
"owner]."
msgstr ""
-#: doc/classes/PackedScene.xml:71
+#: doc/classes/PackedScene.xml:78
msgid ""
"A dictionary representation of the scene contents.\n"
"Available keys include \"rnames\" and \"variants\" for resources, "
@@ -34120,18 +34804,18 @@ msgid ""
"connections, and \"version\" for the format style of the PackedScene."
msgstr ""
-#: doc/classes/PackedScene.xml:77
+#: doc/classes/PackedScene.xml:84
msgid "If passed to [method instance], blocks edits to the scene state."
msgstr ""
-#: doc/classes/PackedScene.xml:80
+#: doc/classes/PackedScene.xml:87
msgid ""
"If passed to [method instance], provides local scene resources to the local "
"scene.\n"
"[b]Note:[/b] Only available in editor builds."
msgstr ""
-#: doc/classes/PackedScene.xml:84
+#: doc/classes/PackedScene.xml:91
msgid ""
"If passed to [method instance], provides local scene resources to the local "
"scene. Only the main scene should receive the main edit state.\n"
@@ -34159,11 +34843,11 @@ msgstr ""
msgid "Appends a [PackedStringArray] at the end of this array."
msgstr ""
-#: doc/classes/PackedStringArray.xml:71
+#: doc/classes/PackedStringArray.xml:80
msgid "Appends a string element at end of the array."
msgstr ""
-#: doc/classes/PackedStringArray.xml:100
+#: doc/classes/PackedStringArray.xml:109
msgid "Changes the [String] at the given index."
msgstr ""
@@ -34188,11 +34872,11 @@ msgstr ""
msgid "Appends a [PackedVector2Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedVector2Array.xml:71
+#: doc/classes/PackedVector2Array.xml:80
msgid "Inserts a [Vector2] at the end."
msgstr ""
-#: doc/classes/PackedVector2Array.xml:100
+#: doc/classes/PackedVector2Array.xml:109
msgid "Changes the [Vector2] at the given index."
msgstr ""
@@ -34217,11 +34901,11 @@ msgstr ""
msgid "Appends a [PackedVector3Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedVector3Array.xml:71
+#: doc/classes/PackedVector3Array.xml:80
msgid "Inserts a [Vector3] at the end."
msgstr ""
-#: doc/classes/PackedVector3Array.xml:100
+#: doc/classes/PackedVector3Array.xml:109
msgid "Changes the [Vector3] at the given index."
msgstr ""
@@ -35112,13 +35796,55 @@ msgid ""
"as the values displayed in the [b]Monitor[/b] tab in the editor's "
"[b]Debugger[/b] panel. By using the [method get_monitor] method of this "
"class, you can access this data from your code.\n"
+"You can add custom monitors using the [method add_custom_monitor] method. "
+"Custom monitors are available in [b]Monitor[/b] tab in the editor's "
+"[b]Debugger[/b] panel together with built-in monitors.\n"
"[b]Note:[/b] A few of these monitors are only available in debug mode and "
"will always return 0 when used in a release build.\n"
"[b]Note:[/b] Many of these monitors are not updated in real-time, so there "
-"may be a short delay between changes."
+"may be a short delay between changes.\n"
+"[b]Note:[/b] Custom monitors do not support negative values. Negative values "
+"are clamped to 0."
+msgstr ""
+
+#: doc/classes/Performance.xml:26
+msgid ""
+"Adds a custom monitor with name same as id. You can specify the category of "
+"monitor using '/' in id. If there are more than one '/' then default "
+"category is used. Default category is \"Custom\".\n"
+"[codeblock]\n"
+"Performance.add_custom_monitor(\"MyCategory/MyMonitor\", some_callable) # "
+"Adds monitor with name \"MyName\" to category \"MyCategory\"\n"
+"Performance.add_custom_monitor(\"MyMonitor\", some_callable) # Adds monitor "
+"with name \"MyName\" to category \"Custom\"\n"
+"# Note: \"MyCategory/MyMonitor\" and \"MyMonitor\" have same name but "
+"different ids so above code is valid\n"
+"Performance.add_custom_monitor(\"Custom/MyMonitor\", some_callable) # Adds "
+"monitor with name \"MyName\" to category \"Custom\"\n"
+"# Note: \"MyMonitor\" and \"Custom/MyMonitor\" have same name and same "
+"category but different ids so above code is valid\n"
+"Performance.add_custom_monitor(\"MyCategoryOne/MyCategoryTwo/MyMonitor\", "
+"some_callable) # Adds monitor with name \"MyCategoryOne/MyCategoryTwo/"
+"MyMonitor\" to category \"Custom\"\n"
+"[/codeblock]\n"
+"The debugger calls the callable to get the value of custom monitor. The "
+"callable must return a number.\n"
+"Callables are called with arguments supplied in argument array.\n"
+"[b]Note:[/b] It throws an error if given id is already present."
msgstr ""
-#: doc/classes/Performance.xml:20
+#: doc/classes/Performance.xml:46
+msgid ""
+"Returns the value of custom monitor with given id. The callable is called to "
+"get the value of custom monitor.\n"
+"[b]Note:[/b] It throws an error if the given id is absent."
+msgstr ""
+
+#: doc/classes/Performance.xml:54
+msgid "Returns the names of active custom monitors in an array."
+msgstr ""
+
+#: doc/classes/Performance.xml:63
msgid ""
"Returns the value of one of the available monitors. You should provide one "
"of the [enum Monitor] constants as the argument, like this:\n"
@@ -35128,123 +35854,139 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Performance.xml:29
+#: doc/classes/Performance.xml:73
+msgid "Returns the last tick in which custom monitor was added/removed."
+msgstr ""
+
+#: doc/classes/Performance.xml:82
+msgid ""
+"Returns true if custom monitor with the given id is present otherwise "
+"returns false."
+msgstr ""
+
+#: doc/classes/Performance.xml:91
+msgid ""
+"Removes the custom monitor with given id.\n"
+"[b]Note:[/b] It throws an error if the given id is already absent."
+msgstr ""
+
+#: doc/classes/Performance.xml:98
msgid "Number of frames per second."
msgstr ""
-#: doc/classes/Performance.xml:32
+#: doc/classes/Performance.xml:101
msgid "Time it took to complete one frame, in seconds."
msgstr ""
-#: doc/classes/Performance.xml:35
+#: doc/classes/Performance.xml:104
msgid "Time it took to complete one physics frame, in seconds."
msgstr ""
-#: doc/classes/Performance.xml:38
+#: doc/classes/Performance.xml:107
msgid ""
"Static memory currently used, in bytes. Not available in release builds."
msgstr ""
-#: doc/classes/Performance.xml:41
+#: doc/classes/Performance.xml:110
msgid "Available static memory. Not available in release builds."
msgstr ""
-#: doc/classes/Performance.xml:44
+#: doc/classes/Performance.xml:113
msgid ""
"Largest amount of memory the message queue buffer has used, in bytes. The "
"message queue is used for deferred functions calls and notifications."
msgstr ""
-#: doc/classes/Performance.xml:47
+#: doc/classes/Performance.xml:116
msgid "Number of objects currently instanced (including nodes)."
msgstr ""
-#: doc/classes/Performance.xml:50
+#: doc/classes/Performance.xml:119
msgid "Number of resources currently used."
msgstr ""
-#: doc/classes/Performance.xml:53
+#: doc/classes/Performance.xml:122
msgid ""
"Number of nodes currently instanced in the scene tree. This also includes "
"the root node."
msgstr ""
-#: doc/classes/Performance.xml:56
+#: doc/classes/Performance.xml:125
msgid ""
"Number of orphan nodes, i.e. nodes which are not parented to a node of the "
"scene tree."
msgstr ""
-#: doc/classes/Performance.xml:59
+#: doc/classes/Performance.xml:128
msgid "3D objects drawn per frame."
msgstr ""
-#: doc/classes/Performance.xml:62
+#: doc/classes/Performance.xml:131
msgid "Vertices drawn per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:65
+#: doc/classes/Performance.xml:134
msgid "Material changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:68
+#: doc/classes/Performance.xml:137
msgid "Shader changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:71
+#: doc/classes/Performance.xml:140
msgid "Render surface changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:74
+#: doc/classes/Performance.xml:143
msgid "Draw calls per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:77 doc/classes/RenderingServer.xml:3805
+#: doc/classes/Performance.xml:146 doc/classes/RenderingServer.xml:3816
msgid ""
"The amount of video memory used, i.e. texture and vertex memory combined."
msgstr ""
-#: doc/classes/Performance.xml:80 doc/classes/RenderingServer.xml:3808
+#: doc/classes/Performance.xml:149 doc/classes/RenderingServer.xml:3819
msgid "The amount of texture memory used."
msgstr ""
-#: doc/classes/Performance.xml:83 doc/classes/RenderingServer.xml:3811
+#: doc/classes/Performance.xml:152 doc/classes/RenderingServer.xml:3822
msgid "The amount of vertex memory used."
msgstr ""
-#: doc/classes/Performance.xml:86 doc/classes/RenderingServer.xml:3802
+#: doc/classes/Performance.xml:155 doc/classes/RenderingServer.xml:3813
msgid "Unimplemented in the GLES2 rendering backend, always returns 0."
msgstr ""
-#: doc/classes/Performance.xml:89
+#: doc/classes/Performance.xml:158
msgid "Number of active [RigidBody2D] nodes in the game."
msgstr ""
-#: doc/classes/Performance.xml:92
+#: doc/classes/Performance.xml:161
msgid "Number of collision pairs in the 2D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:95
+#: doc/classes/Performance.xml:164
msgid "Number of islands in the 2D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:98
+#: doc/classes/Performance.xml:167
msgid "Number of active [RigidBody3D] and [VehicleBody3D] nodes in the game."
msgstr ""
-#: doc/classes/Performance.xml:101
+#: doc/classes/Performance.xml:170
msgid "Number of collision pairs in the 3D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:104
+#: doc/classes/Performance.xml:173
msgid "Number of islands in the 3D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:107
+#: doc/classes/Performance.xml:176
msgid "Output latency of the [AudioServer]."
msgstr ""
-#: doc/classes/Performance.xml:110
+#: doc/classes/Performance.xml:179
msgid "Represents the size of the [enum Monitor] enum."
msgstr ""
@@ -35268,27 +36010,27 @@ msgstr ""
msgid "Damps the body's rotation if greater than [code]0[/code]."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:70 doc/classes/RigidBody3D.xml:132
+#: doc/classes/PhysicalBone3D.xml:70 doc/classes/RigidBody3D.xml:139
msgid "Lock the body's rotation in the X axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:73 doc/classes/RigidBody3D.xml:135
+#: doc/classes/PhysicalBone3D.xml:73 doc/classes/RigidBody3D.xml:142
msgid "Lock the body's rotation in the Y axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:76 doc/classes/RigidBody3D.xml:138
+#: doc/classes/PhysicalBone3D.xml:76 doc/classes/RigidBody3D.xml:145
msgid "Lock the body's rotation in the Z axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:79 doc/classes/RigidBody3D.xml:141
+#: doc/classes/PhysicalBone3D.xml:79 doc/classes/RigidBody3D.xml:148
msgid "Lock the body's movement in the X axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:82 doc/classes/RigidBody3D.xml:144
+#: doc/classes/PhysicalBone3D.xml:82 doc/classes/RigidBody3D.xml:151
msgid "Lock the body's movement in the Y axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:85 doc/classes/RigidBody3D.xml:147
+#: doc/classes/PhysicalBone3D.xml:85 doc/classes/RigidBody3D.xml:154
msgid "Lock the body's movement in the Z axis."
msgstr ""
@@ -35343,12 +36085,12 @@ msgstr ""
msgid "Damps the body's movement if greater than [code]0[/code]."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:118 doc/classes/RigidBody2D.xml:158
-#: doc/classes/RigidBody3D.xml:175
+#: doc/classes/PhysicalBone3D.xml:118 doc/classes/RigidBody2D.xml:159
+#: doc/classes/RigidBody3D.xml:183
msgid "The body's mass."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:121 doc/classes/RigidBody3D.xml:188
+#: doc/classes/PhysicalBone3D.xml:121 doc/classes/RigidBody3D.xml:196
msgid ""
"The body's weight based on its mass and the global 3D gravity. Global values "
"are set in [b]Project > Project Settings > Physics > 3d[/b]."
@@ -35655,7 +36397,7 @@ msgid "The inverse of the mass of the body."
msgstr ""
#: doc/classes/PhysicsDirectBodyState2D.xml:195
-#: doc/classes/PhysicsDirectBodyState3D.xml:198 doc/classes/RigidBody2D.xml:155
+#: doc/classes/PhysicsDirectBodyState3D.xml:198 doc/classes/RigidBody2D.xml:156
msgid "The body's linear velocity."
msgstr ""
@@ -36208,7 +36950,7 @@ msgid ""
msgstr ""
#: doc/classes/PhysicsServer2D.xml:620 doc/classes/PhysicsServer3D.xml:637
-#: doc/classes/RigidBody3D.xml:120
+#: doc/classes/RigidBody3D.xml:127
msgid ""
"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."
@@ -37273,47 +38015,64 @@ msgid ""
"collision queries. See also [PhysicsShapeQueryResult2D]."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:18
-msgid ""
-"Sets the [Shape2D] that will be used for collision/intersection queries."
-msgstr ""
-
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:24
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:15
msgid "If [code]true[/code], the query will take [Area2D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:18
msgid ""
"If [code]true[/code], the query will take [PhysicsBody2D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:30
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:30
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:21
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:21
msgid "The physics layer(s) the query will take into account (as a bitmask)."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:33
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:33
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:24
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:24
msgid ""
"The list of objects or object [RID]s that will be excluded from collisions."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:36
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:36 doc/classes/Shape3D.xml:16
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:27 doc/classes/Shape3D.xml:16
msgid "The collision margin for the shape."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:39
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:30
msgid "The motion of the shape being queried for."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:42
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:39
-msgid "The queried shape's [RID]. See also [method set_shape]."
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:33
+msgid ""
+"The [Shape2D] that will be used for collision/intersection queries. This "
+"stores the actual reference which avoids the shape to be released while "
+"being used for queries, so always prefer using this over [member shape_rid]."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:36
+msgid ""
+"The queried shape's [RID] that will be used for collision/intersection "
+"queries. Use this over [member shape] if you want to optimize for "
+"performance using the Servers API:\n"
+"[codeblock]\n"
+"var shape_rid = PhysicsServer2D.circle_shape_create()\n"
+"var radius = 64\n"
+"PhysicsServer2D.shape_set_data(shape_rid, radius)\n"
+"\n"
+"var params = PhysicsShapeQueryParameters2D.new()\n"
+"params.shape_rid = shape_rid\n"
+"\n"
+"# Execute physics queries here...\n"
+"\n"
+"# Release the shape when done with physics queries.\n"
+"PhysicsServer2D.free_rid(shape_rid)\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:45
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:42
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:52
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:49
msgid "The queried shape's transform matrix."
msgstr ""
@@ -37327,18 +38086,40 @@ msgid ""
"collision queries. See also [PhysicsShapeQueryResult3D]."
msgstr ""
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:15
+msgid "If [code]true[/code], the query will take [Area3D]s into account."
+msgstr ""
+
#: doc/classes/PhysicsShapeQueryParameters3D.xml:18
msgid ""
-"Sets the [Shape3D] that will be used for collision/intersection queries."
+"If [code]true[/code], the query will take [PhysicsBody3D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:24
-msgid "If [code]true[/code], the query will take [Area3D]s into account."
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:30
+msgid ""
+"The [Shape3D] that will be used for collision/intersection queries. This "
+"stores the actual reference which avoids the shape to be released while "
+"being used for queries, so always prefer using this over [member shape_rid]."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:33
msgid ""
-"If [code]true[/code], the query will take [PhysicsBody3D]s into account."
+"The queried shape's [RID] that will be used for collision/intersection "
+"queries. Use this over [member shape] if you want to optimize for "
+"performance using the Servers API:\n"
+"[codeblock]\n"
+"var shape_rid = PhysicsServer3D.shape_create(PhysicsServer3D.SHAPE_SPHERE)\n"
+"var radius = 2.0\n"
+"PhysicsServer3D.shape_set_data(shape_rid, radius)\n"
+"\n"
+"var params = PhysicsShapeQueryParameters3D.new()\n"
+"params.shape_rid = shape_rid\n"
+"\n"
+"# Execute physics queries here...\n"
+"\n"
+"# Release the shape when done with physics queries.\n"
+"PhysicsServer3D.free_rid(shape_rid)\n"
+"[/codeblock]"
msgstr ""
#: doc/classes/PhysicsShapeQueryResult2D.xml:4
@@ -37479,92 +38260,94 @@ msgid ""
"code]."
msgstr ""
-#: doc/classes/Plane.xml:72
-msgid "Returns a point on the plane."
-msgstr ""
-
-#: doc/classes/Plane.xml:83
+#: doc/classes/Plane.xml:76
msgid ""
-"Returns [code]true[/code] if [code]point[/code] is inside the plane (by a "
-"very minimum [code]epsilon[/code] threshold)."
+"Returns [code]true[/code] if [code]point[/code] is inside the plane. "
+"Comparison uses a custom minimum [code]epsilon[/code] threshold."
msgstr ""
-#: doc/classes/Plane.xml:94
+#: doc/classes/Plane.xml:87
msgid ""
"Returns the intersection point of the three planes [code]b[/code], [code]c[/"
"code] and this plane. If no intersection is found, [code]null[/code] is "
"returned."
msgstr ""
-#: doc/classes/Plane.xml:105
+#: doc/classes/Plane.xml:98
msgid ""
"Returns the intersection point of a ray consisting of the position "
"[code]from[/code] and the direction normal [code]dir[/code] with this plane. "
"If no intersection is found, [code]null[/code] is returned."
msgstr ""
-#: doc/classes/Plane.xml:116
+#: doc/classes/Plane.xml:109
msgid ""
"Returns the intersection point of a segment from position [code]begin[/code] "
"to position [code]end[/code] with this plane. If no intersection is found, "
"[code]null[/code] is returned."
msgstr ""
-#: doc/classes/Plane.xml:125
+#: doc/classes/Plane.xml:118
msgid ""
"Returns [code]true[/code] if this plane and [code]plane[/code] are "
"approximately equal, by running [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/Plane.xml:134
+#: doc/classes/Plane.xml:127
msgid ""
"Returns [code]true[/code] if [code]point[/code] is located above the plane."
msgstr ""
-#: doc/classes/Plane.xml:141
+#: doc/classes/Plane.xml:134
msgid "Returns a copy of the plane, normalized."
msgstr ""
-#: doc/classes/Plane.xml:150
+#: doc/classes/Plane.xml:143
msgid ""
-"Returns the orthogonal projection of point [code]p[/code] into a point in "
-"the plane."
+"Returns the orthogonal projection of [code]point[/code] into a point in the "
+"plane."
msgstr ""
-#: doc/classes/Plane.xml:156
+#: doc/classes/Plane.xml:149
msgid ""
-"Distance from the origin to the plane, in the direction of [member normal]."
+"The distance from the origin to the plane, in the direction of [member "
+"normal]. This value is typically non-negative.\n"
+"In the scalar equation of the plane [code]ax + by + cz = d[/code], this is "
+"[code]d[/code], while the [code](a, b, c)[/code] coordinates are represented "
+"by the [member normal] property."
msgstr ""
-#: doc/classes/Plane.xml:159
+#: doc/classes/Plane.xml:153
msgid ""
-"The normal of the plane. \"Over\" or \"Above\" the plane is considered the "
-"side of the plane towards where the normal is pointing."
+"The normal of the plane, which must be normalized.\n"
+"In the scalar equation of the plane [code]ax + by + cz = d[/code], this is "
+"the vector [code](a, b, c)[/code], where [code]d[/code] is the [member d] "
+"property."
msgstr ""
-#: doc/classes/Plane.xml:162
-msgid "The [member normal]'s X component."
+#: doc/classes/Plane.xml:157
+msgid "The X component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:165
-msgid "The [member normal]'s Y component."
+#: doc/classes/Plane.xml:160
+msgid "The Y component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:168
-msgid "The [member normal]'s Z component."
+#: doc/classes/Plane.xml:163
+msgid "The Z component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:173
-msgid "A plane that extends in the Y and Z axes."
+#: doc/classes/Plane.xml:168
+msgid "A plane that extends in the Y and Z axes (normal vector points +X)."
msgstr ""
-#: doc/classes/Plane.xml:176
-msgid "A plane that extends in the X and Z axes."
+#: doc/classes/Plane.xml:171
+msgid "A plane that extends in the X and Z axes (normal vector points +Y)."
msgstr ""
-#: doc/classes/Plane.xml:179
-msgid "A plane that extends in the X and Y axes."
+#: doc/classes/Plane.xml:174
+msgid "A plane that extends in the X and Y axes (normal vector points +Z)."
msgstr ""
#: doc/classes/PlaneMesh.xml:4
@@ -38275,18 +39058,25 @@ msgstr ""
#: doc/classes/PrimitiveMesh.xml:16
msgid ""
-"Returns mesh arrays used to constitute surface of [Mesh]. Mesh arrays can be "
-"used with [ArrayMesh] to create new surfaces."
+"Returns mesh arrays used to constitute surface of [Mesh]. The result can be "
+"passed to [method ArrayMesh.add_surface_from_arrays] to create a new "
+"surface. For example:\n"
+"[codeblock]\n"
+"var c := CylinderMesh.new()\n"
+"var arr_mesh := ArrayMesh.new()\n"
+"arr_mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLES, c."
+"get_mesh_arrays())\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:22
+#: doc/classes/PrimitiveMesh.xml:27
msgid ""
"Overrides the [AABB] with one defined by user for use with frustum culling. "
"Especially useful to avoid unnexpected culling when using a shader to "
"offset vertices."
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:25
+#: doc/classes/PrimitiveMesh.xml:30
msgid ""
"If set, the order of the vertices in each triangle are reversed resulting in "
"the backside of the mesh being drawn.\n"
@@ -38294,7 +39084,7 @@ msgid ""
"[member BaseMaterial3D.cull_mode]."
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:29
+#: doc/classes/PrimitiveMesh.xml:34
msgid "The current [Material] of the primitive mesh."
msgstr ""
@@ -38725,11 +39515,17 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:260
msgid ""
+"Safer override for [member audio/output_latency] in the Web platform, to "
+"avoid audio issues especially on mobile devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:263
+msgid ""
"Setting to hardcode audio delay when playing video. Best to leave this "
"untouched unless you know what you are doing."
msgstr ""
-#: doc/classes/ProjectSettings.xml:263
+#: doc/classes/ProjectSettings.xml:266
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -38739,7 +39535,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:269
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -38749,27 +39545,27 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:269
+#: doc/classes/ProjectSettings.xml:272
msgid ""
"The default compression level for Zstandard. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
"speed. Decompression speed is mostly unaffected by the compression level."
msgstr ""
-#: doc/classes/ProjectSettings.xml:272
+#: doc/classes/ProjectSettings.xml:275
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:278
msgid ""
"Largest size limit (in power of 2) allowed when compressing using long-"
"distance matching with Zstandard. Higher values can result in better "
"compression, but will require more memory when compressing and decompressing."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:281
msgid ""
"If [code]true[/code], displays getters and setters in autocompletion results "
"in the script editor. This setting is meant to be used when porting old "
@@ -38777,74 +39573,55 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:281
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:284
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:287
+#: doc/classes/ProjectSettings.xml:294
msgid ""
"If [code]true[/code], enables specific GDScript warnings (see [code]debug/"
"gdscript/warnings/*[/code] settings). If [code]false[/code], disables all "
"GDScript warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
-msgid ""
-"If [code]true[/code], enables warnings when a function is declared with the "
-"same name as a constant."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:296
-msgid ""
-"If [code]true[/code], enables warnings when a function is declared with the "
-"same name as a variable. This will turn into an error in a future version "
-"when first-class functions become supported in GDScript."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:299
-msgid ""
-"If [code]true[/code], enables warnings when a function assigned to a "
-"variable may yield and return a function state instead of a value."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:302
+#: doc/classes/ProjectSettings.xml:300
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:303
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when dividing an integer by another "
"integer (the decimal part will be discarded)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when passing a floating-point value "
"to a function that expects an integer (it will be converted and lose "
"precision)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:314
+#: doc/classes/ProjectSettings.xml:312
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
@@ -38865,102 +39642,85 @@ msgid ""
"member variable)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:323
+#: doc/classes/ProjectSettings.xml:325
msgid ""
"If [code]true[/code], enables warnings when calling an expression that has "
"no effect on the surrounding code, such as writing [code]2 + 2[/code] as a "
"statement."
msgstr ""
-#: doc/classes/ProjectSettings.xml:326
+#: doc/classes/ProjectSettings.xml:328
msgid ""
"If [code]true[/code], enables warnings when calling a ternary expression "
"that has no effect on the surrounding code, such as writing [code]42 if "
"active else 0[/code] as a statement."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:331
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:334
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:335
+#: doc/classes/ProjectSettings.xml:337
msgid ""
"If [code]true[/code], enables warnings when assigning a variable using an "
"assignment operator like [code]+=[/code] if the variable wasn't previously "
"assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:338
+#: doc/classes/ProjectSettings.xml:340
msgid ""
"If [code]true[/code], enables warnings when unreachable code is detected "
"(such as after a [code]return[/code] statement that will always be executed)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:345
msgid ""
"If [code]true[/code], enables warnings when using an expression whose type "
"may not be compatible with the function parameter expected."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:348
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:347
+#: doc/classes/ProjectSettings.xml:351
msgid ""
"If [code]true[/code], enables warnings when calling a method whose presence "
"is not guaranteed at compile-time in the class."
msgstr ""
-#: doc/classes/ProjectSettings.xml:350
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], enables warnings when accessing a property whose "
"presence is not guaranteed at compile-time in the class."
msgstr ""
-#: doc/classes/ProjectSettings.xml:353
-msgid ""
-"If [code]true[/code], enables warnings when a function parameter is unused."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:356
-msgid ""
-"If [code]true[/code], enables warnings when a member variable is unused."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:363
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:362
+#: doc/classes/ProjectSettings.xml:366
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:365
-msgid ""
-"If [code]true[/code], enables warnings when a variable is declared with the "
-"same name as a function. This will turn into an error in a future version "
-"when first-class functions become supported in GDScript."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:368
+#: doc/classes/ProjectSettings.xml:369
msgid ""
"If [code]true[/code], enables warnings when assigning the result of a "
"function that returns [code]void[/code] to a variable."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:374
+#: doc/classes/ProjectSettings.xml:375
msgid ""
"Maximum number of frames per second allowed. The actual number of frames per "
"second may still be below this value if the game is lagging.\n"
@@ -38971,143 +39731,143 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:379
+#: doc/classes/ProjectSettings.xml:380
msgid "Maximum call stack allowed for debugging GDScript."
msgstr ""
-#: doc/classes/ProjectSettings.xml:382
+#: doc/classes/ProjectSettings.xml:383
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:385
+#: doc/classes/ProjectSettings.xml:386
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:388
+#: doc/classes/ProjectSettings.xml:389
msgid ""
"Print more information to standard output when running. It displays "
"information such as memory leaks, which scenes and resources are being "
"loaded, etc."
msgstr ""
-#: doc/classes/ProjectSettings.xml:391
+#: doc/classes/ProjectSettings.xml:392
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:394
+#: doc/classes/ProjectSettings.xml:395
msgid ""
"Color of the contact points between collision shapes, visible when \"Visible "
"Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:397
+#: doc/classes/ProjectSettings.xml:398
msgid ""
"Maximum number of contact points between collision shapes to display when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:400
+#: doc/classes/ProjectSettings.xml:401
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
msgid "Hotspot for the custom mouse cursor image."
msgstr ""
-#: doc/classes/ProjectSettings.xml:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
msgid ""
"If [code]true[/code], allows HiDPI display on Windows and macOS. This "
"setting has no effect on desktop Linux, as DPI-awareness fallbacks are not "
"supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"If [code]true[/code], keeps the screen on (even in case of inactivity), so "
"the screensaver does not take over. Works on desktop and mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
msgid "Default orientation on mobile devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"If [code]true[/code], the home indicator is hidden automatically. This only "
"affects iOS devices without a physical home button."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid "Force the window to be always on top."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid "Force the window to be borderless."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Sets the window to full screen when it starts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid ""
"Sets the game's main viewport height. On desktop platforms, this is the "
"default window size. Stretch mode settings also use this as a reference when "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Allows the window to be resizable by default."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"Sets the game's main viewport width. On desktop platforms, this is the "
"default window size. Stretch mode settings also use this as a reference when "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:454
+#: doc/classes/ProjectSettings.xml:455
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:457
+#: doc/classes/ProjectSettings.xml:458
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -39116,7 +39876,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:460
+#: doc/classes/ProjectSettings.xml:461
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -39127,13 +39887,13 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:464
+#: doc/classes/ProjectSettings.xml:465
msgid ""
"Search path for project-specific script templates. Script templates will be "
"search both in the editor-specific path and in this project-specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:467
+#: doc/classes/ProjectSettings.xml:468
msgid ""
"Text-based file extensions to include in the script editor's \"Find in Files"
"\" feature. You can add e.g. [code]tscn[/code] if you wish to also parse "
@@ -39141,49 +39901,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:470
+#: doc/classes/ProjectSettings.xml:471
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:473
+#: doc/classes/ProjectSettings.xml:474
msgid ""
-"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
+"If [code]true[/code], swaps Cancel and OK buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:478
+#: doc/classes/ProjectSettings.xml:479
msgid ""
"Path to a custom [Theme] resource file to use for the project ([code]theme[/"
"code] or generic [code]tres[/code]/[code]res[/code] extension)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:484
+#: doc/classes/ProjectSettings.xml:485
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:487
+#: doc/classes/ProjectSettings.xml:488
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:490
+#: doc/classes/ProjectSettings.xml:491
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:493
+#: doc/classes/ProjectSettings.xml:494
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:496
+#: doc/classes/ProjectSettings.xml:497
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -39192,7 +39952,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"Default [InputEventAction] to discard a modal or pending input.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39200,7 +39960,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:504
+#: doc/classes/ProjectSettings.xml:505
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39208,7 +39968,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:508
+#: doc/classes/ProjectSettings.xml:509
msgid ""
"Default [InputEventAction] to go to the end position of a [Control] (e.g. "
"last item in an [ItemList] or a [Tree]), matching the behavior of [constant "
@@ -39218,7 +39978,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:512
+#: doc/classes/ProjectSettings.xml:513
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -39227,7 +39987,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:516
+#: doc/classes/ProjectSettings.xml:517
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -39236,7 +39996,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:520
+#: doc/classes/ProjectSettings.xml:521
msgid ""
"Default [InputEventAction] to go to the start position of a [Control] (e.g. "
"first item in an [ItemList] or a [Tree]), matching the behavior of [constant "
@@ -39246,7 +40006,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39254,7 +40014,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:528
+#: doc/classes/ProjectSettings.xml:529
msgid ""
"Default [InputEventAction] to go down a page in a [Control] (e.g. in an "
"[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEDOWN] on "
@@ -39264,7 +40024,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Default [InputEventAction] to go up a page in a [Control] (e.g. in an "
"[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEUP] on "
@@ -39274,7 +40034,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:536
+#: doc/classes/ProjectSettings.xml:537
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39282,7 +40042,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:540
+#: doc/classes/ProjectSettings.xml:541
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -39291,7 +40051,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39299,371 +40059,371 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:548
+#: doc/classes/ProjectSettings.xml:549
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:554
+#: doc/classes/ProjectSettings.xml:555
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:557
+#: doc/classes/ProjectSettings.xml:558
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:560
+#: doc/classes/ProjectSettings.xml:561
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:566
+#: doc/classes/ProjectSettings.xml:567
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:569
+#: doc/classes/ProjectSettings.xml:570
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:572
+#: doc/classes/ProjectSettings.xml:573
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:578
+#: doc/classes/ProjectSettings.xml:579
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:581
+#: doc/classes/ProjectSettings.xml:582
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:584
+#: doc/classes/ProjectSettings.xml:585
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:590
+#: doc/classes/ProjectSettings.xml:591
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:593
+#: doc/classes/ProjectSettings.xml:594
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:596
+#: doc/classes/ProjectSettings.xml:597
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:602
+#: doc/classes/ProjectSettings.xml:603
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid ""
"The locale to fall back to if a translation isn't available in a given "
"language. If left empty, [code]en[/code] (English) will be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "If [code]true[/code], logs all output to files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:806
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:809
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:812
msgid ""
"Godot uses a message queue to defer some function calls. If you run out of "
"space on it (you will see an error), you can increase the size here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:815
msgid ""
"This is used by servers when used in multi-threading mode (servers and "
"visual). RIDs are preallocated to avoid stalling the server requesting them "
@@ -39671,56 +40431,56 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:829
+#: doc/classes/ProjectSettings.xml:832
msgid ""
"Maximum amount of characters allowed to send as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:832
+#: doc/classes/ProjectSettings.xml:835
msgid ""
"Maximum number of errors allowed to be sent from the debugger. Over this "
"value, content is dropped. This helps not to stall the debugger connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:835
+#: doc/classes/ProjectSettings.xml:838
msgid ""
"Maximum amount of messages in the debugger queue. Over this value, content "
"is dropped. This helps to limit the debugger memory usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:838
+#: doc/classes/ProjectSettings.xml:841
msgid ""
"Maximum number of warnings allowed to be sent from the debugger. Over this "
"value, content is dropped. This helps not to stall the debugger connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:841
+#: doc/classes/ProjectSettings.xml:844
msgid ""
"Default size of packet peer stream for deserializing Godot data. Over this "
"size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:844
+#: doc/classes/ProjectSettings.xml:847
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:847
+#: doc/classes/ProjectSettings.xml:850
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:850
+#: doc/classes/ProjectSettings.xml:853
msgid ""
"Amount of read ahead used by remote filesystem. Higher values decrease the "
"effects of latency at the cost of higher bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:853
+#: doc/classes/ProjectSettings.xml:856
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:856
+#: doc/classes/ProjectSettings.xml:859
msgid ""
"The CA certificates bundle to use for SSL connections. If this is set to a "
"non-empty value, this will [i]override[/i] Godot's default [url=https://"
@@ -39730,31 +40490,31 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:863
msgid ""
"When creating node names automatically, set the type of casing in this "
"project. This is mostly an editor setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:866
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:869
msgid "Size of the hash table used for the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:872
msgid "Cell size used for the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:875
msgid "The default angular damp in 2D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:878
msgid ""
"The default gravity strength in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39766,7 +40526,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:883
+#: doc/classes/ProjectSettings.xml:886
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39778,38 +40538,38 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:891
+#: doc/classes/ProjectSettings.xml:894
msgid "The default linear damp in 2D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:894
+#: doc/classes/ProjectSettings.xml:897
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:897
+#: doc/classes/ProjectSettings.xml:900
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics2D\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:901
+#: doc/classes/ProjectSettings.xml:904
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant PhysicsServer2D."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:904
+#: doc/classes/ProjectSettings.xml:907
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant PhysicsServer2D."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:907
+#: doc/classes/ProjectSettings.xml:910
msgid ""
"Sets whether physics is run on the main thread or a separate one. Running "
"the server on a thread increases performance, but restricts API access to "
@@ -39819,23 +40579,23 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:914
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant PhysicsServer2D.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:917
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody3D] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:920
msgid "The default angular damp in 3D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:923
msgid ""
"The default gravity strength in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39847,7 +40607,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:928
+#: doc/classes/ProjectSettings.xml:931
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39859,11 +40619,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:936
+#: doc/classes/ProjectSettings.xml:939
msgid "The default linear damp in 3D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:939
+#: doc/classes/ProjectSettings.xml:942
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -39871,11 +40631,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:943
+#: doc/classes/ProjectSettings.xml:946
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:949
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -39884,7 +40644,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:950
+#: doc/classes/ProjectSettings.xml:953
msgid ""
"Fix to improve physics jitter, specially on monitors where refresh rate is "
"different than the physics FPS.\n"
@@ -39892,7 +40652,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:954
+#: doc/classes/ProjectSettings.xml:957
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -39900,7 +40660,7 @@ msgid ""
"programmatically, use [method RenderingServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:957
+#: doc/classes/ProjectSettings.xml:960
msgid ""
"[Environment] that will be used as a fallback environment in case a scene "
"does not specify its own environment. The default environment is loaded in "
@@ -39910,14 +40670,14 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:986
+#: doc/classes/ProjectSettings.xml:989
msgid ""
"Max amount of elements renderable in a frame. If more than this are visible "
"per frame, they will be dropped. Keep in mind elements refer to mesh "
"surfaces and not meshes themselves."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:994
msgid ""
"Some NVIDIA GPU drivers have a bug which produces flickering issues for the "
"[code]draw_rect[/code] method, especially as used in [TileMap]. Refer to "
@@ -39929,73 +40689,73 @@ msgid ""
"using the Vulkan backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:995
+#: doc/classes/ProjectSettings.xml:998
msgid ""
"If [code]true[/code], forces snapping of polygons to pixels in 2D rendering. "
"May help in some pixel art styles."
msgstr ""
-#: doc/classes/ProjectSettings.xml:998
+#: doc/classes/ProjectSettings.xml:1001
msgid ""
"Sets the quality of the depth of field effect. Higher quality takes more "
"samples, which is slower but looks smoother."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1001
+#: doc/classes/ProjectSettings.xml:1004
msgid ""
"Sets the depth of field shape. Can be Box, Hexagon, or Circle. Box is the "
"fastest. Circle is the most realistic, but also the most expensive to "
"compute."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1004
+#: doc/classes/ProjectSettings.xml:1007
msgid ""
"If [code]true[/code], jitters DOF samples to make effect slightly blurrier "
"and hide lines created from low sample rates. This can result in a slightly "
"grainy appearance when used with a low number of samples."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1010
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1010
+#: doc/classes/ProjectSettings.xml:1013
msgid ""
"If [code]true[/code], performs a previous depth pass before rendering "
"materials. This increases performance in scenes with high overdraw, when "
"complex materials and lighting are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1016
msgid ""
"The directional shadow's size in pixels. Higher values will result in "
"sharper shadows, at the cost of performance. The value will be rounded up to "
"the nearest power of 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1016
+#: doc/classes/ProjectSettings.xml:1019
msgid ""
"Lower-end override for [member rendering/quality/directional_shadow/size] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1019
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"Quality setting for shadows cast by [DirectionalLight3D]s. Higher quality "
"settings use more samples when reading from shadow maps and are thus slower. "
"Low quality settings may result in shadows looking grainy."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1022
+#: doc/classes/ProjectSettings.xml:1025
msgid ""
"Lower-end override for [member rendering/quality/directional_shadow/"
"soft_shadow_quality] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1028
msgid ""
"The video driver to use (\"GLES2\" or \"Vulkan\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -40005,32 +40765,32 @@ msgid ""
"get_current_video_driver[/code] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1031
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"If [code]true[/code], take additional samples when rendering objects "
"affected by a [GIProbe] to reduce artifacts from only sampling in one "
"direction."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1034
+#: doc/classes/ProjectSettings.xml:1037
msgid ""
"Sets the number of cone samples taken when rendering objects affected by "
"[GIProbe]s."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1037
+#: doc/classes/ProjectSettings.xml:1040
msgid ""
"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."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1040
+#: doc/classes/ProjectSettings.xml:1043
msgid ""
"Lower-end override for [member rendering/quality/glow/upscale_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1043
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Strategy used for framebuffer allocation. The simpler it is, the less "
"resources it uses (but the less features it supports). If set to \"2D "
@@ -40040,41 +40800,41 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1046
+#: doc/classes/ProjectSettings.xml:1049
msgid ""
"Lower-end override for [member rendering/quality/intended_usage/"
"framebuffer_allocation] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1052
msgid ""
"Number of cubemaps to store in the reflection atlas. The number of "
"[ReflectionProbe]s in a scene will be limited by this amount. A higher "
"number requires more VRAM."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1052
+#: doc/classes/ProjectSettings.xml:1055
msgid ""
"Size of cubemap faces for [ReflectionProbe]s. A higher number requires more "
"VRAM and may make reflection probe updating slower."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1055
+#: doc/classes/ProjectSettings.xml:1058
msgid ""
"Lower-end override for [member rendering/quality/reflection_atlas/"
"reflection_size] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1058
+#: doc/classes/ProjectSettings.xml:1061
msgid ""
"Use a higher quality variant of the fast filtering algorithm. Significantly "
"slower than using default quality, but results in smoother reflections. "
"Should only be used when the scene is especially detailed."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1061
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Sets the number of samples to take when using importance sampling for [Sky]s "
"and [ReflectionProbe]s. A higher value will result in smoother, higher "
@@ -40084,19 +40844,19 @@ msgid ""
"environments with a high level of detail."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1064
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Lower-end override for [member rendering/quality/reflections/ggx_samples] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1067
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Limits the number of layers to use in radiance maps when using importance "
"sampling. A lower number will be slightly faster and take up less VRAM."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1070
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise and "
@@ -40105,14 +40865,14 @@ msgid ""
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1073
+#: doc/classes/ProjectSettings.xml:1076
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"texture_array_reflections] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1079
msgid ""
"Sets the number of MSAA samples to use (as a power of two). MSAA is used to "
"reduce aliasing around the edges of polygons. A higher MSAA value results in "
@@ -40120,7 +40880,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1080
+#: doc/classes/ProjectSettings.xml:1083
msgid ""
"Sets the screen-space antialiasing mode for the default screen [Viewport]. "
"Screen-space antialiasing works by selectively blurring edges in a post-"
@@ -40129,133 +40889,117 @@ msgid ""
"MSAA and will smooth out specular aliasing, but tend to make scenes appear "
"blurry.\n"
"Another way to combat specular aliasing is to enable [member rendering/"
-"quality/screen_filters/screen_space_roughness_limiter]."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:1084
-msgid ""
-"Enables the screen-space roughness limiter which increases material "
-"roughness in areas with a high normal frequency (i.e. when normals change a "
-"lot from pixel to pixel). This helps to reduce the amount of specular "
-"aliasing in a scene. Specular aliasing looks like random bright pixels that "
-"occur in reflections."
+"quality/screen_filters/screen_space_roughness_limiter_enabled]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1087
-msgid ""
-"Curves the amount of the roughness limited effect. A higher value limits the "
-"effect to very sharply curved surfaces, while a lower threshold extends the "
-"effect to smoother surfaces."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:1090
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"Sets the quality for rough screen-space reflections. Turning off will make "
"all screen space reflections sharp, while higher values make rough "
"reflections look better."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1093
+#: doc/classes/ProjectSettings.xml:1096
msgid ""
"If [code]true[/code], uses faster but lower-quality Blinn model to generate "
"blurred reflections instead of the GGX model."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1099
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_blinn_over_ggx] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1102
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1102
+#: doc/classes/ProjectSettings.xml:1105
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_lambert_over_burley] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1105
+#: doc/classes/ProjectSettings.xml:1108
msgid ""
"If [code]true[/code], forces vertex shading for all rendering. This can "
"increase performance a lot, but also reduces quality immensely. Can be used "
"to optimize performance on low-end mobile devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1108
+#: doc/classes/ProjectSettings.xml:1111
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_vertex_shading] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1111 doc/classes/ProjectSettings.xml:1114
-#: doc/classes/ProjectSettings.xml:1117 doc/classes/ProjectSettings.xml:1120
+#: doc/classes/ProjectSettings.xml:1114 doc/classes/ProjectSettings.xml:1117
+#: doc/classes/ProjectSettings.xml:1120 doc/classes/ProjectSettings.xml:1123
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1123
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1126
+#: doc/classes/ProjectSettings.xml:1129
msgid ""
"Lower-end override for [member rendering/quality/shadow_atlas/size] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1132
msgid ""
"Quality setting for shadows cast by [OmniLight3D]s and [SpotLight3D]s. "
"Higher quality settings use more samples when reading from shadow maps and "
"are thus slower. Low quality settings may result in shadows looking grainy."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1132
+#: doc/classes/ProjectSettings.xml:1135
msgid ""
"Lower-end override for [member rendering/quality/shadows/"
"soft_shadow_quality] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1135
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"If [code]true[/code], screen-space ambient occlusion will be rendered at "
"half size and then upscaled before being added to the scene. This is "
"significantly faster but may miss small details."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1138
+#: doc/classes/ProjectSettings.xml:1141
msgid ""
"Sets the quality of the screen-space ambient occlusion effect. Higher values "
"take more samples and so will result in better quality, at the cost of "
"performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1144
msgid ""
"Scales the depth over which the subsurface scattering effect is applied. A "
"high value may allow light to scatter into a part of the mesh or another "
"mesh that is close in screen space but far in depth."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1144
+#: doc/classes/ProjectSettings.xml:1147
msgid ""
"Sets the quality of the subsurface scattering effect. Higher values are "
"slower but look nicer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1147
+#: doc/classes/ProjectSettings.xml:1150
msgid ""
"Scales the distance over which samples are taken for subsurface scattering "
"effect. Changing this does not impact performance, but higher values will "
@@ -40263,7 +41007,7 @@ msgid ""
"out. A lower value results in a smaller spread of scattered light."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1150
+#: doc/classes/ProjectSettings.xml:1153
msgid ""
"Sets the maximum number of samples to take when using anisotropic filtering "
"on textures (as a power of two). A higher sample count will result in "
@@ -40272,7 +41016,7 @@ msgid ""
"materials where it is enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1153
+#: doc/classes/ProjectSettings.xml:1156
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -40281,49 +41025,49 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Thread model for rendering. Rendering on a thread can vastly improve "
"performance, but synchronizing to the main thread can cause a bit more "
"jitter."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
"only supported on desktop platforms, and only when using the Vulkan renderer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
"doesn't support alpha channels in textures."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
"compression algorithm is only supported when using the Vulkan renderer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1175
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
"compression algorithm is only supported on iOS."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
"supported on desktop platforms and consoles."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1182
+#: doc/classes/ProjectSettings.xml:1189
msgid "Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses."
msgstr ""
@@ -40353,13 +41097,14 @@ msgstr ""
#: doc/classes/Quat.xml:7
msgid ""
-"A unit quaternion used for representing 3D rotations.\n"
-"It is similar to [Basis], which implements matrix representation of "
-"rotations, and can be parametrized using both an axis-angle pair or Euler "
-"angles. But due to its compactness and the way it is stored in memory, "
-"certain operations (obtaining axis-angle and performing SLERP, in "
-"particular) are more efficient and robust against floating-point errors.\n"
-"Quaternions need to be (re)normalized."
+"A unit quaternion used for representing 3D rotations. Quaternions need to be "
+"normalized to be used for rotation.\n"
+"It is similar to Basis, which implements matrix representation of rotations, "
+"and can be parametrized using both an axis-angle pair or Euler angles. Basis "
+"stores rotation, scale, and shearing, while Quat only stores rotation.\n"
+"Due to its compactness and the way it is stored in memory, certain "
+"operations (obtaining axis-angle and performing SLERP, in particular) are "
+"more efficient and robust against floating-point errors."
msgstr ""
#: doc/classes/Quat.xml:12
@@ -40369,29 +41114,31 @@ msgid ""
msgstr ""
#: doc/classes/Quat.xml:21
-msgid "Returns the rotation matrix corresponding to the given quaternion."
+msgid "Constructs a quaternion from the given [Basis]."
msgstr ""
#: doc/classes/Quat.xml:30
msgid ""
-"Returns a quaternion that will perform a rotation specified by Euler angles "
-"(in the YXZ convention: first Z, then X, and Y last), given in the vector "
-"format as (X angle, Y angle, Z angle)."
+"Constructs a quaternion that will perform a rotation specified by Euler "
+"angles (in the YXZ convention: when decomposing, first Z, then X, and Y "
+"last), given in the vector format as (X angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:41
msgid ""
-"Returns a quaternion that will rotate around the given axis by the specified "
-"angle. The axis must be a normalized vector."
+"Constructs a quaternion that will rotate around the given axis by the "
+"specified angle. The axis must be a normalized vector."
msgstr ""
#: doc/classes/Quat.xml:56
-msgid "Returns a quaternion defined by these values."
+msgid "Constructs a quaternion defined by the given values."
msgstr ""
#: doc/classes/Quat.xml:71
msgid ""
-"Performs a cubic spherical-linear interpolation with another quaternion."
+"Performs a cubic spherical interpolation between quaternions [code]preA[/"
+"code], this vector, [code]b[/code], and [code]postB[/code], by the given "
+"amount [code]t[/code]."
msgstr ""
#: doc/classes/Quat.xml:80
@@ -40400,10 +41147,10 @@ msgstr ""
#: doc/classes/Quat.xml:87
msgid ""
-"Returns Euler angles (in the YXZ convention: first Z, then X, and Y last) "
-"corresponding to the rotation represented by the unit quaternion. Returned "
-"vector contains the rotation angles in the format (X angle, Y angle, Z "
-"angle)."
+"Returns Euler angles (in the YXZ convention: when decomposing, first Z, then "
+"X, and Y last) corresponding to the rotation represented by the unit "
+"quaternion. Returned vector contains the rotation angles in the format (X "
+"angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:94
@@ -40442,44 +41189,57 @@ msgstr ""
#: doc/classes/Quat.xml:151
msgid ""
"Sets the quaternion to a rotation specified by Euler angles (in the YXZ "
-"convention: first Z, then X, and Y last), given in the vector format as (X "
-"angle, Y angle, Z angle)."
+"convention: when decomposing, first Z, then X, and Y last), given in the "
+"vector format as (X angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:162
-msgid "Performs a spherical-linear interpolation with another quaternion."
+msgid ""
+"Returns the result of the spherical linear interpolation between this "
+"quaternion and [code]to[/code] by amount [code]weight[/code].\n"
+"[b]Note:[/b] Both quaternions must be normalized."
msgstr ""
-#: doc/classes/Quat.xml:173
+#: doc/classes/Quat.xml:174
msgid ""
-"Performs a spherical-linear interpolation with another quaterion without "
-"checking if the rotation path is not bigger than 90°."
+"Returns the result of the spherical linear interpolation between this "
+"quaternion and [code]to[/code] by amount [code]weight[/code], but without "
+"checking if the rotation path is not bigger than 90 degrees."
msgstr ""
-#: doc/classes/Quat.xml:182
-msgid "Transforms the vector [code]v[/code] by this quaternion."
+#: doc/classes/Quat.xml:183
+msgid "Returns a vector transformed (multiplied) by this quaternion."
msgstr ""
-#: doc/classes/Quat.xml:188
-msgid "W component of the quaternion."
+#: doc/classes/Quat.xml:189
+msgid ""
+"W component of the quaternion (real part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:191
-msgid "X component of the quaternion."
+#: doc/classes/Quat.xml:193
+msgid ""
+"X component of the quaternion (imaginary [code]i[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:194
-msgid "Y component of the quaternion."
+#: doc/classes/Quat.xml:197
+msgid ""
+"Y component of the quaternion (imaginary [code]j[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:197
-msgid "Z component of the quaternion."
+#: doc/classes/Quat.xml:201
+msgid ""
+"Z component of the quaternion (imaginary [code]k[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:202
+#: doc/classes/Quat.xml:207
msgid ""
-"The identity rotation. Equivalent to an identity matrix. If a vector is "
-"transformed by an identity quaternion, it will not change."
+"The identity quaternion, representing no rotation. Equivalent to an identity "
+"[Basis] matrix. If a vector is transformed by an identity quaternion, it "
+"will not change."
msgstr ""
#: doc/classes/RandomNumberGenerator.xml:4
@@ -40682,7 +41442,8 @@ msgid ""
"collision information immediately instead of waiting for the next "
"[code]_physics_process[/code] call, for example if the ray or its parent has "
"changed state.\n"
-"[b]Note:[/b] [code]enabled == true[/code] is not required for this to work."
+"[b]Note:[/b] [member enabled] does not need to be [code]true[/code] for this "
+"to work."
msgstr ""
#: doc/classes/RayCast2D.xml:54 doc/classes/RayCast3D.xml:55
@@ -40788,7 +41549,8 @@ msgid ""
"Use this method to update the collision information immediately instead of "
"waiting for the next [code]_physics_process[/code] call, for example if the "
"ray or its parent has changed state.\n"
-"[b]Note:[/b] [code]enabled == true[/code] is not required for this to work."
+"[b]Note:[/b] [member enabled] does not need to be [code]true[/code] for this "
+"to work."
msgstr ""
#: doc/classes/RayCast3D.xml:71
@@ -40946,14 +41708,6 @@ msgstr ""
msgid "Returns a larger [Rect2] that contains this [Rect2] and [code]b[/code]."
msgstr ""
-#: doc/classes/Rect2.xml:174 doc/classes/Rect2i.xml:163
-msgid "Ending corner."
-msgstr ""
-
-#: doc/classes/Rect2.xml:177 doc/classes/Rect2i.xml:166
-msgid "Position (starting corner)."
-msgstr ""
-
#: doc/classes/Rect2i.xml:4
msgid "2D axis-aligned bounding box using integer coordinates."
msgstr ""
@@ -41066,22 +41820,22 @@ msgstr ""
msgid ""
"Base class for any object that keeps a reference count. [Resource] and many "
"other helper objects inherit this class.\n"
-"References keep an internal reference counter so that they are automatically "
-"released when no longer in use, and only then. References therefore do not "
-"need to be freed manually with [method Object.free].\n"
+"Unlike [Object]s, References keep an internal reference counter so that they "
+"are automatically released when no longer in use, and only then. References "
+"therefore do not need to be freed manually with [method Object.free].\n"
"In the vast majority of use cases, instantiating and using [Reference]-"
"derived types is all you need to do. The methods provided in this class are "
"only for advanced users, and can cause issues if misused."
msgstr ""
-#: doc/classes/Reference.xml:18
+#: doc/classes/Reference.xml:19
msgid ""
"Initializes the internal reference counter. Use this only if you really know "
"what you are doing.\n"
"Returns whether the initialization was successful."
msgstr ""
-#: doc/classes/Reference.xml:26
+#: doc/classes/Reference.xml:27
msgid ""
"Increments the internal reference counter. Use this only if you really know "
"what you are doing.\n"
@@ -41089,7 +41843,7 @@ msgid ""
"code] otherwise."
msgstr ""
-#: doc/classes/Reference.xml:34
+#: doc/classes/Reference.xml:35
msgid ""
"Decrements the internal reference counter. Use this only if you really know "
"what you are doing.\n"
@@ -41138,14 +41892,14 @@ msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/reflection_probes.html"
msgstr ""
-#: doc/classes/ReflectionProbe.xml:17
+#: doc/classes/ReflectionProbe.xml:23
msgid ""
"If [code]true[/code], enables box projection. This makes reflections look "
"more correct in rectangle-shaped rooms by offsetting the reflection center "
"depending on the camera's location."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:20
+#: doc/classes/ReflectionProbe.xml:26
msgid ""
"Sets the cull mask which determines what objects are drawn by this probe. "
"Every [VisualInstance3D] with a layer included in this cull mask will be "
@@ -41154,78 +41908,56 @@ msgid ""
"rendering cost."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:23
+#: doc/classes/ReflectionProbe.xml:29
msgid ""
"If [code]true[/code], computes shadows in the reflection probe. This makes "
"the reflection probe slower to render; you may want to disable this if using "
"the [constant UPDATE_ALWAYS] [member update_mode]."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:26
+#: doc/classes/ReflectionProbe.xml:32
msgid ""
"The size of the reflection probe. The larger the extents the more space "
"covered by the probe which will lower the perceived resolution. It is best "
"to keep the extents only as large as you need them."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:29
+#: doc/classes/ReflectionProbe.xml:35
msgid ""
"Defines the reflection intensity. Intensity modulates the strength of the "
"reflection."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:32
-msgid ""
-"Sets the ambient light color to be used when this probe is set to [member "
-"interior_enable]."
-msgstr ""
-
-#: doc/classes/ReflectionProbe.xml:35
-msgid ""
-"Sets the contribution value for how much the reflection affects the ambient "
-"light for this reflection probe when set to [member interior_enable]. Useful "
-"so that ambient light matches the color of the room."
-msgstr ""
-
#: doc/classes/ReflectionProbe.xml:38
-msgid ""
-"Sets the energy multiplier for this reflection probe's ambient light "
-"contribution when set to [member interior_enable]."
+msgid "If [code]true[/code], reflections will ignore sky contribution."
msgstr ""
#: doc/classes/ReflectionProbe.xml:41
msgid ""
-"If [code]true[/code], reflections will ignore sky contribution. Ambient "
-"lighting is then controlled by the [code]interior_ambient_*[/code] "
-"properties."
-msgstr ""
-
-#: doc/classes/ReflectionProbe.xml:44
-msgid ""
"Sets the max distance away from the probe an object can be before it is "
"culled."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:47
+#: doc/classes/ReflectionProbe.xml:44
msgid ""
"Sets the origin offset to be used when this reflection probe is in box "
"project mode."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:50
+#: doc/classes/ReflectionProbe.xml:47
msgid ""
"Sets how frequently the probe is updated. Can be [constant UPDATE_ONCE] or "
"[constant UPDATE_ALWAYS]."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:55
+#: doc/classes/ReflectionProbe.xml:52
msgid ""
"Update the probe once on the next frame. The corresponding radiance map will "
"be generated over the following six frames. This is slower to update than "
"[constant UPDATE_ALWAYS] but can result in higher quality reflections."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:58
+#: doc/classes/ReflectionProbe.xml:55
msgid ""
"Update the probe every frame. This is needed when you want to capture "
"dynamic objects. However, it results in an increased render time. Use "
@@ -41255,10 +41987,10 @@ msgid ""
"read by RegEx as [code]\\d+[/code]. Similarly, [code]compile(\"\\\"(?:\\\\\\"
"\\.|[^\\\"])*\\\"\")[/code] would be read as [code]\"(?:\\\\.|[^\"])*\"[/"
"code].\n"
-"Using [method search] you can find the pattern within the given text. If a "
+"Using [method search], you can find the pattern within the given text. If a "
"pattern is found, [RegExMatch] is returned and you can retrieve details of "
-"the results using functions such as [method RegExMatch.get_string] and "
-"[method RegExMatch.get_start].\n"
+"the results using methods such as [method RegExMatch.get_string] and [method "
+"RegExMatch.get_start].\n"
"[codeblock]\n"
"var regex = RegEx.new()\n"
"regex.compile(\"\\\\w-(\\\\d+)\")\n"
@@ -41267,7 +41999,7 @@ msgid ""
" print(result.get_string()) # Would print n-0123\n"
"[/codeblock]\n"
"The results of capturing groups [code]()[/code] can be retrieved by passing "
-"the group number to the various functions in [RegExMatch]. Group 0 is the "
+"the group number to the various methods in [RegExMatch]. Group 0 is the "
"default and will always refer to the entire pattern. In the above example, "
"calling [code]result.get_string(1)[/code] would give you [code]0123[/code].\n"
"This version of RegEx also supports named capturing groups, and the names "
@@ -41288,6 +42020,15 @@ msgid ""
" print(result.get_string(\"digit\"))\n"
"# Would print 01 03 0 3f 42\n"
"[/codeblock]\n"
+"[b]Example of splitting a string using a RegEx:[/b]\n"
+"[codeblock]\n"
+"var regex = RegEx.new()\n"
+"regex.compile(\"\\\\S+\") # Negated whitespace character class.\n"
+"var results = []\n"
+"for match in regex.search_all(\"One Two \\n\\tThree\"):\n"
+" results.push_back(match.get_string())\n"
+"# The `results` array now contains \"One\", \"Two\", \"Three\".\n"
+"[/codeblock]\n"
"[b]Note:[/b] Godot's regex implementation is based on the [url=https://www."
"pcre.org/]PCRE2[/url] library. You can view the full pattern reference "
"[url=https://www.pcre.org/current/doc/html/pcre2pattern.html]here[/url].\n"
@@ -41295,38 +42036,38 @@ msgid ""
"regular expressions online."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:47
+#: modules/regex/doc_classes/RegEx.xml:56
msgid ""
"This method resets the state of the object, as if it was freshly created. "
"Namely, it unassigns the regular expression of this object."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:56
+#: modules/regex/doc_classes/RegEx.xml:65
msgid ""
"Compiles and assign the search pattern to use. Returns [constant OK] if the "
"compilation is successful. If an error is encountered, details are printed "
"to standard output and an error is returned."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:63
+#: modules/regex/doc_classes/RegEx.xml:72
msgid "Returns the number of capturing groups in compiled pattern."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:70
+#: modules/regex/doc_classes/RegEx.xml:79
msgid ""
"Returns an array of names of named capturing groups in the compiled pattern. "
"They are ordered by appearance."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:77
+#: modules/regex/doc_classes/RegEx.xml:86
msgid "Returns the original search pattern that was compiled."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:84
+#: modules/regex/doc_classes/RegEx.xml:93
msgid "Returns whether this object has a valid search pattern assigned."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:97
+#: modules/regex/doc_classes/RegEx.xml:106
msgid ""
"Searches the text for the compiled pattern. Returns a [RegExMatch] container "
"of the first matching result if found, otherwise [code]null[/code]. The "
@@ -41334,7 +42075,7 @@ msgid ""
"and end anchor would be."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:110
+#: modules/regex/doc_classes/RegEx.xml:119
msgid ""
"Searches the text for the compiled pattern. Returns an array of [RegExMatch] "
"containers for each non-overlapping result. If no results were found, an "
@@ -41342,7 +42083,7 @@ msgid ""
"specified without modifying where the start and end anchor would be."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:127
+#: modules/regex/doc_classes/RegEx.xml:136
msgid ""
"Searches the text for the compiled pattern and replaces it with the "
"specified string. Escapes and backreferences such as [code]$1[/code] and "
@@ -42069,7 +42810,7 @@ msgid ""
msgstr ""
#: doc/classes/RenderingServer.xml:1222 doc/classes/RenderingServer.xml:1250
-#: doc/classes/RenderingServer.xml:1527
+#: doc/classes/RenderingServer.xml:1537
msgid "Not implemented in Godot 3.x."
msgstr ""
@@ -42216,30 +42957,30 @@ msgid ""
"OmniLight3D.omni_shadow_mode]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1481
+#: doc/classes/RenderingServer.xml:1491
msgid ""
"Sets the color of the light. Equivalent to [member Light3D.light_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1492
+#: doc/classes/RenderingServer.xml:1502
msgid ""
"Sets the cull mask for this Light3D. Lights only affect objects in the "
"selected layers. Equivalent to [member Light3D.light_cull_mask]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1503
+#: doc/classes/RenderingServer.xml:1513
msgid ""
"If [code]true[/code], light will subtract light instead of adding light. "
"Equivalent to [member Light3D.light_negative]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1516
+#: doc/classes/RenderingServer.xml:1526
msgid ""
"Sets the specified light parameter. See [enum LightParam] for options. "
"Equivalent to [method Light3D.set_param]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1538
+#: doc/classes/RenderingServer.xml:1548
msgid ""
"If [code]true[/code], reverses the backface culling of the mesh. This can be "
"useful when you have a flat mesh that has a light behind it. If you need to "
@@ -42248,29 +42989,25 @@ msgid ""
"to [member Light3D.shadow_reverse_cull_face]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1549
+#: doc/classes/RenderingServer.xml:1559
msgid ""
"If [code]true[/code], light will cast shadows. Equivalent to [member Light3D."
"shadow_enabled]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1560
+#: doc/classes/RenderingServer.xml:1570
msgid ""
"Sets the color of the shadow cast by the light. Equivalent to [member "
"Light3D.shadow_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1571
-msgid "Sets whether GI probes capture light information from this light."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:1584
+#: doc/classes/RenderingServer.xml:1583
msgid ""
"Returns a mesh of a sphere with the given amount of horizontal and vertical "
"subdivisions."
msgstr ""
-#: doc/classes/RenderingServer.xml:1591
+#: doc/classes/RenderingServer.xml:1590
msgid ""
"Creates an empty material and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42279,31 +43016,31 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:1603
+#: doc/classes/RenderingServer.xml:1602
msgid "Returns the value of a certain material's parameter."
msgstr ""
-#: doc/classes/RenderingServer.xml:1614
+#: doc/classes/RenderingServer.xml:1613
msgid "Sets an object's next material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1627
+#: doc/classes/RenderingServer.xml:1626
msgid "Sets a material's parameter."
msgstr ""
-#: doc/classes/RenderingServer.xml:1638
+#: doc/classes/RenderingServer.xml:1637
msgid "Sets a material's render priority."
msgstr ""
-#: doc/classes/RenderingServer.xml:1649
+#: doc/classes/RenderingServer.xml:1648
msgid "Sets a shader material's shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:1678
+#: doc/classes/RenderingServer.xml:1677
msgid "Removes all surfaces from a mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1685
+#: doc/classes/RenderingServer.xml:1684
msgid ""
"Creates a new mesh and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all [code]mesh_*[/"
@@ -42314,58 +43051,58 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:1696
+#: doc/classes/RenderingServer.xml:1695
msgid "Returns a mesh's blend shape count."
msgstr ""
-#: doc/classes/RenderingServer.xml:1705
+#: doc/classes/RenderingServer.xml:1704
msgid "Returns a mesh's blend shape mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:1714
+#: doc/classes/RenderingServer.xml:1713
msgid "Returns a mesh's custom aabb."
msgstr ""
-#: doc/classes/RenderingServer.xml:1723
+#: doc/classes/RenderingServer.xml:1722
msgid "Returns a mesh's number of surfaces."
msgstr ""
-#: doc/classes/RenderingServer.xml:1734
+#: doc/classes/RenderingServer.xml:1733
msgid "Sets a mesh's blend shape mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:1745
+#: doc/classes/RenderingServer.xml:1744
msgid "Sets a mesh's custom aabb."
msgstr ""
-#: doc/classes/RenderingServer.xml:1756
+#: doc/classes/RenderingServer.xml:1755
msgid "Returns a mesh's surface's buffer arrays."
msgstr ""
-#: doc/classes/RenderingServer.xml:1767
+#: doc/classes/RenderingServer.xml:1766
msgid "Returns a mesh's surface's arrays for blend shapes."
msgstr ""
-#: doc/classes/RenderingServer.xml:1782 doc/classes/RenderingServer.xml:1795
+#: doc/classes/RenderingServer.xml:1781 doc/classes/RenderingServer.xml:1794
msgid "Function is unused in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:1806
+#: doc/classes/RenderingServer.xml:1805
msgid "Returns a mesh's surface's material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1819
+#: doc/classes/RenderingServer.xml:1818
msgid "Sets a mesh's surface's material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1834
+#: doc/classes/RenderingServer.xml:1833
msgid ""
"Updates a specific region of a vertex buffer for the specified surface. "
"Warning: this function alters the vertex buffer directly with no safety "
"mechanisms, you can easily corrupt your mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1857
+#: doc/classes/RenderingServer.xml:1856
msgid ""
"Creates a new multimesh on the RenderingServer and returns an [RID] handle. "
"This RID will be used in all [code]multimesh_*[/code] RenderingServer "
@@ -42376,82 +43113,82 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:1868
+#: doc/classes/RenderingServer.xml:1867
msgid ""
"Calculates and returns the axis-aligned bounding box that encloses all "
"instances within the multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1885
+#: doc/classes/RenderingServer.xml:1884
msgid "Returns the number of instances allocated for this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1894
+#: doc/classes/RenderingServer.xml:1893
msgid ""
"Returns the RID of the mesh that will be used in drawing this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1903
+#: doc/classes/RenderingServer.xml:1902
msgid "Returns the number of visible instances for this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1914
+#: doc/classes/RenderingServer.xml:1913
msgid "Returns the color by which the specified instance will be modulated."
msgstr ""
-#: doc/classes/RenderingServer.xml:1925
+#: doc/classes/RenderingServer.xml:1924
msgid "Returns the custom data associated with the specified instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:1936
+#: doc/classes/RenderingServer.xml:1935
msgid "Returns the [Transform] of the specified instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:1947
+#: doc/classes/RenderingServer.xml:1946
msgid ""
"Returns the [Transform2D] of the specified instance. For use when the "
"multimesh is set to use 2D transforms."
msgstr ""
-#: doc/classes/RenderingServer.xml:1960
+#: doc/classes/RenderingServer.xml:1959
msgid ""
"Sets the color by which this instance will be modulated. Equivalent to "
"[method MultiMesh.set_instance_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1973
+#: doc/classes/RenderingServer.xml:1972
msgid ""
"Sets the custom data for this instance. Custom data is passed as a [Color], "
"but is interpreted as a [code]vec4[/code] in the shader. Equivalent to "
"[method MultiMesh.set_instance_custom_data]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1986
+#: doc/classes/RenderingServer.xml:1985
msgid ""
"Sets the [Transform] for this instance. Equivalent to [method MultiMesh."
"set_instance_transform]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1999
+#: doc/classes/RenderingServer.xml:1998
msgid ""
"Sets the [Transform2D] for this instance. For use when multimesh is used in "
"2D. Equivalent to [method MultiMesh.set_instance_transform_2d]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2020
+#: doc/classes/RenderingServer.xml:2019
msgid ""
"Sets the mesh to be drawn by the multimesh. Equivalent to [member MultiMesh."
"mesh]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2031
+#: doc/classes/RenderingServer.xml:2030
msgid ""
"Sets the number of instances visible at a given time. If -1, all instances "
"that have been allocated are drawn. Equivalent to [member MultiMesh."
"visible_instance_count]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2038
+#: doc/classes/RenderingServer.xml:2037
msgid ""
"Creates a new omni light and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID can be used in most "
@@ -42462,7 +43199,7 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2047
+#: doc/classes/RenderingServer.xml:2046
msgid ""
"Creates a particle system and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42473,23 +43210,23 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2058
+#: doc/classes/RenderingServer.xml:2057
msgid ""
"Calculates and returns the axis-aligned bounding box that contains all the "
"particles. Equivalent to [method GPUParticles3D.capture_aabb]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2067
+#: doc/classes/RenderingServer.xml:2066
msgid "Returns [code]true[/code] if particles are currently set to emitting."
msgstr ""
-#: doc/classes/RenderingServer.xml:2076
+#: doc/classes/RenderingServer.xml:2075
msgid ""
"Returns [code]true[/code] if particles are not emitting and particles are "
"set to inactive."
msgstr ""
-#: doc/classes/RenderingServer.xml:2085
+#: doc/classes/RenderingServer.xml:2084
msgid ""
"Add particle system to list of particle systems that need to be updated. "
"Update will take place on the next frame, or on the next call to [method "
@@ -42497,121 +43234,121 @@ msgid ""
"instances_cull_ray]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2094
+#: doc/classes/RenderingServer.xml:2093
msgid ""
"Reset the particles on the next update. Equivalent to [method GPUParticles3D."
"restart]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2105
+#: doc/classes/RenderingServer.xml:2104
msgid ""
"Sets the number of particles to be drawn and allocates the memory for them. "
"Equivalent to [member GPUParticles3D.amount]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2116
+#: doc/classes/RenderingServer.xml:2115
msgid ""
"Sets a custom axis-aligned bounding box for the particle system. Equivalent "
"to [member GPUParticles3D.visibility_aabb]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2127
+#: doc/classes/RenderingServer.xml:2126
msgid ""
"Sets the draw order of the particles to one of the named enums from [enum "
"ParticlesDrawOrder]. See [enum ParticlesDrawOrder] for options. Equivalent "
"to [member GPUParticles3D.draw_order]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2140
+#: doc/classes/RenderingServer.xml:2139
msgid ""
"Sets the mesh to be used for the specified draw pass. Equivalent to [member "
"GPUParticles3D.draw_pass_1], [member GPUParticles3D.draw_pass_2], [member "
"GPUParticles3D.draw_pass_3], and [member GPUParticles3D.draw_pass_4]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2151
+#: doc/classes/RenderingServer.xml:2150
msgid ""
"Sets the number of draw passes to use. Equivalent to [member GPUParticles3D."
"draw_passes]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2162
+#: doc/classes/RenderingServer.xml:2161
msgid ""
"Sets the [Transform] that will be used by the particles when they first emit."
msgstr ""
-#: doc/classes/RenderingServer.xml:2173
+#: doc/classes/RenderingServer.xml:2172
msgid ""
"If [code]true[/code], particles will emit over time. Setting to false does "
"not reset the particles, but only stops their emission. Equivalent to "
"[member GPUParticles3D.emitting]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2184
+#: doc/classes/RenderingServer.xml:2183
msgid ""
"Sets the explosiveness ratio. Equivalent to [member GPUParticles3D."
"explosiveness]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2195
+#: doc/classes/RenderingServer.xml:2194
msgid ""
"Sets the frame rate that the particle system rendering will be fixed to. "
"Equivalent to [member GPUParticles3D.fixed_fps]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2206
+#: doc/classes/RenderingServer.xml:2205
msgid ""
"If [code]true[/code], uses fractional delta which smooths the movement of "
"the particles. Equivalent to [member GPUParticles3D.fract_delta]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2217
+#: doc/classes/RenderingServer.xml:2216
msgid ""
"Sets the lifetime of each particle in the system. Equivalent to [member "
"GPUParticles3D.lifetime]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2228
+#: doc/classes/RenderingServer.xml:2227
msgid ""
"If [code]true[/code], particles will emit once and then stop. Equivalent to "
"[member GPUParticles3D.one_shot]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2239
+#: doc/classes/RenderingServer.xml:2238
msgid ""
"Sets the preprocess time for the particles animation. This lets you delay "
"starting an animation until after the particles have begun emitting. "
"Equivalent to [member GPUParticles3D.preprocess]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2250
+#: doc/classes/RenderingServer.xml:2249
msgid ""
"Sets the material for processing the particles. Note: this is not the "
"material used to draw the materials. Equivalent to [member GPUParticles3D."
"process_material]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2261
+#: doc/classes/RenderingServer.xml:2260
msgid ""
"Sets the emission randomness ratio. This randomizes the emission of "
"particles within their phase. Equivalent to [member GPUParticles3D."
"randomness]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2272
+#: doc/classes/RenderingServer.xml:2271
msgid ""
"Sets the speed scale of the particle system. Equivalent to [member "
"GPUParticles3D.speed_scale]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2283
+#: doc/classes/RenderingServer.xml:2282
msgid ""
"If [code]true[/code], particles use local coordinates. If [code]false[/code] "
"they use global coordinates. Equivalent to [member GPUParticles3D."
"local_coords]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2290
+#: doc/classes/RenderingServer.xml:2289
msgid ""
"Creates a reflection probe and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42622,85 +43359,64 @@ msgid ""
"[method instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2303
+#: doc/classes/RenderingServer.xml:2332
msgid ""
"If [code]true[/code], reflections will ignore sky contribution. Equivalent "
-"to [member ReflectionProbe.interior_enable]."
+"to [member ReflectionProbe.interior]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2314
+#: doc/classes/RenderingServer.xml:2343
msgid ""
"Sets the render cull mask for this reflection probe. Only instances with a "
"matching cull mask will be rendered by this probe. Equivalent to [member "
"ReflectionProbe.cull_mask]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2325
+#: doc/classes/RenderingServer.xml:2354
msgid ""
"If [code]true[/code], uses box projection. This can make reflections look "
"more correct in certain situations. Equivalent to [member ReflectionProbe."
"box_projection]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2336
+#: doc/classes/RenderingServer.xml:2365
msgid ""
"If [code]true[/code], computes shadows in the reflection probe. This makes "
"the reflection much slower to compute. Equivalent to [member ReflectionProbe."
"enable_shadows]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2347
+#: doc/classes/RenderingServer.xml:2376
msgid ""
"Sets the size of the area that the reflection probe will capture. Equivalent "
"to [member ReflectionProbe.extents]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2358
+#: doc/classes/RenderingServer.xml:2387
msgid ""
"Sets the intensity of the reflection probe. Intensity modulates the strength "
"of the reflection. Equivalent to [member ReflectionProbe.intensity]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2369
-msgid ""
-"Sets the ambient light color for this reflection probe when set to interior "
-"mode. Equivalent to [member ReflectionProbe.interior_ambient_color]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2380
-msgid ""
-"Sets the energy multiplier for this reflection probes ambient light "
-"contribution when set to interior mode. Equivalent to [member "
-"ReflectionProbe.interior_ambient_energy]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2391
-msgid ""
-"Sets the contribution value for how much the reflection affects the ambient "
-"light for this reflection probe when set to interior mode. Useful so that "
-"ambient light matches the color of the room. Equivalent to [member "
-"ReflectionProbe.interior_ambient_contrib]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2402
+#: doc/classes/RenderingServer.xml:2398
msgid ""
"Sets the max distance away from the probe an object can be before it is "
"culled. Equivalent to [member ReflectionProbe.max_distance]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2413
+#: doc/classes/RenderingServer.xml:2409
msgid ""
"Sets the origin offset to be used when this reflection probe is in box "
"project mode. Equivalent to [member ReflectionProbe.origin_offset]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2424
+#: doc/classes/RenderingServer.xml:2420
msgid ""
"Sets how often the reflection probe updates. Can either be once or every "
"frame. See [enum ReflectionProbeUpdateMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2437
+#: doc/classes/RenderingServer.xml:2433
msgid ""
"Schedules a callback to the corresponding named [code]method[/code] on "
"[code]where[/code] after a frame has been drawn.\n"
@@ -42708,7 +43424,7 @@ msgid ""
"[code]userdata[/code]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2445
+#: doc/classes/RenderingServer.xml:2441
msgid ""
"Creates a scenario and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all "
@@ -42718,24 +43434,24 @@ msgid ""
"The scenario is the 3D world that all the visual instances exist in."
msgstr ""
-#: doc/classes/RenderingServer.xml:2458
+#: doc/classes/RenderingServer.xml:2454
msgid ""
"Sets the [enum ScenarioDebugMode] for this scenario. See [enum "
"ScenarioDebugMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2469
+#: doc/classes/RenderingServer.xml:2465
msgid "Sets the environment that will be used with this scenario."
msgstr ""
-#: doc/classes/RenderingServer.xml:2480
+#: doc/classes/RenderingServer.xml:2476
msgid ""
"Sets the fallback environment to be used by this scenario. The fallback "
"environment is used if no environment is set. Internally, this is used by "
"the editor to provide a default environment."
msgstr ""
-#: doc/classes/RenderingServer.xml:2495
+#: doc/classes/RenderingServer.xml:2491
msgid ""
"Sets a boot image. The color defines the background color. If [code]scale[/"
"code] is [code]true[/code], the image will be scaled to fit the screen size. "
@@ -42744,19 +43460,19 @@ msgid ""
"the image will be scaled with nearest-neighbor interpolation."
msgstr ""
-#: doc/classes/RenderingServer.xml:2504
+#: doc/classes/RenderingServer.xml:2500
msgid ""
"If [code]true[/code], the engine will generate wireframes for use with the "
"wireframe debug mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:2513
+#: doc/classes/RenderingServer.xml:2509
msgid ""
"Sets the default clear color which is used when a specific clear color has "
"not been selected."
msgstr ""
-#: doc/classes/RenderingServer.xml:2520
+#: doc/classes/RenderingServer.xml:2516
msgid ""
"Creates an empty shader and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42765,47 +43481,47 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2530
+#: doc/classes/RenderingServer.xml:2526
msgid "Returns a shader's code."
msgstr ""
-#: doc/classes/RenderingServer.xml:2541
+#: doc/classes/RenderingServer.xml:2537
msgid "Returns a default texture from a shader searched by name."
msgstr ""
-#: doc/classes/RenderingServer.xml:2560
+#: doc/classes/RenderingServer.xml:2556
msgid "Returns the parameters of a shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:2571
+#: doc/classes/RenderingServer.xml:2567
msgid "Sets a shader's code."
msgstr ""
-#: doc/classes/RenderingServer.xml:2584
+#: doc/classes/RenderingServer.xml:2580
msgid "Sets a shader's default texture. Overwrites the texture given by name."
msgstr ""
-#: doc/classes/RenderingServer.xml:2597
+#: doc/classes/RenderingServer.xml:2593
msgid "Allocates the GPU buffers for this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2608
+#: doc/classes/RenderingServer.xml:2604
msgid "Returns the [Transform] set for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2619
+#: doc/classes/RenderingServer.xml:2615
msgid "Returns the [Transform2D] set for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2632
+#: doc/classes/RenderingServer.xml:2628
msgid "Sets the [Transform] for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2645
+#: doc/classes/RenderingServer.xml:2641
msgid "Sets the [Transform2D] for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2652
+#: doc/classes/RenderingServer.xml:2648
msgid ""
"Creates a skeleton and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all "
@@ -42814,11 +43530,11 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2662
+#: doc/classes/RenderingServer.xml:2658
msgid "Returns the number of bones allocated for this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2669
+#: doc/classes/RenderingServer.xml:2665
msgid ""
"Creates an empty sky and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all [code]sky_*[/"
@@ -42827,13 +43543,13 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2681
+#: doc/classes/RenderingServer.xml:2677
msgid ""
"Sets the material that the sky uses to render the background and reflection "
"maps."
msgstr ""
-#: doc/classes/RenderingServer.xml:2688
+#: doc/classes/RenderingServer.xml:2684
msgid ""
"Creates a spot light and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID can be used in most [code]light_*[/"
@@ -42844,15 +43560,15 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2717
+#: doc/classes/RenderingServer.xml:2713
msgid "Sets a viewport's camera."
msgstr ""
-#: doc/classes/RenderingServer.xml:2728
+#: doc/classes/RenderingServer.xml:2724
msgid "Sets a viewport's canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:2741
+#: doc/classes/RenderingServer.xml:2737
msgid ""
"Copies the viewport to a region of the screen specified by [code]rect[/"
"code]. If [method viewport_set_render_direct_to_screen] is [code]true[/"
@@ -42874,7 +43590,7 @@ msgid ""
"viewport_set_render_direct_to_screen]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2755
+#: doc/classes/RenderingServer.xml:2751
msgid ""
"Creates an empty viewport and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42883,72 +43599,72 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2767
+#: doc/classes/RenderingServer.xml:2763
msgid ""
"Returns a viewport's render information. For options, see the [enum "
"ViewportRenderInfo] constants."
msgstr ""
-#: doc/classes/RenderingServer.xml:2776
+#: doc/classes/RenderingServer.xml:2772
msgid "Returns the viewport's last rendered frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:2787
+#: doc/classes/RenderingServer.xml:2783
msgid "Detaches a viewport from a canvas and vice versa."
msgstr ""
-#: doc/classes/RenderingServer.xml:2798
+#: doc/classes/RenderingServer.xml:2794
msgid "If [code]true[/code], sets the viewport active, else sets it inactive."
msgstr ""
-#: doc/classes/RenderingServer.xml:2813
+#: doc/classes/RenderingServer.xml:2809
msgid ""
"Sets the stacking order for a viewport's canvas.\n"
"[code]layer[/code] is the actual canvas layer, while [code]sublayer[/code] "
"specifies the stacking order of the canvas among those in the same layer."
msgstr ""
-#: doc/classes/RenderingServer.xml:2827
+#: doc/classes/RenderingServer.xml:2823
msgid "Sets the transformation of a viewport's canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:2838
+#: doc/classes/RenderingServer.xml:2834
msgid ""
"Sets the clear mode of a viewport. See [enum ViewportClearMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2849
+#: doc/classes/RenderingServer.xml:2845
msgid ""
"Sets the debug draw mode of a viewport. See [enum ViewportDebugDraw] for "
"options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2860
+#: doc/classes/RenderingServer.xml:2856
msgid ""
"If [code]true[/code], rendering of a viewport's environment is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:2871
+#: doc/classes/RenderingServer.xml:2867
msgid "Sets the viewport's global transformation matrix."
msgstr ""
-#: doc/classes/RenderingServer.xml:2882
+#: doc/classes/RenderingServer.xml:2878
msgid "If [code]true[/code], the viewport's canvas is not rendered."
msgstr ""
-#: doc/classes/RenderingServer.xml:2893
+#: doc/classes/RenderingServer.xml:2889
msgid "Currently unimplemented in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:2904
+#: doc/classes/RenderingServer.xml:2900
msgid "Sets the anti-aliasing mode. See [enum ViewportMSAA] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2915
+#: doc/classes/RenderingServer.xml:2911
msgid "Sets the viewport's parent to another viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:2926
+#: doc/classes/RenderingServer.xml:2922
msgid ""
"If [code]true[/code], render the contents of the viewport directly to "
"screen. This allows a low-level optimization where you can skip drawing a "
@@ -42964,455 +43680,455 @@ msgid ""
"significantly larger than the window size."
msgstr ""
-#: doc/classes/RenderingServer.xml:2937
+#: doc/classes/RenderingServer.xml:2933
msgid ""
"Sets a viewport's scenario.\n"
"The scenario contains information about the [enum ScenarioDebugMode], "
"environment information, reflection atlas etc."
msgstr ""
-#: doc/classes/RenderingServer.xml:2951
+#: doc/classes/RenderingServer.xml:2947
msgid "Sets the shadow atlas quadrant's subdivision."
msgstr ""
-#: doc/classes/RenderingServer.xml:2962
+#: doc/classes/RenderingServer.xml:2958
msgid ""
"Sets the size of the shadow atlas's images (used for omni and spot lights). "
"The value will be rounded up to the nearest power of 2."
msgstr ""
-#: doc/classes/RenderingServer.xml:2975
+#: doc/classes/RenderingServer.xml:2971
msgid "Sets the viewport's width and height."
msgstr ""
-#: doc/classes/RenderingServer.xml:2986
+#: doc/classes/RenderingServer.xml:2982
msgid ""
"If [code]true[/code], the viewport renders its background as transparent."
msgstr ""
-#: doc/classes/RenderingServer.xml:2997
+#: doc/classes/RenderingServer.xml:2993
msgid ""
"Sets when the viewport should be updated. See [enum ViewportUpdateMode] "
"constants for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:3008
+#: doc/classes/RenderingServer.xml:3004
msgid ""
"If [code]true[/code], the viewport uses augmented or virtual reality "
"technologies. See [XRInterface]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3014
+#: doc/classes/RenderingServer.xml:3010
msgid ""
"If [code]false[/code], disables rendering completely, but the engine logic "
"is still being processed. You can call [method force_draw] to draw a frame "
"even with rendering disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3020
+#: doc/classes/RenderingServer.xml:3016
msgid ""
"Emitted at the end of the frame, after the RenderingServer has finished "
"updating all the Viewports."
msgstr ""
-#: doc/classes/RenderingServer.xml:3025
+#: doc/classes/RenderingServer.xml:3021
msgid ""
"Emitted at the beginning of the frame, before the RenderingServer updates "
"all the Viewports."
msgstr ""
-#: doc/classes/RenderingServer.xml:3031
+#: doc/classes/RenderingServer.xml:3027
msgid "Marks an error that shows that the index array is empty."
msgstr ""
-#: doc/classes/RenderingServer.xml:3034
+#: doc/classes/RenderingServer.xml:3030
msgid "Number of weights/bones per vertex."
msgstr ""
-#: doc/classes/RenderingServer.xml:3037
+#: doc/classes/RenderingServer.xml:3033
msgid "The minimum Z-layer for canvas items."
msgstr ""
-#: doc/classes/RenderingServer.xml:3040
+#: doc/classes/RenderingServer.xml:3036
msgid "The maximum Z-layer for canvas items."
msgstr ""
-#: doc/classes/RenderingServer.xml:3043
+#: doc/classes/RenderingServer.xml:3039
msgid ""
"Max number of glow levels that can be used with glow post-process effect."
msgstr ""
-#: doc/classes/RenderingServer.xml:3046
+#: doc/classes/RenderingServer.xml:3042
msgid "Unused enum in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:3067
+#: doc/classes/RenderingServer.xml:3063
msgid "Shader is a 3D shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3070
+#: doc/classes/RenderingServer.xml:3066
msgid "Shader is a 2D shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3073
+#: doc/classes/RenderingServer.xml:3069
msgid "Shader is a particle shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3076
+#: doc/classes/RenderingServer.xml:3072
msgid "Shader is a sky shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3079
+#: doc/classes/RenderingServer.xml:3075
msgid "Represents the size of the [enum ShaderMode] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3082
+#: doc/classes/RenderingServer.xml:3078
msgid "The minimum renderpriority of all materials."
msgstr ""
-#: doc/classes/RenderingServer.xml:3085
+#: doc/classes/RenderingServer.xml:3081
msgid "The maximum renderpriority of all materials."
msgstr ""
-#: doc/classes/RenderingServer.xml:3088
+#: doc/classes/RenderingServer.xml:3084
msgid "Array is a vertex array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3091
+#: doc/classes/RenderingServer.xml:3087
msgid "Array is a normal array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3094
+#: doc/classes/RenderingServer.xml:3090
msgid "Array is a tangent array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3097
+#: doc/classes/RenderingServer.xml:3093
msgid "Array is a color array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3100
+#: doc/classes/RenderingServer.xml:3096
msgid "Array is an UV coordinates array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3103
+#: doc/classes/RenderingServer.xml:3099
msgid "Array is an UV coordinates array for the second UV coordinates."
msgstr ""
-#: doc/classes/RenderingServer.xml:3106
+#: doc/classes/RenderingServer.xml:3102
msgid "Array contains bone information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3109
+#: doc/classes/RenderingServer.xml:3105
msgid "Array is weight information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3112
+#: doc/classes/RenderingServer.xml:3108
msgid "Array is index array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3118
+#: doc/classes/RenderingServer.xml:3114
msgid "Flag used to mark a vertex array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3121
+#: doc/classes/RenderingServer.xml:3117
msgid "Flag used to mark a normal array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3124
+#: doc/classes/RenderingServer.xml:3120
msgid "Flag used to mark a tangent array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3127
+#: doc/classes/RenderingServer.xml:3123
msgid "Flag used to mark a color array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3130
+#: doc/classes/RenderingServer.xml:3126
msgid "Flag used to mark an UV coordinates array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3133
+#: doc/classes/RenderingServer.xml:3129
msgid ""
"Flag used to mark an UV coordinates array for the second UV coordinates."
msgstr ""
-#: doc/classes/RenderingServer.xml:3136
+#: doc/classes/RenderingServer.xml:3132
msgid "Flag used to mark a bone information array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3139
+#: doc/classes/RenderingServer.xml:3135
msgid "Flag used to mark a weights array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3142
+#: doc/classes/RenderingServer.xml:3138
msgid "Flag used to mark an index array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3171
+#: doc/classes/RenderingServer.xml:3167
msgid "Primitive to draw consists of points."
msgstr ""
-#: doc/classes/RenderingServer.xml:3174
+#: doc/classes/RenderingServer.xml:3170
msgid "Primitive to draw consists of lines."
msgstr ""
-#: doc/classes/RenderingServer.xml:3177
+#: doc/classes/RenderingServer.xml:3173
msgid "Primitive to draw consists of a line strip from start to end."
msgstr ""
-#: doc/classes/RenderingServer.xml:3180
+#: doc/classes/RenderingServer.xml:3176
msgid "Primitive to draw consists of triangles."
msgstr ""
-#: doc/classes/RenderingServer.xml:3183
+#: doc/classes/RenderingServer.xml:3179
msgid ""
"Primitive to draw consists of a triangle strip (the last 3 vertices are "
"always combined to make a triangle)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3186
+#: doc/classes/RenderingServer.xml:3182
msgid "Represents the size of the [enum PrimitiveType] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3195
+#: doc/classes/RenderingServer.xml:3191
msgid "Use [Transform2D] to store MultiMesh transform."
msgstr ""
-#: doc/classes/RenderingServer.xml:3198
+#: doc/classes/RenderingServer.xml:3194
msgid "Use [Transform] to store MultiMesh transform."
msgstr ""
-#: doc/classes/RenderingServer.xml:3201
+#: doc/classes/RenderingServer.xml:3197
msgid "Is a directional (sun) light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3204
+#: doc/classes/RenderingServer.xml:3200
msgid "Is an omni light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3207
+#: doc/classes/RenderingServer.xml:3203
msgid "Is a spot light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3210
+#: doc/classes/RenderingServer.xml:3206
msgid "The light's energy."
msgstr ""
-#: doc/classes/RenderingServer.xml:3215
+#: doc/classes/RenderingServer.xml:3211
msgid "The light's influence on specularity."
msgstr ""
-#: doc/classes/RenderingServer.xml:3218
+#: doc/classes/RenderingServer.xml:3214
msgid "The light's range."
msgstr ""
-#: doc/classes/RenderingServer.xml:3221
+#: doc/classes/RenderingServer.xml:3217
msgid ""
"The size of the light when using spot light or omni light. The angular size "
"of the light when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3224
+#: doc/classes/RenderingServer.xml:3220
msgid "The light's attenuation."
msgstr ""
-#: doc/classes/RenderingServer.xml:3227
+#: doc/classes/RenderingServer.xml:3223
msgid "The spotlight's angle."
msgstr ""
-#: doc/classes/RenderingServer.xml:3230
+#: doc/classes/RenderingServer.xml:3226
msgid "The spotlight's attenuation."
msgstr ""
-#: doc/classes/RenderingServer.xml:3233
+#: doc/classes/RenderingServer.xml:3229
msgid "Max distance that shadows will be rendered."
msgstr ""
-#: doc/classes/RenderingServer.xml:3236
+#: doc/classes/RenderingServer.xml:3232
msgid "Proportion of shadow atlas occupied by the first split."
msgstr ""
-#: doc/classes/RenderingServer.xml:3239
+#: doc/classes/RenderingServer.xml:3235
msgid "Proportion of shadow atlas occupied by the second split."
msgstr ""
-#: doc/classes/RenderingServer.xml:3242
+#: doc/classes/RenderingServer.xml:3238
msgid ""
"Proportion of shadow atlas occupied by the third split. The fourth split "
"occupies the rest."
msgstr ""
-#: doc/classes/RenderingServer.xml:3245
+#: doc/classes/RenderingServer.xml:3241
msgid ""
"Proportion of shadow max distance where the shadow will start to fade out."
msgstr ""
-#: doc/classes/RenderingServer.xml:3248
+#: doc/classes/RenderingServer.xml:3244
msgid ""
"Normal bias used to offset shadow lookup by object normal. Can be used to "
"fix self-shadowing artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3251
+#: doc/classes/RenderingServer.xml:3247
msgid "Bias the shadow lookup to fix self-shadowing artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3257
+#: doc/classes/RenderingServer.xml:3253
msgid ""
"Blurs the edges of the shadow. Can be used to hide pixel artifacts in low "
"resolution shadow maps. A high value can make shadows appear grainy and can "
"cause other unwanted artifacts. Try to keep as near default as possible."
msgstr ""
-#: doc/classes/RenderingServer.xml:3262
+#: doc/classes/RenderingServer.xml:3258
msgid "Represents the size of the [enum LightParam] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3265
+#: doc/classes/RenderingServer.xml:3267
msgid "Use a dual paraboloid shadow map for omni lights."
msgstr ""
-#: doc/classes/RenderingServer.xml:3268
+#: doc/classes/RenderingServer.xml:3270
msgid ""
"Use a cubemap shadow map for omni lights. Slower but better quality than "
"dual paraboloid."
msgstr ""
-#: doc/classes/RenderingServer.xml:3271
+#: doc/classes/RenderingServer.xml:3273
msgid "Use orthogonal shadow projection for directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3274
+#: doc/classes/RenderingServer.xml:3276
msgid "Use 2 splits for shadow projection when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3277
+#: doc/classes/RenderingServer.xml:3279
msgid "Use 4 splits for shadow projection when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3280
+#: doc/classes/RenderingServer.xml:3282
msgid ""
"Keeps shadows stable as camera moves but has lower effective resolution."
msgstr ""
-#: doc/classes/RenderingServer.xml:3283
+#: doc/classes/RenderingServer.xml:3285
msgid ""
"Optimize use of shadow maps, increasing the effective resolution. But may "
"result in shadows moving or flickering slightly."
msgstr ""
-#: doc/classes/RenderingServer.xml:3286
+#: doc/classes/RenderingServer.xml:3288
msgid "Reflection probe will update reflections once and then stop."
msgstr ""
-#: doc/classes/RenderingServer.xml:3289
+#: doc/classes/RenderingServer.xml:3291
msgid ""
"Reflection probe will update each frame. This mode is necessary to capture "
"moving objects."
msgstr ""
-#: doc/classes/RenderingServer.xml:3302
+#: doc/classes/RenderingServer.xml:3310
msgid "Draw particles in the order that they appear in the particles array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3305
+#: doc/classes/RenderingServer.xml:3313
msgid "Sort particles based on their lifetime."
msgstr ""
-#: doc/classes/RenderingServer.xml:3308
+#: doc/classes/RenderingServer.xml:3316
msgid "Sort particles based on their distance to the camera."
msgstr ""
-#: doc/classes/RenderingServer.xml:3311
+#: doc/classes/RenderingServer.xml:3319
msgid "Do not update the viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:3314
+#: doc/classes/RenderingServer.xml:3322
msgid "Update the viewport once then set to disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3317
+#: doc/classes/RenderingServer.xml:3325
msgid "Update the viewport whenever it is visible."
msgstr ""
-#: doc/classes/RenderingServer.xml:3322
+#: doc/classes/RenderingServer.xml:3330
msgid "Always update the viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:3325
+#: doc/classes/RenderingServer.xml:3333
msgid "The viewport is always cleared before drawing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3328
+#: doc/classes/RenderingServer.xml:3336
msgid "The viewport is never cleared before drawing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3331
+#: doc/classes/RenderingServer.xml:3339
msgid ""
"The viewport is cleared once, then the clear mode is set to [constant "
"VIEWPORT_CLEAR_NEVER]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3334
+#: doc/classes/RenderingServer.xml:3342
msgid "Multisample antialiasing is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3337
+#: doc/classes/RenderingServer.xml:3345
msgid "Multisample antialiasing uses 2 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3340
+#: doc/classes/RenderingServer.xml:3348
msgid "Multisample antialiasing uses 4 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3343
+#: doc/classes/RenderingServer.xml:3351
msgid "Multisample antialiasing uses 8 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3346
+#: doc/classes/RenderingServer.xml:3354
msgid "Multisample antialiasing uses 16 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3357
+#: doc/classes/RenderingServer.xml:3365
msgid "Number of objects drawn in a single frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3360
+#: doc/classes/RenderingServer.xml:3368
msgid "Number of vertices drawn in a single frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3363
+#: doc/classes/RenderingServer.xml:3371
msgid "Number of material changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3366
+#: doc/classes/RenderingServer.xml:3374
msgid "Number of shader changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3369
+#: doc/classes/RenderingServer.xml:3377
msgid "Number of surface changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3372
+#: doc/classes/RenderingServer.xml:3380
msgid "Number of draw calls during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3375
+#: doc/classes/RenderingServer.xml:3383
msgid "Represents the size of the [enum ViewportRenderInfo] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3378
+#: doc/classes/RenderingServer.xml:3386
msgid "Debug draw is disabled. Default setting."
msgstr ""
-#: doc/classes/RenderingServer.xml:3381 doc/classes/Viewport.xml:348
+#: doc/classes/RenderingServer.xml:3389 doc/classes/Viewport.xml:348
msgid "Objects are displayed without light information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3384
+#: doc/classes/RenderingServer.xml:3392
msgid "Objects are displayed with only light information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3387 doc/classes/Viewport.xml:353
+#: doc/classes/RenderingServer.xml:3395 doc/classes/Viewport.xml:353
msgid ""
"Objects are displayed semi-transparent with additive blending so you can see "
"where they are drawing over top of one another. A higher overdraw means you "
@@ -43420,41 +44136,41 @@ msgid ""
"others."
msgstr ""
-#: doc/classes/RenderingServer.xml:3390
+#: doc/classes/RenderingServer.xml:3398
msgid "Debug draw draws objects in wireframe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3393
+#: doc/classes/RenderingServer.xml:3401
msgid ""
"Normal buffer is drawn instead of regular scene so you can see the per-pixel "
"normals that will be used by post-processing effects."
msgstr ""
-#: doc/classes/RenderingServer.xml:3396 doc/classes/Viewport.xml:361
+#: doc/classes/RenderingServer.xml:3404 doc/classes/Viewport.xml:361
msgid "Objects are displayed with only the albedo value from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3399 doc/classes/Viewport.xml:364
+#: doc/classes/RenderingServer.xml:3407 doc/classes/Viewport.xml:364
msgid "Objects are displayed with only the lighting value from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3402 doc/classes/Viewport.xml:367
+#: doc/classes/RenderingServer.xml:3410 doc/classes/Viewport.xml:367
msgid "Objects are displayed with only the emission color from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3405 doc/classes/Viewport.xml:370
+#: doc/classes/RenderingServer.xml:3413 doc/classes/Viewport.xml:370
msgid ""
"Draws the shadow atlas that stores shadows from [OmniLight3D]s and "
"[SpotLight3D]s in the upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3408 doc/classes/Viewport.xml:373
+#: doc/classes/RenderingServer.xml:3416 doc/classes/Viewport.xml:373
msgid ""
"Draws the shadow atlas that stores shadows from [DirectionalLight3D]s in the "
"upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3413
+#: doc/classes/RenderingServer.xml:3421
msgid ""
"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 "
@@ -43462,21 +44178,14 @@ msgid ""
"your [WorldEnvironment]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3416 doc/classes/Viewport.xml:381
-msgid ""
-"Draws the roughness limiter post process over the Viewport so you can see "
-"where it has an effect. It must be enabled in [member ProjectSettings."
-"rendering/quality/screen_filters/screen_space_roughness_limiter] to work."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:3419
+#: doc/classes/RenderingServer.xml:3424
msgid ""
"Colors each PSSM split for the [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."
msgstr ""
-#: doc/classes/RenderingServer.xml:3424
+#: doc/classes/RenderingServer.xml:3435
msgid ""
"Uses high quality importance sampling to process the radiance map. In "
"general, this results in much higher quality than [constant Sky."
@@ -43487,7 +44196,7 @@ msgid ""
"ggx_samples]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3427
+#: doc/classes/RenderingServer.xml:3438
msgid ""
"Uses the fast filtering algorithm to process the radiance map. In general "
"this results in lower quality, but substantially faster run times.\n"
@@ -43495,347 +44204,347 @@ msgid ""
"[member Sky.radiance_size] must be set to [constant Sky.RADIANCE_SIZE_256]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3431
+#: doc/classes/RenderingServer.xml:3442
msgid "Use the clear color as background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3434
+#: doc/classes/RenderingServer.xml:3445
msgid "Use a specified color as the background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3437
+#: doc/classes/RenderingServer.xml:3448
msgid "Use a sky resource for the background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3440
+#: doc/classes/RenderingServer.xml:3451
msgid ""
"Use a specified canvas layer as the background. This can be useful for "
"instantiating a 2D scene in a 3D world."
msgstr ""
-#: doc/classes/RenderingServer.xml:3443
+#: doc/classes/RenderingServer.xml:3454
msgid ""
"Do not clear the background, use whatever was rendered last frame as the "
"background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3449
+#: doc/classes/RenderingServer.xml:3460
msgid "Represents the size of the [enum EnvironmentBG] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3488
+#: doc/classes/RenderingServer.xml:3499
msgid "Output color as they came in."
msgstr ""
-#: doc/classes/RenderingServer.xml:3491
+#: doc/classes/RenderingServer.xml:3502
msgid "Use the Reinhard tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3494
+#: doc/classes/RenderingServer.xml:3505
msgid "Use the filmic tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3497
+#: doc/classes/RenderingServer.xml:3508
msgid "Use the ACES tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3508
+#: doc/classes/RenderingServer.xml:3519
msgid "Disables the blur set for SSAO. Will make SSAO look noisier."
msgstr ""
-#: doc/classes/RenderingServer.xml:3511
+#: doc/classes/RenderingServer.xml:3522
msgid "Perform a 1x1 blur on the SSAO output."
msgstr ""
-#: doc/classes/RenderingServer.xml:3514
+#: doc/classes/RenderingServer.xml:3525
msgid "Performs a 2x2 blur on the SSAO output."
msgstr ""
-#: doc/classes/RenderingServer.xml:3517
+#: doc/classes/RenderingServer.xml:3528
msgid "Performs a 3x3 blur on the SSAO output. Use this for smoothest SSAO."
msgstr ""
-#: doc/classes/RenderingServer.xml:3520
+#: doc/classes/RenderingServer.xml:3531
msgid "Lowest quality of screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3523
+#: doc/classes/RenderingServer.xml:3534
msgid "Medium quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3526
+#: doc/classes/RenderingServer.xml:3537
msgid "High quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3529
+#: doc/classes/RenderingServer.xml:3540
msgid "Highest quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3540
+#: doc/classes/RenderingServer.xml:3551
msgid ""
"Lowest quality DOF blur. This is the fastest setting, but you may be able to "
"see filtering artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3543
+#: doc/classes/RenderingServer.xml:3554
msgid "Low quality DOF blur."
msgstr ""
-#: doc/classes/RenderingServer.xml:3546
+#: doc/classes/RenderingServer.xml:3557
msgid "Medium quality DOF blur."
msgstr ""
-#: doc/classes/RenderingServer.xml:3549
+#: doc/classes/RenderingServer.xml:3560
msgid ""
"Highest quality DOF blur. Results in the smoothest looking blur by taking "
"the most samples, but is also significantly slower."
msgstr ""
-#: doc/classes/RenderingServer.xml:3552
+#: doc/classes/RenderingServer.xml:3563
msgid ""
"Calculate the DOF blur using a box filter. The fastest option, but results "
"in obvious lines in blur pattern."
msgstr ""
-#: doc/classes/RenderingServer.xml:3555
+#: doc/classes/RenderingServer.xml:3566
msgid "Calculates DOF blur using a hexagon shaped filter."
msgstr ""
-#: doc/classes/RenderingServer.xml:3558
+#: doc/classes/RenderingServer.xml:3569
msgid ""
"Calculates DOF blur using a circle shaped filter. Best quality and most "
"realistic, but slowest. Use only for areas where a lot of performance can be "
"dedicated to post-processing (e.g. cutscenes)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3573
+#: doc/classes/RenderingServer.xml:3584
msgid "Do not use a debug mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:3576
+#: doc/classes/RenderingServer.xml:3587
msgid "Draw all objects as wireframe models."
msgstr ""
-#: doc/classes/RenderingServer.xml:3579
+#: doc/classes/RenderingServer.xml:3590
msgid ""
"Draw all objects in a way that displays how much overdraw is occurring. "
"Overdraw occurs when a section of pixels is drawn and shaded and then "
"another object covers it up. To optimize a scene, you should reduce overdraw."
msgstr ""
-#: doc/classes/RenderingServer.xml:3582
+#: doc/classes/RenderingServer.xml:3593
msgid ""
"Draw all objects without shading. Equivalent to setting all objects shaders "
"to [code]unshaded[/code]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3585
+#: doc/classes/RenderingServer.xml:3596
msgid "The instance does not have a type."
msgstr ""
-#: doc/classes/RenderingServer.xml:3588
+#: doc/classes/RenderingServer.xml:3599
msgid "The instance is a mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:3591
+#: doc/classes/RenderingServer.xml:3602
msgid "The instance is a multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:3594
+#: doc/classes/RenderingServer.xml:3605
msgid "The instance is an immediate geometry."
msgstr ""
-#: doc/classes/RenderingServer.xml:3597
+#: doc/classes/RenderingServer.xml:3608
msgid "The instance is a particle emitter."
msgstr ""
-#: doc/classes/RenderingServer.xml:3600
+#: doc/classes/RenderingServer.xml:3611
msgid "The instance is a light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3603
+#: doc/classes/RenderingServer.xml:3614
msgid "The instance is a reflection probe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3606
+#: doc/classes/RenderingServer.xml:3617
msgid "The instance is a decal."
msgstr ""
-#: doc/classes/RenderingServer.xml:3609
+#: doc/classes/RenderingServer.xml:3620
msgid "The instance is a GI probe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3612
+#: doc/classes/RenderingServer.xml:3623
msgid "The instance is a lightmap."
msgstr ""
-#: doc/classes/RenderingServer.xml:3615
+#: doc/classes/RenderingServer.xml:3626
msgid "Represents the size of the [enum InstanceType] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3618
+#: doc/classes/RenderingServer.xml:3629
msgid ""
"A combination of the flags of geometry instances (mesh, multimesh, immediate "
"and particles)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3621
+#: doc/classes/RenderingServer.xml:3632
msgid "Allows the instance to be used in baked lighting."
msgstr ""
-#: doc/classes/RenderingServer.xml:3624
+#: doc/classes/RenderingServer.xml:3635
msgid "Allows the instance to be used with dynamic global illumination."
msgstr ""
-#: doc/classes/RenderingServer.xml:3627
+#: doc/classes/RenderingServer.xml:3638
msgid "When set, manually requests to draw geometry on next frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3630
+#: doc/classes/RenderingServer.xml:3641
msgid "Represents the size of the [enum InstanceFlags] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3633
+#: doc/classes/RenderingServer.xml:3644
msgid "Disable shadows from this instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:3636
+#: doc/classes/RenderingServer.xml:3647
msgid "Cast shadows from this instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:3639
+#: doc/classes/RenderingServer.xml:3650
msgid ""
"Disable backface culling when rendering the shadow of the object. This is "
"slightly slower but may result in more correct shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3642
+#: doc/classes/RenderingServer.xml:3653
msgid ""
"Only render the shadows from the object. The object itself will not be drawn."
msgstr ""
-#: doc/classes/RenderingServer.xml:3645
+#: doc/classes/RenderingServer.xml:3656
msgid "The nine patch gets stretched where needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3648
+#: doc/classes/RenderingServer.xml:3659
msgid "The nine patch gets filled with tiles where needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3651
+#: doc/classes/RenderingServer.xml:3662
msgid ""
"The nine patch gets filled with tiles where needed and stretches them a bit "
"if needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3654
+#: doc/classes/RenderingServer.xml:3665
msgid "Uses the default filter mode for this [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3666 doc/classes/Viewport.xml:399
+#: doc/classes/RenderingServer.xml:3677 doc/classes/Viewport.xml:402
msgid ""
"The texture filter blends between the nearest 4 pixels and between the "
"nearest 2 mipmaps."
msgstr ""
-#: doc/classes/RenderingServer.xml:3675
+#: doc/classes/RenderingServer.xml:3686
msgid "Max value for [enum CanvasItemTextureFilter] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3678
+#: doc/classes/RenderingServer.xml:3689
msgid "Uses the default repeat mode for this [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3681 doc/classes/Viewport.xml:405
+#: doc/classes/RenderingServer.xml:3692 doc/classes/Viewport.xml:408
msgid ""
"Disables textures repeating. Instead, when reading UVs outside the 0-1 "
"range, the value will be clamped to the edge of the texture, resulting in a "
"stretched out look at the borders of the texture."
msgstr ""
-#: doc/classes/RenderingServer.xml:3687 doc/classes/Viewport.xml:411
+#: doc/classes/RenderingServer.xml:3698 doc/classes/Viewport.xml:414
msgid ""
"Flip the texture when repeating so that the edge lines up instead of "
"abruptly changing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3690
+#: doc/classes/RenderingServer.xml:3701
msgid "Max value for [enum CanvasItemTextureRepeat] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3693
+#: doc/classes/RenderingServer.xml:3704
msgid "Adds light color additive to the canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:3696
+#: doc/classes/RenderingServer.xml:3707
msgid "Adds light color subtractive to the canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:3699
+#: doc/classes/RenderingServer.xml:3710
msgid "The light adds color depending on transparency."
msgstr ""
-#: doc/classes/RenderingServer.xml:3702
+#: doc/classes/RenderingServer.xml:3713
msgid "The light adds color depending on mask."
msgstr ""
-#: doc/classes/RenderingServer.xml:3705
+#: doc/classes/RenderingServer.xml:3716
msgid "Do not apply a filter to canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3708
+#: doc/classes/RenderingServer.xml:3719
msgid "Use PCF5 filtering to filter canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3711
+#: doc/classes/RenderingServer.xml:3722
msgid "Use PCF13 filtering to filter canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3714
+#: doc/classes/RenderingServer.xml:3725
msgid "Max value of the [enum CanvasLightShadowFilter] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3717
+#: doc/classes/RenderingServer.xml:3728
msgid "Culling of the canvas occluder is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3720
+#: doc/classes/RenderingServer.xml:3731
msgid "Culling of the canvas occluder is clockwise."
msgstr ""
-#: doc/classes/RenderingServer.xml:3723
+#: doc/classes/RenderingServer.xml:3734
msgid "Culling of the canvas occluder is counterclockwise."
msgstr ""
-#: doc/classes/RenderingServer.xml:3784
+#: doc/classes/RenderingServer.xml:3795
msgid "The amount of objects in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3787
+#: doc/classes/RenderingServer.xml:3798
msgid "The amount of vertices in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3790
+#: doc/classes/RenderingServer.xml:3801
msgid "The amount of modified materials in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3793
+#: doc/classes/RenderingServer.xml:3804
msgid "The amount of shader rebinds in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3796
+#: doc/classes/RenderingServer.xml:3807
msgid "The amount of surface changes in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3799
+#: doc/classes/RenderingServer.xml:3810
msgid "The amount of draw calls in frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3814
+#: doc/classes/RenderingServer.xml:3825
msgid "Hardware supports shaders. This enum is currently unused in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:3817
+#: doc/classes/RenderingServer.xml:3828
msgid ""
"Hardware supports multithreading. This enum is currently unused in Godot 3.x."
msgstr ""
@@ -43847,13 +44556,13 @@ msgstr ""
#: doc/classes/Resource.xml:7
msgid ""
"Resource is the base class for all Godot-specific resource types, serving "
-"primarily as data containers. They are reference counted and freed when no "
-"longer in use. They are also cached once loaded from disk, so that any "
-"further attempts to load a resource from a given path will return the same "
-"reference (all this in contrast to a [Node], which is not reference counted "
-"and can be instanced from disk as many times as desired). Resources can be "
-"saved externally on disk or bundled into another object, such as a [Node] or "
-"another resource."
+"primarily as data containers. Unlike [Object]s, they are reference-counted "
+"and freed when no longer in use. They are also cached once loaded from disk, "
+"so that any further attempts to load a resource from a given path will "
+"return the same reference (all this in contrast to a [Node], which is not "
+"reference-counted and can be instanced from disk as many times as desired). "
+"Resources can be saved externally on disk or bundled into another object, "
+"such as a [Node] or another resource."
msgstr ""
#: doc/classes/Resource.xml:10
@@ -43862,34 +44571,38 @@ msgid ""
"resources.html"
msgstr ""
-#: doc/classes/Resource.xml:17
+#: doc/classes/Resource.xml:18
msgid ""
"Virtual function which can be overridden to customize the behavior value of "
"[method setup_local_to_scene]."
msgstr ""
-#: doc/classes/Resource.xml:26
+#: doc/classes/Resource.xml:27
msgid ""
"Duplicates the resource, returning a new resource. By default, sub-resources "
-"are shared between resource copies for efficiency, this can be changed by "
-"passing [code]true[/code] to the [code]subresources[/code] argument."
+"are shared between resource copies for efficiency. This can be changed by "
+"passing [code]true[/code] to the [code]subresources[/code] argument which "
+"will copy the subresources.\n"
+"[b]Note:[/b] If [code]subresources[/code] is [code]true[/code], this method "
+"will only perform a shallow copy. Nested resources within subresources will "
+"not be duplicated and will still be shared."
msgstr ""
-#: doc/classes/Resource.xml:33
+#: doc/classes/Resource.xml:35
msgid ""
"If [member resource_local_to_scene] is enabled and the resource was loaded "
"from a [PackedScene] instantiation, returns the local scene where this "
"resource's unique copy is in use. Otherwise, returns [code]null[/code]."
msgstr ""
-#: doc/classes/Resource.xml:40
+#: doc/classes/Resource.xml:42
msgid ""
"Returns the RID of the resource (or an empty RID). Many resources (such as "
"[Texture2D], [Mesh], etc) are high-level abstractions of resources stored in "
"a server, so this function will return the original RID."
msgstr ""
-#: doc/classes/Resource.xml:47
+#: doc/classes/Resource.xml:49
msgid ""
"This method is called when a resource with [member resource_local_to_scene] "
"enabled is loaded from a [PackedScene] instantiation. Its behavior can be "
@@ -43899,7 +44612,7 @@ msgid ""
"local viewport."
msgstr ""
-#: doc/classes/Resource.xml:57
+#: doc/classes/Resource.xml:59
msgid ""
"Sets the path of the resource, potentially overriding an existing cache "
"entry for this path. This differs from setting [member resource_path], as "
@@ -43907,25 +44620,25 @@ msgid ""
"given path."
msgstr ""
-#: doc/classes/Resource.xml:63
+#: doc/classes/Resource.xml:65
msgid ""
"If [code]true[/code], the resource will be made unique in each instance of "
"its local scene. It can thus be modified in a scene instance without "
"impacting other instances of that same scene."
msgstr ""
-#: doc/classes/Resource.xml:66
+#: doc/classes/Resource.xml:68
msgid "The name of the resource. This is an optional identifier."
msgstr ""
-#: doc/classes/Resource.xml:69
+#: doc/classes/Resource.xml:71
msgid ""
"The path to the resource. In case it has its own file, it will return its "
"filepath. If it's tied to the scene, it will return the scene's path, "
"followed by the resource's index."
msgstr ""
-#: doc/classes/Resource.xml:75
+#: doc/classes/Resource.xml:77
msgid "Emitted whenever the resource changes."
msgstr ""
@@ -44744,11 +45457,11 @@ msgid ""
"global coordinate system, but is centered at the object's origin."
msgstr ""
-#: doc/classes/RigidBody2D.xml:87
+#: doc/classes/RigidBody2D.xml:87 doc/classes/RigidBody3D.xml:99
msgid ""
-"Returns a list of the bodies colliding with this one. Use [member "
-"contacts_reported] to set the maximum number reported. You must also set "
-"[member contact_monitor] to [code]true[/code].\n"
+"Returns a list of the bodies colliding with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
"For performance, list of collisions is updated once per frame and before the "
"physics step. Consider using signals instead."
@@ -44785,7 +45498,7 @@ msgstr ""
msgid "The body's total applied torque."
msgstr ""
-#: doc/classes/RigidBody2D.xml:130 doc/classes/RigidBody3D.xml:150
+#: doc/classes/RigidBody2D.xml:130 doc/classes/RigidBody3D.xml:157
msgid ""
"If [code]true[/code], the body can enter sleep mode when there is no "
"movement. See [member sleeping]."
@@ -44797,11 +45510,17 @@ msgid ""
"another RigidBody2D. See also [member contacts_reported]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:136
-msgid "The maximum number of contacts to report."
+#: doc/classes/RigidBody2D.xml:136 doc/classes/RigidBody3D.xml:163
+msgid ""
+"The maximum number of contacts that will be recorded. Requires [member "
+"contact_monitor] to be set to [code]true[/code].\n"
+"[b]Note:[/b] The number of contacts is different from the number of "
+"collisions. Collisions between parallel edges will result in two contacts "
+"(one at each end), and collisions between parallel faces will result in four "
+"contacts (one at each corner)."
msgstr ""
-#: doc/classes/RigidBody2D.xml:139
+#: doc/classes/RigidBody2D.xml:140
msgid ""
"Continuous collision detection mode.\n"
"Continuous collision detection tries to predict where a moving body will "
@@ -44811,21 +45530,21 @@ msgid ""
"methods are available. See [enum CCDMode] for details."
msgstr ""
-#: doc/classes/RigidBody2D.xml:143
+#: doc/classes/RigidBody2D.xml:144
msgid ""
"If [code]true[/code], internal force integration is disabled for this body. "
"Aside from collision response, the body will only move as determined by the "
"[method _integrate_forces] function."
msgstr ""
-#: doc/classes/RigidBody2D.xml:146
+#: doc/classes/RigidBody2D.xml:147
msgid ""
"Multiplies the gravity applied to the body. The body's gravity is calculated "
"from the [b]Default Gravity[/b] value in [b]Project > Project Settings > "
"Physics > 2d[/b] and/or any additional gravity vector applied by [Area2D]s."
msgstr ""
-#: doc/classes/RigidBody2D.xml:149
+#: doc/classes/RigidBody2D.xml:150
msgid ""
"The body's moment of inertia. This is like mass, but for rotation: it "
"determines how much torque it takes to rotate the body. The moment of "
@@ -44834,18 +45553,18 @@ msgid ""
"automatically computing it."
msgstr ""
-#: doc/classes/RigidBody2D.xml:152
+#: doc/classes/RigidBody2D.xml:153
msgid ""
"Damps the body's [member linear_velocity]. If [code]-1[/code], the body will "
"use the [b]Default Linear Damp[/b] in [b]Project > Project Settings > "
"Physics > 2d[/b]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:161
+#: doc/classes/RigidBody2D.xml:162
msgid "The body's mode. See [enum Mode] for possible values."
msgstr ""
-#: doc/classes/RigidBody2D.xml:164 doc/classes/RigidBody3D.xml:181
+#: doc/classes/RigidBody2D.xml:165 doc/classes/RigidBody3D.xml:189
#: doc/classes/StaticBody2D.xml:22 doc/classes/StaticBody3D.xml:22
msgid ""
"The physics material override for the body.\n"
@@ -44853,50 +45572,50 @@ msgid ""
"other physics material, such as an inherited one."
msgstr ""
-#: doc/classes/RigidBody2D.xml:168 doc/classes/RigidBody3D.xml:185
+#: doc/classes/RigidBody2D.xml:169 doc/classes/RigidBody3D.xml:193
msgid ""
"If [code]true[/code], the body will not move and will not calculate forces "
"until woken up by another body through, for example, a collision, or by "
"using the [method apply_impulse] or [method add_force] methods."
msgstr ""
-#: doc/classes/RigidBody2D.xml:171
+#: doc/classes/RigidBody2D.xml:172
msgid ""
"The body's weight based on its mass and the [b]Default Gravity[/b] value in "
"[b]Project > Project Settings > Physics > 2d[/b]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:179
+#: doc/classes/RigidBody2D.xml:180 doc/classes/RigidBody3D.xml:204
msgid ""
-"Emitted when a body enters into contact with this one. [member "
-"contact_monitor] must be [code]true[/code] and [member contacts_reported] "
-"greater than [code]0[/code]."
+"Emitted when a body enters into contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:186
+#: doc/classes/RigidBody2D.xml:187
msgid ""
-"Emitted when a body exits contact with this one. [member contact_monitor] "
-"must be [code]true[/code] and [member contacts_reported] greater than "
-"[code]0[/code]."
+"Emitted when a body exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:199
+#: doc/classes/RigidBody2D.xml:200
msgid ""
"Emitted when a body enters into contact with this one. Reports colliding "
"shape information. See [CollisionObject2D] for shape index information. "
-"[member contact_monitor] must be [code]true[/code] and [member "
-"contacts_reported] greater than [code]0[/code]."
+"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:212
+#: doc/classes/RigidBody2D.xml:213
msgid ""
"Emitted when a body shape exits contact with this one. Reports colliding "
"shape information. See [CollisionObject2D] for shape index information. "
-"[member contact_monitor] must be [code]true[/code] and [member "
-"contacts_reported] greater than [code]0[/code]."
+"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:217 doc/classes/RigidBody3D.xml:236
+#: doc/classes/RigidBody2D.xml:218 doc/classes/RigidBody3D.xml:244
msgid ""
"Emitted when the physics engine changes the body's sleeping state.\n"
"[b]Note:[/b] Changing the value [member sleeping] will not trigger this "
@@ -44904,41 +45623,41 @@ msgid ""
"engine or [code]emit_signal(\"sleeping_state_changed\")[/code] is used."
msgstr ""
-#: doc/classes/RigidBody2D.xml:224
+#: doc/classes/RigidBody2D.xml:225
msgid ""
"Rigid mode. The body behaves as a physical object. It collides with other "
"bodies and responds to forces applied to it. This is the default mode."
msgstr ""
-#: doc/classes/RigidBody2D.xml:227
+#: doc/classes/RigidBody2D.xml:228
msgid "Static mode. The body behaves like a [StaticBody2D] and does not move."
msgstr ""
-#: doc/classes/RigidBody2D.xml:230
+#: doc/classes/RigidBody2D.xml:231
msgid ""
"Character mode. Similar to [constant MODE_RIGID], but the body can not "
"rotate."
msgstr ""
-#: doc/classes/RigidBody2D.xml:233
+#: doc/classes/RigidBody2D.xml:234
msgid ""
"Kinematic mode. The body behaves like a [KinematicBody2D], and must be moved "
"by code."
msgstr ""
-#: doc/classes/RigidBody2D.xml:236
+#: doc/classes/RigidBody2D.xml:237
msgid ""
"Continuous collision detection disabled. This is the fastest way to detect "
"body collisions, but can miss small, fast-moving objects."
msgstr ""
-#: doc/classes/RigidBody2D.xml:239
+#: doc/classes/RigidBody2D.xml:240
msgid ""
"Continuous collision detection enabled using raycasting. This is faster than "
"shapecasting but less precise."
msgstr ""
-#: doc/classes/RigidBody2D.xml:242
+#: doc/classes/RigidBody2D.xml:243
msgid ""
"Continuous collision detection enabled using shapecasting. This is the "
"slowest CCD method and the most precise."
@@ -45024,42 +45743,31 @@ msgid ""
"locked."
msgstr ""
-#: doc/classes/RigidBody3D.xml:99
+#: doc/classes/RigidBody3D.xml:107
msgid ""
-"Returns a list of the bodies colliding with this one. By default, number of "
-"max contacts reported is at 0, see the [member contacts_reported] property "
-"to increase it.\n"
-"[b]Note:[/b] The result of this test is not immediate after moving objects. "
-"For performance, list of collisions is updated once per frame and before the "
-"physics step. Consider using signals instead."
+"Returns the inverse inertia tensor basis. This is used to calculate the "
+"angular acceleration resulting from a torque applied to the [RigidBody3D]."
msgstr ""
-#: doc/classes/RigidBody3D.xml:111
+#: doc/classes/RigidBody3D.xml:118
msgid "Locks the specified linear or rotational axis."
msgstr ""
-#: doc/classes/RigidBody3D.xml:126
+#: doc/classes/RigidBody3D.xml:133
msgid "Damps RigidBody3D's rotational forces."
msgstr ""
-#: doc/classes/RigidBody3D.xml:129
+#: doc/classes/RigidBody3D.xml:136
msgid "RigidBody3D's rotational velocity."
msgstr ""
-#: doc/classes/RigidBody3D.xml:153
+#: doc/classes/RigidBody3D.xml:160
msgid ""
"If [code]true[/code], the RigidBody3D will emit signals when it collides "
-"with another RigidBody3D."
-msgstr ""
-
-#: doc/classes/RigidBody3D.xml:156
-msgid ""
-"The maximum contacts to report. Bodies can keep a log of the contacts with "
-"other bodies, this is enabled by setting the maximum amount of contacts "
-"reported to a number greater than 0."
+"with another RigidBody3D. See also [member contacts_reported]."
msgstr ""
-#: doc/classes/RigidBody3D.xml:159
+#: doc/classes/RigidBody3D.xml:167
msgid ""
"If [code]true[/code], continuous collision detection is used.\n"
"Continuous collision detection tries to predict where a moving body will "
@@ -45069,7 +45777,7 @@ msgid ""
"faster to compute, but can miss small, fast-moving objects."
msgstr ""
-#: doc/classes/RigidBody3D.xml:163
+#: doc/classes/RigidBody3D.xml:171
msgid ""
"If [code]true[/code], internal force integration will be disabled (like "
"gravity or air friction) for this body. Other than collision response, the "
@@ -45077,7 +45785,7 @@ msgid ""
"function, if defined."
msgstr ""
-#: doc/classes/RigidBody3D.xml:166
+#: doc/classes/RigidBody3D.xml:174
msgid ""
"This is multiplied by the global 3D gravity setting found in [b]Project > "
"Project Settings > Physics > 3d[/b] to produce RigidBody3D's gravity. For "
@@ -45085,14 +45793,14 @@ msgid ""
"and 0.5 will apply half gravity to this object."
msgstr ""
-#: doc/classes/RigidBody3D.xml:169
+#: doc/classes/RigidBody3D.xml:177
msgid ""
"The body's linear damp. Cannot be less than -1.0. If this value is different "
"from -1.0, any linear damp derived from the world or areas will be "
"overridden."
msgstr ""
-#: doc/classes/RigidBody3D.xml:172
+#: doc/classes/RigidBody3D.xml:180
msgid ""
"The body's linear velocity. Can be used sporadically, but [b]don't set this "
"every frame[/b], because physics may run in another thread and runs at a "
@@ -45100,60 +45808,57 @@ msgid ""
"for precise control of the body state."
msgstr ""
-#: doc/classes/RigidBody3D.xml:178
+#: doc/classes/RigidBody3D.xml:186
msgid "The body mode. See [enum Mode] for possible values."
msgstr ""
-#: doc/classes/RigidBody3D.xml:196
-msgid ""
-"Emitted when a body enters into contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work."
-msgstr ""
-
-#: doc/classes/RigidBody3D.xml:203
+#: doc/classes/RigidBody3D.xml:211
msgid ""
-"Emitted when a body shape exits contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work."
+"Emitted when a body shape exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody3D.xml:216
+#: doc/classes/RigidBody3D.xml:224
msgid ""
-"Emitted when a body enters into contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work.\n"
+"Emitted when a body enters into contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"This signal not only receives the body that collided with this one, but also "
"its [RID] ([code]body_id[/code]), the shape index from the colliding body "
"([code]body_shape[/code]), and the shape index from this body "
"([code]local_shape[/code]) the other body collided with."
msgstr ""
-#: doc/classes/RigidBody3D.xml:230
+#: doc/classes/RigidBody3D.xml:238
msgid ""
-"Emitted when a body shape exits contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work.\n"
+"Emitted when a body shape exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"This signal not only receives the body that stopped colliding with this one, "
"but also its [RID] ([code]body_id[/code]), the shape index from the "
"colliding body ([code]body_shape[/code]), and the shape index from this body "
"([code]local_shape[/code]) the other body stopped colliding with."
msgstr ""
-#: doc/classes/RigidBody3D.xml:243
+#: doc/classes/RigidBody3D.xml:251
msgid ""
"Rigid body mode. This is the \"natural\" state of a rigid body. It is "
"affected by forces, and can move, rotate, and be affected by user code."
msgstr ""
-#: doc/classes/RigidBody3D.xml:246
+#: doc/classes/RigidBody3D.xml:254
msgid ""
"Static mode. The body behaves like a [StaticBody3D], and can only move by "
"user code."
msgstr ""
-#: doc/classes/RigidBody3D.xml:249
+#: doc/classes/RigidBody3D.xml:257
msgid ""
"Character body mode. This behaves like a rigid body, but can not rotate."
msgstr ""
-#: doc/classes/RigidBody3D.xml:252
+#: doc/classes/RigidBody3D.xml:260
msgid ""
"Kinematic body mode. The body behaves like a [KinematicBody3D], and can only "
"move by user code."
@@ -45660,7 +46365,7 @@ msgstr ""
msgid "The time remaining."
msgstr ""
-#: doc/classes/SceneTreeTimer.xml:28 doc/classes/Timer.xml:62
+#: doc/classes/SceneTreeTimer.xml:28 doc/classes/Timer.xml:63
msgid "Emitted when the timer reaches 0."
msgstr ""
@@ -45783,27 +46488,27 @@ msgid ""
"the singleton using [method EditorInterface.get_script_editor]."
msgstr ""
-#: doc/classes/ScriptEditor.xml:40
+#: doc/classes/ScriptEditor.xml:46
msgid "Returns a [Script] that is currently active in editor."
msgstr ""
-#: doc/classes/ScriptEditor.xml:57
+#: doc/classes/ScriptEditor.xml:69
msgid ""
"Returns an array with all [Script] objects which are currently open in "
"editor."
msgstr ""
-#: doc/classes/ScriptEditor.xml:66
+#: doc/classes/ScriptEditor.xml:78
msgid "Goes to the specified line in the current script."
msgstr ""
-#: doc/classes/ScriptEditor.xml:85
+#: doc/classes/ScriptEditor.xml:113
msgid ""
"Emitted when user changed active script. Argument is a freshly activated "
"[Script]."
msgstr ""
-#: doc/classes/ScriptEditor.xml:92
+#: doc/classes/ScriptEditor.xml:120
msgid ""
"Emitted when editor is about to close the active script. Argument is a "
"[Script] that is going to be closed."
@@ -45865,7 +46570,7 @@ msgid ""
"visible."
msgstr ""
-#: doc/classes/ScrollContainer.xml:37 doc/classes/TextEdit.xml:453
+#: doc/classes/ScrollContainer.xml:37 doc/classes/TextEdit.xml:407
msgid "The current horizontal scroll value."
msgstr ""
@@ -45873,7 +46578,7 @@ msgstr ""
msgid "If [code]true[/code], enables horizontal scrolling."
msgstr ""
-#: doc/classes/ScrollContainer.xml:43 doc/classes/TextEdit.xml:456
+#: doc/classes/ScrollContainer.xml:43 doc/classes/TextEdit.xml:410
msgid "The current vertical scroll value."
msgstr ""
@@ -46392,7 +47097,7 @@ msgstr ""
msgid ""
"Sets the global pose transform, [code]pose[/code], for the bone at "
"[code]bone_idx[/code].\n"
-"[code]amount[/code] is the interpolation strengh that will be used when "
+"[code]amount[/code] is the interpolation strength that will be used when "
"applying the pose, and [code]persistent[/code] determines if the applied "
"pose will remain.\n"
"[b]Note[/b]: The pose transform needs to be in bone space. Use [method "
@@ -46409,7 +47114,7 @@ msgstr ""
#: doc/classes/Skeleton3D.xml:266
msgid ""
-"Returns the pose transform for bone [code]bone_idx[/code].\n"
+"Sets the pose transform for bone [code]bone_idx[/code].\n"
"[b]Note[/b]: The pose transform needs to be in bone space. Use [method "
"world_transform_to_bone_transform] to convert a world transform, like one "
"you can get from a [Node3D], to bone space."
@@ -46502,6 +47207,16 @@ msgstr ""
#: doc/classes/Sky.xml:52
msgid ""
+"Automatically selects the appropriate process mode based on your sky shader. "
+"If your shader uses [code]TIME[/code] or [code]POSITION[/code], this will "
+"use [constant PROCESS_MODE_REALTIME]. If your shader uses any of the "
+"[code]LIGHT_*[/code] variables or any custom uniforms, this uses [constant "
+"PROCESS_MODE_INCREMENTAL]. Otherwise, this defaults to [constant "
+"PROCESS_MODE_QUALITY]."
+msgstr ""
+
+#: doc/classes/Sky.xml:55
+msgid ""
"Uses high quality importance sampling to process the radiance map. In "
"general, this results in much higher quality than [constant "
"PROCESS_MODE_REALTIME] but takes much longer to generate. This should not be "
@@ -46511,10 +47226,22 @@ msgid ""
"ggx_samples]."
msgstr ""
-#: doc/classes/Sky.xml:55
+#: doc/classes/Sky.xml:58
+msgid ""
+"Uses the same high quality importance sampling to process the radiance map "
+"as [constant PROCESS_MODE_QUALITY], but updates over several frames. The "
+"number of frames is determined by [member ProjectSettings.rendering/quality/"
+"reflections/roughness_layers]. Use this when you need highest quality "
+"radiance maps, but have a sky that updates slowly."
+msgstr ""
+
+#: doc/classes/Sky.xml:61
msgid ""
"Uses the fast filtering algorithm to process the radiance map. In general "
-"this results in lower quality, but substantially faster run times.\n"
+"this results in lower quality, but substantially faster run times. If you "
+"need better quality, but still need to update the sky every frame, consider "
+"turning on [member ProjectSettings.rendering/quality/reflections/"
+"fast_filter_high_quality].\n"
"[b]Note:[/b] The fast filtering algorithm is limited to 256x256 cubemaps, so "
"[member radiance_size] must be set to [constant RADIANCE_SIZE_256]."
msgstr ""
@@ -46851,10 +47578,9 @@ msgid ""
msgstr ""
#: doc/classes/SpringArm3D.xml:35
-msgid ""
-"Returns the proportion between the current arm length (after checking for "
-"collisions) and the [member spring_length]. Ranges from 0 to 1."
-msgstr ""
+#, fuzzy
+msgid "Returns the spring arm's current length."
+msgstr "Retorna o seno do parâmetro."
#: doc/classes/SpringArm3D.xml:44
msgid ""
@@ -47549,7 +48275,7 @@ msgstr ""
msgid ""
"This is the built-in string class (and the one used by GDScript). It "
"supports Unicode and provides all necessary means for string handling. "
-"Strings are reference counted and use a copy-on-write approach, so passing "
+"Strings are reference-counted and use a copy-on-write approach, so passing "
"them around is cheap in resources."
msgstr ""
@@ -47704,26 +48430,32 @@ msgstr ""
#: doc/classes/String.xml:328
msgid ""
"Returns a copy of the string with escaped characters replaced by their "
-"meanings according to the C language standard."
+"meanings. Supported escape sequences are [code]\\'[/code], [code]\\\"[/"
+"code], [code]\\?[/code], [code]\\\\[/code], [code]\\a[/code], [code]\\b[/"
+"code], [code]\\f[/code], [code]\\n[/code], [code]\\r[/code], [code]\\t[/"
+"code], [code]\\v[/code].\n"
+"[b]Note:[/b] Unlike the GDScript parser, this method doesn't support the "
+"[code]\\uXXXX[/code] escape sequence."
msgstr ""
-#: doc/classes/String.xml:335
+#: doc/classes/String.xml:336
msgid ""
-"Changes the case of some letters. Replaces underscores with spaces, converts "
-"all letters to lowercase, then capitalizes first and every letter following "
-"the space character. For [code]capitalize camelCase mixed_with_underscores[/"
-"code], it will return [code]Capitalize Camelcase Mixed With Underscores[/"
+"Changes the case of some letters. Replaces underscores with spaces, adds "
+"spaces before in-word uppercase characters, converts all letters to "
+"lowercase, then capitalizes the first letter and every letter following a "
+"space character. For [code]capitalize camelCase mixed_with_underscores[/"
+"code], it will return [code]Capitalize Camel Case Mixed With Underscores[/"
"code]."
msgstr ""
-#: doc/classes/String.xml:344
+#: doc/classes/String.xml:345
msgid ""
"Performs a case-sensitive comparison to another string. Returns [code]-1[/"
"code] if less than, [code]+1[/code] if greater than, or [code]0[/code] if "
"equal."
msgstr ""
-#: doc/classes/String.xml:357
+#: doc/classes/String.xml:358
msgid ""
"Returns the number of occurrences of substring [code]what[/code] between "
"[code]from[/code] and [code]to[/code] positions. If [code]from[/code] and "
@@ -47731,7 +48463,7 @@ msgid ""
"code] equals 0 the remained substring will be used."
msgstr ""
-#: doc/classes/String.xml:370
+#: doc/classes/String.xml:371
msgid ""
"Returns the number of occurrences of substring [code]what[/code] (ignoring "
"case) between [code]from[/code] and [code]to[/code] positions. If "
@@ -47739,32 +48471,33 @@ msgid ""
"used. If only [code]to[/code] equals 0 the remained substring will be used."
msgstr ""
-#: doc/classes/String.xml:377
+#: doc/classes/String.xml:378
msgid ""
"Returns a copy of the string with indentation (leading tabs and spaces) "
"removed."
msgstr ""
-#: doc/classes/String.xml:384
+#: doc/classes/String.xml:385
msgid ""
"Returns [code]true[/code] if the length of the string equals [code]0[/code]."
msgstr ""
-#: doc/classes/String.xml:393
+#: doc/classes/String.xml:394
msgid "Returns [code]true[/code] if the string ends with the given string."
msgstr ""
-#: doc/classes/String.xml:404
+#: doc/classes/String.xml:405
msgid ""
"Erases [code]chars[/code] characters from the string starting from "
"[code]position[/code]."
msgstr ""
-#: doc/classes/String.xml:415
+#: doc/classes/String.xml:416
msgid ""
-"Finds the first occurrence of a substring. Returns the starting position of "
-"the substring or [code]-1[/code] if not found. Optionally, the initial "
-"search index can be passed.\n"
+"Returns the index of the [b]first[/b] case-sensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the end of the "
+"string.\n"
"[b]Note:[/b] If you just want to know whether a string contains a substring, "
"use the [code]in[/code] operator as follows:\n"
"[codeblock]\n"
@@ -47774,48 +48507,42 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:430
+#: doc/classes/String.xml:433
msgid ""
-"Finds the last occurrence of a substring. Returns the starting position of "
-"the substring or [code]-1[/code] if not found."
+"Returns the index of the [b]first[/b] case-insensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the end of the string."
msgstr ""
-#: doc/classes/String.xml:441
-msgid ""
-"Finds the first occurrence of a substring, ignoring case. Returns the "
-"starting position of the substring or [code]-1[/code] if not found. "
-"Optionally, the initial search index can be passed."
-msgstr ""
-
-#: doc/classes/String.xml:452
+#: doc/classes/String.xml:444
msgid ""
"Formats the string by replacing all occurrences of [code]placeholder[/code] "
"with [code]values[/code]."
msgstr ""
-#: doc/classes/String.xml:459
+#: doc/classes/String.xml:451
msgid "If the string is a valid file path, returns the base directory name."
msgstr ""
-#: doc/classes/String.xml:466
+#: doc/classes/String.xml:458
msgid ""
"If the string is a valid file path, returns the full file path without the "
"extension."
msgstr ""
-#: doc/classes/String.xml:473
+#: doc/classes/String.xml:465
msgid "If the string is a valid file path, returns the extension."
msgstr ""
-#: doc/classes/String.xml:480
+#: doc/classes/String.xml:472
msgid "If the string is a valid file path, returns the filename."
msgstr ""
-#: doc/classes/String.xml:487
+#: doc/classes/String.xml:479
msgid "Hashes the string and returns a 32-bit integer."
msgstr ""
-#: doc/classes/String.xml:494
+#: doc/classes/String.xml:486
msgid ""
"Converts a string containing a hexadecimal number into an integer. "
"Hexadecimal strings are expected to be prefixed with \"[code]0x[/code]\" "
@@ -47825,7 +48552,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:504
+#: doc/classes/String.xml:496
msgid ""
"Escapes (encodes) a string to URL friendly format. Also referred to as 'URL "
"encode'.\n"
@@ -47835,7 +48562,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:514
+#: doc/classes/String.xml:506
msgid ""
"Unescapes (decodes) a string in URL encoded format. Also referred to as 'URL "
"decode'.\n"
@@ -47845,7 +48572,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:526
+#: doc/classes/String.xml:518
msgid ""
"Converts [code]size[/code] represented as number of bytes to human-readable "
"format using internationalized set of data size units, namely: B, KiB, MiB, "
@@ -47858,48 +48585,48 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:542
+#: doc/classes/String.xml:534
msgid ""
"Returns a copy of the string with the substring [code]what[/code] inserted "
"at the given position."
msgstr ""
-#: doc/classes/String.xml:549
+#: doc/classes/String.xml:541
msgid ""
"If the string is a path to a file or directory, returns [code]true[/code] if "
"the path is absolute."
msgstr ""
-#: doc/classes/String.xml:556
+#: doc/classes/String.xml:548
msgid ""
"If the string is a path to a file or directory, returns [code]true[/code] if "
"the path is relative."
msgstr ""
-#: doc/classes/String.xml:565
+#: doc/classes/String.xml:557
msgid ""
"Returns [code]true[/code] if this string is a subsequence of the given "
"string."
msgstr ""
-#: doc/classes/String.xml:574
+#: doc/classes/String.xml:566
msgid ""
"Returns [code]true[/code] if this string is a subsequence of the given "
"string, without considering case."
msgstr ""
-#: doc/classes/String.xml:581
+#: doc/classes/String.xml:573
msgid ""
"Returns [code]true[/code] if this string is free from characters that aren't "
"allowed in file names, those being:\n"
"[code]: / \\ ? * \" | % < >[/code]"
msgstr ""
-#: doc/classes/String.xml:589
+#: doc/classes/String.xml:581
msgid "Returns [code]true[/code] if this string contains a valid float."
msgstr ""
-#: doc/classes/String.xml:598
+#: doc/classes/String.xml:590
msgid ""
"Returns [code]true[/code] if this string contains a valid hexadecimal "
"number. If [code]with_prefix[/code] is [code]true[/code], then a validity of "
@@ -47907,7 +48634,7 @@ msgid ""
"instance: [code]0xDEADC0DE[/code]."
msgstr ""
-#: doc/classes/String.xml:605
+#: doc/classes/String.xml:597
msgid ""
"Returns [code]true[/code] if this string contains a valid color in "
"hexadecimal HTML notation. Other HTML notations such as named colors or "
@@ -47915,22 +48642,22 @@ msgid ""
"return [code]false[/code]."
msgstr ""
-#: doc/classes/String.xml:612
+#: doc/classes/String.xml:604
msgid ""
"Returns [code]true[/code] if this string is a valid identifier. A valid "
"identifier may contain only letters, digits and underscores ([code]_[/code]) "
"and the first character may not be a digit."
msgstr ""
-#: doc/classes/String.xml:619
+#: doc/classes/String.xml:611
msgid "Returns [code]true[/code] if this string contains a valid integer."
msgstr ""
-#: doc/classes/String.xml:626
+#: doc/classes/String.xml:618
msgid "Returns [code]true[/code] if this string contains a valid IP address."
msgstr ""
-#: doc/classes/String.xml:635
+#: doc/classes/String.xml:627
msgid ""
"Return a [String] which is the concatenation of the [code]parts[/code]. The "
"separator between elements is the string providing this method.\n"
@@ -47940,121 +48667,125 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:646
+#: doc/classes/String.xml:638
msgid ""
"Returns a copy of the string with special characters escaped using the JSON "
"standard."
msgstr ""
-#: doc/classes/String.xml:655
+#: doc/classes/String.xml:647
msgid "Returns a number of characters from the left of the string."
msgstr ""
-#: doc/classes/String.xml:662
+#: doc/classes/String.xml:654
msgid "Returns the string's amount of characters."
msgstr ""
-#: doc/classes/String.xml:671
+#: doc/classes/String.xml:663
msgid "Returns a copy of the string with characters removed from the left."
msgstr ""
-#: doc/classes/String.xml:680
+#: doc/classes/String.xml:672
msgid ""
"Does a simple case-sensitive expression match, where [code]\"*\"[/code] "
"matches zero or more arbitrary characters and [code]\"?\"[/code] matches any "
"single character except a period ([code]\".\"[/code])."
msgstr ""
-#: doc/classes/String.xml:689
+#: doc/classes/String.xml:681
msgid ""
"Does a simple case-insensitive expression match, where [code]\"*\"[/code] "
"matches zero or more arbitrary characters and [code]\"?\"[/code] matches any "
"single character except a period ([code]\".\"[/code])."
msgstr ""
-#: doc/classes/String.xml:696
+#: doc/classes/String.xml:688
msgid "Returns the MD5 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:703
+#: doc/classes/String.xml:695
msgid "Returns the MD5 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:712
+#: doc/classes/String.xml:704
msgid ""
"Performs a case-insensitive comparison to another string. Returns [code]-1[/"
"code] if less than, [code]+1[/code] if greater than, or [code]0[/code] if "
"equal."
msgstr ""
-#: doc/classes/String.xml:721
+#: doc/classes/String.xml:713
msgid "Returns the character code at position [code]at[/code]."
msgstr ""
-#: doc/classes/String.xml:730
+#: doc/classes/String.xml:722
msgid ""
"Formats a number to have an exact number of [code]digits[/code] after the "
"decimal point."
msgstr ""
-#: doc/classes/String.xml:739
+#: doc/classes/String.xml:731
msgid ""
"Formats a number to have an exact number of [code]digits[/code] before the "
"decimal point."
msgstr ""
-#: doc/classes/String.xml:746
+#: doc/classes/String.xml:738
msgid "Decode a percent-encoded string. See [method percent_encode]."
msgstr ""
-#: doc/classes/String.xml:753
+#: doc/classes/String.xml:745
msgid ""
"Percent-encodes a string. Encodes parameters in a URL when sending a HTTP "
"GET request (and bodies of form-urlencoded POST requests)."
msgstr ""
-#: doc/classes/String.xml:762
+#: doc/classes/String.xml:754
msgid ""
"If the string is a path, this concatenates [code]file[/code] at the end of "
"the string as a subpath. E.g. [code]\"this/is\".plus_file(\"path\") == "
"\"this/is/path\"[/code]."
msgstr ""
-#: doc/classes/String.xml:771
+#: doc/classes/String.xml:763
msgid ""
"Returns original string repeated a number of times. The number of "
"repetitions is given by the argument."
msgstr ""
-#: doc/classes/String.xml:782
+#: doc/classes/String.xml:774
msgid ""
"Replaces occurrences of a case-sensitive substring with the given one inside "
"the string."
msgstr ""
-#: doc/classes/String.xml:793
+#: doc/classes/String.xml:785
msgid ""
"Replaces occurrences of a case-insensitive substring with the given one "
"inside the string."
msgstr ""
-#: doc/classes/String.xml:804
+#: doc/classes/String.xml:796
msgid ""
-"Performs a case-sensitive search for a substring, but starts from the end of "
-"the string instead of the beginning."
+"Returns the index of the [b]last[/b] case-sensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the beginning of the "
+"string."
msgstr ""
-#: doc/classes/String.xml:815
+#: doc/classes/String.xml:807
msgid ""
-"Performs a case-insensitive search for a substring, but starts from the end "
-"of the string instead of the beginning."
+"Returns the index of the [b]last[/b] case-insensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the beginning of the "
+"string."
msgstr ""
-#: doc/classes/String.xml:824
+#: doc/classes/String.xml:816
msgid "Returns the right side of the string from a given position."
msgstr ""
-#: doc/classes/String.xml:837
+#: doc/classes/String.xml:829
msgid ""
"Splits the string by a [code]delimiter[/code] string and returns an array of "
"the substrings, starting from right.\n"
@@ -48073,39 +48804,39 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:856
+#: doc/classes/String.xml:848
msgid "Returns a copy of the string with characters removed from the right."
msgstr ""
-#: doc/classes/String.xml:863
+#: doc/classes/String.xml:855
msgid "Returns the SHA-1 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:870
+#: doc/classes/String.xml:862
msgid "Returns the SHA-1 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:877
+#: doc/classes/String.xml:869
msgid "Returns the SHA-256 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:884
+#: doc/classes/String.xml:876
msgid "Returns the SHA-256 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:893
+#: doc/classes/String.xml:885
msgid ""
"Returns the similarity index of the text compared to this string. 1 means "
"totally similar and 0 means totally dissimilar."
msgstr ""
-#: doc/classes/String.xml:906
+#: doc/classes/String.xml:898
msgid ""
"Splits the string by a [code]delimiter[/code] string and returns an array of "
-"the substrings.\n"
+"the substrings. The [code]delimiter[/code] can be of any length.\n"
"If [code]maxsplit[/code] is specified, it defines the number of splits to do "
-"from the left up to [code]maxsplit[/code]. The default value of 0 means that "
-"all items are split.\n"
+"from the left up to [code]maxsplit[/code]. The default value of [code]0[/"
+"code] means that all items are split.\n"
"Example:\n"
"[codeblock]\n"
"var some_string = \"One,Two,Three,Four\"\n"
@@ -48113,10 +48844,12 @@ msgid ""
"print(some_array.size()) # Prints 2\n"
"print(some_array[0]) # Prints \"One\"\n"
"print(some_array[1]) # Prints \"Two,Three,Four\"\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"If you need to split strings with more complex rules, use the [RegEx] class "
+"instead."
msgstr ""
-#: doc/classes/String.xml:926
+#: doc/classes/String.xml:919
msgid ""
"Splits the string in floats by using a delimiter string and returns an array "
"of the substrings.\n"
@@ -48124,7 +48857,7 @@ msgid ""
"split by [code]\",\"[/code]."
msgstr ""
-#: doc/classes/String.xml:938
+#: doc/classes/String.xml:931
msgid ""
"Returns a copy of the string stripped of any non-printable character "
"(including tabulations, spaces and line breaks) at the beginning and the "
@@ -48132,7 +48865,7 @@ msgid ""
"right edges respectively."
msgstr ""
-#: doc/classes/String.xml:945
+#: doc/classes/String.xml:938
msgid ""
"Returns a copy of the string stripped of any escape character. These include "
"all non-printable control characters of the first page of the ASCII table (< "
@@ -48140,14 +48873,14 @@ msgid ""
"code] and [code]\\r[/code]) characters, but not spaces."
msgstr ""
-#: doc/classes/String.xml:956
+#: doc/classes/String.xml:949
msgid ""
"Returns part of the string from the position [code]from[/code] with length "
"[code]len[/code]. Argument [code]len[/code] is optional and using [code]-1[/"
"code] will return remaining characters from given position."
msgstr ""
-#: doc/classes/String.xml:963
+#: doc/classes/String.xml:956
msgid ""
"Converts the String (which is a character array) to [PackedByteArray] (which "
"is an array of bytes). The conversion is faster compared to [method "
@@ -48155,25 +48888,25 @@ msgid ""
"ASCII characters."
msgstr ""
-#: doc/classes/String.xml:970
+#: doc/classes/String.xml:963
msgid ""
"Converts a string containing a decimal number into a [code]float[/code]."
msgstr ""
-#: doc/classes/String.xml:977
+#: doc/classes/String.xml:970
msgid ""
"Converts a string containing an integer number into an [code]int[/code]."
msgstr ""
-#: doc/classes/String.xml:984
+#: doc/classes/String.xml:977
msgid "Returns the string converted to lowercase."
msgstr ""
-#: doc/classes/String.xml:991
+#: doc/classes/String.xml:984
msgid "Returns the string converted to uppercase."
msgstr ""
-#: doc/classes/String.xml:998
+#: doc/classes/String.xml:991
msgid ""
"Converts the String (which is an array of characters) to [PackedByteArray] "
"(which is an array of bytes). The conversion is a bit slower than [method "
@@ -48181,25 +48914,25 @@ msgid ""
"this function over [method to_ascii]."
msgstr ""
-#: doc/classes/String.xml:1007
+#: doc/classes/String.xml:1000
msgid ""
"Removes a given string from the start if it starts with it or leaves the "
"string unchanged."
msgstr ""
-#: doc/classes/String.xml:1016
+#: doc/classes/String.xml:1009
msgid ""
"Removes a given string from the end if it ends with it or leaves the string "
"unchanged."
msgstr ""
-#: doc/classes/String.xml:1023
+#: doc/classes/String.xml:1016
msgid ""
"Returns a copy of the string with special characters escaped using the XML "
"standard."
msgstr ""
-#: doc/classes/String.xml:1030
+#: doc/classes/String.xml:1023
msgid ""
"Returns a copy of the string with escaped characters replaced by their "
"meanings according to the XML standard."
@@ -49431,50 +50164,42 @@ msgid ""
"undo/redo."
msgstr ""
-#: doc/classes/TextEdit.xml:24
-msgid "Adds color region (given the delimiters) and its colors."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:35
-msgid "Adds a [code]keyword[/code] and its [Color]."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:44
+#: doc/classes/TextEdit.xml:18
msgid ""
"Returns if the given line is foldable, that is, it has indented lines right "
"below it."
msgstr ""
-#: doc/classes/TextEdit.xml:57
+#: doc/classes/TextEdit.xml:25
msgid ""
-"Clears all custom syntax coloring information previously added with [method "
-"add_color_region] or [method add_keyword_color]."
+"Centers the viewport on the line the editing cursor is at. This also resets "
+"the [member scroll_horizontal] value to [code]0[/code]."
msgstr ""
-#: doc/classes/TextEdit.xml:64
+#: doc/classes/TextEdit.xml:32
msgid "Clears the undo history."
msgstr ""
-#: doc/classes/TextEdit.xml:71
+#: doc/classes/TextEdit.xml:39
msgid "Copy's the current text selection."
msgstr ""
-#: doc/classes/TextEdit.xml:78
+#: doc/classes/TextEdit.xml:46
msgid "Returns the column the editing cursor is at."
msgstr ""
-#: doc/classes/TextEdit.xml:85
+#: doc/classes/TextEdit.xml:53
msgid "Returns the line the editing cursor is at."
msgstr ""
-#: doc/classes/TextEdit.xml:96
+#: doc/classes/TextEdit.xml:64
msgid ""
"Moves the cursor at the specified [code]column[/code] index.\n"
"If [code]adjust_viewport[/code] is set to [code]true[/code], the viewport "
"will center at the cursor position after the move occurs."
msgstr ""
-#: doc/classes/TextEdit.xml:112
+#: doc/classes/TextEdit.xml:80
msgid ""
"Moves the cursor at the specified [code]line[/code] index.\n"
"If [code]adjust_viewport[/code] is set to [code]true[/code], the viewport "
@@ -49483,111 +50208,101 @@ msgid ""
"[code]line[/code] can be hidden using [method set_line_as_hidden]."
msgstr ""
-#: doc/classes/TextEdit.xml:121
+#: doc/classes/TextEdit.xml:89
msgid "Cut's the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:128
+#: doc/classes/TextEdit.xml:96
msgid "Deselects the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:135
+#: doc/classes/TextEdit.xml:103
msgid "Folds all lines that are possible to be folded (see [method can_fold])."
msgstr ""
-#: doc/classes/TextEdit.xml:144
+#: doc/classes/TextEdit.xml:112
msgid "Folds the given line, if possible (see [method can_fold])."
msgstr ""
-#: doc/classes/TextEdit.xml:151
+#: doc/classes/TextEdit.xml:119
msgid "Returns an array containing the line number of each breakpoint."
msgstr ""
-#: doc/classes/TextEdit.xml:160
-msgid "Returns the [Color] of the specified [code]keyword[/code]."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:169
+#: doc/classes/TextEdit.xml:128
msgid "Returns the text of a specific line."
msgstr ""
-#: doc/classes/TextEdit.xml:176
+#: doc/classes/TextEdit.xml:135
msgid "Returns the amount of total lines in the text."
msgstr ""
-#: doc/classes/TextEdit.xml:183
+#: doc/classes/TextEdit.xml:142
msgid ""
"Returns the [PopupMenu] of this [TextEdit]. By default, this menu is "
"displayed when right-clicking on the [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:190
+#: doc/classes/TextEdit.xml:149
msgid "Returns the selection begin column."
msgstr ""
-#: doc/classes/TextEdit.xml:197
+#: doc/classes/TextEdit.xml:156
msgid "Returns the selection begin line."
msgstr ""
-#: doc/classes/TextEdit.xml:204
+#: doc/classes/TextEdit.xml:163
msgid "Returns the text inside the selection."
msgstr ""
-#: doc/classes/TextEdit.xml:211
+#: doc/classes/TextEdit.xml:170
msgid "Returns the selection end column."
msgstr ""
-#: doc/classes/TextEdit.xml:218
+#: doc/classes/TextEdit.xml:177
msgid "Returns the selection end line."
msgstr ""
-#: doc/classes/TextEdit.xml:225
+#: doc/classes/TextEdit.xml:184
msgid "Returns a [String] text with the word under the mouse cursor location."
msgstr ""
-#: doc/classes/TextEdit.xml:234
-msgid ""
-"Returns whether the specified [code]keyword[/code] has a color set to it or "
-"not."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:243
+#: doc/classes/TextEdit.xml:193
msgid "Insert the specified text at the cursor position."
msgstr ""
-#: doc/classes/TextEdit.xml:252
+#: doc/classes/TextEdit.xml:202
msgid "Returns whether the line at the specified index is folded or not."
msgstr ""
-#: doc/classes/TextEdit.xml:261
+#: doc/classes/TextEdit.xml:211
msgid "Returns whether the line at the specified index is hidden or not."
msgstr ""
-#: doc/classes/TextEdit.xml:268
+#: doc/classes/TextEdit.xml:218
msgid "Returns [code]true[/code] if the selection is active."
msgstr ""
-#: doc/classes/TextEdit.xml:277
+#: doc/classes/TextEdit.xml:227
msgid ""
"Triggers a right-click menu action by the specified index. See [enum "
"MenuItems] for a list of available indexes."
msgstr ""
-#: doc/classes/TextEdit.xml:284
+#: doc/classes/TextEdit.xml:234
msgid "Paste the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:291
+#: doc/classes/TextEdit.xml:241
msgid "Perform redo operation."
msgstr ""
-#: doc/classes/TextEdit.xml:298
+#: doc/classes/TextEdit.xml:248
msgid ""
"Removes all the breakpoints. This will not fire the [signal "
"breakpoint_toggled] signal."
msgstr ""
-#: doc/classes/TextEdit.xml:313
+#: doc/classes/TextEdit.xml:263
msgid ""
"Perform a search inside the text. Search flags can be specified in the [enum "
"SearchFlags] enum.\n"
@@ -49603,244 +50318,265 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/TextEdit.xml:336
-msgid "Perform selection, from line/column to line/column."
+#: doc/classes/TextEdit.xml:286
+msgid ""
+"Perform selection, from line/column to line/column.\n"
+"If [member selecting_enabled] is [code]false[/code], no selection will occur."
msgstr ""
-#: doc/classes/TextEdit.xml:343
-msgid "Select all the text."
+#: doc/classes/TextEdit.xml:294
+msgid ""
+"Select all the text.\n"
+"If [member selecting_enabled] is [code]false[/code], no selection will occur."
msgstr ""
-#: doc/classes/TextEdit.xml:354
+#: doc/classes/TextEdit.xml:306
msgid "Sets the text for a specific line."
msgstr ""
-#: doc/classes/TextEdit.xml:365
+#: doc/classes/TextEdit.xml:317
msgid "If [code]true[/code], hides the line of the specified index."
msgstr ""
-#: doc/classes/TextEdit.xml:374
+#: doc/classes/TextEdit.xml:326
msgid "Toggle the folding of the code block at the given line."
msgstr ""
-#: doc/classes/TextEdit.xml:381
+#: doc/classes/TextEdit.xml:333
msgid "Perform undo operation."
msgstr ""
-#: doc/classes/TextEdit.xml:390
+#: doc/classes/TextEdit.xml:342
msgid "Unfolds the given line, if folded."
msgstr ""
-#: doc/classes/TextEdit.xml:397
+#: doc/classes/TextEdit.xml:349
msgid ""
"Unhide all lines that were previously set to hidden by [method "
"set_line_as_hidden]."
msgstr ""
-#: doc/classes/TextEdit.xml:403
+#: doc/classes/TextEdit.xml:355
msgid "If [code]true[/code], the breakpoint gutter is visible."
msgstr ""
-#: doc/classes/TextEdit.xml:412
+#: doc/classes/TextEdit.xml:364
msgid ""
"If [code]true[/code], the caret displays as a rectangle.\n"
"If [code]false[/code], the caret displays as a bar."
msgstr ""
-#: doc/classes/TextEdit.xml:416
+#: doc/classes/TextEdit.xml:368
msgid ""
"If [code]true[/code], a right-click moves the cursor at the mouse position "
"before displaying the context menu.\n"
"If [code]false[/code], the context menu disregards mouse location."
msgstr ""
-#: doc/classes/TextEdit.xml:420
+#: doc/classes/TextEdit.xml:372
msgid "If [code]true[/code], a right-click displays the context menu."
msgstr ""
-#: doc/classes/TextEdit.xml:423
+#: doc/classes/TextEdit.xml:375
msgid ""
"If [code]true[/code], the \"space\" character will have a visible "
"representation."
msgstr ""
-#: doc/classes/TextEdit.xml:426
+#: doc/classes/TextEdit.xml:378
msgid ""
"If [code]true[/code], the \"tab\" character will have a visible "
"representation."
msgstr ""
-#: doc/classes/TextEdit.xml:430
+#: doc/classes/TextEdit.xml:382
msgid ""
"If [code]true[/code], the fold gutter is visible. This enables folding "
"groups of indented lines."
msgstr ""
-#: doc/classes/TextEdit.xml:433
+#: doc/classes/TextEdit.xml:385
msgid ""
"If [code]true[/code], all lines that have been set to hidden by [method "
"set_line_as_hidden], will not be visible."
msgstr ""
-#: doc/classes/TextEdit.xml:436
+#: doc/classes/TextEdit.xml:388
msgid ""
"If [code]true[/code], all occurrences of the selected text will be "
"highlighted."
msgstr ""
-#: doc/classes/TextEdit.xml:439
+#: doc/classes/TextEdit.xml:391
msgid "If [code]true[/code], the line containing the cursor is highlighted."
msgstr ""
-#: doc/classes/TextEdit.xml:447
+#: doc/classes/TextEdit.xml:394
+msgid ""
+"If [code]true[/code], a minimap is shown, providing an outline of your "
+"source code."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:397
+msgid "The width, in pixels, of the minimap."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:401
msgid ""
"If [code]true[/code], custom [code]font_color_selected[/code] will be used "
"for selected text."
msgstr ""
-#: doc/classes/TextEdit.xml:450
+#: doc/classes/TextEdit.xml:404
msgid ""
"If [code]true[/code], read-only mode is enabled. Existing text cannot be "
"modified and new text cannot be added."
msgstr ""
-#: doc/classes/TextEdit.xml:463
+#: doc/classes/TextEdit.xml:413
msgid ""
-"If [code]true[/code], line numbers are displayed to the left of the text."
+"If [code]true[/code], text can be selected.\n"
+"If [code]false[/code], text can not be selected by the user or by the "
+"[method select] or [method select_all] methods."
msgstr ""
-#: doc/classes/TextEdit.xml:466
+#: doc/classes/TextEdit.xml:417
msgid ""
-"If [code]true[/code], sets the [code]step[/code] of the scrollbars to "
-"[code]0.25[/code] which results in smoother scrolling."
+"If [code]true[/code], shortcut keys for context menu items are enabled, even "
+"if the context menu is disabled."
msgstr ""
-#: doc/classes/TextEdit.xml:469
+#: doc/classes/TextEdit.xml:420
msgid ""
-"If [code]true[/code], any custom color properties that have been set for "
-"this [TextEdit] will be visible."
+"If [code]true[/code], line numbers are displayed to the left of the text."
msgstr ""
-#: doc/classes/TextEdit.xml:472
+#: doc/classes/TextEdit.xml:423
+msgid ""
+"If [code]true[/code], sets the [code]step[/code] of the scrollbars to "
+"[code]0.25[/code] which results in smoother scrolling."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:428
msgid "String value of the [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:475
+#: doc/classes/TextEdit.xml:431
msgid "Vertical scroll sensitivity."
msgstr ""
-#: doc/classes/TextEdit.xml:478
+#: doc/classes/TextEdit.xml:437
msgid ""
"If [code]true[/code], enables text wrapping when it goes beyond the edge of "
"what is visible."
msgstr ""
-#: doc/classes/TextEdit.xml:486
+#: doc/classes/TextEdit.xml:445
msgid "Emitted when a breakpoint is placed via the breakpoint gutter."
msgstr ""
-#: doc/classes/TextEdit.xml:491
+#: doc/classes/TextEdit.xml:450
msgid "Emitted when the cursor changes."
msgstr ""
-#: doc/classes/TextEdit.xml:500
+#: doc/classes/TextEdit.xml:459
msgid "Emitted when the info icon is clicked."
msgstr ""
-#: doc/classes/TextEdit.xml:531
+#: doc/classes/TextEdit.xml:496
msgid "Match case when searching."
msgstr ""
-#: doc/classes/TextEdit.xml:534
+#: doc/classes/TextEdit.xml:499
msgid "Match whole words when searching."
msgstr ""
-#: doc/classes/TextEdit.xml:537
+#: doc/classes/TextEdit.xml:502
msgid "Search from end to beginning."
msgstr ""
-#: doc/classes/TextEdit.xml:546
+#: doc/classes/TextEdit.xml:511
msgid ""
"Pastes the clipboard text over the selected text (or at the cursor's "
"position)."
msgstr ""
-#: doc/classes/TextEdit.xml:549
+#: doc/classes/TextEdit.xml:514
msgid "Erases the whole [TextEdit] text."
msgstr ""
-#: doc/classes/TextEdit.xml:552
+#: doc/classes/TextEdit.xml:517
msgid "Selects the whole [TextEdit] text."
msgstr ""
-#: doc/classes/TextEdit.xml:558
+#: doc/classes/TextEdit.xml:523
msgid "Redoes the previous action."
msgstr ""
-#: doc/classes/TextEdit.xml:566
+#: doc/classes/TextEdit.xml:531
msgid ""
"Sets the background [Color] of this [TextEdit]. [member syntax_highlighting] "
"has to be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:569
+#: doc/classes/TextEdit.xml:534
msgid ""
"Sets the [Color] of the bookmark marker. [member syntax_highlighting] has to "
"be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:574 doc/classes/TextEdit.xml:601
+#: doc/classes/TextEdit.xml:539 doc/classes/TextEdit.xml:566
msgid ""
"Sets the [Color] of the breakpoints. [member breakpoint_gutter] has to be "
"enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:612
+#: doc/classes/TextEdit.xml:577
msgid "Sets the default [Font]."
msgstr ""
-#: doc/classes/TextEdit.xml:615
+#: doc/classes/TextEdit.xml:580
msgid "Sets the font [Color]."
msgstr ""
-#: doc/classes/TextEdit.xml:620
+#: doc/classes/TextEdit.xml:585
msgid ""
"Sets the [Color] of the selected text. [member override_selected_font_color] "
"has to be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:625
+#: doc/classes/TextEdit.xml:588
msgid ""
"Sets the [Color] of the line numbers. [member show_line_numbers] has to be "
"enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:628
+#: doc/classes/TextEdit.xml:591
msgid "Sets the spacing between the lines."
msgstr ""
-#: doc/classes/TextEdit.xml:631
+#: doc/classes/TextEdit.xml:594
msgid "Sets the [Color] of marked text."
msgstr ""
-#: doc/classes/TextEdit.xml:636
+#: doc/classes/TextEdit.xml:597
msgid "Sets the [StyleBox] of this [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:641
+#: doc/classes/TextEdit.xml:600
msgid ""
"Sets the [StyleBox] of this [TextEdit] when [member readonly] is enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:646
+#: doc/classes/TextEdit.xml:605
msgid "Sets the highlight [Color] of text selections."
msgstr ""
-#: doc/classes/TextEdit.xml:653
+#: doc/classes/TextEdit.xml:610
msgid "Sets a custom [Texture2D] for tab text characters."
msgstr ""
-#: doc/classes/TextEdit.xml:656
+#: doc/classes/TextEdit.xml:613
msgid ""
"Sets the highlight [Color] of multiple occurrences. [member "
"highlight_all_occurrences] has to be enabled."
@@ -49918,80 +50654,80 @@ msgid ""
"the texture will not scale with the node."
msgstr ""
-#: doc/classes/TextureButton.xml:19
+#: doc/classes/TextureButton.xml:25
msgid ""
"Controls the texture's behavior when you resize the node's bounding "
"rectangle, [b]only if[/b] [member expand] is [code]true[/code]. Set it to "
"one of the [enum StretchMode] constants. See the constants to learn more."
msgstr ""
-#: doc/classes/TextureButton.xml:22
+#: doc/classes/TextureButton.xml:28
msgid ""
"Pure black and white [BitMap] image to use for click detection. On the mask, "
"white pixels represent the button's clickable area. Use it to create buttons "
"with curved shapes."
msgstr ""
-#: doc/classes/TextureButton.xml:25
+#: doc/classes/TextureButton.xml:31
msgid ""
"Texture to display when the node is disabled. See [member BaseButton."
"disabled]."
msgstr ""
-#: doc/classes/TextureButton.xml:28
+#: doc/classes/TextureButton.xml:34
msgid "Texture to display when the node has mouse or keyboard focus."
msgstr ""
-#: doc/classes/TextureButton.xml:31
+#: doc/classes/TextureButton.xml:37
msgid "Texture to display when the mouse hovers the node."
msgstr ""
-#: doc/classes/TextureButton.xml:34
+#: doc/classes/TextureButton.xml:40
msgid ""
"Texture to display by default, when the node is [b]not[/b] in the disabled, "
"focused, hover or pressed state."
msgstr ""
-#: doc/classes/TextureButton.xml:37
+#: doc/classes/TextureButton.xml:43
msgid ""
"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 "
"[member BaseButton.shortcut] key."
msgstr ""
-#: doc/classes/TextureButton.xml:42 doc/classes/TextureRect.xml:36
+#: doc/classes/TextureButton.xml:48 doc/classes/TextureRect.xml:36
msgid "Scale to fit the node's bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:45 doc/classes/TextureRect.xml:39
+#: doc/classes/TextureButton.xml:51 doc/classes/TextureRect.xml:39
msgid "Tile inside the node's bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:48 doc/classes/TextureRect.xml:42
+#: doc/classes/TextureButton.xml:54 doc/classes/TextureRect.xml:42
msgid ""
"The texture keeps its original size and stays in the bounding rectangle's "
"top-left corner."
msgstr ""
-#: doc/classes/TextureButton.xml:51 doc/classes/TextureRect.xml:45
+#: doc/classes/TextureButton.xml:57 doc/classes/TextureRect.xml:45
msgid ""
"The texture keeps its original size and stays centered in the node's "
"bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:54 doc/classes/TextureRect.xml:48
+#: doc/classes/TextureButton.xml:60 doc/classes/TextureRect.xml:48
msgid ""
"Scale the texture to fit the node's bounding rectangle, but maintain the "
"texture's aspect ratio."
msgstr ""
-#: doc/classes/TextureButton.xml:57
+#: doc/classes/TextureButton.xml:63
msgid ""
"Scale the texture to fit the node's bounding rectangle, center it, and "
"maintain its aspect ratio."
msgstr ""
-#: doc/classes/TextureButton.xml:60 doc/classes/TextureRect.xml:54
+#: doc/classes/TextureButton.xml:66 doc/classes/TextureRect.xml:54
msgid ""
"Scale the texture so that the shorter side fits the bounding rectangle. The "
"other side clips to the node's limits."
@@ -50441,19 +51177,25 @@ msgid ""
"advised if working with shared objects."
msgstr ""
-#: doc/classes/Thread.xml:17
+#: doc/classes/Thread.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/threads/thread_safe_apis."
+"html"
+msgstr ""
+
+#: doc/classes/Thread.xml:18
msgid ""
"Returns the current [Thread]'s ID, uniquely identifying it among all threads."
msgstr ""
-#: doc/classes/Thread.xml:24
+#: doc/classes/Thread.xml:25
msgid ""
"Returns [code]true[/code] if this [Thread] is currently active. An active "
"[Thread] cannot start work on a new method but can be joined with [method "
"wait_to_finish]."
msgstr ""
-#: doc/classes/Thread.xml:39
+#: doc/classes/Thread.xml:40
msgid ""
"Starts a new [Thread] that runs [code]method[/code] on object "
"[code]instance[/code] with [code]userdata[/code] passed as an argument. Even "
@@ -50463,21 +51205,21 @@ msgid ""
"Returns [constant OK] on success, or [constant ERR_CANT_CREATE] on failure."
msgstr ""
-#: doc/classes/Thread.xml:47
+#: doc/classes/Thread.xml:48
msgid ""
"Joins the [Thread] and waits for it to finish. Returns what the method "
"called returned."
msgstr ""
-#: doc/classes/Thread.xml:53
+#: doc/classes/Thread.xml:54
msgid "A thread running with lower priority than normally."
msgstr ""
-#: doc/classes/Thread.xml:56
+#: doc/classes/Thread.xml:57
msgid "A thread with a standard priority."
msgstr ""
-#: doc/classes/Thread.xml:59
+#: doc/classes/Thread.xml:60
msgid "A thread running with higher priority than normally."
msgstr ""
@@ -51012,50 +51754,61 @@ msgid "Returns the [Transform2D] of a tile's shape."
msgstr ""
#: doc/classes/TileSet.xml:481
-msgid "Returns an array of the tile's shapes."
+msgid ""
+"Returns an array of dictionaries describing the tile's shapes.\n"
+"[b]Dictionary structure in the array returned by this method:[/b]\n"
+"[codeblock]\n"
+"{\n"
+" \"autotile_coord\": Vector2,\n"
+" \"one_way\": bool,\n"
+" \"one_way_margin\": int,\n"
+" \"shape\": CollisionShape2D,\n"
+" \"shape_transform\": Transform2D,\n"
+"}\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/TileSet.xml:490
+#: doc/classes/TileSet.xml:500
msgid "Returns the tile's texture."
msgstr ""
-#: doc/classes/TileSet.xml:499
+#: doc/classes/TileSet.xml:509
msgid "Returns the texture offset of the tile."
msgstr ""
-#: doc/classes/TileSet.xml:508
+#: doc/classes/TileSet.xml:518
msgid "Returns the tile's [enum TileMode]."
msgstr ""
-#: doc/classes/TileSet.xml:517
+#: doc/classes/TileSet.xml:527
msgid "Returns the tile's Z index (drawing layer)."
msgstr ""
-#: doc/classes/TileSet.xml:528
+#: doc/classes/TileSet.xml:538
msgid "Sets a light occluder for the tile."
msgstr ""
-#: doc/classes/TileSet.xml:539
+#: doc/classes/TileSet.xml:549
msgid "Sets the tile's material."
msgstr ""
-#: doc/classes/TileSet.xml:550
+#: doc/classes/TileSet.xml:560
msgid "Sets the tile's modulation color."
msgstr ""
-#: doc/classes/TileSet.xml:561
+#: doc/classes/TileSet.xml:571
msgid "Sets the tile's name."
msgstr ""
-#: doc/classes/TileSet.xml:572
+#: doc/classes/TileSet.xml:582
msgid "Sets the tile's navigation polygon."
msgstr ""
-#: doc/classes/TileSet.xml:583
+#: doc/classes/TileSet.xml:593
msgid "Sets an offset for the tile's navigation polygon."
msgstr ""
-#: doc/classes/TileSet.xml:594
+#: doc/classes/TileSet.xml:604
msgid ""
"Sets the tile's normal map texture.\n"
"[b]Note:[/b] Godot expects the normal map to use X+, Y-, and Z+ coordinates. "
@@ -51064,48 +51817,48 @@ msgid ""
"a comparison of normal map coordinates expected by popular engines."
msgstr ""
-#: doc/classes/TileSet.xml:606
+#: doc/classes/TileSet.xml:616
msgid "Sets an offset for the tile's light occluder."
msgstr ""
-#: doc/classes/TileSet.xml:617
+#: doc/classes/TileSet.xml:627
msgid ""
"Sets the tile's sub-region in the texture. This is common in texture atlases."
msgstr ""
-#: doc/classes/TileSet.xml:630
+#: doc/classes/TileSet.xml:640
msgid "Sets a shape for the tile, enabling collision."
msgstr ""
-#: doc/classes/TileSet.xml:643
+#: doc/classes/TileSet.xml:653
msgid "Sets the offset of a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:656
+#: doc/classes/TileSet.xml:666
msgid "Enables one-way collision on a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:681
+#: doc/classes/TileSet.xml:691
msgid "Sets a [Transform2D] on a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:692
+#: doc/classes/TileSet.xml:702
msgid "Sets an array of shapes for the tile, enabling collision."
msgstr ""
-#: doc/classes/TileSet.xml:703
+#: doc/classes/TileSet.xml:713
msgid "Sets the tile's texture."
msgstr ""
-#: doc/classes/TileSet.xml:714
+#: doc/classes/TileSet.xml:724
msgid "Sets the tile's texture offset."
msgstr ""
-#: doc/classes/TileSet.xml:725
+#: doc/classes/TileSet.xml:735
msgid "Sets the tile's [enum TileMode]."
msgstr ""
-#: doc/classes/TileSet.xml:736
+#: doc/classes/TileSet.xml:746
msgid "Sets the tile's drawing index."
msgstr ""
@@ -51116,14 +51869,16 @@ msgstr ""
#: doc/classes/Timer.xml:7
msgid ""
"Counts down a specified interval and emits a signal on reaching 0. Can be "
-"set to repeat or \"one-shot\" mode."
+"set to repeat or \"one-shot\" mode.\n"
+"[b]Note:[/b] To create an one-shot timer without instantiating a node, use "
+"[method SceneTree.create_timer]."
msgstr ""
-#: doc/classes/Timer.xml:16
+#: doc/classes/Timer.xml:17
msgid "Returns [code]true[/code] if the timer is stopped."
msgstr ""
-#: doc/classes/Timer.xml:25
+#: doc/classes/Timer.xml:26
msgid ""
"Starts the timer. Sets [code]wait_time[/code] to [code]time_sec[/code] if "
"[code]time_sec > 0[/code]. This also resets the remaining time to "
@@ -51131,11 +51886,11 @@ msgid ""
"[b]Note:[/b] this method will not resume a paused timer. See [member paused]."
msgstr ""
-#: doc/classes/Timer.xml:33
+#: doc/classes/Timer.xml:34
msgid "Stops the timer."
msgstr ""
-#: doc/classes/Timer.xml:39
+#: doc/classes/Timer.xml:40
msgid ""
"If [code]true[/code], the timer will automatically start when entering the "
"scene tree.\n"
@@ -51143,40 +51898,40 @@ msgid ""
"the timer enters the scene tree and starts."
msgstr ""
-#: doc/classes/Timer.xml:43
+#: doc/classes/Timer.xml:44
msgid ""
"If [code]true[/code], the timer will stop when reaching 0. If [code]false[/"
"code], it will restart."
msgstr ""
-#: doc/classes/Timer.xml:46
+#: doc/classes/Timer.xml:47
msgid ""
"If [code]true[/code], the timer is paused and will not process until it is "
"unpaused again, even if [method start] is called."
msgstr ""
-#: doc/classes/Timer.xml:49
+#: doc/classes/Timer.xml:50
msgid "Processing mode. See [enum TimerProcessMode]."
msgstr ""
-#: doc/classes/Timer.xml:52
+#: doc/classes/Timer.xml:53
msgid ""
"The timer's remaining time in seconds. Returns 0 if the timer is inactive.\n"
"[b]Note:[/b] You cannot set this value. To change the timer's remaining "
"time, use [method start]."
msgstr ""
-#: doc/classes/Timer.xml:56
+#: doc/classes/Timer.xml:57
msgid "Wait time in seconds."
msgstr ""
-#: doc/classes/Timer.xml:68
+#: doc/classes/Timer.xml:69
msgid ""
"Update the timer during the physics step at each frame (fixed framerate "
"processing)."
msgstr ""
-#: doc/classes/Timer.xml:71
+#: doc/classes/Timer.xml:72
msgid "Update the timer during the idle time at each frame."
msgstr ""
@@ -51255,60 +52010,66 @@ msgstr ""
#: doc/classes/Transform.xml:7
msgid ""
-"Represents one or many transformations in 3D space such as translation, "
-"rotation, or scaling. It consists of a [member basis] and an [member "
-"origin]. It is similar to a 3×4 matrix."
+"3×4 matrix (3 rows, 4 columns) used for 3D linear transformations. It can "
+"represent transformations such as translation, rotation, or scaling. It "
+"consists of a [member basis] (first 3 columns) and a [Vector3] for the "
+"[member origin] (last column).\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
msgstr ""
-#: doc/classes/Transform.xml:26
+#: doc/classes/Transform.xml:28
msgid ""
-"Constructs the Transform from four [Vector3]. Each axis corresponds to local "
-"basis vectors (some of which may be scaled)."
+"Constructs a Transform from four [Vector3] values (matrix columns). Each "
+"axis corresponds to local basis vectors (some of which may be scaled)."
msgstr ""
-#: doc/classes/Transform.xml:37
-msgid "Constructs the Transform from a [Basis] and [Vector3]."
+#: doc/classes/Transform.xml:39
+msgid "Constructs a Transform from a [Basis] and [Vector3]."
msgstr ""
-#: doc/classes/Transform.xml:46
-msgid "Constructs the Transform from a [Transform2D]."
+#: doc/classes/Transform.xml:48
+msgid "Constructs a Transform from a [Transform2D]."
msgstr ""
-#: doc/classes/Transform.xml:55
+#: doc/classes/Transform.xml:57
msgid ""
-"Constructs the Transform from a [Quat]. The origin will be Vector3(0, 0, 0)."
+"Constructs a Transform from a [Quat]. The origin will be [code]Vector3(0, 0, "
+"0)[/code]."
msgstr ""
-#: doc/classes/Transform.xml:64
+#: doc/classes/Transform.xml:66
msgid ""
"Constructs the Transform from a [Basis]. The origin will be Vector3(0, 0, 0)."
msgstr ""
-#: doc/classes/Transform.xml:71
+#: doc/classes/Transform.xml:73 doc/classes/Transform2D.xml:51
msgid ""
"Returns the inverse of the transform, under the assumption that the "
"transformation is composed of rotation, scaling and translation."
msgstr ""
-#: doc/classes/Transform.xml:82
-msgid "Interpolates the transform to other Transform by weight amount (0-1)."
+#: doc/classes/Transform.xml:84
+msgid ""
+"Interpolates the transform to other Transform by weight amount (on the range "
+"of 0.0 to 1.0)."
msgstr ""
-#: doc/classes/Transform.xml:89 doc/classes/Transform2D.xml:106
+#: doc/classes/Transform.xml:91
msgid ""
"Returns the inverse of the transform, under the assumption that the "
"transformation is composed of rotation and translation (no scaling, use "
"affine_inverse for transforms with scaling)."
msgstr ""
-#: doc/classes/Transform.xml:98 doc/classes/Transform2D.xml:115
+#: doc/classes/Transform.xml:100 doc/classes/Transform2D.xml:119
msgid ""
"Returns [code]true[/code] if this transform and [code]transform[/code] are "
"approximately equal, by calling [code]is_equal_approx[/code] on each "
"component."
msgstr ""
-#: doc/classes/Transform.xml:109
+#: doc/classes/Transform.xml:111
msgid ""
"Returns a copy of the transform rotated such that its -Z axis points towards "
"the [code]target[/code] position.\n"
@@ -51318,25 +52079,25 @@ msgid ""
"Operations take place in global space."
msgstr ""
-#: doc/classes/Transform.xml:118 doc/classes/Transform2D.xml:122
+#: doc/classes/Transform.xml:120
msgid ""
"Returns the transform with the basis orthogonal (90 degrees), and normalized "
"axis vectors."
msgstr ""
-#: doc/classes/Transform.xml:129
+#: doc/classes/Transform.xml:131
msgid ""
"Rotates the transform around the given axis by the given angle (in radians), "
"using matrix multiplication. The axis must be a normalized vector."
msgstr ""
-#: doc/classes/Transform.xml:138
+#: doc/classes/Transform.xml:140
msgid ""
"Scales basis and origin of the transform by the given scale factor, using "
"matrix multiplication."
msgstr ""
-#: doc/classes/Transform.xml:147 doc/classes/Transform2D.xml:149
+#: doc/classes/Transform.xml:149 doc/classes/Transform2D.xml:153
msgid ""
"Translates the transform by the given offset, relative to the transform's "
"basis vectors.\n"
@@ -51344,152 +52105,162 @@ msgid ""
"multiplication."
msgstr ""
-#: doc/classes/Transform.xml:157
+#: doc/classes/Transform.xml:159
msgid ""
"Transforms the given [Vector3], [Plane], [AABB], or [PackedVector3Array] by "
"this transform."
msgstr ""
-#: doc/classes/Transform.xml:166
+#: doc/classes/Transform.xml:168
msgid ""
"Inverse-transforms the given [Vector3], [Plane], [AABB], or "
"[PackedVector3Array] by this transform."
msgstr ""
-#: doc/classes/Transform.xml:172
+#: doc/classes/Transform.xml:174
msgid ""
"The basis is a matrix containing 3 [Vector3] as its columns: X axis, Y axis, "
"and Z axis. These vectors can be interpreted as the basis vectors of local "
"coordinate system traveling with the object."
msgstr ""
-#: doc/classes/Transform.xml:175
-msgid "The translation offset of the transform."
+#: doc/classes/Transform.xml:177
+msgid ""
+"The translation offset of the transform (column 3, the fourth column). "
+"Equivalent to array index [code]3[/code]."
msgstr ""
-#: doc/classes/Transform.xml:180
+#: doc/classes/Transform.xml:182
msgid ""
"[Transform] with no translation, rotation or scaling applied. When applied "
"to other data structures, [constant IDENTITY] performs no transformation."
msgstr ""
-#: doc/classes/Transform.xml:183
+#: doc/classes/Transform.xml:185
msgid "[Transform] with mirroring applied perpendicular to the YZ plane."
msgstr ""
-#: doc/classes/Transform.xml:186
+#: doc/classes/Transform.xml:188
msgid "[Transform] with mirroring applied perpendicular to the XZ plane."
msgstr ""
-#: doc/classes/Transform.xml:189
+#: doc/classes/Transform.xml:191
msgid "[Transform] with mirroring applied perpendicular to the XY plane."
msgstr ""
#: doc/classes/Transform2D.xml:4
-msgid "2D transformation (3×2 matrix)."
+msgid "2D transformation (2×3 matrix)."
msgstr ""
#: doc/classes/Transform2D.xml:7
msgid ""
-"Represents one or many transformations in 2D space such as translation, "
-"rotation, or scaling. It consists of two [member x] and [member y] "
-"[Vector2]s and an [member origin]. It is similar to a 3×2 matrix."
+"2×3 matrix (2 rows, 3 columns) used for 2D linear transformations. It can "
+"represent transformations such as translation, rotation, or scaling. It "
+"consists of a three [Vector2] values: [member x], [member y], and the "
+"[member origin].\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
msgstr ""
-#: doc/classes/Transform2D.xml:18
+#: doc/classes/Transform2D.xml:20
msgid "Constructs the transform from a 3D [Transform]."
msgstr ""
-#: doc/classes/Transform2D.xml:31
+#: doc/classes/Transform2D.xml:33
msgid ""
-"Constructs the transform from 3 [Vector2]s representing x, y, and origin."
+"Constructs the transform from 3 [Vector2] values representing [member x], "
+"[member y], and the [member origin] (the three column vectors)."
msgstr ""
-#: doc/classes/Transform2D.xml:42
+#: doc/classes/Transform2D.xml:44
msgid "Constructs the transform from a given angle (in radians) and position."
msgstr ""
-#: doc/classes/Transform2D.xml:58
-msgid "Transforms the given vector by this transform's basis (no translation)."
+#: doc/classes/Transform2D.xml:60
+msgid ""
+"Returns a vector transformed (multiplied) by the basis matrix.\n"
+"This method does not account for translation (the origin vector)."
msgstr ""
-#: doc/classes/Transform2D.xml:67
+#: doc/classes/Transform2D.xml:70
msgid ""
-"Inverse-transforms the given vector by this transform's basis (no "
-"translation)."
+"Returns a vector transformed (multiplied) by the inverse basis matrix.\n"
+"This method does not account for translation (the origin vector)."
msgstr ""
-#: doc/classes/Transform2D.xml:74
+#: doc/classes/Transform2D.xml:78
msgid "Returns the transform's origin (translation)."
msgstr ""
-#: doc/classes/Transform2D.xml:81
+#: doc/classes/Transform2D.xml:85
msgid "Returns the transform's rotation (in radians)."
msgstr ""
-#: doc/classes/Transform2D.xml:88
+#: doc/classes/Transform2D.xml:92
msgid "Returns the scale."
msgstr ""
-#: doc/classes/Transform2D.xml:99
+#: doc/classes/Transform2D.xml:103
msgid ""
"Returns a transform interpolated between this transform and another by a "
-"given weight (0-1)."
+"given weight (on the range of 0.0 to 1.0)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:110
+msgid ""
+"Returns the inverse of the transform, under the assumption that the "
+"transformation is composed of rotation and translation (no scaling, use "
+"[method affine_inverse] for transforms with scaling)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:126
+msgid ""
+"Returns the transform with the basis orthogonal (90 degrees), and normalized "
+"axis vectors (scale of 1 or -1)."
msgstr ""
-#: doc/classes/Transform2D.xml:131
+#: doc/classes/Transform2D.xml:135
msgid ""
"Rotates the transform by the given angle (in radians), using matrix "
"multiplication."
msgstr ""
-#: doc/classes/Transform2D.xml:140
+#: doc/classes/Transform2D.xml:144
msgid ""
"Scales the transform by the given scale factor, using matrix multiplication."
msgstr ""
-#: doc/classes/Transform2D.xml:159
+#: doc/classes/Transform2D.xml:163
msgid ""
"Transforms the given [Vector2], [Rect2], or [PackedVector2Array] by this "
"transform."
msgstr ""
-#: doc/classes/Transform2D.xml:168
+#: doc/classes/Transform2D.xml:172
msgid ""
"Inverse-transforms the given [Vector2], [Rect2], or [PackedVector2Array] by "
"this transform."
msgstr ""
-#: doc/classes/Transform2D.xml:174
-msgid "The transform's translation offset."
-msgstr ""
-
-#: doc/classes/Transform2D.xml:177
+#: doc/classes/Transform2D.xml:178
msgid ""
-"The X axis of 2×2 basis matrix containing 2 [Vector2]s as its columns: X "
-"axis and Y axis. These vectors can be interpreted as the basis vectors of "
-"local coordinate system traveling with the object."
+"The origin vector (column 2, the third column). Equivalent to array index "
+"[code]2[/code]. The origin vector represents translation."
msgstr ""
-#: doc/classes/Transform2D.xml:180
+#: doc/classes/Transform2D.xml:189
msgid ""
-"The Y axis of 2×2 basis matrix containing 2 [Vector2]s as its columns: X "
-"axis and Y axis. These vectors can be interpreted as the basis vectors of "
-"local coordinate system traveling with the object."
-msgstr ""
-
-#: doc/classes/Transform2D.xml:185
-msgid ""
-"[Transform2D] with no translation, rotation or scaling applied. When applied "
-"to other data structures, [constant IDENTITY] performs no transformation."
+"The identity [Transform2D] with no translation, rotation or scaling applied. "
+"When applied to other data structures, [constant IDENTITY] performs no "
+"transformation."
msgstr ""
-#: doc/classes/Transform2D.xml:188
-msgid "[Transform2D] with mirroring applied parallel to the X axis."
+#: doc/classes/Transform2D.xml:192
+msgid "The [Transform2D] that will flip something along the X axis."
msgstr ""
-#: doc/classes/Transform2D.xml:191
-msgid "[Transform2D] with mirroring applied parallel to the Y axis."
+#: doc/classes/Transform2D.xml:195
+msgid "The [Transform2D] that will flip something along the Y axis."
msgstr ""
#: doc/classes/Translation.xml:4
@@ -52153,7 +52924,8 @@ msgid "Returns the column's cell mode."
msgstr ""
#: doc/classes/TreeItem.xml:121
-msgid "Returns the TreeItem's child items."
+msgid ""
+"Returns the TreeItem's first child item or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:130
@@ -52185,28 +52957,32 @@ msgid "Returns the icon [Texture2D] region as [Rect2]."
msgstr ""
#: doc/classes/TreeItem.xml:199
-msgid "Returns the next TreeItem in the tree."
+msgid ""
+"Returns the next TreeItem in the tree or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:208
msgid ""
-"Returns the next visible TreeItem in the tree.\n"
+"Returns the next visible TreeItem in the tree or a null object if there is "
+"none.\n"
"If [code]wrap[/code] is enabled, the method will wrap around to the first "
"visible element in the tree when called on the last visible element, "
"otherwise it returns [code]null[/code]."
msgstr ""
#: doc/classes/TreeItem.xml:216
-msgid "Returns the parent TreeItem."
+msgid "Returns the parent TreeItem or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:223
-msgid "Returns the previous TreeItem in the tree."
+msgid ""
+"Returns the previous TreeItem in the tree or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:232
msgid ""
-"Returns the previous visible TreeItem in the tree.\n"
+"Returns the previous visible TreeItem in the tree or a null object if there "
+"is none.\n"
"If [code]wrap[/code] is enabled, the method will wrap around to the last "
"visible element in the tree when called on the first visible element, "
"otherwise it returns [code]null[/code]."
@@ -52716,6 +53492,10 @@ msgid ""
"A simple server that opens a UDP socket and returns connected "
"[PacketPeerUDP] upon receiving new packets. See also [method PacketPeerUDP."
"connect_to_host].\n"
+"After starting the server ([method listen]), you will need to [method poll] "
+"it at regular intervals (e.g. inside [method Node._process]) for it to "
+"process new packets, delivering them to the appropriate [PacketPeerUDP], and "
+"taking new connections.\n"
"Below a small example of how it can be used:\n"
"[codeblock]\n"
"# server.gd\n"
@@ -52728,6 +53508,7 @@ msgid ""
" server.listen(4242)\n"
"\n"
"func _process(delta):\n"
+" server.poll() # Important!\n"
" if server.is_connection_available():\n"
" var peer : PacketPeerUDP = server.take_connection()\n"
" var pkt = peer.get_packet()\n"
@@ -52763,35 +53544,55 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/UDPServer.xml:60
+#: doc/classes/UDPServer.xml:62
msgid ""
-"Returns [code]true[/code] if a packet with a new address/port combination is "
-"received on the socket."
+"Returns [code]true[/code] if a packet with a new address/port combination "
+"was received on the socket."
msgstr ""
-#: doc/classes/UDPServer.xml:67
+#: doc/classes/UDPServer.xml:69
msgid ""
"Returns [code]true[/code] if the socket is open and listening on a port."
msgstr ""
-#: doc/classes/UDPServer.xml:78
+#: doc/classes/UDPServer.xml:80
msgid ""
"Starts the server by opening a UDP socket listening on the given port. You "
"can optionally specify a [code]bind_address[/code] to only listen for "
"packets sent to that address. See also [method PacketPeerUDP.listen]."
msgstr ""
-#: doc/classes/UDPServer.xml:85
+#: doc/classes/UDPServer.xml:87
+msgid ""
+"Call this method at regular intervals (e.g. inside [method Node._process]) "
+"to process new packets. And packet from known address/port pair will be "
+"delivered to the appropriate [PacketPeerUDP], any packet received from an "
+"unknown address/port pair will be added as a pending connection (see [method "
+"is_connection_available], [method take_connection]). The maximum number of "
+"pending connection is defined via [member max_pending_connections]."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:94
+msgid ""
+"Stops the server, closing the UDP socket if open. Will close all connected "
+"[PacketPeerUDP] accepted via [method take_connection] (remote peers will not "
+"be notified)."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:101
msgid ""
-"Stops the server, closing the UDP socket if open. Will not disconnect any "
-"connected [PacketPeerUDP]."
+"Returns the first pending connection (connected to the appropriate address/"
+"port). Will return [code]null[/code] if no new connection is available. See "
+"also [method is_connection_available], [method PacketPeerUDP."
+"connect_to_host]."
msgstr ""
-#: doc/classes/UDPServer.xml:92
+#: doc/classes/UDPServer.xml:107
msgid ""
-"Returns a [PacketPeerUDP] connected to the address/port combination of the "
-"first packet in queue. Will return [code]null[/code] if no packet is in "
-"queue. See also [method PacketPeerUDP.connect_to_host]."
+"Define the maximum number of pending connections, during [method poll], any "
+"new pending connection exceeding that value will be automatically dropped. "
+"Setting this value to [code]0[/code] effectively prevents any new pending "
+"connection to be accepted (e.g. when all your players have connected)."
msgstr ""
#: doc/classes/UndoRedo.xml:4
@@ -53432,24 +54233,27 @@ msgstr ""
#: doc/classes/Vector2.xml:46
msgid ""
-"Returns the vector's angle in radians with respect to the X axis, or [code]"
-"(1, 0)[/code] vector.\n"
+"Returns this vector's angle with respect to the X axis, or [code](1, 0)[/"
+"code] vector, in radians.\n"
"Equivalent to the result of [method @GDScript.atan2] when called with the "
-"vector's [member x] and [member y] as parameters: [code]atan2(x, y)[/code]."
+"vector's [member y] and [member x] as parameters: [code]atan2(y, x)[/code]."
msgstr ""
#: doc/classes/Vector2.xml:56
-msgid "Returns the angle in radians between the two vectors."
-msgstr ""
+#, fuzzy
+msgid "Returns the angle to the given vector, in radians."
+msgstr "Retorna o resto dos dois vetores."
#: doc/classes/Vector2.xml:65
msgid ""
-"Returns the angle in radians between the line connecting the two points and "
-"the X coordinate."
+"Returns the angle between the line connecting the two points and the X axis, "
+"in radians."
msgstr ""
-#: doc/classes/Vector2.xml:72 doc/classes/Vector2i.xml:46
-msgid "Returns the ratio of [member x] to [member y]."
+#: doc/classes/Vector2.xml:72
+msgid ""
+"Returns the aspect ratio of this vector, the ratio of [member x] to [member "
+"y]."
msgstr ""
#: doc/classes/Vector2.xml:81 doc/classes/Vector3.xml:59
@@ -53458,24 +54262,28 @@ msgid ""
msgstr ""
#: doc/classes/Vector2.xml:88
-msgid "Returns the vector with all components rounded up."
+msgid ""
+"Returns the vector with all components rounded up (towards positive "
+"infinity)."
msgstr ""
#: doc/classes/Vector2.xml:97
-msgid "Returns the vector with a maximum length."
+msgid ""
+"Returns the vector with a maximum length by limiting its length to "
+"[code]length[/code]."
msgstr ""
#: doc/classes/Vector2.xml:106
-msgid ""
-"Returns the 2-dimensional analog of the cross product with the given vector."
-msgstr ""
+#, fuzzy
+msgid "Returns the cross product of this vector and [code]with[/code]."
+msgstr "Calcula o produto vetorial de dois vetores."
#: doc/classes/Vector2.xml:121
msgid ""
"Cubically interpolates between this vector and [code]b[/code] using "
"[code]pre_a[/code] and [code]post_b[/code] as handles, and returns the "
-"result at position [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation."
+"result at position [code]t[/code]. [code]t[/code] is on the range of 0.0 to "
+"1.0, representing the amount of interpolation."
msgstr ""
#: doc/classes/Vector2.xml:130 doc/classes/Vector3.xml:99
@@ -53483,182 +54291,199 @@ msgid ""
"Returns the normalized vector pointing from this vector to [code]b[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:139
+#: doc/classes/Vector2.xml:139 doc/classes/Vector3.xml:108
msgid ""
-"Returns the squared distance to vector [code]b[/code]. Prefer this function "
-"over [method distance_to] if you need to sort vectors or need the squared "
-"distance for some formula."
+"Returns the squared distance between this vector and [code]b[/code].\n"
+"This method runs faster than [method distance_to], so prefer it if you need "
+"to compare vectors or need the squared distance for some formula."
msgstr ""
-#: doc/classes/Vector2.xml:148
-msgid "Returns the distance to vector [code]b[/code]."
+#: doc/classes/Vector2.xml:149
+msgid "Returns the distance between this vector and [code]to[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:157
-msgid "Returns the dot product with vector [code]b[/code]."
+#: doc/classes/Vector2.xml:158
+msgid ""
+"Returns the dot product of this vector and [code]with[/code]. This can be "
+"used to compare the angle between two vectors. For example, this can be used "
+"to determine whether an enemy is facing the player.\n"
+"The dot product will be [code]0[/code] for a straight angle (90 degrees), "
+"greater than 0 for angles narrower than 90 degrees and lower than 0 for "
+"angles wider than 90 degrees.\n"
+"When using unit (normalized) vectors, the result will always be between "
+"[code]-1.0[/code] (180 degree angle) when the vectors are facing opposite "
+"directions, and [code]1.0[/code] (0 degree angle) when the vectors are "
+"aligned.\n"
+"[b]Note:[/b] [code]a.dot(b)[/code] is equivalent to [code]b.dot(a)[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:164
-msgid "Returns the vector with all components rounded down."
+#: doc/classes/Vector2.xml:168
+msgid ""
+"Returns the vector with all components rounded down (towards negative "
+"infinity)."
msgstr ""
-#: doc/classes/Vector2.xml:173 doc/classes/Vector3.xml:149
+#: doc/classes/Vector2.xml:177 doc/classes/Vector3.xml:153
msgid ""
"Returns [code]true[/code] if this vector and [code]v[/code] are "
"approximately equal, by running [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/Vector2.xml:180 doc/classes/Vector3.xml:156
-msgid "Returns [code]true[/code] if the vector is normalized."
+#: doc/classes/Vector2.xml:184 doc/classes/Vector3.xml:160
+msgid ""
+"Returns [code]true[/code] if the vector is normalized, and false otherwise."
msgstr ""
-#: doc/classes/Vector2.xml:187 doc/classes/Vector3.xml:163
-msgid "Returns the vector's length."
-msgstr ""
+#: doc/classes/Vector2.xml:191 doc/classes/Vector3.xml:167
+#, fuzzy
+msgid "Returns the length (magnitude) of this vector."
+msgstr "Retorna o resto dos dois vetores."
-#: doc/classes/Vector2.xml:194
+#: doc/classes/Vector2.xml:198 doc/classes/Vector3.xml:174
msgid ""
-"Returns the vector's length squared. Prefer this method over [method length] "
-"if you need to sort vectors or need the squared length for some formula."
+"Returns the squared length (squared magnitude) of this vector.\n"
+"This method runs faster than [method length], so prefer it if you need to "
+"compare vectors or need the squared distance for some formula."
msgstr ""
-#: doc/classes/Vector2.xml:205
+#: doc/classes/Vector2.xml:210 doc/classes/Vector3.xml:186
msgid ""
"Returns the result of the linear interpolation between this vector and "
-"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation."
+"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is on the range of "
+"0.0 to 1.0, representing the amount of interpolation."
msgstr ""
-#: doc/classes/Vector2.xml:216 doc/classes/Vector3.xml:206
+#: doc/classes/Vector2.xml:221
msgid ""
"Moves the vector toward [code]to[/code] by the fixed [code]delta[/code] "
"amount."
msgstr ""
-#: doc/classes/Vector2.xml:223 doc/classes/Vector3.xml:213
+#: doc/classes/Vector2.xml:228 doc/classes/Vector3.xml:218
msgid ""
"Returns the vector scaled to unit length. Equivalent to [code]v / v.length()"
"[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:232 doc/classes/Vector3.xml:231
+#: doc/classes/Vector2.xml:237 doc/classes/Vector3.xml:236
msgid ""
-"Returns a vector composed of the [code]fposmod[/code] of this vector's "
+"Returns a vector composed of the [method @GDScript.fposmod] of this vector's "
"components and [code]mod[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:241 doc/classes/Vector3.xml:240
+#: doc/classes/Vector2.xml:246 doc/classes/Vector3.xml:245
msgid ""
-"Returns a vector composed of the [code]fposmod[/code] of this vector's "
+"Returns a vector composed of the [method @GDScript.fposmod] of this vector's "
"components and [code]modv[/code]'s components."
msgstr ""
-#: doc/classes/Vector2.xml:250 doc/classes/Vector3.xml:249
+#: doc/classes/Vector2.xml:255
msgid "Returns the vector projected onto the vector [code]b[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:259 doc/classes/Vector3.xml:258
+#: doc/classes/Vector2.xml:264
msgid "Returns the vector reflected from a plane defined by the given normal."
msgstr ""
-#: doc/classes/Vector2.xml:268
+#: doc/classes/Vector2.xml:273
msgid ""
"Returns the vector rotated by [code]phi[/code] radians. See also [method "
"@GDScript.deg2rad]."
msgstr ""
-#: doc/classes/Vector2.xml:275 doc/classes/Vector3.xml:276
+#: doc/classes/Vector2.xml:280
msgid ""
"Returns the vector with all components rounded to the nearest integer, with "
"halfway cases rounded away from zero."
msgstr ""
-#: doc/classes/Vector2.xml:282 doc/classes/Vector2i.xml:53
-#: doc/classes/Vector3.xml:283 doc/classes/Vector3i.xml:55
+#: doc/classes/Vector2.xml:287
msgid ""
"Returns the vector with each component set to one or negative one, depending "
-"on the signs of the components."
+"on the signs of the components, or zero if the component is zero, by calling "
+"[method @GDScript.sign] on each component."
msgstr ""
-#: doc/classes/Vector2.xml:293 doc/classes/Vector3.xml:294
+#: doc/classes/Vector2.xml:298 doc/classes/Vector3.xml:299
msgid ""
"Returns the result of spherical linear interpolation between this vector and "
-"[code]b[/code], by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation.\n"
+"[code]b[/code], by amount [code]t[/code]. [code]t[/code] is on the range of "
+"0.0 to 1.0, representing the amount of interpolation.\n"
"[b]Note:[/b] Both vectors must be normalized."
msgstr ""
-#: doc/classes/Vector2.xml:303 doc/classes/Vector3.xml:304
-msgid ""
-"Returns the component of the vector along a plane defined by the given "
-"normal."
+#: doc/classes/Vector2.xml:308 doc/classes/Vector3.xml:309
+msgid "Returns this vector slid along a plane defined by the given normal."
msgstr ""
-#: doc/classes/Vector2.xml:312 doc/classes/Vector3.xml:313
-msgid "Returns the vector snapped to a grid with the given size."
+#: doc/classes/Vector2.xml:317 doc/classes/Vector3.xml:318
+msgid ""
+"Returns this vector with each component snapped to the nearest multiple of "
+"[code]step[/code]. This can also be used to round to an arbitrary number of "
+"decimals."
msgstr ""
-#: doc/classes/Vector2.xml:319
-msgid "Returns a perpendicular vector."
+#: doc/classes/Vector2.xml:324
+msgid ""
+"Returns a perpendicular vector rotated 90 degrees counter-clockwise compared "
+"to the original, with the same length."
msgstr ""
-#: doc/classes/Vector2.xml:325 doc/classes/Vector2i.xml:59
-#: doc/classes/Vector3.xml:326 doc/classes/Vector3i.xml:61
+#: doc/classes/Vector2.xml:330 doc/classes/Vector2i.xml:59
+#: doc/classes/Vector3.xml:332 doc/classes/Vector3i.xml:61
msgid ""
"The vector's X component. Also accessible by using the index position [code]"
"[0][/code]."
msgstr ""
-#: doc/classes/Vector2.xml:328 doc/classes/Vector2i.xml:62
-#: doc/classes/Vector3.xml:329 doc/classes/Vector3i.xml:64
+#: doc/classes/Vector2.xml:333 doc/classes/Vector2i.xml:62
+#: doc/classes/Vector3.xml:335 doc/classes/Vector3i.xml:64
msgid ""
"The vector's Y component. Also accessible by using the index position [code]"
"[1][/code]."
msgstr ""
-#: doc/classes/Vector2.xml:333 doc/classes/Vector2i.xml:67
+#: doc/classes/Vector2.xml:338 doc/classes/Vector2i.xml:67
#: doc/classes/Vector3i.xml:72
msgid "Enumerated value for the X axis."
msgstr ""
-#: doc/classes/Vector2.xml:336 doc/classes/Vector2i.xml:70
+#: doc/classes/Vector2.xml:341 doc/classes/Vector2i.xml:70
#: doc/classes/Vector3i.xml:75
msgid "Enumerated value for the Y axis."
msgstr ""
-#: doc/classes/Vector2.xml:339 doc/classes/Vector2i.xml:73
-#: doc/classes/Vector3.xml:346 doc/classes/Vector3i.xml:81
-msgid "Zero vector."
+#: doc/classes/Vector2.xml:344 doc/classes/Vector2i.xml:73
+#: doc/classes/Vector3.xml:352 doc/classes/Vector3i.xml:81
+msgid "Zero vector, a vector with all components set to [code]0[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:342 doc/classes/Vector2i.xml:76
-#: doc/classes/Vector3.xml:349 doc/classes/Vector3i.xml:84
-msgid "One vector."
+#: doc/classes/Vector2.xml:347 doc/classes/Vector2i.xml:76
+#: doc/classes/Vector3.xml:355 doc/classes/Vector3i.xml:84
+msgid "One vector, a vector with all components set to [code]1[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:345 doc/classes/Vector3.xml:352
-msgid "Infinity vector."
+#: doc/classes/Vector2.xml:350 doc/classes/Vector3.xml:358
+msgid ""
+"Infinity vector, a vector with all components set to [constant @GDScript."
+"INF]."
msgstr ""
-#: doc/classes/Vector2.xml:348 doc/classes/Vector2i.xml:79
-#: doc/classes/Vector3.xml:355 doc/classes/Vector3i.xml:87
-msgid "Left unit vector."
+#: doc/classes/Vector2.xml:353 doc/classes/Vector2i.xml:79
+msgid "Left unit vector. Represents the direction of left."
msgstr ""
-#: doc/classes/Vector2.xml:351 doc/classes/Vector2i.xml:82
-#: doc/classes/Vector3.xml:358 doc/classes/Vector3i.xml:90
-msgid "Right unit vector."
+#: doc/classes/Vector2.xml:356 doc/classes/Vector2i.xml:82
+msgid "Right unit vector. Represents the direction of right."
msgstr ""
-#: doc/classes/Vector2.xml:354 doc/classes/Vector2i.xml:85
-#: doc/classes/Vector3.xml:361 doc/classes/Vector3i.xml:93
-msgid "Up unit vector."
+#: doc/classes/Vector2.xml:359 doc/classes/Vector2i.xml:85
+msgid "Up unit vector. Y is down in 2D, so this vector points -Y."
msgstr ""
-#: doc/classes/Vector2.xml:357 doc/classes/Vector2i.xml:88
-#: doc/classes/Vector3.xml:364 doc/classes/Vector3i.xml:96
-msgid "Down unit vector."
+#: doc/classes/Vector2.xml:362 doc/classes/Vector2i.xml:88
+msgid "Down unit vector. Y is down in 2D, so this vector points +Y."
msgstr ""
#: doc/classes/Vector2i.xml:4
@@ -53687,6 +54512,16 @@ msgid ""
"will be truncated."
msgstr ""
+#: doc/classes/Vector2i.xml:46
+msgid "Returns the ratio of [member x] to [member y]."
+msgstr ""
+
+#: doc/classes/Vector2i.xml:53 doc/classes/Vector3i.xml:55
+msgid ""
+"Returns the vector with each component set to one or negative one, depending "
+"on the signs of the components."
+msgstr ""
+
#: doc/classes/Vector3.xml:4
msgid "Vector used for 3D math using floating point coordinates."
msgstr ""
@@ -53711,120 +54546,172 @@ msgid "Returns a [Vector3] with the given components."
msgstr ""
#: doc/classes/Vector3.xml:50
-msgid "Returns the minimum angle to the given vector."
-msgstr ""
+#, fuzzy
+msgid "Returns the minimum angle to the given vector, in radians."
+msgstr "Retorna o resto dos dois vetores."
#: doc/classes/Vector3.xml:66
-msgid "Returns a new vector with all components rounded up."
+msgid ""
+"Returns a new vector with all components rounded up (towards positive "
+"infinity)."
msgstr ""
#: doc/classes/Vector3.xml:75
-msgid "Returns the cross product with [code]b[/code]."
-msgstr ""
+#, fuzzy
+msgid "Returns the cross product of this vector and [code]b[/code]."
+msgstr "Calcula o produto vetorial de dois vetores."
#: doc/classes/Vector3.xml:90
msgid ""
"Performs a cubic interpolation between vectors [code]pre_a[/code], [code]a[/"
"code], [code]b[/code], [code]post_b[/code] ([code]a[/code] is current), by "
-"the given amount [code]t[/code]. [code]t[/code] is in the range of [code]0.0 "
-"- 1.0[/code], representing the amount of interpolation."
+"the given amount [code]t[/code]. [code]t[/code] is on the range of 0.0 to "
+"1.0, representing the amount of interpolation."
msgstr ""
-#: doc/classes/Vector3.xml:108
-msgid ""
-"Returns the squared distance to [code]b[/code]. Prefer this function over "
-"[method distance_to] if you need to sort vectors or need the squared "
-"distance for some formula."
+#: doc/classes/Vector3.xml:118
+msgid "Returns the distance between this vector and [code]b[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:117
-msgid "Returns the distance to [code]b[/code]."
-msgstr ""
-
-#: doc/classes/Vector3.xml:126
-msgid "Returns the dot product with [code]b[/code]."
+#: doc/classes/Vector3.xml:127
+msgid ""
+"Returns the dot product of this vector and [code]b[/code]. This can be used "
+"to compare the angle between two vectors. For example, this can be used to "
+"determine whether an enemy is facing the player.\n"
+"The dot product will be [code]0[/code] for a straight angle (90 degrees), "
+"greater than 0 for angles narrower than 90 degrees and lower than 0 for "
+"angles wider than 90 degrees.\n"
+"When using unit (normalized) vectors, the result will always be between "
+"[code]-1.0[/code] (180 degree angle) when the vectors are facing opposite "
+"directions, and [code]1.0[/code] (0 degree angle) when the vectors are "
+"aligned.\n"
+"[b]Note:[/b] [code]a.dot(b)[/code] is equivalent to [code]b.dot(a)[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:133
-msgid "Returns a new vector with all components rounded down."
+#: doc/classes/Vector3.xml:137
+msgid ""
+"Returns a new vector with all components rounded down (towards negative "
+"infinity)."
msgstr ""
-#: doc/classes/Vector3.xml:140
+#: doc/classes/Vector3.xml:144
msgid ""
"Returns the inverse of the vector. This is the same as [code]Vector3( 1.0 / "
"v.x, 1.0 / v.y, 1.0 / v.z )[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:170
+#: doc/classes/Vector3.xml:193 doc/classes/Vector3i.xml:41
msgid ""
-"Returns the vector's length squared. Prefer this function over [method "
-"length] if you need to sort vectors or need the squared length for some "
-"formula."
+"Returns the axis of the vector's largest value. See [code]AXIS_*[/code] "
+"constants. If all components are equal, this method returns [constant "
+"AXIS_X]."
msgstr ""
-#: doc/classes/Vector3.xml:181
+#: doc/classes/Vector3.xml:200 doc/classes/Vector3i.xml:48
msgid ""
-"Returns the result of the linear interpolation between this vector and "
-"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation.."
+"Returns the axis of the vector's smallest value. See [code]AXIS_*[/code] "
+"constants. If all components are equal, this method returns [constant "
+"AXIS_Z]."
msgstr ""
-#: doc/classes/Vector3.xml:188 doc/classes/Vector3i.xml:41
+#: doc/classes/Vector3.xml:211
msgid ""
-"Returns the axis of the vector's largest value. See [code]AXIS_*[/code] "
-"constants."
+"Moves this vector toward [code]to[/code] by the fixed [code]delta[/code] "
+"amount."
+msgstr ""
+
+#: doc/classes/Vector3.xml:227
+msgid "Returns the outer product with [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:254
+msgid "Returns this vector projected onto another vector [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:263
+msgid "Returns this vector reflected from a plane defined by the given normal."
msgstr ""
-#: doc/classes/Vector3.xml:195 doc/classes/Vector3i.xml:48
+#: doc/classes/Vector3.xml:274
msgid ""
-"Returns the axis of the vector's smallest value. See [code]AXIS_*[/code] "
-"constants."
+"Rotates this vector around a given axis by [code]phi[/code] radians. The "
+"axis must be a normalized vector."
msgstr ""
-#: doc/classes/Vector3.xml:222
-msgid "Returns the outer product with [code]b[/code]."
+#: doc/classes/Vector3.xml:281
+msgid ""
+"Returns this vector with all components rounded to the nearest integer, with "
+"halfway cases rounded away from zero."
msgstr ""
-#: doc/classes/Vector3.xml:269
+#: doc/classes/Vector3.xml:288
msgid ""
-"Rotates the vector around a given axis by [code]phi[/code] radians. The axis "
-"must be a normalized vector."
+"Returns a vector with each component set to one or negative one, depending "
+"on the signs of this vector's components, or zero if the component is zero, "
+"by calling [method @GDScript.sign] on each component."
msgstr ""
-#: doc/classes/Vector3.xml:320
-msgid "Returns a diagonal matrix with the vector as main diagonal."
+#: doc/classes/Vector3.xml:325
+msgid ""
+"Returns a diagonal matrix with the vector as main diagonal.\n"
+"This is equivalent to a Basis with no rotation or shearing and this vector's "
+"components set as the scale."
msgstr ""
-#: doc/classes/Vector3.xml:332 doc/classes/Vector3i.xml:67
+#: doc/classes/Vector3.xml:338 doc/classes/Vector3i.xml:67
msgid ""
"The vector's Z component. Also accessible by using the index position [code]"
"[2][/code]."
msgstr ""
-#: doc/classes/Vector3.xml:337
+#: doc/classes/Vector3.xml:343
msgid ""
"Enumerated value for the X axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:340
+#: doc/classes/Vector3.xml:346
msgid ""
"Enumerated value for the Y axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:343
+#: doc/classes/Vector3.xml:349
msgid ""
"Enumerated value for the Z axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:367 doc/classes/Vector3i.xml:99
-msgid "Forward unit vector."
+#: doc/classes/Vector3.xml:361 doc/classes/Vector3i.xml:87
+msgid ""
+"Left unit vector. Represents the local direction of left, and the global "
+"direction of west."
+msgstr ""
+
+#: doc/classes/Vector3.xml:364 doc/classes/Vector3i.xml:90
+msgid ""
+"Right unit vector. Represents the local direction of right, and the global "
+"direction of east."
+msgstr ""
+
+#: doc/classes/Vector3.xml:367 doc/classes/Vector3i.xml:93
+msgid "Up unit vector."
+msgstr ""
+
+#: doc/classes/Vector3.xml:370 doc/classes/Vector3i.xml:96
+msgid "Down unit vector."
msgstr ""
-#: doc/classes/Vector3.xml:370 doc/classes/Vector3i.xml:102
-msgid "Back unit vector."
+#: doc/classes/Vector3.xml:373 doc/classes/Vector3i.xml:99
+msgid ""
+"Forward unit vector. Represents the local direction of forward, and the "
+"global direction of north."
+msgstr ""
+
+#: doc/classes/Vector3.xml:376 doc/classes/Vector3i.xml:102
+msgid ""
+"Back unit vector. Represents the local direction of back, and the global "
+"direction of south."
msgstr ""
#: doc/classes/Vector3i.xml:4
@@ -53873,10 +54760,14 @@ msgid ""
"directly.\n"
"[b]Note:[/b] The origin point of your VehicleBody3D will determine the "
"center of gravity of your vehicle so it is better to keep this low and move "
-"the [CollisionShape3D] and [MeshInstance3D] upwards."
+"the [CollisionShape3D] and [MeshInstance3D] upwards.\n"
+"[b]Note:[/b] This class has known issues and isn't designed to provide "
+"realistic 3D vehicle physics. If you want advanced vehicle physics, you will "
+"probably have to write your own physics integration using another "
+"[PhysicsBody3D] class."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:16
+#: doc/classes/VehicleBody3D.xml:17
msgid ""
"Slows down the vehicle by applying a braking force. The vehicle is only "
"slowed down if the wheels are in contact with a surface. The force you need "
@@ -53885,7 +54776,7 @@ msgid ""
"a value in the 25 - 30 range for hard braking."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:19
+#: doc/classes/VehicleBody3D.xml:20
msgid ""
"Accelerates the vehicle by applying an engine force. The vehicle is only "
"speed up if the wheels that have [member VehicleWheel3D.use_as_traction] set "
@@ -53898,7 +54789,7 @@ msgid ""
"A negative value will result in the vehicle reversing."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:25
+#: doc/classes/VehicleBody3D.xml:26
msgid ""
"The steering angle for the vehicle. Setting this to a non-zero value will "
"result in the vehicle turning when it's moving. Wheels that have [member "
@@ -53914,25 +54805,29 @@ msgstr ""
msgid ""
"This node needs to be used as a child node of [VehicleBody3D] and simulates "
"the behavior of one of its wheels. This node also acts as a collider to "
-"detect if the wheel is touching a surface."
+"detect if the wheel is touching a surface.\n"
+"[b]Note:[/b] This class has known issues and isn't designed to provide "
+"realistic 3D vehicle physics. If you want advanced vehicle physics, you will "
+"probably have to write your own physics integration using another "
+"[PhysicsBody3D] class."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:16
+#: doc/classes/VehicleWheel3D.xml:17
msgid "Returns the rotational speed of the wheel in revolutions per minute."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:23
+#: doc/classes/VehicleWheel3D.xml:24
msgid ""
"Returns a value between 0.0 and 1.0 that indicates whether this wheel is "
"skidding. 0.0 is skidding (the wheel has lost grip, e.g. icy terrain), 1.0 "
"means not skidding (the wheel has full grip, e.g. dry asphalt road)."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:30
+#: doc/classes/VehicleWheel3D.xml:31
msgid "Returns [code]true[/code] if this wheel is in contact with a surface."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:36
+#: doc/classes/VehicleWheel3D.xml:37
msgid ""
"Slows down the wheel by applying a braking force. The wheel is only slowed "
"down if it is in contact with a surface. The force you need to apply to "
@@ -53941,7 +54836,7 @@ msgid ""
"- 30 range for hard braking."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:39
+#: doc/classes/VehicleWheel3D.xml:40
msgid ""
"The damping applied to the spring when the spring is being compressed. This "
"value should be between 0.0 (no damping) and 1.0. A value of 0.0 means the "
@@ -53949,7 +54844,7 @@ msgid ""
"is around 0.3 for a normal car, 0.5 for a race car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:42
+#: doc/classes/VehicleWheel3D.xml:43
msgid ""
"The damping applied to the spring when relaxing. This value should be "
"between 0.0 (no damping) and 1.0. This value should always be slightly "
@@ -53957,7 +54852,7 @@ msgid ""
"damping_compression] value of 0.3, try a relaxation value of 0.5."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:45
+#: doc/classes/VehicleWheel3D.xml:46
msgid ""
"Accelerates the wheel by applying an engine force. The wheel is only speed "
"up if it is in contact with a surface. The [member RigidBody3D.mass] of the "
@@ -53968,13 +54863,13 @@ msgid ""
"A negative value will result in the wheel reversing."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:50
+#: doc/classes/VehicleWheel3D.xml:51
msgid ""
"The steering angle for the wheel. Setting this to a non-zero value will "
"result in the vehicle turning when it's moving."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:53
+#: doc/classes/VehicleWheel3D.xml:54
msgid ""
"The maximum force the spring can resist. This value should be higher than a "
"quarter of the [member RigidBody3D.mass] of the [VehicleBody3D] or the "
@@ -53982,28 +54877,28 @@ msgid ""
"obtained by a value that is about 3× to 4× this number."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:56
+#: doc/classes/VehicleWheel3D.xml:57
msgid ""
"This value defines the stiffness of the suspension. Use a value lower than "
"50 for an off-road car, a value between 50 and 100 for a race car and try "
"something around 200 for something like a Formula 1 car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:59
+#: doc/classes/VehicleWheel3D.xml:60
msgid ""
"This is the distance the suspension can travel. As Godot units are "
"equivalent to meters, keep this setting relatively low. Try a value between "
"0.1 and 0.3 depending on the type of car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:62
+#: doc/classes/VehicleWheel3D.xml:63
msgid ""
"If [code]true[/code], this wheel will be turned when the car steers. This "
"value is used in conjunction with [member VehicleBody3D.steering] and "
"ignored if you are using the per-wheel [member steering] value instead."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:65
+#: doc/classes/VehicleWheel3D.xml:66
msgid ""
"If [code]true[/code], this wheel transfers engine force to the ground to "
"propel the vehicle forward. This value is used in conjunction with [member "
@@ -54011,7 +54906,7 @@ msgid ""
"[member engine_force] value instead."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:68
+#: doc/classes/VehicleWheel3D.xml:69
msgid ""
"This determines how much grip this wheel has. It is combined with the "
"friction setting of the surface the wheel is in contact with. 0.0 means no "
@@ -54021,11 +54916,11 @@ msgid ""
"It's best to set this to 1.0 when starting out."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:72
+#: doc/classes/VehicleWheel3D.xml:73
msgid "The radius of the wheel in meters."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:75
+#: doc/classes/VehicleWheel3D.xml:76
msgid ""
"This is the distance in meters the wheel is lowered from its origin point. "
"Don't set this to 0.0 and move the wheel into position, instead move the "
@@ -54034,7 +54929,7 @@ msgid ""
"down to the position it should be in when the car is in rest."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:78
+#: doc/classes/VehicleWheel3D.xml:79
msgid ""
"This value affects the roll of your vehicle. If set to 1.0 for all wheels, "
"your vehicle will be prone to rolling over, while a value of 0.0 will resist "
@@ -54512,7 +55407,7 @@ msgstr ""
#: doc/classes/Viewport.xml:318
msgid ""
"Use fast approximate antialiasing. FXAA is a popular screen-space "
-"antialising method, which is fast but will make the image look blurry, "
+"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."
msgstr ""
@@ -54565,24 +55460,24 @@ msgid ""
"your [WorldEnvironment]."
msgstr ""
-#: doc/classes/Viewport.xml:384
+#: doc/classes/Viewport.xml:381
msgid ""
"Colors each PSSM split for the [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, and yellow."
msgstr ""
-#: doc/classes/Viewport.xml:387
+#: doc/classes/Viewport.xml:384
msgid ""
"Draws the decal atlas used by [Decal]s and light projector textures in the "
"upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/Viewport.xml:402
+#: doc/classes/Viewport.xml:405
msgid "Max value for [enum DefaultCanvasItemTextureFilter] enum."
msgstr ""
-#: doc/classes/Viewport.xml:414
+#: doc/classes/Viewport.xml:417
msgid "Max value for [enum DefaultCanvasItemTextureRepeat] enum."
msgstr ""
@@ -54613,82 +55508,84 @@ msgid ""
"The VisibilityEnabler2D will disable [RigidBody2D], [AnimationPlayer], and "
"other nodes when they are not visible. It will only affect nodes with the "
"same root node as the VisibilityEnabler2D, and the root node itself.\n"
+"If you just want to receive notifications, use [VisibilityNotifier2D] "
+"instead.\n"
"[b]Note:[/b] For performance reasons, VisibilityEnabler2D uses an "
"approximate heuristic with precision determined by [member ProjectSettings."
-"world/2d/cell_size]. If you need exact visibility checking, use another "
+"world/2d/cell_size]. If you need precise visibility checking, use another "
"method such as adding an [Area2D] node as a child of a [Camera2D] node.\n"
"[b]Note:[/b] VisibilityEnabler2D will not affect nodes added after scene "
"initialization."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:20
-#: doc/classes/VisibilityEnabler3D.xml:20
+#: doc/classes/VisibilityEnabler2D.xml:21
+#: doc/classes/VisibilityEnabler3D.xml:21
msgid ""
"Returns whether the enabler identified by given [enum Enabler] constant is "
"active."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:31
-#: doc/classes/VisibilityEnabler3D.xml:31
+#: doc/classes/VisibilityEnabler2D.xml:32
+#: doc/classes/VisibilityEnabler3D.xml:32
msgid ""
"Sets active state of the enabler identified by given [enum Enabler] constant."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:37
+#: doc/classes/VisibilityEnabler2D.xml:38
msgid "If [code]true[/code], [RigidBody2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:40
+#: doc/classes/VisibilityEnabler2D.xml:41
msgid "If [code]true[/code], [AnimatedSprite2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:43
-#: doc/classes/VisibilityEnabler3D.xml:40
+#: doc/classes/VisibilityEnabler2D.xml:44
+#: doc/classes/VisibilityEnabler3D.xml:41
msgid "If [code]true[/code], [AnimationPlayer] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:46
+#: doc/classes/VisibilityEnabler2D.xml:47
msgid "If [code]true[/code], [GPUParticles2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:49
+#: doc/classes/VisibilityEnabler2D.xml:50
msgid ""
"If [code]true[/code], the parent's [method Node._physics_process] will be "
"stopped."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:52
+#: doc/classes/VisibilityEnabler2D.xml:53
msgid ""
"If [code]true[/code], the parent's [method Node._process] will be stopped."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:57
-#: doc/classes/VisibilityEnabler3D.xml:45
+#: doc/classes/VisibilityEnabler2D.xml:58
+#: doc/classes/VisibilityEnabler3D.xml:46
msgid "This enabler will pause [AnimationPlayer] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:60
+#: doc/classes/VisibilityEnabler2D.xml:61
msgid "This enabler will freeze [RigidBody2D] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:63
+#: doc/classes/VisibilityEnabler2D.xml:64
msgid "This enabler will stop [GPUParticles2D] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:66
+#: doc/classes/VisibilityEnabler2D.xml:67
msgid "This enabler will stop the parent's _process function."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:69
+#: doc/classes/VisibilityEnabler2D.xml:70
msgid "This enabler will stop the parent's _physics_process function."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:72
+#: doc/classes/VisibilityEnabler2D.xml:73
msgid "This enabler will stop [AnimatedSprite2D] nodes animations."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:75
-#: doc/classes/VisibilityEnabler3D.xml:51
+#: doc/classes/VisibilityEnabler2D.xml:76
+#: doc/classes/VisibilityEnabler3D.xml:52
msgid "Represents the size of the [enum Enabler] enum."
msgstr ""
@@ -54697,19 +55594,23 @@ msgid ""
"The VisibilityEnabler3D will disable [RigidBody3D] and [AnimationPlayer] "
"nodes when they are not visible. It will only affect other nodes within the "
"same scene as the VisibilityEnabler3D itself.\n"
+"If you just want to receive notifications, use [VisibilityNotifier3D] "
+"instead.\n"
"[b]Note:[/b] VisibilityEnabler3D uses an approximate heuristic for "
"performance reasons. It doesn't take walls and other occlusion into account. "
-"If you need exact visibility checking, use another method such as adding an "
-"[Area3D] node as a child of a [Camera3D] node.\n"
+"The heuristic is an implementation detail and may change in future versions. "
+"If you need precise visibility checking, use another method such as adding "
+"an [Area3D] node as a child of a [Camera3D] node and/or [method Vector3."
+"dot].\n"
"[b]Note:[/b] VisibilityEnabler3D will not affect nodes added after scene "
"initialization."
msgstr ""
-#: doc/classes/VisibilityEnabler3D.xml:37
+#: doc/classes/VisibilityEnabler3D.xml:38
msgid "If [code]true[/code], [RigidBody3D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler3D.xml:48
+#: doc/classes/VisibilityEnabler3D.xml:49
msgid "This enabler will freeze [RigidBody3D] nodes."
msgstr ""
@@ -54723,13 +55624,15 @@ msgid ""
"The VisibilityNotifier2D detects when it is visible on the screen. It also "
"notifies when its bounding rectangle enters or exits the screen or a "
"viewport.\n"
+"If you want nodes to be disabled automatically when they exit the screen, "
+"use [VisibilityEnabler2D] instead.\n"
"[b]Note:[/b] For performance reasons, VisibilityNotifier2D uses an "
"approximate heuristic with precision determined by [member ProjectSettings."
-"world/2d/cell_size]. If you need exact visibility checking, use another "
+"world/2d/cell_size]. If you need precise visibility checking, use another "
"method such as adding an [Area2D] node as a child of a [Camera2D] node."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:17
+#: doc/classes/VisibilityNotifier2D.xml:18
msgid ""
"If [code]true[/code], the bounding rectangle is on the screen.\n"
"[b]Note:[/b] It takes one frame for the node's visibility to be assessed "
@@ -54738,23 +55641,23 @@ msgid ""
"pass."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:24
+#: doc/classes/VisibilityNotifier2D.xml:25
msgid "The VisibilityNotifier2D's bounding rectangle."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:30
+#: doc/classes/VisibilityNotifier2D.xml:31
msgid "Emitted when the VisibilityNotifier2D enters the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:35
+#: doc/classes/VisibilityNotifier2D.xml:36
msgid "Emitted when the VisibilityNotifier2D exits the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:42
+#: doc/classes/VisibilityNotifier2D.xml:43
msgid "Emitted when the VisibilityNotifier2D enters a [Viewport]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:49
+#: doc/classes/VisibilityNotifier2D.xml:50
msgid "Emitted when the VisibilityNotifier2D exits a [Viewport]'s view."
msgstr ""
@@ -54763,13 +55666,16 @@ msgid ""
"The VisibilityNotifier3D detects when it is visible on the screen. It also "
"notifies when its bounding rectangle enters or exits the screen or a "
"[Camera3D]'s view.\n"
+"If you want nodes to be disabled automatically when they exit the screen, "
+"use [VisibilityEnabler3D] instead.\n"
"[b]Note:[/b] VisibilityNotifier3D uses an approximate heuristic for "
"performance reasons. It doesn't take walls and other occlusion into account. "
-"If you need exact visibility checking, use another method such as adding an "
-"[Area3D] node as a child of a [Camera3D] node."
+"The heuristic is an implementation detail and may change in future versions. "
+"If you need precise visibility checking, use another method such as adding "
+"an [Area3D] node as a child of a [Camera3D] node and/or [method Vector3.dot]."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:17
+#: doc/classes/VisibilityNotifier3D.xml:18
msgid ""
"If [code]true[/code], the bounding box is on the screen.\n"
"[b]Note:[/b] It takes one frame for the node's visibility to be assessed "
@@ -54778,23 +55684,23 @@ msgid ""
"pass."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:24
+#: doc/classes/VisibilityNotifier3D.xml:25
msgid "The VisibilityNotifier3D's bounding box."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:32
+#: doc/classes/VisibilityNotifier3D.xml:33
msgid "Emitted when the VisibilityNotifier3D enters a [Camera3D]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:39
+#: doc/classes/VisibilityNotifier3D.xml:40
msgid "Emitted when the VisibilityNotifier3D exits a [Camera3D]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:44
+#: doc/classes/VisibilityNotifier3D.xml:45
msgid "Emitted when the VisibilityNotifier3D enters the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:49
+#: doc/classes/VisibilityNotifier3D.xml:50
msgid "Emitted when the VisibilityNotifier3D exits the screen."
msgstr ""
@@ -55214,6 +56120,12 @@ msgid ""
"exist."
msgstr ""
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:90
+msgid ""
+"Easing function, based on exponent. 0 is constant, 1 is linear, 0 to 1 is "
+"ease-in, 1+ is ease out. Negative values are in-out/out in."
+msgstr ""
+
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:93
msgid ""
"Return the number of digit places after the decimal that the first non-zero "
@@ -56099,6 +57011,7 @@ msgid "A shader for light calculations."
msgstr ""
#: doc/classes/VisualShader.xml:214
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:26
msgid "Represents the size of the [enum Type] enum."
msgstr ""
@@ -56201,6 +57114,24 @@ msgstr ""
msgid "Translated to [code]uniform bool[/code] in the shader language."
msgstr ""
+#: doc/classes/VisualShaderNodeBooleanUniform.xml:15
+#: doc/classes/VisualShaderNodeColorUniform.xml:15
+#: doc/classes/VisualShaderNodeFloatUniform.xml:15
+#: doc/classes/VisualShaderNodeIntUniform.xml:15
+#: doc/classes/VisualShaderNodeTransformUniform.xml:15
+#: doc/classes/VisualShaderNodeVec3Uniform.xml:15
+msgid "A default value to be assigned within the shader."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeBooleanUniform.xml:18
+#: doc/classes/VisualShaderNodeColorUniform.xml:18
+#: doc/classes/VisualShaderNodeFloatUniform.xml:18
+#: doc/classes/VisualShaderNodeIntUniform.xml:18
+#: doc/classes/VisualShaderNodeTransformUniform.xml:18
+#: doc/classes/VisualShaderNodeVec3Uniform.xml:18
+msgid "Enables usage of the [member default_value]."
+msgstr ""
+
#: doc/classes/VisualShaderNodeColorConstant.xml:4
msgid "A [Color] constant to be used within the visual shader graph."
msgstr ""
@@ -57051,49 +57982,49 @@ msgstr ""
msgid "Translated to [code]uniform float[/code] in the shader language."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:15
-#: doc/classes/VisualShaderNodeIntUniform.xml:15
+#: doc/classes/VisualShaderNodeFloatUniform.xml:21
+#: doc/classes/VisualShaderNodeIntUniform.xml:21
msgid ""
"A hint applied to the uniform, which controls the values it can take when "
"set through the inspector."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:18
-#: doc/classes/VisualShaderNodeIntUniform.xml:18
+#: doc/classes/VisualShaderNodeFloatUniform.xml:24
+#: doc/classes/VisualShaderNodeIntUniform.xml:24
msgid ""
"Minimum value for range hints. Used if [member hint] is set to [constant "
"HINT_RANGE] or [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:21
-#: doc/classes/VisualShaderNodeIntUniform.xml:21
+#: doc/classes/VisualShaderNodeFloatUniform.xml:27
+#: doc/classes/VisualShaderNodeIntUniform.xml:27
msgid ""
"Maximum value for range hints. Used if [member hint] is set to [constant "
"HINT_RANGE] or [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:24
-#: doc/classes/VisualShaderNodeIntUniform.xml:24
+#: doc/classes/VisualShaderNodeFloatUniform.xml:30
+#: doc/classes/VisualShaderNodeIntUniform.xml:30
msgid ""
"Step (increment) value for the range hint with step. Used if [member hint] "
"is set to [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:29
-#: doc/classes/VisualShaderNodeIntUniform.xml:29
+#: doc/classes/VisualShaderNodeFloatUniform.xml:35
+#: doc/classes/VisualShaderNodeIntUniform.xml:35
msgid "No hint used."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:32
-#: doc/classes/VisualShaderNodeIntUniform.xml:32
+#: doc/classes/VisualShaderNodeFloatUniform.xml:38
+#: doc/classes/VisualShaderNodeIntUniform.xml:38
msgid ""
"A range hint for scalar value, which limits possible input values between "
"[member min] and [member max]. Translated to [code]hint_range(min, max)[/"
"code] in shader code."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:35
-#: doc/classes/VisualShaderNodeIntUniform.xml:35
+#: doc/classes/VisualShaderNodeFloatUniform.xml:41
+#: doc/classes/VisualShaderNodeIntUniform.xml:41
msgid ""
"A range hint for scalar value with step, which limits possible input values "
"between [member min] and [member max], with a step (increment) of [member "
@@ -57109,6 +58040,8 @@ msgid ""
"Returns falloff based on the dot product of surface normal and view "
"direction of camera (pass associated inputs to it)."
msgstr ""
+"Retorna decaimento com base no produto escalar da normal da superfície com a "
+"direção de visão da câmera (passe as entradas associadas a ele)."
#: doc/classes/VisualShaderNodeGlobalExpression.xml:4
msgid ""
@@ -57375,6 +58308,26 @@ msgid ""
"results, e.g. division by zero)."
msgstr ""
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:4
+msgid "Performs a fused multiply-add operation within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:7
+msgid "Uses three operands to compute [code](a * b + c)[/code] expression."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:15
+msgid "A type of operands and returned value."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:20
+msgid "A scalar type."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:23
+msgid "A vector type."
+msgstr ""
+
#: doc/classes/VisualShaderNodeOuterProduct.xml:4
msgid ""
"Calculates an outer product of two vectors within the visual shader graph."
@@ -57397,7 +58350,7 @@ msgstr ""
#: doc/classes/VisualShaderNodeOutput.xml:7
msgid ""
"This visual shader node is present in all shader graphs in form of \"Output"
-"\" block with mutliple output value ports."
+"\" block with multiple output value ports."
msgstr ""
#: doc/classes/VisualShaderNodeSample3D.xml:4
@@ -57761,6 +58714,20 @@ msgid ""
"[ShaderMaterial] properties."
msgstr ""
+#: doc/classes/VisualShaderNodeUniformRef.xml:4
+msgid "A reference to an existing [VisualShaderNodeUniform]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniformRef.xml:7
+msgid ""
+"Creating a reference to a [VisualShaderNodeUniform] allows you to reuse this "
+"uniform in different shaders or shader stages easily."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniformRef.xml:15
+msgid "The name of the uniform which this reference points to."
+msgstr ""
+
#: doc/classes/VisualShaderNodeVec3Constant.xml:4
msgid "A [Vector3] constant to be used within the visual shader graph."
msgstr ""
@@ -57858,7 +58825,7 @@ msgstr ""
#: doc/classes/VisualShaderNodeVectorFunc.xml:26
msgid "Returns the opposite value of the parameter."
-msgstr ""
+msgstr "Retorna o valor oposto do parâmetro."
#: doc/classes/VisualShaderNodeVectorFunc.xml:29
msgid "Returns [code]1/vector[/code]."
@@ -57866,96 +58833,96 @@ msgstr ""
#: doc/classes/VisualShaderNodeVectorFunc.xml:32
msgid "Converts RGB vector to HSV equivalent."
-msgstr ""
+msgstr "Converter vetor RGB para um HSV equivalente."
#: doc/classes/VisualShaderNodeVectorFunc.xml:35
msgid "Converts HSV vector to RGB equivalent."
-msgstr ""
+msgstr "Converter vetor HSV para um RGB equivalente."
#: doc/classes/VisualShaderNodeVectorFunc.xml:38
msgid "Returns the absolute value of the parameter."
-msgstr ""
+msgstr "Retorna o valor absoluto do parâmetro."
#: doc/classes/VisualShaderNodeVectorFunc.xml:41
msgid "Returns the arc-cosine of the parameter."
-msgstr ""
+msgstr "Retorna o arco-cosseno do parâmetro."
#: doc/classes/VisualShaderNodeVectorFunc.xml:44
msgid "Returns the inverse hyperbolic cosine of the parameter."
-msgstr ""
+msgstr "Retorna o cosseno hiperbólico inverso do parâmetro."
#: doc/classes/VisualShaderNodeVectorFunc.xml:47
msgid "Returns the arc-sine of the parameter."
-msgstr ""
+msgstr "Retorna o arco-seno do parâmetro."
#: doc/classes/VisualShaderNodeVectorFunc.xml:50
msgid "Returns the inverse hyperbolic sine of the parameter."
-msgstr ""
+msgstr "Retorna o seno hiperbólico inverso do parâmetro."
#: doc/classes/VisualShaderNodeVectorFunc.xml:53
msgid "Returns the arc-tangent of the parameter."
-msgstr ""
+msgstr "Retorna o arco-tangente do parâmetro."
#: doc/classes/VisualShaderNodeVectorFunc.xml:56
msgid "Returns the inverse hyperbolic tangent of the parameter."
-msgstr ""
+msgstr "Retorna a tangente hiperbólica inversa do parâmetro."
#: doc/classes/VisualShaderNodeVectorFunc.xml:59
msgid ""
"Finds the nearest integer that is greater than or equal to the parameter."
-msgstr ""
+msgstr "Encontra o inteiro mais próximo que é maior ou igual ao parâmetro."
#: doc/classes/VisualShaderNodeVectorFunc.xml:62
msgid "Returns the cosine of the parameter."
-msgstr ""
+msgstr "Retorna o cosseno do parâmetro."
#: doc/classes/VisualShaderNodeVectorFunc.xml:65
msgid "Returns the hyperbolic cosine of the parameter."
-msgstr ""
+msgstr "Retorna o cosseno hiperbólico do parâmetro."
#: doc/classes/VisualShaderNodeVectorFunc.xml:68
msgid "Converts a quantity in radians to degrees."
-msgstr ""
+msgstr "Converte um valor em radianos para graus."
#: doc/classes/VisualShaderNodeVectorFunc.xml:71
msgid "Base-e Exponential."
-msgstr ""
+msgstr "Exponencial de base e."
#: doc/classes/VisualShaderNodeVectorFunc.xml:74
msgid "Base-2 Exponential."
-msgstr ""
+msgstr "Exponencial de base 2."
#: doc/classes/VisualShaderNodeVectorFunc.xml:77
msgid "Finds the nearest integer less than or equal to the parameter."
-msgstr ""
+msgstr "Encontra o inteiro mais próximo que é menor ou igual ao parâmetro."
#: doc/classes/VisualShaderNodeVectorFunc.xml:80
msgid "Computes the fractional part of the argument."
-msgstr ""
+msgstr "Calcula a parte fracional do argumento."
#: doc/classes/VisualShaderNodeVectorFunc.xml:83
msgid "Returns the inverse of the square root of the parameter."
-msgstr ""
+msgstr "Retorna o inverso da raiz quadrada do parâmetro."
#: doc/classes/VisualShaderNodeVectorFunc.xml:86
msgid "Natural logarithm."
-msgstr ""
+msgstr "Logaritmo natural."
#: doc/classes/VisualShaderNodeVectorFunc.xml:89
msgid "Base-2 logarithm."
-msgstr ""
+msgstr "Logaritmo de base 2."
#: doc/classes/VisualShaderNodeVectorFunc.xml:92
msgid "Converts a quantity in degrees to radians."
-msgstr ""
+msgstr "Converte uma quantidade em graus para radianos."
#: doc/classes/VisualShaderNodeVectorFunc.xml:95
msgid "Finds the nearest integer to the parameter."
-msgstr ""
+msgstr "Encontra o inteiro mais próximo do parâmetro."
#: doc/classes/VisualShaderNodeVectorFunc.xml:98
msgid "Finds the nearest even integer to the parameter."
-msgstr ""
+msgstr "Encontra o número inteiro par mais próximo do parâmetro."
#: doc/classes/VisualShaderNodeVectorFunc.xml:101
msgid ""
@@ -57966,23 +58933,23 @@ msgstr ""
#: doc/classes/VisualShaderNodeVectorFunc.xml:104
msgid "Returns the sine of the parameter."
-msgstr ""
+msgstr "Retorna o seno do parâmetro."
#: doc/classes/VisualShaderNodeVectorFunc.xml:107
msgid "Returns the hyperbolic sine of the parameter."
-msgstr ""
+msgstr "Retorna o seno hiperbólico do parâmetro."
#: doc/classes/VisualShaderNodeVectorFunc.xml:110
msgid "Returns the square root of the parameter."
-msgstr ""
+msgstr "Retorna a raiz quadrada do parâmetro."
#: doc/classes/VisualShaderNodeVectorFunc.xml:113
msgid "Returns the tangent of the parameter."
-msgstr ""
+msgstr "Retorna a tangente do parâmetro."
#: doc/classes/VisualShaderNodeVectorFunc.xml:116
msgid "Returns the hyperbolic tangent of the parameter."
-msgstr ""
+msgstr "Retorna a tangente hiperbólica do parâmetro."
#: doc/classes/VisualShaderNodeVectorFunc.xml:119
msgid ""
@@ -58041,11 +59008,11 @@ msgstr ""
#: doc/classes/VisualShaderNodeVectorOp.xml:29
msgid "Divides vector by vector."
-msgstr ""
+msgstr "Divide vetor por vetor."
#: doc/classes/VisualShaderNodeVectorOp.xml:32
msgid "Returns the remainder of the two vectors."
-msgstr ""
+msgstr "Retorna o resto dos dois vetores."
#: doc/classes/VisualShaderNodeVectorOp.xml:35
msgid ""
@@ -58063,11 +59030,11 @@ msgstr ""
#: doc/classes/VisualShaderNodeVectorOp.xml:44
msgid "Calculates the cross product of two vectors."
-msgstr ""
+msgstr "Calcula o produto vetorial de dois vetores."
#: doc/classes/VisualShaderNodeVectorOp.xml:47
msgid "Returns the arc-tangent of the parameters."
-msgstr ""
+msgstr "Retorna o arco-tangente dos parâmetros."
#: doc/classes/VisualShaderNodeVectorOp.xml:50
msgid ""
@@ -58091,7 +59058,7 @@ msgstr ""
msgid ""
"Translated to [code]refract(I, N, eta)[/code] in the shader language, where "
"[code]I[/code] is the incident vector, [code]N[/code] is the normal vector "
-"and [code]eta[/code] is the ratio of the indicies of the refraction."
+"and [code]eta[/code] is the ratio of the indices of the refraction."
msgstr ""
#: doc/classes/VisualShaderNodeVectorScalarMix.xml:4
diff --git a/doc/translations/ro.po b/doc/translations/ro.po
new file mode 100644
index 0000000000..fb47ddb0dc
--- /dev/null
+++ b/doc/translations/ro.po
@@ -0,0 +1,60790 @@
+# LANGUAGE translation of the Godot Engine class reference.
+# Copyright (c) 2007-2020 Juan Linietsky, Ariel Manzur.
+# Copyright (c) 2014-2020 Godot Engine contributors (cf. AUTHORS.md).
+# This file is distributed under the same license as the Godot source code.
+#
+# EVOKZH <avip.ady@gmail.com>, 2020.
+# f0roots <f0rootss@gmail.com>, 2020.
+msgid ""
+msgstr ""
+"Project-Id-Version: Godot Engine class reference\n"
+"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
+"PO-Revision-Date: 2020-07-19 01:27+0000\n"
+"Last-Translator: f0roots <f0rootss@gmail.com>\n"
+"Language-Team: Romanian <https://hosted.weblate.org/projects/godot-engine/"
+"godot-class-reference/ro/>\n"
+"Language: ro\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8-bit\n"
+"Plural-Forms: nplurals=3; plural=n==1 ? 0 : (n==0 || (n%100 > 0 && n%100 < "
+"20)) ? 1 : 2;\n"
+"X-Generator: Weblate 4.2-dev\n"
+
+#: doc/tools/makerst.py
+msgid "Description"
+msgstr "Descriere"
+
+#: doc/tools/makerst.py
+msgid "Tutorials"
+msgstr "Tutoriale"
+
+#: doc/tools/makerst.py
+msgid "Properties"
+msgstr "Proprietăți"
+
+#: doc/tools/makerst.py
+msgid "Methods"
+msgstr "Metode"
+
+#: doc/tools/makerst.py
+msgid "Theme Properties"
+msgstr "Proprietățile Temei"
+
+#: doc/tools/makerst.py
+msgid "Signals"
+msgstr "Semnale"
+
+#: doc/tools/makerst.py
+msgid "Enumerations"
+msgstr "Enumerări"
+
+#: doc/tools/makerst.py
+msgid "Constants"
+msgstr "Constante"
+
+#: doc/tools/makerst.py
+msgid "Property Descriptions"
+msgstr "Descrieri Proprietate"
+
+#: doc/tools/makerst.py
+msgid "Method Descriptions"
+msgstr "Descrierile Metodei"
+
+#: modules/gdscript/doc_classes/@GDScript.xml:4
+msgid "Built-in GDScript functions."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:7
+msgid ""
+"List of core built-in GDScript functions. Math functions and other "
+"utilities. Everything else is provided by objects. (Keywords: builtin, built "
+"in, global functions.)"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:24
+msgid ""
+"Returns a color constructed from integer red, green, blue, and alpha "
+"channels. Each channel should have 8 bits of information ranging from 0 to "
+"255.\n"
+"[code]r8[/code] red channel\n"
+"[code]g8[/code] green channel\n"
+"[code]b8[/code] blue channel\n"
+"[code]a8[/code] alpha channel\n"
+"[codeblock]\n"
+"red = Color8(255, 0, 0)\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:42
+msgid ""
+"Returns a color according to the standardized [code]name[/code] with "
+"[code]alpha[/code] ranging from 0 to 1.\n"
+"[codeblock]\n"
+"red = ColorN(\"red\", 1)\n"
+"[/codeblock]\n"
+"Supported color names are the same as the constants defined in [Color]."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:55
+msgid ""
+"Returns the absolute value of parameter [code]s[/code] (i.e. positive "
+"value).\n"
+"[codeblock]\n"
+"# a is 1\n"
+"a = abs(-1)\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:68
+msgid ""
+"Returns the arc cosine of [code]s[/code] in radians. Use to get the angle of "
+"cosine [code]s[/code].\n"
+"[codeblock]\n"
+"# c is 0.523599 or 30 degrees if converted with rad2deg(s)\n"
+"c = acos(0.866025)\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:81
+msgid ""
+"Returns the arc sine of [code]s[/code] in radians. Use to get the angle of "
+"sine [code]s[/code].\n"
+"[codeblock]\n"
+"# s is 0.523599 or 30 degrees if converted with rad2deg(s)\n"
+"s = asin(0.5)\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:96
+msgid ""
+"Asserts that the [code]condition[/code] is [code]true[/code]. If the "
+"[code]condition[/code] is [code]false[/code], an error is generated and the "
+"program is halted until you resume it. Only executes in debug builds, or "
+"when running the game from the editor. Use it for debugging purposes, to "
+"make sure a statement is [code]true[/code] during development.\n"
+"The optional [code]message[/code] argument, if given, is shown in addition "
+"to the generic \"Assertion failed\" message. You can use this to provide "
+"additional details about why the assertion failed.\n"
+"[codeblock]\n"
+"# Imagine we always want speed to be between 0 and 20\n"
+"speed = -10\n"
+"assert(speed < 20) # True, the program will continue\n"
+"assert(speed >= 0) # False, the program will stop\n"
+"assert(speed >= 0 && speed < 20) # You can also combine the two conditional "
+"statements in one check\n"
+"assert(speed < 20, \"speed = %f, but the speed limit is 20\" % speed) # Show "
+"a message with clarifying details\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:114
+msgid ""
+"Returns the arc tangent of [code]s[/code] in radians. Use it to get the "
+"angle from an angle's tangent in trigonometry: [code]atan(tan(angle)) == "
+"angle[/code].\n"
+"The method cannot know in which quadrant the angle should fall. See [method "
+"atan2] if you have both [code]y[/code] and [code]x[/code].\n"
+"[codeblock]\n"
+"a = atan(0.5) # a is 0.463648\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:129
+msgid ""
+"Returns the arc tangent of [code]y/x[/code] in radians. Use to get the angle "
+"of tangent [code]y/x[/code]. To compute the value, the method takes into "
+"account the sign of both arguments in order to determine the quadrant.\n"
+"Important note: The Y coordinate comes first, by convention.\n"
+"[codeblock]\n"
+"a = atan2(0, -1) # a is 3.141593\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:144
+msgid ""
+"Decodes a byte array back to a value. When [code]allow_objects[/code] is "
+"[code]true[/code] decoding objects is allowed.\n"
+"[b]WARNING:[/b] Deserialized object can contain code which gets executed. Do "
+"not use this option if the serialized object comes from untrusted sources to "
+"avoid potential security threats (remote code execution)."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:156
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:145
+msgid ""
+"Converts a 2D point expressed in the cartesian coordinate system (X and Y "
+"axis) to the polar coordinate system (a distance from the origin and an "
+"angle)."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:165
+msgid ""
+"Rounds [code]s[/code] upward (towards positive infinity), returning the "
+"smallest whole number that is not less than [code]s[/code].\n"
+"[codeblock]\n"
+"i = ceil(1.45) # i is 2\n"
+"i = ceil(1.001) # i is 2\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:178
+msgid ""
+"Returns a character as a String of the given Unicode code point (which is "
+"compatible with ASCII code).\n"
+"[codeblock]\n"
+"a = char(65) # a is \"A\"\n"
+"a = char(65 + 32) # a is \"a\"\n"
+"a = char(8364) # a is \"€\"\n"
+"[/codeblock]\n"
+"This is the inverse of [method ord]."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:197
+msgid ""
+"Clamps [code]value[/code] and returns a value not less than [code]min[/code] "
+"and not more than [code]max[/code].\n"
+"[codeblock]\n"
+"speed = 1000\n"
+"# a is 20\n"
+"a = clamp(speed, 1, 20)\n"
+"\n"
+"speed = -10\n"
+"# a is 1\n"
+"a = clamp(speed, 1, 20)\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:217
+msgid ""
+"Converts from a type to another in the best way possible. The [code]type[/"
+"code] parameter uses the [enum Variant.Type] values.\n"
+"[codeblock]\n"
+"a = Vector2(1, 0)\n"
+"# Prints 1\n"
+"print(a.length())\n"
+"a = convert(a, TYPE_STRING)\n"
+"# Prints 6 as \"(1, 0)\" is 6 characters\n"
+"print(a.length())\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:234
+msgid ""
+"Returns the cosine of angle [code]s[/code] in radians.\n"
+"[codeblock]\n"
+"# Prints 1 then -1\n"
+"print(cos(PI * 2))\n"
+"print(cos(PI))\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:248
+msgid ""
+"Returns the hyperbolic cosine of [code]s[/code] in radians.\n"
+"[codeblock]\n"
+"# Prints 1.543081\n"
+"print(cosh(1))\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:261
+msgid "Converts from decibels to linear energy (audio)."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:274
+msgid ""
+"Returns the result of [code]value[/code] decreased by [code]step[/code] * "
+"[code]amount[/code].\n"
+"[codeblock]\n"
+"# a = 59\n"
+"a = dectime(60, 10, 0.1))\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:287
+msgid ""
+"Converts an angle expressed in degrees to radians.\n"
+"[codeblock]\n"
+"# r is 3.141593\n"
+"r = deg2rad(180)\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:300
+msgid ""
+"Converts a previously converted instance to a dictionary, back into an "
+"instance. Useful for deserializing."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:311
+msgid ""
+"Easing function, based on exponent. The curve values are: 0 is constant, 1 "
+"is linear, 0 to 1 is ease-in, 1+ is ease out. Negative values are in-out/out "
+"in."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:320
+msgid ""
+"The natural exponential function. It raises the mathematical constant [b]e[/"
+"b] to the power of [code]s[/code] and returns it.\n"
+"[b]e[/b] has an approximate value of 2.71828, and can be obtained with "
+"[code]exp(1)[/code].\n"
+"For exponents to other bases use the method [method pow].\n"
+"[codeblock]\n"
+"a = exp(2) # Approximately 7.39\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:334
+msgid ""
+"Rounds [code]s[/code] downward (towards negative infinity), returning the "
+"largest whole number that is not more than [code]s[/code].\n"
+"[codeblock]\n"
+"# a is 2.0\n"
+"a = floor(2.99)\n"
+"# a is -3.0\n"
+"a = floor(-2.99)\n"
+"[/codeblock]\n"
+"[b]Note:[/b] This method returns a float. If you need an integer, you can "
+"use [code]int(s)[/code] directly."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:352
+msgid ""
+"Returns the floating-point remainder of [code]a/b[/code], keeping the sign "
+"of [code]a[/code].\n"
+"[codeblock]\n"
+"# Remainder is 1.5\n"
+"var remainder = fmod(7, 5.5)\n"
+"[/codeblock]\n"
+"For the integer remainder operation, use the % operator."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:368
+msgid ""
+"Returns the floating-point modulus of [code]a/b[/code] that wraps equally in "
+"positive and negative.\n"
+"[codeblock]\n"
+"var i = -6\n"
+"while i < 5:\n"
+" prints(i, fposmod(i, 3))\n"
+" i += 1\n"
+"[/codeblock]\n"
+"Produces:\n"
+"[codeblock]\n"
+"-6 0\n"
+"-5 1\n"
+"-4 2\n"
+"-3 0\n"
+"-2 1\n"
+"-1 2\n"
+"0 0\n"
+"1 1\n"
+"2 2\n"
+"3 0\n"
+"4 1\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:399
+msgid ""
+"Returns a reference to the specified function [code]funcname[/code] in the "
+"[code]instance[/code] node. As functions aren't first-class objects in "
+"GDscript, use [code]funcref[/code] to store a [FuncRef] in a variable and "
+"call it later.\n"
+"[codeblock]\n"
+"func foo():\n"
+" return(\"bar\")\n"
+"\n"
+"a = funcref(self, \"foo\")\n"
+"print(a.call_func()) # Prints bar\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:413
+msgid ""
+"Returns an array of dictionaries representing the current call stack.\n"
+"[codeblock]\n"
+"func _ready():\n"
+" foo()\n"
+"\n"
+"func foo():\n"
+" bar()\n"
+"\n"
+"func bar():\n"
+" print(get_stack())\n"
+"[/codeblock]\n"
+"would print\n"
+"[codeblock]\n"
+"[{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, "
+"source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:436
+msgid ""
+"Returns the integer hash of the variable passed.\n"
+"[codeblock]\n"
+"print(hash(\"a\")) # Prints 177670\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:448
+msgid ""
+"Returns the passed instance converted to a dictionary (useful for "
+"serializing).\n"
+"[codeblock]\n"
+"var foo = \"bar\"\n"
+"func _ready():\n"
+" var d = inst2dict(self)\n"
+" print(d.keys())\n"
+" print(d.values())\n"
+"[/codeblock]\n"
+"Prints out:\n"
+"[codeblock]\n"
+"[@subpath, @path, foo]\n"
+"[, res://test.gd, bar]\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:469
+msgid ""
+"Returns the Object that corresponds to [code]instance_id[/code]. All Objects "
+"have a unique instance ID.\n"
+"[codeblock]\n"
+"var foo = \"bar\"\n"
+"func _ready():\n"
+" var id = get_instance_id()\n"
+" var inst = instance_from_id(id)\n"
+" print(inst.foo) # Prints bar\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:489
+msgid ""
+"Returns a normalized value considering the given range. This is the opposite "
+"of [method lerp].\n"
+"[codeblock]\n"
+"var middle = lerp(20, 30, 0.75)\n"
+"# `middle` is now 27.5.\n"
+"# Now, we pretend to have forgotten the original ratio and want to get it "
+"back.\n"
+"var ratio = inverse_lerp(20, 30, 27.5)\n"
+"# `ratio` is now 0.75.\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:507
+msgid ""
+"Returns [code]true[/code] if [code]a[/code] and [code]b[/code] are "
+"approximately equal to each other.\n"
+"Here, approximately equal means that [code]a[/code] and [code]b[/code] are "
+"within a small internal epsilon of each other, which scales with the "
+"magnitude of the numbers.\n"
+"Infinity values of the same sign are considered equal."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:518
+msgid ""
+"Returns whether [code]s[/code] is an infinity value (either positive "
+"infinity or negative infinity)."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:527
+msgid ""
+"Returns whether [code]instance[/code] is a valid object (e.g. has not been "
+"deleted from memory)."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:536
+msgid ""
+"Returns whether [code]s[/code] is a NaN (\"Not a Number\" or invalid) value."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:545
+msgid ""
+"Returns [code]true[/code] if [code]s[/code] is zero or almost zero.\n"
+"This method is faster than using [method is_equal_approx] with one value as "
+"zero."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:555
+msgid ""
+"Returns length of Variant [code]var[/code]. Length is the character count of "
+"String, element count of Array, size of Dictionary, etc.\n"
+"[b]Note:[/b] Generates a fatal error if Variant can not provide a length.\n"
+"[codeblock]\n"
+"a = [1, 2, 3, 4]\n"
+"len(a) # Returns 4\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:573
+msgid ""
+"Linearly interpolates between two values by a normalized value. This is the "
+"opposite of [method inverse_lerp].\n"
+"If the [code]from[/code] and [code]to[/code] arguments are of type [int] or "
+"[float], the return value is a [float].\n"
+"If both are of the same vector type ([Vector2], [Vector3] or [Color]), the "
+"return value will be of the same type ([code]lerp[/code] then calls the "
+"vector type's [code]lerp[/code] method).\n"
+"[codeblock]\n"
+"lerp(0, 4, 0.75) # Returns 3.0\n"
+"lerp(Vector2(1, 5), Vector2(3, 2), 0.5) # Returns Vector2(2, 3.5)\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:592
+msgid ""
+"Linearly interpolates between two angles (in radians) by a normalized "
+"value.\n"
+"Similar to [method lerp], but interpolates correctly when the angles wrap "
+"around [constant @GDScript.TAU].\n"
+"[codeblock]\n"
+"extends Sprite\n"
+"var elapsed = 0.0\n"
+"func _process(delta):\n"
+" var min_angle = deg2rad(0.0)\n"
+" var max_angle = deg2rad(90.0)\n"
+" rotation = lerp_angle(min_angle, max_angle, elapsed)\n"
+" elapsed += delta\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:611
+msgid ""
+"Converts from linear energy to decibels (audio). This can be used to "
+"implement volume sliders that behave as expected (since volume isn't "
+"linear). Example:\n"
+"[codeblock]\n"
+"# \"Slider\" refers to a node that inherits Range such as HSlider or "
+"VSlider.\n"
+"# Its range must be configured to go from 0 to 1.\n"
+"# Change the bus name if you'd like to change the volume of a specific bus "
+"only.\n"
+"AudioServer.set_bus_volume_db(AudioServer.get_bus_index(\"Master\"), "
+"linear2db($Slider.value))\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:626
+msgid ""
+"Loads a resource from the filesystem located at [code]path[/code]. The "
+"resource is loaded on the method call (unless it's referenced already "
+"elsewhere, e.g. in another script or in the scene), which might cause slight "
+"delay, especially when loading scenes. To avoid unnecessary delays when "
+"loading something multiple times, either store the resource in a variable or "
+"use [method preload].\n"
+"[b]Note:[/b] Resource paths can be obtained by right-clicking on a resource "
+"in the FileSystem dock and choosing \"Copy Path\" or by dragging the file "
+"from the FileSystem dock into the script.\n"
+"[codeblock]\n"
+"# Load a scene called main located in the root of the project directory and "
+"cache it in a variable.\n"
+"var main = load(\"res://main.tscn\") # main will contain a PackedScene "
+"resource.\n"
+"[/codeblock]\n"
+"[b]Important:[/b] The path must be absolute, a local path will just return "
+"[code]null[/code]."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:641
+msgid ""
+"Natural logarithm. The amount of time needed to reach a certain level of "
+"continuous growth.\n"
+"[b]Note:[/b] This is not the same as the \"log\" function on most "
+"calculators, which uses a base 10 logarithm.\n"
+"[codeblock]\n"
+"log(10) # Returns 2.302585\n"
+"[/codeblock]\n"
+"[b]Note:[/b] The logarithm of [code]0[/code] returns [code]-inf[/code], "
+"while negative values return [code]-nan[/code]."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:657
+msgid ""
+"Returns the maximum of two values.\n"
+"[codeblock]\n"
+"max(1, 2) # Returns 2\n"
+"max(-3.99, -4) # Returns -3.99\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:672
+msgid ""
+"Returns the minimum of two values.\n"
+"[codeblock]\n"
+"min(1, 2) # Returns 1\n"
+"min(-3.99, -4) # Returns -4\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:689
+msgid ""
+"Moves [code]from[/code] toward [code]to[/code] by the [code]delta[/code] "
+"value.\n"
+"Use a negative [code]delta[/code] value to move away.\n"
+"[codeblock]\n"
+"move_toward(5, 10, 4) # Returns 9\n"
+"move_toward(10, 5, 4) # Returns 6\n"
+"move_toward(10, 5, -1.5) # Returns 11.5\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:704
+msgid ""
+"Returns the nearest equal or larger power of 2 for integer [code]value[/"
+"code].\n"
+"In other words, returns the smallest value [code]a[/code] where [code]a = "
+"pow(2, n)[/code] such that [code]value <= a[/code] for some non-negative "
+"integer [code]n[/code].\n"
+"[codeblock]\n"
+"nearest_po2(3) # Returns 4\n"
+"nearest_po2(4) # Returns 4\n"
+"nearest_po2(5) # Returns 8\n"
+"\n"
+"nearest_po2(0) # Returns 0 (this may not be what you expect)\n"
+"nearest_po2(-1) # Returns 0 (this may not be what you expect)\n"
+"[/codeblock]\n"
+"[b]WARNING:[/b] Due to the way it is implemented, this function returns "
+"[code]0[/code] rather than [code]1[/code] for non-positive values of "
+"[code]value[/code] (in reality, 1 is the smallest integer power of 2)."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:723
+msgid ""
+"Returns an integer representing the Unicode code point of the given Unicode "
+"character [code]char[/code].\n"
+"[codeblock]\n"
+"a = ord(\"A\") # a is 65\n"
+"a = ord(\"a\") # a is 97\n"
+"a = ord(\"€\") # a is 8364\n"
+"[/codeblock]\n"
+"This is the inverse of [method char]."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:738
+msgid ""
+"Parse JSON text to a Variant. (Use [method typeof] to check if the Variant's "
+"type is what you expect.)\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, parsing a JSON text will convert "
+"all numerical values to [float] types.\n"
+"[b]Note:[/b] JSON objects do not preserve key order like Godot dictionaries, "
+"thus, you should not rely on keys being in a certain order if a dictionary "
+"is constructed from JSON. In contrast, JSON arrays retain the order of their "
+"elements:\n"
+"[codeblock]\n"
+"var p = JSON.parse('[\"hello\", \"world\", \"!\"]')\n"
+"if typeof(p.result) == TYPE_ARRAY:\n"
+" print(p.result[0]) # Prints \"hello\"\n"
+"else:\n"
+" push_error(\"Unexpected results.\")\n"
+"[/codeblock]\n"
+"See also [JSON] for an alternative way to parse JSON text."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:759
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:142
+msgid ""
+"Converts a 2D point expressed in the polar coordinate system (a distance "
+"from the origin [code]r[/code] and an angle [code]th[/code]) to the "
+"cartesian coordinate system (X and Y axis)."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:770
+msgid ""
+"Returns the integer modulus of [code]a/b[/code] that wraps equally in "
+"positive and negative.\n"
+"[codeblock]\n"
+"var i = -6\n"
+"while i < 5:\n"
+" prints(i, posmod(i, 3))\n"
+" i += 1\n"
+"[/codeblock]\n"
+"Produces:\n"
+"[codeblock]\n"
+"-6 0\n"
+"-5 1\n"
+"-4 2\n"
+"-3 0\n"
+"-2 1\n"
+"-1 2\n"
+"0 0\n"
+"1 1\n"
+"2 2\n"
+"3 0\n"
+"4 1\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:801
+msgid ""
+"Returns the result of [code]x[/code] raised to the power of [code]y[/code].\n"
+"[codeblock]\n"
+"pow(2, 5) # Returns 32\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:813
+msgid ""
+"Returns a [Resource] from the filesystem located at [code]path[/code]. The "
+"resource is loaded during script parsing, i.e. is loaded with the script and "
+"[method preload] effectively acts as a reference to that resource. Note that "
+"the method requires a constant path. If you want to load a resource from a "
+"dynamic/variable path, use [method load].\n"
+"[b]Note:[/b] Resource paths can be obtained by right clicking on a resource "
+"in the Assets Panel and choosing \"Copy Path\" or by dragging the file from "
+"the FileSystem dock into the script.\n"
+"[codeblock]\n"
+"# Instance a scene.\n"
+"var diamond = preload(\"res://diamond.tscn\").instance()\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:825
+msgid ""
+"Converts one or more arguments to strings in the best way possible and "
+"prints them to the console.\n"
+"[codeblock]\n"
+"a = [1, 2, 3]\n"
+"print(\"a\", \"b\", a) # Prints ab[1, 2, 3]\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:836
+msgid "Like [method print], but prints only when used in debug mode."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:843
+msgid ""
+"Prints a stack track at code location, only works when running with debugger "
+"turned on.\n"
+"Output in the console would look something like this:\n"
+"[codeblock]\n"
+"Frame 0 - res://test.gd:16 in function '_process'\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:854
+msgid ""
+"Prints one or more arguments to strings in the best way possible to standard "
+"error line.\n"
+"[codeblock]\n"
+"printerr(\"prints to stderr\")\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:864
+msgid ""
+"Prints one or more arguments to strings in the best way possible to console. "
+"No newline is added at the end.\n"
+"[codeblock]\n"
+"printraw(\"A\")\n"
+"printraw(\"B\")\n"
+"# Prints AB\n"
+"[/codeblock]\n"
+"[b]Note:[/b] Due to limitations with Godot's built-in console, this only "
+"prints to the terminal. If you need to print in the editor, use another "
+"method, such as [method print]."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:877
+msgid ""
+"Prints one or more arguments to the console with a space between each "
+"argument.\n"
+"[codeblock]\n"
+"prints(\"A\", \"B\", \"C\") # Prints A B C\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:887
+msgid ""
+"Prints one or more arguments to the console with a tab between each "
+"argument.\n"
+"[codeblock]\n"
+"printt(\"A\", \"B\", \"C\") # Prints A B C\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:899
+msgid ""
+"Pushes an error message to Godot's built-in debugger and to the OS "
+"terminal.\n"
+"[codeblock]\n"
+"push_error(\"test error\") # Prints \"test error\" to debugger and terminal "
+"as error call\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:911
+msgid ""
+"Pushes a warning message to Godot's built-in debugger and to the OS "
+"terminal.\n"
+"[codeblock]\n"
+"push_warning(\"test warning\") # Prints \"test warning\" to debugger and "
+"terminal as warning call\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:923
+msgid ""
+"Converts an angle expressed in radians to degrees.\n"
+"[codeblock]\n"
+"rad2deg(0.523599) # Returns 30\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:937
+msgid ""
+"Random range, any floating point value between [code]from[/code] and "
+"[code]to[/code].\n"
+"[codeblock]\n"
+"prints(rand_range(0, 1), rand_range(0, 1)) # Prints e.g. 0.135591 0.405263\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:949
+msgid ""
+"Random from seed: pass a [code]seed[/code], and an array with both number "
+"and new seed is returned. \"Seed\" here refers to the internal state of the "
+"pseudo random number generator. The internal state of the current "
+"implementation is 64 bits."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:956
+msgid ""
+"Returns a random floating point value on the interval [code][0, 1][/code].\n"
+"[codeblock]\n"
+"randf() # Returns e.g. 0.375671\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:966
+msgid ""
+"Returns a random unsigned 32 bit integer. Use remainder to obtain a random "
+"value in the interval [code][0, N - 1][/code] (where N is smaller than "
+"2^32).\n"
+"[codeblock]\n"
+"randi() # Returns random integer between 0 and 2^32 - 1\n"
+"randi() % 20 # Returns random integer between 0 and 19\n"
+"randi() % 100 # Returns random integer between 0 and 99\n"
+"randi() % 100 + 1 # Returns random integer between 1 and 100\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:979
+msgid ""
+"Randomizes the seed (or the internal state) of the random number generator. "
+"Current implementation reseeds using a number based on time.\n"
+"[codeblock]\n"
+"func _ready():\n"
+" randomize()\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:990
+msgid ""
+"Returns an array with the given range. Range can be 1 argument N (0 to N-1), "
+"two arguments (initial, final-1) or three arguments (initial, final-1, "
+"increment).\n"
+"[codeblock]\n"
+"for i in range(4):\n"
+" print(i)\n"
+"for i in range(2, 5):\n"
+" print(i)\n"
+"for i in range(0, 6, 2):\n"
+" print(i)\n"
+"[/codeblock]\n"
+"Output:\n"
+"[codeblock]\n"
+"0\n"
+"1\n"
+"2\n"
+"3\n"
+"\n"
+"2\n"
+"3\n"
+"4\n"
+"\n"
+"0\n"
+"2\n"
+"4\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1030
+msgid ""
+"Maps a [code]value[/code] from range [code][istart, istop][/code] to [code]"
+"[ostart, ostop][/code].\n"
+"[codeblock]\n"
+"range_lerp(75, 0, 100, -1, 1) # Returns 0.5\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1042
+msgid ""
+"Rounds [code]s[/code] to the nearest whole number, with halfway cases "
+"rounded away from zero.\n"
+"[codeblock]\n"
+"round(2.6) # Returns 3\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1054
+msgid ""
+"Sets seed for the random number generator.\n"
+"[codeblock]\n"
+"my_seed = \"Godot Rocks\"\n"
+"seed(my_seed.hash())\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1067
+msgid ""
+"Returns the sign of [code]s[/code]: -1 or 1. Returns 0 if [code]s[/code] is "
+"0.\n"
+"[codeblock]\n"
+"sign(-6) # Returns -1\n"
+"sign(0) # Returns 0\n"
+"sign(6) # Returns 1\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1081
+msgid ""
+"Returns the sine of angle [code]s[/code] in radians.\n"
+"[codeblock]\n"
+"sin(0.523599) # Returns 0.5\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1093
+msgid ""
+"Returns the hyperbolic sine of [code]s[/code].\n"
+"[codeblock]\n"
+"a = log(2.0) # Returns 0.693147\n"
+"sinh(a) # Returns 0.75\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1110
+msgid ""
+"Returns the result of smoothly interpolating the value of [code]s[/code] "
+"between [code]0[/code] and [code]1[/code], based on the where [code]s[/code] "
+"lies with respect to the edges [code]from[/code] and [code]to[/code].\n"
+"The return value is [code]0[/code] if [code]s <= from[/code], and [code]1[/"
+"code] if [code]s >= to[/code]. If [code]s[/code] lies between [code]from[/"
+"code] and [code]to[/code], the returned value follows an S-shaped curve that "
+"maps [code]s[/code] between [code]0[/code] and [code]1[/code].\n"
+"This S-shaped curve is the cubic Hermite interpolator, given by [code]f(s) = "
+"3*s^2 - 2*s^3[/code].\n"
+"[codeblock]\n"
+"smoothstep(0, 2, -5.0) # Returns 0.0\n"
+"smoothstep(0, 2, 0.5) # Returns 0.15625\n"
+"smoothstep(0, 2, 1.0) # Returns 0.5\n"
+"smoothstep(0, 2, 2.0) # Returns 1.0\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1127
+msgid ""
+"Returns the square root of [code]s[/code], where [code]s[/code] is a non-"
+"negative number.\n"
+"[codeblock]\n"
+"sqrt(9) # Returns 3\n"
+"[/codeblock]\n"
+"[b]Note:[/b]Negative values of [code]s[/code] return NaN. If you need "
+"negative inputs, use [code]System.Numerics.Complex[/code] in C#."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1140
+msgid ""
+"Returns the position of the first non-zero digit, after the decimal point. "
+"Note that the maximum return value is 10, which is a design decision in the "
+"implementation.\n"
+"[codeblock]\n"
+"# n is 0\n"
+"n = step_decimals(5)\n"
+"# n is 4\n"
+"n = step_decimals(1.0005)\n"
+"# n is 9\n"
+"n = step_decimals(0.000000005)\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1159
+msgid ""
+"Snaps float value [code]s[/code] to a given [code]step[/code]. This can also "
+"be used to round a floating point number to an arbitrary number of "
+"decimals.\n"
+"[codeblock]\n"
+"stepify(100, 32) # Returns 96\n"
+"stepify(3.14159, 0.01) # Returns 3.14\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1170
+msgid ""
+"Converts one or more arguments to string in the best way possible.\n"
+"[codeblock]\n"
+"var a = [10, 20, 30]\n"
+"var b = str(a);\n"
+"len(a) # Returns 3\n"
+"len(b) # Returns 12\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1185
+msgid ""
+"Converts a formatted string that was returned by [method var2str] to the "
+"original value.\n"
+"[codeblock]\n"
+"a = '{ \"a\": 1, \"b\": 2 }'\n"
+"b = str2var(a)\n"
+"print(b[\"a\"]) # Prints 1\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1199
+msgid ""
+"Returns the tangent of angle [code]s[/code] in radians.\n"
+"[codeblock]\n"
+"tan(deg2rad(45)) # Returns 1\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1211
+msgid ""
+"Returns the hyperbolic tangent of [code]s[/code].\n"
+"[codeblock]\n"
+"a = log(2.0) # Returns 0.693147\n"
+"tanh(a) # Returns 0.6\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1224
+msgid ""
+"Converts a [Variant] [code]var[/code] to JSON text and return the result. "
+"Useful for serializing data to store or send over the network.\n"
+"[codeblock]\n"
+"# Both numbers below are integers.\n"
+"a = { \"a\": 1, \"b\": 2 }\n"
+"b = to_json(a)\n"
+"print(b) # {\"a\":1, \"b\":2}\n"
+"# Both numbers above are floats, even if they display without any decimal "
+"places.\n"
+"[/codeblock]\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, converting a [Variant] to JSON "
+"text will convert all numerical values to [float] types.\n"
+"See also [JSON] for an alternative way to convert a [Variant] to JSON text."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1242
+msgid ""
+"Returns whether the given class exists in [ClassDB].\n"
+"[codeblock]\n"
+"type_exists(\"Sprite2D\") # Returns true\n"
+"type_exists(\"Variant\") # Returns false\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1255
+msgid ""
+"Returns the internal type of the given Variant object, using the [enum "
+"Variant.Type] values.\n"
+"[codeblock]\n"
+"p = parse_json('[\"a\", \"b\", \"c\"]')\n"
+"if typeof(p) == TYPE_ARRAY:\n"
+" print(p[0]) # Prints a\n"
+"else:\n"
+" print(\"unexpected results\")\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1271
+msgid ""
+"Checks that [code]json[/code] is valid JSON data. Returns an empty string if "
+"valid, or an error message otherwise.\n"
+"[codeblock]\n"
+"j = to_json([1, 2, 3])\n"
+"v = validate_json(j)\n"
+"if not v:\n"
+" print(\"Valid JSON.\")\n"
+"else:\n"
+" push_error(\"Invalid JSON: \" + v)\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1290
+msgid ""
+"Encodes a variable value to a byte array. When [code]full_objects[/code] is "
+"[code]true[/code] encoding objects is allowed (and can potentially include "
+"code)."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1299
+msgid ""
+"Converts a Variant [code]var[/code] to a formatted string that can later be "
+"parsed using [method str2var].\n"
+"[codeblock]\n"
+"a = { \"a\": 1, \"b\": 2 }\n"
+"print(var2str(a))\n"
+"[/codeblock]\n"
+"prints\n"
+"[codeblock]\n"
+"{\n"
+"\"a\": 1,\n"
+"\"b\": 2\n"
+"}\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1319
+msgid ""
+"Returns a weak reference to an object.\n"
+"A weak reference to an object is not enough to keep the object alive: when "
+"the only remaining references to a referent are weak references, garbage "
+"collection is free to destroy the referent and reuse its memory for "
+"something else. However, until the object is actually destroyed the weak "
+"reference may return the object even if there are no strong references to it."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1333
+msgid ""
+"Wraps float [code]value[/code] between [code]min[/code] and [code]max[/"
+"code].\n"
+"Usable for creating loop-alike behavior or infinite surfaces.\n"
+"[codeblock]\n"
+"# Infinite loop between 5.0 and 9.9\n"
+"value = wrapf(value + 0.1, 5.0, 10.0)\n"
+"[/codeblock]\n"
+"[codeblock]\n"
+"# Infinite rotation (in radians)\n"
+"angle = wrapf(angle + 0.1, 0.0, TAU)\n"
+"[/codeblock]\n"
+"[codeblock]\n"
+"# Infinite rotation (in radians)\n"
+"angle = wrapf(angle + 0.1, -PI, PI)\n"
+"[/codeblock]\n"
+"[b]Note:[/b] If [code]min[/code] is [code]0[/code], this is equivalent to "
+"[method fposmod], so prefer using that instead.\n"
+"[code]wrapf[/code] is more flexible than using the [method fposmod] approach "
+"by giving the user control over the minimum value."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1361
+msgid ""
+"Wraps integer [code]value[/code] between [code]min[/code] and [code]max[/"
+"code].\n"
+"Usable for creating loop-alike behavior or infinite surfaces.\n"
+"[codeblock]\n"
+"# Infinite loop between 5 and 9\n"
+"frame = wrapi(frame + 1, 5, 10)\n"
+"[/codeblock]\n"
+"[codeblock]\n"
+"# result is -2\n"
+"var result = wrapi(-6, -5, -1)\n"
+"[/codeblock]\n"
+"[b]Note:[/b] If [code]min[/code] is [code]0[/code], this is equivalent to "
+"[method posmod], so prefer using that instead.\n"
+"[code]wrapi[/code] is more flexible than using the [method posmod] approach "
+"by giving the user control over the minimum value."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1378
+msgid ""
+"Constant that represents how many times the diameter of a circle fits around "
+"its perimeter. This is equivalent to [code]TAU / 2[/code]."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1381
+msgid "The circle constant, the circumference of the unit circle in radians."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1384
+msgid "Positive infinity. For negative infinity, use -INF."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1387
+msgid ""
+"\"Not a Number\", an invalid value. [code]NaN[/code] has special properties, "
+"including that it is not equal to itself. It is output by some invalid "
+"operations, such as dividing zero by zero."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:4
+msgid "Global scope constants and variables."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:7
+msgid ""
+"Global scope constants and variables. This is all that resides in the "
+"globals, constants regarding error codes, keycodes, property hints, etc.\n"
+"Singletons are also documented here, since they can be accessed from "
+"anywhere."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:16
+msgid "The [AudioServer] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:19
+msgid "The [CameraServer] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:22
+msgid "The [ClassDB] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:25
+msgid "The [DisplayServer] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:28
+msgid "The [Engine] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:31
+msgid "The [Geometry2D] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:34
+msgid "The [Geometry3D] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:37
+msgid "The [GodotSharp] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:40
+msgid "The [IP] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:43
+msgid "The [Input] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:46
+msgid "The [InputMap] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:49
+msgid "The [JSON] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:52
+msgid ""
+"The [JavaClassWrapper] singleton.\n"
+"[b]Note:[/b] Only implemented on Android."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:56
+msgid ""
+"The [JavaScript] singleton.\n"
+"[b]Note:[/b] Only implemented on HTML5."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:60
+msgid "The [Marshalls] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:63
+msgid "The [NavigationMeshGenerator] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:66 doc/classes/@GlobalScope.xml:69
+msgid "The [NavigationServer2D] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:72
+msgid "The [OS] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:75
+msgid "The [Performance] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:78
+msgid "The [PhysicsServer2D] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:81
+msgid "The [PhysicsServer3D] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:84
+msgid "The [ProjectSettings] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:87
+msgid "The [RenderingServer] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:90
+msgid "The [ResourceLoader] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:93
+msgid "The [ResourceSaver] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:96
+msgid "The [TranslationServer] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:99
+msgid "The [VisualScriptEditor] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:102
+msgid "The [XRServer] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:107
+msgid "Left margin, usually used for [Control] or [StyleBox]-derived classes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:110
+msgid "Top margin, usually used for [Control] or [StyleBox]-derived classes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:113
+msgid "Right margin, usually used for [Control] or [StyleBox]-derived classes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:116
+msgid ""
+"Bottom margin, usually used for [Control] or [StyleBox]-derived classes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:119
+msgid "Top-left corner."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:122
+msgid "Top-right corner."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:125
+msgid "Bottom-right corner."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:128
+msgid "Bottom-left corner."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:131
+msgid ""
+"General vertical alignment, usually used for [Separator], [ScrollBar], "
+"[Slider], etc."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:134
+msgid ""
+"General horizontal alignment, usually used for [Separator], [ScrollBar], "
+"[Slider], etc."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:137
+msgid "Horizontal left alignment, usually for text-derived classes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:140
+msgid "Horizontal center alignment, usually for text-derived classes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:143
+msgid "Horizontal right alignment, usually for text-derived classes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:146
+msgid "Vertical top alignment, usually for text-derived classes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:149
+msgid "Vertical center alignment, usually for text-derived classes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:152
+msgid "Vertical bottom alignment, usually for text-derived classes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:155
+msgid "Keycodes with this bit applied are non-printable."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:158
+msgid "Escape key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:161
+msgid "Tab key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:164
+msgid "Shift + Tab key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:167
+msgid "Backspace key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:170
+msgid "Return key (on the main keyboard)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:173
+msgid "Enter key on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:176
+msgid "Insert key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:179
+msgid "Delete key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:182
+msgid "Pause key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:185
+msgid "Print Screen key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:188
+msgid "System Request key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:191
+msgid "Clear key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:194
+msgid "Home key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:197
+msgid "End key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:200
+msgid "Left arrow key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:203
+msgid "Up arrow key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:206
+msgid "Right arrow key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:209
+msgid "Down arrow key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:212
+msgid "Page Up key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:215
+msgid "Page Down key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:218
+msgid "Shift key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:221
+msgid "Control key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:224
+msgid "Meta key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:227
+msgid "Alt key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:230
+msgid "Caps Lock key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:233
+msgid "Num Lock key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:236
+msgid "Scroll Lock key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:239
+msgid "F1 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:242
+msgid "F2 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:245
+msgid "F3 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:248
+msgid "F4 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:251
+msgid "F5 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:254
+msgid "F6 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:257
+msgid "F7 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:260
+msgid "F8 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:263
+msgid "F9 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:266
+msgid "F10 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:269
+msgid "F11 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:272
+msgid "F12 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:275
+msgid "F13 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:278
+msgid "F14 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:281
+msgid "F15 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:284
+msgid "F16 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:287
+msgid "Multiply (*) key on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:290
+msgid "Divide (/) key on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:293
+msgid "Subtract (-) key on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:296
+msgid "Period (.) key on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:299
+msgid "Add (+) key on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:302
+msgid "Number 0 on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:305
+msgid "Number 1 on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:308
+msgid "Number 2 on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:311
+msgid "Number 3 on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:314
+msgid "Number 4 on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:317
+msgid "Number 5 on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:320
+msgid "Number 6 on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:323
+msgid "Number 7 on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:326
+msgid "Number 8 on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:329
+msgid "Number 9 on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:332
+msgid "Left Super key (Windows key)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:335
+msgid "Right Super key (Windows key)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:338
+msgid "Context menu key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:341
+msgid "Left Hyper key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:344
+msgid "Right Hyper key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:347
+msgid "Help key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:350
+msgid "Left Direction key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:353
+msgid "Right Direction key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:356
+msgid "Back key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:359
+msgid "Forward key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:362
+msgid "Stop key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:365
+msgid "Refresh key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:368
+msgid "Volume down key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:371
+msgid "Mute volume key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:374
+msgid "Volume up key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:377
+msgid "Bass Boost key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:380
+msgid "Bass up key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:383
+msgid "Bass down key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:386
+msgid "Treble up key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:389
+msgid "Treble down key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:392
+msgid "Media play key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:395
+msgid "Media stop key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:398
+msgid "Previous song key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:401
+msgid "Next song key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:404
+msgid "Media record key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:407
+msgid "Home page key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:410
+msgid "Favorites key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:413
+msgid "Search key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:416
+msgid "Standby key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:419
+msgid "Open URL / Launch Browser key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:422
+msgid "Launch Mail key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:425
+msgid "Launch Media key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:428
+msgid "Launch Shortcut 0 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:431
+msgid "Launch Shortcut 1 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:434
+msgid "Launch Shortcut 2 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:437
+msgid "Launch Shortcut 3 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:440
+msgid "Launch Shortcut 4 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:443
+msgid "Launch Shortcut 5 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:446
+msgid "Launch Shortcut 6 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:449
+msgid "Launch Shortcut 7 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:452
+msgid "Launch Shortcut 8 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:455
+msgid "Launch Shortcut 9 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:458
+msgid "Launch Shortcut A key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:461
+msgid "Launch Shortcut B key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:464
+msgid "Launch Shortcut C key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:467
+msgid "Launch Shortcut D key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:470
+msgid "Launch Shortcut E key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:473
+msgid "Launch Shortcut F key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:476
+msgid "Unknown key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:479
+msgid "Space key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:482
+msgid "! key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:485
+msgid "\" key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:488
+msgid "# key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:491
+msgid "$ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:494
+msgid "% key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:497
+msgid "& key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:500
+msgid "' key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:503
+msgid "( key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:506
+msgid ") key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:509
+msgid "* key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:512
+msgid "+ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:515
+msgid ", key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:518
+msgid "- key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:521
+msgid ". key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:524
+msgid "/ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:527
+msgid "Number 0."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:530
+msgid "Number 1."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:533
+msgid "Number 2."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:536
+msgid "Number 3."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:539
+msgid "Number 4."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:542
+msgid "Number 5."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:545
+msgid "Number 6."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:548
+msgid "Number 7."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:551
+msgid "Number 8."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:554
+msgid "Number 9."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:557
+msgid ": key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:560
+msgid "; key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:563
+msgid "< key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:566
+msgid "= key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:569
+msgid "> key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:572
+msgid "? key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:575
+msgid "@ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:578
+msgid "A key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:581
+msgid "B key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:584
+msgid "C key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:587
+msgid "D key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:590
+msgid "E key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:593
+msgid "F key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:596
+msgid "G key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:599
+msgid "H key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:602
+msgid "I key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:605
+msgid "J key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:608
+msgid "K key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:611
+msgid "L key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:614
+msgid "M key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:617
+msgid "N key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:620
+msgid "O key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:623
+msgid "P key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:626
+msgid "Q key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:629
+msgid "R key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:632
+msgid "S key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:635
+msgid "T key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:638
+msgid "U key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:641
+msgid "V key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:644
+msgid "W key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:647
+msgid "X key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:650
+msgid "Y key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:653
+msgid "Z key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:656
+msgid "[ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:659
+msgid "\\ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:662
+msgid "] key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:665
+msgid "^ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:668
+msgid "_ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:671
+msgid "` key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:674
+msgid "{ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:677
+msgid "| key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:680
+msgid "} key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:683
+msgid "~ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:686
+msgid "Non-breakable space key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:689
+msgid "¡ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:692
+msgid "¢ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:695
+msgid "£ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:698
+msgid "¤ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:701
+msgid "Â¥ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:704
+msgid "¦ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:707
+msgid "§ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:710
+msgid "¨ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:713
+msgid "© key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:716
+msgid "ª key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:719
+msgid "« key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:722
+msgid "¬ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:725
+msgid "Soft hyphen key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:728
+msgid "® key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:731
+msgid "¯ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:734
+msgid "° key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:737
+msgid "± key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:740
+msgid "² key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:743
+msgid "³ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:746
+msgid "´ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:749
+msgid "µ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:752
+msgid "¶ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:755
+msgid "· key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:758
+msgid "¸ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:761
+msgid "¹ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:764
+msgid "º key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:767
+msgid "» key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:770
+msgid "¼ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:773
+msgid "½ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:776
+msgid "¾ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:779
+msgid "¿ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:782
+msgid "À key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:785
+msgid "Ã key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:788
+msgid "Â key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:791
+msgid "Ã key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:794
+msgid "Ä key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:797
+msgid "Ã… key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:800
+msgid "Æ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:803
+msgid "Ç key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:806
+msgid "È key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:809
+msgid "É key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:812
+msgid "Ê key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:815
+msgid "Ë key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:818
+msgid "Ì key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:821
+msgid "Ã key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:824
+msgid "ÃŽ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:827
+msgid "Ã key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:830
+msgid "Ã key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:833
+msgid "Ñ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:836
+msgid "Ã’ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:839
+msgid "Ó key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:842
+msgid "Ô key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:845
+msgid "Õ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:848
+msgid "Ö key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:851
+msgid "× key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:854
+msgid "Ø key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:857
+msgid "Ù key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:860
+msgid "Ú key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:863
+msgid "Û key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:866
+msgid "Ü key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:869
+msgid "Ã key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:872
+msgid "Þ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:875
+msgid "ß key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:878
+msgid "÷ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:881
+msgid "ÿ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:884
+msgid "Key Code mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:887
+msgid "Modifier key mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:890
+msgid "Shift key mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:893
+msgid "Alt key mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:896
+msgid "Meta key mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:899
+msgid "Ctrl key mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:902
+msgid ""
+"Command key mask. On macOS, this is equivalent to [constant KEY_MASK_META]. "
+"On other platforms, this is equivalent to [constant KEY_MASK_CTRL]. This "
+"mask should be preferred to [constant KEY_MASK_META] or [constant "
+"KEY_MASK_CTRL] for system shortcuts as it handles all platforms correctly."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:905
+msgid "Keypad key mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:908
+msgid "Group Switch key mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:911
+msgid "Left mouse button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:914
+msgid "Right mouse button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:917
+msgid "Middle mouse button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:920
+msgid "Extra mouse button 1 (only present on some mice)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:923
+msgid "Extra mouse button 2 (only present on some mice)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:926
+msgid "Mouse wheel up."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:929
+msgid "Mouse wheel down."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:932
+msgid "Mouse wheel left button (only present on some mice)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:935
+msgid "Mouse wheel right button (only present on some mice)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:938
+msgid "Left mouse button mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:941
+msgid "Right mouse button mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:944
+msgid "Middle mouse button mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:947
+msgid "Extra mouse button 1 mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:950
+msgid "Extra mouse button 2 mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:953
+msgid "An invalid game controller button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:956
+msgid "Game controller SDL button A."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:959
+msgid "Game controller SDL button B."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:962
+msgid "Game controller SDL button X."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:965
+msgid "Game controller SDL button Y."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:968
+msgid "Game controller SDL back button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:971
+msgid "Game controller SDL guide button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:974
+msgid "Game controller SDL start button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:977
+msgid "Game controller SDL left stick button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:980
+msgid "Game controller SDL right stick button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:983
+msgid "Game controller SDL left shoulder button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:986
+msgid "Game controller SDL right shoulder button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:989
+msgid "Game controller SDL D-pad up button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:992
+msgid "Game controller SDL D-pad down button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:995
+msgid "Game controller SDL D-pad left button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:998
+msgid "Game controller SDL D-pad right button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1001
+msgid "The number of SDL game controller buttons."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1004
+msgid "Sony DualShock controller X button maps to SDL button A."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1007
+msgid "Sony DualShock controller cross button maps to SDL button A."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1010
+msgid "Sony DualShock controller circle button maps to SDL button B."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1013
+msgid "Sony DualShock controller square button maps to SDL button X."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1016
+msgid "Sony DualShock controller triangle button maps to SDL button Y."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1019
+msgid "Sony DualShock controller select button maps to SDL back button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1022
+msgid "Sony DualShock controller start button maps to SDL start button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1025
+msgid "Sony DualShock controller PS button maps to SDL guide button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1028
+msgid "Sony DualShock controller L1 button maps to SDL left shoulder button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1031
+msgid "Sony DualShock controller R1 button maps to SDL right shoulder button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1034
+msgid "Sony DualShock controller L3 button maps to SDL left stick button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1037
+msgid "Sony DualShock controller R3 button maps to SDL right stick button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1040
+msgid "Xbox game controller A button maps to SDL button A."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1043
+msgid "Xbox game controller B button maps to SDL button B."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1046
+msgid "Xbox game controller X button maps to SDL button X."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1049
+msgid "Xbox game controller Y button maps to SDL button Y."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1052
+msgid "Xbox game controller back button maps to SDL back button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1055
+msgid "Xbox game controller start button maps to SDL start button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1058
+msgid "Xbox game controller home button maps to SDL guide button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1061
+msgid "Xbox game controller left stick button maps to SDL left stick button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1064
+msgid "Xbox game controller right stick button maps to SDL right stick button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1067
+msgid ""
+"Xbox game controller left bumper button maps to SDL left shoulder button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1070
+msgid ""
+"Xbox game controller right bumper button maps to SDL right shoulder button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1073
+msgid "The maximum number of game controller buttons."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1076
+msgid "An invalid game controller axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1079
+msgid "Game controller left joystick x-axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1082
+msgid "Game controller left joystick y-axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1085
+msgid "Game controller right joystick x-axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1088
+msgid "Game controller right joystick y-axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1091
+msgid "Game controller left trigger axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1094
+msgid "Game controller right trigger axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1097
+msgid "The number of SDL game controller axes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1100
+msgid "Game controller joystick 0 x-axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1103
+msgid "Game controller joystick 0 y-axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1106
+msgid "Game controller joystick 1 x-axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1109
+msgid "Game controller joystick 1 y-axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1112
+msgid "Game controller joystick 2 x-axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1115
+msgid "Game controller joystick 2 y-axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1118
+msgid "Game controller joystick 3 x-axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1121
+msgid "Game controller joystick 3 y-axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1124
+msgid "Game controller joystick 4 x-axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1127
+msgid "Game controller joystick 4 y-axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1130
+msgid "The maximum number of game controller axes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1133
+msgid "MIDI note OFF message."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1136
+msgid "MIDI note ON message."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1139
+msgid "MIDI aftertouch message."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1142
+msgid "MIDI control change message."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1145
+msgid "MIDI program change message."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1148
+msgid "MIDI channel pressure message."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1151
+msgid "MIDI pitch bend message."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1154
+msgid ""
+"Methods that return [enum Error] return [constant OK] when no error "
+"occurred. Note that many functions don't return an error code but will print "
+"error messages to standard output.\n"
+"Since [constant OK] has value 0, and all other failure codes are positive "
+"integers, it can also be used in boolean checks, e.g.:\n"
+"[codeblock]\n"
+"var err = method_that_returns_error()\n"
+"if err != OK:\n"
+" print(\"Failure!\")\n"
+"# Or, equivalent:\n"
+"if err:\n"
+" print(\"Still failing!\")\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1166
+msgid "Generic error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1169
+msgid "Unavailable error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1172
+msgid "Unconfigured error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1175
+msgid "Unauthorized error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1178
+msgid "Parameter range error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1181
+msgid "Out of memory (OOM) error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1184
+msgid "File: Not found error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1187
+msgid "File: Bad drive error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1190
+msgid "File: Bad path error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1193
+msgid "File: No permission error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1196
+msgid "File: Already in use error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1199
+msgid "File: Can't open error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1202
+msgid "File: Can't write error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1205
+msgid "File: Can't read error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1208
+msgid "File: Unrecognized error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1211
+msgid "File: Corrupt error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1214
+msgid "File: Missing dependencies error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1217
+msgid "File: End of file (EOF) error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1220
+msgid "Can't open error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1223
+msgid "Can't create error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1226
+msgid "Query failed error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1229
+msgid "Already in use error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1232
+msgid "Locked error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1235
+msgid "Timeout error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1238
+msgid "Can't connect error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1241
+msgid "Can't resolve error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1244
+msgid "Connection error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1247
+msgid "Can't acquire resource error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1250
+msgid "Can't fork process error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1253
+msgid "Invalid data error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1256
+msgid "Invalid parameter error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1259
+msgid "Already exists error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1262
+msgid "Does not exist error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1265
+msgid "Database: Read error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1268
+msgid "Database: Write error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1271
+msgid "Compilation failed error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1274
+msgid "Method not found error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1277
+msgid "Linking failed error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1280
+msgid "Script failed error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1283
+msgid "Cycling link (import cycle) error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1286
+msgid "Invalid declaration error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1289
+msgid "Duplicate symbol error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1292
+msgid "Parse error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1295
+msgid "Busy error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1298
+msgid "Skip error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1301
+msgid "Help error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1304
+msgid "Bug error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1307
+msgid ""
+"Printer on fire error. (This is an easter egg, no engine methods return this "
+"error code.)"
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1310
+msgid "No hint for the edited property."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1313
+msgid ""
+"Hints that an integer or float property should be within a range specified "
+"via the hint string [code]\"min,max\"[/code] or [code]\"min,max,step\"[/"
+"code]. The hint string can optionally include [code]\"or_greater\"[/code] "
+"and/or [code]\"or_lesser\"[/code] to allow manual input going respectively "
+"above the max or below the min values. Example: [code]\"-360,360,1,"
+"or_greater,or_lesser\"[/code]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1316
+msgid ""
+"Hints that an integer or float property should be within an exponential "
+"range specified via the hint string [code]\"min,max\"[/code] or [code]\"min,"
+"max,step\"[/code]. The hint string can optionally include [code]\"or_greater"
+"\"[/code] and/or [code]\"or_lesser\"[/code] to allow manual input going "
+"respectively above the max or below the min values. Example: "
+"[code]\"0.01,100,0.01,or_greater\"[/code]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1319
+msgid ""
+"Hints that an integer, float or string property is an enumerated value to "
+"pick in a list specified via a hint string such as [code]\"Hello,Something,"
+"Else\"[/code]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1322
+msgid ""
+"Hints that a float property should be edited via an exponential easing "
+"function. The hint string can include [code]\"attenuation\"[/code] to flip "
+"the curve horizontally and/or [code]\"inout\"[/code] to also include in/out "
+"easing."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1325 doc/classes/@GlobalScope.xml:1328
+msgid "Deprecated hint, unused."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1331
+msgid ""
+"Hints that an integer property is a bitmask with named bit flags. For "
+"example, to allow toggling bits 0, 1, 2 and 4, the hint could be something "
+"like [code]\"Bit0,Bit1,Bit2,,Bit4\"[/code]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1334
+msgid ""
+"Hints that an integer property is a bitmask using the optionally named 2D "
+"render layers."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1337
+msgid ""
+"Hints that an integer property is a bitmask using the optionally named 2D "
+"physics layers."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1340
+msgid ""
+"Hints that an integer property is a bitmask using the optionally named 3D "
+"render layers."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1343
+msgid ""
+"Hints that an integer property is a bitmask using the optionally named 3D "
+"physics layers."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1346
+msgid ""
+"Hints that a 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 [code]\"*.png,*.jpg\"[/code]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1349
+msgid ""
+"Hints that a string property is a path to a directory. Editing it will show "
+"a file dialog for picking the path."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1352
+msgid ""
+"Hints that a string property is an absolute path to a file outside the "
+"project folder. Editing it will show a file dialog for picking the path. The "
+"hint string can be a set of filters with wildcards like [code]\"*.png,*.jpg"
+"\"[/code]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1355
+msgid ""
+"Hints that a string property is an absolute path to a directory outside the "
+"project folder. Editing it will show a file dialog for picking the path."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1358
+msgid ""
+"Hints that a property is an instance of a [Resource]-derived type, "
+"optionally specified via the hint string (e.g. [code]\"Texture2D\"[/code]). "
+"Editing it will show a popup menu of valid resource types to instantiate."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1361
+msgid ""
+"Hints that a string property is text with line breaks. Editing it will show "
+"a text input field where line breaks can be typed."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1364
+msgid ""
+"Hints that a string property should have a placeholder text visible on its "
+"input field, whenever the property is empty. The hint string is the "
+"placeholder text to use."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1367
+msgid ""
+"Hints that a color property should be edited without changing its alpha "
+"component, i.e. only R, G and B channels are edited."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1370
+msgid "Hints that an image is compressed using lossy compression."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1373
+msgid "Hints that an image is compressed using lossless compression."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1376
+msgid "The property is serialized and saved in the scene file (default)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1379
+msgid "The property is shown in the editor inspector (default)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1382 doc/classes/@GlobalScope.xml:1385
+msgid "Deprecated usage flag, unused."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1388
+msgid "The property can be checked in the editor inspector."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1391
+msgid "The property is checked in the editor inspector."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1394
+msgid "The property is a translatable string."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1397
+msgid "Used to group properties together in the editor."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1400
+msgid "Used to categorize properties together in the editor."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1403
+msgid ""
+"Used to group properties together in the editor in a subgroup (under a "
+"group)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1406
+msgid "The property does not save its state in [PackedScene]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1409
+msgid "Editing the property prompts the user for restarting the editor."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1412
+msgid ""
+"The property is a script variable which should be serialized and saved in "
+"the scene file."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1415
+msgid "Default usage (storage, editor and network)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1418
+msgid ""
+"Default usage for translatable strings (storage, editor, network and "
+"internationalized)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1421
+msgid ""
+"Default usage but without showing the property in the editor (storage, "
+"network)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1424
+msgid "Flag for a normal method."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1427
+msgid "Flag for an editor method."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1430 doc/classes/@GlobalScope.xml:1436
+#: doc/classes/@GlobalScope.xml:1442
+msgid "Deprecated method flag, unused."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1433
+msgid "Flag for a constant method."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1439
+msgid "Flag for a virtual method."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1445
+msgid "Default method flags."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1448
+msgid "Variable is [code]null[/code]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1451
+msgid "Variable is of type [bool]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1454
+msgid "Variable is of type [int]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1457
+msgid "Variable is of type [float] (real)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1460
+msgid "Variable is of type [String]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1463
+msgid "Variable is of type [Vector2]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1466
+msgid "Variable is of type [Vector2i]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1469
+msgid "Variable is of type [Rect2]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1472
+msgid "Variable is of type [Rect2i]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1475
+msgid "Variable is of type [Vector3]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1478
+msgid "Variable is of type [Vector3i]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1481
+msgid "Variable is of type [Transform2D]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1484
+msgid "Variable is of type [Plane]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1487
+msgid "Variable is of type [Quat]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1490
+msgid "Variable is of type [AABB]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1493
+msgid "Variable is of type [Basis]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1496
+msgid "Variable is of type [Transform]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1499
+msgid "Variable is of type [Color]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1502
+msgid "Variable is of type [StringName]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1505
+msgid "Variable is of type [NodePath]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1508
+msgid "Variable is of type [RID]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1511
+msgid "Variable is of type [Object]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1514
+msgid "Variable is of type [Callable]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1517
+msgid "Variable is of type [Signal]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1520
+msgid "Variable is of type [Dictionary]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1523
+msgid "Variable is of type [Array]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1526
+msgid "Variable is of type [PackedByteArray]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1529
+msgid "Variable is of type [PackedInt32Array]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1532
+msgid "Variable is of type [PackedInt64Array]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1535
+msgid "Variable is of type [PackedFloat32Array]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1538
+msgid "Variable is of type [PackedFloat64Array]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1541
+msgid "Variable is of type [PackedStringArray]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1544
+msgid "Variable is of type [PackedVector2Array]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1547
+msgid "Variable is of type [PackedVector3Array]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1550
+msgid "Variable is of type [PackedColorArray]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1553
+msgid "Represents the size of the [enum Variant.Type] enum."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1556
+msgid "Equality operator ([code]==[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1559
+msgid "Inequality operator ([code]!=[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1562
+msgid "Less than operator ([code]<[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1565
+msgid "Less than or equal operator ([code]<=[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1568
+msgid "Greater than operator ([code]>[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1571
+msgid "Greater than or equal operator ([code]>=[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1574
+msgid "Addition operator ([code]+[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1577
+msgid "Subtraction operator ([code]-[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1580
+msgid "Multiplication operator ([code]*[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1583
+msgid "Division operator ([code]/[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1586
+msgid "Unary negation operator ([code]-[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1589
+msgid "Unary plus operator ([code]+[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1592
+msgid "Remainder/modulo operator ([code]%[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1595
+msgid "String concatenation operator ([code]+[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1598
+msgid "Left shift operator ([code]<<[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1601
+msgid "Right shift operator ([code]>>[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1604
+msgid "Bitwise AND operator ([code]&[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1607
+msgid "Bitwise OR operator ([code]|[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1610
+msgid "Bitwise XOR operator ([code]^[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1613
+msgid "Bitwise NOT operator ([code]~[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1616
+msgid "Logical AND operator ([code]and[/code] or [code]&&[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1619
+msgid "Logical OR operator ([code]or[/code] or [code]||[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1622
+msgid "Logical XOR operator (not implemented in GDScript)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1625
+msgid "Logical NOT operator ([code]not[/code] or [code]![/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1628
+msgid "Logical IN operator ([code]in[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1631
+msgid "Represents the size of the [enum Variant.Operator] enum."
+msgstr ""
+
+#: doc/classes/AABB.xml:4
+msgid "Axis-Aligned Bounding Box."
+msgstr ""
+
+#: doc/classes/AABB.xml:7
+msgid ""
+"AABB consists of a position, a size, and several utility functions. It is "
+"typically used for fast overlap tests."
+msgstr ""
+
+#: doc/classes/AABB.xml:10 doc/classes/Plane.xml:10 doc/classes/Rect2.xml:11
+#: doc/classes/Rect2i.xml:11 doc/classes/Transform.xml:11
+#: doc/classes/Vector2.xml:12 doc/classes/Vector2i.xml:12
+#: doc/classes/Vector3.xml:12 doc/classes/Vector3i.xml:12
+msgid "https://docs.godotengine.org/en/latest/tutorials/math/index.html"
+msgstr ""
+
+#: doc/classes/AABB.xml:21
+msgid "Constructs an [AABB] from a position and size."
+msgstr ""
+
+#: doc/classes/AABB.xml:28
+msgid ""
+"Returns an AABB with equivalent position and size, modified so that the most-"
+"negative corner is the origin and the size is positive."
+msgstr ""
+
+#: doc/classes/AABB.xml:37
+msgid ""
+"Returns [code]true[/code] if this [AABB] completely encloses another one."
+msgstr ""
+
+#: doc/classes/AABB.xml:46
+msgid "Returns this [AABB] expanded to include a given point."
+msgstr ""
+
+#: doc/classes/AABB.xml:53
+msgid "Returns the volume of the [AABB]."
+msgstr ""
+
+#: doc/classes/AABB.xml:62
+msgid "Gets the position of the 8 endpoints of the [AABB] in space."
+msgstr ""
+
+#: doc/classes/AABB.xml:69
+msgid "Returns the normalized longest axis of the [AABB]."
+msgstr ""
+
+#: doc/classes/AABB.xml:76
+msgid ""
+"Returns the index of the longest axis of the [AABB] (according to "
+"[Vector3]'s [code]AXIS_*[/code] constants)."
+msgstr ""
+
+#: doc/classes/AABB.xml:83
+msgid "Returns the scalar length of the longest axis of the [AABB]."
+msgstr ""
+
+#: doc/classes/AABB.xml:90
+msgid "Returns the normalized shortest axis of the [AABB]."
+msgstr ""
+
+#: doc/classes/AABB.xml:97
+msgid ""
+"Returns the index of the shortest axis of the [AABB] (according to "
+"[Vector3]::AXIS* enum)."
+msgstr ""
+
+#: doc/classes/AABB.xml:104
+msgid "Returns the scalar length of the shortest axis of the [AABB]."
+msgstr ""
+
+#: doc/classes/AABB.xml:113
+msgid ""
+"Returns the support point in a given direction. This is useful for collision "
+"detection algorithms."
+msgstr ""
+
+#: doc/classes/AABB.xml:122
+msgid ""
+"Returns a copy of the [AABB] grown a given amount of units towards all the "
+"sides."
+msgstr ""
+
+#: doc/classes/AABB.xml:129
+msgid "Returns [code]true[/code] if the [AABB] is flat or empty."
+msgstr ""
+
+#: doc/classes/AABB.xml:136
+msgid "Returns [code]true[/code] if the [AABB] is empty."
+msgstr ""
+
+#: doc/classes/AABB.xml:145
+msgid "Returns [code]true[/code] if the [AABB] contains a point."
+msgstr ""
+
+#: doc/classes/AABB.xml:154
+msgid ""
+"Returns the intersection between two [AABB]. An empty AABB (size 0,0,0) is "
+"returned on failure."
+msgstr ""
+
+#: doc/classes/AABB.xml:163
+msgid "Returns [code]true[/code] if the [AABB] overlaps with another."
+msgstr ""
+
+#: doc/classes/AABB.xml:172
+msgid "Returns [code]true[/code] if the [AABB] is on both sides of a plane."
+msgstr ""
+
+#: doc/classes/AABB.xml:183
+msgid ""
+"Returns [code]true[/code] if the [AABB] intersects the line segment between "
+"[code]from[/code] and [code]to[/code]."
+msgstr ""
+
+#: doc/classes/AABB.xml:192
+msgid ""
+"Returns [code]true[/code] if this [AABB] and [code]aabb[/code] are "
+"approximately equal, by calling [method @GDScript.is_equal_approx] on each "
+"component."
+msgstr ""
+
+#: doc/classes/AABB.xml:201
+msgid ""
+"Returns a larger [AABB] that contains both this [AABB] and [code]with[/code]."
+msgstr ""
+
+#: doc/classes/AABB.xml:207 doc/classes/Rect2.xml:174
+#: doc/classes/Rect2i.xml:163
+msgid ""
+"Ending corner. This is calculated as [code]position + size[/code]. Setting "
+"this value will change the size."
+msgstr ""
+
+#: doc/classes/AABB.xml:210 doc/classes/Rect2.xml:177
+#: doc/classes/Rect2i.xml:166
+msgid "Beginning corner. Typically has values lower than [member end]."
+msgstr ""
+
+#: doc/classes/AABB.xml:213 doc/classes/Rect2.xml:180
+#: doc/classes/Rect2i.xml:169
+msgid ""
+"Size from [member position] to [member end]. Typically all components are "
+"positive.\n"
+"If the size is negative, you can use [method abs] to fix it."
+msgstr ""
+
+#: doc/classes/AcceptDialog.xml:4
+msgid "Base dialog for user notification."
+msgstr ""
+
+#: doc/classes/AcceptDialog.xml:7
+msgid ""
+"This dialog is useful for small notifications to the user about an event. It "
+"can only be accepted or closed, with the same result."
+msgstr ""
+
+#: doc/classes/AcceptDialog.xml:22
+msgid ""
+"Adds a button with label [code]text[/code] and a custom [code]action[/code] "
+"to the dialog and returns the created button. [code]action[/code] will be "
+"passed to the [signal custom_action] signal when pressed.\n"
+"If [code]true[/code], [code]right[/code] will place the button to the right "
+"of any sibling buttons."
+msgstr ""
+
+#: doc/classes/AcceptDialog.xml:32
+msgid ""
+"Adds a button with label [code]name[/code] and a cancel action to the dialog "
+"and returns the created button."
+msgstr ""
+
+#: doc/classes/AcceptDialog.xml:39
+msgid "Returns the label used for built-in text."
+msgstr ""
+
+#: doc/classes/AcceptDialog.xml:46
+msgid "Returns the OK [Button] instance."
+msgstr ""
+
+#: doc/classes/AcceptDialog.xml:55
+msgid ""
+"Registers a [LineEdit] in the dialog. When the enter key is pressed, the "
+"dialog will be accepted."
+msgstr ""
+
+#: doc/classes/AcceptDialog.xml:61
+msgid "Sets autowrapping for the text in the dialog."
+msgstr ""
+
+#: doc/classes/AcceptDialog.xml:64
+msgid ""
+"If [code]true[/code], the dialog is hidden when the OK button is pressed. "
+"You can set it to [code]false[/code] if you want to do e.g. input validation "
+"when receiving the [signal confirmed] signal, and handle hiding the dialog "
+"in your own logic.\n"
+"[b]Note:[/b] Some nodes derived from this class can have a different default "
+"value, and potentially their own built-in logic overriding this setting. For "
+"example [FileDialog] defaults to [code]false[/code], and has its own input "
+"validation code that is called when you press OK, which eventually hides the "
+"dialog if the input is valid. As such, this property can't be used in "
+"[FileDialog] to disable hiding the dialog when pressing OK."
+msgstr ""
+
+#: doc/classes/AcceptDialog.xml:68
+msgid "The text displayed by the dialog."
+msgstr ""
+
+#: doc/classes/AcceptDialog.xml:83
+msgid "Emitted when the dialog is accepted, i.e. the OK button is pressed."
+msgstr ""
+
+#: doc/classes/AcceptDialog.xml:90
+msgid "Emitted when a custom button is pressed. See [method add_button]."
+msgstr ""
+
+#: doc/classes/AESContext.xml:4
+msgid "Interface to low level AES encryption features."
+msgstr ""
+
+#: doc/classes/AESContext.xml:7
+msgid ""
+"This class provides access to AES encryption/decryption of raw data. Both "
+"AES-ECB and AES-CBC mode are supported.\n"
+"[codeblock]\n"
+"extends Node\n"
+"\n"
+"var aes = AESContext.new()\n"
+"\n"
+"func _ready():\n"
+" var key = \"My secret key!!!\" # Key must be either 16 or 32 bytes.\n"
+" var data = \"My secret text!!\" # Data size must be multiple of 16 "
+"bytes, apply padding if needed.\n"
+" # Encrypt ECB\n"
+" aes.start(AESContext.MODE_ECB_ENCRYPT, key.to_utf8())\n"
+" var encrypted = aes.update(data.to_utf8())\n"
+" aes.finish()\n"
+" # Decrypt ECB\n"
+" aes.start(AESContext.MODE_ECB_DECRYPT, key.to_utf8())\n"
+" var decrypted = aes.update(encrypted)\n"
+" aes.finish()\n"
+" # Check ECB\n"
+" assert(decrypted == data.to_utf8())\n"
+"\n"
+" var iv = \"My secret iv!!!!\" # IV must be of exactly 16 bytes.\n"
+" # Encrypt CBC\n"
+" aes.start(AESContext.MODE_CBC_ENCRYPT, key.to_utf8(), iv.to_utf8())\n"
+" encrypted = aes.update(data.to_utf8())\n"
+" aes.finish()\n"
+" # Decrypt CBC\n"
+" aes.start(AESContext.MODE_CBC_DECRYPT, key.to_utf8(), iv.to_utf8())\n"
+" decrypted = aes.update(encrypted)\n"
+" aes.finish()\n"
+" # Check CBC\n"
+" assert(decrypted == data.to_utf8())\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/AESContext.xml:47
+msgid "Close this AES context so it can be started again. See [method start]."
+msgstr ""
+
+#: doc/classes/AESContext.xml:54
+msgid ""
+"Get the current IV state for this context (IV gets updated when calling "
+"[method update]). You normally don't need this function.\n"
+"Note: This function only makes sense when the context is started with "
+"[constant MODE_CBC_ENCRYPT] or [constant MODE_CBC_DECRYPT]."
+msgstr ""
+
+#: doc/classes/AESContext.xml:68
+msgid ""
+"Start the AES context in the given [code]mode[/code]. A [code]key[/code] of "
+"either 16 or 32 bytes must always be provided, while an [code]iv[/code] "
+"(initialization vector) of exactly 16 bytes, is only needed when [code]mode[/"
+"code] is either [constant MODE_CBC_ENCRYPT] or [constant MODE_CBC_DECRYPT]."
+msgstr ""
+
+#: doc/classes/AESContext.xml:77
+msgid ""
+"Run the desired operation for this AES context. Will return a "
+"[PackedByteArray] containing the result of encrypting (or decrypting) the "
+"given [code]src[/code]. See [method start] for mode of operation.\n"
+"Note: The size of [code]src[/code] must be a multiple of 16. Apply some "
+"padding if needed."
+msgstr ""
+
+#: doc/classes/AESContext.xml:84
+msgid "AES electronic codebook encryption mode."
+msgstr ""
+
+#: doc/classes/AESContext.xml:87
+msgid "AES electronic codebook decryption mode."
+msgstr ""
+
+#: doc/classes/AESContext.xml:90
+msgid "AES cipher blocker chaining encryption mode."
+msgstr ""
+
+#: doc/classes/AESContext.xml:93
+msgid "AES cipher blocker chaining decryption mode."
+msgstr ""
+
+#: doc/classes/AESContext.xml:96
+msgid "Maximum value for the mode enum."
+msgstr ""
+
+#: doc/classes/AnimatedSprite2D.xml:4
+msgid "Sprite node that can use multiple textures for animation."
+msgstr ""
+
+#: doc/classes/AnimatedSprite2D.xml:7 doc/classes/AnimatedSprite3D.xml:7
+msgid ""
+"Animations are created using a [SpriteFrames] resource, which can be "
+"configured in the editor via the SpriteFrames panel."
+msgstr ""
+
+#: doc/classes/AnimatedSprite2D.xml:16 doc/classes/AnimatedSprite3D.xml:16
+msgid "Returns [code]true[/code] if an animation is currently being played."
+msgstr ""
+
+#: doc/classes/AnimatedSprite2D.xml:27
+msgid ""
+"Plays the animation named [code]anim[/code]. If no [code]anim[/code] is "
+"provided, the current animation is played. If [code]backwards[/code] is "
+"[code]true[/code], the animation will be played in reverse."
+msgstr ""
+
+#: doc/classes/AnimatedSprite2D.xml:34 doc/classes/AnimatedSprite3D.xml:32
+msgid "Stops the current animation (does not reset the frame counter)."
+msgstr ""
+
+#: doc/classes/AnimatedSprite2D.xml:40 doc/classes/AnimatedSprite3D.xml:38
+msgid ""
+"The current animation from the [code]frames[/code] resource. If this value "
+"changes, the [code]frame[/code] counter is reset."
+msgstr ""
+
+#: doc/classes/AnimatedSprite2D.xml:43 doc/classes/SpriteBase3D.xml:55
+msgid "If [code]true[/code], texture will be centered."
+msgstr ""
+
+#: doc/classes/AnimatedSprite2D.xml:46 doc/classes/Sprite2D.xml:41
+#: doc/classes/SpriteBase3D.xml:61 doc/classes/TextureButton.xml:19
+#: doc/classes/TextureRect.xml:18
+msgid "If [code]true[/code], texture is flipped horizontally."
+msgstr ""
+
+#: doc/classes/AnimatedSprite2D.xml:49 doc/classes/Sprite2D.xml:44
+#: doc/classes/SpriteBase3D.xml:64 doc/classes/TextureButton.xml:22
+#: doc/classes/TextureRect.xml:21
+msgid "If [code]true[/code], texture is flipped vertically."
+msgstr ""
+
+#: doc/classes/AnimatedSprite2D.xml:52 doc/classes/AnimatedSprite3D.xml:41
+msgid "The displayed animation frame's index."
+msgstr ""
+
+#: doc/classes/AnimatedSprite2D.xml:55 doc/classes/AnimatedSprite3D.xml:44
+msgid "The [SpriteFrames] resource containing the animation(s)."
+msgstr ""
+
+#: doc/classes/AnimatedSprite2D.xml:58 doc/classes/Sprite2D.xml:60
+#: doc/classes/SpriteBase3D.xml:70
+msgid "The texture's drawing offset."
+msgstr ""
+
+#: doc/classes/AnimatedSprite2D.xml:61 doc/classes/AnimatedSprite3D.xml:47
+msgid "If [code]true[/code], the [member animation] is currently playing."
+msgstr ""
+
+#: doc/classes/AnimatedSprite2D.xml:64
+msgid "Strength of the specular light effect of this [AnimatedSprite2D]."
+msgstr ""
+
+#: doc/classes/AnimatedSprite2D.xml:67 doc/classes/Sprite2D.xml:75
+msgid "The color of the specular light effect."
+msgstr ""
+
+#: doc/classes/AnimatedSprite2D.xml:70
+msgid "The animation speed is multiplied by this value."
+msgstr ""
+
+#: doc/classes/AnimatedSprite2D.xml:76
+msgid ""
+"Emitted when the animation is finished (when it plays the last frame). If "
+"the animation is looping, this signal is emitted every time the last frame "
+"is drawn."
+msgstr ""
+
+#: doc/classes/AnimatedSprite2D.xml:81 doc/classes/AnimatedSprite3D.xml:53
+msgid "Emitted when [member frame] changed."
+msgstr ""
+
+#: doc/classes/AnimatedSprite3D.xml:4
+msgid ""
+"2D sprite node in 3D world, that can use multiple 2D textures for animation."
+msgstr ""
+
+#: doc/classes/AnimatedSprite3D.xml:25
+msgid ""
+"Plays the animation named [code]anim[/code]. If no [code]anim[/code] is "
+"provided, the current animation is played."
+msgstr ""
+
+#: doc/classes/AnimatedTexture.xml:4
+msgid "Proxy texture for simple frame-based animations."
+msgstr ""
+
+#: doc/classes/AnimatedTexture.xml:7
+msgid ""
+"[AnimatedTexture] is a resource format for frame-based animations, where "
+"multiple textures can be chained automatically with a predefined delay for "
+"each frame. Unlike [AnimationPlayer] or [AnimatedSprite2D], it isn't a "
+"[Node], but has the advantage of being usable anywhere a [Texture2D] "
+"resource can be used, e.g. in a [TileSet].\n"
+"The playback of the animation is controlled by the [member fps] property as "
+"well as each frame's optional delay (see [method set_frame_delay]). The "
+"animation loops, i.e. it will restart at frame 0 automatically after playing "
+"the last frame.\n"
+"[AnimatedTexture] currently requires all frame textures to have the same "
+"size, otherwise the bigger ones will be cropped to match the smallest one. "
+"Also, it doesn't support [AtlasTexture]. Each frame needs to be separate "
+"image."
+msgstr ""
+
+#: doc/classes/AnimatedTexture.xml:20
+msgid "Returns the given frame's delay value."
+msgstr ""
+
+#: doc/classes/AnimatedTexture.xml:29
+msgid "Returns the given frame's [Texture2D]."
+msgstr ""
+
+#: doc/classes/AnimatedTexture.xml:40
+msgid ""
+"Sets an additional delay (in seconds) between this frame and the next one, "
+"that will be added to the time interval defined by [member fps]. By default, "
+"frames have no delay defined. If a delay value is defined, the final time "
+"interval between this frame and the next will be [code]1.0 / fps + delay[/"
+"code].\n"
+"For example, for an animation with 3 frames, 2 FPS and a frame delay on the "
+"second frame of 1.2, the resulting playback will be:\n"
+"[codeblock]\n"
+"Frame 0: 0.5 s (1 / fps)\n"
+"Frame 1: 1.7 s (1 / fps + 1.2)\n"
+"Frame 2: 0.5 s (1 / fps)\n"
+"Total duration: 2.7 s\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/AnimatedTexture.xml:58
+msgid ""
+"Assigns a [Texture2D] to the given frame. Frame IDs start at 0, so the first "
+"frame has ID 0, and the last frame of the animation has ID [member frames] - "
+"1.\n"
+"You can define any number of textures up to [constant MAX_FRAMES], but keep "
+"in mind that only frames from 0 to [member frames] - 1 will be part of the "
+"animation."
+msgstr ""
+
+#: doc/classes/AnimatedTexture.xml:65
+msgid "Sets the currently visible frame of the texture."
+msgstr ""
+
+#: doc/classes/AnimatedTexture.xml:68
+msgid ""
+"Animation speed in frames per second. This value defines the default time "
+"interval between two frames of the animation, and thus the overall duration "
+"of the animation loop based on the [member frames] property. A value of 0 "
+"means no predefined number of frames per second, the animation will play "
+"according to each frame's frame delay (see [method set_frame_delay]).\n"
+"For example, an animation with 8 frames, no frame delay and a [code]fps[/"
+"code] value of 2 will run for 4 seconds, with each frame lasting 0.5 seconds."
+msgstr ""
+
+#: doc/classes/AnimatedTexture.xml:72
+msgid ""
+"Number of frames to use in the animation. While you can create the frames "
+"independently with [method set_frame_texture], you need to set this value "
+"for the animation to take new frames into account. The maximum number of "
+"frames is [constant MAX_FRAMES]."
+msgstr ""
+
+#: doc/classes/AnimatedTexture.xml:75
+msgid ""
+"If [code]true[/code], the animation will only play once and will not loop "
+"back to the first frame after reaching the end. Note that reaching the end "
+"will not set [member pause] to [code]true[/code]."
+msgstr ""
+
+#: doc/classes/AnimatedTexture.xml:78
+msgid ""
+"If [code]true[/code], the animation will pause where it currently is (i.e. "
+"at [member current_frame]). The animation will continue from where it was "
+"paused when changing this property to [code]false[/code]."
+msgstr ""
+
+#: doc/classes/AnimatedTexture.xml:83
+msgid ""
+"The maximum number of frames supported by [AnimatedTexture]. If you need "
+"more frames in your animation, use [AnimationPlayer] or [AnimatedSprite2D]."
+msgstr ""
+
+#: doc/classes/Animation.xml:4
+msgid "Contains data used to animate everything in the engine."
+msgstr ""
+
+#: doc/classes/Animation.xml:7
+msgid ""
+"An Animation resource contains data used to animate everything in the "
+"engine. Animations are divided into tracks, and each track must be linked to "
+"a node. The state of that node can be changed through time, by adding timed "
+"keys (events) to the track.\n"
+"[codeblock]\n"
+"# This creates an animation that makes the node \"Enemy\" move to the right "
+"by\n"
+"# 100 pixels in 0.5 seconds.\n"
+"var animation = Animation.new()\n"
+"var track_index = animation.add_track(Animation.TYPE_VALUE)\n"
+"animation.track_set_path(track_index, \"Enemy:position:x\")\n"
+"animation.track_insert_key(track_index, 0.0, 0)\n"
+"animation.track_insert_key(track_index, 0.5, 100)\n"
+"[/codeblock]\n"
+"Animations are just data containers, and must be added to nodes such as an "
+"[AnimationPlayer] to be played back. Animation tracks have different types, "
+"each with its own set of dedicated methods. Check [enum TrackType] to see "
+"available types."
+msgstr ""
+
+#: doc/classes/Animation.xml:20 doc/classes/AnimationPlayer.xml:13
+msgid "https://docs.godotengine.org/en/latest/tutorials/animation/index.html"
+msgstr ""
+
+#: doc/classes/Animation.xml:31
+msgid "Adds a track to the Animation."
+msgstr ""
+
+#: doc/classes/Animation.xml:42
+msgid ""
+"Returns the animation name at the key identified by [code]key_idx[/code]. "
+"The [code]track_idx[/code] must be the index of an Animation Track."
+msgstr ""
+
+#: doc/classes/Animation.xml:55
+msgid ""
+"Inserts a key with value [code]animation[/code] at the given [code]time[/"
+"code] (in seconds). The [code]track_idx[/code] must be the index of an "
+"Animation Track."
+msgstr ""
+
+#: doc/classes/Animation.xml:68
+msgid ""
+"Sets the key identified by [code]key_idx[/code] to value [code]animation[/"
+"code]. The [code]track_idx[/code] must be the index of an Animation Track."
+msgstr ""
+
+#: doc/classes/Animation.xml:79
+msgid ""
+"Returns the end offset of the key identified by [code]key_idx[/code]. The "
+"[code]track_idx[/code] must be the index of an Audio Track.\n"
+"End offset is the number of seconds cut off at the ending of the audio "
+"stream."
+msgstr ""
+
+#: doc/classes/Animation.xml:91
+msgid ""
+"Returns the start offset of the key identified by [code]key_idx[/code]. The "
+"[code]track_idx[/code] must be the index of an Audio Track.\n"
+"Start offset is the number of seconds cut off at the beginning of the audio "
+"stream."
+msgstr ""
+
+#: doc/classes/Animation.xml:103
+msgid ""
+"Returns the audio stream of the key identified by [code]key_idx[/code]. The "
+"[code]track_idx[/code] must be the index of an Audio Track."
+msgstr ""
+
+#: doc/classes/Animation.xml:120
+msgid ""
+"Inserts an Audio Track key at the given [code]time[/code] in seconds. The "
+"[code]track_idx[/code] must be the index of an Audio Track.\n"
+"[code]stream[/code] is the [AudioStream] resource to play. "
+"[code]start_offset[/code] is the number of seconds cut off at the beginning "
+"of the audio stream, while [code]end_offset[/code] is at the ending."
+msgstr ""
+
+#: doc/classes/Animation.xml:134
+msgid ""
+"Sets the end offset of the key identified by [code]key_idx[/code] to value "
+"[code]offset[/code]. The [code]track_idx[/code] must be the index of an "
+"Audio Track."
+msgstr ""
+
+#: doc/classes/Animation.xml:147
+msgid ""
+"Sets the start offset of the key identified by [code]key_idx[/code] to value "
+"[code]offset[/code]. The [code]track_idx[/code] must be the index of an "
+"Audio Track."
+msgstr ""
+
+#: doc/classes/Animation.xml:160
+msgid ""
+"Sets the stream of the key identified by [code]key_idx[/code] to value "
+"[code]offset[/code]. The [code]track_idx[/code] must be the index of an "
+"Audio Track."
+msgstr ""
+
+#: doc/classes/Animation.xml:171
+msgid ""
+"Returns the in handle of the key identified by [code]key_idx[/code]. The "
+"[code]track_idx[/code] must be the index of a Bezier Track."
+msgstr ""
+
+#: doc/classes/Animation.xml:182
+msgid ""
+"Returns the out handle of the key identified by [code]key_idx[/code]. The "
+"[code]track_idx[/code] must be the index of a Bezier Track."
+msgstr ""
+
+#: doc/classes/Animation.xml:193
+msgid ""
+"Returns the value of the key identified by [code]key_idx[/code]. The "
+"[code]track_idx[/code] must be the index of a Bezier Track."
+msgstr ""
+
+#: doc/classes/Animation.xml:210
+msgid ""
+"Inserts a Bezier Track key at the given [code]time[/code] in seconds. The "
+"[code]track_idx[/code] must be the index of a Bezier Track.\n"
+"[code]in_handle[/code] is the left-side weight of the added Bezier curve "
+"point, [code]out_handle[/code] is the right-side one, while [code]value[/"
+"code] is the actual value at this point."
+msgstr ""
+
+#: doc/classes/Animation.xml:222
+msgid ""
+"Returns the interpolated value at the given [code]time[/code] (in seconds). "
+"The [code]track_idx[/code] must be the index of a Bezier Track."
+msgstr ""
+
+#: doc/classes/Animation.xml:235
+msgid ""
+"Sets the in handle of the key identified by [code]key_idx[/code] to value "
+"[code]in_handle[/code]. The [code]track_idx[/code] must be the index of a "
+"Bezier Track."
+msgstr ""
+
+#: doc/classes/Animation.xml:248
+msgid ""
+"Sets the out handle of the key identified by [code]key_idx[/code] to value "
+"[code]out_handle[/code]. The [code]track_idx[/code] must be the index of a "
+"Bezier Track."
+msgstr ""
+
+#: doc/classes/Animation.xml:261
+msgid ""
+"Sets the value of the key identified by [code]key_idx[/code] to the given "
+"value. The [code]track_idx[/code] must be the index of a Bezier Track."
+msgstr ""
+
+#: doc/classes/Animation.xml:268
+msgid "Clear the animation (clear all tracks and reset all)."
+msgstr ""
+
+#: doc/classes/Animation.xml:279
+msgid ""
+"Adds a new track that is a copy of the given track from [code]to_animation[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Animation.xml:288
+msgid ""
+"Returns the index of the specified track. If the track is not found, return "
+"-1."
+msgstr ""
+
+#: doc/classes/Animation.xml:295
+msgid "Returns the amount of tracks in the animation."
+msgstr ""
+
+#: doc/classes/Animation.xml:308
+msgid ""
+"Returns all the key indices of a method track, given a position and delta "
+"time."
+msgstr ""
+
+#: doc/classes/Animation.xml:319
+msgid "Returns the method name of a method track."
+msgstr ""
+
+#: doc/classes/Animation.xml:330
+msgid ""
+"Returns the arguments values to be called on a method track for a given key "
+"in a given track."
+msgstr ""
+
+#: doc/classes/Animation.xml:339
+msgid "Removes a track by specifying the track index."
+msgstr ""
+
+#: doc/classes/Animation.xml:352
+msgid ""
+"Finds the key index by time in a given track. Optionally, only find it if "
+"the exact time is given."
+msgstr ""
+
+#: doc/classes/Animation.xml:361
+msgid ""
+"Returns [code]true[/code] if the track at [code]idx[/code] wraps the "
+"interpolation loop. New tracks wrap the interpolation loop by default."
+msgstr ""
+
+#: doc/classes/Animation.xml:370
+msgid "Returns the interpolation type of a given track."
+msgstr ""
+
+#: doc/classes/Animation.xml:379
+msgid "Returns the amount of keys in a given track."
+msgstr ""
+
+#: doc/classes/Animation.xml:390
+msgid "Returns the time at which the key is located."
+msgstr ""
+
+#: doc/classes/Animation.xml:401
+msgid ""
+"Returns the transition curve (easing) for a specific key (see the built-in "
+"math function [method @GDScript.ease])."
+msgstr ""
+
+#: doc/classes/Animation.xml:412
+msgid "Returns the value of a given key in a given track."
+msgstr ""
+
+#: doc/classes/Animation.xml:421
+msgid ""
+"Gets the path of a track. For more information on the path format, see "
+"[method track_set_path]."
+msgstr ""
+
+#: doc/classes/Animation.xml:430
+msgid "Gets the type of a track."
+msgstr ""
+
+#: doc/classes/Animation.xml:445
+msgid "Insert a generic key in a given track."
+msgstr ""
+
+#: doc/classes/Animation.xml:454
+msgid ""
+"Returns [code]true[/code] if the track at index [code]idx[/code] is enabled."
+msgstr ""
+
+#: doc/classes/Animation.xml:463
+msgid ""
+"Returns [code]true[/code] if the given track is imported. Else, return "
+"[code]false[/code]."
+msgstr ""
+
+#: doc/classes/Animation.xml:472
+msgid "Moves a track down."
+msgstr ""
+
+#: doc/classes/Animation.xml:483
+msgid ""
+"Changes the index position of track [code]idx[/code] to the one defined in "
+"[code]to_idx[/code]."
+msgstr ""
+
+#: doc/classes/Animation.xml:492
+msgid "Moves a track up."
+msgstr ""
+
+#: doc/classes/Animation.xml:503
+msgid "Removes a key by index in a given track."
+msgstr ""
+
+#: doc/classes/Animation.xml:514
+msgid "Removes a key by position (seconds) in a given track."
+msgstr ""
+
+#: doc/classes/Animation.xml:525
+msgid "Enables/disables the given track. Tracks are enabled by default."
+msgstr ""
+
+#: doc/classes/Animation.xml:536
+msgid "Sets the given track as imported or not."
+msgstr ""
+
+#: doc/classes/Animation.xml:547
+msgid ""
+"If [code]true[/code], the track at [code]idx[/code] wraps the interpolation "
+"loop."
+msgstr ""
+
+#: doc/classes/Animation.xml:558
+msgid "Sets the interpolation type of a given track."
+msgstr ""
+
+#: doc/classes/Animation.xml:571
+msgid "Sets the time of an existing key."
+msgstr ""
+
+#: doc/classes/Animation.xml:584
+msgid ""
+"Sets the transition curve (easing) for a specific key (see the built-in math "
+"function [method @GDScript.ease])."
+msgstr ""
+
+#: doc/classes/Animation.xml:597
+msgid "Sets the value of an existing key."
+msgstr ""
+
+#: doc/classes/Animation.xml:608
+msgid ""
+"Sets the path of a track. Paths must be valid scene-tree paths to a node, "
+"and must be specified starting from the parent node of the node that will "
+"reproduce the animation. Tracks that control properties or bones must append "
+"their name after the path, separated by [code]\":\"[/code].\n"
+"For example, [code]\"character/skeleton:ankle\"[/code] or [code]\"character/"
+"mesh:transform/local\"[/code]."
+msgstr ""
+
+#: doc/classes/Animation.xml:620
+msgid ""
+"Swaps the track [code]idx[/code]'s index position with the track "
+"[code]with_idx[/code]."
+msgstr ""
+
+#: doc/classes/Animation.xml:637
+msgid "Insert a transform key for a transform track."
+msgstr ""
+
+#: doc/classes/Animation.xml:648
+msgid ""
+"Returns the interpolated value of a transform track at a given time (in "
+"seconds). An array consisting of 3 elements: position ([Vector3]), rotation "
+"([Quat]) and scale ([Vector3])."
+msgstr ""
+
+#: doc/classes/Animation.xml:661
+msgid ""
+"Returns all the key indices of a value track, given a position and delta "
+"time."
+msgstr ""
+
+#: doc/classes/Animation.xml:670
+msgid "Returns the update mode of a value track."
+msgstr ""
+
+#: doc/classes/Animation.xml:681
+msgid "Sets the update mode (see [enum UpdateMode]) of a value track."
+msgstr ""
+
+#: doc/classes/Animation.xml:687
+msgid ""
+"The total length of the animation (in seconds).\n"
+"[b]Note:[/b] Length is not delimited by the last key, as this one may be "
+"before or after the end to ensure correct interpolation and looping."
+msgstr ""
+
+#: doc/classes/Animation.xml:691
+msgid ""
+"A flag indicating that the animation must loop. This is uses for correct "
+"interpolation of animation cycles, and for hinting the player that it must "
+"restart the animation."
+msgstr ""
+
+#: doc/classes/Animation.xml:694
+msgid "The animation step value."
+msgstr ""
+
+#: doc/classes/Animation.xml:700
+msgid ""
+"Emitted when there's a change in the list of tracks, e.g. tracks are added, "
+"moved or have changed paths."
+msgstr ""
+
+#: doc/classes/Animation.xml:706
+msgid ""
+"Value tracks set values in node properties, but only those which can be "
+"Interpolated."
+msgstr ""
+
+#: doc/classes/Animation.xml:709
+msgid ""
+"Transform tracks are used to change node local transforms or skeleton pose "
+"bones. Transitions are interpolated."
+msgstr ""
+
+#: doc/classes/Animation.xml:712
+msgid "Method tracks call functions with given arguments per key."
+msgstr ""
+
+#: doc/classes/Animation.xml:715
+msgid ""
+"Bezier tracks are used to interpolate a value using custom curves. They can "
+"also be used to animate sub-properties of vectors and colors (e.g. alpha "
+"value of a [Color])."
+msgstr ""
+
+#: doc/classes/Animation.xml:718
+msgid ""
+"Audio tracks are used to play an audio stream with either type of "
+"[AudioStreamPlayer]. The stream can be trimmed and previewed in the "
+"animation."
+msgstr ""
+
+#: doc/classes/Animation.xml:721
+msgid "Animation tracks play animations in other [AnimationPlayer] nodes."
+msgstr ""
+
+#: doc/classes/Animation.xml:724
+msgid "No interpolation (nearest value)."
+msgstr ""
+
+#: doc/classes/Animation.xml:727
+msgid "Linear interpolation."
+msgstr ""
+
+#: doc/classes/Animation.xml:730
+msgid "Cubic interpolation."
+msgstr ""
+
+#: doc/classes/Animation.xml:733
+msgid "Update between keyframes."
+msgstr ""
+
+#: doc/classes/Animation.xml:736
+msgid "Update at the keyframes and hold the value."
+msgstr ""
+
+#: doc/classes/Animation.xml:739
+msgid "Update at the keyframes."
+msgstr ""
+
+#: doc/classes/Animation.xml:742
+msgid ""
+"Same as linear interpolation, but also interpolates from the current value "
+"(i.e. dynamically at runtime) if the first key isn't at 0 seconds."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:4
+msgid "Base resource for [AnimationTree] nodes."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:7
+msgid ""
+"Base resource for [AnimationTree] nodes. In general, it's not used directly, "
+"but you can create custom ones with custom blending formulas.\n"
+"Inherit this when creating nodes mainly for use in [AnimationNodeBlendTree], "
+"otherwise [AnimationRootNode] should be used instead."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:11 doc/classes/AnimationNodeAdd2.xml:10
+#: doc/classes/AnimationNodeAdd3.xml:14
+#: doc/classes/AnimationNodeAnimation.xml:10
+#: doc/classes/AnimationNodeBlend2.xml:10
+#: doc/classes/AnimationNodeBlend3.xml:14
+#: doc/classes/AnimationNodeBlendSpace1D.xml:13
+#: doc/classes/AnimationNodeBlendSpace2D.xml:12
+#: doc/classes/AnimationNodeBlendTree.xml:10
+#: doc/classes/AnimationNodeOneShot.xml:10
+#: doc/classes/AnimationNodeOutput.xml:9
+#: doc/classes/AnimationNodeStateMachine.xml:15
+#: doc/classes/AnimationNodeStateMachinePlayback.xml:15
+#: doc/classes/AnimationNodeStateMachineTransition.xml:8
+#: doc/classes/AnimationNodeTimeScale.xml:10
+#: doc/classes/AnimationNodeTimeSeek.xml:10
+#: doc/classes/AnimationNodeTransition.xml:10 doc/classes/AnimationTree.xml:10
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/animation/animation_tree."
+"html"
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:20
+msgid ""
+"Adds an input to the node. This is only useful for nodes created for use in "
+"an [AnimationNodeBlendTree]."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:37
+msgid ""
+"Blend an animation by [code]blend[/code] amount (name must be valid in the "
+"linked [AnimationPlayer]). A [code]time[/code] and [code]delta[/code] may be "
+"passed, as well as whether [code]seek[/code] happened."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:56
+msgid ""
+"Blend an input. This is only useful for nodes created for an "
+"[AnimationNodeBlendTree]. The [code]time[/code] parameter is a relative "
+"delta, unless [code]seek[/code] is [code]true[/code], in which case it is "
+"absolute. A filter mode may be optionally passed (see [enum FilterAction] "
+"for options)."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:77
+msgid ""
+"Blend another animation node (in case this node contains children animation "
+"nodes). This function is only useful if you inherit from [AnimationRootNode] "
+"instead, else editors will not display your node for addition."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:84
+msgid "Gets the text caption for this node (used by some editors)."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:93
+msgid ""
+"Gets a child node by index (used by editors inheriting from "
+"[AnimationRootNode])."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:100
+msgid ""
+"Gets all children nodes in order as a [code]name: node[/code] dictionary. "
+"Only useful when inheriting [AnimationRootNode]."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:107
+msgid ""
+"Amount of inputs in this node, only useful for nodes that go into "
+"[AnimationNodeBlendTree]."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:116
+msgid "Gets the name of an input by index."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:125
+msgid ""
+"Gets the value of a parameter. Parameters are custom local memory used for "
+"your nodes, given a resource can be reused in multiple trees."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:134
+msgid ""
+"Gets the default value of a parameter. Parameters are custom local memory "
+"used for your nodes, given a resource can be reused in multiple trees."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:141
+msgid ""
+"Gets the property information for parameter. Parameters are custom local "
+"memory used for your nodes, given a resource can be reused in multiple "
+"trees. Format is similar to [method Object.get_property_list]."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:148
+msgid ""
+"Returns [code]true[/code] whether you want the blend tree editor to display "
+"filter editing on this node."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:157
+msgid "Returns [code]true[/code] whether a given path is filtered."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:168
+msgid ""
+"User-defined callback called when a custom node is processed. The "
+"[code]time[/code] parameter is a relative delta, unless [code]seek[/code] is "
+"[code]true[/code], in which case it is absolute.\n"
+"Here, call the [method blend_input], [method blend_node] or [method "
+"blend_animation] functions. You can also use [method get_parameter] and "
+"[method set_parameter] to modify local memory.\n"
+"This function should return the time left for the current animation to "
+"finish (if unsure, pass the value from the main blend being called)."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:179
+msgid "Removes an input, call this only when inactive."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:190
+msgid "Adds or removes a path for the filter."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:201
+msgid ""
+"Sets a custom parameter. These are used as local storage, because resources "
+"can be reused across the tree or scenes."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:207
+msgid "If [code]true[/code], filtering is enabled."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:213
+msgid "Called when the node was removed from the graph."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:218
+msgid ""
+"Emitted by nodes that inherit from this class and that have an internal tree "
+"when one of their nodes changes. The nodes that emit this signal are "
+"[AnimationNodeBlendSpace1D], [AnimationNodeBlendSpace2D], "
+"[AnimationNodeStateMachine], and [AnimationNodeBlendTree]."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:224
+msgid "Do not use filtering."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:227
+msgid "Paths matching the filter will be allowed to pass."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:230
+msgid "Paths matching the filter will be discarded."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:233
+msgid "Paths matching the filter will be blended (by the blend value)."
+msgstr ""
+
+#: doc/classes/AnimationNodeAdd2.xml:4
+msgid "Blends two animations additively inside of an [AnimationNodeBlendTree]."
+msgstr ""
+
+#: doc/classes/AnimationNodeAdd2.xml:7
+msgid ""
+"A resource to add to an [AnimationNodeBlendTree]. Blends two animations "
+"additively based on an amount value in the [code][0.0, 1.0][/code] range."
+msgstr ""
+
+#: doc/classes/AnimationNodeAdd2.xml:16 doc/classes/AnimationNodeAdd3.xml:20
+#: doc/classes/AnimationNodeBlend2.xml:16
+#: doc/classes/AnimationNodeBlend3.xml:20
+msgid ""
+"If [code]true[/code], sets the [code]optimization[/code] to [code]false[/"
+"code] when calling [method AnimationNode.blend_input], forcing the blended "
+"animations to update every frame."
+msgstr ""
+
+#: doc/classes/AnimationNodeAdd3.xml:4
+msgid ""
+"Blends two of three animations additively inside of an "
+"[AnimationNodeBlendTree]."
+msgstr ""
+
+#: doc/classes/AnimationNodeAdd3.xml:7
+msgid ""
+"A resource to add to an [AnimationNodeBlendTree]. Blends two animations "
+"together additively out of three based on a value in the [code][-1.0, 1.0][/"
+"code] range.\n"
+"This node has three inputs:\n"
+"- The base animation to add to\n"
+"- A -add animation to blend with when the blend amount is in the [code]"
+"[-1.0, 0.0][/code] range.\n"
+"- A +add animation to blend with when the blend amount is in the [code][0.0, "
+"1.0][/code] range"
+msgstr ""
+
+#: doc/classes/AnimationNodeAnimation.xml:4
+msgid "Input animation to use in an [AnimationNodeBlendTree]."
+msgstr ""
+
+#: doc/classes/AnimationNodeAnimation.xml:7
+msgid ""
+"A resource to add to an [AnimationNodeBlendTree]. Only features one output "
+"set using the [member animation] property. Use it as an input for "
+"[AnimationNode] that blend animations together."
+msgstr ""
+
+#: doc/classes/AnimationNodeAnimation.xml:16
+msgid ""
+"Animation to use as an output. It is one of the animations provided by "
+"[member AnimationTree.anim_player]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlend2.xml:4
+msgid "Blends two animations linearly inside of an [AnimationNodeBlendTree]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlend2.xml:7
+msgid ""
+"A resource to add to an [AnimationNodeBlendTree]. Blends two animations "
+"linearly based on an amount value in the [code][0.0, 1.0][/code] range."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlend3.xml:4
+msgid ""
+"Blends two of three animations linearly inside of an "
+"[AnimationNodeBlendTree]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlend3.xml:7
+msgid ""
+"A resource to add to an [AnimationNodeBlendTree]. Blends two animations "
+"together linearly out of three based on a value in the [code][-1.0, 1.0][/"
+"code] range.\n"
+"This node has three inputs:\n"
+"- The base animation\n"
+"- A -blend animation to blend with when the blend amount is in the [code]"
+"[-1.0, 0.0][/code] range.\n"
+"- A +blend animation to blend with when the blend amount is in the [code]"
+"[0.0, 1.0][/code] range"
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:4
+msgid ""
+"Blends linearly between two of any number of [AnimationNode] of any type "
+"placed on a virtual axis."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:7
+msgid ""
+"A resource to add to an [AnimationNodeBlendTree].\n"
+"This is a virtual axis on which you can add any type of [AnimationNode] "
+"using [method add_blend_point].\n"
+"Outputs the linear blend of the two [AnimationNode]s closest to the node's "
+"current value.\n"
+"You can set the extents of the axis using the [member min_space] and [member "
+"max_space]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:26
+msgid ""
+"Adds a new point that represents a [code]node[/code] on the virtual axis at "
+"a given position set by [code]pos[/code]. You can insert it at a specific "
+"index using the [code]at_index[/code] argument. If you use the default value "
+"for [code]at_index[/code], the point is inserted at the end of the blend "
+"points array."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:33
+msgid "Returns the number of points on the blend axis."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:42
+msgid ""
+"Returns the [AnimationNode] referenced by the point at index [code]point[/"
+"code]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:51
+#: doc/classes/AnimationNodeBlendSpace2D.xml:65
+msgid "Returns the position of the point at index [code]point[/code]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:60
+msgid "Removes the point at index [code]point[/code] from the blend axis."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:71
+#: doc/classes/AnimationNodeBlendSpace2D.xml:112
+msgid ""
+"Changes the [AnimationNode] referenced by the point at index [code]point[/"
+"code]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:82
+#: doc/classes/AnimationNodeBlendSpace2D.xml:123
+msgid ""
+"Updates the position of the point at index [code]point[/code] on the blend "
+"axis."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:88
+msgid ""
+"The blend space's axis's upper limit for the points' position. See [method "
+"add_blend_point]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:91
+msgid ""
+"The blend space's axis's lower limit for the points' position. See [method "
+"add_blend_point]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:94
+msgid "Position increment to snap to when moving a point on the axis."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:97
+msgid "Label of the virtual axis of the blend space."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:4
+msgid ""
+"Blends linearly between three [AnimationNode] of any type placed in a 2D "
+"space."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:7
+msgid ""
+"A resource to add to an [AnimationNodeBlendTree].\n"
+"This node allows you to blend linearly between three animations using a "
+"[Vector2] weight.\n"
+"You can add vertices to the blend space with [method add_blend_point] and "
+"automatically triangulate it by setting [member auto_triangles] to "
+"[code]true[/code]. Otherwise, use [method add_triangle] and [method "
+"remove_triangle] to create up the blend space by hand."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:25
+msgid ""
+"Adds a new point that represents a [code]node[/code] at the position set by "
+"[code]pos[/code]. You can insert it at a specific index using the "
+"[code]at_index[/code] argument. If you use the default value for "
+"[code]at_index[/code], the point is inserted at the end of the blend points "
+"array."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:40
+msgid ""
+"Creates a new triangle using three points [code]x[/code], [code]y[/code], "
+"and [code]z[/code]. Triangles can overlap. You can insert the triangle at a "
+"specific index using the [code]at_index[/code] argument. If you use the "
+"default value for [code]at_index[/code], the point is inserted at the end of "
+"the blend points array."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:47
+msgid "Returns the number of points in the blend space."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:56
+msgid ""
+"Returns the [AnimationRootNode] referenced by the point at index "
+"[code]point[/code]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:72
+msgid "Returns the number of triangles in the blend space."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:83
+msgid ""
+"Returns the position of the point at index [code]point[/code] in the "
+"triangle of index [code]triangle[/code]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:92
+msgid "Removes the point at index [code]point[/code] from the blend space."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:101
+msgid ""
+"Removes the triangle at index [code]triangle[/code] from the blend space."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:129
+msgid ""
+"If [code]true[/code], the blend space is triangulated automatically. The "
+"mesh updates every time you add or remove points with [method "
+"add_blend_point] and [method remove_blend_point]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:132
+msgid ""
+"Controls the interpolation between animations. See [enum BlendMode] "
+"constants."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:135
+msgid ""
+"The blend space's X and Y axes' upper limit for the points' position. See "
+"[method add_blend_point]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:138
+msgid ""
+"The blend space's X and Y axes' lower limit for the points' position. See "
+"[method add_blend_point]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:141
+msgid "Position increment to snap to when moving a point."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:144
+msgid "Name of the blend space's X axis."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:147
+msgid "Name of the blend space's Y axis."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:153
+msgid ""
+"Emitted every time the blend space's triangles are created, removed, or when "
+"one of their vertices changes position."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:159
+msgid "The interpolation between animations is linear."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:162
+msgid ""
+"The blend space plays the animation of the node the blending position is "
+"closest to. Useful for frame-by-frame 2D animations."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:165
+msgid ""
+"Similar to [constant BLEND_MODE_DISCRETE], but starts the new animation at "
+"the last animation's playback position."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:4
+msgid "[AnimationTree] node resource that contains many blend type nodes."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:7
+msgid ""
+"This node may contain a sub-tree of any other blend type nodes, such as mix, "
+"blend2, blend3, one shot, etc. This is one of the most commonly used roots."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:23
+msgid ""
+"Adds an [AnimationNode] at the given [code]position[/code]. The [code]name[/"
+"code] is used to identify the created sub-node later."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:36
+msgid ""
+"Connects the output of an [AnimationNode] as input for another "
+"[AnimationNode], at the input port specified by [code]input_index[/code]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:47
+msgid "Disconnects the node connected to the specified input."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:56
+msgid "Returns the sub-node with the specified [code]name[/code]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:65
+msgid ""
+"Returns the position of the sub-node with the specified [code]name[/code]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:74
+msgid ""
+"Returns [code]true[/code] if a sub-node with specified [code]name[/code] "
+"exists."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:83
+msgid "Removes a sub-node."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:94
+msgid "Changes the name of a sub-node."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:105
+msgid "Modifies the position of a sub-node."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:111
+msgid "The global offset of all sub-nodes."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:116
+msgid "The connection was successful."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:119
+msgid "The input node is [code]null[/code]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:122
+msgid "The specified input port is out of range."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:125
+msgid "The output node is [code]null[/code]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:128
+msgid "Input and output nodes are the same."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:131
+msgid "The specified connection already exists."
+msgstr ""
+
+#: doc/classes/AnimationNodeOneShot.xml:4
+msgid "Plays an animation once in [AnimationNodeBlendTree]."
+msgstr ""
+
+#: doc/classes/AnimationNodeOneShot.xml:7
+msgid ""
+"A resource to add to an [AnimationNodeBlendTree]. 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."
+msgstr ""
+
+#: doc/classes/AnimationNodeOneShot.xml:30
+msgid ""
+"If [code]true[/code], the sub-animation will restart automatically after "
+"finishing."
+msgstr ""
+
+#: doc/classes/AnimationNodeOneShot.xml:33
+msgid "The delay after which the automatic restart is triggered, in seconds."
+msgstr ""
+
+#: doc/classes/AnimationNodeOneShot.xml:36
+msgid ""
+"If [member autorestart] is [code]true[/code], a random additional delay (in "
+"seconds) between 0 and this value will be added to [member "
+"autorestart_delay]."
+msgstr ""
+
+#: doc/classes/AnimationNodeOutput.xml:4
+msgid "Generic output node to be added to [AnimationNodeBlendTree]."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:4
+msgid "State machine for control of animations."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:7
+msgid ""
+"Contains multiple nodes representing animation states, connected in a graph. "
+"Node transitions can be configured to happen automatically or via code, "
+"using a shortest-path algorithm. Retrieve the "
+"[AnimationNodeStateMachinePlayback] object from the [AnimationTree] node to "
+"control it programmatically.\n"
+"[b]Example:[/b]\n"
+"[codeblock]\n"
+"var state_machine = $AnimationTree.get(\"parameters/playback\")\n"
+"state_machine.travel(\"some_state\")\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:28
+msgid ""
+"Adds a new node to the graph. The [code]position[/code] is used for display "
+"in the editor."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:41
+msgid "Adds a transition between the given nodes."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:48
+#: doc/classes/AnimationNodeStateMachine.xml:89
+msgid "Returns the graph's end node."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:55
+msgid "Returns the draw offset of the graph. Used for display in the editor."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:64
+msgid "Returns the animation node with the given name."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:73
+msgid "Returns the given animation node's name."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:82
+msgid "Returns the given node's coordinates. Used for display in the editor."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:98
+msgid "Returns the given transition."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:105
+msgid "Returns the number of connections in the graph."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:114
+msgid "Returns the given transition's start node."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:123
+msgid "Returns the given transition's end node."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:132
+msgid "Returns [code]true[/code] if the graph contains the given node."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:143
+msgid ""
+"Returns [code]true[/code] if there is a transition between the given nodes."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:152
+msgid "Deletes the given node from the graph."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:163
+msgid "Deletes the transition between the two specified nodes."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:172
+msgid "Deletes the given transition by index."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:183
+msgid "Renames the given node."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:202
+msgid "Sets the given node as the graph end point."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:211
+msgid "Sets the draw offset of the graph. Used for display in the editor."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:222
+msgid "Sets the node's coordinates. Used for display in the editor."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:231
+msgid "Sets the given node as the graph start point."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachinePlayback.xml:4
+msgid "Playback control for [AnimationNodeStateMachine]."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachinePlayback.xml:7
+msgid ""
+"Allows control of [AnimationTree] state machines created with "
+"[AnimationNodeStateMachine]. Retrieve with [code]$AnimationTree."
+"get(\"parameters/playback\")[/code].\n"
+"[b]Example:[/b]\n"
+"[codeblock]\n"
+"var state_machine = $AnimationTree.get(\"parameters/playback\")\n"
+"state_machine.travel(\"some_state\")\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachinePlayback.xml:22
+msgid "Returns the currently playing animation state."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachinePlayback.xml:29
+msgid ""
+"Returns the current travel path as computed internally by the A* algorithm."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachinePlayback.xml:36
+msgid "Returns [code]true[/code] if an animation is playing."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachinePlayback.xml:45
+msgid "Starts playing the given animation."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachinePlayback.xml:52
+msgid "Stops the currently playing animation."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachinePlayback.xml:61
+msgid ""
+"Transitions from the current state to another one, following the shortest "
+"path."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachineTransition.xml:14
+msgid ""
+"Turn on auto advance when this condition is set. The provided name will "
+"become a boolean parameter on the [AnimationTree] that can be controlled "
+"from code (see [url=https://docs.godotengine.org/en/latest/tutorials/"
+"animation/animation_tree.html#controlling-from-code][/url]). For example, if "
+"[member AnimationTree.tree_root] is an [AnimationNodeStateMachine] and "
+"[member advance_condition] is set to [code]\"idle\"[/code]:\n"
+"[codeblock]\n"
+"$animation_tree[\"parameters/conditions/idle\"] = is_on_floor and "
+"(linear_velocity.x == 0)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachineTransition.xml:20
+msgid ""
+"Turn on the transition automatically when this state is reached. This works "
+"best with [constant SWITCH_MODE_AT_END]."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachineTransition.xml:23
+msgid ""
+"Don't use this transition during [method AnimationNodeStateMachinePlayback."
+"travel] or [member auto_advance]."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachineTransition.xml:26
+msgid ""
+"Lower priority transitions are preferred when travelling through the tree "
+"via [method AnimationNodeStateMachinePlayback.travel] or [member "
+"auto_advance]."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachineTransition.xml:29
+msgid "The transition type."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachineTransition.xml:32
+msgid "The time to cross-fade between this state and the next."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachineTransition.xml:38
+msgid "Emitted when [member advance_condition] is changed."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachineTransition.xml:44
+msgid ""
+"Switch to the next state immediately. The current state will end and blend "
+"into the beginning of the new one."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachineTransition.xml:47
+msgid ""
+"Switch to the next state immediately, but will seek the new state to the "
+"playback position of the old state."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachineTransition.xml:50
+msgid ""
+"Wait for the current state playback to end, then switch to the beginning of "
+"the next state animation."
+msgstr ""
+
+#: doc/classes/AnimationNodeTimeScale.xml:4
+msgid "A time-scaling animation node to be used with [AnimationTree]."
+msgstr ""
+
+#: doc/classes/AnimationNodeTimeScale.xml:7
+msgid ""
+"Allows scaling the speed of the animation (or reversing it) in any children "
+"nodes. Setting it to 0 will pause the animation."
+msgstr ""
+
+#: doc/classes/AnimationNodeTimeSeek.xml:4
+msgid "A time-seeking animation node to be used with [AnimationTree]."
+msgstr ""
+
+#: doc/classes/AnimationNodeTimeSeek.xml:7
+msgid ""
+"This node can be used to cause a seek command to happen to any sub-children "
+"of the graph. After setting the time, this value returns to -1."
+msgstr ""
+
+#: doc/classes/AnimationNodeTransition.xml:4
+msgid "A generic animation transition node for [AnimationTree]."
+msgstr ""
+
+#: doc/classes/AnimationNodeTransition.xml:7
+msgid ""
+"Simple state machine for cases which don't require a more advanced "
+"[AnimationNodeStateMachine]. Animations can be connected to the inputs and "
+"transition times can be specified."
+msgstr ""
+
+#: doc/classes/AnimationNodeTransition.xml:52
+msgid "The number of available input ports for this node."
+msgstr ""
+
+#: doc/classes/AnimationNodeTransition.xml:55
+msgid ""
+"Cross-fading time (in seconds) between each animation connected to the "
+"inputs."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:4
+msgid "Container and player of [Animation] resources."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:7
+msgid ""
+"An animation player is used for general-purpose playback of [Animation] "
+"resources. It contains a dictionary of animations (referenced by name) and "
+"custom blend times between their transitions. Additionally, animations can "
+"be played and blended in different channels.\n"
+"[AnimationPlayer] is more suited than [Tween] for animations where you know "
+"the final values in advance. For example, fading a screen in and out is more "
+"easily done with an [AnimationPlayer] node thanks to the animation tools "
+"provided by the editor. That particular example can also be implemented with "
+"a [Tween] node, but it requires doing everything by code.\n"
+"Updating the target properties of animations occurs at process time."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:12
+msgid ""
+"https://docs.godotengine.org/en/latest/getting_started/step_by_step/"
+"animations.html"
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:24
+msgid ""
+"Adds [code]animation[/code] to the player accessible with the key "
+"[code]name[/code]."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:33
+msgid ""
+"Shifts position in the animation timeline and immediately updates the "
+"animation. [code]delta[/code] is the time in seconds to shift. Events "
+"between the current frame and [code]delta[/code] are handled."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:42
+msgid "Returns the name of the next animation in the queue."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:53
+msgid ""
+"Triggers the [code]anim_to[/code] animation when the [code]anim_from[/code] "
+"animation completes."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:60
+msgid ""
+"[AnimationPlayer] caches animated nodes. It may not notice if a node "
+"disappears; [method clear_caches] forces it to update the cache again."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:67
+msgid "Clears all queued, unplayed animations."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:76
+msgid ""
+"Returns the name of [code]animation[/code] or an empty string if not found."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:85
+msgid ""
+"Returns the [Animation] with key [code]name[/code] or [code]null[/code] if "
+"not found."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:92
+msgid "Returns the list of stored animation names."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:103
+msgid ""
+"Gets the blend time (in seconds) between two animations, referenced by their "
+"names."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:110
+msgid ""
+"Gets the actual playing speed of current animation or 0 if not playing. This "
+"speed is the [member playback_speed] property multiplied by "
+"[code]custom_speed[/code] argument specified when calling the [method play] "
+"method."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:117
+msgid ""
+"Returns a list of the animation names that are currently queued to play."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:126
+msgid ""
+"Returns [code]true[/code] if the [AnimationPlayer] stores an [Animation] "
+"with key [code]name[/code]."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:133
+msgid "Returns [code]true[/code] if playing an animation."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:148
+msgid ""
+"Plays the animation with key [code]name[/code]. Custom blend times and speed "
+"can be set. If [code]custom_speed[/code] is negative and [code]from_end[/"
+"code] is [code]true[/code], the animation will play backwards (which is "
+"equivalent to calling [method play_backwards]).\n"
+"The [AnimationPlayer] keeps track of its current or last played animation "
+"with [member assigned_animation]. If this method is called with that same "
+"animation [code]name[/code], or with no [code]name[/code] parameter, the "
+"assigned animation will resume playing if it was paused, or restart if it "
+"was stopped (see [method stop] for both pause and stop). If the animation "
+"was already playing, it will keep playing.\n"
+"[b]Note:[/b] The animation will be updated the next time the "
+"[AnimationPlayer] is processed. If other variables are updated at the same "
+"time this is called, they may be updated too early. To perform the update "
+"immediately, call [code]advance(0)[/code]."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:161
+msgid ""
+"Plays the animation with key [code]name[/code] in reverse.\n"
+"This method is a shorthand for [method play] with [code]custom_speed = -1.0[/"
+"code] and [code]from_end = true[/code], so see its description for more "
+"information."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:171
+msgid ""
+"Queues an animation for playback once the current one is done.\n"
+"[b]Note:[/b] If a looped animation is currently playing, the queued "
+"animation will never play unless the looped animation is stopped somehow."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:181
+msgid "Removes the animation with key [code]name[/code]."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:192
+msgid ""
+"Renames an existing animation with key [code]name[/code] to [code]newname[/"
+"code]."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:203
+msgid ""
+"Seeks the animation to the [code]seconds[/code] point in time (in seconds). "
+"If [code]update[/code] is [code]true[/code], the animation updates too, "
+"otherwise it updates at process time. Events between the current frame and "
+"[code]seconds[/code] are skipped."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:216
+msgid ""
+"Specifies a blend time (in seconds) between two animations, referenced by "
+"their names."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:225
+msgid ""
+"Stops or pauses the currently playing animation. If [code]reset[/code] is "
+"[code]true[/code], the animation position is reset to [code]0[/code] and the "
+"playback speed is reset to [code]1.0[/code].\n"
+"If [code]reset[/code] is [code]false[/code], the [member "
+"current_animation_position] will be kept and calling [method play] or "
+"[method play_backwards] without arguments or with the same animation name as "
+"[member assigned_animation] will resume the animation."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:232
+msgid ""
+"If playing, the current animation; otherwise, the animation last played. "
+"When set, would change the animation, but would not play it unless currently "
+"playing. See also [member current_animation]."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:235
+msgid "The name of the animation to play when the scene loads."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:238
+msgid ""
+"The name of the current animation, \"\" if not playing anything. When being "
+"set, does not restart the animation. See also [method play]."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:241
+msgid "The length (in seconds) of the currently being played animation."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:244
+msgid "The position (in seconds) of the currently playing animation."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:247
+msgid "The call mode to use for Call Method tracks."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:250
+msgid ""
+"If [code]true[/code], updates animations in response to process-related "
+"notifications."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:253
+msgid ""
+"The default time in which to blend animations. Ranges from 0 to 4096 with "
+"0.01 precision."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:256
+msgid "The process notification in which to update animations."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:259
+msgid ""
+"The speed scaling ratio. For instance, if this value is 1, then the "
+"animation plays at normal speed. If it's 0.5, then it plays at half speed. "
+"If it's 2, then it plays at double speed."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:262
+msgid "The node from which node path references will travel."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:272
+msgid ""
+"If the currently being played animation changes, this signal will notify of "
+"such change."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:279
+msgid "Notifies when an animation finished playing."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:286
+msgid "Notifies when an animation starts playing."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:291
+msgid ""
+"Notifies when the caches have been cleared, either automatically, or "
+"manually via [method clear_caches]."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:297
+msgid ""
+"Process animation during the physics process. This is especially useful when "
+"animating physics bodies."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:300
+msgid "Process animation during the idle process."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:303
+msgid ""
+"Do not process animation. Use [method advance] to process the animation "
+"manually."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:306
+msgid ""
+"Batch method calls during the animation process, then do the calls after "
+"events are processed. This avoids bugs involving deleting nodes or modifying "
+"the AnimationPlayer while playing."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:309
+msgid "Make method calls immediately when reached in the animation."
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:4
+msgid ""
+"A node to be used for advanced animation transitions in an [AnimationPlayer]."
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:7
+msgid ""
+"Note: When linked with an [AnimationPlayer], several properties and methods "
+"of the corresponding [AnimationPlayer] will not function as expected. "
+"Playback and transitions should be handled using only the [AnimationTree] "
+"and its constituent [AnimationNode](s). The [AnimationPlayer] node should be "
+"used solely for adding, deleting, and editing animations."
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:11
+msgid "https://github.com/godotengine/tps-demo"
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:20
+msgid "Manually advance the animations by the specified time (in seconds)."
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:27
+msgid ""
+"Retrieve the motion of the [member root_motion_track] as a [Transform] that "
+"can be used elsewhere. If [member root_motion_track] is not a path to a "
+"track of type [constant Animation.TYPE_TRANSFORM], returns an identity "
+"transformation."
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:43
+msgid "If [code]true[/code], the [AnimationTree] will be processing."
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:46
+msgid "The path to the [AnimationPlayer] used for animating."
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:49
+msgid ""
+"The process mode of this [AnimationTree]. See [enum AnimationProcessMode] "
+"for available modes."
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:52
+msgid ""
+"The path to the Animation track used for root motion. Paths must be valid "
+"scene-tree paths to a node, and must be specified starting from the parent "
+"node of the node that will reproduce the animation. To specify a track that "
+"controls properties or bones, append its name after the path, separated by "
+"[code]\":\"[/code]. For example, [code]\"character/skeleton:ankle\"[/code] "
+"or [code]\"character/mesh:transform/local\"[/code].\n"
+"If the track has type [constant Animation.TYPE_TRANSFORM], the "
+"transformation will be cancelled visually, and the animation will appear to "
+"stay in place."
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:56
+msgid "The root animation node of this [AnimationTree]. See [AnimationNode]."
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:61
+msgid ""
+"The animations will progress during the physics frame (i.e. [method Node."
+"_physics_process])."
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:64
+msgid ""
+"The animations will progress during the idle frame (i.e. [method Node."
+"_process])."
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:67
+msgid "The animations will only progress manually (see [method advance])."
+msgstr ""
+
+#: doc/classes/Area2D.xml:4
+msgid "2D area for detection and 2D physics influence."
+msgstr ""
+
+#: doc/classes/Area2D.xml:7
+msgid ""
+"2D area that detects [CollisionObject2D] nodes overlapping, entering, or "
+"exiting. Can also alter or override local physics parameters (gravity, "
+"damping)."
+msgstr ""
+
+#: doc/classes/Area2D.xml:10
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/physics/using_area_2d.html"
+msgstr ""
+
+#: doc/classes/Area2D.xml:19
+msgid ""
+"Returns an individual bit on the layer mask. Describes whether other areas "
+"will collide with this one on the given layer."
+msgstr ""
+
+#: doc/classes/Area2D.xml:28
+msgid ""
+"Returns an individual bit on the collision mask. Describes whether this area "
+"will collide with others on the given layer."
+msgstr ""
+
+#: doc/classes/Area2D.xml:35
+msgid ""
+"Returns a list of intersecting [Area2D]s. For performance reasons "
+"(collisions are all processed at the same time) this list is modified once "
+"during the physics step, not immediately after objects are moved. Consider "
+"using signals instead."
+msgstr ""
+
+#: doc/classes/Area2D.xml:42
+msgid ""
+"Returns a list of intersecting [PhysicsBody2D]s. For performance reasons "
+"(collisions are all processed at the same time) this list is modified once "
+"during the physics step, not immediately after objects are moved. Consider "
+"using signals instead."
+msgstr ""
+
+#: doc/classes/Area2D.xml:51
+msgid ""
+"If [code]true[/code], the given area overlaps the Area2D.\n"
+"[b]Note:[/b] The result of this test is not immediate after moving objects. "
+"For performance, list of overlaps is updated once per frame and before the "
+"physics step. Consider using signals instead."
+msgstr ""
+
+#: doc/classes/Area2D.xml:61
+msgid ""
+"If [code]true[/code], the given physics body overlaps the Area2D.\n"
+"[b]Note:[/b] The result of this test is not immediate after moving objects. "
+"For performance, list of overlaps is updated once per frame and before the "
+"physics step. Consider using signals instead.\n"
+"The [code]body[/code] argument can either be a [PhysicsBody2D] or a "
+"[TileMap] instance (while TileMaps are not physics body themselves, they "
+"register their tiles with collision shapes as a virtual physics body)."
+msgstr ""
+
+#: doc/classes/Area2D.xml:74
+msgid ""
+"Set/clear individual bits on the layer mask. This makes getting an area in/"
+"out of only one layer easier."
+msgstr ""
+
+#: doc/classes/Area2D.xml:85
+msgid ""
+"Set/clear individual bits on the collision mask. This makes selecting the "
+"areas scanned easier."
+msgstr ""
+
+#: doc/classes/Area2D.xml:91 doc/classes/Area3D.xml:90
+msgid ""
+"The rate at which objects stop spinning in this area. Represents the angular "
+"velocity lost per second. Values range from [code]0[/code] (no damping) to "
+"[code]1[/code] (full damping)."
+msgstr ""
+
+#: doc/classes/Area2D.xml:94 doc/classes/Area3D.xml:93
+msgid "The name of the area's audio bus."
+msgstr ""
+
+#: doc/classes/Area2D.xml:97 doc/classes/Area3D.xml:96
+msgid ""
+"If [code]true[/code], the area's audio bus overrides the default audio bus."
+msgstr ""
+
+#: doc/classes/Area2D.xml:100 doc/classes/Area3D.xml:99
+msgid ""
+"The area's physics layer(s). Collidable objects can exist in any of 32 "
+"different layers. A contact is detected if object A is in any of the layers "
+"that object B scans, or object B is in any layers that object A scans. See "
+"also [member collision_mask]."
+msgstr ""
+
+#: doc/classes/Area2D.xml:103 doc/classes/Area3D.xml:102
+msgid "The physics layers this area scans to determine collision detection."
+msgstr ""
+
+#: doc/classes/Area2D.xml:106 doc/classes/Area3D.xml:105
+msgid ""
+"The area's gravity intensity (ranges from -1024 to 1024). This value "
+"multiplies the gravity vector. This is useful to alter the force of gravity "
+"without altering its direction."
+msgstr ""
+
+#: doc/classes/Area2D.xml:109 doc/classes/Area3D.xml:108
+msgid ""
+"The falloff factor for point gravity. The greater the value, the faster "
+"gravity decreases with distance."
+msgstr ""
+
+#: doc/classes/Area2D.xml:112 doc/classes/Area3D.xml:111
+msgid ""
+"If [code]true[/code], gravity is calculated from a point (set via [member "
+"gravity_vec]). See also [member space_override]."
+msgstr ""
+
+#: doc/classes/Area2D.xml:115 doc/classes/Area3D.xml:114
+msgid ""
+"The area's gravity vector (not normalized). If gravity is a point (see "
+"[member gravity_point]), this will be the point of attraction."
+msgstr ""
+
+#: doc/classes/Area2D.xml:118 doc/classes/Area3D.xml:117
+msgid ""
+"The rate at which objects stop moving in this area. Represents the linear "
+"velocity lost per second. Values range from [code]0[/code] (no damping) to "
+"[code]1[/code] (full damping)."
+msgstr ""
+
+#: doc/classes/Area2D.xml:121 doc/classes/Area3D.xml:120
+msgid "If [code]true[/code], other monitoring areas can detect this area."
+msgstr ""
+
+#: doc/classes/Area2D.xml:124 doc/classes/Area3D.xml:123
+msgid ""
+"If [code]true[/code], the area detects bodies or areas entering and exiting "
+"it."
+msgstr ""
+
+#: doc/classes/Area2D.xml:127 doc/classes/Area3D.xml:126
+msgid "The area's priority. Higher priority areas are processed first."
+msgstr ""
+
+#: doc/classes/Area2D.xml:130 doc/classes/Area3D.xml:141
+msgid ""
+"Override mode for gravity and damping calculations within this area. See "
+"[enum SpaceOverride] for possible values."
+msgstr ""
+
+#: doc/classes/Area2D.xml:138 doc/classes/Area3D.xml:149
+msgid "Emitted when another area enters."
+msgstr ""
+
+#: doc/classes/Area2D.xml:145 doc/classes/Area3D.xml:156
+msgid "Emitted when another area exits."
+msgstr ""
+
+#: doc/classes/Area2D.xml:158
+msgid ""
+"Emitted when another area enters, reporting which shapes overlapped. "
+"[code]shape_owner_get_owner(shape_find_owner(shape))[/code] returns the "
+"parent object of the owner of the [code]shape[/code]."
+msgstr ""
+
+#: doc/classes/Area2D.xml:171
+msgid ""
+"Emitted when another area exits, reporting which shapes were overlapping."
+msgstr ""
+
+#: doc/classes/Area2D.xml:178
+msgid ""
+"Emitted when a physics body enters.\n"
+"The [code]body[/code] argument can either be a [PhysicsBody2D] or a "
+"[TileMap] instance (while TileMaps are not physics body themselves, they "
+"register their tiles with collision shapes as a virtual physics body)."
+msgstr ""
+
+#: doc/classes/Area2D.xml:186
+msgid ""
+"Emitted when a physics body exits.\n"
+"The [code]body[/code] argument can either be a [PhysicsBody2D] or a "
+"[TileMap] instance (while TileMaps are not physics body themselves, they "
+"register their tiles with collision shapes as a virtual physics body)."
+msgstr ""
+
+#: doc/classes/Area2D.xml:200
+msgid ""
+"Emitted when a physics body enters, reporting which shapes overlapped.\n"
+"The [code]body[/code] argument can either be a [PhysicsBody2D] or a "
+"[TileMap] instance (while TileMaps are not physics body themselves, they "
+"register their tiles with collision shapes as a virtual physics body)."
+msgstr ""
+
+#: doc/classes/Area2D.xml:214
+msgid ""
+"Emitted when a physics body exits, reporting which shapes were overlapping.\n"
+"The [code]body[/code] argument can either be a [PhysicsBody2D] or a "
+"[TileMap] instance (while TileMaps are not physics body themselves, they "
+"register their tiles with collision shapes as a virtual physics body)."
+msgstr ""
+
+#: doc/classes/Area2D.xml:221 doc/classes/Area3D.xml:232
+msgid "This area does not affect gravity/damping."
+msgstr ""
+
+#: doc/classes/Area2D.xml:224 doc/classes/Area3D.xml:235
+msgid ""
+"This area adds its gravity/damping values to whatever has been calculated so "
+"far (in [member priority] order)."
+msgstr ""
+
+#: doc/classes/Area2D.xml:227 doc/classes/Area3D.xml:238
+msgid ""
+"This area adds its gravity/damping values to whatever has been calculated so "
+"far (in [member priority] order), ignoring any lower priority areas."
+msgstr ""
+
+#: doc/classes/Area2D.xml:230 doc/classes/Area3D.xml:241
+msgid ""
+"This area replaces any gravity/damping, even the defaults, ignoring any "
+"lower priority areas."
+msgstr ""
+
+#: doc/classes/Area2D.xml:233 doc/classes/Area3D.xml:244
+msgid ""
+"This area replaces any gravity/damping calculated so far (in [member "
+"priority] order), but keeps calculating the rest of the areas."
+msgstr ""
+
+#: doc/classes/Area3D.xml:4
+msgid "General-purpose area node for detection and 3D physics influence."
+msgstr ""
+
+#: doc/classes/Area3D.xml:7
+msgid ""
+"3D area that detects [CollisionObject3D] nodes overlapping, entering, or "
+"exiting. Can also alter or override local physics parameters (gravity, "
+"damping)."
+msgstr ""
+
+#: doc/classes/Area3D.xml:18
+msgid "Returns an individual bit on the layer mask."
+msgstr ""
+
+#: doc/classes/Area3D.xml:27 modules/csg/doc_classes/CSGShape3D.xml:18
+#: modules/csg/doc_classes/CSGShape3D.xml:27 doc/classes/RayCast2D.xml:70
+#: doc/classes/SoftBody3D.xml:35 doc/classes/SoftBody3D.xml:44
+msgid "Returns an individual bit on the collision mask."
+msgstr ""
+
+#: doc/classes/Area3D.xml:34
+msgid ""
+"Returns a list of intersecting [Area3D]s. For performance reasons "
+"(collisions are all processed at the same time) this list is modified once "
+"during the physics step, not immediately after objects are moved. Consider "
+"using signals instead."
+msgstr ""
+
+#: doc/classes/Area3D.xml:41
+msgid ""
+"Returns a list of intersecting [PhysicsBody3D]s. For performance reasons "
+"(collisions are all processed at the same time) this list is modified once "
+"during the physics step, not immediately after objects are moved. Consider "
+"using signals instead."
+msgstr ""
+
+#: doc/classes/Area3D.xml:50
+msgid ""
+"If [code]true[/code], the given area overlaps the Area3D.\n"
+"[b]Note:[/b] The result of this test is not immediate after moving objects. "
+"For performance, list of overlaps is updated once per frame and before the "
+"physics step. Consider using signals instead."
+msgstr ""
+
+#: doc/classes/Area3D.xml:60
+msgid ""
+"If [code]true[/code], the given physics body overlaps the Area3D.\n"
+"[b]Note:[/b] The result of this test is not immediate after moving objects. "
+"For performance, list of overlaps is updated once per frame and before the "
+"physics step. Consider using signals instead.\n"
+"The [code]body[/code] argument can either be a [PhysicsBody3D] or a "
+"[GridMap] instance (while GridMaps are not physics body themselves, they "
+"register their tiles with collision shapes as a virtual physics body)."
+msgstr ""
+
+#: doc/classes/Area3D.xml:73
+msgid ""
+"Set/clear individual bits on the layer mask. This simplifies editing this "
+"[Area3D]'s layers."
+msgstr ""
+
+#: doc/classes/Area3D.xml:84
+msgid ""
+"Set/clear individual bits on the collision mask. This simplifies editing "
+"which [Area3D] layers this [Area3D] scans."
+msgstr ""
+
+#: doc/classes/Area3D.xml:129
+msgid ""
+"The degree to which this area applies reverb to its associated audio. Ranges "
+"from [code]0[/code] to [code]1[/code] with [code]0.1[/code] precision."
+msgstr ""
+
+#: doc/classes/Area3D.xml:132
+msgid "If [code]true[/code], the area applies reverb to its associated audio."
+msgstr ""
+
+#: doc/classes/Area3D.xml:135
+msgid "The reverb bus name to use for this area's associated audio."
+msgstr ""
+
+#: doc/classes/Area3D.xml:138
+msgid ""
+"The degree to which this area's reverb is a uniform effect. Ranges from "
+"[code]0[/code] to [code]1[/code] with [code]0.1[/code] precision."
+msgstr ""
+
+#: doc/classes/Area3D.xml:169
+msgid ""
+"Emitted when another area enters, reporting which areas overlapped. "
+"[code]shape_owner_get_owner(shape_find_owner(shape))[/code] returns the "
+"parent object of the owner of the [code]shape[/code]."
+msgstr ""
+
+#: doc/classes/Area3D.xml:182
+msgid ""
+"Emitted when another area exits, reporting which areas were overlapping."
+msgstr ""
+
+#: doc/classes/Area3D.xml:189
+msgid ""
+"Emitted when a physics body enters.\n"
+"The [code]body[/code] argument can either be a [PhysicsBody3D] or a "
+"[GridMap] instance (while GridMaps are not physics body themselves, they "
+"register their tiles with collision shapes as a virtual physics body)."
+msgstr ""
+
+#: doc/classes/Area3D.xml:197
+msgid ""
+"Emitted when a physics body exits.\n"
+"The [code]body[/code] argument can either be a [PhysicsBody3D] or a "
+"[GridMap] instance (while GridMaps are not physics body themselves, they "
+"register their tiles with collision shapes as a virtual physics body)."
+msgstr ""
+
+#: doc/classes/Area3D.xml:211
+msgid ""
+"Emitted when a physics body enters, reporting which shapes overlapped.\n"
+"The [code]body[/code] argument can either be a [PhysicsBody3D] or a "
+"[GridMap] instance (while GridMaps are not physics body themselves, they "
+"register their tiles with collision shapes as a virtual physics body)."
+msgstr ""
+
+#: doc/classes/Area3D.xml:225
+msgid ""
+"Emitted when a physics body exits, reporting which shapes were overlapping.\n"
+"The [code]body[/code] argument can either be a [PhysicsBody3D] or a "
+"[GridMap] instance (while GridMaps are not physics body themselves, they "
+"register their tiles with collision shapes as a virtual physics body)."
+msgstr ""
+
+#: doc/classes/Array.xml:4
+msgid "Generic array datatype."
+msgstr ""
+
+#: doc/classes/Array.xml:7
+msgid ""
+"Generic array which can contain several elements of any type, accessible by "
+"a numerical index starting at 0. Negative indices can be used to count from "
+"the back, like in Python (-1 is the last element, -2 the second to last, "
+"etc.).\n"
+"[b]Example:[/b]\n"
+"[codeblock]\n"
+"var array = [\"One\", 2, 3, \"Four\"]\n"
+"print(array[0]) # One.\n"
+"print(array[2]) # 3.\n"
+"print(array[-1]) # Four.\n"
+"array[2] = \"Three\"\n"
+"print(array[-2]) # Three.\n"
+"[/codeblock]\n"
+"Arrays can be concatenated using the [code]+[/code] operator:\n"
+"[codeblock]\n"
+"var array1 = [\"One\", 2]\n"
+"var array2 = [3, \"Four\"]\n"
+"print(array1 + array2) # [\"One\", 2, 3, \"Four\"]\n"
+"[/codeblock]\n"
+"[b]Note:[/b] Arrays are always passed by reference. To get a copy of an "
+"array which can be modified independently of the original array, use [method "
+"duplicate]."
+msgstr ""
+
+#: doc/classes/Array.xml:34
+msgid "Constructs an array from a [PackedColorArray]."
+msgstr ""
+
+#: doc/classes/Array.xml:43
+msgid "Constructs an array from a [PackedVector3Array]."
+msgstr ""
+
+#: doc/classes/Array.xml:52
+msgid "Constructs an array from a [PackedVector2Array]."
+msgstr ""
+
+#: doc/classes/Array.xml:61
+msgid "Constructs an array from a [PackedStringArray]."
+msgstr ""
+
+#: doc/classes/Array.xml:70
+msgid "Constructs an array from a [PackedFloat64Array]."
+msgstr ""
+
+#: doc/classes/Array.xml:79
+msgid "Constructs an array from a [PackedFloat32Array]."
+msgstr ""
+
+#: doc/classes/Array.xml:88
+msgid "Constructs an array from a [PackedInt64Array]."
+msgstr ""
+
+#: doc/classes/Array.xml:97
+msgid "Constructs an array from a [PackedInt32Array]."
+msgstr ""
+
+#: doc/classes/Array.xml:106
+msgid "Constructs an array from a [PackedByteArray]."
+msgstr ""
+
+#: doc/classes/Array.xml:115 doc/classes/PackedByteArray.xml:28
+#: doc/classes/PackedColorArray.xml:28 doc/classes/PackedFloat32Array.xml:29
+#: doc/classes/PackedFloat64Array.xml:29 doc/classes/PackedInt32Array.xml:29
+#: doc/classes/PackedInt64Array.xml:29 doc/classes/PackedStringArray.xml:28
+#: doc/classes/PackedVector2Array.xml:28 doc/classes/PackedVector3Array.xml:28
+msgid ""
+"Appends an element at the end of the array (alias of [method push_back])."
+msgstr ""
+
+#: doc/classes/Array.xml:122
+msgid ""
+"Returns the last element of the array, or [code]null[/code] if the array is "
+"empty."
+msgstr ""
+
+#: doc/classes/Array.xml:133
+msgid ""
+"Finds the index of an existing value (or the insertion index that maintains "
+"sorting order, if the value is not yet present in the array) using binary "
+"search. Optionally, a [code]before[/code] specifier can be passed. If "
+"[code]false[/code], the returned index comes after all existing entries of "
+"the value in the array.\n"
+"[b]Note:[/b] Calling [method bsearch] on an unsorted array results in "
+"unexpected behavior."
+msgstr ""
+
+#: doc/classes/Array.xml:149
+msgid ""
+"Finds the index of an existing value (or the insertion index that maintains "
+"sorting order, if the value is not yet present in the array) using binary "
+"search and a custom comparison method. Optionally, a [code]before[/code] "
+"specifier can be passed. If [code]false[/code], the returned index comes "
+"after all existing entries of the value in the array. The custom method "
+"receives two arguments (an element from the array and the value searched "
+"for) and must return [code]true[/code] if the first argument is less than "
+"the second, and return [code]false[/code] otherwise.\n"
+"[b]Note:[/b] Calling [method bsearch] on an unsorted array results in "
+"unexpected behavior."
+msgstr ""
+
+#: doc/classes/Array.xml:157
+msgid ""
+"Clears the array. This is equivalent to using [method resize] with a size of "
+"[code]0[/code]."
+msgstr ""
+
+#: doc/classes/Array.xml:166
+msgid "Returns the number of times an element is in the array."
+msgstr ""
+
+#: doc/classes/Array.xml:175
+msgid ""
+"Returns a copy of the array.\n"
+"If [code]deep[/code] is [code]true[/code], a deep copy is performed: all "
+"nested arrays and dictionaries are duplicated and will not be shared with "
+"the original array. If [code]false[/code], a shallow copy is made and "
+"references to the original nested arrays and dictionaries are kept, so that "
+"modifying a sub-array or dictionary in the copy will also impact those "
+"referenced in the source array."
+msgstr ""
+
+#: doc/classes/Array.xml:183 doc/classes/PackedByteArray.xml:64
+#: doc/classes/PackedColorArray.xml:44 doc/classes/PackedFloat32Array.xml:45
+#: doc/classes/PackedFloat64Array.xml:45 doc/classes/PackedInt32Array.xml:45
+#: doc/classes/PackedInt64Array.xml:45 doc/classes/PackedStringArray.xml:44
+#: doc/classes/PackedVector2Array.xml:44 doc/classes/PackedVector3Array.xml:44
+msgid "Returns [code]true[/code] if the array is empty."
+msgstr ""
+
+#: doc/classes/Array.xml:192
+msgid "Removes the first occurrence of a value from the array."
+msgstr ""
+
+#: doc/classes/Array.xml:203
+msgid ""
+"Searches the array for a value and returns its index or [code]-1[/code] if "
+"not found. Optionally, the initial search index can be passed."
+msgstr ""
+
+#: doc/classes/Array.xml:212
+msgid ""
+"Searches the array in reverse order for a value and returns its index or "
+"[code]-1[/code] if not found."
+msgstr ""
+
+#: doc/classes/Array.xml:219
+msgid ""
+"Returns the first element of the array, or [code]null[/code] if the array is "
+"empty."
+msgstr ""
+
+#: doc/classes/Array.xml:228
+msgid ""
+"Returns [code]true[/code] if the array contains the given value.\n"
+"[codeblock]\n"
+"print([\"inside\", 7].has(\"inside\")) # True\n"
+"print([\"inside\", 7].has(\"outside\")) # False\n"
+"print([\"inside\", 7].has(7)) # True\n"
+"print([\"inside\", 7].has(\"7\")) # False\n"
+"[/codeblock]\n"
+"[b]Note:[/b] This is equivalent to using the [code]in[/code] operator as "
+"follows:\n"
+"[codeblock]\n"
+"# Will evaluate to `true`.\n"
+"if 2 in [2, 4, 6, 8]:\n"
+" pass\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Array.xml:247
+msgid "Returns a hashed integer value representing the array contents."
+msgstr ""
+
+#: doc/classes/Array.xml:258
+msgid ""
+"Inserts a new element at a given position in the array. The position must be "
+"valid, or at the end of the array ([code]pos == size()[/code])."
+msgstr ""
+
+#: doc/classes/Array.xml:265 doc/classes/PackedByteArray.xml:116
+#: doc/classes/PackedColorArray.xml:71 doc/classes/PackedFloat32Array.xml:72
+#: doc/classes/PackedFloat64Array.xml:72 doc/classes/PackedInt32Array.xml:72
+#: doc/classes/PackedInt64Array.xml:72 doc/classes/PackedStringArray.xml:71
+#: doc/classes/PackedVector2Array.xml:71 doc/classes/PackedVector3Array.xml:71
+msgid "Reverses the order of the elements in the array."
+msgstr ""
+
+#: doc/classes/Array.xml:272
+msgid ""
+"Returns the maximum value contained in the array if all elements are of "
+"comparable types. If the elements can't be compared, [code]null[/code] is "
+"returned."
+msgstr ""
+
+#: doc/classes/Array.xml:279
+msgid ""
+"Returns the minimum value contained in the array if all elements are of "
+"comparable types. If the elements can't be compared, [code]null[/code] is "
+"returned."
+msgstr ""
+
+#: doc/classes/Array.xml:286
+msgid ""
+"Removes and returns the last element of the array. Returns [code]null[/code] "
+"if the array is empty."
+msgstr ""
+
+#: doc/classes/Array.xml:293
+msgid ""
+"Removes and returns the first element of the array. Returns [code]null[/"
+"code] if the array is empty."
+msgstr ""
+
+#: doc/classes/Array.xml:302 doc/classes/PackedByteArray.xml:125
+#: doc/classes/PackedFloat32Array.xml:81 doc/classes/PackedFloat64Array.xml:81
+msgid "Appends an element at the end of the array."
+msgstr ""
+
+#: doc/classes/Array.xml:311
+msgid "Adds an element at the beginning of the array."
+msgstr ""
+
+#: doc/classes/Array.xml:320 doc/classes/PackedByteArray.xml:134
+#: doc/classes/PackedColorArray.xml:89 doc/classes/PackedFloat32Array.xml:90
+#: doc/classes/PackedFloat64Array.xml:90 doc/classes/PackedInt32Array.xml:90
+#: doc/classes/PackedInt64Array.xml:90 doc/classes/PackedStringArray.xml:89
+#: doc/classes/PackedVector2Array.xml:89 doc/classes/PackedVector3Array.xml:89
+msgid "Removes an element from the array by index."
+msgstr ""
+
+#: doc/classes/Array.xml:329
+msgid ""
+"Resizes the array to contain a different number of elements. If the array "
+"size is smaller, elements are cleared, if bigger, new elements are "
+"[code]null[/code]."
+msgstr ""
+
+#: doc/classes/Array.xml:340
+msgid ""
+"Searches the array in reverse order. Optionally, a start search index can be "
+"passed. If negative, the start index is considered relative to the end of "
+"the array."
+msgstr ""
+
+#: doc/classes/Array.xml:347
+msgid ""
+"Shuffles the array such that the items will have a random order. This method "
+"uses the global random number generator common to methods such as [method "
+"@GDScript.randi]. Call [method @GDScript.randomize] to ensure that a new "
+"seed will be used each time if you want non-reproducible shuffling."
+msgstr ""
+
+#: doc/classes/Array.xml:354
+msgid "Returns the number of elements in the array."
+msgstr ""
+
+#: doc/classes/Array.xml:369
+msgid ""
+"Duplicates the subset described in the function and returns it in an array, "
+"deeply copying the array if [code]deep[/code] is [code]true[/code]. Lower "
+"and upper index are inclusive, with the [code]step[/code] describing the "
+"change between indices while slicing."
+msgstr ""
+
+#: doc/classes/Array.xml:376
+msgid ""
+"Sorts the array.\n"
+"[b]Note:[/b] Strings are sorted in alphabetical order (as opposed to natural "
+"order). This may lead to unexpected behavior when sorting an array of "
+"strings ending with a sequence of numbers. Consider the following example:\n"
+"[codeblock]\n"
+"var strings = [\"string1\", \"string2\", \"string10\", \"string11\"]\n"
+"strings.sort()\n"
+"print(strings) # Prints [string1, string10, string11, string2]\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Array.xml:393
+msgid ""
+"Sorts the array using a custom method. The arguments are an object that "
+"holds the method and the name of such method. The custom method receives two "
+"arguments (a pair of elements from the array) and must return either "
+"[code]true[/code] or [code]false[/code].\n"
+"[b]Note:[/b] you cannot randomize the return value as the heapsort algorithm "
+"expects a deterministic result. Doing so will result in unexpected "
+"behavior.\n"
+"[codeblock]\n"
+"class MyCustomSorter:\n"
+" static func sort_ascending(a, b):\n"
+" if a[0] < b[0]:\n"
+" return true\n"
+" return false\n"
+"\n"
+"var my_items = [[5, \"Potato\"], [9, \"Rice\"], [4, \"Tomato\"]]\n"
+"my_items.sort_custom(MyCustomSorter, \"sort_ascending\")\n"
+"print(my_items) # Prints [[4, Tomato], [5, Potato], [9, Rice]].\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:4
+msgid ""
+"[Mesh] type that provides utility for constructing a surface from arrays."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:7
+msgid ""
+"The [ArrayMesh] is used to construct a [Mesh] by specifying the attributes "
+"as arrays.\n"
+"The most basic example is the creation of a single triangle:\n"
+"[codeblock]\n"
+"var vertices = PackedVector3Array()\n"
+"vertices.push_back(Vector3(0, 1, 0))\n"
+"vertices.push_back(Vector3(1, 0, 0))\n"
+"vertices.push_back(Vector3(0, 0, 1))\n"
+"# Initialize the ArrayMesh.\n"
+"var arr_mesh = ArrayMesh.new()\n"
+"var arrays = []\n"
+"arrays.resize(ArrayMesh.ARRAY_MAX)\n"
+"arrays[ArrayMesh.ARRAY_VERTEX] = vertices\n"
+"# Create the Mesh.\n"
+"arr_mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLES, arrays)\n"
+"var m = MeshInstance3D.new()\n"
+"m.mesh = arr_mesh\n"
+"[/codeblock]\n"
+"The [MeshInstance3D] is ready to be added to the [SceneTree] to be shown.\n"
+"See also [ImmediateGeometry3D], [MeshDataTool] and [SurfaceTool] for "
+"procedural geometry generation.\n"
+"[b]Note:[/b] Godot uses clockwise [url=https://learnopengl.com/Advanced-"
+"OpenGL/Face-culling]winding order[/url] for front faces of triangle "
+"primitive modes."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:29
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/content/procedural_geometry/"
+"arraymesh.html"
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:38
+msgid ""
+"Adds name for a blend shape that will be added with [method "
+"add_surface_from_arrays]. Must be called before surface is added."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:57
+msgid ""
+"Creates a new surface.\n"
+"Surfaces are created to be rendered using a [code]primitive[/code], which "
+"may be any of the types defined in [enum Mesh.PrimitiveType]. (As a note, "
+"when using indices, it is recommended to only use points, lines or "
+"triangles.) [method Mesh.get_surface_count] will become the [code]surf_idx[/"
+"code] for this new surface.\n"
+"The [code]arrays[/code] argument is an array of arrays. See [enum ArrayType] "
+"for the values used in this array. For example, [code]arrays[0][/code] is "
+"the array of vertices. That first vertex sub-array is always required; the "
+"others are optional. Adding an index array puts this function into \"index "
+"mode\" where the vertex and other arrays become the sources of data and the "
+"index array defines the vertex order. All sub-arrays must have the same "
+"length as the vertex array or be empty, except for [constant ARRAY_INDEX] if "
+"it is used.\n"
+"Adding an index array puts this function into \"index mode\" where the "
+"vertex and other arrays become the sources of data, and the index array "
+"defines the order of the vertices."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:67
+msgid "Removes all blend shapes from this [ArrayMesh]."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:74
+msgid "Removes all surfaces from this [ArrayMesh]."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:81
+msgid "Returns the number of blend shapes that the [ArrayMesh] holds."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:90
+msgid "Returns the name of the blend shape at this index."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:101
+msgid ""
+"Will perform a UV unwrap on the [ArrayMesh] to prepare the mesh for "
+"lightmapping."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:108
+msgid "Will regenerate normal maps for the [ArrayMesh]."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:117
+msgid ""
+"Returns the index of the first surface with this name held within this "
+"[ArrayMesh]. If none are found, -1 is returned."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:126
+msgid ""
+"Returns the length in indices of the index array in the requested surface "
+"(see [method add_surface_from_arrays])."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:135
+msgid ""
+"Returns the length in vertices of the vertex array in the requested surface "
+"(see [method add_surface_from_arrays])."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:144
+msgid ""
+"Returns the format mask of the requested surface (see [method "
+"add_surface_from_arrays])."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:153
+msgid "Gets the name assigned to this surface."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:162
+msgid ""
+"Returns the primitive type of the requested surface (see [method "
+"add_surface_from_arrays])."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:173
+msgid "Sets a name for a given surface."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:186
+msgid ""
+"Updates a specified region of mesh arrays on the GPU.\n"
+"[b]Warning:[/b] Only use if you know what you are doing. You can easily "
+"cause crashes by calling this function with improper arguments."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:193
+msgid "Sets the blend shape mode to one of [enum Mesh.BlendShapeMode]."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:196
+msgid ""
+"Overrides the [AABB] with one defined by user for use with frustum culling. "
+"Especially useful to avoid unexpected culling when using a shader to offset "
+"vertices."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:201
+msgid "Default value used for index_array_len when no indices are present."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:204
+msgid "Amount of weights/bone indices per vertex (always 4)."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:207
+msgid ""
+"[PackedVector3Array], [PackedVector2Array], or [Array] of vertex positions."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:210
+msgid "[PackedVector3Array] of vertex normals."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:213
+msgid ""
+"[PackedFloat32Array] of vertex tangents. Each element in groups of 4 floats, "
+"first 3 floats determine the tangent, and the last the binormal direction as "
+"-1 or 1."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:216
+msgid "[PackedColorArray] of vertex colors."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:219
+msgid "[PackedVector2Array] for UV coordinates."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:222
+msgid "[PackedVector2Array] for second UV coordinates."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:225
+msgid ""
+"[PackedFloat32Array] or [PackedInt32Array] of bone indices. Each element in "
+"groups of 4 floats."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:228
+msgid ""
+"[PackedFloat32Array] of bone weights. Each element in groups of 4 floats."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:231
+msgid ""
+"[PackedInt32Array] of integers used as indices referencing vertices, colors, "
+"normals, tangents, and textures. All of those arrays must have the same "
+"number of elements as the vertex array. No index can be beyond the vertex "
+"array size. When this index array is present, it puts the function into "
+"\"index mode,\" where the index selects the *i*'th vertex, normal, tangent, "
+"color, UV, etc. This means if you want to have different normals or colors "
+"along an edge, you have to duplicate the vertices.\n"
+"For triangles, the index array is interpreted as triples, referring to the "
+"vertices of each triangle. For lines, the index array is in pairs indicating "
+"the start and end of each line."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:235 doc/classes/Mesh.xml:210
+#: doc/classes/RenderingServer.xml:3111
+msgid "Represents the size of the [enum ArrayType] enum."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:238
+msgid "Array format will include vertices (mandatory)."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:241
+msgid "Array format will include normals."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:244
+msgid "Array format will include tangents."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:247
+msgid "Array format will include a color array."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:250
+msgid "Array format will include UVs."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:253
+msgid "Array format will include another set of UVs."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:256
+msgid "Array format will include bone indices."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:259
+msgid "Array format will include bone weights."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:262
+msgid "Index array will be used."
+msgstr ""
+
+#: doc/classes/AStar.xml:4
+msgid ""
+"An implementation of A* to find shortest paths among connected points in "
+"space."
+msgstr ""
+
+#: doc/classes/AStar.xml:7
+msgid ""
+"A* (A star) is a computer algorithm that is widely used in pathfinding and "
+"graph traversal, the process of plotting short paths among vertices "
+"(points), passing through a given set of edges (segments). It enjoys "
+"widespread use due to its performance and accuracy. Godot's A* "
+"implementation uses points in three-dimensional space and Euclidean "
+"distances by default.\n"
+"You must add points manually with [method add_point] and create segments "
+"manually with [method connect_points]. Then you can test if there is a path "
+"between two points with the [method are_points_connected] function, get a "
+"path containing indices by [method get_id_path], or one containing actual "
+"coordinates with [method get_point_path].\n"
+"It is also possible to use non-Euclidean distances. To do so, create a class "
+"that extends [code]AStar[/code] and override methods [method _compute_cost] "
+"and [method _estimate_cost]. Both take two indices and return a length, as "
+"is shown in the following example.\n"
+"[codeblock]\n"
+"class MyAStar:\n"
+" extends AStar\n"
+"\n"
+" func _compute_cost(u, v):\n"
+" return abs(u - v)\n"
+"\n"
+" func _estimate_cost(u, v):\n"
+" return min(0, abs(u - v) - 1)\n"
+"[/codeblock]\n"
+"[method _estimate_cost] should return a lower bound of the distance, i.e. "
+"[code]_estimate_cost(u, v) <= _compute_cost(u, v)[/code]. This serves as a "
+"hint to the algorithm because the custom [code]_compute_cost[/code] might be "
+"computation-heavy. If this is not the case, make [method _estimate_cost] "
+"return the same value as [method _compute_cost] to provide the algorithm "
+"with the most accurate information."
+msgstr ""
+
+#: doc/classes/AStar.xml:33
+msgid ""
+"Called when computing the cost between two connected points.\n"
+"Note that this function is hidden in the default [code]AStar[/code] class."
+msgstr ""
+
+#: doc/classes/AStar.xml:45
+msgid ""
+"Called when estimating the cost between a point and the path's ending "
+"point.\n"
+"Note that this function is hidden in the default [code]AStar[/code] class."
+msgstr ""
+
+#: doc/classes/AStar.xml:59
+msgid ""
+"Adds a new point at the given position with the given identifier. The "
+"algorithm prefers points with lower [code]weight_scale[/code] to form a "
+"path. The [code]id[/code] must be 0 or larger, and the [code]weight_scale[/"
+"code] must be 1 or larger.\n"
+"[codeblock]\n"
+"var astar = AStar.new()\n"
+"astar.add_point(1, Vector3(1, 0, 0), 4) # Adds the point (1, 0, 0) with "
+"weight_scale 4 and id 1\n"
+"[/codeblock]\n"
+"If there already exists a point for the given [code]id[/code], its position "
+"and weight scale are updated to the given values."
+msgstr ""
+
+#: doc/classes/AStar.xml:77
+msgid ""
+"Returns whether the two given points are directly connected by a segment. If "
+"[code]bidirectional[/code] is [code]false[/code], returns whether movement "
+"from [code]id[/code] to [code]to_id[/code] is possible through this segment."
+msgstr ""
+
+#: doc/classes/AStar.xml:84 doc/classes/AStar2D.xml:69
+msgid "Clears all the points and segments."
+msgstr ""
+
+#: doc/classes/AStar.xml:97
+msgid ""
+"Creates a segment between the given points. If [code]bidirectional[/code] is "
+"[code]false[/code], only movement from [code]id[/code] to [code]to_id[/code] "
+"is allowed, not the reverse direction.\n"
+"[codeblock]\n"
+"var astar = AStar.new()\n"
+"astar.add_point(1, Vector3(1, 1, 0))\n"
+"astar.add_point(2, Vector3(0, 5, 0))\n"
+"astar.connect_points(1, 2, false)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/AStar.xml:116
+msgid ""
+"Deletes the segment between the given points. If [code]bidirectional[/code] "
+"is [code]false[/code], only movement from [code]id[/code] to [code]to_id[/"
+"code] is prevented, and a unidirectional segment possibly remains."
+msgstr ""
+
+#: doc/classes/AStar.xml:123 doc/classes/AStar2D.xml:106
+msgid "Returns the next available point ID with no point associated to it."
+msgstr ""
+
+#: doc/classes/AStar.xml:134 doc/classes/AStar2D.xml:117
+msgid ""
+"Returns the ID of the closest point to [code]to_position[/code], optionally "
+"taking disabled points into account. Returns [code]-1[/code] if there are no "
+"points in the points pool.\n"
+"[b]Note:[/b] If several points are the closest to [code]to_position[/code], "
+"the one with the smallest ID will be returned, ensuring a deterministic "
+"result."
+msgstr ""
+
+#: doc/classes/AStar.xml:144
+msgid ""
+"Returns the closest position to [code]to_position[/code] that resides inside "
+"a segment between two connected points.\n"
+"[codeblock]\n"
+"var astar = AStar.new()\n"
+"astar.add_point(1, Vector3(0, 0, 0))\n"
+"astar.add_point(2, Vector3(0, 5, 0))\n"
+"astar.connect_points(1, 2)\n"
+"var res = astar.get_closest_position_in_segment(Vector3(3, 3, 0)) # Returns "
+"(0, 3, 0)\n"
+"[/codeblock]\n"
+"The result is in the segment that goes from [code]y = 0[/code] to [code]y = "
+"5[/code]. It's the closest position in the segment to the given point."
+msgstr ""
+
+#: doc/classes/AStar.xml:163
+msgid ""
+"Returns an array with the IDs of the points that form the path found by "
+"AStar between the given points. The array is ordered from the starting point "
+"to the ending point of the path.\n"
+"[codeblock]\n"
+"var astar = AStar.new()\n"
+"astar.add_point(1, Vector3(0, 0, 0))\n"
+"astar.add_point(2, Vector3(0, 1, 0), 1) # Default weight is 1\n"
+"astar.add_point(3, Vector3(1, 1, 0))\n"
+"astar.add_point(4, Vector3(2, 0, 0))\n"
+"\n"
+"astar.connect_points(1, 2, false)\n"
+"astar.connect_points(2, 3, false)\n"
+"astar.connect_points(4, 3, false)\n"
+"astar.connect_points(1, 4, false)\n"
+"\n"
+"var res = astar.get_id_path(1, 3) # Returns [1, 2, 3]\n"
+"[/codeblock]\n"
+"If you change the 2nd point's weight to 3, then the result will be [code][1, "
+"4, 3][/code] instead, because now even though the distance is longer, it's "
+"\"easier\" to get through point 4 than through point 2."
+msgstr ""
+
+#: doc/classes/AStar.xml:185 doc/classes/AStar2D.xml:168
+msgid ""
+"Returns the capacity of the structure backing the points, useful in "
+"conjunction with [code]reserve_space[/code]."
+msgstr ""
+
+#: doc/classes/AStar.xml:194
+msgid ""
+"Returns an array with the IDs of the points that form the connection with "
+"the given point.\n"
+"[codeblock]\n"
+"var astar = AStar.new()\n"
+"astar.add_point(1, Vector3(0, 0, 0))\n"
+"astar.add_point(2, Vector3(0, 1, 0))\n"
+"astar.add_point(3, Vector3(1, 1, 0))\n"
+"astar.add_point(4, Vector3(2, 0, 0))\n"
+"\n"
+"astar.connect_points(1, 2, true)\n"
+"astar.connect_points(1, 3, true)\n"
+"\n"
+"var neighbors = astar.get_point_connections(1) # Returns [2, 3]\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/AStar.xml:213 doc/classes/AStar2D.xml:196
+msgid "Returns the number of points currently in the points pool."
+msgstr ""
+
+#: doc/classes/AStar.xml:224
+msgid ""
+"Returns an array with the points that are in the path found by AStar between "
+"the given points. The array is ordered from the starting point to the ending "
+"point of the path."
+msgstr ""
+
+#: doc/classes/AStar.xml:233 doc/classes/AStar2D.xml:216
+msgid ""
+"Returns the position of the point associated with the given [code]id[/code]."
+msgstr ""
+
+#: doc/classes/AStar.xml:242 doc/classes/AStar2D.xml:225
+msgid ""
+"Returns the weight scale of the point associated with the given [code]id[/"
+"code]."
+msgstr ""
+
+#: doc/classes/AStar.xml:249 doc/classes/AStar2D.xml:232
+msgid "Returns an array of all points."
+msgstr ""
+
+#: doc/classes/AStar.xml:258 doc/classes/AStar2D.xml:241
+msgid ""
+"Returns whether a point associated with the given [code]id[/code] exists."
+msgstr ""
+
+#: doc/classes/AStar.xml:267 doc/classes/AStar2D.xml:250
+msgid ""
+"Returns whether a point is disabled or not for pathfinding. By default, all "
+"points are enabled."
+msgstr ""
+
+#: doc/classes/AStar.xml:276 doc/classes/AStar2D.xml:259
+msgid ""
+"Removes the point associated with the given [code]id[/code] from the points "
+"pool."
+msgstr ""
+
+#: doc/classes/AStar.xml:285 doc/classes/AStar2D.xml:268
+msgid ""
+"Reserves space internally for [code]num_nodes[/code] points, useful if "
+"you're adding a known large number of points at once, for a grid for "
+"instance. New capacity must be greater or equals to old capacity."
+msgstr ""
+
+#: doc/classes/AStar.xml:296 doc/classes/AStar2D.xml:279
+msgid ""
+"Disables or enables the specified point for pathfinding. Useful for making a "
+"temporary obstacle."
+msgstr ""
+
+#: doc/classes/AStar.xml:307 doc/classes/AStar2D.xml:290
+msgid ""
+"Sets the [code]position[/code] for the point with the given [code]id[/code]."
+msgstr ""
+
+#: doc/classes/AStar.xml:318 doc/classes/AStar2D.xml:301
+msgid ""
+"Sets the [code]weight_scale[/code] for the point with the given [code]id[/"
+"code]."
+msgstr ""
+
+#: doc/classes/AStar2D.xml:4
+msgid "AStar class representation that uses 2D vectors as edges."
+msgstr ""
+
+#: doc/classes/AStar2D.xml:7
+msgid ""
+"This is a wrapper for the [AStar] class which uses 2D vectors instead of 3D "
+"vectors."
+msgstr ""
+
+#: doc/classes/AStar2D.xml:20
+msgid ""
+"Called when computing the cost between two connected points.\n"
+"Note that this function is hidden in the default [code]AStar2D[/code] class."
+msgstr ""
+
+#: doc/classes/AStar2D.xml:32
+msgid ""
+"Called when estimating the cost between a point and the path's ending "
+"point.\n"
+"Note that this function is hidden in the default [code]AStar2D[/code] class."
+msgstr ""
+
+#: doc/classes/AStar2D.xml:46
+msgid ""
+"Adds a new point at the given position with the given identifier. The "
+"algorithm prefers points with lower [code]weight_scale[/code] to form a "
+"path. The [code]id[/code] must be 0 or larger, and the [code]weight_scale[/"
+"code] must be 1 or larger.\n"
+"[codeblock]\n"
+"var astar = AStar2D.new()\n"
+"astar.add_point(1, Vector2(1, 0), 4) # Adds the point (1, 0) with "
+"weight_scale 4 and id 1\n"
+"[/codeblock]\n"
+"If there already exists a point for the given [code]id[/code], its position "
+"and weight scale are updated to the given values."
+msgstr ""
+
+#: doc/classes/AStar2D.xml:62
+msgid "Returns whether there is a connection/segment between the given points."
+msgstr ""
+
+#: doc/classes/AStar2D.xml:82
+msgid ""
+"Creates a segment between the given points. If [code]bidirectional[/code] is "
+"[code]false[/code], only movement from [code]id[/code] to [code]to_id[/code] "
+"is allowed, not the reverse direction.\n"
+"[codeblock]\n"
+"var astar = AStar2D.new()\n"
+"astar.add_point(1, Vector2(1, 1))\n"
+"astar.add_point(2, Vector2(0, 5))\n"
+"astar.connect_points(1, 2, false)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/AStar2D.xml:99
+msgid "Deletes the segment between the given points."
+msgstr ""
+
+#: doc/classes/AStar2D.xml:127
+msgid ""
+"Returns the closest position to [code]to_position[/code] that resides inside "
+"a segment between two connected points.\n"
+"[codeblock]\n"
+"var astar = AStar2D.new()\n"
+"astar.add_point(1, Vector2(0, 0))\n"
+"astar.add_point(2, Vector2(0, 5))\n"
+"astar.connect_points(1, 2)\n"
+"var res = astar.get_closest_position_in_segment(Vector2(3, 3)) # Returns (0, "
+"3)\n"
+"[/codeblock]\n"
+"The result is in the segment that goes from [code]y = 0[/code] to [code]y = "
+"5[/code]. It's the closest position in the segment to the given point."
+msgstr ""
+
+#: doc/classes/AStar2D.xml:146
+msgid ""
+"Returns an array with the IDs of the points that form the path found by "
+"AStar2D between the given points. The array is ordered from the starting "
+"point to the ending point of the path.\n"
+"[codeblock]\n"
+"var astar = AStar2D.new()\n"
+"astar.add_point(1, Vector2(0, 0))\n"
+"astar.add_point(2, Vector2(0, 1), 1) # Default weight is 1\n"
+"astar.add_point(3, Vector2(1, 1))\n"
+"astar.add_point(4, Vector2(2, 0))\n"
+"\n"
+"astar.connect_points(1, 2, false)\n"
+"astar.connect_points(2, 3, false)\n"
+"astar.connect_points(4, 3, false)\n"
+"astar.connect_points(1, 4, false)\n"
+"\n"
+"var res = astar.get_id_path(1, 3) # Returns [1, 2, 3]\n"
+"[/codeblock]\n"
+"If you change the 2nd point's weight to 3, then the result will be [code][1, "
+"4, 3][/code] instead, because now even though the distance is longer, it's "
+"\"easier\" to get through point 4 than through point 2."
+msgstr ""
+
+#: doc/classes/AStar2D.xml:177
+msgid ""
+"Returns an array with the IDs of the points that form the connection with "
+"the given point.\n"
+"[codeblock]\n"
+"var astar = AStar2D.new()\n"
+"astar.add_point(1, Vector2(0, 0))\n"
+"astar.add_point(2, Vector2(0, 1))\n"
+"astar.add_point(3, Vector2(1, 1))\n"
+"astar.add_point(4, Vector2(2, 0))\n"
+"\n"
+"astar.connect_points(1, 2, true)\n"
+"astar.connect_points(1, 3, true)\n"
+"\n"
+"var neighbors = astar.get_point_connections(1) # Returns [2, 3]\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/AStar2D.xml:207
+msgid ""
+"Returns an array with the points that are in the path found by AStar2D "
+"between the given points. The array is ordered from the starting point to "
+"the ending point of the path."
+msgstr ""
+
+#: doc/classes/AtlasTexture.xml:4
+msgid ""
+"Packs multiple small textures in a single, bigger one. Helps to optimize "
+"video memory costs and render calls."
+msgstr ""
+
+#: doc/classes/AtlasTexture.xml:7
+msgid ""
+"[Texture2D] resource aimed at managing big textures files that pack multiple "
+"smaller textures. Consists of a [Texture2D], a margin that defines the "
+"border width, and a region that defines the actual area of the AtlasTexture."
+msgstr ""
+
+#: doc/classes/AtlasTexture.xml:15
+msgid "The texture that contains the atlas. Can be any [Texture2D] subtype."
+msgstr ""
+
+#: doc/classes/AtlasTexture.xml:18
+msgid ""
+"If [code]true[/code], clips the area outside of the region to avoid bleeding "
+"of the surrounding texture pixels."
+msgstr ""
+
+#: doc/classes/AtlasTexture.xml:21
+msgid ""
+"The margin around the region. The [Rect2]'s [member Rect2.size] parameter "
+"(\"w\" and \"h\" in the editor) resizes the texture so it fits within the "
+"margin."
+msgstr ""
+
+#: doc/classes/AtlasTexture.xml:24
+msgid "The AtlasTexture's used region."
+msgstr ""
+
+#: doc/classes/AudioBusLayout.xml:4
+msgid "Stores information about the audio buses."
+msgstr ""
+
+#: doc/classes/AudioBusLayout.xml:7
+msgid ""
+"Stores position, muting, solo, bypass, effects, effect position, volume, and "
+"the connections between buses. See [AudioServer] for usage."
+msgstr ""
+
+#: doc/classes/AudioEffect.xml:4
+msgid "Audio effect for audio."
+msgstr ""
+
+#: doc/classes/AudioEffect.xml:7
+msgid ""
+"Base resource for audio bus. Applies an audio effect on the bus that the "
+"resource is applied on."
+msgstr ""
+
+#: doc/classes/AudioEffectAmplify.xml:4
+msgid ""
+"Adds an amplifying audio effect to an audio bus.\n"
+"Increases or decreases the volume of the selected audio bus."
+msgstr ""
+
+#: doc/classes/AudioEffectAmplify.xml:8
+msgid "Increases or decreases the volume being routed through the audio bus."
+msgstr ""
+
+#: doc/classes/AudioEffectAmplify.xml:16
+msgid ""
+"Amount of amplification in decibels. Positive values make the sound louder, "
+"negative values make it quieter. Value can range from -80 to 24."
+msgstr ""
+
+#: doc/classes/AudioEffectBandLimitFilter.xml:4
+msgid "Adds a band limit filter to the audio bus."
+msgstr ""
+
+#: doc/classes/AudioEffectBandLimitFilter.xml:7
+msgid ""
+"Limits the frequencies in a range around the [member AudioEffectFilter."
+"cutoff_hz] and allows frequencies outside of this range to pass."
+msgstr ""
+
+#: doc/classes/AudioEffectBandPassFilter.xml:4
+msgid "Adds a band pass filter to the audio bus."
+msgstr ""
+
+#: doc/classes/AudioEffectBandPassFilter.xml:7
+msgid ""
+"Attenuates the frequencies inside of a range around the [member "
+"AudioEffectFilter.cutoff_hz] and cuts frequencies outside of this band."
+msgstr ""
+
+#: doc/classes/AudioEffectChorus.xml:4
+msgid "Adds a chorus audio effect."
+msgstr ""
+
+#: doc/classes/AudioEffectChorus.xml:7
+msgid ""
+"Adds a chorus audio effect. The effect applies a filter with voices to "
+"duplicate the audio source and manipulate it through the filter."
+msgstr ""
+
+#: doc/classes/AudioEffectChorus.xml:123
+msgid "The effect's raw signal."
+msgstr ""
+
+#: doc/classes/AudioEffectChorus.xml:126 doc/classes/AudioEffectChorus.xml:144
+#: doc/classes/AudioEffectChorus.xml:162 doc/classes/AudioEffectChorus.xml:180
+msgid "The voice's cutoff frequency."
+msgstr ""
+
+#: doc/classes/AudioEffectChorus.xml:129 doc/classes/AudioEffectChorus.xml:147
+#: doc/classes/AudioEffectChorus.xml:165 doc/classes/AudioEffectChorus.xml:183
+msgid "The voice's signal delay."
+msgstr ""
+
+#: doc/classes/AudioEffectChorus.xml:132 doc/classes/AudioEffectChorus.xml:150
+#: doc/classes/AudioEffectChorus.xml:168 doc/classes/AudioEffectChorus.xml:186
+msgid "The voice filter's depth."
+msgstr ""
+
+#: doc/classes/AudioEffectChorus.xml:135 doc/classes/AudioEffectChorus.xml:153
+#: doc/classes/AudioEffectChorus.xml:171 doc/classes/AudioEffectChorus.xml:189
+msgid "The voice's volume."
+msgstr ""
+
+#: doc/classes/AudioEffectChorus.xml:138 doc/classes/AudioEffectChorus.xml:156
+#: doc/classes/AudioEffectChorus.xml:174 doc/classes/AudioEffectChorus.xml:192
+msgid "The voice's pan level."
+msgstr ""
+
+#: doc/classes/AudioEffectChorus.xml:141 doc/classes/AudioEffectChorus.xml:159
+#: doc/classes/AudioEffectChorus.xml:177 doc/classes/AudioEffectChorus.xml:195
+msgid "The voice's filter rate."
+msgstr ""
+
+#: doc/classes/AudioEffectChorus.xml:198
+msgid "The amount of voices in the effect."
+msgstr ""
+
+#: doc/classes/AudioEffectChorus.xml:201
+msgid "The effect's processed signal."
+msgstr ""
+
+#: doc/classes/AudioEffectCompressor.xml:4
+msgid ""
+"Adds a compressor audio effect to an audio bus.\n"
+"Reduces sounds that exceed a certain threshold level, smooths out the "
+"dynamics and increases the overall volume."
+msgstr ""
+
+#: doc/classes/AudioEffectCompressor.xml:8
+msgid ""
+"Dynamic range compressor reduces the level of the sound when the amplitude "
+"goes over a certain threshold in Decibels. One of the main uses of a "
+"compressor is to increase the dynamic range by clipping as little as "
+"possible (when sound goes over 0dB).\n"
+"Compressor has many uses in the mix:\n"
+"- In the Master bus to compress the whole output (although an "
+"[AudioEffectLimiter] is probably better).\n"
+"- In voice channels to ensure they sound as balanced as possible.\n"
+"- Sidechained. This can reduce the sound level sidechained with another "
+"audio bus for threshold detection. This technique is common in video game "
+"mixing to the level of music and SFX while voices are being heard.\n"
+"- Accentuates transients by using a wider attack, making effects sound more "
+"punchy."
+msgstr ""
+
+#: doc/classes/AudioEffectCompressor.xml:21
+msgid ""
+"Compressor's reaction time when the signal exceeds the threshold, in "
+"microseconds. Value can range from 20 to 2000."
+msgstr ""
+
+#: doc/classes/AudioEffectCompressor.xml:24
+msgid "Gain applied to the output signal."
+msgstr ""
+
+#: doc/classes/AudioEffectCompressor.xml:27
+msgid ""
+"Balance between original signal and effect signal. Value can range from 0 "
+"(totally dry) to 1 (totally wet)."
+msgstr ""
+
+#: doc/classes/AudioEffectCompressor.xml:30
+msgid ""
+"Amount of compression applied to the audio once it passes the threshold "
+"level. The higher the ratio, the more the loud parts of the audio will be "
+"compressed. Value can range from 1 to 48."
+msgstr ""
+
+#: doc/classes/AudioEffectCompressor.xml:33
+msgid ""
+"Compressor's delay time to stop reducing the signal after the signal level "
+"falls below the threshold, in milliseconds. Value can range from 20 to 2000."
+msgstr ""
+
+#: doc/classes/AudioEffectCompressor.xml:36
+msgid "Reduce the sound level using another audio bus for threshold detection."
+msgstr ""
+
+#: doc/classes/AudioEffectCompressor.xml:39
+msgid ""
+"The level above which compression is applied to the audio. Value can range "
+"from -60 to 0."
+msgstr ""
+
+#: doc/classes/AudioEffectDelay.xml:4
+msgid ""
+"Adds a delay audio effect to an audio bus. Plays input signal back after a "
+"period of time.\n"
+"Two tap delay and feedback options."
+msgstr ""
+
+#: doc/classes/AudioEffectDelay.xml:8
+msgid ""
+"Plays input signal back after a period of time. The delayed signal may be "
+"played back multiple times to create the sound of a repeating, decaying "
+"echo. Delay effects range from a subtle echo effect to a pronounced blending "
+"of previous sounds with new sounds."
+msgstr ""
+
+#: doc/classes/AudioEffectDelay.xml:16
+msgid ""
+"Output percent of original sound. At 0, only delayed sounds are output. "
+"Value can range from 0 to 1."
+msgstr ""
+
+#: doc/classes/AudioEffectDelay.xml:19
+msgid "If [code]true[/code], feedback is enabled."
+msgstr ""
+
+#: doc/classes/AudioEffectDelay.xml:22
+msgid "Feedback delay time in milliseconds."
+msgstr ""
+
+#: doc/classes/AudioEffectDelay.xml:25 doc/classes/AudioEffectDelay.xml:37
+msgid "Sound level for [code]tap1[/code]."
+msgstr ""
+
+#: doc/classes/AudioEffectDelay.xml:28
+msgid ""
+"Low-pass filter for feedback, in Hz. Frequencies below this value are "
+"filtered out of the source signal."
+msgstr ""
+
+#: doc/classes/AudioEffectDelay.xml:31
+msgid "If [code]true[/code], [code]tap1[/code] will be enabled."
+msgstr ""
+
+#: doc/classes/AudioEffectDelay.xml:34
+msgid "[code]tap1[/code] delay time in milliseconds."
+msgstr ""
+
+#: doc/classes/AudioEffectDelay.xml:40
+msgid ""
+"Pan position for [code]tap1[/code]. Value can range from -1 (fully left) to "
+"1 (fully right)."
+msgstr ""
+
+#: doc/classes/AudioEffectDelay.xml:43
+msgid "If [code]true[/code], [code]tap2[/code] will be enabled."
+msgstr ""
+
+#: doc/classes/AudioEffectDelay.xml:46
+msgid "[b]Tap2[/b] delay time in milliseconds."
+msgstr ""
+
+#: doc/classes/AudioEffectDelay.xml:49
+msgid "Sound level for [code]tap2[/code]."
+msgstr ""
+
+#: doc/classes/AudioEffectDelay.xml:52
+msgid ""
+"Pan position for [code]tap2[/code]. Value can range from -1 (fully left) to "
+"1 (fully right)."
+msgstr ""
+
+#: doc/classes/AudioEffectDistortion.xml:4
+msgid ""
+"Adds a distortion audio effect to an Audio bus.\n"
+"Modify the sound to make it dirty."
+msgstr ""
+
+#: doc/classes/AudioEffectDistortion.xml:8
+msgid ""
+"Modify the sound and make it dirty. Different types are available: clip, "
+"tan, lo-fi (bit crushing), overdrive, or waveshape.\n"
+"By distorting the waveform the frequency content change, which will often "
+"make the sound \"crunchy\" or \"abrasive\". For games, it can simulate sound "
+"coming from some saturated device or speaker very efficiently."
+msgstr ""
+
+#: doc/classes/AudioEffectDistortion.xml:17
+msgid "Distortion power. Value can range from 0 to 1."
+msgstr ""
+
+#: doc/classes/AudioEffectDistortion.xml:20
+msgid ""
+"High-pass filter, in Hz. Frequencies higher than this value will not be "
+"affected by the distortion. Value can range from 1 to 20000."
+msgstr ""
+
+#: doc/classes/AudioEffectDistortion.xml:23
+msgid "Distortion type."
+msgstr ""
+
+#: doc/classes/AudioEffectDistortion.xml:26
+msgid ""
+"Increases or decreases the volume after the effect. Value can range from -80 "
+"to 24."
+msgstr ""
+
+#: doc/classes/AudioEffectDistortion.xml:29
+msgid ""
+"Increases or decreases the volume before the effect. Value can range from "
+"-60 to 60."
+msgstr ""
+
+#: doc/classes/AudioEffectDistortion.xml:34
+msgid ""
+"Digital distortion effect which cuts off peaks at the top and bottom of the "
+"waveform."
+msgstr ""
+
+#: doc/classes/AudioEffectDistortion.xml:39
+msgid ""
+"Low-resolution digital distortion effect. You can use it to emulate the "
+"sound of early digital audio devices."
+msgstr ""
+
+#: doc/classes/AudioEffectDistortion.xml:42
+msgid ""
+"Emulates the warm distortion produced by a field effect transistor, which is "
+"commonly used in solid-state musical instrument amplifiers."
+msgstr ""
+
+#: doc/classes/AudioEffectDistortion.xml:45
+msgid ""
+"Waveshaper distortions are used mainly by electronic musicians to achieve an "
+"extra-abrasive sound."
+msgstr ""
+
+#: doc/classes/AudioEffectEQ.xml:4
+msgid ""
+"Base class for audio equalizers. Gives you control over frequencies.\n"
+"Use it to create a custom equalizer if [AudioEffectEQ6], [AudioEffectEQ10] "
+"or [AudioEffectEQ21] don't fit your needs."
+msgstr ""
+
+#: doc/classes/AudioEffectEQ.xml:8
+msgid ""
+"AudioEffectEQ gives you control over frequencies. Use it to compensate for "
+"existing deficiencies in audio. AudioEffectEQs are useful on the Master bus "
+"to completely master a mix and give it more character. They are also useful "
+"when a game is run on a mobile device, to adjust the mix to that kind of "
+"speakers (it can be added but disabled when headphones are plugged)."
+msgstr ""
+
+#: doc/classes/AudioEffectEQ.xml:17
+msgid "Returns the number of bands of the equalizer."
+msgstr ""
+
+#: doc/classes/AudioEffectEQ.xml:26
+msgid "Returns the band's gain at the specified index, in dB."
+msgstr ""
+
+#: doc/classes/AudioEffectEQ.xml:37
+msgid "Sets band's gain at the specified index, in dB."
+msgstr ""
+
+#: doc/classes/AudioEffectEQ10.xml:4
+msgid ""
+"Adds a 10-band equalizer audio effect to an Audio bus. Gives you control "
+"over frequencies from 31 Hz to 16000 Hz.\n"
+"Each frequency can be modulated between -60/+24 dB."
+msgstr ""
+
+#: doc/classes/AudioEffectEQ10.xml:8
+msgid ""
+"Frequency bands:\n"
+"Band 1: 31 Hz\n"
+"Band 2: 62 Hz\n"
+"Band 3: 125 Hz\n"
+"Band 4: 250 Hz\n"
+"Band 5: 500 Hz\n"
+"Band 6: 1000 Hz\n"
+"Band 7: 2000 Hz\n"
+"Band 8: 4000 Hz\n"
+"Band 9: 8000 Hz\n"
+"Band 10: 16000 Hz\n"
+"See also [AudioEffectEQ], [AudioEffectEQ6], [AudioEffectEQ21]."
+msgstr ""
+
+#: doc/classes/AudioEffectEQ21.xml:4
+msgid ""
+"Adds a 21-band equalizer audio effect to an Audio bus. Gives you control "
+"over frequencies from 22 Hz to 22000 Hz.\n"
+"Each frequency can be modulated between -60/+24 dB."
+msgstr ""
+
+#: doc/classes/AudioEffectEQ21.xml:8
+msgid ""
+"Frequency bands:\n"
+"Band 1: 22 Hz\n"
+"Band 2: 32 Hz\n"
+"Band 3: 44 Hz\n"
+"Band 4: 63 Hz\n"
+"Band 5: 90 Hz\n"
+"Band 6: 125 Hz\n"
+"Band 7: 175 Hz\n"
+"Band 8: 250 Hz\n"
+"Band 9: 350 Hz\n"
+"Band 10: 500 Hz\n"
+"Band 11: 700 Hz\n"
+"Band 12: 1000 Hz\n"
+"Band 13: 1400 Hz\n"
+"Band 14: 2000 Hz\n"
+"Band 15: 2800 Hz\n"
+"Band 16: 4000 Hz\n"
+"Band 17: 5600 Hz\n"
+"Band 18: 8000 Hz\n"
+"Band 19: 11000 Hz\n"
+"Band 20: 16000 Hz\n"
+"Band 21: 22000 Hz\n"
+"See also [AudioEffectEQ], [AudioEffectEQ6], [AudioEffectEQ10]."
+msgstr ""
+
+#: doc/classes/AudioEffectEQ6.xml:4
+msgid ""
+"Adds a 6-band equalizer audio effect to an Audio bus. Gives you control over "
+"frequencies from 32 Hz to 10000 Hz.\n"
+"Each frequency can be modulated between -60/+24 dB."
+msgstr ""
+
+#: doc/classes/AudioEffectEQ6.xml:8
+msgid ""
+"Frequency bands:\n"
+"Band 1: 32 Hz\n"
+"Band 2: 100 Hz\n"
+"Band 3: 320 Hz\n"
+"Band 4: 1000 Hz\n"
+"Band 5: 3200 Hz\n"
+"Band 6: 10000 Hz\n"
+"See also [AudioEffectEQ], [AudioEffectEQ10], [AudioEffectEQ21]."
+msgstr ""
+
+#: doc/classes/AudioEffectFilter.xml:4
+msgid "Adds a filter to the audio bus."
+msgstr ""
+
+#: doc/classes/AudioEffectFilter.xml:7
+msgid "Allows frequencies other than the [member cutoff_hz] to pass."
+msgstr ""
+
+#: doc/classes/AudioEffectFilter.xml:15
+msgid "Threshold frequency for the filter, in Hz."
+msgstr ""
+
+#: doc/classes/AudioEffectFilter.xml:20
+msgid "Gain amount of the frequencies after the filter."
+msgstr ""
+
+#: doc/classes/AudioEffectFilter.xml:23
+msgid "Amount of boost in the overtones near the cutoff frequency."
+msgstr ""
+
+#: doc/classes/AudioEffectHighPassFilter.xml:4
+msgid "Adds a high-pass filter to the Audio Bus."
+msgstr ""
+
+#: doc/classes/AudioEffectHighPassFilter.xml:7
+msgid ""
+"Cuts frequencies lower than the [member AudioEffectFilter.cutoff_hz] and "
+"allows higher frequencies to pass."
+msgstr ""
+
+#: doc/classes/AudioEffectLimiter.xml:4
+msgid "Adds a soft-clip limiter audio effect to an Audio bus."
+msgstr ""
+
+#: doc/classes/AudioEffectLimiter.xml:7
+msgid ""
+"A limiter is similar to a compressor, but it's less flexible and designed to "
+"disallow sound going over a given dB threshold. Adding one in the Master bus "
+"is always recommended to reduce the effects of clipping.\n"
+"Soft clipping starts to reduce the peaks a little below the threshold level "
+"and progressively increases its effect as the input level increases such "
+"that the threshold is never exceeded."
+msgstr ""
+
+#: doc/classes/AudioEffectLimiter.xml:16
+msgid ""
+"The waveform's maximum allowed value, in decibels. Value can range from -20 "
+"to -0.1."
+msgstr ""
+
+#: doc/classes/AudioEffectLimiter.xml:19
+msgid ""
+"Applies a gain to the limited waves, in decibels. Value can range from 0 to "
+"6."
+msgstr ""
+
+#: doc/classes/AudioEffectLimiter.xml:24
+msgid ""
+"Threshold from which the limiter begins to be active, in decibels. Value can "
+"range from -30 to 0."
+msgstr ""
+
+#: doc/classes/AudioEffectLowPassFilter.xml:4
+msgid "Adds a low-pass filter to the Audio bus."
+msgstr ""
+
+#: doc/classes/AudioEffectLowPassFilter.xml:7
+msgid ""
+"Cuts frequencies higher than the [member AudioEffectFilter.cutoff_hz] and "
+"allows lower frequencies to pass."
+msgstr ""
+
+#: doc/classes/AudioEffectNotchFilter.xml:4
+msgid "Adds a notch filter to the Audio bus."
+msgstr ""
+
+#: doc/classes/AudioEffectNotchFilter.xml:7
+msgid ""
+"Attenuates frequencies in a narrow band around the [member AudioEffectFilter."
+"cutoff_hz] and cuts frequencies outside of this range."
+msgstr ""
+
+#: doc/classes/AudioEffectPanner.xml:4
+msgid "Adds a panner audio effect to an Audio bus. Pans sound left or right."
+msgstr ""
+
+#: doc/classes/AudioEffectPanner.xml:7
+msgid ""
+"Determines how much of an audio signal is sent to the left and right buses."
+msgstr ""
+
+#: doc/classes/AudioEffectPanner.xml:15
+msgid "Pan position. Value can range from -1 (fully left) to 1 (fully right)."
+msgstr ""
+
+#: doc/classes/AudioEffectPhaser.xml:4
+msgid ""
+"Adds a phaser audio effect to an Audio bus.\n"
+"Combines the original signal with a copy that is slightly out of phase with "
+"the original."
+msgstr ""
+
+#: doc/classes/AudioEffectPhaser.xml:8
+msgid ""
+"Combines phase-shifted signals with the original signal. The movement of the "
+"phase-shifted signals is controlled using a low-frequency oscillator."
+msgstr ""
+
+#: doc/classes/AudioEffectPhaser.xml:16
+msgid ""
+"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."
+msgstr ""
+
+#: doc/classes/AudioEffectPhaser.xml:19
+msgid "Output percent of modified sound. Value can range from 0.1 to 0.9."
+msgstr ""
+
+#: doc/classes/AudioEffectPhaser.xml:22
+msgid ""
+"Determines the maximum frequency affected by the LFO modulations, in Hz. "
+"Value can range from 10 to 10000."
+msgstr ""
+
+#: doc/classes/AudioEffectPhaser.xml:25
+msgid ""
+"Determines the minimum frequency affected by the LFO modulations, in Hz. "
+"Value can range from 10 to 10000."
+msgstr ""
+
+#: doc/classes/AudioEffectPhaser.xml:28
+msgid ""
+"Adjusts the rate in Hz at which the effect sweeps up and down across the "
+"frequency range."
+msgstr ""
+
+#: doc/classes/AudioEffectPitchShift.xml:4
+msgid ""
+"Adds a pitch-shifting audio effect to an Audio bus.\n"
+"Raises or lowers the pitch of original sound."
+msgstr ""
+
+#: doc/classes/AudioEffectPitchShift.xml:8
+msgid ""
+"Allows modulation of pitch independently of tempo. All frequencies can be "
+"increased/decreased with minimal effect on transients."
+msgstr ""
+
+#: doc/classes/AudioEffectPitchShift.xml:20
+msgid "Pitch value. Can range from 0 (-1 octave) to 16 (+16 octaves)."
+msgstr ""
+
+#: doc/classes/AudioEffectPitchShift.xml:35
+#: doc/classes/AudioEffectSpectrumAnalyzer.xml:31
+msgid "Represents the size of the [enum FFT_Size] enum."
+msgstr ""
+
+#: doc/classes/AudioEffectRecord.xml:4
+msgid "Audio effect used for recording sound from a microphone."
+msgstr ""
+
+#: doc/classes/AudioEffectRecord.xml:7
+msgid ""
+"Allows the user to record sound from a microphone. It sets and gets the "
+"format in which the audio file will be recorded (8-bit, 16-bit, or "
+"compressed). It checks whether or not the recording is active, and if it is, "
+"records the sound. It then returns the recorded sample."
+msgstr ""
+
+#: doc/classes/AudioEffectRecord.xml:10
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/audio/"
+"recording_with_microphone.html"
+msgstr ""
+
+#: doc/classes/AudioEffectRecord.xml:17
+msgid "Returns the recorded sample."
+msgstr ""
+
+#: doc/classes/AudioEffectRecord.xml:24
+msgid "Returns whether the recording is active or not."
+msgstr ""
+
+#: doc/classes/AudioEffectRecord.xml:33
+msgid ""
+"If [code]true[/code], the sound will be recorded. Note that restarting the "
+"recording will remove the previously recorded sample."
+msgstr ""
+
+#: doc/classes/AudioEffectRecord.xml:39
+msgid ""
+"Specifies the format in which the sample will be recorded. See [enum "
+"AudioStreamSample.Format] for available formats."
+msgstr ""
+
+#: doc/classes/AudioEffectReverb.xml:4
+msgid ""
+"Adds a reverberation audio effect to an Audio bus.\n"
+"Simulates the sound of acoustic environments such as rooms, concert halls, "
+"caverns, or an open spaces."
+msgstr ""
+
+#: doc/classes/AudioEffectReverb.xml:8
+msgid ""
+"Simulates rooms of different sizes. Its parameters can be adjusted to "
+"simulate the sound of a specific room."
+msgstr ""
+
+#: doc/classes/AudioEffectReverb.xml:16
+msgid ""
+"Defines how reflective the imaginary room's walls are. Value can range from "
+"0 to 1."
+msgstr ""
+
+#: doc/classes/AudioEffectReverb.xml:19
+msgid ""
+"Output percent of original sound. At 0, only modified sound is outputted. "
+"Value can range from 0 to 1."
+msgstr ""
+
+#: doc/classes/AudioEffectReverb.xml:22
+msgid ""
+"High-pass filter passes signals with a frequency higher than a certain "
+"cutoff frequency and attenuates signals with frequencies lower than the "
+"cutoff frequency. Value can range from 0 to 1."
+msgstr ""
+
+#: doc/classes/AudioEffectReverb.xml:25
+msgid "Output percent of predelay. Value can range from 0 to 1."
+msgstr ""
+
+#: doc/classes/AudioEffectReverb.xml:28
+msgid ""
+"Time between the original signal and the early reflections of the reverb "
+"signal, in milliseconds."
+msgstr ""
+
+#: doc/classes/AudioEffectReverb.xml:31
+msgid ""
+"Dimensions of simulated room. Bigger means more echoes. Value can range from "
+"0 to 1."
+msgstr ""
+
+#: doc/classes/AudioEffectReverb.xml:34
+msgid ""
+"Widens or narrows the stereo image of the reverb tail. 1 means fully widens. "
+"Value can range from 0 to 1."
+msgstr ""
+
+#: doc/classes/AudioEffectReverb.xml:37
+msgid ""
+"Output percent of modified sound. At 0, only original sound is outputted. "
+"Value can range from 0 to 1."
+msgstr ""
+
+#: doc/classes/AudioEffectSpectrumAnalyzerInstance.xml:25
+msgid "Use the average value as magnitude."
+msgstr ""
+
+#: doc/classes/AudioEffectSpectrumAnalyzerInstance.xml:28
+msgid "Use the maximum value as magnitude."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:4
+msgid "Server interface for low-level audio access."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:7
+msgid ""
+"[AudioServer] is a low-level server interface for audio access. It is in "
+"charge of creating sample data (playable audio) as well as its playback via "
+"a voice interface."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:10
+msgid "https://docs.godotengine.org/en/latest/tutorials/audio/audio_buses.html"
+msgstr ""
+
+#: doc/classes/AudioServer.xml:19
+msgid "Adds a bus at [code]at_position[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:32
+msgid ""
+"Adds an [AudioEffect] effect to the bus [code]bus_idx[/code] at "
+"[code]at_position[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:39
+msgid ""
+"Name of the current device for audio input (see [method "
+"capture_get_device_list])."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:46
+msgid "Returns the names of all audio input devices detected on the system."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:55
+msgid "Sets which audio input device is used for audio capture."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:62
+msgid "Generates an [AudioBusLayout] using the available buses and effects."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:71
+msgid ""
+"Returns the amount of channels of the bus at index [code]bus_idx[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:82
+msgid ""
+"Returns the [AudioEffect] at position [code]effect_idx[/code] in bus "
+"[code]bus_idx[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:91
+msgid "Returns the number of effects on the bus at [code]bus_idx[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:104
+msgid ""
+"Returns the [AudioEffectInstance] assigned to the given bus and effect "
+"indices (and optionally channel)."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:113
+msgid "Returns the index of the bus with the name [code]bus_name[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:122
+msgid "Returns the name of the bus with the index [code]bus_idx[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:133
+msgid ""
+"Returns the peak volume of the left speaker at bus index [code]bus_idx[/"
+"code] and channel index [code]channel[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:144
+msgid ""
+"Returns the peak volume of the right speaker at bus index [code]bus_idx[/"
+"code] and channel index [code]channel[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:153
+msgid ""
+"Returns the name of the bus that the bus at index [code]bus_idx[/code] sends "
+"to."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:162
+msgid "Returns the volume of the bus at index [code]bus_idx[/code] in dB."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:169
+msgid "Returns the names of all audio devices detected on the system."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:176
+msgid "Returns the sample rate at the output of the [AudioServer]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:183
+msgid "Returns the audio driver's output latency."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:190
+msgid "Returns the speaker configuration."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:197
+msgid "Returns the relative time since the last mix occurred."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:204
+msgid "Returns the relative time until the next mix occurs."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:213 doc/classes/AudioServer.xml:292
+msgid ""
+"If [code]true[/code], the bus at index [code]bus_idx[/code] is bypassing "
+"effects."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:224 doc/classes/AudioServer.xml:305
+msgid ""
+"If [code]true[/code], the effect at index [code]effect_idx[/code] on the bus "
+"at index [code]bus_idx[/code] is enabled."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:233 doc/classes/AudioServer.xml:325
+msgid "If [code]true[/code], the bus at index [code]bus_idx[/code] is muted."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:242 doc/classes/AudioServer.xml:358
+msgid ""
+"If [code]true[/code], the bus at index [code]bus_idx[/code] is in solo mode."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:249
+msgid ""
+"Locks the audio driver's main loop.\n"
+"[b]Note:[/b] Remember to unlock it afterwards."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:261
+msgid ""
+"Moves the bus from index [code]index[/code] to index [code]to_index[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:270
+msgid "Removes the bus at index [code]index[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:281
+msgid ""
+"Removes the effect at index [code]effect_idx[/code] from the bus at index "
+"[code]bus_idx[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:314
+msgid "Overwrites the currently used [AudioBusLayout]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:336
+msgid ""
+"Sets the name of the bus at index [code]bus_idx[/code] to [code]name[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:347
+msgid ""
+"Connects the output of the bus at [code]bus_idx[/code] to the bus named "
+"[code]send[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:369
+msgid ""
+"Sets the volume of the bus at index [code]bus_idx[/code] to [code]volume_db[/"
+"code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:382
+msgid "Swaps the position of two effects in bus [code]bus_idx[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:389
+msgid ""
+"Unlocks the audio driver's main loop. (After locking it, you should always "
+"unlock it.)"
+msgstr ""
+
+#: doc/classes/AudioServer.xml:395
+msgid "Number of available audio buses."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:398
+msgid ""
+"Name of the current device for audio output (see [method get_device_list])."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:401
+msgid ""
+"Scales the rate at which audio is played (i.e. setting it to [code]0.5[/"
+"code] will make the audio be played twice as fast)."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:407
+msgid "Emitted when the [AudioBusLayout] changes."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:413
+msgid "Two or fewer speakers were detected."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:416
+msgid "A 3.1 channel surround setup was detected."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:419
+msgid "A 5.1 channel surround setup was detected."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:422
+msgid "A 7.1 channel surround setup was detected."
+msgstr ""
+
+#: doc/classes/AudioStream.xml:4
+msgid "Base class for audio streams."
+msgstr ""
+
+#: doc/classes/AudioStream.xml:7
+msgid ""
+"Base class for audio streams. Audio streams are used for sound effects and "
+"music playback, and support WAV (via [AudioStreamSample]) and OGG (via "
+"[AudioStreamOGGVorbis]) file formats."
+msgstr ""
+
+#: doc/classes/AudioStream.xml:10 doc/classes/AudioStreamPlayer.xml:10
+#: doc/classes/AudioStreamPlayer2D.xml:10
+#: doc/classes/AudioStreamPlayer3D.xml:10
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/audio/audio_streams.html"
+msgstr ""
+
+#: doc/classes/AudioStream.xml:17
+msgid "Returns the length of the audio stream in seconds."
+msgstr ""
+
+#: doc/classes/AudioStreamGenerator.xml:8
+#: doc/classes/AudioStreamGeneratorPlayback.xml:8
+msgid ""
+"https://github.com/godotengine/godot-demo-projects/tree/master/audio/"
+"generator"
+msgstr ""
+
+#: modules/stb_vorbis/doc_classes/AudioStreamOGGVorbis.xml:4
+#: modules/stb_vorbis/doc_classes/AudioStreamOGGVorbis.xml:7
+msgid "OGG Vorbis audio stream driver."
+msgstr ""
+
+#: modules/stb_vorbis/doc_classes/AudioStreamOGGVorbis.xml:15
+msgid "Contains the audio data in bytes."
+msgstr ""
+
+#: modules/stb_vorbis/doc_classes/AudioStreamOGGVorbis.xml:18
+msgid ""
+"If [code]true[/code], the stream will automatically loop when it reaches the "
+"end."
+msgstr ""
+
+#: modules/stb_vorbis/doc_classes/AudioStreamOGGVorbis.xml:21
+msgid "Time in seconds at which the stream starts after being looped."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayback.xml:4
+msgid "Meta class for playing back audio."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayback.xml:7
+msgid ""
+"Can play, loop, pause a scroll through audio. See [AudioStream] and "
+"[AudioStreamOGGVorbis] for usage."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:4
+msgid "Plays back audio non-positionally."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:7
+msgid "Plays an audio stream non-positionally."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:17
+msgid "Returns the position in the [AudioStream] in seconds."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:24
+msgid ""
+"Returns the [AudioStreamPlayback] object associated with this "
+"[AudioStreamPlayer]."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:33
+msgid "Plays the audio from the given [code]from_position[/code], in seconds."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:42 doc/classes/AudioStreamPlayer2D.xml:42
+#: doc/classes/AudioStreamPlayer3D.xml:42
+msgid "Sets the position from which audio will be played, in seconds."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:49 doc/classes/AudioStreamPlayer2D.xml:49
+#: doc/classes/AudioStreamPlayer3D.xml:49
+msgid "Stops the audio."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:55 doc/classes/AudioStreamPlayer2D.xml:61
+#: doc/classes/AudioStreamPlayer3D.xml:67
+msgid "If [code]true[/code], audio plays when added to scene tree."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:58 doc/classes/AudioStreamPlayer2D.xml:64
+#: doc/classes/AudioStreamPlayer3D.xml:70
+msgid "Bus on which this audio is playing."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:61
+msgid ""
+"If the audio configuration has more than two speakers, this sets the target "
+"channels. See [enum MixTarget] constants."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:64 doc/classes/AudioStreamPlayer2D.xml:70
+#: doc/classes/AudioStreamPlayer3D.xml:94
+msgid ""
+"The pitch and the tempo of the audio, as a multiplier of the audio sample's "
+"sample rate."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:67 doc/classes/AudioStreamPlayer2D.xml:73
+#: doc/classes/AudioStreamPlayer3D.xml:97
+msgid "If [code]true[/code], audio is playing."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:70 doc/classes/AudioStreamPlayer2D.xml:76
+#: doc/classes/AudioStreamPlayer3D.xml:100
+msgid "The [AudioStream] object to be played."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:73 doc/classes/AudioStreamPlayer2D.xml:79
+#: doc/classes/AudioStreamPlayer3D.xml:103
+msgid ""
+"If [code]true[/code], the playback is paused. You can resume it by setting "
+"[code]stream_paused[/code] to [code]false[/code]."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:76
+msgid "Volume of sound, in dB."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:82 doc/classes/AudioStreamPlayer2D.xml:88
+#: doc/classes/AudioStreamPlayer3D.xml:115
+msgid "Emitted when the audio stops playing."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:88
+msgid "The audio will be played only on the first channel."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:91
+msgid "The audio will be played on all surround channels."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:94
+msgid ""
+"The audio will be played on the second channel, which is usually the center."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer2D.xml:4
+msgid "Plays audio in 2D."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer2D.xml:7
+msgid "Plays audio that dampens with distance from screen center."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer2D.xml:17
+#: doc/classes/AudioStreamPlayer3D.xml:17
+msgid "Returns the position in the [AudioStream]."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer2D.xml:24
+msgid ""
+"Returns the [AudioStreamPlayback] object associated with this "
+"[AudioStreamPlayer2D]."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer2D.xml:33
+#: doc/classes/AudioStreamPlayer3D.xml:33
+msgid ""
+"Plays the audio from the given position [code]from_position[/code], in "
+"seconds."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer2D.xml:55
+#: doc/classes/AudioStreamPlayer3D.xml:55
+msgid "Areas in which this sound plays."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer2D.xml:58
+msgid "Dampens audio over distance with this as an exponent."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer2D.xml:67
+msgid "Maximum distance from which audio is still hearable."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer2D.xml:82
+msgid "Base volume without dampening."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:4
+msgid "Plays 3D sound in 3D space."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:7
+msgid ""
+"Plays a sound effect with directed sound effects, dampens with distance if "
+"needed, generates effect of hearable position in space."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:24
+msgid ""
+"Returns the [AudioStreamPlayback] object associated with this "
+"[AudioStreamPlayer3D]."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:58
+msgid "Dampens audio above this frequency, in Hz."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:61
+msgid "Amount how much the filter affects the loudness, in dB."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:64
+msgid ""
+"Decides if audio should get quieter with distance linearly, quadratically, "
+"logarithmically, or not be affected by distance, effectively disabling "
+"attenuation."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:73
+msgid "Decides in which step the Doppler effect should be calculated."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:76
+msgid "The angle in which the audio reaches cameras undampened."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:79
+msgid ""
+"If [code]true[/code], the audio should be dampened according to the "
+"direction of the sound."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:82
+msgid ""
+"Dampens audio if camera is outside of [member emission_angle_degrees] and "
+"[member emission_angle_enabled] is set by this factor, in dB."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:85
+msgid "Sets the absolute maximum of the soundlevel, in dB."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:88
+msgid ""
+"Sets the distance from which the [member out_of_range_mode] takes effect. "
+"Has no effect if set to 0."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:91
+msgid ""
+"Decides if audio should pause when source is outside of [member "
+"max_distance] range."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:106
+msgid "Base sound level unaffected by dampening, in dB."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:109
+msgid "Factor for the attenuation effect."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:121
+msgid "Linear dampening of loudness according to distance."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:124
+msgid "Squared dampening of loudness according to distance."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:127
+msgid "Logarithmic dampening of loudness according to distance."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:130
+msgid "No dampening of loudness according to distance."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:133
+msgid "Mix this audio in, even when it's out of range."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:136
+msgid "Pause this audio when it gets out of range."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:139
+msgid "Disables doppler tracking."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:142
+msgid "Executes doppler tracking in idle step."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:145
+msgid "Executes doppler tracking in physics step."
+msgstr ""
+
+#: doc/classes/AudioStreamRandomPitch.xml:4
+msgid "Plays audio with random pitch shifting."
+msgstr ""
+
+#: doc/classes/AudioStreamRandomPitch.xml:7
+msgid "Randomly varies pitch on each start."
+msgstr ""
+
+#: doc/classes/AudioStreamRandomPitch.xml:15
+msgid "The current [AudioStream]."
+msgstr ""
+
+#: doc/classes/AudioStreamRandomPitch.xml:18
+msgid "The intensity of random pitch variation."
+msgstr ""
+
+#: doc/classes/AudioStreamSample.xml:4
+msgid "Stores audio data loaded from WAV files."
+msgstr ""
+
+#: doc/classes/AudioStreamSample.xml:7
+msgid ""
+"AudioStreamSample stores sound samples loaded from WAV files. To play the "
+"stored sound, use an [AudioStreamPlayer] (for non-positional audio) or "
+"[AudioStreamPlayer2D]/[AudioStreamPlayer3D] (for positional audio). The "
+"sound can be looped.\n"
+"This class can also be used to store dynamically-generated PCM audio data."
+msgstr ""
+
+#: doc/classes/AudioStreamSample.xml:19
+msgid ""
+"Saves the AudioStreamSample as a WAV file to [code]path[/code]. Samples with "
+"IMA ADPCM format can't be saved.\n"
+"[b]Note:[/b] A [code].wav[/code] extension is automatically appended to "
+"[code]path[/code] if it is missing."
+msgstr ""
+
+#: doc/classes/AudioStreamSample.xml:26
+msgid ""
+"Contains the audio data in bytes.\n"
+"[b]Note:[/b] This property expects signed PCM8 data. To convert unsigned "
+"PCM8 to signed PCM8, subtract 128 from each byte."
+msgstr ""
+
+#: doc/classes/AudioStreamSample.xml:30
+msgid "Audio format. See [enum Format] constants for values."
+msgstr ""
+
+#: doc/classes/AudioStreamSample.xml:33
+msgid ""
+"The loop start point (in number of samples, relative to the beginning of the "
+"sample). This information will be imported automatically from the WAV file "
+"if present."
+msgstr ""
+
+#: doc/classes/AudioStreamSample.xml:36
+msgid ""
+"The loop end point (in number of samples, relative to the beginning of the "
+"sample). This information will be imported automatically from the WAV file "
+"if present."
+msgstr ""
+
+#: doc/classes/AudioStreamSample.xml:39
+msgid ""
+"The loop mode. This information will be imported automatically from the WAV "
+"file if present. See [enum LoopMode] constants for values."
+msgstr ""
+
+#: doc/classes/AudioStreamSample.xml:42
+msgid "The sample rate for mixing this audio."
+msgstr ""
+
+#: doc/classes/AudioStreamSample.xml:45
+msgid "If [code]true[/code], audio is stereo."
+msgstr ""
+
+#: doc/classes/AudioStreamSample.xml:50
+msgid "8-bit audio codec."
+msgstr ""
+
+#: doc/classes/AudioStreamSample.xml:53
+msgid "16-bit audio codec."
+msgstr ""
+
+#: doc/classes/AudioStreamSample.xml:56
+msgid "Audio is compressed using IMA ADPCM."
+msgstr ""
+
+#: doc/classes/AudioStreamSample.xml:59
+msgid "Audio does not loop."
+msgstr ""
+
+#: doc/classes/AudioStreamSample.xml:62
+msgid ""
+"Audio loops the data between [member loop_begin] and [member loop_end], "
+"playing forward only."
+msgstr ""
+
+#: doc/classes/AudioStreamSample.xml:65
+msgid ""
+"Audio loops the data between [member loop_begin] and [member loop_end], "
+"playing back and forth."
+msgstr ""
+
+#: doc/classes/AudioStreamSample.xml:68
+msgid ""
+"Audio loops the data between [member loop_begin] and [member loop_end], "
+"playing backward only."
+msgstr ""
+
+#: doc/classes/BackBufferCopy.xml:4
+msgid ""
+"Copies a region of the screen (or the whole screen) to a buffer so it can be "
+"accessed in your shader scripts through the "
+"[code]texture(SCREEN_TEXTURE, ...)[/code] function."
+msgstr ""
+
+#: doc/classes/BackBufferCopy.xml:7
+msgid ""
+"Node for back-buffering the currently-displayed screen. The region defined "
+"in the BackBufferCopy node is bufferized with the content of the screen it "
+"covers, or the entire screen according to the copy mode set. Use the "
+"[code]texture(SCREEN_TEXTURE, ...)[/code] function in your shader scripts to "
+"access the buffer.\n"
+"[b]Note:[/b] Since this node inherits from [Node2D] (and not [Control]), "
+"anchors and margins won't apply to child [Control]-derived nodes. This can "
+"be problematic when resizing the window. To avoid this, add [Control]-"
+"derived nodes as [i]siblings[/i] to the BackBufferCopy node instead of "
+"adding them as children."
+msgstr ""
+
+#: doc/classes/BackBufferCopy.xml:16
+msgid "Buffer mode. See [enum CopyMode] constants."
+msgstr ""
+
+#: doc/classes/BackBufferCopy.xml:19
+msgid ""
+"The area covered by the BackBufferCopy. Only used if [member copy_mode] is "
+"[constant COPY_MODE_RECT]."
+msgstr ""
+
+#: doc/classes/BackBufferCopy.xml:24
+msgid ""
+"Disables the buffering mode. This means the BackBufferCopy node will "
+"directly use the portion of screen it covers."
+msgstr ""
+
+#: doc/classes/BackBufferCopy.xml:27
+msgid "BackBufferCopy buffers a rectangular region."
+msgstr ""
+
+#: doc/classes/BackBufferCopy.xml:30
+msgid "BackBufferCopy buffers the entire screen."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:4
+msgid "Base class for different kinds of buttons."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:7
+msgid ""
+"BaseButton is the abstract base class for buttons, so it shouldn't be used "
+"directly (it doesn't display anything). Other types of buttons inherit from "
+"it."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:16
+msgid ""
+"Called when the button is pressed. If you need to know the button's pressed "
+"state (and [member toggle_mode] is active), use [method _toggled] instead."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:25
+msgid ""
+"Called when the button is toggled (only if [member toggle_mode] is active)."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:32
+msgid ""
+"Returns the visual state used to draw the button. This is useful mainly when "
+"implementing your own draw code by either overriding _draw() or connecting "
+"to \"draw\" signal. The visual state of the button is defined by the [enum "
+"DrawMode] enum."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:39
+msgid ""
+"Returns [code]true[/code] if the mouse has entered the button and has not "
+"left it yet."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:45
+msgid ""
+"Determines when the button is considered clicked, one of the [enum "
+"ActionMode] constants."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:48
+msgid ""
+"Binary mask to choose which mouse buttons this button will respond to.\n"
+"To allow both left-click and right-click, use [code]BUTTON_MASK_LEFT | "
+"BUTTON_MASK_RIGHT[/code]."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:52
+msgid ""
+"If [code]true[/code], the button is in disabled state and can't be clicked "
+"or toggled."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:55
+msgid ""
+"Focus access mode to use when switching between enabled/disabled (see "
+"[member Control.focus_mode] and [member disabled])."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:59
+msgid "[ButtonGroup] associated to the button."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:62
+msgid ""
+"If [code]true[/code], the button stays pressed when moving the cursor "
+"outside the button while pressing it.\n"
+"[b]Note:[/b] This property only affects the button's visual appearance. "
+"Signals will be emitted at the same moment regardless of this property's "
+"value."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:66
+msgid ""
+"If [code]true[/code], the button's state is pressed. Means the button is "
+"pressed down or toggled (if [member toggle_mode] is active)."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:69
+msgid "[ShortCut] associated to the button."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:72
+msgid ""
+"If [code]true[/code], the button will add information about its shortcut in "
+"the tooltip."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:75
+msgid ""
+"If [code]true[/code], the button is in toggle mode. Makes the button flip "
+"state between pressed and unpressed each time its area is clicked."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:81
+msgid "Emitted when the button starts being held down."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:86
+msgid "Emitted when the button stops being held down."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:91
+msgid ""
+"Emitted when the button is toggled or pressed. This is on [signal "
+"button_down] if [member action_mode] is [constant ACTION_MODE_BUTTON_PRESS] "
+"and on [signal button_up] otherwise.\n"
+"If you need to know the button's pressed state (and [member toggle_mode] is "
+"active), use [signal toggled] instead."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:99
+msgid ""
+"Emitted when the button was just toggled between pressed and normal states "
+"(only if [member toggle_mode] is active). The new state is contained in the "
+"[code]button_pressed[/code] argument."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:105
+msgid ""
+"The normal state (i.e. not pressed, not hovered, not toggled and enabled) of "
+"buttons."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:108
+msgid "The state of buttons are pressed."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:111
+msgid "The state of buttons are hovered."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:114
+msgid "The state of buttons are disabled."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:117
+msgid "The state of buttons are both hovered and pressed."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:120
+msgid "Require just a press to consider the button clicked."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:123
+msgid ""
+"Require a press and a subsequent release before considering the button "
+"clicked."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:4
+msgid "Default 3D rendering material."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:7
+msgid ""
+"This provides a default material with a wide variety of rendering features "
+"and properties without the need to write shader code. See the tutorial below "
+"for details."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:10
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/3d/spatial_material.html"
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:19
+msgid "Returns [code]true[/code], if the specified [enum Feature] is enabled."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:28
+msgid ""
+"Returns [code]true[/code], if the specified flag is enabled. See [enum "
+"Flags] enumerator for options."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:37
+msgid ""
+"Returns the [Texture] associated with the specified [enum TextureParam]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:48
+msgid ""
+"If [code]true[/code], enables the specified [enum Feature]. Many features "
+"that are available in [BaseMaterial3D]s need to be enabled before use. This "
+"way the cost for using the feature is only incurred when specified. Features "
+"can also be enabled by setting the corresponding member to [code]true[/code]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:59
+msgid ""
+"If [code]true[/code], 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 [code]true[/code]. See [enum Flags] "
+"enumerator for options."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:70
+msgid ""
+"Sets the texture for the slot specified by [code]param[/code]. See [enum "
+"TextureParam] for available slots."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:76
+msgid "The material's base color."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:79
+msgid ""
+"Forces a conversion of the [member albedo_texture] from sRGB space to linear "
+"space."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:82
+msgid ""
+"Texture to multiply by [member albedo_color]. Used for basic texturing of "
+"objects."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:85
+msgid "Threshold at which the alpha scissor will discard values."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:88
+msgid "The strength of the anisotropy effect."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:91
+msgid ""
+"If [code]true[/code], anisotropy is enabled. Changes the shape of the "
+"specular blob and aligns it to tangent space. Mesh tangents are needed for "
+"this to work. If the mesh does not contain tangents the anisotropy effect "
+"will appear broken."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:94
+msgid "Texture that offsets the tangent map for anisotropy calculations."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:97
+msgid ""
+"If [code]true[/code], ambient occlusion is enabled. Ambient occlusion "
+"darkens areas based on the [member ao_texture]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:100
+msgid ""
+"Amount that ambient occlusion affects lighting from lights. If [code]0[/"
+"code], ambient occlusion only affects ambient light. If [code]1[/code], "
+"ambient occlusion affects lights just as much as it affects ambient light. "
+"This can be used to impact the strength of the ambient occlusion effect, but "
+"typically looks unrealistic."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:103
+msgid ""
+"If [code]true[/code], use [code]UV2[/code] coordinates to look up from the "
+"[member ao_texture]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:106
+msgid ""
+"Texture that defines the amount of ambient occlusion for a given point on "
+"the object."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:109 doc/classes/BaseMaterial3D.xml:286
+#: doc/classes/BaseMaterial3D.xml:307
+msgid ""
+"Specifies the channel of the [member ao_texture] in which the ambient "
+"occlusion information is stored. This is useful when you store the "
+"information for multiple effects in a single texture. For example if you "
+"stored metallic in the red channel, roughness in the blue, and ambient "
+"occlusion in the green you could reduce the number of textures you use."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:112
+msgid ""
+"The color used by the backlight effect. Represents the light passing through "
+"an object."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:115
+msgid "If [code]true[/code], the backlight effect is enabled."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:118
+msgid ""
+"Texture used to control the backlight effect per-pixel. Added to [member "
+"backlight]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:121
+msgid ""
+"If [code]true[/code], the shader will keep the scale set for the mesh. "
+"Otherwise the scale is lost when billboarding. Only applies when [member "
+"billboard_mode] is [constant BILLBOARD_ENABLED]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:124
+msgid "Controls how the object faces the camera. See [enum BillboardMode]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:127
+msgid ""
+"The material's blend mode.\n"
+"[b]Note:[/b] Values other than [code]Mix[/code] force the object into the "
+"transparent pipeline. See [enum BlendMode]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:131
+msgid ""
+"Sets the strength of the clearcoat effect. Setting to [code]0[/code] looks "
+"the same as disabling the clearcoat effect."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:134
+msgid ""
+"If [code]true[/code], clearcoat rendering is enabled. Adds a secondary "
+"transparent pass to the lighting calculation resulting in an added specular "
+"blob. This makes materials appear as if they have a clear layer on them that "
+"can be either glossy or rough."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:137
+msgid ""
+"Sets the roughness of the clearcoat pass. A higher value results in a "
+"smoother clearcoat while a lower value results in a rougher clearcoat."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:140
+msgid ""
+"Texture that defines the strength of the clearcoat effect and the glossiness "
+"of the clearcoat. Strength is specified in the red channel while glossiness "
+"is specified in the green channel."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:143
+msgid ""
+"Which side of the object is not drawn when backfaces are rendered. See [enum "
+"CullMode]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:146
+msgid ""
+"Determines when depth rendering takes place. See [enum DepthDrawMode]. See "
+"also [member transparency]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:149
+msgid "Texture that specifies the color of the detail overlay."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:152
+msgid ""
+"Specifies how the [member detail_albedo] should blend with the current "
+"[code]ALBEDO[/code]. See [enum BlendMode] for options."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:155
+msgid ""
+"If [code]true[/code], enables the detail overlay. Detail is a second texture "
+"that gets mixed over the surface of the object based on [member "
+"detail_mask]. This can be used to add variation to objects, or to blend "
+"between two different albedo/normal textures."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:158
+msgid ""
+"Texture used to specify how the detail textures get blended with the base "
+"textures."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:161
+msgid ""
+"Texture that specifies the per-pixel normal of the detail overlay.\n"
+"[b]Note:[/b] Godot expects the normal map to use X+, Y-, and Z+ coordinates. "
+"See [url=http://wiki.polycount.com/wiki/"
+"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]this page[/url] for "
+"a comparison of normal map coordinates expected by popular engines."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:165
+msgid ""
+"Specifies whether to use [code]UV[/code] or [code]UV2[/code] for the detail "
+"layer. See [enum DetailUV] for options."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:168
+msgid ""
+"The algorithm used for diffuse light scattering. See [enum DiffuseMode]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:171
+msgid "If [code]true[/code], the object receives no ambient light."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:174
+msgid ""
+"If [code]true[/code], the object receives no shadow that would otherwise be "
+"cast onto it."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:177
+msgid "Distance at which the object fades fully and is no longer visible."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:180
+msgid ""
+"Distance at which the object starts to fade. If the object is less than this "
+"distance away it will appear normal."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:183
+msgid ""
+"Specifies which type of fade to use. Can be any of the [enum "
+"DistanceFadeMode]s."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:186
+msgid "The emitted light's color. See [member emission_enabled]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:189
+msgid ""
+"If [code]true[/code], the body emits light. Emitting light makes the object "
+"appear brighter. The object can also cast light on other objects if a "
+"[GIProbe] is used and this object is used in baked lighting."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:192
+msgid "The emitted light's strength. See [member emission_enabled]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:195
+msgid "Use [code]UV2[/code] to read from the [member emission_texture]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:198
+msgid ""
+"Sets how [member emission] interacts with [member emission_texture]. Can "
+"either add or multiply. See [enum EmissionOperator] for options."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:201
+msgid "Texture that specifies how much surface emits light at a given point."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:204
+msgid ""
+"If [code]true[/code], the object is rendered at the same size regardless of "
+"distance."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:207
+msgid ""
+"If [code]true[/code], enables the vertex grow setting. See [member "
+"grow_amount]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:210
+msgid "Grows object vertices in the direction of their normals."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:231
+msgid ""
+"A high value makes the material appear more like a metal. Non-metals use "
+"their albedo as the diffuse color and add diffuse to the specular "
+"reflection. With non-metals, the reflection appears on top of the albedo "
+"color. Metals use their albedo as a multiplier to the specular reflection "
+"and set the diffuse color to black resulting in a tinted reflection. "
+"Materials work better when fully metal or fully non-metal, values between "
+"[code]0[/code] and [code]1[/code] should only be used for blending between "
+"metal and non-metal sections. To alter the amount of reflection use [member "
+"roughness]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:234
+msgid ""
+"Sets the size of the specular lobe. The specular lobe is the bright spot "
+"that is reflected from light sources.\n"
+"[b]Note:[/b] unlike [member metallic], this is not energy-conserving, so it "
+"should be left at [code]0.5[/code] in most cases. See also [member "
+"roughness]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:238
+msgid ""
+"Texture used to specify metallic for an object. This is multiplied by "
+"[member metallic]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:241
+msgid ""
+"Specifies the channel of the [member metallic_texture] in which the metallic "
+"information is stored. This is useful when you store the information for "
+"multiple effects in a single texture. For example if you stored metallic in "
+"the red channel, roughness in the blue, and ambient occlusion in the green "
+"you could reduce the number of textures you use."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:244
+msgid ""
+"If [code]true[/code], depth testing is disabled and the object will be drawn "
+"in render order."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:247
+msgid "If [code]true[/code], normal mapping is enabled."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:250
+msgid "The strength of the normal map's effect."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:253
+msgid ""
+"Texture used to specify the normal at a given pixel. The "
+"[code]normal_texture[/code] only uses the red and green channels. The normal "
+"read from [code]normal_texture[/code] is oriented around the surface normal "
+"provided by the [Mesh].\n"
+"[b]Note:[/b] Godot expects the normal map to use X+, Y-, and Z+ coordinates. "
+"See [url=http://wiki.polycount.com/wiki/"
+"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]this page[/url] for "
+"a comparison of normal map coordinates expected by popular engines."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:259
+msgid ""
+"The number of horizontal frames in the particle sprite sheet. Only enabled "
+"when using [constant BILLBOARD_PARTICLES]. See [member billboard_mode]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:262
+msgid ""
+"If [code]true[/code], particle animations are looped. Only enabled when "
+"using [constant BILLBOARD_PARTICLES]. See [member billboard_mode]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:265
+msgid ""
+"The number of vertical frames in the particle sprite sheet. Only enabled "
+"when using [constant BILLBOARD_PARTICLES]. See [member billboard_mode]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:268
+msgid "The point size in pixels. See [member use_point_size]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:271
+msgid ""
+"Distance over which the fade effect takes place. The larger the distance the "
+"longer it takes for an object to fade."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:274
+msgid ""
+"If [code]true[/code], the proximity fade effect is enabled. The proximity "
+"fade effect fades out each pixel based on its distance to another object."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:277
+msgid ""
+"If [code]true[/code], the refraction effect is enabled. Distorts "
+"transparency based on light from behind the object."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:280
+msgid "The strength of the refraction effect."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:283
+msgid ""
+"Texture that controls the strength of the refraction per-pixel. Multiplied "
+"by [member refraction_scale]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:289
+msgid "Sets the strength of the rim lighting effect."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:292
+msgid ""
+"If [code]true[/code], rim effect is enabled. Rim lighting increases the "
+"brightness at glancing angles on an object."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:295
+msgid ""
+"Texture used to set the strength of the rim lighting effect per-pixel. "
+"Multiplied by [member rim]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:298
+msgid ""
+"The amount of to blend light and albedo color when rendering rim effect. If "
+"[code]0[/code] the light color is used, while [code]1[/code] means albedo "
+"color is used. An intermediate value generally works best."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:301
+msgid ""
+"Surface reflection. A value of [code]0[/code] represents a perfect mirror "
+"while a value of [code]1[/code] completely blurs the reflection. See also "
+"[member metallic]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:304
+msgid ""
+"Texture used to control the roughness per-pixel. Multiplied by [member "
+"roughness]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:310
+msgid ""
+"Sets whether the shading takes place per-pixel or per-vertex. Per-vertex "
+"lighting is faster, making it the best choice for mobile applications, "
+"however it looks considerably worse than per-pixel."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:313
+msgid ""
+"If [code]true[/code], enables the \"shadow to opacity\" render mode where "
+"lighting modifies the alpha so shadowed areas are opaque and non-shadowed "
+"areas are transparent. Useful for overlaying shadows onto a camera feed in "
+"AR."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:316
+msgid "The method for rendering the specular blob. See [enum SpecularMode]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:319
+msgid ""
+"If [code]true[/code], subsurface scattering is enabled. Emulates light that "
+"penetrates an object's surface, is scattered, and then emerges."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:322
+msgid ""
+"If [code]true[/code], subsurface scattering will use a special mode "
+"optimized for the color and density of human skin."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:325
+msgid "The strength of the subsurface scattering effect."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:328
+msgid ""
+"Texture used to control the subsurface scattering strength. Stored in the "
+"red texture channel. Multiplied by [member subsurf_scatter_strength]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:343
+msgid "Filter flags for the texture. See [enum TextureFilter] for options."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:346
+msgid "Repeat flags for the texture. See [enum TextureFilter] for options."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:349
+msgid ""
+"If [code]true[/code], transparency is enabled on the body. See also [member "
+"blend_mode]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:352
+msgid ""
+"If [code]true[/code], render point size can be changed.\n"
+"[b]Note:[/b] this is only effective for objects whose geometry is point-"
+"based rather than triangle-based. See also [member point_size]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:356
+msgid ""
+"How much to offset the [code]UV[/code] coordinates. This amount will be "
+"added to [code]UV[/code] in the vertex function. This can be used to offset "
+"a texture."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:359
+msgid ""
+"How much to scale the [code]UV[/code] coordinates. This is multiplied by "
+"[code]UV[/code] in the vertex function."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:362
+msgid ""
+"If [code]true[/code], instead of using [code]UV[/code] textures will use a "
+"triplanar texture lookup to determine how to apply textures. Triplanar uses "
+"the orientation of the object's surface to blend between texture "
+"coordinates. It reads from the source texture 3 times, once for each axis "
+"and then blends between the results based on how closely the pixel aligns "
+"with each axis. This is often used for natural features to get a realistic "
+"blend of materials. Because triplanar texturing requires many more texture "
+"reads per-pixel it is much slower than normal UV texturing. Additionally, "
+"because it is blending the texture between the three axes, it is unsuitable "
+"when you are trying to achieve crisp texturing."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:365 doc/classes/BaseMaterial3D.xml:380
+msgid ""
+"A lower number blends the texture more softly while a higher number blends "
+"the texture more sharply."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:368
+msgid ""
+"If [code]true[/code], triplanar mapping for [code]UV[/code] is calculated in "
+"world space rather than object local space. See also [member uv1_triplanar]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:371
+msgid ""
+"How much to offset the [code]UV2[/code] coordinates. This amount will be "
+"added to [code]UV2[/code] in the vertex function. This can be used to offset "
+"a texture."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:374
+msgid ""
+"How much to scale the [code]UV2[/code] coordinates. This is multiplied by "
+"[code]UV2[/code] in the vertex function."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:377
+msgid ""
+"If [code]true[/code], instead of using [code]UV2[/code] textures will use a "
+"triplanar texture lookup to determine how to apply textures. Triplanar uses "
+"the orientation of the object's surface to blend between texture "
+"coordinates. It reads from the source texture 3 times, once for each axis "
+"and then blends between the results based on how closely the pixel aligns "
+"with each axis. This is often used for natural features to get a realistic "
+"blend of materials. Because triplanar texturing requires many more texture "
+"reads per-pixel it is much slower than normal UV texturing. Additionally, "
+"because it is blending the texture between the three axes, it is unsuitable "
+"when you are trying to achieve crisp texturing."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:383
+msgid ""
+"If [code]true[/code], triplanar mapping for [code]UV2[/code] is calculated "
+"in world space rather than object local space. See also [member "
+"uv2_triplanar]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:386
+msgid ""
+"If [code]true[/code], the model's vertex colors are processed as sRGB mode."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:389
+msgid "If [code]true[/code], the vertex color is used as albedo color."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:394
+msgid "Texture specifying per-pixel color."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:397
+msgid "Texture specifying per-pixel metallic value."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:400
+msgid "Texture specifying per-pixel roughness value."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:403
+msgid "Texture specifying per-pixel emission color."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:406
+msgid "Texture specifying per-pixel normal vector."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:409
+msgid "Texture specifying per-pixel rim value."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:412
+msgid "Texture specifying per-pixel clearcoat value."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:415
+msgid ""
+"Texture specifying per-pixel flowmap direction for use with [member "
+"anisotropy]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:418
+msgid "Texture specifying per-pixel ambient occlusion value."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:421
+msgid "Texture specifying per-pixel height."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:424
+msgid "Texture specifying per-pixel subsurface scattering."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:427
+msgid "Texture specifying per-pixel transmittance for subsurface scattering."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:430
+msgid "Texture specifying per-pixel backlight color."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:433
+msgid "Texture specifying per-pixel refraction strength."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:436
+msgid "Texture specifying per-pixel detail mask blending value."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:439
+msgid "Texture specifying per-pixel detail color."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:442
+msgid "Texture specifying per-pixel detail normal."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:445
+msgid "Texture holding ambient occlusion, roughness, and metallic."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:448
+msgid "Represents the size of the [enum TextureParam] enum."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:451 doc/classes/RenderingServer.xml:3668
+#: doc/classes/Viewport.xml:393
+msgid ""
+"The texture filter reads from the nearest pixel only. The simplest and "
+"fastest method of filtering, but the texture will look pixelized."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:454 doc/classes/RenderingServer.xml:3671
+#: doc/classes/Viewport.xml:396
+msgid ""
+"The texture filter blends between the nearest 4 pixels. Use this when you "
+"want to avoid a pixelated style, but do not want mipmaps."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:457 doc/classes/RenderingServer.xml:3674
+#: doc/classes/Viewport.xml:399
+msgid ""
+"The texture filter reads from the nearest pixel in the nearest mipmap. The "
+"fastest way to read from textures with mipmaps."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:460
+msgid ""
+"The texture filter blends between the nearest 4 pixels and between the "
+"nearest 2 mipmaps. Use this for most cases as mipmaps are important to "
+"smooth out pixels that are far from the camera."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:463 doc/classes/RenderingServer.xml:3680
+msgid ""
+"The texture filter reads from the nearest pixel, but selects a mipmap based "
+"on the angle between the surface and the camera view. This reduces artifacts "
+"on surfaces that are almost in line with the camera."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:466 doc/classes/RenderingServer.xml:3683
+msgid ""
+"The texture filter blends between the nearest 4 pixels and selects a mipmap "
+"based on the angle between the surface and the camera view. This reduces "
+"artifacts on surfaces that are almost in line with the camera. This is the "
+"slowest of the filtering options, but results in the highest quality "
+"texturing."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:469 doc/classes/CanvasItem.xml:695
+msgid "Represents the size of the [enum TextureFilter] enum."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:472
+msgid "Use [code]UV[/code] with the detail texture."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:475
+msgid "Use [code]UV2[/code] with the detail texture."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:478
+msgid "The material will not use transparency."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:481
+msgid "The material will use the texture's alpha values for transparency."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:484
+msgid ""
+"The material will cut off all values below a threshold, the rest will remain "
+"opaque."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:487
+msgid ""
+"The material will use the texture's alpha value for transparency, but will "
+"still be rendered in the pre-pass."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:490
+msgid "Represents the size of the [enum Transparency] enum."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:493
+msgid "The object will not receive shadows."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:496
+msgid ""
+"The object will be shaded per pixel. Useful for realistic shading effect."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:499
+msgid ""
+"The object will be shaded per vertex. Useful when you want cheaper shaders "
+"and do not care about visual quality."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:502
+msgid "Represents the size of the [enum ShadingMode] enum."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:505
+msgid "Constant for setting [member emission_enabled]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:508
+msgid "Constant for setting [member normal_enabled]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:511
+msgid "Constant for setting [member rim_enabled]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:514
+msgid "Constant for setting [member clearcoat_enabled]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:517
+msgid "Constant for setting [member anisotropy_enabled]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:520
+msgid "Constant for setting [member ao_enabled]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:523
+msgid "Constant for setting [member heightmap_enabled]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:526
+msgid "Constant for setting [member subsurf_scatter_enabled]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:529
+msgid "Constant for setting [member subsurf_scatter_transmittance_enabled]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:532
+msgid "Constant for setting [member backlight_enabled]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:535
+msgid "Constant for setting [member refraction_enabled]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:538
+msgid "Constant for setting [member detail_enabled]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:541 doc/classes/EditorFeatureProfile.xml:148
+msgid "Represents the size of the [enum Feature] enum."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:544
+msgid ""
+"Default blend mode. The color of the object is blended over the background "
+"based on the object's alpha value."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:547
+msgid "The color of the object is added to the background."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:550
+msgid "The color of the object is subtracted from the background."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:553
+msgid "The color of the object is multiplied by the background."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:556
+msgid "Default depth draw mode. Depth is drawn only for opaque objects."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:559
+msgid "Depth draw is calculated for both opaque and transparent objects."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:562
+msgid "No depth draw."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:565
+msgid "Default cull mode. The back of the object is culled when not visible."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:568
+msgid "The front of the object is culled when not visible."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:571
+msgid "No culling is performed."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:574
+msgid ""
+"Disables the depth test, so this object is drawn on top of all others. "
+"However, objects drawn after it in the draw order may cover it."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:577
+msgid "Set [code]ALBEDO[/code] to the per-vertex color specified in the mesh."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:580
+msgid ""
+"Vertex color is in sRGB space and needs to be converted to linear. Only "
+"applies in the Vulkan renderer."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:583
+msgid ""
+"Uses point size to alter the size of primitive points. Also changes the "
+"albedo texture lookup to use [code]POINT_COORD[/code] instead of [code]UV[/"
+"code]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:586
+msgid ""
+"Object is scaled by depth so that it always appears the same size on screen."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:589
+msgid ""
+"Shader will keep the scale set for the mesh. Otherwise the scale is lost "
+"when billboarding. Only applies when [member billboard_mode] is [constant "
+"BILLBOARD_ENABLED]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:592 doc/classes/BaseMaterial3D.xml:598
+msgid ""
+"Use triplanar texture lookup for all texture lookups that would normally use "
+"[code]UV[/code]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:595 doc/classes/BaseMaterial3D.xml:601
+msgid ""
+"Use triplanar texture lookup for all texture lookups that would normally use "
+"[code]UV2[/code]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:604
+msgid ""
+"Use [code]UV2[/code] coordinates to look up from the [member ao_texture]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:607
+msgid ""
+"Use [code]UV2[/code] coordinates to look up from the [member "
+"emission_texture]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:610
+msgid "Forces the shader to convert albedo from sRGB space to linear space."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:613
+msgid "Disables receiving shadows from other objects."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:616
+msgid "Disables receiving ambient light."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:619
+msgid "Enables the shadow to opacity feature."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:622 doc/classes/RenderingServer.xml:3695
+#: doc/classes/Viewport.xml:411
+msgid ""
+"Enables the texture to repeat when UV coordinates are outside the 0-1 range. "
+"If using one of the linear filtering modes, this can result in artifacts at "
+"the edges of a texture when the sampler filters across the edges of the "
+"texture."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:625
+msgid ""
+"Invert values read from a depth texture to convert them to height values "
+"(heightmap)."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:628
+msgid ""
+"Enables the skin mode for subsurface scattering which is used to improve the "
+"look of subsurface scattering when used for human skin."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:631 doc/classes/CPUParticles2D.xml:356
+#: doc/classes/CPUParticles3D.xml:364 doc/classes/ParticlesMaterial.xml:315
+msgid "Represents the size of the [enum Flags] enum."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:634
+msgid "Default diffuse scattering algorithm."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:637
+msgid "Diffuse scattering ignores roughness."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:640
+msgid "Extends Lambert to cover more than 90 degrees when roughness increases."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:643
+msgid "Attempts to use roughness to emulate microsurfacing."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:646
+msgid "Uses a hard cut for lighting, with smoothing affected by roughness."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:649
+msgid "Default specular blob."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:652 doc/classes/BaseMaterial3D.xml:655
+msgid "Older specular algorithm, included for compatibility."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:658
+msgid "Toon blob which changes size based on roughness."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:661
+msgid "No specular blob."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:664
+msgid "Billboard mode is disabled."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:667
+msgid "The object's Z axis will always face the camera."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:670
+msgid "The object's X axis will always face the camera."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:673
+msgid ""
+"Used for particle systems when assigned to [GPUParticles3D] and "
+"[CPUParticles3D] nodes. Enables [code]particles_anim_*[/code] properties.\n"
+"The [member ParticlesMaterial.anim_speed] or [member CPUParticles3D."
+"anim_speed] should also be set to a positive value for the animation to play."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:677
+msgid "Used to read from the red channel of a texture."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:680
+msgid "Used to read from the green channel of a texture."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:683
+msgid "Used to read from the blue channel of a texture."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:686
+msgid "Used to read from the alpha channel of a texture."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:689
+msgid "Currently unused."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:692
+msgid "Adds the emission color to the color from the emission texture."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:695
+msgid "Multiplies the emission color by the color from the emission texture."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:698
+msgid "Do not use distance fade."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:701
+msgid ""
+"Smoothly fades the object out based on each pixel's distance from the camera "
+"using the alpha channel."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:704
+msgid ""
+"Smoothly fades the object out based on each pixel's distance from the camera "
+"using a dither approach. Dithering discards pixels based on a set pattern to "
+"smoothly fade without enabling transparency. On certain hardware this can be "
+"faster than [constant DISTANCE_FADE_PIXEL_ALPHA]."
+msgstr ""
+
+#: doc/classes/BaseMaterial3D.xml:707
+msgid ""
+"Smoothly fades the object out based on the object's distance from the camera "
+"using a dither approach. Dithering discards pixels based on a set pattern to "
+"smoothly fade without enabling transparency. On certain hardware this can be "
+"faster than [constant DISTANCE_FADE_PIXEL_ALPHA]."
+msgstr ""
+
+#: doc/classes/Basis.xml:4
+msgid "3×3 matrix datatype."
+msgstr ""
+
+#: doc/classes/Basis.xml:7
+msgid ""
+"3×3 matrix used for 3D rotation and scale. Almost always used as an "
+"orthogonal basis for a Transform.\n"
+"Contains 3 vector fields X, Y and Z as its columns, which are typically "
+"interpreted as the local basis vectors of a transformation. For such use, it "
+"is composed of a scaling and a rotation matrix, in that order (M = R.S).\n"
+"Can also be accessed as array of 3D vectors. These vectors are normally "
+"orthogonal to each other, but are not necessarily normalized (due to "
+"scaling).\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
+msgstr ""
+
+#: doc/classes/Basis.xml:13 doc/classes/Transform.xml:12
+#: doc/classes/Transform2D.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/math/"
+"matrices_and_transforms.html"
+msgstr ""
+
+#: doc/classes/Basis.xml:14 doc/classes/Transform.xml:13
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/3d/using_transforms.html"
+msgstr ""
+
+#: doc/classes/Basis.xml:23
+msgid "Constructs a pure rotation basis matrix from the given quaternion."
+msgstr ""
+
+#: doc/classes/Basis.xml:32
+msgid ""
+"Constructs a pure rotation basis matrix from the given Euler angles (in the "
+"YXZ convention: when *composing*, first Y, then X, and Z last), given in the "
+"vector format as (X angle, Y angle, Z angle).\n"
+"Consider using the [Quat] constructor instead, which uses a quaternion "
+"instead of Euler angles."
+msgstr ""
+
+#: doc/classes/Basis.xml:44
+msgid ""
+"Constructs a pure rotation basis matrix, rotated around the given "
+"[code]axis[/code] by [code]phi[/code], in radians. The axis must be a "
+"normalized vector."
+msgstr ""
+
+#: doc/classes/Basis.xml:57
+msgid "Constructs a basis matrix from 3 axis vectors (matrix columns)."
+msgstr ""
+
+#: doc/classes/Basis.xml:64
+msgid ""
+"Returns the determinant of the basis matrix. If the basis is uniformly "
+"scaled, its determinant is the square of the scale.\n"
+"A negative determinant means the basis has a negative scale. A zero "
+"determinant means the basis isn't invertible, and is usually considered "
+"invalid."
+msgstr ""
+
+#: doc/classes/Basis.xml:72
+msgid ""
+"Returns the basis's rotation in the form of Euler angles (in the YXZ "
+"convention: when decomposing, first Z, then X, and Y last). The returned "
+"vector contains the rotation angles in the format (X angle, Y angle, Z "
+"angle).\n"
+"Consider using the [method get_rotation_quat] method instead, which returns "
+"a [Quat] quaternion instead of Euler angles."
+msgstr ""
+
+#: doc/classes/Basis.xml:80
+msgid ""
+"This function considers a discretization of rotations into 24 points on unit "
+"sphere, lying along the vectors (x,y,z) with each component being either -1, "
+"0, or 1, and returns the index of the point best representing the "
+"orientation of the object. It is mainly used by the [GridMap] editor. For "
+"further details, refer to the Godot source code."
+msgstr ""
+
+#: doc/classes/Basis.xml:87
+msgid ""
+"Returns the basis's rotation in the form of a quaternion. See [method "
+"get_euler] if you need Euler angles, but keep in mind quaternions should "
+"generally be preferred to Euler angles."
+msgstr ""
+
+#: doc/classes/Basis.xml:94
+msgid ""
+"Assuming that the matrix is the combination of a rotation and scaling, "
+"return the absolute value of scaling factors along each axis."
+msgstr ""
+
+#: doc/classes/Basis.xml:101
+msgid "Returns the inverse of the matrix."
+msgstr ""
+
+#: doc/classes/Basis.xml:112
+msgid ""
+"Returns [code]true[/code] if this basis and [code]b[/code] are approximately "
+"equal, by calling [code]is_equal_approx[/code] on each component."
+msgstr ""
+
+#: doc/classes/Basis.xml:119
+msgid ""
+"Returns the orthonormalized version of the matrix (useful to call from time "
+"to time to avoid rounding error for orthogonal matrices). This performs a "
+"Gram-Schmidt orthonormalization on the basis of the matrix."
+msgstr ""
+
+#: doc/classes/Basis.xml:130
+msgid ""
+"Introduce an additional rotation around the given axis by phi (radians). The "
+"axis must be a normalized vector."
+msgstr ""
+
+#: doc/classes/Basis.xml:139
+msgid ""
+"Introduce an additional scaling specified by the given 3D scaling factor."
+msgstr ""
+
+#: doc/classes/Basis.xml:150
+msgid ""
+"Assuming that the matrix is a proper rotation matrix, slerp performs a "
+"spherical-linear interpolation with another rotation matrix."
+msgstr ""
+
+#: doc/classes/Basis.xml:159
+msgid "Transposed dot product with the X axis of the matrix."
+msgstr ""
+
+#: doc/classes/Basis.xml:168
+msgid "Transposed dot product with the Y axis of the matrix."
+msgstr ""
+
+#: doc/classes/Basis.xml:177
+msgid "Transposed dot product with the Z axis of the matrix."
+msgstr ""
+
+#: doc/classes/Basis.xml:184
+msgid "Returns the transposed version of the matrix."
+msgstr ""
+
+#: doc/classes/Basis.xml:193
+msgid "Returns a vector transformed (multiplied) by the matrix."
+msgstr ""
+
+#: doc/classes/Basis.xml:202
+msgid ""
+"Returns a vector transformed (multiplied) by the transposed basis matrix.\n"
+"[b]Note:[/b] This results in a multiplication by the inverse of the matrix "
+"only if it represents a rotation-reflection."
+msgstr ""
+
+#: doc/classes/Basis.xml:209 doc/classes/Transform2D.xml:181
+msgid ""
+"The basis matrix's X vector (column 0). Equivalent to array index [code]0[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Basis.xml:212 doc/classes/Transform2D.xml:184
+msgid ""
+"The basis matrix's Y vector (column 1). Equivalent to array index [code]1[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Basis.xml:215
+msgid ""
+"The basis matrix's Z vector (column 2). Equivalent to array index [code]2[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Basis.xml:220
+msgid ""
+"The identity basis, with no rotation or scaling applied.\n"
+"This is identical to calling [code]Basis()[/code] without any parameters. "
+"This constant can be used to make your code clearer, and for consistency "
+"with C#."
+msgstr ""
+
+#: doc/classes/Basis.xml:224
+msgid ""
+"The basis that will flip something along the X axis when used in a "
+"transformation."
+msgstr ""
+
+#: doc/classes/Basis.xml:227
+msgid ""
+"The basis that will flip something along the Y axis when used in a "
+"transformation."
+msgstr ""
+
+#: doc/classes/Basis.xml:230
+msgid ""
+"The basis that will flip something along the Z axis when used in a "
+"transformation."
+msgstr ""
+
+#: doc/classes/BitMap.xml:4
+msgid "Boolean matrix."
+msgstr ""
+
+#: doc/classes/BitMap.xml:7
+msgid ""
+"A two-dimensional array of boolean values, can be used to efficiently store "
+"a binary matrix (every matrix element takes only one bit) and query the "
+"values using natural cartesian coordinates."
+msgstr ""
+
+#: doc/classes/BitMap.xml:18
+msgid ""
+"Creates a bitmap with the specified size, filled with [code]false[/code]."
+msgstr ""
+
+#: doc/classes/BitMap.xml:29
+msgid ""
+"Creates a bitmap that matches the given image dimensions, every element of "
+"the bitmap is set to [code]false[/code] if the alpha value of the image at "
+"that position is equal to [code]threshold[/code] or less, and [code]true[/"
+"code] in other case."
+msgstr ""
+
+#: doc/classes/BitMap.xml:38
+msgid "Returns bitmap's value at the specified position."
+msgstr ""
+
+#: doc/classes/BitMap.xml:45
+msgid "Returns bitmap's dimensions."
+msgstr ""
+
+#: doc/classes/BitMap.xml:52
+msgid ""
+"Returns the amount of bitmap elements that are set to [code]true[/code]."
+msgstr ""
+
+#: doc/classes/BitMap.xml:83
+msgid ""
+"Sets the bitmap's element at the specified position, to the specified value."
+msgstr ""
+
+#: doc/classes/BitMap.xml:94
+msgid "Sets a rectangular portion of the bitmap to the specified value."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:4
+msgid ""
+"Renders text using fonts under the [url=https://www.angelcode.com/products/"
+"bmfont/]BMFont[/url] format.\n"
+"Handles files with the [code].fnt[/code] extension."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:8
+msgid ""
+"Renders text using [code]*.fnt[/code] fonts containing texture atlases. "
+"Supports distance fields. For using vector font files like TTF directly, see "
+"[DynamicFont]."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:27
+msgid ""
+"Adds a character to the font, where [code]character[/code] is the Unicode "
+"value, [code]texture[/code] is the texture index, [code]rect[/code] is the "
+"region in the texture (in pixels!), [code]align[/code] is the (optional) "
+"alignment for the character and [code]advance[/code] is the (optional) "
+"advance."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:40
+msgid ""
+"Adds a kerning pair to the [BitmapFont] as a difference. Kerning pairs are "
+"special cases where a typeface advance is determined by the next character."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:49
+msgid "Adds a texture to the [BitmapFont]."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:56
+msgid "Clears all the font data and settings."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:65
+msgid ""
+"Creates a BitmapFont from the [code]*.fnt[/code] file at [code]path[/code]."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:76
+msgid "Returns a kerning pair as a difference."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:85
+msgid "Returns the font atlas texture at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:92
+msgid "Returns the number of textures in the BitmapFont atlas."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:98
+msgid "Ascent (number of pixels above the baseline)."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:101
+msgid "If [code]true[/code], distance field hint is enabled."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:104
+msgid "The fallback font."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:107
+msgid "Total font height (ascent plus descent) in pixels."
+msgstr ""
+
+#: doc/classes/Bone2D.xml:4
+msgid "Joint used with [Skeleton2D] to control and animate other nodes."
+msgstr ""
+
+#: doc/classes/Bone2D.xml:7
+msgid ""
+"Use a hierarchy of [code]Bone2D[/code] bound to a [Skeleton2D] to control, "
+"and animate other [Node2D] nodes.\n"
+"You can use [code]Bone2D[/code] and [code]Skeleton2D[/code] nodes to animate "
+"2D meshes created with the Polygon 2D UV editor.\n"
+"Each bone has a [member rest] transform that you can reset to with [method "
+"apply_rest]. These rest poses are relative to the bone's parent.\n"
+"If in the editor, you can set the rest pose of an entire skeleton using a "
+"menu option, from the code, you need to iterate over the bones to set their "
+"individual rest poses."
+msgstr ""
+
+#: doc/classes/Bone2D.xml:19
+msgid "Stores the node's current transforms in [member rest]."
+msgstr ""
+
+#: doc/classes/Bone2D.xml:26
+msgid ""
+"Returns the node's index as part of the entire skeleton. See [Skeleton2D]."
+msgstr ""
+
+#: doc/classes/Bone2D.xml:33
+msgid ""
+"Returns the node's [member rest] [code]Transform2D[/code] if it doesn't have "
+"a parent, or its rest pose relative to its parent."
+msgstr ""
+
+#: doc/classes/Bone2D.xml:39
+msgid ""
+"Length of the bone's representation drawn in the editor's viewport in pixels."
+msgstr ""
+
+#: doc/classes/Bone2D.xml:42
+msgid ""
+"Rest transform of the bone. You can reset the node's transforms to this "
+"value using [method apply_rest]."
+msgstr ""
+
+#: doc/classes/BoneAttachment3D.xml:4
+msgid "A node that will attach to a bone."
+msgstr ""
+
+#: doc/classes/BoneAttachment3D.xml:7
+msgid ""
+"This node must be the child of a [Skeleton3D] node. You can then select a "
+"bone for this node to attach to. The BoneAttachment3D node will copy the "
+"transform of the selected bone."
+msgstr ""
+
+#: doc/classes/BoneAttachment3D.xml:15
+msgid "The name of the attached bone."
+msgstr ""
+
+#: doc/classes/bool.xml:4
+msgid "Boolean built-in type."
+msgstr ""
+
+#: doc/classes/bool.xml:7
+msgid ""
+"Boolean is a built-in type. There are two boolean values: [code]true[/code] "
+"and [code]false[/code]. You can think of it as an switch with on or off (1 "
+"or 0) setting. Booleans are used in programming for logic in condition "
+"statements, like [code]if[/code] statements.\n"
+"Booleans can be directly used in [code]if[/code] statements. The code below "
+"demonstrates this on the [code]if can_shoot:[/code] line. You don't need to "
+"use [code]== true[/code], you only need [code]if can_shoot:[/code]. "
+"Similarly, use [code]if not can_shoot:[/code] rather than [code]== false[/"
+"code].\n"
+"[codeblock]\n"
+"var can_shoot = true\n"
+"\n"
+"func shoot():\n"
+" if can_shoot:\n"
+" pass # Perform shooting actions here.\n"
+"[/codeblock]\n"
+"The following code will only create a bullet if both conditions are met: "
+"action \"shoot\" is pressed and if [code]can_shoot[/code] is [code]true[/"
+"code].\n"
+"[b]Note:[/b] [code]Input.is_action_pressed(\"shoot\")[/code] is also a "
+"boolean that is [code]true[/code] when \"shoot\" is pressed and [code]false[/"
+"code] when \"shoot\" isn't pressed.\n"
+"[codeblock]\n"
+"var can_shoot = true\n"
+"\n"
+"func shoot():\n"
+" if can_shoot and Input.is_action_pressed(\"shoot\"):\n"
+" create_bullet()\n"
+"[/codeblock]\n"
+"The following code will set [code]can_shoot[/code] to [code]false[/code] and "
+"start a timer. This will prevent player from shooting until the timer runs "
+"out. Next [code]can_shoot[/code] will be set to [code]true[/code] again "
+"allowing player to shoot once again.\n"
+"[codeblock]\n"
+"var can_shoot = true\n"
+"onready var cool_down = $CoolDownTimer\n"
+"\n"
+"func shoot():\n"
+" if can_shoot and Input.is_action_pressed(\"shoot\"):\n"
+" create_bullet()\n"
+" can_shoot = false\n"
+" cool_down.start()\n"
+"\n"
+"func _on_CoolDownTimer_timeout():\n"
+" can_shoot = true\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/bool.xml:49
+msgid ""
+"Cast an [int] value to a boolean value, this method will return [code]false[/"
+"code] if [code]0[/code] is passed in, and [code]true[/code] for all other "
+"ints."
+msgstr ""
+
+#: doc/classes/bool.xml:58
+msgid ""
+"Cast a [float] value to a boolean value, this method will return "
+"[code]false[/code] if [code]0.0[/code] is passed in, and [code]true[/code] "
+"for all other floats."
+msgstr ""
+
+#: doc/classes/bool.xml:67
+msgid ""
+"Cast a [String] value to a boolean value, this method will return "
+"[code]false[/code] if [code]\"\"[/code] is passed in, and [code]true[/code] "
+"for all non-empty strings.\n"
+"Examples: [code]bool(\"False\")[/code] returns [code]true[/code], "
+"[code]bool(\"\")[/code] returns [code]false[/code]."
+msgstr ""
+
+#: doc/classes/BoxContainer.xml:4
+msgid "Base class for box containers."
+msgstr ""
+
+#: doc/classes/BoxContainer.xml:7
+msgid ""
+"Arranges child [Control] nodes vertically or horizontally, and rearranges "
+"them automatically when their minimum size changes."
+msgstr ""
+
+#: doc/classes/BoxContainer.xml:18
+msgid ""
+"Adds a [Control] node to the box as a spacer. If [code]begin[/code] is "
+"[code]true[/code], it will insert the [Control] node in front of all other "
+"children."
+msgstr ""
+
+#: doc/classes/BoxContainer.xml:24
+msgid ""
+"The alignment of the container's children (must be one of [constant "
+"ALIGN_BEGIN], [constant ALIGN_CENTER], or [constant ALIGN_END])."
+msgstr ""
+
+#: doc/classes/BoxContainer.xml:29
+msgid "Aligns children with the beginning of the container."
+msgstr ""
+
+#: doc/classes/BoxContainer.xml:32
+msgid "Aligns children with the center of the container."
+msgstr ""
+
+#: doc/classes/BoxContainer.xml:35
+msgid "Aligns children with the end of the container."
+msgstr ""
+
+#: doc/classes/BoxShape3D.xml:4
+msgid "Box shape resource."
+msgstr ""
+
+#: doc/classes/BoxShape3D.xml:7
+msgid "3D box shape that can be a child of a [PhysicsBody3D] or [Area3D]."
+msgstr ""
+
+#: doc/classes/BoxShape3D.xml:15
+msgid ""
+"The box's half extents. The width, height and depth of this shape is twice "
+"the half extents."
+msgstr ""
+
+#: doc/classes/Button.xml:4
+msgid "Standard themed Button."
+msgstr ""
+
+#: doc/classes/Button.xml:7
+msgid ""
+"Button is the standard themed button. It can contain text and an icon, and "
+"will display them according to the current [Theme].\n"
+"[b]Example of creating a button and assigning an action when pressed by code:"
+"[/b]\n"
+"[codeblock]\n"
+"func _ready():\n"
+" var button = Button.new()\n"
+" button.text = \"Click me\"\n"
+" button.connect(\"pressed\", self, \"_button_pressed\")\n"
+" add_child(button)\n"
+"\n"
+"func _button_pressed():\n"
+" print(\"Hello world!\")\n"
+"[/codeblock]\n"
+"Buttons (like all Control nodes) can also be created in the editor, but some "
+"situations may require creating them from code."
+msgstr ""
+
+#: doc/classes/Button.xml:27
+msgid ""
+"Text alignment policy for the button's text, use one of the [enum TextAlign] "
+"constants."
+msgstr ""
+
+#: doc/classes/Button.xml:30
+msgid ""
+"When this property is enabled, text that is too large to fit the button is "
+"clipped, when disabled the Button will always be wide enough to hold the "
+"text."
+msgstr ""
+
+#: doc/classes/Button.xml:33
+msgid ""
+"When enabled, the button's icon will expand/shrink to fit the button's size "
+"while keeping its aspect."
+msgstr ""
+
+#: doc/classes/Button.xml:36
+msgid "Flat buttons don't display decoration."
+msgstr ""
+
+#: doc/classes/Button.xml:39
+msgid ""
+"Button's icon, if text is present the icon will be placed before the text."
+msgstr ""
+
+#: doc/classes/Button.xml:42 doc/classes/LinkButton.xml:18
+msgid "The button's text that will be displayed inside the button's area."
+msgstr ""
+
+#: doc/classes/Button.xml:47
+msgid "Align the text to the left."
+msgstr ""
+
+#: doc/classes/Button.xml:50
+msgid "Align the text to the center."
+msgstr ""
+
+#: doc/classes/Button.xml:53
+msgid "Align the text to the right."
+msgstr ""
+
+#: doc/classes/Button.xml:58
+msgid "[StyleBox] used when the [Button] is disabled."
+msgstr ""
+
+#: doc/classes/Button.xml:61
+msgid ""
+"[StyleBox] used when the [Button] is focused. It is displayed over the "
+"current [StyleBox], so using [StyleBoxEmpty] will just disable the focus "
+"visual effect."
+msgstr ""
+
+#: doc/classes/Button.xml:64
+msgid "[Font] of the [Button]'s text."
+msgstr ""
+
+#: doc/classes/Button.xml:67
+msgid "Default text [Color] of the [Button]."
+msgstr ""
+
+#: doc/classes/Button.xml:70
+msgid "Text [Color] used when the [Button] is disabled."
+msgstr ""
+
+#: doc/classes/Button.xml:73
+msgid "Text [Color] used when the [Button] is being hovered."
+msgstr ""
+
+#: doc/classes/Button.xml:76
+msgid "Text [Color] used when the [Button] is being pressed."
+msgstr ""
+
+#: doc/classes/Button.xml:79
+msgid "[StyleBox] used when the [Button] is being hovered."
+msgstr ""
+
+#: doc/classes/Button.xml:82
+msgid "The horizontal space between [Button]'s icon and text."
+msgstr ""
+
+#: doc/classes/Button.xml:85
+msgid "Default [StyleBox] for the [Button]."
+msgstr ""
+
+#: doc/classes/Button.xml:88
+msgid "[StyleBox] used when the [Button] is being pressed."
+msgstr ""
+
+#: doc/classes/ButtonGroup.xml:4
+msgid "Group of Buttons."
+msgstr ""
+
+#: doc/classes/ButtonGroup.xml:7
+msgid ""
+"Group of [Button]. All direct and indirect children buttons become radios. "
+"Only one allows being pressed.\n"
+"[member BaseButton.toggle_mode] should be [code]true[/code]."
+msgstr ""
+
+#: doc/classes/ButtonGroup.xml:17
+msgid ""
+"Returns an [Array] of [Button]s who have this as their [ButtonGroup] (see "
+"[member BaseButton.group])."
+msgstr ""
+
+#: doc/classes/ButtonGroup.xml:24
+msgid "Returns the current pressed button."
+msgstr ""
+
+#: doc/classes/Callable.xml:4
+msgid "An object representing a method in a certain object that can be called."
+msgstr ""
+
+#: doc/classes/Callable.xml:7
+msgid ""
+"[Callable] is a first class object which can be held in variables and passed "
+"to functions. It represents a given method in an [Object], and is typically "
+"used for signal callbacks.\n"
+"[b]Example:[/b]\n"
+"[codeblock]\n"
+"var callable = Callable(self, \"print_args\")\n"
+"func print_args(arg1, arg2, arg3 = \"\"):\n"
+" prints(arg1, arg2, arg3)\n"
+"func test():\n"
+" callable.call(\"hello\", \"world\") # Prints \"hello world\".\n"
+" callable.call(Vector2.UP, 42, callable) # Prints \"(0, -1) 42 Node(Node."
+"gd)::print_args\".\n"
+" callable.call(\"invalid\") # Invalid call, should have at least 2 "
+"arguments.\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Callable.xml:30
+msgid ""
+"Creates a new [Callable] for the method called [code]method_name[/code] in "
+"the specified [code]object[/code]."
+msgstr ""
+
+#: doc/classes/Callable.xml:37
+msgid ""
+"Calls the method represented by this [Callable]. Arguments can be passed and "
+"should match the method's signature."
+msgstr ""
+
+#: doc/classes/Callable.xml:44
+msgid ""
+"Calls the method represented by this [Callable] in deferred mode, i.e. "
+"during the idle frame. Arguments can be passed and should match the method's "
+"signature."
+msgstr ""
+
+#: doc/classes/Callable.xml:51
+msgid "Returns the name of the method represented by this [Callable]."
+msgstr ""
+
+#: doc/classes/Callable.xml:58
+msgid "Returns the object on which this [Callable] is called."
+msgstr ""
+
+#: doc/classes/Callable.xml:65
+msgid ""
+"Returns the ID of this [Callable]'s object (see [method Object."
+"get_instance_id])."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:4
+msgid "Camera node for 2D scenes."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:7
+msgid ""
+"Camera node for 2D scenes. It forces the screen (current layer) to scroll "
+"following this node. This makes it easier (and faster) to program scrollable "
+"scenes than manually changing the position of [CanvasItem]-based nodes.\n"
+"This node is intended to be a simple helper to get things going quickly and "
+"it may happen that more functionality is desired to change how the camera "
+"works. To make your own custom camera node, inherit from [Node2D] and change "
+"the transform of the canvas by setting [member Viewport.canvas_transform] in "
+"[Viewport] (you can obtain the current [Viewport] by using [method Node."
+"get_viewport]).\n"
+"Note that the [Camera2D] node's [code]position[/code] doesn't represent the "
+"actual position of the screen, which may differ due to applied smoothing or "
+"limits. You can use [method get_camera_screen_center] to get the real "
+"position."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:18
+msgid "Aligns the camera to the tracked node."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:25
+msgid ""
+"Removes any [Camera2D] from the ancestor [Viewport]'s internal currently-"
+"assigned camera."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:32
+msgid "Forces the camera to update scroll immediately."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:39
+msgid "Returns the camera position."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:46
+msgid ""
+"Returns the location of the [Camera2D]'s screen-center, relative to the "
+"origin."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:55
+msgid ""
+"Returns the specified margin. See also [member drag_margin_bottom], [member "
+"drag_margin_top], [member drag_margin_left], and [member drag_margin_right]."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:64
+msgid ""
+"Returns the specified camera limit. See also [member limit_bottom], [member "
+"limit_top], [member limit_left], and [member limit_right]."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:71
+msgid ""
+"Make this the current 2D camera for the scene (viewport and layer), in case "
+"there are many cameras in the scene."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:78
+msgid ""
+"Sets the camera's position immediately to its current smoothing "
+"destination.\n"
+"This has no effect if smoothing is disabled."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:90
+msgid ""
+"Sets the specified margin. See also [member drag_margin_bottom], [member "
+"drag_margin_top], [member drag_margin_left], and [member drag_margin_right]."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:101
+msgid ""
+"Sets the specified camera limit. See also [member limit_bottom], [member "
+"limit_top], [member limit_left], and [member limit_right]."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:107
+msgid "The Camera2D's anchor point. See [enum AnchorMode] constants."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:110
+msgid ""
+"If [code]true[/code], the camera is the active camera for the current scene. "
+"Only one camera can be current, so setting a different camera [code]current[/"
+"code] will disable this one."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:113
+msgid ""
+"The custom [Viewport] node attached to the [Camera2D]. If [code]null[/code] "
+"or not a [Viewport], uses the default viewport instead."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:116
+msgid ""
+"Bottom margin needed to drag the camera. A value of [code]1[/code] makes the "
+"camera move only when reaching the edge of the screen."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:119
+msgid ""
+"If [code]true[/code], the camera only moves when reaching the horizontal "
+"drag margins. If [code]false[/code], the camera moves horizontally "
+"regardless of margins."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:122
+msgid ""
+"Left margin needed to drag the camera. A value of [code]1[/code] makes the "
+"camera move only when reaching the edge of the screen."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:125
+msgid ""
+"Right margin needed to drag the camera. A value of [code]1[/code] makes the "
+"camera move only when reaching the edge of the screen."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:128
+msgid ""
+"Top margin needed to drag the camera. A value of [code]1[/code] makes the "
+"camera move only when reaching the edge of the screen."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:131
+msgid ""
+"If [code]true[/code], the camera only moves when reaching the vertical drag "
+"margins. If [code]false[/code], the camera moves vertically regardless of "
+"margins."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:134
+msgid ""
+"If [code]true[/code], draws the camera's drag margin rectangle in the editor."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:137
+msgid ""
+"If [code]true[/code], draws the camera's limits rectangle in the editor."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:140
+msgid ""
+"If [code]true[/code], draws the camera's screen rectangle in the editor."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:143
+msgid ""
+"Bottom scroll limit in pixels. The camera stops moving when reaching this "
+"value."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:146
+msgid ""
+"Left scroll limit in pixels. The camera stops moving when reaching this "
+"value."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:149
+msgid ""
+"Right scroll limit in pixels. The camera stops moving when reaching this "
+"value."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:152
+msgid ""
+"If [code]true[/code], the camera smoothly stops when reaches its limits."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:155
+msgid ""
+"Top scroll limit in pixels. The camera stops moving when reaching this value."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:158
+msgid ""
+"The camera's offset, useful for looking around or camera shake animations."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:161
+msgid ""
+"The horizontal offset of the camera, relative to the drag margins.\n"
+"[b]Note:[/b] Offset H is used only to force offset relative to margins. It's "
+"not updated in any way if drag margins are enabled and can be used to set "
+"initial offset."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:165
+msgid ""
+"The vertical offset of the camera, relative to the drag margins.\n"
+"[b]Note:[/b] Used the same as [member offset_h]."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:169
+msgid "The camera's process callback. See [enum Camera2DProcessMode]."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:172
+msgid "If [code]true[/code], the camera rotates with the target."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:175
+msgid ""
+"If [code]true[/code], the camera smoothly moves towards the target at "
+"[member smoothing_speed]."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:178
+msgid ""
+"Speed in pixels per second of the camera's smoothing effect when [member "
+"smoothing_enabled] is [code]true[/code]."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:181
+msgid ""
+"The camera's zoom relative to the viewport. Values larger than "
+"[code]Vector2(1, 1)[/code] zoom out and smaller values zoom in. For an "
+"example, use [code]Vector2(0.5, 0.5)[/code] for a 2× zoom-in, and "
+"[code]Vector2(4, 4)[/code] for a 4× zoom-out."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:186
+msgid ""
+"The camera's position is fixed so that the top-left corner is always at the "
+"origin."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:189
+msgid ""
+"The camera's position takes into account vertical/horizontal offsets and the "
+"screen size."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:192 doc/classes/ClippedCamera3D.xml:104
+msgid "The camera updates with the [code]_physics_process[/code] callback."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:195 doc/classes/ClippedCamera3D.xml:107
+msgid "The camera updates with the [code]_process[/code] callback."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:4
+msgid "Camera node, displays from a point of view."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:7
+msgid ""
+"[Camera3D] is a special node that displays what is visible from its current "
+"location. Cameras register themselves in the nearest [Viewport] node (when "
+"ascending the tree). Only one camera can be active per viewport. If no "
+"viewport is available ascending the tree, the camera will register in the "
+"global viewport. In other words, a camera just provides 3D display "
+"capabilities to a [Viewport], and, without one, a scene registered in that "
+"[Viewport] (or higher viewports) can't be displayed."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:18
+msgid ""
+"If this is the current camera, remove it from being current. If "
+"[code]enable_next[/code] is [code]true[/code], request to make the next "
+"camera current, if any."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:25
+msgid "Returns the camera's RID from the [RenderingServer]."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:32
+msgid ""
+"Gets the camera transform. Subclassed cameras such as [ClippedCamera3D] may "
+"provide different transforms than the [Node] transform."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:41
+msgid ""
+"Returns [code]true[/code] if the given [code]layer[/code] in the [member "
+"cull_mask] is enabled, [code]false[/code] otherwise."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:48
+msgid ""
+"Returns the camera's frustum planes in world-space units as an array of "
+"[Plane]s in the following order: near, far, left, top, right, bottom. Not to "
+"be confused with [member frustum_offset]."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:57
+msgid ""
+"Returns [code]true[/code] if the given position is behind the camera.\n"
+"[b]Note:[/b] A position which returns [code]false[/code] may still be "
+"outside the camera's field of view."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:65
+msgid ""
+"Makes this camera the current camera for the [Viewport] (see class "
+"description). If the camera node is outside the scene tree, it will attempt "
+"to become current once it's added."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:74
+msgid ""
+"Returns a normal vector from the screen point location directed along the "
+"camera. Orthogonal cameras are normalized. Perspective cameras account for "
+"perspective, screen width/height, etc."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:85
+msgid ""
+"Returns the 3D point in worldspace that maps to the given 2D coordinate in "
+"the [Viewport] rectangle on a plane that is the given [code]z_depth[/code] "
+"distance into the scene away from the camera."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:94
+msgid ""
+"Returns a normal vector in worldspace, that is the result of projecting a "
+"point on the [Viewport] rectangle by the camera projection. This is useful "
+"for casting rays in the form of (origin, normal) for object intersection or "
+"picking."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:103
+msgid ""
+"Returns a 3D position in worldspace, that is the result of projecting a "
+"point on the [Viewport] rectangle by the camera projection. This is useful "
+"for casting rays in the form of (origin, normal) for object intersection or "
+"picking."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:114
+msgid ""
+"Enables or disables the given [code]layer[/code] in the [member cull_mask]."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:129
+msgid ""
+"Sets the camera projection to frustum mode (see [constant "
+"PROJECTION_FRUSTUM]), by specifying a [code]size[/code], an [code]offset[/"
+"code], and the [code]z_near[/code] and [code]z_far[/code] clip planes in "
+"world-space units."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:142
+msgid ""
+"Sets the camera projection to orthogonal mode (see [constant "
+"PROJECTION_ORTHOGONAL]), by specifying a [code]size[/code], and the "
+"[code]z_near[/code] and [code]z_far[/code] clip planes in world-space units. "
+"(As a hint, 2D games often use this projection, with values specified in "
+"pixels.)"
+msgstr ""
+
+#: doc/classes/Camera3D.xml:155
+msgid ""
+"Sets the camera projection to perspective mode (see [constant "
+"PROJECTION_PERSPECTIVE]), by specifying a [code]fov[/code] (field of view) "
+"angle in degrees, and the [code]z_near[/code] and [code]z_far[/code] clip "
+"planes in world-space units."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:164
+msgid ""
+"Returns the 2D coordinate in the [Viewport] rectangle that maps to the given "
+"3D point in worldspace."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:170
+msgid ""
+"The culling mask that describes which 3D render layers are rendered by this "
+"camera."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:173
+msgid ""
+"If [code]true[/code], the ancestor [Viewport] is currently using this camera."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:176
+msgid ""
+"If not [constant DOPPLER_TRACKING_DISABLED], this camera will simulate the "
+"[url=https://en.wikipedia.org/wiki/Doppler_effect]Doppler effect[/url] for "
+"objects changed in particular [code]_process[/code] methods. See [enum "
+"DopplerTracking] for possible values."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:179
+msgid "The [CameraEffects] to use for this camera."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:182
+msgid "The [Environment] to use for this camera."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:185
+msgid ""
+"The distance to the far culling boundary for this camera relative to its "
+"local Z axis."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:188
+msgid ""
+"The camera's field of view angle (in degrees). Only applicable in "
+"perspective mode. Since [member keep_aspect] locks one axis, [code]fov[/"
+"code] sets the other axis' field of view angle.\n"
+"For reference, the default vertical field of view value ([code]75.0[/code]) "
+"is equivalent to an horizontal FOV of:\n"
+"- ~91.31 degrees in a 4:3 viewport\n"
+"- ~101.67 degrees in a 16:10 viewport\n"
+"- ~107.51 degrees in a 16:9 viewport\n"
+"- ~121.63 degrees in a 21:9 viewport"
+msgstr ""
+
+#: doc/classes/Camera3D.xml:196
+msgid ""
+"The camera's frustum offset. This can be changed from the default to create "
+"\"tilted frustum\" effects such as [url=https://zdoom.org/wiki/Y-shearing]Y-"
+"shearing[/url]."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:199
+msgid "The horizontal (X) offset of the camera viewport."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:202
+msgid ""
+"The axis to lock during [member fov]/[member size] adjustments. Can be "
+"either [constant KEEP_WIDTH] or [constant KEEP_HEIGHT]."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:205
+msgid ""
+"The distance to the near culling boundary for this camera relative to its "
+"local Z axis."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:208
+msgid ""
+"The camera's projection mode. In [constant PROJECTION_PERSPECTIVE] mode, "
+"objects' Z distance from the camera's local space scales their perceived "
+"size."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:211
+msgid ""
+"The camera's size measured as 1/2 the width or height. Only applicable in "
+"orthogonal mode. Since [member keep_aspect] locks on axis, [code]size[/code] "
+"sets the other axis' size length."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:214
+msgid "The vertical (Y) offset of the camera viewport."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:219
+msgid ""
+"Perspective projection. Objects on the screen becomes smaller when they are "
+"far away."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:222
+msgid ""
+"Orthogonal projection, also known as orthographic projection. Objects remain "
+"the same size on the screen no matter how far away they are."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:225
+msgid ""
+"Frustum projection. This mode allows adjusting [member frustum_offset] to "
+"create \"tilted frustum\" effects."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:228
+msgid ""
+"Preserves the horizontal aspect ratio; also known as Vert- scaling. This is "
+"usually the best option for projects running in portrait mode, as taller "
+"aspect ratios will benefit from a wider vertical FOV."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:231
+msgid ""
+"Preserves the vertical aspect ratio; also known as Hor+ scaling. This is "
+"usually the best option for projects running in landscape mode, as wider "
+"aspect ratios will automatically benefit from a wider horizontal FOV."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:234
+msgid ""
+"Disables [url=https://en.wikipedia.org/wiki/Doppler_effect]Doppler effect[/"
+"url] simulation (default)."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:237
+msgid ""
+"Simulate [url=https://en.wikipedia.org/wiki/Doppler_effect]Doppler effect[/"
+"url] by tracking positions of objects that are changed in [code]_process[/"
+"code]. Changes in the relative velocity of this camera compared to those "
+"objects affect how Audio is perceived (changing the Audio's [code]pitch "
+"shift[/code])."
+msgstr ""
+
+#: doc/classes/Camera3D.xml:240
+msgid ""
+"Simulate [url=https://en.wikipedia.org/wiki/Doppler_effect]Doppler effect[/"
+"url] by tracking positions of objects that are changed in "
+"[code]_physics_process[/code]. Changes in the relative velocity of this "
+"camera compared to those objects affect how Audio is perceived (changing the "
+"Audio's [code]pitch shift[/code])."
+msgstr ""
+
+#: doc/classes/CameraEffects.xml:4
+msgid ""
+"Contains camera-specific effects such as depth of field and exposure "
+"override."
+msgstr ""
+
+#: doc/classes/CameraEffects.xml:7
+msgid ""
+"Contains camera-specific effects such as depth of field and exposure "
+"override.\n"
+"See also [Environment] for general 3D environment settings."
+msgstr ""
+
+#: doc/classes/CameraEffects.xml:16
+msgid ""
+"The amount of blur for both near and far depth-of-field effects. The amount "
+"of blur increases the radius of the blur effect, making the affected area "
+"blurrier. However, If the amount is too high, you might start to see lines "
+"appearing, especially when using a low quality blur."
+msgstr ""
+
+#: doc/classes/CameraEffects.xml:19
+msgid ""
+"The distance from the camera where the far blur effect affects the rendering."
+msgstr ""
+
+#: doc/classes/CameraEffects.xml:22
+msgid ""
+"If [code]true[/code], enables the depth-of-field far blur effect. This has a "
+"significant performance cost. Consider disabling it in scenes where there "
+"are no far away objects."
+msgstr ""
+
+#: doc/classes/CameraEffects.xml:25
+msgid "The length of the transition between the no-blur area and far blur."
+msgstr ""
+
+#: doc/classes/CameraEffects.xml:28
+msgid ""
+"Distance from the camera where the near blur effect affects the rendering."
+msgstr ""
+
+#: doc/classes/CameraEffects.xml:31
+msgid ""
+"If [code]true[/code], enables the depth-of-field near blur effect. This has "
+"a significant performance cost. Consider disabling it in scenes where there "
+"are no nearby objects."
+msgstr ""
+
+#: doc/classes/CameraEffects.xml:34
+msgid "The length of the transition between the near blur and no-blur area."
+msgstr ""
+
+#: doc/classes/CameraEffects.xml:37
+msgid ""
+"The exposure override value to use. Higher values will result in a brighter "
+"scene. Only effective if [member override_exposure_enabled] is [code]true[/"
+"code]."
+msgstr ""
+
+#: doc/classes/CameraEffects.xml:40
+msgid ""
+"If [code]true[/code], overrides the manual or automatic exposure defined in "
+"the [Environment] with the value in [member override_exposure]."
+msgstr ""
+
+#: doc/classes/CameraFeed.xml:4
+msgid ""
+"A camera feed gives you access to a single physical camera attached to your "
+"device."
+msgstr ""
+
+#: doc/classes/CameraFeed.xml:7
+msgid ""
+"A camera feed gives you access to a single physical camera attached to your "
+"device. When enabled, Godot will start capturing frames from the camera "
+"which can then be used. See also [CameraServer].\n"
+"[b]Note:[/b] 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."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:4
+msgid "Server keeping track of different cameras accessible in Godot."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:7
+msgid ""
+"The [CameraServer] keeps track of different cameras accessible in Godot. "
+"These are external cameras such as webcams or the cameras on your phone.\n"
+"It is notably used to provide AR modules with a video feed from the camera.\n"
+"[b]Note:[/b] This class is currently only implemented on macOS and iOS. On "
+"other platforms, no [CameraFeed]s will be available."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:20
+msgid "Adds the camera [code]feed[/code] to the camera server."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:27
+msgid "Returns an array of [CameraFeed]s."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:36
+msgid ""
+"Returns the [CameraFeed] corresponding to the camera with the given "
+"[code]index[/code]."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:43
+msgid "Returns the number of [CameraFeed]s registered."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:52
+msgid "Removes the specified camera [code]feed[/code]."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:61
+msgid "Emitted when a [CameraFeed] is added (e.g. a webcam is plugged in)."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:68
+msgid "Emitted when a [CameraFeed] is removed (e.g. a webcam is unplugged)."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:74
+msgid "The RGBA camera image."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:77
+msgid "The [url=https://en.wikipedia.org/wiki/YCbCr]YCbCr[/url] camera image."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:80
+msgid "The Y component camera image."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:83
+msgid "The CbCr component camera image."
+msgstr ""
+
+#: doc/classes/CameraTexture.xml:4
+msgid "Texture provided by a [CameraFeed]."
+msgstr ""
+
+#: doc/classes/CameraTexture.xml:7
+msgid ""
+"This texture gives access to the camera texture provided by a [CameraFeed].\n"
+"[b]Note:[/b] Many cameras supply YCbCr images which need to be converted in "
+"a shader."
+msgstr ""
+
+#: doc/classes/CameraTexture.xml:16
+msgid "The ID of the [CameraFeed] for which we want to display the image."
+msgstr ""
+
+#: doc/classes/CameraTexture.xml:19
+msgid ""
+"Convenience property that gives access to the active property of the "
+"[CameraFeed]."
+msgstr ""
+
+#: doc/classes/CameraTexture.xml:22
+msgid ""
+"Which image within the [CameraFeed] we want access to, important if the "
+"camera image is split in a Y and CbCr component."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:4
+msgid "Base class of anything 2D."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:7
+msgid ""
+"Base class of anything 2D. Canvas items are laid out in a tree; children "
+"inherit and extend their parent's transform. [CanvasItem] is extended by "
+"[Control] for anything GUI-related, and by [Node2D] for anything related to "
+"the 2D engine.\n"
+"Any [CanvasItem] can draw. For this, [method update] must be called, then "
+"[constant NOTIFICATION_DRAW] will be received on idle time to request "
+"redraw. Because of this, canvas items don't need to be redrawn on every "
+"frame, improving the performance significantly. Several functions for "
+"drawing on the [CanvasItem] are provided (see [code]draw_*[/code] "
+"functions). However, they can only be used inside the [method Object."
+"_notification], signal or [method _draw] virtual functions.\n"
+"Canvas items are drawn in tree order. By default, children are on top of "
+"their parents so a root [CanvasItem] will be drawn behind everything. This "
+"behavior can be changed on a per-item basis.\n"
+"A [CanvasItem] can also be hidden, which will also hide its children. It "
+"provides many ways to change parameters such as modulation (for itself and "
+"its children) and self modulation (only for itself), as well as its blend "
+"mode.\n"
+"Ultimately, a transform notification can be requested, which will notify the "
+"node that its global position changed in case the parent tree changed.\n"
+"[b]Note:[/b] Unless otherwise specified, all methods that have angle "
+"parameters must have angles specified as [i]radians[/i]. To convert degrees "
+"to radians, use [method @GDScript.deg2rad]."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:15 doc/classes/CanvasLayer.xml:10
+#: doc/classes/InputEvent.xml:11 doc/classes/Viewport.xml:15
+msgid "https://docs.godotengine.org/en/latest/tutorials/2d/2d_transforms.html"
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:16 doc/classes/Control.xml:19
+#: doc/classes/Node2D.xml:10
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/2d/custom_drawing_in_2d.html"
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:23
+msgid ""
+"Overridable function called by the engine (if defined) to draw the canvas "
+"item."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:44
+msgid ""
+"Draws an arc between the given angles. The larger the value of "
+"[code]point_count[/code], the smoother the curve."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:61
+msgid ""
+"Draws a string character using a custom font. Returns the advance, depending "
+"on the character width and kerning with an optional next character."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:74
+msgid "Draws a colored circle."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:99
+msgid "Draws a colored polygon of any amount of points, convex or concave."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:114
+msgid "Draws a line from a 2D point to another, with a given color and width."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:139
+msgid ""
+"Draws a [Mesh] in 2D, using the provided texture. See [MeshInstance2D] for "
+"related documentation."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:152
+msgid "Draws multiple, parallel lines with a uniform [code]color[/code]."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:165
+msgid ""
+"Draws multiple, parallel lines with a uniform [code]width[/code] and segment-"
+"by-segment coloring. Colors assigned to line segments match by index between "
+"[code]points[/code] and [code]colors[/code]."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:186
+msgid ""
+"Draws a [MultiMesh] in 2D with the provided texture. See "
+"[MultiMeshInstance2D] for related documentation."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:211
+msgid "Draws a polygon of any amount of points, convex or concave."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:224
+msgid ""
+"Draws interconnected line segments with a uniform [code]color[/code] and "
+"[code]width[/code]."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:237
+msgid ""
+"Draws interconnected line segments with a uniform [code]width[/code] and "
+"segment-by-segment coloring. Colors assigned to line segments match by index "
+"between [code]points[/code] and [code]colors[/code]."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:264
+msgid ""
+"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."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:279
+msgid ""
+"Draws a rectangle. If [code]filled[/code] is [code]true[/code], the "
+"rectangle will be filled with the [code]color[/code] specified. If "
+"[code]filled[/code] is [code]false[/code], the rectangle will be drawn as a "
+"stroke with the [code]color[/code] and [code]width[/code] specified.\n"
+"[b]Note:[/b] [code]width[/code] is only effective if [code]filled[/code] is "
+"[code]false[/code]."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:293
+msgid ""
+"Sets a custom transform for drawing via components. Anything drawn "
+"afterwards will be transformed by this."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:302
+msgid ""
+"Sets a custom transform for drawing via matrix. Anything drawn afterwards "
+"will be transformed by this."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:319
+msgid ""
+"Draws [code]text[/code] using the specified [code]font[/code] at the "
+"[code]position[/code] (top-left corner). The text will have its color "
+"multiplied by [code]modulate[/code]. If [code]clip_w[/code] is greater than "
+"or equal to 0, the text will be clipped if it exceeds the specified width.\n"
+"[b]Example using the default project font:[/b]\n"
+"[codeblock]\n"
+"# If using this method in a script that redraws constantly, move the\n"
+"# `default_font` declaration to a member variable assigned in `_ready()`\n"
+"# so the Control is only created once.\n"
+"var default_font = Control.new().get_font(\"font\")\n"
+"draw_string(default_font, Vector2(64, 64), \"Hello world\")\n"
+"[/codeblock]\n"
+"See also [method Font.draw]."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:339
+msgid "Draws a styled rectangle."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:362
+msgid "Draws a texture at a given position."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:389
+msgid ""
+"Draws a textured rectangle at a given position, optionally modulated by a "
+"color. If [code]transpose[/code] is [code]true[/code], the texture will have "
+"its X and Y coordinates swapped."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:418
+msgid ""
+"Draws a textured rectangle region at a given position, optionally modulated "
+"by a color. If [code]transpose[/code] is [code]true[/code], the texture will "
+"have its X and Y coordinates swapped."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:425 doc/classes/Node3D.xml:19
+msgid ""
+"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."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:432
+msgid "Returns the [RID] of the [World2D] canvas where this item is in."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:439
+msgid "Returns the canvas item RID used by [RenderingServer] for this item."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:446
+msgid "Returns the transform matrix of this item's canvas."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:453
+msgid "Returns the global position of the mouse."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:460
+msgid "Returns the global transform matrix of this item."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:467
+msgid ""
+"Returns the global transform matrix of this item in relation to the canvas."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:474
+msgid "Returns the mouse position relative to this item's position."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:481
+msgid "Returns the transform matrix of this item."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:488
+msgid "Returns the viewport's boundaries as a [Rect2]."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:495
+msgid "Returns this item's transform in relation to the viewport."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:502
+msgid "Returns the [World2D] where this item is in."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:509
+msgid "Hide the [CanvasItem] if it's currently visible."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:516
+msgid ""
+"Returns [code]true[/code] if local transform notifications are communicated "
+"to children."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:523
+msgid ""
+"Returns [code]true[/code] if the node is set as top-level. See [method "
+"set_as_toplevel]."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:530
+msgid ""
+"Returns [code]true[/code] if global transform notifications are communicated "
+"to children."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:537 doc/classes/Node3D.xml:104
+msgid ""
+"Returns [code]true[/code] if the node is present in the [SceneTree], its "
+"[member visible] property is [code]true[/code] and all its antecedents are "
+"also visible. If any antecedent is hidden, this node will not be visible in "
+"the scene tree."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:546
+msgid "Assigns [code]screen_point[/code] as this node's new local transform."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:555
+msgid ""
+"Transformations issued by [code]event[/code]'s inputs are applied in local "
+"space instead of global space."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:564
+msgid ""
+"If [code]enable[/code] is [code]true[/code], the node won't inherit its "
+"transform from parent canvas items."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:573
+msgid ""
+"If [code]enable[/code] is [code]true[/code], children will be updated with "
+"local transform data."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:582
+msgid ""
+"If [code]enable[/code] is [code]true[/code], children will be updated with "
+"global transform data."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:589
+msgid ""
+"Show the [CanvasItem] if it's currently hidden. For controls that inherit "
+"[Popup], the correct way to make them visible is to call one of the multiple "
+"[code]popup*()[/code] functions instead."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:596
+msgid ""
+"Queue the [CanvasItem] for update. [constant NOTIFICATION_DRAW] will be "
+"called on idle time to request redraw."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:602
+msgid ""
+"The rendering layers in which this [CanvasItem] responds to [Light2D] nodes."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:605
+msgid "The material applied to textures on this [CanvasItem]."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:608
+msgid "The color applied to textures on this [CanvasItem]."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:611
+msgid ""
+"The color applied to textures on this [CanvasItem]. This is not inherited by "
+"children [CanvasItem]s."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:614
+msgid "If [code]true[/code], the object draws behind its parent."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:617
+msgid "If [code]true[/code], the object draws on top of its parent."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:620
+msgid "The texture filtering mode to use on this [CanvasItem]."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:623
+msgid "The texture repeating mode to use on this [CanvasItem]."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:626
+msgid ""
+"If [code]true[/code], the parent [CanvasItem]'s [member material] property "
+"is used as this one's material."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:629
+msgid ""
+"If [code]true[/code], this [CanvasItem] is drawn. The node is only visible "
+"if all of its antecedents are visible as well (in other words, [method "
+"is_visible_in_tree] must return [code]true[/code]).\n"
+"[b]Note:[/b] For controls that inherit [Popup], the correct way to make them "
+"visible is to call one of the multiple [code]popup*()[/code] functions "
+"instead."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:636
+msgid ""
+"Emitted when the [CanvasItem] must redraw. This can only be connected "
+"realtime, as deferred will not allow drawing."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:641
+msgid "Emitted when becoming hidden."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:646
+msgid "Emitted when the item rect has changed."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:651
+msgid "Emitted when the visibility (hidden/visible) changes."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:657
+msgid ""
+"The [CanvasItem]'s transform has changed. This notification is only received "
+"if enabled by [method set_notify_transform] or [method "
+"set_notify_local_transform]."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:660
+msgid "The [CanvasItem] is requested to draw."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:663
+msgid "The [CanvasItem]'s visibility has changed."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:666
+msgid "The [CanvasItem] has entered the canvas."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:669
+msgid "The [CanvasItem] has exited the canvas."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:672 doc/classes/CanvasItem.xml:698
+msgid "The [CanvasItem] will inherit the filter from its parent."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:675
+msgid ""
+"The texture filter reads from the nearest pixel only. The simplest and "
+"fastest method of filtering. Useful for pixel art."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:678
+msgid ""
+"The texture filter blends between the nearest four pixels. Use this for most "
+"cases where you want to avoid a pixelated style."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:681
+msgid ""
+"The texture filter reads from the nearest pixel in the nearest mipmap. This "
+"is the fastest way to read from textures with mipmaps."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:684
+msgid ""
+"The texture filter blends between the nearest 4 pixels and between the "
+"nearest 2 mipmaps. Use this for non-pixel art textures that may be viewed at "
+"a low scale (e.g. due to [Camera2D] zoom), as mipmaps are important to "
+"smooth out pixels that are smaller than on-screen pixels."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:687
+msgid ""
+"The texture filter reads from the nearest pixel, but selects a mipmap based "
+"on the angle between the surface and the camera view. This reduces artifacts "
+"on surfaces that are almost in line with the camera.\n"
+"[b]Note:[/b] This texture filter is rarely useful in 2D projects. [constant "
+"TEXTURE_FILTER_NEAREST_WITH_MIPMAPS] is usually more appropriate."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:691
+msgid ""
+"The texture filter blends between the nearest 4 pixels and selects a mipmap "
+"based on the angle between the surface and the camera view. This reduces "
+"artifacts on surfaces that are almost in line with the camera. This is the "
+"slowest of the filtering options, but results in the highest quality "
+"texturing.\n"
+"[b]Note:[/b] This texture filter is rarely useful in 2D projects. [constant "
+"TEXTURE_FILTER_LINEAR_WITH_MIPMAPS] is usually more appropriate."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:701
+msgid "Texture will not repeat."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:704
+msgid "Texture will repeat normally."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:707
+msgid ""
+"Texture will repeat in a 2x2 tiled mode, where elements at even positions "
+"are mirrored."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:710
+msgid "Represents the size of the [enum TextureRepeat] enum."
+msgstr ""
+
+#: doc/classes/CanvasItemMaterial.xml:4
+msgid "A material for [CanvasItem]s."
+msgstr ""
+
+#: doc/classes/CanvasItemMaterial.xml:7
+msgid ""
+"[CanvasItemMaterial]s provide a means of modifying the textures associated "
+"with a CanvasItem. They specialize in describing blend and lighting "
+"behaviors for textures. Use a [ShaderMaterial] to more fully customize a "
+"material's interactions with a [CanvasItem]."
+msgstr ""
+
+#: doc/classes/CanvasItemMaterial.xml:15
+msgid ""
+"The manner in which a material's rendering is applied to underlying textures."
+msgstr ""
+
+#: doc/classes/CanvasItemMaterial.xml:18
+msgid "The manner in which material reacts to lighting."
+msgstr ""
+
+#: doc/classes/CanvasItemMaterial.xml:21
+msgid ""
+"The number of columns in the spritesheet assigned as [Texture2D] for a "
+"[GPUParticles2D] or [CPUParticles2D].\n"
+"[b]Note:[/b] This property is only used and visible in the editor if [member "
+"particles_animation] is [code]true[/code]."
+msgstr ""
+
+#: doc/classes/CanvasItemMaterial.xml:25
+msgid ""
+"If [code]true[/code], the particles animation will loop.\n"
+"[b]Note:[/b] This property is only used and visible in the editor if [member "
+"particles_animation] is [code]true[/code]."
+msgstr ""
+
+#: doc/classes/CanvasItemMaterial.xml:29
+msgid ""
+"The number of rows in the spritesheet assigned as [Texture2D] for a "
+"[GPUParticles2D] or [CPUParticles2D].\n"
+"[b]Note:[/b] This property is only used and visible in the editor if [member "
+"particles_animation] is [code]true[/code]."
+msgstr ""
+
+#: doc/classes/CanvasItemMaterial.xml:33
+msgid ""
+"If [code]true[/code], enable spritesheet-based animation features when "
+"assigned to [GPUParticles2D] and [CPUParticles2D] nodes. The [member "
+"ParticlesMaterial.anim_speed] or [member CPUParticles2D.anim_speed] should "
+"also be set to a positive value for the animation to play.\n"
+"This property (and other [code]particles_anim_*[/code] properties that "
+"depend on it) has no effect on other types of nodes."
+msgstr ""
+
+#: doc/classes/CanvasItemMaterial.xml:39
+msgid ""
+"Mix blending mode. Colors are assumed to be independent of the alpha "
+"(opacity) value."
+msgstr ""
+
+#: doc/classes/CanvasItemMaterial.xml:42
+msgid "Additive blending mode."
+msgstr ""
+
+#: doc/classes/CanvasItemMaterial.xml:45
+msgid "Subtractive blending mode."
+msgstr ""
+
+#: doc/classes/CanvasItemMaterial.xml:48
+msgid "Multiplicative blending mode."
+msgstr ""
+
+#: doc/classes/CanvasItemMaterial.xml:51
+msgid ""
+"Mix blending mode. Colors are assumed to be premultiplied by the alpha "
+"(opacity) value."
+msgstr ""
+
+#: doc/classes/CanvasItemMaterial.xml:54
+msgid ""
+"Render the material using both light and non-light sensitive material "
+"properties."
+msgstr ""
+
+#: doc/classes/CanvasItemMaterial.xml:57
+msgid "Render the material as if there were no light."
+msgstr ""
+
+#: doc/classes/CanvasItemMaterial.xml:60
+msgid "Render the material as if there were only light."
+msgstr ""
+
+#: doc/classes/CanvasLayer.xml:4
+msgid "Canvas drawing layer."
+msgstr ""
+
+#: doc/classes/CanvasLayer.xml:7
+msgid ""
+"Canvas drawing layer. [CanvasItem] nodes that are direct or indirect "
+"children of a [CanvasLayer] will be drawn in that layer. The layer is a "
+"numeric index that defines the draw order. The default 2D scene renders with "
+"index 0, so a [CanvasLayer] with index -1 will be drawn below, and one with "
+"index 1 will be drawn above. This is very useful for HUDs (in layer 1+ or "
+"above), or backgrounds (in layer -1 or below)."
+msgstr ""
+
+#: doc/classes/CanvasLayer.xml:11
+msgid "https://docs.godotengine.org/en/latest/tutorials/2d/canvas_layers.html"
+msgstr ""
+
+#: doc/classes/CanvasLayer.xml:18
+msgid "Returns the RID of the canvas used by this layer."
+msgstr ""
+
+#: doc/classes/CanvasLayer.xml:24
+msgid ""
+"The custom [Viewport] node assigned to the [CanvasLayer]. If [code]null[/"
+"code], uses the default viewport instead."
+msgstr ""
+
+#: doc/classes/CanvasLayer.xml:27
+msgid ""
+"Sets the layer to follow the viewport in order to simulate a pseudo 3D "
+"effect."
+msgstr ""
+
+#: doc/classes/CanvasLayer.xml:30
+msgid ""
+"Scales the layer when using [member follow_viewport_enable]. Layers moving "
+"into the foreground should have increasing scales, while layers moving into "
+"the background should have decreasing scales."
+msgstr ""
+
+#: doc/classes/CanvasLayer.xml:33
+msgid "Layer index for draw order. Lower values are drawn first."
+msgstr ""
+
+#: doc/classes/CanvasLayer.xml:36
+msgid "The layer's base offset."
+msgstr ""
+
+#: doc/classes/CanvasLayer.xml:39
+msgid "The layer's rotation in radians."
+msgstr ""
+
+#: doc/classes/CanvasLayer.xml:42
+msgid "The layer's rotation in degrees."
+msgstr ""
+
+#: doc/classes/CanvasLayer.xml:45
+msgid "The layer's scale."
+msgstr ""
+
+#: doc/classes/CanvasLayer.xml:48
+msgid "The layer's transform."
+msgstr ""
+
+#: doc/classes/CanvasModulate.xml:4
+msgid "Tint the entire canvas."
+msgstr ""
+
+#: doc/classes/CanvasModulate.xml:7
+msgid ""
+"[CanvasModulate] tints the canvas elements using its assigned [member color]."
+msgstr ""
+
+#: doc/classes/CanvasModulate.xml:15
+msgid "The tint color to apply."
+msgstr ""
+
+#: doc/classes/CapsuleMesh.xml:4 doc/classes/CapsuleMesh.xml:7
+msgid "Class representing a capsule-shaped [PrimitiveMesh]."
+msgstr ""
+
+#: doc/classes/CapsuleMesh.xml:15
+msgid "Height of the capsule mesh from the center point."
+msgstr ""
+
+#: doc/classes/CapsuleMesh.xml:18
+msgid "Number of radial segments on the capsule mesh."
+msgstr ""
+
+#: doc/classes/CapsuleMesh.xml:21
+msgid "Radius of the capsule mesh."
+msgstr ""
+
+#: doc/classes/CapsuleMesh.xml:24
+msgid "Number of rings along the height of the capsule."
+msgstr ""
+
+#: doc/classes/CapsuleShape2D.xml:4 doc/classes/CapsuleShape2D.xml:7
+msgid "Capsule shape for 2D collisions."
+msgstr ""
+
+#: doc/classes/CapsuleShape2D.xml:15 doc/classes/CapsuleShape3D.xml:15
+msgid "The capsule's height."
+msgstr ""
+
+#: doc/classes/CapsuleShape2D.xml:18 doc/classes/CapsuleShape3D.xml:18
+msgid "The capsule's radius."
+msgstr ""
+
+#: doc/classes/CapsuleShape3D.xml:4 doc/classes/CapsuleShape3D.xml:7
+msgid "Capsule shape for collisions."
+msgstr ""
+
+#: doc/classes/CenterContainer.xml:4
+msgid "Keeps children controls centered."
+msgstr ""
+
+#: doc/classes/CenterContainer.xml:7
+msgid ""
+"CenterContainer keeps children controls centered. This container keeps all "
+"children to their minimum size, in the center."
+msgstr ""
+
+#: doc/classes/CenterContainer.xml:15
+msgid ""
+"If [code]true[/code], centers children relative to the [CenterContainer]'s "
+"top left corner."
+msgstr ""
+
+#: doc/classes/CharFXTransform.xml:4
+msgid ""
+"Controls how an individual character will be displayed in a [RichTextEffect]."
+msgstr ""
+
+#: doc/classes/CharFXTransform.xml:7
+msgid ""
+"By setting various properties on this object, you can control how individual "
+"characters will be displayed in a [RichTextEffect]."
+msgstr ""
+
+#: doc/classes/CharFXTransform.xml:10 doc/classes/RichTextEffect.xml:16
+#: doc/classes/RichTextLabel.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/gui/bbcode_in_richtextlabel."
+"html"
+msgstr ""
+
+#: doc/classes/CharFXTransform.xml:11 doc/classes/RichTextEffect.xml:17
+msgid ""
+"https://github.com/Eoin-ONeill-Yokai/Godot-Rich-Text-Effect-Test-Project"
+msgstr ""
+
+#: doc/classes/CharFXTransform.xml:17 doc/classes/CharFXTransform.xml:45
+msgid ""
+"The index of the current character (starting from 0). Setting this property "
+"won't affect drawing."
+msgstr ""
+
+#: doc/classes/CharFXTransform.xml:20
+msgid ""
+"The Unicode codepoint the character will use. This only affects non-"
+"whitespace characters. [method @GDScript.ord] can be useful here. For "
+"example, the following will replace all characters with asterisks:\n"
+"[codeblock]\n"
+"# `char_fx` is the CharFXTransform parameter from `_process_custom_fx()`.\n"
+"# See the RichTextEffect documentation for details.\n"
+"char_fx.character = ord(\"*\")\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/CharFXTransform.xml:28
+msgid "The color the character will be drawn with."
+msgstr ""
+
+#: doc/classes/CharFXTransform.xml:31
+msgid ""
+"The time elapsed since the [RichTextLabel] was added to the scene tree (in "
+"seconds). Time stops when the project is paused, unless the "
+"[RichTextLabel]'s [member Node.pause_mode] is set to [constant Node."
+"PAUSE_MODE_PROCESS].\n"
+"[b]Note:[/b] Time still passes while the [RichTextLabel] is hidden."
+msgstr ""
+
+#: doc/classes/CharFXTransform.xml:35
+msgid ""
+"Contains the arguments passed in the opening BBCode tag. By default, "
+"arguments are strings; if their contents match a type such as [bool], [int] "
+"or [float], they will be converted automatically. Color codes in the form "
+"[code]#rrggbb[/code] or [code]#rgb[/code] will be converted to an opaque "
+"[Color]. String arguments may not contain spaces, even if they're quoted. If "
+"present, quotes will also be present in the final string.\n"
+"For example, the opening BBCode tag [code][example foo=hello bar=true baz=42 "
+"color=#ffffff][/code] will map to the following [Dictionary]:\n"
+"[codeblock]\n"
+"{\"foo\": \"hello\", \"bar\": true, \"baz\": 42, \"color\": Color(1, 1, 1, "
+"1)}\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/CharFXTransform.xml:42
+msgid "The position offset the character will be drawn with (in pixels)."
+msgstr ""
+
+#: doc/classes/CharFXTransform.xml:48
+msgid ""
+"If [code]true[/code], the character will be drawn. If [code]false[/code], "
+"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 [member color] to [code]Color(1, 1, 1, 0)[/code] instead."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:4
+msgid "Binary choice user interface widget. See also [CheckButton]."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:7
+msgid ""
+"A checkbox allows the user to make a binary choice (choosing only one of two "
+"possible options). It's similar to [CheckButton] in functionality, but it "
+"has a different appearance. To follow established UX patterns, it's "
+"recommended to use CheckBox when toggling it has [b]no[/b] immediate effect "
+"on something. For instance, it should be used when toggling it will only do "
+"something once a confirmation button is pressed."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:21
+msgid "The vertical offset used when rendering the check icons (in pixels)."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:24
+msgid "The check icon to display when the [CheckBox] is checked."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:27
+msgid ""
+"The [StyleBox] to display as a background when the [CheckBox] is disabled."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:30
+msgid ""
+"The [StyleBox] to display as a background when the [CheckBox] is focused."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:33
+msgid "The [Font] to use for the [CheckBox] text."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:36
+msgid "The [CheckBox] text's font color."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:39
+msgid "The [CheckBox] text's font color when it's disabled."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:42
+msgid "The [CheckBox] text's font color when it's hovered."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:45
+msgid "The [CheckBox] text's font color when it's hovered and pressed."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:48
+msgid "The [CheckBox] text's font color when it's pressed."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:51
+msgid ""
+"The [StyleBox] to display as a background when the [CheckBox] is hovered."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:54
+msgid ""
+"The [StyleBox] to display as a background when the [CheckBox] is hovered and "
+"pressed."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:57
+msgid "The separation between the check icon and the text (in pixels)."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:60 doc/classes/CheckButton.xml:57
+msgid "The [StyleBox] to display as a background."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:63
+msgid ""
+"The [StyleBox] to display as a background when the [CheckBox] is pressed."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:66
+msgid ""
+"If the [CheckBox] is configured as a radio button, the icon to display when "
+"the [CheckBox] is checked."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:69
+msgid ""
+"If the [CheckBox] is configured as a radio button, the icon to display when "
+"the [CheckBox] is unchecked."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:72
+msgid "The check icon to display when the [CheckBox] is unchecked."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:4
+msgid "Checkable button. See also [CheckBox]."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:7
+msgid ""
+"CheckButton is a toggle button displayed as a check field. It's similar to "
+"[CheckBox] in functionality, but it has a different appearance. To follow "
+"established UX patterns, it's recommended to use CheckButton when toggling "
+"it has an [b]immediate[/b] effect on something. For instance, it should be "
+"used if toggling it enables/disables a setting without requiring the user to "
+"press a confirmation button."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:21
+msgid "The vertical offset used when rendering the toggle icons (in pixels)."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:24
+msgid ""
+"The [StyleBox] to display as a background when the [CheckButton] is disabled."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:27
+msgid ""
+"The [StyleBox] to display as a background when the [CheckButton] is focused."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:30
+msgid "The [Font] to use for the [CheckButton] text."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:33
+msgid "The [CheckButton] text's font color."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:36
+msgid "The [CheckButton] text's font color when it's disabled."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:39
+msgid "The [CheckButton] text's font color when it's hovered."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:42
+msgid "The [CheckButton] text's font color when it's hovered and pressed."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:45
+msgid "The [CheckButton] text's font color when it's pressed."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:48
+msgid ""
+"The [StyleBox] to display as a background when the [CheckButton] is hovered."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:51
+msgid ""
+"The [StyleBox] to display as a background when the [CheckButton] is hovered "
+"and pressed."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:54
+msgid "The separation between the toggle icon and the text (in pixels)."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:60
+msgid "The icon to display when the [CheckButton] is unchecked."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:63
+msgid "The icon to display when the [CheckButton] is unchecked and disabled."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:66
+msgid "The icon to display when the [CheckButton] is checked."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:69
+msgid "The icon to display when the [CheckButton] is checked and disabled."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:72
+msgid ""
+"The [StyleBox] to display as a background when the [CheckButton] is pressed."
+msgstr ""
+
+#: doc/classes/CircleShape2D.xml:4
+msgid "Circular shape for 2D collisions."
+msgstr ""
+
+#: doc/classes/CircleShape2D.xml:7
+msgid ""
+"Circular shape for 2D collisions. This shape is useful for modeling balls or "
+"small characters and its collision detection with everything else is very "
+"fast."
+msgstr ""
+
+#: doc/classes/CircleShape2D.xml:15
+msgid "The circle's radius."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:4
+msgid "Class information repository."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:7
+msgid "Provides access to metadata stored for every available class."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:18
+msgid ""
+"Returns [code]true[/code] if you can instance objects from the specified "
+"[code]class[/code], [code]false[/code] in other case."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:27
+msgid "Returns whether the specified [code]class[/code] is available or not."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:36
+msgid ""
+"Returns a category associated with the class for use in documentation and "
+"the Asset Library. Debug mode required."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:47
+msgid ""
+"Returns the value of the integer constant [code]name[/code] of [code]class[/"
+"code] or its ancestry. Always returns 0 when the constant could not be found."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:58
+msgid ""
+"Returns an array with the names all the integer constants of [code]class[/"
+"code] or its ancestry."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:69
+msgid ""
+"Returns an array with all the methods of [code]class[/code] or its ancestry "
+"if [code]no_inheritance[/code] is [code]false[/code]. Every element of the "
+"array is a [Dictionary] with the following keys: [code]args[/code], "
+"[code]default_args[/code], [code]flags[/code], [code]id[/code], [code]name[/"
+"code], [code]return: (class_name, hint, hint_string, name, type, usage)[/"
+"code]."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:80
+msgid ""
+"Returns the value of [code]property[/code] of [code]class[/code] or its "
+"ancestry."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:91
+msgid ""
+"Returns an array with all the properties of [code]class[/code] or its "
+"ancestry if [code]no_inheritance[/code] is [code]false[/code]."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:102
+msgid ""
+"Returns the [code]signal[/code] data of [code]class[/code] or its ancestry. "
+"The returned value is a [Dictionary] with the following keys: [code]args[/"
+"code], [code]default_args[/code], [code]flags[/code], [code]id[/code], "
+"[code]name[/code], [code]return: (class_name, hint, hint_string, name, type, "
+"usage)[/code]."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:113
+msgid ""
+"Returns an array with all the signals of [code]class[/code] or its ancestry "
+"if [code]no_inheritance[/code] is [code]false[/code]. Every element of the "
+"array is a [Dictionary] as described in [method class_get_signal]."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:124
+msgid ""
+"Returns whether [code]class[/code] or its ancestry has an integer constant "
+"called [code]name[/code] or not."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:137
+msgid ""
+"Returns whether [code]class[/code] (or its ancestry if [code]no_inheritance[/"
+"code] is [code]false[/code]) has a method called [code]method[/code] or not."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:148
+msgid ""
+"Returns whether [code]class[/code] or its ancestry has a signal called "
+"[code]signal[/code] or not."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:161
+msgid ""
+"Sets [code]property[/code] value of [code]class[/code] to [code]value[/code]."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:168
+msgid "Returns the names of all the classes available."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:177
+msgid ""
+"Returns the names of all the classes that directly or indirectly inherit "
+"from [code]class[/code]."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:186
+msgid "Returns the parent class of [code]class[/code]."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:195
+msgid "Creates an instance of [code]class[/code]."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:204
+msgid "Returns whether this [code]class[/code] is enabled or not."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:215
+msgid ""
+"Returns whether [code]inherits[/code] is an ancestor of [code]class[/code] "
+"or not."
+msgstr ""
+
+#: doc/classes/ClippedCamera3D.xml:4
+msgid "A [Camera3D] that includes collision."
+msgstr ""
+
+#: doc/classes/ClippedCamera3D.xml:7
+msgid ""
+"This node extends [Camera3D] to add collisions with [Area3D] and/or "
+"[PhysicsBody3D] nodes. The camera cannot move through colliding objects."
+msgstr ""
+
+#: doc/classes/ClippedCamera3D.xml:18
+msgid ""
+"Adds a collision exception so the camera does not collide with the specified "
+"node."
+msgstr ""
+
+#: doc/classes/ClippedCamera3D.xml:27
+msgid ""
+"Adds a collision exception so the camera does not collide with the specified "
+"[RID]."
+msgstr ""
+
+#: doc/classes/ClippedCamera3D.xml:34
+msgid "Removes all collision exceptions."
+msgstr ""
+
+#: doc/classes/ClippedCamera3D.xml:41
+msgid "Returns the distance the camera has been offset due to a collision."
+msgstr ""
+
+#: doc/classes/ClippedCamera3D.xml:50
+msgid ""
+"Returns [code]true[/code] if the specified bit index is on.\n"
+"[b]Note:[/b] Bit indices range from 0-19."
+msgstr ""
+
+#: doc/classes/ClippedCamera3D.xml:60
+msgid "Removes a collision exception with the specified node."
+msgstr ""
+
+#: doc/classes/ClippedCamera3D.xml:69
+msgid "Removes a collision exception with the specified [RID]."
+msgstr ""
+
+#: doc/classes/ClippedCamera3D.xml:80
+msgid ""
+"Sets the specified bit index to the [code]value[/code].\n"
+"[b]Note:[/b] Bit indices range from 0-19."
+msgstr ""
+
+#: doc/classes/ClippedCamera3D.xml:87
+msgid "If [code]true[/code], the camera stops on contact with [Area3D]s."
+msgstr ""
+
+#: doc/classes/ClippedCamera3D.xml:90
+msgid ""
+"If [code]true[/code], the camera stops on contact with [PhysicsBody3D]s."
+msgstr ""
+
+#: doc/classes/ClippedCamera3D.xml:93
+msgid ""
+"The camera's collision mask. Only objects in at least one collision layer "
+"matching the mask will be detected."
+msgstr ""
+
+#: doc/classes/ClippedCamera3D.xml:96
+msgid ""
+"The camera's collision margin. The camera can't get closer than this "
+"distance to a colliding object."
+msgstr ""
+
+#: doc/classes/ClippedCamera3D.xml:99
+msgid "The camera's process callback. See [enum ProcessMode]."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:4
+msgid "Base node for 2D collision objects."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:7
+msgid ""
+"CollisionObject2D is the base class for 2D physics objects. It can hold any "
+"number of 2D collision [Shape2D]s. Each shape must be assigned to a [i]shape "
+"owner[/i]. The CollisionObject2D can have any number of shape owners. Shape "
+"owners are not nodes and do not appear in the editor, but are accessible "
+"through code using the [code]shape_owner_*[/code] methods."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:22
+msgid ""
+"Accepts unhandled [InputEvent]s. Requires [member input_pickable] to be "
+"[code]true[/code]. [code]shape_idx[/code] is the child index of the clicked "
+"[Shape2D]. Connect to the [code]input_event[/code] signal to easily pick up "
+"these events."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:31 doc/classes/CollisionObject3D.xml:35
+msgid ""
+"Creates a new shape owner for the given object. Returns [code]owner_id[/"
+"code] of the new owner for future reference."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:38 doc/classes/CollisionObject3D.xml:42
+msgid "Returns the object's [RID]."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:47
+msgid ""
+"Returns the [code]one_way_collision_margin[/code] of the shape owner "
+"identified by given [code]owner_id[/code]."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:54 doc/classes/CollisionObject3D.xml:49
+msgid ""
+"Returns an [Array] of [code]owner_id[/code] identifiers. You can use these "
+"ids in other methods that take [code]owner_id[/code] as an argument."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:63 doc/classes/CollisionObject3D.xml:58
+msgid "If [code]true[/code], the shape owner and its shapes are disabled."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:72
+msgid ""
+"Returns [code]true[/code] if collisions for the shape owner originating from "
+"this [CollisionObject2D] will not be reported to collided with "
+"[CollisionObject2D]s."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:81 doc/classes/CollisionObject3D.xml:67
+msgid "Removes the given shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:90 doc/classes/CollisionObject3D.xml:76
+msgid "Returns the [code]owner_id[/code] of the given shape."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:101
+msgid "Adds a [Shape2D] to the shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:110 doc/classes/CollisionObject3D.xml:96
+msgid "Removes all shapes from the shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:119 doc/classes/CollisionObject3D.xml:105
+msgid "Returns the parent object of the given shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:130
+msgid "Returns the [Shape2D] with the given id from the given shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:139 doc/classes/CollisionObject3D.xml:125
+msgid "Returns the number of shapes the given shape owner contains."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:150
+msgid ""
+"Returns the child index of the [Shape2D] with the given id from the given "
+"shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:159
+msgid "Returns the shape owner's [Transform2D]."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:170 doc/classes/CollisionObject3D.xml:156
+msgid "Removes a shape from the given shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:181 doc/classes/CollisionObject3D.xml:167
+msgid "If [code]true[/code], disables the given shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:192
+msgid ""
+"If [code]enable[/code] is [code]true[/code], collisions for the shape owner "
+"originating from this [CollisionObject2D] will not be reported to collided "
+"with [CollisionObject2D]s."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:203
+msgid ""
+"Sets the [code]one_way_collision_margin[/code] of the shape owner identified "
+"by given [code]owner_id[/code] to [code]margin[/code] pixels."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:214
+msgid "Sets the [Transform2D] of the given shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:220
+msgid ""
+"If [code]true[/code], this object is pickable. A pickable object can detect "
+"the mouse pointer entering/leaving, and if the mouse is inside it, report "
+"input events. Requires at least one [code]collision_layer[/code] bit to be "
+"set."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:232
+msgid ""
+"Emitted when an input event occurs. Requires [member input_pickable] to be "
+"[code]true[/code] and at least one [code]collision_layer[/code] bit to be "
+"set. See [method _input_event] for details."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:237
+msgid ""
+"Emitted when the mouse pointer enters any of this object's shapes. Requires "
+"[member input_pickable] to be [code]true[/code] and at least one "
+"[code]collision_layer[/code] bit to be set."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:242
+msgid ""
+"Emitted when the mouse pointer exits all this object's shapes. Requires "
+"[member input_pickable] to be [code]true[/code] and at least one "
+"[code]collision_layer[/code] bit to be set."
+msgstr ""
+
+#: doc/classes/CollisionObject3D.xml:4
+msgid "Base node for collision objects."
+msgstr ""
+
+#: doc/classes/CollisionObject3D.xml:7
+msgid ""
+"CollisionObject3D is the base class for physics objects. It can hold any "
+"number of collision [Shape3D]s. Each shape must be assigned to a [i]shape "
+"owner[/i]. The CollisionObject3D can have any number of shape owners. Shape "
+"owners are not nodes and do not appear in the editor, but are accessible "
+"through code using the [code]shape_owner_*[/code] methods."
+msgstr ""
+
+#: doc/classes/CollisionObject3D.xml:26
+msgid ""
+"Accepts unhandled [InputEvent]s. [code]click_position[/code] is the clicked "
+"location in world space and [code]click_normal[/code] is the normal vector "
+"extending from the clicked surface of the [Shape3D] at [code]shape_idx[/"
+"code]. Connect to the [code]input_event[/code] signal to easily pick up "
+"these events."
+msgstr ""
+
+#: doc/classes/CollisionObject3D.xml:87
+msgid "Adds a [Shape3D] to the shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject3D.xml:116
+msgid "Returns the [Shape3D] with the given id from the given shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject3D.xml:136
+msgid ""
+"Returns the child index of the [Shape3D] with the given id from the given "
+"shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject3D.xml:145
+msgid "Returns the shape owner's [Transform]."
+msgstr ""
+
+#: doc/classes/CollisionObject3D.xml:178
+msgid "Sets the [Transform] of the given shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject3D.xml:184
+msgid ""
+"If [code]true[/code], the [CollisionObject3D] will continue to receive input "
+"events as the mouse is dragged across its shapes."
+msgstr ""
+
+#: doc/classes/CollisionObject3D.xml:187
+msgid ""
+"If [code]true[/code], the [CollisionObject3D]'s shapes will respond to "
+"[RayCast3D]s."
+msgstr ""
+
+#: doc/classes/CollisionObject3D.xml:203
+msgid ""
+"Emitted when [method _input_event] receives an event. See its description "
+"for details."
+msgstr ""
+
+#: doc/classes/CollisionObject3D.xml:208
+msgid "Emitted when the mouse pointer enters any of this object's shapes."
+msgstr ""
+
+#: doc/classes/CollisionObject3D.xml:213
+msgid "Emitted when the mouse pointer exits all this object's shapes."
+msgstr ""
+
+#: doc/classes/CollisionPolygon2D.xml:4
+msgid "Defines a 2D collision polygon."
+msgstr ""
+
+#: doc/classes/CollisionPolygon2D.xml:7
+msgid ""
+"Provides a 2D collision polygon to a [CollisionObject2D] parent. Polygons "
+"can be drawn in the editor or specified by a list of vertices."
+msgstr ""
+
+#: doc/classes/CollisionPolygon2D.xml:15
+msgid "Collision build mode. Use one of the [enum BuildMode] constants."
+msgstr ""
+
+#: doc/classes/CollisionPolygon2D.xml:18
+msgid "If [code]true[/code], no collisions will be detected."
+msgstr ""
+
+#: doc/classes/CollisionPolygon2D.xml:21
+msgid ""
+"If [code]true[/code], only edges that face up, relative to "
+"[CollisionPolygon2D]'s rotation, will collide with other objects."
+msgstr ""
+
+#: doc/classes/CollisionPolygon2D.xml:24
+msgid ""
+"The margin used for one-way collision (in pixels). Higher values will make "
+"the shape thicker, and work better for colliders that enter the polygon at a "
+"high velocity."
+msgstr ""
+
+#: doc/classes/CollisionPolygon2D.xml:27
+msgid ""
+"The polygon's list of vertices. The final point will be connected to the "
+"first. The returned value is a clone of the [PackedVector2Array], not a "
+"reference."
+msgstr ""
+
+#: doc/classes/CollisionPolygon2D.xml:32
+msgid "Collisions will include the polygon and its contained area."
+msgstr ""
+
+#: doc/classes/CollisionPolygon2D.xml:35
+msgid "Collisions will only include the polygon edges."
+msgstr ""
+
+#: doc/classes/CollisionPolygon3D.xml:4
+msgid "Editor-only class for defining a collision polygon in 3D space."
+msgstr ""
+
+#: doc/classes/CollisionPolygon3D.xml:7
+msgid ""
+"Allows editing a collision polygon's vertices on a selected plane. Can also "
+"set a depth perpendicular to that plane. This class is only available in the "
+"editor. It will not appear in the scene tree at run-time. Creates a "
+"[Shape3D] for gameplay. Properties modified during gameplay will have no "
+"effect."
+msgstr ""
+
+#: doc/classes/CollisionPolygon3D.xml:15
+msgid ""
+"Length that the resulting collision extends in either direction "
+"perpendicular to its polygon."
+msgstr ""
+
+#: doc/classes/CollisionPolygon3D.xml:18
+msgid "If [code]true[/code], no collision will be produced."
+msgstr ""
+
+#: doc/classes/CollisionPolygon3D.xml:21
+msgid ""
+"Array of vertices which define the polygon.\n"
+"[b]Note:[/b] The returned value is a copy of the original. Methods which "
+"mutate the size or properties of the return value will not impact the "
+"original polygon. To change properties of the polygon, assign it to a "
+"temporary variable and make changes before reassigning the [code]polygon[/"
+"code] member."
+msgstr ""
+
+#: doc/classes/CollisionShape2D.xml:4
+msgid "Node that represents collision shape data in 2D space."
+msgstr ""
+
+#: doc/classes/CollisionShape2D.xml:7
+msgid ""
+"Editor facility for creating and editing collision shapes in 2D space. You "
+"can use this node to represent all sorts of collision shapes, for example, "
+"add this to an [Area2D] to give it a detection shape, or add it to a "
+"[PhysicsBody2D] to create a solid object. [b]IMPORTANT[/b]: this is an "
+"Editor-only helper to create shapes, use [method CollisionObject2D."
+"shape_owner_get_shape] to get the actual shape."
+msgstr ""
+
+#: doc/classes/CollisionShape2D.xml:10 doc/classes/CollisionShape3D.xml:10
+#: doc/classes/PhysicsBody2D.xml:10 doc/classes/PhysicsBody3D.xml:10
+#: doc/classes/RigidBody3D.xml:13 doc/classes/Shape2D.xml:10
+#: doc/classes/Shape3D.xml:10
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/physics/"
+"physics_introduction.html"
+msgstr ""
+
+#: doc/classes/CollisionShape2D.xml:16 doc/classes/CollisionShape3D.xml:32
+msgid "A disabled collision shape has no effect in the world."
+msgstr ""
+
+#: doc/classes/CollisionShape2D.xml:19
+msgid ""
+"Sets whether this collision shape should only detect collision on one side "
+"(top or bottom)."
+msgstr ""
+
+#: doc/classes/CollisionShape2D.xml:22
+msgid ""
+"The margin used for one-way collision (in pixels). Higher values will make "
+"the shape thicker, and work better for colliders that enter the shape at a "
+"high velocity."
+msgstr ""
+
+#: doc/classes/CollisionShape2D.xml:25 doc/classes/CollisionShape3D.xml:35
+msgid "The actual shape owned by this collision shape."
+msgstr ""
+
+#: doc/classes/CollisionShape3D.xml:4
+msgid "Node that represents collision shape data in 3D space."
+msgstr ""
+
+#: doc/classes/CollisionShape3D.xml:7
+msgid ""
+"Editor facility for creating and editing collision shapes in 3D space. You "
+"can use this node to represent all sorts of collision shapes, for example, "
+"add this to an [Area3D] to give it a detection shape, or add it to a "
+"[PhysicsBody3D] to create a solid object. [b]IMPORTANT[/b]: this is an "
+"Editor-only helper to create shapes, use [method CollisionObject3D."
+"shape_owner_get_shape] to get the actual shape."
+msgstr ""
+
+#: doc/classes/CollisionShape3D.xml:17
+msgid ""
+"Sets the collision shape's shape to the addition of all its convexed "
+"[MeshInstance3D] siblings geometry."
+msgstr ""
+
+#: doc/classes/CollisionShape3D.xml:26
+msgid ""
+"If this method exists within a script it will be called whenever the shape "
+"resource has been modified."
+msgstr ""
+
+#: doc/classes/Color.xml:4
+msgid "Color in RGBA format using floats on the range of 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:7
+msgid ""
+"A color represented by red, green, blue, and alpha (RGBA) components. The "
+"alpha component is often used for transparency. Values are in floating-point "
+"and usually range from 0 to 1. Some properties (such as CanvasItem.modulate) "
+"may accept values greater than 1 (overbright or HDR colors).\n"
+"You can also create a color from standardized color names by using [method "
+"@GDScript.ColorN] or directly using the color constants defined here. The "
+"standardized color set is based on the [url=https://en.wikipedia.org/wiki/"
+"X11_color_names]X11 color names[/url].\n"
+"If you want to supply values in a range of 0 to 255, you should use [method "
+"@GDScript.Color8].\n"
+"[b]Note:[/b] In a boolean context, a Color will evaluate to [code]false[/"
+"code] if it's equal to [code]Color(0, 0, 0, 1)[/code] (opaque black). "
+"Otherwise, a Color will always evaluate to [code]true[/code]."
+msgstr ""
+
+#: doc/classes/Color.xml:21
+msgid ""
+"Constructs a color from an HTML hexadecimal color string in ARGB or RGB "
+"format. See also [method @GDScript.ColorN].\n"
+"[codeblock]\n"
+"# Each of the following creates the same color RGBA(178, 217, 10, 255).\n"
+"var c1 = Color(\"#ffb2d90a\") # ARGB format with \"#\".\n"
+"var c2 = Color(\"ffb2d90a\") # ARGB format.\n"
+"var c3 = Color(\"#b2d90a\") # RGB format with \"#\".\n"
+"var c4 = Color(\"b2d90a\") # RGB format.\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:37
+msgid ""
+"Constructs a color from a 32-bit integer (each byte represents a component "
+"of the RGBA profile).\n"
+"[codeblock]\n"
+"var c = Color(274) # Equivalent to RGBA(0, 0, 1, 18)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:51
+msgid ""
+"Constructs a color from an existing color, but with a custom alpha value.\n"
+"[codeblock]\n"
+"var red = Color(Color.red, 0.5) # 50% transparent red.\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:67
+msgid ""
+"Constructs a color from an RGB profile using values between 0 and 1. Alpha "
+"will always be 1.\n"
+"[codeblock]\n"
+"var c = Color(0.2, 1.0, 0.7) # Equivalent to RGBA(51, 255, 178, 255)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:85
+msgid ""
+"Constructs a color from an RGBA profile using values between 0 and 1.\n"
+"[codeblock]\n"
+"var c = Color(0.2, 1.0, 0.7, 0.8) # Equivalent to RGBA(51, 255, 178, 204)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:97
+msgid ""
+"Returns a new color resulting from blending this color over another. If the "
+"color is opaque, the result is also opaque. The second color may have a "
+"range of alpha values.\n"
+"[codeblock]\n"
+"var bg = Color(0.0, 1.0, 0.0, 0.5) # Green with alpha of 50%\n"
+"var fg = Color(1.0, 0.0, 0.0, 0.5) # Red with alpha of 50%\n"
+"var blended_color = bg.blend(fg) # Brown with alpha of 75%\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:109
+msgid ""
+"Returns the most contrasting color.\n"
+"[codeblock]\n"
+"var c = Color(0.3, 0.4, 0.9)\n"
+"var contrasted_color = c.contrasted() # Equivalent to RGBA(204, 229, 102, "
+"255)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:122
+msgid ""
+"Returns a new color resulting from making this color darker by the specified "
+"percentage (ratio from 0 to 1).\n"
+"[codeblock]\n"
+"var green = Color(0.0, 1.0, 0.0)\n"
+"var darkgreen = green.darkened(0.2) # 20% darker than regular green\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:141
+msgid ""
+"Constructs a color from an HSV profile. [code]h[/code], [code]s[/code], and "
+"[code]v[/code] are values between 0 and 1.\n"
+"[codeblock]\n"
+"var c = Color.from_hsv(0.58, 0.5, 0.79, 0.8) # Equivalent to HSV(210, 50, "
+"79, 0.8) or Color8(100, 151, 201, 0.8)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:151
+msgid ""
+"Returns the inverted color [code](1 - r, 1 - g, 1 - b, a)[/code].\n"
+"[codeblock]\n"
+"var c = Color(0.3, 0.4, 0.9)\n"
+"var inverted_color = c.inverted() # A color of an RGBA(178, 153, 26, 255)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:164
+msgid ""
+"Returns [code]true[/code] if this color and [code]color[/code] are "
+"approximately equal, by running [method @GDScript.is_equal_approx] on each "
+"component."
+msgstr ""
+
+#: doc/classes/Color.xml:175
+msgid ""
+"Returns the linear interpolation with another color. The interpolation "
+"factor [code]t[/code] is between 0 and 1.\n"
+"[codeblock]\n"
+"var c1 = Color(1.0, 0.0, 0.0)\n"
+"var c2 = Color(0.0, 1.0, 0.0)\n"
+"var li_c = c1.lerp(c2, 0.5) # A color of an RGBA(128, 128, 0, 255)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:189
+msgid ""
+"Returns a new color resulting from making this color lighter by the "
+"specified percentage (ratio from 0 to 1).\n"
+"[codeblock]\n"
+"var green = Color(0.0, 1.0, 0.0)\n"
+"var lightgreen = green.lightened(0.2) # 20% lighter than regular green\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:200
+msgid ""
+"Returns the color's 32-bit integer in ABGR format (each byte represents a "
+"component of the ABGR profile). ABGR is the reversed version of the default "
+"format.\n"
+"[codeblock]\n"
+"var c = Color(1, 0.5, 0.2)\n"
+"print(c.to_abgr32()) # Prints 4281565439\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:211
+msgid ""
+"Returns the color's 64-bit integer in ABGR format (each word represents a "
+"component of the ABGR profile). ABGR is the reversed version of the default "
+"format.\n"
+"[codeblock]\n"
+"var c = Color(1, 0.5, 0.2)\n"
+"print(c.to_abgr64()) # Prints -225178692812801\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:222
+msgid ""
+"Returns the color's 32-bit integer in ARGB format (each byte represents a "
+"component of the ARGB profile). ARGB is more compatible with DirectX.\n"
+"[codeblock]\n"
+"var c = Color(1, 0.5, 0.2)\n"
+"print(c.to_argb32()) # Prints 4294934323\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:233
+msgid ""
+"Returns the color's 64-bit integer in ARGB format (each word represents a "
+"component of the ARGB profile). ARGB is more compatible with DirectX.\n"
+"[codeblock]\n"
+"var c = Color(1, 0.5, 0.2)\n"
+"print(c.to_argb64()) # Prints -2147470541\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:246
+msgid ""
+"Returns the color's HTML hexadecimal color string in ARGB format (ex: "
+"[code]ff34f822[/code]).\n"
+"Setting [code]with_alpha[/code] to [code]false[/code] excludes alpha from "
+"the hexadecimal string.\n"
+"[codeblock]\n"
+"var c = Color(1, 1, 1, 0.5)\n"
+"var s1 = c.to_html() # Returns \"7fffffff\"\n"
+"var s2 = c.to_html(false) # Returns \"ffffff\"\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:259
+msgid ""
+"Returns the color's 32-bit integer in RGBA format (each byte represents a "
+"component of the RGBA profile). RGBA is Godot's default format.\n"
+"[codeblock]\n"
+"var c = Color(1, 0.5, 0.2)\n"
+"print(c.to_rgba32()) # Prints 4286526463\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:270
+msgid ""
+"Returns the color's 64-bit integer in RGBA format (each word represents a "
+"component of the RGBA profile). RGBA is Godot's default format.\n"
+"[codeblock]\n"
+"var c = Color(1, 0.5, 0.2)\n"
+"print(c.to_rgba64()) # Prints -140736629309441\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:280
+msgid ""
+"The color's alpha (transparency) component, typically on the range of 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:283
+msgid "Wrapper for [member a] that uses the range 0 to 255 instead of 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:286
+msgid "The color's blue component, typically on the range of 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:289
+msgid "Wrapper for [member b] that uses the range 0 to 255 instead of 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:292
+msgid "The color's green component, typically on the range of 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:295
+msgid "Wrapper for [member g] that uses the range 0 to 255 instead of 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:298
+msgid "The HSV hue of this color, on the range 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:301
+msgid "The color's red component, typically on the range of 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:304
+msgid "Wrapper for [member r] that uses the range 0 to 255 instead of 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:307
+msgid "The HSV saturation of this color, on the range 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:310
+msgid "The HSV value (brightness) of this color, on the range 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:315
+msgid "Alice blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:318
+msgid "Antique white color."
+msgstr ""
+
+#: doc/classes/Color.xml:321
+msgid "Aqua color."
+msgstr ""
+
+#: doc/classes/Color.xml:324
+msgid "Aquamarine color."
+msgstr ""
+
+#: doc/classes/Color.xml:327
+msgid "Azure color."
+msgstr ""
+
+#: doc/classes/Color.xml:330
+msgid "Beige color."
+msgstr ""
+
+#: doc/classes/Color.xml:333
+msgid "Bisque color."
+msgstr ""
+
+#: doc/classes/Color.xml:336
+msgid "Black color."
+msgstr ""
+
+#: doc/classes/Color.xml:339
+msgid "Blanche almond color."
+msgstr ""
+
+#: doc/classes/Color.xml:342
+msgid "Blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:345
+msgid "Blue violet color."
+msgstr ""
+
+#: doc/classes/Color.xml:348
+msgid "Brown color."
+msgstr ""
+
+#: doc/classes/Color.xml:351
+msgid "Burly wood color."
+msgstr ""
+
+#: doc/classes/Color.xml:354
+msgid "Cadet blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:357
+msgid "Chartreuse color."
+msgstr ""
+
+#: doc/classes/Color.xml:360
+msgid "Chocolate color."
+msgstr ""
+
+#: doc/classes/Color.xml:363
+msgid "Coral color."
+msgstr ""
+
+#: doc/classes/Color.xml:366
+msgid "Cornflower color."
+msgstr ""
+
+#: doc/classes/Color.xml:369
+msgid "Corn silk color."
+msgstr ""
+
+#: doc/classes/Color.xml:372
+msgid "Crimson color."
+msgstr ""
+
+#: doc/classes/Color.xml:375
+msgid "Cyan color."
+msgstr ""
+
+#: doc/classes/Color.xml:378
+msgid "Dark blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:381
+msgid "Dark cyan color."
+msgstr ""
+
+#: doc/classes/Color.xml:384
+msgid "Dark goldenrod color."
+msgstr ""
+
+#: doc/classes/Color.xml:387
+msgid "Dark gray color."
+msgstr ""
+
+#: doc/classes/Color.xml:390
+msgid "Dark green color."
+msgstr ""
+
+#: doc/classes/Color.xml:393
+msgid "Dark khaki color."
+msgstr ""
+
+#: doc/classes/Color.xml:396
+msgid "Dark magenta color."
+msgstr ""
+
+#: doc/classes/Color.xml:399
+msgid "Dark olive green color."
+msgstr ""
+
+#: doc/classes/Color.xml:402
+msgid "Dark orange color."
+msgstr ""
+
+#: doc/classes/Color.xml:405
+msgid "Dark orchid color."
+msgstr ""
+
+#: doc/classes/Color.xml:408
+msgid "Dark red color."
+msgstr ""
+
+#: doc/classes/Color.xml:411
+msgid "Dark salmon color."
+msgstr ""
+
+#: doc/classes/Color.xml:414
+msgid "Dark sea green color."
+msgstr ""
+
+#: doc/classes/Color.xml:417
+msgid "Dark slate blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:420
+msgid "Dark slate gray color."
+msgstr ""
+
+#: doc/classes/Color.xml:423
+msgid "Dark turquoise color."
+msgstr ""
+
+#: doc/classes/Color.xml:426
+msgid "Dark violet color."
+msgstr ""
+
+#: doc/classes/Color.xml:429
+msgid "Deep pink color."
+msgstr ""
+
+#: doc/classes/Color.xml:432
+msgid "Deep sky blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:435
+msgid "Dim gray color."
+msgstr ""
+
+#: doc/classes/Color.xml:438
+msgid "Dodger blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:441
+msgid "Firebrick color."
+msgstr ""
+
+#: doc/classes/Color.xml:444
+msgid "Floral white color."
+msgstr ""
+
+#: doc/classes/Color.xml:447
+msgid "Forest green color."
+msgstr ""
+
+#: doc/classes/Color.xml:450
+msgid "Fuchsia color."
+msgstr ""
+
+#: doc/classes/Color.xml:453
+msgid "Gainsboro color."
+msgstr ""
+
+#: doc/classes/Color.xml:456
+msgid "Ghost white color."
+msgstr ""
+
+#: doc/classes/Color.xml:459
+msgid "Gold color."
+msgstr ""
+
+#: doc/classes/Color.xml:462
+msgid "Goldenrod color."
+msgstr ""
+
+#: doc/classes/Color.xml:465
+msgid "Gray color."
+msgstr ""
+
+#: doc/classes/Color.xml:468
+msgid "Green color."
+msgstr ""
+
+#: doc/classes/Color.xml:471
+msgid "Green yellow color."
+msgstr ""
+
+#: doc/classes/Color.xml:474
+msgid "Honeydew color."
+msgstr ""
+
+#: doc/classes/Color.xml:477
+msgid "Hot pink color."
+msgstr ""
+
+#: doc/classes/Color.xml:480
+msgid "Indian red color."
+msgstr ""
+
+#: doc/classes/Color.xml:483
+msgid "Indigo color."
+msgstr ""
+
+#: doc/classes/Color.xml:486
+msgid "Ivory color."
+msgstr ""
+
+#: doc/classes/Color.xml:489
+msgid "Khaki color."
+msgstr ""
+
+#: doc/classes/Color.xml:492
+msgid "Lavender color."
+msgstr ""
+
+#: doc/classes/Color.xml:495
+msgid "Lavender blush color."
+msgstr ""
+
+#: doc/classes/Color.xml:498
+msgid "Lawn green color."
+msgstr ""
+
+#: doc/classes/Color.xml:501
+msgid "Lemon chiffon color."
+msgstr ""
+
+#: doc/classes/Color.xml:504
+msgid "Light blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:507
+msgid "Light coral color."
+msgstr ""
+
+#: doc/classes/Color.xml:510
+msgid "Light cyan color."
+msgstr ""
+
+#: doc/classes/Color.xml:513
+msgid "Light goldenrod color."
+msgstr ""
+
+#: doc/classes/Color.xml:516
+msgid "Light gray color."
+msgstr ""
+
+#: doc/classes/Color.xml:519
+msgid "Light green color."
+msgstr ""
+
+#: doc/classes/Color.xml:522
+msgid "Light pink color."
+msgstr ""
+
+#: doc/classes/Color.xml:525
+msgid "Light salmon color."
+msgstr ""
+
+#: doc/classes/Color.xml:528
+msgid "Light sea green color."
+msgstr ""
+
+#: doc/classes/Color.xml:531
+msgid "Light sky blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:534
+msgid "Light slate gray color."
+msgstr ""
+
+#: doc/classes/Color.xml:537
+msgid "Light steel blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:540
+msgid "Light yellow color."
+msgstr ""
+
+#: doc/classes/Color.xml:543
+msgid "Lime color."
+msgstr ""
+
+#: doc/classes/Color.xml:546
+msgid "Lime green color."
+msgstr ""
+
+#: doc/classes/Color.xml:549
+msgid "Linen color."
+msgstr ""
+
+#: doc/classes/Color.xml:552
+msgid "Magenta color."
+msgstr ""
+
+#: doc/classes/Color.xml:555
+msgid "Maroon color."
+msgstr ""
+
+#: doc/classes/Color.xml:558
+msgid "Medium aquamarine color."
+msgstr ""
+
+#: doc/classes/Color.xml:561
+msgid "Medium blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:564
+msgid "Medium orchid color."
+msgstr ""
+
+#: doc/classes/Color.xml:567
+msgid "Medium purple color."
+msgstr ""
+
+#: doc/classes/Color.xml:570
+msgid "Medium sea green color."
+msgstr ""
+
+#: doc/classes/Color.xml:573
+msgid "Medium slate blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:576
+msgid "Medium spring green color."
+msgstr ""
+
+#: doc/classes/Color.xml:579
+msgid "Medium turquoise color."
+msgstr ""
+
+#: doc/classes/Color.xml:582
+msgid "Medium violet red color."
+msgstr ""
+
+#: doc/classes/Color.xml:585
+msgid "Midnight blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:588
+msgid "Mint cream color."
+msgstr ""
+
+#: doc/classes/Color.xml:591
+msgid "Misty rose color."
+msgstr ""
+
+#: doc/classes/Color.xml:594
+msgid "Moccasin color."
+msgstr ""
+
+#: doc/classes/Color.xml:597
+msgid "Navajo white color."
+msgstr ""
+
+#: doc/classes/Color.xml:600
+msgid "Navy blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:603
+msgid "Old lace color."
+msgstr ""
+
+#: doc/classes/Color.xml:606
+msgid "Olive color."
+msgstr ""
+
+#: doc/classes/Color.xml:609
+msgid "Olive drab color."
+msgstr ""
+
+#: doc/classes/Color.xml:612
+msgid "Orange color."
+msgstr ""
+
+#: doc/classes/Color.xml:615
+msgid "Orange red color."
+msgstr ""
+
+#: doc/classes/Color.xml:618
+msgid "Orchid color."
+msgstr ""
+
+#: doc/classes/Color.xml:621
+msgid "Pale goldenrod color."
+msgstr ""
+
+#: doc/classes/Color.xml:624
+msgid "Pale green color."
+msgstr ""
+
+#: doc/classes/Color.xml:627
+msgid "Pale turquoise color."
+msgstr ""
+
+#: doc/classes/Color.xml:630
+msgid "Pale violet red color."
+msgstr ""
+
+#: doc/classes/Color.xml:633
+msgid "Papaya whip color."
+msgstr ""
+
+#: doc/classes/Color.xml:636
+msgid "Peach puff color."
+msgstr ""
+
+#: doc/classes/Color.xml:639
+msgid "Peru color."
+msgstr ""
+
+#: doc/classes/Color.xml:642
+msgid "Pink color."
+msgstr ""
+
+#: doc/classes/Color.xml:645
+msgid "Plum color."
+msgstr ""
+
+#: doc/classes/Color.xml:648
+msgid "Powder blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:651
+msgid "Purple color."
+msgstr ""
+
+#: doc/classes/Color.xml:654
+msgid "Rebecca purple color."
+msgstr ""
+
+#: doc/classes/Color.xml:657
+msgid "Red color."
+msgstr ""
+
+#: doc/classes/Color.xml:660
+msgid "Rosy brown color."
+msgstr ""
+
+#: doc/classes/Color.xml:663
+msgid "Royal blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:666
+msgid "Saddle brown color."
+msgstr ""
+
+#: doc/classes/Color.xml:669
+msgid "Salmon color."
+msgstr ""
+
+#: doc/classes/Color.xml:672
+msgid "Sandy brown color."
+msgstr ""
+
+#: doc/classes/Color.xml:675
+msgid "Sea green color."
+msgstr ""
+
+#: doc/classes/Color.xml:678
+msgid "Seashell color."
+msgstr ""
+
+#: doc/classes/Color.xml:681
+msgid "Sienna color."
+msgstr ""
+
+#: doc/classes/Color.xml:684
+msgid "Silver color."
+msgstr ""
+
+#: doc/classes/Color.xml:687
+msgid "Sky blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:690
+msgid "Slate blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:693
+msgid "Slate gray color."
+msgstr ""
+
+#: doc/classes/Color.xml:696
+msgid "Snow color."
+msgstr ""
+
+#: doc/classes/Color.xml:699
+msgid "Spring green color."
+msgstr ""
+
+#: doc/classes/Color.xml:702
+msgid "Steel blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:705
+msgid "Tan color."
+msgstr ""
+
+#: doc/classes/Color.xml:708
+msgid "Teal color."
+msgstr ""
+
+#: doc/classes/Color.xml:711
+msgid "Thistle color."
+msgstr ""
+
+#: doc/classes/Color.xml:714
+msgid "Tomato color."
+msgstr ""
+
+#: doc/classes/Color.xml:717
+msgid "Transparent color (white with no alpha)."
+msgstr ""
+
+#: doc/classes/Color.xml:720
+msgid "Turquoise color."
+msgstr ""
+
+#: doc/classes/Color.xml:723
+msgid "Violet color."
+msgstr ""
+
+#: doc/classes/Color.xml:726
+msgid "Web gray color."
+msgstr ""
+
+#: doc/classes/Color.xml:729
+msgid "Web green color."
+msgstr ""
+
+#: doc/classes/Color.xml:732
+msgid "Web maroon color."
+msgstr ""
+
+#: doc/classes/Color.xml:735
+msgid "Web purple color."
+msgstr ""
+
+#: doc/classes/Color.xml:738
+msgid "Wheat color."
+msgstr ""
+
+#: doc/classes/Color.xml:741
+msgid "White color."
+msgstr ""
+
+#: doc/classes/Color.xml:744
+msgid "White smoke color."
+msgstr ""
+
+#: doc/classes/Color.xml:747
+msgid "Yellow color."
+msgstr ""
+
+#: doc/classes/Color.xml:750
+msgid "Yellow green color."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:4
+msgid "Color picker control."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:7
+msgid ""
+"Displays a color picker widget. Useful for selecting a color from an RGB/"
+"RGBA colorspace."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:18
+msgid ""
+"Adds the given color to a list of color presets. The presets are displayed "
+"in the color picker and the user will be able to select them.\n"
+"[b]Note:[/b] the presets list is only for [i]this[/i] color picker."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:28
+msgid ""
+"Removes the given color from the list of color presets of this color picker."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:35
+msgid "Returns the list of colors in the presets of the color picker."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:41 doc/classes/ColorPickerButton.xml:29
+msgid "The currently selected color."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:44
+msgid ""
+"If [code]true[/code], the color will apply only after the user releases the "
+"mouse button, otherwise it will apply immediately even in mouse motion event "
+"(which can cause performance issues)."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:47
+msgid "If [code]true[/code], shows an alpha channel slider (transparency)."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:50
+msgid ""
+"If [code]true[/code], allows editing the color with Hue/Saturation/Value "
+"sliders.\n"
+"[b]Note:[/b] Cannot be enabled if raw mode is on."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:54
+msgid "If [code]true[/code], the \"add preset\" button is enabled."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:57
+msgid "If [code]true[/code], saved color presets are visible."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:60
+msgid ""
+"If [code]true[/code], 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).\n"
+"[b]Note:[/b] Cannot be enabled if HSV mode is on."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:69
+msgid "Emitted when the color is changed."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:76
+msgid "Emitted when a preset is added."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:83
+msgid "Emitted when a preset is removed."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:91
+msgid "The icon for the \"Add Preset\" button."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:94
+msgid "Custom texture for the hue selection slider on the right."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:99
+msgid "The width of the hue selection slider."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:104
+msgid "The margin around the [ColorPicker]."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:107
+msgid ""
+"The indicator used to signalize that the color value is outside the 0-1 "
+"range."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:112
+msgid "The icon for the screen color picker button."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:115
+msgid "The height of the saturation-value selection box."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:118
+msgid "The width of the saturation-value selection box."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:4
+msgid "Button that pops out a [ColorPicker]."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:7
+msgid ""
+"Encapsulates a [ColorPicker] making it accessible by pressing a button. "
+"Pressing the button will toggle the [ColorPicker] visibility."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:16
+msgid "Returns the [ColorPicker] that this node toggles."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:23
+msgid ""
+"Returns the control's [PopupPanel] which allows you to connect to popup "
+"signals. This allows you to handle events when the ColorPicker is shown or "
+"hidden."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:32
+msgid ""
+"If [code]true[/code], the alpha channel in the displayed [ColorPicker] will "
+"be visible."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:41
+msgid "Emitted when the color changes."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:46
+msgid ""
+"Emitted when the [ColorPicker] is created (the button is pressed for the "
+"first time)."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:51
+msgid "Emitted when the [ColorPicker] is closed."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:59
+msgid "The background of the color preview rect on the button."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:62
+msgid "[StyleBox] used when the [ColorPickerButton] is disabled."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:65
+msgid ""
+"[StyleBox] used when the [ColorPickerButton] is focused. It is displayed "
+"over the current [StyleBox], so using [StyleBoxEmpty] will just disable the "
+"focus visual effect."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:68
+msgid "[Font] of the [ColorPickerButton]'s text."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:71
+msgid "Default text [Color] of the [ColorPickerButton]."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:74
+msgid "Text [Color] used when the [ColorPickerButton] is disabled."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:77
+msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:80
+msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:83
+msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:86
+msgid "The horizontal space between [ColorPickerButton]'s icon and text."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:89
+msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:92
+msgid "[StyleBox] used when the [ColorPickerButton] is being pressed."
+msgstr ""
+
+#: doc/classes/ColorRect.xml:4
+msgid "Colored rectangle."
+msgstr ""
+
+#: doc/classes/ColorRect.xml:7
+msgid "Displays a colored rectangle."
+msgstr ""
+
+#: doc/classes/ColorRect.xml:15
+msgid ""
+"The fill color.\n"
+"[codeblock]\n"
+"$ColorRect.color = Color(1, 0, 0, 1) # Set ColorRect's color to red.\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/ConcavePolygonShape2D.xml:4
+msgid "Concave polygon 2D shape resource for physics."
+msgstr ""
+
+#: doc/classes/ConcavePolygonShape2D.xml:7
+msgid ""
+"Concave polygon 2D shape resource for physics. It is made out of segments "
+"and is optimal for complex polygonal concave collisions. However, it is not "
+"advised to use for [RigidBody2D] nodes. A CollisionPolygon2D in convex "
+"decomposition mode (solids) or several convex objects are advised for that "
+"instead. Otherwise, a concave polygon 2D shape is better for static "
+"collisions.\n"
+"The main difference between a [ConvexPolygonShape2D] and a "
+"[ConcavePolygonShape2D] is that a concave polygon assumes it is concave and "
+"uses a more complex method of collision detection, and a convex one forces "
+"itself to be convex in order to speed up collision detection."
+msgstr ""
+
+#: doc/classes/ConcavePolygonShape2D.xml:16
+msgid ""
+"The array of points that make up the [ConcavePolygonShape2D]'s line segments."
+msgstr ""
+
+#: doc/classes/ConcavePolygonShape3D.xml:4
+msgid "Concave polygon shape."
+msgstr ""
+
+#: doc/classes/ConcavePolygonShape3D.xml:7
+msgid ""
+"Concave polygon shape resource, which can be set into a [PhysicsBody3D] or "
+"area. This shape is created by feeding a list of triangles.\n"
+"Note: when used for collision, [ConcavePolygonShape3D] is intended to work "
+"with static [PhysicsBody3D] nodes like [StaticBody3D] and will not work with "
+"[KinematicBody3D] or [RigidBody3D] with a mode other than Static."
+msgstr ""
+
+#: doc/classes/ConcavePolygonShape3D.xml:17
+msgid "Returns the faces (an array of triangles)."
+msgstr ""
+
+#: doc/classes/ConcavePolygonShape3D.xml:26
+msgid "Sets the faces (an array of triangles)."
+msgstr ""
+
+#: doc/classes/ConeTwistJoint3D.xml:4
+msgid "A twist joint between two 3D bodies."
+msgstr ""
+
+#: doc/classes/ConeTwistJoint3D.xml:7
+msgid ""
+"The joint can rotate the bodies across an axis defined by the local x-axes "
+"of the [Joint3D].\n"
+"The twist axis is initiated as the X axis of the [Joint3D].\n"
+"Once the Bodies swing, the twist axis is calculated as the middle of the x-"
+"axes of the Joint3D in the local space of the two Bodies."
+msgstr ""
+
+#: doc/classes/ConeTwistJoint3D.xml:35 doc/classes/ConeTwistJoint3D.xml:67
+#: doc/classes/PhysicsServer3D.xml:1400
+msgid ""
+"The speed with which the swing or twist will take place.\n"
+"The higher, the faster."
+msgstr ""
+
+#: doc/classes/ConeTwistJoint3D.xml:39 doc/classes/ConeTwistJoint3D.xml:74
+#: doc/classes/PhysicsServer3D.xml:1407
+msgid ""
+"Defines, how fast the swing- and twist-speed-difference on both sides gets "
+"synced."
+msgstr ""
+
+#: doc/classes/ConeTwistJoint3D.xml:42 doc/classes/ConeTwistJoint3D.xml:71
+msgid ""
+"The ease with which the joint starts to twist. If it's too low, it takes "
+"more force to start twisting the joint."
+msgstr ""
+
+#: doc/classes/ConeTwistJoint3D.xml:45 doc/classes/ConeTwistJoint3D.xml:57
+#: doc/classes/PhysicsServer3D.xml:1390
+msgid ""
+"Swing is rotation from side to side, around the axis perpendicular to the "
+"twist axis.\n"
+"The swing span defines, how much rotation will not get corrected along the "
+"swing axis.\n"
+"Could be defined as looseness in the [ConeTwistJoint3D].\n"
+"If below 0.05, this behavior is locked."
+msgstr ""
+
+#: doc/classes/ConeTwistJoint3D.xml:51 doc/classes/ConeTwistJoint3D.xml:63
+#: doc/classes/PhysicsServer3D.xml:1396
+msgid ""
+"Twist is the rotation around the twist axis, this value defined how far the "
+"joint can twist.\n"
+"Twist is locked if below 0.05."
+msgstr ""
+
+#: doc/classes/ConeTwistJoint3D.xml:77 doc/classes/Generic6DOFJoint3D.xml:416
+#: doc/classes/HingeJoint3D.xml:109 doc/classes/Light3D.xml:145
+#: doc/classes/SliderJoint3D.xml:170
+msgid "Represents the size of the [enum Param] enum."
+msgstr ""
+
+#: doc/classes/ConfigFile.xml:4
+msgid "Helper class to handle INI-style files."
+msgstr ""
+
+#: doc/classes/ConfigFile.xml:7
+msgid ""
+"This helper class can be used to store [Variant] values on the filesystem "
+"using INI-style formatting. The stored values are identified by a section "
+"and a key:\n"
+"[codeblock]\n"
+"[section]\n"
+"some_key=42\n"
+"string_example=\"Hello World3D!\"\n"
+"a_vector=Vector3( 1, 0, 2 )\n"
+"[/codeblock]\n"
+"The stored data can be saved to or parsed from a file, though ConfigFile "
+"objects can also be used directly without accessing the filesystem.\n"
+"The following example shows how to parse an INI-style file from the system, "
+"read its contents and store new values in it:\n"
+"[codeblock]\n"
+"var config = ConfigFile.new()\n"
+"var err = config.load(\"user://settings.cfg\")\n"
+"if err == OK: # If not, something went wrong with the file loading\n"
+" # Look for the display/width pair, and default to 1024 if missing\n"
+" var screen_width = config.get_value(\"display\", \"width\", 1024)\n"
+" # Store a variable if and only if it hasn't been defined yet\n"
+" if not config.has_section_key(\"audio\", \"mute\"):\n"
+" config.set_value(\"audio\", \"mute\", false)\n"
+" # Save the changes by overwriting the previous file\n"
+" config.save(\"user://settings.cfg\")\n"
+"[/codeblock]\n"
+"Keep in mind that section and property names can't contain spaces. Anything "
+"after a space will be ignored on save and on load.\n"
+"ConfigFiles can also contain manually written comment lines starting with a "
+"semicolon ([code];[/code]). Those lines will be ignored when parsing the "
+"file. Note that comments will be lost when saving the ConfigFile. This can "
+"still be useful for dedicated server configuration files, which are "
+"typically never overwritten without explicit user action."
+msgstr ""
+
+#: doc/classes/ConfigFile.xml:40
+msgid ""
+"Deletes the specified section along with all the key-value pairs inside. "
+"Raises an error if the section does not exist."
+msgstr ""
+
+#: doc/classes/ConfigFile.xml:51
+msgid ""
+"Deletes the specified key in a section. Raises an error if either the "
+"section or the key do not exist."
+msgstr ""
+
+#: doc/classes/ConfigFile.xml:60
+msgid ""
+"Returns an array of all defined key identifiers in the specified section. "
+"Raises an error and returns an empty array if the section does not exist."
+msgstr ""
+
+#: doc/classes/ConfigFile.xml:67
+msgid "Returns an array of all defined section identifiers."
+msgstr ""
+
+#: doc/classes/ConfigFile.xml:80
+msgid ""
+"Returns the current value for the specified section and key. If either the "
+"section or the key do not exist, the method returns the fallback "
+"[code]default[/code] value. If [code]default[/code] is not specified or set "
+"to [code]null[/code], an error is also raised."
+msgstr ""
+
+#: doc/classes/ConfigFile.xml:89
+msgid "Returns [code]true[/code] if the specified section exists."
+msgstr ""
+
+#: doc/classes/ConfigFile.xml:100
+msgid "Returns [code]true[/code] if the specified section-key pair exists."
+msgstr ""
+
+#: doc/classes/ConfigFile.xml:109
+msgid ""
+"Loads the config file specified as a parameter. The file's contents are "
+"parsed and loaded in the [ConfigFile] object which the method was called "
+"on.\n"
+"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
+msgstr ""
+
+#: doc/classes/ConfigFile.xml:121
+msgid ""
+"Loads the encrypted config file specified as a parameter, using the provided "
+"[code]key[/code] to decrypt it. The file's contents are parsed and loaded in "
+"the [ConfigFile] object which the method was called on.\n"
+"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
+msgstr ""
+
+#: doc/classes/ConfigFile.xml:133
+msgid ""
+"Loads the encrypted config file specified as a parameter, using the provided "
+"[code]password[/code] to decrypt it. The file's contents are parsed and "
+"loaded in the [ConfigFile] object which the method was called on.\n"
+"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
+msgstr ""
+
+#: doc/classes/ConfigFile.xml:143
+msgid ""
+"Parses the the passed string as the contents of a config file. The string is "
+"parsed and loaded in the ConfigFile object which the method was called on.\n"
+"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
+msgstr ""
+
+#: doc/classes/ConfigFile.xml:153
+msgid ""
+"Saves the contents of the [ConfigFile] object to the file specified as a "
+"parameter. The output file uses an INI-style structure.\n"
+"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
+msgstr ""
+
+#: doc/classes/ConfigFile.xml:165
+msgid ""
+"Saves the contents of the [ConfigFile] object to the AES-256 encrypted file "
+"specified as a parameter, using the provided [code]key[/code] to encrypt it. "
+"The output file uses an INI-style structure.\n"
+"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
+msgstr ""
+
+#: doc/classes/ConfigFile.xml:177
+msgid ""
+"Saves the contents of the [ConfigFile] object to the AES-256 encrypted file "
+"specified as a parameter, using the provided [code]password[/code] to "
+"encrypt it. The output file uses an INI-style structure.\n"
+"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
+msgstr ""
+
+#: doc/classes/ConfigFile.xml:191
+msgid ""
+"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 [code]null[/"
+"code] value deletes the specified key if it exists, and deletes the section "
+"if it ends up empty once the key has been removed."
+msgstr ""
+
+#: doc/classes/ConfirmationDialog.xml:4
+msgid "Dialog for confirmation of actions."
+msgstr ""
+
+#: doc/classes/ConfirmationDialog.xml:7
+msgid ""
+"Dialog for confirmation of actions. This dialog inherits from "
+"[AcceptDialog], but has by default an OK and Cancel button (in host OS "
+"order).\n"
+"To get cancel action, you can use:\n"
+"[codeblock]\n"
+"get_cancel().connect(\"pressed\", self, \"cancelled\")\n"
+"[/codeblock]."
+msgstr ""
+
+#: doc/classes/ConfirmationDialog.xml:20
+msgid "Returns the cancel button."
+msgstr ""
+
+#: doc/classes/Container.xml:4
+msgid "Base node for containers."
+msgstr ""
+
+#: doc/classes/Container.xml:7
+msgid ""
+"Base node for containers. A [Container] contains other controls and "
+"automatically arranges them in a certain way.\n"
+"A Control can inherit this to create custom container classes."
+msgstr ""
+
+#: doc/classes/Container.xml:21
+msgid ""
+"Fit a child control in a given rect. This is mainly a helper for creating "
+"custom container classes."
+msgstr ""
+
+#: doc/classes/Container.xml:28
+msgid ""
+"Queue resort of the contained children. This is called automatically anyway, "
+"but can be called upon request."
+msgstr ""
+
+#: doc/classes/Container.xml:38
+msgid "Emitted when sorting the children is needed."
+msgstr ""
+
+#: doc/classes/Container.xml:44
+msgid ""
+"Notification for when sorting the children, it must be obeyed immediately."
+msgstr ""
+
+#: doc/classes/Control.xml:4
+msgid ""
+"All user interface nodes inherit from Control. A control's anchors and "
+"margins adapt its position and size relative to its parent."
+msgstr ""
+
+#: doc/classes/Control.xml:7
+msgid ""
+"Base class for all UI-related nodes. [Control] features a bounding rectangle "
+"that defines its extents, an anchor position relative to its parent control "
+"or the current viewport, and margins that represent an offset to the anchor. "
+"The margins update automatically when the node, any of its parents, or the "
+"screen size change.\n"
+"For more information on Godot's UI system, anchors, margins, and containers, "
+"see the related tutorials in the manual. To build flexible UIs, you'll need "
+"a mix of UI elements that inherit from [Control] and [Container] nodes.\n"
+"[b]User Interface nodes and input[/b]\n"
+"Godot sends input events to the scene's root node first, by calling [method "
+"Node._input]. [method Node._input] forwards the event down the node tree to "
+"the nodes under the mouse cursor, or on keyboard focus. To do so, it calls "
+"[code]MainLoop._input_event[/code].\n"
+"[b]FIXME:[/b] No longer valid after DisplayServer split and Input "
+"refactoring.\n"
+"Call [method accept_event] so no other node receives the event. Once you "
+"accepted an input, it becomes handled so [method Node._unhandled_input] will "
+"not process it.\n"
+"Only one [Control] node can be in keyboard focus. Only the node in focus "
+"will receive keyboard events. To get the focus, call [method grab_focus]. "
+"[Control] nodes lose focus when another node grabs it, or if you hide the "
+"node in focus.\n"
+"Sets [member mouse_filter] to [constant MOUSE_FILTER_IGNORE] to tell a "
+"[Control] node to ignore mouse or touch events. You'll need it if you place "
+"an icon on top of a button.\n"
+"[Theme] resources change the Control's appearance. If you change the [Theme] "
+"on a [Control] node, it affects all of its children. To override some of the "
+"theme's parameters, call one of the [code]add_theme_*_override[/code] "
+"methods, like [method add_theme_font_override]. You can override the theme "
+"with the inspector."
+msgstr ""
+
+#: doc/classes/Control.xml:18
+msgid "https://docs.godotengine.org/en/latest/tutorials/gui/index.html"
+msgstr ""
+
+#: doc/classes/Control.xml:26
+msgid ""
+"Virtual method to be implemented by the user. Returns whether [method "
+"_gui_input] should not be called for children controls outside this "
+"control's rectangle. Input will be clipped to the Rect of this [Control]. "
+"Similar to [member rect_clip_content], but doesn't affect visibility.\n"
+"If not overridden, defaults to [code]false[/code]."
+msgstr ""
+
+#: doc/classes/Control.xml:34
+msgid ""
+"Virtual method to be implemented by the user. Returns the minimum size for "
+"this control. Alternative to [member rect_min_size] for controlling minimum "
+"size via code. The actual minimum size will be the max value of these two "
+"(in each axis separately).\n"
+"If not overridden, defaults to [constant Vector2.ZERO]."
+msgstr ""
+
+#: doc/classes/Control.xml:44
+msgid ""
+"Virtual method to be implemented by the user. Use this method to process and "
+"accept inputs on UI elements. See [method accept_event].\n"
+"Example: clicking a control.\n"
+"[codeblock]\n"
+"func _gui_input(event):\n"
+" if event is InputEventMouseButton:\n"
+" if event.button_index == BUTTON_LEFT and event.pressed:\n"
+" print(\"I've been clicked D:\")\n"
+"[/codeblock]\n"
+"The event won't trigger if:\n"
+"* clicking outside the control (see [method has_point]);\n"
+"* control has [member mouse_filter] set to [constant MOUSE_FILTER_IGNORE];\n"
+"* control is obstructed by another [Control] on top of it, which doesn't "
+"have [member mouse_filter] set to [constant MOUSE_FILTER_IGNORE];\n"
+"* control's parent has [member mouse_filter] set to [constant "
+"MOUSE_FILTER_STOP] or has accepted the event;\n"
+"* it happens outside parent's rectangle and the parent has either [member "
+"rect_clip_content] or [method _clips_input] enabled."
+msgstr ""
+
+#: doc/classes/Control.xml:66
+msgid ""
+"Virtual method to be implemented by the user. Returns a [Control] node that "
+"should be used as a tooltip instead of the default one. Use [code]for_text[/"
+"code] parameter to determine what text the tooltip should contain (likely "
+"the contents of [member hint_tooltip]).\n"
+"The returned node must be of type [Control] or Control-derieved. It can have "
+"child nodes of any type. It is freed when the tooltip disappears, so make "
+"sure you always provide a new instance, not e.g. a node from scene. When "
+"[code]null[/code] or non-Control node is returned, the default tooltip will "
+"be used instead.\n"
+"[b]Note:[/b] The tooltip is shrunk to minimal size. If you want to ensure "
+"it's fully visible, you might want to set its [member rect_min_size] to some "
+"non-zero value.\n"
+"Example of usage with custom-constructed node:\n"
+"[codeblock]\n"
+"func _make_custom_tooltip(for_text):\n"
+" var label = Label.new()\n"
+" label.text = for_text\n"
+" return label\n"
+"[/codeblock]\n"
+"Example of usage with custom scene instance:\n"
+"[codeblock]\n"
+"func _make_custom_tooltip(for_text):\n"
+" var tooltip = preload(\"SomeTooltipScene.tscn\").instance()\n"
+" tooltip.get_node(\"Label\").text = for_text\n"
+" return tooltip\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Control.xml:89
+msgid ""
+"Marks an input event as handled. Once you accept an input event, it stops "
+"propagating, even to nodes listening to [method Node._unhandled_input] or "
+"[method Node._unhandled_key_input]."
+msgstr ""
+
+#: doc/classes/Control.xml:100
+msgid ""
+"Overrides the [Color] with given [code]name[/code] in the [member theme] "
+"resource the control uses. If the [code]color[/code] is empty or invalid, "
+"the override is cleared and the color from assigned [Theme] is used."
+msgstr ""
+
+#: doc/classes/Control.xml:111
+msgid ""
+"Overrides an integer constant with given [code]name[/code] in the [member "
+"theme] resource the control uses. If the [code]constant[/code] is empty or "
+"invalid, the override is cleared and the constant from assigned [Theme] is "
+"used."
+msgstr ""
+
+#: doc/classes/Control.xml:122
+msgid ""
+"Overrides the font with given [code]name[/code] in the [member theme] "
+"resource the control uses. If [code]font[/code] is empty or invalid, the "
+"override is cleared and the font from assigned [Theme] is used."
+msgstr ""
+
+#: doc/classes/Control.xml:133
+msgid ""
+"Overrides the icon with given [code]name[/code] in the [member theme] "
+"resource the control uses. If [code]icon[/code] is empty or invalid, the "
+"override is cleared and the icon from assigned [Theme] is used."
+msgstr ""
+
+#: doc/classes/Control.xml:144
+msgid ""
+"Overrides the [Shader] with given [code]name[/code] in the [member theme] "
+"resource the control uses. If [code]shader[/code] is empty or invalid, the "
+"override is cleared and the shader from assigned [Theme] is used."
+msgstr ""
+
+#: doc/classes/Control.xml:155
+msgid ""
+"Overrides the [StyleBox] with given [code]name[/code] in the [member theme] "
+"resource the control uses. If [code]stylebox[/code] is empty or invalid, the "
+"override is cleared and the [StyleBox] from assigned [Theme] is used."
+msgstr ""
+
+#: doc/classes/Control.xml:166
+msgid ""
+"Godot calls this method to test if [code]data[/code] from a control's "
+"[method get_drag_data] can be dropped at [code]position[/code]. "
+"[code]position[/code] is local to this control.\n"
+"This method should only be used to test the data. Process the data in "
+"[method drop_data].\n"
+"[codeblock]\n"
+"func can_drop_data(position, data):\n"
+" # Check position if it is relevant to you\n"
+" # Otherwise, just check data\n"
+" return typeof(data) == TYPE_DICTIONARY and data.has(\"expected\")\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Control.xml:184
+msgid ""
+"Godot calls this method to pass you the [code]data[/code] from a control's "
+"[method get_drag_data] result. Godot first calls [method can_drop_data] to "
+"test if [code]data[/code] is allowed to drop at [code]position[/code] where "
+"[code]position[/code] is local to this control.\n"
+"[codeblock]\n"
+"func can_drop_data(position, data):\n"
+" return typeof(data) == TYPE_DICTIONARY and data.has(\"color\")\n"
+"\n"
+"func drop_data(position, data):\n"
+" color = data[\"color\"]\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Control.xml:202
+msgid ""
+"Forces drag and bypasses [method get_drag_data] and [method "
+"set_drag_preview] by passing [code]data[/code] and [code]preview[/code]. "
+"Drag will start even if the mouse is neither over nor pressed on this "
+"control.\n"
+"The methods [method can_drop_data] and [method drop_data] must be "
+"implemented on controls that want to receive drop data."
+msgstr ""
+
+#: doc/classes/Control.xml:212
+msgid ""
+"Returns the anchor identified by [code]margin[/code] constant from [enum "
+"Margin] enum. A getter method for [member anchor_bottom], [member "
+"anchor_left], [member anchor_right] and [member anchor_top]."
+msgstr ""
+
+#: doc/classes/Control.xml:219
+msgid ""
+"Returns [member margin_left] and [member margin_top]. See also [member "
+"rect_position]."
+msgstr ""
+
+#: doc/classes/Control.xml:226
+msgid ""
+"Returns combined minimum size from [member rect_min_size] and [method "
+"get_minimum_size]."
+msgstr ""
+
+#: doc/classes/Control.xml:235
+msgid ""
+"Returns the mouse cursor shape the control displays on mouse hover. See "
+"[enum CursorShape]."
+msgstr ""
+
+#: doc/classes/Control.xml:244
+msgid ""
+"Godot calls this method to get data that can be dragged and dropped onto "
+"controls that expect drop data. Returns [code]null[/code] if there is no "
+"data to drag. Controls that want to receive drop data should implement "
+"[method can_drop_data] and [method drop_data]. [code]position[/code] is "
+"local to this control. Drag may be forced with [method force_drag].\n"
+"A preview that will follow the mouse that should represent the data can be "
+"set with [method set_drag_preview]. A good time to set the preview is in "
+"this method.\n"
+"[codeblock]\n"
+"func get_drag_data(position):\n"
+" var mydata = make_data()\n"
+" set_drag_preview(make_preview(mydata))\n"
+" return mydata\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Control.xml:258
+msgid "Returns [member margin_right] and [member margin_bottom]."
+msgstr ""
+
+#: doc/classes/Control.xml:267
+msgid ""
+"Returns the focus neighbour identified by [code]margin[/code] constant from "
+"[enum Margin] enum. A getter method for [member focus_neighbour_bottom], "
+"[member focus_neighbour_left], [member focus_neighbour_right] and [member "
+"focus_neighbour_top]."
+msgstr ""
+
+#: doc/classes/Control.xml:274
+msgid ""
+"Returns the control that has the keyboard focus or [code]null[/code] if none."
+msgstr ""
+
+#: doc/classes/Control.xml:281
+msgid ""
+"Returns the position and size of the control relative to the top-left corner "
+"of the screen. See [member rect_position] and [member rect_size]."
+msgstr ""
+
+#: doc/classes/Control.xml:290
+msgid ""
+"Returns the anchor identified by [code]margin[/code] constant from [enum "
+"Margin] enum. A getter method for [member margin_bottom], [member "
+"margin_left], [member margin_right] and [member margin_top]."
+msgstr ""
+
+#: doc/classes/Control.xml:297
+msgid "Returns the minimum size for this control. See [member rect_min_size]."
+msgstr ""
+
+#: doc/classes/Control.xml:304
+msgid "Returns the width/height occupied in the parent control."
+msgstr ""
+
+#: doc/classes/Control.xml:311
+msgid "Returns the parent control node."
+msgstr ""
+
+#: doc/classes/Control.xml:318
+msgid ""
+"Returns the position and size of the control relative to the top-left corner "
+"of the parent Control. See [member rect_position] and [member rect_size]."
+msgstr ""
+
+#: doc/classes/Control.xml:325
+msgid "Returns the rotation (in radians)."
+msgstr ""
+
+#: doc/classes/Control.xml:336
+msgid ""
+"Returns a color from assigned [Theme] with given [code]name[/code] and "
+"associated with [Control] of given [code]type[/code].\n"
+"[codeblock]\n"
+"func _ready():\n"
+" modulate = get_theme_color(\"font_color\", \"Button\") #get the color "
+"defined for button fonts\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Control.xml:351
+msgid ""
+"Returns a constant from assigned [Theme] with given [code]name[/code] and "
+"associated with [Control] of given [code]type[/code]."
+msgstr ""
+
+#: doc/classes/Control.xml:362
+msgid ""
+"Returns a font from assigned [Theme] with given [code]name[/code] and "
+"associated with [Control] of given [code]type[/code]."
+msgstr ""
+
+#: doc/classes/Control.xml:373
+msgid ""
+"Returns an icon from assigned [Theme] with given [code]name[/code] and "
+"associated with [Control] of given [code]type[/code]."
+msgstr ""
+
+#: doc/classes/Control.xml:384
+msgid ""
+"Returns a [StyleBox] from assigned [Theme] with given [code]name[/code] and "
+"associated with [Control] of given [code]type[/code]."
+msgstr ""
+
+#: doc/classes/Control.xml:393
+msgid ""
+"Returns the tooltip, which will appear when the cursor is resting over this "
+"control. See [member hint_tooltip]."
+msgstr ""
+
+#: doc/classes/Control.xml:400
+msgid ""
+"Creates an [InputEventMouseButton] that attempts to click the control. If "
+"the event is received, the control acquires focus.\n"
+"[codeblock]\n"
+"func _process(delta):\n"
+" grab_click_focus() #when clicking another Control node, this node will "
+"be clicked instead\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Control.xml:411
+msgid ""
+"Steal the focus from another control and become the focused control (see "
+"[member focus_mode])."
+msgstr ""
+
+#: doc/classes/Control.xml:418
+msgid ""
+"Returns [code]true[/code] if this is the current focused control. See "
+"[member focus_mode]."
+msgstr ""
+
+#: doc/classes/Control.xml:427
+msgid ""
+"Virtual method to be implemented by the user. Returns whether the given "
+"[code]point[/code] is inside this control.\n"
+"If not overridden, default behavior is checking if the point is within "
+"control's Rect.\n"
+"[b]Note:[/b] If you want to check if a point is inside the control, you can "
+"use [code]get_rect().has_point(point)[/code]."
+msgstr ""
+
+#: doc/classes/Control.xml:440
+msgid ""
+"Returns [code]true[/code] if [Color] with given [code]name[/code] and "
+"associated with [Control] of given [code]type[/code] exists in assigned "
+"[Theme]."
+msgstr ""
+
+#: doc/classes/Control.xml:449
+msgid ""
+"Returns [code]true[/code] if [Color] with given [code]name[/code] has a "
+"valid override in this [Control] node."
+msgstr ""
+
+#: doc/classes/Control.xml:460
+msgid ""
+"Returns [code]true[/code] if constant with given [code]name[/code] and "
+"associated with [Control] of given [code]type[/code] exists in assigned "
+"[Theme]."
+msgstr ""
+
+#: doc/classes/Control.xml:469
+msgid ""
+"Returns [code]true[/code] if constant with given [code]name[/code] has a "
+"valid override in this [Control] node."
+msgstr ""
+
+#: doc/classes/Control.xml:480
+msgid ""
+"Returns [code]true[/code] if font with given [code]name[/code] and "
+"associated with [Control] of given [code]type[/code] exists in assigned "
+"[Theme]."
+msgstr ""
+
+#: doc/classes/Control.xml:489
+msgid ""
+"Returns [code]true[/code] if font with given [code]name[/code] has a valid "
+"override in this [Control] node."
+msgstr ""
+
+#: doc/classes/Control.xml:500
+msgid ""
+"Returns [code]true[/code] if icon with given [code]name[/code] and "
+"associated with [Control] of given [code]type[/code] exists in assigned "
+"[Theme]."
+msgstr ""
+
+#: doc/classes/Control.xml:509
+msgid ""
+"Returns [code]true[/code] if icon with given [code]name[/code] has a valid "
+"override in this [Control] node."
+msgstr ""
+
+#: doc/classes/Control.xml:518
+msgid ""
+"Returns [code]true[/code] if [Shader] with given [code]name[/code] has a "
+"valid override in this [Control] node."
+msgstr ""
+
+#: doc/classes/Control.xml:529
+msgid ""
+"Returns [code]true[/code] if [StyleBox] with given [code]name[/code] and "
+"associated with [Control] of given [code]type[/code] exists in assigned "
+"[Theme]."
+msgstr ""
+
+#: doc/classes/Control.xml:538
+msgid ""
+"Returns [code]true[/code] if [StyleBox] with given [code]name[/code] has a "
+"valid override in this [Control] node."
+msgstr ""
+
+#: doc/classes/Control.xml:545
+msgid ""
+"Invalidates the size cache in this node and in parent nodes up to toplevel. "
+"Intended to be used with [method get_minimum_size] when the return value is "
+"changed. Setting [member rect_min_size] directly calls this method "
+"automatically."
+msgstr ""
+
+#: doc/classes/Control.xml:552
+msgid ""
+"Give up the focus. No other control will be able to receive keyboard input."
+msgstr ""
+
+#: doc/classes/Control.xml:567
+msgid ""
+"Sets the anchor identified by [code]margin[/code] constant from [enum "
+"Margin] enum to value [code]anchor[/code]. A setter method for [member "
+"anchor_bottom], [member anchor_left], [member anchor_right] and [member "
+"anchor_top].\n"
+"If [code]keep_margin[/code] is [code]true[/code], margins aren't updated "
+"after this operation.\n"
+"If [code]push_opposite_anchor[/code] is [code]true[/code] and the opposite "
+"anchor overlaps this anchor, the opposite one will have its value "
+"overridden. For example, when setting left anchor to 1 and the right anchor "
+"has value of 0.5, the right anchor will also get value of 1. If "
+"[code]push_opposite_anchor[/code] was [code]false[/code], the left anchor "
+"would get value 0.5."
+msgstr ""
+
+#: doc/classes/Control.xml:584
+msgid ""
+"Works the same as [method set_anchor], but instead of [code]keep_margin[/"
+"code] argument and automatic update of margin, it allows to set the margin "
+"offset yourself (see [method set_margin])."
+msgstr ""
+
+#: doc/classes/Control.xml:597
+msgid ""
+"Sets both anchor preset and margin preset. See [method set_anchors_preset] "
+"and [method set_margins_preset]."
+msgstr ""
+
+#: doc/classes/Control.xml:608
+msgid ""
+"Sets the anchors to a [code]preset[/code] from [enum Control.LayoutPreset] "
+"enum. This is code equivalent of using the Layout menu in 2D editor.\n"
+"If [code]keep_margins[/code] is [code]true[/code], control's position will "
+"also be updated."
+msgstr ""
+
+#: doc/classes/Control.xml:618
+msgid ""
+"Sets [member margin_left] and [member margin_top] at the same time. "
+"Equivalent of changing [member rect_position]."
+msgstr ""
+
+#: doc/classes/Control.xml:627
+msgid ""
+"Forwards the handling of this control's drag and drop to [code]target[/code] "
+"control.\n"
+"Forwarding can be implemented in the target control similar to the methods "
+"[method get_drag_data], [method can_drop_data], and [method drop_data] but "
+"with two differences:\n"
+"1. The function name must be suffixed with [b]_fw[/b]\n"
+"2. The function must take an extra argument that is the control doing the "
+"forwarding\n"
+"[codeblock]\n"
+"# ThisControl.gd\n"
+"extends Control\n"
+"func _ready():\n"
+" set_drag_forwarding(target_control)\n"
+"\n"
+"# TargetControl.gd\n"
+"extends Control\n"
+"func can_drop_data_fw(position, data, from_control):\n"
+" return true\n"
+"\n"
+"func drop_data_fw(position, data, from_control):\n"
+" my_handle_data(data)\n"
+"\n"
+"func get_drag_data_fw(position, from_control):\n"
+" set_drag_preview(my_preview)\n"
+" return my_data()\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Control.xml:657
+msgid ""
+"Shows the given control at the mouse pointer. A good time to call this "
+"method is in [method get_drag_data]. The control must not be in the scene "
+"tree.\n"
+"[codeblock]\n"
+"export (Color, RGBA) var color = Color(1, 0, 0, 1)\n"
+"\n"
+"func get_drag_data(position):\n"
+" # Use a control that is not in the tree\n"
+" var cpb = ColorPickerButton.new()\n"
+" cpb.color = color\n"
+" cpb.rect_size = Vector2(50, 50)\n"
+" set_drag_preview(cpb)\n"
+" return color\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Control.xml:677
+msgid "Sets [member margin_right] and [member margin_bottom] at the same time."
+msgstr ""
+
+#: doc/classes/Control.xml:688
+msgid ""
+"Sets the anchor identified by [code]margin[/code] constant from [enum "
+"Margin] enum to [Control] at [code]neighbor[/code] node path. A setter "
+"method for [member focus_neighbour_bottom], [member focus_neighbour_left], "
+"[member focus_neighbour_right] and [member focus_neighbour_top]."
+msgstr ""
+
+#: doc/classes/Control.xml:699
+msgid ""
+"Sets the [member rect_global_position] to given [code]position[/code].\n"
+"If [code]keep_margins[/code] is [code]true[/code], control's anchors will be "
+"updated instead of margins."
+msgstr ""
+
+#: doc/classes/Control.xml:711
+msgid ""
+"Sets the margin identified by [code]margin[/code] constant from [enum "
+"Margin] enum to given [code]offset[/code]. A setter method for [member "
+"margin_bottom], [member margin_left], [member margin_right] and [member "
+"margin_top]."
+msgstr ""
+
+#: doc/classes/Control.xml:724
+msgid ""
+"Sets the margins to a [code]preset[/code] from [enum Control.LayoutPreset] "
+"enum. This is code equivalent of using the Layout menu in 2D editor.\n"
+"Use parameter [code]resize_mode[/code] with constants from [enum Control."
+"LayoutPresetMode] to better determine the resulting size of the [Control]. "
+"Constant size will be ignored if used with presets that change size, e.g. "
+"[code]PRESET_LEFT_WIDE[/code].\n"
+"Use parameter [code]margin[/code] to determine the gap between the [Control] "
+"and the edges."
+msgstr ""
+
+#: doc/classes/Control.xml:737
+msgid ""
+"Sets the [member rect_position] to given [code]position[/code].\n"
+"If [code]keep_margins[/code] is [code]true[/code], control's anchors will be "
+"updated instead of margins."
+msgstr ""
+
+#: doc/classes/Control.xml:747
+msgid "Sets the rotation (in radians)."
+msgstr ""
+
+#: doc/classes/Control.xml:758
+msgid ""
+"Sets the size (see [member rect_size]).\n"
+"If [code]keep_margins[/code] is [code]true[/code], control's anchors will be "
+"updated instead of margins."
+msgstr ""
+
+#: doc/classes/Control.xml:768
+msgid ""
+"Moves the mouse cursor to [code]to_position[/code], relative to [member "
+"rect_position] of this [Control]."
+msgstr ""
+
+#: doc/classes/Control.xml:774
+msgid ""
+"Anchors the bottom edge of the node to the origin, the center, or the end of "
+"its parent control. It changes how the bottom margin updates when the node "
+"moves or changes size. You can use one of the [enum Anchor] constants for "
+"convenience."
+msgstr ""
+
+#: doc/classes/Control.xml:777
+msgid ""
+"Anchors the left edge of the node to the origin, the center or the end of "
+"its parent control. It changes how the left margin updates when the node "
+"moves or changes size. You can use one of the [enum Anchor] constants for "
+"convenience."
+msgstr ""
+
+#: doc/classes/Control.xml:780
+msgid ""
+"Anchors the right edge of the node to the origin, the center or the end of "
+"its parent control. It changes how the right margin updates when the node "
+"moves or changes size. You can use one of the [enum Anchor] constants for "
+"convenience."
+msgstr ""
+
+#: doc/classes/Control.xml:783
+msgid ""
+"Anchors the top edge of the node to the origin, the center or the end of its "
+"parent control. It changes how the top margin updates when the node moves or "
+"changes size. You can use one of the [enum Anchor] constants for "
+"convenience."
+msgstr ""
+
+#: doc/classes/Control.xml:786
+msgid ""
+"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 signals."
+msgstr ""
+
+#: doc/classes/Control.xml:789
+msgid ""
+"Tells Godot which node it should give keyboard focus to if the user presses "
+"the down arrow on the keyboard or down on a gamepad by default. You can "
+"change the key by editing the [code]ui_down[/code] input action. The node "
+"must be a [Control]. If this property is not set, Godot will give focus to "
+"the closest [Control] to the bottom of this one."
+msgstr ""
+
+#: doc/classes/Control.xml:792
+msgid ""
+"Tells Godot which node it should give keyboard focus to if the user presses "
+"the left arrow on the keyboard or left on a gamepad by default. You can "
+"change the key by editing the [code]ui_left[/code] input action. The node "
+"must be a [Control]. If this property is not set, Godot will give focus to "
+"the closest [Control] to the left of this one."
+msgstr ""
+
+#: doc/classes/Control.xml:795
+msgid ""
+"Tells Godot which node it should give keyboard focus to if the user presses "
+"the right arrow on the keyboard or right on a gamepad by default. You can "
+"change the key by editing the [code]ui_right[/code] input action. The node "
+"must be a [Control]. If this property is not set, Godot will give focus to "
+"the closest [Control] to the bottom of this one."
+msgstr ""
+
+#: doc/classes/Control.xml:798
+msgid ""
+"Tells Godot which node it should give keyboard focus to if the user presses "
+"the top arrow on the keyboard or top on a gamepad by default. You can change "
+"the key by editing the [code]ui_top[/code] input action. The node must be a "
+"[Control]. If this property is not set, Godot will give focus to the closest "
+"[Control] to the bottom of this one."
+msgstr ""
+
+#: doc/classes/Control.xml:801
+msgid ""
+"Tells Godot which node it should give keyboard focus to if the user presses "
+"[kbd]Tab[/kbd] on a keyboard by default. You can change the key by editing "
+"the [code]ui_focus_next[/code] input action.\n"
+"If this property is not set, Godot will select a \"best guess\" based on "
+"surrounding nodes in the scene tree."
+msgstr ""
+
+#: doc/classes/Control.xml:805
+msgid ""
+"Tells Godot which node it should give keyboard focus to if the user presses "
+"[kbd]Shift + Tab[/kbd] on a keyboard by default. You can change the key by "
+"editing the [code]ui_focus_prev[/code] input action.\n"
+"If this property is not set, Godot will select a \"best guess\" based on "
+"surrounding nodes in the scene tree."
+msgstr ""
+
+#: doc/classes/Control.xml:809
+msgid ""
+"Controls the direction on the horizontal axis in which the control should "
+"grow if its horizontal minimum size is changed to be greater than its "
+"current size, as the control always has to be at least the minimum size."
+msgstr ""
+
+#: doc/classes/Control.xml:812
+msgid ""
+"Controls the direction on the vertical axis in which the control should grow "
+"if its vertical minimum size is changed to be greater than its current size, "
+"as the control always has to be at least the minimum size."
+msgstr ""
+
+#: doc/classes/Control.xml:815
+msgid ""
+"Changes the tooltip text. The tooltip appears when the user's mouse cursor "
+"stays idle over this control for a few moments, provided that the [member "
+"mouse_filter] property is not [constant MOUSE_FILTER_IGNORE]. You can change "
+"the time required for the tooltip to appear with [code]gui/timers/"
+"tooltip_delay_sec[/code] option in Project Settings."
+msgstr ""
+
+#: doc/classes/Control.xml:818
+msgid ""
+"Distance between the node's bottom edge and its parent control, based on "
+"[member anchor_bottom].\n"
+"Margins are often controlled by one or multiple parent [Container] nodes, so "
+"you should not modify them manually if your node is a direct child of a "
+"[Container]. Margins update automatically when you move or resize the node."
+msgstr ""
+
+#: doc/classes/Control.xml:822
+msgid ""
+"Distance between the node's left edge and its parent control, based on "
+"[member anchor_left].\n"
+"Margins are often controlled by one or multiple parent [Container] nodes, so "
+"you should not modify them manually if your node is a direct child of a "
+"[Container]. Margins update automatically when you move or resize the node."
+msgstr ""
+
+#: doc/classes/Control.xml:826
+msgid ""
+"Distance between the node's right edge and its parent control, based on "
+"[member anchor_right].\n"
+"Margins are often controlled by one or multiple parent [Container] nodes, so "
+"you should not modify them manually if your node is a direct child of a "
+"[Container]. Margins update automatically when you move or resize the node."
+msgstr ""
+
+#: doc/classes/Control.xml:830
+msgid ""
+"Distance between the node's top edge and its parent control, based on "
+"[member anchor_top].\n"
+"Margins are often controlled by one or multiple parent [Container] nodes, so "
+"you should not modify them manually if your node is a direct child of a "
+"[Container]. Margins update automatically when you move or resize the node."
+msgstr ""
+
+#: doc/classes/Control.xml:834
+msgid ""
+"The default cursor shape for this control. Useful for Godot plugins and "
+"applications or games that use the system's mouse cursors.\n"
+"[b]Note:[/b] On Linux, shapes may vary depending on the cursor theme of the "
+"system."
+msgstr ""
+
+#: doc/classes/Control.xml:838
+msgid ""
+"Controls whether the control will be able to receive mouse button input "
+"events through [method _gui_input] and how these events should be handled. "
+"Also controls whether the control can receive the [signal mouse_entered], "
+"and [signal mouse_exited] signals. See the constants to learn what each does."
+msgstr ""
+
+#: doc/classes/Control.xml:841
+msgid ""
+"Enables whether rendering of [CanvasItem] based children should be clipped "
+"to this control's rectangle. If [code]true[/code], parts of a child which "
+"would be visibly outside of this control's rectangle will not be rendered."
+msgstr ""
+
+#: doc/classes/Control.xml:844
+msgid ""
+"The node's global position, relative to the world (usually to the top-left "
+"corner of the window)."
+msgstr ""
+
+#: doc/classes/Control.xml:847
+msgid ""
+"The minimum size of the node's bounding rectangle. If you set it to a value "
+"greater than (0, 0), the node's bounding rectangle will always have at least "
+"this size, even if its content is smaller. If it's set to (0, 0), the node "
+"sizes automatically to fit its content, be it a texture or child nodes."
+msgstr ""
+
+#: doc/classes/Control.xml:850
+msgid ""
+"By default, the node's pivot is its top-left corner. When you change its "
+"[member rect_scale], it will scale around this pivot. Set this property to "
+"[member rect_size] / 2 to center the pivot in the node's rectangle."
+msgstr ""
+
+#: doc/classes/Control.xml:853
+msgid ""
+"The node's position, relative to its parent. It corresponds to the "
+"rectangle's top-left corner. The property is not affected by [member "
+"rect_pivot_offset]."
+msgstr ""
+
+#: doc/classes/Control.xml:856
+msgid ""
+"The node's rotation around its pivot, in degrees. See [member "
+"rect_pivot_offset] to change the pivot's position."
+msgstr ""
+
+#: doc/classes/Control.xml:859
+msgid ""
+"The node's scale, relative to its [member rect_size]. Change this property "
+"to scale the node around its [member rect_pivot_offset]. The Control's "
+"[member hint_tooltip] will also scale according to this value.\n"
+"[b]Note:[/b] This property is mainly intended to be used for animation "
+"purposes. Text inside the Control will look pixelated or blurry when the "
+"Control is scaled. To support multiple resolutions in your project, use an "
+"appropriate viewport stretch mode as described in the [url=https://docs."
+"godotengine.org/en/latest/tutorials/viewports/multiple_resolutions."
+"html]documentation[/url] instead of scaling Controls individually.\n"
+"[b]Note:[/b] If the Control node is a child of a [Container] node, the scale "
+"will be reset to [code]Vector2(1, 1)[/code] when the scene is instanced. To "
+"set the Control's scale when it's instanced, wait for one frame using "
+"[code]yield(get_tree(), \"idle_frame\")[/code] then set its [member "
+"rect_scale] property."
+msgstr ""
+
+#: doc/classes/Control.xml:864
+msgid ""
+"The size of the node's bounding rectangle, in pixels. [Container] nodes "
+"update this property automatically."
+msgstr ""
+
+#: doc/classes/Control.xml:867
+msgid ""
+"Tells the parent [Container] nodes how they should resize and place the node "
+"on the X axis. Use one of the [enum SizeFlags] constants to change the "
+"flags. See the constants to learn what each does."
+msgstr ""
+
+#: doc/classes/Control.xml:870
+msgid ""
+"If the node and at least one of its neighbours uses the [constant "
+"SIZE_EXPAND] size flag, the parent [Container] will let it take more or less "
+"space depending on this property. If this node has a stretch ratio of 2 and "
+"its neighbour a ratio of 1, this node will take two thirds of the available "
+"space."
+msgstr ""
+
+#: doc/classes/Control.xml:873
+msgid ""
+"Tells the parent [Container] nodes how they should resize and place the node "
+"on the Y axis. Use one of the [enum SizeFlags] constants to change the "
+"flags. See the constants to learn what each does."
+msgstr ""
+
+#: doc/classes/Control.xml:876
+msgid ""
+"Changing this property replaces the current [Theme] resource this node and "
+"all its [Control] children use."
+msgstr ""
+
+#: doc/classes/Control.xml:882
+msgid "Emitted when the node gains keyboard focus."
+msgstr ""
+
+#: doc/classes/Control.xml:887
+msgid "Emitted when the node loses keyboard focus."
+msgstr ""
+
+#: doc/classes/Control.xml:894
+msgid "Emitted when the node receives an [InputEvent]."
+msgstr ""
+
+#: doc/classes/Control.xml:899
+msgid "Emitted when the node's minimum size changes."
+msgstr ""
+
+#: doc/classes/Control.xml:904
+msgid ""
+"Emitted when the mouse enters the control's [code]Rect[/code] area, provided "
+"its [member mouse_filter] lets the event reach it."
+msgstr ""
+
+#: doc/classes/Control.xml:909
+msgid ""
+"Emitted when the mouse leaves the control's [code]Rect[/code] area, provided "
+"its [member mouse_filter] lets the event reach it."
+msgstr ""
+
+#: doc/classes/Control.xml:914
+msgid "Emitted when the control changes size."
+msgstr ""
+
+#: doc/classes/Control.xml:919
+msgid ""
+"Emitted when one of the size flags changes. See [member "
+"size_flags_horizontal] and [member size_flags_vertical]."
+msgstr ""
+
+#: doc/classes/Control.xml:929
+msgid "The node cannot grab focus. Use with [member focus_mode]."
+msgstr ""
+
+#: doc/classes/Control.xml:932
+msgid ""
+"The node can only grab focus on mouse clicks. Use with [member focus_mode]."
+msgstr ""
+
+#: doc/classes/Control.xml:935
+msgid ""
+"The node can grab focus on mouse click or using the arrows and the Tab keys "
+"on the keyboard. Use with [member focus_mode]."
+msgstr ""
+
+#: doc/classes/Control.xml:938
+msgid ""
+"Sent when the node changes size. Use [member rect_size] to get the new size."
+msgstr ""
+
+#: doc/classes/Control.xml:941
+msgid "Sent when the mouse pointer enters the node."
+msgstr ""
+
+#: doc/classes/Control.xml:944
+msgid "Sent when the mouse pointer exits the node."
+msgstr ""
+
+#: doc/classes/Control.xml:947
+msgid "Sent when the node grabs focus."
+msgstr ""
+
+#: doc/classes/Control.xml:950
+msgid "Sent when the node loses focus."
+msgstr ""
+
+#: doc/classes/Control.xml:953
+msgid ""
+"Sent when the node's [member theme] changes, right before Godot redraws the "
+"control. Happens when you call one of the [code]add_theme_*_override[/code] "
+"methods."
+msgstr ""
+
+#: doc/classes/Control.xml:956
+msgid ""
+"Sent when this node is inside a [ScrollContainer] which has begun being "
+"scrolled."
+msgstr ""
+
+#: doc/classes/Control.xml:959
+msgid ""
+"Sent when this node is inside a [ScrollContainer] which has stopped being "
+"scrolled."
+msgstr ""
+
+#: doc/classes/Control.xml:962
+msgid ""
+"Show the system's arrow mouse cursor when the user hovers the node. Use with "
+"[member mouse_default_cursor_shape]."
+msgstr ""
+
+#: doc/classes/Control.xml:965
+msgid ""
+"Show the system's I-beam mouse cursor when the user hovers the node. The I-"
+"beam pointer has a shape similar to \"I\". It tells the user they can "
+"highlight or insert text."
+msgstr ""
+
+#: doc/classes/Control.xml:968
+msgid ""
+"Show the system's pointing hand mouse cursor when the user hovers the node."
+msgstr ""
+
+#: doc/classes/Control.xml:971
+msgid "Show the system's cross mouse cursor when the user hovers the node."
+msgstr ""
+
+#: doc/classes/Control.xml:974
+msgid ""
+"Show the system's wait mouse cursor, often an hourglass, when the user "
+"hovers the node."
+msgstr ""
+
+#: doc/classes/Control.xml:977
+msgid ""
+"Show the system's busy mouse cursor when the user hovers the node. Often an "
+"hourglass."
+msgstr ""
+
+#: doc/classes/Control.xml:980
+msgid ""
+"Show the system's drag mouse cursor, often a closed fist or a cross symbol, "
+"when the user hovers the node. It tells the user they're currently dragging "
+"an item, like a node in the Scene dock."
+msgstr ""
+
+#: doc/classes/Control.xml:983
+msgid ""
+"Show the system's drop mouse cursor when the user hovers the node. It can be "
+"an open hand. It tells the user they can drop an item they're currently "
+"grabbing, like a node in the Scene dock."
+msgstr ""
+
+#: doc/classes/Control.xml:986
+msgid ""
+"Show the system's forbidden mouse cursor when the user hovers the node. "
+"Often a crossed circle."
+msgstr ""
+
+#: doc/classes/Control.xml:989
+msgid ""
+"Show the system's vertical resize mouse cursor when the user hovers the "
+"node. A double-headed vertical arrow. It tells the user they can resize the "
+"window or the panel vertically."
+msgstr ""
+
+#: doc/classes/Control.xml:992
+msgid ""
+"Show the system's horizontal resize mouse cursor when the user hovers the "
+"node. A double-headed horizontal arrow. It tells the user they can resize "
+"the window or the panel horizontally."
+msgstr ""
+
+#: doc/classes/Control.xml:995
+msgid ""
+"Show the system's window resize mouse cursor when the user hovers the node. "
+"The cursor is a double-headed arrow that goes from the bottom left to the "
+"top right. It tells the user they can resize the window or the panel both "
+"horizontally and vertically."
+msgstr ""
+
+#: doc/classes/Control.xml:998
+msgid ""
+"Show the system's window resize mouse cursor when the user hovers the node. "
+"The cursor is a double-headed arrow that goes from the top left to the "
+"bottom right, the opposite of [constant CURSOR_BDIAGSIZE]. It tells the user "
+"they can resize the window or the panel both horizontally and vertically."
+msgstr ""
+
+#: doc/classes/Control.xml:1001
+msgid ""
+"Show the system's move mouse cursor when the user hovers the node. It shows "
+"2 double-headed arrows at a 90 degree angle. It tells the user they can move "
+"a UI element freely."
+msgstr ""
+
+#: doc/classes/Control.xml:1004
+msgid ""
+"Show the system's vertical split mouse cursor when the user hovers the node. "
+"On Windows, it's the same as [constant CURSOR_VSIZE]."
+msgstr ""
+
+#: doc/classes/Control.xml:1007
+msgid ""
+"Show the system's horizontal split mouse cursor when the user hovers the "
+"node. On Windows, it's the same as [constant CURSOR_HSIZE]."
+msgstr ""
+
+#: doc/classes/Control.xml:1010
+msgid ""
+"Show the system's help mouse cursor when the user hovers the node, a "
+"question mark."
+msgstr ""
+
+#: doc/classes/Control.xml:1013
+msgid ""
+"Snap all 4 anchors to the top-left of the parent control's bounds. Use with "
+"[method set_anchors_preset]."
+msgstr ""
+
+#: doc/classes/Control.xml:1016
+msgid ""
+"Snap all 4 anchors to the top-right of the parent control's bounds. Use with "
+"[method set_anchors_preset]."
+msgstr ""
+
+#: doc/classes/Control.xml:1019
+msgid ""
+"Snap all 4 anchors to the bottom-left of the parent control's bounds. Use "
+"with [method set_anchors_preset]."
+msgstr ""
+
+#: doc/classes/Control.xml:1022
+msgid ""
+"Snap all 4 anchors to the bottom-right of the parent control's bounds. Use "
+"with [method set_anchors_preset]."
+msgstr ""
+
+#: doc/classes/Control.xml:1025
+msgid ""
+"Snap all 4 anchors to the center of the left edge of the parent control's "
+"bounds. Use with [method set_anchors_preset]."
+msgstr ""
+
+#: doc/classes/Control.xml:1028
+msgid ""
+"Snap all 4 anchors to the center of the top edge of the parent control's "
+"bounds. Use with [method set_anchors_preset]."
+msgstr ""
+
+#: doc/classes/Control.xml:1031
+msgid ""
+"Snap all 4 anchors to the center of the right edge of the parent control's "
+"bounds. Use with [method set_anchors_preset]."
+msgstr ""
+
+#: doc/classes/Control.xml:1034
+msgid ""
+"Snap all 4 anchors to the center of the bottom edge of the parent control's "
+"bounds. Use with [method set_anchors_preset]."
+msgstr ""
+
+#: doc/classes/Control.xml:1037
+msgid ""
+"Snap all 4 anchors to the center of the parent control's bounds. Use with "
+"[method set_anchors_preset]."
+msgstr ""
+
+#: doc/classes/Control.xml:1040
+msgid ""
+"Snap all 4 anchors to the left edge of the parent control. The left margin "
+"becomes relative to the left edge and the top margin relative to the top "
+"left corner of the node's parent. Use with [method set_anchors_preset]."
+msgstr ""
+
+#: doc/classes/Control.xml:1043
+msgid ""
+"Snap all 4 anchors to the top edge of the parent control. The left margin "
+"becomes relative to the top left corner, the top margin relative to the top "
+"edge, and the right margin relative to the top right corner of the node's "
+"parent. Use with [method set_anchors_preset]."
+msgstr ""
+
+#: doc/classes/Control.xml:1046
+msgid ""
+"Snap all 4 anchors to the right edge of the parent control. The right margin "
+"becomes relative to the right edge and the top margin relative to the top "
+"right corner of the node's parent. Use with [method set_anchors_preset]."
+msgstr ""
+
+#: doc/classes/Control.xml:1049
+msgid ""
+"Snap all 4 anchors to the bottom edge of the parent control. The left margin "
+"becomes relative to the bottom left corner, the bottom margin relative to "
+"the bottom edge, and the right margin relative to the bottom right corner of "
+"the node's parent. Use with [method set_anchors_preset]."
+msgstr ""
+
+#: doc/classes/Control.xml:1052
+msgid ""
+"Snap all 4 anchors to a vertical line that cuts the parent control in half. "
+"Use with [method set_anchors_preset]."
+msgstr ""
+
+#: doc/classes/Control.xml:1055
+msgid ""
+"Snap all 4 anchors to a horizontal line that cuts the parent control in "
+"half. Use with [method set_anchors_preset]."
+msgstr ""
+
+#: doc/classes/Control.xml:1058
+msgid ""
+"Snap all 4 anchors to the respective corners of the parent control. Set all "
+"4 margins to 0 after you applied this preset and the [Control] will fit its "
+"parent control. This is equivalent to the \"Full Rect\" layout option in the "
+"editor. Use with [method set_anchors_preset]."
+msgstr ""
+
+#: doc/classes/Control.xml:1061
+msgid "The control will be resized to its minimum size."
+msgstr ""
+
+#: doc/classes/Control.xml:1064
+msgid "The control's width will not change."
+msgstr ""
+
+#: doc/classes/Control.xml:1067
+msgid "The control's height will not change."
+msgstr ""
+
+#: doc/classes/Control.xml:1070
+msgid "The control's size will not change."
+msgstr ""
+
+#: doc/classes/Control.xml:1073
+msgid ""
+"Tells the parent [Container] to expand the bounds of this node to fill all "
+"the available space without pushing any other node. Use with [member "
+"size_flags_horizontal] and [member size_flags_vertical]."
+msgstr ""
+
+#: doc/classes/Control.xml:1076
+msgid ""
+"Tells the parent [Container] to let this node take all the available space "
+"on the axis you flag. If multiple neighboring nodes are set to expand, "
+"they'll share the space based on their stretch ratio. See [member "
+"size_flags_stretch_ratio]. Use with [member size_flags_horizontal] and "
+"[member size_flags_vertical]."
+msgstr ""
+
+#: doc/classes/Control.xml:1079
+msgid ""
+"Sets the node's size flags to both fill and expand. See the 2 constants "
+"above for more information."
+msgstr ""
+
+#: doc/classes/Control.xml:1082
+msgid ""
+"Tells the parent [Container] to center the node in itself. It centers the "
+"control based on its bounding box, so it doesn't work with the fill or "
+"expand size flags. Use with [member size_flags_horizontal] and [member "
+"size_flags_vertical]."
+msgstr ""
+
+#: doc/classes/Control.xml:1085
+msgid ""
+"Tells the parent [Container] to align the node with its end, either the "
+"bottom or the right edge. It doesn't work with the fill or expand size "
+"flags. Use with [member size_flags_horizontal] and [member "
+"size_flags_vertical]."
+msgstr ""
+
+#: doc/classes/Control.xml:1088
+msgid ""
+"The control will receive mouse button input events through [method "
+"_gui_input] if clicked on. And the control will receive the [signal "
+"mouse_entered] and [signal mouse_exited] signals. These events are "
+"automatically marked as handled, and they will not propagate further to "
+"other controls. This also results in blocking signals in other controls."
+msgstr ""
+
+#: doc/classes/Control.xml:1091
+msgid ""
+"The control will receive mouse button input events through [method "
+"_gui_input] if clicked on. And the control will receive the [signal "
+"mouse_entered] and [signal mouse_exited] signals. If this control does not "
+"handle the event, the parent control (if any) will be considered, and so on "
+"until there is no more parent control to potentially handle it. This also "
+"allows signals to fire in other controls. Even if no control handled it at "
+"all, the event will still be handled automatically, so unhandled input will "
+"not be fired."
+msgstr ""
+
+#: doc/classes/Control.xml:1094
+msgid ""
+"The control will not receive mouse button input events through [method "
+"_gui_input]. The control will also not receive the [signal mouse_entered] "
+"nor [signal mouse_exited] signals. This will not block other controls from "
+"receiving these events or firing the signals. Ignored events will not be "
+"handled automatically."
+msgstr ""
+
+#: doc/classes/Control.xml:1097
+msgid ""
+"The control will grow to the left or top to make up if its minimum size is "
+"changed to be greater than its current size on the respective axis."
+msgstr ""
+
+#: doc/classes/Control.xml:1100
+msgid ""
+"The control will grow to the right or bottom to make up if its minimum size "
+"is changed to be greater than its current size on the respective axis."
+msgstr ""
+
+#: doc/classes/Control.xml:1103
+msgid ""
+"The control will grow in both directions equally to make up if its minimum "
+"size is changed to be greater than its current size."
+msgstr ""
+
+#: doc/classes/Control.xml:1106
+msgid ""
+"Snaps one of the 4 anchor's sides to the origin of the node's [code]Rect[/"
+"code], in the top left. Use it with one of the [code]anchor_*[/code] member "
+"variables, like [member anchor_left]. To change all 4 anchors at once, use "
+"[method set_anchors_preset]."
+msgstr ""
+
+#: doc/classes/Control.xml:1109
+msgid ""
+"Snaps one of the 4 anchor's sides to the end of the node's [code]Rect[/"
+"code], in the bottom right. Use it with one of the [code]anchor_*[/code] "
+"member variables, like [member anchor_left]. To change all 4 anchors at "
+"once, use [method set_anchors_preset]."
+msgstr ""
+
+#: doc/classes/ConvexPolygonShape2D.xml:4
+msgid "Convex polygon shape for 2D physics."
+msgstr ""
+
+#: doc/classes/ConvexPolygonShape2D.xml:7
+msgid ""
+"Convex polygon shape for 2D physics. A convex polygon, whatever its shape, "
+"is internally decomposed into as many convex polygons as needed to ensure "
+"all collision checks against it are always done on convex polygons (which "
+"are faster to check).\n"
+"The main difference between a [ConvexPolygonShape2D] and a "
+"[ConcavePolygonShape2D] is that a concave polygon assumes it is concave and "
+"uses a more complex method of collision detection, and a convex one forces "
+"itself to be convex in order to speed up collision detection."
+msgstr ""
+
+#: doc/classes/ConvexPolygonShape2D.xml:19
+msgid ""
+"Based on the set of points provided, this creates and assigns the [member "
+"points] property using the convex hull algorithm. Removing all unneeded "
+"points. See [method Geometry2D.convex_hull] for details."
+msgstr ""
+
+#: doc/classes/ConvexPolygonShape2D.xml:25
+msgid ""
+"The polygon's list of vertices. Can be in either clockwise or "
+"counterclockwise order."
+msgstr ""
+
+#: doc/classes/ConvexPolygonShape3D.xml:4
+msgid "Convex polygon shape for 3D physics."
+msgstr ""
+
+#: doc/classes/ConvexPolygonShape3D.xml:7
+msgid ""
+"Convex polygon shape resource, which can be added to a [PhysicsBody3D] or "
+"area."
+msgstr ""
+
+#: doc/classes/ConvexPolygonShape3D.xml:15
+msgid "The list of 3D points forming the convex polygon shape."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:4
+msgid "CPU-based 2D particle emitter."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:7
+msgid ""
+"CPU-based 2D particle node used to create a variety of particle systems and "
+"effects.\n"
+"See also [GPUParticles2D], which provides the same functionality with "
+"hardware acceleration, but may not run on older devices."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:11 doc/classes/GPUParticles2D.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/2d/particle_systems_2d.html"
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:20
+msgid ""
+"Sets this node's properties to match a given [GPUParticles2D] node with an "
+"assigned [ParticlesMaterial]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:29 doc/classes/CPUParticles3D.xml:28
+msgid "Returns the base value of the parameter specified by [enum Parameter]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:38 doc/classes/CPUParticles3D.xml:37
+msgid "Returns the [Curve] of the parameter specified by [enum Parameter]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:47 doc/classes/CPUParticles3D.xml:46
+msgid ""
+"Returns the randomness factor of the parameter specified by [enum Parameter]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:56 doc/classes/CPUParticles3D.xml:55
+msgid ""
+"Returns the enabled state of the given flag (see [enum Flags] for options)."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:63 doc/classes/CPUParticles3D.xml:62
+msgid "Restarts the particle emitter."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:74 doc/classes/CPUParticles3D.xml:73
+msgid "Sets the base value of the parameter specified by [enum Parameter]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:85 doc/classes/CPUParticles3D.xml:84
+msgid "Sets the [Curve] of the parameter specified by [enum Parameter]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:96 doc/classes/CPUParticles3D.xml:95
+msgid ""
+"Sets the randomness factor of the parameter specified by [enum Parameter]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:107 doc/classes/CPUParticles3D.xml:106
+msgid "Enables or disables the given flag (see [enum Flags] for options)."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:113 doc/classes/CPUParticles3D.xml:112
+#: doc/classes/GPUParticles2D.xml:31
+msgid "Number of particles emitted in one emission cycle."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:116 doc/classes/CPUParticles3D.xml:115
+msgid "Initial rotation applied to each particle, in degrees."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:119 doc/classes/CPUParticles3D.xml:118
+msgid "Each particle's rotation will be animated along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:122 doc/classes/CPUParticles3D.xml:121
+#: doc/classes/ParticlesMaterial.xml:104
+msgid "Rotation randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:125 doc/classes/CPUParticles3D.xml:124
+msgid ""
+"Initial angular velocity applied to each particle. Sets the speed of "
+"rotation of the particle."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:128 doc/classes/CPUParticles3D.xml:127
+msgid "Each particle's angular velocity will vary along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:131 doc/classes/CPUParticles3D.xml:130
+#: doc/classes/ParticlesMaterial.xml:114
+msgid "Angular velocity randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:134 doc/classes/CPUParticles3D.xml:133
+#: doc/classes/ParticlesMaterial.xml:117
+msgid "Particle animation offset."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:137 doc/classes/CPUParticles3D.xml:136
+msgid "Each particle's animation offset will vary along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:140 doc/classes/CPUParticles3D.xml:139
+#: doc/classes/ParticlesMaterial.xml:123
+msgid "Animation offset randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:143 doc/classes/CPUParticles3D.xml:142
+#: doc/classes/ParticlesMaterial.xml:126
+msgid "Particle animation speed."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:146 doc/classes/CPUParticles3D.xml:145
+msgid "Each particle's animation speed will vary along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:149 doc/classes/CPUParticles3D.xml:148
+#: doc/classes/ParticlesMaterial.xml:132
+msgid "Animation speed randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:152
+msgid ""
+"Each particle's initial color. If [member texture] is defined, it will be "
+"multiplied by this color."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:155
+msgid "Each particle's color will vary along this [Gradient]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:158 doc/classes/CPUParticles3D.xml:157
+#: doc/classes/ParticlesMaterial.xml:141
+msgid "The rate at which particles lose velocity."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:161 doc/classes/CPUParticles3D.xml:160
+msgid "Damping will vary along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:164 doc/classes/CPUParticles3D.xml:163
+#: doc/classes/ParticlesMaterial.xml:147
+msgid "Damping randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:167 doc/classes/CPUParticles3D.xml:166
+#: doc/classes/ParticlesMaterial.xml:150
+msgid "Unit vector specifying the particles' emission direction."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:170 doc/classes/CPUParticles3D.xml:169
+#: doc/classes/GPUParticles2D.xml:34 doc/classes/GPUParticles3D.xml:54
+msgid "Particle draw order. Uses [enum DrawOrder] values."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:173 doc/classes/CPUParticles3D.xml:175
+msgid ""
+"Sets the [Color]s to modulate particles by when using [constant "
+"EMISSION_SHAPE_POINTS] or [constant EMISSION_SHAPE_DIRECTED_POINTS]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:176 doc/classes/CPUParticles3D.xml:178
+msgid ""
+"Sets the direction the particles will be emitted in when using [constant "
+"EMISSION_SHAPE_DIRECTED_POINTS]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:179 doc/classes/CPUParticles3D.xml:181
+msgid ""
+"Sets the initial positions to spawn particles when using [constant "
+"EMISSION_SHAPE_POINTS] or [constant EMISSION_SHAPE_DIRECTED_POINTS]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:182
+msgid ""
+"The rectangle's extents if [member emission_shape] is set to [constant "
+"EMISSION_SHAPE_RECTANGLE]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:185 doc/classes/CPUParticles3D.xml:184
+msgid ""
+"Particles will be emitted inside this region. See [enum EmissionShape] for "
+"possible values."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:188
+msgid ""
+"The sphere's radius if [member emission_shape] is set to [constant "
+"EMISSION_SHAPE_SPHERE]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:191 doc/classes/CPUParticles3D.xml:190
+#: doc/classes/GPUParticles2D.xml:37 doc/classes/GPUParticles3D.xml:72
+msgid "If [code]true[/code], particles are being emitted."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:194 doc/classes/CPUParticles3D.xml:193
+#: doc/classes/GPUParticles2D.xml:40
+msgid ""
+"How rapidly particles in an emission cycle are emitted. If greater than "
+"[code]0[/code], there will be a gap in emissions before the next cycle "
+"begins."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:197 doc/classes/GPUParticles2D.xml:43
+#: doc/classes/GPUParticles3D.xml:78
+msgid ""
+"The particle system's frame rate is fixed to a value. For instance, changing "
+"the value to 2 will make the particles render at 2 frames per second. Note "
+"this does not slow down the simulation of the particle system itself."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:200 doc/classes/CPUParticles3D.xml:199
+#: doc/classes/ParticlesMaterial.xml:174
+msgid "Align Y axis of particle with the direction of its velocity."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:203 doc/classes/CPUParticles3D.xml:211
+#: doc/classes/GPUParticles2D.xml:46 doc/classes/GPUParticles3D.xml:81
+msgid ""
+"If [code]true[/code], results in fractional delta calculation which has a "
+"smoother particles display effect."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:206 doc/classes/CPUParticles3D.xml:214
+#: doc/classes/ParticlesMaterial.xml:186
+msgid "Gravity applied to every particle."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:209 doc/classes/CPUParticles3D.xml:217
+#: doc/classes/ParticlesMaterial.xml:189
+msgid "Initial hue variation applied to each particle."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:212 doc/classes/CPUParticles3D.xml:220
+msgid "Each particle's hue will vary along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:215 doc/classes/CPUParticles3D.xml:223
+#: doc/classes/ParticlesMaterial.xml:195
+msgid "Hue variation randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:218 doc/classes/CPUParticles3D.xml:226
+#: doc/classes/ParticlesMaterial.xml:198
+msgid ""
+"Initial velocity magnitude for each particle. Direction comes from [member "
+"spread] and the node's orientation."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:221 doc/classes/CPUParticles3D.xml:229
+#: doc/classes/ParticlesMaterial.xml:201
+msgid "Initial velocity randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:224 doc/classes/CPUParticles3D.xml:232
+#: doc/classes/GPUParticles2D.xml:49 doc/classes/GPUParticles3D.xml:84
+msgid "Amount of time each particle will exist."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:227 doc/classes/CPUParticles3D.xml:235
+#: doc/classes/ParticlesMaterial.xml:204
+msgid "Particle lifetime randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:230 doc/classes/CPUParticles3D.xml:238
+#: doc/classes/ParticlesMaterial.xml:207
+msgid ""
+"Linear acceleration applied to each particle in the direction of motion."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:233 doc/classes/CPUParticles3D.xml:241
+msgid "Each particle's linear acceleration will vary along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:236 doc/classes/CPUParticles3D.xml:244
+#: doc/classes/ParticlesMaterial.xml:213
+msgid "Linear acceleration randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:239 doc/classes/CPUParticles3D.xml:247
+#: doc/classes/GPUParticles2D.xml:52 doc/classes/GPUParticles3D.xml:87
+msgid ""
+"If [code]true[/code], particles use the parent node's coordinate space. If "
+"[code]false[/code], they use global coordinates."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:242 doc/classes/GPUParticles2D.xml:55
+msgid ""
+"Normal map to be used for the [member texture] property.\n"
+"[b]Note:[/b] Godot expects the normal map to use X+, Y-, and Z+ coordinates. "
+"See [url=http://wiki.polycount.com/wiki/"
+"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]this page[/url] for "
+"a comparison of normal map coordinates expected by popular engines."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:246 doc/classes/CPUParticles3D.xml:253
+#: doc/classes/GPUParticles2D.xml:59
+msgid ""
+"If [code]true[/code], only one emission cycle occurs. If set [code]true[/"
+"code] during a cycle, emission will stop at the cycle's end."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:249
+msgid ""
+"Orbital velocity applied to each particle. Makes the particles circle around "
+"origin. Specified in number of full rotations around origin per second."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:252 doc/classes/CPUParticles3D.xml:260
+msgid "Each particle's orbital velocity will vary along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:255 doc/classes/CPUParticles3D.xml:263
+#: doc/classes/ParticlesMaterial.xml:223
+msgid "Orbital velocity randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:258 doc/classes/CPUParticles3D.xml:266
+#: doc/classes/GPUParticles2D.xml:62
+msgid "Particle system starts as if it had already run for this many seconds."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:261 doc/classes/CPUParticles3D.xml:269
+#: doc/classes/ParticlesMaterial.xml:226
+msgid ""
+"Radial acceleration applied to each particle. Makes particle accelerate away "
+"from origin."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:264 doc/classes/CPUParticles3D.xml:272
+msgid "Each particle's radial acceleration will vary along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:267 doc/classes/CPUParticles3D.xml:275
+#: doc/classes/ParticlesMaterial.xml:232
+msgid "Radial acceleration randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:270 doc/classes/CPUParticles3D.xml:278
+#: doc/classes/GPUParticles2D.xml:68
+msgid "Emission lifetime randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:273 doc/classes/CPUParticles3D.xml:281
+#: doc/classes/ParticlesMaterial.xml:235
+msgid "Initial scale applied to each particle."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:276 doc/classes/CPUParticles3D.xml:284
+msgid "Each particle's scale will vary along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:279 doc/classes/CPUParticles3D.xml:287
+#: doc/classes/ParticlesMaterial.xml:241
+msgid "Scale randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:282 doc/classes/CPUParticles3D.xml:290
+#: doc/classes/GPUParticles2D.xml:71
+msgid ""
+"Particle system's running speed scaling ratio. A value of [code]0[/code] can "
+"be used to pause the particles."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:285
+msgid ""
+"Each particle's initial direction range from [code]+spread[/code] to [code]-"
+"spread[/code] degrees."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:288 doc/classes/CPUParticles3D.xml:296
+#: doc/classes/ParticlesMaterial.xml:247
+msgid ""
+"Tangential acceleration applied to each particle. Tangential acceleration is "
+"perpendicular to the particle's velocity giving the particles a swirling "
+"motion."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:291 doc/classes/CPUParticles3D.xml:299
+msgid "Each particle's tangential acceleration will vary along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:294 doc/classes/CPUParticles3D.xml:302
+#: doc/classes/ParticlesMaterial.xml:253
+msgid "Tangential acceleration randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:297 doc/classes/GPUParticles2D.xml:74
+msgid "Particle texture. If [code]null[/code], particles will be squares."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:302 doc/classes/CPUParticles3D.xml:307
+#: doc/classes/GPUParticles2D.xml:82 doc/classes/GPUParticles3D.xml:110
+msgid "Particles are drawn in the order emitted."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:305 doc/classes/CPUParticles3D.xml:310
+#: doc/classes/GPUParticles2D.xml:85 doc/classes/GPUParticles3D.xml:113
+msgid "Particles are drawn in order of remaining lifetime."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:308 doc/classes/CPUParticles3D.xml:316
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set initial velocity properties."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:311 doc/classes/CPUParticles3D.xml:319
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set angular velocity properties."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:314 doc/classes/CPUParticles3D.xml:322
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set orbital velocity properties."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:317 doc/classes/CPUParticles3D.xml:325
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set linear acceleration properties."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:320 doc/classes/CPUParticles3D.xml:328
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set radial acceleration properties."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:323 doc/classes/CPUParticles3D.xml:331
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set tangential acceleration properties."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:326 doc/classes/CPUParticles3D.xml:334
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set damping properties."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:329 doc/classes/CPUParticles3D.xml:337
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set angle properties."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:332 doc/classes/CPUParticles3D.xml:340
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set scale properties."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:335 doc/classes/CPUParticles3D.xml:343
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set hue variation properties."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:338 doc/classes/CPUParticles3D.xml:346
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set animation speed properties."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:341 doc/classes/CPUParticles3D.xml:349
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set animation offset properties."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:344 doc/classes/CPUParticles3D.xml:352
+#: doc/classes/ParticlesMaterial.xml:303
+msgid "Represents the size of the [enum Parameter] enum."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:347 doc/classes/CPUParticles3D.xml:355
+msgid "Use with [method set_particle_flag] to set [member flag_align_y]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:350 doc/classes/CPUParticles2D.xml:353
+msgid "Present for consistency with 3D particle nodes, not used in 2D."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:359 doc/classes/CPUParticles3D.xml:367
+#: doc/classes/ParticlesMaterial.xml:318
+msgid "All particles will be emitted from a single point."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:362
+msgid ""
+"Particles will be emitted on the surface of a sphere flattened to two "
+"dimensions."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:365
+msgid "Particles will be emitted in the area of a rectangle."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:368 doc/classes/CPUParticles3D.xml:376
+msgid ""
+"Particles will be emitted at a position chosen randomly among [member "
+"emission_points]. Particle color will be modulated by [member "
+"emission_colors]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:371 doc/classes/CPUParticles3D.xml:379
+msgid ""
+"Particles will be emitted at a position chosen randomly among [member "
+"emission_points]. Particle velocity and rotation will be set based on "
+"[member emission_normals]. Particle color will be modulated by [member "
+"emission_colors]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:374 doc/classes/CPUParticles3D.xml:382
+#: doc/classes/ParticlesMaterial.xml:333
+msgid "Represents the size of the [enum EmissionShape] enum."
+msgstr ""
+
+#: doc/classes/CPUParticles3D.xml:4
+msgid "CPU-based 3D particle emitter."
+msgstr ""
+
+#: doc/classes/CPUParticles3D.xml:7
+msgid ""
+"CPU-based 3D particle node used to create a variety of particle systems and "
+"effects.\n"
+"See also [GPUParticles3D], which provides the same functionality with "
+"hardware acceleration, but may not run on older devices."
+msgstr ""
+
+#: doc/classes/CPUParticles3D.xml:19
+msgid ""
+"Sets this node's properties to match a given [GPUParticles3D] node with an "
+"assigned [ParticlesMaterial]."
+msgstr ""
+
+#: doc/classes/CPUParticles3D.xml:151 doc/classes/CPUParticles3D.xml:154
+msgid "Unused for 3D particles."
+msgstr ""
+
+#: doc/classes/CPUParticles3D.xml:172
+msgid ""
+"The rectangle's extents if [member emission_shape] is set to [constant "
+"EMISSION_SHAPE_BOX]."
+msgstr ""
+
+#: doc/classes/CPUParticles3D.xml:187
+msgid ""
+"The sphere's radius if [enum EmissionShape] is set to [constant "
+"EMISSION_SHAPE_SPHERE]."
+msgstr ""
+
+#: doc/classes/CPUParticles3D.xml:196
+msgid ""
+"The particle system's frame rate is fixed to a value. For instance, changing "
+"the value to 2 will make the particles render at 2 frames per second. Note "
+"this does not slow down the particle system itself."
+msgstr ""
+
+#: doc/classes/CPUParticles3D.xml:202 doc/classes/ParticlesMaterial.xml:177
+msgid "If [code]true[/code], particles will not move on the z axis."
+msgstr ""
+
+#: doc/classes/CPUParticles3D.xml:205 doc/classes/ParticlesMaterial.xml:180
+msgid "If [code]true[/code], particles rotate around Y axis by [member angle]."
+msgstr ""
+
+#: doc/classes/CPUParticles3D.xml:208 doc/classes/ParticlesMaterial.xml:183
+msgid ""
+"Amount of [member spread] in Y/Z plane. A value of [code]1[/code] restricts "
+"particles to X/Z plane."
+msgstr ""
+
+#: doc/classes/CPUParticles3D.xml:250
+msgid ""
+"The [Mesh] used for each particle. If [code]null[/code], particles will be "
+"spheres."
+msgstr ""
+
+#: doc/classes/CPUParticles3D.xml:256
+msgid ""
+"Orbital velocity applied to each particle. Makes the particles circle around "
+"origin in the local XY plane. Specified in number of full rotations around "
+"origin per second.\n"
+"This property is only available when [member flag_disable_z] is [code]true[/"
+"code]."
+msgstr ""
+
+#: doc/classes/CPUParticles3D.xml:293 doc/classes/ParticlesMaterial.xml:244
+msgid ""
+"Each particle's initial direction range from [code]+spread[/code] to [code]-"
+"spread[/code] degrees. Applied to X/Z plane and Y/Z planes."
+msgstr ""
+
+#: doc/classes/CPUParticles3D.xml:313 doc/classes/GPUParticles3D.xml:116
+msgid "Particles are drawn in order of depth."
+msgstr ""
+
+#: doc/classes/CPUParticles3D.xml:358
+msgid "Use with [method set_particle_flag] to set [member flag_rotate_y]."
+msgstr ""
+
+#: doc/classes/CPUParticles3D.xml:361
+msgid "Use with [method set_particle_flag] to set [member flag_disable_z]."
+msgstr ""
+
+#: doc/classes/CPUParticles3D.xml:370 doc/classes/ParticlesMaterial.xml:321
+msgid "Particles will be emitted in the volume of a sphere."
+msgstr ""
+
+#: doc/classes/CPUParticles3D.xml:373 doc/classes/ParticlesMaterial.xml:324
+msgid "Particles will be emitted in the volume of a box."
+msgstr ""
+
+#: doc/classes/Crypto.xml:4
+msgid "Access to advanced cryptographic functionalities."
+msgstr ""
+
+#: doc/classes/Crypto.xml:7
+msgid ""
+"The Crypto class allows you to access some more advanced cryptographic "
+"functionalities in Godot.\n"
+"For now, this includes generating cryptographically secure random bytes, RSA "
+"keys and self-signed X509 certificates generation, asymmetric key encryption/"
+"decryption, and signing/verification.\n"
+"[codeblock]\n"
+"extends Node\n"
+"\n"
+"var crypto = Crypto.new()\n"
+"var key = CryptoKey.new()\n"
+"var cert = X509Certificate.new()\n"
+"\n"
+"func _ready():\n"
+" # Generate new RSA key.\n"
+" key = crypto.generate_rsa(4096)\n"
+" # Generate new self-signed certificate with the given key.\n"
+" cert = crypto.generate_self_signed_certificate(key, \"CN=mydomain.com,"
+"O=My Game Company,C=IT\")\n"
+" # Save key and certificate in the user folder.\n"
+" key.save(\"user://generated.key\")\n"
+" cert.save(\"user://generated.crt\")\n"
+" # Encryption\n"
+" var data = \"Some data\"\n"
+" var encrypted = crypto.encrypt(key, data.to_utf8())\n"
+" # Decryption\n"
+" var decrypted = crypto.decrypt(key, encrypted)\n"
+" # Signing\n"
+" var signature = crypto.sign(HashingContext.HASH_SHA256, data."
+"sha256_buffer(), key)\n"
+" # Verifying\n"
+" var verified = crypto.verify(HashingContext.HASH_SHA256, data."
+"sha256_buffer(), signature, key)\n"
+" # Checks\n"
+" assert(verified)\n"
+" assert(data.to_utf8() == decrypted)\n"
+"[/codeblock]\n"
+"[b]Note:[/b] Not available in HTML5 exports."
+msgstr ""
+
+#: doc/classes/Crypto.xml:50
+msgid ""
+"Decrypt the given [code]ciphertext[/code] with the provided private "
+"[code]key[/code].\n"
+"[b]Note[/b]: The maximum size of accepted ciphertext is limited by the key "
+"size."
+msgstr ""
+
+#: doc/classes/Crypto.xml:62
+msgid ""
+"Encrypt the given [code]plaintext[/code] with the provided public [code]key[/"
+"code].\n"
+"[b]Note[/b]: The maximum size of accepted plaintext is limited by the key "
+"size."
+msgstr ""
+
+#: doc/classes/Crypto.xml:72
+msgid ""
+"Generates a [PackedByteArray] of cryptographically secure random bytes with "
+"given [code]size[/code]."
+msgstr ""
+
+#: doc/classes/Crypto.xml:81
+msgid ""
+"Generates an RSA [CryptoKey] that can be used for creating self-signed "
+"certificates and passed to [method StreamPeerSSL.accept_stream]."
+msgstr ""
+
+#: doc/classes/Crypto.xml:96
+msgid ""
+"Generates a self-signed [X509Certificate] from the given [CryptoKey] and "
+"[code]issuer_name[/code]. The certificate validity will be defined by "
+"[code]not_before[/code] and [code]not_after[/code] (first valid date and "
+"last valid date). The [code]issuer_name[/code] must contain at least \"CN="
+"\" (common name, i.e. the domain name), \"O=\" (organization, i.e. your "
+"company name), \"C=\" (country, i.e. 2 lettered ISO-3166 code of the country "
+"the organization is based in).\n"
+"A small example to generate an RSA key and a X509 self-signed certificate.\n"
+"[codeblock]\n"
+"var crypto = Crypto.new()\n"
+"# Generate 4096 bits RSA key.\n"
+"var key = crypto.generate_rsa(4096)\n"
+"# Generate self-signed certificate using the given key.\n"
+"var cert = crypto.generate_self_signed_certificate(key, \"CN=example.com,O=A "
+"Game Company,C=IT\")\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Crypto.xml:117
+msgid ""
+"Sign a given [code]hash[/code] of type [code]hash_type[/code] with the "
+"provided private [code]key[/code]."
+msgstr ""
+
+#: doc/classes/Crypto.xml:132
+msgid ""
+"Verify that a given [code]signature[/code] for [code]hash[/code] of type "
+"[code]hash_type[/code] against the provided public [code]key[/code]."
+msgstr ""
+
+#: doc/classes/CryptoKey.xml:4
+msgid "A cryptographic key (RSA)."
+msgstr ""
+
+#: doc/classes/CryptoKey.xml:7
+msgid ""
+"The CryptoKey class represents a cryptographic key. Keys can be loaded and "
+"saved like any other [Resource].\n"
+"They can be used to generate a self-signed [X509Certificate] via [method "
+"Crypto.generate_self_signed_certificate] and as private key in [method "
+"StreamPeerSSL.accept_stream] along with the appropriate certificate.\n"
+"[b]Note:[/b] Not available in HTML5 exports."
+msgstr ""
+
+#: doc/classes/CryptoKey.xml:18
+msgid ""
+"Return [code]true[/code] if this CryptoKey only has the public part, and not "
+"the private one."
+msgstr ""
+
+#: doc/classes/CryptoKey.xml:29
+msgid ""
+"Loads a key from [code]path[/code]. If [code]public_only[/code] is "
+"[code]true[/code], only the public key will be loaded.\n"
+"[b]Note[/b]: [code]path[/code] should should be a \"*.pub\" file if "
+"[code]public_only[/code] is [code]true[/code], a \"*.key\" file otherwise."
+msgstr ""
+
+#: doc/classes/CryptoKey.xml:41
+msgid ""
+"Loads a key from the given [code]string[/code]. If [code]public_only[/code] "
+"is [code]true[/code], only the public key will be loaded."
+msgstr ""
+
+#: doc/classes/CryptoKey.xml:52
+msgid ""
+"Saves a key to the given [code]path[/code]. If [code]public_only[/code] is "
+"[code]true[/code], only the public key will be saved.\n"
+"[b]Note[/b]: [code]path[/code] should should be a \"*.pub\" file if "
+"[code]public_only[/code] is [code]true[/code], a \"*.key\" file otherwise."
+msgstr ""
+
+#: doc/classes/CryptoKey.xml:62
+msgid ""
+"Returns a string containing the key in PEM format. If [code]public_only[/"
+"code] is [code]true[/code], only the public key will be included."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGBox3D.xml:4
+msgid "A CSG Box shape."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGBox3D.xml:7
+msgid "This node allows you to create a box for use with the CSG system."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGBox3D.xml:15
+msgid "Depth of the box measured from the center of the box."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGBox3D.xml:18
+msgid "Height of the box measured from the center of the box."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGBox3D.xml:21
+msgid "The material used to render the box."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGBox3D.xml:24
+msgid "Width of the box measured from the center of the box."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGCombiner3D.xml:4
+msgid "A CSG node that allows you to combine other CSG modifiers."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGCombiner3D.xml:7
+msgid ""
+"For complex arrangements of shapes, it is sometimes needed to add structure "
+"to your CSG nodes. The CSGCombiner3D node allows you to create this "
+"structure. The node encapsulates the result of the CSG operations of its "
+"children. In this way, it is possible to do operations on one set of shapes "
+"that are children of one CSGCombiner3D node, and a set of separate "
+"operations on a second set of shapes that are children of a second "
+"CSGCombiner3D node, and then do an operation that takes the two end results "
+"as its input to create the final shape."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGCylinder3D.xml:4
+msgid "A CSG Cylinder shape."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGCylinder3D.xml:7
+msgid ""
+"This node allows you to create a cylinder (or cone) for use with the CSG "
+"system."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGCylinder3D.xml:15
+msgid ""
+"If [code]true[/code] a cone is created, the [member radius] will only apply "
+"to one side."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGCylinder3D.xml:18
+msgid "The height of the cylinder."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGCylinder3D.xml:21
+msgid "The material used to render the cylinder."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGCylinder3D.xml:24
+msgid "The radius of the cylinder."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGCylinder3D.xml:27
+msgid ""
+"The number of sides of the cylinder, the higher this number the more detail "
+"there will be in the cylinder."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGCylinder3D.xml:30
+msgid ""
+"If [code]true[/code] the normals of the cylinder are set to give a smooth "
+"effect making the cylinder seem rounded. If [code]false[/code] the cylinder "
+"will have a flat shaded look."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGMesh3D.xml:4
+msgid "A CSG Mesh shape that uses a mesh resource."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGMesh3D.xml:7
+msgid ""
+"This CSG node allows you to use any mesh resource as a CSG shape, provided "
+"it is closed, does not self-intersect, does not contain internal faces and "
+"has no edges that connect to more then two faces."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGMesh3D.xml:15
+msgid "The [Material] used in drawing the CSG shape."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGMesh3D.xml:18
+msgid "The [Mesh] resource to use as a CSG shape."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon3D.xml:4
+msgid "Extrudes a 2D polygon shape to create a 3D mesh."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon3D.xml:7
+msgid "This node takes a 2D polygon shape and extrudes it to create a 3D mesh."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon3D.xml:15
+msgid "Extrusion depth when [member mode] is [constant MODE_DEPTH]."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon3D.xml:18
+msgid "Material to use for the resulting mesh."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon3D.xml:21
+msgid "Extrusion mode."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon3D.xml:24
+msgid ""
+"If [code]true[/code] the u component of our uv will continuously increase in "
+"unison with the distance traveled along our path when [member mode] is "
+"[constant MODE_PATH]."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon3D.xml:27
+msgid ""
+"Interval at which a new extrusion slice is added along the path when [member "
+"mode] is [constant MODE_PATH]."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon3D.xml:30
+msgid ""
+"If [code]true[/code] the start and end of our path are joined together "
+"ensuring there is no seam when [member mode] is [constant MODE_PATH]."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon3D.xml:33
+msgid ""
+"If [code]false[/code] we extrude centered on our path, if [code]true[/code] "
+"we extrude in relation to the position of our CSGPolygon3D when [member "
+"mode] is [constant MODE_PATH]."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon3D.xml:36
+msgid ""
+"The [Shape3D] object containing the path along which we extrude when [member "
+"mode] is [constant MODE_PATH]."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon3D.xml:39
+msgid ""
+"The method by which each slice is rotated along the path when [member mode] "
+"is [constant MODE_PATH]."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon3D.xml:42
+msgid "Point array that defines the shape that we'll extrude."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon3D.xml:45
+msgid "Generates smooth normals so smooth shading is applied to our mesh."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon3D.xml:48
+msgid ""
+"Degrees to rotate our extrusion for each slice when [member mode] is "
+"[constant MODE_SPIN]."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon3D.xml:51
+msgid "Number of extrusion when [member mode] is [constant MODE_SPIN]."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon3D.xml:56
+msgid "Shape3D is extruded to [member depth]."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon3D.xml:59
+msgid "Shape3D is extruded by rotating it around an axis."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon3D.xml:62
+msgid ""
+"Shape3D is extruded along a path set by a [Shape3D] set in [member "
+"path_node]."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon3D.xml:65
+msgid "Slice is not rotated."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon3D.xml:68
+msgid "Slice is rotated around the up vector of the path."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon3D.xml:71
+msgid "Slice is rotate to match the path exactly."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPrimitive3D.xml:4
+msgid "Base class for CSG primitives."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPrimitive3D.xml:7
+msgid ""
+"Parent class for various CSG primitives. It contains code and functionality "
+"that is common between them. It cannot be used directly. Instead use one of "
+"the various classes that inherit from it."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPrimitive3D.xml:15
+msgid "Invert the faces of the mesh."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape3D.xml:4
+msgid "The CSG base class."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape3D.xml:7
+msgid ""
+"This is the CSG base class that provides CSG operation support to the "
+"various CSG nodes in Godot."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape3D.xml:34
+msgid ""
+"Returns an [Array] with two elements, the first is the [Transform] of this "
+"node and the second is the root [Mesh] of this node. Only works when this "
+"node is the root shape."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape3D.xml:41
+msgid ""
+"Returns [code]true[/code] if this is a root shape and is thus the object "
+"that is rendered."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape3D.xml:52 doc/classes/SoftBody3D.xml:64
+msgid ""
+"Sets individual bits on the layer mask. Use this if you only need to change "
+"one layer's value."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape3D.xml:63 doc/classes/SoftBody3D.xml:75
+msgid ""
+"Sets individual bits on the collision mask. Use this if you only need to "
+"change one layer's value."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape3D.xml:69
+msgid ""
+"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."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape3D.xml:72
+msgid ""
+"The physics layers this area is in.\n"
+"Collidable objects can exist in any of 32 different layers. These layers "
+"work like a tagging system, and are not visual. A collidable can use these "
+"layers to select with which objects it can collide, using the collision_mask "
+"property.\n"
+"A contact is detected if object A is in any of the layers that object B "
+"scans, or object B is in any layer scanned by object A."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape3D.xml:77
+msgid "The physics layers this CSG shape scans for collisions."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape3D.xml:80
+msgid ""
+"The operation that is performed on this shape. This is ignored for the first "
+"CSG child node as the operation is between this node and the previous child "
+"of this nodes parent."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape3D.xml:83
+msgid ""
+"Snap makes the mesh snap to a given distance so that the faces of two meshes "
+"can be perfectly aligned. A lower value results in greater precision but may "
+"be harder to adjust."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape3D.xml:86
+msgid ""
+"Adds a collision shape to the physics engine for our CSG shape. This will "
+"always act like a static body. Note that the collision shape is still active "
+"even if the CSG shape itself is hidden."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape3D.xml:91
+msgid ""
+"Geometry of both primitives is merged, intersecting geometry is removed."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape3D.xml:94
+msgid "Only intersecting geometry remains, the rest is removed."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape3D.xml:97
+msgid ""
+"The second shape is subtracted from the first, leaving a dent with its shape."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGSphere3D.xml:4
+msgid "A CSG Sphere shape."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGSphere3D.xml:7
+msgid "This node allows you to create a sphere for use with the CSG system."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGSphere3D.xml:15
+msgid "The material used to render the sphere."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGSphere3D.xml:18
+msgid "Number of vertical slices for the sphere."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGSphere3D.xml:21
+msgid "Radius of the sphere."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGSphere3D.xml:24
+msgid "Number of horizontal slices for the sphere."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGSphere3D.xml:27
+msgid ""
+"If [code]true[/code] the normals of the sphere are set to give a smooth "
+"effect making the sphere seem rounded. If [code]false[/code] the sphere will "
+"have a flat shaded look."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGTorus3D.xml:4
+msgid "A CSG Torus shape."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGTorus3D.xml:7
+msgid "This node allows you to create a torus for use with the CSG system."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGTorus3D.xml:15
+msgid "The inner radius of the torus."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGTorus3D.xml:18
+msgid "The material used to render the torus."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGTorus3D.xml:21
+msgid "The outer radius of the torus."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGTorus3D.xml:24
+msgid "The number of edges each ring of the torus is constructed of."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGTorus3D.xml:27
+msgid "The number of slices the torus is constructed of."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGTorus3D.xml:30
+msgid ""
+"If [code]true[/code] the normals of the torus are set to give a smooth "
+"effect making the torus seem rounded. If [code]false[/code] the torus will "
+"have a flat shaded look."
+msgstr ""
+
+#: modules/mono/doc_classes/CSharpScript.xml:4
+msgid ""
+"A script implemented in the C# programming language (Mono-enabled builds "
+"only)."
+msgstr ""
+
+#: modules/mono/doc_classes/CSharpScript.xml:7
+msgid ""
+"This class represents a C# script. It is the C# equivalent of the [GDScript] "
+"class and is only available in Mono-enabled Godot builds.\n"
+"See also [GodotSharp]."
+msgstr ""
+
+#: modules/mono/doc_classes/CSharpScript.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/getting_started/scripting/c_sharp/"
+"index.html"
+msgstr ""
+
+#: modules/mono/doc_classes/CSharpScript.xml:18
+#: modules/gdnative/doc_classes/PluginScript.xml:14
+msgid "Returns a new instance of the script."
+msgstr ""
+
+#: doc/classes/CubeMesh.xml:4
+msgid "Generate an axis-aligned cuboid [PrimitiveMesh]."
+msgstr ""
+
+#: doc/classes/CubeMesh.xml:7
+msgid ""
+"Generate an axis-aligned cuboid [PrimitiveMesh].\n"
+"The cube's UV layout is arranged in a 3×2 layout that allows texturing each "
+"face individually. To apply the same texture on all faces, change the "
+"material's UV property to [code]Vector3(3, 2, 1)[/code]."
+msgstr ""
+
+#: doc/classes/CubeMesh.xml:16
+msgid "Size of the cuboid mesh."
+msgstr ""
+
+#: doc/classes/CubeMesh.xml:19
+msgid "Number of extra edge loops inserted along the Z axis."
+msgstr ""
+
+#: doc/classes/CubeMesh.xml:22
+msgid "Number of extra edge loops inserted along the Y axis."
+msgstr ""
+
+#: doc/classes/CubeMesh.xml:25
+msgid "Number of extra edge loops inserted along the X axis."
+msgstr ""
+
+#: doc/classes/Curve.xml:4
+msgid "A mathematic curve."
+msgstr ""
+
+#: doc/classes/Curve.xml:7
+msgid ""
+"A curve that can be saved and re-used for other objects. By default, it "
+"ranges between [code]0[/code] and [code]1[/code] on the Y axis and positions "
+"points relative to the [code]0.5[/code] Y position."
+msgstr ""
+
+#: doc/classes/Curve.xml:26
+msgid ""
+"Adds a point to the curve. For each side, if the [code]*_mode[/code] is "
+"[constant TANGENT_LINEAR], the [code]*_tangent[/code] angle (in degrees) "
+"uses the slope of the curve halfway to the adjacent point. Allows custom "
+"assignments to the [code]*_tangent[/code] angle if [code]*_mode[/code] is "
+"set to [constant TANGENT_FREE]."
+msgstr ""
+
+#: doc/classes/Curve.xml:33
+msgid "Recomputes the baked cache of points for the curve."
+msgstr ""
+
+#: doc/classes/Curve.xml:40
+msgid ""
+"Removes points that are closer than [code]CMP_EPSILON[/code] (0.00001) units "
+"to their neighbor on the curve."
+msgstr ""
+
+#: doc/classes/Curve.xml:47 doc/classes/Curve2D.xml:33
+#: doc/classes/Curve3D.xml:33
+msgid "Removes all points from the curve."
+msgstr ""
+
+#: doc/classes/Curve.xml:54 doc/classes/Curve2D.xml:74
+#: doc/classes/Curve3D.xml:89
+msgid "Returns the number of points describing the curve."
+msgstr ""
+
+#: doc/classes/Curve.xml:63
+msgid ""
+"Returns the left [enum TangentMode] for the point at [code]index[/code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:72
+msgid ""
+"Returns the left tangent angle (in degrees) for the point at [code]index[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:81
+msgid "Returns the curve coordinates for the point at [code]index[/code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:90
+msgid ""
+"Returns the right [enum TangentMode] for the point at [code]index[/code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:99
+msgid ""
+"Returns the right tangent angle (in degrees) for the point at [code]index[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:108
+msgid ""
+"Returns the Y value for the point that would exist at the X position "
+"[code]offset[/code] along the curve."
+msgstr ""
+
+#: doc/classes/Curve.xml:117
+msgid ""
+"Returns the Y value for the point that would exist at the X position "
+"[code]offset[/code] along the curve using the baked cache. Bakes the curve's "
+"points if not already baked."
+msgstr ""
+
+#: doc/classes/Curve.xml:126
+msgid "Removes the point at [code]index[/code] from the curve."
+msgstr ""
+
+#: doc/classes/Curve.xml:137
+msgid ""
+"Sets the left [enum TangentMode] for the point at [code]index[/code] to "
+"[code]mode[/code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:148
+msgid ""
+"Sets the left tangent angle for the point at [code]index[/code] to "
+"[code]tangent[/code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:159
+msgid "Sets the offset from [code]0.5[/code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:170
+msgid ""
+"Sets the right [enum TangentMode] for the point at [code]index[/code] to "
+"[code]mode[/code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:181
+msgid ""
+"Sets the right tangent angle for the point at [code]index[/code] to "
+"[code]tangent[/code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:192
+msgid ""
+"Assigns the vertical position [code]y[/code] to the point at [code]index[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:198
+msgid "The number of points to include in the baked (i.e. cached) curve data."
+msgstr ""
+
+#: doc/classes/Curve.xml:201
+msgid "The maximum value the curve can reach."
+msgstr ""
+
+#: doc/classes/Curve.xml:204
+msgid "The minimum value the curve can reach."
+msgstr ""
+
+#: doc/classes/Curve.xml:210
+msgid "Emitted when [member max_value] or [member min_value] is changed."
+msgstr ""
+
+#: doc/classes/Curve.xml:216
+msgid "The tangent on this side of the point is user-defined."
+msgstr ""
+
+#: doc/classes/Curve.xml:219
+msgid ""
+"The curve calculates the tangent on this side of the point as the slope "
+"halfway towards the adjacent point."
+msgstr ""
+
+#: doc/classes/Curve.xml:222
+msgid "The total number of available tangent modes."
+msgstr ""
+
+#: doc/classes/Curve2D.xml:4
+msgid "Describes a Bézier curve in 2D space."
+msgstr ""
+
+#: doc/classes/Curve2D.xml:7
+msgid ""
+"This class describes a Bézier curve in 2D space. It is mainly used to give a "
+"shape to a [Path2D], but can be manually sampled for other purposes.\n"
+"It keeps a cache of precalculated points along the curve, to speed up "
+"further calculations."
+msgstr ""
+
+#: doc/classes/Curve2D.xml:25 doc/classes/Curve3D.xml:25
+msgid ""
+"Adds a point to a curve at [code]position[/code], with control points "
+"[code]in[/code] and [code]out[/code].\n"
+"If [code]at_position[/code] is given, the point is inserted before the point "
+"number [code]at_position[/code], moving that point (and every point after) "
+"after the inserted point. If [code]at_position[/code] is not given, or is an "
+"illegal value ([code]at_position <0[/code] or [code]at_position >= [method "
+"get_point_count][/code]), the point will be appended at the end of the point "
+"list."
+msgstr ""
+
+#: doc/classes/Curve2D.xml:40 doc/classes/Curve3D.xml:40
+msgid ""
+"Returns the total length of the curve, based on the cached points. Given "
+"enough density (see [member bake_interval]), it should be approximate enough."
+msgstr ""
+
+#: doc/classes/Curve2D.xml:47
+msgid "Returns the cache of points as a [PackedVector2Array]."
+msgstr ""
+
+#: doc/classes/Curve2D.xml:56
+msgid ""
+"Returns the closest offset to [code]to_point[/code]. This offset is meant to "
+"be used in [method interpolate_baked].\n"
+"[code]to_point[/code] must be in this curve's local space."
+msgstr ""
+
+#: doc/classes/Curve2D.xml:66 doc/classes/Curve3D.xml:81
+msgid ""
+"Returns the closest point (in curve's local space) to [code]to_point[/"
+"code].\n"
+"[code]to_point[/code] must be in this curve's local space."
+msgstr ""
+
+#: doc/classes/Curve2D.xml:83
+msgid ""
+"Returns the position of the control point leading to the vertex [code]idx[/"
+"code]. If the index is out of bounds, the function sends an error to the "
+"console, and returns [code](0, 0)[/code]."
+msgstr ""
+
+#: doc/classes/Curve2D.xml:92
+msgid ""
+"Returns the position of the control point leading out of the vertex "
+"[code]idx[/code]. If the index is out of bounds, the function sends an error "
+"to the console, and returns [code](0, 0)[/code]."
+msgstr ""
+
+#: doc/classes/Curve2D.xml:101
+msgid ""
+"Returns the position of the vertex [code]idx[/code]. If the index is out of "
+"bounds, the function sends an error to the console, and returns [code](0, 0)"
+"[/code]."
+msgstr ""
+
+#: doc/classes/Curve2D.xml:112
+msgid ""
+"Returns the position between the vertex [code]idx[/code] and the vertex "
+"[code]idx + 1[/code], where [code]t[/code] controls if the point is the "
+"first vertex ([code]t = 0.0[/code]), the last vertex ([code]t = 1.0[/code]), "
+"or in between. Values of [code]t[/code] outside the range ([code]0.0 >= t "
+"<=1[/code]) give strange, but predictable results.\n"
+"If [code]idx[/code] is out of bounds it is truncated to the first or last "
+"vertex, and [code]t[/code] is ignored. If the curve has no points, the "
+"function sends an error to the console, and returns [code](0, 0)[/code]."
+msgstr ""
+
+#: doc/classes/Curve2D.xml:124 doc/classes/Curve3D.xml:148
+msgid ""
+"Returns a point within the curve at position [code]offset[/code], where "
+"[code]offset[/code] is measured as a pixel distance along the curve.\n"
+"To do that, it finds the two cached points where the [code]offset[/code] "
+"lies between, then interpolates the values. This interpolation is cubic if "
+"[code]cubic[/code] is set to [code]true[/code], or linear if set to "
+"[code]false[/code].\n"
+"Cubic interpolation tends to follow the curves better, but linear is faster "
+"(and often, precise enough)."
+msgstr ""
+
+#: doc/classes/Curve2D.xml:135 doc/classes/Curve3D.xml:172
+msgid ""
+"Returns the position at the vertex [code]fofs[/code]. It calls [method "
+"interpolate] using the integer part of [code]fofs[/code] as [code]idx[/"
+"code], and its fractional part as [code]t[/code]."
+msgstr ""
+
+#: doc/classes/Curve2D.xml:144 doc/classes/Curve3D.xml:181
+msgid ""
+"Deletes the point [code]idx[/code] from the curve. Sends an error to the "
+"console if [code]idx[/code] is out of bounds."
+msgstr ""
+
+#: doc/classes/Curve2D.xml:155 doc/classes/Curve3D.xml:192
+msgid ""
+"Sets the position of the control point leading to the vertex [code]idx[/"
+"code]. If the index is out of bounds, the function sends an error to the "
+"console."
+msgstr ""
+
+#: doc/classes/Curve2D.xml:166 doc/classes/Curve3D.xml:203
+msgid ""
+"Sets the position of the control point leading out of the vertex [code]idx[/"
+"code]. If the index is out of bounds, the function sends an error to the "
+"console."
+msgstr ""
+
+#: doc/classes/Curve2D.xml:177 doc/classes/Curve3D.xml:214
+msgid ""
+"Sets the position for the vertex [code]idx[/code]. If the index is out of "
+"bounds, the function sends an error to the console."
+msgstr ""
+
+#: doc/classes/Curve2D.xml:188 doc/classes/Curve3D.xml:237
+msgid ""
+"Returns a list of points along the curve, with a curvature controlled point "
+"density. That is, the curvier parts will have more points than the "
+"straighter parts.\n"
+"This approximation makes straight segments between each point, then "
+"subdivides those segments until the resulting shape is similar enough.\n"
+"[code]max_stages[/code] controls how many subdivisions a curve segment may "
+"face before it is considered approximate enough. Each subdivision splits the "
+"segment in half, so the default 5 stages may mean up to 32 subdivisions per "
+"curve segment. Increase with care!\n"
+"[code]tolerance_degrees[/code] controls how many degrees the midpoint of a "
+"segment may deviate from the real curve, before the segment has to be "
+"subdivided."
+msgstr ""
+
+#: doc/classes/Curve2D.xml:197
+msgid ""
+"The distance in pixels between two adjacent cached points. Changing it "
+"forces the cache to be recomputed the next time the [method "
+"get_baked_points] or [method get_baked_length] function is called. The "
+"smaller the distance, the more points in the cache and the more memory it "
+"will consume, so use with care."
+msgstr ""
+
+#: doc/classes/Curve3D.xml:4
+msgid "Describes a Bézier curve in 3D space."
+msgstr ""
+
+#: doc/classes/Curve3D.xml:7
+msgid ""
+"This class describes a Bézier curve in 3D space. It is mainly used to give a "
+"shape to a [Path3D], but can be manually sampled for other purposes.\n"
+"It keeps a cache of precalculated points along the curve, to speed up "
+"further calculations."
+msgstr ""
+
+#: doc/classes/Curve3D.xml:47
+msgid "Returns the cache of points as a [PackedVector3Array]."
+msgstr ""
+
+#: doc/classes/Curve3D.xml:54
+msgid "Returns the cache of tilts as a [PackedFloat32Array]."
+msgstr ""
+
+#: doc/classes/Curve3D.xml:61
+msgid ""
+"Returns the cache of up vectors as a [PackedVector3Array].\n"
+"If [member up_vector_enabled] is [code]false[/code], the cache will be empty."
+msgstr ""
+
+#: doc/classes/Curve3D.xml:71
+msgid ""
+"Returns the closest offset to [code]to_point[/code]. This offset is meant to "
+"be used in [method interpolate_baked] or [method "
+"interpolate_baked_up_vector].\n"
+"[code]to_point[/code] must be in this curve's local space."
+msgstr ""
+
+#: doc/classes/Curve3D.xml:98
+msgid ""
+"Returns the position of the control point leading to the vertex [code]idx[/"
+"code]. If the index is out of bounds, the function sends an error to the "
+"console, and returns [code](0, 0, 0)[/code]."
+msgstr ""
+
+#: doc/classes/Curve3D.xml:107
+msgid ""
+"Returns the position of the control point leading out of the vertex "
+"[code]idx[/code]. If the index is out of bounds, the function sends an error "
+"to the console, and returns [code](0, 0, 0)[/code]."
+msgstr ""
+
+#: doc/classes/Curve3D.xml:116
+msgid ""
+"Returns the position of the vertex [code]idx[/code]. If the index is out of "
+"bounds, the function sends an error to the console, and returns [code](0, 0, "
+"0)[/code]."
+msgstr ""
+
+#: doc/classes/Curve3D.xml:125
+msgid ""
+"Returns the tilt angle in radians for the point [code]idx[/code]. If the "
+"index is out of bounds, the function sends an error to the console, and "
+"returns [code]0[/code]."
+msgstr ""
+
+#: doc/classes/Curve3D.xml:136
+msgid ""
+"Returns the position between the vertex [code]idx[/code] and the vertex "
+"[code]idx + 1[/code], where [code]t[/code] controls if the point is the "
+"first vertex ([code]t = 0.0[/code]), the last vertex ([code]t = 1.0[/code]), "
+"or in between. Values of [code]t[/code] outside the range ([code]0.0 >= t "
+"<=1[/code]) give strange, but predictable results.\n"
+"If [code]idx[/code] is out of bounds it is truncated to the first or last "
+"vertex, and [code]t[/code] is ignored. If the curve has no points, the "
+"function sends an error to the console, and returns [code](0, 0, 0)[/code]."
+msgstr ""
+
+#: doc/classes/Curve3D.xml:161
+msgid ""
+"Returns an up vector within the curve at position [code]offset[/code], where "
+"[code]offset[/code] is measured as a distance in 3D units along the curve.\n"
+"To do that, it finds the two cached up vectors where the [code]offset[/code] "
+"lies between, then interpolates the values. If [code]apply_tilt[/code] is "
+"[code]true[/code], an interpolated tilt is applied to the interpolated up "
+"vector.\n"
+"If the curve has no up vectors, the function sends an error to the console, "
+"and returns [code](0, 1, 0)[/code]."
+msgstr ""
+
+#: doc/classes/Curve3D.xml:225
+msgid ""
+"Sets the tilt angle in radians for the point [code]idx[/code]. If the index "
+"is out of bounds, the function sends an error to the console.\n"
+"The tilt controls the rotation along the look-at axis an object traveling "
+"the path would have. In the case of a curve controlling a [PathFollow3D], "
+"this tilt is an offset over the natural tilt the [PathFollow3D] calculates."
+msgstr ""
+
+#: doc/classes/Curve3D.xml:246
+msgid ""
+"The distance in meters between two adjacent cached points. Changing it "
+"forces the cache to be recomputed the next time the [method "
+"get_baked_points] or [method get_baked_length] function is called. The "
+"smaller the distance, the more points in the cache and the more memory it "
+"will consume, so use with care."
+msgstr ""
+
+#: doc/classes/Curve3D.xml:249
+msgid ""
+"If [code]true[/code], the curve will bake up vectors used for orientation. "
+"This is used when [member PathFollow3D.rotation_mode] is set to [constant "
+"PathFollow3D.ROTATION_ORIENTED]. Changing it forces the cache to be "
+"recomputed."
+msgstr ""
+
+#: doc/classes/CurveTexture.xml:4
+msgid "A texture that shows a curve."
+msgstr ""
+
+#: doc/classes/CurveTexture.xml:7
+msgid ""
+"Renders a given [Curve] provided to it. Simplifies the task of drawing "
+"curves and/or saving them as image files."
+msgstr ""
+
+#: doc/classes/CurveTexture.xml:15
+msgid "The [code]curve[/code] rendered onto the texture."
+msgstr ""
+
+#: doc/classes/CurveTexture.xml:18
+msgid "The width of the texture."
+msgstr ""
+
+#: doc/classes/CylinderMesh.xml:4
+msgid "Class representing a cylindrical [PrimitiveMesh]."
+msgstr ""
+
+#: doc/classes/CylinderMesh.xml:7
+msgid ""
+"Class representing a cylindrical [PrimitiveMesh]. This class can be used to "
+"create cones by setting either the [member top_radius] or [member "
+"bottom_radius] properties to 0.0."
+msgstr ""
+
+#: doc/classes/CylinderMesh.xml:15
+msgid "Bottom radius of the cylinder."
+msgstr ""
+
+#: doc/classes/CylinderMesh.xml:18
+msgid "Full height of the cylinder."
+msgstr ""
+
+#: doc/classes/CylinderMesh.xml:21
+msgid "Number of radial segments on the cylinder."
+msgstr ""
+
+#: doc/classes/CylinderMesh.xml:24
+msgid "Number of edge rings along the height of the cylinder."
+msgstr ""
+
+#: doc/classes/CylinderMesh.xml:27
+msgid "Top radius of the cylinder."
+msgstr ""
+
+#: doc/classes/CylinderShape3D.xml:4 doc/classes/CylinderShape3D.xml:7
+msgid "Cylinder shape for collisions."
+msgstr ""
+
+#: doc/classes/CylinderShape3D.xml:15
+msgid "The cylinder's height."
+msgstr ""
+
+#: doc/classes/CylinderShape3D.xml:18
+msgid "The cylinder's radius."
+msgstr ""
+
+#: doc/classes/DampedSpringJoint2D.xml:4
+msgid "Damped spring constraint for 2D physics."
+msgstr ""
+
+#: doc/classes/DampedSpringJoint2D.xml:7
+msgid ""
+"Damped spring constraint for 2D physics. This resembles a spring joint that "
+"always wants to go back to a given length."
+msgstr ""
+
+#: doc/classes/DampedSpringJoint2D.xml:15
+msgid ""
+"The spring joint's damping ratio. A value between [code]0[/code] and "
+"[code]1[/code]. When the two bodies move into different directions the "
+"system tries to align them to the spring axis again. A high [code]damping[/"
+"code] value forces the attached bodies to align faster."
+msgstr ""
+
+#: doc/classes/DampedSpringJoint2D.xml:18
+msgid ""
+"The spring joint's maximum length. The two attached bodies cannot stretch it "
+"past this value."
+msgstr ""
+
+#: doc/classes/DampedSpringJoint2D.xml:21
+msgid ""
+"When the bodies attached to the spring joint move they stretch or squash it. "
+"The joint always tries to resize towards this length."
+msgstr ""
+
+#: doc/classes/DampedSpringJoint2D.xml:24
+msgid ""
+"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."
+msgstr ""
+
+#: doc/classes/Decal.xml:4
+msgid "Node that projects a texture onto a [MeshInstance3D]."
+msgstr ""
+
+#: doc/classes/Decal.xml:7
+msgid ""
+"[Decal]s are used to project a texture onto a [Mesh] in the scene. Use "
+"Decals to add detail to a scene without affecting the underlying [Mesh]. "
+"They are often used to add weathering to building, add dirt or mud to the "
+"ground, or add variety to props. Decals can be moved at any time, making "
+"them suitable for things like blob shadows or laser sight dots.\n"
+"They are made of an [AABB] and a group of [Texture2D]s specifying [Color], "
+"normal, ORM (ambient occlusion, roughness, metallic), and emission. Decals "
+"are projected within their [AABB] so altering the orientation of the Decal "
+"affects the direction in which they are projected. By default, Decals are "
+"projected down (i.e. from positive Y to negative Y).\n"
+"The [Texture2D]s associated with the Decal are automatically stored in a "
+"texture atlas which is used for drawing the decals so all decals can be "
+"drawn at once. Godot uses clustered decals, meaning they are stored in "
+"cluster data and drawn when the mesh is drawn, they are not drawn as a "
+"postprocessing effect after."
+msgstr ""
+
+#: doc/classes/Decal.xml:20
+msgid ""
+"Returns the [Texture2D] associated with the specified [enum DecalTexture]. "
+"This is a convenience method, in most cases you should access the texture "
+"directly.\n"
+"For example, instead of [code]albedo_tex = $Decal.get_texture(Decal."
+"TEXTURE_ALBEDO)[/code], use [code]albedo_tex = $Decal.texture_albedo[/"
+"code].\n"
+"One case where this is better than accessing the texture directly is when "
+"you want to copy one Decal's textures to another. For example:\n"
+"[codeblock]\n"
+"for i in Decal.TEXTURE_MAX:\n"
+" $NewDecal.set_texture(i, $OldDecal.get_texture(i))\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Decal.xml:37
+msgid ""
+"Sets the [Texture2D] associated with the specified [enum DecalTexture]. This "
+"is a convenience method, in most cases you should access the texture "
+"directly.\n"
+"For example, instead of [code]$Decal.set_texture(Decal.TEXTURE_ALBEDO, "
+"albedo_tex)[/code], use [code]$Decal.texture_albedo = albedo_tex[/code].\n"
+"One case where this is better than accessing the texture directly is when "
+"you want to copy one Decal's textures to another. For example:\n"
+"[codeblock]\n"
+"for i in Decal.TEXTURE_MAX:\n"
+" $NewDecal.set_texture(i, $OldDecal.get_texture(i))\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Decal.xml:49
+msgid ""
+"Blends the albedo [Color] of the decal with albedo [Color] of the underlying "
+"mesh."
+msgstr ""
+
+#: doc/classes/Decal.xml:52
+msgid ""
+"Specifies which [member VisualInstance3D.layers] this decal will project on. "
+"By default, Decals affect all layers. This is used so you can specify which "
+"types of objects receive the Decal and which do not. This is especially "
+"useful so you an ensure that dynamic objects don't accidentally receive a "
+"Decal intended for the terrain under them."
+msgstr ""
+
+#: doc/classes/Decal.xml:55
+msgid "Distance from the camera at which the Decal begins to fade away."
+msgstr ""
+
+#: doc/classes/Decal.xml:58
+msgid ""
+"If [code]true[/code], decals will smoothly fade away when far from the "
+"active [Camera3D] starting at [member distance_fade_begin]. The Decal will "
+"fade out over [member distance_fade_length], after which it will be culled "
+"and not sent to the shader at all. Use this to reduce the number of active "
+"Decals in a scene and thus improve performance."
+msgstr ""
+
+#: doc/classes/Decal.xml:61
+msgid ""
+"Distance over which the Decal fades. The Decal becomes slowly more "
+"transparent over this distance and is completely invisible at the end."
+msgstr ""
+
+#: doc/classes/Decal.xml:64
+msgid ""
+"Energy multiplier for the emission texture. This will make the decal emit "
+"light at a higher intensity."
+msgstr ""
+
+#: doc/classes/Decal.xml:67
+msgid ""
+"Sets the size of the [AABB] used by the decal. The AABB goes from [code]-"
+"extents[/code] to [code]extents[/code]."
+msgstr ""
+
+#: doc/classes/Decal.xml:70 doc/classes/Decal.xml:91
+msgid ""
+"Sets the curve over which the decal will fade as the surface gets further "
+"from the center of the [AABB]."
+msgstr ""
+
+#: doc/classes/Decal.xml:73
+msgid "Changes the [Color] of the Decal by multiplying it with this value."
+msgstr ""
+
+#: doc/classes/Decal.xml:76
+msgid ""
+"Fades the Decal if the angle between the Decal's [AABB] and the target "
+"surface becomes too large. A value of [code]0[/code] projects the Decal "
+"regardless of angle, a value of [code]1[/code] limits the Decal to surfaces "
+"that are nearly perpendicular."
+msgstr ""
+
+#: doc/classes/Decal.xml:79
+msgid ""
+"[Texture2D] with the base [Color] of the Decal. Either this or the [member "
+"texture_emission] must be set for the Decal to be visible. Use the alpha "
+"channel like a mask to smoothly blend the edges of the decal with the "
+"underlying object."
+msgstr ""
+
+#: doc/classes/Decal.xml:82
+msgid ""
+"[Texture2D] with the emission [Color] of the Decal. Either this or the "
+"[member texture_emission] must be set for the Decal to be visible. Use the "
+"alpha channel like a mask to smoothly blend the edges of the decal with the "
+"underlying object."
+msgstr ""
+
+#: doc/classes/Decal.xml:85
+msgid ""
+"[Texture2D] with the per-pixel normalmap for the decal. Use this to add "
+"extra detail to decals."
+msgstr ""
+
+#: doc/classes/Decal.xml:88
+msgid ""
+"[Texture2D] storing ambient occlusion, roughness, and metallic for the "
+"decal. Use this to add extra detail to decals."
+msgstr ""
+
+#: doc/classes/Decal.xml:96
+msgid "[Texture2D] corresponding to [member texture_albedo]."
+msgstr ""
+
+#: doc/classes/Decal.xml:99
+msgid "[Texture2D] corresponding to [member texture_normal]."
+msgstr ""
+
+#: doc/classes/Decal.xml:102
+msgid "[Texture2D] corresponding to [member texture_orm]."
+msgstr ""
+
+#: doc/classes/Decal.xml:105
+msgid "[Texture2D] corresponding to [member texture_emission]."
+msgstr ""
+
+#: doc/classes/Decal.xml:108
+msgid "Max size of [enum DecalTexture] enum."
+msgstr ""
+
+#: doc/classes/Dictionary.xml:4
+msgid "Dictionary type."
+msgstr ""
+
+#: doc/classes/Dictionary.xml:7
+msgid ""
+"Dictionary type. Associative container which contains values referenced by "
+"unique keys. Dictionaries are composed of pairs of keys (which must be "
+"unique) and values. Dictionaries will preserve the insertion order when "
+"adding elements, even though this may not be reflected when printing the "
+"dictionary. In other programming languages, this data structure is sometimes "
+"referred to as an hash map or associative array.\n"
+"You can define a dictionary by placing a comma-separated list of [code]key: "
+"value[/code] pairs in curly braces [code]{}[/code].\n"
+"Erasing elements while iterating over them [b]is not supported[/b] and will "
+"result in undefined behavior.\n"
+"[b]Note:[/b] Dictionaries are always passed by reference. To get a copy of a "
+"dictionary which can be modified independently of the original dictionary, "
+"use [method duplicate].\n"
+"Creating a dictionary:\n"
+"[codeblock]\n"
+"var my_dir = {} # Creates an empty dictionary.\n"
+"var points_dir = {\"White\": 50, \"Yellow\": 75, \"Orange\": 100}\n"
+"var another_dir = {\n"
+" key1: value1,\n"
+" key2: value2,\n"
+" key3: value3,\n"
+"}\n"
+"[/codeblock]\n"
+"You can access a dictionary's values by referencing the appropriate key. In "
+"the above example, [code]points_dir[\"White\"][/code] will return [code]50[/"
+"code]. You can also write [code]points_dir.White[/code], which is "
+"equivalent. However, you'll have to use the bracket syntax if the key you're "
+"accessing the dictionary with isn't a fixed string (such as a number or "
+"variable).\n"
+"[codeblock]\n"
+"export(String, \"White\", \"Yellow\", \"Orange\") var my_color\n"
+"var points_dir = {\"White\": 50, \"Yellow\": 75, \"Orange\": 100}\n"
+"\n"
+"func _ready():\n"
+" # We can't use dot syntax here as `my_color` is a variable.\n"
+" var points = points_dir[my_color]\n"
+"[/codeblock]\n"
+"In the above code, [code]points[/code] will be assigned the value that is "
+"paired with the appropriate color selected in [code]my_color[/code].\n"
+"Dictionaries can contain more complex data:\n"
+"[codeblock]\n"
+"my_dir = {\"First Array\": [1, 2, 3, 4]} # Assigns an Array to a String "
+"key.\n"
+"[/codeblock]\n"
+"To add a key to an existing dictionary, access it like an existing key and "
+"assign to it:\n"
+"[codeblock]\n"
+"var points_dir = {\"White\": 50, \"Yellow\": 75, \"Orange\": 100}\n"
+"points_dir[\"Blue\"] = 150 # Add \"Blue\" as a key and assign 150 as its "
+"value.\n"
+"[/codeblock]\n"
+"Finally, dictionaries can contain different types of keys and values in the "
+"same dictionary:\n"
+"[codeblock]\n"
+"# This is a valid dictionary.\n"
+"# To access the string \"Nested value\" below, use `my_dir.sub_dir.sub_key` "
+"or `my_dir[\"sub_dir\"][\"sub_key\"]`.\n"
+"# Indexing styles can be mixed and matched depending on your needs.\n"
+"var my_dir = {\n"
+" \"String Key\": 5,\n"
+" 4: [1, 2, 3],\n"
+" 7: \"Hello\",\n"
+" \"sub_dir\": {\"sub_key\": \"Nested value\"},\n"
+"}\n"
+"[/codeblock]\n"
+"[b]Note:[/b] Unlike [Array]s, you can't compare dictionaries directly:\n"
+"[codeblock]\n"
+"array1 = [1, 2, 3]\n"
+"array2 = [1, 2, 3]\n"
+"\n"
+"func compare_arrays():\n"
+" print(array1 == array2) # Will print true.\n"
+"\n"
+"dir1 = {\"a\": 1, \"b\": 2, \"c\": 3}\n"
+"dir2 = {\"a\": 1, \"b\": 2, \"c\": 3}\n"
+"\n"
+"func compare_dictionaries():\n"
+" print(dir1 == dir2) # Will NOT print true.\n"
+"[/codeblock]\n"
+"You need to first calculate the dictionary's hash with [method hash] before "
+"you can compare them:\n"
+"[codeblock]\n"
+"dir1 = {\"a\": 1, \"b\": 2, \"c\": 3}\n"
+"dir2 = {\"a\": 1, \"b\": 2, \"c\": 3}\n"
+"\n"
+"func compare_dictionaries():\n"
+" print(dir1.hash() == dir2.hash()) # Will print true.\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Dictionary.xml:76
+msgid ""
+"https://docs.godotengine.org/en/latest/getting_started/scripting/gdscript/"
+"gdscript_basics.html#dictionary"
+msgstr ""
+
+#: doc/classes/Dictionary.xml:83
+msgid "Clear the dictionary, removing all key/value pairs."
+msgstr ""
+
+#: doc/classes/Dictionary.xml:92
+msgid ""
+"Creates a copy of the dictionary, and returns it. The [code]deep[/code] "
+"parameter causes inner dictionaries and arrays to be copied recursively, but "
+"does not apply to objects."
+msgstr ""
+
+#: doc/classes/Dictionary.xml:99
+msgid "Returns [code]true[/code] if the dictionary is empty."
+msgstr ""
+
+#: doc/classes/Dictionary.xml:108
+msgid ""
+"Erase a dictionary key/value pair by key. Returns [code]true[/code] if the "
+"given key was present in the dictionary, [code]false[/code] otherwise. Does "
+"not erase elements while iterating over the dictionary."
+msgstr ""
+
+#: doc/classes/Dictionary.xml:119
+msgid ""
+"Returns the current value for the specified key in the [Dictionary]. If the "
+"key does not exist, the method returns the value of the optional default "
+"argument, or [code]null[/code] if it is omitted."
+msgstr ""
+
+#: doc/classes/Dictionary.xml:128
+msgid ""
+"Returns [code]true[/code] if the dictionary has a given key.\n"
+"[b]Note:[/b] This is equivalent to using the [code]in[/code] operator as "
+"follows:\n"
+"[codeblock]\n"
+"# Will evaluate to `true`.\n"
+"if \"godot\" in {\"godot\": \"engine\"}:\n"
+" pass\n"
+"[/codeblock]\n"
+"This method (like the [code]in[/code] operator) will evaluate to [code]true[/"
+"code] as long as the key exists, even if the associated value is [code]null[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Dictionary.xml:144
+msgid ""
+"Returns [code]true[/code] if the dictionary has all of the keys in the given "
+"array."
+msgstr ""
+
+#: doc/classes/Dictionary.xml:151
+msgid ""
+"Returns a hashed integer value representing the dictionary contents. This "
+"can be used to compare dictionaries by value:\n"
+"[codeblock]\n"
+"var dict1 = {0: 10}\n"
+"var dict2 = {0: 10}\n"
+"# The line below prints `true`, whereas it would have printed `false` if "
+"both variables were compared directly.\n"
+"print(dict1.hash() == dict2.hash())\n"
+"[/codeblock]\n"
+"[b]Note:[/b] Dictionaries with the same keys/values but in a different order "
+"will have a different hash."
+msgstr ""
+
+#: doc/classes/Dictionary.xml:165
+msgid "Returns the list of keys in the [Dictionary]."
+msgstr ""
+
+#: doc/classes/Dictionary.xml:172
+msgid "Returns the size of the dictionary (in pairs)."
+msgstr ""
+
+#: doc/classes/Dictionary.xml:179
+msgid "Returns the list of values in the [Dictionary]."
+msgstr ""
+
+#: doc/classes/DirectionalLight3D.xml:4
+msgid "Directional light from a distance, as from the Sun."
+msgstr ""
+
+#: doc/classes/DirectionalLight3D.xml:7
+msgid ""
+"A directional light is a type of [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."
+msgstr ""
+
+#: doc/classes/DirectionalLight3D.xml:10 doc/classes/Light3D.xml:10
+#: doc/classes/OmniLight3D.xml:10 doc/classes/SpotLight3D.xml:10
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/3d/lights_and_shadows.html"
+msgstr ""
+
+#: doc/classes/DirectionalLight3D.xml:16
+msgid ""
+"If [code]true[/code], shadow detail is sacrificed in exchange for smoother "
+"transitions between splits."
+msgstr ""
+
+#: doc/classes/DirectionalLight3D.xml:19
+msgid ""
+"Optimizes shadow rendering for detail versus movement. See [enum "
+"ShadowDepthRange]."
+msgstr ""
+
+#: doc/classes/DirectionalLight3D.xml:22
+msgid ""
+"Proportion of [member directional_shadow_max_distance] at which point the "
+"shadow starts to fade. At [member directional_shadow_max_distance] the "
+"shadow will disappear."
+msgstr ""
+
+#: doc/classes/DirectionalLight3D.xml:25
+msgid "The maximum distance for shadow splits."
+msgstr ""
+
+#: doc/classes/DirectionalLight3D.xml:28
+msgid "The light's shadow rendering algorithm. See [enum ShadowMode]."
+msgstr ""
+
+#: doc/classes/DirectionalLight3D.xml:31 doc/classes/RenderingServer.xml:3250
+msgid ""
+"Sets the size of the directional shadow pancake. The pancake offsets the "
+"start of the shadow's camera frustum to provide a higher effective depth "
+"resolution for the shadow. However, a high pancake size can cause artifacts "
+"in the shadows of large objects that are close to the edge of the frustum. "
+"Reducing the pancake size can help. Setting the size to [code]0[/code] turns "
+"off the pancaking effect."
+msgstr ""
+
+#: doc/classes/DirectionalLight3D.xml:34
+msgid ""
+"The distance from camera to shadow split 1. Relative to [member "
+"directional_shadow_max_distance]. Only used when [member "
+"directional_shadow_mode] is [code]SHADOW_PARALLEL_2_SPLITS[/code] or "
+"[code]SHADOW_PARALLEL_4_SPLITS[/code]."
+msgstr ""
+
+#: doc/classes/DirectionalLight3D.xml:37
+msgid ""
+"The distance from shadow split 1 to split 2. Relative to [member "
+"directional_shadow_max_distance]. Only used when [member "
+"directional_shadow_mode] is [code]SHADOW_PARALLEL_2_SPLITS[/code] or "
+"[code]SHADOW_PARALLEL_4_SPLITS[/code]."
+msgstr ""
+
+#: doc/classes/DirectionalLight3D.xml:40
+msgid ""
+"The distance from shadow split 2 to split 3. Relative to [member "
+"directional_shadow_max_distance]. Only used when [member "
+"directional_shadow_mode] is [code]SHADOW_PARALLEL_4_SPLITS[/code]."
+msgstr ""
+
+#: doc/classes/DirectionalLight3D.xml:47
+msgid ""
+"Renders the entire scene's shadow map from an orthogonal point of view. This "
+"is the fastest directional shadow mode. May result in blurrier shadows on "
+"close objects."
+msgstr ""
+
+#: doc/classes/DirectionalLight3D.xml:50
+msgid ""
+"Splits the view frustum in 2 areas, each with its own shadow map. This "
+"shadow mode is a compromise between [constant SHADOW_ORTHOGONAL] and "
+"[constant SHADOW_PARALLEL_4_SPLITS] in terms of performance."
+msgstr ""
+
+#: doc/classes/DirectionalLight3D.xml:53
+msgid ""
+"Splits the view frustum in 4 areas, each with its own shadow map. This is "
+"the slowest directional shadow mode."
+msgstr ""
+
+#: doc/classes/DirectionalLight3D.xml:56
+msgid ""
+"Keeps the shadow stable when the camera moves, at the cost of lower "
+"effective shadow resolution."
+msgstr ""
+
+#: doc/classes/DirectionalLight3D.xml:59
+msgid ""
+"Tries to achieve maximum shadow resolution. May result in saw effect on "
+"shadow edges. This mode typically works best in games where the camera will "
+"often move at high speeds, such as most racing games."
+msgstr ""
+
+#: doc/classes/Directory.xml:4
+msgid "Type used to handle the filesystem."
+msgstr ""
+
+#: doc/classes/Directory.xml:7
+msgid ""
+"Directory type. It is used to manage directories and their content (not "
+"restricted to the project folder).\n"
+"When creating a new [Directory], it must be explicitly opened using [method "
+"open] before most methods can be used. However, [method file_exists] and "
+"[method dir_exists] can be used without opening a directory. If so, they use "
+"a path relative to [code]res://[/code].\n"
+"Here is an example on how to iterate through the files of a directory:\n"
+"[codeblock]\n"
+"func dir_contents(path):\n"
+" var dir = Directory.new()\n"
+" if dir.open(path) == OK:\n"
+" dir.list_dir_begin()\n"
+" var file_name = dir.get_next()\n"
+" while file_name != \"\":\n"
+" if dir.current_is_dir():\n"
+" print(\"Found directory: \" + file_name)\n"
+" else:\n"
+" print(\"Found file: \" + file_name)\n"
+" file_name = dir.get_next()\n"
+" else:\n"
+" print(\"An error occurred when trying to access the path.\")\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Directory.xml:27 doc/classes/File.xml:26
+msgid ""
+"https://docs.godotengine.org/en/latest/getting_started/step_by_step/"
+"filesystem.html"
+msgstr ""
+
+#: doc/classes/Directory.xml:36
+msgid ""
+"Changes the currently opened directory to the one passed as an argument. The "
+"argument can be relative to the current directory (e.g. [code]newdir[/code] "
+"or [code]../newdir[/code]), or an absolute path (e.g. [code]/tmp/newdir[/"
+"code] or [code]res://somedir/newdir[/code]).\n"
+"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
+msgstr ""
+
+#: doc/classes/Directory.xml:48
+msgid ""
+"Copies the [code]from[/code] file to the [code]to[/code] destination. Both "
+"arguments should be paths to files, either relative or absolute. If the "
+"destination file exists and is not access-protected, it will be "
+"overwritten.\n"
+"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
+msgstr ""
+
+#: doc/classes/Directory.xml:56
+msgid ""
+"Returns whether the current item processed with the last [method get_next] "
+"call is a directory ([code].[/code] and [code]..[/code] are considered "
+"directories)."
+msgstr ""
+
+#: doc/classes/Directory.xml:65
+msgid ""
+"Returns whether the target directory exists. The argument can be relative to "
+"the current directory, or an absolute path.\n"
+"If the [Directory] is not open, the path is relative to [code]res://[/code]."
+msgstr ""
+
+#: doc/classes/Directory.xml:75
+msgid ""
+"Returns whether the target file exists. The argument can be relative to the "
+"current directory, or an absolute path.\n"
+"If the [Directory] is not open, the path is relative to [code]res://[/code]."
+msgstr ""
+
+#: doc/classes/Directory.xml:83
+msgid ""
+"Returns the absolute path to the currently opened directory (e.g. "
+"[code]res://folder[/code] or [code]C:\\tmp\\folder[/code])."
+msgstr ""
+
+#: doc/classes/Directory.xml:90
+msgid ""
+"Returns the currently opened directory's drive index. See [method get_drive] "
+"to convert returned index to the name of the drive."
+msgstr ""
+
+#: doc/classes/Directory.xml:99
+msgid ""
+"On Windows, returns the name of the drive (partition) passed as an argument "
+"(e.g. [code]C:[/code]). On other platforms, or if the requested drive does "
+"not existed, the method returns an empty String."
+msgstr ""
+
+#: doc/classes/Directory.xml:106
+msgid ""
+"On Windows, returns the number of drives (partitions) mounted on the current "
+"filesystem. On other platforms, the method returns 0."
+msgstr ""
+
+#: doc/classes/Directory.xml:113
+msgid ""
+"Returns the next element (file or directory) in the current directory "
+"(including [code].[/code] and [code]..[/code], unless "
+"[code]skip_navigational[/code] was given to [method list_dir_begin]).\n"
+"The name of the file or directory is returned (and not its full path). Once "
+"the stream has been fully processed, the method returns an empty String and "
+"closes the stream automatically (i.e. [method list_dir_end] would not be "
+"mandatory in such a case)."
+msgstr ""
+
+#: doc/classes/Directory.xml:121
+msgid ""
+"On UNIX desktop systems, returns the available space on the current "
+"directory's disk. On other platforms, this information is not available and "
+"the method returns 0 or -1."
+msgstr ""
+
+#: doc/classes/Directory.xml:132
+msgid ""
+"Initializes the stream used to list all files and directories using the "
+"[method get_next] function, closing the current opened stream if needed. "
+"Once the stream has been processed, it should typically be closed with "
+"[method list_dir_end].\n"
+"If [code]skip_navigational[/code] is [code]true[/code], [code].[/code] and "
+"[code]..[/code] are filtered out.\n"
+"If [code]skip_hidden[/code] is [code]true[/code], hidden files are filtered "
+"out."
+msgstr ""
+
+#: doc/classes/Directory.xml:141
+msgid ""
+"Closes the current stream opened with [method list_dir_begin] (whether it "
+"has been fully processed with [method get_next] or not does not matter)."
+msgstr ""
+
+#: doc/classes/Directory.xml:150
+msgid ""
+"Creates a directory. The argument can be relative to the current directory, "
+"or an absolute path. The target directory should be placed in an already "
+"existing directory (to create the full path recursively, see [method "
+"make_dir_recursive]).\n"
+"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
+msgstr ""
+
+#: doc/classes/Directory.xml:160
+msgid ""
+"Creates a target directory and all necessary intermediate directories in its "
+"path, by calling [method make_dir] recursively. The argument can be relative "
+"to the current directory, or an absolute path.\n"
+"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
+msgstr ""
+
+#: doc/classes/Directory.xml:170
+msgid ""
+"Opens an existing directory of the filesystem. The [code]path[/code] "
+"argument can be within the project tree ([code]res://folder[/code]), the "
+"user directory ([code]user://folder[/code]) or an absolute path of the user "
+"filesystem (e.g. [code]/tmp/folder[/code] or [code]C:\\tmp\\folder[/code]).\n"
+"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
+msgstr ""
+
+#: doc/classes/Directory.xml:180
+msgid ""
+"Deletes the target file or an empty directory. The argument can be relative "
+"to the current directory, or an absolute path. If the target directory is "
+"not empty, the operation will fail.\n"
+"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
+msgstr ""
+
+#: doc/classes/Directory.xml:192
+msgid ""
+"Renames (move) the [code]from[/code] file to the [code]to[/code] "
+"destination. Both arguments should be paths to files, either relative or "
+"absolute. If the destination file exists and is not access-protected, it "
+"will be overwritten.\n"
+"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:390
+msgid ""
+"Returns active keyboard layout index.\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:398
+msgid ""
+"Returns the number of keyboard layouts.\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:408
+msgid ""
+"Returns the ISO-639/BCP-47 language code of the keyboard layout at position "
+"[code]index[/code].\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:418
+msgid ""
+"Returns the localized name of the keyboard layout at position [code]index[/"
+"code].\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:428
+msgid ""
+"Sets active keyboard layout.\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:530
+msgid ""
+"Return the greatest scale factor of all screens.\n"
+"[b]Note:[/b] On macOS returned value is [code]2.0[/code] if there is at "
+"least one hiDPI (Retina) screen in the system, and [code]1.0[/code] in all "
+"other cases.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:557
+msgid ""
+"Return the scale factor of the specified screen by index.\n"
+"[b]Note:[/b] On macOS returned value is [code]2.0[/code] for hiDPI (Retina) "
+"screen, and [code]1.0[/code] for all other cases.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:630
+msgid ""
+"Returns the on-screen keyboard's height in pixels. Returns 0 if there is no "
+"keyboard or if it is currently hidden."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:637
+msgid "Hides the virtual keyboard if it is shown, does nothing otherwise."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:656
+msgid ""
+"Shows the virtual keyboard if the platform has one.\n"
+"[code]existing_text[/code] parameter is useful for implementing your own "
+"[LineEdit] or [TextEdit], as it tells the virtual keyboard what text has "
+"already been typed (the virtual keyboard uses it for auto-correct and "
+"predictions).\n"
+"[code]position[/code] parameter is the screen space [Rect2] of the edited "
+"text.\n"
+"[code]multiline[/code] parameter needs to be set to [code]true[/code] to be "
+"able to enter multiple lines of text, as in [TextEdit].\n"
+"[code]max_length[/code] limits the number of characters that can be entered "
+"if different from [code]-1[/code].\n"
+"[code]cursor_start[/code] can optionally define the current text cursor "
+"position if [code]cursor_end[/code] is not set.\n"
+"[code]cursor_start[/code] and [code]cursor_end[/code] can optionally define "
+"the current text selection.\n"
+"[b]Note:[/b] This method is implemented on Android, iOS and UWP."
+msgstr ""
+
+#: doc/classes/DTLSServer.xml:4
+msgid "Helper class to implement a DTLS server."
+msgstr ""
+
+#: doc/classes/DTLSServer.xml:7
+msgid ""
+"This class is used to store the state of a DTLS server. Upon [method setup] "
+"it converts connected [PacketPeerUDP] to [PacketPeerDTLS] accepting them via "
+"[method take_connection] as DTLS clients. Under the hood, this class is used "
+"to store the DTLS state and cookies of the server. The reason of why the "
+"state and cookies are needed is outside of the scope of this documentation.\n"
+"Below a small example of how to use it:\n"
+"[codeblock]\n"
+"# server.gd\n"
+"extends Node\n"
+"\n"
+"var dtls := DTLSServer.new()\n"
+"var server := UDPServer.new()\n"
+"var peers = []\n"
+"\n"
+"func _ready():\n"
+" server.listen(4242)\n"
+" var key = load(\"key.key\") # Your private key.\n"
+" var cert = load(\"cert.crt\") # Your X509 certificate.\n"
+" dtls.setup(key, cert)\n"
+"\n"
+"func _process(delta):\n"
+" while server.is_connection_available():\n"
+" var peer : PacketPeerUDP = server.take_connection()\n"
+" var dtls_peer : PacketPeerDTLS = dtls.take_connection(peer)\n"
+" if dtls_peer.get_status() != PacketPeerDTLS.STATUS_HANDSHAKING:\n"
+" continue # It is normal that 50% of the connections fails due to "
+"cookie exchange.\n"
+" print(\"Peer connected!\")\n"
+" peers.append(dtls_peer)\n"
+" for p in peers:\n"
+" p.poll() # Must poll to update the state.\n"
+" if p.get_status() == PacketPeerDTLS.STATUS_CONNECTED:\n"
+" while p.get_available_packet_count() > 0:\n"
+" print(\"Received message from client: %s\" % p.get_packet()."
+"get_string_from_utf8())\n"
+" p.put_packet(\"Hello DTLS client\".to_utf8())\n"
+"[/codeblock]\n"
+"[codeblock]\n"
+"# client.gd\n"
+"extends Node\n"
+"\n"
+"var dtls := PacketPeerDTLS.new()\n"
+"var udp := PacketPeerUDP.new()\n"
+"var connected = false\n"
+"\n"
+"func _ready():\n"
+" udp.connect_to_host(\"127.0.0.1\", 4242)\n"
+" dtls.connect_to_peer(udp, false) # Use true in production for "
+"certificate validation!\n"
+"\n"
+"func _process(delta):\n"
+" dtls.poll()\n"
+" if dtls.get_status() == PacketPeerDTLS.STATUS_CONNECTED:\n"
+" if !connected:\n"
+" # Try to contact server\n"
+" dtls.put_packet(\"The answer is... 42!\".to_utf8())\n"
+" while dtls.get_available_packet_count() > 0:\n"
+" print(\"Connected: %s\" % dtls.get_packet()."
+"get_string_from_utf8())\n"
+" connected = true\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/DTLSServer.xml:74
+msgid ""
+"Setup the DTLS server to use the given [code]private_key[/code] and provide "
+"the given [code]certificate[/code] to clients. You can pass the optional "
+"[code]chain[/code] parameter to provide additional CA chain information "
+"along with the certificate."
+msgstr ""
+
+#: doc/classes/DTLSServer.xml:83
+msgid ""
+"Try to initiate the DTLS handshake with the given [code]udp_peer[/code] "
+"which must be already connected (see [method PacketPeerUDP."
+"connect_to_host]).\n"
+"[b]Note[/b]: You must check that the state of the return PacketPeerUDP is "
+"[constant PacketPeerDTLS.STATUS_HANDSHAKING], as it is normal that 50% of "
+"the new connections will be invalid due to cookie exchange."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:4
+msgid "DynamicFont renders vector font files at runtime."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:7
+msgid ""
+"DynamicFont renders vector font files (such as TTF or OTF) dynamically at "
+"runtime instead of using a prerendered texture atlas like [BitmapFont]. This "
+"trades the faster loading time of [BitmapFont]s for the ability to change "
+"font parameters like size and spacing during runtime. [DynamicFontData] is "
+"used for referencing the font file paths. DynamicFont also supports defining "
+"one or more fallbacks fonts, which will be used when displaying a character "
+"not supported by the main font.\n"
+"DynamicFont uses the [url=https://www.freetype.org/]FreeType[/url] library "
+"for rasterization.\n"
+"[codeblock]\n"
+"var dynamic_font = DynamicFont.new()\n"
+"dynamic_font.font_data = load(\"res://BarlowCondensed-Bold.ttf\")\n"
+"dynamic_font.size = 64\n"
+"$\"Label\".set(\"custom_fonts/font\", dynamic_font)\n"
+"[/codeblock]\n"
+"[b]Note:[/b] DynamicFont doesn't support features such as right-to-left "
+"typesetting, ligatures, text shaping, variable fonts and optional font "
+"features yet. If you wish to \"bake\" an optional font feature into a TTF "
+"font file, you can use [url=https://fontforge.org/]FontForge[/url] to do so. "
+"In FontForge, use [b]File > Generate Fonts[/b], click [b]Options[/b], choose "
+"the desired features then generate the font."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:26
+msgid "Adds a fallback font."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:33
+msgid ""
+"Returns a string containing all the characters available in the main and all "
+"the fallback fonts.\n"
+"If a given character is included in more than one font, it appears only once "
+"in the returned string."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:43
+msgid "Returns the fallback font at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:50
+msgid "Returns the number of fallback fonts."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:59
+msgid ""
+"Returns the spacing for the given [code]type[/code] (see [enum SpacingType])."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:68
+msgid "Removes the fallback font at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:79
+msgid "Sets the fallback font at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:90
+msgid ""
+"Sets the spacing for [code]type[/code] (see [enum SpacingType]) to "
+"[code]value[/code] in pixels (not relative to the font size)."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:96
+msgid "Extra spacing at the bottom in pixels."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:99
+msgid "Extra character spacing in pixels."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:102
+msgid "Extra space spacing in pixels."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:105
+msgid "Extra spacing at the top in pixels."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:108
+msgid "The font data."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:111
+msgid ""
+"The font outline's color.\n"
+"[b]Note:[/b] It's recommended to leave this at the default value so that you "
+"can adjust it in individual controls. For example, if the outline is made "
+"black here, it won't be possible to change its color using a Label's font "
+"outline modulate theme item."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:115
+msgid "The font outline's thickness in pixels (not relative to the font size)."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:118
+msgid "The font size in pixels."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:123
+msgid "Spacing at the top."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:126
+msgid "Spacing at the bottom."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:129
+msgid "Character spacing."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:132
+msgid "Space spacing."
+msgstr ""
+
+#: doc/classes/DynamicFontData.xml:4
+msgid "Used with [DynamicFont] to describe the location of a font file."
+msgstr ""
+
+#: doc/classes/DynamicFontData.xml:7
+msgid ""
+"Used with [DynamicFont] to describe the location of a vector font file for "
+"dynamic rendering at runtime."
+msgstr ""
+
+#: doc/classes/DynamicFontData.xml:15
+msgid ""
+"If [code]true[/code], the font is rendered with anti-aliasing. This property "
+"applies both to the main font and its outline (if it has one)."
+msgstr ""
+
+#: doc/classes/DynamicFontData.xml:18
+msgid "The path to the vector font file."
+msgstr ""
+
+#: doc/classes/DynamicFontData.xml:21
+msgid "The font hinting mode used by FreeType. See [enum Hinting] for options."
+msgstr ""
+
+#: doc/classes/DynamicFontData.xml:26
+msgid "Disables font hinting (smoother but less crisp)."
+msgstr ""
+
+#: doc/classes/DynamicFontData.xml:29
+msgid "Use the light font hinting mode."
+msgstr ""
+
+#: doc/classes/DynamicFontData.xml:32
+msgid "Use the default font hinting mode (crisper but less smooth)."
+msgstr ""
+
+#: doc/classes/EditorExportPlugin.xml:4
+msgid "A script that is executed when exporting projects."
+msgstr ""
+
+#: doc/classes/EditorExportPlugin.xml:23
+msgid ""
+"Virtual method to be overridden by the user. It is called when the export "
+"starts and provides all information about the export."
+msgstr ""
+
+#: doc/classes/EditorExportPlugin.xml:30
+msgid ""
+"Virtual method to be overridden by the user. Called when the export is "
+"finished."
+msgstr ""
+
+#: doc/classes/EditorFeatureProfile.xml:4
+msgid ""
+"An editor feature profile which can be used to disable specific features."
+msgstr ""
+
+#: doc/classes/EditorFeatureProfile.xml:7
+msgid ""
+"An editor feature profile can be used to disable specific features of the "
+"Godot editor. When disabled, the features won't appear in the editor, which "
+"makes the editor less cluttered. This is useful in education settings to "
+"reduce confusion or when working in a team. For example, artists and level "
+"designers could use a feature profile that disables the script editor to "
+"avoid accidentally making changes to files they aren't supposed to edit.\n"
+"To manage editor feature profiles visually, use [b]Editor > Manage Feature "
+"Profiles...[/b] at the top of the editor window."
+msgstr ""
+
+#: doc/classes/EditorFeatureProfile.xml:19
+msgid "Returns the specified [code]feature[/code]'s human-readable name."
+msgstr ""
+
+#: doc/classes/EditorFeatureProfile.xml:28
+msgid ""
+"Returns [code]true[/code] if the class specified by [code]class_name[/code] "
+"is disabled. When disabled, the class won't appear in the Create New Node "
+"dialog."
+msgstr ""
+
+#: doc/classes/EditorFeatureProfile.xml:37
+msgid ""
+"Returns [code]true[/code] if editing for the class specified by "
+"[code]class_name[/code] is disabled. When disabled, the class will still "
+"appear in the Create New Node dialog but the inspector will be read-only "
+"when selecting a node that extends the class."
+msgstr ""
+
+#: doc/classes/EditorFeatureProfile.xml:48
+msgid ""
+"Returns [code]true[/code] if [code]property[/code] is disabled in the class "
+"specified by [code]class_name[/code]. When a property is disabled, it won't "
+"appear in the inspector when selecting a node that extends the class "
+"specified by [code]class_name[/code]."
+msgstr ""
+
+#: doc/classes/EditorFeatureProfile.xml:57
+msgid ""
+"Returns [code]true[/code] if the [code]feature[/code] is disabled. When a "
+"feature is disabled, it will disappear from the editor entirely."
+msgstr ""
+
+#: doc/classes/EditorFeatureProfile.xml:66
+msgid ""
+"Loads an editor feature profile from a file. The file must follow the JSON "
+"format obtained by using the feature profile manager's [b]Export[/b] button "
+"or the [method save_to_file] method."
+msgstr ""
+
+#: doc/classes/EditorFeatureProfile.xml:75
+msgid ""
+"Saves the editor feature profile to a file in JSON format. It can then be "
+"imported using the feature profile manager's [b]Import[/b] button or the "
+"[method load_from_file] button."
+msgstr ""
+
+#: doc/classes/EditorFeatureProfile.xml:86
+msgid ""
+"If [code]disable[/code] is [code]true[/code], disables the class specified "
+"by [code]class_name[/code]. When disabled, the class won't appear in the "
+"Create New Node dialog."
+msgstr ""
+
+#: doc/classes/EditorFeatureProfile.xml:97
+msgid ""
+"If [code]disable[/code] is [code]true[/code], disables editing for the class "
+"specified by [code]class_name[/code]. When disabled, the class will still "
+"appear in the Create New Node dialog but the inspector will be read-only "
+"when selecting a node that extends the class."
+msgstr ""
+
+#: doc/classes/EditorFeatureProfile.xml:110
+msgid ""
+"If [code]disable[/code] is [code]true[/code], disables editing for "
+"[code]property[/code] in the class specified by [code]class_name[/code]. "
+"When a property is disabled, it won't appear in the inspector when selecting "
+"a node that extends the class specified by [code]class_name[/code]."
+msgstr ""
+
+#: doc/classes/EditorFeatureProfile.xml:121
+msgid ""
+"If [code]disable[/code] is [code]true[/code], disables the editor feature "
+"specified in [code]feature[/code]. When a feature is disabled, it will "
+"disappear from the editor entirely."
+msgstr ""
+
+#: doc/classes/EditorFeatureProfile.xml:127
+msgid ""
+"The 3D editor. If this feature is disabled, the 3D editor won't display but "
+"3D nodes will still display in the Create New Node dialog."
+msgstr ""
+
+#: doc/classes/EditorFeatureProfile.xml:130
+msgid ""
+"The Script tab, which contains the script editor and class reference "
+"browser. If this feature is disabled, the Script tab won't display."
+msgstr ""
+
+#: doc/classes/EditorFeatureProfile.xml:133
+msgid ""
+"The AssetLib tab. If this feature is disabled, the AssetLib tab won't "
+"display."
+msgstr ""
+
+#: doc/classes/EditorFeatureProfile.xml:136
+msgid ""
+"Scene tree editing. If this feature is disabled, the Scene tree dock will "
+"still be visible but will be read-only."
+msgstr ""
+
+#: doc/classes/EditorFeatureProfile.xml:139
+msgid ""
+"The Import dock. If this feature is disabled, the Import dock won't be "
+"visible."
+msgstr ""
+
+#: doc/classes/EditorFeatureProfile.xml:142
+msgid ""
+"The Node dock. If this feature is disabled, signals and groups won't be "
+"visible and modifiable from the editor."
+msgstr ""
+
+#: doc/classes/EditorFeatureProfile.xml:145
+msgid ""
+"The FileSystem dock. If this feature is disabled, the FileSystem dock won't "
+"be visible."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:4
+msgid "A modified version of [FileDialog] used by the editor."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:17
+msgid ""
+"Adds a comma-delimited file extension filter option to the "
+"[EditorFileDialog] with an optional semi-colon-delimited label.\n"
+"For example, [code]\"*.tscn, *.scn; Scenes\"[/code] results in filter text "
+"\"Scenes (*.tscn, *.scn)\"."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:25
+msgid "Removes all filters except for \"All Files (*)\"."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:32
+msgid "Returns the [code]VBoxContainer[/code] used to display the file system."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:39
+msgid ""
+"Notify the [EditorFileDialog] that its view of the data is no longer "
+"accurate. Updates the view contents on next view update."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:45
+msgid ""
+"The location from which the user may select a file, including [code]res://[/"
+"code], [code]user://[/code], and the local file system."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:48
+msgid "The currently occupied directory."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:51
+msgid "The currently selected file."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:54
+msgid "The file system path in the address bar."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:58
+msgid ""
+"If [code]true[/code], the [EditorFileDialog] will not warn the user before "
+"overwriting files."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:61
+msgid ""
+"The view format in which the [EditorFileDialog] displays resources to the "
+"user."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:64
+msgid ""
+"The dialog's open or save mode, which affects the selection behavior. See "
+"[enum FileMode]"
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:67
+msgid ""
+"If [code]true[/code], hidden files and directories will be visible in the "
+"[EditorFileDialog]."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:76
+msgid "Emitted when a directory is selected."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:83
+msgid "Emitted when a file is selected."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:90
+msgid "Emitted when multiple files are selected."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:96
+msgid ""
+"The [EditorFileDialog] can select only one file. Accepting the window will "
+"open the file."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:99
+msgid ""
+"The [EditorFileDialog] can select multiple files. Accepting the window will "
+"open all files."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:102
+msgid ""
+"The [EditorFileDialog] can select only one directory. Accepting the window "
+"will open the directory."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:105
+msgid ""
+"The [EditorFileDialog] can select a file or directory. Accepting the window "
+"will open it."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:108
+msgid ""
+"The [EditorFileDialog] can select only one file. Accepting the window will "
+"save the file."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:111
+msgid ""
+"The [EditorFileDialog] can only view [code]res://[/code] directory contents."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:114
+msgid ""
+"The [EditorFileDialog] can only view [code]user://[/code] directory contents."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:117
+msgid "The [EditorFileDialog] can view the entire local file system."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:120
+msgid "The [EditorFileDialog] displays resources as thumbnails."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:123
+msgid "The [EditorFileDialog] displays resources as a list of filenames."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:4
+msgid "Resource filesystem, as the editor sees it."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:7
+msgid ""
+"This object holds information of all resources in the filesystem, their "
+"types, etc.\n"
+"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
+"the singleton using [method EditorInterface.get_resource_filesystem]."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:19
+msgid "Gets the type of the file, given the full path."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:26
+msgid "Gets the root directory object."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:35
+msgid "Returns a view into the filesystem at [code]path[/code]."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:42
+msgid "Returns the scan progress for 0 to 1 if the FS is being scanned."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:49
+msgid "Returns [code]true[/code] of the filesystem is being scanned."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:56
+msgid "Scan the filesystem for changes."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:63
+msgid "Check if the source of any imported resource changed."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:72
+msgid ""
+"Update a file information. Call this if an external program (not Godot) "
+"modified the file."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:79
+msgid "Scans the script files and updates the list of custom class names."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:86
+msgid "Emitted if the filesystem changed."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:93
+msgid "Remitted if a resource is reimported."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:100
+msgid ""
+"Emitted if at least one resource is reloaded when the filesystem is scanned."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:107
+msgid "Emitted if the source of any imported file changed."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:4
+msgid "A directory for the resource filesystem."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:7
+msgid "A more generalized, low-level variation of the directory concept."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:18
+msgid ""
+"Returns the index of the directory with name [code]name[/code] or [code]-1[/"
+"code] if not found."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:27
+msgid ""
+"Returns the index of the file with name [code]name[/code] or [code]-1[/code] "
+"if not found."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:36
+msgid "Returns the name of the file at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:43
+msgid "Returns the number of files in this directory."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:52
+msgid ""
+"Returns [code]true[/code] if the file at index [code]idx[/code] imported "
+"properly."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:61
+msgid "Returns the path to the file at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:70
+msgid ""
+"Returns the base class of the script class defined in the file at index "
+"[code]idx[/code]. If the file doesn't define a script class using the "
+"[code]class_name[/code] syntax, this will return an empty string."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:79
+msgid ""
+"Returns the name of the script class defined in the file at index [code]idx[/"
+"code]. If the file doesn't define a script class using the [code]class_name[/"
+"code] syntax, this will return an empty string."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:88
+msgid "Returns the file extension of the file at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:95
+msgid "Returns the name of this directory."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:102
+msgid ""
+"Returns the parent directory for this directory or [code]null[/code] if "
+"called on a directory at [code]res://[/code] or [code]user://[/code]."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:109
+msgid "Returns the path to this directory."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:118
+msgid "Returns the subdirectory at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:125
+msgid "Returns the number of subdirectories in this directory."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:4
+msgid ""
+"Registers a custom resource importer in the editor. Use the class to parse "
+"any file and import it as a new resource type."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:7
+msgid ""
+"EditorImportPlugins provide a way to extend the editor's resource import "
+"functionality. Use them to import resources from custom files or to provide "
+"alternatives to the editor's existing importers. Register your "
+"[EditorPlugin] with [method EditorPlugin.add_import_plugin].\n"
+"EditorImportPlugins work by associating with specific file extensions and a "
+"resource type. See [method get_recognized_extensions] and [method "
+"get_resource_type]. They may optionally specify some import presets that "
+"affect the import process. EditorImportPlugins are responsible for creating "
+"the resources and saving them in the [code].import[/code] directory.\n"
+"Below is an example EditorImportPlugin that imports a [Mesh] from a file "
+"with the extension \".special\" or \".spec\":\n"
+"[codeblock]\n"
+"tool\n"
+"extends EditorImportPlugin\n"
+"\n"
+"func get_importer_name():\n"
+" return \"my.special.plugin\"\n"
+"\n"
+"func get_visible_name():\n"
+" return \"Special Mesh Importer\"\n"
+"\n"
+"func get_recognized_extensions():\n"
+" return [\"special\", \"spec\"]\n"
+"\n"
+"func get_save_extension():\n"
+" return \"mesh\"\n"
+"\n"
+"func get_resource_type():\n"
+" return \"Mesh\"\n"
+"\n"
+"func get_preset_count():\n"
+" return 1\n"
+"\n"
+"func get_preset_name(i):\n"
+" return \"Default\"\n"
+"\n"
+"func get_import_options(i):\n"
+" return [{\"name\": \"my_option\", \"default_value\": false}]\n"
+"\n"
+"func import(source_file, save_path, options, platform_variants, gen_files):\n"
+" var file = File.new()\n"
+" if file.open(source_file, File.READ) != OK:\n"
+" return FAILED\n"
+"\n"
+" var mesh = Mesh.new()\n"
+" # Fill the Mesh with data read in \"file\", left as an exercise to the "
+"reader\n"
+"\n"
+" var filename = save_path + \".\" + get_save_extension()\n"
+" ResourceSaver.save(filename, mesh)\n"
+" return OK\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:52
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/plugins/editor/"
+"import_plugins.html"
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:61
+msgid ""
+"Gets the options and default values for the preset at this index. Returns an "
+"Array of Dictionaries with the following keys: [code]name[/code], "
+"[code]default_value[/code], [code]property_hint[/code] (optional), "
+"[code]hint_string[/code] (optional), [code]usage[/code] (optional)."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:68
+msgid ""
+"Gets the order of this importer to be run when importing resources. Higher "
+"values will be called later. Use this to ensure the importer runs after the "
+"dependencies are already imported."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:75
+msgid "Gets the unique name of the importer."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:86
+msgid ""
+"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. For example:\n"
+"[codeblock]\n"
+"func get_option_visibility(option, options):\n"
+" # Only show the lossy quality setting if the compression mode is set to "
+"\"Lossy\".\n"
+" if option == \"compress/lossy_quality\" and options.has(\"compress/mode"
+"\"):\n"
+" return int(options[\"compress/mode\"]) == COMPRESS_LOSSY\n"
+"\n"
+" return true\n"
+"[/codeblock]\n"
+"Return [code]true[/code] to make all options always visible."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:102
+msgid ""
+"Gets the number of initial presets defined by the plugin. Use [method "
+"get_import_options] to get the default options for the preset and [method "
+"get_preset_name] to get the name of the preset."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:111
+msgid "Gets the name of the options preset at this index."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:118
+msgid ""
+"Gets the priority of this plugin for the recognized extension. Higher "
+"priority plugins will be preferred. The default priority is [code]1.0[/code]."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:125
+msgid ""
+"Gets the list of file extensions to associate with this loader (case-"
+"insensitive). e.g. [code][\"obj\"][/code]."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:132
+msgid ""
+"Gets the Godot resource type associated with this loader. e.g. [code]\"Mesh"
+"\"[/code] or [code]\"Animation\"[/code]."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:139
+msgid ""
+"Gets the extension used to save this resource in the [code].import[/code] "
+"directory."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:146
+msgid "Gets the name to display in the import window."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:163
+msgid ""
+"Imports [code]source_file[/code] into [code]save_path[/code] with the import "
+"[code]options[/code] specified. The [code]platform_variants[/code] and "
+"[code]gen_files[/code] arrays will be modified by this function.\n"
+"This method must be overridden to do the actual importing work. See this "
+"class' description for an example of overriding this method."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:4
+msgid "A tab used to edit properties of the selected node."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:7
+msgid ""
+"The editor inspector is by default located on the right-hand side of the "
+"editor. It's used to edit the properties of the selected node. For example, "
+"you can select a node such as the Sprite2D then edit its transform through "
+"the inspector tool. The editor inspector is an essential tool in the game "
+"development workflow.\n"
+"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
+"the singleton using [method EditorInterface.get_inspector]."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:17
+msgid ""
+"Refreshes the inspector.\n"
+"[b]Note:[/b] To save on CPU resources, calling this method will do nothing "
+"if the time specified in [code]docks/property_editor/auto_refresh_interval[/"
+"code] editor setting hasn't passed yet since this method was last called. "
+"(By default, this interval is set to 0.3 seconds.)"
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:30
+msgid ""
+"Emitted when the Edit button of an [Object] has been pressed in the "
+"inspector. This is mainly used in the remote scene tree inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:37
+msgid "Emitted when a property is removed from the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:44
+msgid "Emitted when a property is edited in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:51
+msgid ""
+"Emitted when a property is keyed in the inspector. Properties can be keyed "
+"by clicking the \"key\" icon next to a property when the Animation panel is "
+"toggled."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:58
+msgid "Emitted when a property is selected in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:67
+msgid ""
+"Emitted when a boolean property is toggled in the inspector.\n"
+"[b]Note:[/b] This signal is never emitted if the internal [code]autoclear[/"
+"code] property enabled. Since this property is always enabled in the editor "
+"inspector, this signal is never emitted by the editor itself."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:77
+msgid "Emitted when a resource is selected in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:82
+msgid ""
+"Emitted when a property that requires a restart to be applied is edited in "
+"the inspector. This is only used in the Project Settings and Editor Settings."
+msgstr ""
+
+#: doc/classes/EditorInspectorPlugin.xml:4
+msgid "Plugin for adding custom property editors on inspector."
+msgstr ""
+
+#: doc/classes/EditorInspectorPlugin.xml:7
+msgid ""
+"This plugins allows adding custom property editors to [EditorInspector].\n"
+"Plugins are registered via [method EditorPlugin.add_inspector_plugin].\n"
+"When an object is edited, the [method can_handle] function is called and "
+"must return [code]true[/code] if the object type is supported.\n"
+"If supported, the function [method parse_begin] will be called, allowing to "
+"place custom controls at the beginning of the class.\n"
+"Subsequently, the [method parse_category] and [method parse_property] are "
+"called for every category and property. They offer the ability to add custom "
+"controls to the inspector too.\n"
+"Finally [method parse_end] will be called.\n"
+"On each of these calls, the \"add\" functions can be called."
+msgstr ""
+
+#: doc/classes/EditorInspectorPlugin.xml:24
+msgid "Adds a custom control, not necessarily a property editor."
+msgstr ""
+
+#: doc/classes/EditorInspectorPlugin.xml:35
+msgid "Adds a property editor, this must inherit [EditorProperty]."
+msgstr ""
+
+#: doc/classes/EditorInspectorPlugin.xml:48
+msgid ""
+"Adds an editor that allows modifying multiple properties, this must inherit "
+"[EditorProperty]."
+msgstr ""
+
+#: doc/classes/EditorInspectorPlugin.xml:57
+msgid "Returns [code]true[/code] if this object can be handled by this plugin."
+msgstr ""
+
+#: doc/classes/EditorInspectorPlugin.xml:66
+msgid "Called to allow adding controls at the beginning of the list."
+msgstr ""
+
+#: doc/classes/EditorInspectorPlugin.xml:77
+msgid "Called to allow adding controls at the beginning of the category."
+msgstr ""
+
+#: doc/classes/EditorInspectorPlugin.xml:84
+msgid "Called to allow adding controls at the end of the list."
+msgstr ""
+
+#: doc/classes/EditorInspectorPlugin.xml:103
+msgid ""
+"Called to allow adding property specific editors to the inspector. Usually "
+"these inherit [EditorProperty]. Returning [code]true[/code] removes the "
+"built-in editor for this property, otherwise allows to insert a custom "
+"editor before the built-in one."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:4
+msgid "Godot editor's interface."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:7
+msgid ""
+"EditorInterface gives you control over Godot editor's window. It allows "
+"customizing the window, saving and (re-)loading scenes, rendering mesh "
+"previews, inspecting and editing resources and objects, and provides access "
+"to [EditorSettings], [EditorFileSystem], [EditorResourcePreview], "
+"[ScriptEditor], the editor viewport, and information about scenes.\n"
+"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
+"the singleton using [method EditorPlugin.get_editor_interface]."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:19
+msgid "Edits the given [Resource]."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:26
+msgid ""
+"Returns the main container of Godot editor's window. For example, you can "
+"use it to retrieve the size of the container and place your controls "
+"accordingly."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:33
+msgid "Returns the current path being viewed in the [FileSystemDock]."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:40
+msgid "Returns the edited (current) scene's root [Node]."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:47
+msgid "Returns the editor's [EditorSettings] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:54
+msgid ""
+"Returns the main editor control. Use this as a parent for main screens.\n"
+"[b]Note:[/b] This returns the main editor control containing the whole "
+"editor, not the 2D or 3D viewports specifically."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:62
+msgid "Returns the editor's [FileSystemDock] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:69
+msgid "Returns the editor's [EditorInspector] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:76
+msgid "Returns an [Array] with the file paths of the currently opened scenes."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:83
+msgid ""
+"Returns the name of the scene that is being played. If no scene is currently "
+"being played, returns an empty string."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:90
+msgid "Returns the editor's [EditorFileSystem] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:97
+msgid "Returns the editor's [EditorResourcePreview] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:104
+msgid "Returns the editor's [ScriptEditor] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:111
+msgid ""
+"Returns the path of the directory currently selected in the "
+"[FileSystemDock]. If a file is selected, its base directory will be returned "
+"using [method String.get_base_dir] instead."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:118
+msgid "Returns the editor's [EditorSelection] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:129
+msgid ""
+"Shows the given property on the given [code]object[/code] in the editor's "
+"Inspector dock."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:136
+msgid ""
+"Returns [code]true[/code] if a scene is currently being played, [code]false[/"
+"code] otherwise. Paused scenes are considered as being played."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:145
+msgid ""
+"Returns [code]true[/code] if the specified [code]plugin[/code] is enabled. "
+"The plugin name is the same as its directory name."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:156
+msgid ""
+"Returns mesh previews rendered at the given size as an [Array] of "
+"[Texture2D]s."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:165
+msgid "Opens the scene at the given path."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:172
+msgid "Plays the currently active scene."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:181
+msgid "Plays the scene specified by its filepath."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:188
+msgid "Plays the main scene."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:197
+msgid "Reloads the scene at the given path."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:204
+msgid ""
+"Saves the scene. Returns either [code]OK[/code] or [code]ERR_CANT_CREATE[/"
+"code] (see [@GlobalScope] constants)."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:215
+msgid "Saves the scene as a file at [code]path[/code]."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:224
+msgid ""
+"Selects the file, with the path provided by [code]file[/code], in the "
+"FileSystem dock."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:233
+msgid ""
+"Sets the editor's current main screen to the one specified in [code]name[/"
+"code]. [code]name[/code] must match the text of the tab in question exactly "
+"([code]2D[/code], [code]3D[/code], [code]Script[/code], [code]AssetLib[/"
+"code])."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:244
+msgid ""
+"Sets the enabled status of a plugin. The plugin name is the same as its "
+"directory name."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:251
+msgid "Stops the scene that is currently playing."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:257
+msgid ""
+"If [code]true[/code], enables distraction-free mode which hides side docks "
+"to increase the space available for the main view."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:4
+msgid "Custom gizmo for editing Node3D objects."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:7
+msgid ""
+"Custom gizmo that is used for providing custom visualization and editing "
+"(handles) for Node3D objects. See [EditorNode3DGizmoPlugin] for more "
+"information."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:18
+msgid ""
+"Adds the specified [code]segments[/code] to the gizmo's collision shape for "
+"picking. Call this function during [method redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:27
+msgid ""
+"Adds collision triangles to the gizmo for picking. A [TriangleMesh] can be "
+"generated from a regular [Mesh] too. Call this function during [method "
+"redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:42
+msgid ""
+"Adds a list of handles (points) which can be used to deform the object being "
+"edited.\n"
+"There are virtual functions which will be called upon editing of these "
+"handles. Call this function during [method redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:58
+msgid ""
+"Adds lines to the gizmo (as sets of 2 points), with a given material. The "
+"lines are used for visualizing the gizmo. Call this function during [method "
+"redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:73
+msgid ""
+"Adds a mesh to the gizmo with the specified [code]billboard[/code] state, "
+"[code]skeleton[/code] and [code]material[/code]. If [code]billboard[/code] "
+"is [code]true[/code], the mesh will rotate to always face the camera. Call "
+"this function during [method redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:86
+msgid ""
+"Adds an unscaled billboard for visualization. Call this function during "
+"[method redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:93
+msgid ""
+"Removes everything in the gizmo including meshes, collisions and handles."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:106
+msgid ""
+"Commit a handle being edited (handles must have been previously added by "
+"[method add_handles]).\n"
+"If the [code]cancel[/code] parameter is [code]true[/code], an option to "
+"restore the edited value to the original is provided."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:116
+msgid ""
+"Gets the name of an edited handle (handles must have been previously added "
+"by [method add_handles]).\n"
+"Handles can be named for reference to the user when editing."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:126
+msgid ""
+"Gets actual value of a handle. This value can be anything and used for "
+"eventually undoing the motion when calling [method commit_handle]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:133
+msgid ""
+"Returns the [EditorNode3DGizmoPlugin] that owns this gizmo. It's useful to "
+"retrieve materials using [method EditorNode3DGizmoPlugin.get_material]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:140
+msgid "Returns the Node3D node associated with this gizmo."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:149
+msgid ""
+"Returns [code]true[/code] if the handle at index [code]index[/code] is "
+"highlighted by being hovered with the mouse."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:156
+msgid ""
+"This function is called when the [Node3D] this gizmo refers to changes (the "
+"[method Node3D.update_gizmo] is called)."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:169
+msgid ""
+"This function is used when the user drags a gizmo handle (previously added "
+"with [method add_handles]) in screen coordinates.\n"
+"The [Camera3D] is also provided so screen coordinates can be converted to "
+"raycasts."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:179
+msgid ""
+"Sets the gizmo's hidden state. If [code]true[/code], the gizmo will be "
+"hidden. If [code]false[/code], it will be shown."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:188
+msgid ""
+"Sets the reference [Node3D] node for the gizmo. [code]node[/code] must "
+"inherit from [Node3D]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:4
+msgid "Used by the editor to define Node3D gizmo types."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:7
+msgid ""
+"EditorNode3DGizmoPlugin allows you to define a new type of Gizmo. There are "
+"two main ways to do so: extending [EditorNode3DGizmoPlugin] for the simpler "
+"gizmos, or creating a new [EditorNode3DGizmo] type. See the tutorial in the "
+"documentation for more info."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:10
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/plugins/editor/"
+"spatial_gizmos.html"
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:21
+msgid ""
+"Adds a new material to the internal material list for the plugin. It can "
+"then be accessed with [method get_material]. Should not be overridden."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:28
+msgid ""
+"Override this method to define whether the gizmo can be hidden or not. "
+"Returns [code]true[/code] if not overridden."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:43
+msgid ""
+"Override this method to commit gizmo handles. Called for this plugin's "
+"active gizmos."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:52
+msgid ""
+"Override this method to return a custom [EditorNode3DGizmo] for the spatial "
+"nodes of your choice, return [code]null[/code] for the rest of nodes. See "
+"also [method has_gizmo]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:63
+msgid ""
+"Creates a handle material with its variants (selected and/or editable) and "
+"adds them to the internal material list. They can then be accessed with "
+"[method get_material] and used in [method EditorNode3DGizmo.add_handles]. "
+"Should not be overridden."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:78
+msgid ""
+"Creates an icon material with its variants (selected and/or editable) and "
+"adds them to the internal material list. They can then be accessed with "
+"[method get_material] and used in [method EditorNode3DGizmo."
+"add_unscaled_billboard]. Should not be overridden."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:95
+msgid ""
+"Creates an unshaded material with its variants (selected and/or editable) "
+"and adds them to the internal material list. They can then be accessed with "
+"[method get_material] and used in [method EditorNode3DGizmo.add_mesh] and "
+"[method EditorNode3DGizmo.add_lines]. Should not be overridden."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:106
+msgid ""
+"Override this method to provide gizmo's handle names. Called for this "
+"plugin's active gizmos."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:117
+msgid ""
+"Gets actual value of a handle from gizmo. Called for this plugin's active "
+"gizmos."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:128
+msgid ""
+"Gets material from the internal list of materials. If an [EditorNode3DGizmo] "
+"is provided, it will try to get the corresponding variant (selected and/or "
+"editable)."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:135
+msgid ""
+"Override this method to provide the name that will appear in the gizmo "
+"visibility menu."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:142
+msgid ""
+"Override this method to set the gizmo's priority. Higher values correspond "
+"to higher priority. If a gizmo with higher priority conflicts with another "
+"gizmo, only the gizmo with higher priority will be used.\n"
+"All built-in editor gizmos return a priority of [code]-1[/code]. If not "
+"overridden, this method will return [code]0[/code], which means custom "
+"gizmos will automatically override built-in gizmos."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:152
+msgid ""
+"Override this method to define which Node3D nodes have a gizmo from this "
+"plugin. Whenever a [Node3D] node is added to a scene this method is called, "
+"if it returns [code]true[/code] the node gets a generic [EditorNode3DGizmo] "
+"assigned and is added to this plugin's list of active gizmos."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:163
+msgid ""
+"Gets whether a handle is highlighted or not. Called for this plugin's active "
+"gizmos."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:170
+msgid ""
+"Override this method to define whether Node3D with this gizmo should be "
+"selecteble even when the gizmo is hidden."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:179
+msgid ""
+"Callback to redraw the provided gizmo. Called for this plugin's active "
+"gizmos."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:194
+msgid ""
+"Update the value of a handle after it has been updated. Called for this "
+"plugin's active gizmos."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:4
+msgid "Used by the editor to extend its functionality."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:7
+msgid ""
+"Plugins are used by the editor to extend functionality. The most common "
+"types of plugins are those which edit a given node or resource type, import "
+"plugins and export plugins. See also [EditorScript] to add functions to the "
+"editor."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:10
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/plugins/editor/index.html"
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:21
+msgid ""
+"Adds a script at [code]path[/code] to the Autoload list as [code]name[/code]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:32
+msgid ""
+"Adds a control to the bottom panel (together with Output, Debug, Animation, "
+"etc). Returns a reference to the button added. It's up to you to hide/show "
+"the button when needed. When your plugin is deactivated, make sure to remove "
+"your custom control with [method remove_control_from_bottom_panel] and free "
+"it with [method Node.queue_free]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:43
+msgid ""
+"Adds a custom control to a container (see [enum CustomControlContainer]). "
+"There are many locations where custom controls can be added in the editor "
+"UI.\n"
+"Please remember that you have to manage the visibility of your custom "
+"controls yourself (and likely hide it after adding it).\n"
+"When your plugin is deactivated, make sure to remove your custom control "
+"with [method remove_control_from_container] and free it with [method Node."
+"queue_free]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:56
+msgid ""
+"Adds the control to a specific dock slot (see [enum DockSlot] for options).\n"
+"If the dock is repositioned and as long as the plugin is active, the editor "
+"will save the dock position on further sessions.\n"
+"When your plugin is deactivated, make sure to remove your custom control "
+"with [method remove_control_from_docks] and free it with [method Node."
+"queue_free]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:73
+msgid ""
+"Adds a custom type, which will appear in the list of nodes or resources. An "
+"icon can be optionally passed.\n"
+"When given node or resource is selected, the base type will be instanced (e."
+"g. \"Node3D\", \"Control\", \"Resource\"), then the script will be loaded "
+"and set to this object.\n"
+"You can use the virtual method [method handles] to check if your custom "
+"object is being edited by checking the script or using the [code]is[/code] "
+"keyword.\n"
+"During run-time, this will be a simple object with a script so this function "
+"does not need to be called then."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:131
+msgid ""
+"Adds a custom menu item to [b]Project > Tools[/b] as [code]name[/code] that "
+"calls [code]callback[/code] on an instance of [code]handler[/code] with a "
+"parameter [code]ud[/code] when user activates it."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:142
+msgid ""
+"Adds a custom submenu under [b]Project > Tools >[/b] [code]name[/code]. "
+"[code]submenu[/code] should be an object of class [PopupMenu]. This submenu "
+"should be cleaned up using [code]remove_tool_menu_item(name)[/code]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:151
+msgid ""
+"Registers a custom translation parser plugin for extracting translatable "
+"strings from custom files."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:158
+msgid ""
+"This method is called when the editor is about to save the project, switch "
+"to another tab, etc. It asks the plugin to apply any pending state changes "
+"to ensure consistency.\n"
+"This is used, for example, in shader editors to let the plugin know that it "
+"must apply the shader code being written by the user to the object."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:172
+msgid ""
+"Clear all the state and reset the object being edited to zero. This ensures "
+"your plugin does not keep editing a currently existing node, or a node from "
+"the wrong scene."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:179
+msgid ""
+"Called by the engine when the user disables the [EditorPlugin] in the Plugin "
+"tab of the project settings window."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:188
+msgid ""
+"This function is used for plugins that edit specific object types (nodes or "
+"resources). It requests the editor to edit the given object."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:195
+msgid ""
+"Called by the engine when the user enables the [EditorPlugin] in the Plugin "
+"tab of the project settings window."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:220
+msgid ""
+"Called when there is a root node in the current edited scene, [method "
+"handles] is implemented and an [InputEvent] happens in the 2D viewport. "
+"Intercepts the [InputEvent], if [code]return true[/code] [EditorPlugin] "
+"consumes the [code]event[/code], otherwise forwards [code]event[/code] to "
+"other Editor classes. Example:\n"
+"[codeblock]\n"
+"# Prevents the InputEvent to reach other Editor classes\n"
+"func forward_canvas_gui_input(event):\n"
+" var forward = true\n"
+" return forward\n"
+"[/codeblock]\n"
+"Must [code]return false[/code] in order to forward the [InputEvent] to other "
+"Editor classes. Example:\n"
+"[codeblock]\n"
+"# Consumes InputEventMouseMotion and forwards other InputEvent types\n"
+"func forward_canvas_gui_input(event):\n"
+" var forward = false\n"
+" if event is InputEventMouseMotion:\n"
+" forward = true\n"
+" return forward\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:246
+msgid ""
+"Called when there is a root node in the current edited scene, [method "
+"handles] is implemented and an [InputEvent] happens in the 3D viewport. "
+"Intercepts the [InputEvent], if [code]return true[/code] [EditorPlugin] "
+"consumes the [code]event[/code], otherwise forwards [code]event[/code] to "
+"other Editor classes. Example:\n"
+"[codeblock]\n"
+"# Prevents the InputEvent to reach other Editor classes\n"
+"func forward_spatial_gui_input(camera, event):\n"
+" var forward = true\n"
+" return forward\n"
+"[/codeblock]\n"
+"Must [code]return false[/code] in order to forward the [InputEvent] to other "
+"Editor classes. Example:\n"
+"[codeblock]\n"
+"# Consumes InputEventMouseMotion and forwards other InputEvent types\n"
+"func forward_spatial_gui_input(camera, event):\n"
+" var forward = false\n"
+" if event is InputEventMouseMotion:\n"
+" forward = true\n"
+" return forward\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:268
+msgid ""
+"This is for editors that edit script-based objects. You can return a list of "
+"breakpoints in the format ([code]script:line[/code]), for example: "
+"[code]res://path_to_script.gd:25[/code]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:275
+msgid ""
+"Returns the [EditorInterface] object that gives you control over Godot "
+"editor's window and its functionalities."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:282
+msgid ""
+"Override this method in your plugin to return a [Texture2D] in order to give "
+"it an icon.\n"
+"For main screen plugins, this appears at the top of the screen, to the right "
+"of the \"2D\", \"3D\", \"Script\", and \"AssetLib\" buttons.\n"
+"Ideally, the plugin icon should be white with a transparent background and "
+"16x16 pixels in size.\n"
+"[codeblock]\n"
+"func get_plugin_icon():\n"
+" # You can use a custom icon:\n"
+" return preload(\"res://addons/my_plugin/my_plugin_icon.svg\")\n"
+" # Or use a built-in icon:\n"
+" return get_editor_interface().get_base_control().get_icon(\"Node\", "
+"\"EditorIcons\")\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:298
+msgid ""
+"Override this method in your plugin to provide the name of the plugin when "
+"displayed in the Godot editor.\n"
+"For main screen plugins, this appears at the top of the screen, to the right "
+"of the \"2D\", \"3D\", \"Script\", and \"AssetLib\" buttons."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:306
+msgid ""
+"Gets the Editor's dialogue used for making scripts.\n"
+"[b]Note:[/b] Users can configure it before use."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:314
+msgid ""
+"Gets the state of your plugin editor. This is used when saving the scene (so "
+"state is kept when opening it again) and for switching tabs (so state can be "
+"restored when the tab returns)."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:321
+msgid ""
+"Gets the undo/redo object. Most actions in the editor can be undoable, so "
+"use this object to make sure this happens when it's worth it."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:330
+msgid ""
+"Gets the GUI layout of the plugin. This is used to save the project's editor "
+"layout when [method queue_save_layout] is called or the editor layout was "
+"changed(For example changing the position of a dock)."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:339
+msgid ""
+"Implement this function if your plugin edits a specific type of object "
+"(Resource or Node). If you return [code]true[/code], then you will get the "
+"functions [method edit] and [method make_visible] called when the editor "
+"requests them. If you have declared the methods [method "
+"forward_canvas_gui_input] and [method forward_spatial_gui_input] these will "
+"be called too."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:346
+msgid ""
+"Returns [code]true[/code] if this is a main screen editor plugin (it goes in "
+"the workspace selector together with [b]2D[/b], [b]3D[/b], [b]Script[/b] and "
+"[b]AssetLib[/b])."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:369
+msgid ""
+"This function will be called when the editor is requested to become visible. "
+"It is used for plugins that edit a specific object type.\n"
+"Remember that you have to manage the visibility of all your editor controls "
+"manually."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:377
+msgid "Queue save the project's editor layout."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:386
+msgid "Removes an Autoload [code]name[/code] from the list."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:395
+msgid ""
+"Removes the control from the bottom panel. You have to manually [method Node."
+"queue_free] the control."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:406
+msgid ""
+"Removes the control from the specified container. You have to manually "
+"[method Node.queue_free] the control."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:415
+msgid ""
+"Removes the control from the dock. You have to manually [method Node."
+"queue_free] the control."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:424
+msgid "Removes a custom type added by [method add_custom_type]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:473
+msgid "Removes a menu [code]name[/code] from [b]Project > Tools[/b]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:482
+msgid "Removes a registered custom translation parser plugin."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:489
+msgid ""
+"This method is called after the editor saves the project or when it's "
+"closed. It asks the plugin to save edited external scenes/resources."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:502
+msgid ""
+"Use this method if you always want to receive inputs from 3D view screen "
+"inside [method forward_spatial_gui_input]. It might be especially usable if "
+"your plugin will want to use raycast in the scene."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:511
+msgid "Restore the state saved by [method get_state]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:520
+msgid "Restore the plugin GUI layout saved by [method get_window_layout]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:527
+msgid "Updates the overlays of the editor (2D/3D) viewport."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:536
+msgid ""
+"Emitted when user changes the workspace ([b]2D[/b], [b]3D[/b], [b]Script[/"
+"b], [b]AssetLib[/b]). Also works with custom screens defined by plugins."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:549
+msgid ""
+"Emitted when the scene is changed in the editor. The argument will return "
+"the root node of the scene that has just become active. If this scene is new "
+"and empty, the argument will be [code]null[/code]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:556
+msgid ""
+"Emitted when user closes a scene. The argument is file path to a closed "
+"scene."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:602
+msgid "Represents the size of the [enum DockSlot] enum."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:4
+msgid "Custom control to edit properties for adding into the inspector."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:7
+msgid ""
+"This control allows property editing for one or multiple properties into "
+"[EditorInspector]. It is added via [EditorInspectorPlugin]."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:18
+msgid ""
+"If any of the controls added can gain keyboard focus, add it here. This "
+"ensures that focus will be restored if the inspector is refreshed."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:33
+msgid ""
+"If one or several properties have changed, this must be called. [code]field[/"
+"code] is used in case your editor can modify fields separately (as an "
+"example, Vector3.x). The [code]changing[/code] argument avoids the editor "
+"requesting this property to be refreshed (leave as [code]false[/code] if "
+"unsure)."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:40
+msgid "Gets the edited object."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:47
+msgid ""
+"Gets the edited property. If your editor is for a single property (added via "
+"[method EditorInspectorPlugin.parse_property]), then this will return the "
+"property."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:54
+msgid "Override if you want to allow a custom tooltip over your property."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:63
+msgid ""
+"Adds controls with this function if you want them on the bottom (below the "
+"label)."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:70
+msgid "When this virtual function is called, you must update your editor."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:76
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is "
+"checkable."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:79
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is checked."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:82
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property can be "
+"deleted by the user."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:85
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property must draw "
+"with error color. This is used for editable children's properties."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:88
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property can add "
+"keys for animation."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:91
+msgid "Set this property to change the label (if you want to show one)."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:94
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is read-"
+"only."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:104
+msgid ""
+"Emit it if you want multiple properties modified at the same time. Do not "
+"use if added via [method EditorInspectorPlugin.parse_property]."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:113
+msgid "Used by sub-inspectors. Emit it if what was selected was an Object ID."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:122
+msgid ""
+"Do not emit this manually, use the [method emit_changed] method instead."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:131
+msgid "Emitted when a property was checked. Used internally."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:138
+msgid "Emitted when a property was deleted. Used internally."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:145
+msgid ""
+"Emit it if you want to add this value as an animation key (check for keying "
+"being enabled first)."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:154
+msgid "Emit it if you want to key a property with a single value."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:163
+msgid ""
+"If you want a sub-resource to be edited, emit this signal with the resource."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:172
+msgid "Emitted when selected. Used internally."
+msgstr ""
+
+#: doc/classes/EditorResourcePreview.xml:4
+msgid "Helper to generate previews of resources or files."
+msgstr ""
+
+#: doc/classes/EditorResourcePreview.xml:7
+msgid ""
+"This object is used to generate previews for resources of files.\n"
+"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
+"the singleton using [method EditorInterface.get_resource_previewer]."
+msgstr ""
+
+#: doc/classes/EditorResourcePreview.xml:19
+msgid "Create an own, custom preview generator."
+msgstr ""
+
+#: doc/classes/EditorResourcePreview.xml:28
+msgid ""
+"Check if the resource changed, if so, it will be invalidated and the "
+"corresponding signal emitted."
+msgstr ""
+
+#: doc/classes/EditorResourcePreview.xml:43
+msgid ""
+"Queue a resource being edited for preview (using an instance). Once the "
+"preview is ready, your receiver.receiver_func will be called either "
+"containing the preview texture or an empty texture (if no preview was "
+"possible). Callback must have the format: (path,texture,userdata). Userdata "
+"can be anything."
+msgstr ""
+
+#: doc/classes/EditorResourcePreview.xml:58
+msgid ""
+"Queue a resource file for preview (using a path). Once the preview is ready, "
+"your receiver.receiver_func will be called either containing the preview "
+"texture or an empty texture (if no preview was possible). Callback must have "
+"the format: (path,texture,userdata). Userdata can be anything."
+msgstr ""
+
+#: doc/classes/EditorResourcePreview.xml:67
+msgid "Removes a custom preview generator."
+msgstr ""
+
+#: doc/classes/EditorResourcePreview.xml:76
+msgid ""
+"Emitted if a preview was invalidated (changed). [code]path[/code] "
+"corresponds to the path of the preview."
+msgstr ""
+
+#: doc/classes/EditorResourcePreviewGenerator.xml:4
+msgid "Custom generator of previews."
+msgstr ""
+
+#: doc/classes/EditorResourcePreviewGenerator.xml:7
+msgid ""
+"Custom code to generate previews. Please check [code]file_dialog/"
+"thumbnail_size[/code] in [EditorSettings] to find out the right size to do "
+"previews at."
+msgstr ""
+
+#: doc/classes/EditorResourcePreviewGenerator.xml:16
+msgid ""
+"If this function returns [code]true[/code], the generator will call [method "
+"generate] or [method generate_from_path] for small previews as well.\n"
+"By default, it returns [code]false[/code]."
+msgstr ""
+
+#: doc/classes/EditorResourcePreviewGenerator.xml:28
+msgid ""
+"Generate a preview from a given resource with the specified size. This must "
+"always be implemented.\n"
+"Returning an empty texture is an OK way to fail and let another generator "
+"take care.\n"
+"Care must be taken because this function is always called from a thread (not "
+"the main thread)."
+msgstr ""
+
+#: doc/classes/EditorResourcePreviewGenerator.xml:41
+msgid ""
+"Generate a preview directly from a path with the specified size. "
+"Implementing this is optional, as default code will load and call [method "
+"generate].\n"
+"Returning an empty texture is an OK way to fail and let another generator "
+"take care.\n"
+"Care must be taken because this function is always called from a thread (not "
+"the main thread)."
+msgstr ""
+
+#: doc/classes/EditorResourcePreviewGenerator.xml:50
+msgid ""
+"If this function returns [code]true[/code], the generator will automatically "
+"generate the small previews from the normal preview texture generated by the "
+"methods [method generate] or [method generate_from_path].\n"
+"By default, it returns [code]false[/code]."
+msgstr ""
+
+#: doc/classes/EditorResourcePreviewGenerator.xml:60
+msgid ""
+"Returns [code]true[/code] if your generator supports the resource of type "
+"[code]type[/code]."
+msgstr ""
+
+#: doc/classes/EditorSceneImporter.xml:4
+msgid "Imports scenes from third-parties' 3D files."
+msgstr ""
+
+#: doc/classes/EditorSceneImporterAssimp.xml:4
+msgid "FBX 3D asset importer based on [url=http://assimp.org/]Assimp[/url]."
+msgstr ""
+
+#: doc/classes/EditorSceneImporterAssimp.xml:7
+msgid ""
+"This is an FBX 3D asset importer based on [url=http://assimp.org/]Assimp[/"
+"url]. It currently has many known limitations and works best with static "
+"meshes. Most animated meshes won't import correctly.\n"
+"If exporting a FBX scene from Autodesk Maya, use these FBX export settings:\n"
+"[codeblock]\n"
+"- Smoothing Groups\n"
+"- Smooth Mesh\n"
+"- Triangluate (for meshes with blend shapes)\n"
+"- Bake Animation\n"
+"- Resample All\n"
+"- Deformed Models\n"
+"- Skins\n"
+"- Blend Shapes\n"
+"- Curve Filters\n"
+"- Constant Key Reducer\n"
+"- Auto Tangents Only\n"
+"- *Do not check* Constraints (as it will break the file)\n"
+"- Can check Embed Media (embeds textures into the exported FBX file)\n"
+" - Note that when importing embedded media, the texture and mesh will be a "
+"single immutable file.\n"
+" - You will have to re-export then re-import the FBX if the texture has "
+"changed.\n"
+"- Units: Centimeters\n"
+"- Up Axis: Y\n"
+"- Binary format in FBX 2017\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/EditorScenePostImport.xml:4
+msgid "Post-processes scenes after import."
+msgstr ""
+
+#: doc/classes/EditorScenePostImport.xml:7
+msgid ""
+"Imported scenes can be automatically modified right after import by setting "
+"their [b]Custom Script[/b] Import property to a [code]tool[/code] script "
+"that inherits from this class.\n"
+"The [method post_import] callback receives the imported scene's root node "
+"and returns the modified version of the scene. Usage example:\n"
+"[codeblock]\n"
+"tool # Needed so it runs in editor\n"
+"extends EditorScenePostImport\n"
+"\n"
+"# This sample changes all node names\n"
+"\n"
+"# Called right after the scene is imported and gets the root node\n"
+"func post_import(scene):\n"
+" # Change all node names to \"modified_[oldnodename]\"\n"
+" iterate(scene)\n"
+" return scene # Remember to return the imported scene\n"
+"\n"
+"func iterate(node):\n"
+" if node != null:\n"
+" node.name = \"modified_\" + node.name\n"
+" for child in node.get_children():\n"
+" iterate(child)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/EditorScenePostImport.xml:29
+msgid ""
+"https://docs.godotengine.org/en/latest/getting_started/workflow/assets/"
+"importing_scenes.html#custom-script"
+msgstr ""
+
+#: doc/classes/EditorScenePostImport.xml:36
+msgid ""
+"Returns the source file path which got imported (e.g. [code]res://scene.dae[/"
+"code])."
+msgstr ""
+
+#: doc/classes/EditorScenePostImport.xml:43
+msgid "Returns the resource folder the imported scene file is located in."
+msgstr ""
+
+#: doc/classes/EditorScenePostImport.xml:52
+msgid ""
+"Called after the scene was imported. This method must return the modified "
+"version of the scene."
+msgstr ""
+
+#: doc/classes/EditorScript.xml:4
+msgid "Base script that can be used to add extension functions to the editor."
+msgstr ""
+
+#: doc/classes/EditorScript.xml:7
+msgid ""
+"Scripts extending this class and implementing its [method _run] method can "
+"be executed from the Script Editor's [b]File > Run[/b] menu option (or by "
+"pressing [kbd]Ctrl + Shift + X[/kbd]) while the editor is running. This is "
+"useful for adding custom in-editor functionality to Godot. For more complex "
+"additions, consider using [EditorPlugin]s instead.\n"
+"[b]Note:[/b] Extending scripts need to have [code]tool[/code] mode enabled.\n"
+"[b]Example script:[/b]\n"
+"[codeblock]\n"
+"tool\n"
+"extends EditorScript\n"
+"\n"
+"func _run():\n"
+" print(\"Hello from the Godot Editor!\")\n"
+"[/codeblock]\n"
+"[b]Note:[/b] The script is run in the Editor context, which means the output "
+"is visible in the console window started with the Editor (stdout) instead of "
+"the usual Godot [b]Output[/b] dock."
+msgstr ""
+
+#: doc/classes/EditorScript.xml:26
+msgid "This method is executed by the Editor when [b]File > Run[/b] is used."
+msgstr ""
+
+#: doc/classes/EditorScript.xml:35
+msgid ""
+"Adds [code]node[/code] as a child of the root node in the editor context.\n"
+"[b]Warning:[/b] The implementation of this method is currently disabled."
+msgstr ""
+
+#: doc/classes/EditorScript.xml:43
+msgid "Returns the [EditorInterface] singleton instance."
+msgstr ""
+
+#: doc/classes/EditorScript.xml:50
+msgid "Returns the Editor's currently active scene."
+msgstr ""
+
+#: doc/classes/EditorSelection.xml:4
+msgid "Manages the SceneTree selection in the editor."
+msgstr ""
+
+#: doc/classes/EditorSelection.xml:7
+msgid ""
+"This object manages the SceneTree selection in the editor.\n"
+"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
+"the singleton using [method EditorInterface.get_selection]."
+msgstr ""
+
+#: doc/classes/EditorSelection.xml:19
+msgid "Adds a node to the selection."
+msgstr ""
+
+#: doc/classes/EditorSelection.xml:26
+msgid "Clear the selection."
+msgstr ""
+
+#: doc/classes/EditorSelection.xml:33
+msgid "Gets the list of selected nodes."
+msgstr ""
+
+#: doc/classes/EditorSelection.xml:40
+msgid ""
+"Gets the list of selected nodes, optimized for transform operations (i.e. "
+"moving them, rotating, etc). This list avoids situations where a node is "
+"selected and also child/grandchild."
+msgstr ""
+
+#: doc/classes/EditorSelection.xml:49
+msgid "Removes a node from the selection."
+msgstr ""
+
+#: doc/classes/EditorSelection.xml:56
+msgid "Emitted when the selection changes."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:4
+msgid "Object that holds the project-independent editor settings."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:7
+msgid ""
+"Object that holds the project-independent editor settings. These settings "
+"are generally visible in the [b]Editor > Editor Settings[/b] menu.\n"
+"Property names use slash delimiters to distinguish sections. Setting values "
+"can be of any [Variant] type. It's recommended to use [code]snake_case[/"
+"code] for editor settings to be consistent with the Godot editor itself.\n"
+"Accessing the settings can be done using the following methods, such as:\n"
+"[codeblock]\n"
+"# `settings.set(\"some/property\", value)` also works as this class "
+"overrides `_set()` internally.\n"
+"settings.set_setting(\"some/property\",value)\n"
+"\n"
+"# `settings.get(\"some/property\", value)` also works as this class "
+"overrides `_get()` internally.\n"
+"settings.get_setting(\"some/property\")\n"
+"\n"
+"var list_of_settings = settings.get_property_list()\n"
+"[/codeblock]\n"
+"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
+"the singleton using [method EditorInterface.get_editor_settings]."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:30
+msgid ""
+"Adds a custom property info to a property. The dictionary must contain:\n"
+"- [code]name[/code]: [String] (the name of the property)\n"
+"- [code]type[/code]: [int] (see [enum Variant.Type])\n"
+"- optionally [code]hint[/code]: [int] (see [enum PropertyHint]) and "
+"[code]hint_string[/code]: [String]\n"
+"[b]Example:[/b]\n"
+"[codeblock]\n"
+"editor_settings.set(\"category/property_name\", 0)\n"
+"\n"
+"var property_info = {\n"
+" \"name\": \"category/property_name\",\n"
+" \"type\": TYPE_INT,\n"
+" \"hint\": PROPERTY_HINT_ENUM,\n"
+" \"hint_string\": \"one,two,three\"\n"
+"}\n"
+"\n"
+"editor_settings.add_property_info(property_info)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:55
+msgid "Erases the setting whose name is specified by [code]property[/code]."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:62
+msgid "Returns the list of favorite files and directories for this project."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:75
+msgid ""
+"Returns project-specific metadata for the [code]section[/code] and "
+"[code]key[/code] specified. If the metadata doesn't exist, [code]default[/"
+"code] will be returned instead. See also [method set_project_metadata]."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:82
+msgid ""
+"Returns the project-specific settings path. Projects all have a unique "
+"subdirectory inside the settings path where project-specific settings are "
+"saved."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:89
+msgid ""
+"Returns the list of recently visited folders in the file dialog for this "
+"project."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:98
+msgid ""
+"Returns the value of the setting specified by [code]name[/code]. This is "
+"equivalent to using [method Object.get] on the EditorSettings instance."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:105
+msgid ""
+"Gets the global settings path for the engine. Inside this path, you can find "
+"some standard paths such as:\n"
+"[code]settings/tmp[/code] - Used for temporary storage of files\n"
+"[code]settings/templates[/code] - Where export templates are located"
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:116
+msgid ""
+"Returns [code]true[/code] if the setting specified by [code]name[/code] "
+"exists, [code]false[/code] otherwise."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:125
+msgid ""
+"Returns [code]true[/code] if the setting specified by [code]name[/code] can "
+"have its value reverted to the default value, [code]false[/code] otherwise. "
+"When this method returns [code]true[/code], a Revert button will display "
+"next to the setting in the Editor Settings."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:134
+msgid ""
+"Returns the default value of the setting specified by [code]name[/code]. "
+"This is the value that would be applied when clicking the Revert button in "
+"the Editor Settings."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:143
+msgid "Sets the list of favorite files and directories for this project."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:156
+msgid ""
+"Sets the initial value of the setting specified by [code]name[/code] to "
+"[code]value[/code]. This is used to provide a value for the Revert button in "
+"the Editor Settings. If [code]update_current[/code] is true, the current "
+"value of the setting will be set to [code]value[/code] as well."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:169
+msgid ""
+"Sets project-specific metadata with the [code]section[/code], [code]key[/"
+"code] and [code]data[/code] specified. This metadata is stored outside the "
+"project folder and therefore won't be checked into version control. See also "
+"[method get_project_metadata]."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:178
+msgid ""
+"Sets the list of recently visited folders in the file dialog for this "
+"project."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:189
+msgid ""
+"Sets the [code]value[/code] of the setting specified by [code]name[/code]. "
+"This is equivalent to using [method Object.set] on the EditorSettings "
+"instance."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:196
+msgid "Emitted after any editor setting has changed."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:202
+msgid ""
+"Emitted after any editor setting has changed. It's used by various editor "
+"plugins to update their visuals on theme changes or logic on configuration "
+"changes."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:4
+msgid ""
+"Plugin for adding custom parsers to extract strings that are to be "
+"translated from custom files (.csv, .json etc.)."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:7
+msgid ""
+"Plugins are registered via [method EditorPlugin."
+"add_translation_parser_plugin] method. To define the parsing and string "
+"extraction logic, override the [method parse_file] method in script.\n"
+"The extracted strings will be written into a POT file selected by user under "
+"\"POT Generation\" in \"Localization\" tab in \"Project Settings\" menu.\n"
+"Below shows an example of a custom parser that extracts strings in a CSV "
+"file to write into a POT.\n"
+"[codeblock]\n"
+"tool\n"
+"extends EditorTranslationParserPlugin\n"
+"\n"
+"\n"
+"func parse_file(path, extracted_strings):\n"
+" var file = File.new()\n"
+" file.open(path, File.READ)\n"
+" var text = file.get_as_text()\n"
+" var split_strs = text.split(\",\", false, 0)\n"
+" for s in split_strs:\n"
+" extracted_strings.append(s)\n"
+" #print(\"Extracted string: \" + s)\n"
+"\n"
+"\n"
+"func get_recognized_extensions():\n"
+" return [\"csv\"]\n"
+"[/codeblock]\n"
+"[b]Note:[/b] If you override parsing logic for standard script types "
+"(GDScript, C#, etc.), it would be better to load the [code]path[/code] "
+"argument using [method ResourceLoader.load]. This is because built-in "
+"scripts are loaded as [Resource] type, not [File] type.\n"
+"For example:\n"
+"[codeblock]\n"
+"func parse_file(path, extracted_strings):\n"
+" var res = ResourceLoader.load(path, \"Script\")\n"
+" var text = res.get_source_code()\n"
+" # Parsing logic.\n"
+"\n"
+"\n"
+"func get_recognized_extensions():\n"
+" return [\"gd\"]\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:48
+msgid ""
+"Gets the list of file extensions to associate with this parser, e.g. [code]"
+"[\"csv\"][/code]."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:59
+msgid ""
+"Override this method to define a custom parsing logic to extract the "
+"translatable strings."
+msgstr ""
+
+#: doc/classes/EditorVCSInterface.xml:4
+msgid ""
+"Version Control System (VCS) interface which reads and writes to the local "
+"VCS in use."
+msgstr ""
+
+#: doc/classes/EditorVCSInterface.xml:7
+msgid ""
+"Used by the editor to display VCS extracted information in the editor. The "
+"implementation of this API is included in VCS addons, which are essentially "
+"GDNative plugins that need to be put into the project folder. These VCS "
+"addons are scripts which are attached (on demand) to the object instance of "
+"[code]EditorVCSInterface[/code]. All the functions listed below, instead of "
+"performing the task themselves, they call the internally defined functions "
+"in the VCS addons to provide a plug-n-play experience."
+msgstr ""
+
+#: doc/classes/EditorVCSInterface.xml:18
+msgid ""
+"Creates a version commit if the addon is initialized, else returns without "
+"doing anything. Uses the files which have been staged previously, with the "
+"commit message set to a value as provided as in the argument."
+msgstr ""
+
+#: doc/classes/EditorVCSInterface.xml:27
+msgid ""
+"Returns an [Array] of [Dictionary] objects containing the diff output from "
+"the VCS in use, if a VCS addon is initialized, else returns an empty [Array] "
+"object. The diff contents also consist of some contextual lines which "
+"provide context to the observed line change in the file.\n"
+"Each [Dictionary] object has the line diff contents under the keys:\n"
+"- [code]\"content\"[/code] to store a [String] containing the line contents\n"
+"- [code]\"status\"[/code] to store a [String] which contains [code]\"+\"[/"
+"code] in case the content is a line addition but it stores a [code]\"-\"[/"
+"code] in case of deletion and an empty string in the case the line content "
+"is neither an addition nor a deletion.\n"
+"- [code]\"new_line_number\"[/code] to store an integer containing the new "
+"line number of the line content.\n"
+"- [code]\"line_count\"[/code] to store an integer containing the number of "
+"lines in the line content.\n"
+"- [code]\"old_line_number\"[/code] to store an integer containing the old "
+"line number of the line content.\n"
+"- [code]\"offset\"[/code] to store the offset of the line change since the "
+"first contextual line content."
+msgstr ""
+
+#: doc/classes/EditorVCSInterface.xml:41
+msgid ""
+"Returns a [Dictionary] containing the path of the detected file change "
+"mapped to an integer signifying what kind of a change the corresponding file "
+"has experienced.\n"
+"The following integer values are being used to signify that the detected "
+"file is:\n"
+"- [code]0[/code]: New to the VCS working directory\n"
+"- [code]1[/code]: Modified\n"
+"- [code]2[/code]: Renamed\n"
+"- [code]3[/code]: Deleted\n"
+"- [code]4[/code]: Typechanged"
+msgstr ""
+
+#: doc/classes/EditorVCSInterface.xml:54
+msgid "Returns the project name of the VCS working directory."
+msgstr ""
+
+#: doc/classes/EditorVCSInterface.xml:61
+msgid ""
+"Returns the name of the VCS if the VCS has been initialized, else return an "
+"empty string."
+msgstr ""
+
+#: doc/classes/EditorVCSInterface.xml:70
+msgid ""
+"Initializes the VCS addon if not already. Uses the argument value as the "
+"path to the working directory of the project. Creates the initial commit if "
+"required. Returns [code]true[/code] if no failure occurs, else returns "
+"[code]false[/code]."
+msgstr ""
+
+#: doc/classes/EditorVCSInterface.xml:77
+msgid ""
+"Returns [code]true[/code] if the addon is ready to respond to function "
+"calls, else returns [code]false[/code]."
+msgstr ""
+
+#: doc/classes/EditorVCSInterface.xml:84
+msgid ""
+"Returns [code]true[/code] if the VCS addon has been initialized, else "
+"returns [code]false[/code]."
+msgstr ""
+
+#: doc/classes/EditorVCSInterface.xml:91
+msgid ""
+"Shuts down the VCS addon to allow cleanup code to run on call. Returns "
+"[code]true[/code] is no failure occurs, else returns [code]false[/code]."
+msgstr ""
+
+#: doc/classes/EditorVCSInterface.xml:100
+msgid ""
+"Stages the file which should be committed when [method EditorVCSInterface."
+"commit] is called. Argument should contain the absolute path."
+msgstr ""
+
+#: doc/classes/EditorVCSInterface.xml:109
+msgid ""
+"Unstages the file which was staged previously to be committed, so that it is "
+"no longer committed when [method EditorVCSInterface.commit] is called. "
+"Argument should contain the absolute path."
+msgstr ""
+
+#: doc/classes/EncodedObjectAsID.xml:4
+msgid "Holds a reference to an [Object]'s instance ID."
+msgstr ""
+
+#: doc/classes/EncodedObjectAsID.xml:7
+msgid ""
+"Utility class which holds a reference to the internal identifier of an "
+"[Object] instance, as given by [method Object.get_instance_id]. This ID can "
+"then be used to retrieve the object instance with [method @GDScript."
+"instance_from_id].\n"
+"This class is used internally by the editor inspector and script debugger, "
+"but can also be used in plugins to pass and display objects as their IDs."
+msgstr ""
+
+#: doc/classes/EncodedObjectAsID.xml:16
+msgid ""
+"The [Object] identifier stored in this [EncodedObjectAsID] instance. The "
+"object instance can be retrieved with [method @GDScript.instance_from_id]."
+msgstr ""
+
+#: doc/classes/Engine.xml:4
+msgid "Access to engine properties."
+msgstr ""
+
+#: doc/classes/Engine.xml:7
+msgid ""
+"The [Engine] singleton allows you to query and modify the project's run-time "
+"parameters, such as frames per second, time scale, and others."
+msgstr ""
+
+#: doc/classes/Engine.xml:16
+msgid ""
+"Returns engine author information in a Dictionary.\n"
+"[code]lead_developers[/code] - Array of Strings, lead developer names\n"
+"[code]founders[/code] - Array of Strings, founder names\n"
+"[code]project_managers[/code] - Array of Strings, project manager names\n"
+"[code]developers[/code] - Array of Strings, developer names"
+msgstr ""
+
+#: doc/classes/Engine.xml:27
+msgid ""
+"Returns an Array of copyright information Dictionaries.\n"
+"[code]name[/code] - String, component name\n"
+"[code]parts[/code] - Array of Dictionaries {[code]files[/code], "
+"[code]copyright[/code], [code]license[/code]} describing subsections of the "
+"component"
+msgstr ""
+
+#: doc/classes/Engine.xml:36
+msgid ""
+"Returns a Dictionary of Arrays of donor names.\n"
+"{[code]platinum_sponsors[/code], [code]gold_sponsors[/code], "
+"[code]mini_sponsors[/code], [code]gold_donors[/code], [code]silver_donors[/"
+"code], [code]bronze_donors[/code]}"
+msgstr ""
+
+#: doc/classes/Engine.xml:44
+msgid ""
+"Returns the total number of frames drawn. If the render loop is disabled "
+"with [code]--disable-render-loop[/code] via command line, this returns "
+"[code]0[/code]. See also [method get_idle_frames]."
+msgstr ""
+
+#: doc/classes/Engine.xml:51
+msgid "Returns the frames per second of the running game."
+msgstr ""
+
+#: doc/classes/Engine.xml:58
+msgid ""
+"Returns the total number of frames passed since engine initialization which "
+"is advanced on each [b]idle frame[/b], regardless of whether the render loop "
+"is enabled. See also [method get_frames_drawn]."
+msgstr ""
+
+#: doc/classes/Engine.xml:65
+msgid ""
+"Returns Dictionary of licenses used by Godot and included third party "
+"components."
+msgstr ""
+
+#: doc/classes/Engine.xml:72
+msgid "Returns Godot license text."
+msgstr ""
+
+#: doc/classes/Engine.xml:79
+msgid "Returns the main loop object (see [MainLoop] and [SceneTree])."
+msgstr ""
+
+#: doc/classes/Engine.xml:86
+msgid ""
+"Returns the total number of frames passed since engine initialization which "
+"is advanced on each [b]physics frame[/b]."
+msgstr ""
+
+#: doc/classes/Engine.xml:93
+msgid ""
+"Returns the fraction through the current physics tick we are at the time of "
+"rendering the frame. This can be used to implement fixed timestep "
+"interpolation."
+msgstr ""
+
+#: doc/classes/Engine.xml:102
+msgid ""
+"Returns a global singleton with given [code]name[/code]. Often used for "
+"plugins, e.g. GodotPayments."
+msgstr ""
+
+#: doc/classes/Engine.xml:109
+msgid ""
+"Returns the current engine version information in a Dictionary.\n"
+"[code]major[/code] - Holds the major version number as an int\n"
+"[code]minor[/code] - Holds the minor version number as an int\n"
+"[code]patch[/code] - Holds the patch version number as an int\n"
+"[code]hex[/code] - Holds the full version number encoded as a "
+"hexadecimal int with one byte (2 places) per number (see example below)\n"
+"[code]status[/code] - Holds the status (e.g. \"beta\", \"rc1\", "
+"\"rc2\", ... \"stable\") as a String\n"
+"[code]build[/code] - Holds the build name (e.g. \"custom_build\") as a "
+"String\n"
+"[code]hash[/code] - Holds the full Git commit hash as a String\n"
+"[code]year[/code] - Holds the year the version was released in as an "
+"int\n"
+"[code]string[/code] - [code]major[/code] + [code]minor[/code] + "
+"[code]patch[/code] + [code]status[/code] + [code]build[/code] in a single "
+"String\n"
+"The [code]hex[/code] value is encoded as follows, from left to right: one "
+"byte for the major, one byte for the minor, one byte for the patch version. "
+"For example, \"3.1.12\" would be [code]0x03010C[/code]. [b]Note:[/b] It's "
+"still an int internally, and printing it will give you its decimal "
+"representation, which is not particularly meaningful. Use hexadecimal "
+"literals for easy version comparisons from code:\n"
+"[codeblock]\n"
+"if Engine.get_version_info().hex >= 0x030200:\n"
+" # Do things specific to version 3.2 or later\n"
+"else:\n"
+" # Do things specific to versions before 3.2\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Engine.xml:134
+msgid ""
+"Returns [code]true[/code] if a singleton with given [code]name[/code] exists "
+"in global scope."
+msgstr ""
+
+#: doc/classes/Engine.xml:141
+msgid ""
+"Returns [code]true[/code] if the game is inside the fixed process and "
+"physics phase of the game loop."
+msgstr ""
+
+#: doc/classes/Engine.xml:147
+msgid ""
+"If [code]true[/code], it is running inside the editor. Useful for tool "
+"scripts."
+msgstr ""
+
+#: doc/classes/Engine.xml:150
+msgid ""
+"The number of fixed iterations per second. This controls how often physics "
+"simulation and [method Node._physics_process] methods are run. This value "
+"should generally always be set to [code]60[/code] or above, as Godot doesn't "
+"interpolate the physics step. As a result, values lower than [code]60[/code] "
+"will look stuttery. This value can be increased to make input more reactive "
+"or work around tunneling issues, but keep in mind doing so will increase CPU "
+"usage."
+msgstr ""
+
+#: doc/classes/Engine.xml:153
+msgid ""
+"Controls how much physics ticks are synchronized with real time. For 0 or "
+"less, the ticks are synchronized. Such values are recommended for network "
+"games, where clock synchronization matters. Higher values cause higher "
+"deviation of in-game clock and real clock, but allows to smooth out "
+"framerate jitters. The default value of 0.5 should be fine for most; values "
+"above 2 could cause the game to react to dropped frames with a noticeable "
+"delay and are not recommended."
+msgstr ""
+
+#: doc/classes/Engine.xml:156
+msgid ""
+"The desired frames per second. If the hardware cannot keep up, this setting "
+"may not be respected. A value of 0 means no limit."
+msgstr ""
+
+#: doc/classes/Engine.xml:159
+msgid ""
+"Controls how fast or slow the in-game clock ticks versus the real life one. "
+"It defaults to 1.0. A value of 2.0 means the game moves twice as fast as "
+"real life, whilst a value of 0.5 means the game moves at half the regular "
+"speed."
+msgstr ""
+
+#: doc/classes/Environment.xml:4
+msgid ""
+"Resource for environment nodes (like [WorldEnvironment]) that define "
+"multiple rendering options."
+msgstr ""
+
+#: doc/classes/Environment.xml:7
+msgid ""
+"Resource for environment nodes (like [WorldEnvironment]) that define "
+"multiple environment operations (such as background [Sky] or [Color], "
+"ambient light, fog, depth-of-field...). These parameters affect the final "
+"render of the scene. The order of these operations is:\n"
+"- Depth of Field Blur\n"
+"- Glow\n"
+"- Tonemap (Auto Exposure)\n"
+"- Adjustments"
+msgstr ""
+
+#: doc/classes/Environment.xml:14 doc/classes/WorldEnvironment.xml:12
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/3d/"
+"environment_and_post_processing.html"
+msgstr ""
+
+#: doc/classes/Environment.xml:15
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/3d/high_dynamic_range.html"
+msgstr ""
+
+#: doc/classes/Environment.xml:24
+msgid ""
+"Returns [code]true[/code] if the glow level [code]idx[/code] is specified, "
+"[code]false[/code] otherwise."
+msgstr ""
+
+#: doc/classes/Environment.xml:35
+msgid ""
+"Enables or disables the glow level at index [code]idx[/code]. 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."
+msgstr ""
+
+#: doc/classes/Environment.xml:41
+msgid ""
+"The global brightness value of the rendered scene. Effective only if "
+"[code]adjustment_enabled[/code] is [code]true[/code]."
+msgstr ""
+
+#: doc/classes/Environment.xml:44
+msgid ""
+"Applies the provided [Texture2D] resource to affect the global color aspect "
+"of the rendered scene. Effective only if [code]adjustment_enabled[/code] is "
+"[code]true[/code]."
+msgstr ""
+
+#: doc/classes/Environment.xml:47
+msgid ""
+"The global contrast value of the rendered scene (default value is 1). "
+"Effective only if [code]adjustment_enabled[/code] is [code]true[/code]."
+msgstr ""
+
+#: doc/classes/Environment.xml:50
+msgid ""
+"If [code]true[/code], enables the [code]adjustment_*[/code] properties "
+"provided by this resource. If [code]false[/code], modifications to the "
+"[code]adjustment_*[/code] properties will have no effect on the rendered "
+"scene."
+msgstr ""
+
+#: doc/classes/Environment.xml:53
+msgid ""
+"The global color saturation value of the rendered scene (default value is "
+"1). Effective only if [code]adjustment_enabled[/code] is [code]true[/code]."
+msgstr ""
+
+#: doc/classes/Environment.xml:56
+msgid "The ambient light's [Color]."
+msgstr ""
+
+#: doc/classes/Environment.xml:59
+msgid ""
+"The ambient light's energy. The higher the value, the stronger the light."
+msgstr ""
+
+#: doc/classes/Environment.xml:64
+msgid ""
+"Defines the amount of light that the sky brings on the scene. A value of 0 "
+"means that the sky's light emission has no effect on the scene illumination, "
+"thus all ambient illumination is provided by the ambient light. On the "
+"contrary, a value of 1 means that all the light that affects the scene is "
+"provided by the sky, thus the ambient light parameter has no effect on the "
+"scene."
+msgstr ""
+
+#: doc/classes/Environment.xml:69
+msgid ""
+"If [code]true[/code], enables the tonemapping auto exposure mode of the "
+"scene renderer. If [code]true[/code], the renderer will automatically "
+"determine the exposure setting to adapt to the scene's illumination and the "
+"observed light."
+msgstr ""
+
+#: doc/classes/Environment.xml:72
+msgid "The maximum luminance value for the auto exposure."
+msgstr ""
+
+#: doc/classes/Environment.xml:75
+msgid "The minimum luminance value for the auto exposure."
+msgstr ""
+
+#: doc/classes/Environment.xml:78
+msgid ""
+"The scale of the auto exposure effect. Affects the intensity of auto "
+"exposure."
+msgstr ""
+
+#: doc/classes/Environment.xml:81
+msgid ""
+"The speed of the auto exposure effect. Affects the time needed for the "
+"camera to perform auto exposure."
+msgstr ""
+
+#: doc/classes/Environment.xml:84
+msgid "The ID of the camera feed to show in the background."
+msgstr ""
+
+#: doc/classes/Environment.xml:87
+msgid ""
+"The maximum layer ID to display. Only effective when using the [constant "
+"BG_CANVAS] background mode."
+msgstr ""
+
+#: doc/classes/Environment.xml:90
+msgid ""
+"The [Color] displayed for clear areas of the scene. Only effective when "
+"using the [constant BG_COLOR] background mode."
+msgstr ""
+
+#: doc/classes/Environment.xml:93
+msgid "The power of the light emitted by the background."
+msgstr ""
+
+#: doc/classes/Environment.xml:96
+msgid "The background mode. See [enum BGMode] for possible values."
+msgstr ""
+
+#: doc/classes/Environment.xml:99
+msgid "The fog's [Color]."
+msgstr ""
+
+#: doc/classes/Environment.xml:102
+msgid "The fog's depth starting distance from the camera."
+msgstr ""
+
+#: doc/classes/Environment.xml:105
+msgid ""
+"The fog depth's intensity curve. A number of presets are available in the "
+"[b]Inspector[/b] by right-clicking the curve."
+msgstr ""
+
+#: doc/classes/Environment.xml:108
+msgid ""
+"If [code]true[/code], the depth fog effect is enabled. When enabled, fog "
+"will appear in the distance (relative to the camera)."
+msgstr ""
+
+#: doc/classes/Environment.xml:111
+msgid ""
+"The fog's depth end distance from the camera. If this value is set to 0, it "
+"will be equal to the current camera's [member Camera3D.far] value."
+msgstr ""
+
+#: doc/classes/Environment.xml:114
+msgid ""
+"If [code]true[/code], fog effects are enabled. [member fog_height_enabled] "
+"and/or [member fog_depth_enabled] must be set to [code]true[/code] to "
+"actually display fog."
+msgstr ""
+
+#: doc/classes/Environment.xml:117
+msgid ""
+"The height fog's intensity. A number of presets are available in the "
+"[b]Inspector[/b] by right-clicking the curve."
+msgstr ""
+
+#: doc/classes/Environment.xml:120
+msgid ""
+"If [code]true[/code], the height fog effect is enabled. When enabled, fog "
+"will appear in a defined height range, regardless of the distance from the "
+"camera. This can be used to simulate \"deep water\" effects with a lower "
+"performance cost compared to a dedicated shader."
+msgstr ""
+
+#: doc/classes/Environment.xml:123
+msgid ""
+"The Y coordinate where the height fog will be the most intense. If this "
+"value is greater than [member fog_height_min], fog will be displayed from "
+"bottom to top. Otherwise, it will be displayed from top to bottom."
+msgstr ""
+
+#: doc/classes/Environment.xml:126
+msgid ""
+"The Y coordinate where the height fog will be the least intense. If this "
+"value is greater than [member fog_height_max], fog will be displayed from "
+"top to bottom. Otherwise, it will be displayed from bottom to top."
+msgstr ""
+
+#: doc/classes/Environment.xml:129
+msgid ""
+"The intensity of the depth fog color transition when looking towards the "
+"sun. The sun's direction is determined automatically using the "
+"DirectionalLight3D node in the scene."
+msgstr ""
+
+#: doc/classes/Environment.xml:132
+msgid "The depth fog's [Color] when looking towards the sun."
+msgstr ""
+
+#: doc/classes/Environment.xml:135
+msgid ""
+"The intensity of the fog light transmittance effect. Amount of light that "
+"the fog transmits."
+msgstr ""
+
+#: doc/classes/Environment.xml:138
+msgid ""
+"Enables fog's light transmission effect. If [code]true[/code], light will be "
+"more visible in the fog to simulate light scattering as in real life."
+msgstr ""
+
+#: doc/classes/Environment.xml:141
+msgid "The glow blending mode."
+msgstr ""
+
+#: doc/classes/Environment.xml:144
+msgid ""
+"The bloom's intensity. If set to a value higher than [code]0[/code], this "
+"will make glow visible in areas darker than the [member glow_hdr_threshold]."
+msgstr ""
+
+#: doc/classes/Environment.xml:147
+msgid "If [code]true[/code], the glow effect is enabled."
+msgstr ""
+
+#: doc/classes/Environment.xml:150
+msgid ""
+"The higher threshold of the HDR glow. Areas brighter than this threshold "
+"will be clamped for the purposes of the glow effect."
+msgstr ""
+
+#: doc/classes/Environment.xml:153
+msgid "The bleed scale of the HDR glow."
+msgstr ""
+
+#: doc/classes/Environment.xml:156
+msgid ""
+"The lower threshold of the HDR glow. When using the GLES2 renderer (which "
+"doesn't support HDR), this needs to be below [code]1.0[/code] for glow to be "
+"visible. A value of [code]0.9[/code] works well in this case."
+msgstr ""
+
+#: doc/classes/Environment.xml:159
+msgid ""
+"The glow intensity. When using the GLES2 renderer, this should be increased "
+"to 1.5 to compensate for the lack of HDR rendering."
+msgstr ""
+
+#: doc/classes/Environment.xml:162
+msgid ""
+"If [code]true[/code], the 1st level of glow is enabled. This is the most "
+"\"local\" level (least blurry)."
+msgstr ""
+
+#: doc/classes/Environment.xml:165
+msgid "If [code]true[/code], the 2th level of glow is enabled."
+msgstr ""
+
+#: doc/classes/Environment.xml:168
+msgid "If [code]true[/code], the 3th level of glow is enabled."
+msgstr ""
+
+#: doc/classes/Environment.xml:171
+msgid "If [code]true[/code], the 4th level of glow is enabled."
+msgstr ""
+
+#: doc/classes/Environment.xml:174
+msgid "If [code]true[/code], the 5th level of glow is enabled."
+msgstr ""
+
+#: doc/classes/Environment.xml:177
+msgid "If [code]true[/code], the 6th level of glow is enabled."
+msgstr ""
+
+#: doc/classes/Environment.xml:180
+msgid ""
+"If [code]true[/code], the 7th level of glow is enabled. This is the most "
+"\"global\" level (blurriest)."
+msgstr ""
+
+#: doc/classes/Environment.xml:185
+msgid ""
+"The glow strength. When using the GLES2 renderer, this should be increased "
+"to 1.3 to compensate for the lack of HDR rendering."
+msgstr ""
+
+#: doc/classes/Environment.xml:214
+msgid "The [Sky] resource used for this [Environment]."
+msgstr ""
+
+#: doc/classes/Environment.xml:221
+msgid "The depth tolerance for screen-space reflections."
+msgstr ""
+
+#: doc/classes/Environment.xml:224
+msgid ""
+"If [code]true[/code], screen-space reflections are enabled. Screen-space "
+"reflections are more accurate than reflections from [GIProbe]s or "
+"[ReflectionProbe]s, but are slower and can't reflect surfaces occluded by "
+"others."
+msgstr ""
+
+#: doc/classes/Environment.xml:227
+msgid ""
+"The fade-in distance for screen-space reflections. Affects the area from the "
+"reflected material to the screen-space reflection)."
+msgstr ""
+
+#: doc/classes/Environment.xml:230
+msgid ""
+"The fade-out distance for screen-space reflections. Affects the area from "
+"the screen-space reflection to the \"global\" reflection."
+msgstr ""
+
+#: doc/classes/Environment.xml:233
+msgid ""
+"The maximum number of steps for screen-space reflections. Higher values are "
+"slower."
+msgstr ""
+
+#: doc/classes/Environment.xml:236
+msgid ""
+"The screen-space ambient occlusion intensity on materials that have an AO "
+"texture defined. Values higher than [code]0[/code] will make the SSAO effect "
+"visible in areas darkened by AO textures."
+msgstr ""
+
+#: doc/classes/Environment.xml:239
+msgid ""
+"The screen-space ambient occlusion bias. This should be kept high enough to "
+"prevent \"smooth\" curves from being affected by ambient occlusion."
+msgstr ""
+
+#: doc/classes/Environment.xml:242
+msgid ""
+"The screen-space ambient occlusion blur quality. See [enum SSAOBlur] for "
+"possible values."
+msgstr ""
+
+#: doc/classes/Environment.xml:245
+msgid "The screen-space ambient occlusion edge sharpness."
+msgstr ""
+
+#: doc/classes/Environment.xml:248
+msgid ""
+"If [code]true[/code], the screen-space ambient occlusion effect is enabled. "
+"This darkens objects' corners and cavities to simulate ambient light not "
+"reaching the entire object as in real life. This works well for small, "
+"dynamic objects, but baked lighting or ambient occlusion textures will do a "
+"better job at displaying ambient occlusion on large static objects. This is "
+"a costly effect and should be disabled first when running into performance "
+"issues."
+msgstr ""
+
+#: doc/classes/Environment.xml:251
+msgid ""
+"The primary screen-space ambient occlusion intensity. See also [member "
+"ssao_radius]."
+msgstr ""
+
+#: doc/classes/Environment.xml:254
+msgid ""
+"The screen-space ambient occlusion intensity in direct light. In real life, "
+"ambient occlusion only applies to indirect light, which means its effects "
+"can't be seen in direct light. Values higher than [code]0[/code] will make "
+"the SSAO effect visible in direct light."
+msgstr ""
+
+#: doc/classes/Environment.xml:257
+msgid "The primary screen-space ambient occlusion radius."
+msgstr ""
+
+#: doc/classes/Environment.xml:260
+msgid "The default exposure used for tonemapping."
+msgstr ""
+
+#: doc/classes/Environment.xml:263
+msgid ""
+"The tonemapping mode to use. Tonemapping is the process that \"converts\" "
+"HDR values to be suitable for rendering on a LDR display. (Godot doesn't "
+"support rendering on HDR displays yet.)"
+msgstr ""
+
+#: doc/classes/Environment.xml:266
+msgid ""
+"The white reference value for tonemapping. Only effective if the [member "
+"tonemap_mode] isn't set to [constant TONE_MAPPER_LINEAR]."
+msgstr ""
+
+#: doc/classes/Environment.xml:271
+msgid ""
+"Clears the background using the clear color defined in [member "
+"ProjectSettings.rendering/environment/default_clear_color]."
+msgstr ""
+
+#: doc/classes/Environment.xml:274
+msgid "Clears the background using a custom clear color."
+msgstr ""
+
+#: doc/classes/Environment.xml:277
+msgid "Displays a user-defined sky in the background."
+msgstr ""
+
+#: doc/classes/Environment.xml:280
+msgid "Displays a [CanvasLayer] in the background."
+msgstr ""
+
+#: doc/classes/Environment.xml:283
+msgid ""
+"Keeps on screen every pixel drawn in the background. This is the fastest "
+"background mode, but it can only be safely used in fully-interior scenes (no "
+"visible sky or sky reflections). If enabled in a scene where the background "
+"is visible, \"ghost trail\" artifacts will be visible when moving the camera."
+msgstr ""
+
+#: doc/classes/Environment.xml:286 doc/classes/RenderingServer.xml:3457
+msgid "Displays a camera feed in the background."
+msgstr ""
+
+#: doc/classes/Environment.xml:289
+msgid "Represents the size of the [enum BGMode] enum."
+msgstr ""
+
+#: doc/classes/Environment.xml:292 doc/classes/RenderingServer.xml:3463
+msgid ""
+"Gather ambient light from whichever source is specified as the background."
+msgstr ""
+
+#: doc/classes/Environment.xml:295 doc/classes/RenderingServer.xml:3466
+msgid "Disable ambient light."
+msgstr ""
+
+#: doc/classes/Environment.xml:298 doc/classes/RenderingServer.xml:3469
+msgid "Specify a specific [Color] for ambient light."
+msgstr ""
+
+#: doc/classes/Environment.xml:301 doc/classes/RenderingServer.xml:3472
+msgid ""
+"Gather ambient light from the [Sky] regardless of what the background is."
+msgstr ""
+
+#: doc/classes/Environment.xml:304 doc/classes/RenderingServer.xml:3475
+msgid "Use the background for reflections."
+msgstr ""
+
+#: doc/classes/Environment.xml:307 doc/classes/RenderingServer.xml:3478
+msgid "Disable reflections."
+msgstr ""
+
+#: doc/classes/Environment.xml:310 doc/classes/RenderingServer.xml:3481
+msgid "Use the [Sky] for reflections regardless of what the background is."
+msgstr ""
+
+#: doc/classes/Environment.xml:313
+msgid ""
+"Linear tonemapper operator. Reads the linear data and passes it on "
+"unmodified."
+msgstr ""
+
+#: doc/classes/Environment.xml:316
+msgid ""
+"Reinhardt tonemapper operator. Performs a variation on rendered pixels' "
+"colors by this formula: [code]color = color / (1 + color)[/code]."
+msgstr ""
+
+#: doc/classes/Environment.xml:319
+msgid "Filmic tonemapper operator."
+msgstr ""
+
+#: doc/classes/Environment.xml:322
+msgid "Academy Color Encoding System tonemapper operator."
+msgstr ""
+
+#: doc/classes/Environment.xml:325 doc/classes/RenderingServer.xml:3484
+msgid ""
+"Additive glow blending mode. Mostly used for particles, glows (bloom), lens "
+"flare, bright sources."
+msgstr ""
+
+#: doc/classes/Environment.xml:328 doc/classes/RenderingServer.xml:3487
+msgid ""
+"Screen glow blending mode. Increases brightness, used frequently with bloom."
+msgstr ""
+
+#: doc/classes/Environment.xml:331 doc/classes/RenderingServer.xml:3490
+msgid ""
+"Soft light glow blending mode. Modifies contrast, exposes shadows and "
+"highlights (vivid bloom)."
+msgstr ""
+
+#: doc/classes/Environment.xml:334 doc/classes/RenderingServer.xml:3493
+msgid ""
+"Replace glow blending mode. Replaces all pixels' color by the glow value. "
+"This can be used to simulate a full-screen blur effect by tweaking the glow "
+"parameters to match the original image's brightness."
+msgstr ""
+
+#: doc/classes/Environment.xml:337 doc/classes/RenderingServer.xml:3496
+msgid ""
+"Mixes the glow with the underlying color to avoid increasing brightness as "
+"much while still maintaining a glow effect."
+msgstr ""
+
+#: doc/classes/Environment.xml:340
+msgid "No blur for the screen-space ambient occlusion effect (fastest)."
+msgstr ""
+
+#: doc/classes/Environment.xml:343
+msgid "1×1 blur for the screen-space ambient occlusion effect."
+msgstr ""
+
+#: doc/classes/Environment.xml:346
+msgid "2×2 blur for the screen-space ambient occlusion effect."
+msgstr ""
+
+#: doc/classes/Environment.xml:349
+msgid ""
+"3×3 blur for the screen-space ambient occlusion effect. Increases the radius "
+"of the blur for a smoother look, but can result in checkerboard-like "
+"artifacts."
+msgstr ""
+
+#: doc/classes/Expression.xml:4
+msgid "A class that stores an expression you can execute."
+msgstr ""
+
+#: doc/classes/Expression.xml:7
+msgid ""
+"An expression can be made of any arithmetic operation, built-in math "
+"function call, method call of a passed instance, or built-in type "
+"construction call.\n"
+"An example expression text using the built-in math functions could be "
+"[code]sqrt(pow(3,2) + pow(4,2))[/code].\n"
+"In the following example we use a [LineEdit] node to write our expression "
+"and show the result.\n"
+"[codeblock]\n"
+"onready var expression = Expression.new()\n"
+"\n"
+"func _ready():\n"
+" $LineEdit.connect(\"text_entered\", self, \"_on_text_entered\")\n"
+"\n"
+"func _on_text_entered(command):\n"
+" var error = expression.parse(command, [])\n"
+" if error != OK:\n"
+" print(expression.get_error_text())\n"
+" return\n"
+" var result = expression.execute([], null, true)\n"
+" if not expression.has_execute_failed():\n"
+" $LineEdit.text = str(result)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Expression.xml:39
+msgid ""
+"Executes the expression that was previously parsed by [method parse] and "
+"returns the result. Before you use the returned object, you should check if "
+"the method failed by calling [method has_execute_failed].\n"
+"If you defined input variables in [method parse], you can specify their "
+"values in the inputs array, in the same order."
+msgstr ""
+
+#: doc/classes/Expression.xml:47
+msgid "Returns the error text if [method parse] has failed."
+msgstr ""
+
+#: doc/classes/Expression.xml:54
+msgid "Returns [code]true[/code] if [method execute] has failed."
+msgstr ""
+
+#: doc/classes/Expression.xml:65
+msgid ""
+"Parses the expression and returns an [enum Error] code.\n"
+"You can optionally specify names of variables that may appear in the "
+"expression with [code]input_names[/code], so that you can bind them when it "
+"gets executed."
+msgstr ""
+
+#: doc/classes/File.xml:4
+msgid "Type to handle file reading and writing operations."
+msgstr ""
+
+#: doc/classes/File.xml:7
+msgid ""
+"File type. This is used to permanently store data into the user device's "
+"file system and to read from it. This can be used to store game save data or "
+"player configuration files, for example.\n"
+"Here's a sample on how to write and read from a file:\n"
+"[codeblock]\n"
+"func save(content):\n"
+" var file = File.new()\n"
+" file.open(\"user://save_game.dat\", File.WRITE)\n"
+" file.store_string(content)\n"
+" file.close()\n"
+"\n"
+"func load():\n"
+" var file = File.new()\n"
+" file.open(\"user://save_game.dat\", File.READ)\n"
+" var content = file.get_as_text()\n"
+" file.close()\n"
+" return content\n"
+"[/codeblock]\n"
+"In the example above, the file will be saved in the user data folder as "
+"specified in the [url=https://docs.godotengine.org/en/latest/tutorials/io/"
+"data_paths.html]Data paths[/url] documentation."
+msgstr ""
+
+#: doc/classes/File.xml:33
+msgid "Closes the currently opened file."
+msgstr ""
+
+#: doc/classes/File.xml:40
+msgid ""
+"Returns [code]true[/code] if the file cursor has read past the end of the "
+"file.\n"
+"[b]Note:[/b] This function will still return [code]false[/code] while at the "
+"end of the file and only activates when reading past it. This can be "
+"confusing but it conforms to how low-level file access works in all "
+"operating systems. There is always [method get_len] and [method "
+"get_position] to implement a custom logic."
+msgstr ""
+
+#: doc/classes/File.xml:50
+msgid ""
+"Returns [code]true[/code] if the file exists in the given path.\n"
+"[b]Note:[/b] Many resources types are imported (e.g. textures or sound "
+"files), and that their source asset will not be included in the exported "
+"game, as only the imported version is used (in the [code]res://.import[/"
+"code] folder). To check for the existence of such resources while taking "
+"into account the remapping to their imported location, use [method "
+"ResourceLoader.exists]. Typically, using [code]File.file_exists[/code] on an "
+"imported resource would work while you are developing in the editor (the "
+"source asset is present in [code]res://[/code], but fail when exported)."
+msgstr ""
+
+#: doc/classes/File.xml:58
+msgid ""
+"Returns the next 16 bits from the file as an integer. See [method store_16] "
+"for details on what values can be stored and retrieved this way."
+msgstr ""
+
+#: doc/classes/File.xml:65
+msgid ""
+"Returns the next 32 bits from the file as an integer. See [method store_32] "
+"for details on what values can be stored and retrieved this way."
+msgstr ""
+
+#: doc/classes/File.xml:72
+msgid ""
+"Returns the next 64 bits from the file as an integer. See [method store_64] "
+"for details on what values can be stored and retrieved this way."
+msgstr ""
+
+#: doc/classes/File.xml:79
+msgid ""
+"Returns the next 8 bits from the file as an integer. See [method store_8] "
+"for details on what values can be stored and retrieved this way."
+msgstr ""
+
+#: doc/classes/File.xml:86
+msgid ""
+"Returns the whole file as a [String].\n"
+"Text is interpreted as being UTF-8 encoded."
+msgstr ""
+
+#: doc/classes/File.xml:96
+msgid "Returns next [code]len[/code] bytes of the file as a [PackedByteArray]."
+msgstr ""
+
+#: doc/classes/File.xml:105
+msgid ""
+"Returns the next value of the file in CSV (Comma-Separated Values) format. "
+"You can pass a different delimiter [code]delim[/code] to use other than the "
+"default [code]\",\"[/code] (comma). This delimiter must be one-character "
+"long.\n"
+"Text is interpreted as being UTF-8 encoded."
+msgstr ""
+
+#: doc/classes/File.xml:113
+msgid "Returns the next 64 bits from the file as a floating-point number."
+msgstr ""
+
+#: doc/classes/File.xml:120
+msgid ""
+"Returns the last error that happened when trying to perform operations. "
+"Compare with the [code]ERR_FILE_*[/code] constants from [enum Error]."
+msgstr ""
+
+#: doc/classes/File.xml:127
+msgid "Returns the next 32 bits from the file as a floating-point number."
+msgstr ""
+
+#: doc/classes/File.xml:134
+msgid "Returns the size of the file in bytes."
+msgstr ""
+
+#: doc/classes/File.xml:141
+msgid ""
+"Returns the next line of the file as a [String].\n"
+"Text is interpreted as being UTF-8 encoded."
+msgstr ""
+
+#: doc/classes/File.xml:151
+msgid ""
+"Returns an MD5 String representing the file at the given path or an empty "
+"[String] on failure."
+msgstr ""
+
+#: doc/classes/File.xml:160
+msgid ""
+"Returns the last time the [code]file[/code] was modified in unix timestamp "
+"format or returns a [String] \"ERROR IN [code]file[/code]\". This unix "
+"timestamp can be converted to datetime by using [method OS."
+"get_datetime_from_unix_time]."
+msgstr ""
+
+#: doc/classes/File.xml:167
+msgid ""
+"Returns a [String] saved in Pascal format from the file.\n"
+"Text is interpreted as being UTF-8 encoded."
+msgstr ""
+
+#: doc/classes/File.xml:175
+msgid "Returns the path as a [String] for the current open file."
+msgstr ""
+
+#: doc/classes/File.xml:182
+msgid "Returns the absolute path as a [String] for the current open file."
+msgstr ""
+
+#: doc/classes/File.xml:189
+msgid "Returns the file cursor's position."
+msgstr ""
+
+#: doc/classes/File.xml:196
+msgid "Returns the next bits from the file as a floating-point number."
+msgstr ""
+
+#: doc/classes/File.xml:205
+msgid ""
+"Returns a SHA-256 [String] representing the file at the given path or an "
+"empty [String] on failure."
+msgstr ""
+
+#: doc/classes/File.xml:214
+msgid ""
+"Returns the next [Variant] value from the file. If [code]allow_objects[/"
+"code] is [code]true[/code], decoding objects is allowed.\n"
+"[b]Warning:[/b] 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."
+msgstr ""
+
+#: doc/classes/File.xml:222
+msgid "Returns [code]true[/code] if the file is currently opened."
+msgstr ""
+
+#: doc/classes/File.xml:233
+msgid "Opens the file for writing or reading, depending on the flags."
+msgstr ""
+
+#: doc/classes/File.xml:246
+msgid "Opens a compressed file for reading or writing."
+msgstr ""
+
+#: doc/classes/File.xml:259
+msgid ""
+"Opens an encrypted file in write or read mode. You need to pass a binary key "
+"to encrypt/decrypt it.\n"
+"[b]Note:[/b] The provided key must be 32 bytes long."
+msgstr ""
+
+#: doc/classes/File.xml:273
+msgid ""
+"Opens an encrypted file in write or read mode. You need to pass a password "
+"to encrypt/decrypt it."
+msgstr ""
+
+#: doc/classes/File.xml:282
+msgid ""
+"Changes the file reading/writing cursor to the specified position (in bytes "
+"from the beginning of the file)."
+msgstr ""
+
+#: doc/classes/File.xml:291
+msgid ""
+"Changes the file reading/writing cursor to the specified position (in bytes "
+"from the end of the file).\n"
+"[b]Note:[/b] This is an offset, so you should use negative numbers or the "
+"cursor will be at the end of the file."
+msgstr ""
+
+#: doc/classes/File.xml:301
+msgid ""
+"Stores an integer as 16 bits in the file.\n"
+"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, "
+"2^16 - 1][/code]. Any other value will overflow and wrap around.\n"
+"To store a signed integer, use [method store_64] or store a signed integer "
+"from the interval [code][-2^15, 2^15 - 1][/code] (i.e. keeping one bit for "
+"the signedness) and compute its sign manually when reading. For example:\n"
+"[codeblock]\n"
+"const MAX_15B = 1 << 15\n"
+"const MAX_16B = 1 << 16\n"
+"\n"
+"func unsigned16_to_signed(unsigned):\n"
+" return (unsigned + MAX_15B) % MAX_16B - MAX_15B\n"
+"\n"
+"func _ready():\n"
+" var f = File.new()\n"
+" f.open(\"user://file.dat\", File.WRITE_READ)\n"
+" f.store_16(-42) # This wraps around and stores 65494 (2^16 - 42).\n"
+" f.store_16(121) # In bounds, will store 121.\n"
+" f.seek(0) # Go back to start to read the stored value.\n"
+" var read1 = f.get_16() # 65494\n"
+" var read2 = f.get_16() # 121\n"
+" var converted1 = unsigned16_to_signed(read1) # -42\n"
+" var converted2 = unsigned16_to_signed(read2) # 121\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/File.xml:330
+msgid ""
+"Stores an integer as 32 bits in the file.\n"
+"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, "
+"2^32 - 1][/code]. Any other value will overflow and wrap around.\n"
+"To store a signed integer, use [method store_64], or convert it manually "
+"(see [method store_16] for an example)."
+msgstr ""
+
+#: doc/classes/File.xml:341
+msgid ""
+"Stores an integer as 64 bits in the file.\n"
+"[b]Note:[/b] The [code]value[/code] must lie in the interval [code][-2^63, "
+"2^63 - 1][/code] (i.e. be a valid [int] value)."
+msgstr ""
+
+#: doc/classes/File.xml:351
+msgid ""
+"Stores an integer as 8 bits in the file.\n"
+"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, 255]"
+"[/code]. Any other value will overflow and wrap around.\n"
+"To store a signed integer, use [method store_64], or convert it manually "
+"(see [method store_16] for an example)."
+msgstr ""
+
+#: doc/classes/File.xml:362
+msgid "Stores the given array of bytes in the file."
+msgstr ""
+
+#: doc/classes/File.xml:373
+msgid ""
+"Store the given [PackedStringArray] in the file as a line formatted in the "
+"CSV (Comma-Separated Values) format. You can pass a different delimiter "
+"[code]delim[/code] to use other than the default [code]\",\"[/code] (comma). "
+"This delimiter must be one-character long.\n"
+"Text will be encoded as UTF-8."
+msgstr ""
+
+#: doc/classes/File.xml:383
+msgid "Stores a floating-point number as 64 bits in the file."
+msgstr ""
+
+#: doc/classes/File.xml:392
+msgid "Stores a floating-point number as 32 bits in the file."
+msgstr ""
+
+#: doc/classes/File.xml:401
+msgid ""
+"Stores the given [String] as a line in the file.\n"
+"Text will be encoded as UTF-8."
+msgstr ""
+
+#: doc/classes/File.xml:411
+msgid ""
+"Stores the given [String] as a line in the file in Pascal format (i.e. also "
+"store the length of the string).\n"
+"Text will be encoded as UTF-8."
+msgstr ""
+
+#: doc/classes/File.xml:421
+msgid "Stores a floating-point number in the file."
+msgstr ""
+
+#: doc/classes/File.xml:430
+msgid ""
+"Stores the given [String] in the file.\n"
+"Text will be encoded as UTF-8."
+msgstr ""
+
+#: doc/classes/File.xml:442
+msgid ""
+"Stores any Variant value in the file. If [code]full_objects[/code] is "
+"[code]true[/code], encoding objects is allowed (and can potentially include "
+"code)."
+msgstr ""
+
+#: doc/classes/File.xml:448
+msgid ""
+"If [code]true[/code], the file's endianness is swapped. Use this if you're "
+"dealing with files written on big-endian machines.\n"
+"[b]Note:[/b] This is about the file format, not CPU type. This is always "
+"reset to [code]false[/code] whenever you open the file."
+msgstr ""
+
+#: doc/classes/File.xml:454
+msgid "Opens the file for read operations."
+msgstr ""
+
+#: doc/classes/File.xml:457
+msgid ""
+"Opens the file for write operations. Create it if the file does not exist "
+"and truncate if it exists."
+msgstr ""
+
+#: doc/classes/File.xml:460
+msgid ""
+"Opens the file for read and write operations. Does not truncate the file."
+msgstr ""
+
+#: doc/classes/File.xml:463
+msgid ""
+"Opens the file for read and write operations. Create it if the file does not "
+"exist and truncate if it exists."
+msgstr ""
+
+#: doc/classes/File.xml:466
+msgid "Uses the [url=http://fastlz.org/]FastLZ[/url] compression method."
+msgstr ""
+
+#: doc/classes/File.xml:469
+msgid ""
+"Uses the [url=https://en.wikipedia.org/wiki/DEFLATE]DEFLATE[/url] "
+"compression method."
+msgstr ""
+
+#: doc/classes/File.xml:472
+msgid ""
+"Uses the [url=https://facebook.github.io/zstd/]Zstandard[/url] compression "
+"method."
+msgstr ""
+
+#: doc/classes/File.xml:475
+msgid "Uses the [url=https://www.gzip.org/]gzip[/url] compression method."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:4
+msgid "Dialog for selecting files or directories in the filesystem."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:7
+msgid ""
+"FileDialog is a preset dialog used to choose files and directories in the "
+"filesystem. It supports filter masks. The FileDialog automatically sets its "
+"window title according to the [member file_mode]. If you want to use a "
+"custom title, disable this by setting [member mode_overrides_title] to "
+"[code]false[/code]."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:18
+msgid ""
+"Adds [code]filter[/code] as a custom filter; [code]filter[/code] should be "
+"of the form [code]\"filename.extension ; Description\"[/code]. For example, "
+"[code]\"*.png ; PNG Images\"[/code]."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:25
+msgid "Clear all the added filters in the dialog."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:32
+msgid "Clear currently selected items in the dialog."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:39
+msgid "Returns the LineEdit for the selected file."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:46
+msgid ""
+"Returns the vertical box container of the dialog, custom controls can be "
+"added to it."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:53
+msgid "Invalidate and update the current dialog content list."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:59
+msgid "The file system access scope. See enum [code]Access[/code] constants."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:62
+msgid "The current working directory of the file dialog."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:65
+msgid "The currently selected file of the file dialog."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:68
+msgid "The currently selected file path of the file dialog."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:72
+msgid ""
+"The dialog's open or save mode, which affects the selection behavior. See "
+"[enum FileMode]."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:75
+msgid ""
+"The available file type filters. For example, this shows only [code].png[/"
+"code] and [code].gd[/code] files: [code]set_filters(PackedStringArray([\"*."
+"png ; PNG Images\",\"*.gd ; GDScript Files\"]))[/code]."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:78
+msgid ""
+"If [code]true[/code], changing the [code]Mode[/code] property will set the "
+"window title accordingly (e.g. setting mode to [constant "
+"FILE_MODE_OPEN_FILE] will change the window title to \"Open a File\")."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:81
+msgid "If [code]true[/code], the dialog will show hidden files."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:90
+msgid "Emitted when the user selects a directory."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:97
+msgid ""
+"Emitted when the user selects a file by double-clicking it or pressing the "
+"[b]OK[/b] button."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:104
+msgid "Emitted when the user selects multiple files."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:110
+msgid "The dialog allows selecting one, and only one file."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:113
+msgid "The dialog allows selecting multiple files."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:116
+msgid ""
+"The dialog only allows selecting a directory, disallowing the selection of "
+"any file."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:119
+msgid "The dialog allows selecting one file or directory."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:122
+msgid "The dialog will warn when a file exists."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:125
+msgid ""
+"The dialog only allows accessing files under the [Resource] path "
+"([code]res://[/code])."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:128
+msgid ""
+"The dialog only allows accessing files under user data path ([code]user://[/"
+"code])."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:131
+msgid "The dialog allows accessing files on the whole file system."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:136
+msgid "Custom icon for files."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:139
+msgid "The color modulation applied to the file icon."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:142
+msgid ""
+"The color tint for disabled files (when the [FileDialog] is used in open "
+"folder mode)."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:145
+msgid "Custom icon for folders."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:148
+msgid "The color modulation applied to the folder icon."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:151
+msgid "Custom icon for the parent folder arrow."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:154
+msgid "Custom icon for the reload button."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:157
+msgid "Custom icon for the toggle hidden button."
+msgstr ""
+
+#: doc/classes/float.xml:4 doc/classes/float.xml:7
+msgid "Float built-in type."
+msgstr ""
+
+#: doc/classes/float.xml:18
+msgid ""
+"Cast a [bool] value to a floating-point value, [code]float(true)[/code] will "
+"be equal to 1.0 and [code]float(false)[/code] will be equal to 0.0."
+msgstr ""
+
+#: doc/classes/float.xml:27
+msgid ""
+"Cast an [int] value to a floating-point value, [code]float(1)[/code] will be "
+"equal to 1.0."
+msgstr ""
+
+#: doc/classes/float.xml:36
+msgid ""
+"Cast a [String] value to a floating-point value. This method accepts float "
+"value strings like [code]\"1.23\"[/code] and exponential notation strings "
+"for its parameter so calling [code]float(\"1e3\")[/code] will return 1000.0 "
+"and calling [code]float(\"1e-3\")[/code] will return 0.001. Calling this "
+"method with an invalid float string will return 0. This method stops parsing "
+"at the first invalid character and will return the parsed result so far, so "
+"calling [code]float(\"1a3\")[/code] will return 1 while calling "
+"[code]float(\"1e3a2\")[/code] will return 1000.0."
+msgstr ""
+
+#: doc/classes/Font.xml:4
+msgid "Internationalized font and text drawing support."
+msgstr ""
+
+#: doc/classes/Font.xml:7
+msgid ""
+"Font contains a Unicode-compatible character set, as well as the ability to "
+"draw it with variable width, ascent, descent and kerning. For creating fonts "
+"from TTF files (or other font formats), see the editor support for fonts."
+msgstr ""
+
+#: doc/classes/Font.xml:28
+msgid ""
+"Draw [code]string[/code] into a canvas item using the font at a given "
+"position, with [code]modulate[/code] color, and optionally clipping the "
+"width. [code]position[/code] specifies the baseline, not the top. To draw "
+"from the top, [i]ascent[/i] must be added to the Y axis.\n"
+"See also [method CanvasItem.draw_string]."
+msgstr ""
+
+#: doc/classes/Font.xml:48
+msgid ""
+"Draw character [code]char[/code] into a canvas item using the font at a "
+"given position, with [code]modulate[/code] color, and optionally kerning if "
+"[code]next[/code] is passed. clipping the width. [code]position[/code] "
+"specifies the baseline, not the top. To draw from the top, [i]ascent[/i] "
+"must be added to the Y axis. The width used by the character is returned, "
+"making this function useful for drawing strings character by character."
+msgstr ""
+
+#: doc/classes/Font.xml:55
+msgid "Returns the font ascent (number of pixels above the baseline)."
+msgstr ""
+
+#: doc/classes/Font.xml:66
+msgid ""
+"Returns the size of a character, optionally taking kerning into account if "
+"the next character is provided."
+msgstr ""
+
+#: doc/classes/Font.xml:73
+msgid "Returns the font descent (number of pixels below the baseline)."
+msgstr ""
+
+#: doc/classes/Font.xml:80
+msgid "Returns the total font height (ascent plus descent) in pixels."
+msgstr ""
+
+#: doc/classes/Font.xml:89
+msgid "Returns the size of a string, taking kerning and advance into account."
+msgstr ""
+
+#: doc/classes/Font.xml:100
+msgid ""
+"Returns the size that the string would have with word wrapping enabled with "
+"a fixed [code]width[/code]."
+msgstr ""
+
+#: doc/classes/Font.xml:107
+msgid "Returns [code]true[/code] if the font has an outline."
+msgstr ""
+
+#: doc/classes/Font.xml:120
+msgid ""
+"After editing a font (changing size, ascent, char rects, etc.). Call this "
+"function to propagate changes to controls that might use it."
+msgstr ""
+
+#: doc/classes/FuncRef.xml:4
+msgid "Reference to a function in an object."
+msgstr ""
+
+#: doc/classes/FuncRef.xml:7
+msgid ""
+"In GDScript, functions are not [i]first-class objects[/i]. This means it is "
+"impossible to store them directly as variables, return them from another "
+"function, or pass them as arguments.\n"
+"However, by creating a [FuncRef] using the [method @GDScript.funcref] "
+"function, a reference to a function in a given object can be created, passed "
+"around and called."
+msgstr ""
+
+#: doc/classes/FuncRef.xml:17
+msgid ""
+"Calls the referenced function previously set by [method set_function] or "
+"[method @GDScript.funcref]."
+msgstr ""
+
+#: doc/classes/FuncRef.xml:26
+msgid ""
+"Calls the referenced function previously set by [method set_function] or "
+"[method @GDScript.funcref]. Contrarily to [method call_func], this method "
+"does not support a variable number of arguments but expects all parameters "
+"to be passed via a single [Array]."
+msgstr ""
+
+#: doc/classes/FuncRef.xml:33
+msgid "Returns whether the object still exists and has the function assigned."
+msgstr ""
+
+#: doc/classes/FuncRef.xml:42
+msgid ""
+"The name of the referenced function to call on the object, without "
+"parentheses or any parameters."
+msgstr ""
+
+#: doc/classes/FuncRef.xml:51
+msgid ""
+"The object containing the referenced function. This object must be of a type "
+"actually inheriting from [Object], not a built-in type such as [int], "
+"[Vector2] or [Dictionary]."
+msgstr ""
+
+#: modules/gdnative/doc_classes/GDNativeLibrary.xml:4
+msgid ""
+"An external library containing functions or script classes to use in Godot."
+msgstr ""
+
+#: modules/gdnative/doc_classes/GDNativeLibrary.xml:7
+msgid ""
+"A GDNative library can implement [NativeScript]s, global functions to call "
+"with the [GDNative] class, or low-level engine extensions through interfaces "
+"such as [XRInterfaceGDNative]. The library must be compiled for each "
+"platform and architecture that the project will run on."
+msgstr ""
+
+#: modules/gdnative/doc_classes/GDNativeLibrary.xml:10
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/plugins/gdnative/gdnative-c-"
+"example.html"
+msgstr ""
+
+#: modules/gdnative/doc_classes/GDNativeLibrary.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/plugins/gdnative/gdnative-"
+"cpp-example.html"
+msgstr ""
+
+#: modules/gdnative/doc_classes/GDNativeLibrary.xml:18
+msgid ""
+"Returns paths to all dependency libraries for the current platform and "
+"architecture."
+msgstr ""
+
+#: modules/gdnative/doc_classes/GDNativeLibrary.xml:25
+msgid ""
+"Returns the path to the dynamic library file for the current platform and "
+"architecture."
+msgstr ""
+
+#: modules/gdnative/doc_classes/GDNativeLibrary.xml:31
+msgid ""
+"This resource in INI-style [ConfigFile] format, as in [code].gdnlib[/code] "
+"files."
+msgstr ""
+
+#: modules/gdnative/doc_classes/GDNativeLibrary.xml:34
+msgid ""
+"If [code]true[/code], Godot loads only one copy of the library and each "
+"script that references the library will share static data like static or "
+"global variables.\n"
+"If [code]false[/code], Godot loads a separate copy of the library into "
+"memory for each script that references it."
+msgstr ""
+
+#: modules/gdnative/doc_classes/GDNativeLibrary.xml:38
+msgid ""
+"If [code]true[/code], the editor will temporarily unload the library "
+"whenever the user switches away from the editor window, allowing the user to "
+"recompile the library without restarting Godot.\n"
+"[b]Note:[/b] If the library defines tool scripts that run inside the editor, "
+"[code]reloadable[/code] must be [code]false[/code]. Otherwise, the editor "
+"will attempt to unload the tool scripts while they're in use and crash."
+msgstr ""
+
+#: modules/gdnative/doc_classes/GDNativeLibrary.xml:42
+msgid ""
+"If [code]true[/code], Godot loads the library at startup rather than the "
+"first time a script uses the library, calling [code]{prefix}"
+"gdnative_singleton[/code] after initializing the library (where [code]"
+"{prefix}[/code] is the value of [member symbol_prefix]). The library remains "
+"loaded as long as Godot is running.\n"
+"[b]Note:[/b] A singleton library cannot be [member reloadable]."
+msgstr ""
+
+#: modules/gdnative/doc_classes/GDNativeLibrary.xml:46
+msgid ""
+"The prefix this library's entry point functions begin with. For example, a "
+"GDNativeLibrary would declare its [code]gdnative_init[/code] function as "
+"[code]godot_gdnative_init[/code] by default.\n"
+"On platforms that require statically linking libraries (currently only iOS), "
+"each library must have a different [code]symbol_prefix[/code]."
+msgstr ""
+
+#: modules/gdscript/doc_classes/GDScript.xml:4
+msgid "A script implemented in the GDScript programming language."
+msgstr ""
+
+#: modules/gdscript/doc_classes/GDScript.xml:7
+msgid ""
+"A script implemented in the GDScript programming language. The script "
+"extends the functionality of all objects that instance it.\n"
+"[method new] creates a new instance of the script. [method Object."
+"set_script] extends an existing object, if that object's class matches one "
+"of the script's base classes."
+msgstr ""
+
+#: modules/gdscript/doc_classes/GDScript.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/getting_started/scripting/gdscript/"
+"index.html"
+msgstr ""
+
+#: modules/gdscript/doc_classes/GDScript.xml:18
+msgid "Returns byte code for the script source code."
+msgstr ""
+
+#: modules/gdscript/doc_classes/GDScript.xml:25
+msgid ""
+"Returns a new instance of the script.\n"
+"For example:\n"
+"[codeblock]\n"
+"var MyClass = load(\"myclass.gd\")\n"
+"var instance = MyClass.new()\n"
+"assert(instance.get_script() == MyClass)\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:4
+msgid "State of a function call after yielding."
+msgstr ""
+
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:7
+msgid ""
+"FIXME: Outdated docs as of GDScript rewrite in 4.0.\n"
+"Calling [code]yield[/code] within a function will cause that function to "
+"yield and return its current state as an object of this type. The yielded "
+"function call can then be resumed later by calling [method resume] on this "
+"state object."
+msgstr ""
+
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:19
+msgid ""
+"Check whether the function call may be resumed. This is not the case if the "
+"function state was already resumed.\n"
+"If [code]extended_check[/code] is enabled, it also checks if the associated "
+"script and object still exist. The extended check is done in debug mode as "
+"part of [method GDScriptFunctionState.resume], but you can use this if you "
+"know you may be trying to resume without knowing for sure the object and/or "
+"script have survived up to that point."
+msgstr ""
+
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:29
+msgid ""
+"Resume execution of the yielded function call.\n"
+"If handed an argument, return the argument from the [code]yield[/code] call "
+"in the yielded function call. You can pass e.g. an [Array] to hand multiple "
+"arguments.\n"
+"This function returns what the resumed function call returns, possibly "
+"another function state if yielded again."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:4
+msgid ""
+"The generic 6-degrees-of-freedom joint can implement a variety of joint "
+"types by locking certain axes' rotation or translation."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:7
+msgid ""
+"The first 3 DOF axes are linear axes, which represent translation of Bodies, "
+"and the latter 3 DOF axes represent the angular motion. Each axis can be "
+"either locked, or limited."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:123
+msgid ""
+"The amount of rotational damping across the X axis.\n"
+"The lower, the longer an impulse from one side takes to travel to the other "
+"side."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:127
+msgid "If [code]true[/code], rotation across the X axis is limited."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:130
+msgid ""
+"When rotating across the X axis, this error tolerance factor defines how "
+"much the correction gets slowed down. The lower, the slower."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:133
+msgid ""
+"The maximum amount of force that can occur, when rotating around the X axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:136
+msgid ""
+"The minimum rotation in negative direction to break loose and rotate around "
+"the X axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:139
+msgid ""
+"The amount of rotational restitution across the X axis. The lower, the more "
+"restitution occurs."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:142
+msgid "The speed of all rotations across the X axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:145
+msgid ""
+"The minimum rotation in positive direction to break loose and rotate around "
+"the X axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:148
+msgid ""
+"The amount of rotational damping across the Y axis. The lower, the more "
+"dampening occurs."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:151
+msgid "If [code]true[/code], rotation across the Y axis is limited."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:154
+msgid ""
+"When rotating across the Y axis, this error tolerance factor defines how "
+"much the correction gets slowed down. The lower, the slower."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:157
+msgid ""
+"The maximum amount of force that can occur, when rotating around the Y axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:160
+msgid ""
+"The minimum rotation in negative direction to break loose and rotate around "
+"the Y axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:163
+msgid ""
+"The amount of rotational restitution across the Y axis. The lower, the more "
+"restitution occurs."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:166
+msgid "The speed of all rotations across the Y axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:169
+msgid ""
+"The minimum rotation in positive direction to break loose and rotate around "
+"the Y axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:172
+msgid ""
+"The amount of rotational damping across the Z axis. The lower, the more "
+"dampening occurs."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:175
+msgid "If [code]true[/code], rotation across the Z axis is limited."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:178
+msgid ""
+"When rotating across the Z axis, this error tolerance factor defines how "
+"much the correction gets slowed down. The lower, the slower."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:181
+msgid ""
+"The maximum amount of force that can occur, when rotating around the Z axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:184
+msgid ""
+"The minimum rotation in negative direction to break loose and rotate around "
+"the Z axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:187
+msgid ""
+"The amount of rotational restitution across the Z axis. The lower, the more "
+"restitution occurs."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:190
+msgid "The speed of all rotations across the Z axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:193
+msgid ""
+"The minimum rotation in positive direction to break loose and rotate around "
+"the Z axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:196
+msgid "If [code]true[/code], a rotating motor at the X axis is enabled."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:199
+msgid "Maximum acceleration for the motor at the X axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:202
+msgid "Target speed for the motor at the X axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:205
+msgid "If [code]true[/code], a rotating motor at the Y axis is enabled."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:208
+msgid "Maximum acceleration for the motor at the Y axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:211
+msgid "Target speed for the motor at the Y axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:214
+msgid "If [code]true[/code], a rotating motor at the Z axis is enabled."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:217
+msgid "Maximum acceleration for the motor at the Z axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:220
+msgid "Target speed for the motor at the Z axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:247
+msgid "The amount of damping that happens at the X motion."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:250
+msgid "If [code]true[/code], the linear motion across the X axis is limited."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:253
+msgid "The minimum difference between the pivot points' X axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:256
+msgid ""
+"The amount of restitution on the X axis movement. The lower, the more "
+"momentum gets lost."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:259
+msgid ""
+"A factor applied to the movement across the X axis. The lower, the slower "
+"the movement."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:262
+msgid "The maximum difference between the pivot points' X axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:265
+msgid "The amount of damping that happens at the Y motion."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:268
+msgid "If [code]true[/code], the linear motion across the Y axis is limited."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:271
+msgid "The minimum difference between the pivot points' Y axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:274
+msgid ""
+"The amount of restitution on the Y axis movement. The lower, the more "
+"momentum gets lost."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:277
+msgid ""
+"A factor applied to the movement across the Y axis. The lower, the slower "
+"the movement."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:280
+msgid "The maximum difference between the pivot points' Y axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:283
+msgid "The amount of damping that happens at the Z motion."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:286
+msgid "If [code]true[/code], the linear motion across the Z axis is limited."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:289
+msgid "The minimum difference between the pivot points' Z axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:292
+msgid ""
+"The amount of restitution on the Z axis movement. The lower, the more "
+"momentum gets lost."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:295
+msgid ""
+"A factor applied to the movement across the Z axis. The lower, the slower "
+"the movement."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:298
+msgid "The maximum difference between the pivot points' Z axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:301
+msgid ""
+"If [code]true[/code], then there is a linear motor on the X axis. It will "
+"attempt to reach the target velocity while staying within the force limits."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:304
+msgid ""
+"The maximum force the linear motor can apply on the X axis while trying to "
+"reach the target velocity."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:307
+msgid "The speed that the linear motor will attempt to reach on the X axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:310
+msgid ""
+"If [code]true[/code], then there is a linear motor on the Y axis. It will "
+"attempt to reach the target velocity while staying within the force limits."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:313
+msgid ""
+"The maximum force the linear motor can apply on the Y axis while trying to "
+"reach the target velocity."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:316
+msgid "The speed that the linear motor will attempt to reach on the Y axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:319
+msgid ""
+"If [code]true[/code], then there is a linear motor on the Z axis. It will "
+"attempt to reach the target velocity while staying within the force limits."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:322
+msgid ""
+"The maximum force the linear motor can apply on the Z axis while trying to "
+"reach the target velocity."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:325
+msgid "The speed that the linear motor will attempt to reach on the Z axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:356 doc/classes/PhysicsServer3D.xml:1410
+msgid "The minimum difference between the pivot points' axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:359 doc/classes/PhysicsServer3D.xml:1413
+msgid "The maximum difference between the pivot points' axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:362
+msgid ""
+"A factor applied to the movement across the axes. The lower, the slower the "
+"movement."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:365
+msgid ""
+"The amount of restitution on the axes' movement. The lower, the more "
+"momentum gets lost."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:368 doc/classes/PhysicsServer3D.xml:1422
+msgid ""
+"The amount of damping that happens at the linear motion across the axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:371
+msgid "The velocity the linear motor will try to reach."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:374
+msgid ""
+"The maximum force the linear motor will apply while trying to reach the "
+"velocity target."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:383 doc/classes/PhysicsServer3D.xml:1431
+msgid ""
+"The minimum rotation in negative direction to break loose and rotate around "
+"the axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:386 doc/classes/PhysicsServer3D.xml:1434
+msgid ""
+"The minimum rotation in positive direction to break loose and rotate around "
+"the axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:389
+msgid "The speed of all rotations across the axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:392 doc/classes/PhysicsServer3D.xml:1440
+msgid ""
+"The amount of rotational damping across the axes. The lower, the more "
+"dampening occurs."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:395 doc/classes/PhysicsServer3D.xml:1443
+msgid ""
+"The amount of rotational restitution across the axes. The lower, the more "
+"restitution occurs."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:398 doc/classes/PhysicsServer3D.xml:1446
+msgid ""
+"The maximum amount of force that can occur, when rotating around the axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:401
+msgid ""
+"When rotating across the axes, this error tolerance factor defines how much "
+"the correction gets slowed down. The lower, the slower."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:404 doc/classes/PhysicsServer3D.xml:1452
+msgid "Target speed for the motor at the axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:407 doc/classes/PhysicsServer3D.xml:1455
+msgid "Maximum acceleration for the motor at the axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:419
+msgid "If enabled, linear motion is possible within the given limits."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:422
+msgid "If enabled, rotational motion is possible within the given limits."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:429
+msgid "If enabled, there is a rotational motor across these axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:432
+msgid "If enabled, there is a linear motor across these axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint3D.xml:435 doc/classes/HingeJoint3D.xml:118
+msgid "Represents the size of the [enum Flag] enum."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:4
+msgid "Helper node to calculate generic geometry operations in 2D space."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:7
+msgid ""
+"Geometry2D provides users with a set of helper functions to create geometric "
+"shapes, compute intersections between shapes, and process various other "
+"geometric operations."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:20
+msgid ""
+"Clips [code]polygon_a[/code] against [code]polygon_b[/code] and returns an "
+"array of clipped polygons. This performs [constant OPERATION_DIFFERENCE] "
+"between polygons. Returns an empty array if [code]polygon_b[/code] "
+"completely overlaps [code]polygon_a[/code].\n"
+"If [code]polygon_b[/code] is enclosed by [code]polygon_a[/code], returns an "
+"outer polygon (boundary) and inner polygon (hole) which could be "
+"distinguished by calling [method is_polygon_clockwise]."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:32
+msgid ""
+"Clips [code]polyline[/code] against [code]polygon[/code] and returns an "
+"array of clipped polylines. This performs [constant OPERATION_DIFFERENCE] "
+"between the polyline and the polygon. This operation can be thought of as "
+"cutting a line with a closed shape."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:41
+msgid ""
+"Given an array of [Vector2]s, returns the convex hull as a list of points in "
+"counterclockwise order. The last point is the same as the first one."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:52
+msgid ""
+"Mutually excludes common area defined by intersection of [code]polygon_a[/"
+"code] and [code]polygon_b[/code] (see [method intersect_polygons]) and "
+"returns an array of excluded polygons. This performs [constant "
+"OPERATION_XOR] between polygons. In other words, returns all but common area "
+"between polygons.\n"
+"The operation may result in an outer polygon (boundary) and inner polygon "
+"(hole) produced which could be distinguished by calling [method "
+"is_polygon_clockwise]."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:66
+msgid ""
+"Returns the 2D point on the 2D segment ([code]s1[/code], [code]s2[/code]) "
+"that is closest to [code]point[/code]. The returned point will always be "
+"inside the specified segment."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:79
+msgid ""
+"Returns the 2D point on the 2D line defined by ([code]s1[/code], [code]s2[/"
+"code]) that is closest to [code]point[/code]. The returned point can be "
+"inside the segment ([code]s1[/code], [code]s2[/code]) or outside of it, i.e. "
+"somewhere on the line extending from the segment."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:94
+msgid ""
+"Given the two 2D segments ([code]p1[/code], [code]p2[/code]) and ([code]q1[/"
+"code], [code]q2[/code]), finds those two points on the two segments that are "
+"closest to each other. Returns a [PackedVector2Array] that contains this "
+"point on ([code]p1[/code], [code]p2[/code]) as well the accompanying point "
+"on ([code]q1[/code], [code]q2[/code])."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:105
+msgid ""
+"Intersects [code]polygon_a[/code] with [code]polygon_b[/code] and returns an "
+"array of intersected polygons. This performs [constant "
+"OPERATION_INTERSECTION] between polygons. In other words, returns common "
+"area shared by polygons. Returns an empty array if no intersection occurs.\n"
+"The operation may result in an outer polygon (boundary) and inner polygon "
+"(hole) produced which could be distinguished by calling [method "
+"is_polygon_clockwise]."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:117
+msgid ""
+"Intersects [code]polyline[/code] with [code]polygon[/code] and returns an "
+"array of intersected polylines. This performs [constant "
+"OPERATION_INTERSECTION] between the polyline and the polygon. This operation "
+"can be thought of as chopping a line with a closed shape."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:130
+msgid ""
+"Returns [code]true[/code] if [code]point[/code] is inside the circle or if "
+"it's located exactly [i]on[/i] the circle's boundary, otherwise returns "
+"[code]false[/code]."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:141
+msgid ""
+"Returns [code]true[/code] if [code]point[/code] is inside [code]polygon[/"
+"code] or if it's located exactly [i]on[/i] polygon's boundary, otherwise "
+"returns [code]false[/code]."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:150
+msgid ""
+"Returns [code]true[/code] if [code]polygon[/code]'s vertices are ordered in "
+"clockwise order, otherwise returns [code]false[/code]."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:165
+msgid ""
+"Checks if the two lines ([code]from_a[/code], [code]dir_a[/code]) and "
+"([code]from_b[/code], [code]dir_b[/code]) intersect. If yes, return the "
+"point of intersection as [Vector2]. If no intersection takes place, returns "
+"an empty [Variant].\n"
+"[b]Note:[/b] The lines are specified using direction vectors, not end points."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:175
+msgid ""
+"Given an array of [Vector2]s representing tiles, builds an atlas. The "
+"returned dictionary has two keys: [code]points[/code] is a vector of "
+"[Vector2] that specifies the positions of each tile, [code]size[/code] "
+"contains the overall size of the whole atlas as [Vector2]."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:186
+msgid ""
+"Merges (combines) [code]polygon_a[/code] and [code]polygon_b[/code] and "
+"returns an array of merged polygons. This performs [constant "
+"OPERATION_UNION] between polygons.\n"
+"The operation may result in an outer polygon (boundary) and inner polygon "
+"(hole) produced which could be distinguished by calling [method "
+"is_polygon_clockwise]."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:200
+msgid ""
+"Inflates or deflates [code]polygon[/code] by [code]delta[/code] units "
+"(pixels). If [code]delta[/code] is positive, makes the polygon grow outward. "
+"If [code]delta[/code] 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 [code]delta[/code] is negative "
+"and the absolute value of it approximately exceeds the minimum bounding "
+"rectangle dimensions of the polygon.\n"
+"Each polygon's vertices will be rounded as determined by [code]join_type[/"
+"code], see [enum PolyJoinType].\n"
+"The operation may result in an outer polygon (boundary) and inner polygon "
+"(hole) produced which could be distinguished by calling [method "
+"is_polygon_clockwise].\n"
+"[b]Note:[/b] To translate the polygon's vertices specifically, use the "
+"[method Transform2D.xform] method:\n"
+"[codeblock]\n"
+"var polygon = PackedVector2Array([Vector2(0, 0), Vector2(100, 0), "
+"Vector2(100, 100), Vector2(0, 100)])\n"
+"var offset = Vector2(50, 50)\n"
+"polygon = Transform2D(0, offset).xform(polygon)\n"
+"print(polygon) # prints [Vector2(50, 50), Vector2(150, 50), Vector2(150, "
+"150), Vector2(50, 150)]\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:224
+msgid ""
+"Inflates or deflates [code]polyline[/code] by [code]delta[/code] units "
+"(pixels), producing polygons. If [code]delta[/code] is positive, makes the "
+"polyline grow outward. Returns an array of polygons because inflating/"
+"deflating may result in multiple discrete polygons. If [code]delta[/code] is "
+"negative, returns an empty array.\n"
+"Each polygon's vertices will be rounded as determined by [code]join_type[/"
+"code], see [enum PolyJoinType].\n"
+"Each polygon's endpoints will be rounded as determined by [code]end_type[/"
+"code], see [enum PolyEndType].\n"
+"The operation may result in an outer polygon (boundary) and inner polygon "
+"(hole) produced which could be distinguished by calling [method "
+"is_polygon_clockwise]."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:242
+msgid ""
+"Returns if [code]point[/code] is inside the triangle specified by [code]a[/"
+"code], [code]b[/code] and [code]c[/code]."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:257
+msgid ""
+"Checks if the two segments ([code]from_a[/code], [code]to_a[/code]) and "
+"([code]from_b[/code], [code]to_b[/code]) intersect. If yes, return the point "
+"of intersection as [Vector2]. If no intersection takes place, returns an "
+"empty [Variant]."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:266
+msgid ""
+"Triangulates the area specified by discrete set of [code]points[/code] such "
+"that no point is inside the circumcircle of any resulting triangle. Returns "
+"a [PackedInt32Array] where each triangle consists of three consecutive point "
+"indices into [code]points[/code] (i.e. the returned array will have [code]n "
+"* 3[/code] elements, with [code]n[/code] being the number of found "
+"triangles). If the triangulation did not succeed, an empty "
+"[PackedInt32Array] is returned."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:275
+msgid ""
+"Triangulates the polygon specified by the points in [code]polygon[/code]. "
+"Returns a [PackedInt32Array] where each triangle consists of three "
+"consecutive point indices into [code]polygon[/code] (i.e. the returned array "
+"will have [code]n * 3[/code] elements, with [code]n[/code] being the number "
+"of found triangles). If the triangulation did not succeed, an empty "
+"[PackedInt32Array] is returned."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:281
+msgid ""
+"Create regions where either subject or clip polygons (or both) are filled."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:284
+msgid ""
+"Create regions where subject polygons are filled except where clip polygons "
+"are filled."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:287
+msgid "Create regions where both subject and clip polygons are filled."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:290
+msgid ""
+"Create regions where either subject or clip polygons are filled but not "
+"where both are filled."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:293
+msgid ""
+"Squaring is applied uniformally at all convex edge joins at [code]1 * delta[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:296
+msgid ""
+"While flattened paths can never perfectly trace an arc, they are "
+"approximated by a series of arc chords."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:299
+msgid ""
+"There's a necessary limit to mitered joins since offsetting edges that join "
+"at very acute angles will produce excessively long and narrow \"spikes\". "
+"For any given edge join, when miter offsetting would exceed that maximum "
+"distance, \"square\" joining is applied."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:302
+msgid ""
+"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
+"as a polygon."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:305
+msgid ""
+"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
+"as a polyline."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:308
+msgid "Endpoints are squared off with no extension."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:311
+msgid "Endpoints are squared off and extended by [code]delta[/code] units."
+msgstr ""
+
+#: doc/classes/Geometry2D.xml:314
+msgid "Endpoints are rounded off and extended by [code]delta[/code] units."
+msgstr ""
+
+#: doc/classes/Geometry3D.xml:4
+msgid "Helper node to calculate generic geometry operations in 3D space."
+msgstr ""
+
+#: doc/classes/Geometry3D.xml:7
+msgid ""
+"Geometry3D provides users with a set of helper functions to create geometric "
+"shapes, compute intersections between shapes, and process various other "
+"geometric operations."
+msgstr ""
+
+#: doc/classes/Geometry3D.xml:18
+msgid ""
+"Returns an array with 6 [Plane]s that describe the sides of a box centered "
+"at the origin. The box size is defined by [code]extents[/code], which "
+"represents one (positive) corner of the box (i.e. half its actual size)."
+msgstr ""
+
+#: doc/classes/Geometry3D.xml:35
+msgid ""
+"Returns an array of [Plane]s closely bounding a faceted capsule centered at "
+"the origin with radius [code]radius[/code] and height [code]height[/code]. "
+"The parameter [code]sides[/code] defines how many planes will be generated "
+"for the side part of the capsule, whereas [code]lats[/code] gives the number "
+"of latitudinal steps at the bottom and top of the capsule. The parameter "
+"[code]axis[/code] describes the axis along which the capsule is oriented (0 "
+"for X, 1 for Y, 2 for Z)."
+msgstr ""
+
+#: doc/classes/Geometry3D.xml:50
+msgid ""
+"Returns an array of [Plane]s closely bounding a faceted cylinder centered at "
+"the origin with radius [code]radius[/code] and height [code]height[/code]. "
+"The parameter [code]sides[/code] defines how many planes will be generated "
+"for the round part of the cylinder. The parameter [code]axis[/code] "
+"describes the axis along which the cylinder is oriented (0 for X, 1 for Y, 2 "
+"for Z)."
+msgstr ""
+
+#: doc/classes/Geometry3D.xml:61
+msgid ""
+"Clips the polygon defined by the points in [code]points[/code] against the "
+"[code]plane[/code] and returns the points of the clipped polygon."
+msgstr ""
+
+#: doc/classes/Geometry3D.xml:74
+msgid ""
+"Returns the 3D point on the 3D segment ([code]s1[/code], [code]s2[/code]) "
+"that is closest to [code]point[/code]. The returned point will always be "
+"inside the specified segment."
+msgstr ""
+
+#: doc/classes/Geometry3D.xml:87
+msgid ""
+"Returns the 3D point on the 3D line defined by ([code]s1[/code], [code]s2[/"
+"code]) that is closest to [code]point[/code]. The returned point can be "
+"inside the segment ([code]s1[/code], [code]s2[/code]) or outside of it, i.e. "
+"somewhere on the line extending from the segment."
+msgstr ""
+
+#: doc/classes/Geometry3D.xml:102
+msgid ""
+"Given the two 3D segments ([code]p1[/code], [code]p2[/code]) and ([code]q1[/"
+"code], [code]q2[/code]), finds those two points on the two segments that are "
+"closest to each other. Returns a [PackedVector3Array] that contains this "
+"point on ([code]p1[/code], [code]p2[/code]) as well the accompanying point "
+"on ([code]q1[/code], [code]q2[/code])."
+msgstr ""
+
+#: doc/classes/Geometry3D.xml:111
+msgid "Used internally by the engine."
+msgstr ""
+
+#: doc/classes/Geometry3D.xml:128
+msgid ""
+"Tests if the 3D ray starting at [code]from[/code] with the direction of "
+"[code]dir[/code] intersects the triangle specified by [code]a[/code], "
+"[code]b[/code] and [code]c[/code]. If yes, returns the point of intersection "
+"as [Vector3]. If no intersection takes place, an empty [Variant] is returned."
+msgstr ""
+
+#: doc/classes/Geometry3D.xml:141
+msgid ""
+"Given a convex hull defined though the [Plane]s in the array [code]planes[/"
+"code], tests if the segment ([code]from[/code], [code]to[/code]) intersects "
+"with that hull. If an intersection is found, returns a [PackedVector3Array] "
+"containing the point the intersection and the hull's normal. If no "
+"intersecion is found, an the returned array is empty."
+msgstr ""
+
+#: doc/classes/Geometry3D.xml:156
+msgid ""
+"Checks if the segment ([code]from[/code], [code]to[/code]) intersects the "
+"cylinder with height [code]height[/code] that is centered at the origin and "
+"has radius [code]radius[/code]. If no, returns an empty "
+"[PackedVector3Array]. If an intersection takes place, the returned array "
+"contains the point of intersection and the cylinder's normal at the point of "
+"intersection."
+msgstr ""
+
+#: doc/classes/Geometry3D.xml:171
+msgid ""
+"Checks if the segment ([code]from[/code], [code]to[/code]) intersects the "
+"sphere that is located at [code]sphere_position[/code] and has radius "
+"[code]sphere_radius[/code]. If no, returns an empty [PackedVector3Array]. If "
+"yes, returns a [PackedVector3Array] containing the point of intersection and "
+"the sphere's normal at the point of intersection."
+msgstr ""
+
+#: doc/classes/Geometry3D.xml:188
+msgid ""
+"Tests if the segment ([code]from[/code], [code]to[/code]) intersects the "
+"triangle [code]a[/code], [code]b[/code], [code]c[/code]. If yes, returns the "
+"point of intersection as [Vector3]. If no intersection takes place, an empty "
+"[Variant] is returned."
+msgstr ""
+
+#: doc/classes/GeometryInstance3D.xml:4
+msgid "Base node for geometry-based visual instances."
+msgstr ""
+
+#: doc/classes/GeometryInstance3D.xml:7
+msgid ""
+"Base node for geometry-based visual instances. Shares some common "
+"functionality like visibility and custom materials."
+msgstr ""
+
+#: doc/classes/GeometryInstance3D.xml:26
+msgid ""
+"Overrides the bounding box of this node with a custom one. To remove it, set "
+"an [AABB] with all fields set to zero."
+msgstr ""
+
+#: doc/classes/GeometryInstance3D.xml:42
+msgid ""
+"The selected shadow casting flag. See [enum ShadowCastingSetting] for "
+"possible values."
+msgstr ""
+
+#: doc/classes/GeometryInstance3D.xml:45
+msgid ""
+"The extra distance added to the GeometryInstance3D's bounding box ([AABB]) "
+"to increase its cull box."
+msgstr ""
+
+#: doc/classes/GeometryInstance3D.xml:52
+msgid ""
+"The GeometryInstance3D's max LOD distance.\n"
+"[b]Note:[/b] This property currently has no effect."
+msgstr ""
+
+#: doc/classes/GeometryInstance3D.xml:56
+msgid ""
+"The GeometryInstance3D's max LOD margin.\n"
+"[b]Note:[/b] This property currently has no effect."
+msgstr ""
+
+#: doc/classes/GeometryInstance3D.xml:60
+msgid ""
+"The GeometryInstance3D's min LOD distance.\n"
+"[b]Note:[/b] This property currently has no effect."
+msgstr ""
+
+#: doc/classes/GeometryInstance3D.xml:64
+msgid ""
+"The GeometryInstance3D's min LOD margin.\n"
+"[b]Note:[/b] This property currently has no effect."
+msgstr ""
+
+#: doc/classes/GeometryInstance3D.xml:68
+msgid ""
+"The material override for the whole geometry.\n"
+"If a material is assigned to this property, it will be used instead of any "
+"material set in any material slot of the mesh."
+msgstr ""
+
+#: doc/classes/GeometryInstance3D.xml:74
+msgid "Will not cast any shadows."
+msgstr ""
+
+#: doc/classes/GeometryInstance3D.xml:77
+msgid ""
+"Will cast shadows from all visible faces in the GeometryInstance3D.\n"
+"Will take culling into account, so faces not being rendered will not be "
+"taken into account when shadow casting."
+msgstr ""
+
+#: doc/classes/GeometryInstance3D.xml:81
+msgid ""
+"Will cast shadows from all visible faces in the GeometryInstance3D.\n"
+"Will not take culling into account, so all faces will be taken into account "
+"when shadow casting."
+msgstr ""
+
+#: doc/classes/GeometryInstance3D.xml:85
+msgid ""
+"Will only show the shadows casted from this object.\n"
+"In other words, the actual mesh will not be visible, only the shadows casted "
+"from the mesh will be."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:4
+msgid "Real-time global illumination (GI) probe."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:7
+msgid ""
+"[GIProbe]s are used to provide high-quality real-time indirect light to "
+"scenes. They precompute the effect of objects that emit light and the effect "
+"of static geometry to simulate the behavior of complex light in real-time. "
+"[GIProbe]s need to be baked before using, however, once baked, dynamic "
+"objects will receive light from them. Further, lights can be fully dynamic "
+"or baked.\n"
+"Having [GIProbe]s in a scene can be expensive, the quality of the probe can "
+"be turned down in exchange for better performance in the [ProjectSettings] "
+"using [member ProjectSettings.rendering/quality/gi_probes/quality]."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:11
+msgid "https://docs.godotengine.org/en/latest/tutorials/3d/gi_probes.html"
+msgstr ""
+
+#: doc/classes/GIProbe.xml:22
+msgid ""
+"Bakes the effect from all [GeometryInstance3D]s marked with [constant "
+"GeometryInstance3D.GI_MODE_BAKED] and [Light3D]s marked with either "
+"[constant Light3D.BAKE_DYNAMIC] or [constant Light3D.BAKE_STATIC]. If "
+"[code]create_visual_debug[/code] is [code]true[/code], after baking the "
+"light, this will generate a [MultiMesh] that has a cube representing each "
+"solid cell with each cube colored to the cell's albedo color. This can be "
+"used to visualize the [GIProbe]'s data and debug any issues that may be "
+"occurring."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:29
+msgid "Calls [method bake] with [code]create_visual_debug[/code] enabled."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:35
+msgid "The [GIProbeData] resource that holds the data for this [GIProbe]."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:38
+msgid ""
+"The size of the area covered by the [GIProbe]. If you make the extents "
+"larger without increasing the subdivisions with [member subdiv], the size of "
+"each cell will increase and result in lower detailed lighting."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:41
+msgid ""
+"Number of times to subdivide the grid that the [GIProbe] operates on. A "
+"higher number results in finer detail and thus higher visual quality, while "
+"lower numbers result in better performance."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:46
+msgid ""
+"Use 64 subdivisions. This is the lowest quality setting, but the fastest. "
+"Use it if you can, but especially use it on lower-end hardware."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:49
+msgid "Use 128 subdivisions. This is the default quality setting."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:52
+msgid "Use 256 subdivisions."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:55
+msgid ""
+"Use 512 subdivisions. This is the highest quality setting, but the slowest. "
+"On lower-end hardware this could cause the GPU to stall."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:58
+msgid "Represents the size of the [enum Subdiv] enum."
+msgstr ""
+
+#: modules/mono/doc_classes/GodotSharp.xml:4
+msgid "Bridge between Godot and the Mono runtime (Mono-enabled builds only)."
+msgstr ""
+
+#: modules/mono/doc_classes/GodotSharp.xml:7
+msgid ""
+"This class is a bridge between Godot and the Mono runtime. It exposes "
+"several low-level operations and is only available in Mono-enabled Godot "
+"builds.\n"
+"See also [CSharpScript]."
+msgstr ""
+
+#: modules/mono/doc_classes/GodotSharp.xml:17
+msgid "Attaches the current thread to the Mono runtime."
+msgstr ""
+
+#: modules/mono/doc_classes/GodotSharp.xml:24
+msgid "Detaches the current thread from the Mono runtime."
+msgstr ""
+
+#: modules/mono/doc_classes/GodotSharp.xml:31
+msgid ""
+"Returns the current MonoDomain ID.\n"
+"[b]Note:[/b] The Mono runtime must be initialized for this method to work "
+"(use [method is_runtime_initialized] to check). If the Mono runtime isn't "
+"initialized at the time this method is called, the engine will crash."
+msgstr ""
+
+#: modules/mono/doc_classes/GodotSharp.xml:39
+msgid ""
+"Returns the scripts MonoDomain's ID. This will be the same MonoDomain ID as "
+"[method get_domain_id], unless the scripts domain isn't loaded.\n"
+"[b]Note:[/b] The Mono runtime must be initialized for this method to work "
+"(use [method is_runtime_initialized] to check). If the Mono runtime isn't "
+"initialized at the time this method is called, the engine will crash."
+msgstr ""
+
+#: modules/mono/doc_classes/GodotSharp.xml:49
+msgid ""
+"Returns [code]true[/code] if the domain is being finalized, [code]false[/"
+"code] otherwise."
+msgstr ""
+
+#: modules/mono/doc_classes/GodotSharp.xml:56
+msgid ""
+"Returns [code]true[/code] if the Mono runtime is initialized, [code]false[/"
+"code] otherwise."
+msgstr ""
+
+#: modules/mono/doc_classes/GodotSharp.xml:63
+msgid ""
+"Returns [code]true[/code] if the Mono runtime is shutting down, [code]false[/"
+"code] otherwise."
+msgstr ""
+
+#: modules/mono/doc_classes/GodotSharp.xml:70
+msgid ""
+"Returns [code]true[/code] if the scripts domain is loaded, [code]false[/"
+"code] otherwise."
+msgstr ""
+
+#: doc/classes/GPUParticles2D.xml:4
+msgid "2D particle emitter."
+msgstr ""
+
+#: doc/classes/GPUParticles2D.xml:7
+msgid ""
+"2D particle node used to create a variety of particle systems and effects. "
+"[GPUParticles2D] features an emitter that generates some number of particles "
+"at a given rate.\n"
+"Use the [code]process_material[/code] property to add a [ParticlesMaterial] "
+"to configure particle appearance and behavior. Alternatively, you can add a "
+"[ShaderMaterial] which will be applied to all particles."
+msgstr ""
+
+#: doc/classes/GPUParticles2D.xml:18
+msgid "Returns a rectangle containing the positions of all existing particles."
+msgstr ""
+
+#: doc/classes/GPUParticles2D.xml:25
+msgid "Restarts all the existing particles."
+msgstr ""
+
+#: doc/classes/GPUParticles2D.xml:65 doc/classes/GPUParticles3D.xml:96
+msgid ""
+"[Material] for processing particles. Can be a [ParticlesMaterial] or a "
+"[ShaderMaterial]."
+msgstr ""
+
+#: doc/classes/GPUParticles2D.xml:77
+msgid "Editor visibility helper."
+msgstr ""
+
+#: doc/classes/GPUParticles3D.xml:4
+msgid "3D particle emitter."
+msgstr ""
+
+#: doc/classes/GPUParticles3D.xml:7
+msgid ""
+"3D particle node used to create a variety of particle systems and effects. "
+"[GPUParticles3D] features an emitter that generates some number of particles "
+"at a given rate.\n"
+"Use the [code]process_material[/code] property to add a [ParticlesMaterial] "
+"to configure particle appearance and behavior. Alternatively, you can add a "
+"[ShaderMaterial] which will be applied to all particles."
+msgstr ""
+
+#: doc/classes/GPUParticles3D.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/3d/vertex_animation/"
+"controlling_thousands_of_fish.html"
+msgstr ""
+
+#: doc/classes/GPUParticles3D.xml:18
+msgid ""
+"Returns the axis-aligned bounding box that contains all the particles that "
+"are active in the current frame."
+msgstr ""
+
+#: doc/classes/GPUParticles3D.xml:27
+msgid "Returns the [Mesh] that is drawn at index [code]pass[/code]."
+msgstr ""
+
+#: doc/classes/GPUParticles3D.xml:34
+msgid "Restarts the particle emission, clearing existing particles."
+msgstr ""
+
+#: doc/classes/GPUParticles3D.xml:45
+msgid "Sets the [Mesh] that is drawn at index [code]pass[/code]."
+msgstr ""
+
+#: doc/classes/GPUParticles3D.xml:51
+msgid "Number of particles to emit."
+msgstr ""
+
+#: doc/classes/GPUParticles3D.xml:57
+msgid "[Mesh] that is drawn for the first draw pass."
+msgstr ""
+
+#: doc/classes/GPUParticles3D.xml:60
+msgid "[Mesh] that is drawn for the second draw pass."
+msgstr ""
+
+#: doc/classes/GPUParticles3D.xml:63
+msgid "[Mesh] that is drawn for the third draw pass."
+msgstr ""
+
+#: doc/classes/GPUParticles3D.xml:66
+msgid "[Mesh] that is drawn for the fourth draw pass."
+msgstr ""
+
+#: doc/classes/GPUParticles3D.xml:69
+msgid "The number of draw passes when rendering particles."
+msgstr ""
+
+#: doc/classes/GPUParticles3D.xml:75
+msgid ""
+"Time ratio between each emission. If [code]0[/code], particles are emitted "
+"continuously. If [code]1[/code], all particles are emitted simultaneously."
+msgstr ""
+
+#: doc/classes/GPUParticles3D.xml:90
+msgid ""
+"If [code]true[/code], only [code]amount[/code] particles will be emitted."
+msgstr ""
+
+#: doc/classes/GPUParticles3D.xml:93
+msgid ""
+"Amount of time to preprocess the particles before animation starts. Lets you "
+"start the animation some time after particles have started emitting."
+msgstr ""
+
+#: doc/classes/GPUParticles3D.xml:99
+msgid "Emission randomness ratio."
+msgstr ""
+
+#: doc/classes/GPUParticles3D.xml:102
+msgid ""
+"Speed scaling ratio. A value of [code]0[/code] can be used to pause the "
+"particles."
+msgstr ""
+
+#: doc/classes/GPUParticles3D.xml:105
+msgid ""
+"The [AABB] that determines the area of the world part of which needs to be "
+"visible on screen for the particle system to be active."
+msgstr ""
+
+#: doc/classes/GPUParticles3D.xml:119
+msgid "Maximum number of draw passes supported."
+msgstr ""
+
+#: doc/classes/Gradient.xml:4
+msgid ""
+"A color interpolator resource which can be used to generate colors between "
+"user-defined color points."
+msgstr ""
+
+#: doc/classes/Gradient.xml:7
+msgid ""
+"Given a set of colors, this resource will interpolate them in order. This "
+"means that if you have color 1, color 2 and color 3, the ramp will "
+"interpolate from color 1 to color 2 and from color 2 to color 3. The ramp "
+"will initially have 2 colors (black and white), one (black) at ramp lower "
+"offset 0 and the other (white) at the ramp higher offset 1."
+msgstr ""
+
+#: doc/classes/Gradient.xml:20
+msgid ""
+"Adds the specified color to the end of the ramp, with the specified offset."
+msgstr ""
+
+#: doc/classes/Gradient.xml:29
+msgid "Returns the color of the ramp color at index [code]point[/code]."
+msgstr ""
+
+#: doc/classes/Gradient.xml:38
+msgid "Returns the offset of the ramp color at index [code]point[/code]."
+msgstr ""
+
+#: doc/classes/Gradient.xml:45
+msgid "Returns the number of colors in the ramp."
+msgstr ""
+
+#: doc/classes/Gradient.xml:54
+msgid "Returns the interpolated color specified by [code]offset[/code]."
+msgstr ""
+
+#: doc/classes/Gradient.xml:63
+msgid "Removes the color at the index [code]offset[/code]."
+msgstr ""
+
+#: doc/classes/Gradient.xml:74
+msgid "Sets the color of the ramp color at index [code]point[/code]."
+msgstr ""
+
+#: doc/classes/Gradient.xml:85
+msgid "Sets the offset for the ramp color at index [code]point[/code]."
+msgstr ""
+
+#: doc/classes/Gradient.xml:91
+msgid "Gradient's colors returned as a [PackedColorArray]."
+msgstr ""
+
+#: doc/classes/Gradient.xml:94
+msgid "Gradient's offsets returned as a [PackedFloat32Array]."
+msgstr ""
+
+#: doc/classes/GradientTexture.xml:4
+msgid "Gradient-filled texture."
+msgstr ""
+
+#: doc/classes/GradientTexture.xml:7
+msgid ""
+"GradientTexture uses a [Gradient] to fill the texture data. The gradient "
+"will be filled from left to right using colors obtained from the gradient. "
+"This means the texture does not necessarily represent an exact copy of the "
+"gradient, but instead an interpolation of samples obtained from the gradient "
+"at fixed steps (see [member width])."
+msgstr ""
+
+#: doc/classes/GradientTexture.xml:15
+msgid "The [Gradient] that will be used to fill the texture."
+msgstr ""
+
+#: doc/classes/GradientTexture.xml:18
+msgid "The number of color samples that will be obtained from the [Gradient]."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:4
+msgid ""
+"GraphEdit is an area capable of showing various GraphNodes. It manages "
+"connection events between them."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:7
+msgid ""
+"GraphEdit manages the showing of GraphNodes it contains, as well as "
+"connections and disconnections between them. Signals are sent for each of "
+"these two events. Disconnection between GraphNode slots is disabled by "
+"default.\n"
+"It is greatly advised to enable low-processor usage mode (see [member OS."
+"low_processor_usage_mode]) when using GraphEdits."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:21
+msgid ""
+"Makes possible the connection between two different slot types. The type is "
+"defined with the [method GraphNode.set_slot] method."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:30
+msgid ""
+"Makes possible to disconnect nodes when dragging from the slot at the left "
+"if it has the specified type."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:39
+msgid ""
+"Makes possible to disconnect nodes when dragging from the slot at the right "
+"if it has the specified type."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:46
+msgid "Removes all connections between nodes."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:61
+msgid ""
+"Create a connection between the [code]from_port[/code] slot of the "
+"[code]from[/code] GraphNode and the [code]to_port[/code] slot of the "
+"[code]to[/code] GraphNode. If the connection already exists, no connection "
+"is created."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:76
+msgid ""
+"Removes the connection between the [code]from_port[/code] slot of the "
+"[code]from[/code] GraphNode and the [code]to_port[/code] slot of the "
+"[code]to[/code] GraphNode. If the connection does not exist, no connection "
+"is removed."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:83
+msgid ""
+"Returns an Array containing the list of connections. A connection consists "
+"in a structure of the form [code]{ from_port: 0, from: \"GraphNode name 0\", "
+"to_port: 1, to: \"GraphNode name 1\" }[/code]."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:90
+msgid ""
+"Gets the [HBoxContainer] that contains the zooming and grid snap controls in "
+"the top left of the graph.\n"
+"Warning: The intended usage of this function is to allow you to reposition "
+"or add your own custom controls to the container. This is an internal "
+"control and as such should not be freed. If you wish to hide this or any of "
+"it's children use their [member CanvasItem.visible] property instead."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:106
+msgid ""
+"Returns [code]true[/code] if the [code]from_port[/code] slot of the "
+"[code]from[/code] GraphNode is connected to the [code]to_port[/code] slot of "
+"the [code]to[/code] GraphNode."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:117
+msgid "Returns whether it's possible to connect slots of the specified types."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:128
+msgid ""
+"Makes it not possible to connect between two different slot types. The type "
+"is defined with the [method GraphNode.set_slot] method."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:137
+msgid ""
+"Removes the possibility to disconnect nodes when dragging from the slot at "
+"the left if it has the specified type."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:146
+msgid ""
+"Removes the possibility to disconnect nodes when dragging from the slot at "
+"the right if it has the specified type."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:163
+msgid ""
+"Sets the coloration of the connection between [code]from[/code]'s "
+"[code]from_port[/code] and [code]to[/code]'s [code]to_port[/code] with the "
+"color provided in the [code]activity[/code] theme property."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:172
+msgid "Sets the specified [code]node[/code] as the one selected."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:180
+msgid ""
+"If [code]true[/code], enables disconnection of existing connections in the "
+"GraphEdit by dragging the right end."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:183
+msgid "The scroll offset."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:186
+msgid "The snapping distance in pixels."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:189
+msgid "If [code]true[/code], enables snapping."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:192
+msgid "The current zoom value."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:198
+msgid "Emitted at the beginning of a GraphNode movement."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:203
+msgid "Emitted at the end of a GraphNode movement."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:214
+msgid ""
+"Emitted when user dragging connection from input port into empty space of "
+"the graph."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:227
+msgid ""
+"Emitted to the GraphEdit when the connection between the [code]from_slot[/"
+"code] slot of the [code]from[/code] GraphNode and the [code]to_slot[/code] "
+"slot of the [code]to[/code] GraphNode is attempted to be created."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:238
+msgid ""
+"Emitted when user dragging connection from output port into empty space of "
+"the graph."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:243
+msgid "Emitted when the user presses [kbd]Ctrl + C[/kbd]."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:248
+msgid "Emitted when a GraphNode is attempted to be removed from the GraphEdit."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:261
+msgid ""
+"Emitted to the GraphEdit when the connection between [code]from_slot[/code] "
+"slot of [code]from[/code] GraphNode and [code]to_slot[/code] slot of "
+"[code]to[/code] GraphNode is attempted to be removed."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:266
+msgid ""
+"Emitted when a GraphNode is attempted to be duplicated in the GraphEdit."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:273
+msgid "Emitted when a GraphNode is selected."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:284
+msgid "Emitted when the user presses [kbd]Ctrl + V[/kbd]."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:291
+msgid ""
+"Emitted when a popup is requested. Happens on right-clicking in the "
+"GraphEdit. [code]position[/code] is the position of the mouse pointer when "
+"the signal is sent."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:298
+msgid ""
+"Emitted when the scroll offset is changed by the user. It will not be "
+"emitted when changed in code."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:312
+msgid "The background drawn under the grid."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:315
+msgid "Color of major grid lines."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:318
+msgid "Color of minor grid lines."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:321
+msgid "The icon for the zoom out button."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:324
+msgid "The icon for the zoom in button."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:327
+msgid ""
+"The horizontal range within which a port can be grabbed (on both sides)."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:330
+msgid "The vertical range within which a port can be grabbed (on both sides)."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:333
+msgid "The icon for the zoom reset button."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:336
+msgid "The fill color of the selection rectangle."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:339
+msgid "The outline color of the selection rectangle."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:342
+msgid "The icon for the snap toggle button."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:4
+msgid ""
+"A GraphNode is a container with potentially several input and output slots "
+"allowing connections between GraphNodes. Slots can have different, "
+"incompatible types."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:7
+msgid ""
+"A GraphNode is a container. Each GraphNode can have several input and output "
+"slots, sometimes referred to as ports, allowing connections between "
+"GraphNodes. To add a slot to GraphNode, add any [Control]-derived child node "
+"to it.\n"
+"After adding at least one child to GraphNode new sections will be "
+"automatically created in the Inspector called 'Slot'. When 'Slot' is "
+"expanded you will see list with index number for each slot. You can click on "
+"each of them to expand further.\n"
+"In the Inspector you can enable (show) or disable (hide) slots. By default "
+"all slots are disabled so you may not see any slots on your GraphNode "
+"initially. You can assign a type to each slot. Only slots of the same type "
+"will be able to connect to each other. You can also assign colors to slots. "
+"A tuple of input and output slots is defined for each GUI element included "
+"in the GraphNode. Input connections are on the left and output connections "
+"are on the right side of GraphNode. Only enabled slots are counted as "
+"connections."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:18
+msgid "Disables all input and output slots of the GraphNode."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:27
+msgid "Disables input and output slot whose index is [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:36
+msgid "Returns the color of the input connection [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:43
+msgid ""
+"Returns the number of enabled input slots (connections) to the GraphNode."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:52
+msgid "Returns the position of the input connection [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:61
+msgid "Returns the type of the input connection [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:70
+msgid "Returns the color of the output connection [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:77
+msgid ""
+"Returns the number of enabled output slots (connections) of the GraphNode."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:86
+msgid "Returns the position of the output connection [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:95
+msgid "Returns the type of the output connection [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:104
+msgid "Returns the color set to [code]idx[/code] left (input) slot."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:113
+msgid "Returns the color set to [code]idx[/code] right (output) slot."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:122
+msgid "Returns the (integer) type of left (input) [code]idx[/code] slot."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:131
+msgid "Returns the (integer) type of right (output) [code]idx[/code] slot."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:140
+msgid ""
+"Returns [code]true[/code] if left (input) slot [code]idx[/code] is enabled, "
+"[code]false[/code] otherwise."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:149
+msgid ""
+"Returns [code]true[/code] if right (output) slot [code]idx[/code] is "
+"enabled, [code]false[/code] otherwise."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:174
+msgid ""
+"Sets properties of the slot with ID [code]idx[/code].\n"
+"If [code]enable_left[/code]/[code]right[/code], a port will appear and the "
+"slot will be able to be connected from this side.\n"
+"[code]type_left[/code]/[code]right[/code] is an arbitrary type of the port. "
+"Only ports with the same type values can be connected.\n"
+"[code]color_left[/code]/[code]right[/code] is the tint of the port's icon on "
+"this side.\n"
+"[code]custom_left[/code]/[code]right[/code] is a custom texture for this "
+"side's port.\n"
+"[b]Note:[/b] This method only sets properties of the slot. To create the "
+"slot, add a [Control]-derived child to the GraphNode."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:185
+msgid "If [code]true[/code], the GraphNode is a comment node."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:189
+msgid ""
+"The offset of the GraphNode, relative to the scroll offset of the "
+"[GraphEdit].\n"
+"[b]Note:[/b] You cannot use position directly, as [GraphEdit] is a "
+"[Container]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:193
+msgid "Sets the overlay shown above the GraphNode. See [enum Overlay]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:196
+msgid ""
+"If [code]true[/code], the user can resize the GraphNode.\n"
+"[b]Note:[/b] Dragging the handle will only emit the [signal resize_request] "
+"signal, the GraphNode needs to be resized manually."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:200
+msgid "If [code]true[/code], the GraphNode is selected."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:203
+msgid ""
+"If [code]true[/code], the close button will be visible.\n"
+"[b]Note:[/b] Pressing it will only emit the [signal close_request] signal, "
+"the GraphNode needs to be removed manually."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:207
+msgid "The text displayed in the GraphNode's title bar."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:213
+msgid ""
+"Emitted when the GraphNode is requested to be closed. Happens on clicking "
+"the close button (see [member show_close])."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:222
+msgid "Emitted when the GraphNode is dragged."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:227
+msgid "Emitted when the GraphNode is moved."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:232
+msgid ""
+"Emitted when the GraphNode is requested to be displayed over other ones. "
+"Happens on focusing (clicking into) the GraphNode."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:239
+msgid ""
+"Emitted when the GraphNode is requested to be resized. Happens on dragging "
+"the resizer handle (see [member resizable])."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:245
+msgid "No overlay is shown."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:248
+msgid "Show overlay set in the [code]breakpoint[/code] theme property."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:251
+msgid "Show overlay set in the [code]position[/code] theme property."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:256
+msgid ""
+"The background used when [member overlay] is set to [constant "
+"OVERLAY_BREAKPOINT]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:259
+msgid ""
+"The icon for the close button, visible when [member show_close] is enabled."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:262
+msgid "The color modulation applied to the close button icon."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:265
+msgid "The vertical offset of the close button."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:268
+msgid "The [StyleBox] used when [member comment] is enabled."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:271
+msgid ""
+"The [StyleBox] used when [member comment] is enabled and the [GraphNode] is "
+"focused."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:278
+msgid "The default background for [GraphNode]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:281
+msgid "The icon used for representing ports."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:284
+msgid "Horizontal offset for the ports."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:287
+msgid ""
+"The background used when [member overlay] is set to [constant "
+"OVERLAY_POSITION]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:290
+msgid "The icon used for resizer, visible when [member resizable] is enabled."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:293
+msgid "The color modulation applied to the resizer icon."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:296
+msgid "The background used when the [GraphNode] is selected."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:299
+msgid "The vertical distance between ports."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:302
+msgid "Color of the title text."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:305
+msgid "Font used for the title text."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:308
+msgid "Vertical offset of the title text."
+msgstr ""
+
+#: doc/classes/GridContainer.xml:4
+msgid "Grid container used to arrange elements in a grid like layout."
+msgstr ""
+
+#: doc/classes/GridContainer.xml:7
+msgid ""
+"Grid container will arrange its children in a grid like structure, the grid "
+"columns are specified using the [member columns] property and the number of "
+"rows will be equal to the number of children in the container divided by the "
+"number of columns. For example, if the container has 5 children, and 2 "
+"columns, there will be 3 rows in the container.\n"
+"Notice that grid layout will preserve the columns and rows for every size of "
+"the container, and that empty columns will be expanded automatically."
+msgstr ""
+
+#: doc/classes/GridContainer.xml:16
+msgid ""
+"The number of columns in the [GridContainer]. If modified, [GridContainer] "
+"reorders its children to accommodate the new layout."
+msgstr ""
+
+#: doc/classes/GridContainer.xml:23
+msgid "The horizontal separation of children nodes."
+msgstr ""
+
+#: doc/classes/GridContainer.xml:26
+msgid "The vertical separation of children nodes."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:4
+msgid "Node for 3D tile-based maps."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:7
+msgid ""
+"GridMap lets you place meshes on a grid interactively. It works both from "
+"the editor and from scripts, which can help you create in-game level "
+"editors.\n"
+"GridMaps use a [MeshLibrary] which contains a list of tiles. Each tile is a "
+"mesh with materials plus optional collision and navigation shapes.\n"
+"A GridMap contains a collection of cells. Each grid cell refers to a tile in "
+"the [MeshLibrary]. All cells in the map have the same dimensions.\n"
+"Internally, a GridMap is split into a sparse collection of octants for "
+"efficient rendering and physics processing. Every octant has the same "
+"dimensions and can contain several cells."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:13
+msgid "https://docs.godotengine.org/en/latest/tutorials/3d/using_gridmaps.html"
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:20
+msgid "Clear all cells."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:49
+msgid ""
+"The [MeshLibrary] item index located at the given grid coordinates. If the "
+"cell is empty, [constant INVALID_CELL_ITEM] will be returned."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:58
+msgid ""
+"The orientation of the cell at the given grid coordinates. [code]-1[/code] "
+"is returned if the cell is empty."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:67 doc/classes/PhysicsBody2D.xml:35
+#: doc/classes/PhysicsBody3D.xml:35
+msgid "Returns an individual bit on the [member collision_layer]."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:76 doc/classes/PhysicsBody2D.xml:44
+#: doc/classes/PhysicsBody3D.xml:44
+msgid "Returns an individual bit on the [member collision_mask]."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:83
+msgid ""
+"Returns an array of [Transform] and [Mesh] references corresponding to the "
+"non-empty cells in the grid. The transforms are specified in world space."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:90
+msgid ""
+"Returns an array of [Vector3] with the non-empty cell coordinates in the "
+"grid map."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:109
+msgid ""
+"Returns the position of a grid cell in the GridMap's local coordinate space."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:130
+msgid ""
+"Sets the mesh index for the cell referenced by its grid coordinates.\n"
+"A negative item index such as [constant INVALID_CELL_ITEM] will clear the "
+"cell.\n"
+"Optionally, the item's orientation can be passed. For valid orientation "
+"values, see [method Basis.get_orthogonal_index]."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:157
+msgid "Sets an individual bit on the [member collision_layer]."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:168
+msgid "Sets an individual bit on the [member collision_mask]."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:177
+msgid ""
+"Returns the coordinates of the grid cell containing the given point.\n"
+"[code]pos[/code] should be in the GridMap's local coordinate space."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:184
+msgid "If [code]true[/code], grid items are centered on the X axis."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:187
+msgid "If [code]true[/code], grid items are centered on the Y axis."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:190
+msgid "If [code]true[/code], grid items are centered on the Z axis."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:193
+msgid ""
+"The size of each octant measured in number of cells. This applies to all "
+"three axis."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:196
+msgid ""
+"The scale of the cell items.\n"
+"This does not affect the size of the grid cells themselves, only the items "
+"in them. This can be used to make cell items overlap their neighbors."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:200
+msgid ""
+"The dimensions of the grid's cells.\n"
+"This does not affect the size of the meshes. See [member cell_scale]."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:204
+msgid ""
+"The physics layers this GridMap is in.\n"
+"GridMaps act as static bodies, meaning they aren't affected by gravity or "
+"other forces. They only affect other physics bodies that collide with them."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:208
+msgid "The physics layers this GridMap detects collisions in."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:211
+msgid "The assigned [MeshLibrary]."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:219
+msgid "Emitted when [member cell_size] changes."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:225
+msgid ""
+"Invalid cell item that can be used in [method set_cell_item] to clear cells "
+"(or represent an empty cell in [method get_cell_item])."
+msgstr ""
+
+#: doc/classes/GrooveJoint2D.xml:4
+msgid "Groove constraint for 2D physics."
+msgstr ""
+
+#: doc/classes/GrooveJoint2D.xml:7
+msgid ""
+"Groove constraint for 2D physics. This is useful for making a body \"slide\" "
+"through a segment placed in another."
+msgstr ""
+
+#: doc/classes/GrooveJoint2D.xml:15
+msgid ""
+"The body B's initial anchor position defined by the joint's origin and a "
+"local offset [member initial_offset] along the joint's Y axis (along the "
+"groove)."
+msgstr ""
+
+#: doc/classes/GrooveJoint2D.xml:18
+msgid ""
+"The groove's length. The groove is from the joint's origin towards [member "
+"length] along the joint's local Y axis."
+msgstr ""
+
+#: doc/classes/HashingContext.xml:4
+msgid "Context to compute cryptographic hashes over multiple iterations."
+msgstr ""
+
+#: doc/classes/HashingContext.xml:7
+msgid ""
+"The HashingContext class provides an interface for computing cryptographic "
+"hashes over multiple iterations. This is useful for example when computing "
+"hashes of big files (so you don't have to load them all in memory), network "
+"streams, and data streams in general (so you don't have to hold buffers).\n"
+"The [enum HashType] enum shows the supported hashing algorithms.\n"
+"[codeblock]\n"
+"const CHUNK_SIZE = 1024\n"
+"\n"
+"func hash_file(path):\n"
+" var ctx = HashingContext.new()\n"
+" var file = File.new()\n"
+" # Start a SHA-256 context.\n"
+" ctx.start(HashingContext.HASH_SHA256)\n"
+" # Check that file exists.\n"
+" if not file.file_exists(path):\n"
+" return\n"
+" # Open the file to hash.\n"
+" file.open(path, File.READ)\n"
+" # Update the context after reading each chunk.\n"
+" while not file.eof_reached():\n"
+" ctx.update(file.get_buffer(CHUNK_SIZE))\n"
+" # Get the computed hash.\n"
+" var res = ctx.finish()\n"
+" # Print the result as hex string and array.\n"
+" printt(res.hex_encode(), Array(res))\n"
+"[/codeblock]\n"
+"[b]Note:[/b] Not available in HTML5 exports."
+msgstr ""
+
+#: doc/classes/HashingContext.xml:39
+msgid "Closes the current context, and return the computed hash."
+msgstr ""
+
+#: doc/classes/HashingContext.xml:48
+msgid ""
+"Starts a new hash computation of the given [code]type[/code] (e.g. [constant "
+"HASH_SHA256] to start computation of a SHA-256)."
+msgstr ""
+
+#: doc/classes/HashingContext.xml:57
+msgid "Updates the computation with the given [code]chunk[/code] of data."
+msgstr ""
+
+#: doc/classes/HashingContext.xml:63
+msgid "Hashing algorithm: MD5."
+msgstr ""
+
+#: doc/classes/HashingContext.xml:66
+msgid "Hashing algorithm: SHA-1."
+msgstr ""
+
+#: doc/classes/HashingContext.xml:69
+msgid "Hashing algorithm: SHA-256."
+msgstr ""
+
+#: doc/classes/HBoxContainer.xml:4
+msgid "Horizontal box container."
+msgstr ""
+
+#: doc/classes/HBoxContainer.xml:7
+msgid "Horizontal box container. See [BoxContainer]."
+msgstr ""
+
+#: doc/classes/HBoxContainer.xml:17
+msgid "The horizontal space between the [HBoxContainer]'s elements."
+msgstr ""
+
+#: doc/classes/HeightMapShape3D.xml:4
+msgid "Height map shape for 3D physics (Bullet only)."
+msgstr ""
+
+#: doc/classes/HeightMapShape3D.xml:7
+msgid ""
+"Height map shape resource, which can be added to a [PhysicsBody3D] or "
+"[Area3D]."
+msgstr ""
+
+#: doc/classes/HeightMapShape3D.xml:15
+msgid ""
+"Height map data, pool array must be of [member map_width] * [member "
+"map_depth] size."
+msgstr ""
+
+#: doc/classes/HeightMapShape3D.xml:18
+msgid ""
+"Depth of the height map data. Changing this will resize the [member "
+"map_data]."
+msgstr ""
+
+#: doc/classes/HeightMapShape3D.xml:21
+msgid ""
+"Width of the height map data. Changing this will resize the [member "
+"map_data]."
+msgstr ""
+
+#: doc/classes/HingeJoint3D.xml:4
+msgid "A hinge between two 3D bodies."
+msgstr ""
+
+#: doc/classes/HingeJoint3D.xml:7
+msgid ""
+"A HingeJoint3D normally uses the Z axis of body A as the hinge axis, another "
+"axis can be specified when adding it manually though."
+msgstr ""
+
+#: doc/classes/HingeJoint3D.xml:18 doc/classes/SpriteBase3D.xml:24
+msgid "Returns the value of the specified flag."
+msgstr ""
+
+#: doc/classes/HingeJoint3D.xml:27 doc/classes/ParticlesMaterial.xml:29
+#: doc/classes/PinJoint3D.xml:18
+msgid "Returns the value of the specified parameter."
+msgstr ""
+
+#: doc/classes/HingeJoint3D.xml:38
+msgid "If [code]true[/code], enables the specified flag."
+msgstr ""
+
+#: doc/classes/HingeJoint3D.xml:49 doc/classes/PinJoint3D.xml:29
+msgid "Sets the value of the specified parameter."
+msgstr ""
+
+#: doc/classes/HingeJoint3D.xml:55 doc/classes/HingeJoint3D.xml:95
+#: doc/classes/PhysicsServer3D.xml:1301
+msgid ""
+"The speed with which the rotation across the axis perpendicular to the hinge "
+"gets corrected."
+msgstr ""
+
+#: doc/classes/HingeJoint3D.xml:58 doc/classes/HingeJoint3D.xml:112
+msgid ""
+"If [code]true[/code], the hinges maximum and minimum rotation, defined by "
+"[member angular_limit/lower] and [member angular_limit/upper] has effects."
+msgstr ""
+
+#: doc/classes/HingeJoint3D.xml:61 doc/classes/HingeJoint3D.xml:92
+msgid ""
+"The minimum rotation. Only active if [member angular_limit/enable] is "
+"[code]true[/code]."
+msgstr ""
+
+#: doc/classes/HingeJoint3D.xml:64 doc/classes/HingeJoint3D.xml:100
+#: doc/classes/PhysicsServer3D.xml:1306
+msgid "The lower this value, the more the rotation gets slowed down."
+msgstr ""
+
+#: doc/classes/HingeJoint3D.xml:69 doc/classes/HingeJoint3D.xml:89
+msgid ""
+"The maximum rotation. Only active if [member angular_limit/enable] is "
+"[code]true[/code]."
+msgstr ""
+
+#: doc/classes/HingeJoint3D.xml:72 doc/classes/HingeJoint3D.xml:115
+msgid "When activated, a motor turns the hinge."
+msgstr ""
+
+#: doc/classes/HingeJoint3D.xml:75 doc/classes/HingeJoint3D.xml:106
+#: doc/classes/PhysicsServer3D.xml:1312
+msgid "Maximum acceleration for the motor."
+msgstr ""
+
+#: doc/classes/HingeJoint3D.xml:78 doc/classes/HingeJoint3D.xml:103
+#: doc/classes/PhysicsServer3D.xml:1309
+msgid "Target speed for the motor."
+msgstr ""
+
+#: doc/classes/HingeJoint3D.xml:81 doc/classes/HingeJoint3D.xml:86
+#: doc/classes/PhysicsServer3D.xml:1292
+msgid ""
+"The speed with which the two bodies get pulled together when they move in "
+"different directions."
+msgstr ""
+
+#: doc/classes/HScrollBar.xml:4
+msgid "Horizontal scroll bar."
+msgstr ""
+
+#: doc/classes/HScrollBar.xml:7
+msgid ""
+"Horizontal version of [ScrollBar], which goes from left (min) to right (max)."
+msgstr ""
+
+#: doc/classes/HScrollBar.xml:17
+msgid ""
+"Icon used as a button to scroll the [ScrollBar] left. Supports custom step "
+"using the [member ScrollBar.custom_step] property."
+msgstr ""
+
+#: doc/classes/HScrollBar.xml:20 doc/classes/VScrollBar.xml:24
+msgid "Displayed when the mouse cursor hovers over the decrement button."
+msgstr ""
+
+#: doc/classes/HScrollBar.xml:23 doc/classes/VScrollBar.xml:27
+msgid ""
+"Used as texture for the grabber, the draggable element representing current "
+"scroll."
+msgstr ""
+
+#: doc/classes/HScrollBar.xml:26 doc/classes/VScrollBar.xml:30
+msgid "Used when the mouse hovers over the grabber."
+msgstr ""
+
+#: doc/classes/HScrollBar.xml:29 doc/classes/VScrollBar.xml:33
+msgid "Used when the grabber is being dragged."
+msgstr ""
+
+#: doc/classes/HScrollBar.xml:32
+msgid ""
+"Icon used as a button to scroll the [ScrollBar] right. Supports custom step "
+"using the [member ScrollBar.custom_step] property."
+msgstr ""
+
+#: doc/classes/HScrollBar.xml:35 doc/classes/VScrollBar.xml:39
+msgid "Displayed when the mouse cursor hovers over the increment button."
+msgstr ""
+
+#: doc/classes/HScrollBar.xml:38 doc/classes/VScrollBar.xml:42
+msgid "Used as background of this [ScrollBar]."
+msgstr ""
+
+#: doc/classes/HScrollBar.xml:41 doc/classes/VScrollBar.xml:45
+msgid "Used as background when the [ScrollBar] has the GUI focus."
+msgstr ""
+
+#: doc/classes/HSeparator.xml:4
+msgid "Horizontal separator."
+msgstr ""
+
+#: doc/classes/HSeparator.xml:7
+msgid ""
+"Horizontal separator. See [Separator]. Even though it looks horizontal, it "
+"is used to separate objects vertically."
+msgstr ""
+
+#: doc/classes/HSeparator.xml:17
+msgid ""
+"The height of the area covered by the separator. Effectively works like a "
+"minimum height."
+msgstr ""
+
+#: doc/classes/HSeparator.xml:20
+msgid "The style for the separator line. Works best with [StyleBoxLine]."
+msgstr ""
+
+#: doc/classes/HSlider.xml:4
+msgid "Horizontal slider."
+msgstr ""
+
+#: doc/classes/HSlider.xml:7
+msgid ""
+"Horizontal slider. See [Slider]. This one goes from left (min) to right "
+"(max)."
+msgstr ""
+
+#: doc/classes/HSlider.xml:17 doc/classes/VSlider.xml:21
+msgid "The texture for the grabber (the draggable element)."
+msgstr ""
+
+#: doc/classes/HSlider.xml:20
+msgid "The background of the area to the left of the grabber."
+msgstr ""
+
+#: doc/classes/HSlider.xml:25 doc/classes/VSlider.xml:29
+msgid "The texture for the grabber when it's disabled."
+msgstr ""
+
+#: doc/classes/HSlider.xml:28 doc/classes/VSlider.xml:32
+msgid "The texture for the grabber when it's focused."
+msgstr ""
+
+#: doc/classes/HSlider.xml:31
+msgid ""
+"The background for the whole slider. Determines the height of the "
+"[code]grabber_area[/code]."
+msgstr ""
+
+#: doc/classes/HSlider.xml:34 doc/classes/VSlider.xml:38
+msgid ""
+"The texture for the ticks, visible when [member Slider.tick_count] is "
+"greater than 0."
+msgstr ""
+
+#: doc/classes/HSplitContainer.xml:4
+msgid "Horizontal split container."
+msgstr ""
+
+#: doc/classes/HSplitContainer.xml:7
+msgid ""
+"Horizontal split container. See [SplitContainer]. This goes from left to "
+"right."
+msgstr ""
+
+#: doc/classes/HSplitContainer.xml:17 doc/classes/VSplitContainer.xml:17
+msgid ""
+"Boolean value. If 1 ([code]true[/code]), the grabber will hide automatically "
+"when it isn't under the cursor. If 0 ([code]false[/code]), it's always "
+"visible."
+msgstr ""
+
+#: doc/classes/HSplitContainer.xml:22 doc/classes/VSplitContainer.xml:22
+msgid "The icon used for the grabber drawn in the middle area."
+msgstr ""
+
+#: doc/classes/HSplitContainer.xml:25 doc/classes/VSplitContainer.xml:25
+msgid "The space between sides of the container."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:4
+msgid "Hyper-text transfer protocol client."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:7
+msgid ""
+"Hyper-text transfer protocol client (sometimes called \"User Agent\"). Used "
+"to make HTTP requests to download web content, upload files and other data "
+"or to communicate with various services, among other use cases. See "
+"[HTTPRequest] for an higher-level alternative.\n"
+"[b]Note:[/b] This client only needs to connect to a host once (see [method "
+"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 [method request] for a "
+"full example and to get started.\n"
+"A [HTTPClient] should be reused between multiple requests or to connect to "
+"different hosts instead of creating one client per request. Supports SSL and "
+"SSL 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.\n"
+"For more information on HTTP, see https://developer.mozilla.org/en-US/docs/"
+"Web/HTTP (or read RFC 2616 to get it straight from the source: https://tools."
+"ietf.org/html/rfc2616).\n"
+"[b]Note:[/b] When performing HTTP requests from a project exported to HTML5, "
+"keep in mind the remote server may not allow requests from foreign origins "
+"due to [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/"
+"url]. If you host the server in question, you should modify its backend to "
+"allow requests from foreign origins by adding the [code]Access-Control-Allow-"
+"Origin: *[/code] HTTP header."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:14
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/networking/"
+"http_client_class.html"
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:15 doc/classes/HTTPRequest.xml:71
+#: doc/classes/StreamPeerSSL.xml:10
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/networking/ssl_certificates."
+"html"
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:22
+msgid "Closes the current connection, allowing reuse of this [HTTPClient]."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:37
+msgid ""
+"Connects to a host. This needs to be done before any requests are sent.\n"
+"The host should not have http:// prepended but will strip the protocol "
+"identifier if provided.\n"
+"If no [code]port[/code] is specified (or [code]-1[/code] is used), it is "
+"automatically set to 80 for HTTP and 443 for HTTPS (if [code]use_ssl[/code] "
+"is enabled).\n"
+"[code]verify_host[/code] will check the SSL identity of the host if set to "
+"[code]true[/code]."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:47
+msgid ""
+"Returns the response's body length.\n"
+"[b]Note:[/b] Some Web servers may not send a body length. In this case, the "
+"value returned will be [code]-1[/code]. If using chunked transfer encoding, "
+"the body length will also be [code]-1[/code]."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:55
+msgid "Returns the response's HTTP status code."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:62
+msgid "Returns the response headers."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:69
+msgid ""
+"Returns all response headers as a Dictionary of structure [code]{ \"key\": "
+"\"value1; value2\" }[/code] where the case-sensitivity of the keys and "
+"values is kept like the server delivers it. A value is a simple String, this "
+"string can have more than one value where \"; \" is used as separator.\n"
+"[b]Example:[/b]\n"
+"[codeblock]\n"
+"{\n"
+" \"content-length\": 12,\n"
+" \"Content-Type\": \"application/json; charset=UTF-8\",\n"
+"}\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:83
+msgid ""
+"Returns a [enum Status] constant. Need to call [method poll] in order to get "
+"status updates."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:90
+msgid "If [code]true[/code], this [HTTPClient] has a response available."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:97
+msgid "If [code]true[/code], this [HTTPClient] has a response that is chunked."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:104
+msgid ""
+"This needs to be called in order to have any request processed. Check "
+"results with [method get_status]."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:113
+msgid ""
+"Generates a GET/POST application/x-www-form-urlencoded style query string "
+"from a provided dictionary, e.g.:\n"
+"[codeblock]\n"
+"var fields = {\"username\": \"user\", \"password\": \"pass\"}\n"
+"var query_string = http_client.query_string_from_dict(fields)\n"
+"# Returns \"username=user&password=pass\"\n"
+"[/codeblock]\n"
+"Furthermore, if a key has a [code]null[/code] value, only the key itself is "
+"added, without equal sign and value. If the value is an array, for each "
+"value in it a pair with the same key is added.\n"
+"[codeblock]\n"
+"var fields = {\"single\": 123, \"not_valued\": null, \"multiple\": [22, 33, "
+"44]}\n"
+"var query_string = http_client.query_string_from_dict(fields)\n"
+"# Returns \"single=123&not_valued&multiple=22&multiple=33&multiple=44\"\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:131
+msgid "Reads one chunk from the response."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:146
+msgid ""
+"Sends a request to the connected host. The URL parameter is just the part "
+"after the host, so for [code]http://somehost.com/index.php[/code], it is "
+"[code]index.php[/code].\n"
+"Headers are HTTP request headers. For available HTTP methods, see [enum "
+"Method].\n"
+"To create a POST request with query strings to push to the server, do:\n"
+"[codeblock]\n"
+"var fields = {\"username\" : \"user\", \"password\" : \"pass\"}\n"
+"var query_string = http_client.query_string_from_dict(fields)\n"
+"var headers = [\"Content-Type: application/x-www-form-urlencoded\", "
+"\"Content-Length: \" + str(query_string.length())]\n"
+"var result = http_client.request(http_client.METHOD_POST, \"index.php\", "
+"headers, query_string)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:169
+msgid ""
+"Sends a raw request to the connected host. The URL parameter is just the "
+"part after the host, so for [code]http://somehost.com/index.php[/code], it "
+"is [code]index.php[/code].\n"
+"Headers are HTTP request headers. For available HTTP methods, see [enum "
+"Method].\n"
+"Sends the body data raw, as a byte array and does not encode it in any way."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:177
+msgid ""
+"If [code]true[/code], execution will block until all data is read from the "
+"response."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:180
+msgid "The connection to use for this client."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:183
+msgid ""
+"The size of the buffer used and maximum bytes to read per iteration. See "
+"[method read_response_body_chunk]."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:188
+msgid ""
+"HTTP GET method. The GET method requests a representation of the specified "
+"resource. Requests using GET should only retrieve data."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:191
+msgid ""
+"HTTP HEAD method. The HEAD method asks for a response identical to that of a "
+"GET request, but without the response body. This is useful to request "
+"metadata like HTTP headers or to check if a resource exists."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:194
+msgid ""
+"HTTP POST method. The POST method is used to submit an entity to the "
+"specified resource, often causing a change in state or side effects on the "
+"server. This is often used for forms and submitting data or uploading files."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:197
+msgid ""
+"HTTP PUT method. The PUT method asks to replace all current representations "
+"of the target resource with the request payload. (You can think of POST as "
+"\"create or update\" and PUT as \"update\", although many services tend to "
+"not make a clear distinction or change their meaning)."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:200
+msgid ""
+"HTTP DELETE method. The DELETE method requests to delete the specified "
+"resource."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:203
+msgid ""
+"HTTP OPTIONS method. The OPTIONS method asks for a description of the "
+"communication options for the target resource. Rarely used."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:206
+msgid ""
+"HTTP TRACE method. The TRACE method performs a message loop-back test along "
+"the path to the target resource. Returns the entire HTTP request received in "
+"the response body. Rarely used."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:209
+msgid ""
+"HTTP CONNECT method. The CONNECT method establishes a tunnel to the server "
+"identified by the target resource. Rarely used."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:212
+msgid ""
+"HTTP PATCH method. The PATCH method is used to apply partial modifications "
+"to a resource."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:215
+msgid "Represents the size of the [enum Method] enum."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:218
+msgid "Status: Disconnected from the server."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:221
+msgid "Status: Currently resolving the hostname for the given URL into an IP."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:224
+msgid "Status: DNS failure: Can't resolve the hostname for the given URL."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:227
+msgid "Status: Currently connecting to server."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:230
+msgid "Status: Can't connect to the server."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:233
+msgid "Status: Connection established."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:236
+msgid "Status: Currently sending request."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:239
+msgid "Status: HTTP body received."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:242
+msgid "Status: Error in HTTP connection."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:245
+msgid "Status: Error in SSL handshake."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:248
+msgid ""
+"HTTP status code [code]100 Continue[/code]. Interim response that indicates "
+"everything so far is OK and that the client should continue with the request "
+"(or ignore this status if already finished)."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:251
+msgid ""
+"HTTP status code [code]101 Switching Protocol[/code]. Sent in response to an "
+"[code]Upgrade[/code] request header by the client. Indicates the protocol "
+"the server is switching to."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:254
+msgid ""
+"HTTP status code [code]102 Processing[/code] (WebDAV). Indicates that the "
+"server has received and is processing the request, but no response is "
+"available yet."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:257
+msgid ""
+"HTTP status code [code]200 OK[/code]. The request has succeeded. Default "
+"response for successful requests. Meaning varies depending on the request. "
+"GET: The resource has been fetched and is transmitted in the message body. "
+"HEAD: The entity headers are in the message body. POST: The resource "
+"describing the result of the action is transmitted in the message body. "
+"TRACE: The message body contains the request message as received by the "
+"server."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:260
+msgid ""
+"HTTP status code [code]201 Created[/code]. The request has succeeded and a "
+"new resource has been created as a result of it. This is typically the "
+"response sent after a PUT request."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:263
+msgid ""
+"HTTP status code [code]202 Accepted[/code]. The request has been received "
+"but not yet acted upon. It is non-committal, meaning that there is no way in "
+"HTTP to later send an asynchronous response indicating the outcome of "
+"processing the request. It is intended for cases where another process or "
+"server handles the request, or for batch processing."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:266
+msgid ""
+"HTTP status code [code]203 Non-Authoritative Information[/code]. This "
+"response code means returned meta-information set is not exact set as "
+"available from the origin server, but collected from a local or a third "
+"party copy. Except this condition, 200 OK response should be preferred "
+"instead of this response."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:269
+msgid ""
+"HTTP status code [code]204 No Content[/code]. There is no content to send "
+"for this request, but the headers may be useful. The user-agent may update "
+"its cached headers for this resource with the new ones."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:272
+msgid ""
+"HTTP status code [code]205 Reset Content[/code]. The server has fulfilled "
+"the request and desires that the client resets the \"document view\" that "
+"caused the request to be sent to its original state as received from the "
+"origin server."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:275
+msgid ""
+"HTTP status code [code]206 Partial Content[/code]. This response code is "
+"used because of a range header sent by the client to separate download into "
+"multiple streams."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:278
+msgid ""
+"HTTP status code [code]207 Multi-Status[/code] (WebDAV). A Multi-Status "
+"response conveys information about multiple resources in situations where "
+"multiple status codes might be appropriate."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:281
+msgid ""
+"HTTP status code [code]208 Already Reported[/code] (WebDAV). Used inside a "
+"DAV: propstat response element to avoid enumerating the internal members of "
+"multiple bindings to the same collection repeatedly."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:284
+msgid ""
+"HTTP status code [code]226 IM Used[/code] (WebDAV). The server has fulfilled "
+"a GET request for the resource, and the response is a representation of the "
+"result of one or more instance-manipulations applied to the current instance."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:287
+msgid ""
+"HTTP status code [code]300 Multiple Choice[/code]. The request has more than "
+"one possible responses and there is no standardized way to choose one of the "
+"responses. User-agent or user should choose one of them."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:290
+msgid ""
+"HTTP status code [code]301 Moved Permanently[/code]. Redirection. This "
+"response code means the URI of requested resource has been changed. The new "
+"URI is usually included in the response."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:293
+msgid ""
+"HTTP status code [code]302 Found[/code]. Temporary redirection. This "
+"response code means the URI of requested resource has been changed "
+"temporarily. New changes in the URI might be made in the future. Therefore, "
+"this same URI should be used by the client in future requests."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:296
+msgid ""
+"HTTP status code [code]303 See Other[/code]. The server is redirecting the "
+"user agent to a different resource, as indicated by a URI in the Location "
+"header field, which is intended to provide an indirect response to the "
+"original request."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:299
+msgid ""
+"HTTP status code [code]304 Not Modified[/code]. A conditional GET or HEAD "
+"request has been received and would have resulted in a 200 OK response if it "
+"were not for the fact that the condition evaluated to [code]false[/code]."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:302
+msgid ""
+"HTTP status code [code]305 Use Proxy[/code]. [i]Deprecated. Do not use.[/i]"
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:305
+msgid ""
+"HTTP status code [code]306 Switch Proxy[/code]. [i]Deprecated. Do not use.[/"
+"i]"
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:308
+msgid ""
+"HTTP status code [code]307 Temporary Redirect[/code]. The target resource "
+"resides temporarily under a different URI and the user agent MUST NOT change "
+"the request method if it performs an automatic redirection to that URI."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:311
+msgid ""
+"HTTP status code [code]308 Permanent Redirect[/code]. The target resource "
+"has been assigned a new permanent URI and any future references to this "
+"resource ought to use one of the enclosed URIs."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:314
+msgid ""
+"HTTP status code [code]400 Bad Request[/code]. The request was invalid. The "
+"server cannot or will not process the request due to something that is "
+"perceived to be a client error (e.g., malformed request syntax, invalid "
+"request message framing, invalid request contents, or deceptive request "
+"routing)."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:317
+msgid ""
+"HTTP status code [code]401 Unauthorized[/code]. Credentials required. The "
+"request has not been applied because it lacks valid authentication "
+"credentials for the target resource."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:320
+msgid ""
+"HTTP status code [code]402 Payment Required[/code]. This response code is "
+"reserved for future use. Initial aim for creating this code was using it for "
+"digital payment systems, however this is not currently used."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:323
+msgid ""
+"HTTP status code [code]403 Forbidden[/code]. The client does not have access "
+"rights to the content, i.e. they are unauthorized, so server is rejecting to "
+"give proper response. Unlike [code]401[/code], the client's identity is "
+"known to the server."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:326
+msgid ""
+"HTTP status code [code]404 Not Found[/code]. The server can not find "
+"requested resource. Either the URL is not recognized or the endpoint is "
+"valid but the resource itself does not exist. May also be sent instead of "
+"403 to hide existence of a resource if the client is not authorized."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:329
+msgid ""
+"HTTP status code [code]405 Method Not Allowed[/code]. The request's HTTP "
+"method is known by the server but has been disabled and cannot be used. For "
+"example, an API may forbid DELETE-ing a resource. The two mandatory methods, "
+"GET and HEAD, must never be disabled and should not return this error code."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:332
+msgid ""
+"HTTP status code [code]406 Not Acceptable[/code]. The target resource does "
+"not have a current representation that would be acceptable to the user "
+"agent, according to the proactive negotiation header fields received in the "
+"request. Used when negotiation content."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:335
+msgid ""
+"HTTP status code [code]407 Proxy Authentication Required[/code]. Similar to "
+"401 Unauthorized, but it indicates that the client needs to authenticate "
+"itself in order to use a proxy."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:338
+msgid ""
+"HTTP status code [code]408 Request Timeout[/code]. The server did not "
+"receive a complete request message within the time that it was prepared to "
+"wait."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:341
+msgid ""
+"HTTP status code [code]409 Conflict[/code]. The request could not be "
+"completed due to a conflict with the current state of the target resource. "
+"This code is used in situations where the user might be able to resolve the "
+"conflict and resubmit the request."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:344
+msgid ""
+"HTTP status code [code]410 Gone[/code]. The target resource is no longer "
+"available at the origin server and this condition is likely permanent."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:347
+msgid ""
+"HTTP status code [code]411 Length Required[/code]. The server refuses to "
+"accept the request without a defined Content-Length header."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:350
+msgid ""
+"HTTP status code [code]412 Precondition Failed[/code]. One or more "
+"conditions given in the request header fields evaluated to [code]false[/"
+"code] when tested on the server."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:353
+msgid ""
+"HTTP status code [code]413 Entity Too Large[/code]. The server is refusing "
+"to process a request because the request payload is larger than the server "
+"is willing or able to process."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:356
+msgid ""
+"HTTP status code [code]414 Request-URI Too Long[/code]. The server is "
+"refusing to service the request because the request-target is longer than "
+"the server is willing to interpret."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:359
+msgid ""
+"HTTP status code [code]415 Unsupported Media Type[/code]. The origin server "
+"is refusing to service the request because the payload is in a format not "
+"supported by this method on the target resource."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:362
+msgid ""
+"HTTP status code [code]416 Requested Range Not Satisfiable[/code]. None of "
+"the ranges in the request's Range header field overlap the current extent of "
+"the selected resource or the set of ranges requested has been rejected due "
+"to invalid ranges or an excessive request of small or overlapping ranges."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:365
+msgid ""
+"HTTP status code [code]417 Expectation Failed[/code]. The expectation given "
+"in the request's Expect header field could not be met by at least one of the "
+"inbound servers."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:368
+msgid ""
+"HTTP status code [code]418 I'm A Teapot[/code]. Any attempt to brew coffee "
+"with a teapot should result in the error code \"418 I'm a teapot\". The "
+"resulting entity body MAY be short and stout."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:371
+msgid ""
+"HTTP status code [code]421 Misdirected Request[/code]. The request was "
+"directed at a server that is not able to produce a response. This can be "
+"sent by a server that is not configured to produce responses for the "
+"combination of scheme and authority that are included in the request URI."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:374
+msgid ""
+"HTTP status code [code]422 Unprocessable Entity[/code] (WebDAV). The server "
+"understands the content type of the request entity (hence a 415 Unsupported "
+"Media Type status code is inappropriate), and the syntax of the request "
+"entity is correct (thus a 400 Bad Request status code is inappropriate) but "
+"was unable to process the contained instructions."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:377
+msgid ""
+"HTTP status code [code]423 Locked[/code] (WebDAV). The source or destination "
+"resource of a method is locked."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:380
+msgid ""
+"HTTP status code [code]424 Failed Dependency[/code] (WebDAV). The method "
+"could not be performed on the resource because the requested action depended "
+"on another action and that action failed."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:383
+msgid ""
+"HTTP status code [code]426 Upgrade Required[/code]. The server refuses to "
+"perform the request using the current protocol but might be willing to do so "
+"after the client upgrades to a different protocol."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:386
+msgid ""
+"HTTP status code [code]428 Precondition Required[/code]. The origin server "
+"requires the request to be conditional."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:389
+msgid ""
+"HTTP status code [code]429 Too Many Requests[/code]. The user has sent too "
+"many requests in a given amount of time (see \"rate limiting\"). Back off "
+"and increase time between requests or try again later."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:392
+msgid ""
+"HTTP status code [code]431 Request Header Fields Too Large[/code]. The "
+"server is unwilling to process the request because its header fields are too "
+"large. The request MAY be resubmitted after reducing the size of the request "
+"header fields."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:395
+msgid ""
+"HTTP status code [code]451 Response Unavailable For Legal Reasons[/code]. "
+"The server is denying access to the resource as a consequence of a legal "
+"demand."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:398
+msgid ""
+"HTTP status code [code]500 Internal Server Error[/code]. The server "
+"encountered an unexpected condition that prevented it from fulfilling the "
+"request."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:401
+msgid ""
+"HTTP status code [code]501 Not Implemented[/code]. The server does not "
+"support the functionality required to fulfill the request."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:404
+msgid ""
+"HTTP status code [code]502 Bad Gateway[/code]. The server, while acting as a "
+"gateway or proxy, received an invalid response from an inbound server it "
+"accessed while attempting to fulfill the request. Usually returned by load "
+"balancers or proxies."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:407
+msgid ""
+"HTTP status code [code]503 Service Unavailable[/code]. The server is "
+"currently unable to handle the request due to a temporary overload or "
+"scheduled maintenance, which will likely be alleviated after some delay. Try "
+"again later."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:410
+msgid ""
+"HTTP status code [code]504 Gateway Timeout[/code]. The server, while acting "
+"as a gateway or proxy, did not receive a timely response from an upstream "
+"server it needed to access in order to complete the request. Usually "
+"returned by load balancers or proxies."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:413
+msgid ""
+"HTTP status code [code]505 HTTP Version Not Supported[/code]. The server "
+"does not support, or refuses to support, the major version of HTTP that was "
+"used in the request message."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:416
+msgid ""
+"HTTP status code [code]506 Variant Also Negotiates[/code]. The server has an "
+"internal configuration error: the chosen variant resource is configured to "
+"engage in transparent content negotiation itself, and is therefore not a "
+"proper end point in the negotiation process."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:419
+msgid ""
+"HTTP status code [code]507 Insufficient Storage[/code]. The method could not "
+"be performed on the resource because the server is unable to store the "
+"representation needed to successfully complete the request."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:422
+msgid ""
+"HTTP status code [code]508 Loop Detected[/code]. The server terminated an "
+"operation because it encountered an infinite loop while processing a request "
+"with \"Depth: infinity\". This status indicates that the entire operation "
+"failed."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:425
+msgid ""
+"HTTP status code [code]510 Not Extended[/code]. The policy for accessing the "
+"resource has not been met in the request. The server should send back all "
+"the information necessary for the client to issue an extended request."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:428
+msgid ""
+"HTTP status code [code]511 Network Authentication Required[/code]. The "
+"client needs to authenticate to gain network access."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:4
+msgid "A node with the ability to send HTTP(S) requests."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:7
+msgid ""
+"A node with the ability to send HTTP requests. Uses [HTTPClient] "
+"internally.\n"
+"Can be used to make HTTP requests, i.e. download or upload files or web "
+"content via HTTP.\n"
+"[b]Example of contacting a REST API and printing one of its returned fields:"
+"[/b]\n"
+"[codeblock]\n"
+"func _ready():\n"
+" # Create an HTTP request node and connect its completion signal.\n"
+" var http_request = HTTPRequest.new()\n"
+" add_child(http_request)\n"
+" http_request.connect(\"request_completed\", self, "
+"\"_http_request_completed\")\n"
+"\n"
+" # Perform a GET request. The URL below returns JSON as of writing.\n"
+" var error = http_request.request(\"https://httpbin.org/get\")\n"
+" if error != OK:\n"
+" push_error(\"An error occurred in the HTTP request.\")\n"
+"\n"
+" # Perform a POST request. The URL below returns JSON as of writing.\n"
+" # Note: Don't make simultaneous requests using a single HTTPRequest "
+"node.\n"
+" # The snippet below is provided for reference only.\n"
+" var body = {\"name\": \"Godette\"}\n"
+" var error = http_request.request(\"https://httpbin.org/post\", [], true, "
+"HTTPClient.METHOD_POST, body)\n"
+" if error != OK:\n"
+" push_error(\"An error occurred in the HTTP request.\")\n"
+"\n"
+"\n"
+"# Called when the HTTP request is completed.\n"
+"func _http_request_completed(result, response_code, headers, body):\n"
+" var response = parse_json(body.get_string_from_utf8())\n"
+"\n"
+" # Will print the user agent string used by the HTTPRequest node (as "
+"recognized by httpbin.org).\n"
+" print(response.headers[\"User-Agent\"])\n"
+"[/codeblock]\n"
+"[b]Example of loading and displaying an image using HTTPRequest:[/b]\n"
+"[codeblock]\n"
+"func _ready():\n"
+" # Create an HTTP request node and connect its completion signal.\n"
+" var http_request = HTTPRequest.new()\n"
+" add_child(http_request)\n"
+" http_request.connect(\"request_completed\", self, "
+"\"_http_request_completed\")\n"
+"\n"
+" # Perform the HTTP request. The URL below returns a PNG image as of "
+"writing.\n"
+" var error = http_request.request(\"https://via.placeholder.com/512\")\n"
+" if error != OK:\n"
+" push_error(\"An error occurred in the HTTP request.\")\n"
+"\n"
+"\n"
+"# Called when the HTTP request is completed.\n"
+"func _http_request_completed(result, response_code, headers, body):\n"
+" var image = Image.new()\n"
+" var error = image.load_png_from_buffer(body)\n"
+" if error != OK:\n"
+" push_error(\"Couldn't load the image.\")\n"
+"\n"
+" var texture = ImageTexture.new()\n"
+" texture.create_from_image(image)\n"
+"\n"
+" # Display the image in a TextureRect node.\n"
+" var texture_rect = TextureRect.new()\n"
+" add_child(texture_rect)\n"
+" texture_rect.texture = texture\n"
+"[/codeblock]\n"
+"[b]Note:[/b] When performing HTTP requests from a project exported to HTML5, "
+"keep in mind the remote server may not allow requests from foreign origins "
+"due to [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/"
+"url]. If you host the server in question, you should modify its backend to "
+"allow requests from foreign origins by adding the [code]Access-Control-Allow-"
+"Origin: *[/code] HTTP header."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:70
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/networking/"
+"http_request_class.html"
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:78
+msgid "Cancels the current request."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:85
+msgid ""
+"Returns the response body length.\n"
+"[b]Note:[/b] Some Web servers may not send a body length. In this case, the "
+"value returned will be [code]-1[/code]. If using chunked transfer encoding, "
+"the body length will also be [code]-1[/code]."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:93
+msgid "Returns the amount of bytes this HTTPRequest downloaded."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:100
+msgid ""
+"Returns the current status of the underlying [HTTPClient]. See [enum "
+"HTTPClient.Status]."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:117
+msgid ""
+"Creates request on the underlying [HTTPClient]. If there is no configuration "
+"errors, it tries to connect using [method HTTPClient.connect_to_host] and "
+"passes parameters onto [method HTTPClient.request].\n"
+"Returns [constant OK] if request is successfully created. (Does not imply "
+"that the server has responded), [constant ERR_UNCONFIGURED] if not in the "
+"tree, [constant ERR_BUSY] if still processing previous request, [constant "
+"ERR_INVALID_PARAMETER] if given string is not a valid URL format, or "
+"[constant ERR_CANT_CONNECT] if not using thread and the [HTTPClient] cannot "
+"connect to host."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:124
+msgid "Maximum allowed size for response bodies."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:127
+msgid ""
+"The size of the buffer used and maximum bytes to read per iteration. See "
+"[member HTTPClient.read_chunk_size].\n"
+"Set this to a higher value (e.g. 65536 for 64 KiB) when downloading large "
+"files to achieve better speeds at the cost of memory."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:131
+msgid "The file to download into. Will output any received file into it."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:134
+msgid "Maximum number of allowed redirects."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:139
+msgid "If [code]true[/code], multithreading is used to improve performance."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:153
+msgid "Emitted when a request is completed."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:159
+msgid "Request successful."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:164
+msgid "Request failed while connecting."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:167
+msgid "Request failed while resolving."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:170
+msgid "Request failed due to connection (read/write) error."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:173
+msgid "Request failed on SSL handshake."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:176
+msgid "Request does not have a response (yet)."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:179
+msgid "Request exceeded its maximum size limit, see [member body_size_limit]."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:182
+msgid "Request failed (currently unused)."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:185
+msgid "HTTPRequest couldn't open the download file."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:188
+msgid "HTTPRequest couldn't write to the download file."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:191
+msgid "Request reached its maximum redirect limit, see [member max_redirects]."
+msgstr ""
+
+#: doc/classes/Image.xml:4
+msgid "Image datatype."
+msgstr ""
+
+#: doc/classes/Image.xml:7
+msgid ""
+"Native image datatype. Contains image data, which can be converted to a "
+"[Texture2D], and several functions to interact with it. The maximum width "
+"and height for an [Image] are [constant MAX_WIDTH] and [constant "
+"MAX_HEIGHT].\n"
+"[b]Note:[/b] The maximum image size is 16384×16384 pixels due to graphics "
+"hardware limitations. Larger images will fail to import."
+msgstr ""
+
+#: doc/classes/Image.xml:23
+msgid ""
+"Alpha-blends [code]src_rect[/code] from [code]src[/code] image to this image "
+"at coordinates [code]dest[/code]."
+msgstr ""
+
+#: doc/classes/Image.xml:38
+msgid ""
+"Alpha-blends [code]src_rect[/code] from [code]src[/code] image to this image "
+"using [code]mask[/code] image at coordinates [code]dst[/code]. Alpha "
+"channels are required for both [code]src[/code] and [code]mask[/code]. "
+"[code]dst[/code] pixels and [code]src[/code] pixels will blend if the "
+"corresponding mask pixel's alpha value is not 0. [code]src[/code] image and "
+"[code]mask[/code] image [b]must[/b] have the same size (width and height) "
+"but they can have different formats."
+msgstr ""
+
+#: doc/classes/Image.xml:51
+msgid ""
+"Copies [code]src_rect[/code] from [code]src[/code] image to this image at "
+"coordinates [code]dst[/code]."
+msgstr ""
+
+#: doc/classes/Image.xml:66
+msgid ""
+"Blits [code]src_rect[/code] area from [code]src[/code] image to this image "
+"at the coordinates given by [code]dst[/code]. [code]src[/code] pixel is "
+"copied onto [code]dst[/code] if the corresponding [code]mask[/code] pixel's "
+"alpha value is not 0. [code]src[/code] image and [code]mask[/code] image "
+"[b]must[/b] have the same size (width and height) but they can have "
+"different formats."
+msgstr ""
+
+#: doc/classes/Image.xml:75
+msgid ""
+"Converts a bumpmap to a normalmap. A bumpmap provides a height offset per-"
+"pixel, while a normalmap provides a normal direction per pixel."
+msgstr ""
+
+#: doc/classes/Image.xml:82
+msgid "Removes the image's mipmaps."
+msgstr ""
+
+#: doc/classes/Image.xml:95
+msgid ""
+"Compresses the image to use less memory. Can not directly access pixel data "
+"while the image is compressed. Returns error if the chosen compression mode "
+"is not available. See [enum CompressMode] and [enum CompressSource] "
+"constants."
+msgstr ""
+
+#: doc/classes/Image.xml:116
+msgid "Converts the image's format. See [enum Format] constants."
+msgstr ""
+
+#: doc/classes/Image.xml:125
+msgid "Copies [code]src[/code] image to this image."
+msgstr ""
+
+#: doc/classes/Image.xml:140
+msgid ""
+"Creates an empty image of given size and format. See [enum Format] "
+"constants. If [code]use_mipmaps[/code] is [code]true[/code] then generate "
+"mipmaps for this image. See the [method generate_mipmaps]."
+msgstr ""
+
+#: doc/classes/Image.xml:157
+msgid ""
+"Creates a new image of given size and format. See [enum Format] constants. "
+"Fills the image with the given raw data. If [code]use_mipmaps[/code] is "
+"[code]true[/code] then loads mipmaps for this image from [code]data[/code]. "
+"See [method generate_mipmaps]."
+msgstr ""
+
+#: doc/classes/Image.xml:168
+msgid ""
+"Crops the image to the given [code]width[/code] and [code]height[/code]. If "
+"the specified size is larger than the current size, the extra area is filled "
+"with black pixels."
+msgstr ""
+
+#: doc/classes/Image.xml:175
+msgid ""
+"Decompresses the image if it is compressed. Returns an error if decompress "
+"function is not available."
+msgstr ""
+
+#: doc/classes/Image.xml:182
+msgid ""
+"Returns [constant ALPHA_BLEND] if the image has data for alpha values. "
+"Returns [constant ALPHA_BIT] if all the alpha values are stored in a single "
+"bit. Returns [constant ALPHA_NONE] if no data for alpha values is found."
+msgstr ""
+
+#: doc/classes/Image.xml:199
+msgid "Fills the image with a given [Color]."
+msgstr ""
+
+#: doc/classes/Image.xml:206
+msgid "Blends low-alpha pixels with nearby pixels."
+msgstr ""
+
+#: doc/classes/Image.xml:213
+msgid "Flips the image horizontally."
+msgstr ""
+
+#: doc/classes/Image.xml:220
+msgid "Flips the image vertically."
+msgstr ""
+
+#: doc/classes/Image.xml:229
+msgid ""
+"Generates mipmaps for the image. Mipmaps are pre-calculated and lower "
+"resolution copies of the image. Mipmaps are automatically used if the image "
+"needs to be scaled down when rendered. This improves image quality and the "
+"performance of the rendering. Returns an error if the image is compressed, "
+"in a custom format or if the image's width/height is 0."
+msgstr ""
+
+#: doc/classes/Image.xml:236
+msgid "Returns the image's raw data."
+msgstr ""
+
+#: doc/classes/Image.xml:243
+msgid "Returns the image's format. See [enum Format] constants."
+msgstr ""
+
+#: doc/classes/Image.xml:250
+msgid "Returns the image's height."
+msgstr ""
+
+#: doc/classes/Image.xml:259
+msgid ""
+"Returns the offset where the image's mipmap with index [code]mipmap[/code] "
+"is stored in the [code]data[/code] dictionary."
+msgstr ""
+
+#: doc/classes/Image.xml:270
+msgid ""
+"Returns the color of the pixel at [code](x, y)[/code]. This is the same as "
+"[method get_pixelv], but with two integer arguments instead of a [Vector2] "
+"argument."
+msgstr ""
+
+#: doc/classes/Image.xml:279
+msgid ""
+"Returns the color of the pixel at [code]src[/code]. This is the same as "
+"[method get_pixel], but with a [Vector2] argument instead of two integer "
+"arguments."
+msgstr ""
+
+#: doc/classes/Image.xml:288
+msgid ""
+"Returns a new image that is a copy of the image's area specified with "
+"[code]rect[/code]."
+msgstr ""
+
+#: doc/classes/Image.xml:295
+msgid "Returns the image's size (width and height)."
+msgstr ""
+
+#: doc/classes/Image.xml:302
+msgid ""
+"Returns a [Rect2] enclosing the visible portion of the image, considering "
+"each pixel with a non-zero alpha channel as visible."
+msgstr ""
+
+#: doc/classes/Image.xml:309
+msgid "Returns the image's width."
+msgstr ""
+
+#: doc/classes/Image.xml:316
+msgid "Returns [code]true[/code] if the image has generated mipmaps."
+msgstr ""
+
+#: doc/classes/Image.xml:323
+msgid "Returns [code]true[/code] if the image is compressed."
+msgstr ""
+
+#: doc/classes/Image.xml:330
+msgid "Returns [code]true[/code] if the image has no data."
+msgstr ""
+
+#: doc/classes/Image.xml:337
+msgid ""
+"Returns [code]true[/code] if all the image's pixels have an alpha value of "
+"0. Returns [code]false[/code] if any pixel has an alpha value higher than 0."
+msgstr ""
+
+#: doc/classes/Image.xml:346
+msgid ""
+"Loads an image from file [code]path[/code]. See [url=https://docs."
+"godotengine.org/en/latest/getting_started/workflow/assets/importing_images."
+"html#supported-image-formats]Supported image formats[/url] for a list of "
+"supported image formats and limitations."
+msgstr ""
+
+#: doc/classes/Image.xml:355
+msgid "Loads an image from the binary contents of a JPEG file."
+msgstr ""
+
+#: doc/classes/Image.xml:364
+msgid "Loads an image from the binary contents of a PNG file."
+msgstr ""
+
+#: doc/classes/Image.xml:373
+msgid "Loads an image from the binary contents of a TGA file."
+msgstr ""
+
+#: doc/classes/Image.xml:382
+msgid "Loads an image from the binary contents of a WebP file."
+msgstr ""
+
+#: doc/classes/Image.xml:389
+msgid ""
+"Converts the image's data to represent coordinates on a 3D plane. This is "
+"used when the image represents a normalmap. A normalmap can add lots of "
+"detail to a 3D surface without increasing the polygon count."
+msgstr ""
+
+#: doc/classes/Image.xml:396
+msgid ""
+"Multiplies color values with alpha values. Resulting color values for a "
+"pixel are [code](color * alpha)/256[/code]."
+msgstr ""
+
+#: doc/classes/Image.xml:409
+msgid ""
+"Resizes the image to the given [code]width[/code] and [code]height[/code]. "
+"New pixels are calculated using [code]interpolation[/code]. See "
+"[code]interpolation[/code] constants."
+msgstr ""
+
+#: doc/classes/Image.xml:418
+msgid ""
+"Resizes the image to the nearest power of 2 for the width and height. If "
+"[code]square[/code] is [code]true[/code] then set width and height to be the "
+"same."
+msgstr ""
+
+#: doc/classes/Image.xml:425
+msgid ""
+"Converts a standard RGBE (Red Green Blue Exponent) image to an sRGB image."
+msgstr ""
+
+#: doc/classes/Image.xml:436
+msgid ""
+"Saves the image as an EXR file to [code]path[/code]. If [code]grayscale[/"
+"code] is [code]true[/code] and the image has only one channel, it will be "
+"saved explicitly as monochrome rather than one red channel. This function "
+"will return [constant ERR_UNAVAILABLE] if Godot was compiled without the "
+"TinyEXR module."
+msgstr ""
+
+#: doc/classes/Image.xml:445
+msgid "Saves the image as a PNG file to [code]path[/code]."
+msgstr ""
+
+#: doc/classes/Image.xml:464
+msgid ""
+"Sets the [Color] of the pixel at [code](x, y)[/code]. Example:\n"
+"[codeblock]\n"
+"var img = Image.new()\n"
+"img.create(img_width, img_height, false, Image.FORMAT_RGBA8)\n"
+"img.set_pixel(x, y, color)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Image.xml:480
+msgid ""
+"Sets the [Color] of the pixel at [code](dst.x, dst.y)[/code]. Note that the "
+"[code]dst[/code] values must be integers. Example:\n"
+"[codeblock]\n"
+"var img = Image.new()\n"
+"img.create(img_width, img_height, false, Image.FORMAT_RGBA8)\n"
+"img.set_pixelv(Vector2(x, y), color)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Image.xml:492
+msgid "Shrinks the image by a factor of 2."
+msgstr ""
+
+#: doc/classes/Image.xml:499
+msgid "Converts the raw data from the sRGB colorspace to a linear scale."
+msgstr ""
+
+#: doc/classes/Image.xml:505
+msgid ""
+"Holds all of the image's color data in a given format. See [enum Format] "
+"constants."
+msgstr ""
+
+#: doc/classes/Image.xml:510
+msgid "The maximal width allowed for [Image] resources."
+msgstr ""
+
+#: doc/classes/Image.xml:513
+msgid "The maximal height allowed for [Image] resources."
+msgstr ""
+
+#: doc/classes/Image.xml:516
+msgid "Texture format with a single 8-bit depth representing luminance."
+msgstr ""
+
+#: doc/classes/Image.xml:519
+msgid ""
+"OpenGL texture format with two values, luminance and alpha each stored with "
+"8 bits."
+msgstr ""
+
+#: doc/classes/Image.xml:522
+msgid ""
+"OpenGL texture format [code]RED[/code] with a single component and a "
+"bitdepth of 8."
+msgstr ""
+
+#: doc/classes/Image.xml:525
+msgid ""
+"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
+"8 for each."
+msgstr ""
+
+#: doc/classes/Image.xml:528
+msgid ""
+"OpenGL texture format [code]RGB[/code] with three components, each with a "
+"bitdepth of 8.\n"
+"[b]Note:[/b] When creating an [ImageTexture], an sRGB to linear color space "
+"conversion is performed."
+msgstr ""
+
+#: doc/classes/Image.xml:532
+msgid ""
+"OpenGL texture format [code]RGBA[/code] with four components, each with a "
+"bitdepth of 8.\n"
+"[b]Note:[/b] When creating an [ImageTexture], an sRGB to linear color space "
+"conversion is performed."
+msgstr ""
+
+#: doc/classes/Image.xml:536
+msgid ""
+"OpenGL texture format [code]RGBA[/code] with four components, each with a "
+"bitdepth of 4."
+msgstr ""
+
+#: doc/classes/Image.xml:541
+msgid ""
+"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
+"bit floating-point value."
+msgstr ""
+
+#: doc/classes/Image.xml:544
+msgid ""
+"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
+"each a 32-bit floating-point values."
+msgstr ""
+
+#: doc/classes/Image.xml:547
+msgid ""
+"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
+"components, each a 32-bit floating-point values."
+msgstr ""
+
+#: doc/classes/Image.xml:550
+msgid ""
+"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
+"components, each a 32-bit floating-point values."
+msgstr ""
+
+#: doc/classes/Image.xml:553
+msgid ""
+"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 16-"
+"bit \"half-precision\" floating-point value."
+msgstr ""
+
+#: doc/classes/Image.xml:556
+msgid ""
+"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
+"each a 16-bit \"half-precision\" floating-point value."
+msgstr ""
+
+#: doc/classes/Image.xml:559
+msgid ""
+"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
+"components, each a 16-bit \"half-precision\" floating-point value."
+msgstr ""
+
+#: doc/classes/Image.xml:562
+msgid ""
+"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
+"components, each a 16-bit \"half-precision\" floating-point value."
+msgstr ""
+
+#: doc/classes/Image.xml:565
+msgid ""
+"A special OpenGL texture format where the three color components have 9 bits "
+"of precision and all three share a single 5-bit exponent."
+msgstr ""
+
+#: doc/classes/Image.xml:568
+msgid ""
+"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
+"texture format that uses Block Compression 1, and is the smallest variation "
+"of S3TC, only providing 1 bit of alpha and color data being premultiplied "
+"with alpha.\n"
+"[b]Note:[/b] When creating an [ImageTexture], an sRGB to linear color space "
+"conversion is performed."
+msgstr ""
+
+#: doc/classes/Image.xml:572
+msgid ""
+"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
+"texture format that uses Block Compression 2, and color data is interpreted "
+"as not having been premultiplied by alpha. Well suited for images with sharp "
+"alpha transitions between translucent and opaque areas.\n"
+"[b]Note:[/b] When creating an [ImageTexture], an sRGB to linear color space "
+"conversion is performed."
+msgstr ""
+
+#: doc/classes/Image.xml:576
+msgid ""
+"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
+"texture format also known as Block Compression 3 or BC3 that contains 64 "
+"bits of alpha channel data followed by 64 bits of DXT1-encoded color data. "
+"Color data is not premultiplied by alpha, same as DXT3. DXT5 generally "
+"produces superior results for transparent gradients compared to DXT3.\n"
+"[b]Note:[/b] When creating an [ImageTexture], an sRGB to linear color space "
+"conversion is performed."
+msgstr ""
+
+#: doc/classes/Image.xml:580
+msgid ""
+"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
+"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
+"normalizing the red channel data using the same compression algorithm that "
+"DXT5 uses for the alpha channel."
+msgstr ""
+
+#: doc/classes/Image.xml:583
+msgid ""
+"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
+"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
+"normalizing the red and green channel data using the same compression "
+"algorithm that DXT5 uses for the alpha channel."
+msgstr ""
+
+#: doc/classes/Image.xml:586
+msgid ""
+"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
+"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
+"RGBA components.\n"
+"[b]Note:[/b] When creating an [ImageTexture], an sRGB to linear color space "
+"conversion is performed."
+msgstr ""
+
+#: doc/classes/Image.xml:590
+msgid ""
+"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
+"BPTC_Texture_Compression]BPTC[/url] compression with signed floating-point "
+"RGB components."
+msgstr ""
+
+#: doc/classes/Image.xml:593
+msgid ""
+"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
+"BPTC_Texture_Compression]BPTC[/url] compression with unsigned floating-point "
+"RGB components."
+msgstr ""
+
+#: doc/classes/Image.xml:596
+msgid ""
+"Texture format used on PowerVR-supported mobile platforms, uses 2-bit color "
+"depth with no alpha. More information can be found [url=https://en.wikipedia."
+"org/wiki/PVRTC]here[/url].\n"
+"[b]Note:[/b] When creating an [ImageTexture], an sRGB to linear color space "
+"conversion is performed."
+msgstr ""
+
+#: doc/classes/Image.xml:600
+msgid ""
+"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
+"alpha component."
+msgstr ""
+
+#: doc/classes/Image.xml:603
+msgid ""
+"Similar to [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with 4-"
+"bit color depth and no alpha."
+msgstr ""
+
+#: doc/classes/Image.xml:606
+msgid ""
+"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
+"alpha component."
+msgstr ""
+
+#: doc/classes/Image.xml:609
+msgid ""
+"[url=https://en.wikipedia.org/wiki/"
+"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
+"url], also referred to as \"ETC1\", and is part of the OpenGL ES graphics "
+"standard. This format cannot store an alpha channel."
+msgstr ""
+
+#: doc/classes/Image.xml:612
+msgid ""
+"[url=https://en.wikipedia.org/wiki/"
+"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
+"format 2[/url] ([code]R11_EAC[/code] variant), which provides one channel of "
+"unsigned data."
+msgstr ""
+
+#: doc/classes/Image.xml:615
+msgid ""
+"[url=https://en.wikipedia.org/wiki/"
+"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
+"format 2[/url] ([code]SIGNED_R11_EAC[/code] variant), which provides one "
+"channel of signed data."
+msgstr ""
+
+#: doc/classes/Image.xml:618
+msgid ""
+"[url=https://en.wikipedia.org/wiki/"
+"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
+"format 2[/url] ([code]RG11_EAC[/code] variant), which provides two channels "
+"of unsigned data."
+msgstr ""
+
+#: doc/classes/Image.xml:621
+msgid ""
+"[url=https://en.wikipedia.org/wiki/"
+"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
+"format 2[/url] ([code]SIGNED_RG11_EAC[/code] variant), which provides two "
+"channels of signed data."
+msgstr ""
+
+#: doc/classes/Image.xml:624
+msgid ""
+"[url=https://en.wikipedia.org/wiki/"
+"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
+"format 2[/url] ([code]RGB8[/code] variant), which is a follow-up of ETC1 and "
+"compresses RGB888 data.\n"
+"[b]Note:[/b] When creating an [ImageTexture], an sRGB to linear color space "
+"conversion is performed."
+msgstr ""
+
+#: doc/classes/Image.xml:628
+msgid ""
+"[url=https://en.wikipedia.org/wiki/"
+"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
+"format 2[/url] ([code]RGBA8[/code]variant), which compresses RGBA8888 data "
+"with full alpha support.\n"
+"[b]Note:[/b] When creating an [ImageTexture], an sRGB to linear color space "
+"conversion is performed."
+msgstr ""
+
+#: doc/classes/Image.xml:632
+msgid ""
+"[url=https://en.wikipedia.org/wiki/"
+"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
+"format 2[/url] ([code]RGB8_PUNCHTHROUGH_ALPHA1[/code] variant), which "
+"compresses RGBA data to make alpha either fully transparent or fully "
+"opaque.\n"
+"[b]Note:[/b] When creating an [ImageTexture], an sRGB to linear color space "
+"conversion is performed."
+msgstr ""
+
+#: doc/classes/Image.xml:640
+msgid "Represents the size of the [enum Format] enum."
+msgstr ""
+
+#: doc/classes/Image.xml:643
+msgid ""
+"Performs nearest-neighbor interpolation. If the image is resized, it will be "
+"pixelated."
+msgstr ""
+
+#: doc/classes/Image.xml:646
+msgid ""
+"Performs bilinear interpolation. If the image is resized, it will be blurry. "
+"This mode is faster than [constant INTERPOLATE_CUBIC], but it results in "
+"lower quality."
+msgstr ""
+
+#: doc/classes/Image.xml:649
+msgid ""
+"Performs cubic interpolation. If the image is resized, it will be blurry. "
+"This mode often gives better results compared to [constant "
+"INTERPOLATE_BILINEAR], at the cost of being slower."
+msgstr ""
+
+#: doc/classes/Image.xml:652
+msgid ""
+"Performs bilinear separately on the two most-suited mipmap levels, then "
+"linearly interpolates between them.\n"
+"It's slower than [constant INTERPOLATE_BILINEAR], but produces higher-"
+"quality results with much less aliasing artifacts.\n"
+"If the image does not have mipmaps, they will be generated and used "
+"internally, but no mipmaps will be generated on the resulting image.\n"
+"[b]Note:[/b] If you intend to scale multiple copies of the original image, "
+"it's better to call [method generate_mipmaps]] on it in advance, to avoid "
+"wasting processing power in generating them again and again.\n"
+"On the other hand, if the image already has mipmaps, they will be used, and "
+"a new set will be generated for the resulting image."
+msgstr ""
+
+#: doc/classes/Image.xml:659
+msgid ""
+"Performs Lanczos interpolation. This is the slowest image resizing mode, but "
+"it typically gives the best results, especially when downscalng images."
+msgstr ""
+
+#: doc/classes/Image.xml:662
+msgid "Image does not have alpha."
+msgstr ""
+
+#: doc/classes/Image.xml:665
+msgid "Image stores alpha in a single bit."
+msgstr ""
+
+#: doc/classes/Image.xml:668
+msgid "Image uses alpha."
+msgstr ""
+
+#: doc/classes/Image.xml:671
+msgid "Use S3TC compression."
+msgstr ""
+
+#: doc/classes/Image.xml:674
+msgid "Use PVRTC2 compression."
+msgstr ""
+
+#: doc/classes/Image.xml:677
+msgid "Use PVRTC4 compression."
+msgstr ""
+
+#: doc/classes/Image.xml:680
+msgid "Use ETC compression."
+msgstr ""
+
+#: doc/classes/Image.xml:683
+msgid "Use ETC2 compression."
+msgstr ""
+
+#: doc/classes/Image.xml:698
+msgid ""
+"Source texture (before compression) is a regular texture. Default for all "
+"textures."
+msgstr ""
+
+#: doc/classes/Image.xml:701
+msgid "Source texture (before compression) is in sRGB space."
+msgstr ""
+
+#: doc/classes/Image.xml:704
+msgid ""
+"Source texture (before compression) is a normal texture (e.g. it can be "
+"compressed into two channels)."
+msgstr ""
+
+#: doc/classes/ImageTexture.xml:4
+msgid "A [Texture2D] based on an [Image]."
+msgstr ""
+
+#: doc/classes/ImageTexture.xml:7
+msgid ""
+"A [Texture2D] based on an [Image]. Can be created from an [Image] with "
+"[method create_from_image].\n"
+"[b]Note:[/b] The maximum image size is 16384×16384 pixels due to graphics "
+"hardware limitations. Larger images will fail to import."
+msgstr ""
+
+#: doc/classes/ImageTexture.xml:19
+msgid "Create a new [ImageTexture] from an [Image]."
+msgstr ""
+
+#: doc/classes/ImageTexture.xml:26
+msgid "Returns the format of the [ImageTexture], one of [enum Image.Format]."
+msgstr ""
+
+#: doc/classes/ImageTexture.xml:35
+msgid "Resizes the [ImageTexture] to the specified dimensions."
+msgstr ""
+
+#: doc/classes/ImageTexture.xml:46
+msgid ""
+"Replaces the texture's data with a new [code]image[/code]. If "
+"[code]immediate[/code] is [code]true[/code], it will take effect immediately "
+"after the call."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry3D.xml:4
+msgid "Draws simple geometry from code."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry3D.xml:7
+msgid ""
+"Draws simple geometry from code. Uses a drawing mode similar to OpenGL 1.x.\n"
+"See also [ArrayMesh], [MeshDataTool] and [SurfaceTool] for procedural "
+"geometry generation.\n"
+"[b]Note:[/b] ImmediateGeometry3D is best suited to small amounts of mesh "
+"data that change every frame. It will be slow when handling large amounts of "
+"mesh data. If mesh data doesn't change often, use [ArrayMesh], "
+"[MeshDataTool] or [SurfaceTool] instead.\n"
+"[b]Note:[/b] Godot uses clockwise [url=https://learnopengl.com/Advanced-"
+"OpenGL/Face-culling]winding order[/url] for front faces of triangle "
+"primitive modes."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry3D.xml:27
+msgid ""
+"Simple helper to draw an UV sphere with given latitude, longitude and radius."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry3D.xml:36
+msgid ""
+"Adds a vertex in local coordinate space with the currently set color/uv/etc."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry3D.xml:47
+msgid ""
+"Begin drawing (and optionally pass a texture override). When done call "
+"[method end]. For more information on how this works, search for "
+"[code]glBegin()[/code] and [code]glEnd()[/code] references.\n"
+"For the type of primitive, see the [enum Mesh.PrimitiveType] enum."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry3D.xml:55
+msgid "Clears everything that was drawn using begin/end."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry3D.xml:62
+msgid "Ends a drawing context and displays the results."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry3D.xml:71
+msgid "The current drawing color."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry3D.xml:80
+msgid "The next vertex's normal."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry3D.xml:89
+msgid "The next vertex's tangent (and binormal facing)."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry3D.xml:98
+msgid "The next vertex's UV."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry3D.xml:107
+msgid "The next vertex's second layer UV."
+msgstr ""
+
+#: doc/classes/Input.xml:4
+msgid "A singleton that deals with inputs."
+msgstr ""
+
+#: doc/classes/Input.xml:7
+msgid ""
+"A singleton that deals with inputs. This includes key presses, mouse buttons "
+"and movement, joypads, and input actions. Actions and their events can be "
+"set in the [b]Input Map[/b] tab in the [b]Project > Project Settings[/b], or "
+"with the [InputMap] class."
+msgstr ""
+
+#: doc/classes/Input.xml:10
+msgid "https://docs.godotengine.org/en/latest/tutorials/inputs/index.html"
+msgstr ""
+
+#: doc/classes/Input.xml:21
+msgid ""
+"This will simulate pressing the specified action.\n"
+"The strength can be used for non-boolean actions, it's ranged between 0 and "
+"1 representing the intensity of the given action.\n"
+"[b]Note:[/b] This method will not cause any [method Node._input] calls. It "
+"is intended to be used with [method is_action_pressed] and [method "
+"is_action_just_pressed]. If you want to simulate [code]_input[/code], use "
+"[method parse_input_event] instead."
+msgstr ""
+
+#: doc/classes/Input.xml:32
+msgid "If the specified action is already pressed, this will release it."
+msgstr ""
+
+#: doc/classes/Input.xml:43
+msgid ""
+"Adds a new mapping entry (in SDL2 format) to the mapping database. "
+"Optionally update already connected devices."
+msgstr ""
+
+#: doc/classes/Input.xml:50
+msgid ""
+"If the device has an accelerometer, this will return the acceleration. "
+"Otherwise, it returns an empty [Vector3].\n"
+"Note this method returns an empty [Vector3] when running from the editor "
+"even when your device has an accelerometer. You must export your project to "
+"a supported device to read values from the accelerometer."
+msgstr ""
+
+#: doc/classes/Input.xml:60
+msgid ""
+"Returns a value between 0 and 1 representing the intensity of the given "
+"action. In a joypad, for example, the further away the axis (analog sticks "
+"or L2, R2 triggers) is from the dead zone, the closer the value will be to "
+"1. If the action is mapped to a control that has no axis as the keyboard, "
+"the value returned will be 0 or 1."
+msgstr ""
+
+#: doc/classes/Input.xml:67
+msgid ""
+"Returns an [Array] containing the device IDs of all currently connected "
+"joypads."
+msgstr ""
+
+#: doc/classes/Input.xml:74
+msgid "Returns the currently assigned cursor shape (see [enum CursorShape])."
+msgstr ""
+
+#: doc/classes/Input.xml:81
+msgid ""
+"If the device has an accelerometer, this will return the gravity. Otherwise, "
+"it returns an empty [Vector3]."
+msgstr ""
+
+#: doc/classes/Input.xml:88
+msgid ""
+"If the device has a gyroscope, this will return the rate of rotation in rad/"
+"s around a device's X, Y, and Z axes. Otherwise, it returns an empty "
+"[Vector3]."
+msgstr ""
+
+#: doc/classes/Input.xml:99
+msgid ""
+"Returns the current value of the joypad axis at given index (see [enum "
+"JoyAxisList])."
+msgstr ""
+
+#: doc/classes/Input.xml:108
+msgid "Returns the index of the provided axis name."
+msgstr ""
+
+#: doc/classes/Input.xml:117
+msgid ""
+"Receives a [enum JoyAxisList] axis and returns its equivalent name as a "
+"string."
+msgstr ""
+
+#: doc/classes/Input.xml:126
+msgid "Returns the index of the provided button name."
+msgstr ""
+
+#: doc/classes/Input.xml:135
+msgid ""
+"Receives a gamepad button from [enum JoyButtonList] and returns its "
+"equivalent name as a string."
+msgstr ""
+
+#: doc/classes/Input.xml:144
+msgid ""
+"Returns a SDL2-compatible device GUID on platforms that use gamepad "
+"remapping. Returns [code]\"Default Gamepad\"[/code] otherwise."
+msgstr ""
+
+#: doc/classes/Input.xml:153
+msgid "Returns the name of the joypad at the specified device index."
+msgstr ""
+
+#: doc/classes/Input.xml:162
+msgid "Returns the duration of the current vibration effect in seconds."
+msgstr ""
+
+#: doc/classes/Input.xml:171
+msgid ""
+"Returns the strength of the joypad vibration: x is the strength of the weak "
+"motor, and y is the strength of the strong motor."
+msgstr ""
+
+#: doc/classes/Input.xml:178
+msgid ""
+"Returns the mouse speed for the last time the cursor was moved, and this "
+"until the next frame where the mouse moves. This means that even if the "
+"mouse is not moving, this function will still return the value of the last "
+"motion."
+msgstr ""
+
+#: doc/classes/Input.xml:185
+msgid ""
+"If the device has a magnetometer, this will return the magnetic field "
+"strength in micro-Tesla for all axes."
+msgstr ""
+
+#: doc/classes/Input.xml:192
+msgid ""
+"Returns mouse buttons as a bitmask. If multiple mouse buttons are pressed at "
+"the same time, the bits are added together."
+msgstr ""
+
+#: doc/classes/Input.xml:199
+msgid "Returns the mouse mode. See the constants for more information."
+msgstr ""
+
+#: doc/classes/Input.xml:208
+msgid ""
+"Returns [code]true[/code] when the user starts pressing the action event, "
+"meaning it's [code]true[/code] only on the frame that the user pressed down "
+"the button.\n"
+"This is useful for code that needs to run only once when an action is "
+"pressed, instead of every frame while it's pressed."
+msgstr ""
+
+#: doc/classes/Input.xml:218
+msgid ""
+"Returns [code]true[/code] when the user stops pressing the action event, "
+"meaning it's [code]true[/code] only on the frame that the user released the "
+"button."
+msgstr ""
+
+#: doc/classes/Input.xml:227
+msgid ""
+"Returns [code]true[/code] if you are pressing the action event. Note that if "
+"an action has multiple buttons assigned and more than one of them is "
+"pressed, releasing one button will release the action, even if some other "
+"button assigned to this action is still pressed."
+msgstr ""
+
+#: doc/classes/Input.xml:238
+msgid ""
+"Returns [code]true[/code] if you are pressing the joypad button (see [enum "
+"JoyButtonList])."
+msgstr ""
+
+#: doc/classes/Input.xml:247
+msgid ""
+"Returns [code]true[/code] if the system knows the specified device. This "
+"means that it sets all button and axis indices. Unknown joypads are not "
+"expected to match these constants, but you can still retrieve events from "
+"them."
+msgstr ""
+
+#: doc/classes/Input.xml:256
+msgid ""
+"Returns [code]true[/code] if you are pressing the key in the current "
+"keyboard layout. You can pass a [enum KeyList] constant."
+msgstr ""
+
+#: doc/classes/Input.xml:265
+msgid ""
+"Returns [code]true[/code] if you are pressing the mouse button specified "
+"with [enum ButtonList]."
+msgstr ""
+
+#: doc/classes/Input.xml:280
+msgid ""
+"Notifies the [Input] singleton that a connection has changed, to update the "
+"state for the [code]device[/code] index.\n"
+"This is used internally and should not have to be called from user scripts. "
+"See [signal joy_connection_changed] for the signal emitted when this is "
+"triggered internally."
+msgstr ""
+
+#: doc/classes/Input.xml:290
+msgid ""
+"Feeds an [InputEvent] to the game. Can be used to artificially trigger input "
+"events from code. Also generates [method Node._input] calls.\n"
+"Example:\n"
+"[codeblock]\n"
+"var a = InputEventAction.new()\n"
+"a.action = \"ui_cancel\"\n"
+"a.pressed = true\n"
+"Input.parse_input_event(a)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Input.xml:306
+msgid ""
+"Removes all mappings from the internal database that match the given GUID."
+msgstr ""
+
+#: doc/classes/Input.xml:319
+msgid ""
+"Sets a custom mouse cursor image, which is only visible inside the game "
+"window. The hotspot can also be specified. Passing [code]null[/code] to the "
+"image parameter resets to the system cursor. See [enum CursorShape] for the "
+"list of shapes.\n"
+"[code]image[/code]'s size must be lower than 256×256.\n"
+"[code]hotspot[/code] must be within [code]image[/code]'s size.\n"
+"[b]Note:[/b] [AnimatedTexture]s aren't supported as custom mouse cursors. If "
+"using an [AnimatedTexture], only the first frame will be displayed.\n"
+"[b]Note:[/b] Only images imported with the [b]Lossless[/b], [b]Lossy[/b] or "
+"[b]Uncompressed[/b] compression modes are supported. The [b]Video RAM[/b] "
+"compression mode can't be used for custom cursors."
+msgstr ""
+
+#: doc/classes/Input.xml:332
+msgid ""
+"Sets the default cursor shape to be used in the viewport instead of "
+"[constant CURSOR_ARROW].\n"
+"[b]Note:[/b] If you want to change the default cursor shape for [Control]'s "
+"nodes, use [member Control.mouse_default_cursor_shape] instead.\n"
+"[b]Note:[/b] This method generates an [InputEventMouseMotion] to update "
+"cursor immediately."
+msgstr ""
+
+#: doc/classes/Input.xml:343
+msgid "Sets the mouse mode. See the constants for more information."
+msgstr ""
+
+#: doc/classes/Input.xml:352
+msgid ""
+"Enables or disables the accumulation of similar input events sent by the "
+"operating system. When input accumulation is enabled, all input events "
+"generated during a frame will be merged and emitted when the frame is done "
+"rendering. Therefore, this limits the number of input method calls per "
+"second to the rendering FPS.\n"
+"Input accumulation is enabled by default. It can be disabled to get slightly "
+"more precise/reactive input at the cost of increased CPU usage. In "
+"applications where drawing freehand lines is required, input accumulation "
+"should generally be disabled while the user is drawing the line to get "
+"results that closely follow the actual input."
+msgstr ""
+
+#: doc/classes/Input.xml:368
+msgid ""
+"Starts to vibrate the joypad. Joypads usually come with two rumble motors, a "
+"strong and a weak one. [code]weak_magnitude[/code] is the strength of the "
+"weak motor (between 0 and 1) and [code]strong_magnitude[/code] is the "
+"strength of the strong motor (between 0 and 1). [code]duration[/code] is the "
+"duration of the effect in seconds (a duration of 0 will try to play the "
+"vibration indefinitely).\n"
+"[b]Note:[/b] Not every hardware is compatible with long effect durations; it "
+"is recommended to restart an effect if it has to be played for more than a "
+"few seconds."
+msgstr ""
+
+#: doc/classes/Input.xml:378
+msgid "Stops the vibration of the joypad."
+msgstr ""
+
+#: doc/classes/Input.xml:387
+msgid ""
+"Vibrate Android and iOS devices.\n"
+"[b]Note:[/b] It needs VIBRATE permission for Android at export settings. iOS "
+"does not support duration."
+msgstr ""
+
+#: doc/classes/Input.xml:397
+msgid "Sets the mouse position to the specified vector."
+msgstr ""
+
+#: doc/classes/Input.xml:408
+msgid "Emitted when a joypad device has been connected or disconnected."
+msgstr ""
+
+#: doc/classes/Input.xml:414
+msgid "Makes the mouse cursor visible if it is hidden."
+msgstr ""
+
+#: doc/classes/Input.xml:417
+msgid "Makes the mouse cursor hidden if it is visible."
+msgstr ""
+
+#: doc/classes/Input.xml:420
+msgid ""
+"Captures the mouse. The mouse will be hidden and unable to leave the game "
+"window, but it will still register movement and mouse button presses. On "
+"Windows and Linux, the mouse will use raw input mode, which means the "
+"reported movement will be unaffected by the OS' mouse acceleration settings."
+msgstr ""
+
+#: doc/classes/Input.xml:423
+msgid "Makes the mouse cursor visible but confines it to the game window."
+msgstr ""
+
+#: doc/classes/Input.xml:426
+msgid "Arrow cursor. Standard, default pointing cursor."
+msgstr ""
+
+#: doc/classes/Input.xml:429
+msgid ""
+"I-beam cursor. Usually used to show where the text cursor will appear when "
+"the mouse is clicked."
+msgstr ""
+
+#: doc/classes/Input.xml:432
+msgid ""
+"Pointing hand cursor. Usually used to indicate the pointer is over a link or "
+"other interactable item."
+msgstr ""
+
+#: doc/classes/Input.xml:435
+msgid ""
+"Cross cursor. Typically appears over regions in which a drawing operation "
+"can be performed or for selections."
+msgstr ""
+
+#: doc/classes/Input.xml:438
+msgid ""
+"Wait cursor. Indicates that the application is busy performing an operation. "
+"This cursor shape denotes that the application is still usable during the "
+"operation."
+msgstr ""
+
+#: doc/classes/Input.xml:441
+msgid ""
+"Busy cursor. Indicates that the application is busy performing an operation. "
+"This cursor shape denotes that the application isn't usable during the "
+"operation (e.g. something is blocking its main thread)."
+msgstr ""
+
+#: doc/classes/Input.xml:444
+msgid "Drag cursor. Usually displayed when dragging something."
+msgstr ""
+
+#: doc/classes/Input.xml:447
+msgid ""
+"Can drop cursor. Usually displayed when dragging something to indicate that "
+"it can be dropped at the current position."
+msgstr ""
+
+#: doc/classes/Input.xml:450
+msgid ""
+"Forbidden cursor. Indicates that the current action is forbidden (for "
+"example, when dragging something) or that the control at a position is "
+"disabled."
+msgstr ""
+
+#: doc/classes/Input.xml:453
+msgid ""
+"Vertical resize mouse cursor. A double-headed vertical arrow. It tells the "
+"user they can resize the window or the panel vertically."
+msgstr ""
+
+#: doc/classes/Input.xml:456
+msgid ""
+"Horizontal resize mouse cursor. A double-headed horizontal arrow. It tells "
+"the user they can resize the window or the panel horizontally."
+msgstr ""
+
+#: doc/classes/Input.xml:459
+msgid ""
+"Window resize mouse cursor. The cursor is a double-headed arrow that goes "
+"from the bottom left to the top right. It tells the user they can resize the "
+"window or the panel both horizontally and vertically."
+msgstr ""
+
+#: doc/classes/Input.xml:462
+msgid ""
+"Window resize mouse cursor. The cursor is a double-headed arrow that goes "
+"from the top left to the bottom right, the opposite of [constant "
+"CURSOR_BDIAGSIZE]. It tells the user they can resize the window or the panel "
+"both horizontally and vertically."
+msgstr ""
+
+#: doc/classes/Input.xml:465
+msgid "Move cursor. Indicates that something can be moved."
+msgstr ""
+
+#: doc/classes/Input.xml:468
+msgid ""
+"Vertical split mouse cursor. On Windows, it's the same as [constant "
+"CURSOR_VSIZE]."
+msgstr ""
+
+#: doc/classes/Input.xml:471
+msgid ""
+"Horizontal split mouse cursor. On Windows, it's the same as [constant "
+"CURSOR_HSIZE]."
+msgstr ""
+
+#: doc/classes/Input.xml:474
+msgid "Help cursor. Usually a question mark."
+msgstr ""
+
+#: doc/classes/InputEvent.xml:4
+msgid "Generic input event."
+msgstr ""
+
+#: doc/classes/InputEvent.xml:7
+msgid "Base class of all sort of input event. See [method Node._input]."
+msgstr ""
+
+#: doc/classes/InputEvent.xml:10 doc/classes/InputEventJoypadButton.xml:10
+#: doc/classes/InputEventJoypadMotion.xml:10 doc/classes/InputEventKey.xml:10
+#: doc/classes/InputEventMouse.xml:10 doc/classes/InputEventScreenDrag.xml:10
+#: doc/classes/InputEventScreenTouch.xml:11
+#: doc/classes/InputEventWithModifiers.xml:10
+msgid "https://docs.godotengine.org/en/latest/tutorials/inputs/inputevent.html"
+msgstr ""
+
+#: doc/classes/InputEvent.xml:20
+msgid ""
+"Returns [code]true[/code] if the given input event and this input event can "
+"be added together (only for events of type [InputEventMouseMotion]).\n"
+"The given input event's position, global position and speed will be copied. "
+"The resulting [code]relative[/code] is a sum of both events. Both events' "
+"modifiers have to be identical."
+msgstr ""
+
+#: doc/classes/InputEvent.xml:28
+msgid "Returns a [String] representation of the event."
+msgstr ""
+
+#: doc/classes/InputEvent.xml:37
+msgid ""
+"Returns a value between 0.0 and 1.0 depending on the given actions' state. "
+"Useful for getting the value of events of type [InputEventJoypadMotion]."
+msgstr ""
+
+#: doc/classes/InputEvent.xml:46
+msgid ""
+"Returns [code]true[/code] if this input event matches a pre-defined action "
+"of any type."
+msgstr ""
+
+#: doc/classes/InputEvent.xml:57
+msgid ""
+"Returns [code]true[/code] if the given action is being pressed (and is not "
+"an echo event for [InputEventKey] events, unless [code]allow_echo[/code] is "
+"[code]true[/code]). Not relevant for events of type [InputEventMouseMotion] "
+"or [InputEventScreenDrag]."
+msgstr ""
+
+#: doc/classes/InputEvent.xml:66
+msgid ""
+"Returns [code]true[/code] if the given action is released (i.e. not "
+"pressed). Not relevant for events of type [InputEventMouseMotion] or "
+"[InputEventScreenDrag]."
+msgstr ""
+
+#: doc/classes/InputEvent.xml:73
+msgid ""
+"Returns [code]true[/code] if this input event's type is one that can be "
+"assigned to an input action."
+msgstr ""
+
+#: doc/classes/InputEvent.xml:80
+msgid ""
+"Returns [code]true[/code] if this input event is an echo event (only for "
+"events of type [InputEventKey])."
+msgstr ""
+
+#: doc/classes/InputEvent.xml:87
+msgid ""
+"Returns [code]true[/code] if this input event is pressed. Not relevant for "
+"events of type [InputEventMouseMotion] or [InputEventScreenDrag]."
+msgstr ""
+
+#: doc/classes/InputEvent.xml:96
+msgid ""
+"Returns [code]true[/code] if the given input event is checking for the same "
+"key ([InputEventKey]), button ([InputEventJoypadButton]) or action "
+"([InputEventAction])."
+msgstr ""
+
+#: doc/classes/InputEvent.xml:107
+msgid ""
+"Returns a copy of the given input event which has been offset by "
+"[code]local_ofs[/code] and transformed by [code]xform[/code]. Relevant for "
+"events of type [InputEventMouseButton], [InputEventMouseMotion], "
+"[InputEventScreenTouch], [InputEventScreenDrag], [InputEventMagnifyGesture] "
+"and [InputEventPanGesture]."
+msgstr ""
+
+#: doc/classes/InputEvent.xml:113
+msgid ""
+"The event's device ID.\n"
+"[b]Note:[/b] This device ID will always be [code]-1[/code] for emulated "
+"mouse input from a touchscreen. This can be used to distinguish emulated "
+"mouse input from physical mouse input."
+msgstr ""
+
+#: doc/classes/InputEventAction.xml:4
+msgid "Input event type for actions."
+msgstr ""
+
+#: doc/classes/InputEventAction.xml:7
+msgid ""
+"Contains a generic action which can be targeted from several types of "
+"inputs. Actions can be created from the [b]Input Map[/b] tab in the "
+"[b]Project > Project Settings[/b] menu. See [method Node._input]."
+msgstr ""
+
+#: doc/classes/InputEventAction.xml:10
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/inputs/inputevent."
+"html#actions"
+msgstr ""
+
+#: doc/classes/InputEventAction.xml:16
+msgid "The action's name. Actions are accessed via this [String]."
+msgstr ""
+
+#: doc/classes/InputEventAction.xml:19
+msgid ""
+"If [code]true[/code], the action's state is pressed. If [code]false[/code], "
+"the action's state is released."
+msgstr ""
+
+#: doc/classes/InputEventAction.xml:22
+msgid ""
+"The action's strength between 0 and 1. This value is considered as equal to "
+"0 if pressed is [code]false[/code]. The event strength allows faking analog "
+"joypad motion events, by precising how strongly is the joypad axis bent or "
+"pressed."
+msgstr ""
+
+#: doc/classes/InputEventGesture.xml:4
+msgid "Base class for touch control gestures."
+msgstr ""
+
+#: doc/classes/InputEventGesture.xml:14
+msgid ""
+"The local gesture position relative to the [Viewport]. If used in [method "
+"Control._gui_input], the position is relative to the current [Control] that "
+"received this gesture."
+msgstr ""
+
+#: doc/classes/InputEventJoypadButton.xml:4
+msgid "Input event for gamepad buttons."
+msgstr ""
+
+#: doc/classes/InputEventJoypadButton.xml:7
+msgid ""
+"Input event type for gamepad buttons. For gamepad analog sticks and "
+"joysticks, see [InputEventJoypadMotion]."
+msgstr ""
+
+#: doc/classes/InputEventJoypadButton.xml:16
+msgid "Button identifier. One of the [enum JoyButtonList] button constants."
+msgstr ""
+
+#: doc/classes/InputEventJoypadButton.xml:19
+msgid ""
+"If [code]true[/code], the button's state is pressed. If [code]false[/code], "
+"the button's state is released."
+msgstr ""
+
+#: doc/classes/InputEventJoypadButton.xml:22
+msgid ""
+"Represents the pressure the user puts on the button with his finger, if the "
+"controller supports it. Ranges from [code]0[/code] to [code]1[/code]."
+msgstr ""
+
+#: doc/classes/InputEventJoypadMotion.xml:4
+msgid ""
+"Input event type for gamepad joysticks and other motions. For buttons, see "
+"[code]InputEventJoypadButton[/code]."
+msgstr ""
+
+#: doc/classes/InputEventJoypadMotion.xml:7
+msgid ""
+"Stores information about joystick motions. One [InputEventJoypadMotion] "
+"represents one axis at a time."
+msgstr ""
+
+#: doc/classes/InputEventJoypadMotion.xml:16
+msgid "Axis identifier. Use one of the [enum JoyAxisList] axis constants."
+msgstr ""
+
+#: doc/classes/InputEventJoypadMotion.xml:19
+msgid ""
+"Current position of the joystick on the given axis. The value ranges from "
+"[code]-1.0[/code] to [code]1.0[/code]. A value of [code]0[/code] means the "
+"axis is in its resting position."
+msgstr ""
+
+#: doc/classes/InputEventKey.xml:4
+msgid "Input event type for keyboard events."
+msgstr ""
+
+#: doc/classes/InputEventKey.xml:7
+msgid ""
+"Stores key presses on the keyboard. Supports key presses, key releases and "
+"[member echo] events."
+msgstr ""
+
+#: doc/classes/InputEventKey.xml:17
+msgid ""
+"Returns the keycode combined with modifier keys such as [kbd]Shift[/kbd] or "
+"[kbd]Alt[/kbd]. See also [InputEventWithModifiers].\n"
+"To get a human-readable representation of the [InputEventKey] with "
+"modifiers, use [code]OS.get_keycode_string(event."
+"get_keycode_with_modifiers())[/code] where [code]event[/code] is the "
+"[InputEventKey]."
+msgstr ""
+
+#: doc/classes/InputEventKey.xml:25
+msgid ""
+"Returns the physical keycode combined with modifier keys such as [kbd]Shift[/"
+"kbd] or [kbd]Alt[/kbd]. See also [InputEventWithModifiers].\n"
+"To get a human-readable representation of the [InputEventKey] with "
+"modifiers, use [code]OS.get_keycode_string(event."
+"get_physical_keycode_with_modifiers())[/code] where [code]event[/code] is "
+"the [InputEventKey]."
+msgstr ""
+
+#: doc/classes/InputEventKey.xml:32
+msgid ""
+"If [code]true[/code], the key was already pressed before this event. It "
+"means the user is holding the key down."
+msgstr ""
+
+#: doc/classes/InputEventKey.xml:35
+msgid ""
+"The key keycode, which corresponds to one of the [enum KeyList] constants. "
+"Represent key in the current keyboard layout.\n"
+"To get a human-readable representation of the [InputEventKey], use [code]OS."
+"get_keycode_string(event.keycode)[/code] where [code]event[/code] is the "
+"[InputEventKey]."
+msgstr ""
+
+#: doc/classes/InputEventKey.xml:39
+msgid ""
+"Key physical keycode, which corresponds to one of the [enum KeyList] "
+"constants. Represent the physical location of a key on the 101/102-key US "
+"QWERTY keyboard.\n"
+"To get a human-readable representation of the [InputEventKey], use [code]OS."
+"get_keycode_string(event.keycode)[/code] where [code]event[/code] is the "
+"[InputEventKey]."
+msgstr ""
+
+#: doc/classes/InputEventKey.xml:43
+msgid ""
+"If [code]true[/code], the key's state is pressed. If [code]false[/code], the "
+"key's state is released."
+msgstr ""
+
+#: doc/classes/InputEventKey.xml:46
+msgid ""
+"The key Unicode identifier (when relevant). Unicode identifiers for the "
+"composite characters and complex scripts may not be available unless IME "
+"input mode is active. See [method Window.set_ime_active] for more "
+"information."
+msgstr ""
+
+#: doc/classes/InputEventMouse.xml:4
+msgid "Base input event type for mouse events."
+msgstr ""
+
+#: doc/classes/InputEventMouse.xml:7
+msgid "Stores general mouse events information."
+msgstr ""
+
+#: doc/classes/InputEventMouse.xml:16
+msgid ""
+"The mouse button mask identifier, one of or a bitwise combination of the "
+"[enum ButtonList] button masks."
+msgstr ""
+
+#: doc/classes/InputEventMouse.xml:19
+msgid ""
+"The global mouse position relative to the current [Viewport] when used in "
+"[method Control._gui_input], otherwise is at 0,0."
+msgstr ""
+
+#: doc/classes/InputEventMouse.xml:22
+msgid ""
+"The local mouse position relative to the [Viewport]. If used in [method "
+"Control._gui_input], the position is relative to the current [Control] which "
+"is under the mouse."
+msgstr ""
+
+#: doc/classes/InputEventMouseButton.xml:4
+msgid "Input event type for mouse button events."
+msgstr ""
+
+#: doc/classes/InputEventMouseButton.xml:7
+msgid "Contains mouse click information. See [method Node._input]."
+msgstr ""
+
+#: doc/classes/InputEventMouseButton.xml:10
+#: doc/classes/InputEventMouseMotion.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/inputs/"
+"mouse_and_input_coordinates.html"
+msgstr ""
+
+#: doc/classes/InputEventMouseButton.xml:16
+msgid ""
+"The mouse button identifier, one of the [enum ButtonList] button or button "
+"wheel constants."
+msgstr ""
+
+#: doc/classes/InputEventMouseButton.xml:19
+msgid "If [code]true[/code], the mouse button's state is a double-click."
+msgstr ""
+
+#: doc/classes/InputEventMouseButton.xml:22
+msgid ""
+"The amount (or delta) of the event. When used for high-precision scroll "
+"events, this indicates the scroll amount (vertical or horizontal). This is "
+"only supported on some platforms; the reported sensitivity varies depending "
+"on the platform. May be [code]0[/code] if not supported."
+msgstr ""
+
+#: doc/classes/InputEventMouseButton.xml:25
+msgid ""
+"If [code]true[/code], the mouse button's state is pressed. If [code]false[/"
+"code], the mouse button's state is released."
+msgstr ""
+
+#: doc/classes/InputEventMouseMotion.xml:4
+msgid "Input event type for mouse motion events."
+msgstr ""
+
+#: doc/classes/InputEventMouseMotion.xml:7
+msgid ""
+"Contains mouse and pen motion information. Supports relative, absolute "
+"positions and speed. See [method Node._input].\n"
+"[b]Note:[/b] By default, this event is only emitted once per frame rendered "
+"at most. If you need more precise input reporting, call [method Input."
+"set_use_accumulated_input] with [code]false[/code] to make events emitted as "
+"often as possible. If you use InputEventMouseMotion to draw lines, consider "
+"implementing [url=https://en.wikipedia.org/wiki/Bresenham"
+"%27s_line_algorithm]Bresenham's line algorithm[/url] as well to avoid "
+"visible gaps in lines if the user is moving the mouse quickly."
+msgstr ""
+
+#: doc/classes/InputEventMouseMotion.xml:17
+msgid ""
+"Represents the pressure the user puts on the pen. Ranges from [code]0.0[/"
+"code] to [code]1.0[/code]."
+msgstr ""
+
+#: doc/classes/InputEventMouseMotion.xml:20
+msgid ""
+"The mouse position relative to the previous position (position at the last "
+"frame).\n"
+"[b]Note:[/b] Since [InputEventMouseMotion] is only emitted when the mouse "
+"moves, the last event won't have a relative position of [code]Vector2(0, 0)[/"
+"code] when the user stops moving the mouse."
+msgstr ""
+
+#: doc/classes/InputEventMouseMotion.xml:24
+msgid "The mouse speed in pixels per second."
+msgstr ""
+
+#: doc/classes/InputEventMouseMotion.xml:27
+msgid ""
+"Represents the angles of tilt of the pen. Positive X-coordinate value "
+"indicates a tilt to the right. Positive Y-coordinate value indicates a tilt "
+"toward the user. Ranges from [code]-1.0[/code] to [code]1.0[/code] for both "
+"axes."
+msgstr ""
+
+#: doc/classes/InputEventScreenDrag.xml:4
+msgid ""
+"Input event type for screen drag events. Only available on mobile devices."
+msgstr ""
+
+#: doc/classes/InputEventScreenDrag.xml:7
+msgid "Contains screen drag information. See [method Node._input]."
+msgstr ""
+
+#: doc/classes/InputEventScreenDrag.xml:16
+msgid "The drag event index in the case of a multi-drag event."
+msgstr ""
+
+#: doc/classes/InputEventScreenDrag.xml:19
+msgid "The drag position."
+msgstr ""
+
+#: doc/classes/InputEventScreenDrag.xml:22
+msgid "The drag position relative to its start position."
+msgstr ""
+
+#: doc/classes/InputEventScreenDrag.xml:25
+msgid "The drag speed."
+msgstr ""
+
+#: doc/classes/InputEventScreenTouch.xml:4
+msgid ""
+"Input event type for screen touch events.\n"
+"(only available on mobile devices)"
+msgstr ""
+
+#: doc/classes/InputEventScreenTouch.xml:8
+msgid ""
+"Stores multi-touch press/release information. Supports touch press, touch "
+"release and [member index] for multi-touch count and order."
+msgstr ""
+
+#: doc/classes/InputEventScreenTouch.xml:17
+msgid ""
+"The touch index in the case of a multi-touch event. One index = one finger."
+msgstr ""
+
+#: doc/classes/InputEventScreenTouch.xml:20
+msgid "The touch position."
+msgstr ""
+
+#: doc/classes/InputEventScreenTouch.xml:23
+msgid ""
+"If [code]true[/code], the touch's state is pressed. If [code]false[/code], "
+"the touch's state is released."
+msgstr ""
+
+#: doc/classes/InputEventWithModifiers.xml:4
+msgid "Base class for keys events with modifiers."
+msgstr ""
+
+#: doc/classes/InputEventWithModifiers.xml:7
+msgid ""
+"Contains keys events information with modifiers support like [kbd]Shift[/"
+"kbd] or [kbd]Alt[/kbd]. See [method Node._input]."
+msgstr ""
+
+#: doc/classes/InputEventWithModifiers.xml:16
+msgid "State of the [kbd]Alt[/kbd] modifier."
+msgstr ""
+
+#: doc/classes/InputEventWithModifiers.xml:19
+msgid "State of the [kbd]Cmd[/kbd] modifier."
+msgstr ""
+
+#: doc/classes/InputEventWithModifiers.xml:22
+msgid "State of the [kbd]Ctrl[/kbd] modifier."
+msgstr ""
+
+#: doc/classes/InputEventWithModifiers.xml:25
+msgid "State of the [kbd]Meta[/kbd] modifier."
+msgstr ""
+
+#: doc/classes/InputEventWithModifiers.xml:28
+msgid "State of the [kbd]Shift[/kbd] modifier."
+msgstr ""
+
+#: doc/classes/InputMap.xml:4
+msgid "Singleton that manages [InputEventAction]."
+msgstr ""
+
+#: doc/classes/InputMap.xml:7
+msgid ""
+"Manages all [InputEventAction] which can be created/modified from the "
+"project settings menu [b]Project > Project Settings > Input Map[/b] or in "
+"code with [method add_action] and [method action_add_event]. See [method "
+"Node._input]."
+msgstr ""
+
+#: doc/classes/InputMap.xml:10
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/inputs/inputevent."
+"html#inputmap"
+msgstr ""
+
+#: doc/classes/InputMap.xml:21
+msgid ""
+"Adds an [InputEvent] to an action. This [InputEvent] will trigger the action."
+msgstr ""
+
+#: doc/classes/InputMap.xml:32
+msgid "Removes an [InputEvent] from an action."
+msgstr ""
+
+#: doc/classes/InputMap.xml:41
+msgid "Removes all events from an action."
+msgstr ""
+
+#: doc/classes/InputMap.xml:50
+msgid "Returns an array of [InputEvent]s associated with a given action."
+msgstr ""
+
+#: doc/classes/InputMap.xml:61
+msgid ""
+"Returns [code]true[/code] if the action has the given [InputEvent] "
+"associated with it."
+msgstr ""
+
+#: doc/classes/InputMap.xml:72
+msgid "Sets a deadzone value for the action."
+msgstr ""
+
+#: doc/classes/InputMap.xml:83
+msgid ""
+"Adds an empty action to the [InputMap] with a configurable [code]deadzone[/"
+"code].\n"
+"An [InputEvent] can then be added to this action with [method "
+"action_add_event]."
+msgstr ""
+
+#: doc/classes/InputMap.xml:93
+msgid "Removes an action from the [InputMap]."
+msgstr ""
+
+#: doc/classes/InputMap.xml:104
+msgid ""
+"Returns [code]true[/code] if the given event is part of an existing action. "
+"This method ignores keyboard modifiers if the given [InputEvent] is not "
+"pressed (for proper release detection). See [method action_has_event] if you "
+"don't want this behavior."
+msgstr ""
+
+#: doc/classes/InputMap.xml:111
+msgid "Returns an array of all actions in the [InputMap]."
+msgstr ""
+
+#: doc/classes/InputMap.xml:120
+msgid ""
+"Returns [code]true[/code] if the [InputMap] has a registered action with the "
+"given name."
+msgstr ""
+
+#: doc/classes/InputMap.xml:127
+msgid ""
+"Clears all [InputEventAction] in the [InputMap] and load it anew from "
+"[ProjectSettings]."
+msgstr ""
+
+#: doc/classes/InstancePlaceholder.xml:4
+msgid "Placeholder for the root [Node] of a [PackedScene]."
+msgstr ""
+
+#: doc/classes/InstancePlaceholder.xml:7
+msgid ""
+"Turning on the option [b]Load As Placeholder[/b] for an instanced scene in "
+"the editor causes it to be replaced by an [InstancePlaceholder] when running "
+"the game. This makes it possible to delay actually loading the scene until "
+"calling [method create_instance]. This is useful to avoid loading large "
+"scenes all at once by loading parts of it selectively.\n"
+"The [InstancePlaceholder] does not have a transform. This causes any child "
+"nodes to be positioned relatively to the [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."
+msgstr ""
+
+#: doc/classes/InstancePlaceholder.xml:27
+msgid ""
+"Gets the path to the [PackedScene] resource file that is loaded by default "
+"when calling [method create_instance]."
+msgstr ""
+
+#: doc/classes/int.xml:4
+msgid "Integer built-in type."
+msgstr ""
+
+#: doc/classes/int.xml:7
+msgid ""
+"Signed 64-bit integer type.\n"
+"It can take values in the interval [code][-2^63, 2^63 - 1][/code], i.e. "
+"[code][-9223372036854775808, 9223372036854775807][/code]. Exceeding those "
+"bounds will wrap around.\n"
+"[int] is a [Variant] type, and will thus be used when assigning an integer "
+"value to a [Variant]. It can also be enforced with the [code]: int[/code] "
+"type hint.\n"
+"[codeblock]\n"
+"var my_variant = 0 # int, value 0.\n"
+"my_variant += 4.2 # float, value 4.2.\n"
+"var my_int: int = 1 # int, value 1.\n"
+"my_int = 4.2 # int, value 4, the right value is implicitly cast to int.\n"
+"my_int = int(\"6.7\") # int, value 6, the String is explicitly cast with "
+"int.\n"
+"\n"
+"var max_int = 9223372036854775807\n"
+"print(max_int) # 9223372036854775807, OK.\n"
+"max_int += 1\n"
+"print(max_int) # -9223372036854775808, we overflowed and wrapped around.\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/int.xml:32
+msgid ""
+"Cast a [bool] value to an integer value, [code]int(true)[/code] will be "
+"equals to 1 and [code]int(false)[/code] will be equals to 0."
+msgstr ""
+
+#: doc/classes/int.xml:41
+msgid ""
+"Cast a float value to an integer value, this method simply removes the "
+"number fractions, so for example [code]int(2.7)[/code] will be equals to 2, "
+"[code]int(.1)[/code] will be equals to 0 and [code]int(-2.7)[/code] will be "
+"equals to -2."
+msgstr ""
+
+#: doc/classes/int.xml:50
+msgid ""
+"Cast a [String] value to an integer value, this method is an integer parser "
+"from a string, so calling this method with an invalid integer string will "
+"return 0, a valid string will be something like [code]'1.7'[/code]. This "
+"method will ignore all non-number characters, so calling [code]int('1e3')[/"
+"code] will return 13."
+msgstr ""
+
+#: doc/classes/IP.xml:4
+msgid "Internet protocol (IP) support functions such as DNS resolution."
+msgstr ""
+
+#: doc/classes/IP.xml:7
+msgid ""
+"IP contains support functions for the Internet Protocol (IP). TCP/IP support "
+"is in different classes (see [StreamPeerTCP] and [TCP_Server]). IP provides "
+"DNS hostname resolution support, both blocking and threaded."
+msgstr ""
+
+#: doc/classes/IP.xml:18
+msgid ""
+"Removes all of a [code]hostname[/code]'s cached references. If no "
+"[code]hostname[/code] is given, all cached IP addresses are removed."
+msgstr ""
+
+#: doc/classes/IP.xml:27
+msgid ""
+"Removes a given item [code]id[/code] from the queue. This should be used to "
+"free a queue after it has completed to enable more queries to happen."
+msgstr ""
+
+#: doc/classes/IP.xml:34
+msgid "Returns all of the user's current IPv4 and IPv6 addresses as an array."
+msgstr ""
+
+#: doc/classes/IP.xml:41
+msgid ""
+"Returns all network adapters as an array.\n"
+"Each adapter is a dictionary of the form:\n"
+"[codeblock]\n"
+"{\n"
+" \"index\": \"1\", # Interface index.\n"
+" \"name\": \"eth0\", # Interface name.\n"
+" \"friendly\": \"Ethernet One\", # A friendly name (might be empty).\n"
+" \"addresses\": [\"192.168.1.101\"], # An array of IP addresses "
+"associated to this interface.\n"
+"}\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/IP.xml:59
+msgid ""
+"Returns a queued hostname's IP address, given its queue [code]id[/code]. "
+"Returns an empty string on error or if resolution hasn't happened yet (see "
+"[method get_resolve_item_status])."
+msgstr ""
+
+#: doc/classes/IP.xml:68
+msgid ""
+"Returns a queued hostname's status as a [enum ResolverStatus] constant, "
+"given its queue [code]id[/code]."
+msgstr ""
+
+#: doc/classes/IP.xml:79
+msgid ""
+"Returns a given hostname's IPv4 or IPv6 address when resolved (blocking-type "
+"method). The address type returned depends on the [enum Type] constant given "
+"as [code]ip_type[/code]."
+msgstr ""
+
+#: doc/classes/IP.xml:90
+msgid ""
+"Creates a queue item to resolve a hostname to an IPv4 or IPv6 address "
+"depending on the [enum Type] constant given as [code]ip_type[/code]. Returns "
+"the queue ID if successful, or [constant RESOLVER_INVALID_ID] on error."
+msgstr ""
+
+#: doc/classes/IP.xml:96
+msgid "DNS hostname resolver status: No status."
+msgstr ""
+
+#: doc/classes/IP.xml:99
+msgid "DNS hostname resolver status: Waiting."
+msgstr ""
+
+#: doc/classes/IP.xml:102
+msgid "DNS hostname resolver status: Done."
+msgstr ""
+
+#: doc/classes/IP.xml:105
+msgid "DNS hostname resolver status: Error."
+msgstr ""
+
+#: doc/classes/IP.xml:108
+msgid ""
+"Maximum number of concurrent DNS resolver queries allowed, [constant "
+"RESOLVER_INVALID_ID] is returned if exceeded."
+msgstr ""
+
+#: doc/classes/IP.xml:111
+msgid ""
+"Invalid ID constant. Returned if [constant RESOLVER_MAX_QUERIES] is exceeded."
+msgstr ""
+
+#: doc/classes/IP.xml:114
+msgid "Address type: None."
+msgstr ""
+
+#: doc/classes/IP.xml:117
+msgid "Address type: Internet protocol version 4 (IPv4)."
+msgstr ""
+
+#: doc/classes/IP.xml:120
+msgid "Address type: Internet protocol version 6 (IPv6)."
+msgstr ""
+
+#: doc/classes/IP.xml:123
+msgid "Address type: Any."
+msgstr ""
+
+#: doc/classes/ItemList.xml:4
+msgid ""
+"Control that provides a list of selectable items (and/or icons) in a single "
+"column, or optionally in multiple columns."
+msgstr ""
+
+#: doc/classes/ItemList.xml:7
+msgid ""
+"This control provides a selectable list of items that may be in a single (or "
+"multiple columns) with option of text, icons, or both text and icon. "
+"Tooltips are supported and may be different for every item in the list.\n"
+"Selectable items in the list may be selected or deselected and multiple "
+"selection may be enabled. Selection with right mouse button may also be "
+"enabled to allow use of popup context menus. Items may also be \"activated\" "
+"by double-clicking them or by pressing [kbd]Enter[/kbd].\n"
+"Item text only supports single-line strings, newline characters (e.g. "
+"[code]\\n[/code]) in the string won't produce a newline. Text wrapping is "
+"enabled in [constant ICON_MODE_TOP] mode, but column's width is adjusted to "
+"fully fit its content by default. You need to set [member "
+"fixed_column_width] greater than zero to wrap the text."
+msgstr ""
+
+#: doc/classes/ItemList.xml:22
+msgid "Adds an item to the item list with no text, only an icon."
+msgstr ""
+
+#: doc/classes/ItemList.xml:35
+msgid ""
+"Adds an item to the item list with specified text. Specify an [code]icon[/"
+"code], or use [code]null[/code] as the [code]icon[/code] for a list item "
+"with no icon.\n"
+"If selectable is [code]true[/code], the list item will be selectable."
+msgstr ""
+
+#: doc/classes/ItemList.xml:43
+msgid "Removes all items from the list."
+msgstr ""
+
+#: doc/classes/ItemList.xml:50
+msgid ""
+"Ensure current selection is visible, adjusting the scroll position as "
+"necessary."
+msgstr ""
+
+#: doc/classes/ItemList.xml:61
+msgid ""
+"Returns the item index at the given [code]position[/code].\n"
+"When there is no item at that point, -1 will be returned if [code]exact[/"
+"code] is [code]true[/code], and the closest item index will be returned "
+"otherwise."
+msgstr ""
+
+#: doc/classes/ItemList.xml:69
+msgid "Returns the number of items currently in the list."
+msgstr ""
+
+#: doc/classes/ItemList.xml:78
+msgid ""
+"Returns the custom background color of the item specified by [code]idx[/"
+"code] index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:87
+msgid ""
+"Returns the custom foreground color of the item specified by [code]idx[/"
+"code] index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:96
+msgid "Returns the icon associated with the specified index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:105
+msgid "Returns a [Color] modulating item's icon at the specified index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:114
+msgid ""
+"Returns the region of item's icon used. The whole icon will be used if the "
+"region has no area."
+msgstr ""
+
+#: doc/classes/ItemList.xml:123
+msgid "Returns the metadata value of the specified index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:132
+msgid "Returns the text associated with the specified index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:141
+msgid "Returns the tooltip hint associated with the specified index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:148
+msgid "Returns an array with the indexes of the selected items."
+msgstr ""
+
+#: doc/classes/ItemList.xml:155
+msgid "Returns the [Object] ID associated with the list."
+msgstr ""
+
+#: doc/classes/ItemList.xml:162
+msgid "Returns [code]true[/code] if one or more items are selected."
+msgstr ""
+
+#: doc/classes/ItemList.xml:171
+msgid ""
+"Returns [code]true[/code] if the item at the specified index is disabled."
+msgstr ""
+
+#: doc/classes/ItemList.xml:180
+msgid ""
+"Returns [code]true[/code] if the item icon will be drawn transposed, i.e. "
+"the X and Y axes are swapped."
+msgstr ""
+
+#: doc/classes/ItemList.xml:189
+msgid ""
+"Returns [code]true[/code] if the item at the specified index is selectable."
+msgstr ""
+
+#: doc/classes/ItemList.xml:198
+msgid ""
+"Returns [code]true[/code] if the tooltip is enabled for specified item index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:207
+msgid ""
+"Returns [code]true[/code] if the item at the specified index is currently "
+"selected."
+msgstr ""
+
+#: doc/classes/ItemList.xml:218
+msgid "Moves item from index [code]from_idx[/code] to [code]to_idx[/code]."
+msgstr ""
+
+#: doc/classes/ItemList.xml:227
+msgid "Removes the item specified by [code]idx[/code] index from the list."
+msgstr ""
+
+#: doc/classes/ItemList.xml:238
+msgid ""
+"Select the item at the specified index.\n"
+"[b]Note:[/b] This method does not trigger the item selection signal."
+msgstr ""
+
+#: doc/classes/ItemList.xml:250
+msgid ""
+"Sets the background color of the item specified by [code]idx[/code] index to "
+"the specified [Color].\n"
+"[codeblock]\n"
+"var some_string = \"Some text\"\n"
+"some_string.set_item_custom_bg_color(0,Color(1, 0, 0, 1) # This will set the "
+"background color of the first item of the control to red.\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/ItemList.xml:265
+msgid ""
+"Sets the foreground color of the item specified by [code]idx[/code] index to "
+"the specified [Color].\n"
+"[codeblock]\n"
+"var some_string = \"Some text\"\n"
+"some_string.set_item_custom_fg_color(0,Color(1, 0, 0, 1) # This will set the "
+"foreground color of the first item of the control to red.\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/ItemList.xml:280
+msgid ""
+"Disables (or enables) the item at the specified index.\n"
+"Disabled items cannot be selected and do not trigger activation signals "
+"(when double-clicking or pressing [kbd]Enter[/kbd])."
+msgstr ""
+
+#: doc/classes/ItemList.xml:292
+msgid ""
+"Sets (or replaces) the icon's [Texture2D] associated with the specified "
+"index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:303
+msgid ""
+"Sets a modulating [Color] of the item associated with the specified index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:314
+msgid ""
+"Sets the region of item's icon used. The whole icon will be used if the "
+"region has no area."
+msgstr ""
+
+#: doc/classes/ItemList.xml:325
+msgid "Sets whether the item icon will be drawn transposed."
+msgstr ""
+
+#: doc/classes/ItemList.xml:336
+msgid ""
+"Sets a value (of any type) to be stored with the item associated with the "
+"specified index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:347
+msgid ""
+"Allows or disallows selection of the item associated with the specified "
+"index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:358
+msgid "Sets text of the item associated with the specified index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:369
+msgid "Sets the tooltip hint for the item associated with the specified index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:380
+msgid "Sets whether the tooltip hint is enabled for specified item index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:387
+msgid "Sorts items in the list by their text."
+msgstr ""
+
+#: doc/classes/ItemList.xml:396
+msgid "Ensures the item associated with the specified index is not selected."
+msgstr ""
+
+#: doc/classes/ItemList.xml:403
+msgid "Ensures there are no items selected."
+msgstr ""
+
+#: doc/classes/ItemList.xml:409
+msgid ""
+"If [code]true[/code], the currently selected item can be selected again."
+msgstr ""
+
+#: doc/classes/ItemList.xml:412
+msgid "If [code]true[/code], right mouse button click can select items."
+msgstr ""
+
+#: doc/classes/ItemList.xml:415
+msgid ""
+"If [code]true[/code], the control will automatically resize the height to "
+"fit its content."
+msgstr ""
+
+#: doc/classes/ItemList.xml:418
+msgid ""
+"The width all columns will be adjusted to.\n"
+"A value of zero disables the adjustment, each item will have a width equal "
+"to the width of its content and the columns will have an uneven width."
+msgstr ""
+
+#: doc/classes/ItemList.xml:422
+msgid ""
+"The size all icons will be adjusted to.\n"
+"If either X or Y component is not greater than zero, icon size won't be "
+"affected."
+msgstr ""
+
+#: doc/classes/ItemList.xml:427
+msgid ""
+"The icon position, whether above or to the left of the text. See the [enum "
+"IconMode] constants."
+msgstr ""
+
+#: doc/classes/ItemList.xml:430
+msgid ""
+"The scale of icon applied after [member fixed_icon_size] and transposing "
+"takes effect."
+msgstr ""
+
+#: doc/classes/ItemList.xml:433
+msgid ""
+"Maximum columns the list will have.\n"
+"If greater than zero, the content will be split among the specified "
+"columns.\n"
+"A value of zero means unlimited columns, i.e. all items will be put in the "
+"same row."
+msgstr ""
+
+#: doc/classes/ItemList.xml:438
+msgid ""
+"Maximum lines of text allowed in each item. Space will be reserved even when "
+"there is not enough lines of text to display.\n"
+"[b]Note:[/b] This property takes effect only when [member icon_mode] is "
+"[constant ICON_MODE_TOP]. To make the text wrap, [member fixed_column_width] "
+"should be greater than zero."
+msgstr ""
+
+#: doc/classes/ItemList.xml:443
+msgid ""
+"Whether all columns will have the same width.\n"
+"If [code]true[/code], the width is equal to the largest column width of all "
+"columns."
+msgstr ""
+
+#: doc/classes/ItemList.xml:447
+msgid ""
+"Allows single or multiple item selection. See the [enum SelectMode] "
+"constants."
+msgstr ""
+
+#: doc/classes/ItemList.xml:455
+msgid ""
+"Triggered when specified list item is activated via double-clicking or by "
+"pressing [kbd]Enter[/kbd]."
+msgstr ""
+
+#: doc/classes/ItemList.xml:464
+msgid ""
+"Triggered when specified list item has been selected via right mouse "
+"clicking.\n"
+"The click position is also provided to allow appropriate popup of context "
+"menus at the correct location.\n"
+"[member allow_rmb_select] must be enabled."
+msgstr ""
+
+#: doc/classes/ItemList.xml:473
+msgid ""
+"Triggered when specified item has been selected.\n"
+"[member allow_reselect] must be enabled to reselect an item."
+msgstr ""
+
+#: doc/classes/ItemList.xml:483
+msgid ""
+"Triggered when a multiple selection is altered on a list allowing multiple "
+"selection."
+msgstr ""
+
+#: doc/classes/ItemList.xml:488
+msgid ""
+"Triggered when a left mouse click is issued within the rect of the list but "
+"on empty space."
+msgstr ""
+
+#: doc/classes/ItemList.xml:495
+msgid ""
+"Triggered when a right mouse click is issued within the rect of the list but "
+"on empty space.\n"
+"[member allow_rmb_select] must be enabled."
+msgstr ""
+
+#: doc/classes/ItemList.xml:502
+msgid "Icon is drawn above the text."
+msgstr ""
+
+#: doc/classes/ItemList.xml:505
+msgid "Icon is drawn to the left of the text."
+msgstr ""
+
+#: doc/classes/ItemList.xml:508
+msgid "Only allow selecting a single item."
+msgstr ""
+
+#: doc/classes/ItemList.xml:511
+msgid ""
+"Allows selecting multiple items by holding [kbd]Ctrl[/kbd] or [kbd]Shift[/"
+"kbd]."
+msgstr ""
+
+#: doc/classes/ItemList.xml:516
+msgid ""
+"Default [StyleBox] for the [ItemList], i.e. used when the control is not "
+"being focused."
+msgstr ""
+
+#: doc/classes/ItemList.xml:519
+msgid "[StyleBox] used when the [ItemList] is being focused."
+msgstr ""
+
+#: doc/classes/ItemList.xml:522
+msgid "[StyleBox] used for the cursor, when the [ItemList] is being focused."
+msgstr ""
+
+#: doc/classes/ItemList.xml:525
+msgid ""
+"[StyleBox] used for the cursor, when the [ItemList] is not being focused."
+msgstr ""
+
+#: doc/classes/ItemList.xml:528 doc/classes/Tree.xml:439
+msgid "[Font] of the item's text."
+msgstr ""
+
+#: doc/classes/ItemList.xml:531 doc/classes/Tree.xml:442
+msgid "Default text [Color] of the item."
+msgstr ""
+
+#: doc/classes/ItemList.xml:534 doc/classes/Tree.xml:445
+msgid "Text [Color] used when the item is selected."
+msgstr ""
+
+#: doc/classes/ItemList.xml:537
+msgid ""
+"[Color] of the guideline. The guideline is a line drawn between each row of "
+"items."
+msgstr ""
+
+#: doc/classes/ItemList.xml:540
+msgid "The horizontal spacing between items."
+msgstr ""
+
+#: doc/classes/ItemList.xml:543
+msgid "The spacing between item's icon and text."
+msgstr ""
+
+#: doc/classes/ItemList.xml:546
+msgid "The vertical spacing between each line of text."
+msgstr ""
+
+#: doc/classes/ItemList.xml:549
+msgid ""
+"[StyleBox] for the selected items, used when the [ItemList] is not being "
+"focused."
+msgstr ""
+
+#: doc/classes/ItemList.xml:552
+msgid ""
+"[StyleBox] for the selected items, used when the [ItemList] is being focused."
+msgstr ""
+
+#: doc/classes/ItemList.xml:555
+msgid "The vertical spacing between items."
+msgstr ""
+
+#: doc/classes/JavaScript.xml:4
+msgid ""
+"Singleton that connects the engine with the browser's JavaScript context in "
+"HTML5 export."
+msgstr ""
+
+#: doc/classes/JavaScript.xml:7
+msgid ""
+"The JavaScript singleton is implemented only in the HTML5 export. It's used "
+"to access the browser's JavaScript context. This allows interaction with "
+"embedding pages or calling third-party JavaScript APIs."
+msgstr ""
+
+#: doc/classes/JavaScript.xml:10
+msgid ""
+"https://docs.godotengine.org/en/latest/getting_started/workflow/export/"
+"exporting_for_web.html#calling-javascript-from-script"
+msgstr ""
+
+#: doc/classes/JavaScript.xml:21
+msgid ""
+"Execute the string [code]code[/code] as JavaScript code within the browser "
+"window. This is a call to the actual global JavaScript function [code]eval()"
+"[/code].\n"
+"If [code]use_global_execution_context[/code] is [code]true[/code], the code "
+"will be evaluated in the global execution context. Otherwise, it is "
+"evaluated in the execution context of a function within the engine's runtime "
+"environment."
+msgstr ""
+
+#: doc/classes/Joint2D.xml:4
+msgid "Base node for all joint constraints in 2D physics."
+msgstr ""
+
+#: doc/classes/Joint2D.xml:7
+msgid ""
+"Base node for all joint constraints in 2D physics. Joints take 2 bodies and "
+"apply a custom constraint."
+msgstr ""
+
+#: doc/classes/Joint2D.xml:15
+msgid ""
+"When [member node_a] and [member node_b] move in different directions the "
+"[code]bias[/code] controls how fast the joint pulls them back to their "
+"original position. The lower the [code]bias[/code] the more the two bodies "
+"can pull on the joint."
+msgstr ""
+
+#: doc/classes/Joint2D.xml:18
+msgid ""
+"If [code]true[/code], [member node_a] and [member node_b] can not collide."
+msgstr ""
+
+#: doc/classes/Joint2D.xml:21
+msgid "The first body attached to the joint. Must derive from [PhysicsBody2D]."
+msgstr ""
+
+#: doc/classes/Joint2D.xml:24
+msgid ""
+"The second body attached to the joint. Must derive from [PhysicsBody2D]."
+msgstr ""
+
+#: doc/classes/Joint3D.xml:4
+msgid "Base class for all 3D joints."
+msgstr ""
+
+#: doc/classes/Joint3D.xml:7
+msgid ""
+"Joints are used to bind together two physics bodies. They have a solver "
+"priority and can define if the bodies of the two attached nodes should be "
+"able to collide with each other."
+msgstr ""
+
+#: doc/classes/Joint3D.xml:15
+msgid ""
+"If [code]true[/code], the two bodies of the nodes are not able to collide "
+"with each other."
+msgstr ""
+
+#: doc/classes/Joint3D.xml:18
+msgid "The node attached to the first side (A) of the joint."
+msgstr ""
+
+#: doc/classes/Joint3D.xml:21
+msgid "The node attached to the second side (B) of the joint."
+msgstr ""
+
+#: doc/classes/Joint3D.xml:24
+msgid ""
+"The priority used to define which solver is executed first for multiple "
+"joints. The lower the value, the higher the priority."
+msgstr ""
+
+#: doc/classes/JSON.xml:4
+msgid "Helper class for parsing JSON data."
+msgstr ""
+
+#: doc/classes/JSON.xml:7
+msgid ""
+"Helper class for parsing JSON data. For usage example and other important "
+"hints, see [JSONParseResult]."
+msgstr ""
+
+#: doc/classes/JSON.xml:18
+msgid ""
+"Parses a JSON-encoded string and returns a [JSONParseResult] containing the "
+"result."
+msgstr ""
+
+#: doc/classes/JSON.xml:31
+msgid ""
+"Converts a [Variant] var to JSON text and returns the result. Useful for "
+"serializing data to store or send over the network.\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, converting a Variant to JSON text "
+"will convert all numerical values to [float] types."
+msgstr ""
+
+#: doc/classes/JSONParseResult.xml:4
+msgid "Data class wrapper for decoded JSON."
+msgstr ""
+
+#: doc/classes/JSONParseResult.xml:7
+msgid ""
+"Returned by [method JSON.parse], [JSONParseResult] contains the decoded JSON "
+"or error information if the JSON source wasn't successfully parsed. You can "
+"check if the JSON source was successfully parsed with [code]if json_result."
+"error == OK[/code]."
+msgstr ""
+
+#: doc/classes/JSONParseResult.xml:15
+msgid ""
+"The error type if the JSON source was not successfully parsed. See the [enum "
+"Error] constants."
+msgstr ""
+
+#: doc/classes/JSONParseResult.xml:18
+msgid ""
+"The line number where the error occurred if the JSON source was not "
+"successfully parsed."
+msgstr ""
+
+#: doc/classes/JSONParseResult.xml:21
+msgid ""
+"The error message if the JSON source was not successfully parsed. See the "
+"[enum Error] constants."
+msgstr ""
+
+#: doc/classes/JSONParseResult.xml:24
+msgid ""
+"A [Variant] containing the parsed JSON. Use [method @GDScript.typeof] or the "
+"[code]is[/code] keyword to check if it is what you expect. For example, if "
+"the JSON source starts with curly braces ([code]{}[/code]), a [Dictionary] "
+"will be returned. If the JSON source starts with brackets ([code][][/code]), "
+"an [Array] will be returned.\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, parsing a JSON text will convert "
+"all numerical values to [float] types.\n"
+"[b]Note:[/b] JSON objects do not preserve key order like Godot dictionaries, "
+"thus, you should not rely on keys being in a certain order if a dictionary "
+"is constructed from JSON. In contrast, JSON arrays retain the order of their "
+"elements:\n"
+"[codeblock]\n"
+"var p = JSON.parse('[\"hello\", \"world\", \"!\"]')\n"
+"if typeof(p.result) == TYPE_ARRAY:\n"
+" print(p.result[0]) # Prints \"hello\"\n"
+"else:\n"
+" push_error(\"Unexpected results.\")\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/KinematicBody2D.xml:4
+msgid "Kinematic body 2D node."
+msgstr ""
+
+#: doc/classes/KinematicBody2D.xml:7
+msgid ""
+"Kinematic bodies are special types of bodies that are meant to be user-"
+"controlled. They are not affected by physics at all; to other types of "
+"bodies, such as a character or a rigid body, these are the same as a static "
+"body. However, they have two main uses:\n"
+"[b]Simulated motion:[/b] When these bodies are moved manually, either from "
+"code or from an [AnimationPlayer] (with [member AnimationPlayer."
+"playback_process_mode] set to \"physics\"), the physics will automatically "
+"compute an estimate of their linear and angular velocity. This makes them "
+"very useful for moving platforms or other AnimationPlayer-controlled objects "
+"(like a door, a bridge that opens, etc).\n"
+"[b]Kinematic characters:[/b] KinematicBody2D also has an API for moving "
+"objects (the [method move_and_collide] and [method move_and_slide] methods) "
+"while performing collision tests. This makes them really useful to implement "
+"characters that collide against a world, but that don't require advanced "
+"physics."
+msgstr ""
+
+#: doc/classes/KinematicBody2D.xml:12 doc/classes/KinematicBody3D.xml:12
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/physics/"
+"kinematic_character_2d.html"
+msgstr ""
+
+#: doc/classes/KinematicBody2D.xml:13
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/physics/"
+"using_kinematic_body_2d.html"
+msgstr ""
+
+#: doc/classes/KinematicBody2D.xml:20 doc/classes/KinematicBody3D.xml:28
+msgid ""
+"Returns the surface normal of the floor at the last collision point. Only "
+"valid after calling [method move_and_slide] or [method "
+"move_and_slide_with_snap] and when [method is_on_floor] returns [code]true[/"
+"code]."
+msgstr ""
+
+#: doc/classes/KinematicBody2D.xml:27 doc/classes/KinematicBody3D.xml:35
+msgid ""
+"Returns the linear velocity of the floor at the last collision point. Only "
+"valid after calling [method move_and_slide] or [method "
+"move_and_slide_with_snap] and when [method is_on_floor] returns [code]true[/"
+"code]."
+msgstr ""
+
+#: doc/classes/KinematicBody2D.xml:36
+msgid ""
+"Returns a [KinematicCollision2D], which contains information about a "
+"collision that occurred during the last [method move_and_slide] call. Since "
+"the body can collide several times in a single call to [method "
+"move_and_slide], you must specify the index of the collision in the range 0 "
+"to ([method get_slide_count] - 1).\n"
+"[b]Example usage:[/b]\n"
+"[codeblock]\n"
+"for i in get_slide_count():\n"
+" var collision = get_slide_collision(i)\n"
+" print(\"Collided with: \", collision.collider.name)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/KinematicBody2D.xml:49 doc/classes/KinematicBody3D.xml:51
+msgid ""
+"Returns the number of times the body collided and changed direction during "
+"the last call to [method move_and_slide]."
+msgstr ""
+
+#: doc/classes/KinematicBody2D.xml:56 doc/classes/KinematicBody3D.xml:58
+msgid ""
+"Returns [code]true[/code] if the body is on the ceiling. Only updates when "
+"calling [method move_and_slide]."
+msgstr ""
+
+#: doc/classes/KinematicBody2D.xml:63 doc/classes/KinematicBody3D.xml:65
+msgid ""
+"Returns [code]true[/code] if the body is on the floor. Only updates when "
+"calling [method move_and_slide]."
+msgstr ""
+
+#: doc/classes/KinematicBody2D.xml:70 doc/classes/KinematicBody3D.xml:72
+msgid ""
+"Returns [code]true[/code] if the body is on a wall. Only updates when "
+"calling [method move_and_slide]."
+msgstr ""
+
+#: doc/classes/KinematicBody2D.xml:85
+msgid ""
+"Moves the body along the vector [code]rel_vec[/code]. The body will stop if "
+"it collides. Returns a [KinematicCollision2D], which contains information "
+"about the collision.\n"
+"If [code]test_only[/code] is [code]true[/code], the body does not move but "
+"the would-be collision information is given."
+msgstr ""
+
+#: doc/classes/KinematicBody2D.xml:105
+msgid ""
+"Moves the body along a vector. If the body collides with another, it will "
+"slide along the other body rather than stop immediately. If the other body "
+"is a [KinematicBody2D] or [RigidBody2D], it will also be affected by the "
+"motion of the other body. You can use this to make moving or rotating "
+"platforms, or to make nodes push other nodes.\n"
+"This method should be used in [method Node._physics_process] (or in a method "
+"called by [method Node._physics_process]), as it uses the physics step's "
+"[code]delta[/code] value automatically in calculations. Otherwise, the "
+"simulation will run at an incorrect speed.\n"
+"[code]linear_velocity[/code] is the velocity vector in pixels per second. "
+"Unlike in [method move_and_collide], you should [i]not[/i] multiply it by "
+"[code]delta[/code] — the physics engine handles applying the velocity.\n"
+"[code]up_direction[/code] is the up direction, used to determine what is a "
+"wall and what is a floor or a ceiling. If set to the default value of "
+"[code]Vector2(0, 0)[/code], everything is considered a wall. This is useful "
+"for topdown games.\n"
+"If [code]stop_on_slope[/code] is [code]true[/code], body will not slide on "
+"slopes when you include gravity in [code]linear_velocity[/code] and the body "
+"is standing still.\n"
+"If the body collides, it will change direction a maximum of "
+"[code]max_slides[/code] times before it stops.\n"
+"[code]floor_max_angle[/code] is the maximum angle (in radians) where a slope "
+"is still considered a floor (or a ceiling), rather than a wall. The default "
+"value equals 45 degrees.\n"
+"If [code]infinite_inertia[/code] is [code]true[/code], body will be able to "
+"push [RigidBody2D] nodes, but it won't also detect any collisions with them. "
+"If [code]false[/code], it will interact with [RigidBody2D] nodes like with "
+"[StaticBody2D].\n"
+"Returns the [code]linear_velocity[/code] vector, rotated and/or scaled if a "
+"slide collision occurred. To get detailed information about collisions that "
+"occurred, use [method get_slide_collision]."
+msgstr ""
+
+#: doc/classes/KinematicBody2D.xml:134
+msgid ""
+"Moves the body while keeping it attached to slopes. Similar to [method "
+"move_and_slide].\n"
+"As long as the [code]snap[/code] vector is in contact with the ground, the "
+"body will remain attached to the surface. This means you must disable snap "
+"in order to jump, for example. You can do this by setting [code]snap[/code] "
+"to [code](0, 0)[/code] or by using [method move_and_slide] instead."
+msgstr ""
+
+#: doc/classes/KinematicBody2D.xml:148
+msgid ""
+"Checks for collisions without moving the body. Virtually sets the node's "
+"position, scale and rotation to that of the given [Transform2D], then tries "
+"to move the body along the vector [code]rel_vec[/code]. Returns [code]true[/"
+"code] if a collision would occur."
+msgstr ""
+
+#: doc/classes/KinematicBody2D.xml:154 doc/classes/KinematicBody3D.xml:176
+msgid ""
+"If the body is at least this close to another body, this body will consider "
+"them to be colliding."
+msgstr ""
+
+#: doc/classes/KinematicBody2D.xml:157
+msgid ""
+"If [code]true[/code], the body's movement will be synchronized to the "
+"physics frame. This is useful when animating movement via [AnimationPlayer], "
+"for example on moving platforms. Do [b]not[/b] use together with [method "
+"move_and_slide] or [method move_and_collide] functions."
+msgstr ""
+
+#: doc/classes/KinematicBody3D.xml:4
+msgid "Kinematic body 3D node."
+msgstr ""
+
+#: doc/classes/KinematicBody3D.xml:7
+msgid ""
+"Kinematic bodies are special types of bodies that are meant to be user-"
+"controlled. They are not affected by physics at all; to other types of "
+"bodies, such as a character or a rigid body, these are the same as a static "
+"body. However, they have two main uses:\n"
+"[b]Simulated motion:[/b] When these bodies are moved manually, either from "
+"code or from an [AnimationPlayer] (with [member AnimationPlayer."
+"playback_process_mode] set to \"physics\"), the physics will automatically "
+"compute an estimate of their linear and angular velocity. This makes them "
+"very useful for moving platforms or other AnimationPlayer-controlled objects "
+"(like a door, a bridge that opens, etc).\n"
+"[b]Kinematic characters:[/b] KinematicBody3D also has an API for moving "
+"objects (the [method move_and_collide] and [method move_and_slide] methods) "
+"while performing collision tests. This makes them really useful to implement "
+"characters that collide against a world, but that don't require advanced "
+"physics."
+msgstr ""
+
+#: doc/classes/KinematicBody3D.xml:21
+msgid ""
+"Returns [code]true[/code] if the specified [code]axis[/code] is locked. See "
+"also [member axis_lock_motion_x], [member axis_lock_motion_y] and [member "
+"axis_lock_motion_z]."
+msgstr ""
+
+#: doc/classes/KinematicBody3D.xml:44
+msgid ""
+"Returns a [KinematicCollision3D], which contains information about a "
+"collision that occurred during the last [method move_and_slide] call. Since "
+"the body can collide several times in a single call to [method "
+"move_and_slide], you must specify the index of the collision in the range 0 "
+"to ([method get_slide_count] - 1)."
+msgstr ""
+
+#: doc/classes/KinematicBody3D.xml:87
+msgid ""
+"Moves the body along the vector [code]rel_vec[/code]. The body will stop if "
+"it collides. Returns a [KinematicCollision3D], which contains information "
+"about the collision.\n"
+"If [code]test_only[/code] is [code]true[/code], the body does not move but "
+"the would-be collision information is given."
+msgstr ""
+
+#: doc/classes/KinematicBody3D.xml:107
+msgid ""
+"Moves the body along a vector. If the body collides with another, it will "
+"slide along the other body rather than stop immediately. If the other body "
+"is a [KinematicBody3D] or [RigidBody3D], it will also be affected by the "
+"motion of the other body. You can use this to make moving or rotating "
+"platforms, or to make nodes push other nodes.\n"
+"This method should be used in [method Node._physics_process] (or in a method "
+"called by [method Node._physics_process]), as it uses the physics step's "
+"[code]delta[/code] value automatically in calculations. Otherwise, the "
+"simulation will run at an incorrect speed.\n"
+"[code]linear_velocity[/code] is the velocity vector (typically meters per "
+"second). Unlike in [method move_and_collide], you should [i]not[/i] multiply "
+"it by [code]delta[/code] — the physics engine handles applying the "
+"velocity.\n"
+"[code]up_direction[/code] is the up direction, used to determine what is a "
+"wall and what is a floor or a ceiling. If set to the default value of "
+"[code]Vector3(0, 0, 0)[/code], everything is considered a wall.\n"
+"If [code]stop_on_slope[/code] is [code]true[/code], body will not slide on "
+"slopes when you include gravity in [code]linear_velocity[/code] and the body "
+"is standing still.\n"
+"If the body collides, it will change direction a maximum of "
+"[code]max_slides[/code] times before it stops.\n"
+"[code]floor_max_angle[/code] is the maximum angle (in radians) where a slope "
+"is still considered a floor (or a ceiling), rather than a wall. The default "
+"value equals 45 degrees.\n"
+"If [code]infinite_inertia[/code] is [code]true[/code], body will be able to "
+"push [RigidBody3D] nodes, but it won't also detect any collisions with them. "
+"If [code]false[/code], it will interact with [RigidBody3D] nodes like with "
+"[StaticBody3D].\n"
+"Returns the [code]linear_velocity[/code] vector, rotated and/or scaled if a "
+"slide collision occurred. To get detailed information about collisions that "
+"occurred, use [method get_slide_collision]."
+msgstr ""
+
+#: doc/classes/KinematicBody3D.xml:136
+msgid ""
+"Moves the body while keeping it attached to slopes. Similar to [method "
+"move_and_slide].\n"
+"As long as the [code]snap[/code] vector is in contact with the ground, the "
+"body will remain attached to the surface. This means you must disable snap "
+"in order to jump, for example. You can do this by setting [code]snap[/code] "
+"to [code](0, 0, 0)[/code] or by using [method move_and_slide] instead."
+msgstr ""
+
+#: doc/classes/KinematicBody3D.xml:148
+msgid ""
+"Locks or unlocks the specified [code]axis[/code] depending on the value of "
+"[code]lock[/code]. See also [member axis_lock_motion_x], [member "
+"axis_lock_motion_y] and [member axis_lock_motion_z]."
+msgstr ""
+
+#: doc/classes/KinematicBody3D.xml:161
+msgid ""
+"Checks for collisions without moving the body. Virtually sets the node's "
+"position, scale and rotation to that of the given [Transform], then tries to "
+"move the body along the vector [code]rel_vec[/code]. Returns [code]true[/"
+"code] if a collision would occur."
+msgstr ""
+
+#: doc/classes/KinematicBody3D.xml:167
+msgid "Lock the body's X axis movement."
+msgstr ""
+
+#: doc/classes/KinematicBody3D.xml:170
+msgid "Lock the body's Y axis movement."
+msgstr ""
+
+#: doc/classes/KinematicBody3D.xml:173
+msgid "Lock the body's Z axis movement."
+msgstr ""
+
+#: doc/classes/KinematicCollision2D.xml:4
+msgid "Collision data for [KinematicBody2D] collisions."
+msgstr ""
+
+#: doc/classes/KinematicCollision2D.xml:7
+msgid ""
+"Contains collision data for [KinematicBody2D] collisions. When a "
+"[KinematicBody2D] is moved using [method KinematicBody2D.move_and_collide], "
+"it stops if it detects a collision with another body. If a collision is "
+"detected, a KinematicCollision2D object is returned.\n"
+"This object contains information about the collision, including the "
+"colliding object, the remaining motion, and the collision position. This "
+"information can be used to calculate a collision response."
+msgstr ""
+
+#: doc/classes/KinematicCollision2D.xml:16
+#: doc/classes/KinematicCollision3D.xml:16
+msgid "The colliding body."
+msgstr ""
+
+#: doc/classes/KinematicCollision2D.xml:19
+#: doc/classes/KinematicCollision3D.xml:19
+msgid ""
+"The colliding body's unique instance ID. See [method Object.get_instance_id]."
+msgstr ""
+
+#: doc/classes/KinematicCollision2D.xml:22
+#: doc/classes/KinematicCollision3D.xml:22
+msgid "The colliding body's metadata. See [Object]."
+msgstr ""
+
+#: doc/classes/KinematicCollision2D.xml:25
+#: doc/classes/KinematicCollision3D.xml:25
+msgid "The colliding body's shape."
+msgstr ""
+
+#: doc/classes/KinematicCollision2D.xml:28
+msgid "The colliding shape's index. See [CollisionObject2D]."
+msgstr ""
+
+#: doc/classes/KinematicCollision2D.xml:31
+#: doc/classes/KinematicCollision3D.xml:31
+msgid "The colliding object's velocity."
+msgstr ""
+
+#: doc/classes/KinematicCollision2D.xml:34
+#: doc/classes/KinematicCollision3D.xml:34
+msgid "The moving object's colliding shape."
+msgstr ""
+
+#: doc/classes/KinematicCollision2D.xml:37
+#: doc/classes/KinematicCollision3D.xml:37
+msgid "The colliding body's shape's normal at the point of collision."
+msgstr ""
+
+#: doc/classes/KinematicCollision2D.xml:40
+#: doc/classes/KinematicCollision3D.xml:40
+msgid "The point of collision, in global coordinates."
+msgstr ""
+
+#: doc/classes/KinematicCollision2D.xml:43
+#: doc/classes/KinematicCollision3D.xml:43
+msgid "The moving object's remaining movement vector."
+msgstr ""
+
+#: doc/classes/KinematicCollision2D.xml:46
+#: doc/classes/KinematicCollision3D.xml:46
+msgid "The distance the moving object traveled before collision."
+msgstr ""
+
+#: doc/classes/KinematicCollision3D.xml:4
+msgid "Collision data for [KinematicBody3D] collisions."
+msgstr ""
+
+#: doc/classes/KinematicCollision3D.xml:7
+msgid ""
+"Contains collision data for [KinematicBody3D] collisions. When a "
+"[KinematicBody3D] is moved using [method KinematicBody3D.move_and_collide], "
+"it stops if it detects a collision with another body. If a collision is "
+"detected, a KinematicCollision3D object is returned.\n"
+"This object contains information about the collision, including the "
+"colliding object, the remaining motion, and the collision position. This "
+"information can be used to calculate a collision response."
+msgstr ""
+
+#: doc/classes/KinematicCollision3D.xml:28
+msgid "The colliding shape's index. See [CollisionObject3D]."
+msgstr ""
+
+#: doc/classes/Label.xml:4
+msgid ""
+"Displays plain text in a line or wrapped inside a rectangle. For formatted "
+"text, use [RichTextLabel]."
+msgstr ""
+
+#: doc/classes/Label.xml:7
+msgid ""
+"Label displays plain text on the screen. It gives you control over the "
+"horizontal and vertical alignment, and can wrap the text inside the node's "
+"bounding rectangle. It doesn't support bold, italics or other formatting. "
+"For that, use [RichTextLabel] instead.\n"
+"[b]Note:[/b] Contrarily to most other [Control]s, Label's [member Control."
+"mouse_filter] defaults to [constant Control.MOUSE_FILTER_IGNORE] (i.e. it "
+"doesn't react to mouse input events). This implies that a label won't "
+"display any configured [member Control.hint_tooltip], unless you change its "
+"mouse filter."
+msgstr ""
+
+#: doc/classes/Label.xml:17
+msgid "Returns the amount of lines of text the Label has."
+msgstr ""
+
+#: doc/classes/Label.xml:24
+msgid "Returns the font size in pixels."
+msgstr ""
+
+#: doc/classes/Label.xml:31
+msgid ""
+"Returns the total number of printable characters in the text (excluding "
+"spaces and newlines)."
+msgstr ""
+
+#: doc/classes/Label.xml:38
+msgid ""
+"Returns the number of lines shown. Useful if the [Label]'s height cannot "
+"currently display all lines."
+msgstr ""
+
+#: doc/classes/Label.xml:44
+msgid ""
+"Controls the text's horizontal align. Supports left, center, right, and "
+"fill, or justify. Set it to one of the [enum Align] constants."
+msgstr ""
+
+#: doc/classes/Label.xml:47
+msgid ""
+"If [code]true[/code], wraps the text inside the node's bounding rectangle. "
+"If you resize the node, it will change its height automatically to show all "
+"the text."
+msgstr ""
+
+#: doc/classes/Label.xml:50
+msgid ""
+"If [code]true[/code], the Label only shows the text that fits inside its "
+"bounding rectangle. It also lets you scale the node down freely."
+msgstr ""
+
+#: doc/classes/Label.xml:53
+msgid ""
+"The node ignores the first [code]lines_skipped[/code] lines before it starts "
+"to display text."
+msgstr ""
+
+#: doc/classes/Label.xml:56
+msgid "Limits the lines of text the node shows on screen."
+msgstr ""
+
+#: doc/classes/Label.xml:60
+msgid ""
+"Limits the amount of visible characters. If you set [code]percent_visible[/"
+"code] to 0.5, only up to half of the text's characters will display on "
+"screen. Useful to animate the text in a dialog box."
+msgstr ""
+
+#: doc/classes/Label.xml:64
+msgid "The text to display on screen."
+msgstr ""
+
+#: doc/classes/Label.xml:67
+msgid "If [code]true[/code], all the text displays as UPPERCASE."
+msgstr ""
+
+#: doc/classes/Label.xml:70
+msgid ""
+"Controls the text's vertical align. Supports top, center, bottom, and fill. "
+"Set it to one of the [enum VAlign] constants."
+msgstr ""
+
+#: doc/classes/Label.xml:73
+msgid "Restricts the number of characters to display. Set to -1 to disable."
+msgstr ""
+
+#: doc/classes/Label.xml:78
+msgid "Align rows to the left (default)."
+msgstr ""
+
+#: doc/classes/Label.xml:81
+msgid "Align rows centered."
+msgstr ""
+
+#: doc/classes/Label.xml:84
+msgid "Align rows to the right."
+msgstr ""
+
+#: doc/classes/Label.xml:87
+msgid "Expand row whitespaces to fit the width."
+msgstr ""
+
+#: doc/classes/Label.xml:90
+msgid "Align the whole text to the top."
+msgstr ""
+
+#: doc/classes/Label.xml:93
+msgid "Align the whole text to the center."
+msgstr ""
+
+#: doc/classes/Label.xml:96
+msgid "Align the whole text to the bottom."
+msgstr ""
+
+#: doc/classes/Label.xml:99
+msgid "Align the whole text by spreading the rows."
+msgstr ""
+
+#: doc/classes/Label.xml:104
+msgid "[Font] used for the [Label]'s text."
+msgstr ""
+
+#: doc/classes/Label.xml:107
+msgid "Default text [Color] of the [Label]."
+msgstr ""
+
+#: doc/classes/Label.xml:110
+msgid "[Color] of the text's shadow effect."
+msgstr ""
+
+#: doc/classes/Label.xml:113
+msgid "The tint of [Font]'s outline. See [member DynamicFont.outline_color]."
+msgstr ""
+
+#: doc/classes/Label.xml:116
+msgid "Vertical space between lines in multiline [Label]."
+msgstr ""
+
+#: doc/classes/Label.xml:119
+msgid "Background [StyleBox] for the [Label]."
+msgstr ""
+
+#: doc/classes/Label.xml:122
+msgid ""
+"Boolean value. If set to 1 ([code]true[/code]), the shadow will be displayed "
+"around the whole text as an outline."
+msgstr ""
+
+#: doc/classes/Label.xml:125
+msgid "The horizontal offset of the text's shadow."
+msgstr ""
+
+#: doc/classes/Label.xml:128
+msgid "The vertical offset of the text's shadow."
+msgstr ""
+
+#: doc/classes/LargeTexture.xml:4
+msgid "A [Texture2D] capable of storing many smaller textures with offsets."
+msgstr ""
+
+#: doc/classes/LargeTexture.xml:7
+msgid ""
+"A [Texture2D] capable of storing many smaller textures with offsets.\n"
+"You can dynamically add pieces ([Texture2D]s) to this [LargeTexture] using "
+"different offsets."
+msgstr ""
+
+#: doc/classes/LargeTexture.xml:21
+msgid ""
+"Adds [code]texture[/code] to this [LargeTexture], starting on offset "
+"[code]ofs[/code]."
+msgstr ""
+
+#: doc/classes/LargeTexture.xml:28
+msgid "Clears the [LargeTexture]."
+msgstr ""
+
+#: doc/classes/LargeTexture.xml:35
+msgid "Returns the number of pieces currently in this [LargeTexture]."
+msgstr ""
+
+#: doc/classes/LargeTexture.xml:44
+msgid "Returns the offset of the piece with the index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/LargeTexture.xml:53
+msgid "Returns the [Texture2D] of the piece with the index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/LargeTexture.xml:64
+msgid ""
+"Sets the offset of the piece with the index [code]idx[/code] to [code]ofs[/"
+"code]."
+msgstr ""
+
+#: doc/classes/LargeTexture.xml:75
+msgid ""
+"Sets the [Texture2D] of the piece with index [code]idx[/code] to "
+"[code]texture[/code]."
+msgstr ""
+
+#: doc/classes/LargeTexture.xml:84
+msgid "Sets the size of this [LargeTexture]."
+msgstr ""
+
+#: doc/classes/Light2D.xml:4
+msgid "Casts light in a 2D environment."
+msgstr ""
+
+#: doc/classes/Light2D.xml:7
+msgid ""
+"Casts light in a 2D environment. Light is defined by a (usually grayscale) "
+"texture, a color, an energy value, a mode (see constants), and various other "
+"parameters (range and shadows-related).\n"
+"[b]Note:[/b] Light2D can also be used as a mask."
+msgstr ""
+
+#: doc/classes/Light2D.xml:11 doc/classes/LightOccluder2D.xml:10
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/2d/2d_lights_and_shadows."
+"html"
+msgstr ""
+
+#: doc/classes/Light2D.xml:17
+msgid "The Light2D's [Color]."
+msgstr ""
+
+#: doc/classes/Light2D.xml:20
+msgid "If [code]true[/code], Light2D will only appear when editing the scene."
+msgstr ""
+
+#: doc/classes/Light2D.xml:23
+msgid "If [code]true[/code], Light2D will emit light."
+msgstr ""
+
+#: doc/classes/Light2D.xml:26
+msgid ""
+"The Light2D's energy value. The larger the value, the stronger the light."
+msgstr ""
+
+#: doc/classes/Light2D.xml:29
+msgid "The Light2D's mode. See [enum Mode] constants for values."
+msgstr ""
+
+#: doc/classes/Light2D.xml:32
+msgid "The offset of the Light2D's [code]texture[/code]."
+msgstr ""
+
+#: doc/classes/Light2D.xml:35
+msgid "The height of the Light2D. Used with 2D normal mapping."
+msgstr ""
+
+#: doc/classes/Light2D.xml:38
+msgid ""
+"The layer mask. Only objects with a matching mask will be affected by the "
+"Light2D."
+msgstr ""
+
+#: doc/classes/Light2D.xml:41
+msgid "Maximum layer value of objects that are affected by the Light2D."
+msgstr ""
+
+#: doc/classes/Light2D.xml:44
+msgid "Minimum layer value of objects that are affected by the Light2D."
+msgstr ""
+
+#: doc/classes/Light2D.xml:47
+msgid ""
+"Maximum [code]z[/code] value of objects that are affected by the Light2D."
+msgstr ""
+
+#: doc/classes/Light2D.xml:50
+msgid ""
+"Minimum [code]z[/code] value of objects that are affected by the Light2D."
+msgstr ""
+
+#: doc/classes/Light2D.xml:53
+msgid "Shadow buffer size."
+msgstr ""
+
+#: doc/classes/Light2D.xml:56
+msgid "[Color] of shadows cast by the Light2D."
+msgstr ""
+
+#: doc/classes/Light2D.xml:59
+msgid "If [code]true[/code], the Light2D will cast shadows."
+msgstr ""
+
+#: doc/classes/Light2D.xml:62
+msgid "Shadow filter type. See [enum ShadowFilter] for possible values."
+msgstr ""
+
+#: doc/classes/Light2D.xml:65
+msgid "Smoothing value for shadows."
+msgstr ""
+
+#: doc/classes/Light2D.xml:68
+msgid ""
+"The shadow mask. Used with [LightOccluder2D] to cast shadows. Only occluders "
+"with a matching light mask will cast shadows."
+msgstr ""
+
+#: doc/classes/Light2D.xml:71
+msgid "[Texture2D] used for the Light2D's appearance."
+msgstr ""
+
+#: doc/classes/Light2D.xml:74
+msgid "The [code]texture[/code]'s scale factor."
+msgstr ""
+
+#: doc/classes/Light2D.xml:79
+msgid ""
+"Adds the value of pixels corresponding to the Light2D to the values of "
+"pixels under it. This is the common behavior of a light."
+msgstr ""
+
+#: doc/classes/Light2D.xml:82
+msgid ""
+"Subtracts the value of pixels corresponding to the Light2D to the values of "
+"pixels under it, resulting in inversed light effect."
+msgstr ""
+
+#: doc/classes/Light2D.xml:85
+msgid ""
+"Mix the value of pixels corresponding to the Light2D to the values of pixels "
+"under it by linear interpolation."
+msgstr ""
+
+#: doc/classes/Light2D.xml:88
+msgid ""
+"The light texture of the Light2D is used as a mask, hiding or revealing "
+"parts of the screen underneath depending on the value of each pixel of the "
+"light (mask) texture."
+msgstr ""
+
+#: doc/classes/Light2D.xml:91
+msgid "No filter applies to the shadow map. See [member shadow_filter]."
+msgstr ""
+
+#: doc/classes/Light2D.xml:94
+msgid ""
+"Percentage closer filtering (5 samples) applies to the shadow map. See "
+"[member shadow_filter]."
+msgstr ""
+
+#: doc/classes/Light2D.xml:97
+msgid ""
+"Percentage closer filtering (13 samples) applies to the shadow map. See "
+"[member shadow_filter]."
+msgstr ""
+
+#: doc/classes/Light3D.xml:4
+msgid "Provides a base class for different kinds of light nodes."
+msgstr ""
+
+#: doc/classes/Light3D.xml:7
+msgid ""
+"Light3D is the [i]abstract[/i] base class for light nodes. As it can't be "
+"instanced, it shouldn't be used directly. Other types of light nodes inherit "
+"from it. Light3D contains the common variables and parameters used for "
+"lighting."
+msgstr ""
+
+#: doc/classes/Light3D.xml:19
+msgid "Returns the value of the specified [enum Light3D.Param] parameter."
+msgstr ""
+
+#: doc/classes/Light3D.xml:30
+msgid "Sets the value of the specified [enum Light3D.Param] parameter."
+msgstr ""
+
+#: doc/classes/Light3D.xml:36
+msgid ""
+"If [code]true[/code], the light only appears in the editor and will not be "
+"visible at runtime."
+msgstr ""
+
+#: doc/classes/Light3D.xml:39
+msgid ""
+"The light's angular size in degrees. Only available for "
+"[DirectionalLight3D]s. For reference, the Sun from the Earth is "
+"approximately [code]0.5[/code]."
+msgstr ""
+
+#: doc/classes/Light3D.xml:42
+msgid "The light's bake mode. See [enum BakeMode]."
+msgstr ""
+
+#: doc/classes/Light3D.xml:45
+msgid ""
+"The light's color. An [i]overbright[/i] color can be used to achieve a "
+"result equivalent to increasing the light's [member light_energy]."
+msgstr ""
+
+#: doc/classes/Light3D.xml:48
+msgid "The light will affect objects in the selected layers."
+msgstr ""
+
+#: doc/classes/Light3D.xml:51
+msgid ""
+"The light's strength multiplier (this is not a physical unit). For "
+"[OmniLight3D] and [SpotLight3D], changing this value will only change the "
+"light color's intensity, not the light's radius."
+msgstr ""
+
+#: doc/classes/Light3D.xml:54
+msgid ""
+"Secondary multiplier used with indirect light (light bounces). Used with "
+"[GIProbe]."
+msgstr ""
+
+#: doc/classes/Light3D.xml:57
+msgid ""
+"If [code]true[/code], the light's effect is reversed, darkening areas and "
+"casting bright shadows."
+msgstr ""
+
+#: doc/classes/Light3D.xml:60
+msgid ""
+"[Texture2D] projected by light. [member shadow_enabled] must be on for the "
+"projector to work. Light projectors make the light appear as if it is "
+"shining through a colored but transparent object, almost like light shining "
+"through stained glass."
+msgstr ""
+
+#: doc/classes/Light3D.xml:63
+msgid ""
+"The size of the light in Godot units. Only available for [OmniLight3D]s and "
+"[SpotLight3D]s. Increasing this value will make the light fade out slower "
+"and shadows appear blurrier. This can be used to simulate area lights to an "
+"extent."
+msgstr ""
+
+#: doc/classes/Light3D.xml:66
+msgid ""
+"The intensity of the specular blob in objects affected by the light. At "
+"[code]0[/code], the light becomes a pure diffuse light. When not baking "
+"emission, this can be used to avoid unrealistic reflections when placing "
+"lights above an emissive surface."
+msgstr ""
+
+#: doc/classes/Light3D.xml:69
+msgid ""
+"Used to adjust shadow appearance. Too small a value results in self-"
+"shadowing (\"shadow acne\"), while too large a value causes shadows to "
+"separate from casters (\"peter-panning\"). Adjust as needed."
+msgstr ""
+
+#: doc/classes/Light3D.xml:72
+msgid ""
+"Blurs the edges of the shadow. Can be used to hide pixel artifacts in low-"
+"resolution shadow maps. A high value can impact performance, make shadows "
+"appear grainy and can cause other unwanted artifacts. Try to keep as near "
+"default as possible."
+msgstr ""
+
+#: doc/classes/Light3D.xml:75
+msgid "The color of shadows cast by this light."
+msgstr ""
+
+#: doc/classes/Light3D.xml:78
+msgid "If [code]true[/code], the light will cast shadows."
+msgstr ""
+
+#: doc/classes/Light3D.xml:81
+msgid ""
+"Offsets the lookup into the shadow map by the object's normal. This can be "
+"used to reduce self-shadowing artifacts without using [member shadow_bias]. "
+"In practice, this value should be tweaked along with [member shadow_bias] to "
+"reduce artifacts as much as possible."
+msgstr ""
+
+#: doc/classes/Light3D.xml:84
+msgid ""
+"If [code]true[/code], reverses the backface culling of the mesh. This can be "
+"useful when you have a flat mesh that has a light behind it. If you need to "
+"cast a shadow on both sides of the mesh, set the mesh to use double-sided "
+"shadows with [constant GeometryInstance3D."
+"SHADOW_CASTING_SETTING_DOUBLE_SIDED]."
+msgstr ""
+
+#: doc/classes/Light3D.xml:91
+msgid "Constant for accessing [member light_energy]."
+msgstr ""
+
+#: doc/classes/Light3D.xml:94
+msgid "Constant for accessing [member light_indirect_energy]."
+msgstr ""
+
+#: doc/classes/Light3D.xml:97
+msgid "Constant for accessing [member light_specular]."
+msgstr ""
+
+#: doc/classes/Light3D.xml:100
+msgid ""
+"Constant for accessing [member OmniLight3D.omni_range] or [member "
+"SpotLight3D.spot_range]."
+msgstr ""
+
+#: doc/classes/Light3D.xml:103
+msgid "Constant for accessing [member light_size]."
+msgstr ""
+
+#: doc/classes/Light3D.xml:106
+msgid ""
+"Constant for accessing [member OmniLight3D.omni_attenuation] or [member "
+"SpotLight3D.spot_attenuation]."
+msgstr ""
+
+#: doc/classes/Light3D.xml:109
+msgid "Constant for accessing [member SpotLight3D.spot_angle]."
+msgstr ""
+
+#: doc/classes/Light3D.xml:112
+msgid "Constant for accessing [member SpotLight3D.spot_angle_attenuation]."
+msgstr ""
+
+#: doc/classes/Light3D.xml:115
+msgid ""
+"Constant for accessing [member DirectionalLight3D."
+"directional_shadow_max_distance]."
+msgstr ""
+
+#: doc/classes/Light3D.xml:118
+msgid ""
+"Constant for accessing [member DirectionalLight3D."
+"directional_shadow_split_1]."
+msgstr ""
+
+#: doc/classes/Light3D.xml:121
+msgid ""
+"Constant for accessing [member DirectionalLight3D."
+"directional_shadow_split_2]."
+msgstr ""
+
+#: doc/classes/Light3D.xml:124
+msgid ""
+"Constant for accessing [member DirectionalLight3D."
+"directional_shadow_split_3]."
+msgstr ""
+
+#: doc/classes/Light3D.xml:127
+msgid ""
+"Constant for accessing [member DirectionalLight3D."
+"directional_shadow_fade_start]."
+msgstr ""
+
+#: doc/classes/Light3D.xml:130
+msgid "Constant for accessing [member shadow_normal_bias]."
+msgstr ""
+
+#: doc/classes/Light3D.xml:133
+msgid "Constant for accessing [member shadow_bias]."
+msgstr ""
+
+#: doc/classes/Light3D.xml:136
+msgid ""
+"Constant for accessing [member DirectionalLight3D."
+"directional_shadow_pancake_size]."
+msgstr ""
+
+#: doc/classes/Light3D.xml:139
+msgid "Constant for accessing [member shadow_blur]."
+msgstr ""
+
+#: doc/classes/Light3D.xml:142
+msgid "Constant for accessing [member shadow_transmittance_bias]."
+msgstr ""
+
+#: doc/classes/Light3D.xml:148
+msgid ""
+"Light is ignored when baking.\n"
+"[b]Note:[/b] Hiding a light does [i]not[/i] affect baking."
+msgstr ""
+
+#: doc/classes/LightOccluder2D.xml:4
+msgid "Occludes light cast by a Light2D, casting shadows."
+msgstr ""
+
+#: doc/classes/LightOccluder2D.xml:7
+msgid ""
+"Occludes light cast by a Light2D, casting shadows. The LightOccluder2D must "
+"be provided with an [OccluderPolygon2D] in order for the shadow to be "
+"computed."
+msgstr ""
+
+#: doc/classes/LightOccluder2D.xml:16
+msgid ""
+"The LightOccluder2D's light mask. The LightOccluder2D will cast shadows only "
+"from Light2D(s) that have the same light mask(s)."
+msgstr ""
+
+#: doc/classes/LightOccluder2D.xml:19
+msgid "The [OccluderPolygon2D] used to compute the shadow."
+msgstr ""
+
+#: doc/classes/Line2D.xml:4
+msgid "A 2D line."
+msgstr ""
+
+#: doc/classes/Line2D.xml:7
+msgid "A line through several points in 2D space."
+msgstr ""
+
+#: doc/classes/Line2D.xml:20
+msgid ""
+"Adds a point at the [code]position[/code]. Appends the point at the end of "
+"the line.\n"
+"If [code]at_position[/code] is given, the point is inserted before the point "
+"number [code]at_position[/code], moving that point (and every point after) "
+"after the inserted point. If [code]at_position[/code] is not given, or is an "
+"illegal value ([code]at_position < 0[/code] or [code]at_position >= [method "
+"get_point_count][/code]), the point will be appended at the end of the point "
+"list."
+msgstr ""
+
+#: doc/classes/Line2D.xml:28
+msgid "Removes all points from the line."
+msgstr ""
+
+#: doc/classes/Line2D.xml:35
+msgid "Returns the Line2D's amount of points."
+msgstr ""
+
+#: doc/classes/Line2D.xml:44
+msgid "Returns point [code]i[/code]'s position."
+msgstr ""
+
+#: doc/classes/Line2D.xml:53
+msgid "Removes the point at index [code]i[/code] from the line."
+msgstr ""
+
+#: doc/classes/Line2D.xml:64
+msgid ""
+"Overwrites the position in point [code]i[/code] with the supplied "
+"[code]position[/code]."
+msgstr ""
+
+#: doc/classes/Line2D.xml:70
+msgid "If [code]true[/code], the line's border will be anti-aliased."
+msgstr ""
+
+#: doc/classes/Line2D.xml:73
+msgid ""
+"Controls the style of the line's first point. Use [enum LineCapMode] "
+"constants."
+msgstr ""
+
+#: doc/classes/Line2D.xml:76
+msgid "The line's color. Will not be used if a gradient is set."
+msgstr ""
+
+#: doc/classes/Line2D.xml:79
+msgid ""
+"Controls the style of the line's last point. Use [enum LineCapMode] "
+"constants."
+msgstr ""
+
+#: doc/classes/Line2D.xml:82
+msgid ""
+"The gradient is drawn through the whole line from start to finish. The "
+"default color will not be used if a gradient is set."
+msgstr ""
+
+#: doc/classes/Line2D.xml:85
+msgid "The style for the points between the start and the end."
+msgstr ""
+
+#: doc/classes/Line2D.xml:88
+msgid ""
+"The points that form the lines. The line is drawn between every point set in "
+"this array."
+msgstr ""
+
+#: doc/classes/Line2D.xml:91
+msgid ""
+"The smoothness of the rounded joints and caps. This is only used if a cap or "
+"joint is set as round."
+msgstr ""
+
+#: doc/classes/Line2D.xml:94
+msgid ""
+"The direction difference in radians between vector points. This value is "
+"only used if [code]joint mode[/code] is set to [constant LINE_JOINT_SHARP]."
+msgstr ""
+
+#: doc/classes/Line2D.xml:97
+msgid ""
+"The texture used for the line's texture. Uses [code]texture_mode[/code] for "
+"drawing style."
+msgstr ""
+
+#: doc/classes/Line2D.xml:100
+msgid ""
+"The style to render the [code]texture[/code] on the line. Use [enum "
+"LineTextureMode] constants."
+msgstr ""
+
+#: doc/classes/Line2D.xml:103
+msgid "The line's width."
+msgstr ""
+
+#: doc/classes/Line2D.xml:106
+msgid ""
+"The line's width varies with the curve. The original width is simply "
+"multiply by the value of the Curve."
+msgstr ""
+
+#: doc/classes/Line2D.xml:111
+msgid ""
+"The line's joints will be pointy. If [code]sharp_limit[/code] is greater "
+"than the rotation of a joint, it becomes a bevel joint instead."
+msgstr ""
+
+#: doc/classes/Line2D.xml:114
+msgid "The line's joints will be bevelled/chamfered."
+msgstr ""
+
+#: doc/classes/Line2D.xml:117
+msgid "The line's joints will be rounded."
+msgstr ""
+
+#: doc/classes/Line2D.xml:120
+msgid "Don't draw a line cap."
+msgstr ""
+
+#: doc/classes/Line2D.xml:123
+msgid "Draws the line cap as a box."
+msgstr ""
+
+#: doc/classes/Line2D.xml:126
+msgid "Draws the line cap as a circle."
+msgstr ""
+
+#: doc/classes/Line2D.xml:129
+msgid ""
+"Takes the left pixels of the texture and renders it over the whole line."
+msgstr ""
+
+#: doc/classes/Line2D.xml:132
+msgid ""
+"Tiles the texture over the line. The texture must be imported with "
+"[b]Repeat[/b] enabled for it to work properly."
+msgstr ""
+
+#: doc/classes/Line2D.xml:135
+msgid ""
+"Stretches the texture across the line. Import the texture with [b]Repeat[/b] "
+"disabled for best results."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:4
+msgid "Control that provides single-line string editing."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:7
+msgid ""
+"LineEdit provides a single-line string editor, used for text fields.\n"
+"It features many built-in shortcuts which will always be available "
+"([kbd]Ctrl[/kbd] here maps to [kbd]Cmd[/kbd] on macOS):\n"
+"- [kbd]Ctrl + C[/kbd]: Copy\n"
+"- [kbd]Ctrl + X[/kbd]: Cut\n"
+"- [kbd]Ctrl + V[/kbd] or [kbd]Ctrl + Y[/kbd]: Paste/\"yank\"\n"
+"- [kbd]Ctrl + Z[/kbd]: Undo\n"
+"- [kbd]Ctrl + Shift + Z[/kbd]: Redo\n"
+"- [kbd]Ctrl + U[/kbd]: Delete text from the cursor position to the beginning "
+"of the line\n"
+"- [kbd]Ctrl + K[/kbd]: Delete text from the cursor position to the end of "
+"the line\n"
+"- [kbd]Ctrl + A[/kbd]: Select all text\n"
+"- [kbd]Up Arrow[/kbd]/[kbd]Down Arrow[/kbd]: Move the cursor to the "
+"beginning/end of the line\n"
+"On macOS, some extra keyboard shortcuts are available:\n"
+"- [kbd]Ctrl + F[/kbd]: Same as [kbd]Right Arrow[/kbd], move the cursor one "
+"character right\n"
+"- [kbd]Ctrl + B[/kbd]: Same as [kbd]Left Arrow[/kbd], move the cursor one "
+"character left\n"
+"- [kbd]Ctrl + P[/kbd]: Same as [kbd]Up Arrow[/kbd], move the cursor to the "
+"previous line\n"
+"- [kbd]Ctrl + N[/kbd]: Same as [kbd]Down Arrow[/kbd], move the cursor to the "
+"next line\n"
+"- [kbd]Ctrl + D[/kbd]: Same as [kbd]Delete[/kbd], delete the character on "
+"the right side of cursor\n"
+"- [kbd]Ctrl + H[/kbd]: Same as [kbd]Backspace[/kbd], delete the character on "
+"the left side of the cursor\n"
+"- [kbd]Ctrl + A[/kbd]: Same as [kbd]Home[/kbd], move the cursor to the "
+"beginning of the line\n"
+"- [kbd]Ctrl + E[/kbd]: Same as [kbd]End[/kbd], move the cursor to the end of "
+"the line\n"
+"- [kbd]Cmd + Left Arrow[/kbd]: Same as [kbd]Home[/kbd], move the cursor to "
+"the beginning of the line\n"
+"- [kbd]Cmd + Right Arrow[/kbd]: Same as [kbd]End[/kbd], move the cursor to "
+"the end of the line"
+msgstr ""
+
+#: doc/classes/LineEdit.xml:39
+msgid ""
+"Adds [code]text[/code] after the cursor. If the resulting value is longer "
+"than [member max_length], nothing happens."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:46
+msgid "Erases the [LineEdit]'s [member text]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:53
+msgid ""
+"Deletes one character at the cursor's current position (equivalent to "
+"pressing [kbd]Delete[/kbd])."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:64
+msgid ""
+"Deletes a section of the [member text] going from position "
+"[code]from_column[/code] to [code]to_column[/code]. Both parameters should "
+"be within the text's length."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:71
+msgid "Clears the current selection."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:78
+msgid ""
+"Returns the [PopupMenu] of this [LineEdit]. By default, this menu is "
+"displayed when right-clicking on the [LineEdit]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:87
+msgid "Executes a given action as defined in the [enum MenuItems] enum."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:98
+msgid ""
+"Selects characters inside [LineEdit] between [code]from[/code] and [code]to[/"
+"code]. By default, [code]from[/code] is at the beginning and [code]to[/code] "
+"at the end.\n"
+"[codeblock]\n"
+"text = \"Welcome\"\n"
+"select() # Will select \"Welcome\".\n"
+"select(4) # Will select \"ome\".\n"
+"select(2, 5) # Will select \"lco\".\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/LineEdit.xml:111
+msgid "Selects the whole [String]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:117
+msgid "Text alignment as defined in the [enum Align] enum."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:120 doc/classes/TextEdit.xml:358
+msgid "If [code]true[/code], the caret (visual cursor) blinks."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:123 doc/classes/TextEdit.xml:361
+msgid "Duration (in seconds) of a caret's blinking cycle."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:128
+msgid ""
+"The cursor's position inside the [LineEdit]. When set, the text may scroll "
+"to accommodate it."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:131
+msgid ""
+"If [code]true[/code], the [LineEdit] will show a clear button if [code]text[/"
+"code] is not empty, which can be used to clear the text quickly."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:134
+msgid "If [code]true[/code], the context menu will appear when right-clicked."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:137
+msgid ""
+"If [code]false[/code], existing text cannot be modified and new text cannot "
+"be added."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:140
+msgid ""
+"If [code]true[/code], the [LineEdit] width will increase to stay longer than "
+"the [member text]. It will [b]not[/b] compress if the [member text] is "
+"shortened."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:144
+msgid ""
+"Maximum amount of characters that can be entered inside the [LineEdit]. If "
+"[code]0[/code], there is no limit."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:148
+msgid ""
+"Opacity of the [member placeholder_text]. From [code]0[/code] to [code]1[/"
+"code]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:151
+msgid ""
+"Text shown when the [LineEdit] is empty. It is [b]not[/b] the [LineEdit]'s "
+"default value (see [member text])."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:154
+msgid ""
+"Sets the icon that will appear in the right end of the [LineEdit] if there's "
+"no [member text], or always, if [member clear_button_enabled] is set to "
+"[code]false[/code]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:157
+msgid ""
+"If [code]true[/code], every character is replaced with the secret character "
+"(see [member secret_character])."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:160
+msgid ""
+"The character to use to mask secret input (defaults to \"*\"). Only a single "
+"character can be used as the secret character."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:163
+msgid ""
+"If [code]false[/code], it's impossible to select the text using mouse nor "
+"keyboard."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:166
+msgid "If [code]false[/code], using shortcuts will be disabled."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:169
+msgid ""
+"String value of the [LineEdit].\n"
+"[b]Note:[/b] Changing text using this property won't emit the [signal "
+"text_changed] signal."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:173 doc/classes/TextEdit.xml:434
+msgid ""
+"If [code]true[/code], the native virtual keyboard is shown when focused on "
+"platforms that support it."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:179
+msgid ""
+"Emitted when trying to append text that would overflow the [member "
+"max_length]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:186 doc/classes/TextEdit.xml:490
+msgid "Emitted when the text changes."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:193
+msgid "Emitted when the user presses [constant KEY_ENTER] on the [LineEdit]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:199
+msgid "Aligns the text on the left-hand side of the [LineEdit]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:202
+msgid "Centers the text in the middle of the [LineEdit]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:205
+msgid "Aligns the text on the right-hand side of the [LineEdit]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:208
+msgid "Stretches whitespaces to fit the [LineEdit]'s width."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:211 doc/classes/TextEdit.xml:505
+msgid "Cuts (copies and clears) the selected text."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:214 doc/classes/TextEdit.xml:508
+msgid "Copies the selected text."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:217
+msgid ""
+"Pastes the clipboard text over the selected text (or at the cursor's "
+"position).\n"
+"Non-printable escape characters are automatically stripped from the OS "
+"clipboard via [method String.strip_escapes]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:221
+msgid "Erases the whole [LineEdit] text."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:224
+msgid "Selects the whole [LineEdit] text."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:227 doc/classes/TextEdit.xml:520
+msgid "Undoes the previous action."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:230
+msgid "Reverse the last undo action."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:233 doc/classes/TextEdit.xml:526
+msgid "Represents the size of the [enum MenuItems] enum."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:238
+msgid "Texture for the clear button. See [member clear_button_enabled]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:241
+msgid "Color used as default tint for the clear button."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:244
+msgid "Color used for the clear button when it's pressed."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:247
+msgid "Color of the [LineEdit]'s visual cursor (caret)."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:250
+msgid "Background used when [LineEdit] has GUI focus."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:253
+msgid "Font used for the text."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:256
+msgid "Default font color."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:259
+msgid "Font color for selected text (inside the selection rectangle)."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:262
+msgid "Font color when editing is disabled."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:265
+msgid ""
+"Minimum horizontal space for the text (not counting the clear button and "
+"content margins). This value is measured in count of space characters (i.e. "
+"this amount of space characters can be displayed without scrolling)."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:268
+msgid "Default background for the [LineEdit]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:271
+msgid ""
+"Background used when [LineEdit] is in read-only mode ([member editable] is "
+"set to [code]false[/code])."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:274
+msgid "Color of the selection rectangle."
+msgstr ""
+
+#: doc/classes/LineShape2D.xml:4
+msgid "Line shape for 2D collisions."
+msgstr ""
+
+#: doc/classes/LineShape2D.xml:7
+msgid ""
+"Line shape for 2D collisions. It works like a 2D plane and will not allow "
+"any physics body to go to the negative side. Not recommended for rigid "
+"bodies, and usually not recommended for static bodies either because it "
+"forces checks against it on every frame."
+msgstr ""
+
+#: doc/classes/LineShape2D.xml:15
+msgid "The line's distance from the origin."
+msgstr ""
+
+#: doc/classes/LineShape2D.xml:18
+msgid "The line's normal."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:4
+msgid "Simple button used to represent a link to some resource."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:7
+msgid ""
+"This kind of button is primarily used when the interaction with the button "
+"causes a context change (like linking to a web page)."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:21
+msgid ""
+"Determines when to show the underline. See [enum UnderlineMode] for options."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:26
+msgid "The LinkButton will always show an underline at the bottom of its text."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:29
+msgid ""
+"The LinkButton will show an underline at the bottom of its text when the "
+"mouse cursor is over it."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:32
+msgid "The LinkButton will never show an underline at the bottom of its text."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:37
+msgid ""
+"[StyleBox] used when the [LinkButton] is focused. It is displayed over the "
+"current [StyleBox], so using [StyleBoxEmpty] will just disable the focus "
+"visual effect."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:40
+msgid "[Font] of the [LinkButton]'s text."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:43
+msgid "Default text [Color] of the [LinkButton]."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:46
+msgid "Text [Color] used when the [LinkButton] is being hovered."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:49
+msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:52
+msgid "The vertical space between the baseline of text and the underline."
+msgstr ""
+
+#: doc/classes/Listener3D.xml:4
+msgid "Overrides the location sounds are heard from."
+msgstr ""
+
+#: doc/classes/Listener3D.xml:7
+msgid ""
+"Once added to the scene tree and enabled using [method make_current], this "
+"node will override the location sounds are heard from. This can be used to "
+"listen from a location different from the [Camera3D].\n"
+"[b]Note:[/b] There is no 2D equivalent for this node yet."
+msgstr ""
+
+#: doc/classes/Listener3D.xml:17
+msgid "Disables the listener to use the current camera's listener instead."
+msgstr ""
+
+#: doc/classes/Listener3D.xml:24
+msgid "Returns the listener's global orthonormalized [Transform]."
+msgstr ""
+
+#: doc/classes/Listener3D.xml:31
+msgid ""
+"Returns [code]true[/code] if the listener was made current using [method "
+"make_current], [code]false[/code] otherwise.\n"
+"[b]Note:[/b] There may be more than one Listener3D marked as \"current\" in "
+"the scene tree, but only the one that was made current last will be used."
+msgstr ""
+
+#: doc/classes/Listener3D.xml:39
+msgid "Enables the listener. This will override the current camera's listener."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:4
+msgid "Abstract base class for the game's main loop."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:7
+msgid ""
+"[MainLoop] is the abstract base class for a Godot project's game loop. It is "
+"inherited by [SceneTree], which is the default game loop implementation used "
+"in Godot projects, though it is also possible to write and use one's own "
+"[MainLoop] subclass instead of the scene tree.\n"
+"Upon the application start, a [MainLoop] implementation must be provided to "
+"the OS; otherwise, the application will exit. This happens automatically "
+"(and a [SceneTree] is created) unless a main [Script] is provided from the "
+"command line (with e.g. [code]godot -s my_loop.gd[/code], which should then "
+"be a [MainLoop] implementation.\n"
+"Here is an example script implementing a simple [MainLoop]:\n"
+"[b]FIXME:[/b] No longer valid after DisplayServer split and Input "
+"refactoring.\n"
+"[codeblock]\n"
+"extends MainLoop\n"
+"\n"
+"var time_elapsed = 0\n"
+"var keys_typed = []\n"
+"var quit = false\n"
+"\n"
+"func _initialize():\n"
+" print(\"Initialized:\")\n"
+" print(\" Starting time: %s\" % str(time_elapsed))\n"
+"\n"
+"func _idle(delta):\n"
+" time_elapsed += delta\n"
+" # Return true to end the main loop.\n"
+" return quit\n"
+"\n"
+"func _input_event(event):\n"
+" # Record keys.\n"
+" if event is InputEventKey and event.pressed and !event.echo:\n"
+" keys_typed.append(OS.get_keycode_string(event.keycode))\n"
+" # Quit on Escape press.\n"
+" if event.keycode == KEY_ESCAPE:\n"
+" quit = true\n"
+" # Quit on any mouse click.\n"
+" if event is InputEventMouseButton:\n"
+" quit = true\n"
+"\n"
+"func _finalize():\n"
+" print(\"Finalized:\")\n"
+" print(\" End time: %s\" % str(time_elapsed))\n"
+" print(\" Keys typed: %s\" % var2str(keys_typed))\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/MainLoop.xml:51
+msgid "Called before the program exits."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:60
+msgid ""
+"Called each idle frame with the time since the last idle frame as argument "
+"(in seconds). Equivalent to [method Node._process].\n"
+"If implemented, the method must return a boolean value. [code]true[/code] "
+"ends the main loop, while [code]false[/code] lets it proceed to the next "
+"frame."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:68
+msgid "Called once during initialization."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:77
+msgid ""
+"Called each physics frame with the time since the last physics frame as "
+"argument (in seconds). Equivalent to [method Node._physics_process].\n"
+"If implemented, the method must return a boolean value. [code]true[/code] "
+"ends the main loop, while [code]false[/code] lets it proceed to the next "
+"frame."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:85
+msgid ""
+"Should not be called manually, override [method _finalize] instead. Will be "
+"removed in Godot 4.0."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:94
+msgid ""
+"Should not be called manually, override [method _idle] instead. Will be "
+"removed in Godot 4.0."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:101
+msgid ""
+"Should not be called manually, override [method _initialize] instead. Will "
+"be removed in Godot 4.0."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:110
+msgid ""
+"Should not be called manually, override [method _iteration] instead. Will be "
+"removed in Godot 4.0."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:121
+msgid "Emitted when a user responds to a permission request."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:127 doc/classes/Node.xml:946
+msgid ""
+"Notification received from the OS when the application is exceeding its "
+"allocated memory.\n"
+"Specific to the iOS platform."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:131 doc/classes/Node.xml:950
+msgid ""
+"Notification received when translations may have changed. Can be triggered "
+"by the user changing the locale. Can be used to respond to language changes, "
+"for example to change the UI strings on the fly. Useful when working with "
+"the built-in translation support, like [method Object.tr]."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:134 doc/classes/Node.xml:953
+msgid ""
+"Notification received from the OS when a request for \"About\" information "
+"is sent.\n"
+"Specific to the macOS platform."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:138 doc/classes/Node.xml:957
+msgid ""
+"Notification received from Godot's crash handler when the engine is about to "
+"crash.\n"
+"Implemented on desktop platforms if the crash handler is enabled."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:142 doc/classes/Node.xml:961
+msgid ""
+"Notification received from the OS when an update of the Input Method Engine "
+"occurs (e.g. change of IME cursor position or composition string).\n"
+"Specific to the macOS platform."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:146 doc/classes/Node.xml:965
+msgid ""
+"Notification received from the OS when the application is resumed.\n"
+"Specific to the Android platform."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:150 doc/classes/Node.xml:969
+msgid ""
+"Notification received from the OS when the application is paused.\n"
+"Specific to the Android platform."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:154 doc/classes/Node.xml:973
+msgid ""
+"Notification received from the OS when the application is focused, i.e. when "
+"changing the focus from the OS desktop or a thirdparty application to any "
+"open window of the Godot instance.\n"
+"Implemented on desktop platforms."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:158 doc/classes/Node.xml:977
+msgid ""
+"Notification received from the OS when the application is defocused, i.e. "
+"when changing the focus from any open window of the Godot instance to the OS "
+"desktop or a thirdparty application.\n"
+"Implemented on desktop platforms."
+msgstr ""
+
+#: doc/classes/MarginContainer.xml:4
+msgid "Simple margin container."
+msgstr ""
+
+#: doc/classes/MarginContainer.xml:7
+msgid ""
+"Adds a top, left, bottom, and right margin to all [Control] nodes that are "
+"direct children of the container. To control the [MarginContainer]'s margin, "
+"use the [code]margin_*[/code] theme properties listed below.\n"
+"[b]Note:[/b] Be careful, [Control] margin values are different than the "
+"constant margin values. If you want to change the custom margin values of "
+"the [MarginContainer] by code, you should use the following examples:\n"
+"[codeblock]\n"
+"var margin_value = 100\n"
+"set(\"custom_constants/margin_top\", margin_value)\n"
+"set(\"custom_constants/margin_left\", margin_value)\n"
+"set(\"custom_constants/margin_bottom\", margin_value)\n"
+"set(\"custom_constants/margin_right\", margin_value)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/MarginContainer.xml:25
+msgid ""
+"All direct children of [MarginContainer] will have a bottom margin of "
+"[code]margin_bottom[/code] pixels."
+msgstr ""
+
+#: doc/classes/MarginContainer.xml:28
+msgid ""
+"All direct children of [MarginContainer] will have a left margin of "
+"[code]margin_left[/code] pixels."
+msgstr ""
+
+#: doc/classes/MarginContainer.xml:31
+msgid ""
+"All direct children of [MarginContainer] will have a right margin of "
+"[code]margin_right[/code] pixels."
+msgstr ""
+
+#: doc/classes/MarginContainer.xml:34
+msgid ""
+"All direct children of [MarginContainer] will have a top margin of "
+"[code]margin_top[/code] pixels."
+msgstr ""
+
+#: doc/classes/Marshalls.xml:4
+msgid "Data transformation (marshalling) and encoding helpers."
+msgstr ""
+
+#: doc/classes/Marshalls.xml:7
+msgid "Provides data transformation and encoding utility functions."
+msgstr ""
+
+#: doc/classes/Marshalls.xml:18
+msgid ""
+"Returns a decoded [PackedByteArray] corresponding to the Base64-encoded "
+"string [code]base64_str[/code]."
+msgstr ""
+
+#: doc/classes/Marshalls.xml:27
+msgid ""
+"Returns a decoded string corresponding to the Base64-encoded string "
+"[code]base64_str[/code]."
+msgstr ""
+
+#: doc/classes/Marshalls.xml:38
+msgid ""
+"Returns a decoded [Variant] corresponding to the Base64-encoded string "
+"[code]base64_str[/code]. If [code]allow_objects[/code] is [code]true[/code], "
+"decoding objects is allowed.\n"
+"[b]Warning:[/b] 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."
+msgstr ""
+
+#: doc/classes/Marshalls.xml:48
+msgid "Returns a Base64-encoded string of a given [PackedByteArray]."
+msgstr ""
+
+#: doc/classes/Marshalls.xml:57
+msgid ""
+"Returns a Base64-encoded string of the UTF-8 string [code]utf8_str[/code]."
+msgstr ""
+
+#: doc/classes/Marshalls.xml:68
+msgid ""
+"Returns a Base64-encoded string of the [Variant] [code]variant[/code]. If "
+"[code]full_objects[/code] is [code]true[/code], encoding objects is allowed "
+"(and can potentially include code)."
+msgstr ""
+
+#: doc/classes/Material.xml:4
+msgid "Abstract base [Resource] for coloring and shading geometry."
+msgstr ""
+
+#: doc/classes/Material.xml:7
+msgid ""
+"Material is a base [Resource] used for coloring and shading geometry. All "
+"materials inherit from it and almost all [VisualInstance3D] derived nodes "
+"carry a Material. A few flags and parameters are shared between all material "
+"types and are configured here."
+msgstr ""
+
+#: doc/classes/Material.xml:15
+msgid ""
+"Sets the [Material] to be used for the next pass. This renders the object "
+"again using a different material.\n"
+"[b]Note:[/b] only applies to [StandardMaterial3D]s and [ShaderMaterial]s "
+"with type \"Spatial\"."
+msgstr ""
+
+#: doc/classes/Material.xml:19
+msgid ""
+"Sets the render priority for transparent objects in 3D scenes. Higher "
+"priority objects will be sorted in front of lower priority objects.\n"
+"[b]Note:[/b] this only applies to sorting of transparent objects. This will "
+"not impact how transparent objects are sorted relative to opaque objects. "
+"This is because opaque objects are not sorted, while transparent objects are "
+"sorted from back to front (subject to priority)."
+msgstr ""
+
+#: doc/classes/Material.xml:25
+msgid "Maximum value for the [member render_priority] parameter."
+msgstr ""
+
+#: doc/classes/Material.xml:28
+msgid "Minimum value for the [member render_priority] parameter."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:4
+msgid "Special button that brings up a [PopupMenu] when clicked."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:7
+msgid ""
+"Special button that brings up a [PopupMenu] when clicked.\n"
+"New items can be created inside this [PopupMenu] using [code]get_popup()."
+"add_item(\"My Item Name\")[/code]. You can also create them directly from "
+"the editor. To do so, select the [MenuButton] node, then in the toolbar at "
+"the top of the 2D editor, click [b]Items[/b] then click [b]Add[/b] in the "
+"popup. You will be able to give each items new properties."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:17 doc/classes/OptionButton.xml:106
+msgid "Returns the [PopupMenu] contained in this button."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:26
+msgid ""
+"If [code]true[/code], shortcuts are disabled and cannot be used to trigger "
+"the button."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:36
+msgid ""
+"If [code]true[/code], when the cursor hovers above another [MenuButton] "
+"within the same parent which also has [code]switch_on_hover[/code] enabled, "
+"it will close the current [MenuButton] and open the other one."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:43
+msgid "Emitted when the [PopupMenu] of this MenuButton is about to show."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:51
+msgid "[StyleBox] used when the [MenuButton] is disabled."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:54
+msgid ""
+"[StyleBox] used when the [MenuButton] is focused. It is displayed over the "
+"current [StyleBox], so using [StyleBoxEmpty] will just disable the focus "
+"visual effect."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:57
+msgid "[Font] of the [MenuButton]'s text."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:60
+msgid "Default text [Color] of the [MenuButton]."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:63
+msgid "Text [Color] used when the [MenuButton] is disabled."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:66
+msgid "Text [Color] used when the [MenuButton] is being hovered."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:69
+msgid "Text [Color] used when the [MenuButton] is being pressed."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:72
+msgid "[StyleBox] used when the [MenuButton] is being hovered."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:75
+msgid "The horizontal space between [MenuButton]'s icon and text."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:78
+msgid "Default [StyleBox] for the [MenuButton]."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:81
+msgid "[StyleBox] used when the [MenuButton] is being pressed."
+msgstr ""
+
+#: doc/classes/Mesh.xml:4
+msgid "A [Resource] that contains vertex array-based geometry."
+msgstr ""
+
+#: doc/classes/Mesh.xml:7
+msgid ""
+"Mesh is a type of [Resource] that contains vertex array-based geometry, "
+"divided in [i]surfaces[/i]. Each surface contains a completely separate "
+"array and a material used to draw it. Design wise, a mesh with multiple "
+"surfaces is preferred to a single surface, because objects created in 3D "
+"editing software commonly contain multiple materials."
+msgstr ""
+
+#: doc/classes/Mesh.xml:16
+msgid "Calculate a [ConvexPolygonShape3D] from the mesh."
+msgstr ""
+
+#: doc/classes/Mesh.xml:25
+msgid ""
+"Calculate an outline mesh at a defined offset (margin) from the original "
+"mesh.\n"
+"[b]Note:[/b] This method typically returns the vertices in reverse order (e."
+"g. clockwise to counterclockwise)."
+msgstr ""
+
+#: doc/classes/Mesh.xml:33
+msgid "Calculate a [ConcavePolygonShape3D] from the mesh."
+msgstr ""
+
+#: doc/classes/Mesh.xml:40
+msgid "Generate a [TriangleMesh] from the mesh."
+msgstr ""
+
+#: doc/classes/Mesh.xml:47
+msgid ""
+"Returns the smallest [AABB] enclosing this mesh. Not affected by "
+"[code]custom_aabb[/code].\n"
+"[b]Note:[/b] This is only implemented for [ArrayMesh] and [PrimitiveMesh]."
+msgstr ""
+
+#: doc/classes/Mesh.xml:55
+msgid ""
+"Returns all the vertices that make up the faces of the mesh. Each three "
+"vertices represent one triangle."
+msgstr ""
+
+#: doc/classes/Mesh.xml:62
+msgid "Returns the amount of surfaces that the [Mesh] holds."
+msgstr ""
+
+#: doc/classes/Mesh.xml:71
+msgid ""
+"Returns the arrays for the vertices, normals, uvs, etc. that make up the "
+"requested surface (see [method ArrayMesh.add_surface_from_arrays])."
+msgstr ""
+
+#: doc/classes/Mesh.xml:80
+msgid "Returns the blend shape arrays for the requested surface."
+msgstr ""
+
+#: doc/classes/Mesh.xml:89
+msgid ""
+"Returns a [Material] in a given surface. Surface is rendered using this "
+"material."
+msgstr ""
+
+#: doc/classes/Mesh.xml:100
+msgid ""
+"Sets a [Material] for a given surface. Surface will be rendered using this "
+"material."
+msgstr ""
+
+#: doc/classes/Mesh.xml:106
+msgid "Sets a hint to be used for lightmap resolution."
+msgstr ""
+
+#: doc/classes/Mesh.xml:111
+msgid "Render array as points (one vertex equals one point)."
+msgstr ""
+
+#: doc/classes/Mesh.xml:114
+msgid "Render array as lines (every two vertices a line is created)."
+msgstr ""
+
+#: doc/classes/Mesh.xml:117
+msgid "Render array as line strip."
+msgstr ""
+
+#: doc/classes/Mesh.xml:120
+msgid "Render array as triangles (every three vertices a triangle is created)."
+msgstr ""
+
+#: doc/classes/Mesh.xml:123
+msgid "Render array as triangle strips."
+msgstr ""
+
+#: doc/classes/Mesh.xml:126 doc/classes/RenderingServer.xml:3185
+msgid "Blend shapes are normalized."
+msgstr ""
+
+#: doc/classes/Mesh.xml:129 doc/classes/RenderingServer.xml:3188
+msgid "Blend shapes are relative to base weight."
+msgstr ""
+
+#: doc/classes/Mesh.xml:132
+msgid ""
+"Mesh array contains vertices. All meshes require a vertex array so this "
+"should always be present."
+msgstr ""
+
+#: doc/classes/Mesh.xml:135
+msgid "Mesh array contains normals."
+msgstr ""
+
+#: doc/classes/Mesh.xml:138
+msgid "Mesh array contains tangents."
+msgstr ""
+
+#: doc/classes/Mesh.xml:141
+msgid "Mesh array contains colors."
+msgstr ""
+
+#: doc/classes/Mesh.xml:144
+msgid "Mesh array contains UVs."
+msgstr ""
+
+#: doc/classes/Mesh.xml:147
+msgid "Mesh array contains second UV."
+msgstr ""
+
+#: doc/classes/Mesh.xml:150
+msgid "Mesh array contains bones."
+msgstr ""
+
+#: doc/classes/Mesh.xml:153
+msgid "Mesh array contains bone weights."
+msgstr ""
+
+#: doc/classes/Mesh.xml:156
+msgid "Mesh array uses indices."
+msgstr ""
+
+#: doc/classes/Mesh.xml:159 doc/classes/RenderingServer.xml:3141
+msgid "Flag used to mark a compressed (half float) normal array."
+msgstr ""
+
+#: doc/classes/Mesh.xml:162 doc/classes/RenderingServer.xml:3144
+msgid "Flag used to mark a compressed (half float) tangent array."
+msgstr ""
+
+#: doc/classes/Mesh.xml:165 doc/classes/RenderingServer.xml:3147
+msgid "Flag used to mark a compressed (half float) color array."
+msgstr ""
+
+#: doc/classes/Mesh.xml:168 doc/classes/RenderingServer.xml:3150
+msgid "Flag used to mark a compressed (half float) UV coordinates array."
+msgstr ""
+
+#: doc/classes/Mesh.xml:171 doc/classes/RenderingServer.xml:3153
+msgid ""
+"Flag used to mark a compressed (half float) UV coordinates array for the "
+"second UV coordinates."
+msgstr ""
+
+#: doc/classes/Mesh.xml:174 doc/classes/RenderingServer.xml:3156
+msgid "Flag used to mark a compressed index array."
+msgstr ""
+
+#: doc/classes/Mesh.xml:177 doc/classes/RenderingServer.xml:3162
+msgid "Flag used to mark that the array contains 2D vertices."
+msgstr ""
+
+#: doc/classes/Mesh.xml:180 doc/classes/RenderingServer.xml:3159
+msgid ""
+"Used to set flags [constant ARRAY_COMPRESS_NORMAL], [constant "
+"ARRAY_COMPRESS_TANGENT], [constant ARRAY_COMPRESS_COLOR], [constant "
+"ARRAY_COMPRESS_TEX_UV] and [constant ARRAY_COMPRESS_TEX_UV2] quickly."
+msgstr ""
+
+#: doc/classes/Mesh.xml:183
+msgid "Array of vertices."
+msgstr ""
+
+#: doc/classes/Mesh.xml:186
+msgid "Array of normals."
+msgstr ""
+
+#: doc/classes/Mesh.xml:189
+msgid "Array of tangents as an array of floats, 4 floats per tangent."
+msgstr ""
+
+#: doc/classes/Mesh.xml:192
+msgid "Array of colors."
+msgstr ""
+
+#: doc/classes/Mesh.xml:195
+msgid "Array of UV coordinates."
+msgstr ""
+
+#: doc/classes/Mesh.xml:198
+msgid "Array of second set of UV coordinates."
+msgstr ""
+
+#: doc/classes/Mesh.xml:201
+msgid "Array of bone data."
+msgstr ""
+
+#: doc/classes/Mesh.xml:204
+msgid "Array of weights."
+msgstr ""
+
+#: doc/classes/Mesh.xml:207
+msgid "Array of indices."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:4
+msgid "Helper tool to access and edit [Mesh] data."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:7
+msgid ""
+"MeshDataTool provides access to individual vertices in a [Mesh]. It allows "
+"users to read and edit vertex data of meshes. It also creates an array of "
+"faces and edges.\n"
+"To use MeshDataTool, load a mesh with [method create_from_surface]. When you "
+"are finished editing the data commit the data to a mesh with [method "
+"commit_to_surface].\n"
+"Below is an example of how MeshDataTool may be used.\n"
+"[codeblock]\n"
+"var mdt = MeshDataTool.new()\n"
+"mdt.create_from_surface(mesh, 0)\n"
+"for i in range(mdt.get_vertex_count()):\n"
+" var vertex = mdt.get_vertex(i)\n"
+" ...\n"
+" mdt.set_vertex(i, vertex)\n"
+"mesh.surface_remove(0)\n"
+"mdt.commit_to_surface(mesh)\n"
+"[/codeblock]\n"
+"See also [ArrayMesh], [ImmediateGeometry3D] and [SurfaceTool] for procedural "
+"geometry generation.\n"
+"[b]Note:[/b] Godot uses clockwise [url=https://learnopengl.com/Advanced-"
+"OpenGL/Face-culling]winding order[/url] for front faces of triangle "
+"primitive modes."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:30
+msgid "Clears all data currently in MeshDataTool."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:39
+msgid "Adds a new surface to specified [Mesh] with edited data."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:50
+msgid ""
+"Uses specified surface of given [Mesh] to populate data for MeshDataTool.\n"
+"Requires [Mesh] with primitive type [constant Mesh.PRIMITIVE_TRIANGLES]."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:58
+msgid "Returns the number of edges in this [Mesh]."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:67
+msgid "Returns array of faces that touch given edge."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:76
+msgid "Returns meta information assigned to given edge."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:87
+msgid ""
+"Returns index of specified vertex connected to given edge.\n"
+"Vertex argument can only be 0 or 1 because edges are comprised of two "
+"vertices."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:95
+msgid "Returns the number of faces in this [Mesh]."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:106
+msgid ""
+"Returns specified edge associated with given face.\n"
+"Edge argument must 2 or less because a face only has three edges."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:116
+msgid "Returns the metadata associated with the given face."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:125
+msgid "Calculates and returns the face normal of the given face."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:136
+msgid ""
+"Returns the specified vertex of the given face.\n"
+"Vertex argument must be 2 or less because faces contain three vertices."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:144
+msgid ""
+"Returns the [Mesh]'s format. Format is an integer made up of [Mesh] format "
+"flags combined together. For example, a mesh containing both vertices and "
+"normals would return a format of [code]3[/code] because [constant ArrayMesh."
+"ARRAY_FORMAT_VERTEX] is [code]1[/code] and [constant ArrayMesh."
+"ARRAY_FORMAT_NORMAL] is [code]2[/code].\n"
+"See [enum ArrayMesh.ArrayFormat] for a list of format flags."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:152
+msgid "Returns the material assigned to the [Mesh]."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:161
+msgid "Returns the vertex at given index."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:170
+msgid "Returns the bones of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:179
+msgid "Returns the color of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:186
+msgid "Returns the total number of vertices in [Mesh]."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:195
+msgid "Returns an array of edges that share the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:204
+msgid "Returns an array of faces that share the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:213
+msgid "Returns the metadata associated with the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:222
+msgid "Returns the normal of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:231
+msgid "Returns the tangent of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:240
+msgid "Returns the UV of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:249
+msgid "Returns the UV2 of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:258
+msgid "Returns bone weights of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:269
+msgid "Sets the metadata of the given edge."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:280
+msgid "Sets the metadata of the given face."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:289
+msgid "Sets the material to be used by newly-constructed [Mesh]."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:300
+msgid "Sets the position of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:311
+msgid "Sets the bones of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:322
+msgid "Sets the color of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:333
+msgid "Sets the metadata associated with the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:344
+msgid "Sets the normal of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:355
+msgid "Sets the tangent of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:366
+msgid "Sets the UV of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:377
+msgid "Sets the UV2 of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:388
+msgid "Sets the bone weights of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshInstance2D.xml:4
+msgid "Node used for displaying a [Mesh] in 2D."
+msgstr ""
+
+#: doc/classes/MeshInstance2D.xml:7
+msgid ""
+"Node used for displaying a [Mesh] in 2D. Can be constructed from an existing "
+"[Sprite2D] via a tool in the editor toolbar. Select \"Sprite2D\" then "
+"\"Convert to Mesh2D\", select settings in popup and press \"Create Mesh2D\"."
+msgstr ""
+
+#: doc/classes/MeshInstance2D.xml:10
+msgid "https://docs.godotengine.org/en/latest/tutorials/2d/2d_meshes.html"
+msgstr ""
+
+#: doc/classes/MeshInstance2D.xml:16
+msgid "The [Mesh] that will be drawn by the [MeshInstance2D]."
+msgstr ""
+
+#: doc/classes/MeshInstance2D.xml:19 doc/classes/MultiMeshInstance2D.xml:19
+msgid ""
+"The normal map that will be used if using the default [CanvasItemMaterial].\n"
+"[b]Note:[/b] Godot expects the normal map to use X+, Y-, and Z+ coordinates. "
+"See [url=http://wiki.polycount.com/wiki/"
+"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]this page[/url] for "
+"a comparison of normal map coordinates expected by popular engines."
+msgstr ""
+
+#: doc/classes/MeshInstance2D.xml:23 doc/classes/MultiMeshInstance2D.xml:23
+msgid ""
+"The [Texture2D] that will be used if using the default [CanvasItemMaterial]. "
+"Can be accessed as [code]TEXTURE[/code] in CanvasItem shader."
+msgstr ""
+
+#: doc/classes/MeshInstance2D.xml:29 doc/classes/MultiMeshInstance2D.xml:29
+msgid "Emitted when the [member texture] is changed."
+msgstr ""
+
+#: doc/classes/MeshInstance3D.xml:4
+msgid "Node that instances meshes into a scenario."
+msgstr ""
+
+#: doc/classes/MeshInstance3D.xml:7
+msgid ""
+"MeshInstance3D is a node that takes a [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 [Mesh] in many "
+"places. This allows reuse of geometry which can save on resources. When a "
+"[Mesh] has to be instanced more than thousands of times at close proximity, "
+"consider using a [MultiMesh] in a [MultiMeshInstance3D] instead."
+msgstr ""
+
+#: doc/classes/MeshInstance3D.xml:16
+msgid ""
+"This helper creates a [StaticBody3D] child node with a "
+"[ConvexPolygonShape3D] collision shape calculated from the mesh geometry. "
+"It's mainly used for testing."
+msgstr ""
+
+#: doc/classes/MeshInstance3D.xml:23
+msgid ""
+"This helper creates a [MeshInstance3D] child node with gizmos at every "
+"vertex calculated from the mesh geometry. It's mainly used for testing."
+msgstr ""
+
+#: doc/classes/MeshInstance3D.xml:30
+msgid ""
+"This helper creates a [StaticBody3D] child node with a "
+"[ConcavePolygonShape3D] collision shape calculated from the mesh geometry. "
+"It's mainly used for testing."
+msgstr ""
+
+#: doc/classes/MeshInstance3D.xml:39
+msgid ""
+"Returns the [Material] that will be used by the [Mesh] when drawing. This "
+"can return the [member GeometryInstance3D.material_override], the surface "
+"override [Material] defined in this [MeshInstance3D], or the surface "
+"[Material] defined in the [Mesh]. For example, if [member GeometryInstance3D."
+"material_override] is used, all surfaces will return the override material."
+msgstr ""
+
+#: doc/classes/MeshInstance3D.xml:48
+msgid ""
+"Returns the override [Material] for the specified surface of the [Mesh] "
+"resource."
+msgstr ""
+
+#: doc/classes/MeshInstance3D.xml:55
+msgid "Returns the number of surface materials."
+msgstr ""
+
+#: doc/classes/MeshInstance3D.xml:66
+msgid ""
+"Sets the override [Material] for the specified surface of the [Mesh] "
+"resource. This material is associated with this [MeshInstance3D] rather than "
+"with the [Mesh] resource."
+msgstr ""
+
+#: doc/classes/MeshInstance3D.xml:72
+msgid "The [Mesh] resource for the instance."
+msgstr ""
+
+#: doc/classes/MeshInstance3D.xml:75
+msgid "[NodePath] to the [Skeleton3D] associated with the instance."
+msgstr ""
+
+#: doc/classes/MeshInstance3D.xml:78
+msgid "Sets the skin to be used by this instance."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:4
+msgid "Library of meshes."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:7
+msgid ""
+"A library of meshes. Contains a list of [Mesh] resources, each with a name "
+"and ID. Each item can also include collision and navigation shapes. This "
+"resource is used in [GridMap]."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:16
+msgid "Clears the library."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:25
+msgid ""
+"Creates a new item in the library with the given ID.\n"
+"You can get an unused ID from [method get_last_unused_item_id]."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:35
+msgid "Returns the first item with the given name."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:42
+msgid "Returns the list of item IDs in use."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:51
+msgid "Returns the item's mesh."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:60
+msgid "Returns the item's name."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:69
+msgid "Returns the item's navigation mesh."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:78
+msgid "Returns the transform applied to the item's navigation mesh."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:87
+msgid ""
+"When running in the editor, returns a generated item preview (a 3D rendering "
+"in isometric perspective). When used in a running project, returns the "
+"manually-defined item preview which can be set using [method "
+"set_item_preview]. Returns an empty [Texture2D] if no preview was manually "
+"set in a running project."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:96
+msgid ""
+"Returns an item's collision shapes.\n"
+"The array consists of each [Shape3D] followed by its [Transform]."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:104
+msgid "Gets an unused ID for a new item."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:113
+msgid "Removes the item."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:124
+msgid "Sets the item's mesh."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:135
+msgid ""
+"Sets the item's name.\n"
+"This name is shown in the editor. It can also be used to look up the item "
+"later using [method find_item_by_name]."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:147
+msgid "Sets the item's navigation mesh."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:158
+msgid "Sets the transform to apply to the item's navigation mesh."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:169
+msgid "Sets a texture to use as the item's preview icon in the editor."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:180
+msgid ""
+"Sets an item's collision shapes.\n"
+"The array should consist of [Shape3D] objects, each followed by a "
+"[Transform] that will be applied to it. For shapes that should not have a "
+"transform, use [constant Transform.IDENTITY]."
+msgstr ""
+
+#: doc/classes/MeshTexture.xml:4
+msgid "Simple texture that uses a mesh to draw itself."
+msgstr ""
+
+#: doc/classes/MeshTexture.xml:7
+msgid ""
+"Simple texture that uses a mesh to draw itself. It's limited because flags "
+"can't be changed and region drawing is not supported."
+msgstr ""
+
+#: doc/classes/MeshTexture.xml:15
+msgid "Sets the base texture that the Mesh will use to draw."
+msgstr ""
+
+#: doc/classes/MeshTexture.xml:18
+msgid "Sets the size of the image, needed for reference."
+msgstr ""
+
+#: doc/classes/MeshTexture.xml:21
+msgid "Sets the mesh used to draw. It must be a mesh using 2D vertices."
+msgstr ""
+
+#: modules/mobile_vr/doc_classes/MobileVRInterface.xml:4
+msgid "Generic mobile VR implementation."
+msgstr ""
+
+#: modules/mobile_vr/doc_classes/MobileVRInterface.xml:7
+msgid ""
+"This is a generic mobile VR implementation where you need to provide details "
+"about the phone and HMD used. It does not rely on any existing framework. "
+"This is the most basic interface we have. For the best effect, you need a "
+"mobile phone with a gyroscope and accelerometer.\n"
+"Note that even though there is no positional tracking, the camera will "
+"assume the headset is at a height of 1.85 meters. You can change this by "
+"setting [member eye_height].\n"
+"You can initialise this interface as follows:\n"
+"[codeblock]\n"
+"var interface = XRServer.find_interface(\"Native mobile\")\n"
+"if interface and interface.initialize():\n"
+" get_viewport().xr = true\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/mobile_vr/doc_classes/MobileVRInterface.xml:22
+msgid ""
+"The distance between the display and the lenses inside of the device in "
+"centimeters."
+msgstr ""
+
+#: modules/mobile_vr/doc_classes/MobileVRInterface.xml:25
+msgid "The width of the display in centimeters."
+msgstr ""
+
+#: modules/mobile_vr/doc_classes/MobileVRInterface.xml:28
+msgid ""
+"The height at which the camera is placed in relation to the ground (i.e. "
+"[XROrigin3D] node)."
+msgstr ""
+
+#: modules/mobile_vr/doc_classes/MobileVRInterface.xml:31
+msgid ""
+"The interocular distance, also known as the interpupillary distance. The "
+"distance between the pupils of the left and right eye."
+msgstr ""
+
+#: modules/mobile_vr/doc_classes/MobileVRInterface.xml:34
+msgid ""
+"The k1 lens factor is one of the two constants that define the strength of "
+"the lens used and directly influences the lens distortion effect."
+msgstr ""
+
+#: modules/mobile_vr/doc_classes/MobileVRInterface.xml:37
+msgid "The k2 lens factor, see k1."
+msgstr ""
+
+#: modules/mobile_vr/doc_classes/MobileVRInterface.xml:40
+msgid ""
+"The oversample setting. Because of the lens distortion we have to render our "
+"buffers at a higher resolution then the screen can natively handle. A value "
+"between 1.5 and 2.0 often provides good results but at the cost of "
+"performance."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:4
+msgid "Provides high-performance mesh instancing."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:7
+msgid ""
+"MultiMesh provides low-level mesh instancing. Drawing thousands of "
+"[MeshInstance3D] nodes can be slow, since each object is submitted to the "
+"GPU then drawn individually.\n"
+"MultiMesh is much faster as it can draw thousands of instances with a single "
+"draw call, resulting in less API overhead.\n"
+"As a drawback, if the instances are too far away of each other, performance "
+"may be reduced as every single instance will always rendered (they are "
+"spatially indexed as one, for the whole object).\n"
+"Since instances may have any behavior, the AABB used for visibility must be "
+"provided by the user."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:13 doc/classes/MultiMeshInstance3D.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/3d/vertex_animation/"
+"animating_thousands_of_fish.html"
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:14 doc/classes/MultiMeshInstance3D.xml:13
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/optimization/"
+"using_multimesh.html"
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:21
+msgid "Returns the visibility axis-aligned bounding box."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:30
+msgid "Gets a specific instance's color."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:39
+msgid "Returns the custom data that has been set for a specific instance."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:48
+msgid "Returns the [Transform] of a specific instance."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:57
+msgid "Returns the [Transform2D] of a specific instance."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:68
+msgid ""
+"Sets the color of a specific instance.\n"
+"For the color to take effect, ensure that [member use_colors] is [code]true[/"
+"code] on the [MultiMesh] and [member BaseMaterial3D."
+"vertex_color_use_as_albedo] is [code]true[/code] on the material."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:80
+msgid ""
+"Sets custom data for a specific instance. Although [Color] is used, it is "
+"just a container for 4 floating point numbers.\n"
+"For the custom data to be used, ensure that [member use_custom_data] is "
+"[code]true[/code]."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:92
+msgid "Sets the [Transform] for a specific instance."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:103
+msgid "Sets the [Transform2D] for a specific instance."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:115
+msgid ""
+"Number of instances that will get drawn. This clears and (re)sizes the "
+"buffers. By default, all instances are drawn but you can limit this with "
+"[member visible_instance_count]."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:118
+msgid "Mesh to be drawn."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:125
+msgid "Format of transform used to transform mesh, either 2D or 3D."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:128
+msgid ""
+"If [code]true[/code], the [MultiMesh] will use color data (see [member "
+"color_array])."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:131
+msgid ""
+"If [code]true[/code], the [MultiMesh] will use custom data (see [member "
+"custom_data_array])."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:134
+msgid ""
+"Limits the number of instances drawn, -1 draws all instances. Changing this "
+"does not change the sizes of the buffers."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:139
+msgid "Use this when using 2D transforms."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:142
+msgid "Use this when using 3D transforms."
+msgstr ""
+
+#: doc/classes/MultiMeshInstance2D.xml:4
+msgid "Node that instances a [MultiMesh] in 2D."
+msgstr ""
+
+#: doc/classes/MultiMeshInstance2D.xml:7
+msgid ""
+"[MultiMeshInstance2D] is a specialized node to instance a [MultiMesh] "
+"resource in 2D.\n"
+"Usage is the same as [MultiMeshInstance3D]."
+msgstr ""
+
+#: doc/classes/MultiMeshInstance2D.xml:16
+msgid "The [MultiMesh] that will be drawn by the [MultiMeshInstance2D]."
+msgstr ""
+
+#: doc/classes/MultiMeshInstance3D.xml:4
+msgid "Node that instances a [MultiMesh]."
+msgstr ""
+
+#: doc/classes/MultiMeshInstance3D.xml:7
+msgid ""
+"[MultiMeshInstance3D] is a specialized node to instance "
+"[GeometryInstance3D]s based on a [MultiMesh] resource.\n"
+"This is useful to optimize the rendering of a high amount of instances of a "
+"given mesh (for example trees in a forest or grass strands)."
+msgstr ""
+
+#: doc/classes/MultiMeshInstance3D.xml:12
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/3d/"
+"using_multi_mesh_instance.html"
+msgstr ""
+
+#: doc/classes/MultiMeshInstance3D.xml:19
+msgid ""
+"The [MultiMesh] resource that will be used and shared among all instances of "
+"the [MultiMeshInstance3D]."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:4
+msgid "High-level multiplayer API."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:7
+msgid ""
+"This class implements most of the logic behind the high-level multiplayer "
+"API.\n"
+"By default, [SceneTree] has a reference to this class that is used to "
+"provide multiplayer capabilities (i.e. RPC/RSET) across the whole scene.\n"
+"It is possible to override the MultiplayerAPI instance used by specific "
+"Nodes by setting the [member Node.custom_multiplayer] property, effectively "
+"allowing to run both client and server in the same scene."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:18
+msgid ""
+"Clears the current MultiplayerAPI network state (you shouldn't call this "
+"unless you know what you are doing)."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:25
+msgid ""
+"Returns the peer IDs of all connected peers of this MultiplayerAPI's [member "
+"network_peer]."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:32
+msgid ""
+"Returns the unique peer ID of this MultiplayerAPI's [member network_peer]."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:39
+msgid ""
+"Returns the sender's peer ID for the RPC currently being executed.\n"
+"[b]Note:[/b] If not inside an RPC this method will return 0."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:47 doc/classes/SceneTree.xml:135
+msgid "Returns [code]true[/code] if there is a [member network_peer] set."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:54
+msgid ""
+"Returns [code]true[/code] if this MultiplayerAPI's [member network_peer] is "
+"in server mode (listening for connections)."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:61
+msgid ""
+"Method used for polling the MultiplayerAPI. You only need to worry about "
+"this if you are using [member Node.custom_multiplayer] override or you set "
+"[member SceneTree.multiplayer_poll] to [code]false[/code]. By default, "
+"[SceneTree] will poll its MultiplayerAPI for you.\n"
+"[b]Note:[/b] This method results in RPCs and RSETs being called, so they "
+"will be executed in the same context of this function (e.g. [code]_process[/"
+"code], [code]physics[/code], [Thread])."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:75
+msgid ""
+"Sends the given raw [code]bytes[/code] to a specific peer identified by "
+"[code]id[/code] (see [method NetworkedMultiplayerPeer.set_target_peer]). "
+"Default ID is [code]0[/code], i.e. broadcast to all peers."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:84
+msgid ""
+"Sets the base root node to use for RPCs. Instead of an absolute path, a "
+"relative path will be used to find the node upon which the RPC should be "
+"executed.\n"
+"This effectively allows to have different branches of the scene tree to be "
+"managed by different MultiplayerAPI, allowing for example to run both client "
+"and server in the same scene."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:91
+msgid ""
+"If [code]true[/code], the MultiplayerAPI will allow encoding and decoding of "
+"object during RPCs/RSETs.\n"
+"[b]Warning:[/b] 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."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:95
+msgid ""
+"The peer object to handle the RPC system (effectively enabling networking "
+"when set). Depending on the peer itself, the MultiplayerAPI will become a "
+"network server (check with [method is_network_server]) and will set root "
+"node's network mode to master, or it will become a regular peer with root "
+"node set to puppet. All child nodes are set to inherit the network mode by "
+"default. Handling of networking-related events (connection, disconnection, "
+"new clients) is done by connecting to MultiplayerAPI's signals."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:98
+msgid ""
+"If [code]true[/code], the MultiplayerAPI's [member network_peer] refuses new "
+"incoming connections."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:104
+msgid ""
+"Emitted when this MultiplayerAPI's [member network_peer] successfully "
+"connected to a server. Only emitted on clients."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:109
+msgid ""
+"Emitted when this MultiplayerAPI's [member network_peer] fails to establish "
+"a connection to a server. Only emitted on clients."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:116
+msgid ""
+"Emitted when this MultiplayerAPI's [member network_peer] connects with a new "
+"peer. ID is the peer ID of the new peer. Clients get notified when other "
+"clients connect to the same server. Upon connecting to a server, a client "
+"also receives this signal for the server (with ID being 1)."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:123
+msgid ""
+"Emitted when this MultiplayerAPI's [member network_peer] disconnects from a "
+"peer. Clients get notified when other clients disconnect from the same "
+"server."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:132
+msgid ""
+"Emitted when this MultiplayerAPI's [member network_peer] receive a "
+"[code]packet[/code] with custom data (see [method send_bytes]). ID is the "
+"peer ID of the peer that sent the packet."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:137
+msgid ""
+"Emitted when this MultiplayerAPI's [member network_peer] disconnects from "
+"server. Only emitted on clients."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:143
+msgid ""
+"Used with [method Node.rpc_config] or [method Node.rset_config] to disable a "
+"method or property for all RPC calls, making it unavailable. Default for all "
+"methods."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:146
+msgid ""
+"Used with [method Node.rpc_config] or [method Node.rset_config] to set a "
+"method to be called or a property to be changed only on the remote end, not "
+"locally. Analogous to the [code]remote[/code] keyword. Calls and property "
+"changes are accepted from all remote peers, no matter if they are node's "
+"master or puppets."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:149
+msgid ""
+"Used with [method Node.rpc_config] or [method Node.rset_config] to set a "
+"method to be called or a property to be changed only on the network master "
+"for this node. Analogous to the [code]master[/code] keyword. Only accepts "
+"calls or property changes from the node's network puppets, see [method Node."
+"set_network_master]."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:152
+msgid ""
+"Used with [method Node.rpc_config] or [method Node.rset_config] to set a "
+"method to be called or a property to be changed only on puppets for this "
+"node. Analogous to the [code]puppet[/code] keyword. Only accepts calls or "
+"property changes from the node's network master, see [method Node."
+"set_network_master]."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:155
+msgid ""
+"Behave like [constant RPC_MODE_REMOTE] but also make the call or property "
+"change locally. Analogous to the [code]remotesync[/code] keyword."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:158
+msgid ""
+"Behave like [constant RPC_MODE_MASTER] but also make the call or property "
+"change locally. Analogous to the [code]mastersync[/code] keyword."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:161
+msgid ""
+"Behave like [constant RPC_MODE_PUPPET] but also make the call or property "
+"change locally. Analogous to the [code]puppetsync[/code] keyword."
+msgstr ""
+
+#: doc/classes/Mutex.xml:4
+msgid "A synchronization mutex (mutual exclusion)."
+msgstr ""
+
+#: doc/classes/Mutex.xml:7
+msgid ""
+"A synchronization mutex (mutual exclusion). This is used to synchronize "
+"multiple [Thread]s, and is equivalent to a binary [Semaphore]. It guarantees "
+"that only one thread can ever acquire the lock at a time. A mutex can be "
+"used to protect a critical section; however, be careful to avoid deadlocks."
+msgstr ""
+
+#: doc/classes/Mutex.xml:10 doc/classes/Semaphore.xml:10
+#: doc/classes/Thread.xml:10
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/threads/"
+"using_multiple_threads.html"
+msgstr ""
+
+#: doc/classes/Mutex.xml:17
+msgid "Locks this [Mutex], blocks until it is unlocked by the current owner."
+msgstr ""
+
+#: doc/classes/Mutex.xml:24
+msgid ""
+"Tries locking this [Mutex], but does not block. Returns [constant OK] on "
+"success, [constant ERR_BUSY] otherwise."
+msgstr ""
+
+#: doc/classes/Mutex.xml:31
+msgid "Unlocks this [Mutex], leaving it to other threads."
+msgstr ""
+
+#: modules/gdnative/doc_classes/NativeScript.xml:14
+msgid ""
+"Returns the documentation string that was previously set with "
+"[code]godot_nativescript_set_class_documentation[/code]."
+msgstr ""
+
+#: modules/gdnative/doc_classes/NativeScript.xml:23
+msgid ""
+"Returns the documentation string that was previously set with "
+"[code]godot_nativescript_set_method_documentation[/code]."
+msgstr ""
+
+#: modules/gdnative/doc_classes/NativeScript.xml:32
+msgid ""
+"Returns the documentation string that was previously set with "
+"[code]godot_nativescript_set_property_documentation[/code]."
+msgstr ""
+
+#: modules/gdnative/doc_classes/NativeScript.xml:41
+msgid ""
+"Returns the documentation string that was previously set with "
+"[code]godot_nativescript_set_signal_documentation[/code]."
+msgstr ""
+
+#: modules/gdnative/doc_classes/NativeScript.xml:48
+msgid ""
+"Constructs a new object of the base type with a script of this type already "
+"attached.\n"
+"[i]Note[/i]: Any arguments passed to this function will be ignored and not "
+"passed to the native constructor function. This will change with in a future "
+"API extension."
+msgstr ""
+
+#: doc/classes/Navigation2D.xml:4
+msgid "2D navigation and pathfinding node."
+msgstr ""
+
+#: doc/classes/Navigation2D.xml:7
+msgid ""
+"Navigation2D provides navigation and pathfinding within a 2D area, specified "
+"as a collection of [NavigationPolygon] resources. These are automatically "
+"collected from child [NavigationRegion2D] nodes."
+msgstr ""
+
+#: doc/classes/Navigation2D.xml:18 doc/classes/Navigation3D.xml:18
+#: doc/classes/NavigationServer2D.xml:175
+msgid ""
+"Returns the point closest to the provided [code]to_point[/code] on the "
+"navigation mesh surface."
+msgstr ""
+
+#: doc/classes/Navigation2D.xml:27 doc/classes/Navigation3D.xml:36
+msgid ""
+"Returns the owner region RID for the point returned by [method "
+"get_closest_point]."
+msgstr ""
+
+#: doc/classes/Navigation2D.xml:46
+msgid ""
+"Returns the path between two given points. Points are in local coordinate "
+"space. If [code]optimize[/code] is [code]true[/code] (the default), the path "
+"is smoothed by merging path segments where possible."
+msgstr ""
+
+#: doc/classes/Navigation3D.xml:4
+msgid "Mesh-based navigation and pathfinding node."
+msgstr ""
+
+#: doc/classes/Navigation3D.xml:7
+msgid ""
+"Provides navigation and pathfinding within a collection of "
+"[NavigationMesh]es. These will be automatically collected from child "
+"[NavigationRegion3D] nodes. In addition to basic pathfinding, this class "
+"also assists with aligning navigation agents with the meshes they are "
+"navigating on."
+msgstr ""
+
+#: doc/classes/Navigation3D.xml:27
+msgid ""
+"Returns the normal for the point returned by [method get_closest_point]."
+msgstr ""
+
+#: doc/classes/Navigation3D.xml:49 doc/classes/NavigationServer3D.xml:212
+msgid ""
+"Returns the closest point between the navigation surface and the segment."
+msgstr ""
+
+#: doc/classes/Navigation3D.xml:68
+msgid ""
+"Returns the path between two given points. Points are in local coordinate "
+"space. If [code]optimize[/code] is [code]true[/code] (the default), the "
+"agent properties associated with each [NavigationMesh] (radius, height, "
+"etc.) are considered in the path calculation, otherwise they are ignored."
+msgstr ""
+
+#: doc/classes/Navigation3D.xml:78
+msgid ""
+"Defines which direction is up. By default, this is [code](0, 1, 0)[/code], "
+"which is the world's \"up\" direction."
+msgstr ""
+
+#: doc/classes/NavigationAgent2D.xml:4
+msgid "2D Agent used in navigation for collision avoidance."
+msgstr ""
+
+#: doc/classes/NavigationAgent2D.xml:7
+msgid ""
+"2D Agent that is used in navigation to reach a location while avoiding "
+"static and dynamic obstacles. The dynamic obstacles are avoided using RVO "
+"collision avoidance. The agent needs navigation data to work correctly. This "
+"can be done by having the agent as a child of a [Navigation2D] node, or "
+"using [method set_navigation]. [NavigationAgent2D] is physics safe."
+msgstr ""
+
+#: doc/classes/NavigationAgent2D.xml:16 doc/classes/NavigationAgent3D.xml:16
+msgid ""
+"Returns the distance to the target location, using the agent's global "
+"position. The user must set the target location with [method "
+"set_target_location] in order for this to be accurate."
+msgstr ""
+
+#: doc/classes/NavigationAgent2D.xml:23
+msgid ""
+"Returns the reachable final location in global coordinates. This can change "
+"if the navigation path is altered in any way."
+msgstr ""
+
+#: doc/classes/NavigationAgent2D.xml:30 doc/classes/NavigationAgent3D.xml:30
+msgid "Returns the path from start to finish in global coordinates."
+msgstr ""
+
+#: doc/classes/NavigationAgent2D.xml:37
+msgid ""
+"Returns which index the agent is currently on in the navigation path's "
+"[PackedVector2Array]."
+msgstr ""
+
+#: doc/classes/NavigationAgent2D.xml:44
+msgid ""
+"Returns the [Navigation2D] node that the agent is using for its navigation "
+"system."
+msgstr ""
+
+#: doc/classes/NavigationAgent2D.xml:51
+msgid ""
+"Returns a [Vector2] in global coordinates, that can be moved to, making sure "
+"that there are no static objects in the way. If the agent does not have a "
+"navigation path, it will return the position of the agent's parent."
+msgstr ""
+
+#: doc/classes/NavigationAgent2D.xml:58
+msgid "Returns the user defined [Vector2] after setting the target location."
+msgstr ""
+
+#: doc/classes/NavigationAgent2D.xml:65 doc/classes/NavigationAgent3D.xml:65
+msgid "Returns true if the navigation path's final location has been reached."
+msgstr ""
+
+#: doc/classes/NavigationAgent2D.xml:72 doc/classes/NavigationAgent3D.xml:72
+msgid ""
+"Returns true if the target location is reachable. The target location is set "
+"using [method set_target_location]."
+msgstr ""
+
+#: doc/classes/NavigationAgent2D.xml:79 doc/classes/NavigationAgent3D.xml:79
+msgid ""
+"Returns true if the target location is reached. The target location is set "
+"using [method set_target_location]. It may not always be possible to reach "
+"the target location. It should always be possible to reach the final "
+"location though. See [method get_final_location]."
+msgstr ""
+
+#: doc/classes/NavigationAgent2D.xml:88
+msgid ""
+"Sets the [Navigation2D] node used by the agent. Useful when you don't want "
+"to make the agent a child of a [Navigation2D] node."
+msgstr ""
+
+#: doc/classes/NavigationAgent2D.xml:97 doc/classes/NavigationAgent3D.xml:97
+msgid ""
+"Sets the user desired final location. This will clear the current navigation "
+"path."
+msgstr ""
+
+#: doc/classes/NavigationAgent2D.xml:106 doc/classes/NavigationAgent3D.xml:106
+msgid ""
+"Sends the passed in velocity to the collision avoidance algorithm. It will "
+"adjust the velocity to avoid collisions. Once the adjustment to the velocity "
+"is complete, it will emit the [signal velocity_computed] signal."
+msgstr ""
+
+#: doc/classes/NavigationAgent2D.xml:112 doc/classes/NavigationAgent3D.xml:118
+msgid "The maximum number of neighbors for the agent to consider."
+msgstr ""
+
+#: doc/classes/NavigationAgent2D.xml:115 doc/classes/NavigationAgent3D.xml:121
+msgid "The maximum speed that an agent can move."
+msgstr ""
+
+#: doc/classes/NavigationAgent2D.xml:118 doc/classes/NavigationAgent3D.xml:124
+msgid "The distance to search for other agents."
+msgstr ""
+
+#: doc/classes/NavigationAgent2D.xml:121 doc/classes/NavigationAgent3D.xml:127
+msgid ""
+"The maximum distance the agent is allowed away from the ideal path to the "
+"final location. This can happen due to trying to avoid collisions. When the "
+"maximum distance is exceeded, it recalculates the ideal path."
+msgstr ""
+
+#: doc/classes/NavigationAgent2D.xml:124 doc/classes/NavigationAgent3D.xml:130
+msgid "The radius of the agent."
+msgstr ""
+
+#: doc/classes/NavigationAgent2D.xml:127 doc/classes/NavigationAgent3D.xml:133
+msgid ""
+"The distance threshold before a target is considered to be reached. This "
+"will allow an agent to not have to hit a point on the path exactly, but in "
+"the area."
+msgstr ""
+
+#: doc/classes/NavigationAgent2D.xml:130 doc/classes/NavigationAgent3D.xml:136
+msgid ""
+"The minimal amount of time for which this agent's velocities, that are "
+"computed with the collision avoidance algorithim, are safe with respect to "
+"other agents. The larger the number, the sooner the agent will respond to "
+"other agents, but less freedom in choosing its velocities. Must be positive."
+msgstr ""
+
+#: doc/classes/NavigationAgent2D.xml:136 doc/classes/NavigationAgent3D.xml:142
+msgid "Notifies when the final location is reached."
+msgstr ""
+
+#: doc/classes/NavigationAgent2D.xml:141 doc/classes/NavigationAgent3D.xml:147
+msgid "Notifies when the navigation path changes."
+msgstr ""
+
+#: doc/classes/NavigationAgent2D.xml:146 doc/classes/NavigationAgent3D.xml:152
+msgid ""
+"Notifies when the player defined target, set with [method "
+"set_target_location], is reached."
+msgstr ""
+
+#: doc/classes/NavigationAgent2D.xml:153 doc/classes/NavigationAgent3D.xml:159
+msgid ""
+"Notifies when the collision avoidance velocity is calculated. Emitted by "
+"[method set_velocity]."
+msgstr ""
+
+#: doc/classes/NavigationAgent3D.xml:4
+msgid "3D Agent used in navigation for collision avoidance."
+msgstr ""
+
+#: doc/classes/NavigationAgent3D.xml:7
+msgid ""
+"3D Agent that is used in navigation to reach a location while avoiding "
+"static and dynamic obstacles. The dynamic obstacles are avoided using RVO "
+"collision avoidance. The agent needs navigation data to work correctly. This "
+"can be done by having the agent as a child of a [Navigation3D] node, or "
+"using [method set_navigation]. [NavigationAgent3D] is physics safe."
+msgstr ""
+
+#: doc/classes/NavigationAgent3D.xml:23
+msgid ""
+"Returns the reachable final location in global coordinates. This can change "
+"if the navigation path is altered in any way. Because of this, it would be "
+"best to check this each frame."
+msgstr ""
+
+#: doc/classes/NavigationAgent3D.xml:37
+msgid ""
+"Returns which index the agent is currently on in the navigation path's "
+"[PackedVector3Array]."
+msgstr ""
+
+#: doc/classes/NavigationAgent3D.xml:44
+msgid ""
+"Returns the [Navigation3D] node that the agent is using for its navigation "
+"system."
+msgstr ""
+
+#: doc/classes/NavigationAgent3D.xml:51
+msgid ""
+"Returns a [Vector3] in global coordinates, that can be moved to, making sure "
+"that there are no static objects in the way. If the agent does not have a "
+"navigation path, it will return the origin of the agent's parent."
+msgstr ""
+
+#: doc/classes/NavigationAgent3D.xml:58
+msgid "Returns the user defined [Vector3] after setting the target location."
+msgstr ""
+
+#: doc/classes/NavigationAgent3D.xml:88
+msgid ""
+"Sets the [Navigation3D] node used by the agent. Useful when you don't want "
+"to make the agent a child of a [Navigation3D] node."
+msgstr ""
+
+#: doc/classes/NavigationAgent3D.xml:112
+msgid "The agent height offset to match the navigation mesh height."
+msgstr ""
+
+#: doc/classes/NavigationAgent3D.xml:115
+msgid ""
+"Ignores collisions on the Y axis. Must be true to move on a horizontal plane."
+msgstr ""
+
+#: doc/classes/NavigationObstacle2D.xml:4
+msgid "2D Obstacle used in navigation for collision avoidance."
+msgstr ""
+
+#: doc/classes/NavigationObstacle2D.xml:7
+msgid ""
+"2D Obstacle used in navigation for collision avoidance. The obstacle needs "
+"navigation data to work correctly. This can be done by having the obstacle "
+"as a child of a [Navigation2D] node, or using [method set_navigation]. "
+"[NavigationObstacle2D] is physics safe."
+msgstr ""
+
+#: doc/classes/NavigationObstacle2D.xml:16
+msgid ""
+"Returns the [Navigation2D] node that the obstacle is using for its "
+"navigation system."
+msgstr ""
+
+#: doc/classes/NavigationObstacle2D.xml:25
+msgid ""
+"Sets the [Navigation2D] node used by the obstacle. Useful when you don't "
+"want to make the obstacle a child of a [Navigation2D] node."
+msgstr ""
+
+#: doc/classes/NavigationObstacle3D.xml:4
+msgid "3D Obstacle used in navigation for collision avoidance."
+msgstr ""
+
+#: doc/classes/NavigationObstacle3D.xml:7
+msgid ""
+"3D Obstacle used in navigation for collision avoidance. The obstacle needs "
+"navigation data to work correctly. This can be done by having the obstacle "
+"as a child of a [Navigation3D] node, or using [method set_navigation]. "
+"[NavigationObstacle3D] is physics safe."
+msgstr ""
+
+#: doc/classes/NavigationObstacle3D.xml:16
+msgid ""
+"Returns the [Navigation3D] node that the obstacle is using for its "
+"navigation system."
+msgstr ""
+
+#: doc/classes/NavigationObstacle3D.xml:25
+msgid ""
+"Sets the [Navigation3D] node used by the obstacle. Useful when you don't "
+"want to make the obstacle a child of a [Navigation3D] node."
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:4
+msgid ""
+"A node that has methods to draw outlines or use indices of vertices to "
+"create navigation polygons."
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:7
+msgid ""
+"There are two ways to create polygons. Either by using the [method "
+"add_outline] method, or using the [method add_polygon] method.\n"
+"Using [method add_outline]:\n"
+"[codeblock]\n"
+"var polygon = NavigationPolygon.new()\n"
+"var outline = PackedVector2Array([Vector2(0, 0), Vector2(0, 50), Vector2(50, "
+"50), Vector2(50, 0)])\n"
+"polygon.add_outline(outline)\n"
+"polygon.make_polygons_from_outlines()\n"
+"$NavigationRegion2D.navpoly = polygon\n"
+"[/codeblock]\n"
+"Using [method add_polygon] and indices of the vertices array.\n"
+"[codeblock]\n"
+"var polygon = NavigationPolygon.new()\n"
+"var vertices = PackedVector2Array([Vector2(0, 0), Vector2(0, 50), "
+"Vector2(50, 50), Vector2(50, 0)])\n"
+"polygon.set_vertices(vertices)\n"
+"var indices = PackedInt32Array(0, 3, 1)\n"
+"polygon.add_polygon(indices)\n"
+"$NavigationRegion2D.navpoly = polygon\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:35
+msgid ""
+"Appends a [PackedVector2Array] that contains the vertices of an outline to "
+"the internal array that contains all the outlines. You have to call [method "
+"make_polygons_from_outlines] in order for this array to be converted to "
+"polygons that the engine will use."
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:46
+msgid ""
+"Adds a [PackedVector2Array] that contains the vertices of an outline to the "
+"internal array that contains all the outlines at a fixed position. You have "
+"to call [method make_polygons_from_outlines] in order for this array to be "
+"converted to polygons that the engine will use."
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:55
+msgid ""
+"Adds a polygon using the indices of the vertices you get when calling "
+"[method get_vertices]."
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:62
+msgid ""
+"Clears the array of the outlines, but it doesn't clear the vertices and the "
+"polygons that were created by them."
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:69
+msgid ""
+"Clears the array of polygons, but it doesn't clear the array of outlines and "
+"vertices."
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:78
+msgid ""
+"Returns a [PackedVector2Array] containing the vertices of an outline that "
+"was created in the editor or by script."
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:85
+msgid ""
+"Returns the number of outlines that were created in the editor or by script."
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:94
+msgid ""
+"Returns a [PackedInt32Array] containing the indices of the vertices of a "
+"created polygon."
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:101
+msgid "Returns the count of all polygons."
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:108
+msgid ""
+"Returns a [PackedVector2Array] containing all the vertices being used to "
+"create the polygons."
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:115
+msgid "Creates polygons from the outlines added in the editor or by script."
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:124
+msgid ""
+"Removes an outline created in the editor or by script. You have to call "
+"[method make_polygons_from_outlines] for the polygons to update."
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:135
+msgid ""
+"Changes an outline created in the editor or by script. You have to call "
+"[method make_polygons_from_outlines] for the polygons to update."
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:144
+msgid ""
+"Sets the vertices that can be then indexed to create polygons with the "
+"[method add_polygon] method."
+msgstr ""
+
+#: doc/classes/NavigationRegion3D.xml:4
+msgid "A region of the navigation map."
+msgstr ""
+
+#: doc/classes/NavigationRegion3D.xml:7
+msgid ""
+"A region of the navigation map. It tells the [Navigation3D] node what can be "
+"navigated and what cannot, based on the [NavigationMesh] resource. This "
+"should be a child of a [Navigation3D] node (even not a direct child)."
+msgstr ""
+
+#: doc/classes/NavigationRegion3D.xml:16
+msgid ""
+"Bakes the [NavigationMesh]. The baking is done in a separate thread because "
+"navigation baking is not a cheap operation. This can be done at runtime. "
+"When it is completed, it automatically sets the new [NavigationMesh]."
+msgstr ""
+
+#: doc/classes/NavigationRegion3D.xml:22
+msgid "Determines if the [NavigationRegion3D] is enabled or disabled."
+msgstr ""
+
+#: doc/classes/NavigationRegion3D.xml:25
+msgid "The [NavigationMesh] resource to use."
+msgstr ""
+
+#: doc/classes/NavigationRegion3D.xml:31
+msgid "Notifies when the navigation mesh bake operation is completed."
+msgstr ""
+
+#: doc/classes/NavigationRegion3D.xml:36
+msgid "Notifies when the [NavigationMesh] has changed."
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:4
+msgid "Server interface for low-level 2D navigation access"
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:7
+msgid ""
+"NavigationServer2D is the server responsible for all 2D navigation. It "
+"creates the agents, maps, and regions for navigation to work as expected. "
+"This keeps tracks of any call and executes them during the sync phase. This "
+"means that you can request any change to the map, using any thread, without "
+"worrying."
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:16 doc/classes/NavigationServer3D.xml:16
+msgid "Creates the agent."
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:25 doc/classes/NavigationServer3D.xml:25
+msgid "Returns true if the map got changed the previous frame."
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:40 doc/classes/NavigationServer3D.xml:40
+msgid "Callback called at the end of the RVO process."
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:51 doc/classes/NavigationServer3D.xml:51
+msgid "Puts the agent in the map."
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:62 doc/classes/NavigationServer3D.xml:62
+msgid ""
+"Sets the maximum number of other agents the agent takes into account in the "
+"navigation. The larger this number, the longer the running time of the "
+"simulation. If the number is too low, the simulation will not be safe."
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:73 doc/classes/NavigationServer3D.xml:73
+msgid "Sets the maximum speed of the agent. Must be positive."
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:84 doc/classes/NavigationServer3D.xml:84
+msgid ""
+"Sets the maximum distance to other agents this agent takes into account in "
+"the navigation. The larger this number, the longer the running time of the "
+"simulation. If the number is too low, the simulation will not be safe."
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:95 doc/classes/NavigationServer3D.xml:95
+msgid "Sets the position of the agent in world space."
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:106
+#: doc/classes/NavigationServer3D.xml:106
+msgid "Sets the radius of the agent."
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:117
+#: doc/classes/NavigationServer3D.xml:117
+msgid "Sets the new target velocity."
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:128
+#: doc/classes/NavigationServer3D.xml:128
+msgid ""
+"The minimal amount of time for which the agent's velocities that are "
+"computed by the simulation are safe with respect to other agents. The larger "
+"this number, the sooner this agent will respond to the presence of other "
+"agents, but the less freedom this agent has in choosing its velocities. Must "
+"be positive."
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:139
+#: doc/classes/NavigationServer3D.xml:139
+msgid "Sets the current velocity of the agent."
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:148
+#: doc/classes/NavigationServer3D.xml:148
+msgid "Destroy the RID"
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:155
+#: doc/classes/NavigationServer3D.xml:155
+msgid "Create a new map."
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:164
+#: doc/classes/NavigationServer3D.xml:164
+msgid "Returns the map cell size."
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:186
+#: doc/classes/NavigationServer3D.xml:197
+msgid ""
+"Returns the owner region RID for the point returned by [method "
+"map_get_closest_point]."
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:195
+msgid ""
+"Returns the edge connection margin of the map. The edge connection margin is "
+"a distance used to connect two regions."
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:210
+msgid ""
+"Returns the navigation path to reach the destination from the origin, while "
+"avoiding static obstacles."
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:219
+#: doc/classes/NavigationServer3D.xml:254
+msgid "Returns true if the map is active."
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:230
+#: doc/classes/NavigationServer3D.xml:265
+msgid "Sets the map active."
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:241
+#: doc/classes/NavigationServer3D.xml:276
+msgid "Set the map cell size used to weld the navigation mesh polygons."
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:252
+msgid ""
+"Set the map edge connection margin used to weld the compatible region edges."
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:259
+#: doc/classes/NavigationServer3D.xml:327
+msgid "Creates a new region."
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:270
+#: doc/classes/NavigationServer3D.xml:338
+msgid "Sets the map for the region."
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:281
+#: doc/classes/NavigationServer3D.xml:349
+msgid "Sets the navigation mesh for the region."
+msgstr ""
+
+#: doc/classes/NavigationServer2D.xml:292
+#: doc/classes/NavigationServer3D.xml:360
+msgid "Sets the global transformation for the region."
+msgstr ""
+
+#: doc/classes/NavigationServer3D.xml:4
+msgid "Server interface for low-level 3D navigation access"
+msgstr ""
+
+#: doc/classes/NavigationServer3D.xml:7
+msgid ""
+"NavigationServer3D is the server responsible for all 3D navigation. It "
+"creates the agents, maps, and regions for navigation to work as expected. "
+"This keeps tracks of any call and executes them during the sync phase. This "
+"means that you can request any change to the map, using any thread, without "
+"worrying."
+msgstr ""
+
+#: doc/classes/NavigationServer3D.xml:175
+msgid ""
+"Returns the point closest to the provided [code]point[/code] on the "
+"navigation mesh surface."
+msgstr ""
+
+#: doc/classes/NavigationServer3D.xml:186
+msgid ""
+"Returns the normal for the point returned by [method map_get_closest_point]."
+msgstr ""
+
+#: doc/classes/NavigationServer3D.xml:221
+msgid "Returns the edge connection margin of the map."
+msgstr ""
+
+#: doc/classes/NavigationServer3D.xml:236
+msgid "Returns the navigation path to reach the destination from the origin."
+msgstr ""
+
+#: doc/classes/NavigationServer3D.xml:245
+msgid "Returns the map's up direction."
+msgstr ""
+
+#: doc/classes/NavigationServer3D.xml:287
+msgid ""
+"Set the map edge connection margein used to weld the compatible region edges."
+msgstr ""
+
+#: doc/classes/NavigationServer3D.xml:298
+msgid "Sets the map up direction."
+msgstr ""
+
+#: doc/classes/NavigationServer3D.xml:307
+msgid ""
+"Process the collision avoidance agents.\n"
+"The result of this process is needed by the physics server, so this must be "
+"called in the main thread.\n"
+"Note: This function is not thread safe."
+msgstr ""
+
+#: doc/classes/NavigationServer3D.xml:320
+msgid "Bakes the navigation mesh."
+msgstr ""
+
+#: doc/classes/NavigationServer3D.xml:369
+msgid "Control activation of this server."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:4
+msgid ""
+"PacketPeer implementation using the [url=http://enet.bespin.org/index."
+"html]ENet[/url] library."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:7
+msgid ""
+"A PacketPeer implementation that should be passed to [member SceneTree."
+"network_peer] after being initialized as either a client or server. Events "
+"can then be handled by connecting to [SceneTree] signals."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:10
+#: doc/classes/NetworkedMultiplayerPeer.xml:10
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/networking/"
+"high_level_multiplayer.html"
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:11
+msgid "http://enet.bespin.org/usergroup0.html"
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:20
+msgid ""
+"Closes the connection. Ignored if no connection is currently established. If "
+"this is a server it tries to notify all clients before forcibly "
+"disconnecting them. If this is a client it simply closes the connection to "
+"the server."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:37
+msgid ""
+"Create client that connects to a server at [code]address[/code] using "
+"specified [code]port[/code]. The given address needs to be either a fully "
+"qualified domain name (e.g. [code]\"www.example.com\"[/code]) or an IP "
+"address in IPv4 or IPv6 format (e.g. [code]\"192.168.1.1\"[/code]). The "
+"[code]port[/code] is the port the server is listening on. The "
+"[code]in_bandwidth[/code] and [code]out_bandwidth[/code] parameters can be "
+"used to limit the incoming and outgoing bandwidth to the given number of "
+"bytes per second. The default of 0 means unlimited bandwidth. Note that ENet "
+"will strategically drop packets on specific sides of a connection between "
+"peers to ensure the peer's bandwidth is not overwhelmed. The bandwidth "
+"parameters also determine the window size of a connection which limits the "
+"amount of reliable packets that may be in transit at any given time. Returns "
+"[constant OK] if a client was created, [constant ERR_ALREADY_IN_USE] if this "
+"NetworkedMultiplayerENet instance already has an open connection (in which "
+"case you need to call [method close_connection] first) or [constant "
+"ERR_CANT_CREATE] if the client could not be created. If [code]client_port[/"
+"code] is specified, the client will also listen to the given port; this is "
+"useful for some NAT traversal techniques."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:52
+msgid ""
+"Create server that listens to connections via [code]port[/code]. The port "
+"needs to be an available, unused port between 0 and 65535. Note that ports "
+"below 1024 are privileged and may require elevated permissions depending on "
+"the platform. To change the interface the server listens on, use [method "
+"set_bind_ip]. The default IP is the wildcard [code]\"*\"[/code], which "
+"listens on all available interfaces. [code]max_clients[/code] is the maximum "
+"number of clients that are allowed at once, any number up to 4095 may be "
+"used, although the achievable number of simultaneous clients may be far "
+"lower and depends on the application. For additional details on the "
+"bandwidth parameters, see [method create_client]. Returns [constant OK] if a "
+"server was created, [constant ERR_ALREADY_IN_USE] if this "
+"NetworkedMultiplayerENet instance already has an open connection (in which "
+"case you need to call [method close_connection] first) or [constant "
+"ERR_CANT_CREATE] if the server could not be created."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:63
+msgid ""
+"Disconnect the given peer. If \"now\" is set to [code]true[/code], the "
+"connection will be closed immediately without flushing queued messages."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:70
+msgid ""
+"Returns the channel of the last packet fetched via [method PacketPeer."
+"get_packet]."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:77
+msgid ""
+"Returns the channel of the next packet that will be retrieved via [method "
+"PacketPeer.get_packet]."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:86
+#: modules/websocket/doc_classes/WebSocketServer.xml:33
+msgid "Returns the IP address of the given peer."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:95
+#: modules/websocket/doc_classes/WebSocketServer.xml:42
+msgid "Returns the remote port of the given peer."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:104
+msgid ""
+"The IP used when creating a server. This is set to the wildcard [code]\"*\"[/"
+"code] by default, which binds to all available interfaces. The given IP "
+"needs to be in IPv4 or IPv6 address format, for example: "
+"[code]\"192.168.1.1\"[/code]."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:113
+msgid ""
+"Configure the [X509Certificate] to use when [member use_dtls] is [code]true[/"
+"code]. For servers, you must also setup the [CryptoKey] via [method "
+"set_dtls_key]."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:122
+msgid ""
+"Configure the [CryptoKey] to use when [member use_dtls] is [code]true[/"
+"code]. Remember to also call [method set_dtls_certificate] to setup your "
+"[X509Certificate]."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:128
+msgid ""
+"Enforce ordered packets when using [constant NetworkedMultiplayerPeer."
+"TRANSFER_MODE_UNRELIABLE] (thus behaving similarly to [constant "
+"NetworkedMultiplayerPeer.TRANSFER_MODE_UNRELIABLE_ORDERED]). This is the "
+"only way to use ordering with the RPC system."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:131
+msgid ""
+"The number of channels to be used by ENet. Channels are used to separate "
+"different kinds of data. In reliable or ordered mode, for example, the "
+"packet delivery order is ensured on a per-channel basis. This is done to "
+"combat latency and reduces ordering restrictions on packets. The delivery "
+"status of a packet in one channel won't stall the delivery of other packets "
+"in another channel."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:134
+msgid ""
+"The compression method used for network packets. These have different "
+"tradeoffs of compression speed versus bandwidth, you may need to test which "
+"one works best for your use case if you use compression at all."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:137
+msgid ""
+"Enable or disable certificate verification when [member use_dtls] "
+"[code]true[/code]."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:141
+msgid ""
+"Enable or disable the server feature that notifies clients of other peers' "
+"connection/disconnection, and relays messages between them. When this option "
+"is [code]false[/code], clients won't be automatically notified of other "
+"peers and won't be able to send them packets through the server."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:144
+msgid ""
+"Set the default channel to be used to transfer data. By default, this value "
+"is [code]-1[/code] which means that ENet will only use 2 channels: one for "
+"reliable packets, and one for unreliable packets. The channel [code]0[/code] "
+"is reserved and cannot be used. Setting this member to any value between "
+"[code]0[/code] and [member channel_count] (excluded) will force ENet to use "
+"that channel for sending data. See [member channel_count] for more "
+"information about ENet channels."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:148
+msgid ""
+"When enabled, the client or server created by this peer, will use "
+"[PacketPeerDTLS] instead of raw UDP sockets for communicating with the "
+"remote peer. This will make the communication encrypted with DTLS at the "
+"cost of higher resource usage and potentially larger packet size.\n"
+"Note: When creating a DTLS server, make sure you setup the key/certificate "
+"pair via [method set_dtls_key] and [method set_dtls_certificate]. For DTLS "
+"clients, have a look at the [member dtls_verify] option, and configure the "
+"certificate accordingly via [method set_dtls_certificate]."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:154
+msgid ""
+"No compression. This uses the most bandwidth, but has the upside of "
+"requiring the fewest CPU resources."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:157
+msgid "ENet's built-in range encoding."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:160
+msgid ""
+"[url=http://fastlz.org/]FastLZ[/url] compression. This option uses less CPU "
+"resources compared to [constant COMPRESS_ZLIB], at the expense of using more "
+"bandwidth."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:163
+msgid ""
+"[url=https://www.zlib.net/]Zlib[/url] compression. This option uses less "
+"bandwidth compared to [constant COMPRESS_FASTLZ], at the expense of using "
+"more CPU resources."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:166
+msgid "[url=https://facebook.github.io/zstd/]Zstandard[/url] compression."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:4
+msgid "A high-level network interface to simplify multiplayer interactions."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:7
+msgid ""
+"Manages the connection to network peers. Assigns unique IDs to each client "
+"connected to the server."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:17
+msgid ""
+"Returns the current state of the connection. See [enum ConnectionStatus]."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:24
+msgid ""
+"Returns the ID of the [NetworkedMultiplayerPeer] who sent the most recent "
+"packet."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:31
+msgid "Returns the ID of this [NetworkedMultiplayerPeer]."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:38
+msgid "Waits up to 1 second to receive a new network event."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:47
+msgid ""
+"Sets the peer to which packets will be sent.\n"
+"The [code]id[/code] can be one of: [constant TARGET_PEER_BROADCAST] to send "
+"to all connected peers, [constant 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 "
+"[constant TARGET_PEER_BROADCAST]."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:54
+msgid ""
+"If [code]true[/code], this [NetworkedMultiplayerPeer] refuses new "
+"connections."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:57
+msgid ""
+"The manner in which to send packets to the [code]target_peer[/code]. See "
+"[enum TransferMode]."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:63
+msgid "Emitted when a connection attempt fails."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:68
+msgid "Emitted when a connection attempt succeeds."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:75
+msgid "Emitted by the server when a client connects."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:82
+msgid "Emitted by the server when a client disconnects."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:87
+msgid "Emitted by clients when the server disconnects."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:93
+msgid ""
+"Packets are not acknowledged, no resend attempts are made for lost packets. "
+"Packets may arrive in any order. Potentially faster than [constant "
+"TRANSFER_MODE_UNRELIABLE_ORDERED]. Use for non-critical data, and always "
+"consider whether the order matters."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:96
+msgid ""
+"Packets are not acknowledged, no resend attempts are made for lost packets. "
+"Packets are received in the order they were sent in. Potentially faster than "
+"[constant TRANSFER_MODE_RELIABLE]. Use for non-critical data or data that "
+"would be outdated if received late due to resend attempt(s) anyway, for "
+"example movement and positional data."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:99
+msgid ""
+"Packets must be received and resend attempts should be made until the "
+"packets are acknowledged. Packets must be received in the order they were "
+"sent in. Most reliable transfer mode, but potentially the slowest due to the "
+"overhead. Use for critical data that must be transmitted and arrive in "
+"order, for example an ability being triggered or a chat message. Consider "
+"carefully if the information really is critical, and use sparingly."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:102
+msgid "The ongoing connection disconnected."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:105
+msgid "A connection attempt is ongoing."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:108
+msgid "The connection attempt succeeded."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:111
+msgid "Packets are sent to the server and then redistributed to other peers."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:114
+msgid "Packets are sent to the server alone."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:4
+msgid ""
+"Scalable texture-based frame that tiles the texture's centers and sides, but "
+"keeps the corners' original size. Perfect for panels and dialog boxes."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:7
+msgid ""
+"Also known as 9-slice panels, NinePatchRect produces clean panels of any "
+"size, based on a small texture. To do so, it splits the texture in a 3×3 "
+"grid. When you scale the node, it tiles the texture's sides horizontally or "
+"vertically, the center on both axes but it doesn't scale or tile the corners."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:18
+msgid ""
+"Returns the size of the margin identified by the given [enum Margin] "
+"constant."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:29
+msgid ""
+"Sets the size of the margin identified by the given [enum Margin] constant "
+"to [code]value[/code] in pixels."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:35 doc/classes/NinePatchRect.xml:38
+#: doc/classes/NinePatchRect.xml:72 doc/classes/NinePatchRect.xml:75
+#: doc/classes/NinePatchRect.xml:78
+msgid "Doesn't do anything at the time of writing."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:41
+msgid ""
+"If [code]true[/code], draw the panel's center. Else, only draw the 9-slice's "
+"borders."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:45
+msgid ""
+"The height of the 9-slice's bottom row. A margin of 16 means the 9-slice's "
+"bottom corners and side will have a height of 16 pixels. You can set all 4 "
+"margin values individually to create panels with non-uniform borders."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:48
+msgid "The height of the 9-slice's left column."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:51
+msgid "The height of the 9-slice's right column."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:54
+msgid "The height of the 9-slice's top row."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:57
+msgid ""
+"Rectangular region of the texture to sample from. If you're working with an "
+"atlas, use this property to define the area the 9-slice should use. All "
+"other properties are relative to this one. If the rect is empty, "
+"NinePatchRect will use the whole texture."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:60
+msgid "The node's texture resource."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:66
+msgid "Emitted when the node's texture changes."
+msgstr ""
+
+#: doc/classes/Node.xml:4
+msgid "Base class for all [i]scene[/i] objects."
+msgstr ""
+
+#: doc/classes/Node.xml:7
+msgid ""
+"Nodes are Godot's building blocks. They can be assigned as the child of "
+"another node, resulting in a tree arrangement. A given node can contain any "
+"number of nodes as children with the requirement that all siblings (direct "
+"children of a node) should have unique names.\n"
+"A tree of nodes is called a [i]scene[/i]. Scenes can be saved to the disk "
+"and then instanced into other scenes. This allows for very high flexibility "
+"in the architecture and data model of Godot projects.\n"
+"[b]Scene tree:[/b] The [SceneTree] contains the active tree of nodes. When a "
+"node is added to the scene tree, it receives the [constant "
+"NOTIFICATION_ENTER_TREE] notification and its [method _enter_tree] callback "
+"is triggered. Child nodes are always added [i]after[/i] their parent node, i."
+"e. the [method _enter_tree] callback of a parent node will be triggered "
+"before its child's.\n"
+"Once all nodes have been added in the scene tree, they receive the [constant "
+"NOTIFICATION_READY] notification and their respective [method _ready] "
+"callbacks are triggered. For groups of nodes, the [method _ready] callback "
+"is called in reverse order, starting with the children and moving up to the "
+"parent nodes.\n"
+"This means that when adding a node to the scene tree, the following order "
+"will be used for the callbacks: [method _enter_tree] of the parent, [method "
+"_enter_tree] of the children, [method _ready] of the children and finally "
+"[method _ready] of the parent (recursively for the entire scene tree).\n"
+"[b]Processing:[/b] Nodes can override the \"process\" state, so that they "
+"receive a callback on each frame requesting them to process (do something). "
+"Normal processing (callback [method _process], toggled with [method "
+"set_process]) happens as fast as possible and is dependent on the frame "
+"rate, so the processing time [i]delta[/i] is passed as an argument. Physics "
+"processing (callback [method _physics_process], toggled with [method "
+"set_physics_process]) happens a fixed number of times per second (60 by "
+"default) and is useful for code related to the physics engine.\n"
+"Nodes can also process input events. When present, the [method _input] "
+"function will be called for each input that the program receives. In many "
+"cases, this can be overkill (unless used for simple projects), and the "
+"[method _unhandled_input] function might be preferred; it is called when the "
+"input event was not handled by anyone else (typically, GUI [Control] nodes), "
+"ensuring that the node only receives the events that were meant for it.\n"
+"To keep track of the scene hierarchy (especially when instancing scenes into "
+"other scenes), an \"owner\" can be set for the node with the [member owner] "
+"property. This keeps track of who instanced what. This is mostly useful when "
+"writing editors and tools, though.\n"
+"Finally, when a node is freed with [method Object.free] or [method "
+"queue_free], it will also free all its children.\n"
+"[b]Groups:[/b] Nodes can be added to as many groups as you want to be easy "
+"to manage, you could create groups like \"enemies\" or \"collectables\" for "
+"example, depending on your game. See [method add_to_group], [method "
+"is_in_group] and [method remove_from_group]. You can then retrieve all nodes "
+"in these groups, iterate them and even call methods on groups via the "
+"methods on [SceneTree].\n"
+"[b]Networking with nodes:[/b] After connecting to a server (or making one, "
+"see [NetworkedMultiplayerENet]), it is possible to use the built-in RPC "
+"(remote procedure call) system to communicate over the network. By calling "
+"[method rpc] with a method name, it will be called locally and in all "
+"connected peers (peers = clients and the server that accepts connections). "
+"To identify which node receives the RPC call, Godot will use its [NodePath] "
+"(make sure node names are the same on all peers). Also, take a look at the "
+"high-level networking tutorial and corresponding demos."
+msgstr ""
+
+#: doc/classes/Node.xml:20
+msgid ""
+"https://docs.godotengine.org/en/latest/getting_started/step_by_step/"
+"scenes_and_nodes.html"
+msgstr ""
+
+#: doc/classes/Node.xml:27
+msgid ""
+"Called when the node enters the [SceneTree] (e.g. upon instancing, scene "
+"changing, or after calling [method add_child] in a script). If the node has "
+"children, its [method _enter_tree] callback will be called first, and then "
+"that of the children.\n"
+"Corresponds to the [constant NOTIFICATION_ENTER_TREE] notification in "
+"[method Object._notification]."
+msgstr ""
+
+#: doc/classes/Node.xml:35
+msgid ""
+"Called when the node is about to leave the [SceneTree] (e.g. upon freeing, "
+"scene changing, or after calling [method remove_child] in a script). If the "
+"node has children, its [method _exit_tree] callback will be called last, "
+"after all its children have left the tree.\n"
+"Corresponds to the [constant NOTIFICATION_EXIT_TREE] notification in [method "
+"Object._notification] and signal [signal tree_exiting]. To get notified when "
+"the node has already left the active tree, connect to the [signal "
+"tree_exited]."
+msgstr ""
+
+#: doc/classes/Node.xml:43
+msgid ""
+"The string returned from this method is displayed as a warning in the Scene "
+"Dock if the script that overrides it is a [code]tool[/code] script.\n"
+"Returning an empty string produces no warning.\n"
+"Call [method update_configuration_warning] when the warning needs to be "
+"updated for this node."
+msgstr ""
+
+#: doc/classes/Node.xml:54
+msgid ""
+"Called when there is an input event. The input event propagates up through "
+"the node tree until a node consumes it.\n"
+"It is only called if input processing is enabled, which is done "
+"automatically if this method is overridden, and can be toggled with [method "
+"set_process_input].\n"
+"To consume the input event and stop it propagating further to other nodes, "
+"[method Viewport.set_input_as_handled] can be called.\n"
+"For gameplay input, [method _unhandled_input] and [method "
+"_unhandled_key_input] are usually a better fit as they allow the GUI to "
+"intercept the events first.\n"
+"[b]Note:[/b] This method is only called if the node is present in the scene "
+"tree (i.e. if it's not orphan)."
+msgstr ""
+
+#: doc/classes/Node.xml:67
+msgid ""
+"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 "
+"[code]delta[/code] variable should be constant.\n"
+"It is only called if physics processing is enabled, which is done "
+"automatically if this method is overridden, and can be toggled with [method "
+"set_physics_process].\n"
+"Corresponds to the [constant NOTIFICATION_PHYSICS_PROCESS] notification in "
+"[method Object._notification].\n"
+"[b]Note:[/b] This method is only called if the node is present in the scene "
+"tree (i.e. if it's not orphan)."
+msgstr ""
+
+#: doc/classes/Node.xml:79
+msgid ""
+"Called during the processing step of the main loop. Processing happens at "
+"every frame and as fast as possible, so the [code]delta[/code] time since "
+"the previous frame is not constant.\n"
+"It is only called if processing is enabled, which is done automatically if "
+"this method is overridden, and can be toggled with [method set_process].\n"
+"Corresponds to the [constant NOTIFICATION_PROCESS] notification in [method "
+"Object._notification].\n"
+"[b]Note:[/b] This method is only called if the node is present in the scene "
+"tree (i.e. if it's not orphan)."
+msgstr ""
+
+#: doc/classes/Node.xml:89
+msgid ""
+"Called when the node is \"ready\", i.e. when both the node and its children "
+"have entered the scene tree. If the node has children, their [method _ready] "
+"callbacks get triggered first, and the parent node will receive the ready "
+"notification afterwards.\n"
+"Corresponds to the [constant NOTIFICATION_READY] notification in [method "
+"Object._notification]. See also the [code]onready[/code] keyword for "
+"variables.\n"
+"Usually used for initialization. For even earlier initialization, [method "
+"Object._init] may be used. See also [method _enter_tree].\n"
+"[b]Note:[/b] [method _ready] may be called only once for each node. After "
+"removing a node from the scene tree and adding again, [code]_ready[/code] "
+"will not be called for the second time. This can be bypassed with requesting "
+"another call with [method request_ready], which may be called anywhere "
+"before adding the node again."
+msgstr ""
+
+#: doc/classes/Node.xml:101
+msgid ""
+"Called when an [InputEvent] hasn't been consumed by [method _input] or any "
+"GUI. The input event propagates up through the node tree until a node "
+"consumes it.\n"
+"It is only called if unhandled input processing is enabled, which is done "
+"automatically if this method is overridden, and can be toggled with [method "
+"set_process_unhandled_input].\n"
+"To consume the input event and stop it propagating further to other nodes, "
+"[method Viewport.set_input_as_handled] can be called.\n"
+"For gameplay input, this and [method _unhandled_key_input] are usually a "
+"better fit than [method _input] as they allow the GUI to intercept the "
+"events first.\n"
+"[b]Note:[/b] This method is only called if the node is present in the scene "
+"tree (i.e. if it's not orphan)."
+msgstr ""
+
+#: doc/classes/Node.xml:114
+msgid ""
+"Called when an [InputEventKey] hasn't been consumed by [method _input] or "
+"any GUI. The input event propagates up through the node tree until a node "
+"consumes it.\n"
+"It is only called if unhandled key input processing is enabled, which is "
+"done automatically if this method is overridden, and can be toggled with "
+"[method set_process_unhandled_key_input].\n"
+"To consume the input event and stop it propagating further to other nodes, "
+"[method Viewport.set_input_as_handled] can be called.\n"
+"For gameplay input, this and [method _unhandled_input] are usually a better "
+"fit than [method _input] as they allow the GUI to intercept the events "
+"first.\n"
+"[b]Note:[/b] This method is only called if the node is present in the scene "
+"tree (i.e. if it's not orphan)."
+msgstr ""
+
+#: doc/classes/Node.xml:129
+msgid ""
+"Adds a child node. Nodes can have any number of children, but every child "
+"must have a unique name. Child nodes are automatically deleted when the "
+"parent node is deleted, so an entire scene can be removed by deleting its "
+"topmost node.\n"
+"If [code]legible_unique_name[/code] is [code]true[/code], the child node "
+"will have an human-readable name based on the name of the node being "
+"instanced instead of its type.\n"
+"[b]Note:[/b] If the child node already has a parent, the function will fail. "
+"Use [method remove_child] first to remove the node from its current parent. "
+"For example:\n"
+"[codeblock]\n"
+"if child_node.get_parent():\n"
+" child_node.get_parent().remove_child(child_node)\n"
+"add_child(child_node)\n"
+"[/codeblock]\n"
+"If you need the child node to be added below a specific node in the list of "
+"children, use [method add_sibling] instead of this method.\n"
+"[b]Note:[/b] If you want a child to be persisted to a [PackedScene], you "
+"must set [member owner] in addition to calling [method add_child]. This is "
+"typically relevant for [url=https://godot.readthedocs.io/en/latest/tutorials/"
+"misc/running_code_in_the_editor.html]tool scripts[/url] and [url=https://"
+"godot.readthedocs.io/en/latest/tutorials/plugins/editor/index.html]editor "
+"plugins[/url]. If [method add_child] is called without setting [member "
+"owner], the newly added [Node] will not be visible in the scene tree, though "
+"it will be visible in the 2D/3D view."
+msgstr ""
+
+#: doc/classes/Node.xml:149
+msgid ""
+"Adds a [code]sibling[/code] node to current's node parent, at the the same "
+"level as that node, right below it.\n"
+"If [code]legible_unique_name[/code] is [code]true[/code], the child node "
+"will have an human-readable name based on the name of the node being "
+"instanced instead of its type.\n"
+"Use [method add_child] instead of this method if you don't need the child "
+"node to be added below a specific node in the list of children."
+msgstr ""
+
+#: doc/classes/Node.xml:162
+msgid ""
+"Adds the node to a group. Groups are helpers to name and organize a subset "
+"of nodes, for example \"enemies\" or \"collectables\". A node can be in any "
+"number of groups. Nodes can be assigned a group at any time, but will not be "
+"added until they are inside the scene tree (see [method is_inside_tree]). "
+"See notes in the description, and the group methods in [SceneTree].\n"
+"The [code]persistent[/code] option is used when packing node to "
+"[PackedScene] and saving to file. Non-persistent groups aren't stored."
+msgstr ""
+
+#: doc/classes/Node.xml:170
+msgid ""
+"Returns [code]true[/code] if the node can process while the scene tree is "
+"paused (see [member pause_mode]). Always returns [code]true[/code] if the "
+"scene tree is not paused, and [code]false[/code] if the node is not in the "
+"tree."
+msgstr ""
+
+#: doc/classes/Node.xml:179
+msgid ""
+"Duplicates the node, returning a new node.\n"
+"You can fine-tune the behavior using the [code]flags[/code] (see [enum "
+"DuplicateFlags]).\n"
+"[b]Note:[/b] It will not work properly if the node contains a script with "
+"constructor arguments (i.e. needs to supply arguments to [method Object."
+"_init] method). In that case, the node will be duplicated without a script."
+msgstr ""
+
+#: doc/classes/Node.xml:194
+msgid ""
+"Finds a descendant of this node whose name matches [code]mask[/code] as in "
+"[method String.match] (i.e. case-sensitive, but [code]\"*\"[/code] matches "
+"zero or more characters and [code]\"?\"[/code] matches any single character "
+"except [code]\".\"[/code]).\n"
+"[b]Note:[/b] It does not match against the full path, just against "
+"individual node names.\n"
+"If [code]owned[/code] is [code]true[/code], this method only finds nodes "
+"whose owner is this node. This is especially important for scenes "
+"instantiated through a script, because those scenes don't have an owner."
+msgstr ""
+
+#: doc/classes/Node.xml:205
+msgid ""
+"Finds the first parent of the current node whose name matches [code]mask[/"
+"code] as in [method String.match] (i.e. case-sensitive, but [code]\"*\"[/"
+"code] matches zero or more characters and [code]\"?\"[/code] matches any "
+"single character except [code]\".\"[/code]).\n"
+"[b]Note:[/b] It does not match against the full path, just against "
+"individual node names."
+msgstr ""
+
+#: doc/classes/Node.xml:215
+msgid ""
+"Returns a child node by its index (see [method get_child_count]). This "
+"method is often used for iterating all children of a node.\n"
+"To access a child node via its name, use [method get_node]."
+msgstr ""
+
+#: doc/classes/Node.xml:223
+msgid "Returns the number of child nodes."
+msgstr ""
+
+#: doc/classes/Node.xml:230
+msgid "Returns an array of references to node's children."
+msgstr ""
+
+#: doc/classes/Node.xml:237
+msgid "Returns an array listing the groups that the node is a member of."
+msgstr ""
+
+#: doc/classes/Node.xml:244
+msgid ""
+"Returns the node's order in the scene tree branch. For example, if called on "
+"the first child node the position is [code]0[/code]."
+msgstr ""
+
+#: doc/classes/Node.xml:251
+msgid ""
+"Returns the peer ID of the network master for this node. See [method "
+"set_network_master]."
+msgstr ""
+
+#: doc/classes/Node.xml:260
+msgid ""
+"Fetches a node. The [NodePath] can be either a relative path (from the "
+"current node) or an absolute path (in the scene tree) to a node. If the path "
+"does not exist, a [code]null instance[/code] is returned and an error is "
+"logged. Attempts to access methods on the return value will result in an "
+"\"Attempt to call <method> on a null instance.\" error.\n"
+"[b]Note:[/b] Fetching absolute paths only works when the node is inside the "
+"scene tree (see [method is_inside_tree]).\n"
+"[b]Example:[/b] Assume your current node is Character and the following "
+"tree:\n"
+"[codeblock]\n"
+"/root\n"
+"/root/Character\n"
+"/root/Character/Sword\n"
+"/root/Character/Backpack/Dagger\n"
+"/root/MyGame\n"
+"/root/Swamp/Alligator\n"
+"/root/Swamp/Mosquito\n"
+"/root/Swamp/Goblin\n"
+"[/codeblock]\n"
+"Possible paths are:\n"
+"[codeblock]\n"
+"get_node(\"Sword\")\n"
+"get_node(\"Backpack/Dagger\")\n"
+"get_node(\"../Swamp/Alligator\")\n"
+"get_node(\"/root/MyGame\")\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Node.xml:288
+msgid ""
+"Fetches a node and one of its resources as specified by the [NodePath]'s "
+"subname (e.g. [code]Area2D/CollisionShape2D:shape[/code]). If several nested "
+"resources are specified in the [NodePath], the last one will be fetched.\n"
+"The return value is an array of size 3: the first index points to the [Node] "
+"(or [code]null[/code] if not found), the second index points to the "
+"[Resource] (or [code]null[/code] if not found), and the third index is the "
+"remaining [NodePath], if any.\n"
+"For example, assuming that [code]Area2D/CollisionShape2D[/code] is a valid "
+"node and that its [code]shape[/code] property has been assigned a "
+"[RectangleShape2D] resource, one could have this kind of output:\n"
+"[codeblock]\n"
+"print(get_node_and_resource(\"Area2D/CollisionShape2D\")) # "
+"[[CollisionShape2D:1161], Null, ]\n"
+"print(get_node_and_resource(\"Area2D/CollisionShape2D:shape\")) # "
+"[[CollisionShape2D:1161], [RectangleShape2D:1156], ]\n"
+"print(get_node_and_resource(\"Area2D/CollisionShape2D:shape:extents\")) # "
+"[[CollisionShape2D:1161], [RectangleShape2D:1156], :extents]\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Node.xml:304
+msgid ""
+"Similar to [method get_node], but does not log an error if [code]path[/code] "
+"does not point to a valid [Node]."
+msgstr ""
+
+#: doc/classes/Node.xml:311
+msgid ""
+"Returns the parent node of the current node, or a [code]null instance[/code] "
+"if the node lacks a parent."
+msgstr ""
+
+#: doc/classes/Node.xml:318
+msgid ""
+"Returns the absolute path of the current node. This only works if the "
+"current node is inside the scene tree (see [method is_inside_tree])."
+msgstr ""
+
+#: doc/classes/Node.xml:327
+msgid ""
+"Returns the relative [NodePath] from this node to the specified [code]node[/"
+"code]. Both nodes must be in the same scene or the function will fail."
+msgstr ""
+
+#: doc/classes/Node.xml:334
+msgid ""
+"Returns the time elapsed since the last physics-bound frame (see [method "
+"_physics_process]). This is always a constant value in physics processing "
+"unless the frames per second is changed via [member Engine."
+"iterations_per_second]."
+msgstr ""
+
+#: doc/classes/Node.xml:341
+msgid ""
+"Returns the time elapsed (in seconds) since the last process callback. This "
+"value may vary from frame to frame."
+msgstr ""
+
+#: doc/classes/Node.xml:348
+msgid ""
+"Returns [code]true[/code] if this is an instance load placeholder. See "
+"[InstancePlaceholder]."
+msgstr ""
+
+#: doc/classes/Node.xml:355
+msgid "Returns the [SceneTree] that contains this node."
+msgstr ""
+
+#: doc/classes/Node.xml:362
+msgid "Returns the node's [Viewport]."
+msgstr ""
+
+#: doc/classes/Node.xml:371
+msgid ""
+"Returns [code]true[/code] if the node that the [NodePath] points to exists."
+msgstr ""
+
+#: doc/classes/Node.xml:380
+msgid ""
+"Returns [code]true[/code] if the [NodePath] points to a valid node and its "
+"subname points to a valid resource, e.g. [code]Area2D/CollisionShape2D:"
+"shape[/code]. Properties with a non-[Resource] type (e.g. nodes or primitive "
+"math types) are not considered resources."
+msgstr ""
+
+#: doc/classes/Node.xml:389
+msgid ""
+"Returns [code]true[/code] if the given node is a direct or indirect child of "
+"the current node."
+msgstr ""
+
+#: doc/classes/Node.xml:396
+msgid ""
+"Returns [code]true[/code] if the node is folded (collapsed) in the Scene "
+"dock."
+msgstr ""
+
+#: doc/classes/Node.xml:405
+msgid ""
+"Returns [code]true[/code] if the given node occurs later in the scene "
+"hierarchy than the current node."
+msgstr ""
+
+#: doc/classes/Node.xml:414
+msgid ""
+"Returns [code]true[/code] if this node is in the specified group. See notes "
+"in the description, and the group methods in [SceneTree]."
+msgstr ""
+
+#: doc/classes/Node.xml:421
+msgid ""
+"Returns [code]true[/code] if this node is currently inside a [SceneTree]."
+msgstr ""
+
+#: doc/classes/Node.xml:428
+msgid ""
+"Returns [code]true[/code] if the local system is the master of this node."
+msgstr ""
+
+#: doc/classes/Node.xml:435
+msgid ""
+"Returns [code]true[/code] if physics processing is enabled (see [method "
+"set_physics_process])."
+msgstr ""
+
+#: doc/classes/Node.xml:442
+msgid ""
+"Returns [code]true[/code] if internal physics processing is enabled (see "
+"[method set_physics_process_internal])."
+msgstr ""
+
+#: doc/classes/Node.xml:449
+msgid ""
+"Returns [code]true[/code] if processing is enabled (see [method "
+"set_process])."
+msgstr ""
+
+#: doc/classes/Node.xml:456
+msgid ""
+"Returns [code]true[/code] if the node is processing input (see [method "
+"set_process_input])."
+msgstr ""
+
+#: doc/classes/Node.xml:463
+msgid ""
+"Returns [code]true[/code] if internal processing is enabled (see [method "
+"set_process_internal])."
+msgstr ""
+
+#: doc/classes/Node.xml:470
+msgid ""
+"Returns [code]true[/code] if the node is processing unhandled input (see "
+"[method set_process_unhandled_input])."
+msgstr ""
+
+#: doc/classes/Node.xml:477
+msgid ""
+"Returns [code]true[/code] if the node is processing unhandled key input (see "
+"[method set_process_unhandled_key_input])."
+msgstr ""
+
+#: doc/classes/Node.xml:488
+msgid ""
+"Moves a child node to a different position (order) among the other children. "
+"Since calls, signals, etc are performed by tree order, changing the order of "
+"children nodes may be useful."
+msgstr ""
+
+#: doc/classes/Node.xml:495
+msgid ""
+"Prints all stray nodes (nodes outside the [SceneTree]). Used for debugging. "
+"Works only in debug builds."
+msgstr ""
+
+#: doc/classes/Node.xml:502
+msgid ""
+"Prints the tree to stdout. Used mainly for debugging purposes. This version "
+"displays the path relative to the current node, and is good for copy/pasting "
+"into the [method get_node] function.\n"
+"[b]Example output:[/b]\n"
+"[codeblock]\n"
+"TheGame\n"
+"TheGame/Menu\n"
+"TheGame/Menu/Label\n"
+"TheGame/Menu/Camera2D\n"
+"TheGame/SplashScreen\n"
+"TheGame/SplashScreen/Camera2D\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Node.xml:518
+msgid ""
+"Similar to [method print_tree], this prints the tree to stdout. This version "
+"displays a more graphical representation similar to what is displayed in the "
+"scene inspector. It is useful for inspecting larger trees.\n"
+"[b]Example output:[/b]\n"
+"[codeblock]\n"
+" â”–â•´TheGame\n"
+" â” â•´Menu\n"
+" ┃ ┠╴Label\n"
+" ┃ ┖╴Camera2D\n"
+" â”–-SplashScreen\n"
+" â”–â•´Camera2D\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Node.xml:540
+msgid ""
+"Calls the given method (if present) with the arguments given in [code]args[/"
+"code] on this node and recursively on all its children. If the "
+"[code]parent_first[/code] argument is [code]true[/code], the method will be "
+"called on the current node first, then on all its children. If "
+"[code]parent_first[/code] is [code]false[/code], the children will be called "
+"first."
+msgstr ""
+
+#: doc/classes/Node.xml:549
+msgid ""
+"Notifies the current node and all its children recursively by calling "
+"[method Object.notification] on all of them."
+msgstr ""
+
+#: doc/classes/Node.xml:556
+msgid ""
+"Queues a node for deletion at the end of the current frame. When deleted, "
+"all of its child nodes will be deleted as well. This method ensures it's "
+"safe to delete the node, contrary to [method Object.free]. Use [method "
+"Object.is_queued_for_deletion] to check whether a node will be deleted at "
+"the end of the frame."
+msgstr ""
+
+#: doc/classes/Node.xml:563
+msgid ""
+"Moves this node to the bottom of parent node's children hierarchy. This is "
+"often useful in GUIs ([Control] nodes), because their order of drawing "
+"depends on their order in the tree, i.e. the further they are on the node "
+"list, the higher they are drawn. After using [code]raise[/code], a Control "
+"will be drawn on top of their siblings."
+msgstr ""
+
+#: doc/classes/Node.xml:570
+msgid ""
+"Removes a node and sets all its children as children of the parent node (if "
+"it exists). All event subscriptions that pass by the removed node will be "
+"unsubscribed."
+msgstr ""
+
+#: doc/classes/Node.xml:579
+msgid ""
+"Removes a child node. The node is NOT deleted and must be deleted manually."
+msgstr ""
+
+#: doc/classes/Node.xml:588
+msgid ""
+"Removes a node from a group. See notes in the description, and the group "
+"methods in [SceneTree]."
+msgstr ""
+
+#: doc/classes/Node.xml:599
+msgid ""
+"Replaces a node in a scene by the given one. Subscriptions that pass through "
+"this node will be lost."
+msgstr ""
+
+#: doc/classes/Node.xml:606
+msgid ""
+"Requests that [code]_ready[/code] be called again. Note that the method "
+"won't be called immediately, but is scheduled for when the node is added to "
+"the scene tree again (see [method _ready]). [code]_ready[/code] is called "
+"only for the node which requested it, which means that you need to request "
+"ready for each child if you want them to call [code]_ready[/code] too (in "
+"which case, [code]_ready[/code] will be called in the same order as it would "
+"normally)."
+msgstr ""
+
+#: doc/classes/Node.xml:615
+msgid ""
+"Sends a remote procedure call request for the given [code]method[/code] to "
+"peers on the network (and locally), optionally sending all additional "
+"arguments as arguments to the method called by the RPC. The call request "
+"will only be received by nodes with the same [NodePath], including the exact "
+"same node name. Behaviour depends on the RPC configuration for the given "
+"method, see [method rpc_config]. Methods are not exposed to RPCs by default. "
+"See also [method rset] and [method rset_config] for properties. Returns an "
+"empty [Variant].\n"
+"[b]Note:[/b] You can only safely use RPCs on clients after you received the "
+"[code]connected_to_server[/code] signal from the [SceneTree]. You also need "
+"to keep track of the connection state, either by the [SceneTree] signals "
+"like [code]server_disconnected[/code] or by checking [code]SceneTree."
+"network_peer.get_connection_status() == CONNECTION_CONNECTED[/code]."
+msgstr ""
+
+#: doc/classes/Node.xml:627
+msgid ""
+"Changes the RPC mode for the given [code]method[/code] to the given "
+"[code]mode[/code]. See [enum MultiplayerAPI.RPCMode]. An alternative is "
+"annotating methods and properties with the corresponding keywords "
+"([code]remote[/code], [code]master[/code], [code]puppet[/code], "
+"[code]remotesync[/code], [code]mastersync[/code], [code]puppetsync[/code]). "
+"By default, methods are not exposed to networking (and RPCs). See also "
+"[method rset] and [method rset_config] for properties."
+msgstr ""
+
+#: doc/classes/Node.xml:638
+msgid ""
+"Sends a [method rpc] to a specific peer identified by [code]peer_id[/code] "
+"(see [method NetworkedMultiplayerPeer.set_target_peer]). Returns an empty "
+"[Variant]."
+msgstr ""
+
+#: doc/classes/Node.xml:647
+msgid ""
+"Sends a [method rpc] using an unreliable protocol. Returns an empty "
+"[Variant]."
+msgstr ""
+
+#: doc/classes/Node.xml:658
+msgid ""
+"Sends a [method rpc] to a specific peer identified by [code]peer_id[/code] "
+"using an unreliable protocol (see [method NetworkedMultiplayerPeer."
+"set_target_peer]). Returns an empty [Variant]."
+msgstr ""
+
+#: doc/classes/Node.xml:669
+msgid ""
+"Remotely changes a property's value on other peers (and locally). Behaviour "
+"depends on the RPC configuration for the given property, see [method "
+"rset_config]. See also [method rpc] for RPCs for methods, most information "
+"applies to this method as well."
+msgstr ""
+
+#: doc/classes/Node.xml:680
+msgid ""
+"Changes the RPC mode for the given [code]property[/code] to the given "
+"[code]mode[/code]. See [enum MultiplayerAPI.RPCMode]. An alternative is "
+"annotating methods and properties with the corresponding keywords "
+"([code]remote[/code], [code]master[/code], [code]puppet[/code], "
+"[code]remotesync[/code], [code]mastersync[/code], [code]puppetsync[/code]). "
+"By default, properties are not exposed to networking (and RPCs). See also "
+"[method rpc] and [method rpc_config] for methods."
+msgstr ""
+
+#: doc/classes/Node.xml:693
+msgid ""
+"Remotely changes the property's value on a specific peer identified by "
+"[code]peer_id[/code] (see [method NetworkedMultiplayerPeer.set_target_peer])."
+msgstr ""
+
+#: doc/classes/Node.xml:704
+msgid ""
+"Remotely changes the property's value on other peers (and locally) using an "
+"unreliable protocol."
+msgstr ""
+
+#: doc/classes/Node.xml:717
+msgid ""
+"Remotely changes property's value on a specific peer identified by "
+"[code]peer_id[/code] using an unreliable protocol (see [method "
+"NetworkedMultiplayerPeer.set_target_peer])."
+msgstr ""
+
+#: doc/classes/Node.xml:726
+msgid "Sets the folded state of the node in the Scene dock."
+msgstr ""
+
+#: doc/classes/Node.xml:737
+msgid ""
+"Sets the node's network master to the peer with the given peer ID. The "
+"network master is the peer that has authority over the node on the network. "
+"Useful in conjunction with the [code]master[/code] and [code]puppet[/code] "
+"keywords. Inherited from the parent node by default, which ultimately "
+"defaults to peer ID 1 (the server). If [code]recursive[/code], the given "
+"peer is recursively set as the master for all children of this node."
+msgstr ""
+
+#: doc/classes/Node.xml:746
+msgid ""
+"Enables or disables physics (i.e. fixed framerate) processing. When a node "
+"is being processed, it will receive a [constant "
+"NOTIFICATION_PHYSICS_PROCESS] at a fixed (usually 60 FPS, see [member Engine."
+"iterations_per_second] to change) interval (and the [method "
+"_physics_process] callback will be called if exists). Enabled automatically "
+"if [method _physics_process] is overridden. Any calls to this before [method "
+"_ready] will be ignored."
+msgstr ""
+
+#: doc/classes/Node.xml:755
+msgid ""
+"Enables or disables internal physics for this node. Internal physics "
+"processing happens in isolation from the normal [method _physics_process] "
+"calls and is used by some nodes internally to guarantee proper functioning "
+"even if the node is paused or physics processing is disabled for scripting "
+"([method set_physics_process]). Only useful for advanced uses to manipulate "
+"built-in nodes' behaviour."
+msgstr ""
+
+#: doc/classes/Node.xml:764
+msgid ""
+"Enables or disables processing. When a node is being processed, it will "
+"receive a [constant NOTIFICATION_PROCESS] on every drawn frame (and the "
+"[method _process] callback will be called if exists). Enabled automatically "
+"if [method _process] is overridden. Any calls to this before [method _ready] "
+"will be ignored."
+msgstr ""
+
+#: doc/classes/Node.xml:773
+msgid ""
+"Enables or disables input processing. This is not required for GUI controls! "
+"Enabled automatically if [method _input] is overridden. Any calls to this "
+"before [method _ready] will be ignored."
+msgstr ""
+
+#: doc/classes/Node.xml:782
+msgid ""
+"Enables or disabled internal processing for this node. Internal processing "
+"happens in isolation from the normal [method _process] calls and is used by "
+"some nodes internally to guarantee proper functioning even if the node is "
+"paused or processing is disabled for scripting ([method set_process]). Only "
+"useful for advanced uses to manipulate built-in nodes' behaviour."
+msgstr ""
+
+#: doc/classes/Node.xml:791
+msgid ""
+"Enables unhandled input processing. This is not required for GUI controls! "
+"It enables the node to receive all input that was not previously handled "
+"(usually by a [Control]). Enabled automatically if [method _unhandled_input] "
+"is overridden. Any calls to this before [method _ready] will be ignored."
+msgstr ""
+
+#: doc/classes/Node.xml:800
+msgid ""
+"Enables unhandled key input processing. Enabled automatically if [method "
+"_unhandled_key_input] is overridden. Any calls to this before [method "
+"_ready] will be ignored."
+msgstr ""
+
+#: doc/classes/Node.xml:809
+msgid ""
+"Sets whether this is an instance load placeholder. See [InstancePlaceholder]."
+msgstr ""
+
+#: doc/classes/Node.xml:816
+msgid ""
+"Updates the warning displayed for this node in the Scene Dock.\n"
+"Use [method _get_configuration_warning] to setup the warning message to "
+"display."
+msgstr ""
+
+#: doc/classes/Node.xml:823
+msgid ""
+"The override to the default [MultiplayerAPI]. Set to [code]null[/code] to "
+"use the default [SceneTree] one."
+msgstr ""
+
+#: doc/classes/Node.xml:826
+msgid ""
+"When a scene is instanced from a file, its topmost node contains the "
+"filename from which it was loaded."
+msgstr ""
+
+#: doc/classes/Node.xml:829
+msgid ""
+"The [MultiplayerAPI] instance associated with this node. Either the [member "
+"custom_multiplayer], or the default SceneTree one (if inside tree)."
+msgstr ""
+
+#: doc/classes/Node.xml:832
+msgid ""
+"The name of the node. This name is unique among the siblings (other child "
+"nodes from the same parent). When set to an existing name, the node will be "
+"automatically renamed."
+msgstr ""
+
+#: doc/classes/Node.xml:835
+msgid ""
+"The node owner. A node can have any other node as owner (as long as it is a "
+"valid parent, grandparent, etc. ascending in the tree). When saving a node "
+"(using [PackedScene]), all the nodes it owns will be saved with it. This "
+"allows for the creation of complex [SceneTree]s, with instancing and "
+"subinstancing."
+msgstr ""
+
+#: doc/classes/Node.xml:838
+msgid "Pause mode. How the node will behave if the [SceneTree] is paused."
+msgstr ""
+
+#: doc/classes/Node.xml:841
+msgid ""
+"The node's priority in the execution order of the enabled processing "
+"callbacks (i.e. [constant NOTIFICATION_PROCESS], [constant "
+"NOTIFICATION_PHYSICS_PROCESS] and their internal counterparts). Nodes whose "
+"process priority value is [i]lower[/i] will have their processing callbacks "
+"executed first."
+msgstr ""
+
+#: doc/classes/Node.xml:847
+msgid "Emitted when the node is ready."
+msgstr ""
+
+#: doc/classes/Node.xml:852
+msgid "Emitted when the node is renamed."
+msgstr ""
+
+#: doc/classes/Node.xml:857
+msgid "Emitted when the node enters the tree."
+msgstr ""
+
+#: doc/classes/Node.xml:862
+msgid "Emitted after the node exits the tree and is no longer active."
+msgstr ""
+
+#: doc/classes/Node.xml:867
+msgid ""
+"Emitted when the node is still active but about to exit the tree. This is "
+"the right place for de-initialization (or a \"destructor\", if you will)."
+msgstr ""
+
+#: doc/classes/Node.xml:873
+msgid "Notification received when the node enters a [SceneTree]."
+msgstr ""
+
+#: doc/classes/Node.xml:876
+msgid "Notification received when the node is about to exit a [SceneTree]."
+msgstr ""
+
+#: doc/classes/Node.xml:879
+msgid "Notification received when the node is moved in the parent."
+msgstr ""
+
+#: doc/classes/Node.xml:882
+msgid "Notification received when the node is ready. See [method _ready]."
+msgstr ""
+
+#: doc/classes/Node.xml:885
+msgid "Notification received when the node is paused."
+msgstr ""
+
+#: doc/classes/Node.xml:888
+msgid "Notification received when the node is unpaused."
+msgstr ""
+
+#: doc/classes/Node.xml:891
+msgid ""
+"Notification received every frame when the physics process flag is set (see "
+"[method set_physics_process])."
+msgstr ""
+
+#: doc/classes/Node.xml:894
+msgid ""
+"Notification received every frame when the process flag is set (see [method "
+"set_process])."
+msgstr ""
+
+#: doc/classes/Node.xml:897
+msgid ""
+"Notification received when a node is set as a child of another node.\n"
+"[b]Note:[/b] This doesn't mean that a node entered the [SceneTree]."
+msgstr ""
+
+#: doc/classes/Node.xml:901
+msgid ""
+"Notification received when a node is unparented (parent removed it from the "
+"list of children)."
+msgstr ""
+
+#: doc/classes/Node.xml:904
+msgid "Notification received when the node is instanced."
+msgstr ""
+
+#: doc/classes/Node.xml:907
+msgid "Notification received when a drag begins."
+msgstr ""
+
+#: doc/classes/Node.xml:910
+msgid "Notification received when a drag ends."
+msgstr ""
+
+#: doc/classes/Node.xml:913
+msgid "Notification received when the node's [NodePath] changed."
+msgstr ""
+
+#: doc/classes/Node.xml:916
+msgid ""
+"Notification received every frame when the internal process flag is set (see "
+"[method set_process_internal])."
+msgstr ""
+
+#: doc/classes/Node.xml:919
+msgid ""
+"Notification received every frame when the internal physics process flag is "
+"set (see [method set_physics_process_internal])."
+msgstr ""
+
+#: doc/classes/Node.xml:922
+msgid ""
+"Notification received from the OS when the mouse enters the game window.\n"
+"Implemented on desktop and web platforms."
+msgstr ""
+
+#: doc/classes/Node.xml:926
+msgid ""
+"Notification received from the OS when the mouse leaves the game window.\n"
+"Implemented on desktop and web platforms."
+msgstr ""
+
+#: doc/classes/Node.xml:930
+msgid ""
+"Notification received from the OS when the node's parent [Window] is "
+"focused. This may be a change of focus between two windows of the same "
+"engine instance, or from the OS desktop or a third-party application to a "
+"window of the game (in which case [constant "
+"NOTIFICATION_APPLICATION_FOCUS_IN] is also emitted)."
+msgstr ""
+
+#: doc/classes/Node.xml:933
+msgid ""
+"Notification received from the OS when the node's parent [Window] is "
+"defocused. This may be a change of focus between two windows of the same "
+"engine instance, or from a window of the game to the OS desktop or a third-"
+"party application (in which case [constant "
+"NOTIFICATION_APPLICATION_FOCUS_OUT] is also emitted)."
+msgstr ""
+
+#: doc/classes/Node.xml:936
+msgid ""
+"Notification received from the OS when a close request is sent (e.g. closing "
+"the window with a \"Close\" button or [kbd]Alt + F4[/kbd]).\n"
+"Implemented on desktop platforms."
+msgstr ""
+
+#: doc/classes/Node.xml:940
+msgid ""
+"Notification received from the OS when a go back request is sent (e.g. "
+"pressing the \"Back\" button on Android).\n"
+"Specific to the Android platform."
+msgstr ""
+
+#: doc/classes/Node.xml:981
+msgid ""
+"Inherits pause mode from the node's parent. For the root node, it is "
+"equivalent to [constant PAUSE_MODE_STOP]. Default."
+msgstr ""
+
+#: doc/classes/Node.xml:984
+msgid "Stops processing when the [SceneTree] is paused."
+msgstr ""
+
+#: doc/classes/Node.xml:987
+msgid "Continue to process regardless of the [SceneTree] pause state."
+msgstr ""
+
+#: doc/classes/Node.xml:990
+msgid "Duplicate the node's signals."
+msgstr ""
+
+#: doc/classes/Node.xml:993
+msgid "Duplicate the node's groups."
+msgstr ""
+
+#: doc/classes/Node.xml:996
+msgid "Duplicate the node's scripts."
+msgstr ""
+
+#: doc/classes/Node.xml:999
+msgid ""
+"Duplicate using instancing.\n"
+"An instance stays linked to the original so when the original changes, the "
+"instance changes too."
+msgstr ""
+
+#: doc/classes/Node2D.xml:4
+msgid ""
+"A 2D game object, inherited by all 2D-related nodes. Has a position, "
+"rotation, scale, and Z index."
+msgstr ""
+
+#: doc/classes/Node2D.xml:7
+msgid ""
+"A 2D game object, with a transform (position, rotation, and scale). All 2D "
+"nodes, including physics objects and sprites, inherit from Node2D. Use "
+"Node2D as a parent node to move, scale and rotate children in a 2D project. "
+"Also gives control of the node's render order."
+msgstr ""
+
+#: doc/classes/Node2D.xml:19
+msgid "Multiplies the current scale by the [code]ratio[/code] vector."
+msgstr ""
+
+#: doc/classes/Node2D.xml:28
+msgid ""
+"Returns the angle between the node and the [code]point[/code] in radians."
+msgstr ""
+
+#: doc/classes/Node2D.xml:37
+msgid "Returns the [Transform2D] relative to this node's parent."
+msgstr ""
+
+#: doc/classes/Node2D.xml:46
+msgid "Adds the [code]offset[/code] vector to the node's global position."
+msgstr ""
+
+#: doc/classes/Node2D.xml:55
+msgid ""
+"Rotates the node so it points towards the [code]point[/code], which is "
+"expected to use global coordinates."
+msgstr ""
+
+#: doc/classes/Node2D.xml:66
+msgid ""
+"Applies a local translation on the node's X axis based on the [method Node."
+"_process]'s [code]delta[/code]. If [code]scaled[/code] is [code]false[/"
+"code], normalizes the movement."
+msgstr ""
+
+#: doc/classes/Node2D.xml:77
+msgid ""
+"Applies a local translation on the node's Y axis based on the [method Node."
+"_process]'s [code]delta[/code]. If [code]scaled[/code] is [code]false[/"
+"code], normalizes the movement."
+msgstr ""
+
+#: doc/classes/Node2D.xml:86
+msgid ""
+"Applies a rotation to the node, in radians, starting from its current "
+"rotation."
+msgstr ""
+
+#: doc/classes/Node2D.xml:95
+msgid ""
+"Transforms the provided local position into a position in global coordinate "
+"space. The input is expected to be local relative to the [Node2D] it is "
+"called on. e.g. Applying this method to the positions of child nodes will "
+"correctly transform their positions into the global coordinate space, but "
+"applying it to a node's own position will give an incorrect result, as it "
+"will incorporate the node's own transformation into its global position."
+msgstr ""
+
+#: doc/classes/Node2D.xml:104
+msgid ""
+"Transforms the provided global position into a position in local coordinate "
+"space. The output will be local relative to the [Node2D] it is called on. e."
+"g. It is appropriate for determining the positions of child nodes, but it is "
+"not appropriate for determining its own position relative to its parent."
+msgstr ""
+
+#: doc/classes/Node2D.xml:113
+msgid ""
+"Translates the node by the given [code]offset[/code] in local coordinates."
+msgstr ""
+
+#: doc/classes/Node2D.xml:119
+msgid "Global position."
+msgstr ""
+
+#: doc/classes/Node2D.xml:122
+msgid "Global rotation in radians."
+msgstr ""
+
+#: doc/classes/Node2D.xml:125
+msgid "Global rotation in degrees."
+msgstr ""
+
+#: doc/classes/Node2D.xml:128
+msgid "Global scale."
+msgstr ""
+
+#: doc/classes/Node2D.xml:131
+msgid "Global [Transform2D]."
+msgstr ""
+
+#: doc/classes/Node2D.xml:134
+msgid "Position, relative to the node's parent."
+msgstr ""
+
+#: doc/classes/Node2D.xml:137
+msgid "Rotation in radians, relative to the node's parent."
+msgstr ""
+
+#: doc/classes/Node2D.xml:140
+msgid "Rotation in degrees, relative to the node's parent."
+msgstr ""
+
+#: doc/classes/Node2D.xml:143
+msgid "The node's scale. Unscaled value: [code](1, 1)[/code]."
+msgstr ""
+
+#: doc/classes/Node2D.xml:150
+msgid "Local [Transform2D]."
+msgstr ""
+
+#: doc/classes/Node2D.xml:153
+msgid ""
+"If [code]true[/code], 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."
+msgstr ""
+
+#: doc/classes/Node2D.xml:156
+msgid ""
+"Z index. Controls the order in which the nodes render. A node with a higher "
+"Z index will display in front of others."
+msgstr ""
+
+#: doc/classes/Node3D.xml:4
+msgid "Most basic 3D game object, parent of all 3D-related nodes."
+msgstr ""
+
+#: doc/classes/Node3D.xml:7
+msgid ""
+"Most basic 3D game object, with a 3D [Transform] 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.\n"
+"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.\n"
+"[b]Note:[/b] Unless otherwise specified, all methods that have angle "
+"parameters must have angles specified as [i]radians[/i]. To convert degrees "
+"to radians, use [method @GDScript.deg2rad]."
+msgstr ""
+
+#: doc/classes/Node3D.xml:12
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/3d/introduction_to_3d.html"
+msgstr ""
+
+#: doc/classes/Node3D.xml:26
+msgid ""
+"Returns the parent [Node3D], or an empty [Object] if no parent exists or "
+"parent is not of type [Node3D]."
+msgstr ""
+
+#: doc/classes/Node3D.xml:33
+msgid ""
+"Returns the current [World3D] resource this [Node3D] node is registered to."
+msgstr ""
+
+#: doc/classes/Node3D.xml:44
+msgid ""
+"Rotates the global (world) transformation around axis, a unit [Vector3], by "
+"specified angle in radians. The rotation axis is in global coordinate system."
+msgstr ""
+
+#: doc/classes/Node3D.xml:53
+msgid ""
+"Scales the global (world) transformation by the given [Vector3] scale "
+"factors."
+msgstr ""
+
+#: doc/classes/Node3D.xml:62
+msgid ""
+"Moves the global (world) transformation by [Vector3] offset. The offset is "
+"in global coordinate system."
+msgstr ""
+
+#: doc/classes/Node3D.xml:69
+msgid ""
+"Disables rendering of this node. Changes [member visible] to [code]false[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Node3D.xml:76
+msgid ""
+"Returns whether node notifies about its local transformation changes. "
+"[Node3D] will not propagate this by default."
+msgstr ""
+
+#: doc/classes/Node3D.xml:83
+msgid ""
+"Returns whether this node uses a scale of [code](1, 1, 1)[/code] or its "
+"local transformation scale."
+msgstr ""
+
+#: doc/classes/Node3D.xml:90
+msgid ""
+"Returns whether this node is set as Toplevel, that is whether it ignores its "
+"parent nodes transformations."
+msgstr ""
+
+#: doc/classes/Node3D.xml:97
+msgid ""
+"Returns whether the node notifies about its global and local transformation "
+"changes. [Node3D] will not propagate this by default."
+msgstr ""
+
+#: doc/classes/Node3D.xml:115
+msgid ""
+"Rotates itself so that the local -Z axis points towards the [code]target[/"
+"code] position.\n"
+"The transform will first be rotated around the given [code]up[/code] vector, "
+"and then fully aligned to the target by a further rotation around an axis "
+"perpendicular to both the [code]target[/code] and [code]up[/code] vectors.\n"
+"Operations take place in global space."
+msgstr ""
+
+#: doc/classes/Node3D.xml:130
+msgid ""
+"Moves the node to the specified [code]position[/code], and then rotates "
+"itself to point toward the [code]target[/code] as per [method look_at]. "
+"Operations take place in global space."
+msgstr ""
+
+#: doc/classes/Node3D.xml:137
+msgid ""
+"Resets this node's transformations (like scale, skew and taper) preserving "
+"its rotation and translation by performing Gram-Schmidt orthonormalization "
+"on this node's [Transform]."
+msgstr ""
+
+#: doc/classes/Node3D.xml:148
+msgid ""
+"Rotates the local transformation around axis, a unit [Vector3], by specified "
+"angle in radians."
+msgstr ""
+
+#: doc/classes/Node3D.xml:159
+msgid ""
+"Rotates the local transformation around axis, a unit [Vector3], by specified "
+"angle in radians. The rotation axis is in object-local coordinate system."
+msgstr ""
+
+#: doc/classes/Node3D.xml:168
+msgid "Rotates the local transformation around the X axis by angle in radians."
+msgstr ""
+
+#: doc/classes/Node3D.xml:177
+msgid "Rotates the local transformation around the Y axis by angle in radians."
+msgstr ""
+
+#: doc/classes/Node3D.xml:186
+msgid "Rotates the local transformation around the Z axis by angle in radians."
+msgstr ""
+
+#: doc/classes/Node3D.xml:195
+msgid ""
+"Scales the local transformation by given 3D scale factors in object-local "
+"coordinate system."
+msgstr ""
+
+#: doc/classes/Node3D.xml:204
+msgid ""
+"Makes the node ignore its parents transformations. Node transformations are "
+"only in global space."
+msgstr ""
+
+#: doc/classes/Node3D.xml:213
+msgid ""
+"Sets whether the node uses a scale of [code](1, 1, 1)[/code] or its local "
+"transformation scale. Changes to the local transformation scale are "
+"preserved."
+msgstr ""
+
+#: doc/classes/Node3D.xml:220
+msgid ""
+"Reset all transformations for this node (sets its [Transform] to the "
+"identity matrix)."
+msgstr ""
+
+#: doc/classes/Node3D.xml:229
+msgid ""
+"Sets whether the node ignores notification that its transformation (global "
+"or local) changed."
+msgstr ""
+
+#: doc/classes/Node3D.xml:238
+msgid ""
+"Sets whether the node notifies about its local transformation changes. "
+"[Node3D] will not propagate this by default."
+msgstr ""
+
+#: doc/classes/Node3D.xml:247
+msgid ""
+"Sets whether the node notifies about its global and local transformation "
+"changes. [Node3D] will not propagate this by default."
+msgstr ""
+
+#: doc/classes/Node3D.xml:254
+msgid ""
+"Enables rendering of this node. Changes [member visible] to [code]true[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Node3D.xml:263
+msgid ""
+"Transforms [code]local_point[/code] from this node's local space to world "
+"space."
+msgstr ""
+
+#: doc/classes/Node3D.xml:272
+msgid ""
+"Transforms [code]global_point[/code] from world space to this node's local "
+"space."
+msgstr ""
+
+#: doc/classes/Node3D.xml:281
+msgid ""
+"Changes the node's position by the given offset [Vector3].\n"
+"Note that the translation [code]offset[/code] is affected by the node's "
+"scale, so if scaled by e.g. [code](10, 1, 1)[/code], a translation by an "
+"offset of [code](2, 0, 0)[/code] would actually add 20 ([code]2 * 10[/code]) "
+"to the X coordinate."
+msgstr ""
+
+#: doc/classes/Node3D.xml:291
+msgid ""
+"Changes the node's position by the given offset [Vector3] in local space."
+msgstr ""
+
+#: doc/classes/Node3D.xml:298
+msgid "Updates the [Node3DGizmo] of this node."
+msgstr ""
+
+#: doc/classes/Node3D.xml:304
+msgid ""
+"The [Node3DGizmo] for this node. Used for example in [EditorNode3DGizmo] as "
+"custom visualization and editing handles in Editor."
+msgstr ""
+
+#: doc/classes/Node3D.xml:307
+msgid "World3D space (global) [Transform] of this node."
+msgstr ""
+
+#: doc/classes/Node3D.xml:310
+msgid ""
+"Rotation part of the local transformation in radians, specified in terms of "
+"YXZ-Euler angles in the format (X angle, Y angle, Z angle).\n"
+"[b]Note:[/b] 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 "
+"[Vector3] data structure not because the rotation is a vector, but only "
+"because [Vector3] exists as a convenient data-structure to store 3 floating-"
+"point numbers. Therefore, applying affine operations on the rotation \"vector"
+"\" is not meaningful."
+msgstr ""
+
+#: doc/classes/Node3D.xml:314
+msgid ""
+"Rotation part of the local transformation in degrees, specified in terms of "
+"YXZ-Euler angles in the format (X angle, Y angle, Z angle)."
+msgstr ""
+
+#: doc/classes/Node3D.xml:317
+msgid "Scale part of the local transformation."
+msgstr ""
+
+#: doc/classes/Node3D.xml:320
+msgid "Local space [Transform] of this node, with respect to the parent node."
+msgstr ""
+
+#: doc/classes/Node3D.xml:323
+msgid "Local translation of this node."
+msgstr ""
+
+#: doc/classes/Node3D.xml:326
+msgid ""
+"If [code]true[/code], this node is drawn. The node is only visible if all of "
+"its antecedents are visible as well (in other words, [method "
+"is_visible_in_tree] must return [code]true[/code])."
+msgstr ""
+
+#: doc/classes/Node3D.xml:332
+msgid "Emitted when node visibility changes."
+msgstr ""
+
+#: doc/classes/Node3D.xml:338
+msgid ""
+"Node3D nodes receives this notification when their global transform changes. "
+"This means that either the current or a parent node changed its transform.\n"
+"In order for [constant NOTIFICATION_TRANSFORM_CHANGED] to work, users first "
+"need to ask for it, with [method set_notify_transform]."
+msgstr ""
+
+#: doc/classes/Node3D.xml:342
+msgid ""
+"Node3D nodes receives this notification when they are registered to new "
+"[World3D] resource."
+msgstr ""
+
+#: doc/classes/Node3D.xml:345
+msgid ""
+"Node3D nodes receives this notification when they are unregistered from "
+"current [World3D] resource."
+msgstr ""
+
+#: doc/classes/Node3D.xml:348
+msgid "Node3D nodes receives this notification when their visibility changes."
+msgstr ""
+
+#: doc/classes/NodePath.xml:4
+msgid "Pre-parsed scene tree path."
+msgstr ""
+
+#: doc/classes/NodePath.xml:7
+msgid ""
+"A pre-parsed relative or absolute path in a scene tree, for use with [method "
+"Node.get_node] and similar functions. It can reference a node, a resource "
+"within a node, or a property of a node or resource. For instance, "
+"[code]\"Path2D/PathFollow2D/Sprite2D:texture:size\"[/code] would refer to "
+"the [code]size[/code] property of the [code]texture[/code] resource on the "
+"node named [code]\"Sprite2D\"[/code] which is a child of the other named "
+"nodes in the path.\n"
+"You will usually just pass a string to [method Node.get_node] and it will be "
+"automatically converted, but you may occasionally want to parse a path ahead "
+"of time with [NodePath] or the literal syntax [code]@\"path\"[/code]. "
+"Exporting a [NodePath] variable will give you a node selection widget in the "
+"properties panel of the editor, which can often be useful.\n"
+"A [NodePath] is composed of a list of slash-separated node names (like a "
+"filesystem path) and an optional colon-separated list of \"subnames\" which "
+"can be resources or properties.\n"
+"Some examples of NodePaths include the following:\n"
+"[codeblock]\n"
+"# No leading slash means it is relative to the current node.\n"
+"@\"A\" # Immediate child A\n"
+"@\"A/B\" # A's child B\n"
+"@\".\" # The current node.\n"
+"@\"..\" # The parent node.\n"
+"@\"../C\" # A sibling node C.\n"
+"# A leading slash means it is absolute from the SceneTree.\n"
+"@\"/root\" # Equivalent to get_tree().get_root().\n"
+"@\"/root/Main\" # If your main scene's root node were named \"Main\".\n"
+"@\"/root/MyAutoload\" # If you have an autoloaded node or scene.\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/NodePath.xml:33
+msgid ""
+"Creates a NodePath from a string, e.g. [code]\"Path2D/PathFollow2D/Sprite2D:"
+"texture:size\"[/code]. A path is absolute if it starts with a slash. "
+"Absolute paths are only valid in the global scene tree, not within "
+"individual scenes. In a relative path, [code]\".\"[/code] and [code]\"..\"[/"
+"code] indicate the current node and its parent.\n"
+"The \"subnames\" optionally included after the path to the target node can "
+"point to resources or properties, and can also be nested.\n"
+"Examples of valid NodePaths (assuming that those nodes exist and have the "
+"referenced resources or properties):\n"
+"[codeblock]\n"
+"# Points to the Sprite2D node\n"
+"\"Path2D/PathFollow2D/Sprite2D\"\n"
+"# Points to the Sprite2D node and its \"texture\" resource.\n"
+"# get_node() would retrieve \"Sprite2D\", while get_node_and_resource()\n"
+"# would retrieve both the Sprite2D node and the \"texture\" resource.\n"
+"\"Path2D/PathFollow2D/Sprite2D:texture\"\n"
+"# Points to the Sprite2D node and its \"position\" property.\n"
+"\"Path2D/PathFollow2D/Sprite2D:position\"\n"
+"# Points to the Sprite2D node and the \"x\" component of its \"position\" "
+"property.\n"
+"\"Path2D/PathFollow2D/Sprite2D:position:x\"\n"
+"# Absolute path (from \"root\")\n"
+"\"/root/Level/Path2D\"\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/NodePath.xml:56
+msgid ""
+"Returns a node path with a colon character ([code]:[/code]) prepended, "
+"transforming it to a pure property path with no node name (defaults to "
+"resolving from the current node).\n"
+"[codeblock]\n"
+"# This will be parsed as a node path to the \"x\" property in the \"position"
+"\" node\n"
+"var node_path = NodePath(\"position:x\")\n"
+"# This will be parsed as a node path to the \"x\" component of the \"position"
+"\" property in the current node\n"
+"var property_path = node_path.get_as_property_path()\n"
+"print(property_path) # :position:x\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/NodePath.xml:70
+msgid ""
+"Returns all subnames concatenated with a colon character ([code]:[/code]) as "
+"separator, i.e. the right side of the first colon in a node path.\n"
+"[codeblock]\n"
+"var nodepath = NodePath(\"Path2D/PathFollow2D/Sprite2D:texture:load_path\")\n"
+"print(nodepath.get_concatenated_subnames()) # texture:load_path\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/NodePath.xml:83
+msgid ""
+"Gets the node name indicated by [code]idx[/code] (0 to [method "
+"get_name_count]).\n"
+"[codeblock]\n"
+"var node_path = NodePath(\"Path2D/PathFollow2D/Sprite2D\")\n"
+"print(node_path.get_name(0)) # Path2D\n"
+"print(node_path.get_name(1)) # PathFollow2D\n"
+"print(node_path.get_name(2)) # Sprite\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/NodePath.xml:96
+msgid ""
+"Gets the number of node names which make up the path. Subnames (see [method "
+"get_subname_count]) are not included.\n"
+"For example, [code]\"Path2D/PathFollow2D/Sprite2D\"[/code] has 3 names."
+msgstr ""
+
+#: doc/classes/NodePath.xml:106
+msgid ""
+"Gets the resource or property name indicated by [code]idx[/code] (0 to "
+"[method get_subname_count]).\n"
+"[codeblock]\n"
+"var node_path = NodePath(\"Path2D/PathFollow2D/Sprite2D:texture:load_path"
+"\")\n"
+"print(node_path.get_subname(0)) # texture\n"
+"print(node_path.get_subname(1)) # load_path\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/NodePath.xml:118
+msgid ""
+"Gets the number of resource or property names (\"subnames\") in the path. "
+"Each subname is listed after a colon character ([code]:[/code]) in the node "
+"path.\n"
+"For example, [code]\"Path2D/PathFollow2D/Sprite2D:texture:load_path\"[/code] "
+"has 2 subnames."
+msgstr ""
+
+#: doc/classes/NodePath.xml:126
+msgid ""
+"Returns [code]true[/code] if the node path is absolute (as opposed to "
+"relative), which means that it starts with a slash character ([code]/[/"
+"code]). Absolute node paths can be used to access the root node ([code]\"/"
+"root\"[/code]) or autoloads (e.g. [code]\"/global\"[/code] if a \"global\" "
+"autoload was registered)."
+msgstr ""
+
+#: doc/classes/NodePath.xml:133
+msgid "Returns [code]true[/code] if the node path is empty."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/NoiseTexture.xml:4
+msgid "[OpenSimplexNoise] filled texture."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/NoiseTexture.xml:7
+msgid ""
+"Uses an [OpenSimplexNoise] to fill the texture data. You can specify the "
+"texture size but keep in mind that larger textures will take longer to "
+"generate and seamless noise only works with square sized textures.\n"
+"NoiseTexture can also generate normalmap textures.\n"
+"The class uses [Thread]s to generate the texture data internally, so [method "
+"Texture2D.get_data] may return [code]null[/code] if the generation process "
+"has not completed yet. In that case, you need to wait for the texture to be "
+"generated before accessing the data:\n"
+"[codeblock]\n"
+"var texture = preload(\"res://noise.tres\")\n"
+"yield(texture, \"changed\")\n"
+"var image = texture.get_data()\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/opensimplex/doc_classes/NoiseTexture.xml:22
+msgid ""
+"If [code]true[/code], the resulting texture contains a normal map created "
+"from the original noise interpreted as a bump map."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/NoiseTexture.xml:25
+msgid ""
+"Strength of the bump maps used in this texture. A higher value will make the "
+"bump maps appear larger while a lower value will make them appear softer."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/NoiseTexture.xml:28
+msgid "Height of the generated texture."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/NoiseTexture.xml:31
+msgid "The [OpenSimplexNoise] instance used to generate the noise."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/NoiseTexture.xml:34
+msgid ""
+"Whether the texture can be tiled without visible seams or not. Seamless "
+"textures take longer to generate."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/NoiseTexture.xml:37
+msgid "Width of the generated texture."
+msgstr ""
+
+#: doc/classes/Object.xml:4
+msgid "Base class for all non built-in types."
+msgstr ""
+
+#: doc/classes/Object.xml:7
+msgid ""
+"Every class which is not a built-in type inherits from this class.\n"
+"You can construct Objects from scripting languages, using [code]Object.new()"
+"[/code] in GDScript, [code]new Object[/code] in C#, or the \"Construct Object"
+"\" node in VisualScript.\n"
+"Objects do not manage memory. If a class inherits from Object, you will have "
+"to delete instances of it manually. To do so, call the [method free] method "
+"from your script or delete the instance from C++.\n"
+"Some classes that extend Object add memory management. This is the case of "
+"[Reference], which counts references and deletes itself automatically when "
+"no longer referenced. [Node], another fundamental type, deletes all its "
+"children when freed from memory.\n"
+"Objects export properties, which are mainly useful for storage and editing, "
+"but not really so much in programming. Properties are exported in [method "
+"_get_property_list] and handled in [method _get] and [method _set]. However, "
+"scripting languages and C++ have simpler means to export them.\n"
+"Property membership can be tested directly in GDScript using [code]in[/"
+"code]:\n"
+"[codeblock]\n"
+"var n = Node2D.new()\n"
+"print(\"position\" in n) # Prints \"True\".\n"
+"print(\"other_property\" in n) # Prints \"False\".\n"
+"[/codeblock]\n"
+"The [code]in[/code] operator will evaluate to [code]true[/code] as long as "
+"the key exists, even if the value is [code]null[/code].\n"
+"Objects also receive notifications. Notifications are a simple way to notify "
+"the object about different events, so they can all be handled together. See "
+"[method _notification].\n"
+"[b]Note:[/b] Unlike references to a [Reference], references to an Object "
+"stored in a variable can become invalid without warning. Therefore, it's "
+"recommended to use [Reference] for data classes instead of [Object]."
+msgstr ""
+
+#: doc/classes/Object.xml:23 doc/classes/Reference.xml:12
+#: doc/classes/Resource.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/getting_started/workflow/"
+"best_practices/node_alternatives.html"
+msgstr ""
+
+#: doc/classes/Object.xml:32
+msgid ""
+"Virtual method which can be overridden to customize the return value of "
+"[method get].\n"
+"Returns the given property. Returns [code]null[/code] if the [code]property[/"
+"code] does not exist."
+msgstr ""
+
+#: doc/classes/Object.xml:40
+msgid ""
+"Virtual method which can be overridden to customize the return value of "
+"[method get_property_list].\n"
+"Returns the object's property list as an [Array] of dictionaries.\n"
+"Each property's [Dictionary] must contain at least [code]name: String[/code] "
+"and [code]type: int[/code] (see [enum Variant.Type]) entries. Optionally, it "
+"can also include [code]hint: int[/code] (see [enum PropertyHint]), "
+"[code]hint_string: String[/code], and [code]usage: int[/code] (see [enum "
+"PropertyUsageFlags])."
+msgstr ""
+
+#: doc/classes/Object.xml:49
+msgid "Called when the object is initialized."
+msgstr ""
+
+#: doc/classes/Object.xml:58
+msgid ""
+"Called whenever the object receives a notification, which is identified in "
+"[code]what[/code] by a constant. The base [Object] has two constants "
+"[constant NOTIFICATION_POSTINITIALIZE] and [constant "
+"NOTIFICATION_PREDELETE], but subclasses such as [Node] define a lot more "
+"notifications which are also received by this method."
+msgstr ""
+
+#: doc/classes/Object.xml:69
+msgid ""
+"Virtual method which can be overridden to customize the return value of "
+"[method set].\n"
+"Sets a property. Returns [code]true[/code] if the [code]property[/code] "
+"exists."
+msgstr ""
+
+#: doc/classes/Object.xml:77
+msgid ""
+"Virtual method which can be overridden to customize the return value of "
+"[method to_string], and thus the object's representation where it is "
+"converted to a string, e.g. with [code]print(obj)[/code].\n"
+"Returns a [String] representing the object. If not overridden, defaults to "
+"[code]\"[ClassName:RID]\"[/code]."
+msgstr ""
+
+#: doc/classes/Object.xml:89
+msgid ""
+"Adds a user-defined [code]signal[/code]. Arguments are optional, but can be "
+"added as an [Array] of dictionaries, each containing [code]name: String[/"
+"code] and [code]type: int[/code] (see [enum Variant.Type]) entries."
+msgstr ""
+
+#: doc/classes/Object.xml:98
+msgid ""
+"Calls the [code]method[/code] on the object and returns the result. This "
+"method supports a variable number of arguments, so parameters are passed as "
+"a comma separated list. Example:\n"
+"[codeblock]\n"
+"call(\"set\", \"position\", Vector2(42.0, 0.0))\n"
+"[/codeblock]\n"
+"[b]Note:[/b] In C#, the method name must be specified as snake_case if it is "
+"defined by a built-in Godot node. This doesn't apply to user-defined methods "
+"where you should use the same convention as in the C# source (typically "
+"PascalCase)."
+msgstr ""
+
+#: doc/classes/Object.xml:111
+msgid ""
+"Calls the [code]method[/code] on the object during idle time. This method "
+"supports a variable number of arguments, so parameters are passed as a comma "
+"separated list. Example:\n"
+"[codeblock]\n"
+"call_deferred(\"set\", \"position\", Vector2(42.0, 0.0))\n"
+"[/codeblock]\n"
+"[b]Note:[/b] In C#, the method name must be specified as snake_case if it is "
+"defined by a built-in Godot node. This doesn't apply to user-defined methods "
+"where you should use the same convention as in the C# source (typically "
+"PascalCase)."
+msgstr ""
+
+#: doc/classes/Object.xml:126
+msgid ""
+"Calls the [code]method[/code] on the object and returns the result. "
+"Contrarily to [method call], this method does not support a variable number "
+"of arguments but expects all parameters to be via a single [Array].\n"
+"[codeblock]\n"
+"callv(\"set\", [ \"position\", Vector2(42.0, 0.0) ])\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Object.xml:136
+msgid ""
+"Returns [code]true[/code] if the object can translate strings. See [method "
+"set_message_translation] and [method tr]."
+msgstr ""
+
+#: doc/classes/Object.xml:151
+msgid ""
+"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
+"should be updated.\n"
+"Connects a [code]signal[/code] to a [code]method[/code] on a [code]target[/"
+"code] object. Pass optional [code]binds[/code] to the call as an [Array] of "
+"parameters. These parameters will be passed to the method after any "
+"parameter used in the call to [method emit_signal]. Use [code]flags[/code] "
+"to set deferred or one-shot connections. See [enum ConnectFlags] constants.\n"
+"A [code]signal[/code] can only be connected once to a [code]method[/code]. "
+"It will throw an error if already connected, unless the signal was connected "
+"with [constant CONNECT_REFERENCE_COUNTED]. To avoid this, first, use [method "
+"is_connected] to check for existing connections.\n"
+"If the [code]target[/code] is destroyed in the game's lifecycle, the "
+"connection will be lost.\n"
+"Examples:\n"
+"[codeblock]\n"
+"connect(\"pressed\", self, \"_on_Button_pressed\") # BaseButton signal\n"
+"connect(\"text_entered\", self, \"_on_LineEdit_text_entered\") # LineEdit "
+"signal\n"
+"connect(\"hit\", self, \"_on_Player_hit\", [ weapon_type, damage ]) # User-"
+"defined signal\n"
+"[/codeblock]\n"
+"An example of the relationship between [code]binds[/code] passed to [method "
+"connect] and parameters used when calling [method emit_signal]:\n"
+"[codeblock]\n"
+"connect(\"hit\", self, \"_on_Player_hit\", [ weapon_type, damage ]) # "
+"weapon_type and damage are passed last\n"
+"emit_signal(\"hit\", \"Dark lord\", 5) # \"Dark lord\" and 5 are passed "
+"first\n"
+"func _on_Player_hit(hit_by, level, weapon_type, damage):\n"
+" print(\"Hit by %s (lvl %d) with weapon %s for %d damage\" % [hit_by, "
+"level, weapon_type, damage])\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Object.xml:178
+msgid ""
+"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
+"should be updated.\n"
+"Disconnects a [code]signal[/code] from a [code]method[/code] on the given "
+"[code]target[/code].\n"
+"If you try to disconnect a connection that does not exist, the method will "
+"throw an error. Use [method is_connected] to ensure that the connection "
+"exists."
+msgstr ""
+
+#: doc/classes/Object.xml:189
+msgid ""
+"Emits the given [code]signal[/code]. The signal must exist, so it should be "
+"a built-in signal of this class or one of its parent classes, or a user-"
+"defined signal. This method supports a variable number of arguments, so "
+"parameters are passed as a comma separated list. Example:\n"
+"[codeblock]\n"
+"emit_signal(\"hit\", weapon_type, damage)\n"
+"emit_signal(\"game_over\")\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Object.xml:200
+msgid ""
+"Deletes the object from memory. Any pre-existing reference to the freed "
+"object will become invalid, e.g. [code]is_instance_valid(object)[/code] will "
+"return [code]false[/code]."
+msgstr ""
+
+#: doc/classes/Object.xml:209
+msgid ""
+"Returns the [Variant] value of the given [code]property[/code]. If the "
+"[code]property[/code] doesn't exist, this will return [code]null[/code].\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
+msgstr ""
+
+#: doc/classes/Object.xml:217
+msgid "Returns the object's class as a [String]."
+msgstr ""
+
+#: doc/classes/Object.xml:224
+msgid ""
+"Returns an [Array] of dictionaries with information about signals that are "
+"connected to the object.\n"
+"Each [Dictionary] contains three String entries:\n"
+"- [code]source[/code] is a reference to the signal emitter.\n"
+"- [code]signal_name[/code] is the name of the connected signal.\n"
+"- [code]method_name[/code] is the name of the method to which the signal is "
+"connected."
+msgstr ""
+
+#: doc/classes/Object.xml:237
+msgid ""
+"Gets the object's property indexed by the given [NodePath]. The node path "
+"should be relative to the current object and can use the colon character "
+"([code]:[/code]) to access nested properties. Examples: [code]\"position:x"
+"\"[/code] or [code]\"material:next_pass:blend_mode\"[/code]."
+msgstr ""
+
+#: doc/classes/Object.xml:244
+msgid ""
+"Returns the object's unique instance ID.\n"
+"This ID can be saved in [EncodedObjectAsID], and can be used to retrieve the "
+"object instance with [method @GDScript.instance_from_id]."
+msgstr ""
+
+#: doc/classes/Object.xml:254
+msgid "Returns the object's metadata entry for the given [code]name[/code]."
+msgstr ""
+
+#: doc/classes/Object.xml:261
+msgid "Returns the object's metadata as a [PackedStringArray]."
+msgstr ""
+
+#: doc/classes/Object.xml:268
+msgid "Returns the object's methods and their signatures as an [Array]."
+msgstr ""
+
+#: doc/classes/Object.xml:275
+msgid ""
+"Returns the object's property list as an [Array] of dictionaries.\n"
+"Each property's [Dictionary] contain at least [code]name: String[/code] and "
+"[code]type: int[/code] (see [enum Variant.Type]) entries. Optionally, it can "
+"also include [code]hint: int[/code] (see [enum PropertyHint]), "
+"[code]hint_string: String[/code], and [code]usage: int[/code] (see [enum "
+"PropertyUsageFlags])."
+msgstr ""
+
+#: doc/classes/Object.xml:283
+msgid ""
+"Returns the object's [Script] instance, or [code]null[/code] if none is "
+"assigned."
+msgstr ""
+
+#: doc/classes/Object.xml:292
+msgid "Returns an [Array] of connections for the given [code]signal[/code]."
+msgstr ""
+
+#: doc/classes/Object.xml:299
+msgid "Returns the list of signals as an [Array] of dictionaries."
+msgstr ""
+
+#: doc/classes/Object.xml:308
+msgid ""
+"Returns [code]true[/code] if a metadata entry is found with the given "
+"[code]name[/code]."
+msgstr ""
+
+#: doc/classes/Object.xml:317
+msgid ""
+"Returns [code]true[/code] if the object contains the given [code]method[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Object.xml:326
+msgid "Returns [code]true[/code] if the given [code]signal[/code] exists."
+msgstr ""
+
+#: doc/classes/Object.xml:335
+msgid ""
+"Returns [code]true[/code] if the given user-defined [code]signal[/code] "
+"exists. Only signals added using [method add_user_signal] are taken into "
+"account."
+msgstr ""
+
+#: doc/classes/Object.xml:342
+msgid "Returns [code]true[/code] if signal emission blocking is enabled."
+msgstr ""
+
+#: doc/classes/Object.xml:351
+msgid ""
+"Returns [code]true[/code] if the object inherits from the given [code]class[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Object.xml:362
+msgid ""
+"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
+"should be updated.\n"
+"Returns [code]true[/code] if a connection exists for a given [code]signal[/"
+"code], [code]target[/code], and [code]method[/code]."
+msgstr ""
+
+#: doc/classes/Object.xml:370
+msgid ""
+"Returns [code]true[/code] if the [method Node.queue_free] method was called "
+"for the object."
+msgstr ""
+
+#: doc/classes/Object.xml:381
+msgid ""
+"Send a given notification to the object, which will also trigger a call to "
+"the [method _notification] method of all classes that the object inherits "
+"from.\n"
+"If [code]reversed[/code] is [code]true[/code], [method _notification] is "
+"called first on the object's own class, and then up to its successive parent "
+"classes. If [code]reversed[/code] is [code]false[/code], [method "
+"_notification] is called first on the highest ancestor ([Object] itself), "
+"and then down to its successive inheriting classes."
+msgstr ""
+
+#: doc/classes/Object.xml:389
+msgid ""
+"Notify the editor that the property list has changed, so that editor plugins "
+"can take the new values into account. Does nothing on export builds."
+msgstr ""
+
+#: doc/classes/Object.xml:398
+msgid "Removes a given entry from the object's metadata."
+msgstr ""
+
+#: doc/classes/Object.xml:409
+msgid ""
+"Assigns a new value to the given property. If the [code]property[/code] does "
+"not exist, nothing will happen.\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
+msgstr ""
+
+#: doc/classes/Object.xml:419
+msgid "If set to [code]true[/code], signal emission is blocked."
+msgstr ""
+
+#: doc/classes/Object.xml:430
+msgid ""
+"Assigns a new value to the given property, after the current frame's physics "
+"step. This is equivalent to calling [method set] via [method call_deferred], "
+"i.e. [code]call_deferred(\"set\", property, value)[/code].\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
+msgstr ""
+
+#: doc/classes/Object.xml:442
+msgid ""
+"Assigns a new value to the property identified by the [NodePath]. The node "
+"path should be relative to the current object and can use the colon "
+"character ([code]:[/code]) to access nested properties. Example:\n"
+"[codeblock]\n"
+"set_indexed(\"position\", Vector2(42, 0))\n"
+"set_indexed(\"position:y\", -10)\n"
+"print(position) # (42, -10)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Object.xml:456
+msgid ""
+"Defines whether the object can translate strings (with calls to [method "
+"tr]). Enabled by default."
+msgstr ""
+
+#: doc/classes/Object.xml:467
+msgid ""
+"Adds or changes a given entry in the object's metadata. Metadata are "
+"serialized, and can take any [Variant] value."
+msgstr ""
+
+#: doc/classes/Object.xml:476
+msgid ""
+"Assigns a script to the object. Each object can have a single script "
+"assigned to it, which are used to extend its functionality.\n"
+"If the object already had a script, the previous script instance will be "
+"freed and its variables and state will be lost. The new script's [method "
+"_init] method will be called."
+msgstr ""
+
+#: doc/classes/Object.xml:484
+msgid ""
+"Returns a [String] representing the object. If not overridden, defaults to "
+"[code]\"[ClassName:RID]\"[/code].\n"
+"Override the method [method _to_string] to customize the [String] "
+"representation."
+msgstr ""
+
+#: doc/classes/Object.xml:494
+msgid ""
+"Translates a message using translation catalogs configured in the Project "
+"Settings.\n"
+"Only works if message translation is enabled (which it is by default), "
+"otherwise it returns the [code]message[/code] unchanged. See [method "
+"set_message_translation]."
+msgstr ""
+
+#: doc/classes/Object.xml:502
+msgid "Emitted whenever the object's script is changed."
+msgstr ""
+
+#: doc/classes/Object.xml:508
+msgid "Called right when the object is initialized. Not available in script."
+msgstr ""
+
+#: doc/classes/Object.xml:511
+msgid "Called before the object is about to be deleted."
+msgstr ""
+
+#: doc/classes/Object.xml:514
+msgid ""
+"Connects a signal in deferred mode. This way, signal emissions are stored in "
+"a queue, then set on idle time."
+msgstr ""
+
+#: doc/classes/Object.xml:517
+msgid "Persisting connections are saved when the object is serialized to file."
+msgstr ""
+
+#: doc/classes/Object.xml:520
+msgid "One-shot connections disconnect themselves after emission."
+msgstr ""
+
+#: doc/classes/Object.xml:523
+msgid ""
+"Connect a signal as reference-counted. This means that a given signal can be "
+"connected several times to the same target, and will only be fully "
+"disconnected once no references are left."
+msgstr ""
+
+#: doc/classes/OccluderPolygon2D.xml:4
+msgid "Defines a 2D polygon for LightOccluder2D."
+msgstr ""
+
+#: doc/classes/OccluderPolygon2D.xml:7
+msgid ""
+"Editor facility that helps you draw a 2D polygon used as resource for "
+"[LightOccluder2D]."
+msgstr ""
+
+#: doc/classes/OccluderPolygon2D.xml:15
+msgid ""
+"If [code]true[/code], closes the polygon. A closed OccluderPolygon2D "
+"occludes the light coming from any direction. An opened OccluderPolygon2D "
+"occludes the light only at its outline's direction."
+msgstr ""
+
+#: doc/classes/OccluderPolygon2D.xml:18
+msgid "The culling mode to use."
+msgstr ""
+
+#: doc/classes/OccluderPolygon2D.xml:21
+msgid ""
+"A [Vector2] array with the index for polygon's vertices positions.\n"
+"[b]Note:[/b] The returned value is a copy of the underlying array, rather "
+"than a reference."
+msgstr ""
+
+#: doc/classes/OccluderPolygon2D.xml:27
+msgid "Culling is disabled. See [member cull_mode]."
+msgstr ""
+
+#: doc/classes/OccluderPolygon2D.xml:30
+msgid ""
+"Culling is performed in the clockwise direction. See [member cull_mode]."
+msgstr ""
+
+#: doc/classes/OccluderPolygon2D.xml:33
+msgid ""
+"Culling is performed in the counterclockwise direction. See [member "
+"cull_mode]."
+msgstr ""
+
+#: doc/classes/OmniLight3D.xml:4
+msgid "Omnidirectional light, such as a light bulb or a candle."
+msgstr ""
+
+#: doc/classes/OmniLight3D.xml:7
+msgid ""
+"An Omnidirectional light is a type of [Light3D] that emits light in all "
+"directions. The light is attenuated by distance and this attenuation can be "
+"configured by changing its energy, radius, and attenuation parameters."
+msgstr ""
+
+#: doc/classes/OmniLight3D.xml:16
+msgid ""
+"The light's attenuation (drop-off) curve. A number of presets are available "
+"in the [b]Inspector[/b] by right-clicking the curve."
+msgstr ""
+
+#: doc/classes/OmniLight3D.xml:19
+msgid ""
+"The light's radius. Note that the effectively lit area may appear to be "
+"smaller depending on the [member omni_attenuation] in use. No matter the "
+"[member omni_attenuation] in use, the light will never reach anything "
+"outside this radius."
+msgstr ""
+
+#: doc/classes/OmniLight3D.xml:22
+msgid "See [enum ShadowMode]."
+msgstr ""
+
+#: doc/classes/OmniLight3D.xml:27
+msgid ""
+"Shadows are rendered to a dual-paraboloid texture. Faster than [constant "
+"SHADOW_CUBE], but lower-quality."
+msgstr ""
+
+#: doc/classes/OmniLight3D.xml:30
+msgid ""
+"Shadows are rendered to a cubemap. Slower than [constant "
+"SHADOW_DUAL_PARABOLOID], but higher-quality."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:4
+msgid "Noise generator based on Open Simplex."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:7
+msgid ""
+"This resource allows you to configure and sample a fractal noise space. Here "
+"is a brief usage example that configures an OpenSimplexNoise and gets "
+"samples at various positions and dimensions:\n"
+"[codeblock]\n"
+"var noise = OpenSimplexNoise.new()\n"
+"\n"
+"# Configure\n"
+"noise.seed = randi()\n"
+"noise.octaves = 4\n"
+"noise.period = 20.0\n"
+"noise.persistence = 0.8\n"
+"\n"
+"# Sample\n"
+"print(\"Values:\")\n"
+"print(noise.get_noise_2d(1.0, 1.0))\n"
+"print(noise.get_noise_3d(0.5, 3.0, 15.0))\n"
+"print(noise.get_noise_4d(0.5, 1.9, 4.7, 0.0))\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:35
+msgid ""
+"Generate a noise image with the requested [code]width[/code] and "
+"[code]height[/code], based on the current noise parameters."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:44
+msgid ""
+"Returns the 1D noise value [code][-1,1][/code] at the given x-coordinate.\n"
+"[b]Note:[/b] This method actually returns the 2D noise value [code][-1,1][/"
+"code] with fixed y-coordinate value 0.0."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:56
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:65
+msgid "Returns the 2D noise value [code][-1,1][/code] at the given position."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:78
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:87
+msgid "Returns the 3D noise value [code][-1,1][/code] at the given position."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:102
+msgid "Returns the 4D noise value [code][-1,1][/code] at the given position."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:111
+msgid ""
+"Generate a tileable noise image, based on the current noise parameters. "
+"Generated seamless images are always square ([code]size[/code] × [code]size[/"
+"code])."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:117
+msgid "Difference in period between [member octaves]."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:120
+msgid ""
+"Number of OpenSimplex noise layers that are sampled to get the fractal "
+"noise. Higher values result in more detailed noise but take more time to "
+"generate.\n"
+"[b]Note:[/b] The maximum allowed value is 9."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:124
+msgid ""
+"Period of the base octave. A lower period results in a higher-frequency "
+"noise (more value changes across the same distance)."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:127
+msgid ""
+"Contribution factor of the different octaves. A [code]persistence[/code] "
+"value of 1 means all the octaves have the same contribution, a value of 0.5 "
+"means each octave contributes half as much as the previous one."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:130
+msgid ""
+"Seed used to generate random values, different seeds will generate different "
+"noise maps."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:4
+msgid "Button control that provides selectable options when pressed."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:7
+msgid ""
+"OptionButton is a type button that provides a selectable list of items when "
+"pressed. The item selected becomes the \"current\" item and is displayed as "
+"the button text."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:22
+msgid ""
+"Adds an item, with a [code]texture[/code] icon, text [code]label[/code] and "
+"(optionally) [code]id[/code]. If no [code]id[/code] is passed, the item "
+"index will be used as the item's ID. New items are appended at the end."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:33
+msgid ""
+"Adds an item, with text [code]label[/code] and (optionally) [code]id[/code]. "
+"If no [code]id[/code] is passed, the item index will be used as the item's "
+"ID. New items are appended at the end."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:40
+msgid ""
+"Adds a separator to the list of items. Separators help to group items. "
+"Separator also takes up an index and is appended at the end."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:47
+msgid "Clears all the items in the [OptionButton]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:54
+msgid "Returns the amount of items in the OptionButton, including separators."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:63 doc/classes/PopupMenu.xml:273
+msgid "Returns the icon of the item at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:72
+msgid "Returns the ID of the item at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:81
+msgid "Returns the index of the item with the given [code]id[/code]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:90
+msgid ""
+"Retrieves the metadata of an item. Metadata may be any type and can be used "
+"to store extra information about an item, such as an external string ID."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:99 doc/classes/PopupMenu.xml:327
+msgid "Returns the text of the item at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:113
+msgid ""
+"Returns the ID of the selected item, or [code]0[/code] if no item is "
+"selected."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:120
+msgid ""
+"Gets the metadata of the selected item. Metadata for items can be set using "
+"[method set_item_metadata]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:129
+msgid ""
+"Returns [code]true[/code] if the item at index [code]idx[/code] is disabled."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:138
+msgid "Removes the item at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:147
+msgid ""
+"Selects an item by index and makes it the current item. This will work even "
+"if the item is disabled."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:158
+msgid ""
+"Sets whether the item at index [code]idx[/code] is disabled.\n"
+"Disabled items are drawn differently in the dropdown and are not selectable "
+"by the user. If the current selected item is set as disabled, it will remain "
+"selected."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:170
+msgid "Sets the icon of the item at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:181
+msgid "Sets the ID of the item at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:192
+msgid ""
+"Sets the metadata of an item. Metadata may be of any type and can be used to "
+"store extra information about an item, such as an external string ID."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:203 doc/classes/PopupMenu.xml:560
+msgid "Sets the text of the item at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:211
+msgid ""
+"The index of the currently selected item, or [code]-1[/code] if no item is "
+"selected."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:220
+msgid ""
+"Emitted the when user navigates to an item using the [code]ui_up[/code] or "
+"[code]ui_down[/code] actions. The index of the item selected is passed as "
+"argument."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:227
+msgid ""
+"Emitted when the current item has been changed by the user. The index of the "
+"item selected is passed as argument."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:235
+msgid "The arrow icon to be drawn on the right end of the button."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:238
+msgid ""
+"The horizontal space between the arrow icon and the right edge of the button."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:241
+msgid "[StyleBox] used when the [OptionButton] is disabled."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:244
+msgid ""
+"[StyleBox] used when the [OptionButton] is focused. It is displayed over the "
+"current [StyleBox], so using [StyleBoxEmpty] will just disable the focus "
+"visual effect."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:247
+msgid "[Font] of the [OptionButton]'s text."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:250
+msgid "Default text [Color] of the [OptionButton]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:253
+msgid "Text [Color] used when the [OptionButton] is disabled."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:256
+msgid "Text [Color] used when the [OptionButton] is being hovered."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:259
+msgid "Text [Color] used when the [OptionButton] is being pressed."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:262
+msgid "[StyleBox] used when the [OptionButton] is being hovered."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:265
+msgid "The horizontal space between [OptionButton]'s icon and text."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:268
+msgid "Default [StyleBox] for the [OptionButton]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:271
+msgid "[StyleBox] used when the [OptionButton] is being pressed."
+msgstr ""
+
+#: doc/classes/OS.xml:4
+msgid "Operating System functions."
+msgstr ""
+
+#: doc/classes/OS.xml:7
+msgid ""
+"Operating System functions. OS wraps the most common functionality to "
+"communicate with the host operating system, such as the clipboard, video "
+"driver, date and time, timers, environment variables, execution of binaries, "
+"command line, etc."
+msgstr ""
+
+#: doc/classes/OS.xml:16
+msgid ""
+"Returns [code]true[/code] if the current host platform is using multiple "
+"threads."
+msgstr ""
+
+#: doc/classes/OS.xml:23
+msgid ""
+"Shuts down system MIDI driver.\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:33
+msgid ""
+"Delay execution of the current thread by [code]msec[/code] milliseconds."
+msgstr ""
+
+#: doc/classes/OS.xml:42
+msgid ""
+"Delay execution of the current thread by [code]usec[/code] microseconds."
+msgstr ""
+
+#: doc/classes/OS.xml:51
+msgid ""
+"Dumps the memory allocation ringlist to a file (only works in debug).\n"
+"Entry format per line: \"Address - Size - Description\"."
+msgstr ""
+
+#: doc/classes/OS.xml:61
+msgid ""
+"Dumps all used resources to file (only works in debug).\n"
+"Entry format per line: \"Resource Type : Resource Location\".\n"
+"At the end of the file is a statistic of all used Resource Types."
+msgstr ""
+
+#: doc/classes/OS.xml:80
+msgid ""
+"Execute the file at the given path with the arguments passed as an array of "
+"strings. Platform path resolution will take place. The resolved file must "
+"exist and be executable.\n"
+"The arguments are used in the given order and separated by a space, so "
+"[code]OS.execute(\"ping\", [\"-w\", \"3\", \"godotengine.org\"], false)[/"
+"code] will resolve to [code]ping -w 3 godotengine.org[/code] in the system's "
+"shell.\n"
+"This method has slightly different behavior based on whether the "
+"[code]blocking[/code] mode is enabled.\n"
+"If [code]blocking[/code] is [code]true[/code], the Godot thread will pause "
+"its execution while waiting for the process to terminate. The shell output "
+"of the process will be written to the [code]output[/code] array as a single "
+"string. When the process terminates, the Godot thread will resume "
+"execution.\n"
+"If [code]blocking[/code] is [code]false[/code], the Godot thread will "
+"continue while the new process runs. It is not possible to retrieve the "
+"shell output in non-blocking mode, so [code]output[/code] will be empty.\n"
+"The return value also depends on the blocking mode. When blocking, the "
+"method will return an exit code of the process. When non-blocking, the "
+"method returns a process ID, which you can use to monitor the process (and "
+"potentially terminate it with [method kill]). If the process forking (non-"
+"blocking) or opening (blocking) fails, the method will return [code]-1[/"
+"code] or another exit code.\n"
+"Example of blocking mode and retrieving the shell output:\n"
+"[codeblock]\n"
+"var output = []\n"
+"var exit_code = OS.execute(\"ls\", [\"-l\", \"/tmp\"], true, output)\n"
+"[/codeblock]\n"
+"Example of non-blocking mode, running another instance of the project and "
+"storing its process ID:\n"
+"[codeblock]\n"
+"var pid = OS.execute(OS.get_executable_path(), [], false)\n"
+"[/codeblock]\n"
+"If you wish to access a shell built-in or perform a composite command, a "
+"platform-specific shell can be invoked. For example:\n"
+"[codeblock]\n"
+"OS.execute(\"CMD.exe\", [\"/C\", \"cd %TEMP% && dir\"], true, output)\n"
+"[/codeblock]\n"
+"[b]Note:[/b] This method is implemented on Android, iOS, Linux, macOS and "
+"Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:108
+msgid "Returns the keycode of the given string (e.g. \"Escape\")."
+msgstr ""
+
+#: doc/classes/OS.xml:115
+msgid ""
+"Returns the command-line arguments passed to the engine.\n"
+"Command-line arguments can be written in any form, including both [code]--"
+"key value[/code] and [code]--key=value[/code] forms so they can be properly "
+"parsed, as long as custom command-line arguments do not conflict with engine "
+"arguments.\n"
+"You can also incorporate environment variables using the [method "
+"get_environment] method.\n"
+"You can set [code]editor/main_run_args[/code] in the Project Settings to "
+"define command-line arguments to be passed by the editor when running the "
+"project.\n"
+"Here's a minimal example on how to parse command-line arguments into a "
+"dictionary using the [code]--key=value[/code] form for arguments:\n"
+"[codeblock]\n"
+"var arguments = {}\n"
+"for argument in OS.get_cmdline_args():\n"
+" if argument.find(\"=\") > -1:\n"
+" var key_value = argument.split(\"=\")\n"
+" arguments[key_value[0].lstrip(\"--\")] = key_value[1]\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/OS.xml:133
+msgid ""
+"Returns an array of MIDI device names.\n"
+"The returned array will be empty if the system MIDI driver has not "
+"previously been initialised with [method open_midi_inputs].\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:144
+msgid ""
+"Returns current date as a dictionary of keys: [code]year[/code], "
+"[code]month[/code], [code]day[/code], [code]weekday[/code], [code]dst[/code] "
+"(Daylight Savings Time)."
+msgstr ""
+
+#: doc/classes/OS.xml:153
+msgid ""
+"Returns current datetime as a dictionary of keys: [code]year[/code], "
+"[code]month[/code], [code]day[/code], [code]weekday[/code], [code]dst[/code] "
+"(Daylight Savings Time), [code]hour[/code], [code]minute[/code], "
+"[code]second[/code]."
+msgstr ""
+
+#: doc/classes/OS.xml:162
+msgid ""
+"Gets a dictionary of time values corresponding to the given UNIX epoch time "
+"(in seconds).\n"
+"The returned Dictionary's values will be the same as [method get_datetime], "
+"with the exception of Daylight Savings Time as it cannot be determined from "
+"the epoch."
+msgstr ""
+
+#: doc/classes/OS.xml:172
+msgid "Returns an environment variable."
+msgstr ""
+
+#: doc/classes/OS.xml:179
+msgid "Returns the path to the current engine executable."
+msgstr ""
+
+#: doc/classes/OS.xml:186
+msgid ""
+"With this function you can get the list of dangerous permissions that have "
+"been granted to the Android application.\n"
+"[b]Note:[/b] This method is implemented on Android."
+msgstr ""
+
+#: doc/classes/OS.xml:196
+msgid ""
+"Returns the given keycode as a string (e.g. Return values: [code]\"Escape\"[/"
+"code], [code]\"Shift+Escape\"[/code]).\n"
+"See also [member InputEventKey.keycode] and [method InputEventKey."
+"get_keycode_with_modifiers]."
+msgstr ""
+
+#: doc/classes/OS.xml:204
+msgid "Returns the host OS locale."
+msgstr ""
+
+#: doc/classes/OS.xml:211
+msgid ""
+"Returns the model name of the current device.\n"
+"[b]Note:[/b] This method is implemented on Android and iOS. Returns "
+"[code]\"GenericDevice\"[/code] on unsupported platforms."
+msgstr ""
+
+#: doc/classes/OS.xml:219
+msgid ""
+"Returns the name of the host OS. Possible values are: [code]\"Android\"[/"
+"code], [code]\"iOS\"[/code], [code]\"HTML5\"[/code], [code]\"OSX\"[/code], "
+"[code]\"Server\"[/code], [code]\"Windows\"[/code], [code]\"UWP\"[/code], "
+"[code]\"X11\"[/code]."
+msgstr ""
+
+#: doc/classes/OS.xml:226
+msgid ""
+"Returns the project's process ID.\n"
+"[b]Note:[/b] This method is implemented on Android, iOS, Linux, macOS and "
+"Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:234
+msgid "Returns the number of threads available on the host machine."
+msgstr ""
+
+#: doc/classes/OS.xml:241
+msgid ""
+"Returns the amount of time in milliseconds it took for the boot logo to "
+"appear."
+msgstr ""
+
+#: doc/classes/OS.xml:248
+msgid "Returns the maximum amount of static memory used (only works in debug)."
+msgstr ""
+
+#: doc/classes/OS.xml:255
+msgid "Returns the amount of static memory being used by the program in bytes."
+msgstr ""
+
+#: doc/classes/OS.xml:264
+msgid ""
+"Returns the actual path to commonly used folders across different platforms. "
+"Available locations are specified in [enum SystemDir].\n"
+"[b]Note:[/b] This method is implemented on Android, Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:272
+msgid ""
+"Returns the total number of available tablet drivers.\n"
+"[b]Note:[/b] This method is implemented on Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:282
+msgid ""
+"Returns the tablet driver name for the given index.\n"
+"[b]Note:[/b] This method is implemented on Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:290
+msgid ""
+"Returns the amount of time passed in milliseconds since the engine started."
+msgstr ""
+
+#: doc/classes/OS.xml:297
+msgid ""
+"Returns the amount of time passed in microseconds since the engine started."
+msgstr ""
+
+#: doc/classes/OS.xml:306
+msgid "Returns current time as a dictionary of keys: hour, minute, second."
+msgstr ""
+
+#: doc/classes/OS.xml:313
+msgid ""
+"Returns the current time zone as a dictionary with the keys: bias and name."
+msgstr ""
+
+#: doc/classes/OS.xml:320
+msgid ""
+"Returns a string that is unique to the device.\n"
+"[b]Note:[/b] Returns an empty string on HTML5 and UWP, as this method isn't "
+"implemented on those platforms yet."
+msgstr ""
+
+#: doc/classes/OS.xml:328
+msgid "Returns the current UNIX epoch timestamp."
+msgstr ""
+
+#: doc/classes/OS.xml:337
+msgid ""
+"Gets an epoch time value from a dictionary of time values.\n"
+"[code]datetime[/code] must be populated with the following keys: [code]year[/"
+"code], [code]month[/code], [code]day[/code], [code]hour[/code], "
+"[code]minute[/code], [code]second[/code].\n"
+"You can pass the output from [method get_datetime_from_unix_time] directly "
+"into this function. Daylight Savings Time ([code]dst[/code]), if present, is "
+"ignored."
+msgstr ""
+
+#: doc/classes/OS.xml:346
+msgid ""
+"Returns the absolute directory path where user data is written ([code]user://"
+"[/code]).\n"
+"On Linux, this is [code]~/.local/share/godot/app_userdata/[project_name][/"
+"code], or [code]~/.local/share/[custom_name][/code] if "
+"[code]use_custom_user_dir[/code] is set.\n"
+"On macOS, this is [code]~/Library/Application Support/Godot/app_userdata/"
+"[project_name][/code], or [code]~/Library/Application Support/[custom_name][/"
+"code] if [code]use_custom_user_dir[/code] is set.\n"
+"On Windows, this is [code]%APPDATA%\\Godot\\app_userdata\\[project_name][/"
+"code], or [code]%APPDATA%\\[custom_name][/code] if "
+"[code]use_custom_user_dir[/code] is set. [code]%APPDATA%[/code] expands to "
+"[code]%USERPROFILE%\\AppData\\Roaming[/code].\n"
+"If the project name is empty, [code]user://[/code] falls back to [code]res://"
+"[/code]."
+msgstr ""
+
+#: doc/classes/OS.xml:359
+msgid "Returns [code]true[/code] if an environment variable exists."
+msgstr ""
+
+#: doc/classes/OS.xml:368
+msgid ""
+"Returns [code]true[/code] if the feature for the given feature tag is "
+"supported in the currently running instance, depending on platform, build "
+"etc. Can be used to check whether you're currently running a debug build, on "
+"a certain platform or arch, etc. Refer to the [url=https://docs.godotengine."
+"org/en/latest/getting_started/workflow/export/feature_tags.html]Feature "
+"Tags[/url] documentation for more details.\n"
+"[b]Note:[/b] Tag names are case-sensitive."
+msgstr ""
+
+#: doc/classes/OS.xml:376
+msgid ""
+"Returns [code]true[/code] if the Godot binary used to run the project is a "
+"[i]debug[/i] export template, or when running in the editor.\n"
+"Returns [code]false[/code] if the Godot binary used to run the project is a "
+"[i]release[/i] export template.\n"
+"To check whether the Godot binary used to run the project is an export "
+"template (debug or release), use [code]OS.has_feature(\"standalone\")[/code] "
+"instead."
+msgstr ""
+
+#: doc/classes/OS.xml:387
+msgid ""
+"Returns [code]true[/code] if the input keycode corresponds to a Unicode "
+"character."
+msgstr ""
+
+#: doc/classes/OS.xml:394
+msgid ""
+"Returns [code]true[/code] if the engine was executed with [code]-v[/code] "
+"(verbose stdout)."
+msgstr ""
+
+#: doc/classes/OS.xml:401
+msgid ""
+"If [code]true[/code], the [code]user://[/code] file system is persistent, so "
+"that its state is the same after a player quits and starts the game again. "
+"Relevant to the HTML5 platform, where this persistence may be unavailable."
+msgstr ""
+
+#: doc/classes/OS.xml:410
+msgid ""
+"Kill (terminate) the process identified by the given process ID ([code]pid[/"
+"code]), e.g. the one returned by [method execute] in non-blocking mode.\n"
+"[b]Note:[/b] This method can also be used to kill processes that were not "
+"spawned by the game.\n"
+"[b]Note:[/b] This method is implemented on Android, iOS, Linux, macOS and "
+"Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:419
+msgid ""
+"Initialises the singleton for the system MIDI driver.\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:429
+msgid ""
+"Shows all resources in the game. Optionally, the list can be written to a "
+"file by specifying a file path in [code]tofile[/code]."
+msgstr ""
+
+#: doc/classes/OS.xml:436
+msgid "Shows the list of loaded textures sorted by size in memory."
+msgstr ""
+
+#: doc/classes/OS.xml:445
+msgid "Shows the number of resources loaded by the game of the given types."
+msgstr ""
+
+#: doc/classes/OS.xml:454
+msgid "Shows all resources currently used by the game."
+msgstr ""
+
+#: doc/classes/OS.xml:463
+msgid ""
+"At the moment this function is only used by [code]AudioDriverOpenSL[/code] "
+"to request permission for [code]RECORD_AUDIO[/code] on Android."
+msgstr ""
+
+#: doc/classes/OS.xml:470
+msgid ""
+"With this function you can request dangerous permissions since normal "
+"permissions are automatically granted at install time in Android "
+"application.\n"
+"[b]Note:[/b] This method is implemented on Android."
+msgstr ""
+
+#: doc/classes/OS.xml:480
+msgid "Sets the name of the current thread."
+msgstr ""
+
+#: doc/classes/OS.xml:489
+msgid "Enables backup saves if [code]enabled[/code] is [code]true[/code]."
+msgstr ""
+
+#: doc/classes/OS.xml:498
+msgid ""
+"Requests the OS to open a resource with the most appropriate program. For "
+"example:\n"
+"- [code]OS.shell_open(\"C:\\\\Users\\name\\Downloads\")[/code] on Windows "
+"opens the file explorer at the user's Downloads folder.\n"
+"- [code]OS.shell_open(\"https://godotengine.org\")[/code] opens the default "
+"web browser on the official Godot website.\n"
+"- [code]OS.shell_open(\"mailto:example@example.com\")[/code] opens the "
+"default email client with the \"To\" field set to [code]example@example.com[/"
+"code]. See [url=https://blog.escapecreative.com/customizing-mailto-"
+"links/]Customizing [code]mailto:[/code] Links[/url] for a list of fields "
+"that can be added.\n"
+"Use [method ProjectSettings.globalize_path] to convert a [code]res://[/code] "
+"or [code]user://[/code] path into a system path for use with this method.\n"
+"[b]Note:[/b] This method is implemented on Android, iOS, HTML5, Linux, macOS "
+"and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:509
+msgid ""
+"The exit code passed to the OS when the main loop exits. By convention, an "
+"exit code of [code]0[/code] indicates success whereas a non-zero exit code "
+"indicates an error. For portability reasons, the exit code should be set "
+"between 0 and 125 (inclusive).\n"
+"[b]Note:[/b] This value will be ignored if using [method SceneTree.quit] "
+"with an [code]exit_code[/code] argument passed."
+msgstr ""
+
+#: doc/classes/OS.xml:513
+msgid ""
+"If [code]true[/code], the engine optimizes for low processor usage by only "
+"refreshing the screen if needed. Can improve battery consumption on mobile."
+msgstr ""
+
+#: doc/classes/OS.xml:516
+msgid ""
+"The amount of sleeping between frames when the low-processor usage mode is "
+"enabled (in microseconds). Higher values will result in lower CPU usage."
+msgstr ""
+
+#: doc/classes/OS.xml:519
+msgid "The current tablet driver in use."
+msgstr ""
+
+#: doc/classes/OS.xml:524
+msgid ""
+"The GLES2 rendering backend. It uses OpenGL ES 2.0 on mobile devices, OpenGL "
+"2.1 on desktop platforms and WebGL 1.0 on the web."
+msgstr ""
+
+#: doc/classes/OS.xml:527
+msgid "The Vulkan rendering backend."
+msgstr ""
+
+#: doc/classes/OS.xml:530
+msgid "Sunday."
+msgstr ""
+
+#: doc/classes/OS.xml:533
+msgid "Monday."
+msgstr ""
+
+#: doc/classes/OS.xml:536
+msgid "Tuesday."
+msgstr ""
+
+#: doc/classes/OS.xml:539
+msgid "Wednesday."
+msgstr ""
+
+#: doc/classes/OS.xml:542
+msgid "Thursday."
+msgstr ""
+
+#: doc/classes/OS.xml:545
+msgid "Friday."
+msgstr ""
+
+#: doc/classes/OS.xml:548
+msgid "Saturday."
+msgstr ""
+
+#: doc/classes/OS.xml:551
+msgid "January."
+msgstr ""
+
+#: doc/classes/OS.xml:554
+msgid "February."
+msgstr ""
+
+#: doc/classes/OS.xml:557
+msgid "March."
+msgstr ""
+
+#: doc/classes/OS.xml:560
+msgid "April."
+msgstr ""
+
+#: doc/classes/OS.xml:563
+msgid "May."
+msgstr ""
+
+#: doc/classes/OS.xml:566
+msgid "June."
+msgstr ""
+
+#: doc/classes/OS.xml:569
+msgid "July."
+msgstr ""
+
+#: doc/classes/OS.xml:572
+msgid "August."
+msgstr ""
+
+#: doc/classes/OS.xml:575
+msgid "September."
+msgstr ""
+
+#: doc/classes/OS.xml:578
+msgid "October."
+msgstr ""
+
+#: doc/classes/OS.xml:581
+msgid "November."
+msgstr ""
+
+#: doc/classes/OS.xml:584
+msgid "December."
+msgstr ""
+
+#: doc/classes/OS.xml:587
+msgid "Desktop directory path."
+msgstr ""
+
+#: doc/classes/OS.xml:590
+msgid "DCIM (Digital Camera Images) directory path."
+msgstr ""
+
+#: doc/classes/OS.xml:593
+msgid "Documents directory path."
+msgstr ""
+
+#: doc/classes/OS.xml:596
+msgid "Downloads directory path."
+msgstr ""
+
+#: doc/classes/OS.xml:599
+msgid "Movies directory path."
+msgstr ""
+
+#: doc/classes/OS.xml:602
+msgid "Music directory path."
+msgstr ""
+
+#: doc/classes/OS.xml:605
+msgid "Pictures directory path."
+msgstr ""
+
+#: doc/classes/OS.xml:608
+msgid "Ringtones directory path."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:4
+msgid "A packed [Array] of bytes."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:7
+msgid ""
+"An [Array] specifically designed to hold bytes. Packs data tightly, so it "
+"saves memory for large array sizes.\n"
+"[b]Note:[/b] This type is passed by value and not by reference."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:19
+msgid ""
+"Constructs a new [PackedByteArray]. Optionally, you can pass in a generic "
+"[Array] that will be converted."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:37
+msgid "Appends a [PackedByteArray] at the end of this array."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:46
+msgid ""
+"Returns a new [PackedByteArray] with the data compressed. Set the "
+"compression mode using one of [enum File.CompressionMode]'s constants."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:57
+msgid ""
+"Returns a new [PackedByteArray] with the data decompressed. Set "
+"[code]buffer_size[/code] to the size of the uncompressed data. Set the "
+"compression mode using one of [enum File.CompressionMode]'s constants."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:71
+msgid ""
+"Returns a copy of the array's contents as [String]. Fast alternative to "
+"[method get_string_from_utf8] if the content is ASCII-only. Unlike the UTF-8 "
+"function this function maps every byte to a character in the array. "
+"Multibyte sequences will not be interpreted correctly. For parsing user "
+"input always use [method get_string_from_utf8]."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:78
+msgid ""
+"Returns a copy of the array's contents as [String]. Slower than [method "
+"get_string_from_ascii] but supports UTF-8 encoded data. Use this function if "
+"you are unsure about the source of the data. For user input this function "
+"should always be preferred."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:87 doc/classes/PackedColorArray.xml:53
+#: doc/classes/PackedFloat32Array.xml:54 doc/classes/PackedFloat64Array.xml:54
+#: doc/classes/PackedInt32Array.xml:54 doc/classes/PackedInt64Array.xml:54
+#: doc/classes/PackedStringArray.xml:53 doc/classes/PackedVector2Array.xml:53
+#: doc/classes/PackedVector3Array.xml:53
+msgid "Returns [code]true[/code] if the array contains [code]value[/code]."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:94
+msgid ""
+"Returns a hexadecimal representation of this array as a [String].\n"
+"[codeblock]\n"
+"var array = PackedByteArray([11, 46, 255])\n"
+"print(array.hex_encode()) # Prints: 0b2eff\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:109 doc/classes/PackedColorArray.xml:64
+#: doc/classes/PackedFloat32Array.xml:65 doc/classes/PackedFloat64Array.xml:65
+#: doc/classes/PackedStringArray.xml:64 doc/classes/PackedVector2Array.xml:64
+#: doc/classes/PackedVector3Array.xml:64
+msgid ""
+"Inserts a new element at a given position in the array. The position must be "
+"valid, or at the end of the array ([code]idx == size()[/code])."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:143 doc/classes/PackedColorArray.xml:98
+#: doc/classes/PackedFloat32Array.xml:99 doc/classes/PackedFloat64Array.xml:99
+#: doc/classes/PackedInt32Array.xml:99 doc/classes/PackedInt64Array.xml:99
+#: doc/classes/PackedStringArray.xml:98 doc/classes/PackedVector2Array.xml:98
+#: doc/classes/PackedVector3Array.xml:98
+msgid ""
+"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."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:154
+msgid "Changes the byte at the given index."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:161 doc/classes/PackedColorArray.xml:116
+#: doc/classes/PackedFloat32Array.xml:117
+#: doc/classes/PackedFloat64Array.xml:117 doc/classes/PackedStringArray.xml:116
+#: doc/classes/PackedVector2Array.xml:116
+#: doc/classes/PackedVector3Array.xml:116
+msgid "Returns the size of the array."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:168 doc/classes/PackedColorArray.xml:123
+#: doc/classes/PackedFloat32Array.xml:124
+#: doc/classes/PackedFloat64Array.xml:124 doc/classes/PackedInt32Array.xml:124
+#: doc/classes/PackedInt64Array.xml:124 doc/classes/PackedStringArray.xml:123
+#: doc/classes/PackedVector2Array.xml:123
+#: doc/classes/PackedVector3Array.xml:123
+msgid "Sorts the elements of the array in ascending order."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:179
+msgid ""
+"Returns the slice of the [PackedByteArray] between indices (inclusive) as a "
+"new [PackedByteArray]. Any negative index is considered to be from the end "
+"of the array."
+msgstr ""
+
+#: doc/classes/PackedColorArray.xml:4
+msgid "A packed [Array] of [Color]s."
+msgstr ""
+
+#: doc/classes/PackedColorArray.xml:7
+msgid ""
+"An [Array] specifically designed to hold [Color]. Packs data tightly, so it "
+"saves memory for large array sizes.\n"
+"[b]Note:[/b] This type is passed by value and not by reference."
+msgstr ""
+
+#: doc/classes/PackedColorArray.xml:19
+msgid ""
+"Constructs a new [PackedColorArray]. Optionally, you can pass in a generic "
+"[Array] that will be converted."
+msgstr ""
+
+#: doc/classes/PackedColorArray.xml:37
+msgid "Appends a [PackedColorArray] at the end of this array."
+msgstr ""
+
+#: doc/classes/PackedColorArray.xml:80 doc/classes/PackedInt32Array.xml:81
+#: doc/classes/PackedInt64Array.xml:81
+msgid "Appends a value to the array."
+msgstr ""
+
+#: doc/classes/PackedColorArray.xml:109
+msgid "Changes the [Color] at the given index."
+msgstr ""
+
+#: doc/classes/PackedDataContainerRef.xml:4
+msgid "Reference version of [PackedDataContainer]."
+msgstr ""
+
+#: doc/classes/PackedFloat32Array.xml:4
+msgid "A packed [Array] of 32-bit floating-point values."
+msgstr ""
+
+#: doc/classes/PackedFloat32Array.xml:7
+msgid ""
+"An [Array] specifically designed to hold 32-bit floating-point values. Packs "
+"data tightly, so it saves memory for large array sizes.\n"
+"[b]Note:[/b] This type is passed by value and not by reference.\n"
+"If you need to pack 64-bit floats tightly, see [PackedFloat64Array]."
+msgstr ""
+
+#: doc/classes/PackedFloat32Array.xml:20
+msgid ""
+"Constructs a new [PackedFloat32Array]. Optionally, you can pass in a generic "
+"[Array] that will be converted."
+msgstr ""
+
+#: doc/classes/PackedFloat32Array.xml:38
+msgid "Appends a [PackedFloat32Array] at the end of this array."
+msgstr ""
+
+#: doc/classes/PackedFloat32Array.xml:110
+#: doc/classes/PackedFloat64Array.xml:110
+msgid "Changes the float at the given index."
+msgstr ""
+
+#: doc/classes/PackedFloat64Array.xml:4
+msgid "A packed [Array] of 64-bit floating-point values."
+msgstr ""
+
+#: doc/classes/PackedFloat64Array.xml:7
+msgid ""
+"An [Array] specifically designed to hold 64-bit floating-point values. Packs "
+"data tightly, so it saves memory for large array sizes.\n"
+"[b]Note:[/b] This type is passed by value and not by reference.\n"
+"If you only need to pack 32-bit floats tightly, see [PackedFloat32Array] for "
+"a more memory-friendly alternative."
+msgstr ""
+
+#: doc/classes/PackedFloat64Array.xml:20
+msgid ""
+"Constructs a new [PackedFloat64Array]. Optionally, you can pass in a generic "
+"[Array] that will be converted."
+msgstr ""
+
+#: doc/classes/PackedFloat64Array.xml:38
+msgid "Appends a [PackedFloat64Array] at the end of this array."
+msgstr ""
+
+#: doc/classes/PackedInt32Array.xml:4
+msgid "A packed [Array] of 32-bit integers."
+msgstr ""
+
+#: doc/classes/PackedInt32Array.xml:7
+msgid ""
+"An [Array] specifically designed to hold 32-bit integer values. Packs data "
+"tightly, so it saves memory for large array sizes.\n"
+"[b]Note:[/b] This type is passed by value and not by reference.\n"
+"[b]Note:[/b] This type stores signed 32-bit integers, which means it can "
+"take values in the interval [code][-2^31, 2^31 - 1][/code], i.e. [code]"
+"[-2147483648, 2147483647][/code]. Exceeding those bounds will wrap around. "
+"In comparison, [int] uses signed 64-bit integers which can hold much larger "
+"values. If you need to pack 64-bit integers tightly, see [PackedInt64Array]."
+msgstr ""
+
+#: doc/classes/PackedInt32Array.xml:20
+msgid ""
+"Constructs a new [PackedInt32Array]. Optionally, you can pass in a generic "
+"[Array] that will be converted."
+msgstr ""
+
+#: doc/classes/PackedInt32Array.xml:38
+msgid "Appends a [PackedInt32Array] at the end of this array."
+msgstr ""
+
+#: doc/classes/PackedInt32Array.xml:65 doc/classes/PackedInt64Array.xml:65
+msgid ""
+"Inserts a new integer at a given position in the array. The position must be "
+"valid, or at the end of the array ([code]idx == size()[/code])."
+msgstr ""
+
+#: doc/classes/PackedInt32Array.xml:110 doc/classes/PackedInt64Array.xml:110
+msgid "Changes the integer at the given index."
+msgstr ""
+
+#: doc/classes/PackedInt32Array.xml:117 doc/classes/PackedInt64Array.xml:117
+msgid "Returns the array size."
+msgstr ""
+
+#: doc/classes/PackedInt64Array.xml:4
+msgid "A packed [Array] of 64-bit integers."
+msgstr ""
+
+#: doc/classes/PackedInt64Array.xml:7
+msgid ""
+"An [Array] specifically designed to hold 64-bit integer values. Packs data "
+"tightly, so it saves memory for large array sizes.\n"
+"[b]Note:[/b] This type is passed by value and not by reference.\n"
+"[b]Note:[/b] This type stores signed 64-bit integers, which means it can "
+"take values in the interval [code][-2^63, 2^63 - 1][/code], i.e. [code]"
+"[-9223372036854775808, 9223372036854775807][/code]. Exceeding those bounds "
+"will wrap around. If you only need to pack 32-bit integers tightly, see "
+"[PackedInt32Array] for a more memory-friendly alternative."
+msgstr ""
+
+#: doc/classes/PackedInt64Array.xml:20
+msgid ""
+"Constructs a new [PackedInt64Array]. Optionally, you can pass in a generic "
+"[Array] that will be converted."
+msgstr ""
+
+#: doc/classes/PackedInt64Array.xml:38
+msgid "Appends a [PackedInt64Array] at the end of this array."
+msgstr ""
+
+#: doc/classes/PackedScene.xml:4
+msgid "An abstraction of a serialized scene."
+msgstr ""
+
+#: doc/classes/PackedScene.xml:7
+msgid ""
+"A simplified interface to a scene file. Provides access to operations and "
+"checks that can be performed on the scene resource itself.\n"
+"Can be used to save a node to a file. When saving, the node as well as all "
+"the node it owns get saved (see [code]owner[/code] property on [Node]).\n"
+"[b]Note:[/b] The node doesn't need to own itself.\n"
+"[b]Example of loading a saved scene:[/b]\n"
+"[codeblock]\n"
+"# Use `load()` instead of `preload()` if the path isn't known at compile-"
+"time.\n"
+"var scene = preload(\"res://scene.tscn\").instance()\n"
+"# Add the node as a child of the node the script is attached to.\n"
+"add_child(scene)\n"
+"[/codeblock]\n"
+"[b]Example of saving a node with different owners:[/b] The following example "
+"creates 3 objects: [code]Node2D[/code] ([code]node[/code]), "
+"[code]RigidBody2D[/code] ([code]rigid[/code]) and [code]CollisionObject2D[/"
+"code] ([code]collision[/code]). [code]collision[/code] is a child of "
+"[code]rigid[/code] which is a child of [code]node[/code]. Only [code]rigid[/"
+"code] is owned by [code]node[/code] and [code]pack[/code] will therefore "
+"only save those two nodes, but not [code]collision[/code].\n"
+"[codeblock]\n"
+"# Create the objects.\n"
+"var node = Node2D.new()\n"
+"var rigid = RigidBody2D.new()\n"
+"var collision = CollisionShape2D.new()\n"
+"\n"
+"# Create the object hierarchy.\n"
+"rigid.add_child(collision)\n"
+"node.add_child(rigid)\n"
+"\n"
+"# Change owner of `rigid`, but not of `collision`.\n"
+"rigid.owner = node\n"
+"\n"
+"var scene = PackedScene.new()\n"
+"# Only `node` and `rigid` are now packed.\n"
+"var result = scene.pack(node)\n"
+"if result == OK:\n"
+" var error = ResourceSaver.save(\"res://path/name.scn\", scene) # Or "
+"\"user://...\"\n"
+" if error != OK:\n"
+" push_error(\"An error occurred while saving the scene to disk.\")\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/PackedScene.xml:47
+msgid "Returns [code]true[/code] if the scene file has nodes."
+msgstr ""
+
+#: doc/classes/PackedScene.xml:54
+msgid ""
+"Returns the [code]SceneState[/code] representing the scene file contents."
+msgstr ""
+
+#: doc/classes/PackedScene.xml:63
+msgid ""
+"Instantiates the scene's node hierarchy. Triggers child scene "
+"instantiation(s). Triggers a [constant Node.NOTIFICATION_INSTANCED] "
+"notification on the root node."
+msgstr ""
+
+#: doc/classes/PackedScene.xml:72
+msgid ""
+"Pack will ignore any sub-nodes not owned by given node. See [member Node."
+"owner]."
+msgstr ""
+
+#: doc/classes/PackedScene.xml:78
+msgid ""
+"A dictionary representation of the scene contents.\n"
+"Available keys include \"rnames\" and \"variants\" for resources, "
+"\"node_count\", \"nodes\", \"node_paths\" for nodes, \"editable_instances\" "
+"for base scene children overrides, \"conn_count\" and \"conns\" for signal "
+"connections, and \"version\" for the format style of the PackedScene."
+msgstr ""
+
+#: doc/classes/PackedScene.xml:84
+msgid "If passed to [method instance], blocks edits to the scene state."
+msgstr ""
+
+#: doc/classes/PackedScene.xml:87
+msgid ""
+"If passed to [method instance], provides local scene resources to the local "
+"scene.\n"
+"[b]Note:[/b] Only available in editor builds."
+msgstr ""
+
+#: doc/classes/PackedScene.xml:91
+msgid ""
+"If passed to [method instance], provides local scene resources to the local "
+"scene. Only the main scene should receive the main edit state.\n"
+"[b]Note:[/b] Only available in editor builds."
+msgstr ""
+
+#: doc/classes/PackedStringArray.xml:4
+msgid "A packed [Array] of [String]s."
+msgstr ""
+
+#: doc/classes/PackedStringArray.xml:7
+msgid ""
+"An [Array] specifically designed to hold [String]s. Packs data tightly, so "
+"it saves memory for large array sizes.\n"
+"[b]Note:[/b] This type is passed by value and not by reference."
+msgstr ""
+
+#: doc/classes/PackedStringArray.xml:19
+msgid ""
+"Constructs a new [PackedStringArray]. Optionally, you can pass in a generic "
+"[Array] that will be converted."
+msgstr ""
+
+#: doc/classes/PackedStringArray.xml:37
+msgid "Appends a [PackedStringArray] at the end of this array."
+msgstr ""
+
+#: doc/classes/PackedStringArray.xml:80
+msgid "Appends a string element at end of the array."
+msgstr ""
+
+#: doc/classes/PackedStringArray.xml:109
+msgid "Changes the [String] at the given index."
+msgstr ""
+
+#: doc/classes/PackedVector2Array.xml:4
+msgid "A packed [Array] of [Vector2]s."
+msgstr ""
+
+#: doc/classes/PackedVector2Array.xml:7
+msgid ""
+"An [Array] specifically designed to hold [Vector2]. Packs data tightly, so "
+"it saves memory for large array sizes.\n"
+"[b]Note:[/b] This type is passed by value and not by reference."
+msgstr ""
+
+#: doc/classes/PackedVector2Array.xml:19
+msgid ""
+"Constructs a new [PackedVector2Array]. Optionally, you can pass in a generic "
+"[Array] that will be converted."
+msgstr ""
+
+#: doc/classes/PackedVector2Array.xml:37
+msgid "Appends a [PackedVector2Array] at the end of this array."
+msgstr ""
+
+#: doc/classes/PackedVector2Array.xml:80
+msgid "Inserts a [Vector2] at the end."
+msgstr ""
+
+#: doc/classes/PackedVector2Array.xml:109
+msgid "Changes the [Vector2] at the given index."
+msgstr ""
+
+#: doc/classes/PackedVector3Array.xml:4
+msgid "A packed [Array] of [Vector3]s."
+msgstr ""
+
+#: doc/classes/PackedVector3Array.xml:7
+msgid ""
+"An [Array] specifically designed to hold [Vector3]. Packs data tightly, so "
+"it saves memory for large array sizes.\n"
+"[b]Note:[/b] This type is passed by value and not by reference."
+msgstr ""
+
+#: doc/classes/PackedVector3Array.xml:19
+msgid ""
+"Constructs a new [PackedVector3Array]. Optionally, you can pass in a generic "
+"[Array] that will be converted."
+msgstr ""
+
+#: doc/classes/PackedVector3Array.xml:37
+msgid "Appends a [PackedVector3Array] at the end of this array."
+msgstr ""
+
+#: doc/classes/PackedVector3Array.xml:80
+msgid "Inserts a [Vector3] at the end."
+msgstr ""
+
+#: doc/classes/PackedVector3Array.xml:109
+msgid "Changes the [Vector3] at the given index."
+msgstr ""
+
+#: doc/classes/PacketPeer.xml:4
+msgid "Abstraction and base class for packet-based protocols."
+msgstr ""
+
+#: doc/classes/PacketPeer.xml:7
+msgid ""
+"PacketPeer is an abstraction and base class for packet-based protocols (such "
+"as UDP). It provides an API for sending and receiving packets both as raw "
+"data or variables. This makes it easy to transfer data over a protocol, "
+"without having to encode data as low-level bytes or having to worry about "
+"network ordering."
+msgstr ""
+
+#: doc/classes/PacketPeer.xml:16
+msgid "Returns the number of packets currently available in the ring-buffer."
+msgstr ""
+
+#: doc/classes/PacketPeer.xml:23
+msgid "Gets a raw packet."
+msgstr ""
+
+#: doc/classes/PacketPeer.xml:30
+msgid ""
+"Returns the error state of the last packet received (via [method get_packet] "
+"and [method get_var])."
+msgstr ""
+
+#: doc/classes/PacketPeer.xml:39
+msgid ""
+"Gets a Variant. If [code]allow_objects[/code] is [code]true[/code], decoding "
+"objects is allowed.\n"
+"[b]Warning:[/b] 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."
+msgstr ""
+
+#: doc/classes/PacketPeer.xml:49
+msgid "Sends a raw packet."
+msgstr ""
+
+#: doc/classes/PacketPeer.xml:60
+msgid ""
+"Sends a [Variant] as a packet. If [code]full_objects[/code] is [code]true[/"
+"code], encoding objects is allowed (and can potentially include code)."
+msgstr ""
+
+#: doc/classes/PacketPeer.xml:66
+msgid ""
+"Maximum buffer size allowed when encoding [Variant]s. Raise this value to "
+"support heavier memory allocations.\n"
+"The [method put_var] method allocates memory on the stack, and the buffer "
+"used will grow automatically to the closest power of two to match the size "
+"of the [Variant]. If the [Variant] is bigger than "
+"[code]encode_buffer_max_size[/code], the method will error out with "
+"[constant ERR_OUT_OF_MEMORY]."
+msgstr ""
+
+#: doc/classes/PacketPeerDTLS.xml:4
+msgid "DTLS packet peer."
+msgstr ""
+
+#: doc/classes/PacketPeerDTLS.xml:7
+msgid ""
+"This class represents a DTLS peer connection. It can be used to connect to a "
+"DTLS server, and is returned by [method DTLSServer.take_connection]."
+msgstr ""
+
+#: doc/classes/PacketPeerDTLS.xml:24
+msgid ""
+"Connects a [code]peer[/code] beginning the DTLS handshake using the "
+"underlying [PacketPeerUDP] which must be connected (see [method "
+"PacketPeerUDP.connect_to_host]). If [code]validate_certs[/code] is "
+"[code]true[/code], [PacketPeerDTLS] will validate that the certificate "
+"presented by the remote peer and match it with the [code]for_hostname[/code] "
+"argument. You can specify a custom [X509Certificate] to use for validation "
+"via the [code]valid_certificate[/code] argument."
+msgstr ""
+
+#: doc/classes/PacketPeerDTLS.xml:31
+msgid "Disconnects this peer, terminating the DTLS session."
+msgstr ""
+
+#: doc/classes/PacketPeerDTLS.xml:38 doc/classes/StreamPeerSSL.xml:55
+msgid "Returns the status of the connection. See [enum Status] for values."
+msgstr ""
+
+#: doc/classes/PacketPeerDTLS.xml:45
+msgid ""
+"Poll the connection to check for incoming packets. Call this frequently to "
+"update the status and keep the connection working."
+msgstr ""
+
+#: doc/classes/PacketPeerDTLS.xml:51
+msgid "A status representing a [PacketPeerDTLS] that is disconnected."
+msgstr ""
+
+#: doc/classes/PacketPeerDTLS.xml:54
+msgid ""
+"A status representing a [PacketPeerDTLS] that is currently performing the "
+"handshake with a remote peer."
+msgstr ""
+
+#: doc/classes/PacketPeerDTLS.xml:57
+msgid ""
+"A status representing a [PacketPeerDTLS] that is connected to a remote peer."
+msgstr ""
+
+#: doc/classes/PacketPeerDTLS.xml:60
+msgid "A status representing a [PacketPeerDTLS] in a generic error state."
+msgstr ""
+
+#: doc/classes/PacketPeerDTLS.xml:63
+msgid ""
+"An error status that shows a mismatch in the DTLS certificate domain "
+"presented by the host and the domain requested for validation."
+msgstr ""
+
+#: doc/classes/PacketPeerStream.xml:4
+msgid "Wrapper to use a PacketPeer over a StreamPeer."
+msgstr ""
+
+#: doc/classes/PacketPeerStream.xml:7
+msgid ""
+"PacketStreamPeer provides a wrapper for working using packets over a stream. "
+"This allows for using packet based code with StreamPeers. PacketPeerStream "
+"implements a custom protocol over the StreamPeer, so the user should not "
+"read or write to the wrapped StreamPeer directly."
+msgstr ""
+
+#: doc/classes/PacketPeerStream.xml:19
+msgid "The wrapped [StreamPeer] object."
+msgstr ""
+
+#: doc/classes/PacketPeerUDP.xml:4
+msgid "UDP packet peer."
+msgstr ""
+
+#: doc/classes/PacketPeerUDP.xml:7
+msgid ""
+"UDP packet peer. Can be used to send raw UDP packets as well as [Variant]s."
+msgstr ""
+
+#: doc/classes/PacketPeerUDP.xml:16
+msgid "Closes the UDP socket the [PacketPeerUDP] is currently listening on."
+msgstr ""
+
+#: doc/classes/PacketPeerUDP.xml:27
+msgid ""
+"Calling this method connects this UDP peer to the given [code]host[/code]/"
+"[code]port[/code] pair. UDP is in reality connectionless, so this option "
+"only means that incoming packets from different addresses are automatically "
+"discarded, and that outgoing packets are always sent to the connected "
+"address (future calls to [method set_dest_address] are not allowed). This "
+"method does not send any data to the remote peer, to do that, use [method "
+"PacketPeer.put_var] or [method PacketPeer.put_packet] as usual. See also "
+"[UDPServer].\n"
+"Note: Connecting to the remote peer does not help to protect from malicious "
+"attacks like IP spoofing, etc. Think about using an encryption technique "
+"like SSL or DTLS if you feel like your application is transferring sensitive "
+"information."
+msgstr ""
+
+#: doc/classes/PacketPeerUDP.xml:35
+msgid ""
+"Returns the IP of the remote peer that sent the last packet(that was "
+"received with [method PacketPeer.get_packet] or [method PacketPeer.get_var])."
+msgstr ""
+
+#: doc/classes/PacketPeerUDP.xml:42
+msgid ""
+"Returns the port of the remote peer that sent the last packet(that was "
+"received with [method PacketPeer.get_packet] or [method PacketPeer.get_var])."
+msgstr ""
+
+#: doc/classes/PacketPeerUDP.xml:49
+msgid ""
+"Returns [code]true[/code] if the UDP socket is open and has been connected "
+"to a remote address. See [method connect_to_host]."
+msgstr ""
+
+#: doc/classes/PacketPeerUDP.xml:56
+msgid "Returns whether this [PacketPeerUDP] is listening."
+msgstr ""
+
+#: doc/classes/PacketPeerUDP.xml:67
+msgid ""
+"Joins the multicast group specified by [code]multicast_address[/code] using "
+"the interface identified by [code]interface_name[/code].\n"
+"You can join the same multicast group with multiple interfaces. Use [method "
+"IP.get_local_interfaces] to know which are available.\n"
+"Note: Some Android devices might require the "
+"[code]CHANGE_WIFI_MULTICAST_STATE[/code] permission for multicast to work."
+msgstr ""
+
+#: doc/classes/PacketPeerUDP.xml:80
+msgid ""
+"Removes the interface identified by [code]interface_name[/code] from the "
+"multicast group specified by [code]multicast_address[/code]."
+msgstr ""
+
+#: doc/classes/PacketPeerUDP.xml:93
+msgid ""
+"Makes this [PacketPeerUDP] listen on the [code]port[/code] binding to "
+"[code]bind_address[/code] with a buffer size [code]recv_buf_size[/code].\n"
+"If [code]bind_address[/code] is set to [code]\"*\"[/code] (default), the "
+"peer will listen on all available addresses (both IPv4 and IPv6).\n"
+"If [code]bind_address[/code] is set to [code]\"0.0.0.0\"[/code] (for IPv4) "
+"or [code]\"::\"[/code] (for IPv6), the peer will listen on all available "
+"addresses matching that IP type.\n"
+"If [code]bind_address[/code] is set to any valid address (e.g. "
+"[code]\"192.168.1.101\"[/code], [code]\"::1\"[/code], etc), the peer will "
+"only listen on the interface with that addresses (or fail if no interface "
+"with the given address exists)."
+msgstr ""
+
+#: doc/classes/PacketPeerUDP.xml:105
+msgid ""
+"Enable or disable sending of broadcast packets (e.g. "
+"[code]set_dest_address(\"255.255.255.255\", 4343)[/code]. This option is "
+"disabled by default.\n"
+"Note: Some Android devices might require the "
+"[code]CHANGE_WIFI_MULTICAST_STATE[/code] permission and this option to be "
+"enabled to receive broadcast packets too."
+msgstr ""
+
+#: doc/classes/PacketPeerUDP.xml:117
+msgid ""
+"Sets the destination address and port for sending packets and variables. A "
+"hostname will be resolved using DNS if needed.\n"
+"Note: [method set_broadcast_enabled] must be enabled before sending packets "
+"to a broadcast address (e.g. [code]255.255.255.255[/code])."
+msgstr ""
+
+#: doc/classes/PacketPeerUDP.xml:125
+msgid ""
+"Waits for a packet to arrive on the listening port. See [method listen]."
+msgstr ""
+
+#: doc/classes/Panel.xml:4
+msgid "Provides an opaque background for [Control] children."
+msgstr ""
+
+#: doc/classes/Panel.xml:7
+msgid ""
+"Panel is a [Control] that displays an opaque background. It's commonly used "
+"as a parent and container for other types of [Control] nodes."
+msgstr ""
+
+#: doc/classes/Panel.xml:25
+msgid "The style of this [Panel]."
+msgstr ""
+
+#: doc/classes/PanelContainer.xml:4
+msgid "Panel container type."
+msgstr ""
+
+#: doc/classes/PanelContainer.xml:7
+msgid ""
+"Panel container type. This container fits controls inside of the delimited "
+"area of a stylebox. It's useful for giving controls an outline."
+msgstr ""
+
+#: doc/classes/PanelContainer.xml:20
+msgid "The style of [PanelContainer]'s background."
+msgstr ""
+
+#: doc/classes/PanoramaSkyMaterial.xml:4
+msgid "A [Material] used with [Sky] to draw a background texture."
+msgstr ""
+
+#: doc/classes/PanoramaSkyMaterial.xml:7
+msgid ""
+"A resource referenced in a [Sky] that is used to draw a background. The "
+"Panorama sky material functions similar to skyboxes in other engines, except "
+"it uses an equirectangular sky map instead of a cube map.\n"
+"Using an HDR panorama is strongly recommended for accurate, high-quality "
+"reflections. Godot supports the Radiance HDR ([code].hdr[/code]) and OpenEXR "
+"([code].exr[/code]) image formats for this purpose.\n"
+"You can use [url=https://danilw.github.io/GLSL-howto/cubemap_to_panorama_js/"
+"cubemap_to_panorama.html]this tool[/url] to convert a cube map to an "
+"equirectangular sky map."
+msgstr ""
+
+#: doc/classes/PanoramaSkyMaterial.xml:17
+msgid "[Texture2D] to be applied to the [PanoramaSkyMaterial]."
+msgstr ""
+
+#: doc/classes/ParallaxBackground.xml:4
+msgid "A node used to create a parallax scrolling background."
+msgstr ""
+
+#: doc/classes/ParallaxBackground.xml:7
+msgid ""
+"A ParallaxBackground uses one or more [ParallaxLayer] child nodes to create "
+"a parallax effect. Each [ParallaxLayer] can move at a different speed using "
+"[member ParallaxLayer.motion_offset]. This creates an illusion of depth in a "
+"2D game. If not used with a [Camera2D], you must manually calculate the "
+"[member scroll_offset]."
+msgstr ""
+
+#: doc/classes/ParallaxBackground.xml:16
+msgid "The base position offset for all [ParallaxLayer] children."
+msgstr ""
+
+#: doc/classes/ParallaxBackground.xml:19
+msgid "The base motion scale for all [ParallaxLayer] children."
+msgstr ""
+
+#: doc/classes/ParallaxBackground.xml:22
+msgid ""
+"If [code]true[/code], elements in [ParallaxLayer] child aren't affected by "
+"the zoom level of the camera."
+msgstr ""
+
+#: doc/classes/ParallaxBackground.xml:25
+msgid ""
+"Top-left limits for scrolling to begin. If the camera is outside of this "
+"limit, the background will stop scrolling. Must be lower than [member "
+"scroll_limit_end] to work."
+msgstr ""
+
+#: doc/classes/ParallaxBackground.xml:28
+msgid ""
+"Bottom-right limits for scrolling to end. If the camera is outside of this "
+"limit, the background will stop scrolling. Must be higher than [member "
+"scroll_limit_begin] to work."
+msgstr ""
+
+#: doc/classes/ParallaxBackground.xml:31
+msgid ""
+"The ParallaxBackground's scroll value. Calculated automatically when using a "
+"[Camera2D], but can be used to manually manage scrolling when no camera is "
+"present."
+msgstr ""
+
+#: doc/classes/ParallaxLayer.xml:4
+msgid "A parallax scrolling layer to be used with [ParallaxBackground]."
+msgstr ""
+
+#: doc/classes/ParallaxLayer.xml:7
+msgid ""
+"A ParallaxLayer must be the child of a [ParallaxBackground] node. Each "
+"ParallaxLayer can be set to move at different speeds relative to the camera "
+"movement or the [member ParallaxBackground.scroll_offset] value.\n"
+"This node's children will be affected by its scroll offset.\n"
+"[b]Note:[/b] Any changes to this node's position and scale made after it "
+"enters the scene will be ignored."
+msgstr ""
+
+#: doc/classes/ParallaxLayer.xml:17
+msgid ""
+"The ParallaxLayer's [Texture2D] mirroring. Useful for creating an infinite "
+"scrolling background. If an axis is set to [code]0[/code], the [Texture2D] "
+"will not be mirrored."
+msgstr ""
+
+#: doc/classes/ParallaxLayer.xml:20
+msgid ""
+"The ParallaxLayer's offset relative to the parent ParallaxBackground's "
+"[member ParallaxBackground.scroll_offset]."
+msgstr ""
+
+#: doc/classes/ParallaxLayer.xml:23
+msgid ""
+"Multiplies the ParallaxLayer's motion. If an axis is set to [code]0[/code], "
+"it will not scroll."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:4
+msgid "Particle properties for [GPUParticles3D] and [GPUParticles2D] nodes."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:7
+msgid ""
+"ParticlesMaterial defines particle properties and behavior. It is used in "
+"the [code]process_material[/code] of [GPUParticles3D] and [GPUParticles2D] "
+"emitter nodes.\n"
+"Some of this material's properties are applied to each particle when "
+"emitted, while others can have a [CurveTexture] applied to vary values over "
+"the lifetime of the particle.\n"
+"When a randomness ratio is applied to a property it is used to scale that "
+"property by a random amount. The random ratio is used to interpolate between "
+"[code]1.0[/code] and a random number less than one, the result is multiplied "
+"by the property to obtain the randomized property. For example a random "
+"ratio of [code]0.4[/code] would scale the original property between "
+"[code]0.4-1.0[/code] of its original value."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:20
+msgid "Returns [code]true[/code] if the specified flag is enabled."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:38
+msgid "Returns the randomness ratio associated with the specified parameter."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:47
+msgid "Returns the [Texture2D] used by the specified parameter."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:58
+msgid ""
+"If [code]true[/code], enables the specified flag. See [enum Flags] for "
+"options."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:69
+msgid "Sets the specified [enum Parameter]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:80
+msgid "Sets the randomness ratio for the specified [enum Parameter]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:91
+msgid "Sets the [Texture2D] for the specified [enum Parameter]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:97
+msgid ""
+"Initial rotation applied to each particle, in degrees.\n"
+"Only applied when [member flag_disable_z] or [member flag_rotate_y] are "
+"[code]true[/code] or the [BaseMaterial3D] being used to draw the particle is "
+"using [constant BaseMaterial3D.BILLBOARD_PARTICLES]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:101
+msgid "Each particle's rotation will be animated along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:107
+msgid ""
+"Initial angular velocity applied to each particle. Sets the speed of "
+"rotation of the particle.\n"
+"Only applied when [member flag_disable_z] or [member flag_rotate_y] are "
+"[code]true[/code] or the [BaseMaterial3D] being used to draw the particle is "
+"using [constant BaseMaterial3D.BILLBOARD_PARTICLES]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:111
+msgid "Each particle's angular velocity will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:120
+msgid "Each particle's animation offset will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:129
+msgid "Each particle's animation speed will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:135
+msgid ""
+"Each particle's initial color. If the [GPUParticles2D]'s [code]texture[/"
+"code] is defined, it will be multiplied by this color. To have particle "
+"display color in a [BaseMaterial3D] make sure to set [member BaseMaterial3D."
+"vertex_color_use_as_albedo] to [code]true[/code]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:138
+msgid "Each particle's color will vary along this [GradientTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:144
+msgid "Damping will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:153
+msgid ""
+"The box's extents if [code]emission_shape[/code] is set to [constant "
+"EMISSION_SHAPE_BOX]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:156
+msgid ""
+"Particle color will be modulated by color determined by sampling this "
+"texture at the same point as the [member emission_point_texture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:159
+msgid ""
+"Particle velocity and rotation will be set by sampling this texture at the "
+"same point as the [member emission_point_texture]. Used only in [constant "
+"EMISSION_SHAPE_DIRECTED_POINTS]. Can be created automatically from mesh or "
+"node by selecting \"Create Emission Points from Mesh/Node\" under the "
+"\"Particles\" tool in the toolbar."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:162
+msgid ""
+"The number of emission points if [code]emission_shape[/code] is set to "
+"[constant EMISSION_SHAPE_POINTS] or [constant "
+"EMISSION_SHAPE_DIRECTED_POINTS]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:165
+msgid ""
+"Particles will be emitted at positions determined by sampling this texture "
+"at a random position. Used with [constant EMISSION_SHAPE_POINTS] and "
+"[constant EMISSION_SHAPE_DIRECTED_POINTS]. Can be created automatically from "
+"mesh or node by selecting \"Create Emission Points from Mesh/Node\" under "
+"the \"Particles\" tool in the toolbar."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:168
+msgid ""
+"Particles will be emitted inside this region. Use [enum EmissionShape] "
+"constants for values."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:171
+msgid ""
+"The sphere's radius if [code]emission_shape[/code] is set to [constant "
+"EMISSION_SHAPE_SPHERE]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:192
+msgid "Each particle's hue will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:210
+msgid ""
+"Each particle's linear acceleration will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:216
+msgid ""
+"Orbital velocity applied to each particle. Makes the particles circle around "
+"origin. Specified in number of full rotations around origin per second.\n"
+"Only available when [member flag_disable_z] is [code]true[/code]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:220
+msgid "Each particle's orbital velocity will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:229
+msgid ""
+"Each particle's radial acceleration will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:238
+msgid "Each particle's scale will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:250
+msgid ""
+"Each particle's tangential acceleration will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:256
+msgid "Trail particles' color will vary along this [GradientTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:259
+msgid ""
+"Emitter will emit [code]amount[/code] divided by [code]trail_divisor[/code] "
+"particles. The remaining particles will be used as trail(s)."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:262
+msgid "Trail particles' size will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:267
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_texture] to set initial velocity properties."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:270
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_texture] to set angular velocity properties."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:273
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_texture] to set orbital velocity properties."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:276
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_texture] to set linear acceleration properties."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:279
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_texture] to set radial acceleration properties."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:282
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_texture] to set tangential acceleration properties."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:285
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_texture] to set damping properties."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:288
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_texture] to set angle properties."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:291
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_texture] to set scale properties."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:294
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_texture] to set hue variation properties."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:297
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_texture] to set animation speed properties."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:300
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_texture] to set animation offset properties."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:306
+msgid "Use with [method set_flag] to set [member flag_align_y]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:309
+msgid "Use with [method set_flag] to set [member flag_rotate_y]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:312
+msgid "Use with [method set_flag] to set [member flag_disable_z]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:327
+msgid ""
+"Particles will be emitted at a position determined by sampling a random "
+"point on the [member emission_point_texture]. Particle color will be "
+"modulated by [member emission_color_texture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:330
+msgid ""
+"Particles will be emitted at a position determined by sampling a random "
+"point on the [member emission_point_texture]. Particle velocity and rotation "
+"will be set based on [member emission_normal_texture]. Particle color will "
+"be modulated by [member emission_color_texture]."
+msgstr ""
+
+#: doc/classes/Path2D.xml:4
+msgid "Contains a [Curve2D] path for [PathFollow2D] nodes to follow."
+msgstr ""
+
+#: doc/classes/Path2D.xml:7
+msgid ""
+"Can have [PathFollow2D] child nodes moving along the [Curve2D]. See "
+"[PathFollow2D] for more information on usage.\n"
+"[b]Note:[/b] The path is considered as relative to the moved nodes (children "
+"of [PathFollow2D]). As such, the curve should usually start with a zero "
+"vector ([code](0, 0)[/code])."
+msgstr ""
+
+#: doc/classes/Path2D.xml:16
+msgid "A [Curve2D] describing the path."
+msgstr ""
+
+#: doc/classes/Path3D.xml:4
+msgid "Contains a [Curve3D] path for [PathFollow3D] nodes to follow."
+msgstr ""
+
+#: doc/classes/Path3D.xml:7
+msgid ""
+"Can have [PathFollow3D] child nodes moving along the [Curve3D]. See "
+"[PathFollow3D] for more information on the usage.\n"
+"Note that the path is considered as relative to the moved nodes (children of "
+"[PathFollow3D]). As such, the curve should usually start with a zero vector "
+"[code](0, 0, 0)[/code]."
+msgstr ""
+
+#: doc/classes/Path3D.xml:16
+msgid "A [Curve3D] describing the path."
+msgstr ""
+
+#: doc/classes/Path3D.xml:22
+msgid "Emitted when the [member curve] changes."
+msgstr ""
+
+#: doc/classes/PathFollow2D.xml:4
+msgid "Point sampler for a [Path2D]."
+msgstr ""
+
+#: doc/classes/PathFollow2D.xml:7
+msgid ""
+"This node takes its parent [Path2D], and returns the coordinates of a point "
+"within it, given a distance from the first vertex.\n"
+"It is useful for making other nodes follow a path, without coding the "
+"movement pattern. For that, the nodes must be children of this node. The "
+"descendant nodes will then move accordingly when setting an offset in this "
+"node."
+msgstr ""
+
+#: doc/classes/PathFollow2D.xml:16
+msgid ""
+"If [code]true[/code], the position between two cached points is interpolated "
+"cubically, and linearly otherwise.\n"
+"The points along the [Curve2D] of the [Path2D] are precomputed before use, "
+"for faster calculations. The point at the requested offset is then "
+"calculated interpolating between two adjacent cached points. This may "
+"present a problem if the curve makes sharp turns, as the cached points may "
+"not follow the curve closely enough.\n"
+"There are two answers to this problem: either increase the number of cached "
+"points and increase memory consumption, or make a cubic interpolation "
+"between two points at the cost of (slightly) slower calculations."
+msgstr ""
+
+#: doc/classes/PathFollow2D.xml:21 doc/classes/PathFollow3D.xml:21
+msgid "The node's offset along the curve."
+msgstr ""
+
+#: doc/classes/PathFollow2D.xml:24
+msgid ""
+"How far to look ahead of the curve to calculate the tangent if the node is "
+"rotating. E.g. shorter lookaheads will lead to faster rotations."
+msgstr ""
+
+#: doc/classes/PathFollow2D.xml:27 doc/classes/PathFollow3D.xml:24
+msgid ""
+"If [code]true[/code], any offset outside the path's length will wrap around, "
+"instead of stopping at the ends. Use it for cyclic paths."
+msgstr ""
+
+#: doc/classes/PathFollow2D.xml:30
+msgid "The distance along the path in pixels."
+msgstr ""
+
+#: doc/classes/PathFollow2D.xml:33
+msgid ""
+"If [code]true[/code], this node rotates to follow the path, making its "
+"descendants rotate."
+msgstr ""
+
+#: doc/classes/PathFollow2D.xml:36
+msgid ""
+"The distance along the path as a number in the range 0.0 (for the first "
+"vertex) to 1.0 (for the last). This is just another way of expressing the "
+"offset within the path, as the offset supplied is multiplied internally by "
+"the path's length."
+msgstr ""
+
+#: doc/classes/PathFollow2D.xml:39 doc/classes/PathFollow3D.xml:36
+msgid "The node's offset perpendicular to the curve."
+msgstr ""
+
+#: doc/classes/PathFollow3D.xml:4
+msgid "Point sampler for a [Path3D]."
+msgstr ""
+
+#: doc/classes/PathFollow3D.xml:7
+msgid ""
+"This node takes its parent [Path3D], and returns the coordinates of a point "
+"within it, given a distance from the first vertex.\n"
+"It is useful for making other nodes follow a path, without coding the "
+"movement pattern. For that, the nodes must be children of this node. The "
+"descendant nodes will then move accordingly when setting an offset in this "
+"node."
+msgstr ""
+
+#: doc/classes/PathFollow3D.xml:16
+msgid ""
+"If [code]true[/code], the position between two cached points is interpolated "
+"cubically, and linearly otherwise.\n"
+"The points along the [Curve3D] of the [Path3D] are precomputed before use, "
+"for faster calculations. The point at the requested offset is then "
+"calculated interpolating between two adjacent cached points. This may "
+"present a problem if the curve makes sharp turns, as the cached points may "
+"not follow the curve closely enough.\n"
+"There are two answers to this problem: either increase the number of cached "
+"points and increase memory consumption, or make a cubic interpolation "
+"between two points at the cost of (slightly) slower calculations."
+msgstr ""
+
+#: doc/classes/PathFollow3D.xml:27
+msgid ""
+"The distance from the first vertex, measured in 3D units along the path. "
+"This sets this node's position to a point within the path."
+msgstr ""
+
+#: doc/classes/PathFollow3D.xml:30
+msgid ""
+"Allows or forbids rotation on one or more axes, depending on the [enum "
+"RotationMode] constants being used."
+msgstr ""
+
+#: doc/classes/PathFollow3D.xml:33
+msgid ""
+"The distance from the first vertex, considering 0.0 as the first vertex and "
+"1.0 as the last. This is just another way of expressing the offset within "
+"the path, as the offset supplied is multiplied internally by the path's "
+"length."
+msgstr ""
+
+#: doc/classes/PathFollow3D.xml:41
+msgid "Forbids the PathFollow3D to rotate."
+msgstr ""
+
+#: doc/classes/PathFollow3D.xml:44
+msgid "Allows the PathFollow3D to rotate in the Y axis only."
+msgstr ""
+
+#: doc/classes/PathFollow3D.xml:47
+msgid "Allows the PathFollow3D to rotate in both the X, and Y axes."
+msgstr ""
+
+#: doc/classes/PathFollow3D.xml:50
+msgid "Allows the PathFollow3D to rotate in any axis."
+msgstr ""
+
+#: doc/classes/PathFollow3D.xml:53
+msgid ""
+"Uses the up vector information in a [Curve3D] to enforce orientation. This "
+"rotation mode requires the [Path3D]'s [member Curve3D.up_vector_enabled] "
+"property to be set to [code]true[/code]."
+msgstr ""
+
+#: doc/classes/PCKPacker.xml:4
+msgid "Creates packages that can be loaded into a running project."
+msgstr ""
+
+#: doc/classes/PCKPacker.xml:7
+msgid ""
+"The [PCKPacker] is used to create packages that can be loaded into a running "
+"project using [method ProjectSettings.load_resource_pack].\n"
+"[codeblock]\n"
+"var packer = PCKPacker.new()\n"
+"packer.pck_start(\"test.pck\")\n"
+"packer.add_file(\"res://text.txt\", \"text.txt\")\n"
+"packer.flush()\n"
+"[/codeblock]\n"
+"The above [PCKPacker] creates package [code]test.pck[/code], then adds a "
+"file named [code]text.txt[/code] at the root of the package."
+msgstr ""
+
+#: doc/classes/PCKPacker.xml:27
+msgid ""
+"Adds the [code]source_path[/code] file to the current PCK package at the "
+"[code]pck_path[/code] internal path (should start with [code]res://[/code])."
+msgstr ""
+
+#: doc/classes/PCKPacker.xml:36
+msgid ""
+"Writes the files specified using all [method add_file] calls since the last "
+"flush. If [code]verbose[/code] is [code]true[/code], a list of files added "
+"will be printed to the console for easier debugging."
+msgstr ""
+
+#: doc/classes/PCKPacker.xml:47
+msgid ""
+"Creates a new PCK file with the name [code]pck_name[/code]. The [code].pck[/"
+"code] file extension isn't added automatically, so it should be part of "
+"[code]pck_name[/code] (even though it's not required)."
+msgstr ""
+
+#: doc/classes/Performance.xml:4
+msgid "Exposes performance-related data."
+msgstr ""
+
+#: doc/classes/Performance.xml:7
+msgid ""
+"This class provides access to a number of different monitors related to "
+"performance, such as memory usage, draw calls, and FPS. These are the same "
+"as the values displayed in the [b]Monitor[/b] tab in the editor's "
+"[b]Debugger[/b] panel. By using the [method get_monitor] method of this "
+"class, you can access this data from your code.\n"
+"You can add custom monitors using the [method add_custom_monitor] method. "
+"Custom monitors are available in [b]Monitor[/b] tab in the editor's "
+"[b]Debugger[/b] panel together with built-in monitors.\n"
+"[b]Note:[/b] A few of these monitors are only available in debug mode and "
+"will always return 0 when used in a release build.\n"
+"[b]Note:[/b] Many of these monitors are not updated in real-time, so there "
+"may be a short delay between changes.\n"
+"[b]Note:[/b] Custom monitors do not support negative values. Negative values "
+"are clamped to 0."
+msgstr ""
+
+#: doc/classes/Performance.xml:26
+msgid ""
+"Adds a custom monitor with name same as id. You can specify the category of "
+"monitor using '/' in id. If there are more than one '/' then default "
+"category is used. Default category is \"Custom\".\n"
+"[codeblock]\n"
+"Performance.add_custom_monitor(\"MyCategory/MyMonitor\", some_callable) # "
+"Adds monitor with name \"MyName\" to category \"MyCategory\"\n"
+"Performance.add_custom_monitor(\"MyMonitor\", some_callable) # Adds monitor "
+"with name \"MyName\" to category \"Custom\"\n"
+"# Note: \"MyCategory/MyMonitor\" and \"MyMonitor\" have same name but "
+"different ids so above code is valid\n"
+"Performance.add_custom_monitor(\"Custom/MyMonitor\", some_callable) # Adds "
+"monitor with name \"MyName\" to category \"Custom\"\n"
+"# Note: \"MyMonitor\" and \"Custom/MyMonitor\" have same name and same "
+"category but different ids so above code is valid\n"
+"Performance.add_custom_monitor(\"MyCategoryOne/MyCategoryTwo/MyMonitor\", "
+"some_callable) # Adds monitor with name \"MyCategoryOne/MyCategoryTwo/"
+"MyMonitor\" to category \"Custom\"\n"
+"[/codeblock]\n"
+"The debugger calls the callable to get the value of custom monitor. The "
+"callable must return a number.\n"
+"Callables are called with arguments supplied in argument array.\n"
+"[b]Note:[/b] It throws an error if given id is already present."
+msgstr ""
+
+#: doc/classes/Performance.xml:46
+msgid ""
+"Returns the value of custom monitor with given id. The callable is called to "
+"get the value of custom monitor.\n"
+"[b]Note:[/b] It throws an error if the given id is absent."
+msgstr ""
+
+#: doc/classes/Performance.xml:54
+msgid "Returns the names of active custom monitors in an array."
+msgstr ""
+
+#: doc/classes/Performance.xml:63
+msgid ""
+"Returns the value of one of the available monitors. You should provide one "
+"of the [enum Monitor] constants as the argument, like this:\n"
+"[codeblock]\n"
+"print(Performance.get_monitor(Performance.TIME_FPS)) # Prints the FPS to the "
+"console\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Performance.xml:73
+msgid "Returns the last tick in which custom monitor was added/removed."
+msgstr ""
+
+#: doc/classes/Performance.xml:82
+msgid ""
+"Returns true if custom monitor with the given id is present otherwise "
+"returns false."
+msgstr ""
+
+#: doc/classes/Performance.xml:91
+msgid ""
+"Removes the custom monitor with given id.\n"
+"[b]Note:[/b] It throws an error if the given id is already absent."
+msgstr ""
+
+#: doc/classes/Performance.xml:98
+msgid "Number of frames per second."
+msgstr ""
+
+#: doc/classes/Performance.xml:101
+msgid "Time it took to complete one frame, in seconds."
+msgstr ""
+
+#: doc/classes/Performance.xml:104
+msgid "Time it took to complete one physics frame, in seconds."
+msgstr ""
+
+#: doc/classes/Performance.xml:107
+msgid ""
+"Static memory currently used, in bytes. Not available in release builds."
+msgstr ""
+
+#: doc/classes/Performance.xml:110
+msgid "Available static memory. Not available in release builds."
+msgstr ""
+
+#: doc/classes/Performance.xml:113
+msgid ""
+"Largest amount of memory the message queue buffer has used, in bytes. The "
+"message queue is used for deferred functions calls and notifications."
+msgstr ""
+
+#: doc/classes/Performance.xml:116
+msgid "Number of objects currently instanced (including nodes)."
+msgstr ""
+
+#: doc/classes/Performance.xml:119
+msgid "Number of resources currently used."
+msgstr ""
+
+#: doc/classes/Performance.xml:122
+msgid ""
+"Number of nodes currently instanced in the scene tree. This also includes "
+"the root node."
+msgstr ""
+
+#: doc/classes/Performance.xml:125
+msgid ""
+"Number of orphan nodes, i.e. nodes which are not parented to a node of the "
+"scene tree."
+msgstr ""
+
+#: doc/classes/Performance.xml:128
+msgid "3D objects drawn per frame."
+msgstr ""
+
+#: doc/classes/Performance.xml:131
+msgid "Vertices drawn per frame. 3D only."
+msgstr ""
+
+#: doc/classes/Performance.xml:134
+msgid "Material changes per frame. 3D only."
+msgstr ""
+
+#: doc/classes/Performance.xml:137
+msgid "Shader changes per frame. 3D only."
+msgstr ""
+
+#: doc/classes/Performance.xml:140
+msgid "Render surface changes per frame. 3D only."
+msgstr ""
+
+#: doc/classes/Performance.xml:143
+msgid "Draw calls per frame. 3D only."
+msgstr ""
+
+#: doc/classes/Performance.xml:146 doc/classes/RenderingServer.xml:3816
+msgid ""
+"The amount of video memory used, i.e. texture and vertex memory combined."
+msgstr ""
+
+#: doc/classes/Performance.xml:149 doc/classes/RenderingServer.xml:3819
+msgid "The amount of texture memory used."
+msgstr ""
+
+#: doc/classes/Performance.xml:152 doc/classes/RenderingServer.xml:3822
+msgid "The amount of vertex memory used."
+msgstr ""
+
+#: doc/classes/Performance.xml:155 doc/classes/RenderingServer.xml:3813
+msgid "Unimplemented in the GLES2 rendering backend, always returns 0."
+msgstr ""
+
+#: doc/classes/Performance.xml:158
+msgid "Number of active [RigidBody2D] nodes in the game."
+msgstr ""
+
+#: doc/classes/Performance.xml:161
+msgid "Number of collision pairs in the 2D physics engine."
+msgstr ""
+
+#: doc/classes/Performance.xml:164
+msgid "Number of islands in the 2D physics engine."
+msgstr ""
+
+#: doc/classes/Performance.xml:167
+msgid "Number of active [RigidBody3D] and [VehicleBody3D] nodes in the game."
+msgstr ""
+
+#: doc/classes/Performance.xml:170
+msgid "Number of collision pairs in the 3D physics engine."
+msgstr ""
+
+#: doc/classes/Performance.xml:173
+msgid "Number of islands in the 3D physics engine."
+msgstr ""
+
+#: doc/classes/Performance.xml:176
+msgid "Output latency of the [AudioServer]."
+msgstr ""
+
+#: doc/classes/Performance.xml:179
+msgid "Represents the size of the [enum Monitor] enum."
+msgstr ""
+
+#: doc/classes/PHashTranslation.xml:4
+msgid "Optimized translation."
+msgstr ""
+
+#: doc/classes/PHashTranslation.xml:7
+msgid ""
+"Optimized translation. Uses real-time compressed translations, which results "
+"in very small dictionaries."
+msgstr ""
+
+#: doc/classes/PHashTranslation.xml:18
+msgid ""
+"Generates and sets an optimized translation from the given [Translation] "
+"resource."
+msgstr ""
+
+#: doc/classes/PhysicalBone3D.xml:67
+msgid "Damps the body's rotation if greater than [code]0[/code]."
+msgstr ""
+
+#: doc/classes/PhysicalBone3D.xml:70 doc/classes/RigidBody3D.xml:139
+msgid "Lock the body's rotation in the X axis."
+msgstr ""
+
+#: doc/classes/PhysicalBone3D.xml:73 doc/classes/RigidBody3D.xml:142
+msgid "Lock the body's rotation in the Y axis."
+msgstr ""
+
+#: doc/classes/PhysicalBone3D.xml:76 doc/classes/RigidBody3D.xml:145
+msgid "Lock the body's rotation in the Z axis."
+msgstr ""
+
+#: doc/classes/PhysicalBone3D.xml:79 doc/classes/RigidBody3D.xml:148
+msgid "Lock the body's movement in the X axis."
+msgstr ""
+
+#: doc/classes/PhysicalBone3D.xml:82 doc/classes/RigidBody3D.xml:151
+msgid "Lock the body's movement in the Y axis."
+msgstr ""
+
+#: doc/classes/PhysicalBone3D.xml:85 doc/classes/RigidBody3D.xml:154
+msgid "Lock the body's movement in the Z axis."
+msgstr ""
+
+#: doc/classes/PhysicalBone3D.xml:88
+msgid "Sets the body's transform."
+msgstr ""
+
+#: doc/classes/PhysicalBone3D.xml:91 doc/classes/PhysicsMaterial.xml:18
+msgid ""
+"The body's bounciness. Values range from [code]0[/code] (no bounce) to "
+"[code]1[/code] (full bounciness)."
+msgstr ""
+
+#: doc/classes/PhysicalBone3D.xml:94
+msgid ""
+"If [code]true[/code], the body is deactivated when there is no movement, so "
+"it will not take part in the simulation until it is awaken by an external "
+"force."
+msgstr ""
+
+#: doc/classes/PhysicalBone3D.xml:97
+msgid ""
+"The body's friction, from [code]0[/code] (frictionless) to [code]1[/code] "
+"(max friction)."
+msgstr ""
+
+#: doc/classes/PhysicalBone3D.xml:100
+msgid ""
+"This is multiplied by the global 3D gravity setting found in [b]Project > "
+"Project Settings > Physics > 3d[/b] to produce the body's gravity. For "
+"example, a value of 1 will be normal gravity, 2 will apply double gravity, "
+"and 0.5 will apply half gravity to this object."
+msgstr ""
+
+#: doc/classes/PhysicalBone3D.xml:103
+msgid "Sets the joint's transform."
+msgstr ""
+
+#: doc/classes/PhysicalBone3D.xml:106
+msgid "Sets the joint's rotation in radians."
+msgstr ""
+
+#: doc/classes/PhysicalBone3D.xml:109
+msgid "Sets the joint's rotation in degrees."
+msgstr ""
+
+#: doc/classes/PhysicalBone3D.xml:112
+msgid "Sets the joint type. See [enum JointType] for possible values."
+msgstr ""
+
+#: doc/classes/PhysicalBone3D.xml:115
+msgid "Damps the body's movement if greater than [code]0[/code]."
+msgstr ""
+
+#: doc/classes/PhysicalBone3D.xml:118 doc/classes/RigidBody2D.xml:159
+#: doc/classes/RigidBody3D.xml:183
+msgid "The body's mass."
+msgstr ""
+
+#: doc/classes/PhysicalBone3D.xml:121 doc/classes/RigidBody3D.xml:196
+msgid ""
+"The body's weight based on its mass and the global 3D gravity. Global values "
+"are set in [b]Project > Project Settings > Physics > 3d[/b]."
+msgstr ""
+
+#: doc/classes/PhysicalSkyMaterial.xml:4
+msgid "[Sky] [Material] used for a physically based sky."
+msgstr ""
+
+#: doc/classes/PhysicalSkyMaterial.xml:7
+msgid ""
+"The [PhysicalSkyMaterial] uses the Preetham analytic daylight model to draw "
+"a sky based on physical properties. This results in a substantially more "
+"realistic sky than the [ProceduralSkyMaterial], but it is slightly slower "
+"and less flexible.\n"
+"The [PhysicalSkyMaterial] only supports one sun. The color, energy, and "
+"direction of the sun are taken from the first [DirectionalLight3D] in the "
+"scene tree.\n"
+"As it is based on a daylight model, the sky fades to black as the sunset "
+"ends. If you want a full day/night cycle, you will have to add a night sky "
+"by converting this to a [ShaderMaterial] and adding a night sky directly "
+"into the resulting shader."
+msgstr ""
+
+#: doc/classes/PhysicalSkyMaterial.xml:17
+msgid ""
+"Sets the amount of dithering to use. Dithering helps reduce banding that "
+"appears from the smooth changes in color in the sky. Use the lowest value "
+"possible, higher amounts may add fuzziness to the sky."
+msgstr ""
+
+#: doc/classes/PhysicalSkyMaterial.xml:20
+msgid ""
+"Sets the exposure of the sky. Higher exposure values make the entire sky "
+"brighter."
+msgstr ""
+
+#: doc/classes/PhysicalSkyMaterial.xml:23
+msgid ""
+"Modulates the [Color] on the bottom half of the sky to represent the ground."
+msgstr ""
+
+#: doc/classes/PhysicalSkyMaterial.xml:26
+msgid ""
+"Controls the strength of mie scattering for the sky. Mie scattering results "
+"from light colliding with larger particles (like water). On earth, mie "
+"scattering results in a whiteish color around the sun and horizon."
+msgstr ""
+
+#: doc/classes/PhysicalSkyMaterial.xml:29
+msgid ""
+"Controls the [Color] of the mie scattering effect. While not physically "
+"accurate, this allows for the creation of alien looking planets."
+msgstr ""
+
+#: doc/classes/PhysicalSkyMaterial.xml:32
+msgid ""
+"Controls the direction of the mie scattering. A value of [code]1[/code] "
+"means that when light hits a particle it passing through straight forward. A "
+"value of [code]-1[/code] means that all light is scatter backwards."
+msgstr ""
+
+#: doc/classes/PhysicalSkyMaterial.xml:35
+msgid ""
+"[Texture2D] for the night sky. This is added to the sky, so if it is bright "
+"enough, it may be visible during the day."
+msgstr ""
+
+#: doc/classes/PhysicalSkyMaterial.xml:38
+msgid ""
+"Controls the strength of the rayleigh scattering. Rayleigh scattering "
+"results from light colliding with small particles. It is responsible for the "
+"blue color of the sky."
+msgstr ""
+
+#: doc/classes/PhysicalSkyMaterial.xml:41
+msgid ""
+"Controls the [Color] of the rayleigh scattering. While not physically "
+"accurate, this allows for the creation of alien looking planets. For "
+"example, setting this to a red [Color] results in a mars looking atmosphere "
+"with a corresponding blue sunset."
+msgstr ""
+
+#: doc/classes/PhysicalSkyMaterial.xml:44
+msgid ""
+"Sets the size of the sun disk. Default value is based on Sol's perceived "
+"size from Earth."
+msgstr ""
+
+#: doc/classes/PhysicalSkyMaterial.xml:47
+msgid ""
+"Sets the thickness of the atmosphere. High turbidity creates a foggy looking "
+"atmosphere, while a low turbidity results in a clearer atmosphere."
+msgstr ""
+
+#: doc/classes/PhysicsBody2D.xml:4
+msgid "Base class for all objects affected by physics in 2D space."
+msgstr ""
+
+#: doc/classes/PhysicsBody2D.xml:7
+msgid ""
+"PhysicsBody2D is an abstract base class for implementing a physics body. All "
+"*Body2D types inherit from it."
+msgstr ""
+
+#: doc/classes/PhysicsBody2D.xml:19 doc/classes/PhysicsBody3D.xml:19
+#: doc/classes/SoftBody3D.xml:19
+msgid "Adds a body to the list of bodies that this body can't collide with."
+msgstr ""
+
+#: doc/classes/PhysicsBody2D.xml:26 doc/classes/PhysicsBody3D.xml:26
+#: doc/classes/SoftBody3D.xml:26
+msgid ""
+"Returns an array of nodes that were added as collision exceptions for this "
+"body."
+msgstr ""
+
+#: doc/classes/PhysicsBody2D.xml:53 doc/classes/PhysicsBody3D.xml:53
+#: doc/classes/SoftBody3D.xml:53
+msgid ""
+"Removes a body from the list of bodies that this body can't collide with."
+msgstr ""
+
+#: doc/classes/PhysicsBody2D.xml:64 doc/classes/PhysicsBody3D.xml:64
+msgid ""
+"Sets individual bits on the [member collision_layer] bitmask. Use this if "
+"you only need to change one layer's value."
+msgstr ""
+
+#: doc/classes/PhysicsBody2D.xml:75 doc/classes/PhysicsBody3D.xml:75
+msgid ""
+"Sets individual bits on the [member collision_mask] bitmask. Use this if you "
+"only need to change one layer's value."
+msgstr ""
+
+#: doc/classes/PhysicsBody2D.xml:81 doc/classes/PhysicsBody3D.xml:81
+msgid ""
+"The physics layers this area is in.\n"
+"Collidable objects can exist in any of 32 different layers. These layers "
+"work like a tagging system, and are not visual. A collidable can use these "
+"layers to select with which objects it can collide, using the [member "
+"collision_mask] property.\n"
+"A contact is detected if object A is in any of the layers that object B "
+"scans, or object B is in any layer scanned by object A."
+msgstr ""
+
+#: doc/classes/PhysicsBody2D.xml:86 doc/classes/PhysicsBody3D.xml:86
+msgid "The physics layers this area scans for collisions."
+msgstr ""
+
+#: doc/classes/PhysicsBody2D.xml:90
+msgid ""
+"Both [member collision_layer] and [member collision_mask]. Returns [member "
+"collision_layer] when accessed. Updates [member collision_layer] and [member "
+"collision_mask] when modified."
+msgstr ""
+
+#: doc/classes/PhysicsBody3D.xml:4
+msgid "Base class for all objects affected by physics in 3D space."
+msgstr ""
+
+#: doc/classes/PhysicsBody3D.xml:7
+msgid ""
+"PhysicsBody3D is an abstract base class for implementing a physics body. All "
+"*Body types inherit from it."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:4
+msgid "Direct access object to a physics body in the [PhysicsServer2D]."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:7
+msgid ""
+"Provides direct access to a physics body in the [PhysicsServer2D], allowing "
+"safe changes to physics properties. This object is passed via the direct "
+"state callback of rigid/character bodies, and is intended for changing the "
+"direct state of that body. See [method RigidBody2D._integrate_forces]."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:10
+#: doc/classes/PhysicsDirectSpaceState2D.xml:10
+#: doc/classes/PhysicsDirectSpaceState3D.xml:10 doc/classes/RayCast2D.xml:14
+#: doc/classes/RayCast3D.xml:14 doc/classes/World2D.xml:10
+#: doc/classes/World3D.xml:10
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/physics/ray-casting.html"
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:19 doc/classes/RigidBody2D.xml:31
+msgid "Adds a constant directional force without affecting rotation."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:30
+#: doc/classes/PhysicsDirectBodyState3D.xml:30 doc/classes/RigidBody2D.xml:42
+msgid ""
+"Adds a positioned force to the body. Both the force and the offset from the "
+"body origin are in global coordinates."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:39 doc/classes/RigidBody2D.xml:51
+msgid "Adds a constant rotational force."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:48 doc/classes/RigidBody2D.xml:60
+msgid "Applies a directional impulse without affecting rotation."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:59
+msgid ""
+"Applies a positioned impulse to the body. 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). The offset uses the rotation of "
+"the global coordinate system, but is centered at the object's origin."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:68 doc/classes/RigidBody2D.xml:80
+msgid "Applies a rotational impulse to the body."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:77
+#: doc/classes/PhysicsDirectBodyState3D.xml:78
+msgid "Returns the collider's [RID]."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:86
+#: doc/classes/PhysicsDirectBodyState3D.xml:87
+msgid "Returns the collider's object id."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:95
+msgid ""
+"Returns the collider object. This depends on how it was created (will return "
+"a scene node if such was used to create it)."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:104
+#: doc/classes/PhysicsDirectBodyState3D.xml:105
+msgid "Returns the contact position in the collider."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:113
+#: doc/classes/PhysicsDirectBodyState3D.xml:114
+msgid "Returns the collider's shape index."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:122
+msgid ""
+"Returns the collided shape's metadata. This metadata is different from "
+"[method Object.get_meta], and is set with [method PhysicsServer2D."
+"shape_set_data]."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:131
+#: doc/classes/PhysicsDirectBodyState3D.xml:123
+msgid "Returns the linear velocity vector at the collider's contact point."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:138
+msgid ""
+"Returns the number of contacts this body has with other bodies.\n"
+"[b]Note:[/b] By default, this returns 0 unless bodies are configured to "
+"monitor contacts. See [member RigidBody2D.contact_monitor]."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:148
+#: doc/classes/PhysicsDirectBodyState3D.xml:149
+msgid "Returns the local normal at the contact point."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:157
+#: doc/classes/PhysicsDirectBodyState3D.xml:158
+msgid "Returns the local position of the contact point."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:166
+#: doc/classes/PhysicsDirectBodyState3D.xml:167
+msgid "Returns the local shape index of the collision."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:173
+#: doc/classes/PhysicsDirectBodyState3D.xml:174
+msgid "Returns the current state of the space, useful for queries."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:180
+#: doc/classes/PhysicsDirectBodyState3D.xml:181
+msgid "Calls the built-in force integration code."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:186
+#: doc/classes/PhysicsDirectBodyState3D.xml:187 doc/classes/RigidBody2D.xml:121
+msgid "The body's rotational velocity."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:189
+#: doc/classes/PhysicsDirectBodyState3D.xml:192
+msgid "The inverse of the inertia of the body."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:192
+#: doc/classes/PhysicsDirectBodyState3D.xml:195
+msgid "The inverse of the mass of the body."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:195
+#: doc/classes/PhysicsDirectBodyState3D.xml:198 doc/classes/RigidBody2D.xml:156
+msgid "The body's linear velocity."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:198
+#: doc/classes/PhysicsDirectBodyState3D.xml:203
+msgid "If [code]true[/code], this body is currently sleeping (not active)."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:201
+#: doc/classes/PhysicsDirectBodyState3D.xml:206
+msgid "The timestep (delta) used for the simulation."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:204
+#: doc/classes/PhysicsDirectBodyState3D.xml:209
+msgid ""
+"The rate at which the body stops rotating, if there are not any other forces "
+"moving it."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:207
+#: doc/classes/PhysicsDirectBodyState3D.xml:212
+msgid "The total gravity vector being currently applied to this body."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:210
+#: doc/classes/PhysicsDirectBodyState3D.xml:215
+msgid ""
+"The rate at which the body stops moving, if there are not any other forces "
+"moving it."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState2D.xml:213
+#: doc/classes/PhysicsDirectBodyState3D.xml:218
+msgid "The body's transformation matrix."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState3D.xml:4
+msgid "Direct access object to a physics body in the [PhysicsServer3D]."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState3D.xml:7
+msgid ""
+"Provides direct access to a physics body in the [PhysicsServer3D], allowing "
+"safe changes to physics properties. This object is passed via the direct "
+"state callback of rigid/character bodies, and is intended for changing the "
+"direct state of that body. See [method RigidBody3D._integrate_forces]."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState3D.xml:18
+msgid ""
+"Adds a constant directional force without affecting rotation.\n"
+"This is equivalent to [code]add_force(force, Vector3(0,0,0))[/code]."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState3D.xml:39
+msgid "Adds a constant rotational force without affecting position."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState3D.xml:48
+msgid ""
+"Applies a single directional impulse without affecting rotation.\n"
+"This is equivalent to [code]apply_impulse(Vector3(0, 0, 0), impulse)[/code]."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState3D.xml:60
+msgid ""
+"Applies a positioned impulse to the body. 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. The "
+"position uses the rotation of the global coordinate system, but is centered "
+"at the object's origin."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState3D.xml:69
+msgid ""
+"Apply a torque impulse (which will be affected by the body mass and shape). "
+"This will rotate the body around the vector [code]j[/code] passed as "
+"parameter."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState3D.xml:96
+msgid "Returns the collider object."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState3D.xml:130
+msgid ""
+"Returns the number of contacts this body has with other bodies.\n"
+"[b]Note:[/b] By default, this returns 0 unless bodies are configured to "
+"monitor contacts. See [member RigidBody3D.contact_monitor]."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState3D.xml:140
+msgid "Impulse created by the contact. Only implemented for Bullet physics."
+msgstr ""
+
+#: doc/classes/PhysicsDirectSpaceState2D.xml:4
+msgid "Direct access object to a space in the [PhysicsServer2D]."
+msgstr ""
+
+#: doc/classes/PhysicsDirectSpaceState2D.xml:7
+msgid ""
+"Direct access object to a space in the [PhysicsServer2D]. It's used mainly "
+"to do queries against objects and areas residing in a given space."
+msgstr ""
+
+#: doc/classes/PhysicsDirectSpaceState2D.xml:19
+msgid ""
+"Checks how far the shape can travel toward a point. If the shape can not "
+"move, the array will be empty.\n"
+"[b]Note:[/b] Both the shape and the motion are supplied through a "
+"[PhysicsShapeQueryParameters2D] object. The method will return an array with "
+"two floats between 0 and 1, both representing a fraction of [code]motion[/"
+"code]. The first is how far the shape can move without triggering a "
+"collision, and the second is the point at which a collision will occur. If "
+"no collision is detected, the returned array will be [code][1, 1][/code]."
+msgstr ""
+
+#: doc/classes/PhysicsDirectSpaceState2D.xml:31
+msgid ""
+"Checks the intersections of a shape, given through a "
+"[PhysicsShapeQueryParameters2D] object, against the space. The resulting "
+"array contains a list of points where the shape intersects another. Like "
+"with [method intersect_shape], the number of returned results can be limited "
+"to save processing time."
+msgstr ""
+
+#: doc/classes/PhysicsDirectSpaceState2D.xml:40
+msgid ""
+"Checks the intersections of a shape, given through a "
+"[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.\n"
+"[b]Note:[/b] This method does not take into account the [code]motion[/code] "
+"property of the object. The returned object is a dictionary containing the "
+"following fields:\n"
+"[code]collider_id[/code]: The colliding object's ID.\n"
+"[code]linear_velocity[/code]: The colliding object's velocity [Vector2]. If "
+"the object is an [Area2D], the result is [code](0, 0)[/code].\n"
+"[code]metadata[/code]: The intersecting shape's metadata. This metadata is "
+"different from [method Object.get_meta], and is set with [method "
+"PhysicsServer2D.shape_set_data].\n"
+"[code]normal[/code]: The object's surface normal at the intersection point.\n"
+"[code]point[/code]: The intersection point.\n"
+"[code]rid[/code]: The intersecting object's [RID].\n"
+"[code]shape[/code]: The shape index of the colliding shape."
+msgstr ""
+
+#: doc/classes/PhysicsDirectSpaceState2D.xml:67
+msgid ""
+"Checks whether a point is inside any shape. The shapes the point is inside "
+"of are returned in an array containing dictionaries with the following "
+"fields:\n"
+"[code]collider[/code]: The colliding object.\n"
+"[code]collider_id[/code]: The colliding object's ID.\n"
+"[code]metadata[/code]: The intersecting shape's metadata. This metadata is "
+"different from [method Object.get_meta], and is set with [method "
+"PhysicsServer2D.shape_set_data].\n"
+"[code]rid[/code]: The intersecting object's [RID].\n"
+"[code]shape[/code]: The shape index of the colliding shape.\n"
+"Additionally, the method can take an [code]exclude[/code] array of objects "
+"or [RID]s that are to be excluded from collisions, a [code]collision_mask[/"
+"code] bitmask representing the physics layers to check in, or booleans to "
+"determine if the ray should collide with [PhysicsBody2D]s or [Area2D]s, "
+"respectively."
+msgstr ""
+
+#: doc/classes/PhysicsDirectSpaceState2D.xml:112
+msgid ""
+"Intersects a ray in a given space. The returned object is a dictionary with "
+"the following fields:\n"
+"[code]collider[/code]: The colliding object.\n"
+"[code]collider_id[/code]: The colliding object's ID.\n"
+"[code]metadata[/code]: The intersecting shape's metadata. This metadata is "
+"different from [method Object.get_meta], and is set with [method "
+"PhysicsServer2D.shape_set_data].\n"
+"[code]normal[/code]: The object's surface normal at the intersection point.\n"
+"[code]position[/code]: The intersection point.\n"
+"[code]rid[/code]: The intersecting object's [RID].\n"
+"[code]shape[/code]: The shape index of the colliding shape.\n"
+"If the ray did not intersect anything, then an empty dictionary is returned "
+"instead.\n"
+"Additionally, the method can take an [code]exclude[/code] array of objects "
+"or [RID]s that are to be excluded from collisions, a [code]collision_mask[/"
+"code] bitmask representing the physics layers to check in, or booleans to "
+"determine if the ray should collide with [PhysicsBody2D]s or [Area2D]s, "
+"respectively."
+msgstr ""
+
+#: doc/classes/PhysicsDirectSpaceState2D.xml:132
+msgid ""
+"Checks the intersections of a shape, given through a "
+"[PhysicsShapeQueryParameters2D] object, against the space.\n"
+"[b]Note:[/b] This method does not take into account the [code]motion[/code] "
+"property of the object. The intersected shapes are returned in an array "
+"containing dictionaries with the following fields:\n"
+"[code]collider[/code]: The colliding object.\n"
+"[code]collider_id[/code]: The colliding object's ID.\n"
+"[code]metadata[/code]: The intersecting shape's metadata. This metadata is "
+"different from [method Object.get_meta], and is set with [method "
+"PhysicsServer2D.shape_set_data].\n"
+"[code]rid[/code]: The intersecting object's [RID].\n"
+"[code]shape[/code]: The shape index of the colliding shape.\n"
+"The number of intersections can be limited with the [code]max_results[/code] "
+"parameter, to reduce the processing time."
+msgstr ""
+
+#: doc/classes/PhysicsDirectSpaceState3D.xml:4
+msgid "Direct access object to a space in the [PhysicsServer3D]."
+msgstr ""
+
+#: doc/classes/PhysicsDirectSpaceState3D.xml:7
+msgid ""
+"Direct access object to a space in the [PhysicsServer3D]. It's used mainly "
+"to do queries against objects and areas residing in a given space."
+msgstr ""
+
+#: doc/classes/PhysicsDirectSpaceState3D.xml:21
+msgid ""
+"Checks whether the shape can travel to a point. The method will return an "
+"array with two floats between 0 and 1, both representing a fraction of "
+"[code]motion[/code]. The first is how far the shape can move without "
+"triggering a collision, and the second is the point at which a collision "
+"will occur. If no collision is detected, the returned array will be [code]"
+"[1, 1][/code].\n"
+"If the shape can not move, the returned array will be [code][0, 0][/code] "
+"under Bullet, and empty under GodotPhysics3D."
+msgstr ""
+
+#: doc/classes/PhysicsDirectSpaceState3D.xml:33
+msgid ""
+"Checks the intersections of a shape, given through a "
+"[PhysicsShapeQueryParameters3D] object, against the space. The resulting "
+"array contains a list of points where the shape intersects another. Like "
+"with [method intersect_shape], the number of returned results can be limited "
+"to save processing time."
+msgstr ""
+
+#: doc/classes/PhysicsDirectSpaceState3D.xml:42
+msgid ""
+"Checks the intersections of a shape, given through a "
+"[PhysicsShapeQueryParameters3D] 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:\n"
+"[code]collider_id[/code]: The colliding object's ID.\n"
+"[code]linear_velocity[/code]: The colliding object's velocity [Vector3]. If "
+"the object is an [Area3D], the result is [code](0, 0, 0)[/code].\n"
+"[code]normal[/code]: The object's surface normal at the intersection point.\n"
+"[code]point[/code]: The intersection point.\n"
+"[code]rid[/code]: The intersecting object's [RID].\n"
+"[code]shape[/code]: The shape index of the colliding shape.\n"
+"If the shape did not intersect anything, then an empty dictionary is "
+"returned instead."
+msgstr ""
+
+#: doc/classes/PhysicsDirectSpaceState3D.xml:68
+msgid ""
+"Intersects a ray in a given space. The returned object is a dictionary with "
+"the following fields:\n"
+"[code]collider[/code]: The colliding object.\n"
+"[code]collider_id[/code]: The colliding object's ID.\n"
+"[code]normal[/code]: The object's surface normal at the intersection point.\n"
+"[code]position[/code]: The intersection point.\n"
+"[code]rid[/code]: The intersecting object's [RID].\n"
+"[code]shape[/code]: The shape index of the colliding shape.\n"
+"If the ray did not intersect anything, then an empty dictionary is returned "
+"instead.\n"
+"Additionally, the method can take an [code]exclude[/code] array of objects "
+"or [RID]s that are to be excluded from collisions, a [code]collision_mask[/"
+"code] bitmask representing the physics layers to check in, or booleans to "
+"determine if the ray should collide with [PhysicsBody3D]s or [Area3D]s, "
+"respectively."
+msgstr ""
+
+#: doc/classes/PhysicsDirectSpaceState3D.xml:87
+msgid ""
+"Checks the intersections of a shape, given through a "
+"[PhysicsShapeQueryParameters3D] object, against the space. The intersected "
+"shapes are returned in an array containing dictionaries with the following "
+"fields:\n"
+"[code]collider[/code]: The colliding object.\n"
+"[code]collider_id[/code]: The colliding object's ID.\n"
+"[code]rid[/code]: The intersecting object's [RID].\n"
+"[code]shape[/code]: The shape index of the colliding shape.\n"
+"The number of intersections can be limited with the [code]max_results[/code] "
+"parameter, to reduce the processing time."
+msgstr ""
+
+#: doc/classes/PhysicsMaterial.xml:4
+msgid "A material for physics properties."
+msgstr ""
+
+#: doc/classes/PhysicsMaterial.xml:7
+msgid ""
+"Provides a means of modifying the collision properties of a [PhysicsBody3D]."
+msgstr ""
+
+#: doc/classes/PhysicsMaterial.xml:15
+msgid ""
+"If [code]true[/code], subtracts the bounciness from the colliding object's "
+"bounciness instead of adding it."
+msgstr ""
+
+#: doc/classes/PhysicsMaterial.xml:21
+msgid ""
+"The body's friction. Values range from [code]0[/code] (frictionless) to "
+"[code]1[/code] (maximum friction)."
+msgstr ""
+
+#: doc/classes/PhysicsMaterial.xml:24
+msgid ""
+"If [code]true[/code], the physics engine will use the friction of the object "
+"marked as \"rough\" when two objects collide. If [code]false[/code], the "
+"physics engine will use the lowest friction of all colliding objects "
+"instead. If [code]true[/code] for both colliding objects, the physics engine "
+"will use the highest friction."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:4
+msgid "Server interface for low-level 2D physics access."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:7
+msgid ""
+"PhysicsServer2D is the server responsible for all 2D physics. It can create "
+"many kinds of physics objects, but does not insert them on the node tree."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:24 doc/classes/PhysicsServer3D.xml:24
+msgid ""
+"Adds a shape to the area, along with a transform matrix. Shapes are usually "
+"referenced by their index, so you should track which shape has a given index."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:45 doc/classes/PhysicsServer2D.xml:418
+#: doc/classes/PhysicsServer3D.xml:35 doc/classes/PhysicsServer3D.xml:409
+msgid ""
+"Assigns the area to a descendant of [Object], so it can exist in the node "
+"tree."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:54 doc/classes/PhysicsServer3D.xml:44
+msgid ""
+"Removes all shapes from an area. It does not delete the shapes, so they can "
+"be reassigned later."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:61
+msgid "Creates an [Area2D]."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:78 doc/classes/PhysicsServer2D.xml:505
+#: doc/classes/PhysicsServer3D.xml:60 doc/classes/PhysicsServer3D.xml:492
+msgid "Gets the instance ID of the object the area is assigned to."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:89
+msgid ""
+"Returns an area parameter value. See [enum AreaParameter] for a list of "
+"available parameters."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:100 doc/classes/PhysicsServer3D.xml:82
+msgid "Returns the [RID] of the nth shape of an area."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:109 doc/classes/PhysicsServer3D.xml:91
+msgid "Returns the number of shapes assigned to an area."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:120 doc/classes/PhysicsServer3D.xml:102
+msgid "Returns the transform matrix of a shape within an area."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:129 doc/classes/PhysicsServer3D.xml:111
+msgid "Returns the space assigned to the area."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:138 doc/classes/PhysicsServer3D.xml:120
+msgid "Returns the space override mode for the area."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:147 doc/classes/PhysicsServer3D.xml:129
+msgid "Returns the transform matrix for an area."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:158 doc/classes/PhysicsServer3D.xml:149
+msgid ""
+"Removes a shape from an area. It does not delete the shape, so it can be "
+"reassigned later."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:181 doc/classes/PhysicsServer3D.xml:172
+msgid "Assigns the area to one or many physics layers."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:192 doc/classes/PhysicsServer3D.xml:183
+msgid "Sets which physics layers the area will monitor."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:205 doc/classes/PhysicsServer3D.xml:196
+msgid ""
+"Sets the function to call when any body/area enters or exits the area. This "
+"callback will be called for any object interacting with the area, and takes "
+"five parameters:\n"
+"1: [constant AREA_BODY_ADDED] or [constant AREA_BODY_REMOVED], depending on "
+"whether the object entered or exited the area.\n"
+"2: [RID] of the object that entered/exited the area.\n"
+"3: Instance ID of the object that entered/exited the area.\n"
+"4: The shape index of the object that entered/exited the area.\n"
+"5: The shape index of the area where the object entered/exited."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:233
+msgid ""
+"Sets the value for an area parameter. See [enum AreaParameter] for a list of "
+"available parameters."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:246 doc/classes/PhysicsServer3D.xml:248
+msgid ""
+"Substitutes a given area shape by another. The old shape is selected by its "
+"index, the new one by its [RID]."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:259
+msgid "Disables a given shape in an area."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:272 doc/classes/PhysicsServer3D.xml:273
+msgid "Sets the transform matrix for an area shape."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:283 doc/classes/PhysicsServer3D.xml:284
+msgid "Assigns a space to the area."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:294
+msgid ""
+"Sets the space override mode for the area. See [enum AreaSpaceOverrideMode] "
+"for a list of available modes."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:305 doc/classes/PhysicsServer3D.xml:306
+msgid "Sets the transform matrix for an area."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:326 doc/classes/PhysicsServer3D.xml:327
+msgid "Adds a body to the list of bodies exempt from collisions."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:339
+msgid ""
+"Adds a positioned force to the applied force and torque. As with [method "
+"body_apply_impulse], both the force and the offset from the body origin are "
+"in global coordinates. A force differs from an impulse in that, while the "
+"two are forces, the impulse clears itself after being applied."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:354 doc/classes/PhysicsServer3D.xml:354
+msgid ""
+"Adds a shape to the body, along with a transform matrix. Shapes are usually "
+"referenced by their index, so you should track which shape has a given index."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:387
+msgid ""
+"Adds a positioned impulse to the applied force and torque. Both the force "
+"and the offset from the body origin are in global coordinates."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:427 doc/classes/PhysicsServer3D.xml:418
+msgid "Removes all shapes from a body."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:434
+msgid "Creates a physics body."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:451 doc/classes/PhysicsServer3D.xml:438
+msgid "Returns the physics layer or layers a body belongs to."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:460
+msgid "Returns the physics layer or layers a body can collide with."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:469
+msgid "Returns the continuous collision detection mode."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:478
+msgid "Returns the [PhysicsDirectBodyState2D] of the body."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:487 doc/classes/PhysicsServer3D.xml:474
+msgid ""
+"Returns the maximum contacts that can be reported. See [method "
+"body_set_max_contacts_reported]."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:496 doc/classes/PhysicsServer3D.xml:483
+msgid "Returns the body mode."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:516
+msgid ""
+"Returns the value of a body parameter. See [enum BodyParameter] for a list "
+"of available parameters."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:527 doc/classes/PhysicsServer3D.xml:514
+msgid "Returns the [RID] of the nth shape of a body."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:536 doc/classes/PhysicsServer3D.xml:523
+msgid "Returns the number of shapes assigned to a body."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:547
+msgid "Returns the metadata of a shape of a body."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:558 doc/classes/PhysicsServer3D.xml:534
+msgid "Returns the transform matrix of a body shape."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:567 doc/classes/PhysicsServer3D.xml:543
+msgid "Returns the [RID] of the space assigned to a body."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:578 doc/classes/PhysicsServer3D.xml:554
+msgid "Returns a body state."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:587 doc/classes/PhysicsServer3D.xml:582
+msgid ""
+"Returns whether a body uses a callback function to calculate its own physics "
+"(see [method body_set_force_integration_callback])."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:598
+msgid "Removes a body from the list of bodies exempt from collisions."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:609 doc/classes/PhysicsServer3D.xml:614
+msgid ""
+"Removes a shape from a body. The shape is not deleted, so it can be reused "
+"afterwards."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:620 doc/classes/PhysicsServer3D.xml:637
+#: doc/classes/RigidBody3D.xml:127
+msgid ""
+"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."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:631 doc/classes/PhysicsServer3D.xml:648
+msgid "Sets the physics layer or layers a body belongs to."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:642 doc/classes/PhysicsServer3D.xml:659
+msgid "Sets the physics layer or layers a body can collide with."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:653
+msgid ""
+"Sets the continuous collision detection mode using one of the [enum CCDMode] "
+"constants.\n"
+"Continuous collision detection tries to predict where a moving body will "
+"collide, instead of moving it and correcting its movement if it collided."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:669 doc/classes/PhysicsServer3D.xml:686
+msgid ""
+"Sets the function used to calculate physics for an object, if that object "
+"allows it (see [method body_set_omit_force_integration])."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:680 doc/classes/PhysicsServer3D.xml:707
+msgid ""
+"Sets the maximum contacts to report. Bodies can keep a log of the contacts "
+"with other bodies, this is enabled by setting the maximum amount of contacts "
+"reported to a number greater than 0."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:691
+msgid "Sets the body mode using one of the [enum BodyMode] constants."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:702 doc/classes/PhysicsServer3D.xml:729
+msgid ""
+"Sets whether a body uses a callback function to calculate its own physics "
+"(see [method body_set_force_integration_callback])."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:715
+msgid ""
+"Sets a body parameter. See [enum BodyParameter] for a list of available "
+"parameters."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:728 doc/classes/PhysicsServer3D.xml:766
+msgid ""
+"Substitutes a given body shape by another. The old shape is selected by its "
+"index, the new one by its [RID]."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:743
+msgid ""
+"Enables one way collision on body if [code]enable[/code] is [code]true[/"
+"code]."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:756
+msgid "Disables shape in body if [code]disable[/code] is [code]true[/code]."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:769
+msgid ""
+"Sets metadata of a shape within a body. This metadata is different from "
+"[method Object.set_meta], and can be retrieved on shape queries."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:782 doc/classes/PhysicsServer3D.xml:791
+msgid "Sets the transform matrix for a body shape."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:793 doc/classes/PhysicsServer3D.xml:802
+msgid "Assigns a space to the body (see [method space_create])."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:806
+msgid "Sets a body state using one of the [enum BodyState] constants."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:825
+msgid ""
+"Returns [code]true[/code] if a collision would result from moving in the "
+"given direction from a given point in space. Margin increases the size of "
+"the shapes involved in the collision detection. [PhysicsTestMotionResult2D] "
+"can be passed to return additional information in."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:864
+msgid ""
+"Creates a damped spring joint between two bodies. If not specified, the "
+"second body is assumed to be the joint itself."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:875
+msgid ""
+"Returns the value of a damped spring joint parameter. See [enum "
+"DampedSpringParam] for a list of available parameters."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:888
+msgid ""
+"Sets a damped spring joint parameter. See [enum DampedSpringParam] for a "
+"list of available parameters."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:897
+msgid ""
+"Destroys any of the objects created by PhysicsServer2D. If the [RID] passed "
+"is not one of the objects that can be created by PhysicsServer2D, an error "
+"will be sent to the console."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:906
+msgid ""
+"Returns information about the current state of the 2D physics engine. See "
+"[enum ProcessInfo] for a list of available states."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:923
+msgid ""
+"Creates a groove joint between two bodies. If not specified, the bodies are "
+"assumed to be the joint itself."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:934
+msgid "Returns the value of a joint parameter."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:943
+msgid "Returns a joint's type (see [enum JointType])."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:956
+msgid ""
+"Sets a joint parameter. See [enum JointParam] for a list of available "
+"parameters."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:975
+msgid ""
+"Creates a pin joint between two bodies. If not specified, the second body is "
+"assumed to be the joint itself."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1002
+msgid "Activates or deactivates the 2D physics engine."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1011 doc/classes/PhysicsServer3D.xml:1156
+msgid "Returns the shape data."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1020
+msgid "Returns a shape's type (see [enum ShapeType])."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1031 doc/classes/PhysicsServer3D.xml:1176
+msgid ""
+"Sets the shape data that defines its shape and size. The data to be passed "
+"depends on the kind of shape created [method shape_get_type]."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1038 doc/classes/PhysicsServer3D.xml:1207
+msgid ""
+"Creates a space. A space is a collection of parameters for the physics "
+"engine that can be assigned to an area or a body. It can be assigned to an "
+"area with [method area_set_space], or to a body with [method body_set_space]."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1047
+msgid ""
+"Returns the state of a space, a [PhysicsDirectSpaceState2D]. This object can "
+"be used to make collision/intersection queries."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1058 doc/classes/PhysicsServer3D.xml:1227
+msgid "Returns the value of a space parameter."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1067 doc/classes/PhysicsServer3D.xml:1236
+msgid "Returns whether the space is active."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1078 doc/classes/PhysicsServer3D.xml:1247
+msgid ""
+"Marks a space as active. It will not have an effect, unless it is assigned "
+"to an area or body."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1091
+msgid ""
+"Sets the value for a space parameter. See [enum SpaceParameter] for a list "
+"of available parameters."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1097 doc/classes/PhysicsServer3D.xml:1602
+msgid ""
+"Constant to set/get the maximum distance a pair of bodies has to move before "
+"their collision status has to be recalculated."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1100 doc/classes/PhysicsServer3D.xml:1605
+msgid ""
+"Constant to set/get the maximum distance a shape can be from another before "
+"they are considered separated."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1103 doc/classes/PhysicsServer3D.xml:1608
+msgid ""
+"Constant to set/get the maximum distance a shape can penetrate another shape "
+"before it is considered a collision."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1106 doc/classes/PhysicsServer3D.xml:1611
+msgid ""
+"Constant to set/get the threshold linear velocity of activity. A body marked "
+"as potentially inactive for both linear and angular velocity will be put to "
+"sleep after the time given."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1109 doc/classes/PhysicsServer3D.xml:1614
+msgid ""
+"Constant to set/get the threshold angular velocity of activity. A body "
+"marked as potentially inactive for both linear and angular velocity will be "
+"put to sleep after the time given."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1112 doc/classes/PhysicsServer3D.xml:1617
+msgid ""
+"Constant to set/get the maximum time of activity. A body marked as "
+"potentially inactive for both linear and angular velocity will be put to "
+"sleep after this time."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1115 doc/classes/PhysicsServer3D.xml:1622
+msgid ""
+"Constant to set/get the default solver bias for all physics constraints. A "
+"solver bias is a factor controlling how much two objects \"rebound\", after "
+"violating a constraint, to avoid leaving them in that state because of "
+"numerical imprecision."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1120
+msgid ""
+"This is the constant for creating line shapes. A line shape is an infinite "
+"line with an origin point, and a normal. Thus, it can be used for front/"
+"behind checks."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1125
+msgid ""
+"This is the constant for creating segment shapes. A segment shape is a line "
+"from a point A to a point B. It can be checked for intersections."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1128
+msgid ""
+"This is the constant for creating circle shapes. A circle shape only has a "
+"radius. It can be used for intersections and inside/outside checks."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1131
+msgid ""
+"This is the constant for creating rectangle shapes. A rectangle shape is "
+"defined by a width and a height. It can be used for intersections and inside/"
+"outside checks."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1134
+msgid ""
+"This is the constant for creating capsule shapes. A capsule shape is defined "
+"by a radius and a length. It can be used for intersections and inside/"
+"outside checks."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1137
+msgid ""
+"This is the constant for creating convex polygon shapes. A polygon is "
+"defined by a list of points. It can be used for intersections and inside/"
+"outside checks. Unlike the [member CollisionPolygon2D.polygon] property, "
+"polygons modified with [method shape_set_data] do not verify that the points "
+"supplied form is a convex polygon."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1140
+msgid ""
+"This is the constant for creating concave polygon shapes. A polygon is "
+"defined by a list of points. It can be used for intersections checks, but "
+"not for inside/outside checks."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1143 doc/classes/PhysicsServer3D.xml:1497
+msgid ""
+"This constant is used internally by the engine. Any attempt to create this "
+"kind of shape results in an error."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1146 doc/classes/PhysicsServer3D.xml:1500
+msgid "Constant to set/get gravity strength in an area."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1149 doc/classes/PhysicsServer3D.xml:1503
+msgid "Constant to set/get gravity vector/center in an area."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1152 doc/classes/PhysicsServer3D.xml:1506
+msgid ""
+"Constant to set/get whether the gravity vector of an area is a direction, or "
+"a center point."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1155 doc/classes/PhysicsServer3D.xml:1509
+msgid ""
+"Constant to set/get the falloff factor for point gravity of an area. The "
+"greater this value is, the faster the strength of gravity decreases with the "
+"square of distance."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1158 doc/classes/PhysicsServer3D.xml:1512
+msgid ""
+"This constant was used to set/get the falloff factor for point gravity. It "
+"has been superseded by [constant AREA_PARAM_GRAVITY_DISTANCE_SCALE]."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1161 doc/classes/PhysicsServer3D.xml:1515
+msgid "Constant to set/get the linear dampening factor of an area."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1164 doc/classes/PhysicsServer3D.xml:1518
+msgid "Constant to set/get the angular dampening factor of an area."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1167 doc/classes/PhysicsServer3D.xml:1521
+msgid "Constant to set/get the priority (order of processing) of an area."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1170 doc/classes/PhysicsServer3D.xml:1524
+msgid ""
+"This area does not affect gravity/damp. These are generally areas that exist "
+"only to detect collisions, and objects entering or exiting them."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1173 doc/classes/PhysicsServer3D.xml:1527
+msgid ""
+"This area adds its gravity/damp values to whatever has been calculated so "
+"far. This way, many overlapping areas can combine their physics to make "
+"interesting effects."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1176 doc/classes/PhysicsServer3D.xml:1530
+msgid ""
+"This area adds its gravity/damp values to whatever has been calculated so "
+"far. Then stops taking into account the rest of the areas, even the default "
+"one."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1179 doc/classes/PhysicsServer3D.xml:1533
+msgid ""
+"This area replaces any gravity/damp, even the default one, and stops taking "
+"into account the rest of the areas."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1182 doc/classes/PhysicsServer3D.xml:1536
+msgid ""
+"This area replaces any gravity/damp calculated so far, but keeps calculating "
+"the rest of the areas, down to the default one."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1185 doc/classes/PhysicsServer3D.xml:1539
+msgid "Constant for static bodies."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1188 doc/classes/PhysicsServer3D.xml:1542
+msgid "Constant for kinematic bodies."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1191 doc/classes/PhysicsServer3D.xml:1545
+msgid "Constant for rigid bodies."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1194 doc/classes/PhysicsServer3D.xml:1548
+msgid ""
+"Constant for rigid bodies in character mode. In this mode, a body can not "
+"rotate, and only its linear velocity is affected by physics."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1197 doc/classes/PhysicsServer3D.xml:1551
+msgid "Constant to set/get a body's bounce factor."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1200 doc/classes/PhysicsServer3D.xml:1554
+msgid "Constant to set/get a body's friction."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1203 doc/classes/PhysicsServer3D.xml:1557
+msgid "Constant to set/get a body's mass."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1206
+msgid "Constant to set/get a body's inertia."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1209 doc/classes/PhysicsServer3D.xml:1560
+msgid "Constant to set/get a body's gravity multiplier."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1212 doc/classes/PhysicsServer3D.xml:1563
+msgid "Constant to set/get a body's linear dampening factor."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1215 doc/classes/PhysicsServer3D.xml:1566
+msgid "Constant to set/get a body's angular dampening factor."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1218 doc/classes/PhysicsServer3D.xml:1569
+msgid "Represents the size of the [enum BodyParameter] enum."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1221 doc/classes/PhysicsServer3D.xml:1572
+msgid "Constant to set/get the current transform matrix of the body."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1224 doc/classes/PhysicsServer3D.xml:1575
+msgid "Constant to set/get the current linear velocity of the body."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1227 doc/classes/PhysicsServer3D.xml:1578
+msgid "Constant to set/get the current angular velocity of the body."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1230 doc/classes/PhysicsServer3D.xml:1581
+msgid "Constant to sleep/wake up a body, or to get whether it is sleeping."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1233 doc/classes/PhysicsServer3D.xml:1584
+msgid "Constant to set/get whether the body can sleep."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1236
+msgid "Constant to create pin joints."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1239
+msgid "Constant to create groove joints."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1242
+msgid "Constant to create damped spring joints."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1251
+msgid ""
+"Sets the resting length of the spring joint. The joint will always try to go "
+"to back this length when pulled apart."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1254
+msgid ""
+"Sets the stiffness of the spring joint. The joint applies a force equal to "
+"the stiffness times the distance from its resting length."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1257
+msgid ""
+"Sets the damping ratio of the spring joint. A value of 0 indicates an "
+"undamped spring, while 1 causes the system to reach equilibrium as fast as "
+"possible (critical damping)."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1260
+msgid ""
+"Disables continuous collision detection. This is the fastest way to detect "
+"body collisions, but can miss small, fast-moving objects."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1263
+msgid ""
+"Enables continuous collision detection by raycasting. It is faster than "
+"shapecasting, but less precise."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1266
+msgid ""
+"Enables continuous collision detection by shapecasting. It is the slowest "
+"CCD method, and the most precise."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1269 doc/classes/PhysicsServer3D.xml:1587
+msgid ""
+"The value of the first parameter and area callback function receives, when "
+"an object enters one of its shapes."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1272 doc/classes/PhysicsServer3D.xml:1590
+msgid ""
+"The value of the first parameter and area callback function receives, when "
+"an object exits one of its shapes."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1275 doc/classes/PhysicsServer3D.xml:1593
+msgid "Constant to get the number of objects that are not sleeping."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1278 doc/classes/PhysicsServer3D.xml:1596
+msgid "Constant to get the number of possible collisions."
+msgstr ""
+
+#: doc/classes/PhysicsServer2D.xml:1281 doc/classes/PhysicsServer3D.xml:1599
+msgid ""
+"Constant to get the number of space regions where a collision could occur."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:4
+msgid "Server interface for low-level physics access."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:7
+msgid ""
+"PhysicsServer3D is the server responsible for all 3D physics. It can create "
+"many kinds of physics objects, but does not insert them on the node tree."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:51
+msgid "Creates an [Area3D]."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:71
+msgid ""
+"Returns an area parameter value. A list of available parameters is on the "
+"[enum AreaParameter] constants."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:138
+msgid "If [code]true[/code], area collides with rays."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:224
+msgid ""
+"Sets the value for an area parameter. A list of available parameters is on "
+"the [enum AreaParameter] constants."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:235
+msgid "Sets object pickable with rays."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:295
+msgid ""
+"Sets the space override mode for the area. The modes are described in the "
+"[enum AreaSpaceOverrideMode] constants."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:387
+msgid ""
+"Gives the body a push at a [code]position[/code] in the direction of the "
+"[code]impulse[/code]."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:398
+msgid "Gives the body a push to rotate it."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:429
+msgid ""
+"Creates a physics body. The first parameter can be any value from [enum "
+"BodyMode] constants, for the type of body created. Additionally, the body "
+"can be created in sleeping state to save processing time."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:447
+msgid ""
+"Returns the physics layer or layers a body can collide with.\n"
+"-"
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:457
+msgid "Returns the [PhysicsDirectBodyState3D] of the body."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:503
+msgid ""
+"Returns the value of a body parameter. A list of available parameters is on "
+"the [enum BodyParameter] constants."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:573
+msgid ""
+"If [code]true[/code], the continuous collision detection mode is enabled."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:591
+msgid "If [code]true[/code], the body can be detected by rays."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:602
+msgid ""
+"Removes a body from the list of bodies exempt from collisions.\n"
+"Continuous collision detection tries to predict where a moving body will "
+"collide, instead of moving it and correcting its movement if it collided."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:670
+msgid ""
+"If [code]true[/code], the continuous collision detection mode is enabled.\n"
+"Continuous collision detection tries to predict where a moving body will "
+"collide, instead of moving it and correcting its movement if it collided."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:718
+msgid "Sets the body mode, from one of the [enum BodyMode] constants."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:742
+msgid ""
+"Sets a body parameter. A list of available parameters is on the [enum "
+"BodyParameter] constants."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:753
+msgid "Sets the body pickable with rays if [code]enabled[/code] is set."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:815
+msgid "Sets a body state (see [enum BodyState] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:826
+msgid ""
+"Gets a cone_twist_joint parameter (see [enum ConeTwistJointParam] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:839
+msgid ""
+"Sets a cone_twist_joint parameter (see [enum ConeTwistJointParam] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:848
+msgid ""
+"Destroys any of the objects created by PhysicsServer3D. If the [RID] passed "
+"is not one of the objects that can be created by PhysicsServer3D, an error "
+"will be sent to the console."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:861
+msgid ""
+"Gets a generic_6_DOF_joint flag (see [enum G6DOFJointAxisFlag] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:874
+msgid ""
+"Gets a generic_6_DOF_joint parameter (see [enum G6DOFJointAxisParam] "
+"constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:889
+msgid ""
+"Sets a generic_6_DOF_joint flag (see [enum G6DOFJointAxisFlag] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:904
+msgid ""
+"Sets a generic_6_DOF_joint parameter (see [enum G6DOFJointAxisParam] "
+"constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:913
+msgid "Returns an Info defined by the [enum ProcessInfo] input given."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:924
+msgid "Gets a hinge_joint flag (see [enum HingeJointFlag] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:935
+msgid "Gets a hinge_joint parameter (see [enum HingeJointParam])."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:948
+msgid "Sets a hinge_joint flag (see [enum HingeJointFlag] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:961
+msgid "Sets a hinge_joint parameter (see [enum HingeJointParam] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:976
+msgid "Creates a [ConeTwistJoint3D]."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:991
+msgid "Creates a [Generic6DOFJoint3D]."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1006
+msgid "Creates a [HingeJoint3D]."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1021
+msgid "Creates a [PinJoint3D]."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1036
+msgid "Creates a [SliderJoint3D]."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1045
+msgid "Gets the priority value of the Joint3D."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1054
+msgid "Returns the type of the Joint3D."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1065
+msgid "Sets the priority value of the Joint3D."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1074
+msgid ""
+"Returns position of the joint in the local space of body a of the joint."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1083
+msgid ""
+"Returns position of the joint in the local space of body b of the joint."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1094
+msgid "Gets a pin_joint parameter (see [enum PinJointParam] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1105
+msgid "Sets position of the joint in the local space of body a of the joint."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1116
+msgid "Sets position of the joint in the local space of body b of the joint."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1129
+msgid "Sets a pin_joint parameter (see [enum PinJointParam] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1138
+msgid "Activates or deactivates the 3D physics engine."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1147
+msgid ""
+"Creates a shape of a type from [enum ShapeType]. Does not assign it to a "
+"body or an area. To do so, you must use [method area_set_shape] or [method "
+"body_set_shape]."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1165
+msgid "Returns the type of shape (see [enum ShapeType] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1187 doc/classes/PhysicsServer3D.xml:1200
+msgid "Gets a slider_joint parameter (see [enum SliderJointParam] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1216
+msgid ""
+"Returns the state of a space, a [PhysicsDirectSpaceState3D]. This object can "
+"be used to make collision/intersection queries."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1260
+msgid ""
+"Sets the value for a space parameter. A list of available parameters is on "
+"the [enum SpaceParameter] constants."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1266
+msgid "The [Joint3D] is a [PinJoint3D]."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1269
+msgid "The [Joint3D] is a [HingeJoint3D]."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1272
+msgid "The [Joint3D] is a [SliderJoint3D]."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1275
+msgid "The [Joint3D] is a [ConeTwistJoint3D]."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1278
+msgid "The [Joint3D] is a [Generic6DOFJoint3D]."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1281
+msgid ""
+"The strength with which the pinned objects try to stay in positional "
+"relation to each other.\n"
+"The higher, the stronger."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1285
+msgid ""
+"The strength with which the pinned objects try to stay in velocity relation "
+"to each other.\n"
+"The higher, the stronger."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1289
+msgid ""
+"If above 0, this value is the maximum value for an impulse that this Joint3D "
+"puts on its ends."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1295
+msgid "The maximum rotation across the Hinge."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1298
+msgid "The minimum rotation across the Hinge."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1315
+msgid "If [code]true[/code], the Hinge has a maximum and a minimum rotation."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1318
+msgid "If [code]true[/code], a motor turns the Hinge."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1321 doc/classes/SliderJoint3D.xml:81
+#: doc/classes/SliderJoint3D.xml:104
+msgid ""
+"The maximum difference between the pivot points on their X axis before "
+"damping happens."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1324 doc/classes/SliderJoint3D.xml:72
+#: doc/classes/SliderJoint3D.xml:107
+msgid ""
+"The minimum difference between the pivot points on their X axis before "
+"damping happens."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1327 doc/classes/SliderJoint3D.xml:78
+#: doc/classes/SliderJoint3D.xml:110
+msgid ""
+"A factor applied to the movement across the slider axis once the limits get "
+"surpassed. The lower, the slower the movement."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1330 doc/classes/SliderJoint3D.xml:113
+msgid ""
+"The amount of restitution once the limits are surpassed. The lower, the more "
+"velocityenergy gets lost."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1333 doc/classes/SliderJoint3D.xml:116
+msgid "The amount of damping once the slider limits are surpassed."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1336 doc/classes/SliderJoint3D.xml:90
+#: doc/classes/SliderJoint3D.xml:119
+msgid ""
+"A factor applied to the movement across the slider axis as long as the "
+"slider is in the limits. The lower, the slower the movement."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1339 doc/classes/SliderJoint3D.xml:87
+#: doc/classes/SliderJoint3D.xml:122
+msgid "The amount of restitution inside the slider limits."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1342 doc/classes/SliderJoint3D.xml:84
+#: doc/classes/SliderJoint3D.xml:125
+msgid "The amount of damping inside the slider limits."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1345 doc/classes/SliderJoint3D.xml:99
+#: doc/classes/SliderJoint3D.xml:128
+msgid "A factor applied to the movement across axes orthogonal to the slider."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1348 doc/classes/SliderJoint3D.xml:96
+#: doc/classes/SliderJoint3D.xml:131
+msgid ""
+"The amount of restitution when movement is across axes orthogonal to the "
+"slider."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1351 doc/classes/SliderJoint3D.xml:93
+#: doc/classes/SliderJoint3D.xml:134
+msgid ""
+"The amount of damping when movement is across axes orthogonal to the slider."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1354 doc/classes/SliderJoint3D.xml:48
+#: doc/classes/SliderJoint3D.xml:137
+msgid "The upper limit of rotation in the slider."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1357 doc/classes/SliderJoint3D.xml:37
+#: doc/classes/SliderJoint3D.xml:140
+msgid "The lower limit of rotation in the slider."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1360 doc/classes/SliderJoint3D.xml:143
+msgid "A factor applied to the all rotation once the limit is surpassed."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1363 doc/classes/SliderJoint3D.xml:146
+msgid "The amount of restitution of the rotation when the limit is surpassed."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1366 doc/classes/SliderJoint3D.xml:149
+msgid "The amount of damping of the rotation when the limit is surpassed."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1369
+msgid "A factor that gets applied to the all rotation in the limits."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1372 doc/classes/SliderJoint3D.xml:54
+#: doc/classes/SliderJoint3D.xml:155
+msgid "The amount of restitution of the rotation in the limits."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1375 doc/classes/SliderJoint3D.xml:51
+#: doc/classes/SliderJoint3D.xml:158
+msgid "The amount of damping of the rotation in the limits."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1378
+msgid ""
+"A factor that gets applied to the all rotation across axes orthogonal to the "
+"slider."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1381 doc/classes/SliderJoint3D.xml:63
+#: doc/classes/SliderJoint3D.xml:164
+msgid ""
+"The amount of restitution of the rotation across axes orthogonal to the "
+"slider."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1384 doc/classes/SliderJoint3D.xml:60
+#: doc/classes/SliderJoint3D.xml:167
+msgid ""
+"The amount of damping of the rotation across axes orthogonal to the slider."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1387
+msgid "Represents the size of the [enum SliderJointParam] enum."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1404
+msgid ""
+"The ease with which the Joint3D twists, if it's too low, it takes more force "
+"to twist the joint."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1416
+msgid ""
+"A factor that gets applied to the movement across the axes. The lower, the "
+"slower the movement."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1419
+msgid ""
+"The amount of restitution on the axes movement. The lower, the more velocity-"
+"energy gets lost."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1425
+msgid "The velocity that the joint's linear motor will attempt to reach."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1428
+msgid ""
+"The maximum force that the linear motor can apply while trying to reach the "
+"target velocity."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1437
+msgid "A factor that gets multiplied onto all rotations across the axes."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1449
+msgid ""
+"When correcting the crossing of limits in rotation across the axes, this "
+"error tolerance factor defines how much the correction gets slowed down. The "
+"lower, the slower."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1458
+msgid ""
+"If [code]set[/code] there is linear motion possible within the given limits."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1461
+msgid "If [code]set[/code] there is rotational motion possible."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1464
+msgid "If [code]set[/code] there is a rotational motor across these axes."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1467
+msgid ""
+"If [code]set[/code] there is a linear motor on this axis that targets a "
+"specific velocity."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1470
+msgid "The [Shape3D] is a [WorldMarginShape3D]."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1473
+msgid "The [Shape3D] is a [RayShape3D]."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1476
+msgid "The [Shape3D] is a [SphereShape3D]."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1479
+msgid "The [Shape3D] is a [BoxShape3D]."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1482
+msgid "The [Shape3D] is a [CapsuleShape3D]."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1485
+msgid "The [Shape3D] is a [CylinderShape3D]."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1488
+msgid "The [Shape3D] is a [ConvexPolygonShape3D]."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1491
+msgid "The [Shape3D] is a [ConcavePolygonShape3D]."
+msgstr ""
+
+#: doc/classes/PhysicsServer3D.xml:1494
+msgid "The [Shape3D] is a [HeightMapShape3D]."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:4
+msgid "Parameters to be sent to a 2D shape physics query."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:7
+msgid ""
+"This class contains the shape and other parameters for 2D intersection/"
+"collision queries. See also [PhysicsShapeQueryResult2D]."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:15
+msgid "If [code]true[/code], the query will take [Area2D]s into account."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:18
+msgid ""
+"If [code]true[/code], the query will take [PhysicsBody2D]s into account."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:21
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:21
+msgid "The physics layer(s) the query will take into account (as a bitmask)."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:24
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:24
+msgid ""
+"The list of objects or object [RID]s that will be excluded from collisions."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:27 doc/classes/Shape3D.xml:16
+msgid "The collision margin for the shape."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:30
+msgid "The motion of the shape being queried for."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:33
+msgid ""
+"The [Shape2D] that will be used for collision/intersection queries. This "
+"stores the actual reference which avoids the shape to be released while "
+"being used for queries, so always prefer using this over [member shape_rid]."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:36
+msgid ""
+"The queried shape's [RID] that will be used for collision/intersection "
+"queries. Use this over [member shape] if you want to optimize for "
+"performance using the Servers API:\n"
+"[codeblock]\n"
+"var shape_rid = PhysicsServer2D.circle_shape_create()\n"
+"var radius = 64\n"
+"PhysicsServer2D.shape_set_data(shape_rid, radius)\n"
+"\n"
+"var params = PhysicsShapeQueryParameters2D.new()\n"
+"params.shape_rid = shape_rid\n"
+"\n"
+"# Execute physics queries here...\n"
+"\n"
+"# Release the shape when done with physics queries.\n"
+"PhysicsServer2D.free_rid(shape_rid)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:52
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:49
+msgid "The queried shape's transform matrix."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:4
+msgid "Parameters to be sent to a 3D shape physics query."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:7
+msgid ""
+"This class contains the shape and other parameters for 3D intersection/"
+"collision queries. See also [PhysicsShapeQueryResult3D]."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:15
+msgid "If [code]true[/code], the query will take [Area3D]s into account."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:18
+msgid ""
+"If [code]true[/code], the query will take [PhysicsBody3D]s into account."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:30
+msgid ""
+"The [Shape3D] that will be used for collision/intersection queries. This "
+"stores the actual reference which avoids the shape to be released while "
+"being used for queries, so always prefer using this over [member shape_rid]."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:33
+msgid ""
+"The queried shape's [RID] that will be used for collision/intersection "
+"queries. Use this over [member shape] if you want to optimize for "
+"performance using the Servers API:\n"
+"[codeblock]\n"
+"var shape_rid = PhysicsServer3D.shape_create(PhysicsServer3D.SHAPE_SPHERE)\n"
+"var radius = 2.0\n"
+"PhysicsServer3D.shape_set_data(shape_rid, radius)\n"
+"\n"
+"var params = PhysicsShapeQueryParameters3D.new()\n"
+"params.shape_rid = shape_rid\n"
+"\n"
+"# Execute physics queries here...\n"
+"\n"
+"# Release the shape when done with physics queries.\n"
+"PhysicsServer3D.free_rid(shape_rid)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryResult2D.xml:4
+msgid "Result of a 2D shape query in [PhysicsServer2D]."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryResult2D.xml:7
+msgid ""
+"The result of a 2D shape query in [PhysicsServer2D]. See also "
+"[PhysicsShapeQueryParameters2D]."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryResult2D.xml:16
+#: doc/classes/PhysicsShapeQueryResult3D.xml:16
+msgid "Returns the number of objects that intersected with the shape."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryResult2D.xml:25
+#: doc/classes/PhysicsShapeQueryResult3D.xml:25
+msgid ""
+"Returns the [Object] that intersected with the shape at index [code]idx[/"
+"code]."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryResult2D.xml:34
+#: doc/classes/PhysicsShapeQueryResult3D.xml:34
+msgid ""
+"Returns the instance ID of the [Object] that intersected with the shape at "
+"index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryResult2D.xml:43
+msgid ""
+"Returns the child index of the object's [Shape2D] that intersected with the "
+"shape at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryResult2D.xml:52
+#: doc/classes/PhysicsShapeQueryResult3D.xml:52
+msgid ""
+"Returns the [RID] of the object that intersected with the shape at index "
+"[code]idx[/code]."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryResult3D.xml:4
+msgid "Result of a 3D shape query in [PhysicsServer3D]."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryResult3D.xml:7
+msgid ""
+"The result of a 3D shape query in [PhysicsServer3D]. See also "
+"[PhysicsShapeQueryParameters3D]."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryResult3D.xml:43
+msgid ""
+"Returns the child index of the object's [Shape3D] that intersected with the "
+"shape at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/PinJoint2D.xml:4
+msgid "Pin joint for 2D shapes."
+msgstr ""
+
+#: doc/classes/PinJoint2D.xml:7
+msgid ""
+"Pin joint for 2D rigid bodies. It pins two bodies (rigid or static) together."
+msgstr ""
+
+#: doc/classes/PinJoint2D.xml:15
+msgid ""
+"The higher this value, the more the bond to the pinned partner can flex."
+msgstr ""
+
+#: doc/classes/PinJoint3D.xml:4
+msgid "Pin joint for 3D shapes."
+msgstr ""
+
+#: doc/classes/PinJoint3D.xml:7
+msgid ""
+"Pin joint for 3D rigid bodies. It pins 2 bodies (rigid or static) together."
+msgstr ""
+
+#: doc/classes/PinJoint3D.xml:35 doc/classes/PinJoint3D.xml:46
+msgid ""
+"The force with which the pinned objects stay in positional relation to each "
+"other. The higher, the stronger."
+msgstr ""
+
+#: doc/classes/PinJoint3D.xml:38 doc/classes/PinJoint3D.xml:49
+msgid ""
+"The force with which the pinned objects stay in velocity relation to each "
+"other. The higher, the stronger."
+msgstr ""
+
+#: doc/classes/PinJoint3D.xml:41 doc/classes/PinJoint3D.xml:52
+msgid ""
+"If above 0, this value is the maximum value for an impulse that this Joint3D "
+"produces."
+msgstr ""
+
+#: doc/classes/Plane.xml:4
+msgid "Plane in hessian form."
+msgstr ""
+
+#: doc/classes/Plane.xml:7
+msgid ""
+"Plane represents a normalized plane equation. Basically, \"normal\" is the "
+"normal of the plane (a,b,c normalized), and \"d\" is the distance from the "
+"origin to the plane (in the direction of \"normal\"). \"Over\" or \"Above\" "
+"the plane is considered the side of the plane towards where the normal is "
+"pointing."
+msgstr ""
+
+#: doc/classes/Plane.xml:25
+msgid ""
+"Creates a plane from the four parameters. The three components of the "
+"resulting plane's [member normal] are [code]a[/code], [code]b[/code] and "
+"[code]c[/code], and the plane has a distance of [code]d[/code] from the "
+"origin."
+msgstr ""
+
+#: doc/classes/Plane.xml:38
+msgid "Creates a plane from the three points, given in clockwise order."
+msgstr ""
+
+#: doc/classes/Plane.xml:49
+msgid "Creates a plane from the normal and the plane's distance to the origin."
+msgstr ""
+
+#: doc/classes/Plane.xml:56
+msgid "Returns the center of the plane."
+msgstr ""
+
+#: doc/classes/Plane.xml:65
+msgid ""
+"Returns the shortest distance from the plane to the position [code]point[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Plane.xml:76
+msgid ""
+"Returns [code]true[/code] if [code]point[/code] is inside the plane. "
+"Comparison uses a custom minimum [code]epsilon[/code] threshold."
+msgstr ""
+
+#: doc/classes/Plane.xml:87
+msgid ""
+"Returns the intersection point of the three planes [code]b[/code], [code]c[/"
+"code] and this plane. If no intersection is found, [code]null[/code] is "
+"returned."
+msgstr ""
+
+#: doc/classes/Plane.xml:98
+msgid ""
+"Returns the intersection point of a ray consisting of the position "
+"[code]from[/code] and the direction normal [code]dir[/code] with this plane. "
+"If no intersection is found, [code]null[/code] is returned."
+msgstr ""
+
+#: doc/classes/Plane.xml:109
+msgid ""
+"Returns the intersection point of a segment from position [code]begin[/code] "
+"to position [code]end[/code] with this plane. If no intersection is found, "
+"[code]null[/code] is returned."
+msgstr ""
+
+#: doc/classes/Plane.xml:118
+msgid ""
+"Returns [code]true[/code] if this plane and [code]plane[/code] are "
+"approximately equal, by running [method @GDScript.is_equal_approx] on each "
+"component."
+msgstr ""
+
+#: doc/classes/Plane.xml:127
+msgid ""
+"Returns [code]true[/code] if [code]point[/code] is located above the plane."
+msgstr ""
+
+#: doc/classes/Plane.xml:134
+msgid "Returns a copy of the plane, normalized."
+msgstr ""
+
+#: doc/classes/Plane.xml:143
+msgid ""
+"Returns the orthogonal projection of [code]point[/code] into a point in the "
+"plane."
+msgstr ""
+
+#: doc/classes/Plane.xml:149
+msgid ""
+"The distance from the origin to the plane, in the direction of [member "
+"normal]. This value is typically non-negative.\n"
+"In the scalar equation of the plane [code]ax + by + cz = d[/code], this is "
+"[code]d[/code], while the [code](a, b, c)[/code] coordinates are represented "
+"by the [member normal] property."
+msgstr ""
+
+#: doc/classes/Plane.xml:153
+msgid ""
+"The normal of the plane, which must be normalized.\n"
+"In the scalar equation of the plane [code]ax + by + cz = d[/code], this is "
+"the vector [code](a, b, c)[/code], where [code]d[/code] is the [member d] "
+"property."
+msgstr ""
+
+#: doc/classes/Plane.xml:157
+msgid "The X component of the plane's [member normal] vector."
+msgstr ""
+
+#: doc/classes/Plane.xml:160
+msgid "The Y component of the plane's [member normal] vector."
+msgstr ""
+
+#: doc/classes/Plane.xml:163
+msgid "The Z component of the plane's [member normal] vector."
+msgstr ""
+
+#: doc/classes/Plane.xml:168
+msgid "A plane that extends in the Y and Z axes (normal vector points +X)."
+msgstr ""
+
+#: doc/classes/Plane.xml:171
+msgid "A plane that extends in the X and Z axes (normal vector points +Y)."
+msgstr ""
+
+#: doc/classes/Plane.xml:174
+msgid "A plane that extends in the X and Y axes (normal vector points +Z)."
+msgstr ""
+
+#: doc/classes/PlaneMesh.xml:4
+msgid "Class representing a planar [PrimitiveMesh]."
+msgstr ""
+
+#: doc/classes/PlaneMesh.xml:7
+msgid ""
+"Class representing a planar [PrimitiveMesh]. This flat mesh does not have a "
+"thickness. By default, this mesh is aligned on the X and Z axes; this "
+"default rotation isn't suited for use with billboarded materials. For "
+"billboarded materials, use [QuadMesh] instead."
+msgstr ""
+
+#: doc/classes/PlaneMesh.xml:15
+msgid "Size of the generated plane."
+msgstr ""
+
+#: doc/classes/PlaneMesh.xml:18
+msgid "Number of subdivision along the Z axis."
+msgstr ""
+
+#: doc/classes/PlaneMesh.xml:21
+msgid "Number of subdivision along the X axis."
+msgstr ""
+
+#: doc/classes/PointMesh.xml:4
+msgid "Mesh with a single Point primitive."
+msgstr ""
+
+#: doc/classes/PointMesh.xml:7
+msgid ""
+"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).\n"
+"PointMeshes, must be used with a material that has a point size. Point size "
+"can be accessed in a shader with [code]POINT_SIZE[/code], or in a "
+"[BaseMaterial3D] by setting [member BaseMaterial3D.use_point_size] and the "
+"variable [member BaseMaterial3D.point_size].\n"
+"When using PointMeshes, properties that normally alter vertices will be "
+"ignored, including billboard mode, grow, and cull face."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:4
+msgid "A 2D polygon."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:7
+msgid ""
+"A Polygon2D is defined by a set of points. Each point is connected to the "
+"next, with the final point being connected to the first, resulting in a "
+"closed polygon. Polygon2Ds can be filled with color (solid or gradient) or "
+"filled with a given texture."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:20
+msgid ""
+"Adds a bone with the specified [code]path[/code] and [code]weights[/code]."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:27
+msgid "Removes all bones from this [Polygon2D]."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:36
+msgid "Removes the specified bone from this [Polygon2D]."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:43
+msgid "Returns the number of bones in this [Polygon2D]."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:52
+msgid "Returns the path to the node associated with the specified bone."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:61
+msgid "Returns the height values of the specified bone."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:72
+msgid "Sets the path to the node associated with the specified bone."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:83
+msgid "Sets the weight values for the specified bone."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:89
+msgid "If [code]true[/code], polygon edges will be anti-aliased."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:94
+msgid ""
+"The polygon's fill color. If [code]texture[/code] is defined, it will be "
+"multiplied by this color. It will also be the default color for vertices not "
+"set in [code]vertex_colors[/code]."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:99
+msgid ""
+"Added padding applied to the bounding box when using [code]invert[/code]. "
+"Setting this value too small may result in a \"Bad Polygon\" error."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:102
+msgid ""
+"If [code]true[/code], polygon will be inverted, containing the area outside "
+"the defined points and extending to the [code]invert_border[/code]."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:105
+msgid ""
+"The normal map gives depth to the Polygon2D.\n"
+"[b]Note:[/b] Godot expects the normal map to use X+, Y-, and Z+ coordinates. "
+"See [url=http://wiki.polycount.com/wiki/"
+"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]this page[/url] for "
+"a comparison of normal map coordinates expected by popular engines."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:109
+msgid "The offset applied to each vertex."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:112
+msgid ""
+"The polygon's list of vertices. The final point will be connected to the "
+"first.\n"
+"[b]Note:[/b] This returns a copy of the [PackedVector2Array] rather than a "
+"reference."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:126
+msgid ""
+"The polygon's fill texture. Use [code]uv[/code] to set texture coordinates."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:129
+msgid ""
+"Amount to offset the polygon's [code]texture[/code]. If [code](0, 0)[/code] "
+"the texture's origin (its top-left corner) will be placed at the polygon's "
+"[code]position[/code]."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:132
+msgid "The texture's rotation in radians."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:135
+msgid "The texture's rotation in degrees."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:138
+msgid ""
+"Amount to multiply the [code]uv[/code] coordinates when using a "
+"[code]texture[/code]. Larger values make the texture smaller, and vice versa."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:141
+msgid ""
+"Texture coordinates for each vertex of the polygon. There should be one "
+"[code]uv[/code] per polygon vertex. If there are fewer, undefined vertices "
+"will use [code](0, 0)[/code]."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:144
+msgid ""
+"Color for each vertex. Colors are interpolated between vertices, resulting "
+"in smooth gradients. There should be one per polygon vertex. If there are "
+"fewer, undefined vertices will use [code]color[/code]."
+msgstr ""
+
+#: doc/classes/Popup.xml:4
+msgid "Base container control for popups and dialogs."
+msgstr ""
+
+#: doc/classes/Popup.xml:7
+msgid ""
+"Popup is a base [Control] used to show dialogs and popups. It's a subwindow "
+"and modal by default (see [Control]) and has helpers for custom popup "
+"behavior."
+msgstr ""
+
+#: doc/classes/Popup.xml:23
+msgid "Emitted when a popup is hidden."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:4
+msgid "PopupMenu displays a list of options."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:7
+msgid ""
+"[PopupMenu] is a [Control] that displays a list of options. They are popular "
+"in toolbars or context menus."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:22
+msgid ""
+"Adds a new checkable item with text [code]label[/code].\n"
+"An [code]id[/code] can optionally be provided, as well as an accelerator "
+"([code]accel[/code]). If no [code]id[/code] is provided, one will be created "
+"from the index. If no [code]accel[/code] is provided then the default "
+"[code]0[/code] will be assigned to it. See [method get_item_accelerator] for "
+"more info on accelerators.\n"
+"[b]Note:[/b] Checkable items just display a checkmark, but don't have any "
+"built-in checking behavior and must be checked/unchecked manually. See "
+"[method set_item_checked] for more info on how to control it."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:37
+msgid ""
+"Adds a new checkable item and assigns the specified [ShortCut] to it. Sets "
+"the label of the checkbox to the [ShortCut]'s name.\n"
+"An [code]id[/code] can optionally be provided. If no [code]id[/code] is "
+"provided, one will be created from the index.\n"
+"[b]Note:[/b] Checkable items just display a checkmark, but don't have any "
+"built-in checking behavior and must be checked/unchecked manually. See "
+"[method set_item_checked] for more info on how to control it."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:54
+msgid ""
+"Adds a new checkable item with text [code]label[/code] and icon "
+"[code]texture[/code].\n"
+"An [code]id[/code] can optionally be provided, as well as an accelerator "
+"([code]accel[/code]). If no [code]id[/code] is provided, one will be created "
+"from the index. If no [code]accel[/code] is provided then the default "
+"[code]0[/code] will be assigned to it. See [method get_item_accelerator] for "
+"more info on accelerators.\n"
+"[b]Note:[/b] Checkable items just display a checkmark, but don't have any "
+"built-in checking behavior and must be checked/unchecked manually. See "
+"[method set_item_checked] for more info on how to control it."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:71
+msgid ""
+"Adds a new checkable item and assigns the specified [ShortCut] and icon "
+"[code]texture[/code] to it. Sets the label of the checkbox to the "
+"[ShortCut]'s name.\n"
+"An [code]id[/code] can optionally be provided. If no [code]id[/code] is "
+"provided, one will be created from the index.\n"
+"[b]Note:[/b] Checkable items just display a checkmark, but don't have any "
+"built-in checking behavior and must be checked/unchecked manually. See "
+"[method set_item_checked] for more info on how to control it."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:88
+msgid ""
+"Adds a new item with text [code]label[/code] and icon [code]texture[/code].\n"
+"An [code]id[/code] can optionally be provided, as well as an accelerator "
+"([code]accel[/code]). If no [code]id[/code] is provided, one will be created "
+"from the index. If no [code]accel[/code] is provided then the default "
+"[code]0[/code] will be assigned to it. See [method get_item_accelerator] for "
+"more info on accelerators."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:104
+msgid "Same as [method add_icon_check_item], but uses a radio check button."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:119
+msgid ""
+"Same as [method add_icon_check_shortcut], but uses a radio check button."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:134
+msgid ""
+"Adds a new item and assigns the specified [ShortCut] and icon [code]texture[/"
+"code] to it. Sets the label of the checkbox to the [ShortCut]'s name.\n"
+"An [code]id[/code] can optionally be provided. If no [code]id[/code] is "
+"provided, one will be created from the index."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:148
+msgid ""
+"Adds a new item with text [code]label[/code].\n"
+"An [code]id[/code] can optionally be provided, as well as an accelerator "
+"([code]accel[/code]). If no [code]id[/code] is provided, one will be created "
+"from the index. If no [code]accel[/code] is provided then the default "
+"[code]0[/code] will be assigned to it. See [method get_item_accelerator] for "
+"more info on accelerators."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:166
+msgid ""
+"Adds a new multistate item with text [code]label[/code].\n"
+"Contrarily to normal binary items, multistate items can have more than two "
+"states, as defined by [code]max_states[/code]. Each press or activate of the "
+"item will increase the state by one. The default value is defined by "
+"[code]default_state[/code].\n"
+"An [code]id[/code] can optionally be provided, as well as an accelerator "
+"([code]accel[/code]). If no [code]id[/code] is provided, one will be created "
+"from the index. If no [code]accel[/code] is provided then the default "
+"[code]0[/code] will be assigned to it. See [method get_item_accelerator] for "
+"more info on accelerators."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:181
+msgid ""
+"Adds a new radio check button with text [code]label[/code].\n"
+"An [code]id[/code] can optionally be provided, as well as an accelerator "
+"([code]accel[/code]). If no [code]id[/code] is provided, one will be created "
+"from the index. If no [code]accel[/code] is provided then the default "
+"[code]0[/code] will be assigned to it. See [method get_item_accelerator] for "
+"more info on accelerators.\n"
+"[b]Note:[/b] Checkable items just display a checkmark, but don't have any "
+"built-in checking behavior and must be checked/unchecked manually. See "
+"[method set_item_checked] for more info on how to control it."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:196
+msgid ""
+"Adds a new radio check button and assigns a [ShortCut] to it. Sets the label "
+"of the checkbox to the [ShortCut]'s name.\n"
+"An [code]id[/code] can optionally be provided. If no [code]id[/code] is "
+"provided, one will be created from the index.\n"
+"[b]Note:[/b] Checkable items just display a checkmark, but don't have any "
+"built-in checking behavior and must be checked/unchecked manually. See "
+"[method set_item_checked] for more info on how to control it."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:207
+msgid "Adds a separator between items. Separators also occupy an index."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:220
+msgid ""
+"Adds a [ShortCut].\n"
+"An [code]id[/code] can optionally be provided. If no [code]id[/code] is "
+"provided, one will be created from the index."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:234
+msgid ""
+"Adds an item that will act as a submenu of the parent [PopupMenu] node when "
+"clicked. The [code]submenu[/code] argument is the name of the child "
+"[PopupMenu] node that will be shown when the item is clicked.\n"
+"An [code]id[/code] can optionally be provided. If no [code]id[/code] is "
+"provided, one will be created from the index."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:242
+msgid "Removes all items from the [PopupMenu]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:257
+msgid ""
+"Returns the accelerator of the item at index [code]idx[/code]. Accelerators "
+"are special combinations of keys that activate the item, no matter which "
+"control is focused."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:264
+msgid "Returns the number of items in the [PopupMenu]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:282
+msgid ""
+"Returns the id of the item at index [code]idx[/code]. [code]id[/code] can be "
+"manually assigned, while index can not."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:291
+msgid ""
+"Returns the index of the item containing the specified [code]id[/code]. "
+"Index is automatically assigned to each item by the engine. Index can not be "
+"set manually."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:300
+msgid ""
+"Returns the metadata of the specified item, which might be of any type. You "
+"can set it with [method set_item_metadata], which provides a simple way of "
+"assigning context data to items."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:309
+msgid ""
+"Returns the [ShortCut] associated with the specified [code]idx[/code] item."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:318
+msgid ""
+"Returns the submenu name of the item at index [code]idx[/code]. See [method "
+"add_submenu_item] for more info on how to add a submenu."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:336
+msgid ""
+"Returns the tooltip associated with the specified index index [code]idx[/"
+"code]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:345
+msgid ""
+"Returns [code]true[/code] if the item at index [code]idx[/code] is checkable "
+"in some way, i.e. if it has a checkbox or radio button.\n"
+"[b]Note:[/b] Checkable items just display a checkmark or radio button, but "
+"don't have any built-in checking behavior and must be checked/unchecked "
+"manually."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:355
+msgid ""
+"Returns [code]true[/code] if the item at index [code]idx[/code] is checked."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:364
+msgid ""
+"Returns [code]true[/code] if the item at index [code]idx[/code] is disabled. "
+"When it is disabled it can't be selected, or its action invoked.\n"
+"See [method set_item_disabled] for more info on how to disable an item."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:374
+msgid ""
+"Returns [code]true[/code] if the item at index [code]idx[/code] has radio "
+"button-style checkability.\n"
+"[b]Note:[/b] This is purely cosmetic; you must add the logic for checking/"
+"unchecking items in radio groups."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:384
+msgid ""
+"Returns [code]true[/code] if the item is a separator. If it is, it will be "
+"displayed as a line. See [method add_separator] for more info on how to add "
+"a separator."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:393
+msgid "Returns [code]true[/code] if the specified item's shortcut is disabled."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:402
+msgid ""
+"Removes the item at index [code]idx[/code] from the menu.\n"
+"[b]Note:[/b] The indices of items after the removed item will be shifted by "
+"one."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:414
+msgid ""
+"Sets the accelerator of the item at index [code]idx[/code]. Accelerators are "
+"special combinations of keys that activate the item, no matter which control "
+"is focused."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:425
+msgid ""
+"Sets whether the item at index [code]idx[/code] has a checkbox. If "
+"[code]false[/code], sets the type of the item to plain text.\n"
+"[b]Note:[/b] Checkable items just display a checkmark, but don't have any "
+"built-in checking behavior and must be checked/unchecked manually."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:437
+msgid ""
+"Sets the type of the item at the specified index [code]idx[/code] to radio "
+"button. If [code]false[/code], sets the type of the item to plain text."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:448
+msgid ""
+"Mark the item at index [code]idx[/code] as a separator, which means that it "
+"would be displayed as a line. If [code]false[/code], sets the type of the "
+"item to plain text."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:459
+msgid "Sets the checkstate status of the item at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:470
+msgid ""
+"Enables/disables the item at index [code]idx[/code]. When it is disabled, it "
+"can't be selected and its action can't be invoked."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:481
+msgid "Replaces the [Texture2D] icon of the specified [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:492
+msgid "Sets the [code]id[/code] of the item at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:503
+msgid ""
+"Sets the metadata of an item, which may be of any type. You can later get it "
+"with [method get_item_metadata], which provides a simple way of assigning "
+"context data to items."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:514
+msgid ""
+"Sets the state of an multistate item. See [method add_multistate_item] for "
+"details."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:527
+msgid "Sets a [ShortCut] for the specified item [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:538
+msgid "Disables the [ShortCut] of the specified index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:549
+msgid ""
+"Sets the submenu of the item at index [code]idx[/code]. The submenu is the "
+"name of a child [PopupMenu] node that would be shown when the item is "
+"clicked."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:571
+msgid ""
+"Sets the [String] tooltip of the item at the specified index [code]idx[/"
+"code]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:580
+msgid ""
+"Toggles the check state of the item of the specified index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:589
+msgid ""
+"Cycle to the next state of an multistate item. See [method "
+"add_multistate_item] for details."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:595
+msgid "If [code]true[/code], allows to navigate [PopupMenu] with letter keys."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:598
+msgid ""
+"If [code]true[/code], hides the [PopupMenu] when a checkbox or radio button "
+"is selected."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:601
+msgid "If [code]true[/code], hides the [PopupMenu] when an item is selected."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:604
+msgid ""
+"If [code]true[/code], hides the [PopupMenu] when a state item is selected."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:607
+msgid ""
+"Sets the delay time in seconds for the submenu item to popup on mouse "
+"hovering. If the popup menu is added as a child of another (acting as a "
+"submenu), it will inherit the delay time of the parent menu item."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:615
+msgid ""
+"Emitted when user navigated to an item of some [code]id[/code] using "
+"[code]ui_up[/code] or [code]ui_down[/code] action."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:622
+msgid ""
+"Emitted when an item of some [code]id[/code] is pressed or its accelerator "
+"is activated."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:629
+msgid ""
+"Emitted when an item of some [code]index[/code] is pressed or its "
+"accelerator is activated."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:637
+msgid "[Texture2D] icon for the checked checkbox items."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:640
+msgid "[Font] used for the menu items."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:643
+msgid "The default text [Color] for menu items' names."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:646
+msgid ""
+"The text [Color] used for shortcuts and accelerators that show next to the "
+"menu item name when defined. See [method get_item_accelerator] for more info "
+"on accelerators."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:649
+msgid "[Color] used for disabled menu items' text."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:652
+msgid "[Color] used for the hovered text."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:655
+msgid "[StyleBox] displayed when the [PopupMenu] item is hovered."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:658
+msgid ""
+"The horizontal space between the item's name and the shortcut text/submenu "
+"arrow."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:661
+msgid ""
+"[StyleBox] for the left side of labeled separator. See [method "
+"add_separator]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:664
+msgid ""
+"[StyleBox] for the right side of labeled separator. See [method "
+"add_separator]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:667
+msgid "Default [StyleBox] of the [PopupMenu] items."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:670
+msgid "[StyleBox] used when the [PopupMenu] item is disabled."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:673
+msgid "[Texture2D] icon for the checked radio button items."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:676
+msgid "[Texture2D] icon for the unchecked radio button items."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:679
+msgid "[StyleBox] used for the separators. See [method add_separator]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:682
+msgid "[Texture2D] icon for the submenu arrow."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:685
+msgid "[Texture2D] icon for the unchecked checkbox items."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:688
+msgid "The vertical space between each menu item."
+msgstr ""
+
+#: doc/classes/PopupPanel.xml:4
+msgid "Class for displaying popups with a panel background."
+msgstr ""
+
+#: doc/classes/PopupPanel.xml:7
+msgid ""
+"Class for displaying popups with a panel background. In some cases it might "
+"be simpler to use than [Popup], since it provides a configurable background. "
+"If you are making windows, better check [Window]."
+msgstr ""
+
+#: doc/classes/PopupPanel.xml:17
+msgid "The background panel style of this [PopupPanel]."
+msgstr ""
+
+#: doc/classes/Position2D.xml:4
+msgid "Generic 2D position hint for editing."
+msgstr ""
+
+#: doc/classes/Position2D.xml:7
+msgid ""
+"Generic 2D position hint for editing. It's just like a plain [Node2D], but "
+"it displays as a cross in the 2D editor at all times. You can set cross' "
+"visual size by using the gizmo in the 2D editor while the node is selected."
+msgstr ""
+
+#: doc/classes/Position3D.xml:4
+msgid "Generic 3D position hint for editing."
+msgstr ""
+
+#: doc/classes/Position3D.xml:7
+msgid ""
+"Generic 3D position hint for editing. It's just like a plain [Node3D], but "
+"it displays as a cross in the 3D editor at all times."
+msgstr ""
+
+#: doc/classes/PrimitiveMesh.xml:4
+msgid ""
+"Base class for all primitive meshes. Handles applying a [Material] to a "
+"primitive mesh."
+msgstr ""
+
+#: doc/classes/PrimitiveMesh.xml:7
+msgid ""
+"Base class for all primitive meshes. Handles applying a [Material] to a "
+"primitive mesh. Examples include [CapsuleMesh], [CubeMesh], [CylinderMesh], "
+"[PlaneMesh], [PrismMesh], [QuadMesh], and [SphereMesh]."
+msgstr ""
+
+#: doc/classes/PrimitiveMesh.xml:16
+msgid ""
+"Returns mesh arrays used to constitute surface of [Mesh]. The result can be "
+"passed to [method ArrayMesh.add_surface_from_arrays] to create a new "
+"surface. For example:\n"
+"[codeblock]\n"
+"var c := CylinderMesh.new()\n"
+"var arr_mesh := ArrayMesh.new()\n"
+"arr_mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLES, c."
+"get_mesh_arrays())\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/PrimitiveMesh.xml:27
+msgid ""
+"Overrides the [AABB] with one defined by user for use with frustum culling. "
+"Especially useful to avoid unnexpected culling when using a shader to "
+"offset vertices."
+msgstr ""
+
+#: doc/classes/PrimitiveMesh.xml:30
+msgid ""
+"If set, the order of the vertices in each triangle are reversed resulting in "
+"the backside of the mesh being drawn.\n"
+"This gives the same result as using [constant BaseMaterial3D.CULL_BACK] in "
+"[member BaseMaterial3D.cull_mode]."
+msgstr ""
+
+#: doc/classes/PrimitiveMesh.xml:34
+msgid "The current [Material] of the primitive mesh."
+msgstr ""
+
+#: doc/classes/PrismMesh.xml:4 doc/classes/PrismMesh.xml:7
+msgid "Class representing a prism-shaped [PrimitiveMesh]."
+msgstr ""
+
+#: doc/classes/PrismMesh.xml:15
+msgid ""
+"Displacement of the upper edge along the X axis. 0.0 positions edge straight "
+"above the bottom-left edge."
+msgstr ""
+
+#: doc/classes/PrismMesh.xml:18
+msgid "Size of the prism."
+msgstr ""
+
+#: doc/classes/PrismMesh.xml:21
+msgid "Number of added edge loops along the Z axis."
+msgstr ""
+
+#: doc/classes/PrismMesh.xml:24
+msgid "Number of added edge loops along the Y axis."
+msgstr ""
+
+#: doc/classes/PrismMesh.xml:27
+msgid "Number of added edge loops along the X axis."
+msgstr ""
+
+#: doc/classes/ProceduralSkyMaterial.xml:4
+msgid ""
+"A [Material] used with [Sky] to generate a background based on user input "
+"parameters."
+msgstr ""
+
+#: doc/classes/ProceduralSkyMaterial.xml:7
+msgid ""
+"ProceduralSkyMaterial provides a way to create an effective background "
+"quickly by defining procedural parameters for the sun, the sky and the "
+"ground. The sky and ground are very similar, they are defined by a color at "
+"the horizon, another color, and finally an easing curve to interpolate "
+"between these two colors. Similarly, the sun is described by a position in "
+"the sky, a color, and an easing curve. However, the sun also defines a "
+"minimum and maximum angle, these two values define at what distance the "
+"easing curve begins and ends from the sun, and thus end up defining the size "
+"of the sun in the sky.\n"
+"The [ProceduralSkyMaterial] uses a lightweight shader to draw the sky and is "
+"thus suited for real time updates. When you do not need a quick sky that is "
+"not realistic, this is a good option.\n"
+"The [ProceduralSkyMaterial] supports up to 4 suns. Each sun takes its color, "
+"energy, and direction from the corresponding [DirectionalLight3D] in the "
+"scene."
+msgstr ""
+
+#: doc/classes/ProceduralSkyMaterial.xml:17
+msgid ""
+"Color of the ground at the bottom. Blends with [member ground_horizon_color]."
+msgstr ""
+
+#: doc/classes/ProceduralSkyMaterial.xml:20
+msgid ""
+"How quickly the [member ground_horizon_color] fades into the [member "
+"ground_bottom_color]."
+msgstr ""
+
+#: doc/classes/ProceduralSkyMaterial.xml:23
+msgid "Amount of energy contribution from the ground."
+msgstr ""
+
+#: doc/classes/ProceduralSkyMaterial.xml:26
+msgid ""
+"Color of the ground at the horizon. Blends with [member ground_bottom_color]."
+msgstr ""
+
+#: doc/classes/ProceduralSkyMaterial.xml:29
+msgid ""
+"How quickly the [member sky_horizon_color] fades into the [member "
+"sky_top_color]."
+msgstr ""
+
+#: doc/classes/ProceduralSkyMaterial.xml:32
+msgid "Amount of energy contribution from the sky."
+msgstr ""
+
+#: doc/classes/ProceduralSkyMaterial.xml:35
+msgid "Color of the sky at the horizon. Blends with [member sky_top_color]."
+msgstr ""
+
+#: doc/classes/ProceduralSkyMaterial.xml:38
+msgid "Color of the sky at the top. Blends with [member sky_horizon_color]."
+msgstr ""
+
+#: doc/classes/ProceduralSkyMaterial.xml:41
+msgid "Distance from center of sun where it fades out completely."
+msgstr ""
+
+#: doc/classes/ProceduralSkyMaterial.xml:44
+msgid ""
+"How quickly the sun fades away between the edge of the sun disk and [member "
+"sun_angle_max]."
+msgstr ""
+
+#: doc/classes/ProgressBar.xml:4
+msgid "General-purpose progress bar."
+msgstr ""
+
+#: doc/classes/ProgressBar.xml:7
+msgid "General-purpose progress bar. Shows fill percentage from right to left."
+msgstr ""
+
+#: doc/classes/ProgressBar.xml:15
+msgid "If [code]true[/code], the fill percentage is displayed on the bar."
+msgstr ""
+
+#: doc/classes/ProgressBar.xml:24
+msgid "The style of the background."
+msgstr ""
+
+#: doc/classes/ProgressBar.xml:27
+msgid "The style of the progress (i.e. the part that fills the bar)."
+msgstr ""
+
+#: doc/classes/ProgressBar.xml:30
+msgid ""
+"Font used to draw the fill percentage if [member percent_visible] is "
+"[code]true[/code]."
+msgstr ""
+
+#: doc/classes/ProgressBar.xml:33
+msgid "The color of the text."
+msgstr ""
+
+#: doc/classes/ProgressBar.xml:36
+msgid "The color of the text's shadow."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:4
+msgid "Contains global variables accessible from everywhere."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:7
+msgid ""
+"Contains global variables accessible from everywhere. Use [method "
+"get_setting], [method set_setting] or [method has_setting] to access them. "
+"Variables stored in [code]project.godot[/code] are also loaded into "
+"ProjectSettings, making this object very useful for reading custom game "
+"configuration options.\n"
+"When naming a Project Settings property, use the full path to the setting "
+"including the category. For example, [code]\"application/config/name\"[/"
+"code] for the project name. Category and property names can be viewed in the "
+"Project Settings dialog.\n"
+"[b]Overriding:[/b] Any project setting can be overridden by creating a file "
+"named [code]override.cfg[/code] in the project's root directory. This can "
+"also be used in exported projects by placing this file in the same directory "
+"as the project binary."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:20
+msgid ""
+"Adds a custom property info to a property. The dictionary must contain:\n"
+"- [code]name[/code]: [String] (the property's name)\n"
+"- [code]type[/code]: [int] (see [enum Variant.Type])\n"
+"- optionally [code]hint[/code]: [int] (see [enum PropertyHint]) and "
+"[code]hint_string[/code]: [String]\n"
+"[b]Example:[/b]\n"
+"[codeblock]\n"
+"ProjectSettings.set(\"category/property_name\", 0)\n"
+"\n"
+"var property_info = {\n"
+" \"name\": \"category/property_name\",\n"
+" \"type\": TYPE_INT,\n"
+" \"hint\": PROPERTY_HINT_ENUM,\n"
+" \"hint_string\": \"one,two,three\"\n"
+"}\n"
+"\n"
+"ProjectSettings.add_property_info(property_info)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:45
+msgid "Clears the whole configuration (not recommended, may break things)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:54
+msgid ""
+"Returns the order of a configuration value (influences when saved to the "
+"config file)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:63
+msgid ""
+"Returns the value of a setting.\n"
+"[b]Example:[/b]\n"
+"[codeblock]\n"
+"print(ProjectSettings.get_setting(\"application/config/name\"))\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:76
+msgid ""
+"Converts a localized path ([code]res://[/code]) to a full native OS path."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:85
+msgid "Returns [code]true[/code] if a configuration value is present."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:96
+msgid ""
+"Loads the contents of the .pck or .zip file specified by [code]pack[/code] "
+"into the resource filesystem ([code]res://[/code]). Returns [code]true[/"
+"code] on success.\n"
+"[b]Note:[/b] If a file from [code]pack[/code] shares the same path as a file "
+"already in the resource filesystem, any attempts to load that file will use "
+"the file from [code]pack[/code] unless [code]replace_files[/code] is set to "
+"[code]false[/code]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:106
+msgid "Convert a path to a localized path ([code]res://[/code] path)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:115
+msgid ""
+"Returns [code]true[/code] if the specified property exists and its initial "
+"value differs from the current value."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:124
+msgid ""
+"Returns the specified property's initial value. Returns [code]null[/code] if "
+"the property does not exist."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:131
+msgid "Saves the configuration to the [code]project.godot[/code] file."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:140
+msgid ""
+"Saves the configuration to a custom file. The file extension must be [code]."
+"godot[/code] (to save in text-based [ConfigFile] format) or [code].binary[/"
+"code] (to save in binary format)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:151
+msgid ""
+"Sets the specified property's initial value. This is the value the property "
+"reverts to."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:162
+msgid ""
+"Sets the order of a configuration value (influences when saved to the config "
+"file)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:173
+msgid ""
+"Sets the value of a setting.\n"
+"[b]Example:[/b]\n"
+"[codeblock]\n"
+"ProjectSettings.set_setting(\"application/config/name\", \"Example\")\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:183
+msgid "Background color for the boot splash."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:186
+msgid ""
+"If [code]true[/code], scale the boot splash image to the full window length "
+"when engine starts. If [code]false[/code], the engine will leave it at the "
+"default pixel size."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:189
+msgid "Path to an image used as the boot splash."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:192
+msgid ""
+"If [code]true[/code], applies linear filtering when scaling the image "
+"(recommended for high resolution artwork). If [code]false[/code], uses "
+"nearest-neighbor interpolation (recommended for pixel art)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:195
+msgid ""
+"This user directory is used for storing persistent data ([code]user://[/"
+"code] filesystem). If left empty, [code]user://[/code] resolves to a project-"
+"specific folder in Godot's own configuration folder (see [method OS."
+"get_user_data_dir]). If a custom directory name is defined, this name will "
+"be used instead and appended to the system-specific user data directory "
+"(same parent folder as the Godot configuration folder documented in [method "
+"OS.get_user_data_dir]).\n"
+"The [member application/config/use_custom_user_dir] setting must be enabled "
+"for this to take effect."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:199
+msgid ""
+"The project's description, displayed as a tooltip in the Project Manager "
+"when hovering the project."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:202
+msgid ""
+"Icon used for the project, set when project loads. Exporters will also use "
+"this icon when possible."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:205
+msgid ""
+"Icon set in [code].icns[/code] format used on macOS to set the game's icon. "
+"This is done automatically on start by calling [method DisplayServer."
+"set_native_icon]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:208
+msgid ""
+"The project's name. It is used both by the Project Manager and by exporters. "
+"The project name can be translated by translating its value in localization "
+"files."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:211
+msgid ""
+"Specifies a file to override project settings. For example: [code]user://"
+"custom_settings.cfg[/code].\n"
+"[b]Note:[/b] Regardless of this setting's value, [code]res://override.cfg[/"
+"code] will still be read to override the project settings (see this class' "
+"description at the top)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:215
+msgid ""
+"If [code]true[/code], the project will save user data to its own user "
+"directory (see [member application/config/custom_user_dir_name]). This "
+"setting is only effective on desktop platforms. A name must be set in the "
+"[member application/config/custom_user_dir_name] setting for this to take "
+"effect. If [code]false[/code], the project will save user data to [code](OS "
+"user data directory)/Godot/app_userdata/(project name)[/code]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:218
+msgid ""
+"Icon set in [code].ico[/code] format used on Windows to set the game's icon. "
+"This is done automatically on start by calling [method DisplayServer."
+"set_native_icon]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:221
+msgid ""
+"If [code]true[/code], disables printing to standard error in an exported "
+"build."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:224
+msgid ""
+"If [code]true[/code], disables printing to standard output in an exported "
+"build."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:227
+msgid ""
+"Forces a delay between frames in the main loop (in milliseconds). This may "
+"be useful if you plan to disable vertical synchronization."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:230
+msgid ""
+"If [code]true[/code], enables low-processor usage mode. This setting only "
+"works on desktop platforms. The screen is not redrawn if nothing changes "
+"visually. This is meant for writing applications and editors, but is pretty "
+"useless (and can hurt performance) in most games."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:233
+msgid ""
+"Amount of sleeping between frames when the low-processor usage mode is "
+"enabled (in microseconds). Higher values will result in lower CPU usage."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:236
+msgid "Path to the main scene file that will be loaded when the project runs."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:239 doc/classes/ProjectSettings.xml:242
+msgid ""
+"Audio buses will disable automatically when sound goes below a given dB "
+"threshold for a given time. This saves CPU as effects assigned to that bus "
+"will no longer do any processing."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:245
+msgid ""
+"Default [AudioBusLayout] resource file to use in the project, unless "
+"overridden by the scene."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:248
+msgid ""
+"Specifies the audio driver to use. This setting is platform-dependent as "
+"each platform supports different audio drivers. If left empty, the default "
+"audio driver will be used."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:251
+msgid ""
+"If [code]true[/code], microphone input will be allowed. This requires "
+"appropriate permissions to be set when exporting to Android or iOS."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:254
+msgid ""
+"Mixing rate used for audio. In general, it's better to not touch this and "
+"leave it to the host operating system."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:257
+msgid ""
+"Output latency in milliseconds for audio. Lower values will result in lower "
+"audio latency at the cost of increased CPU usage. Low values may result in "
+"audible cracking on slower hardware."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:260
+msgid ""
+"Safer override for [member audio/output_latency] in the Web platform, to "
+"avoid audio issues especially on mobile devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:263
+msgid ""
+"Setting to hardcode audio delay when playing video. Best to leave this "
+"untouched unless you know what you are doing."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:266
+msgid ""
+"The default compression level for gzip. Affects compressed scenes and "
+"resources. Higher levels result in smaller files at the cost of compression "
+"speed. Decompression speed is mostly unaffected by the compression level. "
+"[code]-1[/code] uses the default gzip compression level, which is identical "
+"to [code]6[/code] but could change in the future due to underlying zlib "
+"updates."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:269
+msgid ""
+"The default compression level for Zlib. Affects compressed scenes and "
+"resources. Higher levels result in smaller files at the cost of compression "
+"speed. Decompression speed is mostly unaffected by the compression level. "
+"[code]-1[/code] uses the default gzip compression level, which is identical "
+"to [code]6[/code] but could change in the future due to underlying zlib "
+"updates."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:272
+msgid ""
+"The default compression level for Zstandard. Affects compressed scenes and "
+"resources. Higher levels result in smaller files at the cost of compression "
+"speed. Decompression speed is mostly unaffected by the compression level."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:275
+msgid ""
+"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
+"distance matching[/url] in Zstandard."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:278
+msgid ""
+"Largest size limit (in power of 2) allowed when compressing using long-"
+"distance matching with Zstandard. Higher values can result in better "
+"compression, but will require more memory when compressing and decompressing."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:281
+msgid ""
+"If [code]true[/code], displays getters and setters in autocompletion results "
+"in the script editor. This setting is meant to be used when porting old "
+"projects (Godot 2), as using member variables is the preferred style from "
+"Godot 3 onwards."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:288
+msgid ""
+"If [code]true[/code], enables warnings when a constant is used as a function."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:291
+msgid ""
+"If [code]true[/code], enables warnings when deprecated keywords are used."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:294
+msgid ""
+"If [code]true[/code], enables specific GDScript warnings (see [code]debug/"
+"gdscript/warnings/*[/code] settings). If [code]false[/code], disables all "
+"GDScript warnings."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:297
+msgid ""
+"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
+"not generate warnings."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:300
+msgid ""
+"If [code]true[/code], enables warnings when using a function as if it was a "
+"property."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:303
+msgid ""
+"If [code]true[/code], enables warnings when a ternary operator may emit "
+"values with incompatible types."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:306
+msgid ""
+"If [code]true[/code], enables warnings when dividing an integer by another "
+"integer (the decimal part will be discarded)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:309
+msgid ""
+"If [code]true[/code], enables warnings when passing a floating-point value "
+"to a function that expects an integer (it will be converted and lose "
+"precision)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:312
+msgid ""
+"If [code]true[/code], enables warnings when using a property as if it was a "
+"function."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:317
+msgid ""
+"If [code]true[/code], enables warnings when calling a function without using "
+"its return value (by assigning it to a variable or using it as a function "
+"argument). Such return values are sometimes used to denote possible errors "
+"using the [enum Error] enum."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:320
+msgid ""
+"If [code]true[/code], enables warnings when defining a local or subclass "
+"member variable that would shadow a variable at an upper level (such as a "
+"member variable)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:325
+msgid ""
+"If [code]true[/code], enables warnings when calling an expression that has "
+"no effect on the surrounding code, such as writing [code]2 + 2[/code] as a "
+"statement."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:328
+msgid ""
+"If [code]true[/code], enables warnings when calling a ternary expression "
+"that has no effect on the surrounding code, such as writing [code]42 if "
+"active else 0[/code] as a statement."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:331
+msgid ""
+"If [code]true[/code], all warnings will be reported as if they were errors."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:334
+msgid ""
+"If [code]true[/code], enables warnings when using a variable that wasn't "
+"previously assigned."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:337
+msgid ""
+"If [code]true[/code], enables warnings when assigning a variable using an "
+"assignment operator like [code]+=[/code] if the variable wasn't previously "
+"assigned."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:340
+msgid ""
+"If [code]true[/code], enables warnings when unreachable code is detected "
+"(such as after a [code]return[/code] statement that will always be executed)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:345
+msgid ""
+"If [code]true[/code], enables warnings when using an expression whose type "
+"may not be compatible with the function parameter expected."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:348
+msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:351
+msgid ""
+"If [code]true[/code], enables warnings when calling a method whose presence "
+"is not guaranteed at compile-time in the class."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:354
+msgid ""
+"If [code]true[/code], enables warnings when accessing a property whose "
+"presence is not guaranteed at compile-time in the class."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:363
+msgid "If [code]true[/code], enables warnings when a signal is unused."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:366
+msgid "If [code]true[/code], enables warnings when a local variable is unused."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:369
+msgid ""
+"If [code]true[/code], enables warnings when assigning the result of a "
+"function that returns [code]void[/code] to a variable."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:372
+msgid "Message to be displayed before the backtrace when the engine crashes."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:375
+msgid ""
+"Maximum number of frames per second allowed. The actual number of frames per "
+"second may still be below this value if the game is lagging.\n"
+"If [member display/window/vsync/use_vsync] is enabled, it takes precedence "
+"and the forced FPS number cannot exceed the monitor's refresh rate.\n"
+"This setting is therefore mostly relevant for lowering the maximum FPS below "
+"VSync, e.g. to perform non real-time rendering of static frames, or test the "
+"project under lag conditions."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:380
+msgid "Maximum call stack allowed for debugging GDScript."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:383
+msgid "Maximum amount of functions per frame allowed when profiling."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:386
+msgid "Print frames per second to standard output every second."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:389
+msgid ""
+"Print more information to standard output when running. It displays "
+"information such as memory leaks, which scenes and resources are being "
+"loaded, etc."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:392
+msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:395
+msgid ""
+"Color of the contact points between collision shapes, visible when \"Visible "
+"Collision Shapes\" is enabled in the Debug menu."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:398
+msgid ""
+"Maximum number of contact points between collision shapes to display when "
+"\"Visible Collision Shapes\" is enabled in the Debug menu."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:401
+msgid ""
+"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
+"enabled in the Debug menu."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:404
+msgid ""
+"Color of the disabled navigation geometry, visible when \"Visible Navigation"
+"\" is enabled in the Debug menu."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:407
+msgid ""
+"Color of the navigation geometry, visible when \"Visible Navigation\" is "
+"enabled in the Debug menu."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:410
+msgid "Custom image for the mouse cursor (limited to 256×256)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:413
+msgid "Hotspot for the custom mouse cursor image."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:416
+msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:419
+msgid ""
+"If [code]true[/code], allows HiDPI display on Windows and macOS. This "
+"setting has no effect on desktop Linux, as DPI-awareness fallbacks are not "
+"supported there."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:422
+msgid ""
+"If [code]true[/code], keeps the screen on (even in case of inactivity), so "
+"the screensaver does not take over. Works on desktop and mobile platforms."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:425
+msgid "Default orientation on mobile devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:428
+msgid ""
+"If [code]true[/code], the home indicator is hidden automatically. This only "
+"affects iOS devices without a physical home button."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:431
+msgid "Force the window to be always on top."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:434
+msgid "Force the window to be borderless."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:437
+msgid "Sets the window to full screen when it starts."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:440
+msgid ""
+"Sets the game's main viewport height. On desktop platforms, this is the "
+"default window size. Stretch mode settings also use this as a reference when "
+"enabled."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:443
+msgid "Allows the window to be resizable by default."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:446
+msgid ""
+"If greater than zero, overrides the window height when running the game. "
+"Useful for testing stretch modes."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:449
+msgid ""
+"If greater than zero, overrides the window width when running the game. "
+"Useful for testing stretch modes."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:452
+msgid ""
+"Sets the game's main viewport width. On desktop platforms, this is the "
+"default window size. Stretch mode settings also use this as a reference when "
+"enabled."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:455
+msgid ""
+"Specifies the tablet driver to use. If left empty, the default driver will "
+"be used."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:458
+msgid ""
+"If [code]true[/code], enables vertical synchronization. This eliminates "
+"tearing that may appear in moving scenes, at the cost of higher input "
+"latency and stuttering at lower framerates. If [code]false[/code], vertical "
+"synchronization will be disabled, however, many platforms will enforce it "
+"regardless (such as mobile platforms and HTML5)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:461
+msgid ""
+"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
+"enables vertical synchronization via the operating system's window "
+"compositor when in windowed mode and the compositor is enabled. This will "
+"prevent stutter in certain situations. (Windows only.)\n"
+"[b]Note:[/b] This option is experimental and meant to alleviate stutter "
+"experienced by some users. However, some users have experienced a Vsync "
+"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:465
+msgid ""
+"Search path for project-specific script templates. Script templates will be "
+"search both in the editor-specific path and in this project-specific path."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:468
+msgid ""
+"Text-based file extensions to include in the script editor's \"Find in Files"
+"\" feature. You can add e.g. [code]tscn[/code] if you wish to also parse "
+"your scene files, especially if you use built-in scripts which are "
+"serialized in the scene files."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:471
+msgid ""
+"Default value for [member ScrollContainer.scroll_deadzone], which will be "
+"used for all [ScrollContainer]s unless overridden."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:474
+msgid ""
+"If [code]true[/code], swaps Cancel and OK buttons in dialogs on Windows and "
+"UWP to follow interface conventions."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:479
+msgid ""
+"Path to a custom [Theme] resource file to use for the project ([code]theme[/"
+"code] or generic [code]tres[/code]/[code]res[/code] extension)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:482
+msgid ""
+"Path to a custom [Font] resource to use as default for all GUI elements of "
+"the project."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:485
+msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:488
+msgid ""
+"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
+"(in milliseconds)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:491
+msgid "Timer for detecting idle in [TextEdit] (in seconds)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:494
+msgid "Default delay for tooltips (in seconds)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:497
+msgid ""
+"Default [InputEventAction] to confirm a focused button, menu or list item, "
+"or validate input.\n"
+"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
+"necessary for the internal logic of several [Control]s. The events assigned "
+"to the action can however be modified."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:501
+msgid ""
+"Default [InputEventAction] to discard a modal or pending input.\n"
+"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
+"necessary for the internal logic of several [Control]s. The events assigned "
+"to the action can however be modified."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:505
+msgid ""
+"Default [InputEventAction] to move down in the UI.\n"
+"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
+"necessary for the internal logic of several [Control]s. The events assigned "
+"to the action can however be modified."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:509
+msgid ""
+"Default [InputEventAction] to go to the end position of a [Control] (e.g. "
+"last item in an [ItemList] or a [Tree]), matching the behavior of [constant "
+"KEY_END] on typical desktop UI systems.\n"
+"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
+"necessary for the internal logic of several [Control]s. The events assigned "
+"to the action can however be modified."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:513
+msgid ""
+"Default [InputEventAction] to focus the next [Control] in the scene. The "
+"focus behavior can be configured via [member Control.focus_next].\n"
+"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
+"necessary for the internal logic of several [Control]s. The events assigned "
+"to the action can however be modified."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:517
+msgid ""
+"Default [InputEventAction] to focus the previous [Control] in the scene. The "
+"focus behavior can be configured via [member Control.focus_previous].\n"
+"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
+"necessary for the internal logic of several [Control]s. The events assigned "
+"to the action can however be modified."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:521
+msgid ""
+"Default [InputEventAction] to go to the start position of a [Control] (e.g. "
+"first item in an [ItemList] or a [Tree]), matching the behavior of [constant "
+"KEY_HOME] on typical desktop UI systems.\n"
+"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
+"necessary for the internal logic of several [Control]s. The events assigned "
+"to the action can however be modified."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:525
+msgid ""
+"Default [InputEventAction] to move left in the UI.\n"
+"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
+"necessary for the internal logic of several [Control]s. The events assigned "
+"to the action can however be modified."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:529
+msgid ""
+"Default [InputEventAction] to go down a page in a [Control] (e.g. in an "
+"[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEDOWN] on "
+"typical desktop UI systems.\n"
+"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
+"necessary for the internal logic of several [Control]s. The events assigned "
+"to the action can however be modified."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:533
+msgid ""
+"Default [InputEventAction] to go up a page in a [Control] (e.g. in an "
+"[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEUP] on "
+"typical desktop UI systems.\n"
+"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
+"necessary for the internal logic of several [Control]s. The events assigned "
+"to the action can however be modified."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:537
+msgid ""
+"Default [InputEventAction] to move right in the UI.\n"
+"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
+"necessary for the internal logic of several [Control]s. The events assigned "
+"to the action can however be modified."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:541
+msgid ""
+"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
+"[ItemList] or a [Tree]).\n"
+"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
+"necessary for the internal logic of several [Control]s. The events assigned "
+"to the action can however be modified."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:545
+msgid ""
+"Default [InputEventAction] to move up in the UI.\n"
+"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
+"necessary for the internal logic of several [Control]s. The events assigned "
+"to the action can however be modified."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:549
+msgid ""
+"If [code]true[/code], sends mouse input events when tapping or swiping on "
+"the touchscreen."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:552
+msgid ""
+"If [code]true[/code], sends touch input events when clicking or dragging the "
+"mouse."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:555
+msgid "Optional name for the 2D physics layer 1."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:558
+msgid "Optional name for the 2D physics layer 10."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:561
+msgid "Optional name for the 2D physics layer 11."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:564
+msgid "Optional name for the 2D physics layer 12."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:567
+msgid "Optional name for the 2D physics layer 13."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:570
+msgid "Optional name for the 2D physics layer 14."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:573
+msgid "Optional name for the 2D physics layer 15."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:576
+msgid "Optional name for the 2D physics layer 16."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:579
+msgid "Optional name for the 2D physics layer 17."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:582
+msgid "Optional name for the 2D physics layer 18."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:585
+msgid "Optional name for the 2D physics layer 19."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:588
+msgid "Optional name for the 2D physics layer 2."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:591
+msgid "Optional name for the 2D physics layer 20."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:594
+msgid "Optional name for the 2D physics layer 3."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:597
+msgid "Optional name for the 2D physics layer 4."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:600
+msgid "Optional name for the 2D physics layer 5."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:603
+msgid "Optional name for the 2D physics layer 6."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:606
+msgid "Optional name for the 2D physics layer 7."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:609
+msgid "Optional name for the 2D physics layer 8."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:612
+msgid "Optional name for the 2D physics layer 9."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:615
+msgid "Optional name for the 2D render layer 1."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:618
+msgid "Optional name for the 2D render layer 10."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:621
+msgid "Optional name for the 2D render layer 11."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:624
+msgid "Optional name for the 2D render layer 12."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:627
+msgid "Optional name for the 2D render layer 13."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:630
+msgid "Optional name for the 2D render layer 14."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:633
+msgid "Optional name for the 2D render layer 15."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:636
+msgid "Optional name for the 2D render layer 16."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:639
+msgid "Optional name for the 2D render layer 17."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:642
+msgid "Optional name for the 2D render layer 18."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:645
+msgid "Optional name for the 2D render layer 19."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:648
+msgid "Optional name for the 2D render layer 2."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:651
+msgid "Optional name for the 2D render layer 20."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:654
+msgid "Optional name for the 2D render layer 3."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:657
+msgid "Optional name for the 2D render layer 4."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:660
+msgid "Optional name for the 2D render layer 5."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:663
+msgid "Optional name for the 2D render layer 6."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:666
+msgid "Optional name for the 2D render layer 7."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:669
+msgid "Optional name for the 2D render layer 8."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:672
+msgid "Optional name for the 2D render layer 9."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:675
+msgid "Optional name for the 3D physics layer 1."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:678
+msgid "Optional name for the 3D physics layer 10."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:681
+msgid "Optional name for the 3D physics layer 11."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:684
+msgid "Optional name for the 3D physics layer 12."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:687
+msgid "Optional name for the 3D physics layer 13."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:690
+msgid "Optional name for the 3D physics layer 14."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:693
+msgid "Optional name for the 3D physics layer 15."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:696
+msgid "Optional name for the 3D physics layer 16."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:699
+msgid "Optional name for the 3D physics layer 17."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:702
+msgid "Optional name for the 3D physics layer 18."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:705
+msgid "Optional name for the 3D physics layer 19."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:708
+msgid "Optional name for the 3D physics layer 2."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:711
+msgid "Optional name for the 3D physics layer 20."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:714
+msgid "Optional name for the 3D physics layer 3."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:717
+msgid "Optional name for the 3D physics layer 4."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:720
+msgid "Optional name for the 3D physics layer 5."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:723
+msgid "Optional name for the 3D physics layer 6."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:726
+msgid "Optional name for the 3D physics layer 7."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:729
+msgid "Optional name for the 3D physics layer 8."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:732
+msgid "Optional name for the 3D physics layer 9."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:735
+msgid "Optional name for the 3D render layer 1."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:738
+msgid "Optional name for the 3D render layer 10."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:741
+msgid "Optional name for the 3D render layer 11."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:744
+msgid "Optional name for the 3D render layer 12."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:747
+msgid "Optional name for the 3D render layer 13."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:750
+msgid "Optional name for the 3D render layer 14"
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:753
+msgid "Optional name for the 3D render layer 15."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:756
+msgid "Optional name for the 3D render layer 16."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:759
+msgid "Optional name for the 3D render layer 17."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:762
+msgid "Optional name for the 3D render layer 18."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:765
+msgid "Optional name for the 3D render layer 19."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:768
+msgid "Optional name for the 3D render layer 2."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:771
+msgid "Optional name for the 3D render layer 20."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:774
+msgid "Optional name for the 3D render layer 3."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:777
+msgid "Optional name for the 3D render layer 4."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:780
+msgid "Optional name for the 3D render layer 5."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:783
+msgid "Optional name for the 3D render layer 6."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:786
+msgid "Optional name for the 3D render layer 7."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:789
+msgid "Optional name for the 3D render layer 8."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:792
+msgid "Optional name for the 3D render layer 9."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:795
+msgid ""
+"The locale to fall back to if a translation isn't available in a given "
+"language. If left empty, [code]en[/code] (English) will be used."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:798
+msgid ""
+"If non-empty, this locale will be used when running the project from the "
+"editor."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:801
+msgid "If [code]true[/code], logs all output to files."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:806
+msgid ""
+"Path to logs within the project. Using an [code]user://[/code] path is "
+"recommended."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:809
+msgid "Specifies the maximum amount of log files allowed (used for rotation)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:812
+msgid ""
+"Godot uses a message queue to defer some function calls. If you run out of "
+"space on it (you will see an error), you can increase the size here."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:815
+msgid ""
+"This is used by servers when used in multi-threading mode (servers and "
+"visual). RIDs are preallocated to avoid stalling the server requesting them "
+"on threads. If servers get stalled too often when loading resources in a "
+"thread, increase this number."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:832
+msgid ""
+"Maximum amount of characters allowed to send as output from the debugger. "
+"Over this value, content is dropped. This helps not to stall the debugger "
+"connection."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:835
+msgid ""
+"Maximum number of errors allowed to be sent from the debugger. Over this "
+"value, content is dropped. This helps not to stall the debugger connection."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:838
+msgid ""
+"Maximum amount of messages in the debugger queue. Over this value, content "
+"is dropped. This helps to limit the debugger memory usage."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:841
+msgid ""
+"Maximum number of warnings allowed to be sent from the debugger. Over this "
+"value, content is dropped. This helps not to stall the debugger connection."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:844
+msgid ""
+"Default size of packet peer stream for deserializing Godot data. Over this "
+"size, data is dropped."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:847
+msgid "Timeout (in seconds) for connection attempts using TCP."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:850
+msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:853
+msgid ""
+"Amount of read ahead used by remote filesystem. Higher values decrease the "
+"effects of latency at the cost of higher bandwidth usage."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:856
+msgid "Page size used by remote filesystem (in bytes)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:859
+msgid ""
+"The CA certificates bundle to use for SSL connections. If this is set to a "
+"non-empty value, this will [i]override[/i] Godot's default [url=https://"
+"github.com/godotengine/godot/blob/master/thirdparty/certs/ca-certificates."
+"crt]Mozilla certificate bundle[/url]. If left empty, the default certificate "
+"bundle will be used.\n"
+"If in doubt, leave this setting empty."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:863
+msgid ""
+"When creating node names automatically, set the type of casing in this "
+"project. This is mostly an editor setting."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:866
+msgid ""
+"What to use to separate node name from number. This is mostly an editor "
+"setting."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:869
+msgid "Size of the hash table used for the broad-phase 2D hash grid algorithm."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:872
+msgid "Cell size used for the broad-phase 2D hash grid algorithm."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:875
+msgid "The default angular damp in 2D."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:878
+msgid ""
+"The default gravity strength in 2D.\n"
+"[b]Note:[/b] This property is only read when the project starts. To change "
+"the default gravity at runtime, use the following code sample:\n"
+"[codeblock]\n"
+"# Set the default gravity strength to 98.\n"
+"PhysicsServer2D.area_set_param(get_viewport().find_world_2d().get_space(), "
+"PhysicsServer2D.AREA_PARAM_GRAVITY, 98)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:886
+msgid ""
+"The default gravity direction in 2D.\n"
+"[b]Note:[/b] This property is only read when the project starts. To change "
+"the default gravity vector at runtime, use the following code sample:\n"
+"[codeblock]\n"
+"# Set the default gravity direction to `Vector2(0, 1)`.\n"
+"PhysicsServer2D.area_set_param(get_viewport().find_world_2d().get_space(), "
+"PhysicsServer2D.AREA_PARAM_GRAVITY_VECTOR, Vector2(0, 1))\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:894
+msgid "The default linear damp in 2D."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:897
+msgid ""
+"Threshold defining the surface size that constitutes a large object with "
+"regard to cells in the broad-phase 2D hash grid algorithm."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:900
+msgid ""
+"Sets which physics engine to use for 2D physics.\n"
+"\"DEFAULT\" and \"GodotPhysics2D\" are the same, as there is currently no "
+"alternative 2D physics server implemented."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:904
+msgid ""
+"Threshold angular velocity under which a 2D physics body will be considered "
+"inactive. See [constant PhysicsServer2D."
+"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:907
+msgid ""
+"Threshold linear velocity under which a 2D physics body will be considered "
+"inactive. See [constant PhysicsServer2D."
+"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:910
+msgid ""
+"Sets whether physics is run on the main thread or a separate one. Running "
+"the server on a thread increases performance, but restricts API access to "
+"only physics process.\n"
+"[b]Warning:[/b] As of Godot 3.2, there are mixed reports about the use of a "
+"Multi-Threaded thread model for physics. Be sure to assess whether it does "
+"give you extra performance and no regressions when using it."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:914
+msgid ""
+"Time (in seconds) of inactivity before which a 2D physics body will put to "
+"sleep. See [constant PhysicsServer2D.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:917
+msgid ""
+"Sets whether the 3D physics world will be created with support for "
+"[SoftBody3D] physics. Only applies to the Bullet physics engine."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:920
+msgid "The default angular damp in 3D."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:923
+msgid ""
+"The default gravity strength in 3D.\n"
+"[b]Note:[/b] This property is only read when the project starts. To change "
+"the default gravity at runtime, use the following code sample:\n"
+"[codeblock]\n"
+"# Set the default gravity strength to 9.8.\n"
+"PhysicsServer3D.area_set_param(get_viewport().find_world().get_space(), "
+"PhysicsServer3D.AREA_PARAM_GRAVITY, 9.8)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:931
+msgid ""
+"The default gravity direction in 3D.\n"
+"[b]Note:[/b] This property is only read when the project starts. To change "
+"the default gravity vector at runtime, use the following code sample:\n"
+"[codeblock]\n"
+"# Set the default gravity direction to `Vector3(0, -1, 0)`.\n"
+"PhysicsServer3D.area_set_param(get_viewport().find_world().get_space(), "
+"PhysicsServer3D.AREA_PARAM_GRAVITY_VECTOR, Vector3(0, -1, 0))\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:939
+msgid "The default linear damp in 3D."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:942
+msgid ""
+"Sets which physics engine to use for 3D physics.\n"
+"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
+"physics engine. The \"GodotPhysics3D\" engine is still supported as an "
+"alternative."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:946
+msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:949
+msgid ""
+"The number of fixed iterations per second. This controls how often physics "
+"simulation and [method Node._physics_process] methods are run.\n"
+"[b]Note:[/b] This property is only read when the project starts. To change "
+"the physics FPS at runtime, set [member Engine.iterations_per_second] "
+"instead."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:953
+msgid ""
+"Fix to improve physics jitter, specially on monitors where refresh rate is "
+"different than the physics FPS.\n"
+"[b]Note:[/b] This property is only read when the project starts. To change "
+"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:957
+msgid ""
+"Default background clear color. Overridable per [Viewport] using its "
+"[Environment]. See [member Environment.background_mode] and [member "
+"Environment.background_color] in particular. To change this default color "
+"programmatically, use [method RenderingServer.set_default_clear_color]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:960
+msgid ""
+"[Environment] that will be used as a fallback environment in case a scene "
+"does not specify its own environment. The default environment is loaded in "
+"at scene load time regardless of whether you have set an environment or not. "
+"If you do not rely on the fallback environment, it is best to delete "
+"[code]default_env.tres[/code], or to specify a different default environment "
+"here."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:989
+msgid ""
+"Max amount of elements renderable in a frame. If more than this are visible "
+"per frame, they will be dropped. Keep in mind elements refer to mesh "
+"surfaces and not meshes themselves."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:994
+msgid ""
+"Some NVIDIA GPU drivers have a bug which produces flickering issues for the "
+"[code]draw_rect[/code] method, especially as used in [TileMap]. Refer to "
+"[url=https://github.com/godotengine/godot/issues/9913]GitHub issue 9913[/"
+"url] for details.\n"
+"If [code]true[/code], this option enables a \"safe\" code path for such "
+"NVIDIA GPUs at the cost of performance. This option only impacts the GLES2 "
+"rendering backend, and only desktop platforms. It is not necessary when "
+"using the Vulkan backend."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:998
+msgid ""
+"If [code]true[/code], forces snapping of polygons to pixels in 2D rendering. "
+"May help in some pixel art styles."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1001
+msgid ""
+"Sets the quality of the depth of field effect. Higher quality takes more "
+"samples, which is slower but looks smoother."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1004
+msgid ""
+"Sets the depth of field shape. Can be Box, Hexagon, or Circle. Box is the "
+"fastest. Circle is the most realistic, but also the most expensive to "
+"compute."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1007
+msgid ""
+"If [code]true[/code], jitters DOF samples to make effect slightly blurrier "
+"and hide lines created from low sample rates. This can result in a slightly "
+"grainy appearance when used with a low number of samples."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1010
+msgid ""
+"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
+"architecture already does this."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1013
+msgid ""
+"If [code]true[/code], performs a previous depth pass before rendering "
+"materials. This increases performance in scenes with high overdraw, when "
+"complex materials and lighting are used."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1016
+msgid ""
+"The directional shadow's size in pixels. Higher values will result in "
+"sharper shadows, at the cost of performance. The value will be rounded up to "
+"the nearest power of 2."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1019
+msgid ""
+"Lower-end override for [member rendering/quality/directional_shadow/size] on "
+"mobile devices, due to performance concerns or driver support."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1022
+msgid ""
+"Quality setting for shadows cast by [DirectionalLight3D]s. Higher quality "
+"settings use more samples when reading from shadow maps and are thus slower. "
+"Low quality settings may result in shadows looking grainy."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1025
+msgid ""
+"Lower-end override for [member rendering/quality/directional_shadow/"
+"soft_shadow_quality] on mobile devices, due to performance concerns or "
+"driver support."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1028
+msgid ""
+"The video driver to use (\"GLES2\" or \"Vulkan\").\n"
+"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
+"rendering-driver[/code] command line argument.\n"
+"[b]FIXME:[/b] No longer valid after DisplayServer split:\n"
+"In such cases, this property is not updated, so use [code]OS."
+"get_current_video_driver[/code] to query it at run-time."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1034
+msgid ""
+"If [code]true[/code], take additional samples when rendering objects "
+"affected by a [GIProbe] to reduce artifacts from only sampling in one "
+"direction."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1037
+msgid ""
+"Sets the number of cone samples taken when rendering objects affected by "
+"[GIProbe]s."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1040
+msgid ""
+"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."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1043
+msgid ""
+"Lower-end override for [member rendering/quality/glow/upscale_mode] on "
+"mobile devices, due to performance concerns or driver support."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1046
+msgid ""
+"Strategy used for framebuffer allocation. The simpler it is, the less "
+"resources it uses (but the less features it supports). If set to \"2D "
+"Without Sampling\" or \"3D Without Effects\", sample buffers will not be "
+"allocated. This means [code]SCREEN_TEXTURE[/code] and [code]DEPTH_TEXTURE[/"
+"code] will not be available in shaders and post-processing effects will not "
+"be available in the [Environment]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1049
+msgid ""
+"Lower-end override for [member rendering/quality/intended_usage/"
+"framebuffer_allocation] on mobile devices, due to performance concerns or "
+"driver support."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1052
+msgid ""
+"Number of cubemaps to store in the reflection atlas. The number of "
+"[ReflectionProbe]s in a scene will be limited by this amount. A higher "
+"number requires more VRAM."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1055
+msgid ""
+"Size of cubemap faces for [ReflectionProbe]s. A higher number requires more "
+"VRAM and may make reflection probe updating slower."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1058
+msgid ""
+"Lower-end override for [member rendering/quality/reflection_atlas/"
+"reflection_size] on mobile devices, due to performance concerns or driver "
+"support."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1061
+msgid ""
+"Use a higher quality variant of the fast filtering algorithm. Significantly "
+"slower than using default quality, but results in smoother reflections. "
+"Should only be used when the scene is especially detailed."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1064
+msgid ""
+"Sets the number of samples to take when using importance sampling for [Sky]s "
+"and [ReflectionProbe]s. A higher value will result in smoother, higher "
+"quality reflections, but increases time to calculate radiance maps. In "
+"general, fewer samples are needed for simpler, low dynamic range "
+"environments while more samples are needed for HDR environments and "
+"environments with a high level of detail."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1067
+msgid ""
+"Lower-end override for [member rendering/quality/reflections/ggx_samples] on "
+"mobile devices, due to performance concerns or driver support."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1070
+msgid ""
+"Limits the number of layers to use in radiance maps when using importance "
+"sampling. A lower number will be slightly faster and take up less VRAM."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1073
+msgid ""
+"If [code]true[/code], 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 [member rendering/quality/reflections/roughness_layers] times more "
+"memory."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1076
+msgid ""
+"Lower-end override for [member rendering/quality/reflections/"
+"texture_array_reflections] on mobile devices, due to performance concerns or "
+"driver support."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1079
+msgid ""
+"Sets the number of MSAA samples to use (as a power of two). MSAA is used to "
+"reduce aliasing around the edges of polygons. A higher MSAA value results in "
+"smoother edges but can be significantly slower on some hardware.\n"
+"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1083
+msgid ""
+"Sets the screen-space antialiasing mode for the default screen [Viewport]. "
+"Screen-space antialiasing works by selectively blurring edges in a post-"
+"process shader. It differs from MSAA which takes multiple coverage samples "
+"while rendering objects. Screen-space AA methods are typically faster than "
+"MSAA and will smooth out specular aliasing, but tend to make scenes appear "
+"blurry.\n"
+"Another way to combat specular aliasing is to enable [member rendering/"
+"quality/screen_filters/screen_space_roughness_limiter_enabled]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1093
+msgid ""
+"Sets the quality for rough screen-space reflections. Turning off will make "
+"all screen space reflections sharp, while higher values make rough "
+"reflections look better."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1096
+msgid ""
+"If [code]true[/code], uses faster but lower-quality Blinn model to generate "
+"blurred reflections instead of the GGX model."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1099
+msgid ""
+"Lower-end override for [member rendering/quality/shading/"
+"force_blinn_over_ggx] on mobile devices, due to performance concerns or "
+"driver support."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1102
+msgid ""
+"If [code]true[/code], uses faster but lower-quality Lambert material "
+"lighting model instead of Burley."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1105
+msgid ""
+"Lower-end override for [member rendering/quality/shading/"
+"force_lambert_over_burley] on mobile devices, due to performance concerns or "
+"driver support."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1108
+msgid ""
+"If [code]true[/code], forces vertex shading for all rendering. This can "
+"increase performance a lot, but also reduces quality immensely. Can be used "
+"to optimize performance on low-end mobile devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1111
+msgid ""
+"Lower-end override for [member rendering/quality/shading/"
+"force_vertex_shading] on mobile devices, due to performance concerns or "
+"driver support."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1114 doc/classes/ProjectSettings.xml:1117
+#: doc/classes/ProjectSettings.xml:1120 doc/classes/ProjectSettings.xml:1123
+msgid ""
+"Subdivision quadrant size for shadow mapping. See shadow mapping "
+"documentation."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1126
+msgid ""
+"Size for shadow atlas (used for OmniLights and SpotLights). See "
+"documentation."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1129
+msgid ""
+"Lower-end override for [member rendering/quality/shadow_atlas/size] on "
+"mobile devices, due to performance concerns or driver support."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1132
+msgid ""
+"Quality setting for shadows cast by [OmniLight3D]s and [SpotLight3D]s. "
+"Higher quality settings use more samples when reading from shadow maps and "
+"are thus slower. Low quality settings may result in shadows looking grainy."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1135
+msgid ""
+"Lower-end override for [member rendering/quality/shadows/"
+"soft_shadow_quality] on mobile devices, due to performance concerns or "
+"driver support."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1138
+msgid ""
+"If [code]true[/code], screen-space ambient occlusion will be rendered at "
+"half size and then upscaled before being added to the scene. This is "
+"significantly faster but may miss small details."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1141
+msgid ""
+"Sets the quality of the screen-space ambient occlusion effect. Higher values "
+"take more samples and so will result in better quality, at the cost of "
+"performance."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1144
+msgid ""
+"Scales the depth over which the subsurface scattering effect is applied. A "
+"high value may allow light to scatter into a part of the mesh or another "
+"mesh that is close in screen space but far in depth."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1147
+msgid ""
+"Sets the quality of the subsurface scattering effect. Higher values are "
+"slower but look nicer."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1150
+msgid ""
+"Scales the distance over which samples are taken for subsurface scattering "
+"effect. Changing this does not impact performance, but higher values will "
+"result in significant artifacts as the samples will become obviously spread "
+"out. A lower value results in a smaller spread of scattered light."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1153
+msgid ""
+"Sets the maximum number of samples to take when using anisotropic filtering "
+"on textures (as a power of two). A higher sample count will result in "
+"sharper textures at oblique angles, but is more expensive to compute. A "
+"value of [code]0[/code] forcibly disables anisotropic filtering, even on "
+"materials where it is enabled."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1156
+msgid ""
+"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
+"mipmaps (also called \"bilinear filtering\"), which will result in visible "
+"seams appearing between mipmap stages. This may increase performance in "
+"mobile as less memory bandwidth is used. If [code]false[/code], linear "
+"mipmap filtering (also called \"trilinear filtering\") is used."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1163
+msgid ""
+"Thread model for rendering. Rendering on a thread can vastly improve "
+"performance, but synchronizing to the main thread can cause a bit more "
+"jitter."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1166
+msgid ""
+"If [code]true[/code], the texture importer will import VRAM-compressed "
+"textures using the BPTC algorithm. This texture compression algorithm is "
+"only supported on desktop platforms, and only when using the Vulkan renderer."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1169
+msgid ""
+"If [code]true[/code], the texture importer will import VRAM-compressed "
+"textures using the Ericsson Texture Compression algorithm. This algorithm "
+"doesn't support alpha channels in textures."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1172
+msgid ""
+"If [code]true[/code], the texture importer will import VRAM-compressed "
+"textures using the Ericsson Texture Compression 2 algorithm. This texture "
+"compression algorithm is only supported when using the Vulkan renderer."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1175
+msgid ""
+"If [code]true[/code], the texture importer will import VRAM-compressed "
+"textures using the PowerVR Texture Compression algorithm. This texture "
+"compression algorithm is only supported on iOS."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1178
+msgid ""
+"If [code]true[/code], the texture importer will import VRAM-compressed "
+"textures using the S3 Texture Compression algorithm. This algorithm is only "
+"supported on desktop platforms and consoles."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1189
+msgid "Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses."
+msgstr ""
+
+#: doc/classes/ProximityGroup3D.xml:4 doc/classes/ProximityGroup3D.xml:7
+msgid "General-purpose proximity detection node."
+msgstr ""
+
+#: doc/classes/QuadMesh.xml:4
+msgid "Class representing a square mesh."
+msgstr ""
+
+#: doc/classes/QuadMesh.xml:7
+msgid ""
+"Class representing a square [PrimitiveMesh]. This flat mesh does not have a "
+"thickness. By default, this mesh is aligned on the X and Y axes; this "
+"default rotation is more suited for use with billboarded materials. Unlike "
+"[PlaneMesh], this mesh doesn't provide subdivision options."
+msgstr ""
+
+#: doc/classes/QuadMesh.xml:15
+msgid "Size on the X and Y axes."
+msgstr ""
+
+#: doc/classes/Quat.xml:4
+msgid "Quaternion."
+msgstr ""
+
+#: doc/classes/Quat.xml:7
+msgid ""
+"A unit quaternion used for representing 3D rotations. Quaternions need to be "
+"normalized to be used for rotation.\n"
+"It is similar to Basis, which implements matrix representation of rotations, "
+"and can be parametrized using both an axis-angle pair or Euler angles. Basis "
+"stores rotation, scale, and shearing, while Quat only stores rotation.\n"
+"Due to its compactness and the way it is stored in memory, certain "
+"operations (obtaining axis-angle and performing SLERP, in particular) are "
+"more efficient and robust against floating-point errors."
+msgstr ""
+
+#: doc/classes/Quat.xml:12
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/3d/using_transforms."
+"html#interpolating-with-quaternions"
+msgstr ""
+
+#: doc/classes/Quat.xml:21
+msgid "Constructs a quaternion from the given [Basis]."
+msgstr ""
+
+#: doc/classes/Quat.xml:30
+msgid ""
+"Constructs a quaternion that will perform a rotation specified by Euler "
+"angles (in the YXZ convention: when decomposing, first Z, then X, and Y "
+"last), given in the vector format as (X angle, Y angle, Z angle)."
+msgstr ""
+
+#: doc/classes/Quat.xml:41
+msgid ""
+"Constructs a quaternion that will rotate around the given axis by the "
+"specified angle. The axis must be a normalized vector."
+msgstr ""
+
+#: doc/classes/Quat.xml:56
+msgid "Constructs a quaternion defined by the given values."
+msgstr ""
+
+#: doc/classes/Quat.xml:71
+msgid ""
+"Performs a cubic spherical interpolation between quaternions [code]preA[/"
+"code], this vector, [code]b[/code], and [code]postB[/code], by the given "
+"amount [code]t[/code]."
+msgstr ""
+
+#: doc/classes/Quat.xml:80
+msgid "Returns the dot product of two quaternions."
+msgstr ""
+
+#: doc/classes/Quat.xml:87
+msgid ""
+"Returns Euler angles (in the YXZ convention: when decomposing, first Z, then "
+"X, and Y last) corresponding to the rotation represented by the unit "
+"quaternion. Returned vector contains the rotation angles in the format (X "
+"angle, Y angle, Z angle)."
+msgstr ""
+
+#: doc/classes/Quat.xml:94
+msgid "Returns the inverse of the quaternion."
+msgstr ""
+
+#: doc/classes/Quat.xml:103
+msgid ""
+"Returns [code]true[/code] if this quaterion and [code]quat[/code] are "
+"approximately equal, by running [method @GDScript.is_equal_approx] on each "
+"component."
+msgstr ""
+
+#: doc/classes/Quat.xml:110
+msgid "Returns whether the quaternion is normalized or not."
+msgstr ""
+
+#: doc/classes/Quat.xml:117
+msgid "Returns the length of the quaternion."
+msgstr ""
+
+#: doc/classes/Quat.xml:124
+msgid "Returns the length of the quaternion, squared."
+msgstr ""
+
+#: doc/classes/Quat.xml:131
+msgid "Returns a copy of the quaternion, normalized to unit length."
+msgstr ""
+
+#: doc/classes/Quat.xml:142
+msgid ""
+"Sets the quaternion to a rotation which rotates around axis by the specified "
+"angle, in radians. The axis must be a normalized vector."
+msgstr ""
+
+#: doc/classes/Quat.xml:151
+msgid ""
+"Sets the quaternion to a rotation specified by Euler angles (in the YXZ "
+"convention: when decomposing, first Z, then X, and Y last), given in the "
+"vector format as (X angle, Y angle, Z angle)."
+msgstr ""
+
+#: doc/classes/Quat.xml:162
+msgid ""
+"Returns the result of the spherical linear interpolation between this "
+"quaternion and [code]to[/code] by amount [code]weight[/code].\n"
+"[b]Note:[/b] Both quaternions must be normalized."
+msgstr ""
+
+#: doc/classes/Quat.xml:174
+msgid ""
+"Returns the result of the spherical linear interpolation between this "
+"quaternion and [code]to[/code] by amount [code]weight[/code], but without "
+"checking if the rotation path is not bigger than 90 degrees."
+msgstr ""
+
+#: doc/classes/Quat.xml:183
+msgid "Returns a vector transformed (multiplied) by this quaternion."
+msgstr ""
+
+#: doc/classes/Quat.xml:189
+msgid ""
+"W component of the quaternion (real part).\n"
+"Quaternion components should usually not be manipulated directly."
+msgstr ""
+
+#: doc/classes/Quat.xml:193
+msgid ""
+"X component of the quaternion (imaginary [code]i[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
+msgstr ""
+
+#: doc/classes/Quat.xml:197
+msgid ""
+"Y component of the quaternion (imaginary [code]j[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
+msgstr ""
+
+#: doc/classes/Quat.xml:201
+msgid ""
+"Z component of the quaternion (imaginary [code]k[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
+msgstr ""
+
+#: doc/classes/Quat.xml:207
+msgid ""
+"The identity quaternion, representing no rotation. Equivalent to an identity "
+"[Basis] matrix. If a vector is transformed by an identity quaternion, it "
+"will not change."
+msgstr ""
+
+#: doc/classes/RandomNumberGenerator.xml:4
+msgid "A class for generating pseudo-random numbers."
+msgstr ""
+
+#: doc/classes/RandomNumberGenerator.xml:7
+msgid ""
+"RandomNumberGenerator is a class for generating pseudo-random numbers. It "
+"currently uses [url=http://www.pcg-random.org/]PCG32[/url].\n"
+"[b]Note:[/b] The underlying algorithm is an implementation detail. As a "
+"result, it should not be depended upon for reproducible random streams "
+"across Godot versions.\n"
+"To generate a random float number (within a given range) based on a time-"
+"dependant seed:\n"
+"[codeblock]\n"
+"var rng = RandomNumberGenerator.new()\n"
+"func _ready():\n"
+" rng.randomize()\n"
+" var my_random_number = rng.randf_range(-10.0, 10.0)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/RandomNumberGenerator.xml:24
+msgid ""
+"Generates a pseudo-random float between [code]0.0[/code] and [code]1.0[/"
+"code] (inclusive)."
+msgstr ""
+
+#: doc/classes/RandomNumberGenerator.xml:35
+msgid ""
+"Generates a pseudo-random float between [code]from[/code] and [code]to[/"
+"code] (inclusive)."
+msgstr ""
+
+#: doc/classes/RandomNumberGenerator.xml:46
+msgid ""
+"Generates a [url=https://en.wikipedia.org/wiki/Normal_distribution]normally-"
+"distributed[/url] pseudo-random number, using Box-Muller transform with the "
+"specified [code]mean[/code] and a standard [code]deviation[/code]. This is "
+"also called Gaussian distribution."
+msgstr ""
+
+#: doc/classes/RandomNumberGenerator.xml:53
+msgid ""
+"Generates a pseudo-random 32-bit unsigned integer between [code]0[/code] and "
+"[code]4294967295[/code] (inclusive)."
+msgstr ""
+
+#: doc/classes/RandomNumberGenerator.xml:64
+msgid ""
+"Generates a pseudo-random 32-bit signed integer between [code]from[/code] "
+"and [code]to[/code] (inclusive)."
+msgstr ""
+
+#: doc/classes/RandomNumberGenerator.xml:71
+msgid "Setups a time-based seed to generator."
+msgstr ""
+
+#: doc/classes/RandomNumberGenerator.xml:77
+msgid ""
+"The seed used by the random number generator. A given seed will give a "
+"reproducible sequence of pseudo-random numbers.\n"
+"[b]Note:[/b] The RNG does not have an avalanche effect, and can output "
+"similar random streams given similar seeds. Consider using a hash function "
+"to improve your seed quality if they're sourced externally."
+msgstr ""
+
+#: doc/classes/Range.xml:4
+msgid "Abstract base class for range-based controls."
+msgstr ""
+
+#: doc/classes/Range.xml:7
+msgid ""
+"Range is a base class for [Control] nodes that change a floating-point "
+"[i]value[/i] between a [i]minimum[/i] and a [i]maximum[/i], using [i]step[/"
+"i] and [i]page[/i], for example a [ScrollBar]."
+msgstr ""
+
+#: doc/classes/Range.xml:18
+msgid ""
+"Binds two ranges together along with any ranges previously grouped with "
+"either of them. When any of range's member variables change, it will share "
+"the new value with all other ranges in its group."
+msgstr ""
+
+#: doc/classes/Range.xml:25
+msgid "Stops range from sharing its member variables with any other."
+msgstr ""
+
+#: doc/classes/Range.xml:31
+msgid ""
+"If [code]true[/code], [member value] may be greater than [member max_value]."
+msgstr ""
+
+#: doc/classes/Range.xml:34
+msgid ""
+"If [code]true[/code], [member value] may be less than [member min_value]."
+msgstr ""
+
+#: doc/classes/Range.xml:37
+msgid ""
+"If [code]true[/code], and [code]min_value[/code] is greater than 0, "
+"[code]value[/code] will be represented exponentially rather than linearly."
+msgstr ""
+
+#: doc/classes/Range.xml:40
+msgid ""
+"Maximum value. Range is clamped if [code]value[/code] is greater than "
+"[code]max_value[/code]."
+msgstr ""
+
+#: doc/classes/Range.xml:43
+msgid ""
+"Minimum value. Range is clamped if [code]value[/code] is less than "
+"[code]min_value[/code]."
+msgstr ""
+
+#: doc/classes/Range.xml:46
+msgid ""
+"Page size. Used mainly for [ScrollBar]. ScrollBar's length is its size "
+"multiplied by [code]page[/code] over the difference between [code]min_value[/"
+"code] and [code]max_value[/code]."
+msgstr ""
+
+#: doc/classes/Range.xml:49
+msgid "The value mapped between 0 and 1."
+msgstr ""
+
+#: doc/classes/Range.xml:52
+msgid ""
+"If [code]true[/code], [code]value[/code] will always be rounded to the "
+"nearest integer."
+msgstr ""
+
+#: doc/classes/Range.xml:55
+msgid ""
+"If greater than 0, [code]value[/code] will always be rounded to a multiple "
+"of [code]step[/code]. If [code]rounded[/code] is also [code]true[/code], "
+"[code]value[/code] will first be rounded to a multiple of [code]step[/code] "
+"then rounded to the nearest integer."
+msgstr ""
+
+#: doc/classes/Range.xml:58
+msgid "Range's current value."
+msgstr ""
+
+#: doc/classes/Range.xml:64
+msgid ""
+"Emitted when [member min_value], [member max_value], [member page], or "
+"[member step] change."
+msgstr ""
+
+#: doc/classes/Range.xml:71
+msgid "Emitted when [member value] changes."
+msgstr ""
+
+#: doc/classes/RayCast2D.xml:4 doc/classes/RayCast3D.xml:4
+msgid "Query the closest object intersecting a ray."
+msgstr ""
+
+#: doc/classes/RayCast2D.xml:7
+msgid ""
+"A RayCast represents a line from its origin to its destination position, "
+"[code]cast_to[/code]. It is used to query the 2D space in order to find the "
+"closest object along the path of the ray.\n"
+"RayCast2D can ignore some objects by adding them to the exception list via "
+"[code]add_exception[/code], by setting proper filtering with collision "
+"layers, or by filtering object types with type masks.\n"
+"RayCast2D can be configured to report collisions with [Area2D]s ([member "
+"collide_with_areas]) and/or [PhysicsBody2D]s ([member "
+"collide_with_bodies]).\n"
+"Only enabled raycasts will be able to query the space and report "
+"collisions.\n"
+"RayCast2D calculates intersection every physics frame (see [Node]), and the "
+"result is cached so it can be used later until the next frame. If multiple "
+"queries are required between physics frames (or during the same frame) use "
+"[method force_raycast_update] after adjusting the raycast."
+msgstr ""
+
+#: doc/classes/RayCast2D.xml:23 doc/classes/RayCast3D.xml:23
+msgid ""
+"Adds a collision exception so the ray does not report collisions with the "
+"specified node."
+msgstr ""
+
+#: doc/classes/RayCast2D.xml:32 doc/classes/RayCast3D.xml:32
+msgid ""
+"Adds a collision exception so the ray does not report collisions with the "
+"specified [RID]."
+msgstr ""
+
+#: doc/classes/RayCast2D.xml:39 doc/classes/RayCast3D.xml:39
+msgid "Removes all collision exceptions for this ray."
+msgstr ""
+
+#: doc/classes/RayCast2D.xml:46
+msgid ""
+"Updates the collision information for the ray. Use this method to update the "
+"collision information immediately instead of waiting for the next "
+"[code]_physics_process[/code] call, for example if the ray or its parent has "
+"changed state.\n"
+"[b]Note:[/b] [member enabled] does not need to be [code]true[/code] for this "
+"to work."
+msgstr ""
+
+#: doc/classes/RayCast2D.xml:54 doc/classes/RayCast3D.xml:55
+msgid ""
+"Returns the first object that the ray intersects, or [code]null[/code] if no "
+"object is intersecting the ray (i.e. [method is_colliding] returns "
+"[code]false[/code])."
+msgstr ""
+
+#: doc/classes/RayCast2D.xml:61 doc/classes/RayCast3D.xml:62
+msgid ""
+"Returns the shape ID of the first object that the ray intersects, or "
+"[code]0[/code] if no object is intersecting the ray (i.e. [method "
+"is_colliding] returns [code]false[/code])."
+msgstr ""
+
+#: doc/classes/RayCast2D.xml:77 doc/classes/RayCast3D.xml:79
+msgid ""
+"Returns the normal of the intersecting object's shape at the collision point."
+msgstr ""
+
+#: doc/classes/RayCast2D.xml:84
+msgid ""
+"Returns the collision point at which the ray intersects the closest object.\n"
+"[b]Note:[/b] this point is in the [b]global[/b] coordinate system."
+msgstr ""
+
+#: doc/classes/RayCast2D.xml:92 doc/classes/RayCast3D.xml:94
+msgid ""
+"Returns whether any object is intersecting with the ray's vector "
+"(considering the vector length)."
+msgstr ""
+
+#: doc/classes/RayCast2D.xml:101 doc/classes/RayCast3D.xml:103
+msgid ""
+"Removes a collision exception so the ray does report collisions with the "
+"specified node."
+msgstr ""
+
+#: doc/classes/RayCast2D.xml:110 doc/classes/RayCast3D.xml:112
+msgid ""
+"Removes a collision exception so the ray does report collisions with the "
+"specified [RID]."
+msgstr ""
+
+#: doc/classes/RayCast2D.xml:121
+msgid ""
+"Sets or clears individual bits on the collision mask. This makes selecting "
+"the areas scanned easier."
+msgstr ""
+
+#: doc/classes/RayCast2D.xml:127 doc/classes/RayCast3D.xml:130
+msgid ""
+"The ray's destination point, relative to the RayCast's [code]position[/code]."
+msgstr ""
+
+#: doc/classes/RayCast2D.xml:130
+msgid "If [code]true[/code], collision with [Area2D]s will be reported."
+msgstr ""
+
+#: doc/classes/RayCast2D.xml:133
+msgid "If [code]true[/code], collision with [PhysicsBody2D]s will be reported."
+msgstr ""
+
+#: doc/classes/RayCast2D.xml:136 doc/classes/RayCast3D.xml:139
+msgid ""
+"The ray's collision mask. Only objects in at least one collision layer "
+"enabled in the mask will be detected."
+msgstr ""
+
+#: doc/classes/RayCast2D.xml:139 doc/classes/RayCast3D.xml:142
+msgid "If [code]true[/code], collisions will be reported."
+msgstr ""
+
+#: doc/classes/RayCast2D.xml:142
+msgid ""
+"If [code]true[/code], the parent node will be excluded from collision "
+"detection."
+msgstr ""
+
+#: doc/classes/RayCast3D.xml:7
+msgid ""
+"A RayCast represents a line from its origin to its destination position, "
+"[code]cast_to[/code]. It is used to query the 3D space in order to find the "
+"closest object along the path of the ray.\n"
+"RayCast3D can ignore some objects by adding them to the exception list via "
+"[code]add_exception[/code] or by setting proper filtering with collision "
+"layers and masks.\n"
+"RayCast3D can be configured to report collisions with [Area3D]s ([member "
+"collide_with_areas]) and/or [PhysicsBody3D]s ([member "
+"collide_with_bodies]).\n"
+"Only enabled raycasts will be able to query the space and report "
+"collisions.\n"
+"RayCast3D calculates intersection every physics frame (see [Node]), and the "
+"result is cached so it can be used later until the next frame. If multiple "
+"queries are required between physics frames (or during the same frame), use "
+"[method force_raycast_update] after adjusting the raycast."
+msgstr ""
+
+#: doc/classes/RayCast3D.xml:46
+msgid ""
+"Updates the collision information for the ray.\n"
+"Use this method to update the collision information immediately instead of "
+"waiting for the next [code]_physics_process[/code] call, for example if the "
+"ray or its parent has changed state.\n"
+"[b]Note:[/b] [member enabled] does not need to be [code]true[/code] for this "
+"to work."
+msgstr ""
+
+#: doc/classes/RayCast3D.xml:71
+msgid ""
+"Returns [code]true[/code] if the bit index passed is turned on.\n"
+"[b]Note:[/b] Bit indices range from 0-19."
+msgstr ""
+
+#: doc/classes/RayCast3D.xml:86
+msgid ""
+"Returns the collision point at which the ray intersects the closest object.\n"
+"[b]Note:[/b] This point is in the [b]global[/b] coordinate system."
+msgstr ""
+
+#: doc/classes/RayCast3D.xml:123
+msgid ""
+"Sets the bit index passed to the [code]value[/code] passed.\n"
+"[b]Note:[/b] Bit indexes range from 0-19."
+msgstr ""
+
+#: doc/classes/RayCast3D.xml:133
+msgid "If [code]true[/code], collision with [Area3D]s will be reported."
+msgstr ""
+
+#: doc/classes/RayCast3D.xml:136
+msgid "If [code]true[/code], collision with [PhysicsBody3D]s will be reported."
+msgstr ""
+
+#: doc/classes/RayCast3D.xml:145
+msgid ""
+"If [code]true[/code], collisions will be ignored for this RayCast3D's "
+"immediate parent."
+msgstr ""
+
+#: doc/classes/RayShape2D.xml:4
+msgid "Ray shape for 2D collisions."
+msgstr ""
+
+#: doc/classes/RayShape2D.xml:7
+msgid ""
+"Ray shape for 2D collisions. A ray is not really a collision body; instead, "
+"it tries to separate itself from whatever is touching its far endpoint. It's "
+"often useful for characters."
+msgstr ""
+
+#: doc/classes/RayShape2D.xml:15 doc/classes/RayShape3D.xml:15
+msgid "The ray's length."
+msgstr ""
+
+#: doc/classes/RayShape2D.xml:18 doc/classes/RayShape3D.xml:18
+msgid "If [code]true[/code], allow the shape to return the correct normal."
+msgstr ""
+
+#: doc/classes/RayShape3D.xml:4
+msgid "Ray shape for 3D collisions."
+msgstr ""
+
+#: doc/classes/RayShape3D.xml:7
+msgid ""
+"Ray shape for 3D collisions, which can be set into a [PhysicsBody3D] or "
+"[Area3D]. A ray is not really a collision body; instead, it tries to "
+"separate itself from whatever is touching its far endpoint. It's often "
+"useful for characters."
+msgstr ""
+
+#: doc/classes/Rect2.xml:4
+msgid "2D axis-aligned bounding box using floating point coordinates."
+msgstr ""
+
+#: doc/classes/Rect2.xml:7
+msgid ""
+"[Rect2] consists of a position, a size, and several utility functions. It is "
+"typically used for fast overlap tests.\n"
+"It uses floating point coordinates."
+msgstr ""
+
+#: doc/classes/Rect2.xml:22
+msgid "Constructs a [Rect2] by position and size."
+msgstr ""
+
+#: doc/classes/Rect2.xml:37
+msgid "Constructs a [Rect2] by x, y, width, and height."
+msgstr ""
+
+#: doc/classes/Rect2.xml:46
+msgid "Constructs a [Rect2] from a [Rect2i]."
+msgstr ""
+
+#: doc/classes/Rect2.xml:53
+msgid ""
+"Returns a [Rect2] with equivalent position and area, modified so that the "
+"top-left corner is the origin and [code]width[/code] and [code]height[/code] "
+"are positive."
+msgstr ""
+
+#: doc/classes/Rect2.xml:62
+msgid "Returns the intersection of this [Rect2] and b."
+msgstr ""
+
+#: doc/classes/Rect2.xml:71
+msgid ""
+"Returns [code]true[/code] if this [Rect2] completely encloses another one."
+msgstr ""
+
+#: doc/classes/Rect2.xml:80
+msgid "Returns this [Rect2] expanded to include a given point."
+msgstr ""
+
+#: doc/classes/Rect2.xml:87
+msgid "Returns the area of the [Rect2]."
+msgstr ""
+
+#: doc/classes/Rect2.xml:96
+msgid ""
+"Returns a copy of the [Rect2] grown a given amount of units towards all the "
+"sides."
+msgstr ""
+
+#: doc/classes/Rect2.xml:111
+msgid ""
+"Returns a copy of the [Rect2] grown a given amount of units towards each "
+"direction individually."
+msgstr ""
+
+#: doc/classes/Rect2.xml:122
+msgid ""
+"Returns a copy of the [Rect2] grown a given amount of units towards the "
+"[enum Margin] direction."
+msgstr ""
+
+#: doc/classes/Rect2.xml:129
+msgid "Returns [code]true[/code] if the [Rect2] is flat or empty."
+msgstr ""
+
+#: doc/classes/Rect2.xml:138
+msgid "Returns [code]true[/code] if the [Rect2] contains a point."
+msgstr ""
+
+#: doc/classes/Rect2.xml:149
+msgid ""
+"Returns [code]true[/code] if the [Rect2] overlaps with [code]b[/code] (i.e. "
+"they have at least one point in common).\n"
+"If [code]include_borders[/code] is [code]true[/code], they will also be "
+"considered overlapping if their borders touch, even without intersection."
+msgstr ""
+
+#: doc/classes/Rect2.xml:159
+msgid ""
+"Returns [code]true[/code] if this [Rect2] and [code]rect[/code] are "
+"approximately equal, by calling [code]is_equal_approx[/code] on each "
+"component."
+msgstr ""
+
+#: doc/classes/Rect2.xml:168
+msgid "Returns a larger [Rect2] that contains this [Rect2] and [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Rect2i.xml:4
+msgid "2D axis-aligned bounding box using integer coordinates."
+msgstr ""
+
+#: doc/classes/Rect2i.xml:7
+msgid ""
+"[Rect2i] consists of a position, a size, and several utility functions. It "
+"is typically used for fast overlap tests.\n"
+"It uses integer coordinates."
+msgstr ""
+
+#: doc/classes/Rect2i.xml:22
+msgid "Constructs a [Rect2i] by position and size."
+msgstr ""
+
+#: doc/classes/Rect2i.xml:37
+msgid "Constructs a [Rect2i] by x, y, width, and height."
+msgstr ""
+
+#: doc/classes/Rect2i.xml:46
+msgid ""
+"Constructs a new [Rect2i] from [Rect2]. The floating point coordinates will "
+"be truncated."
+msgstr ""
+
+#: doc/classes/Rect2i.xml:53
+msgid ""
+"Returns a [Rect2i] with equivalent position and area, modified so that the "
+"top-left corner is the origin and [code]width[/code] and [code]height[/code] "
+"are positive."
+msgstr ""
+
+#: doc/classes/Rect2i.xml:62
+msgid "Returns the intersection of this [Rect2i] and b."
+msgstr ""
+
+#: doc/classes/Rect2i.xml:71
+msgid ""
+"Returns [code]true[/code] if this [Rect2i] completely encloses another one."
+msgstr ""
+
+#: doc/classes/Rect2i.xml:80
+msgid "Returns this [Rect2i] expanded to include a given point."
+msgstr ""
+
+#: doc/classes/Rect2i.xml:87
+msgid "Returns the area of the [Rect2i]."
+msgstr ""
+
+#: doc/classes/Rect2i.xml:96
+msgid ""
+"Returns a copy of the [Rect2i] grown a given amount of units towards all the "
+"sides."
+msgstr ""
+
+#: doc/classes/Rect2i.xml:111
+msgid ""
+"Returns a copy of the [Rect2i] grown a given amount of units towards each "
+"direction individually."
+msgstr ""
+
+#: doc/classes/Rect2i.xml:122
+msgid ""
+"Returns a copy of the [Rect2i] grown a given amount of units towards the "
+"[enum Margin] direction."
+msgstr ""
+
+#: doc/classes/Rect2i.xml:129
+msgid "Returns [code]true[/code] if the [Rect2i] is flat or empty."
+msgstr ""
+
+#: doc/classes/Rect2i.xml:138
+msgid "Returns [code]true[/code] if the [Rect2i] contains a point."
+msgstr ""
+
+#: doc/classes/Rect2i.xml:147
+msgid ""
+"Returns [code]true[/code] if the [Rect2i] overlaps with [code]b[/code] (i.e. "
+"they have at least one point in common).\n"
+"If [code]include_borders[/code] is [code]true[/code], they will also be "
+"considered overlapping if their borders touch, even without intersection."
+msgstr ""
+
+#: doc/classes/Rect2i.xml:157
+msgid ""
+"Returns a larger [Rect2i] that contains this [Rect2i] and [code]b[/code]."
+msgstr ""
+
+#: doc/classes/RectangleShape2D.xml:4
+msgid "Rectangle shape for 2D collisions."
+msgstr ""
+
+#: doc/classes/RectangleShape2D.xml:7
+msgid ""
+"Rectangle shape for 2D collisions. This shape is useful for modeling box-"
+"like 2D objects."
+msgstr ""
+
+#: doc/classes/RectangleShape2D.xml:15
+msgid ""
+"The rectangle's half extents. The width and height of this shape is twice "
+"the half extents."
+msgstr ""
+
+#: doc/classes/Reference.xml:4
+msgid "Base class for reference-counted objects."
+msgstr ""
+
+#: doc/classes/Reference.xml:7
+msgid ""
+"Base class for any object that keeps a reference count. [Resource] and many "
+"other helper objects inherit this class.\n"
+"Unlike [Object]s, References keep an internal reference counter so that they "
+"are automatically released when no longer in use, and only then. References "
+"therefore do not need to be freed manually with [method Object.free].\n"
+"In the vast majority of use cases, instantiating and using [Reference]-"
+"derived types is all you need to do. The methods provided in this class are "
+"only for advanced users, and can cause issues if misused."
+msgstr ""
+
+#: doc/classes/Reference.xml:19
+msgid ""
+"Initializes the internal reference counter. Use this only if you really know "
+"what you are doing.\n"
+"Returns whether the initialization was successful."
+msgstr ""
+
+#: doc/classes/Reference.xml:27
+msgid ""
+"Increments the internal reference counter. Use this only if you really know "
+"what you are doing.\n"
+"Returns [code]true[/code] if the increment was successful, [code]false[/"
+"code] otherwise."
+msgstr ""
+
+#: doc/classes/Reference.xml:35
+msgid ""
+"Decrements the internal reference counter. Use this only if you really know "
+"what you are doing.\n"
+"Returns [code]true[/code] if the decrement was successful, [code]false[/"
+"code] otherwise."
+msgstr ""
+
+#: doc/classes/ReferenceRect.xml:4
+msgid "Reference frame for GUI."
+msgstr ""
+
+#: doc/classes/ReferenceRect.xml:7
+msgid ""
+"A rectangle box that displays only a [member border_color] border color "
+"around its rectangle. [ReferenceRect] has no fill [Color]."
+msgstr ""
+
+#: doc/classes/ReferenceRect.xml:15
+msgid "Sets the border [Color] of the [ReferenceRect]."
+msgstr ""
+
+#: doc/classes/ReferenceRect.xml:18
+msgid ""
+"If set to [code]true[/code], the [ReferenceRect] will only be visible while "
+"in editor. Otherwise, [ReferenceRect] will be visible in game."
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:4
+msgid "Captures its surroundings to create reflections."
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:7
+msgid ""
+"Captures its surroundings as a cubemap, and stores versions of it with "
+"increasing levels of blur to simulate different material roughnesses.\n"
+"The [ReflectionProbe] is used to create high-quality reflections at the cost "
+"of performance. It can be combined with [GIProbe]s and Screen Space "
+"Reflections to achieve high quality reflections. [ReflectionProbe]s render "
+"all objects within their [member cull_mask], so updating them can be quite "
+"expensive. It is best to update them once with the important static objects "
+"and then leave them."
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/3d/reflection_probes.html"
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:23
+msgid ""
+"If [code]true[/code], enables box projection. This makes reflections look "
+"more correct in rectangle-shaped rooms by offsetting the reflection center "
+"depending on the camera's location."
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:26
+msgid ""
+"Sets the cull mask which determines what objects are drawn by this probe. "
+"Every [VisualInstance3D] with a layer included in this cull mask will be "
+"rendered by the probe. It is best to only include large objects which are "
+"likely to take up a lot of space in the reflection in order to save on "
+"rendering cost."
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:29
+msgid ""
+"If [code]true[/code], computes shadows in the reflection probe. This makes "
+"the reflection probe slower to render; you may want to disable this if using "
+"the [constant UPDATE_ALWAYS] [member update_mode]."
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:32
+msgid ""
+"The size of the reflection probe. The larger the extents the more space "
+"covered by the probe which will lower the perceived resolution. It is best "
+"to keep the extents only as large as you need them."
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:35
+msgid ""
+"Defines the reflection intensity. Intensity modulates the strength of the "
+"reflection."
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:38
+msgid "If [code]true[/code], reflections will ignore sky contribution."
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:41
+msgid ""
+"Sets the max distance away from the probe an object can be before it is "
+"culled."
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:44
+msgid ""
+"Sets the origin offset to be used when this reflection probe is in box "
+"project mode."
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:47
+msgid ""
+"Sets how frequently the probe is updated. Can be [constant UPDATE_ONCE] or "
+"[constant UPDATE_ALWAYS]."
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:52
+msgid ""
+"Update the probe once on the next frame. The corresponding radiance map will "
+"be generated over the following six frames. This is slower to update than "
+"[constant UPDATE_ALWAYS] but can result in higher quality reflections."
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:55
+msgid ""
+"Update the probe every frame. This is needed when you want to capture "
+"dynamic objects. However, it results in an increased render time. Use "
+"[constant UPDATE_ONCE] whenever possible."
+msgstr ""
+
+#: modules/regex/doc_classes/RegEx.xml:4
+msgid "Class for searching text for patterns using regular expressions."
+msgstr ""
+
+#: modules/regex/doc_classes/RegEx.xml:7
+msgid ""
+"A regular expression (or regex) is a compact language that can be used to "
+"recognise strings that follow a specific pattern, such as URLs, email "
+"addresses, complete sentences, etc. For instance, a regex of [code]ab[0-9][/"
+"code] would find any string that is [code]ab[/code] followed by any number "
+"from [code]0[/code] to [code]9[/code]. For a more in-depth look, you can "
+"easily find various tutorials and detailed explanations on the Internet.\n"
+"To begin, the RegEx object needs to be compiled with the search pattern "
+"using [method compile] before it can be used.\n"
+"[codeblock]\n"
+"var regex = RegEx.new()\n"
+"regex.compile(\"\\\\w-(\\\\d+)\")\n"
+"[/codeblock]\n"
+"The search pattern must be escaped first for GDScript before it is escaped "
+"for the expression. For example, [code]compile(\"\\\\d+\")[/code] would be "
+"read by RegEx as [code]\\d+[/code]. Similarly, [code]compile(\"\\\"(?:\\\\\\"
+"\\.|[^\\\"])*\\\"\")[/code] would be read as [code]\"(?:\\\\.|[^\"])*\"[/"
+"code].\n"
+"Using [method search], you can find the pattern within the given text. If a "
+"pattern is found, [RegExMatch] is returned and you can retrieve details of "
+"the results using methods such as [method RegExMatch.get_string] and [method "
+"RegExMatch.get_start].\n"
+"[codeblock]\n"
+"var regex = RegEx.new()\n"
+"regex.compile(\"\\\\w-(\\\\d+)\")\n"
+"var result = regex.search(\"abc n-0123\")\n"
+"if result:\n"
+" print(result.get_string()) # Would print n-0123\n"
+"[/codeblock]\n"
+"The results of capturing groups [code]()[/code] can be retrieved by passing "
+"the group number to the various methods in [RegExMatch]. Group 0 is the "
+"default and will always refer to the entire pattern. In the above example, "
+"calling [code]result.get_string(1)[/code] would give you [code]0123[/code].\n"
+"This version of RegEx also supports named capturing groups, and the names "
+"can be used to retrieve the results. If two or more groups have the same "
+"name, the name would only refer to the first one with a match.\n"
+"[codeblock]\n"
+"var regex = RegEx.new()\n"
+"regex.compile(\"d(?<digit>[0-9]+)|x(?<digit>[0-9a-f]+)\")\n"
+"var result = regex.search(\"the number is x2f\")\n"
+"if result:\n"
+" print(result.get_string(\"digit\")) # Would print 2f\n"
+"[/codeblock]\n"
+"If you need to process multiple results, [method search_all] generates a "
+"list of all non-overlapping results. This can be combined with a [code]for[/"
+"code] loop for convenience.\n"
+"[codeblock]\n"
+"for result in regex.search_all(\"d01, d03, d0c, x3f and x42\"):\n"
+" print(result.get_string(\"digit\"))\n"
+"# Would print 01 03 0 3f 42\n"
+"[/codeblock]\n"
+"[b]Example of splitting a string using a RegEx:[/b]\n"
+"[codeblock]\n"
+"var regex = RegEx.new()\n"
+"regex.compile(\"\\\\S+\") # Negated whitespace character class.\n"
+"var results = []\n"
+"for match in regex.search_all(\"One Two \\n\\tThree\"):\n"
+" results.push_back(match.get_string())\n"
+"# The `results` array now contains \"One\", \"Two\", \"Three\".\n"
+"[/codeblock]\n"
+"[b]Note:[/b] Godot's regex implementation is based on the [url=https://www."
+"pcre.org/]PCRE2[/url] library. You can view the full pattern reference "
+"[url=https://www.pcre.org/current/doc/html/pcre2pattern.html]here[/url].\n"
+"[b]Tip:[/b] You can use [url=https://regexr.com/]Regexr[/url] to test "
+"regular expressions online."
+msgstr ""
+
+#: modules/regex/doc_classes/RegEx.xml:56
+msgid ""
+"This method resets the state of the object, as if it was freshly created. "
+"Namely, it unassigns the regular expression of this object."
+msgstr ""
+
+#: modules/regex/doc_classes/RegEx.xml:65
+msgid ""
+"Compiles and assign the search pattern to use. Returns [constant OK] if the "
+"compilation is successful. If an error is encountered, details are printed "
+"to standard output and an error is returned."
+msgstr ""
+
+#: modules/regex/doc_classes/RegEx.xml:72
+msgid "Returns the number of capturing groups in compiled pattern."
+msgstr ""
+
+#: modules/regex/doc_classes/RegEx.xml:79
+msgid ""
+"Returns an array of names of named capturing groups in the compiled pattern. "
+"They are ordered by appearance."
+msgstr ""
+
+#: modules/regex/doc_classes/RegEx.xml:86
+msgid "Returns the original search pattern that was compiled."
+msgstr ""
+
+#: modules/regex/doc_classes/RegEx.xml:93
+msgid "Returns whether this object has a valid search pattern assigned."
+msgstr ""
+
+#: modules/regex/doc_classes/RegEx.xml:106
+msgid ""
+"Searches the text for the compiled pattern. Returns a [RegExMatch] container "
+"of the first matching result if found, otherwise [code]null[/code]. The "
+"region to search within can be specified without modifying where the start "
+"and end anchor would be."
+msgstr ""
+
+#: modules/regex/doc_classes/RegEx.xml:119
+msgid ""
+"Searches the text for the compiled pattern. Returns an array of [RegExMatch] "
+"containers for each non-overlapping result. If no results were found, an "
+"empty array is returned instead. The region to search within can be "
+"specified without modifying where the start and end anchor would be."
+msgstr ""
+
+#: modules/regex/doc_classes/RegEx.xml:136
+msgid ""
+"Searches the text for the compiled pattern and replaces it with the "
+"specified string. Escapes and backreferences such as [code]$1[/code] and "
+"[code]$name[/code] are expanded and resolved. By default, only the first "
+"instance is replaced, but it can be changed for all instances (global "
+"replacement). The region to search within can be specified without modifying "
+"where the start and end anchor would be."
+msgstr ""
+
+#: modules/regex/doc_classes/RegExMatch.xml:4
+msgid "Contains the results of a [RegEx] search."
+msgstr ""
+
+#: modules/regex/doc_classes/RegExMatch.xml:7
+msgid ""
+"Contains the results of a single [RegEx] match returned by [method RegEx."
+"search] and [method RegEx.search_all]. It can be used to find the position "
+"and range of the match and its capturing groups, and it can extract its "
+"substring for you."
+msgstr ""
+
+#: modules/regex/doc_classes/RegExMatch.xml:18
+msgid ""
+"Returns the end position of the match within the source string. The end "
+"position of capturing groups can be retrieved by providing its group number "
+"as an integer or its string name (if it's a named group). The default value "
+"of 0 refers to the whole pattern.\n"
+"Returns -1 if the group did not match or doesn't exist."
+msgstr ""
+
+#: modules/regex/doc_classes/RegExMatch.xml:26
+msgid "Returns the number of capturing groups."
+msgstr ""
+
+#: modules/regex/doc_classes/RegExMatch.xml:35
+msgid ""
+"Returns the starting position of the match within the source string. The "
+"starting position of capturing groups can be retrieved by providing its "
+"group number as an integer or its string name (if it's a named group). The "
+"default value of 0 refers to the whole pattern.\n"
+"Returns -1 if the group did not match or doesn't exist."
+msgstr ""
+
+#: modules/regex/doc_classes/RegExMatch.xml:45
+msgid ""
+"Returns the substring of the match from the source string. Capturing groups "
+"can be retrieved by providing its group number as an integer or its string "
+"name (if it's a named group). The default value of 0 refers to the whole "
+"pattern.\n"
+"Returns an empty string if the group did not match or doesn't exist."
+msgstr ""
+
+#: modules/regex/doc_classes/RegExMatch.xml:52
+msgid ""
+"A dictionary of named groups and its corresponding group number. Only groups "
+"that were matched are included. If multiple groups have the same name, that "
+"name would refer to the first matching one."
+msgstr ""
+
+#: modules/regex/doc_classes/RegExMatch.xml:55
+msgid "An [Array] of the match and its capturing groups."
+msgstr ""
+
+#: modules/regex/doc_classes/RegExMatch.xml:58
+msgid ""
+"The source string used with the search pattern to find this matching result."
+msgstr ""
+
+#: doc/classes/RemoteTransform2D.xml:4
+msgid ""
+"RemoteTransform2D pushes its own [Transform2D] to another [CanvasItem] "
+"derived Node in the scene."
+msgstr ""
+
+#: doc/classes/RemoteTransform2D.xml:7
+msgid ""
+"RemoteTransform2D pushes its own [Transform2D] to another [CanvasItem] "
+"derived Node (called the remote node) in the scene.\n"
+"It can be set to update another Node's position, rotation and/or scale. It "
+"can use either global or local coordinates."
+msgstr ""
+
+#: doc/classes/RemoteTransform2D.xml:17
+msgid ""
+"[RemoteTransform2D] caches the remote node. It may not notice if the remote "
+"node disappears; [method force_update_cache] forces it to update the cache "
+"again."
+msgstr ""
+
+#: doc/classes/RemoteTransform2D.xml:23
+msgid ""
+"The [NodePath] to the remote node, relative to the RemoteTransform2D's "
+"position in the scene."
+msgstr ""
+
+#: doc/classes/RemoteTransform2D.xml:26 doc/classes/RemoteTransform3D.xml:26
+msgid "If [code]true[/code], the remote node's position is updated."
+msgstr ""
+
+#: doc/classes/RemoteTransform2D.xml:29 doc/classes/RemoteTransform3D.xml:29
+msgid "If [code]true[/code], the remote node's rotation is updated."
+msgstr ""
+
+#: doc/classes/RemoteTransform2D.xml:32 doc/classes/RemoteTransform3D.xml:32
+msgid "If [code]true[/code], the remote node's scale is updated."
+msgstr ""
+
+#: doc/classes/RemoteTransform2D.xml:35 doc/classes/RemoteTransform3D.xml:35
+msgid ""
+"If [code]true[/code], global coordinates are used. If [code]false[/code], "
+"local coordinates are used."
+msgstr ""
+
+#: doc/classes/RemoteTransform3D.xml:4
+msgid ""
+"RemoteTransform3D pushes its own [Transform] to another [Node3D] derived "
+"Node in the scene."
+msgstr ""
+
+#: doc/classes/RemoteTransform3D.xml:7
+msgid ""
+"RemoteTransform3D pushes its own [Transform] to another [Node3D] derived "
+"Node (called the remote node) in the scene.\n"
+"It can be set to update another Node's position, rotation and/or scale. It "
+"can use either global or local coordinates."
+msgstr ""
+
+#: doc/classes/RemoteTransform3D.xml:17
+msgid ""
+"[RemoteTransform3D] caches the remote node. It may not notice if the remote "
+"node disappears; [method force_update_cache] forces it to update the cache "
+"again."
+msgstr ""
+
+#: doc/classes/RemoteTransform3D.xml:23
+msgid ""
+"The [NodePath] to the remote node, relative to the RemoteTransform3D's "
+"position in the scene."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:4
+msgid "Server for anything visible."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:7
+msgid ""
+"Server for anything visible. The rendering server is the API backend for "
+"everything visible. The whole scene system mounts on it to display.\n"
+"The rendering server is completely opaque, the internals are entirely "
+"implementation specific and cannot be accessed.\n"
+"The rendering server can be used to bypass the scene system entirely.\n"
+"Resources are created using the [code]*_create[/code] functions.\n"
+"All objects are drawn to a viewport. You can use the [Viewport] attached to "
+"the [SceneTree] or you can create one yourself with [method "
+"viewport_create]. When using a custom scenario or canvas, the scenario or "
+"canvas needs to be attached to the viewport using [method "
+"viewport_set_scenario] or [method viewport_attach_canvas].\n"
+"In 3D, all visual objects must be associated with a scenario. The scenario "
+"is a visual representation of the world. If accessing the rendering server "
+"from a running game, the scenario can be accessed from the scene tree from "
+"any [Node3D] node with [method Node3D.get_world_3d]. Otherwise, a scenario "
+"can be created with [method scenario_create].\n"
+"Similarly in 2D, a canvas is needed to draw all canvas items.\n"
+"In 3D, all visible objects are comprised of a resource and an instance. A "
+"resource can be a mesh, a particle system, a light, or any other 3D object. "
+"In order to be visible resources must be attached to an instance using "
+"[method instance_set_base]. The instance must also be attached to the "
+"scenario using [method instance_set_scenario] in order to be visible.\n"
+"In 2D, all visible objects are some form of canvas item. In order to be "
+"visible, a canvas item needs to be the child of a canvas attached to a "
+"viewport, or it needs to be the child of another canvas item that is "
+"eventually attached to the canvas."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:18
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/optimization/using_servers."
+"html"
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:33
+msgid "Sets images to be rendered in the window margin."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:48
+msgid ""
+"Sets margin size, where black bars (or images, if [method "
+"black_bars_set_images] was used) are rendered."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:55
+msgid ""
+"Creates a camera and adds it to the RenderingServer. It can be accessed with "
+"the RID that is returned. This RID will be used in all [code]camera_*[/code] "
+"RenderingServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"RenderingServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:67
+msgid ""
+"Sets the cull mask associated with this camera. The cull mask describes "
+"which 3D layers are rendered by this camera. Equivalent to [member Camera3D."
+"cull_mask]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:78
+msgid ""
+"Sets the environment used by this camera. Equivalent to [member Camera3D."
+"environment]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:95
+msgid ""
+"Sets camera to use frustum projection. This mode allows adjusting the "
+"[code]offset[/code] argument to create \"tilted frustum\" effects."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:110
+msgid ""
+"Sets camera to use orthogonal projection, also known as orthographic "
+"projection. Objects remain the same size on the screen no matter how far "
+"away they are."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:125
+msgid ""
+"Sets camera to use perspective projection. Objects on the screen becomes "
+"smaller when they are far away."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:136
+msgid "Sets [Transform] of camera."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:147
+msgid ""
+"If [code]true[/code], preserves the horizontal aspect ratio which is "
+"equivalent to [constant Camera3D.KEEP_WIDTH]. If [code]false[/code], "
+"preserves the vertical aspect ratio which is equivalent to [constant "
+"Camera3D.KEEP_HEIGHT]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:154
+msgid ""
+"Creates a canvas and returns the assigned [RID]. It can be accessed with the "
+"RID that is returned. This RID will be used in all [code]canvas_*[/code] "
+"RenderingServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"RenderingServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:164
+msgid "Clears the [CanvasItem] and removes all commands in it."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:177
+msgid "Sets the [CanvasItem] to copy a rect to the backbuffer."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:188
+msgid "Sets the index for the [CanvasItem]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:199
+msgid "Sets a new material to the [CanvasItem]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:210
+msgid "Sets if the [CanvasItem] uses its parent's material."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:221
+msgid ""
+"If this is enabled, the Z index of the parent will be added to the "
+"children's Z index."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:232
+msgid ""
+"Sets the [CanvasItem]'s Z index, i.e. its draw order (lower indexes are "
+"drawn first)."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:243
+msgid ""
+"Attaches the canvas light to the canvas. Removes it from its previous canvas."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:250
+msgid ""
+"Creates a canvas light and adds it to the RenderingServer. It can be "
+"accessed with the RID that is returned. This RID will be used in all "
+"[code]canvas_light_*[/code] RenderingServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"RenderingServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:262
+msgid ""
+"Attaches a light occluder to the canvas. Removes it from its previous canvas."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:269
+msgid ""
+"Creates a light occluder and adds it to the RenderingServer. It can be "
+"accessed with the RID that is returned. This RID will be used in all "
+"[code]canvas_light_ocluder_*[/code] RenderingServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"RenderingServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:281
+msgid "Enables or disables light occluder."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:292 doc/classes/RenderingServer.xml:369
+msgid ""
+"The light mask. See [LightOccluder2D] for more information on light masks."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:303
+msgid "Sets a light occluder's polygon."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:314
+msgid "Sets a light occluder's [Transform2D]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:325
+msgid "Sets the color for a light."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:336
+msgid "Enables or disables a canvas light."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:347
+msgid "Sets a canvas light's energy."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:358
+msgid "Sets a canvas light's height."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:380
+msgid ""
+"The binary mask used to determine which layers this canvas light's shadows "
+"affects. See [LightOccluder2D] for more information on light masks."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:393
+msgid "The layer range that gets rendered with this light."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:404
+msgid "The mode of the light, see [enum CanvasLightMode] constants."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:415
+msgid ""
+"Sets the texture's scale factor of the light. Equivalent to [member Light2D."
+"texture_scale]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:426
+msgid ""
+"Sets the width of the shadow buffer, size gets scaled to the next power of "
+"two for this."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:437
+msgid "Sets the color of the canvas light's shadow."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:448
+msgid "Enables or disables the canvas light's shadow."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:459
+msgid ""
+"Sets the canvas light's shadow's filter, see [enum CanvasLightShadowFilter] "
+"constants."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:470
+msgid "Smoothens the shadow. The lower, the smoother."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:481
+msgid ""
+"Sets texture to be used by light. Equivalent to [member Light2D.texture]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:492
+msgid ""
+"Sets the offset of the light's texture. Equivalent to [member Light2D."
+"offset]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:503
+msgid "Sets the canvas light's [Transform2D]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:516
+msgid ""
+"Sets the Z range of objects that will be affected by this light. Equivalent "
+"to [member Light2D.range_z_min] and [member Light2D.range_z_max]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:523
+msgid ""
+"Creates a new light occluder polygon and adds it to the RenderingServer. It "
+"can be accessed with the RID that is returned. This RID will be used in all "
+"[code]canvas_occluder_polygon_*[/code] RenderingServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"RenderingServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:535
+msgid ""
+"Sets an occluder polygons cull mode. See [enum "
+"CanvasOccluderPolygonCullMode] constants."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:548
+msgid "Sets the shape of the occluder polygon."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:559
+msgid "Sets the shape of the occluder polygon as lines."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:572
+msgid ""
+"A copy of the canvas item will be drawn with a local offset of the mirroring "
+"[Vector2]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:583
+msgid "Modulates all colors in the given canvas."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:590
+msgid ""
+"Creates a directional light and adds it to the RenderingServer. It can be "
+"accessed with the RID that is returned. This RID can be used in most "
+"[code]light_*[/code] RenderingServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"RenderingServer's [method free_rid] static method.\n"
+"To place in a scene, attach this directional light to an instance using "
+"[method instance_set_base] using the returned RID."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:599
+msgid ""
+"Creates an environment and adds it to the RenderingServer. It can be "
+"accessed with the RID that is returned. This RID will be used in all "
+"[code]environment_*[/code] RenderingServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"RenderingServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:619
+msgid ""
+"Sets the values to be used with the \"Adjustment\" post-process effect. See "
+"[Environment] for more details."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:650
+msgid ""
+"Sets the [i]BGMode[/i] of the environment. Equivalent to [member Environment."
+"background_mode]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:661
+msgid ""
+"Color displayed for clear areas of the scene (if using Custom color or Color"
+"+Sky background modes)."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:672
+msgid "Sets the intensity of the background color."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:683
+msgid "Sets the maximum layer to use if using Canvas background mode."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:700
+msgid ""
+"Sets the variables to be used with the scene fog. See [Environment] for more "
+"details."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:721
+msgid ""
+"Sets the variables to be used with the fog depth effect. See [Environment] "
+"for more details."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:738
+msgid ""
+"Sets the variables to be used with the fog height effect. See [Environment] "
+"for more details."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:777
+msgid ""
+"Sets the [Sky] to be used as the environment's background when using "
+"[i]BGMode[/i] sky. Equivalent to [member Environment.sky]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:788
+msgid ""
+"Sets a custom field of view for the background [Sky]. Equivalent to [member "
+"Environment.sky_custom_fov]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:799
+msgid ""
+"Sets the rotation of the background [Sky] expressed as a [Basis]. Equivalent "
+"to [member Environment.sky_rotation], where the rotation vector is used to "
+"construct the [Basis]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:842
+msgid ""
+"Sets the variables to be used with the \"screen space reflections\" post-"
+"process effect. See [Environment] for more details."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:867
+msgid ""
+"Sets the variables to be used with the \"tonemap\" post-process effect. See "
+"[Environment] for more details."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:874
+msgid "Removes buffers and clears testcubes."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:885
+msgid ""
+"Forces a frame to be drawn when the function is called. Drawing a frame "
+"updates all [Viewport]s that are set to update. Use with extreme caution."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:892
+msgid "Synchronizes threads."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:901
+msgid "Tries to free an object in the RenderingServer."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:910
+msgid "Returns a certain information, see [enum RenderInfo] for options."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:917
+msgid "Returns the id of the test cube. Creates one if none exists."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:924
+msgid "Returns the id of the test texture. Creates one if none exists."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:931
+msgid ""
+"Returns the name of the video adapter (e.g. \"GeForce GTX 1080/PCIe/"
+"SSE2\").\n"
+"[b]Note:[/b] When running a headless or server binary, this function returns "
+"an empty string."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:939
+msgid ""
+"Returns the vendor of the video adapter (e.g. \"NVIDIA Corporation\").\n"
+"[b]Note:[/b] When running a headless or server binary, this function returns "
+"an empty string."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:947
+msgid "Returns the id of a white texture. Creates one if none exists."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1006
+msgid ""
+"Returns [code]true[/code] if changes have been made to the RenderingServer's "
+"data. [method force_draw] is usually called if this happens."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1015
+msgid "Not yet implemented. Always returns [code]false[/code]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1024
+msgid ""
+"Returns [code]true[/code] if the OS supports a certain feature. Features "
+"might be [code]s3tc[/code], [code]etc[/code], [code]etc2[/code] and "
+"[code]pvrtc[/code]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1037
+msgid ""
+"Sets up [ImmediateGeometry3D] internals to prepare for drawing. Equivalent "
+"to [method ImmediateGeometry3D.begin]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1046
+msgid ""
+"Clears everything that was set up between [method immediate_begin] and "
+"[method immediate_end]. Equivalent to [method ImmediateGeometry3D.clear]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1057
+msgid ""
+"Sets the color to be used with next vertex. Equivalent to [method "
+"ImmediateGeometry3D.set_color]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1064
+msgid ""
+"Creates an immediate geometry and adds it to the RenderingServer. It can be "
+"accessed with the RID that is returned. This RID will be used in all "
+"[code]immediate_*[/code] RenderingServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"RenderingServer's [method free_rid] static method.\n"
+"To place in a scene, attach this immediate geometry to an instance using "
+"[method instance_set_base] using the returned RID."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1075
+msgid ""
+"Ends drawing the [ImmediateGeometry3D] and displays it. Equivalent to "
+"[method ImmediateGeometry3D.end]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1084
+msgid "Returns the material assigned to the [ImmediateGeometry3D]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1095
+msgid ""
+"Sets the normal to be used with next vertex. Equivalent to [method "
+"ImmediateGeometry3D.set_normal]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1106
+msgid "Sets the material to be used to draw the [ImmediateGeometry3D]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1117
+msgid ""
+"Sets the tangent to be used with next vertex. Equivalent to [method "
+"ImmediateGeometry3D.set_tangent]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1128
+msgid ""
+"Sets the UV to be used with next vertex. Equivalent to [method "
+"ImmediateGeometry3D.set_uv]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1139
+msgid ""
+"Sets the UV2 to be used with next vertex. Equivalent to [method "
+"ImmediateGeometry3D.set_uv2]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1150
+msgid ""
+"Adds the next vertex using the information provided in advance. Equivalent "
+"to [method ImmediateGeometry3D.add_vertex]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1161
+msgid ""
+"Adds the next vertex using the information provided in advance. This is a "
+"helper class that calls [method immediate_vertex] under the hood. Equivalent "
+"to [method ImmediateGeometry3D.add_vertex]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1168
+msgid ""
+"Initializes the rendering server. This function is called internally by "
+"platform-dependent code during engine initialization. If called from a "
+"running game, it will not do anything."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1179
+msgid ""
+"Attaches a unique Object ID to instance. Object ID must be attached to "
+"instance for proper culling with [method instances_cull_aabb], [method "
+"instances_cull_convex], and [method instances_cull_ray]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1190
+msgid ""
+"Attaches a skeleton to an instance. Removes the previous skeleton from the "
+"instance."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1197
+msgid ""
+"Creates a visual instance and adds it to the RenderingServer. It can be "
+"accessed with the RID that is returned. This RID will be used in all "
+"[code]instance_*[/code] RenderingServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"RenderingServer's [method free_rid] static method.\n"
+"An instance is a way of placing a 3D object in the scenario. Objects like "
+"particles, meshes, and reflection probes need to be associated with an "
+"instance to be visible in the scenario using [method instance_set_base]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1210
+msgid ""
+"Creates a visual instance, adds it to the RenderingServer, and sets both "
+"base and scenario. It can be accessed with the RID that is returned. This "
+"RID will be used in all [code]instance_*[/code] RenderingServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"RenderingServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1222 doc/classes/RenderingServer.xml:1250
+#: doc/classes/RenderingServer.xml:1537
+msgid "Not implemented in Godot 3.x."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1233
+msgid ""
+"Sets the shadow casting setting to one of [enum ShadowCastingSetting]. "
+"Equivalent to [member GeometryInstance3D.cast_shadow]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1263
+msgid ""
+"Sets the flag for a given [enum InstanceFlags]. See [enum InstanceFlags] for "
+"more details."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1274
+msgid ""
+"Sets a material that will override the material for all surfaces on the mesh "
+"associated with this instance. Equivalent to [member GeometryInstance3D."
+"material_override]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1285
+msgid ""
+"Sets the base of the instance. A base can be any of the 3D objects that are "
+"created in the RenderingServer that can be displayed. For example, any of "
+"the light types, mesh, multimesh, immediate geometry, particle system, "
+"reflection probe, lightmap, and the GI probe are all types that can be set "
+"as the base of an instance in order to be displayed in the scenario."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1298
+msgid "Sets the weight for a given blend shape associated with this instance."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1309
+msgid ""
+"Sets a custom AABB to use when culling objects from the view frustum. "
+"Equivalent to [method GeometryInstance3D.set_custom_aabb]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1320
+msgid "Function not implemented in Godot 3.x."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1331
+msgid ""
+"Sets a margin to increase the size of the AABB when culling objects from the "
+"view frustum. This allows you avoid culling objects that fall outside the "
+"view frustum. Equivalent to [member GeometryInstance3D.extra_cull_margin]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1342
+msgid ""
+"Sets the render layers that this instance will be drawn to. Equivalent to "
+"[member VisualInstance3D.layers]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1353
+msgid ""
+"Sets the scenario that the instance is in. The scenario is the 3D world that "
+"the objects will be displayed in."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1366
+msgid ""
+"Sets the material of a specific surface. Equivalent to [method "
+"MeshInstance3D.set_surface_material]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1377
+msgid ""
+"Sets the world space transform of the instance. Equivalent to [member Node3D."
+"transform]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1388
+msgid ""
+"Sets whether an instance is drawn or not. Equivalent to [member Node3D."
+"visible]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1399
+msgid ""
+"Returns an array of object IDs intersecting with the provided AABB. Only "
+"visual 3D nodes are considered, such as [MeshInstance3D] or "
+"[DirectionalLight3D]. Use [method @GDScript.instance_from_id] to obtain the "
+"actual nodes. A scenario RID must be provided, which is available in the "
+"[World3D] you want to query. This forces an update for all resources queued "
+"to update.\n"
+"[b]Warning:[/b] This function is primarily intended for editor usage. For in-"
+"game use cases, prefer physics collision."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1411
+msgid ""
+"Returns an array of object IDs intersecting with the provided convex shape. "
+"Only visual 3D nodes are considered, such as [MeshInstance3D] or "
+"[DirectionalLight3D]. Use [method @GDScript.instance_from_id] to obtain the "
+"actual nodes. A scenario RID must be provided, which is available in the "
+"[World3D] you want to query. This forces an update for all resources queued "
+"to update.\n"
+"[b]Warning:[/b] This function is primarily intended for editor usage. For in-"
+"game use cases, prefer physics collision."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1425
+msgid ""
+"Returns an array of object IDs intersecting with the provided 3D ray. Only "
+"visual 3D nodes are considered, such as [MeshInstance3D] or "
+"[DirectionalLight3D]. Use [method @GDScript.instance_from_id] to obtain the "
+"actual nodes. A scenario RID must be provided, which is available in the "
+"[World3D] you want to query. This forces an update for all resources queued "
+"to update.\n"
+"[b]Warning:[/b] This function is primarily intended for editor usage. For in-"
+"game use cases, prefer physics collision."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1437
+msgid ""
+"If [code]true[/code], this directional light will blend between shadow map "
+"splits resulting in a smoother transition between them. Equivalent to "
+"[member DirectionalLight3D.directional_shadow_blend_splits]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1448
+msgid ""
+"Sets the shadow depth range mode for this directional light. Equivalent to "
+"[member DirectionalLight3D.directional_shadow_depth_range]. See [enum "
+"LightDirectionalShadowDepthRangeMode] for options."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1459
+msgid ""
+"Sets the shadow mode for this directional light. Equivalent to [member "
+"DirectionalLight3D.directional_shadow_mode]. See [enum "
+"LightDirectionalShadowMode] for options."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1470
+msgid ""
+"Sets whether to use a dual paraboloid or a cubemap for the shadow map. Dual "
+"paraboloid is faster but may suffer from artifacts. Equivalent to [member "
+"OmniLight3D.omni_shadow_mode]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1491
+msgid ""
+"Sets the color of the light. Equivalent to [member Light3D.light_color]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1502
+msgid ""
+"Sets the cull mask for this Light3D. Lights only affect objects in the "
+"selected layers. Equivalent to [member Light3D.light_cull_mask]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1513
+msgid ""
+"If [code]true[/code], light will subtract light instead of adding light. "
+"Equivalent to [member Light3D.light_negative]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1526
+msgid ""
+"Sets the specified light parameter. See [enum LightParam] for options. "
+"Equivalent to [method Light3D.set_param]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1548
+msgid ""
+"If [code]true[/code], reverses the backface culling of the mesh. This can be "
+"useful when you have a flat mesh that has a light behind it. If you need to "
+"cast a shadow on both sides of the mesh, set the mesh to use double sided "
+"shadows with [method instance_geometry_set_cast_shadows_setting]. Equivalent "
+"to [member Light3D.shadow_reverse_cull_face]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1559
+msgid ""
+"If [code]true[/code], light will cast shadows. Equivalent to [member Light3D."
+"shadow_enabled]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1570
+msgid ""
+"Sets the color of the shadow cast by the light. Equivalent to [member "
+"Light3D.shadow_color]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1583
+msgid ""
+"Returns a mesh of a sphere with the given amount of horizontal and vertical "
+"subdivisions."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1590
+msgid ""
+"Creates an empty material and adds it to the RenderingServer. It can be "
+"accessed with the RID that is returned. This RID will be used in all "
+"[code]material_*[/code] RenderingServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"RenderingServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1602
+msgid "Returns the value of a certain material's parameter."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1613
+msgid "Sets an object's next material."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1626
+msgid "Sets a material's parameter."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1637
+msgid "Sets a material's render priority."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1648
+msgid "Sets a shader material's shader."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1677
+msgid "Removes all surfaces from a mesh."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1684
+msgid ""
+"Creates a new mesh and adds it to the RenderingServer. It can be accessed "
+"with the RID that is returned. This RID will be used in all [code]mesh_*[/"
+"code] RenderingServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"RenderingServer's [method free_rid] static method.\n"
+"To place in a scene, attach this mesh to an instance using [method "
+"instance_set_base] using the returned RID."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1695
+msgid "Returns a mesh's blend shape count."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1704
+msgid "Returns a mesh's blend shape mode."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1713
+msgid "Returns a mesh's custom aabb."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1722
+msgid "Returns a mesh's number of surfaces."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1733
+msgid "Sets a mesh's blend shape mode."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1744
+msgid "Sets a mesh's custom aabb."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1755
+msgid "Returns a mesh's surface's buffer arrays."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1766
+msgid "Returns a mesh's surface's arrays for blend shapes."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1781 doc/classes/RenderingServer.xml:1794
+msgid "Function is unused in Godot 3.x."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1805
+msgid "Returns a mesh's surface's material."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1818
+msgid "Sets a mesh's surface's material."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1833
+msgid ""
+"Updates a specific region of a vertex buffer for the specified surface. "
+"Warning: this function alters the vertex buffer directly with no safety "
+"mechanisms, you can easily corrupt your mesh."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1856
+msgid ""
+"Creates a new multimesh on the RenderingServer and returns an [RID] handle. "
+"This RID will be used in all [code]multimesh_*[/code] RenderingServer "
+"functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"RenderingServer's [method free_rid] static method.\n"
+"To place in a scene, attach this multimesh to an instance using [method "
+"instance_set_base] using the returned RID."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1867
+msgid ""
+"Calculates and returns the axis-aligned bounding box that encloses all "
+"instances within the multimesh."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1884
+msgid "Returns the number of instances allocated for this multimesh."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1893
+msgid ""
+"Returns the RID of the mesh that will be used in drawing this multimesh."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1902
+msgid "Returns the number of visible instances for this multimesh."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1913
+msgid "Returns the color by which the specified instance will be modulated."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1924
+msgid "Returns the custom data associated with the specified instance."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1935
+msgid "Returns the [Transform] of the specified instance."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1946
+msgid ""
+"Returns the [Transform2D] of the specified instance. For use when the "
+"multimesh is set to use 2D transforms."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1959
+msgid ""
+"Sets the color by which this instance will be modulated. Equivalent to "
+"[method MultiMesh.set_instance_color]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1972
+msgid ""
+"Sets the custom data for this instance. Custom data is passed as a [Color], "
+"but is interpreted as a [code]vec4[/code] in the shader. Equivalent to "
+"[method MultiMesh.set_instance_custom_data]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1985
+msgid ""
+"Sets the [Transform] for this instance. Equivalent to [method MultiMesh."
+"set_instance_transform]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:1998
+msgid ""
+"Sets the [Transform2D] for this instance. For use when multimesh is used in "
+"2D. Equivalent to [method MultiMesh.set_instance_transform_2d]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2019
+msgid ""
+"Sets the mesh to be drawn by the multimesh. Equivalent to [member MultiMesh."
+"mesh]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2030
+msgid ""
+"Sets the number of instances visible at a given time. If -1, all instances "
+"that have been allocated are drawn. Equivalent to [member MultiMesh."
+"visible_instance_count]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2037
+msgid ""
+"Creates a new omni light and adds it to the RenderingServer. It can be "
+"accessed with the RID that is returned. This RID can be used in most "
+"[code]light_*[/code] RenderingServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"RenderingServer's [method free_rid] static method.\n"
+"To place in a scene, attach this omni light to an instance using [method "
+"instance_set_base] using the returned RID."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2046
+msgid ""
+"Creates a particle system and adds it to the RenderingServer. It can be "
+"accessed with the RID that is returned. This RID will be used in all "
+"[code]particles_*[/code] RenderingServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"RenderingServer's [method free_rid] static method.\n"
+"To place in a scene, attach these particles to an instance using [method "
+"instance_set_base] using the returned RID."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2057
+msgid ""
+"Calculates and returns the axis-aligned bounding box that contains all the "
+"particles. Equivalent to [method GPUParticles3D.capture_aabb]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2066
+msgid "Returns [code]true[/code] if particles are currently set to emitting."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2075
+msgid ""
+"Returns [code]true[/code] if particles are not emitting and particles are "
+"set to inactive."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2084
+msgid ""
+"Add particle system to list of particle systems that need to be updated. "
+"Update will take place on the next frame, or on the next call to [method "
+"instances_cull_aabb], [method instances_cull_convex], or [method "
+"instances_cull_ray]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2093
+msgid ""
+"Reset the particles on the next update. Equivalent to [method GPUParticles3D."
+"restart]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2104
+msgid ""
+"Sets the number of particles to be drawn and allocates the memory for them. "
+"Equivalent to [member GPUParticles3D.amount]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2115
+msgid ""
+"Sets a custom axis-aligned bounding box for the particle system. Equivalent "
+"to [member GPUParticles3D.visibility_aabb]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2126
+msgid ""
+"Sets the draw order of the particles to one of the named enums from [enum "
+"ParticlesDrawOrder]. See [enum ParticlesDrawOrder] for options. Equivalent "
+"to [member GPUParticles3D.draw_order]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2139
+msgid ""
+"Sets the mesh to be used for the specified draw pass. Equivalent to [member "
+"GPUParticles3D.draw_pass_1], [member GPUParticles3D.draw_pass_2], [member "
+"GPUParticles3D.draw_pass_3], and [member GPUParticles3D.draw_pass_4]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2150
+msgid ""
+"Sets the number of draw passes to use. Equivalent to [member GPUParticles3D."
+"draw_passes]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2161
+msgid ""
+"Sets the [Transform] that will be used by the particles when they first emit."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2172
+msgid ""
+"If [code]true[/code], particles will emit over time. Setting to false does "
+"not reset the particles, but only stops their emission. Equivalent to "
+"[member GPUParticles3D.emitting]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2183
+msgid ""
+"Sets the explosiveness ratio. Equivalent to [member GPUParticles3D."
+"explosiveness]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2194
+msgid ""
+"Sets the frame rate that the particle system rendering will be fixed to. "
+"Equivalent to [member GPUParticles3D.fixed_fps]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2205
+msgid ""
+"If [code]true[/code], uses fractional delta which smooths the movement of "
+"the particles. Equivalent to [member GPUParticles3D.fract_delta]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2216
+msgid ""
+"Sets the lifetime of each particle in the system. Equivalent to [member "
+"GPUParticles3D.lifetime]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2227
+msgid ""
+"If [code]true[/code], particles will emit once and then stop. Equivalent to "
+"[member GPUParticles3D.one_shot]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2238
+msgid ""
+"Sets the preprocess time for the particles animation. This lets you delay "
+"starting an animation until after the particles have begun emitting. "
+"Equivalent to [member GPUParticles3D.preprocess]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2249
+msgid ""
+"Sets the material for processing the particles. Note: this is not the "
+"material used to draw the materials. Equivalent to [member GPUParticles3D."
+"process_material]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2260
+msgid ""
+"Sets the emission randomness ratio. This randomizes the emission of "
+"particles within their phase. Equivalent to [member GPUParticles3D."
+"randomness]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2271
+msgid ""
+"Sets the speed scale of the particle system. Equivalent to [member "
+"GPUParticles3D.speed_scale]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2282
+msgid ""
+"If [code]true[/code], particles use local coordinates. If [code]false[/code] "
+"they use global coordinates. Equivalent to [member GPUParticles3D."
+"local_coords]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2289
+msgid ""
+"Creates a reflection probe and adds it to the RenderingServer. It can be "
+"accessed with the RID that is returned. This RID will be used in all "
+"[code]reflection_probe_*[/code] RenderingServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"RenderingServer's [method free_rid] static method.\n"
+"To place in a scene, attach this reflection probe to an instance using "
+"[method instance_set_base] using the returned RID."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2332
+msgid ""
+"If [code]true[/code], reflections will ignore sky contribution. Equivalent "
+"to [member ReflectionProbe.interior]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2343
+msgid ""
+"Sets the render cull mask for this reflection probe. Only instances with a "
+"matching cull mask will be rendered by this probe. Equivalent to [member "
+"ReflectionProbe.cull_mask]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2354
+msgid ""
+"If [code]true[/code], uses box projection. This can make reflections look "
+"more correct in certain situations. Equivalent to [member ReflectionProbe."
+"box_projection]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2365
+msgid ""
+"If [code]true[/code], computes shadows in the reflection probe. This makes "
+"the reflection much slower to compute. Equivalent to [member ReflectionProbe."
+"enable_shadows]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2376
+msgid ""
+"Sets the size of the area that the reflection probe will capture. Equivalent "
+"to [member ReflectionProbe.extents]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2387
+msgid ""
+"Sets the intensity of the reflection probe. Intensity modulates the strength "
+"of the reflection. Equivalent to [member ReflectionProbe.intensity]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2398
+msgid ""
+"Sets the max distance away from the probe an object can be before it is "
+"culled. Equivalent to [member ReflectionProbe.max_distance]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2409
+msgid ""
+"Sets the origin offset to be used when this reflection probe is in box "
+"project mode. Equivalent to [member ReflectionProbe.origin_offset]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2420
+msgid ""
+"Sets how often the reflection probe updates. Can either be once or every "
+"frame. See [enum ReflectionProbeUpdateMode] for options."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2433
+msgid ""
+"Schedules a callback to the corresponding named [code]method[/code] on "
+"[code]where[/code] after a frame has been drawn.\n"
+"The callback method must use only 1 argument which will be called with "
+"[code]userdata[/code]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2441
+msgid ""
+"Creates a scenario and adds it to the RenderingServer. It can be accessed "
+"with the RID that is returned. This RID will be used in all "
+"[code]scenario_*[/code] RenderingServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"RenderingServer's [method free_rid] static method.\n"
+"The scenario is the 3D world that all the visual instances exist in."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2454
+msgid ""
+"Sets the [enum ScenarioDebugMode] for this scenario. See [enum "
+"ScenarioDebugMode] for options."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2465
+msgid "Sets the environment that will be used with this scenario."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2476
+msgid ""
+"Sets the fallback environment to be used by this scenario. The fallback "
+"environment is used if no environment is set. Internally, this is used by "
+"the editor to provide a default environment."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2491
+msgid ""
+"Sets a boot image. The color defines the background color. If [code]scale[/"
+"code] is [code]true[/code], the image will be scaled to fit the screen size. "
+"If [code]use_filter[/code] is [code]true[/code], the image will be scaled "
+"with linear interpolation. If [code]use_filter[/code] is [code]false[/code], "
+"the image will be scaled with nearest-neighbor interpolation."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2500
+msgid ""
+"If [code]true[/code], the engine will generate wireframes for use with the "
+"wireframe debug mode."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2509
+msgid ""
+"Sets the default clear color which is used when a specific clear color has "
+"not been selected."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2516
+msgid ""
+"Creates an empty shader and adds it to the RenderingServer. It can be "
+"accessed with the RID that is returned. This RID will be used in all "
+"[code]shader_*[/code] RenderingServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"RenderingServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2526
+msgid "Returns a shader's code."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2537
+msgid "Returns a default texture from a shader searched by name."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2556
+msgid "Returns the parameters of a shader."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2567
+msgid "Sets a shader's code."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2580
+msgid "Sets a shader's default texture. Overwrites the texture given by name."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2593
+msgid "Allocates the GPU buffers for this skeleton."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2604
+msgid "Returns the [Transform] set for a specific bone of this skeleton."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2615
+msgid "Returns the [Transform2D] set for a specific bone of this skeleton."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2628
+msgid "Sets the [Transform] for a specific bone of this skeleton."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2641
+msgid "Sets the [Transform2D] for a specific bone of this skeleton."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2648
+msgid ""
+"Creates a skeleton and adds it to the RenderingServer. It can be accessed "
+"with the RID that is returned. This RID will be used in all "
+"[code]skeleton_*[/code] RenderingServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"RenderingServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2658
+msgid "Returns the number of bones allocated for this skeleton."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2665
+msgid ""
+"Creates an empty sky and adds it to the RenderingServer. It can be accessed "
+"with the RID that is returned. This RID will be used in all [code]sky_*[/"
+"code] RenderingServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"RenderingServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2677
+msgid ""
+"Sets the material that the sky uses to render the background and reflection "
+"maps."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2684
+msgid ""
+"Creates a spot light and adds it to the RenderingServer. It can be accessed "
+"with the RID that is returned. This RID can be used in most [code]light_*[/"
+"code] RenderingServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"RenderingServer's [method free_rid] static method.\n"
+"To place in a scene, attach this spot light to an instance using [method "
+"instance_set_base] using the returned RID."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2713
+msgid "Sets a viewport's camera."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2724
+msgid "Sets a viewport's canvas."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2737
+msgid ""
+"Copies the viewport to a region of the screen specified by [code]rect[/"
+"code]. If [method viewport_set_render_direct_to_screen] is [code]true[/"
+"code], then the viewport does not use a framebuffer and the contents of the "
+"viewport are rendered directly to screen. However, note that the root "
+"viewport is drawn last, therefore it will draw over the screen. Accordingly, "
+"you must set the root viewport to an area that does not cover the area that "
+"you have attached this viewport to.\n"
+"For example, you can set the root viewport to not render at all with the "
+"following code:\n"
+"[codeblock]\n"
+"func _ready():\n"
+" get_viewport().set_attach_to_screen_rect(Rect2())\n"
+" $Viewport.set_attach_to_screen_rect(Rect2(0, 0, 600, 600))\n"
+"[/codeblock]\n"
+"Using this can result in significant optimization, especially on lower-end "
+"devices. However, it comes at the cost of having to manage your viewports "
+"manually. For a further optimization see, [method "
+"viewport_set_render_direct_to_screen]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2751
+msgid ""
+"Creates an empty viewport and adds it to the RenderingServer. It can be "
+"accessed with the RID that is returned. This RID will be used in all "
+"[code]viewport_*[/code] RenderingServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"RenderingServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2763
+msgid ""
+"Returns a viewport's render information. For options, see the [enum "
+"ViewportRenderInfo] constants."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2772
+msgid "Returns the viewport's last rendered frame."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2783
+msgid "Detaches a viewport from a canvas and vice versa."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2794
+msgid "If [code]true[/code], sets the viewport active, else sets it inactive."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2809
+msgid ""
+"Sets the stacking order for a viewport's canvas.\n"
+"[code]layer[/code] is the actual canvas layer, while [code]sublayer[/code] "
+"specifies the stacking order of the canvas among those in the same layer."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2823
+msgid "Sets the transformation of a viewport's canvas."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2834
+msgid ""
+"Sets the clear mode of a viewport. See [enum ViewportClearMode] for options."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2845
+msgid ""
+"Sets the debug draw mode of a viewport. See [enum ViewportDebugDraw] for "
+"options."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2856
+msgid ""
+"If [code]true[/code], rendering of a viewport's environment is disabled."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2867
+msgid "Sets the viewport's global transformation matrix."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2878
+msgid "If [code]true[/code], the viewport's canvas is not rendered."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2889
+msgid "Currently unimplemented in Godot 3.x."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2900
+msgid "Sets the anti-aliasing mode. See [enum ViewportMSAA] for options."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2911
+msgid "Sets the viewport's parent to another viewport."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2922
+msgid ""
+"If [code]true[/code], render the contents of the viewport directly to "
+"screen. This allows a low-level optimization where you can skip drawing a "
+"viewport to the root viewport. While this optimization can result in a "
+"significant increase in speed (especially on older devices), it comes at a "
+"cost of usability. When this is enabled, you cannot read from the viewport "
+"or from the [code]SCREEN_TEXTURE[/code]. You also lose the benefit of "
+"certain window settings, such as the various stretch modes. Another "
+"consequence to be aware of is that in 2D the rendering happens in window "
+"coordinates, so if you have a viewport that is double the size of the "
+"window, and you set this, then only the portion that fits within the window "
+"will be drawn, no automatic scaling is possible, even if your game scene is "
+"significantly larger than the window size."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2933
+msgid ""
+"Sets a viewport's scenario.\n"
+"The scenario contains information about the [enum ScenarioDebugMode], "
+"environment information, reflection atlas etc."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2947
+msgid "Sets the shadow atlas quadrant's subdivision."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2958
+msgid ""
+"Sets the size of the shadow atlas's images (used for omni and spot lights). "
+"The value will be rounded up to the nearest power of 2."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2971
+msgid "Sets the viewport's width and height."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2982
+msgid ""
+"If [code]true[/code], the viewport renders its background as transparent."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:2993
+msgid ""
+"Sets when the viewport should be updated. See [enum ViewportUpdateMode] "
+"constants for options."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3004
+msgid ""
+"If [code]true[/code], the viewport uses augmented or virtual reality "
+"technologies. See [XRInterface]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3010
+msgid ""
+"If [code]false[/code], disables rendering completely, but the engine logic "
+"is still being processed. You can call [method force_draw] to draw a frame "
+"even with rendering disabled."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3016
+msgid ""
+"Emitted at the end of the frame, after the RenderingServer has finished "
+"updating all the Viewports."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3021
+msgid ""
+"Emitted at the beginning of the frame, before the RenderingServer updates "
+"all the Viewports."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3027
+msgid "Marks an error that shows that the index array is empty."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3030
+msgid "Number of weights/bones per vertex."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3033
+msgid "The minimum Z-layer for canvas items."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3036
+msgid "The maximum Z-layer for canvas items."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3039
+msgid ""
+"Max number of glow levels that can be used with glow post-process effect."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3042
+msgid "Unused enum in Godot 3.x."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3063
+msgid "Shader is a 3D shader."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3066
+msgid "Shader is a 2D shader."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3069
+msgid "Shader is a particle shader."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3072
+msgid "Shader is a sky shader."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3075
+msgid "Represents the size of the [enum ShaderMode] enum."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3078
+msgid "The minimum renderpriority of all materials."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3081
+msgid "The maximum renderpriority of all materials."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3084
+msgid "Array is a vertex array."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3087
+msgid "Array is a normal array."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3090
+msgid "Array is a tangent array."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3093
+msgid "Array is a color array."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3096
+msgid "Array is an UV coordinates array."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3099
+msgid "Array is an UV coordinates array for the second UV coordinates."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3102
+msgid "Array contains bone information."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3105
+msgid "Array is weight information."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3108
+msgid "Array is index array."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3114
+msgid "Flag used to mark a vertex array."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3117
+msgid "Flag used to mark a normal array."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3120
+msgid "Flag used to mark a tangent array."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3123
+msgid "Flag used to mark a color array."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3126
+msgid "Flag used to mark an UV coordinates array."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3129
+msgid ""
+"Flag used to mark an UV coordinates array for the second UV coordinates."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3132
+msgid "Flag used to mark a bone information array."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3135
+msgid "Flag used to mark a weights array."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3138
+msgid "Flag used to mark an index array."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3167
+msgid "Primitive to draw consists of points."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3170
+msgid "Primitive to draw consists of lines."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3173
+msgid "Primitive to draw consists of a line strip from start to end."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3176
+msgid "Primitive to draw consists of triangles."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3179
+msgid ""
+"Primitive to draw consists of a triangle strip (the last 3 vertices are "
+"always combined to make a triangle)."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3182
+msgid "Represents the size of the [enum PrimitiveType] enum."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3191
+msgid "Use [Transform2D] to store MultiMesh transform."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3194
+msgid "Use [Transform] to store MultiMesh transform."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3197
+msgid "Is a directional (sun) light."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3200
+msgid "Is an omni light."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3203
+msgid "Is a spot light."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3206
+msgid "The light's energy."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3211
+msgid "The light's influence on specularity."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3214
+msgid "The light's range."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3217
+msgid ""
+"The size of the light when using spot light or omni light. The angular size "
+"of the light when using directional light."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3220
+msgid "The light's attenuation."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3223
+msgid "The spotlight's angle."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3226
+msgid "The spotlight's attenuation."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3229
+msgid "Max distance that shadows will be rendered."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3232
+msgid "Proportion of shadow atlas occupied by the first split."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3235
+msgid "Proportion of shadow atlas occupied by the second split."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3238
+msgid ""
+"Proportion of shadow atlas occupied by the third split. The fourth split "
+"occupies the rest."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3241
+msgid ""
+"Proportion of shadow max distance where the shadow will start to fade out."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3244
+msgid ""
+"Normal bias used to offset shadow lookup by object normal. Can be used to "
+"fix self-shadowing artifacts."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3247
+msgid "Bias the shadow lookup to fix self-shadowing artifacts."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3253
+msgid ""
+"Blurs the edges of the shadow. Can be used to hide pixel artifacts in low "
+"resolution shadow maps. A high value can make shadows appear grainy and can "
+"cause other unwanted artifacts. Try to keep as near default as possible."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3258
+msgid "Represents the size of the [enum LightParam] enum."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3267
+msgid "Use a dual paraboloid shadow map for omni lights."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3270
+msgid ""
+"Use a cubemap shadow map for omni lights. Slower but better quality than "
+"dual paraboloid."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3273
+msgid "Use orthogonal shadow projection for directional light."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3276
+msgid "Use 2 splits for shadow projection when using directional light."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3279
+msgid "Use 4 splits for shadow projection when using directional light."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3282
+msgid ""
+"Keeps shadows stable as camera moves but has lower effective resolution."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3285
+msgid ""
+"Optimize use of shadow maps, increasing the effective resolution. But may "
+"result in shadows moving or flickering slightly."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3288
+msgid "Reflection probe will update reflections once and then stop."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3291
+msgid ""
+"Reflection probe will update each frame. This mode is necessary to capture "
+"moving objects."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3310
+msgid "Draw particles in the order that they appear in the particles array."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3313
+msgid "Sort particles based on their lifetime."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3316
+msgid "Sort particles based on their distance to the camera."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3319
+msgid "Do not update the viewport."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3322
+msgid "Update the viewport once then set to disabled."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3325
+msgid "Update the viewport whenever it is visible."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3330
+msgid "Always update the viewport."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3333
+msgid "The viewport is always cleared before drawing."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3336
+msgid "The viewport is never cleared before drawing."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3339
+msgid ""
+"The viewport is cleared once, then the clear mode is set to [constant "
+"VIEWPORT_CLEAR_NEVER]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3342
+msgid "Multisample antialiasing is disabled."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3345
+msgid "Multisample antialiasing uses 2 samples per pixel."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3348
+msgid "Multisample antialiasing uses 4 samples per pixel."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3351
+msgid "Multisample antialiasing uses 8 samples per pixel."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3354
+msgid "Multisample antialiasing uses 16 samples per pixel."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3365
+msgid "Number of objects drawn in a single frame."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3368
+msgid "Number of vertices drawn in a single frame."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3371
+msgid "Number of material changes during this frame."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3374
+msgid "Number of shader changes during this frame."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3377
+msgid "Number of surface changes during this frame."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3380
+msgid "Number of draw calls during this frame."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3383
+msgid "Represents the size of the [enum ViewportRenderInfo] enum."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3386
+msgid "Debug draw is disabled. Default setting."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3389 doc/classes/Viewport.xml:348
+msgid "Objects are displayed without light information."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3392
+msgid "Objects are displayed with only light information."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3395 doc/classes/Viewport.xml:353
+msgid ""
+"Objects are displayed semi-transparent with additive blending so you can see "
+"where they are drawing over top of one another. A higher overdraw means you "
+"are wasting performance on drawing pixels that are being hidden behind "
+"others."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3398
+msgid "Debug draw draws objects in wireframe."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3401
+msgid ""
+"Normal buffer is drawn instead of regular scene so you can see the per-pixel "
+"normals that will be used by post-processing effects."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3404 doc/classes/Viewport.xml:361
+msgid "Objects are displayed with only the albedo value from [GIProbe]s."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3407 doc/classes/Viewport.xml:364
+msgid "Objects are displayed with only the lighting value from [GIProbe]s."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3410 doc/classes/Viewport.xml:367
+msgid "Objects are displayed with only the emission color from [GIProbe]s."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3413 doc/classes/Viewport.xml:370
+msgid ""
+"Draws the shadow atlas that stores shadows from [OmniLight3D]s and "
+"[SpotLight3D]s in the upper left quadrant of the [Viewport]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3416 doc/classes/Viewport.xml:373
+msgid ""
+"Draws the shadow atlas that stores shadows from [DirectionalLight3D]s in the "
+"upper left quadrant of the [Viewport]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3421
+msgid ""
+"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 [member Environment.ssao_enabled] set in "
+"your [WorldEnvironment]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3424
+msgid ""
+"Colors each PSSM split for the [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."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3435
+msgid ""
+"Uses high quality importance sampling to process the radiance map. In "
+"general, this results in much higher quality than [constant Sky."
+"PROCESS_MODE_REALTIME] but takes much longer to generate. This should not be "
+"used if you plan on changing the sky at runtime. If you are finding that the "
+"reflection is not blurry enough and is showing sparkles or fireflies, try "
+"increasing [member ProjectSettings.rendering/quality/reflections/"
+"ggx_samples]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3438
+msgid ""
+"Uses the fast filtering algorithm to process the radiance map. In general "
+"this results in lower quality, but substantially faster run times.\n"
+"[b]Note:[/b] The fast filtering algorithm is limited to 256x256 cubemaps, so "
+"[member Sky.radiance_size] must be set to [constant Sky.RADIANCE_SIZE_256]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3442
+msgid "Use the clear color as background."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3445
+msgid "Use a specified color as the background."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3448
+msgid "Use a sky resource for the background."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3451
+msgid ""
+"Use a specified canvas layer as the background. This can be useful for "
+"instantiating a 2D scene in a 3D world."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3454
+msgid ""
+"Do not clear the background, use whatever was rendered last frame as the "
+"background."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3460
+msgid "Represents the size of the [enum EnvironmentBG] enum."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3499
+msgid "Output color as they came in."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3502
+msgid "Use the Reinhard tonemapper."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3505
+msgid "Use the filmic tonemapper."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3508
+msgid "Use the ACES tonemapper."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3519
+msgid "Disables the blur set for SSAO. Will make SSAO look noisier."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3522
+msgid "Perform a 1x1 blur on the SSAO output."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3525
+msgid "Performs a 2x2 blur on the SSAO output."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3528
+msgid "Performs a 3x3 blur on the SSAO output. Use this for smoothest SSAO."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3531
+msgid "Lowest quality of screen space ambient occlusion."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3534
+msgid "Medium quality screen space ambient occlusion."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3537
+msgid "High quality screen space ambient occlusion."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3540
+msgid "Highest quality screen space ambient occlusion."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3551
+msgid ""
+"Lowest quality DOF blur. This is the fastest setting, but you may be able to "
+"see filtering artifacts."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3554
+msgid "Low quality DOF blur."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3557
+msgid "Medium quality DOF blur."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3560
+msgid ""
+"Highest quality DOF blur. Results in the smoothest looking blur by taking "
+"the most samples, but is also significantly slower."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3563
+msgid ""
+"Calculate the DOF blur using a box filter. The fastest option, but results "
+"in obvious lines in blur pattern."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3566
+msgid "Calculates DOF blur using a hexagon shaped filter."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3569
+msgid ""
+"Calculates DOF blur using a circle shaped filter. Best quality and most "
+"realistic, but slowest. Use only for areas where a lot of performance can be "
+"dedicated to post-processing (e.g. cutscenes)."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3584
+msgid "Do not use a debug mode."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3587
+msgid "Draw all objects as wireframe models."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3590
+msgid ""
+"Draw all objects in a way that displays how much overdraw is occurring. "
+"Overdraw occurs when a section of pixels is drawn and shaded and then "
+"another object covers it up. To optimize a scene, you should reduce overdraw."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3593
+msgid ""
+"Draw all objects without shading. Equivalent to setting all objects shaders "
+"to [code]unshaded[/code]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3596
+msgid "The instance does not have a type."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3599
+msgid "The instance is a mesh."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3602
+msgid "The instance is a multimesh."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3605
+msgid "The instance is an immediate geometry."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3608
+msgid "The instance is a particle emitter."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3611
+msgid "The instance is a light."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3614
+msgid "The instance is a reflection probe."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3617
+msgid "The instance is a decal."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3620
+msgid "The instance is a GI probe."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3623
+msgid "The instance is a lightmap."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3626
+msgid "Represents the size of the [enum InstanceType] enum."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3629
+msgid ""
+"A combination of the flags of geometry instances (mesh, multimesh, immediate "
+"and particles)."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3632
+msgid "Allows the instance to be used in baked lighting."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3635
+msgid "Allows the instance to be used with dynamic global illumination."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3638
+msgid "When set, manually requests to draw geometry on next frame."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3641
+msgid "Represents the size of the [enum InstanceFlags] enum."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3644
+msgid "Disable shadows from this instance."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3647
+msgid "Cast shadows from this instance."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3650
+msgid ""
+"Disable backface culling when rendering the shadow of the object. This is "
+"slightly slower but may result in more correct shadows."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3653
+msgid ""
+"Only render the shadows from the object. The object itself will not be drawn."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3656
+msgid "The nine patch gets stretched where needed."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3659
+msgid "The nine patch gets filled with tiles where needed."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3662
+msgid ""
+"The nine patch gets filled with tiles where needed and stretches them a bit "
+"if needed."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3665
+msgid "Uses the default filter mode for this [Viewport]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3677 doc/classes/Viewport.xml:402
+msgid ""
+"The texture filter blends between the nearest 4 pixels and between the "
+"nearest 2 mipmaps."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3686
+msgid "Max value for [enum CanvasItemTextureFilter] enum."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3689
+msgid "Uses the default repeat mode for this [Viewport]."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3692 doc/classes/Viewport.xml:408
+msgid ""
+"Disables textures repeating. Instead, when reading UVs outside the 0-1 "
+"range, the value will be clamped to the edge of the texture, resulting in a "
+"stretched out look at the borders of the texture."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3698 doc/classes/Viewport.xml:414
+msgid ""
+"Flip the texture when repeating so that the edge lines up instead of "
+"abruptly changing."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3701
+msgid "Max value for [enum CanvasItemTextureRepeat] enum."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3704
+msgid "Adds light color additive to the canvas."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3707
+msgid "Adds light color subtractive to the canvas."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3710
+msgid "The light adds color depending on transparency."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3713
+msgid "The light adds color depending on mask."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3716
+msgid "Do not apply a filter to canvas light shadows."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3719
+msgid "Use PCF5 filtering to filter canvas light shadows."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3722
+msgid "Use PCF13 filtering to filter canvas light shadows."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3725
+msgid "Max value of the [enum CanvasLightShadowFilter] enum."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3728
+msgid "Culling of the canvas occluder is disabled."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3731
+msgid "Culling of the canvas occluder is clockwise."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3734
+msgid "Culling of the canvas occluder is counterclockwise."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3795
+msgid "The amount of objects in the frame."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3798
+msgid "The amount of vertices in the frame."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3801
+msgid "The amount of modified materials in the frame."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3804
+msgid "The amount of shader rebinds in the frame."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3807
+msgid "The amount of surface changes in the frame."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3810
+msgid "The amount of draw calls in frame."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3825
+msgid "Hardware supports shaders. This enum is currently unused in Godot 3.x."
+msgstr ""
+
+#: doc/classes/RenderingServer.xml:3828
+msgid ""
+"Hardware supports multithreading. This enum is currently unused in Godot 3.x."
+msgstr ""
+
+#: doc/classes/Resource.xml:4
+msgid "Base class for all resources."
+msgstr ""
+
+#: doc/classes/Resource.xml:7
+msgid ""
+"Resource is the base class for all Godot-specific resource types, serving "
+"primarily as data containers. Unlike [Object]s, they are reference-counted "
+"and freed when no longer in use. They are also cached once loaded from disk, "
+"so that any further attempts to load a resource from a given path will "
+"return the same reference (all this in contrast to a [Node], which is not "
+"reference-counted and can be instanced from disk as many times as desired). "
+"Resources can be saved externally on disk or bundled into another object, "
+"such as a [Node] or another resource."
+msgstr ""
+
+#: doc/classes/Resource.xml:10
+msgid ""
+"https://docs.godotengine.org/en/latest/getting_started/step_by_step/"
+"resources.html"
+msgstr ""
+
+#: doc/classes/Resource.xml:18
+msgid ""
+"Virtual function which can be overridden to customize the behavior value of "
+"[method setup_local_to_scene]."
+msgstr ""
+
+#: doc/classes/Resource.xml:27
+msgid ""
+"Duplicates the resource, returning a new resource. By default, sub-resources "
+"are shared between resource copies for efficiency. This can be changed by "
+"passing [code]true[/code] to the [code]subresources[/code] argument which "
+"will copy the subresources.\n"
+"[b]Note:[/b] If [code]subresources[/code] is [code]true[/code], this method "
+"will only perform a shallow copy. Nested resources within subresources will "
+"not be duplicated and will still be shared."
+msgstr ""
+
+#: doc/classes/Resource.xml:35
+msgid ""
+"If [member resource_local_to_scene] is enabled and the resource was loaded "
+"from a [PackedScene] instantiation, returns the local scene where this "
+"resource's unique copy is in use. Otherwise, returns [code]null[/code]."
+msgstr ""
+
+#: doc/classes/Resource.xml:42
+msgid ""
+"Returns the RID of the resource (or an empty RID). Many resources (such as "
+"[Texture2D], [Mesh], etc) are high-level abstractions of resources stored in "
+"a server, so this function will return the original RID."
+msgstr ""
+
+#: doc/classes/Resource.xml:49
+msgid ""
+"This method is called when a resource with [member resource_local_to_scene] "
+"enabled is loaded from a [PackedScene] instantiation. Its behavior can be "
+"customized by overriding [method _setup_local_to_scene] from script.\n"
+"For most resources, this method performs no base logic. [ViewportTexture] "
+"performs custom logic to properly set the proxy texture and flags in the "
+"local viewport."
+msgstr ""
+
+#: doc/classes/Resource.xml:59
+msgid ""
+"Sets the path of the resource, potentially overriding an existing cache "
+"entry for this path. This differs from setting [member resource_path], as "
+"the latter would error out if another resource was already cached for the "
+"given path."
+msgstr ""
+
+#: doc/classes/Resource.xml:65
+msgid ""
+"If [code]true[/code], the resource will be made unique in each instance of "
+"its local scene. It can thus be modified in a scene instance without "
+"impacting other instances of that same scene."
+msgstr ""
+
+#: doc/classes/Resource.xml:68
+msgid "The name of the resource. This is an optional identifier."
+msgstr ""
+
+#: doc/classes/Resource.xml:71
+msgid ""
+"The path to the resource. In case it has its own file, it will return its "
+"filepath. If it's tied to the scene, it will return the scene's path, "
+"followed by the resource's index."
+msgstr ""
+
+#: doc/classes/Resource.xml:77
+msgid "Emitted whenever the resource changes."
+msgstr ""
+
+#: doc/classes/ResourceFormatLoader.xml:4
+msgid "Loads a specific resource type from a file."
+msgstr ""
+
+#: doc/classes/ResourceFormatLoader.xml:7
+msgid ""
+"Godot loads resources in the editor or in exported games using "
+"ResourceFormatLoaders. They are queried automatically via the "
+"[ResourceLoader] singleton, or when a resource with internal dependencies is "
+"loaded. Each file type may load as a different resource type, so multiple "
+"ResourceFormatLoaders are registered in the engine.\n"
+"Extending this class allows you to define your own loader. Be sure to "
+"respect the documented return types and values. You should give it a global "
+"class name with [code]class_name[/code] for it to be registered. Like built-"
+"in ResourceFormatLoaders, it will be called automatically when loading "
+"resources of its handled type(s). You may also implement a "
+"[ResourceFormatSaver].\n"
+"[b]Note:[/b] You can also extend [EditorImportPlugin] if the resource type "
+"you need exists but Godot is unable to load its format. Choosing one way "
+"over another depends if the format is suitable or not for the final exported "
+"game. For example, it's better to import [code].png[/code] textures as "
+"[code].stex[/code] ([StreamTexture2D]) first, so they can be loaded with "
+"better efficiency on the graphics card."
+msgstr ""
+
+#: doc/classes/ResourceFormatLoader.xml:22
+msgid ""
+"If implemented, gets the dependencies of a given resource. If "
+"[code]add_types[/code] is [code]true[/code], paths should be appended "
+"[code]::TypeName[/code], where [code]TypeName[/code] is the class name of "
+"the dependency.\n"
+"[b]Note:[/b] Custom resource types defined by scripts aren't known by the "
+"[ClassDB], so you might just return [code]\"Resource\"[/code] for them."
+msgstr ""
+
+#: doc/classes/ResourceFormatLoader.xml:30
+msgid "Gets the list of extensions for files this loader is able to read."
+msgstr ""
+
+#: doc/classes/ResourceFormatLoader.xml:39
+msgid ""
+"Gets the class name of the resource associated with the given path. If the "
+"loader cannot handle it, it should return [code]\"\"[/code].\n"
+"[b]Note:[/b] Custom resource types defined by scripts aren't known by the "
+"[ClassDB], so you might just return [code]\"Resource\"[/code] for them."
+msgstr ""
+
+#: doc/classes/ResourceFormatLoader.xml:49
+msgid ""
+"Tells which resource class this loader can load.\n"
+"[b]Note:[/b] Custom resource types defined by scripts aren't known by the "
+"[ClassDB], so you might just handle [code]\"Resource\"[/code] for them."
+msgstr ""
+
+#: doc/classes/ResourceFormatLoader.xml:61
+msgid ""
+"Loads a resource when the engine finds this loader to be compatible. If the "
+"loaded resource is the result of an import, [code]original_path[/code] will "
+"target the source file. Returns a [Resource] object on success, or an [enum "
+"Error] constant in case of failure."
+msgstr ""
+
+#: doc/classes/ResourceFormatLoader.xml:72
+msgid ""
+"If implemented, renames dependencies within the given resource and saves it. "
+"[code]renames[/code] is a dictionary [code]{ String => String }[/code] "
+"mapping old dependency paths to new paths.\n"
+"Returns [constant OK] on success, or an [enum Error] constant in case of "
+"failure."
+msgstr ""
+
+#: doc/classes/ResourceFormatSaver.xml:4
+msgid "Saves a specific resource type to a file."
+msgstr ""
+
+#: doc/classes/ResourceFormatSaver.xml:7
+msgid ""
+"The engine can save resources when you do it from the editor, or when you "
+"use the [ResourceSaver] singleton. This is accomplished thanks to multiple "
+"[ResourceFormatSaver]s, each handling its own format and called "
+"automatically by the engine.\n"
+"By default, Godot saves resources as [code].tres[/code] (text-based), [code]."
+"res[/code] (binary) or another built-in format, but you can choose to create "
+"your own format by extending this class. Be sure to respect the documented "
+"return types and values. You should give it a global class name with "
+"[code]class_name[/code] for it to be registered. Like built-in "
+"ResourceFormatSavers, it will be called automatically when saving resources "
+"of its recognized type(s). You may also implement a [ResourceFormatLoader]."
+msgstr ""
+
+#: doc/classes/ResourceFormatSaver.xml:19
+msgid ""
+"Returns the list of extensions available for saving the resource object, "
+"provided it is recognized (see [method recognize])."
+msgstr ""
+
+#: doc/classes/ResourceFormatSaver.xml:28
+msgid "Returns whether the given resource object can be saved by this saver."
+msgstr ""
+
+#: doc/classes/ResourceFormatSaver.xml:41
+msgid ""
+"Saves the given resource object to a file at the target [code]path[/code]. "
+"[code]flags[/code] is a bitmask composed with [enum ResourceSaver."
+"SaverFlags] constants.\n"
+"Returns [constant OK] on success, or an [enum Error] constant in case of "
+"failure."
+msgstr ""
+
+#: doc/classes/ResourceLoader.xml:4
+msgid "Singleton used to load resource files."
+msgstr ""
+
+#: doc/classes/ResourceLoader.xml:7
+msgid ""
+"Singleton used to load resource files from the filesystem.\n"
+"It uses the many [ResourceFormatLoader] classes registered in the engine "
+"(either built-in or from a plugin) to load files into memory and convert "
+"them to a format that can be used by the engine.\n"
+"GDScript has a simplified [method @GDScript.load] built-in method which can "
+"be used in most situations, leaving the use of [ResourceLoader] for more "
+"advanced scenarios."
+msgstr ""
+
+#: doc/classes/ResourceLoader.xml:22
+msgid ""
+"Returns whether a recognized resource exists for the given [code]path[/"
+"code].\n"
+"An optional [code]type_hint[/code] can be used to further specify the "
+"[Resource] type that should be handled by the [ResourceFormatLoader]."
+msgstr ""
+
+#: doc/classes/ResourceLoader.xml:32
+msgid ""
+"Returns the dependencies for the resource at the given [code]path[/code]."
+msgstr ""
+
+#: doc/classes/ResourceLoader.xml:41
+msgid "Returns the list of recognized extensions for a resource type."
+msgstr ""
+
+#: doc/classes/ResourceLoader.xml:50
+msgid ""
+"Returns whether a cached resource is available for the given [code]path[/"
+"code].\n"
+"Once a resource has been loaded by the engine, it is cached in memory for "
+"faster access, and future calls to the [method load] method will use the "
+"cached version. The cached resource can be overridden by using [method "
+"Resource.take_over_path] on a new resource for that same path."
+msgstr ""
+
+#: doc/classes/ResourceLoader.xml:64
+msgid ""
+"Loads a resource at the given [code]path[/code], caching the result for "
+"further access.\n"
+"The registered [ResourceFormatLoader]s are queried sequentially to find the "
+"first one which can handle the file's extension, and then attempt loading. "
+"If loading fails, the remaining ResourceFormatLoaders are also attempted.\n"
+"An optional [code]type_hint[/code] can be used to further specify the "
+"[Resource] type that should be handled by the [ResourceFormatLoader].\n"
+"If [code]no_cache[/code] is [code]true[/code], the resource cache will be "
+"bypassed and the resource will be loaded anew. Otherwise, the cached "
+"resource will be returned if it exists.\n"
+"Returns an empty resource if no ResourceFormatLoader could handle the file."
+msgstr ""
+
+#: doc/classes/ResourceLoader.xml:77
+msgid ""
+"Returns the resource loaded by [method load_threaded_request].\n"
+"If this is called before the loading thread is done (i.e. [method "
+"load_threaded_get_status] is not [constant THREAD_LOAD_LOADED]), the calling "
+"thread will be blocked until the resource has finished loading."
+msgstr ""
+
+#: doc/classes/ResourceLoader.xml:89
+msgid ""
+"Returns the status of a threaded loading operation started with [method "
+"load_threaded_request] for the resource at [code]path[/code]. See [enum "
+"ThreadLoadStatus] for possible return values.\n"
+"An array variable can optionally be passed via [code]progress[/code], and "
+"will return a one-element array containing the percentage of completion of "
+"the threaded loading."
+msgstr ""
+
+#: doc/classes/ResourceLoader.xml:103
+msgid ""
+"Loads the resource using threads. If [code]use_sub_threads[/code] is "
+"[code]true[/code], multiple threads will be used to load the resource, which "
+"makes loading faster, but may affect the main thread (and thus cause game "
+"slowdowns)."
+msgstr ""
+
+#: doc/classes/ResourceLoader.xml:112
+msgid ""
+"Changes the behavior on missing sub-resources. The default behavior is to "
+"abort loading."
+msgstr ""
+
+#: doc/classes/ResourceLoader.xml:118
+msgid ""
+"The resource is invalid, or has not been loaded with [method "
+"load_threaded_request]."
+msgstr ""
+
+#: doc/classes/ResourceLoader.xml:121
+msgid "The resource is still being loaded."
+msgstr ""
+
+#: doc/classes/ResourceLoader.xml:124
+msgid "Some error occurred during loading and it failed."
+msgstr ""
+
+#: doc/classes/ResourceLoader.xml:127
+msgid ""
+"The resource was loaded successfully and can be accessed via [method "
+"load_threaded_get]."
+msgstr ""
+
+#: doc/classes/ResourcePreloader.xml:4
+msgid "Resource Preloader Node."
+msgstr ""
+
+#: doc/classes/ResourcePreloader.xml:7
+msgid ""
+"This node is used to preload sub-resources inside a scene, so when the scene "
+"is loaded, all the resources are ready to use and can be retrieved from the "
+"preloader.\n"
+"GDScript has a simplified [method @GDScript.preload] built-in method which "
+"can be used in most situations, leaving the use of [ResourcePreloader] for "
+"more advanced scenarios."
+msgstr ""
+
+#: doc/classes/ResourcePreloader.xml:21
+msgid ""
+"Adds a resource to the preloader with the given [code]name[/code]. If a "
+"resource with the given [code]name[/code] already exists, the new resource "
+"will be renamed to \"[code]name[/code] N\" where N is an incrementing number "
+"starting from 2."
+msgstr ""
+
+#: doc/classes/ResourcePreloader.xml:30
+msgid "Returns the resource associated to [code]name[/code]."
+msgstr ""
+
+#: doc/classes/ResourcePreloader.xml:37
+msgid "Returns the list of resources inside the preloader."
+msgstr ""
+
+#: doc/classes/ResourcePreloader.xml:46
+msgid ""
+"Returns [code]true[/code] if the preloader contains a resource associated to "
+"[code]name[/code]."
+msgstr ""
+
+#: doc/classes/ResourcePreloader.xml:55
+msgid ""
+"Removes the resource associated to [code]name[/code] from the preloader."
+msgstr ""
+
+#: doc/classes/ResourcePreloader.xml:66
+msgid ""
+"Renames a resource inside the preloader from [code]name[/code] to "
+"[code]newname[/code]."
+msgstr ""
+
+#: doc/classes/ResourceSaver.xml:4
+msgid "Singleton for saving Godot-specific resource types."
+msgstr ""
+
+#: doc/classes/ResourceSaver.xml:7
+msgid ""
+"Singleton for saving Godot-specific resource types to the filesystem.\n"
+"It uses the many [ResourceFormatSaver] classes registered in the engine "
+"(either built-in or from a plugin) to save engine-specific resource data to "
+"text-based (e.g. [code].tres[/code] or [code].tscn[/code]) or binary files "
+"(e.g. [code].res[/code] or [code].scn[/code])."
+msgstr ""
+
+#: doc/classes/ResourceSaver.xml:19
+msgid ""
+"Returns the list of extensions available for saving a resource of a given "
+"type."
+msgstr ""
+
+#: doc/classes/ResourceSaver.xml:32
+msgid ""
+"Saves a resource to disk to the given path, using a [ResourceFormatSaver] "
+"that recognizes the resource object.\n"
+"The [code]flags[/code] bitmask can be specified to customize the save "
+"behavior.\n"
+"Returns [constant OK] on success."
+msgstr ""
+
+#: doc/classes/ResourceSaver.xml:40
+msgid "Save the resource with a path relative to the scene which uses it."
+msgstr ""
+
+#: doc/classes/ResourceSaver.xml:43
+msgid "Bundles external resources."
+msgstr ""
+
+#: doc/classes/ResourceSaver.xml:46
+msgid ""
+"Changes the [member Resource.resource_path] of the saved resource to match "
+"its new location."
+msgstr ""
+
+#: doc/classes/ResourceSaver.xml:49
+msgid ""
+"Do not save editor-specific metadata (identified by their [code]__editor[/"
+"code] prefix)."
+msgstr ""
+
+#: doc/classes/ResourceSaver.xml:52
+msgid "Save as big endian (see [member File.endian_swap])."
+msgstr ""
+
+#: doc/classes/ResourceSaver.xml:55
+msgid ""
+"Compress the resource on save using [constant File.COMPRESSION_ZSTD]. Only "
+"available for binary resource types."
+msgstr ""
+
+#: doc/classes/ResourceSaver.xml:58
+msgid ""
+"Take over the paths of the saved subresources (see [method Resource."
+"take_over_path])."
+msgstr ""
+
+#: doc/classes/RichTextEffect.xml:4
+msgid "A custom effect for use with [RichTextLabel]."
+msgstr ""
+
+#: doc/classes/RichTextEffect.xml:7
+msgid ""
+"A custom effect for use with [RichTextLabel].\n"
+"[b]Note:[/b] For a [RichTextEffect] to be usable, a BBCode tag must be "
+"defined as a member variable called [code]bbcode[/code] in the script.\n"
+"[codeblock]\n"
+"# The RichTextEffect will be usable like this: `[example]Some text[/"
+"example]`\n"
+"var bbcode = \"example\"\n"
+"[/codeblock]\n"
+"[b]Note:[/b] As soon as a [RichTextLabel] contains at least one "
+"[RichTextEffect], it will continuously process the effect unless the project "
+"is paused. This may impact battery life negatively."
+msgstr ""
+
+#: doc/classes/RichTextEffect.xml:26
+msgid ""
+"Override this method to modify properties in [code]char_fx[/code]. The "
+"method must return [code]true[/code] if the character could be transformed "
+"successfully. If the method returns [code]false[/code], it will skip "
+"transformation to avoid displaying broken text."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:4
+msgid "Label that displays rich text."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:7
+msgid ""
+"Rich text can contain custom text, fonts, images and some basic formatting. "
+"The label manages these as an internal tag stack. It also adapts itself to "
+"given width/heights.\n"
+"[b]Note:[/b] Assignments to [member bbcode_text] clear the tag stack and "
+"reconstruct it from the property's contents. Any edits made to [member "
+"bbcode_text] will erase previous edits made from other manual sources such "
+"as [method append_bbcode] and the [code]push_*[/code] / [method pop] methods."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:26
+msgid ""
+"Adds an image's opening and closing tags to the tag stack, optionally "
+"providing a [code]width[/code] and [code]height[/code] to resize the image "
+"and a [code]color[/code] to tint the image.\n"
+"If [code]width[/code] or [code]height[/code] is set to 0, the image size "
+"will be adjusted in order to keep the original aspect ratio."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:36
+msgid "Adds raw non-BBCode-parsed text to the tag stack."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:45
+msgid ""
+"Parses [code]bbcode[/code] and adds tags to the tag stack as needed. Returns "
+"the result of the parsing, [constant OK] if successful."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:52
+msgid "Clears the tag stack and sets [member bbcode_text] to an empty string."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:59
+msgid "Returns the height of the content."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:66
+msgid ""
+"Returns the total number of newlines in the tag stack's text tags. Considers "
+"wrapped text as one line."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:73
+msgid ""
+"Returns the total number of characters from text tags. Does not include "
+"BBCodes."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:80
+msgid "Returns the vertical scrollbar."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:87
+msgid "Returns the number of visible lines."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:96
+msgid ""
+"Installs a custom effect. [code]effect[/code] should be a valid "
+"[RichTextEffect]."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:103
+msgid "Adds a newline tag to the tag stack."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:112
+msgid ""
+"The assignment version of [method append_bbcode]. Clears the tag stack and "
+"inserts the new content. Returns [constant OK] if parses [code]bbcode[/code] "
+"successfully."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:121
+msgid "Parses BBCode parameter [code]expressions[/code] into a dictionary."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:128
+msgid ""
+"Terminates the current tag. Use after [code]push_*[/code] methods to close "
+"BBCodes manually. Does not need to follow [code]add_*[/code] methods."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:137
+msgid ""
+"Adds an [code][align][/code] tag based on the given [code]align[/code] "
+"value. See [enum Align] for possible values."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:144
+msgid ""
+"Adds a [code][font][/code] tag with a bold font to the tag stack. This is "
+"the same as adding a [code][b][/code] tag if not currently in a [code][i][/"
+"code] tag."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:151
+msgid ""
+"Adds a [code][font][/code] tag with a bold italics font to the tag stack."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:158
+msgid ""
+"Adds a [code][cell][/code] tag to the tag stack. Must be inside a [code]"
+"[table][/code] tag. See [method push_table] for details."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:167
+msgid "Adds a [code][color][/code] tag to the tag stack."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:176
+msgid ""
+"Adds a [code][font][/code] tag to the tag stack. Overrides default fonts for "
+"its duration."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:185
+msgid ""
+"Adds an [code][indent][/code] tag to the tag stack. Multiplies [code]level[/"
+"code] by current [member tab_size] to determine new margin length."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:192
+msgid ""
+"Adds a [code][font][/code] tag with a italics font to the tag stack. This is "
+"the same as adding a [code][i][/code] tag if not currently in a [code][b][/"
+"code] tag."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:201
+msgid ""
+"Adds a [code][list][/code] tag to the tag stack. Similar to the BBCodes "
+"[code][ol][/code] or [code][ul][/code], but supports more list types. Not "
+"fully implemented!"
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:210
+msgid ""
+"Adds a [code][meta][/code] tag to the tag stack. Similar to the BBCode [code]"
+"[url=something]{text}[/url][/code], but supports non-[String] metadata types."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:217
+msgid "Adds a [code][font][/code] tag with a monospace font to the tag stack."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:224
+msgid "Adds a [code][font][/code] tag with a normal font to the tag stack."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:231
+msgid "Adds a [code][s][/code] tag to the tag stack."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:240
+msgid "Adds a [code][table=columns][/code] tag to the tag stack."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:247
+msgid "Adds a [code][u][/code] tag to the tag stack."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:256
+msgid ""
+"Removes a line of content from the label. Returns [code]true[/code] if the "
+"line exists.\n"
+"The [code]line[/code] argument is the index of the line to remove, it can "
+"take values in the interval [code][0, get_line_count() - 1][/code]."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:266
+msgid "Scrolls the window's top line to match [code]line[/code]."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:279
+msgid ""
+"Edits the selected column's expansion options. If [code]expand[/code] is "
+"[code]true[/code], the column expands in proportion to its expansion ratio "
+"versus the other columns' ratios.\n"
+"For example, 2 columns with ratios 3 and 4 plus 70 pixels in available width "
+"would expand 30 and 40 pixels, respectively.\n"
+"If [code]expand[/code] is [code]false[/code], the column will not contribute "
+"to the total ratio."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:287
+msgid "If [code]true[/code], the label uses BBCode formatting."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:290
+msgid ""
+"The label's text in BBCode format. Is not representative of manual "
+"modifications to the internal tag stack. Erases changes made by other "
+"methods when edited.\n"
+"[b]Note:[/b] It is unadvised to use [code]+=[/code] operator with "
+"[code]bbcode_text[/code] (e.g. [code]bbcode_text += \"some string\"[/code]) "
+"as it replaces the whole text and can cause slowdowns. Use [method "
+"append_bbcode] for adding text instead."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:294
+msgid ""
+"The currently installed custom effects. This is an array of "
+"[RichTextEffect]s.\n"
+"To add a custom effect, it's more convenient to use [method install_effect]."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:298
+msgid ""
+"If [code]true[/code], the label's height will be automatically updated to "
+"fit its content.\n"
+"[b]Note:[/b] This property is used as a workaround to fix issues with "
+"[RichTextLabel] in [Container]s, but it's unreliable in some cases and will "
+"be removed in future versions."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:302
+msgid ""
+"If [code]true[/code], the label underlines meta tags such as [code][url]"
+"{text}[/url][/code]."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:305
+msgid "If [code]true[/code], the label uses the custom font color."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:308
+msgid ""
+"The range of characters to display, as a [float] between 0.0 and 1.0. When "
+"assigned an out of range value, it's the same as assigning 1.0.\n"
+"[b]Note:[/b] Setting this property updates [member visible_characters] based "
+"on current [method get_total_character_count]."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:313
+msgid ""
+"If [code]true[/code], the scrollbar is visible. Setting this to [code]false[/"
+"code] does not block scrolling completely. See [method scroll_to_line]."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:316
+msgid ""
+"If [code]true[/code], the window scrolls down to display new content "
+"automatically."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:319
+msgid "If [code]true[/code], the label allows text selection."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:322
+msgid ""
+"The number of spaces associated with a single tab length. Does not affect "
+"[code]\\t[/code] in text tags, only indent tags."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:325
+msgid ""
+"The raw text of the label.\n"
+"When set, clears the tag stack and adds a raw text tag to the top of it. "
+"Does not parse BBCodes. Does not modify [member bbcode_text]."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:329
+msgid ""
+"The restricted number of characters to display in the label. If [code]-1[/"
+"code], all characters will be displayed."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:337
+msgid ""
+"Triggered when the user clicks on content between meta tags. If the meta is "
+"defined in text, e.g. [code][url={\"data\"=\"hi\"}]hi[/url][/code], then the "
+"parameter for this signal will be a [String] type. If a particular type or "
+"an object is desired, the [method push_meta] method must be used to manually "
+"insert the data into the tag stack."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:344
+msgid "Triggers when the mouse exits a meta tag."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:351
+msgid "Triggers when the mouse enters a meta tag."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:357
+msgid "Makes text left aligned."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:360
+msgid "Makes text centered."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:363
+msgid "Makes text right aligned."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:366
+msgid "Makes text fill width."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:369
+msgid "Each list item has a number marker."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:372
+msgid "Each list item has a letter marker."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:375
+msgid "Each list item has a filled circle marker."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:418
+msgid "The font used for bold text."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:421
+msgid "The font used for bold italics text."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:424
+msgid "The default text color."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:427
+msgid "The background The background used when the [RichTextLabel] is focused."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:430
+msgid ""
+"The color of selected text, used when [member selection_enabled] is "
+"[code]true[/code]."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:433
+msgid "The color of the font's shadow."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:436
+msgid "The font used for italics text."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:439
+msgid "The vertical space between lines."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:442
+msgid "The font used for monospace text."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:445
+msgid "The normal background for the [RichTextLabel]."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:448
+msgid "The default text font."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:451
+msgid "The color of the selection box."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:454
+msgid ""
+"Boolean value. If 1 ([code]true[/code]), the shadow will be displayed around "
+"the whole text as an outline."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:457
+msgid "The horizontal offset of the font's shadow."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:460
+msgid "The vertical offset of the font's shadow."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:463
+msgid "The horizontal separation of elements in a table."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:466
+msgid "The vertical separation of elements in a table."
+msgstr ""
+
+#: doc/classes/RID.xml:4
+msgid "Handle for a [Resource]'s unique ID."
+msgstr ""
+
+#: doc/classes/RID.xml:7
+msgid ""
+"The RID type is used to access the unique integer ID of a resource. They are "
+"opaque, which means they do not grant access to the associated resource by "
+"themselves. They are used by and with the low-level Server classes such as "
+"[RenderingServer]."
+msgstr ""
+
+#: doc/classes/RID.xml:18
+msgid ""
+"Creates a new RID instance with the ID of a given resource. When not handed "
+"a valid resource, silently stores the unused ID 0."
+msgstr ""
+
+#: doc/classes/RID.xml:25
+msgid "Returns the ID of the referenced resource."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:4
+msgid "A body that is controlled by the 2D physics engine."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:7
+msgid ""
+"This node implements simulated 2D physics. You do not control a RigidBody2D "
+"directly. Instead you apply forces to it (gravity, impulses, etc.) and the "
+"physics simulation calculates the resulting movement based on its mass, "
+"friction, and other physical properties.\n"
+"A RigidBody2D has 4 behavior [member mode]s: Rigid, Static, Character, and "
+"Kinematic.\n"
+"[b]Note:[/b] You should not change a RigidBody2D's [code]position[/code] or "
+"[code]linear_velocity[/code] every frame or even very often. If you need to "
+"directly affect the body's state, use [method _integrate_forces], which "
+"allows you to directly access the physics state.\n"
+"Please also keep in mind that physics bodies manage their own transform "
+"which overwrites the ones you set. So any direct or indirect transformation "
+"(including scaling of the node or its parent) will be visible in the editor "
+"only, and immediately reset at runtime.\n"
+"If you need to override the default physics behavior or add a transformation "
+"at runtime, you can write a custom force integration. See [member "
+"custom_integrator]."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:22
+msgid ""
+"Allows you to read and safely modify the simulation state for the object. "
+"Use this instead of [method Node._physics_process] if you need to directly "
+"change the body's [code]position[/code] or other physics properties. By "
+"default, it works in addition to the usual physics behavior, but [member "
+"custom_integrator] allows you to disable the default behavior and write "
+"custom force integration for a body."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:71
+msgid ""
+"Applies a positioned impulse to the body. 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). The position uses the rotation of the "
+"global coordinate system, but is centered at the object's origin."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:87 doc/classes/RigidBody3D.xml:99
+msgid ""
+"Returns a list of the bodies colliding with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
+"[b]Note:[/b] The result of this test is not immediate after moving objects. "
+"For performance, list of collisions is updated once per frame and before the "
+"physics step. Consider using signals instead."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:97
+msgid ""
+"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."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:112
+msgid ""
+"Returns [code]true[/code] if a collision would result from moving in the "
+"given vector. [code]margin[/code] increases the size of the shapes involved "
+"in the collision detection, and [code]result[/code] is an object of type "
+"[PhysicsTestMotionResult2D], which contains additional information about the "
+"collision (should there be one)."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:118
+msgid ""
+"Damps the body's [member angular_velocity]. If [code]-1[/code], the body "
+"will use the [b]Default Angular Damp[/b] defined in [b]Project > Project "
+"Settings > Physics > 2d[/b]."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:124
+msgid "The body's total applied force."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:127
+msgid "The body's total applied torque."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:130 doc/classes/RigidBody3D.xml:157
+msgid ""
+"If [code]true[/code], the body can enter sleep mode when there is no "
+"movement. See [member sleeping]."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:133
+msgid ""
+"If [code]true[/code], the body will emit signals when it collides with "
+"another RigidBody2D. See also [member contacts_reported]."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:136 doc/classes/RigidBody3D.xml:163
+msgid ""
+"The maximum number of contacts that will be recorded. Requires [member "
+"contact_monitor] to be set to [code]true[/code].\n"
+"[b]Note:[/b] The number of contacts is different from the number of "
+"collisions. Collisions between parallel edges will result in two contacts "
+"(one at each end), and collisions between parallel faces will result in four "
+"contacts (one at each corner)."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:140
+msgid ""
+"Continuous collision detection mode.\n"
+"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 [enum CCDMode] for details."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:144
+msgid ""
+"If [code]true[/code], internal force integration is disabled for this body. "
+"Aside from collision response, the body will only move as determined by the "
+"[method _integrate_forces] function."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:147
+msgid ""
+"Multiplies the gravity applied to the body. The body's gravity is calculated "
+"from the [b]Default Gravity[/b] value in [b]Project > Project Settings > "
+"Physics > 2d[/b] and/or any additional gravity vector applied by [Area2D]s."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:150
+msgid ""
+"The body's moment of inertia. This is like mass, but for rotation: it "
+"determines how much torque it takes to rotate the body. The moment of "
+"inertia is usually computed automatically from the mass and the shapes, but "
+"this function allows you to set a custom value. Set 0 inertia to return to "
+"automatically computing it."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:153
+msgid ""
+"Damps the body's [member linear_velocity]. If [code]-1[/code], the body will "
+"use the [b]Default Linear Damp[/b] in [b]Project > Project Settings > "
+"Physics > 2d[/b]."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:162
+msgid "The body's mode. See [enum Mode] for possible values."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:165 doc/classes/RigidBody3D.xml:189
+#: doc/classes/StaticBody2D.xml:22 doc/classes/StaticBody3D.xml:22
+msgid ""
+"The physics material override for the body.\n"
+"If a material is assigned to this property, it will be used instead of any "
+"other physics material, such as an inherited one."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:169 doc/classes/RigidBody3D.xml:193
+msgid ""
+"If [code]true[/code], the body will not move and will not calculate forces "
+"until woken up by another body through, for example, a collision, or by "
+"using the [method apply_impulse] or [method add_force] methods."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:172
+msgid ""
+"The body's weight based on its mass and the [b]Default Gravity[/b] value in "
+"[b]Project > Project Settings > Physics > 2d[/b]."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:180 doc/classes/RigidBody3D.xml:204
+msgid ""
+"Emitted when a body enters into contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:187
+msgid ""
+"Emitted when a body exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:200
+msgid ""
+"Emitted when a body enters into contact with this one. Reports colliding "
+"shape information. See [CollisionObject2D] for shape index information. "
+"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:213
+msgid ""
+"Emitted when a body shape exits contact with this one. Reports colliding "
+"shape information. See [CollisionObject2D] for shape index information. "
+"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:218 doc/classes/RigidBody3D.xml:244
+msgid ""
+"Emitted when the physics engine changes the body's sleeping state.\n"
+"[b]Note:[/b] Changing the value [member sleeping] will not trigger this "
+"signal. It is only emitted if the sleeping state is changed by the physics "
+"engine or [code]emit_signal(\"sleeping_state_changed\")[/code] is used."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:225
+msgid ""
+"Rigid mode. The body behaves as a physical object. It collides with other "
+"bodies and responds to forces applied to it. This is the default mode."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:228
+msgid "Static mode. The body behaves like a [StaticBody2D] and does not move."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:231
+msgid ""
+"Character mode. Similar to [constant MODE_RIGID], but the body can not "
+"rotate."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:234
+msgid ""
+"Kinematic mode. The body behaves like a [KinematicBody2D], and must be moved "
+"by code."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:237
+msgid ""
+"Continuous collision detection disabled. This is the fastest way to detect "
+"body collisions, but can miss small, fast-moving objects."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:240
+msgid ""
+"Continuous collision detection enabled using raycasting. This is faster than "
+"shapecasting but less precise."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:243
+msgid ""
+"Continuous collision detection enabled using shapecasting. This is the "
+"slowest CCD method and the most precise."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:4
+msgid ""
+"Physics Body whose position is determined through physics simulation in 3D "
+"space."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:7
+msgid ""
+"This is the node that implements full 3D physics. This means that you do not "
+"control a RigidBody3D directly. Instead, you can apply forces to it "
+"(gravity, impulses, etc.), and the physics simulation will calculate the "
+"resulting movement, collision, bouncing, rotating, etc.\n"
+"A RigidBody3D has 4 behavior [member mode]s: Rigid, Static, Character, and "
+"Kinematic.\n"
+"[b]Note:[/b] Don't change a RigidBody3D's position every frame or very "
+"often. Sporadic changes work fine, but physics runs at a different "
+"granularity (fixed Hz) than usual rendering (process callback) and maybe "
+"even in a separate thread, so changing this from a process loop may result "
+"in strange behavior. If you need to directly affect the body's state, use "
+"[method _integrate_forces], which allows you to directly access the physics "
+"state.\n"
+"If you need to override the default physics behavior, you can write a custom "
+"force integration function. See [member custom_integrator]."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:22
+msgid ""
+"Called during physics processing, allowing you to read and safely modify the "
+"simulation state for the object. By default, it works in addition to the "
+"usual physics behavior, but the [member custom_integrator] property allows "
+"you to disable the default behavior and do fully custom force integration "
+"for a body."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:31
+msgid ""
+"Adds a constant directional force (i.e. acceleration) without affecting "
+"rotation.\n"
+"This is equivalent to [code]add_force(force, Vector3(0,0,0))[/code]."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:43
+msgid ""
+"Adds a constant directional force (i.e. acceleration).\n"
+"The position uses the rotation of the global coordinate system, but is "
+"centered at the object's origin."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:53
+msgid ""
+"Adds a constant rotational force (i.e. a motor) without affecting position."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:62
+msgid ""
+"Applies a directional impulse without affecting rotation.\n"
+"This is equivalent to [code]apply_impulse(Vector3(0,0,0), impulse)[/code]."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:74
+msgid ""
+"Applies a positioned impulse to the body. 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. The "
+"position uses the rotation of the global coordinate system, but is centered "
+"at the object's origin."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:83
+msgid ""
+"Applies a torque impulse which will be affected by the body mass and shape. "
+"This will rotate the body around the [code]impulse[/code] vector passed."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:92
+msgid ""
+"Returns [code]true[/code] if the specified linear or rotational axis is "
+"locked."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:107
+msgid ""
+"Returns the inverse inertia tensor basis. This is used to calculate the "
+"angular acceleration resulting from a torque applied to the [RigidBody3D]."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:118
+msgid "Locks the specified linear or rotational axis."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:133
+msgid "Damps RigidBody3D's rotational forces."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:136
+msgid "RigidBody3D's rotational velocity."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:160
+msgid ""
+"If [code]true[/code], the RigidBody3D will emit signals when it collides "
+"with another RigidBody3D. See also [member contacts_reported]."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:167
+msgid ""
+"If [code]true[/code], continuous collision detection is used.\n"
+"Continuous collision detection tries to predict where a moving body will "
+"collide, instead of moving it and correcting its movement if it collided. "
+"Continuous collision detection is more precise, and misses fewer impacts by "
+"small, fast-moving objects. Not using continuous collision detection is "
+"faster to compute, but can miss small, fast-moving objects."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:171
+msgid ""
+"If [code]true[/code], internal force integration will be disabled (like "
+"gravity or air friction) for this body. Other than collision response, the "
+"body will only move as determined by the [method _integrate_forces] "
+"function, if defined."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:174
+msgid ""
+"This is multiplied by the global 3D gravity setting found in [b]Project > "
+"Project Settings > Physics > 3d[/b] to produce RigidBody3D's gravity. For "
+"example, a value of 1 will be normal gravity, 2 will apply double gravity, "
+"and 0.5 will apply half gravity to this object."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:177
+msgid ""
+"The body's linear damp. Cannot be less than -1.0. If this value is different "
+"from -1.0, any linear damp derived from the world or areas will be "
+"overridden."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:180
+msgid ""
+"The body's linear velocity. Can be used sporadically, but [b]don't set this "
+"every frame[/b], because physics may run in another thread and runs at a "
+"different granularity. Use [method _integrate_forces] as your process loop "
+"for precise control of the body state."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:186
+msgid "The body mode. See [enum Mode] for possible values."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:211
+msgid ""
+"Emitted when a body shape exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:224
+msgid ""
+"Emitted when a body enters into contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
+"This signal not only receives the body that collided with this one, but also "
+"its [RID] ([code]body_id[/code]), the shape index from the colliding body "
+"([code]body_shape[/code]), and the shape index from this body "
+"([code]local_shape[/code]) the other body collided with."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:238
+msgid ""
+"Emitted when a body shape exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
+"This signal not only receives the body that stopped colliding with this one, "
+"but also its [RID] ([code]body_id[/code]), the shape index from the "
+"colliding body ([code]body_shape[/code]), and the shape index from this body "
+"([code]local_shape[/code]) the other body stopped colliding with."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:251
+msgid ""
+"Rigid body mode. This is the \"natural\" state of a rigid body. It is "
+"affected by forces, and can move, rotate, and be affected by user code."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:254
+msgid ""
+"Static mode. The body behaves like a [StaticBody3D], and can only move by "
+"user code."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:257
+msgid ""
+"Character body mode. This behaves like a rigid body, but can not rotate."
+msgstr ""
+
+#: doc/classes/RigidBody3D.xml:260
+msgid ""
+"Kinematic body mode. The body behaves like a [KinematicBody3D], and can only "
+"move by user code."
+msgstr ""
+
+#: doc/classes/SceneState.xml:4
+msgid "A script interface to a scene file's data."
+msgstr ""
+
+#: doc/classes/SceneState.xml:7
+msgid ""
+"Maintains a list of resources, nodes, exported, and overridden properties, "
+"and built-in scripts associated with a scene.\n"
+"This class cannot be instantiated directly, it is retrieved for a given "
+"scene as the result of [method PackedScene.get_state]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:19
+msgid ""
+"Returns the list of bound parameters for the signal at [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:26
+msgid ""
+"Returns the number of signal connections in the scene.\n"
+"The [code]idx[/code] argument used to query connection metadata in other "
+"[code]get_connection_*[/code] methods in the interval [code][0, "
+"get_connection_count() - 1][/code]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:36
+msgid ""
+"Returns the connection flags for the signal at [code]idx[/code]. See [enum "
+"Object.ConnectFlags] constants."
+msgstr ""
+
+#: doc/classes/SceneState.xml:45
+msgid "Returns the method connected to the signal at [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:54
+msgid "Returns the name of the signal at [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:63
+msgid ""
+"Returns the path to the node that owns the signal at [code]idx[/code], "
+"relative to the root node."
+msgstr ""
+
+#: doc/classes/SceneState.xml:72
+msgid ""
+"Returns the path to the node that owns the method connected to the signal at "
+"[code]idx[/code], relative to the root node."
+msgstr ""
+
+#: doc/classes/SceneState.xml:79
+msgid ""
+"Returns the number of nodes in the scene.\n"
+"The [code]idx[/code] argument used to query node data in other "
+"[code]get_node_*[/code] methods in the interval [code][0, get_node_count() - "
+"1][/code]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:89
+msgid ""
+"Returns the list of group names associated with the node at [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:98
+msgid ""
+"Returns the node's index, which is its position relative to its siblings. "
+"This is only relevant and saved in scenes for cases where new nodes are "
+"added to an instanced or inherited scene among siblings from the base scene. "
+"Despite the name, this index is not related to the [code]idx[/code] argument "
+"used here and in other methods."
+msgstr ""
+
+#: doc/classes/SceneState.xml:107
+msgid ""
+"Returns a [PackedScene] for the node at [code]idx[/code] (i.e. the whole "
+"branch starting at this node, with its child nodes and resources), or "
+"[code]null[/code] if the node is not an instance."
+msgstr ""
+
+#: doc/classes/SceneState.xml:116
+msgid ""
+"Returns the path to the represented scene file if the node at [code]idx[/"
+"code] is an [InstancePlaceholder]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:125
+msgid "Returns the name of the node at [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:134
+msgid ""
+"Returns the path to the owner of the node at [code]idx[/code], relative to "
+"the root node."
+msgstr ""
+
+#: doc/classes/SceneState.xml:145
+msgid ""
+"Returns the path to the node at [code]idx[/code].\n"
+"If [code]for_parent[/code] is [code]true[/code], returns the path of the "
+"[code]idx[/code] node's parent instead."
+msgstr ""
+
+#: doc/classes/SceneState.xml:155
+msgid ""
+"Returns the number of exported or overridden properties for the node at "
+"[code]idx[/code].\n"
+"The [code]prop_idx[/code] argument used to query node property data in other "
+"[code]get_node_property_*[/code] methods in the interval [code][0, "
+"get_node_property_count() - 1][/code]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:167
+msgid ""
+"Returns the name of the property at [code]prop_idx[/code] for the node at "
+"[code]idx[/code]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:178
+msgid ""
+"Returns the value of the property at [code]prop_idx[/code] for the node at "
+"[code]idx[/code]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:187
+msgid "Returns the type of the node at [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:196
+msgid ""
+"Returns [code]true[/code] if the node at [code]idx[/code] is an "
+"[InstancePlaceholder]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:202
+msgid ""
+"If passed to [method PackedScene.instance], blocks edits to the scene state."
+msgstr ""
+
+#: doc/classes/SceneState.xml:205
+msgid ""
+"If passed to [method PackedScene.instance], provides inherited scene "
+"resources to the local scene.\n"
+"[b]Note:[/b] Only available in editor builds."
+msgstr ""
+
+#: doc/classes/SceneState.xml:209
+msgid ""
+"If passed to [method PackedScene.instance], provides local scene resources "
+"to the local scene. Only the main scene should receive the main edit state.\n"
+"[b]Note:[/b] Only available in editor builds."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:4
+msgid "Manages the game loop via a hierarchy of nodes."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:7
+msgid ""
+"As one of the most important classes, the [SceneTree] manages the hierarchy "
+"of nodes in a scene as well as scenes themselves. Nodes can be added, "
+"retrieved and removed. The whole scene tree (and thus the current scene) can "
+"be paused. Scenes can be loaded, switched and reloaded.\n"
+"You can also use the [SceneTree] to organize your nodes into groups: every "
+"node can be assigned as many groups as you want to create, e.g. a \"enemy\" "
+"group. You can then iterate these groups or even call methods and set "
+"properties on all the group's members at once.\n"
+"[SceneTree] is the default [MainLoop] implementation used by scenes, and is "
+"thus in charge of the game loop."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:12
+msgid ""
+"https://docs.godotengine.org/en/latest/getting_started/step_by_step/"
+"scene_tree.html"
+msgstr ""
+
+#: doc/classes/SceneTree.xml:13
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/viewports/"
+"multiple_resolutions.html"
+msgstr ""
+
+#: doc/classes/SceneTree.xml:24
+msgid "Calls [code]method[/code] on each member of the given group."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:37
+msgid ""
+"Calls [code]method[/code] on each member of the given group, respecting the "
+"given [enum GroupCallFlags]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:46
+msgid ""
+"Changes the running scene to the one at the given [code]path[/code], after "
+"loading it into a [PackedScene] and creating a new instance.\n"
+"Returns [constant OK] on success, [constant ERR_CANT_OPEN] if the "
+"[code]path[/code] cannot be loaded into a [PackedScene], or [constant "
+"ERR_CANT_CREATE] if that scene cannot be instantiated."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:56
+msgid ""
+"Changes the running scene to a new instance of the given [PackedScene].\n"
+"Returns [constant OK] on success or [constant ERR_CANT_CREATE] if the scene "
+"cannot be instantiated."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:68
+msgid ""
+"Returns a [SceneTreeTimer] which will [signal SceneTreeTimer.timeout] after "
+"the given time in seconds elapsed in this [SceneTree]. If "
+"[code]pause_mode_process[/code] is set to [code]false[/code], pausing the "
+"[SceneTree] will also pause the timer.\n"
+"Commonly used to create a one-shot delay timer as in the following example:\n"
+"[codeblock]\n"
+"func some_function():\n"
+" print(\"start\")\n"
+" yield(get_tree().create_timer(1.0), \"timeout\")\n"
+" print(\"end\")\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/SceneTree.xml:82
+msgid ""
+"Returns the current frame number, i.e. the total frame count since the "
+"application started."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:89
+msgid ""
+"Returns the peer IDs of all connected peers of this [SceneTree]'s [member "
+"network_peer]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:96
+msgid "Returns the unique peer ID of this [SceneTree]'s [member network_peer]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:103
+msgid "Returns the number of nodes in this [SceneTree]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:112
+msgid "Returns a list of all nodes assigned to the given group."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:119
+msgid "Returns the sender's peer ID for the most recently received RPC call."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:128
+msgid "Returns [code]true[/code] if the given group exists."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:142
+msgid ""
+"Returns [code]true[/code] if this [SceneTree]'s [member network_peer] is in "
+"server mode (listening for connections)."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:153
+msgid "Sends the given notification to all members of the [code]group[/code]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:166
+msgid ""
+"Sends the given notification to all members of the [code]group[/code], "
+"respecting the given [enum GroupCallFlags]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:175
+msgid ""
+"Queues the given object for deletion, delaying the call to [method Object."
+"free] to after the current frame."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:184
+msgid ""
+"Quits the application. A process [code]exit_code[/code] can optionally be "
+"passed as an argument. If this argument is [code]0[/code] or greater, it "
+"will override the [member OS.exit_code] defined before quitting the "
+"application."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:191
+msgid ""
+"Reloads the currently active scene.\n"
+"Returns [constant OK] on success, [constant ERR_UNCONFIGURED] if no [member "
+"current_scene] was defined yet, [constant ERR_CANT_OPEN] if [member "
+"current_scene] cannot be loaded into a [PackedScene], or [constant "
+"ERR_CANT_CREATE] if the scene cannot be instantiated."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:201
+msgid ""
+"If [code]true[/code], the application automatically accepts quitting. "
+"Enabled by default.\n"
+"For mobile platforms, see [method set_quit_on_go_back]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:215
+msgid ""
+"Sets the given [code]property[/code] to [code]value[/code] on all members of "
+"the given group."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:230
+msgid ""
+"Sets the given [code]property[/code] to [code]value[/code] on all members of "
+"the given group, respecting the given [enum GroupCallFlags]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:239
+msgid ""
+"If [code]true[/code], the application quits automatically on going back (e."
+"g. on Android). Enabled by default.\n"
+"To handle 'Go Back' button when this option is disabled, use [constant "
+"DisplayServer.WINDOW_EVENT_GO_BACK_REQUEST]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:246
+msgid "The current scene."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:249
+msgid ""
+"If [code]true[/code], collision shapes will be visible when running the game "
+"from the editor for debugging purposes."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:252
+msgid ""
+"If [code]true[/code], navigation polygons will be visible when running the "
+"game from the editor for debugging purposes."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:255
+msgid "The root of the edited scene."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:258
+msgid "The default [MultiplayerAPI] instance for this [SceneTree]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:261
+msgid ""
+"If [code]true[/code] (default value), enables automatic polling of the "
+"[MultiplayerAPI] for this SceneTree during [signal idle_frame].\n"
+"If [code]false[/code], you need to manually call [method MultiplayerAPI."
+"poll] to process network packets and deliver RPCs/RSETs. This allows running "
+"RPCs/RSETs in a different loop (e.g. physics, thread, specific time step) "
+"and for manual [Mutex] protection when accessing the [MultiplayerAPI] from "
+"threads."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:265
+msgid ""
+"The peer object to handle the RPC system (effectively enabling networking "
+"when set). Depending on the peer itself, the [SceneTree] will become a "
+"network server (check with [method is_network_server]) and will set the root "
+"node's network mode to master, or it will become a regular peer with the "
+"root node set to puppet. All child nodes are set to inherit the network mode "
+"by default. Handling of networking-related events (connection, "
+"disconnection, new clients) is done by connecting to [SceneTree]'s signals."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:268
+msgid ""
+"If [code]true[/code], the [SceneTree] is paused. Doing so will have the "
+"following behavior:\n"
+"- 2D and 3D physics will be stopped.\n"
+"- [method Node._process], [method Node._physics_process] and [method Node."
+"_input] will not be called anymore in nodes."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:273
+msgid ""
+"If [code]true[/code], the [SceneTree]'s [member network_peer] refuses new "
+"incoming connections."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:276
+msgid "The [SceneTree]'s root [Window]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:282
+msgid ""
+"Emitted whenever this [SceneTree]'s [member network_peer] successfully "
+"connected to a server. Only emitted on clients."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:287
+msgid ""
+"Emitted whenever this [SceneTree]'s [member network_peer] fails to establish "
+"a connection to a server. Only emitted on clients."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:296
+msgid ""
+"Emitted when files are dragged from the OS file manager and dropped in the "
+"game window. The arguments are a list of file paths and the identifier of "
+"the screen where the drag originated."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:301
+msgid ""
+"Emitted immediately before [method Node._process] is called on every node in "
+"the [SceneTree]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:308
+msgid ""
+"Emitted whenever this [SceneTree]'s [member network_peer] connects with a "
+"new peer. ID is the peer ID of the new peer. Clients get notified when other "
+"clients connect to the same server. Upon connecting to a server, a client "
+"also receives this signal for the server (with ID being 1)."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:315
+msgid ""
+"Emitted whenever this [SceneTree]'s [member network_peer] disconnects from a "
+"peer. Clients get notified when other clients disconnect from the same "
+"server."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:322
+msgid "Emitted whenever a node is added to the [SceneTree]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:329
+msgid ""
+"Emitted when a node's configuration changed. Only emitted in [code]tool[/"
+"code] mode."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:336
+msgid "Emitted whenever a node is removed from the [SceneTree]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:343
+msgid "Emitted whenever a node is renamed."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:348
+msgid ""
+"Emitted immediately before [method Node._physics_process] is called on every "
+"node in the [SceneTree]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:353
+msgid ""
+"Emitted whenever this [SceneTree]'s [member network_peer] disconnected from "
+"server. Only emitted on clients."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:358
+msgid ""
+"Emitted whenever the [SceneTree] hierarchy changed (children being moved or "
+"renamed, etc.)."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:364
+msgid "Call a group with no flags (default)."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:367
+msgid "Call a group in reverse scene order."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:370
+msgid "Call a group immediately (calls are normally made on idle)."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:373
+msgid "Call a group only once even if the call is executed many times."
+msgstr ""
+
+#: doc/classes/SceneTreeTimer.xml:4
+msgid "One-shot timer."
+msgstr ""
+
+#: doc/classes/SceneTreeTimer.xml:7
+msgid ""
+"A one-shot timer managed by the scene tree, which emits [signal timeout] on "
+"completion. See also [method SceneTree.create_timer].\n"
+"As opposed to [Timer], it does not require the instantiation of a node. "
+"Commonly used to create a one-shot delay timer as in the following example:\n"
+"[codeblock]\n"
+"func some_function():\n"
+" print(\"Timer started.\")\n"
+" yield(get_tree().create_timer(1.0), \"timeout\")\n"
+" print(\"Timer ended.\")\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/SceneTreeTimer.xml:22
+msgid "The time remaining."
+msgstr ""
+
+#: doc/classes/SceneTreeTimer.xml:28 doc/classes/Timer.xml:63
+msgid "Emitted when the timer reaches 0."
+msgstr ""
+
+#: doc/classes/Script.xml:4
+msgid "A class stored as a resource."
+msgstr ""
+
+#: doc/classes/Script.xml:7
+msgid ""
+"A class stored as a resource. A script extends the functionality of all "
+"objects that instance it.\n"
+"The [code]new[/code] method of a script subclass creates a new instance. "
+"[method Object.set_script] extends an existing object, if that object's "
+"class matches one of the script's base classes."
+msgstr ""
+
+#: doc/classes/Script.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/getting_started/step_by_step/"
+"scripting.html"
+msgstr ""
+
+#: doc/classes/Script.xml:18
+msgid "Returns [code]true[/code] if the script can be instanced."
+msgstr ""
+
+#: doc/classes/Script.xml:25
+msgid "Returns the script directly inherited by this script."
+msgstr ""
+
+#: doc/classes/Script.xml:32
+msgid "Returns the script's base type."
+msgstr ""
+
+#: doc/classes/Script.xml:41
+msgid "Returns the default value of the specified property."
+msgstr ""
+
+#: doc/classes/Script.xml:48
+msgid "Returns a dictionary containing constant names and their values."
+msgstr ""
+
+#: doc/classes/Script.xml:55
+msgid "Returns the list of methods in this [Script]."
+msgstr ""
+
+#: doc/classes/Script.xml:62
+msgid "Returns the list of properties in this [Script]."
+msgstr ""
+
+#: doc/classes/Script.xml:69
+msgid "Returns the list of user signals defined in this [Script]."
+msgstr ""
+
+#: doc/classes/Script.xml:78
+msgid ""
+"Returns [code]true[/code] if the script, or a base class, defines a signal "
+"with the given name."
+msgstr ""
+
+#: doc/classes/Script.xml:85
+msgid "Returns [code]true[/code] if the script contains non-empty source code."
+msgstr ""
+
+#: doc/classes/Script.xml:94
+msgid ""
+"Returns [code]true[/code] if [code]base_object[/code] is an instance of this "
+"script."
+msgstr ""
+
+#: doc/classes/Script.xml:101
+msgid ""
+"Returns [code]true[/code] if the script is a tool script. A tool script can "
+"run in the editor."
+msgstr ""
+
+#: doc/classes/Script.xml:110
+msgid "Reloads the script's class implementation. Returns an error code."
+msgstr ""
+
+#: doc/classes/Script.xml:116
+msgid ""
+"The script source code or an empty string if source code is not available. "
+"When set, does not reload the class implementation automatically."
+msgstr ""
+
+#: doc/classes/ScriptCreateDialog.xml:4
+msgid "The Editor's popup dialog for creating new [Script] files."
+msgstr ""
+
+#: doc/classes/ScriptCreateDialog.xml:7
+msgid ""
+"The [ScriptCreateDialog] creates script files according to a given template "
+"for a given scripting language. The standard use is to configure its fields "
+"prior to calling one of the [method Window.popup] methods.\n"
+"[codeblock]\n"
+"func _ready():\n"
+" dialog.config(\"Node\", \"res://new_node.gd\") # For in-engine types\n"
+" dialog.config(\"\\\"res://base_node.gd\\\"\", \"res://derived_node.gd\") "
+"# For script types\n"
+" dialog.popup_centered()\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/ScriptCreateDialog.xml:30
+msgid "Prefills required fields to configure the ScriptCreateDialog for use."
+msgstr ""
+
+#: doc/classes/ScriptCreateDialog.xml:43
+msgid "Emitted when the user clicks the OK button."
+msgstr ""
+
+#: doc/classes/ScriptEditor.xml:4
+msgid "Godot editor's script editor."
+msgstr ""
+
+#: doc/classes/ScriptEditor.xml:7
+msgid ""
+"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
+"the singleton using [method EditorInterface.get_script_editor]."
+msgstr ""
+
+#: doc/classes/ScriptEditor.xml:46
+msgid "Returns a [Script] that is currently active in editor."
+msgstr ""
+
+#: doc/classes/ScriptEditor.xml:69
+msgid ""
+"Returns an array with all [Script] objects which are currently open in "
+"editor."
+msgstr ""
+
+#: doc/classes/ScriptEditor.xml:78
+msgid "Goes to the specified line in the current script."
+msgstr ""
+
+#: doc/classes/ScriptEditor.xml:113
+msgid ""
+"Emitted when user changed active script. Argument is a freshly activated "
+"[Script]."
+msgstr ""
+
+#: doc/classes/ScriptEditor.xml:120
+msgid ""
+"Emitted when editor is about to close the active script. Argument is a "
+"[Script] that is going to be closed."
+msgstr ""
+
+#: doc/classes/ScrollBar.xml:4
+msgid "Base class for scroll bars."
+msgstr ""
+
+#: doc/classes/ScrollBar.xml:7
+msgid ""
+"Scrollbars are a [Range]-based [Control], that display a draggable area (the "
+"size of the page). Horizontal ([HScrollBar]) and Vertical ([VScrollBar]) "
+"versions are available."
+msgstr ""
+
+#: doc/classes/ScrollBar.xml:15
+msgid ""
+"Overrides the step used when clicking increment and decrement buttons or "
+"when using arrow keys when the [ScrollBar] is focused."
+msgstr ""
+
+#: doc/classes/ScrollBar.xml:23
+msgid "Emitted when the scrollbar is being scrolled."
+msgstr ""
+
+#: doc/classes/ScrollContainer.xml:4
+msgid "A helper node for displaying scrollable elements such as lists."
+msgstr ""
+
+#: doc/classes/ScrollContainer.xml:7
+msgid ""
+"A ScrollContainer node meant to contain a [Control] child.\n"
+"ScrollContainers will automatically create a scrollbar child ([HScrollBar], "
+"[VScrollBar], or both) when needed and will only draw the Control within the "
+"ScrollContainer area. Scrollbars will automatically be drawn at the right "
+"(for vertical) or bottom (for horizontal) and will enable dragging to move "
+"the viewable Control (and its children) within the ScrollContainer. "
+"Scrollbars will also automatically resize the grabber based on the [member "
+"Control.rect_min_size] of the Control relative to the ScrollContainer.\n"
+"Works great with a [Panel] control. You can set [code]EXPAND[/code] on the "
+"children's size flags, so they will upscale to the ScrollContainer's size if "
+"it's larger (scroll is invisible for the chosen dimension)."
+msgstr ""
+
+#: doc/classes/ScrollContainer.xml:18
+msgid ""
+"Returns the horizontal scrollbar [HScrollBar] of this [ScrollContainer]."
+msgstr ""
+
+#: doc/classes/ScrollContainer.xml:25
+msgid "Returns the vertical scrollbar [VScrollBar] of this [ScrollContainer]."
+msgstr ""
+
+#: doc/classes/ScrollContainer.xml:31
+msgid ""
+"If [code]true[/code], the ScrollContainer will automatically scroll to "
+"focused children (including indirect children) to make sure they are fully "
+"visible."
+msgstr ""
+
+#: doc/classes/ScrollContainer.xml:37 doc/classes/TextEdit.xml:407
+msgid "The current horizontal scroll value."
+msgstr ""
+
+#: doc/classes/ScrollContainer.xml:40
+msgid "If [code]true[/code], enables horizontal scrolling."
+msgstr ""
+
+#: doc/classes/ScrollContainer.xml:43 doc/classes/TextEdit.xml:410
+msgid "The current vertical scroll value."
+msgstr ""
+
+#: doc/classes/ScrollContainer.xml:46
+msgid "If [code]true[/code], enables vertical scrolling."
+msgstr ""
+
+#: doc/classes/ScrollContainer.xml:52
+msgid "Emitted when scrolling stops."
+msgstr ""
+
+#: doc/classes/ScrollContainer.xml:57
+msgid "Emitted when scrolling is started."
+msgstr ""
+
+#: doc/classes/ScrollContainer.xml:65
+msgid "The background [StyleBox] of the [ScrollContainer]."
+msgstr ""
+
+#: doc/classes/SegmentShape2D.xml:4
+msgid "Segment shape for 2D collisions."
+msgstr ""
+
+#: doc/classes/SegmentShape2D.xml:7
+msgid ""
+"Segment shape for 2D collisions. Consists of two points, [code]a[/code] and "
+"[code]b[/code]."
+msgstr ""
+
+#: doc/classes/SegmentShape2D.xml:15
+msgid "The segment's first point position."
+msgstr ""
+
+#: doc/classes/SegmentShape2D.xml:18
+msgid "The segment's second point position."
+msgstr ""
+
+#: doc/classes/Semaphore.xml:4
+msgid "A synchronization semaphore."
+msgstr ""
+
+#: doc/classes/Semaphore.xml:7
+msgid ""
+"A synchronization semaphore which can be used to synchronize multiple "
+"[Thread]s. Initialized to zero on creation. Be careful to avoid deadlocks. "
+"For a binary version, see [Mutex]."
+msgstr ""
+
+#: doc/classes/Semaphore.xml:17
+msgid "Lowers the [Semaphore], allowing one more thread in."
+msgstr ""
+
+#: doc/classes/Semaphore.xml:24
+msgid ""
+"Like [method wait], but won't block, so if the value is zero, fails "
+"immediately and returns [constant ERR_BUSY]. If non-zero, it returns "
+"[constant OK] to report success."
+msgstr ""
+
+#: doc/classes/Semaphore.xml:31
+msgid "Waits for the [Semaphore], if its value is zero, blocks until non-zero."
+msgstr ""
+
+#: doc/classes/Separator.xml:4
+msgid "Base class for separators."
+msgstr ""
+
+#: doc/classes/Separator.xml:7
+msgid ""
+"Separator is a [Control] used for separating other controls. It's purely a "
+"visual decoration. Horizontal ([HSeparator]) and Vertical ([VSeparator]) "
+"versions are available."
+msgstr ""
+
+#: doc/classes/Shader.xml:4
+msgid "A custom shader program."
+msgstr ""
+
+#: doc/classes/Shader.xml:7
+msgid ""
+"This class allows you to define a custom shader program that can be used by "
+"a [ShaderMaterial]. Shaders allow you to write your own custom behavior for "
+"rendering objects or updating particle information. For a detailed "
+"explanation and usage, please see the tutorials linked below."
+msgstr ""
+
+#: doc/classes/Shader.xml:10 doc/classes/ShaderMaterial.xml:10
+msgid "https://docs.godotengine.org/en/latest/tutorials/shading/index.html"
+msgstr ""
+
+#: doc/classes/Shader.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/shading/your_first_shader/"
+"what_are_shaders.html"
+msgstr ""
+
+#: doc/classes/Shader.xml:20
+msgid ""
+"Returns the texture that is set as default for the specified parameter.\n"
+"[b]Note:[/b] [code]param[/code] must match the name of the uniform in the "
+"code exactly."
+msgstr ""
+
+#: doc/classes/Shader.xml:28
+msgid ""
+"Returns the shader mode for the shader, either [constant MODE_CANVAS_ITEM], "
+"[constant MODE_SPATIAL] or [constant MODE_PARTICLES]."
+msgstr ""
+
+#: doc/classes/Shader.xml:37
+msgid ""
+"Returns [code]true[/code] if the shader has this param defined as a uniform "
+"in its code.\n"
+"[b]Note:[/b] [code]param[/code] must match the name of the uniform in the "
+"code exactly."
+msgstr ""
+
+#: doc/classes/Shader.xml:49
+msgid ""
+"Sets the default texture to be used with a texture uniform. The default is "
+"used if a texture is not set in the [ShaderMaterial].\n"
+"[b]Note:[/b] [code]param[/code] must match the name of the uniform in the "
+"code exactly."
+msgstr ""
+
+#: doc/classes/Shader.xml:56
+msgid ""
+"Returns the shader's code as the user has written it, not the full generated "
+"code used internally."
+msgstr ""
+
+#: doc/classes/Shader.xml:61
+msgid "Mode used to draw all 3D objects."
+msgstr ""
+
+#: doc/classes/Shader.xml:64
+msgid "Mode used to draw all 2D objects."
+msgstr ""
+
+#: doc/classes/Shader.xml:67
+msgid ""
+"Mode used to calculate particle information on a per-particle basis. Not "
+"used for drawing."
+msgstr ""
+
+#: doc/classes/Shader.xml:70
+msgid ""
+"Mode used for drawing skies. Only works with shaders attached to [Sky] "
+"objects."
+msgstr ""
+
+#: doc/classes/ShaderMaterial.xml:4
+msgid "A material that uses a custom [Shader] program."
+msgstr ""
+
+#: doc/classes/ShaderMaterial.xml:7
+msgid ""
+"A material that uses a custom [Shader] program to render either items to "
+"screen or process particles. You can create multiple materials for the same "
+"shader but configure different values for the uniforms defined in the shader."
+msgstr ""
+
+#: doc/classes/ShaderMaterial.xml:19
+msgid ""
+"Returns the current value set for this material of a uniform in the shader."
+msgstr ""
+
+#: doc/classes/ShaderMaterial.xml:28
+msgid ""
+"Returns [code]true[/code] if the property identified by [code]name[/code] "
+"can be reverted to a default value."
+msgstr ""
+
+#: doc/classes/ShaderMaterial.xml:37
+msgid ""
+"Returns the default value of the material property with given [code]name[/"
+"code]."
+msgstr ""
+
+#: doc/classes/ShaderMaterial.xml:48
+msgid ""
+"Changes the value set for this material of a uniform in the shader. [b]Note:"
+"[/b] [code]param[/code] must match the name of the uniform in the code "
+"exactly."
+msgstr ""
+
+#: doc/classes/ShaderMaterial.xml:54
+msgid "The [Shader] program used to render this material."
+msgstr ""
+
+#: doc/classes/Shape2D.xml:4
+msgid "Base class for all 2D shapes."
+msgstr ""
+
+#: doc/classes/Shape2D.xml:7
+msgid "Base class for all 2D shapes. All 2D shape types inherit from this."
+msgstr ""
+
+#: doc/classes/Shape2D.xml:23
+msgid ""
+"Returns [code]true[/code] if this shape is colliding with another.\n"
+"This method needs the transformation matrix for this shape "
+"([code]local_xform[/code]), the shape to check collisions with "
+"([code]with_shape[/code]), and the transformation matrix of that shape "
+"([code]shape_xform[/code])."
+msgstr ""
+
+#: doc/classes/Shape2D.xml:37
+msgid ""
+"Returns a list of the points where this shape touches another. If there are "
+"no collisions the list is empty.\n"
+"This method needs the transformation matrix for this shape "
+"([code]local_xform[/code]), the shape to check collisions with "
+"([code]with_shape[/code]), and the transformation matrix of that shape "
+"([code]shape_xform[/code])."
+msgstr ""
+
+#: doc/classes/Shape2D.xml:55
+msgid ""
+"Returns whether this shape would collide with another, if a given movement "
+"was applied.\n"
+"This method needs the transformation matrix for this shape "
+"([code]local_xform[/code]), the movement to test on this shape "
+"([code]local_motion[/code]), the shape to check collisions with "
+"([code]with_shape[/code]), the transformation matrix of that shape "
+"([code]shape_xform[/code]), and the movement to test onto the other object "
+"([code]shape_motion[/code])."
+msgstr ""
+
+#: doc/classes/Shape2D.xml:73
+msgid ""
+"Returns a list of the points where this shape would touch another, if a "
+"given movement was applied. If there are no collisions the list is empty.\n"
+"This method needs the transformation matrix for this shape "
+"([code]local_xform[/code]), the movement to test on this shape "
+"([code]local_motion[/code]), the shape to check collisions with "
+"([code]with_shape[/code]), the transformation matrix of that shape "
+"([code]shape_xform[/code]), and the movement to test onto the other object "
+"([code]shape_motion[/code])."
+msgstr ""
+
+#: doc/classes/Shape2D.xml:85
+msgid ""
+"Draws a solid shape onto a [CanvasItem] with the [RenderingServer] API "
+"filled with the specified [code]color[/code]. The exact drawing method is "
+"specific for each shape and cannot be configured."
+msgstr ""
+
+#: doc/classes/Shape2D.xml:91
+msgid "The shape's custom solver bias."
+msgstr ""
+
+#: doc/classes/Shape3D.xml:4
+msgid "Base class for all 3D shape resources."
+msgstr ""
+
+#: doc/classes/Shape3D.xml:7
+msgid ""
+"Base class for all 3D shape resources. Nodes that inherit from this can be "
+"used as shapes for a [PhysicsBody3D] or [Area3D] objects."
+msgstr ""
+
+#: doc/classes/ShortCut.xml:4
+msgid "A shortcut for binding input."
+msgstr ""
+
+#: doc/classes/ShortCut.xml:7
+msgid ""
+"A shortcut for binding input.\n"
+"Shortcuts are commonly used for interacting with a [Control] element from a "
+"[InputEvent]."
+msgstr ""
+
+#: doc/classes/ShortCut.xml:17
+msgid "Returns the shortcut's [InputEvent] as a [String]."
+msgstr ""
+
+#: doc/classes/ShortCut.xml:26
+msgid ""
+"Returns [code]true[/code] if the shortcut's [InputEvent] equals [code]event[/"
+"code]."
+msgstr ""
+
+#: doc/classes/ShortCut.xml:33
+msgid "If [code]true[/code], this shortcut is valid."
+msgstr ""
+
+#: doc/classes/ShortCut.xml:39
+msgid ""
+"The shortcut's [InputEvent].\n"
+"Generally the [InputEvent] is a keyboard key, though it can be any "
+"[InputEvent]."
+msgstr ""
+
+#: doc/classes/Signal.xml:4
+msgid "Class representing a signal defined in an object."
+msgstr ""
+
+#: doc/classes/Signal.xml:19
+msgid ""
+"Creates a new signal named [code]signal_name[/code] in the given object."
+msgstr ""
+
+#: doc/classes/Signal.xml:32
+msgid ""
+"Connects this signal to the specified [Callable], optionally providing binds "
+"and connection flags."
+msgstr ""
+
+#: doc/classes/Signal.xml:41
+msgid "Disconnects this signal from the specified [Callable]."
+msgstr ""
+
+#: doc/classes/Signal.xml:48
+msgid "Emits this signal to all connected objects."
+msgstr ""
+
+#: doc/classes/Signal.xml:55
+msgid "Returns the list of [Callable]s connected to this signal."
+msgstr ""
+
+#: doc/classes/Signal.xml:62
+msgid "Returns the name of this signal."
+msgstr ""
+
+#: doc/classes/Signal.xml:69
+msgid "Returns the object emitting this signal."
+msgstr ""
+
+#: doc/classes/Signal.xml:76
+msgid ""
+"Returns the ID of the object emitting this signal (see [method Object."
+"get_instance_id])."
+msgstr ""
+
+#: doc/classes/Signal.xml:85
+msgid ""
+"Returns [code]true[/code] if the specified [Callable] is connected to this "
+"signal."
+msgstr ""
+
+#: doc/classes/Skeleton2D.xml:4
+msgid "Skeleton for 2D characters and animated objects."
+msgstr ""
+
+#: doc/classes/Skeleton2D.xml:7
+msgid ""
+"Skeleton2D parents a hierarchy of [Bone2D] objects. It is a requirement of "
+"[Bone2D]. Skeleton2D holds a reference to the rest pose of its children and "
+"acts as a single point of access to its bones."
+msgstr ""
+
+#: doc/classes/Skeleton2D.xml:10
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/animation/2d_skeletons.html"
+msgstr ""
+
+#: doc/classes/Skeleton2D.xml:19
+msgid ""
+"Returns a [Bone2D] from the node hierarchy parented by Skeleton2D. The "
+"object to return is identified by the parameter [code]idx[/code]. Bones are "
+"indexed by descending the node hierarchy from top to bottom, adding the "
+"children of each branch before moving to the next sibling."
+msgstr ""
+
+#: doc/classes/Skeleton2D.xml:26
+msgid ""
+"Returns the number of [Bone2D] nodes in the node hierarchy parented by "
+"Skeleton2D."
+msgstr ""
+
+#: doc/classes/Skeleton2D.xml:33
+msgid "Returns the [RID] of a Skeleton2D instance."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:4
+msgid "Skeleton for characters and animated objects."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:7
+msgid ""
+"Skeleton3D provides a hierarchical interface for managing bones, including "
+"pose, rest and animation (see [Animation]). It can also use ragdoll "
+"physics.\n"
+"The overall transform of a bone with respect to the skeleton is determined "
+"by the following hierarchical order: rest pose, custom pose and pose.\n"
+"Note that \"global pose\" below refers to the overall transform of the bone "
+"with respect to skeleton, so it not the actual global/world transform of the "
+"bone."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:20
+msgid ""
+"Adds a bone, with name [code]name[/code]. [method get_bone_count] will "
+"become the bone index."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:31 doc/classes/Skeleton3D.xml:141
+#: doc/classes/Skeleton3D.xml:289
+msgid "[i]Deprecated soon.[/i]"
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:40
+msgid ""
+"Takes the given bone pose/transform and converts it to a world transform, "
+"relative to the [Skeleton3D] node.\n"
+"This is useful for using the bone transform in calculations with transforms "
+"from [Node3D]-based nodes."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:48
+msgid "Clear all the bones in this skeleton."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:55
+msgid "Removes the global pose override on all bones in the skeleton."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:64
+msgid "Returns the bone index that matches [code]name[/code] as its name."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:71
+msgid "Returns the amount of bones in the skeleton."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:80
+msgid ""
+"Returns the custom pose of the specified bone. Custom pose is applied on top "
+"of the rest pose."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:89
+msgid ""
+"Returns the overall transform of the specified bone, with respect to the "
+"skeleton. Being relative to the skeleton frame, this is not the actual "
+"\"global\" transform of the bone."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:98
+msgid "Returns the name of the bone at index [code]index[/code]."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:107
+msgid ""
+"Returns the bone index which is the parent of the bone at [code]bone_idx[/"
+"code]. If -1, then bone has no parent.\n"
+"[b]Note:[/b] The parent bone returned will always be less than "
+"[code]bone_idx[/code]."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:117
+msgid ""
+"Returns the pose transform of the specified bone. Pose is applied on top of "
+"the custom pose, which is applied on top the rest pose."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:132
+msgid "Returns the rest transform for a bone [code]bone_idx[/code]."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:150
+msgid ""
+"Returns whether the bone rest for the bone at [code]bone_idx[/code] is "
+"disabled."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:157
+msgid "Returns all bones in the skeleton to their rest poses."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:166
+msgid ""
+"Adds a collision exception to the physical bone.\n"
+"Works just like the [RigidBody3D] node."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:176
+msgid ""
+"Removes a collision exception to the physical bone.\n"
+"Works just like the [RigidBody3D] node."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:186
+msgid ""
+"Tells the [PhysicalBone3D] nodes in the Skeleton to start simulating and "
+"reacting to the physics world.\n"
+"Optionally, a list of bone names can be passed-in, allowing only the passed-"
+"in bones to be simulated."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:194
+msgid "Tells the [PhysicalBone3D] nodes in the Skeleton to stop simulating."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:203
+msgid "Binds the given Skin to the Skeleton."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:214
+msgid ""
+"Sets the custom pose transform, [code]custom_pose[/code], for the bone at "
+"[code]bone_idx[/code]. This pose is an addition to the bone rest pose.\n"
+"[b]Note[/b]: The pose transform needs to be in bone space. Use [method "
+"world_transform_to_bone_transform] to convert a world transform, like one "
+"you can get from a [Node3D], to bone space."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:226
+msgid ""
+"Disables the rest pose for the bone at [code]bone_idx[/code] if [code]true[/"
+"code], enables the bone rest if [code]false[/code]."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:241
+msgid ""
+"Sets the global pose transform, [code]pose[/code], for the bone at "
+"[code]bone_idx[/code].\n"
+"[code]amount[/code] is the interpolation strength that will be used when "
+"applying the pose, and [code]persistent[/code] determines if the applied "
+"pose will remain.\n"
+"[b]Note[/b]: The pose transform needs to be in bone space. Use [method "
+"world_transform_to_bone_transform] to convert a world transform, like one "
+"you can get from a [Node3D], to bone space."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:254
+msgid ""
+"Sets the bone index [code]parent_idx[/code] as the parent of the bone at "
+"[code]bone_idx[/code]. If -1, then bone has no parent.\n"
+"[b]Note:[/b] [code]parent_idx[/code] must be less than [code]bone_idx[/code]."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:266
+msgid ""
+"Sets the pose transform for bone [code]bone_idx[/code].\n"
+"[b]Note[/b]: The pose transform needs to be in bone space. Use [method "
+"world_transform_to_bone_transform] to convert a world transform, like one "
+"you can get from a [Node3D], to bone space."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:278
+msgid "Sets the rest transform for bone [code]bone_idx[/code]."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:298
+msgid ""
+"Unparents the bone at [code]bone_idx[/code] and sets its rest position to "
+"that of it's parent prior to being reset."
+msgstr ""
+
+#: doc/classes/Skeleton3D.xml:307
+msgid ""
+"Takes the given world transform, relative to the [Skeleton3D], and converts "
+"it to a bone pose/transform.\n"
+"This is useful for using setting bone poses using transforms from [Node3D]-"
+"based nodes."
+msgstr ""
+
+#: doc/classes/Sky.xml:4
+msgid "Background that uses a [Material] to draw a sky."
+msgstr ""
+
+#: doc/classes/Sky.xml:7
+msgid ""
+"The [Sky] class uses a [Material] to draw the background and update the "
+"reflection/radiance cubemaps."
+msgstr ""
+
+#: doc/classes/Sky.xml:15
+msgid ""
+"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 [enum ProcessMode] for options."
+msgstr ""
+
+#: doc/classes/Sky.xml:18
+msgid ""
+"The [Sky]'s radiance map size. The higher the radiance map size, the more "
+"detailed the lighting from the [Sky] will be.\n"
+"See [enum RadianceSize] constants for values.\n"
+"[b]Note:[/b] Some hardware will have trouble with higher radiance sizes, "
+"especially [constant RADIANCE_SIZE_512] and above. Only use such high values "
+"on high-end hardware."
+msgstr ""
+
+#: doc/classes/Sky.xml:23
+msgid ""
+"[Material] used to draw the background. Can be [PanoramaSkyMaterial], "
+"[ProceduralSkyMaterial], [PhysicalSkyMaterial], or even a [ShaderMaterial] "
+"if you want to use your own custom shader."
+msgstr ""
+
+#: doc/classes/Sky.xml:28
+msgid "Radiance texture size is 32×32 pixels."
+msgstr ""
+
+#: doc/classes/Sky.xml:31
+msgid "Radiance texture size is 64×64 pixels."
+msgstr ""
+
+#: doc/classes/Sky.xml:34
+msgid "Radiance texture size is 128×128 pixels."
+msgstr ""
+
+#: doc/classes/Sky.xml:37
+msgid "Radiance texture size is 256×256 pixels."
+msgstr ""
+
+#: doc/classes/Sky.xml:40
+msgid "Radiance texture size is 512×512 pixels."
+msgstr ""
+
+#: doc/classes/Sky.xml:43
+msgid "Radiance texture size is 1024×1024 pixels."
+msgstr ""
+
+#: doc/classes/Sky.xml:46
+msgid "Radiance texture size is 2048×2048 pixels."
+msgstr ""
+
+#: doc/classes/Sky.xml:49
+msgid "Represents the size of the [enum RadianceSize] enum."
+msgstr ""
+
+#: doc/classes/Sky.xml:52
+msgid ""
+"Automatically selects the appropriate process mode based on your sky shader. "
+"If your shader uses [code]TIME[/code] or [code]POSITION[/code], this will "
+"use [constant PROCESS_MODE_REALTIME]. If your shader uses any of the "
+"[code]LIGHT_*[/code] variables or any custom uniforms, this uses [constant "
+"PROCESS_MODE_INCREMENTAL]. Otherwise, this defaults to [constant "
+"PROCESS_MODE_QUALITY]."
+msgstr ""
+
+#: doc/classes/Sky.xml:55
+msgid ""
+"Uses high quality importance sampling to process the radiance map. In "
+"general, this results in much higher quality than [constant "
+"PROCESS_MODE_REALTIME] but takes much longer to generate. This should not be "
+"used if you plan on changing the sky at runtime. If you are finding that the "
+"reflection is not blurry enough and is showing sparkles or fireflies, try "
+"increasing [member ProjectSettings.rendering/quality/reflections/"
+"ggx_samples]."
+msgstr ""
+
+#: doc/classes/Sky.xml:58
+msgid ""
+"Uses the same high quality importance sampling to process the radiance map "
+"as [constant PROCESS_MODE_QUALITY], but updates over several frames. The "
+"number of frames is determined by [member ProjectSettings.rendering/quality/"
+"reflections/roughness_layers]. Use this when you need highest quality "
+"radiance maps, but have a sky that updates slowly."
+msgstr ""
+
+#: doc/classes/Sky.xml:61
+msgid ""
+"Uses the fast filtering algorithm to process the radiance map. In general "
+"this results in lower quality, but substantially faster run times. If you "
+"need better quality, but still need to update the sky every frame, consider "
+"turning on [member ProjectSettings.rendering/quality/reflections/"
+"fast_filter_high_quality].\n"
+"[b]Note:[/b] The fast filtering algorithm is limited to 256x256 cubemaps, so "
+"[member radiance_size] must be set to [constant RADIANCE_SIZE_256]."
+msgstr ""
+
+#: doc/classes/Slider.xml:4 doc/classes/Slider.xml:7
+msgid "Base class for GUI sliders."
+msgstr ""
+
+#: doc/classes/Slider.xml:15
+msgid ""
+"If [code]true[/code], the slider can be interacted with. If [code]false[/"
+"code], the value can be changed only by code."
+msgstr ""
+
+#: doc/classes/Slider.xml:19
+msgid "If [code]true[/code], the value can be changed using the mouse wheel."
+msgstr ""
+
+#: doc/classes/Slider.xml:23
+msgid ""
+"Number of ticks displayed on the slider, including border ticks. Ticks are "
+"uniformly-distributed value markers."
+msgstr ""
+
+#: doc/classes/Slider.xml:26
+msgid ""
+"If [code]true[/code], the slider will display ticks for minimum and maximum "
+"values."
+msgstr ""
+
+#: doc/classes/SliderJoint3D.xml:4
+msgid "Piston kind of slider between two bodies in 3D."
+msgstr ""
+
+#: doc/classes/SliderJoint3D.xml:7
+msgid "Slides across the X axis of the pivot object."
+msgstr ""
+
+#: doc/classes/SliderJoint3D.xml:33
+msgid ""
+"The amount of damping of the rotation when the limit is surpassed.\n"
+"A lower damping value allows a rotation initiated by body A to travel to "
+"body B slower."
+msgstr ""
+
+#: doc/classes/SliderJoint3D.xml:40
+msgid ""
+"The amount of restitution of the rotation when the limit is surpassed.\n"
+"Does not affect damping."
+msgstr ""
+
+#: doc/classes/SliderJoint3D.xml:44
+msgid ""
+"A factor applied to the all rotation once the limit is surpassed.\n"
+"Makes all rotation slower when between 0 and 1."
+msgstr ""
+
+#: doc/classes/SliderJoint3D.xml:57 doc/classes/SliderJoint3D.xml:152
+msgid "A factor applied to the all rotation in the limits."
+msgstr ""
+
+#: doc/classes/SliderJoint3D.xml:66 doc/classes/SliderJoint3D.xml:161
+msgid ""
+"A factor applied to the all rotation across axes orthogonal to the slider."
+msgstr ""
+
+#: doc/classes/SliderJoint3D.xml:69
+msgid ""
+"The amount of damping that happens once the limit defined by [member "
+"linear_limit/lower_distance] and [member linear_limit/upper_distance] is "
+"surpassed."
+msgstr ""
+
+#: doc/classes/SliderJoint3D.xml:75
+msgid ""
+"The amount of restitution once the limits are surpassed. The lower, the more "
+"velocity-energy gets lost."
+msgstr ""
+
+#: doc/classes/SoftBody3D.xml:4
+msgid "A soft mesh physics body."
+msgstr ""
+
+#: doc/classes/SoftBody3D.xml:7
+msgid ""
+"A deformable physics body. Used to create elastic or deformable objects such "
+"as cloth, rubber, or other flexible materials."
+msgstr ""
+
+#: doc/classes/SoftBody3D.xml:10
+msgid "https://docs.godotengine.org/en/latest/tutorials/physics/soft_body.html"
+msgstr ""
+
+#: doc/classes/SoftBody3D.xml:83
+msgid ""
+"The physics layers this SoftBody3D is in.\n"
+"Collidable objects can exist in any of 32 different layers. These layers "
+"work like a tagging system, and are not visual. A collidable can use these "
+"layers to select with which objects it can collide, using the collision_mask "
+"property.\n"
+"A contact is detected if object A is in any of the layers that object B "
+"scans, or object B is in any layer scanned by object A."
+msgstr ""
+
+#: doc/classes/SoftBody3D.xml:88
+msgid "The physics layers this SoftBody3D scans for collisions."
+msgstr ""
+
+#: doc/classes/SoftBody3D.xml:97
+msgid ""
+"[NodePath] to a [CollisionObject3D] this SoftBody3D should avoid clipping."
+msgstr ""
+
+#: doc/classes/SoftBody3D.xml:104
+msgid "If [code]true[/code], the [SoftBody3D] will respond to [RayCast3D]s."
+msgstr ""
+
+#: doc/classes/SoftBody3D.xml:107
+msgid ""
+"Increasing this value will improve the resulting simulation, but can affect "
+"performance. Use with care."
+msgstr ""
+
+#: doc/classes/SoftBody3D.xml:110
+msgid "The SoftBody3D's mass."
+msgstr ""
+
+#: doc/classes/SphereMesh.xml:4 doc/classes/SphereMesh.xml:7
+msgid "Class representing a spherical [PrimitiveMesh]."
+msgstr ""
+
+#: doc/classes/SphereMesh.xml:15
+msgid "Full height of the sphere."
+msgstr ""
+
+#: doc/classes/SphereMesh.xml:18
+msgid ""
+"If [code]true[/code], a hemisphere is created rather than a full sphere.\n"
+"[b]Note:[/b] To get a regular hemisphere, the height and radius of the "
+"sphere must be equal."
+msgstr ""
+
+#: doc/classes/SphereMesh.xml:22
+msgid "Number of radial segments on the sphere."
+msgstr ""
+
+#: doc/classes/SphereMesh.xml:25
+msgid "Radius of sphere."
+msgstr ""
+
+#: doc/classes/SphereMesh.xml:28
+msgid "Number of segments along the height of the sphere."
+msgstr ""
+
+#: doc/classes/SphereShape3D.xml:4
+msgid "Sphere shape for 3D collisions."
+msgstr ""
+
+#: doc/classes/SphereShape3D.xml:7
+msgid ""
+"Sphere shape for 3D collisions, which can be set into a [PhysicsBody3D] or "
+"[Area3D]. This shape is useful for modeling sphere-like 3D objects."
+msgstr ""
+
+#: doc/classes/SphereShape3D.xml:15
+msgid "The sphere's radius. The shape's diameter is double the radius."
+msgstr ""
+
+#: doc/classes/SpinBox.xml:4
+msgid "Numerical input text field."
+msgstr ""
+
+#: doc/classes/SpinBox.xml:7
+msgid ""
+"SpinBox is a numerical input text field. It allows entering integers and "
+"floats.\n"
+"[b]Example:[/b]\n"
+"[codeblock]\n"
+"var spin_box = SpinBox.new()\n"
+"add_child(spin_box)\n"
+"var line_edit = spin_box.get_line_edit()\n"
+"line_edit.context_menu_enabled = false\n"
+"spin_box.align = LineEdit.ALIGN_RIGHT\n"
+"[/codeblock]\n"
+"The above code will create a [SpinBox], disable context menu on it and set "
+"the text alignment to right.\n"
+"See [Range] class for more options over the [SpinBox]."
+msgstr ""
+
+#: doc/classes/SpinBox.xml:26
+msgid "Applies the current value of this [SpinBox]."
+msgstr ""
+
+#: doc/classes/SpinBox.xml:33
+msgid ""
+"Returns the [LineEdit] instance from this [SpinBox]. You can use it to "
+"access properties and methods of [LineEdit]."
+msgstr ""
+
+#: doc/classes/SpinBox.xml:39
+msgid "Sets the text alignment of the [SpinBox]."
+msgstr ""
+
+#: doc/classes/SpinBox.xml:42
+msgid ""
+"If [code]true[/code], the [SpinBox] will be editable. Otherwise, it will be "
+"read only."
+msgstr ""
+
+#: doc/classes/SpinBox.xml:45
+msgid ""
+"Adds the specified [code]prefix[/code] string before the numerical value of "
+"the [SpinBox]."
+msgstr ""
+
+#: doc/classes/SpinBox.xml:48
+msgid ""
+"Adds the specified [code]suffix[/code] string after the numerical value of "
+"the [SpinBox]."
+msgstr ""
+
+#: doc/classes/SpinBox.xml:55
+msgid "Sets a custom [Texture2D] for up and down arrows of the [SpinBox]."
+msgstr ""
+
+#: doc/classes/SplitContainer.xml:4
+msgid "Container for splitting and adjusting."
+msgstr ""
+
+#: doc/classes/SplitContainer.xml:7
+msgid ""
+"Container for splitting two [Control]s vertically or horizontally, with a "
+"grabber that allows adjusting the split offset or ratio."
+msgstr ""
+
+#: doc/classes/SplitContainer.xml:16
+msgid ""
+"Clamps the [member split_offset] value to not go outside the currently "
+"possible minimal and maximum values."
+msgstr ""
+
+#: doc/classes/SplitContainer.xml:22
+msgid ""
+"If [code]true[/code], the area of the first [Control] will be collapsed and "
+"the dragger will be disabled."
+msgstr ""
+
+#: doc/classes/SplitContainer.xml:25
+msgid ""
+"Determines the dragger's visibility. See [enum DraggerVisibility] for "
+"details."
+msgstr ""
+
+#: doc/classes/SplitContainer.xml:28
+msgid ""
+"The initial offset of the splitting between the two [Control]s, with "
+"[code]0[/code] being at the end of the first [Control]."
+msgstr ""
+
+#: doc/classes/SplitContainer.xml:36
+msgid "Emitted when the dragger is dragged by user."
+msgstr ""
+
+#: doc/classes/SplitContainer.xml:42
+msgid "The split dragger is visible when the cursor hovers it."
+msgstr ""
+
+#: doc/classes/SplitContainer.xml:45
+msgid "The split dragger is never visible."
+msgstr ""
+
+#: doc/classes/SplitContainer.xml:48
+msgid "The split dragger is never visible and its space collapsed."
+msgstr ""
+
+#: doc/classes/SpotLight3D.xml:4
+msgid "A spotlight, such as a reflector spotlight or a lantern."
+msgstr ""
+
+#: doc/classes/SpotLight3D.xml:7
+msgid ""
+"A Spotlight is a type of [Light3D] 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 [Light3D]."
+msgstr ""
+
+#: doc/classes/SpotLight3D.xml:18
+msgid "The spotlight's angle in degrees."
+msgstr ""
+
+#: doc/classes/SpotLight3D.xml:21
+msgid "The spotlight's angular attenuation curve."
+msgstr ""
+
+#: doc/classes/SpotLight3D.xml:24
+msgid "The spotlight's light energy attenuation curve."
+msgstr ""
+
+#: doc/classes/SpotLight3D.xml:27
+msgid ""
+"The maximal range that can be reached by the spotlight. Note that the "
+"effectively lit area may appear to be smaller depending on the [member "
+"spot_attenuation] in use. No matter the [member spot_attenuation] in use, "
+"the light will never reach anything outside this range."
+msgstr ""
+
+#: doc/classes/SpringArm3D.xml:4
+msgid "A helper node, mostly used in 3rd person cameras."
+msgstr ""
+
+#: doc/classes/SpringArm3D.xml:7
+msgid ""
+"The SpringArm3D node is a node that casts a ray (or collision shape) along "
+"its z axis and moves all its direct children to the collision point, minus a "
+"margin.\n"
+"The most common use case for this is to make a 3rd person camera that reacts "
+"to collisions in the environment.\n"
+"The SpringArm3D will either cast a ray, or if a shape is given, it will cast "
+"the shape in the direction of its z axis.\n"
+"If you use the SpringArm3D as a camera controller for your player, you might "
+"need to exclude the player's collider from the SpringArm3D's collision check."
+msgstr ""
+
+#: doc/classes/SpringArm3D.xml:21
+msgid ""
+"Adds the [PhysicsBody3D] object with the given [RID] to the list of "
+"[PhysicsBody3D] objects excluded from the collision check."
+msgstr ""
+
+#: doc/classes/SpringArm3D.xml:28
+msgid ""
+"Clears the list of [PhysicsBody3D] objects excluded from the collision check."
+msgstr ""
+
+#: doc/classes/SpringArm3D.xml:35
+msgid "Returns the spring arm's current length."
+msgstr ""
+
+#: doc/classes/SpringArm3D.xml:44
+msgid ""
+"Removes the given [RID] from the list of [PhysicsBody3D] objects excluded "
+"from the collision check."
+msgstr ""
+
+#: doc/classes/SpringArm3D.xml:50
+msgid "The layers against which the collision check shall be done."
+msgstr ""
+
+#: doc/classes/SpringArm3D.xml:53
+msgid ""
+"When the collision check is made, a candidate length for the SpringArm3D is "
+"given.\n"
+"The margin is then subtracted to this length and the translation is applied "
+"to the child objects of the SpringArm3D.\n"
+"This margin is useful for when the SpringArm3D has a [Camera3D] as a child "
+"node: without the margin, the [Camera3D] would be placed on the exact point "
+"of collision, while with the margin the [Camera3D] would be placed close to "
+"the point of collision."
+msgstr ""
+
+#: doc/classes/SpringArm3D.xml:58
+msgid ""
+"The [Shape3D] to use for the SpringArm3D.\n"
+"When the shape is set, the SpringArm3D will cast the [Shape3D] on its z axis "
+"instead of performing a ray cast."
+msgstr ""
+
+#: doc/classes/SpringArm3D.xml:62
+msgid ""
+"The maximum extent of the SpringArm3D. This is used as a length for both the "
+"ray and the shape cast used internally to calculate the desired position of "
+"the SpringArm3D's child nodes.\n"
+"To know more about how to perform a shape cast or a ray cast, please consult "
+"the [PhysicsDirectSpaceState3D] documentation."
+msgstr ""
+
+#: doc/classes/Sprite2D.xml:4
+msgid "General-purpose sprite node."
+msgstr ""
+
+#: doc/classes/Sprite2D.xml:7
+msgid ""
+"A node that displays a 2D texture. The texture displayed can be a region "
+"from a larger atlas texture, or a frame from a sprite sheet animation."
+msgstr ""
+
+#: doc/classes/Sprite2D.xml:16
+msgid ""
+"Returns a [Rect2] representing the Sprite2D's boundary in local coordinates. "
+"Can be used to detect if the Sprite2D was clicked. Example:\n"
+"[codeblock]\n"
+"func _input(event):\n"
+" if event is InputEventMouseButton and event.pressed and event."
+"button_index == BUTTON_LEFT:\n"
+" if get_rect().has_point(to_local(event.position)):\n"
+" print(\"A click!\")\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Sprite2D.xml:31
+msgid ""
+"Returns [code]true[/code], if the pixel at the given position is opaque and "
+"[code]false[/code] in other case.\n"
+"[b]Note:[/b] It also returns [code]false[/code], if the sprite's texture is "
+"[code]null[/code] or if the given position is invalid."
+msgstr ""
+
+#: doc/classes/Sprite2D.xml:38
+msgid "If [code]true[/code], texture is centered."
+msgstr ""
+
+#: doc/classes/Sprite2D.xml:47 doc/classes/Sprite3D.xml:16
+msgid ""
+"Current frame to display from sprite sheet. [member vframes] or [member "
+"hframes] must be greater than 1."
+msgstr ""
+
+#: doc/classes/Sprite2D.xml:50 doc/classes/Sprite3D.xml:19
+msgid ""
+"Coordinates of the frame to display from sprite sheet. This is as an alias "
+"for the [member frame] property. [member vframes] or [member hframes] must "
+"be greater than 1."
+msgstr ""
+
+#: doc/classes/Sprite2D.xml:53 doc/classes/Sprite3D.xml:22
+msgid "The number of columns in the sprite sheet."
+msgstr ""
+
+#: doc/classes/Sprite2D.xml:56
+msgid ""
+"The normal map gives depth to the Sprite2D.\n"
+"[b]Note:[/b] Godot expects the normal map to use X+, Y-, and Z+ coordinates. "
+"See [url=http://wiki.polycount.com/wiki/"
+"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]this page[/url] for "
+"a comparison of normal map coordinates expected by popular engines."
+msgstr ""
+
+#: doc/classes/Sprite2D.xml:63
+msgid ""
+"If [code]true[/code], texture is cut from a larger atlas texture. See "
+"[member region_rect]."
+msgstr ""
+
+#: doc/classes/Sprite2D.xml:66
+msgid "If [code]true[/code], the outermost pixels get blurred out."
+msgstr ""
+
+#: doc/classes/Sprite2D.xml:69 doc/classes/Sprite3D.xml:28
+msgid ""
+"The region of the atlas texture to display. [member region_enabled] must be "
+"[code]true[/code]."
+msgstr ""
+
+#: doc/classes/Sprite2D.xml:72
+msgid "Strength of the specular light effect of this [Sprite2D]."
+msgstr ""
+
+#: doc/classes/Sprite2D.xml:78
+msgid "The specular map is used for more control on the shininess effect."
+msgstr ""
+
+#: doc/classes/Sprite2D.xml:81 doc/classes/Sprite3D.xml:31
+msgid "[Texture2D] object to draw."
+msgstr ""
+
+#: doc/classes/Sprite2D.xml:84 doc/classes/Sprite3D.xml:34
+msgid "The number of rows in the sprite sheet."
+msgstr ""
+
+#: doc/classes/Sprite2D.xml:90 doc/classes/Sprite3D.xml:40
+msgid "Emitted when the [member frame] changes."
+msgstr ""
+
+#: doc/classes/Sprite2D.xml:95
+msgid "Emitted when the [member texture] changes."
+msgstr ""
+
+#: doc/classes/Sprite3D.xml:4
+msgid "2D sprite node in a 3D world."
+msgstr ""
+
+#: doc/classes/Sprite3D.xml:7
+msgid ""
+"A node that displays a 2D texture in a 3D environment. The texture displayed "
+"can be a region from a larger atlas texture, or a frame from a sprite sheet "
+"animation.\n"
+"[b]Note:[/b] There are [url=https://github.com/godotengine/godot/"
+"issues/20855]known performance issues[/url] when using [Sprite3D]. Consider "
+"using a [MeshInstance3D] with a [QuadMesh] as the mesh instead. You can "
+"still have billboarding by enabling billboard properties in the QuadMesh's "
+"[StandardMaterial3D]."
+msgstr ""
+
+#: doc/classes/Sprite3D.xml:25
+msgid ""
+"If [code]true[/code], texture will be cut from a larger atlas texture. See "
+"[member region_rect]."
+msgstr ""
+
+#: doc/classes/SpriteBase3D.xml:4
+msgid "2D sprite node in 3D environment."
+msgstr ""
+
+#: doc/classes/SpriteBase3D.xml:7
+msgid "A node that displays 2D texture information in a 3D environment."
+msgstr ""
+
+#: doc/classes/SpriteBase3D.xml:31
+msgid "Returns the rectangle representing this sprite."
+msgstr ""
+
+#: doc/classes/SpriteBase3D.xml:42
+msgid "If [code]true[/code], the specified flag will be enabled."
+msgstr ""
+
+#: doc/classes/SpriteBase3D.xml:50
+msgid "The direction in which the front of the texture faces."
+msgstr ""
+
+#: doc/classes/SpriteBase3D.xml:58
+msgid ""
+"If [code]true[/code], texture can be seen from the back as well, if "
+"[code]false[/code], it is invisible when looking at it from behind."
+msgstr ""
+
+#: doc/classes/SpriteBase3D.xml:67
+msgid ""
+"A color value that gets multiplied on, could be used for mood-coloring or to "
+"simulate the color of light."
+msgstr ""
+
+#: doc/classes/SpriteBase3D.xml:73
+msgid ""
+"The objects visibility on a scale from [code]0[/code] fully invisible to "
+"[code]1[/code] fully visible."
+msgstr ""
+
+#: doc/classes/SpriteBase3D.xml:76
+msgid "The size of one pixel's width on the sprite to scale it in 3D."
+msgstr ""
+
+#: doc/classes/SpriteBase3D.xml:79
+msgid ""
+"If [code]true[/code], the [Light3D] in the [Environment] has effects on the "
+"sprite."
+msgstr ""
+
+#: doc/classes/SpriteBase3D.xml:82
+msgid ""
+"If [code]true[/code], the texture's transparency and the opacity are used to "
+"make those parts of the sprite invisible."
+msgstr ""
+
+#: doc/classes/SpriteBase3D.xml:87
+msgid ""
+"If set, the texture's transparency and the opacity are used to make those "
+"parts of the sprite invisible."
+msgstr ""
+
+#: doc/classes/SpriteBase3D.xml:90
+msgid "If set, lights in the environment affect the sprite."
+msgstr ""
+
+#: doc/classes/SpriteBase3D.xml:93
+msgid ""
+"If set, texture can be seen from the back as well, if not, it is invisible "
+"when looking at it from behind."
+msgstr ""
+
+#: doc/classes/SpriteBase3D.xml:96
+msgid "Represents the size of the [enum DrawFlags] enum."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:4
+msgid "Sprite frame library for AnimatedSprite2D."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:7
+msgid ""
+"Sprite frame library for [AnimatedSprite2D]. Contains frames and animation "
+"data for playback."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:18
+msgid "Adds a new animation to the library."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:31
+msgid "Adds a frame to the given animation."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:40
+msgid "Removes all frames from the given animation."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:47
+msgid "Removes all animations. A \"default\" animation will be created."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:56
+msgid "If [code]true[/code], the given animation will loop."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:63
+msgid ""
+"Returns an array containing the names associated to each animation. Values "
+"are placed in alphabetical order."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:72 doc/classes/SpriteFrames.xml:154
+msgid "The animation's speed in frames per second."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:83
+msgid "Returns the animation's selected frame."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:92
+msgid "Returns the number of frames in the animation."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:101
+msgid "If [code]true[/code], the named animation exists."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:110
+msgid "Removes the given animation."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:121
+msgid "Removes the animation's selected frame."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:132
+msgid "Changes the animation's name to [code]newname[/code]."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:143
+msgid "If [code]true[/code], the animation will loop."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:167
+msgid "Sets the texture of the given frame."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:173
+msgid "Compatibility property, always equals to an empty array."
+msgstr ""
+
+#: doc/classes/StaticBody2D.xml:4
+msgid "Static body for 2D physics."
+msgstr ""
+
+#: doc/classes/StaticBody2D.xml:7
+msgid ""
+"Static body for 2D physics. A StaticBody2D is a body that is not intended to "
+"move. It is ideal for implementing objects in the environment, such as walls "
+"or platforms.\n"
+"Additionally, a constant linear or angular velocity can be set for the "
+"static body, which will affect colliding bodies as if it were moving (for "
+"example, a conveyor belt)."
+msgstr ""
+
+#: doc/classes/StaticBody2D.xml:16
+msgid ""
+"The body's constant angular velocity. This does not rotate the body, but "
+"affects colliding bodies, as if it were rotating."
+msgstr ""
+
+#: doc/classes/StaticBody2D.xml:19
+msgid ""
+"The body's constant linear velocity. This does not move the body, but "
+"affects colliding bodies, as if it were moving."
+msgstr ""
+
+#: doc/classes/StaticBody3D.xml:4
+msgid "Static body for 3D physics."
+msgstr ""
+
+#: doc/classes/StaticBody3D.xml:7
+msgid ""
+"Static body for 3D physics. A static body is a simple body that is not "
+"intended to move. In contrast to [RigidBody3D], they don't consume any CPU "
+"resources as long as they don't move.\n"
+"Additionally, a constant linear or angular velocity can be set for the "
+"static body, so even if it doesn't move, it affects other bodies as if it "
+"was moving (this is useful for simulating conveyor belts or conveyor wheels)."
+msgstr ""
+
+#: doc/classes/StaticBody3D.xml:16
+msgid ""
+"The body's constant angular velocity. This does not rotate the body, but "
+"affects other bodies that touch it, as if it was in a state of rotation."
+msgstr ""
+
+#: doc/classes/StaticBody3D.xml:19
+msgid ""
+"The body's constant linear velocity. This does not move the body, but "
+"affects other bodies that touch it, as if it was in a state of movement."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:4
+msgid "Abstraction and base class for stream-based protocols."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:7
+msgid ""
+"StreamPeer is an abstraction and base class for stream-based protocols (such "
+"as TCP or UNIX sockets). It provides an API for sending and receiving data "
+"through streams as raw data or strings."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:16
+msgid "Gets a signed 16-bit value from the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:23
+msgid "Gets a signed 32-bit value from the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:30
+msgid "Gets a signed 64-bit value from the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:37
+msgid "Gets a signed byte from the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:44
+msgid "Returns the amount of bytes this [StreamPeer] has available."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:53
+msgid ""
+"Returns a chunk data with the received bytes. The amount of bytes to be "
+"received can be requested in the [code]bytes[/code] argument. If not enough "
+"bytes are available, the function will block until the desired amount is "
+"received. This function returns two values, an [enum @GlobalScope.Error] "
+"code and a data array."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:60
+msgid "Gets a double-precision float from the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:67
+msgid "Gets a single-precision float from the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:76
+msgid ""
+"Returns a chunk data with the received bytes. The amount 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 [enum @GlobalScope.Error] code, and a data "
+"array."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:85
+msgid ""
+"Gets a string with byte-length [code]bytes[/code] from the stream. If "
+"[code]bytes[/code] is negative (default) the length will be read from the "
+"stream using the reverse process of [method put_string]."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:92
+msgid "Gets an unsigned 16-bit value from the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:99
+msgid "Gets an unsigned 32-bit value from the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:106
+msgid "Gets an unsigned 64-bit value from the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:113
+msgid "Gets an unsigned byte from the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:122
+msgid ""
+"Gets an UTF-8 string with byte-length [code]bytes[/code] from the stream "
+"(this decodes the string sent as UTF-8). If [code]bytes[/code] is negative "
+"(default) the length will be read from the stream using the reverse process "
+"of [method put_utf8_string]."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:131
+msgid ""
+"Gets a Variant from the stream. If [code]allow_objects[/code] is [code]true[/"
+"code], decoding objects is allowed.\n"
+"[b]Warning:[/b] 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."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:141
+msgid "Puts a signed 16-bit value into the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:150
+msgid "Puts a signed 32-bit value into the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:159
+msgid "Puts a signed 64-bit value into the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:168
+msgid "Puts a signed byte into the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:177
+msgid ""
+"Sends a chunk of data through the connection, blocking if necessary until "
+"the data is done sending. This function returns an [enum @GlobalScope.Error] "
+"code."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:186
+msgid "Puts a double-precision float into the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:195
+msgid "Puts a single-precision float into the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:204
+msgid ""
+"Sends a chunk of data through the connection. If all the data could not be "
+"sent at once, only part of it will. This function returns two values, an "
+"[enum @GlobalScope.Error] code and an integer, describing how much data was "
+"actually sent."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:213
+msgid ""
+"Puts a zero-terminated ASCII string into the stream prepended by a 32-bit "
+"unsigned integer representing its size.\n"
+"Note: To put an ASCII string without prepending its size, you can use "
+"[method put_data]:\n"
+"[codeblock]\n"
+"put_data(\"Hello world\".to_ascii())\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:226
+msgid "Puts an unsigned 16-bit value into the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:235
+msgid "Puts an unsigned 32-bit value into the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:244
+msgid "Puts an unsigned 64-bit value into the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:253
+msgid "Puts an unsigned byte into the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:262
+msgid ""
+"Puts a zero-terminated UTF-8 string into the stream prepended by a 32 bits "
+"unsigned integer representing its size.\n"
+"Note: To put an UTF-8 string without prepending its size, you can use "
+"[method put_data]:\n"
+"[codeblock]\n"
+"put_data(\"Hello world\".to_utf8())\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:277
+msgid ""
+"Puts a Variant into the stream. If [code]full_objects[/code] is [code]true[/"
+"code] encoding objects is allowed (and can potentially include code)."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:283
+msgid ""
+"If [code]true[/code], this [StreamPeer] will using big-endian format for "
+"encoding and decoding."
+msgstr ""
+
+#: doc/classes/StreamPeerSSL.xml:4
+msgid "SSL stream peer."
+msgstr ""
+
+#: doc/classes/StreamPeerSSL.xml:7
+msgid ""
+"SSL stream peer. This object can be used to connect to an SSL server or "
+"accept a single SSL client connection."
+msgstr ""
+
+#: doc/classes/StreamPeerSSL.xml:25
+msgid ""
+"Accepts a peer connection as a server using the given [code]private_key[/"
+"code] and providing the given [code]certificate[/code] to the client. You "
+"can pass the optional [code]chain[/code] parameter to provide additional CA "
+"chain information along with the certificate."
+msgstr ""
+
+#: doc/classes/StreamPeerSSL.xml:40
+msgid ""
+"Connects to a peer using an underlying [StreamPeer] [code]stream[/code]. If "
+"[code]validate_certs[/code] is [code]true[/code], [StreamPeerSSL] will "
+"validate that the certificate presented by the peer matches the "
+"[code]for_hostname[/code].\n"
+"[b]Note:[/b] Specifying a custom [code]valid_certificate[/code] is not "
+"supported in HTML5 exports due to browsers restrictions."
+msgstr ""
+
+#: doc/classes/StreamPeerSSL.xml:48 doc/classes/StreamPeerTCP.xml:27
+msgid "Disconnects from host."
+msgstr ""
+
+#: doc/classes/StreamPeerSSL.xml:62
+msgid ""
+"Poll the connection to check for incoming bytes. Call this right before "
+"[method StreamPeer.get_available_bytes] for it to work properly."
+msgstr ""
+
+#: doc/classes/StreamPeerSSL.xml:72
+msgid "A status representing a [StreamPeerSSL] that is disconnected."
+msgstr ""
+
+#: doc/classes/StreamPeerSSL.xml:75
+msgid "A status representing a [StreamPeerSSL] during handshaking."
+msgstr ""
+
+#: doc/classes/StreamPeerSSL.xml:78
+msgid "A status representing a [StreamPeerSSL] that is connected to a host."
+msgstr ""
+
+#: doc/classes/StreamPeerSSL.xml:81
+msgid "A status representing a [StreamPeerSSL] in error state."
+msgstr ""
+
+#: doc/classes/StreamPeerSSL.xml:84
+msgid ""
+"An error status that shows a mismatch in the SSL certificate domain "
+"presented by the host and the domain requested for validation."
+msgstr ""
+
+#: doc/classes/StreamPeerTCP.xml:4
+msgid "TCP stream peer."
+msgstr ""
+
+#: doc/classes/StreamPeerTCP.xml:7
+msgid ""
+"TCP stream peer. This object can be used to connect to TCP servers, or also "
+"is returned by a TCP server."
+msgstr ""
+
+#: doc/classes/StreamPeerTCP.xml:20
+msgid ""
+"Connects to the specified [code]host:port[/code] pair. A hostname will be "
+"resolved if valid. Returns [constant OK] on success or [constant FAILED] on "
+"failure."
+msgstr ""
+
+#: doc/classes/StreamPeerTCP.xml:34
+msgid "Returns the IP of this peer."
+msgstr ""
+
+#: doc/classes/StreamPeerTCP.xml:41
+msgid "Returns the port of this peer."
+msgstr ""
+
+#: doc/classes/StreamPeerTCP.xml:48
+msgid "Returns the status of the connection, see [enum Status]."
+msgstr ""
+
+#: doc/classes/StreamPeerTCP.xml:55
+msgid ""
+"Returns [code]true[/code] if this peer is currently connected to a host, "
+"[code]false[/code] otherwise."
+msgstr ""
+
+#: doc/classes/StreamPeerTCP.xml:64
+msgid ""
+"Disables Nagle's algorithm to improve latency for small packets.\n"
+"[b]Note:[/b] For applications that send large packets or need to transfer a "
+"lot of data, this can decrease the total available bandwidth."
+msgstr ""
+
+#: doc/classes/StreamPeerTCP.xml:71
+msgid ""
+"The initial status of the [StreamPeerTCP]. This is also the status after "
+"disconnecting."
+msgstr ""
+
+#: doc/classes/StreamPeerTCP.xml:74
+msgid "A status representing a [StreamPeerTCP] that is connecting to a host."
+msgstr ""
+
+#: doc/classes/StreamPeerTCP.xml:77
+msgid "A status representing a [StreamPeerTCP] that is connected to a host."
+msgstr ""
+
+#: doc/classes/StreamPeerTCP.xml:80
+msgid "A status representing a [StreamPeerTCP] in error state."
+msgstr ""
+
+#: doc/classes/StreamTexture2D.xml:4
+msgid "A [code].stex[/code] texture."
+msgstr ""
+
+#: doc/classes/StreamTexture2D.xml:7
+msgid "A texture that is loaded from a [code].stex[/code] file."
+msgstr ""
+
+#: doc/classes/StreamTexture2D.xml:18
+msgid "Loads the texture from the given path."
+msgstr ""
+
+#: doc/classes/StreamTexture2D.xml:24
+msgid "The StreamTexture's file path to a [code].stex[/code] file."
+msgstr ""
+
+#: doc/classes/String.xml:4
+msgid "Built-in string class."
+msgstr ""
+
+#: doc/classes/String.xml:7
+msgid ""
+"This is the built-in string class (and the one used by GDScript). It "
+"supports Unicode and provides all necessary means for string handling. "
+"Strings are reference-counted and use a copy-on-write approach, so passing "
+"them around is cheap in resources."
+msgstr ""
+
+#: doc/classes/String.xml:10
+msgid ""
+"https://docs.godotengine.org/en/latest/getting_started/scripting/gdscript/"
+"gdscript_format_string.html"
+msgstr ""
+
+#: doc/classes/String.xml:19
+msgid "Constructs a new String from the given [bool]."
+msgstr ""
+
+#: doc/classes/String.xml:28
+msgid "Constructs a new String from the given [int]."
+msgstr ""
+
+#: doc/classes/String.xml:37
+msgid "Constructs a new String from the given [float]."
+msgstr ""
+
+#: doc/classes/String.xml:46
+msgid "Constructs a new String from the given [Vector2]."
+msgstr ""
+
+#: doc/classes/String.xml:55
+msgid "Constructs a new String from the given [Vector2i]."
+msgstr ""
+
+#: doc/classes/String.xml:64
+msgid "Constructs a new String from the given [Rect2]."
+msgstr ""
+
+#: doc/classes/String.xml:73
+msgid "Constructs a new String from the given [Rect2i]."
+msgstr ""
+
+#: doc/classes/String.xml:82
+msgid "Constructs a new String from the given [Vector3]."
+msgstr ""
+
+#: doc/classes/String.xml:91
+msgid "Constructs a new String from the given [Vector3i]."
+msgstr ""
+
+#: doc/classes/String.xml:100
+msgid "Constructs a new String from the given [Transform2D]."
+msgstr ""
+
+#: doc/classes/String.xml:109
+msgid "Constructs a new String from the given [Plane]."
+msgstr ""
+
+#: doc/classes/String.xml:118
+msgid "Constructs a new String from the given [Quat]."
+msgstr ""
+
+#: doc/classes/String.xml:127
+msgid "Constructs a new String from the given [AABB]."
+msgstr ""
+
+#: doc/classes/String.xml:136
+msgid "Constructs a new String from the given [Basis]."
+msgstr ""
+
+#: doc/classes/String.xml:145
+msgid "Constructs a new String from the given [Transform]."
+msgstr ""
+
+#: doc/classes/String.xml:154
+msgid "Constructs a new String from the given [Color]."
+msgstr ""
+
+#: doc/classes/String.xml:163
+msgid "Constructs a new String from the given [StringName]."
+msgstr ""
+
+#: doc/classes/String.xml:172
+msgid "Constructs a new String from the given [NodePath]."
+msgstr ""
+
+#: doc/classes/String.xml:181
+msgid "Constructs a new String from the given [RID]."
+msgstr ""
+
+#: doc/classes/String.xml:190
+msgid "Constructs a new String from the given [Callable]."
+msgstr ""
+
+#: doc/classes/String.xml:199
+msgid "Constructs a new String from the given [Signal]."
+msgstr ""
+
+#: doc/classes/String.xml:208
+msgid "Constructs a new String from the given [Dictionary]."
+msgstr ""
+
+#: doc/classes/String.xml:217
+msgid "Constructs a new String from the given [Array]."
+msgstr ""
+
+#: doc/classes/String.xml:226
+msgid "Constructs a new String from the given [PackedByteArray]."
+msgstr ""
+
+#: doc/classes/String.xml:235
+msgid "Constructs a new String from the given [PackedInt32Array]."
+msgstr ""
+
+#: doc/classes/String.xml:244
+msgid "Constructs a new String from the given [PackedInt64Array]."
+msgstr ""
+
+#: doc/classes/String.xml:253
+msgid "Constructs a new String from the given [PackedFloat32Array]."
+msgstr ""
+
+#: doc/classes/String.xml:262
+msgid "Constructs a new String from the given [PackedFloat64Array]."
+msgstr ""
+
+#: doc/classes/String.xml:271
+msgid "Constructs a new String from the given [PackedStringArray]."
+msgstr ""
+
+#: doc/classes/String.xml:280
+msgid "Constructs a new String from the given [PackedVector2Array]."
+msgstr ""
+
+#: doc/classes/String.xml:289
+msgid "Constructs a new String from the given [PackedVector3Array]."
+msgstr ""
+
+#: doc/classes/String.xml:298
+msgid "Constructs a new String from the given [PackedColorArray]."
+msgstr ""
+
+#: doc/classes/String.xml:307
+msgid "Returns [code]true[/code] if the string begins with the given string."
+msgstr ""
+
+#: doc/classes/String.xml:314
+msgid "Returns the bigrams (pairs of consecutive letters) of this string."
+msgstr ""
+
+#: doc/classes/String.xml:321
+msgid ""
+"Returns a copy of the string with special characters escaped using the C "
+"language standard."
+msgstr ""
+
+#: doc/classes/String.xml:328
+msgid ""
+"Returns a copy of the string with escaped characters replaced by their "
+"meanings. Supported escape sequences are [code]\\'[/code], [code]\\\"[/"
+"code], [code]\\?[/code], [code]\\\\[/code], [code]\\a[/code], [code]\\b[/"
+"code], [code]\\f[/code], [code]\\n[/code], [code]\\r[/code], [code]\\t[/"
+"code], [code]\\v[/code].\n"
+"[b]Note:[/b] Unlike the GDScript parser, this method doesn't support the "
+"[code]\\uXXXX[/code] escape sequence."
+msgstr ""
+
+#: doc/classes/String.xml:336
+msgid ""
+"Changes the case of some letters. Replaces underscores with spaces, adds "
+"spaces before in-word uppercase characters, converts all letters to "
+"lowercase, then capitalizes the first letter and every letter following a "
+"space character. For [code]capitalize camelCase mixed_with_underscores[/"
+"code], it will return [code]Capitalize Camel Case Mixed With Underscores[/"
+"code]."
+msgstr ""
+
+#: doc/classes/String.xml:345
+msgid ""
+"Performs a case-sensitive comparison to another string. Returns [code]-1[/"
+"code] if less than, [code]+1[/code] if greater than, or [code]0[/code] if "
+"equal."
+msgstr ""
+
+#: doc/classes/String.xml:358
+msgid ""
+"Returns the number of occurrences of substring [code]what[/code] between "
+"[code]from[/code] and [code]to[/code] positions. If [code]from[/code] and "
+"[code]to[/code] equals 0 the whole string will be used. If only [code]to[/"
+"code] equals 0 the remained substring will be used."
+msgstr ""
+
+#: doc/classes/String.xml:371
+msgid ""
+"Returns the number of occurrences of substring [code]what[/code] (ignoring "
+"case) between [code]from[/code] and [code]to[/code] positions. If "
+"[code]from[/code] and [code]to[/code] equals 0 the whole string will be "
+"used. If only [code]to[/code] equals 0 the remained substring will be used."
+msgstr ""
+
+#: doc/classes/String.xml:378
+msgid ""
+"Returns a copy of the string with indentation (leading tabs and spaces) "
+"removed."
+msgstr ""
+
+#: doc/classes/String.xml:385
+msgid ""
+"Returns [code]true[/code] if the length of the string equals [code]0[/code]."
+msgstr ""
+
+#: doc/classes/String.xml:394
+msgid "Returns [code]true[/code] if the string ends with the given string."
+msgstr ""
+
+#: doc/classes/String.xml:405
+msgid ""
+"Erases [code]chars[/code] characters from the string starting from "
+"[code]position[/code]."
+msgstr ""
+
+#: doc/classes/String.xml:416
+msgid ""
+"Returns the index of the [b]first[/b] case-sensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the end of the "
+"string.\n"
+"[b]Note:[/b] If you just want to know whether a string contains a substring, "
+"use the [code]in[/code] operator as follows:\n"
+"[codeblock]\n"
+"# Will evaluate to `false`.\n"
+"if \"i\" in \"team\":\n"
+" pass\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/String.xml:433
+msgid ""
+"Returns the index of the [b]first[/b] case-insensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the end of the string."
+msgstr ""
+
+#: doc/classes/String.xml:444
+msgid ""
+"Formats the string by replacing all occurrences of [code]placeholder[/code] "
+"with [code]values[/code]."
+msgstr ""
+
+#: doc/classes/String.xml:451
+msgid "If the string is a valid file path, returns the base directory name."
+msgstr ""
+
+#: doc/classes/String.xml:458
+msgid ""
+"If the string is a valid file path, returns the full file path without the "
+"extension."
+msgstr ""
+
+#: doc/classes/String.xml:465
+msgid "If the string is a valid file path, returns the extension."
+msgstr ""
+
+#: doc/classes/String.xml:472
+msgid "If the string is a valid file path, returns the filename."
+msgstr ""
+
+#: doc/classes/String.xml:479
+msgid "Hashes the string and returns a 32-bit integer."
+msgstr ""
+
+#: doc/classes/String.xml:486
+msgid ""
+"Converts a string containing a hexadecimal number into an integer. "
+"Hexadecimal strings are expected to be prefixed with \"[code]0x[/code]\" "
+"otherwise [code]0[/code] is returned.\n"
+"[codeblock]\n"
+"print(\"0xff\".hex_to_int()) # Print \"255\"\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/String.xml:496
+msgid ""
+"Escapes (encodes) a string to URL friendly format. Also referred to as 'URL "
+"encode'.\n"
+"[codeblock]\n"
+"print(\"https://example.org/?escaped=\" + \"Godot Engine:'docs'\"."
+"http_escape())\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/String.xml:506
+msgid ""
+"Unescapes (decodes) a string in URL encoded format. Also referred to as 'URL "
+"decode'.\n"
+"[codeblock]\n"
+"print(\"https://example.org/?escaped=\" + \"Godot%20Engine%3A%27docs%27\"."
+"http_unescape())\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/String.xml:518
+msgid ""
+"Converts [code]size[/code] represented as number of bytes to human-readable "
+"format using internationalized set of data size units, namely: B, KiB, MiB, "
+"GiB, TiB, PiB, EiB. Note that the next smallest unit is picked automatically "
+"to hold at most 1024 units.\n"
+"[codeblock]\n"
+"var bytes = 133790307\n"
+"var size = String.humanize_size(bytes)\n"
+"print(size) # prints \"127.5 MiB\"\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/String.xml:534
+msgid ""
+"Returns a copy of the string with the substring [code]what[/code] inserted "
+"at the given position."
+msgstr ""
+
+#: doc/classes/String.xml:541
+msgid ""
+"If the string is a path to a file or directory, returns [code]true[/code] if "
+"the path is absolute."
+msgstr ""
+
+#: doc/classes/String.xml:548
+msgid ""
+"If the string is a path to a file or directory, returns [code]true[/code] if "
+"the path is relative."
+msgstr ""
+
+#: doc/classes/String.xml:557
+msgid ""
+"Returns [code]true[/code] if this string is a subsequence of the given "
+"string."
+msgstr ""
+
+#: doc/classes/String.xml:566
+msgid ""
+"Returns [code]true[/code] if this string is a subsequence of the given "
+"string, without considering case."
+msgstr ""
+
+#: doc/classes/String.xml:573
+msgid ""
+"Returns [code]true[/code] if this string is free from characters that aren't "
+"allowed in file names, those being:\n"
+"[code]: / \\ ? * \" | % < >[/code]"
+msgstr ""
+
+#: doc/classes/String.xml:581
+msgid "Returns [code]true[/code] if this string contains a valid float."
+msgstr ""
+
+#: doc/classes/String.xml:590
+msgid ""
+"Returns [code]true[/code] if this string contains a valid hexadecimal "
+"number. If [code]with_prefix[/code] is [code]true[/code], then a validity of "
+"the hexadecimal number is determined by [code]0x[/code] prefix, for "
+"instance: [code]0xDEADC0DE[/code]."
+msgstr ""
+
+#: doc/classes/String.xml:597
+msgid ""
+"Returns [code]true[/code] if this string contains a valid color in "
+"hexadecimal HTML notation. Other HTML notations such as named colors or "
+"[code]hsl()[/code] colors aren't considered valid by this method and will "
+"return [code]false[/code]."
+msgstr ""
+
+#: doc/classes/String.xml:604
+msgid ""
+"Returns [code]true[/code] if this string is a valid identifier. A valid "
+"identifier may contain only letters, digits and underscores ([code]_[/code]) "
+"and the first character may not be a digit."
+msgstr ""
+
+#: doc/classes/String.xml:611
+msgid "Returns [code]true[/code] if this string contains a valid integer."
+msgstr ""
+
+#: doc/classes/String.xml:618
+msgid "Returns [code]true[/code] if this string contains a valid IP address."
+msgstr ""
+
+#: doc/classes/String.xml:627
+msgid ""
+"Return a [String] which is the concatenation of the [code]parts[/code]. The "
+"separator between elements is the string providing this method.\n"
+"Example:\n"
+"[codeblock]\n"
+"print(\", \".join([\"One\", \"Two\", \"Three\", \"Four\"]))\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/String.xml:638
+msgid ""
+"Returns a copy of the string with special characters escaped using the JSON "
+"standard."
+msgstr ""
+
+#: doc/classes/String.xml:647
+msgid "Returns a number of characters from the left of the string."
+msgstr ""
+
+#: doc/classes/String.xml:654
+msgid "Returns the string's amount of characters."
+msgstr ""
+
+#: doc/classes/String.xml:663
+msgid "Returns a copy of the string with characters removed from the left."
+msgstr ""
+
+#: doc/classes/String.xml:672
+msgid ""
+"Does a simple case-sensitive expression match, where [code]\"*\"[/code] "
+"matches zero or more arbitrary characters and [code]\"?\"[/code] matches any "
+"single character except a period ([code]\".\"[/code])."
+msgstr ""
+
+#: doc/classes/String.xml:681
+msgid ""
+"Does a simple case-insensitive expression match, where [code]\"*\"[/code] "
+"matches zero or more arbitrary characters and [code]\"?\"[/code] matches any "
+"single character except a period ([code]\".\"[/code])."
+msgstr ""
+
+#: doc/classes/String.xml:688
+msgid "Returns the MD5 hash of the string as an array of bytes."
+msgstr ""
+
+#: doc/classes/String.xml:695
+msgid "Returns the MD5 hash of the string as a string."
+msgstr ""
+
+#: doc/classes/String.xml:704
+msgid ""
+"Performs a case-insensitive comparison to another string. Returns [code]-1[/"
+"code] if less than, [code]+1[/code] if greater than, or [code]0[/code] if "
+"equal."
+msgstr ""
+
+#: doc/classes/String.xml:713
+msgid "Returns the character code at position [code]at[/code]."
+msgstr ""
+
+#: doc/classes/String.xml:722
+msgid ""
+"Formats a number to have an exact number of [code]digits[/code] after the "
+"decimal point."
+msgstr ""
+
+#: doc/classes/String.xml:731
+msgid ""
+"Formats a number to have an exact number of [code]digits[/code] before the "
+"decimal point."
+msgstr ""
+
+#: doc/classes/String.xml:738
+msgid "Decode a percent-encoded string. See [method percent_encode]."
+msgstr ""
+
+#: doc/classes/String.xml:745
+msgid ""
+"Percent-encodes a string. Encodes parameters in a URL when sending a HTTP "
+"GET request (and bodies of form-urlencoded POST requests)."
+msgstr ""
+
+#: doc/classes/String.xml:754
+msgid ""
+"If the string is a path, this concatenates [code]file[/code] at the end of "
+"the string as a subpath. E.g. [code]\"this/is\".plus_file(\"path\") == "
+"\"this/is/path\"[/code]."
+msgstr ""
+
+#: doc/classes/String.xml:763
+msgid ""
+"Returns original string repeated a number of times. The number of "
+"repetitions is given by the argument."
+msgstr ""
+
+#: doc/classes/String.xml:774
+msgid ""
+"Replaces occurrences of a case-sensitive substring with the given one inside "
+"the string."
+msgstr ""
+
+#: doc/classes/String.xml:785
+msgid ""
+"Replaces occurrences of a case-insensitive substring with the given one "
+"inside the string."
+msgstr ""
+
+#: doc/classes/String.xml:796
+msgid ""
+"Returns the index of the [b]last[/b] case-sensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the beginning of the "
+"string."
+msgstr ""
+
+#: doc/classes/String.xml:807
+msgid ""
+"Returns the index of the [b]last[/b] case-insensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the beginning of the "
+"string."
+msgstr ""
+
+#: doc/classes/String.xml:816
+msgid "Returns the right side of the string from a given position."
+msgstr ""
+
+#: doc/classes/String.xml:829
+msgid ""
+"Splits the string by a [code]delimiter[/code] string and returns an array of "
+"the substrings, starting from right.\n"
+"The splits in the returned array are sorted in the same order as the "
+"original string, from left to right.\n"
+"If [code]maxsplit[/code] is specified, it defines the number of splits to do "
+"from the right up to [code]maxsplit[/code]. The default value of 0 means "
+"that all items are split, thus giving the same result as [method split].\n"
+"Example:\n"
+"[codeblock]\n"
+"var some_string = \"One,Two,Three,Four\"\n"
+"var some_array = some_string.rsplit(\",\", true, 1)\n"
+"print(some_array.size()) # Prints 2\n"
+"print(some_array[0]) # Prints \"Four\"\n"
+"print(some_array[1]) # Prints \"Three,Two,One\"\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/String.xml:848
+msgid "Returns a copy of the string with characters removed from the right."
+msgstr ""
+
+#: doc/classes/String.xml:855
+msgid "Returns the SHA-1 hash of the string as an array of bytes."
+msgstr ""
+
+#: doc/classes/String.xml:862
+msgid "Returns the SHA-1 hash of the string as a string."
+msgstr ""
+
+#: doc/classes/String.xml:869
+msgid "Returns the SHA-256 hash of the string as an array of bytes."
+msgstr ""
+
+#: doc/classes/String.xml:876
+msgid "Returns the SHA-256 hash of the string as a string."
+msgstr ""
+
+#: doc/classes/String.xml:885
+msgid ""
+"Returns the similarity index of the text compared to this string. 1 means "
+"totally similar and 0 means totally dissimilar."
+msgstr ""
+
+#: doc/classes/String.xml:898
+msgid ""
+"Splits the string by a [code]delimiter[/code] string and returns an array of "
+"the substrings. The [code]delimiter[/code] can be of any length.\n"
+"If [code]maxsplit[/code] is specified, it defines the number of splits to do "
+"from the left up to [code]maxsplit[/code]. The default value of [code]0[/"
+"code] means that all items are split.\n"
+"Example:\n"
+"[codeblock]\n"
+"var some_string = \"One,Two,Three,Four\"\n"
+"var some_array = some_string.split(\",\", true, 1)\n"
+"print(some_array.size()) # Prints 2\n"
+"print(some_array[0]) # Prints \"One\"\n"
+"print(some_array[1]) # Prints \"Two,Three,Four\"\n"
+"[/codeblock]\n"
+"If you need to split strings with more complex rules, use the [RegEx] class "
+"instead."
+msgstr ""
+
+#: doc/classes/String.xml:919
+msgid ""
+"Splits the string in floats by using a delimiter string and returns an array "
+"of the substrings.\n"
+"For example, [code]\"1,2.5,3\"[/code] will return [code][1,2.5,3][/code] if "
+"split by [code]\",\"[/code]."
+msgstr ""
+
+#: doc/classes/String.xml:931
+msgid ""
+"Returns a copy of the string stripped of any non-printable character "
+"(including tabulations, spaces and line breaks) at the beginning and the "
+"end. The optional arguments are used to toggle stripping on the left and "
+"right edges respectively."
+msgstr ""
+
+#: doc/classes/String.xml:938
+msgid ""
+"Returns a copy of the string stripped of any escape character. These include "
+"all non-printable control characters of the first page of the ASCII table (< "
+"32), such as tabulation ([code]\\t[/code] in C) and newline ([code]\\n[/"
+"code] and [code]\\r[/code]) characters, but not spaces."
+msgstr ""
+
+#: doc/classes/String.xml:949
+msgid ""
+"Returns part of the string from the position [code]from[/code] with length "
+"[code]len[/code]. Argument [code]len[/code] is optional and using [code]-1[/"
+"code] will return remaining characters from given position."
+msgstr ""
+
+#: doc/classes/String.xml:956
+msgid ""
+"Converts the String (which is a character array) to [PackedByteArray] (which "
+"is an array of bytes). The conversion is faster compared to [method "
+"to_utf8], as this method assumes that all the characters in the String are "
+"ASCII characters."
+msgstr ""
+
+#: doc/classes/String.xml:963
+msgid ""
+"Converts a string containing a decimal number into a [code]float[/code]."
+msgstr ""
+
+#: doc/classes/String.xml:970
+msgid ""
+"Converts a string containing an integer number into an [code]int[/code]."
+msgstr ""
+
+#: doc/classes/String.xml:977
+msgid "Returns the string converted to lowercase."
+msgstr ""
+
+#: doc/classes/String.xml:984
+msgid "Returns the string converted to uppercase."
+msgstr ""
+
+#: doc/classes/String.xml:991
+msgid ""
+"Converts the String (which is an array of characters) to [PackedByteArray] "
+"(which is an array of bytes). The conversion is a bit slower than [method "
+"to_ascii], but supports all UTF-8 characters. Therefore, you should prefer "
+"this function over [method to_ascii]."
+msgstr ""
+
+#: doc/classes/String.xml:1000
+msgid ""
+"Removes a given string from the start if it starts with it or leaves the "
+"string unchanged."
+msgstr ""
+
+#: doc/classes/String.xml:1009
+msgid ""
+"Removes a given string from the end if it ends with it or leaves the string "
+"unchanged."
+msgstr ""
+
+#: doc/classes/String.xml:1016
+msgid ""
+"Returns a copy of the string with special characters escaped using the XML "
+"standard."
+msgstr ""
+
+#: doc/classes/String.xml:1023
+msgid ""
+"Returns a copy of the string with escaped characters replaced by their "
+"meanings according to the XML standard."
+msgstr ""
+
+#: doc/classes/StringName.xml:4
+msgid "An optimized string type for unique names."
+msgstr ""
+
+#: doc/classes/StringName.xml:7
+msgid ""
+"[StringName]s are immutable strings designed for general-purpose "
+"represention of unique names. [StringName] ensures that only one instance of "
+"a given name exists (so two [StringName]s with the same value are the same "
+"object). Comparing them is much faster than with regular [String]s, because "
+"only the pointers are compared, not the whole strings."
+msgstr ""
+
+#: doc/classes/StringName.xml:18
+msgid "Creates a new [StringName] from the given [String]."
+msgstr ""
+
+#: doc/classes/StyleBox.xml:4
+msgid "Base class for drawing stylized boxes for the UI."
+msgstr ""
+
+#: doc/classes/StyleBox.xml:7
+msgid ""
+"StyleBox is [Resource] that provides an abstract base class for drawing "
+"stylized boxes for the UI. StyleBoxes are used for drawing the styles of "
+"buttons, line edit backgrounds, tree backgrounds, etc. and also for testing "
+"a transparency mask for pointer signals. If mask test fails on a StyleBox "
+"assigned as mask to a control, clicks and motion signals will go through it "
+"to the one below."
+msgstr ""
+
+#: doc/classes/StyleBox.xml:20
+msgid ""
+"Draws this stylebox using a [CanvasItem] with given [RID].\n"
+"You can get a [RID] value using [method Object.get_instance_id] on a "
+"[CanvasItem]-derived node."
+msgstr ""
+
+#: doc/classes/StyleBox.xml:28
+msgid "Returns the size of this [StyleBox] without the margins."
+msgstr ""
+
+#: doc/classes/StyleBox.xml:35
+msgid ""
+"Returns the [CanvasItem] that handles its [constant CanvasItem."
+"NOTIFICATION_DRAW] or [method CanvasItem._draw] callback at this moment."
+msgstr ""
+
+#: doc/classes/StyleBox.xml:44
+msgid "Returns the default value of the specified [enum Margin]."
+msgstr ""
+
+#: doc/classes/StyleBox.xml:53
+msgid ""
+"Returns the content margin offset for the specified [enum Margin].\n"
+"Positive values reduce size inwards, unlike [Control]'s margin values."
+msgstr ""
+
+#: doc/classes/StyleBox.xml:61
+msgid "Returns the minimum size that this stylebox can be shrunk to."
+msgstr ""
+
+#: doc/classes/StyleBox.xml:68
+msgid ""
+"Returns the \"offset\" of a stylebox. This helper function returns a value "
+"equivalent to [code]Vector2(style.get_margin(MARGIN_LEFT), style."
+"get_margin(MARGIN_TOP))[/code]."
+msgstr ""
+
+#: doc/classes/StyleBox.xml:79
+msgid ""
+"Sets the default value of the specified [enum Margin] to given [code]offset[/"
+"code] in pixels."
+msgstr ""
+
+#: doc/classes/StyleBox.xml:90
+msgid "Test a position in a rectangle, return whether it passes the mask test."
+msgstr ""
+
+#: doc/classes/StyleBox.xml:96
+msgid ""
+"The bottom margin for the contents of this style box. Increasing this value "
+"reduces the space available to the contents from the bottom.\n"
+"If this value is negative, it is ignored and a child-specific margin is used "
+"instead. For example for [StyleBoxFlat] the border thickness (if any) is "
+"used instead.\n"
+"It is up to the code using this style box to decide what these contents are: "
+"for example, a [Button] respects this content margin for the textual "
+"contents of the button.\n"
+"[method get_margin] should be used to fetch this value as consumer instead "
+"of reading these properties directly. This is because it correctly respects "
+"negative values and the fallback mentioned above."
+msgstr ""
+
+#: doc/classes/StyleBox.xml:102
+msgid ""
+"The left margin for the contents of this style box.Increasing this value "
+"reduces the space available to the contents from the left.\n"
+"Refer to [member content_margin_bottom] for extra considerations."
+msgstr ""
+
+#: doc/classes/StyleBox.xml:106
+msgid ""
+"The right margin for the contents of this style box. Increasing this value "
+"reduces the space available to the contents from the right.\n"
+"Refer to [member content_margin_bottom] for extra considerations."
+msgstr ""
+
+#: doc/classes/StyleBox.xml:110
+msgid ""
+"The top margin for the contents of this style box. Increasing this value "
+"reduces the space available to the contents from the top.\n"
+"Refer to [member content_margin_bottom] for extra considerations."
+msgstr ""
+
+#: doc/classes/StyleBoxEmpty.xml:4
+msgid "Empty stylebox (does not display anything)."
+msgstr ""
+
+#: doc/classes/StyleBoxEmpty.xml:7
+msgid "Empty stylebox (really does not display anything)."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:4
+msgid ""
+"Customizable [StyleBox] with a given set of parameters (no texture required)."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:7
+msgid ""
+"This [StyleBox] can be used to achieve all kinds of looks without the need "
+"of a texture. Those properties are customizable:\n"
+"- Color\n"
+"- Border width (individual width for each border)\n"
+"- Rounded corners (individual radius for each corner)\n"
+"- Shadow (with blur and offset)\n"
+"Setting corner radius to high values is allowed. As soon as corners would "
+"overlap, the stylebox will switch to a relative system. Example:\n"
+"[codeblock]\n"
+"height = 30\n"
+"corner_radius_top_left = 50\n"
+"corner_radius_bottom_left = 100\n"
+"[/codeblock]\n"
+"The relative system now would take the 1:2 ratio of the two left corners to "
+"calculate the actual corner width. Both corners added will [b]never[/b] be "
+"more than the height. Result:\n"
+"[codeblock]\n"
+"corner_radius_top_left: 10\n"
+"corner_radius_bottom_left: 20\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:33
+msgid ""
+"Returns the given [code]margin[/code]'s border width. See [enum Margin] for "
+"possible values."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:40
+msgid "Returns the smallest border width out of all four borders."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:49
+msgid ""
+"Returns the given [code]corner[/code]'s radius. See [enum Corner] for "
+"possible values."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:58 doc/classes/StyleBoxTexture.xml:18
+msgid ""
+"Returns the size of the given [code]margin[/code]'s expand margin. See [enum "
+"Margin] for possible values."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:69
+msgid ""
+"Sets the border width to [code]width[/code] pixels for the given "
+"[code]margin[/code]. See [enum Margin] for possible values."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:78
+msgid "Sets the border width to [code]width[/code] pixels for all margins."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:89
+msgid ""
+"Sets the corner radius to [code]radius[/code] pixels for the given "
+"[code]corner[/code]. See [enum Corner] for possible values."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:98
+msgid "Sets the corner radius to [code]radius[/code] pixels for all corners."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:113
+msgid ""
+"Sets the corner radius for each corner to [code]radius_top_left[/code], "
+"[code]radius_top_right[/code], [code]radius_bottom_right[/code], and "
+"[code]radius_bottom_left[/code] pixels."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:124 doc/classes/StyleBoxTexture.xml:62
+msgid ""
+"Sets the expand margin to [code]size[/code] pixels for the given "
+"[code]margin[/code]. See [enum Margin] for possible values."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:133 doc/classes/StyleBoxTexture.xml:36
+msgid "Sets the expand margin to [code]size[/code] pixels for all margins."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:148 doc/classes/StyleBoxTexture.xml:51
+msgid ""
+"Sets the expand margin for each margin to [code]size_left[/code], "
+"[code]size_top[/code], [code]size_right[/code], and [code]size_bottom[/code] "
+"pixels."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:154
+msgid ""
+"Antialiasing draws a small ring around the edges, which fades to "
+"transparency. As a result, edges look much smoother. This is only noticeable "
+"when using rounded corners."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:157
+msgid ""
+"This changes the size of the faded ring. Higher values can be used to "
+"achieve a \"blurry\" effect."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:160
+msgid "The background color of the stylebox."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:163
+msgid "If [code]true[/code], the border will fade into the background color."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:166
+msgid "Sets the color of the border."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:169
+msgid "Border width for the bottom border."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:172
+msgid "Border width for the left border."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:175
+msgid "Border width for the right border."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:178
+msgid "Border width for the top border."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:181
+msgid ""
+"This sets the amount of vertices used for each corner. Higher values result "
+"in rounder corners but take more processing power to compute. When choosing "
+"a value, you should take the corner radius ([method set_corner_radius_all]) "
+"into account.\n"
+"For corner radii smaller than 10, [code]4[/code] or [code]5[/code] should be "
+"enough. For corner radii smaller than 30, values between [code]8[/code] and "
+"[code]12[/code] should be enough.\n"
+"A corner detail of [code]1[/code] will result in chamfered corners instead "
+"of rounded corners, which is useful for some artistic effects."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:186
+msgid ""
+"The bottom-left corner's radius. If [code]0[/code], the corner is not "
+"rounded."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:189
+msgid ""
+"The bottom-right corner's radius. If [code]0[/code], the corner is not "
+"rounded."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:192
+msgid ""
+"The top-left corner's radius. If [code]0[/code], the corner is not rounded."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:195
+msgid ""
+"The top-right corner's radius. If [code]0[/code], the corner is not rounded."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:198
+msgid "Toggles drawing of the inner part of the stylebox."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:201
+msgid ""
+"Expands the stylebox outside of the control rect on the bottom edge. Useful "
+"in combination with [member border_width_bottom] to draw a border outside "
+"the control rect."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:204
+msgid ""
+"Expands the stylebox outside of the control rect on the left edge. Useful in "
+"combination with [member border_width_left] to draw a border outside the "
+"control rect."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:207
+msgid ""
+"Expands the stylebox outside of the control rect on the right edge. Useful "
+"in combination with [member border_width_right] to draw a border outside the "
+"control rect."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:210
+msgid ""
+"Expands the stylebox outside of the control rect on the top edge. Useful in "
+"combination with [member border_width_top] to draw a border outside the "
+"control rect."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:213
+msgid ""
+"The color of the shadow. This has no effect if [member shadow_size] is lower "
+"than 1."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:216
+msgid ""
+"The shadow offset in pixels. Adjusts the position of the shadow relatively "
+"to the stylebox."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:219
+msgid "The shadow size in pixels."
+msgstr ""
+
+#: doc/classes/StyleBoxLine.xml:4
+msgid "[StyleBox] that displays a single line."
+msgstr ""
+
+#: doc/classes/StyleBoxLine.xml:7
+msgid ""
+"[StyleBox] that displays a single line of a given color and thickness. It "
+"can be used to draw things like separators."
+msgstr ""
+
+#: doc/classes/StyleBoxLine.xml:15
+msgid "The line's color."
+msgstr ""
+
+#: doc/classes/StyleBoxLine.xml:18
+msgid ""
+"The number of pixels the line will extend before the [StyleBoxLine]'s "
+"bounds. If set to a negative value, the line will begin inside the "
+"[StyleBoxLine]'s bounds."
+msgstr ""
+
+#: doc/classes/StyleBoxLine.xml:21
+msgid ""
+"The number of pixels the line will extend past the [StyleBoxLine]'s bounds. "
+"If set to a negative value, the line will end inside the [StyleBoxLine]'s "
+"bounds."
+msgstr ""
+
+#: doc/classes/StyleBoxLine.xml:24
+msgid "The line's thickness in pixels."
+msgstr ""
+
+#: doc/classes/StyleBoxLine.xml:27
+msgid ""
+"If [code]true[/code], the line will be vertical. If [code]false[/code], the "
+"line will be horizontal."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:4
+msgid "Texture-based nine-patch [StyleBox]."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:7
+msgid ""
+"Texture-based nine-patch [StyleBox], in a way similar to [NinePatchRect]. "
+"This stylebox performs a 3×3 scaling of a texture, where only the center "
+"cell is fully stretched. This makes it possible to design bordered styles "
+"regardless of the stylebox's size."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:27
+msgid ""
+"Returns the size of the given [code]margin[/code]. See [enum Margin] for "
+"possible values."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:73
+msgid ""
+"Sets the margin to [code]size[/code] pixels for the given [code]margin[/"
+"code]. See [enum Margin] for possible values."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:79
+msgid ""
+"Controls how the stylebox's texture will be stretched or tiled horizontally. "
+"See [enum AxisStretchMode] for possible values."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:82
+msgid ""
+"Controls how the stylebox's texture will be stretched or tiled vertically. "
+"See [enum AxisStretchMode] for possible values."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:85
+msgid ""
+"If [code]true[/code], the nine-patch texture's center tile will be drawn."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:88
+msgid ""
+"Expands the bottom margin of this style box when drawing, causing it to be "
+"drawn larger than requested."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:91
+msgid ""
+"Expands the left margin of this style box when drawing, causing it to be "
+"drawn larger than requested."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:94
+msgid ""
+"Expands the right margin of this style box when drawing, causing it to be "
+"drawn larger than requested."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:97
+msgid ""
+"Expands the top margin of this style box when drawing, causing it to be "
+"drawn larger than requested."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:100
+msgid ""
+"Increases the bottom margin of the 3×3 texture box.\n"
+"A higher value means more of the source texture is considered to be part of "
+"the bottom border of the 3×3 box.\n"
+"This is also the value used as fallback for [member StyleBox."
+"content_margin_bottom] if it is negative."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:105
+msgid ""
+"Increases the left margin of the 3×3 texture box.\n"
+"A higher value means more of the source texture is considered to be part of "
+"the left border of the 3×3 box.\n"
+"This is also the value used as fallback for [member StyleBox."
+"content_margin_left] if it is negative."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:110
+msgid ""
+"Increases the right margin of the 3×3 texture box.\n"
+"A higher value means more of the source texture is considered to be part of "
+"the right border of the 3×3 box.\n"
+"This is also the value used as fallback for [member StyleBox."
+"content_margin_right] if it is negative."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:115
+msgid ""
+"Increases the top margin of the 3×3 texture box.\n"
+"A higher value means more of the source texture is considered to be part of "
+"the top border of the 3×3 box.\n"
+"This is also the value used as fallback for [member StyleBox."
+"content_margin_top] if it is negative."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:120
+msgid "Modulates the color of the texture when this style box is drawn."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:123
+msgid ""
+"The normal map to use when drawing this style box.\n"
+"[b]Note:[/b] Godot expects the normal map to use X+, Y-, and Z+ coordinates. "
+"See [url=http://wiki.polycount.com/wiki/"
+"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]this page[/url] for "
+"a comparison of normal map coordinates expected by popular engines."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:127
+msgid ""
+"Species a sub-region of the texture to use.\n"
+"This is equivalent to first wrapping the texture in an [AtlasTexture] with "
+"the same region."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:131
+msgid "The texture to use when drawing this style box."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:137
+msgid "Emitted when the stylebox's texture is changed."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:143
+msgid ""
+"Stretch the stylebox's texture. This results in visible distortion unless "
+"the texture size matches the stylebox's size perfectly."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:146
+msgid ""
+"Repeats the stylebox's texture to match the stylebox's size according to the "
+"nine-patch system."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:149
+msgid ""
+"Repeats the stylebox's texture to match the stylebox's size according to the "
+"nine-patch system. Unlike [constant AXIS_STRETCH_MODE_TILE], the texture may "
+"be slightly stretched to make the nine-patch texture tile seamlessly."
+msgstr ""
+
+#: doc/classes/SubViewport.xml:13
+msgid "The clear mode when the sub-viewport is used as a render target."
+msgstr ""
+
+#: doc/classes/SubViewport.xml:16
+msgid "The update mode when the sub-viewport is used as a render target."
+msgstr ""
+
+#: doc/classes/SubViewport.xml:19
+msgid "The width and height of the sub-viewport."
+msgstr ""
+
+#: doc/classes/SubViewport.xml:22
+msgid ""
+"The 2D size override of the sub-viewport. If either the width or height is "
+"[code]0[/code], the override is disabled."
+msgstr ""
+
+#: doc/classes/SubViewport.xml:25
+msgid "If [code]true[/code], the 2D size override affects stretch as well."
+msgstr ""
+
+#: doc/classes/SubViewport.xml:28
+msgid "If [code]true[/code], the sub-viewport will be used in AR/VR process."
+msgstr ""
+
+#: doc/classes/SubViewport.xml:33
+msgid "Always clear the render target before drawing."
+msgstr ""
+
+#: doc/classes/SubViewport.xml:36
+msgid "Never clear the render target."
+msgstr ""
+
+#: doc/classes/SubViewport.xml:39
+msgid ""
+"Clear the render target next frame, then switch to [constant "
+"CLEAR_MODE_NEVER]."
+msgstr ""
+
+#: doc/classes/SubViewport.xml:42
+msgid "Do not update the render target."
+msgstr ""
+
+#: doc/classes/SubViewport.xml:45
+msgid ""
+"Update the render target once, then switch to [constant UPDATE_DISABLED]."
+msgstr ""
+
+#: doc/classes/SubViewport.xml:48
+msgid ""
+"Update the render target only when it is visible. This is the default value."
+msgstr ""
+
+#: doc/classes/SubViewport.xml:51
+msgid "Update the render target only when the its parent is visible."
+msgstr ""
+
+#: doc/classes/SubViewport.xml:54
+msgid "Always update the render target."
+msgstr ""
+
+#: doc/classes/SubViewportContainer.xml:4
+msgid "Control for holding [SubViewport]s."
+msgstr ""
+
+#: doc/classes/SubViewportContainer.xml:7
+msgid ""
+"A [Container] node that holds a [SubViewport], automatically setting its "
+"size.\n"
+"[b]Note:[/b] Changing a SubViewportContainer's [member Control.rect_scale] "
+"will cause its contents to appear distorted. To change its visual size "
+"without causing distortion, adjust the node's margins instead (if it's not "
+"already in a container)."
+msgstr ""
+
+#: doc/classes/SubViewportContainer.xml:16
+msgid ""
+"If [code]true[/code], the sub-viewport will be scaled to the control's size."
+msgstr ""
+
+#: doc/classes/SubViewportContainer.xml:19
+msgid ""
+"Divides the sub-viewport's effective resolution by this value while "
+"preserving its scale. This can be used to speed up rendering.\n"
+"For example, a 1280×720 sub-viewport with [member stretch_shrink] set to "
+"[code]2[/code] will be rendered at 640×360 while occupying the same size in "
+"the container.\n"
+"[b]Note:[/b] [member stretch] must be [code]true[/code] for this property to "
+"work."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:4
+msgid "Helper tool to create geometry."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:7
+msgid ""
+"The [SurfaceTool] is used to construct a [Mesh] by specifying vertex "
+"attributes individually. It can be used to construct a [Mesh] from a script. "
+"All properties except indices need to be added before calling [method "
+"add_vertex]. For example, to add vertex colors and UVs:\n"
+"[codeblock]\n"
+"var st = SurfaceTool.new()\n"
+"st.begin(Mesh.PRIMITIVE_TRIANGLES)\n"
+"st.add_color(Color(1, 0, 0))\n"
+"st.add_uv(Vector2(0, 0))\n"
+"st.add_vertex(Vector3(0, 0, 0))\n"
+"[/codeblock]\n"
+"The above [SurfaceTool] now contains one vertex of a triangle which has a UV "
+"coordinate and a specified [Color]. If another vertex were added without "
+"calling [method add_uv] or [method add_color], then the last values would be "
+"used.\n"
+"Vertex attributes must be passed [b]before[/b] calling [method add_vertex]. "
+"Failure to do so will result in an error when committing the vertex "
+"information to a mesh.\n"
+"Additionally, the attributes used before the first vertex is added determine "
+"the format of the mesh. For example, if you only add UVs to the first "
+"vertex, you cannot add color to any of the subsequent vertices.\n"
+"See also [ArrayMesh], [ImmediateGeometry3D] and [MeshDataTool] for "
+"procedural geometry generation.\n"
+"[b]Note:[/b] Godot uses clockwise [url=https://learnopengl.com/Advanced-"
+"OpenGL/Face-culling]winding order[/url] for front faces of triangle "
+"primitive modes."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:30
+msgid ""
+"Adds an array of bones for the next vertex to use. [code]bones[/code] must "
+"contain 4 integers."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:39
+msgid "Specifies a [Color] for the next vertex to use."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:48
+msgid ""
+"Adds an index to index array if you are using indexed vertices. Does not "
+"need to be called before adding vertices."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:57
+msgid "Specifies a normal for the next vertex to use."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:66
+msgid ""
+"Specifies whether the current vertex (if using only vertex arrays) or "
+"current index (if also using index arrays) should use smooth normals for "
+"normal calculation."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:75
+msgid "Specifies a tangent for the next vertex to use."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:94
+msgid ""
+"Inserts a triangle fan made of array data into [Mesh] being constructed.\n"
+"Requires the primitive type be set to [constant Mesh.PRIMITIVE_TRIANGLES]."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:104
+msgid "Specifies a set of UV coordinates to use for the next vertex."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:113
+msgid ""
+"Specifies an optional second set of UV coordinates to use for the next "
+"vertex."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:122
+msgid ""
+"Specifies the position of current vertex. Should be called after specifying "
+"other vertex properties (e.g. Color, UV)."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:131
+msgid ""
+"Specifies weight values for next vertex to use. [code]weights[/code] must "
+"contain 4 values."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:144
+msgid ""
+"Append vertices from a given [Mesh] surface onto the current vertex array "
+"with specified [Transform]."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:153
+msgid ""
+"Called before adding any vertices. Takes the primitive type as an argument "
+"(e.g. [constant Mesh.PRIMITIVE_TRIANGLES])."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:160
+msgid "Clear all information passed into the surface tool so far."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:171
+msgid ""
+"Returns a constructed [ArrayMesh] from current information passed in. If an "
+"existing [ArrayMesh] is passed in as an argument, will add an extra surface "
+"to the existing [ArrayMesh].\n"
+"Default flag is [constant Mesh.ARRAY_COMPRESS_DEFAULT]. See "
+"[code]ARRAY_COMPRESS_*[/code] constants in [enum Mesh.ArrayFormat] for other "
+"flags."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:179
+msgid ""
+"Commits the data to the same format used by [method ArrayMesh."
+"add_surface_from_arrays]. This way you can further process the mesh data "
+"using the [ArrayMesh] API."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:190
+msgid "Creates a vertex array from an existing [Mesh]."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:203
+msgid ""
+"Creates a vertex array from the specified blend shape of an existing [Mesh]. "
+"This can be used to extract a specific pose from a blend shape."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:210
+msgid "Removes the index array by expanding the vertex array."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:219
+msgid ""
+"Generates normals from vertices so you do not have to do it manually. If "
+"[code]flip[/code] is [code]true[/code], the resulting normals will be "
+"inverted.\n"
+"Requires the primitive type to be set to [constant Mesh.PRIMITIVE_TRIANGLES]."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:227
+msgid ""
+"Generates a tangent vector for each vertex. Requires that each vertex have "
+"UVs and normals set already."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:234
+msgid ""
+"Shrinks the vertex array by creating an index array (avoids reusing "
+"vertices)."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:243
+msgid "Sets [Material] to be used by the [Mesh] you are constructing."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:4
+msgid "Tabbed container."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:7
+msgid ""
+"Sets the active tab's [code]visible[/code] property to the value [code]true[/"
+"code]. Sets all other children's to [code]false[/code].\n"
+"Ignores non-[Control] children.\n"
+"Individual tabs are always visible unless you use [method set_tab_disabled] "
+"and [method set_tab_title] to hide it.\n"
+"To hide only a tab's content, nest the content inside a child [Control], so "
+"it receives the [TabContainer]'s visibility setting instead."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:19
+msgid "Returns the child [Control] node located at the active tab index."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:26
+msgid ""
+"Returns the [Popup] node instance if one has been set already with [method "
+"set_popup]."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:33
+msgid "Returns the previously active tab index."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:42
+msgid "Returns the [Control] node from the tab at index [code]tab_idx[/code]."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:49 doc/classes/Tabs.xml:50
+msgid "Returns the number of tabs."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:58 doc/classes/Tabs.xml:59
+msgid ""
+"Returns [code]true[/code] if the tab at index [code]tab_idx[/code] is "
+"disabled."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:67 doc/classes/Tabs.xml:68
+msgid ""
+"Returns the [Texture2D] for the tab at index [code]tab_idx[/code] or "
+"[code]null[/code] if the tab has no [Texture2D]."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:76 doc/classes/Tabs.xml:93
+msgid ""
+"Returns the title of the tab at index [code]tab_idx[/code]. Tab titles "
+"default to the name of the indexed child node, but this can be overridden "
+"with [method set_tab_title]."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:83
+msgid "Returns the [TabContainer] rearrange group id."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:92
+msgid ""
+"If set on a [Popup] node instance, a popup menu icon appears in the top-"
+"right corner of the [TabContainer]. Clicking it will expand the [Popup] node."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:103
+msgid ""
+"If [code]disabled[/code] is [code]false[/code], hides the tab at index "
+"[code]tab_idx[/code].\n"
+"[b]Note:[/b] Its title text will remain, unless also removed with [method "
+"set_tab_title]."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:115
+msgid "Sets an icon for the tab at index [code]tab_idx[/code]."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:126
+msgid ""
+"Sets a title for the tab at index [code]tab_idx[/code]. Tab titles default "
+"to the name of the indexed child node, but this can be overridden with "
+"[method set_tab_title]."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:135
+msgid ""
+"Defines rearrange group id, choose for each [TabContainer] the same value to "
+"enable tab drag between [TabContainer]. Enable drag with "
+"[code]set_drag_to_rearrange_enabled(true)[/code]."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:141
+msgid ""
+"The current tab index. When set, this index's [Control] node's "
+"[code]visible[/code] property is set to [code]true[/code] and all others are "
+"set to [code]false[/code]."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:144 doc/classes/Tabs.xml:181
+msgid "If [code]true[/code], tabs can be rearranged with mouse drag."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:147
+msgid ""
+"The alignment of all tabs in the tab container. See the [enum TabAlign] "
+"constants for details."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:150
+msgid ""
+"If [code]true[/code], tabs are visible. If [code]false[/code], tabs' content "
+"and titles are hidden."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:153
+msgid ""
+"If [code]true[/code], children [Control] nodes that are hidden have their "
+"minimum size take into account in the total, instead of only the currently "
+"visible one."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:159
+msgid ""
+"Emitted when the [TabContainer]'s [Popup] button is clicked. See [method "
+"set_popup] for details."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:166 doc/classes/Tabs.xml:212
+msgid "Emitted when switching to another tab."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:173
+msgid "Emitted when a tab is selected, even if it is the current tab."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:179 doc/classes/Tabs.xml:239
+msgid "Align the tabs to the left."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:182 doc/classes/Tabs.xml:242
+msgid "Align the tabs to the center."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:185 doc/classes/Tabs.xml:245
+msgid "Align the tabs to the right."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:190 doc/classes/Tabs.xml:274
+msgid ""
+"Icon for the left arrow button that appears when there are too many tabs to "
+"fit in the container width. When the button is disabled (i.e. the first tab "
+"is visible), it appears semi-transparent."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:193 doc/classes/Tabs.xml:277
+msgid ""
+"Icon for the left arrow button that appears when there are too many tabs to "
+"fit in the container width. Used when the button is being hovered with the "
+"cursor."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:196 doc/classes/Tabs.xml:280
+msgid "The font used to draw tab names."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:199 doc/classes/Tabs.xml:283
+msgid "Font color of inactive tabs."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:202 doc/classes/Tabs.xml:286
+msgid "Font color of disabled tabs."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:205 doc/classes/Tabs.xml:289
+msgid "Font color of the currently selected tab."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:208
+msgid "Space between tab's name and its icon."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:211 doc/classes/Tabs.xml:295
+msgid ""
+"Icon for the right arrow button that appears when there are too many tabs to "
+"fit in the container width. When the button is disabled (i.e. the last tab "
+"is visible) it appears semi-transparent."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:214 doc/classes/Tabs.xml:298
+msgid ""
+"Icon for the right arrow button that appears when there are too many tabs to "
+"fit in the container width. Used when the button is being hovered with the "
+"cursor."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:217
+msgid "The icon for the menu button (see [method set_popup])."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:220
+msgid ""
+"The icon for the menu button (see [method set_popup]) when it's being "
+"hovered with the cursor."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:223
+msgid "The style for the background fill."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:226
+msgid "The space at the left and right edges of the tab bar."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:229
+msgid "The style of inactive tabs."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:232
+msgid "The style of disabled tabs."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:235 doc/classes/Tabs.xml:309
+msgid "The style of the currently selected tab."
+msgstr ""
+
+#: doc/classes/Tabs.xml:4
+msgid "Tabs control."
+msgstr ""
+
+#: doc/classes/Tabs.xml:7
+msgid ""
+"Simple tabs control, similar to [TabContainer] but is only in charge of "
+"drawing tabs, not interact with children."
+msgstr ""
+
+#: doc/classes/Tabs.xml:20
+msgid "Adds a new tab."
+msgstr ""
+
+#: doc/classes/Tabs.xml:29
+msgid "Moves the scroll view to make the tab visible."
+msgstr ""
+
+#: doc/classes/Tabs.xml:36
+msgid ""
+"Returns [code]true[/code] if the offset buttons (the ones that appear when "
+"there's not enough space for all tabs) are visible."
+msgstr ""
+
+#: doc/classes/Tabs.xml:43
+msgid "Returns [code]true[/code] if select with right mouse button is enabled."
+msgstr ""
+
+#: doc/classes/Tabs.xml:75
+msgid "Returns the number of hidden tabs offsetted to the left."
+msgstr ""
+
+#: doc/classes/Tabs.xml:84
+msgid "Returns tab [Rect2] with local position and size."
+msgstr ""
+
+#: doc/classes/Tabs.xml:100
+msgid "Returns the [Tabs]' rearrange group ID."
+msgstr ""
+
+#: doc/classes/Tabs.xml:111
+msgid "Moves a tab from [code]from[/code] to [code]to[/code]."
+msgstr ""
+
+#: doc/classes/Tabs.xml:120
+msgid "Removes the tab at index [code]tab_idx[/code]."
+msgstr ""
+
+#: doc/classes/Tabs.xml:129
+msgid ""
+"If [code]true[/code], enables selecting a tab with the right mouse button."
+msgstr ""
+
+#: doc/classes/Tabs.xml:140
+msgid ""
+"If [code]disabled[/code] is [code]false[/code], hides the tab at index "
+"[code]tab_idx[/code].\n"
+"[b]Note:[/b] Its title text will remain unless it is also removed with "
+"[method set_tab_title]."
+msgstr ""
+
+#: doc/classes/Tabs.xml:152
+msgid "Sets an [code]icon[/code] for the tab at index [code]tab_idx[/code]."
+msgstr ""
+
+#: doc/classes/Tabs.xml:163
+msgid "Sets a [code]title[/code] for the tab at index [code]tab_idx[/code]."
+msgstr ""
+
+#: doc/classes/Tabs.xml:172
+msgid ""
+"Defines the rearrange group ID. Choose for each [Tabs] the same value to "
+"dragging tabs between [Tabs]. Enable drag with "
+"[code]set_drag_to_rearrange_enabled(true)[/code]."
+msgstr ""
+
+#: doc/classes/Tabs.xml:178
+msgid "Select tab at index [code]tab_idx[/code]."
+msgstr ""
+
+#: doc/classes/Tabs.xml:184
+msgid ""
+"if [code]true[/code], the mouse's scroll wheel cab be used to navigate the "
+"scroll view."
+msgstr ""
+
+#: doc/classes/Tabs.xml:187
+msgid "The alignment of all tabs. See [enum TabAlign] for details."
+msgstr ""
+
+#: doc/classes/Tabs.xml:190
+msgid ""
+"Sets when the close button will appear on the tabs. See [enum "
+"CloseButtonDisplayPolicy] for details."
+msgstr ""
+
+#: doc/classes/Tabs.xml:198
+msgid ""
+"Emitted when the active tab is rearranged via mouse drag. See [member "
+"drag_to_rearrange_enabled]."
+msgstr ""
+
+#: doc/classes/Tabs.xml:205
+msgid "Emitted when a tab is right-clicked."
+msgstr ""
+
+#: doc/classes/Tabs.xml:219
+msgid "Emitted when a tab is clicked, even if it is the current tab."
+msgstr ""
+
+#: doc/classes/Tabs.xml:226
+msgid "Emitted when a tab is closed."
+msgstr ""
+
+#: doc/classes/Tabs.xml:233
+msgid "Emitted when a tab is hovered by the mouse."
+msgstr ""
+
+#: doc/classes/Tabs.xml:248
+msgid "Represents the size of the [enum TabAlign] enum."
+msgstr ""
+
+#: doc/classes/Tabs.xml:251
+msgid "Never show the close buttons."
+msgstr ""
+
+#: doc/classes/Tabs.xml:254
+msgid "Only show the close button on the currently active tab."
+msgstr ""
+
+#: doc/classes/Tabs.xml:257
+msgid "Show the close button on all tabs."
+msgstr ""
+
+#: doc/classes/Tabs.xml:260
+msgid "Represents the size of the [enum CloseButtonDisplayPolicy] enum."
+msgstr ""
+
+#: doc/classes/Tabs.xml:265
+msgid "Background of the close button when it's being hovered with the cursor."
+msgstr ""
+
+#: doc/classes/Tabs.xml:268
+msgid "Background of the close button when it's being pressed."
+msgstr ""
+
+#: doc/classes/Tabs.xml:271
+msgid "The icon for the close button (see [member tab_close_display_policy])."
+msgstr ""
+
+#: doc/classes/Tabs.xml:292
+msgid "The horizontal separation between the tabs."
+msgstr ""
+
+#: doc/classes/Tabs.xml:303
+msgid "The style of an inactive tab."
+msgstr ""
+
+#: doc/classes/Tabs.xml:306
+msgid "The style of a disabled tab"
+msgstr ""
+
+#: doc/classes/TCP_Server.xml:4
+msgid "A TCP server."
+msgstr ""
+
+#: doc/classes/TCP_Server.xml:7
+msgid ""
+"A TCP server. Listens to connections on a port and returns a [StreamPeerTCP] "
+"when it gets an incoming connection."
+msgstr ""
+
+#: doc/classes/TCP_Server.xml:16
+msgid "Returns [code]true[/code] if a connection is available for taking."
+msgstr ""
+
+#: doc/classes/TCP_Server.xml:23
+msgid ""
+"Returns [code]true[/code] if the server is currently listening for "
+"connections."
+msgstr ""
+
+#: doc/classes/TCP_Server.xml:34
+msgid ""
+"Listen on the [code]port[/code] binding to [code]bind_address[/code].\n"
+"If [code]bind_address[/code] is set as [code]\"*\"[/code] (default), the "
+"server will listen on all available addresses (both IPv4 and IPv6).\n"
+"If [code]bind_address[/code] is set as [code]\"0.0.0.0\"[/code] (for IPv4) "
+"or [code]\"::\"[/code] (for IPv6), the server will listen on all available "
+"addresses matching that IP type.\n"
+"If [code]bind_address[/code] is set to any valid address (e.g. "
+"[code]\"192.168.1.101\"[/code], [code]\"::1\"[/code], etc), the server will "
+"only listen on the interface with that addresses (or fail if no interface "
+"with the given address exists)."
+msgstr ""
+
+#: doc/classes/TCP_Server.xml:44
+msgid "Stops listening."
+msgstr ""
+
+#: doc/classes/TCP_Server.xml:51
+msgid ""
+"If a connection is available, returns a StreamPeerTCP with the connection."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:4
+msgid "Multiline text editing control."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:7
+msgid ""
+"TextEdit is meant for editing large, multiline text. It also has facilities "
+"for editing code, such as syntax highlighting support and multiple levels of "
+"undo/redo."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:18
+msgid ""
+"Returns if the given line is foldable, that is, it has indented lines right "
+"below it."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:25
+msgid ""
+"Centers the viewport on the line the editing cursor is at. This also resets "
+"the [member scroll_horizontal] value to [code]0[/code]."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:32
+msgid "Clears the undo history."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:39
+msgid "Copy's the current text selection."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:46
+msgid "Returns the column the editing cursor is at."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:53
+msgid "Returns the line the editing cursor is at."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:64
+msgid ""
+"Moves the cursor at the specified [code]column[/code] index.\n"
+"If [code]adjust_viewport[/code] is set to [code]true[/code], the viewport "
+"will center at the cursor position after the move occurs."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:80
+msgid ""
+"Moves the cursor at the specified [code]line[/code] index.\n"
+"If [code]adjust_viewport[/code] is set to [code]true[/code], the viewport "
+"will center at the cursor position after the move occurs.\n"
+"If [code]can_be_hidden[/code] is set to [code]true[/code], the specified "
+"[code]line[/code] can be hidden using [method set_line_as_hidden]."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:89
+msgid "Cut's the current selection."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:96
+msgid "Deselects the current selection."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:103
+msgid "Folds all lines that are possible to be folded (see [method can_fold])."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:112
+msgid "Folds the given line, if possible (see [method can_fold])."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:119
+msgid "Returns an array containing the line number of each breakpoint."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:128
+msgid "Returns the text of a specific line."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:135
+msgid "Returns the amount of total lines in the text."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:142
+msgid ""
+"Returns the [PopupMenu] of this [TextEdit]. By default, this menu is "
+"displayed when right-clicking on the [TextEdit]."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:149
+msgid "Returns the selection begin column."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:156
+msgid "Returns the selection begin line."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:163
+msgid "Returns the text inside the selection."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:170
+msgid "Returns the selection end column."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:177
+msgid "Returns the selection end line."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:184
+msgid "Returns a [String] text with the word under the mouse cursor location."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:193
+msgid "Insert the specified text at the cursor position."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:202
+msgid "Returns whether the line at the specified index is folded or not."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:211
+msgid "Returns whether the line at the specified index is hidden or not."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:218
+msgid "Returns [code]true[/code] if the selection is active."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:227
+msgid ""
+"Triggers a right-click menu action by the specified index. See [enum "
+"MenuItems] for a list of available indexes."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:234
+msgid "Paste the current selection."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:241
+msgid "Perform redo operation."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:248
+msgid ""
+"Removes all the breakpoints. This will not fire the [signal "
+"breakpoint_toggled] signal."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:263
+msgid ""
+"Perform a search inside the text. Search flags can be specified in the [enum "
+"SearchFlags] enum.\n"
+"Returns an empty [code]Dictionary[/code] if no result was found. Otherwise, "
+"returns a [code]Dictionary[/code] containing [code]line[/code] and "
+"[code]column[/code] entries, e.g:\n"
+"[codeblock]\n"
+"var result = search(key, flags, line, column)\n"
+"if !result.empty():\n"
+" # Result found.\n"
+" var line_number = result.line\n"
+" var column_number = result.column\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/TextEdit.xml:286
+msgid ""
+"Perform selection, from line/column to line/column.\n"
+"If [member selecting_enabled] is [code]false[/code], no selection will occur."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:294
+msgid ""
+"Select all the text.\n"
+"If [member selecting_enabled] is [code]false[/code], no selection will occur."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:306
+msgid "Sets the text for a specific line."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:317
+msgid "If [code]true[/code], hides the line of the specified index."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:326
+msgid "Toggle the folding of the code block at the given line."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:333
+msgid "Perform undo operation."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:342
+msgid "Unfolds the given line, if folded."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:349
+msgid ""
+"Unhide all lines that were previously set to hidden by [method "
+"set_line_as_hidden]."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:355
+msgid "If [code]true[/code], the breakpoint gutter is visible."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:364
+msgid ""
+"If [code]true[/code], the caret displays as a rectangle.\n"
+"If [code]false[/code], the caret displays as a bar."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:368
+msgid ""
+"If [code]true[/code], a right-click moves the cursor at the mouse position "
+"before displaying the context menu.\n"
+"If [code]false[/code], the context menu disregards mouse location."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:372
+msgid "If [code]true[/code], a right-click displays the context menu."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:375
+msgid ""
+"If [code]true[/code], the \"space\" character will have a visible "
+"representation."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:378
+msgid ""
+"If [code]true[/code], the \"tab\" character will have a visible "
+"representation."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:382
+msgid ""
+"If [code]true[/code], the fold gutter is visible. This enables folding "
+"groups of indented lines."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:385
+msgid ""
+"If [code]true[/code], all lines that have been set to hidden by [method "
+"set_line_as_hidden], will not be visible."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:388
+msgid ""
+"If [code]true[/code], all occurrences of the selected text will be "
+"highlighted."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:391
+msgid "If [code]true[/code], the line containing the cursor is highlighted."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:394
+msgid ""
+"If [code]true[/code], a minimap is shown, providing an outline of your "
+"source code."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:397
+msgid "The width, in pixels, of the minimap."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:401
+msgid ""
+"If [code]true[/code], custom [code]font_color_selected[/code] will be used "
+"for selected text."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:404
+msgid ""
+"If [code]true[/code], read-only mode is enabled. Existing text cannot be "
+"modified and new text cannot be added."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:413
+msgid ""
+"If [code]true[/code], text can be selected.\n"
+"If [code]false[/code], text can not be selected by the user or by the "
+"[method select] or [method select_all] methods."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:417
+msgid ""
+"If [code]true[/code], shortcut keys for context menu items are enabled, even "
+"if the context menu is disabled."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:420
+msgid ""
+"If [code]true[/code], line numbers are displayed to the left of the text."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:423
+msgid ""
+"If [code]true[/code], sets the [code]step[/code] of the scrollbars to "
+"[code]0.25[/code] which results in smoother scrolling."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:428
+msgid "String value of the [TextEdit]."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:431
+msgid "Vertical scroll sensitivity."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:437
+msgid ""
+"If [code]true[/code], enables text wrapping when it goes beyond the edge of "
+"what is visible."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:445
+msgid "Emitted when a breakpoint is placed via the breakpoint gutter."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:450
+msgid "Emitted when the cursor changes."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:459
+msgid "Emitted when the info icon is clicked."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:496
+msgid "Match case when searching."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:499
+msgid "Match whole words when searching."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:502
+msgid "Search from end to beginning."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:511
+msgid ""
+"Pastes the clipboard text over the selected text (or at the cursor's "
+"position)."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:514
+msgid "Erases the whole [TextEdit] text."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:517
+msgid "Selects the whole [TextEdit] text."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:523
+msgid "Redoes the previous action."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:531
+msgid ""
+"Sets the background [Color] of this [TextEdit]. [member syntax_highlighting] "
+"has to be enabled."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:534
+msgid ""
+"Sets the [Color] of the bookmark marker. [member syntax_highlighting] has to "
+"be enabled."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:539 doc/classes/TextEdit.xml:566
+msgid ""
+"Sets the [Color] of the breakpoints. [member breakpoint_gutter] has to be "
+"enabled."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:577
+msgid "Sets the default [Font]."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:580
+msgid "Sets the font [Color]."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:585
+msgid ""
+"Sets the [Color] of the selected text. [member override_selected_font_color] "
+"has to be enabled."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:588
+msgid ""
+"Sets the [Color] of the line numbers. [member show_line_numbers] has to be "
+"enabled."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:591
+msgid "Sets the spacing between the lines."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:594
+msgid "Sets the [Color] of marked text."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:597
+msgid "Sets the [StyleBox] of this [TextEdit]."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:600
+msgid ""
+"Sets the [StyleBox] of this [TextEdit] when [member readonly] is enabled."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:605
+msgid "Sets the highlight [Color] of text selections."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:610
+msgid "Sets a custom [Texture2D] for tab text characters."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:613
+msgid ""
+"Sets the highlight [Color] of multiple occurrences. [member "
+"highlight_all_occurrences] has to be enabled."
+msgstr ""
+
+#: doc/classes/Texture2D.xml:4
+msgid "Texture for 2D and 3D."
+msgstr ""
+
+#: doc/classes/Texture2D.xml:7
+msgid ""
+"A texture works by registering an image in the video hardware, which then "
+"can be used in 3D models or 2D [Sprite2D] or GUI [Control].\n"
+"Textures are often created by loading them from a file. See [method "
+"@GDScript.load].\n"
+"[Texture2D] is a base for other resources. It cannot be used directly."
+msgstr ""
+
+#: doc/classes/Texture2D.xml:36
+msgid ""
+"Draws the texture using a [CanvasItem] with the [RenderingServer] API at the "
+"specified [code]position[/code]."
+msgstr ""
+
+#: doc/classes/Texture2D.xml:63
+msgid "Draws the texture using a [CanvasItem] with the [RenderingServer] API."
+msgstr ""
+
+#: doc/classes/Texture2D.xml:92
+msgid ""
+"Draws a part of the texture using a [CanvasItem] with the [RenderingServer] "
+"API."
+msgstr ""
+
+#: doc/classes/Texture2D.xml:99
+msgid ""
+"Returns an [Image] with the data from this [Texture2D]. [Image]s can be "
+"accessed and manipulated directly."
+msgstr ""
+
+#: doc/classes/Texture2D.xml:106
+msgid "Returns the texture height."
+msgstr ""
+
+#: doc/classes/Texture2D.xml:113
+msgid "Returns the texture size."
+msgstr ""
+
+#: doc/classes/Texture2D.xml:120
+msgid "Returns the texture width."
+msgstr ""
+
+#: doc/classes/Texture2D.xml:127
+msgid "Returns [code]true[/code] if this [Texture2D] has an alpha channel."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:4
+msgid ""
+"Texture-based button. Supports Pressed, Hover, Disabled and Focused states."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:7
+msgid ""
+"[TextureButton] has the same functionality as [Button], except it uses "
+"sprites instead of Godot's [Theme] resource. It is faster to create, but it "
+"doesn't support localization like more complex [Control]s.\n"
+"The \"normal\" state must contain a texture ([member texture_normal]); other "
+"textures are optional."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:16
+msgid ""
+"If [code]true[/code], the texture stretches to the edges of the node's "
+"bounding rectangle using the [member stretch_mode]. If [code]false[/code], "
+"the texture will not scale with the node."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:25
+msgid ""
+"Controls the texture's behavior when you resize the node's bounding "
+"rectangle, [b]only if[/b] [member expand] is [code]true[/code]. Set it to "
+"one of the [enum StretchMode] constants. See the constants to learn more."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:28
+msgid ""
+"Pure black and white [BitMap] image to use for click detection. On the mask, "
+"white pixels represent the button's clickable area. Use it to create buttons "
+"with curved shapes."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:31
+msgid ""
+"Texture to display when the node is disabled. See [member BaseButton."
+"disabled]."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:34
+msgid "Texture to display when the node has mouse or keyboard focus."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:37
+msgid "Texture to display when the mouse hovers the node."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:40
+msgid ""
+"Texture to display by default, when the node is [b]not[/b] in the disabled, "
+"focused, hover or pressed state."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:43
+msgid ""
+"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 "
+"[member BaseButton.shortcut] key."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:48 doc/classes/TextureRect.xml:36
+msgid "Scale to fit the node's bounding rectangle."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:51 doc/classes/TextureRect.xml:39
+msgid "Tile inside the node's bounding rectangle."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:54 doc/classes/TextureRect.xml:42
+msgid ""
+"The texture keeps its original size and stays in the bounding rectangle's "
+"top-left corner."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:57 doc/classes/TextureRect.xml:45
+msgid ""
+"The texture keeps its original size and stays centered in the node's "
+"bounding rectangle."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:60 doc/classes/TextureRect.xml:48
+msgid ""
+"Scale the texture to fit the node's bounding rectangle, but maintain the "
+"texture's aspect ratio."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:63
+msgid ""
+"Scale the texture to fit the node's bounding rectangle, center it, and "
+"maintain its aspect ratio."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:66 doc/classes/TextureRect.xml:54
+msgid ""
+"Scale the texture so that the shorter side fits the bounding rectangle. The "
+"other side clips to the node's limits."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:4
+msgid "Base class for 3D texture types."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:7
+msgid ""
+"Base class for [Texture2DArray], [Cubemap] and [CubemapArray]. Cannot be "
+"used directly, but contains all the functions necessary for accessing the "
+"derived resource types. Data is set on a per-layer basis. For "
+"[Texture2DArray]s, the layer specifies the array layer."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:16
+msgid ""
+"Returns the current format being used by this texture. See [enum Image."
+"Format] for details."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:23
+msgid ""
+"Returns the height of the texture. Height is typically represented by the Y-"
+"axis."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:32
+msgid ""
+"Returns an [Image] resource with the data from specified [code]layer[/code]."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:51
+msgid ""
+"Returns the width of the texture. Width is typically represented by the X-"
+"axis."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:4
+msgid ""
+"Texture-based progress bar. Useful for loading screens and life or stamina "
+"bars."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:7
+msgid ""
+"TextureProgress works like [ProgressBar], but uses up to 3 textures instead "
+"of Godot's [Theme] resource. It can be used to create horizontal, vertical "
+"and radial progress bars."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:33
+msgid "The fill direction. See [enum FillMode] for possible values."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:37
+msgid ""
+"If [code]true[/code], Godot treats the bar's textures like in "
+"[NinePatchRect]. Use the [code]stretch_margin_*[/code] properties like "
+"[member stretch_margin_bottom] to set up the nine patch's 3×3 grid. When "
+"using a radial [member fill_mode], this setting will enable stretching."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:40
+msgid ""
+"Offsets [member texture_progress] if [member fill_mode] is [constant "
+"FILL_CLOCKWISE] or [constant FILL_COUNTER_CLOCKWISE]."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:43
+msgid ""
+"Upper limit for the fill of [member texture_progress] if [member fill_mode] "
+"is [constant FILL_CLOCKWISE] or [constant FILL_COUNTER_CLOCKWISE]. When the "
+"node's [code]value[/code] is equal to its [code]max_value[/code], the "
+"texture fills up to this angle.\n"
+"See [member Range.value], [member Range.max_value]."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:47
+msgid ""
+"Starting angle for the fill of [member texture_progress] if [member "
+"fill_mode] is [constant FILL_CLOCKWISE] or [constant "
+"FILL_COUNTER_CLOCKWISE]. When the node's [code]value[/code] is equal to its "
+"[code]min_value[/code], the texture doesn't show up at all. When the "
+"[code]value[/code] increases, the texture fills and tends towards [member "
+"radial_fill_degrees]."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:50
+msgid ""
+"The height of the 9-patch's bottom row. A margin of 16 means the 9-slice's "
+"bottom corners and side will have a height of 16 pixels. You can set all 4 "
+"margin values individually to create panels with non-uniform borders."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:53
+msgid "The width of the 9-patch's left column."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:56
+msgid "The width of the 9-patch's right column."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:59
+msgid "The height of the 9-patch's top row."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:62
+msgid ""
+"[Texture2D] that draws over the progress bar. Use it to add highlights or an "
+"upper-frame that hides part of [member texture_progress]."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:65
+msgid ""
+"[Texture2D] that clips based on the node's [code]value[/code] and [member "
+"fill_mode]. As [code]value[/code] increased, the texture fills up. It shows "
+"entirely when [code]value[/code] reaches [code]max_value[/code]. It doesn't "
+"show at all if [code]value[/code] is equal to [code]min_value[/code].\n"
+"The [code]value[/code] property comes from [Range]. See [member Range."
+"value], [member Range.min_value], [member Range.max_value]."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:69
+msgid "[Texture2D] that draws under the progress bar. The bar's background."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:72
+msgid ""
+"Multiplies the color of the bar's [code]texture_over[/code] texture. The "
+"effect is similar to [member CanvasItem.modulate], except it only affects "
+"this specific texture instead of the entire node."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:75
+msgid ""
+"Multiplies the color of the bar's [code]texture_progress[/code] texture."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:78
+msgid "Multiplies the color of the bar's [code]texture_under[/code] texture."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:83
+msgid "The [member texture_progress] fills from left to right."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:86
+msgid "The [member texture_progress] fills from right to left."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:89
+msgid "The [member texture_progress] fills from top to bottom."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:92
+msgid "The [member texture_progress] fills from bottom to top."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:95
+msgid ""
+"Turns the node into a radial bar. The [member texture_progress] fills "
+"clockwise. See [member radial_center_offset], [member radial_initial_angle] "
+"and [member radial_fill_degrees] to control the way the bar fills up."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:98
+msgid ""
+"Turns the node into a radial bar. The [member texture_progress] fills "
+"counterclockwise. See [member radial_center_offset], [member "
+"radial_initial_angle] and [member radial_fill_degrees] to control the way "
+"the bar fills up."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:101
+msgid ""
+"The [member texture_progress] fills from the center, expanding both towards "
+"the left and the right."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:104
+msgid ""
+"The [member texture_progress] fills from the center, expanding both towards "
+"the top and the bottom."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:107
+msgid ""
+"Turns the node into a radial bar. The [member texture_progress] fills "
+"radially from the center, expanding both clockwise and counterclockwise. See "
+"[member radial_center_offset], [member radial_initial_angle] and [member "
+"radial_fill_degrees] to control the way the bar fills up."
+msgstr ""
+
+#: doc/classes/TextureRect.xml:4
+msgid "Control for drawing textures."
+msgstr ""
+
+#: doc/classes/TextureRect.xml:7
+msgid ""
+"Used to draw icons and sprites in a user interface. The texture's placement "
+"can be controlled with the [member stretch_mode] property. It can scale, "
+"tile, or stay centered inside its bounding rectangle."
+msgstr ""
+
+#: doc/classes/TextureRect.xml:15
+msgid "If [code]true[/code], the texture scales to fit its bounding rectangle."
+msgstr ""
+
+#: doc/classes/TextureRect.xml:25
+msgid ""
+"Controls the texture's behavior when resizing the node's bounding rectangle. "
+"See [enum StretchMode]."
+msgstr ""
+
+#: doc/classes/TextureRect.xml:28
+msgid "The node's [Texture2D] resource."
+msgstr ""
+
+#: doc/classes/TextureRect.xml:33
+msgid ""
+"Scale to fit the node's bounding rectangle, only if [code]expand[/code] is "
+"[code]true[/code]. Default [code]stretch_mode[/code], for backwards "
+"compatibility. Until you set [code]expand[/code] to [code]true[/code], the "
+"texture will behave like [constant STRETCH_KEEP]."
+msgstr ""
+
+#: doc/classes/TextureRect.xml:51
+msgid ""
+"Scale the texture to fit the node's bounding rectangle, center it and "
+"maintain its aspect ratio."
+msgstr ""
+
+#: doc/classes/Theme.xml:4
+msgid "Theme for controls."
+msgstr ""
+
+#: doc/classes/Theme.xml:7
+msgid ""
+"A theme for skinning controls. Controls can be skinned individually, but for "
+"complex applications, it's more practical to just create a global theme that "
+"defines everything. This theme can be applied to any [Control]; the Control "
+"and its children will automatically use it.\n"
+"Theme resources can alternatively be loaded by writing them in a [code]."
+"theme[/code] file, see the documentation for more information."
+msgstr ""
+
+#: doc/classes/Theme.xml:11
+msgid "https://docs.godotengine.org/en/latest/tutorials/gui/gui_skinning.html"
+msgstr ""
+
+#: doc/classes/Theme.xml:18
+msgid "Clears all values on the theme."
+msgstr ""
+
+#: doc/classes/Theme.xml:29
+msgid ""
+"Clears the [Color] at [code]name[/code] if the theme has [code]type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:40
+msgid ""
+"Clears the constant at [code]name[/code] if the theme has [code]type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:51
+msgid ""
+"Clears the [Font] at [code]name[/code] if the theme has [code]type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:62
+msgid ""
+"Clears the icon at [code]name[/code] if the theme has [code]type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:73
+msgid ""
+"Clears [StyleBox] at [code]name[/code] if the theme has [code]type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:80
+msgid "Sets the theme's values to a copy of the default theme values."
+msgstr ""
+
+#: doc/classes/Theme.xml:89
+msgid "Sets the theme's values to a copy of a given theme."
+msgstr ""
+
+#: doc/classes/Theme.xml:100
+msgid ""
+"Returns the [Color] at [code]name[/code] if the theme has [code]type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:109
+msgid ""
+"Returns all the [Color]s as a [PackedStringArray] filled with each [Color]'s "
+"name, for use in [method get_color], if the theme has [code]type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:120
+msgid ""
+"Returns the constant at [code]name[/code] if the theme has [code]type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:129
+msgid ""
+"Returns all the constants as a [PackedStringArray] filled with each "
+"constant's name, for use in [method get_constant], if the theme has "
+"[code]type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:140
+msgid ""
+"Returns the [Font] at [code]name[/code] if the theme has [code]type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:149
+msgid ""
+"Returns all the [Font]s as a [PackedStringArray] filled with each [Font]'s "
+"name, for use in [method get_font], if the theme has [code]type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:160
+msgid ""
+"Returns the icon [Texture2D] at [code]name[/code] if the theme has "
+"[code]type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:169
+msgid ""
+"Returns all the icons as a [PackedStringArray] filled with each "
+"[Texture2D]'s name, for use in [method get_icon], if the theme has "
+"[code]type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:180
+msgid ""
+"Returns the icon [StyleBox] at [code]name[/code] if the theme has "
+"[code]type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:189
+msgid ""
+"Returns all the [StyleBox]s as a [PackedStringArray] filled with each "
+"[StyleBox]'s name, for use in [method get_stylebox], if the theme has "
+"[code]type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:196
+msgid ""
+"Returns all the [StyleBox] types as a [PackedStringArray] filled with each "
+"[StyleBox]'s type, for use in [method get_stylebox] and/or [method "
+"get_stylebox_list], if the theme has [code]type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:205
+msgid ""
+"Returns all the types in [code]type[/code] as a [PackedStringArray] for use "
+"in any of the [code]get_*[/code] functions, if the theme has [code]type[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:216
+msgid ""
+"Returns [code]true[/code] if [Color] with [code]name[/code] is in "
+"[code]type[/code].\n"
+"Returns [code]false[/code] if the theme does not have [code]type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:228
+msgid ""
+"Returns [code]true[/code] if constant with [code]name[/code] is in "
+"[code]type[/code].\n"
+"Returns [code]false[/code] if the theme does not have [code]type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:240
+msgid ""
+"Returns [code]true[/code] if [Font] with [code]name[/code] is in [code]type[/"
+"code].\n"
+"Returns [code]false[/code] if the theme does not have [code]type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:252
+msgid ""
+"Returns [code]true[/code] if icon [Texture2D] with [code]name[/code] is in "
+"[code]type[/code].\n"
+"Returns [code]false[/code] if the theme does not have [code]type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:264
+msgid ""
+"Returns [code]true[/code] if [StyleBox] with [code]name[/code] is in "
+"[code]type[/code].\n"
+"Returns [code]false[/code] if the theme does not have [code]type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:278
+msgid ""
+"Sets the theme's [Color] to [code]color[/code] at [code]name[/code] in "
+"[code]type[/code].\n"
+"Does nothing if the theme does not have [code]type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:292
+msgid ""
+"Sets the theme's constant to [code]constant[/code] at [code]name[/code] in "
+"[code]type[/code].\n"
+"Does nothing if the theme does not have [code]type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:306
+msgid ""
+"Sets the theme's [Font] to [code]font[/code] at [code]name[/code] in "
+"[code]type[/code].\n"
+"Does nothing if the theme does not have [code]type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:320
+msgid ""
+"Sets the theme's icon [Texture2D] to [code]texture[/code] at [code]name[/"
+"code] in [code]type[/code].\n"
+"Does nothing if the theme does not have [code]type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:334
+msgid ""
+"Sets theme's [StyleBox] to [code]stylebox[/code] at [code]name[/code] in "
+"[code]type[/code].\n"
+"Does nothing if the theme does not have [code]type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:341
+msgid "The theme's default font."
+msgstr ""
+
+#: doc/classes/Thread.xml:4
+msgid "A unit of execution in a process."
+msgstr ""
+
+#: doc/classes/Thread.xml:7
+msgid ""
+"A unit of execution in a process. Can run methods on [Object]s "
+"simultaneously. The use of synchronization via [Mutex] or [Semaphore] is "
+"advised if working with shared objects."
+msgstr ""
+
+#: doc/classes/Thread.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/threads/thread_safe_apis."
+"html"
+msgstr ""
+
+#: doc/classes/Thread.xml:18
+msgid ""
+"Returns the current [Thread]'s ID, uniquely identifying it among all threads."
+msgstr ""
+
+#: doc/classes/Thread.xml:25
+msgid ""
+"Returns [code]true[/code] if this [Thread] is currently active. An active "
+"[Thread] cannot start work on a new method but can be joined with [method "
+"wait_to_finish]."
+msgstr ""
+
+#: doc/classes/Thread.xml:40
+msgid ""
+"Starts a new [Thread] that runs [code]method[/code] on object "
+"[code]instance[/code] with [code]userdata[/code] passed as an argument. Even "
+"if no userdata is passed, [code]method[/code] must accept one argument and "
+"it will be null. The [code]priority[/code] of the [Thread] can be changed by "
+"passing a value from the [enum Priority] enum.\n"
+"Returns [constant OK] on success, or [constant ERR_CANT_CREATE] on failure."
+msgstr ""
+
+#: doc/classes/Thread.xml:48
+msgid ""
+"Joins the [Thread] and waits for it to finish. Returns what the method "
+"called returned."
+msgstr ""
+
+#: doc/classes/Thread.xml:54
+msgid "A thread running with lower priority than normally."
+msgstr ""
+
+#: doc/classes/Thread.xml:57
+msgid "A thread with a standard priority."
+msgstr ""
+
+#: doc/classes/Thread.xml:60
+msgid "A thread running with higher priority than normally."
+msgstr ""
+
+#: doc/classes/TileMap.xml:4
+msgid "Node for 2D tile-based maps."
+msgstr ""
+
+#: doc/classes/TileMap.xml:7
+msgid ""
+"Node for 2D tile-based maps. Tilemaps use a [TileSet] which contain a list "
+"of tiles (textures plus optional collision, navigation, and/or occluder "
+"shapes) which are used to create grid-based maps."
+msgstr ""
+
+#: doc/classes/TileMap.xml:10
+msgid "https://docs.godotengine.org/en/latest/tutorials/2d/using_tilemaps.html"
+msgstr ""
+
+#: doc/classes/TileMap.xml:17
+msgid "Clears all cells."
+msgstr ""
+
+#: doc/classes/TileMap.xml:24
+msgid "Clears cells that do not exist in the tileset."
+msgstr ""
+
+#: doc/classes/TileMap.xml:35
+msgid ""
+"Returns the tile index of the given cell. If no tile exists in the cell, "
+"returns [constant INVALID_CELL]."
+msgstr ""
+
+#: doc/classes/TileMap.xml:46
+msgid ""
+"Returns the coordinate (subtile column and row) of the autotile variation in "
+"the tileset. Returns a zero vector if the cell doesn't have autotiling."
+msgstr ""
+
+#: doc/classes/TileMap.xml:55
+msgid ""
+"Returns the tile index of the cell given by a Vector2. If no tile exists in "
+"the cell, returns [constant INVALID_CELL]."
+msgstr ""
+
+#: doc/classes/TileMap.xml:64
+msgid "Returns [code]true[/code] if the given collision layer bit is set."
+msgstr ""
+
+#: doc/classes/TileMap.xml:73
+msgid "Returns [code]true[/code] if the given collision mask bit is set."
+msgstr ""
+
+#: doc/classes/TileMap.xml:80
+msgid ""
+"Returns a [Vector2] array with the positions of all cells containing a tile "
+"from the tileset (i.e. a tile index different from [code]-1[/code])."
+msgstr ""
+
+#: doc/classes/TileMap.xml:89
+msgid "Returns an array of all cells with the given tile [code]index[/code]."
+msgstr ""
+
+#: doc/classes/TileMap.xml:96
+msgid "Returns a rectangle enclosing the used (non-empty) tiles of the map."
+msgstr ""
+
+#: doc/classes/TileMap.xml:107
+msgid ""
+"Returns [code]true[/code] if the given cell is transposed, i.e. the X and Y "
+"axes are swapped."
+msgstr ""
+
+#: doc/classes/TileMap.xml:118
+msgid "Returns [code]true[/code] if the given cell is flipped in the X axis."
+msgstr ""
+
+#: doc/classes/TileMap.xml:129
+msgid "Returns [code]true[/code] if the given cell is flipped in the Y axis."
+msgstr ""
+
+#: doc/classes/TileMap.xml:140
+msgid ""
+"Returns the global position corresponding to the given tilemap (grid-based) "
+"coordinates.\n"
+"Optionally, the tilemap's half offset can be ignored."
+msgstr ""
+
+#: doc/classes/TileMap.xml:162
+msgid ""
+"Sets the tile index for the cell given by a Vector2.\n"
+"An index of [code]-1[/code] clears the cell.\n"
+"Optionally, the tile can also be flipped, transposed, or given autotile "
+"coordinates. The autotile coordinate refers to the column and row of the "
+"subtile.\n"
+"[b]Note:[/b] Data such as navigation polygons and collision shapes are not "
+"immediately updated for performance reasons.\n"
+"If you need these to be immediately updated, you can call [method "
+"update_dirty_quadrants].\n"
+"Overriding this method also overrides it internally, allowing custom logic "
+"to be implemented when tiles are placed/removed:\n"
+"[codeblock]\n"
+"func set_cell(x, y, tile, flip_x, flip_y, transpose, autotile_coord)\n"
+" # Write your custom logic here.\n"
+" # To call the default method:\n"
+" .set_cell(x, y, tile, flip_x, flip_y, transpose, autotile_coord)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/TileMap.xml:190
+msgid ""
+"Sets the tile index for the given cell.\n"
+"An index of [code]-1[/code] clears the cell.\n"
+"Optionally, the tile can also be flipped or transposed.\n"
+"[b]Note:[/b] Data such as navigation polygons and collision shapes are not "
+"immediately updated for performance reasons.\n"
+"If you need these to be immediately updated, you can call [method "
+"update_dirty_quadrants]."
+msgstr ""
+
+#: doc/classes/TileMap.xml:205
+msgid "Sets the given collision layer bit."
+msgstr ""
+
+#: doc/classes/TileMap.xml:216
+msgid "Sets the given collision mask bit."
+msgstr ""
+
+#: doc/classes/TileMap.xml:225
+msgid ""
+"Applies autotiling rules to the cell (and its adjacent cells) referenced by "
+"its grid-based X and Y coordinates."
+msgstr ""
+
+#: doc/classes/TileMap.xml:236
+msgid ""
+"Applies autotiling rules to the cells in the given region (specified by grid-"
+"based X and Y coordinates).\n"
+"Calling with invalid (or missing) parameters applies autotiling rules for "
+"the entire tilemap."
+msgstr ""
+
+#: doc/classes/TileMap.xml:244
+msgid ""
+"Updates the tile map's quadrants, allowing things such as navigation and "
+"collision shapes to be immediately used if modified."
+msgstr ""
+
+#: doc/classes/TileMap.xml:253
+msgid ""
+"Returns the tilemap (grid-based) coordinates corresponding to the given "
+"local position."
+msgstr ""
+
+#: doc/classes/TileMap.xml:259
+msgid "If [code]true[/code], the cell's UVs will be clipped."
+msgstr ""
+
+#: doc/classes/TileMap.xml:262
+msgid "The custom [Transform2D] to be applied to the TileMap's cells."
+msgstr ""
+
+#: doc/classes/TileMap.xml:265
+msgid ""
+"Amount to offset alternating tiles. See [enum HalfOffset] for possible "
+"values."
+msgstr ""
+
+#: doc/classes/TileMap.xml:268
+msgid ""
+"The TileMap's quadrant size. Optimizes drawing by batching, using chunks of "
+"this size."
+msgstr ""
+
+#: doc/classes/TileMap.xml:271
+msgid "The TileMap's cell size."
+msgstr ""
+
+#: doc/classes/TileMap.xml:274
+msgid "Position for tile origin. See [enum TileOrigin] for possible values."
+msgstr ""
+
+#: doc/classes/TileMap.xml:277
+msgid ""
+"If [code]true[/code], the TileMap's children will be drawn in order of their "
+"Y coordinate."
+msgstr ""
+
+#: doc/classes/TileMap.xml:280
+msgid ""
+"If [code]true[/code], the textures will be centered in the middle of each "
+"tile. This is useful for certain isometric or top-down modes when textures "
+"are made larger or smaller than the tiles (e.g. to avoid flickering on tile "
+"edges). The offset is still applied, but from the center of the tile. If "
+"used, [member compatibility_mode] is ignored.\n"
+"If [code]false[/code], the texture position start in the top-left corner "
+"unless [member compatibility_mode] is enabled."
+msgstr ""
+
+#: doc/classes/TileMap.xml:284
+msgid ""
+"Bounce value for static body collisions (see [code]collision_use_kinematic[/"
+"code])."
+msgstr ""
+
+#: doc/classes/TileMap.xml:287
+msgid ""
+"Friction value for static body collisions (see "
+"[code]collision_use_kinematic[/code])."
+msgstr ""
+
+#: doc/classes/TileMap.xml:290
+msgid "The collision layer(s) for all colliders in the TileMap."
+msgstr ""
+
+#: doc/classes/TileMap.xml:293
+msgid "The collision mask(s) for all colliders in the TileMap."
+msgstr ""
+
+#: doc/classes/TileMap.xml:296
+msgid ""
+"If [code]true[/code], TileMap collisions will be handled as a kinematic "
+"body. If [code]false[/code], collisions will be handled as static body."
+msgstr ""
+
+#: doc/classes/TileMap.xml:299
+msgid ""
+"If [code]true[/code], this tilemap's collision shape will be added to the "
+"collision shape of the parent. The parent has to be a [CollisionObject2D]."
+msgstr ""
+
+#: doc/classes/TileMap.xml:302
+msgid ""
+"If [code]true[/code], the compatibility with the tilemaps made in Godot 3.1 "
+"or earlier is maintained (textures move when the tile origin changes and "
+"rotate if the texture size is not homogeneous). This mode presents problems "
+"when doing [code]flip_h[/code], [code]flip_v[/code] and [code]transpose[/"
+"code] tile operations on non-homogeneous isometric tiles (e.g. 2:1), in "
+"which the texture could not coincide with the collision, thus it is not "
+"recommended for isometric or non-square tiles.\n"
+"If [code]false[/code], the textures do not move when doing [code]flip_h[/"
+"code], [code]flip_v[/code] operations if no offset is used, nor when "
+"changing the tile origin.\n"
+"The compatibility mode doesn't work with the [member centered_textures] "
+"option, because displacing textures with the [member cell_tile_origin] "
+"option or in irregular tiles is not relevant when centering those textures."
+msgstr ""
+
+#: doc/classes/TileMap.xml:307
+msgid "The TileMap orientation mode. See [enum Mode] for possible values."
+msgstr ""
+
+#: doc/classes/TileMap.xml:310
+msgid ""
+"The light mask assigned to all light occluders in the TileMap. The TileSet's "
+"light occluders will cast shadows only from Light2D(s) that have the same "
+"light mask(s)."
+msgstr ""
+
+#: doc/classes/TileMap.xml:313
+msgid "The assigned [TileSet]."
+msgstr ""
+
+#: doc/classes/TileMap.xml:319
+msgid "Emitted when a tilemap setting has changed."
+msgstr ""
+
+#: doc/classes/TileMap.xml:325
+msgid "Returned when a cell doesn't exist."
+msgstr ""
+
+#: doc/classes/TileMap.xml:328
+msgid "Orthogonal orientation mode."
+msgstr ""
+
+#: doc/classes/TileMap.xml:331
+msgid "Isometric orientation mode."
+msgstr ""
+
+#: doc/classes/TileMap.xml:334
+msgid "Custom orientation mode."
+msgstr ""
+
+#: doc/classes/TileMap.xml:337
+msgid "Half offset on the X coordinate."
+msgstr ""
+
+#: doc/classes/TileMap.xml:340
+msgid "Half offset on the Y coordinate."
+msgstr ""
+
+#: doc/classes/TileMap.xml:343
+msgid "Half offset disabled."
+msgstr ""
+
+#: doc/classes/TileMap.xml:346
+msgid "Half offset on the X coordinate (negative)."
+msgstr ""
+
+#: doc/classes/TileMap.xml:349
+msgid "Half offset on the Y coordinate (negative)."
+msgstr ""
+
+#: doc/classes/TileMap.xml:352
+msgid "Tile origin at its top-left corner."
+msgstr ""
+
+#: doc/classes/TileMap.xml:355
+msgid "Tile origin at its center."
+msgstr ""
+
+#: doc/classes/TileMap.xml:358
+msgid "Tile origin at its bottom-left corner."
+msgstr ""
+
+#: doc/classes/TileSet.xml:4
+msgid "Tile library for tilemaps."
+msgstr ""
+
+#: doc/classes/TileSet.xml:7
+msgid ""
+"A TileSet is a library of tiles for a [TileMap]. It contains a list of "
+"tiles, each consisting of a sprite and optional collision shapes.\n"
+"Tiles are referenced by a unique integer ID."
+msgstr ""
+
+#: doc/classes/TileSet.xml:47
+msgid ""
+"Determines when the auto-tiler should consider two different auto-tile IDs "
+"to be bound together.\n"
+"[b]Note:[/b] [code]neighbor_id[/code] will be [code]-1[/code] ([constant "
+"TileMap.INVALID_CELL]) when checking a tile against an empty neighbor tile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:57
+msgid "Clears all bitmask information of the autotile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:68
+msgid ""
+"Returns the bitmask of the subtile from an autotile given its coordinates.\n"
+"The value is the sum of the values in [enum AutotileBindings] present in the "
+"subtile (e.g. a value of 5 means the bitmask has bindings in both the top "
+"left and top right)."
+msgstr ""
+
+#: doc/classes/TileSet.xml:78
+msgid "Returns the [enum BitmaskMode] of the autotile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:87
+msgid ""
+"Returns the subtile that's being used as an icon in an atlas/autotile given "
+"its coordinates.\n"
+"The subtile defined as the icon will be used as a fallback when the atlas/"
+"autotile's bitmask information is incomplete. It will also be used to "
+"represent it in the TileSet editor."
+msgstr ""
+
+#: doc/classes/TileSet.xml:99
+msgid ""
+"Returns the light occluder of the subtile from an atlas/autotile given its "
+"coordinates."
+msgstr ""
+
+#: doc/classes/TileSet.xml:110
+msgid ""
+"Returns the navigation polygon of the subtile from an atlas/autotile given "
+"its coordinates."
+msgstr ""
+
+#: doc/classes/TileSet.xml:119
+msgid "Returns the size of the subtiles in an atlas/autotile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:128
+msgid "Returns the spacing between subtiles of the atlas/autotile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:139
+msgid ""
+"Returns the priority of the subtile from an autotile given its coordinates.\n"
+"When more than one subtile has the same bitmask value, one of them will be "
+"picked randomly for drawing. Its priority will define how often it will be "
+"picked."
+msgstr ""
+
+#: doc/classes/TileSet.xml:151
+msgid ""
+"Returns the drawing index of the subtile from an atlas/autotile given its "
+"coordinates."
+msgstr ""
+
+#: doc/classes/TileSet.xml:164
+msgid ""
+"Sets the bitmask of the subtile from an autotile given its coordinates.\n"
+"The value is the sum of the values in [enum AutotileBindings] present in the "
+"subtile (e.g. a value of 5 means the bitmask has bindings in both the top "
+"left and top right)."
+msgstr ""
+
+#: doc/classes/TileSet.xml:176
+msgid "Sets the [enum BitmaskMode] of the autotile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:187
+msgid ""
+"Sets the subtile that will be used as an icon in an atlas/autotile given its "
+"coordinates.\n"
+"The subtile defined as the icon will be used as a fallback when the atlas/"
+"autotile's bitmask information is incomplete. It will also be used to "
+"represent it in the TileSet editor."
+msgstr ""
+
+#: doc/classes/TileSet.xml:201
+msgid ""
+"Sets the light occluder of the subtile from an atlas/autotile given its "
+"coordinates."
+msgstr ""
+
+#: doc/classes/TileSet.xml:214
+msgid ""
+"Sets the navigation polygon of the subtile from an atlas/autotile given its "
+"coordinates."
+msgstr ""
+
+#: doc/classes/TileSet.xml:225
+msgid "Sets the size of the subtiles in an atlas/autotile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:236
+msgid "Sets the spacing between subtiles of the atlas/autotile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:249
+msgid ""
+"Sets the priority of the subtile from an autotile given its coordinates.\n"
+"When more than one subtile has the same bitmask value, one of them will be "
+"picked randomly for drawing. Its priority will define how often it will be "
+"picked."
+msgstr ""
+
+#: doc/classes/TileSet.xml:263
+msgid ""
+"Sets the drawing index of the subtile from an atlas/autotile given its "
+"coordinates."
+msgstr ""
+
+#: doc/classes/TileSet.xml:270
+msgid "Clears all tiles."
+msgstr ""
+
+#: doc/classes/TileSet.xml:279
+msgid "Creates a new tile with the given ID."
+msgstr ""
+
+#: doc/classes/TileSet.xml:288
+msgid "Returns the first tile matching the given name."
+msgstr ""
+
+#: doc/classes/TileSet.xml:295
+msgid ""
+"Returns the ID following the last currently used ID, useful when creating a "
+"new tile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:302
+msgid "Returns an array of all currently used tile IDs."
+msgstr ""
+
+#: doc/classes/TileSet.xml:311
+msgid "Removes the given tile ID."
+msgstr ""
+
+#: doc/classes/TileSet.xml:328
+msgid "Adds a shape to the tile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:337
+msgid "Returns the tile's light occluder."
+msgstr ""
+
+#: doc/classes/TileSet.xml:346
+msgid "Returns the tile's material."
+msgstr ""
+
+#: doc/classes/TileSet.xml:355
+msgid "Returns the tile's modulation color."
+msgstr ""
+
+#: doc/classes/TileSet.xml:364
+msgid "Returns the tile's name."
+msgstr ""
+
+#: doc/classes/TileSet.xml:373
+msgid "Returns the navigation polygon of the tile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:382
+msgid "Returns the offset of the tile's navigation polygon."
+msgstr ""
+
+#: doc/classes/TileSet.xml:391
+msgid "Returns the tile's normal map texture."
+msgstr ""
+
+#: doc/classes/TileSet.xml:400
+msgid "Returns the offset of the tile's light occluder."
+msgstr ""
+
+#: doc/classes/TileSet.xml:409
+msgid "Returns the tile sub-region in the texture."
+msgstr ""
+
+#: doc/classes/TileSet.xml:420
+msgid "Returns a tile's given shape."
+msgstr ""
+
+#: doc/classes/TileSet.xml:429
+msgid "Returns the number of shapes assigned to a tile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:440
+msgid "Returns the offset of a tile's shape."
+msgstr ""
+
+#: doc/classes/TileSet.xml:451
+msgid "Returns the one-way collision value of a tile's shape."
+msgstr ""
+
+#: doc/classes/TileSet.xml:472
+msgid "Returns the [Transform2D] of a tile's shape."
+msgstr ""
+
+#: doc/classes/TileSet.xml:481
+msgid ""
+"Returns an array of dictionaries describing the tile's shapes.\n"
+"[b]Dictionary structure in the array returned by this method:[/b]\n"
+"[codeblock]\n"
+"{\n"
+" \"autotile_coord\": Vector2,\n"
+" \"one_way\": bool,\n"
+" \"one_way_margin\": int,\n"
+" \"shape\": CollisionShape2D,\n"
+" \"shape_transform\": Transform2D,\n"
+"}\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/TileSet.xml:500
+msgid "Returns the tile's texture."
+msgstr ""
+
+#: doc/classes/TileSet.xml:509
+msgid "Returns the texture offset of the tile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:518
+msgid "Returns the tile's [enum TileMode]."
+msgstr ""
+
+#: doc/classes/TileSet.xml:527
+msgid "Returns the tile's Z index (drawing layer)."
+msgstr ""
+
+#: doc/classes/TileSet.xml:538
+msgid "Sets a light occluder for the tile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:549
+msgid "Sets the tile's material."
+msgstr ""
+
+#: doc/classes/TileSet.xml:560
+msgid "Sets the tile's modulation color."
+msgstr ""
+
+#: doc/classes/TileSet.xml:571
+msgid "Sets the tile's name."
+msgstr ""
+
+#: doc/classes/TileSet.xml:582
+msgid "Sets the tile's navigation polygon."
+msgstr ""
+
+#: doc/classes/TileSet.xml:593
+msgid "Sets an offset for the tile's navigation polygon."
+msgstr ""
+
+#: doc/classes/TileSet.xml:604
+msgid ""
+"Sets the tile's normal map texture.\n"
+"[b]Note:[/b] Godot expects the normal map to use X+, Y-, and Z+ coordinates. "
+"See [url=http://wiki.polycount.com/wiki/"
+"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]this page[/url] for "
+"a comparison of normal map coordinates expected by popular engines."
+msgstr ""
+
+#: doc/classes/TileSet.xml:616
+msgid "Sets an offset for the tile's light occluder."
+msgstr ""
+
+#: doc/classes/TileSet.xml:627
+msgid ""
+"Sets the tile's sub-region in the texture. This is common in texture atlases."
+msgstr ""
+
+#: doc/classes/TileSet.xml:640
+msgid "Sets a shape for the tile, enabling collision."
+msgstr ""
+
+#: doc/classes/TileSet.xml:653
+msgid "Sets the offset of a tile's shape."
+msgstr ""
+
+#: doc/classes/TileSet.xml:666
+msgid "Enables one-way collision on a tile's shape."
+msgstr ""
+
+#: doc/classes/TileSet.xml:691
+msgid "Sets a [Transform2D] on a tile's shape."
+msgstr ""
+
+#: doc/classes/TileSet.xml:702
+msgid "Sets an array of shapes for the tile, enabling collision."
+msgstr ""
+
+#: doc/classes/TileSet.xml:713
+msgid "Sets the tile's texture."
+msgstr ""
+
+#: doc/classes/TileSet.xml:724
+msgid "Sets the tile's texture offset."
+msgstr ""
+
+#: doc/classes/TileSet.xml:735
+msgid "Sets the tile's [enum TileMode]."
+msgstr ""
+
+#: doc/classes/TileSet.xml:746
+msgid "Sets the tile's drawing index."
+msgstr ""
+
+#: doc/classes/Timer.xml:4
+msgid "A countdown timer."
+msgstr ""
+
+#: doc/classes/Timer.xml:7
+msgid ""
+"Counts down a specified interval and emits a signal on reaching 0. Can be "
+"set to repeat or \"one-shot\" mode.\n"
+"[b]Note:[/b] To create an one-shot timer without instantiating a node, use "
+"[method SceneTree.create_timer]."
+msgstr ""
+
+#: doc/classes/Timer.xml:17
+msgid "Returns [code]true[/code] if the timer is stopped."
+msgstr ""
+
+#: doc/classes/Timer.xml:26
+msgid ""
+"Starts the timer. Sets [code]wait_time[/code] to [code]time_sec[/code] if "
+"[code]time_sec > 0[/code]. This also resets the remaining time to "
+"[code]wait_time[/code].\n"
+"[b]Note:[/b] this method will not resume a paused timer. See [member paused]."
+msgstr ""
+
+#: doc/classes/Timer.xml:34
+msgid "Stops the timer."
+msgstr ""
+
+#: doc/classes/Timer.xml:40
+msgid ""
+"If [code]true[/code], the timer will automatically start when entering the "
+"scene tree.\n"
+"[b]Note:[/b] This property is automatically set to [code]false[/code] after "
+"the timer enters the scene tree and starts."
+msgstr ""
+
+#: doc/classes/Timer.xml:44
+msgid ""
+"If [code]true[/code], the timer will stop when reaching 0. If [code]false[/"
+"code], it will restart."
+msgstr ""
+
+#: doc/classes/Timer.xml:47
+msgid ""
+"If [code]true[/code], the timer is paused and will not process until it is "
+"unpaused again, even if [method start] is called."
+msgstr ""
+
+#: doc/classes/Timer.xml:50
+msgid "Processing mode. See [enum TimerProcessMode]."
+msgstr ""
+
+#: doc/classes/Timer.xml:53
+msgid ""
+"The timer's remaining time in seconds. Returns 0 if the timer is inactive.\n"
+"[b]Note:[/b] You cannot set this value. To change the timer's remaining "
+"time, use [method start]."
+msgstr ""
+
+#: doc/classes/Timer.xml:57
+msgid "Wait time in seconds."
+msgstr ""
+
+#: doc/classes/Timer.xml:69
+msgid ""
+"Update the timer during the physics step at each frame (fixed framerate "
+"processing)."
+msgstr ""
+
+#: doc/classes/Timer.xml:72
+msgid "Update the timer during the idle time at each frame."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:4
+msgid "Button for touch screen devices."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:7
+msgid ""
+"Button for touch screen devices. You can set it to be visible on all "
+"screens, or only on touch devices."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:16
+msgid "Returns [code]true[/code] if this button is currently pressed."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:22
+msgid "The button's action. Actions can be handled with [InputEventAction]."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:25
+msgid "The button's bitmask."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:28
+msgid "The button's texture for the normal state."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:31
+msgid "If [code]true[/code], pass-by presses are enabled."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:34
+msgid "The button's texture for the pressed state."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:37
+msgid "The button's shape."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:40
+msgid ""
+"If [code]true[/code], the button's shape is centered in the provided "
+"texture. If no texture is used, this property has no effect."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:43
+msgid "If [code]true[/code], the button's shape is visible."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:46
+msgid ""
+"The button's visibility mode. See [enum VisibilityMode] for possible values."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:52
+msgid "Emitted when the button is pressed (down)."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:57
+msgid "Emitted when the button is released (up)."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:63
+msgid "Always visible."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:66
+msgid "Visible on touch screens only."
+msgstr ""
+
+#: doc/classes/Transform.xml:4
+msgid "3D transformation (3×4 matrix)."
+msgstr ""
+
+#: doc/classes/Transform.xml:7
+msgid ""
+"3×4 matrix (3 rows, 4 columns) used for 3D linear transformations. It can "
+"represent transformations such as translation, rotation, or scaling. It "
+"consists of a [member basis] (first 3 columns) and a [Vector3] for the "
+"[member origin] (last column).\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
+msgstr ""
+
+#: doc/classes/Transform.xml:28
+msgid ""
+"Constructs a Transform from four [Vector3] values (matrix columns). Each "
+"axis corresponds to local basis vectors (some of which may be scaled)."
+msgstr ""
+
+#: doc/classes/Transform.xml:39
+msgid "Constructs a Transform from a [Basis] and [Vector3]."
+msgstr ""
+
+#: doc/classes/Transform.xml:48
+msgid "Constructs a Transform from a [Transform2D]."
+msgstr ""
+
+#: doc/classes/Transform.xml:57
+msgid ""
+"Constructs a Transform from a [Quat]. The origin will be [code]Vector3(0, 0, "
+"0)[/code]."
+msgstr ""
+
+#: doc/classes/Transform.xml:66
+msgid ""
+"Constructs the Transform from a [Basis]. The origin will be Vector3(0, 0, 0)."
+msgstr ""
+
+#: doc/classes/Transform.xml:73 doc/classes/Transform2D.xml:51
+msgid ""
+"Returns the inverse of the transform, under the assumption that the "
+"transformation is composed of rotation, scaling and translation."
+msgstr ""
+
+#: doc/classes/Transform.xml:84
+msgid ""
+"Interpolates the transform to other Transform by weight amount (on the range "
+"of 0.0 to 1.0)."
+msgstr ""
+
+#: doc/classes/Transform.xml:91
+msgid ""
+"Returns the inverse of the transform, under the assumption that the "
+"transformation is composed of rotation and translation (no scaling, use "
+"affine_inverse for transforms with scaling)."
+msgstr ""
+
+#: doc/classes/Transform.xml:100 doc/classes/Transform2D.xml:119
+msgid ""
+"Returns [code]true[/code] if this transform and [code]transform[/code] are "
+"approximately equal, by calling [code]is_equal_approx[/code] on each "
+"component."
+msgstr ""
+
+#: doc/classes/Transform.xml:111
+msgid ""
+"Returns a copy of the transform rotated such that its -Z axis points towards "
+"the [code]target[/code] position.\n"
+"The transform will first be rotated around the given [code]up[/code] vector, "
+"and then fully aligned to the target by a further rotation around an axis "
+"perpendicular to both the [code]target[/code] and [code]up[/code] vectors.\n"
+"Operations take place in global space."
+msgstr ""
+
+#: doc/classes/Transform.xml:120
+msgid ""
+"Returns the transform with the basis orthogonal (90 degrees), and normalized "
+"axis vectors."
+msgstr ""
+
+#: doc/classes/Transform.xml:131
+msgid ""
+"Rotates the transform around the given axis by the given angle (in radians), "
+"using matrix multiplication. The axis must be a normalized vector."
+msgstr ""
+
+#: doc/classes/Transform.xml:140
+msgid ""
+"Scales basis and origin of the transform by the given scale factor, using "
+"matrix multiplication."
+msgstr ""
+
+#: doc/classes/Transform.xml:149 doc/classes/Transform2D.xml:153
+msgid ""
+"Translates the transform by the given offset, relative to the transform's "
+"basis vectors.\n"
+"Unlike [method rotated] and [method scaled], this does not use matrix "
+"multiplication."
+msgstr ""
+
+#: doc/classes/Transform.xml:159
+msgid ""
+"Transforms the given [Vector3], [Plane], [AABB], or [PackedVector3Array] by "
+"this transform."
+msgstr ""
+
+#: doc/classes/Transform.xml:168
+msgid ""
+"Inverse-transforms the given [Vector3], [Plane], [AABB], or "
+"[PackedVector3Array] by this transform."
+msgstr ""
+
+#: doc/classes/Transform.xml:174
+msgid ""
+"The basis is a matrix containing 3 [Vector3] as its columns: X axis, Y axis, "
+"and Z axis. These vectors can be interpreted as the basis vectors of local "
+"coordinate system traveling with the object."
+msgstr ""
+
+#: doc/classes/Transform.xml:177
+msgid ""
+"The translation offset of the transform (column 3, the fourth column). "
+"Equivalent to array index [code]3[/code]."
+msgstr ""
+
+#: doc/classes/Transform.xml:182
+msgid ""
+"[Transform] with no translation, rotation or scaling applied. When applied "
+"to other data structures, [constant IDENTITY] performs no transformation."
+msgstr ""
+
+#: doc/classes/Transform.xml:185
+msgid "[Transform] with mirroring applied perpendicular to the YZ plane."
+msgstr ""
+
+#: doc/classes/Transform.xml:188
+msgid "[Transform] with mirroring applied perpendicular to the XZ plane."
+msgstr ""
+
+#: doc/classes/Transform.xml:191
+msgid "[Transform] with mirroring applied perpendicular to the XY plane."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:4
+msgid "2D transformation (2×3 matrix)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:7
+msgid ""
+"2×3 matrix (2 rows, 3 columns) used for 2D linear transformations. It can "
+"represent transformations such as translation, rotation, or scaling. It "
+"consists of a three [Vector2] values: [member x], [member y], and the "
+"[member origin].\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:20
+msgid "Constructs the transform from a 3D [Transform]."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:33
+msgid ""
+"Constructs the transform from 3 [Vector2] values representing [member x], "
+"[member y], and the [member origin] (the three column vectors)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:44
+msgid "Constructs the transform from a given angle (in radians) and position."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:60
+msgid ""
+"Returns a vector transformed (multiplied) by the basis matrix.\n"
+"This method does not account for translation (the origin vector)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:70
+msgid ""
+"Returns a vector transformed (multiplied) by the inverse basis matrix.\n"
+"This method does not account for translation (the origin vector)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:78
+msgid "Returns the transform's origin (translation)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:85
+msgid "Returns the transform's rotation (in radians)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:92
+msgid "Returns the scale."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:103
+msgid ""
+"Returns a transform interpolated between this transform and another by a "
+"given weight (on the range of 0.0 to 1.0)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:110
+msgid ""
+"Returns the inverse of the transform, under the assumption that the "
+"transformation is composed of rotation and translation (no scaling, use "
+"[method affine_inverse] for transforms with scaling)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:126
+msgid ""
+"Returns the transform with the basis orthogonal (90 degrees), and normalized "
+"axis vectors (scale of 1 or -1)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:135
+msgid ""
+"Rotates the transform by the given angle (in radians), using matrix "
+"multiplication."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:144
+msgid ""
+"Scales the transform by the given scale factor, using matrix multiplication."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:163
+msgid ""
+"Transforms the given [Vector2], [Rect2], or [PackedVector2Array] by this "
+"transform."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:172
+msgid ""
+"Inverse-transforms the given [Vector2], [Rect2], or [PackedVector2Array] by "
+"this transform."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:178
+msgid ""
+"The origin vector (column 2, the third column). Equivalent to array index "
+"[code]2[/code]. The origin vector represents translation."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:189
+msgid ""
+"The identity [Transform2D] with no translation, rotation or scaling applied. "
+"When applied to other data structures, [constant IDENTITY] performs no "
+"transformation."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:192
+msgid "The [Transform2D] that will flip something along the X axis."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:195
+msgid "The [Transform2D] that will flip something along the Y axis."
+msgstr ""
+
+#: doc/classes/Translation.xml:4
+msgid "Language Translation."
+msgstr ""
+
+#: doc/classes/Translation.xml:7
+msgid ""
+"Translations are resources that can be loaded and unloaded on demand. They "
+"map a string to another string."
+msgstr ""
+
+#: doc/classes/Translation.xml:10 doc/classes/TranslationServer.xml:10
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/i18n/"
+"internationalizing_games.html"
+msgstr ""
+
+#: doc/classes/Translation.xml:11 doc/classes/TranslationServer.xml:11
+msgid "https://docs.godotengine.org/en/latest/tutorials/i18n/locales.html"
+msgstr ""
+
+#: doc/classes/Translation.xml:22
+msgid "Adds a message if nonexistent, followed by its translation."
+msgstr ""
+
+#: doc/classes/Translation.xml:31
+msgid "Erases a message."
+msgstr ""
+
+#: doc/classes/Translation.xml:40
+msgid "Returns a message's translation."
+msgstr ""
+
+#: doc/classes/Translation.xml:47
+msgid "Returns the number of existing messages."
+msgstr ""
+
+#: doc/classes/Translation.xml:54
+msgid "Returns all the messages (keys)."
+msgstr ""
+
+#: doc/classes/Translation.xml:60
+msgid "The locale of the translation."
+msgstr ""
+
+#: doc/classes/TranslationServer.xml:4
+msgid "Server that manages all translations."
+msgstr ""
+
+#: doc/classes/TranslationServer.xml:7
+msgid ""
+"Server that manages all translations. Translations can be set to it and "
+"removed from it."
+msgstr ""
+
+#: doc/classes/TranslationServer.xml:20
+msgid "Adds a [Translation] resource."
+msgstr ""
+
+#: doc/classes/TranslationServer.xml:27
+msgid "Clears the server from all translations."
+msgstr ""
+
+#: doc/classes/TranslationServer.xml:34
+msgid "Returns an Array of all loaded locales of the game."
+msgstr ""
+
+#: doc/classes/TranslationServer.xml:41
+msgid "Returns the current locale of the game."
+msgstr ""
+
+#: doc/classes/TranslationServer.xml:50
+msgid ""
+"Returns a locale's language and its variant (e.g. [code]\"en_US\"[/code] "
+"would return [code]\"English (United States)\"[/code])."
+msgstr ""
+
+#: doc/classes/TranslationServer.xml:59
+msgid "Removes the given translation from the server."
+msgstr ""
+
+#: doc/classes/TranslationServer.xml:68
+msgid "Sets the locale of the game."
+msgstr ""
+
+#: doc/classes/TranslationServer.xml:77
+msgid "Returns the current locale's translation for the given message (key)."
+msgstr ""
+
+#: doc/classes/Tree.xml:4
+msgid "Control to show a tree of items."
+msgstr ""
+
+#: doc/classes/Tree.xml:7
+msgid ""
+"This shows a tree of items that can be selected, expanded and collapsed. The "
+"tree can have multiple columns with custom controls like text editing, "
+"buttons and popups. It can be useful for structured displays and "
+"interactions.\n"
+"Trees are built via code, using [TreeItem] objects to create the structure. "
+"They have a single root but multiple roots can be simulated if a dummy "
+"hidden root is added.\n"
+"[codeblock]\n"
+"func _ready():\n"
+" var tree = Tree.new()\n"
+" var root = tree.create_item()\n"
+" tree.set_hide_root(true)\n"
+" var child1 = tree.create_item(root)\n"
+" var child2 = tree.create_item(root)\n"
+" var subchild1 = tree.create_item(child1)\n"
+" subchild1.set_text(0, \"Subchild1\")\n"
+"[/codeblock]\n"
+"To iterate over all the [TreeItem] objects in a [Tree] object, use [method "
+"TreeItem.get_next] and [method TreeItem.get_children] after getting the root "
+"through [method get_root]. You can use [method Object.free] on a [TreeItem] "
+"to remove it from the [Tree]."
+msgstr ""
+
+#: doc/classes/Tree.xml:28
+msgid "Returns [code]true[/code] if the column titles are being shown."
+msgstr ""
+
+#: doc/classes/Tree.xml:35
+msgid "Clears the tree. This removes all items."
+msgstr ""
+
+#: doc/classes/Tree.xml:46
+msgid ""
+"Creates an item in the tree and adds it as a child of [code]parent[/code].\n"
+"If [code]parent[/code] is [code]null[/code], the root item will be the "
+"parent, or the new item will be the root itself if the tree is empty.\n"
+"The new item will be the [code]idx[/code]th child of parent, or it will be "
+"the last child if there are not enough siblings."
+msgstr ""
+
+#: doc/classes/Tree.xml:55
+msgid ""
+"Makes the currently focused cell visible.\n"
+"This will scroll the tree if necessary. In [constant SELECT_ROW] mode, this "
+"will not do horizontal scrolling, as all the cells in the selected row is "
+"focused logically.\n"
+"[b]Note:[/b] Despite the name of this method, the focus cursor itself is "
+"only visible in [constant SELECT_MULTI] mode."
+msgstr ""
+
+#: doc/classes/Tree.xml:66
+msgid ""
+"Returns the column index at [code]position[/code], or -1 if no item is there."
+msgstr ""
+
+#: doc/classes/Tree.xml:75
+msgid "Returns the column's title."
+msgstr ""
+
+#: doc/classes/Tree.xml:84
+msgid "Returns the column's width in pixels."
+msgstr ""
+
+#: doc/classes/Tree.xml:91
+msgid ""
+"Returns the rectangle for custom popups. Helper to create custom cell "
+"controls that display a popup. See [method TreeItem.set_cell_mode]."
+msgstr ""
+
+#: doc/classes/Tree.xml:100
+msgid ""
+"Returns the drop section at [code]position[/code], or -100 if no item is "
+"there.\n"
+"Values -1, 0, or 1 will be returned for the \"above item\", \"on item\", and "
+"\"below item\" drop sections, respectively. See [enum DropModeFlags] for a "
+"description of each drop section.\n"
+"To get the item which the returned drop section is relative to, use [method "
+"get_item_at_position]."
+msgstr ""
+
+#: doc/classes/Tree.xml:109
+msgid ""
+"Returns the currently edited item. This is only available for custom cell "
+"mode."
+msgstr ""
+
+#: doc/classes/Tree.xml:116
+msgid ""
+"Returns the column for the currently edited item. This is only available for "
+"custom cell mode."
+msgstr ""
+
+#: doc/classes/Tree.xml:127
+msgid ""
+"Returns the rectangle area for the specified item. If [code]column[/code] is "
+"specified, only get the position and size of that column, otherwise get the "
+"rectangle containing all columns."
+msgstr ""
+
+#: doc/classes/Tree.xml:136
+msgid ""
+"Returns the tree item at the specified position (relative to the tree origin "
+"position)."
+msgstr ""
+
+#: doc/classes/Tree.xml:145
+msgid ""
+"Returns the next selected item after the given one, or [code]null[/code] if "
+"the end is reached.\n"
+"If [code]from[/code] is [code]null[/code], this returns the first selected "
+"item."
+msgstr ""
+
+#: doc/classes/Tree.xml:153
+msgid "Returns the last pressed button's index."
+msgstr ""
+
+#: doc/classes/Tree.xml:160
+msgid ""
+"Returns the tree's root item, or [code]null[/code] if the tree is empty."
+msgstr ""
+
+#: doc/classes/Tree.xml:167
+msgid "Returns the current scrolling position."
+msgstr ""
+
+#: doc/classes/Tree.xml:174
+msgid ""
+"Returns the currently focused item, or [code]null[/code] if no item is "
+"focused.\n"
+"In [constant SELECT_ROW] and [constant SELECT_SINGLE] modes, the focused "
+"item is same as the selected item. In [constant SELECT_MULTI] mode, the "
+"focused item is the item under the focus cursor, not necessarily selected.\n"
+"To get the currently selected item(s), use [method get_next_selected]."
+msgstr ""
+
+#: doc/classes/Tree.xml:183
+msgid ""
+"Returns the currently focused column, or -1 if no column is focused.\n"
+"In [constant SELECT_SINGLE] mode, the focused column is the selected column. "
+"In [constant SELECT_ROW] mode, the focused column is always 0 if any item is "
+"selected. In [constant SELECT_MULTI] mode, the focused column is the column "
+"under the focus cursor, and there are not necessarily any column selected.\n"
+"To tell whether a column of an item is selected, use [method TreeItem."
+"is_selected]."
+msgstr ""
+
+#: doc/classes/Tree.xml:196
+msgid ""
+"If [code]true[/code], the column will have the \"Expand\" flag of [Control]. "
+"Columns that have the \"Expand\" flag will use their \"min_width\" in a "
+"similar fashion to [member Control.size_flags_stretch_ratio]."
+msgstr ""
+
+#: doc/classes/Tree.xml:207
+msgid ""
+"Sets the minimum width of a column. Columns that have the \"Expand\" flag "
+"will use their \"min_width\" in a similar fashion to [member Control."
+"size_flags_stretch_ratio]."
+msgstr ""
+
+#: doc/classes/Tree.xml:218
+msgid "Sets the title of a column."
+msgstr ""
+
+#: doc/classes/Tree.xml:227
+msgid "If [code]true[/code], column titles are visible."
+msgstr ""
+
+#: doc/classes/Tree.xml:233
+msgid ""
+"If [code]true[/code], the currently selected cell may be selected again."
+msgstr ""
+
+#: doc/classes/Tree.xml:236
+msgid "If [code]true[/code], a right mouse button click can select items."
+msgstr ""
+
+#: doc/classes/Tree.xml:239
+msgid "The number of columns."
+msgstr ""
+
+#: doc/classes/Tree.xml:242
+msgid ""
+"The drop mode as an OR combination of flags. See [enum DropModeFlags] "
+"constants. Once dropping is done, reverts to [constant DROP_MODE_DISABLED]. "
+"Setting this during [method Control.can_drop_data] is recommended.\n"
+"This controls the drop sections, i.e. the decision and drawing of possible "
+"drop locations based on the mouse position."
+msgstr ""
+
+#: doc/classes/Tree.xml:247
+msgid "If [code]true[/code], the folding arrow is hidden."
+msgstr ""
+
+#: doc/classes/Tree.xml:250
+msgid "If [code]true[/code], the tree's root is hidden."
+msgstr ""
+
+#: doc/classes/Tree.xml:254
+msgid ""
+"Allows single or multiple selection. See the [enum SelectMode] constants."
+msgstr ""
+
+#: doc/classes/Tree.xml:266
+msgid ""
+"Emitted when a button on the tree was pressed (see [method TreeItem."
+"add_button])."
+msgstr ""
+
+#: doc/classes/Tree.xml:271
+msgid "Emitted when a cell is selected."
+msgstr ""
+
+#: doc/classes/Tree.xml:278
+msgid "Emitted when a column's title is pressed."
+msgstr ""
+
+#: doc/classes/Tree.xml:285
+msgid ""
+"Emitted when a cell with the [constant TreeItem.CELL_MODE_CUSTOM] is clicked "
+"to be edited."
+msgstr ""
+
+#: doc/classes/Tree.xml:292
+msgid ""
+"Emitted when the right mouse button is pressed in the empty space of the "
+"tree."
+msgstr ""
+
+#: doc/classes/Tree.xml:299
+msgid ""
+"Emitted when the right mouse button is pressed if right mouse button "
+"selection is active and the tree is empty."
+msgstr ""
+
+#: doc/classes/Tree.xml:304
+msgid "Emitted when an item's label is double-clicked."
+msgstr ""
+
+#: doc/classes/Tree.xml:311
+msgid "Emitted when an item is collapsed by a click on the folding arrow."
+msgstr ""
+
+#: doc/classes/Tree.xml:316
+msgid ""
+"Emitted when a custom button is pressed (i.e. in a [constant TreeItem."
+"CELL_MODE_CUSTOM] mode cell)."
+msgstr ""
+
+#: doc/classes/Tree.xml:321
+msgid "Emitted when an item's icon is double-clicked."
+msgstr ""
+
+#: doc/classes/Tree.xml:326
+msgid "Emitted when an item is edited."
+msgstr ""
+
+#: doc/classes/Tree.xml:331
+msgid "Emitted when an item is edited using the right mouse button."
+msgstr ""
+
+#: doc/classes/Tree.xml:338
+msgid "Emitted when an item is selected with the right mouse button."
+msgstr ""
+
+#: doc/classes/Tree.xml:343
+msgid "Emitted when an item is selected."
+msgstr ""
+
+#: doc/classes/Tree.xml:354
+msgid ""
+"Emitted instead of [code]item_selected[/code] if [code]select_mode[/code] is "
+"[constant SELECT_MULTI]."
+msgstr ""
+
+#: doc/classes/Tree.xml:359
+msgid "Emitted when a left mouse button click does not select any item."
+msgstr ""
+
+#: doc/classes/Tree.xml:365
+msgid ""
+"Allows selection of a single cell at a time. From the perspective of items, "
+"only a single item is allowed to be selected. And there is only one column "
+"selected in the selected item.\n"
+"The focus cursor is always hidden in this mode, but it is positioned at the "
+"current selection, making the currently selected item the currently focused "
+"item."
+msgstr ""
+
+#: doc/classes/Tree.xml:369
+msgid ""
+"Allows selection of a single row at a time. From the perspective of items, "
+"only a single items is allowed to be selected. And all the columns are "
+"selected in the selected item.\n"
+"The focus cursor is always hidden in this mode, but it is positioned at the "
+"first column of the current selection, making the currently selected item "
+"the currently focused item."
+msgstr ""
+
+#: doc/classes/Tree.xml:373
+msgid ""
+"Allows selection of multiple cells at the same time. From the perspective of "
+"items, multiple items are allowed to be selected. And there can be multiple "
+"columns selected in each selected item.\n"
+"The focus cursor is visible in this mode, the item or column under the "
+"cursor is not necessarily selected."
+msgstr ""
+
+#: doc/classes/Tree.xml:377
+msgid ""
+"Disables all drop sections, but still allows to detect the \"on item\" drop "
+"section by [method get_drop_section_at_position].\n"
+"[b]Note:[/b] This is the default flag, it has no effect when combined with "
+"other flags."
+msgstr ""
+
+#: doc/classes/Tree.xml:381
+msgid ""
+"Enables the \"on item\" drop section. This drop section covers the entire "
+"item.\n"
+"When combined with [constant DROP_MODE_INBETWEEN], this drop section halves "
+"the height and stays centered vertically."
+msgstr ""
+
+#: doc/classes/Tree.xml:385
+msgid ""
+"Enables \"above item\" and \"below item\" drop sections. The \"above item\" "
+"drop section covers the top half of the item, and the \"below item\" drop "
+"section covers the bottom half.\n"
+"When combined with [constant DROP_MODE_ON_ITEM], these drop sections halves "
+"the height and stays on top / bottom accordingly."
+msgstr ""
+
+#: doc/classes/Tree.xml:391
+msgid "The arrow icon used when a foldable item is not collapsed."
+msgstr ""
+
+#: doc/classes/Tree.xml:394
+msgid "The arrow icon used when a foldable item is collapsed."
+msgstr ""
+
+#: doc/classes/Tree.xml:397
+msgid ""
+"Default [StyleBox] for the [Tree], i.e. used when the control is not being "
+"focused."
+msgstr ""
+
+#: doc/classes/Tree.xml:400
+msgid "[StyleBox] used when the [Tree] is being focused."
+msgstr ""
+
+#: doc/classes/Tree.xml:403
+msgid "The horizontal space between each button in a cell."
+msgstr ""
+
+#: doc/classes/Tree.xml:406
+msgid "[StyleBox] used when a button in the tree is pressed."
+msgstr ""
+
+#: doc/classes/Tree.xml:409
+msgid ""
+"The check icon to display when the [constant TreeItem.CELL_MODE_CHECK] mode "
+"cell is checked."
+msgstr ""
+
+#: doc/classes/Tree.xml:412
+msgid "[StyleBox] used for the cursor, when the [Tree] is being focused."
+msgstr ""
+
+#: doc/classes/Tree.xml:415
+msgid "[StyleBox] used for the cursor, when the [Tree] is not being focused."
+msgstr ""
+
+#: doc/classes/Tree.xml:418
+msgid ""
+"Default [StyleBox] for a [constant TreeItem.CELL_MODE_CUSTOM] mode cell."
+msgstr ""
+
+#: doc/classes/Tree.xml:421
+msgid ""
+"Text [Color] for a [constant TreeItem.CELL_MODE_CUSTOM] mode cell when it's "
+"hovered."
+msgstr ""
+
+#: doc/classes/Tree.xml:424
+msgid ""
+"[StyleBox] for a [constant TreeItem.CELL_MODE_CUSTOM] mode cell when it's "
+"hovered."
+msgstr ""
+
+#: doc/classes/Tree.xml:427
+msgid ""
+"[StyleBox] for a [constant TreeItem.CELL_MODE_CUSTOM] mode cell when it's "
+"pressed."
+msgstr ""
+
+#: doc/classes/Tree.xml:430
+msgid ""
+"Draws the guidelines if not zero, this acts as a boolean. The guideline is a "
+"horizontal line drawn at the bottom of each item."
+msgstr ""
+
+#: doc/classes/Tree.xml:433
+msgid ""
+"Draws the relationship lines if not zero, this acts as a boolean. "
+"Relationship lines are drawn at the start of child items to show hierarchy."
+msgstr ""
+
+#: doc/classes/Tree.xml:436
+msgid ""
+"[Color] used to draw possible drop locations. See [enum DropModeFlags] "
+"constants for further description of drop locations."
+msgstr ""
+
+#: doc/classes/Tree.xml:448
+msgid "[Color] of the guideline."
+msgstr ""
+
+#: doc/classes/Tree.xml:451
+msgid ""
+"The horizontal space between item cells. This is also used as the margin at "
+"the start of an item when folding is disabled."
+msgstr ""
+
+#: doc/classes/Tree.xml:454
+msgid ""
+"The horizontal margin at the start of an item. This is used when folding is "
+"enabled for the item."
+msgstr ""
+
+#: doc/classes/Tree.xml:457
+msgid "[Color] of the relationship lines."
+msgstr ""
+
+#: doc/classes/Tree.xml:460
+msgid ""
+"The maximum distance between the mouse cursor and the control's border to "
+"trigger border scrolling when dragging."
+msgstr ""
+
+#: doc/classes/Tree.xml:463
+msgid "The speed of border scrolling."
+msgstr ""
+
+#: doc/classes/Tree.xml:466
+msgid ""
+"The arrow icon to display for the [constant TreeItem.CELL_MODE_RANGE] mode "
+"cell."
+msgstr ""
+
+#: doc/classes/Tree.xml:469
+msgid ""
+"[StyleBox] for the selected items, used when the [Tree] is not being focused."
+msgstr ""
+
+#: doc/classes/Tree.xml:472
+msgid ""
+"[StyleBox] for the selected items, used when the [Tree] is being focused."
+msgstr ""
+
+#: doc/classes/Tree.xml:475
+msgid "Default text [Color] of the title button."
+msgstr ""
+
+#: doc/classes/Tree.xml:478
+msgid "[Font] of the title button's text."
+msgstr ""
+
+#: doc/classes/Tree.xml:481
+msgid "[StyleBox] used when the title button is being hovered."
+msgstr ""
+
+#: doc/classes/Tree.xml:484
+msgid "Default [StyleBox] for the title button."
+msgstr ""
+
+#: doc/classes/Tree.xml:487
+msgid "[StyleBox] used when the title button is being pressed."
+msgstr ""
+
+#: doc/classes/Tree.xml:490
+msgid ""
+"The check icon to display when the [constant TreeItem.CELL_MODE_CHECK] mode "
+"cell is unchecked."
+msgstr ""
+
+#: doc/classes/Tree.xml:493
+msgid ""
+"The updown arrow icon to display for the [constant TreeItem.CELL_MODE_RANGE] "
+"mode cell."
+msgstr ""
+
+#: doc/classes/Tree.xml:496
+msgid ""
+"The vertical padding inside each item, i.e. the distance between the item's "
+"content and top/bottom border."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:4
+msgid "Control for a single item inside a [Tree]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:7
+msgid ""
+"Control for a single item inside a [Tree]. May have child [TreeItem]s and be "
+"styled as well as contain buttons.\n"
+"You can remove a [TreeItem] by using [method Object.free]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:27
+msgid ""
+"Adds a button with [Texture2D] [code]button[/code] at column [code]column[/"
+"code]. The [code]button_idx[/code] index is used to identify the button when "
+"calling other methods. If not specified, the next available index is used, "
+"which may be retrieved by calling [method get_button_count] immediately "
+"after this method. Optionally, the button can be [code]disabled[/code] and "
+"have a [code]tooltip[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:36
+msgid ""
+"Calls the [code]method[/code] on the actual TreeItem and its children "
+"recursively. Pass parameters as a comma separated list."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:45
+msgid "Resets the background color for the given column to default."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:54
+msgid "Resets the color for the given column to default."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:63
+msgid "Deselects the given column."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:74
+msgid ""
+"Removes the button at index [code]button_idx[/code] in column [code]column[/"
+"code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:85
+msgid ""
+"Returns the [Texture2D] of the button at index [code]button_idx[/code] in "
+"column [code]column[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:94
+msgid ""
+"Returns the number of buttons in column [code]column[/code]. May be used to "
+"get the most recently added button's index, if no index was specified."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:105
+msgid ""
+"Returns the tooltip string for the button at index [code]button_idx[/code] "
+"in column [code]column[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:114
+msgid "Returns the column's cell mode."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:121
+msgid ""
+"Returns the TreeItem's first child item or a null object if there is none."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:130
+msgid "Returns the custom background color of column [code]column[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:139
+msgid "Returns the custom color of column [code]column[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:148
+msgid "Returns [code]true[/code] if [code]expand_right[/code] is set."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:157
+msgid "Returns the given column's icon [Texture2D]. Error if no icon is set."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:166
+msgid "Returns the column's icon's maximum width."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:175
+msgid "Returns the [Color] modulating the column's icon."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:184
+msgid "Returns the icon [Texture2D] region as [Rect2]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:199
+msgid ""
+"Returns the next TreeItem in the tree or a null object if there is none."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:208
+msgid ""
+"Returns the next visible TreeItem in the tree or a null object if there is "
+"none.\n"
+"If [code]wrap[/code] is enabled, the method will wrap around to the first "
+"visible element in the tree when called on the last visible element, "
+"otherwise it returns [code]null[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:216
+msgid "Returns the parent TreeItem or a null object if there is none."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:223
+msgid ""
+"Returns the previous TreeItem in the tree or a null object if there is none."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:232
+msgid ""
+"Returns the previous visible TreeItem in the tree or a null object if there "
+"is none.\n"
+"If [code]wrap[/code] is enabled, the method will wrap around to the last "
+"visible element in the tree when called on the first visible element, "
+"otherwise it returns [code]null[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:266
+msgid "Returns the given column's text."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:275
+msgid "Returns the given column's text alignment."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:284
+msgid "Returns the given column's tooltip."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:295
+msgid ""
+"Returns [code]true[/code] if the button at index [code]button_idx[/code] for "
+"the given column is disabled."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:304
+msgid "Returns [code]true[/code] if the given column is checked."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:321
+msgid "Returns [code]true[/code] if column [code]column[/code] is editable."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:330
+msgid "Returns [code]true[/code] if column [code]column[/code] is selectable."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:339
+msgid "Returns [code]true[/code] if column [code]column[/code] is selected."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:346
+msgid "Moves this TreeItem to the bottom in the [Tree] hierarchy."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:353
+msgid "Moves this TreeItem to the top in the [Tree] hierarchy."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:362
+msgid ""
+"Removes the given child [TreeItem] and all its children from the [Tree]. "
+"Note that it doesn't free the item from memory, so it can be reused later. "
+"To completely remove a [TreeItem] use [method Object.free]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:371
+msgid "Selects the column [code]column[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:384
+msgid ""
+"Sets the given column's button [Texture2D] at index [code]button_idx[/code] "
+"to [code]button[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:397
+msgid ""
+"If [code]true[/code], disables the button at index [code]button_idx[/code] "
+"in column [code]column[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:408
+msgid ""
+"Sets the given column's cell mode to [code]mode[/code]. See [enum "
+"TreeCellMode] constants."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:419
+msgid "If [code]true[/code], the column [code]column[/code] is checked."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:442
+msgid ""
+"Sets the given column's custom background color and whether to just use it "
+"as an outline."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:453
+msgid "Sets the given column's custom color."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:466
+msgid ""
+"Sets the given column's custom draw callback to [code]callback[/code] method "
+"on [code]object[/code].\n"
+"The [code]callback[/code] should accept two arguments: the [TreeItem] that "
+"is drawn and its position and size as a [Rect2]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:478
+msgid "If [code]true[/code], column [code]column[/code] is editable."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:489
+msgid ""
+"If [code]true[/code], column [code]column[/code] is expanded to the right."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:500
+msgid "Sets the given column's icon [Texture2D]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:511
+msgid "Sets the given column's icon's maximum width."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:522
+msgid "Modulates the given column's icon with [code]modulate[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:533
+msgid "Sets the given column's icon's texture region."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:580
+msgid "If [code]true[/code], the given column is selectable."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:611
+msgid ""
+"Sets the given column's text alignment. See [enum TextAlign] for possible "
+"values."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:622
+msgid "Sets the given column's tooltip text."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:628
+msgid "If [code]true[/code], the TreeItem is collapsed."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:631
+msgid "The custom minimum height."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:634
+msgid "If [code]true[/code], folding is disabled for this TreeItem."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:639
+msgid "Cell contains a string."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:642
+msgid "Cell can be checked."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:645
+msgid "Cell contains a range."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:648
+msgid "Cell contains an icon."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:653
+msgid "Align text to the left. See [code]set_text_align()[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:656
+msgid "Center text. See [code]set_text_align()[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:659
+msgid "Align text to the right. See [code]set_text_align()[/code]."
+msgstr ""
+
+#: doc/classes/TriangleMesh.xml:4
+msgid "Internal mesh type."
+msgstr ""
+
+#: doc/classes/TriangleMesh.xml:7
+msgid "Mesh type used internally for collision calculations."
+msgstr ""
+
+#: doc/classes/Tween.xml:4
+msgid "Smoothly animates a node's properties over time."
+msgstr ""
+
+#: doc/classes/Tween.xml:7
+msgid ""
+"Tweens are useful for animations requiring a numerical property to be "
+"interpolated over a range of values. The name [i]tween[/i] comes from [i]in-"
+"betweening[/i], an animation technique where you specify [i]keyframes[/i] "
+"and the computer interpolates the frames that appear between them.\n"
+"[Tween] is more suited than [AnimationPlayer] for animations where you don't "
+"know the final values in advance. For example, interpolating a dynamically-"
+"chosen camera zoom value is best done with a [Tween] node; it would be "
+"difficult to do the same thing with an [AnimationPlayer] node.\n"
+"Here is a brief usage example that makes a 2D node move smoothly between two "
+"positions:\n"
+"[codeblock]\n"
+"var tween = get_node(\"Tween\")\n"
+"tween.interpolate_property($Node2D, \"position\",\n"
+" Vector2(0, 0), Vector2(100, 100), 1,\n"
+" Tween.TRANS_LINEAR, Tween.EASE_IN_OUT)\n"
+"tween.start()\n"
+"[/codeblock]\n"
+"Many methods require a property name, such as [code]\"position\"[/code] "
+"above. You can find the correct property name by hovering over the property "
+"in the Inspector. You can also provide the components of a property directly "
+"by using [code]\"property:component\"[/code] (eg. [code]position:x[/code]), "
+"where it would only apply to that particular component.\n"
+"Many of the methods accept [code]trans_type[/code] and [code]ease_type[/"
+"code]. The first accepts an [enum TransitionType] constant, and refers to "
+"the way the timing of the animation is handled (see [url=https://easings."
+"net/]easings.net[/url] for some examples). The second accepts an [enum "
+"EaseType] constant, and controls where the [code]trans_type[/code] is "
+"applied to the interpolation (in the beginning, the end, or both). If you "
+"don't know which transition and easing to pick, you can try different [enum "
+"TransitionType] constants with [constant EASE_IN_OUT], and use the one that "
+"looks best.\n"
+"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
+"tween_cheatsheet.png]Tween easing and transition types cheatsheet[/url]"
+msgstr ""
+
+#: doc/classes/Tween.xml:46
+msgid ""
+"Follows [code]method[/code] of [code]object[/code] and applies the returned "
+"value on [code]target_method[/code] of [code]target[/code], beginning from "
+"[code]initial_val[/code] for [code]duration[/code] seconds, [code]delay[/"
+"code] later. Methods are called with consecutive values.\n"
+"Use [enum TransitionType] for [code]trans_type[/code] and [enum EaseType] "
+"for [code]ease_type[/code] parameters. These values control the timing and "
+"direction of the interpolation. See the class description for more "
+"information."
+msgstr ""
+
+#: doc/classes/Tween.xml:72
+msgid ""
+"Follows [code]property[/code] of [code]object[/code] and applies it on "
+"[code]target_property[/code] of [code]target[/code], beginning from "
+"[code]initial_val[/code] for [code]duration[/code] seconds, [code]delay[/"
+"code] seconds later.\n"
+"Use [enum TransitionType] for [code]trans_type[/code] and [enum EaseType] "
+"for [code]ease_type[/code] parameters. These values control the timing and "
+"direction of the interpolation. See the class description for more "
+"information."
+msgstr ""
+
+#: doc/classes/Tween.xml:80
+msgid ""
+"Returns the total time needed for all tweens to end. If you have two tweens, "
+"one lasting 10 seconds and the other 20 seconds, it would return 20 seconds, "
+"as by that time all tweens would have finished."
+msgstr ""
+
+#: doc/classes/Tween.xml:103
+msgid ""
+"Calls [code]callback[/code] of [code]object[/code] after [code]duration[/"
+"code]. [code]arg1[/code]-[code]arg5[/code] are arguments to be passed to the "
+"callback."
+msgstr ""
+
+#: doc/classes/Tween.xml:126
+msgid ""
+"Calls [code]callback[/code] of [code]object[/code] after [code]duration[/"
+"code] on the main thread (similar to [method Object.call_deferred]). "
+"[code]arg1[/code]-[code]arg5[/code] are arguments to be passed to the "
+"callback."
+msgstr ""
+
+#: doc/classes/Tween.xml:149
+msgid ""
+"Animates [code]method[/code] of [code]object[/code] from [code]initial_val[/"
+"code] to [code]final_val[/code] for [code]duration[/code] seconds, "
+"[code]delay[/code] seconds later. Methods are called with consecutive "
+"values.\n"
+"Use [enum TransitionType] for [code]trans_type[/code] and [enum EaseType] "
+"for [code]ease_type[/code] parameters. These values control the timing and "
+"direction of the interpolation. See the class description for more "
+"information."
+msgstr ""
+
+#: doc/classes/Tween.xml:173
+msgid ""
+"Animates [code]property[/code] of [code]object[/code] from "
+"[code]initial_val[/code] to [code]final_val[/code] for [code]duration[/code] "
+"seconds, [code]delay[/code] seconds later. Setting the initial value to "
+"[code]null[/code] uses the current value of the property.\n"
+"Use [enum TransitionType] for [code]trans_type[/code] and [enum EaseType] "
+"for [code]ease_type[/code] parameters. These values control the timing and "
+"direction of the interpolation. See the class description for more "
+"information."
+msgstr ""
+
+#: doc/classes/Tween.xml:181
+msgid ""
+"Returns [code]true[/code] if any tweens are currently running.\n"
+"[b]Note:[/b] This method doesn't consider tweens that have ended."
+msgstr ""
+
+#: doc/classes/Tween.xml:193
+msgid ""
+"Stops animation and removes a tween, given its object and property/method "
+"pair. By default, all tweens are removed, unless [code]key[/code] is "
+"specified."
+msgstr ""
+
+#: doc/classes/Tween.xml:200
+msgid "Stops animation and removes all tweens."
+msgstr ""
+
+#: doc/classes/Tween.xml:211
+msgid ""
+"Resets a tween to its initial value (the one given, not the one before the "
+"tween), given its object and property/method pair. By default, all tweens "
+"are removed, unless [code]key[/code] is specified."
+msgstr ""
+
+#: doc/classes/Tween.xml:218
+msgid ""
+"Resets all tweens to their initial values (the ones given, not those before "
+"the tween)."
+msgstr ""
+
+#: doc/classes/Tween.xml:229
+msgid ""
+"Continues animating a stopped tween, given its object and property/method "
+"pair. By default, all tweens are resumed, unless [code]key[/code] is "
+"specified."
+msgstr ""
+
+#: doc/classes/Tween.xml:236
+msgid "Continues animating all stopped tweens."
+msgstr ""
+
+#: doc/classes/Tween.xml:245
+msgid "Sets the interpolation to the given [code]time[/code] in seconds."
+msgstr ""
+
+#: doc/classes/Tween.xml:254
+msgid ""
+"Activates/deactivates the tween. See also [method stop_all] and [method "
+"resume_all]."
+msgstr ""
+
+#: doc/classes/Tween.xml:261
+msgid "Starts the tween. You can define animations both before and after this."
+msgstr ""
+
+#: doc/classes/Tween.xml:272
+msgid ""
+"Stops a tween, given its object and property/method pair. By default, all "
+"tweens are stopped, unless [code]key[/code] is specified."
+msgstr ""
+
+#: doc/classes/Tween.xml:279
+msgid "Stops animating all tweens."
+msgstr ""
+
+#: doc/classes/Tween.xml:304
+msgid ""
+"Animates [code]method[/code] of [code]object[/code] from the value returned "
+"by [code]initial_method[/code] to [code]final_val[/code] for [code]duration[/"
+"code] seconds, [code]delay[/code] seconds later. Methods are animated by "
+"calling them with consecutive values.\n"
+"Use [enum TransitionType] for [code]trans_type[/code] and [enum EaseType] "
+"for [code]ease_type[/code] parameters. These values control the timing and "
+"direction of the interpolation. See the class description for more "
+"information."
+msgstr ""
+
+#: doc/classes/Tween.xml:330
+msgid ""
+"Animates [code]property[/code] of [code]object[/code] from the current value "
+"of the [code]initial_val[/code] property of [code]initial[/code] to "
+"[code]final_val[/code] for [code]duration[/code] seconds, [code]delay[/code] "
+"seconds later.\n"
+"Use [enum TransitionType] for [code]trans_type[/code] and [enum EaseType] "
+"for [code]ease_type[/code] parameters. These values control the timing and "
+"direction of the interpolation. See the class description for more "
+"information."
+msgstr ""
+
+#: doc/classes/Tween.xml:338
+msgid "Returns the current time of the tween."
+msgstr ""
+
+#: doc/classes/Tween.xml:344
+msgid "The tween's animation process thread. See [enum TweenProcessMode]."
+msgstr ""
+
+#: doc/classes/Tween.xml:347
+msgid ""
+"The tween's speed multiplier. For example, set it to [code]1.0[/code] for "
+"normal speed, [code]2.0[/code] for two times normal speed, or [code]0.5[/"
+"code] for half of the normal speed. A value of [code]0[/code] pauses the "
+"animation, but see also [method set_active] or [method stop_all] for this."
+msgstr ""
+
+#: doc/classes/Tween.xml:350
+msgid "If [code]true[/code], the tween loops."
+msgstr ""
+
+#: doc/classes/Tween.xml:356
+msgid "Emitted when all processes in a tween end."
+msgstr ""
+
+#: doc/classes/Tween.xml:365
+msgid "Emitted when a tween ends."
+msgstr ""
+
+#: doc/classes/Tween.xml:374
+msgid "Emitted when a tween starts."
+msgstr ""
+
+#: doc/classes/Tween.xml:387
+msgid "Emitted at each step of the animation."
+msgstr ""
+
+#: doc/classes/Tween.xml:393
+msgid "The tween updates with the [code]_physics_process[/code] callback."
+msgstr ""
+
+#: doc/classes/Tween.xml:396
+msgid "The tween updates with the [code]_process[/code] callback."
+msgstr ""
+
+#: doc/classes/Tween.xml:399
+msgid "The animation is interpolated linearly."
+msgstr ""
+
+#: doc/classes/Tween.xml:402
+msgid "The animation is interpolated using a sine function."
+msgstr ""
+
+#: doc/classes/Tween.xml:405
+msgid ""
+"The animation is interpolated with a quintic (to the power of 5) function."
+msgstr ""
+
+#: doc/classes/Tween.xml:408
+msgid ""
+"The animation is interpolated with a quartic (to the power of 4) function."
+msgstr ""
+
+#: doc/classes/Tween.xml:411
+msgid ""
+"The animation is interpolated with a quadratic (to the power of 2) function."
+msgstr ""
+
+#: doc/classes/Tween.xml:414
+msgid ""
+"The animation is interpolated with an exponential (to the power of x) "
+"function."
+msgstr ""
+
+#: doc/classes/Tween.xml:417
+msgid ""
+"The animation is interpolated with elasticity, wiggling around the edges."
+msgstr ""
+
+#: doc/classes/Tween.xml:420
+msgid ""
+"The animation is interpolated with a cubic (to the power of 3) function."
+msgstr ""
+
+#: doc/classes/Tween.xml:423
+msgid "The animation is interpolated with a function using square roots."
+msgstr ""
+
+#: doc/classes/Tween.xml:426
+msgid "The animation is interpolated by bouncing at the end."
+msgstr ""
+
+#: doc/classes/Tween.xml:429
+msgid "The animation is interpolated backing out at ends."
+msgstr ""
+
+#: doc/classes/Tween.xml:432
+msgid "The interpolation starts slowly and speeds up towards the end."
+msgstr ""
+
+#: doc/classes/Tween.xml:435
+msgid "The interpolation starts quickly and slows down towards the end."
+msgstr ""
+
+#: doc/classes/Tween.xml:438
+msgid ""
+"A combination of [constant EASE_IN] and [constant EASE_OUT]. The "
+"interpolation is slowest at both ends."
+msgstr ""
+
+#: doc/classes/Tween.xml:441
+msgid ""
+"A combination of [constant EASE_IN] and [constant EASE_OUT]. The "
+"interpolation is fastest at both ends."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:4
+msgid "Helper class to implement a UDP server."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:7
+msgid ""
+"A simple server that opens a UDP socket and returns connected "
+"[PacketPeerUDP] upon receiving new packets. See also [method PacketPeerUDP."
+"connect_to_host].\n"
+"After starting the server ([method listen]), you will need to [method poll] "
+"it at regular intervals (e.g. inside [method Node._process]) for it to "
+"process new packets, delivering them to the appropriate [PacketPeerUDP], and "
+"taking new connections.\n"
+"Below a small example of how it can be used:\n"
+"[codeblock]\n"
+"# server.gd\n"
+"extends Node\n"
+"\n"
+"var server := UDPServer.new()\n"
+"var peers = []\n"
+"\n"
+"func _ready():\n"
+" server.listen(4242)\n"
+"\n"
+"func _process(delta):\n"
+" server.poll() # Important!\n"
+" if server.is_connection_available():\n"
+" var peer : PacketPeerUDP = server.take_connection()\n"
+" var pkt = peer.get_packet()\n"
+" print(\"Accepted peer: %s:%s\" % [peer.get_packet_ip(), peer."
+"get_packet_port()])\n"
+" print(\"Received data: %s\" % [pkt.get_string_from_utf8()])\n"
+" # Reply so it knows we received the message.\n"
+" peer.put_packet(pkt)\n"
+" # Keep a reference so we can keep contacting the remote peer.\n"
+" peers.append(peer)\n"
+"\n"
+" for i in range(0, peers.size()):\n"
+" pass # Do something with the connected peers.\n"
+"\n"
+"[/codeblock]\n"
+"[codeblock]\n"
+"# client.gd\n"
+"extends Node\n"
+"\n"
+"var udp := PacketPeerUDP.new()\n"
+"var connected = false\n"
+"\n"
+"func _ready():\n"
+" udp.connect_to_host(\"127.0.0.1\", 4242)\n"
+"\n"
+"func _process(delta):\n"
+" if !connected:\n"
+" # Try to contact server\n"
+" udp.put_packet(\"The answer is... 42!\".to_utf8())\n"
+" if udp.get_available_packet_count() > 0:\n"
+" print(\"Connected: %s\" % udp.get_packet().get_string_from_utf8())\n"
+" connected = true\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/UDPServer.xml:62
+msgid ""
+"Returns [code]true[/code] if a packet with a new address/port combination "
+"was received on the socket."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:69
+msgid ""
+"Returns [code]true[/code] if the socket is open and listening on a port."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:80
+msgid ""
+"Starts the server by opening a UDP socket listening on the given port. You "
+"can optionally specify a [code]bind_address[/code] to only listen for "
+"packets sent to that address. See also [method PacketPeerUDP.listen]."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:87
+msgid ""
+"Call this method at regular intervals (e.g. inside [method Node._process]) "
+"to process new packets. And packet from known address/port pair will be "
+"delivered to the appropriate [PacketPeerUDP], any packet received from an "
+"unknown address/port pair will be added as a pending connection (see [method "
+"is_connection_available], [method take_connection]). The maximum number of "
+"pending connection is defined via [member max_pending_connections]."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:94
+msgid ""
+"Stops the server, closing the UDP socket if open. Will close all connected "
+"[PacketPeerUDP] accepted via [method take_connection] (remote peers will not "
+"be notified)."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:101
+msgid ""
+"Returns the first pending connection (connected to the appropriate address/"
+"port). Will return [code]null[/code] if no new connection is available. See "
+"also [method is_connection_available], [method PacketPeerUDP."
+"connect_to_host]."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:107
+msgid ""
+"Define the maximum number of pending connections, during [method poll], any "
+"new pending connection exceeding that value will be automatically dropped. "
+"Setting this value to [code]0[/code] effectively prevents any new pending "
+"connection to be accepted (e.g. when all your players have connected)."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:4
+msgid "Helper to manage undo/redo operations in the editor or custom tools."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:7
+msgid ""
+"Helper to manage undo/redo operations in the editor or custom tools. It "
+"works by registering methods and property changes inside \"actions\".\n"
+"Common behavior is to create an action, then add do/undo calls to functions "
+"or property changes, then committing the action.\n"
+"Here's an example on how to add an action to the Godot editor's own "
+"[UndoRedo], from a plugin:\n"
+"[codeblock]\n"
+"var undo_redo = get_undo_redo() # Method of EditorPlugin.\n"
+"\n"
+"func do_something():\n"
+" pass # Put your code here.\n"
+"\n"
+"func undo_something():\n"
+" pass # Put here the code that reverts what's done by "
+"\"do_something()\".\n"
+"\n"
+"func _on_MyButton_pressed():\n"
+" var node = get_node(\"MyNode2D\")\n"
+" undo_redo.create_action(\"Move the node\")\n"
+" undo_redo.add_do_method(self, \"do_something\")\n"
+" undo_redo.add_undo_method(self, \"undo_something\")\n"
+" undo_redo.add_do_property(node, \"position\", Vector2(100,100))\n"
+" undo_redo.add_undo_property(node, \"position\", node.position)\n"
+" undo_redo.commit_action()\n"
+"[/codeblock]\n"
+"[method create_action], [method add_do_method], [method add_undo_method], "
+"[method add_do_property], [method add_undo_property], and [method "
+"commit_action] should be called one after the other, like in the example. "
+"Not doing so could lead to crashes.\n"
+"If you don't need to register a method, you can leave [method add_do_method] "
+"and [method add_undo_method] out; the same goes for properties. You can also "
+"register more than one method/property."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:42
+msgid "Register a method that will be called when the action is committed."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:55
+msgid "Register a property value change for \"do\"."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:64
+msgid ""
+"Register a reference for \"do\" that will be erased if the \"do\" history is "
+"lost. This is useful mostly for new nodes created for the \"do\" call. Do "
+"not use for resources."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:75
+msgid "Register a method that will be called when the action is undone."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:88
+msgid "Register a property value change for \"undo\"."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:97
+msgid ""
+"Register a reference for \"undo\" that will be erased if the \"undo\" "
+"history is lost. This is useful mostly for nodes removed with the \"do\" "
+"call (not the \"undo\" call!)."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:106
+msgid ""
+"Clear the undo/redo history and associated references.\n"
+"Passing [code]false[/code] to [code]increase_version[/code] will prevent the "
+"version number to be increased from this."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:114
+msgid ""
+"Commit the action. All \"do\" methods/properties are called/set when this "
+"function is called."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:125
+msgid ""
+"Create a new action. After this is called, do all your calls to [method "
+"add_do_method], [method add_undo_method], [method add_do_property], and "
+"[method add_undo_property], then commit the action with [method "
+"commit_action].\n"
+"The way actions are merged is dictated by the [code]merge_mode[/code] "
+"argument. See [enum MergeMode] for details."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:133
+msgid "Gets the name of the current action."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:140
+msgid ""
+"Gets the version. Every time a new action is committed, the [UndoRedo]'s "
+"version number is increased automatically.\n"
+"This is useful mostly to check if something changed from a saved version."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:148
+msgid "Returns [code]true[/code] if a \"redo\" action is available."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:155
+msgid "Returns [code]true[/code] if an \"undo\" action is available."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:162
+msgid ""
+"Returns [code]true[/code] if the [UndoRedo] is currently committing the "
+"action, i.e. running its \"do\" method or property change (see [method "
+"commit_action])."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:169
+msgid "Redo the last action."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:176
+msgid "Undo the last action."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:183
+msgid "Called when [method undo] or [method redo] was called."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:189
+msgid "Makes \"do\"/\"undo\" operations stay in separate actions."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:192
+msgid ""
+"Makes so that the action's \"do\" operation is from the first action created "
+"and the \"undo\" operation is from the last subsequent action with the same "
+"name."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:195
+msgid "Makes subsequent actions with the same name be merged into one."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:4
+msgid "UPNP network functions."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:7
+msgid ""
+"Provides UPNP functionality to discover [UPNPDevice]s on the local network "
+"and execute commands on them, like managing port mappings (port forwarding) "
+"and querying the local and remote network IP address. Note that methods on "
+"this class are synchronous and block the calling thread.\n"
+"To forward a specific port:\n"
+"[codeblock]\n"
+"const PORT = 7777\n"
+"var upnp = UPNP.new()\n"
+"upnp.discover(2000, 2, \"InternetGatewayDevice\")\n"
+"upnp.add_port_mapping(port)\n"
+"[/codeblock]\n"
+"To close a specific port (e.g. after you have finished using it):\n"
+"[codeblock]\n"
+"upnp.delete_port_mapping(port)\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:29
+msgid "Adds the given [UPNPDevice] to the list of discovered devices."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:46
+msgid ""
+"Adds a mapping to forward the external [code]port[/code] (between 1 and "
+"65535) on the default gateway (see [method get_gateway]) to the "
+"[code]internal_port[/code] on the local machine for the given protocol "
+"[code]proto[/code] (either [code]TCP[/code] or [code]UDP[/code], with UDP "
+"being the default). If a port mapping for the given port and protocol "
+"combination already exists on that gateway device, this method tries to "
+"overwrite it. If that is not desired, you can retrieve the gateway manually "
+"with [method get_gateway] and call [method add_port_mapping] on it, if any.\n"
+"If [code]internal_port[/code] is [code]0[/code] (the default), the same port "
+"number is used for both the external and the internal port (the [code]port[/"
+"code] value).\n"
+"The description ([code]desc[/code]) is shown in some router UIs and can be "
+"used to point out which application added the mapping. The mapping's lease "
+"duration can be limited by specifying a [code]duration[/code] (in seconds). "
+"However, some routers are incompatible with one or both of these, so use "
+"with caution and add fallback logic in case of errors to retry without them "
+"if in doubt.\n"
+"See [enum UPNPResult] for possible return values."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:56
+msgid "Clears the list of discovered devices."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:67
+msgid ""
+"Deletes the port mapping for the given port and protocol combination on the "
+"default gateway (see [method get_gateway]) if one exists. [code]port[/code] "
+"must be a valid port between 1 and 65535, [code]proto[/code] can be either "
+"[code]TCP[/code] or [code]UDP[/code]. See [enum UPNPResult] for possible "
+"return values."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:80
+msgid ""
+"Discovers local [UPNPDevice]s. Clears the list of previously discovered "
+"devices.\n"
+"Filters for IGD (InternetGatewayDevice) type devices by default, as those "
+"manage port forwarding. [code]timeout[/code] is the time to wait for "
+"responses in milliseconds. [code]ttl[/code] is the time-to-live; only touch "
+"this if you know what you're doing.\n"
+"See [enum UPNPResult] for possible return values."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:91
+msgid "Returns the [UPNPDevice] at the given [code]index[/code]."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:98
+msgid "Returns the number of discovered [UPNPDevice]s."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:105
+msgid ""
+"Returns the default gateway. That is the first discovered [UPNPDevice] that "
+"is also a valid IGD (InternetGatewayDevice)."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:112
+msgid ""
+"Returns the external [IP] address of the default gateway (see [method "
+"get_gateway]) as string. Returns an empty string on error."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:121
+msgid ""
+"Removes the device at [code]index[/code] from the list of discovered devices."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:132
+msgid ""
+"Sets the device at [code]index[/code] from the list of discovered devices to "
+"[code]device[/code]."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:138
+msgid "If [code]true[/code], IPv6 is used for [UPNPDevice] discovery."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:141
+msgid ""
+"If [code]0[/code], the local port to use for discovery is chosen "
+"automatically by the system. If [code]1[/code], discovery will be done from "
+"the source port 1900 (same as destination port). Otherwise, the value will "
+"be used as the port."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:144
+msgid ""
+"Multicast interface to use for discovery. Uses the default multicast "
+"interface if empty."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:149
+msgid "UPNP command or discovery was successful."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:152
+msgid ""
+"Not authorized to use the command on the [UPNPDevice]. May be returned when "
+"the user disabled UPNP on their router."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:155
+msgid ""
+"No port mapping was found for the given port, protocol combination on the "
+"given [UPNPDevice]."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:158
+msgid "Inconsistent parameters."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:161
+msgid ""
+"No such entry in array. May be returned if a given port, protocol "
+"combination is not found on an [UPNPDevice]."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:164
+msgid "The action failed."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:167
+msgid ""
+"The [UPNPDevice] does not allow wildcard values for the source IP address."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:170
+msgid "The [UPNPDevice] does not allow wildcard values for the external port."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:173
+msgid "The [UPNPDevice] does not allow wildcard values for the internal port."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:176
+msgid "The remote host value must be a wildcard."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:179
+msgid "The external port value must be a wildcard."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:182
+msgid ""
+"No port maps are available. May also be returned if port mapping "
+"functionality is not available."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:185
+msgid ""
+"Conflict with other mechanism. May be returned instead of [constant "
+"UPNP_RESULT_CONFLICT_WITH_OTHER_MAPPING] if a port mapping conflicts with an "
+"existing one."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:188
+msgid "Conflict with an existing port mapping."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:191
+msgid "External and internal port values must be the same."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:194
+msgid ""
+"Only permanent leases are supported. Do not use the [code]duration[/code] "
+"parameter when adding port mappings."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:197
+msgid "Invalid gateway."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:200
+msgid "Invalid port."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:203
+msgid "Invalid protocol."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:206
+msgid "Invalid duration."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:209
+msgid "Invalid arguments."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:212
+msgid "Invalid response."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:215
+msgid "Invalid parameter."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:218
+#: modules/upnp/doc_classes/UPNPDevice.xml:80
+msgid "HTTP error."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:221
+msgid "Socket error."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:224
+msgid "Error allocating memory."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:227
+msgid ""
+"No gateway available. You may need to call [method discover] first, or "
+"discovery didn't detect any valid IGDs (InternetGatewayDevices)."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:230
+msgid ""
+"No devices available. You may need to call [method discover] first, or "
+"discovery didn't detect any valid [UPNPDevice]s."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:233
+#: modules/upnp/doc_classes/UPNPDevice.xml:104
+msgid "Unknown error."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:4
+msgid "UPNP device."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:7
+msgid ""
+"UPNP device. See [UPNP] for UPNP discovery and utility functions. Provides "
+"low-level access to UPNP control commands. Allows to manage port mappings "
+"(port forwarding) and to query network information of the device (like local "
+"and external IP address and status). Note that methods on this class are "
+"synchronous and block the calling thread."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:26
+msgid ""
+"Adds a port mapping to forward the given external port on this [UPNPDevice] "
+"for the given protocol to the local machine. See [method UPNP."
+"add_port_mapping]."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:37
+msgid ""
+"Deletes the port mapping identified by the given port and protocol "
+"combination on this device. See [method UPNP.delete_port_mapping]."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:44
+msgid ""
+"Returns [code]true[/code] if this is a valid IGD (InternetGatewayDevice) "
+"which potentially supports port forwarding."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:51
+msgid ""
+"Returns the external IP address of this [UPNPDevice] or an empty string."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:57
+msgid "URL to the device description."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:60
+msgid "IDG control URL."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:63
+msgid ""
+"Address of the local machine in the network connecting it to this "
+"[UPNPDevice]."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:66
+msgid "IGD service type."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:69
+msgid "IGD status. See [enum IGDStatus]."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:72
+msgid "Service type."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:77
+msgid "OK."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:83
+msgid "Empty HTTP response."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:86
+msgid "Returned response contained no URLs."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:89
+msgid "Not a valid IGD."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:92
+msgid "Disconnected."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:95
+msgid "Unknown device."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:98
+msgid "Invalid control."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:101
+msgid "Memory allocation error."
+msgstr ""
+
+#: doc/classes/Variant.xml:4
+msgid "The most important data type in Godot."
+msgstr ""
+
+#: doc/classes/Variant.xml:7
+msgid ""
+"In computer programming, a Variant class is a class that is designed to "
+"store a variety of other types. Dynamic programming languages like PHP, Lua, "
+"JavaScript and GDScript like to use them to store variables' data on the "
+"backend. With these Variants, properties are able to change value types "
+"freely.\n"
+"[codeblock]\n"
+"var foo = 2 # foo is dynamically an integer\n"
+"foo = \"Now foo is a string!\"\n"
+"foo = Reference.new() # foo is an Object\n"
+"var bar: int = 2 # bar is a statically typed integer.\n"
+"# bar = \"Uh oh! I can't make static variables become a different type!\"\n"
+"[/codeblock]\n"
+"Godot tracks all scripting API variables within Variants. Without even "
+"realizing it, you use Variants all the time. When a particular language "
+"enforces its own rules for keeping data typed, then that language is "
+"applying its own custom logic over the base Variant scripting API.\n"
+"- GDScript automatically wrap values in them. It keeps all data in plain "
+"Variants by default and then optionally enforces custom static typing rules "
+"on variable types.\n"
+"- VisualScript tracks properties inside Variants as well, but it also uses "
+"static typing. The GUI interface enforces that properties have a particular "
+"type that doesn't change over time.\n"
+"- C# is statically typed, but uses the Mono [code]object[/code] type in "
+"place of Godot's Variant class when it needs to represent a dynamic value. "
+"[code]object[/code] is the Mono runtime's equivalent of the same concept.\n"
+"- The statically-typed language NativeScript C++ does not define a built-in "
+"Variant-like class. Godot's GDNative bindings provide their own godot::"
+"Variant class for users; Any point at which the C++ code starts interacting "
+"with the Godot runtime is a place where you might have to start wrapping "
+"data inside Variant objects.\n"
+"The global [method @GDScript.typeof] function returns the enumerated value "
+"of the Variant type stored in the current variable (see [enum Variant."
+"Type]).\n"
+"[codeblock]\n"
+"var foo = 2\n"
+"match typeof(foo):\n"
+" TYPE_NIL:\n"
+" print(\"foo is null\")\n"
+" TYPE_INTEGER:\n"
+" print(\"foo is an integer\")\n"
+" TYPE_OBJECT:\n"
+" # Note that Objects are their own special category.\n"
+" # To get the name of the underlying Object type, you need the "
+"`get_class()` method.\n"
+" print(\"foo is a(n) %s\" % foo.get_class()) # inject the class name "
+"into a formatted string.\n"
+" # Note also that there is not yet any way to get a script's "
+"`class_name` string easily.\n"
+" # To fetch that value, you need to dig deeply into a hidden "
+"ProjectSettings setting: an Array of Dictionaries called "
+"\"_global_script_classes\".\n"
+" # Open your project.godot file to see it up close.\n"
+"[/codeblock]\n"
+"A Variant takes up only 20 bytes and can store almost any engine datatype "
+"inside of it. Variants are rarely used to hold information for long periods "
+"of time. Instead, they are used mainly for communication, editing, "
+"serialization and moving data around.\n"
+"Godot has specifically invested in making its Variant class as flexible as "
+"possible; so much so that it is used for a multitude of operations to "
+"facilitate communication between all of Godot's systems.\n"
+"A Variant:\n"
+"- Can store almost any datatype.\n"
+"- Can perform operations between many variants. GDScript uses Variant as its "
+"atomic/native datatype.\n"
+"- Can be hashed, so it can be compared quickly to other variants.\n"
+"- Can be used to convert safely between datatypes.\n"
+"- Can be used to abstract calling methods and their arguments. Godot exports "
+"all its functions through variants.\n"
+"- Can be used to defer calls or move data between threads.\n"
+"- Can be serialized as binary and stored to disk, or transferred via "
+"network.\n"
+"- Can be serialized to text and use it for printing values and editable "
+"settings.\n"
+"- Can work as an exported property, so the editor can edit it universally.\n"
+"- Can be used for dictionaries, arrays, parsers, etc.\n"
+"[b]Containers (Array and Dictionary):[/b] Both are implemented using "
+"variants. A [Dictionary] can match any datatype used as key to any other "
+"datatype. An [Array] just holds an array of Variants. Of course, a Variant "
+"can also hold a [Dictionary] and an [Array] inside, making it even more "
+"flexible.\n"
+"Modifications to a container will modify all references to it. A [Mutex] "
+"should be created to lock it if multi-threaded access is desired."
+msgstr ""
+
+#: doc/classes/Variant.xml:53
+msgid ""
+"https://docs.godotengine.org/en/latest/development/cpp/variant_class.html"
+msgstr ""
+
+#: doc/classes/VBoxContainer.xml:4
+msgid "Vertical box container."
+msgstr ""
+
+#: doc/classes/VBoxContainer.xml:7
+msgid "Vertical box container. See [BoxContainer]."
+msgstr ""
+
+#: doc/classes/VBoxContainer.xml:17
+msgid "The vertical space between the [VBoxContainer]'s elements."
+msgstr ""
+
+#: doc/classes/Vector2.xml:4
+msgid "Vector used for 2D math using floating point coordinates."
+msgstr ""
+
+#: doc/classes/Vector2.xml:7
+msgid ""
+"2-element structure that can be used to represent positions in 2D space or "
+"any other pair of numeric values.\n"
+"It uses floating-point coordinates. See [Vector2i] for its integer "
+"counterpart.\n"
+"[b]Note:[/b] In a boolean context, a Vector2 will evaluate to [code]false[/"
+"code] if it's equal to [code]Vector2(0, 0)[/code]. Otherwise, a Vector2 will "
+"always evaluate to [code]true[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:21
+msgid "Constructs a new [Vector2] from [Vector2i]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:32
+msgid ""
+"Constructs a new [Vector2] from the given [code]x[/code] and [code]y[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:39 doc/classes/Vector2i.xml:39
+#: doc/classes/Vector3.xml:41
+msgid ""
+"Returns a new vector with all components in absolute values (i.e. positive)."
+msgstr ""
+
+#: doc/classes/Vector2.xml:46
+msgid ""
+"Returns this vector's angle with respect to the X axis, or [code](1, 0)[/"
+"code] vector, in radians.\n"
+"Equivalent to the result of [method @GDScript.atan2] when called with the "
+"vector's [member y] and [member x] as parameters: [code]atan2(y, x)[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:56
+msgid "Returns the angle to the given vector, in radians."
+msgstr ""
+
+#: doc/classes/Vector2.xml:65
+msgid ""
+"Returns the angle between the line connecting the two points and the X axis, "
+"in radians."
+msgstr ""
+
+#: doc/classes/Vector2.xml:72
+msgid ""
+"Returns the aspect ratio of this vector, the ratio of [member x] to [member "
+"y]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:81 doc/classes/Vector3.xml:59
+msgid ""
+"Returns the vector \"bounced off\" from a plane defined by the given normal."
+msgstr ""
+
+#: doc/classes/Vector2.xml:88
+msgid ""
+"Returns the vector with all components rounded up (towards positive "
+"infinity)."
+msgstr ""
+
+#: doc/classes/Vector2.xml:97
+msgid ""
+"Returns the vector with a maximum length by limiting its length to "
+"[code]length[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:106
+msgid "Returns the cross product of this vector and [code]with[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:121
+msgid ""
+"Cubically interpolates between this vector and [code]b[/code] using "
+"[code]pre_a[/code] and [code]post_b[/code] as handles, and returns the "
+"result at position [code]t[/code]. [code]t[/code] is on the range of 0.0 to "
+"1.0, representing the amount of interpolation."
+msgstr ""
+
+#: doc/classes/Vector2.xml:130 doc/classes/Vector3.xml:99
+msgid ""
+"Returns the normalized vector pointing from this vector to [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:139 doc/classes/Vector3.xml:108
+msgid ""
+"Returns the squared distance between this vector and [code]b[/code].\n"
+"This method runs faster than [method distance_to], so prefer it if you need "
+"to compare vectors or need the squared distance for some formula."
+msgstr ""
+
+#: doc/classes/Vector2.xml:149
+msgid "Returns the distance between this vector and [code]to[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:158
+msgid ""
+"Returns the dot product of this vector and [code]with[/code]. This can be "
+"used to compare the angle between two vectors. For example, this can be used "
+"to determine whether an enemy is facing the player.\n"
+"The dot product will be [code]0[/code] for a straight angle (90 degrees), "
+"greater than 0 for angles narrower than 90 degrees and lower than 0 for "
+"angles wider than 90 degrees.\n"
+"When using unit (normalized) vectors, the result will always be between "
+"[code]-1.0[/code] (180 degree angle) when the vectors are facing opposite "
+"directions, and [code]1.0[/code] (0 degree angle) when the vectors are "
+"aligned.\n"
+"[b]Note:[/b] [code]a.dot(b)[/code] is equivalent to [code]b.dot(a)[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:168
+msgid ""
+"Returns the vector with all components rounded down (towards negative "
+"infinity)."
+msgstr ""
+
+#: doc/classes/Vector2.xml:177 doc/classes/Vector3.xml:153
+msgid ""
+"Returns [code]true[/code] if this vector and [code]v[/code] are "
+"approximately equal, by running [method @GDScript.is_equal_approx] on each "
+"component."
+msgstr ""
+
+#: doc/classes/Vector2.xml:184 doc/classes/Vector3.xml:160
+msgid ""
+"Returns [code]true[/code] if the vector is normalized, and false otherwise."
+msgstr ""
+
+#: doc/classes/Vector2.xml:191 doc/classes/Vector3.xml:167
+msgid "Returns the length (magnitude) of this vector."
+msgstr ""
+
+#: doc/classes/Vector2.xml:198 doc/classes/Vector3.xml:174
+msgid ""
+"Returns the squared length (squared magnitude) of this vector.\n"
+"This method runs faster than [method length], so prefer it if you need to "
+"compare vectors or need the squared distance for some formula."
+msgstr ""
+
+#: doc/classes/Vector2.xml:210 doc/classes/Vector3.xml:186
+msgid ""
+"Returns the result of the linear interpolation between this vector and "
+"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is on the range of "
+"0.0 to 1.0, representing the amount of interpolation."
+msgstr ""
+
+#: doc/classes/Vector2.xml:221
+msgid ""
+"Moves the vector toward [code]to[/code] by the fixed [code]delta[/code] "
+"amount."
+msgstr ""
+
+#: doc/classes/Vector2.xml:228 doc/classes/Vector3.xml:218
+msgid ""
+"Returns the vector scaled to unit length. Equivalent to [code]v / v.length()"
+"[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:237 doc/classes/Vector3.xml:236
+msgid ""
+"Returns a vector composed of the [method @GDScript.fposmod] of this vector's "
+"components and [code]mod[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:246 doc/classes/Vector3.xml:245
+msgid ""
+"Returns a vector composed of the [method @GDScript.fposmod] of this vector's "
+"components and [code]modv[/code]'s components."
+msgstr ""
+
+#: doc/classes/Vector2.xml:255
+msgid "Returns the vector projected onto the vector [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:264
+msgid "Returns the vector reflected from a plane defined by the given normal."
+msgstr ""
+
+#: doc/classes/Vector2.xml:273
+msgid ""
+"Returns the vector rotated by [code]phi[/code] radians. See also [method "
+"@GDScript.deg2rad]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:280
+msgid ""
+"Returns the vector with all components rounded to the nearest integer, with "
+"halfway cases rounded away from zero."
+msgstr ""
+
+#: doc/classes/Vector2.xml:287
+msgid ""
+"Returns the vector with each component set to one or negative one, depending "
+"on the signs of the components, or zero if the component is zero, by calling "
+"[method @GDScript.sign] on each component."
+msgstr ""
+
+#: doc/classes/Vector2.xml:298 doc/classes/Vector3.xml:299
+msgid ""
+"Returns the result of spherical linear interpolation between this vector and "
+"[code]b[/code], by amount [code]t[/code]. [code]t[/code] is on the range of "
+"0.0 to 1.0, representing the amount of interpolation.\n"
+"[b]Note:[/b] Both vectors must be normalized."
+msgstr ""
+
+#: doc/classes/Vector2.xml:308 doc/classes/Vector3.xml:309
+msgid "Returns this vector slid along a plane defined by the given normal."
+msgstr ""
+
+#: doc/classes/Vector2.xml:317 doc/classes/Vector3.xml:318
+msgid ""
+"Returns this vector with each component snapped to the nearest multiple of "
+"[code]step[/code]. This can also be used to round to an arbitrary number of "
+"decimals."
+msgstr ""
+
+#: doc/classes/Vector2.xml:324
+msgid ""
+"Returns a perpendicular vector rotated 90 degrees counter-clockwise compared "
+"to the original, with the same length."
+msgstr ""
+
+#: doc/classes/Vector2.xml:330 doc/classes/Vector2i.xml:59
+#: doc/classes/Vector3.xml:332 doc/classes/Vector3i.xml:61
+msgid ""
+"The vector's X component. Also accessible by using the index position [code]"
+"[0][/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:333 doc/classes/Vector2i.xml:62
+#: doc/classes/Vector3.xml:335 doc/classes/Vector3i.xml:64
+msgid ""
+"The vector's Y component. Also accessible by using the index position [code]"
+"[1][/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:338 doc/classes/Vector2i.xml:67
+#: doc/classes/Vector3i.xml:72
+msgid "Enumerated value for the X axis."
+msgstr ""
+
+#: doc/classes/Vector2.xml:341 doc/classes/Vector2i.xml:70
+#: doc/classes/Vector3i.xml:75
+msgid "Enumerated value for the Y axis."
+msgstr ""
+
+#: doc/classes/Vector2.xml:344 doc/classes/Vector2i.xml:73
+#: doc/classes/Vector3.xml:352 doc/classes/Vector3i.xml:81
+msgid "Zero vector, a vector with all components set to [code]0[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:347 doc/classes/Vector2i.xml:76
+#: doc/classes/Vector3.xml:355 doc/classes/Vector3i.xml:84
+msgid "One vector, a vector with all components set to [code]1[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:350 doc/classes/Vector3.xml:358
+msgid ""
+"Infinity vector, a vector with all components set to [constant @GDScript."
+"INF]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:353 doc/classes/Vector2i.xml:79
+msgid "Left unit vector. Represents the direction of left."
+msgstr ""
+
+#: doc/classes/Vector2.xml:356 doc/classes/Vector2i.xml:82
+msgid "Right unit vector. Represents the direction of right."
+msgstr ""
+
+#: doc/classes/Vector2.xml:359 doc/classes/Vector2i.xml:85
+msgid "Up unit vector. Y is down in 2D, so this vector points -Y."
+msgstr ""
+
+#: doc/classes/Vector2.xml:362 doc/classes/Vector2i.xml:88
+msgid "Down unit vector. Y is down in 2D, so this vector points +Y."
+msgstr ""
+
+#: doc/classes/Vector2i.xml:4
+msgid "Vector used for 2D math using integer coordinates."
+msgstr ""
+
+#: doc/classes/Vector2i.xml:7
+msgid ""
+"2-element structure that can be used to represent positions in 2D space or "
+"any other pair of numeric values.\n"
+"It uses integer coordinates and is therefore preferable to [Vector2] when "
+"exact precision is required.\n"
+"[b]Note:[/b] In a boolean context, a Vector2i will evaluate to [code]false[/"
+"code] if it's equal to [code]Vector2i(0, 0)[/code]. Otherwise, a Vector2i "
+"will always evaluate to [code]true[/code]."
+msgstr ""
+
+#: doc/classes/Vector2i.xml:23
+msgid ""
+"Constructs a new [Vector2i] from the given [code]x[/code] and [code]y[/code]."
+msgstr ""
+
+#: doc/classes/Vector2i.xml:32
+msgid ""
+"Constructs a new [Vector2i] from [Vector2]. The floating point coordinates "
+"will be truncated."
+msgstr ""
+
+#: doc/classes/Vector2i.xml:46
+msgid "Returns the ratio of [member x] to [member y]."
+msgstr ""
+
+#: doc/classes/Vector2i.xml:53 doc/classes/Vector3i.xml:55
+msgid ""
+"Returns the vector with each component set to one or negative one, depending "
+"on the signs of the components."
+msgstr ""
+
+#: doc/classes/Vector3.xml:4
+msgid "Vector used for 3D math using floating point coordinates."
+msgstr ""
+
+#: doc/classes/Vector3.xml:7
+msgid ""
+"3-element structure that can be used to represent positions in 3D space or "
+"any other pair of numeric values.\n"
+"It uses floating-point coordinates. See [Vector3i] for its integer "
+"counterpart.\n"
+"[b]Note:[/b] In a boolean context, a Vector3 will evaluate to [code]false[/"
+"code] if it's equal to [code]Vector3(0, 0, 0)[/code]. Otherwise, a Vector3 "
+"will always evaluate to [code]true[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:21
+msgid "Constructs a new [Vector3] from [Vector3i]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:34
+msgid "Returns a [Vector3] with the given components."
+msgstr ""
+
+#: doc/classes/Vector3.xml:50
+msgid "Returns the minimum angle to the given vector, in radians."
+msgstr ""
+
+#: doc/classes/Vector3.xml:66
+msgid ""
+"Returns a new vector with all components rounded up (towards positive "
+"infinity)."
+msgstr ""
+
+#: doc/classes/Vector3.xml:75
+msgid "Returns the cross product of this vector and [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:90
+msgid ""
+"Performs a cubic interpolation between vectors [code]pre_a[/code], [code]a[/"
+"code], [code]b[/code], [code]post_b[/code] ([code]a[/code] is current), by "
+"the given amount [code]t[/code]. [code]t[/code] is on the range of 0.0 to "
+"1.0, representing the amount of interpolation."
+msgstr ""
+
+#: doc/classes/Vector3.xml:118
+msgid "Returns the distance between this vector and [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:127
+msgid ""
+"Returns the dot product of this vector and [code]b[/code]. This can be used "
+"to compare the angle between two vectors. For example, this can be used to "
+"determine whether an enemy is facing the player.\n"
+"The dot product will be [code]0[/code] for a straight angle (90 degrees), "
+"greater than 0 for angles narrower than 90 degrees and lower than 0 for "
+"angles wider than 90 degrees.\n"
+"When using unit (normalized) vectors, the result will always be between "
+"[code]-1.0[/code] (180 degree angle) when the vectors are facing opposite "
+"directions, and [code]1.0[/code] (0 degree angle) when the vectors are "
+"aligned.\n"
+"[b]Note:[/b] [code]a.dot(b)[/code] is equivalent to [code]b.dot(a)[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:137
+msgid ""
+"Returns a new vector with all components rounded down (towards negative "
+"infinity)."
+msgstr ""
+
+#: doc/classes/Vector3.xml:144
+msgid ""
+"Returns the inverse of the vector. This is the same as [code]Vector3( 1.0 / "
+"v.x, 1.0 / v.y, 1.0 / v.z )[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:193 doc/classes/Vector3i.xml:41
+msgid ""
+"Returns the axis of the vector's largest value. See [code]AXIS_*[/code] "
+"constants. If all components are equal, this method returns [constant "
+"AXIS_X]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:200 doc/classes/Vector3i.xml:48
+msgid ""
+"Returns the axis of the vector's smallest value. See [code]AXIS_*[/code] "
+"constants. If all components are equal, this method returns [constant "
+"AXIS_Z]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:211
+msgid ""
+"Moves this vector toward [code]to[/code] by the fixed [code]delta[/code] "
+"amount."
+msgstr ""
+
+#: doc/classes/Vector3.xml:227
+msgid "Returns the outer product with [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:254
+msgid "Returns this vector projected onto another vector [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:263
+msgid "Returns this vector reflected from a plane defined by the given normal."
+msgstr ""
+
+#: doc/classes/Vector3.xml:274
+msgid ""
+"Rotates this vector around a given axis by [code]phi[/code] radians. The "
+"axis must be a normalized vector."
+msgstr ""
+
+#: doc/classes/Vector3.xml:281
+msgid ""
+"Returns this vector with all components rounded to the nearest integer, with "
+"halfway cases rounded away from zero."
+msgstr ""
+
+#: doc/classes/Vector3.xml:288
+msgid ""
+"Returns a vector with each component set to one or negative one, depending "
+"on the signs of this vector's components, or zero if the component is zero, "
+"by calling [method @GDScript.sign] on each component."
+msgstr ""
+
+#: doc/classes/Vector3.xml:325
+msgid ""
+"Returns a diagonal matrix with the vector as main diagonal.\n"
+"This is equivalent to a Basis with no rotation or shearing and this vector's "
+"components set as the scale."
+msgstr ""
+
+#: doc/classes/Vector3.xml:338 doc/classes/Vector3i.xml:67
+msgid ""
+"The vector's Z component. Also accessible by using the index position [code]"
+"[2][/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:343
+msgid ""
+"Enumerated value for the X axis. Returned by [method max_axis] and [method "
+"min_axis]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:346
+msgid ""
+"Enumerated value for the Y axis. Returned by [method max_axis] and [method "
+"min_axis]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:349
+msgid ""
+"Enumerated value for the Z axis. Returned by [method max_axis] and [method "
+"min_axis]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:361 doc/classes/Vector3i.xml:87
+msgid ""
+"Left unit vector. Represents the local direction of left, and the global "
+"direction of west."
+msgstr ""
+
+#: doc/classes/Vector3.xml:364 doc/classes/Vector3i.xml:90
+msgid ""
+"Right unit vector. Represents the local direction of right, and the global "
+"direction of east."
+msgstr ""
+
+#: doc/classes/Vector3.xml:367 doc/classes/Vector3i.xml:93
+msgid "Up unit vector."
+msgstr ""
+
+#: doc/classes/Vector3.xml:370 doc/classes/Vector3i.xml:96
+msgid "Down unit vector."
+msgstr ""
+
+#: doc/classes/Vector3.xml:373 doc/classes/Vector3i.xml:99
+msgid ""
+"Forward unit vector. Represents the local direction of forward, and the "
+"global direction of north."
+msgstr ""
+
+#: doc/classes/Vector3.xml:376 doc/classes/Vector3i.xml:102
+msgid ""
+"Back unit vector. Represents the local direction of back, and the global "
+"direction of south."
+msgstr ""
+
+#: doc/classes/Vector3i.xml:4
+msgid "Vector used for 3D math using integer coordinates."
+msgstr ""
+
+#: doc/classes/Vector3i.xml:7
+msgid ""
+"3-element structure that can be used to represent positions in 3D space or "
+"any other pair of numeric values.\n"
+"It uses integer coordinates and is therefore preferable to [Vector3] when "
+"exact precision is required.\n"
+"[b]Note:[/b] In a boolean context, a Vector3i will evaluate to [code]false[/"
+"code] if it's equal to [code]Vector3i(0, 0, 0)[/code]. Otherwise, a Vector3i "
+"will always evaluate to [code]true[/code]."
+msgstr ""
+
+#: doc/classes/Vector3i.xml:25
+msgid "Returns a [Vector3i] with the given components."
+msgstr ""
+
+#: doc/classes/Vector3i.xml:34
+msgid ""
+"Constructs a new [Vector3i] from [Vector3]. The floating point coordinates "
+"will be truncated."
+msgstr ""
+
+#: doc/classes/Vector3i.xml:78
+msgid "Enumerated value for the Z axis."
+msgstr ""
+
+#: doc/classes/VehicleBody3D.xml:4
+msgid "Physics body that simulates the behavior of a car."
+msgstr ""
+
+#: doc/classes/VehicleBody3D.xml:7
+msgid ""
+"This node implements all the physics logic needed to simulate a car. It is "
+"based on the raycast vehicle system commonly found in physics engines. You "
+"will need to add a [CollisionShape3D] for the main body of your vehicle and "
+"add [VehicleWheel3D] nodes for the wheels. You should also add a "
+"[MeshInstance3D] to this node for the 3D model of your car but this model "
+"should not include meshes for the wheels. You should control the vehicle by "
+"using the [member brake], [member engine_force], and [member steering] "
+"properties and not change the position or orientation of this node "
+"directly.\n"
+"[b]Note:[/b] The origin point of your VehicleBody3D will determine the "
+"center of gravity of your vehicle so it is better to keep this low and move "
+"the [CollisionShape3D] and [MeshInstance3D] upwards.\n"
+"[b]Note:[/b] This class has known issues and isn't designed to provide "
+"realistic 3D vehicle physics. If you want advanced vehicle physics, you will "
+"probably have to write your own physics integration using another "
+"[PhysicsBody3D] class."
+msgstr ""
+
+#: doc/classes/VehicleBody3D.xml:17
+msgid ""
+"Slows down the vehicle by applying a braking force. The vehicle is only "
+"slowed down if the wheels are in contact with a surface. The force you need "
+"to apply to adequately slow down your vehicle depends on the [member "
+"RigidBody3D.mass] of the vehicle. For a vehicle with a mass set to 1000, try "
+"a value in the 25 - 30 range for hard braking."
+msgstr ""
+
+#: doc/classes/VehicleBody3D.xml:20
+msgid ""
+"Accelerates the vehicle by applying an engine force. The vehicle is only "
+"speed up if the wheels that have [member VehicleWheel3D.use_as_traction] set "
+"to [code]true[/code] and are in contact with a surface. The [member "
+"RigidBody3D.mass] of the vehicle has an effect on the acceleration of the "
+"vehicle. For a vehicle with a mass set to 1000, try a value in the 25 - 50 "
+"range for acceleration.\n"
+"[b]Note:[/b] The simulation does not take the effect of gears into account, "
+"you will need to add logic for this if you wish to simulate gears.\n"
+"A negative value will result in the vehicle reversing."
+msgstr ""
+
+#: doc/classes/VehicleBody3D.xml:26
+msgid ""
+"The steering angle for the vehicle. Setting this to a non-zero value will "
+"result in the vehicle turning when it's moving. Wheels that have [member "
+"VehicleWheel3D.use_as_steering] set to [code]true[/code] will automatically "
+"be rotated."
+msgstr ""
+
+#: doc/classes/VehicleWheel3D.xml:4
+msgid "Physics object that simulates the behavior of a wheel."
+msgstr ""
+
+#: doc/classes/VehicleWheel3D.xml:7
+msgid ""
+"This node needs to be used as a child node of [VehicleBody3D] and simulates "
+"the behavior of one of its wheels. This node also acts as a collider to "
+"detect if the wheel is touching a surface.\n"
+"[b]Note:[/b] This class has known issues and isn't designed to provide "
+"realistic 3D vehicle physics. If you want advanced vehicle physics, you will "
+"probably have to write your own physics integration using another "
+"[PhysicsBody3D] class."
+msgstr ""
+
+#: doc/classes/VehicleWheel3D.xml:17
+msgid "Returns the rotational speed of the wheel in revolutions per minute."
+msgstr ""
+
+#: doc/classes/VehicleWheel3D.xml:24
+msgid ""
+"Returns a value between 0.0 and 1.0 that indicates whether this wheel is "
+"skidding. 0.0 is skidding (the wheel has lost grip, e.g. icy terrain), 1.0 "
+"means not skidding (the wheel has full grip, e.g. dry asphalt road)."
+msgstr ""
+
+#: doc/classes/VehicleWheel3D.xml:31
+msgid "Returns [code]true[/code] if this wheel is in contact with a surface."
+msgstr ""
+
+#: doc/classes/VehicleWheel3D.xml:37
+msgid ""
+"Slows down the wheel by applying a braking force. The wheel is only slowed "
+"down if it is in contact with a surface. The force you need to apply to "
+"adequately slow down your vehicle depends on the [member RigidBody3D.mass] "
+"of the vehicle. For a vehicle with a mass set to 1000, try a value in the 25 "
+"- 30 range for hard braking."
+msgstr ""
+
+#: doc/classes/VehicleWheel3D.xml:40
+msgid ""
+"The damping applied to the spring when the spring is being compressed. This "
+"value should be between 0.0 (no damping) and 1.0. A value of 0.0 means the "
+"car will keep bouncing as the spring keeps its energy. A good value for this "
+"is around 0.3 for a normal car, 0.5 for a race car."
+msgstr ""
+
+#: doc/classes/VehicleWheel3D.xml:43
+msgid ""
+"The damping applied to the spring when relaxing. This value should be "
+"between 0.0 (no damping) and 1.0. This value should always be slightly "
+"higher than the [member damping_compression] property. For a [member "
+"damping_compression] value of 0.3, try a relaxation value of 0.5."
+msgstr ""
+
+#: doc/classes/VehicleWheel3D.xml:46
+msgid ""
+"Accelerates the wheel by applying an engine force. The wheel is only speed "
+"up if it is in contact with a surface. The [member RigidBody3D.mass] of the "
+"vehicle has an effect on the acceleration of the vehicle. For a vehicle with "
+"a mass set to 1000, try a value in the 25 - 50 range for acceleration.\n"
+"[b]Note:[/b] The simulation does not take the effect of gears into account, "
+"you will need to add logic for this if you wish to simulate gears.\n"
+"A negative value will result in the wheel reversing."
+msgstr ""
+
+#: doc/classes/VehicleWheel3D.xml:51
+msgid ""
+"The steering angle for the wheel. Setting this to a non-zero value will "
+"result in the vehicle turning when it's moving."
+msgstr ""
+
+#: doc/classes/VehicleWheel3D.xml:54
+msgid ""
+"The maximum force the spring can resist. This value should be higher than a "
+"quarter of the [member RigidBody3D.mass] of the [VehicleBody3D] or the "
+"spring will not carry the weight of the vehicle. Good results are often "
+"obtained by a value that is about 3× to 4× this number."
+msgstr ""
+
+#: doc/classes/VehicleWheel3D.xml:57
+msgid ""
+"This value defines the stiffness of the suspension. Use a value lower than "
+"50 for an off-road car, a value between 50 and 100 for a race car and try "
+"something around 200 for something like a Formula 1 car."
+msgstr ""
+
+#: doc/classes/VehicleWheel3D.xml:60
+msgid ""
+"This is the distance the suspension can travel. As Godot units are "
+"equivalent to meters, keep this setting relatively low. Try a value between "
+"0.1 and 0.3 depending on the type of car."
+msgstr ""
+
+#: doc/classes/VehicleWheel3D.xml:63
+msgid ""
+"If [code]true[/code], this wheel will be turned when the car steers. This "
+"value is used in conjunction with [member VehicleBody3D.steering] and "
+"ignored if you are using the per-wheel [member steering] value instead."
+msgstr ""
+
+#: doc/classes/VehicleWheel3D.xml:66
+msgid ""
+"If [code]true[/code], this wheel transfers engine force to the ground to "
+"propel the vehicle forward. This value is used in conjunction with [member "
+"VehicleBody3D.engine_force] and ignored if you are using the per-wheel "
+"[member engine_force] value instead."
+msgstr ""
+
+#: doc/classes/VehicleWheel3D.xml:69
+msgid ""
+"This determines how much grip this wheel has. It is combined with the "
+"friction setting of the surface the wheel is in contact with. 0.0 means no "
+"grip, 1.0 is normal grip. For a drift car setup, try setting the grip of the "
+"rear wheels slightly lower than the front wheels, or use a lower value to "
+"simulate tire wear.\n"
+"It's best to set this to 1.0 when starting out."
+msgstr ""
+
+#: doc/classes/VehicleWheel3D.xml:73
+msgid "The radius of the wheel in meters."
+msgstr ""
+
+#: doc/classes/VehicleWheel3D.xml:76
+msgid ""
+"This is the distance in meters the wheel is lowered from its origin point. "
+"Don't set this to 0.0 and move the wheel into position, instead move the "
+"origin point of your wheel (the gizmo in Godot) to the position the wheel "
+"will take when bottoming out, then use the rest length to move the wheel "
+"down to the position it should be in when the car is in rest."
+msgstr ""
+
+#: doc/classes/VehicleWheel3D.xml:79
+msgid ""
+"This value affects the roll of your vehicle. If set to 1.0 for all wheels, "
+"your vehicle will be prone to rolling over, while a value of 0.0 will resist "
+"body roll."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:4
+msgid "Control for playing video streams."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:7
+msgid ""
+"Control node for playing video streams using [VideoStream] resources.\n"
+"Supported video formats are [url=https://www.webmproject.org/]WebM[/url] "
+"([VideoStreamWebm]), [url=https://www.theora.org/]Ogg Theora[/url] "
+"([VideoStreamTheora]), and any format exposed via a GDNative plugin using "
+"[VideoStreamGDNative]."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:17
+msgid ""
+"Returns the video stream's name, or [code]\"<No Stream>\"[/code] if no video "
+"stream is assigned."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:24
+msgid "Returns the current frame as a [Texture2D]."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:31
+msgid ""
+"Returns [code]true[/code] if the video is playing.\n"
+"[b]Note:[/b] The video is still considered playing if paused during playback."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:39
+msgid ""
+"Starts the video playback from the beginning. If the video is paused, this "
+"will not unpause the video."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:46
+msgid ""
+"Stops the video playback and sets the stream position to 0.\n"
+"[b]Note:[/b] Although the stream position will be set to 0, the first frame "
+"of the video stream won't become the current frame."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:53
+msgid "The embedded audio track to play."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:56
+msgid "If [code]true[/code], playback starts when the scene loads."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:59
+msgid "Amount of time in milliseconds to store in buffer while playing."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:62
+msgid "Audio bus to use for sound playback."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:65
+msgid ""
+"If [code]true[/code], the video scales to the control size. Otherwise, the "
+"control minimum size will be automatically adjusted to match the video "
+"stream's dimensions."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:68
+msgid "If [code]true[/code], the video is paused."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:71
+msgid "The assigned video stream. See description for supported formats."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:74
+msgid "The current position of the stream, in seconds."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:77
+msgid "Audio volume as a linear value."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:80
+msgid "Audio volume in dB."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:86
+msgid "Emitted when playback is finished."
+msgstr ""
+
+#: doc/classes/VideoStream.xml:4
+msgid "Base resource for video streams."
+msgstr ""
+
+#: doc/classes/VideoStream.xml:7
+msgid ""
+"Base resource type for all video streams. Classes that derive from "
+"[VideoStream] can all be used as resource types to play back videos in "
+"[VideoPlayer]."
+msgstr ""
+
+#: modules/gdnative/doc_classes/VideoStreamGDNative.xml:4
+msgid "[VideoStream] resource for for video formats implemented via GDNative."
+msgstr ""
+
+#: modules/gdnative/doc_classes/VideoStreamGDNative.xml:7
+msgid ""
+"[VideoStream] resource for for video formats implemented via GDNative.\n"
+"It can be used via [url=https://github.com/KidRigger/godot-"
+"videodecoder]godot-videodecoder[/url] which uses the [url=https://ffmpeg."
+"org]FFmpeg[/url] library."
+msgstr ""
+
+#: modules/gdnative/doc_classes/VideoStreamGDNative.xml:17
+msgid "Returns the video file handled by this [VideoStreamGDNative]."
+msgstr ""
+
+#: modules/gdnative/doc_classes/VideoStreamGDNative.xml:26
+msgid ""
+"Sets the video file that this [VideoStreamGDNative] resource handles. The "
+"supported extensions depend on the GDNative plugins used to expose video "
+"formats."
+msgstr ""
+
+#: modules/theora/doc_classes/VideoStreamTheora.xml:4
+msgid "[VideoStream] resource for Ogg Theora videos."
+msgstr ""
+
+#: modules/theora/doc_classes/VideoStreamTheora.xml:7
+msgid ""
+"[VideoStream] resource handling the [url=https://www.theora.org/]Ogg Theora[/"
+"url] video format with [code].ogv[/code] extension."
+msgstr ""
+
+#: modules/theora/doc_classes/VideoStreamTheora.xml:16
+msgid "Returns the Ogg Theora video file handled by this [VideoStreamTheora]."
+msgstr ""
+
+#: modules/theora/doc_classes/VideoStreamTheora.xml:25
+msgid ""
+"Sets the Ogg Theora video file that this [VideoStreamTheora] resource "
+"handles. The [code]file[/code] name should have the [code].o[/code] "
+"extension."
+msgstr ""
+
+#: modules/webm/doc_classes/VideoStreamWebm.xml:4
+msgid "[VideoStream] resource for WebM videos."
+msgstr ""
+
+#: modules/webm/doc_classes/VideoStreamWebm.xml:7
+msgid ""
+"[VideoStream] resource handling the [url=https://www.webmproject.org/]WebM[/"
+"url] video format with [code].webm[/code] extension."
+msgstr ""
+
+#: modules/webm/doc_classes/VideoStreamWebm.xml:16
+msgid "Returns the WebM video file handled by this [VideoStreamWebm]."
+msgstr ""
+
+#: modules/webm/doc_classes/VideoStreamWebm.xml:25
+msgid ""
+"Sets the WebM video file that this [VideoStreamWebm] resource handles. The "
+"[code]file[/code] name should have the [code].webm[/code] extension."
+msgstr ""
+
+#: doc/classes/Viewport.xml:4
+msgid "Creates a sub-view into the screen."
+msgstr ""
+
+#: doc/classes/Viewport.xml:7
+msgid ""
+"A Viewport creates a different view into the screen, or a sub-view inside "
+"another viewport. Children 2D Nodes will display on it, and children "
+"Camera3D 3D nodes will render on it too.\n"
+"Optionally, a viewport can have its own 2D or 3D world, so they don't share "
+"what they draw with other viewports.\n"
+"If a viewport is a child of a [SubViewportContainer], it will automatically "
+"take up its size, otherwise it must be set manually.\n"
+"Viewports can also choose to be audio listeners, so they generate positional "
+"audio depending on a 2D or 3D camera child of it.\n"
+"Also, viewports can be assigned to different screens in case the devices "
+"have multiple screens.\n"
+"Finally, viewports can also behave as render targets, in which case they "
+"will not be visible unless the associated texture is used to draw."
+msgstr ""
+
+#: doc/classes/Viewport.xml:16
+msgid "https://docs.godotengine.org/en/latest/tutorials/viewports/index.html"
+msgstr ""
+
+#: doc/classes/Viewport.xml:23
+msgid "Returns the 2D world of the viewport."
+msgstr ""
+
+#: doc/classes/Viewport.xml:30
+msgid ""
+"Returns the 3D world of the viewport, or if none the world of the parent "
+"viewport."
+msgstr ""
+
+#: doc/classes/Viewport.xml:37
+msgid "Returns the active 3D camera."
+msgstr ""
+
+#: doc/classes/Viewport.xml:44
+msgid "Returns the total transform of the viewport."
+msgstr ""
+
+#: doc/classes/Viewport.xml:51
+msgid "Returns the mouse position relative to the viewport."
+msgstr ""
+
+#: doc/classes/Viewport.xml:60
+msgid "Returns information about the viewport from the rendering pipeline."
+msgstr ""
+
+#: doc/classes/Viewport.xml:69
+msgid "Returns the [enum ShadowAtlasQuadrantSubdiv] of the specified quadrant."
+msgstr ""
+
+#: doc/classes/Viewport.xml:76
+msgid ""
+"Returns the viewport's texture.\n"
+"[b]Note:[/b] Due to the way OpenGL works, the resulting [ViewportTexture] is "
+"flipped vertically. You can use [method Image.flip_y] on the result of "
+"[method Texture2D.get_data] to flip it back, for example:\n"
+"[codeblock]\n"
+"var img = get_viewport().get_texture().get_data()\n"
+"img.flip_y()\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Viewport.xml:88
+msgid "Returns the viewport's RID from the [RenderingServer]."
+msgstr ""
+
+#: doc/classes/Viewport.xml:95
+msgid "Returns the visible rectangle in global screen coordinates."
+msgstr ""
+
+#: doc/classes/Viewport.xml:102
+msgid ""
+"Returns the drag data from the GUI, that was previously returned by [method "
+"Control.get_drag_data]."
+msgstr ""
+
+#: doc/classes/Viewport.xml:109
+msgid ""
+"Returns [code]true[/code] if the viewport is currently performing a drag "
+"operation."
+msgstr ""
+
+#: doc/classes/Viewport.xml:146
+msgid "Stops the input from propagating further down the [SceneTree]."
+msgstr ""
+
+#: doc/classes/Viewport.xml:157
+msgid ""
+"Sets the number of subdivisions to use in the specified quadrant. A higher "
+"number of subdivisions allows you to have more shadows in the scene at once, "
+"but reduces the quality of the shadows. A good practice is to have quadrants "
+"with a varying number of subdivisions and to have as few subdivisions as "
+"possible."
+msgstr ""
+
+#: doc/classes/Viewport.xml:174
+msgid "Forces update of the 2D and 3D worlds."
+msgstr ""
+
+#: doc/classes/Viewport.xml:183
+msgid "Warps the mouse to a position relative to the viewport."
+msgstr ""
+
+#: doc/classes/Viewport.xml:189
+msgid "If [code]true[/code], the viewport will process 2D audio streams."
+msgstr ""
+
+#: doc/classes/Viewport.xml:192
+msgid "If [code]true[/code], the viewport will process 3D audio streams."
+msgstr ""
+
+#: doc/classes/Viewport.xml:195
+msgid ""
+"Sets the default filter mode used by [CanvasItem]s in this Viewport. See "
+"[enum DefaultCanvasItemTextureFilter] for options."
+msgstr ""
+
+#: doc/classes/Viewport.xml:198
+msgid ""
+"Sets the default repeat mode used by [CanvasItem]s in this Viewport. See "
+"[enum DefaultCanvasItemTextureRepeat] for options."
+msgstr ""
+
+#: doc/classes/Viewport.xml:201
+msgid ""
+"The canvas transform of the viewport, useful for changing the on-screen "
+"positions of all child [CanvasItem]s. This is relative to the global canvas "
+"transform of the viewport."
+msgstr ""
+
+#: doc/classes/Viewport.xml:204
+msgid "The overlay mode for test rendered geometry in debug purposes."
+msgstr ""
+
+#: doc/classes/Viewport.xml:207
+msgid ""
+"The global canvas transform of the viewport. The canvas transform is "
+"relative to this."
+msgstr ""
+
+#: doc/classes/Viewport.xml:210
+msgid "If [code]true[/code], the viewport will not receive input event."
+msgstr ""
+
+#: doc/classes/Viewport.xml:215
+msgid ""
+"If [code]true[/code], the GUI controls on the viewport will lay pixel "
+"perfectly."
+msgstr ""
+
+#: doc/classes/Viewport.xml:220
+msgid ""
+"The multisample anti-aliasing mode. A higher number results in smoother "
+"edges at the cost of significantly worse performance. A value of 4 is best "
+"unless targeting very high-end systems."
+msgstr ""
+
+#: doc/classes/Viewport.xml:223
+msgid ""
+"If [code]true[/code], the viewport will use the [World3D] defined in [member "
+"world_3d]."
+msgstr ""
+
+#: doc/classes/Viewport.xml:226
+msgid ""
+"If [code]true[/code], the objects rendered by viewport become subjects of "
+"mouse picking process."
+msgstr ""
+
+#: doc/classes/Viewport.xml:229
+msgid ""
+"Sets the screen-space antialiasing method used. Screen-space antialiasing "
+"works by selectively blurring edges in a post-process shader. It differs "
+"from MSAA which takes multiple coverage samples while rendering objects. "
+"Screen-space AA methods are typically faster than MSAA and will smooth out "
+"specular aliasing, but tend to make scenes appear blurry."
+msgstr ""
+
+#: doc/classes/Viewport.xml:232
+msgid "The subdivision amount of the first quadrant on the shadow atlas."
+msgstr ""
+
+#: doc/classes/Viewport.xml:235
+msgid "The subdivision amount of the second quadrant on the shadow atlas."
+msgstr ""
+
+#: doc/classes/Viewport.xml:238
+msgid "The subdivision amount of the third quadrant on the shadow atlas."
+msgstr ""
+
+#: doc/classes/Viewport.xml:241
+msgid "The subdivision amount of the fourth quadrant on the shadow atlas."
+msgstr ""
+
+#: doc/classes/Viewport.xml:244
+msgid ""
+"The shadow atlas' resolution (used for omni and spot lights). The value will "
+"be rounded up to the nearest power of 2.\n"
+"[b]Note:[/b] If this is set to 0, shadows won't be visible. Since user-"
+"created viewports default to a value of 0, this value must be set above 0 "
+"manually."
+msgstr ""
+
+#: doc/classes/Viewport.xml:248
+msgid ""
+"If [code]true[/code], the viewport should render its background as "
+"transparent."
+msgstr ""
+
+#: doc/classes/Viewport.xml:251
+msgid "The custom [World2D] which can be used as 2D environment source."
+msgstr ""
+
+#: doc/classes/Viewport.xml:254
+msgid "The custom [World3D] which can be used as 3D environment source."
+msgstr ""
+
+#: doc/classes/Viewport.xml:262
+msgid "Emitted when a Control node grabs keyboard focus."
+msgstr ""
+
+#: doc/classes/Viewport.xml:267
+msgid ""
+"Emitted when the size of the viewport is changed, whether by resizing of "
+"window, or some other means."
+msgstr ""
+
+#: doc/classes/Viewport.xml:273
+msgid "This quadrant will not be used."
+msgstr ""
+
+#: doc/classes/Viewport.xml:276
+msgid "This quadrant will only be used by one shadow map."
+msgstr ""
+
+#: doc/classes/Viewport.xml:279
+msgid "This quadrant will be split in 4 and used by up to 4 shadow maps."
+msgstr ""
+
+#: doc/classes/Viewport.xml:282
+msgid "This quadrant will be split 16 ways and used by up to 16 shadow maps."
+msgstr ""
+
+#: doc/classes/Viewport.xml:285
+msgid "This quadrant will be split 64 ways and used by up to 64 shadow maps."
+msgstr ""
+
+#: doc/classes/Viewport.xml:288
+msgid ""
+"This quadrant will be split 256 ways and used by up to 256 shadow maps. "
+"Unless the [member shadow_atlas_size] is very high, the shadows in this "
+"quadrant will be very low resolution."
+msgstr ""
+
+#: doc/classes/Viewport.xml:291
+msgid ""
+"This quadrant will be split 1024 ways and used by up to 1024 shadow maps. "
+"Unless the [member shadow_atlas_size] is very high, the shadows in this "
+"quadrant will be very low resolution."
+msgstr ""
+
+#: doc/classes/Viewport.xml:294
+msgid "Represents the size of the [enum ShadowAtlasQuadrantSubdiv] enum."
+msgstr ""
+
+#: doc/classes/Viewport.xml:297
+msgid ""
+"Multisample antialiasing mode disabled. This is the default value, and also "
+"the fastest setting."
+msgstr ""
+
+#: doc/classes/Viewport.xml:300
+msgid "Use 2x Multisample Antialiasing."
+msgstr ""
+
+#: doc/classes/Viewport.xml:303
+msgid "Use 4x Multisample Antialiasing."
+msgstr ""
+
+#: doc/classes/Viewport.xml:306
+msgid ""
+"Use 8x Multisample Antialiasing. Likely unsupported on low-end and older "
+"hardware."
+msgstr ""
+
+#: doc/classes/Viewport.xml:309
+msgid ""
+"Use 16x Multisample Antialiasing. Likely unsupported on medium and low-end "
+"hardware."
+msgstr ""
+
+#: doc/classes/Viewport.xml:312
+msgid "Represents the size of the [enum MSAA] enum."
+msgstr ""
+
+#: doc/classes/Viewport.xml:315
+msgid "Do not perform any antialiasing in the full screen post-process."
+msgstr ""
+
+#: doc/classes/Viewport.xml:318
+msgid ""
+"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."
+msgstr ""
+
+#: doc/classes/Viewport.xml:321
+msgid "Represents the size of the [enum ScreenSpaceAA] enum."
+msgstr ""
+
+#: doc/classes/Viewport.xml:324
+msgid "Amount of objects in frame."
+msgstr ""
+
+#: doc/classes/Viewport.xml:327
+msgid "Amount of vertices in frame."
+msgstr ""
+
+#: doc/classes/Viewport.xml:330
+msgid "Amount of material changes in frame."
+msgstr ""
+
+#: doc/classes/Viewport.xml:333
+msgid "Amount of shader changes in frame."
+msgstr ""
+
+#: doc/classes/Viewport.xml:336
+msgid "Amount of surface changes in frame."
+msgstr ""
+
+#: doc/classes/Viewport.xml:339
+msgid "Amount of draw calls in frame."
+msgstr ""
+
+#: doc/classes/Viewport.xml:342
+msgid "Represents the size of the [enum RenderInfo] enum."
+msgstr ""
+
+#: doc/classes/Viewport.xml:345
+msgid "Objects are displayed normally."
+msgstr ""
+
+#: doc/classes/Viewport.xml:356
+msgid "Objects are displayed in wireframe style."
+msgstr ""
+
+#: doc/classes/Viewport.xml:378
+msgid ""
+"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 [member Environment.ssao_enabled] set in "
+"your [WorldEnvironment]."
+msgstr ""
+
+#: doc/classes/Viewport.xml:381
+msgid ""
+"Colors each PSSM split for the [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, and yellow."
+msgstr ""
+
+#: doc/classes/Viewport.xml:384
+msgid ""
+"Draws the decal atlas used by [Decal]s and light projector textures in the "
+"upper left quadrant of the [Viewport]."
+msgstr ""
+
+#: doc/classes/Viewport.xml:405
+msgid "Max value for [enum DefaultCanvasItemTextureFilter] enum."
+msgstr ""
+
+#: doc/classes/Viewport.xml:417
+msgid "Max value for [enum DefaultCanvasItemTextureRepeat] enum."
+msgstr ""
+
+#: doc/classes/ViewportTexture.xml:4
+msgid "Texture which displays the content of a [Viewport]."
+msgstr ""
+
+#: doc/classes/ViewportTexture.xml:7
+msgid ""
+"Displays the content of a [Viewport] node as a dynamic [Texture2D]. This can "
+"be used to mix controls, 2D, and 3D elements in the same scene.\n"
+"To create a ViewportTexture in code, use the [method Viewport.get_texture] "
+"method on the target viewport."
+msgstr ""
+
+#: doc/classes/ViewportTexture.xml:17
+msgid ""
+"The path to the [Viewport] node to display. This is relative to the scene "
+"root, not to the node which uses the texture."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:4 doc/classes/VisibilityEnabler3D.xml:4
+msgid "Enables certain nodes only when approximately visible."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:7
+msgid ""
+"The VisibilityEnabler2D will disable [RigidBody2D], [AnimationPlayer], and "
+"other nodes when they are not visible. It will only affect nodes with the "
+"same root node as the VisibilityEnabler2D, and the root node itself.\n"
+"If you just want to receive notifications, use [VisibilityNotifier2D] "
+"instead.\n"
+"[b]Note:[/b] For performance reasons, VisibilityEnabler2D uses an "
+"approximate heuristic with precision determined by [member ProjectSettings."
+"world/2d/cell_size]. If you need precise visibility checking, use another "
+"method such as adding an [Area2D] node as a child of a [Camera2D] node.\n"
+"[b]Note:[/b] VisibilityEnabler2D will not affect nodes added after scene "
+"initialization."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:21
+#: doc/classes/VisibilityEnabler3D.xml:21
+msgid ""
+"Returns whether the enabler identified by given [enum Enabler] constant is "
+"active."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:32
+#: doc/classes/VisibilityEnabler3D.xml:32
+msgid ""
+"Sets active state of the enabler identified by given [enum Enabler] constant."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:38
+msgid "If [code]true[/code], [RigidBody2D] nodes will be paused."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:41
+msgid "If [code]true[/code], [AnimatedSprite2D] nodes will be paused."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:44
+#: doc/classes/VisibilityEnabler3D.xml:41
+msgid "If [code]true[/code], [AnimationPlayer] nodes will be paused."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:47
+msgid "If [code]true[/code], [GPUParticles2D] nodes will be paused."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:50
+msgid ""
+"If [code]true[/code], the parent's [method Node._physics_process] will be "
+"stopped."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:53
+msgid ""
+"If [code]true[/code], the parent's [method Node._process] will be stopped."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:58
+#: doc/classes/VisibilityEnabler3D.xml:46
+msgid "This enabler will pause [AnimationPlayer] nodes."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:61
+msgid "This enabler will freeze [RigidBody2D] nodes."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:64
+msgid "This enabler will stop [GPUParticles2D] nodes."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:67
+msgid "This enabler will stop the parent's _process function."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:70
+msgid "This enabler will stop the parent's _physics_process function."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:73
+msgid "This enabler will stop [AnimatedSprite2D] nodes animations."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:76
+#: doc/classes/VisibilityEnabler3D.xml:52
+msgid "Represents the size of the [enum Enabler] enum."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler3D.xml:7
+msgid ""
+"The VisibilityEnabler3D will disable [RigidBody3D] and [AnimationPlayer] "
+"nodes when they are not visible. It will only affect other nodes within the "
+"same scene as the VisibilityEnabler3D itself.\n"
+"If you just want to receive notifications, use [VisibilityNotifier3D] "
+"instead.\n"
+"[b]Note:[/b] VisibilityEnabler3D uses an approximate heuristic for "
+"performance reasons. It doesn't take walls and other occlusion into account. "
+"The heuristic is an implementation detail and may change in future versions. "
+"If you need precise visibility checking, use another method such as adding "
+"an [Area3D] node as a child of a [Camera3D] node and/or [method Vector3."
+"dot].\n"
+"[b]Note:[/b] VisibilityEnabler3D will not affect nodes added after scene "
+"initialization."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler3D.xml:38
+msgid "If [code]true[/code], [RigidBody3D] nodes will be paused."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler3D.xml:49
+msgid "This enabler will freeze [RigidBody3D] nodes."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier2D.xml:4
+#: doc/classes/VisibilityNotifier3D.xml:4
+msgid "Detects approximately when the node is visible on screen."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier2D.xml:7
+msgid ""
+"The VisibilityNotifier2D detects when it is visible on the screen. It also "
+"notifies when its bounding rectangle enters or exits the screen or a "
+"viewport.\n"
+"If you want nodes to be disabled automatically when they exit the screen, "
+"use [VisibilityEnabler2D] instead.\n"
+"[b]Note:[/b] For performance reasons, VisibilityNotifier2D uses an "
+"approximate heuristic with precision determined by [member ProjectSettings."
+"world/2d/cell_size]. If you need precise visibility checking, use another "
+"method such as adding an [Area2D] node as a child of a [Camera2D] node."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier2D.xml:18
+msgid ""
+"If [code]true[/code], the bounding rectangle is on the screen.\n"
+"[b]Note:[/b] It takes one frame for the node's visibility to be assessed "
+"once added to the scene tree, so this method will return [code]false[/code] "
+"right after it is instantiated, even if it will be on screen in the draw "
+"pass."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier2D.xml:25
+msgid "The VisibilityNotifier2D's bounding rectangle."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier2D.xml:31
+msgid "Emitted when the VisibilityNotifier2D enters the screen."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier2D.xml:36
+msgid "Emitted when the VisibilityNotifier2D exits the screen."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier2D.xml:43
+msgid "Emitted when the VisibilityNotifier2D enters a [Viewport]'s view."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier2D.xml:50
+msgid "Emitted when the VisibilityNotifier2D exits a [Viewport]'s view."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier3D.xml:7
+msgid ""
+"The VisibilityNotifier3D detects when it is visible on the screen. It also "
+"notifies when its bounding rectangle enters or exits the screen or a "
+"[Camera3D]'s view.\n"
+"If you want nodes to be disabled automatically when they exit the screen, "
+"use [VisibilityEnabler3D] instead.\n"
+"[b]Note:[/b] VisibilityNotifier3D uses an approximate heuristic for "
+"performance reasons. It doesn't take walls and other occlusion into account. "
+"The heuristic is an implementation detail and may change in future versions. "
+"If you need precise visibility checking, use another method such as adding "
+"an [Area3D] node as a child of a [Camera3D] node and/or [method Vector3.dot]."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier3D.xml:18
+msgid ""
+"If [code]true[/code], the bounding box is on the screen.\n"
+"[b]Note:[/b] It takes one frame for the node's visibility to be assessed "
+"once added to the scene tree, so this method will return [code]false[/code] "
+"right after it is instantiated, even if it will be on screen in the draw "
+"pass."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier3D.xml:25
+msgid "The VisibilityNotifier3D's bounding box."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier3D.xml:33
+msgid "Emitted when the VisibilityNotifier3D enters a [Camera3D]'s view."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier3D.xml:40
+msgid "Emitted when the VisibilityNotifier3D exits a [Camera3D]'s view."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier3D.xml:45
+msgid "Emitted when the VisibilityNotifier3D enters the screen."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier3D.xml:50
+msgid "Emitted when the VisibilityNotifier3D exits the screen."
+msgstr ""
+
+#: doc/classes/VisualInstance3D.xml:4
+msgid "Parent of all visual 3D nodes."
+msgstr ""
+
+#: doc/classes/VisualInstance3D.xml:7
+msgid ""
+"The [VisualInstance3D] is used to connect a resource to a visual "
+"representation. All visual 3D nodes inherit from the [VisualInstance3D]. In "
+"general, you should not access the [VisualInstance3D] properties directly as "
+"they are accessed and managed by the nodes that inherit from "
+"[VisualInstance3D]. [VisualInstance3D] is the node representation of the "
+"[RenderingServer] instance."
+msgstr ""
+
+#: doc/classes/VisualInstance3D.xml:16
+msgid ""
+"Returns the [AABB] (also known as the bounding box) for this "
+"[VisualInstance3D]."
+msgstr ""
+
+#: doc/classes/VisualInstance3D.xml:23
+msgid ""
+"Returns the RID of the resource associated with this [VisualInstance3D]. For "
+"example, if the Node is a [MeshInstance3D], this will return the RID of the "
+"associated [Mesh]."
+msgstr ""
+
+#: doc/classes/VisualInstance3D.xml:30
+msgid ""
+"Returns the RID of this instance. This RID is the same as the RID returned "
+"by [method RenderingServer.instance_create]. This RID is needed if you want "
+"to call [RenderingServer] functions directly on this [VisualInstance3D]."
+msgstr ""
+
+#: doc/classes/VisualInstance3D.xml:39
+msgid ""
+"Returns [code]true[/code] when the specified layer is enabled in [member "
+"layers] and [code]false[/code] otherwise."
+msgstr ""
+
+#: doc/classes/VisualInstance3D.xml:46
+msgid ""
+"Returns the transformed [AABB] (also known as the bounding box) for this "
+"[VisualInstance3D].\n"
+"Transformed in this case means the [AABB] plus the position, rotation, and "
+"scale of the [Node3D]'s [Transform]."
+msgstr ""
+
+#: doc/classes/VisualInstance3D.xml:56
+msgid ""
+"Sets the resource that is instantiated by this [VisualInstance3D], which "
+"changes how the engine handles the [VisualInstance3D] under the hood. "
+"Equivalent to [method RenderingServer.instance_set_base]."
+msgstr ""
+
+#: doc/classes/VisualInstance3D.xml:67
+msgid "Enables a particular layer in [member layers]."
+msgstr ""
+
+#: doc/classes/VisualInstance3D.xml:73
+msgid ""
+"The render layer(s) this [VisualInstance3D] is drawn on.\n"
+"This object will only be visible for [Camera3D]s whose cull mask includes "
+"the render object this [VisualInstance3D] is set to."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:4
+msgid "A script implemented in the Visual Script programming environment."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:7
+msgid ""
+"A script implemented in the Visual Script programming environment. The "
+"script extends the functionality of all objects that instance it.\n"
+"[method Object.set_script] extends an existing object, if that object's "
+"class matches one of the script's base classes.\n"
+"You are most likely to use this class via the Visual Script editor or when "
+"writing plugins for it."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:12
+msgid ""
+"https://docs.godotengine.org/en/latest/getting_started/scripting/"
+"visual_script/index.html"
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:21
+msgid "Add a custom signal with the specified name to the VisualScript."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:30
+msgid "Add a function with the specified name to the VisualScript."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:45
+msgid "Add a node to a function of the VisualScript."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:58
+msgid ""
+"Add a variable to the VisualScript, optionally giving it a default value or "
+"marking it as exported."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:73
+msgid ""
+"Add an argument to a custom signal added with [method add_custom_signal]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:82
+msgid "Get the count of a custom signal's arguments."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:93
+msgid "Get the name of a custom signal's argument."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:104
+msgid "Get the type of a custom signal's argument."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:115
+msgid "Remove a specific custom signal's argument."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:128
+msgid "Rename a custom signal's argument."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:141
+msgid "Change the type of a custom signal's argument."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:154
+msgid "Swap two of the arguments of a custom signal."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:171
+msgid ""
+"Connect two data ports. The value of [code]from_node[/code]'s "
+"[code]from_port[/code] would be fed into [code]to_node[/code]'s "
+"[code]to_port[/code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:188
+msgid ""
+"Disconnect two data ports previously connected with [method data_connect]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:197
+msgid "Returns the id of a function's entry point node."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:206
+msgid "Returns the position of the center of the screen for a given function."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:217
+msgid "Returns a node given its id and its function."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:228
+msgid "Returns a node's position in pixels."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:237
+msgid "Returns the default (initial) value of a variable."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:246
+msgid "Returns whether a variable is exported."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:255
+msgid ""
+"Returns the information for a given variable as a dictionary. The "
+"information includes its name, type, hint and usage."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:264
+msgid "Returns whether a signal exists with the specified name."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:281
+msgid "Returns whether the specified data ports are connected."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:290
+msgid "Returns whether a function exists with the specified name."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:301
+msgid "Returns whether a node exists with the given id."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:316
+msgid "Returns whether the specified sequence ports are connected."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:325
+msgid "Returns whether a variable exists with the specified name."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:334
+msgid "Remove a custom signal with the given name."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:343
+msgid "Remove a specific function and its nodes from the script."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:354
+msgid "Remove a specific node."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:363
+msgid "Remove a variable with the given name."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:374
+msgid "Change the name of a custom signal."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:385
+msgid "Change the name of a function."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:396
+msgid "Change the name of a variable."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:411
+msgid ""
+"Connect two sequence ports. The execution will flow from of [code]from_node[/"
+"code]'s [code]from_output[/code] into [code]to_node[/code].\n"
+"Unlike [method data_connect], there isn't a [code]to_port[/code], since the "
+"target node can have only one sequence port."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:427
+msgid ""
+"Disconnect two sequence ports previously connected with [method "
+"sequence_connect]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:438
+msgid "Position the center of the screen for a function."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:447
+msgid "Set the base type of the script."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:460
+msgid "Position a node on the screen."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:471
+msgid "Change the default (initial) value of a variable."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:482
+msgid "Change whether a variable is exported."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:493
+msgid ""
+"Set a variable's info, using the same format as [method get_variable_info]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:504
+msgid "Emitted when the ports of a node are changed."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBasicTypeConstant.xml:4
+msgid "A Visual Script node representing a constant from the base types."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBasicTypeConstant.xml:7
+msgid ""
+"A Visual Script node representing a constant from base types, such as "
+"[constant Vector3.AXIS_X]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBasicTypeConstant.xml:15
+msgid "The type to get the constant from."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBasicTypeConstant.xml:18
+msgid "The name of the constant to return."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:4
+msgid "A Visual Script node used to call built-in functions."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:7
+msgid ""
+"A built-in function used inside a [VisualScript]. It is usually a math "
+"function or an utility function.\n"
+"See also [@GDScript], for the same functions in the GDScript language."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:16
+msgid "The function to be executed."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:21
+msgid "Return the sine of the input."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:24
+msgid "Return the cosine of the input."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:27
+msgid "Return the tangent of the input."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:30
+msgid "Return the hyperbolic sine of the input."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:33
+msgid "Return the hyperbolic cosine of the input."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:36
+msgid "Return the hyperbolic tangent of the input."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:39
+msgid "Return the arc sine of the input."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:42
+msgid "Return the arc cosine of the input."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:45
+msgid "Return the arc tangent of the input."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:48
+msgid ""
+"Return the arc tangent of the input, using the signs of both parameters to "
+"determine the exact angle."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:51
+msgid "Return the square root of the input."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:54
+msgid ""
+"Return the remainder of one input divided by the other, using floating-point "
+"numbers."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:57
+msgid ""
+"Return the positive remainder of one input divided by the other, using "
+"floating-point numbers."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:60
+msgid "Return the input rounded down."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:63
+msgid "Return the input rounded up."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:66
+msgid "Return the input rounded to the nearest integer."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:69
+msgid "Return the absolute value of the input."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:72
+msgid ""
+"Return the sign of the input, turning it into 1, -1, or 0. Useful to "
+"determine if the input is positive or negative."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:75
+msgid "Return the input raised to a given power."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:78
+msgid ""
+"Return the natural logarithm of the input. Note that this is not the typical "
+"base-10 logarithm function calculators use."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:81
+msgid ""
+"Return the mathematical constant [b]e[/b] raised to the specified power of "
+"the input. [b]e[/b] has an approximate value of 2.71828."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:84
+msgid ""
+"Return whether the input is NaN (Not a Number) or not. NaN is usually "
+"produced by dividing 0 by 0, though other ways exist."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:87
+msgid ""
+"Return whether the input is an infinite floating-point number or not. "
+"Infinity is usually produced by dividing a number by 0, though other ways "
+"exist."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:90
+msgid ""
+"Easing function, based on exponent. 0 is constant, 1 is linear, 0 to 1 is "
+"ease-in, 1+ is ease out. Negative values are in-out/out in."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:93
+msgid ""
+"Return the number of digit places after the decimal that the first non-zero "
+"digit occurs."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:96
+msgid "Return the input snapped to a given step."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:99
+msgid ""
+"Return a number linearly interpolated between the first two inputs, based on "
+"the third input. Uses the formula [code]a + (a - b) * t[/code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:106
+msgid "Moves the number toward a value, based on the third input."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:109
+msgid ""
+"Return the result of [code]value[/code] decreased by [code]step[/code] * "
+"[code]amount[/code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:112
+msgid ""
+"Randomize the seed (or the internal state) of the random number generator. "
+"Current implementation reseeds using a number based on time."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:115
+msgid ""
+"Return a random 32 bits integer value. To obtain a random value between 0 to "
+"N (where N is smaller than 2^32 - 1), you can use it with the remainder "
+"function."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:118
+msgid ""
+"Return a random floating-point value between 0 and 1. To obtain a random "
+"value between 0 to N, you can use it with multiplication."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:121
+msgid "Return a random floating-point value between the two inputs."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:124
+msgid "Set the seed for the random number generator."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:127
+msgid "Return a random value from the given seed, along with the new seed."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:130
+msgid "Convert the input from degrees to radians."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:133
+msgid "Convert the input from radians to degrees."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:136
+msgid "Convert the input from linear volume to decibel volume."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:139
+msgid "Convert the input from decibel volume to linear volume."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:152
+msgid "Return the greater of the two numbers, also known as their maximum."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:155
+msgid "Return the lesser of the two numbers, also known as their minimum."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:158
+msgid ""
+"Return the input clamped inside the given range, ensuring the result is "
+"never outside it. Equivalent to [code]min(max(input, range_low), range_high)"
+"[/code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:161
+msgid "Return the nearest power of 2 to the input."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:164
+msgid "Create a [WeakRef] from the input."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:167
+msgid "Create a [FuncRef] from the input."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:170
+msgid "Convert between types."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:173
+msgid ""
+"Return the type of the input as an integer. Check [enum Variant.Type] for "
+"the integers that might be returned."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:176
+msgid "Checks if a type is registered in the [ClassDB]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:179
+msgid "Return a character with the given ascii value."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:182
+msgid "Convert the input to a string."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:185
+msgid "Print the given string to the output window."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:188
+msgid "Print the given string to the standard error output."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:191
+msgid ""
+"Print the given string to the standard output, without adding a newline."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:194
+msgid "Serialize a [Variant] to a string."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:197
+msgid ""
+"Deserialize a [Variant] from a string serialized using [constant VAR_TO_STR]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:200
+msgid "Serialize a [Variant] to a [PackedByteArray]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:203
+msgid ""
+"Deserialize a [Variant] from a [PackedByteArray] serialized using [constant "
+"VAR_TO_BYTES]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:206
+msgid ""
+"Return the [Color] with the given name and alpha ranging from 0 to 1.\n"
+"[b]Note:[/b] Names are defined in [code]color_names.inc[/code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:210
+msgid ""
+"Return a number smoothly interpolated between the first two inputs, based on "
+"the third input. Similar to [constant MATH_LERP], but interpolates faster at "
+"the beginning and slower at the end. Using Hermite interpolation formula:\n"
+"[codeblock]\n"
+"var t = clamp((weight - from) / (to - from), 0.0, 1.0)\n"
+"return t * t * (3.0 - 2.0 * t)\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:223
+msgid "Represents the size of the [enum BuiltinFunc] enum."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptClassConstant.xml:4
+msgid "Gets a constant from a given class."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptClassConstant.xml:7
+msgid ""
+"This node returns a constant from a given class, such as [constant "
+"TYPE_INT]. See the given class' documentation for available constants.\n"
+"[b]Input Ports:[/b]\n"
+"none\n"
+"[b]Output Ports:[/b]\n"
+"- Data (variant): [code]value[/code]"
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptClassConstant.xml:19
+msgid "The constant's parent class."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptClassConstant.xml:22
+msgid ""
+"The constant to return. See the given class for its available constants."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptComment.xml:4
+msgid "A Visual Script node used to annotate the script."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptComment.xml:7
+msgid ""
+"A Visual Script node used to display annotations in the script, so that code "
+"may be documented.\n"
+"Comment nodes can be resized so they encompass a group of nodes."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptComment.xml:16
+msgid "The text inside the comment node."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptComment.xml:19
+msgid "The comment node's size (in pixels)."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptComment.xml:22
+msgid "The comment node's title."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptComposeArray.xml:4
+msgid "A Visual Script Node used to create array from a list of items."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptComposeArray.xml:7
+msgid ""
+"A Visual Script Node used to compose array from the list of elements "
+"provided with custom in-graph UI hard coded in the VisualScript Editor."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCondition.xml:4
+msgid "A Visual Script node which branches the flow."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCondition.xml:7
+msgid ""
+"A Visual Script node that checks a [bool] input port. If [code]true[/code], "
+"it will exit via the \"true\" sequence port. If [code]false[/code], it will "
+"exit via the \"false\" sequence port. After exiting either, it exits via the "
+"\"done\" port. Sequence ports may be left disconnected.\n"
+"[b]Input Ports:[/b]\n"
+"- Sequence: [code]if (cond) is[/code]\n"
+"- Data (boolean): [code]cond[/code]\n"
+"[b]Output Ports:[/b]\n"
+"- Sequence: [code]true[/code]\n"
+"- Sequence: [code]false[/code]\n"
+"- Sequence: [code]done[/code]"
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptConstant.xml:4
+msgid "Gets a contant's value."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptConstant.xml:7
+msgid ""
+"This node returns a constant's value.\n"
+"[b]Input Ports:[/b]\n"
+"none\n"
+"[b]Output Ports:[/b]\n"
+"- Data (variant): [code]get[/code]"
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptConstant.xml:19
+msgid "The constant's type."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptConstant.xml:22
+msgid "The constant's value."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptConstructor.xml:4
+msgid "A Visual Script node which calls a base type constructor."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptConstructor.xml:7
+msgid ""
+"A Visual Script node which calls a base type constructor. It can be used for "
+"type conversion as well."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:4
+msgid "A scripted Visual Script node."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:7
+msgid "A custom Visual Script node which can be scripted in powerful ways."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:16
+msgid "Return the node's title."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:23
+msgid "Return the node's category."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:30
+msgid "Return the count of input value ports."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:39
+msgid "Return the specified input port's name."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:48
+msgid ""
+"Return the specified input port's type. See the [enum Variant.Type] values."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:55
+msgid "Return the amount of output [b]sequence[/b] ports."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:64
+msgid "Return the specified [b]sequence[/b] output's name."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:71
+msgid "Return the amount of output value ports."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:80
+msgid "Return the specified output's name."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:89
+msgid "Return the specified output's type. See the [enum Variant.Type] values."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:96
+msgid ""
+"Return the custom node's text, which is shown right next to the input "
+"[b]sequence[/b] port (if there is none, on the place that is usually taken "
+"by it)."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:103
+msgid ""
+"Return the size of the custom node's working memory. See [method _step] for "
+"more details."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:110
+msgid "Return whether the custom node has an input [b]sequence[/b] port."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:125
+msgid ""
+"Execute the custom node's logic, returning the index of the output sequence "
+"port to use or a [String] when there is an error.\n"
+"The [code]inputs[/code] array contains the values of the input ports.\n"
+"[code]outputs[/code] is an array whose indices should be set to the "
+"respective outputs.\n"
+"The [code]start_mode[/code] is usually [constant START_MODE_BEGIN_SEQUENCE], "
+"unless you have used the [code]STEP_*[/code] constants.\n"
+"[code]working_mem[/code] is an array which can be used to persist "
+"information between runs of the custom node.\n"
+"When returning, you can mask the returned value with one of the "
+"[code]STEP_*[/code] constants."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:136
+msgid "The start mode used the first time when [method _step] is called."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:139
+msgid ""
+"The start mode used when [method _step] is called after coming back from a "
+"[constant STEP_PUSH_STACK_BIT]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:142
+msgid ""
+"The start mode used when [method _step] is called after resuming from "
+"[constant STEP_YIELD_BIT]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:145
+msgid ""
+"Hint used by [method _step] to tell that control should return to it when "
+"there is no other node left to execute.\n"
+"This is used by [VisualScriptCondition] to redirect the sequence to the "
+"\"Done\" port after the [code]true[/code]/[code]false[/code] branch has "
+"finished execution."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:149
+msgid ""
+"Hint used by [method _step] to tell that control should return back, either "
+"hitting a previous [constant STEP_PUSH_STACK_BIT] or exiting the function."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:154
+msgid ""
+"Hint used by [method _step] to tell that control should stop and exit the "
+"function."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:157
+msgid ""
+"Hint used by [method _step] to tell that the function should be yielded.\n"
+"Using this requires you to have at least one working memory slot, which is "
+"used for the [VisualScriptFunctionState]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptDeconstruct.xml:4
+#: modules/visual_script/doc_classes/VisualScriptDeconstruct.xml:7
+msgid ""
+"A Visual Script node which deconstructs a base type instance into its parts."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptDeconstruct.xml:15
+msgid "The type to deconstruct."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptEditor.xml:20
+msgid ""
+"Add a custom Visual Script node to the editor. It'll be placed under "
+"\"Custom Nodes\" with the [code]category[/code] as the parameter."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptEditor.xml:31
+msgid ""
+"Remove a custom Visual Script node from the editor. Custom nodes already "
+"placed on scripts won't be removed."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptEditor.xml:38
+msgid "Emitted when a custom Visual Script node is added or removed."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptEmitSignal.xml:4
+msgid "Emits a specified signal."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptEmitSignal.xml:7
+msgid ""
+"Emits a specified signal when it is executed.\n"
+"[b]Input Ports:[/b]\n"
+"- Sequence: [code]emit[/code]\n"
+"[b]Output Ports:[/b]\n"
+"- Sequence"
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptEmitSignal.xml:19
+msgid "The signal to emit."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptEngineSingleton.xml:4
+#: modules/visual_script/doc_classes/VisualScriptEngineSingleton.xml:7
+msgid "A Visual Script node returning a singleton from [@GlobalScope]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptEngineSingleton.xml:15
+msgid "The singleton's name."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptIterator.xml:4
+msgid "Steps through items in a given input."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptIterator.xml:7
+msgid ""
+"This node steps through each item in a given input. Input can be any "
+"sequence data type, such as an [Array] or [String]. When each item has been "
+"processed, execution passed out the [code]exit[/code] Sequence port.\n"
+"[b]Input Ports:[/b]\n"
+"- Sequence: [code]for (elem) in (input)[/code]\n"
+"- Data (variant): [code]input[/code]\n"
+"[b]Output Ports:[/b]\n"
+"- Sequence: [code]each[/code]\n"
+"- Sequence: [code]exit[/code]\n"
+"- Data (variant): [code]elem[/code]"
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptLists.xml:4
+msgid "A Visual Script virtual class for in-graph editable nodes."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptLists.xml:7
+msgid ""
+"A Visual Script virtual class that defines the shape and the default "
+"behaviour of the nodes that have to be in-graph editable nodes."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptLocalVar.xml:4
+msgid "Gets a local variable's value."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptLocalVar.xml:7
+msgid ""
+"Returns a local variable's value. \"Var Name\" must be supplied, with an "
+"optional type.\n"
+"[b]Input Ports:[/b]\n"
+"none\n"
+"[b]Output Ports:[/b]\n"
+"- Data (variant): [code]get[/code]"
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptLocalVar.xml:19
+#: modules/visual_script/doc_classes/VisualScriptLocalVarSet.xml:21
+msgid "The local variable's type."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptLocalVar.xml:22
+#: modules/visual_script/doc_classes/VisualScriptLocalVarSet.xml:24
+msgid "The local variable's name."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptLocalVarSet.xml:4
+msgid "Changes a local variable's value."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptLocalVarSet.xml:7
+msgid ""
+"Changes a local variable's value to the given input. The new value is also "
+"provided on an output Data port.\n"
+"[b]Input Ports:[/b]\n"
+"- Sequence\n"
+"- Data (variant): [code]set[/code]\n"
+"[b]Output Ports:[/b]\n"
+"- Sequence\n"
+"- Data (variant): [code]get[/code]"
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptMathConstant.xml:4
+msgid "Commonly used mathematical constants."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptMathConstant.xml:7
+msgid ""
+"Provides common math constants, such as Pi, on an output Data port.\n"
+"[b]Input Ports:[/b]\n"
+"none\n"
+"[b]Output Ports:[/b]\n"
+"- Data (variant): [code]get[/code]"
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptMathConstant.xml:19
+msgid "The math constant."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptMathConstant.xml:24
+msgid "Unity: [code]1[/code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptMathConstant.xml:27
+msgid "Pi: [code]3.141593[/code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptMathConstant.xml:30
+msgid "Pi divided by two: [code]1.570796[/code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptMathConstant.xml:33
+msgid "Tau: [code]6.283185[/code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptMathConstant.xml:36
+msgid ""
+"Mathematical constant [code]e[/code], the natural log base: [code]2.718282[/"
+"code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptMathConstant.xml:39
+msgid "Square root of two: [code]1.414214[/code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptMathConstant.xml:42
+msgid "Infinity: [code]inf[/code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptMathConstant.xml:45
+msgid "Not a number: [code]nan[/code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptMathConstant.xml:48
+msgid "Represents the size of the [enum MathConstant] enum."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptNode.xml:4
+msgid "A node which is part of a [VisualScript]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptNode.xml:7
+msgid ""
+"A node which is part of a [VisualScript]. Not to be confused with [Node], "
+"which is a part of a [SceneTree]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptNode.xml:18
+msgid ""
+"Returns the default value of a given port. The default value is used when "
+"nothing is connected to the port."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptNode.xml:25
+msgid "Returns the [VisualScript] instance the node is bound to."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptNode.xml:32
+msgid ""
+"Notify that the node's ports have changed. Usually used in conjunction with "
+"[VisualScriptCustomNode] ."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptNode.xml:43
+msgid "Change the default value of a given port."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptNode.xml:50
+msgid "Emitted when the available input/output ports are changed."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptOperator.xml:6
+msgid ""
+"[b]Input Ports:[/b]\n"
+"- Data (variant): [code]A[/code]\n"
+"- Data (variant): [code]B[/code]\n"
+"[b]Output Ports:[/b]\n"
+"- Data (variant): [code]result[/code]"
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPreload.xml:4
+msgid "Creates a new [Resource] or loads one from the filesystem."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPreload.xml:7
+msgid ""
+"Creates a new [Resource] or loads one from the filesystem.\n"
+"[b]Input Ports:[/b]\n"
+"none\n"
+"[b]Output Ports:[/b]\n"
+"- Data (object): [code]res[/code]"
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPreload.xml:19
+msgid "The [Resource] to load."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptReturn.xml:4
+msgid "Exits a function and returns an optional value."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptReturn.xml:7
+msgid ""
+"Ends the execution of a function and returns control to the calling "
+"function. Optionally, it can return a [Variant] value.\n"
+"[b]Input Ports:[/b]\n"
+"- Sequence\n"
+"- Data (variant): [code]result[/code] (optional)\n"
+"[b]Output Ports:[/b]\n"
+"none"
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptReturn.xml:20
+msgid "If [code]true[/code], the [code]return[/code] input port is available."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptReturn.xml:23
+msgid "The return value's data type."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptSceneNode.xml:4
+msgid "Node reference."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptSceneNode.xml:7
+msgid ""
+"A direct reference to a node.\n"
+"[b]Input Ports:[/b]\n"
+"none\n"
+"[b]Output Ports:[/b]\n"
+"- Data: [code]node[/code] (obj)"
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptSceneNode.xml:19
+msgid "The node's path in the scene tree."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptSelect.xml:4
+msgid "Chooses between two input values."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptSelect.xml:7
+msgid ""
+"Chooses between two input values based on a Boolean condition.\n"
+"[b]Input Ports:[/b]\n"
+"- Data (boolean): [code]cond[/code]\n"
+"- Data (variant): [code]a[/code]\n"
+"- Data (variant): [code]b[/code]\n"
+"[b]Output Ports:[/b]\n"
+"- Data (variant): [code]out[/code]"
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptSelect.xml:21
+msgid "The input variables' type."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptSelf.xml:4
+msgid "Outputs a reference to the current instance."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptSelf.xml:7
+msgid ""
+"Provides a reference to the node running the visual script.\n"
+"[b]Input Ports:[/b]\n"
+"none\n"
+"[b]Output Ports:[/b]\n"
+"- Data (object): [code]instance[/code]"
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptSequence.xml:4
+msgid "Executes a series of Sequence ports."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptSequence.xml:7
+msgid ""
+"Steps through a series of one or more output Sequence ports. The "
+"[code]current[/code] data port outputs the currently executing item.\n"
+"[b]Input Ports:[/b]\n"
+"- Sequence: [code]in order[/code]\n"
+"[b]Output Ports:[/b]\n"
+"- Sequence: [code]1[/code]\n"
+"- Sequence: [code]2 - n[/code] (optional)\n"
+"- Data (int): [code]current[/code]"
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptSequence.xml:21
+msgid "The number of steps in the sequence."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptSwitch.xml:4
+msgid "Branches program flow based on a given input's value."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptSwitch.xml:7
+msgid ""
+"Branches the flow based on an input's value. Use [b]Case Count[/b] in the "
+"Inspector to set the number of branches and each comparison's optional "
+"type.\n"
+"[b]Input Ports:[/b]\n"
+"- Sequence: [code]'input' is[/code]\n"
+"- Data (variant): [code]=[/code]\n"
+"- Data (variant): [code]=[/code] (optional)\n"
+"- Data (variant): [code]input[/code]\n"
+"[b]Output Ports:[/b]\n"
+"- Sequence\n"
+"- Sequence (optional)\n"
+"- Sequence: [code]done[/code]"
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptVariableGet.xml:4
+msgid "Gets a variable's value."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptVariableGet.xml:7
+msgid ""
+"Returns a variable's value. \"Var Name\" must be supplied, with an optional "
+"type.\n"
+"[b]Input Ports:[/b]\n"
+"none\n"
+"[b]Output Ports:[/b]\n"
+"- Data (variant): [code]value[/code]"
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptVariableGet.xml:19
+#: modules/visual_script/doc_classes/VisualScriptVariableSet.xml:20
+msgid "The variable's name."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptVariableSet.xml:4
+msgid "Changes a variable's value."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptVariableSet.xml:7
+msgid ""
+"Changes a variable's value to the given input.\n"
+"[b]Input Ports:[/b]\n"
+"- Sequence\n"
+"- Data (variant): [code]set[/code]\n"
+"[b]Output Ports:[/b]\n"
+"- Sequence"
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptWhile.xml:4
+msgid "Conditional loop."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptWhile.xml:7
+msgid ""
+"Loops while a condition is [code]true[/code]. Execution continues out the "
+"[code]exit[/code] Sequence port when the loop terminates.\n"
+"[b]Input Ports:[/b]\n"
+"- Sequence: [code]while(cond)[/code]\n"
+"- Data (bool): [code]cond[/code]\n"
+"[b]Output Ports:[/b]\n"
+"- Sequence: [code]repeat[/code]\n"
+"- Sequence: [code]exit[/code]"
+msgstr ""
+
+#: doc/classes/VisualShader.xml:4
+msgid "A custom shader program with a visual editor."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:7
+msgid ""
+"This class allows you to define a custom shader program that can be used for "
+"various materials to render objects.\n"
+"The visual shader editor creates the shader."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:25
+msgid "Adds the specified node to the shader."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:42
+msgid ""
+"Returns [code]true[/code] if the specified nodes and ports can be connected "
+"together."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:59 doc/classes/VisualShader.xml:93
+msgid "Connects the specified nodes and ports."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:76
+msgid ""
+"Connects the specified nodes and ports, even if they can't be connected. "
+"Such connection is invalid and will not function properly."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:104
+msgid ""
+"Returns the shader node instance with specified [code]type[/code] and "
+"[code]id[/code]."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:113
+msgid "Returns the list of connected nodes with the specified type."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:122
+msgid "Returns the list of all nodes in the shader with the specified type."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:133
+msgid "Returns the position of the specified node within the shader graph."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:158
+msgid ""
+"Returns [code]true[/code] if the specified node and port connection exist."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:169
+msgid "Removes the specified node from the shader."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:178
+msgid "Sets the mode of this shader."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:191
+msgid "Sets the position of the specified node."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:198
+msgid "The offset vector of the whole graph."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:205
+msgid "A vertex shader, operating on vertices."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:208
+msgid "A fragment shader, operating on fragments (pixels)."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:211
+msgid "A shader for light calculations."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:214
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:26
+msgid "Represents the size of the [enum Type] enum."
+msgstr ""
+
+#: doc/classes/VisualShaderNode.xml:4
+msgid "Base class for nodes in a visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNode.xml:9
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/shading/visual_shaders.html"
+msgstr ""
+
+#: doc/classes/VisualShaderNode.xml:16
+msgid ""
+"Returns an [Array] containing default values for all of the input ports of "
+"the node in the form [code][index0, value0, index1, value1, ...][/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNode.xml:25
+msgid "Returns the default value of the input [code]port[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNode.xml:34
+msgid ""
+"Sets the default input ports values using an [Array] of the form [code]"
+"[index0, value0, index1, value1, ...][/code]. For example: [code][0, "
+"Vector3(0, 0, 0), 1, Vector3(0, 0, 0)][/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNode.xml:45
+msgid "Sets the default value for the selected input [code]port[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNode.xml:51
+msgid ""
+"Sets the output port index which will be showed for preview. If set to "
+"[code]-1[/code] no port will be open for preview."
+msgstr ""
+
+#: doc/classes/VisualShaderNode.xml:57
+msgid ""
+"Emitted when the node requests an editor refresh. Currently called only in "
+"setter of [member VisualShaderNodeTexture.source], "
+"[VisualShaderNodeTexture], and [VisualShaderNodeCubemap] (and their "
+"derivatives)."
+msgstr ""
+
+#: doc/classes/VisualShaderNode.xml:63
+msgid ""
+"Floating-point scalar. Translated to [code]float[/code] type in shader code."
+msgstr ""
+
+#: doc/classes/VisualShaderNode.xml:66
+msgid "Integer scalar. Translated to [code]int[/code] type in shader code."
+msgstr ""
+
+#: doc/classes/VisualShaderNode.xml:69
+msgid ""
+"3D vector of floating-point values. Translated to [code]vec3[/code] type in "
+"shader code."
+msgstr ""
+
+#: doc/classes/VisualShaderNode.xml:72
+msgid "Boolean type. Translated to [code]bool[/code] type in shader code."
+msgstr ""
+
+#: doc/classes/VisualShaderNode.xml:75
+msgid "Transform type. Translated to [code]mat4[/code] type in shader code."
+msgstr ""
+
+#: doc/classes/VisualShaderNode.xml:78
+msgid ""
+"Sampler type. Translated to reference of sampler uniform in shader code. Can "
+"only be used for input ports in non-uniform nodes."
+msgstr ""
+
+#: doc/classes/VisualShaderNode.xml:81
+msgid "Represents the size of the [enum PortType] enum."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeBooleanConstant.xml:4
+msgid "A boolean constant to be used within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeBooleanConstant.xml:7
+msgid ""
+"Has only one output port and no inputs.\n"
+"Translated to [code]bool[/code] in the shader language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeBooleanConstant.xml:16
+msgid "A boolean constant which represents a state of this node."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeBooleanUniform.xml:4
+msgid "A boolean uniform to be used within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeBooleanUniform.xml:7
+msgid "Translated to [code]uniform bool[/code] in the shader language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeBooleanUniform.xml:15
+#: doc/classes/VisualShaderNodeColorUniform.xml:15
+#: doc/classes/VisualShaderNodeFloatUniform.xml:15
+#: doc/classes/VisualShaderNodeIntUniform.xml:15
+#: doc/classes/VisualShaderNodeTransformUniform.xml:15
+#: doc/classes/VisualShaderNodeVec3Uniform.xml:15
+msgid "A default value to be assigned within the shader."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeBooleanUniform.xml:18
+#: doc/classes/VisualShaderNodeColorUniform.xml:18
+#: doc/classes/VisualShaderNodeFloatUniform.xml:18
+#: doc/classes/VisualShaderNodeIntUniform.xml:18
+#: doc/classes/VisualShaderNodeTransformUniform.xml:18
+#: doc/classes/VisualShaderNodeVec3Uniform.xml:18
+msgid "Enables usage of the [member default_value]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeColorConstant.xml:4
+msgid "A [Color] constant to be used within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeColorConstant.xml:7
+msgid ""
+"Has two output ports representing RGB and alpha channels of [Color].\n"
+"Translated to [code]vec3 rgb[/code] and [code]float alpha[/code] in the "
+"shader language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeColorConstant.xml:16
+msgid "A [Color] constant which represents a state of this node."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeColorFunc.xml:4
+msgid "A [Color] function to be used within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeColorFunc.xml:7
+msgid ""
+"Accept a [Color] to the input port and transform it according to [member "
+"function]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeColorFunc.xml:15
+msgid ""
+"A function to be applied to the input color. See [enum Function] for options."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeColorFunc.xml:20
+msgid ""
+"Converts the color to grayscale using the following formula:\n"
+"[codeblock]\n"
+"vec3 c = input;\n"
+"float max1 = max(c.r, c.g);\n"
+"float max2 = max(max1, c.b);\n"
+"float max3 = max(max1, max2);\n"
+"return vec3(max3, max3, max3);\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/VisualShaderNodeColorFunc.xml:30
+msgid ""
+"Applies sepia tone effect using the following formula:\n"
+"[codeblock]\n"
+"vec3 c = input;\n"
+"float r = (c.r * 0.393) + (c.g * 0.769) + (c.b * 0.189);\n"
+"float g = (c.r * 0.349) + (c.g * 0.686) + (c.b * 0.168);\n"
+"float b = (c.r * 0.272) + (c.g * 0.534) + (c.b * 0.131);\n"
+"return vec3(r, g, b);\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/VisualShaderNodeColorOp.xml:4
+msgid "A [Color] operator to be used within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeColorOp.xml:7
+msgid "Applies [member operator] to two color inputs."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeColorOp.xml:15
+#: doc/classes/VisualShaderNodeFloatOp.xml:15
+#: doc/classes/VisualShaderNodeIntOp.xml:15
+msgid ""
+"An operator to be applied to the inputs. See [enum Operator] for options."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeColorOp.xml:20
+msgid ""
+"Produce a screen effect with the following formula:\n"
+"[codeblock]\n"
+"result = vec3(1.0) - (vec3(1.0) - a) * (vec3(1.0) - b);\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/VisualShaderNodeColorOp.xml:26
+msgid ""
+"Produce a difference effect with the following formula:\n"
+"[codeblock]\n"
+"result = abs(a - b);\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/VisualShaderNodeColorOp.xml:32
+msgid ""
+"Produce a darken effect with the following formula:\n"
+"[codeblock]\n"
+"result = min(a, b);\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/VisualShaderNodeColorOp.xml:38
+msgid ""
+"Produce a lighten effect with the following formula:\n"
+"[codeblock]\n"
+"result = max(a, b);\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/VisualShaderNodeColorOp.xml:44
+msgid ""
+"Produce an overlay effect with the following formula:\n"
+"[codeblock]\n"
+"for (int i = 0; i < 3; i++) {\n"
+" float base = a[i];\n"
+" float blend = b[i];\n"
+" if (base < 0.5) {\n"
+" result[i] = 2.0 * base * blend;\n"
+" } else {\n"
+" result[i] = 1.0 - 2.0 * (1.0 - blend) * (1.0 - base);\n"
+" }\n"
+"}\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/VisualShaderNodeColorOp.xml:58
+msgid ""
+"Produce a dodge effect with the following formula:\n"
+"[codeblock]\n"
+"result = a / (vec3(1.0) - b);\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/VisualShaderNodeColorOp.xml:64
+msgid ""
+"Produce a burn effect with the following formula:\n"
+"[codeblock]\n"
+"result = vec3(1.0) - (vec3(1.0) - a) / b;\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/VisualShaderNodeColorOp.xml:70
+msgid ""
+"Produce a soft light effect with the following formula:\n"
+"[codeblock]\n"
+"for (int i = 0; i < 3; i++) {\n"
+" float base = a[i];\n"
+" float blend = b[i];\n"
+" if (base < 0.5) {\n"
+" result[i] = base * (blend + 0.5);\n"
+" } else {\n"
+" result[i] = 1.0 - (1.0 - base) * (1.0 - (blend - 0.5));\n"
+" }\n"
+"}\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/VisualShaderNodeColorOp.xml:84
+msgid ""
+"Produce a hard light effect with the following formula:\n"
+"[codeblock]\n"
+"for (int i = 0; i < 3; i++) {\n"
+" float base = a[i];\n"
+" float blend = b[i];\n"
+" if (base < 0.5) {\n"
+" result[i] = base * (2.0 * blend);\n"
+" } else {\n"
+" result[i] = 1.0 - (1.0 - base) * (1.0 - 2.0 * (blend - 0.5));\n"
+" }\n"
+"}\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/VisualShaderNodeColorUniform.xml:4
+msgid "A [Color] uniform to be used within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeColorUniform.xml:7
+msgid "Translated to [code]uniform vec4[/code] in the shader language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:4
+msgid "A comparison function for common types within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:7
+msgid ""
+"Compares [code]a[/code] and [code]b[/code] of [member type] by [member "
+"function]. Returns a boolean scalar. Translates to [code]if[/code] "
+"instruction in shader code."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:15
+msgid ""
+"Extra condition which is applied if [member type] is set to [constant "
+"CTYPE_VECTOR]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:18
+msgid "A comparison function. See [enum Function] for options."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:21
+msgid ""
+"The type to be used in the comparison. See [enum ComparisonType] for options."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:26
+msgid "A floating-point scalar."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:29
+msgid "An integer scalar."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:32
+msgid "A 3D vector type."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:35
+msgid "A boolean type."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:38
+msgid "A transform ([code]mat4[/code]) type."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:41
+msgid "Comparison for equality ([code]a == b[/code])."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:44
+msgid "Comparison for inequality ([code]a != b[/code])."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:47
+msgid ""
+"Comparison for greater than ([code]a > b[/code]). Cannot be used if [member "
+"type] set to [constant CTYPE_BOOLEAN] or [constant CTYPE_TRANSFORM]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:50
+msgid ""
+"Comparison for greater than or equal ([code]a >= b[/code]). Cannot be used "
+"if [member type] set to [constant CTYPE_BOOLEAN] or [constant "
+"CTYPE_TRANSFORM]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:53
+msgid ""
+"Comparison for less than ([code]a < b[/code]). Cannot be used if [member "
+"type] set to [constant CTYPE_BOOLEAN] or [constant CTYPE_TRANSFORM]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:56
+msgid ""
+"Comparison for less than or equal ([code]a <= b[/code]). Cannot be used if "
+"[member type] set to [constant CTYPE_BOOLEAN] or [constant CTYPE_TRANSFORM]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:59
+msgid ""
+"The result will be true if all of component in vector satisfy the comparison "
+"condition."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:62
+msgid ""
+"The result will be true if any of component in vector satisfy the comparison "
+"condition."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCubemap.xml:4
+msgid "A [Cubemap] sampling node to be used within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCubemap.xml:7
+msgid ""
+"Translated to [code]texture(cubemap, vec3)[/code] in the shader language. "
+"Returns a color vector and alpha channel as scalar."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCubemap.xml:15
+msgid ""
+"The [Cubemap] texture to sample when using [constant SOURCE_TEXTURE] as "
+"[member source]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCubemap.xml:18
+msgid ""
+"Defines which source should be used for the sampling. See [enum Source] for "
+"options."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCubemap.xml:21
+#: doc/classes/VisualShaderNodeTextureUniform.xml:18
+msgid ""
+"Defines the type of data provided by the source texture. See [enum "
+"TextureType] for options."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCubemap.xml:26
+msgid ""
+"Use the [Cubemap] set via [member cube_map]. If this is set to [member "
+"source], the [code]samplerCube[/code] port is ignored."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCubemap.xml:29
+msgid ""
+"Use the [Cubemap] sampler reference passed via the [code]samplerCube[/code] "
+"port. If this is set to [member source], the [member cube_map] texture is "
+"ignored."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCubemap.xml:32
+#: doc/classes/VisualShaderNodeTexture.xml:44
+#: doc/classes/VisualShaderNodeTextureUniform.xml:23
+msgid "No hints are added to the uniform declaration."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCubemap.xml:35
+#: doc/classes/VisualShaderNodeTexture.xml:47
+#: doc/classes/VisualShaderNodeTextureUniform.xml:26
+msgid ""
+"Adds [code]hint_albedo[/code] as hint to the uniform declaration for proper "
+"sRGB to linear conversion."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCubemap.xml:38
+#: doc/classes/VisualShaderNodeTexture.xml:50
+#: doc/classes/VisualShaderNodeTextureUniform.xml:29
+msgid ""
+"Adds [code]hint_normal[/code] as hint to the uniform declaration, which "
+"internally converts the texture for proper usage as normal map."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCubemapUniform.xml:4
+msgid "A [Cubemap] uniform node to be used within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCubemapUniform.xml:7
+msgid ""
+"Translated to [code]uniform samplerCube[/code] in the shader language. The "
+"output value can be used as port for [VisualShaderNodeCubemap]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCustom.xml:4
+msgid ""
+"Virtual class to define custom [VisualShaderNode]s for use in the Visual "
+"Shader Editor."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCustom.xml:7
+msgid ""
+"By inheriting this class you can create a custom [VisualShader] script addon "
+"which will be automatically added to the Visual Shader Editor. The "
+"[VisualShaderNode]'s behavior is defined by overriding the provided virtual "
+"methods.\n"
+"In order for the node to be registered as an editor addon, you must use the "
+"[code]tool[/code] keyword and provide a [code]class_name[/code] for your "
+"custom script. For example:\n"
+"[codeblock]\n"
+"tool\n"
+"extends VisualShaderNodeCustom\n"
+"class_name VisualShaderNodeNoise\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCustom.xml:16
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/plugins/editor/"
+"visual_shader_plugins.html"
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCustom.xml:23
+msgid ""
+"Override this method to define the path to the associated custom node in the "
+"Visual Shader Editor's members dialog. The path may looks like "
+"[code]\"MyGame/MyFunctions/Noise\"[/code].\n"
+"Defining this method is [b]optional[/b]. If not overridden, the node will be "
+"filed under the \"Addons\" category."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCustom.xml:39
+msgid ""
+"Override this method to define the actual shader code of the associated "
+"custom node. The shader code should be returned as a string, which can have "
+"multiple lines (the [code]\"\"\"[/code] multiline string construct can be "
+"used for convenience).\n"
+"The [code]input_vars[/code] and [code]output_vars[/code] arrays contain the "
+"string names of the various input and output variables, as defined by "
+"[code]_get_input_*[/code] and [code]_get_output_*[/code] virtual methods in "
+"this class.\n"
+"The output ports can be assigned values in the shader code. For example, "
+"[code]return output_vars[0] + \" = \" + input_vars[0] + \";\"[/code].\n"
+"You can customize the generated code based on the shader [code]mode[/code] "
+"(see [enum Shader.Mode]) and/or [code]type[/code] (see [enum VisualShader."
+"Type]).\n"
+"Defining this method is [b]required[/b]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCustom.xml:50
+msgid ""
+"Override this method to define the description of the associated custom node "
+"in the Visual Shader Editor's members dialog.\n"
+"Defining this method is [b]optional[/b]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCustom.xml:60
+msgid ""
+"Override this method to add shader code on top of the global shader, to "
+"define your own standard library of reusable methods, varyings, constants, "
+"uniforms, etc. The shader code should be returned as a string, which can "
+"have multiple lines (the [code]\"\"\"[/code] multiline string construct can "
+"be used for convenience).\n"
+"Be careful with this functionality as it can cause name conflicts with other "
+"custom nodes, so be sure to give the defined entities unique names.\n"
+"You can customize the generated code based on the shader [code]mode[/code] "
+"(see [enum Shader.Mode]).\n"
+"Defining this method is [b]optional[/b]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCustom.xml:70
+msgid ""
+"Override this method to define the amount of input ports of the associated "
+"custom node.\n"
+"Defining this method is [b]required[/b]. If not overridden, the node has no "
+"input ports."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCustom.xml:80
+msgid ""
+"Override this method to define the names of input ports of the associated "
+"custom node. The names are used both for the input slots in the editor and "
+"as identifiers in the shader code, and are passed in the [code]input_vars[/"
+"code] array in [method _get_code].\n"
+"Defining this method is [b]optional[/b], but recommended. If not overridden, "
+"input ports are named as [code]\"in\" + str(port)[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCustom.xml:90
+msgid ""
+"Override this method to define the returned type of each input port of the "
+"associated custom node (see [enum VisualShaderNode.PortType] for possible "
+"types).\n"
+"Defining this method is [b]optional[/b], but recommended. If not overridden, "
+"input ports will return the [constant VisualShaderNode.PORT_TYPE_SCALAR] "
+"type."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCustom.xml:98
+msgid ""
+"Override this method to define the name of the associated custom node in the "
+"Visual Shader Editor's members dialog and graph.\n"
+"Defining this method is [b]optional[/b], but recommended. If not overridden, "
+"the node will be named as \"Unnamed\"."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCustom.xml:106
+msgid ""
+"Override this method to define the amount of output ports of the associated "
+"custom node.\n"
+"Defining this method is [b]required[/b]. If not overridden, the node has no "
+"output ports."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCustom.xml:116
+msgid ""
+"Override this method to define the names of output ports of the associated "
+"custom node. The names are used both for the output slots in the editor and "
+"as identifiers in the shader code, and are passed in the [code]output_vars[/"
+"code] array in [method _get_code].\n"
+"Defining this method is [b]optional[/b], but recommended. If not overridden, "
+"output ports are named as [code]\"out\" + str(port)[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCustom.xml:126
+msgid ""
+"Override this method to define the returned type of each output port of the "
+"associated custom node (see [enum VisualShaderNode.PortType] for possible "
+"types).\n"
+"Defining this method is [b]optional[/b], but recommended. If not overridden, "
+"output ports will return the [constant VisualShaderNode.PORT_TYPE_SCALAR] "
+"type."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCustom.xml:134
+msgid ""
+"Override this method to define the return icon of the associated custom node "
+"in the Visual Shader Editor's members dialog.\n"
+"Defining this method is [b]optional[/b]. If not overridden, no return icon "
+"is shown."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCustom.xml:142
+msgid ""
+"Override this method to enable high-end mark in the Visual Shader Editor's "
+"members dialog.\n"
+"Defining this method is [b]optional[/b]. If not overridden, it's false."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeDeterminant.xml:4
+msgid ""
+"Calculates the determinant of a [Transform] within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeDeterminant.xml:7
+msgid "Translates to [code]deteminant(x)[/code] in the shader language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeDotProduct.xml:4
+msgid "Calculates a dot product of two vectors within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeDotProduct.xml:7
+msgid "Translates to [code]dot(a, b)[/code] in the shader language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeExpression.xml:4
+msgid ""
+"A custom visual shader graph expression written in Godot Shading Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeExpression.xml:7
+msgid ""
+"Custom Godot Shading Language expression, with a custom amount of input and "
+"output ports.\n"
+"The provided code is directly injected into the graph's matching shader "
+"function ([code]vertex[/code], [code]fragment[/code], or [code]light[/"
+"code]), so it cannot be used to to declare functions, varyings, uniforms, or "
+"global constants. See [VisualShaderNodeGlobalExpression] for such global "
+"definitions."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeExpression.xml:16
+msgid ""
+"An expression in Godot Shading Language, which will be injected at the start "
+"of the graph's matching shader function ([code]vertex[/code], "
+"[code]fragment[/code], or [code]light[/code]), and thus cannot be used to "
+"declare functions, varyings, uniforms, or global constants."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFaceForward.xml:4
+msgid ""
+"Returns the vector that points in the same direction as a reference vector "
+"within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFaceForward.xml:7
+msgid ""
+"Translates to [code]faceforward(N, I, Nref)[/code] in the shader language. "
+"The function has three vector parameters: [code]N[/code], the vector to "
+"orient, [code]I[/code], the incident vector, and [code]Nref[/code], the "
+"reference vector. If the dot product of [code]I[/code] and [code]Nref[/code] "
+"is smaller than zero the return value is [code]N[/code]. Otherwise [code]-N[/"
+"code] is returned."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatConstant.xml:4
+msgid ""
+"A scalar floating-point constant to be used within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatConstant.xml:7
+msgid "Translated to [code]float[/code] in the shader language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatConstant.xml:15
+msgid "A floating-point constant which represents a state of this node."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:4
+msgid ""
+"A scalar floating-point function to be used within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:7
+msgid ""
+"Accept a floating-point scalar ([code]x[/code]) to the input port and "
+"transform it according to [member function]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:15
+#: doc/classes/VisualShaderNodeIntFunc.xml:15
+msgid ""
+"A function to be applied to the scalar. See [enum Function] for options."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:20
+msgid ""
+"Returns the sine of the parameter. Translates to [code]sin(x)[/code] in the "
+"Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:23
+msgid ""
+"Returns the cosine of the parameter. Translates to [code]cos(x)[/code] in "
+"the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:26
+msgid ""
+"Returns the tangent of the parameter. Translates to [code]tan(x)[/code] in "
+"the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:29
+msgid ""
+"Returns the arc-sine of the parameter. Translates to [code]asin(x)[/code] in "
+"the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:32
+msgid ""
+"Returns the arc-cosine of the parameter. Translates to [code]acos(x)[/code] "
+"in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:35
+msgid ""
+"Returns the arc-tangent of the parameter. Translates to [code]atan(x)[/code] "
+"in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:38
+msgid ""
+"Returns the hyperbolic sine of the parameter. Translates to [code]sinh(x)[/"
+"code] in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:41
+msgid ""
+"Returns the hyperbolic cosine of the parameter. Translates to [code]cosh(x)[/"
+"code] in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:44
+msgid ""
+"Returns the hyperbolic tangent of the parameter. Translates to [code]tanh(x)"
+"[/code] in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:47
+msgid ""
+"Returns the natural logarithm of the parameter. Translates to [code]log(x)[/"
+"code] in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:50
+msgid ""
+"Returns the natural exponentiation of the parameter. Translates to "
+"[code]exp(x)[/code] in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:53
+msgid ""
+"Returns the square root of the parameter. Translates to [code]sqrt(x)[/code] "
+"in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:56
+#: doc/classes/VisualShaderNodeIntFunc.xml:20
+msgid ""
+"Returns the absolute value of the parameter. Translates to [code]abs(x)[/"
+"code] in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:59
+#: doc/classes/VisualShaderNodeIntFunc.xml:29
+msgid ""
+"Extracts the sign of the parameter. Translates to [code]sign(x)[/code] in "
+"the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:62
+msgid ""
+"Finds the nearest integer less than or equal to the parameter. Translates to "
+"[code]floor(x)[/code] in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:65
+msgid ""
+"Finds the nearest integer to the parameter. Translates to [code]round(x)[/"
+"code] in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:68
+msgid ""
+"Finds the nearest integer that is greater than or equal to the parameter. "
+"Translates to [code]ceil(x)[/code] in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:71
+msgid ""
+"Computes the fractional part of the argument. Translates to [code]fract(x)[/"
+"code] in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:74
+msgid ""
+"Clamps the value between [code]0.0[/code] and [code]1.0[/code] using "
+"[code]min(max(x, 0.0), 1.0)[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:77
+#: doc/classes/VisualShaderNodeIntFunc.xml:26
+msgid "Negates the [code]x[/code] using [code]-(x)[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:80
+msgid ""
+"Returns the arc-hyperbolic-cosine of the parameter. Translates to "
+"[code]acosh(x)[/code] in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:83
+msgid ""
+"Returns the arc-hyperbolic-sine of the parameter. Translates to "
+"[code]asinh(x)[/code] in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:86
+msgid ""
+"Returns the arc-hyperbolic-tangent of the parameter. Translates to "
+"[code]atanh(x)[/code] in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:89
+msgid ""
+"Convert a quantity in radians to degrees. Translates to [code]degrees(x)[/"
+"code] in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:92
+msgid ""
+"Returns 2 raised by the power of the parameter. Translates to [code]exp2(x)[/"
+"code] in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:95
+msgid ""
+"Returns the inverse of the square root of the parameter. Translates to "
+"[code]inversesqrt(x)[/code] in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:98
+msgid ""
+"Returns the base 2 logarithm of the parameter. Translates to [code]log2(x)[/"
+"code] in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:101
+msgid ""
+"Convert a quantity in degrees to radians. Translates to [code]radians(x)[/"
+"code] in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:104
+msgid ""
+"Finds reciprocal value of dividing 1 by [code]x[/code] (i.e. [code]1 / x[/"
+"code])."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:107
+msgid ""
+"Finds the nearest even integer to the parameter. Translates to "
+"[code]roundEven(x)[/code] in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:110
+msgid ""
+"Returns a value equal to the nearest integer to [code]x[/code] whose "
+"absolute value is not larger than the absolute value of [code]x[/code]. "
+"Translates to [code]trunc(x)[/code] in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatFunc.xml:113
+msgid "Subtracts scalar [code]x[/code] from 1 (i.e. [code]1 - x[/code])."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatOp.xml:4
+msgid ""
+"A floating-point scalar operator to be used within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatOp.xml:7
+msgid ""
+"Applies [member operator] to two floating-point inputs: [code]a[/code] and "
+"[code]b[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatOp.xml:20
+#: doc/classes/VisualShaderNodeIntOp.xml:20
+msgid "Sums two numbers using [code]a + b[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatOp.xml:23
+#: doc/classes/VisualShaderNodeIntOp.xml:23
+msgid "Subtracts two numbers using [code]a - b[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatOp.xml:26
+#: doc/classes/VisualShaderNodeIntOp.xml:26
+msgid "Multiplies two numbers using [code]a * b[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatOp.xml:29
+#: doc/classes/VisualShaderNodeIntOp.xml:29
+msgid "Divides two numbers using [code]a / b[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatOp.xml:32
+msgid ""
+"Calculates the remainder of two numbers. Translates to [code]mod(a, b)[/"
+"code] in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatOp.xml:35
+msgid ""
+"Raises the [code]a[/code] to the power of [code]b[/code]. Translates to "
+"[code]pow(a, b)[/code] in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatOp.xml:38
+#: doc/classes/VisualShaderNodeIntOp.xml:35
+msgid ""
+"Returns the greater of two numbers. Translates to [code]max(a, b)[/code] in "
+"the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatOp.xml:41
+msgid ""
+"Returns the lesser of two numbers. Translates to [code]min(a, b)[/code] in "
+"the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatOp.xml:44
+msgid ""
+"Returns the arc-tangent of the parameters. Translates to [code]atan(a, b)[/"
+"code] in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatOp.xml:47
+msgid ""
+"Generates a step function by comparing [code]b[/code](x) to [code]a[/code]"
+"(edge). Returns 0.0 if [code]x[/code] is smaller than [code]edge[/code] and "
+"otherwise 1.0. Translates to [code]step(a, b)[/code] in the Godot Shader "
+"Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatUniform.xml:4
+msgid "A scalar float uniform to be used within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatUniform.xml:7
+msgid "Translated to [code]uniform float[/code] in the shader language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatUniform.xml:21
+#: doc/classes/VisualShaderNodeIntUniform.xml:21
+msgid ""
+"A hint applied to the uniform, which controls the values it can take when "
+"set through the inspector."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatUniform.xml:24
+#: doc/classes/VisualShaderNodeIntUniform.xml:24
+msgid ""
+"Minimum value for range hints. Used if [member hint] is set to [constant "
+"HINT_RANGE] or [constant HINT_RANGE_STEP]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatUniform.xml:27
+#: doc/classes/VisualShaderNodeIntUniform.xml:27
+msgid ""
+"Maximum value for range hints. Used if [member hint] is set to [constant "
+"HINT_RANGE] or [constant HINT_RANGE_STEP]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatUniform.xml:30
+#: doc/classes/VisualShaderNodeIntUniform.xml:30
+msgid ""
+"Step (increment) value for the range hint with step. Used if [member hint] "
+"is set to [constant HINT_RANGE_STEP]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatUniform.xml:35
+#: doc/classes/VisualShaderNodeIntUniform.xml:35
+msgid "No hint used."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatUniform.xml:38
+#: doc/classes/VisualShaderNodeIntUniform.xml:38
+msgid ""
+"A range hint for scalar value, which limits possible input values between "
+"[member min] and [member max]. Translated to [code]hint_range(min, max)[/"
+"code] in shader code."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFloatUniform.xml:41
+#: doc/classes/VisualShaderNodeIntUniform.xml:41
+msgid ""
+"A range hint for scalar value with step, which limits possible input values "
+"between [member min] and [member max], with a step (increment) of [member "
+"step]). Translated to [code]hint_range(min, max, step)[/code] in shader code."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFresnel.xml:4
+msgid "A Fresnel effect to be used within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeFresnel.xml:7
+msgid ""
+"Returns falloff based on the dot product of surface normal and view "
+"direction of camera (pass associated inputs to it)."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGlobalExpression.xml:4
+msgid ""
+"A custom global visual shader graph expression written in Godot Shading "
+"Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGlobalExpression.xml:7
+msgid ""
+"Custom Godot Shader Language expression, which is placed on top of the "
+"generated shader. You can place various function definitions inside to call "
+"later in [VisualShaderNodeExpression]s (which are injected in the main "
+"shader functions). You can also declare varyings, uniforms and global "
+"constants."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:4
+msgid ""
+"Base class for a family of nodes with variable amount of input and output "
+"ports within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:7
+msgid "Currently, has no direct usage, use the derived classes instead."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:22
+msgid ""
+"Adds an input port with the specified [code]type[/code] (see [enum "
+"VisualShaderNode.PortType]) and [code]name[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:35
+msgid ""
+"Adds an output port with the specified [code]type[/code] (see [enum "
+"VisualShaderNode.PortType]) and [code]name[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:42
+msgid "Removes all previously specified input ports."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:49
+msgid "Removes all previously specified output ports."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:56
+msgid ""
+"Returns a free input port ID which can be used in [method add_input_port]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:63
+msgid ""
+"Returns a free output port ID which can be used in [method add_output_port]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:70
+msgid ""
+"Returns the number of input ports in use. Alternative for [method "
+"get_free_input_port_id]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:77
+msgid ""
+"Returns a [String] description of the input ports as as colon-separated list "
+"using the format [code]id,type,name;[/code] (see [method add_input_port])."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:84
+msgid ""
+"Returns the number of output ports in use. Alternative for [method "
+"get_free_output_port_id]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:91
+msgid ""
+"Returns a [String] description of the output ports as as colon-separated "
+"list using the format [code]id,type,name;[/code] (see [method "
+"add_output_port])."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:100
+msgid "Returns [code]true[/code] if the specified input port exists."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:109
+msgid "Returns [code]true[/code] if the specified output port exists."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:118
+msgid ""
+"Returns [code]true[/code] if the specified port name does not override an "
+"existed port name and is valid within the shader."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:127
+msgid "Removes the specified input port."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:136
+msgid "Removes the specified output port."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:147
+msgid "Renames the specified input port."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:158
+msgid ""
+"Sets the specified input port's type (see [enum VisualShaderNode.PortType])."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:167
+msgid ""
+"Defines all input ports using a [String] formatted as a colon-separated "
+"list: [code]id,type,name;[/code] (see [method add_input_port])."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:178
+msgid "Renames the specified output port."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:189
+msgid ""
+"Sets the specified output port's type (see [enum VisualShaderNode.PortType])."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:198
+msgid ""
+"Defines all output ports using a [String] formatted as a colon-separated "
+"list: [code]id,type,name;[/code] (see [method add_output_port])."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:204
+msgid "The size of the node in the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeIf.xml:4
+msgid ""
+"Compares two floating-point numbers in order to return a required vector "
+"within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeIf.xml:7
+msgid ""
+"First two ports are scalar floatin-point numbers to compare, third is "
+"tolerance comparison amount and last three ports represents a vectors "
+"returned if [code]a == b[/code], [code]a > b[/code] and [code]a < b[/code] "
+"respectively."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeInput.xml:4
+msgid "Represents the input shader parameter within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeInput.xml:7
+msgid ""
+"Gives access to input variables (built-ins) available for the shader. See "
+"the shading reference for the list of available built-ins for each shader "
+"type (check [code]Tutorials[/code] section for link)."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeInput.xml:10
+msgid ""
+"https://docs.godotengine.org/en/stable/tutorials/shading/shading_reference/"
+"index.html"
+msgstr ""
+
+#: doc/classes/VisualShaderNodeInput.xml:17
+msgid ""
+"Returns a translated name of the current constant in the Godot Shader "
+"Language. eg. [code]\"ALBEDO\"[/code] if the [member input_name] equal to "
+"[code]\"albedo\"[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeInput.xml:23
+msgid ""
+"One of the several input constants in lower-case style like: \"vertex"
+"\"([code]VERTEX[/code]) or \"point_size\"([code]POINT_SIZE[/code])."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeInput.xml:29
+msgid "Emitted when input is changed via [member input_name]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeIntConstant.xml:4
+msgid "A scalar integer constant to be used within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeIntConstant.xml:7
+msgid "Translated to [code]int[/code] in the shader language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeIntConstant.xml:15
+msgid "An integer constant which represents a state of this node."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeIntFunc.xml:4
+msgid "A scalar integer function to be used within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeIntFunc.xml:7
+msgid ""
+"Accept an integer scalar ([code]x[/code]) to the input port and transform it "
+"according to [member function]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeIntFunc.xml:23
+msgid ""
+"Constrains a parameter between [code]min[/code] and [code]max[/code]. "
+"Translates to [code]clamp(x, min, max)[/code] in the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeIntOp.xml:4
+msgid "An integer scalar operator to be used within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeIntOp.xml:7
+msgid ""
+"Applies [member operator] to two integer inputs: [code]a[/code] and [code]b[/"
+"code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeIntOp.xml:32
+msgid "Calculates the remainder of two numbers using [code]a % b[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeIntOp.xml:38
+msgid ""
+"Returns the lesser of two numbers. Translates to [code]max(a, b)[/code] in "
+"the Godot Shader Language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeIntUniform.xml:4
+msgid "A scalar integer uniform to be used within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeIntUniform.xml:7
+msgid "Translated to [code]uniform int[/code] in the shader language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeIs.xml:4
+msgid ""
+"A boolean comparison operator to be used within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeIs.xml:7
+msgid ""
+"Returns the boolean result of the comparison between [code]INF[/code] or "
+"[code]NaN[/code] and a scalar parameter."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeIs.xml:15
+msgid "The comparison function. See [enum Function] for options."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeIs.xml:20
+msgid "Comparison with [code]INF[/code] (Infinity)."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeIs.xml:23
+msgid ""
+"Comparison with [code]NaN[/code] (Not a Number; denotes invalid numeric "
+"results, e.g. division by zero)."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:4
+msgid "Performs a fused multiply-add operation within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:7
+msgid "Uses three operands to compute [code](a * b + c)[/code] expression."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:15
+msgid "A type of operands and returned value."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:20
+msgid "A scalar type."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:23
+msgid "A vector type."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeOuterProduct.xml:4
+msgid ""
+"Calculates an outer product of two vectors within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeOuterProduct.xml:7
+msgid ""
+"[code]OuterProduct[/code] treats the first parameter [code]c[/code] as a "
+"column vector (matrix with one column) and the second parameter [code]r[/"
+"code] as a row vector (matrix with one row) and does a linear algebraic "
+"matrix multiply [code]c * r[/code], yielding a matrix whose number of rows "
+"is the number of components in [code]c[/code] and whose number of columns is "
+"the number of components in [code]r[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeOutput.xml:4
+msgid "Represents the output shader parameters within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeOutput.xml:7
+msgid ""
+"This visual shader node is present in all shader graphs in form of \"Output"
+"\" block with multiple output value ports."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeSample3D.xml:4
+msgid ""
+"A base node for nodes which samples 3D textures in the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeSample3D.xml:7
+msgid "A virtual class, use the descendants instead."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeSample3D.xml:15
+msgid "An input source type."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeSample3D.xml:20
+msgid "Creates internal uniform and provides a way to assign it within node."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeSample3D.xml:23
+msgid "Use the uniform texture from sampler port."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeScalarClamp.xml:4
+msgid "Clamps a scalar value within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeScalarClamp.xml:7
+msgid ""
+"Constrains a value to lie between [code]min[/code] and [code]max[/code] "
+"values."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeScalarDerivativeFunc.xml:4
+msgid "Calculates a scalar derivative within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeScalarDerivativeFunc.xml:7
+#: doc/classes/VisualShaderNodeVectorDerivativeFunc.xml:7
+msgid ""
+"This node is only available in [code]Fragment[/code] and [code]Light[/code] "
+"visual shaders."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeScalarDerivativeFunc.xml:15
+msgid "The derivative type. See [enum Function] for options."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeScalarDerivativeFunc.xml:20
+#: doc/classes/VisualShaderNodeVectorDerivativeFunc.xml:20
+msgid "Sum of absolute derivative in [code]x[/code] and [code]y[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeScalarDerivativeFunc.xml:23
+#: doc/classes/VisualShaderNodeVectorDerivativeFunc.xml:23
+msgid "Derivative in [code]x[/code] using local differencing."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeScalarDerivativeFunc.xml:26
+#: doc/classes/VisualShaderNodeVectorDerivativeFunc.xml:26
+msgid "Derivative in [code]y[/code] using local differencing."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeScalarInterp.xml:4
+msgid ""
+"Linearly interpolates between two scalars within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeScalarInterp.xml:7
+msgid "Translates to [code]mix(a, b, weight)[/code] in the shader language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeScalarSmoothStep.xml:4
+msgid "Calculates a scalar SmoothStep function within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeScalarSmoothStep.xml:7
+msgid ""
+"Translates to [code]smoothstep(edge0, edge1, x)[/code] in the shader "
+"language.\n"
+"Returns [code]0.0[/code] if [code]x[/code] is smaller than [code]edge0[/"
+"code] and [code]1.0[/code] if [code]x[/code] is larger than [code]edge1[/"
+"code]. Otherwise the return value is interpolated between [code]0.0[/code] "
+"and [code]1.0[/code] using Hermite polynomials."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeScalarSwitch.xml:4
+msgid "A boolean/scalar function for use within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeScalarSwitch.xml:7
+msgid ""
+"Returns an associated scalar if the provided boolean value is [code]true[/"
+"code] or [code]false[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeSwitch.xml:4
+msgid "A boolean/vector function for use within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeSwitch.xml:7
+msgid ""
+"Returns an associated vector if the provided boolean value is [code]true[/"
+"code] or [code]false[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTexture.xml:4
+msgid "Performs a texture lookup within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTexture.xml:7
+msgid ""
+"Performs a lookup operation on the provided texture, with support for "
+"multiple texture sources to choose from."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTexture.xml:15
+msgid "Determines the source for the lookup. See [enum Source] for options."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTexture.xml:18
+msgid "The source texture, if needed for the selected [member source]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTexture.xml:21
+msgid ""
+"Specifies the type of the texture if [member source] is set to [constant "
+"SOURCE_TEXTURE]. See [enum TextureType] for options."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTexture.xml:26
+msgid "Use the texture given as an argument for this function."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTexture.xml:29
+msgid "Use the current viewport's texture as the source."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTexture.xml:32
+msgid ""
+"Use the texture from this shader's texture built-in (e.g. a texture of a "
+"[Sprite2D])."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTexture.xml:35
+msgid "Use the texture from this shader's normal map built-in."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTexture.xml:38
+msgid "Use the depth texture available for this shader."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTexture.xml:41
+msgid "Use the texture provided in the input port for this function."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTexture2DArray.xml:4
+msgid "A 2D texture uniform array to be used within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTexture2DArray.xml:7
+msgid ""
+"Translated to [code]uniform sampler2DArray[/code] in the shader language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTexture2DArray.xml:15
+msgid ""
+"A source texture array. Used if [member VisualShaderNodeSample3D.source] is "
+"set to [constant VisualShaderNodeSample3D.SOURCE_TEXTURE]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTextureUniform.xml:4
+msgid "Performs a uniform texture lookup within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTextureUniform.xml:7
+msgid ""
+"Performs a lookup operation on the texture provided as a uniform for the "
+"shader."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTextureUniform.xml:15
+msgid "Sets the default color if no texture is assigned to the uniform."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTextureUniform.xml:32
+msgid ""
+"Adds [code]hint_aniso[/code] as hint to the uniform declaration to use for a "
+"flowmap."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTextureUniform.xml:35
+msgid "Defaults to white color."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTextureUniform.xml:38
+msgid "Defaults to black color."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTextureUniformTriplanar.xml:4
+msgid ""
+"Performs a uniform texture lookup with triplanar within the visual shader "
+"graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTextureUniformTriplanar.xml:7
+msgid ""
+"Performs a lookup operation on the texture provided as a uniform for the "
+"shader, with support for triplanar mapping."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformCompose.xml:4
+msgid ""
+"Composes a [Transform] from four [Vector3]s within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformCompose.xml:7
+msgid ""
+"Creates a 4x4 transform matrix using four vectors of type [code]vec3[/code]. "
+"Each vector is one row in the matrix and the last column is a [code]vec4(0, "
+"0, 0, 1)[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformConstant.xml:4
+msgid "A [Transform] constant for use within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformConstant.xml:7
+msgid "A constant [Transform], which can be used as an input node."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformConstant.xml:15
+msgid "A [Transform] constant which represents the state of this node."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformDecompose.xml:4
+msgid ""
+"Decomposes a [Transform] into four [Vector3]s within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformDecompose.xml:7
+msgid ""
+"Takes a 4x4 transform matrix and decomposes it into four [code]vec3[/code] "
+"values, one from each row of the matrix."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformFunc.xml:4
+msgid "Computes a [Transform] function within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformFunc.xml:7
+msgid "Computes an inverse or transpose function on the provided [Transform]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformFunc.xml:15
+msgid "The function to be computed. See [enum Function] for options."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformFunc.xml:20
+msgid "Perform the inverse operation on the [Transform] matrix."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformFunc.xml:23
+msgid "Perform the transpose operation on the [Transform] matrix."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformMult.xml:4
+msgid "Multiplies [Transform] by [Transform] within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformMult.xml:7
+msgid ""
+"A multiplication operation on two transforms (4x4 matrices), with support "
+"for different multiplication operators."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformMult.xml:15
+msgid ""
+"The multiplication type to be performed on the transforms. See [enum "
+"Operator] for options."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformMult.xml:20
+msgid "Multiplies transform [code]a[/code] by the transform [code]b[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformMult.xml:23
+msgid "Multiplies transform [code]b[/code] by the transform [code]a[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformMult.xml:26
+msgid ""
+"Performs a component-wise multiplication of transform [code]a[/code] by the "
+"transform [code]b[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformMult.xml:29
+msgid ""
+"Performs a component-wise multiplication of transform [code]b[/code] by the "
+"transform [code]a[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformUniform.xml:4
+msgid "A [Transform] uniform for use within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformUniform.xml:7
+msgid "Translated to [code]uniform mat4[/code] in the shader language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformVecMult.xml:4
+msgid ""
+"Multiplies a [Transform] and a [Vector3] within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformVecMult.xml:7
+msgid ""
+"A multiplication operation on a transform (4x4 matrix) and a vector, with "
+"support for different multiplication operators."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformVecMult.xml:15
+msgid ""
+"The multiplication type to be performed. See [enum Operator] for options."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformVecMult.xml:20
+msgid "Multiplies transform [code]a[/code] by the vector [code]b[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformVecMult.xml:23
+msgid "Multiplies vector [code]b[/code] by the transform [code]a[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformVecMult.xml:26
+msgid ""
+"Multiplies transform [code]a[/code] by the vector [code]b[/code], skipping "
+"the last row and column of the transform."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeTransformVecMult.xml:29
+msgid ""
+"Multiplies vector [code]b[/code] by the transform [code]a[/code], skipping "
+"the last row and column of the transform."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniform.xml:4
+msgid "A base type for the uniforms within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniform.xml:7
+msgid ""
+"A uniform represents a variable in the shader which is set externally, i.e. "
+"from the [ShaderMaterial]. Uniforms are exposed as properties in the "
+"[ShaderMaterial] and can be assigned from the inspector or from a script."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniform.xml:17
+msgid ""
+"Name of the uniform, by which it can be accessed through the "
+"[ShaderMaterial] properties."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniformRef.xml:4
+msgid "A reference to an existing [VisualShaderNodeUniform]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniformRef.xml:7
+msgid ""
+"Creating a reference to a [VisualShaderNodeUniform] allows you to reuse this "
+"uniform in different shaders or shader stages easily."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniformRef.xml:15
+msgid "The name of the uniform which this reference points to."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVec3Constant.xml:4
+msgid "A [Vector3] constant to be used within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVec3Constant.xml:7
+msgid "A constant [Vector3], which can be used as an input node."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVec3Constant.xml:15
+msgid "A [Vector3] constant which represents the state of this node."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVec3Uniform.xml:4
+msgid "A [Vector3] uniform to be used within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVec3Uniform.xml:7
+msgid "Translated to [code]uniform vec3[/code] in the shader language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorClamp.xml:4
+msgid "Clamps a vector value within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorClamp.xml:7
+msgid ""
+"Constrains a value to lie between [code]min[/code] and [code]max[/code] "
+"values. The operation is performed on each component of the vector "
+"individually."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorCompose.xml:4
+msgid "Composes a [Vector3] from three scalars within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorCompose.xml:7
+msgid ""
+"Creates a [code]vec3[/code] using three scalar values that can be provided "
+"from separate inputs."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorDecompose.xml:4
+msgid ""
+"Decomposes a [Vector3] into three scalars within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorDecompose.xml:7
+msgid ""
+"Takes a [code]vec3[/code] and decomposes it into three scalar values that "
+"can be used as separate inputs."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorDerivativeFunc.xml:4
+msgid "Calculates a vector derivative within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorDerivativeFunc.xml:15
+msgid "A derivative type. See [enum Function] for options."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorDistance.xml:4
+msgid ""
+"Returns the distance between two points. To be used within the visual shader "
+"graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorDistance.xml:7
+msgid ""
+"Calculates distance from point represented by vector [code]p0[/code] to "
+"vector [code]p1[/code].\n"
+"Translated to [code]distance(p0, p1)[/code] in the shader language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:4
+msgid "A vector function to be used within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:7
+msgid "A visual shader node able to perform different functions using vectors."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:15
+msgid "The function to be performed. See [enum Function] for options."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:20
+msgid ""
+"Normalizes the vector so that it has a length of [code]1[/code] but points "
+"in the same direction."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:23
+msgid "Clamps the value between [code]0.0[/code] and [code]1.0[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:26
+msgid "Returns the opposite value of the parameter."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:29
+msgid "Returns [code]1/vector[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:32
+msgid "Converts RGB vector to HSV equivalent."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:35
+msgid "Converts HSV vector to RGB equivalent."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:38
+msgid "Returns the absolute value of the parameter."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:41
+msgid "Returns the arc-cosine of the parameter."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:44
+msgid "Returns the inverse hyperbolic cosine of the parameter."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:47
+msgid "Returns the arc-sine of the parameter."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:50
+msgid "Returns the inverse hyperbolic sine of the parameter."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:53
+msgid "Returns the arc-tangent of the parameter."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:56
+msgid "Returns the inverse hyperbolic tangent of the parameter."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:59
+msgid ""
+"Finds the nearest integer that is greater than or equal to the parameter."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:62
+msgid "Returns the cosine of the parameter."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:65
+msgid "Returns the hyperbolic cosine of the parameter."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:68
+msgid "Converts a quantity in radians to degrees."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:71
+msgid "Base-e Exponential."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:74
+msgid "Base-2 Exponential."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:77
+msgid "Finds the nearest integer less than or equal to the parameter."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:80
+msgid "Computes the fractional part of the argument."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:83
+msgid "Returns the inverse of the square root of the parameter."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:86
+msgid "Natural logarithm."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:89
+msgid "Base-2 logarithm."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:92
+msgid "Converts a quantity in degrees to radians."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:95
+msgid "Finds the nearest integer to the parameter."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:98
+msgid "Finds the nearest even integer to the parameter."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:101
+msgid ""
+"Extracts the sign of the parameter, i.e. returns [code]-1[/code] if the "
+"parameter is negative, [code]1[/code] if it's positive and [code]0[/code] "
+"otherwise."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:104
+msgid "Returns the sine of the parameter."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:107
+msgid "Returns the hyperbolic sine of the parameter."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:110
+msgid "Returns the square root of the parameter."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:113
+msgid "Returns the tangent of the parameter."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:116
+msgid "Returns the hyperbolic tangent of the parameter."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:119
+msgid ""
+"Returns a value equal to the nearest integer to the parameter whose absolute "
+"value is not larger than the absolute value of the parameter."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorFunc.xml:122
+msgid "Returns [code]1.0 - vector[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorInterp.xml:4
+msgid ""
+"Linearly interpolates between two vectors within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorInterp.xml:7
+msgid ""
+"Translates to [code]mix(a, b, weight)[/code] in the shader language, where "
+"[code]weight[/code] is a [Vector3] with weights for each component."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorLen.xml:4
+msgid "Returns the length of a [Vector3] within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorLen.xml:7
+msgid "Translated to [code]length(p0)[/code] in the shader language."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorOp.xml:4
+msgid "A vector operator to be used within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorOp.xml:7
+msgid ""
+"A visual shader node for use of vector operators. Operates on vector "
+"[code]a[/code] and vector [code]b[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorOp.xml:15
+msgid "The operator to be used. See [enum Operator] for options."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorOp.xml:20
+msgid "Adds two vectors."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorOp.xml:23
+msgid "Subtracts a vector from a vector."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorOp.xml:26
+msgid "Multiplies two vectors."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorOp.xml:29
+msgid "Divides vector by vector."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorOp.xml:32
+msgid "Returns the remainder of the two vectors."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorOp.xml:35
+msgid ""
+"Returns the value of the first parameter raised to the power of the second, "
+"for each component of the vectors."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorOp.xml:38
+msgid "Returns the greater of two values, for each component of the vectors."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorOp.xml:41
+msgid "Returns the lesser of two values, for each component of the vectors."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorOp.xml:44
+msgid "Calculates the cross product of two vectors."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorOp.xml:47
+msgid "Returns the arc-tangent of the parameters."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorOp.xml:50
+msgid ""
+"Returns the vector that points in the direction of reflection. [code]a[/"
+"code] is incident vector and [code]b[/code] is the normal vector."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorOp.xml:53
+msgid ""
+"Vector step operator. Returns [code]0.0[/code] if [code]a[/code] is smaller "
+"than [code]b[/code] and [code]1.0[/code] otherwise."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorRefract.xml:4
+msgid ""
+"Returns the [Vector3] that points in the direction of refraction. For use "
+"within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorRefract.xml:7
+msgid ""
+"Translated to [code]refract(I, N, eta)[/code] in the shader language, where "
+"[code]I[/code] is the incident vector, [code]N[/code] is the normal vector "
+"and [code]eta[/code] is the ratio of the indices of the refraction."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorScalarMix.xml:4
+msgid ""
+"Linearly interpolates between two vectors using a scalar. For use within the "
+"visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorScalarMix.xml:7
+msgid ""
+"Translates to [code]mix(a, b, weight)[/code] in the shader language, where "
+"[code]a[/code] and [code]b[/code] are vectors and [code]weight[/code] is a "
+"scalar."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorScalarSmoothStep.xml:4
+msgid ""
+"Calculates a vector SmoothStep function using scalar within the visual "
+"shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorScalarSmoothStep.xml:7
+msgid ""
+"Translates to [code]smoothstep(edge0, edge1, x)[/code] in the shader "
+"language, where [code]x[/code] is a scalar.\n"
+"Returns [code]0.0[/code] if [code]x[/code] is smaller than [code]edge0[/"
+"code] and [code]1.0[/code] if [code]x[/code] is larger than [code]edge1[/"
+"code]. Otherwise the return value is interpolated between [code]0.0[/code] "
+"and [code]1.0[/code] using Hermite polynomials."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorScalarStep.xml:4
+msgid "Calculates a vector Step function within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorScalarStep.xml:7
+msgid ""
+"Translates to [code]step(edge, x)[/code] in the shader language.\n"
+"Returns [code]0.0[/code] if [code]x[/code] is smaller than [code]edge[/code] "
+"and [code]1.0[/code] otherwise."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorSmoothStep.xml:4
+msgid "Calculates a vector SmoothStep function within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeVectorSmoothStep.xml:7
+msgid ""
+"Translates to [code]smoothstep(edge0, edge1, x)[/code] in the shader "
+"language, where [code]x[/code] is a vector.\n"
+"Returns [code]0.0[/code] if [code]x[/code] is smaller than [code]edge0[/"
+"code] and [code]1.0[/code] if [code]x[/code] is larger than [code]edge1[/"
+"code]. Otherwise the return value is interpolated between [code]0.0[/code] "
+"and [code]1.0[/code] using Hermite polynomials."
+msgstr ""
+
+#: doc/classes/VScrollBar.xml:4
+msgid "Vertical scroll bar."
+msgstr ""
+
+#: doc/classes/VScrollBar.xml:7
+msgid ""
+"Vertical version of [ScrollBar], which goes from top (min) to bottom (max)."
+msgstr ""
+
+#: doc/classes/VScrollBar.xml:21
+msgid ""
+"Icon used as a button to scroll the [ScrollBar] up. Supports custom step "
+"using the [member ScrollBar.custom_step] property."
+msgstr ""
+
+#: doc/classes/VScrollBar.xml:36
+msgid ""
+"Icon used as a button to scroll the [ScrollBar] down. Supports custom step "
+"using the [member ScrollBar.custom_step] property."
+msgstr ""
+
+#: doc/classes/VSeparator.xml:4
+msgid "Vertical version of [Separator]."
+msgstr ""
+
+#: doc/classes/VSeparator.xml:7
+msgid ""
+"Vertical version of [Separator]. Even though it looks vertical, it is used "
+"to separate objects horizontally."
+msgstr ""
+
+#: doc/classes/VSeparator.xml:17
+msgid ""
+"The width of the area covered by the separator. Effectively works like a "
+"minimum width."
+msgstr ""
+
+#: doc/classes/VSeparator.xml:20
+msgid ""
+"The style for the separator line. Works best with [StyleBoxLine] (remember "
+"to enable [member StyleBoxLine.vertical])."
+msgstr ""
+
+#: doc/classes/VSlider.xml:4
+msgid "Vertical slider."
+msgstr ""
+
+#: doc/classes/VSlider.xml:7
+msgid ""
+"Vertical slider. See [Slider]. This one goes from bottom (min) to top (max)."
+msgstr ""
+
+#: doc/classes/VSlider.xml:24
+msgid "The background of the area below the grabber."
+msgstr ""
+
+#: doc/classes/VSlider.xml:35
+msgid ""
+"The background for the whole slider. Determines the width of the "
+"[code]grabber_area[/code]."
+msgstr ""
+
+#: doc/classes/VSplitContainer.xml:4
+msgid "Vertical split container."
+msgstr ""
+
+#: doc/classes/VSplitContainer.xml:7
+msgid ""
+"Vertical split container. See [SplitContainer]. This goes from top to bottom."
+msgstr ""
+
+#: doc/classes/WeakRef.xml:4
+msgid ""
+"Holds an [Object], but does not contribute to the reference count if the "
+"object is a reference."
+msgstr ""
+
+#: doc/classes/WeakRef.xml:7
+msgid ""
+"A weakref can hold a [Reference], without contributing to the reference "
+"counter. A weakref can be created from an [Object] using [method @GDScript."
+"weakref]. If this object is not a reference, weakref still works, however, "
+"it does not have any effect on the object. Weakrefs are useful in cases "
+"where multiple classes have variables that refer to each other. Without "
+"weakrefs, using these classes could lead to memory leaks, since both "
+"references keep each other from being released. Making part of the variables "
+"a weakref can prevent this cyclic dependency, and allows the references to "
+"be released."
+msgstr ""
+
+#: doc/classes/WeakRef.xml:16
+msgid "Returns the [Object] this weakref is referring to."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:14
+msgid "Closes this data channel, notifying the other peer."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:21
+msgid ""
+"Returns the id assigned to this channel during creation (or auto-assigned "
+"during negotiation).\n"
+"If the channel is not negotiated out-of-band the id will only be available "
+"after the connection is established (will return [code]65535[/code] until "
+"then)."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:29
+msgid "Returns the label assigned to this channel during creation."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:36
+msgid ""
+"Returns the [code]maxPacketLifeTime[/code] value assigned to this channel "
+"during creation.\n"
+"Will be [code]65535[/code] if not specified."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:44
+msgid ""
+"Returns the [code]maxRetransmits[/code] value assigned to this channel "
+"during creation.\n"
+"Will be [code]65535[/code] if not specified."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:52
+msgid ""
+"Returns the sub-protocol assigned to this channel during creation. An empty "
+"string if not specified."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:59
+msgid "Returns the current state of this channel, see [enum ChannelState]."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:66
+msgid ""
+"Returns [code]true[/code] if this channel was created with out-of-band "
+"configuration."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:73
+msgid ""
+"Returns [code]true[/code] if this channel was created with ordering enabled "
+"(default)."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:80
+msgid "Reserved, but not used for now."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:87
+msgid ""
+"Returns [code]true[/code] if the last received packet was transferred as "
+"text. See [member write_mode]."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:93
+msgid ""
+"The transfer mode to use when sending outgoing packet. Either text or binary."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:98
+msgid ""
+"Tells the channel to send data over this channel as text. An external peer "
+"(non-Godot) would receive this as a string."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:101
+msgid ""
+"Tells the channel to send data over this channel as binary. An external peer "
+"(non-Godot) would receive this as array buffer or blob."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:104
+msgid "The channel was created, but it's still trying to connect."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:107
+msgid "The channel is currently open, and data can flow over it."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:110
+msgid ""
+"The channel is being closed, no new messages will be accepted, but those "
+"already in queue will be flushed."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:113
+msgid "The channel was closed, or connection failed."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCMultiplayer.xml:4
+msgid ""
+"A simple interface to create a peer-to-peer mesh network composed of "
+"[WebRTCPeerConnection] that is compatible with the [MultiplayerAPI]."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCMultiplayer.xml:7
+msgid ""
+"This class constructs a full mesh of [WebRTCPeerConnection] (one connection "
+"for each peer) that can be used as a [member MultiplayerAPI.network_peer].\n"
+"You can add each [WebRTCPeerConnection] via [method add_peer] or remove them "
+"via [method remove_peer]. Peers must be added in [constant "
+"WebRTCPeerConnection.STATE_NEW] state to allow it to create the appropriate "
+"channels. This class will not create offers nor set descriptions, it will "
+"only poll them, and notify connections and disconnections.\n"
+"[signal NetworkedMultiplayerPeer.connection_succeeded] and [signal "
+"NetworkedMultiplayerPeer.server_disconnected] will not be emitted unless "
+"[code]server_compatibility[/code] is [code]true[/code] in [method "
+"initialize]. Beside that data transfer works like in a "
+"[NetworkedMultiplayerPeer]."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCMultiplayer.xml:24
+msgid ""
+"Add a new peer to the mesh with the given [code]peer_id[/code]. The "
+"[WebRTCPeerConnection] must be in state [constant WebRTCPeerConnection."
+"STATE_NEW].\n"
+"Three channels will be created for reliable, unreliable, and ordered "
+"transport. The value of [code]unreliable_lifetime[/code] will be passed to "
+"the [code]maxPacketLifetime[/code] option when creating unreliable and "
+"ordered channels (see [method WebRTCPeerConnection.create_data_channel])."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCMultiplayer.xml:32
+msgid "Close all the add peer connections and channels, freeing all resources."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCMultiplayer.xml:41
+msgid ""
+"Return a dictionary representation of the peer with given [code]peer_id[/"
+"code] with three keys. [code]connection[/code] containing the "
+"[WebRTCPeerConnection] to this peer, [code]channels[/code] an array of three "
+"[WebRTCDataChannel], and [code]connected[/code] a boolean representing if "
+"the peer connection is currently connected (all three channels are open)."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCMultiplayer.xml:48
+msgid ""
+"Returns a dictionary which keys are the peer ids and values the peer "
+"representation as in [method get_peer]."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCMultiplayer.xml:57
+msgid ""
+"Returns [code]true[/code] if the given [code]peer_id[/code] is in the peers "
+"map (it might not be connected though)."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCMultiplayer.xml:68
+msgid ""
+"Initialize the multiplayer peer with the given [code]peer_id[/code] (must be "
+"between 1 and 2147483647).\n"
+"If [code]server_compatibilty[/code] is [code]false[/code] (default), the "
+"multiplayer peer will be immediately in state [constant "
+"NetworkedMultiplayerPeer.CONNECTION_CONNECTED] and [signal "
+"NetworkedMultiplayerPeer.connection_succeeded] will not be emitted.\n"
+"If [code]server_compatibilty[/code] is [code]true[/code] the peer will "
+"suppress all [signal NetworkedMultiplayerPeer.peer_connected] signals until "
+"a peer with id [constant NetworkedMultiplayerPeer.TARGET_PEER_SERVER] "
+"connects and then emit [signal NetworkedMultiplayerPeer."
+"connection_succeeded]. After that the signal [signal "
+"NetworkedMultiplayerPeer.peer_connected] will be emitted for every already "
+"connected peer, and any new peer that might connect. If the server peer "
+"disconnects after that, signal [signal NetworkedMultiplayerPeer."
+"server_disconnected] will be emitted and state will become [constant "
+"NetworkedMultiplayerPeer.CONNECTION_CONNECTED]."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCMultiplayer.xml:79
+msgid ""
+"Remove the peer with given [code]peer_id[/code] from the mesh. If the peer "
+"was connected, and [signal NetworkedMultiplayerPeer.peer_connected] was "
+"emitted for it, then [signal NetworkedMultiplayerPeer.peer_disconnected] "
+"will be emitted."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:4
+msgid "Interface to a WebRTC peer connection."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:7
+msgid ""
+"A WebRTC connection between the local computer and a remote peer. Provides "
+"an interface to connect, maintain and monitor the connection.\n"
+"Setting up a WebRTC connection between two peers from now on) may not seem a "
+"trivial task, but it can be broken down into 3 main steps:\n"
+"- The peer that wants to initiate the connection ([code]A[/code] from now "
+"on) creates an offer and send it to the other peer ([code]B[/code] from now "
+"on).\n"
+"- [code]B[/code] receives the offer, generate and answer, and sends it to "
+"[code]A[/code]).\n"
+"- [code]A[/code] and [code]B[/code] then generates and exchange ICE "
+"candidates with each other.\n"
+"After these steps, the connection should become connected. Keep on reading "
+"or look into the tutorial for more information."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:27
+msgid ""
+"Add an ice candidate generated by a remote peer (and received over the "
+"signaling server). See [signal ice_candidate_created]."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:34
+msgid ""
+"Close the peer connection and all data channels associated with it. Note, "
+"you cannot reuse this object for a new connection unless you call [method "
+"initialize]."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:47
+msgid ""
+"Returns a new [WebRTCDataChannel] (or [code]null[/code] on failure) with "
+"given [code]label[/code] and optionally configured via the [code]options[/"
+"code] dictionary. This method can only be called when the connection is in "
+"state [constant STATE_NEW].\n"
+"There are two ways to create a working data channel: either call [method "
+"create_data_channel] on only one of the peer and listen to [signal "
+"data_channel_received] on the other, or call [method create_data_channel] on "
+"both peers, with the same values, and the [code]negotiated[/code] option set "
+"to [code]true[/code].\n"
+"Valid [code]options[/code] are:\n"
+"[codeblock]\n"
+"{\n"
+" \"negotiated\": true, # When set to true (default off), means the "
+"channel is negotiated out of band. \"id\" must be set too. "
+"data_channel_received will not be called.\n"
+" \"id\": 1, # When \"negotiated\" is true this value must also be set to "
+"the same value on both peer.\n"
+"\n"
+" # Only one of maxRetransmits and maxPacketLifeTime can be specified, not "
+"both. They make the channel unreliable (but also better at real time).\n"
+" \"maxRetransmits\": 1, # Specify the maximum number of attempt the peer "
+"will make to retransmits packets if they are not acknowledged.\n"
+" \"maxPacketLifeTime\": 100, # Specify the maximum amount of time before "
+"giving up retransmitions of unacknowledged packets (in milliseconds).\n"
+" \"ordered\": true, # When in unreliable mode (i.e. either "
+"\"maxRetransmits\" or \"maxPacketLifetime\" is set), \"ordered\" (true by "
+"default) specify if packet ordering is to be enforced.\n"
+"\n"
+" \"protocol\": \"my-custom-protocol\", # A custom sub-protocol string for "
+"this channel.\n"
+"}\n"
+"[/codeblock]\n"
+"[b]Note:[/b] You must keep a reference to channels created this way, or it "
+"will be closed."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:70
+msgid ""
+"Creates a new SDP offer to start a WebRTC connection with a remote peer. At "
+"least one [WebRTCDataChannel] must have been created before calling this "
+"method.\n"
+"If this functions returns [constant OK], [signal "
+"session_description_created] will be called when the session is ready to be "
+"sent."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:78
+msgid "Returns the connection state. See [enum ConnectionState]."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:89
+msgid ""
+"Re-initialize this peer connection, closing any previously active "
+"connection, and going back to state [constant STATE_NEW]. A dictionary of "
+"[code]options[/code] can be passed to configure the peer connection.\n"
+"Valid [code]options[/code] are:\n"
+"[codeblock]\n"
+"{\n"
+" \"iceServers\": [\n"
+" {\n"
+" \"urls\": [ \"stun:stun.example.com:3478\" ], # One or more STUN "
+"servers.\n"
+" },\n"
+" {\n"
+" \"urls\": [ \"turn:turn.example.com:3478\" ], # One or more TURN "
+"servers.\n"
+" \"username\": \"a_username\", # Optional username for the TURN "
+"server.\n"
+" \"credentials\": \"a_password\", # Optional password for the "
+"TURN server.\n"
+" }\n"
+" ]\n"
+"}\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:111
+msgid ""
+"Call this method frequently (e.g. in [method Node._process] or [method Node."
+"_physics_process]) to properly receive signals."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:122
+msgid ""
+"Sets the SDP description of the local peer. This should be called in "
+"response to [signal session_description_created].\n"
+"After calling this function the peer will start emitting [signal "
+"ice_candidate_created] (unless an [enum Error] different from [constant OK] "
+"is returned)."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:134
+msgid ""
+"Sets the SDP description of the remote peer. This should be called with the "
+"values generated by a remote peer and received over the signaling server.\n"
+"If [code]type[/code] is [code]offer[/code] the peer will emit [signal "
+"session_description_created] with the appropriate answer.\n"
+"If [code]type[/code] is [code]answer[/code] the peer will start emitting "
+"[signal ice_candidate_created]."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:145
+msgid ""
+"Emitted when a new in-band channel is received, i.e. when the channel was "
+"created with [code]negotiated: false[/code] (default).\n"
+"The object will be an instance of [WebRTCDataChannel]. You must keep a "
+"reference of it or it will be closed automatically. See [method "
+"create_data_channel]."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:157
+msgid ""
+"Emitted when a new ICE candidate has been created. The three parameters are "
+"meant to be passed to the remote peer over the signaling server."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:166
+msgid ""
+"Emitted after a successful call to [method create_offer] or [method "
+"set_remote_description] (when it generates an answer). The parameters are "
+"meant to be passed to [method set_local_description] on this object, and "
+"sent to the remote peer over the signaling server."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:172
+msgid ""
+"The connection is new, data channels and an offer can be created in this "
+"state."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:175
+msgid ""
+"The peer is connecting, ICE is in progress, none of the transports has "
+"failed."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:178
+msgid "The peer is connected, all ICE transports are connected."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:181
+msgid "At least one ICE transport is disconnected."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:184
+msgid "One or more of the ICE transports failed."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:187
+msgid ""
+"The peer connection is closed (after calling [method close] for example)."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketClient.xml:4
+msgid "A WebSocket client implementation."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketClient.xml:7
+msgid ""
+"This class implements a WebSocket client compatible with any RFC 6455-"
+"compliant WebSocket server.\n"
+"This client can be optionally used as a network peer for the "
+"[MultiplayerAPI].\n"
+"After starting the client ([method connect_to_url]), you will need to "
+"[method NetworkedMultiplayerPeer.poll] it at regular intervals (e.g. inside "
+"[method Node._process]).\n"
+"You will receive appropriate signals when connecting, disconnecting, or when "
+"new data is available."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketClient.xml:27
+msgid ""
+"Connects to the given URL requesting one of the given [code]protocols[/code] "
+"as sub-protocol. If the list empty (default), no sub-protocol will be "
+"requested.\n"
+"If [code]true[/code] is passed as [code]gd_mp_api[/code], the client will "
+"behave like a network peer for the [MultiplayerAPI], connections to non-"
+"Godot servers will not work, and [signal data_received] will not be "
+"emitted.\n"
+"If [code]false[/code] is passed instead (default), you must call "
+"[PacketPeer] functions ([code]put_packet[/code], [code]get_packet[/code], "
+"etc.) on the [WebSocketPeer] returned via [code]get_peer(1)[/code] and not "
+"on this object directly (e.g. [code]get_peer(1).put_packet(data)[/code]).\n"
+"You can optionally pass a list of [code]custom_headers[/code] to be added to "
+"the handshake HTTP request.\n"
+"[b]Note:[/b] Specifying [code]custom_headers[/code] is not supported in "
+"HTML5 exports due to browsers restrictions."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketClient.xml:42
+msgid ""
+"Disconnects this client from the connected host. See [method WebSocketPeer."
+"close] for more information."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketClient.xml:49
+msgid "Return the IP address of the currently connected host."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketClient.xml:56
+msgid "Return the IP port of the currently connected host."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketClient.xml:62
+msgid ""
+"If specified, this [X509Certificate] will be the only one accepted when "
+"connecting to an SSL host. Any other certificate provided by the server will "
+"be regarded as invalid.\n"
+"[b]Note:[/b] Specifying a custom [code]trusted_ssl_certificate[/code] is not "
+"supported in HTML5 exports due to browsers restrictions."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketClient.xml:66
+msgid ""
+"If [code]true[/code], SSL certificate verification is enabled.\n"
+"[b]Note:[/b] You must specify the certificates to be used in the Project "
+"Settings for it to work when exported."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketClient.xml:75
+msgid ""
+"Emitted when the connection to the server is closed. [code]was_clean_close[/"
+"code] will be [code]true[/code] if the connection was shutdown cleanly."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketClient.xml:80
+msgid "Emitted when the connection to the server fails."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketClient.xml:87
+msgid ""
+"Emitted when a connection with the server is established, [code]protocol[/"
+"code] will contain the sub-protocol agreed with the server."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketClient.xml:92
+msgid ""
+"Emitted when a WebSocket message is received.\n"
+"[b]Note:[/b] This signal is [i]not[/i] emitted when used as high-level "
+"multiplayer peer."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketClient.xml:102
+msgid ""
+"Emitted when the server requests a clean close. You should keep polling "
+"until you get a [signal connection_closed] signal to achieve the clean "
+"close. See [method WebSocketPeer.close] for more details."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketMultiplayerPeer.xml:4
+msgid "Base class for WebSocket server and client."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketMultiplayerPeer.xml:7
+msgid ""
+"Base class for WebSocket server and client, allowing them to be used as "
+"network peer for the [MultiplayerAPI]."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketMultiplayerPeer.xml:18
+msgid ""
+"Returns the [WebSocketPeer] associated to the given [code]peer_id[/code]."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketMultiplayerPeer.xml:33
+msgid ""
+"Configures the buffer sizes for this WebSocket peer. Default values can be "
+"specified in the Project Settings under [code]network/limits[/code]. For "
+"server, values are meant per connected peer.\n"
+"The first two parameters define the size and queued packets limits of the "
+"input buffer, the last two of the output buffer.\n"
+"Buffer sizes are expressed in KiB, so [code]4 = 2^12 = 4096 bytes[/code]. "
+"All parameters will be rounded up to the nearest power of two.\n"
+"[b]Note:[/b] HTML5 exports only use the input buffer since the output one is "
+"managed by browsers."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketMultiplayerPeer.xml:49
+msgid ""
+"Emitted when a packet is received from a peer.\n"
+"[b]Note:[/b] This signal is only emitted when the client or server is "
+"configured to use Godot multiplayer API."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketPeer.xml:4
+msgid "A class representing a specific WebSocket connection."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketPeer.xml:7
+msgid ""
+"This class represent a specific WebSocket connection, you can do lower level "
+"operations with it.\n"
+"You can choose to write to the socket in binary or text mode, and you can "
+"recognize the mode used for writing by the other peer."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketPeer.xml:21
+msgid ""
+"Closes this WebSocket connection. [code]code[/code] is the status code for "
+"the closure (see RFC 6455 section 7.4 for a list of valid status codes). "
+"[code]reason[/code] is the human readable reason for closing the connection "
+"(can be any UTF-8 string that's smaller than 123 bytes).\n"
+"[b]Note:[/b] To achieve a clean close, you will need to keep polling until "
+"either [signal WebSocketClient.connection_closed] or [signal WebSocketServer."
+"client_disconnected] is received.\n"
+"[b]Note:[/b] The HTML5 export might not support all status codes. Please "
+"refer to browser-specific documentation for more details."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketPeer.xml:30
+msgid ""
+"Returns the IP address of the connected peer.\n"
+"[b]Note:[/b] Not available in the HTML5 export."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketPeer.xml:38
+msgid ""
+"Returns the remote port of the connected peer.\n"
+"[b]Note:[/b] Not available in the HTML5 export."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketPeer.xml:46
+msgid "Gets the current selected write mode. See [enum WriteMode]."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketPeer.xml:53
+msgid "Returns [code]true[/code] if this peer is currently connected."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketPeer.xml:62
+msgid ""
+"Disable Nagle's algorithm on the underling TCP socket (default). See [method "
+"StreamPeerTCP.set_no_delay] for more information.\n"
+"[b]Note:[/b] Not available in the HTML5 export."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketPeer.xml:72
+msgid "Sets the socket to use the given [enum WriteMode]."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketPeer.xml:79
+msgid ""
+"Returns [code]true[/code] if the last received packet was sent as a text "
+"payload. See [enum WriteMode]."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketPeer.xml:85
+msgid ""
+"Specifies that WebSockets messages should be transferred as text payload "
+"(only valid UTF-8 is allowed)."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketPeer.xml:88
+msgid ""
+"Specifies that WebSockets messages should be transferred as binary payload "
+"(any byte combination is allowed)."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketServer.xml:4
+msgid "A WebSocket server implementation."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketServer.xml:7
+msgid ""
+"This class implements a WebSocket server that can also support the high-"
+"level multiplayer API.\n"
+"After starting the server ([method listen]), you will need to [method "
+"NetworkedMultiplayerPeer.poll] it at regular intervals (e.g. inside [method "
+"Node._process]). When clients connect, disconnect, or send data, you will "
+"receive the appropriate signal.\n"
+"[b]Note:[/b] Not available in HTML5 exports."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketServer.xml:24
+msgid ""
+"Disconnects the peer identified by [code]id[/code] from the server. See "
+"[method WebSocketPeer.close] for more information."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketServer.xml:51
+msgid "Returns [code]true[/code] if a peer with the given ID is connected."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketServer.xml:58
+msgid ""
+"Returns [code]true[/code] if the server is actively listening on a port."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketServer.xml:71
+msgid ""
+"Starts listening on the given port.\n"
+"You can specify the desired subprotocols via the \"protocols\" array. If the "
+"list empty (default), no sub-protocol will be requested.\n"
+"If [code]true[/code] is passed as [code]gd_mp_api[/code], the server will "
+"behave like a network peer for the [MultiplayerAPI], connections from non-"
+"Godot clients will not work, and [signal data_received] will not be "
+"emitted.\n"
+"If [code]false[/code] is passed instead (default), you must call "
+"[PacketPeer] functions ([code]put_packet[/code], [code]get_packet[/code], "
+"etc.), on the [WebSocketPeer] returned via [code]get_peer(id)[/code] to "
+"communicate with the peer with given [code]id[/code] (e.g. "
+"[code]get_peer(id).get_available_packet_count[/code])."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketServer.xml:81
+msgid "Stops the server and clear its state."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketServer.xml:87
+msgid ""
+"When not set to [code]*[/code] will restrict incoming connections to the "
+"specified IP address. Setting [code]bind_ip[/code] to [code]127.0.0.1[/code] "
+"will cause the server to listen only to the local host."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketServer.xml:90
+msgid ""
+"When using SSL (see [member private_key] and [member ssl_certificate]), you "
+"can set this to a valid [X509Certificate] to be provided as additional CA "
+"chain information during the SSL handshake."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketServer.xml:93
+msgid ""
+"When set to a valid [CryptoKey] (along with [member ssl_certificate]) will "
+"cause the server to require SSL instead of regular TCP (i.e. the [code]wss://"
+"[/code] protocol)."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketServer.xml:96
+msgid ""
+"When set to a valid [X509Certificate] (along with [member private_key]) will "
+"cause the server to require SSL instead of regular TCP (i.e. the [code]wss://"
+"[/code] protocol)."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketServer.xml:108
+msgid ""
+"Emitted when a client requests a clean close. You should keep polling until "
+"you get a [signal client_disconnected] signal with the same [code]id[/code] "
+"to achieve the clean close. See [method WebSocketPeer.close] for more "
+"details."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketServer.xml:117
+msgid ""
+"Emitted when a new client connects. \"protocol\" will be the sub-protocol "
+"agreed with the client."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketServer.xml:126
+msgid ""
+"Emitted when a client disconnects. [code]was_clean_close[/code] will be "
+"[code]true[/code] if the connection was shutdown cleanly."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketServer.xml:133
+msgid ""
+"Emitted when a new message is received.\n"
+"[b]Note:[/b] This signal is [i]not[/i] emitted when used as high-level "
+"multiplayer peer."
+msgstr ""
+
+#: doc/classes/World2D.xml:4
+msgid "Class that has everything pertaining to a 2D world."
+msgstr ""
+
+#: doc/classes/World2D.xml:7
+msgid ""
+"Class that has everything pertaining to a 2D world. A physics space, a "
+"visual scenario and a sound space. 2D nodes register their resources into "
+"the current 2D world."
+msgstr ""
+
+#: doc/classes/World2D.xml:16
+msgid ""
+"The [RID] of this world's canvas resource. Used by the [RenderingServer] for "
+"2D drawing."
+msgstr ""
+
+#: doc/classes/World2D.xml:19
+msgid ""
+"Direct access to the world's physics 2D space state. Used for querying "
+"current and potential collisions. Must only be accessed from the main thread "
+"within [code]_physics_process(delta)[/code]."
+msgstr ""
+
+#: doc/classes/World2D.xml:22
+msgid ""
+"The [RID] of this world's physics space resource. Used by the "
+"[PhysicsServer2D] for 2D physics, treating it as both a space and an area."
+msgstr ""
+
+#: doc/classes/World3D.xml:4
+msgid "Class that has everything pertaining to a world."
+msgstr ""
+
+#: doc/classes/World3D.xml:7
+msgid ""
+"Class that has everything pertaining to a world. A physics space, a visual "
+"scenario and a sound space. Node3D nodes register their resources into the "
+"current world."
+msgstr ""
+
+#: doc/classes/World3D.xml:18
+msgid ""
+"Direct access to the world's physics 3D space state. Used for querying "
+"current and potential collisions. Must only be accessed from within "
+"[code]_physics_process(delta)[/code]."
+msgstr ""
+
+#: doc/classes/World3D.xml:21
+msgid "The World3D's [Environment]."
+msgstr ""
+
+#: doc/classes/World3D.xml:24
+msgid ""
+"The World3D's fallback_environment will be used if the World3D's "
+"[Environment] fails or is missing."
+msgstr ""
+
+#: doc/classes/World3D.xml:27
+msgid "The World3D's visual scenario."
+msgstr ""
+
+#: doc/classes/World3D.xml:30
+msgid "The World3D's physics space."
+msgstr ""
+
+#: doc/classes/WorldEnvironment.xml:4
+msgid ""
+"Default environment properties for the entire scene (post-processing "
+"effects, lighting and background settings)."
+msgstr ""
+
+#: doc/classes/WorldEnvironment.xml:7
+msgid ""
+"The [WorldEnvironment] node is used to configure the default [Environment] "
+"for the scene.\n"
+"The parameters defined in the [WorldEnvironment] can be overridden by an "
+"[Environment] node set on the current [Camera3D]. Additionally, only one "
+"[WorldEnvironment] may be instanced in a given scene at a time.\n"
+"The [WorldEnvironment] allows the user to specify default lighting "
+"parameters (e.g. ambient lighting), various post-processing effects (e.g. "
+"SSAO, DOF, Tonemapping), and how to draw the background (e.g. solid color, "
+"skybox). Usually, these are added in order to improve the realism/color "
+"balance of the scene."
+msgstr ""
+
+#: doc/classes/WorldEnvironment.xml:20
+msgid ""
+"The [Environment] resource used by this [WorldEnvironment], defining the "
+"default properties."
+msgstr ""
+
+#: doc/classes/WorldMarginShape3D.xml:4
+msgid "Infinite plane shape for 3D collisions."
+msgstr ""
+
+#: doc/classes/WorldMarginShape3D.xml:7
+msgid ""
+"An infinite plane shape for 3D collisions. Note that the [Plane]'s normal "
+"matters; anything \"below\" the plane will collide with it. If the "
+"[WorldMarginShape3D] is used in a [PhysicsBody3D], it will cause colliding "
+"objects placed \"below\" it to teleport \"above\" the plane."
+msgstr ""
+
+#: doc/classes/WorldMarginShape3D.xml:15
+msgid "The [Plane] used by the [WorldMarginShape3D] for collision."
+msgstr ""
+
+#: doc/classes/X509Certificate.xml:4
+msgid "An X509 certificate (e.g. for SSL)."
+msgstr ""
+
+#: doc/classes/X509Certificate.xml:7
+msgid ""
+"The X509Certificate class represents an X509 certificate. Certificates can "
+"be loaded and saved like any other [Resource].\n"
+"They can be used as the server certificate in [method StreamPeerSSL."
+"accept_stream] (along with the proper [CryptoKey]), and to specify the only "
+"certificate that should be accepted when connecting to an SSL server via "
+"[method StreamPeerSSL.connect_to_stream].\n"
+"[b]Note:[/b] Not available in HTML5 exports."
+msgstr ""
+
+#: doc/classes/X509Certificate.xml:20
+msgid "Loads a certificate from [code]path[/code] (\"*.crt\" file)."
+msgstr ""
+
+#: doc/classes/X509Certificate.xml:29
+msgid ""
+"Saves a certificate to the given [code]path[/code] (should be a \"*.crt\" "
+"file)."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:4
+msgid ""
+"Low-level class for creating parsers for [url=https://en.wikipedia.org/wiki/"
+"XML]XML[/url] files."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:7
+msgid ""
+"This class can serve as base to make custom XML parsers. Since XML is a very "
+"flexible standard, this interface is low-level so it can be applied to any "
+"possible schema."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:16
+msgid "Gets the amount of attributes in the current element."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:25
+msgid ""
+"Gets the name of the attribute specified by the index in [code]idx[/code] "
+"argument."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:34
+msgid ""
+"Gets the value of the attribute specified by the index in [code]idx[/code] "
+"argument."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:41
+msgid "Gets the current line in the parsed file (currently not implemented)."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:50
+msgid ""
+"Gets the value of a certain attribute of the current element by name. This "
+"will raise an error if the element has no such attribute."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:59
+msgid ""
+"Gets the value of a certain attribute of the current element by name. This "
+"will return an empty [String] if the attribute is not found."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:66
+msgid ""
+"Gets the contents of a text node. This will raise an error in any other type "
+"of node."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:73
+msgid ""
+"Gets the name of the current element node. This will raise an error if the "
+"current node type is neither [constant NODE_ELEMENT] nor [constant "
+"NODE_ELEMENT_END]."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:80
+msgid ""
+"Gets the byte offset of the current node since the beginning of the file or "
+"buffer."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:87
+msgid ""
+"Gets the type of the current node. Compare with [enum NodeType] constants."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:96
+msgid "Check whether the current element has a certain attribute."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:103
+msgid ""
+"Check whether the current element is empty (this only works for completely "
+"empty tags, e.g. [code]<element \\>[/code])."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:112
+msgid "Opens an XML file for parsing. This returns an error code."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:121
+msgid "Opens an XML raw buffer for parsing. This returns an error code."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:128
+msgid "Reads the next node of the file. This returns an error code."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:137
+msgid ""
+"Moves the buffer cursor to a certain offset (since the beginning) and read "
+"the next node there. This returns an error code."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:144
+msgid ""
+"Skips the current section. If the node contains other elements, they will be "
+"ignored and the cursor will go to the closing of the current element."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:150
+msgid "There's no node (no file or buffer opened)."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:153
+msgid "Element (tag)."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:156
+msgid "End of element."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:159
+msgid "Text node."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:162
+msgid "Comment node."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:165
+msgid "CDATA content."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:168
+msgid "Unknown node."
+msgstr ""
+
+#: doc/classes/XRAnchor3D.xml:4
+msgid "An anchor point in AR space."
+msgstr ""
+
+#: doc/classes/XRAnchor3D.xml:7
+msgid ""
+"The [XRAnchor3D] point is a spatial node that maps a real world location "
+"identified by the AR platform to a position within the game world. For "
+"example, as long as plane detection in ARKit is on, ARKit will identify and "
+"update the position of planes (tables, floors, etc) and create anchors for "
+"them.\n"
+"This node is mapped to one of the anchors through its unique ID. When you "
+"receive a signal that a new anchor is available, you should add this node to "
+"your scene for that anchor. You can predefine nodes and set the ID; the "
+"nodes will simply remain on 0,0,0 until a plane is recognized.\n"
+"Keep in mind that, as long as plane detection is enabled, the size, placing "
+"and orientation of an anchor will be updated as the detection logic learns "
+"more about the real world out there especially if only part of the surface "
+"is in view."
+msgstr ""
+
+#: doc/classes/XRAnchor3D.xml:18
+msgid "Returns the name given to this anchor."
+msgstr ""
+
+#: doc/classes/XRAnchor3D.xml:25
+msgid ""
+"Returns [code]true[/code] if the anchor is being tracked and [code]false[/"
+"code] if no anchor with this ID is currently known."
+msgstr ""
+
+#: doc/classes/XRAnchor3D.xml:32
+msgid ""
+"If provided by the [XRInterface], this returns a mesh object for the anchor. "
+"For an anchor, this can be a shape related to the object being tracked or it "
+"can be a mesh that provides topology related to the anchor and can be used "
+"to create shadows/reflections on surfaces or for generating collision shapes."
+msgstr ""
+
+#: doc/classes/XRAnchor3D.xml:39
+msgid ""
+"Returns a plane aligned with our anchor; handy for intersection testing."
+msgstr ""
+
+#: doc/classes/XRAnchor3D.xml:46
+msgid ""
+"Returns the estimated size of the plane that was detected. Say when the "
+"anchor relates to a table in the real world, this is the estimated size of "
+"the surface of that table."
+msgstr ""
+
+#: doc/classes/XRAnchor3D.xml:52
+msgid ""
+"The anchor's ID. You can set this before the anchor itself exists. The first "
+"anchor gets an ID of [code]1[/code], the second an ID of [code]2[/code], "
+"etc. When anchors get removed, the engine can then assign the corresponding "
+"ID to new anchors. The most common situation where anchors \"disappear\" is "
+"when the AR server identifies that two anchors represent different parts of "
+"the same plane and merges them."
+msgstr ""
+
+#: doc/classes/XRAnchor3D.xml:60
+msgid ""
+"Emitted when the mesh associated with the anchor changes or when one becomes "
+"available. This is especially important for topology that is constantly "
+"being [code]mesh_updated[/code]."
+msgstr ""
+
+#: doc/classes/XRCamera3D.xml:4
+msgid ""
+"A camera node with a few overrules for AR/VR applied, such as location "
+"tracking."
+msgstr ""
+
+#: doc/classes/XRCamera3D.xml:7
+msgid ""
+"This is a helper spatial node for our camera; note that, if stereoscopic "
+"rendering is applicable (VR-HMD), most of the camera properties are ignored, "
+"as the HMD information overrides them. The only properties that can be "
+"trusted are the near and far planes.\n"
+"The position and orientation of this node is automatically updated by the XR "
+"Server to represent the location of the HMD if such tracking is available "
+"and can thus be used by game logic. Note that, in contrast to the XR "
+"Controller, the render thread has access to the most up-to-date tracking "
+"data of the HMD and the location of the XRCamera3D can lag a few "
+"milliseconds behind what is used for rendering as a result."
+msgstr ""
+
+#: doc/classes/XRCamera3D.xml:11 doc/classes/XRController3D.xml:12
+#: doc/classes/XRInterface.xml:11 doc/classes/XROrigin3D.xml:13
+#: doc/classes/XRPositionalTracker.xml:12 doc/classes/XRServer.xml:10
+msgid "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
+msgstr ""
+
+#: doc/classes/XRController3D.xml:4
+msgid "A spatial node representing a spatially-tracked controller."
+msgstr ""
+
+#: doc/classes/XRController3D.xml:7
+msgid ""
+"This is a helper spatial node that is linked to the tracking of controllers. "
+"It also offers several handy passthroughs to the state of buttons and such "
+"on the controllers.\n"
+"Controllers are linked by their ID. You can create controller nodes before "
+"the controllers are available. If your game always uses two controllers (one "
+"for each hand), you can predefine the controllers with ID 1 and 2; they will "
+"become active as soon as the controllers are identified. If you expect "
+"additional controllers to be used, you should react to the signals and add "
+"XRController3D nodes to your scene.\n"
+"The position of the controller node is automatically updated by the "
+"[XRServer]. This makes this node ideal to add child nodes to visualize the "
+"controller."
+msgstr ""
+
+#: doc/classes/XRController3D.xml:19
+msgid ""
+"If active, returns the name of the associated controller if provided by the "
+"AR/VR SDK used."
+msgstr ""
+
+#: doc/classes/XRController3D.xml:26
+msgid ""
+"Returns the hand holding this controller, if known. See [enum "
+"XRPositionalTracker.TrackerHand]."
+msgstr ""
+
+#: doc/classes/XRController3D.xml:33
+msgid ""
+"Returns [code]true[/code] if the bound controller is active. XR systems "
+"attempt to track active controllers."
+msgstr ""
+
+#: doc/classes/XRController3D.xml:42
+msgid ""
+"Returns the value of the given axis for things like triggers, touchpads, "
+"etc. that are embedded into the controller."
+msgstr ""
+
+#: doc/classes/XRController3D.xml:49
+msgid ""
+"Returns the ID of the joystick object bound to this. Every controller "
+"tracked by the [XRServer] that has buttons and axis will also be registered "
+"as a joystick within Godot. This means that all the normal joystick tracking "
+"and input mapping will work for buttons and axis found on the AR/VR "
+"controllers. This ID is purely offered as information so you can link up the "
+"controller with its joystick entry."
+msgstr ""
+
+#: doc/classes/XRController3D.xml:56
+msgid ""
+"If provided by the [XRInterface], this returns a mesh associated with the "
+"controller. This can be used to visualize the controller."
+msgstr ""
+
+#: doc/classes/XRController3D.xml:65
+msgid ""
+"Returns [code]true[/code] if the button at index [code]button[/code] is "
+"pressed. See [enum JoyButtonList]."
+msgstr ""
+
+#: doc/classes/XRController3D.xml:71
+msgid ""
+"The controller's ID.\n"
+"A controller ID of 0 is unbound and will always result in an inactive node. "
+"Controller ID 1 is reserved for the first controller that identifies itself "
+"as the left-hand controller and ID 2 is reserved for the first controller "
+"that identifies itself as the right-hand controller.\n"
+"For any other controller that the [XRServer] detects, we continue with "
+"controller ID 3.\n"
+"When a controller is turned off, its slot is freed. This ensures controllers "
+"will keep the same ID even when controllers with lower IDs are turned off."
+msgstr ""
+
+#: doc/classes/XRController3D.xml:77
+msgid ""
+"The degree to which the controller vibrates. Ranges from [code]0.0[/code] to "
+"[code]1.0[/code] with precision [code].01[/code]. If changed, updates "
+"[member XRPositionalTracker.rumble] accordingly.\n"
+"This is a useful property to animate if you want the controller to vibrate "
+"for a limited duration."
+msgstr ""
+
+#: doc/classes/XRController3D.xml:86
+msgid "Emitted when a button on this controller is pressed."
+msgstr ""
+
+#: doc/classes/XRController3D.xml:93
+msgid "Emitted when a button on this controller is released."
+msgstr ""
+
+#: doc/classes/XRController3D.xml:100
+msgid ""
+"Emitted when the mesh associated with the controller changes or when one "
+"becomes available. Generally speaking this will be a static mesh after "
+"becoming available."
+msgstr ""
+
+#: doc/classes/XRInterface.xml:4
+msgid "Base class for an AR/VR interface implementation."
+msgstr ""
+
+#: doc/classes/XRInterface.xml:7
+msgid ""
+"This class needs to be implemented to make an AR or VR platform available to "
+"Godot and these should be implemented as C++ modules or GDNative modules "
+"(note that for GDNative the subclass XRScriptInterface should be used). Part "
+"of the interface is exposed to GDScript so you can detect, enable and "
+"configure an AR or VR platform.\n"
+"Interfaces should be written in such a way that simply enabling them will "
+"give us a working setup. You can query the available interfaces through "
+"[XRServer]."
+msgstr ""
+
+#: doc/classes/XRInterface.xml:18
+msgid ""
+"If this is an AR interface that requires displaying a camera feed as the "
+"background, this method returns the feed ID in the [CameraServer] for this "
+"interface."
+msgstr ""
+
+#: doc/classes/XRInterface.xml:25
+msgid ""
+"Returns a combination of [enum Capabilities] flags providing information "
+"about the capabilities of this interface."
+msgstr ""
+
+#: doc/classes/XRInterface.xml:32
+msgid "Returns the name of this interface (OpenVR, OpenHMD, ARKit, etc)."
+msgstr ""
+
+#: doc/classes/XRInterface.xml:39
+msgid ""
+"Returns the resolution at which we should render our intermediate results "
+"before things like lens distortion are applied by the VR platform."
+msgstr ""
+
+#: doc/classes/XRInterface.xml:46
+msgid ""
+"If supported, returns the status of our tracking. This will allow you to "
+"provide feedback to the user whether there are issues with positional "
+"tracking."
+msgstr ""
+
+#: doc/classes/XRInterface.xml:53
+msgid ""
+"Call this to initialize this interface. The first interface that is "
+"initialized is identified as the primary interface and it will be used for "
+"rendering output.\n"
+"After initializing the interface you want to use you then need to enable the "
+"AR/VR mode of a viewport and rendering should commence.\n"
+"[b]Note:[/b] You must enable the AR/VR mode on the main viewport for any "
+"device that uses the main output of Godot, such as for mobile VR.\n"
+"If you do this for a platform that handles its own output (such as OpenVR) "
+"Godot will show just one eye without distortion on screen. Alternatively, "
+"you can add a separate viewport node to your scene and enable AR/VR on that "
+"viewport. It will be used to output to the HMD, leaving you free to do "
+"anything you like in the main window, such as using a separate camera as a "
+"spectator camera or rendering something completely different.\n"
+"While currently not used, you can activate additional interfaces. You may "
+"wish to do this if you want to track controllers from other platforms. "
+"However, at this point in time only one interface can render to an HMD."
+msgstr ""
+
+#: doc/classes/XRInterface.xml:64
+msgid ""
+"Returns [code]true[/code] if the current output of this interface is in "
+"stereo."
+msgstr ""
+
+#: doc/classes/XRInterface.xml:71
+msgid "Turns the interface off."
+msgstr ""
+
+#: doc/classes/XRInterface.xml:77
+msgid "On an AR interface, [code]true[/code] if anchor detection is enabled."
+msgstr ""
+
+#: doc/classes/XRInterface.xml:80
+msgid "[code]true[/code] if this interface been initialized."
+msgstr ""
+
+#: doc/classes/XRInterface.xml:83
+msgid "[code]true[/code] if this is the primary interface."
+msgstr ""
+
+#: doc/classes/XRInterface.xml:88
+msgid "No XR capabilities."
+msgstr ""
+
+#: doc/classes/XRInterface.xml:91
+msgid ""
+"This interface can work with normal rendering output (non-HMD based AR)."
+msgstr ""
+
+#: doc/classes/XRInterface.xml:94
+msgid "This interface supports stereoscopic rendering."
+msgstr ""
+
+#: doc/classes/XRInterface.xml:97
+msgid "This interface supports AR (video background and real world tracking)."
+msgstr ""
+
+#: doc/classes/XRInterface.xml:100
+msgid ""
+"This interface outputs to an external device. If the main viewport is used, "
+"the on screen output is an unmodified buffer of either the left or right eye "
+"(stretched if the viewport size is not changed to the same aspect ratio of "
+"[method get_render_targetsize]). Using a separate viewport node frees up the "
+"main viewport for other purposes."
+msgstr ""
+
+#: doc/classes/XRInterface.xml:103
+msgid ""
+"Mono output, this is mostly used internally when retrieving positioning "
+"information for our camera node or when stereo scopic rendering is not "
+"supported."
+msgstr ""
+
+#: doc/classes/XRInterface.xml:106
+msgid ""
+"Left eye output, this is mostly used internally when rendering the image for "
+"the left eye and obtaining positioning and projection information."
+msgstr ""
+
+#: doc/classes/XRInterface.xml:109
+msgid ""
+"Right eye output, this is mostly used internally when rendering the image "
+"for the right eye and obtaining positioning and projection information."
+msgstr ""
+
+#: doc/classes/XRInterface.xml:112
+msgid "Tracking is behaving as expected."
+msgstr ""
+
+#: doc/classes/XRInterface.xml:115
+msgid ""
+"Tracking is hindered by excessive motion (the player is moving faster than "
+"tracking can keep up)."
+msgstr ""
+
+#: doc/classes/XRInterface.xml:118
+msgid ""
+"Tracking is hindered by insufficient features, it's too dark (for camera-"
+"based tracking), player is blocked, etc."
+msgstr ""
+
+#: doc/classes/XRInterface.xml:121
+msgid ""
+"We don't know the status of the tracking or this interface does not provide "
+"feedback."
+msgstr ""
+
+#: doc/classes/XRInterface.xml:124
+msgid ""
+"Tracking is not functional (camera not plugged in or obscured, lighthouses "
+"turned off, etc.)."
+msgstr ""
+
+#: modules/gdnative/doc_classes/XRInterfaceGDNative.xml:4
+msgid "GDNative wrapper for an XR interface."
+msgstr ""
+
+#: modules/gdnative/doc_classes/XRInterfaceGDNative.xml:7
+msgid ""
+"This is a wrapper class for GDNative implementations of the XR interface. To "
+"use a GDNative XR interface, simply instantiate this object and set your "
+"GDNative library containing the XR interface implementation."
+msgstr ""
+
+#: doc/classes/XROrigin3D.xml:4
+msgid "The origin point in AR/VR."
+msgstr ""
+
+#: doc/classes/XROrigin3D.xml:7
+msgid ""
+"This is a special node within the AR/VR system that maps the physical "
+"location of the center of our tracking space to the virtual location within "
+"our game world.\n"
+"There should be only one of these nodes in your scene and you must have one. "
+"All the XRCamera3D, XRController3D and XRAnchor3D nodes should be direct "
+"children of this node for spatial tracking to work correctly.\n"
+"It is the position of this node that you update when your character needs to "
+"move through your game world while we're not moving in the real world. "
+"Movement in the real world is always in relation to this origin point.\n"
+"For example, if your character is driving a car, the XROrigin3D node should "
+"be a child node of this car. Or, if you're implementing a teleport system to "
+"move your character, you should change the position of this node."
+msgstr ""
+
+#: doc/classes/XROrigin3D.xml:19
+msgid ""
+"Allows you to adjust the scale to your game's units. Most AR/VR platforms "
+"assume a scale of 1 game world unit = 1 real world meter.\n"
+"[b]Note:[/b] This method is a passthrough to the [XRServer] itself."
+msgstr ""
+
+#: doc/classes/XRPositionalTracker.xml:4
+msgid "A tracked object."
+msgstr ""
+
+#: doc/classes/XRPositionalTracker.xml:7
+msgid ""
+"An instance of this object represents a device that is tracked, such as a "
+"controller or anchor point. HMDs aren't represented here as they are handled "
+"internally.\n"
+"As controllers are turned on and the AR/VR interface detects them, instances "
+"of this object are automatically added to this list of active tracking "
+"objects accessible through the [XRServer].\n"
+"The [XRController3D] and [XRAnchor3D] both consume objects of this type and "
+"should be used in your project. The positional trackers are just under-the-"
+"hood objects that make this all work. These are mostly exposed so that "
+"GDNative-based interfaces can interact with them."
+msgstr ""
+
+#: doc/classes/XRPositionalTracker.xml:19
+msgid ""
+"Returns the hand holding this tracker, if known. See [enum TrackerHand] "
+"constants."
+msgstr ""
+
+#: doc/classes/XRPositionalTracker.xml:26
+msgid ""
+"If this is a controller that is being tracked, the controller will also be "
+"represented by a joystick entry with this ID."
+msgstr ""
+
+#: doc/classes/XRPositionalTracker.xml:33
+msgid ""
+"Returns the mesh related to a controller or anchor point if one is available."
+msgstr ""
+
+#: doc/classes/XRPositionalTracker.xml:40
+msgid "Returns the controller or anchor point's name if available."
+msgstr ""
+
+#: doc/classes/XRPositionalTracker.xml:47
+msgid "Returns the controller's orientation matrix."
+msgstr ""
+
+#: doc/classes/XRPositionalTracker.xml:54
+msgid "Returns the world-space controller position."
+msgstr ""
+
+#: doc/classes/XRPositionalTracker.xml:61
+msgid ""
+"Returns the internal tracker ID. This uniquely identifies the tracker per "
+"tracker type and matches the ID you need to specify for nodes such as the "
+"[XRController3D] and [XRAnchor3D] nodes."
+msgstr ""
+
+#: doc/classes/XRPositionalTracker.xml:68
+msgid "Returns [code]true[/code] if this device tracks orientation."
+msgstr ""
+
+#: doc/classes/XRPositionalTracker.xml:75
+msgid "Returns [code]true[/code] if this device tracks position."
+msgstr ""
+
+#: doc/classes/XRPositionalTracker.xml:84
+msgid "Returns the transform combining this device's orientation and position."
+msgstr ""
+
+#: doc/classes/XRPositionalTracker.xml:91
+msgid "Returns the tracker's type."
+msgstr ""
+
+#: doc/classes/XRPositionalTracker.xml:97
+msgid ""
+"The degree to which the tracker rumbles. Ranges from [code]0.0[/code] to "
+"[code]1.0[/code] with precision [code].01[/code]."
+msgstr ""
+
+#: doc/classes/XRPositionalTracker.xml:102
+msgid "The hand this tracker is held in is unknown or not applicable."
+msgstr ""
+
+#: doc/classes/XRPositionalTracker.xml:105
+msgid "This tracker is the left hand controller."
+msgstr ""
+
+#: doc/classes/XRPositionalTracker.xml:108
+msgid "This tracker is the right hand controller."
+msgstr ""
+
+#: doc/classes/XRServer.xml:4
+msgid "Server for AR and VR features."
+msgstr ""
+
+#: doc/classes/XRServer.xml:7
+msgid ""
+"The AR/VR server is the heart of our Advanced and Virtual Reality solution "
+"and handles all the processing."
+msgstr ""
+
+#: doc/classes/XRServer.xml:21
+msgid ""
+"This is an important function to understand correctly. AR and VR platforms "
+"all handle positioning slightly differently.\n"
+"For platforms that do not offer spatial tracking, our origin point (0,0,0) "
+"is the location of our HMD, but you have little control over the direction "
+"the player is facing in the real world.\n"
+"For platforms that do offer spatial tracking, our origin point depends very "
+"much on the system. For OpenVR, our origin point is usually the center of "
+"the tracking space, on the ground. For other platforms, it's often the "
+"location of the tracking camera.\n"
+"This method allows you to center your tracker on the location of the HMD. It "
+"will take the current location of the HMD and use that to adjust all your "
+"tracking data; in essence, realigning the real world to your player's "
+"current position in the game world.\n"
+"For this method to produce usable results, tracking information must be "
+"available. This often takes a few frames after starting your game.\n"
+"You should call this method after a few seconds have passed. For instance, "
+"when the user requests a realignment of the display holding a designated "
+"button on a controller for a short period of time, or when implementing a "
+"teleport mechanism."
+msgstr ""
+
+#: doc/classes/XRServer.xml:35
+msgid ""
+"Finds an interface by its name. For instance, if your project uses "
+"capabilities of an AR/VR platform, you can find the interface for that "
+"platform by name and initialize it."
+msgstr ""
+
+#: doc/classes/XRServer.xml:42
+msgid "Returns the primary interface's transformation."
+msgstr ""
+
+#: doc/classes/XRServer.xml:51
+msgid ""
+"Returns the interface registered at a given index in our list of interfaces."
+msgstr ""
+
+#: doc/classes/XRServer.xml:58
+msgid ""
+"Returns the number of interfaces currently registered with the AR/VR server. "
+"If your project supports multiple AR/VR platforms, you can look through the "
+"available interface, and either present the user with a selection or simply "
+"try to initialize each interface and use the first one that returns "
+"[code]true[/code]."
+msgstr ""
+
+#: doc/classes/XRServer.xml:65
+msgid ""
+"Returns a list of available interfaces the ID and name of each interface."
+msgstr ""
+
+#: doc/classes/XRServer.xml:72
+msgid ""
+"Returns the absolute timestamp (in μs) of the last [XRServer] commit of the "
+"AR/VR eyes to [RenderingServer]. The value comes from an internal call to "
+"[method OS.get_ticks_usec]."
+msgstr ""
+
+#: doc/classes/XRServer.xml:79
+msgid ""
+"Returns the duration (in μs) of the last frame. This is computed as the "
+"difference between [method get_last_commit_usec] and [method "
+"get_last_process_usec] when committing."
+msgstr ""
+
+#: doc/classes/XRServer.xml:86
+msgid ""
+"Returns the absolute timestamp (in μs) of the last [XRServer] process "
+"callback. The value comes from an internal call to [method OS."
+"get_ticks_usec]."
+msgstr ""
+
+#: doc/classes/XRServer.xml:93
+msgid ""
+"Returns the reference frame transform. Mostly used internally and exposed "
+"for GDNative build interfaces."
+msgstr ""
+
+#: doc/classes/XRServer.xml:102
+msgid "Returns the positional tracker at the given ID."
+msgstr ""
+
+#: doc/classes/XRServer.xml:109
+msgid "Returns the number of trackers currently registered."
+msgstr ""
+
+#: doc/classes/XRServer.xml:115
+msgid "The primary [XRInterface] currently bound to the [XRServer]."
+msgstr ""
+
+#: doc/classes/XRServer.xml:118
+msgid ""
+"Allows you to adjust the scale to your game's units. Most AR/VR platforms "
+"assume a scale of 1 game world unit = 1 real world meter."
+msgstr ""
+
+#: doc/classes/XRServer.xml:126
+msgid "Emitted when a new interface has been added."
+msgstr ""
+
+#: doc/classes/XRServer.xml:133
+msgid "Emitted when an interface is removed."
+msgstr ""
+
+#: doc/classes/XRServer.xml:144
+msgid ""
+"Emitted when a new tracker has been added. If you don't use a fixed number "
+"of controllers or if you're using [XRAnchor3D]s for an AR solution, it is "
+"important to react to this signal to add the appropriate [XRController3D] or "
+"[XRAnchor3D] nodes related to this new tracker."
+msgstr ""
+
+#: doc/classes/XRServer.xml:155
+msgid ""
+"Emitted when a tracker is removed. You should remove any [XRController3D] or "
+"[XRAnchor3D] points if applicable. This is not mandatory, the nodes simply "
+"become inactive and will be made active again when a new tracker becomes "
+"available (i.e. a new controller is switched on that takes the place of the "
+"previous one)."
+msgstr ""
+
+#: doc/classes/XRServer.xml:161
+msgid "The tracker tracks the location of a controller."
+msgstr ""
+
+#: doc/classes/XRServer.xml:164
+msgid "The tracker tracks the location of a base station."
+msgstr ""
+
+#: doc/classes/XRServer.xml:167
+msgid "The tracker tracks the location and size of an AR anchor."
+msgstr ""
+
+#: doc/classes/XRServer.xml:170
+msgid "Used internally to filter trackers of any known type."
+msgstr ""
+
+#: doc/classes/XRServer.xml:173
+msgid "Used internally if we haven't set the tracker type yet."
+msgstr ""
+
+#: doc/classes/XRServer.xml:176
+msgid "Used internally to select all trackers."
+msgstr ""
+
+#: doc/classes/XRServer.xml:179
+msgid ""
+"Fully reset the orientation of the HMD. Regardless of what direction the "
+"user is looking to in the real world. The user will look dead ahead in the "
+"virtual world."
+msgstr ""
+
+#: doc/classes/XRServer.xml:182
+msgid ""
+"Resets the orientation but keeps the tilt of the device. So if we're looking "
+"down, we keep looking down but heading will be reset."
+msgstr ""
+
+#: doc/classes/XRServer.xml:185
+msgid ""
+"Does not reset the orientation of the HMD, only the position of the player "
+"gets centered."
+msgstr ""
+
+#: doc/classes/YSort.xml:4
+msgid "Sort all child nodes based on their Y positions."
+msgstr ""
+
+#: doc/classes/YSort.xml:7
+msgid ""
+"Sort all child nodes based on their Y positions. The child node must inherit "
+"from [CanvasItem] for it to be sorted. Nodes that have a higher Y position "
+"will be drawn later, so they will appear on top of nodes that have a lower Y "
+"position.\n"
+"Nesting of YSort nodes is possible. Children YSort nodes will be sorted in "
+"the same space as the parent YSort, allowing to better organize a scene or "
+"divide it in multiple ones, yet keep the unique sorting."
+msgstr ""
+
+#: doc/classes/YSort.xml:16
+msgid ""
+"If [code]true[/code], child nodes are sorted, otherwise sorting is disabled."
+msgstr ""
diff --git a/doc/translations/ru.po b/doc/translations/ru.po
index d0699059a1..83c3440a64 100644
--- a/doc/translations/ru.po
+++ b/doc/translations/ru.po
@@ -5,12 +5,15 @@
#
# Alex <Alex.Gorichev@protonmail.com>, 2020.
# Nikita <Kulacnikita@ya.ru>, 2020.
+# ÐлекÑей Смирнов <tir74@mail.ru>, 2020.
+# Chaosus89 <chaosus89@gmail.com>, 2020.
+# John Smith <19georginos97@gmail.com>, 2020.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine class reference\n"
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
-"PO-Revision-Date: 2020-05-24 20:13+0000\n"
-"Last-Translator: Nikita <Kulacnikita@ya.ru>\n"
+"PO-Revision-Date: 2020-07-02 09:17+0000\n"
+"Last-Translator: John Smith <19georginos97@gmail.com>\n"
"Language-Team: Russian <https://hosted.weblate.org/projects/godot-engine/"
"godot-class-reference/ru/>\n"
"Language: ru\n"
@@ -19,7 +22,7 @@ msgstr ""
"Content-Transfer-Encoding: 8-bit\n"
"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
-"X-Generator: Weblate 4.1-dev\n"
+"X-Generator: Weblate 4.2-dev\n"
#: doc/tools/makerst.py
msgid "Description"
@@ -71,6 +74,9 @@ msgid ""
"utilities. Everything else is provided by objects. (Keywords: builtin, built "
"in, global functions.)"
msgstr ""
+"СпиÑок оÑновных вÑтроенных функций GDScript. МатематичеÑкие функции и другие "
+"утилиты. Ð’Ñе оÑтальное обеÑпечиваетÑÑ Ð¾Ð±ÑŠÐµÐºÑ‚Ð°Ð¼Ð¸. (Ключевые Ñлова: "
+"вÑтроенные, глобальные функции.)"
#: modules/gdscript/doc_classes/@GDScript.xml:24
msgid ""
@@ -85,6 +91,16 @@ msgid ""
"red = Color8(255, 0, 0)\n"
"[/codeblock]"
msgstr ""
+"Возвращает цвет поÑтроенный из целочиÑленных краÑного, зеленого, Ñинего и "
+"альфа каналов. Каждый канал должен хранить 8 битов информации в диапазоне от "
+"0 до 255. \n"
+"[code]r8[/code] краÑный канал\n"
+"[code]g8[/code] зеленый канал\n"
+"[code]b8[/code] Ñиний канал\n"
+"[code]a8[/code] альфа канал\n"
+"[codeblock]\n"
+"red = Color8(255, 0, 0)\n"
+"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:42
msgid ""
@@ -95,16 +111,29 @@ msgid ""
"[/codeblock]\n"
"Supported color names are the same as the constants defined in [Color]."
msgstr ""
+"Возвращает цвет в ÑоответÑтвии Ñо Ñтандартным [code]name[/code] Ñ "
+"[code]alpha[/code] в диапазоне от 0 до 1.\n"
+"[codeblock]\n"
+"red = ColorN(\"red\", 1)\n"
+"[/codeblock]\n"
+"Поддерживаемые имена цветов Ñовпадают Ñ ÐºÐ¾Ð½Ñтантами, определенными в [Color]."
#: modules/gdscript/doc_classes/@GDScript.xml:55
+#, fuzzy
msgid ""
-"Returns the absolute value of parameter [code]s[/code] (i.e. unsigned value, "
-"works for integer and float).\n"
+"Returns the absolute value of parameter [code]s[/code] (i.e. positive "
+"value).\n"
"[codeblock]\n"
"# a is 1\n"
"a = abs(-1)\n"
"[/codeblock]"
msgstr ""
+"Возвращает абÑолютное значение параметра [code]s[/code] (то еÑÑ‚ÑŒ значение "
+"без знака, работает Ð´Ð»Ñ Ñ†ÐµÐ»Ñ‹Ñ… и Ñ Ð¿Ð»Ð°Ð²Ð°ÑŽÑ‰ÐµÐ¹ точкой).\n"
+"[codeblock]\n"
+"# a равно 1\n"
+"a = abs(-1)\n"
+"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:68
msgid ""
@@ -115,6 +144,12 @@ msgid ""
"c = acos(0.866025)\n"
"[/codeblock]"
msgstr ""
+"Возвращает арккоÑÐ¸Ð½ÑƒÑ [code]s[/code] в радианах. ИÑпользуетÑÑ Ð´Ð»Ñ Ð¿Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð¸Ñ "
+"угла коÑинуÑа [code]s[/code].\n"
+"[codeblock]\n"
+"# c равно 0.523599 или 30 градуÑов еÑли конвертировать Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ rad2deg(s)\n"
+"c = acos(0.866025)\n"
+"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:81
msgid ""
@@ -125,6 +160,12 @@ msgid ""
"s = asin(0.5)\n"
"[/codeblock]"
msgstr ""
+"Возвращает аркÑÐ¸Ð½ÑƒÑ [code]s[/code] в радианах. ИÑпользуетÑÑ Ð´Ð»Ñ Ð¿Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð¸Ñ "
+"угла ÑинуÑа [code]s[/code].\n"
+"[codeblock]\n"
+"# s равно 0.523599 или 30 градуÑов еÑли конвертировать Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ rad2deg(s)\n"
+"s = asin(0.5)\n"
+"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:96
msgid ""
@@ -147,30 +188,66 @@ msgid ""
"a message with clarifying details\n"
"[/codeblock]"
msgstr ""
+"ПроверÑет что [code]condition[/code] равно [code]true[/code]. ЕÑли "
+"[code]condition[/code] равно [code]false[/code], будет Ñгенерирована ошибка "
+"и программа приоÑтановитÑÑ Ð¿Ð¾ÐºÐ° вы не продолжите её. Эта Ñ„ÑƒÐ½ÐºÑ†Ð¸Ñ Ð²Ñ‹Ð¿Ð¾Ð»Ð½ÑетÑÑ "
+"только в отладочных билдах, или когда игра запуÑкаетÑÑ Ð² редакторе. "
+"ИÑпользуйте её Ð´Ð»Ñ Ñ†ÐµÐ»ÐµÐ¹ отладки, чтобы убедитьÑÑ Ñ‡Ñ‚Ð¾ выражение [code]true[/"
+"code] в течение разработки.\n"
+"ЕÑли задан не обÑзательный аргумент [code]message[/code], то он будет "
+"показан в дополнении к Ñообщению \"Assertion failed\". Ð’ нём вы можете "
+"предоÑтавить дополнительные ÑÐ²ÐµÐ´ÐµÐ½Ð¸Ñ Ð¾ том почему проверка была неудачной.\n"
+"[codeblock]\n"
+"# Предположим что вы хотите чтобы ÑкороÑÑ‚ÑŒ (speed) была между 0 и 20\n"
+"speed = -10\n"
+"assert(speed < 20) # ИÑтинно, программа продолжит выполнение\n"
+"assert(speed >= 0) # Ложь, программа будет оÑтановлена\n"
+"assert(speed >= 0 && speed < 20) # Ð’Ñ‹ можете комбинировать два уÑловных "
+"Ð²Ñ‹Ñ€Ð°Ð¶ÐµÐ½Ð¸Ñ Ð² одной проверке\n"
+"assert(speed < 20, \"speed = %f, но ÑкороÑтной лимит равен 20\" % speed) # "
+"Показывает Ñообщение Ñ ÑƒÑ‚Ð¾Ñ‡Ð½Ñющими деталÑми\n"
+"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:114
+#, fuzzy
msgid ""
"Returns the arc tangent of [code]s[/code] in radians. Use it to get the "
"angle from an angle's tangent in trigonometry: [code]atan(tan(angle)) == "
"angle[/code].\n"
"The method cannot know in which quadrant the angle should fall. See [method "
-"atan2] if you always want an exact angle.\n"
+"atan2] if you have both [code]y[/code] and [code]x[/code].\n"
"[codeblock]\n"
"a = atan(0.5) # a is 0.463648\n"
"[/codeblock]"
msgstr ""
+"Возвращает Ð°Ñ€ÐºÑ‚Ð°Ð½Ð³ÐµÐ½Ñ [code]s[/code] в радианах. ИÑпользуетÑÑ Ð´Ð»Ñ Ð¿Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð¸Ñ "
+"угла от тангенÑа угла в тригонометрии: [code]atan(tan(angle)) == angle[/"
+"code].\n"
+"Метод не может знать, в какой квадрант должен попадать угол. Смотрите "
+"[method atan2] еÑли вы хотите вÑегда получать точный угол.\n"
+"[codeblock]\n"
+"a = atan(0.5) # a равно 0.463648\n"
+"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:129
+#, fuzzy
msgid ""
"Returns the arc tangent of [code]y/x[/code] in radians. Use to get the angle "
"of tangent [code]y/x[/code]. To compute the value, the method takes into "
"account the sign of both arguments in order to determine the quadrant.\n"
+"Important note: The Y coordinate comes first, by convention.\n"
"[codeblock]\n"
"a = atan2(0, -1) # a is 3.141593\n"
"[/codeblock]"
msgstr ""
+"Возвращает Ð°Ñ€ÐºÑ‚Ð°Ð½Ð³ÐµÐ½Ñ [code]y/x[/code] в радианах. ИÑпользуетÑÑ Ð´Ð»Ñ "
+"Ð¿Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð¸Ñ Ñ‚Ð°Ð½Ð³ÐµÐ½Ñа угла [code]y/x[/code]. Ð”Ð»Ñ Ð²Ñ‹Ñ‡Ð¸ÑÐ»ÐµÐ½Ð¸Ñ Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ, метод "
+"принимает во внимание знак обоих аргументов Ð´Ð»Ñ Ð¾Ð¿Ñ€ÐµÐ´ÐµÐ»ÐµÐ½Ð¸Ñ ÐºÐ²Ð°Ð´Ñ€Ð°Ð½Ñ‚Ð°.\n"
+"[codeblock]\n"
+"a = atan2(0, -1) # a равно 3.141593\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:143
+#: modules/gdscript/doc_classes/@GDScript.xml:144
msgid ""
"Decodes a byte array back to a value. When [code]allow_objects[/code] is "
"[code]true[/code] decoding objects is allowed.\n"
@@ -178,26 +255,41 @@ msgid ""
"not use this option if the serialized object comes from untrusted sources to "
"avoid potential security threats (remote code execution)."
msgstr ""
+"Декодирует маÑÑив байтов обратно в переменную. ЕÑли [code]allow_objects[/"
+"code] равно [code]true[/code] декодирование объектов разрешено.\n"
+"[b]ПРЕДУПРЕЖДЕÐИЕ:[/b] ДеÑериализованный объект может Ñодержать иÑполнÑемый "
+"код. Ðе иÑпользуйте Ñто опцию еÑли Ñериализованный объект получен из "
+"непроверенных иÑточников, чтобы избежать потенциальный нарушений "
+"безопаÑноÑти (удаленного Ð²Ñ‹Ð¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ ÐºÐ¾Ð´Ð°)."
-#: modules/gdscript/doc_classes/@GDScript.xml:155
+#: modules/gdscript/doc_classes/@GDScript.xml:156
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:145
msgid ""
"Converts a 2D point expressed in the cartesian coordinate system (X and Y "
"axis) to the polar coordinate system (a distance from the origin and an "
"angle)."
msgstr ""
+"Преобразует 2D-точку, выраженную в декартовой ÑиÑтеме координат (оÑи X и Y), "
+"в полÑрную ÑиÑтему координат (раÑÑтоÑние от начала координат и угол)."
-#: modules/gdscript/doc_classes/@GDScript.xml:164
+#: modules/gdscript/doc_classes/@GDScript.xml:165
+#, fuzzy
msgid ""
-"Rounds [code]s[/code] upward, returning the smallest integral value that is "
-"not less than [code]s[/code].\n"
+"Rounds [code]s[/code] upward (towards positive infinity), returning the "
+"smallest whole number that is not less than [code]s[/code].\n"
"[codeblock]\n"
"i = ceil(1.45) # i is 2\n"
"i = ceil(1.001) # i is 2\n"
"[/codeblock]"
msgstr ""
+"ОкруглÑет [code]s[/code] вверх, Ð²Ð¾Ð·Ð²Ñ€Ð°Ñ‰Ð°Ñ Ð½Ð°Ð¸Ð¼ÐµÐ½ÑŒÑˆÐµÐµ целое значение, которое "
+"не меньше, чем [code]s[/code].\n"
+"[codeblock]\n"
+"i = ceil(1.45) # i равно 2\n"
+"i = ceil(1.001) # i равно 2\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:177
+#: modules/gdscript/doc_classes/@GDScript.xml:178
msgid ""
"Returns a character as a String of the given Unicode code point (which is "
"compatible with ASCII code).\n"
@@ -208,8 +300,16 @@ msgid ""
"[/codeblock]\n"
"This is the inverse of [method ord]."
msgstr ""
+"Возвращает Ñимвол как Строку в выбранной кодировке Юникода (который "
+"ÑовмеÑтим Ñ ÐºÐ¾Ð´Ð¸Ñ€Ð¾Ð²ÐºÐ¾Ð¹ ASCII).\n"
+"[codeblock]\n"
+"a = char(65) # a будет\"A\"\n"
+"a = char(65 + 32) # a будет \"a\"\n"
+"a = char(8364) # a будет \"€\"\n"
+"[/codeblock]\n"
+"Это Ð¾Ð±Ñ€Ð°Ñ‚Ð½Ð°Ñ Ð¾Ð¿ÐµÑ€Ð°Ñ†Ð¸Ñ [method ord]."
-#: modules/gdscript/doc_classes/@GDScript.xml:196
+#: modules/gdscript/doc_classes/@GDScript.xml:197
msgid ""
"Clamps [code]value[/code] and returns a value not less than [code]min[/code] "
"and not more than [code]max[/code].\n"
@@ -223,8 +323,19 @@ msgid ""
"a = clamp(speed, 1, 20)\n"
"[/codeblock]"
msgstr ""
+"Ограничивает [code]value[/code] и возвращает значение не меньше [code]min[/"
+"code] и не больше [code]max[/code].\n"
+"[codeblock]\n"
+"speed = 1000\n"
+"# a будет 20\n"
+"a = clamp(speed, 1, 20)\n"
+"\n"
+"speed = -10\n"
+"# a будет 1\n"
+"a = clamp(speed, 1, 20)\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:216
+#: modules/gdscript/doc_classes/@GDScript.xml:217
msgid ""
"Converts from a type to another in the best way possible. The [code]type[/"
"code] parameter uses the [enum Variant.Type] values.\n"
@@ -237,8 +348,18 @@ msgid ""
"print(a.length())\n"
"[/codeblock]"
msgstr ""
+"Преобразование из одного типа в другой Ñамым лучшим ÑпоÑобом. Параметр "
+"[code]type[/code] иÑпользует Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð¸Ð· [enum Variant.Type].\n"
+"[codeblock]\n"
+"a = Vector2(1, 0)\n"
+"# Печатает 1\n"
+"print(a.length())\n"
+"a = convert(a, TYPE_STRING)\n"
+"# Печатает 6 как \"(1, 0)\" из 6 Ñимволов\n"
+"print(a.length())\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:233
+#: modules/gdscript/doc_classes/@GDScript.xml:234
msgid ""
"Returns the cosine of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -247,8 +368,14 @@ msgid ""
"print(cos(PI))\n"
"[/codeblock]"
msgstr ""
+"Возвращает коÑÐ¸Ð½ÑƒÑ ÑƒÐ³Ð»Ð° [code]s[/code] в радианах.\n"
+"[codeblock]\n"
+"# Печатает 1, а затем -1\n"
+"print(cos(PI * 2))\n"
+"print(cos(PI))\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:247
+#: modules/gdscript/doc_classes/@GDScript.xml:248
msgid ""
"Returns the hyperbolic cosine of [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -256,12 +383,17 @@ msgid ""
"print(cosh(1))\n"
"[/codeblock]"
msgstr ""
+"Возвращает гиперболичеÑкий коÑÐ¸Ð½ÑƒÑ [code]s[/code] в радианах.\n"
+"[codeblock]\n"
+"# Печатает 1.543081\n"
+"print(cosh(1))\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:260
+#: modules/gdscript/doc_classes/@GDScript.xml:261
msgid "Converts from decibels to linear energy (audio)."
-msgstr ""
+msgstr "Преобразует децибелы в линейную Ñнергию (аудио)."
-#: modules/gdscript/doc_classes/@GDScript.xml:273
+#: modules/gdscript/doc_classes/@GDScript.xml:274
msgid ""
"Returns the result of [code]value[/code] decreased by [code]step[/code] * "
"[code]amount[/code].\n"
@@ -270,43 +402,60 @@ msgid ""
"a = dectime(60, 10, 0.1))\n"
"[/codeblock]"
msgstr ""
+"Возвращает [code]value[/code] уменьшенное на [code]step[/code] * "
+"[code]amount[/code].\n"
+"[codeblock]\n"
+"# a = 59\n"
+"a = dectime(60, 10, 0.1))\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:286
+#: modules/gdscript/doc_classes/@GDScript.xml:287
+#, fuzzy
msgid ""
-"Returns degrees converted to radians.\n"
+"Converts an angle expressed in degrees to radians.\n"
"[codeblock]\n"
"# r is 3.141593\n"
"r = deg2rad(180)\n"
"[/codeblock]"
msgstr ""
+"Возвращает градуÑÑ‹ преобразованные в радианы.\n"
+"[codeblock]\n"
+"# r будет 3.141593\n"
+"r = deg2rad(180)\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:299
+#: modules/gdscript/doc_classes/@GDScript.xml:300
msgid ""
"Converts a previously converted instance to a dictionary, back into an "
"instance. Useful for deserializing."
msgstr ""
+"Преобразует ранее преобразованный ÑкземплÑÑ€ в Ñловарь, обратно в ÑкземплÑÑ€. "
+"Полезно Ð´Ð»Ñ Ð´ÐµÑериализации."
-#: modules/gdscript/doc_classes/@GDScript.xml:310
-#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:90
+#: modules/gdscript/doc_classes/@GDScript.xml:311
msgid ""
-"Easing function, based on exponent. 0 is constant, 1 is linear, 0 to 1 is "
-"ease-in, 1+ is ease out. Negative values are in-out/out in."
+"Easing function, based on exponent. The curve values are: 0 is constant, 1 "
+"is linear, 0 to 1 is ease-in, 1+ is ease out. Negative values are in-out/out "
+"in."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:319
+#: modules/gdscript/doc_classes/@GDScript.xml:320
msgid ""
"The natural exponential function. It raises the mathematical constant [b]e[/"
"b] to the power of [code]s[/code] and returns it.\n"
-"[b]e[/b] has an approximate value of 2.71828.\n"
+"[b]e[/b] has an approximate value of 2.71828, and can be obtained with "
+"[code]exp(1)[/code].\n"
"For exponents to other bases use the method [method pow].\n"
"[codeblock]\n"
"a = exp(2) # Approximately 7.39\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:333
+#: modules/gdscript/doc_classes/@GDScript.xml:334
+#, fuzzy
msgid ""
-"Rounds [code]s[/code] to the closest smaller integer and returns it.\n"
+"Rounds [code]s[/code] downward (towards negative infinity), returning the "
+"largest whole number that is not more than [code]s[/code].\n"
"[codeblock]\n"
"# a is 2.0\n"
"a = floor(2.99)\n"
@@ -316,8 +465,19 @@ msgid ""
"[b]Note:[/b] This method returns a float. If you need an integer, you can "
"use [code]int(s)[/code] directly."
msgstr ""
+"ОкруглÑет [code]s[/code] до ближайшего меньшего целого чиÑла и возвращает "
+"[code]s[/code].\n"
+"[codeblock]\n"
+"# a равно 2.0\n"
+"a = floor(2.99)\n"
+"# a равно -3.0\n"
+"a = floor(-2.99)\n"
+"[/codeblock]\n"
+"[b]Обратите внимание:[/b] Этот метод возвращает чиÑло Ñ Ð¿Ð»Ð°Ð²Ð°ÑŽÑ‰ÐµÐ¹ точкой. "
+"ЕÑли вам нужно целое чиÑло, вы можете иÑпользовать [code]int(s)[/code] "
+"напрÑмую."
-#: modules/gdscript/doc_classes/@GDScript.xml:351
+#: modules/gdscript/doc_classes/@GDScript.xml:352
msgid ""
"Returns the floating-point remainder of [code]a/b[/code], keeping the sign "
"of [code]a[/code].\n"
@@ -327,8 +487,15 @@ msgid ""
"[/codeblock]\n"
"For the integer remainder operation, use the % operator."
msgstr ""
+"Возвращает оÑтаток Ñ Ð¿Ð»Ð°Ð²Ð°ÑŽÑ‰ÐµÐ¹ точкой от Ð´ÐµÐ»ÐµÐ½Ð¸Ñ [code]a/b[/code], ÑохранÑÑ "
+"знак [code]a[/code].\n"
+"[codeblock]\n"
+"# ОÑтаток - 1.5\n"
+"var remainder = fmod(7, 5.5)\n"
+"[/codeblock]\n"
+"Ð”Ð»Ñ Ð¾Ð¿ÐµÑ€Ð°Ñ†Ð¸Ð¸ целочиÑленного оÑтатка, иÑпользуйте оператор %."
-#: modules/gdscript/doc_classes/@GDScript.xml:367
+#: modules/gdscript/doc_classes/@GDScript.xml:368
msgid ""
"Returns the floating-point modulus of [code]a/b[/code] that wraps equally in "
"positive and negative.\n"
@@ -354,7 +521,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:398
+#: modules/gdscript/doc_classes/@GDScript.xml:399
msgid ""
"Returns a reference to the specified function [code]funcname[/code] in the "
"[code]instance[/code] node. As functions aren't first-class objects in "
@@ -368,8 +535,19 @@ msgid ""
"print(a.call_func()) # Prints bar\n"
"[/codeblock]"
msgstr ""
+"Возвращает ÑÑылку на определенную функцию [code]funcname[/code] в узле "
+"[code]instance[/code]. Так как функции не объекты первого клаÑÑа в "
+"GDScript, иÑпользуйте [code]funcref[/code] Ð´Ð»Ñ Ñ…Ñ€Ð°Ð½ÐµÐ½Ð¸Ñ [FuncRef] в "
+"переменной и вызывайте её позже.\n"
+"[codeblock]\n"
+"func foo():\n"
+" return(\"bar\")\n"
+"\n"
+"a = funcref(self, \"foo\")\n"
+"print(a.call_func()) # Печатает bar\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:412
+#: modules/gdscript/doc_classes/@GDScript.xml:413
msgid ""
"Returns an array of dictionaries representing the current call stack.\n"
"[codeblock]\n"
@@ -388,16 +566,36 @@ msgid ""
"source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n"
"[/codeblock]"
msgstr ""
+"Возвращает маÑÑив Ñловарей предÑтавлÑющих текущий ÑÑ‚Ñк вызовов.\n"
+"[codeblock]\n"
+"func _ready():\n"
+" foo()\n"
+"\n"
+"func foo():\n"
+" bar()\n"
+"\n"
+"func bar():\n"
+" print(get_stack())\n"
+"[/codeblock]\n"
+"напечатает\n"
+"[codeblock]\n"
+"[{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, "
+"source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:435
+#: modules/gdscript/doc_classes/@GDScript.xml:436
msgid ""
"Returns the integer hash of the variable passed.\n"
"[codeblock]\n"
"print(hash(\"a\")) # Prints 177670\n"
"[/codeblock]"
msgstr ""
+"Возвращает целочиÑленный Ñ…Ñш переданной переменной.\n"
+"[codeblock]\n"
+"print(hash(\"a\")) # Печатает 177670\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:447
+#: modules/gdscript/doc_classes/@GDScript.xml:448
msgid ""
"Returns the passed instance converted to a dictionary (useful for "
"serializing).\n"
@@ -414,8 +612,22 @@ msgid ""
"[, res://test.gd, bar]\n"
"[/codeblock]"
msgstr ""
+"Возвращает переданный ÑкземплÑÑ€ преобразованный в Ñловарь (полезно Ð´Ð»Ñ "
+"Ñериализации).\n"
+"[codeblock]\n"
+"var foo = \"bar\"\n"
+"func _ready():\n"
+" var d = inst2dict(self)\n"
+" print(d.keys())\n"
+" print(d.values())\n"
+"[/codeblock]\n"
+"Печатает:\n"
+"[codeblock]\n"
+"[@subpath, @path, foo]\n"
+"[, res://test.gd, bar]\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:468
+#: modules/gdscript/doc_classes/@GDScript.xml:469
msgid ""
"Returns the Object that corresponds to [code]instance_id[/code]. All Objects "
"have a unique instance ID.\n"
@@ -427,8 +639,17 @@ msgid ""
" print(inst.foo) # Prints bar\n"
"[/codeblock]"
msgstr ""
+"Возвращает Объект, который ÑоответÑтвует [code]instance_id[/code]. Ð’Ñе "
+"объекты имеют уникальный идентификатор ÑкземплÑра.\n"
+"[codeblock]\n"
+"var foo = \"bar\"\n"
+"func _ready():\n"
+" var id = get_instance_id()\n"
+" var inst = instance_from_id(id)\n"
+" print(inst.foo) # Ðапечатает bar\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:488
+#: modules/gdscript/doc_classes/@GDScript.xml:489
msgid ""
"Returns a normalized value considering the given range. This is the opposite "
"of [method lerp].\n"
@@ -441,34 +662,61 @@ msgid ""
"# `ratio` is now 0.75.\n"
"[/codeblock]"
msgstr ""
+"Возвращает нормализованное значение Ñ ÑƒÑ‡ÐµÑ‚Ð¾Ð¼ заданного диапазона. Это "
+"противоположно [method lerp].\n"
+"[codeblock]\n"
+"var middle = lerp(20, 30, 0.75)\n"
+"# `middle` ÑÐµÐ¹Ñ‡Ð°Ñ Ñ€Ð°Ð²Ð½Ð¾ 27.5.\n"
+"# Теперь мы притворÑемÑÑ, что забыли иÑходное Ñоотношение и хотим вернуть "
+"его обратно.\n"
+"var ratio = inverse_lerp(20, 30, 27.5)\n"
+"# `ratio`ÑÐµÐ¹Ñ‡Ð°Ñ Ñ€Ð°Ð²Ð½Ð¾ 0.75.\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:506
+#: modules/gdscript/doc_classes/@GDScript.xml:507
msgid ""
"Returns [code]true[/code] if [code]a[/code] and [code]b[/code] are "
-"approximately equal to each other."
+"approximately equal to each other.\n"
+"Here, approximately equal means that [code]a[/code] and [code]b[/code] are "
+"within a small internal epsilon of each other, which scales with the "
+"magnitude of the numbers.\n"
+"Infinity values of the same sign are considered equal."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:515
+#: modules/gdscript/doc_classes/@GDScript.xml:518
msgid ""
"Returns whether [code]s[/code] is an infinity value (either positive "
"infinity or negative infinity)."
msgstr ""
+"Возвращает, ÑвлÑетÑÑ Ð»Ð¸ [code]s[/code] значением беÑконечноÑти "
+"(положительной или отрицательной)."
-#: modules/gdscript/doc_classes/@GDScript.xml:524
+#: modules/gdscript/doc_classes/@GDScript.xml:527
msgid ""
"Returns whether [code]instance[/code] is a valid object (e.g. has not been "
"deleted from memory)."
msgstr ""
+"Возвращает, ÑвлÑетÑÑ Ð»Ð¸ [code]instance[/code] дейÑтвительным объектом "
+"(например, еÑли он не был удалён из памÑти)."
-#: modules/gdscript/doc_classes/@GDScript.xml:533
-msgid "Returns whether [code]s[/code] is a NaN (Not-A-Number) value."
-msgstr ""
+#: modules/gdscript/doc_classes/@GDScript.xml:536
+#, fuzzy
+msgid ""
+"Returns whether [code]s[/code] is a NaN (\"Not a Number\" or invalid) value."
+msgstr "Возвращает, ÑвлÑетÑÑ Ð»Ð¸ [code]s[/code] значением NaN (не чиÑло)."
-#: modules/gdscript/doc_classes/@GDScript.xml:542
-msgid "Returns [code]true[/code] if [code]s[/code] is zero or almost zero."
+#: modules/gdscript/doc_classes/@GDScript.xml:545
+#, fuzzy
+msgid ""
+"Returns [code]true[/code] if [code]s[/code] is zero or almost zero.\n"
+"This method is faster than using [method is_equal_approx] with one value as "
+"zero."
msgstr ""
+"Возвращает [code]true[/code] еÑли Ñтот вектор и [code]v[/code] "
+"приблизительно равны, запуÑÐºÐ°Ñ [method @GDScript.is_equal_approx] Ð´Ð»Ñ "
+"каждого компонента."
-#: modules/gdscript/doc_classes/@GDScript.xml:551
+#: modules/gdscript/doc_classes/@GDScript.xml:555
msgid ""
"Returns length of Variant [code]var[/code]. Length is the character count of "
"String, element count of Array, size of Dictionary, etc.\n"
@@ -478,8 +726,16 @@ msgid ""
"len(a) # Returns 4\n"
"[/codeblock]"
msgstr ""
+"Возвращает длину переменной [code]var[/code]. Длина - Ñто количеÑтво "
+"Ñимволов в Ñтроке, количеÑтво Ñлементов в маÑÑиве, размер ÑÐ»Ð¾Ð²Ð°Ñ€Ñ Ð¸ Ñ‚.д.\n"
+"[b]Примечание:[/b] Генерирует фатальную ошибку, еÑли Ð¿ÐµÑ€ÐµÐ¼ÐµÐ½Ð½Ð°Ñ Ð½Ðµ может "
+"предоÑтавить длину.\n"
+"[codeblock]\n"
+"a = [1, 2, 3, 4]\n"
+"len(a) # Возвращает 4\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:569
+#: modules/gdscript/doc_classes/@GDScript.xml:573
msgid ""
"Linearly interpolates between two values by a normalized value. This is the "
"opposite of [method inverse_lerp].\n"
@@ -493,8 +749,20 @@ msgid ""
"lerp(Vector2(1, 5), Vector2(3, 2), 0.5) # Returns Vector2(2, 3.5)\n"
"[/codeblock]"
msgstr ""
+"Ð›Ð¸Ð½ÐµÐ¹Ð½Ð°Ñ Ð¸Ð½Ñ‚ÐµÑ€Ð¿Ð¾Ð»ÑÑ†Ð¸Ñ Ð¼ÐµÐ¶Ð´Ñƒ Ð´Ð²ÑƒÐ¼Ñ Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñми по нормализованному значению. "
+"Это противоположно [method inverse_lerp].\n"
+"ЕÑли аргументы [code]от[/code] и [code]до[/code] имеют тип [int] или "
+"[float], возвращаемое значение будет [float].\n"
+"ЕÑли оба Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð¸Ð¼ÐµÑŽÑ‚ одинаковый векторный тип ([Vector2], [Vector3] или "
+"[Color]), возвращаемое значение будет одного типа ([code]lerp[/code], затем "
+"вызываетÑÑ Ð²ÐµÐºÑ‚Ð¾Ñ€Ð½Ñ‹Ð¹ тип [code]lerp[/code]).\n"
+"[codeblock]\n"
+"lerp(0, 4, 0.75) # Возвращает 3.0, формула: (0-75%) + (4-75%)\n"
+"lerp(Vector2(1, 5), Vector2(3, 2), 0.5) # Возвращает Vector2(2, 3.5), "
+"формула: ((1-50%)+(3-50%)), ((5-50%)+(2-50%))\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:588
+#: modules/gdscript/doc_classes/@GDScript.xml:592
msgid ""
"Linearly interpolates between two angles (in radians) by a normalized "
"value.\n"
@@ -510,8 +778,21 @@ msgid ""
" elapsed += delta\n"
"[/codeblock]"
msgstr ""
+"Ð›Ð¸Ð½ÐµÐ¹Ð½Ð°Ñ Ð¸Ð½Ñ‚ÐµÑ€Ð¿Ð¾Ð»ÑÑ†Ð¸Ñ Ð¼ÐµÐ¶Ð´Ñƒ Ð´Ð²ÑƒÐ¼Ñ ÑƒÐ³Ð»Ð°Ð¼Ð¸ (в радианах) по нормализованному "
+"значению.\n"
+"Ðналогично [method lerp], но корректно интерполируетÑÑ, когда углы "
+"охватывают [constant @GDScript.TAU].\n"
+"[codeblock]\n"
+"extends Sprite\n"
+"var elapsed = 0.0\n"
+"func _process(delta):\n"
+" var min_angle = deg2rad(0.0)\n"
+" var max_angle = deg2rad(90.0)\n"
+" rotation = lerp_angle(min_angle, max_angle, elapsed)\n"
+" elapsed += delta\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:607
+#: modules/gdscript/doc_classes/@GDScript.xml:611
msgid ""
"Converts from linear energy to decibels (audio). This can be used to "
"implement volume sliders that behave as expected (since volume isn't "
@@ -526,21 +807,53 @@ msgid ""
"linear2db($Slider.value))\n"
"[/codeblock]"
msgstr ""
+"Преобразует из линейной Ñнергии в децибелы (аудио). Это может быть "
+"иÑпользовано Ð´Ð»Ñ Ñ€ÐµÐ°Ð»Ð¸Ð·Ð°Ñ†Ð¸Ð¸ ползунков громкоÑти, которые ведут ÑÐµÐ±Ñ "
+"предÑказуемо (поÑкольку громкоÑÑ‚ÑŒ не линейнаÑ). Пример:\n"
+"[codeblock]\n"
+"# \"Slider\" отноÑитÑÑ Ðº узлу, который наÑледует Range, такой как HSlider "
+"или VSlider.\n"
+"# Его диапазон должен быть от 0 до 1.\n"
+"# Измените Ð¸Ð¼Ñ ÑˆÐ¸Ð½Ñ‹, еÑли вы хотите изменить громкоÑÑ‚ÑŒ только определенной "
+"шины.\n"
+"AudioServer.set_bus_volume_db(AudioServer.get_bus_index(\"Master\"), "
+"linear2db($Slider.value))\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:622
+#: modules/gdscript/doc_classes/@GDScript.xml:626
+#, fuzzy
msgid ""
-"Loads a resource from the filesystem located at [code]path[/code].\n"
+"Loads a resource from the filesystem located at [code]path[/code]. The "
+"resource is loaded on the method call (unless it's referenced already "
+"elsewhere, e.g. in another script or in the scene), which might cause slight "
+"delay, especially when loading scenes. To avoid unnecessary delays when "
+"loading something multiple times, either store the resource in a variable or "
+"use [method preload].\n"
"[b]Note:[/b] Resource paths can be obtained by right-clicking on a resource "
-"in the FileSystem dock and choosing [b]Copy Path[/b].\n"
+"in the FileSystem dock and choosing \"Copy Path\" or by dragging the file "
+"from the FileSystem dock into the script.\n"
"[codeblock]\n"
-"# Load a scene called main located in the root of the project directory.\n"
-"var main = load(\"res://main.tscn\")\n"
+"# Load a scene called main located in the root of the project directory and "
+"cache it in a variable.\n"
+"var main = load(\"res://main.tscn\") # main will contain a PackedScene "
+"resource.\n"
"[/codeblock]\n"
"[b]Important:[/b] The path must be absolute, a local path will just return "
"[code]null[/code]."
msgstr ""
+"Загружает реÑÑƒÑ€Ñ Ð¸Ð· файловой ÑиÑтемы, раÑположенной по адреÑу [code]path[/"
+"code].\n"
+"[b]Примечание:[/b] Пути к реÑурÑам можно получить, щелкнув правой кнопкой "
+"мыши в панели FileSystem и выбрав [b]Копировать путь[/b].\n"
+"[codeblock]\n"
+"# Загружаем Ñцену Ñ Ð¸Ð¼ÐµÐ½ÐµÐ¼ main, раÑположенную в корне каталога проекта.\n"
+"var main = load(\"res://main.tscn\")\n"
+"[/codeblock]\n"
+"[b]Важно:[/b] Путь должен быть абÑолютным, локальный путь проÑто вернет "
+"[code]null[/code]."
-#: modules/gdscript/doc_classes/@GDScript.xml:637
+#: modules/gdscript/doc_classes/@GDScript.xml:641
+#, fuzzy
msgid ""
"Natural logarithm. The amount of time needed to reach a certain level of "
"continuous growth.\n"
@@ -548,10 +861,19 @@ msgid ""
"calculators, which uses a base 10 logarithm.\n"
"[codeblock]\n"
"log(10) # Returns 2.302585\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] The logarithm of [code]0[/code] returns [code]-inf[/code], "
+"while negative values return [code]-nan[/code]."
msgstr ""
+"Ðатуральный логарифм. КоличеÑтво времени, необходимое Ð´Ð»Ñ Ð´Ð¾ÑÑ‚Ð¸Ð¶ÐµÐ½Ð¸Ñ "
+"определенного ÑƒÑ€Ð¾Ð²Ð½Ñ Ð½ÐµÐ¿Ñ€ÐµÑ€Ñ‹Ð²Ð½Ð¾Ð³Ð¾ роÑта.\n"
+"[b]Примечание:[/b] Это не то же Ñамое, что Ñ„ÑƒÐ½ÐºÑ†Ð¸Ñ \"log\" в большинÑтве "
+"калькулÑторов, ÐºÐ¾Ñ‚Ð¾Ñ€Ð°Ñ Ð¸Ñпользует логарифм Ñ Ð¾Ñнованием 10.\n"
+"[codeblock]\n"
+"log(10) # Возвращает 2.302585\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:652
+#: modules/gdscript/doc_classes/@GDScript.xml:657
msgid ""
"Returns the maximum of two values.\n"
"[codeblock]\n"
@@ -559,8 +881,13 @@ msgid ""
"max(-3.99, -4) # Returns -3.99\n"
"[/codeblock]"
msgstr ""
+"Возвращает макÑимальное из двух значений.\n"
+"[codeblock]\n"
+"max(1, 2) # Возвращает 2\n"
+"max(-3.99, -4) # Возвращает -3.99\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:667
+#: modules/gdscript/doc_classes/@GDScript.xml:672
msgid ""
"Returns the minimum of two values.\n"
"[codeblock]\n"
@@ -568,28 +895,53 @@ msgid ""
"min(-3.99, -4) # Returns -4\n"
"[/codeblock]"
msgstr ""
+"Возвращает минимальное из двух значений.\n"
+"[codeblock]\n"
+"min(1, 2) # Возвращает 1\n"
+"min(-3.99, -4) # Возвращает -4\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:684
+#: modules/gdscript/doc_classes/@GDScript.xml:689
+#, fuzzy
msgid ""
"Moves [code]from[/code] toward [code]to[/code] by the [code]delta[/code] "
"value.\n"
"Use a negative [code]delta[/code] value to move away.\n"
"[codeblock]\n"
+"move_toward(5, 10, 4) # Returns 9\n"
"move_toward(10, 5, 4) # Returns 6\n"
+"move_toward(10, 5, -1.5) # Returns 11.5\n"
"[/codeblock]"
msgstr ""
+"Перемещает [code]от[/code] в направлении [code]до[/code] на значение "
+"[code]delta[/code].\n"
+"ИÑпользуйте отрицательное значение [code]delta[/code] Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÐ¼ÐµÑ‰ÐµÐ½Ð¸Ñ "
+"вдаль.\n"
+"[codeblock]\n"
+"move_toward(10, 5, 4) # Возвращает 6\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:697
+#: modules/gdscript/doc_classes/@GDScript.xml:704
msgid ""
-"Returns the nearest larger power of 2 for integer [code]value[/code].\n"
+"Returns the nearest equal or larger power of 2 for integer [code]value[/"
+"code].\n"
+"In other words, returns the smallest value [code]a[/code] where [code]a = "
+"pow(2, n)[/code] such that [code]value <= a[/code] for some non-negative "
+"integer [code]n[/code].\n"
"[codeblock]\n"
"nearest_po2(3) # Returns 4\n"
"nearest_po2(4) # Returns 4\n"
"nearest_po2(5) # Returns 8\n"
-"[/codeblock]"
+"\n"
+"nearest_po2(0) # Returns 0 (this may not be what you expect)\n"
+"nearest_po2(-1) # Returns 0 (this may not be what you expect)\n"
+"[/codeblock]\n"
+"[b]WARNING:[/b] Due to the way it is implemented, this function returns "
+"[code]0[/code] rather than [code]1[/code] for non-positive values of "
+"[code]value[/code] (in reality, 1 is the smallest integer power of 2)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:711
+#: modules/gdscript/doc_classes/@GDScript.xml:723
msgid ""
"Returns an integer representing the Unicode code point of the given Unicode "
"character [code]char[/code].\n"
@@ -601,27 +953,45 @@ msgid ""
"This is the inverse of [method char]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:726
+#: modules/gdscript/doc_classes/@GDScript.xml:738
+#, fuzzy
msgid ""
-"Parse JSON text to a Variant (use [method typeof] to check if it is what you "
-"expect).\n"
-"Be aware that the JSON specification does not define integer or float types, "
-"but only a number type. Therefore, parsing a JSON text will convert all "
-"numerical values to [float] types.\n"
-"Note that JSON objects do not preserve key order like Godot dictionaries, "
-"thus you should not rely on keys being in a certain order if a dictionary is "
-"constructed from JSON. In contrast, JSON arrays retain the order of their "
+"Parse JSON text to a Variant. (Use [method typeof] to check if the Variant's "
+"type is what you expect.)\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, parsing a JSON text will convert "
+"all numerical values to [float] types.\n"
+"[b]Note:[/b] JSON objects do not preserve key order like Godot dictionaries, "
+"thus, you should not rely on keys being in a certain order if a dictionary "
+"is constructed from JSON. In contrast, JSON arrays retain the order of their "
"elements:\n"
"[codeblock]\n"
+"var p = JSON.parse('[\"hello\", \"world\", \"!\"]')\n"
+"if typeof(p.result) == TYPE_ARRAY:\n"
+" print(p.result[0]) # Prints \"hello\"\n"
+"else:\n"
+" push_error(\"Unexpected results.\")\n"
+"[/codeblock]\n"
+"See also [JSON] for an alternative way to parse JSON text."
+msgstr ""
+"Разбор текÑта JSON в переменную (иÑпользуйте [method typeof] Ð´Ð»Ñ Ð¿Ñ€Ð¾Ð²ÐµÑ€ÐºÐ¸ "
+"типа).\n"
+"Имейте в виду, что ÑÐ¿ÐµÑ†Ð¸Ñ„Ð¸ÐºÐ°Ñ†Ð¸Ñ JSON не определÑет целочиÑленные или "
+"плавающие типы, а только чиÑловой тип. Следовательно, анализ текÑта JSON "
+"преобразует вÑе чиÑловые Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð² типы [float].\n"
+"Обратите внимание, что объекты JSON не ÑохранÑÑŽÑ‚ порÑдок ключей, как Ñловари "
+"Godot, поÑтому вам не Ñледует полагатьÑÑ Ð½Ð° ключи в определенном порÑдке, "
+"еÑли Ñловарь поÑтроен из JSON. Ðапротив, маÑÑивы JSON ÑохранÑÑŽÑ‚ порÑдок "
+"Ñвоих Ñлементов:\n"
+"[codeblock]\n"
"p = parse_json('[\"a\", \"b\", \"c\"]')\n"
"if typeof(p) == TYPE_ARRAY:\n"
-" print(p[0]) # Prints a\n"
+" print(p[0]) # Ðапечатает a\n"
"else:\n"
" print(\"unexpected results\")\n"
"[/codeblock]"
-msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:746
+#: modules/gdscript/doc_classes/@GDScript.xml:759
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:142
msgid ""
"Converts a 2D point expressed in the polar coordinate system (a distance "
@@ -629,7 +999,7 @@ msgid ""
"cartesian coordinate system (X and Y axis)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:757
+#: modules/gdscript/doc_classes/@GDScript.xml:770
msgid ""
"Returns the integer modulus of [code]a/b[/code] that wraps equally in "
"positive and negative.\n"
@@ -654,28 +1024,59 @@ msgid ""
"4 1\n"
"[/codeblock]"
msgstr ""
+"Возвращает целочиÑленный модуль [code]a/b[/code], который одинаково "
+"переноÑитÑÑ ÐºÐ°Ðº в положительный, так и в отрицательный.\n"
+"[codeblock]\n"
+"var i = -6\n"
+"while i < 5:\n"
+" prints(i, posmod(i, 3))\n"
+" i += 1\n"
+"[/codeblock]\n"
+"Produces:\n"
+"[codeblock]\n"
+"-6 0\n"
+"-5 1\n"
+"-4 2\n"
+"-3 0\n"
+"-2 1\n"
+"-1 2\n"
+"0 0\n"
+"1 1\n"
+"2 2\n"
+"3 0\n"
+"4 1\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:788
+#: modules/gdscript/doc_classes/@GDScript.xml:801
msgid ""
"Returns the result of [code]x[/code] raised to the power of [code]y[/code].\n"
"[codeblock]\n"
"pow(2, 5) # Returns 32\n"
"[/codeblock]"
msgstr ""
+"Возвращает результат Ð²Ð¾Ð·Ð²ÐµÐ´ÐµÐ½Ð¸Ñ Ñ‡Ð¸Ñла [code]x[/code] в Ñтепени [code]y[/"
+"code].\n"
+"[codeblock]\n"
+"pow(2, 5) # Возвращает 32\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:800
+#: modules/gdscript/doc_classes/@GDScript.xml:813
msgid ""
-"Returns a resource from the filesystem that is loaded during script "
-"parsing.\n"
+"Returns a [Resource] from the filesystem located at [code]path[/code]. The "
+"resource is loaded during script parsing, i.e. is loaded with the script and "
+"[method preload] effectively acts as a reference to that resource. Note that "
+"the method requires a constant path. If you want to load a resource from a "
+"dynamic/variable path, use [method load].\n"
"[b]Note:[/b] Resource paths can be obtained by right clicking on a resource "
-"in the Assets Panel and choosing \"Copy Path\".\n"
+"in the Assets Panel and choosing \"Copy Path\" or by dragging the file from "
+"the FileSystem dock into the script.\n"
"[codeblock]\n"
-"# Load a scene called main located in the root of the project directory.\n"
-"var main = preload(\"res://main.tscn\")\n"
+"# Instance a scene.\n"
+"var diamond = preload(\"res://diamond.tscn\").instance()\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:812
+#: modules/gdscript/doc_classes/@GDScript.xml:825
msgid ""
"Converts one or more arguments to strings in the best way possible and "
"prints them to the console.\n"
@@ -684,12 +1085,18 @@ msgid ""
"print(\"a\", \"b\", a) # Prints ab[1, 2, 3]\n"
"[/codeblock]"
msgstr ""
+"Преобразует один или более аргумент в Ñтроки наилучшим возможным ÑпоÑобом и "
+"печатает их в конÑоль.\n"
+"[codeblock]\n"
+"a = [1, 2, 3]\n"
+"print(\"a\", \"b\", a) # Печатает ab[1, 2, 3]\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:823
+#: modules/gdscript/doc_classes/@GDScript.xml:836
msgid "Like [method print], but prints only when used in debug mode."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:830
+#: modules/gdscript/doc_classes/@GDScript.xml:843
msgid ""
"Prints a stack track at code location, only works when running with debugger "
"turned on.\n"
@@ -699,7 +1106,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:841
+#: modules/gdscript/doc_classes/@GDScript.xml:854
msgid ""
"Prints one or more arguments to strings in the best way possible to standard "
"error line.\n"
@@ -708,7 +1115,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:851
+#: modules/gdscript/doc_classes/@GDScript.xml:864
msgid ""
"Prints one or more arguments to strings in the best way possible to console. "
"No newline is added at the end.\n"
@@ -722,7 +1129,7 @@ msgid ""
"method, such as [method print]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:864
+#: modules/gdscript/doc_classes/@GDScript.xml:877
msgid ""
"Prints one or more arguments to the console with a space between each "
"argument.\n"
@@ -731,7 +1138,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:874
+#: modules/gdscript/doc_classes/@GDScript.xml:887
msgid ""
"Prints one or more arguments to the console with a tab between each "
"argument.\n"
@@ -740,7 +1147,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:886
+#: modules/gdscript/doc_classes/@GDScript.xml:899
msgid ""
"Pushes an error message to Godot's built-in debugger and to the OS "
"terminal.\n"
@@ -750,7 +1157,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:898
+#: modules/gdscript/doc_classes/@GDScript.xml:911
msgid ""
"Pushes a warning message to Godot's built-in debugger and to the OS "
"terminal.\n"
@@ -760,15 +1167,15 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:910
+#: modules/gdscript/doc_classes/@GDScript.xml:923
msgid ""
-"Converts from radians to degrees.\n"
+"Converts an angle expressed in radians to degrees.\n"
"[codeblock]\n"
"rad2deg(0.523599) # Returns 30\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:924
+#: modules/gdscript/doc_classes/@GDScript.xml:937
msgid ""
"Random range, any floating point value between [code]from[/code] and "
"[code]to[/code].\n"
@@ -777,7 +1184,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:936
+#: modules/gdscript/doc_classes/@GDScript.xml:949
msgid ""
"Random from seed: pass a [code]seed[/code], and an array with both number "
"and new seed is returned. \"Seed\" here refers to the internal state of the "
@@ -785,7 +1192,7 @@ msgid ""
"implementation is 64 bits."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:943
+#: modules/gdscript/doc_classes/@GDScript.xml:956
msgid ""
"Returns a random floating point value on the interval [code][0, 1][/code].\n"
"[codeblock]\n"
@@ -793,7 +1200,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:953
+#: modules/gdscript/doc_classes/@GDScript.xml:966
msgid ""
"Returns a random unsigned 32 bit integer. Use remainder to obtain a random "
"value in the interval [code][0, N - 1][/code] (where N is smaller than "
@@ -806,7 +1213,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:966
+#: modules/gdscript/doc_classes/@GDScript.xml:979
msgid ""
"Randomizes the seed (or the internal state) of the random number generator. "
"Current implementation reseeds using a number based on time.\n"
@@ -816,7 +1223,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:977
+#: modules/gdscript/doc_classes/@GDScript.xml:990
msgid ""
"Returns an array with the given range. Range can be 1 argument N (0 to N-1), "
"two arguments (initial, final-1) or three arguments (initial, final-1, "
@@ -846,7 +1253,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1017
+#: modules/gdscript/doc_classes/@GDScript.xml:1030
msgid ""
"Maps a [code]value[/code] from range [code][istart, istop][/code] to [code]"
"[ostart, ostop][/code].\n"
@@ -855,16 +1262,22 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1029
+#: modules/gdscript/doc_classes/@GDScript.xml:1042
+#, fuzzy
msgid ""
-"Returns the integral value that is nearest to [code]s[/code], with halfway "
-"cases rounded away from zero.\n"
+"Rounds [code]s[/code] to the nearest whole number, with halfway cases "
+"rounded away from zero.\n"
"[codeblock]\n"
"round(2.6) # Returns 3\n"
"[/codeblock]"
msgstr ""
+"Возвращает результат Ð²Ð¾Ð·Ð²ÐµÐ´ÐµÐ½Ð¸Ñ Ñ‡Ð¸Ñла [code]x[/code] в Ñтепени [code]y[/"
+"code].\n"
+"[codeblock]\n"
+"pow(2, 5) # Возвращает 32\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:1041
+#: modules/gdscript/doc_classes/@GDScript.xml:1054
msgid ""
"Sets seed for the random number generator.\n"
"[codeblock]\n"
@@ -873,7 +1286,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1054
+#: modules/gdscript/doc_classes/@GDScript.xml:1067
msgid ""
"Returns the sign of [code]s[/code]: -1 or 1. Returns 0 if [code]s[/code] is "
"0.\n"
@@ -884,7 +1297,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1068
+#: modules/gdscript/doc_classes/@GDScript.xml:1081
msgid ""
"Returns the sine of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -892,7 +1305,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1080
+#: modules/gdscript/doc_classes/@GDScript.xml:1093
msgid ""
"Returns the hyperbolic sine of [code]s[/code].\n"
"[codeblock]\n"
@@ -901,27 +1314,37 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1097
+#: modules/gdscript/doc_classes/@GDScript.xml:1110
msgid ""
-"Returns a number smoothly interpolated between the [code]from[/code] and "
-"[code]to[/code], based on the [code]weight[/code]. Similar to [method lerp], "
-"but interpolates faster at the beginning and slower at the end.\n"
+"Returns the result of smoothly interpolating the value of [code]s[/code] "
+"between [code]0[/code] and [code]1[/code], based on the where [code]s[/code] "
+"lies with respect to the edges [code]from[/code] and [code]to[/code].\n"
+"The return value is [code]0[/code] if [code]s <= from[/code], and [code]1[/"
+"code] if [code]s >= to[/code]. If [code]s[/code] lies between [code]from[/"
+"code] and [code]to[/code], the returned value follows an S-shaped curve that "
+"maps [code]s[/code] between [code]0[/code] and [code]1[/code].\n"
+"This S-shaped curve is the cubic Hermite interpolator, given by [code]f(s) = "
+"3*s^2 - 2*s^3[/code].\n"
"[codeblock]\n"
-"smoothstep(0, 2, 0.5) # Returns 0.15\n"
+"smoothstep(0, 2, -5.0) # Returns 0.0\n"
+"smoothstep(0, 2, 0.5) # Returns 0.15625\n"
"smoothstep(0, 2, 1.0) # Returns 0.5\n"
"smoothstep(0, 2, 2.0) # Returns 1.0\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1111
+#: modules/gdscript/doc_classes/@GDScript.xml:1127
msgid ""
-"Returns the square root of [code]s[/code].\n"
+"Returns the square root of [code]s[/code], where [code]s[/code] is a non-"
+"negative number.\n"
"[codeblock]\n"
"sqrt(9) # Returns 3\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b]Negative values of [code]s[/code] return NaN. If you need "
+"negative inputs, use [code]System.Numerics.Complex[/code] in C#."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1123
+#: modules/gdscript/doc_classes/@GDScript.xml:1140
msgid ""
"Returns the position of the first non-zero digit, after the decimal point. "
"Note that the maximum return value is 10, which is a design decision in the "
@@ -936,7 +1359,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1142
+#: modules/gdscript/doc_classes/@GDScript.xml:1159
msgid ""
"Snaps float value [code]s[/code] to a given [code]step[/code]. This can also "
"be used to round a floating point number to an arbitrary number of "
@@ -947,7 +1370,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1153
+#: modules/gdscript/doc_classes/@GDScript.xml:1170
msgid ""
"Converts one or more arguments to string in the best way possible.\n"
"[codeblock]\n"
@@ -958,7 +1381,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1168
+#: modules/gdscript/doc_classes/@GDScript.xml:1185
msgid ""
"Converts a formatted string that was returned by [method var2str] to the "
"original value.\n"
@@ -969,7 +1392,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1182
+#: modules/gdscript/doc_classes/@GDScript.xml:1199
msgid ""
"Returns the tangent of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -977,7 +1400,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1194
+#: modules/gdscript/doc_classes/@GDScript.xml:1211
msgid ""
"Returns the hyperbolic tangent of [code]s[/code].\n"
"[codeblock]\n"
@@ -986,18 +1409,25 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1207
+#: modules/gdscript/doc_classes/@GDScript.xml:1224
msgid ""
-"Converts a Variant [code]var[/code] to JSON text and return the result. "
+"Converts a [Variant] [code]var[/code] to JSON text and return the result. "
"Useful for serializing data to store or send over the network.\n"
"[codeblock]\n"
+"# Both numbers below are integers.\n"
"a = { \"a\": 1, \"b\": 2 }\n"
"b = to_json(a)\n"
"print(b) # {\"a\":1, \"b\":2}\n"
-"[/codeblock]"
+"# Both numbers above are floats, even if they display without any decimal "
+"places.\n"
+"[/codeblock]\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, converting a [Variant] to JSON "
+"text will convert all numerical values to [float] types.\n"
+"See also [JSON] for an alternative way to convert a [Variant] to JSON text."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1221
+#: modules/gdscript/doc_classes/@GDScript.xml:1242
msgid ""
"Returns whether the given class exists in [ClassDB].\n"
"[codeblock]\n"
@@ -1006,7 +1436,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1234
+#: modules/gdscript/doc_classes/@GDScript.xml:1255
msgid ""
"Returns the internal type of the given Variant object, using the [enum "
"Variant.Type] values.\n"
@@ -1019,7 +1449,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1250
+#: modules/gdscript/doc_classes/@GDScript.xml:1271
msgid ""
"Checks that [code]json[/code] is valid JSON data. Returns an empty string if "
"valid, or an error message otherwise.\n"
@@ -1027,20 +1457,20 @@ msgid ""
"j = to_json([1, 2, 3])\n"
"v = validate_json(j)\n"
"if not v:\n"
-" print(\"valid\")\n"
+" print(\"Valid JSON.\")\n"
"else:\n"
-" prints(\"invalid\", v)\n"
+" push_error(\"Invalid JSON: \" + v)\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1269
+#: modules/gdscript/doc_classes/@GDScript.xml:1290
msgid ""
"Encodes a variable value to a byte array. When [code]full_objects[/code] is "
"[code]true[/code] encoding objects is allowed (and can potentially include "
"code)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1278
+#: modules/gdscript/doc_classes/@GDScript.xml:1299
msgid ""
"Converts a Variant [code]var[/code] to a formatted string that can later be "
"parsed using [method str2var].\n"
@@ -1057,7 +1487,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1298
+#: modules/gdscript/doc_classes/@GDScript.xml:1319
msgid ""
"Returns a weak reference to an object.\n"
"A weak reference to an object is not enough to keep the object alive: when "
@@ -1067,135 +1497,67 @@ msgid ""
"reference may return the object even if there are no strong references to it."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1312
+#: modules/gdscript/doc_classes/@GDScript.xml:1333
msgid ""
"Wraps float [code]value[/code] between [code]min[/code] and [code]max[/"
"code].\n"
"Usable for creating loop-alike behavior or infinite surfaces.\n"
"[codeblock]\n"
-"# a is 0.5\n"
-"a = wrapf(10.5, 0.0, 10.0)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# a is 9.5\n"
-"a = wrapf(-0.5, 0.0, 10.0)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# Infinite loop between 0.0 and 0.99\n"
-"f = wrapf(f + 0.1, 0.0, 1.0)\n"
+"# Infinite loop between 5.0 and 9.9\n"
+"value = wrapf(value + 0.1, 5.0, 10.0)\n"
"[/codeblock]\n"
"[codeblock]\n"
"# Infinite rotation (in radians)\n"
"angle = wrapf(angle + 0.1, 0.0, TAU)\n"
"[/codeblock]\n"
-"[b]Note:[/b] If you just want to wrap between 0.0 and [code]n[/code] (where "
-"[code]n[/code] is a positive floating-point value), it is better for "
-"performance to use the [method fmod] method like [code]fmod(number, n)[/"
-"code].\n"
-"[code]wrapf[/code] is more flexible than using the [method fmod] approach by "
-"giving the user a simple control over the minimum value. It also fully "
-"supports negative numbers, e.g.\n"
"[codeblock]\n"
"# Infinite rotation (in radians)\n"
"angle = wrapf(angle + 0.1, -PI, PI)\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] If [code]min[/code] is [code]0[/code], this is equivalent to "
+"[method fposmod], so prefer using that instead.\n"
+"[code]wrapf[/code] is more flexible than using the [method fposmod] approach "
+"by giving the user control over the minimum value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1348
+#: modules/gdscript/doc_classes/@GDScript.xml:1361
msgid ""
"Wraps integer [code]value[/code] between [code]min[/code] and [code]max[/"
"code].\n"
"Usable for creating loop-alike behavior or infinite surfaces.\n"
"[codeblock]\n"
-"# a is 0\n"
-"a = wrapi(10, 0, 10)\n"
+"# Infinite loop between 5 and 9\n"
+"frame = wrapi(frame + 1, 5, 10)\n"
"[/codeblock]\n"
"[codeblock]\n"
-"# a is 9\n"
-"a = wrapi(-1, 0, 10)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# Infinite loop between 0 and 9\n"
-"frame = wrapi(frame + 1, 0, 10)\n"
-"[/codeblock]\n"
-"[b]Note:[/b] If you just want to wrap between 0 and [code]n[/code] (where "
-"[code]n[/code] is a positive integer value), it is better for performance to "
-"use the modulo operator like [code]number % n[/code].\n"
-"[code]wrapi[/code] is more flexible than using the modulo approach by giving "
-"the user a simple control over the minimum value. It also fully supports "
-"negative numbers, e.g.\n"
-"[codeblock]\n"
"# result is -2\n"
"var result = wrapi(-6, -5, -1)\n"
-"[/codeblock]"
-msgstr ""
-
-#: modules/gdscript/doc_classes/@GDScript.xml:1378
-msgid ""
-"Stops the function execution and returns the current suspended state to the "
-"calling function.\n"
-"From the caller, call [method GDScriptFunctionState.resume] on the state to "
-"resume execution. This invalidates the state. Within the resumed function, "
-"[code]yield()[/code] returns whatever was passed to the [code]resume()[/"
-"code] function call.\n"
-"If passed an object and a signal, the execution is resumed when the object "
-"emits the given signal. In this case, [code]yield()[/code] returns the "
-"argument passed to [code]emit_signal()[/code] if the signal takes only one "
-"argument, or an array containing all the arguments passed to "
-"[code]emit_signal()[/code] if the signal takes multiple arguments.\n"
-"You can also use [code]yield[/code] to wait for a function to finish:\n"
-"[codeblock]\n"
-"func _ready():\n"
-" yield(countdown(), \"completed\") # waiting for the countdown() function "
-"to complete\n"
-" print('Ready')\n"
-"\n"
-"func countdown():\n"
-" yield(get_tree(), \"idle_frame\") # returns a GDScriptFunctionState "
-"object to _ready()\n"
-" print(3)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-" print(2)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-" print(1)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-"\n"
-"# prints:\n"
-"# 3\n"
-"# 2\n"
-"# 1\n"
-"# Ready\n"
"[/codeblock]\n"
-"When yielding on a function, the [code]completed[/code] signal will be "
-"emitted automatically when the function returns. It can, therefore, be used "
-"as the [code]signal[/code] parameter of the [code]yield[/code] method to "
-"resume.\n"
-"In order to yield on a function, the resulting function should also return a "
-"[code]GDScriptFunctionState[/code]. Notice [code]yield(get_tree(), "
-"\"idle_frame\")[/code] from the above example."
+"[b]Note:[/b] If [code]min[/code] is [code]0[/code], this is equivalent to "
+"[method posmod], so prefer using that instead.\n"
+"[code]wrapi[/code] is more flexible than using the [method posmod] approach "
+"by giving the user control over the minimum value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1409
+#: modules/gdscript/doc_classes/@GDScript.xml:1378
msgid ""
"Constant that represents how many times the diameter of a circle fits around "
-"its perimeter."
+"its perimeter. This is equivalent to [code]TAU / 2[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1412
-msgid "The circle constant, the circumference of the unit circle."
+#: modules/gdscript/doc_classes/@GDScript.xml:1381
+msgid "The circle constant, the circumference of the unit circle in radians."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1415
-msgid "A positive infinity. (For negative infinity, use -INF)."
+#: modules/gdscript/doc_classes/@GDScript.xml:1384
+msgid "Positive infinity. For negative infinity, use -INF."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1418
+#: modules/gdscript/doc_classes/@GDScript.xml:1387
msgid ""
-"Macro constant that expands to an expression of type float that represents a "
-"NaN.\n"
-"The NaN values are used to identify undefined or non-representable values "
-"for floating-point elements, such as the square root of negative numbers or "
-"the result of 0/0."
+"\"Not a Number\", an invalid value. [code]NaN[/code] has special properties, "
+"including that it is not equal to itself. It is output by some invalid "
+"operations, such as dividing zero by zero."
msgstr ""
#: doc/classes/@GlobalScope.xml:4
@@ -3431,130 +3793,141 @@ msgid ""
msgstr ""
#: doc/classes/AABB.xml:10 doc/classes/Plane.xml:10 doc/classes/Rect2.xml:11
-#: doc/classes/Rect2i.xml:11 doc/classes/Transform.xml:10
+#: doc/classes/Rect2i.xml:11 doc/classes/Transform.xml:11
#: doc/classes/Vector2.xml:12 doc/classes/Vector2i.xml:12
#: doc/classes/Vector3.xml:12 doc/classes/Vector3i.xml:12
msgid "https://docs.godotengine.org/en/latest/tutorials/math/index.html"
msgstr ""
#: doc/classes/AABB.xml:21
-msgid "Optional constructor, accepts position and size."
+msgid "Constructs an [AABB] from a position and size."
msgstr ""
-#: doc/classes/AABB.xml:30
+#: doc/classes/AABB.xml:28
+msgid ""
+"Returns an AABB with equivalent position and size, modified so that the most-"
+"negative corner is the origin and the size is positive."
+msgstr ""
+
+#: doc/classes/AABB.xml:37
msgid ""
"Returns [code]true[/code] if this [AABB] completely encloses another one."
msgstr ""
-#: doc/classes/AABB.xml:39
+#: doc/classes/AABB.xml:46
msgid "Returns this [AABB] expanded to include a given point."
msgstr ""
-#: doc/classes/AABB.xml:46
+#: doc/classes/AABB.xml:53
msgid "Returns the volume of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:55
+#: doc/classes/AABB.xml:62
msgid "Gets the position of the 8 endpoints of the [AABB] in space."
msgstr ""
-#: doc/classes/AABB.xml:62
+#: doc/classes/AABB.xml:69
msgid "Returns the normalized longest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:69
+#: doc/classes/AABB.xml:76
msgid ""
"Returns the index of the longest axis of the [AABB] (according to "
"[Vector3]'s [code]AXIS_*[/code] constants)."
msgstr ""
-#: doc/classes/AABB.xml:76
+#: doc/classes/AABB.xml:83
msgid "Returns the scalar length of the longest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:83
+#: doc/classes/AABB.xml:90
msgid "Returns the normalized shortest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:90
+#: doc/classes/AABB.xml:97
msgid ""
"Returns the index of the shortest axis of the [AABB] (according to "
"[Vector3]::AXIS* enum)."
msgstr ""
-#: doc/classes/AABB.xml:97
+#: doc/classes/AABB.xml:104
msgid "Returns the scalar length of the shortest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:106
+#: doc/classes/AABB.xml:113
msgid ""
"Returns the support point in a given direction. This is useful for collision "
"detection algorithms."
msgstr ""
-#: doc/classes/AABB.xml:115
+#: doc/classes/AABB.xml:122
msgid ""
"Returns a copy of the [AABB] grown a given amount of units towards all the "
"sides."
msgstr ""
-#: doc/classes/AABB.xml:122
+#: doc/classes/AABB.xml:129
msgid "Returns [code]true[/code] if the [AABB] is flat or empty."
msgstr ""
-#: doc/classes/AABB.xml:129
+#: doc/classes/AABB.xml:136
msgid "Returns [code]true[/code] if the [AABB] is empty."
msgstr ""
-#: doc/classes/AABB.xml:138
+#: doc/classes/AABB.xml:145
msgid "Returns [code]true[/code] if the [AABB] contains a point."
msgstr ""
-#: doc/classes/AABB.xml:147
+#: doc/classes/AABB.xml:154
msgid ""
"Returns the intersection between two [AABB]. An empty AABB (size 0,0,0) is "
"returned on failure."
msgstr ""
-#: doc/classes/AABB.xml:156
+#: doc/classes/AABB.xml:163
msgid "Returns [code]true[/code] if the [AABB] overlaps with another."
msgstr ""
-#: doc/classes/AABB.xml:165
+#: doc/classes/AABB.xml:172
msgid "Returns [code]true[/code] if the [AABB] is on both sides of a plane."
msgstr ""
-#: doc/classes/AABB.xml:176
+#: doc/classes/AABB.xml:183
msgid ""
"Returns [code]true[/code] if the [AABB] intersects the line segment between "
"[code]from[/code] and [code]to[/code]."
msgstr ""
-#: doc/classes/AABB.xml:185
+#: doc/classes/AABB.xml:192
msgid ""
"Returns [code]true[/code] if this [AABB] and [code]aabb[/code] are "
"approximately equal, by calling [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/AABB.xml:194
+#: doc/classes/AABB.xml:201
msgid ""
"Returns a larger [AABB] that contains both this [AABB] and [code]with[/code]."
msgstr ""
-#: doc/classes/AABB.xml:200
+#: doc/classes/AABB.xml:207 doc/classes/Rect2.xml:174
+#: doc/classes/Rect2i.xml:163
msgid ""
-"Ending corner. This is calculated as [code]position + size[/code]. Changing "
-"this property changes [member size] accordingly."
+"Ending corner. This is calculated as [code]position + size[/code]. Setting "
+"this value will change the size."
msgstr ""
-#: doc/classes/AABB.xml:203
-msgid "Beginning corner."
+#: doc/classes/AABB.xml:210 doc/classes/Rect2.xml:177
+#: doc/classes/Rect2i.xml:166
+msgid "Beginning corner. Typically has values lower than [member end]."
msgstr ""
-#: doc/classes/AABB.xml:206 doc/classes/Rect2.xml:180
+#: doc/classes/AABB.xml:213 doc/classes/Rect2.xml:180
#: doc/classes/Rect2i.xml:169
-msgid "Size from position to end."
+msgid ""
+"Size from [member position] to [member end]. Typically all components are "
+"positive.\n"
+"If the size is negative, you can use [method abs] to fix it."
msgstr ""
#: doc/classes/AcceptDialog.xml:4
@@ -3618,11 +3991,11 @@ msgstr ""
msgid "The text displayed by the dialog."
msgstr ""
-#: doc/classes/AcceptDialog.xml:82
+#: doc/classes/AcceptDialog.xml:83
msgid "Emitted when the dialog is accepted, i.e. the OK button is pressed."
msgstr ""
-#: doc/classes/AcceptDialog.xml:89
+#: doc/classes/AcceptDialog.xml:90
msgid "Emitted when a custom button is pressed. See [method add_button]."
msgstr ""
@@ -3675,7 +4048,7 @@ msgstr ""
#: doc/classes/AESContext.xml:54
msgid ""
"Get the current IV state for this context (IV gets updated when calling "
-"[method update]). You normally don't need this funciton.\n"
+"[method update]). You normally don't need this function.\n"
"Note: This function only makes sense when the context is started with "
"[constant MODE_CBC_ENCRYPT] or [constant MODE_CBC_DECRYPT]."
msgstr ""
@@ -3753,12 +4126,14 @@ msgid "If [code]true[/code], texture will be centered."
msgstr ""
#: doc/classes/AnimatedSprite2D.xml:46 doc/classes/Sprite2D.xml:41
-#: doc/classes/SpriteBase3D.xml:61 doc/classes/TextureRect.xml:18
+#: doc/classes/SpriteBase3D.xml:61 doc/classes/TextureButton.xml:19
+#: doc/classes/TextureRect.xml:18
msgid "If [code]true[/code], texture is flipped horizontally."
msgstr ""
#: doc/classes/AnimatedSprite2D.xml:49 doc/classes/Sprite2D.xml:44
-#: doc/classes/SpriteBase3D.xml:64 doc/classes/TextureRect.xml:21
+#: doc/classes/SpriteBase3D.xml:64 doc/classes/TextureButton.xml:22
+#: doc/classes/TextureRect.xml:21
msgid "If [code]true[/code], texture is flipped vertically."
msgstr ""
@@ -3925,10 +4300,10 @@ msgid ""
"[codeblock]\n"
"# This creates an animation that makes the node \"Enemy\" move to the right "
"by\n"
-"# 100 pixels in 1 second.\n"
+"# 100 pixels in 0.5 seconds.\n"
"var animation = Animation.new()\n"
"var track_index = animation.add_track(Animation.TYPE_VALUE)\n"
-"animation.track_set_path(track_index, \"Enemy:position.x\")\n"
+"animation.track_set_path(track_index, \"Enemy:position:x\")\n"
"animation.track_insert_key(track_index, 0.0, 0)\n"
"animation.track_insert_key(track_index, 0.5, 100)\n"
"[/codeblock]\n"
@@ -5897,7 +6272,7 @@ msgstr ""
#: doc/classes/Array.xml:4
msgid "Generic array datatype."
-msgstr ""
+msgstr "УниверÑальный тип маÑÑива."
#: doc/classes/Array.xml:7
msgid ""
@@ -5924,42 +6299,63 @@ msgid ""
"array which can be modified independently of the original array, use [method "
"duplicate]."
msgstr ""
+"УниверÑальный маÑÑив, который может Ñодержать множеÑтво Ñлементов любого "
+"типа, Ñ Ð´Ð¾Ñтупом по чиÑловому индекÑу начинающегоÑÑ Ñ 0. Отрицательные "
+"индекÑÑ‹ могут быть иÑпользованы Ð´Ð»Ñ Ð¾Ñ‚Ñчёта Ñ ÐºÐ¾Ð½Ñ†Ð°, как и Python (-1 "
+"поÑледний Ñлемент, -2 на предпоÑледний, итд.).\n"
+"[b]Пример:[/b]\n"
+"[codeblock]\n"
+"var array = [\"Одни\", 2, 3, \"Четыре\"]\n"
+"print(array[0]) # Один.\n"
+"print(array[2]) # 3.\n"
+"print(array[-1]) # Четыре.\n"
+"array[2] = \"Three\"\n"
+"print(array[-2]) # Три.\n"
+"[/codeblock]\n"
+"МаÑÑивы могут быть объединены через оператор [code]+[/code]:\n"
+"[codeblock]\n"
+"var array1 = [\"Один\", 2]\n"
+"var array2 = [3, \"Четыре\"]\n"
+"print(array1 + array2) # [\"Один\", 2, 3, \"Четыре\"]\n"
+"[/codeblock]\n"
+"[b]Заметка:[/b] МаÑÑивы вÑегда передаютÑÑ Ð¿Ð¾ ÑÑылке. Ð”Ð»Ñ Ð¿Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð¸Ñ ÐºÐ¾Ð¿Ð¸Ð¸ "
+"незавиÑимой от начального маÑÑива иÑпользуйте [method duplicate]."
#: doc/classes/Array.xml:34
msgid "Constructs an array from a [PackedColorArray]."
-msgstr ""
+msgstr "Создаёт маÑÑив из [PackedColorArray]."
#: doc/classes/Array.xml:43
msgid "Constructs an array from a [PackedVector3Array]."
-msgstr ""
+msgstr "Создаёт маÑÑив из [PackedVector3Array]."
#: doc/classes/Array.xml:52
msgid "Constructs an array from a [PackedVector2Array]."
-msgstr ""
+msgstr "Создаёт маÑÑив из [PackedVector2Array]."
#: doc/classes/Array.xml:61
msgid "Constructs an array from a [PackedStringArray]."
-msgstr ""
+msgstr "Создаёт маÑÑив из [PackedStringArray]."
#: doc/classes/Array.xml:70
msgid "Constructs an array from a [PackedFloat64Array]."
-msgstr ""
+msgstr "Создаёт маÑÑив из [PackedFloat64Array]."
#: doc/classes/Array.xml:79
msgid "Constructs an array from a [PackedFloat32Array]."
-msgstr ""
+msgstr "Создаёт маÑÑив из [PackedFloat32Array]."
#: doc/classes/Array.xml:88
msgid "Constructs an array from a [PackedInt64Array]."
-msgstr ""
+msgstr "Создаёт маÑÑив из [PackedInt64Array]."
#: doc/classes/Array.xml:97
msgid "Constructs an array from a [PackedInt32Array]."
-msgstr ""
+msgstr "Создаёт маÑÑив из [PackedInt32Array]."
#: doc/classes/Array.xml:106
msgid "Constructs an array from a [PackedByteArray]."
-msgstr ""
+msgstr "Создаёт маÑÑив из [PackedByteArray]."
#: doc/classes/Array.xml:115 doc/classes/PackedByteArray.xml:28
#: doc/classes/PackedColorArray.xml:28 doc/classes/PackedFloat32Array.xml:29
@@ -5968,13 +6364,15 @@ msgstr ""
#: doc/classes/PackedVector2Array.xml:28 doc/classes/PackedVector3Array.xml:28
msgid ""
"Appends an element at the end of the array (alias of [method push_back])."
-msgstr ""
+msgstr "ДобавлÑет Ñлемент в конец маÑÑива (пÑевдоним [method push_back])."
#: doc/classes/Array.xml:122
msgid ""
"Returns the last element of the array, or [code]null[/code] if the array is "
"empty."
msgstr ""
+"Возвращает поÑледний Ñлемент маÑÑива, или[code]null[/code] еÑли маÑÑив "
+"пуÑтой."
#: doc/classes/Array.xml:133
msgid ""
@@ -5986,6 +6384,14 @@ msgid ""
"[b]Note:[/b] Calling [method bsearch] on an unsorted array results in "
"unexpected behavior."
msgstr ""
+"Ðаходит Ð¸Ð½Ð´ÐµÐºÑ ÑущеÑтвующего Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ (или Ð¸Ð½Ð´ÐµÐºÑ Ð²Ñтавки который "
+"поддерживает порÑдок Ñортировки, еÑли значение ещё не уÑтановлено в маÑÑиве) "
+"иÑÐ¿Ð¾Ð»ÑŒÐ·ÑƒÑ Ð±Ð¸Ð½Ð°Ñ€Ð½Ñ‹Ð¹ поиÑк. Дополнительно, может быть передан Ñпецификатор "
+"[code]before[/code]. ЕÑли он будет уÑтановлен в [code]false[/code], "
+"возвращаемый Ð¸Ð½Ð´ÐµÐºÑ Ð¿Ñ€Ð¸Ð´Ñ‘Ñ‚ поÑле вÑех ÑущеÑтвующих вхождений Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð² "
+"маÑÑиве.\n"
+"[b]Заметка:[/b] Вызов [method bsearch] на неотÑортированном маÑÑиве приведёт "
+"к неопределённому поведению."
#: doc/classes/Array.xml:149
msgid ""
@@ -6000,16 +6406,29 @@ msgid ""
"[b]Note:[/b] Calling [method bsearch] on an unsorted array results in "
"unexpected behavior."
msgstr ""
+"Ðаходит Ð¸Ð½Ð´ÐµÐºÑ ÑущеÑтвующего Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ (или Ð¸Ð½Ð´ÐµÐºÑ Ð²Ñтавки который "
+"поддерживает порÑдок Ñортировки, еÑли значение ещё не уÑтановлено в маÑÑиве) "
+"иÑÐ¿Ð¾Ð»ÑŒÐ·ÑƒÑ Ð±Ð¸Ð½Ð°Ñ€Ð½Ñ‹Ð¹ поиÑк и пользовательÑкий метод ÑравнениÑ. Дополнительно, "
+"может быть передан Ñпецификатор [code]before[/code]. ЕÑли он будет "
+"уÑтановлен в [code]false[/code], возвращаемый Ð¸Ð½Ð´ÐµÐºÑ Ð¿Ñ€Ð¸Ð´Ñ‘Ñ‚ поÑле вÑех "
+"ÑущеÑтвующих вхождений Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð² маÑÑиве. ПользовательÑкий метод принимает "
+"два аргумента (Ñлемент из маÑÑива и значение Ð´Ð»Ñ Ð¿Ð¾Ð¸Ñка) и должен возвращать "
+"[code]true[/code] еÑли первый аргумент меньше чем второй, иначе возвращает "
+"[code]false[/code].\n"
+"[b]Заметка:[/b] Вызов [method bsearch] на неотÑортированном маÑÑиве приведёт "
+"к неопределённому поведению."
#: doc/classes/Array.xml:157
msgid ""
"Clears the array. This is equivalent to using [method resize] with a size of "
"[code]0[/code]."
msgstr ""
+"Очищает маÑÑив. Это Ñквивалентно иÑпользованию [method resize] Ñ Ñ€Ð°Ð·Ð¼ÐµÑ€Ð¾Ð¼ "
+"[code]0[/code]."
#: doc/classes/Array.xml:166
msgid "Returns the number of times an element is in the array."
-msgstr ""
+msgstr "Возвращает количеÑтво раз когда Ñлемент вÑтречаетÑÑ Ð² маÑÑиве."
#: doc/classes/Array.xml:175
msgid ""
@@ -6021,6 +6440,13 @@ msgid ""
"modifying a sub-array or dictionary in the copy will also impact those "
"referenced in the source array."
msgstr ""
+"Возвращает копию маÑÑива.\n"
+"ЕÑли [code]deep[/code] уÑтановлен в [code]true[/code], будет выполнено "
+"глубокое копирование: вÑе вложенные маÑÑивы и Ñловари будет Ñдублицированны "
+"и не будут ÑÑылатьÑÑ Ð½Ð° изначальный маÑÑив. ЕÑли [code]false[/code], будет "
+"Ñоздана поверхноÑÑ‚Ð½Ð°Ñ ÐºÐ¾Ð¿Ð¸Ñ Ð¸ ÑÑылки на изначальные вложенные маÑÑивы и "
+"Ñловари будут Ñохранены, так что Ð¼Ð¾Ð´Ð¸Ñ„Ð¸ÐºÐ°Ñ†Ð¸Ñ Ð¿Ð¾Ð´-маÑÑива или ÑÐ»Ð¾Ð²Ð°Ñ€Ñ Ð±ÑƒÐ´ÐµÑ‚ "
+"также влиÑÑ‚ÑŒ на их ÑÑылки в маÑÑиве иÑточнике."
#: doc/classes/Array.xml:183 doc/classes/PackedByteArray.xml:64
#: doc/classes/PackedColorArray.xml:44 doc/classes/PackedFloat32Array.xml:45
@@ -6028,38 +6454,46 @@ msgstr ""
#: doc/classes/PackedInt64Array.xml:45 doc/classes/PackedStringArray.xml:44
#: doc/classes/PackedVector2Array.xml:44 doc/classes/PackedVector3Array.xml:44
msgid "Returns [code]true[/code] if the array is empty."
-msgstr ""
+msgstr "Возвращает [code]true[/code] еÑли маÑÑив пуÑтой."
#: doc/classes/Array.xml:192
msgid "Removes the first occurrence of a value from the array."
-msgstr ""
+msgstr "УдалÑет первое вхождение Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð² маÑÑиве."
#: doc/classes/Array.xml:203
msgid ""
"Searches the array for a value and returns its index or [code]-1[/code] if "
"not found. Optionally, the initial search index can be passed."
msgstr ""
+"ОÑущеÑтвлÑет поиÑк Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð² маÑÑиве и возвращает Ð¸Ð½Ð´ÐµÐºÑ Ñлемента или "
+"[code]-1[/code] еÑли он не был найден. Дополнительно, может быть передан "
+"Ð¸Ð½Ð´ÐµÐºÑ Ñ ÐºÐ¾Ñ‚Ð¾Ñ€Ð¾Ð³Ð¾ будет начат поиÑк."
#: doc/classes/Array.xml:212
msgid ""
"Searches the array in reverse order for a value and returns its index or "
"[code]-1[/code] if not found."
msgstr ""
+"ОÑущеÑтвлÑет поиÑк Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð¿Ð¾ маÑÑиву в обратном порÑдке и возвращает "
+"Ð¸Ð½Ð´ÐµÐºÑ Ð·Ð»ÐµÐ¼ÐµÐ½Ñ‚Ð° или [code]-1[/code] еÑли он не был найден."
#: doc/classes/Array.xml:219
msgid ""
"Returns the first element of the array, or [code]null[/code] if the array is "
"empty."
msgstr ""
+"Возвращает первый Ñлемент в маÑÑиве, или [code]null[/code] еÑли маÑÑив "
+"пуÑтой."
#: doc/classes/Array.xml:228
+#, fuzzy
msgid ""
"Returns [code]true[/code] if the array contains the given value.\n"
"[codeblock]\n"
-"[\"inside\", 7].has(\"inside\") == true\n"
-"[\"inside\", 7].has(\"outside\") == false\n"
-"[\"inside\", 7].has(7) == true\n"
-"[\"inside\", 7].has(\"7\") == false\n"
+"print([\"inside\", 7].has(\"inside\")) # True\n"
+"print([\"inside\", 7].has(\"outside\")) # False\n"
+"print([\"inside\", 7].has(7)) # True\n"
+"print([\"inside\", 7].has(\"7\")) # False\n"
"[/codeblock]\n"
"[b]Note:[/b] This is equivalent to using the [code]in[/code] operator as "
"follows:\n"
@@ -6069,24 +6503,39 @@ msgid ""
" pass\n"
"[/codeblock]"
msgstr ""
+"Возвращает [code]true[/code] еÑли маÑÑив Ñодержит иÑкомое значение.\n"
+"[codeblock]\n"
+"[\"inside\", 7].has(\"inside\") == true\n"
+"[\"inside\", 7].has(\"outside\") == false\n"
+"[\"inside\", 7].has(7) == true\n"
+"[\"inside\", 7].has(\"7\") == false\n"
+"[/codeblock]\n"
+"[b]Заметка:[/b] Это Ñквивалентно иÑпользованию оперетора [code]in[/code]:\n"
+"[codeblock]\n"
+"# Будет вычиÑлено `true`.\n"
+"if 2 in [2, 4, 6, 8]:\n"
+" pass\n"
+"[/codeblock]"
#: doc/classes/Array.xml:247
msgid "Returns a hashed integer value representing the array contents."
-msgstr ""
+msgstr "Возвращает целочиÑленный Ñ…Ñш предÑтавлÑющий Ñодержимое маÑÑива."
#: doc/classes/Array.xml:258
msgid ""
"Inserts a new element at a given position in the array. The position must be "
"valid, or at the end of the array ([code]pos == size()[/code])."
msgstr ""
+"Ð’ÑтавлÑет новый Ñлемент в указанную позицию маÑÑива. ÐŸÐ¾Ð·Ð¸Ñ†Ð¸Ñ Ð´Ð¾Ð»Ð¶Ð½Ð° быть "
+"корректна, или указывать на конец маÑÑива ([code]pos == size()[/code])."
-#: doc/classes/Array.xml:265 doc/classes/PackedByteArray.xml:107
-#: doc/classes/PackedColorArray.xml:62 doc/classes/PackedFloat32Array.xml:63
-#: doc/classes/PackedFloat64Array.xml:63 doc/classes/PackedInt32Array.xml:63
-#: doc/classes/PackedInt64Array.xml:63 doc/classes/PackedStringArray.xml:62
-#: doc/classes/PackedVector2Array.xml:62 doc/classes/PackedVector3Array.xml:62
+#: doc/classes/Array.xml:265 doc/classes/PackedByteArray.xml:116
+#: doc/classes/PackedColorArray.xml:71 doc/classes/PackedFloat32Array.xml:72
+#: doc/classes/PackedFloat64Array.xml:72 doc/classes/PackedInt32Array.xml:72
+#: doc/classes/PackedInt64Array.xml:72 doc/classes/PackedStringArray.xml:71
+#: doc/classes/PackedVector2Array.xml:71 doc/classes/PackedVector3Array.xml:71
msgid "Reverses the order of the elements in the array."
-msgstr ""
+msgstr "Инвертирует порÑдок Ñлементов в маÑÑиве."
#: doc/classes/Array.xml:272
msgid ""
@@ -6094,6 +6543,9 @@ msgid ""
"comparable types. If the elements can't be compared, [code]null[/code] is "
"returned."
msgstr ""
+"Возвращает макÑимальное значение ÑодержащееÑÑ Ð² маÑÑиве, еÑли вÑе Ñлементы "
+"могут быть Ñравнены друг Ñ Ð´Ñ€ÑƒÐ³Ð¾Ð¼. ЕÑли Ñлементы не могут быть Ñравнены, "
+"возвращает [code]null[/code]."
#: doc/classes/Array.xml:279
msgid ""
@@ -6101,35 +6553,42 @@ msgid ""
"comparable types. If the elements can't be compared, [code]null[/code] is "
"returned."
msgstr ""
+"Возвращает минимальное значение ÑодержащееÑÑ Ð² маÑÑиве, еÑли вÑе Ñлементы "
+"могут быть Ñравнены друг Ñ Ð´Ñ€ÑƒÐ³Ð¾Ð¼. ЕÑли Ñлементы не могут быть Ñравнены, "
+"возвращает [code]null[/code]."
#: doc/classes/Array.xml:286
msgid ""
"Removes and returns the last element of the array. Returns [code]null[/code] "
"if the array is empty."
msgstr ""
+"УдалÑет и возвращает поÑледний Ñлемент маÑÑива. Возвращает [code]null[/code] "
+"еÑли маÑÑив пуÑтой."
#: doc/classes/Array.xml:293
msgid ""
"Removes and returns the first element of the array. Returns [code]null[/"
"code] if the array is empty."
msgstr ""
+"УдалÑет и возвращает первый Ñлемент маÑÑива. Возвращает [code]null[/code] "
+"еÑли маÑÑив пуÑтой."
-#: doc/classes/Array.xml:302 doc/classes/PackedByteArray.xml:116
-#: doc/classes/PackedFloat32Array.xml:72 doc/classes/PackedFloat64Array.xml:72
+#: doc/classes/Array.xml:302 doc/classes/PackedByteArray.xml:125
+#: doc/classes/PackedFloat32Array.xml:81 doc/classes/PackedFloat64Array.xml:81
msgid "Appends an element at the end of the array."
-msgstr ""
+msgstr "ДобавлÑет Ñлемент в конец маÑÑива."
#: doc/classes/Array.xml:311
msgid "Adds an element at the beginning of the array."
-msgstr ""
+msgstr "ДобавлÑет Ñлемент в начало маÑÑива."
-#: doc/classes/Array.xml:320 doc/classes/PackedByteArray.xml:125
-#: doc/classes/PackedColorArray.xml:80 doc/classes/PackedFloat32Array.xml:81
-#: doc/classes/PackedFloat64Array.xml:81 doc/classes/PackedInt32Array.xml:81
-#: doc/classes/PackedInt64Array.xml:81 doc/classes/PackedStringArray.xml:80
-#: doc/classes/PackedVector2Array.xml:80 doc/classes/PackedVector3Array.xml:80
+#: doc/classes/Array.xml:320 doc/classes/PackedByteArray.xml:134
+#: doc/classes/PackedColorArray.xml:89 doc/classes/PackedFloat32Array.xml:90
+#: doc/classes/PackedFloat64Array.xml:90 doc/classes/PackedInt32Array.xml:90
+#: doc/classes/PackedInt64Array.xml:90 doc/classes/PackedStringArray.xml:89
+#: doc/classes/PackedVector2Array.xml:89 doc/classes/PackedVector3Array.xml:89
msgid "Removes an element from the array by index."
-msgstr ""
+msgstr "УдалÑет Ñлемент из маÑÑива по индекÑу."
#: doc/classes/Array.xml:329
msgid ""
@@ -6137,6 +6596,9 @@ msgid ""
"size is smaller, elements are cleared, if bigger, new elements are "
"[code]null[/code]."
msgstr ""
+"ИзменÑет размер маÑÑива чтобы он мог Ñодержать другое чиÑло Ñлементов. ЕÑли "
+"размер маÑÑива уменьшен, Ñлементы будут очищены, еÑли больший, новые "
+"Ñлементы уÑтановÑÑ‚ÑÑ Ð² [code]null[/code]."
#: doc/classes/Array.xml:340
msgid ""
@@ -6144,6 +6606,9 @@ msgid ""
"passed. If negative, the start index is considered relative to the end of "
"the array."
msgstr ""
+"ОÑущеÑтвлÑет поиÑк Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð¿Ð¾ маÑÑиву в обратном порÑдке. Дополнительно, "
+"может быть передан начальный Ð¸Ð½Ð´ÐµÐºÑ Ð¿Ð¾Ð¸Ñка. ЕÑли он будет отрицательный "
+"поиÑк будет оÑущеÑтвлÑÑ‚ÑŒÑÑ Ð¾Ñ‚Ð½Ð¾Ñительно конца маÑÑива."
#: doc/classes/Array.xml:347
msgid ""
@@ -6152,10 +6617,15 @@ msgid ""
"@GDScript.randi]. Call [method @GDScript.randomize] to ensure that a new "
"seed will be used each time if you want non-reproducible shuffling."
msgstr ""
+"Сдвигает Ñлементы маÑÑива в Ñлучайном порÑдке. Этот метод иÑпользует "
+"глобальный генератор Ñлучайных чиÑел общим Ð´Ð»Ñ Ñ‚Ð°ÐºÐ¸Ñ… методов как [method "
+"@GDScript.randi]. Вызовите [method @GDScript.randomize] чтобы новое зерно "
+"генератора было иÑпользовано каждый раз еÑли вы хотите не-повторÑющихÑÑ "
+"Ñдвигов."
#: doc/classes/Array.xml:354
msgid "Returns the number of elements in the array."
-msgstr ""
+msgstr "Возвращает чиÑло Ñлементов в маÑÑиве."
#: doc/classes/Array.xml:369
msgid ""
@@ -6164,6 +6634,10 @@ msgid ""
"and upper index are inclusive, with the [code]step[/code] describing the "
"change between indices while slicing."
msgstr ""
+"Создаёт дубликат под-множеÑтва опиÑанного в функции и возвращает его в "
+"маÑÑиве, делает глубокую копию маÑÑива еÑли [code]deep[/code] уÑтановлен в "
+"[code]true[/code]. Включает нижние и верхние индекÑÑ‹, а [code]step[/code] "
+"опиÑывает шаг между индекÑами Ñреза."
#: doc/classes/Array.xml:376
msgid ""
@@ -6177,6 +6651,16 @@ msgid ""
"print(strings) # Prints [string1, string10, string11, string2]\n"
"[/codeblock]"
msgstr ""
+"Сортирует маÑÑив.\n"
+"[b]Заметка:[/b] Строки ÑортируютÑÑ Ð² алфавитном порÑдке (в отличие от "
+"еÑтеÑтвенного порÑдка). Это может привеÑти к нежелательному поведению когда "
+"Ñтроки в маÑÑиве оканчиваетÑÑ Ð¿Ð¾ÑледовательноÑтью чиÑел. РаÑÑмотрим "
+"Ñледующий пример:\n"
+"[codeblock]\n"
+"var strings = [\"string1\", \"string2\", \"string10\", \"string11\"]\n"
+"strings.sort()\n"
+"print(strings) # Prints [string1, string10, string11, string2]\n"
+"[/codeblock]"
#: doc/classes/Array.xml:393
msgid ""
@@ -6199,6 +6683,24 @@ msgid ""
"print(my_items) # Prints [[4, Tomato], [5, Potato], [9, Rice]].\n"
"[/codeblock]"
msgstr ""
+"Сортирует маÑÑив иÑÐ¿Ð¾Ð»ÑŒÐ·ÑƒÑ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»ÑŒÑкий метод. Ðргументы - Ñто объект "
+"который Ñодержит метод и Ð¸Ð¼Ñ Ð¿Ð¾Ð´Ð¾Ð±Ð½Ð¾Ð³Ð¾ метода. ПользовательÑкий метод "
+"принимает два аргумента (пара Ñлементов из маÑÑива) и должен возвращать "
+"[code]true[/code] или [code]false[/code].\n"
+" [b]Заметка:[/b] вы не можете возвращать Ñлучайное значение так как алгоритм "
+"Ñортировки кучи предполагает детереминированный результат. ЕÑли вы Ñделаете "
+"Ñто приведет к неопределённому поведению.\n"
+"[codeblock]\n"
+"class MyCustomSorter:\n"
+" static func sort_ascending(a, b):\n"
+" if a[0] < b[0]:\n"
+" return true\n"
+" return false\n"
+"\n"
+"var my_items = [[5, \"Картофель\"], [9, \"РиÑ\"], [4, \"Помидор\"]]\n"
+"my_items.sort_custom(MyCustomSorter, \"sort_ascending\")\n"
+"print(my_items) # Prints [[4, Помидор], [5, Картофель], [9, РиÑ]].\n"
+"[/codeblock]"
#: doc/classes/ArrayMesh.xml:4
msgid ""
@@ -6410,7 +6912,7 @@ msgid ""
msgstr ""
#: doc/classes/ArrayMesh.xml:235 doc/classes/Mesh.xml:210
-#: doc/classes/RenderingServer.xml:3115
+#: doc/classes/RenderingServer.xml:3111
msgid "Represents the size of the [enum ArrayType] enum."
msgstr ""
@@ -8227,7 +8729,9 @@ msgid ""
msgstr ""
#: doc/classes/BaseButton.xml:16
-msgid "Called when the button is pressed."
+msgid ""
+"Called when the button is pressed. If you need to know the button's pressed "
+"state (and [member toggle_mode] is active), use [method _toggled] instead."
msgstr ""
#: doc/classes/BaseButton.xml:25
@@ -8321,43 +8825,45 @@ msgstr ""
msgid ""
"Emitted when the button is toggled or pressed. This is on [signal "
"button_down] if [member action_mode] is [constant ACTION_MODE_BUTTON_PRESS] "
-"and on [signal button_up] otherwise."
+"and on [signal button_up] otherwise.\n"
+"If you need to know the button's pressed state (and [member toggle_mode] is "
+"active), use [signal toggled] instead."
msgstr ""
-#: doc/classes/BaseButton.xml:98
+#: doc/classes/BaseButton.xml:99
msgid ""
"Emitted when the button was just toggled between pressed and normal states "
"(only if [member toggle_mode] is active). The new state is contained in the "
"[code]button_pressed[/code] argument."
msgstr ""
-#: doc/classes/BaseButton.xml:104
+#: doc/classes/BaseButton.xml:105
msgid ""
"The normal state (i.e. not pressed, not hovered, not toggled and enabled) of "
"buttons."
msgstr ""
-#: doc/classes/BaseButton.xml:107
+#: doc/classes/BaseButton.xml:108
msgid "The state of buttons are pressed."
msgstr ""
-#: doc/classes/BaseButton.xml:110
+#: doc/classes/BaseButton.xml:111
msgid "The state of buttons are hovered."
msgstr ""
-#: doc/classes/BaseButton.xml:113
+#: doc/classes/BaseButton.xml:114
msgid "The state of buttons are disabled."
msgstr ""
-#: doc/classes/BaseButton.xml:116
+#: doc/classes/BaseButton.xml:117
msgid "The state of buttons are both hovered and pressed."
msgstr ""
-#: doc/classes/BaseButton.xml:119
+#: doc/classes/BaseButton.xml:120
msgid "Require just a press to consider the button clicked."
msgstr ""
-#: doc/classes/BaseButton.xml:122
+#: doc/classes/BaseButton.xml:123
msgid ""
"Require a press and a subsequent release before considering the button "
"clicked."
@@ -9050,22 +9556,22 @@ msgstr ""
msgid "Represents the size of the [enum TextureParam] enum."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:451 doc/classes/RenderingServer.xml:3657
-#: doc/classes/Viewport.xml:390
+#: doc/classes/BaseMaterial3D.xml:451 doc/classes/RenderingServer.xml:3668
+#: doc/classes/Viewport.xml:393
msgid ""
"The texture filter reads from the nearest pixel only. The simplest and "
"fastest method of filtering, but the texture will look pixelized."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:454 doc/classes/RenderingServer.xml:3660
-#: doc/classes/Viewport.xml:393
+#: doc/classes/BaseMaterial3D.xml:454 doc/classes/RenderingServer.xml:3671
+#: doc/classes/Viewport.xml:396
msgid ""
"The texture filter blends between the nearest 4 pixels. Use this when you "
"want to avoid a pixelated style, but do not want mipmaps."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:457 doc/classes/RenderingServer.xml:3663
-#: doc/classes/Viewport.xml:396
+#: doc/classes/BaseMaterial3D.xml:457 doc/classes/RenderingServer.xml:3674
+#: doc/classes/Viewport.xml:399
msgid ""
"The texture filter reads from the nearest pixel in the nearest mipmap. The "
"fastest way to read from textures with mipmaps."
@@ -9078,14 +9584,14 @@ msgid ""
"smooth out pixels that are far from the camera."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:463 doc/classes/RenderingServer.xml:3669
+#: doc/classes/BaseMaterial3D.xml:463 doc/classes/RenderingServer.xml:3680
msgid ""
"The texture filter reads from the nearest pixel, but selects a mipmap based "
"on the angle between the surface and the camera view. This reduces artifacts "
"on surfaces that are almost in line with the camera."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:466 doc/classes/RenderingServer.xml:3672
+#: doc/classes/BaseMaterial3D.xml:466 doc/classes/RenderingServer.xml:3683
msgid ""
"The texture filter blends between the nearest 4 pixels and selects a mipmap "
"based on the angle between the surface and the camera view. This reduces "
@@ -9094,7 +9600,7 @@ msgid ""
"texturing."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:469 doc/classes/CanvasItem.xml:685
+#: doc/classes/BaseMaterial3D.xml:469 doc/classes/CanvasItem.xml:695
msgid "Represents the size of the [enum TextureFilter] enum."
msgstr ""
@@ -9317,8 +9823,8 @@ msgstr ""
msgid "Enables the shadow to opacity feature."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:622 doc/classes/RenderingServer.xml:3684
-#: doc/classes/Viewport.xml:408
+#: doc/classes/BaseMaterial3D.xml:622 doc/classes/RenderingServer.xml:3695
+#: doc/classes/Viewport.xml:411
msgid ""
"Enables the texture to repeat when UV coordinates are outside the 0-1 range. "
"If using one of the linear filtering modes, this can result in artifacts at "
@@ -9459,167 +9965,198 @@ msgstr ""
#: doc/classes/Basis.xml:7
msgid ""
-"3×3 matrix used for 3D rotation and scale. Contains 3 vector fields X, Y and "
-"Z as its columns, which can be interpreted as the local basis vectors of a "
-"transformation. Can also be accessed as array of 3D vectors. These vectors "
-"are orthogonal to each other, but are not necessarily normalized (due to "
-"scaling). Almost always used as an orthogonal basis for a [Transform].\n"
-"For such use, it is composed of a scaling and a rotation matrix, in that "
-"order (M = R.S)."
+"3×3 matrix used for 3D rotation and scale. Almost always used as an "
+"orthogonal basis for a Transform.\n"
+"Contains 3 vector fields X, Y and Z as its columns, which are typically "
+"interpreted as the local basis vectors of a transformation. For such use, it "
+"is composed of a scaling and a rotation matrix, in that order (M = R.S).\n"
+"Can also be accessed as array of 3D vectors. These vectors are normally "
+"orthogonal to each other, but are not necessarily normalized (due to "
+"scaling).\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
msgstr ""
-#: doc/classes/Basis.xml:11 doc/classes/Transform.xml:11
+#: doc/classes/Basis.xml:13 doc/classes/Transform.xml:12
+#: doc/classes/Transform2D.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/math/"
+"matrices_and_transforms.html"
+msgstr ""
+
+#: doc/classes/Basis.xml:14 doc/classes/Transform.xml:13
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/using_transforms.html"
msgstr ""
-#: doc/classes/Basis.xml:20
-msgid "Create a rotation matrix from the given quaternion."
+#: doc/classes/Basis.xml:23
+msgid "Constructs a pure rotation basis matrix from the given quaternion."
msgstr ""
-#: doc/classes/Basis.xml:29
+#: doc/classes/Basis.xml:32
msgid ""
-"Create a rotation matrix (in the YXZ convention: first Z, then X, and Y "
-"last) from the specified Euler angles, given in the vector format as (X "
-"angle, Y angle, Z angle)."
+"Constructs a pure rotation basis matrix from the given Euler angles (in the "
+"YXZ convention: when *composing*, first Y, then X, and Z last), given in the "
+"vector format as (X angle, Y angle, Z angle).\n"
+"Consider using the [Quat] constructor instead, which uses a quaternion "
+"instead of Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:40
+#: doc/classes/Basis.xml:44
+#, fuzzy
msgid ""
-"Create a rotation matrix which rotates around the given axis by the "
-"specified angle, in radians. The axis must be a normalized vector."
+"Constructs a pure rotation basis matrix, rotated around the given "
+"[code]axis[/code] by [code]phi[/code], in radians. The axis must be a "
+"normalized vector."
msgstr ""
+"Вращает вектор вокруг заданной оÑи на [code]phi[/code] радиан. ОÑÑŒ должна "
+"быть нормализованным вектором."
-#: doc/classes/Basis.xml:53
-msgid "Create a matrix from 3 axis vectors."
+#: doc/classes/Basis.xml:57
+msgid "Constructs a basis matrix from 3 axis vectors (matrix columns)."
msgstr ""
-#: doc/classes/Basis.xml:60
-msgid "Returns the determinant of the matrix."
+#: doc/classes/Basis.xml:64
+msgid ""
+"Returns the determinant of the basis matrix. If the basis is uniformly "
+"scaled, its determinant is the square of the scale.\n"
+"A negative determinant means the basis has a negative scale. A zero "
+"determinant means the basis isn't invertible, and is usually considered "
+"invalid."
msgstr ""
-#: doc/classes/Basis.xml:67
+#: doc/classes/Basis.xml:72
msgid ""
"Returns the basis's rotation in the form of Euler angles (in the YXZ "
-"convention: first Z, then X, and Y last). The returned vector contains the "
-"rotation angles in the format (X angle, Y angle, Z angle). See [method "
-"get_rotation_quat] if you need a quaternion instead."
+"convention: when decomposing, first Z, then X, and Y last). The returned "
+"vector contains the rotation angles in the format (X angle, Y angle, Z "
+"angle).\n"
+"Consider using the [method get_rotation_quat] method instead, which returns "
+"a [Quat] quaternion instead of Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:74
+#: doc/classes/Basis.xml:80
msgid ""
"This function considers a discretization of rotations into 24 points on unit "
"sphere, lying along the vectors (x,y,z) with each component being either -1, "
"0, or 1, and returns the index of the point best representing the "
-"orientation of the object. It is mainly used by the grid map editor. For "
+"orientation of the object. It is mainly used by the [GridMap] editor. For "
"further details, refer to the Godot source code."
msgstr ""
-#: doc/classes/Basis.xml:81
+#: doc/classes/Basis.xml:87
msgid ""
"Returns the basis's rotation in the form of a quaternion. See [method "
"get_euler] if you need Euler angles, but keep in mind quaternions should "
"generally be preferred to Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:88
+#: doc/classes/Basis.xml:94
msgid ""
"Assuming that the matrix is the combination of a rotation and scaling, "
"return the absolute value of scaling factors along each axis."
msgstr ""
-#: doc/classes/Basis.xml:95 doc/classes/Transform2D.xml:49
+#: doc/classes/Basis.xml:101
msgid "Returns the inverse of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:106
+#: doc/classes/Basis.xml:112
msgid ""
"Returns [code]true[/code] if this basis and [code]b[/code] are approximately "
"equal, by calling [code]is_equal_approx[/code] on each component."
msgstr ""
-#: doc/classes/Basis.xml:113
+#: doc/classes/Basis.xml:119
msgid ""
"Returns the orthonormalized version of the matrix (useful to call from time "
"to time to avoid rounding error for orthogonal matrices). This performs a "
"Gram-Schmidt orthonormalization on the basis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:124
+#: doc/classes/Basis.xml:130
msgid ""
"Introduce an additional rotation around the given axis by phi (radians). The "
"axis must be a normalized vector."
msgstr ""
-#: doc/classes/Basis.xml:133
+#: doc/classes/Basis.xml:139
msgid ""
"Introduce an additional scaling specified by the given 3D scaling factor."
msgstr ""
-#: doc/classes/Basis.xml:144
+#: doc/classes/Basis.xml:150
msgid ""
"Assuming that the matrix is a proper rotation matrix, slerp performs a "
"spherical-linear interpolation with another rotation matrix."
msgstr ""
-#: doc/classes/Basis.xml:153
+#: doc/classes/Basis.xml:159
msgid "Transposed dot product with the X axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:162
+#: doc/classes/Basis.xml:168
msgid "Transposed dot product with the Y axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:171
+#: doc/classes/Basis.xml:177
msgid "Transposed dot product with the Z axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:178
+#: doc/classes/Basis.xml:184
msgid "Returns the transposed version of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:187
+#: doc/classes/Basis.xml:193
msgid "Returns a vector transformed (multiplied) by the matrix."
msgstr ""
-#: doc/classes/Basis.xml:196
+#: doc/classes/Basis.xml:202
msgid ""
-"Returns a vector transformed (multiplied) by the transposed matrix.\n"
+"Returns a vector transformed (multiplied) by the transposed basis matrix.\n"
"[b]Note:[/b] This results in a multiplication by the inverse of the matrix "
"only if it represents a rotation-reflection."
msgstr ""
-#: doc/classes/Basis.xml:203
-msgid "The basis matrix's X vector."
+#: doc/classes/Basis.xml:209 doc/classes/Transform2D.xml:181
+msgid ""
+"The basis matrix's X vector (column 0). Equivalent to array index [code]0[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:206
-msgid "The basis matrix's Y vector."
+#: doc/classes/Basis.xml:212 doc/classes/Transform2D.xml:184
+msgid ""
+"The basis matrix's Y vector (column 1). Equivalent to array index [code]1[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:209
-msgid "The basis matrix's Z vector."
+#: doc/classes/Basis.xml:215
+msgid ""
+"The basis matrix's Z vector (column 2). Equivalent to array index [code]2[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:214
+#: doc/classes/Basis.xml:220
msgid ""
-"The identity basis. This is identical to calling [code]Basis()[/code] "
-"without any parameters. This constant can be used to make your code clearer."
+"The identity basis, with no rotation or scaling applied.\n"
+"This is identical to calling [code]Basis()[/code] without any parameters. "
+"This constant can be used to make your code clearer, and for consistency "
+"with C#."
msgstr ""
-#: doc/classes/Basis.xml:217
+#: doc/classes/Basis.xml:224
msgid ""
"The basis that will flip something along the X axis when used in a "
"transformation."
msgstr ""
-#: doc/classes/Basis.xml:220
+#: doc/classes/Basis.xml:227
msgid ""
"The basis that will flip something along the Y axis when used in a "
"transformation."
msgstr ""
-#: doc/classes/Basis.xml:223
+#: doc/classes/Basis.xml:230
msgid ""
"The basis that will flip something along the Z axis when used in a "
"transformation."
@@ -9932,97 +10469,111 @@ msgstr ""
#: doc/classes/Button.xml:7
msgid ""
"Button is the standard themed button. It can contain text and an icon, and "
-"will display them according to the current [Theme]."
+"will display them according to the current [Theme].\n"
+"[b]Example of creating a button and assigning an action when pressed by code:"
+"[/b]\n"
+"[codeblock]\n"
+"func _ready():\n"
+" var button = Button.new()\n"
+" button.text = \"Click me\"\n"
+" button.connect(\"pressed\", self, \"_button_pressed\")\n"
+" add_child(button)\n"
+"\n"
+"func _button_pressed():\n"
+" print(\"Hello world!\")\n"
+"[/codeblock]\n"
+"Buttons (like all Control nodes) can also be created in the editor, but some "
+"situations may require creating them from code."
msgstr ""
-#: doc/classes/Button.xml:15
+#: doc/classes/Button.xml:27
msgid ""
"Text alignment policy for the button's text, use one of the [enum TextAlign] "
"constants."
msgstr ""
-#: doc/classes/Button.xml:18
+#: doc/classes/Button.xml:30
msgid ""
"When this property is enabled, text that is too large to fit the button is "
"clipped, when disabled the Button will always be wide enough to hold the "
"text."
msgstr ""
-#: doc/classes/Button.xml:21
+#: doc/classes/Button.xml:33
msgid ""
"When enabled, the button's icon will expand/shrink to fit the button's size "
"while keeping its aspect."
msgstr ""
-#: doc/classes/Button.xml:24
+#: doc/classes/Button.xml:36
msgid "Flat buttons don't display decoration."
msgstr ""
-#: doc/classes/Button.xml:27
+#: doc/classes/Button.xml:39
msgid ""
"Button's icon, if text is present the icon will be placed before the text."
msgstr ""
-#: doc/classes/Button.xml:30 doc/classes/LinkButton.xml:18
+#: doc/classes/Button.xml:42 doc/classes/LinkButton.xml:18
msgid "The button's text that will be displayed inside the button's area."
msgstr ""
-#: doc/classes/Button.xml:35
+#: doc/classes/Button.xml:47
msgid "Align the text to the left."
msgstr ""
-#: doc/classes/Button.xml:38
+#: doc/classes/Button.xml:50
msgid "Align the text to the center."
msgstr ""
-#: doc/classes/Button.xml:41
+#: doc/classes/Button.xml:53
msgid "Align the text to the right."
msgstr ""
-#: doc/classes/Button.xml:46
+#: doc/classes/Button.xml:58
msgid "[StyleBox] used when the [Button] is disabled."
msgstr ""
-#: doc/classes/Button.xml:49
+#: doc/classes/Button.xml:61
msgid ""
"[StyleBox] used when the [Button] is focused. It is displayed over the "
"current [StyleBox], so using [StyleBoxEmpty] will just disable the focus "
"visual effect."
msgstr ""
-#: doc/classes/Button.xml:52
+#: doc/classes/Button.xml:64
msgid "[Font] of the [Button]'s text."
msgstr ""
-#: doc/classes/Button.xml:55
+#: doc/classes/Button.xml:67
msgid "Default text [Color] of the [Button]."
msgstr ""
-#: doc/classes/Button.xml:58
+#: doc/classes/Button.xml:70
msgid "Text [Color] used when the [Button] is disabled."
msgstr ""
-#: doc/classes/Button.xml:61
+#: doc/classes/Button.xml:73
msgid "Text [Color] used when the [Button] is being hovered."
msgstr ""
-#: doc/classes/Button.xml:64
+#: doc/classes/Button.xml:76
msgid "Text [Color] used when the [Button] is being pressed."
msgstr ""
-#: doc/classes/Button.xml:67
+#: doc/classes/Button.xml:79
msgid "[StyleBox] used when the [Button] is being hovered."
msgstr ""
-#: doc/classes/Button.xml:70
+#: doc/classes/Button.xml:82
msgid "The horizontal space between [Button]'s icon and text."
msgstr ""
-#: doc/classes/Button.xml:73
+#: doc/classes/Button.xml:85
msgid "Default [StyleBox] for the [Button]."
msgstr ""
-#: doc/classes/Button.xml:76
+#: doc/classes/Button.xml:88
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr ""
@@ -10674,7 +11225,7 @@ msgstr ""
#: doc/classes/CameraEffects.xml:37
msgid ""
"The exposure override value to use. Higher values will result in a brighter "
-"scene. Only effective if [member override_exposure_enable] is [code]true[/"
+"scene. Only effective if [member override_exposure_enabled] is [code]true[/"
"code]."
msgstr ""
@@ -10928,265 +11479,282 @@ msgid ""
msgstr ""
#: doc/classes/CanvasItem.xml:319
-msgid "Draws a string using a custom font."
+msgid ""
+"Draws [code]text[/code] using the specified [code]font[/code] at the "
+"[code]position[/code] (top-left corner). The text will have its color "
+"multiplied by [code]modulate[/code]. If [code]clip_w[/code] is greater than "
+"or equal to 0, the text will be clipped if it exceeds the specified width.\n"
+"[b]Example using the default project font:[/b]\n"
+"[codeblock]\n"
+"# If using this method in a script that redraws constantly, move the\n"
+"# `default_font` declaration to a member variable assigned in `_ready()`\n"
+"# so the Control is only created once.\n"
+"var default_font = Control.new().get_font(\"font\")\n"
+"draw_string(default_font, Vector2(64, 64), \"Hello world\")\n"
+"[/codeblock]\n"
+"See also [method Font.draw]."
msgstr ""
-#: doc/classes/CanvasItem.xml:330
+#: doc/classes/CanvasItem.xml:339
msgid "Draws a styled rectangle."
msgstr ""
-#: doc/classes/CanvasItem.xml:353
+#: doc/classes/CanvasItem.xml:362
msgid "Draws a texture at a given position."
msgstr ""
-#: doc/classes/CanvasItem.xml:380
+#: doc/classes/CanvasItem.xml:389
msgid ""
"Draws a textured rectangle at a given position, optionally modulated by a "
"color. If [code]transpose[/code] is [code]true[/code], the texture will have "
"its X and Y coordinates swapped."
msgstr ""
-#: doc/classes/CanvasItem.xml:409
+#: doc/classes/CanvasItem.xml:418
msgid ""
"Draws a textured rectangle region at a given position, optionally modulated "
"by a color. If [code]transpose[/code] is [code]true[/code], the texture will "
"have its X and Y coordinates swapped."
msgstr ""
-#: doc/classes/CanvasItem.xml:416 doc/classes/Node3D.xml:19
+#: doc/classes/CanvasItem.xml:425 doc/classes/Node3D.xml:19
msgid ""
"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."
msgstr ""
-#: doc/classes/CanvasItem.xml:423
+#: doc/classes/CanvasItem.xml:432
msgid "Returns the [RID] of the [World2D] canvas where this item is in."
msgstr ""
-#: doc/classes/CanvasItem.xml:430
+#: doc/classes/CanvasItem.xml:439
msgid "Returns the canvas item RID used by [RenderingServer] for this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:437
+#: doc/classes/CanvasItem.xml:446
msgid "Returns the transform matrix of this item's canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:444
+#: doc/classes/CanvasItem.xml:453
msgid "Returns the global position of the mouse."
msgstr ""
-#: doc/classes/CanvasItem.xml:451
+#: doc/classes/CanvasItem.xml:460
msgid "Returns the global transform matrix of this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:458
+#: doc/classes/CanvasItem.xml:467
msgid ""
"Returns the global transform matrix of this item in relation to the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:465
+#: doc/classes/CanvasItem.xml:474
msgid "Returns the mouse position relative to this item's position."
msgstr ""
-#: doc/classes/CanvasItem.xml:472
+#: doc/classes/CanvasItem.xml:481
msgid "Returns the transform matrix of this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:479
+#: doc/classes/CanvasItem.xml:488
msgid "Returns the viewport's boundaries as a [Rect2]."
msgstr ""
-#: doc/classes/CanvasItem.xml:486
+#: doc/classes/CanvasItem.xml:495
msgid "Returns this item's transform in relation to the viewport."
msgstr ""
-#: doc/classes/CanvasItem.xml:493
+#: doc/classes/CanvasItem.xml:502
msgid "Returns the [World2D] where this item is in."
msgstr ""
-#: doc/classes/CanvasItem.xml:500
+#: doc/classes/CanvasItem.xml:509
msgid "Hide the [CanvasItem] if it's currently visible."
msgstr ""
-#: doc/classes/CanvasItem.xml:507
+#: doc/classes/CanvasItem.xml:516
msgid ""
"Returns [code]true[/code] if local transform notifications are communicated "
"to children."
msgstr ""
-#: doc/classes/CanvasItem.xml:514
+#: doc/classes/CanvasItem.xml:523
msgid ""
"Returns [code]true[/code] if the node is set as top-level. See [method "
"set_as_toplevel]."
msgstr ""
-#: doc/classes/CanvasItem.xml:521
+#: doc/classes/CanvasItem.xml:530
msgid ""
"Returns [code]true[/code] if global transform notifications are communicated "
"to children."
msgstr ""
-#: doc/classes/CanvasItem.xml:528
+#: doc/classes/CanvasItem.xml:537 doc/classes/Node3D.xml:104
msgid ""
"Returns [code]true[/code] if the node is present in the [SceneTree], its "
-"[member visible] property is [code]true[/code] and its inherited visibility "
-"is also [code]true[/code]."
+"[member visible] property is [code]true[/code] and all its antecedents are "
+"also visible. If any antecedent is hidden, this node will not be visible in "
+"the scene tree."
msgstr ""
-#: doc/classes/CanvasItem.xml:537
+#: doc/classes/CanvasItem.xml:546
msgid "Assigns [code]screen_point[/code] as this node's new local transform."
msgstr ""
-#: doc/classes/CanvasItem.xml:546
+#: doc/classes/CanvasItem.xml:555
msgid ""
"Transformations issued by [code]event[/code]'s inputs are applied in local "
"space instead of global space."
msgstr ""
-#: doc/classes/CanvasItem.xml:555
+#: doc/classes/CanvasItem.xml:564
msgid ""
"If [code]enable[/code] is [code]true[/code], the node won't inherit its "
"transform from parent canvas items."
msgstr ""
-#: doc/classes/CanvasItem.xml:564
+#: doc/classes/CanvasItem.xml:573
msgid ""
"If [code]enable[/code] is [code]true[/code], children will be updated with "
"local transform data."
msgstr ""
-#: doc/classes/CanvasItem.xml:573
+#: doc/classes/CanvasItem.xml:582
msgid ""
"If [code]enable[/code] is [code]true[/code], children will be updated with "
"global transform data."
msgstr ""
-#: doc/classes/CanvasItem.xml:580
+#: doc/classes/CanvasItem.xml:589
msgid ""
"Show the [CanvasItem] if it's currently hidden. For controls that inherit "
"[Popup], the correct way to make them visible is to call one of the multiple "
"[code]popup*()[/code] functions instead."
msgstr ""
-#: doc/classes/CanvasItem.xml:587
+#: doc/classes/CanvasItem.xml:596
msgid ""
"Queue the [CanvasItem] for update. [constant NOTIFICATION_DRAW] will be "
"called on idle time to request redraw."
msgstr ""
-#: doc/classes/CanvasItem.xml:593
+#: doc/classes/CanvasItem.xml:602
msgid ""
"The rendering layers in which this [CanvasItem] responds to [Light2D] nodes."
msgstr ""
-#: doc/classes/CanvasItem.xml:596
+#: doc/classes/CanvasItem.xml:605
msgid "The material applied to textures on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:599
+#: doc/classes/CanvasItem.xml:608
msgid "The color applied to textures on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:602
+#: doc/classes/CanvasItem.xml:611
msgid ""
"The color applied to textures on this [CanvasItem]. This is not inherited by "
"children [CanvasItem]s."
msgstr ""
-#: doc/classes/CanvasItem.xml:605
+#: doc/classes/CanvasItem.xml:614
msgid "If [code]true[/code], the object draws behind its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:608
+#: doc/classes/CanvasItem.xml:617
msgid "If [code]true[/code], the object draws on top of its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:611
+#: doc/classes/CanvasItem.xml:620
msgid "The texture filtering mode to use on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:614
+#: doc/classes/CanvasItem.xml:623
msgid "The texture repeating mode to use on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:617
+#: doc/classes/CanvasItem.xml:626
msgid ""
"If [code]true[/code], the parent [CanvasItem]'s [member material] property "
"is used as this one's material."
msgstr ""
-#: doc/classes/CanvasItem.xml:620
+#: doc/classes/CanvasItem.xml:629
msgid ""
-"If [code]true[/code], this [CanvasItem] is drawn. For controls that inherit "
-"[Popup], the correct way to make them visible is to call one of the multiple "
-"[code]popup*()[/code] functions instead."
+"If [code]true[/code], this [CanvasItem] is drawn. The node is only visible "
+"if all of its antecedents are visible as well (in other words, [method "
+"is_visible_in_tree] must return [code]true[/code]).\n"
+"[b]Note:[/b] For controls that inherit [Popup], the correct way to make them "
+"visible is to call one of the multiple [code]popup*()[/code] functions "
+"instead."
msgstr ""
-#: doc/classes/CanvasItem.xml:626
+#: doc/classes/CanvasItem.xml:636
msgid ""
"Emitted when the [CanvasItem] must redraw. This can only be connected "
"realtime, as deferred will not allow drawing."
msgstr ""
-#: doc/classes/CanvasItem.xml:631
+#: doc/classes/CanvasItem.xml:641
msgid "Emitted when becoming hidden."
msgstr ""
-#: doc/classes/CanvasItem.xml:636
+#: doc/classes/CanvasItem.xml:646
msgid "Emitted when the item rect has changed."
msgstr ""
-#: doc/classes/CanvasItem.xml:641
+#: doc/classes/CanvasItem.xml:651
msgid "Emitted when the visibility (hidden/visible) changes."
msgstr ""
-#: doc/classes/CanvasItem.xml:647
+#: doc/classes/CanvasItem.xml:657
msgid ""
"The [CanvasItem]'s transform has changed. This notification is only received "
"if enabled by [method set_notify_transform] or [method "
"set_notify_local_transform]."
msgstr ""
-#: doc/classes/CanvasItem.xml:650
+#: doc/classes/CanvasItem.xml:660
msgid "The [CanvasItem] is requested to draw."
msgstr ""
-#: doc/classes/CanvasItem.xml:653
+#: doc/classes/CanvasItem.xml:663
msgid "The [CanvasItem]'s visibility has changed."
msgstr ""
-#: doc/classes/CanvasItem.xml:656
+#: doc/classes/CanvasItem.xml:666
msgid "The [CanvasItem] has entered the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:659
+#: doc/classes/CanvasItem.xml:669
msgid "The [CanvasItem] has exited the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:662 doc/classes/CanvasItem.xml:688
+#: doc/classes/CanvasItem.xml:672 doc/classes/CanvasItem.xml:698
msgid "The [CanvasItem] will inherit the filter from its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:665
+#: doc/classes/CanvasItem.xml:675
msgid ""
"The texture filter reads from the nearest pixel only. The simplest and "
"fastest method of filtering. Useful for pixel art."
msgstr ""
-#: doc/classes/CanvasItem.xml:668
+#: doc/classes/CanvasItem.xml:678
msgid ""
"The texture filter blends between the nearest four pixels. Use this for most "
"cases where you want to avoid a pixelated style."
msgstr ""
-#: doc/classes/CanvasItem.xml:671
+#: doc/classes/CanvasItem.xml:681
msgid ""
"The texture filter reads from the nearest pixel in the nearest mipmap. This "
"is the fastest way to read from textures with mipmaps."
msgstr ""
-#: doc/classes/CanvasItem.xml:674
+#: doc/classes/CanvasItem.xml:684
msgid ""
"The texture filter blends between the nearest 4 pixels and between the "
"nearest 2 mipmaps. Use this for non-pixel art textures that may be viewed at "
@@ -11194,7 +11762,7 @@ msgid ""
"smooth out pixels that are smaller than on-screen pixels."
msgstr ""
-#: doc/classes/CanvasItem.xml:677
+#: doc/classes/CanvasItem.xml:687
msgid ""
"The texture filter reads from the nearest pixel, but selects a mipmap based "
"on the angle between the surface and the camera view. This reduces artifacts "
@@ -11203,7 +11771,7 @@ msgid ""
"TEXTURE_FILTER_NEAREST_WITH_MIPMAPS] is usually more appropriate."
msgstr ""
-#: doc/classes/CanvasItem.xml:681
+#: doc/classes/CanvasItem.xml:691
msgid ""
"The texture filter blends between the nearest 4 pixels and selects a mipmap "
"based on the angle between the surface and the camera view. This reduces "
@@ -11214,21 +11782,21 @@ msgid ""
"TEXTURE_FILTER_LINEAR_WITH_MIPMAPS] is usually more appropriate."
msgstr ""
-#: doc/classes/CanvasItem.xml:691
+#: doc/classes/CanvasItem.xml:701
msgid "Texture will not repeat."
msgstr ""
-#: doc/classes/CanvasItem.xml:694
+#: doc/classes/CanvasItem.xml:704
msgid "Texture will repeat normally."
msgstr ""
-#: doc/classes/CanvasItem.xml:697
+#: doc/classes/CanvasItem.xml:707
msgid ""
"Texture will repeat in a 2x2 tiled mode, where elements at even positions "
"are mirrored."
msgstr ""
-#: doc/classes/CanvasItem.xml:700
+#: doc/classes/CanvasItem.xml:710
msgid "Represents the size of the [enum TextureRepeat] enum."
msgstr ""
@@ -12301,16 +12869,15 @@ msgid ""
msgstr ""
#: doc/classes/Color.xml:4
-msgid "Color in RGBA format with some support for ARGB format."
+msgid "Color in RGBA format using floats on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:7
msgid ""
-"A color is represented by red, green, and blue [code](r, g, b)[/code] "
-"components. Additionally, [code]a[/code] represents the alpha component, "
-"often used for transparency. Values are in floating-point and usually range "
-"from 0 to 1. Some properties (such as [member CanvasItem.modulate]) may "
-"accept values greater than 1.\n"
+"A color represented by red, green, blue, and alpha (RGBA) components. The "
+"alpha component is often used for transparency. Values are in floating-point "
+"and usually range from 0 to 1. Some properties (such as CanvasItem.modulate) "
+"may accept values greater than 1 (overbright or HDR colors).\n"
"You can also create a color from standardized color names by using [method "
"@GDScript.ColorN] or directly using the color constants defined here. The "
"standardized color set is based on the [url=https://en.wikipedia.org/wiki/"
@@ -12524,47 +13091,48 @@ msgid ""
msgstr ""
#: doc/classes/Color.xml:280
-msgid "Alpha value (range 0 to 1)."
+msgid ""
+"The color's alpha (transparency) component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:283
-msgid "Alpha value (range 0 to 255)."
+msgid "Wrapper for [member a] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:286
-msgid "Blue value (range 0 to 1)."
+msgid "The color's blue component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:289
-msgid "Blue value (range 0 to 255)."
+msgid "Wrapper for [member b] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:292
-msgid "Green value (range 0 to 1)."
+msgid "The color's green component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:295
-msgid "Green value (range 0 to 255)."
+msgid "Wrapper for [member g] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:298
-msgid "HSV hue value (range 0 to 1)."
+msgid "The HSV hue of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:301
-msgid "Red value (range 0 to 1)."
+msgid "The color's red component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:304
-msgid "Red value (range 0 to 255)."
+msgid "Wrapper for [member r] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:307
-msgid "HSV saturation value (range 0 to 1)."
+msgid "The HSV saturation of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:310
-msgid "HSV value (range 0 to 1)."
+msgid "The HSV value (brightness) of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:315
@@ -14484,23 +15052,35 @@ msgstr ""
#: doc/classes/Control.xml:859
msgid ""
"The node's scale, relative to its [member rect_size]. Change this property "
-"to scale the node around its [member rect_pivot_offset]."
-msgstr ""
-
-#: doc/classes/Control.xml:862
+"to scale the node around its [member rect_pivot_offset]. The Control's "
+"[member hint_tooltip] will also scale according to this value.\n"
+"[b]Note:[/b] This property is mainly intended to be used for animation "
+"purposes. Text inside the Control will look pixelated or blurry when the "
+"Control is scaled. To support multiple resolutions in your project, use an "
+"appropriate viewport stretch mode as described in the [url=https://docs."
+"godotengine.org/en/latest/tutorials/viewports/multiple_resolutions."
+"html]documentation[/url] instead of scaling Controls individually.\n"
+"[b]Note:[/b] If the Control node is a child of a [Container] node, the scale "
+"will be reset to [code]Vector2(1, 1)[/code] when the scene is instanced. To "
+"set the Control's scale when it's instanced, wait for one frame using "
+"[code]yield(get_tree(), \"idle_frame\")[/code] then set its [member "
+"rect_scale] property."
+msgstr ""
+
+#: doc/classes/Control.xml:864
msgid ""
"The size of the node's bounding rectangle, in pixels. [Container] nodes "
"update this property automatically."
msgstr ""
-#: doc/classes/Control.xml:865
+#: doc/classes/Control.xml:867
msgid ""
"Tells the parent [Container] nodes how they should resize and place the node "
"on the X axis. Use one of the [enum SizeFlags] constants to change the "
"flags. See the constants to learn what each does."
msgstr ""
-#: doc/classes/Control.xml:868
+#: doc/classes/Control.xml:870
msgid ""
"If the node and at least one of its neighbours uses the [constant "
"SIZE_EXPAND] size flag, the parent [Container] will let it take more or less "
@@ -14509,181 +15089,181 @@ msgid ""
"space."
msgstr ""
-#: doc/classes/Control.xml:871
+#: doc/classes/Control.xml:873
msgid ""
"Tells the parent [Container] nodes how they should resize and place the node "
"on the Y axis. Use one of the [enum SizeFlags] constants to change the "
"flags. See the constants to learn what each does."
msgstr ""
-#: doc/classes/Control.xml:874
+#: doc/classes/Control.xml:876
msgid ""
"Changing this property replaces the current [Theme] resource this node and "
"all its [Control] children use."
msgstr ""
-#: doc/classes/Control.xml:880
+#: doc/classes/Control.xml:882
msgid "Emitted when the node gains keyboard focus."
msgstr ""
-#: doc/classes/Control.xml:885
+#: doc/classes/Control.xml:887
msgid "Emitted when the node loses keyboard focus."
msgstr ""
-#: doc/classes/Control.xml:892
+#: doc/classes/Control.xml:894
msgid "Emitted when the node receives an [InputEvent]."
msgstr ""
-#: doc/classes/Control.xml:897
+#: doc/classes/Control.xml:899
msgid "Emitted when the node's minimum size changes."
msgstr ""
-#: doc/classes/Control.xml:902
+#: doc/classes/Control.xml:904
msgid ""
"Emitted when the mouse enters the control's [code]Rect[/code] area, provided "
"its [member mouse_filter] lets the event reach it."
msgstr ""
-#: doc/classes/Control.xml:907
+#: doc/classes/Control.xml:909
msgid ""
"Emitted when the mouse leaves the control's [code]Rect[/code] area, provided "
"its [member mouse_filter] lets the event reach it."
msgstr ""
-#: doc/classes/Control.xml:912
+#: doc/classes/Control.xml:914
msgid "Emitted when the control changes size."
msgstr ""
-#: doc/classes/Control.xml:917
+#: doc/classes/Control.xml:919
msgid ""
"Emitted when one of the size flags changes. See [member "
"size_flags_horizontal] and [member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:927
+#: doc/classes/Control.xml:929
msgid "The node cannot grab focus. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:930
+#: doc/classes/Control.xml:932
msgid ""
"The node can only grab focus on mouse clicks. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:933
+#: doc/classes/Control.xml:935
msgid ""
"The node can grab focus on mouse click or using the arrows and the Tab keys "
"on the keyboard. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:936
+#: doc/classes/Control.xml:938
msgid ""
"Sent when the node changes size. Use [member rect_size] to get the new size."
msgstr ""
-#: doc/classes/Control.xml:939
+#: doc/classes/Control.xml:941
msgid "Sent when the mouse pointer enters the node."
msgstr ""
-#: doc/classes/Control.xml:942
+#: doc/classes/Control.xml:944
msgid "Sent when the mouse pointer exits the node."
msgstr ""
-#: doc/classes/Control.xml:945
+#: doc/classes/Control.xml:947
msgid "Sent when the node grabs focus."
msgstr ""
-#: doc/classes/Control.xml:948
+#: doc/classes/Control.xml:950
msgid "Sent when the node loses focus."
msgstr ""
-#: doc/classes/Control.xml:951
+#: doc/classes/Control.xml:953
msgid ""
"Sent when the node's [member theme] changes, right before Godot redraws the "
"control. Happens when you call one of the [code]add_theme_*_override[/code] "
"methods."
msgstr ""
-#: doc/classes/Control.xml:954
+#: doc/classes/Control.xml:956
msgid ""
"Sent when this node is inside a [ScrollContainer] which has begun being "
"scrolled."
msgstr ""
-#: doc/classes/Control.xml:957
+#: doc/classes/Control.xml:959
msgid ""
"Sent when this node is inside a [ScrollContainer] which has stopped being "
"scrolled."
msgstr ""
-#: doc/classes/Control.xml:960
+#: doc/classes/Control.xml:962
msgid ""
"Show the system's arrow mouse cursor when the user hovers the node. Use with "
"[member mouse_default_cursor_shape]."
msgstr ""
-#: doc/classes/Control.xml:963
+#: doc/classes/Control.xml:965
msgid ""
"Show the system's I-beam mouse cursor when the user hovers the node. The I-"
"beam pointer has a shape similar to \"I\". It tells the user they can "
"highlight or insert text."
msgstr ""
-#: doc/classes/Control.xml:966
+#: doc/classes/Control.xml:968
msgid ""
"Show the system's pointing hand mouse cursor when the user hovers the node."
msgstr ""
-#: doc/classes/Control.xml:969
+#: doc/classes/Control.xml:971
msgid "Show the system's cross mouse cursor when the user hovers the node."
msgstr ""
-#: doc/classes/Control.xml:972
+#: doc/classes/Control.xml:974
msgid ""
"Show the system's wait mouse cursor, often an hourglass, when the user "
"hovers the node."
msgstr ""
-#: doc/classes/Control.xml:975
+#: doc/classes/Control.xml:977
msgid ""
"Show the system's busy mouse cursor when the user hovers the node. Often an "
"hourglass."
msgstr ""
-#: doc/classes/Control.xml:978
+#: doc/classes/Control.xml:980
msgid ""
"Show the system's drag mouse cursor, often a closed fist or a cross symbol, "
"when the user hovers the node. It tells the user they're currently dragging "
"an item, like a node in the Scene dock."
msgstr ""
-#: doc/classes/Control.xml:981
+#: doc/classes/Control.xml:983
msgid ""
"Show the system's drop mouse cursor when the user hovers the node. It can be "
"an open hand. It tells the user they can drop an item they're currently "
"grabbing, like a node in the Scene dock."
msgstr ""
-#: doc/classes/Control.xml:984
+#: doc/classes/Control.xml:986
msgid ""
"Show the system's forbidden mouse cursor when the user hovers the node. "
"Often a crossed circle."
msgstr ""
-#: doc/classes/Control.xml:987
+#: doc/classes/Control.xml:989
msgid ""
"Show the system's vertical resize mouse cursor when the user hovers the "
"node. A double-headed vertical arrow. It tells the user they can resize the "
"window or the panel vertically."
msgstr ""
-#: doc/classes/Control.xml:990
+#: doc/classes/Control.xml:992
msgid ""
"Show the system's horizontal resize mouse cursor when the user hovers the "
"node. A double-headed horizontal arrow. It tells the user they can resize "
"the window or the panel horizontally."
msgstr ""
-#: doc/classes/Control.xml:993
+#: doc/classes/Control.xml:995
msgid ""
"Show the system's window resize mouse cursor when the user hovers the node. "
"The cursor is a double-headed arrow that goes from the bottom left to the "
@@ -14691,7 +15271,7 @@ msgid ""
"horizontally and vertically."
msgstr ""
-#: doc/classes/Control.xml:996
+#: doc/classes/Control.xml:998
msgid ""
"Show the system's window resize mouse cursor when the user hovers the node. "
"The cursor is a double-headed arrow that goes from the top left to the "
@@ -14699,93 +15279,93 @@ msgid ""
"they can resize the window or the panel both horizontally and vertically."
msgstr ""
-#: doc/classes/Control.xml:999
+#: doc/classes/Control.xml:1001
msgid ""
"Show the system's move mouse cursor when the user hovers the node. It shows "
"2 double-headed arrows at a 90 degree angle. It tells the user they can move "
"a UI element freely."
msgstr ""
-#: doc/classes/Control.xml:1002
+#: doc/classes/Control.xml:1004
msgid ""
"Show the system's vertical split mouse cursor when the user hovers the node. "
"On Windows, it's the same as [constant CURSOR_VSIZE]."
msgstr ""
-#: doc/classes/Control.xml:1005
+#: doc/classes/Control.xml:1007
msgid ""
"Show the system's horizontal split mouse cursor when the user hovers the "
"node. On Windows, it's the same as [constant CURSOR_HSIZE]."
msgstr ""
-#: doc/classes/Control.xml:1008
+#: doc/classes/Control.xml:1010
msgid ""
"Show the system's help mouse cursor when the user hovers the node, a "
"question mark."
msgstr ""
-#: doc/classes/Control.xml:1011
+#: doc/classes/Control.xml:1013
msgid ""
"Snap all 4 anchors to the top-left of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1014
+#: doc/classes/Control.xml:1016
msgid ""
"Snap all 4 anchors to the top-right of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1017
+#: doc/classes/Control.xml:1019
msgid ""
"Snap all 4 anchors to the bottom-left of the parent control's bounds. Use "
"with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1020
+#: doc/classes/Control.xml:1022
msgid ""
"Snap all 4 anchors to the bottom-right of the parent control's bounds. Use "
"with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1023
+#: doc/classes/Control.xml:1025
msgid ""
"Snap all 4 anchors to the center of the left edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1026
+#: doc/classes/Control.xml:1028
msgid ""
"Snap all 4 anchors to the center of the top edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1029
+#: doc/classes/Control.xml:1031
msgid ""
"Snap all 4 anchors to the center of the right edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1032
+#: doc/classes/Control.xml:1034
msgid ""
"Snap all 4 anchors to the center of the bottom edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1035
+#: doc/classes/Control.xml:1037
msgid ""
"Snap all 4 anchors to the center of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1038
+#: doc/classes/Control.xml:1040
msgid ""
"Snap all 4 anchors to the left edge of the parent control. The left margin "
"becomes relative to the left edge and the top margin relative to the top "
"left corner of the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1041
+#: doc/classes/Control.xml:1043
msgid ""
"Snap all 4 anchors to the top edge of the parent control. The left margin "
"becomes relative to the top left corner, the top margin relative to the top "
@@ -14793,14 +15373,14 @@ msgid ""
"parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1044
+#: doc/classes/Control.xml:1046
msgid ""
"Snap all 4 anchors to the right edge of the parent control. The right margin "
"becomes relative to the right edge and the top margin relative to the top "
"right corner of the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1047
+#: doc/classes/Control.xml:1049
msgid ""
"Snap all 4 anchors to the bottom edge of the parent control. The left margin "
"becomes relative to the bottom left corner, the bottom margin relative to "
@@ -14808,19 +15388,19 @@ msgid ""
"the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1050
+#: doc/classes/Control.xml:1052
msgid ""
"Snap all 4 anchors to a vertical line that cuts the parent control in half. "
"Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1053
+#: doc/classes/Control.xml:1055
msgid ""
"Snap all 4 anchors to a horizontal line that cuts the parent control in "
"half. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1056
+#: doc/classes/Control.xml:1058
msgid ""
"Snap all 4 anchors to the respective corners of the parent control. Set all "
"4 margins to 0 after you applied this preset and the [Control] will fit its "
@@ -14828,30 +15408,30 @@ msgid ""
"editor. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1059
+#: doc/classes/Control.xml:1061
msgid "The control will be resized to its minimum size."
msgstr ""
-#: doc/classes/Control.xml:1062
+#: doc/classes/Control.xml:1064
msgid "The control's width will not change."
msgstr ""
-#: doc/classes/Control.xml:1065
+#: doc/classes/Control.xml:1067
msgid "The control's height will not change."
msgstr ""
-#: doc/classes/Control.xml:1068
+#: doc/classes/Control.xml:1070
msgid "The control's size will not change."
msgstr ""
-#: doc/classes/Control.xml:1071
+#: doc/classes/Control.xml:1073
msgid ""
"Tells the parent [Container] to expand the bounds of this node to fill all "
"the available space without pushing any other node. Use with [member "
"size_flags_horizontal] and [member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1074
+#: doc/classes/Control.xml:1076
msgid ""
"Tells the parent [Container] to let this node take all the available space "
"on the axis you flag. If multiple neighboring nodes are set to expand, "
@@ -14860,13 +15440,13 @@ msgid ""
"[member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1077
+#: doc/classes/Control.xml:1079
msgid ""
"Sets the node's size flags to both fill and expand. See the 2 constants "
"above for more information."
msgstr ""
-#: doc/classes/Control.xml:1080
+#: doc/classes/Control.xml:1082
msgid ""
"Tells the parent [Container] to center the node in itself. It centers the "
"control based on its bounding box, so it doesn't work with the fill or "
@@ -14874,7 +15454,7 @@ msgid ""
"size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1083
+#: doc/classes/Control.xml:1085
msgid ""
"Tells the parent [Container] to align the node with its end, either the "
"bottom or the right edge. It doesn't work with the fill or expand size "
@@ -14882,7 +15462,7 @@ msgid ""
"size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1086
+#: doc/classes/Control.xml:1088
msgid ""
"The control will receive mouse button input events through [method "
"_gui_input] if clicked on. And the control will receive the [signal "
@@ -14891,7 +15471,7 @@ msgid ""
"other controls. This also results in blocking signals in other controls."
msgstr ""
-#: doc/classes/Control.xml:1089
+#: doc/classes/Control.xml:1091
msgid ""
"The control will receive mouse button input events through [method "
"_gui_input] if clicked on. And the control will receive the [signal "
@@ -14903,7 +15483,7 @@ msgid ""
"not be fired."
msgstr ""
-#: doc/classes/Control.xml:1092
+#: doc/classes/Control.xml:1094
msgid ""
"The control will not receive mouse button input events through [method "
"_gui_input]. The control will also not receive the [signal mouse_entered] "
@@ -14912,25 +15492,25 @@ msgid ""
"handled automatically."
msgstr ""
-#: doc/classes/Control.xml:1095
+#: doc/classes/Control.xml:1097
msgid ""
"The control will grow to the left or top to make up if its minimum size is "
"changed to be greater than its current size on the respective axis."
msgstr ""
-#: doc/classes/Control.xml:1098
+#: doc/classes/Control.xml:1100
msgid ""
"The control will grow to the right or bottom to make up if its minimum size "
"is changed to be greater than its current size on the respective axis."
msgstr ""
-#: doc/classes/Control.xml:1101
+#: doc/classes/Control.xml:1103
msgid ""
"The control will grow in both directions equally to make up if its minimum "
"size is changed to be greater than its current size."
msgstr ""
-#: doc/classes/Control.xml:1104
+#: doc/classes/Control.xml:1106
msgid ""
"Snaps one of the 4 anchor's sides to the origin of the node's [code]Rect[/"
"code], in the top left. Use it with one of the [code]anchor_*[/code] member "
@@ -14938,7 +15518,7 @@ msgid ""
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1107
+#: doc/classes/Control.xml:1109
msgid ""
"Snaps one of the 4 anchor's sides to the end of the node's [code]Rect[/"
"code], in the bottom right. Use it with one of the [code]anchor_*[/code] "
@@ -16723,7 +17303,7 @@ msgstr ""
msgid ""
"Returns the [Texture2D] associated with the specified [enum DecalTexture]. "
"This is a convenience method, in most cases you should access the texture "
-"directly. \n"
+"directly.\n"
"For example, instead of [code]albedo_tex = $Decal.get_texture(Decal."
"TEXTURE_ALBEDO)[/code], use [code]albedo_tex = $Decal.texture_albedo[/"
"code].\n"
@@ -16739,7 +17319,7 @@ msgstr ""
msgid ""
"Sets the [Texture2D] associated with the specified [enum DecalTexture]. This "
"is a convenience method, in most cases you should access the texture "
-"directly. \n"
+"directly.\n"
"For example, instead of [code]$Decal.set_texture(Decal.TEXTURE_ALBEDO, "
"albedo_tex)[/code], use [code]$Decal.texture_albedo = albedo_tex[/code].\n"
"One case where this is better than accessing the texture directly is when "
@@ -17088,7 +17668,7 @@ msgstr ""
msgid "The light's shadow rendering algorithm. See [enum ShadowMode]."
msgstr ""
-#: doc/classes/DirectionalLight3D.xml:31 doc/classes/RenderingServer.xml:3254
+#: doc/classes/DirectionalLight3D.xml:31 doc/classes/RenderingServer.xml:3250
msgid ""
"Sets the size of the directional shadow pancake. The pancake offsets the "
"start of the shadow's camera frustum to provide a higher effective depth "
@@ -17162,10 +17742,10 @@ msgstr ""
msgid ""
"Directory type. It is used to manage directories and their content (not "
"restricted to the project folder).\n"
-"When creating a new [Directory], its default opened directory will be "
-"[code]res://[/code]. This may change in the future, so it is advised to "
-"always use [method open] to initialize your [Directory] where you want to "
-"operate, with explicit error checking.\n"
+"When creating a new [Directory], it must be explicitly opened using [method "
+"open] before most methods can be used. However, [method file_exists] and "
+"[method dir_exists] can be used without opening a directory. If so, they use "
+"a path relative to [code]res://[/code].\n"
"Here is an example on how to iterate through the files of a directory:\n"
"[codeblock]\n"
"func dir_contents(path):\n"
@@ -17184,7 +17764,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Directory.xml:27 doc/classes/File.xml:25
+#: doc/classes/Directory.xml:27 doc/classes/File.xml:26
msgid ""
"https://docs.godotengine.org/en/latest/getting_started/step_by_step/"
"filesystem.html"
@@ -17218,41 +17798,43 @@ msgstr ""
#: doc/classes/Directory.xml:65
msgid ""
"Returns whether the target directory exists. The argument can be relative to "
-"the current directory, or an absolute path."
+"the current directory, or an absolute path.\n"
+"If the [Directory] is not open, the path is relative to [code]res://[/code]."
msgstr ""
-#: doc/classes/Directory.xml:74
+#: doc/classes/Directory.xml:75
msgid ""
"Returns whether the target file exists. The argument can be relative to the "
-"current directory, or an absolute path."
+"current directory, or an absolute path.\n"
+"If the [Directory] is not open, the path is relative to [code]res://[/code]."
msgstr ""
-#: doc/classes/Directory.xml:81
+#: doc/classes/Directory.xml:83
msgid ""
"Returns the absolute path to the currently opened directory (e.g. "
"[code]res://folder[/code] or [code]C:\\tmp\\folder[/code])."
msgstr ""
-#: doc/classes/Directory.xml:88
+#: doc/classes/Directory.xml:90
msgid ""
"Returns the currently opened directory's drive index. See [method get_drive] "
"to convert returned index to the name of the drive."
msgstr ""
-#: doc/classes/Directory.xml:97
+#: doc/classes/Directory.xml:99
msgid ""
"On Windows, returns the name of the drive (partition) passed as an argument "
"(e.g. [code]C:[/code]). On other platforms, or if the requested drive does "
"not existed, the method returns an empty String."
msgstr ""
-#: doc/classes/Directory.xml:104
+#: doc/classes/Directory.xml:106
msgid ""
"On Windows, returns the number of drives (partitions) mounted on the current "
"filesystem. On other platforms, the method returns 0."
msgstr ""
-#: doc/classes/Directory.xml:111
+#: doc/classes/Directory.xml:113
msgid ""
"Returns the next element (file or directory) in the current directory "
"(including [code].[/code] and [code]..[/code], unless "
@@ -17263,14 +17845,14 @@ msgid ""
"mandatory in such a case)."
msgstr ""
-#: doc/classes/Directory.xml:119
+#: doc/classes/Directory.xml:121
msgid ""
"On UNIX desktop systems, returns the available space on the current "
"directory's disk. On other platforms, this information is not available and "
"the method returns 0 or -1."
msgstr ""
-#: doc/classes/Directory.xml:130
+#: doc/classes/Directory.xml:132
msgid ""
"Initializes the stream used to list all files and directories using the "
"[method get_next] function, closing the current opened stream if needed. "
@@ -17282,13 +17864,13 @@ msgid ""
"out."
msgstr ""
-#: doc/classes/Directory.xml:139
+#: doc/classes/Directory.xml:141
msgid ""
"Closes the current stream opened with [method list_dir_begin] (whether it "
"has been fully processed with [method get_next] or not does not matter)."
msgstr ""
-#: doc/classes/Directory.xml:148
+#: doc/classes/Directory.xml:150
msgid ""
"Creates a directory. The argument can be relative to the current directory, "
"or an absolute path. The target directory should be placed in an already "
@@ -17297,7 +17879,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:158
+#: doc/classes/Directory.xml:160
msgid ""
"Creates a target directory and all necessary intermediate directories in its "
"path, by calling [method make_dir] recursively. The argument can be relative "
@@ -17305,7 +17887,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:168
+#: doc/classes/Directory.xml:170
msgid ""
"Opens an existing directory of the filesystem. The [code]path[/code] "
"argument can be within the project tree ([code]res://folder[/code]), the "
@@ -17314,7 +17896,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:178
+#: doc/classes/Directory.xml:180
msgid ""
"Deletes the target file or an empty directory. The argument can be relative "
"to the current directory, or an absolute path. If the target directory is "
@@ -17322,7 +17904,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:190
+#: doc/classes/Directory.xml:192
msgid ""
"Renames (move) the [code]from[/code] file to the [code]to[/code] "
"destination. Both arguments should be paths to files, either relative or "
@@ -17363,6 +17945,53 @@ msgid ""
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
+#: doc/classes/DisplayServer.xml:530
+msgid ""
+"Return the greatest scale factor of all screens.\n"
+"[b]Note:[/b] On macOS returned value is [code]2.0[/code] if there is at "
+"least one hiDPI (Retina) screen in the system, and [code]1.0[/code] in all "
+"other cases.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:557
+msgid ""
+"Return the scale factor of the specified screen by index.\n"
+"[b]Note:[/b] On macOS returned value is [code]2.0[/code] for hiDPI (Retina) "
+"screen, and [code]1.0[/code] for all other cases.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:630
+msgid ""
+"Returns the on-screen keyboard's height in pixels. Returns 0 if there is no "
+"keyboard or if it is currently hidden."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:637
+msgid "Hides the virtual keyboard if it is shown, does nothing otherwise."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:656
+msgid ""
+"Shows the virtual keyboard if the platform has one.\n"
+"[code]existing_text[/code] parameter is useful for implementing your own "
+"[LineEdit] or [TextEdit], as it tells the virtual keyboard what text has "
+"already been typed (the virtual keyboard uses it for auto-correct and "
+"predictions).\n"
+"[code]position[/code] parameter is the screen space [Rect2] of the edited "
+"text.\n"
+"[code]multiline[/code] parameter needs to be set to [code]true[/code] to be "
+"able to enter multiple lines of text, as in [TextEdit].\n"
+"[code]max_length[/code] limits the number of characters that can be entered "
+"if different from [code]-1[/code].\n"
+"[code]cursor_start[/code] can optionally define the current text cursor "
+"position if [code]cursor_end[/code] is not set.\n"
+"[code]cursor_start[/code] and [code]cursor_end[/code] can optionally define "
+"the current text selection.\n"
+"[b]Note:[/b] This method is implemented on Android, iOS and UWP."
+msgstr ""
+
#: doc/classes/DTLSServer.xml:4
msgid "Helper class to implement a DTLS server."
msgstr ""
@@ -17483,54 +18112,62 @@ msgstr ""
msgid "Adds a fallback font."
msgstr ""
-#: doc/classes/DynamicFont.xml:35
+#: doc/classes/DynamicFont.xml:33
+msgid ""
+"Returns a string containing all the characters available in the main and all "
+"the fallback fonts.\n"
+"If a given character is included in more than one font, it appears only once "
+"in the returned string."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:43
msgid "Returns the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:42
+#: doc/classes/DynamicFont.xml:50
msgid "Returns the number of fallback fonts."
msgstr ""
-#: doc/classes/DynamicFont.xml:51
+#: doc/classes/DynamicFont.xml:59
msgid ""
"Returns the spacing for the given [code]type[/code] (see [enum SpacingType])."
msgstr ""
-#: doc/classes/DynamicFont.xml:60
+#: doc/classes/DynamicFont.xml:68
msgid "Removes the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:71
+#: doc/classes/DynamicFont.xml:79
msgid "Sets the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:82
+#: doc/classes/DynamicFont.xml:90
msgid ""
"Sets the spacing for [code]type[/code] (see [enum SpacingType]) to "
"[code]value[/code] in pixels (not relative to the font size)."
msgstr ""
-#: doc/classes/DynamicFont.xml:88
+#: doc/classes/DynamicFont.xml:96
msgid "Extra spacing at the bottom in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:91
+#: doc/classes/DynamicFont.xml:99
msgid "Extra character spacing in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:94
+#: doc/classes/DynamicFont.xml:102
msgid "Extra space spacing in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:97
+#: doc/classes/DynamicFont.xml:105
msgid "Extra spacing at the top in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:100
+#: doc/classes/DynamicFont.xml:108
msgid "The font data."
msgstr ""
-#: doc/classes/DynamicFont.xml:103
+#: doc/classes/DynamicFont.xml:111
msgid ""
"The font outline's color.\n"
"[b]Note:[/b] It's recommended to leave this at the default value so that you "
@@ -17539,27 +18176,27 @@ msgid ""
"outline modulate theme item."
msgstr ""
-#: doc/classes/DynamicFont.xml:107
+#: doc/classes/DynamicFont.xml:115
msgid "The font outline's thickness in pixels (not relative to the font size)."
msgstr ""
-#: doc/classes/DynamicFont.xml:110
+#: doc/classes/DynamicFont.xml:118
msgid "The font size in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:115
+#: doc/classes/DynamicFont.xml:123
msgid "Spacing at the top."
msgstr ""
-#: doc/classes/DynamicFont.xml:118
+#: doc/classes/DynamicFont.xml:126
msgid "Spacing at the bottom."
msgstr ""
-#: doc/classes/DynamicFont.xml:121
+#: doc/classes/DynamicFont.xml:129
msgid "Character spacing."
msgstr ""
-#: doc/classes/DynamicFont.xml:124
+#: doc/classes/DynamicFont.xml:132
msgid "Space spacing."
msgstr ""
@@ -17941,7 +18578,12 @@ msgstr ""
msgid "Remitted if a resource is reimported."
msgstr ""
-#: doc/classes/EditorFileSystem.xml:106
+#: doc/classes/EditorFileSystem.xml:100
+msgid ""
+"Emitted if at least one resource is reloaded when the filesystem is scanned."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:107
msgid "Emitted if the source of any imported file changed."
msgstr ""
@@ -17983,29 +18625,43 @@ msgstr ""
msgid "Returns the path to the file at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:86
+#: doc/classes/EditorFileSystemDirectory.xml:70
+msgid ""
+"Returns the base class of the script class defined in the file at index "
+"[code]idx[/code]. If the file doesn't define a script class using the "
+"[code]class_name[/code] syntax, this will return an empty string."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:79
+msgid ""
+"Returns the name of the script class defined in the file at index [code]idx[/"
+"code]. If the file doesn't define a script class using the [code]class_name[/"
+"code] syntax, this will return an empty string."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:88
msgid "Returns the file extension of the file at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:93
+#: doc/classes/EditorFileSystemDirectory.xml:95
msgid "Returns the name of this directory."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:100
+#: doc/classes/EditorFileSystemDirectory.xml:102
msgid ""
"Returns the parent directory for this directory or [code]null[/code] if "
"called on a directory at [code]res://[/code] or [code]user://[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:107
+#: doc/classes/EditorFileSystemDirectory.xml:109
msgid "Returns the path to this directory."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:116
+#: doc/classes/EditorFileSystemDirectory.xml:118
msgid "Returns the subdirectory at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:123
+#: doc/classes/EditorFileSystemDirectory.xml:125
msgid "Returns the number of subdirectories in this directory."
msgstr ""
@@ -18096,45 +18752,72 @@ msgstr ""
msgid "Gets the unique name of the importer."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:92
+#: doc/classes/EditorImportPlugin.xml:86
+msgid ""
+"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. For example:\n"
+"[codeblock]\n"
+"func get_option_visibility(option, options):\n"
+" # Only show the lossy quality setting if the compression mode is set to "
+"\"Lossy\".\n"
+" if option == \"compress/lossy_quality\" and options.has(\"compress/mode"
+"\"):\n"
+" return int(options[\"compress/mode\"]) == COMPRESS_LOSSY\n"
+"\n"
+" return true\n"
+"[/codeblock]\n"
+"Return [code]true[/code] to make all options always visible."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:102
msgid ""
"Gets the number of initial presets defined by the plugin. Use [method "
"get_import_options] to get the default options for the preset and [method "
"get_preset_name] to get the name of the preset."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:101
+#: doc/classes/EditorImportPlugin.xml:111
msgid "Gets the name of the options preset at this index."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:108
+#: doc/classes/EditorImportPlugin.xml:118
msgid ""
"Gets the priority of this plugin for the recognized extension. Higher "
"priority plugins will be preferred. The default priority is [code]1.0[/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:115
+#: doc/classes/EditorImportPlugin.xml:125
msgid ""
"Gets the list of file extensions to associate with this loader (case-"
"insensitive). e.g. [code][\"obj\"][/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:122
+#: doc/classes/EditorImportPlugin.xml:132
msgid ""
"Gets the Godot resource type associated with this loader. e.g. [code]\"Mesh"
"\"[/code] or [code]\"Animation\"[/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:129
+#: doc/classes/EditorImportPlugin.xml:139
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:136
+#: doc/classes/EditorImportPlugin.xml:146
msgid "Gets the name to display in the import window."
msgstr ""
+#: doc/classes/EditorImportPlugin.xml:163
+msgid ""
+"Imports [code]source_file[/code] into [code]save_path[/code] with the import "
+"[code]options[/code] specified. The [code]platform_variants[/code] and "
+"[code]gen_files[/code] arrays will be modified by this function.\n"
+"This method must be overridden to do the actual importing work. See this "
+"class' description for an example of overriding this method."
+msgstr ""
+
#: doc/classes/EditorInspector.xml:4
msgid "A tab used to edit properties of the selected node."
msgstr ""
@@ -18150,6 +18833,58 @@ msgid ""
"the singleton using [method EditorInterface.get_inspector]."
msgstr ""
+#: doc/classes/EditorInspector.xml:17
+msgid ""
+"Refreshes the inspector.\n"
+"[b]Note:[/b] To save on CPU resources, calling this method will do nothing "
+"if the time specified in [code]docks/property_editor/auto_refresh_interval[/"
+"code] editor setting hasn't passed yet since this method was last called. "
+"(By default, this interval is set to 0.3 seconds.)"
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:30
+msgid ""
+"Emitted when the Edit button of an [Object] has been pressed in the "
+"inspector. This is mainly used in the remote scene tree inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:37
+msgid "Emitted when a property is removed from the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:44
+msgid "Emitted when a property is edited in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:51
+msgid ""
+"Emitted when a property is keyed in the inspector. Properties can be keyed "
+"by clicking the \"key\" icon next to a property when the Animation panel is "
+"toggled."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:58
+msgid "Emitted when a property is selected in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:67
+msgid ""
+"Emitted when a boolean property is toggled in the inspector.\n"
+"[b]Note:[/b] This signal is never emitted if the internal [code]autoclear[/"
+"code] property enabled. Since this property is always enabled in the editor "
+"inspector, this signal is never emitted by the editor itself."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:77
+msgid "Emitted when a resource is selected in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:82
+msgid ""
+"Emitted when a property that requires a restart to be applied is edited in "
+"the inspector. This is only used in the Project Settings and Editor Settings."
+msgstr ""
+
#: doc/classes/EditorInspectorPlugin.xml:4
msgid "Plugin for adding custom property editors on inspector."
msgstr ""
@@ -18228,91 +18963,164 @@ msgstr ""
#: doc/classes/EditorInterface.xml:26
msgid ""
-"Returns the main container of Godot editor's window. You can use it, for "
-"example, to retrieve the size of the container and place your controls "
+"Returns the main container of Godot editor's window. For example, you can "
+"use it to retrieve the size of the container and place your controls "
"accordingly."
msgstr ""
-#: doc/classes/EditorInterface.xml:39
-msgid "Returns the edited (current) scene's root [Node]."
+#: doc/classes/EditorInterface.xml:33
+msgid "Returns the current path being viewed in the [FileSystemDock]."
msgstr ""
-#: doc/classes/EditorInterface.xml:46
-msgid "Returns the [EditorSettings]."
+#: doc/classes/EditorInterface.xml:40
+msgid "Returns the edited (current) scene's root [Node]."
msgstr ""
-#: doc/classes/EditorInterface.xml:53
-msgid "Returns the editor [Viewport]."
+#: doc/classes/EditorInterface.xml:47
+#, fuzzy
+msgid "Returns the editor's [EditorSettings] instance."
+msgstr "Возвращает длину вектора."
+
+#: doc/classes/EditorInterface.xml:54
+msgid ""
+"Returns the main editor control. Use this as a parent for main screens.\n"
+"[b]Note:[/b] This returns the main editor control containing the whole "
+"editor, not the 2D or 3D viewports specifically."
msgstr ""
-#: doc/classes/EditorInterface.xml:72
+#: doc/classes/EditorInterface.xml:62
+#, fuzzy
+msgid "Returns the editor's [FileSystemDock] instance."
+msgstr "Возвращает длину вектора."
+
+#: doc/classes/EditorInterface.xml:69
+#, fuzzy
+msgid "Returns the editor's [EditorInspector] instance."
+msgstr "Возвращает длину вектора."
+
+#: doc/classes/EditorInterface.xml:76
msgid "Returns an [Array] with the file paths of the currently opened scenes."
msgstr ""
-#: doc/classes/EditorInterface.xml:79
-msgid "Returns the [EditorFileSystem]."
+#: doc/classes/EditorInterface.xml:83
+msgid ""
+"Returns the name of the scene that is being played. If no scene is currently "
+"being played, returns an empty string."
msgstr ""
-#: doc/classes/EditorInterface.xml:86
-msgid "Returns the [EditorResourcePreview]."
-msgstr ""
+#: doc/classes/EditorInterface.xml:90
+#, fuzzy
+msgid "Returns the editor's [EditorFileSystem] instance."
+msgstr "Возвращает длину вектора."
-#: doc/classes/EditorInterface.xml:93
-msgid "Returns the [ScriptEditor]."
+#: doc/classes/EditorInterface.xml:97
+msgid "Returns the editor's [EditorResourcePreview] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:106
-msgid "Returns the [EditorSelection]."
+#: doc/classes/EditorInterface.xml:104
+#, fuzzy
+msgid "Returns the editor's [ScriptEditor] instance."
+msgstr "Возвращает длину вектора."
+
+#: doc/classes/EditorInterface.xml:111
+msgid ""
+"Returns the path of the directory currently selected in the "
+"[FileSystemDock]. If a file is selected, its base directory will be returned "
+"using [method String.get_base_dir] instead."
msgstr ""
-#: doc/classes/EditorInterface.xml:117
+#: doc/classes/EditorInterface.xml:118
+#, fuzzy
+msgid "Returns the editor's [EditorSelection] instance."
+msgstr "Возвращает длину вектора."
+
+#: doc/classes/EditorInterface.xml:129
msgid ""
-"Shows the given property on the given [code]object[/code] in the Editor's "
+"Shows the given property on the given [code]object[/code] in the editor's "
"Inspector dock."
msgstr ""
-#: doc/classes/EditorInterface.xml:126
+#: doc/classes/EditorInterface.xml:136
msgid ""
-"Returns the enabled status of a plugin. The plugin name is the same as its "
-"directory name."
+"Returns [code]true[/code] if a scene is currently being played, [code]false[/"
+"code] otherwise. Paused scenes are considered as being played."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:145
+#, fuzzy
+msgid ""
+"Returns [code]true[/code] if the specified [code]plugin[/code] is enabled. "
+"The plugin name is the same as its directory name."
msgstr ""
+"Возвращает [code]true[/code] еÑли [code]s[/code] равно нулю или почти равно "
+"нулю."
-#: doc/classes/EditorInterface.xml:137
+#: doc/classes/EditorInterface.xml:156
msgid ""
"Returns mesh previews rendered at the given size as an [Array] of "
"[Texture2D]s."
msgstr ""
-#: doc/classes/EditorInterface.xml:146
+#: doc/classes/EditorInterface.xml:165
msgid "Opens the scene at the given path."
msgstr ""
-#: doc/classes/EditorInterface.xml:155
+#: doc/classes/EditorInterface.xml:172
+msgid "Plays the currently active scene."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:181
+msgid "Plays the scene specified by its filepath."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:188
+msgid "Plays the main scene."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:197
msgid "Reloads the scene at the given path."
msgstr ""
-#: doc/classes/EditorInterface.xml:162
+#: doc/classes/EditorInterface.xml:204
msgid ""
"Saves the scene. Returns either [code]OK[/code] or [code]ERR_CANT_CREATE[/"
"code] (see [@GlobalScope] constants)."
msgstr ""
-#: doc/classes/EditorInterface.xml:173
+#: doc/classes/EditorInterface.xml:215
msgid "Saves the scene as a file at [code]path[/code]."
msgstr ""
-#: doc/classes/EditorInterface.xml:182
+#: doc/classes/EditorInterface.xml:224
msgid ""
"Selects the file, with the path provided by [code]file[/code], in the "
"FileSystem dock."
msgstr ""
-#: doc/classes/EditorInterface.xml:201
+#: doc/classes/EditorInterface.xml:233
+msgid ""
+"Sets the editor's current main screen to the one specified in [code]name[/"
+"code]. [code]name[/code] must match the text of the tab in question exactly "
+"([code]2D[/code], [code]3D[/code], [code]Script[/code], [code]AssetLib[/"
+"code])."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:244
msgid ""
"Sets the enabled status of a plugin. The plugin name is the same as its "
"directory name."
msgstr ""
+#: doc/classes/EditorInterface.xml:251
+msgid "Stops the scene that is currently playing."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:257
+msgid ""
+"If [code]true[/code], enables distraction-free mode which hides side docks "
+"to increase the space available for the main view."
+msgstr ""
+
#: doc/classes/EditorNode3DGizmo.xml:4
msgid "Custom gizmo for editing Node3D objects."
msgstr ""
@@ -18324,14 +19132,20 @@ msgid ""
"information."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:26
+#: doc/classes/EditorNode3DGizmo.xml:18
+msgid ""
+"Adds the specified [code]segments[/code] to the gizmo's collision shape for "
+"picking. Call this function during [method redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:27
msgid ""
"Adds collision triangles to the gizmo for picking. A [TriangleMesh] can be "
"generated from a regular [Mesh] too. Call this function during [method "
"redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:41
+#: doc/classes/EditorNode3DGizmo.xml:42
msgid ""
"Adds a list of handles (points) which can be used to deform the object being "
"edited.\n"
@@ -18339,20 +19153,33 @@ msgid ""
"handles. Call this function during [method redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:57
+#: doc/classes/EditorNode3DGizmo.xml:58
msgid ""
"Adds lines to the gizmo (as sets of 2 points), with a given material. The "
"lines are used for visualizing the gizmo. Call this function during [method "
"redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:84
+#: doc/classes/EditorNode3DGizmo.xml:73
+msgid ""
+"Adds a mesh to the gizmo with the specified [code]billboard[/code] state, "
+"[code]skeleton[/code] and [code]material[/code]. If [code]billboard[/code] "
+"is [code]true[/code], the mesh will rotate to always face the camera. Call "
+"this function during [method redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:86
msgid ""
"Adds an unscaled billboard for visualization. Call this function during "
"[method redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:103
+#: doc/classes/EditorNode3DGizmo.xml:93
+msgid ""
+"Removes everything in the gizmo including meshes, collisions and handles."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:106
msgid ""
"Commit a handle being edited (handles must have been previously added by "
"[method add_handles]).\n"
@@ -18360,40 +19187,45 @@ msgid ""
"restore the edited value to the original is provided."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:113
+#: doc/classes/EditorNode3DGizmo.xml:116
msgid ""
"Gets the name of an edited handle (handles must have been previously added "
"by [method add_handles]).\n"
"Handles can be named for reference to the user when editing."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:123
+#: doc/classes/EditorNode3DGizmo.xml:126
msgid ""
"Gets actual value of a handle. This value can be anything and used for "
"eventually undoing the motion when calling [method commit_handle]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:130
+#: doc/classes/EditorNode3DGizmo.xml:133
msgid ""
"Returns the [EditorNode3DGizmoPlugin] that owns this gizmo. It's useful to "
"retrieve materials using [method EditorNode3DGizmoPlugin.get_material]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:137
+#: doc/classes/EditorNode3DGizmo.xml:140
msgid "Returns the Node3D node associated with this gizmo."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:146
-msgid "Gets whether a handle is highlighted or not."
+#: doc/classes/EditorNode3DGizmo.xml:149
+#, fuzzy
+msgid ""
+"Returns [code]true[/code] if the handle at index [code]index[/code] is "
+"highlighted by being hovered with the mouse."
msgstr ""
+"Возвращает [code]true[/code] еÑли [code]a[/code] и [code]b[/code] "
+"приблизительно равны друг другу."
-#: doc/classes/EditorNode3DGizmo.xml:153
+#: doc/classes/EditorNode3DGizmo.xml:156
msgid ""
-"This function is called when the Node3D this gizmo refers to changes (the "
+"This function is called when the [Node3D] this gizmo refers to changes (the "
"[method Node3D.update_gizmo] is called)."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:166
+#: doc/classes/EditorNode3DGizmo.xml:169
msgid ""
"This function is used when the user drags a gizmo handle (previously added "
"with [method add_handles]) in screen coordinates.\n"
@@ -18401,6 +19233,18 @@ msgid ""
"raycasts."
msgstr ""
+#: doc/classes/EditorNode3DGizmo.xml:179
+msgid ""
+"Sets the gizmo's hidden state. If [code]true[/code], the gizmo will be "
+"hidden. If [code]false[/code], it will be shown."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:188
+msgid ""
+"Sets the reference [Node3D] node for the gizmo. [code]node[/code] must "
+"inherit from [Node3D]."
+msgstr ""
+
#: doc/classes/EditorNode3DGizmoPlugin.xml:4
msgid "Used by the editor to define Node3D gizmo types."
msgstr ""
@@ -18493,7 +19337,17 @@ msgid ""
"visibility menu."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:150
+#: doc/classes/EditorNode3DGizmoPlugin.xml:142
+msgid ""
+"Override this method to set the gizmo's priority. Higher values correspond "
+"to higher priority. If a gizmo with higher priority conflicts with another "
+"gizmo, only the gizmo with higher priority will be used.\n"
+"All built-in editor gizmos return a priority of [code]-1[/code]. If not "
+"overridden, this method will return [code]0[/code], which means custom "
+"gizmos will automatically override built-in gizmos."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:152
msgid ""
"Override this method to define which Node3D nodes have a gizmo from this "
"plugin. Whenever a [Node3D] node is added to a scene this method is called, "
@@ -18501,25 +19355,25 @@ msgid ""
"assigned and is added to this plugin's list of active gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:161
+#: doc/classes/EditorNode3DGizmoPlugin.xml:163
msgid ""
"Gets whether a handle is highlighted or not. Called for this plugin's active "
"gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:168
+#: doc/classes/EditorNode3DGizmoPlugin.xml:170
msgid ""
"Override this method to define whether Node3D with this gizmo should be "
"selecteble even when the gizmo is hidden."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:177
+#: doc/classes/EditorNode3DGizmoPlugin.xml:179
msgid ""
"Callback to redraw the provided gizmo. Called for this plugin's active "
"gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:192
+#: doc/classes/EditorNode3DGizmoPlugin.xml:194
msgid ""
"Update the value of a handle after it has been updated. Called for this "
"plugin's active gizmos."
@@ -18606,7 +19460,13 @@ msgid ""
"should be cleaned up using [code]remove_tool_menu_item(name)[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:149
+#: doc/classes/EditorPlugin.xml:151
+msgid ""
+"Registers a custom translation parser plugin for extracting translatable "
+"strings from custom files."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:158
msgid ""
"This method is called when the editor is about to save the project, switch "
"to another tab, etc. It asks the plugin to apply any pending state changes "
@@ -18615,32 +19475,32 @@ msgid ""
"must apply the shader code being written by the user to the object."
msgstr ""
-#: doc/classes/EditorPlugin.xml:163
+#: doc/classes/EditorPlugin.xml:172
msgid ""
"Clear all the state and reset the object being edited to zero. This ensures "
"your plugin does not keep editing a currently existing node, or a node from "
"the wrong scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:170
+#: doc/classes/EditorPlugin.xml:179
msgid ""
"Called by the engine when the user disables the [EditorPlugin] in the Plugin "
"tab of the project settings window."
msgstr ""
-#: doc/classes/EditorPlugin.xml:179
+#: doc/classes/EditorPlugin.xml:188
msgid ""
"This function is used for plugins that edit specific object types (nodes or "
"resources). It requests the editor to edit the given object."
msgstr ""
-#: doc/classes/EditorPlugin.xml:186
+#: doc/classes/EditorPlugin.xml:195
msgid ""
"Called by the engine when the user enables the [EditorPlugin] in the Plugin "
"tab of the project settings window."
msgstr ""
-#: doc/classes/EditorPlugin.xml:211
+#: doc/classes/EditorPlugin.xml:220
msgid ""
"Called when there is a root node in the current edited scene, [method "
"handles] is implemented and an [InputEvent] happens in the 2D viewport. "
@@ -18665,7 +19525,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:237
+#: doc/classes/EditorPlugin.xml:246
msgid ""
"Called when there is a root node in the current edited scene, [method "
"handles] is implemented and an [InputEvent] happens in the 3D viewport. "
@@ -18690,20 +19550,20 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:259
+#: doc/classes/EditorPlugin.xml:268
msgid ""
"This is for editors that edit script-based objects. You can return a list of "
"breakpoints in the format ([code]script:line[/code]), for example: "
"[code]res://path_to_script.gd:25[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:266
+#: doc/classes/EditorPlugin.xml:275
msgid ""
"Returns the [EditorInterface] object that gives you control over Godot "
"editor's window and its functionalities."
msgstr ""
-#: doc/classes/EditorPlugin.xml:273
+#: doc/classes/EditorPlugin.xml:282
msgid ""
"Override this method in your plugin to return a [Texture2D] in order to give "
"it an icon.\n"
@@ -18721,7 +19581,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:289
+#: doc/classes/EditorPlugin.xml:298
msgid ""
"Override this method in your plugin to provide the name of the plugin when "
"displayed in the Godot editor.\n"
@@ -18729,33 +19589,33 @@ msgid ""
"of the \"2D\", \"3D\", \"Script\", and \"AssetLib\" buttons."
msgstr ""
-#: doc/classes/EditorPlugin.xml:297
+#: doc/classes/EditorPlugin.xml:306
msgid ""
"Gets the Editor's dialogue used for making scripts.\n"
"[b]Note:[/b] Users can configure it before use."
msgstr ""
-#: doc/classes/EditorPlugin.xml:305
+#: doc/classes/EditorPlugin.xml:314
msgid ""
"Gets the state of your plugin editor. This is used when saving the scene (so "
"state is kept when opening it again) and for switching tabs (so state can be "
"restored when the tab returns)."
msgstr ""
-#: doc/classes/EditorPlugin.xml:312
+#: doc/classes/EditorPlugin.xml:321
msgid ""
"Gets the undo/redo object. Most actions in the editor can be undoable, so "
"use this object to make sure this happens when it's worth it."
msgstr ""
-#: doc/classes/EditorPlugin.xml:321
+#: doc/classes/EditorPlugin.xml:330
msgid ""
"Gets the GUI layout of the plugin. This is used to save the project's editor "
"layout when [method queue_save_layout] is called or the editor layout was "
"changed(For example changing the position of a dock)."
msgstr ""
-#: doc/classes/EditorPlugin.xml:330
+#: doc/classes/EditorPlugin.xml:339
msgid ""
"Implement this function if your plugin edits a specific type of object "
"(Resource or Node). If you return [code]true[/code], then you will get the "
@@ -18765,14 +19625,14 @@ msgid ""
"be called too."
msgstr ""
-#: doc/classes/EditorPlugin.xml:337
+#: doc/classes/EditorPlugin.xml:346
msgid ""
"Returns [code]true[/code] if this is a main screen editor plugin (it goes in "
"the workspace selector together with [b]2D[/b], [b]3D[/b], [b]Script[/b] and "
"[b]AssetLib[/b])."
msgstr ""
-#: doc/classes/EditorPlugin.xml:360
+#: doc/classes/EditorPlugin.xml:369
msgid ""
"This function will be called when the editor is requested to become visible. "
"It is used for plugins that edit a specific object type.\n"
@@ -18780,85 +19640,89 @@ msgid ""
"manually."
msgstr ""
-#: doc/classes/EditorPlugin.xml:368
+#: doc/classes/EditorPlugin.xml:377
msgid "Queue save the project's editor layout."
msgstr ""
-#: doc/classes/EditorPlugin.xml:377
+#: doc/classes/EditorPlugin.xml:386
msgid "Removes an Autoload [code]name[/code] from the list."
msgstr ""
-#: doc/classes/EditorPlugin.xml:386
+#: doc/classes/EditorPlugin.xml:395
msgid ""
"Removes the control from the bottom panel. You have to manually [method Node."
"queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:397
+#: doc/classes/EditorPlugin.xml:406
msgid ""
"Removes the control from the specified container. You have to manually "
"[method Node.queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:406
+#: doc/classes/EditorPlugin.xml:415
msgid ""
"Removes the control from the dock. You have to manually [method Node."
"queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:415
+#: doc/classes/EditorPlugin.xml:424
msgid "Removes a custom type added by [method add_custom_type]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:464
+#: doc/classes/EditorPlugin.xml:473
msgid "Removes a menu [code]name[/code] from [b]Project > Tools[/b]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:471
+#: doc/classes/EditorPlugin.xml:482
+msgid "Removes a registered custom translation parser plugin."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:489
msgid ""
"This method is called after the editor saves the project or when it's "
"closed. It asks the plugin to save edited external scenes/resources."
msgstr ""
-#: doc/classes/EditorPlugin.xml:484
+#: doc/classes/EditorPlugin.xml:502
msgid ""
"Use this method if you always want to receive inputs from 3D view screen "
"inside [method forward_spatial_gui_input]. It might be especially usable if "
"your plugin will want to use raycast in the scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:493
+#: doc/classes/EditorPlugin.xml:511
msgid "Restore the state saved by [method get_state]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:502
+#: doc/classes/EditorPlugin.xml:520
msgid "Restore the plugin GUI layout saved by [method get_window_layout]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:509
+#: doc/classes/EditorPlugin.xml:527
msgid "Updates the overlays of the editor (2D/3D) viewport."
msgstr ""
-#: doc/classes/EditorPlugin.xml:518
+#: doc/classes/EditorPlugin.xml:536
msgid ""
"Emitted when user changes the workspace ([b]2D[/b], [b]3D[/b], [b]Script[/"
"b], [b]AssetLib[/b]). Also works with custom screens defined by plugins."
msgstr ""
-#: doc/classes/EditorPlugin.xml:531
+#: doc/classes/EditorPlugin.xml:549
msgid ""
"Emitted when the scene is changed in the editor. The argument will return "
"the root node of the scene that has just become active. If this scene is new "
"and empty, the argument will be [code]null[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:538
+#: doc/classes/EditorPlugin.xml:556
msgid ""
"Emitted when user closes a scene. The argument is file path to a closed "
"scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:584
+#: doc/classes/EditorPlugin.xml:602
msgid "Represents the size of the [enum DockSlot] enum."
msgstr ""
@@ -18913,64 +19777,83 @@ msgid "When this virtual function is called, you must update your editor."
msgstr ""
#: doc/classes/EditorProperty.xml:76
-msgid "Used by the inspector, set when property is checkable."
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is "
+"checkable."
msgstr ""
#: doc/classes/EditorProperty.xml:79
-msgid "Used by the inspector, when the property is checked."
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is checked."
msgstr ""
-#: doc/classes/EditorProperty.xml:84
-msgid "Used by the inspector, when the property must draw with error color."
+#: doc/classes/EditorProperty.xml:82
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property can be "
+"deleted by the user."
msgstr ""
-#: doc/classes/EditorProperty.xml:87
-msgid "Used by the inspector, when the property can add keys for animation."
+#: doc/classes/EditorProperty.xml:85
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property must draw "
+"with error color. This is used for editable children's properties."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:88
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property can add "
+"keys for animation."
msgstr ""
-#: doc/classes/EditorProperty.xml:90
-msgid "Sets this property to change the label (if you want to show one)."
+#: doc/classes/EditorProperty.xml:91
+msgid "Set this property to change the label (if you want to show one)."
msgstr ""
-#: doc/classes/EditorProperty.xml:93
-msgid "Used by the inspector, when the property is read-only."
+#: doc/classes/EditorProperty.xml:94
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is read-"
+"only."
msgstr ""
-#: doc/classes/EditorProperty.xml:103
+#: doc/classes/EditorProperty.xml:104
msgid ""
"Emit it if you want multiple properties modified at the same time. Do not "
"use if added via [method EditorInspectorPlugin.parse_property]."
msgstr ""
-#: doc/classes/EditorProperty.xml:112
+#: doc/classes/EditorProperty.xml:113
msgid "Used by sub-inspectors. Emit it if what was selected was an Object ID."
msgstr ""
-#: doc/classes/EditorProperty.xml:121
+#: doc/classes/EditorProperty.xml:122
msgid ""
"Do not emit this manually, use the [method emit_changed] method instead."
msgstr ""
-#: doc/classes/EditorProperty.xml:130
+#: doc/classes/EditorProperty.xml:131
msgid "Emitted when a property was checked. Used internally."
msgstr ""
-#: doc/classes/EditorProperty.xml:143
+#: doc/classes/EditorProperty.xml:138
+msgid "Emitted when a property was deleted. Used internally."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:145
msgid ""
"Emit it if you want to add this value as an animation key (check for keying "
"being enabled first)."
msgstr ""
-#: doc/classes/EditorProperty.xml:152
+#: doc/classes/EditorProperty.xml:154
msgid "Emit it if you want to key a property with a single value."
msgstr ""
-#: doc/classes/EditorProperty.xml:161
+#: doc/classes/EditorProperty.xml:163
msgid ""
"If you want a sub-resource to be edited, emit this signal with the resource."
msgstr ""
-#: doc/classes/EditorProperty.xml:170
+#: doc/classes/EditorProperty.xml:172
msgid "Emitted when selected. Used internally."
msgstr ""
@@ -19255,17 +20138,26 @@ msgstr ""
msgid ""
"Object that holds the project-independent editor settings. These settings "
"are generally visible in the [b]Editor > Editor Settings[/b] menu.\n"
-"Accessing the settings is done by using the regular [Object] API, such as:\n"
-"[codeblock]\n"
-"settings.set(prop,value)\n"
-"settings.get(prop)\n"
-"list_of_settings = settings.get_property_list()\n"
+"Property names use slash delimiters to distinguish sections. Setting values "
+"can be of any [Variant] type. It's recommended to use [code]snake_case[/"
+"code] for editor settings to be consistent with the Godot editor itself.\n"
+"Accessing the settings can be done using the following methods, such as:\n"
+"[codeblock]\n"
+"# `settings.set(\"some/property\", value)` also works as this class "
+"overrides `_set()` internally.\n"
+"settings.set_setting(\"some/property\",value)\n"
+"\n"
+"# `settings.get(\"some/property\", value)` also works as this class "
+"overrides `_get()` internally.\n"
+"settings.get_setting(\"some/property\")\n"
+"\n"
+"var list_of_settings = settings.get_property_list()\n"
"[/codeblock]\n"
"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
"the singleton using [method EditorInterface.get_editor_settings]."
msgstr ""
-#: doc/classes/EditorSettings.xml:25
+#: doc/classes/EditorSettings.xml:30
msgid ""
"Adds a custom property info to a property. The dictionary must contain:\n"
"- [code]name[/code]: [String] (the name of the property)\n"
@@ -19287,52 +20179,176 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorSettings.xml:50
-msgid "Erase a given setting (pass full property path)."
+#: doc/classes/EditorSettings.xml:55
+msgid "Erases the setting whose name is specified by [code]property[/code]."
msgstr ""
-#: doc/classes/EditorSettings.xml:57
-msgid "Gets the list of favorite files and directories for this project."
+#: doc/classes/EditorSettings.xml:62
+msgid "Returns the list of favorite files and directories for this project."
msgstr ""
-#: doc/classes/EditorSettings.xml:76
+#: doc/classes/EditorSettings.xml:75
msgid ""
-"Gets the specific project settings path. Projects all have a unique sub-"
-"directory inside the settings path where project specific settings are saved."
+"Returns project-specific metadata for the [code]section[/code] and "
+"[code]key[/code] specified. If the metadata doesn't exist, [code]default[/"
+"code] will be returned instead. See also [method set_project_metadata]."
msgstr ""
-#: doc/classes/EditorSettings.xml:83
+#: doc/classes/EditorSettings.xml:82
msgid ""
-"Gets the list of recently visited folders in the file dialog for this "
+"Returns the project-specific settings path. Projects all have a unique "
+"subdirectory inside the settings path where project-specific settings are "
+"saved."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:89
+msgid ""
+"Returns the list of recently visited folders in the file dialog for this "
"project."
msgstr ""
#: doc/classes/EditorSettings.xml:98
msgid ""
+"Returns the value of the setting specified by [code]name[/code]. This is "
+"equivalent to using [method Object.get] on the EditorSettings instance."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:105
+msgid ""
"Gets the global settings path for the engine. Inside this path, you can find "
"some standard paths such as:\n"
"[code]settings/tmp[/code] - Used for temporary storage of files\n"
"[code]settings/templates[/code] - Where export templates are located"
msgstr ""
-#: doc/classes/EditorSettings.xml:133
+#: doc/classes/EditorSettings.xml:116
+#, fuzzy
+msgid ""
+"Returns [code]true[/code] if the setting specified by [code]name[/code] "
+"exists, [code]false[/code] otherwise."
+msgstr ""
+"Возвращает [code]true[/code] еÑли [code]a[/code] и [code]b[/code] "
+"приблизительно равны друг другу."
+
+#: doc/classes/EditorSettings.xml:125
+msgid ""
+"Returns [code]true[/code] if the setting specified by [code]name[/code] can "
+"have its value reverted to the default value, [code]false[/code] otherwise. "
+"When this method returns [code]true[/code], a Revert button will display "
+"next to the setting in the Editor Settings."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:134
+msgid ""
+"Returns the default value of the setting specified by [code]name[/code]. "
+"This is the value that would be applied when clicking the Revert button in "
+"the Editor Settings."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:143
msgid "Sets the list of favorite files and directories for this project."
msgstr ""
-#: doc/classes/EditorSettings.xml:166
+#: doc/classes/EditorSettings.xml:156
+msgid ""
+"Sets the initial value of the setting specified by [code]name[/code] to "
+"[code]value[/code]. This is used to provide a value for the Revert button in "
+"the Editor Settings. If [code]update_current[/code] is true, the current "
+"value of the setting will be set to [code]value[/code] as well."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:169
+msgid ""
+"Sets project-specific metadata with the [code]section[/code], [code]key[/"
+"code] and [code]data[/code] specified. This metadata is stored outside the "
+"project folder and therefore won't be checked into version control. See also "
+"[method get_project_metadata]."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:178
msgid ""
"Sets the list of recently visited folders in the file dialog for this "
"project."
msgstr ""
-#: doc/classes/EditorSettings.xml:183
-msgid "Emitted when editor settings change."
+#: doc/classes/EditorSettings.xml:189
+msgid ""
+"Sets the [code]value[/code] of the setting specified by [code]name[/code]. "
+"This is equivalent to using [method Object.set] on the EditorSettings "
+"instance."
msgstr ""
-#: doc/classes/EditorSettings.xml:189
+#: doc/classes/EditorSettings.xml:196
+msgid "Emitted after any editor setting has changed."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:202
msgid ""
-"Emitted when editor settings change. It used by various editor plugins to "
-"update their visuals on theme changes or logic on configuration changes."
+"Emitted after any editor setting has changed. It's used by various editor "
+"plugins to update their visuals on theme changes or logic on configuration "
+"changes."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:4
+msgid ""
+"Plugin for adding custom parsers to extract strings that are to be "
+"translated from custom files (.csv, .json etc.)."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:7
+msgid ""
+"Plugins are registered via [method EditorPlugin."
+"add_translation_parser_plugin] method. To define the parsing and string "
+"extraction logic, override the [method parse_file] method in script.\n"
+"The extracted strings will be written into a POT file selected by user under "
+"\"POT Generation\" in \"Localization\" tab in \"Project Settings\" menu.\n"
+"Below shows an example of a custom parser that extracts strings in a CSV "
+"file to write into a POT.\n"
+"[codeblock]\n"
+"tool\n"
+"extends EditorTranslationParserPlugin\n"
+"\n"
+"\n"
+"func parse_file(path, extracted_strings):\n"
+" var file = File.new()\n"
+" file.open(path, File.READ)\n"
+" var text = file.get_as_text()\n"
+" var split_strs = text.split(\",\", false, 0)\n"
+" for s in split_strs:\n"
+" extracted_strings.append(s)\n"
+" #print(\"Extracted string: \" + s)\n"
+"\n"
+"\n"
+"func get_recognized_extensions():\n"
+" return [\"csv\"]\n"
+"[/codeblock]\n"
+"[b]Note:[/b] If you override parsing logic for standard script types "
+"(GDScript, C#, etc.), it would be better to load the [code]path[/code] "
+"argument using [method ResourceLoader.load]. This is because built-in "
+"scripts are loaded as [Resource] type, not [File] type.\n"
+"For example:\n"
+"[codeblock]\n"
+"func parse_file(path, extracted_strings):\n"
+" var res = ResourceLoader.load(path, \"Script\")\n"
+" var text = res.get_source_code()\n"
+" # Parsing logic.\n"
+"\n"
+"\n"
+"func get_recognized_extensions():\n"
+" return [\"gd\"]\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:48
+msgid ""
+"Gets the list of file extensions to associate with this parser, e.g. [code]"
+"[\"csv\"][/code]."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:59
+msgid ""
+"Override this method to define a custom parsing logic to extract the "
+"translatable strings."
msgstr ""
#: doc/classes/EditorVCSInterface.xml:4
@@ -19943,15 +20959,15 @@ msgid ""
"to 1.3 to compensate for the lack of HDR rendering."
msgstr ""
-#: doc/classes/Environment.xml:190
+#: doc/classes/Environment.xml:214
msgid "The [Sky] resource used for this [Environment]."
msgstr ""
-#: doc/classes/Environment.xml:197
+#: doc/classes/Environment.xml:221
msgid "The depth tolerance for screen-space reflections."
msgstr ""
-#: doc/classes/Environment.xml:200
+#: doc/classes/Environment.xml:224
msgid ""
"If [code]true[/code], screen-space reflections are enabled. Screen-space "
"reflections are more accurate than reflections from [GIProbe]s or "
@@ -19959,48 +20975,48 @@ msgid ""
"others."
msgstr ""
-#: doc/classes/Environment.xml:203
+#: doc/classes/Environment.xml:227
msgid ""
"The fade-in distance for screen-space reflections. Affects the area from the "
"reflected material to the screen-space reflection)."
msgstr ""
-#: doc/classes/Environment.xml:206
+#: doc/classes/Environment.xml:230
msgid ""
"The fade-out distance for screen-space reflections. Affects the area from "
"the screen-space reflection to the \"global\" reflection."
msgstr ""
-#: doc/classes/Environment.xml:209
+#: doc/classes/Environment.xml:233
msgid ""
"The maximum number of steps for screen-space reflections. Higher values are "
"slower."
msgstr ""
-#: doc/classes/Environment.xml:212
+#: doc/classes/Environment.xml:236
msgid ""
"The screen-space ambient occlusion intensity on materials that have an AO "
"texture defined. Values higher than [code]0[/code] will make the SSAO effect "
"visible in areas darkened by AO textures."
msgstr ""
-#: doc/classes/Environment.xml:215
+#: doc/classes/Environment.xml:239
msgid ""
"The screen-space ambient occlusion bias. This should be kept high enough to "
"prevent \"smooth\" curves from being affected by ambient occlusion."
msgstr ""
-#: doc/classes/Environment.xml:218
+#: doc/classes/Environment.xml:242
msgid ""
"The screen-space ambient occlusion blur quality. See [enum SSAOBlur] for "
"possible values."
msgstr ""
-#: doc/classes/Environment.xml:221
+#: doc/classes/Environment.xml:245
msgid "The screen-space ambient occlusion edge sharpness."
msgstr ""
-#: doc/classes/Environment.xml:224
+#: doc/classes/Environment.xml:248
msgid ""
"If [code]true[/code], the screen-space ambient occlusion effect is enabled. "
"This darkens objects' corners and cavities to simulate ambient light not "
@@ -20011,13 +21027,13 @@ msgid ""
"issues."
msgstr ""
-#: doc/classes/Environment.xml:227
+#: doc/classes/Environment.xml:251
msgid ""
"The primary screen-space ambient occlusion intensity. See also [member "
"ssao_radius]."
msgstr ""
-#: doc/classes/Environment.xml:230
+#: doc/classes/Environment.xml:254
msgid ""
"The screen-space ambient occlusion intensity in direct light. In real life, "
"ambient occlusion only applies to indirect light, which means its effects "
@@ -20025,46 +21041,46 @@ msgid ""
"the SSAO effect visible in direct light."
msgstr ""
-#: doc/classes/Environment.xml:233
+#: doc/classes/Environment.xml:257
msgid "The primary screen-space ambient occlusion radius."
msgstr ""
-#: doc/classes/Environment.xml:236
+#: doc/classes/Environment.xml:260
msgid "The default exposure used for tonemapping."
msgstr ""
-#: doc/classes/Environment.xml:239
+#: doc/classes/Environment.xml:263
msgid ""
"The tonemapping mode to use. Tonemapping is the process that \"converts\" "
"HDR values to be suitable for rendering on a LDR display. (Godot doesn't "
"support rendering on HDR displays yet.)"
msgstr ""
-#: doc/classes/Environment.xml:242
+#: doc/classes/Environment.xml:266
msgid ""
"The white reference value for tonemapping. Only effective if the [member "
"tonemap_mode] isn't set to [constant TONE_MAPPER_LINEAR]."
msgstr ""
-#: doc/classes/Environment.xml:247
+#: doc/classes/Environment.xml:271
msgid ""
"Clears the background using the clear color defined in [member "
"ProjectSettings.rendering/environment/default_clear_color]."
msgstr ""
-#: doc/classes/Environment.xml:250
+#: doc/classes/Environment.xml:274
msgid "Clears the background using a custom clear color."
msgstr ""
-#: doc/classes/Environment.xml:253
+#: doc/classes/Environment.xml:277
msgid "Displays a user-defined sky in the background."
msgstr ""
-#: doc/classes/Environment.xml:256
+#: doc/classes/Environment.xml:280
msgid "Displays a [CanvasLayer] in the background."
msgstr ""
-#: doc/classes/Environment.xml:259
+#: doc/classes/Environment.xml:283
msgid ""
"Keeps on screen every pixel drawn in the background. This is the fastest "
"background mode, but it can only be safely used in fully-interior scenes (no "
@@ -20072,107 +21088,107 @@ msgid ""
"is visible, \"ghost trail\" artifacts will be visible when moving the camera."
msgstr ""
-#: doc/classes/Environment.xml:262 doc/classes/RenderingServer.xml:3446
+#: doc/classes/Environment.xml:286 doc/classes/RenderingServer.xml:3457
msgid "Displays a camera feed in the background."
msgstr ""
-#: doc/classes/Environment.xml:265
+#: doc/classes/Environment.xml:289
msgid "Represents the size of the [enum BGMode] enum."
msgstr ""
-#: doc/classes/Environment.xml:268 doc/classes/RenderingServer.xml:3452
+#: doc/classes/Environment.xml:292 doc/classes/RenderingServer.xml:3463
msgid ""
"Gather ambient light from whichever source is specified as the background."
msgstr ""
-#: doc/classes/Environment.xml:271 doc/classes/RenderingServer.xml:3455
+#: doc/classes/Environment.xml:295 doc/classes/RenderingServer.xml:3466
msgid "Disable ambient light."
msgstr ""
-#: doc/classes/Environment.xml:274 doc/classes/RenderingServer.xml:3458
+#: doc/classes/Environment.xml:298 doc/classes/RenderingServer.xml:3469
msgid "Specify a specific [Color] for ambient light."
msgstr ""
-#: doc/classes/Environment.xml:277 doc/classes/RenderingServer.xml:3461
+#: doc/classes/Environment.xml:301 doc/classes/RenderingServer.xml:3472
msgid ""
"Gather ambient light from the [Sky] regardless of what the background is."
msgstr ""
-#: doc/classes/Environment.xml:280 doc/classes/RenderingServer.xml:3464
+#: doc/classes/Environment.xml:304 doc/classes/RenderingServer.xml:3475
msgid "Use the background for reflections."
msgstr ""
-#: doc/classes/Environment.xml:283 doc/classes/RenderingServer.xml:3467
+#: doc/classes/Environment.xml:307 doc/classes/RenderingServer.xml:3478
msgid "Disable reflections."
msgstr ""
-#: doc/classes/Environment.xml:286 doc/classes/RenderingServer.xml:3470
+#: doc/classes/Environment.xml:310 doc/classes/RenderingServer.xml:3481
msgid "Use the [Sky] for reflections regardless of what the background is."
msgstr ""
-#: doc/classes/Environment.xml:289 doc/classes/RenderingServer.xml:3473
+#: doc/classes/Environment.xml:313
+msgid ""
+"Linear tonemapper operator. Reads the linear data and passes it on "
+"unmodified."
+msgstr ""
+
+#: doc/classes/Environment.xml:316
+msgid ""
+"Reinhardt tonemapper operator. Performs a variation on rendered pixels' "
+"colors by this formula: [code]color = color / (1 + color)[/code]."
+msgstr ""
+
+#: doc/classes/Environment.xml:319
+msgid "Filmic tonemapper operator."
+msgstr ""
+
+#: doc/classes/Environment.xml:322
+msgid "Academy Color Encoding System tonemapper operator."
+msgstr ""
+
+#: doc/classes/Environment.xml:325 doc/classes/RenderingServer.xml:3484
msgid ""
"Additive glow blending mode. Mostly used for particles, glows (bloom), lens "
"flare, bright sources."
msgstr ""
-#: doc/classes/Environment.xml:292 doc/classes/RenderingServer.xml:3476
+#: doc/classes/Environment.xml:328 doc/classes/RenderingServer.xml:3487
msgid ""
"Screen glow blending mode. Increases brightness, used frequently with bloom."
msgstr ""
-#: doc/classes/Environment.xml:295 doc/classes/RenderingServer.xml:3479
+#: doc/classes/Environment.xml:331 doc/classes/RenderingServer.xml:3490
msgid ""
"Soft light glow blending mode. Modifies contrast, exposes shadows and "
"highlights (vivid bloom)."
msgstr ""
-#: doc/classes/Environment.xml:298 doc/classes/RenderingServer.xml:3482
+#: doc/classes/Environment.xml:334 doc/classes/RenderingServer.xml:3493
msgid ""
"Replace glow blending mode. Replaces all pixels' color by the glow value. "
"This can be used to simulate a full-screen blur effect by tweaking the glow "
"parameters to match the original image's brightness."
msgstr ""
-#: doc/classes/Environment.xml:301 doc/classes/RenderingServer.xml:3485
+#: doc/classes/Environment.xml:337 doc/classes/RenderingServer.xml:3496
msgid ""
"Mixes the glow with the underlying color to avoid increasing brightness as "
"much while still maintaining a glow effect."
msgstr ""
-#: doc/classes/Environment.xml:304
-msgid ""
-"Linear tonemapper operator. Reads the linear data and passes it on "
-"unmodified."
-msgstr ""
-
-#: doc/classes/Environment.xml:307
-msgid ""
-"Reinhardt tonemapper operator. Performs a variation on rendered pixels' "
-"colors by this formula: [code]color = color / (1 + color)[/code]."
-msgstr ""
-
-#: doc/classes/Environment.xml:310
-msgid "Filmic tonemapper operator."
-msgstr ""
-
-#: doc/classes/Environment.xml:313
-msgid "Academy Color Encoding System tonemapper operator."
-msgstr ""
-
-#: doc/classes/Environment.xml:316
+#: doc/classes/Environment.xml:340
msgid "No blur for the screen-space ambient occlusion effect (fastest)."
msgstr ""
-#: doc/classes/Environment.xml:319
+#: doc/classes/Environment.xml:343
msgid "1×1 blur for the screen-space ambient occlusion effect."
msgstr ""
-#: doc/classes/Environment.xml:322
+#: doc/classes/Environment.xml:346
msgid "2×2 blur for the screen-space ambient occlusion effect."
msgstr ""
-#: doc/classes/Environment.xml:325
+#: doc/classes/Environment.xml:349
msgid ""
"3×3 blur for the screen-space ambient occlusion effect. Increases the radius "
"of the blur for a smoother look, but can result in checkerboard-like "
@@ -20257,14 +21273,17 @@ msgid ""
" var content = file.get_as_text()\n"
" file.close()\n"
" return content\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"In the example above, the file will be saved in the user data folder as "
+"specified in the [url=https://docs.godotengine.org/en/latest/tutorials/io/"
+"data_paths.html]Data paths[/url] documentation."
msgstr ""
-#: doc/classes/File.xml:32
+#: doc/classes/File.xml:33
msgid "Closes the currently opened file."
msgstr ""
-#: doc/classes/File.xml:39
+#: doc/classes/File.xml:40
msgid ""
"Returns [code]true[/code] if the file cursor has read past the end of the "
"file.\n"
@@ -20275,7 +21294,7 @@ msgid ""
"get_position] to implement a custom logic."
msgstr ""
-#: doc/classes/File.xml:49
+#: doc/classes/File.xml:50
msgid ""
"Returns [code]true[/code] if the file exists in the given path.\n"
"[b]Note:[/b] Many resources types are imported (e.g. textures or sound "
@@ -20288,41 +21307,41 @@ msgid ""
"source asset is present in [code]res://[/code], but fail when exported)."
msgstr ""
-#: doc/classes/File.xml:57
+#: doc/classes/File.xml:58
msgid ""
"Returns the next 16 bits from the file as an integer. See [method store_16] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:64
+#: doc/classes/File.xml:65
msgid ""
"Returns the next 32 bits from the file as an integer. See [method store_32] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:71
+#: doc/classes/File.xml:72
msgid ""
"Returns the next 64 bits from the file as an integer. See [method store_64] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:78
+#: doc/classes/File.xml:79
msgid ""
"Returns the next 8 bits from the file as an integer. See [method store_8] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:85
+#: doc/classes/File.xml:86
msgid ""
"Returns the whole file as a [String].\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:95
+#: doc/classes/File.xml:96
msgid "Returns next [code]len[/code] bytes of the file as a [PackedByteArray]."
msgstr ""
-#: doc/classes/File.xml:104
+#: doc/classes/File.xml:105
msgid ""
"Returns the next value of the file in CSV (Comma-Separated Values) format. "
"You can pass a different delimiter [code]delim[/code] to use other than the "
@@ -20331,37 +21350,37 @@ msgid ""
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:112
+#: doc/classes/File.xml:113
msgid "Returns the next 64 bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:119
+#: doc/classes/File.xml:120
msgid ""
"Returns the last error that happened when trying to perform operations. "
"Compare with the [code]ERR_FILE_*[/code] constants from [enum Error]."
msgstr ""
-#: doc/classes/File.xml:126
+#: doc/classes/File.xml:127
msgid "Returns the next 32 bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:133
+#: doc/classes/File.xml:134
msgid "Returns the size of the file in bytes."
msgstr ""
-#: doc/classes/File.xml:140
+#: doc/classes/File.xml:141
msgid ""
"Returns the next line of the file as a [String].\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:150
+#: doc/classes/File.xml:151
msgid ""
"Returns an MD5 String representing the file at the given path or an empty "
"[String] on failure."
msgstr ""
-#: doc/classes/File.xml:159
+#: doc/classes/File.xml:160
msgid ""
"Returns the last time the [code]file[/code] was modified in unix timestamp "
"format or returns a [String] \"ERROR IN [code]file[/code]\". This unix "
@@ -20369,35 +21388,35 @@ msgid ""
"get_datetime_from_unix_time]."
msgstr ""
-#: doc/classes/File.xml:166
+#: doc/classes/File.xml:167
msgid ""
"Returns a [String] saved in Pascal format from the file.\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:174
+#: doc/classes/File.xml:175
msgid "Returns the path as a [String] for the current open file."
msgstr ""
-#: doc/classes/File.xml:181
+#: doc/classes/File.xml:182
msgid "Returns the absolute path as a [String] for the current open file."
msgstr ""
-#: doc/classes/File.xml:188
+#: doc/classes/File.xml:189
msgid "Returns the file cursor's position."
msgstr ""
-#: doc/classes/File.xml:195
+#: doc/classes/File.xml:196
msgid "Returns the next bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:204
+#: doc/classes/File.xml:205
msgid ""
"Returns a SHA-256 [String] representing the file at the given path or an "
"empty [String] on failure."
msgstr ""
-#: doc/classes/File.xml:213
+#: doc/classes/File.xml:214
msgid ""
"Returns the next [Variant] value from the file. If [code]allow_objects[/"
"code] is [code]true[/code], decoding objects is allowed.\n"
@@ -20406,37 +21425,38 @@ msgid ""
"to avoid potential security threats such as remote code execution."
msgstr ""
-#: doc/classes/File.xml:221
+#: doc/classes/File.xml:222
msgid "Returns [code]true[/code] if the file is currently opened."
msgstr ""
-#: doc/classes/File.xml:232
+#: doc/classes/File.xml:233
msgid "Opens the file for writing or reading, depending on the flags."
msgstr ""
-#: doc/classes/File.xml:245
+#: doc/classes/File.xml:246
msgid "Opens a compressed file for reading or writing."
msgstr ""
-#: doc/classes/File.xml:258
+#: doc/classes/File.xml:259
msgid ""
"Opens an encrypted file in write or read mode. You need to pass a binary key "
-"to encrypt/decrypt it."
+"to encrypt/decrypt it.\n"
+"[b]Note:[/b] The provided key must be 32 bytes long."
msgstr ""
-#: doc/classes/File.xml:271
+#: doc/classes/File.xml:273
msgid ""
"Opens an encrypted file in write or read mode. You need to pass a password "
"to encrypt/decrypt it."
msgstr ""
-#: doc/classes/File.xml:280
+#: doc/classes/File.xml:282
msgid ""
"Changes the file reading/writing cursor to the specified position (in bytes "
"from the beginning of the file)."
msgstr ""
-#: doc/classes/File.xml:289
+#: doc/classes/File.xml:291
msgid ""
"Changes the file reading/writing cursor to the specified position (in bytes "
"from the end of the file).\n"
@@ -20444,7 +21464,7 @@ msgid ""
"cursor will be at the end of the file."
msgstr ""
-#: doc/classes/File.xml:299
+#: doc/classes/File.xml:301
msgid ""
"Stores an integer as 16 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, "
@@ -20472,7 +21492,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/File.xml:328
+#: doc/classes/File.xml:330
msgid ""
"Stores an integer as 32 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, "
@@ -20481,14 +21501,14 @@ msgid ""
"(see [method store_16] for an example)."
msgstr ""
-#: doc/classes/File.xml:339
+#: doc/classes/File.xml:341
msgid ""
"Stores an integer as 64 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] must lie in the interval [code][-2^63, "
"2^63 - 1][/code] (i.e. be a valid [int] value)."
msgstr ""
-#: doc/classes/File.xml:349
+#: doc/classes/File.xml:351
msgid ""
"Stores an integer as 8 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, 255]"
@@ -20497,11 +21517,11 @@ msgid ""
"(see [method store_16] for an example)."
msgstr ""
-#: doc/classes/File.xml:360
+#: doc/classes/File.xml:362
msgid "Stores the given array of bytes in the file."
msgstr ""
-#: doc/classes/File.xml:371
+#: doc/classes/File.xml:373
msgid ""
"Store the given [PackedStringArray] in the file as a line formatted in the "
"CSV (Comma-Separated Values) format. You can pass a different delimiter "
@@ -20510,45 +21530,45 @@ msgid ""
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:381
+#: doc/classes/File.xml:383
msgid "Stores a floating-point number as 64 bits in the file."
msgstr ""
-#: doc/classes/File.xml:390
+#: doc/classes/File.xml:392
msgid "Stores a floating-point number as 32 bits in the file."
msgstr ""
-#: doc/classes/File.xml:399
+#: doc/classes/File.xml:401
msgid ""
"Stores the given [String] as a line in the file.\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:409
+#: doc/classes/File.xml:411
msgid ""
"Stores the given [String] as a line in the file in Pascal format (i.e. also "
"store the length of the string).\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:419
+#: doc/classes/File.xml:421
msgid "Stores a floating-point number in the file."
msgstr ""
-#: doc/classes/File.xml:428
+#: doc/classes/File.xml:430
msgid ""
"Stores the given [String] in the file.\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:440
+#: doc/classes/File.xml:442
msgid ""
"Stores any Variant value in the file. If [code]full_objects[/code] is "
"[code]true[/code], encoding objects is allowed (and can potentially include "
"code)."
msgstr ""
-#: doc/classes/File.xml:446
+#: doc/classes/File.xml:448
msgid ""
"If [code]true[/code], the file's endianness is swapped. Use this if you're "
"dealing with files written on big-endian machines.\n"
@@ -20556,44 +21576,44 @@ msgid ""
"reset to [code]false[/code] whenever you open the file."
msgstr ""
-#: doc/classes/File.xml:452
+#: doc/classes/File.xml:454
msgid "Opens the file for read operations."
msgstr ""
-#: doc/classes/File.xml:455
+#: doc/classes/File.xml:457
msgid ""
"Opens the file for write operations. Create it if the file does not exist "
"and truncate if it exists."
msgstr ""
-#: doc/classes/File.xml:458
+#: doc/classes/File.xml:460
msgid ""
"Opens the file for read and write operations. Does not truncate the file."
msgstr ""
-#: doc/classes/File.xml:461
+#: doc/classes/File.xml:463
msgid ""
"Opens the file for read and write operations. Create it if the file does not "
"exist and truncate if it exists."
msgstr ""
-#: doc/classes/File.xml:464
+#: doc/classes/File.xml:466
msgid "Uses the [url=http://fastlz.org/]FastLZ[/url] compression method."
msgstr ""
-#: doc/classes/File.xml:467
+#: doc/classes/File.xml:469
msgid ""
"Uses the [url=https://en.wikipedia.org/wiki/DEFLATE]DEFLATE[/url] "
"compression method."
msgstr ""
-#: doc/classes/File.xml:470
+#: doc/classes/File.xml:472
msgid ""
"Uses the [url=https://facebook.github.io/zstd/]Zstandard[/url] compression "
"method."
msgstr ""
-#: doc/classes/File.xml:473
+#: doc/classes/File.xml:475
msgid "Uses the [url=https://www.gzip.org/]gzip[/url] compression method."
msgstr ""
@@ -20809,10 +21829,11 @@ msgid ""
"Draw [code]string[/code] into a canvas item using the font at a given "
"position, with [code]modulate[/code] color, and optionally clipping the "
"width. [code]position[/code] specifies the baseline, not the top. To draw "
-"from the top, [i]ascent[/i] must be added to the Y axis."
+"from the top, [i]ascent[/i] must be added to the Y axis.\n"
+"See also [method CanvasItem.draw_string]."
msgstr ""
-#: doc/classes/Font.xml:47
+#: doc/classes/Font.xml:48
msgid ""
"Draw character [code]char[/code] into a canvas item using the font at a "
"given position, with [code]modulate[/code] color, and optionally kerning if "
@@ -20822,39 +21843,39 @@ msgid ""
"making this function useful for drawing strings character by character."
msgstr ""
-#: doc/classes/Font.xml:54
+#: doc/classes/Font.xml:55
msgid "Returns the font ascent (number of pixels above the baseline)."
msgstr ""
-#: doc/classes/Font.xml:65
+#: doc/classes/Font.xml:66
msgid ""
"Returns the size of a character, optionally taking kerning into account if "
"the next character is provided."
msgstr ""
-#: doc/classes/Font.xml:72
+#: doc/classes/Font.xml:73
msgid "Returns the font descent (number of pixels below the baseline)."
msgstr ""
-#: doc/classes/Font.xml:79
+#: doc/classes/Font.xml:80
msgid "Returns the total font height (ascent plus descent) in pixels."
msgstr ""
-#: doc/classes/Font.xml:88
+#: doc/classes/Font.xml:89
msgid "Returns the size of a string, taking kerning and advance into account."
msgstr ""
-#: doc/classes/Font.xml:99
+#: doc/classes/Font.xml:100
msgid ""
"Returns the size that the string would have with word wrapping enabled with "
"a fixed [code]width[/code]."
msgstr ""
-#: doc/classes/Font.xml:106
+#: doc/classes/Font.xml:107
msgid "Returns [code]true[/code] if the font has an outline."
msgstr ""
-#: doc/classes/Font.xml:119
+#: doc/classes/Font.xml:120
msgid ""
"After editing a font (changing size, ascent, char rects, etc.). Call this "
"function to propagate changes to controls that might use it."
@@ -21026,13 +22047,14 @@ msgstr ""
#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:7
msgid ""
-"Calling [method @GDScript.yield] within a function will cause that function "
-"to yield and return its current state as an object of this type. The yielded "
+"FIXME: Outdated docs as of GDScript rewrite in 4.0.\n"
+"Calling [code]yield[/code] within a function will cause that function to "
+"yield and return its current state as an object of this type. The yielded "
"function call can then be resumed later by calling [method resume] on this "
"state object."
msgstr ""
-#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:18
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:19
msgid ""
"Check whether the function call may be resumed. This is not the case if the "
"function state was already resumed.\n"
@@ -21043,12 +22065,12 @@ msgid ""
"script have survived up to that point."
msgstr ""
-#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:28
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:29
msgid ""
"Resume execution of the yielded function call.\n"
-"If handed an argument, return the argument from the [method @GDScript.yield] "
-"call in the yielded function call. You can pass e.g. an [Array] to hand "
-"multiple arguments.\n"
+"If handed an argument, return the argument from the [code]yield[/code] call "
+"in the yielded function call. You can pass e.g. an [Array] to hand multiple "
+"arguments.\n"
"This function returns what the resumed function call returns, possibly "
"another function state if yielded again."
msgstr ""
@@ -21617,10 +22639,20 @@ msgid ""
"code], see [enum PolyJoinType].\n"
"The operation may result in an outer polygon (boundary) and inner polygon "
"(hole) produced which could be distinguished by calling [method "
-"is_polygon_clockwise]."
+"is_polygon_clockwise].\n"
+"[b]Note:[/b] To translate the polygon's vertices specifically, use the "
+"[method Transform2D.xform] method:\n"
+"[codeblock]\n"
+"var polygon = PackedVector2Array([Vector2(0, 0), Vector2(100, 0), "
+"Vector2(100, 100), Vector2(0, 100)])\n"
+"var offset = Vector2(50, 50)\n"
+"polygon = Transform2D(0, offset).xform(polygon)\n"
+"print(polygon) # prints [Vector2(50, 50), Vector2(150, 50), Vector2(150, "
+"150), Vector2(50, 150)]\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/Geometry2D.xml:217
+#: doc/classes/Geometry2D.xml:224
msgid ""
"Inflates or deflates [code]polyline[/code] by [code]delta[/code] units "
"(pixels), producing polygons. If [code]delta[/code] is positive, makes the "
@@ -21636,13 +22668,13 @@ msgid ""
"is_polygon_clockwise]."
msgstr ""
-#: doc/classes/Geometry2D.xml:235
+#: doc/classes/Geometry2D.xml:242
msgid ""
"Returns if [code]point[/code] is inside the triangle specified by [code]a[/"
"code], [code]b[/code] and [code]c[/code]."
msgstr ""
-#: doc/classes/Geometry2D.xml:250
+#: doc/classes/Geometry2D.xml:257
msgid ""
"Checks if the two segments ([code]from_a[/code], [code]to_a[/code]) and "
"([code]from_b[/code], [code]to_b[/code]) intersect. If yes, return the point "
@@ -21650,7 +22682,7 @@ msgid ""
"empty [Variant]."
msgstr ""
-#: doc/classes/Geometry2D.xml:259
+#: doc/classes/Geometry2D.xml:266
msgid ""
"Triangulates the area specified by discrete set of [code]points[/code] such "
"that no point is inside the circumcircle of any resulting triangle. Returns "
@@ -21661,7 +22693,7 @@ msgid ""
"[PackedInt32Array] is returned."
msgstr ""
-#: doc/classes/Geometry2D.xml:268
+#: doc/classes/Geometry2D.xml:275
msgid ""
"Triangulates the polygon specified by the points in [code]polygon[/code]. "
"Returns a [PackedInt32Array] where each triangle consists of three "
@@ -21671,40 +22703,40 @@ msgid ""
"[PackedInt32Array] is returned."
msgstr ""
-#: doc/classes/Geometry2D.xml:274
+#: doc/classes/Geometry2D.xml:281
msgid ""
"Create regions where either subject or clip polygons (or both) are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:277
+#: doc/classes/Geometry2D.xml:284
msgid ""
"Create regions where subject polygons are filled except where clip polygons "
"are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:280
+#: doc/classes/Geometry2D.xml:287
msgid "Create regions where both subject and clip polygons are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:283
+#: doc/classes/Geometry2D.xml:290
msgid ""
"Create regions where either subject or clip polygons are filled but not "
"where both are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:286
+#: doc/classes/Geometry2D.xml:293
msgid ""
"Squaring is applied uniformally at all convex edge joins at [code]1 * delta[/"
"code]."
msgstr ""
-#: doc/classes/Geometry2D.xml:289
+#: doc/classes/Geometry2D.xml:296
msgid ""
"While flattened paths can never perfectly trace an arc, they are "
"approximated by a series of arc chords."
msgstr ""
-#: doc/classes/Geometry2D.xml:292
+#: doc/classes/Geometry2D.xml:299
msgid ""
"There's a necessary limit to mitered joins since offsetting edges that join "
"at very acute angles will produce excessively long and narrow \"spikes\". "
@@ -21712,27 +22744,27 @@ msgid ""
"distance, \"square\" joining is applied."
msgstr ""
-#: doc/classes/Geometry2D.xml:295
+#: doc/classes/Geometry2D.xml:302
msgid ""
"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
"as a polygon."
msgstr ""
-#: doc/classes/Geometry2D.xml:298
+#: doc/classes/Geometry2D.xml:305
msgid ""
"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
"as a polyline."
msgstr ""
-#: doc/classes/Geometry2D.xml:301
+#: doc/classes/Geometry2D.xml:308
msgid "Endpoints are squared off with no extension."
msgstr ""
-#: doc/classes/Geometry2D.xml:304
+#: doc/classes/Geometry2D.xml:311
msgid "Endpoints are squared off and extended by [code]delta[/code] units."
msgstr ""
-#: doc/classes/Geometry2D.xml:307
+#: doc/classes/Geometry2D.xml:314
msgid "Endpoints are rounded off and extended by [code]delta[/code] units."
msgstr ""
@@ -21962,7 +22994,7 @@ msgstr ""
msgid ""
"Bakes the effect from all [GeometryInstance3D]s marked with [constant "
"GeometryInstance3D.GI_MODE_BAKED] and [Light3D]s marked with either "
-"[constant Light3D.BAKE_INDIRECT] or [constant Light3D.BAKE_ALL]. If "
+"[constant Light3D.BAKE_DYNAMIC] or [constant Light3D.BAKE_STATIC]. If "
"[code]create_visual_debug[/code] is [code]true[/code], after baking the "
"light, this will generate a [MultiMesh] that has a cube representing each "
"solid cell with each cube colored to the cell's albedo color. This can be "
@@ -22849,121 +23881,119 @@ msgstr ""
msgid "Clear all cells."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:53
+#: modules/gridmap/doc_classes/GridMap.xml:49
msgid ""
-"The [MeshLibrary] item index located at the grid-based X, Y and Z "
-"coordinates. If the cell is empty, [constant INVALID_CELL_ITEM] will be "
-"returned."
+"The [MeshLibrary] item index located at the given grid coordinates. If the "
+"cell is empty, [constant INVALID_CELL_ITEM] will be returned."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:66
+#: modules/gridmap/doc_classes/GridMap.xml:58
msgid ""
-"The orientation of the cell at the grid-based X, Y and Z coordinates. -1 is "
-"returned if the cell is empty."
+"The orientation of the cell at the given grid coordinates. [code]-1[/code] "
+"is returned if the cell is empty."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:75 doc/classes/PhysicsBody2D.xml:35
+#: modules/gridmap/doc_classes/GridMap.xml:67 doc/classes/PhysicsBody2D.xml:35
#: doc/classes/PhysicsBody3D.xml:35
msgid "Returns an individual bit on the [member collision_layer]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:84 doc/classes/PhysicsBody2D.xml:44
+#: modules/gridmap/doc_classes/GridMap.xml:76 doc/classes/PhysicsBody2D.xml:44
#: doc/classes/PhysicsBody3D.xml:44
msgid "Returns an individual bit on the [member collision_mask]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:91
+#: modules/gridmap/doc_classes/GridMap.xml:83
msgid ""
"Returns an array of [Transform] and [Mesh] references corresponding to the "
"non-empty cells in the grid. The transforms are specified in world space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:98
+#: modules/gridmap/doc_classes/GridMap.xml:90
msgid ""
"Returns an array of [Vector3] with the non-empty cell coordinates in the "
"grid map."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:121
+#: modules/gridmap/doc_classes/GridMap.xml:109
msgid ""
"Returns the position of a grid cell in the GridMap's local coordinate space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:146
+#: modules/gridmap/doc_classes/GridMap.xml:130
msgid ""
-"Sets the mesh index for the cell referenced by its grid-based X, Y and Z "
-"coordinates.\n"
+"Sets the mesh index for the cell referenced by its grid coordinates.\n"
"A negative item index such as [constant INVALID_CELL_ITEM] will clear the "
"cell.\n"
"Optionally, the item's orientation can be passed. For valid orientation "
"values, see [method Basis.get_orthogonal_index]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:173
+#: modules/gridmap/doc_classes/GridMap.xml:157
msgid "Sets an individual bit on the [member collision_layer]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:184
+#: modules/gridmap/doc_classes/GridMap.xml:168
msgid "Sets an individual bit on the [member collision_mask]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:193
+#: modules/gridmap/doc_classes/GridMap.xml:177
msgid ""
"Returns the coordinates of the grid cell containing the given point.\n"
"[code]pos[/code] should be in the GridMap's local coordinate space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:200
+#: modules/gridmap/doc_classes/GridMap.xml:184
msgid "If [code]true[/code], grid items are centered on the X axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:203
+#: modules/gridmap/doc_classes/GridMap.xml:187
msgid "If [code]true[/code], grid items are centered on the Y axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:206
+#: modules/gridmap/doc_classes/GridMap.xml:190
msgid "If [code]true[/code], grid items are centered on the Z axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:209
+#: modules/gridmap/doc_classes/GridMap.xml:193
msgid ""
"The size of each octant measured in number of cells. This applies to all "
"three axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:212
+#: modules/gridmap/doc_classes/GridMap.xml:196
msgid ""
"The scale of the cell items.\n"
"This does not affect the size of the grid cells themselves, only the items "
"in them. This can be used to make cell items overlap their neighbors."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:216
+#: modules/gridmap/doc_classes/GridMap.xml:200
msgid ""
"The dimensions of the grid's cells.\n"
"This does not affect the size of the meshes. See [member cell_scale]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:220
+#: modules/gridmap/doc_classes/GridMap.xml:204
msgid ""
"The physics layers this GridMap is in.\n"
"GridMaps act as static bodies, meaning they aren't affected by gravity or "
"other forces. They only affect other physics bodies that collide with them."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:224
+#: modules/gridmap/doc_classes/GridMap.xml:208
msgid "The physics layers this GridMap detects collisions in."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:227
+#: modules/gridmap/doc_classes/GridMap.xml:211
msgid "The assigned [MeshLibrary]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:235
+#: modules/gridmap/doc_classes/GridMap.xml:219
msgid "Emitted when [member cell_size] changes."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:241
+#: modules/gridmap/doc_classes/GridMap.xml:225
msgid ""
"Invalid cell item that can be used in [method set_cell_item] to clear cells "
"(or represent an empty cell in [method get_cell_item])."
@@ -23328,27 +24358,33 @@ msgid ""
"server's side.\n"
"For more information on HTTP, see https://developer.mozilla.org/en-US/docs/"
"Web/HTTP (or read RFC 2616 to get it straight from the source: https://tools."
-"ietf.org/html/rfc2616)."
+"ietf.org/html/rfc2616).\n"
+"[b]Note:[/b] When performing HTTP requests from a project exported to HTML5, "
+"keep in mind the remote server may not allow requests from foreign origins "
+"due to [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/"
+"url]. If you host the server in question, you should modify its backend to "
+"allow requests from foreign origins by adding the [code]Access-Control-Allow-"
+"Origin: *[/code] HTTP header."
msgstr ""
-#: doc/classes/HTTPClient.xml:13
+#: doc/classes/HTTPClient.xml:14
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/"
"http_client_class.html"
msgstr ""
-#: doc/classes/HTTPClient.xml:14 doc/classes/HTTPRequest.xml:62
+#: doc/classes/HTTPClient.xml:15 doc/classes/HTTPRequest.xml:71
#: doc/classes/StreamPeerSSL.xml:10
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/ssl_certificates."
"html"
msgstr ""
-#: doc/classes/HTTPClient.xml:21
+#: doc/classes/HTTPClient.xml:22
msgid "Closes the current connection, allowing reuse of this [HTTPClient]."
msgstr ""
-#: doc/classes/HTTPClient.xml:36
+#: doc/classes/HTTPClient.xml:37
msgid ""
"Connects to a host. This needs to be done before any requests are sent.\n"
"The host should not have http:// prepended but will strip the protocol "
@@ -23360,7 +24396,7 @@ msgid ""
"[code]true[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:46
+#: doc/classes/HTTPClient.xml:47
msgid ""
"Returns the response's body length.\n"
"[b]Note:[/b] Some Web servers may not send a body length. In this case, the "
@@ -23368,15 +24404,15 @@ msgid ""
"the body length will also be [code]-1[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:54
+#: doc/classes/HTTPClient.xml:55
msgid "Returns the response's HTTP status code."
msgstr ""
-#: doc/classes/HTTPClient.xml:61
+#: doc/classes/HTTPClient.xml:62
msgid "Returns the response headers."
msgstr ""
-#: doc/classes/HTTPClient.xml:68
+#: doc/classes/HTTPClient.xml:69
msgid ""
"Returns all response headers as a Dictionary of structure [code]{ \"key\": "
"\"value1; value2\" }[/code] where the case-sensitivity of the keys and "
@@ -23391,27 +24427,27 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:82
+#: doc/classes/HTTPClient.xml:83
msgid ""
"Returns a [enum Status] constant. Need to call [method poll] in order to get "
"status updates."
msgstr ""
-#: doc/classes/HTTPClient.xml:89
+#: doc/classes/HTTPClient.xml:90
msgid "If [code]true[/code], this [HTTPClient] has a response available."
msgstr ""
-#: doc/classes/HTTPClient.xml:96
+#: doc/classes/HTTPClient.xml:97
msgid "If [code]true[/code], this [HTTPClient] has a response that is chunked."
msgstr ""
-#: doc/classes/HTTPClient.xml:103
+#: doc/classes/HTTPClient.xml:104
msgid ""
"This needs to be called in order to have any request processed. Check "
"results with [method get_status]."
msgstr ""
-#: doc/classes/HTTPClient.xml:112
+#: doc/classes/HTTPClient.xml:113
msgid ""
"Generates a GET/POST application/x-www-form-urlencoded style query string "
"from a provided dictionary, e.g.:\n"
@@ -23431,11 +24467,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:130
+#: doc/classes/HTTPClient.xml:131
msgid "Reads one chunk from the response."
msgstr ""
-#: doc/classes/HTTPClient.xml:145
+#: doc/classes/HTTPClient.xml:146
msgid ""
"Sends a request to the connected host. The URL parameter is just the part "
"after the host, so for [code]http://somehost.com/index.php[/code], it is "
@@ -23453,7 +24489,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:168
+#: doc/classes/HTTPClient.xml:169
msgid ""
"Sends a raw request to the connected host. The URL parameter is just the "
"part after the host, so for [code]http://somehost.com/index.php[/code], it "
@@ -23463,43 +24499,43 @@ msgid ""
"Sends the body data raw, as a byte array and does not encode it in any way."
msgstr ""
-#: doc/classes/HTTPClient.xml:176
+#: doc/classes/HTTPClient.xml:177
msgid ""
"If [code]true[/code], execution will block until all data is read from the "
"response."
msgstr ""
-#: doc/classes/HTTPClient.xml:179
+#: doc/classes/HTTPClient.xml:180
msgid "The connection to use for this client."
msgstr ""
-#: doc/classes/HTTPClient.xml:182
+#: doc/classes/HTTPClient.xml:183
msgid ""
"The size of the buffer used and maximum bytes to read per iteration. See "
"[method read_response_body_chunk]."
msgstr ""
-#: doc/classes/HTTPClient.xml:187
+#: doc/classes/HTTPClient.xml:188
msgid ""
"HTTP GET method. The GET method requests a representation of the specified "
"resource. Requests using GET should only retrieve data."
msgstr ""
-#: doc/classes/HTTPClient.xml:190
+#: doc/classes/HTTPClient.xml:191
msgid ""
"HTTP HEAD method. The HEAD method asks for a response identical to that of a "
"GET request, but without the response body. This is useful to request "
"metadata like HTTP headers or to check if a resource exists."
msgstr ""
-#: doc/classes/HTTPClient.xml:193
+#: doc/classes/HTTPClient.xml:194
msgid ""
"HTTP POST method. The POST method is used to submit an entity to the "
"specified resource, often causing a change in state or side effects on the "
"server. This is often used for forms and submitting data or uploading files."
msgstr ""
-#: doc/classes/HTTPClient.xml:196
+#: doc/classes/HTTPClient.xml:197
msgid ""
"HTTP PUT method. The PUT method asks to replace all current representations "
"of the target resource with the request payload. (You can think of POST as "
@@ -23507,103 +24543,103 @@ msgid ""
"not make a clear distinction or change their meaning)."
msgstr ""
-#: doc/classes/HTTPClient.xml:199
+#: doc/classes/HTTPClient.xml:200
msgid ""
"HTTP DELETE method. The DELETE method requests to delete the specified "
"resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:202
+#: doc/classes/HTTPClient.xml:203
msgid ""
"HTTP OPTIONS method. The OPTIONS method asks for a description of the "
"communication options for the target resource. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:205
+#: doc/classes/HTTPClient.xml:206
msgid ""
"HTTP TRACE method. The TRACE method performs a message loop-back test along "
"the path to the target resource. Returns the entire HTTP request received in "
"the response body. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:208
+#: doc/classes/HTTPClient.xml:209
msgid ""
"HTTP CONNECT method. The CONNECT method establishes a tunnel to the server "
"identified by the target resource. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:211
+#: doc/classes/HTTPClient.xml:212
msgid ""
"HTTP PATCH method. The PATCH method is used to apply partial modifications "
"to a resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:214
+#: doc/classes/HTTPClient.xml:215
msgid "Represents the size of the [enum Method] enum."
msgstr ""
-#: doc/classes/HTTPClient.xml:217
+#: doc/classes/HTTPClient.xml:218
msgid "Status: Disconnected from the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:220
+#: doc/classes/HTTPClient.xml:221
msgid "Status: Currently resolving the hostname for the given URL into an IP."
msgstr ""
-#: doc/classes/HTTPClient.xml:223
+#: doc/classes/HTTPClient.xml:224
msgid "Status: DNS failure: Can't resolve the hostname for the given URL."
msgstr ""
-#: doc/classes/HTTPClient.xml:226
+#: doc/classes/HTTPClient.xml:227
msgid "Status: Currently connecting to server."
msgstr ""
-#: doc/classes/HTTPClient.xml:229
+#: doc/classes/HTTPClient.xml:230
msgid "Status: Can't connect to the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:232
+#: doc/classes/HTTPClient.xml:233
msgid "Status: Connection established."
msgstr ""
-#: doc/classes/HTTPClient.xml:235
+#: doc/classes/HTTPClient.xml:236
msgid "Status: Currently sending request."
msgstr ""
-#: doc/classes/HTTPClient.xml:238
+#: doc/classes/HTTPClient.xml:239
msgid "Status: HTTP body received."
msgstr ""
-#: doc/classes/HTTPClient.xml:241
+#: doc/classes/HTTPClient.xml:242
msgid "Status: Error in HTTP connection."
msgstr ""
-#: doc/classes/HTTPClient.xml:244
+#: doc/classes/HTTPClient.xml:245
msgid "Status: Error in SSL handshake."
msgstr ""
-#: doc/classes/HTTPClient.xml:247
+#: doc/classes/HTTPClient.xml:248
msgid ""
"HTTP status code [code]100 Continue[/code]. Interim response that indicates "
"everything so far is OK and that the client should continue with the request "
"(or ignore this status if already finished)."
msgstr ""
-#: doc/classes/HTTPClient.xml:250
+#: doc/classes/HTTPClient.xml:251
msgid ""
"HTTP status code [code]101 Switching Protocol[/code]. Sent in response to an "
"[code]Upgrade[/code] request header by the client. Indicates the protocol "
"the server is switching to."
msgstr ""
-#: doc/classes/HTTPClient.xml:253
+#: doc/classes/HTTPClient.xml:254
msgid ""
"HTTP status code [code]102 Processing[/code] (WebDAV). Indicates that the "
"server has received and is processing the request, but no response is "
"available yet."
msgstr ""
-#: doc/classes/HTTPClient.xml:256
+#: doc/classes/HTTPClient.xml:257
msgid ""
"HTTP status code [code]200 OK[/code]. The request has succeeded. Default "
"response for successful requests. Meaning varies depending on the request. "
@@ -23614,14 +24650,14 @@ msgid ""
"server."
msgstr ""
-#: doc/classes/HTTPClient.xml:259
+#: doc/classes/HTTPClient.xml:260
msgid ""
"HTTP status code [code]201 Created[/code]. The request has succeeded and a "
"new resource has been created as a result of it. This is typically the "
"response sent after a PUT request."
msgstr ""
-#: doc/classes/HTTPClient.xml:262
+#: doc/classes/HTTPClient.xml:263
msgid ""
"HTTP status code [code]202 Accepted[/code]. The request has been received "
"but not yet acted upon. It is non-committal, meaning that there is no way in "
@@ -23630,7 +24666,7 @@ msgid ""
"server handles the request, or for batch processing."
msgstr ""
-#: doc/classes/HTTPClient.xml:265
+#: doc/classes/HTTPClient.xml:266
msgid ""
"HTTP status code [code]203 Non-Authoritative Information[/code]. This "
"response code means returned meta-information set is not exact set as "
@@ -23639,14 +24675,14 @@ msgid ""
"instead of this response."
msgstr ""
-#: doc/classes/HTTPClient.xml:268
+#: doc/classes/HTTPClient.xml:269
msgid ""
"HTTP status code [code]204 No Content[/code]. There is no content to send "
"for this request, but the headers may be useful. The user-agent may update "
"its cached headers for this resource with the new ones."
msgstr ""
-#: doc/classes/HTTPClient.xml:271
+#: doc/classes/HTTPClient.xml:272
msgid ""
"HTTP status code [code]205 Reset Content[/code]. The server has fulfilled "
"the request and desires that the client resets the \"document view\" that "
@@ -23654,49 +24690,49 @@ msgid ""
"origin server."
msgstr ""
-#: doc/classes/HTTPClient.xml:274
+#: doc/classes/HTTPClient.xml:275
msgid ""
"HTTP status code [code]206 Partial Content[/code]. This response code is "
"used because of a range header sent by the client to separate download into "
"multiple streams."
msgstr ""
-#: doc/classes/HTTPClient.xml:277
+#: doc/classes/HTTPClient.xml:278
msgid ""
"HTTP status code [code]207 Multi-Status[/code] (WebDAV). A Multi-Status "
"response conveys information about multiple resources in situations where "
"multiple status codes might be appropriate."
msgstr ""
-#: doc/classes/HTTPClient.xml:280
+#: doc/classes/HTTPClient.xml:281
msgid ""
"HTTP status code [code]208 Already Reported[/code] (WebDAV). Used inside a "
"DAV: propstat response element to avoid enumerating the internal members of "
"multiple bindings to the same collection repeatedly."
msgstr ""
-#: doc/classes/HTTPClient.xml:283
+#: doc/classes/HTTPClient.xml:284
msgid ""
"HTTP status code [code]226 IM Used[/code] (WebDAV). The server has fulfilled "
"a GET request for the resource, and the response is a representation of the "
"result of one or more instance-manipulations applied to the current instance."
msgstr ""
-#: doc/classes/HTTPClient.xml:286
+#: doc/classes/HTTPClient.xml:287
msgid ""
"HTTP status code [code]300 Multiple Choice[/code]. The request has more than "
"one possible responses and there is no standardized way to choose one of the "
"responses. User-agent or user should choose one of them."
msgstr ""
-#: doc/classes/HTTPClient.xml:289
+#: doc/classes/HTTPClient.xml:290
msgid ""
"HTTP status code [code]301 Moved Permanently[/code]. Redirection. This "
"response code means the URI of requested resource has been changed. The new "
"URI is usually included in the response."
msgstr ""
-#: doc/classes/HTTPClient.xml:292
+#: doc/classes/HTTPClient.xml:293
msgid ""
"HTTP status code [code]302 Found[/code]. Temporary redirection. This "
"response code means the URI of requested resource has been changed "
@@ -23704,7 +24740,7 @@ msgid ""
"this same URI should be used by the client in future requests."
msgstr ""
-#: doc/classes/HTTPClient.xml:295
+#: doc/classes/HTTPClient.xml:296
msgid ""
"HTTP status code [code]303 See Other[/code]. The server is redirecting the "
"user agent to a different resource, as indicated by a URI in the Location "
@@ -23712,39 +24748,39 @@ msgid ""
"original request."
msgstr ""
-#: doc/classes/HTTPClient.xml:298
+#: doc/classes/HTTPClient.xml:299
msgid ""
"HTTP status code [code]304 Not Modified[/code]. A conditional GET or HEAD "
"request has been received and would have resulted in a 200 OK response if it "
"were not for the fact that the condition evaluated to [code]false[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:301
+#: doc/classes/HTTPClient.xml:302
msgid ""
"HTTP status code [code]305 Use Proxy[/code]. [i]Deprecated. Do not use.[/i]"
msgstr ""
-#: doc/classes/HTTPClient.xml:304
+#: doc/classes/HTTPClient.xml:305
msgid ""
"HTTP status code [code]306 Switch Proxy[/code]. [i]Deprecated. Do not use.[/"
"i]"
msgstr ""
-#: doc/classes/HTTPClient.xml:307
+#: doc/classes/HTTPClient.xml:308
msgid ""
"HTTP status code [code]307 Temporary Redirect[/code]. The target resource "
"resides temporarily under a different URI and the user agent MUST NOT change "
"the request method if it performs an automatic redirection to that URI."
msgstr ""
-#: doc/classes/HTTPClient.xml:310
+#: doc/classes/HTTPClient.xml:311
msgid ""
"HTTP status code [code]308 Permanent Redirect[/code]. The target resource "
"has been assigned a new permanent URI and any future references to this "
"resource ought to use one of the enclosed URIs."
msgstr ""
-#: doc/classes/HTTPClient.xml:313
+#: doc/classes/HTTPClient.xml:314
msgid ""
"HTTP status code [code]400 Bad Request[/code]. The request was invalid. The "
"server cannot or will not process the request due to something that is "
@@ -23753,21 +24789,21 @@ msgid ""
"routing)."
msgstr ""
-#: doc/classes/HTTPClient.xml:316
+#: doc/classes/HTTPClient.xml:317
msgid ""
"HTTP status code [code]401 Unauthorized[/code]. Credentials required. The "
"request has not been applied because it lacks valid authentication "
"credentials for the target resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:319
+#: doc/classes/HTTPClient.xml:320
msgid ""
"HTTP status code [code]402 Payment Required[/code]. This response code is "
"reserved for future use. Initial aim for creating this code was using it for "
"digital payment systems, however this is not currently used."
msgstr ""
-#: doc/classes/HTTPClient.xml:322
+#: doc/classes/HTTPClient.xml:323
msgid ""
"HTTP status code [code]403 Forbidden[/code]. The client does not have access "
"rights to the content, i.e. they are unauthorized, so server is rejecting to "
@@ -23775,7 +24811,7 @@ msgid ""
"known to the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:325
+#: doc/classes/HTTPClient.xml:326
msgid ""
"HTTP status code [code]404 Not Found[/code]. The server can not find "
"requested resource. Either the URL is not recognized or the endpoint is "
@@ -23783,7 +24819,7 @@ msgid ""
"403 to hide existence of a resource if the client is not authorized."
msgstr ""
-#: doc/classes/HTTPClient.xml:328
+#: doc/classes/HTTPClient.xml:329
msgid ""
"HTTP status code [code]405 Method Not Allowed[/code]. The request's HTTP "
"method is known by the server but has been disabled and cannot be used. For "
@@ -23791,7 +24827,7 @@ msgid ""
"GET and HEAD, must never be disabled and should not return this error code."
msgstr ""
-#: doc/classes/HTTPClient.xml:331
+#: doc/classes/HTTPClient.xml:332
msgid ""
"HTTP status code [code]406 Not Acceptable[/code]. The target resource does "
"not have a current representation that would be acceptable to the user "
@@ -23799,21 +24835,21 @@ msgid ""
"request. Used when negotiation content."
msgstr ""
-#: doc/classes/HTTPClient.xml:334
+#: doc/classes/HTTPClient.xml:335
msgid ""
"HTTP status code [code]407 Proxy Authentication Required[/code]. Similar to "
"401 Unauthorized, but it indicates that the client needs to authenticate "
"itself in order to use a proxy."
msgstr ""
-#: doc/classes/HTTPClient.xml:337
+#: doc/classes/HTTPClient.xml:338
msgid ""
"HTTP status code [code]408 Request Timeout[/code]. The server did not "
"receive a complete request message within the time that it was prepared to "
"wait."
msgstr ""
-#: doc/classes/HTTPClient.xml:340
+#: doc/classes/HTTPClient.xml:341
msgid ""
"HTTP status code [code]409 Conflict[/code]. The request could not be "
"completed due to a conflict with the current state of the target resource. "
@@ -23821,47 +24857,47 @@ msgid ""
"conflict and resubmit the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:343
+#: doc/classes/HTTPClient.xml:344
msgid ""
"HTTP status code [code]410 Gone[/code]. The target resource is no longer "
"available at the origin server and this condition is likely permanent."
msgstr ""
-#: doc/classes/HTTPClient.xml:346
+#: doc/classes/HTTPClient.xml:347
msgid ""
"HTTP status code [code]411 Length Required[/code]. The server refuses to "
"accept the request without a defined Content-Length header."
msgstr ""
-#: doc/classes/HTTPClient.xml:349
+#: doc/classes/HTTPClient.xml:350
msgid ""
"HTTP status code [code]412 Precondition Failed[/code]. One or more "
"conditions given in the request header fields evaluated to [code]false[/"
"code] when tested on the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:352
+#: doc/classes/HTTPClient.xml:353
msgid ""
"HTTP status code [code]413 Entity Too Large[/code]. The server is refusing "
"to process a request because the request payload is larger than the server "
"is willing or able to process."
msgstr ""
-#: doc/classes/HTTPClient.xml:355
+#: doc/classes/HTTPClient.xml:356
msgid ""
"HTTP status code [code]414 Request-URI Too Long[/code]. The server is "
"refusing to service the request because the request-target is longer than "
"the server is willing to interpret."
msgstr ""
-#: doc/classes/HTTPClient.xml:358
+#: doc/classes/HTTPClient.xml:359
msgid ""
"HTTP status code [code]415 Unsupported Media Type[/code]. The origin server "
"is refusing to service the request because the payload is in a format not "
"supported by this method on the target resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:361
+#: doc/classes/HTTPClient.xml:362
msgid ""
"HTTP status code [code]416 Requested Range Not Satisfiable[/code]. None of "
"the ranges in the request's Range header field overlap the current extent of "
@@ -23869,21 +24905,21 @@ msgid ""
"to invalid ranges or an excessive request of small or overlapping ranges."
msgstr ""
-#: doc/classes/HTTPClient.xml:364
+#: doc/classes/HTTPClient.xml:365
msgid ""
"HTTP status code [code]417 Expectation Failed[/code]. The expectation given "
"in the request's Expect header field could not be met by at least one of the "
"inbound servers."
msgstr ""
-#: doc/classes/HTTPClient.xml:367
+#: doc/classes/HTTPClient.xml:368
msgid ""
"HTTP status code [code]418 I'm A Teapot[/code]. Any attempt to brew coffee "
"with a teapot should result in the error code \"418 I'm a teapot\". The "
"resulting entity body MAY be short and stout."
msgstr ""
-#: doc/classes/HTTPClient.xml:370
+#: doc/classes/HTTPClient.xml:371
msgid ""
"HTTP status code [code]421 Misdirected Request[/code]. The request was "
"directed at a server that is not able to produce a response. This can be "
@@ -23891,7 +24927,7 @@ msgid ""
"combination of scheme and authority that are included in the request URI."
msgstr ""
-#: doc/classes/HTTPClient.xml:373
+#: doc/classes/HTTPClient.xml:374
msgid ""
"HTTP status code [code]422 Unprocessable Entity[/code] (WebDAV). The server "
"understands the content type of the request entity (hence a 415 Unsupported "
@@ -23900,40 +24936,40 @@ msgid ""
"was unable to process the contained instructions."
msgstr ""
-#: doc/classes/HTTPClient.xml:376
+#: doc/classes/HTTPClient.xml:377
msgid ""
"HTTP status code [code]423 Locked[/code] (WebDAV). The source or destination "
"resource of a method is locked."
msgstr ""
-#: doc/classes/HTTPClient.xml:379
+#: doc/classes/HTTPClient.xml:380
msgid ""
"HTTP status code [code]424 Failed Dependency[/code] (WebDAV). The method "
"could not be performed on the resource because the requested action depended "
"on another action and that action failed."
msgstr ""
-#: doc/classes/HTTPClient.xml:382
+#: doc/classes/HTTPClient.xml:383
msgid ""
"HTTP status code [code]426 Upgrade Required[/code]. The server refuses to "
"perform the request using the current protocol but might be willing to do so "
"after the client upgrades to a different protocol."
msgstr ""
-#: doc/classes/HTTPClient.xml:385
+#: doc/classes/HTTPClient.xml:386
msgid ""
"HTTP status code [code]428 Precondition Required[/code]. The origin server "
"requires the request to be conditional."
msgstr ""
-#: doc/classes/HTTPClient.xml:388
+#: doc/classes/HTTPClient.xml:389
msgid ""
"HTTP status code [code]429 Too Many Requests[/code]. The user has sent too "
"many requests in a given amount of time (see \"rate limiting\"). Back off "
"and increase time between requests or try again later."
msgstr ""
-#: doc/classes/HTTPClient.xml:391
+#: doc/classes/HTTPClient.xml:392
msgid ""
"HTTP status code [code]431 Request Header Fields Too Large[/code]. The "
"server is unwilling to process the request because its header fields are too "
@@ -23941,27 +24977,27 @@ msgid ""
"header fields."
msgstr ""
-#: doc/classes/HTTPClient.xml:394
+#: doc/classes/HTTPClient.xml:395
msgid ""
"HTTP status code [code]451 Response Unavailable For Legal Reasons[/code]. "
"The server is denying access to the resource as a consequence of a legal "
"demand."
msgstr ""
-#: doc/classes/HTTPClient.xml:397
+#: doc/classes/HTTPClient.xml:398
msgid ""
"HTTP status code [code]500 Internal Server Error[/code]. The server "
"encountered an unexpected condition that prevented it from fulfilling the "
"request."
msgstr ""
-#: doc/classes/HTTPClient.xml:400
+#: doc/classes/HTTPClient.xml:401
msgid ""
"HTTP status code [code]501 Not Implemented[/code]. The server does not "
"support the functionality required to fulfill the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:403
+#: doc/classes/HTTPClient.xml:404
msgid ""
"HTTP status code [code]502 Bad Gateway[/code]. The server, while acting as a "
"gateway or proxy, received an invalid response from an inbound server it "
@@ -23969,7 +25005,7 @@ msgid ""
"balancers or proxies."
msgstr ""
-#: doc/classes/HTTPClient.xml:406
+#: doc/classes/HTTPClient.xml:407
msgid ""
"HTTP status code [code]503 Service Unavailable[/code]. The server is "
"currently unable to handle the request due to a temporary overload or "
@@ -23977,7 +25013,7 @@ msgid ""
"again later."
msgstr ""
-#: doc/classes/HTTPClient.xml:409
+#: doc/classes/HTTPClient.xml:410
msgid ""
"HTTP status code [code]504 Gateway Timeout[/code]. The server, while acting "
"as a gateway or proxy, did not receive a timely response from an upstream "
@@ -23985,14 +25021,14 @@ msgid ""
"returned by load balancers or proxies."
msgstr ""
-#: doc/classes/HTTPClient.xml:412
+#: doc/classes/HTTPClient.xml:413
msgid ""
"HTTP status code [code]505 HTTP Version Not Supported[/code]. The server "
"does not support, or refuses to support, the major version of HTTP that was "
"used in the request message."
msgstr ""
-#: doc/classes/HTTPClient.xml:415
+#: doc/classes/HTTPClient.xml:416
msgid ""
"HTTP status code [code]506 Variant Also Negotiates[/code]. The server has an "
"internal configuration error: the chosen variant resource is configured to "
@@ -24000,14 +25036,14 @@ msgid ""
"proper end point in the negotiation process."
msgstr ""
-#: doc/classes/HTTPClient.xml:418
+#: doc/classes/HTTPClient.xml:419
msgid ""
"HTTP status code [code]507 Insufficient Storage[/code]. The method could not "
"be performed on the resource because the server is unable to store the "
"representation needed to successfully complete the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:421
+#: doc/classes/HTTPClient.xml:422
msgid ""
"HTTP status code [code]508 Loop Detected[/code]. The server terminated an "
"operation because it encountered an infinite loop while processing a request "
@@ -24015,14 +25051,14 @@ msgid ""
"failed."
msgstr ""
-#: doc/classes/HTTPClient.xml:424
+#: doc/classes/HTTPClient.xml:425
msgid ""
"HTTP status code [code]510 Not Extended[/code]. The policy for accessing the "
"resource has not been met in the request. The server should send back all "
"the information necessary for the client to issue an extended request."
msgstr ""
-#: doc/classes/HTTPClient.xml:427
+#: doc/classes/HTTPClient.xml:428
msgid ""
"HTTP status code [code]511 Network Authentication Required[/code]. The "
"client needs to authenticate to gain network access."
@@ -24048,12 +25084,21 @@ msgid ""
" http_request.connect(\"request_completed\", self, "
"\"_http_request_completed\")\n"
"\n"
-" # Perform the HTTP request. The URL below returns some JSON as of "
-"writing.\n"
+" # Perform a GET request. The URL below returns JSON as of writing.\n"
" var error = http_request.request(\"https://httpbin.org/get\")\n"
" if error != OK:\n"
" push_error(\"An error occurred in the HTTP request.\")\n"
"\n"
+" # Perform a POST request. The URL below returns JSON as of writing.\n"
+" # Note: Don't make simultaneous requests using a single HTTPRequest "
+"node.\n"
+" # The snippet below is provided for reference only.\n"
+" var body = {\"name\": \"Godette\"}\n"
+" var error = http_request.request(\"https://httpbin.org/post\", [], true, "
+"HTTPClient.METHOD_POST, body)\n"
+" if error != OK:\n"
+" push_error(\"An error occurred in the HTTP request.\")\n"
+"\n"
"\n"
"# Called when the HTTP request is completed.\n"
"func _http_request_completed(result, response_code, headers, body):\n"
@@ -24093,20 +25138,26 @@ msgid ""
" var texture_rect = TextureRect.new()\n"
" add_child(texture_rect)\n"
" texture_rect.texture = texture\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] When performing HTTP requests from a project exported to HTML5, "
+"keep in mind the remote server may not allow requests from foreign origins "
+"due to [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/"
+"url]. If you host the server in question, you should modify its backend to "
+"allow requests from foreign origins by adding the [code]Access-Control-Allow-"
+"Origin: *[/code] HTTP header."
msgstr ""
-#: doc/classes/HTTPRequest.xml:61
+#: doc/classes/HTTPRequest.xml:70
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/"
"http_request_class.html"
msgstr ""
-#: doc/classes/HTTPRequest.xml:69
+#: doc/classes/HTTPRequest.xml:78
msgid "Cancels the current request."
msgstr ""
-#: doc/classes/HTTPRequest.xml:76
+#: doc/classes/HTTPRequest.xml:85
msgid ""
"Returns the response body length.\n"
"[b]Note:[/b] Some Web servers may not send a body length. In this case, the "
@@ -24114,17 +25165,17 @@ msgid ""
"the body length will also be [code]-1[/code]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:84
+#: doc/classes/HTTPRequest.xml:93
msgid "Returns the amount of bytes this HTTPRequest downloaded."
msgstr ""
-#: doc/classes/HTTPRequest.xml:91
+#: doc/classes/HTTPRequest.xml:100
msgid ""
"Returns the current status of the underlying [HTTPClient]. See [enum "
"HTTPClient.Status]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:108
+#: doc/classes/HTTPRequest.xml:117
msgid ""
"Creates request on the underlying [HTTPClient]. If there is no configuration "
"errors, it tries to connect using [method HTTPClient.connect_to_host] and "
@@ -24137,11 +25188,11 @@ msgid ""
"connect to host."
msgstr ""
-#: doc/classes/HTTPRequest.xml:115
+#: doc/classes/HTTPRequest.xml:124
msgid "Maximum allowed size for response bodies."
msgstr ""
-#: doc/classes/HTTPRequest.xml:118
+#: doc/classes/HTTPRequest.xml:127
msgid ""
"The size of the buffer used and maximum bytes to read per iteration. See "
"[member HTTPClient.read_chunk_size].\n"
@@ -24149,63 +25200,63 @@ msgid ""
"files to achieve better speeds at the cost of memory."
msgstr ""
-#: doc/classes/HTTPRequest.xml:122
+#: doc/classes/HTTPRequest.xml:131
msgid "The file to download into. Will output any received file into it."
msgstr ""
-#: doc/classes/HTTPRequest.xml:125
+#: doc/classes/HTTPRequest.xml:134
msgid "Maximum number of allowed redirects."
msgstr ""
-#: doc/classes/HTTPRequest.xml:130
+#: doc/classes/HTTPRequest.xml:139
msgid "If [code]true[/code], multithreading is used to improve performance."
msgstr ""
-#: doc/classes/HTTPRequest.xml:144
+#: doc/classes/HTTPRequest.xml:153
msgid "Emitted when a request is completed."
msgstr ""
-#: doc/classes/HTTPRequest.xml:150
+#: doc/classes/HTTPRequest.xml:159
msgid "Request successful."
msgstr ""
-#: doc/classes/HTTPRequest.xml:155
+#: doc/classes/HTTPRequest.xml:164
msgid "Request failed while connecting."
msgstr ""
-#: doc/classes/HTTPRequest.xml:158
+#: doc/classes/HTTPRequest.xml:167
msgid "Request failed while resolving."
msgstr ""
-#: doc/classes/HTTPRequest.xml:161
+#: doc/classes/HTTPRequest.xml:170
msgid "Request failed due to connection (read/write) error."
msgstr ""
-#: doc/classes/HTTPRequest.xml:164
+#: doc/classes/HTTPRequest.xml:173
msgid "Request failed on SSL handshake."
msgstr ""
-#: doc/classes/HTTPRequest.xml:167
+#: doc/classes/HTTPRequest.xml:176
msgid "Request does not have a response (yet)."
msgstr ""
-#: doc/classes/HTTPRequest.xml:170
+#: doc/classes/HTTPRequest.xml:179
msgid "Request exceeded its maximum size limit, see [member body_size_limit]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:173
+#: doc/classes/HTTPRequest.xml:182
msgid "Request failed (currently unused)."
msgstr ""
-#: doc/classes/HTTPRequest.xml:176
+#: doc/classes/HTTPRequest.xml:185
msgid "HTTPRequest couldn't open the download file."
msgstr ""
-#: doc/classes/HTTPRequest.xml:179
+#: doc/classes/HTTPRequest.xml:188
msgid "HTTPRequest couldn't write to the download file."
msgstr ""
-#: doc/classes/HTTPRequest.xml:182
+#: doc/classes/HTTPRequest.xml:191
msgid "Request reached its maximum redirect limit, see [member max_redirects]."
msgstr ""
@@ -24429,42 +25480,46 @@ msgid "Loads an image from the binary contents of a PNG file."
msgstr ""
#: doc/classes/Image.xml:373
+msgid "Loads an image from the binary contents of a TGA file."
+msgstr ""
+
+#: doc/classes/Image.xml:382
msgid "Loads an image from the binary contents of a WebP file."
msgstr ""
-#: doc/classes/Image.xml:380
+#: doc/classes/Image.xml:389
msgid ""
"Converts the image's data to represent coordinates on a 3D plane. This is "
"used when the image represents a normalmap. A normalmap can add lots of "
"detail to a 3D surface without increasing the polygon count."
msgstr ""
-#: doc/classes/Image.xml:387
+#: doc/classes/Image.xml:396
msgid ""
"Multiplies color values with alpha values. Resulting color values for a "
"pixel are [code](color * alpha)/256[/code]."
msgstr ""
-#: doc/classes/Image.xml:400
+#: doc/classes/Image.xml:409
msgid ""
"Resizes the image to the given [code]width[/code] and [code]height[/code]. "
"New pixels are calculated using [code]interpolation[/code]. See "
"[code]interpolation[/code] constants."
msgstr ""
-#: doc/classes/Image.xml:409
+#: doc/classes/Image.xml:418
msgid ""
"Resizes the image to the nearest power of 2 for the width and height. If "
"[code]square[/code] is [code]true[/code] then set width and height to be the "
"same."
msgstr ""
-#: doc/classes/Image.xml:416
+#: doc/classes/Image.xml:425
msgid ""
"Converts a standard RGBE (Red Green Blue Exponent) image to an sRGB image."
msgstr ""
-#: doc/classes/Image.xml:427
+#: doc/classes/Image.xml:436
msgid ""
"Saves the image as an EXR file to [code]path[/code]. If [code]grayscale[/"
"code] is [code]true[/code] and the image has only one channel, it will be "
@@ -24473,11 +25528,11 @@ msgid ""
"TinyEXR module."
msgstr ""
-#: doc/classes/Image.xml:436
+#: doc/classes/Image.xml:445
msgid "Saves the image as a PNG file to [code]path[/code]."
msgstr ""
-#: doc/classes/Image.xml:455
+#: doc/classes/Image.xml:464
msgid ""
"Sets the [Color] of the pixel at [code](x, y)[/code]. Example:\n"
"[codeblock]\n"
@@ -24487,7 +25542,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Image.xml:471
+#: doc/classes/Image.xml:480
msgid ""
"Sets the [Color] of the pixel at [code](dst.x, dst.y)[/code]. Note that the "
"[code]dst[/code] values must be integers. Example:\n"
@@ -24498,51 +25553,51 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Image.xml:483
+#: doc/classes/Image.xml:492
msgid "Shrinks the image by a factor of 2."
msgstr ""
-#: doc/classes/Image.xml:490
+#: doc/classes/Image.xml:499
msgid "Converts the raw data from the sRGB colorspace to a linear scale."
msgstr ""
-#: doc/classes/Image.xml:496
+#: doc/classes/Image.xml:505
msgid ""
"Holds all of the image's color data in a given format. See [enum Format] "
"constants."
msgstr ""
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:510
msgid "The maximal width allowed for [Image] resources."
msgstr ""
-#: doc/classes/Image.xml:504
+#: doc/classes/Image.xml:513
msgid "The maximal height allowed for [Image] resources."
msgstr ""
-#: doc/classes/Image.xml:507
+#: doc/classes/Image.xml:516
msgid "Texture format with a single 8-bit depth representing luminance."
msgstr ""
-#: doc/classes/Image.xml:510
+#: doc/classes/Image.xml:519
msgid ""
"OpenGL texture format with two values, luminance and alpha each stored with "
"8 bits."
msgstr ""
-#: doc/classes/Image.xml:513
+#: doc/classes/Image.xml:522
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
"bitdepth of 8."
msgstr ""
-#: doc/classes/Image.xml:516
+#: doc/classes/Image.xml:525
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
-#: doc/classes/Image.xml:519
+#: doc/classes/Image.xml:528
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -24550,7 +25605,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:523
+#: doc/classes/Image.xml:532
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -24558,67 +25613,67 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:536
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
-#: doc/classes/Image.xml:532
+#: doc/classes/Image.xml:541
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
-#: doc/classes/Image.xml:535
+#: doc/classes/Image.xml:544
msgid ""
"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
"each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:538
+#: doc/classes/Image.xml:547
msgid ""
"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
"components, each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:541
+#: doc/classes/Image.xml:550
msgid ""
"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
"components, each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:544
+#: doc/classes/Image.xml:553
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 16-"
"bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:556
msgid ""
"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
"each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:550
+#: doc/classes/Image.xml:559
msgid ""
"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
"components, each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:553
+#: doc/classes/Image.xml:562
msgid ""
"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
"components, each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:556
+#: doc/classes/Image.xml:565
msgid ""
"A special OpenGL texture format where the three color components have 9 bits "
"of precision and all three share a single 5-bit exponent."
msgstr ""
-#: doc/classes/Image.xml:559
+#: doc/classes/Image.xml:568
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format that uses Block Compression 1, and is the smallest variation "
@@ -24628,7 +25683,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:563
+#: doc/classes/Image.xml:572
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format that uses Block Compression 2, and color data is interpreted "
@@ -24638,7 +25693,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:567
+#: doc/classes/Image.xml:576
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format also known as Block Compression 3 or BC3 that contains 64 "
@@ -24649,7 +25704,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:571
+#: doc/classes/Image.xml:580
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -24657,7 +25712,7 @@ msgid ""
"DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:574
+#: doc/classes/Image.xml:583
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -24665,7 +25720,7 @@ msgid ""
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:577
+#: doc/classes/Image.xml:586
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -24674,21 +25729,21 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:581
+#: doc/classes/Image.xml:590
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with signed floating-point "
"RGB components."
msgstr ""
-#: doc/classes/Image.xml:584
+#: doc/classes/Image.xml:593
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned floating-point "
"RGB components."
msgstr ""
-#: doc/classes/Image.xml:587
+#: doc/classes/Image.xml:596
msgid ""
"Texture format used on PowerVR-supported mobile platforms, uses 2-bit color "
"depth with no alpha. More information can be found [url=https://en.wikipedia."
@@ -24697,25 +25752,25 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:600
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:603
msgid ""
"Similar to [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with 4-"
"bit color depth and no alpha."
msgstr ""
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:606
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:609
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -24723,7 +25778,7 @@ msgid ""
"standard. This format cannot store an alpha channel."
msgstr ""
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:612
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24731,7 +25786,7 @@ msgid ""
"unsigned data."
msgstr ""
-#: doc/classes/Image.xml:606
+#: doc/classes/Image.xml:615
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24739,7 +25794,7 @@ msgid ""
"channel of signed data."
msgstr ""
-#: doc/classes/Image.xml:609
+#: doc/classes/Image.xml:618
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24747,7 +25802,7 @@ msgid ""
"of unsigned data."
msgstr ""
-#: doc/classes/Image.xml:612
+#: doc/classes/Image.xml:621
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24755,7 +25810,7 @@ msgid ""
"channels of signed data."
msgstr ""
-#: doc/classes/Image.xml:615
+#: doc/classes/Image.xml:624
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24765,7 +25820,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:619
+#: doc/classes/Image.xml:628
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24775,7 +25830,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:623
+#: doc/classes/Image.xml:632
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24786,31 +25841,31 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:631
+#: doc/classes/Image.xml:640
msgid "Represents the size of the [enum Format] enum."
msgstr ""
-#: doc/classes/Image.xml:634
+#: doc/classes/Image.xml:643
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
-#: doc/classes/Image.xml:637
+#: doc/classes/Image.xml:646
msgid ""
"Performs bilinear interpolation. If the image is resized, it will be blurry. "
"This mode is faster than [constant INTERPOLATE_CUBIC], but it results in "
"lower quality."
msgstr ""
-#: doc/classes/Image.xml:640
+#: doc/classes/Image.xml:649
msgid ""
"Performs cubic interpolation. If the image is resized, it will be blurry. "
"This mode often gives better results compared to [constant "
"INTERPOLATE_BILINEAR], at the cost of being slower."
msgstr ""
-#: doc/classes/Image.xml:643
+#: doc/classes/Image.xml:652
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -24825,55 +25880,55 @@ msgid ""
"a new set will be generated for the resulting image."
msgstr ""
-#: doc/classes/Image.xml:650
+#: doc/classes/Image.xml:659
msgid ""
"Performs Lanczos interpolation. This is the slowest image resizing mode, but "
"it typically gives the best results, especially when downscalng images."
msgstr ""
-#: doc/classes/Image.xml:653
+#: doc/classes/Image.xml:662
msgid "Image does not have alpha."
msgstr ""
-#: doc/classes/Image.xml:656
+#: doc/classes/Image.xml:665
msgid "Image stores alpha in a single bit."
msgstr ""
-#: doc/classes/Image.xml:659
+#: doc/classes/Image.xml:668
msgid "Image uses alpha."
msgstr ""
-#: doc/classes/Image.xml:662
+#: doc/classes/Image.xml:671
msgid "Use S3TC compression."
msgstr ""
-#: doc/classes/Image.xml:665
+#: doc/classes/Image.xml:674
msgid "Use PVRTC2 compression."
msgstr ""
-#: doc/classes/Image.xml:668
+#: doc/classes/Image.xml:677
msgid "Use PVRTC4 compression."
msgstr ""
-#: doc/classes/Image.xml:671
+#: doc/classes/Image.xml:680
msgid "Use ETC compression."
msgstr ""
-#: doc/classes/Image.xml:674
+#: doc/classes/Image.xml:683
msgid "Use ETC2 compression."
msgstr ""
-#: doc/classes/Image.xml:689
+#: doc/classes/Image.xml:698
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
-#: doc/classes/Image.xml:692
+#: doc/classes/Image.xml:701
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
-#: doc/classes/Image.xml:695
+#: doc/classes/Image.xml:704
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -25692,7 +26747,7 @@ msgid "Contains mouse click information. See [method Node._input]."
msgstr ""
#: doc/classes/InputEventMouseButton.xml:10
-#: doc/classes/InputEventMouseMotion.xml:10
+#: doc/classes/InputEventMouseMotion.xml:11
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/inputs/"
"mouse_and_input_coordinates.html"
@@ -25729,29 +26784,36 @@ msgstr ""
#: doc/classes/InputEventMouseMotion.xml:7
msgid ""
"Contains mouse and pen motion information. Supports relative, absolute "
-"positions and speed. See [method Node._input]."
+"positions and speed. See [method Node._input].\n"
+"[b]Note:[/b] By default, this event is only emitted once per frame rendered "
+"at most. If you need more precise input reporting, call [method Input."
+"set_use_accumulated_input] with [code]false[/code] to make events emitted as "
+"often as possible. If you use InputEventMouseMotion to draw lines, consider "
+"implementing [url=https://en.wikipedia.org/wiki/Bresenham"
+"%27s_line_algorithm]Bresenham's line algorithm[/url] as well to avoid "
+"visible gaps in lines if the user is moving the mouse quickly."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:16
+#: doc/classes/InputEventMouseMotion.xml:17
msgid ""
"Represents the pressure the user puts on the pen. Ranges from [code]0.0[/"
"code] to [code]1.0[/code]."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:19
+#: doc/classes/InputEventMouseMotion.xml:20
msgid ""
"The mouse position relative to the previous position (position at the last "
-"frame). \n"
+"frame).\n"
"[b]Note:[/b] Since [InputEventMouseMotion] is only emitted when the mouse "
"moves, the last event won't have a relative position of [code]Vector2(0, 0)[/"
"code] when the user stops moving the mouse."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:23
+#: doc/classes/InputEventMouseMotion.xml:24
msgid "The mouse speed in pixels per second."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:26
+#: doc/classes/InputEventMouseMotion.xml:27
msgid ""
"Represents the angles of tilt of the pen. Positive X-coordinate value "
"indicates a tilt to the right. Positive Y-coordinate value indicates a tilt "
@@ -26641,14 +27703,17 @@ msgstr ""
#: doc/classes/JSON.xml:18
msgid ""
-"Parses a JSON encoded string and returns a [JSONParseResult] containing the "
+"Parses a JSON-encoded string and returns a [JSONParseResult] containing the "
"result."
msgstr ""
#: doc/classes/JSON.xml:31
msgid ""
"Converts a [Variant] var to JSON text and returns the result. Useful for "
-"serializing data to store or send over the network."
+"serializing data to store or send over the network.\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, converting a Variant to JSON text "
+"will convert all numerical values to [float] types."
msgstr ""
#: doc/classes/JSONParseResult.xml:4
@@ -26671,26 +27736,27 @@ msgstr ""
#: doc/classes/JSONParseResult.xml:18
msgid ""
-"The line number where the error occurred if JSON source was not successfully "
-"parsed."
+"The line number where the error occurred if the JSON source was not "
+"successfully parsed."
msgstr ""
#: doc/classes/JSONParseResult.xml:21
msgid ""
-"The error message if JSON source was not successfully parsed. See the [enum "
-"Error] constants."
+"The error message if the JSON source was not successfully parsed. See the "
+"[enum Error] constants."
msgstr ""
#: doc/classes/JSONParseResult.xml:24
+#, fuzzy
msgid ""
"A [Variant] containing the parsed JSON. Use [method @GDScript.typeof] or the "
"[code]is[/code] keyword to check if it is what you expect. For example, if "
"the JSON source starts with curly braces ([code]{}[/code]), a [Dictionary] "
-"will be returned. If the JSON source starts with braces ([code][][/code]), "
+"will be returned. If the JSON source starts with brackets ([code][][/code]), "
"an [Array] will be returned.\n"
"[b]Note:[/b] The JSON specification does not define integer or float types, "
-"but only a number type. Therefore, parsing a JSON text will convert all "
-"numerical values to float types.\n"
+"but only a [i]number[/i] type. Therefore, parsing a JSON text will convert "
+"all numerical values to [float] types.\n"
"[b]Note:[/b] JSON objects do not preserve key order like Godot dictionaries, "
"thus, you should not rely on keys being in a certain order if a dictionary "
"is constructed from JSON. In contrast, JSON arrays retain the order of their "
@@ -26700,9 +27766,25 @@ msgid ""
"if typeof(p.result) == TYPE_ARRAY:\n"
" print(p.result[0]) # Prints \"hello\"\n"
"else:\n"
-" print(\"unexpected results\")\n"
+" push_error(\"Unexpected results.\")\n"
"[/codeblock]"
msgstr ""
+"Разбор текÑта JSON в переменную (иÑпользуйте [method typeof] Ð´Ð»Ñ Ð¿Ñ€Ð¾Ð²ÐµÑ€ÐºÐ¸ "
+"типа).\n"
+"Имейте в виду, что ÑÐ¿ÐµÑ†Ð¸Ñ„Ð¸ÐºÐ°Ñ†Ð¸Ñ JSON не определÑет целочиÑленные или "
+"плавающие типы, а только чиÑловой тип. Следовательно, анализ текÑта JSON "
+"преобразует вÑе чиÑловые Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð² типы [float].\n"
+"Обратите внимание, что объекты JSON не ÑохранÑÑŽÑ‚ порÑдок ключей, как Ñловари "
+"Godot, поÑтому вам не Ñледует полагатьÑÑ Ð½Ð° ключи в определенном порÑдке, "
+"еÑли Ñловарь поÑтроен из JSON. Ðапротив, маÑÑивы JSON ÑохранÑÑŽÑ‚ порÑдок "
+"Ñвоих Ñлементов:\n"
+"[codeblock]\n"
+"p = parse_json('[\"a\", \"b\", \"c\"]')\n"
+"if typeof(p) == TYPE_ARRAY:\n"
+" print(p[0]) # Ðапечатает a\n"
+"else:\n"
+" print(\"unexpected results\")\n"
+"[/codeblock]"
#: doc/classes/KinematicBody2D.xml:4
msgid "Kinematic body 2D node."
@@ -26816,7 +27898,7 @@ msgid ""
"simulation will run at an incorrect speed.\n"
"[code]linear_velocity[/code] is the velocity vector in pixels per second. "
"Unlike in [method move_and_collide], you should [i]not[/i] multiply it by "
-"[code]delta[/code] — the physics engine handles applying the velocity. \n"
+"[code]delta[/code] — the physics engine handles applying the velocity.\n"
"[code]up_direction[/code] is the up direction, used to determine what is a "
"wall and what is a floor or a ceiling. If set to the default value of "
"[code]Vector2(0, 0)[/code], everything is considered a wall. This is useful "
@@ -26932,7 +28014,7 @@ msgid ""
"[code]linear_velocity[/code] is the velocity vector (typically meters per "
"second). Unlike in [method move_and_collide], you should [i]not[/i] multiply "
"it by [code]delta[/code] — the physics engine handles applying the "
-"velocity. \n"
+"velocity.\n"
"[code]up_direction[/code] is the up direction, used to determine what is a "
"wall and what is a floor or a ceiling. If set to the default value of "
"[code]Vector3(0, 0, 0)[/code], everything is considered a wall.\n"
@@ -27661,17 +28743,6 @@ msgid ""
"[b]Note:[/b] Hiding a light does [i]not[/i] affect baking."
msgstr ""
-#: doc/classes/Light3D.xml:152
-msgid "Only indirect lighting will be baked (default)."
-msgstr ""
-
-#: doc/classes/Light3D.xml:155
-msgid ""
-"Both direct and indirect light will be baked.\n"
-"[b]Note:[/b] You should hide the light if you don't want it to appear twice "
-"(dynamic and baked)."
-msgstr ""
-
#: doc/classes/LightOccluder2D.xml:4
msgid "Occludes light cast by a Light2D, casting shadows."
msgstr ""
@@ -27950,136 +29021,142 @@ msgstr ""
msgid "Text alignment as defined in the [enum Align] enum."
msgstr ""
-#: doc/classes/LineEdit.xml:120 doc/classes/TextEdit.xml:406
+#: doc/classes/LineEdit.xml:120 doc/classes/TextEdit.xml:358
msgid "If [code]true[/code], the caret (visual cursor) blinks."
msgstr ""
-#: doc/classes/LineEdit.xml:123 doc/classes/TextEdit.xml:409
+#: doc/classes/LineEdit.xml:123 doc/classes/TextEdit.xml:361
msgid "Duration (in seconds) of a caret's blinking cycle."
msgstr ""
-#: doc/classes/LineEdit.xml:126
+#: doc/classes/LineEdit.xml:128
msgid ""
"The cursor's position inside the [LineEdit]. When set, the text may scroll "
"to accommodate it."
msgstr ""
-#: doc/classes/LineEdit.xml:129
+#: doc/classes/LineEdit.xml:131
msgid ""
"If [code]true[/code], the [LineEdit] will show a clear button if [code]text[/"
"code] is not empty, which can be used to clear the text quickly."
msgstr ""
-#: doc/classes/LineEdit.xml:132
+#: doc/classes/LineEdit.xml:134
msgid "If [code]true[/code], the context menu will appear when right-clicked."
msgstr ""
-#: doc/classes/LineEdit.xml:135
+#: doc/classes/LineEdit.xml:137
msgid ""
"If [code]false[/code], existing text cannot be modified and new text cannot "
"be added."
msgstr ""
-#: doc/classes/LineEdit.xml:138
+#: doc/classes/LineEdit.xml:140
msgid ""
"If [code]true[/code], the [LineEdit] width will increase to stay longer than "
"the [member text]. It will [b]not[/b] compress if the [member text] is "
"shortened."
msgstr ""
-#: doc/classes/LineEdit.xml:142
+#: doc/classes/LineEdit.xml:144
msgid ""
"Maximum amount of characters that can be entered inside the [LineEdit]. If "
"[code]0[/code], there is no limit."
msgstr ""
-#: doc/classes/LineEdit.xml:146
+#: doc/classes/LineEdit.xml:148
msgid ""
"Opacity of the [member placeholder_text]. From [code]0[/code] to [code]1[/"
"code]."
msgstr ""
-#: doc/classes/LineEdit.xml:149
+#: doc/classes/LineEdit.xml:151
msgid ""
"Text shown when the [LineEdit] is empty. It is [b]not[/b] the [LineEdit]'s "
"default value (see [member text])."
msgstr ""
-#: doc/classes/LineEdit.xml:152
+#: doc/classes/LineEdit.xml:154
msgid ""
"Sets the icon that will appear in the right end of the [LineEdit] if there's "
"no [member text], or always, if [member clear_button_enabled] is set to "
"[code]false[/code]."
msgstr ""
-#: doc/classes/LineEdit.xml:155
+#: doc/classes/LineEdit.xml:157
msgid ""
"If [code]true[/code], every character is replaced with the secret character "
"(see [member secret_character])."
msgstr ""
-#: doc/classes/LineEdit.xml:158
+#: doc/classes/LineEdit.xml:160
msgid ""
"The character to use to mask secret input (defaults to \"*\"). Only a single "
"character can be used as the secret character."
msgstr ""
-#: doc/classes/LineEdit.xml:161
+#: doc/classes/LineEdit.xml:163
msgid ""
"If [code]false[/code], it's impossible to select the text using mouse nor "
"keyboard."
msgstr ""
-#: doc/classes/LineEdit.xml:164
+#: doc/classes/LineEdit.xml:166
msgid "If [code]false[/code], using shortcuts will be disabled."
msgstr ""
-#: doc/classes/LineEdit.xml:167
+#: doc/classes/LineEdit.xml:169
msgid ""
"String value of the [LineEdit].\n"
"[b]Note:[/b] Changing text using this property won't emit the [signal "
"text_changed] signal."
msgstr ""
-#: doc/classes/LineEdit.xml:174
+#: doc/classes/LineEdit.xml:173 doc/classes/TextEdit.xml:434
+msgid ""
+"If [code]true[/code], the native virtual keyboard is shown when focused on "
+"platforms that support it."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:179
msgid ""
"Emitted when trying to append text that would overflow the [member "
"max_length]."
msgstr ""
-#: doc/classes/LineEdit.xml:181 doc/classes/TextEdit.xml:525
+#: doc/classes/LineEdit.xml:186 doc/classes/TextEdit.xml:490
msgid "Emitted when the text changes."
msgstr ""
-#: doc/classes/LineEdit.xml:188
+#: doc/classes/LineEdit.xml:193
msgid "Emitted when the user presses [constant KEY_ENTER] on the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:194
+#: doc/classes/LineEdit.xml:199
msgid "Aligns the text on the left-hand side of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:197
+#: doc/classes/LineEdit.xml:202
msgid "Centers the text in the middle of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:200
+#: doc/classes/LineEdit.xml:205
msgid "Aligns the text on the right-hand side of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:203
+#: doc/classes/LineEdit.xml:208
msgid "Stretches whitespaces to fit the [LineEdit]'s width."
msgstr ""
-#: doc/classes/LineEdit.xml:206 doc/classes/TextEdit.xml:540
+#: doc/classes/LineEdit.xml:211 doc/classes/TextEdit.xml:505
msgid "Cuts (copies and clears) the selected text."
msgstr ""
-#: doc/classes/LineEdit.xml:209 doc/classes/TextEdit.xml:543
+#: doc/classes/LineEdit.xml:214 doc/classes/TextEdit.xml:508
msgid "Copies the selected text."
msgstr ""
-#: doc/classes/LineEdit.xml:212
+#: doc/classes/LineEdit.xml:217
msgid ""
"Pastes the clipboard text over the selected text (or at the cursor's "
"position).\n"
@@ -28087,80 +29164,80 @@ msgid ""
"clipboard via [method String.strip_escapes]."
msgstr ""
-#: doc/classes/LineEdit.xml:216
+#: doc/classes/LineEdit.xml:221
msgid "Erases the whole [LineEdit] text."
msgstr ""
-#: doc/classes/LineEdit.xml:219
+#: doc/classes/LineEdit.xml:224
msgid "Selects the whole [LineEdit] text."
msgstr ""
-#: doc/classes/LineEdit.xml:222 doc/classes/TextEdit.xml:555
+#: doc/classes/LineEdit.xml:227 doc/classes/TextEdit.xml:520
msgid "Undoes the previous action."
msgstr ""
-#: doc/classes/LineEdit.xml:225
+#: doc/classes/LineEdit.xml:230
msgid "Reverse the last undo action."
msgstr ""
-#: doc/classes/LineEdit.xml:228 doc/classes/TextEdit.xml:561
+#: doc/classes/LineEdit.xml:233 doc/classes/TextEdit.xml:526
msgid "Represents the size of the [enum MenuItems] enum."
msgstr ""
-#: doc/classes/LineEdit.xml:233
+#: doc/classes/LineEdit.xml:238
msgid "Texture for the clear button. See [member clear_button_enabled]."
msgstr ""
-#: doc/classes/LineEdit.xml:236
+#: doc/classes/LineEdit.xml:241
msgid "Color used as default tint for the clear button."
msgstr ""
-#: doc/classes/LineEdit.xml:239
+#: doc/classes/LineEdit.xml:244
msgid "Color used for the clear button when it's pressed."
msgstr ""
-#: doc/classes/LineEdit.xml:242
+#: doc/classes/LineEdit.xml:247
msgid "Color of the [LineEdit]'s visual cursor (caret)."
msgstr ""
-#: doc/classes/LineEdit.xml:245
+#: doc/classes/LineEdit.xml:250
msgid "Background used when [LineEdit] has GUI focus."
msgstr ""
-#: doc/classes/LineEdit.xml:248
+#: doc/classes/LineEdit.xml:253
msgid "Font used for the text."
msgstr ""
-#: doc/classes/LineEdit.xml:251
+#: doc/classes/LineEdit.xml:256
msgid "Default font color."
msgstr ""
-#: doc/classes/LineEdit.xml:254
+#: doc/classes/LineEdit.xml:259
msgid "Font color for selected text (inside the selection rectangle)."
msgstr ""
-#: doc/classes/LineEdit.xml:257
+#: doc/classes/LineEdit.xml:262
msgid "Font color when editing is disabled."
msgstr ""
-#: doc/classes/LineEdit.xml:260
+#: doc/classes/LineEdit.xml:265
msgid ""
"Minimum horizontal space for the text (not counting the clear button and "
"content margins). This value is measured in count of space characters (i.e. "
"this amount of space characters can be displayed without scrolling)."
msgstr ""
-#: doc/classes/LineEdit.xml:263
+#: doc/classes/LineEdit.xml:268
msgid "Default background for the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:266
+#: doc/classes/LineEdit.xml:271
msgid ""
"Background used when [LineEdit] is in read-only mode ([member editable] is "
"set to [code]false[/code])."
msgstr ""
-#: doc/classes/LineEdit.xml:269
+#: doc/classes/LineEdit.xml:274
msgid "Color of the selection rectangle."
msgstr ""
@@ -28378,14 +29455,14 @@ msgstr ""
msgid "Emitted when a user responds to a permission request."
msgstr ""
-#: doc/classes/MainLoop.xml:127 doc/classes/Node.xml:948
+#: doc/classes/MainLoop.xml:127 doc/classes/Node.xml:946
msgid ""
"Notification received from the OS when the application is exceeding its "
"allocated memory.\n"
"Specific to the iOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:131 doc/classes/Node.xml:952
+#: doc/classes/MainLoop.xml:131 doc/classes/Node.xml:950
msgid ""
"Notification received when translations may have changed. Can be triggered "
"by the user changing the locale. Can be used to respond to language changes, "
@@ -28393,39 +29470,55 @@ msgid ""
"the built-in translation support, like [method Object.tr]."
msgstr ""
-#: doc/classes/MainLoop.xml:134 doc/classes/Node.xml:955
+#: doc/classes/MainLoop.xml:134 doc/classes/Node.xml:953
msgid ""
"Notification received from the OS when a request for \"About\" information "
"is sent.\n"
"Specific to the macOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:138 doc/classes/Node.xml:959
+#: doc/classes/MainLoop.xml:138 doc/classes/Node.xml:957
msgid ""
"Notification received from Godot's crash handler when the engine is about to "
"crash.\n"
"Implemented on desktop platforms if the crash handler is enabled."
msgstr ""
-#: doc/classes/MainLoop.xml:142 doc/classes/Node.xml:963
+#: doc/classes/MainLoop.xml:142 doc/classes/Node.xml:961
msgid ""
"Notification received from the OS when an update of the Input Method Engine "
"occurs (e.g. change of IME cursor position or composition string).\n"
"Specific to the macOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:146 doc/classes/Node.xml:967
+#: doc/classes/MainLoop.xml:146 doc/classes/Node.xml:965
msgid ""
-"Notification received from the OS when the app is resumed.\n"
+"Notification received from the OS when the application is resumed.\n"
"Specific to the Android platform."
msgstr ""
-#: doc/classes/MainLoop.xml:150 doc/classes/Node.xml:971
+#: doc/classes/MainLoop.xml:150 doc/classes/Node.xml:969
msgid ""
-"Notification received from the OS when the app is paused.\n"
+"Notification received from the OS when the application is paused.\n"
"Specific to the Android platform."
msgstr ""
+#: doc/classes/MainLoop.xml:154 doc/classes/Node.xml:973
+msgid ""
+"Notification received from the OS when the application is focused, i.e. when "
+"changing the focus from the OS desktop or a thirdparty application to any "
+"open window of the Godot instance.\n"
+"Implemented on desktop platforms."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:158 doc/classes/Node.xml:977
+msgid ""
+"Notification received from the OS when the application is defocused, i.e. "
+"when changing the focus from any open window of the Godot instance to the OS "
+"desktop or a thirdparty application.\n"
+"Implemented on desktop platforms."
+msgstr ""
+
#: doc/classes/MarginContainer.xml:4
msgid "Simple margin container."
msgstr ""
@@ -28733,11 +29826,11 @@ msgstr ""
msgid "Render array as triangle strips."
msgstr ""
-#: doc/classes/Mesh.xml:126 doc/classes/RenderingServer.xml:3189
+#: doc/classes/Mesh.xml:126 doc/classes/RenderingServer.xml:3185
msgid "Blend shapes are normalized."
msgstr ""
-#: doc/classes/Mesh.xml:129 doc/classes/RenderingServer.xml:3192
+#: doc/classes/Mesh.xml:129 doc/classes/RenderingServer.xml:3188
msgid "Blend shapes are relative to base weight."
msgstr ""
@@ -28779,37 +29872,37 @@ msgstr ""
msgid "Mesh array uses indices."
msgstr ""
-#: doc/classes/Mesh.xml:159 doc/classes/RenderingServer.xml:3145
+#: doc/classes/Mesh.xml:159 doc/classes/RenderingServer.xml:3141
msgid "Flag used to mark a compressed (half float) normal array."
msgstr ""
-#: doc/classes/Mesh.xml:162 doc/classes/RenderingServer.xml:3148
+#: doc/classes/Mesh.xml:162 doc/classes/RenderingServer.xml:3144
msgid "Flag used to mark a compressed (half float) tangent array."
msgstr ""
-#: doc/classes/Mesh.xml:165 doc/classes/RenderingServer.xml:3151
+#: doc/classes/Mesh.xml:165 doc/classes/RenderingServer.xml:3147
msgid "Flag used to mark a compressed (half float) color array."
msgstr ""
-#: doc/classes/Mesh.xml:168 doc/classes/RenderingServer.xml:3154
+#: doc/classes/Mesh.xml:168 doc/classes/RenderingServer.xml:3150
msgid "Flag used to mark a compressed (half float) UV coordinates array."
msgstr ""
-#: doc/classes/Mesh.xml:171 doc/classes/RenderingServer.xml:3157
+#: doc/classes/Mesh.xml:171 doc/classes/RenderingServer.xml:3153
msgid ""
"Flag used to mark a compressed (half float) UV coordinates array for the "
"second UV coordinates."
msgstr ""
-#: doc/classes/Mesh.xml:174 doc/classes/RenderingServer.xml:3160
+#: doc/classes/Mesh.xml:174 doc/classes/RenderingServer.xml:3156
msgid "Flag used to mark a compressed index array."
msgstr ""
-#: doc/classes/Mesh.xml:177 doc/classes/RenderingServer.xml:3166
+#: doc/classes/Mesh.xml:177 doc/classes/RenderingServer.xml:3162
msgid "Flag used to mark that the array contains 2D vertices."
msgstr ""
-#: doc/classes/Mesh.xml:180 doc/classes/RenderingServer.xml:3163
+#: doc/classes/Mesh.xml:180 doc/classes/RenderingServer.xml:3159
msgid ""
"Used to set flags [constant ARRAY_COMPRESS_NORMAL], [constant "
"ARRAY_COMPRESS_TANGENT], [constant ARRAY_COMPRESS_COLOR], [constant "
@@ -30570,7 +31663,10 @@ msgstr ""
msgid ""
"The number of channels to be used by ENet. Channels are used to separate "
"different kinds of data. In reliable or ordered mode, for example, the "
-"packet delivery order is ensured on a per channel basis."
+"packet delivery order is ensured on a per-channel basis. This is done to "
+"combat latency and reduces ordering restrictions on packets. The delivery "
+"status of a packet in one channel won't stall the delivery of other packets "
+"in another channel."
msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:134
@@ -30597,11 +31693,12 @@ msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:144
msgid ""
"Set the default channel to be used to transfer data. By default, this value "
-"is [code]-1[/code] which means that ENet will only use 2 channels, one for "
-"reliable and one for unreliable packets. Channel [code]0[/code] is reserved, "
-"and cannot be used. Setting this member to any value between [code]0[/code] "
-"and [member channel_count] (excluded) will force ENet to use that channel "
-"for sending data."
+"is [code]-1[/code] which means that ENet will only use 2 channels: one for "
+"reliable packets, and one for unreliable packets. The channel [code]0[/code] "
+"is reserved and cannot be used. Setting this member to any value between "
+"[code]0[/code] and [member channel_count] (excluded) will force ENet to use "
+"that channel for sending data. See [member channel_count] for more "
+"information about ENet channels."
msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:148
@@ -31793,57 +32890,63 @@ msgstr ""
#: doc/classes/Node.xml:930
msgid ""
-"Notification received from the OS when the game window is focused.\n"
-"Implemented on all platforms."
+"Notification received from the OS when the node's parent [Window] is "
+"focused. This may be a change of focus between two windows of the same "
+"engine instance, or from the OS desktop or a third-party application to a "
+"window of the game (in which case [constant "
+"NOTIFICATION_APPLICATION_FOCUS_IN] is also emitted)."
msgstr ""
-#: doc/classes/Node.xml:934
+#: doc/classes/Node.xml:933
msgid ""
-"Notification received from the OS when the game window is unfocused.\n"
-"Implemented on all platforms."
+"Notification received from the OS when the node's parent [Window] is "
+"defocused. This may be a change of focus between two windows of the same "
+"engine instance, or from a window of the game to the OS desktop or a third-"
+"party application (in which case [constant "
+"NOTIFICATION_APPLICATION_FOCUS_OUT] is also emitted)."
msgstr ""
-#: doc/classes/Node.xml:938
+#: doc/classes/Node.xml:936
msgid ""
"Notification received from the OS when a close request is sent (e.g. closing "
"the window with a \"Close\" button or [kbd]Alt + F4[/kbd]).\n"
"Implemented on desktop platforms."
msgstr ""
-#: doc/classes/Node.xml:942
+#: doc/classes/Node.xml:940
msgid ""
"Notification received from the OS when a go back request is sent (e.g. "
"pressing the \"Back\" button on Android).\n"
"Specific to the Android platform."
msgstr ""
-#: doc/classes/Node.xml:975
+#: doc/classes/Node.xml:981
msgid ""
"Inherits pause mode from the node's parent. For the root node, it is "
"equivalent to [constant PAUSE_MODE_STOP]. Default."
msgstr ""
-#: doc/classes/Node.xml:978
+#: doc/classes/Node.xml:984
msgid "Stops processing when the [SceneTree] is paused."
msgstr ""
-#: doc/classes/Node.xml:981
+#: doc/classes/Node.xml:987
msgid "Continue to process regardless of the [SceneTree] pause state."
msgstr ""
-#: doc/classes/Node.xml:984
+#: doc/classes/Node.xml:990
msgid "Duplicate the node's signals."
msgstr ""
-#: doc/classes/Node.xml:987
+#: doc/classes/Node.xml:993
msgid "Duplicate the node's groups."
msgstr ""
-#: doc/classes/Node.xml:990
+#: doc/classes/Node.xml:996
msgid "Duplicate the node's scripts."
msgstr ""
-#: doc/classes/Node.xml:993
+#: doc/classes/Node.xml:999
msgid ""
"Duplicate using instancing.\n"
"An instance stays linked to the original so when the original changes, the "
@@ -32067,12 +33170,6 @@ msgid ""
"changes. [Node3D] will not propagate this by default."
msgstr ""
-#: doc/classes/Node3D.xml:104
-msgid ""
-"Returns whether the node is visible, taking into consideration that its "
-"parents visibility."
-msgstr ""
-
#: doc/classes/Node3D.xml:115
msgid ""
"Rotates itself so that the local -Z axis points towards the [code]target[/"
@@ -32242,7 +33339,10 @@ msgid "Local translation of this node."
msgstr ""
#: doc/classes/Node3D.xml:326
-msgid "If [code]true[/code], this node is drawn."
+msgid ""
+"If [code]true[/code], this node is drawn. The node is only visible if all of "
+"its antecedents are visible as well (in other words, [method "
+"is_visible_in_tree] must return [code]true[/code])."
msgstr ""
#: doc/classes/Node3D.xml:332
@@ -32499,10 +33599,20 @@ msgid ""
"the key exists, even if the value is [code]null[/code].\n"
"Objects also receive notifications. Notifications are a simple way to notify "
"the object about different events, so they can all be handled together. See "
-"[method _notification]."
+"[method _notification].\n"
+"[b]Note:[/b] Unlike references to a [Reference], references to an Object "
+"stored in a variable can become invalid without warning. Therefore, it's "
+"recommended to use [Reference] for data classes instead of [Object]."
+msgstr ""
+
+#: doc/classes/Object.xml:23 doc/classes/Reference.xml:12
+#: doc/classes/Resource.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/getting_started/workflow/"
+"best_practices/node_alternatives.html"
msgstr ""
-#: doc/classes/Object.xml:30
+#: doc/classes/Object.xml:32
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method get].\n"
@@ -32510,7 +33620,7 @@ msgid ""
"code] does not exist."
msgstr ""
-#: doc/classes/Object.xml:38
+#: doc/classes/Object.xml:40
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method get_property_list].\n"
@@ -32522,11 +33632,11 @@ msgid ""
"PropertyUsageFlags])."
msgstr ""
-#: doc/classes/Object.xml:47
+#: doc/classes/Object.xml:49
msgid "Called when the object is initialized."
msgstr ""
-#: doc/classes/Object.xml:56
+#: doc/classes/Object.xml:58
msgid ""
"Called whenever the object receives a notification, which is identified in "
"[code]what[/code] by a constant. The base [Object] has two constants "
@@ -32535,7 +33645,7 @@ msgid ""
"notifications which are also received by this method."
msgstr ""
-#: doc/classes/Object.xml:67
+#: doc/classes/Object.xml:69
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method set].\n"
@@ -32543,7 +33653,7 @@ msgid ""
"exists."
msgstr ""
-#: doc/classes/Object.xml:75
+#: doc/classes/Object.xml:77
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method to_string], and thus the object's representation where it is "
@@ -32552,34 +33662,42 @@ msgid ""
"[code]\"[ClassName:RID]\"[/code]."
msgstr ""
-#: doc/classes/Object.xml:87
+#: doc/classes/Object.xml:89
msgid ""
"Adds a user-defined [code]signal[/code]. Arguments are optional, but can be "
"added as an [Array] of dictionaries, each containing [code]name: String[/"
"code] and [code]type: int[/code] (see [enum Variant.Type]) entries."
msgstr ""
-#: doc/classes/Object.xml:96
+#: doc/classes/Object.xml:98
msgid ""
"Calls the [code]method[/code] on the object and returns the result. This "
"method supports a variable number of arguments, so parameters are passed as "
"a comma separated list. Example:\n"
"[codeblock]\n"
"call(\"set\", \"position\", Vector2(42.0, 0.0))\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] In C#, the method name must be specified as snake_case if it is "
+"defined by a built-in Godot node. This doesn't apply to user-defined methods "
+"where you should use the same convention as in the C# source (typically "
+"PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:108
+#: doc/classes/Object.xml:111
msgid ""
"Calls the [code]method[/code] on the object during idle time. This method "
"supports a variable number of arguments, so parameters are passed as a comma "
"separated list. Example:\n"
"[codeblock]\n"
"call_deferred(\"set\", \"position\", Vector2(42.0, 0.0))\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] In C#, the method name must be specified as snake_case if it is "
+"defined by a built-in Godot node. This doesn't apply to user-defined methods "
+"where you should use the same convention as in the C# source (typically "
+"PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:122
+#: doc/classes/Object.xml:126
msgid ""
"Calls the [code]method[/code] on the object and returns the result. "
"Contrarily to [method call], this method does not support a variable number "
@@ -32589,13 +33707,13 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:132
+#: doc/classes/Object.xml:136
msgid ""
"Returns [code]true[/code] if the object can translate strings. See [method "
"set_message_translation] and [method tr]."
msgstr ""
-#: doc/classes/Object.xml:147
+#: doc/classes/Object.xml:151
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32631,7 +33749,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:174
+#: doc/classes/Object.xml:178
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32642,7 +33760,7 @@ msgid ""
"exists."
msgstr ""
-#: doc/classes/Object.xml:185
+#: doc/classes/Object.xml:189
msgid ""
"Emits the given [code]signal[/code]. The signal must exist, so it should be "
"a built-in signal of this class or one of its parent classes, or a user-"
@@ -32654,24 +33772,28 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:196
+#: doc/classes/Object.xml:200
msgid ""
"Deletes the object from memory. Any pre-existing reference to the freed "
"object will become invalid, e.g. [code]is_instance_valid(object)[/code] will "
"return [code]false[/code]."
msgstr ""
-#: doc/classes/Object.xml:205
+#: doc/classes/Object.xml:209
msgid ""
"Returns the [Variant] value of the given [code]property[/code]. If the "
-"[code]property[/code] doesn't exist, this will return [code]null[/code]."
+"[code]property[/code] doesn't exist, this will return [code]null[/code].\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:212
+#: doc/classes/Object.xml:217
msgid "Returns the object's class as a [String]."
msgstr ""
-#: doc/classes/Object.xml:219
+#: doc/classes/Object.xml:224
msgid ""
"Returns an [Array] of dictionaries with information about signals that are "
"connected to the object.\n"
@@ -32682,7 +33804,7 @@ msgid ""
"connected."
msgstr ""
-#: doc/classes/Object.xml:232
+#: doc/classes/Object.xml:237
msgid ""
"Gets the object's property indexed by the given [NodePath]. The node path "
"should be relative to the current object and can use the colon character "
@@ -32690,26 +33812,26 @@ msgid ""
"\"[/code] or [code]\"material:next_pass:blend_mode\"[/code]."
msgstr ""
-#: doc/classes/Object.xml:239
+#: doc/classes/Object.xml:244
msgid ""
"Returns the object's unique instance ID.\n"
"This ID can be saved in [EncodedObjectAsID], and can be used to retrieve the "
"object instance with [method @GDScript.instance_from_id]."
msgstr ""
-#: doc/classes/Object.xml:249
+#: doc/classes/Object.xml:254
msgid "Returns the object's metadata entry for the given [code]name[/code]."
msgstr ""
-#: doc/classes/Object.xml:256
+#: doc/classes/Object.xml:261
msgid "Returns the object's metadata as a [PackedStringArray]."
msgstr ""
-#: doc/classes/Object.xml:263
+#: doc/classes/Object.xml:268
msgid "Returns the object's methods and their signatures as an [Array]."
msgstr ""
-#: doc/classes/Object.xml:270
+#: doc/classes/Object.xml:275
msgid ""
"Returns the object's property list as an [Array] of dictionaries.\n"
"Each property's [Dictionary] contain at least [code]name: String[/code] and "
@@ -32719,54 +33841,54 @@ msgid ""
"PropertyUsageFlags])."
msgstr ""
-#: doc/classes/Object.xml:278
+#: doc/classes/Object.xml:283
msgid ""
"Returns the object's [Script] instance, or [code]null[/code] if none is "
"assigned."
msgstr ""
-#: doc/classes/Object.xml:287
+#: doc/classes/Object.xml:292
msgid "Returns an [Array] of connections for the given [code]signal[/code]."
msgstr ""
-#: doc/classes/Object.xml:294
+#: doc/classes/Object.xml:299
msgid "Returns the list of signals as an [Array] of dictionaries."
msgstr ""
-#: doc/classes/Object.xml:303
+#: doc/classes/Object.xml:308
msgid ""
"Returns [code]true[/code] if a metadata entry is found with the given "
"[code]name[/code]."
msgstr ""
-#: doc/classes/Object.xml:312
+#: doc/classes/Object.xml:317
msgid ""
"Returns [code]true[/code] if the object contains the given [code]method[/"
"code]."
msgstr ""
-#: doc/classes/Object.xml:321
+#: doc/classes/Object.xml:326
msgid "Returns [code]true[/code] if the given [code]signal[/code] exists."
msgstr ""
-#: doc/classes/Object.xml:330
+#: doc/classes/Object.xml:335
msgid ""
"Returns [code]true[/code] if the given user-defined [code]signal[/code] "
"exists. Only signals added using [method add_user_signal] are taken into "
"account."
msgstr ""
-#: doc/classes/Object.xml:337
+#: doc/classes/Object.xml:342
msgid "Returns [code]true[/code] if signal emission blocking is enabled."
msgstr ""
-#: doc/classes/Object.xml:346
+#: doc/classes/Object.xml:351
msgid ""
"Returns [code]true[/code] if the object inherits from the given [code]class[/"
"code]."
msgstr ""
-#: doc/classes/Object.xml:357
+#: doc/classes/Object.xml:362
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32774,13 +33896,13 @@ msgid ""
"code], [code]target[/code], and [code]method[/code]."
msgstr ""
-#: doc/classes/Object.xml:365
+#: doc/classes/Object.xml:370
msgid ""
"Returns [code]true[/code] if the [method Node.queue_free] method was called "
"for the object."
msgstr ""
-#: doc/classes/Object.xml:376
+#: doc/classes/Object.xml:381
msgid ""
"Send a given notification to the object, which will also trigger a call to "
"the [method _notification] method of all classes that the object inherits "
@@ -32792,34 +33914,42 @@ msgid ""
"and then down to its successive inheriting classes."
msgstr ""
-#: doc/classes/Object.xml:384
+#: doc/classes/Object.xml:389
msgid ""
"Notify the editor that the property list has changed, so that editor plugins "
"can take the new values into account. Does nothing on export builds."
msgstr ""
-#: doc/classes/Object.xml:393
+#: doc/classes/Object.xml:398
msgid "Removes a given entry from the object's metadata."
msgstr ""
-#: doc/classes/Object.xml:404
+#: doc/classes/Object.xml:409
msgid ""
"Assigns a new value to the given property. If the [code]property[/code] does "
-"not exist, nothing will happen."
+"not exist, nothing will happen.\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:413
+#: doc/classes/Object.xml:419
msgid "If set to [code]true[/code], signal emission is blocked."
msgstr ""
-#: doc/classes/Object.xml:424
+#: doc/classes/Object.xml:430
msgid ""
"Assigns a new value to the given property, after the current frame's physics "
"step. This is equivalent to calling [method set] via [method call_deferred], "
-"i.e. [code]call_deferred(\"set\", property, value)[/code]."
+"i.e. [code]call_deferred(\"set\", property, value)[/code].\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:435
+#: doc/classes/Object.xml:442
msgid ""
"Assigns a new value to the property identified by the [NodePath]. The node "
"path should be relative to the current object and can use the colon "
@@ -32831,19 +33961,19 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:449
+#: doc/classes/Object.xml:456
msgid ""
"Defines whether the object can translate strings (with calls to [method "
"tr]). Enabled by default."
msgstr ""
-#: doc/classes/Object.xml:460
+#: doc/classes/Object.xml:467
msgid ""
"Adds or changes a given entry in the object's metadata. Metadata are "
"serialized, and can take any [Variant] value."
msgstr ""
-#: doc/classes/Object.xml:469
+#: doc/classes/Object.xml:476
msgid ""
"Assigns a script to the object. Each object can have a single script "
"assigned to it, which are used to extend its functionality.\n"
@@ -32852,7 +33982,7 @@ msgid ""
"_init] method will be called."
msgstr ""
-#: doc/classes/Object.xml:477
+#: doc/classes/Object.xml:484
msgid ""
"Returns a [String] representing the object. If not overridden, defaults to "
"[code]\"[ClassName:RID]\"[/code].\n"
@@ -32860,7 +33990,7 @@ msgid ""
"representation."
msgstr ""
-#: doc/classes/Object.xml:487
+#: doc/classes/Object.xml:494
msgid ""
"Translates a message using translation catalogs configured in the Project "
"Settings.\n"
@@ -32869,35 +33999,35 @@ msgid ""
"set_message_translation]."
msgstr ""
-#: doc/classes/Object.xml:495
+#: doc/classes/Object.xml:502
msgid "Emitted whenever the object's script is changed."
msgstr ""
-#: doc/classes/Object.xml:501
+#: doc/classes/Object.xml:508
msgid "Called right when the object is initialized. Not available in script."
msgstr ""
-#: doc/classes/Object.xml:504
+#: doc/classes/Object.xml:511
msgid "Called before the object is about to be deleted."
msgstr ""
-#: doc/classes/Object.xml:507
+#: doc/classes/Object.xml:514
msgid ""
"Connects a signal in deferred mode. This way, signal emissions are stored in "
"a queue, then set on idle time."
msgstr ""
-#: doc/classes/Object.xml:510
+#: doc/classes/Object.xml:517
msgid "Persisting connections are saved when the object is serialized to file."
msgstr ""
-#: doc/classes/Object.xml:513
+#: doc/classes/Object.xml:520
msgid "One-shot connections disconnect themselves after emission."
msgstr ""
-#: doc/classes/Object.xml:516
+#: doc/classes/Object.xml:523
msgid ""
-"Connect a signal as reference counted. This means that a given signal can be "
+"Connect a signal as reference-counted. This means that a given signal can be "
"connected several times to the same target, and will only be fully "
"disconnected once no references are left."
msgstr ""
@@ -33362,10 +34492,29 @@ msgid "Returns the keycode of the given string (e.g. \"Escape\")."
msgstr ""
#: doc/classes/OS.xml:115
-msgid "Returns the command line arguments passed to the engine."
+msgid ""
+"Returns the command-line arguments passed to the engine.\n"
+"Command-line arguments can be written in any form, including both [code]--"
+"key value[/code] and [code]--key=value[/code] forms so they can be properly "
+"parsed, as long as custom command-line arguments do not conflict with engine "
+"arguments.\n"
+"You can also incorporate environment variables using the [method "
+"get_environment] method.\n"
+"You can set [code]editor/main_run_args[/code] in the Project Settings to "
+"define command-line arguments to be passed by the editor when running the "
+"project.\n"
+"Here's a minimal example on how to parse command-line arguments into a "
+"dictionary using the [code]--key=value[/code] form for arguments:\n"
+"[codeblock]\n"
+"var arguments = {}\n"
+"for argument in OS.get_cmdline_args():\n"
+" if argument.find(\"=\") > -1:\n"
+" var key_value = argument.split(\"=\")\n"
+" arguments[key_value[0].lstrip(\"--\")] = key_value[1]\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/OS.xml:122
+#: doc/classes/OS.xml:133
msgid ""
"Returns an array of MIDI device names.\n"
"The returned array will be empty if the system MIDI driver has not "
@@ -33373,14 +34522,14 @@ msgid ""
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:133
+#: doc/classes/OS.xml:144
msgid ""
"Returns current date as a dictionary of keys: [code]year[/code], "
"[code]month[/code], [code]day[/code], [code]weekday[/code], [code]dst[/code] "
"(Daylight Savings Time)."
msgstr ""
-#: doc/classes/OS.xml:142
+#: doc/classes/OS.xml:153
msgid ""
"Returns current datetime as a dictionary of keys: [code]year[/code], "
"[code]month[/code], [code]day[/code], [code]weekday[/code], [code]dst[/code] "
@@ -33388,7 +34537,7 @@ msgid ""
"[code]second[/code]."
msgstr ""
-#: doc/classes/OS.xml:151
+#: doc/classes/OS.xml:162
msgid ""
"Gets a dictionary of time values corresponding to the given UNIX epoch time "
"(in seconds).\n"
@@ -33397,22 +34546,22 @@ msgid ""
"the epoch."
msgstr ""
-#: doc/classes/OS.xml:161
+#: doc/classes/OS.xml:172
msgid "Returns an environment variable."
msgstr ""
-#: doc/classes/OS.xml:168
+#: doc/classes/OS.xml:179
msgid "Returns the path to the current engine executable."
msgstr ""
-#: doc/classes/OS.xml:175
+#: doc/classes/OS.xml:186
msgid ""
"With this function you can get the list of dangerous permissions that have "
"been granted to the Android application.\n"
"[b]Note:[/b] This method is implemented on Android."
msgstr ""
-#: doc/classes/OS.xml:185
+#: doc/classes/OS.xml:196
msgid ""
"Returns the given keycode as a string (e.g. Return values: [code]\"Escape\"[/"
"code], [code]\"Shift+Escape\"[/code]).\n"
@@ -33420,18 +34569,18 @@ msgid ""
"get_keycode_with_modifiers]."
msgstr ""
-#: doc/classes/OS.xml:193
+#: doc/classes/OS.xml:204
msgid "Returns the host OS locale."
msgstr ""
-#: doc/classes/OS.xml:200
+#: doc/classes/OS.xml:211
msgid ""
"Returns the model name of the current device.\n"
"[b]Note:[/b] This method is implemented on Android and iOS. Returns "
"[code]\"GenericDevice\"[/code] on unsupported platforms."
msgstr ""
-#: doc/classes/OS.xml:208
+#: doc/classes/OS.xml:219
msgid ""
"Returns the name of the host OS. Possible values are: [code]\"Android\"[/"
"code], [code]\"iOS\"[/code], [code]\"HTML5\"[/code], [code]\"OSX\"[/code], "
@@ -33439,81 +34588,81 @@ msgid ""
"[code]\"X11\"[/code]."
msgstr ""
-#: doc/classes/OS.xml:215
+#: doc/classes/OS.xml:226
msgid ""
"Returns the project's process ID.\n"
"[b]Note:[/b] This method is implemented on Android, iOS, Linux, macOS and "
"Windows."
msgstr ""
-#: doc/classes/OS.xml:223
+#: doc/classes/OS.xml:234
msgid "Returns the number of threads available on the host machine."
msgstr ""
-#: doc/classes/OS.xml:230
+#: doc/classes/OS.xml:241
msgid ""
"Returns the amount of time in milliseconds it took for the boot logo to "
"appear."
msgstr ""
-#: doc/classes/OS.xml:237
+#: doc/classes/OS.xml:248
msgid "Returns the maximum amount of static memory used (only works in debug)."
msgstr ""
-#: doc/classes/OS.xml:244
+#: doc/classes/OS.xml:255
msgid "Returns the amount of static memory being used by the program in bytes."
msgstr ""
-#: doc/classes/OS.xml:253
+#: doc/classes/OS.xml:264
msgid ""
"Returns the actual path to commonly used folders across different platforms. "
"Available locations are specified in [enum SystemDir].\n"
"[b]Note:[/b] This method is implemented on Android, Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:261
+#: doc/classes/OS.xml:272
msgid ""
"Returns the total number of available tablet drivers.\n"
"[b]Note:[/b] This method is implemented on Windows."
msgstr ""
-#: doc/classes/OS.xml:271
+#: doc/classes/OS.xml:282
msgid ""
"Returns the tablet driver name for the given index.\n"
"[b]Note:[/b] This method is implemented on Windows."
msgstr ""
-#: doc/classes/OS.xml:279
+#: doc/classes/OS.xml:290
msgid ""
"Returns the amount of time passed in milliseconds since the engine started."
msgstr ""
-#: doc/classes/OS.xml:286
+#: doc/classes/OS.xml:297
msgid ""
"Returns the amount of time passed in microseconds since the engine started."
msgstr ""
-#: doc/classes/OS.xml:295
+#: doc/classes/OS.xml:306
msgid "Returns current time as a dictionary of keys: hour, minute, second."
msgstr ""
-#: doc/classes/OS.xml:302
+#: doc/classes/OS.xml:313
msgid ""
"Returns the current time zone as a dictionary with the keys: bias and name."
msgstr ""
-#: doc/classes/OS.xml:309
+#: doc/classes/OS.xml:320
msgid ""
"Returns a string that is unique to the device.\n"
"[b]Note:[/b] Returns an empty string on HTML5 and UWP, as this method isn't "
"implemented on those platforms yet."
msgstr ""
-#: doc/classes/OS.xml:317
+#: doc/classes/OS.xml:328
msgid "Returns the current UNIX epoch timestamp."
msgstr ""
-#: doc/classes/OS.xml:326
+#: doc/classes/OS.xml:337
msgid ""
"Gets an epoch time value from a dictionary of time values.\n"
"[code]datetime[/code] must be populated with the following keys: [code]year[/"
@@ -33524,7 +34673,7 @@ msgid ""
"ignored."
msgstr ""
-#: doc/classes/OS.xml:335
+#: doc/classes/OS.xml:346
msgid ""
"Returns the absolute directory path where user data is written ([code]user://"
"[/code]).\n"
@@ -33542,11 +34691,11 @@ msgid ""
"[/code]."
msgstr ""
-#: doc/classes/OS.xml:348
+#: doc/classes/OS.xml:359
msgid "Returns [code]true[/code] if an environment variable exists."
msgstr ""
-#: doc/classes/OS.xml:357
+#: doc/classes/OS.xml:368
msgid ""
"Returns [code]true[/code] if the feature for the given feature tag is "
"supported in the currently running instance, depending on platform, build "
@@ -33557,7 +34706,7 @@ msgid ""
"[b]Note:[/b] Tag names are case-sensitive."
msgstr ""
-#: doc/classes/OS.xml:365
+#: doc/classes/OS.xml:376
msgid ""
"Returns [code]true[/code] if the Godot binary used to run the project is a "
"[i]debug[/i] export template, or when running in the editor.\n"
@@ -33568,26 +34717,26 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/OS.xml:376
+#: doc/classes/OS.xml:387
msgid ""
"Returns [code]true[/code] if the input keycode corresponds to a Unicode "
"character."
msgstr ""
-#: doc/classes/OS.xml:383
+#: doc/classes/OS.xml:394
msgid ""
"Returns [code]true[/code] if the engine was executed with [code]-v[/code] "
"(verbose stdout)."
msgstr ""
-#: doc/classes/OS.xml:390
+#: doc/classes/OS.xml:401
msgid ""
"If [code]true[/code], the [code]user://[/code] file system is persistent, so "
"that its state is the same after a player quits and starts the game again. "
"Relevant to the HTML5 platform, where this persistence may be unavailable."
msgstr ""
-#: doc/classes/OS.xml:399
+#: doc/classes/OS.xml:410
msgid ""
"Kill (terminate) the process identified by the given process ID ([code]pid[/"
"code]), e.g. the one returned by [method execute] in non-blocking mode.\n"
@@ -33597,37 +34746,37 @@ msgid ""
"Windows."
msgstr ""
-#: doc/classes/OS.xml:408
+#: doc/classes/OS.xml:419
msgid ""
"Initialises the singleton for the system MIDI driver.\n"
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:418
+#: doc/classes/OS.xml:429
msgid ""
"Shows all resources in the game. Optionally, the list can be written to a "
"file by specifying a file path in [code]tofile[/code]."
msgstr ""
-#: doc/classes/OS.xml:425
+#: doc/classes/OS.xml:436
msgid "Shows the list of loaded textures sorted by size in memory."
msgstr ""
-#: doc/classes/OS.xml:434
+#: doc/classes/OS.xml:445
msgid "Shows the number of resources loaded by the game of the given types."
msgstr ""
-#: doc/classes/OS.xml:443
+#: doc/classes/OS.xml:454
msgid "Shows all resources currently used by the game."
msgstr ""
-#: doc/classes/OS.xml:452
+#: doc/classes/OS.xml:463
msgid ""
"At the moment this function is only used by [code]AudioDriverOpenSL[/code] "
"to request permission for [code]RECORD_AUDIO[/code] on Android."
msgstr ""
-#: doc/classes/OS.xml:459
+#: doc/classes/OS.xml:470
msgid ""
"With this function you can request dangerous permissions since normal "
"permissions are automatically granted at install time in Android "
@@ -33635,15 +34784,15 @@ msgid ""
"[b]Note:[/b] This method is implemented on Android."
msgstr ""
-#: doc/classes/OS.xml:469
+#: doc/classes/OS.xml:480
msgid "Sets the name of the current thread."
msgstr ""
-#: doc/classes/OS.xml:478
+#: doc/classes/OS.xml:489
msgid "Enables backup saves if [code]enabled[/code] is [code]true[/code]."
msgstr ""
-#: doc/classes/OS.xml:487
+#: doc/classes/OS.xml:498
msgid ""
"Requests the OS to open a resource with the most appropriate program. For "
"example:\n"
@@ -33662,7 +34811,7 @@ msgid ""
"and Windows."
msgstr ""
-#: doc/classes/OS.xml:498
+#: doc/classes/OS.xml:509
msgid ""
"The exit code passed to the OS when the main loop exits. By convention, an "
"exit code of [code]0[/code] indicates success whereas a non-zero exit code "
@@ -33672,137 +34821,137 @@ msgid ""
"with an [code]exit_code[/code] argument passed."
msgstr ""
-#: doc/classes/OS.xml:502
+#: doc/classes/OS.xml:513
msgid ""
"If [code]true[/code], the engine optimizes for low processor usage by only "
"refreshing the screen if needed. Can improve battery consumption on mobile."
msgstr ""
-#: doc/classes/OS.xml:505
+#: doc/classes/OS.xml:516
msgid ""
"The amount of sleeping between frames when the low-processor usage mode is "
"enabled (in microseconds). Higher values will result in lower CPU usage."
msgstr ""
-#: doc/classes/OS.xml:508
-msgid "The current tablet drvier in use."
+#: doc/classes/OS.xml:519
+msgid "The current tablet driver in use."
msgstr ""
-#: doc/classes/OS.xml:513
+#: doc/classes/OS.xml:524
msgid ""
"The GLES2 rendering backend. It uses OpenGL ES 2.0 on mobile devices, OpenGL "
"2.1 on desktop platforms and WebGL 1.0 on the web."
msgstr ""
-#: doc/classes/OS.xml:516
+#: doc/classes/OS.xml:527
msgid "The Vulkan rendering backend."
msgstr ""
-#: doc/classes/OS.xml:519
+#: doc/classes/OS.xml:530
msgid "Sunday."
msgstr ""
-#: doc/classes/OS.xml:522
+#: doc/classes/OS.xml:533
msgid "Monday."
msgstr ""
-#: doc/classes/OS.xml:525
+#: doc/classes/OS.xml:536
msgid "Tuesday."
msgstr ""
-#: doc/classes/OS.xml:528
+#: doc/classes/OS.xml:539
msgid "Wednesday."
msgstr ""
-#: doc/classes/OS.xml:531
+#: doc/classes/OS.xml:542
msgid "Thursday."
msgstr ""
-#: doc/classes/OS.xml:534
+#: doc/classes/OS.xml:545
msgid "Friday."
msgstr ""
-#: doc/classes/OS.xml:537
+#: doc/classes/OS.xml:548
msgid "Saturday."
msgstr ""
-#: doc/classes/OS.xml:540
+#: doc/classes/OS.xml:551
msgid "January."
msgstr ""
-#: doc/classes/OS.xml:543
+#: doc/classes/OS.xml:554
msgid "February."
msgstr ""
-#: doc/classes/OS.xml:546
+#: doc/classes/OS.xml:557
msgid "March."
msgstr ""
-#: doc/classes/OS.xml:549
+#: doc/classes/OS.xml:560
msgid "April."
msgstr ""
-#: doc/classes/OS.xml:552
+#: doc/classes/OS.xml:563
msgid "May."
msgstr ""
-#: doc/classes/OS.xml:555
+#: doc/classes/OS.xml:566
msgid "June."
msgstr ""
-#: doc/classes/OS.xml:558
+#: doc/classes/OS.xml:569
msgid "July."
msgstr ""
-#: doc/classes/OS.xml:561
+#: doc/classes/OS.xml:572
msgid "August."
msgstr ""
-#: doc/classes/OS.xml:564
+#: doc/classes/OS.xml:575
msgid "September."
msgstr ""
-#: doc/classes/OS.xml:567
+#: doc/classes/OS.xml:578
msgid "October."
msgstr ""
-#: doc/classes/OS.xml:570
+#: doc/classes/OS.xml:581
msgid "November."
msgstr ""
-#: doc/classes/OS.xml:573
+#: doc/classes/OS.xml:584
msgid "December."
msgstr ""
-#: doc/classes/OS.xml:576
+#: doc/classes/OS.xml:587
msgid "Desktop directory path."
msgstr ""
-#: doc/classes/OS.xml:579
+#: doc/classes/OS.xml:590
msgid "DCIM (Digital Camera Images) directory path."
msgstr ""
-#: doc/classes/OS.xml:582
+#: doc/classes/OS.xml:593
msgid "Documents directory path."
msgstr ""
-#: doc/classes/OS.xml:585
+#: doc/classes/OS.xml:596
msgid "Downloads directory path."
msgstr ""
-#: doc/classes/OS.xml:588
+#: doc/classes/OS.xml:599
msgid "Movies directory path."
msgstr ""
-#: doc/classes/OS.xml:591
+#: doc/classes/OS.xml:602
msgid "Music directory path."
msgstr ""
-#: doc/classes/OS.xml:594
+#: doc/classes/OS.xml:605
msgid "Pictures directory path."
msgstr ""
-#: doc/classes/OS.xml:597
+#: doc/classes/OS.xml:608
msgid "Ringtones directory path."
msgstr ""
@@ -33857,7 +35006,16 @@ msgid ""
"should always be preferred."
msgstr ""
-#: doc/classes/PackedByteArray.xml:85
+#: doc/classes/PackedByteArray.xml:87 doc/classes/PackedColorArray.xml:53
+#: doc/classes/PackedFloat32Array.xml:54 doc/classes/PackedFloat64Array.xml:54
+#: doc/classes/PackedInt32Array.xml:54 doc/classes/PackedInt64Array.xml:54
+#: doc/classes/PackedStringArray.xml:53 doc/classes/PackedVector2Array.xml:53
+#: doc/classes/PackedVector3Array.xml:53
+#, fuzzy
+msgid "Returns [code]true[/code] if the array contains [code]value[/code]."
+msgstr "Возвращает [code]true[/code] еÑли маÑÑив пуÑтой."
+
+#: doc/classes/PackedByteArray.xml:94
msgid ""
"Returns a hexadecimal representation of this array as a [String].\n"
"[codeblock]\n"
@@ -33866,39 +35024,49 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/PackedByteArray.xml:100 doc/classes/PackedColorArray.xml:55
-#: doc/classes/PackedFloat32Array.xml:56 doc/classes/PackedFloat64Array.xml:56
-#: doc/classes/PackedStringArray.xml:55 doc/classes/PackedVector2Array.xml:55
-#: doc/classes/PackedVector3Array.xml:55
+#: doc/classes/PackedByteArray.xml:109 doc/classes/PackedColorArray.xml:64
+#: doc/classes/PackedFloat32Array.xml:65 doc/classes/PackedFloat64Array.xml:65
+#: doc/classes/PackedStringArray.xml:64 doc/classes/PackedVector2Array.xml:64
+#: doc/classes/PackedVector3Array.xml:64
msgid ""
"Inserts a new element at a given position in the array. The position must be "
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PackedByteArray.xml:134 doc/classes/PackedColorArray.xml:89
-#: doc/classes/PackedFloat32Array.xml:90 doc/classes/PackedFloat64Array.xml:90
-#: doc/classes/PackedInt32Array.xml:90 doc/classes/PackedInt64Array.xml:90
-#: doc/classes/PackedStringArray.xml:89 doc/classes/PackedVector2Array.xml:89
-#: doc/classes/PackedVector3Array.xml:89
+#: doc/classes/PackedByteArray.xml:143 doc/classes/PackedColorArray.xml:98
+#: doc/classes/PackedFloat32Array.xml:99 doc/classes/PackedFloat64Array.xml:99
+#: doc/classes/PackedInt32Array.xml:99 doc/classes/PackedInt64Array.xml:99
+#: doc/classes/PackedStringArray.xml:98 doc/classes/PackedVector2Array.xml:98
+#: doc/classes/PackedVector3Array.xml:98
msgid ""
"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."
msgstr ""
-#: doc/classes/PackedByteArray.xml:145
+#: doc/classes/PackedByteArray.xml:154
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PackedByteArray.xml:152 doc/classes/PackedColorArray.xml:107
-#: doc/classes/PackedFloat32Array.xml:108
-#: doc/classes/PackedFloat64Array.xml:108 doc/classes/PackedStringArray.xml:107
-#: doc/classes/PackedVector2Array.xml:107
-#: doc/classes/PackedVector3Array.xml:107
+#: doc/classes/PackedByteArray.xml:161 doc/classes/PackedColorArray.xml:116
+#: doc/classes/PackedFloat32Array.xml:117
+#: doc/classes/PackedFloat64Array.xml:117 doc/classes/PackedStringArray.xml:116
+#: doc/classes/PackedVector2Array.xml:116
+#: doc/classes/PackedVector3Array.xml:116
msgid "Returns the size of the array."
msgstr ""
-#: doc/classes/PackedByteArray.xml:163
+#: doc/classes/PackedByteArray.xml:168 doc/classes/PackedColorArray.xml:123
+#: doc/classes/PackedFloat32Array.xml:124
+#: doc/classes/PackedFloat64Array.xml:124 doc/classes/PackedInt32Array.xml:124
+#: doc/classes/PackedInt64Array.xml:124 doc/classes/PackedStringArray.xml:123
+#: doc/classes/PackedVector2Array.xml:123
+#: doc/classes/PackedVector3Array.xml:123
+#, fuzzy
+msgid "Sorts the elements of the array in ascending order."
+msgstr "УдалÑет Ñлемент из маÑÑива по индекÑу."
+
+#: doc/classes/PackedByteArray.xml:179
msgid ""
"Returns the slice of the [PackedByteArray] between indices (inclusive) as a "
"new [PackedByteArray]. Any negative index is considered to be from the end "
@@ -33926,12 +35094,12 @@ msgstr ""
msgid "Appends a [PackedColorArray] at the end of this array."
msgstr ""
-#: doc/classes/PackedColorArray.xml:71 doc/classes/PackedInt32Array.xml:72
-#: doc/classes/PackedInt64Array.xml:72
+#: doc/classes/PackedColorArray.xml:80 doc/classes/PackedInt32Array.xml:81
+#: doc/classes/PackedInt64Array.xml:81
msgid "Appends a value to the array."
msgstr ""
-#: doc/classes/PackedColorArray.xml:100
+#: doc/classes/PackedColorArray.xml:109
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -33961,8 +35129,8 @@ msgstr ""
msgid "Appends a [PackedFloat32Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedFloat32Array.xml:101
-#: doc/classes/PackedFloat64Array.xml:101
+#: doc/classes/PackedFloat32Array.xml:110
+#: doc/classes/PackedFloat64Array.xml:110
msgid "Changes the float at the given index."
msgstr ""
@@ -34015,17 +35183,17 @@ msgstr ""
msgid "Appends a [PackedInt32Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:56 doc/classes/PackedInt64Array.xml:56
+#: doc/classes/PackedInt32Array.xml:65 doc/classes/PackedInt64Array.xml:65
msgid ""
"Inserts a new integer at a given position in the array. The position must be "
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:101 doc/classes/PackedInt64Array.xml:101
+#: doc/classes/PackedInt32Array.xml:110 doc/classes/PackedInt64Array.xml:110
msgid "Changes the integer at the given index."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:108 doc/classes/PackedInt64Array.xml:108
+#: doc/classes/PackedInt32Array.xml:117 doc/classes/PackedInt64Array.xml:117
msgid "Returns the array size."
msgstr ""
@@ -34066,6 +35234,14 @@ msgid ""
"Can be used to save a node to a file. When saving, the node as well as all "
"the node it owns get saved (see [code]owner[/code] property on [Node]).\n"
"[b]Note:[/b] The node doesn't need to own itself.\n"
+"[b]Example of loading a saved scene:[/b]\n"
+"[codeblock]\n"
+"# Use `load()` instead of `preload()` if the path isn't known at compile-"
+"time.\n"
+"var scene = preload(\"res://scene.tscn\").instance()\n"
+"# Add the node as a child of the node the script is attached to.\n"
+"add_child(scene)\n"
+"[/codeblock]\n"
"[b]Example of saving a node with different owners:[/b] The following example "
"creates 3 objects: [code]Node2D[/code] ([code]node[/code]), "
"[code]RigidBody2D[/code] ([code]rigid[/code]) and [code]CollisionObject2D[/"
@@ -34097,29 +35273,29 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/PackedScene.xml:40
+#: doc/classes/PackedScene.xml:47
msgid "Returns [code]true[/code] if the scene file has nodes."
msgstr ""
-#: doc/classes/PackedScene.xml:47
+#: doc/classes/PackedScene.xml:54
msgid ""
"Returns the [code]SceneState[/code] representing the scene file contents."
msgstr ""
-#: doc/classes/PackedScene.xml:56
+#: doc/classes/PackedScene.xml:63
msgid ""
"Instantiates the scene's node hierarchy. Triggers child scene "
"instantiation(s). Triggers a [constant Node.NOTIFICATION_INSTANCED] "
"notification on the root node."
msgstr ""
-#: doc/classes/PackedScene.xml:65
+#: doc/classes/PackedScene.xml:72
msgid ""
"Pack will ignore any sub-nodes not owned by given node. See [member Node."
"owner]."
msgstr ""
-#: doc/classes/PackedScene.xml:71
+#: doc/classes/PackedScene.xml:78
msgid ""
"A dictionary representation of the scene contents.\n"
"Available keys include \"rnames\" and \"variants\" for resources, "
@@ -34128,18 +35304,18 @@ msgid ""
"connections, and \"version\" for the format style of the PackedScene."
msgstr ""
-#: doc/classes/PackedScene.xml:77
+#: doc/classes/PackedScene.xml:84
msgid "If passed to [method instance], blocks edits to the scene state."
msgstr ""
-#: doc/classes/PackedScene.xml:80
+#: doc/classes/PackedScene.xml:87
msgid ""
"If passed to [method instance], provides local scene resources to the local "
"scene.\n"
"[b]Note:[/b] Only available in editor builds."
msgstr ""
-#: doc/classes/PackedScene.xml:84
+#: doc/classes/PackedScene.xml:91
msgid ""
"If passed to [method instance], provides local scene resources to the local "
"scene. Only the main scene should receive the main edit state.\n"
@@ -34167,11 +35343,11 @@ msgstr ""
msgid "Appends a [PackedStringArray] at the end of this array."
msgstr ""
-#: doc/classes/PackedStringArray.xml:71
+#: doc/classes/PackedStringArray.xml:80
msgid "Appends a string element at end of the array."
msgstr ""
-#: doc/classes/PackedStringArray.xml:100
+#: doc/classes/PackedStringArray.xml:109
msgid "Changes the [String] at the given index."
msgstr ""
@@ -34196,11 +35372,11 @@ msgstr ""
msgid "Appends a [PackedVector2Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedVector2Array.xml:71
+#: doc/classes/PackedVector2Array.xml:80
msgid "Inserts a [Vector2] at the end."
msgstr ""
-#: doc/classes/PackedVector2Array.xml:100
+#: doc/classes/PackedVector2Array.xml:109
msgid "Changes the [Vector2] at the given index."
msgstr ""
@@ -34225,11 +35401,11 @@ msgstr ""
msgid "Appends a [PackedVector3Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedVector3Array.xml:71
+#: doc/classes/PackedVector3Array.xml:80
msgid "Inserts a [Vector3] at the end."
msgstr ""
-#: doc/classes/PackedVector3Array.xml:100
+#: doc/classes/PackedVector3Array.xml:109
msgid "Changes the [Vector3] at the given index."
msgstr ""
@@ -35120,13 +36296,56 @@ msgid ""
"as the values displayed in the [b]Monitor[/b] tab in the editor's "
"[b]Debugger[/b] panel. By using the [method get_monitor] method of this "
"class, you can access this data from your code.\n"
+"You can add custom monitors using the [method add_custom_monitor] method. "
+"Custom monitors are available in [b]Monitor[/b] tab in the editor's "
+"[b]Debugger[/b] panel together with built-in monitors.\n"
"[b]Note:[/b] A few of these monitors are only available in debug mode and "
"will always return 0 when used in a release build.\n"
"[b]Note:[/b] Many of these monitors are not updated in real-time, so there "
-"may be a short delay between changes."
+"may be a short delay between changes.\n"
+"[b]Note:[/b] Custom monitors do not support negative values. Negative values "
+"are clamped to 0."
+msgstr ""
+
+#: doc/classes/Performance.xml:26
+msgid ""
+"Adds a custom monitor with name same as id. You can specify the category of "
+"monitor using '/' in id. If there are more than one '/' then default "
+"category is used. Default category is \"Custom\".\n"
+"[codeblock]\n"
+"Performance.add_custom_monitor(\"MyCategory/MyMonitor\", some_callable) # "
+"Adds monitor with name \"MyName\" to category \"MyCategory\"\n"
+"Performance.add_custom_monitor(\"MyMonitor\", some_callable) # Adds monitor "
+"with name \"MyName\" to category \"Custom\"\n"
+"# Note: \"MyCategory/MyMonitor\" and \"MyMonitor\" have same name but "
+"different ids so above code is valid\n"
+"Performance.add_custom_monitor(\"Custom/MyMonitor\", some_callable) # Adds "
+"monitor with name \"MyName\" to category \"Custom\"\n"
+"# Note: \"MyMonitor\" and \"Custom/MyMonitor\" have same name and same "
+"category but different ids so above code is valid\n"
+"Performance.add_custom_monitor(\"MyCategoryOne/MyCategoryTwo/MyMonitor\", "
+"some_callable) # Adds monitor with name \"MyCategoryOne/MyCategoryTwo/"
+"MyMonitor\" to category \"Custom\"\n"
+"[/codeblock]\n"
+"The debugger calls the callable to get the value of custom monitor. The "
+"callable must return a number.\n"
+"Callables are called with arguments supplied in argument array.\n"
+"[b]Note:[/b] It throws an error if given id is already present."
msgstr ""
-#: doc/classes/Performance.xml:20
+#: doc/classes/Performance.xml:46
+msgid ""
+"Returns the value of custom monitor with given id. The callable is called to "
+"get the value of custom monitor.\n"
+"[b]Note:[/b] It throws an error if the given id is absent."
+msgstr ""
+
+#: doc/classes/Performance.xml:54
+#, fuzzy
+msgid "Returns the names of active custom monitors in an array."
+msgstr "Возвращает количеÑтво раз когда Ñлемент вÑтречаетÑÑ Ð² маÑÑиве."
+
+#: doc/classes/Performance.xml:63
msgid ""
"Returns the value of one of the available monitors. You should provide one "
"of the [enum Monitor] constants as the argument, like this:\n"
@@ -35136,123 +36355,139 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Performance.xml:29
+#: doc/classes/Performance.xml:73
+msgid "Returns the last tick in which custom monitor was added/removed."
+msgstr ""
+
+#: doc/classes/Performance.xml:82
+msgid ""
+"Returns true if custom monitor with the given id is present otherwise "
+"returns false."
+msgstr ""
+
+#: doc/classes/Performance.xml:91
+msgid ""
+"Removes the custom monitor with given id.\n"
+"[b]Note:[/b] It throws an error if the given id is already absent."
+msgstr ""
+
+#: doc/classes/Performance.xml:98
msgid "Number of frames per second."
msgstr ""
-#: doc/classes/Performance.xml:32
+#: doc/classes/Performance.xml:101
msgid "Time it took to complete one frame, in seconds."
msgstr ""
-#: doc/classes/Performance.xml:35
+#: doc/classes/Performance.xml:104
msgid "Time it took to complete one physics frame, in seconds."
msgstr ""
-#: doc/classes/Performance.xml:38
+#: doc/classes/Performance.xml:107
msgid ""
"Static memory currently used, in bytes. Not available in release builds."
msgstr ""
-#: doc/classes/Performance.xml:41
+#: doc/classes/Performance.xml:110
msgid "Available static memory. Not available in release builds."
msgstr ""
-#: doc/classes/Performance.xml:44
+#: doc/classes/Performance.xml:113
msgid ""
"Largest amount of memory the message queue buffer has used, in bytes. The "
"message queue is used for deferred functions calls and notifications."
msgstr ""
-#: doc/classes/Performance.xml:47
+#: doc/classes/Performance.xml:116
msgid "Number of objects currently instanced (including nodes)."
msgstr ""
-#: doc/classes/Performance.xml:50
+#: doc/classes/Performance.xml:119
msgid "Number of resources currently used."
msgstr ""
-#: doc/classes/Performance.xml:53
+#: doc/classes/Performance.xml:122
msgid ""
"Number of nodes currently instanced in the scene tree. This also includes "
"the root node."
msgstr ""
-#: doc/classes/Performance.xml:56
+#: doc/classes/Performance.xml:125
msgid ""
"Number of orphan nodes, i.e. nodes which are not parented to a node of the "
"scene tree."
msgstr ""
-#: doc/classes/Performance.xml:59
+#: doc/classes/Performance.xml:128
msgid "3D objects drawn per frame."
msgstr ""
-#: doc/classes/Performance.xml:62
+#: doc/classes/Performance.xml:131
msgid "Vertices drawn per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:65
+#: doc/classes/Performance.xml:134
msgid "Material changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:68
+#: doc/classes/Performance.xml:137
msgid "Shader changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:71
+#: doc/classes/Performance.xml:140
msgid "Render surface changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:74
+#: doc/classes/Performance.xml:143
msgid "Draw calls per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:77 doc/classes/RenderingServer.xml:3805
+#: doc/classes/Performance.xml:146 doc/classes/RenderingServer.xml:3816
msgid ""
"The amount of video memory used, i.e. texture and vertex memory combined."
msgstr ""
-#: doc/classes/Performance.xml:80 doc/classes/RenderingServer.xml:3808
+#: doc/classes/Performance.xml:149 doc/classes/RenderingServer.xml:3819
msgid "The amount of texture memory used."
msgstr ""
-#: doc/classes/Performance.xml:83 doc/classes/RenderingServer.xml:3811
+#: doc/classes/Performance.xml:152 doc/classes/RenderingServer.xml:3822
msgid "The amount of vertex memory used."
msgstr ""
-#: doc/classes/Performance.xml:86 doc/classes/RenderingServer.xml:3802
+#: doc/classes/Performance.xml:155 doc/classes/RenderingServer.xml:3813
msgid "Unimplemented in the GLES2 rendering backend, always returns 0."
msgstr ""
-#: doc/classes/Performance.xml:89
+#: doc/classes/Performance.xml:158
msgid "Number of active [RigidBody2D] nodes in the game."
msgstr ""
-#: doc/classes/Performance.xml:92
+#: doc/classes/Performance.xml:161
msgid "Number of collision pairs in the 2D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:95
+#: doc/classes/Performance.xml:164
msgid "Number of islands in the 2D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:98
+#: doc/classes/Performance.xml:167
msgid "Number of active [RigidBody3D] and [VehicleBody3D] nodes in the game."
msgstr ""
-#: doc/classes/Performance.xml:101
+#: doc/classes/Performance.xml:170
msgid "Number of collision pairs in the 3D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:104
+#: doc/classes/Performance.xml:173
msgid "Number of islands in the 3D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:107
+#: doc/classes/Performance.xml:176
msgid "Output latency of the [AudioServer]."
msgstr ""
-#: doc/classes/Performance.xml:110
+#: doc/classes/Performance.xml:179
msgid "Represents the size of the [enum Monitor] enum."
msgstr ""
@@ -35276,27 +36511,27 @@ msgstr ""
msgid "Damps the body's rotation if greater than [code]0[/code]."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:70 doc/classes/RigidBody3D.xml:132
+#: doc/classes/PhysicalBone3D.xml:70 doc/classes/RigidBody3D.xml:139
msgid "Lock the body's rotation in the X axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:73 doc/classes/RigidBody3D.xml:135
+#: doc/classes/PhysicalBone3D.xml:73 doc/classes/RigidBody3D.xml:142
msgid "Lock the body's rotation in the Y axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:76 doc/classes/RigidBody3D.xml:138
+#: doc/classes/PhysicalBone3D.xml:76 doc/classes/RigidBody3D.xml:145
msgid "Lock the body's rotation in the Z axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:79 doc/classes/RigidBody3D.xml:141
+#: doc/classes/PhysicalBone3D.xml:79 doc/classes/RigidBody3D.xml:148
msgid "Lock the body's movement in the X axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:82 doc/classes/RigidBody3D.xml:144
+#: doc/classes/PhysicalBone3D.xml:82 doc/classes/RigidBody3D.xml:151
msgid "Lock the body's movement in the Y axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:85 doc/classes/RigidBody3D.xml:147
+#: doc/classes/PhysicalBone3D.xml:85 doc/classes/RigidBody3D.xml:154
msgid "Lock the body's movement in the Z axis."
msgstr ""
@@ -35351,12 +36586,12 @@ msgstr ""
msgid "Damps the body's movement if greater than [code]0[/code]."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:118 doc/classes/RigidBody2D.xml:158
-#: doc/classes/RigidBody3D.xml:175
+#: doc/classes/PhysicalBone3D.xml:118 doc/classes/RigidBody2D.xml:159
+#: doc/classes/RigidBody3D.xml:183
msgid "The body's mass."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:121 doc/classes/RigidBody3D.xml:188
+#: doc/classes/PhysicalBone3D.xml:121 doc/classes/RigidBody3D.xml:196
msgid ""
"The body's weight based on its mass and the global 3D gravity. Global values "
"are set in [b]Project > Project Settings > Physics > 3d[/b]."
@@ -35663,7 +36898,7 @@ msgid "The inverse of the mass of the body."
msgstr ""
#: doc/classes/PhysicsDirectBodyState2D.xml:195
-#: doc/classes/PhysicsDirectBodyState3D.xml:198 doc/classes/RigidBody2D.xml:155
+#: doc/classes/PhysicsDirectBodyState3D.xml:198 doc/classes/RigidBody2D.xml:156
msgid "The body's linear velocity."
msgstr ""
@@ -36216,7 +37451,7 @@ msgid ""
msgstr ""
#: doc/classes/PhysicsServer2D.xml:620 doc/classes/PhysicsServer3D.xml:637
-#: doc/classes/RigidBody3D.xml:120
+#: doc/classes/RigidBody3D.xml:127
msgid ""
"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."
@@ -37281,47 +38516,64 @@ msgid ""
"collision queries. See also [PhysicsShapeQueryResult2D]."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:18
-msgid ""
-"Sets the [Shape2D] that will be used for collision/intersection queries."
-msgstr ""
-
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:24
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:15
msgid "If [code]true[/code], the query will take [Area2D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:18
msgid ""
"If [code]true[/code], the query will take [PhysicsBody2D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:30
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:30
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:21
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:21
msgid "The physics layer(s) the query will take into account (as a bitmask)."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:33
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:33
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:24
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:24
msgid ""
"The list of objects or object [RID]s that will be excluded from collisions."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:36
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:36 doc/classes/Shape3D.xml:16
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:27 doc/classes/Shape3D.xml:16
msgid "The collision margin for the shape."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:39
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:30
msgid "The motion of the shape being queried for."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:42
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:39
-msgid "The queried shape's [RID]. See also [method set_shape]."
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:33
+msgid ""
+"The [Shape2D] that will be used for collision/intersection queries. This "
+"stores the actual reference which avoids the shape to be released while "
+"being used for queries, so always prefer using this over [member shape_rid]."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:45
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:42
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:36
+msgid ""
+"The queried shape's [RID] that will be used for collision/intersection "
+"queries. Use this over [member shape] if you want to optimize for "
+"performance using the Servers API:\n"
+"[codeblock]\n"
+"var shape_rid = PhysicsServer2D.circle_shape_create()\n"
+"var radius = 64\n"
+"PhysicsServer2D.shape_set_data(shape_rid, radius)\n"
+"\n"
+"var params = PhysicsShapeQueryParameters2D.new()\n"
+"params.shape_rid = shape_rid\n"
+"\n"
+"# Execute physics queries here...\n"
+"\n"
+"# Release the shape when done with physics queries.\n"
+"PhysicsServer2D.free_rid(shape_rid)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:52
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:49
msgid "The queried shape's transform matrix."
msgstr ""
@@ -37335,18 +38587,40 @@ msgid ""
"collision queries. See also [PhysicsShapeQueryResult3D]."
msgstr ""
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:15
+msgid "If [code]true[/code], the query will take [Area3D]s into account."
+msgstr ""
+
#: doc/classes/PhysicsShapeQueryParameters3D.xml:18
msgid ""
-"Sets the [Shape3D] that will be used for collision/intersection queries."
+"If [code]true[/code], the query will take [PhysicsBody3D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:24
-msgid "If [code]true[/code], the query will take [Area3D]s into account."
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:30
+msgid ""
+"The [Shape3D] that will be used for collision/intersection queries. This "
+"stores the actual reference which avoids the shape to be released while "
+"being used for queries, so always prefer using this over [member shape_rid]."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:33
msgid ""
-"If [code]true[/code], the query will take [PhysicsBody3D]s into account."
+"The queried shape's [RID] that will be used for collision/intersection "
+"queries. Use this over [member shape] if you want to optimize for "
+"performance using the Servers API:\n"
+"[codeblock]\n"
+"var shape_rid = PhysicsServer3D.shape_create(PhysicsServer3D.SHAPE_SPHERE)\n"
+"var radius = 2.0\n"
+"PhysicsServer3D.shape_set_data(shape_rid, radius)\n"
+"\n"
+"var params = PhysicsShapeQueryParameters3D.new()\n"
+"params.shape_rid = shape_rid\n"
+"\n"
+"# Execute physics queries here...\n"
+"\n"
+"# Release the shape when done with physics queries.\n"
+"PhysicsServer3D.free_rid(shape_rid)\n"
+"[/codeblock]"
msgstr ""
#: doc/classes/PhysicsShapeQueryResult2D.xml:4
@@ -37487,92 +38761,94 @@ msgid ""
"code]."
msgstr ""
-#: doc/classes/Plane.xml:72
-msgid "Returns a point on the plane."
-msgstr ""
-
-#: doc/classes/Plane.xml:83
+#: doc/classes/Plane.xml:76
msgid ""
-"Returns [code]true[/code] if [code]point[/code] is inside the plane (by a "
-"very minimum [code]epsilon[/code] threshold)."
+"Returns [code]true[/code] if [code]point[/code] is inside the plane. "
+"Comparison uses a custom minimum [code]epsilon[/code] threshold."
msgstr ""
-#: doc/classes/Plane.xml:94
+#: doc/classes/Plane.xml:87
msgid ""
"Returns the intersection point of the three planes [code]b[/code], [code]c[/"
"code] and this plane. If no intersection is found, [code]null[/code] is "
"returned."
msgstr ""
-#: doc/classes/Plane.xml:105
+#: doc/classes/Plane.xml:98
msgid ""
"Returns the intersection point of a ray consisting of the position "
"[code]from[/code] and the direction normal [code]dir[/code] with this plane. "
"If no intersection is found, [code]null[/code] is returned."
msgstr ""
-#: doc/classes/Plane.xml:116
+#: doc/classes/Plane.xml:109
msgid ""
"Returns the intersection point of a segment from position [code]begin[/code] "
"to position [code]end[/code] with this plane. If no intersection is found, "
"[code]null[/code] is returned."
msgstr ""
-#: doc/classes/Plane.xml:125
+#: doc/classes/Plane.xml:118
msgid ""
"Returns [code]true[/code] if this plane and [code]plane[/code] are "
"approximately equal, by running [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/Plane.xml:134
+#: doc/classes/Plane.xml:127
msgid ""
"Returns [code]true[/code] if [code]point[/code] is located above the plane."
msgstr ""
-#: doc/classes/Plane.xml:141
+#: doc/classes/Plane.xml:134
msgid "Returns a copy of the plane, normalized."
msgstr ""
-#: doc/classes/Plane.xml:150
+#: doc/classes/Plane.xml:143
msgid ""
-"Returns the orthogonal projection of point [code]p[/code] into a point in "
-"the plane."
+"Returns the orthogonal projection of [code]point[/code] into a point in the "
+"plane."
msgstr ""
-#: doc/classes/Plane.xml:156
+#: doc/classes/Plane.xml:149
msgid ""
-"Distance from the origin to the plane, in the direction of [member normal]."
+"The distance from the origin to the plane, in the direction of [member "
+"normal]. This value is typically non-negative.\n"
+"In the scalar equation of the plane [code]ax + by + cz = d[/code], this is "
+"[code]d[/code], while the [code](a, b, c)[/code] coordinates are represented "
+"by the [member normal] property."
msgstr ""
-#: doc/classes/Plane.xml:159
+#: doc/classes/Plane.xml:153
msgid ""
-"The normal of the plane. \"Over\" or \"Above\" the plane is considered the "
-"side of the plane towards where the normal is pointing."
+"The normal of the plane, which must be normalized.\n"
+"In the scalar equation of the plane [code]ax + by + cz = d[/code], this is "
+"the vector [code](a, b, c)[/code], where [code]d[/code] is the [member d] "
+"property."
msgstr ""
-#: doc/classes/Plane.xml:162
-msgid "The [member normal]'s X component."
+#: doc/classes/Plane.xml:157
+msgid "The X component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:165
-msgid "The [member normal]'s Y component."
+#: doc/classes/Plane.xml:160
+msgid "The Y component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:168
-msgid "The [member normal]'s Z component."
+#: doc/classes/Plane.xml:163
+msgid "The Z component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:173
-msgid "A plane that extends in the Y and Z axes."
+#: doc/classes/Plane.xml:168
+msgid "A plane that extends in the Y and Z axes (normal vector points +X)."
msgstr ""
-#: doc/classes/Plane.xml:176
-msgid "A plane that extends in the X and Z axes."
+#: doc/classes/Plane.xml:171
+msgid "A plane that extends in the X and Z axes (normal vector points +Y)."
msgstr ""
-#: doc/classes/Plane.xml:179
-msgid "A plane that extends in the X and Y axes."
+#: doc/classes/Plane.xml:174
+msgid "A plane that extends in the X and Y axes (normal vector points +Z)."
msgstr ""
#: doc/classes/PlaneMesh.xml:4
@@ -38283,18 +39559,25 @@ msgstr ""
#: doc/classes/PrimitiveMesh.xml:16
msgid ""
-"Returns mesh arrays used to constitute surface of [Mesh]. Mesh arrays can be "
-"used with [ArrayMesh] to create new surfaces."
+"Returns mesh arrays used to constitute surface of [Mesh]. The result can be "
+"passed to [method ArrayMesh.add_surface_from_arrays] to create a new "
+"surface. For example:\n"
+"[codeblock]\n"
+"var c := CylinderMesh.new()\n"
+"var arr_mesh := ArrayMesh.new()\n"
+"arr_mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLES, c."
+"get_mesh_arrays())\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:22
+#: doc/classes/PrimitiveMesh.xml:27
msgid ""
"Overrides the [AABB] with one defined by user for use with frustum culling. "
"Especially useful to avoid unnexpected culling when using a shader to "
"offset vertices."
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:25
+#: doc/classes/PrimitiveMesh.xml:30
msgid ""
"If set, the order of the vertices in each triangle are reversed resulting in "
"the backside of the mesh being drawn.\n"
@@ -38302,7 +39585,7 @@ msgid ""
"[member BaseMaterial3D.cull_mode]."
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:29
+#: doc/classes/PrimitiveMesh.xml:34
msgid "The current [Material] of the primitive mesh."
msgstr ""
@@ -38733,11 +40016,17 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:260
msgid ""
+"Safer override for [member audio/output_latency] in the Web platform, to "
+"avoid audio issues especially on mobile devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:263
+msgid ""
"Setting to hardcode audio delay when playing video. Best to leave this "
"untouched unless you know what you are doing."
msgstr ""
-#: doc/classes/ProjectSettings.xml:263
+#: doc/classes/ProjectSettings.xml:266
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -38747,7 +40036,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:269
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -38757,27 +40046,27 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:269
+#: doc/classes/ProjectSettings.xml:272
msgid ""
"The default compression level for Zstandard. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
"speed. Decompression speed is mostly unaffected by the compression level."
msgstr ""
-#: doc/classes/ProjectSettings.xml:272
+#: doc/classes/ProjectSettings.xml:275
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:278
msgid ""
"Largest size limit (in power of 2) allowed when compressing using long-"
"distance matching with Zstandard. Higher values can result in better "
"compression, but will require more memory when compressing and decompressing."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:281
msgid ""
"If [code]true[/code], displays getters and setters in autocompletion results "
"in the script editor. This setting is meant to be used when porting old "
@@ -38785,74 +40074,55 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:281
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:284
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:287
+#: doc/classes/ProjectSettings.xml:294
msgid ""
"If [code]true[/code], enables specific GDScript warnings (see [code]debug/"
"gdscript/warnings/*[/code] settings). If [code]false[/code], disables all "
"GDScript warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
-msgid ""
-"If [code]true[/code], enables warnings when a function is declared with the "
-"same name as a constant."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:296
-msgid ""
-"If [code]true[/code], enables warnings when a function is declared with the "
-"same name as a variable. This will turn into an error in a future version "
-"when first-class functions become supported in GDScript."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:299
-msgid ""
-"If [code]true[/code], enables warnings when a function assigned to a "
-"variable may yield and return a function state instead of a value."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:302
+#: doc/classes/ProjectSettings.xml:300
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:303
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when dividing an integer by another "
"integer (the decimal part will be discarded)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when passing a floating-point value "
"to a function that expects an integer (it will be converted and lose "
"precision)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:314
+#: doc/classes/ProjectSettings.xml:312
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
@@ -38873,102 +40143,85 @@ msgid ""
"member variable)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:323
+#: doc/classes/ProjectSettings.xml:325
msgid ""
"If [code]true[/code], enables warnings when calling an expression that has "
"no effect on the surrounding code, such as writing [code]2 + 2[/code] as a "
"statement."
msgstr ""
-#: doc/classes/ProjectSettings.xml:326
+#: doc/classes/ProjectSettings.xml:328
msgid ""
"If [code]true[/code], enables warnings when calling a ternary expression "
"that has no effect on the surrounding code, such as writing [code]42 if "
"active else 0[/code] as a statement."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:331
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:334
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:335
+#: doc/classes/ProjectSettings.xml:337
msgid ""
"If [code]true[/code], enables warnings when assigning a variable using an "
"assignment operator like [code]+=[/code] if the variable wasn't previously "
"assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:338
+#: doc/classes/ProjectSettings.xml:340
msgid ""
"If [code]true[/code], enables warnings when unreachable code is detected "
"(such as after a [code]return[/code] statement that will always be executed)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:345
msgid ""
"If [code]true[/code], enables warnings when using an expression whose type "
"may not be compatible with the function parameter expected."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:348
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:347
+#: doc/classes/ProjectSettings.xml:351
msgid ""
"If [code]true[/code], enables warnings when calling a method whose presence "
"is not guaranteed at compile-time in the class."
msgstr ""
-#: doc/classes/ProjectSettings.xml:350
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], enables warnings when accessing a property whose "
"presence is not guaranteed at compile-time in the class."
msgstr ""
-#: doc/classes/ProjectSettings.xml:353
-msgid ""
-"If [code]true[/code], enables warnings when a function parameter is unused."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:356
-msgid ""
-"If [code]true[/code], enables warnings when a member variable is unused."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:363
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:362
+#: doc/classes/ProjectSettings.xml:366
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:365
-msgid ""
-"If [code]true[/code], enables warnings when a variable is declared with the "
-"same name as a function. This will turn into an error in a future version "
-"when first-class functions become supported in GDScript."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:368
+#: doc/classes/ProjectSettings.xml:369
msgid ""
"If [code]true[/code], enables warnings when assigning the result of a "
"function that returns [code]void[/code] to a variable."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:374
+#: doc/classes/ProjectSettings.xml:375
msgid ""
"Maximum number of frames per second allowed. The actual number of frames per "
"second may still be below this value if the game is lagging.\n"
@@ -38979,143 +40232,143 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:379
+#: doc/classes/ProjectSettings.xml:380
msgid "Maximum call stack allowed for debugging GDScript."
msgstr ""
-#: doc/classes/ProjectSettings.xml:382
+#: doc/classes/ProjectSettings.xml:383
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:385
+#: doc/classes/ProjectSettings.xml:386
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:388
+#: doc/classes/ProjectSettings.xml:389
msgid ""
"Print more information to standard output when running. It displays "
"information such as memory leaks, which scenes and resources are being "
"loaded, etc."
msgstr ""
-#: doc/classes/ProjectSettings.xml:391
+#: doc/classes/ProjectSettings.xml:392
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:394
+#: doc/classes/ProjectSettings.xml:395
msgid ""
"Color of the contact points between collision shapes, visible when \"Visible "
"Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:397
+#: doc/classes/ProjectSettings.xml:398
msgid ""
"Maximum number of contact points between collision shapes to display when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:400
+#: doc/classes/ProjectSettings.xml:401
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
msgid "Hotspot for the custom mouse cursor image."
msgstr ""
-#: doc/classes/ProjectSettings.xml:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
msgid ""
"If [code]true[/code], allows HiDPI display on Windows and macOS. This "
"setting has no effect on desktop Linux, as DPI-awareness fallbacks are not "
"supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"If [code]true[/code], keeps the screen on (even in case of inactivity), so "
"the screensaver does not take over. Works on desktop and mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
msgid "Default orientation on mobile devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"If [code]true[/code], the home indicator is hidden automatically. This only "
"affects iOS devices without a physical home button."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid "Force the window to be always on top."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid "Force the window to be borderless."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Sets the window to full screen when it starts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid ""
"Sets the game's main viewport height. On desktop platforms, this is the "
"default window size. Stretch mode settings also use this as a reference when "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Allows the window to be resizable by default."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"Sets the game's main viewport width. On desktop platforms, this is the "
"default window size. Stretch mode settings also use this as a reference when "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:454
+#: doc/classes/ProjectSettings.xml:455
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:457
+#: doc/classes/ProjectSettings.xml:458
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -39124,7 +40377,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:460
+#: doc/classes/ProjectSettings.xml:461
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -39135,13 +40388,13 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:464
+#: doc/classes/ProjectSettings.xml:465
msgid ""
"Search path for project-specific script templates. Script templates will be "
"search both in the editor-specific path and in this project-specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:467
+#: doc/classes/ProjectSettings.xml:468
msgid ""
"Text-based file extensions to include in the script editor's \"Find in Files"
"\" feature. You can add e.g. [code]tscn[/code] if you wish to also parse "
@@ -39149,49 +40402,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:470
+#: doc/classes/ProjectSettings.xml:471
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:473
+#: doc/classes/ProjectSettings.xml:474
msgid ""
-"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
+"If [code]true[/code], swaps Cancel and OK buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:478
+#: doc/classes/ProjectSettings.xml:479
msgid ""
"Path to a custom [Theme] resource file to use for the project ([code]theme[/"
"code] or generic [code]tres[/code]/[code]res[/code] extension)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:484
+#: doc/classes/ProjectSettings.xml:485
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:487
+#: doc/classes/ProjectSettings.xml:488
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:490
+#: doc/classes/ProjectSettings.xml:491
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:493
+#: doc/classes/ProjectSettings.xml:494
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:496
+#: doc/classes/ProjectSettings.xml:497
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -39200,7 +40453,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"Default [InputEventAction] to discard a modal or pending input.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39208,7 +40461,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:504
+#: doc/classes/ProjectSettings.xml:505
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39216,7 +40469,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:508
+#: doc/classes/ProjectSettings.xml:509
msgid ""
"Default [InputEventAction] to go to the end position of a [Control] (e.g. "
"last item in an [ItemList] or a [Tree]), matching the behavior of [constant "
@@ -39226,7 +40479,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:512
+#: doc/classes/ProjectSettings.xml:513
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -39235,7 +40488,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:516
+#: doc/classes/ProjectSettings.xml:517
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -39244,7 +40497,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:520
+#: doc/classes/ProjectSettings.xml:521
msgid ""
"Default [InputEventAction] to go to the start position of a [Control] (e.g. "
"first item in an [ItemList] or a [Tree]), matching the behavior of [constant "
@@ -39254,7 +40507,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39262,7 +40515,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:528
+#: doc/classes/ProjectSettings.xml:529
msgid ""
"Default [InputEventAction] to go down a page in a [Control] (e.g. in an "
"[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEDOWN] on "
@@ -39272,7 +40525,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Default [InputEventAction] to go up a page in a [Control] (e.g. in an "
"[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEUP] on "
@@ -39282,7 +40535,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:536
+#: doc/classes/ProjectSettings.xml:537
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39290,7 +40543,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:540
+#: doc/classes/ProjectSettings.xml:541
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -39299,7 +40552,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39307,371 +40560,371 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:548
+#: doc/classes/ProjectSettings.xml:549
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:554
+#: doc/classes/ProjectSettings.xml:555
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:557
+#: doc/classes/ProjectSettings.xml:558
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:560
+#: doc/classes/ProjectSettings.xml:561
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:566
+#: doc/classes/ProjectSettings.xml:567
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:569
+#: doc/classes/ProjectSettings.xml:570
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:572
+#: doc/classes/ProjectSettings.xml:573
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:578
+#: doc/classes/ProjectSettings.xml:579
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:581
+#: doc/classes/ProjectSettings.xml:582
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:584
+#: doc/classes/ProjectSettings.xml:585
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:590
+#: doc/classes/ProjectSettings.xml:591
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:593
+#: doc/classes/ProjectSettings.xml:594
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:596
+#: doc/classes/ProjectSettings.xml:597
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:602
+#: doc/classes/ProjectSettings.xml:603
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid ""
"The locale to fall back to if a translation isn't available in a given "
"language. If left empty, [code]en[/code] (English) will be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "If [code]true[/code], logs all output to files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:806
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:809
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:812
msgid ""
"Godot uses a message queue to defer some function calls. If you run out of "
"space on it (you will see an error), you can increase the size here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:815
msgid ""
"This is used by servers when used in multi-threading mode (servers and "
"visual). RIDs are preallocated to avoid stalling the server requesting them "
@@ -39679,56 +40932,56 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:829
+#: doc/classes/ProjectSettings.xml:832
msgid ""
"Maximum amount of characters allowed to send as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:832
+#: doc/classes/ProjectSettings.xml:835
msgid ""
"Maximum number of errors allowed to be sent from the debugger. Over this "
"value, content is dropped. This helps not to stall the debugger connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:835
+#: doc/classes/ProjectSettings.xml:838
msgid ""
"Maximum amount of messages in the debugger queue. Over this value, content "
"is dropped. This helps to limit the debugger memory usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:838
+#: doc/classes/ProjectSettings.xml:841
msgid ""
"Maximum number of warnings allowed to be sent from the debugger. Over this "
"value, content is dropped. This helps not to stall the debugger connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:841
+#: doc/classes/ProjectSettings.xml:844
msgid ""
"Default size of packet peer stream for deserializing Godot data. Over this "
"size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:844
+#: doc/classes/ProjectSettings.xml:847
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:847
+#: doc/classes/ProjectSettings.xml:850
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:850
+#: doc/classes/ProjectSettings.xml:853
msgid ""
"Amount of read ahead used by remote filesystem. Higher values decrease the "
"effects of latency at the cost of higher bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:853
+#: doc/classes/ProjectSettings.xml:856
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:856
+#: doc/classes/ProjectSettings.xml:859
msgid ""
"The CA certificates bundle to use for SSL connections. If this is set to a "
"non-empty value, this will [i]override[/i] Godot's default [url=https://"
@@ -39738,31 +40991,31 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:863
msgid ""
"When creating node names automatically, set the type of casing in this "
"project. This is mostly an editor setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:866
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:869
msgid "Size of the hash table used for the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:872
msgid "Cell size used for the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:875
msgid "The default angular damp in 2D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:878
msgid ""
"The default gravity strength in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39774,7 +41027,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:883
+#: doc/classes/ProjectSettings.xml:886
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39786,38 +41039,38 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:891
+#: doc/classes/ProjectSettings.xml:894
msgid "The default linear damp in 2D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:894
+#: doc/classes/ProjectSettings.xml:897
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:897
+#: doc/classes/ProjectSettings.xml:900
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics2D\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:901
+#: doc/classes/ProjectSettings.xml:904
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant PhysicsServer2D."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:904
+#: doc/classes/ProjectSettings.xml:907
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant PhysicsServer2D."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:907
+#: doc/classes/ProjectSettings.xml:910
msgid ""
"Sets whether physics is run on the main thread or a separate one. Running "
"the server on a thread increases performance, but restricts API access to "
@@ -39827,23 +41080,23 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:914
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant PhysicsServer2D.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:917
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody3D] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:920
msgid "The default angular damp in 3D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:923
msgid ""
"The default gravity strength in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39855,7 +41108,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:928
+#: doc/classes/ProjectSettings.xml:931
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39867,11 +41120,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:936
+#: doc/classes/ProjectSettings.xml:939
msgid "The default linear damp in 3D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:939
+#: doc/classes/ProjectSettings.xml:942
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -39879,11 +41132,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:943
+#: doc/classes/ProjectSettings.xml:946
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:949
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -39892,7 +41145,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:950
+#: doc/classes/ProjectSettings.xml:953
msgid ""
"Fix to improve physics jitter, specially on monitors where refresh rate is "
"different than the physics FPS.\n"
@@ -39900,7 +41153,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:954
+#: doc/classes/ProjectSettings.xml:957
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -39908,7 +41161,7 @@ msgid ""
"programmatically, use [method RenderingServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:957
+#: doc/classes/ProjectSettings.xml:960
msgid ""
"[Environment] that will be used as a fallback environment in case a scene "
"does not specify its own environment. The default environment is loaded in "
@@ -39918,14 +41171,14 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:986
+#: doc/classes/ProjectSettings.xml:989
msgid ""
"Max amount of elements renderable in a frame. If more than this are visible "
"per frame, they will be dropped. Keep in mind elements refer to mesh "
"surfaces and not meshes themselves."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:994
msgid ""
"Some NVIDIA GPU drivers have a bug which produces flickering issues for the "
"[code]draw_rect[/code] method, especially as used in [TileMap]. Refer to "
@@ -39937,73 +41190,73 @@ msgid ""
"using the Vulkan backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:995
+#: doc/classes/ProjectSettings.xml:998
msgid ""
"If [code]true[/code], forces snapping of polygons to pixels in 2D rendering. "
"May help in some pixel art styles."
msgstr ""
-#: doc/classes/ProjectSettings.xml:998
+#: doc/classes/ProjectSettings.xml:1001
msgid ""
"Sets the quality of the depth of field effect. Higher quality takes more "
"samples, which is slower but looks smoother."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1001
+#: doc/classes/ProjectSettings.xml:1004
msgid ""
"Sets the depth of field shape. Can be Box, Hexagon, or Circle. Box is the "
"fastest. Circle is the most realistic, but also the most expensive to "
"compute."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1004
+#: doc/classes/ProjectSettings.xml:1007
msgid ""
"If [code]true[/code], jitters DOF samples to make effect slightly blurrier "
"and hide lines created from low sample rates. This can result in a slightly "
"grainy appearance when used with a low number of samples."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1010
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1010
+#: doc/classes/ProjectSettings.xml:1013
msgid ""
"If [code]true[/code], performs a previous depth pass before rendering "
"materials. This increases performance in scenes with high overdraw, when "
"complex materials and lighting are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1016
msgid ""
"The directional shadow's size in pixels. Higher values will result in "
"sharper shadows, at the cost of performance. The value will be rounded up to "
"the nearest power of 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1016
+#: doc/classes/ProjectSettings.xml:1019
msgid ""
"Lower-end override for [member rendering/quality/directional_shadow/size] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1019
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"Quality setting for shadows cast by [DirectionalLight3D]s. Higher quality "
"settings use more samples when reading from shadow maps and are thus slower. "
"Low quality settings may result in shadows looking grainy."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1022
+#: doc/classes/ProjectSettings.xml:1025
msgid ""
"Lower-end override for [member rendering/quality/directional_shadow/"
"soft_shadow_quality] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1028
msgid ""
"The video driver to use (\"GLES2\" or \"Vulkan\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -40013,32 +41266,32 @@ msgid ""
"get_current_video_driver[/code] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1031
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"If [code]true[/code], take additional samples when rendering objects "
"affected by a [GIProbe] to reduce artifacts from only sampling in one "
"direction."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1034
+#: doc/classes/ProjectSettings.xml:1037
msgid ""
"Sets the number of cone samples taken when rendering objects affected by "
"[GIProbe]s."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1037
+#: doc/classes/ProjectSettings.xml:1040
msgid ""
"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."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1040
+#: doc/classes/ProjectSettings.xml:1043
msgid ""
"Lower-end override for [member rendering/quality/glow/upscale_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1043
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Strategy used for framebuffer allocation. The simpler it is, the less "
"resources it uses (but the less features it supports). If set to \"2D "
@@ -40048,41 +41301,41 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1046
+#: doc/classes/ProjectSettings.xml:1049
msgid ""
"Lower-end override for [member rendering/quality/intended_usage/"
"framebuffer_allocation] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1052
msgid ""
"Number of cubemaps to store in the reflection atlas. The number of "
"[ReflectionProbe]s in a scene will be limited by this amount. A higher "
"number requires more VRAM."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1052
+#: doc/classes/ProjectSettings.xml:1055
msgid ""
"Size of cubemap faces for [ReflectionProbe]s. A higher number requires more "
"VRAM and may make reflection probe updating slower."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1055
+#: doc/classes/ProjectSettings.xml:1058
msgid ""
"Lower-end override for [member rendering/quality/reflection_atlas/"
"reflection_size] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1058
+#: doc/classes/ProjectSettings.xml:1061
msgid ""
"Use a higher quality variant of the fast filtering algorithm. Significantly "
"slower than using default quality, but results in smoother reflections. "
"Should only be used when the scene is especially detailed."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1061
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Sets the number of samples to take when using importance sampling for [Sky]s "
"and [ReflectionProbe]s. A higher value will result in smoother, higher "
@@ -40092,19 +41345,19 @@ msgid ""
"environments with a high level of detail."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1064
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Lower-end override for [member rendering/quality/reflections/ggx_samples] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1067
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Limits the number of layers to use in radiance maps when using importance "
"sampling. A lower number will be slightly faster and take up less VRAM."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1070
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise and "
@@ -40113,14 +41366,14 @@ msgid ""
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1073
+#: doc/classes/ProjectSettings.xml:1076
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"texture_array_reflections] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1079
msgid ""
"Sets the number of MSAA samples to use (as a power of two). MSAA is used to "
"reduce aliasing around the edges of polygons. A higher MSAA value results in "
@@ -40128,7 +41381,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1080
+#: doc/classes/ProjectSettings.xml:1083
msgid ""
"Sets the screen-space antialiasing mode for the default screen [Viewport]. "
"Screen-space antialiasing works by selectively blurring edges in a post-"
@@ -40137,133 +41390,117 @@ msgid ""
"MSAA and will smooth out specular aliasing, but tend to make scenes appear "
"blurry.\n"
"Another way to combat specular aliasing is to enable [member rendering/"
-"quality/screen_filters/screen_space_roughness_limiter]."
+"quality/screen_filters/screen_space_roughness_limiter_enabled]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1084
-msgid ""
-"Enables the screen-space roughness limiter which increases material "
-"roughness in areas with a high normal frequency (i.e. when normals change a "
-"lot from pixel to pixel). This helps to reduce the amount of specular "
-"aliasing in a scene. Specular aliasing looks like random bright pixels that "
-"occur in reflections."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:1087
-msgid ""
-"Curves the amount of the roughness limited effect. A higher value limits the "
-"effect to very sharply curved surfaces, while a lower threshold extends the "
-"effect to smoother surfaces."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:1090
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"Sets the quality for rough screen-space reflections. Turning off will make "
"all screen space reflections sharp, while higher values make rough "
"reflections look better."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1093
+#: doc/classes/ProjectSettings.xml:1096
msgid ""
"If [code]true[/code], uses faster but lower-quality Blinn model to generate "
"blurred reflections instead of the GGX model."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1099
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_blinn_over_ggx] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1102
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1102
+#: doc/classes/ProjectSettings.xml:1105
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_lambert_over_burley] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1105
+#: doc/classes/ProjectSettings.xml:1108
msgid ""
"If [code]true[/code], forces vertex shading for all rendering. This can "
"increase performance a lot, but also reduces quality immensely. Can be used "
"to optimize performance on low-end mobile devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1108
+#: doc/classes/ProjectSettings.xml:1111
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_vertex_shading] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1111 doc/classes/ProjectSettings.xml:1114
-#: doc/classes/ProjectSettings.xml:1117 doc/classes/ProjectSettings.xml:1120
+#: doc/classes/ProjectSettings.xml:1114 doc/classes/ProjectSettings.xml:1117
+#: doc/classes/ProjectSettings.xml:1120 doc/classes/ProjectSettings.xml:1123
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1123
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1126
+#: doc/classes/ProjectSettings.xml:1129
msgid ""
"Lower-end override for [member rendering/quality/shadow_atlas/size] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1132
msgid ""
"Quality setting for shadows cast by [OmniLight3D]s and [SpotLight3D]s. "
"Higher quality settings use more samples when reading from shadow maps and "
"are thus slower. Low quality settings may result in shadows looking grainy."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1132
+#: doc/classes/ProjectSettings.xml:1135
msgid ""
"Lower-end override for [member rendering/quality/shadows/"
"soft_shadow_quality] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1135
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"If [code]true[/code], screen-space ambient occlusion will be rendered at "
"half size and then upscaled before being added to the scene. This is "
"significantly faster but may miss small details."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1138
+#: doc/classes/ProjectSettings.xml:1141
msgid ""
"Sets the quality of the screen-space ambient occlusion effect. Higher values "
"take more samples and so will result in better quality, at the cost of "
"performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1144
msgid ""
"Scales the depth over which the subsurface scattering effect is applied. A "
"high value may allow light to scatter into a part of the mesh or another "
"mesh that is close in screen space but far in depth."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1144
+#: doc/classes/ProjectSettings.xml:1147
msgid ""
"Sets the quality of the subsurface scattering effect. Higher values are "
"slower but look nicer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1147
+#: doc/classes/ProjectSettings.xml:1150
msgid ""
"Scales the distance over which samples are taken for subsurface scattering "
"effect. Changing this does not impact performance, but higher values will "
@@ -40271,7 +41508,7 @@ msgid ""
"out. A lower value results in a smaller spread of scattered light."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1150
+#: doc/classes/ProjectSettings.xml:1153
msgid ""
"Sets the maximum number of samples to take when using anisotropic filtering "
"on textures (as a power of two). A higher sample count will result in "
@@ -40280,7 +41517,7 @@ msgid ""
"materials where it is enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1153
+#: doc/classes/ProjectSettings.xml:1156
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -40289,49 +41526,49 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Thread model for rendering. Rendering on a thread can vastly improve "
"performance, but synchronizing to the main thread can cause a bit more "
"jitter."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
"only supported on desktop platforms, and only when using the Vulkan renderer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
"doesn't support alpha channels in textures."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
"compression algorithm is only supported when using the Vulkan renderer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1175
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
"compression algorithm is only supported on iOS."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
"supported on desktop platforms and consoles."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1182
+#: doc/classes/ProjectSettings.xml:1189
msgid "Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses."
msgstr ""
@@ -40361,13 +41598,14 @@ msgstr ""
#: doc/classes/Quat.xml:7
msgid ""
-"A unit quaternion used for representing 3D rotations.\n"
-"It is similar to [Basis], which implements matrix representation of "
-"rotations, and can be parametrized using both an axis-angle pair or Euler "
-"angles. But due to its compactness and the way it is stored in memory, "
-"certain operations (obtaining axis-angle and performing SLERP, in "
-"particular) are more efficient and robust against floating-point errors.\n"
-"Quaternions need to be (re)normalized."
+"A unit quaternion used for representing 3D rotations. Quaternions need to be "
+"normalized to be used for rotation.\n"
+"It is similar to Basis, which implements matrix representation of rotations, "
+"and can be parametrized using both an axis-angle pair or Euler angles. Basis "
+"stores rotation, scale, and shearing, while Quat only stores rotation.\n"
+"Due to its compactness and the way it is stored in memory, certain "
+"operations (obtaining axis-angle and performing SLERP, in particular) are "
+"more efficient and robust against floating-point errors."
msgstr ""
#: doc/classes/Quat.xml:12
@@ -40377,30 +41615,40 @@ msgid ""
msgstr ""
#: doc/classes/Quat.xml:21
-msgid "Returns the rotation matrix corresponding to the given quaternion."
+msgid "Constructs a quaternion from the given [Basis]."
msgstr ""
#: doc/classes/Quat.xml:30
msgid ""
-"Returns a quaternion that will perform a rotation specified by Euler angles "
-"(in the YXZ convention: first Z, then X, and Y last), given in the vector "
-"format as (X angle, Y angle, Z angle)."
+"Constructs a quaternion that will perform a rotation specified by Euler "
+"angles (in the YXZ convention: when decomposing, first Z, then X, and Y "
+"last), given in the vector format as (X angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:41
+#, fuzzy
msgid ""
-"Returns a quaternion that will rotate around the given axis by the specified "
-"angle. The axis must be a normalized vector."
+"Constructs a quaternion that will rotate around the given axis by the "
+"specified angle. The axis must be a normalized vector."
msgstr ""
+"Вращает вектор вокруг заданной оÑи на [code]phi[/code] радиан. ОÑÑŒ должна "
+"быть нормализованным вектором."
#: doc/classes/Quat.xml:56
-msgid "Returns a quaternion defined by these values."
+msgid "Constructs a quaternion defined by the given values."
msgstr ""
#: doc/classes/Quat.xml:71
+#, fuzzy
msgid ""
-"Performs a cubic spherical-linear interpolation with another quaternion."
+"Performs a cubic spherical interpolation between quaternions [code]preA[/"
+"code], this vector, [code]b[/code], and [code]postB[/code], by the given "
+"amount [code]t[/code]."
msgstr ""
+"ВыполнÑет кубичеÑкое Ñглаживание между векторами [code]pre_a[/code], "
+"[code]a[/code], [code]b[/code], [code]post_b[/code] ([code]a[/code] Ñто "
+"текущий вектор),на заданное значение [code]t[/code]. [code]t[/code] Ñто "
+"диапазон [code]0.0 - 1.0[/code], предÑтавлÑющий Ñилу ÑглаживаниÑ."
#: doc/classes/Quat.xml:80
msgid "Returns the dot product of two quaternions."
@@ -40408,10 +41656,10 @@ msgstr ""
#: doc/classes/Quat.xml:87
msgid ""
-"Returns Euler angles (in the YXZ convention: first Z, then X, and Y last) "
-"corresponding to the rotation represented by the unit quaternion. Returned "
-"vector contains the rotation angles in the format (X angle, Y angle, Z "
-"angle)."
+"Returns Euler angles (in the YXZ convention: when decomposing, first Z, then "
+"X, and Y last) corresponding to the rotation represented by the unit "
+"quaternion. Returned vector contains the rotation angles in the format (X "
+"angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:94
@@ -40450,49 +41698,71 @@ msgstr ""
#: doc/classes/Quat.xml:151
msgid ""
"Sets the quaternion to a rotation specified by Euler angles (in the YXZ "
-"convention: first Z, then X, and Y last), given in the vector format as (X "
-"angle, Y angle, Z angle)."
+"convention: when decomposing, first Z, then X, and Y last), given in the "
+"vector format as (X angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:162
-msgid "Performs a spherical-linear interpolation with another quaternion."
+#, fuzzy
+msgid ""
+"Returns the result of the spherical linear interpolation between this "
+"quaternion and [code]to[/code] by amount [code]weight[/code].\n"
+"[b]Note:[/b] Both quaternions must be normalized."
msgstr ""
+"Возвращает результат ÑферичеÑкого линейного ÑÐ³Ð»Ð°Ð¶Ð¸Ð²Ð°Ð½Ð¸Ñ Ð¼ÐµÐ¶Ð´Ñƒ Ñтим вектором "
+"и [code]b[/code], на значение [code]t[/code]. [code]t[/code] лежит в "
+"диапазоне [code]0.0 - 1.0[/code], и предÑтавлÑет Ñилу ÑглаживаниÑ.\n"
+"[b]Заметка:[/b] Оба вектора должны быть нормализованы."
-#: doc/classes/Quat.xml:173
+#: doc/classes/Quat.xml:174
+#, fuzzy
msgid ""
-"Performs a spherical-linear interpolation with another quaterion without "
-"checking if the rotation path is not bigger than 90°."
+"Returns the result of the spherical linear interpolation between this "
+"quaternion and [code]to[/code] by amount [code]weight[/code], but without "
+"checking if the rotation path is not bigger than 90 degrees."
msgstr ""
+"Возвращает результат линейного ÑÐ³Ð»Ð°Ð¶Ð¸Ð²Ð°Ð½Ð¸Ñ Ð¼ÐµÐ¶Ð´Ñƒ Ñтим вектором и [code]b[/"
+"code] на значение [code]t[/code]. [code]t[/code] Ñто диапазон [code]0.0 - "
+"1.0[/code], предÑтавлÑющий Ñилу ÑглаживаниÑ."
-#: doc/classes/Quat.xml:182
-msgid "Transforms the vector [code]v[/code] by this quaternion."
+#: doc/classes/Quat.xml:183
+msgid "Returns a vector transformed (multiplied) by this quaternion."
msgstr ""
-#: doc/classes/Quat.xml:188
-msgid "W component of the quaternion."
+#: doc/classes/Quat.xml:189
+msgid ""
+"W component of the quaternion (real part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:191
-msgid "X component of the quaternion."
+#: doc/classes/Quat.xml:193
+msgid ""
+"X component of the quaternion (imaginary [code]i[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:194
-msgid "Y component of the quaternion."
+#: doc/classes/Quat.xml:197
+msgid ""
+"Y component of the quaternion (imaginary [code]j[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:197
-msgid "Z component of the quaternion."
+#: doc/classes/Quat.xml:201
+msgid ""
+"Z component of the quaternion (imaginary [code]k[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:202
+#: doc/classes/Quat.xml:207
msgid ""
-"The identity rotation. Equivalent to an identity matrix. If a vector is "
-"transformed by an identity quaternion, it will not change."
+"The identity quaternion, representing no rotation. Equivalent to an identity "
+"[Basis] matrix. If a vector is transformed by an identity quaternion, it "
+"will not change."
msgstr ""
#: doc/classes/RandomNumberGenerator.xml:4
msgid "A class for generating pseudo-random numbers."
-msgstr ""
+msgstr "КлаÑÑ Ð´Ð»Ñ Ð³ÐµÐ½ÐµÑ€Ð°Ñ†Ð¸Ð¸ пÑевдо-Ñлучайных чиÑел."
#: doc/classes/RandomNumberGenerator.xml:7
msgid ""
@@ -40510,18 +41780,35 @@ msgid ""
" var my_random_number = rng.randf_range(-10.0, 10.0)\n"
"[/codeblock]"
msgstr ""
+"RandomNumberGenerator Ñто клаÑÑ Ð´Ð»Ñ Ð³ÐµÐ½ÐµÑ€Ð°Ñ†Ð¸Ð¸ пÑевдо-Ñлучайных чиÑел. Ð’ "
+"наÑтоÑщее Ð²Ñ€ÐµÐ¼Ñ Ð¾Ð½ иÑпользует алгоритм [url=http://www.pcg-random."
+"org/]PCG32[/url].\n"
+"[b]Заметка:[/b] Лежащий в оÑнове алгоритм Ñто деталь реализации. Как "
+"результат, он не должен менÑÑ‚ÑŒÑÑ Ð½Ð° других верÑиÑÑ… Godot.\n"
+"Ð”Ð»Ñ Ð³ÐµÐ½ÐµÑ€Ð°Ñ†Ð¸Ð¸ Ñлучайного чиÑла Ñ Ð¿Ð»Ð°Ð²Ð°ÑŽÑ‰ÐµÐ¹ точкой (в определённом диапазоне) "
+"в завиÑимоÑти от зерна оÑнованного на времени:\n"
+"[codeblock]\n"
+"var rng = RandomNumberGenerator.new()\n"
+"func _ready():\n"
+" rng.randomize()\n"
+" var my_random_number = rng.randf_range(-10.0, 10.0)\n"
+"[/codeblock]"
#: doc/classes/RandomNumberGenerator.xml:24
msgid ""
"Generates a pseudo-random float between [code]0.0[/code] and [code]1.0[/"
"code] (inclusive)."
msgstr ""
+"Генерирует пÑевдо-Ñлучайное чиÑло Ñ Ð¿Ð»Ð°Ð²Ð°ÑŽÑ‰ÐµÐ¹ точкой между [code]0.0[/code] "
+"и [code]1.0[/code] (включительно)."
#: doc/classes/RandomNumberGenerator.xml:35
msgid ""
"Generates a pseudo-random float between [code]from[/code] and [code]to[/"
"code] (inclusive)."
msgstr ""
+"Генерирует пÑевдо-Ñлучайное чиÑло Ñ Ð¿Ð»Ð°Ð²Ð°ÑŽÑ‰ÐµÐ¹ точкой между [code]from[/code] "
+"и [code]to[/code] (включительно)."
#: doc/classes/RandomNumberGenerator.xml:46
msgid ""
@@ -40530,22 +41817,31 @@ msgid ""
"specified [code]mean[/code] and a standard [code]deviation[/code]. This is "
"also called Gaussian distribution."
msgstr ""
+"Генерирует пÑевдо-Ñлучайное чиÑло Ñ Ð¿Ð»Ð°Ð²Ð°ÑŽÑ‰ÐµÐ¹ точкой методом [url=https://en."
+"wikipedia.org/wiki/Normal_distribution]нормального[/url] раÑпределениÑ, "
+"иÑÐ¿Ð¾Ð»ÑŒÐ·ÑƒÑ Ð¿Ñ€ÐµÐ¾Ð±Ñ€Ð°Ð·Ð¾Ð²Ð°Ð½Ð¸Ðµ БокÑа-Мюллера Ñ ÑƒÐºÐ°Ð·Ð°Ð½Ð½Ñ‹Ð¼ [code]mean[/code] и "
+"Ñтандартным [code]deviation[/code]. Это также называетÑÑ Ð“Ð°ÑƒÑÑовым "
+"раÑпределением."
#: doc/classes/RandomNumberGenerator.xml:53
msgid ""
"Generates a pseudo-random 32-bit unsigned integer between [code]0[/code] and "
"[code]4294967295[/code] (inclusive)."
msgstr ""
+"Генерирует пÑевдо-Ñлучайное 32-битное без-знаковое целочиÑленное чиÑло между "
+"[code]0[/code] и [code]4294967295[/code] (включительно)."
#: doc/classes/RandomNumberGenerator.xml:64
msgid ""
"Generates a pseudo-random 32-bit signed integer between [code]from[/code] "
"and [code]to[/code] (inclusive)."
msgstr ""
+"Генерирует пÑевдо-Ñлучайное 32-битное знаковое целочиÑленное чиÑло между "
+"[code]from[/code] и [code]to[/code] (включительно)."
#: doc/classes/RandomNumberGenerator.xml:71
msgid "Setups a time-based seed to generator."
-msgstr ""
+msgstr "УÑтанавливает оÑнованное на времени зерно генератора."
#: doc/classes/RandomNumberGenerator.xml:77
msgid ""
@@ -40555,6 +41851,12 @@ msgid ""
"similar random streams given similar seeds. Consider using a hash function "
"to improve your seed quality if they're sourced externally."
msgstr ""
+"Зерно иÑпользуемое генератором Ñлучайных чиÑел. Данное зерно будет "
+"предоÑтавлÑÑ‚ÑŒ воÑпроизводимую поÑледовательноÑÑ‚ÑŒ пÑевдо-Ñлучайных чиÑел.\n"
+"[b]Заметка:[/b] Генератор не имеет Ñффекта лавины, и может производить "
+"одинаковые потоки Ñлучайных чиÑел иÑÐ¿Ð¾Ð»ÑŒÐ·ÑƒÑ Ð¾Ð´Ð¸Ð½Ð°ÐºÐ¾Ð²Ñ‹Ðµ зёрна. ИÑпользуйте "
+"функцию Ñ…ÑÑˆÐ¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ð´Ð»Ñ ÑƒÐ»ÑƒÑ‡ÑˆÐµÐ½Ð¸Ñ ÐºÐ°Ñ‡ÐµÑтва зерен еÑли они получены из "
+"внешних иÑточников."
#: doc/classes/Range.xml:4
msgid "Abstract base class for range-based controls."
@@ -40690,7 +41992,8 @@ msgid ""
"collision information immediately instead of waiting for the next "
"[code]_physics_process[/code] call, for example if the ray or its parent has "
"changed state.\n"
-"[b]Note:[/b] [code]enabled == true[/code] is not required for this to work."
+"[b]Note:[/b] [member enabled] does not need to be [code]true[/code] for this "
+"to work."
msgstr ""
#: doc/classes/RayCast2D.xml:54 doc/classes/RayCast3D.xml:55
@@ -40796,7 +42099,8 @@ msgid ""
"Use this method to update the collision information immediately instead of "
"waiting for the next [code]_physics_process[/code] call, for example if the "
"ray or its parent has changed state.\n"
-"[b]Note:[/b] [code]enabled == true[/code] is not required for this to work."
+"[b]Note:[/b] [member enabled] does not need to be [code]true[/code] for this "
+"to work."
msgstr ""
#: doc/classes/RayCast3D.xml:71
@@ -40954,14 +42258,6 @@ msgstr ""
msgid "Returns a larger [Rect2] that contains this [Rect2] and [code]b[/code]."
msgstr ""
-#: doc/classes/Rect2.xml:174 doc/classes/Rect2i.xml:163
-msgid "Ending corner."
-msgstr ""
-
-#: doc/classes/Rect2.xml:177 doc/classes/Rect2i.xml:166
-msgid "Position (starting corner)."
-msgstr ""
-
#: doc/classes/Rect2i.xml:4
msgid "2D axis-aligned bounding box using integer coordinates."
msgstr ""
@@ -41074,22 +42370,22 @@ msgstr ""
msgid ""
"Base class for any object that keeps a reference count. [Resource] and many "
"other helper objects inherit this class.\n"
-"References keep an internal reference counter so that they are automatically "
-"released when no longer in use, and only then. References therefore do not "
-"need to be freed manually with [method Object.free].\n"
+"Unlike [Object]s, References keep an internal reference counter so that they "
+"are automatically released when no longer in use, and only then. References "
+"therefore do not need to be freed manually with [method Object.free].\n"
"In the vast majority of use cases, instantiating and using [Reference]-"
"derived types is all you need to do. The methods provided in this class are "
"only for advanced users, and can cause issues if misused."
msgstr ""
-#: doc/classes/Reference.xml:18
+#: doc/classes/Reference.xml:19
msgid ""
"Initializes the internal reference counter. Use this only if you really know "
"what you are doing.\n"
"Returns whether the initialization was successful."
msgstr ""
-#: doc/classes/Reference.xml:26
+#: doc/classes/Reference.xml:27
msgid ""
"Increments the internal reference counter. Use this only if you really know "
"what you are doing.\n"
@@ -41097,7 +42393,7 @@ msgid ""
"code] otherwise."
msgstr ""
-#: doc/classes/Reference.xml:34
+#: doc/classes/Reference.xml:35
msgid ""
"Decrements the internal reference counter. Use this only if you really know "
"what you are doing.\n"
@@ -41146,14 +42442,14 @@ msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/reflection_probes.html"
msgstr ""
-#: doc/classes/ReflectionProbe.xml:17
+#: doc/classes/ReflectionProbe.xml:23
msgid ""
"If [code]true[/code], enables box projection. This makes reflections look "
"more correct in rectangle-shaped rooms by offsetting the reflection center "
"depending on the camera's location."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:20
+#: doc/classes/ReflectionProbe.xml:26
msgid ""
"Sets the cull mask which determines what objects are drawn by this probe. "
"Every [VisualInstance3D] with a layer included in this cull mask will be "
@@ -41162,78 +42458,56 @@ msgid ""
"rendering cost."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:23
+#: doc/classes/ReflectionProbe.xml:29
msgid ""
"If [code]true[/code], computes shadows in the reflection probe. This makes "
"the reflection probe slower to render; you may want to disable this if using "
"the [constant UPDATE_ALWAYS] [member update_mode]."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:26
+#: doc/classes/ReflectionProbe.xml:32
msgid ""
"The size of the reflection probe. The larger the extents the more space "
"covered by the probe which will lower the perceived resolution. It is best "
"to keep the extents only as large as you need them."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:29
+#: doc/classes/ReflectionProbe.xml:35
msgid ""
"Defines the reflection intensity. Intensity modulates the strength of the "
"reflection."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:32
-msgid ""
-"Sets the ambient light color to be used when this probe is set to [member "
-"interior_enable]."
-msgstr ""
-
-#: doc/classes/ReflectionProbe.xml:35
-msgid ""
-"Sets the contribution value for how much the reflection affects the ambient "
-"light for this reflection probe when set to [member interior_enable]. Useful "
-"so that ambient light matches the color of the room."
-msgstr ""
-
#: doc/classes/ReflectionProbe.xml:38
-msgid ""
-"Sets the energy multiplier for this reflection probe's ambient light "
-"contribution when set to [member interior_enable]."
+msgid "If [code]true[/code], reflections will ignore sky contribution."
msgstr ""
#: doc/classes/ReflectionProbe.xml:41
msgid ""
-"If [code]true[/code], reflections will ignore sky contribution. Ambient "
-"lighting is then controlled by the [code]interior_ambient_*[/code] "
-"properties."
-msgstr ""
-
-#: doc/classes/ReflectionProbe.xml:44
-msgid ""
"Sets the max distance away from the probe an object can be before it is "
"culled."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:47
+#: doc/classes/ReflectionProbe.xml:44
msgid ""
"Sets the origin offset to be used when this reflection probe is in box "
"project mode."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:50
+#: doc/classes/ReflectionProbe.xml:47
msgid ""
"Sets how frequently the probe is updated. Can be [constant UPDATE_ONCE] or "
"[constant UPDATE_ALWAYS]."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:55
+#: doc/classes/ReflectionProbe.xml:52
msgid ""
"Update the probe once on the next frame. The corresponding radiance map will "
"be generated over the following six frames. This is slower to update than "
"[constant UPDATE_ALWAYS] but can result in higher quality reflections."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:58
+#: doc/classes/ReflectionProbe.xml:55
msgid ""
"Update the probe every frame. This is needed when you want to capture "
"dynamic objects. However, it results in an increased render time. Use "
@@ -41263,10 +42537,10 @@ msgid ""
"read by RegEx as [code]\\d+[/code]. Similarly, [code]compile(\"\\\"(?:\\\\\\"
"\\.|[^\\\"])*\\\"\")[/code] would be read as [code]\"(?:\\\\.|[^\"])*\"[/"
"code].\n"
-"Using [method search] you can find the pattern within the given text. If a "
+"Using [method search], you can find the pattern within the given text. If a "
"pattern is found, [RegExMatch] is returned and you can retrieve details of "
-"the results using functions such as [method RegExMatch.get_string] and "
-"[method RegExMatch.get_start].\n"
+"the results using methods such as [method RegExMatch.get_string] and [method "
+"RegExMatch.get_start].\n"
"[codeblock]\n"
"var regex = RegEx.new()\n"
"regex.compile(\"\\\\w-(\\\\d+)\")\n"
@@ -41275,7 +42549,7 @@ msgid ""
" print(result.get_string()) # Would print n-0123\n"
"[/codeblock]\n"
"The results of capturing groups [code]()[/code] can be retrieved by passing "
-"the group number to the various functions in [RegExMatch]. Group 0 is the "
+"the group number to the various methods in [RegExMatch]. Group 0 is the "
"default and will always refer to the entire pattern. In the above example, "
"calling [code]result.get_string(1)[/code] would give you [code]0123[/code].\n"
"This version of RegEx also supports named capturing groups, and the names "
@@ -41296,6 +42570,15 @@ msgid ""
" print(result.get_string(\"digit\"))\n"
"# Would print 01 03 0 3f 42\n"
"[/codeblock]\n"
+"[b]Example of splitting a string using a RegEx:[/b]\n"
+"[codeblock]\n"
+"var regex = RegEx.new()\n"
+"regex.compile(\"\\\\S+\") # Negated whitespace character class.\n"
+"var results = []\n"
+"for match in regex.search_all(\"One Two \\n\\tThree\"):\n"
+" results.push_back(match.get_string())\n"
+"# The `results` array now contains \"One\", \"Two\", \"Three\".\n"
+"[/codeblock]\n"
"[b]Note:[/b] Godot's regex implementation is based on the [url=https://www."
"pcre.org/]PCRE2[/url] library. You can view the full pattern reference "
"[url=https://www.pcre.org/current/doc/html/pcre2pattern.html]here[/url].\n"
@@ -41303,38 +42586,38 @@ msgid ""
"regular expressions online."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:47
+#: modules/regex/doc_classes/RegEx.xml:56
msgid ""
"This method resets the state of the object, as if it was freshly created. "
"Namely, it unassigns the regular expression of this object."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:56
+#: modules/regex/doc_classes/RegEx.xml:65
msgid ""
"Compiles and assign the search pattern to use. Returns [constant OK] if the "
"compilation is successful. If an error is encountered, details are printed "
"to standard output and an error is returned."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:63
+#: modules/regex/doc_classes/RegEx.xml:72
msgid "Returns the number of capturing groups in compiled pattern."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:70
+#: modules/regex/doc_classes/RegEx.xml:79
msgid ""
"Returns an array of names of named capturing groups in the compiled pattern. "
"They are ordered by appearance."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:77
+#: modules/regex/doc_classes/RegEx.xml:86
msgid "Returns the original search pattern that was compiled."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:84
+#: modules/regex/doc_classes/RegEx.xml:93
msgid "Returns whether this object has a valid search pattern assigned."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:97
+#: modules/regex/doc_classes/RegEx.xml:106
msgid ""
"Searches the text for the compiled pattern. Returns a [RegExMatch] container "
"of the first matching result if found, otherwise [code]null[/code]. The "
@@ -41342,7 +42625,7 @@ msgid ""
"and end anchor would be."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:110
+#: modules/regex/doc_classes/RegEx.xml:119
msgid ""
"Searches the text for the compiled pattern. Returns an array of [RegExMatch] "
"containers for each non-overlapping result. If no results were found, an "
@@ -41350,7 +42633,7 @@ msgid ""
"specified without modifying where the start and end anchor would be."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:127
+#: modules/regex/doc_classes/RegEx.xml:136
msgid ""
"Searches the text for the compiled pattern and replaces it with the "
"specified string. Escapes and backreferences such as [code]$1[/code] and "
@@ -42077,7 +43360,7 @@ msgid ""
msgstr ""
#: doc/classes/RenderingServer.xml:1222 doc/classes/RenderingServer.xml:1250
-#: doc/classes/RenderingServer.xml:1527
+#: doc/classes/RenderingServer.xml:1537
msgid "Not implemented in Godot 3.x."
msgstr ""
@@ -42224,30 +43507,30 @@ msgid ""
"OmniLight3D.omni_shadow_mode]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1481
+#: doc/classes/RenderingServer.xml:1491
msgid ""
"Sets the color of the light. Equivalent to [member Light3D.light_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1492
+#: doc/classes/RenderingServer.xml:1502
msgid ""
"Sets the cull mask for this Light3D. Lights only affect objects in the "
"selected layers. Equivalent to [member Light3D.light_cull_mask]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1503
+#: doc/classes/RenderingServer.xml:1513
msgid ""
"If [code]true[/code], light will subtract light instead of adding light. "
"Equivalent to [member Light3D.light_negative]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1516
+#: doc/classes/RenderingServer.xml:1526
msgid ""
"Sets the specified light parameter. See [enum LightParam] for options. "
"Equivalent to [method Light3D.set_param]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1538
+#: doc/classes/RenderingServer.xml:1548
msgid ""
"If [code]true[/code], reverses the backface culling of the mesh. This can be "
"useful when you have a flat mesh that has a light behind it. If you need to "
@@ -42256,29 +43539,25 @@ msgid ""
"to [member Light3D.shadow_reverse_cull_face]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1549
+#: doc/classes/RenderingServer.xml:1559
msgid ""
"If [code]true[/code], light will cast shadows. Equivalent to [member Light3D."
"shadow_enabled]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1560
+#: doc/classes/RenderingServer.xml:1570
msgid ""
"Sets the color of the shadow cast by the light. Equivalent to [member "
"Light3D.shadow_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1571
-msgid "Sets whether GI probes capture light information from this light."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:1584
+#: doc/classes/RenderingServer.xml:1583
msgid ""
"Returns a mesh of a sphere with the given amount of horizontal and vertical "
"subdivisions."
msgstr ""
-#: doc/classes/RenderingServer.xml:1591
+#: doc/classes/RenderingServer.xml:1590
msgid ""
"Creates an empty material and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42287,31 +43566,31 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:1603
+#: doc/classes/RenderingServer.xml:1602
msgid "Returns the value of a certain material's parameter."
msgstr ""
-#: doc/classes/RenderingServer.xml:1614
+#: doc/classes/RenderingServer.xml:1613
msgid "Sets an object's next material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1627
+#: doc/classes/RenderingServer.xml:1626
msgid "Sets a material's parameter."
msgstr ""
-#: doc/classes/RenderingServer.xml:1638
+#: doc/classes/RenderingServer.xml:1637
msgid "Sets a material's render priority."
msgstr ""
-#: doc/classes/RenderingServer.xml:1649
+#: doc/classes/RenderingServer.xml:1648
msgid "Sets a shader material's shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:1678
+#: doc/classes/RenderingServer.xml:1677
msgid "Removes all surfaces from a mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1685
+#: doc/classes/RenderingServer.xml:1684
msgid ""
"Creates a new mesh and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all [code]mesh_*[/"
@@ -42322,58 +43601,58 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:1696
+#: doc/classes/RenderingServer.xml:1695
msgid "Returns a mesh's blend shape count."
msgstr ""
-#: doc/classes/RenderingServer.xml:1705
+#: doc/classes/RenderingServer.xml:1704
msgid "Returns a mesh's blend shape mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:1714
+#: doc/classes/RenderingServer.xml:1713
msgid "Returns a mesh's custom aabb."
msgstr ""
-#: doc/classes/RenderingServer.xml:1723
+#: doc/classes/RenderingServer.xml:1722
msgid "Returns a mesh's number of surfaces."
msgstr ""
-#: doc/classes/RenderingServer.xml:1734
+#: doc/classes/RenderingServer.xml:1733
msgid "Sets a mesh's blend shape mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:1745
+#: doc/classes/RenderingServer.xml:1744
msgid "Sets a mesh's custom aabb."
msgstr ""
-#: doc/classes/RenderingServer.xml:1756
+#: doc/classes/RenderingServer.xml:1755
msgid "Returns a mesh's surface's buffer arrays."
msgstr ""
-#: doc/classes/RenderingServer.xml:1767
+#: doc/classes/RenderingServer.xml:1766
msgid "Returns a mesh's surface's arrays for blend shapes."
msgstr ""
-#: doc/classes/RenderingServer.xml:1782 doc/classes/RenderingServer.xml:1795
+#: doc/classes/RenderingServer.xml:1781 doc/classes/RenderingServer.xml:1794
msgid "Function is unused in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:1806
+#: doc/classes/RenderingServer.xml:1805
msgid "Returns a mesh's surface's material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1819
+#: doc/classes/RenderingServer.xml:1818
msgid "Sets a mesh's surface's material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1834
+#: doc/classes/RenderingServer.xml:1833
msgid ""
"Updates a specific region of a vertex buffer for the specified surface. "
"Warning: this function alters the vertex buffer directly with no safety "
"mechanisms, you can easily corrupt your mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1857
+#: doc/classes/RenderingServer.xml:1856
msgid ""
"Creates a new multimesh on the RenderingServer and returns an [RID] handle. "
"This RID will be used in all [code]multimesh_*[/code] RenderingServer "
@@ -42384,82 +43663,82 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:1868
+#: doc/classes/RenderingServer.xml:1867
msgid ""
"Calculates and returns the axis-aligned bounding box that encloses all "
"instances within the multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1885
+#: doc/classes/RenderingServer.xml:1884
msgid "Returns the number of instances allocated for this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1894
+#: doc/classes/RenderingServer.xml:1893
msgid ""
"Returns the RID of the mesh that will be used in drawing this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1903
+#: doc/classes/RenderingServer.xml:1902
msgid "Returns the number of visible instances for this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1914
+#: doc/classes/RenderingServer.xml:1913
msgid "Returns the color by which the specified instance will be modulated."
msgstr ""
-#: doc/classes/RenderingServer.xml:1925
+#: doc/classes/RenderingServer.xml:1924
msgid "Returns the custom data associated with the specified instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:1936
+#: doc/classes/RenderingServer.xml:1935
msgid "Returns the [Transform] of the specified instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:1947
+#: doc/classes/RenderingServer.xml:1946
msgid ""
"Returns the [Transform2D] of the specified instance. For use when the "
"multimesh is set to use 2D transforms."
msgstr ""
-#: doc/classes/RenderingServer.xml:1960
+#: doc/classes/RenderingServer.xml:1959
msgid ""
"Sets the color by which this instance will be modulated. Equivalent to "
"[method MultiMesh.set_instance_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1973
+#: doc/classes/RenderingServer.xml:1972
msgid ""
"Sets the custom data for this instance. Custom data is passed as a [Color], "
"but is interpreted as a [code]vec4[/code] in the shader. Equivalent to "
"[method MultiMesh.set_instance_custom_data]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1986
+#: doc/classes/RenderingServer.xml:1985
msgid ""
"Sets the [Transform] for this instance. Equivalent to [method MultiMesh."
"set_instance_transform]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1999
+#: doc/classes/RenderingServer.xml:1998
msgid ""
"Sets the [Transform2D] for this instance. For use when multimesh is used in "
"2D. Equivalent to [method MultiMesh.set_instance_transform_2d]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2020
+#: doc/classes/RenderingServer.xml:2019
msgid ""
"Sets the mesh to be drawn by the multimesh. Equivalent to [member MultiMesh."
"mesh]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2031
+#: doc/classes/RenderingServer.xml:2030
msgid ""
"Sets the number of instances visible at a given time. If -1, all instances "
"that have been allocated are drawn. Equivalent to [member MultiMesh."
"visible_instance_count]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2038
+#: doc/classes/RenderingServer.xml:2037
msgid ""
"Creates a new omni light and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID can be used in most "
@@ -42470,7 +43749,7 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2047
+#: doc/classes/RenderingServer.xml:2046
msgid ""
"Creates a particle system and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42481,23 +43760,23 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2058
+#: doc/classes/RenderingServer.xml:2057
msgid ""
"Calculates and returns the axis-aligned bounding box that contains all the "
"particles. Equivalent to [method GPUParticles3D.capture_aabb]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2067
+#: doc/classes/RenderingServer.xml:2066
msgid "Returns [code]true[/code] if particles are currently set to emitting."
msgstr ""
-#: doc/classes/RenderingServer.xml:2076
+#: doc/classes/RenderingServer.xml:2075
msgid ""
"Returns [code]true[/code] if particles are not emitting and particles are "
"set to inactive."
msgstr ""
-#: doc/classes/RenderingServer.xml:2085
+#: doc/classes/RenderingServer.xml:2084
msgid ""
"Add particle system to list of particle systems that need to be updated. "
"Update will take place on the next frame, or on the next call to [method "
@@ -42505,121 +43784,121 @@ msgid ""
"instances_cull_ray]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2094
+#: doc/classes/RenderingServer.xml:2093
msgid ""
"Reset the particles on the next update. Equivalent to [method GPUParticles3D."
"restart]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2105
+#: doc/classes/RenderingServer.xml:2104
msgid ""
"Sets the number of particles to be drawn and allocates the memory for them. "
"Equivalent to [member GPUParticles3D.amount]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2116
+#: doc/classes/RenderingServer.xml:2115
msgid ""
"Sets a custom axis-aligned bounding box for the particle system. Equivalent "
"to [member GPUParticles3D.visibility_aabb]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2127
+#: doc/classes/RenderingServer.xml:2126
msgid ""
"Sets the draw order of the particles to one of the named enums from [enum "
"ParticlesDrawOrder]. See [enum ParticlesDrawOrder] for options. Equivalent "
"to [member GPUParticles3D.draw_order]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2140
+#: doc/classes/RenderingServer.xml:2139
msgid ""
"Sets the mesh to be used for the specified draw pass. Equivalent to [member "
"GPUParticles3D.draw_pass_1], [member GPUParticles3D.draw_pass_2], [member "
"GPUParticles3D.draw_pass_3], and [member GPUParticles3D.draw_pass_4]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2151
+#: doc/classes/RenderingServer.xml:2150
msgid ""
"Sets the number of draw passes to use. Equivalent to [member GPUParticles3D."
"draw_passes]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2162
+#: doc/classes/RenderingServer.xml:2161
msgid ""
"Sets the [Transform] that will be used by the particles when they first emit."
msgstr ""
-#: doc/classes/RenderingServer.xml:2173
+#: doc/classes/RenderingServer.xml:2172
msgid ""
"If [code]true[/code], particles will emit over time. Setting to false does "
"not reset the particles, but only stops their emission. Equivalent to "
"[member GPUParticles3D.emitting]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2184
+#: doc/classes/RenderingServer.xml:2183
msgid ""
"Sets the explosiveness ratio. Equivalent to [member GPUParticles3D."
"explosiveness]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2195
+#: doc/classes/RenderingServer.xml:2194
msgid ""
"Sets the frame rate that the particle system rendering will be fixed to. "
"Equivalent to [member GPUParticles3D.fixed_fps]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2206
+#: doc/classes/RenderingServer.xml:2205
msgid ""
"If [code]true[/code], uses fractional delta which smooths the movement of "
"the particles. Equivalent to [member GPUParticles3D.fract_delta]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2217
+#: doc/classes/RenderingServer.xml:2216
msgid ""
"Sets the lifetime of each particle in the system. Equivalent to [member "
"GPUParticles3D.lifetime]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2228
+#: doc/classes/RenderingServer.xml:2227
msgid ""
"If [code]true[/code], particles will emit once and then stop. Equivalent to "
"[member GPUParticles3D.one_shot]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2239
+#: doc/classes/RenderingServer.xml:2238
msgid ""
"Sets the preprocess time for the particles animation. This lets you delay "
"starting an animation until after the particles have begun emitting. "
"Equivalent to [member GPUParticles3D.preprocess]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2250
+#: doc/classes/RenderingServer.xml:2249
msgid ""
"Sets the material for processing the particles. Note: this is not the "
"material used to draw the materials. Equivalent to [member GPUParticles3D."
"process_material]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2261
+#: doc/classes/RenderingServer.xml:2260
msgid ""
"Sets the emission randomness ratio. This randomizes the emission of "
"particles within their phase. Equivalent to [member GPUParticles3D."
"randomness]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2272
+#: doc/classes/RenderingServer.xml:2271
msgid ""
"Sets the speed scale of the particle system. Equivalent to [member "
"GPUParticles3D.speed_scale]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2283
+#: doc/classes/RenderingServer.xml:2282
msgid ""
"If [code]true[/code], particles use local coordinates. If [code]false[/code] "
"they use global coordinates. Equivalent to [member GPUParticles3D."
"local_coords]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2290
+#: doc/classes/RenderingServer.xml:2289
msgid ""
"Creates a reflection probe and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42630,85 +43909,64 @@ msgid ""
"[method instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2303
+#: doc/classes/RenderingServer.xml:2332
msgid ""
"If [code]true[/code], reflections will ignore sky contribution. Equivalent "
-"to [member ReflectionProbe.interior_enable]."
+"to [member ReflectionProbe.interior]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2314
+#: doc/classes/RenderingServer.xml:2343
msgid ""
"Sets the render cull mask for this reflection probe. Only instances with a "
"matching cull mask will be rendered by this probe. Equivalent to [member "
"ReflectionProbe.cull_mask]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2325
+#: doc/classes/RenderingServer.xml:2354
msgid ""
"If [code]true[/code], uses box projection. This can make reflections look "
"more correct in certain situations. Equivalent to [member ReflectionProbe."
"box_projection]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2336
+#: doc/classes/RenderingServer.xml:2365
msgid ""
"If [code]true[/code], computes shadows in the reflection probe. This makes "
"the reflection much slower to compute. Equivalent to [member ReflectionProbe."
"enable_shadows]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2347
+#: doc/classes/RenderingServer.xml:2376
msgid ""
"Sets the size of the area that the reflection probe will capture. Equivalent "
"to [member ReflectionProbe.extents]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2358
+#: doc/classes/RenderingServer.xml:2387
msgid ""
"Sets the intensity of the reflection probe. Intensity modulates the strength "
"of the reflection. Equivalent to [member ReflectionProbe.intensity]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2369
-msgid ""
-"Sets the ambient light color for this reflection probe when set to interior "
-"mode. Equivalent to [member ReflectionProbe.interior_ambient_color]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2380
-msgid ""
-"Sets the energy multiplier for this reflection probes ambient light "
-"contribution when set to interior mode. Equivalent to [member "
-"ReflectionProbe.interior_ambient_energy]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2391
-msgid ""
-"Sets the contribution value for how much the reflection affects the ambient "
-"light for this reflection probe when set to interior mode. Useful so that "
-"ambient light matches the color of the room. Equivalent to [member "
-"ReflectionProbe.interior_ambient_contrib]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2402
+#: doc/classes/RenderingServer.xml:2398
msgid ""
"Sets the max distance away from the probe an object can be before it is "
"culled. Equivalent to [member ReflectionProbe.max_distance]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2413
+#: doc/classes/RenderingServer.xml:2409
msgid ""
"Sets the origin offset to be used when this reflection probe is in box "
"project mode. Equivalent to [member ReflectionProbe.origin_offset]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2424
+#: doc/classes/RenderingServer.xml:2420
msgid ""
"Sets how often the reflection probe updates. Can either be once or every "
"frame. See [enum ReflectionProbeUpdateMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2437
+#: doc/classes/RenderingServer.xml:2433
msgid ""
"Schedules a callback to the corresponding named [code]method[/code] on "
"[code]where[/code] after a frame has been drawn.\n"
@@ -42716,7 +43974,7 @@ msgid ""
"[code]userdata[/code]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2445
+#: doc/classes/RenderingServer.xml:2441
msgid ""
"Creates a scenario and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all "
@@ -42726,24 +43984,24 @@ msgid ""
"The scenario is the 3D world that all the visual instances exist in."
msgstr ""
-#: doc/classes/RenderingServer.xml:2458
+#: doc/classes/RenderingServer.xml:2454
msgid ""
"Sets the [enum ScenarioDebugMode] for this scenario. See [enum "
"ScenarioDebugMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2469
+#: doc/classes/RenderingServer.xml:2465
msgid "Sets the environment that will be used with this scenario."
msgstr ""
-#: doc/classes/RenderingServer.xml:2480
+#: doc/classes/RenderingServer.xml:2476
msgid ""
"Sets the fallback environment to be used by this scenario. The fallback "
"environment is used if no environment is set. Internally, this is used by "
"the editor to provide a default environment."
msgstr ""
-#: doc/classes/RenderingServer.xml:2495
+#: doc/classes/RenderingServer.xml:2491
msgid ""
"Sets a boot image. The color defines the background color. If [code]scale[/"
"code] is [code]true[/code], the image will be scaled to fit the screen size. "
@@ -42752,19 +44010,19 @@ msgid ""
"the image will be scaled with nearest-neighbor interpolation."
msgstr ""
-#: doc/classes/RenderingServer.xml:2504
+#: doc/classes/RenderingServer.xml:2500
msgid ""
"If [code]true[/code], the engine will generate wireframes for use with the "
"wireframe debug mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:2513
+#: doc/classes/RenderingServer.xml:2509
msgid ""
"Sets the default clear color which is used when a specific clear color has "
"not been selected."
msgstr ""
-#: doc/classes/RenderingServer.xml:2520
+#: doc/classes/RenderingServer.xml:2516
msgid ""
"Creates an empty shader and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42773,47 +44031,47 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2530
+#: doc/classes/RenderingServer.xml:2526
msgid "Returns a shader's code."
msgstr ""
-#: doc/classes/RenderingServer.xml:2541
+#: doc/classes/RenderingServer.xml:2537
msgid "Returns a default texture from a shader searched by name."
msgstr ""
-#: doc/classes/RenderingServer.xml:2560
+#: doc/classes/RenderingServer.xml:2556
msgid "Returns the parameters of a shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:2571
+#: doc/classes/RenderingServer.xml:2567
msgid "Sets a shader's code."
msgstr ""
-#: doc/classes/RenderingServer.xml:2584
+#: doc/classes/RenderingServer.xml:2580
msgid "Sets a shader's default texture. Overwrites the texture given by name."
msgstr ""
-#: doc/classes/RenderingServer.xml:2597
+#: doc/classes/RenderingServer.xml:2593
msgid "Allocates the GPU buffers for this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2608
+#: doc/classes/RenderingServer.xml:2604
msgid "Returns the [Transform] set for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2619
+#: doc/classes/RenderingServer.xml:2615
msgid "Returns the [Transform2D] set for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2632
+#: doc/classes/RenderingServer.xml:2628
msgid "Sets the [Transform] for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2645
+#: doc/classes/RenderingServer.xml:2641
msgid "Sets the [Transform2D] for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2652
+#: doc/classes/RenderingServer.xml:2648
msgid ""
"Creates a skeleton and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all "
@@ -42822,11 +44080,11 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2662
+#: doc/classes/RenderingServer.xml:2658
msgid "Returns the number of bones allocated for this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2669
+#: doc/classes/RenderingServer.xml:2665
msgid ""
"Creates an empty sky and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all [code]sky_*[/"
@@ -42835,13 +44093,13 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2681
+#: doc/classes/RenderingServer.xml:2677
msgid ""
"Sets the material that the sky uses to render the background and reflection "
"maps."
msgstr ""
-#: doc/classes/RenderingServer.xml:2688
+#: doc/classes/RenderingServer.xml:2684
msgid ""
"Creates a spot light and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID can be used in most [code]light_*[/"
@@ -42852,15 +44110,15 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2717
+#: doc/classes/RenderingServer.xml:2713
msgid "Sets a viewport's camera."
msgstr ""
-#: doc/classes/RenderingServer.xml:2728
+#: doc/classes/RenderingServer.xml:2724
msgid "Sets a viewport's canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:2741
+#: doc/classes/RenderingServer.xml:2737
msgid ""
"Copies the viewport to a region of the screen specified by [code]rect[/"
"code]. If [method viewport_set_render_direct_to_screen] is [code]true[/"
@@ -42882,7 +44140,7 @@ msgid ""
"viewport_set_render_direct_to_screen]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2755
+#: doc/classes/RenderingServer.xml:2751
msgid ""
"Creates an empty viewport and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42891,72 +44149,72 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2767
+#: doc/classes/RenderingServer.xml:2763
msgid ""
"Returns a viewport's render information. For options, see the [enum "
"ViewportRenderInfo] constants."
msgstr ""
-#: doc/classes/RenderingServer.xml:2776
+#: doc/classes/RenderingServer.xml:2772
msgid "Returns the viewport's last rendered frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:2787
+#: doc/classes/RenderingServer.xml:2783
msgid "Detaches a viewport from a canvas and vice versa."
msgstr ""
-#: doc/classes/RenderingServer.xml:2798
+#: doc/classes/RenderingServer.xml:2794
msgid "If [code]true[/code], sets the viewport active, else sets it inactive."
msgstr ""
-#: doc/classes/RenderingServer.xml:2813
+#: doc/classes/RenderingServer.xml:2809
msgid ""
"Sets the stacking order for a viewport's canvas.\n"
"[code]layer[/code] is the actual canvas layer, while [code]sublayer[/code] "
"specifies the stacking order of the canvas among those in the same layer."
msgstr ""
-#: doc/classes/RenderingServer.xml:2827
+#: doc/classes/RenderingServer.xml:2823
msgid "Sets the transformation of a viewport's canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:2838
+#: doc/classes/RenderingServer.xml:2834
msgid ""
"Sets the clear mode of a viewport. See [enum ViewportClearMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2849
+#: doc/classes/RenderingServer.xml:2845
msgid ""
"Sets the debug draw mode of a viewport. See [enum ViewportDebugDraw] for "
"options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2860
+#: doc/classes/RenderingServer.xml:2856
msgid ""
"If [code]true[/code], rendering of a viewport's environment is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:2871
+#: doc/classes/RenderingServer.xml:2867
msgid "Sets the viewport's global transformation matrix."
msgstr ""
-#: doc/classes/RenderingServer.xml:2882
+#: doc/classes/RenderingServer.xml:2878
msgid "If [code]true[/code], the viewport's canvas is not rendered."
msgstr ""
-#: doc/classes/RenderingServer.xml:2893
+#: doc/classes/RenderingServer.xml:2889
msgid "Currently unimplemented in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:2904
+#: doc/classes/RenderingServer.xml:2900
msgid "Sets the anti-aliasing mode. See [enum ViewportMSAA] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2915
+#: doc/classes/RenderingServer.xml:2911
msgid "Sets the viewport's parent to another viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:2926
+#: doc/classes/RenderingServer.xml:2922
msgid ""
"If [code]true[/code], render the contents of the viewport directly to "
"screen. This allows a low-level optimization where you can skip drawing a "
@@ -42972,455 +44230,455 @@ msgid ""
"significantly larger than the window size."
msgstr ""
-#: doc/classes/RenderingServer.xml:2937
+#: doc/classes/RenderingServer.xml:2933
msgid ""
"Sets a viewport's scenario.\n"
"The scenario contains information about the [enum ScenarioDebugMode], "
"environment information, reflection atlas etc."
msgstr ""
-#: doc/classes/RenderingServer.xml:2951
+#: doc/classes/RenderingServer.xml:2947
msgid "Sets the shadow atlas quadrant's subdivision."
msgstr ""
-#: doc/classes/RenderingServer.xml:2962
+#: doc/classes/RenderingServer.xml:2958
msgid ""
"Sets the size of the shadow atlas's images (used for omni and spot lights). "
"The value will be rounded up to the nearest power of 2."
msgstr ""
-#: doc/classes/RenderingServer.xml:2975
+#: doc/classes/RenderingServer.xml:2971
msgid "Sets the viewport's width and height."
msgstr ""
-#: doc/classes/RenderingServer.xml:2986
+#: doc/classes/RenderingServer.xml:2982
msgid ""
"If [code]true[/code], the viewport renders its background as transparent."
msgstr ""
-#: doc/classes/RenderingServer.xml:2997
+#: doc/classes/RenderingServer.xml:2993
msgid ""
"Sets when the viewport should be updated. See [enum ViewportUpdateMode] "
"constants for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:3008
+#: doc/classes/RenderingServer.xml:3004
msgid ""
"If [code]true[/code], the viewport uses augmented or virtual reality "
"technologies. See [XRInterface]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3014
+#: doc/classes/RenderingServer.xml:3010
msgid ""
"If [code]false[/code], disables rendering completely, but the engine logic "
"is still being processed. You can call [method force_draw] to draw a frame "
"even with rendering disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3020
+#: doc/classes/RenderingServer.xml:3016
msgid ""
"Emitted at the end of the frame, after the RenderingServer has finished "
"updating all the Viewports."
msgstr ""
-#: doc/classes/RenderingServer.xml:3025
+#: doc/classes/RenderingServer.xml:3021
msgid ""
"Emitted at the beginning of the frame, before the RenderingServer updates "
"all the Viewports."
msgstr ""
-#: doc/classes/RenderingServer.xml:3031
+#: doc/classes/RenderingServer.xml:3027
msgid "Marks an error that shows that the index array is empty."
msgstr ""
-#: doc/classes/RenderingServer.xml:3034
+#: doc/classes/RenderingServer.xml:3030
msgid "Number of weights/bones per vertex."
msgstr ""
-#: doc/classes/RenderingServer.xml:3037
+#: doc/classes/RenderingServer.xml:3033
msgid "The minimum Z-layer for canvas items."
msgstr ""
-#: doc/classes/RenderingServer.xml:3040
+#: doc/classes/RenderingServer.xml:3036
msgid "The maximum Z-layer for canvas items."
msgstr ""
-#: doc/classes/RenderingServer.xml:3043
+#: doc/classes/RenderingServer.xml:3039
msgid ""
"Max number of glow levels that can be used with glow post-process effect."
msgstr ""
-#: doc/classes/RenderingServer.xml:3046
+#: doc/classes/RenderingServer.xml:3042
msgid "Unused enum in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:3067
+#: doc/classes/RenderingServer.xml:3063
msgid "Shader is a 3D shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3070
+#: doc/classes/RenderingServer.xml:3066
msgid "Shader is a 2D shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3073
+#: doc/classes/RenderingServer.xml:3069
msgid "Shader is a particle shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3076
+#: doc/classes/RenderingServer.xml:3072
msgid "Shader is a sky shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3079
+#: doc/classes/RenderingServer.xml:3075
msgid "Represents the size of the [enum ShaderMode] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3082
+#: doc/classes/RenderingServer.xml:3078
msgid "The minimum renderpriority of all materials."
msgstr ""
-#: doc/classes/RenderingServer.xml:3085
+#: doc/classes/RenderingServer.xml:3081
msgid "The maximum renderpriority of all materials."
msgstr ""
-#: doc/classes/RenderingServer.xml:3088
+#: doc/classes/RenderingServer.xml:3084
msgid "Array is a vertex array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3091
+#: doc/classes/RenderingServer.xml:3087
msgid "Array is a normal array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3094
+#: doc/classes/RenderingServer.xml:3090
msgid "Array is a tangent array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3097
+#: doc/classes/RenderingServer.xml:3093
msgid "Array is a color array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3100
+#: doc/classes/RenderingServer.xml:3096
msgid "Array is an UV coordinates array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3103
+#: doc/classes/RenderingServer.xml:3099
msgid "Array is an UV coordinates array for the second UV coordinates."
msgstr ""
-#: doc/classes/RenderingServer.xml:3106
+#: doc/classes/RenderingServer.xml:3102
msgid "Array contains bone information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3109
+#: doc/classes/RenderingServer.xml:3105
msgid "Array is weight information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3112
+#: doc/classes/RenderingServer.xml:3108
msgid "Array is index array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3118
+#: doc/classes/RenderingServer.xml:3114
msgid "Flag used to mark a vertex array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3121
+#: doc/classes/RenderingServer.xml:3117
msgid "Flag used to mark a normal array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3124
+#: doc/classes/RenderingServer.xml:3120
msgid "Flag used to mark a tangent array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3127
+#: doc/classes/RenderingServer.xml:3123
msgid "Flag used to mark a color array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3130
+#: doc/classes/RenderingServer.xml:3126
msgid "Flag used to mark an UV coordinates array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3133
+#: doc/classes/RenderingServer.xml:3129
msgid ""
"Flag used to mark an UV coordinates array for the second UV coordinates."
msgstr ""
-#: doc/classes/RenderingServer.xml:3136
+#: doc/classes/RenderingServer.xml:3132
msgid "Flag used to mark a bone information array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3139
+#: doc/classes/RenderingServer.xml:3135
msgid "Flag used to mark a weights array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3142
+#: doc/classes/RenderingServer.xml:3138
msgid "Flag used to mark an index array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3171
+#: doc/classes/RenderingServer.xml:3167
msgid "Primitive to draw consists of points."
msgstr ""
-#: doc/classes/RenderingServer.xml:3174
+#: doc/classes/RenderingServer.xml:3170
msgid "Primitive to draw consists of lines."
msgstr ""
-#: doc/classes/RenderingServer.xml:3177
+#: doc/classes/RenderingServer.xml:3173
msgid "Primitive to draw consists of a line strip from start to end."
msgstr ""
-#: doc/classes/RenderingServer.xml:3180
+#: doc/classes/RenderingServer.xml:3176
msgid "Primitive to draw consists of triangles."
msgstr ""
-#: doc/classes/RenderingServer.xml:3183
+#: doc/classes/RenderingServer.xml:3179
msgid ""
"Primitive to draw consists of a triangle strip (the last 3 vertices are "
"always combined to make a triangle)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3186
+#: doc/classes/RenderingServer.xml:3182
msgid "Represents the size of the [enum PrimitiveType] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3195
+#: doc/classes/RenderingServer.xml:3191
msgid "Use [Transform2D] to store MultiMesh transform."
msgstr ""
-#: doc/classes/RenderingServer.xml:3198
+#: doc/classes/RenderingServer.xml:3194
msgid "Use [Transform] to store MultiMesh transform."
msgstr ""
-#: doc/classes/RenderingServer.xml:3201
+#: doc/classes/RenderingServer.xml:3197
msgid "Is a directional (sun) light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3204
+#: doc/classes/RenderingServer.xml:3200
msgid "Is an omni light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3207
+#: doc/classes/RenderingServer.xml:3203
msgid "Is a spot light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3210
+#: doc/classes/RenderingServer.xml:3206
msgid "The light's energy."
msgstr ""
-#: doc/classes/RenderingServer.xml:3215
+#: doc/classes/RenderingServer.xml:3211
msgid "The light's influence on specularity."
msgstr ""
-#: doc/classes/RenderingServer.xml:3218
+#: doc/classes/RenderingServer.xml:3214
msgid "The light's range."
msgstr ""
-#: doc/classes/RenderingServer.xml:3221
+#: doc/classes/RenderingServer.xml:3217
msgid ""
"The size of the light when using spot light or omni light. The angular size "
"of the light when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3224
+#: doc/classes/RenderingServer.xml:3220
msgid "The light's attenuation."
msgstr ""
-#: doc/classes/RenderingServer.xml:3227
+#: doc/classes/RenderingServer.xml:3223
msgid "The spotlight's angle."
msgstr ""
-#: doc/classes/RenderingServer.xml:3230
+#: doc/classes/RenderingServer.xml:3226
msgid "The spotlight's attenuation."
msgstr ""
-#: doc/classes/RenderingServer.xml:3233
+#: doc/classes/RenderingServer.xml:3229
msgid "Max distance that shadows will be rendered."
msgstr ""
-#: doc/classes/RenderingServer.xml:3236
+#: doc/classes/RenderingServer.xml:3232
msgid "Proportion of shadow atlas occupied by the first split."
msgstr ""
-#: doc/classes/RenderingServer.xml:3239
+#: doc/classes/RenderingServer.xml:3235
msgid "Proportion of shadow atlas occupied by the second split."
msgstr ""
-#: doc/classes/RenderingServer.xml:3242
+#: doc/classes/RenderingServer.xml:3238
msgid ""
"Proportion of shadow atlas occupied by the third split. The fourth split "
"occupies the rest."
msgstr ""
-#: doc/classes/RenderingServer.xml:3245
+#: doc/classes/RenderingServer.xml:3241
msgid ""
"Proportion of shadow max distance where the shadow will start to fade out."
msgstr ""
-#: doc/classes/RenderingServer.xml:3248
+#: doc/classes/RenderingServer.xml:3244
msgid ""
"Normal bias used to offset shadow lookup by object normal. Can be used to "
"fix self-shadowing artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3251
+#: doc/classes/RenderingServer.xml:3247
msgid "Bias the shadow lookup to fix self-shadowing artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3257
+#: doc/classes/RenderingServer.xml:3253
msgid ""
"Blurs the edges of the shadow. Can be used to hide pixel artifacts in low "
"resolution shadow maps. A high value can make shadows appear grainy and can "
"cause other unwanted artifacts. Try to keep as near default as possible."
msgstr ""
-#: doc/classes/RenderingServer.xml:3262
+#: doc/classes/RenderingServer.xml:3258
msgid "Represents the size of the [enum LightParam] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3265
+#: doc/classes/RenderingServer.xml:3267
msgid "Use a dual paraboloid shadow map for omni lights."
msgstr ""
-#: doc/classes/RenderingServer.xml:3268
+#: doc/classes/RenderingServer.xml:3270
msgid ""
"Use a cubemap shadow map for omni lights. Slower but better quality than "
"dual paraboloid."
msgstr ""
-#: doc/classes/RenderingServer.xml:3271
+#: doc/classes/RenderingServer.xml:3273
msgid "Use orthogonal shadow projection for directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3274
+#: doc/classes/RenderingServer.xml:3276
msgid "Use 2 splits for shadow projection when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3277
+#: doc/classes/RenderingServer.xml:3279
msgid "Use 4 splits for shadow projection when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3280
+#: doc/classes/RenderingServer.xml:3282
msgid ""
"Keeps shadows stable as camera moves but has lower effective resolution."
msgstr ""
-#: doc/classes/RenderingServer.xml:3283
+#: doc/classes/RenderingServer.xml:3285
msgid ""
"Optimize use of shadow maps, increasing the effective resolution. But may "
"result in shadows moving or flickering slightly."
msgstr ""
-#: doc/classes/RenderingServer.xml:3286
+#: doc/classes/RenderingServer.xml:3288
msgid "Reflection probe will update reflections once and then stop."
msgstr ""
-#: doc/classes/RenderingServer.xml:3289
+#: doc/classes/RenderingServer.xml:3291
msgid ""
"Reflection probe will update each frame. This mode is necessary to capture "
"moving objects."
msgstr ""
-#: doc/classes/RenderingServer.xml:3302
+#: doc/classes/RenderingServer.xml:3310
msgid "Draw particles in the order that they appear in the particles array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3305
+#: doc/classes/RenderingServer.xml:3313
msgid "Sort particles based on their lifetime."
msgstr ""
-#: doc/classes/RenderingServer.xml:3308
+#: doc/classes/RenderingServer.xml:3316
msgid "Sort particles based on their distance to the camera."
msgstr ""
-#: doc/classes/RenderingServer.xml:3311
+#: doc/classes/RenderingServer.xml:3319
msgid "Do not update the viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:3314
+#: doc/classes/RenderingServer.xml:3322
msgid "Update the viewport once then set to disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3317
+#: doc/classes/RenderingServer.xml:3325
msgid "Update the viewport whenever it is visible."
msgstr ""
-#: doc/classes/RenderingServer.xml:3322
+#: doc/classes/RenderingServer.xml:3330
msgid "Always update the viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:3325
+#: doc/classes/RenderingServer.xml:3333
msgid "The viewport is always cleared before drawing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3328
+#: doc/classes/RenderingServer.xml:3336
msgid "The viewport is never cleared before drawing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3331
+#: doc/classes/RenderingServer.xml:3339
msgid ""
"The viewport is cleared once, then the clear mode is set to [constant "
"VIEWPORT_CLEAR_NEVER]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3334
+#: doc/classes/RenderingServer.xml:3342
msgid "Multisample antialiasing is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3337
+#: doc/classes/RenderingServer.xml:3345
msgid "Multisample antialiasing uses 2 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3340
+#: doc/classes/RenderingServer.xml:3348
msgid "Multisample antialiasing uses 4 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3343
+#: doc/classes/RenderingServer.xml:3351
msgid "Multisample antialiasing uses 8 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3346
+#: doc/classes/RenderingServer.xml:3354
msgid "Multisample antialiasing uses 16 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3357
+#: doc/classes/RenderingServer.xml:3365
msgid "Number of objects drawn in a single frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3360
+#: doc/classes/RenderingServer.xml:3368
msgid "Number of vertices drawn in a single frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3363
+#: doc/classes/RenderingServer.xml:3371
msgid "Number of material changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3366
+#: doc/classes/RenderingServer.xml:3374
msgid "Number of shader changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3369
+#: doc/classes/RenderingServer.xml:3377
msgid "Number of surface changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3372
+#: doc/classes/RenderingServer.xml:3380
msgid "Number of draw calls during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3375
+#: doc/classes/RenderingServer.xml:3383
msgid "Represents the size of the [enum ViewportRenderInfo] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3378
+#: doc/classes/RenderingServer.xml:3386
msgid "Debug draw is disabled. Default setting."
msgstr ""
-#: doc/classes/RenderingServer.xml:3381 doc/classes/Viewport.xml:348
+#: doc/classes/RenderingServer.xml:3389 doc/classes/Viewport.xml:348
msgid "Objects are displayed without light information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3384
+#: doc/classes/RenderingServer.xml:3392
msgid "Objects are displayed with only light information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3387 doc/classes/Viewport.xml:353
+#: doc/classes/RenderingServer.xml:3395 doc/classes/Viewport.xml:353
msgid ""
"Objects are displayed semi-transparent with additive blending so you can see "
"where they are drawing over top of one another. A higher overdraw means you "
@@ -43428,41 +44686,41 @@ msgid ""
"others."
msgstr ""
-#: doc/classes/RenderingServer.xml:3390
+#: doc/classes/RenderingServer.xml:3398
msgid "Debug draw draws objects in wireframe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3393
+#: doc/classes/RenderingServer.xml:3401
msgid ""
"Normal buffer is drawn instead of regular scene so you can see the per-pixel "
"normals that will be used by post-processing effects."
msgstr ""
-#: doc/classes/RenderingServer.xml:3396 doc/classes/Viewport.xml:361
+#: doc/classes/RenderingServer.xml:3404 doc/classes/Viewport.xml:361
msgid "Objects are displayed with only the albedo value from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3399 doc/classes/Viewport.xml:364
+#: doc/classes/RenderingServer.xml:3407 doc/classes/Viewport.xml:364
msgid "Objects are displayed with only the lighting value from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3402 doc/classes/Viewport.xml:367
+#: doc/classes/RenderingServer.xml:3410 doc/classes/Viewport.xml:367
msgid "Objects are displayed with only the emission color from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3405 doc/classes/Viewport.xml:370
+#: doc/classes/RenderingServer.xml:3413 doc/classes/Viewport.xml:370
msgid ""
"Draws the shadow atlas that stores shadows from [OmniLight3D]s and "
"[SpotLight3D]s in the upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3408 doc/classes/Viewport.xml:373
+#: doc/classes/RenderingServer.xml:3416 doc/classes/Viewport.xml:373
msgid ""
"Draws the shadow atlas that stores shadows from [DirectionalLight3D]s in the "
"upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3413
+#: doc/classes/RenderingServer.xml:3421
msgid ""
"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 "
@@ -43470,21 +44728,14 @@ msgid ""
"your [WorldEnvironment]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3416 doc/classes/Viewport.xml:381
-msgid ""
-"Draws the roughness limiter post process over the Viewport so you can see "
-"where it has an effect. It must be enabled in [member ProjectSettings."
-"rendering/quality/screen_filters/screen_space_roughness_limiter] to work."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:3419
+#: doc/classes/RenderingServer.xml:3424
msgid ""
"Colors each PSSM split for the [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."
msgstr ""
-#: doc/classes/RenderingServer.xml:3424
+#: doc/classes/RenderingServer.xml:3435
msgid ""
"Uses high quality importance sampling to process the radiance map. In "
"general, this results in much higher quality than [constant Sky."
@@ -43495,7 +44746,7 @@ msgid ""
"ggx_samples]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3427
+#: doc/classes/RenderingServer.xml:3438
msgid ""
"Uses the fast filtering algorithm to process the radiance map. In general "
"this results in lower quality, but substantially faster run times.\n"
@@ -43503,347 +44754,347 @@ msgid ""
"[member Sky.radiance_size] must be set to [constant Sky.RADIANCE_SIZE_256]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3431
+#: doc/classes/RenderingServer.xml:3442
msgid "Use the clear color as background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3434
+#: doc/classes/RenderingServer.xml:3445
msgid "Use a specified color as the background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3437
+#: doc/classes/RenderingServer.xml:3448
msgid "Use a sky resource for the background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3440
+#: doc/classes/RenderingServer.xml:3451
msgid ""
"Use a specified canvas layer as the background. This can be useful for "
"instantiating a 2D scene in a 3D world."
msgstr ""
-#: doc/classes/RenderingServer.xml:3443
+#: doc/classes/RenderingServer.xml:3454
msgid ""
"Do not clear the background, use whatever was rendered last frame as the "
"background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3449
+#: doc/classes/RenderingServer.xml:3460
msgid "Represents the size of the [enum EnvironmentBG] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3488
+#: doc/classes/RenderingServer.xml:3499
msgid "Output color as they came in."
msgstr ""
-#: doc/classes/RenderingServer.xml:3491
+#: doc/classes/RenderingServer.xml:3502
msgid "Use the Reinhard tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3494
+#: doc/classes/RenderingServer.xml:3505
msgid "Use the filmic tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3497
+#: doc/classes/RenderingServer.xml:3508
msgid "Use the ACES tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3508
+#: doc/classes/RenderingServer.xml:3519
msgid "Disables the blur set for SSAO. Will make SSAO look noisier."
msgstr ""
-#: doc/classes/RenderingServer.xml:3511
+#: doc/classes/RenderingServer.xml:3522
msgid "Perform a 1x1 blur on the SSAO output."
msgstr ""
-#: doc/classes/RenderingServer.xml:3514
+#: doc/classes/RenderingServer.xml:3525
msgid "Performs a 2x2 blur on the SSAO output."
msgstr ""
-#: doc/classes/RenderingServer.xml:3517
+#: doc/classes/RenderingServer.xml:3528
msgid "Performs a 3x3 blur on the SSAO output. Use this for smoothest SSAO."
msgstr ""
-#: doc/classes/RenderingServer.xml:3520
+#: doc/classes/RenderingServer.xml:3531
msgid "Lowest quality of screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3523
+#: doc/classes/RenderingServer.xml:3534
msgid "Medium quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3526
+#: doc/classes/RenderingServer.xml:3537
msgid "High quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3529
+#: doc/classes/RenderingServer.xml:3540
msgid "Highest quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3540
+#: doc/classes/RenderingServer.xml:3551
msgid ""
"Lowest quality DOF blur. This is the fastest setting, but you may be able to "
"see filtering artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3543
+#: doc/classes/RenderingServer.xml:3554
msgid "Low quality DOF blur."
msgstr ""
-#: doc/classes/RenderingServer.xml:3546
+#: doc/classes/RenderingServer.xml:3557
msgid "Medium quality DOF blur."
msgstr ""
-#: doc/classes/RenderingServer.xml:3549
+#: doc/classes/RenderingServer.xml:3560
msgid ""
"Highest quality DOF blur. Results in the smoothest looking blur by taking "
"the most samples, but is also significantly slower."
msgstr ""
-#: doc/classes/RenderingServer.xml:3552
+#: doc/classes/RenderingServer.xml:3563
msgid ""
"Calculate the DOF blur using a box filter. The fastest option, but results "
"in obvious lines in blur pattern."
msgstr ""
-#: doc/classes/RenderingServer.xml:3555
+#: doc/classes/RenderingServer.xml:3566
msgid "Calculates DOF blur using a hexagon shaped filter."
msgstr ""
-#: doc/classes/RenderingServer.xml:3558
+#: doc/classes/RenderingServer.xml:3569
msgid ""
"Calculates DOF blur using a circle shaped filter. Best quality and most "
"realistic, but slowest. Use only for areas where a lot of performance can be "
"dedicated to post-processing (e.g. cutscenes)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3573
+#: doc/classes/RenderingServer.xml:3584
msgid "Do not use a debug mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:3576
+#: doc/classes/RenderingServer.xml:3587
msgid "Draw all objects as wireframe models."
msgstr ""
-#: doc/classes/RenderingServer.xml:3579
+#: doc/classes/RenderingServer.xml:3590
msgid ""
"Draw all objects in a way that displays how much overdraw is occurring. "
"Overdraw occurs when a section of pixels is drawn and shaded and then "
"another object covers it up. To optimize a scene, you should reduce overdraw."
msgstr ""
-#: doc/classes/RenderingServer.xml:3582
+#: doc/classes/RenderingServer.xml:3593
msgid ""
"Draw all objects without shading. Equivalent to setting all objects shaders "
"to [code]unshaded[/code]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3585
+#: doc/classes/RenderingServer.xml:3596
msgid "The instance does not have a type."
msgstr ""
-#: doc/classes/RenderingServer.xml:3588
+#: doc/classes/RenderingServer.xml:3599
msgid "The instance is a mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:3591
+#: doc/classes/RenderingServer.xml:3602
msgid "The instance is a multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:3594
+#: doc/classes/RenderingServer.xml:3605
msgid "The instance is an immediate geometry."
msgstr ""
-#: doc/classes/RenderingServer.xml:3597
+#: doc/classes/RenderingServer.xml:3608
msgid "The instance is a particle emitter."
msgstr ""
-#: doc/classes/RenderingServer.xml:3600
+#: doc/classes/RenderingServer.xml:3611
msgid "The instance is a light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3603
+#: doc/classes/RenderingServer.xml:3614
msgid "The instance is a reflection probe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3606
+#: doc/classes/RenderingServer.xml:3617
msgid "The instance is a decal."
msgstr ""
-#: doc/classes/RenderingServer.xml:3609
+#: doc/classes/RenderingServer.xml:3620
msgid "The instance is a GI probe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3612
+#: doc/classes/RenderingServer.xml:3623
msgid "The instance is a lightmap."
msgstr ""
-#: doc/classes/RenderingServer.xml:3615
+#: doc/classes/RenderingServer.xml:3626
msgid "Represents the size of the [enum InstanceType] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3618
+#: doc/classes/RenderingServer.xml:3629
msgid ""
"A combination of the flags of geometry instances (mesh, multimesh, immediate "
"and particles)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3621
+#: doc/classes/RenderingServer.xml:3632
msgid "Allows the instance to be used in baked lighting."
msgstr ""
-#: doc/classes/RenderingServer.xml:3624
+#: doc/classes/RenderingServer.xml:3635
msgid "Allows the instance to be used with dynamic global illumination."
msgstr ""
-#: doc/classes/RenderingServer.xml:3627
+#: doc/classes/RenderingServer.xml:3638
msgid "When set, manually requests to draw geometry on next frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3630
+#: doc/classes/RenderingServer.xml:3641
msgid "Represents the size of the [enum InstanceFlags] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3633
+#: doc/classes/RenderingServer.xml:3644
msgid "Disable shadows from this instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:3636
+#: doc/classes/RenderingServer.xml:3647
msgid "Cast shadows from this instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:3639
+#: doc/classes/RenderingServer.xml:3650
msgid ""
"Disable backface culling when rendering the shadow of the object. This is "
"slightly slower but may result in more correct shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3642
+#: doc/classes/RenderingServer.xml:3653
msgid ""
"Only render the shadows from the object. The object itself will not be drawn."
msgstr ""
-#: doc/classes/RenderingServer.xml:3645
+#: doc/classes/RenderingServer.xml:3656
msgid "The nine patch gets stretched where needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3648
+#: doc/classes/RenderingServer.xml:3659
msgid "The nine patch gets filled with tiles where needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3651
+#: doc/classes/RenderingServer.xml:3662
msgid ""
"The nine patch gets filled with tiles where needed and stretches them a bit "
"if needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3654
+#: doc/classes/RenderingServer.xml:3665
msgid "Uses the default filter mode for this [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3666 doc/classes/Viewport.xml:399
+#: doc/classes/RenderingServer.xml:3677 doc/classes/Viewport.xml:402
msgid ""
"The texture filter blends between the nearest 4 pixels and between the "
"nearest 2 mipmaps."
msgstr ""
-#: doc/classes/RenderingServer.xml:3675
+#: doc/classes/RenderingServer.xml:3686
msgid "Max value for [enum CanvasItemTextureFilter] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3678
+#: doc/classes/RenderingServer.xml:3689
msgid "Uses the default repeat mode for this [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3681 doc/classes/Viewport.xml:405
+#: doc/classes/RenderingServer.xml:3692 doc/classes/Viewport.xml:408
msgid ""
"Disables textures repeating. Instead, when reading UVs outside the 0-1 "
"range, the value will be clamped to the edge of the texture, resulting in a "
"stretched out look at the borders of the texture."
msgstr ""
-#: doc/classes/RenderingServer.xml:3687 doc/classes/Viewport.xml:411
+#: doc/classes/RenderingServer.xml:3698 doc/classes/Viewport.xml:414
msgid ""
"Flip the texture when repeating so that the edge lines up instead of "
"abruptly changing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3690
+#: doc/classes/RenderingServer.xml:3701
msgid "Max value for [enum CanvasItemTextureRepeat] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3693
+#: doc/classes/RenderingServer.xml:3704
msgid "Adds light color additive to the canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:3696
+#: doc/classes/RenderingServer.xml:3707
msgid "Adds light color subtractive to the canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:3699
+#: doc/classes/RenderingServer.xml:3710
msgid "The light adds color depending on transparency."
msgstr ""
-#: doc/classes/RenderingServer.xml:3702
+#: doc/classes/RenderingServer.xml:3713
msgid "The light adds color depending on mask."
msgstr ""
-#: doc/classes/RenderingServer.xml:3705
+#: doc/classes/RenderingServer.xml:3716
msgid "Do not apply a filter to canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3708
+#: doc/classes/RenderingServer.xml:3719
msgid "Use PCF5 filtering to filter canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3711
+#: doc/classes/RenderingServer.xml:3722
msgid "Use PCF13 filtering to filter canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3714
+#: doc/classes/RenderingServer.xml:3725
msgid "Max value of the [enum CanvasLightShadowFilter] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3717
+#: doc/classes/RenderingServer.xml:3728
msgid "Culling of the canvas occluder is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3720
+#: doc/classes/RenderingServer.xml:3731
msgid "Culling of the canvas occluder is clockwise."
msgstr ""
-#: doc/classes/RenderingServer.xml:3723
+#: doc/classes/RenderingServer.xml:3734
msgid "Culling of the canvas occluder is counterclockwise."
msgstr ""
-#: doc/classes/RenderingServer.xml:3784
+#: doc/classes/RenderingServer.xml:3795
msgid "The amount of objects in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3787
+#: doc/classes/RenderingServer.xml:3798
msgid "The amount of vertices in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3790
+#: doc/classes/RenderingServer.xml:3801
msgid "The amount of modified materials in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3793
+#: doc/classes/RenderingServer.xml:3804
msgid "The amount of shader rebinds in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3796
+#: doc/classes/RenderingServer.xml:3807
msgid "The amount of surface changes in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3799
+#: doc/classes/RenderingServer.xml:3810
msgid "The amount of draw calls in frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3814
+#: doc/classes/RenderingServer.xml:3825
msgid "Hardware supports shaders. This enum is currently unused in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:3817
+#: doc/classes/RenderingServer.xml:3828
msgid ""
"Hardware supports multithreading. This enum is currently unused in Godot 3.x."
msgstr ""
@@ -43855,13 +45106,13 @@ msgstr ""
#: doc/classes/Resource.xml:7
msgid ""
"Resource is the base class for all Godot-specific resource types, serving "
-"primarily as data containers. They are reference counted and freed when no "
-"longer in use. They are also cached once loaded from disk, so that any "
-"further attempts to load a resource from a given path will return the same "
-"reference (all this in contrast to a [Node], which is not reference counted "
-"and can be instanced from disk as many times as desired). Resources can be "
-"saved externally on disk or bundled into another object, such as a [Node] or "
-"another resource."
+"primarily as data containers. Unlike [Object]s, they are reference-counted "
+"and freed when no longer in use. They are also cached once loaded from disk, "
+"so that any further attempts to load a resource from a given path will "
+"return the same reference (all this in contrast to a [Node], which is not "
+"reference-counted and can be instanced from disk as many times as desired). "
+"Resources can be saved externally on disk or bundled into another object, "
+"such as a [Node] or another resource."
msgstr ""
#: doc/classes/Resource.xml:10
@@ -43870,34 +45121,38 @@ msgid ""
"resources.html"
msgstr ""
-#: doc/classes/Resource.xml:17
+#: doc/classes/Resource.xml:18
msgid ""
"Virtual function which can be overridden to customize the behavior value of "
"[method setup_local_to_scene]."
msgstr ""
-#: doc/classes/Resource.xml:26
+#: doc/classes/Resource.xml:27
msgid ""
"Duplicates the resource, returning a new resource. By default, sub-resources "
-"are shared between resource copies for efficiency, this can be changed by "
-"passing [code]true[/code] to the [code]subresources[/code] argument."
+"are shared between resource copies for efficiency. This can be changed by "
+"passing [code]true[/code] to the [code]subresources[/code] argument which "
+"will copy the subresources.\n"
+"[b]Note:[/b] If [code]subresources[/code] is [code]true[/code], this method "
+"will only perform a shallow copy. Nested resources within subresources will "
+"not be duplicated and will still be shared."
msgstr ""
-#: doc/classes/Resource.xml:33
+#: doc/classes/Resource.xml:35
msgid ""
"If [member resource_local_to_scene] is enabled and the resource was loaded "
"from a [PackedScene] instantiation, returns the local scene where this "
"resource's unique copy is in use. Otherwise, returns [code]null[/code]."
msgstr ""
-#: doc/classes/Resource.xml:40
+#: doc/classes/Resource.xml:42
msgid ""
"Returns the RID of the resource (or an empty RID). Many resources (such as "
"[Texture2D], [Mesh], etc) are high-level abstractions of resources stored in "
"a server, so this function will return the original RID."
msgstr ""
-#: doc/classes/Resource.xml:47
+#: doc/classes/Resource.xml:49
msgid ""
"This method is called when a resource with [member resource_local_to_scene] "
"enabled is loaded from a [PackedScene] instantiation. Its behavior can be "
@@ -43907,7 +45162,7 @@ msgid ""
"local viewport."
msgstr ""
-#: doc/classes/Resource.xml:57
+#: doc/classes/Resource.xml:59
msgid ""
"Sets the path of the resource, potentially overriding an existing cache "
"entry for this path. This differs from setting [member resource_path], as "
@@ -43915,25 +45170,25 @@ msgid ""
"given path."
msgstr ""
-#: doc/classes/Resource.xml:63
+#: doc/classes/Resource.xml:65
msgid ""
"If [code]true[/code], the resource will be made unique in each instance of "
"its local scene. It can thus be modified in a scene instance without "
"impacting other instances of that same scene."
msgstr ""
-#: doc/classes/Resource.xml:66
+#: doc/classes/Resource.xml:68
msgid "The name of the resource. This is an optional identifier."
msgstr ""
-#: doc/classes/Resource.xml:69
+#: doc/classes/Resource.xml:71
msgid ""
"The path to the resource. In case it has its own file, it will return its "
"filepath. If it's tied to the scene, it will return the scene's path, "
"followed by the resource's index."
msgstr ""
-#: doc/classes/Resource.xml:75
+#: doc/classes/Resource.xml:77
msgid "Emitted whenever the resource changes."
msgstr ""
@@ -44752,11 +46007,11 @@ msgid ""
"global coordinate system, but is centered at the object's origin."
msgstr ""
-#: doc/classes/RigidBody2D.xml:87
+#: doc/classes/RigidBody2D.xml:87 doc/classes/RigidBody3D.xml:99
msgid ""
-"Returns a list of the bodies colliding with this one. Use [member "
-"contacts_reported] to set the maximum number reported. You must also set "
-"[member contact_monitor] to [code]true[/code].\n"
+"Returns a list of the bodies colliding with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
"For performance, list of collisions is updated once per frame and before the "
"physics step. Consider using signals instead."
@@ -44793,7 +46048,7 @@ msgstr ""
msgid "The body's total applied torque."
msgstr ""
-#: doc/classes/RigidBody2D.xml:130 doc/classes/RigidBody3D.xml:150
+#: doc/classes/RigidBody2D.xml:130 doc/classes/RigidBody3D.xml:157
msgid ""
"If [code]true[/code], the body can enter sleep mode when there is no "
"movement. See [member sleeping]."
@@ -44805,11 +46060,17 @@ msgid ""
"another RigidBody2D. See also [member contacts_reported]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:136
-msgid "The maximum number of contacts to report."
+#: doc/classes/RigidBody2D.xml:136 doc/classes/RigidBody3D.xml:163
+msgid ""
+"The maximum number of contacts that will be recorded. Requires [member "
+"contact_monitor] to be set to [code]true[/code].\n"
+"[b]Note:[/b] The number of contacts is different from the number of "
+"collisions. Collisions between parallel edges will result in two contacts "
+"(one at each end), and collisions between parallel faces will result in four "
+"contacts (one at each corner)."
msgstr ""
-#: doc/classes/RigidBody2D.xml:139
+#: doc/classes/RigidBody2D.xml:140
msgid ""
"Continuous collision detection mode.\n"
"Continuous collision detection tries to predict where a moving body will "
@@ -44819,21 +46080,21 @@ msgid ""
"methods are available. See [enum CCDMode] for details."
msgstr ""
-#: doc/classes/RigidBody2D.xml:143
+#: doc/classes/RigidBody2D.xml:144
msgid ""
"If [code]true[/code], internal force integration is disabled for this body. "
"Aside from collision response, the body will only move as determined by the "
"[method _integrate_forces] function."
msgstr ""
-#: doc/classes/RigidBody2D.xml:146
+#: doc/classes/RigidBody2D.xml:147
msgid ""
"Multiplies the gravity applied to the body. The body's gravity is calculated "
"from the [b]Default Gravity[/b] value in [b]Project > Project Settings > "
"Physics > 2d[/b] and/or any additional gravity vector applied by [Area2D]s."
msgstr ""
-#: doc/classes/RigidBody2D.xml:149
+#: doc/classes/RigidBody2D.xml:150
msgid ""
"The body's moment of inertia. This is like mass, but for rotation: it "
"determines how much torque it takes to rotate the body. The moment of "
@@ -44842,18 +46103,18 @@ msgid ""
"automatically computing it."
msgstr ""
-#: doc/classes/RigidBody2D.xml:152
+#: doc/classes/RigidBody2D.xml:153
msgid ""
"Damps the body's [member linear_velocity]. If [code]-1[/code], the body will "
"use the [b]Default Linear Damp[/b] in [b]Project > Project Settings > "
"Physics > 2d[/b]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:161
+#: doc/classes/RigidBody2D.xml:162
msgid "The body's mode. See [enum Mode] for possible values."
msgstr ""
-#: doc/classes/RigidBody2D.xml:164 doc/classes/RigidBody3D.xml:181
+#: doc/classes/RigidBody2D.xml:165 doc/classes/RigidBody3D.xml:189
#: doc/classes/StaticBody2D.xml:22 doc/classes/StaticBody3D.xml:22
msgid ""
"The physics material override for the body.\n"
@@ -44861,50 +46122,50 @@ msgid ""
"other physics material, such as an inherited one."
msgstr ""
-#: doc/classes/RigidBody2D.xml:168 doc/classes/RigidBody3D.xml:185
+#: doc/classes/RigidBody2D.xml:169 doc/classes/RigidBody3D.xml:193
msgid ""
"If [code]true[/code], the body will not move and will not calculate forces "
"until woken up by another body through, for example, a collision, or by "
"using the [method apply_impulse] or [method add_force] methods."
msgstr ""
-#: doc/classes/RigidBody2D.xml:171
+#: doc/classes/RigidBody2D.xml:172
msgid ""
"The body's weight based on its mass and the [b]Default Gravity[/b] value in "
"[b]Project > Project Settings > Physics > 2d[/b]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:179
+#: doc/classes/RigidBody2D.xml:180 doc/classes/RigidBody3D.xml:204
msgid ""
-"Emitted when a body enters into contact with this one. [member "
-"contact_monitor] must be [code]true[/code] and [member contacts_reported] "
-"greater than [code]0[/code]."
+"Emitted when a body enters into contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:186
+#: doc/classes/RigidBody2D.xml:187
msgid ""
-"Emitted when a body exits contact with this one. [member contact_monitor] "
-"must be [code]true[/code] and [member contacts_reported] greater than "
-"[code]0[/code]."
+"Emitted when a body exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:199
+#: doc/classes/RigidBody2D.xml:200
msgid ""
"Emitted when a body enters into contact with this one. Reports colliding "
"shape information. See [CollisionObject2D] for shape index information. "
-"[member contact_monitor] must be [code]true[/code] and [member "
-"contacts_reported] greater than [code]0[/code]."
+"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:212
+#: doc/classes/RigidBody2D.xml:213
msgid ""
"Emitted when a body shape exits contact with this one. Reports colliding "
"shape information. See [CollisionObject2D] for shape index information. "
-"[member contact_monitor] must be [code]true[/code] and [member "
-"contacts_reported] greater than [code]0[/code]."
+"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:217 doc/classes/RigidBody3D.xml:236
+#: doc/classes/RigidBody2D.xml:218 doc/classes/RigidBody3D.xml:244
msgid ""
"Emitted when the physics engine changes the body's sleeping state.\n"
"[b]Note:[/b] Changing the value [member sleeping] will not trigger this "
@@ -44912,41 +46173,41 @@ msgid ""
"engine or [code]emit_signal(\"sleeping_state_changed\")[/code] is used."
msgstr ""
-#: doc/classes/RigidBody2D.xml:224
+#: doc/classes/RigidBody2D.xml:225
msgid ""
"Rigid mode. The body behaves as a physical object. It collides with other "
"bodies and responds to forces applied to it. This is the default mode."
msgstr ""
-#: doc/classes/RigidBody2D.xml:227
+#: doc/classes/RigidBody2D.xml:228
msgid "Static mode. The body behaves like a [StaticBody2D] and does not move."
msgstr ""
-#: doc/classes/RigidBody2D.xml:230
+#: doc/classes/RigidBody2D.xml:231
msgid ""
"Character mode. Similar to [constant MODE_RIGID], but the body can not "
"rotate."
msgstr ""
-#: doc/classes/RigidBody2D.xml:233
+#: doc/classes/RigidBody2D.xml:234
msgid ""
"Kinematic mode. The body behaves like a [KinematicBody2D], and must be moved "
"by code."
msgstr ""
-#: doc/classes/RigidBody2D.xml:236
+#: doc/classes/RigidBody2D.xml:237
msgid ""
"Continuous collision detection disabled. This is the fastest way to detect "
"body collisions, but can miss small, fast-moving objects."
msgstr ""
-#: doc/classes/RigidBody2D.xml:239
+#: doc/classes/RigidBody2D.xml:240
msgid ""
"Continuous collision detection enabled using raycasting. This is faster than "
"shapecasting but less precise."
msgstr ""
-#: doc/classes/RigidBody2D.xml:242
+#: doc/classes/RigidBody2D.xml:243
msgid ""
"Continuous collision detection enabled using shapecasting. This is the "
"slowest CCD method and the most precise."
@@ -45032,42 +46293,31 @@ msgid ""
"locked."
msgstr ""
-#: doc/classes/RigidBody3D.xml:99
+#: doc/classes/RigidBody3D.xml:107
msgid ""
-"Returns a list of the bodies colliding with this one. By default, number of "
-"max contacts reported is at 0, see the [member contacts_reported] property "
-"to increase it.\n"
-"[b]Note:[/b] The result of this test is not immediate after moving objects. "
-"For performance, list of collisions is updated once per frame and before the "
-"physics step. Consider using signals instead."
+"Returns the inverse inertia tensor basis. This is used to calculate the "
+"angular acceleration resulting from a torque applied to the [RigidBody3D]."
msgstr ""
-#: doc/classes/RigidBody3D.xml:111
+#: doc/classes/RigidBody3D.xml:118
msgid "Locks the specified linear or rotational axis."
msgstr ""
-#: doc/classes/RigidBody3D.xml:126
+#: doc/classes/RigidBody3D.xml:133
msgid "Damps RigidBody3D's rotational forces."
msgstr ""
-#: doc/classes/RigidBody3D.xml:129
+#: doc/classes/RigidBody3D.xml:136
msgid "RigidBody3D's rotational velocity."
msgstr ""
-#: doc/classes/RigidBody3D.xml:153
+#: doc/classes/RigidBody3D.xml:160
msgid ""
"If [code]true[/code], the RigidBody3D will emit signals when it collides "
-"with another RigidBody3D."
-msgstr ""
-
-#: doc/classes/RigidBody3D.xml:156
-msgid ""
-"The maximum contacts to report. Bodies can keep a log of the contacts with "
-"other bodies, this is enabled by setting the maximum amount of contacts "
-"reported to a number greater than 0."
+"with another RigidBody3D. See also [member contacts_reported]."
msgstr ""
-#: doc/classes/RigidBody3D.xml:159
+#: doc/classes/RigidBody3D.xml:167
msgid ""
"If [code]true[/code], continuous collision detection is used.\n"
"Continuous collision detection tries to predict where a moving body will "
@@ -45077,7 +46327,7 @@ msgid ""
"faster to compute, but can miss small, fast-moving objects."
msgstr ""
-#: doc/classes/RigidBody3D.xml:163
+#: doc/classes/RigidBody3D.xml:171
msgid ""
"If [code]true[/code], internal force integration will be disabled (like "
"gravity or air friction) for this body. Other than collision response, the "
@@ -45085,7 +46335,7 @@ msgid ""
"function, if defined."
msgstr ""
-#: doc/classes/RigidBody3D.xml:166
+#: doc/classes/RigidBody3D.xml:174
msgid ""
"This is multiplied by the global 3D gravity setting found in [b]Project > "
"Project Settings > Physics > 3d[/b] to produce RigidBody3D's gravity. For "
@@ -45093,14 +46343,14 @@ msgid ""
"and 0.5 will apply half gravity to this object."
msgstr ""
-#: doc/classes/RigidBody3D.xml:169
+#: doc/classes/RigidBody3D.xml:177
msgid ""
"The body's linear damp. Cannot be less than -1.0. If this value is different "
"from -1.0, any linear damp derived from the world or areas will be "
"overridden."
msgstr ""
-#: doc/classes/RigidBody3D.xml:172
+#: doc/classes/RigidBody3D.xml:180
msgid ""
"The body's linear velocity. Can be used sporadically, but [b]don't set this "
"every frame[/b], because physics may run in another thread and runs at a "
@@ -45108,60 +46358,57 @@ msgid ""
"for precise control of the body state."
msgstr ""
-#: doc/classes/RigidBody3D.xml:178
+#: doc/classes/RigidBody3D.xml:186
msgid "The body mode. See [enum Mode] for possible values."
msgstr ""
-#: doc/classes/RigidBody3D.xml:196
+#: doc/classes/RigidBody3D.xml:211
msgid ""
-"Emitted when a body enters into contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work."
+"Emitted when a body shape exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody3D.xml:203
+#: doc/classes/RigidBody3D.xml:224
msgid ""
-"Emitted when a body shape exits contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work."
-msgstr ""
-
-#: doc/classes/RigidBody3D.xml:216
-msgid ""
-"Emitted when a body enters into contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work.\n"
+"Emitted when a body enters into contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"This signal not only receives the body that collided with this one, but also "
"its [RID] ([code]body_id[/code]), the shape index from the colliding body "
"([code]body_shape[/code]), and the shape index from this body "
"([code]local_shape[/code]) the other body collided with."
msgstr ""
-#: doc/classes/RigidBody3D.xml:230
+#: doc/classes/RigidBody3D.xml:238
msgid ""
-"Emitted when a body shape exits contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work.\n"
+"Emitted when a body shape exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"This signal not only receives the body that stopped colliding with this one, "
"but also its [RID] ([code]body_id[/code]), the shape index from the "
"colliding body ([code]body_shape[/code]), and the shape index from this body "
"([code]local_shape[/code]) the other body stopped colliding with."
msgstr ""
-#: doc/classes/RigidBody3D.xml:243
+#: doc/classes/RigidBody3D.xml:251
msgid ""
"Rigid body mode. This is the \"natural\" state of a rigid body. It is "
"affected by forces, and can move, rotate, and be affected by user code."
msgstr ""
-#: doc/classes/RigidBody3D.xml:246
+#: doc/classes/RigidBody3D.xml:254
msgid ""
"Static mode. The body behaves like a [StaticBody3D], and can only move by "
"user code."
msgstr ""
-#: doc/classes/RigidBody3D.xml:249
+#: doc/classes/RigidBody3D.xml:257
msgid ""
"Character body mode. This behaves like a rigid body, but can not rotate."
msgstr ""
-#: doc/classes/RigidBody3D.xml:252
+#: doc/classes/RigidBody3D.xml:260
msgid ""
"Kinematic body mode. The body behaves like a [KinematicBody3D], and can only "
"move by user code."
@@ -45668,7 +46915,7 @@ msgstr ""
msgid "The time remaining."
msgstr ""
-#: doc/classes/SceneTreeTimer.xml:28 doc/classes/Timer.xml:62
+#: doc/classes/SceneTreeTimer.xml:28 doc/classes/Timer.xml:63
msgid "Emitted when the timer reaches 0."
msgstr ""
@@ -45791,27 +47038,27 @@ msgid ""
"the singleton using [method EditorInterface.get_script_editor]."
msgstr ""
-#: doc/classes/ScriptEditor.xml:40
+#: doc/classes/ScriptEditor.xml:46
msgid "Returns a [Script] that is currently active in editor."
msgstr ""
-#: doc/classes/ScriptEditor.xml:57
+#: doc/classes/ScriptEditor.xml:69
msgid ""
"Returns an array with all [Script] objects which are currently open in "
"editor."
msgstr ""
-#: doc/classes/ScriptEditor.xml:66
+#: doc/classes/ScriptEditor.xml:78
msgid "Goes to the specified line in the current script."
msgstr ""
-#: doc/classes/ScriptEditor.xml:85
+#: doc/classes/ScriptEditor.xml:113
msgid ""
"Emitted when user changed active script. Argument is a freshly activated "
"[Script]."
msgstr ""
-#: doc/classes/ScriptEditor.xml:92
+#: doc/classes/ScriptEditor.xml:120
msgid ""
"Emitted when editor is about to close the active script. Argument is a "
"[Script] that is going to be closed."
@@ -45873,7 +47120,7 @@ msgid ""
"visible."
msgstr ""
-#: doc/classes/ScrollContainer.xml:37 doc/classes/TextEdit.xml:453
+#: doc/classes/ScrollContainer.xml:37 doc/classes/TextEdit.xml:407
msgid "The current horizontal scroll value."
msgstr ""
@@ -45881,7 +47128,7 @@ msgstr ""
msgid "If [code]true[/code], enables horizontal scrolling."
msgstr ""
-#: doc/classes/ScrollContainer.xml:43 doc/classes/TextEdit.xml:456
+#: doc/classes/ScrollContainer.xml:43 doc/classes/TextEdit.xml:410
msgid "The current vertical scroll value."
msgstr ""
@@ -46400,7 +47647,7 @@ msgstr ""
msgid ""
"Sets the global pose transform, [code]pose[/code], for the bone at "
"[code]bone_idx[/code].\n"
-"[code]amount[/code] is the interpolation strengh that will be used when "
+"[code]amount[/code] is the interpolation strength that will be used when "
"applying the pose, and [code]persistent[/code] determines if the applied "
"pose will remain.\n"
"[b]Note[/b]: The pose transform needs to be in bone space. Use [method "
@@ -46417,7 +47664,7 @@ msgstr ""
#: doc/classes/Skeleton3D.xml:266
msgid ""
-"Returns the pose transform for bone [code]bone_idx[/code].\n"
+"Sets the pose transform for bone [code]bone_idx[/code].\n"
"[b]Note[/b]: The pose transform needs to be in bone space. Use [method "
"world_transform_to_bone_transform] to convert a world transform, like one "
"you can get from a [Node3D], to bone space."
@@ -46510,6 +47757,16 @@ msgstr ""
#: doc/classes/Sky.xml:52
msgid ""
+"Automatically selects the appropriate process mode based on your sky shader. "
+"If your shader uses [code]TIME[/code] or [code]POSITION[/code], this will "
+"use [constant PROCESS_MODE_REALTIME]. If your shader uses any of the "
+"[code]LIGHT_*[/code] variables or any custom uniforms, this uses [constant "
+"PROCESS_MODE_INCREMENTAL]. Otherwise, this defaults to [constant "
+"PROCESS_MODE_QUALITY]."
+msgstr ""
+
+#: doc/classes/Sky.xml:55
+msgid ""
"Uses high quality importance sampling to process the radiance map. In "
"general, this results in much higher quality than [constant "
"PROCESS_MODE_REALTIME] but takes much longer to generate. This should not be "
@@ -46519,10 +47776,22 @@ msgid ""
"ggx_samples]."
msgstr ""
-#: doc/classes/Sky.xml:55
+#: doc/classes/Sky.xml:58
+msgid ""
+"Uses the same high quality importance sampling to process the radiance map "
+"as [constant PROCESS_MODE_QUALITY], but updates over several frames. The "
+"number of frames is determined by [member ProjectSettings.rendering/quality/"
+"reflections/roughness_layers]. Use this when you need highest quality "
+"radiance maps, but have a sky that updates slowly."
+msgstr ""
+
+#: doc/classes/Sky.xml:61
msgid ""
"Uses the fast filtering algorithm to process the radiance map. In general "
-"this results in lower quality, but substantially faster run times.\n"
+"this results in lower quality, but substantially faster run times. If you "
+"need better quality, but still need to update the sky every frame, consider "
+"turning on [member ProjectSettings.rendering/quality/reflections/"
+"fast_filter_high_quality].\n"
"[b]Note:[/b] The fast filtering algorithm is limited to 256x256 cubemaps, so "
"[member radiance_size] must be set to [constant RADIANCE_SIZE_256]."
msgstr ""
@@ -46859,10 +48128,9 @@ msgid ""
msgstr ""
#: doc/classes/SpringArm3D.xml:35
-msgid ""
-"Returns the proportion between the current arm length (after checking for "
-"collisions) and the [member spring_length]. Ranges from 0 to 1."
-msgstr ""
+#, fuzzy
+msgid "Returns the spring arm's current length."
+msgstr "Возвращает длину вектора."
#: doc/classes/SpringArm3D.xml:44
msgid ""
@@ -47557,7 +48825,7 @@ msgstr ""
msgid ""
"This is the built-in string class (and the one used by GDScript). It "
"supports Unicode and provides all necessary means for string handling. "
-"Strings are reference counted and use a copy-on-write approach, so passing "
+"Strings are reference-counted and use a copy-on-write approach, so passing "
"them around is cheap in resources."
msgstr ""
@@ -47712,26 +48980,32 @@ msgstr ""
#: doc/classes/String.xml:328
msgid ""
"Returns a copy of the string with escaped characters replaced by their "
-"meanings according to the C language standard."
+"meanings. Supported escape sequences are [code]\\'[/code], [code]\\\"[/"
+"code], [code]\\?[/code], [code]\\\\[/code], [code]\\a[/code], [code]\\b[/"
+"code], [code]\\f[/code], [code]\\n[/code], [code]\\r[/code], [code]\\t[/"
+"code], [code]\\v[/code].\n"
+"[b]Note:[/b] Unlike the GDScript parser, this method doesn't support the "
+"[code]\\uXXXX[/code] escape sequence."
msgstr ""
-#: doc/classes/String.xml:335
+#: doc/classes/String.xml:336
msgid ""
-"Changes the case of some letters. Replaces underscores with spaces, converts "
-"all letters to lowercase, then capitalizes first and every letter following "
-"the space character. For [code]capitalize camelCase mixed_with_underscores[/"
-"code], it will return [code]Capitalize Camelcase Mixed With Underscores[/"
+"Changes the case of some letters. Replaces underscores with spaces, adds "
+"spaces before in-word uppercase characters, converts all letters to "
+"lowercase, then capitalizes the first letter and every letter following a "
+"space character. For [code]capitalize camelCase mixed_with_underscores[/"
+"code], it will return [code]Capitalize Camel Case Mixed With Underscores[/"
"code]."
msgstr ""
-#: doc/classes/String.xml:344
+#: doc/classes/String.xml:345
msgid ""
"Performs a case-sensitive comparison to another string. Returns [code]-1[/"
"code] if less than, [code]+1[/code] if greater than, or [code]0[/code] if "
"equal."
msgstr ""
-#: doc/classes/String.xml:357
+#: doc/classes/String.xml:358
msgid ""
"Returns the number of occurrences of substring [code]what[/code] between "
"[code]from[/code] and [code]to[/code] positions. If [code]from[/code] and "
@@ -47739,7 +49013,7 @@ msgid ""
"code] equals 0 the remained substring will be used."
msgstr ""
-#: doc/classes/String.xml:370
+#: doc/classes/String.xml:371
msgid ""
"Returns the number of occurrences of substring [code]what[/code] (ignoring "
"case) between [code]from[/code] and [code]to[/code] positions. If "
@@ -47747,32 +49021,33 @@ msgid ""
"used. If only [code]to[/code] equals 0 the remained substring will be used."
msgstr ""
-#: doc/classes/String.xml:377
+#: doc/classes/String.xml:378
msgid ""
"Returns a copy of the string with indentation (leading tabs and spaces) "
"removed."
msgstr ""
-#: doc/classes/String.xml:384
+#: doc/classes/String.xml:385
msgid ""
"Returns [code]true[/code] if the length of the string equals [code]0[/code]."
msgstr ""
-#: doc/classes/String.xml:393
+#: doc/classes/String.xml:394
msgid "Returns [code]true[/code] if the string ends with the given string."
msgstr ""
-#: doc/classes/String.xml:404
+#: doc/classes/String.xml:405
msgid ""
"Erases [code]chars[/code] characters from the string starting from "
"[code]position[/code]."
msgstr ""
-#: doc/classes/String.xml:415
+#: doc/classes/String.xml:416
msgid ""
-"Finds the first occurrence of a substring. Returns the starting position of "
-"the substring or [code]-1[/code] if not found. Optionally, the initial "
-"search index can be passed.\n"
+"Returns the index of the [b]first[/b] case-sensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the end of the "
+"string.\n"
"[b]Note:[/b] If you just want to know whether a string contains a substring, "
"use the [code]in[/code] operator as follows:\n"
"[codeblock]\n"
@@ -47782,48 +49057,42 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:430
-msgid ""
-"Finds the last occurrence of a substring. Returns the starting position of "
-"the substring or [code]-1[/code] if not found."
-msgstr ""
-
-#: doc/classes/String.xml:441
+#: doc/classes/String.xml:433
msgid ""
-"Finds the first occurrence of a substring, ignoring case. Returns the "
-"starting position of the substring or [code]-1[/code] if not found. "
-"Optionally, the initial search index can be passed."
+"Returns the index of the [b]first[/b] case-insensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the end of the string."
msgstr ""
-#: doc/classes/String.xml:452
+#: doc/classes/String.xml:444
msgid ""
"Formats the string by replacing all occurrences of [code]placeholder[/code] "
"with [code]values[/code]."
msgstr ""
-#: doc/classes/String.xml:459
+#: doc/classes/String.xml:451
msgid "If the string is a valid file path, returns the base directory name."
msgstr ""
-#: doc/classes/String.xml:466
+#: doc/classes/String.xml:458
msgid ""
"If the string is a valid file path, returns the full file path without the "
"extension."
msgstr ""
-#: doc/classes/String.xml:473
+#: doc/classes/String.xml:465
msgid "If the string is a valid file path, returns the extension."
msgstr ""
-#: doc/classes/String.xml:480
+#: doc/classes/String.xml:472
msgid "If the string is a valid file path, returns the filename."
msgstr ""
-#: doc/classes/String.xml:487
+#: doc/classes/String.xml:479
msgid "Hashes the string and returns a 32-bit integer."
msgstr ""
-#: doc/classes/String.xml:494
+#: doc/classes/String.xml:486
msgid ""
"Converts a string containing a hexadecimal number into an integer. "
"Hexadecimal strings are expected to be prefixed with \"[code]0x[/code]\" "
@@ -47833,7 +49102,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:504
+#: doc/classes/String.xml:496
msgid ""
"Escapes (encodes) a string to URL friendly format. Also referred to as 'URL "
"encode'.\n"
@@ -47843,7 +49112,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:514
+#: doc/classes/String.xml:506
msgid ""
"Unescapes (decodes) a string in URL encoded format. Also referred to as 'URL "
"decode'.\n"
@@ -47853,7 +49122,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:526
+#: doc/classes/String.xml:518
msgid ""
"Converts [code]size[/code] represented as number of bytes to human-readable "
"format using internationalized set of data size units, namely: B, KiB, MiB, "
@@ -47866,48 +49135,48 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:542
+#: doc/classes/String.xml:534
msgid ""
"Returns a copy of the string with the substring [code]what[/code] inserted "
"at the given position."
msgstr ""
-#: doc/classes/String.xml:549
+#: doc/classes/String.xml:541
msgid ""
"If the string is a path to a file or directory, returns [code]true[/code] if "
"the path is absolute."
msgstr ""
-#: doc/classes/String.xml:556
+#: doc/classes/String.xml:548
msgid ""
"If the string is a path to a file or directory, returns [code]true[/code] if "
"the path is relative."
msgstr ""
-#: doc/classes/String.xml:565
+#: doc/classes/String.xml:557
msgid ""
"Returns [code]true[/code] if this string is a subsequence of the given "
"string."
msgstr ""
-#: doc/classes/String.xml:574
+#: doc/classes/String.xml:566
msgid ""
"Returns [code]true[/code] if this string is a subsequence of the given "
"string, without considering case."
msgstr ""
-#: doc/classes/String.xml:581
+#: doc/classes/String.xml:573
msgid ""
"Returns [code]true[/code] if this string is free from characters that aren't "
"allowed in file names, those being:\n"
"[code]: / \\ ? * \" | % < >[/code]"
msgstr ""
-#: doc/classes/String.xml:589
+#: doc/classes/String.xml:581
msgid "Returns [code]true[/code] if this string contains a valid float."
msgstr ""
-#: doc/classes/String.xml:598
+#: doc/classes/String.xml:590
msgid ""
"Returns [code]true[/code] if this string contains a valid hexadecimal "
"number. If [code]with_prefix[/code] is [code]true[/code], then a validity of "
@@ -47915,7 +49184,7 @@ msgid ""
"instance: [code]0xDEADC0DE[/code]."
msgstr ""
-#: doc/classes/String.xml:605
+#: doc/classes/String.xml:597
msgid ""
"Returns [code]true[/code] if this string contains a valid color in "
"hexadecimal HTML notation. Other HTML notations such as named colors or "
@@ -47923,22 +49192,22 @@ msgid ""
"return [code]false[/code]."
msgstr ""
-#: doc/classes/String.xml:612
+#: doc/classes/String.xml:604
msgid ""
"Returns [code]true[/code] if this string is a valid identifier. A valid "
"identifier may contain only letters, digits and underscores ([code]_[/code]) "
"and the first character may not be a digit."
msgstr ""
-#: doc/classes/String.xml:619
+#: doc/classes/String.xml:611
msgid "Returns [code]true[/code] if this string contains a valid integer."
msgstr ""
-#: doc/classes/String.xml:626
+#: doc/classes/String.xml:618
msgid "Returns [code]true[/code] if this string contains a valid IP address."
msgstr ""
-#: doc/classes/String.xml:635
+#: doc/classes/String.xml:627
msgid ""
"Return a [String] which is the concatenation of the [code]parts[/code]. The "
"separator between elements is the string providing this method.\n"
@@ -47948,121 +49217,125 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:646
+#: doc/classes/String.xml:638
msgid ""
"Returns a copy of the string with special characters escaped using the JSON "
"standard."
msgstr ""
-#: doc/classes/String.xml:655
+#: doc/classes/String.xml:647
msgid "Returns a number of characters from the left of the string."
msgstr ""
-#: doc/classes/String.xml:662
+#: doc/classes/String.xml:654
msgid "Returns the string's amount of characters."
msgstr ""
-#: doc/classes/String.xml:671
+#: doc/classes/String.xml:663
msgid "Returns a copy of the string with characters removed from the left."
msgstr ""
-#: doc/classes/String.xml:680
+#: doc/classes/String.xml:672
msgid ""
"Does a simple case-sensitive expression match, where [code]\"*\"[/code] "
"matches zero or more arbitrary characters and [code]\"?\"[/code] matches any "
"single character except a period ([code]\".\"[/code])."
msgstr ""
-#: doc/classes/String.xml:689
+#: doc/classes/String.xml:681
msgid ""
"Does a simple case-insensitive expression match, where [code]\"*\"[/code] "
"matches zero or more arbitrary characters and [code]\"?\"[/code] matches any "
"single character except a period ([code]\".\"[/code])."
msgstr ""
-#: doc/classes/String.xml:696
+#: doc/classes/String.xml:688
msgid "Returns the MD5 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:703
+#: doc/classes/String.xml:695
msgid "Returns the MD5 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:712
+#: doc/classes/String.xml:704
msgid ""
"Performs a case-insensitive comparison to another string. Returns [code]-1[/"
"code] if less than, [code]+1[/code] if greater than, or [code]0[/code] if "
"equal."
msgstr ""
-#: doc/classes/String.xml:721
+#: doc/classes/String.xml:713
msgid "Returns the character code at position [code]at[/code]."
msgstr ""
-#: doc/classes/String.xml:730
+#: doc/classes/String.xml:722
msgid ""
"Formats a number to have an exact number of [code]digits[/code] after the "
"decimal point."
msgstr ""
-#: doc/classes/String.xml:739
+#: doc/classes/String.xml:731
msgid ""
"Formats a number to have an exact number of [code]digits[/code] before the "
"decimal point."
msgstr ""
-#: doc/classes/String.xml:746
+#: doc/classes/String.xml:738
msgid "Decode a percent-encoded string. See [method percent_encode]."
msgstr ""
-#: doc/classes/String.xml:753
+#: doc/classes/String.xml:745
msgid ""
"Percent-encodes a string. Encodes parameters in a URL when sending a HTTP "
"GET request (and bodies of form-urlencoded POST requests)."
msgstr ""
-#: doc/classes/String.xml:762
+#: doc/classes/String.xml:754
msgid ""
"If the string is a path, this concatenates [code]file[/code] at the end of "
"the string as a subpath. E.g. [code]\"this/is\".plus_file(\"path\") == "
"\"this/is/path\"[/code]."
msgstr ""
-#: doc/classes/String.xml:771
+#: doc/classes/String.xml:763
msgid ""
"Returns original string repeated a number of times. The number of "
"repetitions is given by the argument."
msgstr ""
-#: doc/classes/String.xml:782
+#: doc/classes/String.xml:774
msgid ""
"Replaces occurrences of a case-sensitive substring with the given one inside "
"the string."
msgstr ""
-#: doc/classes/String.xml:793
+#: doc/classes/String.xml:785
msgid ""
"Replaces occurrences of a case-insensitive substring with the given one "
"inside the string."
msgstr ""
-#: doc/classes/String.xml:804
+#: doc/classes/String.xml:796
msgid ""
-"Performs a case-sensitive search for a substring, but starts from the end of "
-"the string instead of the beginning."
+"Returns the index of the [b]last[/b] case-sensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the beginning of the "
+"string."
msgstr ""
-#: doc/classes/String.xml:815
+#: doc/classes/String.xml:807
msgid ""
-"Performs a case-insensitive search for a substring, but starts from the end "
-"of the string instead of the beginning."
+"Returns the index of the [b]last[/b] case-insensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the beginning of the "
+"string."
msgstr ""
-#: doc/classes/String.xml:824
+#: doc/classes/String.xml:816
msgid "Returns the right side of the string from a given position."
msgstr ""
-#: doc/classes/String.xml:837
+#: doc/classes/String.xml:829
msgid ""
"Splits the string by a [code]delimiter[/code] string and returns an array of "
"the substrings, starting from right.\n"
@@ -48081,39 +49354,39 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:856
+#: doc/classes/String.xml:848
msgid "Returns a copy of the string with characters removed from the right."
msgstr ""
-#: doc/classes/String.xml:863
+#: doc/classes/String.xml:855
msgid "Returns the SHA-1 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:870
+#: doc/classes/String.xml:862
msgid "Returns the SHA-1 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:877
+#: doc/classes/String.xml:869
msgid "Returns the SHA-256 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:884
+#: doc/classes/String.xml:876
msgid "Returns the SHA-256 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:893
+#: doc/classes/String.xml:885
msgid ""
"Returns the similarity index of the text compared to this string. 1 means "
"totally similar and 0 means totally dissimilar."
msgstr ""
-#: doc/classes/String.xml:906
+#: doc/classes/String.xml:898
msgid ""
"Splits the string by a [code]delimiter[/code] string and returns an array of "
-"the substrings.\n"
+"the substrings. The [code]delimiter[/code] can be of any length.\n"
"If [code]maxsplit[/code] is specified, it defines the number of splits to do "
-"from the left up to [code]maxsplit[/code]. The default value of 0 means that "
-"all items are split.\n"
+"from the left up to [code]maxsplit[/code]. The default value of [code]0[/"
+"code] means that all items are split.\n"
"Example:\n"
"[codeblock]\n"
"var some_string = \"One,Two,Three,Four\"\n"
@@ -48121,10 +49394,12 @@ msgid ""
"print(some_array.size()) # Prints 2\n"
"print(some_array[0]) # Prints \"One\"\n"
"print(some_array[1]) # Prints \"Two,Three,Four\"\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"If you need to split strings with more complex rules, use the [RegEx] class "
+"instead."
msgstr ""
-#: doc/classes/String.xml:926
+#: doc/classes/String.xml:919
msgid ""
"Splits the string in floats by using a delimiter string and returns an array "
"of the substrings.\n"
@@ -48132,7 +49407,7 @@ msgid ""
"split by [code]\",\"[/code]."
msgstr ""
-#: doc/classes/String.xml:938
+#: doc/classes/String.xml:931
msgid ""
"Returns a copy of the string stripped of any non-printable character "
"(including tabulations, spaces and line breaks) at the beginning and the "
@@ -48140,7 +49415,7 @@ msgid ""
"right edges respectively."
msgstr ""
-#: doc/classes/String.xml:945
+#: doc/classes/String.xml:938
msgid ""
"Returns a copy of the string stripped of any escape character. These include "
"all non-printable control characters of the first page of the ASCII table (< "
@@ -48148,14 +49423,14 @@ msgid ""
"code] and [code]\\r[/code]) characters, but not spaces."
msgstr ""
-#: doc/classes/String.xml:956
+#: doc/classes/String.xml:949
msgid ""
"Returns part of the string from the position [code]from[/code] with length "
"[code]len[/code]. Argument [code]len[/code] is optional and using [code]-1[/"
"code] will return remaining characters from given position."
msgstr ""
-#: doc/classes/String.xml:963
+#: doc/classes/String.xml:956
msgid ""
"Converts the String (which is a character array) to [PackedByteArray] (which "
"is an array of bytes). The conversion is faster compared to [method "
@@ -48163,25 +49438,25 @@ msgid ""
"ASCII characters."
msgstr ""
-#: doc/classes/String.xml:970
+#: doc/classes/String.xml:963
msgid ""
"Converts a string containing a decimal number into a [code]float[/code]."
msgstr ""
-#: doc/classes/String.xml:977
+#: doc/classes/String.xml:970
msgid ""
"Converts a string containing an integer number into an [code]int[/code]."
msgstr ""
-#: doc/classes/String.xml:984
+#: doc/classes/String.xml:977
msgid "Returns the string converted to lowercase."
msgstr ""
-#: doc/classes/String.xml:991
+#: doc/classes/String.xml:984
msgid "Returns the string converted to uppercase."
msgstr ""
-#: doc/classes/String.xml:998
+#: doc/classes/String.xml:991
msgid ""
"Converts the String (which is an array of characters) to [PackedByteArray] "
"(which is an array of bytes). The conversion is a bit slower than [method "
@@ -48189,25 +49464,25 @@ msgid ""
"this function over [method to_ascii]."
msgstr ""
-#: doc/classes/String.xml:1007
+#: doc/classes/String.xml:1000
msgid ""
"Removes a given string from the start if it starts with it or leaves the "
"string unchanged."
msgstr ""
-#: doc/classes/String.xml:1016
+#: doc/classes/String.xml:1009
msgid ""
"Removes a given string from the end if it ends with it or leaves the string "
"unchanged."
msgstr ""
-#: doc/classes/String.xml:1023
+#: doc/classes/String.xml:1016
msgid ""
"Returns a copy of the string with special characters escaped using the XML "
"standard."
msgstr ""
-#: doc/classes/String.xml:1030
+#: doc/classes/String.xml:1023
msgid ""
"Returns a copy of the string with escaped characters replaced by their "
"meanings according to the XML standard."
@@ -49439,50 +50714,42 @@ msgid ""
"undo/redo."
msgstr ""
-#: doc/classes/TextEdit.xml:24
-msgid "Adds color region (given the delimiters) and its colors."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:35
-msgid "Adds a [code]keyword[/code] and its [Color]."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:44
+#: doc/classes/TextEdit.xml:18
msgid ""
"Returns if the given line is foldable, that is, it has indented lines right "
"below it."
msgstr ""
-#: doc/classes/TextEdit.xml:57
+#: doc/classes/TextEdit.xml:25
msgid ""
-"Clears all custom syntax coloring information previously added with [method "
-"add_color_region] or [method add_keyword_color]."
+"Centers the viewport on the line the editing cursor is at. This also resets "
+"the [member scroll_horizontal] value to [code]0[/code]."
msgstr ""
-#: doc/classes/TextEdit.xml:64
+#: doc/classes/TextEdit.xml:32
msgid "Clears the undo history."
msgstr ""
-#: doc/classes/TextEdit.xml:71
+#: doc/classes/TextEdit.xml:39
msgid "Copy's the current text selection."
msgstr ""
-#: doc/classes/TextEdit.xml:78
+#: doc/classes/TextEdit.xml:46
msgid "Returns the column the editing cursor is at."
msgstr ""
-#: doc/classes/TextEdit.xml:85
+#: doc/classes/TextEdit.xml:53
msgid "Returns the line the editing cursor is at."
msgstr ""
-#: doc/classes/TextEdit.xml:96
+#: doc/classes/TextEdit.xml:64
msgid ""
"Moves the cursor at the specified [code]column[/code] index.\n"
"If [code]adjust_viewport[/code] is set to [code]true[/code], the viewport "
"will center at the cursor position after the move occurs."
msgstr ""
-#: doc/classes/TextEdit.xml:112
+#: doc/classes/TextEdit.xml:80
msgid ""
"Moves the cursor at the specified [code]line[/code] index.\n"
"If [code]adjust_viewport[/code] is set to [code]true[/code], the viewport "
@@ -49491,111 +50758,101 @@ msgid ""
"[code]line[/code] can be hidden using [method set_line_as_hidden]."
msgstr ""
-#: doc/classes/TextEdit.xml:121
+#: doc/classes/TextEdit.xml:89
msgid "Cut's the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:128
+#: doc/classes/TextEdit.xml:96
msgid "Deselects the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:135
+#: doc/classes/TextEdit.xml:103
msgid "Folds all lines that are possible to be folded (see [method can_fold])."
msgstr ""
-#: doc/classes/TextEdit.xml:144
+#: doc/classes/TextEdit.xml:112
msgid "Folds the given line, if possible (see [method can_fold])."
msgstr ""
-#: doc/classes/TextEdit.xml:151
+#: doc/classes/TextEdit.xml:119
msgid "Returns an array containing the line number of each breakpoint."
msgstr ""
-#: doc/classes/TextEdit.xml:160
-msgid "Returns the [Color] of the specified [code]keyword[/code]."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:169
+#: doc/classes/TextEdit.xml:128
msgid "Returns the text of a specific line."
msgstr ""
-#: doc/classes/TextEdit.xml:176
+#: doc/classes/TextEdit.xml:135
msgid "Returns the amount of total lines in the text."
msgstr ""
-#: doc/classes/TextEdit.xml:183
+#: doc/classes/TextEdit.xml:142
msgid ""
"Returns the [PopupMenu] of this [TextEdit]. By default, this menu is "
"displayed when right-clicking on the [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:190
+#: doc/classes/TextEdit.xml:149
msgid "Returns the selection begin column."
msgstr ""
-#: doc/classes/TextEdit.xml:197
+#: doc/classes/TextEdit.xml:156
msgid "Returns the selection begin line."
msgstr ""
-#: doc/classes/TextEdit.xml:204
+#: doc/classes/TextEdit.xml:163
msgid "Returns the text inside the selection."
msgstr ""
-#: doc/classes/TextEdit.xml:211
+#: doc/classes/TextEdit.xml:170
msgid "Returns the selection end column."
msgstr ""
-#: doc/classes/TextEdit.xml:218
+#: doc/classes/TextEdit.xml:177
msgid "Returns the selection end line."
msgstr ""
-#: doc/classes/TextEdit.xml:225
+#: doc/classes/TextEdit.xml:184
msgid "Returns a [String] text with the word under the mouse cursor location."
msgstr ""
-#: doc/classes/TextEdit.xml:234
-msgid ""
-"Returns whether the specified [code]keyword[/code] has a color set to it or "
-"not."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:243
+#: doc/classes/TextEdit.xml:193
msgid "Insert the specified text at the cursor position."
msgstr ""
-#: doc/classes/TextEdit.xml:252
+#: doc/classes/TextEdit.xml:202
msgid "Returns whether the line at the specified index is folded or not."
msgstr ""
-#: doc/classes/TextEdit.xml:261
+#: doc/classes/TextEdit.xml:211
msgid "Returns whether the line at the specified index is hidden or not."
msgstr ""
-#: doc/classes/TextEdit.xml:268
+#: doc/classes/TextEdit.xml:218
msgid "Returns [code]true[/code] if the selection is active."
msgstr ""
-#: doc/classes/TextEdit.xml:277
+#: doc/classes/TextEdit.xml:227
msgid ""
"Triggers a right-click menu action by the specified index. See [enum "
"MenuItems] for a list of available indexes."
msgstr ""
-#: doc/classes/TextEdit.xml:284
+#: doc/classes/TextEdit.xml:234
msgid "Paste the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:291
+#: doc/classes/TextEdit.xml:241
msgid "Perform redo operation."
msgstr ""
-#: doc/classes/TextEdit.xml:298
+#: doc/classes/TextEdit.xml:248
msgid ""
"Removes all the breakpoints. This will not fire the [signal "
"breakpoint_toggled] signal."
msgstr ""
-#: doc/classes/TextEdit.xml:313
+#: doc/classes/TextEdit.xml:263
msgid ""
"Perform a search inside the text. Search flags can be specified in the [enum "
"SearchFlags] enum.\n"
@@ -49611,244 +50868,265 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/TextEdit.xml:336
-msgid "Perform selection, from line/column to line/column."
+#: doc/classes/TextEdit.xml:286
+msgid ""
+"Perform selection, from line/column to line/column.\n"
+"If [member selecting_enabled] is [code]false[/code], no selection will occur."
msgstr ""
-#: doc/classes/TextEdit.xml:343
-msgid "Select all the text."
+#: doc/classes/TextEdit.xml:294
+msgid ""
+"Select all the text.\n"
+"If [member selecting_enabled] is [code]false[/code], no selection will occur."
msgstr ""
-#: doc/classes/TextEdit.xml:354
+#: doc/classes/TextEdit.xml:306
msgid "Sets the text for a specific line."
msgstr ""
-#: doc/classes/TextEdit.xml:365
+#: doc/classes/TextEdit.xml:317
msgid "If [code]true[/code], hides the line of the specified index."
msgstr ""
-#: doc/classes/TextEdit.xml:374
+#: doc/classes/TextEdit.xml:326
msgid "Toggle the folding of the code block at the given line."
msgstr ""
-#: doc/classes/TextEdit.xml:381
+#: doc/classes/TextEdit.xml:333
msgid "Perform undo operation."
msgstr ""
-#: doc/classes/TextEdit.xml:390
+#: doc/classes/TextEdit.xml:342
msgid "Unfolds the given line, if folded."
msgstr ""
-#: doc/classes/TextEdit.xml:397
+#: doc/classes/TextEdit.xml:349
msgid ""
"Unhide all lines that were previously set to hidden by [method "
"set_line_as_hidden]."
msgstr ""
-#: doc/classes/TextEdit.xml:403
+#: doc/classes/TextEdit.xml:355
msgid "If [code]true[/code], the breakpoint gutter is visible."
msgstr ""
-#: doc/classes/TextEdit.xml:412
+#: doc/classes/TextEdit.xml:364
msgid ""
"If [code]true[/code], the caret displays as a rectangle.\n"
"If [code]false[/code], the caret displays as a bar."
msgstr ""
-#: doc/classes/TextEdit.xml:416
+#: doc/classes/TextEdit.xml:368
msgid ""
"If [code]true[/code], a right-click moves the cursor at the mouse position "
"before displaying the context menu.\n"
"If [code]false[/code], the context menu disregards mouse location."
msgstr ""
-#: doc/classes/TextEdit.xml:420
+#: doc/classes/TextEdit.xml:372
msgid "If [code]true[/code], a right-click displays the context menu."
msgstr ""
-#: doc/classes/TextEdit.xml:423
+#: doc/classes/TextEdit.xml:375
msgid ""
"If [code]true[/code], the \"space\" character will have a visible "
"representation."
msgstr ""
-#: doc/classes/TextEdit.xml:426
+#: doc/classes/TextEdit.xml:378
msgid ""
"If [code]true[/code], the \"tab\" character will have a visible "
"representation."
msgstr ""
-#: doc/classes/TextEdit.xml:430
+#: doc/classes/TextEdit.xml:382
msgid ""
"If [code]true[/code], the fold gutter is visible. This enables folding "
"groups of indented lines."
msgstr ""
-#: doc/classes/TextEdit.xml:433
+#: doc/classes/TextEdit.xml:385
msgid ""
"If [code]true[/code], all lines that have been set to hidden by [method "
"set_line_as_hidden], will not be visible."
msgstr ""
-#: doc/classes/TextEdit.xml:436
+#: doc/classes/TextEdit.xml:388
msgid ""
"If [code]true[/code], all occurrences of the selected text will be "
"highlighted."
msgstr ""
-#: doc/classes/TextEdit.xml:439
+#: doc/classes/TextEdit.xml:391
msgid "If [code]true[/code], the line containing the cursor is highlighted."
msgstr ""
-#: doc/classes/TextEdit.xml:447
+#: doc/classes/TextEdit.xml:394
+msgid ""
+"If [code]true[/code], a minimap is shown, providing an outline of your "
+"source code."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:397
+msgid "The width, in pixels, of the minimap."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:401
msgid ""
"If [code]true[/code], custom [code]font_color_selected[/code] will be used "
"for selected text."
msgstr ""
-#: doc/classes/TextEdit.xml:450
+#: doc/classes/TextEdit.xml:404
msgid ""
"If [code]true[/code], read-only mode is enabled. Existing text cannot be "
"modified and new text cannot be added."
msgstr ""
-#: doc/classes/TextEdit.xml:463
+#: doc/classes/TextEdit.xml:413
msgid ""
-"If [code]true[/code], line numbers are displayed to the left of the text."
+"If [code]true[/code], text can be selected.\n"
+"If [code]false[/code], text can not be selected by the user or by the "
+"[method select] or [method select_all] methods."
msgstr ""
-#: doc/classes/TextEdit.xml:466
+#: doc/classes/TextEdit.xml:417
msgid ""
-"If [code]true[/code], sets the [code]step[/code] of the scrollbars to "
-"[code]0.25[/code] which results in smoother scrolling."
+"If [code]true[/code], shortcut keys for context menu items are enabled, even "
+"if the context menu is disabled."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:420
+msgid ""
+"If [code]true[/code], line numbers are displayed to the left of the text."
msgstr ""
-#: doc/classes/TextEdit.xml:469
+#: doc/classes/TextEdit.xml:423
msgid ""
-"If [code]true[/code], any custom color properties that have been set for "
-"this [TextEdit] will be visible."
+"If [code]true[/code], sets the [code]step[/code] of the scrollbars to "
+"[code]0.25[/code] which results in smoother scrolling."
msgstr ""
-#: doc/classes/TextEdit.xml:472
+#: doc/classes/TextEdit.xml:428
msgid "String value of the [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:475
+#: doc/classes/TextEdit.xml:431
msgid "Vertical scroll sensitivity."
msgstr ""
-#: doc/classes/TextEdit.xml:478
+#: doc/classes/TextEdit.xml:437
msgid ""
"If [code]true[/code], enables text wrapping when it goes beyond the edge of "
"what is visible."
msgstr ""
-#: doc/classes/TextEdit.xml:486
+#: doc/classes/TextEdit.xml:445
msgid "Emitted when a breakpoint is placed via the breakpoint gutter."
msgstr ""
-#: doc/classes/TextEdit.xml:491
+#: doc/classes/TextEdit.xml:450
msgid "Emitted when the cursor changes."
msgstr ""
-#: doc/classes/TextEdit.xml:500
+#: doc/classes/TextEdit.xml:459
msgid "Emitted when the info icon is clicked."
msgstr ""
-#: doc/classes/TextEdit.xml:531
+#: doc/classes/TextEdit.xml:496
msgid "Match case when searching."
msgstr ""
-#: doc/classes/TextEdit.xml:534
+#: doc/classes/TextEdit.xml:499
msgid "Match whole words when searching."
msgstr ""
-#: doc/classes/TextEdit.xml:537
+#: doc/classes/TextEdit.xml:502
msgid "Search from end to beginning."
msgstr ""
-#: doc/classes/TextEdit.xml:546
+#: doc/classes/TextEdit.xml:511
msgid ""
"Pastes the clipboard text over the selected text (or at the cursor's "
"position)."
msgstr ""
-#: doc/classes/TextEdit.xml:549
+#: doc/classes/TextEdit.xml:514
msgid "Erases the whole [TextEdit] text."
msgstr ""
-#: doc/classes/TextEdit.xml:552
+#: doc/classes/TextEdit.xml:517
msgid "Selects the whole [TextEdit] text."
msgstr ""
-#: doc/classes/TextEdit.xml:558
+#: doc/classes/TextEdit.xml:523
msgid "Redoes the previous action."
msgstr ""
-#: doc/classes/TextEdit.xml:566
+#: doc/classes/TextEdit.xml:531
msgid ""
"Sets the background [Color] of this [TextEdit]. [member syntax_highlighting] "
"has to be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:569
+#: doc/classes/TextEdit.xml:534
msgid ""
"Sets the [Color] of the bookmark marker. [member syntax_highlighting] has to "
"be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:574 doc/classes/TextEdit.xml:601
+#: doc/classes/TextEdit.xml:539 doc/classes/TextEdit.xml:566
msgid ""
"Sets the [Color] of the breakpoints. [member breakpoint_gutter] has to be "
"enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:612
+#: doc/classes/TextEdit.xml:577
msgid "Sets the default [Font]."
msgstr ""
-#: doc/classes/TextEdit.xml:615
+#: doc/classes/TextEdit.xml:580
msgid "Sets the font [Color]."
msgstr ""
-#: doc/classes/TextEdit.xml:620
+#: doc/classes/TextEdit.xml:585
msgid ""
"Sets the [Color] of the selected text. [member override_selected_font_color] "
"has to be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:625
+#: doc/classes/TextEdit.xml:588
msgid ""
"Sets the [Color] of the line numbers. [member show_line_numbers] has to be "
"enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:628
+#: doc/classes/TextEdit.xml:591
msgid "Sets the spacing between the lines."
msgstr ""
-#: doc/classes/TextEdit.xml:631
+#: doc/classes/TextEdit.xml:594
msgid "Sets the [Color] of marked text."
msgstr ""
-#: doc/classes/TextEdit.xml:636
+#: doc/classes/TextEdit.xml:597
msgid "Sets the [StyleBox] of this [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:641
+#: doc/classes/TextEdit.xml:600
msgid ""
"Sets the [StyleBox] of this [TextEdit] when [member readonly] is enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:646
+#: doc/classes/TextEdit.xml:605
msgid "Sets the highlight [Color] of text selections."
msgstr ""
-#: doc/classes/TextEdit.xml:653
+#: doc/classes/TextEdit.xml:610
msgid "Sets a custom [Texture2D] for tab text characters."
msgstr ""
-#: doc/classes/TextEdit.xml:656
+#: doc/classes/TextEdit.xml:613
msgid ""
"Sets the highlight [Color] of multiple occurrences. [member "
"highlight_all_occurrences] has to be enabled."
@@ -49926,80 +51204,80 @@ msgid ""
"the texture will not scale with the node."
msgstr ""
-#: doc/classes/TextureButton.xml:19
+#: doc/classes/TextureButton.xml:25
msgid ""
"Controls the texture's behavior when you resize the node's bounding "
"rectangle, [b]only if[/b] [member expand] is [code]true[/code]. Set it to "
"one of the [enum StretchMode] constants. See the constants to learn more."
msgstr ""
-#: doc/classes/TextureButton.xml:22
+#: doc/classes/TextureButton.xml:28
msgid ""
"Pure black and white [BitMap] image to use for click detection. On the mask, "
"white pixels represent the button's clickable area. Use it to create buttons "
"with curved shapes."
msgstr ""
-#: doc/classes/TextureButton.xml:25
+#: doc/classes/TextureButton.xml:31
msgid ""
"Texture to display when the node is disabled. See [member BaseButton."
"disabled]."
msgstr ""
-#: doc/classes/TextureButton.xml:28
+#: doc/classes/TextureButton.xml:34
msgid "Texture to display when the node has mouse or keyboard focus."
msgstr ""
-#: doc/classes/TextureButton.xml:31
+#: doc/classes/TextureButton.xml:37
msgid "Texture to display when the mouse hovers the node."
msgstr ""
-#: doc/classes/TextureButton.xml:34
+#: doc/classes/TextureButton.xml:40
msgid ""
"Texture to display by default, when the node is [b]not[/b] in the disabled, "
"focused, hover or pressed state."
msgstr ""
-#: doc/classes/TextureButton.xml:37
+#: doc/classes/TextureButton.xml:43
msgid ""
"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 "
"[member BaseButton.shortcut] key."
msgstr ""
-#: doc/classes/TextureButton.xml:42 doc/classes/TextureRect.xml:36
+#: doc/classes/TextureButton.xml:48 doc/classes/TextureRect.xml:36
msgid "Scale to fit the node's bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:45 doc/classes/TextureRect.xml:39
+#: doc/classes/TextureButton.xml:51 doc/classes/TextureRect.xml:39
msgid "Tile inside the node's bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:48 doc/classes/TextureRect.xml:42
+#: doc/classes/TextureButton.xml:54 doc/classes/TextureRect.xml:42
msgid ""
"The texture keeps its original size and stays in the bounding rectangle's "
"top-left corner."
msgstr ""
-#: doc/classes/TextureButton.xml:51 doc/classes/TextureRect.xml:45
+#: doc/classes/TextureButton.xml:57 doc/classes/TextureRect.xml:45
msgid ""
"The texture keeps its original size and stays centered in the node's "
"bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:54 doc/classes/TextureRect.xml:48
+#: doc/classes/TextureButton.xml:60 doc/classes/TextureRect.xml:48
msgid ""
"Scale the texture to fit the node's bounding rectangle, but maintain the "
"texture's aspect ratio."
msgstr ""
-#: doc/classes/TextureButton.xml:57
+#: doc/classes/TextureButton.xml:63
msgid ""
"Scale the texture to fit the node's bounding rectangle, center it, and "
"maintain its aspect ratio."
msgstr ""
-#: doc/classes/TextureButton.xml:60 doc/classes/TextureRect.xml:54
+#: doc/classes/TextureButton.xml:66 doc/classes/TextureRect.xml:54
msgid ""
"Scale the texture so that the shorter side fits the bounding rectangle. The "
"other side clips to the node's limits."
@@ -50449,19 +51727,25 @@ msgid ""
"advised if working with shared objects."
msgstr ""
-#: doc/classes/Thread.xml:17
+#: doc/classes/Thread.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/threads/thread_safe_apis."
+"html"
+msgstr ""
+
+#: doc/classes/Thread.xml:18
msgid ""
"Returns the current [Thread]'s ID, uniquely identifying it among all threads."
msgstr ""
-#: doc/classes/Thread.xml:24
+#: doc/classes/Thread.xml:25
msgid ""
"Returns [code]true[/code] if this [Thread] is currently active. An active "
"[Thread] cannot start work on a new method but can be joined with [method "
"wait_to_finish]."
msgstr ""
-#: doc/classes/Thread.xml:39
+#: doc/classes/Thread.xml:40
msgid ""
"Starts a new [Thread] that runs [code]method[/code] on object "
"[code]instance[/code] with [code]userdata[/code] passed as an argument. Even "
@@ -50471,21 +51755,21 @@ msgid ""
"Returns [constant OK] on success, or [constant ERR_CANT_CREATE] on failure."
msgstr ""
-#: doc/classes/Thread.xml:47
+#: doc/classes/Thread.xml:48
msgid ""
"Joins the [Thread] and waits for it to finish. Returns what the method "
"called returned."
msgstr ""
-#: doc/classes/Thread.xml:53
+#: doc/classes/Thread.xml:54
msgid "A thread running with lower priority than normally."
msgstr ""
-#: doc/classes/Thread.xml:56
+#: doc/classes/Thread.xml:57
msgid "A thread with a standard priority."
msgstr ""
-#: doc/classes/Thread.xml:59
+#: doc/classes/Thread.xml:60
msgid "A thread running with higher priority than normally."
msgstr ""
@@ -51020,50 +52304,61 @@ msgid "Returns the [Transform2D] of a tile's shape."
msgstr ""
#: doc/classes/TileSet.xml:481
-msgid "Returns an array of the tile's shapes."
+msgid ""
+"Returns an array of dictionaries describing the tile's shapes.\n"
+"[b]Dictionary structure in the array returned by this method:[/b]\n"
+"[codeblock]\n"
+"{\n"
+" \"autotile_coord\": Vector2,\n"
+" \"one_way\": bool,\n"
+" \"one_way_margin\": int,\n"
+" \"shape\": CollisionShape2D,\n"
+" \"shape_transform\": Transform2D,\n"
+"}\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/TileSet.xml:490
+#: doc/classes/TileSet.xml:500
msgid "Returns the tile's texture."
msgstr ""
-#: doc/classes/TileSet.xml:499
+#: doc/classes/TileSet.xml:509
msgid "Returns the texture offset of the tile."
msgstr ""
-#: doc/classes/TileSet.xml:508
+#: doc/classes/TileSet.xml:518
msgid "Returns the tile's [enum TileMode]."
msgstr ""
-#: doc/classes/TileSet.xml:517
+#: doc/classes/TileSet.xml:527
msgid "Returns the tile's Z index (drawing layer)."
msgstr ""
-#: doc/classes/TileSet.xml:528
+#: doc/classes/TileSet.xml:538
msgid "Sets a light occluder for the tile."
msgstr ""
-#: doc/classes/TileSet.xml:539
+#: doc/classes/TileSet.xml:549
msgid "Sets the tile's material."
msgstr ""
-#: doc/classes/TileSet.xml:550
+#: doc/classes/TileSet.xml:560
msgid "Sets the tile's modulation color."
msgstr ""
-#: doc/classes/TileSet.xml:561
+#: doc/classes/TileSet.xml:571
msgid "Sets the tile's name."
msgstr ""
-#: doc/classes/TileSet.xml:572
+#: doc/classes/TileSet.xml:582
msgid "Sets the tile's navigation polygon."
msgstr ""
-#: doc/classes/TileSet.xml:583
+#: doc/classes/TileSet.xml:593
msgid "Sets an offset for the tile's navigation polygon."
msgstr ""
-#: doc/classes/TileSet.xml:594
+#: doc/classes/TileSet.xml:604
msgid ""
"Sets the tile's normal map texture.\n"
"[b]Note:[/b] Godot expects the normal map to use X+, Y-, and Z+ coordinates. "
@@ -51072,48 +52367,48 @@ msgid ""
"a comparison of normal map coordinates expected by popular engines."
msgstr ""
-#: doc/classes/TileSet.xml:606
+#: doc/classes/TileSet.xml:616
msgid "Sets an offset for the tile's light occluder."
msgstr ""
-#: doc/classes/TileSet.xml:617
+#: doc/classes/TileSet.xml:627
msgid ""
"Sets the tile's sub-region in the texture. This is common in texture atlases."
msgstr ""
-#: doc/classes/TileSet.xml:630
+#: doc/classes/TileSet.xml:640
msgid "Sets a shape for the tile, enabling collision."
msgstr ""
-#: doc/classes/TileSet.xml:643
+#: doc/classes/TileSet.xml:653
msgid "Sets the offset of a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:656
+#: doc/classes/TileSet.xml:666
msgid "Enables one-way collision on a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:681
+#: doc/classes/TileSet.xml:691
msgid "Sets a [Transform2D] on a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:692
+#: doc/classes/TileSet.xml:702
msgid "Sets an array of shapes for the tile, enabling collision."
msgstr ""
-#: doc/classes/TileSet.xml:703
+#: doc/classes/TileSet.xml:713
msgid "Sets the tile's texture."
msgstr ""
-#: doc/classes/TileSet.xml:714
+#: doc/classes/TileSet.xml:724
msgid "Sets the tile's texture offset."
msgstr ""
-#: doc/classes/TileSet.xml:725
+#: doc/classes/TileSet.xml:735
msgid "Sets the tile's [enum TileMode]."
msgstr ""
-#: doc/classes/TileSet.xml:736
+#: doc/classes/TileSet.xml:746
msgid "Sets the tile's drawing index."
msgstr ""
@@ -51124,14 +52419,16 @@ msgstr ""
#: doc/classes/Timer.xml:7
msgid ""
"Counts down a specified interval and emits a signal on reaching 0. Can be "
-"set to repeat or \"one-shot\" mode."
+"set to repeat or \"one-shot\" mode.\n"
+"[b]Note:[/b] To create an one-shot timer without instantiating a node, use "
+"[method SceneTree.create_timer]."
msgstr ""
-#: doc/classes/Timer.xml:16
+#: doc/classes/Timer.xml:17
msgid "Returns [code]true[/code] if the timer is stopped."
msgstr ""
-#: doc/classes/Timer.xml:25
+#: doc/classes/Timer.xml:26
msgid ""
"Starts the timer. Sets [code]wait_time[/code] to [code]time_sec[/code] if "
"[code]time_sec > 0[/code]. This also resets the remaining time to "
@@ -51139,11 +52436,11 @@ msgid ""
"[b]Note:[/b] this method will not resume a paused timer. See [member paused]."
msgstr ""
-#: doc/classes/Timer.xml:33
+#: doc/classes/Timer.xml:34
msgid "Stops the timer."
msgstr ""
-#: doc/classes/Timer.xml:39
+#: doc/classes/Timer.xml:40
msgid ""
"If [code]true[/code], the timer will automatically start when entering the "
"scene tree.\n"
@@ -51151,40 +52448,40 @@ msgid ""
"the timer enters the scene tree and starts."
msgstr ""
-#: doc/classes/Timer.xml:43
+#: doc/classes/Timer.xml:44
msgid ""
"If [code]true[/code], the timer will stop when reaching 0. If [code]false[/"
"code], it will restart."
msgstr ""
-#: doc/classes/Timer.xml:46
+#: doc/classes/Timer.xml:47
msgid ""
"If [code]true[/code], the timer is paused and will not process until it is "
"unpaused again, even if [method start] is called."
msgstr ""
-#: doc/classes/Timer.xml:49
+#: doc/classes/Timer.xml:50
msgid "Processing mode. See [enum TimerProcessMode]."
msgstr ""
-#: doc/classes/Timer.xml:52
+#: doc/classes/Timer.xml:53
msgid ""
"The timer's remaining time in seconds. Returns 0 if the timer is inactive.\n"
"[b]Note:[/b] You cannot set this value. To change the timer's remaining "
"time, use [method start]."
msgstr ""
-#: doc/classes/Timer.xml:56
+#: doc/classes/Timer.xml:57
msgid "Wait time in seconds."
msgstr ""
-#: doc/classes/Timer.xml:68
+#: doc/classes/Timer.xml:69
msgid ""
"Update the timer during the physics step at each frame (fixed framerate "
"processing)."
msgstr ""
-#: doc/classes/Timer.xml:71
+#: doc/classes/Timer.xml:72
msgid "Update the timer during the idle time at each frame."
msgstr ""
@@ -51263,60 +52560,68 @@ msgstr ""
#: doc/classes/Transform.xml:7
msgid ""
-"Represents one or many transformations in 3D space such as translation, "
-"rotation, or scaling. It consists of a [member basis] and an [member "
-"origin]. It is similar to a 3×4 matrix."
+"3×4 matrix (3 rows, 4 columns) used for 3D linear transformations. It can "
+"represent transformations such as translation, rotation, or scaling. It "
+"consists of a [member basis] (first 3 columns) and a [Vector3] for the "
+"[member origin] (last column).\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
msgstr ""
-#: doc/classes/Transform.xml:26
+#: doc/classes/Transform.xml:28
msgid ""
-"Constructs the Transform from four [Vector3]. Each axis corresponds to local "
-"basis vectors (some of which may be scaled)."
+"Constructs a Transform from four [Vector3] values (matrix columns). Each "
+"axis corresponds to local basis vectors (some of which may be scaled)."
msgstr ""
-#: doc/classes/Transform.xml:37
-msgid "Constructs the Transform from a [Basis] and [Vector3]."
-msgstr ""
+#: doc/classes/Transform.xml:39
+#, fuzzy
+msgid "Constructs a Transform from a [Basis] and [Vector3]."
+msgstr "Создаёт маÑÑив из [PackedVector3Array]."
-#: doc/classes/Transform.xml:46
-msgid "Constructs the Transform from a [Transform2D]."
-msgstr ""
+#: doc/classes/Transform.xml:48
+#, fuzzy
+msgid "Constructs a Transform from a [Transform2D]."
+msgstr "Создаёт маÑÑив из [PackedVector2Array]."
-#: doc/classes/Transform.xml:55
+#: doc/classes/Transform.xml:57
msgid ""
-"Constructs the Transform from a [Quat]. The origin will be Vector3(0, 0, 0)."
+"Constructs a Transform from a [Quat]. The origin will be [code]Vector3(0, 0, "
+"0)[/code]."
msgstr ""
-#: doc/classes/Transform.xml:64
+#: doc/classes/Transform.xml:66
msgid ""
"Constructs the Transform from a [Basis]. The origin will be Vector3(0, 0, 0)."
msgstr ""
-#: doc/classes/Transform.xml:71
+#: doc/classes/Transform.xml:73 doc/classes/Transform2D.xml:51
msgid ""
"Returns the inverse of the transform, under the assumption that the "
"transformation is composed of rotation, scaling and translation."
msgstr ""
-#: doc/classes/Transform.xml:82
-msgid "Interpolates the transform to other Transform by weight amount (0-1)."
+#: doc/classes/Transform.xml:84
+msgid ""
+"Interpolates the transform to other Transform by weight amount (on the range "
+"of 0.0 to 1.0)."
msgstr ""
-#: doc/classes/Transform.xml:89 doc/classes/Transform2D.xml:106
+#: doc/classes/Transform.xml:91
msgid ""
"Returns the inverse of the transform, under the assumption that the "
"transformation is composed of rotation and translation (no scaling, use "
"affine_inverse for transforms with scaling)."
msgstr ""
-#: doc/classes/Transform.xml:98 doc/classes/Transform2D.xml:115
+#: doc/classes/Transform.xml:100 doc/classes/Transform2D.xml:119
msgid ""
"Returns [code]true[/code] if this transform and [code]transform[/code] are "
"approximately equal, by calling [code]is_equal_approx[/code] on each "
"component."
msgstr ""
-#: doc/classes/Transform.xml:109
+#: doc/classes/Transform.xml:111
msgid ""
"Returns a copy of the transform rotated such that its -Z axis points towards "
"the [code]target[/code] position.\n"
@@ -51326,25 +52631,25 @@ msgid ""
"Operations take place in global space."
msgstr ""
-#: doc/classes/Transform.xml:118 doc/classes/Transform2D.xml:122
+#: doc/classes/Transform.xml:120
msgid ""
"Returns the transform with the basis orthogonal (90 degrees), and normalized "
"axis vectors."
msgstr ""
-#: doc/classes/Transform.xml:129
+#: doc/classes/Transform.xml:131
msgid ""
"Rotates the transform around the given axis by the given angle (in radians), "
"using matrix multiplication. The axis must be a normalized vector."
msgstr ""
-#: doc/classes/Transform.xml:138
+#: doc/classes/Transform.xml:140
msgid ""
"Scales basis and origin of the transform by the given scale factor, using "
"matrix multiplication."
msgstr ""
-#: doc/classes/Transform.xml:147 doc/classes/Transform2D.xml:149
+#: doc/classes/Transform.xml:149 doc/classes/Transform2D.xml:153
msgid ""
"Translates the transform by the given offset, relative to the transform's "
"basis vectors.\n"
@@ -51352,152 +52657,162 @@ msgid ""
"multiplication."
msgstr ""
-#: doc/classes/Transform.xml:157
+#: doc/classes/Transform.xml:159
msgid ""
"Transforms the given [Vector3], [Plane], [AABB], or [PackedVector3Array] by "
"this transform."
msgstr ""
-#: doc/classes/Transform.xml:166
+#: doc/classes/Transform.xml:168
msgid ""
"Inverse-transforms the given [Vector3], [Plane], [AABB], or "
"[PackedVector3Array] by this transform."
msgstr ""
-#: doc/classes/Transform.xml:172
+#: doc/classes/Transform.xml:174
msgid ""
"The basis is a matrix containing 3 [Vector3] as its columns: X axis, Y axis, "
"and Z axis. These vectors can be interpreted as the basis vectors of local "
"coordinate system traveling with the object."
msgstr ""
-#: doc/classes/Transform.xml:175
-msgid "The translation offset of the transform."
+#: doc/classes/Transform.xml:177
+msgid ""
+"The translation offset of the transform (column 3, the fourth column). "
+"Equivalent to array index [code]3[/code]."
msgstr ""
-#: doc/classes/Transform.xml:180
+#: doc/classes/Transform.xml:182
msgid ""
"[Transform] with no translation, rotation or scaling applied. When applied "
"to other data structures, [constant IDENTITY] performs no transformation."
msgstr ""
-#: doc/classes/Transform.xml:183
+#: doc/classes/Transform.xml:185
msgid "[Transform] with mirroring applied perpendicular to the YZ plane."
msgstr ""
-#: doc/classes/Transform.xml:186
+#: doc/classes/Transform.xml:188
msgid "[Transform] with mirroring applied perpendicular to the XZ plane."
msgstr ""
-#: doc/classes/Transform.xml:189
+#: doc/classes/Transform.xml:191
msgid "[Transform] with mirroring applied perpendicular to the XY plane."
msgstr ""
#: doc/classes/Transform2D.xml:4
-msgid "2D transformation (3×2 matrix)."
+msgid "2D transformation (2×3 matrix)."
msgstr ""
#: doc/classes/Transform2D.xml:7
msgid ""
-"Represents one or many transformations in 2D space such as translation, "
-"rotation, or scaling. It consists of two [member x] and [member y] "
-"[Vector2]s and an [member origin]. It is similar to a 3×2 matrix."
+"2×3 matrix (2 rows, 3 columns) used for 2D linear transformations. It can "
+"represent transformations such as translation, rotation, or scaling. It "
+"consists of a three [Vector2] values: [member x], [member y], and the "
+"[member origin].\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
msgstr ""
-#: doc/classes/Transform2D.xml:18
+#: doc/classes/Transform2D.xml:20
msgid "Constructs the transform from a 3D [Transform]."
msgstr ""
-#: doc/classes/Transform2D.xml:31
+#: doc/classes/Transform2D.xml:33
msgid ""
-"Constructs the transform from 3 [Vector2]s representing x, y, and origin."
+"Constructs the transform from 3 [Vector2] values representing [member x], "
+"[member y], and the [member origin] (the three column vectors)."
msgstr ""
-#: doc/classes/Transform2D.xml:42
+#: doc/classes/Transform2D.xml:44
msgid "Constructs the transform from a given angle (in radians) and position."
msgstr ""
-#: doc/classes/Transform2D.xml:58
-msgid "Transforms the given vector by this transform's basis (no translation)."
+#: doc/classes/Transform2D.xml:60
+msgid ""
+"Returns a vector transformed (multiplied) by the basis matrix.\n"
+"This method does not account for translation (the origin vector)."
msgstr ""
-#: doc/classes/Transform2D.xml:67
+#: doc/classes/Transform2D.xml:70
msgid ""
-"Inverse-transforms the given vector by this transform's basis (no "
-"translation)."
+"Returns a vector transformed (multiplied) by the inverse basis matrix.\n"
+"This method does not account for translation (the origin vector)."
msgstr ""
-#: doc/classes/Transform2D.xml:74
+#: doc/classes/Transform2D.xml:78
msgid "Returns the transform's origin (translation)."
msgstr ""
-#: doc/classes/Transform2D.xml:81
+#: doc/classes/Transform2D.xml:85
msgid "Returns the transform's rotation (in radians)."
msgstr ""
-#: doc/classes/Transform2D.xml:88
+#: doc/classes/Transform2D.xml:92
msgid "Returns the scale."
msgstr ""
-#: doc/classes/Transform2D.xml:99
+#: doc/classes/Transform2D.xml:103
msgid ""
"Returns a transform interpolated between this transform and another by a "
-"given weight (0-1)."
+"given weight (on the range of 0.0 to 1.0)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:110
+msgid ""
+"Returns the inverse of the transform, under the assumption that the "
+"transformation is composed of rotation and translation (no scaling, use "
+"[method affine_inverse] for transforms with scaling)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:126
+msgid ""
+"Returns the transform with the basis orthogonal (90 degrees), and normalized "
+"axis vectors (scale of 1 or -1)."
msgstr ""
-#: doc/classes/Transform2D.xml:131
+#: doc/classes/Transform2D.xml:135
msgid ""
"Rotates the transform by the given angle (in radians), using matrix "
"multiplication."
msgstr ""
-#: doc/classes/Transform2D.xml:140
+#: doc/classes/Transform2D.xml:144
msgid ""
"Scales the transform by the given scale factor, using matrix multiplication."
msgstr ""
-#: doc/classes/Transform2D.xml:159
+#: doc/classes/Transform2D.xml:163
msgid ""
"Transforms the given [Vector2], [Rect2], or [PackedVector2Array] by this "
"transform."
msgstr ""
-#: doc/classes/Transform2D.xml:168
+#: doc/classes/Transform2D.xml:172
msgid ""
"Inverse-transforms the given [Vector2], [Rect2], or [PackedVector2Array] by "
"this transform."
msgstr ""
-#: doc/classes/Transform2D.xml:174
-msgid "The transform's translation offset."
-msgstr ""
-
-#: doc/classes/Transform2D.xml:177
-msgid ""
-"The X axis of 2×2 basis matrix containing 2 [Vector2]s as its columns: X "
-"axis and Y axis. These vectors can be interpreted as the basis vectors of "
-"local coordinate system traveling with the object."
-msgstr ""
-
-#: doc/classes/Transform2D.xml:180
+#: doc/classes/Transform2D.xml:178
msgid ""
-"The Y axis of 2×2 basis matrix containing 2 [Vector2]s as its columns: X "
-"axis and Y axis. These vectors can be interpreted as the basis vectors of "
-"local coordinate system traveling with the object."
+"The origin vector (column 2, the third column). Equivalent to array index "
+"[code]2[/code]. The origin vector represents translation."
msgstr ""
-#: doc/classes/Transform2D.xml:185
+#: doc/classes/Transform2D.xml:189
msgid ""
-"[Transform2D] with no translation, rotation or scaling applied. When applied "
-"to other data structures, [constant IDENTITY] performs no transformation."
+"The identity [Transform2D] with no translation, rotation or scaling applied. "
+"When applied to other data structures, [constant IDENTITY] performs no "
+"transformation."
msgstr ""
-#: doc/classes/Transform2D.xml:188
-msgid "[Transform2D] with mirroring applied parallel to the X axis."
+#: doc/classes/Transform2D.xml:192
+msgid "The [Transform2D] that will flip something along the X axis."
msgstr ""
-#: doc/classes/Transform2D.xml:191
-msgid "[Transform2D] with mirroring applied parallel to the Y axis."
+#: doc/classes/Transform2D.xml:195
+msgid "The [Transform2D] that will flip something along the Y axis."
msgstr ""
#: doc/classes/Translation.xml:4
@@ -52161,7 +53476,8 @@ msgid "Returns the column's cell mode."
msgstr ""
#: doc/classes/TreeItem.xml:121
-msgid "Returns the TreeItem's child items."
+msgid ""
+"Returns the TreeItem's first child item or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:130
@@ -52193,28 +53509,38 @@ msgid "Returns the icon [Texture2D] region as [Rect2]."
msgstr ""
#: doc/classes/TreeItem.xml:199
-msgid "Returns the next TreeItem in the tree."
+#, fuzzy
+msgid ""
+"Returns the next TreeItem in the tree or a null object if there is none."
msgstr ""
+"Возвращает поÑледний Ñлемент маÑÑива, или[code]null[/code] еÑли маÑÑив "
+"пуÑтой."
#: doc/classes/TreeItem.xml:208
msgid ""
-"Returns the next visible TreeItem in the tree.\n"
+"Returns the next visible TreeItem in the tree or a null object if there is "
+"none.\n"
"If [code]wrap[/code] is enabled, the method will wrap around to the first "
"visible element in the tree when called on the last visible element, "
"otherwise it returns [code]null[/code]."
msgstr ""
#: doc/classes/TreeItem.xml:216
-msgid "Returns the parent TreeItem."
+msgid "Returns the parent TreeItem or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:223
-msgid "Returns the previous TreeItem in the tree."
+#, fuzzy
+msgid ""
+"Returns the previous TreeItem in the tree or a null object if there is none."
msgstr ""
+"Возвращает первый Ñлемент в маÑÑиве, или [code]null[/code] еÑли маÑÑив "
+"пуÑтой."
#: doc/classes/TreeItem.xml:232
msgid ""
-"Returns the previous visible TreeItem in the tree.\n"
+"Returns the previous visible TreeItem in the tree or a null object if there "
+"is none.\n"
"If [code]wrap[/code] is enabled, the method will wrap around to the last "
"visible element in the tree when called on the first visible element, "
"otherwise it returns [code]null[/code]."
@@ -52724,6 +54050,10 @@ msgid ""
"A simple server that opens a UDP socket and returns connected "
"[PacketPeerUDP] upon receiving new packets. See also [method PacketPeerUDP."
"connect_to_host].\n"
+"After starting the server ([method listen]), you will need to [method poll] "
+"it at regular intervals (e.g. inside [method Node._process]) for it to "
+"process new packets, delivering them to the appropriate [PacketPeerUDP], and "
+"taking new connections.\n"
"Below a small example of how it can be used:\n"
"[codeblock]\n"
"# server.gd\n"
@@ -52736,6 +54066,7 @@ msgid ""
" server.listen(4242)\n"
"\n"
"func _process(delta):\n"
+" server.poll() # Important!\n"
" if server.is_connection_available():\n"
" var peer : PacketPeerUDP = server.take_connection()\n"
" var pkt = peer.get_packet()\n"
@@ -52771,35 +54102,55 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/UDPServer.xml:60
+#: doc/classes/UDPServer.xml:62
msgid ""
-"Returns [code]true[/code] if a packet with a new address/port combination is "
-"received on the socket."
+"Returns [code]true[/code] if a packet with a new address/port combination "
+"was received on the socket."
msgstr ""
-#: doc/classes/UDPServer.xml:67
+#: doc/classes/UDPServer.xml:69
msgid ""
"Returns [code]true[/code] if the socket is open and listening on a port."
msgstr ""
-#: doc/classes/UDPServer.xml:78
+#: doc/classes/UDPServer.xml:80
msgid ""
"Starts the server by opening a UDP socket listening on the given port. You "
"can optionally specify a [code]bind_address[/code] to only listen for "
"packets sent to that address. See also [method PacketPeerUDP.listen]."
msgstr ""
-#: doc/classes/UDPServer.xml:85
+#: doc/classes/UDPServer.xml:87
+msgid ""
+"Call this method at regular intervals (e.g. inside [method Node._process]) "
+"to process new packets. And packet from known address/port pair will be "
+"delivered to the appropriate [PacketPeerUDP], any packet received from an "
+"unknown address/port pair will be added as a pending connection (see [method "
+"is_connection_available], [method take_connection]). The maximum number of "
+"pending connection is defined via [member max_pending_connections]."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:94
+msgid ""
+"Stops the server, closing the UDP socket if open. Will close all connected "
+"[PacketPeerUDP] accepted via [method take_connection] (remote peers will not "
+"be notified)."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:101
msgid ""
-"Stops the server, closing the UDP socket if open. Will not disconnect any "
-"connected [PacketPeerUDP]."
+"Returns the first pending connection (connected to the appropriate address/"
+"port). Will return [code]null[/code] if no new connection is available. See "
+"also [method is_connection_available], [method PacketPeerUDP."
+"connect_to_host]."
msgstr ""
-#: doc/classes/UDPServer.xml:92
+#: doc/classes/UDPServer.xml:107
msgid ""
-"Returns a [PacketPeerUDP] connected to the address/port combination of the "
-"first packet in queue. Will return [code]null[/code] if no packet is in "
-"queue. See also [method PacketPeerUDP.connect_to_host]."
+"Define the maximum number of pending connections, during [method poll], any "
+"new pending connection exceeding that value will be automatically dropped. "
+"Setting this value to [code]0[/code] effectively prevents any new pending "
+"connection to be accepted (e.g. when all your players have connected)."
msgstr ""
#: doc/classes/UndoRedo.xml:4
@@ -53411,6 +54762,8 @@ msgstr ""
#: doc/classes/Vector2.xml:4
msgid "Vector used for 2D math using floating point coordinates."
msgstr ""
+"Вектор иÑпользуемый Ð´Ð»Ñ 2D математики Ñ Ð¸Ñпользованием чиÑел Ñ Ð¿Ð»Ð°Ð²Ð°ÑŽÑ‰ÐµÐ¹ "
+"точкой."
#: doc/classes/Vector2.xml:7
msgid ""
@@ -53422,256 +54775,361 @@ msgid ""
"code] if it's equal to [code]Vector2(0, 0)[/code]. Otherwise, a Vector2 will "
"always evaluate to [code]true[/code]."
msgstr ""
+"2-ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÐµÐ½Ñ‚Ð½Ð°Ñ Ñтруктура ÐºÐ¾Ñ‚Ð¾Ñ€Ð°Ñ Ð¸ÑпользуетÑÑ Ð´Ð»Ñ Ð¿Ñ€ÐµÐ´ÑÑ‚Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð¿Ð¾Ð·Ð¸Ñ†Ð¸Ð¸ в 2D "
+"проÑтранÑтве или любой другой пары чиÑловых значений.\n"
+"Она иÑпользует чиÑла Ñ Ð¿Ð»Ð°Ð²Ð°ÑŽÑ‰ÐµÐ¹ точкой. ИÑпользуйте [Vector2i] еÑли вам "
+"нужны целочиÑленные координаты.\n"
+"[b]Заметка:[/b] Ð’ контекÑте булевых значений, Vector2 будет преобразован в "
+"[code]false[/code] еÑли он равен [code]Vector2(0, 0)[/code]. Иначе, Vector2 "
+"вÑегда будет преобразован в [code]true[/code]."
#: doc/classes/Vector2.xml:21
msgid "Constructs a new [Vector2] from [Vector2i]."
-msgstr ""
+msgstr "Создаёт новый [Vector2] из [Vector2i]."
#: doc/classes/Vector2.xml:32
msgid ""
"Constructs a new [Vector2] from the given [code]x[/code] and [code]y[/code]."
msgstr ""
+"Создаёт новый [Vector2] иÑÐ¿Ð¾Ð»ÑŒÐ·ÑƒÑ Ð·Ð°Ð´Ð°Ð½Ð½Ñ‹Ðµ [code]x[/code] и [code]y[/code]."
#: doc/classes/Vector2.xml:39 doc/classes/Vector2i.xml:39
#: doc/classes/Vector3.xml:41
msgid ""
"Returns a new vector with all components in absolute values (i.e. positive)."
msgstr ""
+"Возвращает новый вектор в котором вÑе компоненты будут абÑолютными "
+"значениÑми (Ñ‚.е положительными)."
#: doc/classes/Vector2.xml:46
+#, fuzzy
msgid ""
-"Returns the vector's angle in radians with respect to the X axis, or [code]"
-"(1, 0)[/code] vector.\n"
+"Returns this vector's angle with respect to the X axis, or [code](1, 0)[/"
+"code] vector, in radians.\n"
"Equivalent to the result of [method @GDScript.atan2] when called with the "
-"vector's [member x] and [member y] as parameters: [code]atan2(x, y)[/code]."
+"vector's [member y] and [member x] as parameters: [code]atan2(y, x)[/code]."
msgstr ""
+"Возвращает угол вектор в радианах Ñ ÑƒÑ‡Ñ‘Ñ‚Ð¾Ð¼ оÑи X, или вектора [code](1, 0)[/"
+"code].\n"
+"Ðналогично результату [method @GDScript.atan2] который вызван Ñ ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÐµÐ½Ñ‚Ð°Ð¼Ð¸ "
+"вектора [member x] и [member y] как параметры: [code]atan2(x, y)[/code]."
#: doc/classes/Vector2.xml:56
-msgid "Returns the angle in radians between the two vectors."
-msgstr ""
+#, fuzzy
+msgid "Returns the angle to the given vector, in radians."
+msgstr "Возвращает минимальный угол указанного вектора."
#: doc/classes/Vector2.xml:65
+#, fuzzy
msgid ""
-"Returns the angle in radians between the line connecting the two points and "
-"the X coordinate."
+"Returns the angle between the line connecting the two points and the X axis, "
+"in radians."
msgstr ""
+"Возвращает угол в радианах между линией ÑоединÑющей две точки и X координату."
-#: doc/classes/Vector2.xml:72 doc/classes/Vector2i.xml:46
-msgid "Returns the ratio of [member x] to [member y]."
-msgstr ""
+#: doc/classes/Vector2.xml:72
+#, fuzzy
+msgid ""
+"Returns the aspect ratio of this vector, the ratio of [member x] to [member "
+"y]."
+msgstr "Возвращает Ñоотношение [member x] к [member y]."
#: doc/classes/Vector2.xml:81 doc/classes/Vector3.xml:59
msgid ""
"Returns the vector \"bounced off\" from a plane defined by the given normal."
msgstr ""
+"Возвращает вектор \"отÑкока\" от плоÑкоÑти определённой заданной нормалью."
#: doc/classes/Vector2.xml:88
-msgid "Returns the vector with all components rounded up."
-msgstr ""
+#, fuzzy
+msgid ""
+"Returns the vector with all components rounded up (towards positive "
+"infinity)."
+msgstr "Возвращает вектор в котором вÑе компоненты округлены вниз."
#: doc/classes/Vector2.xml:97
-msgid "Returns the vector with a maximum length."
+#, fuzzy
+msgid ""
+"Returns the vector with a maximum length by limiting its length to "
+"[code]length[/code]."
msgstr ""
+"Возвращает вектор уменьшенный до единичной длины. Эквивалентно [code]v / v."
+"length()[/code]."
#: doc/classes/Vector2.xml:106
-msgid ""
-"Returns the 2-dimensional analog of the cross product with the given vector."
-msgstr ""
+#, fuzzy
+msgid "Returns the cross product of this vector and [code]with[/code]."
+msgstr "Возвращает ÑкалÑрное произведение Ñ Ð²ÐµÐºÑ‚Ð¾Ñ€Ð¾Ð¼ [code]b[/code]."
#: doc/classes/Vector2.xml:121
+#, fuzzy
msgid ""
"Cubically interpolates between this vector and [code]b[/code] using "
"[code]pre_a[/code] and [code]post_b[/code] as handles, and returns the "
-"result at position [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation."
+"result at position [code]t[/code]. [code]t[/code] is on the range of 0.0 to "
+"1.0, representing the amount of interpolation."
msgstr ""
+"КубичеÑкое Ñглаживание между Ñтим вектором и [code]b[/code] иÑÐ¿Ð¾Ð»ÑŒÐ·ÑƒÑ "
+"[code]pre_a[/code] и [code]post_b[/code] Ð´Ð»Ñ ÑƒÐ¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ. Возвращает "
+"результат на позиции [code]t[/code]. [code]t[/code] лежит в диапазоне "
+"[code]0.0 - 1.0[/code] и предÑтавлÑет Ñилу интерполÑции."
#: doc/classes/Vector2.xml:130 doc/classes/Vector3.xml:99
msgid ""
"Returns the normalized vector pointing from this vector to [code]b[/code]."
msgstr ""
+"Возвращает нормализованный вектор указывающий из Ñтого вектора в вектор "
+"[code]b[/code]."
-#: doc/classes/Vector2.xml:139
+#: doc/classes/Vector2.xml:139 doc/classes/Vector3.xml:108
+#, fuzzy
msgid ""
-"Returns the squared distance to vector [code]b[/code]. Prefer this function "
-"over [method distance_to] if you need to sort vectors or need the squared "
-"distance for some formula."
+"Returns the squared distance between this vector and [code]b[/code].\n"
+"This method runs faster than [method distance_to], so prefer it if you need "
+"to compare vectors or need the squared distance for some formula."
msgstr ""
+"Возвращает раÑÑтоÑние в квадрате до [code]b[/code]. Эта Ñ„ÑƒÐ½ÐºÑ†Ð¸Ñ "
+"предпочтительнее чем [method distance_to] еÑли вам нужно Ñортировать векторы "
+"или нужно раÑÑтоÑние в квадрате Ð´Ð»Ñ ÐºÐ°ÐºÐ¾Ð¹-то формулы."
-#: doc/classes/Vector2.xml:148
-msgid "Returns the distance to vector [code]b[/code]."
-msgstr ""
+#: doc/classes/Vector2.xml:149
+#, fuzzy
+msgid "Returns the distance between this vector and [code]to[/code]."
+msgstr "Возвращает раÑÑтоÑние до вектора [code]b[/code]."
-#: doc/classes/Vector2.xml:157
-msgid "Returns the dot product with vector [code]b[/code]."
+#: doc/classes/Vector2.xml:158
+msgid ""
+"Returns the dot product of this vector and [code]with[/code]. This can be "
+"used to compare the angle between two vectors. For example, this can be used "
+"to determine whether an enemy is facing the player.\n"
+"The dot product will be [code]0[/code] for a straight angle (90 degrees), "
+"greater than 0 for angles narrower than 90 degrees and lower than 0 for "
+"angles wider than 90 degrees.\n"
+"When using unit (normalized) vectors, the result will always be between "
+"[code]-1.0[/code] (180 degree angle) when the vectors are facing opposite "
+"directions, and [code]1.0[/code] (0 degree angle) when the vectors are "
+"aligned.\n"
+"[b]Note:[/b] [code]a.dot(b)[/code] is equivalent to [code]b.dot(a)[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:164
-msgid "Returns the vector with all components rounded down."
-msgstr ""
+#: doc/classes/Vector2.xml:168
+#, fuzzy
+msgid ""
+"Returns the vector with all components rounded down (towards negative "
+"infinity)."
+msgstr "Возвращает вектор в котором вÑе компоненты округлены вниз."
-#: doc/classes/Vector2.xml:173 doc/classes/Vector3.xml:149
+#: doc/classes/Vector2.xml:177 doc/classes/Vector3.xml:153
msgid ""
"Returns [code]true[/code] if this vector and [code]v[/code] are "
"approximately equal, by running [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
+"Возвращает [code]true[/code] еÑли Ñтот вектор и [code]v[/code] "
+"приблизительно равны, запуÑÐºÐ°Ñ [method @GDScript.is_equal_approx] Ð´Ð»Ñ "
+"каждого компонента."
-#: doc/classes/Vector2.xml:180 doc/classes/Vector3.xml:156
-msgid "Returns [code]true[/code] if the vector is normalized."
-msgstr ""
+#: doc/classes/Vector2.xml:184 doc/classes/Vector3.xml:160
+#, fuzzy
+msgid ""
+"Returns [code]true[/code] if the vector is normalized, and false otherwise."
+msgstr "Возвращает [code]true[/code] еÑли вектор нормализован."
-#: doc/classes/Vector2.xml:187 doc/classes/Vector3.xml:163
-msgid "Returns the vector's length."
-msgstr ""
+#: doc/classes/Vector2.xml:191 doc/classes/Vector3.xml:167
+#, fuzzy
+msgid "Returns the length (magnitude) of this vector."
+msgstr "Возвращает минимальный угол указанного вектора."
-#: doc/classes/Vector2.xml:194
+#: doc/classes/Vector2.xml:198 doc/classes/Vector3.xml:174
+#, fuzzy
msgid ""
-"Returns the vector's length squared. Prefer this method over [method length] "
-"if you need to sort vectors or need the squared length for some formula."
+"Returns the squared length (squared magnitude) of this vector.\n"
+"This method runs faster than [method length], so prefer it if you need to "
+"compare vectors or need the squared distance for some formula."
msgstr ""
+"Возвращает длину вектора в квадрате. Эта Ñ„ÑƒÐ½ÐºÑ†Ð¸Ñ Ð¿Ñ€ÐµÐ´Ð¿Ð¾Ñ‡Ñ‚Ð¸Ñ‚ÐµÐ»ÑŒÐ½ÐµÐµ чем "
+"[method length] еÑли вам нужно Ñортировать вектора или нужна длина в "
+"квадрате Ð´Ð»Ñ ÐºÐ°ÐºÐ¾Ð¹-то формулы."
-#: doc/classes/Vector2.xml:205
+#: doc/classes/Vector2.xml:210 doc/classes/Vector3.xml:186
+#, fuzzy
msgid ""
"Returns the result of the linear interpolation between this vector and "
-"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation."
+"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is on the range of "
+"0.0 to 1.0, representing the amount of interpolation."
msgstr ""
+"Возвращает результат линейного ÑÐ³Ð»Ð°Ð¶Ð¸Ð²Ð°Ð½Ð¸Ñ Ð¼ÐµÐ¶Ð´Ñƒ Ñтим вектором и [code]b[/"
+"code] на значение [code]t[/code]. [code]t[/code] Ñто диапазон [code]0.0 - "
+"1.0[/code], предÑтавлÑющий Ñилу ÑглаживаниÑ."
-#: doc/classes/Vector2.xml:216 doc/classes/Vector3.xml:206
+#: doc/classes/Vector2.xml:221
msgid ""
"Moves the vector toward [code]to[/code] by the fixed [code]delta[/code] "
"amount."
msgstr ""
+"Сдвигает вектор к [code]to[/code] на фикÑированное значение [code]delta[/"
+"code]."
-#: doc/classes/Vector2.xml:223 doc/classes/Vector3.xml:213
+#: doc/classes/Vector2.xml:228 doc/classes/Vector3.xml:218
msgid ""
"Returns the vector scaled to unit length. Equivalent to [code]v / v.length()"
"[/code]."
msgstr ""
+"Возвращает вектор уменьшенный до единичной длины. Эквивалентно [code]v / v."
+"length()[/code]."
-#: doc/classes/Vector2.xml:232 doc/classes/Vector3.xml:231
+#: doc/classes/Vector2.xml:237 doc/classes/Vector3.xml:236
+#, fuzzy
msgid ""
-"Returns a vector composed of the [code]fposmod[/code] of this vector's "
+"Returns a vector composed of the [method @GDScript.fposmod] of this vector's "
"components and [code]mod[/code]."
msgstr ""
+"Возвращает вектор поÑтроенный через [code]fposmod[/code] на иÑходных "
+"компонентах вектора и [code]mod[/code]."
-#: doc/classes/Vector2.xml:241 doc/classes/Vector3.xml:240
+#: doc/classes/Vector2.xml:246 doc/classes/Vector3.xml:245
+#, fuzzy
msgid ""
-"Returns a vector composed of the [code]fposmod[/code] of this vector's "
+"Returns a vector composed of the [method @GDScript.fposmod] of this vector's "
"components and [code]modv[/code]'s components."
msgstr ""
+"Возвращает вектор поÑтроенный через [code]fposmod[/code] на иÑходных "
+"компонентах вектора и компонентах [code]modv[/code]."
-#: doc/classes/Vector2.xml:250 doc/classes/Vector3.xml:249
+#: doc/classes/Vector2.xml:255
msgid "Returns the vector projected onto the vector [code]b[/code]."
-msgstr ""
+msgstr "Возвращает вектор Ñпроецированный на вектор [code]b[/code]."
-#: doc/classes/Vector2.xml:259 doc/classes/Vector3.xml:258
+#: doc/classes/Vector2.xml:264
msgid "Returns the vector reflected from a plane defined by the given normal."
msgstr ""
+"Возвращает вектор отраженный от плоÑкоÑти определенной заданной нормалью."
-#: doc/classes/Vector2.xml:268
+#: doc/classes/Vector2.xml:273
msgid ""
"Returns the vector rotated by [code]phi[/code] radians. See also [method "
"@GDScript.deg2rad]."
msgstr ""
+"Возвращает вектор Ð²Ñ€Ð°Ñ‰ÐµÐ½Ð¸Ñ Ð½Ð° [code]phi[/code] радиан. См. также [method "
+"@GDScript.deg2rad]."
-#: doc/classes/Vector2.xml:275 doc/classes/Vector3.xml:276
+#: doc/classes/Vector2.xml:280
msgid ""
"Returns the vector with all components rounded to the nearest integer, with "
"halfway cases rounded away from zero."
msgstr ""
+"Возвращает вектор в котором вÑе компоненты округлены до ближайшего "
+"целочиÑленного значениÑ."
-#: doc/classes/Vector2.xml:282 doc/classes/Vector2i.xml:53
-#: doc/classes/Vector3.xml:283 doc/classes/Vector3i.xml:55
+#: doc/classes/Vector2.xml:287
+#, fuzzy
msgid ""
"Returns the vector with each component set to one or negative one, depending "
-"on the signs of the components."
+"on the signs of the components, or zero if the component is zero, by calling "
+"[method @GDScript.sign] on each component."
msgstr ""
+"Возвращает вектор в котором вÑе компоненты уÑтановлены в 1 или -1, в "
+"завиÑимоÑти от знаков перед компонентами иÑходного вектора."
-#: doc/classes/Vector2.xml:293 doc/classes/Vector3.xml:294
+#: doc/classes/Vector2.xml:298 doc/classes/Vector3.xml:299
+#, fuzzy
msgid ""
"Returns the result of spherical linear interpolation between this vector and "
-"[code]b[/code], by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation.\n"
+"[code]b[/code], by amount [code]t[/code]. [code]t[/code] is on the range of "
+"0.0 to 1.0, representing the amount of interpolation.\n"
"[b]Note:[/b] Both vectors must be normalized."
msgstr ""
+"Возвращает результат ÑферичеÑкого линейного ÑÐ³Ð»Ð°Ð¶Ð¸Ð²Ð°Ð½Ð¸Ñ Ð¼ÐµÐ¶Ð´Ñƒ Ñтим вектором "
+"и [code]b[/code], на значение [code]t[/code]. [code]t[/code] лежит в "
+"диапазоне [code]0.0 - 1.0[/code], и предÑтавлÑет Ñилу ÑглаживаниÑ.\n"
+"[b]Заметка:[/b] Оба вектора должны быть нормализованы."
-#: doc/classes/Vector2.xml:303 doc/classes/Vector3.xml:304
-msgid ""
-"Returns the component of the vector along a plane defined by the given "
-"normal."
+#: doc/classes/Vector2.xml:308 doc/classes/Vector3.xml:309
+#, fuzzy
+msgid "Returns this vector slid along a plane defined by the given normal."
msgstr ""
+"Возвращает вектор отраженный от плоÑкоÑти определенной заданной нормалью."
-#: doc/classes/Vector2.xml:312 doc/classes/Vector3.xml:313
-msgid "Returns the vector snapped to a grid with the given size."
+#: doc/classes/Vector2.xml:317 doc/classes/Vector3.xml:318
+#, fuzzy
+msgid ""
+"Returns this vector with each component snapped to the nearest multiple of "
+"[code]step[/code]. This can also be used to round to an arbitrary number of "
+"decimals."
msgstr ""
+"Возвращает вектор в котором вÑе компоненты округлены до ближайшего "
+"целочиÑленного значениÑ."
-#: doc/classes/Vector2.xml:319
-msgid "Returns a perpendicular vector."
+#: doc/classes/Vector2.xml:324
+msgid ""
+"Returns a perpendicular vector rotated 90 degrees counter-clockwise compared "
+"to the original, with the same length."
msgstr ""
-#: doc/classes/Vector2.xml:325 doc/classes/Vector2i.xml:59
-#: doc/classes/Vector3.xml:326 doc/classes/Vector3i.xml:61
+#: doc/classes/Vector2.xml:330 doc/classes/Vector2i.xml:59
+#: doc/classes/Vector3.xml:332 doc/classes/Vector3i.xml:61
msgid ""
"The vector's X component. Also accessible by using the index position [code]"
"[0][/code]."
msgstr ""
+"X компонент вектора. Может быть доÑтупен через Ð¸Ð½Ð´ÐµÐºÑ [code][0][/code]."
-#: doc/classes/Vector2.xml:328 doc/classes/Vector2i.xml:62
-#: doc/classes/Vector3.xml:329 doc/classes/Vector3i.xml:64
+#: doc/classes/Vector2.xml:333 doc/classes/Vector2i.xml:62
+#: doc/classes/Vector3.xml:335 doc/classes/Vector3i.xml:64
msgid ""
"The vector's Y component. Also accessible by using the index position [code]"
"[1][/code]."
msgstr ""
+"Y компонент вектора. Может быть доÑтупен через Ð¸Ð½Ð´ÐµÐºÑ [code][1][/code]."
-#: doc/classes/Vector2.xml:333 doc/classes/Vector2i.xml:67
+#: doc/classes/Vector2.xml:338 doc/classes/Vector2i.xml:67
#: doc/classes/Vector3i.xml:72
msgid "Enumerated value for the X axis."
-msgstr ""
+msgstr "Значение оÑи X."
-#: doc/classes/Vector2.xml:336 doc/classes/Vector2i.xml:70
+#: doc/classes/Vector2.xml:341 doc/classes/Vector2i.xml:70
#: doc/classes/Vector3i.xml:75
msgid "Enumerated value for the Y axis."
-msgstr ""
+msgstr "Значение оÑи Y."
-#: doc/classes/Vector2.xml:339 doc/classes/Vector2i.xml:73
-#: doc/classes/Vector3.xml:346 doc/classes/Vector3i.xml:81
-msgid "Zero vector."
-msgstr ""
+#: doc/classes/Vector2.xml:344 doc/classes/Vector2i.xml:73
+#: doc/classes/Vector3.xml:352 doc/classes/Vector3i.xml:81
+#, fuzzy
+msgid "Zero vector, a vector with all components set to [code]0[/code]."
+msgstr "Возвращает новый вектор у которого вÑе компоненты округлены вверх."
-#: doc/classes/Vector2.xml:342 doc/classes/Vector2i.xml:76
-#: doc/classes/Vector3.xml:349 doc/classes/Vector3i.xml:84
-msgid "One vector."
-msgstr ""
+#: doc/classes/Vector2.xml:347 doc/classes/Vector2i.xml:76
+#: doc/classes/Vector3.xml:355 doc/classes/Vector3i.xml:84
+#, fuzzy
+msgid "One vector, a vector with all components set to [code]1[/code]."
+msgstr "Возвращает новый вектор у которого вÑе компоненты округлены вверх."
-#: doc/classes/Vector2.xml:345 doc/classes/Vector3.xml:352
-msgid "Infinity vector."
+#: doc/classes/Vector2.xml:350 doc/classes/Vector3.xml:358
+msgid ""
+"Infinity vector, a vector with all components set to [constant @GDScript."
+"INF]."
msgstr ""
-#: doc/classes/Vector2.xml:348 doc/classes/Vector2i.xml:79
-#: doc/classes/Vector3.xml:355 doc/classes/Vector3i.xml:87
-msgid "Left unit vector."
+#: doc/classes/Vector2.xml:353 doc/classes/Vector2i.xml:79
+msgid "Left unit vector. Represents the direction of left."
msgstr ""
-#: doc/classes/Vector2.xml:351 doc/classes/Vector2i.xml:82
-#: doc/classes/Vector3.xml:358 doc/classes/Vector3i.xml:90
-msgid "Right unit vector."
+#: doc/classes/Vector2.xml:356 doc/classes/Vector2i.xml:82
+msgid "Right unit vector. Represents the direction of right."
msgstr ""
-#: doc/classes/Vector2.xml:354 doc/classes/Vector2i.xml:85
-#: doc/classes/Vector3.xml:361 doc/classes/Vector3i.xml:93
-msgid "Up unit vector."
+#: doc/classes/Vector2.xml:359 doc/classes/Vector2i.xml:85
+msgid "Up unit vector. Y is down in 2D, so this vector points -Y."
msgstr ""
-#: doc/classes/Vector2.xml:357 doc/classes/Vector2i.xml:88
-#: doc/classes/Vector3.xml:364 doc/classes/Vector3i.xml:96
-msgid "Down unit vector."
+#: doc/classes/Vector2.xml:362 doc/classes/Vector2i.xml:88
+msgid "Down unit vector. Y is down in 2D, so this vector points +Y."
msgstr ""
#: doc/classes/Vector2i.xml:4
msgid "Vector used for 2D math using integer coordinates."
msgstr ""
+"Вектор иÑпользуемый Ð´Ð»Ñ 2D математики иÑÐ¿Ð¾Ð»ÑŒÐ·ÑƒÑ Ñ†ÐµÐ»Ð¾Ñ‡Ð¸Ñленные координаты."
#: doc/classes/Vector2i.xml:7
msgid ""
@@ -53683,21 +55141,45 @@ msgid ""
"code] if it's equal to [code]Vector2i(0, 0)[/code]. Otherwise, a Vector2i "
"will always evaluate to [code]true[/code]."
msgstr ""
+"2-ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÐµÐ½Ñ‚Ð½Ð°Ñ Ñтруктура ÐºÐ¾Ñ‚Ð¾Ñ€Ð°Ñ Ð¸ÑпользуетÑÑ Ð´Ð»Ñ Ð¿Ñ€ÐµÐ´ÑÑ‚Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð¿Ð¾Ð·Ð¸Ñ†Ð¸Ð¸ в 2D "
+"проÑтранÑтве или любой другой пары чиÑловых значений.\n"
+"Она иÑпользует целочиÑленные Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð¸ поÑтому предпочтительнее чем "
+"[Vector2] когда требуетÑÑ Ñ‚Ð¾Ñ‡Ð½Ð¾ÑÑ‚ÑŒ.\n"
+"[b]Заметка:[/b] Ð’ контекÑте булевых значений, Vector2i будет преобразован в "
+"[code]false[/code] еÑли он равен [code]Vector2i(0, 0)[/code]. Иначе, "
+"Vector2i вÑегда будет преобразован в [code]true[/code]."
#: doc/classes/Vector2i.xml:23
msgid ""
"Constructs a new [Vector2i] from the given [code]x[/code] and [code]y[/code]."
msgstr ""
+"Создаёт новый [Vector2i] иÑÐ¿Ð¾Ð»ÑŒÐ·ÑƒÑ Ð·Ð°Ð´Ð°Ð½Ð½Ñ‹Ðµ [code]x[/code] и [code]y[/code]."
#: doc/classes/Vector2i.xml:32
msgid ""
"Constructs a new [Vector2i] from [Vector2]. The floating point coordinates "
"will be truncated."
msgstr ""
+"Создаёт новый [Vector2i] из [Vector2]. Ð—Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ñ Ð¿Ð»Ð°Ð²Ð°ÑŽÑ‰ÐµÐ¹ точкой будут "
+"округлены."
+
+#: doc/classes/Vector2i.xml:46
+msgid "Returns the ratio of [member x] to [member y]."
+msgstr "Возвращает Ñоотношение [member x] к [member y]."
+
+#: doc/classes/Vector2i.xml:53 doc/classes/Vector3i.xml:55
+msgid ""
+"Returns the vector with each component set to one or negative one, depending "
+"on the signs of the components."
+msgstr ""
+"Возвращает вектор в котором вÑе компоненты уÑтановлены в 1 или -1, в "
+"завиÑимоÑти от знаков перед компонентами иÑходного вектора."
#: doc/classes/Vector3.xml:4
msgid "Vector used for 3D math using floating point coordinates."
msgstr ""
+"Вектор иÑпользуемый Ð´Ð»Ñ 3D математики Ñ Ð¸Ñпользованием координат Ñ Ð¿Ð»Ð°Ð²Ð°ÑŽÑ‰ÐµÐ¹ "
+"точкой."
#: doc/classes/Vector3.xml:7
msgid ""
@@ -53709,135 +55191,228 @@ msgid ""
"code] if it's equal to [code]Vector3(0, 0, 0)[/code]. Otherwise, a Vector3 "
"will always evaluate to [code]true[/code]."
msgstr ""
+"3-ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÐµÐ½Ñ‚Ð½Ð°Ñ Ñтруктура ÐºÐ¾Ñ‚Ð¾Ñ€Ð°Ñ Ð¸ÑпользуетÑÑ Ð´Ð»Ñ Ð¿Ñ€ÐµÐ´ÑÑ‚Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð¿Ð¾Ð·Ð¸Ñ†Ð¸Ð¸ в 3D "
+"проÑтранÑтве или любой другой пары чиÑловых значений.\n"
+"Она иÑпользует чиÑла Ñ Ð¿Ð»Ð°Ð²Ð°ÑŽÑ‰ÐµÐ¹ точкой. ИÑпользуйте [Vector3i] еÑли вам "
+"нужны целочиÑленные координаты.\n"
+"[b]Заметка:[/b] Ð’ контекÑте булевых значений, Vector3 будет преобразован в "
+"[code]false[/code] еÑли он равен [code]Vector3(0, 0, 0)[/code]. Иначе, "
+"Vector3 вÑегда будет преобразован в [code]true[/code]."
#: doc/classes/Vector3.xml:21
msgid "Constructs a new [Vector3] from [Vector3i]."
-msgstr ""
+msgstr "Формирует новый [Vector3] из [Vector3i]."
#: doc/classes/Vector3.xml:34
msgid "Returns a [Vector3] with the given components."
-msgstr ""
+msgstr "Возвращает [Vector3] Ñ ÑƒÐºÐ°Ð·Ð°Ð½Ð½Ñ‹Ð¼Ð¸ компонентами."
#: doc/classes/Vector3.xml:50
-msgid "Returns the minimum angle to the given vector."
-msgstr ""
+#, fuzzy
+msgid "Returns the minimum angle to the given vector, in radians."
+msgstr "Возвращает минимальный угол указанного вектора."
#: doc/classes/Vector3.xml:66
-msgid "Returns a new vector with all components rounded up."
-msgstr ""
+#, fuzzy
+msgid ""
+"Returns a new vector with all components rounded up (towards positive "
+"infinity)."
+msgstr "Возвращает новый вектор у которого вÑе компоненты округлены вниз."
#: doc/classes/Vector3.xml:75
-msgid "Returns the cross product with [code]b[/code]."
-msgstr ""
+#, fuzzy
+msgid "Returns the cross product of this vector and [code]b[/code]."
+msgstr "Возвращает ÑкалÑрное произведение Ñ Ð²ÐµÐºÑ‚Ð¾Ñ€Ð¾Ð¼ [code]b[/code]."
#: doc/classes/Vector3.xml:90
+#, fuzzy
msgid ""
"Performs a cubic interpolation between vectors [code]pre_a[/code], [code]a[/"
"code], [code]b[/code], [code]post_b[/code] ([code]a[/code] is current), by "
-"the given amount [code]t[/code]. [code]t[/code] is in the range of [code]0.0 "
-"- 1.0[/code], representing the amount of interpolation."
+"the given amount [code]t[/code]. [code]t[/code] is on the range of 0.0 to "
+"1.0, representing the amount of interpolation."
msgstr ""
+"ВыполнÑет кубичеÑкое Ñглаживание между векторами [code]pre_a[/code], "
+"[code]a[/code], [code]b[/code], [code]post_b[/code] ([code]a[/code] Ñто "
+"текущий вектор),на заданное значение [code]t[/code]. [code]t[/code] Ñто "
+"диапазон [code]0.0 - 1.0[/code], предÑтавлÑющий Ñилу ÑглаживаниÑ."
-#: doc/classes/Vector3.xml:108
-msgid ""
-"Returns the squared distance to [code]b[/code]. Prefer this function over "
-"[method distance_to] if you need to sort vectors or need the squared "
-"distance for some formula."
-msgstr ""
-
-#: doc/classes/Vector3.xml:117
-msgid "Returns the distance to [code]b[/code]."
-msgstr ""
+#: doc/classes/Vector3.xml:118
+#, fuzzy
+msgid "Returns the distance between this vector and [code]b[/code]."
+msgstr "Возвращает раÑÑтоÑние до вектора [code]b[/code]."
-#: doc/classes/Vector3.xml:126
-msgid "Returns the dot product with [code]b[/code]."
+#: doc/classes/Vector3.xml:127
+msgid ""
+"Returns the dot product of this vector and [code]b[/code]. This can be used "
+"to compare the angle between two vectors. For example, this can be used to "
+"determine whether an enemy is facing the player.\n"
+"The dot product will be [code]0[/code] for a straight angle (90 degrees), "
+"greater than 0 for angles narrower than 90 degrees and lower than 0 for "
+"angles wider than 90 degrees.\n"
+"When using unit (normalized) vectors, the result will always be between "
+"[code]-1.0[/code] (180 degree angle) when the vectors are facing opposite "
+"directions, and [code]1.0[/code] (0 degree angle) when the vectors are "
+"aligned.\n"
+"[b]Note:[/b] [code]a.dot(b)[/code] is equivalent to [code]b.dot(a)[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:133
-msgid "Returns a new vector with all components rounded down."
-msgstr ""
+#: doc/classes/Vector3.xml:137
+#, fuzzy
+msgid ""
+"Returns a new vector with all components rounded down (towards negative "
+"infinity)."
+msgstr "Возвращает новый вектор у которого вÑе компоненты округлены вниз."
-#: doc/classes/Vector3.xml:140
+#: doc/classes/Vector3.xml:144
msgid ""
"Returns the inverse of the vector. This is the same as [code]Vector3( 1.0 / "
"v.x, 1.0 / v.y, 1.0 / v.z )[/code]."
msgstr ""
+"Возвращает инвертированный вектор. Это тоже Ñамое что и [code]Vector3( 1.0 / "
+"v.x, 1.0 / v.y, 1.0 / v.z )[/code]."
-#: doc/classes/Vector3.xml:170
+#: doc/classes/Vector3.xml:193 doc/classes/Vector3i.xml:41
+#, fuzzy
msgid ""
-"Returns the vector's length squared. Prefer this function over [method "
-"length] if you need to sort vectors or need the squared length for some "
-"formula."
+"Returns the axis of the vector's largest value. See [code]AXIS_*[/code] "
+"constants. If all components are equal, this method returns [constant "
+"AXIS_X]."
msgstr ""
+"Возвращает оÑÑŒ Ñ Ð½Ð°Ð¸Ð±Ð¾Ð»ÑŒÑˆÐ¸Ð¼Ð¸ значениÑми вектора. Смотрите конÑтанты "
+"[code]AXIS_*[/code]."
-#: doc/classes/Vector3.xml:181
+#: doc/classes/Vector3.xml:200 doc/classes/Vector3i.xml:48
+#, fuzzy
msgid ""
-"Returns the result of the linear interpolation between this vector and "
-"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation.."
+"Returns the axis of the vector's smallest value. See [code]AXIS_*[/code] "
+"constants. If all components are equal, this method returns [constant "
+"AXIS_Z]."
msgstr ""
+"Возвращает оÑÑŒ Ñ Ð½Ð°Ð¸Ð¼ÐµÐ½ÑŒÑˆÐ¸Ð¼Ð¸ значениÑми вектора. Смотрите конÑтанты "
+"[code]AXIS_*[/code]."
-#: doc/classes/Vector3.xml:188 doc/classes/Vector3i.xml:41
+#: doc/classes/Vector3.xml:211
+#, fuzzy
msgid ""
-"Returns the axis of the vector's largest value. See [code]AXIS_*[/code] "
-"constants."
+"Moves this vector toward [code]to[/code] by the fixed [code]delta[/code] "
+"amount."
msgstr ""
+"Сдвигает вектор к [code]to[/code] на фикÑированное значение [code]delta[/"
+"code]."
-#: doc/classes/Vector3.xml:195 doc/classes/Vector3i.xml:48
+#: doc/classes/Vector3.xml:227
+msgid "Returns the outer product with [code]b[/code]."
+msgstr "Возвращает внешнее произведение Ñ [code]b[/code]."
+
+#: doc/classes/Vector3.xml:254
+#, fuzzy
+msgid "Returns this vector projected onto another vector [code]b[/code]."
+msgstr "Возвращает вектор Ñпроецированный на вектор [code]b[/code]."
+
+#: doc/classes/Vector3.xml:263
+#, fuzzy
+msgid "Returns this vector reflected from a plane defined by the given normal."
+msgstr ""
+"Возвращает вектор отраженный от плоÑкоÑти определенной заданной нормалью."
+
+#: doc/classes/Vector3.xml:274
+#, fuzzy
msgid ""
-"Returns the axis of the vector's smallest value. See [code]AXIS_*[/code] "
-"constants."
+"Rotates this vector around a given axis by [code]phi[/code] radians. The "
+"axis must be a normalized vector."
msgstr ""
+"Вращает вектор вокруг заданной оÑи на [code]phi[/code] радиан. ОÑÑŒ должна "
+"быть нормализованным вектором."
-#: doc/classes/Vector3.xml:222
-msgid "Returns the outer product with [code]b[/code]."
+#: doc/classes/Vector3.xml:281
+#, fuzzy
+msgid ""
+"Returns this vector with all components rounded to the nearest integer, with "
+"halfway cases rounded away from zero."
msgstr ""
+"Возвращает вектор в котором вÑе компоненты округлены до ближайшего "
+"целочиÑленного значениÑ."
-#: doc/classes/Vector3.xml:269
+#: doc/classes/Vector3.xml:288
+#, fuzzy
msgid ""
-"Rotates the vector around a given axis by [code]phi[/code] radians. The axis "
-"must be a normalized vector."
+"Returns a vector with each component set to one or negative one, depending "
+"on the signs of this vector's components, or zero if the component is zero, "
+"by calling [method @GDScript.sign] on each component."
msgstr ""
+"Возвращает вектор в котором вÑе компоненты уÑтановлены в 1 или -1, в "
+"завиÑимоÑти от знаков перед компонентами иÑходного вектора."
-#: doc/classes/Vector3.xml:320
-msgid "Returns a diagonal matrix with the vector as main diagonal."
+#: doc/classes/Vector3.xml:325
+msgid ""
+"Returns a diagonal matrix with the vector as main diagonal.\n"
+"This is equivalent to a Basis with no rotation or shearing and this vector's "
+"components set as the scale."
msgstr ""
-#: doc/classes/Vector3.xml:332 doc/classes/Vector3i.xml:67
+#: doc/classes/Vector3.xml:338 doc/classes/Vector3i.xml:67
msgid ""
"The vector's Z component. Also accessible by using the index position [code]"
"[2][/code]."
msgstr ""
+"Z компонент вектора. Также может быть доÑтупен по индекÑу [code][2][/code]."
-#: doc/classes/Vector3.xml:337
+#: doc/classes/Vector3.xml:343
msgid ""
"Enumerated value for the X axis. Returned by [method max_axis] and [method "
"min_axis]."
-msgstr ""
+msgstr "Значение оÑи X. ВозвращаетÑÑ [method max_axis] и [method min_axis]."
-#: doc/classes/Vector3.xml:340
+#: doc/classes/Vector3.xml:346
msgid ""
"Enumerated value for the Y axis. Returned by [method max_axis] and [method "
"min_axis]."
-msgstr ""
+msgstr "Значение оÑи Y. ВозвращаетÑÑ [method max_axis] и [method min_axis]."
-#: doc/classes/Vector3.xml:343
+#: doc/classes/Vector3.xml:349
msgid ""
"Enumerated value for the Z axis. Returned by [method max_axis] and [method "
"min_axis]."
+msgstr "Значение оÑи Z. ВозвращаетÑÑ [method max_axis] и [method min_axis]."
+
+#: doc/classes/Vector3.xml:361 doc/classes/Vector3i.xml:87
+msgid ""
+"Left unit vector. Represents the local direction of left, and the global "
+"direction of west."
msgstr ""
-#: doc/classes/Vector3.xml:367 doc/classes/Vector3i.xml:99
-msgid "Forward unit vector."
+#: doc/classes/Vector3.xml:364 doc/classes/Vector3i.xml:90
+msgid ""
+"Right unit vector. Represents the local direction of right, and the global "
+"direction of east."
+msgstr ""
+
+#: doc/classes/Vector3.xml:367 doc/classes/Vector3i.xml:93
+msgid "Up unit vector."
+msgstr "Верхний единичный вектор."
+
+#: doc/classes/Vector3.xml:370 doc/classes/Vector3i.xml:96
+msgid "Down unit vector."
+msgstr "Ðижний единичный вектор."
+
+#: doc/classes/Vector3.xml:373 doc/classes/Vector3i.xml:99
+msgid ""
+"Forward unit vector. Represents the local direction of forward, and the "
+"global direction of north."
msgstr ""
-#: doc/classes/Vector3.xml:370 doc/classes/Vector3i.xml:102
-msgid "Back unit vector."
+#: doc/classes/Vector3.xml:376 doc/classes/Vector3i.xml:102
+msgid ""
+"Back unit vector. Represents the local direction of back, and the global "
+"direction of south."
msgstr ""
#: doc/classes/Vector3i.xml:4
msgid "Vector used for 3D math using integer coordinates."
msgstr ""
+"Вектор иÑпользуемый Ð´Ð»Ñ 3D математики Ñ Ð¸Ñпользованием целочиÑленных "
+"координат."
#: doc/classes/Vector3i.xml:7
msgid ""
@@ -53881,10 +55456,14 @@ msgid ""
"directly.\n"
"[b]Note:[/b] The origin point of your VehicleBody3D will determine the "
"center of gravity of your vehicle so it is better to keep this low and move "
-"the [CollisionShape3D] and [MeshInstance3D] upwards."
+"the [CollisionShape3D] and [MeshInstance3D] upwards.\n"
+"[b]Note:[/b] This class has known issues and isn't designed to provide "
+"realistic 3D vehicle physics. If you want advanced vehicle physics, you will "
+"probably have to write your own physics integration using another "
+"[PhysicsBody3D] class."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:16
+#: doc/classes/VehicleBody3D.xml:17
msgid ""
"Slows down the vehicle by applying a braking force. The vehicle is only "
"slowed down if the wheels are in contact with a surface. The force you need "
@@ -53893,7 +55472,7 @@ msgid ""
"a value in the 25 - 30 range for hard braking."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:19
+#: doc/classes/VehicleBody3D.xml:20
msgid ""
"Accelerates the vehicle by applying an engine force. The vehicle is only "
"speed up if the wheels that have [member VehicleWheel3D.use_as_traction] set "
@@ -53906,7 +55485,7 @@ msgid ""
"A negative value will result in the vehicle reversing."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:25
+#: doc/classes/VehicleBody3D.xml:26
msgid ""
"The steering angle for the vehicle. Setting this to a non-zero value will "
"result in the vehicle turning when it's moving. Wheels that have [member "
@@ -53922,25 +55501,29 @@ msgstr ""
msgid ""
"This node needs to be used as a child node of [VehicleBody3D] and simulates "
"the behavior of one of its wheels. This node also acts as a collider to "
-"detect if the wheel is touching a surface."
+"detect if the wheel is touching a surface.\n"
+"[b]Note:[/b] This class has known issues and isn't designed to provide "
+"realistic 3D vehicle physics. If you want advanced vehicle physics, you will "
+"probably have to write your own physics integration using another "
+"[PhysicsBody3D] class."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:16
+#: doc/classes/VehicleWheel3D.xml:17
msgid "Returns the rotational speed of the wheel in revolutions per minute."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:23
+#: doc/classes/VehicleWheel3D.xml:24
msgid ""
"Returns a value between 0.0 and 1.0 that indicates whether this wheel is "
"skidding. 0.0 is skidding (the wheel has lost grip, e.g. icy terrain), 1.0 "
"means not skidding (the wheel has full grip, e.g. dry asphalt road)."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:30
+#: doc/classes/VehicleWheel3D.xml:31
msgid "Returns [code]true[/code] if this wheel is in contact with a surface."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:36
+#: doc/classes/VehicleWheel3D.xml:37
msgid ""
"Slows down the wheel by applying a braking force. The wheel is only slowed "
"down if it is in contact with a surface. The force you need to apply to "
@@ -53949,7 +55532,7 @@ msgid ""
"- 30 range for hard braking."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:39
+#: doc/classes/VehicleWheel3D.xml:40
msgid ""
"The damping applied to the spring when the spring is being compressed. This "
"value should be between 0.0 (no damping) and 1.0. A value of 0.0 means the "
@@ -53957,7 +55540,7 @@ msgid ""
"is around 0.3 for a normal car, 0.5 for a race car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:42
+#: doc/classes/VehicleWheel3D.xml:43
msgid ""
"The damping applied to the spring when relaxing. This value should be "
"between 0.0 (no damping) and 1.0. This value should always be slightly "
@@ -53965,7 +55548,7 @@ msgid ""
"damping_compression] value of 0.3, try a relaxation value of 0.5."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:45
+#: doc/classes/VehicleWheel3D.xml:46
msgid ""
"Accelerates the wheel by applying an engine force. The wheel is only speed "
"up if it is in contact with a surface. The [member RigidBody3D.mass] of the "
@@ -53976,13 +55559,13 @@ msgid ""
"A negative value will result in the wheel reversing."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:50
+#: doc/classes/VehicleWheel3D.xml:51
msgid ""
"The steering angle for the wheel. Setting this to a non-zero value will "
"result in the vehicle turning when it's moving."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:53
+#: doc/classes/VehicleWheel3D.xml:54
msgid ""
"The maximum force the spring can resist. This value should be higher than a "
"quarter of the [member RigidBody3D.mass] of the [VehicleBody3D] or the "
@@ -53990,28 +55573,28 @@ msgid ""
"obtained by a value that is about 3× to 4× this number."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:56
+#: doc/classes/VehicleWheel3D.xml:57
msgid ""
"This value defines the stiffness of the suspension. Use a value lower than "
"50 for an off-road car, a value between 50 and 100 for a race car and try "
"something around 200 for something like a Formula 1 car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:59
+#: doc/classes/VehicleWheel3D.xml:60
msgid ""
"This is the distance the suspension can travel. As Godot units are "
"equivalent to meters, keep this setting relatively low. Try a value between "
"0.1 and 0.3 depending on the type of car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:62
+#: doc/classes/VehicleWheel3D.xml:63
msgid ""
"If [code]true[/code], this wheel will be turned when the car steers. This "
"value is used in conjunction with [member VehicleBody3D.steering] and "
"ignored if you are using the per-wheel [member steering] value instead."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:65
+#: doc/classes/VehicleWheel3D.xml:66
msgid ""
"If [code]true[/code], this wheel transfers engine force to the ground to "
"propel the vehicle forward. This value is used in conjunction with [member "
@@ -54019,7 +55602,7 @@ msgid ""
"[member engine_force] value instead."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:68
+#: doc/classes/VehicleWheel3D.xml:69
msgid ""
"This determines how much grip this wheel has. It is combined with the "
"friction setting of the surface the wheel is in contact with. 0.0 means no "
@@ -54029,11 +55612,11 @@ msgid ""
"It's best to set this to 1.0 when starting out."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:72
+#: doc/classes/VehicleWheel3D.xml:73
msgid "The radius of the wheel in meters."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:75
+#: doc/classes/VehicleWheel3D.xml:76
msgid ""
"This is the distance in meters the wheel is lowered from its origin point. "
"Don't set this to 0.0 and move the wheel into position, instead move the "
@@ -54042,7 +55625,7 @@ msgid ""
"down to the position it should be in when the car is in rest."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:78
+#: doc/classes/VehicleWheel3D.xml:79
msgid ""
"This value affects the roll of your vehicle. If set to 1.0 for all wheels, "
"your vehicle will be prone to rolling over, while a value of 0.0 will resist "
@@ -54520,7 +56103,7 @@ msgstr ""
#: doc/classes/Viewport.xml:318
msgid ""
"Use fast approximate antialiasing. FXAA is a popular screen-space "
-"antialising method, which is fast but will make the image look blurry, "
+"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."
msgstr ""
@@ -54573,24 +56156,24 @@ msgid ""
"your [WorldEnvironment]."
msgstr ""
-#: doc/classes/Viewport.xml:384
+#: doc/classes/Viewport.xml:381
msgid ""
"Colors each PSSM split for the [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, and yellow."
msgstr ""
-#: doc/classes/Viewport.xml:387
+#: doc/classes/Viewport.xml:384
msgid ""
"Draws the decal atlas used by [Decal]s and light projector textures in the "
"upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/Viewport.xml:402
+#: doc/classes/Viewport.xml:405
msgid "Max value for [enum DefaultCanvasItemTextureFilter] enum."
msgstr ""
-#: doc/classes/Viewport.xml:414
+#: doc/classes/Viewport.xml:417
msgid "Max value for [enum DefaultCanvasItemTextureRepeat] enum."
msgstr ""
@@ -54621,82 +56204,84 @@ msgid ""
"The VisibilityEnabler2D will disable [RigidBody2D], [AnimationPlayer], and "
"other nodes when they are not visible. It will only affect nodes with the "
"same root node as the VisibilityEnabler2D, and the root node itself.\n"
+"If you just want to receive notifications, use [VisibilityNotifier2D] "
+"instead.\n"
"[b]Note:[/b] For performance reasons, VisibilityEnabler2D uses an "
"approximate heuristic with precision determined by [member ProjectSettings."
-"world/2d/cell_size]. If you need exact visibility checking, use another "
+"world/2d/cell_size]. If you need precise visibility checking, use another "
"method such as adding an [Area2D] node as a child of a [Camera2D] node.\n"
"[b]Note:[/b] VisibilityEnabler2D will not affect nodes added after scene "
"initialization."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:20
-#: doc/classes/VisibilityEnabler3D.xml:20
+#: doc/classes/VisibilityEnabler2D.xml:21
+#: doc/classes/VisibilityEnabler3D.xml:21
msgid ""
"Returns whether the enabler identified by given [enum Enabler] constant is "
"active."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:31
-#: doc/classes/VisibilityEnabler3D.xml:31
+#: doc/classes/VisibilityEnabler2D.xml:32
+#: doc/classes/VisibilityEnabler3D.xml:32
msgid ""
"Sets active state of the enabler identified by given [enum Enabler] constant."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:37
+#: doc/classes/VisibilityEnabler2D.xml:38
msgid "If [code]true[/code], [RigidBody2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:40
+#: doc/classes/VisibilityEnabler2D.xml:41
msgid "If [code]true[/code], [AnimatedSprite2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:43
-#: doc/classes/VisibilityEnabler3D.xml:40
+#: doc/classes/VisibilityEnabler2D.xml:44
+#: doc/classes/VisibilityEnabler3D.xml:41
msgid "If [code]true[/code], [AnimationPlayer] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:46
+#: doc/classes/VisibilityEnabler2D.xml:47
msgid "If [code]true[/code], [GPUParticles2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:49
+#: doc/classes/VisibilityEnabler2D.xml:50
msgid ""
"If [code]true[/code], the parent's [method Node._physics_process] will be "
"stopped."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:52
+#: doc/classes/VisibilityEnabler2D.xml:53
msgid ""
"If [code]true[/code], the parent's [method Node._process] will be stopped."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:57
-#: doc/classes/VisibilityEnabler3D.xml:45
+#: doc/classes/VisibilityEnabler2D.xml:58
+#: doc/classes/VisibilityEnabler3D.xml:46
msgid "This enabler will pause [AnimationPlayer] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:60
+#: doc/classes/VisibilityEnabler2D.xml:61
msgid "This enabler will freeze [RigidBody2D] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:63
+#: doc/classes/VisibilityEnabler2D.xml:64
msgid "This enabler will stop [GPUParticles2D] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:66
+#: doc/classes/VisibilityEnabler2D.xml:67
msgid "This enabler will stop the parent's _process function."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:69
+#: doc/classes/VisibilityEnabler2D.xml:70
msgid "This enabler will stop the parent's _physics_process function."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:72
+#: doc/classes/VisibilityEnabler2D.xml:73
msgid "This enabler will stop [AnimatedSprite2D] nodes animations."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:75
-#: doc/classes/VisibilityEnabler3D.xml:51
+#: doc/classes/VisibilityEnabler2D.xml:76
+#: doc/classes/VisibilityEnabler3D.xml:52
msgid "Represents the size of the [enum Enabler] enum."
msgstr ""
@@ -54705,19 +56290,23 @@ msgid ""
"The VisibilityEnabler3D will disable [RigidBody3D] and [AnimationPlayer] "
"nodes when they are not visible. It will only affect other nodes within the "
"same scene as the VisibilityEnabler3D itself.\n"
+"If you just want to receive notifications, use [VisibilityNotifier3D] "
+"instead.\n"
"[b]Note:[/b] VisibilityEnabler3D uses an approximate heuristic for "
"performance reasons. It doesn't take walls and other occlusion into account. "
-"If you need exact visibility checking, use another method such as adding an "
-"[Area3D] node as a child of a [Camera3D] node.\n"
+"The heuristic is an implementation detail and may change in future versions. "
+"If you need precise visibility checking, use another method such as adding "
+"an [Area3D] node as a child of a [Camera3D] node and/or [method Vector3."
+"dot].\n"
"[b]Note:[/b] VisibilityEnabler3D will not affect nodes added after scene "
"initialization."
msgstr ""
-#: doc/classes/VisibilityEnabler3D.xml:37
+#: doc/classes/VisibilityEnabler3D.xml:38
msgid "If [code]true[/code], [RigidBody3D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler3D.xml:48
+#: doc/classes/VisibilityEnabler3D.xml:49
msgid "This enabler will freeze [RigidBody3D] nodes."
msgstr ""
@@ -54731,13 +56320,15 @@ msgid ""
"The VisibilityNotifier2D detects when it is visible on the screen. It also "
"notifies when its bounding rectangle enters or exits the screen or a "
"viewport.\n"
+"If you want nodes to be disabled automatically when they exit the screen, "
+"use [VisibilityEnabler2D] instead.\n"
"[b]Note:[/b] For performance reasons, VisibilityNotifier2D uses an "
"approximate heuristic with precision determined by [member ProjectSettings."
-"world/2d/cell_size]. If you need exact visibility checking, use another "
+"world/2d/cell_size]. If you need precise visibility checking, use another "
"method such as adding an [Area2D] node as a child of a [Camera2D] node."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:17
+#: doc/classes/VisibilityNotifier2D.xml:18
msgid ""
"If [code]true[/code], the bounding rectangle is on the screen.\n"
"[b]Note:[/b] It takes one frame for the node's visibility to be assessed "
@@ -54746,23 +56337,23 @@ msgid ""
"pass."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:24
+#: doc/classes/VisibilityNotifier2D.xml:25
msgid "The VisibilityNotifier2D's bounding rectangle."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:30
+#: doc/classes/VisibilityNotifier2D.xml:31
msgid "Emitted when the VisibilityNotifier2D enters the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:35
+#: doc/classes/VisibilityNotifier2D.xml:36
msgid "Emitted when the VisibilityNotifier2D exits the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:42
+#: doc/classes/VisibilityNotifier2D.xml:43
msgid "Emitted when the VisibilityNotifier2D enters a [Viewport]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:49
+#: doc/classes/VisibilityNotifier2D.xml:50
msgid "Emitted when the VisibilityNotifier2D exits a [Viewport]'s view."
msgstr ""
@@ -54771,13 +56362,16 @@ msgid ""
"The VisibilityNotifier3D detects when it is visible on the screen. It also "
"notifies when its bounding rectangle enters or exits the screen or a "
"[Camera3D]'s view.\n"
+"If you want nodes to be disabled automatically when they exit the screen, "
+"use [VisibilityEnabler3D] instead.\n"
"[b]Note:[/b] VisibilityNotifier3D uses an approximate heuristic for "
"performance reasons. It doesn't take walls and other occlusion into account. "
-"If you need exact visibility checking, use another method such as adding an "
-"[Area3D] node as a child of a [Camera3D] node."
+"The heuristic is an implementation detail and may change in future versions. "
+"If you need precise visibility checking, use another method such as adding "
+"an [Area3D] node as a child of a [Camera3D] node and/or [method Vector3.dot]."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:17
+#: doc/classes/VisibilityNotifier3D.xml:18
msgid ""
"If [code]true[/code], the bounding box is on the screen.\n"
"[b]Note:[/b] It takes one frame for the node's visibility to be assessed "
@@ -54786,23 +56380,23 @@ msgid ""
"pass."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:24
+#: doc/classes/VisibilityNotifier3D.xml:25
msgid "The VisibilityNotifier3D's bounding box."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:32
+#: doc/classes/VisibilityNotifier3D.xml:33
msgid "Emitted when the VisibilityNotifier3D enters a [Camera3D]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:39
+#: doc/classes/VisibilityNotifier3D.xml:40
msgid "Emitted when the VisibilityNotifier3D exits a [Camera3D]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:44
+#: doc/classes/VisibilityNotifier3D.xml:45
msgid "Emitted when the VisibilityNotifier3D enters the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:49
+#: doc/classes/VisibilityNotifier3D.xml:50
msgid "Emitted when the VisibilityNotifier3D exits the screen."
msgstr ""
@@ -55222,6 +56816,12 @@ msgid ""
"exist."
msgstr ""
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:90
+msgid ""
+"Easing function, based on exponent. 0 is constant, 1 is linear, 0 to 1 is "
+"ease-in, 1+ is ease out. Negative values are in-out/out in."
+msgstr ""
+
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:93
msgid ""
"Return the number of digit places after the decimal that the first non-zero "
@@ -56107,6 +57707,7 @@ msgid "A shader for light calculations."
msgstr ""
#: doc/classes/VisualShader.xml:214
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:26
msgid "Represents the size of the [enum Type] enum."
msgstr ""
@@ -56209,6 +57810,24 @@ msgstr ""
msgid "Translated to [code]uniform bool[/code] in the shader language."
msgstr ""
+#: doc/classes/VisualShaderNodeBooleanUniform.xml:15
+#: doc/classes/VisualShaderNodeColorUniform.xml:15
+#: doc/classes/VisualShaderNodeFloatUniform.xml:15
+#: doc/classes/VisualShaderNodeIntUniform.xml:15
+#: doc/classes/VisualShaderNodeTransformUniform.xml:15
+#: doc/classes/VisualShaderNodeVec3Uniform.xml:15
+msgid "A default value to be assigned within the shader."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeBooleanUniform.xml:18
+#: doc/classes/VisualShaderNodeColorUniform.xml:18
+#: doc/classes/VisualShaderNodeFloatUniform.xml:18
+#: doc/classes/VisualShaderNodeIntUniform.xml:18
+#: doc/classes/VisualShaderNodeTransformUniform.xml:18
+#: doc/classes/VisualShaderNodeVec3Uniform.xml:18
+msgid "Enables usage of the [member default_value]."
+msgstr ""
+
#: doc/classes/VisualShaderNodeColorConstant.xml:4
msgid "A [Color] constant to be used within the visual shader graph."
msgstr ""
@@ -57059,49 +58678,49 @@ msgstr ""
msgid "Translated to [code]uniform float[/code] in the shader language."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:15
-#: doc/classes/VisualShaderNodeIntUniform.xml:15
+#: doc/classes/VisualShaderNodeFloatUniform.xml:21
+#: doc/classes/VisualShaderNodeIntUniform.xml:21
msgid ""
"A hint applied to the uniform, which controls the values it can take when "
"set through the inspector."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:18
-#: doc/classes/VisualShaderNodeIntUniform.xml:18
+#: doc/classes/VisualShaderNodeFloatUniform.xml:24
+#: doc/classes/VisualShaderNodeIntUniform.xml:24
msgid ""
"Minimum value for range hints. Used if [member hint] is set to [constant "
"HINT_RANGE] or [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:21
-#: doc/classes/VisualShaderNodeIntUniform.xml:21
+#: doc/classes/VisualShaderNodeFloatUniform.xml:27
+#: doc/classes/VisualShaderNodeIntUniform.xml:27
msgid ""
"Maximum value for range hints. Used if [member hint] is set to [constant "
"HINT_RANGE] or [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:24
-#: doc/classes/VisualShaderNodeIntUniform.xml:24
+#: doc/classes/VisualShaderNodeFloatUniform.xml:30
+#: doc/classes/VisualShaderNodeIntUniform.xml:30
msgid ""
"Step (increment) value for the range hint with step. Used if [member hint] "
"is set to [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:29
-#: doc/classes/VisualShaderNodeIntUniform.xml:29
+#: doc/classes/VisualShaderNodeFloatUniform.xml:35
+#: doc/classes/VisualShaderNodeIntUniform.xml:35
msgid "No hint used."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:32
-#: doc/classes/VisualShaderNodeIntUniform.xml:32
+#: doc/classes/VisualShaderNodeFloatUniform.xml:38
+#: doc/classes/VisualShaderNodeIntUniform.xml:38
msgid ""
"A range hint for scalar value, which limits possible input values between "
"[member min] and [member max]. Translated to [code]hint_range(min, max)[/"
"code] in shader code."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:35
-#: doc/classes/VisualShaderNodeIntUniform.xml:35
+#: doc/classes/VisualShaderNodeFloatUniform.xml:41
+#: doc/classes/VisualShaderNodeIntUniform.xml:41
msgid ""
"A range hint for scalar value with step, which limits possible input values "
"between [member min] and [member max], with a step (increment) of [member "
@@ -57385,6 +59004,27 @@ msgid ""
"results, e.g. division by zero)."
msgstr ""
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:4
+msgid "Performs a fused multiply-add operation within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:7
+msgid "Uses three operands to compute [code](a * b + c)[/code] expression."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:15
+msgid "A type of operands and returned value."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:20
+msgid "A scalar type."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:23
+#, fuzzy
+msgid "A vector type."
+msgstr "Единичный вектор."
+
#: doc/classes/VisualShaderNodeOuterProduct.xml:4
msgid ""
"Calculates an outer product of two vectors within the visual shader graph."
@@ -57407,7 +59047,7 @@ msgstr ""
#: doc/classes/VisualShaderNodeOutput.xml:7
msgid ""
"This visual shader node is present in all shader graphs in form of \"Output"
-"\" block with mutliple output value ports."
+"\" block with multiple output value ports."
msgstr ""
#: doc/classes/VisualShaderNodeSample3D.xml:4
@@ -57771,6 +59411,20 @@ msgid ""
"[ShaderMaterial] properties."
msgstr ""
+#: doc/classes/VisualShaderNodeUniformRef.xml:4
+msgid "A reference to an existing [VisualShaderNodeUniform]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniformRef.xml:7
+msgid ""
+"Creating a reference to a [VisualShaderNodeUniform] allows you to reuse this "
+"uniform in different shaders or shader stages easily."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniformRef.xml:15
+msgid "The name of the uniform which this reference points to."
+msgstr ""
+
#: doc/classes/VisualShaderNodeVec3Constant.xml:4
msgid "A [Vector3] constant to be used within the visual shader graph."
msgstr ""
@@ -58101,7 +59755,7 @@ msgstr ""
msgid ""
"Translated to [code]refract(I, N, eta)[/code] in the shader language, where "
"[code]I[/code] is the incident vector, [code]N[/code] is the normal vector "
-"and [code]eta[/code] is the ratio of the indicies of the refraction."
+"and [code]eta[/code] is the ratio of the indices of the refraction."
msgstr ""
#: doc/classes/VisualShaderNodeVectorScalarMix.xml:4
@@ -59878,3 +61532,123 @@ msgstr ""
msgid ""
"If [code]true[/code], child nodes are sorted, otherwise sorting is disabled."
msgstr ""
+
+#~ msgid ""
+#~ "Returns the nearest larger power of 2 for integer [code]value[/code].\n"
+#~ "[codeblock]\n"
+#~ "nearest_po2(3) # Returns 4\n"
+#~ "nearest_po2(4) # Returns 4\n"
+#~ "nearest_po2(5) # Returns 8\n"
+#~ "[/codeblock]"
+#~ msgstr ""
+#~ "Возвращает ближайшую большую Ñтепень 2 Ð´Ð»Ñ Ñ†ÐµÐ»Ð¾Ð³Ð¾ чиÑла [code]value[/"
+#~ "code].\n"
+#~ "[codeblock]\n"
+#~ "nearest_po2(3) # Возвращает 4\n"
+#~ "nearest_po2(4) # Возвращает 4\n"
+#~ "nearest_po2(5) # Возвращает 8\n"
+#~ "[/codeblock]"
+
+#~ msgid ""
+#~ "Returns a resource from the filesystem that is loaded during script "
+#~ "parsing.\n"
+#~ "[b]Note:[/b] Resource paths can be obtained by right clicking on a "
+#~ "resource in the Assets Panel and choosing \"Copy Path\".\n"
+#~ "[codeblock]\n"
+#~ "# Load a scene called main located in the root of the project directory.\n"
+#~ "var main = preload(\"res://main.tscn\")\n"
+#~ "[/codeblock]"
+#~ msgstr ""
+#~ "Возвращает реÑÑƒÑ€Ñ Ð¸Ð· файловой ÑиÑтемы, который загружаетÑÑ Ð²Ð¾ Ð²Ñ€ÐµÐ¼Ñ "
+#~ "ÑинтакÑичеÑкого анализа.\n"
+#~ "[b]Примечание:[/b] Пути к реÑурÑам можно получить, щелкнув правой кнопкой "
+#~ "мыши реÑÑƒÑ€Ñ Ð½Ð° панели активов (Asset) и выбрав \"Копировать путь\".\n"
+#~ "[codeblock]\n"
+#~ "# Загружает Ñцену Ñ Ð¸Ð¼ÐµÐ½ÐµÐ¼ main, раÑположенную в корне каталога проекта.\n"
+#~ "var main = preload(\"res://main.tscn\")\n"
+#~ "[/codeblock]"
+
+#~ msgid "Returns the angle in radians between the two vectors."
+#~ msgstr "Возвращает угол в радианах между Ð´Ð²ÑƒÐ¼Ñ Ð²ÐµÐºÑ‚Ð¾Ñ€Ð°Ð¼Ð¸."
+
+#~ msgid "Returns the vector with all components rounded up."
+#~ msgstr "Возвращает вектор в котором вÑе компоненты округлены вверх."
+
+#~ msgid "Returns the vector with a maximum length."
+#~ msgstr "Возвращает вектор Ñ Ð¼Ð°ÐºÑимальной длиной."
+
+#~ msgid ""
+#~ "Returns the 2-dimensional analog of the cross product with the given "
+#~ "vector."
+#~ msgstr ""
+#~ "Возвращает 2-мерный аналог векторного Ð¿Ñ€Ð¾Ð¸Ð·Ð²ÐµÐ´ÐµÐ½Ð¸Ñ Ñ ÑƒÐºÐ°Ð·Ð°Ð½Ð½Ñ‹Ð¼ вектором."
+
+#~ msgid ""
+#~ "Returns the component of the vector along a plane defined by the given "
+#~ "normal."
+#~ msgstr ""
+#~ "Возвращает компоненты вектора вдоль плоÑкоÑти определённой заданной "
+#~ "нормалью."
+
+#~ msgid "Returns the vector snapped to a grid with the given size."
+#~ msgstr "Возвращает вектор привÑзанный к Ñетке Ñ Ð·Ð°Ð´Ð°Ð½Ð½Ñ‹Ð¼ размером."
+
+#~ msgid "Returns a perpendicular vector."
+#~ msgstr "Возвращает перпендикулÑрный вектор."
+
+#~ msgid "Zero vector."
+#~ msgstr "Ðулевой вектор."
+
+#~ msgid "Infinity vector."
+#~ msgstr "БеÑконечный вектор."
+
+#~ msgid "Left unit vector."
+#~ msgstr "Левый единичный вектор."
+
+#~ msgid "Right unit vector."
+#~ msgstr "Правый единичный вектор."
+
+#~ msgid "Returns the cross product with [code]b[/code]."
+#~ msgstr "Возвращает векторное произведение Ñ [code]b[/code]."
+
+#~ msgid ""
+#~ "Returns the squared distance to [code]b[/code]. Prefer this function over "
+#~ "[method distance_to] if you need to sort vectors or need the squared "
+#~ "distance for some formula."
+#~ msgstr ""
+#~ "Возвращает раÑÑтоÑние в квадрате до [code]b[/code]. Эта Ñ„ÑƒÐ½ÐºÑ†Ð¸Ñ "
+#~ "предпочтительнее чем [method distance_to] еÑли вам нужно Ñортировать "
+#~ "векторы или нужно раÑÑтоÑние в квадрате Ð´Ð»Ñ ÐºÐ°ÐºÐ¾Ð¹-то формулы."
+
+#~ msgid "Returns the distance to [code]b[/code]."
+#~ msgstr "Возвращает раÑÑтоÑние до [code]b[/code]."
+
+#~ msgid "Returns the dot product with [code]b[/code]."
+#~ msgstr "Возвращает ÑкалÑрное произведение Ñ [code]b[/code]."
+
+#~ msgid ""
+#~ "Returns the vector's length squared. Prefer this function over [method "
+#~ "length] if you need to sort vectors or need the squared length for some "
+#~ "formula."
+#~ msgstr ""
+#~ "Возвращает длину вектора в квадрате. Эта Ñ„ÑƒÐ½ÐºÑ†Ð¸Ñ Ð¿Ñ€ÐµÐ´Ð¿Ð¾Ñ‡Ñ‚Ð¸Ñ‚ÐµÐ»ÑŒÐ½ÐµÐµ чем "
+#~ "[method length] еÑли вам нужно Ñортировать вектора или нужна длина в "
+#~ "квадрате Ð´Ð»Ñ ÐºÐ°ÐºÐ¾Ð¹-то формулы."
+
+#~ msgid ""
+#~ "Returns the result of the linear interpolation between this vector and "
+#~ "[code]b[/code] by amount [code]t[/code]. [code]t[/code] is in the range "
+#~ "of [code]0.0 - 1.0[/code], representing the amount of interpolation.."
+#~ msgstr ""
+#~ "Возвращает результат линейного ÑÐ³Ð»Ð°Ð¶Ð¸Ð²Ð°Ð½Ð¸Ñ Ð¼ÐµÐ¶Ð´Ñƒ Ñтим вектором и [code]b[/"
+#~ "code] на значение [code]t[/code]. [code]t[/code] Ñто диапазон [code]0.0 - "
+#~ "1.0[/code], предÑтавлÑющий Ñилу ÑглаживаниÑ.."
+
+#~ msgid "Returns a diagonal matrix with the vector as main diagonal."
+#~ msgstr "Возвращает диагональную матрицу Ñ Ð²ÐµÐºÑ‚Ð¾Ñ€Ð¾Ð¼ на главной диагонали."
+
+#~ msgid "Forward unit vector."
+#~ msgstr "Передний единичный вектор."
+
+#~ msgid "Back unit vector."
+#~ msgstr "Задний единичный вектор."
diff --git a/doc/translations/sr_Cyrl.po b/doc/translations/sr_Cyrl.po
index d942e00c8c..6d0bd44ba7 100644
--- a/doc/translations/sr_Cyrl.po
+++ b/doc/translations/sr_Cyrl.po
@@ -108,8 +108,8 @@ msgstr ""
#: modules/gdscript/doc_classes/@GDScript.xml:55
msgid ""
-"Returns the absolute value of parameter [code]s[/code] (i.e. unsigned value, "
-"works for integer and float).\n"
+"Returns the absolute value of parameter [code]s[/code] (i.e. positive "
+"value).\n"
"[codeblock]\n"
"# a is 1\n"
"a = abs(-1)\n"
@@ -164,7 +164,7 @@ msgid ""
"angle from an angle's tangent in trigonometry: [code]atan(tan(angle)) == "
"angle[/code].\n"
"The method cannot know in which quadrant the angle should fall. See [method "
-"atan2] if you always want an exact angle.\n"
+"atan2] if you have both [code]y[/code] and [code]x[/code].\n"
"[codeblock]\n"
"a = atan(0.5) # a is 0.463648\n"
"[/codeblock]"
@@ -175,12 +175,13 @@ msgid ""
"Returns the arc tangent of [code]y/x[/code] in radians. Use to get the angle "
"of tangent [code]y/x[/code]. To compute the value, the method takes into "
"account the sign of both arguments in order to determine the quadrant.\n"
+"Important note: The Y coordinate comes first, by convention.\n"
"[codeblock]\n"
"a = atan2(0, -1) # a is 3.141593\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:143
+#: modules/gdscript/doc_classes/@GDScript.xml:144
msgid ""
"Decodes a byte array back to a value. When [code]allow_objects[/code] is "
"[code]true[/code] decoding objects is allowed.\n"
@@ -189,7 +190,7 @@ msgid ""
"avoid potential security threats (remote code execution)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:155
+#: modules/gdscript/doc_classes/@GDScript.xml:156
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:145
msgid ""
"Converts a 2D point expressed in the cartesian coordinate system (X and Y "
@@ -197,17 +198,17 @@ msgid ""
"angle)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:164
+#: modules/gdscript/doc_classes/@GDScript.xml:165
msgid ""
-"Rounds [code]s[/code] upward, returning the smallest integral value that is "
-"not less than [code]s[/code].\n"
+"Rounds [code]s[/code] upward (towards positive infinity), returning the "
+"smallest whole number that is not less than [code]s[/code].\n"
"[codeblock]\n"
"i = ceil(1.45) # i is 2\n"
"i = ceil(1.001) # i is 2\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:177
+#: modules/gdscript/doc_classes/@GDScript.xml:178
msgid ""
"Returns a character as a String of the given Unicode code point (which is "
"compatible with ASCII code).\n"
@@ -219,7 +220,7 @@ msgid ""
"This is the inverse of [method ord]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:196
+#: modules/gdscript/doc_classes/@GDScript.xml:197
msgid ""
"Clamps [code]value[/code] and returns a value not less than [code]min[/code] "
"and not more than [code]max[/code].\n"
@@ -234,7 +235,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:216
+#: modules/gdscript/doc_classes/@GDScript.xml:217
msgid ""
"Converts from a type to another in the best way possible. The [code]type[/"
"code] parameter uses the [enum Variant.Type] values.\n"
@@ -248,7 +249,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:233
+#: modules/gdscript/doc_classes/@GDScript.xml:234
msgid ""
"Returns the cosine of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -258,7 +259,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:247
+#: modules/gdscript/doc_classes/@GDScript.xml:248
msgid ""
"Returns the hyperbolic cosine of [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -267,11 +268,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:260
+#: modules/gdscript/doc_classes/@GDScript.xml:261
msgid "Converts from decibels to linear energy (audio)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:273
+#: modules/gdscript/doc_classes/@GDScript.xml:274
msgid ""
"Returns the result of [code]value[/code] decreased by [code]step[/code] * "
"[code]amount[/code].\n"
@@ -281,42 +282,44 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:286
+#: modules/gdscript/doc_classes/@GDScript.xml:287
msgid ""
-"Returns degrees converted to radians.\n"
+"Converts an angle expressed in degrees to radians.\n"
"[codeblock]\n"
"# r is 3.141593\n"
"r = deg2rad(180)\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:299
+#: modules/gdscript/doc_classes/@GDScript.xml:300
msgid ""
"Converts a previously converted instance to a dictionary, back into an "
"instance. Useful for deserializing."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:310
-#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:90
+#: modules/gdscript/doc_classes/@GDScript.xml:311
msgid ""
-"Easing function, based on exponent. 0 is constant, 1 is linear, 0 to 1 is "
-"ease-in, 1+ is ease out. Negative values are in-out/out in."
+"Easing function, based on exponent. The curve values are: 0 is constant, 1 "
+"is linear, 0 to 1 is ease-in, 1+ is ease out. Negative values are in-out/out "
+"in."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:319
+#: modules/gdscript/doc_classes/@GDScript.xml:320
msgid ""
"The natural exponential function. It raises the mathematical constant [b]e[/"
"b] to the power of [code]s[/code] and returns it.\n"
-"[b]e[/b] has an approximate value of 2.71828.\n"
+"[b]e[/b] has an approximate value of 2.71828, and can be obtained with "
+"[code]exp(1)[/code].\n"
"For exponents to other bases use the method [method pow].\n"
"[codeblock]\n"
"a = exp(2) # Approximately 7.39\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:333
+#: modules/gdscript/doc_classes/@GDScript.xml:334
msgid ""
-"Rounds [code]s[/code] to the closest smaller integer and returns it.\n"
+"Rounds [code]s[/code] downward (towards negative infinity), returning the "
+"largest whole number that is not more than [code]s[/code].\n"
"[codeblock]\n"
"# a is 2.0\n"
"a = floor(2.99)\n"
@@ -327,7 +330,7 @@ msgid ""
"use [code]int(s)[/code] directly."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:351
+#: modules/gdscript/doc_classes/@GDScript.xml:352
msgid ""
"Returns the floating-point remainder of [code]a/b[/code], keeping the sign "
"of [code]a[/code].\n"
@@ -338,7 +341,7 @@ msgid ""
"For the integer remainder operation, use the % operator."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:367
+#: modules/gdscript/doc_classes/@GDScript.xml:368
msgid ""
"Returns the floating-point modulus of [code]a/b[/code] that wraps equally in "
"positive and negative.\n"
@@ -364,7 +367,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:398
+#: modules/gdscript/doc_classes/@GDScript.xml:399
msgid ""
"Returns a reference to the specified function [code]funcname[/code] in the "
"[code]instance[/code] node. As functions aren't first-class objects in "
@@ -379,7 +382,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:412
+#: modules/gdscript/doc_classes/@GDScript.xml:413
msgid ""
"Returns an array of dictionaries representing the current call stack.\n"
"[codeblock]\n"
@@ -399,7 +402,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:435
+#: modules/gdscript/doc_classes/@GDScript.xml:436
msgid ""
"Returns the integer hash of the variable passed.\n"
"[codeblock]\n"
@@ -407,7 +410,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:447
+#: modules/gdscript/doc_classes/@GDScript.xml:448
msgid ""
"Returns the passed instance converted to a dictionary (useful for "
"serializing).\n"
@@ -425,7 +428,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:468
+#: modules/gdscript/doc_classes/@GDScript.xml:469
msgid ""
"Returns the Object that corresponds to [code]instance_id[/code]. All Objects "
"have a unique instance ID.\n"
@@ -438,7 +441,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:488
+#: modules/gdscript/doc_classes/@GDScript.xml:489
msgid ""
"Returns a normalized value considering the given range. This is the opposite "
"of [method lerp].\n"
@@ -452,33 +455,41 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:506
+#: modules/gdscript/doc_classes/@GDScript.xml:507
msgid ""
"Returns [code]true[/code] if [code]a[/code] and [code]b[/code] are "
-"approximately equal to each other."
+"approximately equal to each other.\n"
+"Here, approximately equal means that [code]a[/code] and [code]b[/code] are "
+"within a small internal epsilon of each other, which scales with the "
+"magnitude of the numbers.\n"
+"Infinity values of the same sign are considered equal."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:515
+#: modules/gdscript/doc_classes/@GDScript.xml:518
msgid ""
"Returns whether [code]s[/code] is an infinity value (either positive "
"infinity or negative infinity)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:524
+#: modules/gdscript/doc_classes/@GDScript.xml:527
msgid ""
"Returns whether [code]instance[/code] is a valid object (e.g. has not been "
"deleted from memory)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:533
-msgid "Returns whether [code]s[/code] is a NaN (Not-A-Number) value."
+#: modules/gdscript/doc_classes/@GDScript.xml:536
+msgid ""
+"Returns whether [code]s[/code] is a NaN (\"Not a Number\" or invalid) value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:542
-msgid "Returns [code]true[/code] if [code]s[/code] is zero or almost zero."
+#: modules/gdscript/doc_classes/@GDScript.xml:545
+msgid ""
+"Returns [code]true[/code] if [code]s[/code] is zero or almost zero.\n"
+"This method is faster than using [method is_equal_approx] with one value as "
+"zero."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:551
+#: modules/gdscript/doc_classes/@GDScript.xml:555
msgid ""
"Returns length of Variant [code]var[/code]. Length is the character count of "
"String, element count of Array, size of Dictionary, etc.\n"
@@ -489,7 +500,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:569
+#: modules/gdscript/doc_classes/@GDScript.xml:573
msgid ""
"Linearly interpolates between two values by a normalized value. This is the "
"opposite of [method inverse_lerp].\n"
@@ -504,7 +515,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:588
+#: modules/gdscript/doc_classes/@GDScript.xml:592
msgid ""
"Linearly interpolates between two angles (in radians) by a normalized "
"value.\n"
@@ -521,7 +532,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:607
+#: modules/gdscript/doc_classes/@GDScript.xml:611
msgid ""
"Converts from linear energy to decibels (audio). This can be used to "
"implement volume sliders that behave as expected (since volume isn't "
@@ -537,20 +548,28 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:622
+#: modules/gdscript/doc_classes/@GDScript.xml:626
msgid ""
-"Loads a resource from the filesystem located at [code]path[/code].\n"
+"Loads a resource from the filesystem located at [code]path[/code]. The "
+"resource is loaded on the method call (unless it's referenced already "
+"elsewhere, e.g. in another script or in the scene), which might cause slight "
+"delay, especially when loading scenes. To avoid unnecessary delays when "
+"loading something multiple times, either store the resource in a variable or "
+"use [method preload].\n"
"[b]Note:[/b] Resource paths can be obtained by right-clicking on a resource "
-"in the FileSystem dock and choosing [b]Copy Path[/b].\n"
+"in the FileSystem dock and choosing \"Copy Path\" or by dragging the file "
+"from the FileSystem dock into the script.\n"
"[codeblock]\n"
-"# Load a scene called main located in the root of the project directory.\n"
-"var main = load(\"res://main.tscn\")\n"
+"# Load a scene called main located in the root of the project directory and "
+"cache it in a variable.\n"
+"var main = load(\"res://main.tscn\") # main will contain a PackedScene "
+"resource.\n"
"[/codeblock]\n"
"[b]Important:[/b] The path must be absolute, a local path will just return "
"[code]null[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:637
+#: modules/gdscript/doc_classes/@GDScript.xml:641
msgid ""
"Natural logarithm. The amount of time needed to reach a certain level of "
"continuous growth.\n"
@@ -558,10 +577,12 @@ msgid ""
"calculators, which uses a base 10 logarithm.\n"
"[codeblock]\n"
"log(10) # Returns 2.302585\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] The logarithm of [code]0[/code] returns [code]-inf[/code], "
+"while negative values return [code]-nan[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:652
+#: modules/gdscript/doc_classes/@GDScript.xml:657
msgid ""
"Returns the maximum of two values.\n"
"[codeblock]\n"
@@ -570,7 +591,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:667
+#: modules/gdscript/doc_classes/@GDScript.xml:672
msgid ""
"Returns the minimum of two values.\n"
"[codeblock]\n"
@@ -579,27 +600,39 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:684
+#: modules/gdscript/doc_classes/@GDScript.xml:689
msgid ""
"Moves [code]from[/code] toward [code]to[/code] by the [code]delta[/code] "
"value.\n"
"Use a negative [code]delta[/code] value to move away.\n"
"[codeblock]\n"
+"move_toward(5, 10, 4) # Returns 9\n"
"move_toward(10, 5, 4) # Returns 6\n"
+"move_toward(10, 5, -1.5) # Returns 11.5\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:697
+#: modules/gdscript/doc_classes/@GDScript.xml:704
msgid ""
-"Returns the nearest larger power of 2 for integer [code]value[/code].\n"
+"Returns the nearest equal or larger power of 2 for integer [code]value[/"
+"code].\n"
+"In other words, returns the smallest value [code]a[/code] where [code]a = "
+"pow(2, n)[/code] such that [code]value <= a[/code] for some non-negative "
+"integer [code]n[/code].\n"
"[codeblock]\n"
"nearest_po2(3) # Returns 4\n"
"nearest_po2(4) # Returns 4\n"
"nearest_po2(5) # Returns 8\n"
-"[/codeblock]"
+"\n"
+"nearest_po2(0) # Returns 0 (this may not be what you expect)\n"
+"nearest_po2(-1) # Returns 0 (this may not be what you expect)\n"
+"[/codeblock]\n"
+"[b]WARNING:[/b] Due to the way it is implemented, this function returns "
+"[code]0[/code] rather than [code]1[/code] for non-positive values of "
+"[code]value[/code] (in reality, 1 is the smallest integer power of 2)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:711
+#: modules/gdscript/doc_classes/@GDScript.xml:723
msgid ""
"Returns an integer representing the Unicode code point of the given Unicode "
"character [code]char[/code].\n"
@@ -611,27 +644,28 @@ msgid ""
"This is the inverse of [method char]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:726
+#: modules/gdscript/doc_classes/@GDScript.xml:738
msgid ""
-"Parse JSON text to a Variant (use [method typeof] to check if it is what you "
-"expect).\n"
-"Be aware that the JSON specification does not define integer or float types, "
-"but only a number type. Therefore, parsing a JSON text will convert all "
-"numerical values to [float] types.\n"
-"Note that JSON objects do not preserve key order like Godot dictionaries, "
-"thus you should not rely on keys being in a certain order if a dictionary is "
-"constructed from JSON. In contrast, JSON arrays retain the order of their "
+"Parse JSON text to a Variant. (Use [method typeof] to check if the Variant's "
+"type is what you expect.)\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, parsing a JSON text will convert "
+"all numerical values to [float] types.\n"
+"[b]Note:[/b] JSON objects do not preserve key order like Godot dictionaries, "
+"thus, you should not rely on keys being in a certain order if a dictionary "
+"is constructed from JSON. In contrast, JSON arrays retain the order of their "
"elements:\n"
"[codeblock]\n"
-"p = parse_json('[\"a\", \"b\", \"c\"]')\n"
-"if typeof(p) == TYPE_ARRAY:\n"
-" print(p[0]) # Prints a\n"
+"var p = JSON.parse('[\"hello\", \"world\", \"!\"]')\n"
+"if typeof(p.result) == TYPE_ARRAY:\n"
+" print(p.result[0]) # Prints \"hello\"\n"
"else:\n"
-" print(\"unexpected results\")\n"
-"[/codeblock]"
+" push_error(\"Unexpected results.\")\n"
+"[/codeblock]\n"
+"See also [JSON] for an alternative way to parse JSON text."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:746
+#: modules/gdscript/doc_classes/@GDScript.xml:759
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:142
msgid ""
"Converts a 2D point expressed in the polar coordinate system (a distance "
@@ -639,7 +673,7 @@ msgid ""
"cartesian coordinate system (X and Y axis)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:757
+#: modules/gdscript/doc_classes/@GDScript.xml:770
msgid ""
"Returns the integer modulus of [code]a/b[/code] that wraps equally in "
"positive and negative.\n"
@@ -665,7 +699,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:788
+#: modules/gdscript/doc_classes/@GDScript.xml:801
msgid ""
"Returns the result of [code]x[/code] raised to the power of [code]y[/code].\n"
"[codeblock]\n"
@@ -673,19 +707,23 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:800
+#: modules/gdscript/doc_classes/@GDScript.xml:813
msgid ""
-"Returns a resource from the filesystem that is loaded during script "
-"parsing.\n"
+"Returns a [Resource] from the filesystem located at [code]path[/code]. The "
+"resource is loaded during script parsing, i.e. is loaded with the script and "
+"[method preload] effectively acts as a reference to that resource. Note that "
+"the method requires a constant path. If you want to load a resource from a "
+"dynamic/variable path, use [method load].\n"
"[b]Note:[/b] Resource paths can be obtained by right clicking on a resource "
-"in the Assets Panel and choosing \"Copy Path\".\n"
+"in the Assets Panel and choosing \"Copy Path\" or by dragging the file from "
+"the FileSystem dock into the script.\n"
"[codeblock]\n"
-"# Load a scene called main located in the root of the project directory.\n"
-"var main = preload(\"res://main.tscn\")\n"
+"# Instance a scene.\n"
+"var diamond = preload(\"res://diamond.tscn\").instance()\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:812
+#: modules/gdscript/doc_classes/@GDScript.xml:825
msgid ""
"Converts one or more arguments to strings in the best way possible and "
"prints them to the console.\n"
@@ -695,11 +733,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:823
+#: modules/gdscript/doc_classes/@GDScript.xml:836
msgid "Like [method print], but prints only when used in debug mode."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:830
+#: modules/gdscript/doc_classes/@GDScript.xml:843
msgid ""
"Prints a stack track at code location, only works when running with debugger "
"turned on.\n"
@@ -709,7 +747,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:841
+#: modules/gdscript/doc_classes/@GDScript.xml:854
msgid ""
"Prints one or more arguments to strings in the best way possible to standard "
"error line.\n"
@@ -718,7 +756,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:851
+#: modules/gdscript/doc_classes/@GDScript.xml:864
msgid ""
"Prints one or more arguments to strings in the best way possible to console. "
"No newline is added at the end.\n"
@@ -732,7 +770,7 @@ msgid ""
"method, such as [method print]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:864
+#: modules/gdscript/doc_classes/@GDScript.xml:877
msgid ""
"Prints one or more arguments to the console with a space between each "
"argument.\n"
@@ -741,7 +779,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:874
+#: modules/gdscript/doc_classes/@GDScript.xml:887
msgid ""
"Prints one or more arguments to the console with a tab between each "
"argument.\n"
@@ -750,7 +788,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:886
+#: modules/gdscript/doc_classes/@GDScript.xml:899
msgid ""
"Pushes an error message to Godot's built-in debugger and to the OS "
"terminal.\n"
@@ -760,7 +798,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:898
+#: modules/gdscript/doc_classes/@GDScript.xml:911
msgid ""
"Pushes a warning message to Godot's built-in debugger and to the OS "
"terminal.\n"
@@ -770,15 +808,15 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:910
+#: modules/gdscript/doc_classes/@GDScript.xml:923
msgid ""
-"Converts from radians to degrees.\n"
+"Converts an angle expressed in radians to degrees.\n"
"[codeblock]\n"
"rad2deg(0.523599) # Returns 30\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:924
+#: modules/gdscript/doc_classes/@GDScript.xml:937
msgid ""
"Random range, any floating point value between [code]from[/code] and "
"[code]to[/code].\n"
@@ -787,7 +825,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:936
+#: modules/gdscript/doc_classes/@GDScript.xml:949
msgid ""
"Random from seed: pass a [code]seed[/code], and an array with both number "
"and new seed is returned. \"Seed\" here refers to the internal state of the "
@@ -795,7 +833,7 @@ msgid ""
"implementation is 64 bits."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:943
+#: modules/gdscript/doc_classes/@GDScript.xml:956
msgid ""
"Returns a random floating point value on the interval [code][0, 1][/code].\n"
"[codeblock]\n"
@@ -803,7 +841,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:953
+#: modules/gdscript/doc_classes/@GDScript.xml:966
msgid ""
"Returns a random unsigned 32 bit integer. Use remainder to obtain a random "
"value in the interval [code][0, N - 1][/code] (where N is smaller than "
@@ -816,7 +854,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:966
+#: modules/gdscript/doc_classes/@GDScript.xml:979
msgid ""
"Randomizes the seed (or the internal state) of the random number generator. "
"Current implementation reseeds using a number based on time.\n"
@@ -826,7 +864,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:977
+#: modules/gdscript/doc_classes/@GDScript.xml:990
msgid ""
"Returns an array with the given range. Range can be 1 argument N (0 to N-1), "
"two arguments (initial, final-1) or three arguments (initial, final-1, "
@@ -856,7 +894,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1017
+#: modules/gdscript/doc_classes/@GDScript.xml:1030
msgid ""
"Maps a [code]value[/code] from range [code][istart, istop][/code] to [code]"
"[ostart, ostop][/code].\n"
@@ -865,16 +903,16 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1029
+#: modules/gdscript/doc_classes/@GDScript.xml:1042
msgid ""
-"Returns the integral value that is nearest to [code]s[/code], with halfway "
-"cases rounded away from zero.\n"
+"Rounds [code]s[/code] to the nearest whole number, with halfway cases "
+"rounded away from zero.\n"
"[codeblock]\n"
"round(2.6) # Returns 3\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1041
+#: modules/gdscript/doc_classes/@GDScript.xml:1054
msgid ""
"Sets seed for the random number generator.\n"
"[codeblock]\n"
@@ -883,7 +921,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1054
+#: modules/gdscript/doc_classes/@GDScript.xml:1067
msgid ""
"Returns the sign of [code]s[/code]: -1 or 1. Returns 0 if [code]s[/code] is "
"0.\n"
@@ -894,7 +932,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1068
+#: modules/gdscript/doc_classes/@GDScript.xml:1081
msgid ""
"Returns the sine of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -902,7 +940,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1080
+#: modules/gdscript/doc_classes/@GDScript.xml:1093
msgid ""
"Returns the hyperbolic sine of [code]s[/code].\n"
"[codeblock]\n"
@@ -911,27 +949,37 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1097
+#: modules/gdscript/doc_classes/@GDScript.xml:1110
msgid ""
-"Returns a number smoothly interpolated between the [code]from[/code] and "
-"[code]to[/code], based on the [code]weight[/code]. Similar to [method lerp], "
-"but interpolates faster at the beginning and slower at the end.\n"
+"Returns the result of smoothly interpolating the value of [code]s[/code] "
+"between [code]0[/code] and [code]1[/code], based on the where [code]s[/code] "
+"lies with respect to the edges [code]from[/code] and [code]to[/code].\n"
+"The return value is [code]0[/code] if [code]s <= from[/code], and [code]1[/"
+"code] if [code]s >= to[/code]. If [code]s[/code] lies between [code]from[/"
+"code] and [code]to[/code], the returned value follows an S-shaped curve that "
+"maps [code]s[/code] between [code]0[/code] and [code]1[/code].\n"
+"This S-shaped curve is the cubic Hermite interpolator, given by [code]f(s) = "
+"3*s^2 - 2*s^3[/code].\n"
"[codeblock]\n"
-"smoothstep(0, 2, 0.5) # Returns 0.15\n"
+"smoothstep(0, 2, -5.0) # Returns 0.0\n"
+"smoothstep(0, 2, 0.5) # Returns 0.15625\n"
"smoothstep(0, 2, 1.0) # Returns 0.5\n"
"smoothstep(0, 2, 2.0) # Returns 1.0\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1111
+#: modules/gdscript/doc_classes/@GDScript.xml:1127
msgid ""
-"Returns the square root of [code]s[/code].\n"
+"Returns the square root of [code]s[/code], where [code]s[/code] is a non-"
+"negative number.\n"
"[codeblock]\n"
"sqrt(9) # Returns 3\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b]Negative values of [code]s[/code] return NaN. If you need "
+"negative inputs, use [code]System.Numerics.Complex[/code] in C#."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1123
+#: modules/gdscript/doc_classes/@GDScript.xml:1140
msgid ""
"Returns the position of the first non-zero digit, after the decimal point. "
"Note that the maximum return value is 10, which is a design decision in the "
@@ -946,7 +994,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1142
+#: modules/gdscript/doc_classes/@GDScript.xml:1159
msgid ""
"Snaps float value [code]s[/code] to a given [code]step[/code]. This can also "
"be used to round a floating point number to an arbitrary number of "
@@ -957,7 +1005,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1153
+#: modules/gdscript/doc_classes/@GDScript.xml:1170
msgid ""
"Converts one or more arguments to string in the best way possible.\n"
"[codeblock]\n"
@@ -968,7 +1016,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1168
+#: modules/gdscript/doc_classes/@GDScript.xml:1185
msgid ""
"Converts a formatted string that was returned by [method var2str] to the "
"original value.\n"
@@ -979,7 +1027,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1182
+#: modules/gdscript/doc_classes/@GDScript.xml:1199
msgid ""
"Returns the tangent of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -987,7 +1035,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1194
+#: modules/gdscript/doc_classes/@GDScript.xml:1211
msgid ""
"Returns the hyperbolic tangent of [code]s[/code].\n"
"[codeblock]\n"
@@ -996,18 +1044,25 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1207
+#: modules/gdscript/doc_classes/@GDScript.xml:1224
msgid ""
-"Converts a Variant [code]var[/code] to JSON text and return the result. "
+"Converts a [Variant] [code]var[/code] to JSON text and return the result. "
"Useful for serializing data to store or send over the network.\n"
"[codeblock]\n"
+"# Both numbers below are integers.\n"
"a = { \"a\": 1, \"b\": 2 }\n"
"b = to_json(a)\n"
"print(b) # {\"a\":1, \"b\":2}\n"
-"[/codeblock]"
+"# Both numbers above are floats, even if they display without any decimal "
+"places.\n"
+"[/codeblock]\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, converting a [Variant] to JSON "
+"text will convert all numerical values to [float] types.\n"
+"See also [JSON] for an alternative way to convert a [Variant] to JSON text."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1221
+#: modules/gdscript/doc_classes/@GDScript.xml:1242
msgid ""
"Returns whether the given class exists in [ClassDB].\n"
"[codeblock]\n"
@@ -1016,7 +1071,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1234
+#: modules/gdscript/doc_classes/@GDScript.xml:1255
msgid ""
"Returns the internal type of the given Variant object, using the [enum "
"Variant.Type] values.\n"
@@ -1029,7 +1084,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1250
+#: modules/gdscript/doc_classes/@GDScript.xml:1271
msgid ""
"Checks that [code]json[/code] is valid JSON data. Returns an empty string if "
"valid, or an error message otherwise.\n"
@@ -1037,20 +1092,20 @@ msgid ""
"j = to_json([1, 2, 3])\n"
"v = validate_json(j)\n"
"if not v:\n"
-" print(\"valid\")\n"
+" print(\"Valid JSON.\")\n"
"else:\n"
-" prints(\"invalid\", v)\n"
+" push_error(\"Invalid JSON: \" + v)\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1269
+#: modules/gdscript/doc_classes/@GDScript.xml:1290
msgid ""
"Encodes a variable value to a byte array. When [code]full_objects[/code] is "
"[code]true[/code] encoding objects is allowed (and can potentially include "
"code)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1278
+#: modules/gdscript/doc_classes/@GDScript.xml:1299
msgid ""
"Converts a Variant [code]var[/code] to a formatted string that can later be "
"parsed using [method str2var].\n"
@@ -1067,7 +1122,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1298
+#: modules/gdscript/doc_classes/@GDScript.xml:1319
msgid ""
"Returns a weak reference to an object.\n"
"A weak reference to an object is not enough to keep the object alive: when "
@@ -1077,135 +1132,67 @@ msgid ""
"reference may return the object even if there are no strong references to it."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1312
+#: modules/gdscript/doc_classes/@GDScript.xml:1333
msgid ""
"Wraps float [code]value[/code] between [code]min[/code] and [code]max[/"
"code].\n"
"Usable for creating loop-alike behavior or infinite surfaces.\n"
"[codeblock]\n"
-"# a is 0.5\n"
-"a = wrapf(10.5, 0.0, 10.0)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# a is 9.5\n"
-"a = wrapf(-0.5, 0.0, 10.0)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# Infinite loop between 0.0 and 0.99\n"
-"f = wrapf(f + 0.1, 0.0, 1.0)\n"
+"# Infinite loop between 5.0 and 9.9\n"
+"value = wrapf(value + 0.1, 5.0, 10.0)\n"
"[/codeblock]\n"
"[codeblock]\n"
"# Infinite rotation (in radians)\n"
"angle = wrapf(angle + 0.1, 0.0, TAU)\n"
"[/codeblock]\n"
-"[b]Note:[/b] If you just want to wrap between 0.0 and [code]n[/code] (where "
-"[code]n[/code] is a positive floating-point value), it is better for "
-"performance to use the [method fmod] method like [code]fmod(number, n)[/"
-"code].\n"
-"[code]wrapf[/code] is more flexible than using the [method fmod] approach by "
-"giving the user a simple control over the minimum value. It also fully "
-"supports negative numbers, e.g.\n"
"[codeblock]\n"
"# Infinite rotation (in radians)\n"
"angle = wrapf(angle + 0.1, -PI, PI)\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] If [code]min[/code] is [code]0[/code], this is equivalent to "
+"[method fposmod], so prefer using that instead.\n"
+"[code]wrapf[/code] is more flexible than using the [method fposmod] approach "
+"by giving the user control over the minimum value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1348
+#: modules/gdscript/doc_classes/@GDScript.xml:1361
msgid ""
"Wraps integer [code]value[/code] between [code]min[/code] and [code]max[/"
"code].\n"
"Usable for creating loop-alike behavior or infinite surfaces.\n"
"[codeblock]\n"
-"# a is 0\n"
-"a = wrapi(10, 0, 10)\n"
+"# Infinite loop between 5 and 9\n"
+"frame = wrapi(frame + 1, 5, 10)\n"
"[/codeblock]\n"
"[codeblock]\n"
-"# a is 9\n"
-"a = wrapi(-1, 0, 10)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# Infinite loop between 0 and 9\n"
-"frame = wrapi(frame + 1, 0, 10)\n"
-"[/codeblock]\n"
-"[b]Note:[/b] If you just want to wrap between 0 and [code]n[/code] (where "
-"[code]n[/code] is a positive integer value), it is better for performance to "
-"use the modulo operator like [code]number % n[/code].\n"
-"[code]wrapi[/code] is more flexible than using the modulo approach by giving "
-"the user a simple control over the minimum value. It also fully supports "
-"negative numbers, e.g.\n"
-"[codeblock]\n"
"# result is -2\n"
"var result = wrapi(-6, -5, -1)\n"
-"[/codeblock]"
-msgstr ""
-
-#: modules/gdscript/doc_classes/@GDScript.xml:1378
-msgid ""
-"Stops the function execution and returns the current suspended state to the "
-"calling function.\n"
-"From the caller, call [method GDScriptFunctionState.resume] on the state to "
-"resume execution. This invalidates the state. Within the resumed function, "
-"[code]yield()[/code] returns whatever was passed to the [code]resume()[/"
-"code] function call.\n"
-"If passed an object and a signal, the execution is resumed when the object "
-"emits the given signal. In this case, [code]yield()[/code] returns the "
-"argument passed to [code]emit_signal()[/code] if the signal takes only one "
-"argument, or an array containing all the arguments passed to "
-"[code]emit_signal()[/code] if the signal takes multiple arguments.\n"
-"You can also use [code]yield[/code] to wait for a function to finish:\n"
-"[codeblock]\n"
-"func _ready():\n"
-" yield(countdown(), \"completed\") # waiting for the countdown() function "
-"to complete\n"
-" print('Ready')\n"
-"\n"
-"func countdown():\n"
-" yield(get_tree(), \"idle_frame\") # returns a GDScriptFunctionState "
-"object to _ready()\n"
-" print(3)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-" print(2)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-" print(1)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-"\n"
-"# prints:\n"
-"# 3\n"
-"# 2\n"
-"# 1\n"
-"# Ready\n"
"[/codeblock]\n"
-"When yielding on a function, the [code]completed[/code] signal will be "
-"emitted automatically when the function returns. It can, therefore, be used "
-"as the [code]signal[/code] parameter of the [code]yield[/code] method to "
-"resume.\n"
-"In order to yield on a function, the resulting function should also return a "
-"[code]GDScriptFunctionState[/code]. Notice [code]yield(get_tree(), "
-"\"idle_frame\")[/code] from the above example."
+"[b]Note:[/b] If [code]min[/code] is [code]0[/code], this is equivalent to "
+"[method posmod], so prefer using that instead.\n"
+"[code]wrapi[/code] is more flexible than using the [method posmod] approach "
+"by giving the user control over the minimum value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1409
+#: modules/gdscript/doc_classes/@GDScript.xml:1378
msgid ""
"Constant that represents how many times the diameter of a circle fits around "
-"its perimeter."
+"its perimeter. This is equivalent to [code]TAU / 2[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1412
-msgid "The circle constant, the circumference of the unit circle."
+#: modules/gdscript/doc_classes/@GDScript.xml:1381
+msgid "The circle constant, the circumference of the unit circle in radians."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1415
-msgid "A positive infinity. (For negative infinity, use -INF)."
+#: modules/gdscript/doc_classes/@GDScript.xml:1384
+msgid "Positive infinity. For negative infinity, use -INF."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1418
+#: modules/gdscript/doc_classes/@GDScript.xml:1387
msgid ""
-"Macro constant that expands to an expression of type float that represents a "
-"NaN.\n"
-"The NaN values are used to identify undefined or non-representable values "
-"for floating-point elements, such as the square root of negative numbers or "
-"the result of 0/0."
+"\"Not a Number\", an invalid value. [code]NaN[/code] has special properties, "
+"including that it is not equal to itself. It is output by some invalid "
+"operations, such as dividing zero by zero."
msgstr ""
#: doc/classes/@GlobalScope.xml:4
@@ -3441,130 +3428,141 @@ msgid ""
msgstr ""
#: doc/classes/AABB.xml:10 doc/classes/Plane.xml:10 doc/classes/Rect2.xml:11
-#: doc/classes/Rect2i.xml:11 doc/classes/Transform.xml:10
+#: doc/classes/Rect2i.xml:11 doc/classes/Transform.xml:11
#: doc/classes/Vector2.xml:12 doc/classes/Vector2i.xml:12
#: doc/classes/Vector3.xml:12 doc/classes/Vector3i.xml:12
msgid "https://docs.godotengine.org/en/latest/tutorials/math/index.html"
msgstr ""
#: doc/classes/AABB.xml:21
-msgid "Optional constructor, accepts position and size."
+msgid "Constructs an [AABB] from a position and size."
msgstr ""
-#: doc/classes/AABB.xml:30
+#: doc/classes/AABB.xml:28
+msgid ""
+"Returns an AABB with equivalent position and size, modified so that the most-"
+"negative corner is the origin and the size is positive."
+msgstr ""
+
+#: doc/classes/AABB.xml:37
msgid ""
"Returns [code]true[/code] if this [AABB] completely encloses another one."
msgstr ""
-#: doc/classes/AABB.xml:39
+#: doc/classes/AABB.xml:46
msgid "Returns this [AABB] expanded to include a given point."
msgstr ""
-#: doc/classes/AABB.xml:46
+#: doc/classes/AABB.xml:53
msgid "Returns the volume of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:55
+#: doc/classes/AABB.xml:62
msgid "Gets the position of the 8 endpoints of the [AABB] in space."
msgstr ""
-#: doc/classes/AABB.xml:62
+#: doc/classes/AABB.xml:69
msgid "Returns the normalized longest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:69
+#: doc/classes/AABB.xml:76
msgid ""
"Returns the index of the longest axis of the [AABB] (according to "
"[Vector3]'s [code]AXIS_*[/code] constants)."
msgstr ""
-#: doc/classes/AABB.xml:76
+#: doc/classes/AABB.xml:83
msgid "Returns the scalar length of the longest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:83
+#: doc/classes/AABB.xml:90
msgid "Returns the normalized shortest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:90
+#: doc/classes/AABB.xml:97
msgid ""
"Returns the index of the shortest axis of the [AABB] (according to "
"[Vector3]::AXIS* enum)."
msgstr ""
-#: doc/classes/AABB.xml:97
+#: doc/classes/AABB.xml:104
msgid "Returns the scalar length of the shortest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:106
+#: doc/classes/AABB.xml:113
msgid ""
"Returns the support point in a given direction. This is useful for collision "
"detection algorithms."
msgstr ""
-#: doc/classes/AABB.xml:115
+#: doc/classes/AABB.xml:122
msgid ""
"Returns a copy of the [AABB] grown a given amount of units towards all the "
"sides."
msgstr ""
-#: doc/classes/AABB.xml:122
+#: doc/classes/AABB.xml:129
msgid "Returns [code]true[/code] if the [AABB] is flat or empty."
msgstr ""
-#: doc/classes/AABB.xml:129
+#: doc/classes/AABB.xml:136
msgid "Returns [code]true[/code] if the [AABB] is empty."
msgstr ""
-#: doc/classes/AABB.xml:138
+#: doc/classes/AABB.xml:145
msgid "Returns [code]true[/code] if the [AABB] contains a point."
msgstr ""
-#: doc/classes/AABB.xml:147
+#: doc/classes/AABB.xml:154
msgid ""
"Returns the intersection between two [AABB]. An empty AABB (size 0,0,0) is "
"returned on failure."
msgstr ""
-#: doc/classes/AABB.xml:156
+#: doc/classes/AABB.xml:163
msgid "Returns [code]true[/code] if the [AABB] overlaps with another."
msgstr ""
-#: doc/classes/AABB.xml:165
+#: doc/classes/AABB.xml:172
msgid "Returns [code]true[/code] if the [AABB] is on both sides of a plane."
msgstr ""
-#: doc/classes/AABB.xml:176
+#: doc/classes/AABB.xml:183
msgid ""
"Returns [code]true[/code] if the [AABB] intersects the line segment between "
"[code]from[/code] and [code]to[/code]."
msgstr ""
-#: doc/classes/AABB.xml:185
+#: doc/classes/AABB.xml:192
msgid ""
"Returns [code]true[/code] if this [AABB] and [code]aabb[/code] are "
"approximately equal, by calling [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/AABB.xml:194
+#: doc/classes/AABB.xml:201
msgid ""
"Returns a larger [AABB] that contains both this [AABB] and [code]with[/code]."
msgstr ""
-#: doc/classes/AABB.xml:200
+#: doc/classes/AABB.xml:207 doc/classes/Rect2.xml:174
+#: doc/classes/Rect2i.xml:163
msgid ""
-"Ending corner. This is calculated as [code]position + size[/code]. Changing "
-"this property changes [member size] accordingly."
+"Ending corner. This is calculated as [code]position + size[/code]. Setting "
+"this value will change the size."
msgstr ""
-#: doc/classes/AABB.xml:203
-msgid "Beginning corner."
+#: doc/classes/AABB.xml:210 doc/classes/Rect2.xml:177
+#: doc/classes/Rect2i.xml:166
+msgid "Beginning corner. Typically has values lower than [member end]."
msgstr ""
-#: doc/classes/AABB.xml:206 doc/classes/Rect2.xml:180
+#: doc/classes/AABB.xml:213 doc/classes/Rect2.xml:180
#: doc/classes/Rect2i.xml:169
-msgid "Size from position to end."
+msgid ""
+"Size from [member position] to [member end]. Typically all components are "
+"positive.\n"
+"If the size is negative, you can use [method abs] to fix it."
msgstr ""
#: doc/classes/AcceptDialog.xml:4
@@ -3628,11 +3626,11 @@ msgstr ""
msgid "The text displayed by the dialog."
msgstr ""
-#: doc/classes/AcceptDialog.xml:82
+#: doc/classes/AcceptDialog.xml:83
msgid "Emitted when the dialog is accepted, i.e. the OK button is pressed."
msgstr ""
-#: doc/classes/AcceptDialog.xml:89
+#: doc/classes/AcceptDialog.xml:90
msgid "Emitted when a custom button is pressed. See [method add_button]."
msgstr ""
@@ -3685,7 +3683,7 @@ msgstr ""
#: doc/classes/AESContext.xml:54
msgid ""
"Get the current IV state for this context (IV gets updated when calling "
-"[method update]). You normally don't need this funciton.\n"
+"[method update]). You normally don't need this function.\n"
"Note: This function only makes sense when the context is started with "
"[constant MODE_CBC_ENCRYPT] or [constant MODE_CBC_DECRYPT]."
msgstr ""
@@ -3763,12 +3761,14 @@ msgid "If [code]true[/code], texture will be centered."
msgstr ""
#: doc/classes/AnimatedSprite2D.xml:46 doc/classes/Sprite2D.xml:41
-#: doc/classes/SpriteBase3D.xml:61 doc/classes/TextureRect.xml:18
+#: doc/classes/SpriteBase3D.xml:61 doc/classes/TextureButton.xml:19
+#: doc/classes/TextureRect.xml:18
msgid "If [code]true[/code], texture is flipped horizontally."
msgstr ""
#: doc/classes/AnimatedSprite2D.xml:49 doc/classes/Sprite2D.xml:44
-#: doc/classes/SpriteBase3D.xml:64 doc/classes/TextureRect.xml:21
+#: doc/classes/SpriteBase3D.xml:64 doc/classes/TextureButton.xml:22
+#: doc/classes/TextureRect.xml:21
msgid "If [code]true[/code], texture is flipped vertically."
msgstr ""
@@ -3935,10 +3935,10 @@ msgid ""
"[codeblock]\n"
"# This creates an animation that makes the node \"Enemy\" move to the right "
"by\n"
-"# 100 pixels in 1 second.\n"
+"# 100 pixels in 0.5 seconds.\n"
"var animation = Animation.new()\n"
"var track_index = animation.add_track(Animation.TYPE_VALUE)\n"
-"animation.track_set_path(track_index, \"Enemy:position.x\")\n"
+"animation.track_set_path(track_index, \"Enemy:position:x\")\n"
"animation.track_insert_key(track_index, 0.0, 0)\n"
"animation.track_insert_key(track_index, 0.5, 100)\n"
"[/codeblock]\n"
@@ -6066,10 +6066,10 @@ msgstr ""
msgid ""
"Returns [code]true[/code] if the array contains the given value.\n"
"[codeblock]\n"
-"[\"inside\", 7].has(\"inside\") == true\n"
-"[\"inside\", 7].has(\"outside\") == false\n"
-"[\"inside\", 7].has(7) == true\n"
-"[\"inside\", 7].has(\"7\") == false\n"
+"print([\"inside\", 7].has(\"inside\")) # True\n"
+"print([\"inside\", 7].has(\"outside\")) # False\n"
+"print([\"inside\", 7].has(7)) # True\n"
+"print([\"inside\", 7].has(\"7\")) # False\n"
"[/codeblock]\n"
"[b]Note:[/b] This is equivalent to using the [code]in[/code] operator as "
"follows:\n"
@@ -6090,11 +6090,11 @@ msgid ""
"valid, or at the end of the array ([code]pos == size()[/code])."
msgstr ""
-#: doc/classes/Array.xml:265 doc/classes/PackedByteArray.xml:107
-#: doc/classes/PackedColorArray.xml:62 doc/classes/PackedFloat32Array.xml:63
-#: doc/classes/PackedFloat64Array.xml:63 doc/classes/PackedInt32Array.xml:63
-#: doc/classes/PackedInt64Array.xml:63 doc/classes/PackedStringArray.xml:62
-#: doc/classes/PackedVector2Array.xml:62 doc/classes/PackedVector3Array.xml:62
+#: doc/classes/Array.xml:265 doc/classes/PackedByteArray.xml:116
+#: doc/classes/PackedColorArray.xml:71 doc/classes/PackedFloat32Array.xml:72
+#: doc/classes/PackedFloat64Array.xml:72 doc/classes/PackedInt32Array.xml:72
+#: doc/classes/PackedInt64Array.xml:72 doc/classes/PackedStringArray.xml:71
+#: doc/classes/PackedVector2Array.xml:71 doc/classes/PackedVector3Array.xml:71
msgid "Reverses the order of the elements in the array."
msgstr ""
@@ -6124,8 +6124,8 @@ msgid ""
"code] if the array is empty."
msgstr ""
-#: doc/classes/Array.xml:302 doc/classes/PackedByteArray.xml:116
-#: doc/classes/PackedFloat32Array.xml:72 doc/classes/PackedFloat64Array.xml:72
+#: doc/classes/Array.xml:302 doc/classes/PackedByteArray.xml:125
+#: doc/classes/PackedFloat32Array.xml:81 doc/classes/PackedFloat64Array.xml:81
msgid "Appends an element at the end of the array."
msgstr ""
@@ -6133,11 +6133,11 @@ msgstr ""
msgid "Adds an element at the beginning of the array."
msgstr ""
-#: doc/classes/Array.xml:320 doc/classes/PackedByteArray.xml:125
-#: doc/classes/PackedColorArray.xml:80 doc/classes/PackedFloat32Array.xml:81
-#: doc/classes/PackedFloat64Array.xml:81 doc/classes/PackedInt32Array.xml:81
-#: doc/classes/PackedInt64Array.xml:81 doc/classes/PackedStringArray.xml:80
-#: doc/classes/PackedVector2Array.xml:80 doc/classes/PackedVector3Array.xml:80
+#: doc/classes/Array.xml:320 doc/classes/PackedByteArray.xml:134
+#: doc/classes/PackedColorArray.xml:89 doc/classes/PackedFloat32Array.xml:90
+#: doc/classes/PackedFloat64Array.xml:90 doc/classes/PackedInt32Array.xml:90
+#: doc/classes/PackedInt64Array.xml:90 doc/classes/PackedStringArray.xml:89
+#: doc/classes/PackedVector2Array.xml:89 doc/classes/PackedVector3Array.xml:89
msgid "Removes an element from the array by index."
msgstr ""
@@ -6420,7 +6420,7 @@ msgid ""
msgstr ""
#: doc/classes/ArrayMesh.xml:235 doc/classes/Mesh.xml:210
-#: doc/classes/RenderingServer.xml:3115
+#: doc/classes/RenderingServer.xml:3111
msgid "Represents the size of the [enum ArrayType] enum."
msgstr ""
@@ -8237,7 +8237,9 @@ msgid ""
msgstr ""
#: doc/classes/BaseButton.xml:16
-msgid "Called when the button is pressed."
+msgid ""
+"Called when the button is pressed. If you need to know the button's pressed "
+"state (and [member toggle_mode] is active), use [method _toggled] instead."
msgstr ""
#: doc/classes/BaseButton.xml:25
@@ -8331,43 +8333,45 @@ msgstr ""
msgid ""
"Emitted when the button is toggled or pressed. This is on [signal "
"button_down] if [member action_mode] is [constant ACTION_MODE_BUTTON_PRESS] "
-"and on [signal button_up] otherwise."
+"and on [signal button_up] otherwise.\n"
+"If you need to know the button's pressed state (and [member toggle_mode] is "
+"active), use [signal toggled] instead."
msgstr ""
-#: doc/classes/BaseButton.xml:98
+#: doc/classes/BaseButton.xml:99
msgid ""
"Emitted when the button was just toggled between pressed and normal states "
"(only if [member toggle_mode] is active). The new state is contained in the "
"[code]button_pressed[/code] argument."
msgstr ""
-#: doc/classes/BaseButton.xml:104
+#: doc/classes/BaseButton.xml:105
msgid ""
"The normal state (i.e. not pressed, not hovered, not toggled and enabled) of "
"buttons."
msgstr ""
-#: doc/classes/BaseButton.xml:107
+#: doc/classes/BaseButton.xml:108
msgid "The state of buttons are pressed."
msgstr ""
-#: doc/classes/BaseButton.xml:110
+#: doc/classes/BaseButton.xml:111
msgid "The state of buttons are hovered."
msgstr ""
-#: doc/classes/BaseButton.xml:113
+#: doc/classes/BaseButton.xml:114
msgid "The state of buttons are disabled."
msgstr ""
-#: doc/classes/BaseButton.xml:116
+#: doc/classes/BaseButton.xml:117
msgid "The state of buttons are both hovered and pressed."
msgstr ""
-#: doc/classes/BaseButton.xml:119
+#: doc/classes/BaseButton.xml:120
msgid "Require just a press to consider the button clicked."
msgstr ""
-#: doc/classes/BaseButton.xml:122
+#: doc/classes/BaseButton.xml:123
msgid ""
"Require a press and a subsequent release before considering the button "
"clicked."
@@ -9060,22 +9064,22 @@ msgstr ""
msgid "Represents the size of the [enum TextureParam] enum."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:451 doc/classes/RenderingServer.xml:3657
-#: doc/classes/Viewport.xml:390
+#: doc/classes/BaseMaterial3D.xml:451 doc/classes/RenderingServer.xml:3668
+#: doc/classes/Viewport.xml:393
msgid ""
"The texture filter reads from the nearest pixel only. The simplest and "
"fastest method of filtering, but the texture will look pixelized."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:454 doc/classes/RenderingServer.xml:3660
-#: doc/classes/Viewport.xml:393
+#: doc/classes/BaseMaterial3D.xml:454 doc/classes/RenderingServer.xml:3671
+#: doc/classes/Viewport.xml:396
msgid ""
"The texture filter blends between the nearest 4 pixels. Use this when you "
"want to avoid a pixelated style, but do not want mipmaps."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:457 doc/classes/RenderingServer.xml:3663
-#: doc/classes/Viewport.xml:396
+#: doc/classes/BaseMaterial3D.xml:457 doc/classes/RenderingServer.xml:3674
+#: doc/classes/Viewport.xml:399
msgid ""
"The texture filter reads from the nearest pixel in the nearest mipmap. The "
"fastest way to read from textures with mipmaps."
@@ -9088,14 +9092,14 @@ msgid ""
"smooth out pixels that are far from the camera."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:463 doc/classes/RenderingServer.xml:3669
+#: doc/classes/BaseMaterial3D.xml:463 doc/classes/RenderingServer.xml:3680
msgid ""
"The texture filter reads from the nearest pixel, but selects a mipmap based "
"on the angle between the surface and the camera view. This reduces artifacts "
"on surfaces that are almost in line with the camera."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:466 doc/classes/RenderingServer.xml:3672
+#: doc/classes/BaseMaterial3D.xml:466 doc/classes/RenderingServer.xml:3683
msgid ""
"The texture filter blends between the nearest 4 pixels and selects a mipmap "
"based on the angle between the surface and the camera view. This reduces "
@@ -9104,7 +9108,7 @@ msgid ""
"texturing."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:469 doc/classes/CanvasItem.xml:685
+#: doc/classes/BaseMaterial3D.xml:469 doc/classes/CanvasItem.xml:695
msgid "Represents the size of the [enum TextureFilter] enum."
msgstr ""
@@ -9327,8 +9331,8 @@ msgstr ""
msgid "Enables the shadow to opacity feature."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:622 doc/classes/RenderingServer.xml:3684
-#: doc/classes/Viewport.xml:408
+#: doc/classes/BaseMaterial3D.xml:622 doc/classes/RenderingServer.xml:3695
+#: doc/classes/Viewport.xml:411
msgid ""
"Enables the texture to repeat when UV coordinates are outside the 0-1 range. "
"If using one of the linear filtering modes, this can result in artifacts at "
@@ -9469,167 +9473,195 @@ msgstr ""
#: doc/classes/Basis.xml:7
msgid ""
-"3×3 matrix used for 3D rotation and scale. Contains 3 vector fields X, Y and "
-"Z as its columns, which can be interpreted as the local basis vectors of a "
-"transformation. Can also be accessed as array of 3D vectors. These vectors "
-"are orthogonal to each other, but are not necessarily normalized (due to "
-"scaling). Almost always used as an orthogonal basis for a [Transform].\n"
-"For such use, it is composed of a scaling and a rotation matrix, in that "
-"order (M = R.S)."
+"3×3 matrix used for 3D rotation and scale. Almost always used as an "
+"orthogonal basis for a Transform.\n"
+"Contains 3 vector fields X, Y and Z as its columns, which are typically "
+"interpreted as the local basis vectors of a transformation. For such use, it "
+"is composed of a scaling and a rotation matrix, in that order (M = R.S).\n"
+"Can also be accessed as array of 3D vectors. These vectors are normally "
+"orthogonal to each other, but are not necessarily normalized (due to "
+"scaling).\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
+msgstr ""
+
+#: doc/classes/Basis.xml:13 doc/classes/Transform.xml:12
+#: doc/classes/Transform2D.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/math/"
+"matrices_and_transforms.html"
msgstr ""
-#: doc/classes/Basis.xml:11 doc/classes/Transform.xml:11
+#: doc/classes/Basis.xml:14 doc/classes/Transform.xml:13
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/using_transforms.html"
msgstr ""
-#: doc/classes/Basis.xml:20
-msgid "Create a rotation matrix from the given quaternion."
+#: doc/classes/Basis.xml:23
+msgid "Constructs a pure rotation basis matrix from the given quaternion."
msgstr ""
-#: doc/classes/Basis.xml:29
+#: doc/classes/Basis.xml:32
msgid ""
-"Create a rotation matrix (in the YXZ convention: first Z, then X, and Y "
-"last) from the specified Euler angles, given in the vector format as (X "
-"angle, Y angle, Z angle)."
+"Constructs a pure rotation basis matrix from the given Euler angles (in the "
+"YXZ convention: when *composing*, first Y, then X, and Z last), given in the "
+"vector format as (X angle, Y angle, Z angle).\n"
+"Consider using the [Quat] constructor instead, which uses a quaternion "
+"instead of Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:40
+#: doc/classes/Basis.xml:44
msgid ""
-"Create a rotation matrix which rotates around the given axis by the "
-"specified angle, in radians. The axis must be a normalized vector."
+"Constructs a pure rotation basis matrix, rotated around the given "
+"[code]axis[/code] by [code]phi[/code], in radians. The axis must be a "
+"normalized vector."
msgstr ""
-#: doc/classes/Basis.xml:53
-msgid "Create a matrix from 3 axis vectors."
+#: doc/classes/Basis.xml:57
+msgid "Constructs a basis matrix from 3 axis vectors (matrix columns)."
msgstr ""
-#: doc/classes/Basis.xml:60
-msgid "Returns the determinant of the matrix."
+#: doc/classes/Basis.xml:64
+msgid ""
+"Returns the determinant of the basis matrix. If the basis is uniformly "
+"scaled, its determinant is the square of the scale.\n"
+"A negative determinant means the basis has a negative scale. A zero "
+"determinant means the basis isn't invertible, and is usually considered "
+"invalid."
msgstr ""
-#: doc/classes/Basis.xml:67
+#: doc/classes/Basis.xml:72
msgid ""
"Returns the basis's rotation in the form of Euler angles (in the YXZ "
-"convention: first Z, then X, and Y last). The returned vector contains the "
-"rotation angles in the format (X angle, Y angle, Z angle). See [method "
-"get_rotation_quat] if you need a quaternion instead."
+"convention: when decomposing, first Z, then X, and Y last). The returned "
+"vector contains the rotation angles in the format (X angle, Y angle, Z "
+"angle).\n"
+"Consider using the [method get_rotation_quat] method instead, which returns "
+"a [Quat] quaternion instead of Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:74
+#: doc/classes/Basis.xml:80
msgid ""
"This function considers a discretization of rotations into 24 points on unit "
"sphere, lying along the vectors (x,y,z) with each component being either -1, "
"0, or 1, and returns the index of the point best representing the "
-"orientation of the object. It is mainly used by the grid map editor. For "
+"orientation of the object. It is mainly used by the [GridMap] editor. For "
"further details, refer to the Godot source code."
msgstr ""
-#: doc/classes/Basis.xml:81
+#: doc/classes/Basis.xml:87
msgid ""
"Returns the basis's rotation in the form of a quaternion. See [method "
"get_euler] if you need Euler angles, but keep in mind quaternions should "
"generally be preferred to Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:88
+#: doc/classes/Basis.xml:94
msgid ""
"Assuming that the matrix is the combination of a rotation and scaling, "
"return the absolute value of scaling factors along each axis."
msgstr ""
-#: doc/classes/Basis.xml:95 doc/classes/Transform2D.xml:49
+#: doc/classes/Basis.xml:101
msgid "Returns the inverse of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:106
+#: doc/classes/Basis.xml:112
msgid ""
"Returns [code]true[/code] if this basis and [code]b[/code] are approximately "
"equal, by calling [code]is_equal_approx[/code] on each component."
msgstr ""
-#: doc/classes/Basis.xml:113
+#: doc/classes/Basis.xml:119
msgid ""
"Returns the orthonormalized version of the matrix (useful to call from time "
"to time to avoid rounding error for orthogonal matrices). This performs a "
"Gram-Schmidt orthonormalization on the basis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:124
+#: doc/classes/Basis.xml:130
msgid ""
"Introduce an additional rotation around the given axis by phi (radians). The "
"axis must be a normalized vector."
msgstr ""
-#: doc/classes/Basis.xml:133
+#: doc/classes/Basis.xml:139
msgid ""
"Introduce an additional scaling specified by the given 3D scaling factor."
msgstr ""
-#: doc/classes/Basis.xml:144
+#: doc/classes/Basis.xml:150
msgid ""
"Assuming that the matrix is a proper rotation matrix, slerp performs a "
"spherical-linear interpolation with another rotation matrix."
msgstr ""
-#: doc/classes/Basis.xml:153
+#: doc/classes/Basis.xml:159
msgid "Transposed dot product with the X axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:162
+#: doc/classes/Basis.xml:168
msgid "Transposed dot product with the Y axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:171
+#: doc/classes/Basis.xml:177
msgid "Transposed dot product with the Z axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:178
+#: doc/classes/Basis.xml:184
msgid "Returns the transposed version of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:187
+#: doc/classes/Basis.xml:193
msgid "Returns a vector transformed (multiplied) by the matrix."
msgstr ""
-#: doc/classes/Basis.xml:196
+#: doc/classes/Basis.xml:202
msgid ""
-"Returns a vector transformed (multiplied) by the transposed matrix.\n"
+"Returns a vector transformed (multiplied) by the transposed basis matrix.\n"
"[b]Note:[/b] This results in a multiplication by the inverse of the matrix "
"only if it represents a rotation-reflection."
msgstr ""
-#: doc/classes/Basis.xml:203
-msgid "The basis matrix's X vector."
+#: doc/classes/Basis.xml:209 doc/classes/Transform2D.xml:181
+msgid ""
+"The basis matrix's X vector (column 0). Equivalent to array index [code]0[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:206
-msgid "The basis matrix's Y vector."
+#: doc/classes/Basis.xml:212 doc/classes/Transform2D.xml:184
+msgid ""
+"The basis matrix's Y vector (column 1). Equivalent to array index [code]1[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:209
-msgid "The basis matrix's Z vector."
+#: doc/classes/Basis.xml:215
+msgid ""
+"The basis matrix's Z vector (column 2). Equivalent to array index [code]2[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:214
+#: doc/classes/Basis.xml:220
msgid ""
-"The identity basis. This is identical to calling [code]Basis()[/code] "
-"without any parameters. This constant can be used to make your code clearer."
+"The identity basis, with no rotation or scaling applied.\n"
+"This is identical to calling [code]Basis()[/code] without any parameters. "
+"This constant can be used to make your code clearer, and for consistency "
+"with C#."
msgstr ""
-#: doc/classes/Basis.xml:217
+#: doc/classes/Basis.xml:224
msgid ""
"The basis that will flip something along the X axis when used in a "
"transformation."
msgstr ""
-#: doc/classes/Basis.xml:220
+#: doc/classes/Basis.xml:227
msgid ""
"The basis that will flip something along the Y axis when used in a "
"transformation."
msgstr ""
-#: doc/classes/Basis.xml:223
+#: doc/classes/Basis.xml:230
msgid ""
"The basis that will flip something along the Z axis when used in a "
"transformation."
@@ -9942,97 +9974,111 @@ msgstr ""
#: doc/classes/Button.xml:7
msgid ""
"Button is the standard themed button. It can contain text and an icon, and "
-"will display them according to the current [Theme]."
+"will display them according to the current [Theme].\n"
+"[b]Example of creating a button and assigning an action when pressed by code:"
+"[/b]\n"
+"[codeblock]\n"
+"func _ready():\n"
+" var button = Button.new()\n"
+" button.text = \"Click me\"\n"
+" button.connect(\"pressed\", self, \"_button_pressed\")\n"
+" add_child(button)\n"
+"\n"
+"func _button_pressed():\n"
+" print(\"Hello world!\")\n"
+"[/codeblock]\n"
+"Buttons (like all Control nodes) can also be created in the editor, but some "
+"situations may require creating them from code."
msgstr ""
-#: doc/classes/Button.xml:15
+#: doc/classes/Button.xml:27
msgid ""
"Text alignment policy for the button's text, use one of the [enum TextAlign] "
"constants."
msgstr ""
-#: doc/classes/Button.xml:18
+#: doc/classes/Button.xml:30
msgid ""
"When this property is enabled, text that is too large to fit the button is "
"clipped, when disabled the Button will always be wide enough to hold the "
"text."
msgstr ""
-#: doc/classes/Button.xml:21
+#: doc/classes/Button.xml:33
msgid ""
"When enabled, the button's icon will expand/shrink to fit the button's size "
"while keeping its aspect."
msgstr ""
-#: doc/classes/Button.xml:24
+#: doc/classes/Button.xml:36
msgid "Flat buttons don't display decoration."
msgstr ""
-#: doc/classes/Button.xml:27
+#: doc/classes/Button.xml:39
msgid ""
"Button's icon, if text is present the icon will be placed before the text."
msgstr ""
-#: doc/classes/Button.xml:30 doc/classes/LinkButton.xml:18
+#: doc/classes/Button.xml:42 doc/classes/LinkButton.xml:18
msgid "The button's text that will be displayed inside the button's area."
msgstr ""
-#: doc/classes/Button.xml:35
+#: doc/classes/Button.xml:47
msgid "Align the text to the left."
msgstr ""
-#: doc/classes/Button.xml:38
+#: doc/classes/Button.xml:50
msgid "Align the text to the center."
msgstr ""
-#: doc/classes/Button.xml:41
+#: doc/classes/Button.xml:53
msgid "Align the text to the right."
msgstr ""
-#: doc/classes/Button.xml:46
+#: doc/classes/Button.xml:58
msgid "[StyleBox] used when the [Button] is disabled."
msgstr ""
-#: doc/classes/Button.xml:49
+#: doc/classes/Button.xml:61
msgid ""
"[StyleBox] used when the [Button] is focused. It is displayed over the "
"current [StyleBox], so using [StyleBoxEmpty] will just disable the focus "
"visual effect."
msgstr ""
-#: doc/classes/Button.xml:52
+#: doc/classes/Button.xml:64
msgid "[Font] of the [Button]'s text."
msgstr ""
-#: doc/classes/Button.xml:55
+#: doc/classes/Button.xml:67
msgid "Default text [Color] of the [Button]."
msgstr ""
-#: doc/classes/Button.xml:58
+#: doc/classes/Button.xml:70
msgid "Text [Color] used when the [Button] is disabled."
msgstr ""
-#: doc/classes/Button.xml:61
+#: doc/classes/Button.xml:73
msgid "Text [Color] used when the [Button] is being hovered."
msgstr ""
-#: doc/classes/Button.xml:64
+#: doc/classes/Button.xml:76
msgid "Text [Color] used when the [Button] is being pressed."
msgstr ""
-#: doc/classes/Button.xml:67
+#: doc/classes/Button.xml:79
msgid "[StyleBox] used when the [Button] is being hovered."
msgstr ""
-#: doc/classes/Button.xml:70
+#: doc/classes/Button.xml:82
msgid "The horizontal space between [Button]'s icon and text."
msgstr ""
-#: doc/classes/Button.xml:73
+#: doc/classes/Button.xml:85
msgid "Default [StyleBox] for the [Button]."
msgstr ""
-#: doc/classes/Button.xml:76
+#: doc/classes/Button.xml:88
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr ""
@@ -10684,7 +10730,7 @@ msgstr ""
#: doc/classes/CameraEffects.xml:37
msgid ""
"The exposure override value to use. Higher values will result in a brighter "
-"scene. Only effective if [member override_exposure_enable] is [code]true[/"
+"scene. Only effective if [member override_exposure_enabled] is [code]true[/"
"code]."
msgstr ""
@@ -10938,265 +10984,282 @@ msgid ""
msgstr ""
#: doc/classes/CanvasItem.xml:319
-msgid "Draws a string using a custom font."
+msgid ""
+"Draws [code]text[/code] using the specified [code]font[/code] at the "
+"[code]position[/code] (top-left corner). The text will have its color "
+"multiplied by [code]modulate[/code]. If [code]clip_w[/code] is greater than "
+"or equal to 0, the text will be clipped if it exceeds the specified width.\n"
+"[b]Example using the default project font:[/b]\n"
+"[codeblock]\n"
+"# If using this method in a script that redraws constantly, move the\n"
+"# `default_font` declaration to a member variable assigned in `_ready()`\n"
+"# so the Control is only created once.\n"
+"var default_font = Control.new().get_font(\"font\")\n"
+"draw_string(default_font, Vector2(64, 64), \"Hello world\")\n"
+"[/codeblock]\n"
+"See also [method Font.draw]."
msgstr ""
-#: doc/classes/CanvasItem.xml:330
+#: doc/classes/CanvasItem.xml:339
msgid "Draws a styled rectangle."
msgstr ""
-#: doc/classes/CanvasItem.xml:353
+#: doc/classes/CanvasItem.xml:362
msgid "Draws a texture at a given position."
msgstr ""
-#: doc/classes/CanvasItem.xml:380
+#: doc/classes/CanvasItem.xml:389
msgid ""
"Draws a textured rectangle at a given position, optionally modulated by a "
"color. If [code]transpose[/code] is [code]true[/code], the texture will have "
"its X and Y coordinates swapped."
msgstr ""
-#: doc/classes/CanvasItem.xml:409
+#: doc/classes/CanvasItem.xml:418
msgid ""
"Draws a textured rectangle region at a given position, optionally modulated "
"by a color. If [code]transpose[/code] is [code]true[/code], the texture will "
"have its X and Y coordinates swapped."
msgstr ""
-#: doc/classes/CanvasItem.xml:416 doc/classes/Node3D.xml:19
+#: doc/classes/CanvasItem.xml:425 doc/classes/Node3D.xml:19
msgid ""
"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."
msgstr ""
-#: doc/classes/CanvasItem.xml:423
+#: doc/classes/CanvasItem.xml:432
msgid "Returns the [RID] of the [World2D] canvas where this item is in."
msgstr ""
-#: doc/classes/CanvasItem.xml:430
+#: doc/classes/CanvasItem.xml:439
msgid "Returns the canvas item RID used by [RenderingServer] for this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:437
+#: doc/classes/CanvasItem.xml:446
msgid "Returns the transform matrix of this item's canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:444
+#: doc/classes/CanvasItem.xml:453
msgid "Returns the global position of the mouse."
msgstr ""
-#: doc/classes/CanvasItem.xml:451
+#: doc/classes/CanvasItem.xml:460
msgid "Returns the global transform matrix of this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:458
+#: doc/classes/CanvasItem.xml:467
msgid ""
"Returns the global transform matrix of this item in relation to the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:465
+#: doc/classes/CanvasItem.xml:474
msgid "Returns the mouse position relative to this item's position."
msgstr ""
-#: doc/classes/CanvasItem.xml:472
+#: doc/classes/CanvasItem.xml:481
msgid "Returns the transform matrix of this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:479
+#: doc/classes/CanvasItem.xml:488
msgid "Returns the viewport's boundaries as a [Rect2]."
msgstr ""
-#: doc/classes/CanvasItem.xml:486
+#: doc/classes/CanvasItem.xml:495
msgid "Returns this item's transform in relation to the viewport."
msgstr ""
-#: doc/classes/CanvasItem.xml:493
+#: doc/classes/CanvasItem.xml:502
msgid "Returns the [World2D] where this item is in."
msgstr ""
-#: doc/classes/CanvasItem.xml:500
+#: doc/classes/CanvasItem.xml:509
msgid "Hide the [CanvasItem] if it's currently visible."
msgstr ""
-#: doc/classes/CanvasItem.xml:507
+#: doc/classes/CanvasItem.xml:516
msgid ""
"Returns [code]true[/code] if local transform notifications are communicated "
"to children."
msgstr ""
-#: doc/classes/CanvasItem.xml:514
+#: doc/classes/CanvasItem.xml:523
msgid ""
"Returns [code]true[/code] if the node is set as top-level. See [method "
"set_as_toplevel]."
msgstr ""
-#: doc/classes/CanvasItem.xml:521
+#: doc/classes/CanvasItem.xml:530
msgid ""
"Returns [code]true[/code] if global transform notifications are communicated "
"to children."
msgstr ""
-#: doc/classes/CanvasItem.xml:528
+#: doc/classes/CanvasItem.xml:537 doc/classes/Node3D.xml:104
msgid ""
"Returns [code]true[/code] if the node is present in the [SceneTree], its "
-"[member visible] property is [code]true[/code] and its inherited visibility "
-"is also [code]true[/code]."
+"[member visible] property is [code]true[/code] and all its antecedents are "
+"also visible. If any antecedent is hidden, this node will not be visible in "
+"the scene tree."
msgstr ""
-#: doc/classes/CanvasItem.xml:537
+#: doc/classes/CanvasItem.xml:546
msgid "Assigns [code]screen_point[/code] as this node's new local transform."
msgstr ""
-#: doc/classes/CanvasItem.xml:546
+#: doc/classes/CanvasItem.xml:555
msgid ""
"Transformations issued by [code]event[/code]'s inputs are applied in local "
"space instead of global space."
msgstr ""
-#: doc/classes/CanvasItem.xml:555
+#: doc/classes/CanvasItem.xml:564
msgid ""
"If [code]enable[/code] is [code]true[/code], the node won't inherit its "
"transform from parent canvas items."
msgstr ""
-#: doc/classes/CanvasItem.xml:564
+#: doc/classes/CanvasItem.xml:573
msgid ""
"If [code]enable[/code] is [code]true[/code], children will be updated with "
"local transform data."
msgstr ""
-#: doc/classes/CanvasItem.xml:573
+#: doc/classes/CanvasItem.xml:582
msgid ""
"If [code]enable[/code] is [code]true[/code], children will be updated with "
"global transform data."
msgstr ""
-#: doc/classes/CanvasItem.xml:580
+#: doc/classes/CanvasItem.xml:589
msgid ""
"Show the [CanvasItem] if it's currently hidden. For controls that inherit "
"[Popup], the correct way to make them visible is to call one of the multiple "
"[code]popup*()[/code] functions instead."
msgstr ""
-#: doc/classes/CanvasItem.xml:587
+#: doc/classes/CanvasItem.xml:596
msgid ""
"Queue the [CanvasItem] for update. [constant NOTIFICATION_DRAW] will be "
"called on idle time to request redraw."
msgstr ""
-#: doc/classes/CanvasItem.xml:593
+#: doc/classes/CanvasItem.xml:602
msgid ""
"The rendering layers in which this [CanvasItem] responds to [Light2D] nodes."
msgstr ""
-#: doc/classes/CanvasItem.xml:596
+#: doc/classes/CanvasItem.xml:605
msgid "The material applied to textures on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:599
+#: doc/classes/CanvasItem.xml:608
msgid "The color applied to textures on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:602
+#: doc/classes/CanvasItem.xml:611
msgid ""
"The color applied to textures on this [CanvasItem]. This is not inherited by "
"children [CanvasItem]s."
msgstr ""
-#: doc/classes/CanvasItem.xml:605
+#: doc/classes/CanvasItem.xml:614
msgid "If [code]true[/code], the object draws behind its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:608
+#: doc/classes/CanvasItem.xml:617
msgid "If [code]true[/code], the object draws on top of its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:611
+#: doc/classes/CanvasItem.xml:620
msgid "The texture filtering mode to use on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:614
+#: doc/classes/CanvasItem.xml:623
msgid "The texture repeating mode to use on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:617
+#: doc/classes/CanvasItem.xml:626
msgid ""
"If [code]true[/code], the parent [CanvasItem]'s [member material] property "
"is used as this one's material."
msgstr ""
-#: doc/classes/CanvasItem.xml:620
+#: doc/classes/CanvasItem.xml:629
msgid ""
-"If [code]true[/code], this [CanvasItem] is drawn. For controls that inherit "
-"[Popup], the correct way to make them visible is to call one of the multiple "
-"[code]popup*()[/code] functions instead."
+"If [code]true[/code], this [CanvasItem] is drawn. The node is only visible "
+"if all of its antecedents are visible as well (in other words, [method "
+"is_visible_in_tree] must return [code]true[/code]).\n"
+"[b]Note:[/b] For controls that inherit [Popup], the correct way to make them "
+"visible is to call one of the multiple [code]popup*()[/code] functions "
+"instead."
msgstr ""
-#: doc/classes/CanvasItem.xml:626
+#: doc/classes/CanvasItem.xml:636
msgid ""
"Emitted when the [CanvasItem] must redraw. This can only be connected "
"realtime, as deferred will not allow drawing."
msgstr ""
-#: doc/classes/CanvasItem.xml:631
+#: doc/classes/CanvasItem.xml:641
msgid "Emitted when becoming hidden."
msgstr ""
-#: doc/classes/CanvasItem.xml:636
+#: doc/classes/CanvasItem.xml:646
msgid "Emitted when the item rect has changed."
msgstr ""
-#: doc/classes/CanvasItem.xml:641
+#: doc/classes/CanvasItem.xml:651
msgid "Emitted when the visibility (hidden/visible) changes."
msgstr ""
-#: doc/classes/CanvasItem.xml:647
+#: doc/classes/CanvasItem.xml:657
msgid ""
"The [CanvasItem]'s transform has changed. This notification is only received "
"if enabled by [method set_notify_transform] or [method "
"set_notify_local_transform]."
msgstr ""
-#: doc/classes/CanvasItem.xml:650
+#: doc/classes/CanvasItem.xml:660
msgid "The [CanvasItem] is requested to draw."
msgstr ""
-#: doc/classes/CanvasItem.xml:653
+#: doc/classes/CanvasItem.xml:663
msgid "The [CanvasItem]'s visibility has changed."
msgstr ""
-#: doc/classes/CanvasItem.xml:656
+#: doc/classes/CanvasItem.xml:666
msgid "The [CanvasItem] has entered the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:659
+#: doc/classes/CanvasItem.xml:669
msgid "The [CanvasItem] has exited the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:662 doc/classes/CanvasItem.xml:688
+#: doc/classes/CanvasItem.xml:672 doc/classes/CanvasItem.xml:698
msgid "The [CanvasItem] will inherit the filter from its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:665
+#: doc/classes/CanvasItem.xml:675
msgid ""
"The texture filter reads from the nearest pixel only. The simplest and "
"fastest method of filtering. Useful for pixel art."
msgstr ""
-#: doc/classes/CanvasItem.xml:668
+#: doc/classes/CanvasItem.xml:678
msgid ""
"The texture filter blends between the nearest four pixels. Use this for most "
"cases where you want to avoid a pixelated style."
msgstr ""
-#: doc/classes/CanvasItem.xml:671
+#: doc/classes/CanvasItem.xml:681
msgid ""
"The texture filter reads from the nearest pixel in the nearest mipmap. This "
"is the fastest way to read from textures with mipmaps."
msgstr ""
-#: doc/classes/CanvasItem.xml:674
+#: doc/classes/CanvasItem.xml:684
msgid ""
"The texture filter blends between the nearest 4 pixels and between the "
"nearest 2 mipmaps. Use this for non-pixel art textures that may be viewed at "
@@ -11204,7 +11267,7 @@ msgid ""
"smooth out pixels that are smaller than on-screen pixels."
msgstr ""
-#: doc/classes/CanvasItem.xml:677
+#: doc/classes/CanvasItem.xml:687
msgid ""
"The texture filter reads from the nearest pixel, but selects a mipmap based "
"on the angle between the surface and the camera view. This reduces artifacts "
@@ -11213,7 +11276,7 @@ msgid ""
"TEXTURE_FILTER_NEAREST_WITH_MIPMAPS] is usually more appropriate."
msgstr ""
-#: doc/classes/CanvasItem.xml:681
+#: doc/classes/CanvasItem.xml:691
msgid ""
"The texture filter blends between the nearest 4 pixels and selects a mipmap "
"based on the angle between the surface and the camera view. This reduces "
@@ -11224,21 +11287,21 @@ msgid ""
"TEXTURE_FILTER_LINEAR_WITH_MIPMAPS] is usually more appropriate."
msgstr ""
-#: doc/classes/CanvasItem.xml:691
+#: doc/classes/CanvasItem.xml:701
msgid "Texture will not repeat."
msgstr ""
-#: doc/classes/CanvasItem.xml:694
+#: doc/classes/CanvasItem.xml:704
msgid "Texture will repeat normally."
msgstr ""
-#: doc/classes/CanvasItem.xml:697
+#: doc/classes/CanvasItem.xml:707
msgid ""
"Texture will repeat in a 2x2 tiled mode, where elements at even positions "
"are mirrored."
msgstr ""
-#: doc/classes/CanvasItem.xml:700
+#: doc/classes/CanvasItem.xml:710
msgid "Represents the size of the [enum TextureRepeat] enum."
msgstr ""
@@ -12311,16 +12374,15 @@ msgid ""
msgstr ""
#: doc/classes/Color.xml:4
-msgid "Color in RGBA format with some support for ARGB format."
+msgid "Color in RGBA format using floats on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:7
msgid ""
-"A color is represented by red, green, and blue [code](r, g, b)[/code] "
-"components. Additionally, [code]a[/code] represents the alpha component, "
-"often used for transparency. Values are in floating-point and usually range "
-"from 0 to 1. Some properties (such as [member CanvasItem.modulate]) may "
-"accept values greater than 1.\n"
+"A color represented by red, green, blue, and alpha (RGBA) components. The "
+"alpha component is often used for transparency. Values are in floating-point "
+"and usually range from 0 to 1. Some properties (such as CanvasItem.modulate) "
+"may accept values greater than 1 (overbright or HDR colors).\n"
"You can also create a color from standardized color names by using [method "
"@GDScript.ColorN] or directly using the color constants defined here. The "
"standardized color set is based on the [url=https://en.wikipedia.org/wiki/"
@@ -12534,47 +12596,48 @@ msgid ""
msgstr ""
#: doc/classes/Color.xml:280
-msgid "Alpha value (range 0 to 1)."
+msgid ""
+"The color's alpha (transparency) component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:283
-msgid "Alpha value (range 0 to 255)."
+msgid "Wrapper for [member a] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:286
-msgid "Blue value (range 0 to 1)."
+msgid "The color's blue component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:289
-msgid "Blue value (range 0 to 255)."
+msgid "Wrapper for [member b] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:292
-msgid "Green value (range 0 to 1)."
+msgid "The color's green component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:295
-msgid "Green value (range 0 to 255)."
+msgid "Wrapper for [member g] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:298
-msgid "HSV hue value (range 0 to 1)."
+msgid "The HSV hue of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:301
-msgid "Red value (range 0 to 1)."
+msgid "The color's red component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:304
-msgid "Red value (range 0 to 255)."
+msgid "Wrapper for [member r] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:307
-msgid "HSV saturation value (range 0 to 1)."
+msgid "The HSV saturation of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:310
-msgid "HSV value (range 0 to 1)."
+msgid "The HSV value (brightness) of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:315
@@ -14494,23 +14557,35 @@ msgstr ""
#: doc/classes/Control.xml:859
msgid ""
"The node's scale, relative to its [member rect_size]. Change this property "
-"to scale the node around its [member rect_pivot_offset]."
-msgstr ""
-
-#: doc/classes/Control.xml:862
+"to scale the node around its [member rect_pivot_offset]. The Control's "
+"[member hint_tooltip] will also scale according to this value.\n"
+"[b]Note:[/b] This property is mainly intended to be used for animation "
+"purposes. Text inside the Control will look pixelated or blurry when the "
+"Control is scaled. To support multiple resolutions in your project, use an "
+"appropriate viewport stretch mode as described in the [url=https://docs."
+"godotengine.org/en/latest/tutorials/viewports/multiple_resolutions."
+"html]documentation[/url] instead of scaling Controls individually.\n"
+"[b]Note:[/b] If the Control node is a child of a [Container] node, the scale "
+"will be reset to [code]Vector2(1, 1)[/code] when the scene is instanced. To "
+"set the Control's scale when it's instanced, wait for one frame using "
+"[code]yield(get_tree(), \"idle_frame\")[/code] then set its [member "
+"rect_scale] property."
+msgstr ""
+
+#: doc/classes/Control.xml:864
msgid ""
"The size of the node's bounding rectangle, in pixels. [Container] nodes "
"update this property automatically."
msgstr ""
-#: doc/classes/Control.xml:865
+#: doc/classes/Control.xml:867
msgid ""
"Tells the parent [Container] nodes how they should resize and place the node "
"on the X axis. Use one of the [enum SizeFlags] constants to change the "
"flags. See the constants to learn what each does."
msgstr ""
-#: doc/classes/Control.xml:868
+#: doc/classes/Control.xml:870
msgid ""
"If the node and at least one of its neighbours uses the [constant "
"SIZE_EXPAND] size flag, the parent [Container] will let it take more or less "
@@ -14519,181 +14594,181 @@ msgid ""
"space."
msgstr ""
-#: doc/classes/Control.xml:871
+#: doc/classes/Control.xml:873
msgid ""
"Tells the parent [Container] nodes how they should resize and place the node "
"on the Y axis. Use one of the [enum SizeFlags] constants to change the "
"flags. See the constants to learn what each does."
msgstr ""
-#: doc/classes/Control.xml:874
+#: doc/classes/Control.xml:876
msgid ""
"Changing this property replaces the current [Theme] resource this node and "
"all its [Control] children use."
msgstr ""
-#: doc/classes/Control.xml:880
+#: doc/classes/Control.xml:882
msgid "Emitted when the node gains keyboard focus."
msgstr ""
-#: doc/classes/Control.xml:885
+#: doc/classes/Control.xml:887
msgid "Emitted when the node loses keyboard focus."
msgstr ""
-#: doc/classes/Control.xml:892
+#: doc/classes/Control.xml:894
msgid "Emitted when the node receives an [InputEvent]."
msgstr ""
-#: doc/classes/Control.xml:897
+#: doc/classes/Control.xml:899
msgid "Emitted when the node's minimum size changes."
msgstr ""
-#: doc/classes/Control.xml:902
+#: doc/classes/Control.xml:904
msgid ""
"Emitted when the mouse enters the control's [code]Rect[/code] area, provided "
"its [member mouse_filter] lets the event reach it."
msgstr ""
-#: doc/classes/Control.xml:907
+#: doc/classes/Control.xml:909
msgid ""
"Emitted when the mouse leaves the control's [code]Rect[/code] area, provided "
"its [member mouse_filter] lets the event reach it."
msgstr ""
-#: doc/classes/Control.xml:912
+#: doc/classes/Control.xml:914
msgid "Emitted when the control changes size."
msgstr ""
-#: doc/classes/Control.xml:917
+#: doc/classes/Control.xml:919
msgid ""
"Emitted when one of the size flags changes. See [member "
"size_flags_horizontal] and [member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:927
+#: doc/classes/Control.xml:929
msgid "The node cannot grab focus. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:930
+#: doc/classes/Control.xml:932
msgid ""
"The node can only grab focus on mouse clicks. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:933
+#: doc/classes/Control.xml:935
msgid ""
"The node can grab focus on mouse click or using the arrows and the Tab keys "
"on the keyboard. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:936
+#: doc/classes/Control.xml:938
msgid ""
"Sent when the node changes size. Use [member rect_size] to get the new size."
msgstr ""
-#: doc/classes/Control.xml:939
+#: doc/classes/Control.xml:941
msgid "Sent when the mouse pointer enters the node."
msgstr ""
-#: doc/classes/Control.xml:942
+#: doc/classes/Control.xml:944
msgid "Sent when the mouse pointer exits the node."
msgstr ""
-#: doc/classes/Control.xml:945
+#: doc/classes/Control.xml:947
msgid "Sent when the node grabs focus."
msgstr ""
-#: doc/classes/Control.xml:948
+#: doc/classes/Control.xml:950
msgid "Sent when the node loses focus."
msgstr ""
-#: doc/classes/Control.xml:951
+#: doc/classes/Control.xml:953
msgid ""
"Sent when the node's [member theme] changes, right before Godot redraws the "
"control. Happens when you call one of the [code]add_theme_*_override[/code] "
"methods."
msgstr ""
-#: doc/classes/Control.xml:954
+#: doc/classes/Control.xml:956
msgid ""
"Sent when this node is inside a [ScrollContainer] which has begun being "
"scrolled."
msgstr ""
-#: doc/classes/Control.xml:957
+#: doc/classes/Control.xml:959
msgid ""
"Sent when this node is inside a [ScrollContainer] which has stopped being "
"scrolled."
msgstr ""
-#: doc/classes/Control.xml:960
+#: doc/classes/Control.xml:962
msgid ""
"Show the system's arrow mouse cursor when the user hovers the node. Use with "
"[member mouse_default_cursor_shape]."
msgstr ""
-#: doc/classes/Control.xml:963
+#: doc/classes/Control.xml:965
msgid ""
"Show the system's I-beam mouse cursor when the user hovers the node. The I-"
"beam pointer has a shape similar to \"I\". It tells the user they can "
"highlight or insert text."
msgstr ""
-#: doc/classes/Control.xml:966
+#: doc/classes/Control.xml:968
msgid ""
"Show the system's pointing hand mouse cursor when the user hovers the node."
msgstr ""
-#: doc/classes/Control.xml:969
+#: doc/classes/Control.xml:971
msgid "Show the system's cross mouse cursor when the user hovers the node."
msgstr ""
-#: doc/classes/Control.xml:972
+#: doc/classes/Control.xml:974
msgid ""
"Show the system's wait mouse cursor, often an hourglass, when the user "
"hovers the node."
msgstr ""
-#: doc/classes/Control.xml:975
+#: doc/classes/Control.xml:977
msgid ""
"Show the system's busy mouse cursor when the user hovers the node. Often an "
"hourglass."
msgstr ""
-#: doc/classes/Control.xml:978
+#: doc/classes/Control.xml:980
msgid ""
"Show the system's drag mouse cursor, often a closed fist or a cross symbol, "
"when the user hovers the node. It tells the user they're currently dragging "
"an item, like a node in the Scene dock."
msgstr ""
-#: doc/classes/Control.xml:981
+#: doc/classes/Control.xml:983
msgid ""
"Show the system's drop mouse cursor when the user hovers the node. It can be "
"an open hand. It tells the user they can drop an item they're currently "
"grabbing, like a node in the Scene dock."
msgstr ""
-#: doc/classes/Control.xml:984
+#: doc/classes/Control.xml:986
msgid ""
"Show the system's forbidden mouse cursor when the user hovers the node. "
"Often a crossed circle."
msgstr ""
-#: doc/classes/Control.xml:987
+#: doc/classes/Control.xml:989
msgid ""
"Show the system's vertical resize mouse cursor when the user hovers the "
"node. A double-headed vertical arrow. It tells the user they can resize the "
"window or the panel vertically."
msgstr ""
-#: doc/classes/Control.xml:990
+#: doc/classes/Control.xml:992
msgid ""
"Show the system's horizontal resize mouse cursor when the user hovers the "
"node. A double-headed horizontal arrow. It tells the user they can resize "
"the window or the panel horizontally."
msgstr ""
-#: doc/classes/Control.xml:993
+#: doc/classes/Control.xml:995
msgid ""
"Show the system's window resize mouse cursor when the user hovers the node. "
"The cursor is a double-headed arrow that goes from the bottom left to the "
@@ -14701,7 +14776,7 @@ msgid ""
"horizontally and vertically."
msgstr ""
-#: doc/classes/Control.xml:996
+#: doc/classes/Control.xml:998
msgid ""
"Show the system's window resize mouse cursor when the user hovers the node. "
"The cursor is a double-headed arrow that goes from the top left to the "
@@ -14709,93 +14784,93 @@ msgid ""
"they can resize the window or the panel both horizontally and vertically."
msgstr ""
-#: doc/classes/Control.xml:999
+#: doc/classes/Control.xml:1001
msgid ""
"Show the system's move mouse cursor when the user hovers the node. It shows "
"2 double-headed arrows at a 90 degree angle. It tells the user they can move "
"a UI element freely."
msgstr ""
-#: doc/classes/Control.xml:1002
+#: doc/classes/Control.xml:1004
msgid ""
"Show the system's vertical split mouse cursor when the user hovers the node. "
"On Windows, it's the same as [constant CURSOR_VSIZE]."
msgstr ""
-#: doc/classes/Control.xml:1005
+#: doc/classes/Control.xml:1007
msgid ""
"Show the system's horizontal split mouse cursor when the user hovers the "
"node. On Windows, it's the same as [constant CURSOR_HSIZE]."
msgstr ""
-#: doc/classes/Control.xml:1008
+#: doc/classes/Control.xml:1010
msgid ""
"Show the system's help mouse cursor when the user hovers the node, a "
"question mark."
msgstr ""
-#: doc/classes/Control.xml:1011
+#: doc/classes/Control.xml:1013
msgid ""
"Snap all 4 anchors to the top-left of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1014
+#: doc/classes/Control.xml:1016
msgid ""
"Snap all 4 anchors to the top-right of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1017
+#: doc/classes/Control.xml:1019
msgid ""
"Snap all 4 anchors to the bottom-left of the parent control's bounds. Use "
"with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1020
+#: doc/classes/Control.xml:1022
msgid ""
"Snap all 4 anchors to the bottom-right of the parent control's bounds. Use "
"with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1023
+#: doc/classes/Control.xml:1025
msgid ""
"Snap all 4 anchors to the center of the left edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1026
+#: doc/classes/Control.xml:1028
msgid ""
"Snap all 4 anchors to the center of the top edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1029
+#: doc/classes/Control.xml:1031
msgid ""
"Snap all 4 anchors to the center of the right edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1032
+#: doc/classes/Control.xml:1034
msgid ""
"Snap all 4 anchors to the center of the bottom edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1035
+#: doc/classes/Control.xml:1037
msgid ""
"Snap all 4 anchors to the center of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1038
+#: doc/classes/Control.xml:1040
msgid ""
"Snap all 4 anchors to the left edge of the parent control. The left margin "
"becomes relative to the left edge and the top margin relative to the top "
"left corner of the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1041
+#: doc/classes/Control.xml:1043
msgid ""
"Snap all 4 anchors to the top edge of the parent control. The left margin "
"becomes relative to the top left corner, the top margin relative to the top "
@@ -14803,14 +14878,14 @@ msgid ""
"parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1044
+#: doc/classes/Control.xml:1046
msgid ""
"Snap all 4 anchors to the right edge of the parent control. The right margin "
"becomes relative to the right edge and the top margin relative to the top "
"right corner of the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1047
+#: doc/classes/Control.xml:1049
msgid ""
"Snap all 4 anchors to the bottom edge of the parent control. The left margin "
"becomes relative to the bottom left corner, the bottom margin relative to "
@@ -14818,19 +14893,19 @@ msgid ""
"the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1050
+#: doc/classes/Control.xml:1052
msgid ""
"Snap all 4 anchors to a vertical line that cuts the parent control in half. "
"Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1053
+#: doc/classes/Control.xml:1055
msgid ""
"Snap all 4 anchors to a horizontal line that cuts the parent control in "
"half. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1056
+#: doc/classes/Control.xml:1058
msgid ""
"Snap all 4 anchors to the respective corners of the parent control. Set all "
"4 margins to 0 after you applied this preset and the [Control] will fit its "
@@ -14838,30 +14913,30 @@ msgid ""
"editor. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1059
+#: doc/classes/Control.xml:1061
msgid "The control will be resized to its minimum size."
msgstr ""
-#: doc/classes/Control.xml:1062
+#: doc/classes/Control.xml:1064
msgid "The control's width will not change."
msgstr ""
-#: doc/classes/Control.xml:1065
+#: doc/classes/Control.xml:1067
msgid "The control's height will not change."
msgstr ""
-#: doc/classes/Control.xml:1068
+#: doc/classes/Control.xml:1070
msgid "The control's size will not change."
msgstr ""
-#: doc/classes/Control.xml:1071
+#: doc/classes/Control.xml:1073
msgid ""
"Tells the parent [Container] to expand the bounds of this node to fill all "
"the available space without pushing any other node. Use with [member "
"size_flags_horizontal] and [member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1074
+#: doc/classes/Control.xml:1076
msgid ""
"Tells the parent [Container] to let this node take all the available space "
"on the axis you flag. If multiple neighboring nodes are set to expand, "
@@ -14870,13 +14945,13 @@ msgid ""
"[member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1077
+#: doc/classes/Control.xml:1079
msgid ""
"Sets the node's size flags to both fill and expand. See the 2 constants "
"above for more information."
msgstr ""
-#: doc/classes/Control.xml:1080
+#: doc/classes/Control.xml:1082
msgid ""
"Tells the parent [Container] to center the node in itself. It centers the "
"control based on its bounding box, so it doesn't work with the fill or "
@@ -14884,7 +14959,7 @@ msgid ""
"size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1083
+#: doc/classes/Control.xml:1085
msgid ""
"Tells the parent [Container] to align the node with its end, either the "
"bottom or the right edge. It doesn't work with the fill or expand size "
@@ -14892,7 +14967,7 @@ msgid ""
"size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1086
+#: doc/classes/Control.xml:1088
msgid ""
"The control will receive mouse button input events through [method "
"_gui_input] if clicked on. And the control will receive the [signal "
@@ -14901,7 +14976,7 @@ msgid ""
"other controls. This also results in blocking signals in other controls."
msgstr ""
-#: doc/classes/Control.xml:1089
+#: doc/classes/Control.xml:1091
msgid ""
"The control will receive mouse button input events through [method "
"_gui_input] if clicked on. And the control will receive the [signal "
@@ -14913,7 +14988,7 @@ msgid ""
"not be fired."
msgstr ""
-#: doc/classes/Control.xml:1092
+#: doc/classes/Control.xml:1094
msgid ""
"The control will not receive mouse button input events through [method "
"_gui_input]. The control will also not receive the [signal mouse_entered] "
@@ -14922,25 +14997,25 @@ msgid ""
"handled automatically."
msgstr ""
-#: doc/classes/Control.xml:1095
+#: doc/classes/Control.xml:1097
msgid ""
"The control will grow to the left or top to make up if its minimum size is "
"changed to be greater than its current size on the respective axis."
msgstr ""
-#: doc/classes/Control.xml:1098
+#: doc/classes/Control.xml:1100
msgid ""
"The control will grow to the right or bottom to make up if its minimum size "
"is changed to be greater than its current size on the respective axis."
msgstr ""
-#: doc/classes/Control.xml:1101
+#: doc/classes/Control.xml:1103
msgid ""
"The control will grow in both directions equally to make up if its minimum "
"size is changed to be greater than its current size."
msgstr ""
-#: doc/classes/Control.xml:1104
+#: doc/classes/Control.xml:1106
msgid ""
"Snaps one of the 4 anchor's sides to the origin of the node's [code]Rect[/"
"code], in the top left. Use it with one of the [code]anchor_*[/code] member "
@@ -14948,7 +15023,7 @@ msgid ""
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1107
+#: doc/classes/Control.xml:1109
msgid ""
"Snaps one of the 4 anchor's sides to the end of the node's [code]Rect[/"
"code], in the bottom right. Use it with one of the [code]anchor_*[/code] "
@@ -16733,7 +16808,7 @@ msgstr ""
msgid ""
"Returns the [Texture2D] associated with the specified [enum DecalTexture]. "
"This is a convenience method, in most cases you should access the texture "
-"directly. \n"
+"directly.\n"
"For example, instead of [code]albedo_tex = $Decal.get_texture(Decal."
"TEXTURE_ALBEDO)[/code], use [code]albedo_tex = $Decal.texture_albedo[/"
"code].\n"
@@ -16749,7 +16824,7 @@ msgstr ""
msgid ""
"Sets the [Texture2D] associated with the specified [enum DecalTexture]. This "
"is a convenience method, in most cases you should access the texture "
-"directly. \n"
+"directly.\n"
"For example, instead of [code]$Decal.set_texture(Decal.TEXTURE_ALBEDO, "
"albedo_tex)[/code], use [code]$Decal.texture_albedo = albedo_tex[/code].\n"
"One case where this is better than accessing the texture directly is when "
@@ -17098,7 +17173,7 @@ msgstr ""
msgid "The light's shadow rendering algorithm. See [enum ShadowMode]."
msgstr ""
-#: doc/classes/DirectionalLight3D.xml:31 doc/classes/RenderingServer.xml:3254
+#: doc/classes/DirectionalLight3D.xml:31 doc/classes/RenderingServer.xml:3250
msgid ""
"Sets the size of the directional shadow pancake. The pancake offsets the "
"start of the shadow's camera frustum to provide a higher effective depth "
@@ -17172,10 +17247,10 @@ msgstr ""
msgid ""
"Directory type. It is used to manage directories and their content (not "
"restricted to the project folder).\n"
-"When creating a new [Directory], its default opened directory will be "
-"[code]res://[/code]. This may change in the future, so it is advised to "
-"always use [method open] to initialize your [Directory] where you want to "
-"operate, with explicit error checking.\n"
+"When creating a new [Directory], it must be explicitly opened using [method "
+"open] before most methods can be used. However, [method file_exists] and "
+"[method dir_exists] can be used without opening a directory. If so, they use "
+"a path relative to [code]res://[/code].\n"
"Here is an example on how to iterate through the files of a directory:\n"
"[codeblock]\n"
"func dir_contents(path):\n"
@@ -17194,7 +17269,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Directory.xml:27 doc/classes/File.xml:25
+#: doc/classes/Directory.xml:27 doc/classes/File.xml:26
msgid ""
"https://docs.godotengine.org/en/latest/getting_started/step_by_step/"
"filesystem.html"
@@ -17228,41 +17303,43 @@ msgstr ""
#: doc/classes/Directory.xml:65
msgid ""
"Returns whether the target directory exists. The argument can be relative to "
-"the current directory, or an absolute path."
+"the current directory, or an absolute path.\n"
+"If the [Directory] is not open, the path is relative to [code]res://[/code]."
msgstr ""
-#: doc/classes/Directory.xml:74
+#: doc/classes/Directory.xml:75
msgid ""
"Returns whether the target file exists. The argument can be relative to the "
-"current directory, or an absolute path."
+"current directory, or an absolute path.\n"
+"If the [Directory] is not open, the path is relative to [code]res://[/code]."
msgstr ""
-#: doc/classes/Directory.xml:81
+#: doc/classes/Directory.xml:83
msgid ""
"Returns the absolute path to the currently opened directory (e.g. "
"[code]res://folder[/code] or [code]C:\\tmp\\folder[/code])."
msgstr ""
-#: doc/classes/Directory.xml:88
+#: doc/classes/Directory.xml:90
msgid ""
"Returns the currently opened directory's drive index. See [method get_drive] "
"to convert returned index to the name of the drive."
msgstr ""
-#: doc/classes/Directory.xml:97
+#: doc/classes/Directory.xml:99
msgid ""
"On Windows, returns the name of the drive (partition) passed as an argument "
"(e.g. [code]C:[/code]). On other platforms, or if the requested drive does "
"not existed, the method returns an empty String."
msgstr ""
-#: doc/classes/Directory.xml:104
+#: doc/classes/Directory.xml:106
msgid ""
"On Windows, returns the number of drives (partitions) mounted on the current "
"filesystem. On other platforms, the method returns 0."
msgstr ""
-#: doc/classes/Directory.xml:111
+#: doc/classes/Directory.xml:113
msgid ""
"Returns the next element (file or directory) in the current directory "
"(including [code].[/code] and [code]..[/code], unless "
@@ -17273,14 +17350,14 @@ msgid ""
"mandatory in such a case)."
msgstr ""
-#: doc/classes/Directory.xml:119
+#: doc/classes/Directory.xml:121
msgid ""
"On UNIX desktop systems, returns the available space on the current "
"directory's disk. On other platforms, this information is not available and "
"the method returns 0 or -1."
msgstr ""
-#: doc/classes/Directory.xml:130
+#: doc/classes/Directory.xml:132
msgid ""
"Initializes the stream used to list all files and directories using the "
"[method get_next] function, closing the current opened stream if needed. "
@@ -17292,13 +17369,13 @@ msgid ""
"out."
msgstr ""
-#: doc/classes/Directory.xml:139
+#: doc/classes/Directory.xml:141
msgid ""
"Closes the current stream opened with [method list_dir_begin] (whether it "
"has been fully processed with [method get_next] or not does not matter)."
msgstr ""
-#: doc/classes/Directory.xml:148
+#: doc/classes/Directory.xml:150
msgid ""
"Creates a directory. The argument can be relative to the current directory, "
"or an absolute path. The target directory should be placed in an already "
@@ -17307,7 +17384,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:158
+#: doc/classes/Directory.xml:160
msgid ""
"Creates a target directory and all necessary intermediate directories in its "
"path, by calling [method make_dir] recursively. The argument can be relative "
@@ -17315,7 +17392,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:168
+#: doc/classes/Directory.xml:170
msgid ""
"Opens an existing directory of the filesystem. The [code]path[/code] "
"argument can be within the project tree ([code]res://folder[/code]), the "
@@ -17324,7 +17401,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:178
+#: doc/classes/Directory.xml:180
msgid ""
"Deletes the target file or an empty directory. The argument can be relative "
"to the current directory, or an absolute path. If the target directory is "
@@ -17332,7 +17409,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:190
+#: doc/classes/Directory.xml:192
msgid ""
"Renames (move) the [code]from[/code] file to the [code]to[/code] "
"destination. Both arguments should be paths to files, either relative or "
@@ -17373,6 +17450,53 @@ msgid ""
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
+#: doc/classes/DisplayServer.xml:530
+msgid ""
+"Return the greatest scale factor of all screens.\n"
+"[b]Note:[/b] On macOS returned value is [code]2.0[/code] if there is at "
+"least one hiDPI (Retina) screen in the system, and [code]1.0[/code] in all "
+"other cases.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:557
+msgid ""
+"Return the scale factor of the specified screen by index.\n"
+"[b]Note:[/b] On macOS returned value is [code]2.0[/code] for hiDPI (Retina) "
+"screen, and [code]1.0[/code] for all other cases.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:630
+msgid ""
+"Returns the on-screen keyboard's height in pixels. Returns 0 if there is no "
+"keyboard or if it is currently hidden."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:637
+msgid "Hides the virtual keyboard if it is shown, does nothing otherwise."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:656
+msgid ""
+"Shows the virtual keyboard if the platform has one.\n"
+"[code]existing_text[/code] parameter is useful for implementing your own "
+"[LineEdit] or [TextEdit], as it tells the virtual keyboard what text has "
+"already been typed (the virtual keyboard uses it for auto-correct and "
+"predictions).\n"
+"[code]position[/code] parameter is the screen space [Rect2] of the edited "
+"text.\n"
+"[code]multiline[/code] parameter needs to be set to [code]true[/code] to be "
+"able to enter multiple lines of text, as in [TextEdit].\n"
+"[code]max_length[/code] limits the number of characters that can be entered "
+"if different from [code]-1[/code].\n"
+"[code]cursor_start[/code] can optionally define the current text cursor "
+"position if [code]cursor_end[/code] is not set.\n"
+"[code]cursor_start[/code] and [code]cursor_end[/code] can optionally define "
+"the current text selection.\n"
+"[b]Note:[/b] This method is implemented on Android, iOS and UWP."
+msgstr ""
+
#: doc/classes/DTLSServer.xml:4
msgid "Helper class to implement a DTLS server."
msgstr ""
@@ -17493,54 +17617,62 @@ msgstr ""
msgid "Adds a fallback font."
msgstr ""
-#: doc/classes/DynamicFont.xml:35
+#: doc/classes/DynamicFont.xml:33
+msgid ""
+"Returns a string containing all the characters available in the main and all "
+"the fallback fonts.\n"
+"If a given character is included in more than one font, it appears only once "
+"in the returned string."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:43
msgid "Returns the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:42
+#: doc/classes/DynamicFont.xml:50
msgid "Returns the number of fallback fonts."
msgstr ""
-#: doc/classes/DynamicFont.xml:51
+#: doc/classes/DynamicFont.xml:59
msgid ""
"Returns the spacing for the given [code]type[/code] (see [enum SpacingType])."
msgstr ""
-#: doc/classes/DynamicFont.xml:60
+#: doc/classes/DynamicFont.xml:68
msgid "Removes the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:71
+#: doc/classes/DynamicFont.xml:79
msgid "Sets the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:82
+#: doc/classes/DynamicFont.xml:90
msgid ""
"Sets the spacing for [code]type[/code] (see [enum SpacingType]) to "
"[code]value[/code] in pixels (not relative to the font size)."
msgstr ""
-#: doc/classes/DynamicFont.xml:88
+#: doc/classes/DynamicFont.xml:96
msgid "Extra spacing at the bottom in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:91
+#: doc/classes/DynamicFont.xml:99
msgid "Extra character spacing in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:94
+#: doc/classes/DynamicFont.xml:102
msgid "Extra space spacing in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:97
+#: doc/classes/DynamicFont.xml:105
msgid "Extra spacing at the top in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:100
+#: doc/classes/DynamicFont.xml:108
msgid "The font data."
msgstr ""
-#: doc/classes/DynamicFont.xml:103
+#: doc/classes/DynamicFont.xml:111
msgid ""
"The font outline's color.\n"
"[b]Note:[/b] It's recommended to leave this at the default value so that you "
@@ -17549,27 +17681,27 @@ msgid ""
"outline modulate theme item."
msgstr ""
-#: doc/classes/DynamicFont.xml:107
+#: doc/classes/DynamicFont.xml:115
msgid "The font outline's thickness in pixels (not relative to the font size)."
msgstr ""
-#: doc/classes/DynamicFont.xml:110
+#: doc/classes/DynamicFont.xml:118
msgid "The font size in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:115
+#: doc/classes/DynamicFont.xml:123
msgid "Spacing at the top."
msgstr ""
-#: doc/classes/DynamicFont.xml:118
+#: doc/classes/DynamicFont.xml:126
msgid "Spacing at the bottom."
msgstr ""
-#: doc/classes/DynamicFont.xml:121
+#: doc/classes/DynamicFont.xml:129
msgid "Character spacing."
msgstr ""
-#: doc/classes/DynamicFont.xml:124
+#: doc/classes/DynamicFont.xml:132
msgid "Space spacing."
msgstr ""
@@ -17951,7 +18083,12 @@ msgstr ""
msgid "Remitted if a resource is reimported."
msgstr ""
-#: doc/classes/EditorFileSystem.xml:106
+#: doc/classes/EditorFileSystem.xml:100
+msgid ""
+"Emitted if at least one resource is reloaded when the filesystem is scanned."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:107
msgid "Emitted if the source of any imported file changed."
msgstr ""
@@ -17993,29 +18130,43 @@ msgstr ""
msgid "Returns the path to the file at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:86
+#: doc/classes/EditorFileSystemDirectory.xml:70
+msgid ""
+"Returns the base class of the script class defined in the file at index "
+"[code]idx[/code]. If the file doesn't define a script class using the "
+"[code]class_name[/code] syntax, this will return an empty string."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:79
+msgid ""
+"Returns the name of the script class defined in the file at index [code]idx[/"
+"code]. If the file doesn't define a script class using the [code]class_name[/"
+"code] syntax, this will return an empty string."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:88
msgid "Returns the file extension of the file at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:93
+#: doc/classes/EditorFileSystemDirectory.xml:95
msgid "Returns the name of this directory."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:100
+#: doc/classes/EditorFileSystemDirectory.xml:102
msgid ""
"Returns the parent directory for this directory or [code]null[/code] if "
"called on a directory at [code]res://[/code] or [code]user://[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:107
+#: doc/classes/EditorFileSystemDirectory.xml:109
msgid "Returns the path to this directory."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:116
+#: doc/classes/EditorFileSystemDirectory.xml:118
msgid "Returns the subdirectory at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:123
+#: doc/classes/EditorFileSystemDirectory.xml:125
msgid "Returns the number of subdirectories in this directory."
msgstr ""
@@ -18106,45 +18257,72 @@ msgstr ""
msgid "Gets the unique name of the importer."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:92
+#: doc/classes/EditorImportPlugin.xml:86
+msgid ""
+"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. For example:\n"
+"[codeblock]\n"
+"func get_option_visibility(option, options):\n"
+" # Only show the lossy quality setting if the compression mode is set to "
+"\"Lossy\".\n"
+" if option == \"compress/lossy_quality\" and options.has(\"compress/mode"
+"\"):\n"
+" return int(options[\"compress/mode\"]) == COMPRESS_LOSSY\n"
+"\n"
+" return true\n"
+"[/codeblock]\n"
+"Return [code]true[/code] to make all options always visible."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:102
msgid ""
"Gets the number of initial presets defined by the plugin. Use [method "
"get_import_options] to get the default options for the preset and [method "
"get_preset_name] to get the name of the preset."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:101
+#: doc/classes/EditorImportPlugin.xml:111
msgid "Gets the name of the options preset at this index."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:108
+#: doc/classes/EditorImportPlugin.xml:118
msgid ""
"Gets the priority of this plugin for the recognized extension. Higher "
"priority plugins will be preferred. The default priority is [code]1.0[/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:115
+#: doc/classes/EditorImportPlugin.xml:125
msgid ""
"Gets the list of file extensions to associate with this loader (case-"
"insensitive). e.g. [code][\"obj\"][/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:122
+#: doc/classes/EditorImportPlugin.xml:132
msgid ""
"Gets the Godot resource type associated with this loader. e.g. [code]\"Mesh"
"\"[/code] or [code]\"Animation\"[/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:129
+#: doc/classes/EditorImportPlugin.xml:139
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:136
+#: doc/classes/EditorImportPlugin.xml:146
msgid "Gets the name to display in the import window."
msgstr ""
+#: doc/classes/EditorImportPlugin.xml:163
+msgid ""
+"Imports [code]source_file[/code] into [code]save_path[/code] with the import "
+"[code]options[/code] specified. The [code]platform_variants[/code] and "
+"[code]gen_files[/code] arrays will be modified by this function.\n"
+"This method must be overridden to do the actual importing work. See this "
+"class' description for an example of overriding this method."
+msgstr ""
+
#: doc/classes/EditorInspector.xml:4
msgid "A tab used to edit properties of the selected node."
msgstr ""
@@ -18160,6 +18338,58 @@ msgid ""
"the singleton using [method EditorInterface.get_inspector]."
msgstr ""
+#: doc/classes/EditorInspector.xml:17
+msgid ""
+"Refreshes the inspector.\n"
+"[b]Note:[/b] To save on CPU resources, calling this method will do nothing "
+"if the time specified in [code]docks/property_editor/auto_refresh_interval[/"
+"code] editor setting hasn't passed yet since this method was last called. "
+"(By default, this interval is set to 0.3 seconds.)"
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:30
+msgid ""
+"Emitted when the Edit button of an [Object] has been pressed in the "
+"inspector. This is mainly used in the remote scene tree inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:37
+msgid "Emitted when a property is removed from the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:44
+msgid "Emitted when a property is edited in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:51
+msgid ""
+"Emitted when a property is keyed in the inspector. Properties can be keyed "
+"by clicking the \"key\" icon next to a property when the Animation panel is "
+"toggled."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:58
+msgid "Emitted when a property is selected in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:67
+msgid ""
+"Emitted when a boolean property is toggled in the inspector.\n"
+"[b]Note:[/b] This signal is never emitted if the internal [code]autoclear[/"
+"code] property enabled. Since this property is always enabled in the editor "
+"inspector, this signal is never emitted by the editor itself."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:77
+msgid "Emitted when a resource is selected in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:82
+msgid ""
+"Emitted when a property that requires a restart to be applied is edited in "
+"the inspector. This is only used in the Project Settings and Editor Settings."
+msgstr ""
+
#: doc/classes/EditorInspectorPlugin.xml:4
msgid "Plugin for adding custom property editors on inspector."
msgstr ""
@@ -18238,91 +18468,155 @@ msgstr ""
#: doc/classes/EditorInterface.xml:26
msgid ""
-"Returns the main container of Godot editor's window. You can use it, for "
-"example, to retrieve the size of the container and place your controls "
+"Returns the main container of Godot editor's window. For example, you can "
+"use it to retrieve the size of the container and place your controls "
"accordingly."
msgstr ""
-#: doc/classes/EditorInterface.xml:39
+#: doc/classes/EditorInterface.xml:33
+msgid "Returns the current path being viewed in the [FileSystemDock]."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:40
msgid "Returns the edited (current) scene's root [Node]."
msgstr ""
-#: doc/classes/EditorInterface.xml:46
-msgid "Returns the [EditorSettings]."
+#: doc/classes/EditorInterface.xml:47
+msgid "Returns the editor's [EditorSettings] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:53
-msgid "Returns the editor [Viewport]."
+#: doc/classes/EditorInterface.xml:54
+msgid ""
+"Returns the main editor control. Use this as a parent for main screens.\n"
+"[b]Note:[/b] This returns the main editor control containing the whole "
+"editor, not the 2D or 3D viewports specifically."
msgstr ""
-#: doc/classes/EditorInterface.xml:72
+#: doc/classes/EditorInterface.xml:62
+msgid "Returns the editor's [FileSystemDock] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:69
+msgid "Returns the editor's [EditorInspector] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:76
msgid "Returns an [Array] with the file paths of the currently opened scenes."
msgstr ""
-#: doc/classes/EditorInterface.xml:79
-msgid "Returns the [EditorFileSystem]."
+#: doc/classes/EditorInterface.xml:83
+msgid ""
+"Returns the name of the scene that is being played. If no scene is currently "
+"being played, returns an empty string."
msgstr ""
-#: doc/classes/EditorInterface.xml:86
-msgid "Returns the [EditorResourcePreview]."
+#: doc/classes/EditorInterface.xml:90
+msgid "Returns the editor's [EditorFileSystem] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:93
-msgid "Returns the [ScriptEditor]."
+#: doc/classes/EditorInterface.xml:97
+msgid "Returns the editor's [EditorResourcePreview] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:106
-msgid "Returns the [EditorSelection]."
+#: doc/classes/EditorInterface.xml:104
+msgid "Returns the editor's [ScriptEditor] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:117
+#: doc/classes/EditorInterface.xml:111
msgid ""
-"Shows the given property on the given [code]object[/code] in the Editor's "
+"Returns the path of the directory currently selected in the "
+"[FileSystemDock]. If a file is selected, its base directory will be returned "
+"using [method String.get_base_dir] instead."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:118
+msgid "Returns the editor's [EditorSelection] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:129
+msgid ""
+"Shows the given property on the given [code]object[/code] in the editor's "
"Inspector dock."
msgstr ""
-#: doc/classes/EditorInterface.xml:126
+#: doc/classes/EditorInterface.xml:136
msgid ""
-"Returns the enabled status of a plugin. The plugin name is the same as its "
-"directory name."
+"Returns [code]true[/code] if a scene is currently being played, [code]false[/"
+"code] otherwise. Paused scenes are considered as being played."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:145
+msgid ""
+"Returns [code]true[/code] if the specified [code]plugin[/code] is enabled. "
+"The plugin name is the same as its directory name."
msgstr ""
-#: doc/classes/EditorInterface.xml:137
+#: doc/classes/EditorInterface.xml:156
msgid ""
"Returns mesh previews rendered at the given size as an [Array] of "
"[Texture2D]s."
msgstr ""
-#: doc/classes/EditorInterface.xml:146
+#: doc/classes/EditorInterface.xml:165
msgid "Opens the scene at the given path."
msgstr ""
-#: doc/classes/EditorInterface.xml:155
+#: doc/classes/EditorInterface.xml:172
+msgid "Plays the currently active scene."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:181
+msgid "Plays the scene specified by its filepath."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:188
+msgid "Plays the main scene."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:197
msgid "Reloads the scene at the given path."
msgstr ""
-#: doc/classes/EditorInterface.xml:162
+#: doc/classes/EditorInterface.xml:204
msgid ""
"Saves the scene. Returns either [code]OK[/code] or [code]ERR_CANT_CREATE[/"
"code] (see [@GlobalScope] constants)."
msgstr ""
-#: doc/classes/EditorInterface.xml:173
+#: doc/classes/EditorInterface.xml:215
msgid "Saves the scene as a file at [code]path[/code]."
msgstr ""
-#: doc/classes/EditorInterface.xml:182
+#: doc/classes/EditorInterface.xml:224
msgid ""
"Selects the file, with the path provided by [code]file[/code], in the "
"FileSystem dock."
msgstr ""
-#: doc/classes/EditorInterface.xml:201
+#: doc/classes/EditorInterface.xml:233
+msgid ""
+"Sets the editor's current main screen to the one specified in [code]name[/"
+"code]. [code]name[/code] must match the text of the tab in question exactly "
+"([code]2D[/code], [code]3D[/code], [code]Script[/code], [code]AssetLib[/"
+"code])."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:244
msgid ""
"Sets the enabled status of a plugin. The plugin name is the same as its "
"directory name."
msgstr ""
+#: doc/classes/EditorInterface.xml:251
+msgid "Stops the scene that is currently playing."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:257
+msgid ""
+"If [code]true[/code], enables distraction-free mode which hides side docks "
+"to increase the space available for the main view."
+msgstr ""
+
#: doc/classes/EditorNode3DGizmo.xml:4
msgid "Custom gizmo for editing Node3D objects."
msgstr ""
@@ -18334,14 +18628,20 @@ msgid ""
"information."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:26
+#: doc/classes/EditorNode3DGizmo.xml:18
+msgid ""
+"Adds the specified [code]segments[/code] to the gizmo's collision shape for "
+"picking. Call this function during [method redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:27
msgid ""
"Adds collision triangles to the gizmo for picking. A [TriangleMesh] can be "
"generated from a regular [Mesh] too. Call this function during [method "
"redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:41
+#: doc/classes/EditorNode3DGizmo.xml:42
msgid ""
"Adds a list of handles (points) which can be used to deform the object being "
"edited.\n"
@@ -18349,20 +18649,33 @@ msgid ""
"handles. Call this function during [method redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:57
+#: doc/classes/EditorNode3DGizmo.xml:58
msgid ""
"Adds lines to the gizmo (as sets of 2 points), with a given material. The "
"lines are used for visualizing the gizmo. Call this function during [method "
"redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:84
+#: doc/classes/EditorNode3DGizmo.xml:73
+msgid ""
+"Adds a mesh to the gizmo with the specified [code]billboard[/code] state, "
+"[code]skeleton[/code] and [code]material[/code]. If [code]billboard[/code] "
+"is [code]true[/code], the mesh will rotate to always face the camera. Call "
+"this function during [method redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:86
msgid ""
"Adds an unscaled billboard for visualization. Call this function during "
"[method redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:103
+#: doc/classes/EditorNode3DGizmo.xml:93
+msgid ""
+"Removes everything in the gizmo including meshes, collisions and handles."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:106
msgid ""
"Commit a handle being edited (handles must have been previously added by "
"[method add_handles]).\n"
@@ -18370,40 +18683,42 @@ msgid ""
"restore the edited value to the original is provided."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:113
+#: doc/classes/EditorNode3DGizmo.xml:116
msgid ""
"Gets the name of an edited handle (handles must have been previously added "
"by [method add_handles]).\n"
"Handles can be named for reference to the user when editing."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:123
+#: doc/classes/EditorNode3DGizmo.xml:126
msgid ""
"Gets actual value of a handle. This value can be anything and used for "
"eventually undoing the motion when calling [method commit_handle]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:130
+#: doc/classes/EditorNode3DGizmo.xml:133
msgid ""
"Returns the [EditorNode3DGizmoPlugin] that owns this gizmo. It's useful to "
"retrieve materials using [method EditorNode3DGizmoPlugin.get_material]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:137
+#: doc/classes/EditorNode3DGizmo.xml:140
msgid "Returns the Node3D node associated with this gizmo."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:146
-msgid "Gets whether a handle is highlighted or not."
+#: doc/classes/EditorNode3DGizmo.xml:149
+msgid ""
+"Returns [code]true[/code] if the handle at index [code]index[/code] is "
+"highlighted by being hovered with the mouse."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:153
+#: doc/classes/EditorNode3DGizmo.xml:156
msgid ""
-"This function is called when the Node3D this gizmo refers to changes (the "
+"This function is called when the [Node3D] this gizmo refers to changes (the "
"[method Node3D.update_gizmo] is called)."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:166
+#: doc/classes/EditorNode3DGizmo.xml:169
msgid ""
"This function is used when the user drags a gizmo handle (previously added "
"with [method add_handles]) in screen coordinates.\n"
@@ -18411,6 +18726,18 @@ msgid ""
"raycasts."
msgstr ""
+#: doc/classes/EditorNode3DGizmo.xml:179
+msgid ""
+"Sets the gizmo's hidden state. If [code]true[/code], the gizmo will be "
+"hidden. If [code]false[/code], it will be shown."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:188
+msgid ""
+"Sets the reference [Node3D] node for the gizmo. [code]node[/code] must "
+"inherit from [Node3D]."
+msgstr ""
+
#: doc/classes/EditorNode3DGizmoPlugin.xml:4
msgid "Used by the editor to define Node3D gizmo types."
msgstr ""
@@ -18503,7 +18830,17 @@ msgid ""
"visibility menu."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:150
+#: doc/classes/EditorNode3DGizmoPlugin.xml:142
+msgid ""
+"Override this method to set the gizmo's priority. Higher values correspond "
+"to higher priority. If a gizmo with higher priority conflicts with another "
+"gizmo, only the gizmo with higher priority will be used.\n"
+"All built-in editor gizmos return a priority of [code]-1[/code]. If not "
+"overridden, this method will return [code]0[/code], which means custom "
+"gizmos will automatically override built-in gizmos."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:152
msgid ""
"Override this method to define which Node3D nodes have a gizmo from this "
"plugin. Whenever a [Node3D] node is added to a scene this method is called, "
@@ -18511,25 +18848,25 @@ msgid ""
"assigned and is added to this plugin's list of active gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:161
+#: doc/classes/EditorNode3DGizmoPlugin.xml:163
msgid ""
"Gets whether a handle is highlighted or not. Called for this plugin's active "
"gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:168
+#: doc/classes/EditorNode3DGizmoPlugin.xml:170
msgid ""
"Override this method to define whether Node3D with this gizmo should be "
"selecteble even when the gizmo is hidden."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:177
+#: doc/classes/EditorNode3DGizmoPlugin.xml:179
msgid ""
"Callback to redraw the provided gizmo. Called for this plugin's active "
"gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:192
+#: doc/classes/EditorNode3DGizmoPlugin.xml:194
msgid ""
"Update the value of a handle after it has been updated. Called for this "
"plugin's active gizmos."
@@ -18616,7 +18953,13 @@ msgid ""
"should be cleaned up using [code]remove_tool_menu_item(name)[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:149
+#: doc/classes/EditorPlugin.xml:151
+msgid ""
+"Registers a custom translation parser plugin for extracting translatable "
+"strings from custom files."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:158
msgid ""
"This method is called when the editor is about to save the project, switch "
"to another tab, etc. It asks the plugin to apply any pending state changes "
@@ -18625,32 +18968,32 @@ msgid ""
"must apply the shader code being written by the user to the object."
msgstr ""
-#: doc/classes/EditorPlugin.xml:163
+#: doc/classes/EditorPlugin.xml:172
msgid ""
"Clear all the state and reset the object being edited to zero. This ensures "
"your plugin does not keep editing a currently existing node, or a node from "
"the wrong scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:170
+#: doc/classes/EditorPlugin.xml:179
msgid ""
"Called by the engine when the user disables the [EditorPlugin] in the Plugin "
"tab of the project settings window."
msgstr ""
-#: doc/classes/EditorPlugin.xml:179
+#: doc/classes/EditorPlugin.xml:188
msgid ""
"This function is used for plugins that edit specific object types (nodes or "
"resources). It requests the editor to edit the given object."
msgstr ""
-#: doc/classes/EditorPlugin.xml:186
+#: doc/classes/EditorPlugin.xml:195
msgid ""
"Called by the engine when the user enables the [EditorPlugin] in the Plugin "
"tab of the project settings window."
msgstr ""
-#: doc/classes/EditorPlugin.xml:211
+#: doc/classes/EditorPlugin.xml:220
msgid ""
"Called when there is a root node in the current edited scene, [method "
"handles] is implemented and an [InputEvent] happens in the 2D viewport. "
@@ -18675,7 +19018,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:237
+#: doc/classes/EditorPlugin.xml:246
msgid ""
"Called when there is a root node in the current edited scene, [method "
"handles] is implemented and an [InputEvent] happens in the 3D viewport. "
@@ -18700,20 +19043,20 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:259
+#: doc/classes/EditorPlugin.xml:268
msgid ""
"This is for editors that edit script-based objects. You can return a list of "
"breakpoints in the format ([code]script:line[/code]), for example: "
"[code]res://path_to_script.gd:25[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:266
+#: doc/classes/EditorPlugin.xml:275
msgid ""
"Returns the [EditorInterface] object that gives you control over Godot "
"editor's window and its functionalities."
msgstr ""
-#: doc/classes/EditorPlugin.xml:273
+#: doc/classes/EditorPlugin.xml:282
msgid ""
"Override this method in your plugin to return a [Texture2D] in order to give "
"it an icon.\n"
@@ -18731,7 +19074,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:289
+#: doc/classes/EditorPlugin.xml:298
msgid ""
"Override this method in your plugin to provide the name of the plugin when "
"displayed in the Godot editor.\n"
@@ -18739,33 +19082,33 @@ msgid ""
"of the \"2D\", \"3D\", \"Script\", and \"AssetLib\" buttons."
msgstr ""
-#: doc/classes/EditorPlugin.xml:297
+#: doc/classes/EditorPlugin.xml:306
msgid ""
"Gets the Editor's dialogue used for making scripts.\n"
"[b]Note:[/b] Users can configure it before use."
msgstr ""
-#: doc/classes/EditorPlugin.xml:305
+#: doc/classes/EditorPlugin.xml:314
msgid ""
"Gets the state of your plugin editor. This is used when saving the scene (so "
"state is kept when opening it again) and for switching tabs (so state can be "
"restored when the tab returns)."
msgstr ""
-#: doc/classes/EditorPlugin.xml:312
+#: doc/classes/EditorPlugin.xml:321
msgid ""
"Gets the undo/redo object. Most actions in the editor can be undoable, so "
"use this object to make sure this happens when it's worth it."
msgstr ""
-#: doc/classes/EditorPlugin.xml:321
+#: doc/classes/EditorPlugin.xml:330
msgid ""
"Gets the GUI layout of the plugin. This is used to save the project's editor "
"layout when [method queue_save_layout] is called or the editor layout was "
"changed(For example changing the position of a dock)."
msgstr ""
-#: doc/classes/EditorPlugin.xml:330
+#: doc/classes/EditorPlugin.xml:339
msgid ""
"Implement this function if your plugin edits a specific type of object "
"(Resource or Node). If you return [code]true[/code], then you will get the "
@@ -18775,14 +19118,14 @@ msgid ""
"be called too."
msgstr ""
-#: doc/classes/EditorPlugin.xml:337
+#: doc/classes/EditorPlugin.xml:346
msgid ""
"Returns [code]true[/code] if this is a main screen editor plugin (it goes in "
"the workspace selector together with [b]2D[/b], [b]3D[/b], [b]Script[/b] and "
"[b]AssetLib[/b])."
msgstr ""
-#: doc/classes/EditorPlugin.xml:360
+#: doc/classes/EditorPlugin.xml:369
msgid ""
"This function will be called when the editor is requested to become visible. "
"It is used for plugins that edit a specific object type.\n"
@@ -18790,85 +19133,89 @@ msgid ""
"manually."
msgstr ""
-#: doc/classes/EditorPlugin.xml:368
+#: doc/classes/EditorPlugin.xml:377
msgid "Queue save the project's editor layout."
msgstr ""
-#: doc/classes/EditorPlugin.xml:377
+#: doc/classes/EditorPlugin.xml:386
msgid "Removes an Autoload [code]name[/code] from the list."
msgstr ""
-#: doc/classes/EditorPlugin.xml:386
+#: doc/classes/EditorPlugin.xml:395
msgid ""
"Removes the control from the bottom panel. You have to manually [method Node."
"queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:397
+#: doc/classes/EditorPlugin.xml:406
msgid ""
"Removes the control from the specified container. You have to manually "
"[method Node.queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:406
+#: doc/classes/EditorPlugin.xml:415
msgid ""
"Removes the control from the dock. You have to manually [method Node."
"queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:415
+#: doc/classes/EditorPlugin.xml:424
msgid "Removes a custom type added by [method add_custom_type]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:464
+#: doc/classes/EditorPlugin.xml:473
msgid "Removes a menu [code]name[/code] from [b]Project > Tools[/b]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:471
+#: doc/classes/EditorPlugin.xml:482
+msgid "Removes a registered custom translation parser plugin."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:489
msgid ""
"This method is called after the editor saves the project or when it's "
"closed. It asks the plugin to save edited external scenes/resources."
msgstr ""
-#: doc/classes/EditorPlugin.xml:484
+#: doc/classes/EditorPlugin.xml:502
msgid ""
"Use this method if you always want to receive inputs from 3D view screen "
"inside [method forward_spatial_gui_input]. It might be especially usable if "
"your plugin will want to use raycast in the scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:493
+#: doc/classes/EditorPlugin.xml:511
msgid "Restore the state saved by [method get_state]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:502
+#: doc/classes/EditorPlugin.xml:520
msgid "Restore the plugin GUI layout saved by [method get_window_layout]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:509
+#: doc/classes/EditorPlugin.xml:527
msgid "Updates the overlays of the editor (2D/3D) viewport."
msgstr ""
-#: doc/classes/EditorPlugin.xml:518
+#: doc/classes/EditorPlugin.xml:536
msgid ""
"Emitted when user changes the workspace ([b]2D[/b], [b]3D[/b], [b]Script[/"
"b], [b]AssetLib[/b]). Also works with custom screens defined by plugins."
msgstr ""
-#: doc/classes/EditorPlugin.xml:531
+#: doc/classes/EditorPlugin.xml:549
msgid ""
"Emitted when the scene is changed in the editor. The argument will return "
"the root node of the scene that has just become active. If this scene is new "
"and empty, the argument will be [code]null[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:538
+#: doc/classes/EditorPlugin.xml:556
msgid ""
"Emitted when user closes a scene. The argument is file path to a closed "
"scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:584
+#: doc/classes/EditorPlugin.xml:602
msgid "Represents the size of the [enum DockSlot] enum."
msgstr ""
@@ -18923,64 +19270,83 @@ msgid "When this virtual function is called, you must update your editor."
msgstr ""
#: doc/classes/EditorProperty.xml:76
-msgid "Used by the inspector, set when property is checkable."
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is "
+"checkable."
msgstr ""
#: doc/classes/EditorProperty.xml:79
-msgid "Used by the inspector, when the property is checked."
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is checked."
msgstr ""
-#: doc/classes/EditorProperty.xml:84
-msgid "Used by the inspector, when the property must draw with error color."
+#: doc/classes/EditorProperty.xml:82
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property can be "
+"deleted by the user."
msgstr ""
-#: doc/classes/EditorProperty.xml:87
-msgid "Used by the inspector, when the property can add keys for animation."
+#: doc/classes/EditorProperty.xml:85
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property must draw "
+"with error color. This is used for editable children's properties."
msgstr ""
-#: doc/classes/EditorProperty.xml:90
-msgid "Sets this property to change the label (if you want to show one)."
+#: doc/classes/EditorProperty.xml:88
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property can add "
+"keys for animation."
msgstr ""
-#: doc/classes/EditorProperty.xml:93
-msgid "Used by the inspector, when the property is read-only."
+#: doc/classes/EditorProperty.xml:91
+msgid "Set this property to change the label (if you want to show one)."
msgstr ""
-#: doc/classes/EditorProperty.xml:103
+#: doc/classes/EditorProperty.xml:94
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is read-"
+"only."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:104
msgid ""
"Emit it if you want multiple properties modified at the same time. Do not "
"use if added via [method EditorInspectorPlugin.parse_property]."
msgstr ""
-#: doc/classes/EditorProperty.xml:112
+#: doc/classes/EditorProperty.xml:113
msgid "Used by sub-inspectors. Emit it if what was selected was an Object ID."
msgstr ""
-#: doc/classes/EditorProperty.xml:121
+#: doc/classes/EditorProperty.xml:122
msgid ""
"Do not emit this manually, use the [method emit_changed] method instead."
msgstr ""
-#: doc/classes/EditorProperty.xml:130
+#: doc/classes/EditorProperty.xml:131
msgid "Emitted when a property was checked. Used internally."
msgstr ""
-#: doc/classes/EditorProperty.xml:143
+#: doc/classes/EditorProperty.xml:138
+msgid "Emitted when a property was deleted. Used internally."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:145
msgid ""
"Emit it if you want to add this value as an animation key (check for keying "
"being enabled first)."
msgstr ""
-#: doc/classes/EditorProperty.xml:152
+#: doc/classes/EditorProperty.xml:154
msgid "Emit it if you want to key a property with a single value."
msgstr ""
-#: doc/classes/EditorProperty.xml:161
+#: doc/classes/EditorProperty.xml:163
msgid ""
"If you want a sub-resource to be edited, emit this signal with the resource."
msgstr ""
-#: doc/classes/EditorProperty.xml:170
+#: doc/classes/EditorProperty.xml:172
msgid "Emitted when selected. Used internally."
msgstr ""
@@ -19265,17 +19631,26 @@ msgstr ""
msgid ""
"Object that holds the project-independent editor settings. These settings "
"are generally visible in the [b]Editor > Editor Settings[/b] menu.\n"
-"Accessing the settings is done by using the regular [Object] API, such as:\n"
-"[codeblock]\n"
-"settings.set(prop,value)\n"
-"settings.get(prop)\n"
-"list_of_settings = settings.get_property_list()\n"
+"Property names use slash delimiters to distinguish sections. Setting values "
+"can be of any [Variant] type. It's recommended to use [code]snake_case[/"
+"code] for editor settings to be consistent with the Godot editor itself.\n"
+"Accessing the settings can be done using the following methods, such as:\n"
+"[codeblock]\n"
+"# `settings.set(\"some/property\", value)` also works as this class "
+"overrides `_set()` internally.\n"
+"settings.set_setting(\"some/property\",value)\n"
+"\n"
+"# `settings.get(\"some/property\", value)` also works as this class "
+"overrides `_get()` internally.\n"
+"settings.get_setting(\"some/property\")\n"
+"\n"
+"var list_of_settings = settings.get_property_list()\n"
"[/codeblock]\n"
"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
"the singleton using [method EditorInterface.get_editor_settings]."
msgstr ""
-#: doc/classes/EditorSettings.xml:25
+#: doc/classes/EditorSettings.xml:30
msgid ""
"Adds a custom property info to a property. The dictionary must contain:\n"
"- [code]name[/code]: [String] (the name of the property)\n"
@@ -19297,52 +19672,173 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorSettings.xml:50
-msgid "Erase a given setting (pass full property path)."
+#: doc/classes/EditorSettings.xml:55
+msgid "Erases the setting whose name is specified by [code]property[/code]."
msgstr ""
-#: doc/classes/EditorSettings.xml:57
-msgid "Gets the list of favorite files and directories for this project."
+#: doc/classes/EditorSettings.xml:62
+msgid "Returns the list of favorite files and directories for this project."
msgstr ""
-#: doc/classes/EditorSettings.xml:76
+#: doc/classes/EditorSettings.xml:75
msgid ""
-"Gets the specific project settings path. Projects all have a unique sub-"
-"directory inside the settings path where project specific settings are saved."
+"Returns project-specific metadata for the [code]section[/code] and "
+"[code]key[/code] specified. If the metadata doesn't exist, [code]default[/"
+"code] will be returned instead. See also [method set_project_metadata]."
msgstr ""
-#: doc/classes/EditorSettings.xml:83
+#: doc/classes/EditorSettings.xml:82
msgid ""
-"Gets the list of recently visited folders in the file dialog for this "
+"Returns the project-specific settings path. Projects all have a unique "
+"subdirectory inside the settings path where project-specific settings are "
+"saved."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:89
+msgid ""
+"Returns the list of recently visited folders in the file dialog for this "
"project."
msgstr ""
#: doc/classes/EditorSettings.xml:98
msgid ""
+"Returns the value of the setting specified by [code]name[/code]. This is "
+"equivalent to using [method Object.get] on the EditorSettings instance."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:105
+msgid ""
"Gets the global settings path for the engine. Inside this path, you can find "
"some standard paths such as:\n"
"[code]settings/tmp[/code] - Used for temporary storage of files\n"
"[code]settings/templates[/code] - Where export templates are located"
msgstr ""
-#: doc/classes/EditorSettings.xml:133
+#: doc/classes/EditorSettings.xml:116
+msgid ""
+"Returns [code]true[/code] if the setting specified by [code]name[/code] "
+"exists, [code]false[/code] otherwise."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:125
+msgid ""
+"Returns [code]true[/code] if the setting specified by [code]name[/code] can "
+"have its value reverted to the default value, [code]false[/code] otherwise. "
+"When this method returns [code]true[/code], a Revert button will display "
+"next to the setting in the Editor Settings."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:134
+msgid ""
+"Returns the default value of the setting specified by [code]name[/code]. "
+"This is the value that would be applied when clicking the Revert button in "
+"the Editor Settings."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:143
msgid "Sets the list of favorite files and directories for this project."
msgstr ""
-#: doc/classes/EditorSettings.xml:166
+#: doc/classes/EditorSettings.xml:156
+msgid ""
+"Sets the initial value of the setting specified by [code]name[/code] to "
+"[code]value[/code]. This is used to provide a value for the Revert button in "
+"the Editor Settings. If [code]update_current[/code] is true, the current "
+"value of the setting will be set to [code]value[/code] as well."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:169
+msgid ""
+"Sets project-specific metadata with the [code]section[/code], [code]key[/"
+"code] and [code]data[/code] specified. This metadata is stored outside the "
+"project folder and therefore won't be checked into version control. See also "
+"[method get_project_metadata]."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:178
msgid ""
"Sets the list of recently visited folders in the file dialog for this "
"project."
msgstr ""
-#: doc/classes/EditorSettings.xml:183
-msgid "Emitted when editor settings change."
+#: doc/classes/EditorSettings.xml:189
+msgid ""
+"Sets the [code]value[/code] of the setting specified by [code]name[/code]. "
+"This is equivalent to using [method Object.set] on the EditorSettings "
+"instance."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:196
+msgid "Emitted after any editor setting has changed."
msgstr ""
-#: doc/classes/EditorSettings.xml:189
+#: doc/classes/EditorSettings.xml:202
+msgid ""
+"Emitted after any editor setting has changed. It's used by various editor "
+"plugins to update their visuals on theme changes or logic on configuration "
+"changes."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:4
+msgid ""
+"Plugin for adding custom parsers to extract strings that are to be "
+"translated from custom files (.csv, .json etc.)."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:7
+msgid ""
+"Plugins are registered via [method EditorPlugin."
+"add_translation_parser_plugin] method. To define the parsing and string "
+"extraction logic, override the [method parse_file] method in script.\n"
+"The extracted strings will be written into a POT file selected by user under "
+"\"POT Generation\" in \"Localization\" tab in \"Project Settings\" menu.\n"
+"Below shows an example of a custom parser that extracts strings in a CSV "
+"file to write into a POT.\n"
+"[codeblock]\n"
+"tool\n"
+"extends EditorTranslationParserPlugin\n"
+"\n"
+"\n"
+"func parse_file(path, extracted_strings):\n"
+" var file = File.new()\n"
+" file.open(path, File.READ)\n"
+" var text = file.get_as_text()\n"
+" var split_strs = text.split(\",\", false, 0)\n"
+" for s in split_strs:\n"
+" extracted_strings.append(s)\n"
+" #print(\"Extracted string: \" + s)\n"
+"\n"
+"\n"
+"func get_recognized_extensions():\n"
+" return [\"csv\"]\n"
+"[/codeblock]\n"
+"[b]Note:[/b] If you override parsing logic for standard script types "
+"(GDScript, C#, etc.), it would be better to load the [code]path[/code] "
+"argument using [method ResourceLoader.load]. This is because built-in "
+"scripts are loaded as [Resource] type, not [File] type.\n"
+"For example:\n"
+"[codeblock]\n"
+"func parse_file(path, extracted_strings):\n"
+" var res = ResourceLoader.load(path, \"Script\")\n"
+" var text = res.get_source_code()\n"
+" # Parsing logic.\n"
+"\n"
+"\n"
+"func get_recognized_extensions():\n"
+" return [\"gd\"]\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:48
+msgid ""
+"Gets the list of file extensions to associate with this parser, e.g. [code]"
+"[\"csv\"][/code]."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:59
msgid ""
-"Emitted when editor settings change. It used by various editor plugins to "
-"update their visuals on theme changes or logic on configuration changes."
+"Override this method to define a custom parsing logic to extract the "
+"translatable strings."
msgstr ""
#: doc/classes/EditorVCSInterface.xml:4
@@ -19953,15 +20449,15 @@ msgid ""
"to 1.3 to compensate for the lack of HDR rendering."
msgstr ""
-#: doc/classes/Environment.xml:190
+#: doc/classes/Environment.xml:214
msgid "The [Sky] resource used for this [Environment]."
msgstr ""
-#: doc/classes/Environment.xml:197
+#: doc/classes/Environment.xml:221
msgid "The depth tolerance for screen-space reflections."
msgstr ""
-#: doc/classes/Environment.xml:200
+#: doc/classes/Environment.xml:224
msgid ""
"If [code]true[/code], screen-space reflections are enabled. Screen-space "
"reflections are more accurate than reflections from [GIProbe]s or "
@@ -19969,48 +20465,48 @@ msgid ""
"others."
msgstr ""
-#: doc/classes/Environment.xml:203
+#: doc/classes/Environment.xml:227
msgid ""
"The fade-in distance for screen-space reflections. Affects the area from the "
"reflected material to the screen-space reflection)."
msgstr ""
-#: doc/classes/Environment.xml:206
+#: doc/classes/Environment.xml:230
msgid ""
"The fade-out distance for screen-space reflections. Affects the area from "
"the screen-space reflection to the \"global\" reflection."
msgstr ""
-#: doc/classes/Environment.xml:209
+#: doc/classes/Environment.xml:233
msgid ""
"The maximum number of steps for screen-space reflections. Higher values are "
"slower."
msgstr ""
-#: doc/classes/Environment.xml:212
+#: doc/classes/Environment.xml:236
msgid ""
"The screen-space ambient occlusion intensity on materials that have an AO "
"texture defined. Values higher than [code]0[/code] will make the SSAO effect "
"visible in areas darkened by AO textures."
msgstr ""
-#: doc/classes/Environment.xml:215
+#: doc/classes/Environment.xml:239
msgid ""
"The screen-space ambient occlusion bias. This should be kept high enough to "
"prevent \"smooth\" curves from being affected by ambient occlusion."
msgstr ""
-#: doc/classes/Environment.xml:218
+#: doc/classes/Environment.xml:242
msgid ""
"The screen-space ambient occlusion blur quality. See [enum SSAOBlur] for "
"possible values."
msgstr ""
-#: doc/classes/Environment.xml:221
+#: doc/classes/Environment.xml:245
msgid "The screen-space ambient occlusion edge sharpness."
msgstr ""
-#: doc/classes/Environment.xml:224
+#: doc/classes/Environment.xml:248
msgid ""
"If [code]true[/code], the screen-space ambient occlusion effect is enabled. "
"This darkens objects' corners and cavities to simulate ambient light not "
@@ -20021,13 +20517,13 @@ msgid ""
"issues."
msgstr ""
-#: doc/classes/Environment.xml:227
+#: doc/classes/Environment.xml:251
msgid ""
"The primary screen-space ambient occlusion intensity. See also [member "
"ssao_radius]."
msgstr ""
-#: doc/classes/Environment.xml:230
+#: doc/classes/Environment.xml:254
msgid ""
"The screen-space ambient occlusion intensity in direct light. In real life, "
"ambient occlusion only applies to indirect light, which means its effects "
@@ -20035,46 +20531,46 @@ msgid ""
"the SSAO effect visible in direct light."
msgstr ""
-#: doc/classes/Environment.xml:233
+#: doc/classes/Environment.xml:257
msgid "The primary screen-space ambient occlusion radius."
msgstr ""
-#: doc/classes/Environment.xml:236
+#: doc/classes/Environment.xml:260
msgid "The default exposure used for tonemapping."
msgstr ""
-#: doc/classes/Environment.xml:239
+#: doc/classes/Environment.xml:263
msgid ""
"The tonemapping mode to use. Tonemapping is the process that \"converts\" "
"HDR values to be suitable for rendering on a LDR display. (Godot doesn't "
"support rendering on HDR displays yet.)"
msgstr ""
-#: doc/classes/Environment.xml:242
+#: doc/classes/Environment.xml:266
msgid ""
"The white reference value for tonemapping. Only effective if the [member "
"tonemap_mode] isn't set to [constant TONE_MAPPER_LINEAR]."
msgstr ""
-#: doc/classes/Environment.xml:247
+#: doc/classes/Environment.xml:271
msgid ""
"Clears the background using the clear color defined in [member "
"ProjectSettings.rendering/environment/default_clear_color]."
msgstr ""
-#: doc/classes/Environment.xml:250
+#: doc/classes/Environment.xml:274
msgid "Clears the background using a custom clear color."
msgstr ""
-#: doc/classes/Environment.xml:253
+#: doc/classes/Environment.xml:277
msgid "Displays a user-defined sky in the background."
msgstr ""
-#: doc/classes/Environment.xml:256
+#: doc/classes/Environment.xml:280
msgid "Displays a [CanvasLayer] in the background."
msgstr ""
-#: doc/classes/Environment.xml:259
+#: doc/classes/Environment.xml:283
msgid ""
"Keeps on screen every pixel drawn in the background. This is the fastest "
"background mode, but it can only be safely used in fully-interior scenes (no "
@@ -20082,107 +20578,107 @@ msgid ""
"is visible, \"ghost trail\" artifacts will be visible when moving the camera."
msgstr ""
-#: doc/classes/Environment.xml:262 doc/classes/RenderingServer.xml:3446
+#: doc/classes/Environment.xml:286 doc/classes/RenderingServer.xml:3457
msgid "Displays a camera feed in the background."
msgstr ""
-#: doc/classes/Environment.xml:265
+#: doc/classes/Environment.xml:289
msgid "Represents the size of the [enum BGMode] enum."
msgstr ""
-#: doc/classes/Environment.xml:268 doc/classes/RenderingServer.xml:3452
+#: doc/classes/Environment.xml:292 doc/classes/RenderingServer.xml:3463
msgid ""
"Gather ambient light from whichever source is specified as the background."
msgstr ""
-#: doc/classes/Environment.xml:271 doc/classes/RenderingServer.xml:3455
+#: doc/classes/Environment.xml:295 doc/classes/RenderingServer.xml:3466
msgid "Disable ambient light."
msgstr ""
-#: doc/classes/Environment.xml:274 doc/classes/RenderingServer.xml:3458
+#: doc/classes/Environment.xml:298 doc/classes/RenderingServer.xml:3469
msgid "Specify a specific [Color] for ambient light."
msgstr ""
-#: doc/classes/Environment.xml:277 doc/classes/RenderingServer.xml:3461
+#: doc/classes/Environment.xml:301 doc/classes/RenderingServer.xml:3472
msgid ""
"Gather ambient light from the [Sky] regardless of what the background is."
msgstr ""
-#: doc/classes/Environment.xml:280 doc/classes/RenderingServer.xml:3464
+#: doc/classes/Environment.xml:304 doc/classes/RenderingServer.xml:3475
msgid "Use the background for reflections."
msgstr ""
-#: doc/classes/Environment.xml:283 doc/classes/RenderingServer.xml:3467
+#: doc/classes/Environment.xml:307 doc/classes/RenderingServer.xml:3478
msgid "Disable reflections."
msgstr ""
-#: doc/classes/Environment.xml:286 doc/classes/RenderingServer.xml:3470
+#: doc/classes/Environment.xml:310 doc/classes/RenderingServer.xml:3481
msgid "Use the [Sky] for reflections regardless of what the background is."
msgstr ""
-#: doc/classes/Environment.xml:289 doc/classes/RenderingServer.xml:3473
+#: doc/classes/Environment.xml:313
+msgid ""
+"Linear tonemapper operator. Reads the linear data and passes it on "
+"unmodified."
+msgstr ""
+
+#: doc/classes/Environment.xml:316
+msgid ""
+"Reinhardt tonemapper operator. Performs a variation on rendered pixels' "
+"colors by this formula: [code]color = color / (1 + color)[/code]."
+msgstr ""
+
+#: doc/classes/Environment.xml:319
+msgid "Filmic tonemapper operator."
+msgstr ""
+
+#: doc/classes/Environment.xml:322
+msgid "Academy Color Encoding System tonemapper operator."
+msgstr ""
+
+#: doc/classes/Environment.xml:325 doc/classes/RenderingServer.xml:3484
msgid ""
"Additive glow blending mode. Mostly used for particles, glows (bloom), lens "
"flare, bright sources."
msgstr ""
-#: doc/classes/Environment.xml:292 doc/classes/RenderingServer.xml:3476
+#: doc/classes/Environment.xml:328 doc/classes/RenderingServer.xml:3487
msgid ""
"Screen glow blending mode. Increases brightness, used frequently with bloom."
msgstr ""
-#: doc/classes/Environment.xml:295 doc/classes/RenderingServer.xml:3479
+#: doc/classes/Environment.xml:331 doc/classes/RenderingServer.xml:3490
msgid ""
"Soft light glow blending mode. Modifies contrast, exposes shadows and "
"highlights (vivid bloom)."
msgstr ""
-#: doc/classes/Environment.xml:298 doc/classes/RenderingServer.xml:3482
+#: doc/classes/Environment.xml:334 doc/classes/RenderingServer.xml:3493
msgid ""
"Replace glow blending mode. Replaces all pixels' color by the glow value. "
"This can be used to simulate a full-screen blur effect by tweaking the glow "
"parameters to match the original image's brightness."
msgstr ""
-#: doc/classes/Environment.xml:301 doc/classes/RenderingServer.xml:3485
+#: doc/classes/Environment.xml:337 doc/classes/RenderingServer.xml:3496
msgid ""
"Mixes the glow with the underlying color to avoid increasing brightness as "
"much while still maintaining a glow effect."
msgstr ""
-#: doc/classes/Environment.xml:304
-msgid ""
-"Linear tonemapper operator. Reads the linear data and passes it on "
-"unmodified."
-msgstr ""
-
-#: doc/classes/Environment.xml:307
-msgid ""
-"Reinhardt tonemapper operator. Performs a variation on rendered pixels' "
-"colors by this formula: [code]color = color / (1 + color)[/code]."
-msgstr ""
-
-#: doc/classes/Environment.xml:310
-msgid "Filmic tonemapper operator."
-msgstr ""
-
-#: doc/classes/Environment.xml:313
-msgid "Academy Color Encoding System tonemapper operator."
-msgstr ""
-
-#: doc/classes/Environment.xml:316
+#: doc/classes/Environment.xml:340
msgid "No blur for the screen-space ambient occlusion effect (fastest)."
msgstr ""
-#: doc/classes/Environment.xml:319
+#: doc/classes/Environment.xml:343
msgid "1×1 blur for the screen-space ambient occlusion effect."
msgstr ""
-#: doc/classes/Environment.xml:322
+#: doc/classes/Environment.xml:346
msgid "2×2 blur for the screen-space ambient occlusion effect."
msgstr ""
-#: doc/classes/Environment.xml:325
+#: doc/classes/Environment.xml:349
msgid ""
"3×3 blur for the screen-space ambient occlusion effect. Increases the radius "
"of the blur for a smoother look, but can result in checkerboard-like "
@@ -20267,14 +20763,17 @@ msgid ""
" var content = file.get_as_text()\n"
" file.close()\n"
" return content\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"In the example above, the file will be saved in the user data folder as "
+"specified in the [url=https://docs.godotengine.org/en/latest/tutorials/io/"
+"data_paths.html]Data paths[/url] documentation."
msgstr ""
-#: doc/classes/File.xml:32
+#: doc/classes/File.xml:33
msgid "Closes the currently opened file."
msgstr ""
-#: doc/classes/File.xml:39
+#: doc/classes/File.xml:40
msgid ""
"Returns [code]true[/code] if the file cursor has read past the end of the "
"file.\n"
@@ -20285,7 +20784,7 @@ msgid ""
"get_position] to implement a custom logic."
msgstr ""
-#: doc/classes/File.xml:49
+#: doc/classes/File.xml:50
msgid ""
"Returns [code]true[/code] if the file exists in the given path.\n"
"[b]Note:[/b] Many resources types are imported (e.g. textures or sound "
@@ -20298,41 +20797,41 @@ msgid ""
"source asset is present in [code]res://[/code], but fail when exported)."
msgstr ""
-#: doc/classes/File.xml:57
+#: doc/classes/File.xml:58
msgid ""
"Returns the next 16 bits from the file as an integer. See [method store_16] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:64
+#: doc/classes/File.xml:65
msgid ""
"Returns the next 32 bits from the file as an integer. See [method store_32] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:71
+#: doc/classes/File.xml:72
msgid ""
"Returns the next 64 bits from the file as an integer. See [method store_64] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:78
+#: doc/classes/File.xml:79
msgid ""
"Returns the next 8 bits from the file as an integer. See [method store_8] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:85
+#: doc/classes/File.xml:86
msgid ""
"Returns the whole file as a [String].\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:95
+#: doc/classes/File.xml:96
msgid "Returns next [code]len[/code] bytes of the file as a [PackedByteArray]."
msgstr ""
-#: doc/classes/File.xml:104
+#: doc/classes/File.xml:105
msgid ""
"Returns the next value of the file in CSV (Comma-Separated Values) format. "
"You can pass a different delimiter [code]delim[/code] to use other than the "
@@ -20341,37 +20840,37 @@ msgid ""
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:112
+#: doc/classes/File.xml:113
msgid "Returns the next 64 bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:119
+#: doc/classes/File.xml:120
msgid ""
"Returns the last error that happened when trying to perform operations. "
"Compare with the [code]ERR_FILE_*[/code] constants from [enum Error]."
msgstr ""
-#: doc/classes/File.xml:126
+#: doc/classes/File.xml:127
msgid "Returns the next 32 bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:133
+#: doc/classes/File.xml:134
msgid "Returns the size of the file in bytes."
msgstr ""
-#: doc/classes/File.xml:140
+#: doc/classes/File.xml:141
msgid ""
"Returns the next line of the file as a [String].\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:150
+#: doc/classes/File.xml:151
msgid ""
"Returns an MD5 String representing the file at the given path or an empty "
"[String] on failure."
msgstr ""
-#: doc/classes/File.xml:159
+#: doc/classes/File.xml:160
msgid ""
"Returns the last time the [code]file[/code] was modified in unix timestamp "
"format or returns a [String] \"ERROR IN [code]file[/code]\". This unix "
@@ -20379,35 +20878,35 @@ msgid ""
"get_datetime_from_unix_time]."
msgstr ""
-#: doc/classes/File.xml:166
+#: doc/classes/File.xml:167
msgid ""
"Returns a [String] saved in Pascal format from the file.\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:174
+#: doc/classes/File.xml:175
msgid "Returns the path as a [String] for the current open file."
msgstr ""
-#: doc/classes/File.xml:181
+#: doc/classes/File.xml:182
msgid "Returns the absolute path as a [String] for the current open file."
msgstr ""
-#: doc/classes/File.xml:188
+#: doc/classes/File.xml:189
msgid "Returns the file cursor's position."
msgstr ""
-#: doc/classes/File.xml:195
+#: doc/classes/File.xml:196
msgid "Returns the next bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:204
+#: doc/classes/File.xml:205
msgid ""
"Returns a SHA-256 [String] representing the file at the given path or an "
"empty [String] on failure."
msgstr ""
-#: doc/classes/File.xml:213
+#: doc/classes/File.xml:214
msgid ""
"Returns the next [Variant] value from the file. If [code]allow_objects[/"
"code] is [code]true[/code], decoding objects is allowed.\n"
@@ -20416,37 +20915,38 @@ msgid ""
"to avoid potential security threats such as remote code execution."
msgstr ""
-#: doc/classes/File.xml:221
+#: doc/classes/File.xml:222
msgid "Returns [code]true[/code] if the file is currently opened."
msgstr ""
-#: doc/classes/File.xml:232
+#: doc/classes/File.xml:233
msgid "Opens the file for writing or reading, depending on the flags."
msgstr ""
-#: doc/classes/File.xml:245
+#: doc/classes/File.xml:246
msgid "Opens a compressed file for reading or writing."
msgstr ""
-#: doc/classes/File.xml:258
+#: doc/classes/File.xml:259
msgid ""
"Opens an encrypted file in write or read mode. You need to pass a binary key "
-"to encrypt/decrypt it."
+"to encrypt/decrypt it.\n"
+"[b]Note:[/b] The provided key must be 32 bytes long."
msgstr ""
-#: doc/classes/File.xml:271
+#: doc/classes/File.xml:273
msgid ""
"Opens an encrypted file in write or read mode. You need to pass a password "
"to encrypt/decrypt it."
msgstr ""
-#: doc/classes/File.xml:280
+#: doc/classes/File.xml:282
msgid ""
"Changes the file reading/writing cursor to the specified position (in bytes "
"from the beginning of the file)."
msgstr ""
-#: doc/classes/File.xml:289
+#: doc/classes/File.xml:291
msgid ""
"Changes the file reading/writing cursor to the specified position (in bytes "
"from the end of the file).\n"
@@ -20454,7 +20954,7 @@ msgid ""
"cursor will be at the end of the file."
msgstr ""
-#: doc/classes/File.xml:299
+#: doc/classes/File.xml:301
msgid ""
"Stores an integer as 16 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, "
@@ -20482,7 +20982,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/File.xml:328
+#: doc/classes/File.xml:330
msgid ""
"Stores an integer as 32 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, "
@@ -20491,14 +20991,14 @@ msgid ""
"(see [method store_16] for an example)."
msgstr ""
-#: doc/classes/File.xml:339
+#: doc/classes/File.xml:341
msgid ""
"Stores an integer as 64 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] must lie in the interval [code][-2^63, "
"2^63 - 1][/code] (i.e. be a valid [int] value)."
msgstr ""
-#: doc/classes/File.xml:349
+#: doc/classes/File.xml:351
msgid ""
"Stores an integer as 8 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, 255]"
@@ -20507,11 +21007,11 @@ msgid ""
"(see [method store_16] for an example)."
msgstr ""
-#: doc/classes/File.xml:360
+#: doc/classes/File.xml:362
msgid "Stores the given array of bytes in the file."
msgstr ""
-#: doc/classes/File.xml:371
+#: doc/classes/File.xml:373
msgid ""
"Store the given [PackedStringArray] in the file as a line formatted in the "
"CSV (Comma-Separated Values) format. You can pass a different delimiter "
@@ -20520,45 +21020,45 @@ msgid ""
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:381
+#: doc/classes/File.xml:383
msgid "Stores a floating-point number as 64 bits in the file."
msgstr ""
-#: doc/classes/File.xml:390
+#: doc/classes/File.xml:392
msgid "Stores a floating-point number as 32 bits in the file."
msgstr ""
-#: doc/classes/File.xml:399
+#: doc/classes/File.xml:401
msgid ""
"Stores the given [String] as a line in the file.\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:409
+#: doc/classes/File.xml:411
msgid ""
"Stores the given [String] as a line in the file in Pascal format (i.e. also "
"store the length of the string).\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:419
+#: doc/classes/File.xml:421
msgid "Stores a floating-point number in the file."
msgstr ""
-#: doc/classes/File.xml:428
+#: doc/classes/File.xml:430
msgid ""
"Stores the given [String] in the file.\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:440
+#: doc/classes/File.xml:442
msgid ""
"Stores any Variant value in the file. If [code]full_objects[/code] is "
"[code]true[/code], encoding objects is allowed (and can potentially include "
"code)."
msgstr ""
-#: doc/classes/File.xml:446
+#: doc/classes/File.xml:448
msgid ""
"If [code]true[/code], the file's endianness is swapped. Use this if you're "
"dealing with files written on big-endian machines.\n"
@@ -20566,44 +21066,44 @@ msgid ""
"reset to [code]false[/code] whenever you open the file."
msgstr ""
-#: doc/classes/File.xml:452
+#: doc/classes/File.xml:454
msgid "Opens the file for read operations."
msgstr ""
-#: doc/classes/File.xml:455
+#: doc/classes/File.xml:457
msgid ""
"Opens the file for write operations. Create it if the file does not exist "
"and truncate if it exists."
msgstr ""
-#: doc/classes/File.xml:458
+#: doc/classes/File.xml:460
msgid ""
"Opens the file for read and write operations. Does not truncate the file."
msgstr ""
-#: doc/classes/File.xml:461
+#: doc/classes/File.xml:463
msgid ""
"Opens the file for read and write operations. Create it if the file does not "
"exist and truncate if it exists."
msgstr ""
-#: doc/classes/File.xml:464
+#: doc/classes/File.xml:466
msgid "Uses the [url=http://fastlz.org/]FastLZ[/url] compression method."
msgstr ""
-#: doc/classes/File.xml:467
+#: doc/classes/File.xml:469
msgid ""
"Uses the [url=https://en.wikipedia.org/wiki/DEFLATE]DEFLATE[/url] "
"compression method."
msgstr ""
-#: doc/classes/File.xml:470
+#: doc/classes/File.xml:472
msgid ""
"Uses the [url=https://facebook.github.io/zstd/]Zstandard[/url] compression "
"method."
msgstr ""
-#: doc/classes/File.xml:473
+#: doc/classes/File.xml:475
msgid "Uses the [url=https://www.gzip.org/]gzip[/url] compression method."
msgstr ""
@@ -20819,10 +21319,11 @@ msgid ""
"Draw [code]string[/code] into a canvas item using the font at a given "
"position, with [code]modulate[/code] color, and optionally clipping the "
"width. [code]position[/code] specifies the baseline, not the top. To draw "
-"from the top, [i]ascent[/i] must be added to the Y axis."
+"from the top, [i]ascent[/i] must be added to the Y axis.\n"
+"See also [method CanvasItem.draw_string]."
msgstr ""
-#: doc/classes/Font.xml:47
+#: doc/classes/Font.xml:48
msgid ""
"Draw character [code]char[/code] into a canvas item using the font at a "
"given position, with [code]modulate[/code] color, and optionally kerning if "
@@ -20832,39 +21333,39 @@ msgid ""
"making this function useful for drawing strings character by character."
msgstr ""
-#: doc/classes/Font.xml:54
+#: doc/classes/Font.xml:55
msgid "Returns the font ascent (number of pixels above the baseline)."
msgstr ""
-#: doc/classes/Font.xml:65
+#: doc/classes/Font.xml:66
msgid ""
"Returns the size of a character, optionally taking kerning into account if "
"the next character is provided."
msgstr ""
-#: doc/classes/Font.xml:72
+#: doc/classes/Font.xml:73
msgid "Returns the font descent (number of pixels below the baseline)."
msgstr ""
-#: doc/classes/Font.xml:79
+#: doc/classes/Font.xml:80
msgid "Returns the total font height (ascent plus descent) in pixels."
msgstr ""
-#: doc/classes/Font.xml:88
+#: doc/classes/Font.xml:89
msgid "Returns the size of a string, taking kerning and advance into account."
msgstr ""
-#: doc/classes/Font.xml:99
+#: doc/classes/Font.xml:100
msgid ""
"Returns the size that the string would have with word wrapping enabled with "
"a fixed [code]width[/code]."
msgstr ""
-#: doc/classes/Font.xml:106
+#: doc/classes/Font.xml:107
msgid "Returns [code]true[/code] if the font has an outline."
msgstr ""
-#: doc/classes/Font.xml:119
+#: doc/classes/Font.xml:120
msgid ""
"After editing a font (changing size, ascent, char rects, etc.). Call this "
"function to propagate changes to controls that might use it."
@@ -21036,13 +21537,14 @@ msgstr ""
#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:7
msgid ""
-"Calling [method @GDScript.yield] within a function will cause that function "
-"to yield and return its current state as an object of this type. The yielded "
+"FIXME: Outdated docs as of GDScript rewrite in 4.0.\n"
+"Calling [code]yield[/code] within a function will cause that function to "
+"yield and return its current state as an object of this type. The yielded "
"function call can then be resumed later by calling [method resume] on this "
"state object."
msgstr ""
-#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:18
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:19
msgid ""
"Check whether the function call may be resumed. This is not the case if the "
"function state was already resumed.\n"
@@ -21053,12 +21555,12 @@ msgid ""
"script have survived up to that point."
msgstr ""
-#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:28
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:29
msgid ""
"Resume execution of the yielded function call.\n"
-"If handed an argument, return the argument from the [method @GDScript.yield] "
-"call in the yielded function call. You can pass e.g. an [Array] to hand "
-"multiple arguments.\n"
+"If handed an argument, return the argument from the [code]yield[/code] call "
+"in the yielded function call. You can pass e.g. an [Array] to hand multiple "
+"arguments.\n"
"This function returns what the resumed function call returns, possibly "
"another function state if yielded again."
msgstr ""
@@ -21627,10 +22129,20 @@ msgid ""
"code], see [enum PolyJoinType].\n"
"The operation may result in an outer polygon (boundary) and inner polygon "
"(hole) produced which could be distinguished by calling [method "
-"is_polygon_clockwise]."
+"is_polygon_clockwise].\n"
+"[b]Note:[/b] To translate the polygon's vertices specifically, use the "
+"[method Transform2D.xform] method:\n"
+"[codeblock]\n"
+"var polygon = PackedVector2Array([Vector2(0, 0), Vector2(100, 0), "
+"Vector2(100, 100), Vector2(0, 100)])\n"
+"var offset = Vector2(50, 50)\n"
+"polygon = Transform2D(0, offset).xform(polygon)\n"
+"print(polygon) # prints [Vector2(50, 50), Vector2(150, 50), Vector2(150, "
+"150), Vector2(50, 150)]\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/Geometry2D.xml:217
+#: doc/classes/Geometry2D.xml:224
msgid ""
"Inflates or deflates [code]polyline[/code] by [code]delta[/code] units "
"(pixels), producing polygons. If [code]delta[/code] is positive, makes the "
@@ -21646,13 +22158,13 @@ msgid ""
"is_polygon_clockwise]."
msgstr ""
-#: doc/classes/Geometry2D.xml:235
+#: doc/classes/Geometry2D.xml:242
msgid ""
"Returns if [code]point[/code] is inside the triangle specified by [code]a[/"
"code], [code]b[/code] and [code]c[/code]."
msgstr ""
-#: doc/classes/Geometry2D.xml:250
+#: doc/classes/Geometry2D.xml:257
msgid ""
"Checks if the two segments ([code]from_a[/code], [code]to_a[/code]) and "
"([code]from_b[/code], [code]to_b[/code]) intersect. If yes, return the point "
@@ -21660,7 +22172,7 @@ msgid ""
"empty [Variant]."
msgstr ""
-#: doc/classes/Geometry2D.xml:259
+#: doc/classes/Geometry2D.xml:266
msgid ""
"Triangulates the area specified by discrete set of [code]points[/code] such "
"that no point is inside the circumcircle of any resulting triangle. Returns "
@@ -21671,7 +22183,7 @@ msgid ""
"[PackedInt32Array] is returned."
msgstr ""
-#: doc/classes/Geometry2D.xml:268
+#: doc/classes/Geometry2D.xml:275
msgid ""
"Triangulates the polygon specified by the points in [code]polygon[/code]. "
"Returns a [PackedInt32Array] where each triangle consists of three "
@@ -21681,40 +22193,40 @@ msgid ""
"[PackedInt32Array] is returned."
msgstr ""
-#: doc/classes/Geometry2D.xml:274
+#: doc/classes/Geometry2D.xml:281
msgid ""
"Create regions where either subject or clip polygons (or both) are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:277
+#: doc/classes/Geometry2D.xml:284
msgid ""
"Create regions where subject polygons are filled except where clip polygons "
"are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:280
+#: doc/classes/Geometry2D.xml:287
msgid "Create regions where both subject and clip polygons are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:283
+#: doc/classes/Geometry2D.xml:290
msgid ""
"Create regions where either subject or clip polygons are filled but not "
"where both are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:286
+#: doc/classes/Geometry2D.xml:293
msgid ""
"Squaring is applied uniformally at all convex edge joins at [code]1 * delta[/"
"code]."
msgstr ""
-#: doc/classes/Geometry2D.xml:289
+#: doc/classes/Geometry2D.xml:296
msgid ""
"While flattened paths can never perfectly trace an arc, they are "
"approximated by a series of arc chords."
msgstr ""
-#: doc/classes/Geometry2D.xml:292
+#: doc/classes/Geometry2D.xml:299
msgid ""
"There's a necessary limit to mitered joins since offsetting edges that join "
"at very acute angles will produce excessively long and narrow \"spikes\". "
@@ -21722,27 +22234,27 @@ msgid ""
"distance, \"square\" joining is applied."
msgstr ""
-#: doc/classes/Geometry2D.xml:295
+#: doc/classes/Geometry2D.xml:302
msgid ""
"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
"as a polygon."
msgstr ""
-#: doc/classes/Geometry2D.xml:298
+#: doc/classes/Geometry2D.xml:305
msgid ""
"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
"as a polyline."
msgstr ""
-#: doc/classes/Geometry2D.xml:301
+#: doc/classes/Geometry2D.xml:308
msgid "Endpoints are squared off with no extension."
msgstr ""
-#: doc/classes/Geometry2D.xml:304
+#: doc/classes/Geometry2D.xml:311
msgid "Endpoints are squared off and extended by [code]delta[/code] units."
msgstr ""
-#: doc/classes/Geometry2D.xml:307
+#: doc/classes/Geometry2D.xml:314
msgid "Endpoints are rounded off and extended by [code]delta[/code] units."
msgstr ""
@@ -21972,7 +22484,7 @@ msgstr ""
msgid ""
"Bakes the effect from all [GeometryInstance3D]s marked with [constant "
"GeometryInstance3D.GI_MODE_BAKED] and [Light3D]s marked with either "
-"[constant Light3D.BAKE_INDIRECT] or [constant Light3D.BAKE_ALL]. If "
+"[constant Light3D.BAKE_DYNAMIC] or [constant Light3D.BAKE_STATIC]. If "
"[code]create_visual_debug[/code] is [code]true[/code], after baking the "
"light, this will generate a [MultiMesh] that has a cube representing each "
"solid cell with each cube colored to the cell's albedo color. This can be "
@@ -22859,121 +23371,119 @@ msgstr ""
msgid "Clear all cells."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:53
+#: modules/gridmap/doc_classes/GridMap.xml:49
msgid ""
-"The [MeshLibrary] item index located at the grid-based X, Y and Z "
-"coordinates. If the cell is empty, [constant INVALID_CELL_ITEM] will be "
-"returned."
+"The [MeshLibrary] item index located at the given grid coordinates. If the "
+"cell is empty, [constant INVALID_CELL_ITEM] will be returned."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:66
+#: modules/gridmap/doc_classes/GridMap.xml:58
msgid ""
-"The orientation of the cell at the grid-based X, Y and Z coordinates. -1 is "
-"returned if the cell is empty."
+"The orientation of the cell at the given grid coordinates. [code]-1[/code] "
+"is returned if the cell is empty."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:75 doc/classes/PhysicsBody2D.xml:35
+#: modules/gridmap/doc_classes/GridMap.xml:67 doc/classes/PhysicsBody2D.xml:35
#: doc/classes/PhysicsBody3D.xml:35
msgid "Returns an individual bit on the [member collision_layer]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:84 doc/classes/PhysicsBody2D.xml:44
+#: modules/gridmap/doc_classes/GridMap.xml:76 doc/classes/PhysicsBody2D.xml:44
#: doc/classes/PhysicsBody3D.xml:44
msgid "Returns an individual bit on the [member collision_mask]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:91
+#: modules/gridmap/doc_classes/GridMap.xml:83
msgid ""
"Returns an array of [Transform] and [Mesh] references corresponding to the "
"non-empty cells in the grid. The transforms are specified in world space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:98
+#: modules/gridmap/doc_classes/GridMap.xml:90
msgid ""
"Returns an array of [Vector3] with the non-empty cell coordinates in the "
"grid map."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:121
+#: modules/gridmap/doc_classes/GridMap.xml:109
msgid ""
"Returns the position of a grid cell in the GridMap's local coordinate space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:146
+#: modules/gridmap/doc_classes/GridMap.xml:130
msgid ""
-"Sets the mesh index for the cell referenced by its grid-based X, Y and Z "
-"coordinates.\n"
+"Sets the mesh index for the cell referenced by its grid coordinates.\n"
"A negative item index such as [constant INVALID_CELL_ITEM] will clear the "
"cell.\n"
"Optionally, the item's orientation can be passed. For valid orientation "
"values, see [method Basis.get_orthogonal_index]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:173
+#: modules/gridmap/doc_classes/GridMap.xml:157
msgid "Sets an individual bit on the [member collision_layer]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:184
+#: modules/gridmap/doc_classes/GridMap.xml:168
msgid "Sets an individual bit on the [member collision_mask]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:193
+#: modules/gridmap/doc_classes/GridMap.xml:177
msgid ""
"Returns the coordinates of the grid cell containing the given point.\n"
"[code]pos[/code] should be in the GridMap's local coordinate space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:200
+#: modules/gridmap/doc_classes/GridMap.xml:184
msgid "If [code]true[/code], grid items are centered on the X axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:203
+#: modules/gridmap/doc_classes/GridMap.xml:187
msgid "If [code]true[/code], grid items are centered on the Y axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:206
+#: modules/gridmap/doc_classes/GridMap.xml:190
msgid "If [code]true[/code], grid items are centered on the Z axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:209
+#: modules/gridmap/doc_classes/GridMap.xml:193
msgid ""
"The size of each octant measured in number of cells. This applies to all "
"three axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:212
+#: modules/gridmap/doc_classes/GridMap.xml:196
msgid ""
"The scale of the cell items.\n"
"This does not affect the size of the grid cells themselves, only the items "
"in them. This can be used to make cell items overlap their neighbors."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:216
+#: modules/gridmap/doc_classes/GridMap.xml:200
msgid ""
"The dimensions of the grid's cells.\n"
"This does not affect the size of the meshes. See [member cell_scale]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:220
+#: modules/gridmap/doc_classes/GridMap.xml:204
msgid ""
"The physics layers this GridMap is in.\n"
"GridMaps act as static bodies, meaning they aren't affected by gravity or "
"other forces. They only affect other physics bodies that collide with them."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:224
+#: modules/gridmap/doc_classes/GridMap.xml:208
msgid "The physics layers this GridMap detects collisions in."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:227
+#: modules/gridmap/doc_classes/GridMap.xml:211
msgid "The assigned [MeshLibrary]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:235
+#: modules/gridmap/doc_classes/GridMap.xml:219
msgid "Emitted when [member cell_size] changes."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:241
+#: modules/gridmap/doc_classes/GridMap.xml:225
msgid ""
"Invalid cell item that can be used in [method set_cell_item] to clear cells "
"(or represent an empty cell in [method get_cell_item])."
@@ -23338,27 +23848,33 @@ msgid ""
"server's side.\n"
"For more information on HTTP, see https://developer.mozilla.org/en-US/docs/"
"Web/HTTP (or read RFC 2616 to get it straight from the source: https://tools."
-"ietf.org/html/rfc2616)."
+"ietf.org/html/rfc2616).\n"
+"[b]Note:[/b] When performing HTTP requests from a project exported to HTML5, "
+"keep in mind the remote server may not allow requests from foreign origins "
+"due to [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/"
+"url]. If you host the server in question, you should modify its backend to "
+"allow requests from foreign origins by adding the [code]Access-Control-Allow-"
+"Origin: *[/code] HTTP header."
msgstr ""
-#: doc/classes/HTTPClient.xml:13
+#: doc/classes/HTTPClient.xml:14
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/"
"http_client_class.html"
msgstr ""
-#: doc/classes/HTTPClient.xml:14 doc/classes/HTTPRequest.xml:62
+#: doc/classes/HTTPClient.xml:15 doc/classes/HTTPRequest.xml:71
#: doc/classes/StreamPeerSSL.xml:10
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/ssl_certificates."
"html"
msgstr ""
-#: doc/classes/HTTPClient.xml:21
+#: doc/classes/HTTPClient.xml:22
msgid "Closes the current connection, allowing reuse of this [HTTPClient]."
msgstr ""
-#: doc/classes/HTTPClient.xml:36
+#: doc/classes/HTTPClient.xml:37
msgid ""
"Connects to a host. This needs to be done before any requests are sent.\n"
"The host should not have http:// prepended but will strip the protocol "
@@ -23370,7 +23886,7 @@ msgid ""
"[code]true[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:46
+#: doc/classes/HTTPClient.xml:47
msgid ""
"Returns the response's body length.\n"
"[b]Note:[/b] Some Web servers may not send a body length. In this case, the "
@@ -23378,15 +23894,15 @@ msgid ""
"the body length will also be [code]-1[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:54
+#: doc/classes/HTTPClient.xml:55
msgid "Returns the response's HTTP status code."
msgstr ""
-#: doc/classes/HTTPClient.xml:61
+#: doc/classes/HTTPClient.xml:62
msgid "Returns the response headers."
msgstr ""
-#: doc/classes/HTTPClient.xml:68
+#: doc/classes/HTTPClient.xml:69
msgid ""
"Returns all response headers as a Dictionary of structure [code]{ \"key\": "
"\"value1; value2\" }[/code] where the case-sensitivity of the keys and "
@@ -23401,27 +23917,27 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:82
+#: doc/classes/HTTPClient.xml:83
msgid ""
"Returns a [enum Status] constant. Need to call [method poll] in order to get "
"status updates."
msgstr ""
-#: doc/classes/HTTPClient.xml:89
+#: doc/classes/HTTPClient.xml:90
msgid "If [code]true[/code], this [HTTPClient] has a response available."
msgstr ""
-#: doc/classes/HTTPClient.xml:96
+#: doc/classes/HTTPClient.xml:97
msgid "If [code]true[/code], this [HTTPClient] has a response that is chunked."
msgstr ""
-#: doc/classes/HTTPClient.xml:103
+#: doc/classes/HTTPClient.xml:104
msgid ""
"This needs to be called in order to have any request processed. Check "
"results with [method get_status]."
msgstr ""
-#: doc/classes/HTTPClient.xml:112
+#: doc/classes/HTTPClient.xml:113
msgid ""
"Generates a GET/POST application/x-www-form-urlencoded style query string "
"from a provided dictionary, e.g.:\n"
@@ -23441,11 +23957,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:130
+#: doc/classes/HTTPClient.xml:131
msgid "Reads one chunk from the response."
msgstr ""
-#: doc/classes/HTTPClient.xml:145
+#: doc/classes/HTTPClient.xml:146
msgid ""
"Sends a request to the connected host. The URL parameter is just the part "
"after the host, so for [code]http://somehost.com/index.php[/code], it is "
@@ -23463,7 +23979,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:168
+#: doc/classes/HTTPClient.xml:169
msgid ""
"Sends a raw request to the connected host. The URL parameter is just the "
"part after the host, so for [code]http://somehost.com/index.php[/code], it "
@@ -23473,43 +23989,43 @@ msgid ""
"Sends the body data raw, as a byte array and does not encode it in any way."
msgstr ""
-#: doc/classes/HTTPClient.xml:176
+#: doc/classes/HTTPClient.xml:177
msgid ""
"If [code]true[/code], execution will block until all data is read from the "
"response."
msgstr ""
-#: doc/classes/HTTPClient.xml:179
+#: doc/classes/HTTPClient.xml:180
msgid "The connection to use for this client."
msgstr ""
-#: doc/classes/HTTPClient.xml:182
+#: doc/classes/HTTPClient.xml:183
msgid ""
"The size of the buffer used and maximum bytes to read per iteration. See "
"[method read_response_body_chunk]."
msgstr ""
-#: doc/classes/HTTPClient.xml:187
+#: doc/classes/HTTPClient.xml:188
msgid ""
"HTTP GET method. The GET method requests a representation of the specified "
"resource. Requests using GET should only retrieve data."
msgstr ""
-#: doc/classes/HTTPClient.xml:190
+#: doc/classes/HTTPClient.xml:191
msgid ""
"HTTP HEAD method. The HEAD method asks for a response identical to that of a "
"GET request, but without the response body. This is useful to request "
"metadata like HTTP headers or to check if a resource exists."
msgstr ""
-#: doc/classes/HTTPClient.xml:193
+#: doc/classes/HTTPClient.xml:194
msgid ""
"HTTP POST method. The POST method is used to submit an entity to the "
"specified resource, often causing a change in state or side effects on the "
"server. This is often used for forms and submitting data or uploading files."
msgstr ""
-#: doc/classes/HTTPClient.xml:196
+#: doc/classes/HTTPClient.xml:197
msgid ""
"HTTP PUT method. The PUT method asks to replace all current representations "
"of the target resource with the request payload. (You can think of POST as "
@@ -23517,103 +24033,103 @@ msgid ""
"not make a clear distinction or change their meaning)."
msgstr ""
-#: doc/classes/HTTPClient.xml:199
+#: doc/classes/HTTPClient.xml:200
msgid ""
"HTTP DELETE method. The DELETE method requests to delete the specified "
"resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:202
+#: doc/classes/HTTPClient.xml:203
msgid ""
"HTTP OPTIONS method. The OPTIONS method asks for a description of the "
"communication options for the target resource. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:205
+#: doc/classes/HTTPClient.xml:206
msgid ""
"HTTP TRACE method. The TRACE method performs a message loop-back test along "
"the path to the target resource. Returns the entire HTTP request received in "
"the response body. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:208
+#: doc/classes/HTTPClient.xml:209
msgid ""
"HTTP CONNECT method. The CONNECT method establishes a tunnel to the server "
"identified by the target resource. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:211
+#: doc/classes/HTTPClient.xml:212
msgid ""
"HTTP PATCH method. The PATCH method is used to apply partial modifications "
"to a resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:214
+#: doc/classes/HTTPClient.xml:215
msgid "Represents the size of the [enum Method] enum."
msgstr ""
-#: doc/classes/HTTPClient.xml:217
+#: doc/classes/HTTPClient.xml:218
msgid "Status: Disconnected from the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:220
+#: doc/classes/HTTPClient.xml:221
msgid "Status: Currently resolving the hostname for the given URL into an IP."
msgstr ""
-#: doc/classes/HTTPClient.xml:223
+#: doc/classes/HTTPClient.xml:224
msgid "Status: DNS failure: Can't resolve the hostname for the given URL."
msgstr ""
-#: doc/classes/HTTPClient.xml:226
+#: doc/classes/HTTPClient.xml:227
msgid "Status: Currently connecting to server."
msgstr ""
-#: doc/classes/HTTPClient.xml:229
+#: doc/classes/HTTPClient.xml:230
msgid "Status: Can't connect to the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:232
+#: doc/classes/HTTPClient.xml:233
msgid "Status: Connection established."
msgstr ""
-#: doc/classes/HTTPClient.xml:235
+#: doc/classes/HTTPClient.xml:236
msgid "Status: Currently sending request."
msgstr ""
-#: doc/classes/HTTPClient.xml:238
+#: doc/classes/HTTPClient.xml:239
msgid "Status: HTTP body received."
msgstr ""
-#: doc/classes/HTTPClient.xml:241
+#: doc/classes/HTTPClient.xml:242
msgid "Status: Error in HTTP connection."
msgstr ""
-#: doc/classes/HTTPClient.xml:244
+#: doc/classes/HTTPClient.xml:245
msgid "Status: Error in SSL handshake."
msgstr ""
-#: doc/classes/HTTPClient.xml:247
+#: doc/classes/HTTPClient.xml:248
msgid ""
"HTTP status code [code]100 Continue[/code]. Interim response that indicates "
"everything so far is OK and that the client should continue with the request "
"(or ignore this status if already finished)."
msgstr ""
-#: doc/classes/HTTPClient.xml:250
+#: doc/classes/HTTPClient.xml:251
msgid ""
"HTTP status code [code]101 Switching Protocol[/code]. Sent in response to an "
"[code]Upgrade[/code] request header by the client. Indicates the protocol "
"the server is switching to."
msgstr ""
-#: doc/classes/HTTPClient.xml:253
+#: doc/classes/HTTPClient.xml:254
msgid ""
"HTTP status code [code]102 Processing[/code] (WebDAV). Indicates that the "
"server has received and is processing the request, but no response is "
"available yet."
msgstr ""
-#: doc/classes/HTTPClient.xml:256
+#: doc/classes/HTTPClient.xml:257
msgid ""
"HTTP status code [code]200 OK[/code]. The request has succeeded. Default "
"response for successful requests. Meaning varies depending on the request. "
@@ -23624,14 +24140,14 @@ msgid ""
"server."
msgstr ""
-#: doc/classes/HTTPClient.xml:259
+#: doc/classes/HTTPClient.xml:260
msgid ""
"HTTP status code [code]201 Created[/code]. The request has succeeded and a "
"new resource has been created as a result of it. This is typically the "
"response sent after a PUT request."
msgstr ""
-#: doc/classes/HTTPClient.xml:262
+#: doc/classes/HTTPClient.xml:263
msgid ""
"HTTP status code [code]202 Accepted[/code]. The request has been received "
"but not yet acted upon. It is non-committal, meaning that there is no way in "
@@ -23640,7 +24156,7 @@ msgid ""
"server handles the request, or for batch processing."
msgstr ""
-#: doc/classes/HTTPClient.xml:265
+#: doc/classes/HTTPClient.xml:266
msgid ""
"HTTP status code [code]203 Non-Authoritative Information[/code]. This "
"response code means returned meta-information set is not exact set as "
@@ -23649,14 +24165,14 @@ msgid ""
"instead of this response."
msgstr ""
-#: doc/classes/HTTPClient.xml:268
+#: doc/classes/HTTPClient.xml:269
msgid ""
"HTTP status code [code]204 No Content[/code]. There is no content to send "
"for this request, but the headers may be useful. The user-agent may update "
"its cached headers for this resource with the new ones."
msgstr ""
-#: doc/classes/HTTPClient.xml:271
+#: doc/classes/HTTPClient.xml:272
msgid ""
"HTTP status code [code]205 Reset Content[/code]. The server has fulfilled "
"the request and desires that the client resets the \"document view\" that "
@@ -23664,49 +24180,49 @@ msgid ""
"origin server."
msgstr ""
-#: doc/classes/HTTPClient.xml:274
+#: doc/classes/HTTPClient.xml:275
msgid ""
"HTTP status code [code]206 Partial Content[/code]. This response code is "
"used because of a range header sent by the client to separate download into "
"multiple streams."
msgstr ""
-#: doc/classes/HTTPClient.xml:277
+#: doc/classes/HTTPClient.xml:278
msgid ""
"HTTP status code [code]207 Multi-Status[/code] (WebDAV). A Multi-Status "
"response conveys information about multiple resources in situations where "
"multiple status codes might be appropriate."
msgstr ""
-#: doc/classes/HTTPClient.xml:280
+#: doc/classes/HTTPClient.xml:281
msgid ""
"HTTP status code [code]208 Already Reported[/code] (WebDAV). Used inside a "
"DAV: propstat response element to avoid enumerating the internal members of "
"multiple bindings to the same collection repeatedly."
msgstr ""
-#: doc/classes/HTTPClient.xml:283
+#: doc/classes/HTTPClient.xml:284
msgid ""
"HTTP status code [code]226 IM Used[/code] (WebDAV). The server has fulfilled "
"a GET request for the resource, and the response is a representation of the "
"result of one or more instance-manipulations applied to the current instance."
msgstr ""
-#: doc/classes/HTTPClient.xml:286
+#: doc/classes/HTTPClient.xml:287
msgid ""
"HTTP status code [code]300 Multiple Choice[/code]. The request has more than "
"one possible responses and there is no standardized way to choose one of the "
"responses. User-agent or user should choose one of them."
msgstr ""
-#: doc/classes/HTTPClient.xml:289
+#: doc/classes/HTTPClient.xml:290
msgid ""
"HTTP status code [code]301 Moved Permanently[/code]. Redirection. This "
"response code means the URI of requested resource has been changed. The new "
"URI is usually included in the response."
msgstr ""
-#: doc/classes/HTTPClient.xml:292
+#: doc/classes/HTTPClient.xml:293
msgid ""
"HTTP status code [code]302 Found[/code]. Temporary redirection. This "
"response code means the URI of requested resource has been changed "
@@ -23714,7 +24230,7 @@ msgid ""
"this same URI should be used by the client in future requests."
msgstr ""
-#: doc/classes/HTTPClient.xml:295
+#: doc/classes/HTTPClient.xml:296
msgid ""
"HTTP status code [code]303 See Other[/code]. The server is redirecting the "
"user agent to a different resource, as indicated by a URI in the Location "
@@ -23722,39 +24238,39 @@ msgid ""
"original request."
msgstr ""
-#: doc/classes/HTTPClient.xml:298
+#: doc/classes/HTTPClient.xml:299
msgid ""
"HTTP status code [code]304 Not Modified[/code]. A conditional GET or HEAD "
"request has been received and would have resulted in a 200 OK response if it "
"were not for the fact that the condition evaluated to [code]false[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:301
+#: doc/classes/HTTPClient.xml:302
msgid ""
"HTTP status code [code]305 Use Proxy[/code]. [i]Deprecated. Do not use.[/i]"
msgstr ""
-#: doc/classes/HTTPClient.xml:304
+#: doc/classes/HTTPClient.xml:305
msgid ""
"HTTP status code [code]306 Switch Proxy[/code]. [i]Deprecated. Do not use.[/"
"i]"
msgstr ""
-#: doc/classes/HTTPClient.xml:307
+#: doc/classes/HTTPClient.xml:308
msgid ""
"HTTP status code [code]307 Temporary Redirect[/code]. The target resource "
"resides temporarily under a different URI and the user agent MUST NOT change "
"the request method if it performs an automatic redirection to that URI."
msgstr ""
-#: doc/classes/HTTPClient.xml:310
+#: doc/classes/HTTPClient.xml:311
msgid ""
"HTTP status code [code]308 Permanent Redirect[/code]. The target resource "
"has been assigned a new permanent URI and any future references to this "
"resource ought to use one of the enclosed URIs."
msgstr ""
-#: doc/classes/HTTPClient.xml:313
+#: doc/classes/HTTPClient.xml:314
msgid ""
"HTTP status code [code]400 Bad Request[/code]. The request was invalid. The "
"server cannot or will not process the request due to something that is "
@@ -23763,21 +24279,21 @@ msgid ""
"routing)."
msgstr ""
-#: doc/classes/HTTPClient.xml:316
+#: doc/classes/HTTPClient.xml:317
msgid ""
"HTTP status code [code]401 Unauthorized[/code]. Credentials required. The "
"request has not been applied because it lacks valid authentication "
"credentials for the target resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:319
+#: doc/classes/HTTPClient.xml:320
msgid ""
"HTTP status code [code]402 Payment Required[/code]. This response code is "
"reserved for future use. Initial aim for creating this code was using it for "
"digital payment systems, however this is not currently used."
msgstr ""
-#: doc/classes/HTTPClient.xml:322
+#: doc/classes/HTTPClient.xml:323
msgid ""
"HTTP status code [code]403 Forbidden[/code]. The client does not have access "
"rights to the content, i.e. they are unauthorized, so server is rejecting to "
@@ -23785,7 +24301,7 @@ msgid ""
"known to the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:325
+#: doc/classes/HTTPClient.xml:326
msgid ""
"HTTP status code [code]404 Not Found[/code]. The server can not find "
"requested resource. Either the URL is not recognized or the endpoint is "
@@ -23793,7 +24309,7 @@ msgid ""
"403 to hide existence of a resource if the client is not authorized."
msgstr ""
-#: doc/classes/HTTPClient.xml:328
+#: doc/classes/HTTPClient.xml:329
msgid ""
"HTTP status code [code]405 Method Not Allowed[/code]. The request's HTTP "
"method is known by the server but has been disabled and cannot be used. For "
@@ -23801,7 +24317,7 @@ msgid ""
"GET and HEAD, must never be disabled and should not return this error code."
msgstr ""
-#: doc/classes/HTTPClient.xml:331
+#: doc/classes/HTTPClient.xml:332
msgid ""
"HTTP status code [code]406 Not Acceptable[/code]. The target resource does "
"not have a current representation that would be acceptable to the user "
@@ -23809,21 +24325,21 @@ msgid ""
"request. Used when negotiation content."
msgstr ""
-#: doc/classes/HTTPClient.xml:334
+#: doc/classes/HTTPClient.xml:335
msgid ""
"HTTP status code [code]407 Proxy Authentication Required[/code]. Similar to "
"401 Unauthorized, but it indicates that the client needs to authenticate "
"itself in order to use a proxy."
msgstr ""
-#: doc/classes/HTTPClient.xml:337
+#: doc/classes/HTTPClient.xml:338
msgid ""
"HTTP status code [code]408 Request Timeout[/code]. The server did not "
"receive a complete request message within the time that it was prepared to "
"wait."
msgstr ""
-#: doc/classes/HTTPClient.xml:340
+#: doc/classes/HTTPClient.xml:341
msgid ""
"HTTP status code [code]409 Conflict[/code]. The request could not be "
"completed due to a conflict with the current state of the target resource. "
@@ -23831,47 +24347,47 @@ msgid ""
"conflict and resubmit the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:343
+#: doc/classes/HTTPClient.xml:344
msgid ""
"HTTP status code [code]410 Gone[/code]. The target resource is no longer "
"available at the origin server and this condition is likely permanent."
msgstr ""
-#: doc/classes/HTTPClient.xml:346
+#: doc/classes/HTTPClient.xml:347
msgid ""
"HTTP status code [code]411 Length Required[/code]. The server refuses to "
"accept the request without a defined Content-Length header."
msgstr ""
-#: doc/classes/HTTPClient.xml:349
+#: doc/classes/HTTPClient.xml:350
msgid ""
"HTTP status code [code]412 Precondition Failed[/code]. One or more "
"conditions given in the request header fields evaluated to [code]false[/"
"code] when tested on the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:352
+#: doc/classes/HTTPClient.xml:353
msgid ""
"HTTP status code [code]413 Entity Too Large[/code]. The server is refusing "
"to process a request because the request payload is larger than the server "
"is willing or able to process."
msgstr ""
-#: doc/classes/HTTPClient.xml:355
+#: doc/classes/HTTPClient.xml:356
msgid ""
"HTTP status code [code]414 Request-URI Too Long[/code]. The server is "
"refusing to service the request because the request-target is longer than "
"the server is willing to interpret."
msgstr ""
-#: doc/classes/HTTPClient.xml:358
+#: doc/classes/HTTPClient.xml:359
msgid ""
"HTTP status code [code]415 Unsupported Media Type[/code]. The origin server "
"is refusing to service the request because the payload is in a format not "
"supported by this method on the target resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:361
+#: doc/classes/HTTPClient.xml:362
msgid ""
"HTTP status code [code]416 Requested Range Not Satisfiable[/code]. None of "
"the ranges in the request's Range header field overlap the current extent of "
@@ -23879,21 +24395,21 @@ msgid ""
"to invalid ranges or an excessive request of small or overlapping ranges."
msgstr ""
-#: doc/classes/HTTPClient.xml:364
+#: doc/classes/HTTPClient.xml:365
msgid ""
"HTTP status code [code]417 Expectation Failed[/code]. The expectation given "
"in the request's Expect header field could not be met by at least one of the "
"inbound servers."
msgstr ""
-#: doc/classes/HTTPClient.xml:367
+#: doc/classes/HTTPClient.xml:368
msgid ""
"HTTP status code [code]418 I'm A Teapot[/code]. Any attempt to brew coffee "
"with a teapot should result in the error code \"418 I'm a teapot\". The "
"resulting entity body MAY be short and stout."
msgstr ""
-#: doc/classes/HTTPClient.xml:370
+#: doc/classes/HTTPClient.xml:371
msgid ""
"HTTP status code [code]421 Misdirected Request[/code]. The request was "
"directed at a server that is not able to produce a response. This can be "
@@ -23901,7 +24417,7 @@ msgid ""
"combination of scheme and authority that are included in the request URI."
msgstr ""
-#: doc/classes/HTTPClient.xml:373
+#: doc/classes/HTTPClient.xml:374
msgid ""
"HTTP status code [code]422 Unprocessable Entity[/code] (WebDAV). The server "
"understands the content type of the request entity (hence a 415 Unsupported "
@@ -23910,40 +24426,40 @@ msgid ""
"was unable to process the contained instructions."
msgstr ""
-#: doc/classes/HTTPClient.xml:376
+#: doc/classes/HTTPClient.xml:377
msgid ""
"HTTP status code [code]423 Locked[/code] (WebDAV). The source or destination "
"resource of a method is locked."
msgstr ""
-#: doc/classes/HTTPClient.xml:379
+#: doc/classes/HTTPClient.xml:380
msgid ""
"HTTP status code [code]424 Failed Dependency[/code] (WebDAV). The method "
"could not be performed on the resource because the requested action depended "
"on another action and that action failed."
msgstr ""
-#: doc/classes/HTTPClient.xml:382
+#: doc/classes/HTTPClient.xml:383
msgid ""
"HTTP status code [code]426 Upgrade Required[/code]. The server refuses to "
"perform the request using the current protocol but might be willing to do so "
"after the client upgrades to a different protocol."
msgstr ""
-#: doc/classes/HTTPClient.xml:385
+#: doc/classes/HTTPClient.xml:386
msgid ""
"HTTP status code [code]428 Precondition Required[/code]. The origin server "
"requires the request to be conditional."
msgstr ""
-#: doc/classes/HTTPClient.xml:388
+#: doc/classes/HTTPClient.xml:389
msgid ""
"HTTP status code [code]429 Too Many Requests[/code]. The user has sent too "
"many requests in a given amount of time (see \"rate limiting\"). Back off "
"and increase time between requests or try again later."
msgstr ""
-#: doc/classes/HTTPClient.xml:391
+#: doc/classes/HTTPClient.xml:392
msgid ""
"HTTP status code [code]431 Request Header Fields Too Large[/code]. The "
"server is unwilling to process the request because its header fields are too "
@@ -23951,27 +24467,27 @@ msgid ""
"header fields."
msgstr ""
-#: doc/classes/HTTPClient.xml:394
+#: doc/classes/HTTPClient.xml:395
msgid ""
"HTTP status code [code]451 Response Unavailable For Legal Reasons[/code]. "
"The server is denying access to the resource as a consequence of a legal "
"demand."
msgstr ""
-#: doc/classes/HTTPClient.xml:397
+#: doc/classes/HTTPClient.xml:398
msgid ""
"HTTP status code [code]500 Internal Server Error[/code]. The server "
"encountered an unexpected condition that prevented it from fulfilling the "
"request."
msgstr ""
-#: doc/classes/HTTPClient.xml:400
+#: doc/classes/HTTPClient.xml:401
msgid ""
"HTTP status code [code]501 Not Implemented[/code]. The server does not "
"support the functionality required to fulfill the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:403
+#: doc/classes/HTTPClient.xml:404
msgid ""
"HTTP status code [code]502 Bad Gateway[/code]. The server, while acting as a "
"gateway or proxy, received an invalid response from an inbound server it "
@@ -23979,7 +24495,7 @@ msgid ""
"balancers or proxies."
msgstr ""
-#: doc/classes/HTTPClient.xml:406
+#: doc/classes/HTTPClient.xml:407
msgid ""
"HTTP status code [code]503 Service Unavailable[/code]. The server is "
"currently unable to handle the request due to a temporary overload or "
@@ -23987,7 +24503,7 @@ msgid ""
"again later."
msgstr ""
-#: doc/classes/HTTPClient.xml:409
+#: doc/classes/HTTPClient.xml:410
msgid ""
"HTTP status code [code]504 Gateway Timeout[/code]. The server, while acting "
"as a gateway or proxy, did not receive a timely response from an upstream "
@@ -23995,14 +24511,14 @@ msgid ""
"returned by load balancers or proxies."
msgstr ""
-#: doc/classes/HTTPClient.xml:412
+#: doc/classes/HTTPClient.xml:413
msgid ""
"HTTP status code [code]505 HTTP Version Not Supported[/code]. The server "
"does not support, or refuses to support, the major version of HTTP that was "
"used in the request message."
msgstr ""
-#: doc/classes/HTTPClient.xml:415
+#: doc/classes/HTTPClient.xml:416
msgid ""
"HTTP status code [code]506 Variant Also Negotiates[/code]. The server has an "
"internal configuration error: the chosen variant resource is configured to "
@@ -24010,14 +24526,14 @@ msgid ""
"proper end point in the negotiation process."
msgstr ""
-#: doc/classes/HTTPClient.xml:418
+#: doc/classes/HTTPClient.xml:419
msgid ""
"HTTP status code [code]507 Insufficient Storage[/code]. The method could not "
"be performed on the resource because the server is unable to store the "
"representation needed to successfully complete the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:421
+#: doc/classes/HTTPClient.xml:422
msgid ""
"HTTP status code [code]508 Loop Detected[/code]. The server terminated an "
"operation because it encountered an infinite loop while processing a request "
@@ -24025,14 +24541,14 @@ msgid ""
"failed."
msgstr ""
-#: doc/classes/HTTPClient.xml:424
+#: doc/classes/HTTPClient.xml:425
msgid ""
"HTTP status code [code]510 Not Extended[/code]. The policy for accessing the "
"resource has not been met in the request. The server should send back all "
"the information necessary for the client to issue an extended request."
msgstr ""
-#: doc/classes/HTTPClient.xml:427
+#: doc/classes/HTTPClient.xml:428
msgid ""
"HTTP status code [code]511 Network Authentication Required[/code]. The "
"client needs to authenticate to gain network access."
@@ -24058,12 +24574,21 @@ msgid ""
" http_request.connect(\"request_completed\", self, "
"\"_http_request_completed\")\n"
"\n"
-" # Perform the HTTP request. The URL below returns some JSON as of "
-"writing.\n"
+" # Perform a GET request. The URL below returns JSON as of writing.\n"
" var error = http_request.request(\"https://httpbin.org/get\")\n"
" if error != OK:\n"
" push_error(\"An error occurred in the HTTP request.\")\n"
"\n"
+" # Perform a POST request. The URL below returns JSON as of writing.\n"
+" # Note: Don't make simultaneous requests using a single HTTPRequest "
+"node.\n"
+" # The snippet below is provided for reference only.\n"
+" var body = {\"name\": \"Godette\"}\n"
+" var error = http_request.request(\"https://httpbin.org/post\", [], true, "
+"HTTPClient.METHOD_POST, body)\n"
+" if error != OK:\n"
+" push_error(\"An error occurred in the HTTP request.\")\n"
+"\n"
"\n"
"# Called when the HTTP request is completed.\n"
"func _http_request_completed(result, response_code, headers, body):\n"
@@ -24103,20 +24628,26 @@ msgid ""
" var texture_rect = TextureRect.new()\n"
" add_child(texture_rect)\n"
" texture_rect.texture = texture\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] When performing HTTP requests from a project exported to HTML5, "
+"keep in mind the remote server may not allow requests from foreign origins "
+"due to [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/"
+"url]. If you host the server in question, you should modify its backend to "
+"allow requests from foreign origins by adding the [code]Access-Control-Allow-"
+"Origin: *[/code] HTTP header."
msgstr ""
-#: doc/classes/HTTPRequest.xml:61
+#: doc/classes/HTTPRequest.xml:70
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/"
"http_request_class.html"
msgstr ""
-#: doc/classes/HTTPRequest.xml:69
+#: doc/classes/HTTPRequest.xml:78
msgid "Cancels the current request."
msgstr ""
-#: doc/classes/HTTPRequest.xml:76
+#: doc/classes/HTTPRequest.xml:85
msgid ""
"Returns the response body length.\n"
"[b]Note:[/b] Some Web servers may not send a body length. In this case, the "
@@ -24124,17 +24655,17 @@ msgid ""
"the body length will also be [code]-1[/code]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:84
+#: doc/classes/HTTPRequest.xml:93
msgid "Returns the amount of bytes this HTTPRequest downloaded."
msgstr ""
-#: doc/classes/HTTPRequest.xml:91
+#: doc/classes/HTTPRequest.xml:100
msgid ""
"Returns the current status of the underlying [HTTPClient]. See [enum "
"HTTPClient.Status]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:108
+#: doc/classes/HTTPRequest.xml:117
msgid ""
"Creates request on the underlying [HTTPClient]. If there is no configuration "
"errors, it tries to connect using [method HTTPClient.connect_to_host] and "
@@ -24147,11 +24678,11 @@ msgid ""
"connect to host."
msgstr ""
-#: doc/classes/HTTPRequest.xml:115
+#: doc/classes/HTTPRequest.xml:124
msgid "Maximum allowed size for response bodies."
msgstr ""
-#: doc/classes/HTTPRequest.xml:118
+#: doc/classes/HTTPRequest.xml:127
msgid ""
"The size of the buffer used and maximum bytes to read per iteration. See "
"[member HTTPClient.read_chunk_size].\n"
@@ -24159,63 +24690,63 @@ msgid ""
"files to achieve better speeds at the cost of memory."
msgstr ""
-#: doc/classes/HTTPRequest.xml:122
+#: doc/classes/HTTPRequest.xml:131
msgid "The file to download into. Will output any received file into it."
msgstr ""
-#: doc/classes/HTTPRequest.xml:125
+#: doc/classes/HTTPRequest.xml:134
msgid "Maximum number of allowed redirects."
msgstr ""
-#: doc/classes/HTTPRequest.xml:130
+#: doc/classes/HTTPRequest.xml:139
msgid "If [code]true[/code], multithreading is used to improve performance."
msgstr ""
-#: doc/classes/HTTPRequest.xml:144
+#: doc/classes/HTTPRequest.xml:153
msgid "Emitted when a request is completed."
msgstr ""
-#: doc/classes/HTTPRequest.xml:150
+#: doc/classes/HTTPRequest.xml:159
msgid "Request successful."
msgstr ""
-#: doc/classes/HTTPRequest.xml:155
+#: doc/classes/HTTPRequest.xml:164
msgid "Request failed while connecting."
msgstr ""
-#: doc/classes/HTTPRequest.xml:158
+#: doc/classes/HTTPRequest.xml:167
msgid "Request failed while resolving."
msgstr ""
-#: doc/classes/HTTPRequest.xml:161
+#: doc/classes/HTTPRequest.xml:170
msgid "Request failed due to connection (read/write) error."
msgstr ""
-#: doc/classes/HTTPRequest.xml:164
+#: doc/classes/HTTPRequest.xml:173
msgid "Request failed on SSL handshake."
msgstr ""
-#: doc/classes/HTTPRequest.xml:167
+#: doc/classes/HTTPRequest.xml:176
msgid "Request does not have a response (yet)."
msgstr ""
-#: doc/classes/HTTPRequest.xml:170
+#: doc/classes/HTTPRequest.xml:179
msgid "Request exceeded its maximum size limit, see [member body_size_limit]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:173
+#: doc/classes/HTTPRequest.xml:182
msgid "Request failed (currently unused)."
msgstr ""
-#: doc/classes/HTTPRequest.xml:176
+#: doc/classes/HTTPRequest.xml:185
msgid "HTTPRequest couldn't open the download file."
msgstr ""
-#: doc/classes/HTTPRequest.xml:179
+#: doc/classes/HTTPRequest.xml:188
msgid "HTTPRequest couldn't write to the download file."
msgstr ""
-#: doc/classes/HTTPRequest.xml:182
+#: doc/classes/HTTPRequest.xml:191
msgid "Request reached its maximum redirect limit, see [member max_redirects]."
msgstr ""
@@ -24439,42 +24970,46 @@ msgid "Loads an image from the binary contents of a PNG file."
msgstr ""
#: doc/classes/Image.xml:373
+msgid "Loads an image from the binary contents of a TGA file."
+msgstr ""
+
+#: doc/classes/Image.xml:382
msgid "Loads an image from the binary contents of a WebP file."
msgstr ""
-#: doc/classes/Image.xml:380
+#: doc/classes/Image.xml:389
msgid ""
"Converts the image's data to represent coordinates on a 3D plane. This is "
"used when the image represents a normalmap. A normalmap can add lots of "
"detail to a 3D surface without increasing the polygon count."
msgstr ""
-#: doc/classes/Image.xml:387
+#: doc/classes/Image.xml:396
msgid ""
"Multiplies color values with alpha values. Resulting color values for a "
"pixel are [code](color * alpha)/256[/code]."
msgstr ""
-#: doc/classes/Image.xml:400
+#: doc/classes/Image.xml:409
msgid ""
"Resizes the image to the given [code]width[/code] and [code]height[/code]. "
"New pixels are calculated using [code]interpolation[/code]. See "
"[code]interpolation[/code] constants."
msgstr ""
-#: doc/classes/Image.xml:409
+#: doc/classes/Image.xml:418
msgid ""
"Resizes the image to the nearest power of 2 for the width and height. If "
"[code]square[/code] is [code]true[/code] then set width and height to be the "
"same."
msgstr ""
-#: doc/classes/Image.xml:416
+#: doc/classes/Image.xml:425
msgid ""
"Converts a standard RGBE (Red Green Blue Exponent) image to an sRGB image."
msgstr ""
-#: doc/classes/Image.xml:427
+#: doc/classes/Image.xml:436
msgid ""
"Saves the image as an EXR file to [code]path[/code]. If [code]grayscale[/"
"code] is [code]true[/code] and the image has only one channel, it will be "
@@ -24483,11 +25018,11 @@ msgid ""
"TinyEXR module."
msgstr ""
-#: doc/classes/Image.xml:436
+#: doc/classes/Image.xml:445
msgid "Saves the image as a PNG file to [code]path[/code]."
msgstr ""
-#: doc/classes/Image.xml:455
+#: doc/classes/Image.xml:464
msgid ""
"Sets the [Color] of the pixel at [code](x, y)[/code]. Example:\n"
"[codeblock]\n"
@@ -24497,7 +25032,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Image.xml:471
+#: doc/classes/Image.xml:480
msgid ""
"Sets the [Color] of the pixel at [code](dst.x, dst.y)[/code]. Note that the "
"[code]dst[/code] values must be integers. Example:\n"
@@ -24508,51 +25043,51 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Image.xml:483
+#: doc/classes/Image.xml:492
msgid "Shrinks the image by a factor of 2."
msgstr ""
-#: doc/classes/Image.xml:490
+#: doc/classes/Image.xml:499
msgid "Converts the raw data from the sRGB colorspace to a linear scale."
msgstr ""
-#: doc/classes/Image.xml:496
+#: doc/classes/Image.xml:505
msgid ""
"Holds all of the image's color data in a given format. See [enum Format] "
"constants."
msgstr ""
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:510
msgid "The maximal width allowed for [Image] resources."
msgstr ""
-#: doc/classes/Image.xml:504
+#: doc/classes/Image.xml:513
msgid "The maximal height allowed for [Image] resources."
msgstr ""
-#: doc/classes/Image.xml:507
+#: doc/classes/Image.xml:516
msgid "Texture format with a single 8-bit depth representing luminance."
msgstr ""
-#: doc/classes/Image.xml:510
+#: doc/classes/Image.xml:519
msgid ""
"OpenGL texture format with two values, luminance and alpha each stored with "
"8 bits."
msgstr ""
-#: doc/classes/Image.xml:513
+#: doc/classes/Image.xml:522
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
"bitdepth of 8."
msgstr ""
-#: doc/classes/Image.xml:516
+#: doc/classes/Image.xml:525
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
-#: doc/classes/Image.xml:519
+#: doc/classes/Image.xml:528
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -24560,7 +25095,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:523
+#: doc/classes/Image.xml:532
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -24568,67 +25103,67 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:536
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
-#: doc/classes/Image.xml:532
+#: doc/classes/Image.xml:541
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
-#: doc/classes/Image.xml:535
+#: doc/classes/Image.xml:544
msgid ""
"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
"each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:538
+#: doc/classes/Image.xml:547
msgid ""
"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
"components, each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:541
+#: doc/classes/Image.xml:550
msgid ""
"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
"components, each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:544
+#: doc/classes/Image.xml:553
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 16-"
"bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:556
msgid ""
"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
"each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:550
+#: doc/classes/Image.xml:559
msgid ""
"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
"components, each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:553
+#: doc/classes/Image.xml:562
msgid ""
"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
"components, each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:556
+#: doc/classes/Image.xml:565
msgid ""
"A special OpenGL texture format where the three color components have 9 bits "
"of precision and all three share a single 5-bit exponent."
msgstr ""
-#: doc/classes/Image.xml:559
+#: doc/classes/Image.xml:568
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format that uses Block Compression 1, and is the smallest variation "
@@ -24638,7 +25173,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:563
+#: doc/classes/Image.xml:572
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format that uses Block Compression 2, and color data is interpreted "
@@ -24648,7 +25183,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:567
+#: doc/classes/Image.xml:576
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format also known as Block Compression 3 or BC3 that contains 64 "
@@ -24659,7 +25194,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:571
+#: doc/classes/Image.xml:580
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -24667,7 +25202,7 @@ msgid ""
"DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:574
+#: doc/classes/Image.xml:583
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -24675,7 +25210,7 @@ msgid ""
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:577
+#: doc/classes/Image.xml:586
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -24684,21 +25219,21 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:581
+#: doc/classes/Image.xml:590
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with signed floating-point "
"RGB components."
msgstr ""
-#: doc/classes/Image.xml:584
+#: doc/classes/Image.xml:593
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned floating-point "
"RGB components."
msgstr ""
-#: doc/classes/Image.xml:587
+#: doc/classes/Image.xml:596
msgid ""
"Texture format used on PowerVR-supported mobile platforms, uses 2-bit color "
"depth with no alpha. More information can be found [url=https://en.wikipedia."
@@ -24707,25 +25242,25 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:600
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:603
msgid ""
"Similar to [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with 4-"
"bit color depth and no alpha."
msgstr ""
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:606
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:609
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -24733,7 +25268,7 @@ msgid ""
"standard. This format cannot store an alpha channel."
msgstr ""
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:612
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24741,7 +25276,7 @@ msgid ""
"unsigned data."
msgstr ""
-#: doc/classes/Image.xml:606
+#: doc/classes/Image.xml:615
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24749,7 +25284,7 @@ msgid ""
"channel of signed data."
msgstr ""
-#: doc/classes/Image.xml:609
+#: doc/classes/Image.xml:618
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24757,7 +25292,7 @@ msgid ""
"of unsigned data."
msgstr ""
-#: doc/classes/Image.xml:612
+#: doc/classes/Image.xml:621
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24765,7 +25300,7 @@ msgid ""
"channels of signed data."
msgstr ""
-#: doc/classes/Image.xml:615
+#: doc/classes/Image.xml:624
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24775,7 +25310,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:619
+#: doc/classes/Image.xml:628
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24785,7 +25320,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:623
+#: doc/classes/Image.xml:632
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24796,31 +25331,31 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:631
+#: doc/classes/Image.xml:640
msgid "Represents the size of the [enum Format] enum."
msgstr ""
-#: doc/classes/Image.xml:634
+#: doc/classes/Image.xml:643
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
-#: doc/classes/Image.xml:637
+#: doc/classes/Image.xml:646
msgid ""
"Performs bilinear interpolation. If the image is resized, it will be blurry. "
"This mode is faster than [constant INTERPOLATE_CUBIC], but it results in "
"lower quality."
msgstr ""
-#: doc/classes/Image.xml:640
+#: doc/classes/Image.xml:649
msgid ""
"Performs cubic interpolation. If the image is resized, it will be blurry. "
"This mode often gives better results compared to [constant "
"INTERPOLATE_BILINEAR], at the cost of being slower."
msgstr ""
-#: doc/classes/Image.xml:643
+#: doc/classes/Image.xml:652
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -24835,55 +25370,55 @@ msgid ""
"a new set will be generated for the resulting image."
msgstr ""
-#: doc/classes/Image.xml:650
+#: doc/classes/Image.xml:659
msgid ""
"Performs Lanczos interpolation. This is the slowest image resizing mode, but "
"it typically gives the best results, especially when downscalng images."
msgstr ""
-#: doc/classes/Image.xml:653
+#: doc/classes/Image.xml:662
msgid "Image does not have alpha."
msgstr ""
-#: doc/classes/Image.xml:656
+#: doc/classes/Image.xml:665
msgid "Image stores alpha in a single bit."
msgstr ""
-#: doc/classes/Image.xml:659
+#: doc/classes/Image.xml:668
msgid "Image uses alpha."
msgstr ""
-#: doc/classes/Image.xml:662
+#: doc/classes/Image.xml:671
msgid "Use S3TC compression."
msgstr ""
-#: doc/classes/Image.xml:665
+#: doc/classes/Image.xml:674
msgid "Use PVRTC2 compression."
msgstr ""
-#: doc/classes/Image.xml:668
+#: doc/classes/Image.xml:677
msgid "Use PVRTC4 compression."
msgstr ""
-#: doc/classes/Image.xml:671
+#: doc/classes/Image.xml:680
msgid "Use ETC compression."
msgstr ""
-#: doc/classes/Image.xml:674
+#: doc/classes/Image.xml:683
msgid "Use ETC2 compression."
msgstr ""
-#: doc/classes/Image.xml:689
+#: doc/classes/Image.xml:698
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
-#: doc/classes/Image.xml:692
+#: doc/classes/Image.xml:701
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
-#: doc/classes/Image.xml:695
+#: doc/classes/Image.xml:704
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -25702,7 +26237,7 @@ msgid "Contains mouse click information. See [method Node._input]."
msgstr ""
#: doc/classes/InputEventMouseButton.xml:10
-#: doc/classes/InputEventMouseMotion.xml:10
+#: doc/classes/InputEventMouseMotion.xml:11
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/inputs/"
"mouse_and_input_coordinates.html"
@@ -25739,29 +26274,36 @@ msgstr ""
#: doc/classes/InputEventMouseMotion.xml:7
msgid ""
"Contains mouse and pen motion information. Supports relative, absolute "
-"positions and speed. See [method Node._input]."
+"positions and speed. See [method Node._input].\n"
+"[b]Note:[/b] By default, this event is only emitted once per frame rendered "
+"at most. If you need more precise input reporting, call [method Input."
+"set_use_accumulated_input] with [code]false[/code] to make events emitted as "
+"often as possible. If you use InputEventMouseMotion to draw lines, consider "
+"implementing [url=https://en.wikipedia.org/wiki/Bresenham"
+"%27s_line_algorithm]Bresenham's line algorithm[/url] as well to avoid "
+"visible gaps in lines if the user is moving the mouse quickly."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:16
+#: doc/classes/InputEventMouseMotion.xml:17
msgid ""
"Represents the pressure the user puts on the pen. Ranges from [code]0.0[/"
"code] to [code]1.0[/code]."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:19
+#: doc/classes/InputEventMouseMotion.xml:20
msgid ""
"The mouse position relative to the previous position (position at the last "
-"frame). \n"
+"frame).\n"
"[b]Note:[/b] Since [InputEventMouseMotion] is only emitted when the mouse "
"moves, the last event won't have a relative position of [code]Vector2(0, 0)[/"
"code] when the user stops moving the mouse."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:23
+#: doc/classes/InputEventMouseMotion.xml:24
msgid "The mouse speed in pixels per second."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:26
+#: doc/classes/InputEventMouseMotion.xml:27
msgid ""
"Represents the angles of tilt of the pen. Positive X-coordinate value "
"indicates a tilt to the right. Positive Y-coordinate value indicates a tilt "
@@ -26651,14 +27193,17 @@ msgstr ""
#: doc/classes/JSON.xml:18
msgid ""
-"Parses a JSON encoded string and returns a [JSONParseResult] containing the "
+"Parses a JSON-encoded string and returns a [JSONParseResult] containing the "
"result."
msgstr ""
#: doc/classes/JSON.xml:31
msgid ""
"Converts a [Variant] var to JSON text and returns the result. Useful for "
-"serializing data to store or send over the network."
+"serializing data to store or send over the network.\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, converting a Variant to JSON text "
+"will convert all numerical values to [float] types."
msgstr ""
#: doc/classes/JSONParseResult.xml:4
@@ -26681,14 +27226,14 @@ msgstr ""
#: doc/classes/JSONParseResult.xml:18
msgid ""
-"The line number where the error occurred if JSON source was not successfully "
-"parsed."
+"The line number where the error occurred if the JSON source was not "
+"successfully parsed."
msgstr ""
#: doc/classes/JSONParseResult.xml:21
msgid ""
-"The error message if JSON source was not successfully parsed. See the [enum "
-"Error] constants."
+"The error message if the JSON source was not successfully parsed. See the "
+"[enum Error] constants."
msgstr ""
#: doc/classes/JSONParseResult.xml:24
@@ -26696,11 +27241,11 @@ msgid ""
"A [Variant] containing the parsed JSON. Use [method @GDScript.typeof] or the "
"[code]is[/code] keyword to check if it is what you expect. For example, if "
"the JSON source starts with curly braces ([code]{}[/code]), a [Dictionary] "
-"will be returned. If the JSON source starts with braces ([code][][/code]), "
+"will be returned. If the JSON source starts with brackets ([code][][/code]), "
"an [Array] will be returned.\n"
"[b]Note:[/b] The JSON specification does not define integer or float types, "
-"but only a number type. Therefore, parsing a JSON text will convert all "
-"numerical values to float types.\n"
+"but only a [i]number[/i] type. Therefore, parsing a JSON text will convert "
+"all numerical values to [float] types.\n"
"[b]Note:[/b] JSON objects do not preserve key order like Godot dictionaries, "
"thus, you should not rely on keys being in a certain order if a dictionary "
"is constructed from JSON. In contrast, JSON arrays retain the order of their "
@@ -26710,7 +27255,7 @@ msgid ""
"if typeof(p.result) == TYPE_ARRAY:\n"
" print(p.result[0]) # Prints \"hello\"\n"
"else:\n"
-" print(\"unexpected results\")\n"
+" push_error(\"Unexpected results.\")\n"
"[/codeblock]"
msgstr ""
@@ -26826,7 +27371,7 @@ msgid ""
"simulation will run at an incorrect speed.\n"
"[code]linear_velocity[/code] is the velocity vector in pixels per second. "
"Unlike in [method move_and_collide], you should [i]not[/i] multiply it by "
-"[code]delta[/code] — the physics engine handles applying the velocity. \n"
+"[code]delta[/code] — the physics engine handles applying the velocity.\n"
"[code]up_direction[/code] is the up direction, used to determine what is a "
"wall and what is a floor or a ceiling. If set to the default value of "
"[code]Vector2(0, 0)[/code], everything is considered a wall. This is useful "
@@ -26942,7 +27487,7 @@ msgid ""
"[code]linear_velocity[/code] is the velocity vector (typically meters per "
"second). Unlike in [method move_and_collide], you should [i]not[/i] multiply "
"it by [code]delta[/code] — the physics engine handles applying the "
-"velocity. \n"
+"velocity.\n"
"[code]up_direction[/code] is the up direction, used to determine what is a "
"wall and what is a floor or a ceiling. If set to the default value of "
"[code]Vector3(0, 0, 0)[/code], everything is considered a wall.\n"
@@ -27671,17 +28216,6 @@ msgid ""
"[b]Note:[/b] Hiding a light does [i]not[/i] affect baking."
msgstr ""
-#: doc/classes/Light3D.xml:152
-msgid "Only indirect lighting will be baked (default)."
-msgstr ""
-
-#: doc/classes/Light3D.xml:155
-msgid ""
-"Both direct and indirect light will be baked.\n"
-"[b]Note:[/b] You should hide the light if you don't want it to appear twice "
-"(dynamic and baked)."
-msgstr ""
-
#: doc/classes/LightOccluder2D.xml:4
msgid "Occludes light cast by a Light2D, casting shadows."
msgstr ""
@@ -27960,136 +28494,142 @@ msgstr ""
msgid "Text alignment as defined in the [enum Align] enum."
msgstr ""
-#: doc/classes/LineEdit.xml:120 doc/classes/TextEdit.xml:406
+#: doc/classes/LineEdit.xml:120 doc/classes/TextEdit.xml:358
msgid "If [code]true[/code], the caret (visual cursor) blinks."
msgstr ""
-#: doc/classes/LineEdit.xml:123 doc/classes/TextEdit.xml:409
+#: doc/classes/LineEdit.xml:123 doc/classes/TextEdit.xml:361
msgid "Duration (in seconds) of a caret's blinking cycle."
msgstr ""
-#: doc/classes/LineEdit.xml:126
+#: doc/classes/LineEdit.xml:128
msgid ""
"The cursor's position inside the [LineEdit]. When set, the text may scroll "
"to accommodate it."
msgstr ""
-#: doc/classes/LineEdit.xml:129
+#: doc/classes/LineEdit.xml:131
msgid ""
"If [code]true[/code], the [LineEdit] will show a clear button if [code]text[/"
"code] is not empty, which can be used to clear the text quickly."
msgstr ""
-#: doc/classes/LineEdit.xml:132
+#: doc/classes/LineEdit.xml:134
msgid "If [code]true[/code], the context menu will appear when right-clicked."
msgstr ""
-#: doc/classes/LineEdit.xml:135
+#: doc/classes/LineEdit.xml:137
msgid ""
"If [code]false[/code], existing text cannot be modified and new text cannot "
"be added."
msgstr ""
-#: doc/classes/LineEdit.xml:138
+#: doc/classes/LineEdit.xml:140
msgid ""
"If [code]true[/code], the [LineEdit] width will increase to stay longer than "
"the [member text]. It will [b]not[/b] compress if the [member text] is "
"shortened."
msgstr ""
-#: doc/classes/LineEdit.xml:142
+#: doc/classes/LineEdit.xml:144
msgid ""
"Maximum amount of characters that can be entered inside the [LineEdit]. If "
"[code]0[/code], there is no limit."
msgstr ""
-#: doc/classes/LineEdit.xml:146
+#: doc/classes/LineEdit.xml:148
msgid ""
"Opacity of the [member placeholder_text]. From [code]0[/code] to [code]1[/"
"code]."
msgstr ""
-#: doc/classes/LineEdit.xml:149
+#: doc/classes/LineEdit.xml:151
msgid ""
"Text shown when the [LineEdit] is empty. It is [b]not[/b] the [LineEdit]'s "
"default value (see [member text])."
msgstr ""
-#: doc/classes/LineEdit.xml:152
+#: doc/classes/LineEdit.xml:154
msgid ""
"Sets the icon that will appear in the right end of the [LineEdit] if there's "
"no [member text], or always, if [member clear_button_enabled] is set to "
"[code]false[/code]."
msgstr ""
-#: doc/classes/LineEdit.xml:155
+#: doc/classes/LineEdit.xml:157
msgid ""
"If [code]true[/code], every character is replaced with the secret character "
"(see [member secret_character])."
msgstr ""
-#: doc/classes/LineEdit.xml:158
+#: doc/classes/LineEdit.xml:160
msgid ""
"The character to use to mask secret input (defaults to \"*\"). Only a single "
"character can be used as the secret character."
msgstr ""
-#: doc/classes/LineEdit.xml:161
+#: doc/classes/LineEdit.xml:163
msgid ""
"If [code]false[/code], it's impossible to select the text using mouse nor "
"keyboard."
msgstr ""
-#: doc/classes/LineEdit.xml:164
+#: doc/classes/LineEdit.xml:166
msgid "If [code]false[/code], using shortcuts will be disabled."
msgstr ""
-#: doc/classes/LineEdit.xml:167
+#: doc/classes/LineEdit.xml:169
msgid ""
"String value of the [LineEdit].\n"
"[b]Note:[/b] Changing text using this property won't emit the [signal "
"text_changed] signal."
msgstr ""
-#: doc/classes/LineEdit.xml:174
+#: doc/classes/LineEdit.xml:173 doc/classes/TextEdit.xml:434
+msgid ""
+"If [code]true[/code], the native virtual keyboard is shown when focused on "
+"platforms that support it."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:179
msgid ""
"Emitted when trying to append text that would overflow the [member "
"max_length]."
msgstr ""
-#: doc/classes/LineEdit.xml:181 doc/classes/TextEdit.xml:525
+#: doc/classes/LineEdit.xml:186 doc/classes/TextEdit.xml:490
msgid "Emitted when the text changes."
msgstr ""
-#: doc/classes/LineEdit.xml:188
+#: doc/classes/LineEdit.xml:193
msgid "Emitted when the user presses [constant KEY_ENTER] on the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:194
+#: doc/classes/LineEdit.xml:199
msgid "Aligns the text on the left-hand side of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:197
+#: doc/classes/LineEdit.xml:202
msgid "Centers the text in the middle of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:200
+#: doc/classes/LineEdit.xml:205
msgid "Aligns the text on the right-hand side of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:203
+#: doc/classes/LineEdit.xml:208
msgid "Stretches whitespaces to fit the [LineEdit]'s width."
msgstr ""
-#: doc/classes/LineEdit.xml:206 doc/classes/TextEdit.xml:540
+#: doc/classes/LineEdit.xml:211 doc/classes/TextEdit.xml:505
msgid "Cuts (copies and clears) the selected text."
msgstr ""
-#: doc/classes/LineEdit.xml:209 doc/classes/TextEdit.xml:543
+#: doc/classes/LineEdit.xml:214 doc/classes/TextEdit.xml:508
msgid "Copies the selected text."
msgstr ""
-#: doc/classes/LineEdit.xml:212
+#: doc/classes/LineEdit.xml:217
msgid ""
"Pastes the clipboard text over the selected text (or at the cursor's "
"position).\n"
@@ -28097,80 +28637,80 @@ msgid ""
"clipboard via [method String.strip_escapes]."
msgstr ""
-#: doc/classes/LineEdit.xml:216
+#: doc/classes/LineEdit.xml:221
msgid "Erases the whole [LineEdit] text."
msgstr ""
-#: doc/classes/LineEdit.xml:219
+#: doc/classes/LineEdit.xml:224
msgid "Selects the whole [LineEdit] text."
msgstr ""
-#: doc/classes/LineEdit.xml:222 doc/classes/TextEdit.xml:555
+#: doc/classes/LineEdit.xml:227 doc/classes/TextEdit.xml:520
msgid "Undoes the previous action."
msgstr ""
-#: doc/classes/LineEdit.xml:225
+#: doc/classes/LineEdit.xml:230
msgid "Reverse the last undo action."
msgstr ""
-#: doc/classes/LineEdit.xml:228 doc/classes/TextEdit.xml:561
+#: doc/classes/LineEdit.xml:233 doc/classes/TextEdit.xml:526
msgid "Represents the size of the [enum MenuItems] enum."
msgstr ""
-#: doc/classes/LineEdit.xml:233
+#: doc/classes/LineEdit.xml:238
msgid "Texture for the clear button. See [member clear_button_enabled]."
msgstr ""
-#: doc/classes/LineEdit.xml:236
+#: doc/classes/LineEdit.xml:241
msgid "Color used as default tint for the clear button."
msgstr ""
-#: doc/classes/LineEdit.xml:239
+#: doc/classes/LineEdit.xml:244
msgid "Color used for the clear button when it's pressed."
msgstr ""
-#: doc/classes/LineEdit.xml:242
+#: doc/classes/LineEdit.xml:247
msgid "Color of the [LineEdit]'s visual cursor (caret)."
msgstr ""
-#: doc/classes/LineEdit.xml:245
+#: doc/classes/LineEdit.xml:250
msgid "Background used when [LineEdit] has GUI focus."
msgstr ""
-#: doc/classes/LineEdit.xml:248
+#: doc/classes/LineEdit.xml:253
msgid "Font used for the text."
msgstr ""
-#: doc/classes/LineEdit.xml:251
+#: doc/classes/LineEdit.xml:256
msgid "Default font color."
msgstr ""
-#: doc/classes/LineEdit.xml:254
+#: doc/classes/LineEdit.xml:259
msgid "Font color for selected text (inside the selection rectangle)."
msgstr ""
-#: doc/classes/LineEdit.xml:257
+#: doc/classes/LineEdit.xml:262
msgid "Font color when editing is disabled."
msgstr ""
-#: doc/classes/LineEdit.xml:260
+#: doc/classes/LineEdit.xml:265
msgid ""
"Minimum horizontal space for the text (not counting the clear button and "
"content margins). This value is measured in count of space characters (i.e. "
"this amount of space characters can be displayed without scrolling)."
msgstr ""
-#: doc/classes/LineEdit.xml:263
+#: doc/classes/LineEdit.xml:268
msgid "Default background for the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:266
+#: doc/classes/LineEdit.xml:271
msgid ""
"Background used when [LineEdit] is in read-only mode ([member editable] is "
"set to [code]false[/code])."
msgstr ""
-#: doc/classes/LineEdit.xml:269
+#: doc/classes/LineEdit.xml:274
msgid "Color of the selection rectangle."
msgstr ""
@@ -28388,14 +28928,14 @@ msgstr ""
msgid "Emitted when a user responds to a permission request."
msgstr ""
-#: doc/classes/MainLoop.xml:127 doc/classes/Node.xml:948
+#: doc/classes/MainLoop.xml:127 doc/classes/Node.xml:946
msgid ""
"Notification received from the OS when the application is exceeding its "
"allocated memory.\n"
"Specific to the iOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:131 doc/classes/Node.xml:952
+#: doc/classes/MainLoop.xml:131 doc/classes/Node.xml:950
msgid ""
"Notification received when translations may have changed. Can be triggered "
"by the user changing the locale. Can be used to respond to language changes, "
@@ -28403,39 +28943,55 @@ msgid ""
"the built-in translation support, like [method Object.tr]."
msgstr ""
-#: doc/classes/MainLoop.xml:134 doc/classes/Node.xml:955
+#: doc/classes/MainLoop.xml:134 doc/classes/Node.xml:953
msgid ""
"Notification received from the OS when a request for \"About\" information "
"is sent.\n"
"Specific to the macOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:138 doc/classes/Node.xml:959
+#: doc/classes/MainLoop.xml:138 doc/classes/Node.xml:957
msgid ""
"Notification received from Godot's crash handler when the engine is about to "
"crash.\n"
"Implemented on desktop platforms if the crash handler is enabled."
msgstr ""
-#: doc/classes/MainLoop.xml:142 doc/classes/Node.xml:963
+#: doc/classes/MainLoop.xml:142 doc/classes/Node.xml:961
msgid ""
"Notification received from the OS when an update of the Input Method Engine "
"occurs (e.g. change of IME cursor position or composition string).\n"
"Specific to the macOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:146 doc/classes/Node.xml:967
+#: doc/classes/MainLoop.xml:146 doc/classes/Node.xml:965
msgid ""
-"Notification received from the OS when the app is resumed.\n"
+"Notification received from the OS when the application is resumed.\n"
"Specific to the Android platform."
msgstr ""
-#: doc/classes/MainLoop.xml:150 doc/classes/Node.xml:971
+#: doc/classes/MainLoop.xml:150 doc/classes/Node.xml:969
msgid ""
-"Notification received from the OS when the app is paused.\n"
+"Notification received from the OS when the application is paused.\n"
"Specific to the Android platform."
msgstr ""
+#: doc/classes/MainLoop.xml:154 doc/classes/Node.xml:973
+msgid ""
+"Notification received from the OS when the application is focused, i.e. when "
+"changing the focus from the OS desktop or a thirdparty application to any "
+"open window of the Godot instance.\n"
+"Implemented on desktop platforms."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:158 doc/classes/Node.xml:977
+msgid ""
+"Notification received from the OS when the application is defocused, i.e. "
+"when changing the focus from any open window of the Godot instance to the OS "
+"desktop or a thirdparty application.\n"
+"Implemented on desktop platforms."
+msgstr ""
+
#: doc/classes/MarginContainer.xml:4
msgid "Simple margin container."
msgstr ""
@@ -28743,11 +29299,11 @@ msgstr ""
msgid "Render array as triangle strips."
msgstr ""
-#: doc/classes/Mesh.xml:126 doc/classes/RenderingServer.xml:3189
+#: doc/classes/Mesh.xml:126 doc/classes/RenderingServer.xml:3185
msgid "Blend shapes are normalized."
msgstr ""
-#: doc/classes/Mesh.xml:129 doc/classes/RenderingServer.xml:3192
+#: doc/classes/Mesh.xml:129 doc/classes/RenderingServer.xml:3188
msgid "Blend shapes are relative to base weight."
msgstr ""
@@ -28789,37 +29345,37 @@ msgstr ""
msgid "Mesh array uses indices."
msgstr ""
-#: doc/classes/Mesh.xml:159 doc/classes/RenderingServer.xml:3145
+#: doc/classes/Mesh.xml:159 doc/classes/RenderingServer.xml:3141
msgid "Flag used to mark a compressed (half float) normal array."
msgstr ""
-#: doc/classes/Mesh.xml:162 doc/classes/RenderingServer.xml:3148
+#: doc/classes/Mesh.xml:162 doc/classes/RenderingServer.xml:3144
msgid "Flag used to mark a compressed (half float) tangent array."
msgstr ""
-#: doc/classes/Mesh.xml:165 doc/classes/RenderingServer.xml:3151
+#: doc/classes/Mesh.xml:165 doc/classes/RenderingServer.xml:3147
msgid "Flag used to mark a compressed (half float) color array."
msgstr ""
-#: doc/classes/Mesh.xml:168 doc/classes/RenderingServer.xml:3154
+#: doc/classes/Mesh.xml:168 doc/classes/RenderingServer.xml:3150
msgid "Flag used to mark a compressed (half float) UV coordinates array."
msgstr ""
-#: doc/classes/Mesh.xml:171 doc/classes/RenderingServer.xml:3157
+#: doc/classes/Mesh.xml:171 doc/classes/RenderingServer.xml:3153
msgid ""
"Flag used to mark a compressed (half float) UV coordinates array for the "
"second UV coordinates."
msgstr ""
-#: doc/classes/Mesh.xml:174 doc/classes/RenderingServer.xml:3160
+#: doc/classes/Mesh.xml:174 doc/classes/RenderingServer.xml:3156
msgid "Flag used to mark a compressed index array."
msgstr ""
-#: doc/classes/Mesh.xml:177 doc/classes/RenderingServer.xml:3166
+#: doc/classes/Mesh.xml:177 doc/classes/RenderingServer.xml:3162
msgid "Flag used to mark that the array contains 2D vertices."
msgstr ""
-#: doc/classes/Mesh.xml:180 doc/classes/RenderingServer.xml:3163
+#: doc/classes/Mesh.xml:180 doc/classes/RenderingServer.xml:3159
msgid ""
"Used to set flags [constant ARRAY_COMPRESS_NORMAL], [constant "
"ARRAY_COMPRESS_TANGENT], [constant ARRAY_COMPRESS_COLOR], [constant "
@@ -30580,7 +31136,10 @@ msgstr ""
msgid ""
"The number of channels to be used by ENet. Channels are used to separate "
"different kinds of data. In reliable or ordered mode, for example, the "
-"packet delivery order is ensured on a per channel basis."
+"packet delivery order is ensured on a per-channel basis. This is done to "
+"combat latency and reduces ordering restrictions on packets. The delivery "
+"status of a packet in one channel won't stall the delivery of other packets "
+"in another channel."
msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:134
@@ -30607,11 +31166,12 @@ msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:144
msgid ""
"Set the default channel to be used to transfer data. By default, this value "
-"is [code]-1[/code] which means that ENet will only use 2 channels, one for "
-"reliable and one for unreliable packets. Channel [code]0[/code] is reserved, "
-"and cannot be used. Setting this member to any value between [code]0[/code] "
-"and [member channel_count] (excluded) will force ENet to use that channel "
-"for sending data."
+"is [code]-1[/code] which means that ENet will only use 2 channels: one for "
+"reliable packets, and one for unreliable packets. The channel [code]0[/code] "
+"is reserved and cannot be used. Setting this member to any value between "
+"[code]0[/code] and [member channel_count] (excluded) will force ENet to use "
+"that channel for sending data. See [member channel_count] for more "
+"information about ENet channels."
msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:148
@@ -31803,57 +32363,63 @@ msgstr ""
#: doc/classes/Node.xml:930
msgid ""
-"Notification received from the OS when the game window is focused.\n"
-"Implemented on all platforms."
+"Notification received from the OS when the node's parent [Window] is "
+"focused. This may be a change of focus between two windows of the same "
+"engine instance, or from the OS desktop or a third-party application to a "
+"window of the game (in which case [constant "
+"NOTIFICATION_APPLICATION_FOCUS_IN] is also emitted)."
msgstr ""
-#: doc/classes/Node.xml:934
+#: doc/classes/Node.xml:933
msgid ""
-"Notification received from the OS when the game window is unfocused.\n"
-"Implemented on all platforms."
+"Notification received from the OS when the node's parent [Window] is "
+"defocused. This may be a change of focus between two windows of the same "
+"engine instance, or from a window of the game to the OS desktop or a third-"
+"party application (in which case [constant "
+"NOTIFICATION_APPLICATION_FOCUS_OUT] is also emitted)."
msgstr ""
-#: doc/classes/Node.xml:938
+#: doc/classes/Node.xml:936
msgid ""
"Notification received from the OS when a close request is sent (e.g. closing "
"the window with a \"Close\" button or [kbd]Alt + F4[/kbd]).\n"
"Implemented on desktop platforms."
msgstr ""
-#: doc/classes/Node.xml:942
+#: doc/classes/Node.xml:940
msgid ""
"Notification received from the OS when a go back request is sent (e.g. "
"pressing the \"Back\" button on Android).\n"
"Specific to the Android platform."
msgstr ""
-#: doc/classes/Node.xml:975
+#: doc/classes/Node.xml:981
msgid ""
"Inherits pause mode from the node's parent. For the root node, it is "
"equivalent to [constant PAUSE_MODE_STOP]. Default."
msgstr ""
-#: doc/classes/Node.xml:978
+#: doc/classes/Node.xml:984
msgid "Stops processing when the [SceneTree] is paused."
msgstr ""
-#: doc/classes/Node.xml:981
+#: doc/classes/Node.xml:987
msgid "Continue to process regardless of the [SceneTree] pause state."
msgstr ""
-#: doc/classes/Node.xml:984
+#: doc/classes/Node.xml:990
msgid "Duplicate the node's signals."
msgstr ""
-#: doc/classes/Node.xml:987
+#: doc/classes/Node.xml:993
msgid "Duplicate the node's groups."
msgstr ""
-#: doc/classes/Node.xml:990
+#: doc/classes/Node.xml:996
msgid "Duplicate the node's scripts."
msgstr ""
-#: doc/classes/Node.xml:993
+#: doc/classes/Node.xml:999
msgid ""
"Duplicate using instancing.\n"
"An instance stays linked to the original so when the original changes, the "
@@ -32077,12 +32643,6 @@ msgid ""
"changes. [Node3D] will not propagate this by default."
msgstr ""
-#: doc/classes/Node3D.xml:104
-msgid ""
-"Returns whether the node is visible, taking into consideration that its "
-"parents visibility."
-msgstr ""
-
#: doc/classes/Node3D.xml:115
msgid ""
"Rotates itself so that the local -Z axis points towards the [code]target[/"
@@ -32252,7 +32812,10 @@ msgid "Local translation of this node."
msgstr ""
#: doc/classes/Node3D.xml:326
-msgid "If [code]true[/code], this node is drawn."
+msgid ""
+"If [code]true[/code], this node is drawn. The node is only visible if all of "
+"its antecedents are visible as well (in other words, [method "
+"is_visible_in_tree] must return [code]true[/code])."
msgstr ""
#: doc/classes/Node3D.xml:332
@@ -32509,10 +33072,20 @@ msgid ""
"the key exists, even if the value is [code]null[/code].\n"
"Objects also receive notifications. Notifications are a simple way to notify "
"the object about different events, so they can all be handled together. See "
-"[method _notification]."
+"[method _notification].\n"
+"[b]Note:[/b] Unlike references to a [Reference], references to an Object "
+"stored in a variable can become invalid without warning. Therefore, it's "
+"recommended to use [Reference] for data classes instead of [Object]."
msgstr ""
-#: doc/classes/Object.xml:30
+#: doc/classes/Object.xml:23 doc/classes/Reference.xml:12
+#: doc/classes/Resource.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/getting_started/workflow/"
+"best_practices/node_alternatives.html"
+msgstr ""
+
+#: doc/classes/Object.xml:32
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method get].\n"
@@ -32520,7 +33093,7 @@ msgid ""
"code] does not exist."
msgstr ""
-#: doc/classes/Object.xml:38
+#: doc/classes/Object.xml:40
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method get_property_list].\n"
@@ -32532,11 +33105,11 @@ msgid ""
"PropertyUsageFlags])."
msgstr ""
-#: doc/classes/Object.xml:47
+#: doc/classes/Object.xml:49
msgid "Called when the object is initialized."
msgstr ""
-#: doc/classes/Object.xml:56
+#: doc/classes/Object.xml:58
msgid ""
"Called whenever the object receives a notification, which is identified in "
"[code]what[/code] by a constant. The base [Object] has two constants "
@@ -32545,7 +33118,7 @@ msgid ""
"notifications which are also received by this method."
msgstr ""
-#: doc/classes/Object.xml:67
+#: doc/classes/Object.xml:69
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method set].\n"
@@ -32553,7 +33126,7 @@ msgid ""
"exists."
msgstr ""
-#: doc/classes/Object.xml:75
+#: doc/classes/Object.xml:77
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method to_string], and thus the object's representation where it is "
@@ -32562,34 +33135,42 @@ msgid ""
"[code]\"[ClassName:RID]\"[/code]."
msgstr ""
-#: doc/classes/Object.xml:87
+#: doc/classes/Object.xml:89
msgid ""
"Adds a user-defined [code]signal[/code]. Arguments are optional, but can be "
"added as an [Array] of dictionaries, each containing [code]name: String[/"
"code] and [code]type: int[/code] (see [enum Variant.Type]) entries."
msgstr ""
-#: doc/classes/Object.xml:96
+#: doc/classes/Object.xml:98
msgid ""
"Calls the [code]method[/code] on the object and returns the result. This "
"method supports a variable number of arguments, so parameters are passed as "
"a comma separated list. Example:\n"
"[codeblock]\n"
"call(\"set\", \"position\", Vector2(42.0, 0.0))\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] In C#, the method name must be specified as snake_case if it is "
+"defined by a built-in Godot node. This doesn't apply to user-defined methods "
+"where you should use the same convention as in the C# source (typically "
+"PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:108
+#: doc/classes/Object.xml:111
msgid ""
"Calls the [code]method[/code] on the object during idle time. This method "
"supports a variable number of arguments, so parameters are passed as a comma "
"separated list. Example:\n"
"[codeblock]\n"
"call_deferred(\"set\", \"position\", Vector2(42.0, 0.0))\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] In C#, the method name must be specified as snake_case if it is "
+"defined by a built-in Godot node. This doesn't apply to user-defined methods "
+"where you should use the same convention as in the C# source (typically "
+"PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:122
+#: doc/classes/Object.xml:126
msgid ""
"Calls the [code]method[/code] on the object and returns the result. "
"Contrarily to [method call], this method does not support a variable number "
@@ -32599,13 +33180,13 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:132
+#: doc/classes/Object.xml:136
msgid ""
"Returns [code]true[/code] if the object can translate strings. See [method "
"set_message_translation] and [method tr]."
msgstr ""
-#: doc/classes/Object.xml:147
+#: doc/classes/Object.xml:151
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32641,7 +33222,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:174
+#: doc/classes/Object.xml:178
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32652,7 +33233,7 @@ msgid ""
"exists."
msgstr ""
-#: doc/classes/Object.xml:185
+#: doc/classes/Object.xml:189
msgid ""
"Emits the given [code]signal[/code]. The signal must exist, so it should be "
"a built-in signal of this class or one of its parent classes, or a user-"
@@ -32664,24 +33245,28 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:196
+#: doc/classes/Object.xml:200
msgid ""
"Deletes the object from memory. Any pre-existing reference to the freed "
"object will become invalid, e.g. [code]is_instance_valid(object)[/code] will "
"return [code]false[/code]."
msgstr ""
-#: doc/classes/Object.xml:205
+#: doc/classes/Object.xml:209
msgid ""
"Returns the [Variant] value of the given [code]property[/code]. If the "
-"[code]property[/code] doesn't exist, this will return [code]null[/code]."
+"[code]property[/code] doesn't exist, this will return [code]null[/code].\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:212
+#: doc/classes/Object.xml:217
msgid "Returns the object's class as a [String]."
msgstr ""
-#: doc/classes/Object.xml:219
+#: doc/classes/Object.xml:224
msgid ""
"Returns an [Array] of dictionaries with information about signals that are "
"connected to the object.\n"
@@ -32692,7 +33277,7 @@ msgid ""
"connected."
msgstr ""
-#: doc/classes/Object.xml:232
+#: doc/classes/Object.xml:237
msgid ""
"Gets the object's property indexed by the given [NodePath]. The node path "
"should be relative to the current object and can use the colon character "
@@ -32700,26 +33285,26 @@ msgid ""
"\"[/code] or [code]\"material:next_pass:blend_mode\"[/code]."
msgstr ""
-#: doc/classes/Object.xml:239
+#: doc/classes/Object.xml:244
msgid ""
"Returns the object's unique instance ID.\n"
"This ID can be saved in [EncodedObjectAsID], and can be used to retrieve the "
"object instance with [method @GDScript.instance_from_id]."
msgstr ""
-#: doc/classes/Object.xml:249
+#: doc/classes/Object.xml:254
msgid "Returns the object's metadata entry for the given [code]name[/code]."
msgstr ""
-#: doc/classes/Object.xml:256
+#: doc/classes/Object.xml:261
msgid "Returns the object's metadata as a [PackedStringArray]."
msgstr ""
-#: doc/classes/Object.xml:263
+#: doc/classes/Object.xml:268
msgid "Returns the object's methods and their signatures as an [Array]."
msgstr ""
-#: doc/classes/Object.xml:270
+#: doc/classes/Object.xml:275
msgid ""
"Returns the object's property list as an [Array] of dictionaries.\n"
"Each property's [Dictionary] contain at least [code]name: String[/code] and "
@@ -32729,54 +33314,54 @@ msgid ""
"PropertyUsageFlags])."
msgstr ""
-#: doc/classes/Object.xml:278
+#: doc/classes/Object.xml:283
msgid ""
"Returns the object's [Script] instance, or [code]null[/code] if none is "
"assigned."
msgstr ""
-#: doc/classes/Object.xml:287
+#: doc/classes/Object.xml:292
msgid "Returns an [Array] of connections for the given [code]signal[/code]."
msgstr ""
-#: doc/classes/Object.xml:294
+#: doc/classes/Object.xml:299
msgid "Returns the list of signals as an [Array] of dictionaries."
msgstr ""
-#: doc/classes/Object.xml:303
+#: doc/classes/Object.xml:308
msgid ""
"Returns [code]true[/code] if a metadata entry is found with the given "
"[code]name[/code]."
msgstr ""
-#: doc/classes/Object.xml:312
+#: doc/classes/Object.xml:317
msgid ""
"Returns [code]true[/code] if the object contains the given [code]method[/"
"code]."
msgstr ""
-#: doc/classes/Object.xml:321
+#: doc/classes/Object.xml:326
msgid "Returns [code]true[/code] if the given [code]signal[/code] exists."
msgstr ""
-#: doc/classes/Object.xml:330
+#: doc/classes/Object.xml:335
msgid ""
"Returns [code]true[/code] if the given user-defined [code]signal[/code] "
"exists. Only signals added using [method add_user_signal] are taken into "
"account."
msgstr ""
-#: doc/classes/Object.xml:337
+#: doc/classes/Object.xml:342
msgid "Returns [code]true[/code] if signal emission blocking is enabled."
msgstr ""
-#: doc/classes/Object.xml:346
+#: doc/classes/Object.xml:351
msgid ""
"Returns [code]true[/code] if the object inherits from the given [code]class[/"
"code]."
msgstr ""
-#: doc/classes/Object.xml:357
+#: doc/classes/Object.xml:362
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32784,13 +33369,13 @@ msgid ""
"code], [code]target[/code], and [code]method[/code]."
msgstr ""
-#: doc/classes/Object.xml:365
+#: doc/classes/Object.xml:370
msgid ""
"Returns [code]true[/code] if the [method Node.queue_free] method was called "
"for the object."
msgstr ""
-#: doc/classes/Object.xml:376
+#: doc/classes/Object.xml:381
msgid ""
"Send a given notification to the object, which will also trigger a call to "
"the [method _notification] method of all classes that the object inherits "
@@ -32802,34 +33387,42 @@ msgid ""
"and then down to its successive inheriting classes."
msgstr ""
-#: doc/classes/Object.xml:384
+#: doc/classes/Object.xml:389
msgid ""
"Notify the editor that the property list has changed, so that editor plugins "
"can take the new values into account. Does nothing on export builds."
msgstr ""
-#: doc/classes/Object.xml:393
+#: doc/classes/Object.xml:398
msgid "Removes a given entry from the object's metadata."
msgstr ""
-#: doc/classes/Object.xml:404
+#: doc/classes/Object.xml:409
msgid ""
"Assigns a new value to the given property. If the [code]property[/code] does "
-"not exist, nothing will happen."
+"not exist, nothing will happen.\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:413
+#: doc/classes/Object.xml:419
msgid "If set to [code]true[/code], signal emission is blocked."
msgstr ""
-#: doc/classes/Object.xml:424
+#: doc/classes/Object.xml:430
msgid ""
"Assigns a new value to the given property, after the current frame's physics "
"step. This is equivalent to calling [method set] via [method call_deferred], "
-"i.e. [code]call_deferred(\"set\", property, value)[/code]."
+"i.e. [code]call_deferred(\"set\", property, value)[/code].\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:435
+#: doc/classes/Object.xml:442
msgid ""
"Assigns a new value to the property identified by the [NodePath]. The node "
"path should be relative to the current object and can use the colon "
@@ -32841,19 +33434,19 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:449
+#: doc/classes/Object.xml:456
msgid ""
"Defines whether the object can translate strings (with calls to [method "
"tr]). Enabled by default."
msgstr ""
-#: doc/classes/Object.xml:460
+#: doc/classes/Object.xml:467
msgid ""
"Adds or changes a given entry in the object's metadata. Metadata are "
"serialized, and can take any [Variant] value."
msgstr ""
-#: doc/classes/Object.xml:469
+#: doc/classes/Object.xml:476
msgid ""
"Assigns a script to the object. Each object can have a single script "
"assigned to it, which are used to extend its functionality.\n"
@@ -32862,7 +33455,7 @@ msgid ""
"_init] method will be called."
msgstr ""
-#: doc/classes/Object.xml:477
+#: doc/classes/Object.xml:484
msgid ""
"Returns a [String] representing the object. If not overridden, defaults to "
"[code]\"[ClassName:RID]\"[/code].\n"
@@ -32870,7 +33463,7 @@ msgid ""
"representation."
msgstr ""
-#: doc/classes/Object.xml:487
+#: doc/classes/Object.xml:494
msgid ""
"Translates a message using translation catalogs configured in the Project "
"Settings.\n"
@@ -32879,35 +33472,35 @@ msgid ""
"set_message_translation]."
msgstr ""
-#: doc/classes/Object.xml:495
+#: doc/classes/Object.xml:502
msgid "Emitted whenever the object's script is changed."
msgstr ""
-#: doc/classes/Object.xml:501
+#: doc/classes/Object.xml:508
msgid "Called right when the object is initialized. Not available in script."
msgstr ""
-#: doc/classes/Object.xml:504
+#: doc/classes/Object.xml:511
msgid "Called before the object is about to be deleted."
msgstr ""
-#: doc/classes/Object.xml:507
+#: doc/classes/Object.xml:514
msgid ""
"Connects a signal in deferred mode. This way, signal emissions are stored in "
"a queue, then set on idle time."
msgstr ""
-#: doc/classes/Object.xml:510
+#: doc/classes/Object.xml:517
msgid "Persisting connections are saved when the object is serialized to file."
msgstr ""
-#: doc/classes/Object.xml:513
+#: doc/classes/Object.xml:520
msgid "One-shot connections disconnect themselves after emission."
msgstr ""
-#: doc/classes/Object.xml:516
+#: doc/classes/Object.xml:523
msgid ""
-"Connect a signal as reference counted. This means that a given signal can be "
+"Connect a signal as reference-counted. This means that a given signal can be "
"connected several times to the same target, and will only be fully "
"disconnected once no references are left."
msgstr ""
@@ -33372,10 +33965,29 @@ msgid "Returns the keycode of the given string (e.g. \"Escape\")."
msgstr ""
#: doc/classes/OS.xml:115
-msgid "Returns the command line arguments passed to the engine."
+msgid ""
+"Returns the command-line arguments passed to the engine.\n"
+"Command-line arguments can be written in any form, including both [code]--"
+"key value[/code] and [code]--key=value[/code] forms so they can be properly "
+"parsed, as long as custom command-line arguments do not conflict with engine "
+"arguments.\n"
+"You can also incorporate environment variables using the [method "
+"get_environment] method.\n"
+"You can set [code]editor/main_run_args[/code] in the Project Settings to "
+"define command-line arguments to be passed by the editor when running the "
+"project.\n"
+"Here's a minimal example on how to parse command-line arguments into a "
+"dictionary using the [code]--key=value[/code] form for arguments:\n"
+"[codeblock]\n"
+"var arguments = {}\n"
+"for argument in OS.get_cmdline_args():\n"
+" if argument.find(\"=\") > -1:\n"
+" var key_value = argument.split(\"=\")\n"
+" arguments[key_value[0].lstrip(\"--\")] = key_value[1]\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/OS.xml:122
+#: doc/classes/OS.xml:133
msgid ""
"Returns an array of MIDI device names.\n"
"The returned array will be empty if the system MIDI driver has not "
@@ -33383,14 +33995,14 @@ msgid ""
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:133
+#: doc/classes/OS.xml:144
msgid ""
"Returns current date as a dictionary of keys: [code]year[/code], "
"[code]month[/code], [code]day[/code], [code]weekday[/code], [code]dst[/code] "
"(Daylight Savings Time)."
msgstr ""
-#: doc/classes/OS.xml:142
+#: doc/classes/OS.xml:153
msgid ""
"Returns current datetime as a dictionary of keys: [code]year[/code], "
"[code]month[/code], [code]day[/code], [code]weekday[/code], [code]dst[/code] "
@@ -33398,7 +34010,7 @@ msgid ""
"[code]second[/code]."
msgstr ""
-#: doc/classes/OS.xml:151
+#: doc/classes/OS.xml:162
msgid ""
"Gets a dictionary of time values corresponding to the given UNIX epoch time "
"(in seconds).\n"
@@ -33407,22 +34019,22 @@ msgid ""
"the epoch."
msgstr ""
-#: doc/classes/OS.xml:161
+#: doc/classes/OS.xml:172
msgid "Returns an environment variable."
msgstr ""
-#: doc/classes/OS.xml:168
+#: doc/classes/OS.xml:179
msgid "Returns the path to the current engine executable."
msgstr ""
-#: doc/classes/OS.xml:175
+#: doc/classes/OS.xml:186
msgid ""
"With this function you can get the list of dangerous permissions that have "
"been granted to the Android application.\n"
"[b]Note:[/b] This method is implemented on Android."
msgstr ""
-#: doc/classes/OS.xml:185
+#: doc/classes/OS.xml:196
msgid ""
"Returns the given keycode as a string (e.g. Return values: [code]\"Escape\"[/"
"code], [code]\"Shift+Escape\"[/code]).\n"
@@ -33430,18 +34042,18 @@ msgid ""
"get_keycode_with_modifiers]."
msgstr ""
-#: doc/classes/OS.xml:193
+#: doc/classes/OS.xml:204
msgid "Returns the host OS locale."
msgstr ""
-#: doc/classes/OS.xml:200
+#: doc/classes/OS.xml:211
msgid ""
"Returns the model name of the current device.\n"
"[b]Note:[/b] This method is implemented on Android and iOS. Returns "
"[code]\"GenericDevice\"[/code] on unsupported platforms."
msgstr ""
-#: doc/classes/OS.xml:208
+#: doc/classes/OS.xml:219
msgid ""
"Returns the name of the host OS. Possible values are: [code]\"Android\"[/"
"code], [code]\"iOS\"[/code], [code]\"HTML5\"[/code], [code]\"OSX\"[/code], "
@@ -33449,81 +34061,81 @@ msgid ""
"[code]\"X11\"[/code]."
msgstr ""
-#: doc/classes/OS.xml:215
+#: doc/classes/OS.xml:226
msgid ""
"Returns the project's process ID.\n"
"[b]Note:[/b] This method is implemented on Android, iOS, Linux, macOS and "
"Windows."
msgstr ""
-#: doc/classes/OS.xml:223
+#: doc/classes/OS.xml:234
msgid "Returns the number of threads available on the host machine."
msgstr ""
-#: doc/classes/OS.xml:230
+#: doc/classes/OS.xml:241
msgid ""
"Returns the amount of time in milliseconds it took for the boot logo to "
"appear."
msgstr ""
-#: doc/classes/OS.xml:237
+#: doc/classes/OS.xml:248
msgid "Returns the maximum amount of static memory used (only works in debug)."
msgstr ""
-#: doc/classes/OS.xml:244
+#: doc/classes/OS.xml:255
msgid "Returns the amount of static memory being used by the program in bytes."
msgstr ""
-#: doc/classes/OS.xml:253
+#: doc/classes/OS.xml:264
msgid ""
"Returns the actual path to commonly used folders across different platforms. "
"Available locations are specified in [enum SystemDir].\n"
"[b]Note:[/b] This method is implemented on Android, Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:261
+#: doc/classes/OS.xml:272
msgid ""
"Returns the total number of available tablet drivers.\n"
"[b]Note:[/b] This method is implemented on Windows."
msgstr ""
-#: doc/classes/OS.xml:271
+#: doc/classes/OS.xml:282
msgid ""
"Returns the tablet driver name for the given index.\n"
"[b]Note:[/b] This method is implemented on Windows."
msgstr ""
-#: doc/classes/OS.xml:279
+#: doc/classes/OS.xml:290
msgid ""
"Returns the amount of time passed in milliseconds since the engine started."
msgstr ""
-#: doc/classes/OS.xml:286
+#: doc/classes/OS.xml:297
msgid ""
"Returns the amount of time passed in microseconds since the engine started."
msgstr ""
-#: doc/classes/OS.xml:295
+#: doc/classes/OS.xml:306
msgid "Returns current time as a dictionary of keys: hour, minute, second."
msgstr ""
-#: doc/classes/OS.xml:302
+#: doc/classes/OS.xml:313
msgid ""
"Returns the current time zone as a dictionary with the keys: bias and name."
msgstr ""
-#: doc/classes/OS.xml:309
+#: doc/classes/OS.xml:320
msgid ""
"Returns a string that is unique to the device.\n"
"[b]Note:[/b] Returns an empty string on HTML5 and UWP, as this method isn't "
"implemented on those platforms yet."
msgstr ""
-#: doc/classes/OS.xml:317
+#: doc/classes/OS.xml:328
msgid "Returns the current UNIX epoch timestamp."
msgstr ""
-#: doc/classes/OS.xml:326
+#: doc/classes/OS.xml:337
msgid ""
"Gets an epoch time value from a dictionary of time values.\n"
"[code]datetime[/code] must be populated with the following keys: [code]year[/"
@@ -33534,7 +34146,7 @@ msgid ""
"ignored."
msgstr ""
-#: doc/classes/OS.xml:335
+#: doc/classes/OS.xml:346
msgid ""
"Returns the absolute directory path where user data is written ([code]user://"
"[/code]).\n"
@@ -33552,11 +34164,11 @@ msgid ""
"[/code]."
msgstr ""
-#: doc/classes/OS.xml:348
+#: doc/classes/OS.xml:359
msgid "Returns [code]true[/code] if an environment variable exists."
msgstr ""
-#: doc/classes/OS.xml:357
+#: doc/classes/OS.xml:368
msgid ""
"Returns [code]true[/code] if the feature for the given feature tag is "
"supported in the currently running instance, depending on platform, build "
@@ -33567,7 +34179,7 @@ msgid ""
"[b]Note:[/b] Tag names are case-sensitive."
msgstr ""
-#: doc/classes/OS.xml:365
+#: doc/classes/OS.xml:376
msgid ""
"Returns [code]true[/code] if the Godot binary used to run the project is a "
"[i]debug[/i] export template, or when running in the editor.\n"
@@ -33578,26 +34190,26 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/OS.xml:376
+#: doc/classes/OS.xml:387
msgid ""
"Returns [code]true[/code] if the input keycode corresponds to a Unicode "
"character."
msgstr ""
-#: doc/classes/OS.xml:383
+#: doc/classes/OS.xml:394
msgid ""
"Returns [code]true[/code] if the engine was executed with [code]-v[/code] "
"(verbose stdout)."
msgstr ""
-#: doc/classes/OS.xml:390
+#: doc/classes/OS.xml:401
msgid ""
"If [code]true[/code], the [code]user://[/code] file system is persistent, so "
"that its state is the same after a player quits and starts the game again. "
"Relevant to the HTML5 platform, where this persistence may be unavailable."
msgstr ""
-#: doc/classes/OS.xml:399
+#: doc/classes/OS.xml:410
msgid ""
"Kill (terminate) the process identified by the given process ID ([code]pid[/"
"code]), e.g. the one returned by [method execute] in non-blocking mode.\n"
@@ -33607,37 +34219,37 @@ msgid ""
"Windows."
msgstr ""
-#: doc/classes/OS.xml:408
+#: doc/classes/OS.xml:419
msgid ""
"Initialises the singleton for the system MIDI driver.\n"
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:418
+#: doc/classes/OS.xml:429
msgid ""
"Shows all resources in the game. Optionally, the list can be written to a "
"file by specifying a file path in [code]tofile[/code]."
msgstr ""
-#: doc/classes/OS.xml:425
+#: doc/classes/OS.xml:436
msgid "Shows the list of loaded textures sorted by size in memory."
msgstr ""
-#: doc/classes/OS.xml:434
+#: doc/classes/OS.xml:445
msgid "Shows the number of resources loaded by the game of the given types."
msgstr ""
-#: doc/classes/OS.xml:443
+#: doc/classes/OS.xml:454
msgid "Shows all resources currently used by the game."
msgstr ""
-#: doc/classes/OS.xml:452
+#: doc/classes/OS.xml:463
msgid ""
"At the moment this function is only used by [code]AudioDriverOpenSL[/code] "
"to request permission for [code]RECORD_AUDIO[/code] on Android."
msgstr ""
-#: doc/classes/OS.xml:459
+#: doc/classes/OS.xml:470
msgid ""
"With this function you can request dangerous permissions since normal "
"permissions are automatically granted at install time in Android "
@@ -33645,15 +34257,15 @@ msgid ""
"[b]Note:[/b] This method is implemented on Android."
msgstr ""
-#: doc/classes/OS.xml:469
+#: doc/classes/OS.xml:480
msgid "Sets the name of the current thread."
msgstr ""
-#: doc/classes/OS.xml:478
+#: doc/classes/OS.xml:489
msgid "Enables backup saves if [code]enabled[/code] is [code]true[/code]."
msgstr ""
-#: doc/classes/OS.xml:487
+#: doc/classes/OS.xml:498
msgid ""
"Requests the OS to open a resource with the most appropriate program. For "
"example:\n"
@@ -33672,7 +34284,7 @@ msgid ""
"and Windows."
msgstr ""
-#: doc/classes/OS.xml:498
+#: doc/classes/OS.xml:509
msgid ""
"The exit code passed to the OS when the main loop exits. By convention, an "
"exit code of [code]0[/code] indicates success whereas a non-zero exit code "
@@ -33682,137 +34294,137 @@ msgid ""
"with an [code]exit_code[/code] argument passed."
msgstr ""
-#: doc/classes/OS.xml:502
+#: doc/classes/OS.xml:513
msgid ""
"If [code]true[/code], the engine optimizes for low processor usage by only "
"refreshing the screen if needed. Can improve battery consumption on mobile."
msgstr ""
-#: doc/classes/OS.xml:505
+#: doc/classes/OS.xml:516
msgid ""
"The amount of sleeping between frames when the low-processor usage mode is "
"enabled (in microseconds). Higher values will result in lower CPU usage."
msgstr ""
-#: doc/classes/OS.xml:508
-msgid "The current tablet drvier in use."
+#: doc/classes/OS.xml:519
+msgid "The current tablet driver in use."
msgstr ""
-#: doc/classes/OS.xml:513
+#: doc/classes/OS.xml:524
msgid ""
"The GLES2 rendering backend. It uses OpenGL ES 2.0 on mobile devices, OpenGL "
"2.1 on desktop platforms and WebGL 1.0 on the web."
msgstr ""
-#: doc/classes/OS.xml:516
+#: doc/classes/OS.xml:527
msgid "The Vulkan rendering backend."
msgstr ""
-#: doc/classes/OS.xml:519
+#: doc/classes/OS.xml:530
msgid "Sunday."
msgstr ""
-#: doc/classes/OS.xml:522
+#: doc/classes/OS.xml:533
msgid "Monday."
msgstr ""
-#: doc/classes/OS.xml:525
+#: doc/classes/OS.xml:536
msgid "Tuesday."
msgstr ""
-#: doc/classes/OS.xml:528
+#: doc/classes/OS.xml:539
msgid "Wednesday."
msgstr ""
-#: doc/classes/OS.xml:531
+#: doc/classes/OS.xml:542
msgid "Thursday."
msgstr ""
-#: doc/classes/OS.xml:534
+#: doc/classes/OS.xml:545
msgid "Friday."
msgstr ""
-#: doc/classes/OS.xml:537
+#: doc/classes/OS.xml:548
msgid "Saturday."
msgstr ""
-#: doc/classes/OS.xml:540
+#: doc/classes/OS.xml:551
msgid "January."
msgstr ""
-#: doc/classes/OS.xml:543
+#: doc/classes/OS.xml:554
msgid "February."
msgstr ""
-#: doc/classes/OS.xml:546
+#: doc/classes/OS.xml:557
msgid "March."
msgstr ""
-#: doc/classes/OS.xml:549
+#: doc/classes/OS.xml:560
msgid "April."
msgstr ""
-#: doc/classes/OS.xml:552
+#: doc/classes/OS.xml:563
msgid "May."
msgstr ""
-#: doc/classes/OS.xml:555
+#: doc/classes/OS.xml:566
msgid "June."
msgstr ""
-#: doc/classes/OS.xml:558
+#: doc/classes/OS.xml:569
msgid "July."
msgstr ""
-#: doc/classes/OS.xml:561
+#: doc/classes/OS.xml:572
msgid "August."
msgstr ""
-#: doc/classes/OS.xml:564
+#: doc/classes/OS.xml:575
msgid "September."
msgstr ""
-#: doc/classes/OS.xml:567
+#: doc/classes/OS.xml:578
msgid "October."
msgstr ""
-#: doc/classes/OS.xml:570
+#: doc/classes/OS.xml:581
msgid "November."
msgstr ""
-#: doc/classes/OS.xml:573
+#: doc/classes/OS.xml:584
msgid "December."
msgstr ""
-#: doc/classes/OS.xml:576
+#: doc/classes/OS.xml:587
msgid "Desktop directory path."
msgstr ""
-#: doc/classes/OS.xml:579
+#: doc/classes/OS.xml:590
msgid "DCIM (Digital Camera Images) directory path."
msgstr ""
-#: doc/classes/OS.xml:582
+#: doc/classes/OS.xml:593
msgid "Documents directory path."
msgstr ""
-#: doc/classes/OS.xml:585
+#: doc/classes/OS.xml:596
msgid "Downloads directory path."
msgstr ""
-#: doc/classes/OS.xml:588
+#: doc/classes/OS.xml:599
msgid "Movies directory path."
msgstr ""
-#: doc/classes/OS.xml:591
+#: doc/classes/OS.xml:602
msgid "Music directory path."
msgstr ""
-#: doc/classes/OS.xml:594
+#: doc/classes/OS.xml:605
msgid "Pictures directory path."
msgstr ""
-#: doc/classes/OS.xml:597
+#: doc/classes/OS.xml:608
msgid "Ringtones directory path."
msgstr ""
@@ -33867,7 +34479,15 @@ msgid ""
"should always be preferred."
msgstr ""
-#: doc/classes/PackedByteArray.xml:85
+#: doc/classes/PackedByteArray.xml:87 doc/classes/PackedColorArray.xml:53
+#: doc/classes/PackedFloat32Array.xml:54 doc/classes/PackedFloat64Array.xml:54
+#: doc/classes/PackedInt32Array.xml:54 doc/classes/PackedInt64Array.xml:54
+#: doc/classes/PackedStringArray.xml:53 doc/classes/PackedVector2Array.xml:53
+#: doc/classes/PackedVector3Array.xml:53
+msgid "Returns [code]true[/code] if the array contains [code]value[/code]."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:94
msgid ""
"Returns a hexadecimal representation of this array as a [String].\n"
"[codeblock]\n"
@@ -33876,39 +34496,48 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/PackedByteArray.xml:100 doc/classes/PackedColorArray.xml:55
-#: doc/classes/PackedFloat32Array.xml:56 doc/classes/PackedFloat64Array.xml:56
-#: doc/classes/PackedStringArray.xml:55 doc/classes/PackedVector2Array.xml:55
-#: doc/classes/PackedVector3Array.xml:55
+#: doc/classes/PackedByteArray.xml:109 doc/classes/PackedColorArray.xml:64
+#: doc/classes/PackedFloat32Array.xml:65 doc/classes/PackedFloat64Array.xml:65
+#: doc/classes/PackedStringArray.xml:64 doc/classes/PackedVector2Array.xml:64
+#: doc/classes/PackedVector3Array.xml:64
msgid ""
"Inserts a new element at a given position in the array. The position must be "
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PackedByteArray.xml:134 doc/classes/PackedColorArray.xml:89
-#: doc/classes/PackedFloat32Array.xml:90 doc/classes/PackedFloat64Array.xml:90
-#: doc/classes/PackedInt32Array.xml:90 doc/classes/PackedInt64Array.xml:90
-#: doc/classes/PackedStringArray.xml:89 doc/classes/PackedVector2Array.xml:89
-#: doc/classes/PackedVector3Array.xml:89
+#: doc/classes/PackedByteArray.xml:143 doc/classes/PackedColorArray.xml:98
+#: doc/classes/PackedFloat32Array.xml:99 doc/classes/PackedFloat64Array.xml:99
+#: doc/classes/PackedInt32Array.xml:99 doc/classes/PackedInt64Array.xml:99
+#: doc/classes/PackedStringArray.xml:98 doc/classes/PackedVector2Array.xml:98
+#: doc/classes/PackedVector3Array.xml:98
msgid ""
"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."
msgstr ""
-#: doc/classes/PackedByteArray.xml:145
+#: doc/classes/PackedByteArray.xml:154
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PackedByteArray.xml:152 doc/classes/PackedColorArray.xml:107
-#: doc/classes/PackedFloat32Array.xml:108
-#: doc/classes/PackedFloat64Array.xml:108 doc/classes/PackedStringArray.xml:107
-#: doc/classes/PackedVector2Array.xml:107
-#: doc/classes/PackedVector3Array.xml:107
+#: doc/classes/PackedByteArray.xml:161 doc/classes/PackedColorArray.xml:116
+#: doc/classes/PackedFloat32Array.xml:117
+#: doc/classes/PackedFloat64Array.xml:117 doc/classes/PackedStringArray.xml:116
+#: doc/classes/PackedVector2Array.xml:116
+#: doc/classes/PackedVector3Array.xml:116
msgid "Returns the size of the array."
msgstr ""
-#: doc/classes/PackedByteArray.xml:163
+#: doc/classes/PackedByteArray.xml:168 doc/classes/PackedColorArray.xml:123
+#: doc/classes/PackedFloat32Array.xml:124
+#: doc/classes/PackedFloat64Array.xml:124 doc/classes/PackedInt32Array.xml:124
+#: doc/classes/PackedInt64Array.xml:124 doc/classes/PackedStringArray.xml:123
+#: doc/classes/PackedVector2Array.xml:123
+#: doc/classes/PackedVector3Array.xml:123
+msgid "Sorts the elements of the array in ascending order."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:179
msgid ""
"Returns the slice of the [PackedByteArray] between indices (inclusive) as a "
"new [PackedByteArray]. Any negative index is considered to be from the end "
@@ -33936,12 +34565,12 @@ msgstr ""
msgid "Appends a [PackedColorArray] at the end of this array."
msgstr ""
-#: doc/classes/PackedColorArray.xml:71 doc/classes/PackedInt32Array.xml:72
-#: doc/classes/PackedInt64Array.xml:72
+#: doc/classes/PackedColorArray.xml:80 doc/classes/PackedInt32Array.xml:81
+#: doc/classes/PackedInt64Array.xml:81
msgid "Appends a value to the array."
msgstr ""
-#: doc/classes/PackedColorArray.xml:100
+#: doc/classes/PackedColorArray.xml:109
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -33971,8 +34600,8 @@ msgstr ""
msgid "Appends a [PackedFloat32Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedFloat32Array.xml:101
-#: doc/classes/PackedFloat64Array.xml:101
+#: doc/classes/PackedFloat32Array.xml:110
+#: doc/classes/PackedFloat64Array.xml:110
msgid "Changes the float at the given index."
msgstr ""
@@ -34025,17 +34654,17 @@ msgstr ""
msgid "Appends a [PackedInt32Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:56 doc/classes/PackedInt64Array.xml:56
+#: doc/classes/PackedInt32Array.xml:65 doc/classes/PackedInt64Array.xml:65
msgid ""
"Inserts a new integer at a given position in the array. The position must be "
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:101 doc/classes/PackedInt64Array.xml:101
+#: doc/classes/PackedInt32Array.xml:110 doc/classes/PackedInt64Array.xml:110
msgid "Changes the integer at the given index."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:108 doc/classes/PackedInt64Array.xml:108
+#: doc/classes/PackedInt32Array.xml:117 doc/classes/PackedInt64Array.xml:117
msgid "Returns the array size."
msgstr ""
@@ -34076,6 +34705,14 @@ msgid ""
"Can be used to save a node to a file. When saving, the node as well as all "
"the node it owns get saved (see [code]owner[/code] property on [Node]).\n"
"[b]Note:[/b] The node doesn't need to own itself.\n"
+"[b]Example of loading a saved scene:[/b]\n"
+"[codeblock]\n"
+"# Use `load()` instead of `preload()` if the path isn't known at compile-"
+"time.\n"
+"var scene = preload(\"res://scene.tscn\").instance()\n"
+"# Add the node as a child of the node the script is attached to.\n"
+"add_child(scene)\n"
+"[/codeblock]\n"
"[b]Example of saving a node with different owners:[/b] The following example "
"creates 3 objects: [code]Node2D[/code] ([code]node[/code]), "
"[code]RigidBody2D[/code] ([code]rigid[/code]) and [code]CollisionObject2D[/"
@@ -34107,29 +34744,29 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/PackedScene.xml:40
+#: doc/classes/PackedScene.xml:47
msgid "Returns [code]true[/code] if the scene file has nodes."
msgstr ""
-#: doc/classes/PackedScene.xml:47
+#: doc/classes/PackedScene.xml:54
msgid ""
"Returns the [code]SceneState[/code] representing the scene file contents."
msgstr ""
-#: doc/classes/PackedScene.xml:56
+#: doc/classes/PackedScene.xml:63
msgid ""
"Instantiates the scene's node hierarchy. Triggers child scene "
"instantiation(s). Triggers a [constant Node.NOTIFICATION_INSTANCED] "
"notification on the root node."
msgstr ""
-#: doc/classes/PackedScene.xml:65
+#: doc/classes/PackedScene.xml:72
msgid ""
"Pack will ignore any sub-nodes not owned by given node. See [member Node."
"owner]."
msgstr ""
-#: doc/classes/PackedScene.xml:71
+#: doc/classes/PackedScene.xml:78
msgid ""
"A dictionary representation of the scene contents.\n"
"Available keys include \"rnames\" and \"variants\" for resources, "
@@ -34138,18 +34775,18 @@ msgid ""
"connections, and \"version\" for the format style of the PackedScene."
msgstr ""
-#: doc/classes/PackedScene.xml:77
+#: doc/classes/PackedScene.xml:84
msgid "If passed to [method instance], blocks edits to the scene state."
msgstr ""
-#: doc/classes/PackedScene.xml:80
+#: doc/classes/PackedScene.xml:87
msgid ""
"If passed to [method instance], provides local scene resources to the local "
"scene.\n"
"[b]Note:[/b] Only available in editor builds."
msgstr ""
-#: doc/classes/PackedScene.xml:84
+#: doc/classes/PackedScene.xml:91
msgid ""
"If passed to [method instance], provides local scene resources to the local "
"scene. Only the main scene should receive the main edit state.\n"
@@ -34177,11 +34814,11 @@ msgstr ""
msgid "Appends a [PackedStringArray] at the end of this array."
msgstr ""
-#: doc/classes/PackedStringArray.xml:71
+#: doc/classes/PackedStringArray.xml:80
msgid "Appends a string element at end of the array."
msgstr ""
-#: doc/classes/PackedStringArray.xml:100
+#: doc/classes/PackedStringArray.xml:109
msgid "Changes the [String] at the given index."
msgstr ""
@@ -34206,11 +34843,11 @@ msgstr ""
msgid "Appends a [PackedVector2Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedVector2Array.xml:71
+#: doc/classes/PackedVector2Array.xml:80
msgid "Inserts a [Vector2] at the end."
msgstr ""
-#: doc/classes/PackedVector2Array.xml:100
+#: doc/classes/PackedVector2Array.xml:109
msgid "Changes the [Vector2] at the given index."
msgstr ""
@@ -34235,11 +34872,11 @@ msgstr ""
msgid "Appends a [PackedVector3Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedVector3Array.xml:71
+#: doc/classes/PackedVector3Array.xml:80
msgid "Inserts a [Vector3] at the end."
msgstr ""
-#: doc/classes/PackedVector3Array.xml:100
+#: doc/classes/PackedVector3Array.xml:109
msgid "Changes the [Vector3] at the given index."
msgstr ""
@@ -35130,13 +35767,55 @@ msgid ""
"as the values displayed in the [b]Monitor[/b] tab in the editor's "
"[b]Debugger[/b] panel. By using the [method get_monitor] method of this "
"class, you can access this data from your code.\n"
+"You can add custom monitors using the [method add_custom_monitor] method. "
+"Custom monitors are available in [b]Monitor[/b] tab in the editor's "
+"[b]Debugger[/b] panel together with built-in monitors.\n"
"[b]Note:[/b] A few of these monitors are only available in debug mode and "
"will always return 0 when used in a release build.\n"
"[b]Note:[/b] Many of these monitors are not updated in real-time, so there "
-"may be a short delay between changes."
+"may be a short delay between changes.\n"
+"[b]Note:[/b] Custom monitors do not support negative values. Negative values "
+"are clamped to 0."
+msgstr ""
+
+#: doc/classes/Performance.xml:26
+msgid ""
+"Adds a custom monitor with name same as id. You can specify the category of "
+"monitor using '/' in id. If there are more than one '/' then default "
+"category is used. Default category is \"Custom\".\n"
+"[codeblock]\n"
+"Performance.add_custom_monitor(\"MyCategory/MyMonitor\", some_callable) # "
+"Adds monitor with name \"MyName\" to category \"MyCategory\"\n"
+"Performance.add_custom_monitor(\"MyMonitor\", some_callable) # Adds monitor "
+"with name \"MyName\" to category \"Custom\"\n"
+"# Note: \"MyCategory/MyMonitor\" and \"MyMonitor\" have same name but "
+"different ids so above code is valid\n"
+"Performance.add_custom_monitor(\"Custom/MyMonitor\", some_callable) # Adds "
+"monitor with name \"MyName\" to category \"Custom\"\n"
+"# Note: \"MyMonitor\" and \"Custom/MyMonitor\" have same name and same "
+"category but different ids so above code is valid\n"
+"Performance.add_custom_monitor(\"MyCategoryOne/MyCategoryTwo/MyMonitor\", "
+"some_callable) # Adds monitor with name \"MyCategoryOne/MyCategoryTwo/"
+"MyMonitor\" to category \"Custom\"\n"
+"[/codeblock]\n"
+"The debugger calls the callable to get the value of custom monitor. The "
+"callable must return a number.\n"
+"Callables are called with arguments supplied in argument array.\n"
+"[b]Note:[/b] It throws an error if given id is already present."
+msgstr ""
+
+#: doc/classes/Performance.xml:46
+msgid ""
+"Returns the value of custom monitor with given id. The callable is called to "
+"get the value of custom monitor.\n"
+"[b]Note:[/b] It throws an error if the given id is absent."
+msgstr ""
+
+#: doc/classes/Performance.xml:54
+msgid "Returns the names of active custom monitors in an array."
msgstr ""
-#: doc/classes/Performance.xml:20
+#: doc/classes/Performance.xml:63
msgid ""
"Returns the value of one of the available monitors. You should provide one "
"of the [enum Monitor] constants as the argument, like this:\n"
@@ -35146,123 +35825,139 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Performance.xml:29
+#: doc/classes/Performance.xml:73
+msgid "Returns the last tick in which custom monitor was added/removed."
+msgstr ""
+
+#: doc/classes/Performance.xml:82
+msgid ""
+"Returns true if custom monitor with the given id is present otherwise "
+"returns false."
+msgstr ""
+
+#: doc/classes/Performance.xml:91
+msgid ""
+"Removes the custom monitor with given id.\n"
+"[b]Note:[/b] It throws an error if the given id is already absent."
+msgstr ""
+
+#: doc/classes/Performance.xml:98
msgid "Number of frames per second."
msgstr ""
-#: doc/classes/Performance.xml:32
+#: doc/classes/Performance.xml:101
msgid "Time it took to complete one frame, in seconds."
msgstr ""
-#: doc/classes/Performance.xml:35
+#: doc/classes/Performance.xml:104
msgid "Time it took to complete one physics frame, in seconds."
msgstr ""
-#: doc/classes/Performance.xml:38
+#: doc/classes/Performance.xml:107
msgid ""
"Static memory currently used, in bytes. Not available in release builds."
msgstr ""
-#: doc/classes/Performance.xml:41
+#: doc/classes/Performance.xml:110
msgid "Available static memory. Not available in release builds."
msgstr ""
-#: doc/classes/Performance.xml:44
+#: doc/classes/Performance.xml:113
msgid ""
"Largest amount of memory the message queue buffer has used, in bytes. The "
"message queue is used for deferred functions calls and notifications."
msgstr ""
-#: doc/classes/Performance.xml:47
+#: doc/classes/Performance.xml:116
msgid "Number of objects currently instanced (including nodes)."
msgstr ""
-#: doc/classes/Performance.xml:50
+#: doc/classes/Performance.xml:119
msgid "Number of resources currently used."
msgstr ""
-#: doc/classes/Performance.xml:53
+#: doc/classes/Performance.xml:122
msgid ""
"Number of nodes currently instanced in the scene tree. This also includes "
"the root node."
msgstr ""
-#: doc/classes/Performance.xml:56
+#: doc/classes/Performance.xml:125
msgid ""
"Number of orphan nodes, i.e. nodes which are not parented to a node of the "
"scene tree."
msgstr ""
-#: doc/classes/Performance.xml:59
+#: doc/classes/Performance.xml:128
msgid "3D objects drawn per frame."
msgstr ""
-#: doc/classes/Performance.xml:62
+#: doc/classes/Performance.xml:131
msgid "Vertices drawn per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:65
+#: doc/classes/Performance.xml:134
msgid "Material changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:68
+#: doc/classes/Performance.xml:137
msgid "Shader changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:71
+#: doc/classes/Performance.xml:140
msgid "Render surface changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:74
+#: doc/classes/Performance.xml:143
msgid "Draw calls per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:77 doc/classes/RenderingServer.xml:3805
+#: doc/classes/Performance.xml:146 doc/classes/RenderingServer.xml:3816
msgid ""
"The amount of video memory used, i.e. texture and vertex memory combined."
msgstr ""
-#: doc/classes/Performance.xml:80 doc/classes/RenderingServer.xml:3808
+#: doc/classes/Performance.xml:149 doc/classes/RenderingServer.xml:3819
msgid "The amount of texture memory used."
msgstr ""
-#: doc/classes/Performance.xml:83 doc/classes/RenderingServer.xml:3811
+#: doc/classes/Performance.xml:152 doc/classes/RenderingServer.xml:3822
msgid "The amount of vertex memory used."
msgstr ""
-#: doc/classes/Performance.xml:86 doc/classes/RenderingServer.xml:3802
+#: doc/classes/Performance.xml:155 doc/classes/RenderingServer.xml:3813
msgid "Unimplemented in the GLES2 rendering backend, always returns 0."
msgstr ""
-#: doc/classes/Performance.xml:89
+#: doc/classes/Performance.xml:158
msgid "Number of active [RigidBody2D] nodes in the game."
msgstr ""
-#: doc/classes/Performance.xml:92
+#: doc/classes/Performance.xml:161
msgid "Number of collision pairs in the 2D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:95
+#: doc/classes/Performance.xml:164
msgid "Number of islands in the 2D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:98
+#: doc/classes/Performance.xml:167
msgid "Number of active [RigidBody3D] and [VehicleBody3D] nodes in the game."
msgstr ""
-#: doc/classes/Performance.xml:101
+#: doc/classes/Performance.xml:170
msgid "Number of collision pairs in the 3D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:104
+#: doc/classes/Performance.xml:173
msgid "Number of islands in the 3D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:107
+#: doc/classes/Performance.xml:176
msgid "Output latency of the [AudioServer]."
msgstr ""
-#: doc/classes/Performance.xml:110
+#: doc/classes/Performance.xml:179
msgid "Represents the size of the [enum Monitor] enum."
msgstr ""
@@ -35286,27 +35981,27 @@ msgstr ""
msgid "Damps the body's rotation if greater than [code]0[/code]."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:70 doc/classes/RigidBody3D.xml:132
+#: doc/classes/PhysicalBone3D.xml:70 doc/classes/RigidBody3D.xml:139
msgid "Lock the body's rotation in the X axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:73 doc/classes/RigidBody3D.xml:135
+#: doc/classes/PhysicalBone3D.xml:73 doc/classes/RigidBody3D.xml:142
msgid "Lock the body's rotation in the Y axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:76 doc/classes/RigidBody3D.xml:138
+#: doc/classes/PhysicalBone3D.xml:76 doc/classes/RigidBody3D.xml:145
msgid "Lock the body's rotation in the Z axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:79 doc/classes/RigidBody3D.xml:141
+#: doc/classes/PhysicalBone3D.xml:79 doc/classes/RigidBody3D.xml:148
msgid "Lock the body's movement in the X axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:82 doc/classes/RigidBody3D.xml:144
+#: doc/classes/PhysicalBone3D.xml:82 doc/classes/RigidBody3D.xml:151
msgid "Lock the body's movement in the Y axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:85 doc/classes/RigidBody3D.xml:147
+#: doc/classes/PhysicalBone3D.xml:85 doc/classes/RigidBody3D.xml:154
msgid "Lock the body's movement in the Z axis."
msgstr ""
@@ -35361,12 +36056,12 @@ msgstr ""
msgid "Damps the body's movement if greater than [code]0[/code]."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:118 doc/classes/RigidBody2D.xml:158
-#: doc/classes/RigidBody3D.xml:175
+#: doc/classes/PhysicalBone3D.xml:118 doc/classes/RigidBody2D.xml:159
+#: doc/classes/RigidBody3D.xml:183
msgid "The body's mass."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:121 doc/classes/RigidBody3D.xml:188
+#: doc/classes/PhysicalBone3D.xml:121 doc/classes/RigidBody3D.xml:196
msgid ""
"The body's weight based on its mass and the global 3D gravity. Global values "
"are set in [b]Project > Project Settings > Physics > 3d[/b]."
@@ -35673,7 +36368,7 @@ msgid "The inverse of the mass of the body."
msgstr ""
#: doc/classes/PhysicsDirectBodyState2D.xml:195
-#: doc/classes/PhysicsDirectBodyState3D.xml:198 doc/classes/RigidBody2D.xml:155
+#: doc/classes/PhysicsDirectBodyState3D.xml:198 doc/classes/RigidBody2D.xml:156
msgid "The body's linear velocity."
msgstr ""
@@ -36226,7 +36921,7 @@ msgid ""
msgstr ""
#: doc/classes/PhysicsServer2D.xml:620 doc/classes/PhysicsServer3D.xml:637
-#: doc/classes/RigidBody3D.xml:120
+#: doc/classes/RigidBody3D.xml:127
msgid ""
"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."
@@ -37291,47 +37986,64 @@ msgid ""
"collision queries. See also [PhysicsShapeQueryResult2D]."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:18
-msgid ""
-"Sets the [Shape2D] that will be used for collision/intersection queries."
-msgstr ""
-
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:24
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:15
msgid "If [code]true[/code], the query will take [Area2D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:18
msgid ""
"If [code]true[/code], the query will take [PhysicsBody2D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:30
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:30
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:21
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:21
msgid "The physics layer(s) the query will take into account (as a bitmask)."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:33
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:33
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:24
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:24
msgid ""
"The list of objects or object [RID]s that will be excluded from collisions."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:36
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:36 doc/classes/Shape3D.xml:16
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:27 doc/classes/Shape3D.xml:16
msgid "The collision margin for the shape."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:39
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:30
msgid "The motion of the shape being queried for."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:42
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:39
-msgid "The queried shape's [RID]. See also [method set_shape]."
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:33
+msgid ""
+"The [Shape2D] that will be used for collision/intersection queries. This "
+"stores the actual reference which avoids the shape to be released while "
+"being used for queries, so always prefer using this over [member shape_rid]."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:36
+msgid ""
+"The queried shape's [RID] that will be used for collision/intersection "
+"queries. Use this over [member shape] if you want to optimize for "
+"performance using the Servers API:\n"
+"[codeblock]\n"
+"var shape_rid = PhysicsServer2D.circle_shape_create()\n"
+"var radius = 64\n"
+"PhysicsServer2D.shape_set_data(shape_rid, radius)\n"
+"\n"
+"var params = PhysicsShapeQueryParameters2D.new()\n"
+"params.shape_rid = shape_rid\n"
+"\n"
+"# Execute physics queries here...\n"
+"\n"
+"# Release the shape when done with physics queries.\n"
+"PhysicsServer2D.free_rid(shape_rid)\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:45
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:42
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:52
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:49
msgid "The queried shape's transform matrix."
msgstr ""
@@ -37345,18 +38057,40 @@ msgid ""
"collision queries. See also [PhysicsShapeQueryResult3D]."
msgstr ""
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:15
+msgid "If [code]true[/code], the query will take [Area3D]s into account."
+msgstr ""
+
#: doc/classes/PhysicsShapeQueryParameters3D.xml:18
msgid ""
-"Sets the [Shape3D] that will be used for collision/intersection queries."
+"If [code]true[/code], the query will take [PhysicsBody3D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:24
-msgid "If [code]true[/code], the query will take [Area3D]s into account."
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:30
+msgid ""
+"The [Shape3D] that will be used for collision/intersection queries. This "
+"stores the actual reference which avoids the shape to be released while "
+"being used for queries, so always prefer using this over [member shape_rid]."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:33
msgid ""
-"If [code]true[/code], the query will take [PhysicsBody3D]s into account."
+"The queried shape's [RID] that will be used for collision/intersection "
+"queries. Use this over [member shape] if you want to optimize for "
+"performance using the Servers API:\n"
+"[codeblock]\n"
+"var shape_rid = PhysicsServer3D.shape_create(PhysicsServer3D.SHAPE_SPHERE)\n"
+"var radius = 2.0\n"
+"PhysicsServer3D.shape_set_data(shape_rid, radius)\n"
+"\n"
+"var params = PhysicsShapeQueryParameters3D.new()\n"
+"params.shape_rid = shape_rid\n"
+"\n"
+"# Execute physics queries here...\n"
+"\n"
+"# Release the shape when done with physics queries.\n"
+"PhysicsServer3D.free_rid(shape_rid)\n"
+"[/codeblock]"
msgstr ""
#: doc/classes/PhysicsShapeQueryResult2D.xml:4
@@ -37497,92 +38231,94 @@ msgid ""
"code]."
msgstr ""
-#: doc/classes/Plane.xml:72
-msgid "Returns a point on the plane."
-msgstr ""
-
-#: doc/classes/Plane.xml:83
+#: doc/classes/Plane.xml:76
msgid ""
-"Returns [code]true[/code] if [code]point[/code] is inside the plane (by a "
-"very minimum [code]epsilon[/code] threshold)."
+"Returns [code]true[/code] if [code]point[/code] is inside the plane. "
+"Comparison uses a custom minimum [code]epsilon[/code] threshold."
msgstr ""
-#: doc/classes/Plane.xml:94
+#: doc/classes/Plane.xml:87
msgid ""
"Returns the intersection point of the three planes [code]b[/code], [code]c[/"
"code] and this plane. If no intersection is found, [code]null[/code] is "
"returned."
msgstr ""
-#: doc/classes/Plane.xml:105
+#: doc/classes/Plane.xml:98
msgid ""
"Returns the intersection point of a ray consisting of the position "
"[code]from[/code] and the direction normal [code]dir[/code] with this plane. "
"If no intersection is found, [code]null[/code] is returned."
msgstr ""
-#: doc/classes/Plane.xml:116
+#: doc/classes/Plane.xml:109
msgid ""
"Returns the intersection point of a segment from position [code]begin[/code] "
"to position [code]end[/code] with this plane. If no intersection is found, "
"[code]null[/code] is returned."
msgstr ""
-#: doc/classes/Plane.xml:125
+#: doc/classes/Plane.xml:118
msgid ""
"Returns [code]true[/code] if this plane and [code]plane[/code] are "
"approximately equal, by running [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/Plane.xml:134
+#: doc/classes/Plane.xml:127
msgid ""
"Returns [code]true[/code] if [code]point[/code] is located above the plane."
msgstr ""
-#: doc/classes/Plane.xml:141
+#: doc/classes/Plane.xml:134
msgid "Returns a copy of the plane, normalized."
msgstr ""
-#: doc/classes/Plane.xml:150
+#: doc/classes/Plane.xml:143
msgid ""
-"Returns the orthogonal projection of point [code]p[/code] into a point in "
-"the plane."
+"Returns the orthogonal projection of [code]point[/code] into a point in the "
+"plane."
msgstr ""
-#: doc/classes/Plane.xml:156
+#: doc/classes/Plane.xml:149
msgid ""
-"Distance from the origin to the plane, in the direction of [member normal]."
+"The distance from the origin to the plane, in the direction of [member "
+"normal]. This value is typically non-negative.\n"
+"In the scalar equation of the plane [code]ax + by + cz = d[/code], this is "
+"[code]d[/code], while the [code](a, b, c)[/code] coordinates are represented "
+"by the [member normal] property."
msgstr ""
-#: doc/classes/Plane.xml:159
+#: doc/classes/Plane.xml:153
msgid ""
-"The normal of the plane. \"Over\" or \"Above\" the plane is considered the "
-"side of the plane towards where the normal is pointing."
+"The normal of the plane, which must be normalized.\n"
+"In the scalar equation of the plane [code]ax + by + cz = d[/code], this is "
+"the vector [code](a, b, c)[/code], where [code]d[/code] is the [member d] "
+"property."
msgstr ""
-#: doc/classes/Plane.xml:162
-msgid "The [member normal]'s X component."
+#: doc/classes/Plane.xml:157
+msgid "The X component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:165
-msgid "The [member normal]'s Y component."
+#: doc/classes/Plane.xml:160
+msgid "The Y component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:168
-msgid "The [member normal]'s Z component."
+#: doc/classes/Plane.xml:163
+msgid "The Z component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:173
-msgid "A plane that extends in the Y and Z axes."
+#: doc/classes/Plane.xml:168
+msgid "A plane that extends in the Y and Z axes (normal vector points +X)."
msgstr ""
-#: doc/classes/Plane.xml:176
-msgid "A plane that extends in the X and Z axes."
+#: doc/classes/Plane.xml:171
+msgid "A plane that extends in the X and Z axes (normal vector points +Y)."
msgstr ""
-#: doc/classes/Plane.xml:179
-msgid "A plane that extends in the X and Y axes."
+#: doc/classes/Plane.xml:174
+msgid "A plane that extends in the X and Y axes (normal vector points +Z)."
msgstr ""
#: doc/classes/PlaneMesh.xml:4
@@ -38293,18 +39029,25 @@ msgstr ""
#: doc/classes/PrimitiveMesh.xml:16
msgid ""
-"Returns mesh arrays used to constitute surface of [Mesh]. Mesh arrays can be "
-"used with [ArrayMesh] to create new surfaces."
+"Returns mesh arrays used to constitute surface of [Mesh]. The result can be "
+"passed to [method ArrayMesh.add_surface_from_arrays] to create a new "
+"surface. For example:\n"
+"[codeblock]\n"
+"var c := CylinderMesh.new()\n"
+"var arr_mesh := ArrayMesh.new()\n"
+"arr_mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLES, c."
+"get_mesh_arrays())\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:22
+#: doc/classes/PrimitiveMesh.xml:27
msgid ""
"Overrides the [AABB] with one defined by user for use with frustum culling. "
"Especially useful to avoid unnexpected culling when using a shader to "
"offset vertices."
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:25
+#: doc/classes/PrimitiveMesh.xml:30
msgid ""
"If set, the order of the vertices in each triangle are reversed resulting in "
"the backside of the mesh being drawn.\n"
@@ -38312,7 +39055,7 @@ msgid ""
"[member BaseMaterial3D.cull_mode]."
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:29
+#: doc/classes/PrimitiveMesh.xml:34
msgid "The current [Material] of the primitive mesh."
msgstr ""
@@ -38743,11 +39486,17 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:260
msgid ""
+"Safer override for [member audio/output_latency] in the Web platform, to "
+"avoid audio issues especially on mobile devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:263
+msgid ""
"Setting to hardcode audio delay when playing video. Best to leave this "
"untouched unless you know what you are doing."
msgstr ""
-#: doc/classes/ProjectSettings.xml:263
+#: doc/classes/ProjectSettings.xml:266
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -38757,7 +39506,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:269
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -38767,27 +39516,27 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:269
+#: doc/classes/ProjectSettings.xml:272
msgid ""
"The default compression level for Zstandard. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
"speed. Decompression speed is mostly unaffected by the compression level."
msgstr ""
-#: doc/classes/ProjectSettings.xml:272
+#: doc/classes/ProjectSettings.xml:275
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:278
msgid ""
"Largest size limit (in power of 2) allowed when compressing using long-"
"distance matching with Zstandard. Higher values can result in better "
"compression, but will require more memory when compressing and decompressing."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:281
msgid ""
"If [code]true[/code], displays getters and setters in autocompletion results "
"in the script editor. This setting is meant to be used when porting old "
@@ -38795,74 +39544,55 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:281
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:284
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:287
+#: doc/classes/ProjectSettings.xml:294
msgid ""
"If [code]true[/code], enables specific GDScript warnings (see [code]debug/"
"gdscript/warnings/*[/code] settings). If [code]false[/code], disables all "
"GDScript warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
-msgid ""
-"If [code]true[/code], enables warnings when a function is declared with the "
-"same name as a constant."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:296
-msgid ""
-"If [code]true[/code], enables warnings when a function is declared with the "
-"same name as a variable. This will turn into an error in a future version "
-"when first-class functions become supported in GDScript."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:299
-msgid ""
-"If [code]true[/code], enables warnings when a function assigned to a "
-"variable may yield and return a function state instead of a value."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:302
+#: doc/classes/ProjectSettings.xml:300
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:303
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when dividing an integer by another "
"integer (the decimal part will be discarded)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when passing a floating-point value "
"to a function that expects an integer (it will be converted and lose "
"precision)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:314
+#: doc/classes/ProjectSettings.xml:312
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
@@ -38883,102 +39613,85 @@ msgid ""
"member variable)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:323
+#: doc/classes/ProjectSettings.xml:325
msgid ""
"If [code]true[/code], enables warnings when calling an expression that has "
"no effect on the surrounding code, such as writing [code]2 + 2[/code] as a "
"statement."
msgstr ""
-#: doc/classes/ProjectSettings.xml:326
+#: doc/classes/ProjectSettings.xml:328
msgid ""
"If [code]true[/code], enables warnings when calling a ternary expression "
"that has no effect on the surrounding code, such as writing [code]42 if "
"active else 0[/code] as a statement."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:331
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:334
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:335
+#: doc/classes/ProjectSettings.xml:337
msgid ""
"If [code]true[/code], enables warnings when assigning a variable using an "
"assignment operator like [code]+=[/code] if the variable wasn't previously "
"assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:338
+#: doc/classes/ProjectSettings.xml:340
msgid ""
"If [code]true[/code], enables warnings when unreachable code is detected "
"(such as after a [code]return[/code] statement that will always be executed)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:345
msgid ""
"If [code]true[/code], enables warnings when using an expression whose type "
"may not be compatible with the function parameter expected."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:348
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:347
+#: doc/classes/ProjectSettings.xml:351
msgid ""
"If [code]true[/code], enables warnings when calling a method whose presence "
"is not guaranteed at compile-time in the class."
msgstr ""
-#: doc/classes/ProjectSettings.xml:350
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], enables warnings when accessing a property whose "
"presence is not guaranteed at compile-time in the class."
msgstr ""
-#: doc/classes/ProjectSettings.xml:353
-msgid ""
-"If [code]true[/code], enables warnings when a function parameter is unused."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:356
-msgid ""
-"If [code]true[/code], enables warnings when a member variable is unused."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:363
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:362
+#: doc/classes/ProjectSettings.xml:366
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:365
-msgid ""
-"If [code]true[/code], enables warnings when a variable is declared with the "
-"same name as a function. This will turn into an error in a future version "
-"when first-class functions become supported in GDScript."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:368
+#: doc/classes/ProjectSettings.xml:369
msgid ""
"If [code]true[/code], enables warnings when assigning the result of a "
"function that returns [code]void[/code] to a variable."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:374
+#: doc/classes/ProjectSettings.xml:375
msgid ""
"Maximum number of frames per second allowed. The actual number of frames per "
"second may still be below this value if the game is lagging.\n"
@@ -38989,143 +39702,143 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:379
+#: doc/classes/ProjectSettings.xml:380
msgid "Maximum call stack allowed for debugging GDScript."
msgstr ""
-#: doc/classes/ProjectSettings.xml:382
+#: doc/classes/ProjectSettings.xml:383
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:385
+#: doc/classes/ProjectSettings.xml:386
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:388
+#: doc/classes/ProjectSettings.xml:389
msgid ""
"Print more information to standard output when running. It displays "
"information such as memory leaks, which scenes and resources are being "
"loaded, etc."
msgstr ""
-#: doc/classes/ProjectSettings.xml:391
+#: doc/classes/ProjectSettings.xml:392
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:394
+#: doc/classes/ProjectSettings.xml:395
msgid ""
"Color of the contact points between collision shapes, visible when \"Visible "
"Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:397
+#: doc/classes/ProjectSettings.xml:398
msgid ""
"Maximum number of contact points between collision shapes to display when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:400
+#: doc/classes/ProjectSettings.xml:401
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
msgid "Hotspot for the custom mouse cursor image."
msgstr ""
-#: doc/classes/ProjectSettings.xml:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
msgid ""
"If [code]true[/code], allows HiDPI display on Windows and macOS. This "
"setting has no effect on desktop Linux, as DPI-awareness fallbacks are not "
"supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"If [code]true[/code], keeps the screen on (even in case of inactivity), so "
"the screensaver does not take over. Works on desktop and mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
msgid "Default orientation on mobile devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"If [code]true[/code], the home indicator is hidden automatically. This only "
"affects iOS devices without a physical home button."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid "Force the window to be always on top."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid "Force the window to be borderless."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Sets the window to full screen when it starts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid ""
"Sets the game's main viewport height. On desktop platforms, this is the "
"default window size. Stretch mode settings also use this as a reference when "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Allows the window to be resizable by default."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"Sets the game's main viewport width. On desktop platforms, this is the "
"default window size. Stretch mode settings also use this as a reference when "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:454
+#: doc/classes/ProjectSettings.xml:455
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:457
+#: doc/classes/ProjectSettings.xml:458
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -39134,7 +39847,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:460
+#: doc/classes/ProjectSettings.xml:461
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -39145,13 +39858,13 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:464
+#: doc/classes/ProjectSettings.xml:465
msgid ""
"Search path for project-specific script templates. Script templates will be "
"search both in the editor-specific path and in this project-specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:467
+#: doc/classes/ProjectSettings.xml:468
msgid ""
"Text-based file extensions to include in the script editor's \"Find in Files"
"\" feature. You can add e.g. [code]tscn[/code] if you wish to also parse "
@@ -39159,49 +39872,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:470
+#: doc/classes/ProjectSettings.xml:471
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:473
+#: doc/classes/ProjectSettings.xml:474
msgid ""
-"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
+"If [code]true[/code], swaps Cancel and OK buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:478
+#: doc/classes/ProjectSettings.xml:479
msgid ""
"Path to a custom [Theme] resource file to use for the project ([code]theme[/"
"code] or generic [code]tres[/code]/[code]res[/code] extension)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:484
+#: doc/classes/ProjectSettings.xml:485
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:487
+#: doc/classes/ProjectSettings.xml:488
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:490
+#: doc/classes/ProjectSettings.xml:491
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:493
+#: doc/classes/ProjectSettings.xml:494
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:496
+#: doc/classes/ProjectSettings.xml:497
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -39210,7 +39923,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"Default [InputEventAction] to discard a modal or pending input.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39218,7 +39931,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:504
+#: doc/classes/ProjectSettings.xml:505
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39226,7 +39939,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:508
+#: doc/classes/ProjectSettings.xml:509
msgid ""
"Default [InputEventAction] to go to the end position of a [Control] (e.g. "
"last item in an [ItemList] or a [Tree]), matching the behavior of [constant "
@@ -39236,7 +39949,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:512
+#: doc/classes/ProjectSettings.xml:513
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -39245,7 +39958,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:516
+#: doc/classes/ProjectSettings.xml:517
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -39254,7 +39967,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:520
+#: doc/classes/ProjectSettings.xml:521
msgid ""
"Default [InputEventAction] to go to the start position of a [Control] (e.g. "
"first item in an [ItemList] or a [Tree]), matching the behavior of [constant "
@@ -39264,7 +39977,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39272,7 +39985,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:528
+#: doc/classes/ProjectSettings.xml:529
msgid ""
"Default [InputEventAction] to go down a page in a [Control] (e.g. in an "
"[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEDOWN] on "
@@ -39282,7 +39995,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Default [InputEventAction] to go up a page in a [Control] (e.g. in an "
"[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEUP] on "
@@ -39292,7 +40005,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:536
+#: doc/classes/ProjectSettings.xml:537
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39300,7 +40013,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:540
+#: doc/classes/ProjectSettings.xml:541
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -39309,7 +40022,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39317,371 +40030,371 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:548
+#: doc/classes/ProjectSettings.xml:549
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:554
+#: doc/classes/ProjectSettings.xml:555
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:557
+#: doc/classes/ProjectSettings.xml:558
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:560
+#: doc/classes/ProjectSettings.xml:561
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:566
+#: doc/classes/ProjectSettings.xml:567
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:569
+#: doc/classes/ProjectSettings.xml:570
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:572
+#: doc/classes/ProjectSettings.xml:573
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:578
+#: doc/classes/ProjectSettings.xml:579
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:581
+#: doc/classes/ProjectSettings.xml:582
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:584
+#: doc/classes/ProjectSettings.xml:585
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:590
+#: doc/classes/ProjectSettings.xml:591
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:593
+#: doc/classes/ProjectSettings.xml:594
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:596
+#: doc/classes/ProjectSettings.xml:597
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:602
+#: doc/classes/ProjectSettings.xml:603
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid ""
"The locale to fall back to if a translation isn't available in a given "
"language. If left empty, [code]en[/code] (English) will be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "If [code]true[/code], logs all output to files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:806
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:809
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:812
msgid ""
"Godot uses a message queue to defer some function calls. If you run out of "
"space on it (you will see an error), you can increase the size here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:815
msgid ""
"This is used by servers when used in multi-threading mode (servers and "
"visual). RIDs are preallocated to avoid stalling the server requesting them "
@@ -39689,56 +40402,56 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:829
+#: doc/classes/ProjectSettings.xml:832
msgid ""
"Maximum amount of characters allowed to send as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:832
+#: doc/classes/ProjectSettings.xml:835
msgid ""
"Maximum number of errors allowed to be sent from the debugger. Over this "
"value, content is dropped. This helps not to stall the debugger connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:835
+#: doc/classes/ProjectSettings.xml:838
msgid ""
"Maximum amount of messages in the debugger queue. Over this value, content "
"is dropped. This helps to limit the debugger memory usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:838
+#: doc/classes/ProjectSettings.xml:841
msgid ""
"Maximum number of warnings allowed to be sent from the debugger. Over this "
"value, content is dropped. This helps not to stall the debugger connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:841
+#: doc/classes/ProjectSettings.xml:844
msgid ""
"Default size of packet peer stream for deserializing Godot data. Over this "
"size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:844
+#: doc/classes/ProjectSettings.xml:847
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:847
+#: doc/classes/ProjectSettings.xml:850
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:850
+#: doc/classes/ProjectSettings.xml:853
msgid ""
"Amount of read ahead used by remote filesystem. Higher values decrease the "
"effects of latency at the cost of higher bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:853
+#: doc/classes/ProjectSettings.xml:856
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:856
+#: doc/classes/ProjectSettings.xml:859
msgid ""
"The CA certificates bundle to use for SSL connections. If this is set to a "
"non-empty value, this will [i]override[/i] Godot's default [url=https://"
@@ -39748,31 +40461,31 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:863
msgid ""
"When creating node names automatically, set the type of casing in this "
"project. This is mostly an editor setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:866
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:869
msgid "Size of the hash table used for the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:872
msgid "Cell size used for the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:875
msgid "The default angular damp in 2D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:878
msgid ""
"The default gravity strength in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39784,7 +40497,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:883
+#: doc/classes/ProjectSettings.xml:886
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39796,38 +40509,38 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:891
+#: doc/classes/ProjectSettings.xml:894
msgid "The default linear damp in 2D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:894
+#: doc/classes/ProjectSettings.xml:897
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:897
+#: doc/classes/ProjectSettings.xml:900
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics2D\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:901
+#: doc/classes/ProjectSettings.xml:904
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant PhysicsServer2D."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:904
+#: doc/classes/ProjectSettings.xml:907
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant PhysicsServer2D."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:907
+#: doc/classes/ProjectSettings.xml:910
msgid ""
"Sets whether physics is run on the main thread or a separate one. Running "
"the server on a thread increases performance, but restricts API access to "
@@ -39837,23 +40550,23 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:914
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant PhysicsServer2D.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:917
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody3D] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:920
msgid "The default angular damp in 3D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:923
msgid ""
"The default gravity strength in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39865,7 +40578,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:928
+#: doc/classes/ProjectSettings.xml:931
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39877,11 +40590,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:936
+#: doc/classes/ProjectSettings.xml:939
msgid "The default linear damp in 3D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:939
+#: doc/classes/ProjectSettings.xml:942
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -39889,11 +40602,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:943
+#: doc/classes/ProjectSettings.xml:946
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:949
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -39902,7 +40615,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:950
+#: doc/classes/ProjectSettings.xml:953
msgid ""
"Fix to improve physics jitter, specially on monitors where refresh rate is "
"different than the physics FPS.\n"
@@ -39910,7 +40623,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:954
+#: doc/classes/ProjectSettings.xml:957
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -39918,7 +40631,7 @@ msgid ""
"programmatically, use [method RenderingServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:957
+#: doc/classes/ProjectSettings.xml:960
msgid ""
"[Environment] that will be used as a fallback environment in case a scene "
"does not specify its own environment. The default environment is loaded in "
@@ -39928,14 +40641,14 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:986
+#: doc/classes/ProjectSettings.xml:989
msgid ""
"Max amount of elements renderable in a frame. If more than this are visible "
"per frame, they will be dropped. Keep in mind elements refer to mesh "
"surfaces and not meshes themselves."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:994
msgid ""
"Some NVIDIA GPU drivers have a bug which produces flickering issues for the "
"[code]draw_rect[/code] method, especially as used in [TileMap]. Refer to "
@@ -39947,73 +40660,73 @@ msgid ""
"using the Vulkan backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:995
+#: doc/classes/ProjectSettings.xml:998
msgid ""
"If [code]true[/code], forces snapping of polygons to pixels in 2D rendering. "
"May help in some pixel art styles."
msgstr ""
-#: doc/classes/ProjectSettings.xml:998
+#: doc/classes/ProjectSettings.xml:1001
msgid ""
"Sets the quality of the depth of field effect. Higher quality takes more "
"samples, which is slower but looks smoother."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1001
+#: doc/classes/ProjectSettings.xml:1004
msgid ""
"Sets the depth of field shape. Can be Box, Hexagon, or Circle. Box is the "
"fastest. Circle is the most realistic, but also the most expensive to "
"compute."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1004
+#: doc/classes/ProjectSettings.xml:1007
msgid ""
"If [code]true[/code], jitters DOF samples to make effect slightly blurrier "
"and hide lines created from low sample rates. This can result in a slightly "
"grainy appearance when used with a low number of samples."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1010
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1010
+#: doc/classes/ProjectSettings.xml:1013
msgid ""
"If [code]true[/code], performs a previous depth pass before rendering "
"materials. This increases performance in scenes with high overdraw, when "
"complex materials and lighting are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1016
msgid ""
"The directional shadow's size in pixels. Higher values will result in "
"sharper shadows, at the cost of performance. The value will be rounded up to "
"the nearest power of 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1016
+#: doc/classes/ProjectSettings.xml:1019
msgid ""
"Lower-end override for [member rendering/quality/directional_shadow/size] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1019
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"Quality setting for shadows cast by [DirectionalLight3D]s. Higher quality "
"settings use more samples when reading from shadow maps and are thus slower. "
"Low quality settings may result in shadows looking grainy."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1022
+#: doc/classes/ProjectSettings.xml:1025
msgid ""
"Lower-end override for [member rendering/quality/directional_shadow/"
"soft_shadow_quality] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1028
msgid ""
"The video driver to use (\"GLES2\" or \"Vulkan\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -40023,32 +40736,32 @@ msgid ""
"get_current_video_driver[/code] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1031
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"If [code]true[/code], take additional samples when rendering objects "
"affected by a [GIProbe] to reduce artifacts from only sampling in one "
"direction."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1034
+#: doc/classes/ProjectSettings.xml:1037
msgid ""
"Sets the number of cone samples taken when rendering objects affected by "
"[GIProbe]s."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1037
+#: doc/classes/ProjectSettings.xml:1040
msgid ""
"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."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1040
+#: doc/classes/ProjectSettings.xml:1043
msgid ""
"Lower-end override for [member rendering/quality/glow/upscale_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1043
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Strategy used for framebuffer allocation. The simpler it is, the less "
"resources it uses (but the less features it supports). If set to \"2D "
@@ -40058,41 +40771,41 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1046
+#: doc/classes/ProjectSettings.xml:1049
msgid ""
"Lower-end override for [member rendering/quality/intended_usage/"
"framebuffer_allocation] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1052
msgid ""
"Number of cubemaps to store in the reflection atlas. The number of "
"[ReflectionProbe]s in a scene will be limited by this amount. A higher "
"number requires more VRAM."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1052
+#: doc/classes/ProjectSettings.xml:1055
msgid ""
"Size of cubemap faces for [ReflectionProbe]s. A higher number requires more "
"VRAM and may make reflection probe updating slower."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1055
+#: doc/classes/ProjectSettings.xml:1058
msgid ""
"Lower-end override for [member rendering/quality/reflection_atlas/"
"reflection_size] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1058
+#: doc/classes/ProjectSettings.xml:1061
msgid ""
"Use a higher quality variant of the fast filtering algorithm. Significantly "
"slower than using default quality, but results in smoother reflections. "
"Should only be used when the scene is especially detailed."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1061
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Sets the number of samples to take when using importance sampling for [Sky]s "
"and [ReflectionProbe]s. A higher value will result in smoother, higher "
@@ -40102,19 +40815,19 @@ msgid ""
"environments with a high level of detail."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1064
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Lower-end override for [member rendering/quality/reflections/ggx_samples] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1067
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Limits the number of layers to use in radiance maps when using importance "
"sampling. A lower number will be slightly faster and take up less VRAM."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1070
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise and "
@@ -40123,14 +40836,14 @@ msgid ""
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1073
+#: doc/classes/ProjectSettings.xml:1076
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"texture_array_reflections] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1079
msgid ""
"Sets the number of MSAA samples to use (as a power of two). MSAA is used to "
"reduce aliasing around the edges of polygons. A higher MSAA value results in "
@@ -40138,7 +40851,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1080
+#: doc/classes/ProjectSettings.xml:1083
msgid ""
"Sets the screen-space antialiasing mode for the default screen [Viewport]. "
"Screen-space antialiasing works by selectively blurring edges in a post-"
@@ -40147,133 +40860,117 @@ msgid ""
"MSAA and will smooth out specular aliasing, but tend to make scenes appear "
"blurry.\n"
"Another way to combat specular aliasing is to enable [member rendering/"
-"quality/screen_filters/screen_space_roughness_limiter]."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:1084
-msgid ""
-"Enables the screen-space roughness limiter which increases material "
-"roughness in areas with a high normal frequency (i.e. when normals change a "
-"lot from pixel to pixel). This helps to reduce the amount of specular "
-"aliasing in a scene. Specular aliasing looks like random bright pixels that "
-"occur in reflections."
+"quality/screen_filters/screen_space_roughness_limiter_enabled]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1087
-msgid ""
-"Curves the amount of the roughness limited effect. A higher value limits the "
-"effect to very sharply curved surfaces, while a lower threshold extends the "
-"effect to smoother surfaces."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:1090
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"Sets the quality for rough screen-space reflections. Turning off will make "
"all screen space reflections sharp, while higher values make rough "
"reflections look better."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1093
+#: doc/classes/ProjectSettings.xml:1096
msgid ""
"If [code]true[/code], uses faster but lower-quality Blinn model to generate "
"blurred reflections instead of the GGX model."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1099
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_blinn_over_ggx] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1102
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1102
+#: doc/classes/ProjectSettings.xml:1105
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_lambert_over_burley] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1105
+#: doc/classes/ProjectSettings.xml:1108
msgid ""
"If [code]true[/code], forces vertex shading for all rendering. This can "
"increase performance a lot, but also reduces quality immensely. Can be used "
"to optimize performance on low-end mobile devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1108
+#: doc/classes/ProjectSettings.xml:1111
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_vertex_shading] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1111 doc/classes/ProjectSettings.xml:1114
-#: doc/classes/ProjectSettings.xml:1117 doc/classes/ProjectSettings.xml:1120
+#: doc/classes/ProjectSettings.xml:1114 doc/classes/ProjectSettings.xml:1117
+#: doc/classes/ProjectSettings.xml:1120 doc/classes/ProjectSettings.xml:1123
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1123
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1126
+#: doc/classes/ProjectSettings.xml:1129
msgid ""
"Lower-end override for [member rendering/quality/shadow_atlas/size] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1132
msgid ""
"Quality setting for shadows cast by [OmniLight3D]s and [SpotLight3D]s. "
"Higher quality settings use more samples when reading from shadow maps and "
"are thus slower. Low quality settings may result in shadows looking grainy."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1132
+#: doc/classes/ProjectSettings.xml:1135
msgid ""
"Lower-end override for [member rendering/quality/shadows/"
"soft_shadow_quality] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1135
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"If [code]true[/code], screen-space ambient occlusion will be rendered at "
"half size and then upscaled before being added to the scene. This is "
"significantly faster but may miss small details."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1138
+#: doc/classes/ProjectSettings.xml:1141
msgid ""
"Sets the quality of the screen-space ambient occlusion effect. Higher values "
"take more samples and so will result in better quality, at the cost of "
"performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1144
msgid ""
"Scales the depth over which the subsurface scattering effect is applied. A "
"high value may allow light to scatter into a part of the mesh or another "
"mesh that is close in screen space but far in depth."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1144
+#: doc/classes/ProjectSettings.xml:1147
msgid ""
"Sets the quality of the subsurface scattering effect. Higher values are "
"slower but look nicer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1147
+#: doc/classes/ProjectSettings.xml:1150
msgid ""
"Scales the distance over which samples are taken for subsurface scattering "
"effect. Changing this does not impact performance, but higher values will "
@@ -40281,7 +40978,7 @@ msgid ""
"out. A lower value results in a smaller spread of scattered light."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1150
+#: doc/classes/ProjectSettings.xml:1153
msgid ""
"Sets the maximum number of samples to take when using anisotropic filtering "
"on textures (as a power of two). A higher sample count will result in "
@@ -40290,7 +40987,7 @@ msgid ""
"materials where it is enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1153
+#: doc/classes/ProjectSettings.xml:1156
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -40299,49 +40996,49 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Thread model for rendering. Rendering on a thread can vastly improve "
"performance, but synchronizing to the main thread can cause a bit more "
"jitter."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
"only supported on desktop platforms, and only when using the Vulkan renderer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
"doesn't support alpha channels in textures."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
"compression algorithm is only supported when using the Vulkan renderer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1175
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
"compression algorithm is only supported on iOS."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
"supported on desktop platforms and consoles."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1182
+#: doc/classes/ProjectSettings.xml:1189
msgid "Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses."
msgstr ""
@@ -40371,13 +41068,14 @@ msgstr ""
#: doc/classes/Quat.xml:7
msgid ""
-"A unit quaternion used for representing 3D rotations.\n"
-"It is similar to [Basis], which implements matrix representation of "
-"rotations, and can be parametrized using both an axis-angle pair or Euler "
-"angles. But due to its compactness and the way it is stored in memory, "
-"certain operations (obtaining axis-angle and performing SLERP, in "
-"particular) are more efficient and robust against floating-point errors.\n"
-"Quaternions need to be (re)normalized."
+"A unit quaternion used for representing 3D rotations. Quaternions need to be "
+"normalized to be used for rotation.\n"
+"It is similar to Basis, which implements matrix representation of rotations, "
+"and can be parametrized using both an axis-angle pair or Euler angles. Basis "
+"stores rotation, scale, and shearing, while Quat only stores rotation.\n"
+"Due to its compactness and the way it is stored in memory, certain "
+"operations (obtaining axis-angle and performing SLERP, in particular) are "
+"more efficient and robust against floating-point errors."
msgstr ""
#: doc/classes/Quat.xml:12
@@ -40387,29 +41085,31 @@ msgid ""
msgstr ""
#: doc/classes/Quat.xml:21
-msgid "Returns the rotation matrix corresponding to the given quaternion."
+msgid "Constructs a quaternion from the given [Basis]."
msgstr ""
#: doc/classes/Quat.xml:30
msgid ""
-"Returns a quaternion that will perform a rotation specified by Euler angles "
-"(in the YXZ convention: first Z, then X, and Y last), given in the vector "
-"format as (X angle, Y angle, Z angle)."
+"Constructs a quaternion that will perform a rotation specified by Euler "
+"angles (in the YXZ convention: when decomposing, first Z, then X, and Y "
+"last), given in the vector format as (X angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:41
msgid ""
-"Returns a quaternion that will rotate around the given axis by the specified "
-"angle. The axis must be a normalized vector."
+"Constructs a quaternion that will rotate around the given axis by the "
+"specified angle. The axis must be a normalized vector."
msgstr ""
#: doc/classes/Quat.xml:56
-msgid "Returns a quaternion defined by these values."
+msgid "Constructs a quaternion defined by the given values."
msgstr ""
#: doc/classes/Quat.xml:71
msgid ""
-"Performs a cubic spherical-linear interpolation with another quaternion."
+"Performs a cubic spherical interpolation between quaternions [code]preA[/"
+"code], this vector, [code]b[/code], and [code]postB[/code], by the given "
+"amount [code]t[/code]."
msgstr ""
#: doc/classes/Quat.xml:80
@@ -40418,10 +41118,10 @@ msgstr ""
#: doc/classes/Quat.xml:87
msgid ""
-"Returns Euler angles (in the YXZ convention: first Z, then X, and Y last) "
-"corresponding to the rotation represented by the unit quaternion. Returned "
-"vector contains the rotation angles in the format (X angle, Y angle, Z "
-"angle)."
+"Returns Euler angles (in the YXZ convention: when decomposing, first Z, then "
+"X, and Y last) corresponding to the rotation represented by the unit "
+"quaternion. Returned vector contains the rotation angles in the format (X "
+"angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:94
@@ -40460,44 +41160,57 @@ msgstr ""
#: doc/classes/Quat.xml:151
msgid ""
"Sets the quaternion to a rotation specified by Euler angles (in the YXZ "
-"convention: first Z, then X, and Y last), given in the vector format as (X "
-"angle, Y angle, Z angle)."
+"convention: when decomposing, first Z, then X, and Y last), given in the "
+"vector format as (X angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:162
-msgid "Performs a spherical-linear interpolation with another quaternion."
+msgid ""
+"Returns the result of the spherical linear interpolation between this "
+"quaternion and [code]to[/code] by amount [code]weight[/code].\n"
+"[b]Note:[/b] Both quaternions must be normalized."
msgstr ""
-#: doc/classes/Quat.xml:173
+#: doc/classes/Quat.xml:174
msgid ""
-"Performs a spherical-linear interpolation with another quaterion without "
-"checking if the rotation path is not bigger than 90°."
+"Returns the result of the spherical linear interpolation between this "
+"quaternion and [code]to[/code] by amount [code]weight[/code], but without "
+"checking if the rotation path is not bigger than 90 degrees."
msgstr ""
-#: doc/classes/Quat.xml:182
-msgid "Transforms the vector [code]v[/code] by this quaternion."
+#: doc/classes/Quat.xml:183
+msgid "Returns a vector transformed (multiplied) by this quaternion."
msgstr ""
-#: doc/classes/Quat.xml:188
-msgid "W component of the quaternion."
+#: doc/classes/Quat.xml:189
+msgid ""
+"W component of the quaternion (real part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:191
-msgid "X component of the quaternion."
+#: doc/classes/Quat.xml:193
+msgid ""
+"X component of the quaternion (imaginary [code]i[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:194
-msgid "Y component of the quaternion."
+#: doc/classes/Quat.xml:197
+msgid ""
+"Y component of the quaternion (imaginary [code]j[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:197
-msgid "Z component of the quaternion."
+#: doc/classes/Quat.xml:201
+msgid ""
+"Z component of the quaternion (imaginary [code]k[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:202
+#: doc/classes/Quat.xml:207
msgid ""
-"The identity rotation. Equivalent to an identity matrix. If a vector is "
-"transformed by an identity quaternion, it will not change."
+"The identity quaternion, representing no rotation. Equivalent to an identity "
+"[Basis] matrix. If a vector is transformed by an identity quaternion, it "
+"will not change."
msgstr ""
#: doc/classes/RandomNumberGenerator.xml:4
@@ -40700,7 +41413,8 @@ msgid ""
"collision information immediately instead of waiting for the next "
"[code]_physics_process[/code] call, for example if the ray or its parent has "
"changed state.\n"
-"[b]Note:[/b] [code]enabled == true[/code] is not required for this to work."
+"[b]Note:[/b] [member enabled] does not need to be [code]true[/code] for this "
+"to work."
msgstr ""
#: doc/classes/RayCast2D.xml:54 doc/classes/RayCast3D.xml:55
@@ -40806,7 +41520,8 @@ msgid ""
"Use this method to update the collision information immediately instead of "
"waiting for the next [code]_physics_process[/code] call, for example if the "
"ray or its parent has changed state.\n"
-"[b]Note:[/b] [code]enabled == true[/code] is not required for this to work."
+"[b]Note:[/b] [member enabled] does not need to be [code]true[/code] for this "
+"to work."
msgstr ""
#: doc/classes/RayCast3D.xml:71
@@ -40964,14 +41679,6 @@ msgstr ""
msgid "Returns a larger [Rect2] that contains this [Rect2] and [code]b[/code]."
msgstr ""
-#: doc/classes/Rect2.xml:174 doc/classes/Rect2i.xml:163
-msgid "Ending corner."
-msgstr ""
-
-#: doc/classes/Rect2.xml:177 doc/classes/Rect2i.xml:166
-msgid "Position (starting corner)."
-msgstr ""
-
#: doc/classes/Rect2i.xml:4
msgid "2D axis-aligned bounding box using integer coordinates."
msgstr ""
@@ -41084,22 +41791,22 @@ msgstr ""
msgid ""
"Base class for any object that keeps a reference count. [Resource] and many "
"other helper objects inherit this class.\n"
-"References keep an internal reference counter so that they are automatically "
-"released when no longer in use, and only then. References therefore do not "
-"need to be freed manually with [method Object.free].\n"
+"Unlike [Object]s, References keep an internal reference counter so that they "
+"are automatically released when no longer in use, and only then. References "
+"therefore do not need to be freed manually with [method Object.free].\n"
"In the vast majority of use cases, instantiating and using [Reference]-"
"derived types is all you need to do. The methods provided in this class are "
"only for advanced users, and can cause issues if misused."
msgstr ""
-#: doc/classes/Reference.xml:18
+#: doc/classes/Reference.xml:19
msgid ""
"Initializes the internal reference counter. Use this only if you really know "
"what you are doing.\n"
"Returns whether the initialization was successful."
msgstr ""
-#: doc/classes/Reference.xml:26
+#: doc/classes/Reference.xml:27
msgid ""
"Increments the internal reference counter. Use this only if you really know "
"what you are doing.\n"
@@ -41107,7 +41814,7 @@ msgid ""
"code] otherwise."
msgstr ""
-#: doc/classes/Reference.xml:34
+#: doc/classes/Reference.xml:35
msgid ""
"Decrements the internal reference counter. Use this only if you really know "
"what you are doing.\n"
@@ -41156,14 +41863,14 @@ msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/reflection_probes.html"
msgstr ""
-#: doc/classes/ReflectionProbe.xml:17
+#: doc/classes/ReflectionProbe.xml:23
msgid ""
"If [code]true[/code], enables box projection. This makes reflections look "
"more correct in rectangle-shaped rooms by offsetting the reflection center "
"depending on the camera's location."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:20
+#: doc/classes/ReflectionProbe.xml:26
msgid ""
"Sets the cull mask which determines what objects are drawn by this probe. "
"Every [VisualInstance3D] with a layer included in this cull mask will be "
@@ -41172,78 +41879,56 @@ msgid ""
"rendering cost."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:23
+#: doc/classes/ReflectionProbe.xml:29
msgid ""
"If [code]true[/code], computes shadows in the reflection probe. This makes "
"the reflection probe slower to render; you may want to disable this if using "
"the [constant UPDATE_ALWAYS] [member update_mode]."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:26
+#: doc/classes/ReflectionProbe.xml:32
msgid ""
"The size of the reflection probe. The larger the extents the more space "
"covered by the probe which will lower the perceived resolution. It is best "
"to keep the extents only as large as you need them."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:29
+#: doc/classes/ReflectionProbe.xml:35
msgid ""
"Defines the reflection intensity. Intensity modulates the strength of the "
"reflection."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:32
-msgid ""
-"Sets the ambient light color to be used when this probe is set to [member "
-"interior_enable]."
-msgstr ""
-
-#: doc/classes/ReflectionProbe.xml:35
-msgid ""
-"Sets the contribution value for how much the reflection affects the ambient "
-"light for this reflection probe when set to [member interior_enable]. Useful "
-"so that ambient light matches the color of the room."
-msgstr ""
-
#: doc/classes/ReflectionProbe.xml:38
-msgid ""
-"Sets the energy multiplier for this reflection probe's ambient light "
-"contribution when set to [member interior_enable]."
+msgid "If [code]true[/code], reflections will ignore sky contribution."
msgstr ""
#: doc/classes/ReflectionProbe.xml:41
msgid ""
-"If [code]true[/code], reflections will ignore sky contribution. Ambient "
-"lighting is then controlled by the [code]interior_ambient_*[/code] "
-"properties."
-msgstr ""
-
-#: doc/classes/ReflectionProbe.xml:44
-msgid ""
"Sets the max distance away from the probe an object can be before it is "
"culled."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:47
+#: doc/classes/ReflectionProbe.xml:44
msgid ""
"Sets the origin offset to be used when this reflection probe is in box "
"project mode."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:50
+#: doc/classes/ReflectionProbe.xml:47
msgid ""
"Sets how frequently the probe is updated. Can be [constant UPDATE_ONCE] or "
"[constant UPDATE_ALWAYS]."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:55
+#: doc/classes/ReflectionProbe.xml:52
msgid ""
"Update the probe once on the next frame. The corresponding radiance map will "
"be generated over the following six frames. This is slower to update than "
"[constant UPDATE_ALWAYS] but can result in higher quality reflections."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:58
+#: doc/classes/ReflectionProbe.xml:55
msgid ""
"Update the probe every frame. This is needed when you want to capture "
"dynamic objects. However, it results in an increased render time. Use "
@@ -41273,10 +41958,10 @@ msgid ""
"read by RegEx as [code]\\d+[/code]. Similarly, [code]compile(\"\\\"(?:\\\\\\"
"\\.|[^\\\"])*\\\"\")[/code] would be read as [code]\"(?:\\\\.|[^\"])*\"[/"
"code].\n"
-"Using [method search] you can find the pattern within the given text. If a "
+"Using [method search], you can find the pattern within the given text. If a "
"pattern is found, [RegExMatch] is returned and you can retrieve details of "
-"the results using functions such as [method RegExMatch.get_string] and "
-"[method RegExMatch.get_start].\n"
+"the results using methods such as [method RegExMatch.get_string] and [method "
+"RegExMatch.get_start].\n"
"[codeblock]\n"
"var regex = RegEx.new()\n"
"regex.compile(\"\\\\w-(\\\\d+)\")\n"
@@ -41285,7 +41970,7 @@ msgid ""
" print(result.get_string()) # Would print n-0123\n"
"[/codeblock]\n"
"The results of capturing groups [code]()[/code] can be retrieved by passing "
-"the group number to the various functions in [RegExMatch]. Group 0 is the "
+"the group number to the various methods in [RegExMatch]. Group 0 is the "
"default and will always refer to the entire pattern. In the above example, "
"calling [code]result.get_string(1)[/code] would give you [code]0123[/code].\n"
"This version of RegEx also supports named capturing groups, and the names "
@@ -41306,6 +41991,15 @@ msgid ""
" print(result.get_string(\"digit\"))\n"
"# Would print 01 03 0 3f 42\n"
"[/codeblock]\n"
+"[b]Example of splitting a string using a RegEx:[/b]\n"
+"[codeblock]\n"
+"var regex = RegEx.new()\n"
+"regex.compile(\"\\\\S+\") # Negated whitespace character class.\n"
+"var results = []\n"
+"for match in regex.search_all(\"One Two \\n\\tThree\"):\n"
+" results.push_back(match.get_string())\n"
+"# The `results` array now contains \"One\", \"Two\", \"Three\".\n"
+"[/codeblock]\n"
"[b]Note:[/b] Godot's regex implementation is based on the [url=https://www."
"pcre.org/]PCRE2[/url] library. You can view the full pattern reference "
"[url=https://www.pcre.org/current/doc/html/pcre2pattern.html]here[/url].\n"
@@ -41313,38 +42007,38 @@ msgid ""
"regular expressions online."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:47
+#: modules/regex/doc_classes/RegEx.xml:56
msgid ""
"This method resets the state of the object, as if it was freshly created. "
"Namely, it unassigns the regular expression of this object."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:56
+#: modules/regex/doc_classes/RegEx.xml:65
msgid ""
"Compiles and assign the search pattern to use. Returns [constant OK] if the "
"compilation is successful. If an error is encountered, details are printed "
"to standard output and an error is returned."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:63
+#: modules/regex/doc_classes/RegEx.xml:72
msgid "Returns the number of capturing groups in compiled pattern."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:70
+#: modules/regex/doc_classes/RegEx.xml:79
msgid ""
"Returns an array of names of named capturing groups in the compiled pattern. "
"They are ordered by appearance."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:77
+#: modules/regex/doc_classes/RegEx.xml:86
msgid "Returns the original search pattern that was compiled."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:84
+#: modules/regex/doc_classes/RegEx.xml:93
msgid "Returns whether this object has a valid search pattern assigned."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:97
+#: modules/regex/doc_classes/RegEx.xml:106
msgid ""
"Searches the text for the compiled pattern. Returns a [RegExMatch] container "
"of the first matching result if found, otherwise [code]null[/code]. The "
@@ -41352,7 +42046,7 @@ msgid ""
"and end anchor would be."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:110
+#: modules/regex/doc_classes/RegEx.xml:119
msgid ""
"Searches the text for the compiled pattern. Returns an array of [RegExMatch] "
"containers for each non-overlapping result. If no results were found, an "
@@ -41360,7 +42054,7 @@ msgid ""
"specified without modifying where the start and end anchor would be."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:127
+#: modules/regex/doc_classes/RegEx.xml:136
msgid ""
"Searches the text for the compiled pattern and replaces it with the "
"specified string. Escapes and backreferences such as [code]$1[/code] and "
@@ -42087,7 +42781,7 @@ msgid ""
msgstr ""
#: doc/classes/RenderingServer.xml:1222 doc/classes/RenderingServer.xml:1250
-#: doc/classes/RenderingServer.xml:1527
+#: doc/classes/RenderingServer.xml:1537
msgid "Not implemented in Godot 3.x."
msgstr ""
@@ -42234,30 +42928,30 @@ msgid ""
"OmniLight3D.omni_shadow_mode]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1481
+#: doc/classes/RenderingServer.xml:1491
msgid ""
"Sets the color of the light. Equivalent to [member Light3D.light_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1492
+#: doc/classes/RenderingServer.xml:1502
msgid ""
"Sets the cull mask for this Light3D. Lights only affect objects in the "
"selected layers. Equivalent to [member Light3D.light_cull_mask]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1503
+#: doc/classes/RenderingServer.xml:1513
msgid ""
"If [code]true[/code], light will subtract light instead of adding light. "
"Equivalent to [member Light3D.light_negative]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1516
+#: doc/classes/RenderingServer.xml:1526
msgid ""
"Sets the specified light parameter. See [enum LightParam] for options. "
"Equivalent to [method Light3D.set_param]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1538
+#: doc/classes/RenderingServer.xml:1548
msgid ""
"If [code]true[/code], reverses the backface culling of the mesh. This can be "
"useful when you have a flat mesh that has a light behind it. If you need to "
@@ -42266,29 +42960,25 @@ msgid ""
"to [member Light3D.shadow_reverse_cull_face]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1549
+#: doc/classes/RenderingServer.xml:1559
msgid ""
"If [code]true[/code], light will cast shadows. Equivalent to [member Light3D."
"shadow_enabled]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1560
+#: doc/classes/RenderingServer.xml:1570
msgid ""
"Sets the color of the shadow cast by the light. Equivalent to [member "
"Light3D.shadow_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1571
-msgid "Sets whether GI probes capture light information from this light."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:1584
+#: doc/classes/RenderingServer.xml:1583
msgid ""
"Returns a mesh of a sphere with the given amount of horizontal and vertical "
"subdivisions."
msgstr ""
-#: doc/classes/RenderingServer.xml:1591
+#: doc/classes/RenderingServer.xml:1590
msgid ""
"Creates an empty material and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42297,31 +42987,31 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:1603
+#: doc/classes/RenderingServer.xml:1602
msgid "Returns the value of a certain material's parameter."
msgstr ""
-#: doc/classes/RenderingServer.xml:1614
+#: doc/classes/RenderingServer.xml:1613
msgid "Sets an object's next material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1627
+#: doc/classes/RenderingServer.xml:1626
msgid "Sets a material's parameter."
msgstr ""
-#: doc/classes/RenderingServer.xml:1638
+#: doc/classes/RenderingServer.xml:1637
msgid "Sets a material's render priority."
msgstr ""
-#: doc/classes/RenderingServer.xml:1649
+#: doc/classes/RenderingServer.xml:1648
msgid "Sets a shader material's shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:1678
+#: doc/classes/RenderingServer.xml:1677
msgid "Removes all surfaces from a mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1685
+#: doc/classes/RenderingServer.xml:1684
msgid ""
"Creates a new mesh and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all [code]mesh_*[/"
@@ -42332,58 +43022,58 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:1696
+#: doc/classes/RenderingServer.xml:1695
msgid "Returns a mesh's blend shape count."
msgstr ""
-#: doc/classes/RenderingServer.xml:1705
+#: doc/classes/RenderingServer.xml:1704
msgid "Returns a mesh's blend shape mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:1714
+#: doc/classes/RenderingServer.xml:1713
msgid "Returns a mesh's custom aabb."
msgstr ""
-#: doc/classes/RenderingServer.xml:1723
+#: doc/classes/RenderingServer.xml:1722
msgid "Returns a mesh's number of surfaces."
msgstr ""
-#: doc/classes/RenderingServer.xml:1734
+#: doc/classes/RenderingServer.xml:1733
msgid "Sets a mesh's blend shape mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:1745
+#: doc/classes/RenderingServer.xml:1744
msgid "Sets a mesh's custom aabb."
msgstr ""
-#: doc/classes/RenderingServer.xml:1756
+#: doc/classes/RenderingServer.xml:1755
msgid "Returns a mesh's surface's buffer arrays."
msgstr ""
-#: doc/classes/RenderingServer.xml:1767
+#: doc/classes/RenderingServer.xml:1766
msgid "Returns a mesh's surface's arrays for blend shapes."
msgstr ""
-#: doc/classes/RenderingServer.xml:1782 doc/classes/RenderingServer.xml:1795
+#: doc/classes/RenderingServer.xml:1781 doc/classes/RenderingServer.xml:1794
msgid "Function is unused in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:1806
+#: doc/classes/RenderingServer.xml:1805
msgid "Returns a mesh's surface's material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1819
+#: doc/classes/RenderingServer.xml:1818
msgid "Sets a mesh's surface's material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1834
+#: doc/classes/RenderingServer.xml:1833
msgid ""
"Updates a specific region of a vertex buffer for the specified surface. "
"Warning: this function alters the vertex buffer directly with no safety "
"mechanisms, you can easily corrupt your mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1857
+#: doc/classes/RenderingServer.xml:1856
msgid ""
"Creates a new multimesh on the RenderingServer and returns an [RID] handle. "
"This RID will be used in all [code]multimesh_*[/code] RenderingServer "
@@ -42394,82 +43084,82 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:1868
+#: doc/classes/RenderingServer.xml:1867
msgid ""
"Calculates and returns the axis-aligned bounding box that encloses all "
"instances within the multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1885
+#: doc/classes/RenderingServer.xml:1884
msgid "Returns the number of instances allocated for this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1894
+#: doc/classes/RenderingServer.xml:1893
msgid ""
"Returns the RID of the mesh that will be used in drawing this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1903
+#: doc/classes/RenderingServer.xml:1902
msgid "Returns the number of visible instances for this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1914
+#: doc/classes/RenderingServer.xml:1913
msgid "Returns the color by which the specified instance will be modulated."
msgstr ""
-#: doc/classes/RenderingServer.xml:1925
+#: doc/classes/RenderingServer.xml:1924
msgid "Returns the custom data associated with the specified instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:1936
+#: doc/classes/RenderingServer.xml:1935
msgid "Returns the [Transform] of the specified instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:1947
+#: doc/classes/RenderingServer.xml:1946
msgid ""
"Returns the [Transform2D] of the specified instance. For use when the "
"multimesh is set to use 2D transforms."
msgstr ""
-#: doc/classes/RenderingServer.xml:1960
+#: doc/classes/RenderingServer.xml:1959
msgid ""
"Sets the color by which this instance will be modulated. Equivalent to "
"[method MultiMesh.set_instance_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1973
+#: doc/classes/RenderingServer.xml:1972
msgid ""
"Sets the custom data for this instance. Custom data is passed as a [Color], "
"but is interpreted as a [code]vec4[/code] in the shader. Equivalent to "
"[method MultiMesh.set_instance_custom_data]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1986
+#: doc/classes/RenderingServer.xml:1985
msgid ""
"Sets the [Transform] for this instance. Equivalent to [method MultiMesh."
"set_instance_transform]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1999
+#: doc/classes/RenderingServer.xml:1998
msgid ""
"Sets the [Transform2D] for this instance. For use when multimesh is used in "
"2D. Equivalent to [method MultiMesh.set_instance_transform_2d]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2020
+#: doc/classes/RenderingServer.xml:2019
msgid ""
"Sets the mesh to be drawn by the multimesh. Equivalent to [member MultiMesh."
"mesh]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2031
+#: doc/classes/RenderingServer.xml:2030
msgid ""
"Sets the number of instances visible at a given time. If -1, all instances "
"that have been allocated are drawn. Equivalent to [member MultiMesh."
"visible_instance_count]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2038
+#: doc/classes/RenderingServer.xml:2037
msgid ""
"Creates a new omni light and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID can be used in most "
@@ -42480,7 +43170,7 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2047
+#: doc/classes/RenderingServer.xml:2046
msgid ""
"Creates a particle system and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42491,23 +43181,23 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2058
+#: doc/classes/RenderingServer.xml:2057
msgid ""
"Calculates and returns the axis-aligned bounding box that contains all the "
"particles. Equivalent to [method GPUParticles3D.capture_aabb]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2067
+#: doc/classes/RenderingServer.xml:2066
msgid "Returns [code]true[/code] if particles are currently set to emitting."
msgstr ""
-#: doc/classes/RenderingServer.xml:2076
+#: doc/classes/RenderingServer.xml:2075
msgid ""
"Returns [code]true[/code] if particles are not emitting and particles are "
"set to inactive."
msgstr ""
-#: doc/classes/RenderingServer.xml:2085
+#: doc/classes/RenderingServer.xml:2084
msgid ""
"Add particle system to list of particle systems that need to be updated. "
"Update will take place on the next frame, or on the next call to [method "
@@ -42515,121 +43205,121 @@ msgid ""
"instances_cull_ray]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2094
+#: doc/classes/RenderingServer.xml:2093
msgid ""
"Reset the particles on the next update. Equivalent to [method GPUParticles3D."
"restart]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2105
+#: doc/classes/RenderingServer.xml:2104
msgid ""
"Sets the number of particles to be drawn and allocates the memory for them. "
"Equivalent to [member GPUParticles3D.amount]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2116
+#: doc/classes/RenderingServer.xml:2115
msgid ""
"Sets a custom axis-aligned bounding box for the particle system. Equivalent "
"to [member GPUParticles3D.visibility_aabb]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2127
+#: doc/classes/RenderingServer.xml:2126
msgid ""
"Sets the draw order of the particles to one of the named enums from [enum "
"ParticlesDrawOrder]. See [enum ParticlesDrawOrder] for options. Equivalent "
"to [member GPUParticles3D.draw_order]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2140
+#: doc/classes/RenderingServer.xml:2139
msgid ""
"Sets the mesh to be used for the specified draw pass. Equivalent to [member "
"GPUParticles3D.draw_pass_1], [member GPUParticles3D.draw_pass_2], [member "
"GPUParticles3D.draw_pass_3], and [member GPUParticles3D.draw_pass_4]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2151
+#: doc/classes/RenderingServer.xml:2150
msgid ""
"Sets the number of draw passes to use. Equivalent to [member GPUParticles3D."
"draw_passes]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2162
+#: doc/classes/RenderingServer.xml:2161
msgid ""
"Sets the [Transform] that will be used by the particles when they first emit."
msgstr ""
-#: doc/classes/RenderingServer.xml:2173
+#: doc/classes/RenderingServer.xml:2172
msgid ""
"If [code]true[/code], particles will emit over time. Setting to false does "
"not reset the particles, but only stops their emission. Equivalent to "
"[member GPUParticles3D.emitting]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2184
+#: doc/classes/RenderingServer.xml:2183
msgid ""
"Sets the explosiveness ratio. Equivalent to [member GPUParticles3D."
"explosiveness]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2195
+#: doc/classes/RenderingServer.xml:2194
msgid ""
"Sets the frame rate that the particle system rendering will be fixed to. "
"Equivalent to [member GPUParticles3D.fixed_fps]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2206
+#: doc/classes/RenderingServer.xml:2205
msgid ""
"If [code]true[/code], uses fractional delta which smooths the movement of "
"the particles. Equivalent to [member GPUParticles3D.fract_delta]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2217
+#: doc/classes/RenderingServer.xml:2216
msgid ""
"Sets the lifetime of each particle in the system. Equivalent to [member "
"GPUParticles3D.lifetime]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2228
+#: doc/classes/RenderingServer.xml:2227
msgid ""
"If [code]true[/code], particles will emit once and then stop. Equivalent to "
"[member GPUParticles3D.one_shot]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2239
+#: doc/classes/RenderingServer.xml:2238
msgid ""
"Sets the preprocess time for the particles animation. This lets you delay "
"starting an animation until after the particles have begun emitting. "
"Equivalent to [member GPUParticles3D.preprocess]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2250
+#: doc/classes/RenderingServer.xml:2249
msgid ""
"Sets the material for processing the particles. Note: this is not the "
"material used to draw the materials. Equivalent to [member GPUParticles3D."
"process_material]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2261
+#: doc/classes/RenderingServer.xml:2260
msgid ""
"Sets the emission randomness ratio. This randomizes the emission of "
"particles within their phase. Equivalent to [member GPUParticles3D."
"randomness]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2272
+#: doc/classes/RenderingServer.xml:2271
msgid ""
"Sets the speed scale of the particle system. Equivalent to [member "
"GPUParticles3D.speed_scale]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2283
+#: doc/classes/RenderingServer.xml:2282
msgid ""
"If [code]true[/code], particles use local coordinates. If [code]false[/code] "
"they use global coordinates. Equivalent to [member GPUParticles3D."
"local_coords]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2290
+#: doc/classes/RenderingServer.xml:2289
msgid ""
"Creates a reflection probe and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42640,85 +43330,64 @@ msgid ""
"[method instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2303
+#: doc/classes/RenderingServer.xml:2332
msgid ""
"If [code]true[/code], reflections will ignore sky contribution. Equivalent "
-"to [member ReflectionProbe.interior_enable]."
+"to [member ReflectionProbe.interior]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2314
+#: doc/classes/RenderingServer.xml:2343
msgid ""
"Sets the render cull mask for this reflection probe. Only instances with a "
"matching cull mask will be rendered by this probe. Equivalent to [member "
"ReflectionProbe.cull_mask]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2325
+#: doc/classes/RenderingServer.xml:2354
msgid ""
"If [code]true[/code], uses box projection. This can make reflections look "
"more correct in certain situations. Equivalent to [member ReflectionProbe."
"box_projection]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2336
+#: doc/classes/RenderingServer.xml:2365
msgid ""
"If [code]true[/code], computes shadows in the reflection probe. This makes "
"the reflection much slower to compute. Equivalent to [member ReflectionProbe."
"enable_shadows]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2347
+#: doc/classes/RenderingServer.xml:2376
msgid ""
"Sets the size of the area that the reflection probe will capture. Equivalent "
"to [member ReflectionProbe.extents]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2358
+#: doc/classes/RenderingServer.xml:2387
msgid ""
"Sets the intensity of the reflection probe. Intensity modulates the strength "
"of the reflection. Equivalent to [member ReflectionProbe.intensity]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2369
-msgid ""
-"Sets the ambient light color for this reflection probe when set to interior "
-"mode. Equivalent to [member ReflectionProbe.interior_ambient_color]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2380
-msgid ""
-"Sets the energy multiplier for this reflection probes ambient light "
-"contribution when set to interior mode. Equivalent to [member "
-"ReflectionProbe.interior_ambient_energy]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2391
-msgid ""
-"Sets the contribution value for how much the reflection affects the ambient "
-"light for this reflection probe when set to interior mode. Useful so that "
-"ambient light matches the color of the room. Equivalent to [member "
-"ReflectionProbe.interior_ambient_contrib]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2402
+#: doc/classes/RenderingServer.xml:2398
msgid ""
"Sets the max distance away from the probe an object can be before it is "
"culled. Equivalent to [member ReflectionProbe.max_distance]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2413
+#: doc/classes/RenderingServer.xml:2409
msgid ""
"Sets the origin offset to be used when this reflection probe is in box "
"project mode. Equivalent to [member ReflectionProbe.origin_offset]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2424
+#: doc/classes/RenderingServer.xml:2420
msgid ""
"Sets how often the reflection probe updates. Can either be once or every "
"frame. See [enum ReflectionProbeUpdateMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2437
+#: doc/classes/RenderingServer.xml:2433
msgid ""
"Schedules a callback to the corresponding named [code]method[/code] on "
"[code]where[/code] after a frame has been drawn.\n"
@@ -42726,7 +43395,7 @@ msgid ""
"[code]userdata[/code]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2445
+#: doc/classes/RenderingServer.xml:2441
msgid ""
"Creates a scenario and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all "
@@ -42736,24 +43405,24 @@ msgid ""
"The scenario is the 3D world that all the visual instances exist in."
msgstr ""
-#: doc/classes/RenderingServer.xml:2458
+#: doc/classes/RenderingServer.xml:2454
msgid ""
"Sets the [enum ScenarioDebugMode] for this scenario. See [enum "
"ScenarioDebugMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2469
+#: doc/classes/RenderingServer.xml:2465
msgid "Sets the environment that will be used with this scenario."
msgstr ""
-#: doc/classes/RenderingServer.xml:2480
+#: doc/classes/RenderingServer.xml:2476
msgid ""
"Sets the fallback environment to be used by this scenario. The fallback "
"environment is used if no environment is set. Internally, this is used by "
"the editor to provide a default environment."
msgstr ""
-#: doc/classes/RenderingServer.xml:2495
+#: doc/classes/RenderingServer.xml:2491
msgid ""
"Sets a boot image. The color defines the background color. If [code]scale[/"
"code] is [code]true[/code], the image will be scaled to fit the screen size. "
@@ -42762,19 +43431,19 @@ msgid ""
"the image will be scaled with nearest-neighbor interpolation."
msgstr ""
-#: doc/classes/RenderingServer.xml:2504
+#: doc/classes/RenderingServer.xml:2500
msgid ""
"If [code]true[/code], the engine will generate wireframes for use with the "
"wireframe debug mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:2513
+#: doc/classes/RenderingServer.xml:2509
msgid ""
"Sets the default clear color which is used when a specific clear color has "
"not been selected."
msgstr ""
-#: doc/classes/RenderingServer.xml:2520
+#: doc/classes/RenderingServer.xml:2516
msgid ""
"Creates an empty shader and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42783,47 +43452,47 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2530
+#: doc/classes/RenderingServer.xml:2526
msgid "Returns a shader's code."
msgstr ""
-#: doc/classes/RenderingServer.xml:2541
+#: doc/classes/RenderingServer.xml:2537
msgid "Returns a default texture from a shader searched by name."
msgstr ""
-#: doc/classes/RenderingServer.xml:2560
+#: doc/classes/RenderingServer.xml:2556
msgid "Returns the parameters of a shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:2571
+#: doc/classes/RenderingServer.xml:2567
msgid "Sets a shader's code."
msgstr ""
-#: doc/classes/RenderingServer.xml:2584
+#: doc/classes/RenderingServer.xml:2580
msgid "Sets a shader's default texture. Overwrites the texture given by name."
msgstr ""
-#: doc/classes/RenderingServer.xml:2597
+#: doc/classes/RenderingServer.xml:2593
msgid "Allocates the GPU buffers for this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2608
+#: doc/classes/RenderingServer.xml:2604
msgid "Returns the [Transform] set for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2619
+#: doc/classes/RenderingServer.xml:2615
msgid "Returns the [Transform2D] set for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2632
+#: doc/classes/RenderingServer.xml:2628
msgid "Sets the [Transform] for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2645
+#: doc/classes/RenderingServer.xml:2641
msgid "Sets the [Transform2D] for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2652
+#: doc/classes/RenderingServer.xml:2648
msgid ""
"Creates a skeleton and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all "
@@ -42832,11 +43501,11 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2662
+#: doc/classes/RenderingServer.xml:2658
msgid "Returns the number of bones allocated for this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2669
+#: doc/classes/RenderingServer.xml:2665
msgid ""
"Creates an empty sky and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all [code]sky_*[/"
@@ -42845,13 +43514,13 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2681
+#: doc/classes/RenderingServer.xml:2677
msgid ""
"Sets the material that the sky uses to render the background and reflection "
"maps."
msgstr ""
-#: doc/classes/RenderingServer.xml:2688
+#: doc/classes/RenderingServer.xml:2684
msgid ""
"Creates a spot light and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID can be used in most [code]light_*[/"
@@ -42862,15 +43531,15 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2717
+#: doc/classes/RenderingServer.xml:2713
msgid "Sets a viewport's camera."
msgstr ""
-#: doc/classes/RenderingServer.xml:2728
+#: doc/classes/RenderingServer.xml:2724
msgid "Sets a viewport's canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:2741
+#: doc/classes/RenderingServer.xml:2737
msgid ""
"Copies the viewport to a region of the screen specified by [code]rect[/"
"code]. If [method viewport_set_render_direct_to_screen] is [code]true[/"
@@ -42892,7 +43561,7 @@ msgid ""
"viewport_set_render_direct_to_screen]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2755
+#: doc/classes/RenderingServer.xml:2751
msgid ""
"Creates an empty viewport and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42901,72 +43570,72 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2767
+#: doc/classes/RenderingServer.xml:2763
msgid ""
"Returns a viewport's render information. For options, see the [enum "
"ViewportRenderInfo] constants."
msgstr ""
-#: doc/classes/RenderingServer.xml:2776
+#: doc/classes/RenderingServer.xml:2772
msgid "Returns the viewport's last rendered frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:2787
+#: doc/classes/RenderingServer.xml:2783
msgid "Detaches a viewport from a canvas and vice versa."
msgstr ""
-#: doc/classes/RenderingServer.xml:2798
+#: doc/classes/RenderingServer.xml:2794
msgid "If [code]true[/code], sets the viewport active, else sets it inactive."
msgstr ""
-#: doc/classes/RenderingServer.xml:2813
+#: doc/classes/RenderingServer.xml:2809
msgid ""
"Sets the stacking order for a viewport's canvas.\n"
"[code]layer[/code] is the actual canvas layer, while [code]sublayer[/code] "
"specifies the stacking order of the canvas among those in the same layer."
msgstr ""
-#: doc/classes/RenderingServer.xml:2827
+#: doc/classes/RenderingServer.xml:2823
msgid "Sets the transformation of a viewport's canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:2838
+#: doc/classes/RenderingServer.xml:2834
msgid ""
"Sets the clear mode of a viewport. See [enum ViewportClearMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2849
+#: doc/classes/RenderingServer.xml:2845
msgid ""
"Sets the debug draw mode of a viewport. See [enum ViewportDebugDraw] for "
"options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2860
+#: doc/classes/RenderingServer.xml:2856
msgid ""
"If [code]true[/code], rendering of a viewport's environment is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:2871
+#: doc/classes/RenderingServer.xml:2867
msgid "Sets the viewport's global transformation matrix."
msgstr ""
-#: doc/classes/RenderingServer.xml:2882
+#: doc/classes/RenderingServer.xml:2878
msgid "If [code]true[/code], the viewport's canvas is not rendered."
msgstr ""
-#: doc/classes/RenderingServer.xml:2893
+#: doc/classes/RenderingServer.xml:2889
msgid "Currently unimplemented in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:2904
+#: doc/classes/RenderingServer.xml:2900
msgid "Sets the anti-aliasing mode. See [enum ViewportMSAA] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2915
+#: doc/classes/RenderingServer.xml:2911
msgid "Sets the viewport's parent to another viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:2926
+#: doc/classes/RenderingServer.xml:2922
msgid ""
"If [code]true[/code], render the contents of the viewport directly to "
"screen. This allows a low-level optimization where you can skip drawing a "
@@ -42982,455 +43651,455 @@ msgid ""
"significantly larger than the window size."
msgstr ""
-#: doc/classes/RenderingServer.xml:2937
+#: doc/classes/RenderingServer.xml:2933
msgid ""
"Sets a viewport's scenario.\n"
"The scenario contains information about the [enum ScenarioDebugMode], "
"environment information, reflection atlas etc."
msgstr ""
-#: doc/classes/RenderingServer.xml:2951
+#: doc/classes/RenderingServer.xml:2947
msgid "Sets the shadow atlas quadrant's subdivision."
msgstr ""
-#: doc/classes/RenderingServer.xml:2962
+#: doc/classes/RenderingServer.xml:2958
msgid ""
"Sets the size of the shadow atlas's images (used for omni and spot lights). "
"The value will be rounded up to the nearest power of 2."
msgstr ""
-#: doc/classes/RenderingServer.xml:2975
+#: doc/classes/RenderingServer.xml:2971
msgid "Sets the viewport's width and height."
msgstr ""
-#: doc/classes/RenderingServer.xml:2986
+#: doc/classes/RenderingServer.xml:2982
msgid ""
"If [code]true[/code], the viewport renders its background as transparent."
msgstr ""
-#: doc/classes/RenderingServer.xml:2997
+#: doc/classes/RenderingServer.xml:2993
msgid ""
"Sets when the viewport should be updated. See [enum ViewportUpdateMode] "
"constants for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:3008
+#: doc/classes/RenderingServer.xml:3004
msgid ""
"If [code]true[/code], the viewport uses augmented or virtual reality "
"technologies. See [XRInterface]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3014
+#: doc/classes/RenderingServer.xml:3010
msgid ""
"If [code]false[/code], disables rendering completely, but the engine logic "
"is still being processed. You can call [method force_draw] to draw a frame "
"even with rendering disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3020
+#: doc/classes/RenderingServer.xml:3016
msgid ""
"Emitted at the end of the frame, after the RenderingServer has finished "
"updating all the Viewports."
msgstr ""
-#: doc/classes/RenderingServer.xml:3025
+#: doc/classes/RenderingServer.xml:3021
msgid ""
"Emitted at the beginning of the frame, before the RenderingServer updates "
"all the Viewports."
msgstr ""
-#: doc/classes/RenderingServer.xml:3031
+#: doc/classes/RenderingServer.xml:3027
msgid "Marks an error that shows that the index array is empty."
msgstr ""
-#: doc/classes/RenderingServer.xml:3034
+#: doc/classes/RenderingServer.xml:3030
msgid "Number of weights/bones per vertex."
msgstr ""
-#: doc/classes/RenderingServer.xml:3037
+#: doc/classes/RenderingServer.xml:3033
msgid "The minimum Z-layer for canvas items."
msgstr ""
-#: doc/classes/RenderingServer.xml:3040
+#: doc/classes/RenderingServer.xml:3036
msgid "The maximum Z-layer for canvas items."
msgstr ""
-#: doc/classes/RenderingServer.xml:3043
+#: doc/classes/RenderingServer.xml:3039
msgid ""
"Max number of glow levels that can be used with glow post-process effect."
msgstr ""
-#: doc/classes/RenderingServer.xml:3046
+#: doc/classes/RenderingServer.xml:3042
msgid "Unused enum in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:3067
+#: doc/classes/RenderingServer.xml:3063
msgid "Shader is a 3D shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3070
+#: doc/classes/RenderingServer.xml:3066
msgid "Shader is a 2D shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3073
+#: doc/classes/RenderingServer.xml:3069
msgid "Shader is a particle shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3076
+#: doc/classes/RenderingServer.xml:3072
msgid "Shader is a sky shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3079
+#: doc/classes/RenderingServer.xml:3075
msgid "Represents the size of the [enum ShaderMode] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3082
+#: doc/classes/RenderingServer.xml:3078
msgid "The minimum renderpriority of all materials."
msgstr ""
-#: doc/classes/RenderingServer.xml:3085
+#: doc/classes/RenderingServer.xml:3081
msgid "The maximum renderpriority of all materials."
msgstr ""
-#: doc/classes/RenderingServer.xml:3088
+#: doc/classes/RenderingServer.xml:3084
msgid "Array is a vertex array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3091
+#: doc/classes/RenderingServer.xml:3087
msgid "Array is a normal array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3094
+#: doc/classes/RenderingServer.xml:3090
msgid "Array is a tangent array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3097
+#: doc/classes/RenderingServer.xml:3093
msgid "Array is a color array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3100
+#: doc/classes/RenderingServer.xml:3096
msgid "Array is an UV coordinates array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3103
+#: doc/classes/RenderingServer.xml:3099
msgid "Array is an UV coordinates array for the second UV coordinates."
msgstr ""
-#: doc/classes/RenderingServer.xml:3106
+#: doc/classes/RenderingServer.xml:3102
msgid "Array contains bone information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3109
+#: doc/classes/RenderingServer.xml:3105
msgid "Array is weight information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3112
+#: doc/classes/RenderingServer.xml:3108
msgid "Array is index array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3118
+#: doc/classes/RenderingServer.xml:3114
msgid "Flag used to mark a vertex array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3121
+#: doc/classes/RenderingServer.xml:3117
msgid "Flag used to mark a normal array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3124
+#: doc/classes/RenderingServer.xml:3120
msgid "Flag used to mark a tangent array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3127
+#: doc/classes/RenderingServer.xml:3123
msgid "Flag used to mark a color array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3130
+#: doc/classes/RenderingServer.xml:3126
msgid "Flag used to mark an UV coordinates array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3133
+#: doc/classes/RenderingServer.xml:3129
msgid ""
"Flag used to mark an UV coordinates array for the second UV coordinates."
msgstr ""
-#: doc/classes/RenderingServer.xml:3136
+#: doc/classes/RenderingServer.xml:3132
msgid "Flag used to mark a bone information array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3139
+#: doc/classes/RenderingServer.xml:3135
msgid "Flag used to mark a weights array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3142
+#: doc/classes/RenderingServer.xml:3138
msgid "Flag used to mark an index array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3171
+#: doc/classes/RenderingServer.xml:3167
msgid "Primitive to draw consists of points."
msgstr ""
-#: doc/classes/RenderingServer.xml:3174
+#: doc/classes/RenderingServer.xml:3170
msgid "Primitive to draw consists of lines."
msgstr ""
-#: doc/classes/RenderingServer.xml:3177
+#: doc/classes/RenderingServer.xml:3173
msgid "Primitive to draw consists of a line strip from start to end."
msgstr ""
-#: doc/classes/RenderingServer.xml:3180
+#: doc/classes/RenderingServer.xml:3176
msgid "Primitive to draw consists of triangles."
msgstr ""
-#: doc/classes/RenderingServer.xml:3183
+#: doc/classes/RenderingServer.xml:3179
msgid ""
"Primitive to draw consists of a triangle strip (the last 3 vertices are "
"always combined to make a triangle)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3186
+#: doc/classes/RenderingServer.xml:3182
msgid "Represents the size of the [enum PrimitiveType] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3195
+#: doc/classes/RenderingServer.xml:3191
msgid "Use [Transform2D] to store MultiMesh transform."
msgstr ""
-#: doc/classes/RenderingServer.xml:3198
+#: doc/classes/RenderingServer.xml:3194
msgid "Use [Transform] to store MultiMesh transform."
msgstr ""
-#: doc/classes/RenderingServer.xml:3201
+#: doc/classes/RenderingServer.xml:3197
msgid "Is a directional (sun) light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3204
+#: doc/classes/RenderingServer.xml:3200
msgid "Is an omni light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3207
+#: doc/classes/RenderingServer.xml:3203
msgid "Is a spot light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3210
+#: doc/classes/RenderingServer.xml:3206
msgid "The light's energy."
msgstr ""
-#: doc/classes/RenderingServer.xml:3215
+#: doc/classes/RenderingServer.xml:3211
msgid "The light's influence on specularity."
msgstr ""
-#: doc/classes/RenderingServer.xml:3218
+#: doc/classes/RenderingServer.xml:3214
msgid "The light's range."
msgstr ""
-#: doc/classes/RenderingServer.xml:3221
+#: doc/classes/RenderingServer.xml:3217
msgid ""
"The size of the light when using spot light or omni light. The angular size "
"of the light when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3224
+#: doc/classes/RenderingServer.xml:3220
msgid "The light's attenuation."
msgstr ""
-#: doc/classes/RenderingServer.xml:3227
+#: doc/classes/RenderingServer.xml:3223
msgid "The spotlight's angle."
msgstr ""
-#: doc/classes/RenderingServer.xml:3230
+#: doc/classes/RenderingServer.xml:3226
msgid "The spotlight's attenuation."
msgstr ""
-#: doc/classes/RenderingServer.xml:3233
+#: doc/classes/RenderingServer.xml:3229
msgid "Max distance that shadows will be rendered."
msgstr ""
-#: doc/classes/RenderingServer.xml:3236
+#: doc/classes/RenderingServer.xml:3232
msgid "Proportion of shadow atlas occupied by the first split."
msgstr ""
-#: doc/classes/RenderingServer.xml:3239
+#: doc/classes/RenderingServer.xml:3235
msgid "Proportion of shadow atlas occupied by the second split."
msgstr ""
-#: doc/classes/RenderingServer.xml:3242
+#: doc/classes/RenderingServer.xml:3238
msgid ""
"Proportion of shadow atlas occupied by the third split. The fourth split "
"occupies the rest."
msgstr ""
-#: doc/classes/RenderingServer.xml:3245
+#: doc/classes/RenderingServer.xml:3241
msgid ""
"Proportion of shadow max distance where the shadow will start to fade out."
msgstr ""
-#: doc/classes/RenderingServer.xml:3248
+#: doc/classes/RenderingServer.xml:3244
msgid ""
"Normal bias used to offset shadow lookup by object normal. Can be used to "
"fix self-shadowing artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3251
+#: doc/classes/RenderingServer.xml:3247
msgid "Bias the shadow lookup to fix self-shadowing artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3257
+#: doc/classes/RenderingServer.xml:3253
msgid ""
"Blurs the edges of the shadow. Can be used to hide pixel artifacts in low "
"resolution shadow maps. A high value can make shadows appear grainy and can "
"cause other unwanted artifacts. Try to keep as near default as possible."
msgstr ""
-#: doc/classes/RenderingServer.xml:3262
+#: doc/classes/RenderingServer.xml:3258
msgid "Represents the size of the [enum LightParam] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3265
+#: doc/classes/RenderingServer.xml:3267
msgid "Use a dual paraboloid shadow map for omni lights."
msgstr ""
-#: doc/classes/RenderingServer.xml:3268
+#: doc/classes/RenderingServer.xml:3270
msgid ""
"Use a cubemap shadow map for omni lights. Slower but better quality than "
"dual paraboloid."
msgstr ""
-#: doc/classes/RenderingServer.xml:3271
+#: doc/classes/RenderingServer.xml:3273
msgid "Use orthogonal shadow projection for directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3274
+#: doc/classes/RenderingServer.xml:3276
msgid "Use 2 splits for shadow projection when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3277
+#: doc/classes/RenderingServer.xml:3279
msgid "Use 4 splits for shadow projection when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3280
+#: doc/classes/RenderingServer.xml:3282
msgid ""
"Keeps shadows stable as camera moves but has lower effective resolution."
msgstr ""
-#: doc/classes/RenderingServer.xml:3283
+#: doc/classes/RenderingServer.xml:3285
msgid ""
"Optimize use of shadow maps, increasing the effective resolution. But may "
"result in shadows moving or flickering slightly."
msgstr ""
-#: doc/classes/RenderingServer.xml:3286
+#: doc/classes/RenderingServer.xml:3288
msgid "Reflection probe will update reflections once and then stop."
msgstr ""
-#: doc/classes/RenderingServer.xml:3289
+#: doc/classes/RenderingServer.xml:3291
msgid ""
"Reflection probe will update each frame. This mode is necessary to capture "
"moving objects."
msgstr ""
-#: doc/classes/RenderingServer.xml:3302
+#: doc/classes/RenderingServer.xml:3310
msgid "Draw particles in the order that they appear in the particles array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3305
+#: doc/classes/RenderingServer.xml:3313
msgid "Sort particles based on their lifetime."
msgstr ""
-#: doc/classes/RenderingServer.xml:3308
+#: doc/classes/RenderingServer.xml:3316
msgid "Sort particles based on their distance to the camera."
msgstr ""
-#: doc/classes/RenderingServer.xml:3311
+#: doc/classes/RenderingServer.xml:3319
msgid "Do not update the viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:3314
+#: doc/classes/RenderingServer.xml:3322
msgid "Update the viewport once then set to disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3317
+#: doc/classes/RenderingServer.xml:3325
msgid "Update the viewport whenever it is visible."
msgstr ""
-#: doc/classes/RenderingServer.xml:3322
+#: doc/classes/RenderingServer.xml:3330
msgid "Always update the viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:3325
+#: doc/classes/RenderingServer.xml:3333
msgid "The viewport is always cleared before drawing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3328
+#: doc/classes/RenderingServer.xml:3336
msgid "The viewport is never cleared before drawing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3331
+#: doc/classes/RenderingServer.xml:3339
msgid ""
"The viewport is cleared once, then the clear mode is set to [constant "
"VIEWPORT_CLEAR_NEVER]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3334
+#: doc/classes/RenderingServer.xml:3342
msgid "Multisample antialiasing is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3337
+#: doc/classes/RenderingServer.xml:3345
msgid "Multisample antialiasing uses 2 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3340
+#: doc/classes/RenderingServer.xml:3348
msgid "Multisample antialiasing uses 4 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3343
+#: doc/classes/RenderingServer.xml:3351
msgid "Multisample antialiasing uses 8 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3346
+#: doc/classes/RenderingServer.xml:3354
msgid "Multisample antialiasing uses 16 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3357
+#: doc/classes/RenderingServer.xml:3365
msgid "Number of objects drawn in a single frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3360
+#: doc/classes/RenderingServer.xml:3368
msgid "Number of vertices drawn in a single frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3363
+#: doc/classes/RenderingServer.xml:3371
msgid "Number of material changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3366
+#: doc/classes/RenderingServer.xml:3374
msgid "Number of shader changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3369
+#: doc/classes/RenderingServer.xml:3377
msgid "Number of surface changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3372
+#: doc/classes/RenderingServer.xml:3380
msgid "Number of draw calls during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3375
+#: doc/classes/RenderingServer.xml:3383
msgid "Represents the size of the [enum ViewportRenderInfo] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3378
+#: doc/classes/RenderingServer.xml:3386
msgid "Debug draw is disabled. Default setting."
msgstr ""
-#: doc/classes/RenderingServer.xml:3381 doc/classes/Viewport.xml:348
+#: doc/classes/RenderingServer.xml:3389 doc/classes/Viewport.xml:348
msgid "Objects are displayed without light information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3384
+#: doc/classes/RenderingServer.xml:3392
msgid "Objects are displayed with only light information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3387 doc/classes/Viewport.xml:353
+#: doc/classes/RenderingServer.xml:3395 doc/classes/Viewport.xml:353
msgid ""
"Objects are displayed semi-transparent with additive blending so you can see "
"where they are drawing over top of one another. A higher overdraw means you "
@@ -43438,41 +44107,41 @@ msgid ""
"others."
msgstr ""
-#: doc/classes/RenderingServer.xml:3390
+#: doc/classes/RenderingServer.xml:3398
msgid "Debug draw draws objects in wireframe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3393
+#: doc/classes/RenderingServer.xml:3401
msgid ""
"Normal buffer is drawn instead of regular scene so you can see the per-pixel "
"normals that will be used by post-processing effects."
msgstr ""
-#: doc/classes/RenderingServer.xml:3396 doc/classes/Viewport.xml:361
+#: doc/classes/RenderingServer.xml:3404 doc/classes/Viewport.xml:361
msgid "Objects are displayed with only the albedo value from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3399 doc/classes/Viewport.xml:364
+#: doc/classes/RenderingServer.xml:3407 doc/classes/Viewport.xml:364
msgid "Objects are displayed with only the lighting value from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3402 doc/classes/Viewport.xml:367
+#: doc/classes/RenderingServer.xml:3410 doc/classes/Viewport.xml:367
msgid "Objects are displayed with only the emission color from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3405 doc/classes/Viewport.xml:370
+#: doc/classes/RenderingServer.xml:3413 doc/classes/Viewport.xml:370
msgid ""
"Draws the shadow atlas that stores shadows from [OmniLight3D]s and "
"[SpotLight3D]s in the upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3408 doc/classes/Viewport.xml:373
+#: doc/classes/RenderingServer.xml:3416 doc/classes/Viewport.xml:373
msgid ""
"Draws the shadow atlas that stores shadows from [DirectionalLight3D]s in the "
"upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3413
+#: doc/classes/RenderingServer.xml:3421
msgid ""
"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 "
@@ -43480,21 +44149,14 @@ msgid ""
"your [WorldEnvironment]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3416 doc/classes/Viewport.xml:381
-msgid ""
-"Draws the roughness limiter post process over the Viewport so you can see "
-"where it has an effect. It must be enabled in [member ProjectSettings."
-"rendering/quality/screen_filters/screen_space_roughness_limiter] to work."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:3419
+#: doc/classes/RenderingServer.xml:3424
msgid ""
"Colors each PSSM split for the [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."
msgstr ""
-#: doc/classes/RenderingServer.xml:3424
+#: doc/classes/RenderingServer.xml:3435
msgid ""
"Uses high quality importance sampling to process the radiance map. In "
"general, this results in much higher quality than [constant Sky."
@@ -43505,7 +44167,7 @@ msgid ""
"ggx_samples]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3427
+#: doc/classes/RenderingServer.xml:3438
msgid ""
"Uses the fast filtering algorithm to process the radiance map. In general "
"this results in lower quality, but substantially faster run times.\n"
@@ -43513,347 +44175,347 @@ msgid ""
"[member Sky.radiance_size] must be set to [constant Sky.RADIANCE_SIZE_256]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3431
+#: doc/classes/RenderingServer.xml:3442
msgid "Use the clear color as background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3434
+#: doc/classes/RenderingServer.xml:3445
msgid "Use a specified color as the background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3437
+#: doc/classes/RenderingServer.xml:3448
msgid "Use a sky resource for the background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3440
+#: doc/classes/RenderingServer.xml:3451
msgid ""
"Use a specified canvas layer as the background. This can be useful for "
"instantiating a 2D scene in a 3D world."
msgstr ""
-#: doc/classes/RenderingServer.xml:3443
+#: doc/classes/RenderingServer.xml:3454
msgid ""
"Do not clear the background, use whatever was rendered last frame as the "
"background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3449
+#: doc/classes/RenderingServer.xml:3460
msgid "Represents the size of the [enum EnvironmentBG] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3488
+#: doc/classes/RenderingServer.xml:3499
msgid "Output color as they came in."
msgstr ""
-#: doc/classes/RenderingServer.xml:3491
+#: doc/classes/RenderingServer.xml:3502
msgid "Use the Reinhard tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3494
+#: doc/classes/RenderingServer.xml:3505
msgid "Use the filmic tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3497
+#: doc/classes/RenderingServer.xml:3508
msgid "Use the ACES tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3508
+#: doc/classes/RenderingServer.xml:3519
msgid "Disables the blur set for SSAO. Will make SSAO look noisier."
msgstr ""
-#: doc/classes/RenderingServer.xml:3511
+#: doc/classes/RenderingServer.xml:3522
msgid "Perform a 1x1 blur on the SSAO output."
msgstr ""
-#: doc/classes/RenderingServer.xml:3514
+#: doc/classes/RenderingServer.xml:3525
msgid "Performs a 2x2 blur on the SSAO output."
msgstr ""
-#: doc/classes/RenderingServer.xml:3517
+#: doc/classes/RenderingServer.xml:3528
msgid "Performs a 3x3 blur on the SSAO output. Use this for smoothest SSAO."
msgstr ""
-#: doc/classes/RenderingServer.xml:3520
+#: doc/classes/RenderingServer.xml:3531
msgid "Lowest quality of screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3523
+#: doc/classes/RenderingServer.xml:3534
msgid "Medium quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3526
+#: doc/classes/RenderingServer.xml:3537
msgid "High quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3529
+#: doc/classes/RenderingServer.xml:3540
msgid "Highest quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3540
+#: doc/classes/RenderingServer.xml:3551
msgid ""
"Lowest quality DOF blur. This is the fastest setting, but you may be able to "
"see filtering artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3543
+#: doc/classes/RenderingServer.xml:3554
msgid "Low quality DOF blur."
msgstr ""
-#: doc/classes/RenderingServer.xml:3546
+#: doc/classes/RenderingServer.xml:3557
msgid "Medium quality DOF blur."
msgstr ""
-#: doc/classes/RenderingServer.xml:3549
+#: doc/classes/RenderingServer.xml:3560
msgid ""
"Highest quality DOF blur. Results in the smoothest looking blur by taking "
"the most samples, but is also significantly slower."
msgstr ""
-#: doc/classes/RenderingServer.xml:3552
+#: doc/classes/RenderingServer.xml:3563
msgid ""
"Calculate the DOF blur using a box filter. The fastest option, but results "
"in obvious lines in blur pattern."
msgstr ""
-#: doc/classes/RenderingServer.xml:3555
+#: doc/classes/RenderingServer.xml:3566
msgid "Calculates DOF blur using a hexagon shaped filter."
msgstr ""
-#: doc/classes/RenderingServer.xml:3558
+#: doc/classes/RenderingServer.xml:3569
msgid ""
"Calculates DOF blur using a circle shaped filter. Best quality and most "
"realistic, but slowest. Use only for areas where a lot of performance can be "
"dedicated to post-processing (e.g. cutscenes)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3573
+#: doc/classes/RenderingServer.xml:3584
msgid "Do not use a debug mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:3576
+#: doc/classes/RenderingServer.xml:3587
msgid "Draw all objects as wireframe models."
msgstr ""
-#: doc/classes/RenderingServer.xml:3579
+#: doc/classes/RenderingServer.xml:3590
msgid ""
"Draw all objects in a way that displays how much overdraw is occurring. "
"Overdraw occurs when a section of pixels is drawn and shaded and then "
"another object covers it up. To optimize a scene, you should reduce overdraw."
msgstr ""
-#: doc/classes/RenderingServer.xml:3582
+#: doc/classes/RenderingServer.xml:3593
msgid ""
"Draw all objects without shading. Equivalent to setting all objects shaders "
"to [code]unshaded[/code]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3585
+#: doc/classes/RenderingServer.xml:3596
msgid "The instance does not have a type."
msgstr ""
-#: doc/classes/RenderingServer.xml:3588
+#: doc/classes/RenderingServer.xml:3599
msgid "The instance is a mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:3591
+#: doc/classes/RenderingServer.xml:3602
msgid "The instance is a multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:3594
+#: doc/classes/RenderingServer.xml:3605
msgid "The instance is an immediate geometry."
msgstr ""
-#: doc/classes/RenderingServer.xml:3597
+#: doc/classes/RenderingServer.xml:3608
msgid "The instance is a particle emitter."
msgstr ""
-#: doc/classes/RenderingServer.xml:3600
+#: doc/classes/RenderingServer.xml:3611
msgid "The instance is a light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3603
+#: doc/classes/RenderingServer.xml:3614
msgid "The instance is a reflection probe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3606
+#: doc/classes/RenderingServer.xml:3617
msgid "The instance is a decal."
msgstr ""
-#: doc/classes/RenderingServer.xml:3609
+#: doc/classes/RenderingServer.xml:3620
msgid "The instance is a GI probe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3612
+#: doc/classes/RenderingServer.xml:3623
msgid "The instance is a lightmap."
msgstr ""
-#: doc/classes/RenderingServer.xml:3615
+#: doc/classes/RenderingServer.xml:3626
msgid "Represents the size of the [enum InstanceType] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3618
+#: doc/classes/RenderingServer.xml:3629
msgid ""
"A combination of the flags of geometry instances (mesh, multimesh, immediate "
"and particles)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3621
+#: doc/classes/RenderingServer.xml:3632
msgid "Allows the instance to be used in baked lighting."
msgstr ""
-#: doc/classes/RenderingServer.xml:3624
+#: doc/classes/RenderingServer.xml:3635
msgid "Allows the instance to be used with dynamic global illumination."
msgstr ""
-#: doc/classes/RenderingServer.xml:3627
+#: doc/classes/RenderingServer.xml:3638
msgid "When set, manually requests to draw geometry on next frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3630
+#: doc/classes/RenderingServer.xml:3641
msgid "Represents the size of the [enum InstanceFlags] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3633
+#: doc/classes/RenderingServer.xml:3644
msgid "Disable shadows from this instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:3636
+#: doc/classes/RenderingServer.xml:3647
msgid "Cast shadows from this instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:3639
+#: doc/classes/RenderingServer.xml:3650
msgid ""
"Disable backface culling when rendering the shadow of the object. This is "
"slightly slower but may result in more correct shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3642
+#: doc/classes/RenderingServer.xml:3653
msgid ""
"Only render the shadows from the object. The object itself will not be drawn."
msgstr ""
-#: doc/classes/RenderingServer.xml:3645
+#: doc/classes/RenderingServer.xml:3656
msgid "The nine patch gets stretched where needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3648
+#: doc/classes/RenderingServer.xml:3659
msgid "The nine patch gets filled with tiles where needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3651
+#: doc/classes/RenderingServer.xml:3662
msgid ""
"The nine patch gets filled with tiles where needed and stretches them a bit "
"if needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3654
+#: doc/classes/RenderingServer.xml:3665
msgid "Uses the default filter mode for this [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3666 doc/classes/Viewport.xml:399
+#: doc/classes/RenderingServer.xml:3677 doc/classes/Viewport.xml:402
msgid ""
"The texture filter blends between the nearest 4 pixels and between the "
"nearest 2 mipmaps."
msgstr ""
-#: doc/classes/RenderingServer.xml:3675
+#: doc/classes/RenderingServer.xml:3686
msgid "Max value for [enum CanvasItemTextureFilter] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3678
+#: doc/classes/RenderingServer.xml:3689
msgid "Uses the default repeat mode for this [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3681 doc/classes/Viewport.xml:405
+#: doc/classes/RenderingServer.xml:3692 doc/classes/Viewport.xml:408
msgid ""
"Disables textures repeating. Instead, when reading UVs outside the 0-1 "
"range, the value will be clamped to the edge of the texture, resulting in a "
"stretched out look at the borders of the texture."
msgstr ""
-#: doc/classes/RenderingServer.xml:3687 doc/classes/Viewport.xml:411
+#: doc/classes/RenderingServer.xml:3698 doc/classes/Viewport.xml:414
msgid ""
"Flip the texture when repeating so that the edge lines up instead of "
"abruptly changing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3690
+#: doc/classes/RenderingServer.xml:3701
msgid "Max value for [enum CanvasItemTextureRepeat] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3693
+#: doc/classes/RenderingServer.xml:3704
msgid "Adds light color additive to the canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:3696
+#: doc/classes/RenderingServer.xml:3707
msgid "Adds light color subtractive to the canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:3699
+#: doc/classes/RenderingServer.xml:3710
msgid "The light adds color depending on transparency."
msgstr ""
-#: doc/classes/RenderingServer.xml:3702
+#: doc/classes/RenderingServer.xml:3713
msgid "The light adds color depending on mask."
msgstr ""
-#: doc/classes/RenderingServer.xml:3705
+#: doc/classes/RenderingServer.xml:3716
msgid "Do not apply a filter to canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3708
+#: doc/classes/RenderingServer.xml:3719
msgid "Use PCF5 filtering to filter canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3711
+#: doc/classes/RenderingServer.xml:3722
msgid "Use PCF13 filtering to filter canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3714
+#: doc/classes/RenderingServer.xml:3725
msgid "Max value of the [enum CanvasLightShadowFilter] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3717
+#: doc/classes/RenderingServer.xml:3728
msgid "Culling of the canvas occluder is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3720
+#: doc/classes/RenderingServer.xml:3731
msgid "Culling of the canvas occluder is clockwise."
msgstr ""
-#: doc/classes/RenderingServer.xml:3723
+#: doc/classes/RenderingServer.xml:3734
msgid "Culling of the canvas occluder is counterclockwise."
msgstr ""
-#: doc/classes/RenderingServer.xml:3784
+#: doc/classes/RenderingServer.xml:3795
msgid "The amount of objects in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3787
+#: doc/classes/RenderingServer.xml:3798
msgid "The amount of vertices in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3790
+#: doc/classes/RenderingServer.xml:3801
msgid "The amount of modified materials in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3793
+#: doc/classes/RenderingServer.xml:3804
msgid "The amount of shader rebinds in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3796
+#: doc/classes/RenderingServer.xml:3807
msgid "The amount of surface changes in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3799
+#: doc/classes/RenderingServer.xml:3810
msgid "The amount of draw calls in frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3814
+#: doc/classes/RenderingServer.xml:3825
msgid "Hardware supports shaders. This enum is currently unused in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:3817
+#: doc/classes/RenderingServer.xml:3828
msgid ""
"Hardware supports multithreading. This enum is currently unused in Godot 3.x."
msgstr ""
@@ -43865,13 +44527,13 @@ msgstr ""
#: doc/classes/Resource.xml:7
msgid ""
"Resource is the base class for all Godot-specific resource types, serving "
-"primarily as data containers. They are reference counted and freed when no "
-"longer in use. They are also cached once loaded from disk, so that any "
-"further attempts to load a resource from a given path will return the same "
-"reference (all this in contrast to a [Node], which is not reference counted "
-"and can be instanced from disk as many times as desired). Resources can be "
-"saved externally on disk or bundled into another object, such as a [Node] or "
-"another resource."
+"primarily as data containers. Unlike [Object]s, they are reference-counted "
+"and freed when no longer in use. They are also cached once loaded from disk, "
+"so that any further attempts to load a resource from a given path will "
+"return the same reference (all this in contrast to a [Node], which is not "
+"reference-counted and can be instanced from disk as many times as desired). "
+"Resources can be saved externally on disk or bundled into another object, "
+"such as a [Node] or another resource."
msgstr ""
#: doc/classes/Resource.xml:10
@@ -43880,34 +44542,38 @@ msgid ""
"resources.html"
msgstr ""
-#: doc/classes/Resource.xml:17
+#: doc/classes/Resource.xml:18
msgid ""
"Virtual function which can be overridden to customize the behavior value of "
"[method setup_local_to_scene]."
msgstr ""
-#: doc/classes/Resource.xml:26
+#: doc/classes/Resource.xml:27
msgid ""
"Duplicates the resource, returning a new resource. By default, sub-resources "
-"are shared between resource copies for efficiency, this can be changed by "
-"passing [code]true[/code] to the [code]subresources[/code] argument."
+"are shared between resource copies for efficiency. This can be changed by "
+"passing [code]true[/code] to the [code]subresources[/code] argument which "
+"will copy the subresources.\n"
+"[b]Note:[/b] If [code]subresources[/code] is [code]true[/code], this method "
+"will only perform a shallow copy. Nested resources within subresources will "
+"not be duplicated and will still be shared."
msgstr ""
-#: doc/classes/Resource.xml:33
+#: doc/classes/Resource.xml:35
msgid ""
"If [member resource_local_to_scene] is enabled and the resource was loaded "
"from a [PackedScene] instantiation, returns the local scene where this "
"resource's unique copy is in use. Otherwise, returns [code]null[/code]."
msgstr ""
-#: doc/classes/Resource.xml:40
+#: doc/classes/Resource.xml:42
msgid ""
"Returns the RID of the resource (or an empty RID). Many resources (such as "
"[Texture2D], [Mesh], etc) are high-level abstractions of resources stored in "
"a server, so this function will return the original RID."
msgstr ""
-#: doc/classes/Resource.xml:47
+#: doc/classes/Resource.xml:49
msgid ""
"This method is called when a resource with [member resource_local_to_scene] "
"enabled is loaded from a [PackedScene] instantiation. Its behavior can be "
@@ -43917,7 +44583,7 @@ msgid ""
"local viewport."
msgstr ""
-#: doc/classes/Resource.xml:57
+#: doc/classes/Resource.xml:59
msgid ""
"Sets the path of the resource, potentially overriding an existing cache "
"entry for this path. This differs from setting [member resource_path], as "
@@ -43925,25 +44591,25 @@ msgid ""
"given path."
msgstr ""
-#: doc/classes/Resource.xml:63
+#: doc/classes/Resource.xml:65
msgid ""
"If [code]true[/code], the resource will be made unique in each instance of "
"its local scene. It can thus be modified in a scene instance without "
"impacting other instances of that same scene."
msgstr ""
-#: doc/classes/Resource.xml:66
+#: doc/classes/Resource.xml:68
msgid "The name of the resource. This is an optional identifier."
msgstr ""
-#: doc/classes/Resource.xml:69
+#: doc/classes/Resource.xml:71
msgid ""
"The path to the resource. In case it has its own file, it will return its "
"filepath. If it's tied to the scene, it will return the scene's path, "
"followed by the resource's index."
msgstr ""
-#: doc/classes/Resource.xml:75
+#: doc/classes/Resource.xml:77
msgid "Emitted whenever the resource changes."
msgstr ""
@@ -44762,11 +45428,11 @@ msgid ""
"global coordinate system, but is centered at the object's origin."
msgstr ""
-#: doc/classes/RigidBody2D.xml:87
+#: doc/classes/RigidBody2D.xml:87 doc/classes/RigidBody3D.xml:99
msgid ""
-"Returns a list of the bodies colliding with this one. Use [member "
-"contacts_reported] to set the maximum number reported. You must also set "
-"[member contact_monitor] to [code]true[/code].\n"
+"Returns a list of the bodies colliding with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
"For performance, list of collisions is updated once per frame and before the "
"physics step. Consider using signals instead."
@@ -44803,7 +45469,7 @@ msgstr ""
msgid "The body's total applied torque."
msgstr ""
-#: doc/classes/RigidBody2D.xml:130 doc/classes/RigidBody3D.xml:150
+#: doc/classes/RigidBody2D.xml:130 doc/classes/RigidBody3D.xml:157
msgid ""
"If [code]true[/code], the body can enter sleep mode when there is no "
"movement. See [member sleeping]."
@@ -44815,11 +45481,17 @@ msgid ""
"another RigidBody2D. See also [member contacts_reported]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:136
-msgid "The maximum number of contacts to report."
+#: doc/classes/RigidBody2D.xml:136 doc/classes/RigidBody3D.xml:163
+msgid ""
+"The maximum number of contacts that will be recorded. Requires [member "
+"contact_monitor] to be set to [code]true[/code].\n"
+"[b]Note:[/b] The number of contacts is different from the number of "
+"collisions. Collisions between parallel edges will result in two contacts "
+"(one at each end), and collisions between parallel faces will result in four "
+"contacts (one at each corner)."
msgstr ""
-#: doc/classes/RigidBody2D.xml:139
+#: doc/classes/RigidBody2D.xml:140
msgid ""
"Continuous collision detection mode.\n"
"Continuous collision detection tries to predict where a moving body will "
@@ -44829,21 +45501,21 @@ msgid ""
"methods are available. See [enum CCDMode] for details."
msgstr ""
-#: doc/classes/RigidBody2D.xml:143
+#: doc/classes/RigidBody2D.xml:144
msgid ""
"If [code]true[/code], internal force integration is disabled for this body. "
"Aside from collision response, the body will only move as determined by the "
"[method _integrate_forces] function."
msgstr ""
-#: doc/classes/RigidBody2D.xml:146
+#: doc/classes/RigidBody2D.xml:147
msgid ""
"Multiplies the gravity applied to the body. The body's gravity is calculated "
"from the [b]Default Gravity[/b] value in [b]Project > Project Settings > "
"Physics > 2d[/b] and/or any additional gravity vector applied by [Area2D]s."
msgstr ""
-#: doc/classes/RigidBody2D.xml:149
+#: doc/classes/RigidBody2D.xml:150
msgid ""
"The body's moment of inertia. This is like mass, but for rotation: it "
"determines how much torque it takes to rotate the body. The moment of "
@@ -44852,18 +45524,18 @@ msgid ""
"automatically computing it."
msgstr ""
-#: doc/classes/RigidBody2D.xml:152
+#: doc/classes/RigidBody2D.xml:153
msgid ""
"Damps the body's [member linear_velocity]. If [code]-1[/code], the body will "
"use the [b]Default Linear Damp[/b] in [b]Project > Project Settings > "
"Physics > 2d[/b]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:161
+#: doc/classes/RigidBody2D.xml:162
msgid "The body's mode. See [enum Mode] for possible values."
msgstr ""
-#: doc/classes/RigidBody2D.xml:164 doc/classes/RigidBody3D.xml:181
+#: doc/classes/RigidBody2D.xml:165 doc/classes/RigidBody3D.xml:189
#: doc/classes/StaticBody2D.xml:22 doc/classes/StaticBody3D.xml:22
msgid ""
"The physics material override for the body.\n"
@@ -44871,50 +45543,50 @@ msgid ""
"other physics material, such as an inherited one."
msgstr ""
-#: doc/classes/RigidBody2D.xml:168 doc/classes/RigidBody3D.xml:185
+#: doc/classes/RigidBody2D.xml:169 doc/classes/RigidBody3D.xml:193
msgid ""
"If [code]true[/code], the body will not move and will not calculate forces "
"until woken up by another body through, for example, a collision, or by "
"using the [method apply_impulse] or [method add_force] methods."
msgstr ""
-#: doc/classes/RigidBody2D.xml:171
+#: doc/classes/RigidBody2D.xml:172
msgid ""
"The body's weight based on its mass and the [b]Default Gravity[/b] value in "
"[b]Project > Project Settings > Physics > 2d[/b]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:179
+#: doc/classes/RigidBody2D.xml:180 doc/classes/RigidBody3D.xml:204
msgid ""
-"Emitted when a body enters into contact with this one. [member "
-"contact_monitor] must be [code]true[/code] and [member contacts_reported] "
-"greater than [code]0[/code]."
+"Emitted when a body enters into contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:186
+#: doc/classes/RigidBody2D.xml:187
msgid ""
-"Emitted when a body exits contact with this one. [member contact_monitor] "
-"must be [code]true[/code] and [member contacts_reported] greater than "
-"[code]0[/code]."
+"Emitted when a body exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:199
+#: doc/classes/RigidBody2D.xml:200
msgid ""
"Emitted when a body enters into contact with this one. Reports colliding "
"shape information. See [CollisionObject2D] for shape index information. "
-"[member contact_monitor] must be [code]true[/code] and [member "
-"contacts_reported] greater than [code]0[/code]."
+"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:212
+#: doc/classes/RigidBody2D.xml:213
msgid ""
"Emitted when a body shape exits contact with this one. Reports colliding "
"shape information. See [CollisionObject2D] for shape index information. "
-"[member contact_monitor] must be [code]true[/code] and [member "
-"contacts_reported] greater than [code]0[/code]."
+"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:217 doc/classes/RigidBody3D.xml:236
+#: doc/classes/RigidBody2D.xml:218 doc/classes/RigidBody3D.xml:244
msgid ""
"Emitted when the physics engine changes the body's sleeping state.\n"
"[b]Note:[/b] Changing the value [member sleeping] will not trigger this "
@@ -44922,41 +45594,41 @@ msgid ""
"engine or [code]emit_signal(\"sleeping_state_changed\")[/code] is used."
msgstr ""
-#: doc/classes/RigidBody2D.xml:224
+#: doc/classes/RigidBody2D.xml:225
msgid ""
"Rigid mode. The body behaves as a physical object. It collides with other "
"bodies and responds to forces applied to it. This is the default mode."
msgstr ""
-#: doc/classes/RigidBody2D.xml:227
+#: doc/classes/RigidBody2D.xml:228
msgid "Static mode. The body behaves like a [StaticBody2D] and does not move."
msgstr ""
-#: doc/classes/RigidBody2D.xml:230
+#: doc/classes/RigidBody2D.xml:231
msgid ""
"Character mode. Similar to [constant MODE_RIGID], but the body can not "
"rotate."
msgstr ""
-#: doc/classes/RigidBody2D.xml:233
+#: doc/classes/RigidBody2D.xml:234
msgid ""
"Kinematic mode. The body behaves like a [KinematicBody2D], and must be moved "
"by code."
msgstr ""
-#: doc/classes/RigidBody2D.xml:236
+#: doc/classes/RigidBody2D.xml:237
msgid ""
"Continuous collision detection disabled. This is the fastest way to detect "
"body collisions, but can miss small, fast-moving objects."
msgstr ""
-#: doc/classes/RigidBody2D.xml:239
+#: doc/classes/RigidBody2D.xml:240
msgid ""
"Continuous collision detection enabled using raycasting. This is faster than "
"shapecasting but less precise."
msgstr ""
-#: doc/classes/RigidBody2D.xml:242
+#: doc/classes/RigidBody2D.xml:243
msgid ""
"Continuous collision detection enabled using shapecasting. This is the "
"slowest CCD method and the most precise."
@@ -45042,42 +45714,31 @@ msgid ""
"locked."
msgstr ""
-#: doc/classes/RigidBody3D.xml:99
+#: doc/classes/RigidBody3D.xml:107
msgid ""
-"Returns a list of the bodies colliding with this one. By default, number of "
-"max contacts reported is at 0, see the [member contacts_reported] property "
-"to increase it.\n"
-"[b]Note:[/b] The result of this test is not immediate after moving objects. "
-"For performance, list of collisions is updated once per frame and before the "
-"physics step. Consider using signals instead."
+"Returns the inverse inertia tensor basis. This is used to calculate the "
+"angular acceleration resulting from a torque applied to the [RigidBody3D]."
msgstr ""
-#: doc/classes/RigidBody3D.xml:111
+#: doc/classes/RigidBody3D.xml:118
msgid "Locks the specified linear or rotational axis."
msgstr ""
-#: doc/classes/RigidBody3D.xml:126
+#: doc/classes/RigidBody3D.xml:133
msgid "Damps RigidBody3D's rotational forces."
msgstr ""
-#: doc/classes/RigidBody3D.xml:129
+#: doc/classes/RigidBody3D.xml:136
msgid "RigidBody3D's rotational velocity."
msgstr ""
-#: doc/classes/RigidBody3D.xml:153
+#: doc/classes/RigidBody3D.xml:160
msgid ""
"If [code]true[/code], the RigidBody3D will emit signals when it collides "
-"with another RigidBody3D."
+"with another RigidBody3D. See also [member contacts_reported]."
msgstr ""
-#: doc/classes/RigidBody3D.xml:156
-msgid ""
-"The maximum contacts to report. Bodies can keep a log of the contacts with "
-"other bodies, this is enabled by setting the maximum amount of contacts "
-"reported to a number greater than 0."
-msgstr ""
-
-#: doc/classes/RigidBody3D.xml:159
+#: doc/classes/RigidBody3D.xml:167
msgid ""
"If [code]true[/code], continuous collision detection is used.\n"
"Continuous collision detection tries to predict where a moving body will "
@@ -45087,7 +45748,7 @@ msgid ""
"faster to compute, but can miss small, fast-moving objects."
msgstr ""
-#: doc/classes/RigidBody3D.xml:163
+#: doc/classes/RigidBody3D.xml:171
msgid ""
"If [code]true[/code], internal force integration will be disabled (like "
"gravity or air friction) for this body. Other than collision response, the "
@@ -45095,7 +45756,7 @@ msgid ""
"function, if defined."
msgstr ""
-#: doc/classes/RigidBody3D.xml:166
+#: doc/classes/RigidBody3D.xml:174
msgid ""
"This is multiplied by the global 3D gravity setting found in [b]Project > "
"Project Settings > Physics > 3d[/b] to produce RigidBody3D's gravity. For "
@@ -45103,14 +45764,14 @@ msgid ""
"and 0.5 will apply half gravity to this object."
msgstr ""
-#: doc/classes/RigidBody3D.xml:169
+#: doc/classes/RigidBody3D.xml:177
msgid ""
"The body's linear damp. Cannot be less than -1.0. If this value is different "
"from -1.0, any linear damp derived from the world or areas will be "
"overridden."
msgstr ""
-#: doc/classes/RigidBody3D.xml:172
+#: doc/classes/RigidBody3D.xml:180
msgid ""
"The body's linear velocity. Can be used sporadically, but [b]don't set this "
"every frame[/b], because physics may run in another thread and runs at a "
@@ -45118,60 +45779,57 @@ msgid ""
"for precise control of the body state."
msgstr ""
-#: doc/classes/RigidBody3D.xml:178
+#: doc/classes/RigidBody3D.xml:186
msgid "The body mode. See [enum Mode] for possible values."
msgstr ""
-#: doc/classes/RigidBody3D.xml:196
-msgid ""
-"Emitted when a body enters into contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work."
-msgstr ""
-
-#: doc/classes/RigidBody3D.xml:203
+#: doc/classes/RigidBody3D.xml:211
msgid ""
-"Emitted when a body shape exits contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work."
+"Emitted when a body shape exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody3D.xml:216
+#: doc/classes/RigidBody3D.xml:224
msgid ""
-"Emitted when a body enters into contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work.\n"
+"Emitted when a body enters into contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"This signal not only receives the body that collided with this one, but also "
"its [RID] ([code]body_id[/code]), the shape index from the colliding body "
"([code]body_shape[/code]), and the shape index from this body "
"([code]local_shape[/code]) the other body collided with."
msgstr ""
-#: doc/classes/RigidBody3D.xml:230
+#: doc/classes/RigidBody3D.xml:238
msgid ""
-"Emitted when a body shape exits contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work.\n"
+"Emitted when a body shape exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"This signal not only receives the body that stopped colliding with this one, "
"but also its [RID] ([code]body_id[/code]), the shape index from the "
"colliding body ([code]body_shape[/code]), and the shape index from this body "
"([code]local_shape[/code]) the other body stopped colliding with."
msgstr ""
-#: doc/classes/RigidBody3D.xml:243
+#: doc/classes/RigidBody3D.xml:251
msgid ""
"Rigid body mode. This is the \"natural\" state of a rigid body. It is "
"affected by forces, and can move, rotate, and be affected by user code."
msgstr ""
-#: doc/classes/RigidBody3D.xml:246
+#: doc/classes/RigidBody3D.xml:254
msgid ""
"Static mode. The body behaves like a [StaticBody3D], and can only move by "
"user code."
msgstr ""
-#: doc/classes/RigidBody3D.xml:249
+#: doc/classes/RigidBody3D.xml:257
msgid ""
"Character body mode. This behaves like a rigid body, but can not rotate."
msgstr ""
-#: doc/classes/RigidBody3D.xml:252
+#: doc/classes/RigidBody3D.xml:260
msgid ""
"Kinematic body mode. The body behaves like a [KinematicBody3D], and can only "
"move by user code."
@@ -45678,7 +46336,7 @@ msgstr ""
msgid "The time remaining."
msgstr ""
-#: doc/classes/SceneTreeTimer.xml:28 doc/classes/Timer.xml:62
+#: doc/classes/SceneTreeTimer.xml:28 doc/classes/Timer.xml:63
msgid "Emitted when the timer reaches 0."
msgstr ""
@@ -45801,27 +46459,27 @@ msgid ""
"the singleton using [method EditorInterface.get_script_editor]."
msgstr ""
-#: doc/classes/ScriptEditor.xml:40
+#: doc/classes/ScriptEditor.xml:46
msgid "Returns a [Script] that is currently active in editor."
msgstr ""
-#: doc/classes/ScriptEditor.xml:57
+#: doc/classes/ScriptEditor.xml:69
msgid ""
"Returns an array with all [Script] objects which are currently open in "
"editor."
msgstr ""
-#: doc/classes/ScriptEditor.xml:66
+#: doc/classes/ScriptEditor.xml:78
msgid "Goes to the specified line in the current script."
msgstr ""
-#: doc/classes/ScriptEditor.xml:85
+#: doc/classes/ScriptEditor.xml:113
msgid ""
"Emitted when user changed active script. Argument is a freshly activated "
"[Script]."
msgstr ""
-#: doc/classes/ScriptEditor.xml:92
+#: doc/classes/ScriptEditor.xml:120
msgid ""
"Emitted when editor is about to close the active script. Argument is a "
"[Script] that is going to be closed."
@@ -45883,7 +46541,7 @@ msgid ""
"visible."
msgstr ""
-#: doc/classes/ScrollContainer.xml:37 doc/classes/TextEdit.xml:453
+#: doc/classes/ScrollContainer.xml:37 doc/classes/TextEdit.xml:407
msgid "The current horizontal scroll value."
msgstr ""
@@ -45891,7 +46549,7 @@ msgstr ""
msgid "If [code]true[/code], enables horizontal scrolling."
msgstr ""
-#: doc/classes/ScrollContainer.xml:43 doc/classes/TextEdit.xml:456
+#: doc/classes/ScrollContainer.xml:43 doc/classes/TextEdit.xml:410
msgid "The current vertical scroll value."
msgstr ""
@@ -46410,7 +47068,7 @@ msgstr ""
msgid ""
"Sets the global pose transform, [code]pose[/code], for the bone at "
"[code]bone_idx[/code].\n"
-"[code]amount[/code] is the interpolation strengh that will be used when "
+"[code]amount[/code] is the interpolation strength that will be used when "
"applying the pose, and [code]persistent[/code] determines if the applied "
"pose will remain.\n"
"[b]Note[/b]: The pose transform needs to be in bone space. Use [method "
@@ -46427,7 +47085,7 @@ msgstr ""
#: doc/classes/Skeleton3D.xml:266
msgid ""
-"Returns the pose transform for bone [code]bone_idx[/code].\n"
+"Sets the pose transform for bone [code]bone_idx[/code].\n"
"[b]Note[/b]: The pose transform needs to be in bone space. Use [method "
"world_transform_to_bone_transform] to convert a world transform, like one "
"you can get from a [Node3D], to bone space."
@@ -46520,6 +47178,16 @@ msgstr ""
#: doc/classes/Sky.xml:52
msgid ""
+"Automatically selects the appropriate process mode based on your sky shader. "
+"If your shader uses [code]TIME[/code] or [code]POSITION[/code], this will "
+"use [constant PROCESS_MODE_REALTIME]. If your shader uses any of the "
+"[code]LIGHT_*[/code] variables or any custom uniforms, this uses [constant "
+"PROCESS_MODE_INCREMENTAL]. Otherwise, this defaults to [constant "
+"PROCESS_MODE_QUALITY]."
+msgstr ""
+
+#: doc/classes/Sky.xml:55
+msgid ""
"Uses high quality importance sampling to process the radiance map. In "
"general, this results in much higher quality than [constant "
"PROCESS_MODE_REALTIME] but takes much longer to generate. This should not be "
@@ -46529,10 +47197,22 @@ msgid ""
"ggx_samples]."
msgstr ""
-#: doc/classes/Sky.xml:55
+#: doc/classes/Sky.xml:58
+msgid ""
+"Uses the same high quality importance sampling to process the radiance map "
+"as [constant PROCESS_MODE_QUALITY], but updates over several frames. The "
+"number of frames is determined by [member ProjectSettings.rendering/quality/"
+"reflections/roughness_layers]. Use this when you need highest quality "
+"radiance maps, but have a sky that updates slowly."
+msgstr ""
+
+#: doc/classes/Sky.xml:61
msgid ""
"Uses the fast filtering algorithm to process the radiance map. In general "
-"this results in lower quality, but substantially faster run times.\n"
+"this results in lower quality, but substantially faster run times. If you "
+"need better quality, but still need to update the sky every frame, consider "
+"turning on [member ProjectSettings.rendering/quality/reflections/"
+"fast_filter_high_quality].\n"
"[b]Note:[/b] The fast filtering algorithm is limited to 256x256 cubemaps, so "
"[member radiance_size] must be set to [constant RADIANCE_SIZE_256]."
msgstr ""
@@ -46869,9 +47549,7 @@ msgid ""
msgstr ""
#: doc/classes/SpringArm3D.xml:35
-msgid ""
-"Returns the proportion between the current arm length (after checking for "
-"collisions) and the [member spring_length]. Ranges from 0 to 1."
+msgid "Returns the spring arm's current length."
msgstr ""
#: doc/classes/SpringArm3D.xml:44
@@ -47567,7 +48245,7 @@ msgstr ""
msgid ""
"This is the built-in string class (and the one used by GDScript). It "
"supports Unicode and provides all necessary means for string handling. "
-"Strings are reference counted and use a copy-on-write approach, so passing "
+"Strings are reference-counted and use a copy-on-write approach, so passing "
"them around is cheap in resources."
msgstr ""
@@ -47722,26 +48400,32 @@ msgstr ""
#: doc/classes/String.xml:328
msgid ""
"Returns a copy of the string with escaped characters replaced by their "
-"meanings according to the C language standard."
+"meanings. Supported escape sequences are [code]\\'[/code], [code]\\\"[/"
+"code], [code]\\?[/code], [code]\\\\[/code], [code]\\a[/code], [code]\\b[/"
+"code], [code]\\f[/code], [code]\\n[/code], [code]\\r[/code], [code]\\t[/"
+"code], [code]\\v[/code].\n"
+"[b]Note:[/b] Unlike the GDScript parser, this method doesn't support the "
+"[code]\\uXXXX[/code] escape sequence."
msgstr ""
-#: doc/classes/String.xml:335
+#: doc/classes/String.xml:336
msgid ""
-"Changes the case of some letters. Replaces underscores with spaces, converts "
-"all letters to lowercase, then capitalizes first and every letter following "
-"the space character. For [code]capitalize camelCase mixed_with_underscores[/"
-"code], it will return [code]Capitalize Camelcase Mixed With Underscores[/"
+"Changes the case of some letters. Replaces underscores with spaces, adds "
+"spaces before in-word uppercase characters, converts all letters to "
+"lowercase, then capitalizes the first letter and every letter following a "
+"space character. For [code]capitalize camelCase mixed_with_underscores[/"
+"code], it will return [code]Capitalize Camel Case Mixed With Underscores[/"
"code]."
msgstr ""
-#: doc/classes/String.xml:344
+#: doc/classes/String.xml:345
msgid ""
"Performs a case-sensitive comparison to another string. Returns [code]-1[/"
"code] if less than, [code]+1[/code] if greater than, or [code]0[/code] if "
"equal."
msgstr ""
-#: doc/classes/String.xml:357
+#: doc/classes/String.xml:358
msgid ""
"Returns the number of occurrences of substring [code]what[/code] between "
"[code]from[/code] and [code]to[/code] positions. If [code]from[/code] and "
@@ -47749,7 +48433,7 @@ msgid ""
"code] equals 0 the remained substring will be used."
msgstr ""
-#: doc/classes/String.xml:370
+#: doc/classes/String.xml:371
msgid ""
"Returns the number of occurrences of substring [code]what[/code] (ignoring "
"case) between [code]from[/code] and [code]to[/code] positions. If "
@@ -47757,32 +48441,33 @@ msgid ""
"used. If only [code]to[/code] equals 0 the remained substring will be used."
msgstr ""
-#: doc/classes/String.xml:377
+#: doc/classes/String.xml:378
msgid ""
"Returns a copy of the string with indentation (leading tabs and spaces) "
"removed."
msgstr ""
-#: doc/classes/String.xml:384
+#: doc/classes/String.xml:385
msgid ""
"Returns [code]true[/code] if the length of the string equals [code]0[/code]."
msgstr ""
-#: doc/classes/String.xml:393
+#: doc/classes/String.xml:394
msgid "Returns [code]true[/code] if the string ends with the given string."
msgstr ""
-#: doc/classes/String.xml:404
+#: doc/classes/String.xml:405
msgid ""
"Erases [code]chars[/code] characters from the string starting from "
"[code]position[/code]."
msgstr ""
-#: doc/classes/String.xml:415
+#: doc/classes/String.xml:416
msgid ""
-"Finds the first occurrence of a substring. Returns the starting position of "
-"the substring or [code]-1[/code] if not found. Optionally, the initial "
-"search index can be passed.\n"
+"Returns the index of the [b]first[/b] case-sensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the end of the "
+"string.\n"
"[b]Note:[/b] If you just want to know whether a string contains a substring, "
"use the [code]in[/code] operator as follows:\n"
"[codeblock]\n"
@@ -47792,48 +48477,42 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:430
+#: doc/classes/String.xml:433
msgid ""
-"Finds the last occurrence of a substring. Returns the starting position of "
-"the substring or [code]-1[/code] if not found."
+"Returns the index of the [b]first[/b] case-insensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the end of the string."
msgstr ""
-#: doc/classes/String.xml:441
-msgid ""
-"Finds the first occurrence of a substring, ignoring case. Returns the "
-"starting position of the substring or [code]-1[/code] if not found. "
-"Optionally, the initial search index can be passed."
-msgstr ""
-
-#: doc/classes/String.xml:452
+#: doc/classes/String.xml:444
msgid ""
"Formats the string by replacing all occurrences of [code]placeholder[/code] "
"with [code]values[/code]."
msgstr ""
-#: doc/classes/String.xml:459
+#: doc/classes/String.xml:451
msgid "If the string is a valid file path, returns the base directory name."
msgstr ""
-#: doc/classes/String.xml:466
+#: doc/classes/String.xml:458
msgid ""
"If the string is a valid file path, returns the full file path without the "
"extension."
msgstr ""
-#: doc/classes/String.xml:473
+#: doc/classes/String.xml:465
msgid "If the string is a valid file path, returns the extension."
msgstr ""
-#: doc/classes/String.xml:480
+#: doc/classes/String.xml:472
msgid "If the string is a valid file path, returns the filename."
msgstr ""
-#: doc/classes/String.xml:487
+#: doc/classes/String.xml:479
msgid "Hashes the string and returns a 32-bit integer."
msgstr ""
-#: doc/classes/String.xml:494
+#: doc/classes/String.xml:486
msgid ""
"Converts a string containing a hexadecimal number into an integer. "
"Hexadecimal strings are expected to be prefixed with \"[code]0x[/code]\" "
@@ -47843,7 +48522,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:504
+#: doc/classes/String.xml:496
msgid ""
"Escapes (encodes) a string to URL friendly format. Also referred to as 'URL "
"encode'.\n"
@@ -47853,7 +48532,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:514
+#: doc/classes/String.xml:506
msgid ""
"Unescapes (decodes) a string in URL encoded format. Also referred to as 'URL "
"decode'.\n"
@@ -47863,7 +48542,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:526
+#: doc/classes/String.xml:518
msgid ""
"Converts [code]size[/code] represented as number of bytes to human-readable "
"format using internationalized set of data size units, namely: B, KiB, MiB, "
@@ -47876,48 +48555,48 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:542
+#: doc/classes/String.xml:534
msgid ""
"Returns a copy of the string with the substring [code]what[/code] inserted "
"at the given position."
msgstr ""
-#: doc/classes/String.xml:549
+#: doc/classes/String.xml:541
msgid ""
"If the string is a path to a file or directory, returns [code]true[/code] if "
"the path is absolute."
msgstr ""
-#: doc/classes/String.xml:556
+#: doc/classes/String.xml:548
msgid ""
"If the string is a path to a file or directory, returns [code]true[/code] if "
"the path is relative."
msgstr ""
-#: doc/classes/String.xml:565
+#: doc/classes/String.xml:557
msgid ""
"Returns [code]true[/code] if this string is a subsequence of the given "
"string."
msgstr ""
-#: doc/classes/String.xml:574
+#: doc/classes/String.xml:566
msgid ""
"Returns [code]true[/code] if this string is a subsequence of the given "
"string, without considering case."
msgstr ""
-#: doc/classes/String.xml:581
+#: doc/classes/String.xml:573
msgid ""
"Returns [code]true[/code] if this string is free from characters that aren't "
"allowed in file names, those being:\n"
"[code]: / \\ ? * \" | % < >[/code]"
msgstr ""
-#: doc/classes/String.xml:589
+#: doc/classes/String.xml:581
msgid "Returns [code]true[/code] if this string contains a valid float."
msgstr ""
-#: doc/classes/String.xml:598
+#: doc/classes/String.xml:590
msgid ""
"Returns [code]true[/code] if this string contains a valid hexadecimal "
"number. If [code]with_prefix[/code] is [code]true[/code], then a validity of "
@@ -47925,7 +48604,7 @@ msgid ""
"instance: [code]0xDEADC0DE[/code]."
msgstr ""
-#: doc/classes/String.xml:605
+#: doc/classes/String.xml:597
msgid ""
"Returns [code]true[/code] if this string contains a valid color in "
"hexadecimal HTML notation. Other HTML notations such as named colors or "
@@ -47933,22 +48612,22 @@ msgid ""
"return [code]false[/code]."
msgstr ""
-#: doc/classes/String.xml:612
+#: doc/classes/String.xml:604
msgid ""
"Returns [code]true[/code] if this string is a valid identifier. A valid "
"identifier may contain only letters, digits and underscores ([code]_[/code]) "
"and the first character may not be a digit."
msgstr ""
-#: doc/classes/String.xml:619
+#: doc/classes/String.xml:611
msgid "Returns [code]true[/code] if this string contains a valid integer."
msgstr ""
-#: doc/classes/String.xml:626
+#: doc/classes/String.xml:618
msgid "Returns [code]true[/code] if this string contains a valid IP address."
msgstr ""
-#: doc/classes/String.xml:635
+#: doc/classes/String.xml:627
msgid ""
"Return a [String] which is the concatenation of the [code]parts[/code]. The "
"separator between elements is the string providing this method.\n"
@@ -47958,121 +48637,125 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:646
+#: doc/classes/String.xml:638
msgid ""
"Returns a copy of the string with special characters escaped using the JSON "
"standard."
msgstr ""
-#: doc/classes/String.xml:655
+#: doc/classes/String.xml:647
msgid "Returns a number of characters from the left of the string."
msgstr ""
-#: doc/classes/String.xml:662
+#: doc/classes/String.xml:654
msgid "Returns the string's amount of characters."
msgstr ""
-#: doc/classes/String.xml:671
+#: doc/classes/String.xml:663
msgid "Returns a copy of the string with characters removed from the left."
msgstr ""
-#: doc/classes/String.xml:680
+#: doc/classes/String.xml:672
msgid ""
"Does a simple case-sensitive expression match, where [code]\"*\"[/code] "
"matches zero or more arbitrary characters and [code]\"?\"[/code] matches any "
"single character except a period ([code]\".\"[/code])."
msgstr ""
-#: doc/classes/String.xml:689
+#: doc/classes/String.xml:681
msgid ""
"Does a simple case-insensitive expression match, where [code]\"*\"[/code] "
"matches zero or more arbitrary characters and [code]\"?\"[/code] matches any "
"single character except a period ([code]\".\"[/code])."
msgstr ""
-#: doc/classes/String.xml:696
+#: doc/classes/String.xml:688
msgid "Returns the MD5 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:703
+#: doc/classes/String.xml:695
msgid "Returns the MD5 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:712
+#: doc/classes/String.xml:704
msgid ""
"Performs a case-insensitive comparison to another string. Returns [code]-1[/"
"code] if less than, [code]+1[/code] if greater than, or [code]0[/code] if "
"equal."
msgstr ""
-#: doc/classes/String.xml:721
+#: doc/classes/String.xml:713
msgid "Returns the character code at position [code]at[/code]."
msgstr ""
-#: doc/classes/String.xml:730
+#: doc/classes/String.xml:722
msgid ""
"Formats a number to have an exact number of [code]digits[/code] after the "
"decimal point."
msgstr ""
-#: doc/classes/String.xml:739
+#: doc/classes/String.xml:731
msgid ""
"Formats a number to have an exact number of [code]digits[/code] before the "
"decimal point."
msgstr ""
-#: doc/classes/String.xml:746
+#: doc/classes/String.xml:738
msgid "Decode a percent-encoded string. See [method percent_encode]."
msgstr ""
-#: doc/classes/String.xml:753
+#: doc/classes/String.xml:745
msgid ""
"Percent-encodes a string. Encodes parameters in a URL when sending a HTTP "
"GET request (and bodies of form-urlencoded POST requests)."
msgstr ""
-#: doc/classes/String.xml:762
+#: doc/classes/String.xml:754
msgid ""
"If the string is a path, this concatenates [code]file[/code] at the end of "
"the string as a subpath. E.g. [code]\"this/is\".plus_file(\"path\") == "
"\"this/is/path\"[/code]."
msgstr ""
-#: doc/classes/String.xml:771
+#: doc/classes/String.xml:763
msgid ""
"Returns original string repeated a number of times. The number of "
"repetitions is given by the argument."
msgstr ""
-#: doc/classes/String.xml:782
+#: doc/classes/String.xml:774
msgid ""
"Replaces occurrences of a case-sensitive substring with the given one inside "
"the string."
msgstr ""
-#: doc/classes/String.xml:793
+#: doc/classes/String.xml:785
msgid ""
"Replaces occurrences of a case-insensitive substring with the given one "
"inside the string."
msgstr ""
-#: doc/classes/String.xml:804
+#: doc/classes/String.xml:796
msgid ""
-"Performs a case-sensitive search for a substring, but starts from the end of "
-"the string instead of the beginning."
+"Returns the index of the [b]last[/b] case-sensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the beginning of the "
+"string."
msgstr ""
-#: doc/classes/String.xml:815
+#: doc/classes/String.xml:807
msgid ""
-"Performs a case-insensitive search for a substring, but starts from the end "
-"of the string instead of the beginning."
+"Returns the index of the [b]last[/b] case-insensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the beginning of the "
+"string."
msgstr ""
-#: doc/classes/String.xml:824
+#: doc/classes/String.xml:816
msgid "Returns the right side of the string from a given position."
msgstr ""
-#: doc/classes/String.xml:837
+#: doc/classes/String.xml:829
msgid ""
"Splits the string by a [code]delimiter[/code] string and returns an array of "
"the substrings, starting from right.\n"
@@ -48091,39 +48774,39 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:856
+#: doc/classes/String.xml:848
msgid "Returns a copy of the string with characters removed from the right."
msgstr ""
-#: doc/classes/String.xml:863
+#: doc/classes/String.xml:855
msgid "Returns the SHA-1 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:870
+#: doc/classes/String.xml:862
msgid "Returns the SHA-1 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:877
+#: doc/classes/String.xml:869
msgid "Returns the SHA-256 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:884
+#: doc/classes/String.xml:876
msgid "Returns the SHA-256 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:893
+#: doc/classes/String.xml:885
msgid ""
"Returns the similarity index of the text compared to this string. 1 means "
"totally similar and 0 means totally dissimilar."
msgstr ""
-#: doc/classes/String.xml:906
+#: doc/classes/String.xml:898
msgid ""
"Splits the string by a [code]delimiter[/code] string and returns an array of "
-"the substrings.\n"
+"the substrings. The [code]delimiter[/code] can be of any length.\n"
"If [code]maxsplit[/code] is specified, it defines the number of splits to do "
-"from the left up to [code]maxsplit[/code]. The default value of 0 means that "
-"all items are split.\n"
+"from the left up to [code]maxsplit[/code]. The default value of [code]0[/"
+"code] means that all items are split.\n"
"Example:\n"
"[codeblock]\n"
"var some_string = \"One,Two,Three,Four\"\n"
@@ -48131,10 +48814,12 @@ msgid ""
"print(some_array.size()) # Prints 2\n"
"print(some_array[0]) # Prints \"One\"\n"
"print(some_array[1]) # Prints \"Two,Three,Four\"\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"If you need to split strings with more complex rules, use the [RegEx] class "
+"instead."
msgstr ""
-#: doc/classes/String.xml:926
+#: doc/classes/String.xml:919
msgid ""
"Splits the string in floats by using a delimiter string and returns an array "
"of the substrings.\n"
@@ -48142,7 +48827,7 @@ msgid ""
"split by [code]\",\"[/code]."
msgstr ""
-#: doc/classes/String.xml:938
+#: doc/classes/String.xml:931
msgid ""
"Returns a copy of the string stripped of any non-printable character "
"(including tabulations, spaces and line breaks) at the beginning and the "
@@ -48150,7 +48835,7 @@ msgid ""
"right edges respectively."
msgstr ""
-#: doc/classes/String.xml:945
+#: doc/classes/String.xml:938
msgid ""
"Returns a copy of the string stripped of any escape character. These include "
"all non-printable control characters of the first page of the ASCII table (< "
@@ -48158,14 +48843,14 @@ msgid ""
"code] and [code]\\r[/code]) characters, but not spaces."
msgstr ""
-#: doc/classes/String.xml:956
+#: doc/classes/String.xml:949
msgid ""
"Returns part of the string from the position [code]from[/code] with length "
"[code]len[/code]. Argument [code]len[/code] is optional and using [code]-1[/"
"code] will return remaining characters from given position."
msgstr ""
-#: doc/classes/String.xml:963
+#: doc/classes/String.xml:956
msgid ""
"Converts the String (which is a character array) to [PackedByteArray] (which "
"is an array of bytes). The conversion is faster compared to [method "
@@ -48173,25 +48858,25 @@ msgid ""
"ASCII characters."
msgstr ""
-#: doc/classes/String.xml:970
+#: doc/classes/String.xml:963
msgid ""
"Converts a string containing a decimal number into a [code]float[/code]."
msgstr ""
-#: doc/classes/String.xml:977
+#: doc/classes/String.xml:970
msgid ""
"Converts a string containing an integer number into an [code]int[/code]."
msgstr ""
-#: doc/classes/String.xml:984
+#: doc/classes/String.xml:977
msgid "Returns the string converted to lowercase."
msgstr ""
-#: doc/classes/String.xml:991
+#: doc/classes/String.xml:984
msgid "Returns the string converted to uppercase."
msgstr ""
-#: doc/classes/String.xml:998
+#: doc/classes/String.xml:991
msgid ""
"Converts the String (which is an array of characters) to [PackedByteArray] "
"(which is an array of bytes). The conversion is a bit slower than [method "
@@ -48199,25 +48884,25 @@ msgid ""
"this function over [method to_ascii]."
msgstr ""
-#: doc/classes/String.xml:1007
+#: doc/classes/String.xml:1000
msgid ""
"Removes a given string from the start if it starts with it or leaves the "
"string unchanged."
msgstr ""
-#: doc/classes/String.xml:1016
+#: doc/classes/String.xml:1009
msgid ""
"Removes a given string from the end if it ends with it or leaves the string "
"unchanged."
msgstr ""
-#: doc/classes/String.xml:1023
+#: doc/classes/String.xml:1016
msgid ""
"Returns a copy of the string with special characters escaped using the XML "
"standard."
msgstr ""
-#: doc/classes/String.xml:1030
+#: doc/classes/String.xml:1023
msgid ""
"Returns a copy of the string with escaped characters replaced by their "
"meanings according to the XML standard."
@@ -49449,50 +50134,42 @@ msgid ""
"undo/redo."
msgstr ""
-#: doc/classes/TextEdit.xml:24
-msgid "Adds color region (given the delimiters) and its colors."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:35
-msgid "Adds a [code]keyword[/code] and its [Color]."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:44
+#: doc/classes/TextEdit.xml:18
msgid ""
"Returns if the given line is foldable, that is, it has indented lines right "
"below it."
msgstr ""
-#: doc/classes/TextEdit.xml:57
+#: doc/classes/TextEdit.xml:25
msgid ""
-"Clears all custom syntax coloring information previously added with [method "
-"add_color_region] or [method add_keyword_color]."
+"Centers the viewport on the line the editing cursor is at. This also resets "
+"the [member scroll_horizontal] value to [code]0[/code]."
msgstr ""
-#: doc/classes/TextEdit.xml:64
+#: doc/classes/TextEdit.xml:32
msgid "Clears the undo history."
msgstr ""
-#: doc/classes/TextEdit.xml:71
+#: doc/classes/TextEdit.xml:39
msgid "Copy's the current text selection."
msgstr ""
-#: doc/classes/TextEdit.xml:78
+#: doc/classes/TextEdit.xml:46
msgid "Returns the column the editing cursor is at."
msgstr ""
-#: doc/classes/TextEdit.xml:85
+#: doc/classes/TextEdit.xml:53
msgid "Returns the line the editing cursor is at."
msgstr ""
-#: doc/classes/TextEdit.xml:96
+#: doc/classes/TextEdit.xml:64
msgid ""
"Moves the cursor at the specified [code]column[/code] index.\n"
"If [code]adjust_viewport[/code] is set to [code]true[/code], the viewport "
"will center at the cursor position after the move occurs."
msgstr ""
-#: doc/classes/TextEdit.xml:112
+#: doc/classes/TextEdit.xml:80
msgid ""
"Moves the cursor at the specified [code]line[/code] index.\n"
"If [code]adjust_viewport[/code] is set to [code]true[/code], the viewport "
@@ -49501,111 +50178,101 @@ msgid ""
"[code]line[/code] can be hidden using [method set_line_as_hidden]."
msgstr ""
-#: doc/classes/TextEdit.xml:121
+#: doc/classes/TextEdit.xml:89
msgid "Cut's the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:128
+#: doc/classes/TextEdit.xml:96
msgid "Deselects the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:135
+#: doc/classes/TextEdit.xml:103
msgid "Folds all lines that are possible to be folded (see [method can_fold])."
msgstr ""
-#: doc/classes/TextEdit.xml:144
+#: doc/classes/TextEdit.xml:112
msgid "Folds the given line, if possible (see [method can_fold])."
msgstr ""
-#: doc/classes/TextEdit.xml:151
+#: doc/classes/TextEdit.xml:119
msgid "Returns an array containing the line number of each breakpoint."
msgstr ""
-#: doc/classes/TextEdit.xml:160
-msgid "Returns the [Color] of the specified [code]keyword[/code]."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:169
+#: doc/classes/TextEdit.xml:128
msgid "Returns the text of a specific line."
msgstr ""
-#: doc/classes/TextEdit.xml:176
+#: doc/classes/TextEdit.xml:135
msgid "Returns the amount of total lines in the text."
msgstr ""
-#: doc/classes/TextEdit.xml:183
+#: doc/classes/TextEdit.xml:142
msgid ""
"Returns the [PopupMenu] of this [TextEdit]. By default, this menu is "
"displayed when right-clicking on the [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:190
+#: doc/classes/TextEdit.xml:149
msgid "Returns the selection begin column."
msgstr ""
-#: doc/classes/TextEdit.xml:197
+#: doc/classes/TextEdit.xml:156
msgid "Returns the selection begin line."
msgstr ""
-#: doc/classes/TextEdit.xml:204
+#: doc/classes/TextEdit.xml:163
msgid "Returns the text inside the selection."
msgstr ""
-#: doc/classes/TextEdit.xml:211
+#: doc/classes/TextEdit.xml:170
msgid "Returns the selection end column."
msgstr ""
-#: doc/classes/TextEdit.xml:218
+#: doc/classes/TextEdit.xml:177
msgid "Returns the selection end line."
msgstr ""
-#: doc/classes/TextEdit.xml:225
+#: doc/classes/TextEdit.xml:184
msgid "Returns a [String] text with the word under the mouse cursor location."
msgstr ""
-#: doc/classes/TextEdit.xml:234
-msgid ""
-"Returns whether the specified [code]keyword[/code] has a color set to it or "
-"not."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:243
+#: doc/classes/TextEdit.xml:193
msgid "Insert the specified text at the cursor position."
msgstr ""
-#: doc/classes/TextEdit.xml:252
+#: doc/classes/TextEdit.xml:202
msgid "Returns whether the line at the specified index is folded or not."
msgstr ""
-#: doc/classes/TextEdit.xml:261
+#: doc/classes/TextEdit.xml:211
msgid "Returns whether the line at the specified index is hidden or not."
msgstr ""
-#: doc/classes/TextEdit.xml:268
+#: doc/classes/TextEdit.xml:218
msgid "Returns [code]true[/code] if the selection is active."
msgstr ""
-#: doc/classes/TextEdit.xml:277
+#: doc/classes/TextEdit.xml:227
msgid ""
"Triggers a right-click menu action by the specified index. See [enum "
"MenuItems] for a list of available indexes."
msgstr ""
-#: doc/classes/TextEdit.xml:284
+#: doc/classes/TextEdit.xml:234
msgid "Paste the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:291
+#: doc/classes/TextEdit.xml:241
msgid "Perform redo operation."
msgstr ""
-#: doc/classes/TextEdit.xml:298
+#: doc/classes/TextEdit.xml:248
msgid ""
"Removes all the breakpoints. This will not fire the [signal "
"breakpoint_toggled] signal."
msgstr ""
-#: doc/classes/TextEdit.xml:313
+#: doc/classes/TextEdit.xml:263
msgid ""
"Perform a search inside the text. Search flags can be specified in the [enum "
"SearchFlags] enum.\n"
@@ -49621,244 +50288,265 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/TextEdit.xml:336
-msgid "Perform selection, from line/column to line/column."
+#: doc/classes/TextEdit.xml:286
+msgid ""
+"Perform selection, from line/column to line/column.\n"
+"If [member selecting_enabled] is [code]false[/code], no selection will occur."
msgstr ""
-#: doc/classes/TextEdit.xml:343
-msgid "Select all the text."
+#: doc/classes/TextEdit.xml:294
+msgid ""
+"Select all the text.\n"
+"If [member selecting_enabled] is [code]false[/code], no selection will occur."
msgstr ""
-#: doc/classes/TextEdit.xml:354
+#: doc/classes/TextEdit.xml:306
msgid "Sets the text for a specific line."
msgstr ""
-#: doc/classes/TextEdit.xml:365
+#: doc/classes/TextEdit.xml:317
msgid "If [code]true[/code], hides the line of the specified index."
msgstr ""
-#: doc/classes/TextEdit.xml:374
+#: doc/classes/TextEdit.xml:326
msgid "Toggle the folding of the code block at the given line."
msgstr ""
-#: doc/classes/TextEdit.xml:381
+#: doc/classes/TextEdit.xml:333
msgid "Perform undo operation."
msgstr ""
-#: doc/classes/TextEdit.xml:390
+#: doc/classes/TextEdit.xml:342
msgid "Unfolds the given line, if folded."
msgstr ""
-#: doc/classes/TextEdit.xml:397
+#: doc/classes/TextEdit.xml:349
msgid ""
"Unhide all lines that were previously set to hidden by [method "
"set_line_as_hidden]."
msgstr ""
-#: doc/classes/TextEdit.xml:403
+#: doc/classes/TextEdit.xml:355
msgid "If [code]true[/code], the breakpoint gutter is visible."
msgstr ""
-#: doc/classes/TextEdit.xml:412
+#: doc/classes/TextEdit.xml:364
msgid ""
"If [code]true[/code], the caret displays as a rectangle.\n"
"If [code]false[/code], the caret displays as a bar."
msgstr ""
-#: doc/classes/TextEdit.xml:416
+#: doc/classes/TextEdit.xml:368
msgid ""
"If [code]true[/code], a right-click moves the cursor at the mouse position "
"before displaying the context menu.\n"
"If [code]false[/code], the context menu disregards mouse location."
msgstr ""
-#: doc/classes/TextEdit.xml:420
+#: doc/classes/TextEdit.xml:372
msgid "If [code]true[/code], a right-click displays the context menu."
msgstr ""
-#: doc/classes/TextEdit.xml:423
+#: doc/classes/TextEdit.xml:375
msgid ""
"If [code]true[/code], the \"space\" character will have a visible "
"representation."
msgstr ""
-#: doc/classes/TextEdit.xml:426
+#: doc/classes/TextEdit.xml:378
msgid ""
"If [code]true[/code], the \"tab\" character will have a visible "
"representation."
msgstr ""
-#: doc/classes/TextEdit.xml:430
+#: doc/classes/TextEdit.xml:382
msgid ""
"If [code]true[/code], the fold gutter is visible. This enables folding "
"groups of indented lines."
msgstr ""
-#: doc/classes/TextEdit.xml:433
+#: doc/classes/TextEdit.xml:385
msgid ""
"If [code]true[/code], all lines that have been set to hidden by [method "
"set_line_as_hidden], will not be visible."
msgstr ""
-#: doc/classes/TextEdit.xml:436
+#: doc/classes/TextEdit.xml:388
msgid ""
"If [code]true[/code], all occurrences of the selected text will be "
"highlighted."
msgstr ""
-#: doc/classes/TextEdit.xml:439
+#: doc/classes/TextEdit.xml:391
msgid "If [code]true[/code], the line containing the cursor is highlighted."
msgstr ""
-#: doc/classes/TextEdit.xml:447
+#: doc/classes/TextEdit.xml:394
+msgid ""
+"If [code]true[/code], a minimap is shown, providing an outline of your "
+"source code."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:397
+msgid "The width, in pixels, of the minimap."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:401
msgid ""
"If [code]true[/code], custom [code]font_color_selected[/code] will be used "
"for selected text."
msgstr ""
-#: doc/classes/TextEdit.xml:450
+#: doc/classes/TextEdit.xml:404
msgid ""
"If [code]true[/code], read-only mode is enabled. Existing text cannot be "
"modified and new text cannot be added."
msgstr ""
-#: doc/classes/TextEdit.xml:463
+#: doc/classes/TextEdit.xml:413
msgid ""
-"If [code]true[/code], line numbers are displayed to the left of the text."
+"If [code]true[/code], text can be selected.\n"
+"If [code]false[/code], text can not be selected by the user or by the "
+"[method select] or [method select_all] methods."
msgstr ""
-#: doc/classes/TextEdit.xml:466
+#: doc/classes/TextEdit.xml:417
msgid ""
-"If [code]true[/code], sets the [code]step[/code] of the scrollbars to "
-"[code]0.25[/code] which results in smoother scrolling."
+"If [code]true[/code], shortcut keys for context menu items are enabled, even "
+"if the context menu is disabled."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:420
+msgid ""
+"If [code]true[/code], line numbers are displayed to the left of the text."
msgstr ""
-#: doc/classes/TextEdit.xml:469
+#: doc/classes/TextEdit.xml:423
msgid ""
-"If [code]true[/code], any custom color properties that have been set for "
-"this [TextEdit] will be visible."
+"If [code]true[/code], sets the [code]step[/code] of the scrollbars to "
+"[code]0.25[/code] which results in smoother scrolling."
msgstr ""
-#: doc/classes/TextEdit.xml:472
+#: doc/classes/TextEdit.xml:428
msgid "String value of the [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:475
+#: doc/classes/TextEdit.xml:431
msgid "Vertical scroll sensitivity."
msgstr ""
-#: doc/classes/TextEdit.xml:478
+#: doc/classes/TextEdit.xml:437
msgid ""
"If [code]true[/code], enables text wrapping when it goes beyond the edge of "
"what is visible."
msgstr ""
-#: doc/classes/TextEdit.xml:486
+#: doc/classes/TextEdit.xml:445
msgid "Emitted when a breakpoint is placed via the breakpoint gutter."
msgstr ""
-#: doc/classes/TextEdit.xml:491
+#: doc/classes/TextEdit.xml:450
msgid "Emitted when the cursor changes."
msgstr ""
-#: doc/classes/TextEdit.xml:500
+#: doc/classes/TextEdit.xml:459
msgid "Emitted when the info icon is clicked."
msgstr ""
-#: doc/classes/TextEdit.xml:531
+#: doc/classes/TextEdit.xml:496
msgid "Match case when searching."
msgstr ""
-#: doc/classes/TextEdit.xml:534
+#: doc/classes/TextEdit.xml:499
msgid "Match whole words when searching."
msgstr ""
-#: doc/classes/TextEdit.xml:537
+#: doc/classes/TextEdit.xml:502
msgid "Search from end to beginning."
msgstr ""
-#: doc/classes/TextEdit.xml:546
+#: doc/classes/TextEdit.xml:511
msgid ""
"Pastes the clipboard text over the selected text (or at the cursor's "
"position)."
msgstr ""
-#: doc/classes/TextEdit.xml:549
+#: doc/classes/TextEdit.xml:514
msgid "Erases the whole [TextEdit] text."
msgstr ""
-#: doc/classes/TextEdit.xml:552
+#: doc/classes/TextEdit.xml:517
msgid "Selects the whole [TextEdit] text."
msgstr ""
-#: doc/classes/TextEdit.xml:558
+#: doc/classes/TextEdit.xml:523
msgid "Redoes the previous action."
msgstr ""
-#: doc/classes/TextEdit.xml:566
+#: doc/classes/TextEdit.xml:531
msgid ""
"Sets the background [Color] of this [TextEdit]. [member syntax_highlighting] "
"has to be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:569
+#: doc/classes/TextEdit.xml:534
msgid ""
"Sets the [Color] of the bookmark marker. [member syntax_highlighting] has to "
"be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:574 doc/classes/TextEdit.xml:601
+#: doc/classes/TextEdit.xml:539 doc/classes/TextEdit.xml:566
msgid ""
"Sets the [Color] of the breakpoints. [member breakpoint_gutter] has to be "
"enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:612
+#: doc/classes/TextEdit.xml:577
msgid "Sets the default [Font]."
msgstr ""
-#: doc/classes/TextEdit.xml:615
+#: doc/classes/TextEdit.xml:580
msgid "Sets the font [Color]."
msgstr ""
-#: doc/classes/TextEdit.xml:620
+#: doc/classes/TextEdit.xml:585
msgid ""
"Sets the [Color] of the selected text. [member override_selected_font_color] "
"has to be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:625
+#: doc/classes/TextEdit.xml:588
msgid ""
"Sets the [Color] of the line numbers. [member show_line_numbers] has to be "
"enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:628
+#: doc/classes/TextEdit.xml:591
msgid "Sets the spacing between the lines."
msgstr ""
-#: doc/classes/TextEdit.xml:631
+#: doc/classes/TextEdit.xml:594
msgid "Sets the [Color] of marked text."
msgstr ""
-#: doc/classes/TextEdit.xml:636
+#: doc/classes/TextEdit.xml:597
msgid "Sets the [StyleBox] of this [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:641
+#: doc/classes/TextEdit.xml:600
msgid ""
"Sets the [StyleBox] of this [TextEdit] when [member readonly] is enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:646
+#: doc/classes/TextEdit.xml:605
msgid "Sets the highlight [Color] of text selections."
msgstr ""
-#: doc/classes/TextEdit.xml:653
+#: doc/classes/TextEdit.xml:610
msgid "Sets a custom [Texture2D] for tab text characters."
msgstr ""
-#: doc/classes/TextEdit.xml:656
+#: doc/classes/TextEdit.xml:613
msgid ""
"Sets the highlight [Color] of multiple occurrences. [member "
"highlight_all_occurrences] has to be enabled."
@@ -49936,80 +50624,80 @@ msgid ""
"the texture will not scale with the node."
msgstr ""
-#: doc/classes/TextureButton.xml:19
+#: doc/classes/TextureButton.xml:25
msgid ""
"Controls the texture's behavior when you resize the node's bounding "
"rectangle, [b]only if[/b] [member expand] is [code]true[/code]. Set it to "
"one of the [enum StretchMode] constants. See the constants to learn more."
msgstr ""
-#: doc/classes/TextureButton.xml:22
+#: doc/classes/TextureButton.xml:28
msgid ""
"Pure black and white [BitMap] image to use for click detection. On the mask, "
"white pixels represent the button's clickable area. Use it to create buttons "
"with curved shapes."
msgstr ""
-#: doc/classes/TextureButton.xml:25
+#: doc/classes/TextureButton.xml:31
msgid ""
"Texture to display when the node is disabled. See [member BaseButton."
"disabled]."
msgstr ""
-#: doc/classes/TextureButton.xml:28
+#: doc/classes/TextureButton.xml:34
msgid "Texture to display when the node has mouse or keyboard focus."
msgstr ""
-#: doc/classes/TextureButton.xml:31
+#: doc/classes/TextureButton.xml:37
msgid "Texture to display when the mouse hovers the node."
msgstr ""
-#: doc/classes/TextureButton.xml:34
+#: doc/classes/TextureButton.xml:40
msgid ""
"Texture to display by default, when the node is [b]not[/b] in the disabled, "
"focused, hover or pressed state."
msgstr ""
-#: doc/classes/TextureButton.xml:37
+#: doc/classes/TextureButton.xml:43
msgid ""
"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 "
"[member BaseButton.shortcut] key."
msgstr ""
-#: doc/classes/TextureButton.xml:42 doc/classes/TextureRect.xml:36
+#: doc/classes/TextureButton.xml:48 doc/classes/TextureRect.xml:36
msgid "Scale to fit the node's bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:45 doc/classes/TextureRect.xml:39
+#: doc/classes/TextureButton.xml:51 doc/classes/TextureRect.xml:39
msgid "Tile inside the node's bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:48 doc/classes/TextureRect.xml:42
+#: doc/classes/TextureButton.xml:54 doc/classes/TextureRect.xml:42
msgid ""
"The texture keeps its original size and stays in the bounding rectangle's "
"top-left corner."
msgstr ""
-#: doc/classes/TextureButton.xml:51 doc/classes/TextureRect.xml:45
+#: doc/classes/TextureButton.xml:57 doc/classes/TextureRect.xml:45
msgid ""
"The texture keeps its original size and stays centered in the node's "
"bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:54 doc/classes/TextureRect.xml:48
+#: doc/classes/TextureButton.xml:60 doc/classes/TextureRect.xml:48
msgid ""
"Scale the texture to fit the node's bounding rectangle, but maintain the "
"texture's aspect ratio."
msgstr ""
-#: doc/classes/TextureButton.xml:57
+#: doc/classes/TextureButton.xml:63
msgid ""
"Scale the texture to fit the node's bounding rectangle, center it, and "
"maintain its aspect ratio."
msgstr ""
-#: doc/classes/TextureButton.xml:60 doc/classes/TextureRect.xml:54
+#: doc/classes/TextureButton.xml:66 doc/classes/TextureRect.xml:54
msgid ""
"Scale the texture so that the shorter side fits the bounding rectangle. The "
"other side clips to the node's limits."
@@ -50459,19 +51147,25 @@ msgid ""
"advised if working with shared objects."
msgstr ""
-#: doc/classes/Thread.xml:17
+#: doc/classes/Thread.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/threads/thread_safe_apis."
+"html"
+msgstr ""
+
+#: doc/classes/Thread.xml:18
msgid ""
"Returns the current [Thread]'s ID, uniquely identifying it among all threads."
msgstr ""
-#: doc/classes/Thread.xml:24
+#: doc/classes/Thread.xml:25
msgid ""
"Returns [code]true[/code] if this [Thread] is currently active. An active "
"[Thread] cannot start work on a new method but can be joined with [method "
"wait_to_finish]."
msgstr ""
-#: doc/classes/Thread.xml:39
+#: doc/classes/Thread.xml:40
msgid ""
"Starts a new [Thread] that runs [code]method[/code] on object "
"[code]instance[/code] with [code]userdata[/code] passed as an argument. Even "
@@ -50481,21 +51175,21 @@ msgid ""
"Returns [constant OK] on success, or [constant ERR_CANT_CREATE] on failure."
msgstr ""
-#: doc/classes/Thread.xml:47
+#: doc/classes/Thread.xml:48
msgid ""
"Joins the [Thread] and waits for it to finish. Returns what the method "
"called returned."
msgstr ""
-#: doc/classes/Thread.xml:53
+#: doc/classes/Thread.xml:54
msgid "A thread running with lower priority than normally."
msgstr ""
-#: doc/classes/Thread.xml:56
+#: doc/classes/Thread.xml:57
msgid "A thread with a standard priority."
msgstr ""
-#: doc/classes/Thread.xml:59
+#: doc/classes/Thread.xml:60
msgid "A thread running with higher priority than normally."
msgstr ""
@@ -51030,50 +51724,61 @@ msgid "Returns the [Transform2D] of a tile's shape."
msgstr ""
#: doc/classes/TileSet.xml:481
-msgid "Returns an array of the tile's shapes."
+msgid ""
+"Returns an array of dictionaries describing the tile's shapes.\n"
+"[b]Dictionary structure in the array returned by this method:[/b]\n"
+"[codeblock]\n"
+"{\n"
+" \"autotile_coord\": Vector2,\n"
+" \"one_way\": bool,\n"
+" \"one_way_margin\": int,\n"
+" \"shape\": CollisionShape2D,\n"
+" \"shape_transform\": Transform2D,\n"
+"}\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/TileSet.xml:490
+#: doc/classes/TileSet.xml:500
msgid "Returns the tile's texture."
msgstr ""
-#: doc/classes/TileSet.xml:499
+#: doc/classes/TileSet.xml:509
msgid "Returns the texture offset of the tile."
msgstr ""
-#: doc/classes/TileSet.xml:508
+#: doc/classes/TileSet.xml:518
msgid "Returns the tile's [enum TileMode]."
msgstr ""
-#: doc/classes/TileSet.xml:517
+#: doc/classes/TileSet.xml:527
msgid "Returns the tile's Z index (drawing layer)."
msgstr ""
-#: doc/classes/TileSet.xml:528
+#: doc/classes/TileSet.xml:538
msgid "Sets a light occluder for the tile."
msgstr ""
-#: doc/classes/TileSet.xml:539
+#: doc/classes/TileSet.xml:549
msgid "Sets the tile's material."
msgstr ""
-#: doc/classes/TileSet.xml:550
+#: doc/classes/TileSet.xml:560
msgid "Sets the tile's modulation color."
msgstr ""
-#: doc/classes/TileSet.xml:561
+#: doc/classes/TileSet.xml:571
msgid "Sets the tile's name."
msgstr ""
-#: doc/classes/TileSet.xml:572
+#: doc/classes/TileSet.xml:582
msgid "Sets the tile's navigation polygon."
msgstr ""
-#: doc/classes/TileSet.xml:583
+#: doc/classes/TileSet.xml:593
msgid "Sets an offset for the tile's navigation polygon."
msgstr ""
-#: doc/classes/TileSet.xml:594
+#: doc/classes/TileSet.xml:604
msgid ""
"Sets the tile's normal map texture.\n"
"[b]Note:[/b] Godot expects the normal map to use X+, Y-, and Z+ coordinates. "
@@ -51082,48 +51787,48 @@ msgid ""
"a comparison of normal map coordinates expected by popular engines."
msgstr ""
-#: doc/classes/TileSet.xml:606
+#: doc/classes/TileSet.xml:616
msgid "Sets an offset for the tile's light occluder."
msgstr ""
-#: doc/classes/TileSet.xml:617
+#: doc/classes/TileSet.xml:627
msgid ""
"Sets the tile's sub-region in the texture. This is common in texture atlases."
msgstr ""
-#: doc/classes/TileSet.xml:630
+#: doc/classes/TileSet.xml:640
msgid "Sets a shape for the tile, enabling collision."
msgstr ""
-#: doc/classes/TileSet.xml:643
+#: doc/classes/TileSet.xml:653
msgid "Sets the offset of a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:656
+#: doc/classes/TileSet.xml:666
msgid "Enables one-way collision on a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:681
+#: doc/classes/TileSet.xml:691
msgid "Sets a [Transform2D] on a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:692
+#: doc/classes/TileSet.xml:702
msgid "Sets an array of shapes for the tile, enabling collision."
msgstr ""
-#: doc/classes/TileSet.xml:703
+#: doc/classes/TileSet.xml:713
msgid "Sets the tile's texture."
msgstr ""
-#: doc/classes/TileSet.xml:714
+#: doc/classes/TileSet.xml:724
msgid "Sets the tile's texture offset."
msgstr ""
-#: doc/classes/TileSet.xml:725
+#: doc/classes/TileSet.xml:735
msgid "Sets the tile's [enum TileMode]."
msgstr ""
-#: doc/classes/TileSet.xml:736
+#: doc/classes/TileSet.xml:746
msgid "Sets the tile's drawing index."
msgstr ""
@@ -51134,14 +51839,16 @@ msgstr ""
#: doc/classes/Timer.xml:7
msgid ""
"Counts down a specified interval and emits a signal on reaching 0. Can be "
-"set to repeat or \"one-shot\" mode."
+"set to repeat or \"one-shot\" mode.\n"
+"[b]Note:[/b] To create an one-shot timer without instantiating a node, use "
+"[method SceneTree.create_timer]."
msgstr ""
-#: doc/classes/Timer.xml:16
+#: doc/classes/Timer.xml:17
msgid "Returns [code]true[/code] if the timer is stopped."
msgstr ""
-#: doc/classes/Timer.xml:25
+#: doc/classes/Timer.xml:26
msgid ""
"Starts the timer. Sets [code]wait_time[/code] to [code]time_sec[/code] if "
"[code]time_sec > 0[/code]. This also resets the remaining time to "
@@ -51149,11 +51856,11 @@ msgid ""
"[b]Note:[/b] this method will not resume a paused timer. See [member paused]."
msgstr ""
-#: doc/classes/Timer.xml:33
+#: doc/classes/Timer.xml:34
msgid "Stops the timer."
msgstr ""
-#: doc/classes/Timer.xml:39
+#: doc/classes/Timer.xml:40
msgid ""
"If [code]true[/code], the timer will automatically start when entering the "
"scene tree.\n"
@@ -51161,40 +51868,40 @@ msgid ""
"the timer enters the scene tree and starts."
msgstr ""
-#: doc/classes/Timer.xml:43
+#: doc/classes/Timer.xml:44
msgid ""
"If [code]true[/code], the timer will stop when reaching 0. If [code]false[/"
"code], it will restart."
msgstr ""
-#: doc/classes/Timer.xml:46
+#: doc/classes/Timer.xml:47
msgid ""
"If [code]true[/code], the timer is paused and will not process until it is "
"unpaused again, even if [method start] is called."
msgstr ""
-#: doc/classes/Timer.xml:49
+#: doc/classes/Timer.xml:50
msgid "Processing mode. See [enum TimerProcessMode]."
msgstr ""
-#: doc/classes/Timer.xml:52
+#: doc/classes/Timer.xml:53
msgid ""
"The timer's remaining time in seconds. Returns 0 if the timer is inactive.\n"
"[b]Note:[/b] You cannot set this value. To change the timer's remaining "
"time, use [method start]."
msgstr ""
-#: doc/classes/Timer.xml:56
+#: doc/classes/Timer.xml:57
msgid "Wait time in seconds."
msgstr ""
-#: doc/classes/Timer.xml:68
+#: doc/classes/Timer.xml:69
msgid ""
"Update the timer during the physics step at each frame (fixed framerate "
"processing)."
msgstr ""
-#: doc/classes/Timer.xml:71
+#: doc/classes/Timer.xml:72
msgid "Update the timer during the idle time at each frame."
msgstr ""
@@ -51273,60 +51980,66 @@ msgstr ""
#: doc/classes/Transform.xml:7
msgid ""
-"Represents one or many transformations in 3D space such as translation, "
-"rotation, or scaling. It consists of a [member basis] and an [member "
-"origin]. It is similar to a 3×4 matrix."
+"3×4 matrix (3 rows, 4 columns) used for 3D linear transformations. It can "
+"represent transformations such as translation, rotation, or scaling. It "
+"consists of a [member basis] (first 3 columns) and a [Vector3] for the "
+"[member origin] (last column).\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
msgstr ""
-#: doc/classes/Transform.xml:26
+#: doc/classes/Transform.xml:28
msgid ""
-"Constructs the Transform from four [Vector3]. Each axis corresponds to local "
-"basis vectors (some of which may be scaled)."
+"Constructs a Transform from four [Vector3] values (matrix columns). Each "
+"axis corresponds to local basis vectors (some of which may be scaled)."
msgstr ""
-#: doc/classes/Transform.xml:37
-msgid "Constructs the Transform from a [Basis] and [Vector3]."
+#: doc/classes/Transform.xml:39
+msgid "Constructs a Transform from a [Basis] and [Vector3]."
msgstr ""
-#: doc/classes/Transform.xml:46
-msgid "Constructs the Transform from a [Transform2D]."
+#: doc/classes/Transform.xml:48
+msgid "Constructs a Transform from a [Transform2D]."
msgstr ""
-#: doc/classes/Transform.xml:55
+#: doc/classes/Transform.xml:57
msgid ""
-"Constructs the Transform from a [Quat]. The origin will be Vector3(0, 0, 0)."
+"Constructs a Transform from a [Quat]. The origin will be [code]Vector3(0, 0, "
+"0)[/code]."
msgstr ""
-#: doc/classes/Transform.xml:64
+#: doc/classes/Transform.xml:66
msgid ""
"Constructs the Transform from a [Basis]. The origin will be Vector3(0, 0, 0)."
msgstr ""
-#: doc/classes/Transform.xml:71
+#: doc/classes/Transform.xml:73 doc/classes/Transform2D.xml:51
msgid ""
"Returns the inverse of the transform, under the assumption that the "
"transformation is composed of rotation, scaling and translation."
msgstr ""
-#: doc/classes/Transform.xml:82
-msgid "Interpolates the transform to other Transform by weight amount (0-1)."
+#: doc/classes/Transform.xml:84
+msgid ""
+"Interpolates the transform to other Transform by weight amount (on the range "
+"of 0.0 to 1.0)."
msgstr ""
-#: doc/classes/Transform.xml:89 doc/classes/Transform2D.xml:106
+#: doc/classes/Transform.xml:91
msgid ""
"Returns the inverse of the transform, under the assumption that the "
"transformation is composed of rotation and translation (no scaling, use "
"affine_inverse for transforms with scaling)."
msgstr ""
-#: doc/classes/Transform.xml:98 doc/classes/Transform2D.xml:115
+#: doc/classes/Transform.xml:100 doc/classes/Transform2D.xml:119
msgid ""
"Returns [code]true[/code] if this transform and [code]transform[/code] are "
"approximately equal, by calling [code]is_equal_approx[/code] on each "
"component."
msgstr ""
-#: doc/classes/Transform.xml:109
+#: doc/classes/Transform.xml:111
msgid ""
"Returns a copy of the transform rotated such that its -Z axis points towards "
"the [code]target[/code] position.\n"
@@ -51336,25 +52049,25 @@ msgid ""
"Operations take place in global space."
msgstr ""
-#: doc/classes/Transform.xml:118 doc/classes/Transform2D.xml:122
+#: doc/classes/Transform.xml:120
msgid ""
"Returns the transform with the basis orthogonal (90 degrees), and normalized "
"axis vectors."
msgstr ""
-#: doc/classes/Transform.xml:129
+#: doc/classes/Transform.xml:131
msgid ""
"Rotates the transform around the given axis by the given angle (in radians), "
"using matrix multiplication. The axis must be a normalized vector."
msgstr ""
-#: doc/classes/Transform.xml:138
+#: doc/classes/Transform.xml:140
msgid ""
"Scales basis and origin of the transform by the given scale factor, using "
"matrix multiplication."
msgstr ""
-#: doc/classes/Transform.xml:147 doc/classes/Transform2D.xml:149
+#: doc/classes/Transform.xml:149 doc/classes/Transform2D.xml:153
msgid ""
"Translates the transform by the given offset, relative to the transform's "
"basis vectors.\n"
@@ -51362,152 +52075,162 @@ msgid ""
"multiplication."
msgstr ""
-#: doc/classes/Transform.xml:157
+#: doc/classes/Transform.xml:159
msgid ""
"Transforms the given [Vector3], [Plane], [AABB], or [PackedVector3Array] by "
"this transform."
msgstr ""
-#: doc/classes/Transform.xml:166
+#: doc/classes/Transform.xml:168
msgid ""
"Inverse-transforms the given [Vector3], [Plane], [AABB], or "
"[PackedVector3Array] by this transform."
msgstr ""
-#: doc/classes/Transform.xml:172
+#: doc/classes/Transform.xml:174
msgid ""
"The basis is a matrix containing 3 [Vector3] as its columns: X axis, Y axis, "
"and Z axis. These vectors can be interpreted as the basis vectors of local "
"coordinate system traveling with the object."
msgstr ""
-#: doc/classes/Transform.xml:175
-msgid "The translation offset of the transform."
+#: doc/classes/Transform.xml:177
+msgid ""
+"The translation offset of the transform (column 3, the fourth column). "
+"Equivalent to array index [code]3[/code]."
msgstr ""
-#: doc/classes/Transform.xml:180
+#: doc/classes/Transform.xml:182
msgid ""
"[Transform] with no translation, rotation or scaling applied. When applied "
"to other data structures, [constant IDENTITY] performs no transformation."
msgstr ""
-#: doc/classes/Transform.xml:183
+#: doc/classes/Transform.xml:185
msgid "[Transform] with mirroring applied perpendicular to the YZ plane."
msgstr ""
-#: doc/classes/Transform.xml:186
+#: doc/classes/Transform.xml:188
msgid "[Transform] with mirroring applied perpendicular to the XZ plane."
msgstr ""
-#: doc/classes/Transform.xml:189
+#: doc/classes/Transform.xml:191
msgid "[Transform] with mirroring applied perpendicular to the XY plane."
msgstr ""
#: doc/classes/Transform2D.xml:4
-msgid "2D transformation (3×2 matrix)."
+msgid "2D transformation (2×3 matrix)."
msgstr ""
#: doc/classes/Transform2D.xml:7
msgid ""
-"Represents one or many transformations in 2D space such as translation, "
-"rotation, or scaling. It consists of two [member x] and [member y] "
-"[Vector2]s and an [member origin]. It is similar to a 3×2 matrix."
+"2×3 matrix (2 rows, 3 columns) used for 2D linear transformations. It can "
+"represent transformations such as translation, rotation, or scaling. It "
+"consists of a three [Vector2] values: [member x], [member y], and the "
+"[member origin].\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
msgstr ""
-#: doc/classes/Transform2D.xml:18
+#: doc/classes/Transform2D.xml:20
msgid "Constructs the transform from a 3D [Transform]."
msgstr ""
-#: doc/classes/Transform2D.xml:31
+#: doc/classes/Transform2D.xml:33
msgid ""
-"Constructs the transform from 3 [Vector2]s representing x, y, and origin."
+"Constructs the transform from 3 [Vector2] values representing [member x], "
+"[member y], and the [member origin] (the three column vectors)."
msgstr ""
-#: doc/classes/Transform2D.xml:42
+#: doc/classes/Transform2D.xml:44
msgid "Constructs the transform from a given angle (in radians) and position."
msgstr ""
-#: doc/classes/Transform2D.xml:58
-msgid "Transforms the given vector by this transform's basis (no translation)."
+#: doc/classes/Transform2D.xml:60
+msgid ""
+"Returns a vector transformed (multiplied) by the basis matrix.\n"
+"This method does not account for translation (the origin vector)."
msgstr ""
-#: doc/classes/Transform2D.xml:67
+#: doc/classes/Transform2D.xml:70
msgid ""
-"Inverse-transforms the given vector by this transform's basis (no "
-"translation)."
+"Returns a vector transformed (multiplied) by the inverse basis matrix.\n"
+"This method does not account for translation (the origin vector)."
msgstr ""
-#: doc/classes/Transform2D.xml:74
+#: doc/classes/Transform2D.xml:78
msgid "Returns the transform's origin (translation)."
msgstr ""
-#: doc/classes/Transform2D.xml:81
+#: doc/classes/Transform2D.xml:85
msgid "Returns the transform's rotation (in radians)."
msgstr ""
-#: doc/classes/Transform2D.xml:88
+#: doc/classes/Transform2D.xml:92
msgid "Returns the scale."
msgstr ""
-#: doc/classes/Transform2D.xml:99
+#: doc/classes/Transform2D.xml:103
msgid ""
"Returns a transform interpolated between this transform and another by a "
-"given weight (0-1)."
+"given weight (on the range of 0.0 to 1.0)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:110
+msgid ""
+"Returns the inverse of the transform, under the assumption that the "
+"transformation is composed of rotation and translation (no scaling, use "
+"[method affine_inverse] for transforms with scaling)."
msgstr ""
-#: doc/classes/Transform2D.xml:131
+#: doc/classes/Transform2D.xml:126
+msgid ""
+"Returns the transform with the basis orthogonal (90 degrees), and normalized "
+"axis vectors (scale of 1 or -1)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:135
msgid ""
"Rotates the transform by the given angle (in radians), using matrix "
"multiplication."
msgstr ""
-#: doc/classes/Transform2D.xml:140
+#: doc/classes/Transform2D.xml:144
msgid ""
"Scales the transform by the given scale factor, using matrix multiplication."
msgstr ""
-#: doc/classes/Transform2D.xml:159
+#: doc/classes/Transform2D.xml:163
msgid ""
"Transforms the given [Vector2], [Rect2], or [PackedVector2Array] by this "
"transform."
msgstr ""
-#: doc/classes/Transform2D.xml:168
+#: doc/classes/Transform2D.xml:172
msgid ""
"Inverse-transforms the given [Vector2], [Rect2], or [PackedVector2Array] by "
"this transform."
msgstr ""
-#: doc/classes/Transform2D.xml:174
-msgid "The transform's translation offset."
-msgstr ""
-
-#: doc/classes/Transform2D.xml:177
-msgid ""
-"The X axis of 2×2 basis matrix containing 2 [Vector2]s as its columns: X "
-"axis and Y axis. These vectors can be interpreted as the basis vectors of "
-"local coordinate system traveling with the object."
-msgstr ""
-
-#: doc/classes/Transform2D.xml:180
+#: doc/classes/Transform2D.xml:178
msgid ""
-"The Y axis of 2×2 basis matrix containing 2 [Vector2]s as its columns: X "
-"axis and Y axis. These vectors can be interpreted as the basis vectors of "
-"local coordinate system traveling with the object."
+"The origin vector (column 2, the third column). Equivalent to array index "
+"[code]2[/code]. The origin vector represents translation."
msgstr ""
-#: doc/classes/Transform2D.xml:185
+#: doc/classes/Transform2D.xml:189
msgid ""
-"[Transform2D] with no translation, rotation or scaling applied. When applied "
-"to other data structures, [constant IDENTITY] performs no transformation."
+"The identity [Transform2D] with no translation, rotation or scaling applied. "
+"When applied to other data structures, [constant IDENTITY] performs no "
+"transformation."
msgstr ""
-#: doc/classes/Transform2D.xml:188
-msgid "[Transform2D] with mirroring applied parallel to the X axis."
+#: doc/classes/Transform2D.xml:192
+msgid "The [Transform2D] that will flip something along the X axis."
msgstr ""
-#: doc/classes/Transform2D.xml:191
-msgid "[Transform2D] with mirroring applied parallel to the Y axis."
+#: doc/classes/Transform2D.xml:195
+msgid "The [Transform2D] that will flip something along the Y axis."
msgstr ""
#: doc/classes/Translation.xml:4
@@ -52171,7 +52894,8 @@ msgid "Returns the column's cell mode."
msgstr ""
#: doc/classes/TreeItem.xml:121
-msgid "Returns the TreeItem's child items."
+msgid ""
+"Returns the TreeItem's first child item or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:130
@@ -52203,28 +52927,32 @@ msgid "Returns the icon [Texture2D] region as [Rect2]."
msgstr ""
#: doc/classes/TreeItem.xml:199
-msgid "Returns the next TreeItem in the tree."
+msgid ""
+"Returns the next TreeItem in the tree or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:208
msgid ""
-"Returns the next visible TreeItem in the tree.\n"
+"Returns the next visible TreeItem in the tree or a null object if there is "
+"none.\n"
"If [code]wrap[/code] is enabled, the method will wrap around to the first "
"visible element in the tree when called on the last visible element, "
"otherwise it returns [code]null[/code]."
msgstr ""
#: doc/classes/TreeItem.xml:216
-msgid "Returns the parent TreeItem."
+msgid "Returns the parent TreeItem or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:223
-msgid "Returns the previous TreeItem in the tree."
+msgid ""
+"Returns the previous TreeItem in the tree or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:232
msgid ""
-"Returns the previous visible TreeItem in the tree.\n"
+"Returns the previous visible TreeItem in the tree or a null object if there "
+"is none.\n"
"If [code]wrap[/code] is enabled, the method will wrap around to the last "
"visible element in the tree when called on the first visible element, "
"otherwise it returns [code]null[/code]."
@@ -52734,6 +53462,10 @@ msgid ""
"A simple server that opens a UDP socket and returns connected "
"[PacketPeerUDP] upon receiving new packets. See also [method PacketPeerUDP."
"connect_to_host].\n"
+"After starting the server ([method listen]), you will need to [method poll] "
+"it at regular intervals (e.g. inside [method Node._process]) for it to "
+"process new packets, delivering them to the appropriate [PacketPeerUDP], and "
+"taking new connections.\n"
"Below a small example of how it can be used:\n"
"[codeblock]\n"
"# server.gd\n"
@@ -52746,6 +53478,7 @@ msgid ""
" server.listen(4242)\n"
"\n"
"func _process(delta):\n"
+" server.poll() # Important!\n"
" if server.is_connection_available():\n"
" var peer : PacketPeerUDP = server.take_connection()\n"
" var pkt = peer.get_packet()\n"
@@ -52781,35 +53514,55 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/UDPServer.xml:60
+#: doc/classes/UDPServer.xml:62
msgid ""
-"Returns [code]true[/code] if a packet with a new address/port combination is "
-"received on the socket."
+"Returns [code]true[/code] if a packet with a new address/port combination "
+"was received on the socket."
msgstr ""
-#: doc/classes/UDPServer.xml:67
+#: doc/classes/UDPServer.xml:69
msgid ""
"Returns [code]true[/code] if the socket is open and listening on a port."
msgstr ""
-#: doc/classes/UDPServer.xml:78
+#: doc/classes/UDPServer.xml:80
msgid ""
"Starts the server by opening a UDP socket listening on the given port. You "
"can optionally specify a [code]bind_address[/code] to only listen for "
"packets sent to that address. See also [method PacketPeerUDP.listen]."
msgstr ""
-#: doc/classes/UDPServer.xml:85
+#: doc/classes/UDPServer.xml:87
+msgid ""
+"Call this method at regular intervals (e.g. inside [method Node._process]) "
+"to process new packets. And packet from known address/port pair will be "
+"delivered to the appropriate [PacketPeerUDP], any packet received from an "
+"unknown address/port pair will be added as a pending connection (see [method "
+"is_connection_available], [method take_connection]). The maximum number of "
+"pending connection is defined via [member max_pending_connections]."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:94
+msgid ""
+"Stops the server, closing the UDP socket if open. Will close all connected "
+"[PacketPeerUDP] accepted via [method take_connection] (remote peers will not "
+"be notified)."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:101
msgid ""
-"Stops the server, closing the UDP socket if open. Will not disconnect any "
-"connected [PacketPeerUDP]."
+"Returns the first pending connection (connected to the appropriate address/"
+"port). Will return [code]null[/code] if no new connection is available. See "
+"also [method is_connection_available], [method PacketPeerUDP."
+"connect_to_host]."
msgstr ""
-#: doc/classes/UDPServer.xml:92
+#: doc/classes/UDPServer.xml:107
msgid ""
-"Returns a [PacketPeerUDP] connected to the address/port combination of the "
-"first packet in queue. Will return [code]null[/code] if no packet is in "
-"queue. See also [method PacketPeerUDP.connect_to_host]."
+"Define the maximum number of pending connections, during [method poll], any "
+"new pending connection exceeding that value will be automatically dropped. "
+"Setting this value to [code]0[/code] effectively prevents any new pending "
+"connection to be accepted (e.g. when all your players have connected)."
msgstr ""
#: doc/classes/UndoRedo.xml:4
@@ -53450,24 +54203,26 @@ msgstr ""
#: doc/classes/Vector2.xml:46
msgid ""
-"Returns the vector's angle in radians with respect to the X axis, or [code]"
-"(1, 0)[/code] vector.\n"
+"Returns this vector's angle with respect to the X axis, or [code](1, 0)[/"
+"code] vector, in radians.\n"
"Equivalent to the result of [method @GDScript.atan2] when called with the "
-"vector's [member x] and [member y] as parameters: [code]atan2(x, y)[/code]."
+"vector's [member y] and [member x] as parameters: [code]atan2(y, x)[/code]."
msgstr ""
#: doc/classes/Vector2.xml:56
-msgid "Returns the angle in radians between the two vectors."
+msgid "Returns the angle to the given vector, in radians."
msgstr ""
#: doc/classes/Vector2.xml:65
msgid ""
-"Returns the angle in radians between the line connecting the two points and "
-"the X coordinate."
+"Returns the angle between the line connecting the two points and the X axis, "
+"in radians."
msgstr ""
-#: doc/classes/Vector2.xml:72 doc/classes/Vector2i.xml:46
-msgid "Returns the ratio of [member x] to [member y]."
+#: doc/classes/Vector2.xml:72
+msgid ""
+"Returns the aspect ratio of this vector, the ratio of [member x] to [member "
+"y]."
msgstr ""
#: doc/classes/Vector2.xml:81 doc/classes/Vector3.xml:59
@@ -53476,24 +54231,27 @@ msgid ""
msgstr ""
#: doc/classes/Vector2.xml:88
-msgid "Returns the vector with all components rounded up."
+msgid ""
+"Returns the vector with all components rounded up (towards positive "
+"infinity)."
msgstr ""
#: doc/classes/Vector2.xml:97
-msgid "Returns the vector with a maximum length."
+msgid ""
+"Returns the vector with a maximum length by limiting its length to "
+"[code]length[/code]."
msgstr ""
#: doc/classes/Vector2.xml:106
-msgid ""
-"Returns the 2-dimensional analog of the cross product with the given vector."
+msgid "Returns the cross product of this vector and [code]with[/code]."
msgstr ""
#: doc/classes/Vector2.xml:121
msgid ""
"Cubically interpolates between this vector and [code]b[/code] using "
"[code]pre_a[/code] and [code]post_b[/code] as handles, and returns the "
-"result at position [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation."
+"result at position [code]t[/code]. [code]t[/code] is on the range of 0.0 to "
+"1.0, representing the amount of interpolation."
msgstr ""
#: doc/classes/Vector2.xml:130 doc/classes/Vector3.xml:99
@@ -53501,182 +54259,198 @@ msgid ""
"Returns the normalized vector pointing from this vector to [code]b[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:139
+#: doc/classes/Vector2.xml:139 doc/classes/Vector3.xml:108
msgid ""
-"Returns the squared distance to vector [code]b[/code]. Prefer this function "
-"over [method distance_to] if you need to sort vectors or need the squared "
-"distance for some formula."
+"Returns the squared distance between this vector and [code]b[/code].\n"
+"This method runs faster than [method distance_to], so prefer it if you need "
+"to compare vectors or need the squared distance for some formula."
msgstr ""
-#: doc/classes/Vector2.xml:148
-msgid "Returns the distance to vector [code]b[/code]."
+#: doc/classes/Vector2.xml:149
+msgid "Returns the distance between this vector and [code]to[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:157
-msgid "Returns the dot product with vector [code]b[/code]."
+#: doc/classes/Vector2.xml:158
+msgid ""
+"Returns the dot product of this vector and [code]with[/code]. This can be "
+"used to compare the angle between two vectors. For example, this can be used "
+"to determine whether an enemy is facing the player.\n"
+"The dot product will be [code]0[/code] for a straight angle (90 degrees), "
+"greater than 0 for angles narrower than 90 degrees and lower than 0 for "
+"angles wider than 90 degrees.\n"
+"When using unit (normalized) vectors, the result will always be between "
+"[code]-1.0[/code] (180 degree angle) when the vectors are facing opposite "
+"directions, and [code]1.0[/code] (0 degree angle) when the vectors are "
+"aligned.\n"
+"[b]Note:[/b] [code]a.dot(b)[/code] is equivalent to [code]b.dot(a)[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:164
-msgid "Returns the vector with all components rounded down."
+#: doc/classes/Vector2.xml:168
+msgid ""
+"Returns the vector with all components rounded down (towards negative "
+"infinity)."
msgstr ""
-#: doc/classes/Vector2.xml:173 doc/classes/Vector3.xml:149
+#: doc/classes/Vector2.xml:177 doc/classes/Vector3.xml:153
msgid ""
"Returns [code]true[/code] if this vector and [code]v[/code] are "
"approximately equal, by running [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/Vector2.xml:180 doc/classes/Vector3.xml:156
-msgid "Returns [code]true[/code] if the vector is normalized."
+#: doc/classes/Vector2.xml:184 doc/classes/Vector3.xml:160
+msgid ""
+"Returns [code]true[/code] if the vector is normalized, and false otherwise."
msgstr ""
-#: doc/classes/Vector2.xml:187 doc/classes/Vector3.xml:163
-msgid "Returns the vector's length."
+#: doc/classes/Vector2.xml:191 doc/classes/Vector3.xml:167
+msgid "Returns the length (magnitude) of this vector."
msgstr ""
-#: doc/classes/Vector2.xml:194
+#: doc/classes/Vector2.xml:198 doc/classes/Vector3.xml:174
msgid ""
-"Returns the vector's length squared. Prefer this method over [method length] "
-"if you need to sort vectors or need the squared length for some formula."
+"Returns the squared length (squared magnitude) of this vector.\n"
+"This method runs faster than [method length], so prefer it if you need to "
+"compare vectors or need the squared distance for some formula."
msgstr ""
-#: doc/classes/Vector2.xml:205
+#: doc/classes/Vector2.xml:210 doc/classes/Vector3.xml:186
msgid ""
"Returns the result of the linear interpolation between this vector and "
-"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation."
+"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is on the range of "
+"0.0 to 1.0, representing the amount of interpolation."
msgstr ""
-#: doc/classes/Vector2.xml:216 doc/classes/Vector3.xml:206
+#: doc/classes/Vector2.xml:221
msgid ""
"Moves the vector toward [code]to[/code] by the fixed [code]delta[/code] "
"amount."
msgstr ""
-#: doc/classes/Vector2.xml:223 doc/classes/Vector3.xml:213
+#: doc/classes/Vector2.xml:228 doc/classes/Vector3.xml:218
msgid ""
"Returns the vector scaled to unit length. Equivalent to [code]v / v.length()"
"[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:232 doc/classes/Vector3.xml:231
+#: doc/classes/Vector2.xml:237 doc/classes/Vector3.xml:236
msgid ""
-"Returns a vector composed of the [code]fposmod[/code] of this vector's "
+"Returns a vector composed of the [method @GDScript.fposmod] of this vector's "
"components and [code]mod[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:241 doc/classes/Vector3.xml:240
+#: doc/classes/Vector2.xml:246 doc/classes/Vector3.xml:245
msgid ""
-"Returns a vector composed of the [code]fposmod[/code] of this vector's "
+"Returns a vector composed of the [method @GDScript.fposmod] of this vector's "
"components and [code]modv[/code]'s components."
msgstr ""
-#: doc/classes/Vector2.xml:250 doc/classes/Vector3.xml:249
+#: doc/classes/Vector2.xml:255
msgid "Returns the vector projected onto the vector [code]b[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:259 doc/classes/Vector3.xml:258
+#: doc/classes/Vector2.xml:264
msgid "Returns the vector reflected from a plane defined by the given normal."
msgstr ""
-#: doc/classes/Vector2.xml:268
+#: doc/classes/Vector2.xml:273
msgid ""
"Returns the vector rotated by [code]phi[/code] radians. See also [method "
"@GDScript.deg2rad]."
msgstr ""
-#: doc/classes/Vector2.xml:275 doc/classes/Vector3.xml:276
+#: doc/classes/Vector2.xml:280
msgid ""
"Returns the vector with all components rounded to the nearest integer, with "
"halfway cases rounded away from zero."
msgstr ""
-#: doc/classes/Vector2.xml:282 doc/classes/Vector2i.xml:53
-#: doc/classes/Vector3.xml:283 doc/classes/Vector3i.xml:55
+#: doc/classes/Vector2.xml:287
msgid ""
"Returns the vector with each component set to one or negative one, depending "
-"on the signs of the components."
+"on the signs of the components, or zero if the component is zero, by calling "
+"[method @GDScript.sign] on each component."
msgstr ""
-#: doc/classes/Vector2.xml:293 doc/classes/Vector3.xml:294
+#: doc/classes/Vector2.xml:298 doc/classes/Vector3.xml:299
msgid ""
"Returns the result of spherical linear interpolation between this vector and "
-"[code]b[/code], by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation.\n"
+"[code]b[/code], by amount [code]t[/code]. [code]t[/code] is on the range of "
+"0.0 to 1.0, representing the amount of interpolation.\n"
"[b]Note:[/b] Both vectors must be normalized."
msgstr ""
-#: doc/classes/Vector2.xml:303 doc/classes/Vector3.xml:304
-msgid ""
-"Returns the component of the vector along a plane defined by the given "
-"normal."
+#: doc/classes/Vector2.xml:308 doc/classes/Vector3.xml:309
+msgid "Returns this vector slid along a plane defined by the given normal."
msgstr ""
-#: doc/classes/Vector2.xml:312 doc/classes/Vector3.xml:313
-msgid "Returns the vector snapped to a grid with the given size."
+#: doc/classes/Vector2.xml:317 doc/classes/Vector3.xml:318
+msgid ""
+"Returns this vector with each component snapped to the nearest multiple of "
+"[code]step[/code]. This can also be used to round to an arbitrary number of "
+"decimals."
msgstr ""
-#: doc/classes/Vector2.xml:319
-msgid "Returns a perpendicular vector."
+#: doc/classes/Vector2.xml:324
+msgid ""
+"Returns a perpendicular vector rotated 90 degrees counter-clockwise compared "
+"to the original, with the same length."
msgstr ""
-#: doc/classes/Vector2.xml:325 doc/classes/Vector2i.xml:59
-#: doc/classes/Vector3.xml:326 doc/classes/Vector3i.xml:61
+#: doc/classes/Vector2.xml:330 doc/classes/Vector2i.xml:59
+#: doc/classes/Vector3.xml:332 doc/classes/Vector3i.xml:61
msgid ""
"The vector's X component. Also accessible by using the index position [code]"
"[0][/code]."
msgstr ""
-#: doc/classes/Vector2.xml:328 doc/classes/Vector2i.xml:62
-#: doc/classes/Vector3.xml:329 doc/classes/Vector3i.xml:64
+#: doc/classes/Vector2.xml:333 doc/classes/Vector2i.xml:62
+#: doc/classes/Vector3.xml:335 doc/classes/Vector3i.xml:64
msgid ""
"The vector's Y component. Also accessible by using the index position [code]"
"[1][/code]."
msgstr ""
-#: doc/classes/Vector2.xml:333 doc/classes/Vector2i.xml:67
+#: doc/classes/Vector2.xml:338 doc/classes/Vector2i.xml:67
#: doc/classes/Vector3i.xml:72
msgid "Enumerated value for the X axis."
msgstr ""
-#: doc/classes/Vector2.xml:336 doc/classes/Vector2i.xml:70
+#: doc/classes/Vector2.xml:341 doc/classes/Vector2i.xml:70
#: doc/classes/Vector3i.xml:75
msgid "Enumerated value for the Y axis."
msgstr ""
-#: doc/classes/Vector2.xml:339 doc/classes/Vector2i.xml:73
-#: doc/classes/Vector3.xml:346 doc/classes/Vector3i.xml:81
-msgid "Zero vector."
+#: doc/classes/Vector2.xml:344 doc/classes/Vector2i.xml:73
+#: doc/classes/Vector3.xml:352 doc/classes/Vector3i.xml:81
+msgid "Zero vector, a vector with all components set to [code]0[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:342 doc/classes/Vector2i.xml:76
-#: doc/classes/Vector3.xml:349 doc/classes/Vector3i.xml:84
-msgid "One vector."
+#: doc/classes/Vector2.xml:347 doc/classes/Vector2i.xml:76
+#: doc/classes/Vector3.xml:355 doc/classes/Vector3i.xml:84
+msgid "One vector, a vector with all components set to [code]1[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:345 doc/classes/Vector3.xml:352
-msgid "Infinity vector."
+#: doc/classes/Vector2.xml:350 doc/classes/Vector3.xml:358
+msgid ""
+"Infinity vector, a vector with all components set to [constant @GDScript."
+"INF]."
msgstr ""
-#: doc/classes/Vector2.xml:348 doc/classes/Vector2i.xml:79
-#: doc/classes/Vector3.xml:355 doc/classes/Vector3i.xml:87
-msgid "Left unit vector."
+#: doc/classes/Vector2.xml:353 doc/classes/Vector2i.xml:79
+msgid "Left unit vector. Represents the direction of left."
msgstr ""
-#: doc/classes/Vector2.xml:351 doc/classes/Vector2i.xml:82
-#: doc/classes/Vector3.xml:358 doc/classes/Vector3i.xml:90
-msgid "Right unit vector."
+#: doc/classes/Vector2.xml:356 doc/classes/Vector2i.xml:82
+msgid "Right unit vector. Represents the direction of right."
msgstr ""
-#: doc/classes/Vector2.xml:354 doc/classes/Vector2i.xml:85
-#: doc/classes/Vector3.xml:361 doc/classes/Vector3i.xml:93
-msgid "Up unit vector."
+#: doc/classes/Vector2.xml:359 doc/classes/Vector2i.xml:85
+msgid "Up unit vector. Y is down in 2D, so this vector points -Y."
msgstr ""
-#: doc/classes/Vector2.xml:357 doc/classes/Vector2i.xml:88
-#: doc/classes/Vector3.xml:364 doc/classes/Vector3i.xml:96
-msgid "Down unit vector."
+#: doc/classes/Vector2.xml:362 doc/classes/Vector2i.xml:88
+msgid "Down unit vector. Y is down in 2D, so this vector points +Y."
msgstr ""
#: doc/classes/Vector2i.xml:4
@@ -53705,6 +54479,16 @@ msgid ""
"will be truncated."
msgstr ""
+#: doc/classes/Vector2i.xml:46
+msgid "Returns the ratio of [member x] to [member y]."
+msgstr ""
+
+#: doc/classes/Vector2i.xml:53 doc/classes/Vector3i.xml:55
+msgid ""
+"Returns the vector with each component set to one or negative one, depending "
+"on the signs of the components."
+msgstr ""
+
#: doc/classes/Vector3.xml:4
msgid "Vector used for 3D math using floating point coordinates."
msgstr ""
@@ -53729,120 +54513,170 @@ msgid "Returns a [Vector3] with the given components."
msgstr ""
#: doc/classes/Vector3.xml:50
-msgid "Returns the minimum angle to the given vector."
+msgid "Returns the minimum angle to the given vector, in radians."
msgstr ""
#: doc/classes/Vector3.xml:66
-msgid "Returns a new vector with all components rounded up."
+msgid ""
+"Returns a new vector with all components rounded up (towards positive "
+"infinity)."
msgstr ""
#: doc/classes/Vector3.xml:75
-msgid "Returns the cross product with [code]b[/code]."
+msgid "Returns the cross product of this vector and [code]b[/code]."
msgstr ""
#: doc/classes/Vector3.xml:90
msgid ""
"Performs a cubic interpolation between vectors [code]pre_a[/code], [code]a[/"
"code], [code]b[/code], [code]post_b[/code] ([code]a[/code] is current), by "
-"the given amount [code]t[/code]. [code]t[/code] is in the range of [code]0.0 "
-"- 1.0[/code], representing the amount of interpolation."
-msgstr ""
-
-#: doc/classes/Vector3.xml:108
-msgid ""
-"Returns the squared distance to [code]b[/code]. Prefer this function over "
-"[method distance_to] if you need to sort vectors or need the squared "
-"distance for some formula."
+"the given amount [code]t[/code]. [code]t[/code] is on the range of 0.0 to "
+"1.0, representing the amount of interpolation."
msgstr ""
-#: doc/classes/Vector3.xml:117
-msgid "Returns the distance to [code]b[/code]."
+#: doc/classes/Vector3.xml:118
+msgid "Returns the distance between this vector and [code]b[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:126
-msgid "Returns the dot product with [code]b[/code]."
+#: doc/classes/Vector3.xml:127
+msgid ""
+"Returns the dot product of this vector and [code]b[/code]. This can be used "
+"to compare the angle between two vectors. For example, this can be used to "
+"determine whether an enemy is facing the player.\n"
+"The dot product will be [code]0[/code] for a straight angle (90 degrees), "
+"greater than 0 for angles narrower than 90 degrees and lower than 0 for "
+"angles wider than 90 degrees.\n"
+"When using unit (normalized) vectors, the result will always be between "
+"[code]-1.0[/code] (180 degree angle) when the vectors are facing opposite "
+"directions, and [code]1.0[/code] (0 degree angle) when the vectors are "
+"aligned.\n"
+"[b]Note:[/b] [code]a.dot(b)[/code] is equivalent to [code]b.dot(a)[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:133
-msgid "Returns a new vector with all components rounded down."
+#: doc/classes/Vector3.xml:137
+msgid ""
+"Returns a new vector with all components rounded down (towards negative "
+"infinity)."
msgstr ""
-#: doc/classes/Vector3.xml:140
+#: doc/classes/Vector3.xml:144
msgid ""
"Returns the inverse of the vector. This is the same as [code]Vector3( 1.0 / "
"v.x, 1.0 / v.y, 1.0 / v.z )[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:170
+#: doc/classes/Vector3.xml:193 doc/classes/Vector3i.xml:41
msgid ""
-"Returns the vector's length squared. Prefer this function over [method "
-"length] if you need to sort vectors or need the squared length for some "
-"formula."
+"Returns the axis of the vector's largest value. See [code]AXIS_*[/code] "
+"constants. If all components are equal, this method returns [constant "
+"AXIS_X]."
msgstr ""
-#: doc/classes/Vector3.xml:181
+#: doc/classes/Vector3.xml:200 doc/classes/Vector3i.xml:48
msgid ""
-"Returns the result of the linear interpolation between this vector and "
-"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation.."
+"Returns the axis of the vector's smallest value. See [code]AXIS_*[/code] "
+"constants. If all components are equal, this method returns [constant "
+"AXIS_Z]."
msgstr ""
-#: doc/classes/Vector3.xml:188 doc/classes/Vector3i.xml:41
+#: doc/classes/Vector3.xml:211
msgid ""
-"Returns the axis of the vector's largest value. See [code]AXIS_*[/code] "
-"constants."
+"Moves this vector toward [code]to[/code] by the fixed [code]delta[/code] "
+"amount."
msgstr ""
-#: doc/classes/Vector3.xml:195 doc/classes/Vector3i.xml:48
+#: doc/classes/Vector3.xml:227
+msgid "Returns the outer product with [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:254
+msgid "Returns this vector projected onto another vector [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:263
+msgid "Returns this vector reflected from a plane defined by the given normal."
+msgstr ""
+
+#: doc/classes/Vector3.xml:274
msgid ""
-"Returns the axis of the vector's smallest value. See [code]AXIS_*[/code] "
-"constants."
+"Rotates this vector around a given axis by [code]phi[/code] radians. The "
+"axis must be a normalized vector."
msgstr ""
-#: doc/classes/Vector3.xml:222
-msgid "Returns the outer product with [code]b[/code]."
+#: doc/classes/Vector3.xml:281
+msgid ""
+"Returns this vector with all components rounded to the nearest integer, with "
+"halfway cases rounded away from zero."
msgstr ""
-#: doc/classes/Vector3.xml:269
+#: doc/classes/Vector3.xml:288
msgid ""
-"Rotates the vector around a given axis by [code]phi[/code] radians. The axis "
-"must be a normalized vector."
+"Returns a vector with each component set to one or negative one, depending "
+"on the signs of this vector's components, or zero if the component is zero, "
+"by calling [method @GDScript.sign] on each component."
msgstr ""
-#: doc/classes/Vector3.xml:320
-msgid "Returns a diagonal matrix with the vector as main diagonal."
+#: doc/classes/Vector3.xml:325
+msgid ""
+"Returns a diagonal matrix with the vector as main diagonal.\n"
+"This is equivalent to a Basis with no rotation or shearing and this vector's "
+"components set as the scale."
msgstr ""
-#: doc/classes/Vector3.xml:332 doc/classes/Vector3i.xml:67
+#: doc/classes/Vector3.xml:338 doc/classes/Vector3i.xml:67
msgid ""
"The vector's Z component. Also accessible by using the index position [code]"
"[2][/code]."
msgstr ""
-#: doc/classes/Vector3.xml:337
+#: doc/classes/Vector3.xml:343
msgid ""
"Enumerated value for the X axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:340
+#: doc/classes/Vector3.xml:346
msgid ""
"Enumerated value for the Y axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:343
+#: doc/classes/Vector3.xml:349
msgid ""
"Enumerated value for the Z axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:367 doc/classes/Vector3i.xml:99
-msgid "Forward unit vector."
+#: doc/classes/Vector3.xml:361 doc/classes/Vector3i.xml:87
+msgid ""
+"Left unit vector. Represents the local direction of left, and the global "
+"direction of west."
msgstr ""
-#: doc/classes/Vector3.xml:370 doc/classes/Vector3i.xml:102
-msgid "Back unit vector."
+#: doc/classes/Vector3.xml:364 doc/classes/Vector3i.xml:90
+msgid ""
+"Right unit vector. Represents the local direction of right, and the global "
+"direction of east."
+msgstr ""
+
+#: doc/classes/Vector3.xml:367 doc/classes/Vector3i.xml:93
+msgid "Up unit vector."
+msgstr ""
+
+#: doc/classes/Vector3.xml:370 doc/classes/Vector3i.xml:96
+msgid "Down unit vector."
+msgstr ""
+
+#: doc/classes/Vector3.xml:373 doc/classes/Vector3i.xml:99
+msgid ""
+"Forward unit vector. Represents the local direction of forward, and the "
+"global direction of north."
+msgstr ""
+
+#: doc/classes/Vector3.xml:376 doc/classes/Vector3i.xml:102
+msgid ""
+"Back unit vector. Represents the local direction of back, and the global "
+"direction of south."
msgstr ""
#: doc/classes/Vector3i.xml:4
@@ -53891,10 +54725,14 @@ msgid ""
"directly.\n"
"[b]Note:[/b] The origin point of your VehicleBody3D will determine the "
"center of gravity of your vehicle so it is better to keep this low and move "
-"the [CollisionShape3D] and [MeshInstance3D] upwards."
+"the [CollisionShape3D] and [MeshInstance3D] upwards.\n"
+"[b]Note:[/b] This class has known issues and isn't designed to provide "
+"realistic 3D vehicle physics. If you want advanced vehicle physics, you will "
+"probably have to write your own physics integration using another "
+"[PhysicsBody3D] class."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:16
+#: doc/classes/VehicleBody3D.xml:17
msgid ""
"Slows down the vehicle by applying a braking force. The vehicle is only "
"slowed down if the wheels are in contact with a surface. The force you need "
@@ -53903,7 +54741,7 @@ msgid ""
"a value in the 25 - 30 range for hard braking."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:19
+#: doc/classes/VehicleBody3D.xml:20
msgid ""
"Accelerates the vehicle by applying an engine force. The vehicle is only "
"speed up if the wheels that have [member VehicleWheel3D.use_as_traction] set "
@@ -53916,7 +54754,7 @@ msgid ""
"A negative value will result in the vehicle reversing."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:25
+#: doc/classes/VehicleBody3D.xml:26
msgid ""
"The steering angle for the vehicle. Setting this to a non-zero value will "
"result in the vehicle turning when it's moving. Wheels that have [member "
@@ -53932,25 +54770,29 @@ msgstr ""
msgid ""
"This node needs to be used as a child node of [VehicleBody3D] and simulates "
"the behavior of one of its wheels. This node also acts as a collider to "
-"detect if the wheel is touching a surface."
+"detect if the wheel is touching a surface.\n"
+"[b]Note:[/b] This class has known issues and isn't designed to provide "
+"realistic 3D vehicle physics. If you want advanced vehicle physics, you will "
+"probably have to write your own physics integration using another "
+"[PhysicsBody3D] class."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:16
+#: doc/classes/VehicleWheel3D.xml:17
msgid "Returns the rotational speed of the wheel in revolutions per minute."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:23
+#: doc/classes/VehicleWheel3D.xml:24
msgid ""
"Returns a value between 0.0 and 1.0 that indicates whether this wheel is "
"skidding. 0.0 is skidding (the wheel has lost grip, e.g. icy terrain), 1.0 "
"means not skidding (the wheel has full grip, e.g. dry asphalt road)."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:30
+#: doc/classes/VehicleWheel3D.xml:31
msgid "Returns [code]true[/code] if this wheel is in contact with a surface."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:36
+#: doc/classes/VehicleWheel3D.xml:37
msgid ""
"Slows down the wheel by applying a braking force. The wheel is only slowed "
"down if it is in contact with a surface. The force you need to apply to "
@@ -53959,7 +54801,7 @@ msgid ""
"- 30 range for hard braking."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:39
+#: doc/classes/VehicleWheel3D.xml:40
msgid ""
"The damping applied to the spring when the spring is being compressed. This "
"value should be between 0.0 (no damping) and 1.0. A value of 0.0 means the "
@@ -53967,7 +54809,7 @@ msgid ""
"is around 0.3 for a normal car, 0.5 for a race car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:42
+#: doc/classes/VehicleWheel3D.xml:43
msgid ""
"The damping applied to the spring when relaxing. This value should be "
"between 0.0 (no damping) and 1.0. This value should always be slightly "
@@ -53975,7 +54817,7 @@ msgid ""
"damping_compression] value of 0.3, try a relaxation value of 0.5."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:45
+#: doc/classes/VehicleWheel3D.xml:46
msgid ""
"Accelerates the wheel by applying an engine force. The wheel is only speed "
"up if it is in contact with a surface. The [member RigidBody3D.mass] of the "
@@ -53986,13 +54828,13 @@ msgid ""
"A negative value will result in the wheel reversing."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:50
+#: doc/classes/VehicleWheel3D.xml:51
msgid ""
"The steering angle for the wheel. Setting this to a non-zero value will "
"result in the vehicle turning when it's moving."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:53
+#: doc/classes/VehicleWheel3D.xml:54
msgid ""
"The maximum force the spring can resist. This value should be higher than a "
"quarter of the [member RigidBody3D.mass] of the [VehicleBody3D] or the "
@@ -54000,28 +54842,28 @@ msgid ""
"obtained by a value that is about 3× to 4× this number."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:56
+#: doc/classes/VehicleWheel3D.xml:57
msgid ""
"This value defines the stiffness of the suspension. Use a value lower than "
"50 for an off-road car, a value between 50 and 100 for a race car and try "
"something around 200 for something like a Formula 1 car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:59
+#: doc/classes/VehicleWheel3D.xml:60
msgid ""
"This is the distance the suspension can travel. As Godot units are "
"equivalent to meters, keep this setting relatively low. Try a value between "
"0.1 and 0.3 depending on the type of car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:62
+#: doc/classes/VehicleWheel3D.xml:63
msgid ""
"If [code]true[/code], this wheel will be turned when the car steers. This "
"value is used in conjunction with [member VehicleBody3D.steering] and "
"ignored if you are using the per-wheel [member steering] value instead."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:65
+#: doc/classes/VehicleWheel3D.xml:66
msgid ""
"If [code]true[/code], this wheel transfers engine force to the ground to "
"propel the vehicle forward. This value is used in conjunction with [member "
@@ -54029,7 +54871,7 @@ msgid ""
"[member engine_force] value instead."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:68
+#: doc/classes/VehicleWheel3D.xml:69
msgid ""
"This determines how much grip this wheel has. It is combined with the "
"friction setting of the surface the wheel is in contact with. 0.0 means no "
@@ -54039,11 +54881,11 @@ msgid ""
"It's best to set this to 1.0 when starting out."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:72
+#: doc/classes/VehicleWheel3D.xml:73
msgid "The radius of the wheel in meters."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:75
+#: doc/classes/VehicleWheel3D.xml:76
msgid ""
"This is the distance in meters the wheel is lowered from its origin point. "
"Don't set this to 0.0 and move the wheel into position, instead move the "
@@ -54052,7 +54894,7 @@ msgid ""
"down to the position it should be in when the car is in rest."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:78
+#: doc/classes/VehicleWheel3D.xml:79
msgid ""
"This value affects the roll of your vehicle. If set to 1.0 for all wheels, "
"your vehicle will be prone to rolling over, while a value of 0.0 will resist "
@@ -54530,7 +55372,7 @@ msgstr ""
#: doc/classes/Viewport.xml:318
msgid ""
"Use fast approximate antialiasing. FXAA is a popular screen-space "
-"antialising method, which is fast but will make the image look blurry, "
+"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."
msgstr ""
@@ -54583,24 +55425,24 @@ msgid ""
"your [WorldEnvironment]."
msgstr ""
-#: doc/classes/Viewport.xml:384
+#: doc/classes/Viewport.xml:381
msgid ""
"Colors each PSSM split for the [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, and yellow."
msgstr ""
-#: doc/classes/Viewport.xml:387
+#: doc/classes/Viewport.xml:384
msgid ""
"Draws the decal atlas used by [Decal]s and light projector textures in the "
"upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/Viewport.xml:402
+#: doc/classes/Viewport.xml:405
msgid "Max value for [enum DefaultCanvasItemTextureFilter] enum."
msgstr ""
-#: doc/classes/Viewport.xml:414
+#: doc/classes/Viewport.xml:417
msgid "Max value for [enum DefaultCanvasItemTextureRepeat] enum."
msgstr ""
@@ -54631,82 +55473,84 @@ msgid ""
"The VisibilityEnabler2D will disable [RigidBody2D], [AnimationPlayer], and "
"other nodes when they are not visible. It will only affect nodes with the "
"same root node as the VisibilityEnabler2D, and the root node itself.\n"
+"If you just want to receive notifications, use [VisibilityNotifier2D] "
+"instead.\n"
"[b]Note:[/b] For performance reasons, VisibilityEnabler2D uses an "
"approximate heuristic with precision determined by [member ProjectSettings."
-"world/2d/cell_size]. If you need exact visibility checking, use another "
+"world/2d/cell_size]. If you need precise visibility checking, use another "
"method such as adding an [Area2D] node as a child of a [Camera2D] node.\n"
"[b]Note:[/b] VisibilityEnabler2D will not affect nodes added after scene "
"initialization."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:20
-#: doc/classes/VisibilityEnabler3D.xml:20
+#: doc/classes/VisibilityEnabler2D.xml:21
+#: doc/classes/VisibilityEnabler3D.xml:21
msgid ""
"Returns whether the enabler identified by given [enum Enabler] constant is "
"active."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:31
-#: doc/classes/VisibilityEnabler3D.xml:31
+#: doc/classes/VisibilityEnabler2D.xml:32
+#: doc/classes/VisibilityEnabler3D.xml:32
msgid ""
"Sets active state of the enabler identified by given [enum Enabler] constant."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:37
+#: doc/classes/VisibilityEnabler2D.xml:38
msgid "If [code]true[/code], [RigidBody2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:40
+#: doc/classes/VisibilityEnabler2D.xml:41
msgid "If [code]true[/code], [AnimatedSprite2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:43
-#: doc/classes/VisibilityEnabler3D.xml:40
+#: doc/classes/VisibilityEnabler2D.xml:44
+#: doc/classes/VisibilityEnabler3D.xml:41
msgid "If [code]true[/code], [AnimationPlayer] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:46
+#: doc/classes/VisibilityEnabler2D.xml:47
msgid "If [code]true[/code], [GPUParticles2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:49
+#: doc/classes/VisibilityEnabler2D.xml:50
msgid ""
"If [code]true[/code], the parent's [method Node._physics_process] will be "
"stopped."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:52
+#: doc/classes/VisibilityEnabler2D.xml:53
msgid ""
"If [code]true[/code], the parent's [method Node._process] will be stopped."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:57
-#: doc/classes/VisibilityEnabler3D.xml:45
+#: doc/classes/VisibilityEnabler2D.xml:58
+#: doc/classes/VisibilityEnabler3D.xml:46
msgid "This enabler will pause [AnimationPlayer] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:60
+#: doc/classes/VisibilityEnabler2D.xml:61
msgid "This enabler will freeze [RigidBody2D] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:63
+#: doc/classes/VisibilityEnabler2D.xml:64
msgid "This enabler will stop [GPUParticles2D] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:66
+#: doc/classes/VisibilityEnabler2D.xml:67
msgid "This enabler will stop the parent's _process function."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:69
+#: doc/classes/VisibilityEnabler2D.xml:70
msgid "This enabler will stop the parent's _physics_process function."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:72
+#: doc/classes/VisibilityEnabler2D.xml:73
msgid "This enabler will stop [AnimatedSprite2D] nodes animations."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:75
-#: doc/classes/VisibilityEnabler3D.xml:51
+#: doc/classes/VisibilityEnabler2D.xml:76
+#: doc/classes/VisibilityEnabler3D.xml:52
msgid "Represents the size of the [enum Enabler] enum."
msgstr ""
@@ -54715,19 +55559,23 @@ msgid ""
"The VisibilityEnabler3D will disable [RigidBody3D] and [AnimationPlayer] "
"nodes when they are not visible. It will only affect other nodes within the "
"same scene as the VisibilityEnabler3D itself.\n"
+"If you just want to receive notifications, use [VisibilityNotifier3D] "
+"instead.\n"
"[b]Note:[/b] VisibilityEnabler3D uses an approximate heuristic for "
"performance reasons. It doesn't take walls and other occlusion into account. "
-"If you need exact visibility checking, use another method such as adding an "
-"[Area3D] node as a child of a [Camera3D] node.\n"
+"The heuristic is an implementation detail and may change in future versions. "
+"If you need precise visibility checking, use another method such as adding "
+"an [Area3D] node as a child of a [Camera3D] node and/or [method Vector3."
+"dot].\n"
"[b]Note:[/b] VisibilityEnabler3D will not affect nodes added after scene "
"initialization."
msgstr ""
-#: doc/classes/VisibilityEnabler3D.xml:37
+#: doc/classes/VisibilityEnabler3D.xml:38
msgid "If [code]true[/code], [RigidBody3D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler3D.xml:48
+#: doc/classes/VisibilityEnabler3D.xml:49
msgid "This enabler will freeze [RigidBody3D] nodes."
msgstr ""
@@ -54741,13 +55589,15 @@ msgid ""
"The VisibilityNotifier2D detects when it is visible on the screen. It also "
"notifies when its bounding rectangle enters or exits the screen or a "
"viewport.\n"
+"If you want nodes to be disabled automatically when they exit the screen, "
+"use [VisibilityEnabler2D] instead.\n"
"[b]Note:[/b] For performance reasons, VisibilityNotifier2D uses an "
"approximate heuristic with precision determined by [member ProjectSettings."
-"world/2d/cell_size]. If you need exact visibility checking, use another "
+"world/2d/cell_size]. If you need precise visibility checking, use another "
"method such as adding an [Area2D] node as a child of a [Camera2D] node."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:17
+#: doc/classes/VisibilityNotifier2D.xml:18
msgid ""
"If [code]true[/code], the bounding rectangle is on the screen.\n"
"[b]Note:[/b] It takes one frame for the node's visibility to be assessed "
@@ -54756,23 +55606,23 @@ msgid ""
"pass."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:24
+#: doc/classes/VisibilityNotifier2D.xml:25
msgid "The VisibilityNotifier2D's bounding rectangle."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:30
+#: doc/classes/VisibilityNotifier2D.xml:31
msgid "Emitted when the VisibilityNotifier2D enters the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:35
+#: doc/classes/VisibilityNotifier2D.xml:36
msgid "Emitted when the VisibilityNotifier2D exits the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:42
+#: doc/classes/VisibilityNotifier2D.xml:43
msgid "Emitted when the VisibilityNotifier2D enters a [Viewport]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:49
+#: doc/classes/VisibilityNotifier2D.xml:50
msgid "Emitted when the VisibilityNotifier2D exits a [Viewport]'s view."
msgstr ""
@@ -54781,13 +55631,16 @@ msgid ""
"The VisibilityNotifier3D detects when it is visible on the screen. It also "
"notifies when its bounding rectangle enters or exits the screen or a "
"[Camera3D]'s view.\n"
+"If you want nodes to be disabled automatically when they exit the screen, "
+"use [VisibilityEnabler3D] instead.\n"
"[b]Note:[/b] VisibilityNotifier3D uses an approximate heuristic for "
"performance reasons. It doesn't take walls and other occlusion into account. "
-"If you need exact visibility checking, use another method such as adding an "
-"[Area3D] node as a child of a [Camera3D] node."
+"The heuristic is an implementation detail and may change in future versions. "
+"If you need precise visibility checking, use another method such as adding "
+"an [Area3D] node as a child of a [Camera3D] node and/or [method Vector3.dot]."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:17
+#: doc/classes/VisibilityNotifier3D.xml:18
msgid ""
"If [code]true[/code], the bounding box is on the screen.\n"
"[b]Note:[/b] It takes one frame for the node's visibility to be assessed "
@@ -54796,23 +55649,23 @@ msgid ""
"pass."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:24
+#: doc/classes/VisibilityNotifier3D.xml:25
msgid "The VisibilityNotifier3D's bounding box."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:32
+#: doc/classes/VisibilityNotifier3D.xml:33
msgid "Emitted when the VisibilityNotifier3D enters a [Camera3D]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:39
+#: doc/classes/VisibilityNotifier3D.xml:40
msgid "Emitted when the VisibilityNotifier3D exits a [Camera3D]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:44
+#: doc/classes/VisibilityNotifier3D.xml:45
msgid "Emitted when the VisibilityNotifier3D enters the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:49
+#: doc/classes/VisibilityNotifier3D.xml:50
msgid "Emitted when the VisibilityNotifier3D exits the screen."
msgstr ""
@@ -55232,6 +56085,12 @@ msgid ""
"exist."
msgstr ""
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:90
+msgid ""
+"Easing function, based on exponent. 0 is constant, 1 is linear, 0 to 1 is "
+"ease-in, 1+ is ease out. Negative values are in-out/out in."
+msgstr ""
+
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:93
msgid ""
"Return the number of digit places after the decimal that the first non-zero "
@@ -56117,6 +56976,7 @@ msgid "A shader for light calculations."
msgstr ""
#: doc/classes/VisualShader.xml:214
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:26
msgid "Represents the size of the [enum Type] enum."
msgstr ""
@@ -56219,6 +57079,24 @@ msgstr ""
msgid "Translated to [code]uniform bool[/code] in the shader language."
msgstr ""
+#: doc/classes/VisualShaderNodeBooleanUniform.xml:15
+#: doc/classes/VisualShaderNodeColorUniform.xml:15
+#: doc/classes/VisualShaderNodeFloatUniform.xml:15
+#: doc/classes/VisualShaderNodeIntUniform.xml:15
+#: doc/classes/VisualShaderNodeTransformUniform.xml:15
+#: doc/classes/VisualShaderNodeVec3Uniform.xml:15
+msgid "A default value to be assigned within the shader."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeBooleanUniform.xml:18
+#: doc/classes/VisualShaderNodeColorUniform.xml:18
+#: doc/classes/VisualShaderNodeFloatUniform.xml:18
+#: doc/classes/VisualShaderNodeIntUniform.xml:18
+#: doc/classes/VisualShaderNodeTransformUniform.xml:18
+#: doc/classes/VisualShaderNodeVec3Uniform.xml:18
+msgid "Enables usage of the [member default_value]."
+msgstr ""
+
#: doc/classes/VisualShaderNodeColorConstant.xml:4
msgid "A [Color] constant to be used within the visual shader graph."
msgstr ""
@@ -57069,49 +57947,49 @@ msgstr ""
msgid "Translated to [code]uniform float[/code] in the shader language."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:15
-#: doc/classes/VisualShaderNodeIntUniform.xml:15
+#: doc/classes/VisualShaderNodeFloatUniform.xml:21
+#: doc/classes/VisualShaderNodeIntUniform.xml:21
msgid ""
"A hint applied to the uniform, which controls the values it can take when "
"set through the inspector."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:18
-#: doc/classes/VisualShaderNodeIntUniform.xml:18
+#: doc/classes/VisualShaderNodeFloatUniform.xml:24
+#: doc/classes/VisualShaderNodeIntUniform.xml:24
msgid ""
"Minimum value for range hints. Used if [member hint] is set to [constant "
"HINT_RANGE] or [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:21
-#: doc/classes/VisualShaderNodeIntUniform.xml:21
+#: doc/classes/VisualShaderNodeFloatUniform.xml:27
+#: doc/classes/VisualShaderNodeIntUniform.xml:27
msgid ""
"Maximum value for range hints. Used if [member hint] is set to [constant "
"HINT_RANGE] or [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:24
-#: doc/classes/VisualShaderNodeIntUniform.xml:24
+#: doc/classes/VisualShaderNodeFloatUniform.xml:30
+#: doc/classes/VisualShaderNodeIntUniform.xml:30
msgid ""
"Step (increment) value for the range hint with step. Used if [member hint] "
"is set to [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:29
-#: doc/classes/VisualShaderNodeIntUniform.xml:29
+#: doc/classes/VisualShaderNodeFloatUniform.xml:35
+#: doc/classes/VisualShaderNodeIntUniform.xml:35
msgid "No hint used."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:32
-#: doc/classes/VisualShaderNodeIntUniform.xml:32
+#: doc/classes/VisualShaderNodeFloatUniform.xml:38
+#: doc/classes/VisualShaderNodeIntUniform.xml:38
msgid ""
"A range hint for scalar value, which limits possible input values between "
"[member min] and [member max]. Translated to [code]hint_range(min, max)[/"
"code] in shader code."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:35
-#: doc/classes/VisualShaderNodeIntUniform.xml:35
+#: doc/classes/VisualShaderNodeFloatUniform.xml:41
+#: doc/classes/VisualShaderNodeIntUniform.xml:41
msgid ""
"A range hint for scalar value with step, which limits possible input values "
"between [member min] and [member max], with a step (increment) of [member "
@@ -57393,6 +58271,26 @@ msgid ""
"results, e.g. division by zero)."
msgstr ""
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:4
+msgid "Performs a fused multiply-add operation within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:7
+msgid "Uses three operands to compute [code](a * b + c)[/code] expression."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:15
+msgid "A type of operands and returned value."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:20
+msgid "A scalar type."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:23
+msgid "A vector type."
+msgstr ""
+
#: doc/classes/VisualShaderNodeOuterProduct.xml:4
msgid ""
"Calculates an outer product of two vectors within the visual shader graph."
@@ -57415,7 +58313,7 @@ msgstr ""
#: doc/classes/VisualShaderNodeOutput.xml:7
msgid ""
"This visual shader node is present in all shader graphs in form of \"Output"
-"\" block with mutliple output value ports."
+"\" block with multiple output value ports."
msgstr ""
#: doc/classes/VisualShaderNodeSample3D.xml:4
@@ -57779,6 +58677,20 @@ msgid ""
"[ShaderMaterial] properties."
msgstr ""
+#: doc/classes/VisualShaderNodeUniformRef.xml:4
+msgid "A reference to an existing [VisualShaderNodeUniform]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniformRef.xml:7
+msgid ""
+"Creating a reference to a [VisualShaderNodeUniform] allows you to reuse this "
+"uniform in different shaders or shader stages easily."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniformRef.xml:15
+msgid "The name of the uniform which this reference points to."
+msgstr ""
+
#: doc/classes/VisualShaderNodeVec3Constant.xml:4
msgid "A [Vector3] constant to be used within the visual shader graph."
msgstr ""
@@ -58109,7 +59021,7 @@ msgstr ""
msgid ""
"Translated to [code]refract(I, N, eta)[/code] in the shader language, where "
"[code]I[/code] is the incident vector, [code]N[/code] is the normal vector "
-"and [code]eta[/code] is the ratio of the indicies of the refraction."
+"and [code]eta[/code] is the ratio of the indices of the refraction."
msgstr ""
#: doc/classes/VisualShaderNodeVectorScalarMix.xml:4
diff --git a/doc/translations/th.po b/doc/translations/th.po
index 7d0f3e43a6..5753295ef4 100644
--- a/doc/translations/th.po
+++ b/doc/translations/th.po
@@ -95,9 +95,10 @@ msgid ""
msgstr ""
#: modules/gdscript/doc_classes/@GDScript.xml:55
+#, fuzzy
msgid ""
-"Returns the absolute value of parameter [code]s[/code] (i.e. unsigned value, "
-"works for integer and float).\n"
+"Returns the absolute value of parameter [code]s[/code] (i.e. positive "
+"value).\n"
"[codeblock]\n"
"# a is 1\n"
"a = abs(-1)\n"
@@ -169,7 +170,7 @@ msgid ""
"angle from an angle's tangent in trigonometry: [code]atan(tan(angle)) == "
"angle[/code].\n"
"The method cannot know in which quadrant the angle should fall. See [method "
-"atan2] if you always want an exact angle.\n"
+"atan2] if you have both [code]y[/code] and [code]x[/code].\n"
"[codeblock]\n"
"a = atan(0.5) # a is 0.463648\n"
"[/codeblock]"
@@ -180,12 +181,13 @@ msgid ""
"Returns the arc tangent of [code]y/x[/code] in radians. Use to get the angle "
"of tangent [code]y/x[/code]. To compute the value, the method takes into "
"account the sign of both arguments in order to determine the quadrant.\n"
+"Important note: The Y coordinate comes first, by convention.\n"
"[codeblock]\n"
"a = atan2(0, -1) # a is 3.141593\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:143
+#: modules/gdscript/doc_classes/@GDScript.xml:144
msgid ""
"Decodes a byte array back to a value. When [code]allow_objects[/code] is "
"[code]true[/code] decoding objects is allowed.\n"
@@ -194,7 +196,7 @@ msgid ""
"avoid potential security threats (remote code execution)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:155
+#: modules/gdscript/doc_classes/@GDScript.xml:156
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:145
msgid ""
"Converts a 2D point expressed in the cartesian coordinate system (X and Y "
@@ -202,17 +204,17 @@ msgid ""
"angle)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:164
+#: modules/gdscript/doc_classes/@GDScript.xml:165
msgid ""
-"Rounds [code]s[/code] upward, returning the smallest integral value that is "
-"not less than [code]s[/code].\n"
+"Rounds [code]s[/code] upward (towards positive infinity), returning the "
+"smallest whole number that is not less than [code]s[/code].\n"
"[codeblock]\n"
"i = ceil(1.45) # i is 2\n"
"i = ceil(1.001) # i is 2\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:177
+#: modules/gdscript/doc_classes/@GDScript.xml:178
msgid ""
"Returns a character as a String of the given Unicode code point (which is "
"compatible with ASCII code).\n"
@@ -224,7 +226,7 @@ msgid ""
"This is the inverse of [method ord]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:196
+#: modules/gdscript/doc_classes/@GDScript.xml:197
msgid ""
"Clamps [code]value[/code] and returns a value not less than [code]min[/code] "
"and not more than [code]max[/code].\n"
@@ -239,7 +241,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:216
+#: modules/gdscript/doc_classes/@GDScript.xml:217
msgid ""
"Converts from a type to another in the best way possible. The [code]type[/"
"code] parameter uses the [enum Variant.Type] values.\n"
@@ -253,7 +255,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:233
+#: modules/gdscript/doc_classes/@GDScript.xml:234
msgid ""
"Returns the cosine of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -263,7 +265,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:247
+#: modules/gdscript/doc_classes/@GDScript.xml:248
msgid ""
"Returns the hyperbolic cosine of [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -272,11 +274,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:260
+#: modules/gdscript/doc_classes/@GDScript.xml:261
msgid "Converts from decibels to linear energy (audio)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:273
+#: modules/gdscript/doc_classes/@GDScript.xml:274
msgid ""
"Returns the result of [code]value[/code] decreased by [code]step[/code] * "
"[code]amount[/code].\n"
@@ -286,42 +288,44 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:286
+#: modules/gdscript/doc_classes/@GDScript.xml:287
msgid ""
-"Returns degrees converted to radians.\n"
+"Converts an angle expressed in degrees to radians.\n"
"[codeblock]\n"
"# r is 3.141593\n"
"r = deg2rad(180)\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:299
+#: modules/gdscript/doc_classes/@GDScript.xml:300
msgid ""
"Converts a previously converted instance to a dictionary, back into an "
"instance. Useful for deserializing."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:310
-#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:90
+#: modules/gdscript/doc_classes/@GDScript.xml:311
msgid ""
-"Easing function, based on exponent. 0 is constant, 1 is linear, 0 to 1 is "
-"ease-in, 1+ is ease out. Negative values are in-out/out in."
+"Easing function, based on exponent. The curve values are: 0 is constant, 1 "
+"is linear, 0 to 1 is ease-in, 1+ is ease out. Negative values are in-out/out "
+"in."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:319
+#: modules/gdscript/doc_classes/@GDScript.xml:320
msgid ""
"The natural exponential function. It raises the mathematical constant [b]e[/"
"b] to the power of [code]s[/code] and returns it.\n"
-"[b]e[/b] has an approximate value of 2.71828.\n"
+"[b]e[/b] has an approximate value of 2.71828, and can be obtained with "
+"[code]exp(1)[/code].\n"
"For exponents to other bases use the method [method pow].\n"
"[codeblock]\n"
"a = exp(2) # Approximately 7.39\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:333
+#: modules/gdscript/doc_classes/@GDScript.xml:334
msgid ""
-"Rounds [code]s[/code] to the closest smaller integer and returns it.\n"
+"Rounds [code]s[/code] downward (towards negative infinity), returning the "
+"largest whole number that is not more than [code]s[/code].\n"
"[codeblock]\n"
"# a is 2.0\n"
"a = floor(2.99)\n"
@@ -332,7 +336,7 @@ msgid ""
"use [code]int(s)[/code] directly."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:351
+#: modules/gdscript/doc_classes/@GDScript.xml:352
msgid ""
"Returns the floating-point remainder of [code]a/b[/code], keeping the sign "
"of [code]a[/code].\n"
@@ -343,7 +347,7 @@ msgid ""
"For the integer remainder operation, use the % operator."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:367
+#: modules/gdscript/doc_classes/@GDScript.xml:368
msgid ""
"Returns the floating-point modulus of [code]a/b[/code] that wraps equally in "
"positive and negative.\n"
@@ -369,7 +373,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:398
+#: modules/gdscript/doc_classes/@GDScript.xml:399
msgid ""
"Returns a reference to the specified function [code]funcname[/code] in the "
"[code]instance[/code] node. As functions aren't first-class objects in "
@@ -384,7 +388,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:412
+#: modules/gdscript/doc_classes/@GDScript.xml:413
msgid ""
"Returns an array of dictionaries representing the current call stack.\n"
"[codeblock]\n"
@@ -404,7 +408,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:435
+#: modules/gdscript/doc_classes/@GDScript.xml:436
msgid ""
"Returns the integer hash of the variable passed.\n"
"[codeblock]\n"
@@ -412,7 +416,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:447
+#: modules/gdscript/doc_classes/@GDScript.xml:448
msgid ""
"Returns the passed instance converted to a dictionary (useful for "
"serializing).\n"
@@ -430,7 +434,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:468
+#: modules/gdscript/doc_classes/@GDScript.xml:469
msgid ""
"Returns the Object that corresponds to [code]instance_id[/code]. All Objects "
"have a unique instance ID.\n"
@@ -443,7 +447,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:488
+#: modules/gdscript/doc_classes/@GDScript.xml:489
msgid ""
"Returns a normalized value considering the given range. This is the opposite "
"of [method lerp].\n"
@@ -457,33 +461,41 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:506
+#: modules/gdscript/doc_classes/@GDScript.xml:507
msgid ""
"Returns [code]true[/code] if [code]a[/code] and [code]b[/code] are "
-"approximately equal to each other."
+"approximately equal to each other.\n"
+"Here, approximately equal means that [code]a[/code] and [code]b[/code] are "
+"within a small internal epsilon of each other, which scales with the "
+"magnitude of the numbers.\n"
+"Infinity values of the same sign are considered equal."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:515
+#: modules/gdscript/doc_classes/@GDScript.xml:518
msgid ""
"Returns whether [code]s[/code] is an infinity value (either positive "
"infinity or negative infinity)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:524
+#: modules/gdscript/doc_classes/@GDScript.xml:527
msgid ""
"Returns whether [code]instance[/code] is a valid object (e.g. has not been "
"deleted from memory)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:533
-msgid "Returns whether [code]s[/code] is a NaN (Not-A-Number) value."
+#: modules/gdscript/doc_classes/@GDScript.xml:536
+msgid ""
+"Returns whether [code]s[/code] is a NaN (\"Not a Number\" or invalid) value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:542
-msgid "Returns [code]true[/code] if [code]s[/code] is zero or almost zero."
+#: modules/gdscript/doc_classes/@GDScript.xml:545
+msgid ""
+"Returns [code]true[/code] if [code]s[/code] is zero or almost zero.\n"
+"This method is faster than using [method is_equal_approx] with one value as "
+"zero."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:551
+#: modules/gdscript/doc_classes/@GDScript.xml:555
msgid ""
"Returns length of Variant [code]var[/code]. Length is the character count of "
"String, element count of Array, size of Dictionary, etc.\n"
@@ -494,7 +506,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:569
+#: modules/gdscript/doc_classes/@GDScript.xml:573
msgid ""
"Linearly interpolates between two values by a normalized value. This is the "
"opposite of [method inverse_lerp].\n"
@@ -509,7 +521,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:588
+#: modules/gdscript/doc_classes/@GDScript.xml:592
msgid ""
"Linearly interpolates between two angles (in radians) by a normalized "
"value.\n"
@@ -526,7 +538,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:607
+#: modules/gdscript/doc_classes/@GDScript.xml:611
msgid ""
"Converts from linear energy to decibels (audio). This can be used to "
"implement volume sliders that behave as expected (since volume isn't "
@@ -542,20 +554,28 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:622
+#: modules/gdscript/doc_classes/@GDScript.xml:626
msgid ""
-"Loads a resource from the filesystem located at [code]path[/code].\n"
+"Loads a resource from the filesystem located at [code]path[/code]. The "
+"resource is loaded on the method call (unless it's referenced already "
+"elsewhere, e.g. in another script or in the scene), which might cause slight "
+"delay, especially when loading scenes. To avoid unnecessary delays when "
+"loading something multiple times, either store the resource in a variable or "
+"use [method preload].\n"
"[b]Note:[/b] Resource paths can be obtained by right-clicking on a resource "
-"in the FileSystem dock and choosing [b]Copy Path[/b].\n"
+"in the FileSystem dock and choosing \"Copy Path\" or by dragging the file "
+"from the FileSystem dock into the script.\n"
"[codeblock]\n"
-"# Load a scene called main located in the root of the project directory.\n"
-"var main = load(\"res://main.tscn\")\n"
+"# Load a scene called main located in the root of the project directory and "
+"cache it in a variable.\n"
+"var main = load(\"res://main.tscn\") # main will contain a PackedScene "
+"resource.\n"
"[/codeblock]\n"
"[b]Important:[/b] The path must be absolute, a local path will just return "
"[code]null[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:637
+#: modules/gdscript/doc_classes/@GDScript.xml:641
msgid ""
"Natural logarithm. The amount of time needed to reach a certain level of "
"continuous growth.\n"
@@ -563,10 +583,12 @@ msgid ""
"calculators, which uses a base 10 logarithm.\n"
"[codeblock]\n"
"log(10) # Returns 2.302585\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] The logarithm of [code]0[/code] returns [code]-inf[/code], "
+"while negative values return [code]-nan[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:652
+#: modules/gdscript/doc_classes/@GDScript.xml:657
msgid ""
"Returns the maximum of two values.\n"
"[codeblock]\n"
@@ -575,7 +597,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:667
+#: modules/gdscript/doc_classes/@GDScript.xml:672
msgid ""
"Returns the minimum of two values.\n"
"[codeblock]\n"
@@ -584,27 +606,39 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:684
+#: modules/gdscript/doc_classes/@GDScript.xml:689
msgid ""
"Moves [code]from[/code] toward [code]to[/code] by the [code]delta[/code] "
"value.\n"
"Use a negative [code]delta[/code] value to move away.\n"
"[codeblock]\n"
+"move_toward(5, 10, 4) # Returns 9\n"
"move_toward(10, 5, 4) # Returns 6\n"
+"move_toward(10, 5, -1.5) # Returns 11.5\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:697
+#: modules/gdscript/doc_classes/@GDScript.xml:704
msgid ""
-"Returns the nearest larger power of 2 for integer [code]value[/code].\n"
+"Returns the nearest equal or larger power of 2 for integer [code]value[/"
+"code].\n"
+"In other words, returns the smallest value [code]a[/code] where [code]a = "
+"pow(2, n)[/code] such that [code]value <= a[/code] for some non-negative "
+"integer [code]n[/code].\n"
"[codeblock]\n"
"nearest_po2(3) # Returns 4\n"
"nearest_po2(4) # Returns 4\n"
"nearest_po2(5) # Returns 8\n"
-"[/codeblock]"
+"\n"
+"nearest_po2(0) # Returns 0 (this may not be what you expect)\n"
+"nearest_po2(-1) # Returns 0 (this may not be what you expect)\n"
+"[/codeblock]\n"
+"[b]WARNING:[/b] Due to the way it is implemented, this function returns "
+"[code]0[/code] rather than [code]1[/code] for non-positive values of "
+"[code]value[/code] (in reality, 1 is the smallest integer power of 2)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:711
+#: modules/gdscript/doc_classes/@GDScript.xml:723
msgid ""
"Returns an integer representing the Unicode code point of the given Unicode "
"character [code]char[/code].\n"
@@ -616,27 +650,28 @@ msgid ""
"This is the inverse of [method char]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:726
+#: modules/gdscript/doc_classes/@GDScript.xml:738
msgid ""
-"Parse JSON text to a Variant (use [method typeof] to check if it is what you "
-"expect).\n"
-"Be aware that the JSON specification does not define integer or float types, "
-"but only a number type. Therefore, parsing a JSON text will convert all "
-"numerical values to [float] types.\n"
-"Note that JSON objects do not preserve key order like Godot dictionaries, "
-"thus you should not rely on keys being in a certain order if a dictionary is "
-"constructed from JSON. In contrast, JSON arrays retain the order of their "
+"Parse JSON text to a Variant. (Use [method typeof] to check if the Variant's "
+"type is what you expect.)\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, parsing a JSON text will convert "
+"all numerical values to [float] types.\n"
+"[b]Note:[/b] JSON objects do not preserve key order like Godot dictionaries, "
+"thus, you should not rely on keys being in a certain order if a dictionary "
+"is constructed from JSON. In contrast, JSON arrays retain the order of their "
"elements:\n"
"[codeblock]\n"
-"p = parse_json('[\"a\", \"b\", \"c\"]')\n"
-"if typeof(p) == TYPE_ARRAY:\n"
-" print(p[0]) # Prints a\n"
+"var p = JSON.parse('[\"hello\", \"world\", \"!\"]')\n"
+"if typeof(p.result) == TYPE_ARRAY:\n"
+" print(p.result[0]) # Prints \"hello\"\n"
"else:\n"
-" print(\"unexpected results\")\n"
-"[/codeblock]"
+" push_error(\"Unexpected results.\")\n"
+"[/codeblock]\n"
+"See also [JSON] for an alternative way to parse JSON text."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:746
+#: modules/gdscript/doc_classes/@GDScript.xml:759
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:142
msgid ""
"Converts a 2D point expressed in the polar coordinate system (a distance "
@@ -644,7 +679,7 @@ msgid ""
"cartesian coordinate system (X and Y axis)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:757
+#: modules/gdscript/doc_classes/@GDScript.xml:770
msgid ""
"Returns the integer modulus of [code]a/b[/code] that wraps equally in "
"positive and negative.\n"
@@ -670,7 +705,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:788
+#: modules/gdscript/doc_classes/@GDScript.xml:801
msgid ""
"Returns the result of [code]x[/code] raised to the power of [code]y[/code].\n"
"[codeblock]\n"
@@ -678,19 +713,23 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:800
+#: modules/gdscript/doc_classes/@GDScript.xml:813
msgid ""
-"Returns a resource from the filesystem that is loaded during script "
-"parsing.\n"
+"Returns a [Resource] from the filesystem located at [code]path[/code]. The "
+"resource is loaded during script parsing, i.e. is loaded with the script and "
+"[method preload] effectively acts as a reference to that resource. Note that "
+"the method requires a constant path. If you want to load a resource from a "
+"dynamic/variable path, use [method load].\n"
"[b]Note:[/b] Resource paths can be obtained by right clicking on a resource "
-"in the Assets Panel and choosing \"Copy Path\".\n"
+"in the Assets Panel and choosing \"Copy Path\" or by dragging the file from "
+"the FileSystem dock into the script.\n"
"[codeblock]\n"
-"# Load a scene called main located in the root of the project directory.\n"
-"var main = preload(\"res://main.tscn\")\n"
+"# Instance a scene.\n"
+"var diamond = preload(\"res://diamond.tscn\").instance()\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:812
+#: modules/gdscript/doc_classes/@GDScript.xml:825
msgid ""
"Converts one or more arguments to strings in the best way possible and "
"prints them to the console.\n"
@@ -700,11 +739,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:823
+#: modules/gdscript/doc_classes/@GDScript.xml:836
msgid "Like [method print], but prints only when used in debug mode."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:830
+#: modules/gdscript/doc_classes/@GDScript.xml:843
msgid ""
"Prints a stack track at code location, only works when running with debugger "
"turned on.\n"
@@ -714,7 +753,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:841
+#: modules/gdscript/doc_classes/@GDScript.xml:854
msgid ""
"Prints one or more arguments to strings in the best way possible to standard "
"error line.\n"
@@ -723,7 +762,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:851
+#: modules/gdscript/doc_classes/@GDScript.xml:864
msgid ""
"Prints one or more arguments to strings in the best way possible to console. "
"No newline is added at the end.\n"
@@ -737,7 +776,7 @@ msgid ""
"method, such as [method print]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:864
+#: modules/gdscript/doc_classes/@GDScript.xml:877
msgid ""
"Prints one or more arguments to the console with a space between each "
"argument.\n"
@@ -746,7 +785,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:874
+#: modules/gdscript/doc_classes/@GDScript.xml:887
msgid ""
"Prints one or more arguments to the console with a tab between each "
"argument.\n"
@@ -755,7 +794,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:886
+#: modules/gdscript/doc_classes/@GDScript.xml:899
msgid ""
"Pushes an error message to Godot's built-in debugger and to the OS "
"terminal.\n"
@@ -765,7 +804,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:898
+#: modules/gdscript/doc_classes/@GDScript.xml:911
msgid ""
"Pushes a warning message to Godot's built-in debugger and to the OS "
"terminal.\n"
@@ -775,15 +814,15 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:910
+#: modules/gdscript/doc_classes/@GDScript.xml:923
msgid ""
-"Converts from radians to degrees.\n"
+"Converts an angle expressed in radians to degrees.\n"
"[codeblock]\n"
"rad2deg(0.523599) # Returns 30\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:924
+#: modules/gdscript/doc_classes/@GDScript.xml:937
msgid ""
"Random range, any floating point value between [code]from[/code] and "
"[code]to[/code].\n"
@@ -792,7 +831,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:936
+#: modules/gdscript/doc_classes/@GDScript.xml:949
msgid ""
"Random from seed: pass a [code]seed[/code], and an array with both number "
"and new seed is returned. \"Seed\" here refers to the internal state of the "
@@ -800,7 +839,7 @@ msgid ""
"implementation is 64 bits."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:943
+#: modules/gdscript/doc_classes/@GDScript.xml:956
msgid ""
"Returns a random floating point value on the interval [code][0, 1][/code].\n"
"[codeblock]\n"
@@ -808,7 +847,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:953
+#: modules/gdscript/doc_classes/@GDScript.xml:966
msgid ""
"Returns a random unsigned 32 bit integer. Use remainder to obtain a random "
"value in the interval [code][0, N - 1][/code] (where N is smaller than "
@@ -821,7 +860,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:966
+#: modules/gdscript/doc_classes/@GDScript.xml:979
msgid ""
"Randomizes the seed (or the internal state) of the random number generator. "
"Current implementation reseeds using a number based on time.\n"
@@ -831,7 +870,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:977
+#: modules/gdscript/doc_classes/@GDScript.xml:990
msgid ""
"Returns an array with the given range. Range can be 1 argument N (0 to N-1), "
"two arguments (initial, final-1) or three arguments (initial, final-1, "
@@ -861,7 +900,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1017
+#: modules/gdscript/doc_classes/@GDScript.xml:1030
msgid ""
"Maps a [code]value[/code] from range [code][istart, istop][/code] to [code]"
"[ostart, ostop][/code].\n"
@@ -870,16 +909,16 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1029
+#: modules/gdscript/doc_classes/@GDScript.xml:1042
msgid ""
-"Returns the integral value that is nearest to [code]s[/code], with halfway "
-"cases rounded away from zero.\n"
+"Rounds [code]s[/code] to the nearest whole number, with halfway cases "
+"rounded away from zero.\n"
"[codeblock]\n"
"round(2.6) # Returns 3\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1041
+#: modules/gdscript/doc_classes/@GDScript.xml:1054
msgid ""
"Sets seed for the random number generator.\n"
"[codeblock]\n"
@@ -888,7 +927,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1054
+#: modules/gdscript/doc_classes/@GDScript.xml:1067
msgid ""
"Returns the sign of [code]s[/code]: -1 or 1. Returns 0 if [code]s[/code] is "
"0.\n"
@@ -899,7 +938,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1068
+#: modules/gdscript/doc_classes/@GDScript.xml:1081
msgid ""
"Returns the sine of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -907,7 +946,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1080
+#: modules/gdscript/doc_classes/@GDScript.xml:1093
msgid ""
"Returns the hyperbolic sine of [code]s[/code].\n"
"[codeblock]\n"
@@ -916,27 +955,37 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1097
+#: modules/gdscript/doc_classes/@GDScript.xml:1110
msgid ""
-"Returns a number smoothly interpolated between the [code]from[/code] and "
-"[code]to[/code], based on the [code]weight[/code]. Similar to [method lerp], "
-"but interpolates faster at the beginning and slower at the end.\n"
+"Returns the result of smoothly interpolating the value of [code]s[/code] "
+"between [code]0[/code] and [code]1[/code], based on the where [code]s[/code] "
+"lies with respect to the edges [code]from[/code] and [code]to[/code].\n"
+"The return value is [code]0[/code] if [code]s <= from[/code], and [code]1[/"
+"code] if [code]s >= to[/code]. If [code]s[/code] lies between [code]from[/"
+"code] and [code]to[/code], the returned value follows an S-shaped curve that "
+"maps [code]s[/code] between [code]0[/code] and [code]1[/code].\n"
+"This S-shaped curve is the cubic Hermite interpolator, given by [code]f(s) = "
+"3*s^2 - 2*s^3[/code].\n"
"[codeblock]\n"
-"smoothstep(0, 2, 0.5) # Returns 0.15\n"
+"smoothstep(0, 2, -5.0) # Returns 0.0\n"
+"smoothstep(0, 2, 0.5) # Returns 0.15625\n"
"smoothstep(0, 2, 1.0) # Returns 0.5\n"
"smoothstep(0, 2, 2.0) # Returns 1.0\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1111
+#: modules/gdscript/doc_classes/@GDScript.xml:1127
msgid ""
-"Returns the square root of [code]s[/code].\n"
+"Returns the square root of [code]s[/code], where [code]s[/code] is a non-"
+"negative number.\n"
"[codeblock]\n"
"sqrt(9) # Returns 3\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b]Negative values of [code]s[/code] return NaN. If you need "
+"negative inputs, use [code]System.Numerics.Complex[/code] in C#."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1123
+#: modules/gdscript/doc_classes/@GDScript.xml:1140
msgid ""
"Returns the position of the first non-zero digit, after the decimal point. "
"Note that the maximum return value is 10, which is a design decision in the "
@@ -951,7 +1000,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1142
+#: modules/gdscript/doc_classes/@GDScript.xml:1159
msgid ""
"Snaps float value [code]s[/code] to a given [code]step[/code]. This can also "
"be used to round a floating point number to an arbitrary number of "
@@ -962,7 +1011,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1153
+#: modules/gdscript/doc_classes/@GDScript.xml:1170
msgid ""
"Converts one or more arguments to string in the best way possible.\n"
"[codeblock]\n"
@@ -973,7 +1022,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1168
+#: modules/gdscript/doc_classes/@GDScript.xml:1185
msgid ""
"Converts a formatted string that was returned by [method var2str] to the "
"original value.\n"
@@ -984,7 +1033,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1182
+#: modules/gdscript/doc_classes/@GDScript.xml:1199
msgid ""
"Returns the tangent of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -992,7 +1041,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1194
+#: modules/gdscript/doc_classes/@GDScript.xml:1211
msgid ""
"Returns the hyperbolic tangent of [code]s[/code].\n"
"[codeblock]\n"
@@ -1001,18 +1050,25 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1207
+#: modules/gdscript/doc_classes/@GDScript.xml:1224
msgid ""
-"Converts a Variant [code]var[/code] to JSON text and return the result. "
+"Converts a [Variant] [code]var[/code] to JSON text and return the result. "
"Useful for serializing data to store or send over the network.\n"
"[codeblock]\n"
+"# Both numbers below are integers.\n"
"a = { \"a\": 1, \"b\": 2 }\n"
"b = to_json(a)\n"
"print(b) # {\"a\":1, \"b\":2}\n"
-"[/codeblock]"
+"# Both numbers above are floats, even if they display without any decimal "
+"places.\n"
+"[/codeblock]\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, converting a [Variant] to JSON "
+"text will convert all numerical values to [float] types.\n"
+"See also [JSON] for an alternative way to convert a [Variant] to JSON text."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1221
+#: modules/gdscript/doc_classes/@GDScript.xml:1242
msgid ""
"Returns whether the given class exists in [ClassDB].\n"
"[codeblock]\n"
@@ -1021,7 +1077,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1234
+#: modules/gdscript/doc_classes/@GDScript.xml:1255
msgid ""
"Returns the internal type of the given Variant object, using the [enum "
"Variant.Type] values.\n"
@@ -1034,7 +1090,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1250
+#: modules/gdscript/doc_classes/@GDScript.xml:1271
msgid ""
"Checks that [code]json[/code] is valid JSON data. Returns an empty string if "
"valid, or an error message otherwise.\n"
@@ -1042,20 +1098,20 @@ msgid ""
"j = to_json([1, 2, 3])\n"
"v = validate_json(j)\n"
"if not v:\n"
-" print(\"valid\")\n"
+" print(\"Valid JSON.\")\n"
"else:\n"
-" prints(\"invalid\", v)\n"
+" push_error(\"Invalid JSON: \" + v)\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1269
+#: modules/gdscript/doc_classes/@GDScript.xml:1290
msgid ""
"Encodes a variable value to a byte array. When [code]full_objects[/code] is "
"[code]true[/code] encoding objects is allowed (and can potentially include "
"code)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1278
+#: modules/gdscript/doc_classes/@GDScript.xml:1299
msgid ""
"Converts a Variant [code]var[/code] to a formatted string that can later be "
"parsed using [method str2var].\n"
@@ -1072,7 +1128,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1298
+#: modules/gdscript/doc_classes/@GDScript.xml:1319
msgid ""
"Returns a weak reference to an object.\n"
"A weak reference to an object is not enough to keep the object alive: when "
@@ -1082,135 +1138,67 @@ msgid ""
"reference may return the object even if there are no strong references to it."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1312
+#: modules/gdscript/doc_classes/@GDScript.xml:1333
msgid ""
"Wraps float [code]value[/code] between [code]min[/code] and [code]max[/"
"code].\n"
"Usable for creating loop-alike behavior or infinite surfaces.\n"
"[codeblock]\n"
-"# a is 0.5\n"
-"a = wrapf(10.5, 0.0, 10.0)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# a is 9.5\n"
-"a = wrapf(-0.5, 0.0, 10.0)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# Infinite loop between 0.0 and 0.99\n"
-"f = wrapf(f + 0.1, 0.0, 1.0)\n"
+"# Infinite loop between 5.0 and 9.9\n"
+"value = wrapf(value + 0.1, 5.0, 10.0)\n"
"[/codeblock]\n"
"[codeblock]\n"
"# Infinite rotation (in radians)\n"
"angle = wrapf(angle + 0.1, 0.0, TAU)\n"
"[/codeblock]\n"
-"[b]Note:[/b] If you just want to wrap between 0.0 and [code]n[/code] (where "
-"[code]n[/code] is a positive floating-point value), it is better for "
-"performance to use the [method fmod] method like [code]fmod(number, n)[/"
-"code].\n"
-"[code]wrapf[/code] is more flexible than using the [method fmod] approach by "
-"giving the user a simple control over the minimum value. It also fully "
-"supports negative numbers, e.g.\n"
"[codeblock]\n"
"# Infinite rotation (in radians)\n"
"angle = wrapf(angle + 0.1, -PI, PI)\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] If [code]min[/code] is [code]0[/code], this is equivalent to "
+"[method fposmod], so prefer using that instead.\n"
+"[code]wrapf[/code] is more flexible than using the [method fposmod] approach "
+"by giving the user control over the minimum value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1348
+#: modules/gdscript/doc_classes/@GDScript.xml:1361
msgid ""
"Wraps integer [code]value[/code] between [code]min[/code] and [code]max[/"
"code].\n"
"Usable for creating loop-alike behavior or infinite surfaces.\n"
"[codeblock]\n"
-"# a is 0\n"
-"a = wrapi(10, 0, 10)\n"
+"# Infinite loop between 5 and 9\n"
+"frame = wrapi(frame + 1, 5, 10)\n"
"[/codeblock]\n"
"[codeblock]\n"
-"# a is 9\n"
-"a = wrapi(-1, 0, 10)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# Infinite loop between 0 and 9\n"
-"frame = wrapi(frame + 1, 0, 10)\n"
-"[/codeblock]\n"
-"[b]Note:[/b] If you just want to wrap between 0 and [code]n[/code] (where "
-"[code]n[/code] is a positive integer value), it is better for performance to "
-"use the modulo operator like [code]number % n[/code].\n"
-"[code]wrapi[/code] is more flexible than using the modulo approach by giving "
-"the user a simple control over the minimum value. It also fully supports "
-"negative numbers, e.g.\n"
-"[codeblock]\n"
"# result is -2\n"
"var result = wrapi(-6, -5, -1)\n"
-"[/codeblock]"
-msgstr ""
-
-#: modules/gdscript/doc_classes/@GDScript.xml:1378
-msgid ""
-"Stops the function execution and returns the current suspended state to the "
-"calling function.\n"
-"From the caller, call [method GDScriptFunctionState.resume] on the state to "
-"resume execution. This invalidates the state. Within the resumed function, "
-"[code]yield()[/code] returns whatever was passed to the [code]resume()[/"
-"code] function call.\n"
-"If passed an object and a signal, the execution is resumed when the object "
-"emits the given signal. In this case, [code]yield()[/code] returns the "
-"argument passed to [code]emit_signal()[/code] if the signal takes only one "
-"argument, or an array containing all the arguments passed to "
-"[code]emit_signal()[/code] if the signal takes multiple arguments.\n"
-"You can also use [code]yield[/code] to wait for a function to finish:\n"
-"[codeblock]\n"
-"func _ready():\n"
-" yield(countdown(), \"completed\") # waiting for the countdown() function "
-"to complete\n"
-" print('Ready')\n"
-"\n"
-"func countdown():\n"
-" yield(get_tree(), \"idle_frame\") # returns a GDScriptFunctionState "
-"object to _ready()\n"
-" print(3)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-" print(2)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-" print(1)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-"\n"
-"# prints:\n"
-"# 3\n"
-"# 2\n"
-"# 1\n"
-"# Ready\n"
"[/codeblock]\n"
-"When yielding on a function, the [code]completed[/code] signal will be "
-"emitted automatically when the function returns. It can, therefore, be used "
-"as the [code]signal[/code] parameter of the [code]yield[/code] method to "
-"resume.\n"
-"In order to yield on a function, the resulting function should also return a "
-"[code]GDScriptFunctionState[/code]. Notice [code]yield(get_tree(), "
-"\"idle_frame\")[/code] from the above example."
+"[b]Note:[/b] If [code]min[/code] is [code]0[/code], this is equivalent to "
+"[method posmod], so prefer using that instead.\n"
+"[code]wrapi[/code] is more flexible than using the [method posmod] approach "
+"by giving the user control over the minimum value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1409
+#: modules/gdscript/doc_classes/@GDScript.xml:1378
msgid ""
"Constant that represents how many times the diameter of a circle fits around "
-"its perimeter."
+"its perimeter. This is equivalent to [code]TAU / 2[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1412
-msgid "The circle constant, the circumference of the unit circle."
+#: modules/gdscript/doc_classes/@GDScript.xml:1381
+msgid "The circle constant, the circumference of the unit circle in radians."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1415
-msgid "A positive infinity. (For negative infinity, use -INF)."
+#: modules/gdscript/doc_classes/@GDScript.xml:1384
+msgid "Positive infinity. For negative infinity, use -INF."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1418
+#: modules/gdscript/doc_classes/@GDScript.xml:1387
msgid ""
-"Macro constant that expands to an expression of type float that represents a "
-"NaN.\n"
-"The NaN values are used to identify undefined or non-representable values "
-"for floating-point elements, such as the square root of negative numbers or "
-"the result of 0/0."
+"\"Not a Number\", an invalid value. [code]NaN[/code] has special properties, "
+"including that it is not equal to itself. It is output by some invalid "
+"operations, such as dividing zero by zero."
msgstr ""
#: doc/classes/@GlobalScope.xml:4
@@ -3446,130 +3434,141 @@ msgid ""
msgstr ""
#: doc/classes/AABB.xml:10 doc/classes/Plane.xml:10 doc/classes/Rect2.xml:11
-#: doc/classes/Rect2i.xml:11 doc/classes/Transform.xml:10
+#: doc/classes/Rect2i.xml:11 doc/classes/Transform.xml:11
#: doc/classes/Vector2.xml:12 doc/classes/Vector2i.xml:12
#: doc/classes/Vector3.xml:12 doc/classes/Vector3i.xml:12
msgid "https://docs.godotengine.org/en/latest/tutorials/math/index.html"
msgstr ""
#: doc/classes/AABB.xml:21
-msgid "Optional constructor, accepts position and size."
+msgid "Constructs an [AABB] from a position and size."
msgstr ""
-#: doc/classes/AABB.xml:30
+#: doc/classes/AABB.xml:28
+msgid ""
+"Returns an AABB with equivalent position and size, modified so that the most-"
+"negative corner is the origin and the size is positive."
+msgstr ""
+
+#: doc/classes/AABB.xml:37
msgid ""
"Returns [code]true[/code] if this [AABB] completely encloses another one."
msgstr ""
-#: doc/classes/AABB.xml:39
+#: doc/classes/AABB.xml:46
msgid "Returns this [AABB] expanded to include a given point."
msgstr ""
-#: doc/classes/AABB.xml:46
+#: doc/classes/AABB.xml:53
msgid "Returns the volume of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:55
+#: doc/classes/AABB.xml:62
msgid "Gets the position of the 8 endpoints of the [AABB] in space."
msgstr ""
-#: doc/classes/AABB.xml:62
+#: doc/classes/AABB.xml:69
msgid "Returns the normalized longest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:69
+#: doc/classes/AABB.xml:76
msgid ""
"Returns the index of the longest axis of the [AABB] (according to "
"[Vector3]'s [code]AXIS_*[/code] constants)."
msgstr ""
-#: doc/classes/AABB.xml:76
+#: doc/classes/AABB.xml:83
msgid "Returns the scalar length of the longest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:83
+#: doc/classes/AABB.xml:90
msgid "Returns the normalized shortest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:90
+#: doc/classes/AABB.xml:97
msgid ""
"Returns the index of the shortest axis of the [AABB] (according to "
"[Vector3]::AXIS* enum)."
msgstr ""
-#: doc/classes/AABB.xml:97
+#: doc/classes/AABB.xml:104
msgid "Returns the scalar length of the shortest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:106
+#: doc/classes/AABB.xml:113
msgid ""
"Returns the support point in a given direction. This is useful for collision "
"detection algorithms."
msgstr ""
-#: doc/classes/AABB.xml:115
+#: doc/classes/AABB.xml:122
msgid ""
"Returns a copy of the [AABB] grown a given amount of units towards all the "
"sides."
msgstr ""
-#: doc/classes/AABB.xml:122
+#: doc/classes/AABB.xml:129
msgid "Returns [code]true[/code] if the [AABB] is flat or empty."
msgstr ""
-#: doc/classes/AABB.xml:129
+#: doc/classes/AABB.xml:136
msgid "Returns [code]true[/code] if the [AABB] is empty."
msgstr ""
-#: doc/classes/AABB.xml:138
+#: doc/classes/AABB.xml:145
msgid "Returns [code]true[/code] if the [AABB] contains a point."
msgstr ""
-#: doc/classes/AABB.xml:147
+#: doc/classes/AABB.xml:154
msgid ""
"Returns the intersection between two [AABB]. An empty AABB (size 0,0,0) is "
"returned on failure."
msgstr ""
-#: doc/classes/AABB.xml:156
+#: doc/classes/AABB.xml:163
msgid "Returns [code]true[/code] if the [AABB] overlaps with another."
msgstr ""
-#: doc/classes/AABB.xml:165
+#: doc/classes/AABB.xml:172
msgid "Returns [code]true[/code] if the [AABB] is on both sides of a plane."
msgstr ""
-#: doc/classes/AABB.xml:176
+#: doc/classes/AABB.xml:183
msgid ""
"Returns [code]true[/code] if the [AABB] intersects the line segment between "
"[code]from[/code] and [code]to[/code]."
msgstr ""
-#: doc/classes/AABB.xml:185
+#: doc/classes/AABB.xml:192
msgid ""
"Returns [code]true[/code] if this [AABB] and [code]aabb[/code] are "
"approximately equal, by calling [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/AABB.xml:194
+#: doc/classes/AABB.xml:201
msgid ""
"Returns a larger [AABB] that contains both this [AABB] and [code]with[/code]."
msgstr ""
-#: doc/classes/AABB.xml:200
+#: doc/classes/AABB.xml:207 doc/classes/Rect2.xml:174
+#: doc/classes/Rect2i.xml:163
msgid ""
-"Ending corner. This is calculated as [code]position + size[/code]. Changing "
-"this property changes [member size] accordingly."
+"Ending corner. This is calculated as [code]position + size[/code]. Setting "
+"this value will change the size."
msgstr ""
-#: doc/classes/AABB.xml:203
-msgid "Beginning corner."
+#: doc/classes/AABB.xml:210 doc/classes/Rect2.xml:177
+#: doc/classes/Rect2i.xml:166
+msgid "Beginning corner. Typically has values lower than [member end]."
msgstr ""
-#: doc/classes/AABB.xml:206 doc/classes/Rect2.xml:180
+#: doc/classes/AABB.xml:213 doc/classes/Rect2.xml:180
#: doc/classes/Rect2i.xml:169
-msgid "Size from position to end."
+msgid ""
+"Size from [member position] to [member end]. Typically all components are "
+"positive.\n"
+"If the size is negative, you can use [method abs] to fix it."
msgstr ""
#: doc/classes/AcceptDialog.xml:4
@@ -3633,11 +3632,11 @@ msgstr ""
msgid "The text displayed by the dialog."
msgstr ""
-#: doc/classes/AcceptDialog.xml:82
+#: doc/classes/AcceptDialog.xml:83
msgid "Emitted when the dialog is accepted, i.e. the OK button is pressed."
msgstr ""
-#: doc/classes/AcceptDialog.xml:89
+#: doc/classes/AcceptDialog.xml:90
msgid "Emitted when a custom button is pressed. See [method add_button]."
msgstr ""
@@ -3690,7 +3689,7 @@ msgstr ""
#: doc/classes/AESContext.xml:54
msgid ""
"Get the current IV state for this context (IV gets updated when calling "
-"[method update]). You normally don't need this funciton.\n"
+"[method update]). You normally don't need this function.\n"
"Note: This function only makes sense when the context is started with "
"[constant MODE_CBC_ENCRYPT] or [constant MODE_CBC_DECRYPT]."
msgstr ""
@@ -3768,12 +3767,14 @@ msgid "If [code]true[/code], texture will be centered."
msgstr ""
#: doc/classes/AnimatedSprite2D.xml:46 doc/classes/Sprite2D.xml:41
-#: doc/classes/SpriteBase3D.xml:61 doc/classes/TextureRect.xml:18
+#: doc/classes/SpriteBase3D.xml:61 doc/classes/TextureButton.xml:19
+#: doc/classes/TextureRect.xml:18
msgid "If [code]true[/code], texture is flipped horizontally."
msgstr ""
#: doc/classes/AnimatedSprite2D.xml:49 doc/classes/Sprite2D.xml:44
-#: doc/classes/SpriteBase3D.xml:64 doc/classes/TextureRect.xml:21
+#: doc/classes/SpriteBase3D.xml:64 doc/classes/TextureButton.xml:22
+#: doc/classes/TextureRect.xml:21
msgid "If [code]true[/code], texture is flipped vertically."
msgstr ""
@@ -3940,10 +3941,10 @@ msgid ""
"[codeblock]\n"
"# This creates an animation that makes the node \"Enemy\" move to the right "
"by\n"
-"# 100 pixels in 1 second.\n"
+"# 100 pixels in 0.5 seconds.\n"
"var animation = Animation.new()\n"
"var track_index = animation.add_track(Animation.TYPE_VALUE)\n"
-"animation.track_set_path(track_index, \"Enemy:position.x\")\n"
+"animation.track_set_path(track_index, \"Enemy:position:x\")\n"
"animation.track_insert_key(track_index, 0.0, 0)\n"
"animation.track_insert_key(track_index, 0.5, 100)\n"
"[/codeblock]\n"
@@ -6071,10 +6072,10 @@ msgstr ""
msgid ""
"Returns [code]true[/code] if the array contains the given value.\n"
"[codeblock]\n"
-"[\"inside\", 7].has(\"inside\") == true\n"
-"[\"inside\", 7].has(\"outside\") == false\n"
-"[\"inside\", 7].has(7) == true\n"
-"[\"inside\", 7].has(\"7\") == false\n"
+"print([\"inside\", 7].has(\"inside\")) # True\n"
+"print([\"inside\", 7].has(\"outside\")) # False\n"
+"print([\"inside\", 7].has(7)) # True\n"
+"print([\"inside\", 7].has(\"7\")) # False\n"
"[/codeblock]\n"
"[b]Note:[/b] This is equivalent to using the [code]in[/code] operator as "
"follows:\n"
@@ -6095,11 +6096,11 @@ msgid ""
"valid, or at the end of the array ([code]pos == size()[/code])."
msgstr ""
-#: doc/classes/Array.xml:265 doc/classes/PackedByteArray.xml:107
-#: doc/classes/PackedColorArray.xml:62 doc/classes/PackedFloat32Array.xml:63
-#: doc/classes/PackedFloat64Array.xml:63 doc/classes/PackedInt32Array.xml:63
-#: doc/classes/PackedInt64Array.xml:63 doc/classes/PackedStringArray.xml:62
-#: doc/classes/PackedVector2Array.xml:62 doc/classes/PackedVector3Array.xml:62
+#: doc/classes/Array.xml:265 doc/classes/PackedByteArray.xml:116
+#: doc/classes/PackedColorArray.xml:71 doc/classes/PackedFloat32Array.xml:72
+#: doc/classes/PackedFloat64Array.xml:72 doc/classes/PackedInt32Array.xml:72
+#: doc/classes/PackedInt64Array.xml:72 doc/classes/PackedStringArray.xml:71
+#: doc/classes/PackedVector2Array.xml:71 doc/classes/PackedVector3Array.xml:71
msgid "Reverses the order of the elements in the array."
msgstr ""
@@ -6129,8 +6130,8 @@ msgid ""
"code] if the array is empty."
msgstr ""
-#: doc/classes/Array.xml:302 doc/classes/PackedByteArray.xml:116
-#: doc/classes/PackedFloat32Array.xml:72 doc/classes/PackedFloat64Array.xml:72
+#: doc/classes/Array.xml:302 doc/classes/PackedByteArray.xml:125
+#: doc/classes/PackedFloat32Array.xml:81 doc/classes/PackedFloat64Array.xml:81
msgid "Appends an element at the end of the array."
msgstr ""
@@ -6138,11 +6139,11 @@ msgstr ""
msgid "Adds an element at the beginning of the array."
msgstr ""
-#: doc/classes/Array.xml:320 doc/classes/PackedByteArray.xml:125
-#: doc/classes/PackedColorArray.xml:80 doc/classes/PackedFloat32Array.xml:81
-#: doc/classes/PackedFloat64Array.xml:81 doc/classes/PackedInt32Array.xml:81
-#: doc/classes/PackedInt64Array.xml:81 doc/classes/PackedStringArray.xml:80
-#: doc/classes/PackedVector2Array.xml:80 doc/classes/PackedVector3Array.xml:80
+#: doc/classes/Array.xml:320 doc/classes/PackedByteArray.xml:134
+#: doc/classes/PackedColorArray.xml:89 doc/classes/PackedFloat32Array.xml:90
+#: doc/classes/PackedFloat64Array.xml:90 doc/classes/PackedInt32Array.xml:90
+#: doc/classes/PackedInt64Array.xml:90 doc/classes/PackedStringArray.xml:89
+#: doc/classes/PackedVector2Array.xml:89 doc/classes/PackedVector3Array.xml:89
msgid "Removes an element from the array by index."
msgstr ""
@@ -6425,7 +6426,7 @@ msgid ""
msgstr ""
#: doc/classes/ArrayMesh.xml:235 doc/classes/Mesh.xml:210
-#: doc/classes/RenderingServer.xml:3115
+#: doc/classes/RenderingServer.xml:3111
msgid "Represents the size of the [enum ArrayType] enum."
msgstr ""
@@ -8242,7 +8243,9 @@ msgid ""
msgstr ""
#: doc/classes/BaseButton.xml:16
-msgid "Called when the button is pressed."
+msgid ""
+"Called when the button is pressed. If you need to know the button's pressed "
+"state (and [member toggle_mode] is active), use [method _toggled] instead."
msgstr ""
#: doc/classes/BaseButton.xml:25
@@ -8336,43 +8339,45 @@ msgstr ""
msgid ""
"Emitted when the button is toggled or pressed. This is on [signal "
"button_down] if [member action_mode] is [constant ACTION_MODE_BUTTON_PRESS] "
-"and on [signal button_up] otherwise."
+"and on [signal button_up] otherwise.\n"
+"If you need to know the button's pressed state (and [member toggle_mode] is "
+"active), use [signal toggled] instead."
msgstr ""
-#: doc/classes/BaseButton.xml:98
+#: doc/classes/BaseButton.xml:99
msgid ""
"Emitted when the button was just toggled between pressed and normal states "
"(only if [member toggle_mode] is active). The new state is contained in the "
"[code]button_pressed[/code] argument."
msgstr ""
-#: doc/classes/BaseButton.xml:104
+#: doc/classes/BaseButton.xml:105
msgid ""
"The normal state (i.e. not pressed, not hovered, not toggled and enabled) of "
"buttons."
msgstr ""
-#: doc/classes/BaseButton.xml:107
+#: doc/classes/BaseButton.xml:108
msgid "The state of buttons are pressed."
msgstr ""
-#: doc/classes/BaseButton.xml:110
+#: doc/classes/BaseButton.xml:111
msgid "The state of buttons are hovered."
msgstr ""
-#: doc/classes/BaseButton.xml:113
+#: doc/classes/BaseButton.xml:114
msgid "The state of buttons are disabled."
msgstr ""
-#: doc/classes/BaseButton.xml:116
+#: doc/classes/BaseButton.xml:117
msgid "The state of buttons are both hovered and pressed."
msgstr ""
-#: doc/classes/BaseButton.xml:119
+#: doc/classes/BaseButton.xml:120
msgid "Require just a press to consider the button clicked."
msgstr ""
-#: doc/classes/BaseButton.xml:122
+#: doc/classes/BaseButton.xml:123
msgid ""
"Require a press and a subsequent release before considering the button "
"clicked."
@@ -9065,22 +9070,22 @@ msgstr ""
msgid "Represents the size of the [enum TextureParam] enum."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:451 doc/classes/RenderingServer.xml:3657
-#: doc/classes/Viewport.xml:390
+#: doc/classes/BaseMaterial3D.xml:451 doc/classes/RenderingServer.xml:3668
+#: doc/classes/Viewport.xml:393
msgid ""
"The texture filter reads from the nearest pixel only. The simplest and "
"fastest method of filtering, but the texture will look pixelized."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:454 doc/classes/RenderingServer.xml:3660
-#: doc/classes/Viewport.xml:393
+#: doc/classes/BaseMaterial3D.xml:454 doc/classes/RenderingServer.xml:3671
+#: doc/classes/Viewport.xml:396
msgid ""
"The texture filter blends between the nearest 4 pixels. Use this when you "
"want to avoid a pixelated style, but do not want mipmaps."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:457 doc/classes/RenderingServer.xml:3663
-#: doc/classes/Viewport.xml:396
+#: doc/classes/BaseMaterial3D.xml:457 doc/classes/RenderingServer.xml:3674
+#: doc/classes/Viewport.xml:399
msgid ""
"The texture filter reads from the nearest pixel in the nearest mipmap. The "
"fastest way to read from textures with mipmaps."
@@ -9093,14 +9098,14 @@ msgid ""
"smooth out pixels that are far from the camera."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:463 doc/classes/RenderingServer.xml:3669
+#: doc/classes/BaseMaterial3D.xml:463 doc/classes/RenderingServer.xml:3680
msgid ""
"The texture filter reads from the nearest pixel, but selects a mipmap based "
"on the angle between the surface and the camera view. This reduces artifacts "
"on surfaces that are almost in line with the camera."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:466 doc/classes/RenderingServer.xml:3672
+#: doc/classes/BaseMaterial3D.xml:466 doc/classes/RenderingServer.xml:3683
msgid ""
"The texture filter blends between the nearest 4 pixels and selects a mipmap "
"based on the angle between the surface and the camera view. This reduces "
@@ -9109,7 +9114,7 @@ msgid ""
"texturing."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:469 doc/classes/CanvasItem.xml:685
+#: doc/classes/BaseMaterial3D.xml:469 doc/classes/CanvasItem.xml:695
msgid "Represents the size of the [enum TextureFilter] enum."
msgstr ""
@@ -9332,8 +9337,8 @@ msgstr ""
msgid "Enables the shadow to opacity feature."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:622 doc/classes/RenderingServer.xml:3684
-#: doc/classes/Viewport.xml:408
+#: doc/classes/BaseMaterial3D.xml:622 doc/classes/RenderingServer.xml:3695
+#: doc/classes/Viewport.xml:411
msgid ""
"Enables the texture to repeat when UV coordinates are outside the 0-1 range. "
"If using one of the linear filtering modes, this can result in artifacts at "
@@ -9474,167 +9479,195 @@ msgstr ""
#: doc/classes/Basis.xml:7
msgid ""
-"3×3 matrix used for 3D rotation and scale. Contains 3 vector fields X, Y and "
-"Z as its columns, which can be interpreted as the local basis vectors of a "
-"transformation. Can also be accessed as array of 3D vectors. These vectors "
-"are orthogonal to each other, but are not necessarily normalized (due to "
-"scaling). Almost always used as an orthogonal basis for a [Transform].\n"
-"For such use, it is composed of a scaling and a rotation matrix, in that "
-"order (M = R.S)."
+"3×3 matrix used for 3D rotation and scale. Almost always used as an "
+"orthogonal basis for a Transform.\n"
+"Contains 3 vector fields X, Y and Z as its columns, which are typically "
+"interpreted as the local basis vectors of a transformation. For such use, it "
+"is composed of a scaling and a rotation matrix, in that order (M = R.S).\n"
+"Can also be accessed as array of 3D vectors. These vectors are normally "
+"orthogonal to each other, but are not necessarily normalized (due to "
+"scaling).\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
+msgstr ""
+
+#: doc/classes/Basis.xml:13 doc/classes/Transform.xml:12
+#: doc/classes/Transform2D.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/math/"
+"matrices_and_transforms.html"
msgstr ""
-#: doc/classes/Basis.xml:11 doc/classes/Transform.xml:11
+#: doc/classes/Basis.xml:14 doc/classes/Transform.xml:13
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/using_transforms.html"
msgstr ""
-#: doc/classes/Basis.xml:20
-msgid "Create a rotation matrix from the given quaternion."
+#: doc/classes/Basis.xml:23
+msgid "Constructs a pure rotation basis matrix from the given quaternion."
msgstr ""
-#: doc/classes/Basis.xml:29
+#: doc/classes/Basis.xml:32
msgid ""
-"Create a rotation matrix (in the YXZ convention: first Z, then X, and Y "
-"last) from the specified Euler angles, given in the vector format as (X "
-"angle, Y angle, Z angle)."
+"Constructs a pure rotation basis matrix from the given Euler angles (in the "
+"YXZ convention: when *composing*, first Y, then X, and Z last), given in the "
+"vector format as (X angle, Y angle, Z angle).\n"
+"Consider using the [Quat] constructor instead, which uses a quaternion "
+"instead of Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:40
+#: doc/classes/Basis.xml:44
msgid ""
-"Create a rotation matrix which rotates around the given axis by the "
-"specified angle, in radians. The axis must be a normalized vector."
+"Constructs a pure rotation basis matrix, rotated around the given "
+"[code]axis[/code] by [code]phi[/code], in radians. The axis must be a "
+"normalized vector."
msgstr ""
-#: doc/classes/Basis.xml:53
-msgid "Create a matrix from 3 axis vectors."
+#: doc/classes/Basis.xml:57
+msgid "Constructs a basis matrix from 3 axis vectors (matrix columns)."
msgstr ""
-#: doc/classes/Basis.xml:60
-msgid "Returns the determinant of the matrix."
+#: doc/classes/Basis.xml:64
+msgid ""
+"Returns the determinant of the basis matrix. If the basis is uniformly "
+"scaled, its determinant is the square of the scale.\n"
+"A negative determinant means the basis has a negative scale. A zero "
+"determinant means the basis isn't invertible, and is usually considered "
+"invalid."
msgstr ""
-#: doc/classes/Basis.xml:67
+#: doc/classes/Basis.xml:72
msgid ""
"Returns the basis's rotation in the form of Euler angles (in the YXZ "
-"convention: first Z, then X, and Y last). The returned vector contains the "
-"rotation angles in the format (X angle, Y angle, Z angle). See [method "
-"get_rotation_quat] if you need a quaternion instead."
+"convention: when decomposing, first Z, then X, and Y last). The returned "
+"vector contains the rotation angles in the format (X angle, Y angle, Z "
+"angle).\n"
+"Consider using the [method get_rotation_quat] method instead, which returns "
+"a [Quat] quaternion instead of Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:74
+#: doc/classes/Basis.xml:80
msgid ""
"This function considers a discretization of rotations into 24 points on unit "
"sphere, lying along the vectors (x,y,z) with each component being either -1, "
"0, or 1, and returns the index of the point best representing the "
-"orientation of the object. It is mainly used by the grid map editor. For "
+"orientation of the object. It is mainly used by the [GridMap] editor. For "
"further details, refer to the Godot source code."
msgstr ""
-#: doc/classes/Basis.xml:81
+#: doc/classes/Basis.xml:87
msgid ""
"Returns the basis's rotation in the form of a quaternion. See [method "
"get_euler] if you need Euler angles, but keep in mind quaternions should "
"generally be preferred to Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:88
+#: doc/classes/Basis.xml:94
msgid ""
"Assuming that the matrix is the combination of a rotation and scaling, "
"return the absolute value of scaling factors along each axis."
msgstr ""
-#: doc/classes/Basis.xml:95 doc/classes/Transform2D.xml:49
+#: doc/classes/Basis.xml:101
msgid "Returns the inverse of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:106
+#: doc/classes/Basis.xml:112
msgid ""
"Returns [code]true[/code] if this basis and [code]b[/code] are approximately "
"equal, by calling [code]is_equal_approx[/code] on each component."
msgstr ""
-#: doc/classes/Basis.xml:113
+#: doc/classes/Basis.xml:119
msgid ""
"Returns the orthonormalized version of the matrix (useful to call from time "
"to time to avoid rounding error for orthogonal matrices). This performs a "
"Gram-Schmidt orthonormalization on the basis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:124
+#: doc/classes/Basis.xml:130
msgid ""
"Introduce an additional rotation around the given axis by phi (radians). The "
"axis must be a normalized vector."
msgstr ""
-#: doc/classes/Basis.xml:133
+#: doc/classes/Basis.xml:139
msgid ""
"Introduce an additional scaling specified by the given 3D scaling factor."
msgstr ""
-#: doc/classes/Basis.xml:144
+#: doc/classes/Basis.xml:150
msgid ""
"Assuming that the matrix is a proper rotation matrix, slerp performs a "
"spherical-linear interpolation with another rotation matrix."
msgstr ""
-#: doc/classes/Basis.xml:153
+#: doc/classes/Basis.xml:159
msgid "Transposed dot product with the X axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:162
+#: doc/classes/Basis.xml:168
msgid "Transposed dot product with the Y axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:171
+#: doc/classes/Basis.xml:177
msgid "Transposed dot product with the Z axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:178
+#: doc/classes/Basis.xml:184
msgid "Returns the transposed version of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:187
+#: doc/classes/Basis.xml:193
msgid "Returns a vector transformed (multiplied) by the matrix."
msgstr ""
-#: doc/classes/Basis.xml:196
+#: doc/classes/Basis.xml:202
msgid ""
-"Returns a vector transformed (multiplied) by the transposed matrix.\n"
+"Returns a vector transformed (multiplied) by the transposed basis matrix.\n"
"[b]Note:[/b] This results in a multiplication by the inverse of the matrix "
"only if it represents a rotation-reflection."
msgstr ""
-#: doc/classes/Basis.xml:203
-msgid "The basis matrix's X vector."
+#: doc/classes/Basis.xml:209 doc/classes/Transform2D.xml:181
+msgid ""
+"The basis matrix's X vector (column 0). Equivalent to array index [code]0[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:206
-msgid "The basis matrix's Y vector."
+#: doc/classes/Basis.xml:212 doc/classes/Transform2D.xml:184
+msgid ""
+"The basis matrix's Y vector (column 1). Equivalent to array index [code]1[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:209
-msgid "The basis matrix's Z vector."
+#: doc/classes/Basis.xml:215
+msgid ""
+"The basis matrix's Z vector (column 2). Equivalent to array index [code]2[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:214
+#: doc/classes/Basis.xml:220
msgid ""
-"The identity basis. This is identical to calling [code]Basis()[/code] "
-"without any parameters. This constant can be used to make your code clearer."
+"The identity basis, with no rotation or scaling applied.\n"
+"This is identical to calling [code]Basis()[/code] without any parameters. "
+"This constant can be used to make your code clearer, and for consistency "
+"with C#."
msgstr ""
-#: doc/classes/Basis.xml:217
+#: doc/classes/Basis.xml:224
msgid ""
"The basis that will flip something along the X axis when used in a "
"transformation."
msgstr ""
-#: doc/classes/Basis.xml:220
+#: doc/classes/Basis.xml:227
msgid ""
"The basis that will flip something along the Y axis when used in a "
"transformation."
msgstr ""
-#: doc/classes/Basis.xml:223
+#: doc/classes/Basis.xml:230
msgid ""
"The basis that will flip something along the Z axis when used in a "
"transformation."
@@ -9947,97 +9980,111 @@ msgstr ""
#: doc/classes/Button.xml:7
msgid ""
"Button is the standard themed button. It can contain text and an icon, and "
-"will display them according to the current [Theme]."
+"will display them according to the current [Theme].\n"
+"[b]Example of creating a button and assigning an action when pressed by code:"
+"[/b]\n"
+"[codeblock]\n"
+"func _ready():\n"
+" var button = Button.new()\n"
+" button.text = \"Click me\"\n"
+" button.connect(\"pressed\", self, \"_button_pressed\")\n"
+" add_child(button)\n"
+"\n"
+"func _button_pressed():\n"
+" print(\"Hello world!\")\n"
+"[/codeblock]\n"
+"Buttons (like all Control nodes) can also be created in the editor, but some "
+"situations may require creating them from code."
msgstr ""
-#: doc/classes/Button.xml:15
+#: doc/classes/Button.xml:27
msgid ""
"Text alignment policy for the button's text, use one of the [enum TextAlign] "
"constants."
msgstr ""
-#: doc/classes/Button.xml:18
+#: doc/classes/Button.xml:30
msgid ""
"When this property is enabled, text that is too large to fit the button is "
"clipped, when disabled the Button will always be wide enough to hold the "
"text."
msgstr ""
-#: doc/classes/Button.xml:21
+#: doc/classes/Button.xml:33
msgid ""
"When enabled, the button's icon will expand/shrink to fit the button's size "
"while keeping its aspect."
msgstr ""
-#: doc/classes/Button.xml:24
+#: doc/classes/Button.xml:36
msgid "Flat buttons don't display decoration."
msgstr ""
-#: doc/classes/Button.xml:27
+#: doc/classes/Button.xml:39
msgid ""
"Button's icon, if text is present the icon will be placed before the text."
msgstr ""
-#: doc/classes/Button.xml:30 doc/classes/LinkButton.xml:18
+#: doc/classes/Button.xml:42 doc/classes/LinkButton.xml:18
msgid "The button's text that will be displayed inside the button's area."
msgstr ""
-#: doc/classes/Button.xml:35
+#: doc/classes/Button.xml:47
msgid "Align the text to the left."
msgstr ""
-#: doc/classes/Button.xml:38
+#: doc/classes/Button.xml:50
msgid "Align the text to the center."
msgstr ""
-#: doc/classes/Button.xml:41
+#: doc/classes/Button.xml:53
msgid "Align the text to the right."
msgstr ""
-#: doc/classes/Button.xml:46
+#: doc/classes/Button.xml:58
msgid "[StyleBox] used when the [Button] is disabled."
msgstr ""
-#: doc/classes/Button.xml:49
+#: doc/classes/Button.xml:61
msgid ""
"[StyleBox] used when the [Button] is focused. It is displayed over the "
"current [StyleBox], so using [StyleBoxEmpty] will just disable the focus "
"visual effect."
msgstr ""
-#: doc/classes/Button.xml:52
+#: doc/classes/Button.xml:64
msgid "[Font] of the [Button]'s text."
msgstr ""
-#: doc/classes/Button.xml:55
+#: doc/classes/Button.xml:67
msgid "Default text [Color] of the [Button]."
msgstr ""
-#: doc/classes/Button.xml:58
+#: doc/classes/Button.xml:70
msgid "Text [Color] used when the [Button] is disabled."
msgstr ""
-#: doc/classes/Button.xml:61
+#: doc/classes/Button.xml:73
msgid "Text [Color] used when the [Button] is being hovered."
msgstr ""
-#: doc/classes/Button.xml:64
+#: doc/classes/Button.xml:76
msgid "Text [Color] used when the [Button] is being pressed."
msgstr ""
-#: doc/classes/Button.xml:67
+#: doc/classes/Button.xml:79
msgid "[StyleBox] used when the [Button] is being hovered."
msgstr ""
-#: doc/classes/Button.xml:70
+#: doc/classes/Button.xml:82
msgid "The horizontal space between [Button]'s icon and text."
msgstr ""
-#: doc/classes/Button.xml:73
+#: doc/classes/Button.xml:85
msgid "Default [StyleBox] for the [Button]."
msgstr ""
-#: doc/classes/Button.xml:76
+#: doc/classes/Button.xml:88
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr ""
@@ -10689,7 +10736,7 @@ msgstr ""
#: doc/classes/CameraEffects.xml:37
msgid ""
"The exposure override value to use. Higher values will result in a brighter "
-"scene. Only effective if [member override_exposure_enable] is [code]true[/"
+"scene. Only effective if [member override_exposure_enabled] is [code]true[/"
"code]."
msgstr ""
@@ -10943,265 +10990,282 @@ msgid ""
msgstr ""
#: doc/classes/CanvasItem.xml:319
-msgid "Draws a string using a custom font."
+msgid ""
+"Draws [code]text[/code] using the specified [code]font[/code] at the "
+"[code]position[/code] (top-left corner). The text will have its color "
+"multiplied by [code]modulate[/code]. If [code]clip_w[/code] is greater than "
+"or equal to 0, the text will be clipped if it exceeds the specified width.\n"
+"[b]Example using the default project font:[/b]\n"
+"[codeblock]\n"
+"# If using this method in a script that redraws constantly, move the\n"
+"# `default_font` declaration to a member variable assigned in `_ready()`\n"
+"# so the Control is only created once.\n"
+"var default_font = Control.new().get_font(\"font\")\n"
+"draw_string(default_font, Vector2(64, 64), \"Hello world\")\n"
+"[/codeblock]\n"
+"See also [method Font.draw]."
msgstr ""
-#: doc/classes/CanvasItem.xml:330
+#: doc/classes/CanvasItem.xml:339
msgid "Draws a styled rectangle."
msgstr ""
-#: doc/classes/CanvasItem.xml:353
+#: doc/classes/CanvasItem.xml:362
msgid "Draws a texture at a given position."
msgstr ""
-#: doc/classes/CanvasItem.xml:380
+#: doc/classes/CanvasItem.xml:389
msgid ""
"Draws a textured rectangle at a given position, optionally modulated by a "
"color. If [code]transpose[/code] is [code]true[/code], the texture will have "
"its X and Y coordinates swapped."
msgstr ""
-#: doc/classes/CanvasItem.xml:409
+#: doc/classes/CanvasItem.xml:418
msgid ""
"Draws a textured rectangle region at a given position, optionally modulated "
"by a color. If [code]transpose[/code] is [code]true[/code], the texture will "
"have its X and Y coordinates swapped."
msgstr ""
-#: doc/classes/CanvasItem.xml:416 doc/classes/Node3D.xml:19
+#: doc/classes/CanvasItem.xml:425 doc/classes/Node3D.xml:19
msgid ""
"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."
msgstr ""
-#: doc/classes/CanvasItem.xml:423
+#: doc/classes/CanvasItem.xml:432
msgid "Returns the [RID] of the [World2D] canvas where this item is in."
msgstr ""
-#: doc/classes/CanvasItem.xml:430
+#: doc/classes/CanvasItem.xml:439
msgid "Returns the canvas item RID used by [RenderingServer] for this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:437
+#: doc/classes/CanvasItem.xml:446
msgid "Returns the transform matrix of this item's canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:444
+#: doc/classes/CanvasItem.xml:453
msgid "Returns the global position of the mouse."
msgstr ""
-#: doc/classes/CanvasItem.xml:451
+#: doc/classes/CanvasItem.xml:460
msgid "Returns the global transform matrix of this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:458
+#: doc/classes/CanvasItem.xml:467
msgid ""
"Returns the global transform matrix of this item in relation to the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:465
+#: doc/classes/CanvasItem.xml:474
msgid "Returns the mouse position relative to this item's position."
msgstr ""
-#: doc/classes/CanvasItem.xml:472
+#: doc/classes/CanvasItem.xml:481
msgid "Returns the transform matrix of this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:479
+#: doc/classes/CanvasItem.xml:488
msgid "Returns the viewport's boundaries as a [Rect2]."
msgstr ""
-#: doc/classes/CanvasItem.xml:486
+#: doc/classes/CanvasItem.xml:495
msgid "Returns this item's transform in relation to the viewport."
msgstr ""
-#: doc/classes/CanvasItem.xml:493
+#: doc/classes/CanvasItem.xml:502
msgid "Returns the [World2D] where this item is in."
msgstr ""
-#: doc/classes/CanvasItem.xml:500
+#: doc/classes/CanvasItem.xml:509
msgid "Hide the [CanvasItem] if it's currently visible."
msgstr ""
-#: doc/classes/CanvasItem.xml:507
+#: doc/classes/CanvasItem.xml:516
msgid ""
"Returns [code]true[/code] if local transform notifications are communicated "
"to children."
msgstr ""
-#: doc/classes/CanvasItem.xml:514
+#: doc/classes/CanvasItem.xml:523
msgid ""
"Returns [code]true[/code] if the node is set as top-level. See [method "
"set_as_toplevel]."
msgstr ""
-#: doc/classes/CanvasItem.xml:521
+#: doc/classes/CanvasItem.xml:530
msgid ""
"Returns [code]true[/code] if global transform notifications are communicated "
"to children."
msgstr ""
-#: doc/classes/CanvasItem.xml:528
+#: doc/classes/CanvasItem.xml:537 doc/classes/Node3D.xml:104
msgid ""
"Returns [code]true[/code] if the node is present in the [SceneTree], its "
-"[member visible] property is [code]true[/code] and its inherited visibility "
-"is also [code]true[/code]."
+"[member visible] property is [code]true[/code] and all its antecedents are "
+"also visible. If any antecedent is hidden, this node will not be visible in "
+"the scene tree."
msgstr ""
-#: doc/classes/CanvasItem.xml:537
+#: doc/classes/CanvasItem.xml:546
msgid "Assigns [code]screen_point[/code] as this node's new local transform."
msgstr ""
-#: doc/classes/CanvasItem.xml:546
+#: doc/classes/CanvasItem.xml:555
msgid ""
"Transformations issued by [code]event[/code]'s inputs are applied in local "
"space instead of global space."
msgstr ""
-#: doc/classes/CanvasItem.xml:555
+#: doc/classes/CanvasItem.xml:564
msgid ""
"If [code]enable[/code] is [code]true[/code], the node won't inherit its "
"transform from parent canvas items."
msgstr ""
-#: doc/classes/CanvasItem.xml:564
+#: doc/classes/CanvasItem.xml:573
msgid ""
"If [code]enable[/code] is [code]true[/code], children will be updated with "
"local transform data."
msgstr ""
-#: doc/classes/CanvasItem.xml:573
+#: doc/classes/CanvasItem.xml:582
msgid ""
"If [code]enable[/code] is [code]true[/code], children will be updated with "
"global transform data."
msgstr ""
-#: doc/classes/CanvasItem.xml:580
+#: doc/classes/CanvasItem.xml:589
msgid ""
"Show the [CanvasItem] if it's currently hidden. For controls that inherit "
"[Popup], the correct way to make them visible is to call one of the multiple "
"[code]popup*()[/code] functions instead."
msgstr ""
-#: doc/classes/CanvasItem.xml:587
+#: doc/classes/CanvasItem.xml:596
msgid ""
"Queue the [CanvasItem] for update. [constant NOTIFICATION_DRAW] will be "
"called on idle time to request redraw."
msgstr ""
-#: doc/classes/CanvasItem.xml:593
+#: doc/classes/CanvasItem.xml:602
msgid ""
"The rendering layers in which this [CanvasItem] responds to [Light2D] nodes."
msgstr ""
-#: doc/classes/CanvasItem.xml:596
+#: doc/classes/CanvasItem.xml:605
msgid "The material applied to textures on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:599
+#: doc/classes/CanvasItem.xml:608
msgid "The color applied to textures on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:602
+#: doc/classes/CanvasItem.xml:611
msgid ""
"The color applied to textures on this [CanvasItem]. This is not inherited by "
"children [CanvasItem]s."
msgstr ""
-#: doc/classes/CanvasItem.xml:605
+#: doc/classes/CanvasItem.xml:614
msgid "If [code]true[/code], the object draws behind its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:608
+#: doc/classes/CanvasItem.xml:617
msgid "If [code]true[/code], the object draws on top of its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:611
+#: doc/classes/CanvasItem.xml:620
msgid "The texture filtering mode to use on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:614
+#: doc/classes/CanvasItem.xml:623
msgid "The texture repeating mode to use on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:617
+#: doc/classes/CanvasItem.xml:626
msgid ""
"If [code]true[/code], the parent [CanvasItem]'s [member material] property "
"is used as this one's material."
msgstr ""
-#: doc/classes/CanvasItem.xml:620
+#: doc/classes/CanvasItem.xml:629
msgid ""
-"If [code]true[/code], this [CanvasItem] is drawn. For controls that inherit "
-"[Popup], the correct way to make them visible is to call one of the multiple "
-"[code]popup*()[/code] functions instead."
+"If [code]true[/code], this [CanvasItem] is drawn. The node is only visible "
+"if all of its antecedents are visible as well (in other words, [method "
+"is_visible_in_tree] must return [code]true[/code]).\n"
+"[b]Note:[/b] For controls that inherit [Popup], the correct way to make them "
+"visible is to call one of the multiple [code]popup*()[/code] functions "
+"instead."
msgstr ""
-#: doc/classes/CanvasItem.xml:626
+#: doc/classes/CanvasItem.xml:636
msgid ""
"Emitted when the [CanvasItem] must redraw. This can only be connected "
"realtime, as deferred will not allow drawing."
msgstr ""
-#: doc/classes/CanvasItem.xml:631
+#: doc/classes/CanvasItem.xml:641
msgid "Emitted when becoming hidden."
msgstr ""
-#: doc/classes/CanvasItem.xml:636
+#: doc/classes/CanvasItem.xml:646
msgid "Emitted when the item rect has changed."
msgstr ""
-#: doc/classes/CanvasItem.xml:641
+#: doc/classes/CanvasItem.xml:651
msgid "Emitted when the visibility (hidden/visible) changes."
msgstr ""
-#: doc/classes/CanvasItem.xml:647
+#: doc/classes/CanvasItem.xml:657
msgid ""
"The [CanvasItem]'s transform has changed. This notification is only received "
"if enabled by [method set_notify_transform] or [method "
"set_notify_local_transform]."
msgstr ""
-#: doc/classes/CanvasItem.xml:650
+#: doc/classes/CanvasItem.xml:660
msgid "The [CanvasItem] is requested to draw."
msgstr ""
-#: doc/classes/CanvasItem.xml:653
+#: doc/classes/CanvasItem.xml:663
msgid "The [CanvasItem]'s visibility has changed."
msgstr ""
-#: doc/classes/CanvasItem.xml:656
+#: doc/classes/CanvasItem.xml:666
msgid "The [CanvasItem] has entered the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:659
+#: doc/classes/CanvasItem.xml:669
msgid "The [CanvasItem] has exited the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:662 doc/classes/CanvasItem.xml:688
+#: doc/classes/CanvasItem.xml:672 doc/classes/CanvasItem.xml:698
msgid "The [CanvasItem] will inherit the filter from its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:665
+#: doc/classes/CanvasItem.xml:675
msgid ""
"The texture filter reads from the nearest pixel only. The simplest and "
"fastest method of filtering. Useful for pixel art."
msgstr ""
-#: doc/classes/CanvasItem.xml:668
+#: doc/classes/CanvasItem.xml:678
msgid ""
"The texture filter blends between the nearest four pixels. Use this for most "
"cases where you want to avoid a pixelated style."
msgstr ""
-#: doc/classes/CanvasItem.xml:671
+#: doc/classes/CanvasItem.xml:681
msgid ""
"The texture filter reads from the nearest pixel in the nearest mipmap. This "
"is the fastest way to read from textures with mipmaps."
msgstr ""
-#: doc/classes/CanvasItem.xml:674
+#: doc/classes/CanvasItem.xml:684
msgid ""
"The texture filter blends between the nearest 4 pixels and between the "
"nearest 2 mipmaps. Use this for non-pixel art textures that may be viewed at "
@@ -11209,7 +11273,7 @@ msgid ""
"smooth out pixels that are smaller than on-screen pixels."
msgstr ""
-#: doc/classes/CanvasItem.xml:677
+#: doc/classes/CanvasItem.xml:687
msgid ""
"The texture filter reads from the nearest pixel, but selects a mipmap based "
"on the angle between the surface and the camera view. This reduces artifacts "
@@ -11218,7 +11282,7 @@ msgid ""
"TEXTURE_FILTER_NEAREST_WITH_MIPMAPS] is usually more appropriate."
msgstr ""
-#: doc/classes/CanvasItem.xml:681
+#: doc/classes/CanvasItem.xml:691
msgid ""
"The texture filter blends between the nearest 4 pixels and selects a mipmap "
"based on the angle between the surface and the camera view. This reduces "
@@ -11229,21 +11293,21 @@ msgid ""
"TEXTURE_FILTER_LINEAR_WITH_MIPMAPS] is usually more appropriate."
msgstr ""
-#: doc/classes/CanvasItem.xml:691
+#: doc/classes/CanvasItem.xml:701
msgid "Texture will not repeat."
msgstr ""
-#: doc/classes/CanvasItem.xml:694
+#: doc/classes/CanvasItem.xml:704
msgid "Texture will repeat normally."
msgstr ""
-#: doc/classes/CanvasItem.xml:697
+#: doc/classes/CanvasItem.xml:707
msgid ""
"Texture will repeat in a 2x2 tiled mode, where elements at even positions "
"are mirrored."
msgstr ""
-#: doc/classes/CanvasItem.xml:700
+#: doc/classes/CanvasItem.xml:710
msgid "Represents the size of the [enum TextureRepeat] enum."
msgstr ""
@@ -12316,16 +12380,15 @@ msgid ""
msgstr ""
#: doc/classes/Color.xml:4
-msgid "Color in RGBA format with some support for ARGB format."
+msgid "Color in RGBA format using floats on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:7
msgid ""
-"A color is represented by red, green, and blue [code](r, g, b)[/code] "
-"components. Additionally, [code]a[/code] represents the alpha component, "
-"often used for transparency. Values are in floating-point and usually range "
-"from 0 to 1. Some properties (such as [member CanvasItem.modulate]) may "
-"accept values greater than 1.\n"
+"A color represented by red, green, blue, and alpha (RGBA) components. The "
+"alpha component is often used for transparency. Values are in floating-point "
+"and usually range from 0 to 1. Some properties (such as CanvasItem.modulate) "
+"may accept values greater than 1 (overbright or HDR colors).\n"
"You can also create a color from standardized color names by using [method "
"@GDScript.ColorN] or directly using the color constants defined here. The "
"standardized color set is based on the [url=https://en.wikipedia.org/wiki/"
@@ -12539,47 +12602,48 @@ msgid ""
msgstr ""
#: doc/classes/Color.xml:280
-msgid "Alpha value (range 0 to 1)."
+msgid ""
+"The color's alpha (transparency) component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:283
-msgid "Alpha value (range 0 to 255)."
+msgid "Wrapper for [member a] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:286
-msgid "Blue value (range 0 to 1)."
+msgid "The color's blue component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:289
-msgid "Blue value (range 0 to 255)."
+msgid "Wrapper for [member b] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:292
-msgid "Green value (range 0 to 1)."
+msgid "The color's green component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:295
-msgid "Green value (range 0 to 255)."
+msgid "Wrapper for [member g] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:298
-msgid "HSV hue value (range 0 to 1)."
+msgid "The HSV hue of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:301
-msgid "Red value (range 0 to 1)."
+msgid "The color's red component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:304
-msgid "Red value (range 0 to 255)."
+msgid "Wrapper for [member r] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:307
-msgid "HSV saturation value (range 0 to 1)."
+msgid "The HSV saturation of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:310
-msgid "HSV value (range 0 to 1)."
+msgid "The HSV value (brightness) of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:315
@@ -14499,23 +14563,35 @@ msgstr ""
#: doc/classes/Control.xml:859
msgid ""
"The node's scale, relative to its [member rect_size]. Change this property "
-"to scale the node around its [member rect_pivot_offset]."
-msgstr ""
-
-#: doc/classes/Control.xml:862
+"to scale the node around its [member rect_pivot_offset]. The Control's "
+"[member hint_tooltip] will also scale according to this value.\n"
+"[b]Note:[/b] This property is mainly intended to be used for animation "
+"purposes. Text inside the Control will look pixelated or blurry when the "
+"Control is scaled. To support multiple resolutions in your project, use an "
+"appropriate viewport stretch mode as described in the [url=https://docs."
+"godotengine.org/en/latest/tutorials/viewports/multiple_resolutions."
+"html]documentation[/url] instead of scaling Controls individually.\n"
+"[b]Note:[/b] If the Control node is a child of a [Container] node, the scale "
+"will be reset to [code]Vector2(1, 1)[/code] when the scene is instanced. To "
+"set the Control's scale when it's instanced, wait for one frame using "
+"[code]yield(get_tree(), \"idle_frame\")[/code] then set its [member "
+"rect_scale] property."
+msgstr ""
+
+#: doc/classes/Control.xml:864
msgid ""
"The size of the node's bounding rectangle, in pixels. [Container] nodes "
"update this property automatically."
msgstr ""
-#: doc/classes/Control.xml:865
+#: doc/classes/Control.xml:867
msgid ""
"Tells the parent [Container] nodes how they should resize and place the node "
"on the X axis. Use one of the [enum SizeFlags] constants to change the "
"flags. See the constants to learn what each does."
msgstr ""
-#: doc/classes/Control.xml:868
+#: doc/classes/Control.xml:870
msgid ""
"If the node and at least one of its neighbours uses the [constant "
"SIZE_EXPAND] size flag, the parent [Container] will let it take more or less "
@@ -14524,181 +14600,181 @@ msgid ""
"space."
msgstr ""
-#: doc/classes/Control.xml:871
+#: doc/classes/Control.xml:873
msgid ""
"Tells the parent [Container] nodes how they should resize and place the node "
"on the Y axis. Use one of the [enum SizeFlags] constants to change the "
"flags. See the constants to learn what each does."
msgstr ""
-#: doc/classes/Control.xml:874
+#: doc/classes/Control.xml:876
msgid ""
"Changing this property replaces the current [Theme] resource this node and "
"all its [Control] children use."
msgstr ""
-#: doc/classes/Control.xml:880
+#: doc/classes/Control.xml:882
msgid "Emitted when the node gains keyboard focus."
msgstr ""
-#: doc/classes/Control.xml:885
+#: doc/classes/Control.xml:887
msgid "Emitted when the node loses keyboard focus."
msgstr ""
-#: doc/classes/Control.xml:892
+#: doc/classes/Control.xml:894
msgid "Emitted when the node receives an [InputEvent]."
msgstr ""
-#: doc/classes/Control.xml:897
+#: doc/classes/Control.xml:899
msgid "Emitted when the node's minimum size changes."
msgstr ""
-#: doc/classes/Control.xml:902
+#: doc/classes/Control.xml:904
msgid ""
"Emitted when the mouse enters the control's [code]Rect[/code] area, provided "
"its [member mouse_filter] lets the event reach it."
msgstr ""
-#: doc/classes/Control.xml:907
+#: doc/classes/Control.xml:909
msgid ""
"Emitted when the mouse leaves the control's [code]Rect[/code] area, provided "
"its [member mouse_filter] lets the event reach it."
msgstr ""
-#: doc/classes/Control.xml:912
+#: doc/classes/Control.xml:914
msgid "Emitted when the control changes size."
msgstr ""
-#: doc/classes/Control.xml:917
+#: doc/classes/Control.xml:919
msgid ""
"Emitted when one of the size flags changes. See [member "
"size_flags_horizontal] and [member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:927
+#: doc/classes/Control.xml:929
msgid "The node cannot grab focus. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:930
+#: doc/classes/Control.xml:932
msgid ""
"The node can only grab focus on mouse clicks. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:933
+#: doc/classes/Control.xml:935
msgid ""
"The node can grab focus on mouse click or using the arrows and the Tab keys "
"on the keyboard. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:936
+#: doc/classes/Control.xml:938
msgid ""
"Sent when the node changes size. Use [member rect_size] to get the new size."
msgstr ""
-#: doc/classes/Control.xml:939
+#: doc/classes/Control.xml:941
msgid "Sent when the mouse pointer enters the node."
msgstr ""
-#: doc/classes/Control.xml:942
+#: doc/classes/Control.xml:944
msgid "Sent when the mouse pointer exits the node."
msgstr ""
-#: doc/classes/Control.xml:945
+#: doc/classes/Control.xml:947
msgid "Sent when the node grabs focus."
msgstr ""
-#: doc/classes/Control.xml:948
+#: doc/classes/Control.xml:950
msgid "Sent when the node loses focus."
msgstr ""
-#: doc/classes/Control.xml:951
+#: doc/classes/Control.xml:953
msgid ""
"Sent when the node's [member theme] changes, right before Godot redraws the "
"control. Happens when you call one of the [code]add_theme_*_override[/code] "
"methods."
msgstr ""
-#: doc/classes/Control.xml:954
+#: doc/classes/Control.xml:956
msgid ""
"Sent when this node is inside a [ScrollContainer] which has begun being "
"scrolled."
msgstr ""
-#: doc/classes/Control.xml:957
+#: doc/classes/Control.xml:959
msgid ""
"Sent when this node is inside a [ScrollContainer] which has stopped being "
"scrolled."
msgstr ""
-#: doc/classes/Control.xml:960
+#: doc/classes/Control.xml:962
msgid ""
"Show the system's arrow mouse cursor when the user hovers the node. Use with "
"[member mouse_default_cursor_shape]."
msgstr ""
-#: doc/classes/Control.xml:963
+#: doc/classes/Control.xml:965
msgid ""
"Show the system's I-beam mouse cursor when the user hovers the node. The I-"
"beam pointer has a shape similar to \"I\". It tells the user they can "
"highlight or insert text."
msgstr ""
-#: doc/classes/Control.xml:966
+#: doc/classes/Control.xml:968
msgid ""
"Show the system's pointing hand mouse cursor when the user hovers the node."
msgstr ""
-#: doc/classes/Control.xml:969
+#: doc/classes/Control.xml:971
msgid "Show the system's cross mouse cursor when the user hovers the node."
msgstr ""
-#: doc/classes/Control.xml:972
+#: doc/classes/Control.xml:974
msgid ""
"Show the system's wait mouse cursor, often an hourglass, when the user "
"hovers the node."
msgstr ""
-#: doc/classes/Control.xml:975
+#: doc/classes/Control.xml:977
msgid ""
"Show the system's busy mouse cursor when the user hovers the node. Often an "
"hourglass."
msgstr ""
-#: doc/classes/Control.xml:978
+#: doc/classes/Control.xml:980
msgid ""
"Show the system's drag mouse cursor, often a closed fist or a cross symbol, "
"when the user hovers the node. It tells the user they're currently dragging "
"an item, like a node in the Scene dock."
msgstr ""
-#: doc/classes/Control.xml:981
+#: doc/classes/Control.xml:983
msgid ""
"Show the system's drop mouse cursor when the user hovers the node. It can be "
"an open hand. It tells the user they can drop an item they're currently "
"grabbing, like a node in the Scene dock."
msgstr ""
-#: doc/classes/Control.xml:984
+#: doc/classes/Control.xml:986
msgid ""
"Show the system's forbidden mouse cursor when the user hovers the node. "
"Often a crossed circle."
msgstr ""
-#: doc/classes/Control.xml:987
+#: doc/classes/Control.xml:989
msgid ""
"Show the system's vertical resize mouse cursor when the user hovers the "
"node. A double-headed vertical arrow. It tells the user they can resize the "
"window or the panel vertically."
msgstr ""
-#: doc/classes/Control.xml:990
+#: doc/classes/Control.xml:992
msgid ""
"Show the system's horizontal resize mouse cursor when the user hovers the "
"node. A double-headed horizontal arrow. It tells the user they can resize "
"the window or the panel horizontally."
msgstr ""
-#: doc/classes/Control.xml:993
+#: doc/classes/Control.xml:995
msgid ""
"Show the system's window resize mouse cursor when the user hovers the node. "
"The cursor is a double-headed arrow that goes from the bottom left to the "
@@ -14706,7 +14782,7 @@ msgid ""
"horizontally and vertically."
msgstr ""
-#: doc/classes/Control.xml:996
+#: doc/classes/Control.xml:998
msgid ""
"Show the system's window resize mouse cursor when the user hovers the node. "
"The cursor is a double-headed arrow that goes from the top left to the "
@@ -14714,93 +14790,93 @@ msgid ""
"they can resize the window or the panel both horizontally and vertically."
msgstr ""
-#: doc/classes/Control.xml:999
+#: doc/classes/Control.xml:1001
msgid ""
"Show the system's move mouse cursor when the user hovers the node. It shows "
"2 double-headed arrows at a 90 degree angle. It tells the user they can move "
"a UI element freely."
msgstr ""
-#: doc/classes/Control.xml:1002
+#: doc/classes/Control.xml:1004
msgid ""
"Show the system's vertical split mouse cursor when the user hovers the node. "
"On Windows, it's the same as [constant CURSOR_VSIZE]."
msgstr ""
-#: doc/classes/Control.xml:1005
+#: doc/classes/Control.xml:1007
msgid ""
"Show the system's horizontal split mouse cursor when the user hovers the "
"node. On Windows, it's the same as [constant CURSOR_HSIZE]."
msgstr ""
-#: doc/classes/Control.xml:1008
+#: doc/classes/Control.xml:1010
msgid ""
"Show the system's help mouse cursor when the user hovers the node, a "
"question mark."
msgstr ""
-#: doc/classes/Control.xml:1011
+#: doc/classes/Control.xml:1013
msgid ""
"Snap all 4 anchors to the top-left of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1014
+#: doc/classes/Control.xml:1016
msgid ""
"Snap all 4 anchors to the top-right of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1017
+#: doc/classes/Control.xml:1019
msgid ""
"Snap all 4 anchors to the bottom-left of the parent control's bounds. Use "
"with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1020
+#: doc/classes/Control.xml:1022
msgid ""
"Snap all 4 anchors to the bottom-right of the parent control's bounds. Use "
"with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1023
+#: doc/classes/Control.xml:1025
msgid ""
"Snap all 4 anchors to the center of the left edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1026
+#: doc/classes/Control.xml:1028
msgid ""
"Snap all 4 anchors to the center of the top edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1029
+#: doc/classes/Control.xml:1031
msgid ""
"Snap all 4 anchors to the center of the right edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1032
+#: doc/classes/Control.xml:1034
msgid ""
"Snap all 4 anchors to the center of the bottom edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1035
+#: doc/classes/Control.xml:1037
msgid ""
"Snap all 4 anchors to the center of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1038
+#: doc/classes/Control.xml:1040
msgid ""
"Snap all 4 anchors to the left edge of the parent control. The left margin "
"becomes relative to the left edge and the top margin relative to the top "
"left corner of the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1041
+#: doc/classes/Control.xml:1043
msgid ""
"Snap all 4 anchors to the top edge of the parent control. The left margin "
"becomes relative to the top left corner, the top margin relative to the top "
@@ -14808,14 +14884,14 @@ msgid ""
"parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1044
+#: doc/classes/Control.xml:1046
msgid ""
"Snap all 4 anchors to the right edge of the parent control. The right margin "
"becomes relative to the right edge and the top margin relative to the top "
"right corner of the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1047
+#: doc/classes/Control.xml:1049
msgid ""
"Snap all 4 anchors to the bottom edge of the parent control. The left margin "
"becomes relative to the bottom left corner, the bottom margin relative to "
@@ -14823,19 +14899,19 @@ msgid ""
"the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1050
+#: doc/classes/Control.xml:1052
msgid ""
"Snap all 4 anchors to a vertical line that cuts the parent control in half. "
"Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1053
+#: doc/classes/Control.xml:1055
msgid ""
"Snap all 4 anchors to a horizontal line that cuts the parent control in "
"half. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1056
+#: doc/classes/Control.xml:1058
msgid ""
"Snap all 4 anchors to the respective corners of the parent control. Set all "
"4 margins to 0 after you applied this preset and the [Control] will fit its "
@@ -14843,30 +14919,30 @@ msgid ""
"editor. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1059
+#: doc/classes/Control.xml:1061
msgid "The control will be resized to its minimum size."
msgstr ""
-#: doc/classes/Control.xml:1062
+#: doc/classes/Control.xml:1064
msgid "The control's width will not change."
msgstr ""
-#: doc/classes/Control.xml:1065
+#: doc/classes/Control.xml:1067
msgid "The control's height will not change."
msgstr ""
-#: doc/classes/Control.xml:1068
+#: doc/classes/Control.xml:1070
msgid "The control's size will not change."
msgstr ""
-#: doc/classes/Control.xml:1071
+#: doc/classes/Control.xml:1073
msgid ""
"Tells the parent [Container] to expand the bounds of this node to fill all "
"the available space without pushing any other node. Use with [member "
"size_flags_horizontal] and [member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1074
+#: doc/classes/Control.xml:1076
msgid ""
"Tells the parent [Container] to let this node take all the available space "
"on the axis you flag. If multiple neighboring nodes are set to expand, "
@@ -14875,13 +14951,13 @@ msgid ""
"[member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1077
+#: doc/classes/Control.xml:1079
msgid ""
"Sets the node's size flags to both fill and expand. See the 2 constants "
"above for more information."
msgstr ""
-#: doc/classes/Control.xml:1080
+#: doc/classes/Control.xml:1082
msgid ""
"Tells the parent [Container] to center the node in itself. It centers the "
"control based on its bounding box, so it doesn't work with the fill or "
@@ -14889,7 +14965,7 @@ msgid ""
"size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1083
+#: doc/classes/Control.xml:1085
msgid ""
"Tells the parent [Container] to align the node with its end, either the "
"bottom or the right edge. It doesn't work with the fill or expand size "
@@ -14897,7 +14973,7 @@ msgid ""
"size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1086
+#: doc/classes/Control.xml:1088
msgid ""
"The control will receive mouse button input events through [method "
"_gui_input] if clicked on. And the control will receive the [signal "
@@ -14906,7 +14982,7 @@ msgid ""
"other controls. This also results in blocking signals in other controls."
msgstr ""
-#: doc/classes/Control.xml:1089
+#: doc/classes/Control.xml:1091
msgid ""
"The control will receive mouse button input events through [method "
"_gui_input] if clicked on. And the control will receive the [signal "
@@ -14918,7 +14994,7 @@ msgid ""
"not be fired."
msgstr ""
-#: doc/classes/Control.xml:1092
+#: doc/classes/Control.xml:1094
msgid ""
"The control will not receive mouse button input events through [method "
"_gui_input]. The control will also not receive the [signal mouse_entered] "
@@ -14927,25 +15003,25 @@ msgid ""
"handled automatically."
msgstr ""
-#: doc/classes/Control.xml:1095
+#: doc/classes/Control.xml:1097
msgid ""
"The control will grow to the left or top to make up if its minimum size is "
"changed to be greater than its current size on the respective axis."
msgstr ""
-#: doc/classes/Control.xml:1098
+#: doc/classes/Control.xml:1100
msgid ""
"The control will grow to the right or bottom to make up if its minimum size "
"is changed to be greater than its current size on the respective axis."
msgstr ""
-#: doc/classes/Control.xml:1101
+#: doc/classes/Control.xml:1103
msgid ""
"The control will grow in both directions equally to make up if its minimum "
"size is changed to be greater than its current size."
msgstr ""
-#: doc/classes/Control.xml:1104
+#: doc/classes/Control.xml:1106
msgid ""
"Snaps one of the 4 anchor's sides to the origin of the node's [code]Rect[/"
"code], in the top left. Use it with one of the [code]anchor_*[/code] member "
@@ -14953,7 +15029,7 @@ msgid ""
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1107
+#: doc/classes/Control.xml:1109
msgid ""
"Snaps one of the 4 anchor's sides to the end of the node's [code]Rect[/"
"code], in the bottom right. Use it with one of the [code]anchor_*[/code] "
@@ -16738,7 +16814,7 @@ msgstr ""
msgid ""
"Returns the [Texture2D] associated with the specified [enum DecalTexture]. "
"This is a convenience method, in most cases you should access the texture "
-"directly. \n"
+"directly.\n"
"For example, instead of [code]albedo_tex = $Decal.get_texture(Decal."
"TEXTURE_ALBEDO)[/code], use [code]albedo_tex = $Decal.texture_albedo[/"
"code].\n"
@@ -16754,7 +16830,7 @@ msgstr ""
msgid ""
"Sets the [Texture2D] associated with the specified [enum DecalTexture]. This "
"is a convenience method, in most cases you should access the texture "
-"directly. \n"
+"directly.\n"
"For example, instead of [code]$Decal.set_texture(Decal.TEXTURE_ALBEDO, "
"albedo_tex)[/code], use [code]$Decal.texture_albedo = albedo_tex[/code].\n"
"One case where this is better than accessing the texture directly is when "
@@ -17103,7 +17179,7 @@ msgstr ""
msgid "The light's shadow rendering algorithm. See [enum ShadowMode]."
msgstr ""
-#: doc/classes/DirectionalLight3D.xml:31 doc/classes/RenderingServer.xml:3254
+#: doc/classes/DirectionalLight3D.xml:31 doc/classes/RenderingServer.xml:3250
msgid ""
"Sets the size of the directional shadow pancake. The pancake offsets the "
"start of the shadow's camera frustum to provide a higher effective depth "
@@ -17177,10 +17253,10 @@ msgstr ""
msgid ""
"Directory type. It is used to manage directories and their content (not "
"restricted to the project folder).\n"
-"When creating a new [Directory], its default opened directory will be "
-"[code]res://[/code]. This may change in the future, so it is advised to "
-"always use [method open] to initialize your [Directory] where you want to "
-"operate, with explicit error checking.\n"
+"When creating a new [Directory], it must be explicitly opened using [method "
+"open] before most methods can be used. However, [method file_exists] and "
+"[method dir_exists] can be used without opening a directory. If so, they use "
+"a path relative to [code]res://[/code].\n"
"Here is an example on how to iterate through the files of a directory:\n"
"[codeblock]\n"
"func dir_contents(path):\n"
@@ -17199,7 +17275,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Directory.xml:27 doc/classes/File.xml:25
+#: doc/classes/Directory.xml:27 doc/classes/File.xml:26
msgid ""
"https://docs.godotengine.org/en/latest/getting_started/step_by_step/"
"filesystem.html"
@@ -17233,41 +17309,43 @@ msgstr ""
#: doc/classes/Directory.xml:65
msgid ""
"Returns whether the target directory exists. The argument can be relative to "
-"the current directory, or an absolute path."
+"the current directory, or an absolute path.\n"
+"If the [Directory] is not open, the path is relative to [code]res://[/code]."
msgstr ""
-#: doc/classes/Directory.xml:74
+#: doc/classes/Directory.xml:75
msgid ""
"Returns whether the target file exists. The argument can be relative to the "
-"current directory, or an absolute path."
+"current directory, or an absolute path.\n"
+"If the [Directory] is not open, the path is relative to [code]res://[/code]."
msgstr ""
-#: doc/classes/Directory.xml:81
+#: doc/classes/Directory.xml:83
msgid ""
"Returns the absolute path to the currently opened directory (e.g. "
"[code]res://folder[/code] or [code]C:\\tmp\\folder[/code])."
msgstr ""
-#: doc/classes/Directory.xml:88
+#: doc/classes/Directory.xml:90
msgid ""
"Returns the currently opened directory's drive index. See [method get_drive] "
"to convert returned index to the name of the drive."
msgstr ""
-#: doc/classes/Directory.xml:97
+#: doc/classes/Directory.xml:99
msgid ""
"On Windows, returns the name of the drive (partition) passed as an argument "
"(e.g. [code]C:[/code]). On other platforms, or if the requested drive does "
"not existed, the method returns an empty String."
msgstr ""
-#: doc/classes/Directory.xml:104
+#: doc/classes/Directory.xml:106
msgid ""
"On Windows, returns the number of drives (partitions) mounted on the current "
"filesystem. On other platforms, the method returns 0."
msgstr ""
-#: doc/classes/Directory.xml:111
+#: doc/classes/Directory.xml:113
msgid ""
"Returns the next element (file or directory) in the current directory "
"(including [code].[/code] and [code]..[/code], unless "
@@ -17278,14 +17356,14 @@ msgid ""
"mandatory in such a case)."
msgstr ""
-#: doc/classes/Directory.xml:119
+#: doc/classes/Directory.xml:121
msgid ""
"On UNIX desktop systems, returns the available space on the current "
"directory's disk. On other platforms, this information is not available and "
"the method returns 0 or -1."
msgstr ""
-#: doc/classes/Directory.xml:130
+#: doc/classes/Directory.xml:132
msgid ""
"Initializes the stream used to list all files and directories using the "
"[method get_next] function, closing the current opened stream if needed. "
@@ -17297,13 +17375,13 @@ msgid ""
"out."
msgstr ""
-#: doc/classes/Directory.xml:139
+#: doc/classes/Directory.xml:141
msgid ""
"Closes the current stream opened with [method list_dir_begin] (whether it "
"has been fully processed with [method get_next] or not does not matter)."
msgstr ""
-#: doc/classes/Directory.xml:148
+#: doc/classes/Directory.xml:150
msgid ""
"Creates a directory. The argument can be relative to the current directory, "
"or an absolute path. The target directory should be placed in an already "
@@ -17312,7 +17390,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:158
+#: doc/classes/Directory.xml:160
msgid ""
"Creates a target directory and all necessary intermediate directories in its "
"path, by calling [method make_dir] recursively. The argument can be relative "
@@ -17320,7 +17398,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:168
+#: doc/classes/Directory.xml:170
msgid ""
"Opens an existing directory of the filesystem. The [code]path[/code] "
"argument can be within the project tree ([code]res://folder[/code]), the "
@@ -17329,7 +17407,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:178
+#: doc/classes/Directory.xml:180
msgid ""
"Deletes the target file or an empty directory. The argument can be relative "
"to the current directory, or an absolute path. If the target directory is "
@@ -17337,7 +17415,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:190
+#: doc/classes/Directory.xml:192
msgid ""
"Renames (move) the [code]from[/code] file to the [code]to[/code] "
"destination. Both arguments should be paths to files, either relative or "
@@ -17378,6 +17456,53 @@ msgid ""
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
+#: doc/classes/DisplayServer.xml:530
+msgid ""
+"Return the greatest scale factor of all screens.\n"
+"[b]Note:[/b] On macOS returned value is [code]2.0[/code] if there is at "
+"least one hiDPI (Retina) screen in the system, and [code]1.0[/code] in all "
+"other cases.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:557
+msgid ""
+"Return the scale factor of the specified screen by index.\n"
+"[b]Note:[/b] On macOS returned value is [code]2.0[/code] for hiDPI (Retina) "
+"screen, and [code]1.0[/code] for all other cases.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:630
+msgid ""
+"Returns the on-screen keyboard's height in pixels. Returns 0 if there is no "
+"keyboard or if it is currently hidden."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:637
+msgid "Hides the virtual keyboard if it is shown, does nothing otherwise."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:656
+msgid ""
+"Shows the virtual keyboard if the platform has one.\n"
+"[code]existing_text[/code] parameter is useful for implementing your own "
+"[LineEdit] or [TextEdit], as it tells the virtual keyboard what text has "
+"already been typed (the virtual keyboard uses it for auto-correct and "
+"predictions).\n"
+"[code]position[/code] parameter is the screen space [Rect2] of the edited "
+"text.\n"
+"[code]multiline[/code] parameter needs to be set to [code]true[/code] to be "
+"able to enter multiple lines of text, as in [TextEdit].\n"
+"[code]max_length[/code] limits the number of characters that can be entered "
+"if different from [code]-1[/code].\n"
+"[code]cursor_start[/code] can optionally define the current text cursor "
+"position if [code]cursor_end[/code] is not set.\n"
+"[code]cursor_start[/code] and [code]cursor_end[/code] can optionally define "
+"the current text selection.\n"
+"[b]Note:[/b] This method is implemented on Android, iOS and UWP."
+msgstr ""
+
#: doc/classes/DTLSServer.xml:4
msgid "Helper class to implement a DTLS server."
msgstr ""
@@ -17498,54 +17623,62 @@ msgstr ""
msgid "Adds a fallback font."
msgstr ""
-#: doc/classes/DynamicFont.xml:35
+#: doc/classes/DynamicFont.xml:33
+msgid ""
+"Returns a string containing all the characters available in the main and all "
+"the fallback fonts.\n"
+"If a given character is included in more than one font, it appears only once "
+"in the returned string."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:43
msgid "Returns the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:42
+#: doc/classes/DynamicFont.xml:50
msgid "Returns the number of fallback fonts."
msgstr ""
-#: doc/classes/DynamicFont.xml:51
+#: doc/classes/DynamicFont.xml:59
msgid ""
"Returns the spacing for the given [code]type[/code] (see [enum SpacingType])."
msgstr ""
-#: doc/classes/DynamicFont.xml:60
+#: doc/classes/DynamicFont.xml:68
msgid "Removes the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:71
+#: doc/classes/DynamicFont.xml:79
msgid "Sets the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:82
+#: doc/classes/DynamicFont.xml:90
msgid ""
"Sets the spacing for [code]type[/code] (see [enum SpacingType]) to "
"[code]value[/code] in pixels (not relative to the font size)."
msgstr ""
-#: doc/classes/DynamicFont.xml:88
+#: doc/classes/DynamicFont.xml:96
msgid "Extra spacing at the bottom in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:91
+#: doc/classes/DynamicFont.xml:99
msgid "Extra character spacing in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:94
+#: doc/classes/DynamicFont.xml:102
msgid "Extra space spacing in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:97
+#: doc/classes/DynamicFont.xml:105
msgid "Extra spacing at the top in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:100
+#: doc/classes/DynamicFont.xml:108
msgid "The font data."
msgstr ""
-#: doc/classes/DynamicFont.xml:103
+#: doc/classes/DynamicFont.xml:111
msgid ""
"The font outline's color.\n"
"[b]Note:[/b] It's recommended to leave this at the default value so that you "
@@ -17554,27 +17687,27 @@ msgid ""
"outline modulate theme item."
msgstr ""
-#: doc/classes/DynamicFont.xml:107
+#: doc/classes/DynamicFont.xml:115
msgid "The font outline's thickness in pixels (not relative to the font size)."
msgstr ""
-#: doc/classes/DynamicFont.xml:110
+#: doc/classes/DynamicFont.xml:118
msgid "The font size in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:115
+#: doc/classes/DynamicFont.xml:123
msgid "Spacing at the top."
msgstr ""
-#: doc/classes/DynamicFont.xml:118
+#: doc/classes/DynamicFont.xml:126
msgid "Spacing at the bottom."
msgstr ""
-#: doc/classes/DynamicFont.xml:121
+#: doc/classes/DynamicFont.xml:129
msgid "Character spacing."
msgstr ""
-#: doc/classes/DynamicFont.xml:124
+#: doc/classes/DynamicFont.xml:132
msgid "Space spacing."
msgstr ""
@@ -17956,7 +18089,12 @@ msgstr ""
msgid "Remitted if a resource is reimported."
msgstr ""
-#: doc/classes/EditorFileSystem.xml:106
+#: doc/classes/EditorFileSystem.xml:100
+msgid ""
+"Emitted if at least one resource is reloaded when the filesystem is scanned."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:107
msgid "Emitted if the source of any imported file changed."
msgstr ""
@@ -17998,29 +18136,43 @@ msgstr ""
msgid "Returns the path to the file at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:86
+#: doc/classes/EditorFileSystemDirectory.xml:70
+msgid ""
+"Returns the base class of the script class defined in the file at index "
+"[code]idx[/code]. If the file doesn't define a script class using the "
+"[code]class_name[/code] syntax, this will return an empty string."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:79
+msgid ""
+"Returns the name of the script class defined in the file at index [code]idx[/"
+"code]. If the file doesn't define a script class using the [code]class_name[/"
+"code] syntax, this will return an empty string."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:88
msgid "Returns the file extension of the file at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:93
+#: doc/classes/EditorFileSystemDirectory.xml:95
msgid "Returns the name of this directory."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:100
+#: doc/classes/EditorFileSystemDirectory.xml:102
msgid ""
"Returns the parent directory for this directory or [code]null[/code] if "
"called on a directory at [code]res://[/code] or [code]user://[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:107
+#: doc/classes/EditorFileSystemDirectory.xml:109
msgid "Returns the path to this directory."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:116
+#: doc/classes/EditorFileSystemDirectory.xml:118
msgid "Returns the subdirectory at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:123
+#: doc/classes/EditorFileSystemDirectory.xml:125
msgid "Returns the number of subdirectories in this directory."
msgstr ""
@@ -18111,45 +18263,72 @@ msgstr ""
msgid "Gets the unique name of the importer."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:92
+#: doc/classes/EditorImportPlugin.xml:86
+msgid ""
+"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. For example:\n"
+"[codeblock]\n"
+"func get_option_visibility(option, options):\n"
+" # Only show the lossy quality setting if the compression mode is set to "
+"\"Lossy\".\n"
+" if option == \"compress/lossy_quality\" and options.has(\"compress/mode"
+"\"):\n"
+" return int(options[\"compress/mode\"]) == COMPRESS_LOSSY\n"
+"\n"
+" return true\n"
+"[/codeblock]\n"
+"Return [code]true[/code] to make all options always visible."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:102
msgid ""
"Gets the number of initial presets defined by the plugin. Use [method "
"get_import_options] to get the default options for the preset and [method "
"get_preset_name] to get the name of the preset."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:101
+#: doc/classes/EditorImportPlugin.xml:111
msgid "Gets the name of the options preset at this index."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:108
+#: doc/classes/EditorImportPlugin.xml:118
msgid ""
"Gets the priority of this plugin for the recognized extension. Higher "
"priority plugins will be preferred. The default priority is [code]1.0[/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:115
+#: doc/classes/EditorImportPlugin.xml:125
msgid ""
"Gets the list of file extensions to associate with this loader (case-"
"insensitive). e.g. [code][\"obj\"][/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:122
+#: doc/classes/EditorImportPlugin.xml:132
msgid ""
"Gets the Godot resource type associated with this loader. e.g. [code]\"Mesh"
"\"[/code] or [code]\"Animation\"[/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:129
+#: doc/classes/EditorImportPlugin.xml:139
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:136
+#: doc/classes/EditorImportPlugin.xml:146
msgid "Gets the name to display in the import window."
msgstr ""
+#: doc/classes/EditorImportPlugin.xml:163
+msgid ""
+"Imports [code]source_file[/code] into [code]save_path[/code] with the import "
+"[code]options[/code] specified. The [code]platform_variants[/code] and "
+"[code]gen_files[/code] arrays will be modified by this function.\n"
+"This method must be overridden to do the actual importing work. See this "
+"class' description for an example of overriding this method."
+msgstr ""
+
#: doc/classes/EditorInspector.xml:4
msgid "A tab used to edit properties of the selected node."
msgstr ""
@@ -18165,6 +18344,58 @@ msgid ""
"the singleton using [method EditorInterface.get_inspector]."
msgstr ""
+#: doc/classes/EditorInspector.xml:17
+msgid ""
+"Refreshes the inspector.\n"
+"[b]Note:[/b] To save on CPU resources, calling this method will do nothing "
+"if the time specified in [code]docks/property_editor/auto_refresh_interval[/"
+"code] editor setting hasn't passed yet since this method was last called. "
+"(By default, this interval is set to 0.3 seconds.)"
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:30
+msgid ""
+"Emitted when the Edit button of an [Object] has been pressed in the "
+"inspector. This is mainly used in the remote scene tree inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:37
+msgid "Emitted when a property is removed from the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:44
+msgid "Emitted when a property is edited in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:51
+msgid ""
+"Emitted when a property is keyed in the inspector. Properties can be keyed "
+"by clicking the \"key\" icon next to a property when the Animation panel is "
+"toggled."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:58
+msgid "Emitted when a property is selected in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:67
+msgid ""
+"Emitted when a boolean property is toggled in the inspector.\n"
+"[b]Note:[/b] This signal is never emitted if the internal [code]autoclear[/"
+"code] property enabled. Since this property is always enabled in the editor "
+"inspector, this signal is never emitted by the editor itself."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:77
+msgid "Emitted when a resource is selected in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:82
+msgid ""
+"Emitted when a property that requires a restart to be applied is edited in "
+"the inspector. This is only used in the Project Settings and Editor Settings."
+msgstr ""
+
#: doc/classes/EditorInspectorPlugin.xml:4
msgid "Plugin for adding custom property editors on inspector."
msgstr ""
@@ -18243,91 +18474,155 @@ msgstr ""
#: doc/classes/EditorInterface.xml:26
msgid ""
-"Returns the main container of Godot editor's window. You can use it, for "
-"example, to retrieve the size of the container and place your controls "
+"Returns the main container of Godot editor's window. For example, you can "
+"use it to retrieve the size of the container and place your controls "
"accordingly."
msgstr ""
-#: doc/classes/EditorInterface.xml:39
+#: doc/classes/EditorInterface.xml:33
+msgid "Returns the current path being viewed in the [FileSystemDock]."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:40
msgid "Returns the edited (current) scene's root [Node]."
msgstr ""
-#: doc/classes/EditorInterface.xml:46
-msgid "Returns the [EditorSettings]."
+#: doc/classes/EditorInterface.xml:47
+msgid "Returns the editor's [EditorSettings] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:53
-msgid "Returns the editor [Viewport]."
+#: doc/classes/EditorInterface.xml:54
+msgid ""
+"Returns the main editor control. Use this as a parent for main screens.\n"
+"[b]Note:[/b] This returns the main editor control containing the whole "
+"editor, not the 2D or 3D viewports specifically."
msgstr ""
-#: doc/classes/EditorInterface.xml:72
+#: doc/classes/EditorInterface.xml:62
+msgid "Returns the editor's [FileSystemDock] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:69
+msgid "Returns the editor's [EditorInspector] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:76
msgid "Returns an [Array] with the file paths of the currently opened scenes."
msgstr ""
-#: doc/classes/EditorInterface.xml:79
-msgid "Returns the [EditorFileSystem]."
+#: doc/classes/EditorInterface.xml:83
+msgid ""
+"Returns the name of the scene that is being played. If no scene is currently "
+"being played, returns an empty string."
msgstr ""
-#: doc/classes/EditorInterface.xml:86
-msgid "Returns the [EditorResourcePreview]."
+#: doc/classes/EditorInterface.xml:90
+msgid "Returns the editor's [EditorFileSystem] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:93
-msgid "Returns the [ScriptEditor]."
+#: doc/classes/EditorInterface.xml:97
+msgid "Returns the editor's [EditorResourcePreview] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:106
-msgid "Returns the [EditorSelection]."
+#: doc/classes/EditorInterface.xml:104
+msgid "Returns the editor's [ScriptEditor] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:117
+#: doc/classes/EditorInterface.xml:111
msgid ""
-"Shows the given property on the given [code]object[/code] in the Editor's "
+"Returns the path of the directory currently selected in the "
+"[FileSystemDock]. If a file is selected, its base directory will be returned "
+"using [method String.get_base_dir] instead."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:118
+msgid "Returns the editor's [EditorSelection] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:129
+msgid ""
+"Shows the given property on the given [code]object[/code] in the editor's "
"Inspector dock."
msgstr ""
-#: doc/classes/EditorInterface.xml:126
+#: doc/classes/EditorInterface.xml:136
msgid ""
-"Returns the enabled status of a plugin. The plugin name is the same as its "
-"directory name."
+"Returns [code]true[/code] if a scene is currently being played, [code]false[/"
+"code] otherwise. Paused scenes are considered as being played."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:145
+msgid ""
+"Returns [code]true[/code] if the specified [code]plugin[/code] is enabled. "
+"The plugin name is the same as its directory name."
msgstr ""
-#: doc/classes/EditorInterface.xml:137
+#: doc/classes/EditorInterface.xml:156
msgid ""
"Returns mesh previews rendered at the given size as an [Array] of "
"[Texture2D]s."
msgstr ""
-#: doc/classes/EditorInterface.xml:146
+#: doc/classes/EditorInterface.xml:165
msgid "Opens the scene at the given path."
msgstr ""
-#: doc/classes/EditorInterface.xml:155
+#: doc/classes/EditorInterface.xml:172
+msgid "Plays the currently active scene."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:181
+msgid "Plays the scene specified by its filepath."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:188
+msgid "Plays the main scene."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:197
msgid "Reloads the scene at the given path."
msgstr ""
-#: doc/classes/EditorInterface.xml:162
+#: doc/classes/EditorInterface.xml:204
msgid ""
"Saves the scene. Returns either [code]OK[/code] or [code]ERR_CANT_CREATE[/"
"code] (see [@GlobalScope] constants)."
msgstr ""
-#: doc/classes/EditorInterface.xml:173
+#: doc/classes/EditorInterface.xml:215
msgid "Saves the scene as a file at [code]path[/code]."
msgstr ""
-#: doc/classes/EditorInterface.xml:182
+#: doc/classes/EditorInterface.xml:224
msgid ""
"Selects the file, with the path provided by [code]file[/code], in the "
"FileSystem dock."
msgstr ""
-#: doc/classes/EditorInterface.xml:201
+#: doc/classes/EditorInterface.xml:233
+msgid ""
+"Sets the editor's current main screen to the one specified in [code]name[/"
+"code]. [code]name[/code] must match the text of the tab in question exactly "
+"([code]2D[/code], [code]3D[/code], [code]Script[/code], [code]AssetLib[/"
+"code])."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:244
msgid ""
"Sets the enabled status of a plugin. The plugin name is the same as its "
"directory name."
msgstr ""
+#: doc/classes/EditorInterface.xml:251
+msgid "Stops the scene that is currently playing."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:257
+msgid ""
+"If [code]true[/code], enables distraction-free mode which hides side docks "
+"to increase the space available for the main view."
+msgstr ""
+
#: doc/classes/EditorNode3DGizmo.xml:4
msgid "Custom gizmo for editing Node3D objects."
msgstr ""
@@ -18339,14 +18634,20 @@ msgid ""
"information."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:26
+#: doc/classes/EditorNode3DGizmo.xml:18
+msgid ""
+"Adds the specified [code]segments[/code] to the gizmo's collision shape for "
+"picking. Call this function during [method redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:27
msgid ""
"Adds collision triangles to the gizmo for picking. A [TriangleMesh] can be "
"generated from a regular [Mesh] too. Call this function during [method "
"redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:41
+#: doc/classes/EditorNode3DGizmo.xml:42
msgid ""
"Adds a list of handles (points) which can be used to deform the object being "
"edited.\n"
@@ -18354,20 +18655,33 @@ msgid ""
"handles. Call this function during [method redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:57
+#: doc/classes/EditorNode3DGizmo.xml:58
msgid ""
"Adds lines to the gizmo (as sets of 2 points), with a given material. The "
"lines are used for visualizing the gizmo. Call this function during [method "
"redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:84
+#: doc/classes/EditorNode3DGizmo.xml:73
+msgid ""
+"Adds a mesh to the gizmo with the specified [code]billboard[/code] state, "
+"[code]skeleton[/code] and [code]material[/code]. If [code]billboard[/code] "
+"is [code]true[/code], the mesh will rotate to always face the camera. Call "
+"this function during [method redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:86
msgid ""
"Adds an unscaled billboard for visualization. Call this function during "
"[method redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:103
+#: doc/classes/EditorNode3DGizmo.xml:93
+msgid ""
+"Removes everything in the gizmo including meshes, collisions and handles."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:106
msgid ""
"Commit a handle being edited (handles must have been previously added by "
"[method add_handles]).\n"
@@ -18375,40 +18689,42 @@ msgid ""
"restore the edited value to the original is provided."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:113
+#: doc/classes/EditorNode3DGizmo.xml:116
msgid ""
"Gets the name of an edited handle (handles must have been previously added "
"by [method add_handles]).\n"
"Handles can be named for reference to the user when editing."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:123
+#: doc/classes/EditorNode3DGizmo.xml:126
msgid ""
"Gets actual value of a handle. This value can be anything and used for "
"eventually undoing the motion when calling [method commit_handle]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:130
+#: doc/classes/EditorNode3DGizmo.xml:133
msgid ""
"Returns the [EditorNode3DGizmoPlugin] that owns this gizmo. It's useful to "
"retrieve materials using [method EditorNode3DGizmoPlugin.get_material]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:137
+#: doc/classes/EditorNode3DGizmo.xml:140
msgid "Returns the Node3D node associated with this gizmo."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:146
-msgid "Gets whether a handle is highlighted or not."
+#: doc/classes/EditorNode3DGizmo.xml:149
+msgid ""
+"Returns [code]true[/code] if the handle at index [code]index[/code] is "
+"highlighted by being hovered with the mouse."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:153
+#: doc/classes/EditorNode3DGizmo.xml:156
msgid ""
-"This function is called when the Node3D this gizmo refers to changes (the "
+"This function is called when the [Node3D] this gizmo refers to changes (the "
"[method Node3D.update_gizmo] is called)."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:166
+#: doc/classes/EditorNode3DGizmo.xml:169
msgid ""
"This function is used when the user drags a gizmo handle (previously added "
"with [method add_handles]) in screen coordinates.\n"
@@ -18416,6 +18732,18 @@ msgid ""
"raycasts."
msgstr ""
+#: doc/classes/EditorNode3DGizmo.xml:179
+msgid ""
+"Sets the gizmo's hidden state. If [code]true[/code], the gizmo will be "
+"hidden. If [code]false[/code], it will be shown."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:188
+msgid ""
+"Sets the reference [Node3D] node for the gizmo. [code]node[/code] must "
+"inherit from [Node3D]."
+msgstr ""
+
#: doc/classes/EditorNode3DGizmoPlugin.xml:4
msgid "Used by the editor to define Node3D gizmo types."
msgstr ""
@@ -18508,7 +18836,17 @@ msgid ""
"visibility menu."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:150
+#: doc/classes/EditorNode3DGizmoPlugin.xml:142
+msgid ""
+"Override this method to set the gizmo's priority. Higher values correspond "
+"to higher priority. If a gizmo with higher priority conflicts with another "
+"gizmo, only the gizmo with higher priority will be used.\n"
+"All built-in editor gizmos return a priority of [code]-1[/code]. If not "
+"overridden, this method will return [code]0[/code], which means custom "
+"gizmos will automatically override built-in gizmos."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:152
msgid ""
"Override this method to define which Node3D nodes have a gizmo from this "
"plugin. Whenever a [Node3D] node is added to a scene this method is called, "
@@ -18516,25 +18854,25 @@ msgid ""
"assigned and is added to this plugin's list of active gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:161
+#: doc/classes/EditorNode3DGizmoPlugin.xml:163
msgid ""
"Gets whether a handle is highlighted or not. Called for this plugin's active "
"gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:168
+#: doc/classes/EditorNode3DGizmoPlugin.xml:170
msgid ""
"Override this method to define whether Node3D with this gizmo should be "
"selecteble even when the gizmo is hidden."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:177
+#: doc/classes/EditorNode3DGizmoPlugin.xml:179
msgid ""
"Callback to redraw the provided gizmo. Called for this plugin's active "
"gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:192
+#: doc/classes/EditorNode3DGizmoPlugin.xml:194
msgid ""
"Update the value of a handle after it has been updated. Called for this "
"plugin's active gizmos."
@@ -18621,7 +18959,13 @@ msgid ""
"should be cleaned up using [code]remove_tool_menu_item(name)[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:149
+#: doc/classes/EditorPlugin.xml:151
+msgid ""
+"Registers a custom translation parser plugin for extracting translatable "
+"strings from custom files."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:158
msgid ""
"This method is called when the editor is about to save the project, switch "
"to another tab, etc. It asks the plugin to apply any pending state changes "
@@ -18630,32 +18974,32 @@ msgid ""
"must apply the shader code being written by the user to the object."
msgstr ""
-#: doc/classes/EditorPlugin.xml:163
+#: doc/classes/EditorPlugin.xml:172
msgid ""
"Clear all the state and reset the object being edited to zero. This ensures "
"your plugin does not keep editing a currently existing node, or a node from "
"the wrong scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:170
+#: doc/classes/EditorPlugin.xml:179
msgid ""
"Called by the engine when the user disables the [EditorPlugin] in the Plugin "
"tab of the project settings window."
msgstr ""
-#: doc/classes/EditorPlugin.xml:179
+#: doc/classes/EditorPlugin.xml:188
msgid ""
"This function is used for plugins that edit specific object types (nodes or "
"resources). It requests the editor to edit the given object."
msgstr ""
-#: doc/classes/EditorPlugin.xml:186
+#: doc/classes/EditorPlugin.xml:195
msgid ""
"Called by the engine when the user enables the [EditorPlugin] in the Plugin "
"tab of the project settings window."
msgstr ""
-#: doc/classes/EditorPlugin.xml:211
+#: doc/classes/EditorPlugin.xml:220
msgid ""
"Called when there is a root node in the current edited scene, [method "
"handles] is implemented and an [InputEvent] happens in the 2D viewport. "
@@ -18680,7 +19024,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:237
+#: doc/classes/EditorPlugin.xml:246
msgid ""
"Called when there is a root node in the current edited scene, [method "
"handles] is implemented and an [InputEvent] happens in the 3D viewport. "
@@ -18705,20 +19049,20 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:259
+#: doc/classes/EditorPlugin.xml:268
msgid ""
"This is for editors that edit script-based objects. You can return a list of "
"breakpoints in the format ([code]script:line[/code]), for example: "
"[code]res://path_to_script.gd:25[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:266
+#: doc/classes/EditorPlugin.xml:275
msgid ""
"Returns the [EditorInterface] object that gives you control over Godot "
"editor's window and its functionalities."
msgstr ""
-#: doc/classes/EditorPlugin.xml:273
+#: doc/classes/EditorPlugin.xml:282
msgid ""
"Override this method in your plugin to return a [Texture2D] in order to give "
"it an icon.\n"
@@ -18736,7 +19080,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:289
+#: doc/classes/EditorPlugin.xml:298
msgid ""
"Override this method in your plugin to provide the name of the plugin when "
"displayed in the Godot editor.\n"
@@ -18744,33 +19088,33 @@ msgid ""
"of the \"2D\", \"3D\", \"Script\", and \"AssetLib\" buttons."
msgstr ""
-#: doc/classes/EditorPlugin.xml:297
+#: doc/classes/EditorPlugin.xml:306
msgid ""
"Gets the Editor's dialogue used for making scripts.\n"
"[b]Note:[/b] Users can configure it before use."
msgstr ""
-#: doc/classes/EditorPlugin.xml:305
+#: doc/classes/EditorPlugin.xml:314
msgid ""
"Gets the state of your plugin editor. This is used when saving the scene (so "
"state is kept when opening it again) and for switching tabs (so state can be "
"restored when the tab returns)."
msgstr ""
-#: doc/classes/EditorPlugin.xml:312
+#: doc/classes/EditorPlugin.xml:321
msgid ""
"Gets the undo/redo object. Most actions in the editor can be undoable, so "
"use this object to make sure this happens when it's worth it."
msgstr ""
-#: doc/classes/EditorPlugin.xml:321
+#: doc/classes/EditorPlugin.xml:330
msgid ""
"Gets the GUI layout of the plugin. This is used to save the project's editor "
"layout when [method queue_save_layout] is called or the editor layout was "
"changed(For example changing the position of a dock)."
msgstr ""
-#: doc/classes/EditorPlugin.xml:330
+#: doc/classes/EditorPlugin.xml:339
msgid ""
"Implement this function if your plugin edits a specific type of object "
"(Resource or Node). If you return [code]true[/code], then you will get the "
@@ -18780,14 +19124,14 @@ msgid ""
"be called too."
msgstr ""
-#: doc/classes/EditorPlugin.xml:337
+#: doc/classes/EditorPlugin.xml:346
msgid ""
"Returns [code]true[/code] if this is a main screen editor plugin (it goes in "
"the workspace selector together with [b]2D[/b], [b]3D[/b], [b]Script[/b] and "
"[b]AssetLib[/b])."
msgstr ""
-#: doc/classes/EditorPlugin.xml:360
+#: doc/classes/EditorPlugin.xml:369
msgid ""
"This function will be called when the editor is requested to become visible. "
"It is used for plugins that edit a specific object type.\n"
@@ -18795,85 +19139,89 @@ msgid ""
"manually."
msgstr ""
-#: doc/classes/EditorPlugin.xml:368
+#: doc/classes/EditorPlugin.xml:377
msgid "Queue save the project's editor layout."
msgstr ""
-#: doc/classes/EditorPlugin.xml:377
+#: doc/classes/EditorPlugin.xml:386
msgid "Removes an Autoload [code]name[/code] from the list."
msgstr ""
-#: doc/classes/EditorPlugin.xml:386
+#: doc/classes/EditorPlugin.xml:395
msgid ""
"Removes the control from the bottom panel. You have to manually [method Node."
"queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:397
+#: doc/classes/EditorPlugin.xml:406
msgid ""
"Removes the control from the specified container. You have to manually "
"[method Node.queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:406
+#: doc/classes/EditorPlugin.xml:415
msgid ""
"Removes the control from the dock. You have to manually [method Node."
"queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:415
+#: doc/classes/EditorPlugin.xml:424
msgid "Removes a custom type added by [method add_custom_type]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:464
+#: doc/classes/EditorPlugin.xml:473
msgid "Removes a menu [code]name[/code] from [b]Project > Tools[/b]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:471
+#: doc/classes/EditorPlugin.xml:482
+msgid "Removes a registered custom translation parser plugin."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:489
msgid ""
"This method is called after the editor saves the project or when it's "
"closed. It asks the plugin to save edited external scenes/resources."
msgstr ""
-#: doc/classes/EditorPlugin.xml:484
+#: doc/classes/EditorPlugin.xml:502
msgid ""
"Use this method if you always want to receive inputs from 3D view screen "
"inside [method forward_spatial_gui_input]. It might be especially usable if "
"your plugin will want to use raycast in the scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:493
+#: doc/classes/EditorPlugin.xml:511
msgid "Restore the state saved by [method get_state]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:502
+#: doc/classes/EditorPlugin.xml:520
msgid "Restore the plugin GUI layout saved by [method get_window_layout]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:509
+#: doc/classes/EditorPlugin.xml:527
msgid "Updates the overlays of the editor (2D/3D) viewport."
msgstr ""
-#: doc/classes/EditorPlugin.xml:518
+#: doc/classes/EditorPlugin.xml:536
msgid ""
"Emitted when user changes the workspace ([b]2D[/b], [b]3D[/b], [b]Script[/"
"b], [b]AssetLib[/b]). Also works with custom screens defined by plugins."
msgstr ""
-#: doc/classes/EditorPlugin.xml:531
+#: doc/classes/EditorPlugin.xml:549
msgid ""
"Emitted when the scene is changed in the editor. The argument will return "
"the root node of the scene that has just become active. If this scene is new "
"and empty, the argument will be [code]null[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:538
+#: doc/classes/EditorPlugin.xml:556
msgid ""
"Emitted when user closes a scene. The argument is file path to a closed "
"scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:584
+#: doc/classes/EditorPlugin.xml:602
msgid "Represents the size of the [enum DockSlot] enum."
msgstr ""
@@ -18928,64 +19276,83 @@ msgid "When this virtual function is called, you must update your editor."
msgstr ""
#: doc/classes/EditorProperty.xml:76
-msgid "Used by the inspector, set when property is checkable."
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is "
+"checkable."
msgstr ""
#: doc/classes/EditorProperty.xml:79
-msgid "Used by the inspector, when the property is checked."
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is checked."
msgstr ""
-#: doc/classes/EditorProperty.xml:84
-msgid "Used by the inspector, when the property must draw with error color."
+#: doc/classes/EditorProperty.xml:82
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property can be "
+"deleted by the user."
msgstr ""
-#: doc/classes/EditorProperty.xml:87
-msgid "Used by the inspector, when the property can add keys for animation."
+#: doc/classes/EditorProperty.xml:85
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property must draw "
+"with error color. This is used for editable children's properties."
msgstr ""
-#: doc/classes/EditorProperty.xml:90
-msgid "Sets this property to change the label (if you want to show one)."
+#: doc/classes/EditorProperty.xml:88
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property can add "
+"keys for animation."
msgstr ""
-#: doc/classes/EditorProperty.xml:93
-msgid "Used by the inspector, when the property is read-only."
+#: doc/classes/EditorProperty.xml:91
+msgid "Set this property to change the label (if you want to show one)."
msgstr ""
-#: doc/classes/EditorProperty.xml:103
+#: doc/classes/EditorProperty.xml:94
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is read-"
+"only."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:104
msgid ""
"Emit it if you want multiple properties modified at the same time. Do not "
"use if added via [method EditorInspectorPlugin.parse_property]."
msgstr ""
-#: doc/classes/EditorProperty.xml:112
+#: doc/classes/EditorProperty.xml:113
msgid "Used by sub-inspectors. Emit it if what was selected was an Object ID."
msgstr ""
-#: doc/classes/EditorProperty.xml:121
+#: doc/classes/EditorProperty.xml:122
msgid ""
"Do not emit this manually, use the [method emit_changed] method instead."
msgstr ""
-#: doc/classes/EditorProperty.xml:130
+#: doc/classes/EditorProperty.xml:131
msgid "Emitted when a property was checked. Used internally."
msgstr ""
-#: doc/classes/EditorProperty.xml:143
+#: doc/classes/EditorProperty.xml:138
+msgid "Emitted when a property was deleted. Used internally."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:145
msgid ""
"Emit it if you want to add this value as an animation key (check for keying "
"being enabled first)."
msgstr ""
-#: doc/classes/EditorProperty.xml:152
+#: doc/classes/EditorProperty.xml:154
msgid "Emit it if you want to key a property with a single value."
msgstr ""
-#: doc/classes/EditorProperty.xml:161
+#: doc/classes/EditorProperty.xml:163
msgid ""
"If you want a sub-resource to be edited, emit this signal with the resource."
msgstr ""
-#: doc/classes/EditorProperty.xml:170
+#: doc/classes/EditorProperty.xml:172
msgid "Emitted when selected. Used internally."
msgstr ""
@@ -19270,17 +19637,26 @@ msgstr ""
msgid ""
"Object that holds the project-independent editor settings. These settings "
"are generally visible in the [b]Editor > Editor Settings[/b] menu.\n"
-"Accessing the settings is done by using the regular [Object] API, such as:\n"
-"[codeblock]\n"
-"settings.set(prop,value)\n"
-"settings.get(prop)\n"
-"list_of_settings = settings.get_property_list()\n"
+"Property names use slash delimiters to distinguish sections. Setting values "
+"can be of any [Variant] type. It's recommended to use [code]snake_case[/"
+"code] for editor settings to be consistent with the Godot editor itself.\n"
+"Accessing the settings can be done using the following methods, such as:\n"
+"[codeblock]\n"
+"# `settings.set(\"some/property\", value)` also works as this class "
+"overrides `_set()` internally.\n"
+"settings.set_setting(\"some/property\",value)\n"
+"\n"
+"# `settings.get(\"some/property\", value)` also works as this class "
+"overrides `_get()` internally.\n"
+"settings.get_setting(\"some/property\")\n"
+"\n"
+"var list_of_settings = settings.get_property_list()\n"
"[/codeblock]\n"
"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
"the singleton using [method EditorInterface.get_editor_settings]."
msgstr ""
-#: doc/classes/EditorSettings.xml:25
+#: doc/classes/EditorSettings.xml:30
msgid ""
"Adds a custom property info to a property. The dictionary must contain:\n"
"- [code]name[/code]: [String] (the name of the property)\n"
@@ -19302,52 +19678,173 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorSettings.xml:50
-msgid "Erase a given setting (pass full property path)."
+#: doc/classes/EditorSettings.xml:55
+msgid "Erases the setting whose name is specified by [code]property[/code]."
msgstr ""
-#: doc/classes/EditorSettings.xml:57
-msgid "Gets the list of favorite files and directories for this project."
+#: doc/classes/EditorSettings.xml:62
+msgid "Returns the list of favorite files and directories for this project."
msgstr ""
-#: doc/classes/EditorSettings.xml:76
+#: doc/classes/EditorSettings.xml:75
msgid ""
-"Gets the specific project settings path. Projects all have a unique sub-"
-"directory inside the settings path where project specific settings are saved."
+"Returns project-specific metadata for the [code]section[/code] and "
+"[code]key[/code] specified. If the metadata doesn't exist, [code]default[/"
+"code] will be returned instead. See also [method set_project_metadata]."
msgstr ""
-#: doc/classes/EditorSettings.xml:83
+#: doc/classes/EditorSettings.xml:82
msgid ""
-"Gets the list of recently visited folders in the file dialog for this "
+"Returns the project-specific settings path. Projects all have a unique "
+"subdirectory inside the settings path where project-specific settings are "
+"saved."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:89
+msgid ""
+"Returns the list of recently visited folders in the file dialog for this "
"project."
msgstr ""
#: doc/classes/EditorSettings.xml:98
msgid ""
+"Returns the value of the setting specified by [code]name[/code]. This is "
+"equivalent to using [method Object.get] on the EditorSettings instance."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:105
+msgid ""
"Gets the global settings path for the engine. Inside this path, you can find "
"some standard paths such as:\n"
"[code]settings/tmp[/code] - Used for temporary storage of files\n"
"[code]settings/templates[/code] - Where export templates are located"
msgstr ""
-#: doc/classes/EditorSettings.xml:133
+#: doc/classes/EditorSettings.xml:116
+msgid ""
+"Returns [code]true[/code] if the setting specified by [code]name[/code] "
+"exists, [code]false[/code] otherwise."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:125
+msgid ""
+"Returns [code]true[/code] if the setting specified by [code]name[/code] can "
+"have its value reverted to the default value, [code]false[/code] otherwise. "
+"When this method returns [code]true[/code], a Revert button will display "
+"next to the setting in the Editor Settings."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:134
+msgid ""
+"Returns the default value of the setting specified by [code]name[/code]. "
+"This is the value that would be applied when clicking the Revert button in "
+"the Editor Settings."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:143
msgid "Sets the list of favorite files and directories for this project."
msgstr ""
-#: doc/classes/EditorSettings.xml:166
+#: doc/classes/EditorSettings.xml:156
+msgid ""
+"Sets the initial value of the setting specified by [code]name[/code] to "
+"[code]value[/code]. This is used to provide a value for the Revert button in "
+"the Editor Settings. If [code]update_current[/code] is true, the current "
+"value of the setting will be set to [code]value[/code] as well."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:169
+msgid ""
+"Sets project-specific metadata with the [code]section[/code], [code]key[/"
+"code] and [code]data[/code] specified. This metadata is stored outside the "
+"project folder and therefore won't be checked into version control. See also "
+"[method get_project_metadata]."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:178
msgid ""
"Sets the list of recently visited folders in the file dialog for this "
"project."
msgstr ""
-#: doc/classes/EditorSettings.xml:183
-msgid "Emitted when editor settings change."
+#: doc/classes/EditorSettings.xml:189
+msgid ""
+"Sets the [code]value[/code] of the setting specified by [code]name[/code]. "
+"This is equivalent to using [method Object.set] on the EditorSettings "
+"instance."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:196
+msgid "Emitted after any editor setting has changed."
msgstr ""
-#: doc/classes/EditorSettings.xml:189
+#: doc/classes/EditorSettings.xml:202
+msgid ""
+"Emitted after any editor setting has changed. It's used by various editor "
+"plugins to update their visuals on theme changes or logic on configuration "
+"changes."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:4
+msgid ""
+"Plugin for adding custom parsers to extract strings that are to be "
+"translated from custom files (.csv, .json etc.)."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:7
+msgid ""
+"Plugins are registered via [method EditorPlugin."
+"add_translation_parser_plugin] method. To define the parsing and string "
+"extraction logic, override the [method parse_file] method in script.\n"
+"The extracted strings will be written into a POT file selected by user under "
+"\"POT Generation\" in \"Localization\" tab in \"Project Settings\" menu.\n"
+"Below shows an example of a custom parser that extracts strings in a CSV "
+"file to write into a POT.\n"
+"[codeblock]\n"
+"tool\n"
+"extends EditorTranslationParserPlugin\n"
+"\n"
+"\n"
+"func parse_file(path, extracted_strings):\n"
+" var file = File.new()\n"
+" file.open(path, File.READ)\n"
+" var text = file.get_as_text()\n"
+" var split_strs = text.split(\",\", false, 0)\n"
+" for s in split_strs:\n"
+" extracted_strings.append(s)\n"
+" #print(\"Extracted string: \" + s)\n"
+"\n"
+"\n"
+"func get_recognized_extensions():\n"
+" return [\"csv\"]\n"
+"[/codeblock]\n"
+"[b]Note:[/b] If you override parsing logic for standard script types "
+"(GDScript, C#, etc.), it would be better to load the [code]path[/code] "
+"argument using [method ResourceLoader.load]. This is because built-in "
+"scripts are loaded as [Resource] type, not [File] type.\n"
+"For example:\n"
+"[codeblock]\n"
+"func parse_file(path, extracted_strings):\n"
+" var res = ResourceLoader.load(path, \"Script\")\n"
+" var text = res.get_source_code()\n"
+" # Parsing logic.\n"
+"\n"
+"\n"
+"func get_recognized_extensions():\n"
+" return [\"gd\"]\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:48
+msgid ""
+"Gets the list of file extensions to associate with this parser, e.g. [code]"
+"[\"csv\"][/code]."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:59
msgid ""
-"Emitted when editor settings change. It used by various editor plugins to "
-"update their visuals on theme changes or logic on configuration changes."
+"Override this method to define a custom parsing logic to extract the "
+"translatable strings."
msgstr ""
#: doc/classes/EditorVCSInterface.xml:4
@@ -19958,15 +20455,15 @@ msgid ""
"to 1.3 to compensate for the lack of HDR rendering."
msgstr ""
-#: doc/classes/Environment.xml:190
+#: doc/classes/Environment.xml:214
msgid "The [Sky] resource used for this [Environment]."
msgstr ""
-#: doc/classes/Environment.xml:197
+#: doc/classes/Environment.xml:221
msgid "The depth tolerance for screen-space reflections."
msgstr ""
-#: doc/classes/Environment.xml:200
+#: doc/classes/Environment.xml:224
msgid ""
"If [code]true[/code], screen-space reflections are enabled. Screen-space "
"reflections are more accurate than reflections from [GIProbe]s or "
@@ -19974,48 +20471,48 @@ msgid ""
"others."
msgstr ""
-#: doc/classes/Environment.xml:203
+#: doc/classes/Environment.xml:227
msgid ""
"The fade-in distance for screen-space reflections. Affects the area from the "
"reflected material to the screen-space reflection)."
msgstr ""
-#: doc/classes/Environment.xml:206
+#: doc/classes/Environment.xml:230
msgid ""
"The fade-out distance for screen-space reflections. Affects the area from "
"the screen-space reflection to the \"global\" reflection."
msgstr ""
-#: doc/classes/Environment.xml:209
+#: doc/classes/Environment.xml:233
msgid ""
"The maximum number of steps for screen-space reflections. Higher values are "
"slower."
msgstr ""
-#: doc/classes/Environment.xml:212
+#: doc/classes/Environment.xml:236
msgid ""
"The screen-space ambient occlusion intensity on materials that have an AO "
"texture defined. Values higher than [code]0[/code] will make the SSAO effect "
"visible in areas darkened by AO textures."
msgstr ""
-#: doc/classes/Environment.xml:215
+#: doc/classes/Environment.xml:239
msgid ""
"The screen-space ambient occlusion bias. This should be kept high enough to "
"prevent \"smooth\" curves from being affected by ambient occlusion."
msgstr ""
-#: doc/classes/Environment.xml:218
+#: doc/classes/Environment.xml:242
msgid ""
"The screen-space ambient occlusion blur quality. See [enum SSAOBlur] for "
"possible values."
msgstr ""
-#: doc/classes/Environment.xml:221
+#: doc/classes/Environment.xml:245
msgid "The screen-space ambient occlusion edge sharpness."
msgstr ""
-#: doc/classes/Environment.xml:224
+#: doc/classes/Environment.xml:248
msgid ""
"If [code]true[/code], the screen-space ambient occlusion effect is enabled. "
"This darkens objects' corners and cavities to simulate ambient light not "
@@ -20026,13 +20523,13 @@ msgid ""
"issues."
msgstr ""
-#: doc/classes/Environment.xml:227
+#: doc/classes/Environment.xml:251
msgid ""
"The primary screen-space ambient occlusion intensity. See also [member "
"ssao_radius]."
msgstr ""
-#: doc/classes/Environment.xml:230
+#: doc/classes/Environment.xml:254
msgid ""
"The screen-space ambient occlusion intensity in direct light. In real life, "
"ambient occlusion only applies to indirect light, which means its effects "
@@ -20040,46 +20537,46 @@ msgid ""
"the SSAO effect visible in direct light."
msgstr ""
-#: doc/classes/Environment.xml:233
+#: doc/classes/Environment.xml:257
msgid "The primary screen-space ambient occlusion radius."
msgstr ""
-#: doc/classes/Environment.xml:236
+#: doc/classes/Environment.xml:260
msgid "The default exposure used for tonemapping."
msgstr ""
-#: doc/classes/Environment.xml:239
+#: doc/classes/Environment.xml:263
msgid ""
"The tonemapping mode to use. Tonemapping is the process that \"converts\" "
"HDR values to be suitable for rendering on a LDR display. (Godot doesn't "
"support rendering on HDR displays yet.)"
msgstr ""
-#: doc/classes/Environment.xml:242
+#: doc/classes/Environment.xml:266
msgid ""
"The white reference value for tonemapping. Only effective if the [member "
"tonemap_mode] isn't set to [constant TONE_MAPPER_LINEAR]."
msgstr ""
-#: doc/classes/Environment.xml:247
+#: doc/classes/Environment.xml:271
msgid ""
"Clears the background using the clear color defined in [member "
"ProjectSettings.rendering/environment/default_clear_color]."
msgstr ""
-#: doc/classes/Environment.xml:250
+#: doc/classes/Environment.xml:274
msgid "Clears the background using a custom clear color."
msgstr ""
-#: doc/classes/Environment.xml:253
+#: doc/classes/Environment.xml:277
msgid "Displays a user-defined sky in the background."
msgstr ""
-#: doc/classes/Environment.xml:256
+#: doc/classes/Environment.xml:280
msgid "Displays a [CanvasLayer] in the background."
msgstr ""
-#: doc/classes/Environment.xml:259
+#: doc/classes/Environment.xml:283
msgid ""
"Keeps on screen every pixel drawn in the background. This is the fastest "
"background mode, but it can only be safely used in fully-interior scenes (no "
@@ -20087,107 +20584,107 @@ msgid ""
"is visible, \"ghost trail\" artifacts will be visible when moving the camera."
msgstr ""
-#: doc/classes/Environment.xml:262 doc/classes/RenderingServer.xml:3446
+#: doc/classes/Environment.xml:286 doc/classes/RenderingServer.xml:3457
msgid "Displays a camera feed in the background."
msgstr ""
-#: doc/classes/Environment.xml:265
+#: doc/classes/Environment.xml:289
msgid "Represents the size of the [enum BGMode] enum."
msgstr ""
-#: doc/classes/Environment.xml:268 doc/classes/RenderingServer.xml:3452
+#: doc/classes/Environment.xml:292 doc/classes/RenderingServer.xml:3463
msgid ""
"Gather ambient light from whichever source is specified as the background."
msgstr ""
-#: doc/classes/Environment.xml:271 doc/classes/RenderingServer.xml:3455
+#: doc/classes/Environment.xml:295 doc/classes/RenderingServer.xml:3466
msgid "Disable ambient light."
msgstr ""
-#: doc/classes/Environment.xml:274 doc/classes/RenderingServer.xml:3458
+#: doc/classes/Environment.xml:298 doc/classes/RenderingServer.xml:3469
msgid "Specify a specific [Color] for ambient light."
msgstr ""
-#: doc/classes/Environment.xml:277 doc/classes/RenderingServer.xml:3461
+#: doc/classes/Environment.xml:301 doc/classes/RenderingServer.xml:3472
msgid ""
"Gather ambient light from the [Sky] regardless of what the background is."
msgstr ""
-#: doc/classes/Environment.xml:280 doc/classes/RenderingServer.xml:3464
+#: doc/classes/Environment.xml:304 doc/classes/RenderingServer.xml:3475
msgid "Use the background for reflections."
msgstr ""
-#: doc/classes/Environment.xml:283 doc/classes/RenderingServer.xml:3467
+#: doc/classes/Environment.xml:307 doc/classes/RenderingServer.xml:3478
msgid "Disable reflections."
msgstr ""
-#: doc/classes/Environment.xml:286 doc/classes/RenderingServer.xml:3470
+#: doc/classes/Environment.xml:310 doc/classes/RenderingServer.xml:3481
msgid "Use the [Sky] for reflections regardless of what the background is."
msgstr ""
-#: doc/classes/Environment.xml:289 doc/classes/RenderingServer.xml:3473
+#: doc/classes/Environment.xml:313
+msgid ""
+"Linear tonemapper operator. Reads the linear data and passes it on "
+"unmodified."
+msgstr ""
+
+#: doc/classes/Environment.xml:316
+msgid ""
+"Reinhardt tonemapper operator. Performs a variation on rendered pixels' "
+"colors by this formula: [code]color = color / (1 + color)[/code]."
+msgstr ""
+
+#: doc/classes/Environment.xml:319
+msgid "Filmic tonemapper operator."
+msgstr ""
+
+#: doc/classes/Environment.xml:322
+msgid "Academy Color Encoding System tonemapper operator."
+msgstr ""
+
+#: doc/classes/Environment.xml:325 doc/classes/RenderingServer.xml:3484
msgid ""
"Additive glow blending mode. Mostly used for particles, glows (bloom), lens "
"flare, bright sources."
msgstr ""
-#: doc/classes/Environment.xml:292 doc/classes/RenderingServer.xml:3476
+#: doc/classes/Environment.xml:328 doc/classes/RenderingServer.xml:3487
msgid ""
"Screen glow blending mode. Increases brightness, used frequently with bloom."
msgstr ""
-#: doc/classes/Environment.xml:295 doc/classes/RenderingServer.xml:3479
+#: doc/classes/Environment.xml:331 doc/classes/RenderingServer.xml:3490
msgid ""
"Soft light glow blending mode. Modifies contrast, exposes shadows and "
"highlights (vivid bloom)."
msgstr ""
-#: doc/classes/Environment.xml:298 doc/classes/RenderingServer.xml:3482
+#: doc/classes/Environment.xml:334 doc/classes/RenderingServer.xml:3493
msgid ""
"Replace glow blending mode. Replaces all pixels' color by the glow value. "
"This can be used to simulate a full-screen blur effect by tweaking the glow "
"parameters to match the original image's brightness."
msgstr ""
-#: doc/classes/Environment.xml:301 doc/classes/RenderingServer.xml:3485
+#: doc/classes/Environment.xml:337 doc/classes/RenderingServer.xml:3496
msgid ""
"Mixes the glow with the underlying color to avoid increasing brightness as "
"much while still maintaining a glow effect."
msgstr ""
-#: doc/classes/Environment.xml:304
-msgid ""
-"Linear tonemapper operator. Reads the linear data and passes it on "
-"unmodified."
-msgstr ""
-
-#: doc/classes/Environment.xml:307
-msgid ""
-"Reinhardt tonemapper operator. Performs a variation on rendered pixels' "
-"colors by this formula: [code]color = color / (1 + color)[/code]."
-msgstr ""
-
-#: doc/classes/Environment.xml:310
-msgid "Filmic tonemapper operator."
-msgstr ""
-
-#: doc/classes/Environment.xml:313
-msgid "Academy Color Encoding System tonemapper operator."
-msgstr ""
-
-#: doc/classes/Environment.xml:316
+#: doc/classes/Environment.xml:340
msgid "No blur for the screen-space ambient occlusion effect (fastest)."
msgstr ""
-#: doc/classes/Environment.xml:319
+#: doc/classes/Environment.xml:343
msgid "1×1 blur for the screen-space ambient occlusion effect."
msgstr ""
-#: doc/classes/Environment.xml:322
+#: doc/classes/Environment.xml:346
msgid "2×2 blur for the screen-space ambient occlusion effect."
msgstr ""
-#: doc/classes/Environment.xml:325
+#: doc/classes/Environment.xml:349
msgid ""
"3×3 blur for the screen-space ambient occlusion effect. Increases the radius "
"of the blur for a smoother look, but can result in checkerboard-like "
@@ -20272,14 +20769,17 @@ msgid ""
" var content = file.get_as_text()\n"
" file.close()\n"
" return content\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"In the example above, the file will be saved in the user data folder as "
+"specified in the [url=https://docs.godotengine.org/en/latest/tutorials/io/"
+"data_paths.html]Data paths[/url] documentation."
msgstr ""
-#: doc/classes/File.xml:32
+#: doc/classes/File.xml:33
msgid "Closes the currently opened file."
msgstr ""
-#: doc/classes/File.xml:39
+#: doc/classes/File.xml:40
msgid ""
"Returns [code]true[/code] if the file cursor has read past the end of the "
"file.\n"
@@ -20290,7 +20790,7 @@ msgid ""
"get_position] to implement a custom logic."
msgstr ""
-#: doc/classes/File.xml:49
+#: doc/classes/File.xml:50
msgid ""
"Returns [code]true[/code] if the file exists in the given path.\n"
"[b]Note:[/b] Many resources types are imported (e.g. textures or sound "
@@ -20303,41 +20803,41 @@ msgid ""
"source asset is present in [code]res://[/code], but fail when exported)."
msgstr ""
-#: doc/classes/File.xml:57
+#: doc/classes/File.xml:58
msgid ""
"Returns the next 16 bits from the file as an integer. See [method store_16] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:64
+#: doc/classes/File.xml:65
msgid ""
"Returns the next 32 bits from the file as an integer. See [method store_32] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:71
+#: doc/classes/File.xml:72
msgid ""
"Returns the next 64 bits from the file as an integer. See [method store_64] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:78
+#: doc/classes/File.xml:79
msgid ""
"Returns the next 8 bits from the file as an integer. See [method store_8] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:85
+#: doc/classes/File.xml:86
msgid ""
"Returns the whole file as a [String].\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:95
+#: doc/classes/File.xml:96
msgid "Returns next [code]len[/code] bytes of the file as a [PackedByteArray]."
msgstr ""
-#: doc/classes/File.xml:104
+#: doc/classes/File.xml:105
msgid ""
"Returns the next value of the file in CSV (Comma-Separated Values) format. "
"You can pass a different delimiter [code]delim[/code] to use other than the "
@@ -20346,37 +20846,37 @@ msgid ""
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:112
+#: doc/classes/File.xml:113
msgid "Returns the next 64 bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:119
+#: doc/classes/File.xml:120
msgid ""
"Returns the last error that happened when trying to perform operations. "
"Compare with the [code]ERR_FILE_*[/code] constants from [enum Error]."
msgstr ""
-#: doc/classes/File.xml:126
+#: doc/classes/File.xml:127
msgid "Returns the next 32 bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:133
+#: doc/classes/File.xml:134
msgid "Returns the size of the file in bytes."
msgstr ""
-#: doc/classes/File.xml:140
+#: doc/classes/File.xml:141
msgid ""
"Returns the next line of the file as a [String].\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:150
+#: doc/classes/File.xml:151
msgid ""
"Returns an MD5 String representing the file at the given path or an empty "
"[String] on failure."
msgstr ""
-#: doc/classes/File.xml:159
+#: doc/classes/File.xml:160
msgid ""
"Returns the last time the [code]file[/code] was modified in unix timestamp "
"format or returns a [String] \"ERROR IN [code]file[/code]\". This unix "
@@ -20384,35 +20884,35 @@ msgid ""
"get_datetime_from_unix_time]."
msgstr ""
-#: doc/classes/File.xml:166
+#: doc/classes/File.xml:167
msgid ""
"Returns a [String] saved in Pascal format from the file.\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:174
+#: doc/classes/File.xml:175
msgid "Returns the path as a [String] for the current open file."
msgstr ""
-#: doc/classes/File.xml:181
+#: doc/classes/File.xml:182
msgid "Returns the absolute path as a [String] for the current open file."
msgstr ""
-#: doc/classes/File.xml:188
+#: doc/classes/File.xml:189
msgid "Returns the file cursor's position."
msgstr ""
-#: doc/classes/File.xml:195
+#: doc/classes/File.xml:196
msgid "Returns the next bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:204
+#: doc/classes/File.xml:205
msgid ""
"Returns a SHA-256 [String] representing the file at the given path or an "
"empty [String] on failure."
msgstr ""
-#: doc/classes/File.xml:213
+#: doc/classes/File.xml:214
msgid ""
"Returns the next [Variant] value from the file. If [code]allow_objects[/"
"code] is [code]true[/code], decoding objects is allowed.\n"
@@ -20421,37 +20921,38 @@ msgid ""
"to avoid potential security threats such as remote code execution."
msgstr ""
-#: doc/classes/File.xml:221
+#: doc/classes/File.xml:222
msgid "Returns [code]true[/code] if the file is currently opened."
msgstr ""
-#: doc/classes/File.xml:232
+#: doc/classes/File.xml:233
msgid "Opens the file for writing or reading, depending on the flags."
msgstr ""
-#: doc/classes/File.xml:245
+#: doc/classes/File.xml:246
msgid "Opens a compressed file for reading or writing."
msgstr ""
-#: doc/classes/File.xml:258
+#: doc/classes/File.xml:259
msgid ""
"Opens an encrypted file in write or read mode. You need to pass a binary key "
-"to encrypt/decrypt it."
+"to encrypt/decrypt it.\n"
+"[b]Note:[/b] The provided key must be 32 bytes long."
msgstr ""
-#: doc/classes/File.xml:271
+#: doc/classes/File.xml:273
msgid ""
"Opens an encrypted file in write or read mode. You need to pass a password "
"to encrypt/decrypt it."
msgstr ""
-#: doc/classes/File.xml:280
+#: doc/classes/File.xml:282
msgid ""
"Changes the file reading/writing cursor to the specified position (in bytes "
"from the beginning of the file)."
msgstr ""
-#: doc/classes/File.xml:289
+#: doc/classes/File.xml:291
msgid ""
"Changes the file reading/writing cursor to the specified position (in bytes "
"from the end of the file).\n"
@@ -20459,7 +20960,7 @@ msgid ""
"cursor will be at the end of the file."
msgstr ""
-#: doc/classes/File.xml:299
+#: doc/classes/File.xml:301
msgid ""
"Stores an integer as 16 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, "
@@ -20487,7 +20988,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/File.xml:328
+#: doc/classes/File.xml:330
msgid ""
"Stores an integer as 32 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, "
@@ -20496,14 +20997,14 @@ msgid ""
"(see [method store_16] for an example)."
msgstr ""
-#: doc/classes/File.xml:339
+#: doc/classes/File.xml:341
msgid ""
"Stores an integer as 64 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] must lie in the interval [code][-2^63, "
"2^63 - 1][/code] (i.e. be a valid [int] value)."
msgstr ""
-#: doc/classes/File.xml:349
+#: doc/classes/File.xml:351
msgid ""
"Stores an integer as 8 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, 255]"
@@ -20512,11 +21013,11 @@ msgid ""
"(see [method store_16] for an example)."
msgstr ""
-#: doc/classes/File.xml:360
+#: doc/classes/File.xml:362
msgid "Stores the given array of bytes in the file."
msgstr ""
-#: doc/classes/File.xml:371
+#: doc/classes/File.xml:373
msgid ""
"Store the given [PackedStringArray] in the file as a line formatted in the "
"CSV (Comma-Separated Values) format. You can pass a different delimiter "
@@ -20525,45 +21026,45 @@ msgid ""
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:381
+#: doc/classes/File.xml:383
msgid "Stores a floating-point number as 64 bits in the file."
msgstr ""
-#: doc/classes/File.xml:390
+#: doc/classes/File.xml:392
msgid "Stores a floating-point number as 32 bits in the file."
msgstr ""
-#: doc/classes/File.xml:399
+#: doc/classes/File.xml:401
msgid ""
"Stores the given [String] as a line in the file.\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:409
+#: doc/classes/File.xml:411
msgid ""
"Stores the given [String] as a line in the file in Pascal format (i.e. also "
"store the length of the string).\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:419
+#: doc/classes/File.xml:421
msgid "Stores a floating-point number in the file."
msgstr ""
-#: doc/classes/File.xml:428
+#: doc/classes/File.xml:430
msgid ""
"Stores the given [String] in the file.\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:440
+#: doc/classes/File.xml:442
msgid ""
"Stores any Variant value in the file. If [code]full_objects[/code] is "
"[code]true[/code], encoding objects is allowed (and can potentially include "
"code)."
msgstr ""
-#: doc/classes/File.xml:446
+#: doc/classes/File.xml:448
msgid ""
"If [code]true[/code], the file's endianness is swapped. Use this if you're "
"dealing with files written on big-endian machines.\n"
@@ -20571,44 +21072,44 @@ msgid ""
"reset to [code]false[/code] whenever you open the file."
msgstr ""
-#: doc/classes/File.xml:452
+#: doc/classes/File.xml:454
msgid "Opens the file for read operations."
msgstr ""
-#: doc/classes/File.xml:455
+#: doc/classes/File.xml:457
msgid ""
"Opens the file for write operations. Create it if the file does not exist "
"and truncate if it exists."
msgstr ""
-#: doc/classes/File.xml:458
+#: doc/classes/File.xml:460
msgid ""
"Opens the file for read and write operations. Does not truncate the file."
msgstr ""
-#: doc/classes/File.xml:461
+#: doc/classes/File.xml:463
msgid ""
"Opens the file for read and write operations. Create it if the file does not "
"exist and truncate if it exists."
msgstr ""
-#: doc/classes/File.xml:464
+#: doc/classes/File.xml:466
msgid "Uses the [url=http://fastlz.org/]FastLZ[/url] compression method."
msgstr ""
-#: doc/classes/File.xml:467
+#: doc/classes/File.xml:469
msgid ""
"Uses the [url=https://en.wikipedia.org/wiki/DEFLATE]DEFLATE[/url] "
"compression method."
msgstr ""
-#: doc/classes/File.xml:470
+#: doc/classes/File.xml:472
msgid ""
"Uses the [url=https://facebook.github.io/zstd/]Zstandard[/url] compression "
"method."
msgstr ""
-#: doc/classes/File.xml:473
+#: doc/classes/File.xml:475
msgid "Uses the [url=https://www.gzip.org/]gzip[/url] compression method."
msgstr ""
@@ -20824,10 +21325,11 @@ msgid ""
"Draw [code]string[/code] into a canvas item using the font at a given "
"position, with [code]modulate[/code] color, and optionally clipping the "
"width. [code]position[/code] specifies the baseline, not the top. To draw "
-"from the top, [i]ascent[/i] must be added to the Y axis."
+"from the top, [i]ascent[/i] must be added to the Y axis.\n"
+"See also [method CanvasItem.draw_string]."
msgstr ""
-#: doc/classes/Font.xml:47
+#: doc/classes/Font.xml:48
msgid ""
"Draw character [code]char[/code] into a canvas item using the font at a "
"given position, with [code]modulate[/code] color, and optionally kerning if "
@@ -20837,39 +21339,39 @@ msgid ""
"making this function useful for drawing strings character by character."
msgstr ""
-#: doc/classes/Font.xml:54
+#: doc/classes/Font.xml:55
msgid "Returns the font ascent (number of pixels above the baseline)."
msgstr ""
-#: doc/classes/Font.xml:65
+#: doc/classes/Font.xml:66
msgid ""
"Returns the size of a character, optionally taking kerning into account if "
"the next character is provided."
msgstr ""
-#: doc/classes/Font.xml:72
+#: doc/classes/Font.xml:73
msgid "Returns the font descent (number of pixels below the baseline)."
msgstr ""
-#: doc/classes/Font.xml:79
+#: doc/classes/Font.xml:80
msgid "Returns the total font height (ascent plus descent) in pixels."
msgstr ""
-#: doc/classes/Font.xml:88
+#: doc/classes/Font.xml:89
msgid "Returns the size of a string, taking kerning and advance into account."
msgstr ""
-#: doc/classes/Font.xml:99
+#: doc/classes/Font.xml:100
msgid ""
"Returns the size that the string would have with word wrapping enabled with "
"a fixed [code]width[/code]."
msgstr ""
-#: doc/classes/Font.xml:106
+#: doc/classes/Font.xml:107
msgid "Returns [code]true[/code] if the font has an outline."
msgstr ""
-#: doc/classes/Font.xml:119
+#: doc/classes/Font.xml:120
msgid ""
"After editing a font (changing size, ascent, char rects, etc.). Call this "
"function to propagate changes to controls that might use it."
@@ -21041,13 +21543,14 @@ msgstr ""
#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:7
msgid ""
-"Calling [method @GDScript.yield] within a function will cause that function "
-"to yield and return its current state as an object of this type. The yielded "
+"FIXME: Outdated docs as of GDScript rewrite in 4.0.\n"
+"Calling [code]yield[/code] within a function will cause that function to "
+"yield and return its current state as an object of this type. The yielded "
"function call can then be resumed later by calling [method resume] on this "
"state object."
msgstr ""
-#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:18
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:19
msgid ""
"Check whether the function call may be resumed. This is not the case if the "
"function state was already resumed.\n"
@@ -21058,12 +21561,12 @@ msgid ""
"script have survived up to that point."
msgstr ""
-#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:28
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:29
msgid ""
"Resume execution of the yielded function call.\n"
-"If handed an argument, return the argument from the [method @GDScript.yield] "
-"call in the yielded function call. You can pass e.g. an [Array] to hand "
-"multiple arguments.\n"
+"If handed an argument, return the argument from the [code]yield[/code] call "
+"in the yielded function call. You can pass e.g. an [Array] to hand multiple "
+"arguments.\n"
"This function returns what the resumed function call returns, possibly "
"another function state if yielded again."
msgstr ""
@@ -21632,10 +22135,20 @@ msgid ""
"code], see [enum PolyJoinType].\n"
"The operation may result in an outer polygon (boundary) and inner polygon "
"(hole) produced which could be distinguished by calling [method "
-"is_polygon_clockwise]."
+"is_polygon_clockwise].\n"
+"[b]Note:[/b] To translate the polygon's vertices specifically, use the "
+"[method Transform2D.xform] method:\n"
+"[codeblock]\n"
+"var polygon = PackedVector2Array([Vector2(0, 0), Vector2(100, 0), "
+"Vector2(100, 100), Vector2(0, 100)])\n"
+"var offset = Vector2(50, 50)\n"
+"polygon = Transform2D(0, offset).xform(polygon)\n"
+"print(polygon) # prints [Vector2(50, 50), Vector2(150, 50), Vector2(150, "
+"150), Vector2(50, 150)]\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/Geometry2D.xml:217
+#: doc/classes/Geometry2D.xml:224
msgid ""
"Inflates or deflates [code]polyline[/code] by [code]delta[/code] units "
"(pixels), producing polygons. If [code]delta[/code] is positive, makes the "
@@ -21651,13 +22164,13 @@ msgid ""
"is_polygon_clockwise]."
msgstr ""
-#: doc/classes/Geometry2D.xml:235
+#: doc/classes/Geometry2D.xml:242
msgid ""
"Returns if [code]point[/code] is inside the triangle specified by [code]a[/"
"code], [code]b[/code] and [code]c[/code]."
msgstr ""
-#: doc/classes/Geometry2D.xml:250
+#: doc/classes/Geometry2D.xml:257
msgid ""
"Checks if the two segments ([code]from_a[/code], [code]to_a[/code]) and "
"([code]from_b[/code], [code]to_b[/code]) intersect. If yes, return the point "
@@ -21665,7 +22178,7 @@ msgid ""
"empty [Variant]."
msgstr ""
-#: doc/classes/Geometry2D.xml:259
+#: doc/classes/Geometry2D.xml:266
msgid ""
"Triangulates the area specified by discrete set of [code]points[/code] such "
"that no point is inside the circumcircle of any resulting triangle. Returns "
@@ -21676,7 +22189,7 @@ msgid ""
"[PackedInt32Array] is returned."
msgstr ""
-#: doc/classes/Geometry2D.xml:268
+#: doc/classes/Geometry2D.xml:275
msgid ""
"Triangulates the polygon specified by the points in [code]polygon[/code]. "
"Returns a [PackedInt32Array] where each triangle consists of three "
@@ -21686,40 +22199,40 @@ msgid ""
"[PackedInt32Array] is returned."
msgstr ""
-#: doc/classes/Geometry2D.xml:274
+#: doc/classes/Geometry2D.xml:281
msgid ""
"Create regions where either subject or clip polygons (or both) are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:277
+#: doc/classes/Geometry2D.xml:284
msgid ""
"Create regions where subject polygons are filled except where clip polygons "
"are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:280
+#: doc/classes/Geometry2D.xml:287
msgid "Create regions where both subject and clip polygons are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:283
+#: doc/classes/Geometry2D.xml:290
msgid ""
"Create regions where either subject or clip polygons are filled but not "
"where both are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:286
+#: doc/classes/Geometry2D.xml:293
msgid ""
"Squaring is applied uniformally at all convex edge joins at [code]1 * delta[/"
"code]."
msgstr ""
-#: doc/classes/Geometry2D.xml:289
+#: doc/classes/Geometry2D.xml:296
msgid ""
"While flattened paths can never perfectly trace an arc, they are "
"approximated by a series of arc chords."
msgstr ""
-#: doc/classes/Geometry2D.xml:292
+#: doc/classes/Geometry2D.xml:299
msgid ""
"There's a necessary limit to mitered joins since offsetting edges that join "
"at very acute angles will produce excessively long and narrow \"spikes\". "
@@ -21727,27 +22240,27 @@ msgid ""
"distance, \"square\" joining is applied."
msgstr ""
-#: doc/classes/Geometry2D.xml:295
+#: doc/classes/Geometry2D.xml:302
msgid ""
"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
"as a polygon."
msgstr ""
-#: doc/classes/Geometry2D.xml:298
+#: doc/classes/Geometry2D.xml:305
msgid ""
"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
"as a polyline."
msgstr ""
-#: doc/classes/Geometry2D.xml:301
+#: doc/classes/Geometry2D.xml:308
msgid "Endpoints are squared off with no extension."
msgstr ""
-#: doc/classes/Geometry2D.xml:304
+#: doc/classes/Geometry2D.xml:311
msgid "Endpoints are squared off and extended by [code]delta[/code] units."
msgstr ""
-#: doc/classes/Geometry2D.xml:307
+#: doc/classes/Geometry2D.xml:314
msgid "Endpoints are rounded off and extended by [code]delta[/code] units."
msgstr ""
@@ -21977,7 +22490,7 @@ msgstr ""
msgid ""
"Bakes the effect from all [GeometryInstance3D]s marked with [constant "
"GeometryInstance3D.GI_MODE_BAKED] and [Light3D]s marked with either "
-"[constant Light3D.BAKE_INDIRECT] or [constant Light3D.BAKE_ALL]. If "
+"[constant Light3D.BAKE_DYNAMIC] or [constant Light3D.BAKE_STATIC]. If "
"[code]create_visual_debug[/code] is [code]true[/code], after baking the "
"light, this will generate a [MultiMesh] that has a cube representing each "
"solid cell with each cube colored to the cell's albedo color. This can be "
@@ -22864,121 +23377,119 @@ msgstr ""
msgid "Clear all cells."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:53
+#: modules/gridmap/doc_classes/GridMap.xml:49
msgid ""
-"The [MeshLibrary] item index located at the grid-based X, Y and Z "
-"coordinates. If the cell is empty, [constant INVALID_CELL_ITEM] will be "
-"returned."
+"The [MeshLibrary] item index located at the given grid coordinates. If the "
+"cell is empty, [constant INVALID_CELL_ITEM] will be returned."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:66
+#: modules/gridmap/doc_classes/GridMap.xml:58
msgid ""
-"The orientation of the cell at the grid-based X, Y and Z coordinates. -1 is "
-"returned if the cell is empty."
+"The orientation of the cell at the given grid coordinates. [code]-1[/code] "
+"is returned if the cell is empty."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:75 doc/classes/PhysicsBody2D.xml:35
+#: modules/gridmap/doc_classes/GridMap.xml:67 doc/classes/PhysicsBody2D.xml:35
#: doc/classes/PhysicsBody3D.xml:35
msgid "Returns an individual bit on the [member collision_layer]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:84 doc/classes/PhysicsBody2D.xml:44
+#: modules/gridmap/doc_classes/GridMap.xml:76 doc/classes/PhysicsBody2D.xml:44
#: doc/classes/PhysicsBody3D.xml:44
msgid "Returns an individual bit on the [member collision_mask]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:91
+#: modules/gridmap/doc_classes/GridMap.xml:83
msgid ""
"Returns an array of [Transform] and [Mesh] references corresponding to the "
"non-empty cells in the grid. The transforms are specified in world space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:98
+#: modules/gridmap/doc_classes/GridMap.xml:90
msgid ""
"Returns an array of [Vector3] with the non-empty cell coordinates in the "
"grid map."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:121
+#: modules/gridmap/doc_classes/GridMap.xml:109
msgid ""
"Returns the position of a grid cell in the GridMap's local coordinate space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:146
+#: modules/gridmap/doc_classes/GridMap.xml:130
msgid ""
-"Sets the mesh index for the cell referenced by its grid-based X, Y and Z "
-"coordinates.\n"
+"Sets the mesh index for the cell referenced by its grid coordinates.\n"
"A negative item index such as [constant INVALID_CELL_ITEM] will clear the "
"cell.\n"
"Optionally, the item's orientation can be passed. For valid orientation "
"values, see [method Basis.get_orthogonal_index]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:173
+#: modules/gridmap/doc_classes/GridMap.xml:157
msgid "Sets an individual bit on the [member collision_layer]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:184
+#: modules/gridmap/doc_classes/GridMap.xml:168
msgid "Sets an individual bit on the [member collision_mask]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:193
+#: modules/gridmap/doc_classes/GridMap.xml:177
msgid ""
"Returns the coordinates of the grid cell containing the given point.\n"
"[code]pos[/code] should be in the GridMap's local coordinate space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:200
+#: modules/gridmap/doc_classes/GridMap.xml:184
msgid "If [code]true[/code], grid items are centered on the X axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:203
+#: modules/gridmap/doc_classes/GridMap.xml:187
msgid "If [code]true[/code], grid items are centered on the Y axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:206
+#: modules/gridmap/doc_classes/GridMap.xml:190
msgid "If [code]true[/code], grid items are centered on the Z axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:209
+#: modules/gridmap/doc_classes/GridMap.xml:193
msgid ""
"The size of each octant measured in number of cells. This applies to all "
"three axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:212
+#: modules/gridmap/doc_classes/GridMap.xml:196
msgid ""
"The scale of the cell items.\n"
"This does not affect the size of the grid cells themselves, only the items "
"in them. This can be used to make cell items overlap their neighbors."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:216
+#: modules/gridmap/doc_classes/GridMap.xml:200
msgid ""
"The dimensions of the grid's cells.\n"
"This does not affect the size of the meshes. See [member cell_scale]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:220
+#: modules/gridmap/doc_classes/GridMap.xml:204
msgid ""
"The physics layers this GridMap is in.\n"
"GridMaps act as static bodies, meaning they aren't affected by gravity or "
"other forces. They only affect other physics bodies that collide with them."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:224
+#: modules/gridmap/doc_classes/GridMap.xml:208
msgid "The physics layers this GridMap detects collisions in."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:227
+#: modules/gridmap/doc_classes/GridMap.xml:211
msgid "The assigned [MeshLibrary]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:235
+#: modules/gridmap/doc_classes/GridMap.xml:219
msgid "Emitted when [member cell_size] changes."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:241
+#: modules/gridmap/doc_classes/GridMap.xml:225
msgid ""
"Invalid cell item that can be used in [method set_cell_item] to clear cells "
"(or represent an empty cell in [method get_cell_item])."
@@ -23343,27 +23854,33 @@ msgid ""
"server's side.\n"
"For more information on HTTP, see https://developer.mozilla.org/en-US/docs/"
"Web/HTTP (or read RFC 2616 to get it straight from the source: https://tools."
-"ietf.org/html/rfc2616)."
+"ietf.org/html/rfc2616).\n"
+"[b]Note:[/b] When performing HTTP requests from a project exported to HTML5, "
+"keep in mind the remote server may not allow requests from foreign origins "
+"due to [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/"
+"url]. If you host the server in question, you should modify its backend to "
+"allow requests from foreign origins by adding the [code]Access-Control-Allow-"
+"Origin: *[/code] HTTP header."
msgstr ""
-#: doc/classes/HTTPClient.xml:13
+#: doc/classes/HTTPClient.xml:14
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/"
"http_client_class.html"
msgstr ""
-#: doc/classes/HTTPClient.xml:14 doc/classes/HTTPRequest.xml:62
+#: doc/classes/HTTPClient.xml:15 doc/classes/HTTPRequest.xml:71
#: doc/classes/StreamPeerSSL.xml:10
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/ssl_certificates."
"html"
msgstr ""
-#: doc/classes/HTTPClient.xml:21
+#: doc/classes/HTTPClient.xml:22
msgid "Closes the current connection, allowing reuse of this [HTTPClient]."
msgstr ""
-#: doc/classes/HTTPClient.xml:36
+#: doc/classes/HTTPClient.xml:37
msgid ""
"Connects to a host. This needs to be done before any requests are sent.\n"
"The host should not have http:// prepended but will strip the protocol "
@@ -23375,7 +23892,7 @@ msgid ""
"[code]true[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:46
+#: doc/classes/HTTPClient.xml:47
msgid ""
"Returns the response's body length.\n"
"[b]Note:[/b] Some Web servers may not send a body length. In this case, the "
@@ -23383,15 +23900,15 @@ msgid ""
"the body length will also be [code]-1[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:54
+#: doc/classes/HTTPClient.xml:55
msgid "Returns the response's HTTP status code."
msgstr ""
-#: doc/classes/HTTPClient.xml:61
+#: doc/classes/HTTPClient.xml:62
msgid "Returns the response headers."
msgstr ""
-#: doc/classes/HTTPClient.xml:68
+#: doc/classes/HTTPClient.xml:69
msgid ""
"Returns all response headers as a Dictionary of structure [code]{ \"key\": "
"\"value1; value2\" }[/code] where the case-sensitivity of the keys and "
@@ -23406,27 +23923,27 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:82
+#: doc/classes/HTTPClient.xml:83
msgid ""
"Returns a [enum Status] constant. Need to call [method poll] in order to get "
"status updates."
msgstr ""
-#: doc/classes/HTTPClient.xml:89
+#: doc/classes/HTTPClient.xml:90
msgid "If [code]true[/code], this [HTTPClient] has a response available."
msgstr ""
-#: doc/classes/HTTPClient.xml:96
+#: doc/classes/HTTPClient.xml:97
msgid "If [code]true[/code], this [HTTPClient] has a response that is chunked."
msgstr ""
-#: doc/classes/HTTPClient.xml:103
+#: doc/classes/HTTPClient.xml:104
msgid ""
"This needs to be called in order to have any request processed. Check "
"results with [method get_status]."
msgstr ""
-#: doc/classes/HTTPClient.xml:112
+#: doc/classes/HTTPClient.xml:113
msgid ""
"Generates a GET/POST application/x-www-form-urlencoded style query string "
"from a provided dictionary, e.g.:\n"
@@ -23446,11 +23963,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:130
+#: doc/classes/HTTPClient.xml:131
msgid "Reads one chunk from the response."
msgstr ""
-#: doc/classes/HTTPClient.xml:145
+#: doc/classes/HTTPClient.xml:146
msgid ""
"Sends a request to the connected host. The URL parameter is just the part "
"after the host, so for [code]http://somehost.com/index.php[/code], it is "
@@ -23468,7 +23985,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:168
+#: doc/classes/HTTPClient.xml:169
msgid ""
"Sends a raw request to the connected host. The URL parameter is just the "
"part after the host, so for [code]http://somehost.com/index.php[/code], it "
@@ -23478,43 +23995,43 @@ msgid ""
"Sends the body data raw, as a byte array and does not encode it in any way."
msgstr ""
-#: doc/classes/HTTPClient.xml:176
+#: doc/classes/HTTPClient.xml:177
msgid ""
"If [code]true[/code], execution will block until all data is read from the "
"response."
msgstr ""
-#: doc/classes/HTTPClient.xml:179
+#: doc/classes/HTTPClient.xml:180
msgid "The connection to use for this client."
msgstr ""
-#: doc/classes/HTTPClient.xml:182
+#: doc/classes/HTTPClient.xml:183
msgid ""
"The size of the buffer used and maximum bytes to read per iteration. See "
"[method read_response_body_chunk]."
msgstr ""
-#: doc/classes/HTTPClient.xml:187
+#: doc/classes/HTTPClient.xml:188
msgid ""
"HTTP GET method. The GET method requests a representation of the specified "
"resource. Requests using GET should only retrieve data."
msgstr ""
-#: doc/classes/HTTPClient.xml:190
+#: doc/classes/HTTPClient.xml:191
msgid ""
"HTTP HEAD method. The HEAD method asks for a response identical to that of a "
"GET request, but without the response body. This is useful to request "
"metadata like HTTP headers or to check if a resource exists."
msgstr ""
-#: doc/classes/HTTPClient.xml:193
+#: doc/classes/HTTPClient.xml:194
msgid ""
"HTTP POST method. The POST method is used to submit an entity to the "
"specified resource, often causing a change in state or side effects on the "
"server. This is often used for forms and submitting data or uploading files."
msgstr ""
-#: doc/classes/HTTPClient.xml:196
+#: doc/classes/HTTPClient.xml:197
msgid ""
"HTTP PUT method. The PUT method asks to replace all current representations "
"of the target resource with the request payload. (You can think of POST as "
@@ -23522,103 +24039,103 @@ msgid ""
"not make a clear distinction or change their meaning)."
msgstr ""
-#: doc/classes/HTTPClient.xml:199
+#: doc/classes/HTTPClient.xml:200
msgid ""
"HTTP DELETE method. The DELETE method requests to delete the specified "
"resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:202
+#: doc/classes/HTTPClient.xml:203
msgid ""
"HTTP OPTIONS method. The OPTIONS method asks for a description of the "
"communication options for the target resource. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:205
+#: doc/classes/HTTPClient.xml:206
msgid ""
"HTTP TRACE method. The TRACE method performs a message loop-back test along "
"the path to the target resource. Returns the entire HTTP request received in "
"the response body. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:208
+#: doc/classes/HTTPClient.xml:209
msgid ""
"HTTP CONNECT method. The CONNECT method establishes a tunnel to the server "
"identified by the target resource. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:211
+#: doc/classes/HTTPClient.xml:212
msgid ""
"HTTP PATCH method. The PATCH method is used to apply partial modifications "
"to a resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:214
+#: doc/classes/HTTPClient.xml:215
msgid "Represents the size of the [enum Method] enum."
msgstr ""
-#: doc/classes/HTTPClient.xml:217
+#: doc/classes/HTTPClient.xml:218
msgid "Status: Disconnected from the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:220
+#: doc/classes/HTTPClient.xml:221
msgid "Status: Currently resolving the hostname for the given URL into an IP."
msgstr ""
-#: doc/classes/HTTPClient.xml:223
+#: doc/classes/HTTPClient.xml:224
msgid "Status: DNS failure: Can't resolve the hostname for the given URL."
msgstr ""
-#: doc/classes/HTTPClient.xml:226
+#: doc/classes/HTTPClient.xml:227
msgid "Status: Currently connecting to server."
msgstr ""
-#: doc/classes/HTTPClient.xml:229
+#: doc/classes/HTTPClient.xml:230
msgid "Status: Can't connect to the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:232
+#: doc/classes/HTTPClient.xml:233
msgid "Status: Connection established."
msgstr ""
-#: doc/classes/HTTPClient.xml:235
+#: doc/classes/HTTPClient.xml:236
msgid "Status: Currently sending request."
msgstr ""
-#: doc/classes/HTTPClient.xml:238
+#: doc/classes/HTTPClient.xml:239
msgid "Status: HTTP body received."
msgstr ""
-#: doc/classes/HTTPClient.xml:241
+#: doc/classes/HTTPClient.xml:242
msgid "Status: Error in HTTP connection."
msgstr ""
-#: doc/classes/HTTPClient.xml:244
+#: doc/classes/HTTPClient.xml:245
msgid "Status: Error in SSL handshake."
msgstr ""
-#: doc/classes/HTTPClient.xml:247
+#: doc/classes/HTTPClient.xml:248
msgid ""
"HTTP status code [code]100 Continue[/code]. Interim response that indicates "
"everything so far is OK and that the client should continue with the request "
"(or ignore this status if already finished)."
msgstr ""
-#: doc/classes/HTTPClient.xml:250
+#: doc/classes/HTTPClient.xml:251
msgid ""
"HTTP status code [code]101 Switching Protocol[/code]. Sent in response to an "
"[code]Upgrade[/code] request header by the client. Indicates the protocol "
"the server is switching to."
msgstr ""
-#: doc/classes/HTTPClient.xml:253
+#: doc/classes/HTTPClient.xml:254
msgid ""
"HTTP status code [code]102 Processing[/code] (WebDAV). Indicates that the "
"server has received and is processing the request, but no response is "
"available yet."
msgstr ""
-#: doc/classes/HTTPClient.xml:256
+#: doc/classes/HTTPClient.xml:257
msgid ""
"HTTP status code [code]200 OK[/code]. The request has succeeded. Default "
"response for successful requests. Meaning varies depending on the request. "
@@ -23629,14 +24146,14 @@ msgid ""
"server."
msgstr ""
-#: doc/classes/HTTPClient.xml:259
+#: doc/classes/HTTPClient.xml:260
msgid ""
"HTTP status code [code]201 Created[/code]. The request has succeeded and a "
"new resource has been created as a result of it. This is typically the "
"response sent after a PUT request."
msgstr ""
-#: doc/classes/HTTPClient.xml:262
+#: doc/classes/HTTPClient.xml:263
msgid ""
"HTTP status code [code]202 Accepted[/code]. The request has been received "
"but not yet acted upon. It is non-committal, meaning that there is no way in "
@@ -23645,7 +24162,7 @@ msgid ""
"server handles the request, or for batch processing."
msgstr ""
-#: doc/classes/HTTPClient.xml:265
+#: doc/classes/HTTPClient.xml:266
msgid ""
"HTTP status code [code]203 Non-Authoritative Information[/code]. This "
"response code means returned meta-information set is not exact set as "
@@ -23654,14 +24171,14 @@ msgid ""
"instead of this response."
msgstr ""
-#: doc/classes/HTTPClient.xml:268
+#: doc/classes/HTTPClient.xml:269
msgid ""
"HTTP status code [code]204 No Content[/code]. There is no content to send "
"for this request, but the headers may be useful. The user-agent may update "
"its cached headers for this resource with the new ones."
msgstr ""
-#: doc/classes/HTTPClient.xml:271
+#: doc/classes/HTTPClient.xml:272
msgid ""
"HTTP status code [code]205 Reset Content[/code]. The server has fulfilled "
"the request and desires that the client resets the \"document view\" that "
@@ -23669,49 +24186,49 @@ msgid ""
"origin server."
msgstr ""
-#: doc/classes/HTTPClient.xml:274
+#: doc/classes/HTTPClient.xml:275
msgid ""
"HTTP status code [code]206 Partial Content[/code]. This response code is "
"used because of a range header sent by the client to separate download into "
"multiple streams."
msgstr ""
-#: doc/classes/HTTPClient.xml:277
+#: doc/classes/HTTPClient.xml:278
msgid ""
"HTTP status code [code]207 Multi-Status[/code] (WebDAV). A Multi-Status "
"response conveys information about multiple resources in situations where "
"multiple status codes might be appropriate."
msgstr ""
-#: doc/classes/HTTPClient.xml:280
+#: doc/classes/HTTPClient.xml:281
msgid ""
"HTTP status code [code]208 Already Reported[/code] (WebDAV). Used inside a "
"DAV: propstat response element to avoid enumerating the internal members of "
"multiple bindings to the same collection repeatedly."
msgstr ""
-#: doc/classes/HTTPClient.xml:283
+#: doc/classes/HTTPClient.xml:284
msgid ""
"HTTP status code [code]226 IM Used[/code] (WebDAV). The server has fulfilled "
"a GET request for the resource, and the response is a representation of the "
"result of one or more instance-manipulations applied to the current instance."
msgstr ""
-#: doc/classes/HTTPClient.xml:286
+#: doc/classes/HTTPClient.xml:287
msgid ""
"HTTP status code [code]300 Multiple Choice[/code]. The request has more than "
"one possible responses and there is no standardized way to choose one of the "
"responses. User-agent or user should choose one of them."
msgstr ""
-#: doc/classes/HTTPClient.xml:289
+#: doc/classes/HTTPClient.xml:290
msgid ""
"HTTP status code [code]301 Moved Permanently[/code]. Redirection. This "
"response code means the URI of requested resource has been changed. The new "
"URI is usually included in the response."
msgstr ""
-#: doc/classes/HTTPClient.xml:292
+#: doc/classes/HTTPClient.xml:293
msgid ""
"HTTP status code [code]302 Found[/code]. Temporary redirection. This "
"response code means the URI of requested resource has been changed "
@@ -23719,7 +24236,7 @@ msgid ""
"this same URI should be used by the client in future requests."
msgstr ""
-#: doc/classes/HTTPClient.xml:295
+#: doc/classes/HTTPClient.xml:296
msgid ""
"HTTP status code [code]303 See Other[/code]. The server is redirecting the "
"user agent to a different resource, as indicated by a URI in the Location "
@@ -23727,39 +24244,39 @@ msgid ""
"original request."
msgstr ""
-#: doc/classes/HTTPClient.xml:298
+#: doc/classes/HTTPClient.xml:299
msgid ""
"HTTP status code [code]304 Not Modified[/code]. A conditional GET or HEAD "
"request has been received and would have resulted in a 200 OK response if it "
"were not for the fact that the condition evaluated to [code]false[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:301
+#: doc/classes/HTTPClient.xml:302
msgid ""
"HTTP status code [code]305 Use Proxy[/code]. [i]Deprecated. Do not use.[/i]"
msgstr ""
-#: doc/classes/HTTPClient.xml:304
+#: doc/classes/HTTPClient.xml:305
msgid ""
"HTTP status code [code]306 Switch Proxy[/code]. [i]Deprecated. Do not use.[/"
"i]"
msgstr ""
-#: doc/classes/HTTPClient.xml:307
+#: doc/classes/HTTPClient.xml:308
msgid ""
"HTTP status code [code]307 Temporary Redirect[/code]. The target resource "
"resides temporarily under a different URI and the user agent MUST NOT change "
"the request method if it performs an automatic redirection to that URI."
msgstr ""
-#: doc/classes/HTTPClient.xml:310
+#: doc/classes/HTTPClient.xml:311
msgid ""
"HTTP status code [code]308 Permanent Redirect[/code]. The target resource "
"has been assigned a new permanent URI and any future references to this "
"resource ought to use one of the enclosed URIs."
msgstr ""
-#: doc/classes/HTTPClient.xml:313
+#: doc/classes/HTTPClient.xml:314
msgid ""
"HTTP status code [code]400 Bad Request[/code]. The request was invalid. The "
"server cannot or will not process the request due to something that is "
@@ -23768,21 +24285,21 @@ msgid ""
"routing)."
msgstr ""
-#: doc/classes/HTTPClient.xml:316
+#: doc/classes/HTTPClient.xml:317
msgid ""
"HTTP status code [code]401 Unauthorized[/code]. Credentials required. The "
"request has not been applied because it lacks valid authentication "
"credentials for the target resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:319
+#: doc/classes/HTTPClient.xml:320
msgid ""
"HTTP status code [code]402 Payment Required[/code]. This response code is "
"reserved for future use. Initial aim for creating this code was using it for "
"digital payment systems, however this is not currently used."
msgstr ""
-#: doc/classes/HTTPClient.xml:322
+#: doc/classes/HTTPClient.xml:323
msgid ""
"HTTP status code [code]403 Forbidden[/code]. The client does not have access "
"rights to the content, i.e. they are unauthorized, so server is rejecting to "
@@ -23790,7 +24307,7 @@ msgid ""
"known to the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:325
+#: doc/classes/HTTPClient.xml:326
msgid ""
"HTTP status code [code]404 Not Found[/code]. The server can not find "
"requested resource. Either the URL is not recognized or the endpoint is "
@@ -23798,7 +24315,7 @@ msgid ""
"403 to hide existence of a resource if the client is not authorized."
msgstr ""
-#: doc/classes/HTTPClient.xml:328
+#: doc/classes/HTTPClient.xml:329
msgid ""
"HTTP status code [code]405 Method Not Allowed[/code]. The request's HTTP "
"method is known by the server but has been disabled and cannot be used. For "
@@ -23806,7 +24323,7 @@ msgid ""
"GET and HEAD, must never be disabled and should not return this error code."
msgstr ""
-#: doc/classes/HTTPClient.xml:331
+#: doc/classes/HTTPClient.xml:332
msgid ""
"HTTP status code [code]406 Not Acceptable[/code]. The target resource does "
"not have a current representation that would be acceptable to the user "
@@ -23814,21 +24331,21 @@ msgid ""
"request. Used when negotiation content."
msgstr ""
-#: doc/classes/HTTPClient.xml:334
+#: doc/classes/HTTPClient.xml:335
msgid ""
"HTTP status code [code]407 Proxy Authentication Required[/code]. Similar to "
"401 Unauthorized, but it indicates that the client needs to authenticate "
"itself in order to use a proxy."
msgstr ""
-#: doc/classes/HTTPClient.xml:337
+#: doc/classes/HTTPClient.xml:338
msgid ""
"HTTP status code [code]408 Request Timeout[/code]. The server did not "
"receive a complete request message within the time that it was prepared to "
"wait."
msgstr ""
-#: doc/classes/HTTPClient.xml:340
+#: doc/classes/HTTPClient.xml:341
msgid ""
"HTTP status code [code]409 Conflict[/code]. The request could not be "
"completed due to a conflict with the current state of the target resource. "
@@ -23836,47 +24353,47 @@ msgid ""
"conflict and resubmit the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:343
+#: doc/classes/HTTPClient.xml:344
msgid ""
"HTTP status code [code]410 Gone[/code]. The target resource is no longer "
"available at the origin server and this condition is likely permanent."
msgstr ""
-#: doc/classes/HTTPClient.xml:346
+#: doc/classes/HTTPClient.xml:347
msgid ""
"HTTP status code [code]411 Length Required[/code]. The server refuses to "
"accept the request without a defined Content-Length header."
msgstr ""
-#: doc/classes/HTTPClient.xml:349
+#: doc/classes/HTTPClient.xml:350
msgid ""
"HTTP status code [code]412 Precondition Failed[/code]. One or more "
"conditions given in the request header fields evaluated to [code]false[/"
"code] when tested on the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:352
+#: doc/classes/HTTPClient.xml:353
msgid ""
"HTTP status code [code]413 Entity Too Large[/code]. The server is refusing "
"to process a request because the request payload is larger than the server "
"is willing or able to process."
msgstr ""
-#: doc/classes/HTTPClient.xml:355
+#: doc/classes/HTTPClient.xml:356
msgid ""
"HTTP status code [code]414 Request-URI Too Long[/code]. The server is "
"refusing to service the request because the request-target is longer than "
"the server is willing to interpret."
msgstr ""
-#: doc/classes/HTTPClient.xml:358
+#: doc/classes/HTTPClient.xml:359
msgid ""
"HTTP status code [code]415 Unsupported Media Type[/code]. The origin server "
"is refusing to service the request because the payload is in a format not "
"supported by this method on the target resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:361
+#: doc/classes/HTTPClient.xml:362
msgid ""
"HTTP status code [code]416 Requested Range Not Satisfiable[/code]. None of "
"the ranges in the request's Range header field overlap the current extent of "
@@ -23884,21 +24401,21 @@ msgid ""
"to invalid ranges or an excessive request of small or overlapping ranges."
msgstr ""
-#: doc/classes/HTTPClient.xml:364
+#: doc/classes/HTTPClient.xml:365
msgid ""
"HTTP status code [code]417 Expectation Failed[/code]. The expectation given "
"in the request's Expect header field could not be met by at least one of the "
"inbound servers."
msgstr ""
-#: doc/classes/HTTPClient.xml:367
+#: doc/classes/HTTPClient.xml:368
msgid ""
"HTTP status code [code]418 I'm A Teapot[/code]. Any attempt to brew coffee "
"with a teapot should result in the error code \"418 I'm a teapot\". The "
"resulting entity body MAY be short and stout."
msgstr ""
-#: doc/classes/HTTPClient.xml:370
+#: doc/classes/HTTPClient.xml:371
msgid ""
"HTTP status code [code]421 Misdirected Request[/code]. The request was "
"directed at a server that is not able to produce a response. This can be "
@@ -23906,7 +24423,7 @@ msgid ""
"combination of scheme and authority that are included in the request URI."
msgstr ""
-#: doc/classes/HTTPClient.xml:373
+#: doc/classes/HTTPClient.xml:374
msgid ""
"HTTP status code [code]422 Unprocessable Entity[/code] (WebDAV). The server "
"understands the content type of the request entity (hence a 415 Unsupported "
@@ -23915,40 +24432,40 @@ msgid ""
"was unable to process the contained instructions."
msgstr ""
-#: doc/classes/HTTPClient.xml:376
+#: doc/classes/HTTPClient.xml:377
msgid ""
"HTTP status code [code]423 Locked[/code] (WebDAV). The source or destination "
"resource of a method is locked."
msgstr ""
-#: doc/classes/HTTPClient.xml:379
+#: doc/classes/HTTPClient.xml:380
msgid ""
"HTTP status code [code]424 Failed Dependency[/code] (WebDAV). The method "
"could not be performed on the resource because the requested action depended "
"on another action and that action failed."
msgstr ""
-#: doc/classes/HTTPClient.xml:382
+#: doc/classes/HTTPClient.xml:383
msgid ""
"HTTP status code [code]426 Upgrade Required[/code]. The server refuses to "
"perform the request using the current protocol but might be willing to do so "
"after the client upgrades to a different protocol."
msgstr ""
-#: doc/classes/HTTPClient.xml:385
+#: doc/classes/HTTPClient.xml:386
msgid ""
"HTTP status code [code]428 Precondition Required[/code]. The origin server "
"requires the request to be conditional."
msgstr ""
-#: doc/classes/HTTPClient.xml:388
+#: doc/classes/HTTPClient.xml:389
msgid ""
"HTTP status code [code]429 Too Many Requests[/code]. The user has sent too "
"many requests in a given amount of time (see \"rate limiting\"). Back off "
"and increase time between requests or try again later."
msgstr ""
-#: doc/classes/HTTPClient.xml:391
+#: doc/classes/HTTPClient.xml:392
msgid ""
"HTTP status code [code]431 Request Header Fields Too Large[/code]. The "
"server is unwilling to process the request because its header fields are too "
@@ -23956,27 +24473,27 @@ msgid ""
"header fields."
msgstr ""
-#: doc/classes/HTTPClient.xml:394
+#: doc/classes/HTTPClient.xml:395
msgid ""
"HTTP status code [code]451 Response Unavailable For Legal Reasons[/code]. "
"The server is denying access to the resource as a consequence of a legal "
"demand."
msgstr ""
-#: doc/classes/HTTPClient.xml:397
+#: doc/classes/HTTPClient.xml:398
msgid ""
"HTTP status code [code]500 Internal Server Error[/code]. The server "
"encountered an unexpected condition that prevented it from fulfilling the "
"request."
msgstr ""
-#: doc/classes/HTTPClient.xml:400
+#: doc/classes/HTTPClient.xml:401
msgid ""
"HTTP status code [code]501 Not Implemented[/code]. The server does not "
"support the functionality required to fulfill the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:403
+#: doc/classes/HTTPClient.xml:404
msgid ""
"HTTP status code [code]502 Bad Gateway[/code]. The server, while acting as a "
"gateway or proxy, received an invalid response from an inbound server it "
@@ -23984,7 +24501,7 @@ msgid ""
"balancers or proxies."
msgstr ""
-#: doc/classes/HTTPClient.xml:406
+#: doc/classes/HTTPClient.xml:407
msgid ""
"HTTP status code [code]503 Service Unavailable[/code]. The server is "
"currently unable to handle the request due to a temporary overload or "
@@ -23992,7 +24509,7 @@ msgid ""
"again later."
msgstr ""
-#: doc/classes/HTTPClient.xml:409
+#: doc/classes/HTTPClient.xml:410
msgid ""
"HTTP status code [code]504 Gateway Timeout[/code]. The server, while acting "
"as a gateway or proxy, did not receive a timely response from an upstream "
@@ -24000,14 +24517,14 @@ msgid ""
"returned by load balancers or proxies."
msgstr ""
-#: doc/classes/HTTPClient.xml:412
+#: doc/classes/HTTPClient.xml:413
msgid ""
"HTTP status code [code]505 HTTP Version Not Supported[/code]. The server "
"does not support, or refuses to support, the major version of HTTP that was "
"used in the request message."
msgstr ""
-#: doc/classes/HTTPClient.xml:415
+#: doc/classes/HTTPClient.xml:416
msgid ""
"HTTP status code [code]506 Variant Also Negotiates[/code]. The server has an "
"internal configuration error: the chosen variant resource is configured to "
@@ -24015,14 +24532,14 @@ msgid ""
"proper end point in the negotiation process."
msgstr ""
-#: doc/classes/HTTPClient.xml:418
+#: doc/classes/HTTPClient.xml:419
msgid ""
"HTTP status code [code]507 Insufficient Storage[/code]. The method could not "
"be performed on the resource because the server is unable to store the "
"representation needed to successfully complete the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:421
+#: doc/classes/HTTPClient.xml:422
msgid ""
"HTTP status code [code]508 Loop Detected[/code]. The server terminated an "
"operation because it encountered an infinite loop while processing a request "
@@ -24030,14 +24547,14 @@ msgid ""
"failed."
msgstr ""
-#: doc/classes/HTTPClient.xml:424
+#: doc/classes/HTTPClient.xml:425
msgid ""
"HTTP status code [code]510 Not Extended[/code]. The policy for accessing the "
"resource has not been met in the request. The server should send back all "
"the information necessary for the client to issue an extended request."
msgstr ""
-#: doc/classes/HTTPClient.xml:427
+#: doc/classes/HTTPClient.xml:428
msgid ""
"HTTP status code [code]511 Network Authentication Required[/code]. The "
"client needs to authenticate to gain network access."
@@ -24063,12 +24580,21 @@ msgid ""
" http_request.connect(\"request_completed\", self, "
"\"_http_request_completed\")\n"
"\n"
-" # Perform the HTTP request. The URL below returns some JSON as of "
-"writing.\n"
+" # Perform a GET request. The URL below returns JSON as of writing.\n"
" var error = http_request.request(\"https://httpbin.org/get\")\n"
" if error != OK:\n"
" push_error(\"An error occurred in the HTTP request.\")\n"
"\n"
+" # Perform a POST request. The URL below returns JSON as of writing.\n"
+" # Note: Don't make simultaneous requests using a single HTTPRequest "
+"node.\n"
+" # The snippet below is provided for reference only.\n"
+" var body = {\"name\": \"Godette\"}\n"
+" var error = http_request.request(\"https://httpbin.org/post\", [], true, "
+"HTTPClient.METHOD_POST, body)\n"
+" if error != OK:\n"
+" push_error(\"An error occurred in the HTTP request.\")\n"
+"\n"
"\n"
"# Called when the HTTP request is completed.\n"
"func _http_request_completed(result, response_code, headers, body):\n"
@@ -24108,20 +24634,26 @@ msgid ""
" var texture_rect = TextureRect.new()\n"
" add_child(texture_rect)\n"
" texture_rect.texture = texture\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] When performing HTTP requests from a project exported to HTML5, "
+"keep in mind the remote server may not allow requests from foreign origins "
+"due to [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/"
+"url]. If you host the server in question, you should modify its backend to "
+"allow requests from foreign origins by adding the [code]Access-Control-Allow-"
+"Origin: *[/code] HTTP header."
msgstr ""
-#: doc/classes/HTTPRequest.xml:61
+#: doc/classes/HTTPRequest.xml:70
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/"
"http_request_class.html"
msgstr ""
-#: doc/classes/HTTPRequest.xml:69
+#: doc/classes/HTTPRequest.xml:78
msgid "Cancels the current request."
msgstr ""
-#: doc/classes/HTTPRequest.xml:76
+#: doc/classes/HTTPRequest.xml:85
msgid ""
"Returns the response body length.\n"
"[b]Note:[/b] Some Web servers may not send a body length. In this case, the "
@@ -24129,17 +24661,17 @@ msgid ""
"the body length will also be [code]-1[/code]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:84
+#: doc/classes/HTTPRequest.xml:93
msgid "Returns the amount of bytes this HTTPRequest downloaded."
msgstr ""
-#: doc/classes/HTTPRequest.xml:91
+#: doc/classes/HTTPRequest.xml:100
msgid ""
"Returns the current status of the underlying [HTTPClient]. See [enum "
"HTTPClient.Status]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:108
+#: doc/classes/HTTPRequest.xml:117
msgid ""
"Creates request on the underlying [HTTPClient]. If there is no configuration "
"errors, it tries to connect using [method HTTPClient.connect_to_host] and "
@@ -24152,11 +24684,11 @@ msgid ""
"connect to host."
msgstr ""
-#: doc/classes/HTTPRequest.xml:115
+#: doc/classes/HTTPRequest.xml:124
msgid "Maximum allowed size for response bodies."
msgstr ""
-#: doc/classes/HTTPRequest.xml:118
+#: doc/classes/HTTPRequest.xml:127
msgid ""
"The size of the buffer used and maximum bytes to read per iteration. See "
"[member HTTPClient.read_chunk_size].\n"
@@ -24164,63 +24696,63 @@ msgid ""
"files to achieve better speeds at the cost of memory."
msgstr ""
-#: doc/classes/HTTPRequest.xml:122
+#: doc/classes/HTTPRequest.xml:131
msgid "The file to download into. Will output any received file into it."
msgstr ""
-#: doc/classes/HTTPRequest.xml:125
+#: doc/classes/HTTPRequest.xml:134
msgid "Maximum number of allowed redirects."
msgstr ""
-#: doc/classes/HTTPRequest.xml:130
+#: doc/classes/HTTPRequest.xml:139
msgid "If [code]true[/code], multithreading is used to improve performance."
msgstr ""
-#: doc/classes/HTTPRequest.xml:144
+#: doc/classes/HTTPRequest.xml:153
msgid "Emitted when a request is completed."
msgstr ""
-#: doc/classes/HTTPRequest.xml:150
+#: doc/classes/HTTPRequest.xml:159
msgid "Request successful."
msgstr ""
-#: doc/classes/HTTPRequest.xml:155
+#: doc/classes/HTTPRequest.xml:164
msgid "Request failed while connecting."
msgstr ""
-#: doc/classes/HTTPRequest.xml:158
+#: doc/classes/HTTPRequest.xml:167
msgid "Request failed while resolving."
msgstr ""
-#: doc/classes/HTTPRequest.xml:161
+#: doc/classes/HTTPRequest.xml:170
msgid "Request failed due to connection (read/write) error."
msgstr ""
-#: doc/classes/HTTPRequest.xml:164
+#: doc/classes/HTTPRequest.xml:173
msgid "Request failed on SSL handshake."
msgstr ""
-#: doc/classes/HTTPRequest.xml:167
+#: doc/classes/HTTPRequest.xml:176
msgid "Request does not have a response (yet)."
msgstr ""
-#: doc/classes/HTTPRequest.xml:170
+#: doc/classes/HTTPRequest.xml:179
msgid "Request exceeded its maximum size limit, see [member body_size_limit]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:173
+#: doc/classes/HTTPRequest.xml:182
msgid "Request failed (currently unused)."
msgstr ""
-#: doc/classes/HTTPRequest.xml:176
+#: doc/classes/HTTPRequest.xml:185
msgid "HTTPRequest couldn't open the download file."
msgstr ""
-#: doc/classes/HTTPRequest.xml:179
+#: doc/classes/HTTPRequest.xml:188
msgid "HTTPRequest couldn't write to the download file."
msgstr ""
-#: doc/classes/HTTPRequest.xml:182
+#: doc/classes/HTTPRequest.xml:191
msgid "Request reached its maximum redirect limit, see [member max_redirects]."
msgstr ""
@@ -24444,42 +24976,46 @@ msgid "Loads an image from the binary contents of a PNG file."
msgstr ""
#: doc/classes/Image.xml:373
+msgid "Loads an image from the binary contents of a TGA file."
+msgstr ""
+
+#: doc/classes/Image.xml:382
msgid "Loads an image from the binary contents of a WebP file."
msgstr ""
-#: doc/classes/Image.xml:380
+#: doc/classes/Image.xml:389
msgid ""
"Converts the image's data to represent coordinates on a 3D plane. This is "
"used when the image represents a normalmap. A normalmap can add lots of "
"detail to a 3D surface without increasing the polygon count."
msgstr ""
-#: doc/classes/Image.xml:387
+#: doc/classes/Image.xml:396
msgid ""
"Multiplies color values with alpha values. Resulting color values for a "
"pixel are [code](color * alpha)/256[/code]."
msgstr ""
-#: doc/classes/Image.xml:400
+#: doc/classes/Image.xml:409
msgid ""
"Resizes the image to the given [code]width[/code] and [code]height[/code]. "
"New pixels are calculated using [code]interpolation[/code]. See "
"[code]interpolation[/code] constants."
msgstr ""
-#: doc/classes/Image.xml:409
+#: doc/classes/Image.xml:418
msgid ""
"Resizes the image to the nearest power of 2 for the width and height. If "
"[code]square[/code] is [code]true[/code] then set width and height to be the "
"same."
msgstr ""
-#: doc/classes/Image.xml:416
+#: doc/classes/Image.xml:425
msgid ""
"Converts a standard RGBE (Red Green Blue Exponent) image to an sRGB image."
msgstr ""
-#: doc/classes/Image.xml:427
+#: doc/classes/Image.xml:436
msgid ""
"Saves the image as an EXR file to [code]path[/code]. If [code]grayscale[/"
"code] is [code]true[/code] and the image has only one channel, it will be "
@@ -24488,11 +25024,11 @@ msgid ""
"TinyEXR module."
msgstr ""
-#: doc/classes/Image.xml:436
+#: doc/classes/Image.xml:445
msgid "Saves the image as a PNG file to [code]path[/code]."
msgstr ""
-#: doc/classes/Image.xml:455
+#: doc/classes/Image.xml:464
msgid ""
"Sets the [Color] of the pixel at [code](x, y)[/code]. Example:\n"
"[codeblock]\n"
@@ -24502,7 +25038,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Image.xml:471
+#: doc/classes/Image.xml:480
msgid ""
"Sets the [Color] of the pixel at [code](dst.x, dst.y)[/code]. Note that the "
"[code]dst[/code] values must be integers. Example:\n"
@@ -24513,51 +25049,51 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Image.xml:483
+#: doc/classes/Image.xml:492
msgid "Shrinks the image by a factor of 2."
msgstr ""
-#: doc/classes/Image.xml:490
+#: doc/classes/Image.xml:499
msgid "Converts the raw data from the sRGB colorspace to a linear scale."
msgstr ""
-#: doc/classes/Image.xml:496
+#: doc/classes/Image.xml:505
msgid ""
"Holds all of the image's color data in a given format. See [enum Format] "
"constants."
msgstr ""
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:510
msgid "The maximal width allowed for [Image] resources."
msgstr ""
-#: doc/classes/Image.xml:504
+#: doc/classes/Image.xml:513
msgid "The maximal height allowed for [Image] resources."
msgstr ""
-#: doc/classes/Image.xml:507
+#: doc/classes/Image.xml:516
msgid "Texture format with a single 8-bit depth representing luminance."
msgstr ""
-#: doc/classes/Image.xml:510
+#: doc/classes/Image.xml:519
msgid ""
"OpenGL texture format with two values, luminance and alpha each stored with "
"8 bits."
msgstr ""
-#: doc/classes/Image.xml:513
+#: doc/classes/Image.xml:522
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
"bitdepth of 8."
msgstr ""
-#: doc/classes/Image.xml:516
+#: doc/classes/Image.xml:525
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
-#: doc/classes/Image.xml:519
+#: doc/classes/Image.xml:528
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -24565,7 +25101,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:523
+#: doc/classes/Image.xml:532
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -24573,67 +25109,67 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:536
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
-#: doc/classes/Image.xml:532
+#: doc/classes/Image.xml:541
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
-#: doc/classes/Image.xml:535
+#: doc/classes/Image.xml:544
msgid ""
"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
"each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:538
+#: doc/classes/Image.xml:547
msgid ""
"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
"components, each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:541
+#: doc/classes/Image.xml:550
msgid ""
"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
"components, each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:544
+#: doc/classes/Image.xml:553
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 16-"
"bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:556
msgid ""
"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
"each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:550
+#: doc/classes/Image.xml:559
msgid ""
"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
"components, each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:553
+#: doc/classes/Image.xml:562
msgid ""
"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
"components, each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:556
+#: doc/classes/Image.xml:565
msgid ""
"A special OpenGL texture format where the three color components have 9 bits "
"of precision and all three share a single 5-bit exponent."
msgstr ""
-#: doc/classes/Image.xml:559
+#: doc/classes/Image.xml:568
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format that uses Block Compression 1, and is the smallest variation "
@@ -24643,7 +25179,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:563
+#: doc/classes/Image.xml:572
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format that uses Block Compression 2, and color data is interpreted "
@@ -24653,7 +25189,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:567
+#: doc/classes/Image.xml:576
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format also known as Block Compression 3 or BC3 that contains 64 "
@@ -24664,7 +25200,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:571
+#: doc/classes/Image.xml:580
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -24672,7 +25208,7 @@ msgid ""
"DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:574
+#: doc/classes/Image.xml:583
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -24680,7 +25216,7 @@ msgid ""
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:577
+#: doc/classes/Image.xml:586
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -24689,21 +25225,21 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:581
+#: doc/classes/Image.xml:590
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with signed floating-point "
"RGB components."
msgstr ""
-#: doc/classes/Image.xml:584
+#: doc/classes/Image.xml:593
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned floating-point "
"RGB components."
msgstr ""
-#: doc/classes/Image.xml:587
+#: doc/classes/Image.xml:596
msgid ""
"Texture format used on PowerVR-supported mobile platforms, uses 2-bit color "
"depth with no alpha. More information can be found [url=https://en.wikipedia."
@@ -24712,25 +25248,25 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:600
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:603
msgid ""
"Similar to [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with 4-"
"bit color depth and no alpha."
msgstr ""
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:606
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:609
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -24738,7 +25274,7 @@ msgid ""
"standard. This format cannot store an alpha channel."
msgstr ""
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:612
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24746,7 +25282,7 @@ msgid ""
"unsigned data."
msgstr ""
-#: doc/classes/Image.xml:606
+#: doc/classes/Image.xml:615
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24754,7 +25290,7 @@ msgid ""
"channel of signed data."
msgstr ""
-#: doc/classes/Image.xml:609
+#: doc/classes/Image.xml:618
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24762,7 +25298,7 @@ msgid ""
"of unsigned data."
msgstr ""
-#: doc/classes/Image.xml:612
+#: doc/classes/Image.xml:621
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24770,7 +25306,7 @@ msgid ""
"channels of signed data."
msgstr ""
-#: doc/classes/Image.xml:615
+#: doc/classes/Image.xml:624
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24780,7 +25316,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:619
+#: doc/classes/Image.xml:628
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24790,7 +25326,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:623
+#: doc/classes/Image.xml:632
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24801,31 +25337,31 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:631
+#: doc/classes/Image.xml:640
msgid "Represents the size of the [enum Format] enum."
msgstr ""
-#: doc/classes/Image.xml:634
+#: doc/classes/Image.xml:643
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
-#: doc/classes/Image.xml:637
+#: doc/classes/Image.xml:646
msgid ""
"Performs bilinear interpolation. If the image is resized, it will be blurry. "
"This mode is faster than [constant INTERPOLATE_CUBIC], but it results in "
"lower quality."
msgstr ""
-#: doc/classes/Image.xml:640
+#: doc/classes/Image.xml:649
msgid ""
"Performs cubic interpolation. If the image is resized, it will be blurry. "
"This mode often gives better results compared to [constant "
"INTERPOLATE_BILINEAR], at the cost of being slower."
msgstr ""
-#: doc/classes/Image.xml:643
+#: doc/classes/Image.xml:652
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -24840,55 +25376,55 @@ msgid ""
"a new set will be generated for the resulting image."
msgstr ""
-#: doc/classes/Image.xml:650
+#: doc/classes/Image.xml:659
msgid ""
"Performs Lanczos interpolation. This is the slowest image resizing mode, but "
"it typically gives the best results, especially when downscalng images."
msgstr ""
-#: doc/classes/Image.xml:653
+#: doc/classes/Image.xml:662
msgid "Image does not have alpha."
msgstr ""
-#: doc/classes/Image.xml:656
+#: doc/classes/Image.xml:665
msgid "Image stores alpha in a single bit."
msgstr ""
-#: doc/classes/Image.xml:659
+#: doc/classes/Image.xml:668
msgid "Image uses alpha."
msgstr ""
-#: doc/classes/Image.xml:662
+#: doc/classes/Image.xml:671
msgid "Use S3TC compression."
msgstr ""
-#: doc/classes/Image.xml:665
+#: doc/classes/Image.xml:674
msgid "Use PVRTC2 compression."
msgstr ""
-#: doc/classes/Image.xml:668
+#: doc/classes/Image.xml:677
msgid "Use PVRTC4 compression."
msgstr ""
-#: doc/classes/Image.xml:671
+#: doc/classes/Image.xml:680
msgid "Use ETC compression."
msgstr ""
-#: doc/classes/Image.xml:674
+#: doc/classes/Image.xml:683
msgid "Use ETC2 compression."
msgstr ""
-#: doc/classes/Image.xml:689
+#: doc/classes/Image.xml:698
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
-#: doc/classes/Image.xml:692
+#: doc/classes/Image.xml:701
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
-#: doc/classes/Image.xml:695
+#: doc/classes/Image.xml:704
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -25707,7 +26243,7 @@ msgid "Contains mouse click information. See [method Node._input]."
msgstr ""
#: doc/classes/InputEventMouseButton.xml:10
-#: doc/classes/InputEventMouseMotion.xml:10
+#: doc/classes/InputEventMouseMotion.xml:11
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/inputs/"
"mouse_and_input_coordinates.html"
@@ -25744,29 +26280,36 @@ msgstr ""
#: doc/classes/InputEventMouseMotion.xml:7
msgid ""
"Contains mouse and pen motion information. Supports relative, absolute "
-"positions and speed. See [method Node._input]."
+"positions and speed. See [method Node._input].\n"
+"[b]Note:[/b] By default, this event is only emitted once per frame rendered "
+"at most. If you need more precise input reporting, call [method Input."
+"set_use_accumulated_input] with [code]false[/code] to make events emitted as "
+"often as possible. If you use InputEventMouseMotion to draw lines, consider "
+"implementing [url=https://en.wikipedia.org/wiki/Bresenham"
+"%27s_line_algorithm]Bresenham's line algorithm[/url] as well to avoid "
+"visible gaps in lines if the user is moving the mouse quickly."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:16
+#: doc/classes/InputEventMouseMotion.xml:17
msgid ""
"Represents the pressure the user puts on the pen. Ranges from [code]0.0[/"
"code] to [code]1.0[/code]."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:19
+#: doc/classes/InputEventMouseMotion.xml:20
msgid ""
"The mouse position relative to the previous position (position at the last "
-"frame). \n"
+"frame).\n"
"[b]Note:[/b] Since [InputEventMouseMotion] is only emitted when the mouse "
"moves, the last event won't have a relative position of [code]Vector2(0, 0)[/"
"code] when the user stops moving the mouse."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:23
+#: doc/classes/InputEventMouseMotion.xml:24
msgid "The mouse speed in pixels per second."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:26
+#: doc/classes/InputEventMouseMotion.xml:27
msgid ""
"Represents the angles of tilt of the pen. Positive X-coordinate value "
"indicates a tilt to the right. Positive Y-coordinate value indicates a tilt "
@@ -26656,14 +27199,17 @@ msgstr ""
#: doc/classes/JSON.xml:18
msgid ""
-"Parses a JSON encoded string and returns a [JSONParseResult] containing the "
+"Parses a JSON-encoded string and returns a [JSONParseResult] containing the "
"result."
msgstr ""
#: doc/classes/JSON.xml:31
msgid ""
"Converts a [Variant] var to JSON text and returns the result. Useful for "
-"serializing data to store or send over the network."
+"serializing data to store or send over the network.\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, converting a Variant to JSON text "
+"will convert all numerical values to [float] types."
msgstr ""
#: doc/classes/JSONParseResult.xml:4
@@ -26686,14 +27232,14 @@ msgstr ""
#: doc/classes/JSONParseResult.xml:18
msgid ""
-"The line number where the error occurred if JSON source was not successfully "
-"parsed."
+"The line number where the error occurred if the JSON source was not "
+"successfully parsed."
msgstr ""
#: doc/classes/JSONParseResult.xml:21
msgid ""
-"The error message if JSON source was not successfully parsed. See the [enum "
-"Error] constants."
+"The error message if the JSON source was not successfully parsed. See the "
+"[enum Error] constants."
msgstr ""
#: doc/classes/JSONParseResult.xml:24
@@ -26701,11 +27247,11 @@ msgid ""
"A [Variant] containing the parsed JSON. Use [method @GDScript.typeof] or the "
"[code]is[/code] keyword to check if it is what you expect. For example, if "
"the JSON source starts with curly braces ([code]{}[/code]), a [Dictionary] "
-"will be returned. If the JSON source starts with braces ([code][][/code]), "
+"will be returned. If the JSON source starts with brackets ([code][][/code]), "
"an [Array] will be returned.\n"
"[b]Note:[/b] The JSON specification does not define integer or float types, "
-"but only a number type. Therefore, parsing a JSON text will convert all "
-"numerical values to float types.\n"
+"but only a [i]number[/i] type. Therefore, parsing a JSON text will convert "
+"all numerical values to [float] types.\n"
"[b]Note:[/b] JSON objects do not preserve key order like Godot dictionaries, "
"thus, you should not rely on keys being in a certain order if a dictionary "
"is constructed from JSON. In contrast, JSON arrays retain the order of their "
@@ -26715,7 +27261,7 @@ msgid ""
"if typeof(p.result) == TYPE_ARRAY:\n"
" print(p.result[0]) # Prints \"hello\"\n"
"else:\n"
-" print(\"unexpected results\")\n"
+" push_error(\"Unexpected results.\")\n"
"[/codeblock]"
msgstr ""
@@ -26831,7 +27377,7 @@ msgid ""
"simulation will run at an incorrect speed.\n"
"[code]linear_velocity[/code] is the velocity vector in pixels per second. "
"Unlike in [method move_and_collide], you should [i]not[/i] multiply it by "
-"[code]delta[/code] — the physics engine handles applying the velocity. \n"
+"[code]delta[/code] — the physics engine handles applying the velocity.\n"
"[code]up_direction[/code] is the up direction, used to determine what is a "
"wall and what is a floor or a ceiling. If set to the default value of "
"[code]Vector2(0, 0)[/code], everything is considered a wall. This is useful "
@@ -26947,7 +27493,7 @@ msgid ""
"[code]linear_velocity[/code] is the velocity vector (typically meters per "
"second). Unlike in [method move_and_collide], you should [i]not[/i] multiply "
"it by [code]delta[/code] — the physics engine handles applying the "
-"velocity. \n"
+"velocity.\n"
"[code]up_direction[/code] is the up direction, used to determine what is a "
"wall and what is a floor or a ceiling. If set to the default value of "
"[code]Vector3(0, 0, 0)[/code], everything is considered a wall.\n"
@@ -27676,17 +28222,6 @@ msgid ""
"[b]Note:[/b] Hiding a light does [i]not[/i] affect baking."
msgstr ""
-#: doc/classes/Light3D.xml:152
-msgid "Only indirect lighting will be baked (default)."
-msgstr ""
-
-#: doc/classes/Light3D.xml:155
-msgid ""
-"Both direct and indirect light will be baked.\n"
-"[b]Note:[/b] You should hide the light if you don't want it to appear twice "
-"(dynamic and baked)."
-msgstr ""
-
#: doc/classes/LightOccluder2D.xml:4
msgid "Occludes light cast by a Light2D, casting shadows."
msgstr ""
@@ -27965,136 +28500,142 @@ msgstr ""
msgid "Text alignment as defined in the [enum Align] enum."
msgstr ""
-#: doc/classes/LineEdit.xml:120 doc/classes/TextEdit.xml:406
+#: doc/classes/LineEdit.xml:120 doc/classes/TextEdit.xml:358
msgid "If [code]true[/code], the caret (visual cursor) blinks."
msgstr ""
-#: doc/classes/LineEdit.xml:123 doc/classes/TextEdit.xml:409
+#: doc/classes/LineEdit.xml:123 doc/classes/TextEdit.xml:361
msgid "Duration (in seconds) of a caret's blinking cycle."
msgstr ""
-#: doc/classes/LineEdit.xml:126
+#: doc/classes/LineEdit.xml:128
msgid ""
"The cursor's position inside the [LineEdit]. When set, the text may scroll "
"to accommodate it."
msgstr ""
-#: doc/classes/LineEdit.xml:129
+#: doc/classes/LineEdit.xml:131
msgid ""
"If [code]true[/code], the [LineEdit] will show a clear button if [code]text[/"
"code] is not empty, which can be used to clear the text quickly."
msgstr ""
-#: doc/classes/LineEdit.xml:132
+#: doc/classes/LineEdit.xml:134
msgid "If [code]true[/code], the context menu will appear when right-clicked."
msgstr ""
-#: doc/classes/LineEdit.xml:135
+#: doc/classes/LineEdit.xml:137
msgid ""
"If [code]false[/code], existing text cannot be modified and new text cannot "
"be added."
msgstr ""
-#: doc/classes/LineEdit.xml:138
+#: doc/classes/LineEdit.xml:140
msgid ""
"If [code]true[/code], the [LineEdit] width will increase to stay longer than "
"the [member text]. It will [b]not[/b] compress if the [member text] is "
"shortened."
msgstr ""
-#: doc/classes/LineEdit.xml:142
+#: doc/classes/LineEdit.xml:144
msgid ""
"Maximum amount of characters that can be entered inside the [LineEdit]. If "
"[code]0[/code], there is no limit."
msgstr ""
-#: doc/classes/LineEdit.xml:146
+#: doc/classes/LineEdit.xml:148
msgid ""
"Opacity of the [member placeholder_text]. From [code]0[/code] to [code]1[/"
"code]."
msgstr ""
-#: doc/classes/LineEdit.xml:149
+#: doc/classes/LineEdit.xml:151
msgid ""
"Text shown when the [LineEdit] is empty. It is [b]not[/b] the [LineEdit]'s "
"default value (see [member text])."
msgstr ""
-#: doc/classes/LineEdit.xml:152
+#: doc/classes/LineEdit.xml:154
msgid ""
"Sets the icon that will appear in the right end of the [LineEdit] if there's "
"no [member text], or always, if [member clear_button_enabled] is set to "
"[code]false[/code]."
msgstr ""
-#: doc/classes/LineEdit.xml:155
+#: doc/classes/LineEdit.xml:157
msgid ""
"If [code]true[/code], every character is replaced with the secret character "
"(see [member secret_character])."
msgstr ""
-#: doc/classes/LineEdit.xml:158
+#: doc/classes/LineEdit.xml:160
msgid ""
"The character to use to mask secret input (defaults to \"*\"). Only a single "
"character can be used as the secret character."
msgstr ""
-#: doc/classes/LineEdit.xml:161
+#: doc/classes/LineEdit.xml:163
msgid ""
"If [code]false[/code], it's impossible to select the text using mouse nor "
"keyboard."
msgstr ""
-#: doc/classes/LineEdit.xml:164
+#: doc/classes/LineEdit.xml:166
msgid "If [code]false[/code], using shortcuts will be disabled."
msgstr ""
-#: doc/classes/LineEdit.xml:167
+#: doc/classes/LineEdit.xml:169
msgid ""
"String value of the [LineEdit].\n"
"[b]Note:[/b] Changing text using this property won't emit the [signal "
"text_changed] signal."
msgstr ""
-#: doc/classes/LineEdit.xml:174
+#: doc/classes/LineEdit.xml:173 doc/classes/TextEdit.xml:434
+msgid ""
+"If [code]true[/code], the native virtual keyboard is shown when focused on "
+"platforms that support it."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:179
msgid ""
"Emitted when trying to append text that would overflow the [member "
"max_length]."
msgstr ""
-#: doc/classes/LineEdit.xml:181 doc/classes/TextEdit.xml:525
+#: doc/classes/LineEdit.xml:186 doc/classes/TextEdit.xml:490
msgid "Emitted when the text changes."
msgstr ""
-#: doc/classes/LineEdit.xml:188
+#: doc/classes/LineEdit.xml:193
msgid "Emitted when the user presses [constant KEY_ENTER] on the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:194
+#: doc/classes/LineEdit.xml:199
msgid "Aligns the text on the left-hand side of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:197
+#: doc/classes/LineEdit.xml:202
msgid "Centers the text in the middle of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:200
+#: doc/classes/LineEdit.xml:205
msgid "Aligns the text on the right-hand side of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:203
+#: doc/classes/LineEdit.xml:208
msgid "Stretches whitespaces to fit the [LineEdit]'s width."
msgstr ""
-#: doc/classes/LineEdit.xml:206 doc/classes/TextEdit.xml:540
+#: doc/classes/LineEdit.xml:211 doc/classes/TextEdit.xml:505
msgid "Cuts (copies and clears) the selected text."
msgstr ""
-#: doc/classes/LineEdit.xml:209 doc/classes/TextEdit.xml:543
+#: doc/classes/LineEdit.xml:214 doc/classes/TextEdit.xml:508
msgid "Copies the selected text."
msgstr ""
-#: doc/classes/LineEdit.xml:212
+#: doc/classes/LineEdit.xml:217
msgid ""
"Pastes the clipboard text over the selected text (or at the cursor's "
"position).\n"
@@ -28102,80 +28643,80 @@ msgid ""
"clipboard via [method String.strip_escapes]."
msgstr ""
-#: doc/classes/LineEdit.xml:216
+#: doc/classes/LineEdit.xml:221
msgid "Erases the whole [LineEdit] text."
msgstr ""
-#: doc/classes/LineEdit.xml:219
+#: doc/classes/LineEdit.xml:224
msgid "Selects the whole [LineEdit] text."
msgstr ""
-#: doc/classes/LineEdit.xml:222 doc/classes/TextEdit.xml:555
+#: doc/classes/LineEdit.xml:227 doc/classes/TextEdit.xml:520
msgid "Undoes the previous action."
msgstr ""
-#: doc/classes/LineEdit.xml:225
+#: doc/classes/LineEdit.xml:230
msgid "Reverse the last undo action."
msgstr ""
-#: doc/classes/LineEdit.xml:228 doc/classes/TextEdit.xml:561
+#: doc/classes/LineEdit.xml:233 doc/classes/TextEdit.xml:526
msgid "Represents the size of the [enum MenuItems] enum."
msgstr ""
-#: doc/classes/LineEdit.xml:233
+#: doc/classes/LineEdit.xml:238
msgid "Texture for the clear button. See [member clear_button_enabled]."
msgstr ""
-#: doc/classes/LineEdit.xml:236
+#: doc/classes/LineEdit.xml:241
msgid "Color used as default tint for the clear button."
msgstr ""
-#: doc/classes/LineEdit.xml:239
+#: doc/classes/LineEdit.xml:244
msgid "Color used for the clear button when it's pressed."
msgstr ""
-#: doc/classes/LineEdit.xml:242
+#: doc/classes/LineEdit.xml:247
msgid "Color of the [LineEdit]'s visual cursor (caret)."
msgstr ""
-#: doc/classes/LineEdit.xml:245
+#: doc/classes/LineEdit.xml:250
msgid "Background used when [LineEdit] has GUI focus."
msgstr ""
-#: doc/classes/LineEdit.xml:248
+#: doc/classes/LineEdit.xml:253
msgid "Font used for the text."
msgstr ""
-#: doc/classes/LineEdit.xml:251
+#: doc/classes/LineEdit.xml:256
msgid "Default font color."
msgstr ""
-#: doc/classes/LineEdit.xml:254
+#: doc/classes/LineEdit.xml:259
msgid "Font color for selected text (inside the selection rectangle)."
msgstr ""
-#: doc/classes/LineEdit.xml:257
+#: doc/classes/LineEdit.xml:262
msgid "Font color when editing is disabled."
msgstr ""
-#: doc/classes/LineEdit.xml:260
+#: doc/classes/LineEdit.xml:265
msgid ""
"Minimum horizontal space for the text (not counting the clear button and "
"content margins). This value is measured in count of space characters (i.e. "
"this amount of space characters can be displayed without scrolling)."
msgstr ""
-#: doc/classes/LineEdit.xml:263
+#: doc/classes/LineEdit.xml:268
msgid "Default background for the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:266
+#: doc/classes/LineEdit.xml:271
msgid ""
"Background used when [LineEdit] is in read-only mode ([member editable] is "
"set to [code]false[/code])."
msgstr ""
-#: doc/classes/LineEdit.xml:269
+#: doc/classes/LineEdit.xml:274
msgid "Color of the selection rectangle."
msgstr ""
@@ -28393,14 +28934,14 @@ msgstr ""
msgid "Emitted when a user responds to a permission request."
msgstr ""
-#: doc/classes/MainLoop.xml:127 doc/classes/Node.xml:948
+#: doc/classes/MainLoop.xml:127 doc/classes/Node.xml:946
msgid ""
"Notification received from the OS when the application is exceeding its "
"allocated memory.\n"
"Specific to the iOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:131 doc/classes/Node.xml:952
+#: doc/classes/MainLoop.xml:131 doc/classes/Node.xml:950
msgid ""
"Notification received when translations may have changed. Can be triggered "
"by the user changing the locale. Can be used to respond to language changes, "
@@ -28408,39 +28949,55 @@ msgid ""
"the built-in translation support, like [method Object.tr]."
msgstr ""
-#: doc/classes/MainLoop.xml:134 doc/classes/Node.xml:955
+#: doc/classes/MainLoop.xml:134 doc/classes/Node.xml:953
msgid ""
"Notification received from the OS when a request for \"About\" information "
"is sent.\n"
"Specific to the macOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:138 doc/classes/Node.xml:959
+#: doc/classes/MainLoop.xml:138 doc/classes/Node.xml:957
msgid ""
"Notification received from Godot's crash handler when the engine is about to "
"crash.\n"
"Implemented on desktop platforms if the crash handler is enabled."
msgstr ""
-#: doc/classes/MainLoop.xml:142 doc/classes/Node.xml:963
+#: doc/classes/MainLoop.xml:142 doc/classes/Node.xml:961
msgid ""
"Notification received from the OS when an update of the Input Method Engine "
"occurs (e.g. change of IME cursor position or composition string).\n"
"Specific to the macOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:146 doc/classes/Node.xml:967
+#: doc/classes/MainLoop.xml:146 doc/classes/Node.xml:965
msgid ""
-"Notification received from the OS when the app is resumed.\n"
+"Notification received from the OS when the application is resumed.\n"
"Specific to the Android platform."
msgstr ""
-#: doc/classes/MainLoop.xml:150 doc/classes/Node.xml:971
+#: doc/classes/MainLoop.xml:150 doc/classes/Node.xml:969
msgid ""
-"Notification received from the OS when the app is paused.\n"
+"Notification received from the OS when the application is paused.\n"
"Specific to the Android platform."
msgstr ""
+#: doc/classes/MainLoop.xml:154 doc/classes/Node.xml:973
+msgid ""
+"Notification received from the OS when the application is focused, i.e. when "
+"changing the focus from the OS desktop or a thirdparty application to any "
+"open window of the Godot instance.\n"
+"Implemented on desktop platforms."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:158 doc/classes/Node.xml:977
+msgid ""
+"Notification received from the OS when the application is defocused, i.e. "
+"when changing the focus from any open window of the Godot instance to the OS "
+"desktop or a thirdparty application.\n"
+"Implemented on desktop platforms."
+msgstr ""
+
#: doc/classes/MarginContainer.xml:4
msgid "Simple margin container."
msgstr ""
@@ -28748,11 +29305,11 @@ msgstr ""
msgid "Render array as triangle strips."
msgstr ""
-#: doc/classes/Mesh.xml:126 doc/classes/RenderingServer.xml:3189
+#: doc/classes/Mesh.xml:126 doc/classes/RenderingServer.xml:3185
msgid "Blend shapes are normalized."
msgstr ""
-#: doc/classes/Mesh.xml:129 doc/classes/RenderingServer.xml:3192
+#: doc/classes/Mesh.xml:129 doc/classes/RenderingServer.xml:3188
msgid "Blend shapes are relative to base weight."
msgstr ""
@@ -28794,37 +29351,37 @@ msgstr ""
msgid "Mesh array uses indices."
msgstr ""
-#: doc/classes/Mesh.xml:159 doc/classes/RenderingServer.xml:3145
+#: doc/classes/Mesh.xml:159 doc/classes/RenderingServer.xml:3141
msgid "Flag used to mark a compressed (half float) normal array."
msgstr ""
-#: doc/classes/Mesh.xml:162 doc/classes/RenderingServer.xml:3148
+#: doc/classes/Mesh.xml:162 doc/classes/RenderingServer.xml:3144
msgid "Flag used to mark a compressed (half float) tangent array."
msgstr ""
-#: doc/classes/Mesh.xml:165 doc/classes/RenderingServer.xml:3151
+#: doc/classes/Mesh.xml:165 doc/classes/RenderingServer.xml:3147
msgid "Flag used to mark a compressed (half float) color array."
msgstr ""
-#: doc/classes/Mesh.xml:168 doc/classes/RenderingServer.xml:3154
+#: doc/classes/Mesh.xml:168 doc/classes/RenderingServer.xml:3150
msgid "Flag used to mark a compressed (half float) UV coordinates array."
msgstr ""
-#: doc/classes/Mesh.xml:171 doc/classes/RenderingServer.xml:3157
+#: doc/classes/Mesh.xml:171 doc/classes/RenderingServer.xml:3153
msgid ""
"Flag used to mark a compressed (half float) UV coordinates array for the "
"second UV coordinates."
msgstr ""
-#: doc/classes/Mesh.xml:174 doc/classes/RenderingServer.xml:3160
+#: doc/classes/Mesh.xml:174 doc/classes/RenderingServer.xml:3156
msgid "Flag used to mark a compressed index array."
msgstr ""
-#: doc/classes/Mesh.xml:177 doc/classes/RenderingServer.xml:3166
+#: doc/classes/Mesh.xml:177 doc/classes/RenderingServer.xml:3162
msgid "Flag used to mark that the array contains 2D vertices."
msgstr ""
-#: doc/classes/Mesh.xml:180 doc/classes/RenderingServer.xml:3163
+#: doc/classes/Mesh.xml:180 doc/classes/RenderingServer.xml:3159
msgid ""
"Used to set flags [constant ARRAY_COMPRESS_NORMAL], [constant "
"ARRAY_COMPRESS_TANGENT], [constant ARRAY_COMPRESS_COLOR], [constant "
@@ -30585,7 +31142,10 @@ msgstr ""
msgid ""
"The number of channels to be used by ENet. Channels are used to separate "
"different kinds of data. In reliable or ordered mode, for example, the "
-"packet delivery order is ensured on a per channel basis."
+"packet delivery order is ensured on a per-channel basis. This is done to "
+"combat latency and reduces ordering restrictions on packets. The delivery "
+"status of a packet in one channel won't stall the delivery of other packets "
+"in another channel."
msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:134
@@ -30612,11 +31172,12 @@ msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:144
msgid ""
"Set the default channel to be used to transfer data. By default, this value "
-"is [code]-1[/code] which means that ENet will only use 2 channels, one for "
-"reliable and one for unreliable packets. Channel [code]0[/code] is reserved, "
-"and cannot be used. Setting this member to any value between [code]0[/code] "
-"and [member channel_count] (excluded) will force ENet to use that channel "
-"for sending data."
+"is [code]-1[/code] which means that ENet will only use 2 channels: one for "
+"reliable packets, and one for unreliable packets. The channel [code]0[/code] "
+"is reserved and cannot be used. Setting this member to any value between "
+"[code]0[/code] and [member channel_count] (excluded) will force ENet to use "
+"that channel for sending data. See [member channel_count] for more "
+"information about ENet channels."
msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:148
@@ -31808,57 +32369,63 @@ msgstr ""
#: doc/classes/Node.xml:930
msgid ""
-"Notification received from the OS when the game window is focused.\n"
-"Implemented on all platforms."
+"Notification received from the OS when the node's parent [Window] is "
+"focused. This may be a change of focus between two windows of the same "
+"engine instance, or from the OS desktop or a third-party application to a "
+"window of the game (in which case [constant "
+"NOTIFICATION_APPLICATION_FOCUS_IN] is also emitted)."
msgstr ""
-#: doc/classes/Node.xml:934
+#: doc/classes/Node.xml:933
msgid ""
-"Notification received from the OS when the game window is unfocused.\n"
-"Implemented on all platforms."
+"Notification received from the OS when the node's parent [Window] is "
+"defocused. This may be a change of focus between two windows of the same "
+"engine instance, or from a window of the game to the OS desktop or a third-"
+"party application (in which case [constant "
+"NOTIFICATION_APPLICATION_FOCUS_OUT] is also emitted)."
msgstr ""
-#: doc/classes/Node.xml:938
+#: doc/classes/Node.xml:936
msgid ""
"Notification received from the OS when a close request is sent (e.g. closing "
"the window with a \"Close\" button or [kbd]Alt + F4[/kbd]).\n"
"Implemented on desktop platforms."
msgstr ""
-#: doc/classes/Node.xml:942
+#: doc/classes/Node.xml:940
msgid ""
"Notification received from the OS when a go back request is sent (e.g. "
"pressing the \"Back\" button on Android).\n"
"Specific to the Android platform."
msgstr ""
-#: doc/classes/Node.xml:975
+#: doc/classes/Node.xml:981
msgid ""
"Inherits pause mode from the node's parent. For the root node, it is "
"equivalent to [constant PAUSE_MODE_STOP]. Default."
msgstr ""
-#: doc/classes/Node.xml:978
+#: doc/classes/Node.xml:984
msgid "Stops processing when the [SceneTree] is paused."
msgstr ""
-#: doc/classes/Node.xml:981
+#: doc/classes/Node.xml:987
msgid "Continue to process regardless of the [SceneTree] pause state."
msgstr ""
-#: doc/classes/Node.xml:984
+#: doc/classes/Node.xml:990
msgid "Duplicate the node's signals."
msgstr ""
-#: doc/classes/Node.xml:987
+#: doc/classes/Node.xml:993
msgid "Duplicate the node's groups."
msgstr ""
-#: doc/classes/Node.xml:990
+#: doc/classes/Node.xml:996
msgid "Duplicate the node's scripts."
msgstr ""
-#: doc/classes/Node.xml:993
+#: doc/classes/Node.xml:999
msgid ""
"Duplicate using instancing.\n"
"An instance stays linked to the original so when the original changes, the "
@@ -32082,12 +32649,6 @@ msgid ""
"changes. [Node3D] will not propagate this by default."
msgstr ""
-#: doc/classes/Node3D.xml:104
-msgid ""
-"Returns whether the node is visible, taking into consideration that its "
-"parents visibility."
-msgstr ""
-
#: doc/classes/Node3D.xml:115
msgid ""
"Rotates itself so that the local -Z axis points towards the [code]target[/"
@@ -32257,7 +32818,10 @@ msgid "Local translation of this node."
msgstr ""
#: doc/classes/Node3D.xml:326
-msgid "If [code]true[/code], this node is drawn."
+msgid ""
+"If [code]true[/code], this node is drawn. The node is only visible if all of "
+"its antecedents are visible as well (in other words, [method "
+"is_visible_in_tree] must return [code]true[/code])."
msgstr ""
#: doc/classes/Node3D.xml:332
@@ -32514,10 +33078,20 @@ msgid ""
"the key exists, even if the value is [code]null[/code].\n"
"Objects also receive notifications. Notifications are a simple way to notify "
"the object about different events, so they can all be handled together. See "
-"[method _notification]."
+"[method _notification].\n"
+"[b]Note:[/b] Unlike references to a [Reference], references to an Object "
+"stored in a variable can become invalid without warning. Therefore, it's "
+"recommended to use [Reference] for data classes instead of [Object]."
msgstr ""
-#: doc/classes/Object.xml:30
+#: doc/classes/Object.xml:23 doc/classes/Reference.xml:12
+#: doc/classes/Resource.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/getting_started/workflow/"
+"best_practices/node_alternatives.html"
+msgstr ""
+
+#: doc/classes/Object.xml:32
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method get].\n"
@@ -32525,7 +33099,7 @@ msgid ""
"code] does not exist."
msgstr ""
-#: doc/classes/Object.xml:38
+#: doc/classes/Object.xml:40
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method get_property_list].\n"
@@ -32537,11 +33111,11 @@ msgid ""
"PropertyUsageFlags])."
msgstr ""
-#: doc/classes/Object.xml:47
+#: doc/classes/Object.xml:49
msgid "Called when the object is initialized."
msgstr ""
-#: doc/classes/Object.xml:56
+#: doc/classes/Object.xml:58
msgid ""
"Called whenever the object receives a notification, which is identified in "
"[code]what[/code] by a constant. The base [Object] has two constants "
@@ -32550,7 +33124,7 @@ msgid ""
"notifications which are also received by this method."
msgstr ""
-#: doc/classes/Object.xml:67
+#: doc/classes/Object.xml:69
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method set].\n"
@@ -32558,7 +33132,7 @@ msgid ""
"exists."
msgstr ""
-#: doc/classes/Object.xml:75
+#: doc/classes/Object.xml:77
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method to_string], and thus the object's representation where it is "
@@ -32567,34 +33141,42 @@ msgid ""
"[code]\"[ClassName:RID]\"[/code]."
msgstr ""
-#: doc/classes/Object.xml:87
+#: doc/classes/Object.xml:89
msgid ""
"Adds a user-defined [code]signal[/code]. Arguments are optional, but can be "
"added as an [Array] of dictionaries, each containing [code]name: String[/"
"code] and [code]type: int[/code] (see [enum Variant.Type]) entries."
msgstr ""
-#: doc/classes/Object.xml:96
+#: doc/classes/Object.xml:98
msgid ""
"Calls the [code]method[/code] on the object and returns the result. This "
"method supports a variable number of arguments, so parameters are passed as "
"a comma separated list. Example:\n"
"[codeblock]\n"
"call(\"set\", \"position\", Vector2(42.0, 0.0))\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] In C#, the method name must be specified as snake_case if it is "
+"defined by a built-in Godot node. This doesn't apply to user-defined methods "
+"where you should use the same convention as in the C# source (typically "
+"PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:108
+#: doc/classes/Object.xml:111
msgid ""
"Calls the [code]method[/code] on the object during idle time. This method "
"supports a variable number of arguments, so parameters are passed as a comma "
"separated list. Example:\n"
"[codeblock]\n"
"call_deferred(\"set\", \"position\", Vector2(42.0, 0.0))\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] In C#, the method name must be specified as snake_case if it is "
+"defined by a built-in Godot node. This doesn't apply to user-defined methods "
+"where you should use the same convention as in the C# source (typically "
+"PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:122
+#: doc/classes/Object.xml:126
msgid ""
"Calls the [code]method[/code] on the object and returns the result. "
"Contrarily to [method call], this method does not support a variable number "
@@ -32604,13 +33186,13 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:132
+#: doc/classes/Object.xml:136
msgid ""
"Returns [code]true[/code] if the object can translate strings. See [method "
"set_message_translation] and [method tr]."
msgstr ""
-#: doc/classes/Object.xml:147
+#: doc/classes/Object.xml:151
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32646,7 +33228,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:174
+#: doc/classes/Object.xml:178
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32657,7 +33239,7 @@ msgid ""
"exists."
msgstr ""
-#: doc/classes/Object.xml:185
+#: doc/classes/Object.xml:189
msgid ""
"Emits the given [code]signal[/code]. The signal must exist, so it should be "
"a built-in signal of this class or one of its parent classes, or a user-"
@@ -32669,24 +33251,28 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:196
+#: doc/classes/Object.xml:200
msgid ""
"Deletes the object from memory. Any pre-existing reference to the freed "
"object will become invalid, e.g. [code]is_instance_valid(object)[/code] will "
"return [code]false[/code]."
msgstr ""
-#: doc/classes/Object.xml:205
+#: doc/classes/Object.xml:209
msgid ""
"Returns the [Variant] value of the given [code]property[/code]. If the "
-"[code]property[/code] doesn't exist, this will return [code]null[/code]."
+"[code]property[/code] doesn't exist, this will return [code]null[/code].\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:212
+#: doc/classes/Object.xml:217
msgid "Returns the object's class as a [String]."
msgstr ""
-#: doc/classes/Object.xml:219
+#: doc/classes/Object.xml:224
msgid ""
"Returns an [Array] of dictionaries with information about signals that are "
"connected to the object.\n"
@@ -32697,7 +33283,7 @@ msgid ""
"connected."
msgstr ""
-#: doc/classes/Object.xml:232
+#: doc/classes/Object.xml:237
msgid ""
"Gets the object's property indexed by the given [NodePath]. The node path "
"should be relative to the current object and can use the colon character "
@@ -32705,26 +33291,26 @@ msgid ""
"\"[/code] or [code]\"material:next_pass:blend_mode\"[/code]."
msgstr ""
-#: doc/classes/Object.xml:239
+#: doc/classes/Object.xml:244
msgid ""
"Returns the object's unique instance ID.\n"
"This ID can be saved in [EncodedObjectAsID], and can be used to retrieve the "
"object instance with [method @GDScript.instance_from_id]."
msgstr ""
-#: doc/classes/Object.xml:249
+#: doc/classes/Object.xml:254
msgid "Returns the object's metadata entry for the given [code]name[/code]."
msgstr ""
-#: doc/classes/Object.xml:256
+#: doc/classes/Object.xml:261
msgid "Returns the object's metadata as a [PackedStringArray]."
msgstr ""
-#: doc/classes/Object.xml:263
+#: doc/classes/Object.xml:268
msgid "Returns the object's methods and their signatures as an [Array]."
msgstr ""
-#: doc/classes/Object.xml:270
+#: doc/classes/Object.xml:275
msgid ""
"Returns the object's property list as an [Array] of dictionaries.\n"
"Each property's [Dictionary] contain at least [code]name: String[/code] and "
@@ -32734,54 +33320,54 @@ msgid ""
"PropertyUsageFlags])."
msgstr ""
-#: doc/classes/Object.xml:278
+#: doc/classes/Object.xml:283
msgid ""
"Returns the object's [Script] instance, or [code]null[/code] if none is "
"assigned."
msgstr ""
-#: doc/classes/Object.xml:287
+#: doc/classes/Object.xml:292
msgid "Returns an [Array] of connections for the given [code]signal[/code]."
msgstr ""
-#: doc/classes/Object.xml:294
+#: doc/classes/Object.xml:299
msgid "Returns the list of signals as an [Array] of dictionaries."
msgstr ""
-#: doc/classes/Object.xml:303
+#: doc/classes/Object.xml:308
msgid ""
"Returns [code]true[/code] if a metadata entry is found with the given "
"[code]name[/code]."
msgstr ""
-#: doc/classes/Object.xml:312
+#: doc/classes/Object.xml:317
msgid ""
"Returns [code]true[/code] if the object contains the given [code]method[/"
"code]."
msgstr ""
-#: doc/classes/Object.xml:321
+#: doc/classes/Object.xml:326
msgid "Returns [code]true[/code] if the given [code]signal[/code] exists."
msgstr ""
-#: doc/classes/Object.xml:330
+#: doc/classes/Object.xml:335
msgid ""
"Returns [code]true[/code] if the given user-defined [code]signal[/code] "
"exists. Only signals added using [method add_user_signal] are taken into "
"account."
msgstr ""
-#: doc/classes/Object.xml:337
+#: doc/classes/Object.xml:342
msgid "Returns [code]true[/code] if signal emission blocking is enabled."
msgstr ""
-#: doc/classes/Object.xml:346
+#: doc/classes/Object.xml:351
msgid ""
"Returns [code]true[/code] if the object inherits from the given [code]class[/"
"code]."
msgstr ""
-#: doc/classes/Object.xml:357
+#: doc/classes/Object.xml:362
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32789,13 +33375,13 @@ msgid ""
"code], [code]target[/code], and [code]method[/code]."
msgstr ""
-#: doc/classes/Object.xml:365
+#: doc/classes/Object.xml:370
msgid ""
"Returns [code]true[/code] if the [method Node.queue_free] method was called "
"for the object."
msgstr ""
-#: doc/classes/Object.xml:376
+#: doc/classes/Object.xml:381
msgid ""
"Send a given notification to the object, which will also trigger a call to "
"the [method _notification] method of all classes that the object inherits "
@@ -32807,34 +33393,42 @@ msgid ""
"and then down to its successive inheriting classes."
msgstr ""
-#: doc/classes/Object.xml:384
+#: doc/classes/Object.xml:389
msgid ""
"Notify the editor that the property list has changed, so that editor plugins "
"can take the new values into account. Does nothing on export builds."
msgstr ""
-#: doc/classes/Object.xml:393
+#: doc/classes/Object.xml:398
msgid "Removes a given entry from the object's metadata."
msgstr ""
-#: doc/classes/Object.xml:404
+#: doc/classes/Object.xml:409
msgid ""
"Assigns a new value to the given property. If the [code]property[/code] does "
-"not exist, nothing will happen."
+"not exist, nothing will happen.\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:413
+#: doc/classes/Object.xml:419
msgid "If set to [code]true[/code], signal emission is blocked."
msgstr ""
-#: doc/classes/Object.xml:424
+#: doc/classes/Object.xml:430
msgid ""
"Assigns a new value to the given property, after the current frame's physics "
"step. This is equivalent to calling [method set] via [method call_deferred], "
-"i.e. [code]call_deferred(\"set\", property, value)[/code]."
+"i.e. [code]call_deferred(\"set\", property, value)[/code].\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:435
+#: doc/classes/Object.xml:442
msgid ""
"Assigns a new value to the property identified by the [NodePath]. The node "
"path should be relative to the current object and can use the colon "
@@ -32846,19 +33440,19 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:449
+#: doc/classes/Object.xml:456
msgid ""
"Defines whether the object can translate strings (with calls to [method "
"tr]). Enabled by default."
msgstr ""
-#: doc/classes/Object.xml:460
+#: doc/classes/Object.xml:467
msgid ""
"Adds or changes a given entry in the object's metadata. Metadata are "
"serialized, and can take any [Variant] value."
msgstr ""
-#: doc/classes/Object.xml:469
+#: doc/classes/Object.xml:476
msgid ""
"Assigns a script to the object. Each object can have a single script "
"assigned to it, which are used to extend its functionality.\n"
@@ -32867,7 +33461,7 @@ msgid ""
"_init] method will be called."
msgstr ""
-#: doc/classes/Object.xml:477
+#: doc/classes/Object.xml:484
msgid ""
"Returns a [String] representing the object. If not overridden, defaults to "
"[code]\"[ClassName:RID]\"[/code].\n"
@@ -32875,7 +33469,7 @@ msgid ""
"representation."
msgstr ""
-#: doc/classes/Object.xml:487
+#: doc/classes/Object.xml:494
msgid ""
"Translates a message using translation catalogs configured in the Project "
"Settings.\n"
@@ -32884,35 +33478,35 @@ msgid ""
"set_message_translation]."
msgstr ""
-#: doc/classes/Object.xml:495
+#: doc/classes/Object.xml:502
msgid "Emitted whenever the object's script is changed."
msgstr ""
-#: doc/classes/Object.xml:501
+#: doc/classes/Object.xml:508
msgid "Called right when the object is initialized. Not available in script."
msgstr ""
-#: doc/classes/Object.xml:504
+#: doc/classes/Object.xml:511
msgid "Called before the object is about to be deleted."
msgstr ""
-#: doc/classes/Object.xml:507
+#: doc/classes/Object.xml:514
msgid ""
"Connects a signal in deferred mode. This way, signal emissions are stored in "
"a queue, then set on idle time."
msgstr ""
-#: doc/classes/Object.xml:510
+#: doc/classes/Object.xml:517
msgid "Persisting connections are saved when the object is serialized to file."
msgstr ""
-#: doc/classes/Object.xml:513
+#: doc/classes/Object.xml:520
msgid "One-shot connections disconnect themselves after emission."
msgstr ""
-#: doc/classes/Object.xml:516
+#: doc/classes/Object.xml:523
msgid ""
-"Connect a signal as reference counted. This means that a given signal can be "
+"Connect a signal as reference-counted. This means that a given signal can be "
"connected several times to the same target, and will only be fully "
"disconnected once no references are left."
msgstr ""
@@ -33377,10 +33971,29 @@ msgid "Returns the keycode of the given string (e.g. \"Escape\")."
msgstr ""
#: doc/classes/OS.xml:115
-msgid "Returns the command line arguments passed to the engine."
+msgid ""
+"Returns the command-line arguments passed to the engine.\n"
+"Command-line arguments can be written in any form, including both [code]--"
+"key value[/code] and [code]--key=value[/code] forms so they can be properly "
+"parsed, as long as custom command-line arguments do not conflict with engine "
+"arguments.\n"
+"You can also incorporate environment variables using the [method "
+"get_environment] method.\n"
+"You can set [code]editor/main_run_args[/code] in the Project Settings to "
+"define command-line arguments to be passed by the editor when running the "
+"project.\n"
+"Here's a minimal example on how to parse command-line arguments into a "
+"dictionary using the [code]--key=value[/code] form for arguments:\n"
+"[codeblock]\n"
+"var arguments = {}\n"
+"for argument in OS.get_cmdline_args():\n"
+" if argument.find(\"=\") > -1:\n"
+" var key_value = argument.split(\"=\")\n"
+" arguments[key_value[0].lstrip(\"--\")] = key_value[1]\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/OS.xml:122
+#: doc/classes/OS.xml:133
msgid ""
"Returns an array of MIDI device names.\n"
"The returned array will be empty if the system MIDI driver has not "
@@ -33388,14 +34001,14 @@ msgid ""
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:133
+#: doc/classes/OS.xml:144
msgid ""
"Returns current date as a dictionary of keys: [code]year[/code], "
"[code]month[/code], [code]day[/code], [code]weekday[/code], [code]dst[/code] "
"(Daylight Savings Time)."
msgstr ""
-#: doc/classes/OS.xml:142
+#: doc/classes/OS.xml:153
msgid ""
"Returns current datetime as a dictionary of keys: [code]year[/code], "
"[code]month[/code], [code]day[/code], [code]weekday[/code], [code]dst[/code] "
@@ -33403,7 +34016,7 @@ msgid ""
"[code]second[/code]."
msgstr ""
-#: doc/classes/OS.xml:151
+#: doc/classes/OS.xml:162
msgid ""
"Gets a dictionary of time values corresponding to the given UNIX epoch time "
"(in seconds).\n"
@@ -33412,22 +34025,22 @@ msgid ""
"the epoch."
msgstr ""
-#: doc/classes/OS.xml:161
+#: doc/classes/OS.xml:172
msgid "Returns an environment variable."
msgstr ""
-#: doc/classes/OS.xml:168
+#: doc/classes/OS.xml:179
msgid "Returns the path to the current engine executable."
msgstr ""
-#: doc/classes/OS.xml:175
+#: doc/classes/OS.xml:186
msgid ""
"With this function you can get the list of dangerous permissions that have "
"been granted to the Android application.\n"
"[b]Note:[/b] This method is implemented on Android."
msgstr ""
-#: doc/classes/OS.xml:185
+#: doc/classes/OS.xml:196
msgid ""
"Returns the given keycode as a string (e.g. Return values: [code]\"Escape\"[/"
"code], [code]\"Shift+Escape\"[/code]).\n"
@@ -33435,18 +34048,18 @@ msgid ""
"get_keycode_with_modifiers]."
msgstr ""
-#: doc/classes/OS.xml:193
+#: doc/classes/OS.xml:204
msgid "Returns the host OS locale."
msgstr ""
-#: doc/classes/OS.xml:200
+#: doc/classes/OS.xml:211
msgid ""
"Returns the model name of the current device.\n"
"[b]Note:[/b] This method is implemented on Android and iOS. Returns "
"[code]\"GenericDevice\"[/code] on unsupported platforms."
msgstr ""
-#: doc/classes/OS.xml:208
+#: doc/classes/OS.xml:219
msgid ""
"Returns the name of the host OS. Possible values are: [code]\"Android\"[/"
"code], [code]\"iOS\"[/code], [code]\"HTML5\"[/code], [code]\"OSX\"[/code], "
@@ -33454,81 +34067,81 @@ msgid ""
"[code]\"X11\"[/code]."
msgstr ""
-#: doc/classes/OS.xml:215
+#: doc/classes/OS.xml:226
msgid ""
"Returns the project's process ID.\n"
"[b]Note:[/b] This method is implemented on Android, iOS, Linux, macOS and "
"Windows."
msgstr ""
-#: doc/classes/OS.xml:223
+#: doc/classes/OS.xml:234
msgid "Returns the number of threads available on the host machine."
msgstr ""
-#: doc/classes/OS.xml:230
+#: doc/classes/OS.xml:241
msgid ""
"Returns the amount of time in milliseconds it took for the boot logo to "
"appear."
msgstr ""
-#: doc/classes/OS.xml:237
+#: doc/classes/OS.xml:248
msgid "Returns the maximum amount of static memory used (only works in debug)."
msgstr ""
-#: doc/classes/OS.xml:244
+#: doc/classes/OS.xml:255
msgid "Returns the amount of static memory being used by the program in bytes."
msgstr ""
-#: doc/classes/OS.xml:253
+#: doc/classes/OS.xml:264
msgid ""
"Returns the actual path to commonly used folders across different platforms. "
"Available locations are specified in [enum SystemDir].\n"
"[b]Note:[/b] This method is implemented on Android, Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:261
+#: doc/classes/OS.xml:272
msgid ""
"Returns the total number of available tablet drivers.\n"
"[b]Note:[/b] This method is implemented on Windows."
msgstr ""
-#: doc/classes/OS.xml:271
+#: doc/classes/OS.xml:282
msgid ""
"Returns the tablet driver name for the given index.\n"
"[b]Note:[/b] This method is implemented on Windows."
msgstr ""
-#: doc/classes/OS.xml:279
+#: doc/classes/OS.xml:290
msgid ""
"Returns the amount of time passed in milliseconds since the engine started."
msgstr ""
-#: doc/classes/OS.xml:286
+#: doc/classes/OS.xml:297
msgid ""
"Returns the amount of time passed in microseconds since the engine started."
msgstr ""
-#: doc/classes/OS.xml:295
+#: doc/classes/OS.xml:306
msgid "Returns current time as a dictionary of keys: hour, minute, second."
msgstr ""
-#: doc/classes/OS.xml:302
+#: doc/classes/OS.xml:313
msgid ""
"Returns the current time zone as a dictionary with the keys: bias and name."
msgstr ""
-#: doc/classes/OS.xml:309
+#: doc/classes/OS.xml:320
msgid ""
"Returns a string that is unique to the device.\n"
"[b]Note:[/b] Returns an empty string on HTML5 and UWP, as this method isn't "
"implemented on those platforms yet."
msgstr ""
-#: doc/classes/OS.xml:317
+#: doc/classes/OS.xml:328
msgid "Returns the current UNIX epoch timestamp."
msgstr ""
-#: doc/classes/OS.xml:326
+#: doc/classes/OS.xml:337
msgid ""
"Gets an epoch time value from a dictionary of time values.\n"
"[code]datetime[/code] must be populated with the following keys: [code]year[/"
@@ -33539,7 +34152,7 @@ msgid ""
"ignored."
msgstr ""
-#: doc/classes/OS.xml:335
+#: doc/classes/OS.xml:346
msgid ""
"Returns the absolute directory path where user data is written ([code]user://"
"[/code]).\n"
@@ -33557,11 +34170,11 @@ msgid ""
"[/code]."
msgstr ""
-#: doc/classes/OS.xml:348
+#: doc/classes/OS.xml:359
msgid "Returns [code]true[/code] if an environment variable exists."
msgstr ""
-#: doc/classes/OS.xml:357
+#: doc/classes/OS.xml:368
msgid ""
"Returns [code]true[/code] if the feature for the given feature tag is "
"supported in the currently running instance, depending on platform, build "
@@ -33572,7 +34185,7 @@ msgid ""
"[b]Note:[/b] Tag names are case-sensitive."
msgstr ""
-#: doc/classes/OS.xml:365
+#: doc/classes/OS.xml:376
msgid ""
"Returns [code]true[/code] if the Godot binary used to run the project is a "
"[i]debug[/i] export template, or when running in the editor.\n"
@@ -33583,26 +34196,26 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/OS.xml:376
+#: doc/classes/OS.xml:387
msgid ""
"Returns [code]true[/code] if the input keycode corresponds to a Unicode "
"character."
msgstr ""
-#: doc/classes/OS.xml:383
+#: doc/classes/OS.xml:394
msgid ""
"Returns [code]true[/code] if the engine was executed with [code]-v[/code] "
"(verbose stdout)."
msgstr ""
-#: doc/classes/OS.xml:390
+#: doc/classes/OS.xml:401
msgid ""
"If [code]true[/code], the [code]user://[/code] file system is persistent, so "
"that its state is the same after a player quits and starts the game again. "
"Relevant to the HTML5 platform, where this persistence may be unavailable."
msgstr ""
-#: doc/classes/OS.xml:399
+#: doc/classes/OS.xml:410
msgid ""
"Kill (terminate) the process identified by the given process ID ([code]pid[/"
"code]), e.g. the one returned by [method execute] in non-blocking mode.\n"
@@ -33612,37 +34225,37 @@ msgid ""
"Windows."
msgstr ""
-#: doc/classes/OS.xml:408
+#: doc/classes/OS.xml:419
msgid ""
"Initialises the singleton for the system MIDI driver.\n"
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:418
+#: doc/classes/OS.xml:429
msgid ""
"Shows all resources in the game. Optionally, the list can be written to a "
"file by specifying a file path in [code]tofile[/code]."
msgstr ""
-#: doc/classes/OS.xml:425
+#: doc/classes/OS.xml:436
msgid "Shows the list of loaded textures sorted by size in memory."
msgstr ""
-#: doc/classes/OS.xml:434
+#: doc/classes/OS.xml:445
msgid "Shows the number of resources loaded by the game of the given types."
msgstr ""
-#: doc/classes/OS.xml:443
+#: doc/classes/OS.xml:454
msgid "Shows all resources currently used by the game."
msgstr ""
-#: doc/classes/OS.xml:452
+#: doc/classes/OS.xml:463
msgid ""
"At the moment this function is only used by [code]AudioDriverOpenSL[/code] "
"to request permission for [code]RECORD_AUDIO[/code] on Android."
msgstr ""
-#: doc/classes/OS.xml:459
+#: doc/classes/OS.xml:470
msgid ""
"With this function you can request dangerous permissions since normal "
"permissions are automatically granted at install time in Android "
@@ -33650,15 +34263,15 @@ msgid ""
"[b]Note:[/b] This method is implemented on Android."
msgstr ""
-#: doc/classes/OS.xml:469
+#: doc/classes/OS.xml:480
msgid "Sets the name of the current thread."
msgstr ""
-#: doc/classes/OS.xml:478
+#: doc/classes/OS.xml:489
msgid "Enables backup saves if [code]enabled[/code] is [code]true[/code]."
msgstr ""
-#: doc/classes/OS.xml:487
+#: doc/classes/OS.xml:498
msgid ""
"Requests the OS to open a resource with the most appropriate program. For "
"example:\n"
@@ -33677,7 +34290,7 @@ msgid ""
"and Windows."
msgstr ""
-#: doc/classes/OS.xml:498
+#: doc/classes/OS.xml:509
msgid ""
"The exit code passed to the OS when the main loop exits. By convention, an "
"exit code of [code]0[/code] indicates success whereas a non-zero exit code "
@@ -33687,137 +34300,137 @@ msgid ""
"with an [code]exit_code[/code] argument passed."
msgstr ""
-#: doc/classes/OS.xml:502
+#: doc/classes/OS.xml:513
msgid ""
"If [code]true[/code], the engine optimizes for low processor usage by only "
"refreshing the screen if needed. Can improve battery consumption on mobile."
msgstr ""
-#: doc/classes/OS.xml:505
+#: doc/classes/OS.xml:516
msgid ""
"The amount of sleeping between frames when the low-processor usage mode is "
"enabled (in microseconds). Higher values will result in lower CPU usage."
msgstr ""
-#: doc/classes/OS.xml:508
-msgid "The current tablet drvier in use."
+#: doc/classes/OS.xml:519
+msgid "The current tablet driver in use."
msgstr ""
-#: doc/classes/OS.xml:513
+#: doc/classes/OS.xml:524
msgid ""
"The GLES2 rendering backend. It uses OpenGL ES 2.0 on mobile devices, OpenGL "
"2.1 on desktop platforms and WebGL 1.0 on the web."
msgstr ""
-#: doc/classes/OS.xml:516
+#: doc/classes/OS.xml:527
msgid "The Vulkan rendering backend."
msgstr ""
-#: doc/classes/OS.xml:519
+#: doc/classes/OS.xml:530
msgid "Sunday."
msgstr ""
-#: doc/classes/OS.xml:522
+#: doc/classes/OS.xml:533
msgid "Monday."
msgstr ""
-#: doc/classes/OS.xml:525
+#: doc/classes/OS.xml:536
msgid "Tuesday."
msgstr ""
-#: doc/classes/OS.xml:528
+#: doc/classes/OS.xml:539
msgid "Wednesday."
msgstr ""
-#: doc/classes/OS.xml:531
+#: doc/classes/OS.xml:542
msgid "Thursday."
msgstr ""
-#: doc/classes/OS.xml:534
+#: doc/classes/OS.xml:545
msgid "Friday."
msgstr ""
-#: doc/classes/OS.xml:537
+#: doc/classes/OS.xml:548
msgid "Saturday."
msgstr ""
-#: doc/classes/OS.xml:540
+#: doc/classes/OS.xml:551
msgid "January."
msgstr ""
-#: doc/classes/OS.xml:543
+#: doc/classes/OS.xml:554
msgid "February."
msgstr ""
-#: doc/classes/OS.xml:546
+#: doc/classes/OS.xml:557
msgid "March."
msgstr ""
-#: doc/classes/OS.xml:549
+#: doc/classes/OS.xml:560
msgid "April."
msgstr ""
-#: doc/classes/OS.xml:552
+#: doc/classes/OS.xml:563
msgid "May."
msgstr ""
-#: doc/classes/OS.xml:555
+#: doc/classes/OS.xml:566
msgid "June."
msgstr ""
-#: doc/classes/OS.xml:558
+#: doc/classes/OS.xml:569
msgid "July."
msgstr ""
-#: doc/classes/OS.xml:561
+#: doc/classes/OS.xml:572
msgid "August."
msgstr ""
-#: doc/classes/OS.xml:564
+#: doc/classes/OS.xml:575
msgid "September."
msgstr ""
-#: doc/classes/OS.xml:567
+#: doc/classes/OS.xml:578
msgid "October."
msgstr ""
-#: doc/classes/OS.xml:570
+#: doc/classes/OS.xml:581
msgid "November."
msgstr ""
-#: doc/classes/OS.xml:573
+#: doc/classes/OS.xml:584
msgid "December."
msgstr ""
-#: doc/classes/OS.xml:576
+#: doc/classes/OS.xml:587
msgid "Desktop directory path."
msgstr ""
-#: doc/classes/OS.xml:579
+#: doc/classes/OS.xml:590
msgid "DCIM (Digital Camera Images) directory path."
msgstr ""
-#: doc/classes/OS.xml:582
+#: doc/classes/OS.xml:593
msgid "Documents directory path."
msgstr ""
-#: doc/classes/OS.xml:585
+#: doc/classes/OS.xml:596
msgid "Downloads directory path."
msgstr ""
-#: doc/classes/OS.xml:588
+#: doc/classes/OS.xml:599
msgid "Movies directory path."
msgstr ""
-#: doc/classes/OS.xml:591
+#: doc/classes/OS.xml:602
msgid "Music directory path."
msgstr ""
-#: doc/classes/OS.xml:594
+#: doc/classes/OS.xml:605
msgid "Pictures directory path."
msgstr ""
-#: doc/classes/OS.xml:597
+#: doc/classes/OS.xml:608
msgid "Ringtones directory path."
msgstr ""
@@ -33872,7 +34485,15 @@ msgid ""
"should always be preferred."
msgstr ""
-#: doc/classes/PackedByteArray.xml:85
+#: doc/classes/PackedByteArray.xml:87 doc/classes/PackedColorArray.xml:53
+#: doc/classes/PackedFloat32Array.xml:54 doc/classes/PackedFloat64Array.xml:54
+#: doc/classes/PackedInt32Array.xml:54 doc/classes/PackedInt64Array.xml:54
+#: doc/classes/PackedStringArray.xml:53 doc/classes/PackedVector2Array.xml:53
+#: doc/classes/PackedVector3Array.xml:53
+msgid "Returns [code]true[/code] if the array contains [code]value[/code]."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:94
msgid ""
"Returns a hexadecimal representation of this array as a [String].\n"
"[codeblock]\n"
@@ -33881,39 +34502,48 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/PackedByteArray.xml:100 doc/classes/PackedColorArray.xml:55
-#: doc/classes/PackedFloat32Array.xml:56 doc/classes/PackedFloat64Array.xml:56
-#: doc/classes/PackedStringArray.xml:55 doc/classes/PackedVector2Array.xml:55
-#: doc/classes/PackedVector3Array.xml:55
+#: doc/classes/PackedByteArray.xml:109 doc/classes/PackedColorArray.xml:64
+#: doc/classes/PackedFloat32Array.xml:65 doc/classes/PackedFloat64Array.xml:65
+#: doc/classes/PackedStringArray.xml:64 doc/classes/PackedVector2Array.xml:64
+#: doc/classes/PackedVector3Array.xml:64
msgid ""
"Inserts a new element at a given position in the array. The position must be "
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PackedByteArray.xml:134 doc/classes/PackedColorArray.xml:89
-#: doc/classes/PackedFloat32Array.xml:90 doc/classes/PackedFloat64Array.xml:90
-#: doc/classes/PackedInt32Array.xml:90 doc/classes/PackedInt64Array.xml:90
-#: doc/classes/PackedStringArray.xml:89 doc/classes/PackedVector2Array.xml:89
-#: doc/classes/PackedVector3Array.xml:89
+#: doc/classes/PackedByteArray.xml:143 doc/classes/PackedColorArray.xml:98
+#: doc/classes/PackedFloat32Array.xml:99 doc/classes/PackedFloat64Array.xml:99
+#: doc/classes/PackedInt32Array.xml:99 doc/classes/PackedInt64Array.xml:99
+#: doc/classes/PackedStringArray.xml:98 doc/classes/PackedVector2Array.xml:98
+#: doc/classes/PackedVector3Array.xml:98
msgid ""
"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."
msgstr ""
-#: doc/classes/PackedByteArray.xml:145
+#: doc/classes/PackedByteArray.xml:154
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PackedByteArray.xml:152 doc/classes/PackedColorArray.xml:107
-#: doc/classes/PackedFloat32Array.xml:108
-#: doc/classes/PackedFloat64Array.xml:108 doc/classes/PackedStringArray.xml:107
-#: doc/classes/PackedVector2Array.xml:107
-#: doc/classes/PackedVector3Array.xml:107
+#: doc/classes/PackedByteArray.xml:161 doc/classes/PackedColorArray.xml:116
+#: doc/classes/PackedFloat32Array.xml:117
+#: doc/classes/PackedFloat64Array.xml:117 doc/classes/PackedStringArray.xml:116
+#: doc/classes/PackedVector2Array.xml:116
+#: doc/classes/PackedVector3Array.xml:116
msgid "Returns the size of the array."
msgstr ""
-#: doc/classes/PackedByteArray.xml:163
+#: doc/classes/PackedByteArray.xml:168 doc/classes/PackedColorArray.xml:123
+#: doc/classes/PackedFloat32Array.xml:124
+#: doc/classes/PackedFloat64Array.xml:124 doc/classes/PackedInt32Array.xml:124
+#: doc/classes/PackedInt64Array.xml:124 doc/classes/PackedStringArray.xml:123
+#: doc/classes/PackedVector2Array.xml:123
+#: doc/classes/PackedVector3Array.xml:123
+msgid "Sorts the elements of the array in ascending order."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:179
msgid ""
"Returns the slice of the [PackedByteArray] between indices (inclusive) as a "
"new [PackedByteArray]. Any negative index is considered to be from the end "
@@ -33941,12 +34571,12 @@ msgstr ""
msgid "Appends a [PackedColorArray] at the end of this array."
msgstr ""
-#: doc/classes/PackedColorArray.xml:71 doc/classes/PackedInt32Array.xml:72
-#: doc/classes/PackedInt64Array.xml:72
+#: doc/classes/PackedColorArray.xml:80 doc/classes/PackedInt32Array.xml:81
+#: doc/classes/PackedInt64Array.xml:81
msgid "Appends a value to the array."
msgstr ""
-#: doc/classes/PackedColorArray.xml:100
+#: doc/classes/PackedColorArray.xml:109
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -33976,8 +34606,8 @@ msgstr ""
msgid "Appends a [PackedFloat32Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedFloat32Array.xml:101
-#: doc/classes/PackedFloat64Array.xml:101
+#: doc/classes/PackedFloat32Array.xml:110
+#: doc/classes/PackedFloat64Array.xml:110
msgid "Changes the float at the given index."
msgstr ""
@@ -34030,17 +34660,17 @@ msgstr ""
msgid "Appends a [PackedInt32Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:56 doc/classes/PackedInt64Array.xml:56
+#: doc/classes/PackedInt32Array.xml:65 doc/classes/PackedInt64Array.xml:65
msgid ""
"Inserts a new integer at a given position in the array. The position must be "
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:101 doc/classes/PackedInt64Array.xml:101
+#: doc/classes/PackedInt32Array.xml:110 doc/classes/PackedInt64Array.xml:110
msgid "Changes the integer at the given index."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:108 doc/classes/PackedInt64Array.xml:108
+#: doc/classes/PackedInt32Array.xml:117 doc/classes/PackedInt64Array.xml:117
msgid "Returns the array size."
msgstr ""
@@ -34081,6 +34711,14 @@ msgid ""
"Can be used to save a node to a file. When saving, the node as well as all "
"the node it owns get saved (see [code]owner[/code] property on [Node]).\n"
"[b]Note:[/b] The node doesn't need to own itself.\n"
+"[b]Example of loading a saved scene:[/b]\n"
+"[codeblock]\n"
+"# Use `load()` instead of `preload()` if the path isn't known at compile-"
+"time.\n"
+"var scene = preload(\"res://scene.tscn\").instance()\n"
+"# Add the node as a child of the node the script is attached to.\n"
+"add_child(scene)\n"
+"[/codeblock]\n"
"[b]Example of saving a node with different owners:[/b] The following example "
"creates 3 objects: [code]Node2D[/code] ([code]node[/code]), "
"[code]RigidBody2D[/code] ([code]rigid[/code]) and [code]CollisionObject2D[/"
@@ -34112,29 +34750,29 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/PackedScene.xml:40
+#: doc/classes/PackedScene.xml:47
msgid "Returns [code]true[/code] if the scene file has nodes."
msgstr ""
-#: doc/classes/PackedScene.xml:47
+#: doc/classes/PackedScene.xml:54
msgid ""
"Returns the [code]SceneState[/code] representing the scene file contents."
msgstr ""
-#: doc/classes/PackedScene.xml:56
+#: doc/classes/PackedScene.xml:63
msgid ""
"Instantiates the scene's node hierarchy. Triggers child scene "
"instantiation(s). Triggers a [constant Node.NOTIFICATION_INSTANCED] "
"notification on the root node."
msgstr ""
-#: doc/classes/PackedScene.xml:65
+#: doc/classes/PackedScene.xml:72
msgid ""
"Pack will ignore any sub-nodes not owned by given node. See [member Node."
"owner]."
msgstr ""
-#: doc/classes/PackedScene.xml:71
+#: doc/classes/PackedScene.xml:78
msgid ""
"A dictionary representation of the scene contents.\n"
"Available keys include \"rnames\" and \"variants\" for resources, "
@@ -34143,18 +34781,18 @@ msgid ""
"connections, and \"version\" for the format style of the PackedScene."
msgstr ""
-#: doc/classes/PackedScene.xml:77
+#: doc/classes/PackedScene.xml:84
msgid "If passed to [method instance], blocks edits to the scene state."
msgstr ""
-#: doc/classes/PackedScene.xml:80
+#: doc/classes/PackedScene.xml:87
msgid ""
"If passed to [method instance], provides local scene resources to the local "
"scene.\n"
"[b]Note:[/b] Only available in editor builds."
msgstr ""
-#: doc/classes/PackedScene.xml:84
+#: doc/classes/PackedScene.xml:91
msgid ""
"If passed to [method instance], provides local scene resources to the local "
"scene. Only the main scene should receive the main edit state.\n"
@@ -34182,11 +34820,11 @@ msgstr ""
msgid "Appends a [PackedStringArray] at the end of this array."
msgstr ""
-#: doc/classes/PackedStringArray.xml:71
+#: doc/classes/PackedStringArray.xml:80
msgid "Appends a string element at end of the array."
msgstr ""
-#: doc/classes/PackedStringArray.xml:100
+#: doc/classes/PackedStringArray.xml:109
msgid "Changes the [String] at the given index."
msgstr ""
@@ -34211,11 +34849,11 @@ msgstr ""
msgid "Appends a [PackedVector2Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedVector2Array.xml:71
+#: doc/classes/PackedVector2Array.xml:80
msgid "Inserts a [Vector2] at the end."
msgstr ""
-#: doc/classes/PackedVector2Array.xml:100
+#: doc/classes/PackedVector2Array.xml:109
msgid "Changes the [Vector2] at the given index."
msgstr ""
@@ -34240,11 +34878,11 @@ msgstr ""
msgid "Appends a [PackedVector3Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedVector3Array.xml:71
+#: doc/classes/PackedVector3Array.xml:80
msgid "Inserts a [Vector3] at the end."
msgstr ""
-#: doc/classes/PackedVector3Array.xml:100
+#: doc/classes/PackedVector3Array.xml:109
msgid "Changes the [Vector3] at the given index."
msgstr ""
@@ -35135,13 +35773,55 @@ msgid ""
"as the values displayed in the [b]Monitor[/b] tab in the editor's "
"[b]Debugger[/b] panel. By using the [method get_monitor] method of this "
"class, you can access this data from your code.\n"
+"You can add custom monitors using the [method add_custom_monitor] method. "
+"Custom monitors are available in [b]Monitor[/b] tab in the editor's "
+"[b]Debugger[/b] panel together with built-in monitors.\n"
"[b]Note:[/b] A few of these monitors are only available in debug mode and "
"will always return 0 when used in a release build.\n"
"[b]Note:[/b] Many of these monitors are not updated in real-time, so there "
-"may be a short delay between changes."
+"may be a short delay between changes.\n"
+"[b]Note:[/b] Custom monitors do not support negative values. Negative values "
+"are clamped to 0."
+msgstr ""
+
+#: doc/classes/Performance.xml:26
+msgid ""
+"Adds a custom monitor with name same as id. You can specify the category of "
+"monitor using '/' in id. If there are more than one '/' then default "
+"category is used. Default category is \"Custom\".\n"
+"[codeblock]\n"
+"Performance.add_custom_monitor(\"MyCategory/MyMonitor\", some_callable) # "
+"Adds monitor with name \"MyName\" to category \"MyCategory\"\n"
+"Performance.add_custom_monitor(\"MyMonitor\", some_callable) # Adds monitor "
+"with name \"MyName\" to category \"Custom\"\n"
+"# Note: \"MyCategory/MyMonitor\" and \"MyMonitor\" have same name but "
+"different ids so above code is valid\n"
+"Performance.add_custom_monitor(\"Custom/MyMonitor\", some_callable) # Adds "
+"monitor with name \"MyName\" to category \"Custom\"\n"
+"# Note: \"MyMonitor\" and \"Custom/MyMonitor\" have same name and same "
+"category but different ids so above code is valid\n"
+"Performance.add_custom_monitor(\"MyCategoryOne/MyCategoryTwo/MyMonitor\", "
+"some_callable) # Adds monitor with name \"MyCategoryOne/MyCategoryTwo/"
+"MyMonitor\" to category \"Custom\"\n"
+"[/codeblock]\n"
+"The debugger calls the callable to get the value of custom monitor. The "
+"callable must return a number.\n"
+"Callables are called with arguments supplied in argument array.\n"
+"[b]Note:[/b] It throws an error if given id is already present."
+msgstr ""
+
+#: doc/classes/Performance.xml:46
+msgid ""
+"Returns the value of custom monitor with given id. The callable is called to "
+"get the value of custom monitor.\n"
+"[b]Note:[/b] It throws an error if the given id is absent."
+msgstr ""
+
+#: doc/classes/Performance.xml:54
+msgid "Returns the names of active custom monitors in an array."
msgstr ""
-#: doc/classes/Performance.xml:20
+#: doc/classes/Performance.xml:63
msgid ""
"Returns the value of one of the available monitors. You should provide one "
"of the [enum Monitor] constants as the argument, like this:\n"
@@ -35151,123 +35831,139 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Performance.xml:29
+#: doc/classes/Performance.xml:73
+msgid "Returns the last tick in which custom monitor was added/removed."
+msgstr ""
+
+#: doc/classes/Performance.xml:82
+msgid ""
+"Returns true if custom monitor with the given id is present otherwise "
+"returns false."
+msgstr ""
+
+#: doc/classes/Performance.xml:91
+msgid ""
+"Removes the custom monitor with given id.\n"
+"[b]Note:[/b] It throws an error if the given id is already absent."
+msgstr ""
+
+#: doc/classes/Performance.xml:98
msgid "Number of frames per second."
msgstr ""
-#: doc/classes/Performance.xml:32
+#: doc/classes/Performance.xml:101
msgid "Time it took to complete one frame, in seconds."
msgstr ""
-#: doc/classes/Performance.xml:35
+#: doc/classes/Performance.xml:104
msgid "Time it took to complete one physics frame, in seconds."
msgstr ""
-#: doc/classes/Performance.xml:38
+#: doc/classes/Performance.xml:107
msgid ""
"Static memory currently used, in bytes. Not available in release builds."
msgstr ""
-#: doc/classes/Performance.xml:41
+#: doc/classes/Performance.xml:110
msgid "Available static memory. Not available in release builds."
msgstr ""
-#: doc/classes/Performance.xml:44
+#: doc/classes/Performance.xml:113
msgid ""
"Largest amount of memory the message queue buffer has used, in bytes. The "
"message queue is used for deferred functions calls and notifications."
msgstr ""
-#: doc/classes/Performance.xml:47
+#: doc/classes/Performance.xml:116
msgid "Number of objects currently instanced (including nodes)."
msgstr ""
-#: doc/classes/Performance.xml:50
+#: doc/classes/Performance.xml:119
msgid "Number of resources currently used."
msgstr ""
-#: doc/classes/Performance.xml:53
+#: doc/classes/Performance.xml:122
msgid ""
"Number of nodes currently instanced in the scene tree. This also includes "
"the root node."
msgstr ""
-#: doc/classes/Performance.xml:56
+#: doc/classes/Performance.xml:125
msgid ""
"Number of orphan nodes, i.e. nodes which are not parented to a node of the "
"scene tree."
msgstr ""
-#: doc/classes/Performance.xml:59
+#: doc/classes/Performance.xml:128
msgid "3D objects drawn per frame."
msgstr ""
-#: doc/classes/Performance.xml:62
+#: doc/classes/Performance.xml:131
msgid "Vertices drawn per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:65
+#: doc/classes/Performance.xml:134
msgid "Material changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:68
+#: doc/classes/Performance.xml:137
msgid "Shader changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:71
+#: doc/classes/Performance.xml:140
msgid "Render surface changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:74
+#: doc/classes/Performance.xml:143
msgid "Draw calls per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:77 doc/classes/RenderingServer.xml:3805
+#: doc/classes/Performance.xml:146 doc/classes/RenderingServer.xml:3816
msgid ""
"The amount of video memory used, i.e. texture and vertex memory combined."
msgstr ""
-#: doc/classes/Performance.xml:80 doc/classes/RenderingServer.xml:3808
+#: doc/classes/Performance.xml:149 doc/classes/RenderingServer.xml:3819
msgid "The amount of texture memory used."
msgstr ""
-#: doc/classes/Performance.xml:83 doc/classes/RenderingServer.xml:3811
+#: doc/classes/Performance.xml:152 doc/classes/RenderingServer.xml:3822
msgid "The amount of vertex memory used."
msgstr ""
-#: doc/classes/Performance.xml:86 doc/classes/RenderingServer.xml:3802
+#: doc/classes/Performance.xml:155 doc/classes/RenderingServer.xml:3813
msgid "Unimplemented in the GLES2 rendering backend, always returns 0."
msgstr ""
-#: doc/classes/Performance.xml:89
+#: doc/classes/Performance.xml:158
msgid "Number of active [RigidBody2D] nodes in the game."
msgstr ""
-#: doc/classes/Performance.xml:92
+#: doc/classes/Performance.xml:161
msgid "Number of collision pairs in the 2D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:95
+#: doc/classes/Performance.xml:164
msgid "Number of islands in the 2D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:98
+#: doc/classes/Performance.xml:167
msgid "Number of active [RigidBody3D] and [VehicleBody3D] nodes in the game."
msgstr ""
-#: doc/classes/Performance.xml:101
+#: doc/classes/Performance.xml:170
msgid "Number of collision pairs in the 3D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:104
+#: doc/classes/Performance.xml:173
msgid "Number of islands in the 3D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:107
+#: doc/classes/Performance.xml:176
msgid "Output latency of the [AudioServer]."
msgstr ""
-#: doc/classes/Performance.xml:110
+#: doc/classes/Performance.xml:179
msgid "Represents the size of the [enum Monitor] enum."
msgstr ""
@@ -35291,27 +35987,27 @@ msgstr ""
msgid "Damps the body's rotation if greater than [code]0[/code]."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:70 doc/classes/RigidBody3D.xml:132
+#: doc/classes/PhysicalBone3D.xml:70 doc/classes/RigidBody3D.xml:139
msgid "Lock the body's rotation in the X axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:73 doc/classes/RigidBody3D.xml:135
+#: doc/classes/PhysicalBone3D.xml:73 doc/classes/RigidBody3D.xml:142
msgid "Lock the body's rotation in the Y axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:76 doc/classes/RigidBody3D.xml:138
+#: doc/classes/PhysicalBone3D.xml:76 doc/classes/RigidBody3D.xml:145
msgid "Lock the body's rotation in the Z axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:79 doc/classes/RigidBody3D.xml:141
+#: doc/classes/PhysicalBone3D.xml:79 doc/classes/RigidBody3D.xml:148
msgid "Lock the body's movement in the X axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:82 doc/classes/RigidBody3D.xml:144
+#: doc/classes/PhysicalBone3D.xml:82 doc/classes/RigidBody3D.xml:151
msgid "Lock the body's movement in the Y axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:85 doc/classes/RigidBody3D.xml:147
+#: doc/classes/PhysicalBone3D.xml:85 doc/classes/RigidBody3D.xml:154
msgid "Lock the body's movement in the Z axis."
msgstr ""
@@ -35366,12 +36062,12 @@ msgstr ""
msgid "Damps the body's movement if greater than [code]0[/code]."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:118 doc/classes/RigidBody2D.xml:158
-#: doc/classes/RigidBody3D.xml:175
+#: doc/classes/PhysicalBone3D.xml:118 doc/classes/RigidBody2D.xml:159
+#: doc/classes/RigidBody3D.xml:183
msgid "The body's mass."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:121 doc/classes/RigidBody3D.xml:188
+#: doc/classes/PhysicalBone3D.xml:121 doc/classes/RigidBody3D.xml:196
msgid ""
"The body's weight based on its mass and the global 3D gravity. Global values "
"are set in [b]Project > Project Settings > Physics > 3d[/b]."
@@ -35678,7 +36374,7 @@ msgid "The inverse of the mass of the body."
msgstr ""
#: doc/classes/PhysicsDirectBodyState2D.xml:195
-#: doc/classes/PhysicsDirectBodyState3D.xml:198 doc/classes/RigidBody2D.xml:155
+#: doc/classes/PhysicsDirectBodyState3D.xml:198 doc/classes/RigidBody2D.xml:156
msgid "The body's linear velocity."
msgstr ""
@@ -36231,7 +36927,7 @@ msgid ""
msgstr ""
#: doc/classes/PhysicsServer2D.xml:620 doc/classes/PhysicsServer3D.xml:637
-#: doc/classes/RigidBody3D.xml:120
+#: doc/classes/RigidBody3D.xml:127
msgid ""
"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."
@@ -37296,47 +37992,64 @@ msgid ""
"collision queries. See also [PhysicsShapeQueryResult2D]."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:18
-msgid ""
-"Sets the [Shape2D] that will be used for collision/intersection queries."
-msgstr ""
-
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:24
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:15
msgid "If [code]true[/code], the query will take [Area2D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:18
msgid ""
"If [code]true[/code], the query will take [PhysicsBody2D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:30
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:30
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:21
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:21
msgid "The physics layer(s) the query will take into account (as a bitmask)."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:33
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:33
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:24
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:24
msgid ""
"The list of objects or object [RID]s that will be excluded from collisions."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:36
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:36 doc/classes/Shape3D.xml:16
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:27 doc/classes/Shape3D.xml:16
msgid "The collision margin for the shape."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:39
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:30
msgid "The motion of the shape being queried for."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:42
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:39
-msgid "The queried shape's [RID]. See also [method set_shape]."
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:33
+msgid ""
+"The [Shape2D] that will be used for collision/intersection queries. This "
+"stores the actual reference which avoids the shape to be released while "
+"being used for queries, so always prefer using this over [member shape_rid]."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:36
+msgid ""
+"The queried shape's [RID] that will be used for collision/intersection "
+"queries. Use this over [member shape] if you want to optimize for "
+"performance using the Servers API:\n"
+"[codeblock]\n"
+"var shape_rid = PhysicsServer2D.circle_shape_create()\n"
+"var radius = 64\n"
+"PhysicsServer2D.shape_set_data(shape_rid, radius)\n"
+"\n"
+"var params = PhysicsShapeQueryParameters2D.new()\n"
+"params.shape_rid = shape_rid\n"
+"\n"
+"# Execute physics queries here...\n"
+"\n"
+"# Release the shape when done with physics queries.\n"
+"PhysicsServer2D.free_rid(shape_rid)\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:45
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:42
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:52
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:49
msgid "The queried shape's transform matrix."
msgstr ""
@@ -37350,18 +38063,40 @@ msgid ""
"collision queries. See also [PhysicsShapeQueryResult3D]."
msgstr ""
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:15
+msgid "If [code]true[/code], the query will take [Area3D]s into account."
+msgstr ""
+
#: doc/classes/PhysicsShapeQueryParameters3D.xml:18
msgid ""
-"Sets the [Shape3D] that will be used for collision/intersection queries."
+"If [code]true[/code], the query will take [PhysicsBody3D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:24
-msgid "If [code]true[/code], the query will take [Area3D]s into account."
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:30
+msgid ""
+"The [Shape3D] that will be used for collision/intersection queries. This "
+"stores the actual reference which avoids the shape to be released while "
+"being used for queries, so always prefer using this over [member shape_rid]."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:33
msgid ""
-"If [code]true[/code], the query will take [PhysicsBody3D]s into account."
+"The queried shape's [RID] that will be used for collision/intersection "
+"queries. Use this over [member shape] if you want to optimize for "
+"performance using the Servers API:\n"
+"[codeblock]\n"
+"var shape_rid = PhysicsServer3D.shape_create(PhysicsServer3D.SHAPE_SPHERE)\n"
+"var radius = 2.0\n"
+"PhysicsServer3D.shape_set_data(shape_rid, radius)\n"
+"\n"
+"var params = PhysicsShapeQueryParameters3D.new()\n"
+"params.shape_rid = shape_rid\n"
+"\n"
+"# Execute physics queries here...\n"
+"\n"
+"# Release the shape when done with physics queries.\n"
+"PhysicsServer3D.free_rid(shape_rid)\n"
+"[/codeblock]"
msgstr ""
#: doc/classes/PhysicsShapeQueryResult2D.xml:4
@@ -37502,92 +38237,94 @@ msgid ""
"code]."
msgstr ""
-#: doc/classes/Plane.xml:72
-msgid "Returns a point on the plane."
-msgstr ""
-
-#: doc/classes/Plane.xml:83
+#: doc/classes/Plane.xml:76
msgid ""
-"Returns [code]true[/code] if [code]point[/code] is inside the plane (by a "
-"very minimum [code]epsilon[/code] threshold)."
+"Returns [code]true[/code] if [code]point[/code] is inside the plane. "
+"Comparison uses a custom minimum [code]epsilon[/code] threshold."
msgstr ""
-#: doc/classes/Plane.xml:94
+#: doc/classes/Plane.xml:87
msgid ""
"Returns the intersection point of the three planes [code]b[/code], [code]c[/"
"code] and this plane. If no intersection is found, [code]null[/code] is "
"returned."
msgstr ""
-#: doc/classes/Plane.xml:105
+#: doc/classes/Plane.xml:98
msgid ""
"Returns the intersection point of a ray consisting of the position "
"[code]from[/code] and the direction normal [code]dir[/code] with this plane. "
"If no intersection is found, [code]null[/code] is returned."
msgstr ""
-#: doc/classes/Plane.xml:116
+#: doc/classes/Plane.xml:109
msgid ""
"Returns the intersection point of a segment from position [code]begin[/code] "
"to position [code]end[/code] with this plane. If no intersection is found, "
"[code]null[/code] is returned."
msgstr ""
-#: doc/classes/Plane.xml:125
+#: doc/classes/Plane.xml:118
msgid ""
"Returns [code]true[/code] if this plane and [code]plane[/code] are "
"approximately equal, by running [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/Plane.xml:134
+#: doc/classes/Plane.xml:127
msgid ""
"Returns [code]true[/code] if [code]point[/code] is located above the plane."
msgstr ""
-#: doc/classes/Plane.xml:141
+#: doc/classes/Plane.xml:134
msgid "Returns a copy of the plane, normalized."
msgstr ""
-#: doc/classes/Plane.xml:150
+#: doc/classes/Plane.xml:143
msgid ""
-"Returns the orthogonal projection of point [code]p[/code] into a point in "
-"the plane."
+"Returns the orthogonal projection of [code]point[/code] into a point in the "
+"plane."
msgstr ""
-#: doc/classes/Plane.xml:156
+#: doc/classes/Plane.xml:149
msgid ""
-"Distance from the origin to the plane, in the direction of [member normal]."
+"The distance from the origin to the plane, in the direction of [member "
+"normal]. This value is typically non-negative.\n"
+"In the scalar equation of the plane [code]ax + by + cz = d[/code], this is "
+"[code]d[/code], while the [code](a, b, c)[/code] coordinates are represented "
+"by the [member normal] property."
msgstr ""
-#: doc/classes/Plane.xml:159
+#: doc/classes/Plane.xml:153
msgid ""
-"The normal of the plane. \"Over\" or \"Above\" the plane is considered the "
-"side of the plane towards where the normal is pointing."
+"The normal of the plane, which must be normalized.\n"
+"In the scalar equation of the plane [code]ax + by + cz = d[/code], this is "
+"the vector [code](a, b, c)[/code], where [code]d[/code] is the [member d] "
+"property."
msgstr ""
-#: doc/classes/Plane.xml:162
-msgid "The [member normal]'s X component."
+#: doc/classes/Plane.xml:157
+msgid "The X component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:165
-msgid "The [member normal]'s Y component."
+#: doc/classes/Plane.xml:160
+msgid "The Y component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:168
-msgid "The [member normal]'s Z component."
+#: doc/classes/Plane.xml:163
+msgid "The Z component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:173
-msgid "A plane that extends in the Y and Z axes."
+#: doc/classes/Plane.xml:168
+msgid "A plane that extends in the Y and Z axes (normal vector points +X)."
msgstr ""
-#: doc/classes/Plane.xml:176
-msgid "A plane that extends in the X and Z axes."
+#: doc/classes/Plane.xml:171
+msgid "A plane that extends in the X and Z axes (normal vector points +Y)."
msgstr ""
-#: doc/classes/Plane.xml:179
-msgid "A plane that extends in the X and Y axes."
+#: doc/classes/Plane.xml:174
+msgid "A plane that extends in the X and Y axes (normal vector points +Z)."
msgstr ""
#: doc/classes/PlaneMesh.xml:4
@@ -38298,18 +39035,25 @@ msgstr ""
#: doc/classes/PrimitiveMesh.xml:16
msgid ""
-"Returns mesh arrays used to constitute surface of [Mesh]. Mesh arrays can be "
-"used with [ArrayMesh] to create new surfaces."
+"Returns mesh arrays used to constitute surface of [Mesh]. The result can be "
+"passed to [method ArrayMesh.add_surface_from_arrays] to create a new "
+"surface. For example:\n"
+"[codeblock]\n"
+"var c := CylinderMesh.new()\n"
+"var arr_mesh := ArrayMesh.new()\n"
+"arr_mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLES, c."
+"get_mesh_arrays())\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:22
+#: doc/classes/PrimitiveMesh.xml:27
msgid ""
"Overrides the [AABB] with one defined by user for use with frustum culling. "
"Especially useful to avoid unnexpected culling when using a shader to "
"offset vertices."
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:25
+#: doc/classes/PrimitiveMesh.xml:30
msgid ""
"If set, the order of the vertices in each triangle are reversed resulting in "
"the backside of the mesh being drawn.\n"
@@ -38317,7 +39061,7 @@ msgid ""
"[member BaseMaterial3D.cull_mode]."
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:29
+#: doc/classes/PrimitiveMesh.xml:34
msgid "The current [Material] of the primitive mesh."
msgstr ""
@@ -38748,11 +39492,17 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:260
msgid ""
+"Safer override for [member audio/output_latency] in the Web platform, to "
+"avoid audio issues especially on mobile devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:263
+msgid ""
"Setting to hardcode audio delay when playing video. Best to leave this "
"untouched unless you know what you are doing."
msgstr ""
-#: doc/classes/ProjectSettings.xml:263
+#: doc/classes/ProjectSettings.xml:266
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -38762,7 +39512,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:269
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -38772,27 +39522,27 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:269
+#: doc/classes/ProjectSettings.xml:272
msgid ""
"The default compression level for Zstandard. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
"speed. Decompression speed is mostly unaffected by the compression level."
msgstr ""
-#: doc/classes/ProjectSettings.xml:272
+#: doc/classes/ProjectSettings.xml:275
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:278
msgid ""
"Largest size limit (in power of 2) allowed when compressing using long-"
"distance matching with Zstandard. Higher values can result in better "
"compression, but will require more memory when compressing and decompressing."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:281
msgid ""
"If [code]true[/code], displays getters and setters in autocompletion results "
"in the script editor. This setting is meant to be used when porting old "
@@ -38800,74 +39550,55 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:281
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:284
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:287
+#: doc/classes/ProjectSettings.xml:294
msgid ""
"If [code]true[/code], enables specific GDScript warnings (see [code]debug/"
"gdscript/warnings/*[/code] settings). If [code]false[/code], disables all "
"GDScript warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
-msgid ""
-"If [code]true[/code], enables warnings when a function is declared with the "
-"same name as a constant."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:296
-msgid ""
-"If [code]true[/code], enables warnings when a function is declared with the "
-"same name as a variable. This will turn into an error in a future version "
-"when first-class functions become supported in GDScript."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:299
-msgid ""
-"If [code]true[/code], enables warnings when a function assigned to a "
-"variable may yield and return a function state instead of a value."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:302
+#: doc/classes/ProjectSettings.xml:300
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:303
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when dividing an integer by another "
"integer (the decimal part will be discarded)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when passing a floating-point value "
"to a function that expects an integer (it will be converted and lose "
"precision)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:314
+#: doc/classes/ProjectSettings.xml:312
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
@@ -38888,102 +39619,85 @@ msgid ""
"member variable)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:323
+#: doc/classes/ProjectSettings.xml:325
msgid ""
"If [code]true[/code], enables warnings when calling an expression that has "
"no effect on the surrounding code, such as writing [code]2 + 2[/code] as a "
"statement."
msgstr ""
-#: doc/classes/ProjectSettings.xml:326
+#: doc/classes/ProjectSettings.xml:328
msgid ""
"If [code]true[/code], enables warnings when calling a ternary expression "
"that has no effect on the surrounding code, such as writing [code]42 if "
"active else 0[/code] as a statement."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:331
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:334
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:335
+#: doc/classes/ProjectSettings.xml:337
msgid ""
"If [code]true[/code], enables warnings when assigning a variable using an "
"assignment operator like [code]+=[/code] if the variable wasn't previously "
"assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:338
+#: doc/classes/ProjectSettings.xml:340
msgid ""
"If [code]true[/code], enables warnings when unreachable code is detected "
"(such as after a [code]return[/code] statement that will always be executed)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:345
msgid ""
"If [code]true[/code], enables warnings when using an expression whose type "
"may not be compatible with the function parameter expected."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:348
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:347
+#: doc/classes/ProjectSettings.xml:351
msgid ""
"If [code]true[/code], enables warnings when calling a method whose presence "
"is not guaranteed at compile-time in the class."
msgstr ""
-#: doc/classes/ProjectSettings.xml:350
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], enables warnings when accessing a property whose "
"presence is not guaranteed at compile-time in the class."
msgstr ""
-#: doc/classes/ProjectSettings.xml:353
-msgid ""
-"If [code]true[/code], enables warnings when a function parameter is unused."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:356
-msgid ""
-"If [code]true[/code], enables warnings when a member variable is unused."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:363
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:362
+#: doc/classes/ProjectSettings.xml:366
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:365
-msgid ""
-"If [code]true[/code], enables warnings when a variable is declared with the "
-"same name as a function. This will turn into an error in a future version "
-"when first-class functions become supported in GDScript."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:368
+#: doc/classes/ProjectSettings.xml:369
msgid ""
"If [code]true[/code], enables warnings when assigning the result of a "
"function that returns [code]void[/code] to a variable."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:374
+#: doc/classes/ProjectSettings.xml:375
msgid ""
"Maximum number of frames per second allowed. The actual number of frames per "
"second may still be below this value if the game is lagging.\n"
@@ -38994,143 +39708,143 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:379
+#: doc/classes/ProjectSettings.xml:380
msgid "Maximum call stack allowed for debugging GDScript."
msgstr ""
-#: doc/classes/ProjectSettings.xml:382
+#: doc/classes/ProjectSettings.xml:383
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:385
+#: doc/classes/ProjectSettings.xml:386
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:388
+#: doc/classes/ProjectSettings.xml:389
msgid ""
"Print more information to standard output when running. It displays "
"information such as memory leaks, which scenes and resources are being "
"loaded, etc."
msgstr ""
-#: doc/classes/ProjectSettings.xml:391
+#: doc/classes/ProjectSettings.xml:392
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:394
+#: doc/classes/ProjectSettings.xml:395
msgid ""
"Color of the contact points between collision shapes, visible when \"Visible "
"Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:397
+#: doc/classes/ProjectSettings.xml:398
msgid ""
"Maximum number of contact points between collision shapes to display when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:400
+#: doc/classes/ProjectSettings.xml:401
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
msgid "Hotspot for the custom mouse cursor image."
msgstr ""
-#: doc/classes/ProjectSettings.xml:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
msgid ""
"If [code]true[/code], allows HiDPI display on Windows and macOS. This "
"setting has no effect on desktop Linux, as DPI-awareness fallbacks are not "
"supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"If [code]true[/code], keeps the screen on (even in case of inactivity), so "
"the screensaver does not take over. Works on desktop and mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
msgid "Default orientation on mobile devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"If [code]true[/code], the home indicator is hidden automatically. This only "
"affects iOS devices without a physical home button."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid "Force the window to be always on top."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid "Force the window to be borderless."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Sets the window to full screen when it starts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid ""
"Sets the game's main viewport height. On desktop platforms, this is the "
"default window size. Stretch mode settings also use this as a reference when "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Allows the window to be resizable by default."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"Sets the game's main viewport width. On desktop platforms, this is the "
"default window size. Stretch mode settings also use this as a reference when "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:454
+#: doc/classes/ProjectSettings.xml:455
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:457
+#: doc/classes/ProjectSettings.xml:458
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -39139,7 +39853,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:460
+#: doc/classes/ProjectSettings.xml:461
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -39150,13 +39864,13 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:464
+#: doc/classes/ProjectSettings.xml:465
msgid ""
"Search path for project-specific script templates. Script templates will be "
"search both in the editor-specific path and in this project-specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:467
+#: doc/classes/ProjectSettings.xml:468
msgid ""
"Text-based file extensions to include in the script editor's \"Find in Files"
"\" feature. You can add e.g. [code]tscn[/code] if you wish to also parse "
@@ -39164,49 +39878,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:470
+#: doc/classes/ProjectSettings.xml:471
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:473
+#: doc/classes/ProjectSettings.xml:474
msgid ""
-"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
+"If [code]true[/code], swaps Cancel and OK buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:478
+#: doc/classes/ProjectSettings.xml:479
msgid ""
"Path to a custom [Theme] resource file to use for the project ([code]theme[/"
"code] or generic [code]tres[/code]/[code]res[/code] extension)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:484
+#: doc/classes/ProjectSettings.xml:485
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:487
+#: doc/classes/ProjectSettings.xml:488
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:490
+#: doc/classes/ProjectSettings.xml:491
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:493
+#: doc/classes/ProjectSettings.xml:494
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:496
+#: doc/classes/ProjectSettings.xml:497
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -39215,7 +39929,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"Default [InputEventAction] to discard a modal or pending input.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39223,7 +39937,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:504
+#: doc/classes/ProjectSettings.xml:505
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39231,7 +39945,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:508
+#: doc/classes/ProjectSettings.xml:509
msgid ""
"Default [InputEventAction] to go to the end position of a [Control] (e.g. "
"last item in an [ItemList] or a [Tree]), matching the behavior of [constant "
@@ -39241,7 +39955,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:512
+#: doc/classes/ProjectSettings.xml:513
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -39250,7 +39964,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:516
+#: doc/classes/ProjectSettings.xml:517
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -39259,7 +39973,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:520
+#: doc/classes/ProjectSettings.xml:521
msgid ""
"Default [InputEventAction] to go to the start position of a [Control] (e.g. "
"first item in an [ItemList] or a [Tree]), matching the behavior of [constant "
@@ -39269,7 +39983,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39277,7 +39991,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:528
+#: doc/classes/ProjectSettings.xml:529
msgid ""
"Default [InputEventAction] to go down a page in a [Control] (e.g. in an "
"[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEDOWN] on "
@@ -39287,7 +40001,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Default [InputEventAction] to go up a page in a [Control] (e.g. in an "
"[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEUP] on "
@@ -39297,7 +40011,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:536
+#: doc/classes/ProjectSettings.xml:537
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39305,7 +40019,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:540
+#: doc/classes/ProjectSettings.xml:541
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -39314,7 +40028,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39322,371 +40036,371 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:548
+#: doc/classes/ProjectSettings.xml:549
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:554
+#: doc/classes/ProjectSettings.xml:555
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:557
+#: doc/classes/ProjectSettings.xml:558
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:560
+#: doc/classes/ProjectSettings.xml:561
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:566
+#: doc/classes/ProjectSettings.xml:567
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:569
+#: doc/classes/ProjectSettings.xml:570
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:572
+#: doc/classes/ProjectSettings.xml:573
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:578
+#: doc/classes/ProjectSettings.xml:579
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:581
+#: doc/classes/ProjectSettings.xml:582
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:584
+#: doc/classes/ProjectSettings.xml:585
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:590
+#: doc/classes/ProjectSettings.xml:591
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:593
+#: doc/classes/ProjectSettings.xml:594
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:596
+#: doc/classes/ProjectSettings.xml:597
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:602
+#: doc/classes/ProjectSettings.xml:603
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid ""
"The locale to fall back to if a translation isn't available in a given "
"language. If left empty, [code]en[/code] (English) will be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "If [code]true[/code], logs all output to files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:806
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:809
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:812
msgid ""
"Godot uses a message queue to defer some function calls. If you run out of "
"space on it (you will see an error), you can increase the size here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:815
msgid ""
"This is used by servers when used in multi-threading mode (servers and "
"visual). RIDs are preallocated to avoid stalling the server requesting them "
@@ -39694,56 +40408,56 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:829
+#: doc/classes/ProjectSettings.xml:832
msgid ""
"Maximum amount of characters allowed to send as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:832
+#: doc/classes/ProjectSettings.xml:835
msgid ""
"Maximum number of errors allowed to be sent from the debugger. Over this "
"value, content is dropped. This helps not to stall the debugger connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:835
+#: doc/classes/ProjectSettings.xml:838
msgid ""
"Maximum amount of messages in the debugger queue. Over this value, content "
"is dropped. This helps to limit the debugger memory usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:838
+#: doc/classes/ProjectSettings.xml:841
msgid ""
"Maximum number of warnings allowed to be sent from the debugger. Over this "
"value, content is dropped. This helps not to stall the debugger connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:841
+#: doc/classes/ProjectSettings.xml:844
msgid ""
"Default size of packet peer stream for deserializing Godot data. Over this "
"size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:844
+#: doc/classes/ProjectSettings.xml:847
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:847
+#: doc/classes/ProjectSettings.xml:850
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:850
+#: doc/classes/ProjectSettings.xml:853
msgid ""
"Amount of read ahead used by remote filesystem. Higher values decrease the "
"effects of latency at the cost of higher bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:853
+#: doc/classes/ProjectSettings.xml:856
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:856
+#: doc/classes/ProjectSettings.xml:859
msgid ""
"The CA certificates bundle to use for SSL connections. If this is set to a "
"non-empty value, this will [i]override[/i] Godot's default [url=https://"
@@ -39753,31 +40467,31 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:863
msgid ""
"When creating node names automatically, set the type of casing in this "
"project. This is mostly an editor setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:866
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:869
msgid "Size of the hash table used for the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:872
msgid "Cell size used for the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:875
msgid "The default angular damp in 2D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:878
msgid ""
"The default gravity strength in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39789,7 +40503,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:883
+#: doc/classes/ProjectSettings.xml:886
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39801,38 +40515,38 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:891
+#: doc/classes/ProjectSettings.xml:894
msgid "The default linear damp in 2D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:894
+#: doc/classes/ProjectSettings.xml:897
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:897
+#: doc/classes/ProjectSettings.xml:900
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics2D\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:901
+#: doc/classes/ProjectSettings.xml:904
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant PhysicsServer2D."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:904
+#: doc/classes/ProjectSettings.xml:907
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant PhysicsServer2D."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:907
+#: doc/classes/ProjectSettings.xml:910
msgid ""
"Sets whether physics is run on the main thread or a separate one. Running "
"the server on a thread increases performance, but restricts API access to "
@@ -39842,23 +40556,23 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:914
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant PhysicsServer2D.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:917
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody3D] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:920
msgid "The default angular damp in 3D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:923
msgid ""
"The default gravity strength in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39870,7 +40584,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:928
+#: doc/classes/ProjectSettings.xml:931
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39882,11 +40596,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:936
+#: doc/classes/ProjectSettings.xml:939
msgid "The default linear damp in 3D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:939
+#: doc/classes/ProjectSettings.xml:942
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -39894,11 +40608,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:943
+#: doc/classes/ProjectSettings.xml:946
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:949
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -39907,7 +40621,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:950
+#: doc/classes/ProjectSettings.xml:953
msgid ""
"Fix to improve physics jitter, specially on monitors where refresh rate is "
"different than the physics FPS.\n"
@@ -39915,7 +40629,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:954
+#: doc/classes/ProjectSettings.xml:957
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -39923,7 +40637,7 @@ msgid ""
"programmatically, use [method RenderingServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:957
+#: doc/classes/ProjectSettings.xml:960
msgid ""
"[Environment] that will be used as a fallback environment in case a scene "
"does not specify its own environment. The default environment is loaded in "
@@ -39933,14 +40647,14 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:986
+#: doc/classes/ProjectSettings.xml:989
msgid ""
"Max amount of elements renderable in a frame. If more than this are visible "
"per frame, they will be dropped. Keep in mind elements refer to mesh "
"surfaces and not meshes themselves."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:994
msgid ""
"Some NVIDIA GPU drivers have a bug which produces flickering issues for the "
"[code]draw_rect[/code] method, especially as used in [TileMap]. Refer to "
@@ -39952,73 +40666,73 @@ msgid ""
"using the Vulkan backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:995
+#: doc/classes/ProjectSettings.xml:998
msgid ""
"If [code]true[/code], forces snapping of polygons to pixels in 2D rendering. "
"May help in some pixel art styles."
msgstr ""
-#: doc/classes/ProjectSettings.xml:998
+#: doc/classes/ProjectSettings.xml:1001
msgid ""
"Sets the quality of the depth of field effect. Higher quality takes more "
"samples, which is slower but looks smoother."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1001
+#: doc/classes/ProjectSettings.xml:1004
msgid ""
"Sets the depth of field shape. Can be Box, Hexagon, or Circle. Box is the "
"fastest. Circle is the most realistic, but also the most expensive to "
"compute."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1004
+#: doc/classes/ProjectSettings.xml:1007
msgid ""
"If [code]true[/code], jitters DOF samples to make effect slightly blurrier "
"and hide lines created from low sample rates. This can result in a slightly "
"grainy appearance when used with a low number of samples."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1010
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1010
+#: doc/classes/ProjectSettings.xml:1013
msgid ""
"If [code]true[/code], performs a previous depth pass before rendering "
"materials. This increases performance in scenes with high overdraw, when "
"complex materials and lighting are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1016
msgid ""
"The directional shadow's size in pixels. Higher values will result in "
"sharper shadows, at the cost of performance. The value will be rounded up to "
"the nearest power of 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1016
+#: doc/classes/ProjectSettings.xml:1019
msgid ""
"Lower-end override for [member rendering/quality/directional_shadow/size] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1019
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"Quality setting for shadows cast by [DirectionalLight3D]s. Higher quality "
"settings use more samples when reading from shadow maps and are thus slower. "
"Low quality settings may result in shadows looking grainy."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1022
+#: doc/classes/ProjectSettings.xml:1025
msgid ""
"Lower-end override for [member rendering/quality/directional_shadow/"
"soft_shadow_quality] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1028
msgid ""
"The video driver to use (\"GLES2\" or \"Vulkan\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -40028,32 +40742,32 @@ msgid ""
"get_current_video_driver[/code] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1031
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"If [code]true[/code], take additional samples when rendering objects "
"affected by a [GIProbe] to reduce artifacts from only sampling in one "
"direction."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1034
+#: doc/classes/ProjectSettings.xml:1037
msgid ""
"Sets the number of cone samples taken when rendering objects affected by "
"[GIProbe]s."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1037
+#: doc/classes/ProjectSettings.xml:1040
msgid ""
"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."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1040
+#: doc/classes/ProjectSettings.xml:1043
msgid ""
"Lower-end override for [member rendering/quality/glow/upscale_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1043
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Strategy used for framebuffer allocation. The simpler it is, the less "
"resources it uses (but the less features it supports). If set to \"2D "
@@ -40063,41 +40777,41 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1046
+#: doc/classes/ProjectSettings.xml:1049
msgid ""
"Lower-end override for [member rendering/quality/intended_usage/"
"framebuffer_allocation] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1052
msgid ""
"Number of cubemaps to store in the reflection atlas. The number of "
"[ReflectionProbe]s in a scene will be limited by this amount. A higher "
"number requires more VRAM."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1052
+#: doc/classes/ProjectSettings.xml:1055
msgid ""
"Size of cubemap faces for [ReflectionProbe]s. A higher number requires more "
"VRAM and may make reflection probe updating slower."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1055
+#: doc/classes/ProjectSettings.xml:1058
msgid ""
"Lower-end override for [member rendering/quality/reflection_atlas/"
"reflection_size] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1058
+#: doc/classes/ProjectSettings.xml:1061
msgid ""
"Use a higher quality variant of the fast filtering algorithm. Significantly "
"slower than using default quality, but results in smoother reflections. "
"Should only be used when the scene is especially detailed."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1061
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Sets the number of samples to take when using importance sampling for [Sky]s "
"and [ReflectionProbe]s. A higher value will result in smoother, higher "
@@ -40107,19 +40821,19 @@ msgid ""
"environments with a high level of detail."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1064
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Lower-end override for [member rendering/quality/reflections/ggx_samples] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1067
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Limits the number of layers to use in radiance maps when using importance "
"sampling. A lower number will be slightly faster and take up less VRAM."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1070
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise and "
@@ -40128,14 +40842,14 @@ msgid ""
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1073
+#: doc/classes/ProjectSettings.xml:1076
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"texture_array_reflections] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1079
msgid ""
"Sets the number of MSAA samples to use (as a power of two). MSAA is used to "
"reduce aliasing around the edges of polygons. A higher MSAA value results in "
@@ -40143,7 +40857,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1080
+#: doc/classes/ProjectSettings.xml:1083
msgid ""
"Sets the screen-space antialiasing mode for the default screen [Viewport]. "
"Screen-space antialiasing works by selectively blurring edges in a post-"
@@ -40152,133 +40866,117 @@ msgid ""
"MSAA and will smooth out specular aliasing, but tend to make scenes appear "
"blurry.\n"
"Another way to combat specular aliasing is to enable [member rendering/"
-"quality/screen_filters/screen_space_roughness_limiter]."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:1084
-msgid ""
-"Enables the screen-space roughness limiter which increases material "
-"roughness in areas with a high normal frequency (i.e. when normals change a "
-"lot from pixel to pixel). This helps to reduce the amount of specular "
-"aliasing in a scene. Specular aliasing looks like random bright pixels that "
-"occur in reflections."
+"quality/screen_filters/screen_space_roughness_limiter_enabled]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1087
-msgid ""
-"Curves the amount of the roughness limited effect. A higher value limits the "
-"effect to very sharply curved surfaces, while a lower threshold extends the "
-"effect to smoother surfaces."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:1090
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"Sets the quality for rough screen-space reflections. Turning off will make "
"all screen space reflections sharp, while higher values make rough "
"reflections look better."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1093
+#: doc/classes/ProjectSettings.xml:1096
msgid ""
"If [code]true[/code], uses faster but lower-quality Blinn model to generate "
"blurred reflections instead of the GGX model."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1099
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_blinn_over_ggx] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1102
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1102
+#: doc/classes/ProjectSettings.xml:1105
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_lambert_over_burley] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1105
+#: doc/classes/ProjectSettings.xml:1108
msgid ""
"If [code]true[/code], forces vertex shading for all rendering. This can "
"increase performance a lot, but also reduces quality immensely. Can be used "
"to optimize performance on low-end mobile devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1108
+#: doc/classes/ProjectSettings.xml:1111
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_vertex_shading] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1111 doc/classes/ProjectSettings.xml:1114
-#: doc/classes/ProjectSettings.xml:1117 doc/classes/ProjectSettings.xml:1120
+#: doc/classes/ProjectSettings.xml:1114 doc/classes/ProjectSettings.xml:1117
+#: doc/classes/ProjectSettings.xml:1120 doc/classes/ProjectSettings.xml:1123
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1123
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1126
+#: doc/classes/ProjectSettings.xml:1129
msgid ""
"Lower-end override for [member rendering/quality/shadow_atlas/size] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1132
msgid ""
"Quality setting for shadows cast by [OmniLight3D]s and [SpotLight3D]s. "
"Higher quality settings use more samples when reading from shadow maps and "
"are thus slower. Low quality settings may result in shadows looking grainy."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1132
+#: doc/classes/ProjectSettings.xml:1135
msgid ""
"Lower-end override for [member rendering/quality/shadows/"
"soft_shadow_quality] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1135
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"If [code]true[/code], screen-space ambient occlusion will be rendered at "
"half size and then upscaled before being added to the scene. This is "
"significantly faster but may miss small details."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1138
+#: doc/classes/ProjectSettings.xml:1141
msgid ""
"Sets the quality of the screen-space ambient occlusion effect. Higher values "
"take more samples and so will result in better quality, at the cost of "
"performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1144
msgid ""
"Scales the depth over which the subsurface scattering effect is applied. A "
"high value may allow light to scatter into a part of the mesh or another "
"mesh that is close in screen space but far in depth."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1144
+#: doc/classes/ProjectSettings.xml:1147
msgid ""
"Sets the quality of the subsurface scattering effect. Higher values are "
"slower but look nicer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1147
+#: doc/classes/ProjectSettings.xml:1150
msgid ""
"Scales the distance over which samples are taken for subsurface scattering "
"effect. Changing this does not impact performance, but higher values will "
@@ -40286,7 +40984,7 @@ msgid ""
"out. A lower value results in a smaller spread of scattered light."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1150
+#: doc/classes/ProjectSettings.xml:1153
msgid ""
"Sets the maximum number of samples to take when using anisotropic filtering "
"on textures (as a power of two). A higher sample count will result in "
@@ -40295,7 +40993,7 @@ msgid ""
"materials where it is enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1153
+#: doc/classes/ProjectSettings.xml:1156
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -40304,49 +41002,49 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Thread model for rendering. Rendering on a thread can vastly improve "
"performance, but synchronizing to the main thread can cause a bit more "
"jitter."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
"only supported on desktop platforms, and only when using the Vulkan renderer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
"doesn't support alpha channels in textures."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
"compression algorithm is only supported when using the Vulkan renderer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1175
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
"compression algorithm is only supported on iOS."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
"supported on desktop platforms and consoles."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1182
+#: doc/classes/ProjectSettings.xml:1189
msgid "Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses."
msgstr ""
@@ -40376,13 +41074,14 @@ msgstr ""
#: doc/classes/Quat.xml:7
msgid ""
-"A unit quaternion used for representing 3D rotations.\n"
-"It is similar to [Basis], which implements matrix representation of "
-"rotations, and can be parametrized using both an axis-angle pair or Euler "
-"angles. But due to its compactness and the way it is stored in memory, "
-"certain operations (obtaining axis-angle and performing SLERP, in "
-"particular) are more efficient and robust against floating-point errors.\n"
-"Quaternions need to be (re)normalized."
+"A unit quaternion used for representing 3D rotations. Quaternions need to be "
+"normalized to be used for rotation.\n"
+"It is similar to Basis, which implements matrix representation of rotations, "
+"and can be parametrized using both an axis-angle pair or Euler angles. Basis "
+"stores rotation, scale, and shearing, while Quat only stores rotation.\n"
+"Due to its compactness and the way it is stored in memory, certain "
+"operations (obtaining axis-angle and performing SLERP, in particular) are "
+"more efficient and robust against floating-point errors."
msgstr ""
#: doc/classes/Quat.xml:12
@@ -40392,29 +41091,31 @@ msgid ""
msgstr ""
#: doc/classes/Quat.xml:21
-msgid "Returns the rotation matrix corresponding to the given quaternion."
+msgid "Constructs a quaternion from the given [Basis]."
msgstr ""
#: doc/classes/Quat.xml:30
msgid ""
-"Returns a quaternion that will perform a rotation specified by Euler angles "
-"(in the YXZ convention: first Z, then X, and Y last), given in the vector "
-"format as (X angle, Y angle, Z angle)."
+"Constructs a quaternion that will perform a rotation specified by Euler "
+"angles (in the YXZ convention: when decomposing, first Z, then X, and Y "
+"last), given in the vector format as (X angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:41
msgid ""
-"Returns a quaternion that will rotate around the given axis by the specified "
-"angle. The axis must be a normalized vector."
+"Constructs a quaternion that will rotate around the given axis by the "
+"specified angle. The axis must be a normalized vector."
msgstr ""
#: doc/classes/Quat.xml:56
-msgid "Returns a quaternion defined by these values."
+msgid "Constructs a quaternion defined by the given values."
msgstr ""
#: doc/classes/Quat.xml:71
msgid ""
-"Performs a cubic spherical-linear interpolation with another quaternion."
+"Performs a cubic spherical interpolation between quaternions [code]preA[/"
+"code], this vector, [code]b[/code], and [code]postB[/code], by the given "
+"amount [code]t[/code]."
msgstr ""
#: doc/classes/Quat.xml:80
@@ -40423,10 +41124,10 @@ msgstr ""
#: doc/classes/Quat.xml:87
msgid ""
-"Returns Euler angles (in the YXZ convention: first Z, then X, and Y last) "
-"corresponding to the rotation represented by the unit quaternion. Returned "
-"vector contains the rotation angles in the format (X angle, Y angle, Z "
-"angle)."
+"Returns Euler angles (in the YXZ convention: when decomposing, first Z, then "
+"X, and Y last) corresponding to the rotation represented by the unit "
+"quaternion. Returned vector contains the rotation angles in the format (X "
+"angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:94
@@ -40465,44 +41166,57 @@ msgstr ""
#: doc/classes/Quat.xml:151
msgid ""
"Sets the quaternion to a rotation specified by Euler angles (in the YXZ "
-"convention: first Z, then X, and Y last), given in the vector format as (X "
-"angle, Y angle, Z angle)."
+"convention: when decomposing, first Z, then X, and Y last), given in the "
+"vector format as (X angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:162
-msgid "Performs a spherical-linear interpolation with another quaternion."
+msgid ""
+"Returns the result of the spherical linear interpolation between this "
+"quaternion and [code]to[/code] by amount [code]weight[/code].\n"
+"[b]Note:[/b] Both quaternions must be normalized."
msgstr ""
-#: doc/classes/Quat.xml:173
+#: doc/classes/Quat.xml:174
msgid ""
-"Performs a spherical-linear interpolation with another quaterion without "
-"checking if the rotation path is not bigger than 90°."
+"Returns the result of the spherical linear interpolation between this "
+"quaternion and [code]to[/code] by amount [code]weight[/code], but without "
+"checking if the rotation path is not bigger than 90 degrees."
msgstr ""
-#: doc/classes/Quat.xml:182
-msgid "Transforms the vector [code]v[/code] by this quaternion."
+#: doc/classes/Quat.xml:183
+msgid "Returns a vector transformed (multiplied) by this quaternion."
msgstr ""
-#: doc/classes/Quat.xml:188
-msgid "W component of the quaternion."
+#: doc/classes/Quat.xml:189
+msgid ""
+"W component of the quaternion (real part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:191
-msgid "X component of the quaternion."
+#: doc/classes/Quat.xml:193
+msgid ""
+"X component of the quaternion (imaginary [code]i[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:194
-msgid "Y component of the quaternion."
+#: doc/classes/Quat.xml:197
+msgid ""
+"Y component of the quaternion (imaginary [code]j[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:197
-msgid "Z component of the quaternion."
+#: doc/classes/Quat.xml:201
+msgid ""
+"Z component of the quaternion (imaginary [code]k[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:202
+#: doc/classes/Quat.xml:207
msgid ""
-"The identity rotation. Equivalent to an identity matrix. If a vector is "
-"transformed by an identity quaternion, it will not change."
+"The identity quaternion, representing no rotation. Equivalent to an identity "
+"[Basis] matrix. If a vector is transformed by an identity quaternion, it "
+"will not change."
msgstr ""
#: doc/classes/RandomNumberGenerator.xml:4
@@ -40705,7 +41419,8 @@ msgid ""
"collision information immediately instead of waiting for the next "
"[code]_physics_process[/code] call, for example if the ray or its parent has "
"changed state.\n"
-"[b]Note:[/b] [code]enabled == true[/code] is not required for this to work."
+"[b]Note:[/b] [member enabled] does not need to be [code]true[/code] for this "
+"to work."
msgstr ""
#: doc/classes/RayCast2D.xml:54 doc/classes/RayCast3D.xml:55
@@ -40811,7 +41526,8 @@ msgid ""
"Use this method to update the collision information immediately instead of "
"waiting for the next [code]_physics_process[/code] call, for example if the "
"ray or its parent has changed state.\n"
-"[b]Note:[/b] [code]enabled == true[/code] is not required for this to work."
+"[b]Note:[/b] [member enabled] does not need to be [code]true[/code] for this "
+"to work."
msgstr ""
#: doc/classes/RayCast3D.xml:71
@@ -40969,14 +41685,6 @@ msgstr ""
msgid "Returns a larger [Rect2] that contains this [Rect2] and [code]b[/code]."
msgstr ""
-#: doc/classes/Rect2.xml:174 doc/classes/Rect2i.xml:163
-msgid "Ending corner."
-msgstr ""
-
-#: doc/classes/Rect2.xml:177 doc/classes/Rect2i.xml:166
-msgid "Position (starting corner)."
-msgstr ""
-
#: doc/classes/Rect2i.xml:4
msgid "2D axis-aligned bounding box using integer coordinates."
msgstr ""
@@ -41089,22 +41797,22 @@ msgstr ""
msgid ""
"Base class for any object that keeps a reference count. [Resource] and many "
"other helper objects inherit this class.\n"
-"References keep an internal reference counter so that they are automatically "
-"released when no longer in use, and only then. References therefore do not "
-"need to be freed manually with [method Object.free].\n"
+"Unlike [Object]s, References keep an internal reference counter so that they "
+"are automatically released when no longer in use, and only then. References "
+"therefore do not need to be freed manually with [method Object.free].\n"
"In the vast majority of use cases, instantiating and using [Reference]-"
"derived types is all you need to do. The methods provided in this class are "
"only for advanced users, and can cause issues if misused."
msgstr ""
-#: doc/classes/Reference.xml:18
+#: doc/classes/Reference.xml:19
msgid ""
"Initializes the internal reference counter. Use this only if you really know "
"what you are doing.\n"
"Returns whether the initialization was successful."
msgstr ""
-#: doc/classes/Reference.xml:26
+#: doc/classes/Reference.xml:27
msgid ""
"Increments the internal reference counter. Use this only if you really know "
"what you are doing.\n"
@@ -41112,7 +41820,7 @@ msgid ""
"code] otherwise."
msgstr ""
-#: doc/classes/Reference.xml:34
+#: doc/classes/Reference.xml:35
msgid ""
"Decrements the internal reference counter. Use this only if you really know "
"what you are doing.\n"
@@ -41161,14 +41869,14 @@ msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/reflection_probes.html"
msgstr ""
-#: doc/classes/ReflectionProbe.xml:17
+#: doc/classes/ReflectionProbe.xml:23
msgid ""
"If [code]true[/code], enables box projection. This makes reflections look "
"more correct in rectangle-shaped rooms by offsetting the reflection center "
"depending on the camera's location."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:20
+#: doc/classes/ReflectionProbe.xml:26
msgid ""
"Sets the cull mask which determines what objects are drawn by this probe. "
"Every [VisualInstance3D] with a layer included in this cull mask will be "
@@ -41177,78 +41885,56 @@ msgid ""
"rendering cost."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:23
+#: doc/classes/ReflectionProbe.xml:29
msgid ""
"If [code]true[/code], computes shadows in the reflection probe. This makes "
"the reflection probe slower to render; you may want to disable this if using "
"the [constant UPDATE_ALWAYS] [member update_mode]."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:26
+#: doc/classes/ReflectionProbe.xml:32
msgid ""
"The size of the reflection probe. The larger the extents the more space "
"covered by the probe which will lower the perceived resolution. It is best "
"to keep the extents only as large as you need them."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:29
+#: doc/classes/ReflectionProbe.xml:35
msgid ""
"Defines the reflection intensity. Intensity modulates the strength of the "
"reflection."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:32
-msgid ""
-"Sets the ambient light color to be used when this probe is set to [member "
-"interior_enable]."
-msgstr ""
-
-#: doc/classes/ReflectionProbe.xml:35
-msgid ""
-"Sets the contribution value for how much the reflection affects the ambient "
-"light for this reflection probe when set to [member interior_enable]. Useful "
-"so that ambient light matches the color of the room."
-msgstr ""
-
#: doc/classes/ReflectionProbe.xml:38
-msgid ""
-"Sets the energy multiplier for this reflection probe's ambient light "
-"contribution when set to [member interior_enable]."
+msgid "If [code]true[/code], reflections will ignore sky contribution."
msgstr ""
#: doc/classes/ReflectionProbe.xml:41
msgid ""
-"If [code]true[/code], reflections will ignore sky contribution. Ambient "
-"lighting is then controlled by the [code]interior_ambient_*[/code] "
-"properties."
-msgstr ""
-
-#: doc/classes/ReflectionProbe.xml:44
-msgid ""
"Sets the max distance away from the probe an object can be before it is "
"culled."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:47
+#: doc/classes/ReflectionProbe.xml:44
msgid ""
"Sets the origin offset to be used when this reflection probe is in box "
"project mode."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:50
+#: doc/classes/ReflectionProbe.xml:47
msgid ""
"Sets how frequently the probe is updated. Can be [constant UPDATE_ONCE] or "
"[constant UPDATE_ALWAYS]."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:55
+#: doc/classes/ReflectionProbe.xml:52
msgid ""
"Update the probe once on the next frame. The corresponding radiance map will "
"be generated over the following six frames. This is slower to update than "
"[constant UPDATE_ALWAYS] but can result in higher quality reflections."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:58
+#: doc/classes/ReflectionProbe.xml:55
msgid ""
"Update the probe every frame. This is needed when you want to capture "
"dynamic objects. However, it results in an increased render time. Use "
@@ -41278,10 +41964,10 @@ msgid ""
"read by RegEx as [code]\\d+[/code]. Similarly, [code]compile(\"\\\"(?:\\\\\\"
"\\.|[^\\\"])*\\\"\")[/code] would be read as [code]\"(?:\\\\.|[^\"])*\"[/"
"code].\n"
-"Using [method search] you can find the pattern within the given text. If a "
+"Using [method search], you can find the pattern within the given text. If a "
"pattern is found, [RegExMatch] is returned and you can retrieve details of "
-"the results using functions such as [method RegExMatch.get_string] and "
-"[method RegExMatch.get_start].\n"
+"the results using methods such as [method RegExMatch.get_string] and [method "
+"RegExMatch.get_start].\n"
"[codeblock]\n"
"var regex = RegEx.new()\n"
"regex.compile(\"\\\\w-(\\\\d+)\")\n"
@@ -41290,7 +41976,7 @@ msgid ""
" print(result.get_string()) # Would print n-0123\n"
"[/codeblock]\n"
"The results of capturing groups [code]()[/code] can be retrieved by passing "
-"the group number to the various functions in [RegExMatch]. Group 0 is the "
+"the group number to the various methods in [RegExMatch]. Group 0 is the "
"default and will always refer to the entire pattern. In the above example, "
"calling [code]result.get_string(1)[/code] would give you [code]0123[/code].\n"
"This version of RegEx also supports named capturing groups, and the names "
@@ -41311,6 +41997,15 @@ msgid ""
" print(result.get_string(\"digit\"))\n"
"# Would print 01 03 0 3f 42\n"
"[/codeblock]\n"
+"[b]Example of splitting a string using a RegEx:[/b]\n"
+"[codeblock]\n"
+"var regex = RegEx.new()\n"
+"regex.compile(\"\\\\S+\") # Negated whitespace character class.\n"
+"var results = []\n"
+"for match in regex.search_all(\"One Two \\n\\tThree\"):\n"
+" results.push_back(match.get_string())\n"
+"# The `results` array now contains \"One\", \"Two\", \"Three\".\n"
+"[/codeblock]\n"
"[b]Note:[/b] Godot's regex implementation is based on the [url=https://www."
"pcre.org/]PCRE2[/url] library. You can view the full pattern reference "
"[url=https://www.pcre.org/current/doc/html/pcre2pattern.html]here[/url].\n"
@@ -41318,38 +42013,38 @@ msgid ""
"regular expressions online."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:47
+#: modules/regex/doc_classes/RegEx.xml:56
msgid ""
"This method resets the state of the object, as if it was freshly created. "
"Namely, it unassigns the regular expression of this object."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:56
+#: modules/regex/doc_classes/RegEx.xml:65
msgid ""
"Compiles and assign the search pattern to use. Returns [constant OK] if the "
"compilation is successful. If an error is encountered, details are printed "
"to standard output and an error is returned."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:63
+#: modules/regex/doc_classes/RegEx.xml:72
msgid "Returns the number of capturing groups in compiled pattern."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:70
+#: modules/regex/doc_classes/RegEx.xml:79
msgid ""
"Returns an array of names of named capturing groups in the compiled pattern. "
"They are ordered by appearance."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:77
+#: modules/regex/doc_classes/RegEx.xml:86
msgid "Returns the original search pattern that was compiled."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:84
+#: modules/regex/doc_classes/RegEx.xml:93
msgid "Returns whether this object has a valid search pattern assigned."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:97
+#: modules/regex/doc_classes/RegEx.xml:106
msgid ""
"Searches the text for the compiled pattern. Returns a [RegExMatch] container "
"of the first matching result if found, otherwise [code]null[/code]. The "
@@ -41357,7 +42052,7 @@ msgid ""
"and end anchor would be."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:110
+#: modules/regex/doc_classes/RegEx.xml:119
msgid ""
"Searches the text for the compiled pattern. Returns an array of [RegExMatch] "
"containers for each non-overlapping result. If no results were found, an "
@@ -41365,7 +42060,7 @@ msgid ""
"specified without modifying where the start and end anchor would be."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:127
+#: modules/regex/doc_classes/RegEx.xml:136
msgid ""
"Searches the text for the compiled pattern and replaces it with the "
"specified string. Escapes and backreferences such as [code]$1[/code] and "
@@ -42092,7 +42787,7 @@ msgid ""
msgstr ""
#: doc/classes/RenderingServer.xml:1222 doc/classes/RenderingServer.xml:1250
-#: doc/classes/RenderingServer.xml:1527
+#: doc/classes/RenderingServer.xml:1537
msgid "Not implemented in Godot 3.x."
msgstr ""
@@ -42239,30 +42934,30 @@ msgid ""
"OmniLight3D.omni_shadow_mode]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1481
+#: doc/classes/RenderingServer.xml:1491
msgid ""
"Sets the color of the light. Equivalent to [member Light3D.light_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1492
+#: doc/classes/RenderingServer.xml:1502
msgid ""
"Sets the cull mask for this Light3D. Lights only affect objects in the "
"selected layers. Equivalent to [member Light3D.light_cull_mask]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1503
+#: doc/classes/RenderingServer.xml:1513
msgid ""
"If [code]true[/code], light will subtract light instead of adding light. "
"Equivalent to [member Light3D.light_negative]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1516
+#: doc/classes/RenderingServer.xml:1526
msgid ""
"Sets the specified light parameter. See [enum LightParam] for options. "
"Equivalent to [method Light3D.set_param]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1538
+#: doc/classes/RenderingServer.xml:1548
msgid ""
"If [code]true[/code], reverses the backface culling of the mesh. This can be "
"useful when you have a flat mesh that has a light behind it. If you need to "
@@ -42271,29 +42966,25 @@ msgid ""
"to [member Light3D.shadow_reverse_cull_face]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1549
+#: doc/classes/RenderingServer.xml:1559
msgid ""
"If [code]true[/code], light will cast shadows. Equivalent to [member Light3D."
"shadow_enabled]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1560
+#: doc/classes/RenderingServer.xml:1570
msgid ""
"Sets the color of the shadow cast by the light. Equivalent to [member "
"Light3D.shadow_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1571
-msgid "Sets whether GI probes capture light information from this light."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:1584
+#: doc/classes/RenderingServer.xml:1583
msgid ""
"Returns a mesh of a sphere with the given amount of horizontal and vertical "
"subdivisions."
msgstr ""
-#: doc/classes/RenderingServer.xml:1591
+#: doc/classes/RenderingServer.xml:1590
msgid ""
"Creates an empty material and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42302,31 +42993,31 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:1603
+#: doc/classes/RenderingServer.xml:1602
msgid "Returns the value of a certain material's parameter."
msgstr ""
-#: doc/classes/RenderingServer.xml:1614
+#: doc/classes/RenderingServer.xml:1613
msgid "Sets an object's next material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1627
+#: doc/classes/RenderingServer.xml:1626
msgid "Sets a material's parameter."
msgstr ""
-#: doc/classes/RenderingServer.xml:1638
+#: doc/classes/RenderingServer.xml:1637
msgid "Sets a material's render priority."
msgstr ""
-#: doc/classes/RenderingServer.xml:1649
+#: doc/classes/RenderingServer.xml:1648
msgid "Sets a shader material's shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:1678
+#: doc/classes/RenderingServer.xml:1677
msgid "Removes all surfaces from a mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1685
+#: doc/classes/RenderingServer.xml:1684
msgid ""
"Creates a new mesh and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all [code]mesh_*[/"
@@ -42337,58 +43028,58 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:1696
+#: doc/classes/RenderingServer.xml:1695
msgid "Returns a mesh's blend shape count."
msgstr ""
-#: doc/classes/RenderingServer.xml:1705
+#: doc/classes/RenderingServer.xml:1704
msgid "Returns a mesh's blend shape mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:1714
+#: doc/classes/RenderingServer.xml:1713
msgid "Returns a mesh's custom aabb."
msgstr ""
-#: doc/classes/RenderingServer.xml:1723
+#: doc/classes/RenderingServer.xml:1722
msgid "Returns a mesh's number of surfaces."
msgstr ""
-#: doc/classes/RenderingServer.xml:1734
+#: doc/classes/RenderingServer.xml:1733
msgid "Sets a mesh's blend shape mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:1745
+#: doc/classes/RenderingServer.xml:1744
msgid "Sets a mesh's custom aabb."
msgstr ""
-#: doc/classes/RenderingServer.xml:1756
+#: doc/classes/RenderingServer.xml:1755
msgid "Returns a mesh's surface's buffer arrays."
msgstr ""
-#: doc/classes/RenderingServer.xml:1767
+#: doc/classes/RenderingServer.xml:1766
msgid "Returns a mesh's surface's arrays for blend shapes."
msgstr ""
-#: doc/classes/RenderingServer.xml:1782 doc/classes/RenderingServer.xml:1795
+#: doc/classes/RenderingServer.xml:1781 doc/classes/RenderingServer.xml:1794
msgid "Function is unused in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:1806
+#: doc/classes/RenderingServer.xml:1805
msgid "Returns a mesh's surface's material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1819
+#: doc/classes/RenderingServer.xml:1818
msgid "Sets a mesh's surface's material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1834
+#: doc/classes/RenderingServer.xml:1833
msgid ""
"Updates a specific region of a vertex buffer for the specified surface. "
"Warning: this function alters the vertex buffer directly with no safety "
"mechanisms, you can easily corrupt your mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1857
+#: doc/classes/RenderingServer.xml:1856
msgid ""
"Creates a new multimesh on the RenderingServer and returns an [RID] handle. "
"This RID will be used in all [code]multimesh_*[/code] RenderingServer "
@@ -42399,82 +43090,82 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:1868
+#: doc/classes/RenderingServer.xml:1867
msgid ""
"Calculates and returns the axis-aligned bounding box that encloses all "
"instances within the multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1885
+#: doc/classes/RenderingServer.xml:1884
msgid "Returns the number of instances allocated for this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1894
+#: doc/classes/RenderingServer.xml:1893
msgid ""
"Returns the RID of the mesh that will be used in drawing this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1903
+#: doc/classes/RenderingServer.xml:1902
msgid "Returns the number of visible instances for this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1914
+#: doc/classes/RenderingServer.xml:1913
msgid "Returns the color by which the specified instance will be modulated."
msgstr ""
-#: doc/classes/RenderingServer.xml:1925
+#: doc/classes/RenderingServer.xml:1924
msgid "Returns the custom data associated with the specified instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:1936
+#: doc/classes/RenderingServer.xml:1935
msgid "Returns the [Transform] of the specified instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:1947
+#: doc/classes/RenderingServer.xml:1946
msgid ""
"Returns the [Transform2D] of the specified instance. For use when the "
"multimesh is set to use 2D transforms."
msgstr ""
-#: doc/classes/RenderingServer.xml:1960
+#: doc/classes/RenderingServer.xml:1959
msgid ""
"Sets the color by which this instance will be modulated. Equivalent to "
"[method MultiMesh.set_instance_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1973
+#: doc/classes/RenderingServer.xml:1972
msgid ""
"Sets the custom data for this instance. Custom data is passed as a [Color], "
"but is interpreted as a [code]vec4[/code] in the shader. Equivalent to "
"[method MultiMesh.set_instance_custom_data]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1986
+#: doc/classes/RenderingServer.xml:1985
msgid ""
"Sets the [Transform] for this instance. Equivalent to [method MultiMesh."
"set_instance_transform]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1999
+#: doc/classes/RenderingServer.xml:1998
msgid ""
"Sets the [Transform2D] for this instance. For use when multimesh is used in "
"2D. Equivalent to [method MultiMesh.set_instance_transform_2d]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2020
+#: doc/classes/RenderingServer.xml:2019
msgid ""
"Sets the mesh to be drawn by the multimesh. Equivalent to [member MultiMesh."
"mesh]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2031
+#: doc/classes/RenderingServer.xml:2030
msgid ""
"Sets the number of instances visible at a given time. If -1, all instances "
"that have been allocated are drawn. Equivalent to [member MultiMesh."
"visible_instance_count]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2038
+#: doc/classes/RenderingServer.xml:2037
msgid ""
"Creates a new omni light and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID can be used in most "
@@ -42485,7 +43176,7 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2047
+#: doc/classes/RenderingServer.xml:2046
msgid ""
"Creates a particle system and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42496,23 +43187,23 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2058
+#: doc/classes/RenderingServer.xml:2057
msgid ""
"Calculates and returns the axis-aligned bounding box that contains all the "
"particles. Equivalent to [method GPUParticles3D.capture_aabb]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2067
+#: doc/classes/RenderingServer.xml:2066
msgid "Returns [code]true[/code] if particles are currently set to emitting."
msgstr ""
-#: doc/classes/RenderingServer.xml:2076
+#: doc/classes/RenderingServer.xml:2075
msgid ""
"Returns [code]true[/code] if particles are not emitting and particles are "
"set to inactive."
msgstr ""
-#: doc/classes/RenderingServer.xml:2085
+#: doc/classes/RenderingServer.xml:2084
msgid ""
"Add particle system to list of particle systems that need to be updated. "
"Update will take place on the next frame, or on the next call to [method "
@@ -42520,121 +43211,121 @@ msgid ""
"instances_cull_ray]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2094
+#: doc/classes/RenderingServer.xml:2093
msgid ""
"Reset the particles on the next update. Equivalent to [method GPUParticles3D."
"restart]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2105
+#: doc/classes/RenderingServer.xml:2104
msgid ""
"Sets the number of particles to be drawn and allocates the memory for them. "
"Equivalent to [member GPUParticles3D.amount]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2116
+#: doc/classes/RenderingServer.xml:2115
msgid ""
"Sets a custom axis-aligned bounding box for the particle system. Equivalent "
"to [member GPUParticles3D.visibility_aabb]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2127
+#: doc/classes/RenderingServer.xml:2126
msgid ""
"Sets the draw order of the particles to one of the named enums from [enum "
"ParticlesDrawOrder]. See [enum ParticlesDrawOrder] for options. Equivalent "
"to [member GPUParticles3D.draw_order]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2140
+#: doc/classes/RenderingServer.xml:2139
msgid ""
"Sets the mesh to be used for the specified draw pass. Equivalent to [member "
"GPUParticles3D.draw_pass_1], [member GPUParticles3D.draw_pass_2], [member "
"GPUParticles3D.draw_pass_3], and [member GPUParticles3D.draw_pass_4]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2151
+#: doc/classes/RenderingServer.xml:2150
msgid ""
"Sets the number of draw passes to use. Equivalent to [member GPUParticles3D."
"draw_passes]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2162
+#: doc/classes/RenderingServer.xml:2161
msgid ""
"Sets the [Transform] that will be used by the particles when they first emit."
msgstr ""
-#: doc/classes/RenderingServer.xml:2173
+#: doc/classes/RenderingServer.xml:2172
msgid ""
"If [code]true[/code], particles will emit over time. Setting to false does "
"not reset the particles, but only stops their emission. Equivalent to "
"[member GPUParticles3D.emitting]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2184
+#: doc/classes/RenderingServer.xml:2183
msgid ""
"Sets the explosiveness ratio. Equivalent to [member GPUParticles3D."
"explosiveness]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2195
+#: doc/classes/RenderingServer.xml:2194
msgid ""
"Sets the frame rate that the particle system rendering will be fixed to. "
"Equivalent to [member GPUParticles3D.fixed_fps]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2206
+#: doc/classes/RenderingServer.xml:2205
msgid ""
"If [code]true[/code], uses fractional delta which smooths the movement of "
"the particles. Equivalent to [member GPUParticles3D.fract_delta]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2217
+#: doc/classes/RenderingServer.xml:2216
msgid ""
"Sets the lifetime of each particle in the system. Equivalent to [member "
"GPUParticles3D.lifetime]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2228
+#: doc/classes/RenderingServer.xml:2227
msgid ""
"If [code]true[/code], particles will emit once and then stop. Equivalent to "
"[member GPUParticles3D.one_shot]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2239
+#: doc/classes/RenderingServer.xml:2238
msgid ""
"Sets the preprocess time for the particles animation. This lets you delay "
"starting an animation until after the particles have begun emitting. "
"Equivalent to [member GPUParticles3D.preprocess]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2250
+#: doc/classes/RenderingServer.xml:2249
msgid ""
"Sets the material for processing the particles. Note: this is not the "
"material used to draw the materials. Equivalent to [member GPUParticles3D."
"process_material]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2261
+#: doc/classes/RenderingServer.xml:2260
msgid ""
"Sets the emission randomness ratio. This randomizes the emission of "
"particles within their phase. Equivalent to [member GPUParticles3D."
"randomness]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2272
+#: doc/classes/RenderingServer.xml:2271
msgid ""
"Sets the speed scale of the particle system. Equivalent to [member "
"GPUParticles3D.speed_scale]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2283
+#: doc/classes/RenderingServer.xml:2282
msgid ""
"If [code]true[/code], particles use local coordinates. If [code]false[/code] "
"they use global coordinates. Equivalent to [member GPUParticles3D."
"local_coords]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2290
+#: doc/classes/RenderingServer.xml:2289
msgid ""
"Creates a reflection probe and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42645,85 +43336,64 @@ msgid ""
"[method instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2303
+#: doc/classes/RenderingServer.xml:2332
msgid ""
"If [code]true[/code], reflections will ignore sky contribution. Equivalent "
-"to [member ReflectionProbe.interior_enable]."
+"to [member ReflectionProbe.interior]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2314
+#: doc/classes/RenderingServer.xml:2343
msgid ""
"Sets the render cull mask for this reflection probe. Only instances with a "
"matching cull mask will be rendered by this probe. Equivalent to [member "
"ReflectionProbe.cull_mask]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2325
+#: doc/classes/RenderingServer.xml:2354
msgid ""
"If [code]true[/code], uses box projection. This can make reflections look "
"more correct in certain situations. Equivalent to [member ReflectionProbe."
"box_projection]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2336
+#: doc/classes/RenderingServer.xml:2365
msgid ""
"If [code]true[/code], computes shadows in the reflection probe. This makes "
"the reflection much slower to compute. Equivalent to [member ReflectionProbe."
"enable_shadows]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2347
+#: doc/classes/RenderingServer.xml:2376
msgid ""
"Sets the size of the area that the reflection probe will capture. Equivalent "
"to [member ReflectionProbe.extents]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2358
+#: doc/classes/RenderingServer.xml:2387
msgid ""
"Sets the intensity of the reflection probe. Intensity modulates the strength "
"of the reflection. Equivalent to [member ReflectionProbe.intensity]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2369
-msgid ""
-"Sets the ambient light color for this reflection probe when set to interior "
-"mode. Equivalent to [member ReflectionProbe.interior_ambient_color]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2380
-msgid ""
-"Sets the energy multiplier for this reflection probes ambient light "
-"contribution when set to interior mode. Equivalent to [member "
-"ReflectionProbe.interior_ambient_energy]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2391
-msgid ""
-"Sets the contribution value for how much the reflection affects the ambient "
-"light for this reflection probe when set to interior mode. Useful so that "
-"ambient light matches the color of the room. Equivalent to [member "
-"ReflectionProbe.interior_ambient_contrib]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2402
+#: doc/classes/RenderingServer.xml:2398
msgid ""
"Sets the max distance away from the probe an object can be before it is "
"culled. Equivalent to [member ReflectionProbe.max_distance]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2413
+#: doc/classes/RenderingServer.xml:2409
msgid ""
"Sets the origin offset to be used when this reflection probe is in box "
"project mode. Equivalent to [member ReflectionProbe.origin_offset]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2424
+#: doc/classes/RenderingServer.xml:2420
msgid ""
"Sets how often the reflection probe updates. Can either be once or every "
"frame. See [enum ReflectionProbeUpdateMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2437
+#: doc/classes/RenderingServer.xml:2433
msgid ""
"Schedules a callback to the corresponding named [code]method[/code] on "
"[code]where[/code] after a frame has been drawn.\n"
@@ -42731,7 +43401,7 @@ msgid ""
"[code]userdata[/code]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2445
+#: doc/classes/RenderingServer.xml:2441
msgid ""
"Creates a scenario and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all "
@@ -42741,24 +43411,24 @@ msgid ""
"The scenario is the 3D world that all the visual instances exist in."
msgstr ""
-#: doc/classes/RenderingServer.xml:2458
+#: doc/classes/RenderingServer.xml:2454
msgid ""
"Sets the [enum ScenarioDebugMode] for this scenario. See [enum "
"ScenarioDebugMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2469
+#: doc/classes/RenderingServer.xml:2465
msgid "Sets the environment that will be used with this scenario."
msgstr ""
-#: doc/classes/RenderingServer.xml:2480
+#: doc/classes/RenderingServer.xml:2476
msgid ""
"Sets the fallback environment to be used by this scenario. The fallback "
"environment is used if no environment is set. Internally, this is used by "
"the editor to provide a default environment."
msgstr ""
-#: doc/classes/RenderingServer.xml:2495
+#: doc/classes/RenderingServer.xml:2491
msgid ""
"Sets a boot image. The color defines the background color. If [code]scale[/"
"code] is [code]true[/code], the image will be scaled to fit the screen size. "
@@ -42767,19 +43437,19 @@ msgid ""
"the image will be scaled with nearest-neighbor interpolation."
msgstr ""
-#: doc/classes/RenderingServer.xml:2504
+#: doc/classes/RenderingServer.xml:2500
msgid ""
"If [code]true[/code], the engine will generate wireframes for use with the "
"wireframe debug mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:2513
+#: doc/classes/RenderingServer.xml:2509
msgid ""
"Sets the default clear color which is used when a specific clear color has "
"not been selected."
msgstr ""
-#: doc/classes/RenderingServer.xml:2520
+#: doc/classes/RenderingServer.xml:2516
msgid ""
"Creates an empty shader and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42788,47 +43458,47 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2530
+#: doc/classes/RenderingServer.xml:2526
msgid "Returns a shader's code."
msgstr ""
-#: doc/classes/RenderingServer.xml:2541
+#: doc/classes/RenderingServer.xml:2537
msgid "Returns a default texture from a shader searched by name."
msgstr ""
-#: doc/classes/RenderingServer.xml:2560
+#: doc/classes/RenderingServer.xml:2556
msgid "Returns the parameters of a shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:2571
+#: doc/classes/RenderingServer.xml:2567
msgid "Sets a shader's code."
msgstr ""
-#: doc/classes/RenderingServer.xml:2584
+#: doc/classes/RenderingServer.xml:2580
msgid "Sets a shader's default texture. Overwrites the texture given by name."
msgstr ""
-#: doc/classes/RenderingServer.xml:2597
+#: doc/classes/RenderingServer.xml:2593
msgid "Allocates the GPU buffers for this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2608
+#: doc/classes/RenderingServer.xml:2604
msgid "Returns the [Transform] set for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2619
+#: doc/classes/RenderingServer.xml:2615
msgid "Returns the [Transform2D] set for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2632
+#: doc/classes/RenderingServer.xml:2628
msgid "Sets the [Transform] for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2645
+#: doc/classes/RenderingServer.xml:2641
msgid "Sets the [Transform2D] for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2652
+#: doc/classes/RenderingServer.xml:2648
msgid ""
"Creates a skeleton and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all "
@@ -42837,11 +43507,11 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2662
+#: doc/classes/RenderingServer.xml:2658
msgid "Returns the number of bones allocated for this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2669
+#: doc/classes/RenderingServer.xml:2665
msgid ""
"Creates an empty sky and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all [code]sky_*[/"
@@ -42850,13 +43520,13 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2681
+#: doc/classes/RenderingServer.xml:2677
msgid ""
"Sets the material that the sky uses to render the background and reflection "
"maps."
msgstr ""
-#: doc/classes/RenderingServer.xml:2688
+#: doc/classes/RenderingServer.xml:2684
msgid ""
"Creates a spot light and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID can be used in most [code]light_*[/"
@@ -42867,15 +43537,15 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2717
+#: doc/classes/RenderingServer.xml:2713
msgid "Sets a viewport's camera."
msgstr ""
-#: doc/classes/RenderingServer.xml:2728
+#: doc/classes/RenderingServer.xml:2724
msgid "Sets a viewport's canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:2741
+#: doc/classes/RenderingServer.xml:2737
msgid ""
"Copies the viewport to a region of the screen specified by [code]rect[/"
"code]. If [method viewport_set_render_direct_to_screen] is [code]true[/"
@@ -42897,7 +43567,7 @@ msgid ""
"viewport_set_render_direct_to_screen]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2755
+#: doc/classes/RenderingServer.xml:2751
msgid ""
"Creates an empty viewport and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42906,72 +43576,72 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2767
+#: doc/classes/RenderingServer.xml:2763
msgid ""
"Returns a viewport's render information. For options, see the [enum "
"ViewportRenderInfo] constants."
msgstr ""
-#: doc/classes/RenderingServer.xml:2776
+#: doc/classes/RenderingServer.xml:2772
msgid "Returns the viewport's last rendered frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:2787
+#: doc/classes/RenderingServer.xml:2783
msgid "Detaches a viewport from a canvas and vice versa."
msgstr ""
-#: doc/classes/RenderingServer.xml:2798
+#: doc/classes/RenderingServer.xml:2794
msgid "If [code]true[/code], sets the viewport active, else sets it inactive."
msgstr ""
-#: doc/classes/RenderingServer.xml:2813
+#: doc/classes/RenderingServer.xml:2809
msgid ""
"Sets the stacking order for a viewport's canvas.\n"
"[code]layer[/code] is the actual canvas layer, while [code]sublayer[/code] "
"specifies the stacking order of the canvas among those in the same layer."
msgstr ""
-#: doc/classes/RenderingServer.xml:2827
+#: doc/classes/RenderingServer.xml:2823
msgid "Sets the transformation of a viewport's canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:2838
+#: doc/classes/RenderingServer.xml:2834
msgid ""
"Sets the clear mode of a viewport. See [enum ViewportClearMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2849
+#: doc/classes/RenderingServer.xml:2845
msgid ""
"Sets the debug draw mode of a viewport. See [enum ViewportDebugDraw] for "
"options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2860
+#: doc/classes/RenderingServer.xml:2856
msgid ""
"If [code]true[/code], rendering of a viewport's environment is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:2871
+#: doc/classes/RenderingServer.xml:2867
msgid "Sets the viewport's global transformation matrix."
msgstr ""
-#: doc/classes/RenderingServer.xml:2882
+#: doc/classes/RenderingServer.xml:2878
msgid "If [code]true[/code], the viewport's canvas is not rendered."
msgstr ""
-#: doc/classes/RenderingServer.xml:2893
+#: doc/classes/RenderingServer.xml:2889
msgid "Currently unimplemented in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:2904
+#: doc/classes/RenderingServer.xml:2900
msgid "Sets the anti-aliasing mode. See [enum ViewportMSAA] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2915
+#: doc/classes/RenderingServer.xml:2911
msgid "Sets the viewport's parent to another viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:2926
+#: doc/classes/RenderingServer.xml:2922
msgid ""
"If [code]true[/code], render the contents of the viewport directly to "
"screen. This allows a low-level optimization where you can skip drawing a "
@@ -42987,455 +43657,455 @@ msgid ""
"significantly larger than the window size."
msgstr ""
-#: doc/classes/RenderingServer.xml:2937
+#: doc/classes/RenderingServer.xml:2933
msgid ""
"Sets a viewport's scenario.\n"
"The scenario contains information about the [enum ScenarioDebugMode], "
"environment information, reflection atlas etc."
msgstr ""
-#: doc/classes/RenderingServer.xml:2951
+#: doc/classes/RenderingServer.xml:2947
msgid "Sets the shadow atlas quadrant's subdivision."
msgstr ""
-#: doc/classes/RenderingServer.xml:2962
+#: doc/classes/RenderingServer.xml:2958
msgid ""
"Sets the size of the shadow atlas's images (used for omni and spot lights). "
"The value will be rounded up to the nearest power of 2."
msgstr ""
-#: doc/classes/RenderingServer.xml:2975
+#: doc/classes/RenderingServer.xml:2971
msgid "Sets the viewport's width and height."
msgstr ""
-#: doc/classes/RenderingServer.xml:2986
+#: doc/classes/RenderingServer.xml:2982
msgid ""
"If [code]true[/code], the viewport renders its background as transparent."
msgstr ""
-#: doc/classes/RenderingServer.xml:2997
+#: doc/classes/RenderingServer.xml:2993
msgid ""
"Sets when the viewport should be updated. See [enum ViewportUpdateMode] "
"constants for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:3008
+#: doc/classes/RenderingServer.xml:3004
msgid ""
"If [code]true[/code], the viewport uses augmented or virtual reality "
"technologies. See [XRInterface]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3014
+#: doc/classes/RenderingServer.xml:3010
msgid ""
"If [code]false[/code], disables rendering completely, but the engine logic "
"is still being processed. You can call [method force_draw] to draw a frame "
"even with rendering disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3020
+#: doc/classes/RenderingServer.xml:3016
msgid ""
"Emitted at the end of the frame, after the RenderingServer has finished "
"updating all the Viewports."
msgstr ""
-#: doc/classes/RenderingServer.xml:3025
+#: doc/classes/RenderingServer.xml:3021
msgid ""
"Emitted at the beginning of the frame, before the RenderingServer updates "
"all the Viewports."
msgstr ""
-#: doc/classes/RenderingServer.xml:3031
+#: doc/classes/RenderingServer.xml:3027
msgid "Marks an error that shows that the index array is empty."
msgstr ""
-#: doc/classes/RenderingServer.xml:3034
+#: doc/classes/RenderingServer.xml:3030
msgid "Number of weights/bones per vertex."
msgstr ""
-#: doc/classes/RenderingServer.xml:3037
+#: doc/classes/RenderingServer.xml:3033
msgid "The minimum Z-layer for canvas items."
msgstr ""
-#: doc/classes/RenderingServer.xml:3040
+#: doc/classes/RenderingServer.xml:3036
msgid "The maximum Z-layer for canvas items."
msgstr ""
-#: doc/classes/RenderingServer.xml:3043
+#: doc/classes/RenderingServer.xml:3039
msgid ""
"Max number of glow levels that can be used with glow post-process effect."
msgstr ""
-#: doc/classes/RenderingServer.xml:3046
+#: doc/classes/RenderingServer.xml:3042
msgid "Unused enum in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:3067
+#: doc/classes/RenderingServer.xml:3063
msgid "Shader is a 3D shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3070
+#: doc/classes/RenderingServer.xml:3066
msgid "Shader is a 2D shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3073
+#: doc/classes/RenderingServer.xml:3069
msgid "Shader is a particle shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3076
+#: doc/classes/RenderingServer.xml:3072
msgid "Shader is a sky shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3079
+#: doc/classes/RenderingServer.xml:3075
msgid "Represents the size of the [enum ShaderMode] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3082
+#: doc/classes/RenderingServer.xml:3078
msgid "The minimum renderpriority of all materials."
msgstr ""
-#: doc/classes/RenderingServer.xml:3085
+#: doc/classes/RenderingServer.xml:3081
msgid "The maximum renderpriority of all materials."
msgstr ""
-#: doc/classes/RenderingServer.xml:3088
+#: doc/classes/RenderingServer.xml:3084
msgid "Array is a vertex array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3091
+#: doc/classes/RenderingServer.xml:3087
msgid "Array is a normal array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3094
+#: doc/classes/RenderingServer.xml:3090
msgid "Array is a tangent array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3097
+#: doc/classes/RenderingServer.xml:3093
msgid "Array is a color array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3100
+#: doc/classes/RenderingServer.xml:3096
msgid "Array is an UV coordinates array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3103
+#: doc/classes/RenderingServer.xml:3099
msgid "Array is an UV coordinates array for the second UV coordinates."
msgstr ""
-#: doc/classes/RenderingServer.xml:3106
+#: doc/classes/RenderingServer.xml:3102
msgid "Array contains bone information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3109
+#: doc/classes/RenderingServer.xml:3105
msgid "Array is weight information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3112
+#: doc/classes/RenderingServer.xml:3108
msgid "Array is index array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3118
+#: doc/classes/RenderingServer.xml:3114
msgid "Flag used to mark a vertex array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3121
+#: doc/classes/RenderingServer.xml:3117
msgid "Flag used to mark a normal array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3124
+#: doc/classes/RenderingServer.xml:3120
msgid "Flag used to mark a tangent array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3127
+#: doc/classes/RenderingServer.xml:3123
msgid "Flag used to mark a color array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3130
+#: doc/classes/RenderingServer.xml:3126
msgid "Flag used to mark an UV coordinates array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3133
+#: doc/classes/RenderingServer.xml:3129
msgid ""
"Flag used to mark an UV coordinates array for the second UV coordinates."
msgstr ""
-#: doc/classes/RenderingServer.xml:3136
+#: doc/classes/RenderingServer.xml:3132
msgid "Flag used to mark a bone information array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3139
+#: doc/classes/RenderingServer.xml:3135
msgid "Flag used to mark a weights array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3142
+#: doc/classes/RenderingServer.xml:3138
msgid "Flag used to mark an index array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3171
+#: doc/classes/RenderingServer.xml:3167
msgid "Primitive to draw consists of points."
msgstr ""
-#: doc/classes/RenderingServer.xml:3174
+#: doc/classes/RenderingServer.xml:3170
msgid "Primitive to draw consists of lines."
msgstr ""
-#: doc/classes/RenderingServer.xml:3177
+#: doc/classes/RenderingServer.xml:3173
msgid "Primitive to draw consists of a line strip from start to end."
msgstr ""
-#: doc/classes/RenderingServer.xml:3180
+#: doc/classes/RenderingServer.xml:3176
msgid "Primitive to draw consists of triangles."
msgstr ""
-#: doc/classes/RenderingServer.xml:3183
+#: doc/classes/RenderingServer.xml:3179
msgid ""
"Primitive to draw consists of a triangle strip (the last 3 vertices are "
"always combined to make a triangle)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3186
+#: doc/classes/RenderingServer.xml:3182
msgid "Represents the size of the [enum PrimitiveType] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3195
+#: doc/classes/RenderingServer.xml:3191
msgid "Use [Transform2D] to store MultiMesh transform."
msgstr ""
-#: doc/classes/RenderingServer.xml:3198
+#: doc/classes/RenderingServer.xml:3194
msgid "Use [Transform] to store MultiMesh transform."
msgstr ""
-#: doc/classes/RenderingServer.xml:3201
+#: doc/classes/RenderingServer.xml:3197
msgid "Is a directional (sun) light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3204
+#: doc/classes/RenderingServer.xml:3200
msgid "Is an omni light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3207
+#: doc/classes/RenderingServer.xml:3203
msgid "Is a spot light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3210
+#: doc/classes/RenderingServer.xml:3206
msgid "The light's energy."
msgstr ""
-#: doc/classes/RenderingServer.xml:3215
+#: doc/classes/RenderingServer.xml:3211
msgid "The light's influence on specularity."
msgstr ""
-#: doc/classes/RenderingServer.xml:3218
+#: doc/classes/RenderingServer.xml:3214
msgid "The light's range."
msgstr ""
-#: doc/classes/RenderingServer.xml:3221
+#: doc/classes/RenderingServer.xml:3217
msgid ""
"The size of the light when using spot light or omni light. The angular size "
"of the light when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3224
+#: doc/classes/RenderingServer.xml:3220
msgid "The light's attenuation."
msgstr ""
-#: doc/classes/RenderingServer.xml:3227
+#: doc/classes/RenderingServer.xml:3223
msgid "The spotlight's angle."
msgstr ""
-#: doc/classes/RenderingServer.xml:3230
+#: doc/classes/RenderingServer.xml:3226
msgid "The spotlight's attenuation."
msgstr ""
-#: doc/classes/RenderingServer.xml:3233
+#: doc/classes/RenderingServer.xml:3229
msgid "Max distance that shadows will be rendered."
msgstr ""
-#: doc/classes/RenderingServer.xml:3236
+#: doc/classes/RenderingServer.xml:3232
msgid "Proportion of shadow atlas occupied by the first split."
msgstr ""
-#: doc/classes/RenderingServer.xml:3239
+#: doc/classes/RenderingServer.xml:3235
msgid "Proportion of shadow atlas occupied by the second split."
msgstr ""
-#: doc/classes/RenderingServer.xml:3242
+#: doc/classes/RenderingServer.xml:3238
msgid ""
"Proportion of shadow atlas occupied by the third split. The fourth split "
"occupies the rest."
msgstr ""
-#: doc/classes/RenderingServer.xml:3245
+#: doc/classes/RenderingServer.xml:3241
msgid ""
"Proportion of shadow max distance where the shadow will start to fade out."
msgstr ""
-#: doc/classes/RenderingServer.xml:3248
+#: doc/classes/RenderingServer.xml:3244
msgid ""
"Normal bias used to offset shadow lookup by object normal. Can be used to "
"fix self-shadowing artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3251
+#: doc/classes/RenderingServer.xml:3247
msgid "Bias the shadow lookup to fix self-shadowing artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3257
+#: doc/classes/RenderingServer.xml:3253
msgid ""
"Blurs the edges of the shadow. Can be used to hide pixel artifacts in low "
"resolution shadow maps. A high value can make shadows appear grainy and can "
"cause other unwanted artifacts. Try to keep as near default as possible."
msgstr ""
-#: doc/classes/RenderingServer.xml:3262
+#: doc/classes/RenderingServer.xml:3258
msgid "Represents the size of the [enum LightParam] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3265
+#: doc/classes/RenderingServer.xml:3267
msgid "Use a dual paraboloid shadow map for omni lights."
msgstr ""
-#: doc/classes/RenderingServer.xml:3268
+#: doc/classes/RenderingServer.xml:3270
msgid ""
"Use a cubemap shadow map for omni lights. Slower but better quality than "
"dual paraboloid."
msgstr ""
-#: doc/classes/RenderingServer.xml:3271
+#: doc/classes/RenderingServer.xml:3273
msgid "Use orthogonal shadow projection for directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3274
+#: doc/classes/RenderingServer.xml:3276
msgid "Use 2 splits for shadow projection when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3277
+#: doc/classes/RenderingServer.xml:3279
msgid "Use 4 splits for shadow projection when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3280
+#: doc/classes/RenderingServer.xml:3282
msgid ""
"Keeps shadows stable as camera moves but has lower effective resolution."
msgstr ""
-#: doc/classes/RenderingServer.xml:3283
+#: doc/classes/RenderingServer.xml:3285
msgid ""
"Optimize use of shadow maps, increasing the effective resolution. But may "
"result in shadows moving or flickering slightly."
msgstr ""
-#: doc/classes/RenderingServer.xml:3286
+#: doc/classes/RenderingServer.xml:3288
msgid "Reflection probe will update reflections once and then stop."
msgstr ""
-#: doc/classes/RenderingServer.xml:3289
+#: doc/classes/RenderingServer.xml:3291
msgid ""
"Reflection probe will update each frame. This mode is necessary to capture "
"moving objects."
msgstr ""
-#: doc/classes/RenderingServer.xml:3302
+#: doc/classes/RenderingServer.xml:3310
msgid "Draw particles in the order that they appear in the particles array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3305
+#: doc/classes/RenderingServer.xml:3313
msgid "Sort particles based on their lifetime."
msgstr ""
-#: doc/classes/RenderingServer.xml:3308
+#: doc/classes/RenderingServer.xml:3316
msgid "Sort particles based on their distance to the camera."
msgstr ""
-#: doc/classes/RenderingServer.xml:3311
+#: doc/classes/RenderingServer.xml:3319
msgid "Do not update the viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:3314
+#: doc/classes/RenderingServer.xml:3322
msgid "Update the viewport once then set to disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3317
+#: doc/classes/RenderingServer.xml:3325
msgid "Update the viewport whenever it is visible."
msgstr ""
-#: doc/classes/RenderingServer.xml:3322
+#: doc/classes/RenderingServer.xml:3330
msgid "Always update the viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:3325
+#: doc/classes/RenderingServer.xml:3333
msgid "The viewport is always cleared before drawing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3328
+#: doc/classes/RenderingServer.xml:3336
msgid "The viewport is never cleared before drawing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3331
+#: doc/classes/RenderingServer.xml:3339
msgid ""
"The viewport is cleared once, then the clear mode is set to [constant "
"VIEWPORT_CLEAR_NEVER]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3334
+#: doc/classes/RenderingServer.xml:3342
msgid "Multisample antialiasing is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3337
+#: doc/classes/RenderingServer.xml:3345
msgid "Multisample antialiasing uses 2 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3340
+#: doc/classes/RenderingServer.xml:3348
msgid "Multisample antialiasing uses 4 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3343
+#: doc/classes/RenderingServer.xml:3351
msgid "Multisample antialiasing uses 8 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3346
+#: doc/classes/RenderingServer.xml:3354
msgid "Multisample antialiasing uses 16 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3357
+#: doc/classes/RenderingServer.xml:3365
msgid "Number of objects drawn in a single frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3360
+#: doc/classes/RenderingServer.xml:3368
msgid "Number of vertices drawn in a single frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3363
+#: doc/classes/RenderingServer.xml:3371
msgid "Number of material changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3366
+#: doc/classes/RenderingServer.xml:3374
msgid "Number of shader changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3369
+#: doc/classes/RenderingServer.xml:3377
msgid "Number of surface changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3372
+#: doc/classes/RenderingServer.xml:3380
msgid "Number of draw calls during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3375
+#: doc/classes/RenderingServer.xml:3383
msgid "Represents the size of the [enum ViewportRenderInfo] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3378
+#: doc/classes/RenderingServer.xml:3386
msgid "Debug draw is disabled. Default setting."
msgstr ""
-#: doc/classes/RenderingServer.xml:3381 doc/classes/Viewport.xml:348
+#: doc/classes/RenderingServer.xml:3389 doc/classes/Viewport.xml:348
msgid "Objects are displayed without light information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3384
+#: doc/classes/RenderingServer.xml:3392
msgid "Objects are displayed with only light information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3387 doc/classes/Viewport.xml:353
+#: doc/classes/RenderingServer.xml:3395 doc/classes/Viewport.xml:353
msgid ""
"Objects are displayed semi-transparent with additive blending so you can see "
"where they are drawing over top of one another. A higher overdraw means you "
@@ -43443,41 +44113,41 @@ msgid ""
"others."
msgstr ""
-#: doc/classes/RenderingServer.xml:3390
+#: doc/classes/RenderingServer.xml:3398
msgid "Debug draw draws objects in wireframe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3393
+#: doc/classes/RenderingServer.xml:3401
msgid ""
"Normal buffer is drawn instead of regular scene so you can see the per-pixel "
"normals that will be used by post-processing effects."
msgstr ""
-#: doc/classes/RenderingServer.xml:3396 doc/classes/Viewport.xml:361
+#: doc/classes/RenderingServer.xml:3404 doc/classes/Viewport.xml:361
msgid "Objects are displayed with only the albedo value from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3399 doc/classes/Viewport.xml:364
+#: doc/classes/RenderingServer.xml:3407 doc/classes/Viewport.xml:364
msgid "Objects are displayed with only the lighting value from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3402 doc/classes/Viewport.xml:367
+#: doc/classes/RenderingServer.xml:3410 doc/classes/Viewport.xml:367
msgid "Objects are displayed with only the emission color from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3405 doc/classes/Viewport.xml:370
+#: doc/classes/RenderingServer.xml:3413 doc/classes/Viewport.xml:370
msgid ""
"Draws the shadow atlas that stores shadows from [OmniLight3D]s and "
"[SpotLight3D]s in the upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3408 doc/classes/Viewport.xml:373
+#: doc/classes/RenderingServer.xml:3416 doc/classes/Viewport.xml:373
msgid ""
"Draws the shadow atlas that stores shadows from [DirectionalLight3D]s in the "
"upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3413
+#: doc/classes/RenderingServer.xml:3421
msgid ""
"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 "
@@ -43485,21 +44155,14 @@ msgid ""
"your [WorldEnvironment]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3416 doc/classes/Viewport.xml:381
-msgid ""
-"Draws the roughness limiter post process over the Viewport so you can see "
-"where it has an effect. It must be enabled in [member ProjectSettings."
-"rendering/quality/screen_filters/screen_space_roughness_limiter] to work."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:3419
+#: doc/classes/RenderingServer.xml:3424
msgid ""
"Colors each PSSM split for the [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."
msgstr ""
-#: doc/classes/RenderingServer.xml:3424
+#: doc/classes/RenderingServer.xml:3435
msgid ""
"Uses high quality importance sampling to process the radiance map. In "
"general, this results in much higher quality than [constant Sky."
@@ -43510,7 +44173,7 @@ msgid ""
"ggx_samples]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3427
+#: doc/classes/RenderingServer.xml:3438
msgid ""
"Uses the fast filtering algorithm to process the radiance map. In general "
"this results in lower quality, but substantially faster run times.\n"
@@ -43518,347 +44181,347 @@ msgid ""
"[member Sky.radiance_size] must be set to [constant Sky.RADIANCE_SIZE_256]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3431
+#: doc/classes/RenderingServer.xml:3442
msgid "Use the clear color as background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3434
+#: doc/classes/RenderingServer.xml:3445
msgid "Use a specified color as the background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3437
+#: doc/classes/RenderingServer.xml:3448
msgid "Use a sky resource for the background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3440
+#: doc/classes/RenderingServer.xml:3451
msgid ""
"Use a specified canvas layer as the background. This can be useful for "
"instantiating a 2D scene in a 3D world."
msgstr ""
-#: doc/classes/RenderingServer.xml:3443
+#: doc/classes/RenderingServer.xml:3454
msgid ""
"Do not clear the background, use whatever was rendered last frame as the "
"background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3449
+#: doc/classes/RenderingServer.xml:3460
msgid "Represents the size of the [enum EnvironmentBG] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3488
+#: doc/classes/RenderingServer.xml:3499
msgid "Output color as they came in."
msgstr ""
-#: doc/classes/RenderingServer.xml:3491
+#: doc/classes/RenderingServer.xml:3502
msgid "Use the Reinhard tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3494
+#: doc/classes/RenderingServer.xml:3505
msgid "Use the filmic tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3497
+#: doc/classes/RenderingServer.xml:3508
msgid "Use the ACES tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3508
+#: doc/classes/RenderingServer.xml:3519
msgid "Disables the blur set for SSAO. Will make SSAO look noisier."
msgstr ""
-#: doc/classes/RenderingServer.xml:3511
+#: doc/classes/RenderingServer.xml:3522
msgid "Perform a 1x1 blur on the SSAO output."
msgstr ""
-#: doc/classes/RenderingServer.xml:3514
+#: doc/classes/RenderingServer.xml:3525
msgid "Performs a 2x2 blur on the SSAO output."
msgstr ""
-#: doc/classes/RenderingServer.xml:3517
+#: doc/classes/RenderingServer.xml:3528
msgid "Performs a 3x3 blur on the SSAO output. Use this for smoothest SSAO."
msgstr ""
-#: doc/classes/RenderingServer.xml:3520
+#: doc/classes/RenderingServer.xml:3531
msgid "Lowest quality of screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3523
+#: doc/classes/RenderingServer.xml:3534
msgid "Medium quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3526
+#: doc/classes/RenderingServer.xml:3537
msgid "High quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3529
+#: doc/classes/RenderingServer.xml:3540
msgid "Highest quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3540
+#: doc/classes/RenderingServer.xml:3551
msgid ""
"Lowest quality DOF blur. This is the fastest setting, but you may be able to "
"see filtering artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3543
+#: doc/classes/RenderingServer.xml:3554
msgid "Low quality DOF blur."
msgstr ""
-#: doc/classes/RenderingServer.xml:3546
+#: doc/classes/RenderingServer.xml:3557
msgid "Medium quality DOF blur."
msgstr ""
-#: doc/classes/RenderingServer.xml:3549
+#: doc/classes/RenderingServer.xml:3560
msgid ""
"Highest quality DOF blur. Results in the smoothest looking blur by taking "
"the most samples, but is also significantly slower."
msgstr ""
-#: doc/classes/RenderingServer.xml:3552
+#: doc/classes/RenderingServer.xml:3563
msgid ""
"Calculate the DOF blur using a box filter. The fastest option, but results "
"in obvious lines in blur pattern."
msgstr ""
-#: doc/classes/RenderingServer.xml:3555
+#: doc/classes/RenderingServer.xml:3566
msgid "Calculates DOF blur using a hexagon shaped filter."
msgstr ""
-#: doc/classes/RenderingServer.xml:3558
+#: doc/classes/RenderingServer.xml:3569
msgid ""
"Calculates DOF blur using a circle shaped filter. Best quality and most "
"realistic, but slowest. Use only for areas where a lot of performance can be "
"dedicated to post-processing (e.g. cutscenes)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3573
+#: doc/classes/RenderingServer.xml:3584
msgid "Do not use a debug mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:3576
+#: doc/classes/RenderingServer.xml:3587
msgid "Draw all objects as wireframe models."
msgstr ""
-#: doc/classes/RenderingServer.xml:3579
+#: doc/classes/RenderingServer.xml:3590
msgid ""
"Draw all objects in a way that displays how much overdraw is occurring. "
"Overdraw occurs when a section of pixels is drawn and shaded and then "
"another object covers it up. To optimize a scene, you should reduce overdraw."
msgstr ""
-#: doc/classes/RenderingServer.xml:3582
+#: doc/classes/RenderingServer.xml:3593
msgid ""
"Draw all objects without shading. Equivalent to setting all objects shaders "
"to [code]unshaded[/code]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3585
+#: doc/classes/RenderingServer.xml:3596
msgid "The instance does not have a type."
msgstr ""
-#: doc/classes/RenderingServer.xml:3588
+#: doc/classes/RenderingServer.xml:3599
msgid "The instance is a mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:3591
+#: doc/classes/RenderingServer.xml:3602
msgid "The instance is a multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:3594
+#: doc/classes/RenderingServer.xml:3605
msgid "The instance is an immediate geometry."
msgstr ""
-#: doc/classes/RenderingServer.xml:3597
+#: doc/classes/RenderingServer.xml:3608
msgid "The instance is a particle emitter."
msgstr ""
-#: doc/classes/RenderingServer.xml:3600
+#: doc/classes/RenderingServer.xml:3611
msgid "The instance is a light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3603
+#: doc/classes/RenderingServer.xml:3614
msgid "The instance is a reflection probe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3606
+#: doc/classes/RenderingServer.xml:3617
msgid "The instance is a decal."
msgstr ""
-#: doc/classes/RenderingServer.xml:3609
+#: doc/classes/RenderingServer.xml:3620
msgid "The instance is a GI probe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3612
+#: doc/classes/RenderingServer.xml:3623
msgid "The instance is a lightmap."
msgstr ""
-#: doc/classes/RenderingServer.xml:3615
+#: doc/classes/RenderingServer.xml:3626
msgid "Represents the size of the [enum InstanceType] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3618
+#: doc/classes/RenderingServer.xml:3629
msgid ""
"A combination of the flags of geometry instances (mesh, multimesh, immediate "
"and particles)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3621
+#: doc/classes/RenderingServer.xml:3632
msgid "Allows the instance to be used in baked lighting."
msgstr ""
-#: doc/classes/RenderingServer.xml:3624
+#: doc/classes/RenderingServer.xml:3635
msgid "Allows the instance to be used with dynamic global illumination."
msgstr ""
-#: doc/classes/RenderingServer.xml:3627
+#: doc/classes/RenderingServer.xml:3638
msgid "When set, manually requests to draw geometry on next frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3630
+#: doc/classes/RenderingServer.xml:3641
msgid "Represents the size of the [enum InstanceFlags] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3633
+#: doc/classes/RenderingServer.xml:3644
msgid "Disable shadows from this instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:3636
+#: doc/classes/RenderingServer.xml:3647
msgid "Cast shadows from this instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:3639
+#: doc/classes/RenderingServer.xml:3650
msgid ""
"Disable backface culling when rendering the shadow of the object. This is "
"slightly slower but may result in more correct shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3642
+#: doc/classes/RenderingServer.xml:3653
msgid ""
"Only render the shadows from the object. The object itself will not be drawn."
msgstr ""
-#: doc/classes/RenderingServer.xml:3645
+#: doc/classes/RenderingServer.xml:3656
msgid "The nine patch gets stretched where needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3648
+#: doc/classes/RenderingServer.xml:3659
msgid "The nine patch gets filled with tiles where needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3651
+#: doc/classes/RenderingServer.xml:3662
msgid ""
"The nine patch gets filled with tiles where needed and stretches them a bit "
"if needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3654
+#: doc/classes/RenderingServer.xml:3665
msgid "Uses the default filter mode for this [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3666 doc/classes/Viewport.xml:399
+#: doc/classes/RenderingServer.xml:3677 doc/classes/Viewport.xml:402
msgid ""
"The texture filter blends between the nearest 4 pixels and between the "
"nearest 2 mipmaps."
msgstr ""
-#: doc/classes/RenderingServer.xml:3675
+#: doc/classes/RenderingServer.xml:3686
msgid "Max value for [enum CanvasItemTextureFilter] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3678
+#: doc/classes/RenderingServer.xml:3689
msgid "Uses the default repeat mode for this [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3681 doc/classes/Viewport.xml:405
+#: doc/classes/RenderingServer.xml:3692 doc/classes/Viewport.xml:408
msgid ""
"Disables textures repeating. Instead, when reading UVs outside the 0-1 "
"range, the value will be clamped to the edge of the texture, resulting in a "
"stretched out look at the borders of the texture."
msgstr ""
-#: doc/classes/RenderingServer.xml:3687 doc/classes/Viewport.xml:411
+#: doc/classes/RenderingServer.xml:3698 doc/classes/Viewport.xml:414
msgid ""
"Flip the texture when repeating so that the edge lines up instead of "
"abruptly changing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3690
+#: doc/classes/RenderingServer.xml:3701
msgid "Max value for [enum CanvasItemTextureRepeat] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3693
+#: doc/classes/RenderingServer.xml:3704
msgid "Adds light color additive to the canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:3696
+#: doc/classes/RenderingServer.xml:3707
msgid "Adds light color subtractive to the canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:3699
+#: doc/classes/RenderingServer.xml:3710
msgid "The light adds color depending on transparency."
msgstr ""
-#: doc/classes/RenderingServer.xml:3702
+#: doc/classes/RenderingServer.xml:3713
msgid "The light adds color depending on mask."
msgstr ""
-#: doc/classes/RenderingServer.xml:3705
+#: doc/classes/RenderingServer.xml:3716
msgid "Do not apply a filter to canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3708
+#: doc/classes/RenderingServer.xml:3719
msgid "Use PCF5 filtering to filter canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3711
+#: doc/classes/RenderingServer.xml:3722
msgid "Use PCF13 filtering to filter canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3714
+#: doc/classes/RenderingServer.xml:3725
msgid "Max value of the [enum CanvasLightShadowFilter] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3717
+#: doc/classes/RenderingServer.xml:3728
msgid "Culling of the canvas occluder is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3720
+#: doc/classes/RenderingServer.xml:3731
msgid "Culling of the canvas occluder is clockwise."
msgstr ""
-#: doc/classes/RenderingServer.xml:3723
+#: doc/classes/RenderingServer.xml:3734
msgid "Culling of the canvas occluder is counterclockwise."
msgstr ""
-#: doc/classes/RenderingServer.xml:3784
+#: doc/classes/RenderingServer.xml:3795
msgid "The amount of objects in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3787
+#: doc/classes/RenderingServer.xml:3798
msgid "The amount of vertices in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3790
+#: doc/classes/RenderingServer.xml:3801
msgid "The amount of modified materials in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3793
+#: doc/classes/RenderingServer.xml:3804
msgid "The amount of shader rebinds in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3796
+#: doc/classes/RenderingServer.xml:3807
msgid "The amount of surface changes in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3799
+#: doc/classes/RenderingServer.xml:3810
msgid "The amount of draw calls in frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3814
+#: doc/classes/RenderingServer.xml:3825
msgid "Hardware supports shaders. This enum is currently unused in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:3817
+#: doc/classes/RenderingServer.xml:3828
msgid ""
"Hardware supports multithreading. This enum is currently unused in Godot 3.x."
msgstr ""
@@ -43870,13 +44533,13 @@ msgstr ""
#: doc/classes/Resource.xml:7
msgid ""
"Resource is the base class for all Godot-specific resource types, serving "
-"primarily as data containers. They are reference counted and freed when no "
-"longer in use. They are also cached once loaded from disk, so that any "
-"further attempts to load a resource from a given path will return the same "
-"reference (all this in contrast to a [Node], which is not reference counted "
-"and can be instanced from disk as many times as desired). Resources can be "
-"saved externally on disk or bundled into another object, such as a [Node] or "
-"another resource."
+"primarily as data containers. Unlike [Object]s, they are reference-counted "
+"and freed when no longer in use. They are also cached once loaded from disk, "
+"so that any further attempts to load a resource from a given path will "
+"return the same reference (all this in contrast to a [Node], which is not "
+"reference-counted and can be instanced from disk as many times as desired). "
+"Resources can be saved externally on disk or bundled into another object, "
+"such as a [Node] or another resource."
msgstr ""
#: doc/classes/Resource.xml:10
@@ -43885,34 +44548,38 @@ msgid ""
"resources.html"
msgstr ""
-#: doc/classes/Resource.xml:17
+#: doc/classes/Resource.xml:18
msgid ""
"Virtual function which can be overridden to customize the behavior value of "
"[method setup_local_to_scene]."
msgstr ""
-#: doc/classes/Resource.xml:26
+#: doc/classes/Resource.xml:27
msgid ""
"Duplicates the resource, returning a new resource. By default, sub-resources "
-"are shared between resource copies for efficiency, this can be changed by "
-"passing [code]true[/code] to the [code]subresources[/code] argument."
+"are shared between resource copies for efficiency. This can be changed by "
+"passing [code]true[/code] to the [code]subresources[/code] argument which "
+"will copy the subresources.\n"
+"[b]Note:[/b] If [code]subresources[/code] is [code]true[/code], this method "
+"will only perform a shallow copy. Nested resources within subresources will "
+"not be duplicated and will still be shared."
msgstr ""
-#: doc/classes/Resource.xml:33
+#: doc/classes/Resource.xml:35
msgid ""
"If [member resource_local_to_scene] is enabled and the resource was loaded "
"from a [PackedScene] instantiation, returns the local scene where this "
"resource's unique copy is in use. Otherwise, returns [code]null[/code]."
msgstr ""
-#: doc/classes/Resource.xml:40
+#: doc/classes/Resource.xml:42
msgid ""
"Returns the RID of the resource (or an empty RID). Many resources (such as "
"[Texture2D], [Mesh], etc) are high-level abstractions of resources stored in "
"a server, so this function will return the original RID."
msgstr ""
-#: doc/classes/Resource.xml:47
+#: doc/classes/Resource.xml:49
msgid ""
"This method is called when a resource with [member resource_local_to_scene] "
"enabled is loaded from a [PackedScene] instantiation. Its behavior can be "
@@ -43922,7 +44589,7 @@ msgid ""
"local viewport."
msgstr ""
-#: doc/classes/Resource.xml:57
+#: doc/classes/Resource.xml:59
msgid ""
"Sets the path of the resource, potentially overriding an existing cache "
"entry for this path. This differs from setting [member resource_path], as "
@@ -43930,25 +44597,25 @@ msgid ""
"given path."
msgstr ""
-#: doc/classes/Resource.xml:63
+#: doc/classes/Resource.xml:65
msgid ""
"If [code]true[/code], the resource will be made unique in each instance of "
"its local scene. It can thus be modified in a scene instance without "
"impacting other instances of that same scene."
msgstr ""
-#: doc/classes/Resource.xml:66
+#: doc/classes/Resource.xml:68
msgid "The name of the resource. This is an optional identifier."
msgstr ""
-#: doc/classes/Resource.xml:69
+#: doc/classes/Resource.xml:71
msgid ""
"The path to the resource. In case it has its own file, it will return its "
"filepath. If it's tied to the scene, it will return the scene's path, "
"followed by the resource's index."
msgstr ""
-#: doc/classes/Resource.xml:75
+#: doc/classes/Resource.xml:77
msgid "Emitted whenever the resource changes."
msgstr ""
@@ -44767,11 +45434,11 @@ msgid ""
"global coordinate system, but is centered at the object's origin."
msgstr ""
-#: doc/classes/RigidBody2D.xml:87
+#: doc/classes/RigidBody2D.xml:87 doc/classes/RigidBody3D.xml:99
msgid ""
-"Returns a list of the bodies colliding with this one. Use [member "
-"contacts_reported] to set the maximum number reported. You must also set "
-"[member contact_monitor] to [code]true[/code].\n"
+"Returns a list of the bodies colliding with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
"For performance, list of collisions is updated once per frame and before the "
"physics step. Consider using signals instead."
@@ -44808,7 +45475,7 @@ msgstr ""
msgid "The body's total applied torque."
msgstr ""
-#: doc/classes/RigidBody2D.xml:130 doc/classes/RigidBody3D.xml:150
+#: doc/classes/RigidBody2D.xml:130 doc/classes/RigidBody3D.xml:157
msgid ""
"If [code]true[/code], the body can enter sleep mode when there is no "
"movement. See [member sleeping]."
@@ -44820,11 +45487,17 @@ msgid ""
"another RigidBody2D. See also [member contacts_reported]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:136
-msgid "The maximum number of contacts to report."
+#: doc/classes/RigidBody2D.xml:136 doc/classes/RigidBody3D.xml:163
+msgid ""
+"The maximum number of contacts that will be recorded. Requires [member "
+"contact_monitor] to be set to [code]true[/code].\n"
+"[b]Note:[/b] The number of contacts is different from the number of "
+"collisions. Collisions between parallel edges will result in two contacts "
+"(one at each end), and collisions between parallel faces will result in four "
+"contacts (one at each corner)."
msgstr ""
-#: doc/classes/RigidBody2D.xml:139
+#: doc/classes/RigidBody2D.xml:140
msgid ""
"Continuous collision detection mode.\n"
"Continuous collision detection tries to predict where a moving body will "
@@ -44834,21 +45507,21 @@ msgid ""
"methods are available. See [enum CCDMode] for details."
msgstr ""
-#: doc/classes/RigidBody2D.xml:143
+#: doc/classes/RigidBody2D.xml:144
msgid ""
"If [code]true[/code], internal force integration is disabled for this body. "
"Aside from collision response, the body will only move as determined by the "
"[method _integrate_forces] function."
msgstr ""
-#: doc/classes/RigidBody2D.xml:146
+#: doc/classes/RigidBody2D.xml:147
msgid ""
"Multiplies the gravity applied to the body. The body's gravity is calculated "
"from the [b]Default Gravity[/b] value in [b]Project > Project Settings > "
"Physics > 2d[/b] and/or any additional gravity vector applied by [Area2D]s."
msgstr ""
-#: doc/classes/RigidBody2D.xml:149
+#: doc/classes/RigidBody2D.xml:150
msgid ""
"The body's moment of inertia. This is like mass, but for rotation: it "
"determines how much torque it takes to rotate the body. The moment of "
@@ -44857,18 +45530,18 @@ msgid ""
"automatically computing it."
msgstr ""
-#: doc/classes/RigidBody2D.xml:152
+#: doc/classes/RigidBody2D.xml:153
msgid ""
"Damps the body's [member linear_velocity]. If [code]-1[/code], the body will "
"use the [b]Default Linear Damp[/b] in [b]Project > Project Settings > "
"Physics > 2d[/b]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:161
+#: doc/classes/RigidBody2D.xml:162
msgid "The body's mode. See [enum Mode] for possible values."
msgstr ""
-#: doc/classes/RigidBody2D.xml:164 doc/classes/RigidBody3D.xml:181
+#: doc/classes/RigidBody2D.xml:165 doc/classes/RigidBody3D.xml:189
#: doc/classes/StaticBody2D.xml:22 doc/classes/StaticBody3D.xml:22
msgid ""
"The physics material override for the body.\n"
@@ -44876,50 +45549,50 @@ msgid ""
"other physics material, such as an inherited one."
msgstr ""
-#: doc/classes/RigidBody2D.xml:168 doc/classes/RigidBody3D.xml:185
+#: doc/classes/RigidBody2D.xml:169 doc/classes/RigidBody3D.xml:193
msgid ""
"If [code]true[/code], the body will not move and will not calculate forces "
"until woken up by another body through, for example, a collision, or by "
"using the [method apply_impulse] or [method add_force] methods."
msgstr ""
-#: doc/classes/RigidBody2D.xml:171
+#: doc/classes/RigidBody2D.xml:172
msgid ""
"The body's weight based on its mass and the [b]Default Gravity[/b] value in "
"[b]Project > Project Settings > Physics > 2d[/b]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:179
+#: doc/classes/RigidBody2D.xml:180 doc/classes/RigidBody3D.xml:204
msgid ""
-"Emitted when a body enters into contact with this one. [member "
-"contact_monitor] must be [code]true[/code] and [member contacts_reported] "
-"greater than [code]0[/code]."
+"Emitted when a body enters into contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:186
+#: doc/classes/RigidBody2D.xml:187
msgid ""
-"Emitted when a body exits contact with this one. [member contact_monitor] "
-"must be [code]true[/code] and [member contacts_reported] greater than "
-"[code]0[/code]."
+"Emitted when a body exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:199
+#: doc/classes/RigidBody2D.xml:200
msgid ""
"Emitted when a body enters into contact with this one. Reports colliding "
"shape information. See [CollisionObject2D] for shape index information. "
-"[member contact_monitor] must be [code]true[/code] and [member "
-"contacts_reported] greater than [code]0[/code]."
+"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:212
+#: doc/classes/RigidBody2D.xml:213
msgid ""
"Emitted when a body shape exits contact with this one. Reports colliding "
"shape information. See [CollisionObject2D] for shape index information. "
-"[member contact_monitor] must be [code]true[/code] and [member "
-"contacts_reported] greater than [code]0[/code]."
+"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:217 doc/classes/RigidBody3D.xml:236
+#: doc/classes/RigidBody2D.xml:218 doc/classes/RigidBody3D.xml:244
msgid ""
"Emitted when the physics engine changes the body's sleeping state.\n"
"[b]Note:[/b] Changing the value [member sleeping] will not trigger this "
@@ -44927,41 +45600,41 @@ msgid ""
"engine or [code]emit_signal(\"sleeping_state_changed\")[/code] is used."
msgstr ""
-#: doc/classes/RigidBody2D.xml:224
+#: doc/classes/RigidBody2D.xml:225
msgid ""
"Rigid mode. The body behaves as a physical object. It collides with other "
"bodies and responds to forces applied to it. This is the default mode."
msgstr ""
-#: doc/classes/RigidBody2D.xml:227
+#: doc/classes/RigidBody2D.xml:228
msgid "Static mode. The body behaves like a [StaticBody2D] and does not move."
msgstr ""
-#: doc/classes/RigidBody2D.xml:230
+#: doc/classes/RigidBody2D.xml:231
msgid ""
"Character mode. Similar to [constant MODE_RIGID], but the body can not "
"rotate."
msgstr ""
-#: doc/classes/RigidBody2D.xml:233
+#: doc/classes/RigidBody2D.xml:234
msgid ""
"Kinematic mode. The body behaves like a [KinematicBody2D], and must be moved "
"by code."
msgstr ""
-#: doc/classes/RigidBody2D.xml:236
+#: doc/classes/RigidBody2D.xml:237
msgid ""
"Continuous collision detection disabled. This is the fastest way to detect "
"body collisions, but can miss small, fast-moving objects."
msgstr ""
-#: doc/classes/RigidBody2D.xml:239
+#: doc/classes/RigidBody2D.xml:240
msgid ""
"Continuous collision detection enabled using raycasting. This is faster than "
"shapecasting but less precise."
msgstr ""
-#: doc/classes/RigidBody2D.xml:242
+#: doc/classes/RigidBody2D.xml:243
msgid ""
"Continuous collision detection enabled using shapecasting. This is the "
"slowest CCD method and the most precise."
@@ -45047,42 +45720,31 @@ msgid ""
"locked."
msgstr ""
-#: doc/classes/RigidBody3D.xml:99
+#: doc/classes/RigidBody3D.xml:107
msgid ""
-"Returns a list of the bodies colliding with this one. By default, number of "
-"max contacts reported is at 0, see the [member contacts_reported] property "
-"to increase it.\n"
-"[b]Note:[/b] The result of this test is not immediate after moving objects. "
-"For performance, list of collisions is updated once per frame and before the "
-"physics step. Consider using signals instead."
+"Returns the inverse inertia tensor basis. This is used to calculate the "
+"angular acceleration resulting from a torque applied to the [RigidBody3D]."
msgstr ""
-#: doc/classes/RigidBody3D.xml:111
+#: doc/classes/RigidBody3D.xml:118
msgid "Locks the specified linear or rotational axis."
msgstr ""
-#: doc/classes/RigidBody3D.xml:126
+#: doc/classes/RigidBody3D.xml:133
msgid "Damps RigidBody3D's rotational forces."
msgstr ""
-#: doc/classes/RigidBody3D.xml:129
+#: doc/classes/RigidBody3D.xml:136
msgid "RigidBody3D's rotational velocity."
msgstr ""
-#: doc/classes/RigidBody3D.xml:153
+#: doc/classes/RigidBody3D.xml:160
msgid ""
"If [code]true[/code], the RigidBody3D will emit signals when it collides "
-"with another RigidBody3D."
+"with another RigidBody3D. See also [member contacts_reported]."
msgstr ""
-#: doc/classes/RigidBody3D.xml:156
-msgid ""
-"The maximum contacts to report. Bodies can keep a log of the contacts with "
-"other bodies, this is enabled by setting the maximum amount of contacts "
-"reported to a number greater than 0."
-msgstr ""
-
-#: doc/classes/RigidBody3D.xml:159
+#: doc/classes/RigidBody3D.xml:167
msgid ""
"If [code]true[/code], continuous collision detection is used.\n"
"Continuous collision detection tries to predict where a moving body will "
@@ -45092,7 +45754,7 @@ msgid ""
"faster to compute, but can miss small, fast-moving objects."
msgstr ""
-#: doc/classes/RigidBody3D.xml:163
+#: doc/classes/RigidBody3D.xml:171
msgid ""
"If [code]true[/code], internal force integration will be disabled (like "
"gravity or air friction) for this body. Other than collision response, the "
@@ -45100,7 +45762,7 @@ msgid ""
"function, if defined."
msgstr ""
-#: doc/classes/RigidBody3D.xml:166
+#: doc/classes/RigidBody3D.xml:174
msgid ""
"This is multiplied by the global 3D gravity setting found in [b]Project > "
"Project Settings > Physics > 3d[/b] to produce RigidBody3D's gravity. For "
@@ -45108,14 +45770,14 @@ msgid ""
"and 0.5 will apply half gravity to this object."
msgstr ""
-#: doc/classes/RigidBody3D.xml:169
+#: doc/classes/RigidBody3D.xml:177
msgid ""
"The body's linear damp. Cannot be less than -1.0. If this value is different "
"from -1.0, any linear damp derived from the world or areas will be "
"overridden."
msgstr ""
-#: doc/classes/RigidBody3D.xml:172
+#: doc/classes/RigidBody3D.xml:180
msgid ""
"The body's linear velocity. Can be used sporadically, but [b]don't set this "
"every frame[/b], because physics may run in another thread and runs at a "
@@ -45123,60 +45785,57 @@ msgid ""
"for precise control of the body state."
msgstr ""
-#: doc/classes/RigidBody3D.xml:178
+#: doc/classes/RigidBody3D.xml:186
msgid "The body mode. See [enum Mode] for possible values."
msgstr ""
-#: doc/classes/RigidBody3D.xml:196
-msgid ""
-"Emitted when a body enters into contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work."
-msgstr ""
-
-#: doc/classes/RigidBody3D.xml:203
+#: doc/classes/RigidBody3D.xml:211
msgid ""
-"Emitted when a body shape exits contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work."
+"Emitted when a body shape exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody3D.xml:216
+#: doc/classes/RigidBody3D.xml:224
msgid ""
-"Emitted when a body enters into contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work.\n"
+"Emitted when a body enters into contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"This signal not only receives the body that collided with this one, but also "
"its [RID] ([code]body_id[/code]), the shape index from the colliding body "
"([code]body_shape[/code]), and the shape index from this body "
"([code]local_shape[/code]) the other body collided with."
msgstr ""
-#: doc/classes/RigidBody3D.xml:230
+#: doc/classes/RigidBody3D.xml:238
msgid ""
-"Emitted when a body shape exits contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work.\n"
+"Emitted when a body shape exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"This signal not only receives the body that stopped colliding with this one, "
"but also its [RID] ([code]body_id[/code]), the shape index from the "
"colliding body ([code]body_shape[/code]), and the shape index from this body "
"([code]local_shape[/code]) the other body stopped colliding with."
msgstr ""
-#: doc/classes/RigidBody3D.xml:243
+#: doc/classes/RigidBody3D.xml:251
msgid ""
"Rigid body mode. This is the \"natural\" state of a rigid body. It is "
"affected by forces, and can move, rotate, and be affected by user code."
msgstr ""
-#: doc/classes/RigidBody3D.xml:246
+#: doc/classes/RigidBody3D.xml:254
msgid ""
"Static mode. The body behaves like a [StaticBody3D], and can only move by "
"user code."
msgstr ""
-#: doc/classes/RigidBody3D.xml:249
+#: doc/classes/RigidBody3D.xml:257
msgid ""
"Character body mode. This behaves like a rigid body, but can not rotate."
msgstr ""
-#: doc/classes/RigidBody3D.xml:252
+#: doc/classes/RigidBody3D.xml:260
msgid ""
"Kinematic body mode. The body behaves like a [KinematicBody3D], and can only "
"move by user code."
@@ -45683,7 +46342,7 @@ msgstr ""
msgid "The time remaining."
msgstr ""
-#: doc/classes/SceneTreeTimer.xml:28 doc/classes/Timer.xml:62
+#: doc/classes/SceneTreeTimer.xml:28 doc/classes/Timer.xml:63
msgid "Emitted when the timer reaches 0."
msgstr ""
@@ -45806,27 +46465,27 @@ msgid ""
"the singleton using [method EditorInterface.get_script_editor]."
msgstr ""
-#: doc/classes/ScriptEditor.xml:40
+#: doc/classes/ScriptEditor.xml:46
msgid "Returns a [Script] that is currently active in editor."
msgstr ""
-#: doc/classes/ScriptEditor.xml:57
+#: doc/classes/ScriptEditor.xml:69
msgid ""
"Returns an array with all [Script] objects which are currently open in "
"editor."
msgstr ""
-#: doc/classes/ScriptEditor.xml:66
+#: doc/classes/ScriptEditor.xml:78
msgid "Goes to the specified line in the current script."
msgstr ""
-#: doc/classes/ScriptEditor.xml:85
+#: doc/classes/ScriptEditor.xml:113
msgid ""
"Emitted when user changed active script. Argument is a freshly activated "
"[Script]."
msgstr ""
-#: doc/classes/ScriptEditor.xml:92
+#: doc/classes/ScriptEditor.xml:120
msgid ""
"Emitted when editor is about to close the active script. Argument is a "
"[Script] that is going to be closed."
@@ -45888,7 +46547,7 @@ msgid ""
"visible."
msgstr ""
-#: doc/classes/ScrollContainer.xml:37 doc/classes/TextEdit.xml:453
+#: doc/classes/ScrollContainer.xml:37 doc/classes/TextEdit.xml:407
msgid "The current horizontal scroll value."
msgstr ""
@@ -45896,7 +46555,7 @@ msgstr ""
msgid "If [code]true[/code], enables horizontal scrolling."
msgstr ""
-#: doc/classes/ScrollContainer.xml:43 doc/classes/TextEdit.xml:456
+#: doc/classes/ScrollContainer.xml:43 doc/classes/TextEdit.xml:410
msgid "The current vertical scroll value."
msgstr ""
@@ -46415,7 +47074,7 @@ msgstr ""
msgid ""
"Sets the global pose transform, [code]pose[/code], for the bone at "
"[code]bone_idx[/code].\n"
-"[code]amount[/code] is the interpolation strengh that will be used when "
+"[code]amount[/code] is the interpolation strength that will be used when "
"applying the pose, and [code]persistent[/code] determines if the applied "
"pose will remain.\n"
"[b]Note[/b]: The pose transform needs to be in bone space. Use [method "
@@ -46432,7 +47091,7 @@ msgstr ""
#: doc/classes/Skeleton3D.xml:266
msgid ""
-"Returns the pose transform for bone [code]bone_idx[/code].\n"
+"Sets the pose transform for bone [code]bone_idx[/code].\n"
"[b]Note[/b]: The pose transform needs to be in bone space. Use [method "
"world_transform_to_bone_transform] to convert a world transform, like one "
"you can get from a [Node3D], to bone space."
@@ -46525,6 +47184,16 @@ msgstr ""
#: doc/classes/Sky.xml:52
msgid ""
+"Automatically selects the appropriate process mode based on your sky shader. "
+"If your shader uses [code]TIME[/code] or [code]POSITION[/code], this will "
+"use [constant PROCESS_MODE_REALTIME]. If your shader uses any of the "
+"[code]LIGHT_*[/code] variables or any custom uniforms, this uses [constant "
+"PROCESS_MODE_INCREMENTAL]. Otherwise, this defaults to [constant "
+"PROCESS_MODE_QUALITY]."
+msgstr ""
+
+#: doc/classes/Sky.xml:55
+msgid ""
"Uses high quality importance sampling to process the radiance map. In "
"general, this results in much higher quality than [constant "
"PROCESS_MODE_REALTIME] but takes much longer to generate. This should not be "
@@ -46534,10 +47203,22 @@ msgid ""
"ggx_samples]."
msgstr ""
-#: doc/classes/Sky.xml:55
+#: doc/classes/Sky.xml:58
+msgid ""
+"Uses the same high quality importance sampling to process the radiance map "
+"as [constant PROCESS_MODE_QUALITY], but updates over several frames. The "
+"number of frames is determined by [member ProjectSettings.rendering/quality/"
+"reflections/roughness_layers]. Use this when you need highest quality "
+"radiance maps, but have a sky that updates slowly."
+msgstr ""
+
+#: doc/classes/Sky.xml:61
msgid ""
"Uses the fast filtering algorithm to process the radiance map. In general "
-"this results in lower quality, but substantially faster run times.\n"
+"this results in lower quality, but substantially faster run times. If you "
+"need better quality, but still need to update the sky every frame, consider "
+"turning on [member ProjectSettings.rendering/quality/reflections/"
+"fast_filter_high_quality].\n"
"[b]Note:[/b] The fast filtering algorithm is limited to 256x256 cubemaps, so "
"[member radiance_size] must be set to [constant RADIANCE_SIZE_256]."
msgstr ""
@@ -46874,9 +47555,7 @@ msgid ""
msgstr ""
#: doc/classes/SpringArm3D.xml:35
-msgid ""
-"Returns the proportion between the current arm length (after checking for "
-"collisions) and the [member spring_length]. Ranges from 0 to 1."
+msgid "Returns the spring arm's current length."
msgstr ""
#: doc/classes/SpringArm3D.xml:44
@@ -47572,7 +48251,7 @@ msgstr ""
msgid ""
"This is the built-in string class (and the one used by GDScript). It "
"supports Unicode and provides all necessary means for string handling. "
-"Strings are reference counted and use a copy-on-write approach, so passing "
+"Strings are reference-counted and use a copy-on-write approach, so passing "
"them around is cheap in resources."
msgstr ""
@@ -47727,26 +48406,32 @@ msgstr ""
#: doc/classes/String.xml:328
msgid ""
"Returns a copy of the string with escaped characters replaced by their "
-"meanings according to the C language standard."
+"meanings. Supported escape sequences are [code]\\'[/code], [code]\\\"[/"
+"code], [code]\\?[/code], [code]\\\\[/code], [code]\\a[/code], [code]\\b[/"
+"code], [code]\\f[/code], [code]\\n[/code], [code]\\r[/code], [code]\\t[/"
+"code], [code]\\v[/code].\n"
+"[b]Note:[/b] Unlike the GDScript parser, this method doesn't support the "
+"[code]\\uXXXX[/code] escape sequence."
msgstr ""
-#: doc/classes/String.xml:335
+#: doc/classes/String.xml:336
msgid ""
-"Changes the case of some letters. Replaces underscores with spaces, converts "
-"all letters to lowercase, then capitalizes first and every letter following "
-"the space character. For [code]capitalize camelCase mixed_with_underscores[/"
-"code], it will return [code]Capitalize Camelcase Mixed With Underscores[/"
+"Changes the case of some letters. Replaces underscores with spaces, adds "
+"spaces before in-word uppercase characters, converts all letters to "
+"lowercase, then capitalizes the first letter and every letter following a "
+"space character. For [code]capitalize camelCase mixed_with_underscores[/"
+"code], it will return [code]Capitalize Camel Case Mixed With Underscores[/"
"code]."
msgstr ""
-#: doc/classes/String.xml:344
+#: doc/classes/String.xml:345
msgid ""
"Performs a case-sensitive comparison to another string. Returns [code]-1[/"
"code] if less than, [code]+1[/code] if greater than, or [code]0[/code] if "
"equal."
msgstr ""
-#: doc/classes/String.xml:357
+#: doc/classes/String.xml:358
msgid ""
"Returns the number of occurrences of substring [code]what[/code] between "
"[code]from[/code] and [code]to[/code] positions. If [code]from[/code] and "
@@ -47754,7 +48439,7 @@ msgid ""
"code] equals 0 the remained substring will be used."
msgstr ""
-#: doc/classes/String.xml:370
+#: doc/classes/String.xml:371
msgid ""
"Returns the number of occurrences of substring [code]what[/code] (ignoring "
"case) between [code]from[/code] and [code]to[/code] positions. If "
@@ -47762,32 +48447,33 @@ msgid ""
"used. If only [code]to[/code] equals 0 the remained substring will be used."
msgstr ""
-#: doc/classes/String.xml:377
+#: doc/classes/String.xml:378
msgid ""
"Returns a copy of the string with indentation (leading tabs and spaces) "
"removed."
msgstr ""
-#: doc/classes/String.xml:384
+#: doc/classes/String.xml:385
msgid ""
"Returns [code]true[/code] if the length of the string equals [code]0[/code]."
msgstr ""
-#: doc/classes/String.xml:393
+#: doc/classes/String.xml:394
msgid "Returns [code]true[/code] if the string ends with the given string."
msgstr ""
-#: doc/classes/String.xml:404
+#: doc/classes/String.xml:405
msgid ""
"Erases [code]chars[/code] characters from the string starting from "
"[code]position[/code]."
msgstr ""
-#: doc/classes/String.xml:415
+#: doc/classes/String.xml:416
msgid ""
-"Finds the first occurrence of a substring. Returns the starting position of "
-"the substring or [code]-1[/code] if not found. Optionally, the initial "
-"search index can be passed.\n"
+"Returns the index of the [b]first[/b] case-sensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the end of the "
+"string.\n"
"[b]Note:[/b] If you just want to know whether a string contains a substring, "
"use the [code]in[/code] operator as follows:\n"
"[codeblock]\n"
@@ -47797,48 +48483,42 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:430
+#: doc/classes/String.xml:433
msgid ""
-"Finds the last occurrence of a substring. Returns the starting position of "
-"the substring or [code]-1[/code] if not found."
+"Returns the index of the [b]first[/b] case-insensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the end of the string."
msgstr ""
-#: doc/classes/String.xml:441
-msgid ""
-"Finds the first occurrence of a substring, ignoring case. Returns the "
-"starting position of the substring or [code]-1[/code] if not found. "
-"Optionally, the initial search index can be passed."
-msgstr ""
-
-#: doc/classes/String.xml:452
+#: doc/classes/String.xml:444
msgid ""
"Formats the string by replacing all occurrences of [code]placeholder[/code] "
"with [code]values[/code]."
msgstr ""
-#: doc/classes/String.xml:459
+#: doc/classes/String.xml:451
msgid "If the string is a valid file path, returns the base directory name."
msgstr ""
-#: doc/classes/String.xml:466
+#: doc/classes/String.xml:458
msgid ""
"If the string is a valid file path, returns the full file path without the "
"extension."
msgstr ""
-#: doc/classes/String.xml:473
+#: doc/classes/String.xml:465
msgid "If the string is a valid file path, returns the extension."
msgstr ""
-#: doc/classes/String.xml:480
+#: doc/classes/String.xml:472
msgid "If the string is a valid file path, returns the filename."
msgstr ""
-#: doc/classes/String.xml:487
+#: doc/classes/String.xml:479
msgid "Hashes the string and returns a 32-bit integer."
msgstr ""
-#: doc/classes/String.xml:494
+#: doc/classes/String.xml:486
msgid ""
"Converts a string containing a hexadecimal number into an integer. "
"Hexadecimal strings are expected to be prefixed with \"[code]0x[/code]\" "
@@ -47848,7 +48528,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:504
+#: doc/classes/String.xml:496
msgid ""
"Escapes (encodes) a string to URL friendly format. Also referred to as 'URL "
"encode'.\n"
@@ -47858,7 +48538,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:514
+#: doc/classes/String.xml:506
msgid ""
"Unescapes (decodes) a string in URL encoded format. Also referred to as 'URL "
"decode'.\n"
@@ -47868,7 +48548,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:526
+#: doc/classes/String.xml:518
msgid ""
"Converts [code]size[/code] represented as number of bytes to human-readable "
"format using internationalized set of data size units, namely: B, KiB, MiB, "
@@ -47881,48 +48561,48 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:542
+#: doc/classes/String.xml:534
msgid ""
"Returns a copy of the string with the substring [code]what[/code] inserted "
"at the given position."
msgstr ""
-#: doc/classes/String.xml:549
+#: doc/classes/String.xml:541
msgid ""
"If the string is a path to a file or directory, returns [code]true[/code] if "
"the path is absolute."
msgstr ""
-#: doc/classes/String.xml:556
+#: doc/classes/String.xml:548
msgid ""
"If the string is a path to a file or directory, returns [code]true[/code] if "
"the path is relative."
msgstr ""
-#: doc/classes/String.xml:565
+#: doc/classes/String.xml:557
msgid ""
"Returns [code]true[/code] if this string is a subsequence of the given "
"string."
msgstr ""
-#: doc/classes/String.xml:574
+#: doc/classes/String.xml:566
msgid ""
"Returns [code]true[/code] if this string is a subsequence of the given "
"string, without considering case."
msgstr ""
-#: doc/classes/String.xml:581
+#: doc/classes/String.xml:573
msgid ""
"Returns [code]true[/code] if this string is free from characters that aren't "
"allowed in file names, those being:\n"
"[code]: / \\ ? * \" | % < >[/code]"
msgstr ""
-#: doc/classes/String.xml:589
+#: doc/classes/String.xml:581
msgid "Returns [code]true[/code] if this string contains a valid float."
msgstr ""
-#: doc/classes/String.xml:598
+#: doc/classes/String.xml:590
msgid ""
"Returns [code]true[/code] if this string contains a valid hexadecimal "
"number. If [code]with_prefix[/code] is [code]true[/code], then a validity of "
@@ -47930,7 +48610,7 @@ msgid ""
"instance: [code]0xDEADC0DE[/code]."
msgstr ""
-#: doc/classes/String.xml:605
+#: doc/classes/String.xml:597
msgid ""
"Returns [code]true[/code] if this string contains a valid color in "
"hexadecimal HTML notation. Other HTML notations such as named colors or "
@@ -47938,22 +48618,22 @@ msgid ""
"return [code]false[/code]."
msgstr ""
-#: doc/classes/String.xml:612
+#: doc/classes/String.xml:604
msgid ""
"Returns [code]true[/code] if this string is a valid identifier. A valid "
"identifier may contain only letters, digits and underscores ([code]_[/code]) "
"and the first character may not be a digit."
msgstr ""
-#: doc/classes/String.xml:619
+#: doc/classes/String.xml:611
msgid "Returns [code]true[/code] if this string contains a valid integer."
msgstr ""
-#: doc/classes/String.xml:626
+#: doc/classes/String.xml:618
msgid "Returns [code]true[/code] if this string contains a valid IP address."
msgstr ""
-#: doc/classes/String.xml:635
+#: doc/classes/String.xml:627
msgid ""
"Return a [String] which is the concatenation of the [code]parts[/code]. The "
"separator between elements is the string providing this method.\n"
@@ -47963,121 +48643,125 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:646
+#: doc/classes/String.xml:638
msgid ""
"Returns a copy of the string with special characters escaped using the JSON "
"standard."
msgstr ""
-#: doc/classes/String.xml:655
+#: doc/classes/String.xml:647
msgid "Returns a number of characters from the left of the string."
msgstr ""
-#: doc/classes/String.xml:662
+#: doc/classes/String.xml:654
msgid "Returns the string's amount of characters."
msgstr ""
-#: doc/classes/String.xml:671
+#: doc/classes/String.xml:663
msgid "Returns a copy of the string with characters removed from the left."
msgstr ""
-#: doc/classes/String.xml:680
+#: doc/classes/String.xml:672
msgid ""
"Does a simple case-sensitive expression match, where [code]\"*\"[/code] "
"matches zero or more arbitrary characters and [code]\"?\"[/code] matches any "
"single character except a period ([code]\".\"[/code])."
msgstr ""
-#: doc/classes/String.xml:689
+#: doc/classes/String.xml:681
msgid ""
"Does a simple case-insensitive expression match, where [code]\"*\"[/code] "
"matches zero or more arbitrary characters and [code]\"?\"[/code] matches any "
"single character except a period ([code]\".\"[/code])."
msgstr ""
-#: doc/classes/String.xml:696
+#: doc/classes/String.xml:688
msgid "Returns the MD5 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:703
+#: doc/classes/String.xml:695
msgid "Returns the MD5 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:712
+#: doc/classes/String.xml:704
msgid ""
"Performs a case-insensitive comparison to another string. Returns [code]-1[/"
"code] if less than, [code]+1[/code] if greater than, or [code]0[/code] if "
"equal."
msgstr ""
-#: doc/classes/String.xml:721
+#: doc/classes/String.xml:713
msgid "Returns the character code at position [code]at[/code]."
msgstr ""
-#: doc/classes/String.xml:730
+#: doc/classes/String.xml:722
msgid ""
"Formats a number to have an exact number of [code]digits[/code] after the "
"decimal point."
msgstr ""
-#: doc/classes/String.xml:739
+#: doc/classes/String.xml:731
msgid ""
"Formats a number to have an exact number of [code]digits[/code] before the "
"decimal point."
msgstr ""
-#: doc/classes/String.xml:746
+#: doc/classes/String.xml:738
msgid "Decode a percent-encoded string. See [method percent_encode]."
msgstr ""
-#: doc/classes/String.xml:753
+#: doc/classes/String.xml:745
msgid ""
"Percent-encodes a string. Encodes parameters in a URL when sending a HTTP "
"GET request (and bodies of form-urlencoded POST requests)."
msgstr ""
-#: doc/classes/String.xml:762
+#: doc/classes/String.xml:754
msgid ""
"If the string is a path, this concatenates [code]file[/code] at the end of "
"the string as a subpath. E.g. [code]\"this/is\".plus_file(\"path\") == "
"\"this/is/path\"[/code]."
msgstr ""
-#: doc/classes/String.xml:771
+#: doc/classes/String.xml:763
msgid ""
"Returns original string repeated a number of times. The number of "
"repetitions is given by the argument."
msgstr ""
-#: doc/classes/String.xml:782
+#: doc/classes/String.xml:774
msgid ""
"Replaces occurrences of a case-sensitive substring with the given one inside "
"the string."
msgstr ""
-#: doc/classes/String.xml:793
+#: doc/classes/String.xml:785
msgid ""
"Replaces occurrences of a case-insensitive substring with the given one "
"inside the string."
msgstr ""
-#: doc/classes/String.xml:804
+#: doc/classes/String.xml:796
msgid ""
-"Performs a case-sensitive search for a substring, but starts from the end of "
-"the string instead of the beginning."
+"Returns the index of the [b]last[/b] case-sensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the beginning of the "
+"string."
msgstr ""
-#: doc/classes/String.xml:815
+#: doc/classes/String.xml:807
msgid ""
-"Performs a case-insensitive search for a substring, but starts from the end "
-"of the string instead of the beginning."
+"Returns the index of the [b]last[/b] case-insensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the beginning of the "
+"string."
msgstr ""
-#: doc/classes/String.xml:824
+#: doc/classes/String.xml:816
msgid "Returns the right side of the string from a given position."
msgstr ""
-#: doc/classes/String.xml:837
+#: doc/classes/String.xml:829
msgid ""
"Splits the string by a [code]delimiter[/code] string and returns an array of "
"the substrings, starting from right.\n"
@@ -48096,39 +48780,39 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:856
+#: doc/classes/String.xml:848
msgid "Returns a copy of the string with characters removed from the right."
msgstr ""
-#: doc/classes/String.xml:863
+#: doc/classes/String.xml:855
msgid "Returns the SHA-1 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:870
+#: doc/classes/String.xml:862
msgid "Returns the SHA-1 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:877
+#: doc/classes/String.xml:869
msgid "Returns the SHA-256 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:884
+#: doc/classes/String.xml:876
msgid "Returns the SHA-256 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:893
+#: doc/classes/String.xml:885
msgid ""
"Returns the similarity index of the text compared to this string. 1 means "
"totally similar and 0 means totally dissimilar."
msgstr ""
-#: doc/classes/String.xml:906
+#: doc/classes/String.xml:898
msgid ""
"Splits the string by a [code]delimiter[/code] string and returns an array of "
-"the substrings.\n"
+"the substrings. The [code]delimiter[/code] can be of any length.\n"
"If [code]maxsplit[/code] is specified, it defines the number of splits to do "
-"from the left up to [code]maxsplit[/code]. The default value of 0 means that "
-"all items are split.\n"
+"from the left up to [code]maxsplit[/code]. The default value of [code]0[/"
+"code] means that all items are split.\n"
"Example:\n"
"[codeblock]\n"
"var some_string = \"One,Two,Three,Four\"\n"
@@ -48136,10 +48820,12 @@ msgid ""
"print(some_array.size()) # Prints 2\n"
"print(some_array[0]) # Prints \"One\"\n"
"print(some_array[1]) # Prints \"Two,Three,Four\"\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"If you need to split strings with more complex rules, use the [RegEx] class "
+"instead."
msgstr ""
-#: doc/classes/String.xml:926
+#: doc/classes/String.xml:919
msgid ""
"Splits the string in floats by using a delimiter string and returns an array "
"of the substrings.\n"
@@ -48147,7 +48833,7 @@ msgid ""
"split by [code]\",\"[/code]."
msgstr ""
-#: doc/classes/String.xml:938
+#: doc/classes/String.xml:931
msgid ""
"Returns a copy of the string stripped of any non-printable character "
"(including tabulations, spaces and line breaks) at the beginning and the "
@@ -48155,7 +48841,7 @@ msgid ""
"right edges respectively."
msgstr ""
-#: doc/classes/String.xml:945
+#: doc/classes/String.xml:938
msgid ""
"Returns a copy of the string stripped of any escape character. These include "
"all non-printable control characters of the first page of the ASCII table (< "
@@ -48163,14 +48849,14 @@ msgid ""
"code] and [code]\\r[/code]) characters, but not spaces."
msgstr ""
-#: doc/classes/String.xml:956
+#: doc/classes/String.xml:949
msgid ""
"Returns part of the string from the position [code]from[/code] with length "
"[code]len[/code]. Argument [code]len[/code] is optional and using [code]-1[/"
"code] will return remaining characters from given position."
msgstr ""
-#: doc/classes/String.xml:963
+#: doc/classes/String.xml:956
msgid ""
"Converts the String (which is a character array) to [PackedByteArray] (which "
"is an array of bytes). The conversion is faster compared to [method "
@@ -48178,25 +48864,25 @@ msgid ""
"ASCII characters."
msgstr ""
-#: doc/classes/String.xml:970
+#: doc/classes/String.xml:963
msgid ""
"Converts a string containing a decimal number into a [code]float[/code]."
msgstr ""
-#: doc/classes/String.xml:977
+#: doc/classes/String.xml:970
msgid ""
"Converts a string containing an integer number into an [code]int[/code]."
msgstr ""
-#: doc/classes/String.xml:984
+#: doc/classes/String.xml:977
msgid "Returns the string converted to lowercase."
msgstr ""
-#: doc/classes/String.xml:991
+#: doc/classes/String.xml:984
msgid "Returns the string converted to uppercase."
msgstr ""
-#: doc/classes/String.xml:998
+#: doc/classes/String.xml:991
msgid ""
"Converts the String (which is an array of characters) to [PackedByteArray] "
"(which is an array of bytes). The conversion is a bit slower than [method "
@@ -48204,25 +48890,25 @@ msgid ""
"this function over [method to_ascii]."
msgstr ""
-#: doc/classes/String.xml:1007
+#: doc/classes/String.xml:1000
msgid ""
"Removes a given string from the start if it starts with it or leaves the "
"string unchanged."
msgstr ""
-#: doc/classes/String.xml:1016
+#: doc/classes/String.xml:1009
msgid ""
"Removes a given string from the end if it ends with it or leaves the string "
"unchanged."
msgstr ""
-#: doc/classes/String.xml:1023
+#: doc/classes/String.xml:1016
msgid ""
"Returns a copy of the string with special characters escaped using the XML "
"standard."
msgstr ""
-#: doc/classes/String.xml:1030
+#: doc/classes/String.xml:1023
msgid ""
"Returns a copy of the string with escaped characters replaced by their "
"meanings according to the XML standard."
@@ -49454,50 +50140,42 @@ msgid ""
"undo/redo."
msgstr ""
-#: doc/classes/TextEdit.xml:24
-msgid "Adds color region (given the delimiters) and its colors."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:35
-msgid "Adds a [code]keyword[/code] and its [Color]."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:44
+#: doc/classes/TextEdit.xml:18
msgid ""
"Returns if the given line is foldable, that is, it has indented lines right "
"below it."
msgstr ""
-#: doc/classes/TextEdit.xml:57
+#: doc/classes/TextEdit.xml:25
msgid ""
-"Clears all custom syntax coloring information previously added with [method "
-"add_color_region] or [method add_keyword_color]."
+"Centers the viewport on the line the editing cursor is at. This also resets "
+"the [member scroll_horizontal] value to [code]0[/code]."
msgstr ""
-#: doc/classes/TextEdit.xml:64
+#: doc/classes/TextEdit.xml:32
msgid "Clears the undo history."
msgstr ""
-#: doc/classes/TextEdit.xml:71
+#: doc/classes/TextEdit.xml:39
msgid "Copy's the current text selection."
msgstr ""
-#: doc/classes/TextEdit.xml:78
+#: doc/classes/TextEdit.xml:46
msgid "Returns the column the editing cursor is at."
msgstr ""
-#: doc/classes/TextEdit.xml:85
+#: doc/classes/TextEdit.xml:53
msgid "Returns the line the editing cursor is at."
msgstr ""
-#: doc/classes/TextEdit.xml:96
+#: doc/classes/TextEdit.xml:64
msgid ""
"Moves the cursor at the specified [code]column[/code] index.\n"
"If [code]adjust_viewport[/code] is set to [code]true[/code], the viewport "
"will center at the cursor position after the move occurs."
msgstr ""
-#: doc/classes/TextEdit.xml:112
+#: doc/classes/TextEdit.xml:80
msgid ""
"Moves the cursor at the specified [code]line[/code] index.\n"
"If [code]adjust_viewport[/code] is set to [code]true[/code], the viewport "
@@ -49506,111 +50184,101 @@ msgid ""
"[code]line[/code] can be hidden using [method set_line_as_hidden]."
msgstr ""
-#: doc/classes/TextEdit.xml:121
+#: doc/classes/TextEdit.xml:89
msgid "Cut's the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:128
+#: doc/classes/TextEdit.xml:96
msgid "Deselects the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:135
+#: doc/classes/TextEdit.xml:103
msgid "Folds all lines that are possible to be folded (see [method can_fold])."
msgstr ""
-#: doc/classes/TextEdit.xml:144
+#: doc/classes/TextEdit.xml:112
msgid "Folds the given line, if possible (see [method can_fold])."
msgstr ""
-#: doc/classes/TextEdit.xml:151
+#: doc/classes/TextEdit.xml:119
msgid "Returns an array containing the line number of each breakpoint."
msgstr ""
-#: doc/classes/TextEdit.xml:160
-msgid "Returns the [Color] of the specified [code]keyword[/code]."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:169
+#: doc/classes/TextEdit.xml:128
msgid "Returns the text of a specific line."
msgstr ""
-#: doc/classes/TextEdit.xml:176
+#: doc/classes/TextEdit.xml:135
msgid "Returns the amount of total lines in the text."
msgstr ""
-#: doc/classes/TextEdit.xml:183
+#: doc/classes/TextEdit.xml:142
msgid ""
"Returns the [PopupMenu] of this [TextEdit]. By default, this menu is "
"displayed when right-clicking on the [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:190
+#: doc/classes/TextEdit.xml:149
msgid "Returns the selection begin column."
msgstr ""
-#: doc/classes/TextEdit.xml:197
+#: doc/classes/TextEdit.xml:156
msgid "Returns the selection begin line."
msgstr ""
-#: doc/classes/TextEdit.xml:204
+#: doc/classes/TextEdit.xml:163
msgid "Returns the text inside the selection."
msgstr ""
-#: doc/classes/TextEdit.xml:211
+#: doc/classes/TextEdit.xml:170
msgid "Returns the selection end column."
msgstr ""
-#: doc/classes/TextEdit.xml:218
+#: doc/classes/TextEdit.xml:177
msgid "Returns the selection end line."
msgstr ""
-#: doc/classes/TextEdit.xml:225
+#: doc/classes/TextEdit.xml:184
msgid "Returns a [String] text with the word under the mouse cursor location."
msgstr ""
-#: doc/classes/TextEdit.xml:234
-msgid ""
-"Returns whether the specified [code]keyword[/code] has a color set to it or "
-"not."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:243
+#: doc/classes/TextEdit.xml:193
msgid "Insert the specified text at the cursor position."
msgstr ""
-#: doc/classes/TextEdit.xml:252
+#: doc/classes/TextEdit.xml:202
msgid "Returns whether the line at the specified index is folded or not."
msgstr ""
-#: doc/classes/TextEdit.xml:261
+#: doc/classes/TextEdit.xml:211
msgid "Returns whether the line at the specified index is hidden or not."
msgstr ""
-#: doc/classes/TextEdit.xml:268
+#: doc/classes/TextEdit.xml:218
msgid "Returns [code]true[/code] if the selection is active."
msgstr ""
-#: doc/classes/TextEdit.xml:277
+#: doc/classes/TextEdit.xml:227
msgid ""
"Triggers a right-click menu action by the specified index. See [enum "
"MenuItems] for a list of available indexes."
msgstr ""
-#: doc/classes/TextEdit.xml:284
+#: doc/classes/TextEdit.xml:234
msgid "Paste the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:291
+#: doc/classes/TextEdit.xml:241
msgid "Perform redo operation."
msgstr ""
-#: doc/classes/TextEdit.xml:298
+#: doc/classes/TextEdit.xml:248
msgid ""
"Removes all the breakpoints. This will not fire the [signal "
"breakpoint_toggled] signal."
msgstr ""
-#: doc/classes/TextEdit.xml:313
+#: doc/classes/TextEdit.xml:263
msgid ""
"Perform a search inside the text. Search flags can be specified in the [enum "
"SearchFlags] enum.\n"
@@ -49626,244 +50294,265 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/TextEdit.xml:336
-msgid "Perform selection, from line/column to line/column."
+#: doc/classes/TextEdit.xml:286
+msgid ""
+"Perform selection, from line/column to line/column.\n"
+"If [member selecting_enabled] is [code]false[/code], no selection will occur."
msgstr ""
-#: doc/classes/TextEdit.xml:343
-msgid "Select all the text."
+#: doc/classes/TextEdit.xml:294
+msgid ""
+"Select all the text.\n"
+"If [member selecting_enabled] is [code]false[/code], no selection will occur."
msgstr ""
-#: doc/classes/TextEdit.xml:354
+#: doc/classes/TextEdit.xml:306
msgid "Sets the text for a specific line."
msgstr ""
-#: doc/classes/TextEdit.xml:365
+#: doc/classes/TextEdit.xml:317
msgid "If [code]true[/code], hides the line of the specified index."
msgstr ""
-#: doc/classes/TextEdit.xml:374
+#: doc/classes/TextEdit.xml:326
msgid "Toggle the folding of the code block at the given line."
msgstr ""
-#: doc/classes/TextEdit.xml:381
+#: doc/classes/TextEdit.xml:333
msgid "Perform undo operation."
msgstr ""
-#: doc/classes/TextEdit.xml:390
+#: doc/classes/TextEdit.xml:342
msgid "Unfolds the given line, if folded."
msgstr ""
-#: doc/classes/TextEdit.xml:397
+#: doc/classes/TextEdit.xml:349
msgid ""
"Unhide all lines that were previously set to hidden by [method "
"set_line_as_hidden]."
msgstr ""
-#: doc/classes/TextEdit.xml:403
+#: doc/classes/TextEdit.xml:355
msgid "If [code]true[/code], the breakpoint gutter is visible."
msgstr ""
-#: doc/classes/TextEdit.xml:412
+#: doc/classes/TextEdit.xml:364
msgid ""
"If [code]true[/code], the caret displays as a rectangle.\n"
"If [code]false[/code], the caret displays as a bar."
msgstr ""
-#: doc/classes/TextEdit.xml:416
+#: doc/classes/TextEdit.xml:368
msgid ""
"If [code]true[/code], a right-click moves the cursor at the mouse position "
"before displaying the context menu.\n"
"If [code]false[/code], the context menu disregards mouse location."
msgstr ""
-#: doc/classes/TextEdit.xml:420
+#: doc/classes/TextEdit.xml:372
msgid "If [code]true[/code], a right-click displays the context menu."
msgstr ""
-#: doc/classes/TextEdit.xml:423
+#: doc/classes/TextEdit.xml:375
msgid ""
"If [code]true[/code], the \"space\" character will have a visible "
"representation."
msgstr ""
-#: doc/classes/TextEdit.xml:426
+#: doc/classes/TextEdit.xml:378
msgid ""
"If [code]true[/code], the \"tab\" character will have a visible "
"representation."
msgstr ""
-#: doc/classes/TextEdit.xml:430
+#: doc/classes/TextEdit.xml:382
msgid ""
"If [code]true[/code], the fold gutter is visible. This enables folding "
"groups of indented lines."
msgstr ""
-#: doc/classes/TextEdit.xml:433
+#: doc/classes/TextEdit.xml:385
msgid ""
"If [code]true[/code], all lines that have been set to hidden by [method "
"set_line_as_hidden], will not be visible."
msgstr ""
-#: doc/classes/TextEdit.xml:436
+#: doc/classes/TextEdit.xml:388
msgid ""
"If [code]true[/code], all occurrences of the selected text will be "
"highlighted."
msgstr ""
-#: doc/classes/TextEdit.xml:439
+#: doc/classes/TextEdit.xml:391
msgid "If [code]true[/code], the line containing the cursor is highlighted."
msgstr ""
-#: doc/classes/TextEdit.xml:447
+#: doc/classes/TextEdit.xml:394
+msgid ""
+"If [code]true[/code], a minimap is shown, providing an outline of your "
+"source code."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:397
+msgid "The width, in pixels, of the minimap."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:401
msgid ""
"If [code]true[/code], custom [code]font_color_selected[/code] will be used "
"for selected text."
msgstr ""
-#: doc/classes/TextEdit.xml:450
+#: doc/classes/TextEdit.xml:404
msgid ""
"If [code]true[/code], read-only mode is enabled. Existing text cannot be "
"modified and new text cannot be added."
msgstr ""
-#: doc/classes/TextEdit.xml:463
+#: doc/classes/TextEdit.xml:413
msgid ""
-"If [code]true[/code], line numbers are displayed to the left of the text."
+"If [code]true[/code], text can be selected.\n"
+"If [code]false[/code], text can not be selected by the user or by the "
+"[method select] or [method select_all] methods."
msgstr ""
-#: doc/classes/TextEdit.xml:466
+#: doc/classes/TextEdit.xml:417
msgid ""
-"If [code]true[/code], sets the [code]step[/code] of the scrollbars to "
-"[code]0.25[/code] which results in smoother scrolling."
+"If [code]true[/code], shortcut keys for context menu items are enabled, even "
+"if the context menu is disabled."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:420
+msgid ""
+"If [code]true[/code], line numbers are displayed to the left of the text."
msgstr ""
-#: doc/classes/TextEdit.xml:469
+#: doc/classes/TextEdit.xml:423
msgid ""
-"If [code]true[/code], any custom color properties that have been set for "
-"this [TextEdit] will be visible."
+"If [code]true[/code], sets the [code]step[/code] of the scrollbars to "
+"[code]0.25[/code] which results in smoother scrolling."
msgstr ""
-#: doc/classes/TextEdit.xml:472
+#: doc/classes/TextEdit.xml:428
msgid "String value of the [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:475
+#: doc/classes/TextEdit.xml:431
msgid "Vertical scroll sensitivity."
msgstr ""
-#: doc/classes/TextEdit.xml:478
+#: doc/classes/TextEdit.xml:437
msgid ""
"If [code]true[/code], enables text wrapping when it goes beyond the edge of "
"what is visible."
msgstr ""
-#: doc/classes/TextEdit.xml:486
+#: doc/classes/TextEdit.xml:445
msgid "Emitted when a breakpoint is placed via the breakpoint gutter."
msgstr ""
-#: doc/classes/TextEdit.xml:491
+#: doc/classes/TextEdit.xml:450
msgid "Emitted when the cursor changes."
msgstr ""
-#: doc/classes/TextEdit.xml:500
+#: doc/classes/TextEdit.xml:459
msgid "Emitted when the info icon is clicked."
msgstr ""
-#: doc/classes/TextEdit.xml:531
+#: doc/classes/TextEdit.xml:496
msgid "Match case when searching."
msgstr ""
-#: doc/classes/TextEdit.xml:534
+#: doc/classes/TextEdit.xml:499
msgid "Match whole words when searching."
msgstr ""
-#: doc/classes/TextEdit.xml:537
+#: doc/classes/TextEdit.xml:502
msgid "Search from end to beginning."
msgstr ""
-#: doc/classes/TextEdit.xml:546
+#: doc/classes/TextEdit.xml:511
msgid ""
"Pastes the clipboard text over the selected text (or at the cursor's "
"position)."
msgstr ""
-#: doc/classes/TextEdit.xml:549
+#: doc/classes/TextEdit.xml:514
msgid "Erases the whole [TextEdit] text."
msgstr ""
-#: doc/classes/TextEdit.xml:552
+#: doc/classes/TextEdit.xml:517
msgid "Selects the whole [TextEdit] text."
msgstr ""
-#: doc/classes/TextEdit.xml:558
+#: doc/classes/TextEdit.xml:523
msgid "Redoes the previous action."
msgstr ""
-#: doc/classes/TextEdit.xml:566
+#: doc/classes/TextEdit.xml:531
msgid ""
"Sets the background [Color] of this [TextEdit]. [member syntax_highlighting] "
"has to be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:569
+#: doc/classes/TextEdit.xml:534
msgid ""
"Sets the [Color] of the bookmark marker. [member syntax_highlighting] has to "
"be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:574 doc/classes/TextEdit.xml:601
+#: doc/classes/TextEdit.xml:539 doc/classes/TextEdit.xml:566
msgid ""
"Sets the [Color] of the breakpoints. [member breakpoint_gutter] has to be "
"enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:612
+#: doc/classes/TextEdit.xml:577
msgid "Sets the default [Font]."
msgstr ""
-#: doc/classes/TextEdit.xml:615
+#: doc/classes/TextEdit.xml:580
msgid "Sets the font [Color]."
msgstr ""
-#: doc/classes/TextEdit.xml:620
+#: doc/classes/TextEdit.xml:585
msgid ""
"Sets the [Color] of the selected text. [member override_selected_font_color] "
"has to be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:625
+#: doc/classes/TextEdit.xml:588
msgid ""
"Sets the [Color] of the line numbers. [member show_line_numbers] has to be "
"enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:628
+#: doc/classes/TextEdit.xml:591
msgid "Sets the spacing between the lines."
msgstr ""
-#: doc/classes/TextEdit.xml:631
+#: doc/classes/TextEdit.xml:594
msgid "Sets the [Color] of marked text."
msgstr ""
-#: doc/classes/TextEdit.xml:636
+#: doc/classes/TextEdit.xml:597
msgid "Sets the [StyleBox] of this [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:641
+#: doc/classes/TextEdit.xml:600
msgid ""
"Sets the [StyleBox] of this [TextEdit] when [member readonly] is enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:646
+#: doc/classes/TextEdit.xml:605
msgid "Sets the highlight [Color] of text selections."
msgstr ""
-#: doc/classes/TextEdit.xml:653
+#: doc/classes/TextEdit.xml:610
msgid "Sets a custom [Texture2D] for tab text characters."
msgstr ""
-#: doc/classes/TextEdit.xml:656
+#: doc/classes/TextEdit.xml:613
msgid ""
"Sets the highlight [Color] of multiple occurrences. [member "
"highlight_all_occurrences] has to be enabled."
@@ -49941,80 +50630,80 @@ msgid ""
"the texture will not scale with the node."
msgstr ""
-#: doc/classes/TextureButton.xml:19
+#: doc/classes/TextureButton.xml:25
msgid ""
"Controls the texture's behavior when you resize the node's bounding "
"rectangle, [b]only if[/b] [member expand] is [code]true[/code]. Set it to "
"one of the [enum StretchMode] constants. See the constants to learn more."
msgstr ""
-#: doc/classes/TextureButton.xml:22
+#: doc/classes/TextureButton.xml:28
msgid ""
"Pure black and white [BitMap] image to use for click detection. On the mask, "
"white pixels represent the button's clickable area. Use it to create buttons "
"with curved shapes."
msgstr ""
-#: doc/classes/TextureButton.xml:25
+#: doc/classes/TextureButton.xml:31
msgid ""
"Texture to display when the node is disabled. See [member BaseButton."
"disabled]."
msgstr ""
-#: doc/classes/TextureButton.xml:28
+#: doc/classes/TextureButton.xml:34
msgid "Texture to display when the node has mouse or keyboard focus."
msgstr ""
-#: doc/classes/TextureButton.xml:31
+#: doc/classes/TextureButton.xml:37
msgid "Texture to display when the mouse hovers the node."
msgstr ""
-#: doc/classes/TextureButton.xml:34
+#: doc/classes/TextureButton.xml:40
msgid ""
"Texture to display by default, when the node is [b]not[/b] in the disabled, "
"focused, hover or pressed state."
msgstr ""
-#: doc/classes/TextureButton.xml:37
+#: doc/classes/TextureButton.xml:43
msgid ""
"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 "
"[member BaseButton.shortcut] key."
msgstr ""
-#: doc/classes/TextureButton.xml:42 doc/classes/TextureRect.xml:36
+#: doc/classes/TextureButton.xml:48 doc/classes/TextureRect.xml:36
msgid "Scale to fit the node's bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:45 doc/classes/TextureRect.xml:39
+#: doc/classes/TextureButton.xml:51 doc/classes/TextureRect.xml:39
msgid "Tile inside the node's bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:48 doc/classes/TextureRect.xml:42
+#: doc/classes/TextureButton.xml:54 doc/classes/TextureRect.xml:42
msgid ""
"The texture keeps its original size and stays in the bounding rectangle's "
"top-left corner."
msgstr ""
-#: doc/classes/TextureButton.xml:51 doc/classes/TextureRect.xml:45
+#: doc/classes/TextureButton.xml:57 doc/classes/TextureRect.xml:45
msgid ""
"The texture keeps its original size and stays centered in the node's "
"bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:54 doc/classes/TextureRect.xml:48
+#: doc/classes/TextureButton.xml:60 doc/classes/TextureRect.xml:48
msgid ""
"Scale the texture to fit the node's bounding rectangle, but maintain the "
"texture's aspect ratio."
msgstr ""
-#: doc/classes/TextureButton.xml:57
+#: doc/classes/TextureButton.xml:63
msgid ""
"Scale the texture to fit the node's bounding rectangle, center it, and "
"maintain its aspect ratio."
msgstr ""
-#: doc/classes/TextureButton.xml:60 doc/classes/TextureRect.xml:54
+#: doc/classes/TextureButton.xml:66 doc/classes/TextureRect.xml:54
msgid ""
"Scale the texture so that the shorter side fits the bounding rectangle. The "
"other side clips to the node's limits."
@@ -50464,19 +51153,25 @@ msgid ""
"advised if working with shared objects."
msgstr ""
-#: doc/classes/Thread.xml:17
+#: doc/classes/Thread.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/threads/thread_safe_apis."
+"html"
+msgstr ""
+
+#: doc/classes/Thread.xml:18
msgid ""
"Returns the current [Thread]'s ID, uniquely identifying it among all threads."
msgstr ""
-#: doc/classes/Thread.xml:24
+#: doc/classes/Thread.xml:25
msgid ""
"Returns [code]true[/code] if this [Thread] is currently active. An active "
"[Thread] cannot start work on a new method but can be joined with [method "
"wait_to_finish]."
msgstr ""
-#: doc/classes/Thread.xml:39
+#: doc/classes/Thread.xml:40
msgid ""
"Starts a new [Thread] that runs [code]method[/code] on object "
"[code]instance[/code] with [code]userdata[/code] passed as an argument. Even "
@@ -50486,21 +51181,21 @@ msgid ""
"Returns [constant OK] on success, or [constant ERR_CANT_CREATE] on failure."
msgstr ""
-#: doc/classes/Thread.xml:47
+#: doc/classes/Thread.xml:48
msgid ""
"Joins the [Thread] and waits for it to finish. Returns what the method "
"called returned."
msgstr ""
-#: doc/classes/Thread.xml:53
+#: doc/classes/Thread.xml:54
msgid "A thread running with lower priority than normally."
msgstr ""
-#: doc/classes/Thread.xml:56
+#: doc/classes/Thread.xml:57
msgid "A thread with a standard priority."
msgstr ""
-#: doc/classes/Thread.xml:59
+#: doc/classes/Thread.xml:60
msgid "A thread running with higher priority than normally."
msgstr ""
@@ -51035,50 +51730,61 @@ msgid "Returns the [Transform2D] of a tile's shape."
msgstr ""
#: doc/classes/TileSet.xml:481
-msgid "Returns an array of the tile's shapes."
+msgid ""
+"Returns an array of dictionaries describing the tile's shapes.\n"
+"[b]Dictionary structure in the array returned by this method:[/b]\n"
+"[codeblock]\n"
+"{\n"
+" \"autotile_coord\": Vector2,\n"
+" \"one_way\": bool,\n"
+" \"one_way_margin\": int,\n"
+" \"shape\": CollisionShape2D,\n"
+" \"shape_transform\": Transform2D,\n"
+"}\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/TileSet.xml:490
+#: doc/classes/TileSet.xml:500
msgid "Returns the tile's texture."
msgstr ""
-#: doc/classes/TileSet.xml:499
+#: doc/classes/TileSet.xml:509
msgid "Returns the texture offset of the tile."
msgstr ""
-#: doc/classes/TileSet.xml:508
+#: doc/classes/TileSet.xml:518
msgid "Returns the tile's [enum TileMode]."
msgstr ""
-#: doc/classes/TileSet.xml:517
+#: doc/classes/TileSet.xml:527
msgid "Returns the tile's Z index (drawing layer)."
msgstr ""
-#: doc/classes/TileSet.xml:528
+#: doc/classes/TileSet.xml:538
msgid "Sets a light occluder for the tile."
msgstr ""
-#: doc/classes/TileSet.xml:539
+#: doc/classes/TileSet.xml:549
msgid "Sets the tile's material."
msgstr ""
-#: doc/classes/TileSet.xml:550
+#: doc/classes/TileSet.xml:560
msgid "Sets the tile's modulation color."
msgstr ""
-#: doc/classes/TileSet.xml:561
+#: doc/classes/TileSet.xml:571
msgid "Sets the tile's name."
msgstr ""
-#: doc/classes/TileSet.xml:572
+#: doc/classes/TileSet.xml:582
msgid "Sets the tile's navigation polygon."
msgstr ""
-#: doc/classes/TileSet.xml:583
+#: doc/classes/TileSet.xml:593
msgid "Sets an offset for the tile's navigation polygon."
msgstr ""
-#: doc/classes/TileSet.xml:594
+#: doc/classes/TileSet.xml:604
msgid ""
"Sets the tile's normal map texture.\n"
"[b]Note:[/b] Godot expects the normal map to use X+, Y-, and Z+ coordinates. "
@@ -51087,48 +51793,48 @@ msgid ""
"a comparison of normal map coordinates expected by popular engines."
msgstr ""
-#: doc/classes/TileSet.xml:606
+#: doc/classes/TileSet.xml:616
msgid "Sets an offset for the tile's light occluder."
msgstr ""
-#: doc/classes/TileSet.xml:617
+#: doc/classes/TileSet.xml:627
msgid ""
"Sets the tile's sub-region in the texture. This is common in texture atlases."
msgstr ""
-#: doc/classes/TileSet.xml:630
+#: doc/classes/TileSet.xml:640
msgid "Sets a shape for the tile, enabling collision."
msgstr ""
-#: doc/classes/TileSet.xml:643
+#: doc/classes/TileSet.xml:653
msgid "Sets the offset of a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:656
+#: doc/classes/TileSet.xml:666
msgid "Enables one-way collision on a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:681
+#: doc/classes/TileSet.xml:691
msgid "Sets a [Transform2D] on a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:692
+#: doc/classes/TileSet.xml:702
msgid "Sets an array of shapes for the tile, enabling collision."
msgstr ""
-#: doc/classes/TileSet.xml:703
+#: doc/classes/TileSet.xml:713
msgid "Sets the tile's texture."
msgstr ""
-#: doc/classes/TileSet.xml:714
+#: doc/classes/TileSet.xml:724
msgid "Sets the tile's texture offset."
msgstr ""
-#: doc/classes/TileSet.xml:725
+#: doc/classes/TileSet.xml:735
msgid "Sets the tile's [enum TileMode]."
msgstr ""
-#: doc/classes/TileSet.xml:736
+#: doc/classes/TileSet.xml:746
msgid "Sets the tile's drawing index."
msgstr ""
@@ -51139,14 +51845,16 @@ msgstr ""
#: doc/classes/Timer.xml:7
msgid ""
"Counts down a specified interval and emits a signal on reaching 0. Can be "
-"set to repeat or \"one-shot\" mode."
+"set to repeat or \"one-shot\" mode.\n"
+"[b]Note:[/b] To create an one-shot timer without instantiating a node, use "
+"[method SceneTree.create_timer]."
msgstr ""
-#: doc/classes/Timer.xml:16
+#: doc/classes/Timer.xml:17
msgid "Returns [code]true[/code] if the timer is stopped."
msgstr ""
-#: doc/classes/Timer.xml:25
+#: doc/classes/Timer.xml:26
msgid ""
"Starts the timer. Sets [code]wait_time[/code] to [code]time_sec[/code] if "
"[code]time_sec > 0[/code]. This also resets the remaining time to "
@@ -51154,11 +51862,11 @@ msgid ""
"[b]Note:[/b] this method will not resume a paused timer. See [member paused]."
msgstr ""
-#: doc/classes/Timer.xml:33
+#: doc/classes/Timer.xml:34
msgid "Stops the timer."
msgstr ""
-#: doc/classes/Timer.xml:39
+#: doc/classes/Timer.xml:40
msgid ""
"If [code]true[/code], the timer will automatically start when entering the "
"scene tree.\n"
@@ -51166,40 +51874,40 @@ msgid ""
"the timer enters the scene tree and starts."
msgstr ""
-#: doc/classes/Timer.xml:43
+#: doc/classes/Timer.xml:44
msgid ""
"If [code]true[/code], the timer will stop when reaching 0. If [code]false[/"
"code], it will restart."
msgstr ""
-#: doc/classes/Timer.xml:46
+#: doc/classes/Timer.xml:47
msgid ""
"If [code]true[/code], the timer is paused and will not process until it is "
"unpaused again, even if [method start] is called."
msgstr ""
-#: doc/classes/Timer.xml:49
+#: doc/classes/Timer.xml:50
msgid "Processing mode. See [enum TimerProcessMode]."
msgstr ""
-#: doc/classes/Timer.xml:52
+#: doc/classes/Timer.xml:53
msgid ""
"The timer's remaining time in seconds. Returns 0 if the timer is inactive.\n"
"[b]Note:[/b] You cannot set this value. To change the timer's remaining "
"time, use [method start]."
msgstr ""
-#: doc/classes/Timer.xml:56
+#: doc/classes/Timer.xml:57
msgid "Wait time in seconds."
msgstr ""
-#: doc/classes/Timer.xml:68
+#: doc/classes/Timer.xml:69
msgid ""
"Update the timer during the physics step at each frame (fixed framerate "
"processing)."
msgstr ""
-#: doc/classes/Timer.xml:71
+#: doc/classes/Timer.xml:72
msgid "Update the timer during the idle time at each frame."
msgstr ""
@@ -51278,60 +51986,66 @@ msgstr ""
#: doc/classes/Transform.xml:7
msgid ""
-"Represents one or many transformations in 3D space such as translation, "
-"rotation, or scaling. It consists of a [member basis] and an [member "
-"origin]. It is similar to a 3×4 matrix."
+"3×4 matrix (3 rows, 4 columns) used for 3D linear transformations. It can "
+"represent transformations such as translation, rotation, or scaling. It "
+"consists of a [member basis] (first 3 columns) and a [Vector3] for the "
+"[member origin] (last column).\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
msgstr ""
-#: doc/classes/Transform.xml:26
+#: doc/classes/Transform.xml:28
msgid ""
-"Constructs the Transform from four [Vector3]. Each axis corresponds to local "
-"basis vectors (some of which may be scaled)."
+"Constructs a Transform from four [Vector3] values (matrix columns). Each "
+"axis corresponds to local basis vectors (some of which may be scaled)."
msgstr ""
-#: doc/classes/Transform.xml:37
-msgid "Constructs the Transform from a [Basis] and [Vector3]."
+#: doc/classes/Transform.xml:39
+msgid "Constructs a Transform from a [Basis] and [Vector3]."
msgstr ""
-#: doc/classes/Transform.xml:46
-msgid "Constructs the Transform from a [Transform2D]."
+#: doc/classes/Transform.xml:48
+msgid "Constructs a Transform from a [Transform2D]."
msgstr ""
-#: doc/classes/Transform.xml:55
+#: doc/classes/Transform.xml:57
msgid ""
-"Constructs the Transform from a [Quat]. The origin will be Vector3(0, 0, 0)."
+"Constructs a Transform from a [Quat]. The origin will be [code]Vector3(0, 0, "
+"0)[/code]."
msgstr ""
-#: doc/classes/Transform.xml:64
+#: doc/classes/Transform.xml:66
msgid ""
"Constructs the Transform from a [Basis]. The origin will be Vector3(0, 0, 0)."
msgstr ""
-#: doc/classes/Transform.xml:71
+#: doc/classes/Transform.xml:73 doc/classes/Transform2D.xml:51
msgid ""
"Returns the inverse of the transform, under the assumption that the "
"transformation is composed of rotation, scaling and translation."
msgstr ""
-#: doc/classes/Transform.xml:82
-msgid "Interpolates the transform to other Transform by weight amount (0-1)."
+#: doc/classes/Transform.xml:84
+msgid ""
+"Interpolates the transform to other Transform by weight amount (on the range "
+"of 0.0 to 1.0)."
msgstr ""
-#: doc/classes/Transform.xml:89 doc/classes/Transform2D.xml:106
+#: doc/classes/Transform.xml:91
msgid ""
"Returns the inverse of the transform, under the assumption that the "
"transformation is composed of rotation and translation (no scaling, use "
"affine_inverse for transforms with scaling)."
msgstr ""
-#: doc/classes/Transform.xml:98 doc/classes/Transform2D.xml:115
+#: doc/classes/Transform.xml:100 doc/classes/Transform2D.xml:119
msgid ""
"Returns [code]true[/code] if this transform and [code]transform[/code] are "
"approximately equal, by calling [code]is_equal_approx[/code] on each "
"component."
msgstr ""
-#: doc/classes/Transform.xml:109
+#: doc/classes/Transform.xml:111
msgid ""
"Returns a copy of the transform rotated such that its -Z axis points towards "
"the [code]target[/code] position.\n"
@@ -51341,25 +52055,25 @@ msgid ""
"Operations take place in global space."
msgstr ""
-#: doc/classes/Transform.xml:118 doc/classes/Transform2D.xml:122
+#: doc/classes/Transform.xml:120
msgid ""
"Returns the transform with the basis orthogonal (90 degrees), and normalized "
"axis vectors."
msgstr ""
-#: doc/classes/Transform.xml:129
+#: doc/classes/Transform.xml:131
msgid ""
"Rotates the transform around the given axis by the given angle (in radians), "
"using matrix multiplication. The axis must be a normalized vector."
msgstr ""
-#: doc/classes/Transform.xml:138
+#: doc/classes/Transform.xml:140
msgid ""
"Scales basis and origin of the transform by the given scale factor, using "
"matrix multiplication."
msgstr ""
-#: doc/classes/Transform.xml:147 doc/classes/Transform2D.xml:149
+#: doc/classes/Transform.xml:149 doc/classes/Transform2D.xml:153
msgid ""
"Translates the transform by the given offset, relative to the transform's "
"basis vectors.\n"
@@ -51367,152 +52081,162 @@ msgid ""
"multiplication."
msgstr ""
-#: doc/classes/Transform.xml:157
+#: doc/classes/Transform.xml:159
msgid ""
"Transforms the given [Vector3], [Plane], [AABB], or [PackedVector3Array] by "
"this transform."
msgstr ""
-#: doc/classes/Transform.xml:166
+#: doc/classes/Transform.xml:168
msgid ""
"Inverse-transforms the given [Vector3], [Plane], [AABB], or "
"[PackedVector3Array] by this transform."
msgstr ""
-#: doc/classes/Transform.xml:172
+#: doc/classes/Transform.xml:174
msgid ""
"The basis is a matrix containing 3 [Vector3] as its columns: X axis, Y axis, "
"and Z axis. These vectors can be interpreted as the basis vectors of local "
"coordinate system traveling with the object."
msgstr ""
-#: doc/classes/Transform.xml:175
-msgid "The translation offset of the transform."
+#: doc/classes/Transform.xml:177
+msgid ""
+"The translation offset of the transform (column 3, the fourth column). "
+"Equivalent to array index [code]3[/code]."
msgstr ""
-#: doc/classes/Transform.xml:180
+#: doc/classes/Transform.xml:182
msgid ""
"[Transform] with no translation, rotation or scaling applied. When applied "
"to other data structures, [constant IDENTITY] performs no transformation."
msgstr ""
-#: doc/classes/Transform.xml:183
+#: doc/classes/Transform.xml:185
msgid "[Transform] with mirroring applied perpendicular to the YZ plane."
msgstr ""
-#: doc/classes/Transform.xml:186
+#: doc/classes/Transform.xml:188
msgid "[Transform] with mirroring applied perpendicular to the XZ plane."
msgstr ""
-#: doc/classes/Transform.xml:189
+#: doc/classes/Transform.xml:191
msgid "[Transform] with mirroring applied perpendicular to the XY plane."
msgstr ""
#: doc/classes/Transform2D.xml:4
-msgid "2D transformation (3×2 matrix)."
+msgid "2D transformation (2×3 matrix)."
msgstr ""
#: doc/classes/Transform2D.xml:7
msgid ""
-"Represents one or many transformations in 2D space such as translation, "
-"rotation, or scaling. It consists of two [member x] and [member y] "
-"[Vector2]s and an [member origin]. It is similar to a 3×2 matrix."
+"2×3 matrix (2 rows, 3 columns) used for 2D linear transformations. It can "
+"represent transformations such as translation, rotation, or scaling. It "
+"consists of a three [Vector2] values: [member x], [member y], and the "
+"[member origin].\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
msgstr ""
-#: doc/classes/Transform2D.xml:18
+#: doc/classes/Transform2D.xml:20
msgid "Constructs the transform from a 3D [Transform]."
msgstr ""
-#: doc/classes/Transform2D.xml:31
+#: doc/classes/Transform2D.xml:33
msgid ""
-"Constructs the transform from 3 [Vector2]s representing x, y, and origin."
+"Constructs the transform from 3 [Vector2] values representing [member x], "
+"[member y], and the [member origin] (the three column vectors)."
msgstr ""
-#: doc/classes/Transform2D.xml:42
+#: doc/classes/Transform2D.xml:44
msgid "Constructs the transform from a given angle (in radians) and position."
msgstr ""
-#: doc/classes/Transform2D.xml:58
-msgid "Transforms the given vector by this transform's basis (no translation)."
+#: doc/classes/Transform2D.xml:60
+msgid ""
+"Returns a vector transformed (multiplied) by the basis matrix.\n"
+"This method does not account for translation (the origin vector)."
msgstr ""
-#: doc/classes/Transform2D.xml:67
+#: doc/classes/Transform2D.xml:70
msgid ""
-"Inverse-transforms the given vector by this transform's basis (no "
-"translation)."
+"Returns a vector transformed (multiplied) by the inverse basis matrix.\n"
+"This method does not account for translation (the origin vector)."
msgstr ""
-#: doc/classes/Transform2D.xml:74
+#: doc/classes/Transform2D.xml:78
msgid "Returns the transform's origin (translation)."
msgstr ""
-#: doc/classes/Transform2D.xml:81
+#: doc/classes/Transform2D.xml:85
msgid "Returns the transform's rotation (in radians)."
msgstr ""
-#: doc/classes/Transform2D.xml:88
+#: doc/classes/Transform2D.xml:92
msgid "Returns the scale."
msgstr ""
-#: doc/classes/Transform2D.xml:99
+#: doc/classes/Transform2D.xml:103
msgid ""
"Returns a transform interpolated between this transform and another by a "
-"given weight (0-1)."
+"given weight (on the range of 0.0 to 1.0)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:110
+msgid ""
+"Returns the inverse of the transform, under the assumption that the "
+"transformation is composed of rotation and translation (no scaling, use "
+"[method affine_inverse] for transforms with scaling)."
msgstr ""
-#: doc/classes/Transform2D.xml:131
+#: doc/classes/Transform2D.xml:126
+msgid ""
+"Returns the transform with the basis orthogonal (90 degrees), and normalized "
+"axis vectors (scale of 1 or -1)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:135
msgid ""
"Rotates the transform by the given angle (in radians), using matrix "
"multiplication."
msgstr ""
-#: doc/classes/Transform2D.xml:140
+#: doc/classes/Transform2D.xml:144
msgid ""
"Scales the transform by the given scale factor, using matrix multiplication."
msgstr ""
-#: doc/classes/Transform2D.xml:159
+#: doc/classes/Transform2D.xml:163
msgid ""
"Transforms the given [Vector2], [Rect2], or [PackedVector2Array] by this "
"transform."
msgstr ""
-#: doc/classes/Transform2D.xml:168
+#: doc/classes/Transform2D.xml:172
msgid ""
"Inverse-transforms the given [Vector2], [Rect2], or [PackedVector2Array] by "
"this transform."
msgstr ""
-#: doc/classes/Transform2D.xml:174
-msgid "The transform's translation offset."
-msgstr ""
-
-#: doc/classes/Transform2D.xml:177
-msgid ""
-"The X axis of 2×2 basis matrix containing 2 [Vector2]s as its columns: X "
-"axis and Y axis. These vectors can be interpreted as the basis vectors of "
-"local coordinate system traveling with the object."
-msgstr ""
-
-#: doc/classes/Transform2D.xml:180
+#: doc/classes/Transform2D.xml:178
msgid ""
-"The Y axis of 2×2 basis matrix containing 2 [Vector2]s as its columns: X "
-"axis and Y axis. These vectors can be interpreted as the basis vectors of "
-"local coordinate system traveling with the object."
+"The origin vector (column 2, the third column). Equivalent to array index "
+"[code]2[/code]. The origin vector represents translation."
msgstr ""
-#: doc/classes/Transform2D.xml:185
+#: doc/classes/Transform2D.xml:189
msgid ""
-"[Transform2D] with no translation, rotation or scaling applied. When applied "
-"to other data structures, [constant IDENTITY] performs no transformation."
+"The identity [Transform2D] with no translation, rotation or scaling applied. "
+"When applied to other data structures, [constant IDENTITY] performs no "
+"transformation."
msgstr ""
-#: doc/classes/Transform2D.xml:188
-msgid "[Transform2D] with mirroring applied parallel to the X axis."
+#: doc/classes/Transform2D.xml:192
+msgid "The [Transform2D] that will flip something along the X axis."
msgstr ""
-#: doc/classes/Transform2D.xml:191
-msgid "[Transform2D] with mirroring applied parallel to the Y axis."
+#: doc/classes/Transform2D.xml:195
+msgid "The [Transform2D] that will flip something along the Y axis."
msgstr ""
#: doc/classes/Translation.xml:4
@@ -52176,7 +52900,8 @@ msgid "Returns the column's cell mode."
msgstr ""
#: doc/classes/TreeItem.xml:121
-msgid "Returns the TreeItem's child items."
+msgid ""
+"Returns the TreeItem's first child item or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:130
@@ -52208,28 +52933,32 @@ msgid "Returns the icon [Texture2D] region as [Rect2]."
msgstr ""
#: doc/classes/TreeItem.xml:199
-msgid "Returns the next TreeItem in the tree."
+msgid ""
+"Returns the next TreeItem in the tree or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:208
msgid ""
-"Returns the next visible TreeItem in the tree.\n"
+"Returns the next visible TreeItem in the tree or a null object if there is "
+"none.\n"
"If [code]wrap[/code] is enabled, the method will wrap around to the first "
"visible element in the tree when called on the last visible element, "
"otherwise it returns [code]null[/code]."
msgstr ""
#: doc/classes/TreeItem.xml:216
-msgid "Returns the parent TreeItem."
+msgid "Returns the parent TreeItem or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:223
-msgid "Returns the previous TreeItem in the tree."
+msgid ""
+"Returns the previous TreeItem in the tree or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:232
msgid ""
-"Returns the previous visible TreeItem in the tree.\n"
+"Returns the previous visible TreeItem in the tree or a null object if there "
+"is none.\n"
"If [code]wrap[/code] is enabled, the method will wrap around to the last "
"visible element in the tree when called on the first visible element, "
"otherwise it returns [code]null[/code]."
@@ -52739,6 +53468,10 @@ msgid ""
"A simple server that opens a UDP socket and returns connected "
"[PacketPeerUDP] upon receiving new packets. See also [method PacketPeerUDP."
"connect_to_host].\n"
+"After starting the server ([method listen]), you will need to [method poll] "
+"it at regular intervals (e.g. inside [method Node._process]) for it to "
+"process new packets, delivering them to the appropriate [PacketPeerUDP], and "
+"taking new connections.\n"
"Below a small example of how it can be used:\n"
"[codeblock]\n"
"# server.gd\n"
@@ -52751,6 +53484,7 @@ msgid ""
" server.listen(4242)\n"
"\n"
"func _process(delta):\n"
+" server.poll() # Important!\n"
" if server.is_connection_available():\n"
" var peer : PacketPeerUDP = server.take_connection()\n"
" var pkt = peer.get_packet()\n"
@@ -52786,35 +53520,55 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/UDPServer.xml:60
+#: doc/classes/UDPServer.xml:62
msgid ""
-"Returns [code]true[/code] if a packet with a new address/port combination is "
-"received on the socket."
+"Returns [code]true[/code] if a packet with a new address/port combination "
+"was received on the socket."
msgstr ""
-#: doc/classes/UDPServer.xml:67
+#: doc/classes/UDPServer.xml:69
msgid ""
"Returns [code]true[/code] if the socket is open and listening on a port."
msgstr ""
-#: doc/classes/UDPServer.xml:78
+#: doc/classes/UDPServer.xml:80
msgid ""
"Starts the server by opening a UDP socket listening on the given port. You "
"can optionally specify a [code]bind_address[/code] to only listen for "
"packets sent to that address. See also [method PacketPeerUDP.listen]."
msgstr ""
-#: doc/classes/UDPServer.xml:85
+#: doc/classes/UDPServer.xml:87
+msgid ""
+"Call this method at regular intervals (e.g. inside [method Node._process]) "
+"to process new packets. And packet from known address/port pair will be "
+"delivered to the appropriate [PacketPeerUDP], any packet received from an "
+"unknown address/port pair will be added as a pending connection (see [method "
+"is_connection_available], [method take_connection]). The maximum number of "
+"pending connection is defined via [member max_pending_connections]."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:94
+msgid ""
+"Stops the server, closing the UDP socket if open. Will close all connected "
+"[PacketPeerUDP] accepted via [method take_connection] (remote peers will not "
+"be notified)."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:101
msgid ""
-"Stops the server, closing the UDP socket if open. Will not disconnect any "
-"connected [PacketPeerUDP]."
+"Returns the first pending connection (connected to the appropriate address/"
+"port). Will return [code]null[/code] if no new connection is available. See "
+"also [method is_connection_available], [method PacketPeerUDP."
+"connect_to_host]."
msgstr ""
-#: doc/classes/UDPServer.xml:92
+#: doc/classes/UDPServer.xml:107
msgid ""
-"Returns a [PacketPeerUDP] connected to the address/port combination of the "
-"first packet in queue. Will return [code]null[/code] if no packet is in "
-"queue. See also [method PacketPeerUDP.connect_to_host]."
+"Define the maximum number of pending connections, during [method poll], any "
+"new pending connection exceeding that value will be automatically dropped. "
+"Setting this value to [code]0[/code] effectively prevents any new pending "
+"connection to be accepted (e.g. when all your players have connected)."
msgstr ""
#: doc/classes/UndoRedo.xml:4
@@ -53455,24 +54209,26 @@ msgstr ""
#: doc/classes/Vector2.xml:46
msgid ""
-"Returns the vector's angle in radians with respect to the X axis, or [code]"
-"(1, 0)[/code] vector.\n"
+"Returns this vector's angle with respect to the X axis, or [code](1, 0)[/"
+"code] vector, in radians.\n"
"Equivalent to the result of [method @GDScript.atan2] when called with the "
-"vector's [member x] and [member y] as parameters: [code]atan2(x, y)[/code]."
+"vector's [member y] and [member x] as parameters: [code]atan2(y, x)[/code]."
msgstr ""
#: doc/classes/Vector2.xml:56
-msgid "Returns the angle in radians between the two vectors."
+msgid "Returns the angle to the given vector, in radians."
msgstr ""
#: doc/classes/Vector2.xml:65
msgid ""
-"Returns the angle in radians between the line connecting the two points and "
-"the X coordinate."
+"Returns the angle between the line connecting the two points and the X axis, "
+"in radians."
msgstr ""
-#: doc/classes/Vector2.xml:72 doc/classes/Vector2i.xml:46
-msgid "Returns the ratio of [member x] to [member y]."
+#: doc/classes/Vector2.xml:72
+msgid ""
+"Returns the aspect ratio of this vector, the ratio of [member x] to [member "
+"y]."
msgstr ""
#: doc/classes/Vector2.xml:81 doc/classes/Vector3.xml:59
@@ -53481,24 +54237,27 @@ msgid ""
msgstr ""
#: doc/classes/Vector2.xml:88
-msgid "Returns the vector with all components rounded up."
+msgid ""
+"Returns the vector with all components rounded up (towards positive "
+"infinity)."
msgstr ""
#: doc/classes/Vector2.xml:97
-msgid "Returns the vector with a maximum length."
+msgid ""
+"Returns the vector with a maximum length by limiting its length to "
+"[code]length[/code]."
msgstr ""
#: doc/classes/Vector2.xml:106
-msgid ""
-"Returns the 2-dimensional analog of the cross product with the given vector."
+msgid "Returns the cross product of this vector and [code]with[/code]."
msgstr ""
#: doc/classes/Vector2.xml:121
msgid ""
"Cubically interpolates between this vector and [code]b[/code] using "
"[code]pre_a[/code] and [code]post_b[/code] as handles, and returns the "
-"result at position [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation."
+"result at position [code]t[/code]. [code]t[/code] is on the range of 0.0 to "
+"1.0, representing the amount of interpolation."
msgstr ""
#: doc/classes/Vector2.xml:130 doc/classes/Vector3.xml:99
@@ -53506,182 +54265,198 @@ msgid ""
"Returns the normalized vector pointing from this vector to [code]b[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:139
+#: doc/classes/Vector2.xml:139 doc/classes/Vector3.xml:108
msgid ""
-"Returns the squared distance to vector [code]b[/code]. Prefer this function "
-"over [method distance_to] if you need to sort vectors or need the squared "
-"distance for some formula."
+"Returns the squared distance between this vector and [code]b[/code].\n"
+"This method runs faster than [method distance_to], so prefer it if you need "
+"to compare vectors or need the squared distance for some formula."
msgstr ""
-#: doc/classes/Vector2.xml:148
-msgid "Returns the distance to vector [code]b[/code]."
+#: doc/classes/Vector2.xml:149
+msgid "Returns the distance between this vector and [code]to[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:157
-msgid "Returns the dot product with vector [code]b[/code]."
+#: doc/classes/Vector2.xml:158
+msgid ""
+"Returns the dot product of this vector and [code]with[/code]. This can be "
+"used to compare the angle between two vectors. For example, this can be used "
+"to determine whether an enemy is facing the player.\n"
+"The dot product will be [code]0[/code] for a straight angle (90 degrees), "
+"greater than 0 for angles narrower than 90 degrees and lower than 0 for "
+"angles wider than 90 degrees.\n"
+"When using unit (normalized) vectors, the result will always be between "
+"[code]-1.0[/code] (180 degree angle) when the vectors are facing opposite "
+"directions, and [code]1.0[/code] (0 degree angle) when the vectors are "
+"aligned.\n"
+"[b]Note:[/b] [code]a.dot(b)[/code] is equivalent to [code]b.dot(a)[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:164
-msgid "Returns the vector with all components rounded down."
+#: doc/classes/Vector2.xml:168
+msgid ""
+"Returns the vector with all components rounded down (towards negative "
+"infinity)."
msgstr ""
-#: doc/classes/Vector2.xml:173 doc/classes/Vector3.xml:149
+#: doc/classes/Vector2.xml:177 doc/classes/Vector3.xml:153
msgid ""
"Returns [code]true[/code] if this vector and [code]v[/code] are "
"approximately equal, by running [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/Vector2.xml:180 doc/classes/Vector3.xml:156
-msgid "Returns [code]true[/code] if the vector is normalized."
+#: doc/classes/Vector2.xml:184 doc/classes/Vector3.xml:160
+msgid ""
+"Returns [code]true[/code] if the vector is normalized, and false otherwise."
msgstr ""
-#: doc/classes/Vector2.xml:187 doc/classes/Vector3.xml:163
-msgid "Returns the vector's length."
+#: doc/classes/Vector2.xml:191 doc/classes/Vector3.xml:167
+msgid "Returns the length (magnitude) of this vector."
msgstr ""
-#: doc/classes/Vector2.xml:194
+#: doc/classes/Vector2.xml:198 doc/classes/Vector3.xml:174
msgid ""
-"Returns the vector's length squared. Prefer this method over [method length] "
-"if you need to sort vectors or need the squared length for some formula."
+"Returns the squared length (squared magnitude) of this vector.\n"
+"This method runs faster than [method length], so prefer it if you need to "
+"compare vectors or need the squared distance for some formula."
msgstr ""
-#: doc/classes/Vector2.xml:205
+#: doc/classes/Vector2.xml:210 doc/classes/Vector3.xml:186
msgid ""
"Returns the result of the linear interpolation between this vector and "
-"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation."
+"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is on the range of "
+"0.0 to 1.0, representing the amount of interpolation."
msgstr ""
-#: doc/classes/Vector2.xml:216 doc/classes/Vector3.xml:206
+#: doc/classes/Vector2.xml:221
msgid ""
"Moves the vector toward [code]to[/code] by the fixed [code]delta[/code] "
"amount."
msgstr ""
-#: doc/classes/Vector2.xml:223 doc/classes/Vector3.xml:213
+#: doc/classes/Vector2.xml:228 doc/classes/Vector3.xml:218
msgid ""
"Returns the vector scaled to unit length. Equivalent to [code]v / v.length()"
"[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:232 doc/classes/Vector3.xml:231
+#: doc/classes/Vector2.xml:237 doc/classes/Vector3.xml:236
msgid ""
-"Returns a vector composed of the [code]fposmod[/code] of this vector's "
+"Returns a vector composed of the [method @GDScript.fposmod] of this vector's "
"components and [code]mod[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:241 doc/classes/Vector3.xml:240
+#: doc/classes/Vector2.xml:246 doc/classes/Vector3.xml:245
msgid ""
-"Returns a vector composed of the [code]fposmod[/code] of this vector's "
+"Returns a vector composed of the [method @GDScript.fposmod] of this vector's "
"components and [code]modv[/code]'s components."
msgstr ""
-#: doc/classes/Vector2.xml:250 doc/classes/Vector3.xml:249
+#: doc/classes/Vector2.xml:255
msgid "Returns the vector projected onto the vector [code]b[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:259 doc/classes/Vector3.xml:258
+#: doc/classes/Vector2.xml:264
msgid "Returns the vector reflected from a plane defined by the given normal."
msgstr ""
-#: doc/classes/Vector2.xml:268
+#: doc/classes/Vector2.xml:273
msgid ""
"Returns the vector rotated by [code]phi[/code] radians. See also [method "
"@GDScript.deg2rad]."
msgstr ""
-#: doc/classes/Vector2.xml:275 doc/classes/Vector3.xml:276
+#: doc/classes/Vector2.xml:280
msgid ""
"Returns the vector with all components rounded to the nearest integer, with "
"halfway cases rounded away from zero."
msgstr ""
-#: doc/classes/Vector2.xml:282 doc/classes/Vector2i.xml:53
-#: doc/classes/Vector3.xml:283 doc/classes/Vector3i.xml:55
+#: doc/classes/Vector2.xml:287
msgid ""
"Returns the vector with each component set to one or negative one, depending "
-"on the signs of the components."
+"on the signs of the components, or zero if the component is zero, by calling "
+"[method @GDScript.sign] on each component."
msgstr ""
-#: doc/classes/Vector2.xml:293 doc/classes/Vector3.xml:294
+#: doc/classes/Vector2.xml:298 doc/classes/Vector3.xml:299
msgid ""
"Returns the result of spherical linear interpolation between this vector and "
-"[code]b[/code], by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation.\n"
+"[code]b[/code], by amount [code]t[/code]. [code]t[/code] is on the range of "
+"0.0 to 1.0, representing the amount of interpolation.\n"
"[b]Note:[/b] Both vectors must be normalized."
msgstr ""
-#: doc/classes/Vector2.xml:303 doc/classes/Vector3.xml:304
-msgid ""
-"Returns the component of the vector along a plane defined by the given "
-"normal."
+#: doc/classes/Vector2.xml:308 doc/classes/Vector3.xml:309
+msgid "Returns this vector slid along a plane defined by the given normal."
msgstr ""
-#: doc/classes/Vector2.xml:312 doc/classes/Vector3.xml:313
-msgid "Returns the vector snapped to a grid with the given size."
+#: doc/classes/Vector2.xml:317 doc/classes/Vector3.xml:318
+msgid ""
+"Returns this vector with each component snapped to the nearest multiple of "
+"[code]step[/code]. This can also be used to round to an arbitrary number of "
+"decimals."
msgstr ""
-#: doc/classes/Vector2.xml:319
-msgid "Returns a perpendicular vector."
+#: doc/classes/Vector2.xml:324
+msgid ""
+"Returns a perpendicular vector rotated 90 degrees counter-clockwise compared "
+"to the original, with the same length."
msgstr ""
-#: doc/classes/Vector2.xml:325 doc/classes/Vector2i.xml:59
-#: doc/classes/Vector3.xml:326 doc/classes/Vector3i.xml:61
+#: doc/classes/Vector2.xml:330 doc/classes/Vector2i.xml:59
+#: doc/classes/Vector3.xml:332 doc/classes/Vector3i.xml:61
msgid ""
"The vector's X component. Also accessible by using the index position [code]"
"[0][/code]."
msgstr ""
-#: doc/classes/Vector2.xml:328 doc/classes/Vector2i.xml:62
-#: doc/classes/Vector3.xml:329 doc/classes/Vector3i.xml:64
+#: doc/classes/Vector2.xml:333 doc/classes/Vector2i.xml:62
+#: doc/classes/Vector3.xml:335 doc/classes/Vector3i.xml:64
msgid ""
"The vector's Y component. Also accessible by using the index position [code]"
"[1][/code]."
msgstr ""
-#: doc/classes/Vector2.xml:333 doc/classes/Vector2i.xml:67
+#: doc/classes/Vector2.xml:338 doc/classes/Vector2i.xml:67
#: doc/classes/Vector3i.xml:72
msgid "Enumerated value for the X axis."
msgstr ""
-#: doc/classes/Vector2.xml:336 doc/classes/Vector2i.xml:70
+#: doc/classes/Vector2.xml:341 doc/classes/Vector2i.xml:70
#: doc/classes/Vector3i.xml:75
msgid "Enumerated value for the Y axis."
msgstr ""
-#: doc/classes/Vector2.xml:339 doc/classes/Vector2i.xml:73
-#: doc/classes/Vector3.xml:346 doc/classes/Vector3i.xml:81
-msgid "Zero vector."
+#: doc/classes/Vector2.xml:344 doc/classes/Vector2i.xml:73
+#: doc/classes/Vector3.xml:352 doc/classes/Vector3i.xml:81
+msgid "Zero vector, a vector with all components set to [code]0[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:342 doc/classes/Vector2i.xml:76
-#: doc/classes/Vector3.xml:349 doc/classes/Vector3i.xml:84
-msgid "One vector."
+#: doc/classes/Vector2.xml:347 doc/classes/Vector2i.xml:76
+#: doc/classes/Vector3.xml:355 doc/classes/Vector3i.xml:84
+msgid "One vector, a vector with all components set to [code]1[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:345 doc/classes/Vector3.xml:352
-msgid "Infinity vector."
+#: doc/classes/Vector2.xml:350 doc/classes/Vector3.xml:358
+msgid ""
+"Infinity vector, a vector with all components set to [constant @GDScript."
+"INF]."
msgstr ""
-#: doc/classes/Vector2.xml:348 doc/classes/Vector2i.xml:79
-#: doc/classes/Vector3.xml:355 doc/classes/Vector3i.xml:87
-msgid "Left unit vector."
+#: doc/classes/Vector2.xml:353 doc/classes/Vector2i.xml:79
+msgid "Left unit vector. Represents the direction of left."
msgstr ""
-#: doc/classes/Vector2.xml:351 doc/classes/Vector2i.xml:82
-#: doc/classes/Vector3.xml:358 doc/classes/Vector3i.xml:90
-msgid "Right unit vector."
+#: doc/classes/Vector2.xml:356 doc/classes/Vector2i.xml:82
+msgid "Right unit vector. Represents the direction of right."
msgstr ""
-#: doc/classes/Vector2.xml:354 doc/classes/Vector2i.xml:85
-#: doc/classes/Vector3.xml:361 doc/classes/Vector3i.xml:93
-msgid "Up unit vector."
+#: doc/classes/Vector2.xml:359 doc/classes/Vector2i.xml:85
+msgid "Up unit vector. Y is down in 2D, so this vector points -Y."
msgstr ""
-#: doc/classes/Vector2.xml:357 doc/classes/Vector2i.xml:88
-#: doc/classes/Vector3.xml:364 doc/classes/Vector3i.xml:96
-msgid "Down unit vector."
+#: doc/classes/Vector2.xml:362 doc/classes/Vector2i.xml:88
+msgid "Down unit vector. Y is down in 2D, so this vector points +Y."
msgstr ""
#: doc/classes/Vector2i.xml:4
@@ -53710,6 +54485,16 @@ msgid ""
"will be truncated."
msgstr ""
+#: doc/classes/Vector2i.xml:46
+msgid "Returns the ratio of [member x] to [member y]."
+msgstr ""
+
+#: doc/classes/Vector2i.xml:53 doc/classes/Vector3i.xml:55
+msgid ""
+"Returns the vector with each component set to one or negative one, depending "
+"on the signs of the components."
+msgstr ""
+
#: doc/classes/Vector3.xml:4
msgid "Vector used for 3D math using floating point coordinates."
msgstr ""
@@ -53734,120 +54519,170 @@ msgid "Returns a [Vector3] with the given components."
msgstr ""
#: doc/classes/Vector3.xml:50
-msgid "Returns the minimum angle to the given vector."
+msgid "Returns the minimum angle to the given vector, in radians."
msgstr ""
#: doc/classes/Vector3.xml:66
-msgid "Returns a new vector with all components rounded up."
+msgid ""
+"Returns a new vector with all components rounded up (towards positive "
+"infinity)."
msgstr ""
#: doc/classes/Vector3.xml:75
-msgid "Returns the cross product with [code]b[/code]."
+msgid "Returns the cross product of this vector and [code]b[/code]."
msgstr ""
#: doc/classes/Vector3.xml:90
msgid ""
"Performs a cubic interpolation between vectors [code]pre_a[/code], [code]a[/"
"code], [code]b[/code], [code]post_b[/code] ([code]a[/code] is current), by "
-"the given amount [code]t[/code]. [code]t[/code] is in the range of [code]0.0 "
-"- 1.0[/code], representing the amount of interpolation."
-msgstr ""
-
-#: doc/classes/Vector3.xml:108
-msgid ""
-"Returns the squared distance to [code]b[/code]. Prefer this function over "
-"[method distance_to] if you need to sort vectors or need the squared "
-"distance for some formula."
+"the given amount [code]t[/code]. [code]t[/code] is on the range of 0.0 to "
+"1.0, representing the amount of interpolation."
msgstr ""
-#: doc/classes/Vector3.xml:117
-msgid "Returns the distance to [code]b[/code]."
+#: doc/classes/Vector3.xml:118
+msgid "Returns the distance between this vector and [code]b[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:126
-msgid "Returns the dot product with [code]b[/code]."
+#: doc/classes/Vector3.xml:127
+msgid ""
+"Returns the dot product of this vector and [code]b[/code]. This can be used "
+"to compare the angle between two vectors. For example, this can be used to "
+"determine whether an enemy is facing the player.\n"
+"The dot product will be [code]0[/code] for a straight angle (90 degrees), "
+"greater than 0 for angles narrower than 90 degrees and lower than 0 for "
+"angles wider than 90 degrees.\n"
+"When using unit (normalized) vectors, the result will always be between "
+"[code]-1.0[/code] (180 degree angle) when the vectors are facing opposite "
+"directions, and [code]1.0[/code] (0 degree angle) when the vectors are "
+"aligned.\n"
+"[b]Note:[/b] [code]a.dot(b)[/code] is equivalent to [code]b.dot(a)[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:133
-msgid "Returns a new vector with all components rounded down."
+#: doc/classes/Vector3.xml:137
+msgid ""
+"Returns a new vector with all components rounded down (towards negative "
+"infinity)."
msgstr ""
-#: doc/classes/Vector3.xml:140
+#: doc/classes/Vector3.xml:144
msgid ""
"Returns the inverse of the vector. This is the same as [code]Vector3( 1.0 / "
"v.x, 1.0 / v.y, 1.0 / v.z )[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:170
+#: doc/classes/Vector3.xml:193 doc/classes/Vector3i.xml:41
msgid ""
-"Returns the vector's length squared. Prefer this function over [method "
-"length] if you need to sort vectors or need the squared length for some "
-"formula."
+"Returns the axis of the vector's largest value. See [code]AXIS_*[/code] "
+"constants. If all components are equal, this method returns [constant "
+"AXIS_X]."
msgstr ""
-#: doc/classes/Vector3.xml:181
+#: doc/classes/Vector3.xml:200 doc/classes/Vector3i.xml:48
msgid ""
-"Returns the result of the linear interpolation between this vector and "
-"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation.."
+"Returns the axis of the vector's smallest value. See [code]AXIS_*[/code] "
+"constants. If all components are equal, this method returns [constant "
+"AXIS_Z]."
msgstr ""
-#: doc/classes/Vector3.xml:188 doc/classes/Vector3i.xml:41
+#: doc/classes/Vector3.xml:211
msgid ""
-"Returns the axis of the vector's largest value. See [code]AXIS_*[/code] "
-"constants."
+"Moves this vector toward [code]to[/code] by the fixed [code]delta[/code] "
+"amount."
msgstr ""
-#: doc/classes/Vector3.xml:195 doc/classes/Vector3i.xml:48
+#: doc/classes/Vector3.xml:227
+msgid "Returns the outer product with [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:254
+msgid "Returns this vector projected onto another vector [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:263
+msgid "Returns this vector reflected from a plane defined by the given normal."
+msgstr ""
+
+#: doc/classes/Vector3.xml:274
msgid ""
-"Returns the axis of the vector's smallest value. See [code]AXIS_*[/code] "
-"constants."
+"Rotates this vector around a given axis by [code]phi[/code] radians. The "
+"axis must be a normalized vector."
msgstr ""
-#: doc/classes/Vector3.xml:222
-msgid "Returns the outer product with [code]b[/code]."
+#: doc/classes/Vector3.xml:281
+msgid ""
+"Returns this vector with all components rounded to the nearest integer, with "
+"halfway cases rounded away from zero."
msgstr ""
-#: doc/classes/Vector3.xml:269
+#: doc/classes/Vector3.xml:288
msgid ""
-"Rotates the vector around a given axis by [code]phi[/code] radians. The axis "
-"must be a normalized vector."
+"Returns a vector with each component set to one or negative one, depending "
+"on the signs of this vector's components, or zero if the component is zero, "
+"by calling [method @GDScript.sign] on each component."
msgstr ""
-#: doc/classes/Vector3.xml:320
-msgid "Returns a diagonal matrix with the vector as main diagonal."
+#: doc/classes/Vector3.xml:325
+msgid ""
+"Returns a diagonal matrix with the vector as main diagonal.\n"
+"This is equivalent to a Basis with no rotation or shearing and this vector's "
+"components set as the scale."
msgstr ""
-#: doc/classes/Vector3.xml:332 doc/classes/Vector3i.xml:67
+#: doc/classes/Vector3.xml:338 doc/classes/Vector3i.xml:67
msgid ""
"The vector's Z component. Also accessible by using the index position [code]"
"[2][/code]."
msgstr ""
-#: doc/classes/Vector3.xml:337
+#: doc/classes/Vector3.xml:343
msgid ""
"Enumerated value for the X axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:340
+#: doc/classes/Vector3.xml:346
msgid ""
"Enumerated value for the Y axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:343
+#: doc/classes/Vector3.xml:349
msgid ""
"Enumerated value for the Z axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:367 doc/classes/Vector3i.xml:99
-msgid "Forward unit vector."
+#: doc/classes/Vector3.xml:361 doc/classes/Vector3i.xml:87
+msgid ""
+"Left unit vector. Represents the local direction of left, and the global "
+"direction of west."
msgstr ""
-#: doc/classes/Vector3.xml:370 doc/classes/Vector3i.xml:102
-msgid "Back unit vector."
+#: doc/classes/Vector3.xml:364 doc/classes/Vector3i.xml:90
+msgid ""
+"Right unit vector. Represents the local direction of right, and the global "
+"direction of east."
+msgstr ""
+
+#: doc/classes/Vector3.xml:367 doc/classes/Vector3i.xml:93
+msgid "Up unit vector."
+msgstr ""
+
+#: doc/classes/Vector3.xml:370 doc/classes/Vector3i.xml:96
+msgid "Down unit vector."
+msgstr ""
+
+#: doc/classes/Vector3.xml:373 doc/classes/Vector3i.xml:99
+msgid ""
+"Forward unit vector. Represents the local direction of forward, and the "
+"global direction of north."
+msgstr ""
+
+#: doc/classes/Vector3.xml:376 doc/classes/Vector3i.xml:102
+msgid ""
+"Back unit vector. Represents the local direction of back, and the global "
+"direction of south."
msgstr ""
#: doc/classes/Vector3i.xml:4
@@ -53896,10 +54731,14 @@ msgid ""
"directly.\n"
"[b]Note:[/b] The origin point of your VehicleBody3D will determine the "
"center of gravity of your vehicle so it is better to keep this low and move "
-"the [CollisionShape3D] and [MeshInstance3D] upwards."
+"the [CollisionShape3D] and [MeshInstance3D] upwards.\n"
+"[b]Note:[/b] This class has known issues and isn't designed to provide "
+"realistic 3D vehicle physics. If you want advanced vehicle physics, you will "
+"probably have to write your own physics integration using another "
+"[PhysicsBody3D] class."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:16
+#: doc/classes/VehicleBody3D.xml:17
msgid ""
"Slows down the vehicle by applying a braking force. The vehicle is only "
"slowed down if the wheels are in contact with a surface. The force you need "
@@ -53908,7 +54747,7 @@ msgid ""
"a value in the 25 - 30 range for hard braking."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:19
+#: doc/classes/VehicleBody3D.xml:20
msgid ""
"Accelerates the vehicle by applying an engine force. The vehicle is only "
"speed up if the wheels that have [member VehicleWheel3D.use_as_traction] set "
@@ -53921,7 +54760,7 @@ msgid ""
"A negative value will result in the vehicle reversing."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:25
+#: doc/classes/VehicleBody3D.xml:26
msgid ""
"The steering angle for the vehicle. Setting this to a non-zero value will "
"result in the vehicle turning when it's moving. Wheels that have [member "
@@ -53937,25 +54776,29 @@ msgstr ""
msgid ""
"This node needs to be used as a child node of [VehicleBody3D] and simulates "
"the behavior of one of its wheels. This node also acts as a collider to "
-"detect if the wheel is touching a surface."
+"detect if the wheel is touching a surface.\n"
+"[b]Note:[/b] This class has known issues and isn't designed to provide "
+"realistic 3D vehicle physics. If you want advanced vehicle physics, you will "
+"probably have to write your own physics integration using another "
+"[PhysicsBody3D] class."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:16
+#: doc/classes/VehicleWheel3D.xml:17
msgid "Returns the rotational speed of the wheel in revolutions per minute."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:23
+#: doc/classes/VehicleWheel3D.xml:24
msgid ""
"Returns a value between 0.0 and 1.0 that indicates whether this wheel is "
"skidding. 0.0 is skidding (the wheel has lost grip, e.g. icy terrain), 1.0 "
"means not skidding (the wheel has full grip, e.g. dry asphalt road)."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:30
+#: doc/classes/VehicleWheel3D.xml:31
msgid "Returns [code]true[/code] if this wheel is in contact with a surface."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:36
+#: doc/classes/VehicleWheel3D.xml:37
msgid ""
"Slows down the wheel by applying a braking force. The wheel is only slowed "
"down if it is in contact with a surface. The force you need to apply to "
@@ -53964,7 +54807,7 @@ msgid ""
"- 30 range for hard braking."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:39
+#: doc/classes/VehicleWheel3D.xml:40
msgid ""
"The damping applied to the spring when the spring is being compressed. This "
"value should be between 0.0 (no damping) and 1.0. A value of 0.0 means the "
@@ -53972,7 +54815,7 @@ msgid ""
"is around 0.3 for a normal car, 0.5 for a race car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:42
+#: doc/classes/VehicleWheel3D.xml:43
msgid ""
"The damping applied to the spring when relaxing. This value should be "
"between 0.0 (no damping) and 1.0. This value should always be slightly "
@@ -53980,7 +54823,7 @@ msgid ""
"damping_compression] value of 0.3, try a relaxation value of 0.5."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:45
+#: doc/classes/VehicleWheel3D.xml:46
msgid ""
"Accelerates the wheel by applying an engine force. The wheel is only speed "
"up if it is in contact with a surface. The [member RigidBody3D.mass] of the "
@@ -53991,13 +54834,13 @@ msgid ""
"A negative value will result in the wheel reversing."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:50
+#: doc/classes/VehicleWheel3D.xml:51
msgid ""
"The steering angle for the wheel. Setting this to a non-zero value will "
"result in the vehicle turning when it's moving."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:53
+#: doc/classes/VehicleWheel3D.xml:54
msgid ""
"The maximum force the spring can resist. This value should be higher than a "
"quarter of the [member RigidBody3D.mass] of the [VehicleBody3D] or the "
@@ -54005,28 +54848,28 @@ msgid ""
"obtained by a value that is about 3× to 4× this number."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:56
+#: doc/classes/VehicleWheel3D.xml:57
msgid ""
"This value defines the stiffness of the suspension. Use a value lower than "
"50 for an off-road car, a value between 50 and 100 for a race car and try "
"something around 200 for something like a Formula 1 car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:59
+#: doc/classes/VehicleWheel3D.xml:60
msgid ""
"This is the distance the suspension can travel. As Godot units are "
"equivalent to meters, keep this setting relatively low. Try a value between "
"0.1 and 0.3 depending on the type of car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:62
+#: doc/classes/VehicleWheel3D.xml:63
msgid ""
"If [code]true[/code], this wheel will be turned when the car steers. This "
"value is used in conjunction with [member VehicleBody3D.steering] and "
"ignored if you are using the per-wheel [member steering] value instead."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:65
+#: doc/classes/VehicleWheel3D.xml:66
msgid ""
"If [code]true[/code], this wheel transfers engine force to the ground to "
"propel the vehicle forward. This value is used in conjunction with [member "
@@ -54034,7 +54877,7 @@ msgid ""
"[member engine_force] value instead."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:68
+#: doc/classes/VehicleWheel3D.xml:69
msgid ""
"This determines how much grip this wheel has. It is combined with the "
"friction setting of the surface the wheel is in contact with. 0.0 means no "
@@ -54044,11 +54887,11 @@ msgid ""
"It's best to set this to 1.0 when starting out."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:72
+#: doc/classes/VehicleWheel3D.xml:73
msgid "The radius of the wheel in meters."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:75
+#: doc/classes/VehicleWheel3D.xml:76
msgid ""
"This is the distance in meters the wheel is lowered from its origin point. "
"Don't set this to 0.0 and move the wheel into position, instead move the "
@@ -54057,7 +54900,7 @@ msgid ""
"down to the position it should be in when the car is in rest."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:78
+#: doc/classes/VehicleWheel3D.xml:79
msgid ""
"This value affects the roll of your vehicle. If set to 1.0 for all wheels, "
"your vehicle will be prone to rolling over, while a value of 0.0 will resist "
@@ -54535,7 +55378,7 @@ msgstr ""
#: doc/classes/Viewport.xml:318
msgid ""
"Use fast approximate antialiasing. FXAA is a popular screen-space "
-"antialising method, which is fast but will make the image look blurry, "
+"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."
msgstr ""
@@ -54588,24 +55431,24 @@ msgid ""
"your [WorldEnvironment]."
msgstr ""
-#: doc/classes/Viewport.xml:384
+#: doc/classes/Viewport.xml:381
msgid ""
"Colors each PSSM split for the [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, and yellow."
msgstr ""
-#: doc/classes/Viewport.xml:387
+#: doc/classes/Viewport.xml:384
msgid ""
"Draws the decal atlas used by [Decal]s and light projector textures in the "
"upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/Viewport.xml:402
+#: doc/classes/Viewport.xml:405
msgid "Max value for [enum DefaultCanvasItemTextureFilter] enum."
msgstr ""
-#: doc/classes/Viewport.xml:414
+#: doc/classes/Viewport.xml:417
msgid "Max value for [enum DefaultCanvasItemTextureRepeat] enum."
msgstr ""
@@ -54636,82 +55479,84 @@ msgid ""
"The VisibilityEnabler2D will disable [RigidBody2D], [AnimationPlayer], and "
"other nodes when they are not visible. It will only affect nodes with the "
"same root node as the VisibilityEnabler2D, and the root node itself.\n"
+"If you just want to receive notifications, use [VisibilityNotifier2D] "
+"instead.\n"
"[b]Note:[/b] For performance reasons, VisibilityEnabler2D uses an "
"approximate heuristic with precision determined by [member ProjectSettings."
-"world/2d/cell_size]. If you need exact visibility checking, use another "
+"world/2d/cell_size]. If you need precise visibility checking, use another "
"method such as adding an [Area2D] node as a child of a [Camera2D] node.\n"
"[b]Note:[/b] VisibilityEnabler2D will not affect nodes added after scene "
"initialization."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:20
-#: doc/classes/VisibilityEnabler3D.xml:20
+#: doc/classes/VisibilityEnabler2D.xml:21
+#: doc/classes/VisibilityEnabler3D.xml:21
msgid ""
"Returns whether the enabler identified by given [enum Enabler] constant is "
"active."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:31
-#: doc/classes/VisibilityEnabler3D.xml:31
+#: doc/classes/VisibilityEnabler2D.xml:32
+#: doc/classes/VisibilityEnabler3D.xml:32
msgid ""
"Sets active state of the enabler identified by given [enum Enabler] constant."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:37
+#: doc/classes/VisibilityEnabler2D.xml:38
msgid "If [code]true[/code], [RigidBody2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:40
+#: doc/classes/VisibilityEnabler2D.xml:41
msgid "If [code]true[/code], [AnimatedSprite2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:43
-#: doc/classes/VisibilityEnabler3D.xml:40
+#: doc/classes/VisibilityEnabler2D.xml:44
+#: doc/classes/VisibilityEnabler3D.xml:41
msgid "If [code]true[/code], [AnimationPlayer] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:46
+#: doc/classes/VisibilityEnabler2D.xml:47
msgid "If [code]true[/code], [GPUParticles2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:49
+#: doc/classes/VisibilityEnabler2D.xml:50
msgid ""
"If [code]true[/code], the parent's [method Node._physics_process] will be "
"stopped."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:52
+#: doc/classes/VisibilityEnabler2D.xml:53
msgid ""
"If [code]true[/code], the parent's [method Node._process] will be stopped."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:57
-#: doc/classes/VisibilityEnabler3D.xml:45
+#: doc/classes/VisibilityEnabler2D.xml:58
+#: doc/classes/VisibilityEnabler3D.xml:46
msgid "This enabler will pause [AnimationPlayer] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:60
+#: doc/classes/VisibilityEnabler2D.xml:61
msgid "This enabler will freeze [RigidBody2D] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:63
+#: doc/classes/VisibilityEnabler2D.xml:64
msgid "This enabler will stop [GPUParticles2D] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:66
+#: doc/classes/VisibilityEnabler2D.xml:67
msgid "This enabler will stop the parent's _process function."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:69
+#: doc/classes/VisibilityEnabler2D.xml:70
msgid "This enabler will stop the parent's _physics_process function."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:72
+#: doc/classes/VisibilityEnabler2D.xml:73
msgid "This enabler will stop [AnimatedSprite2D] nodes animations."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:75
-#: doc/classes/VisibilityEnabler3D.xml:51
+#: doc/classes/VisibilityEnabler2D.xml:76
+#: doc/classes/VisibilityEnabler3D.xml:52
msgid "Represents the size of the [enum Enabler] enum."
msgstr ""
@@ -54720,19 +55565,23 @@ msgid ""
"The VisibilityEnabler3D will disable [RigidBody3D] and [AnimationPlayer] "
"nodes when they are not visible. It will only affect other nodes within the "
"same scene as the VisibilityEnabler3D itself.\n"
+"If you just want to receive notifications, use [VisibilityNotifier3D] "
+"instead.\n"
"[b]Note:[/b] VisibilityEnabler3D uses an approximate heuristic for "
"performance reasons. It doesn't take walls and other occlusion into account. "
-"If you need exact visibility checking, use another method such as adding an "
-"[Area3D] node as a child of a [Camera3D] node.\n"
+"The heuristic is an implementation detail and may change in future versions. "
+"If you need precise visibility checking, use another method such as adding "
+"an [Area3D] node as a child of a [Camera3D] node and/or [method Vector3."
+"dot].\n"
"[b]Note:[/b] VisibilityEnabler3D will not affect nodes added after scene "
"initialization."
msgstr ""
-#: doc/classes/VisibilityEnabler3D.xml:37
+#: doc/classes/VisibilityEnabler3D.xml:38
msgid "If [code]true[/code], [RigidBody3D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler3D.xml:48
+#: doc/classes/VisibilityEnabler3D.xml:49
msgid "This enabler will freeze [RigidBody3D] nodes."
msgstr ""
@@ -54746,13 +55595,15 @@ msgid ""
"The VisibilityNotifier2D detects when it is visible on the screen. It also "
"notifies when its bounding rectangle enters or exits the screen or a "
"viewport.\n"
+"If you want nodes to be disabled automatically when they exit the screen, "
+"use [VisibilityEnabler2D] instead.\n"
"[b]Note:[/b] For performance reasons, VisibilityNotifier2D uses an "
"approximate heuristic with precision determined by [member ProjectSettings."
-"world/2d/cell_size]. If you need exact visibility checking, use another "
+"world/2d/cell_size]. If you need precise visibility checking, use another "
"method such as adding an [Area2D] node as a child of a [Camera2D] node."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:17
+#: doc/classes/VisibilityNotifier2D.xml:18
msgid ""
"If [code]true[/code], the bounding rectangle is on the screen.\n"
"[b]Note:[/b] It takes one frame for the node's visibility to be assessed "
@@ -54761,23 +55612,23 @@ msgid ""
"pass."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:24
+#: doc/classes/VisibilityNotifier2D.xml:25
msgid "The VisibilityNotifier2D's bounding rectangle."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:30
+#: doc/classes/VisibilityNotifier2D.xml:31
msgid "Emitted when the VisibilityNotifier2D enters the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:35
+#: doc/classes/VisibilityNotifier2D.xml:36
msgid "Emitted when the VisibilityNotifier2D exits the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:42
+#: doc/classes/VisibilityNotifier2D.xml:43
msgid "Emitted when the VisibilityNotifier2D enters a [Viewport]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:49
+#: doc/classes/VisibilityNotifier2D.xml:50
msgid "Emitted when the VisibilityNotifier2D exits a [Viewport]'s view."
msgstr ""
@@ -54786,13 +55637,16 @@ msgid ""
"The VisibilityNotifier3D detects when it is visible on the screen. It also "
"notifies when its bounding rectangle enters or exits the screen or a "
"[Camera3D]'s view.\n"
+"If you want nodes to be disabled automatically when they exit the screen, "
+"use [VisibilityEnabler3D] instead.\n"
"[b]Note:[/b] VisibilityNotifier3D uses an approximate heuristic for "
"performance reasons. It doesn't take walls and other occlusion into account. "
-"If you need exact visibility checking, use another method such as adding an "
-"[Area3D] node as a child of a [Camera3D] node."
+"The heuristic is an implementation detail and may change in future versions. "
+"If you need precise visibility checking, use another method such as adding "
+"an [Area3D] node as a child of a [Camera3D] node and/or [method Vector3.dot]."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:17
+#: doc/classes/VisibilityNotifier3D.xml:18
msgid ""
"If [code]true[/code], the bounding box is on the screen.\n"
"[b]Note:[/b] It takes one frame for the node's visibility to be assessed "
@@ -54801,23 +55655,23 @@ msgid ""
"pass."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:24
+#: doc/classes/VisibilityNotifier3D.xml:25
msgid "The VisibilityNotifier3D's bounding box."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:32
+#: doc/classes/VisibilityNotifier3D.xml:33
msgid "Emitted when the VisibilityNotifier3D enters a [Camera3D]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:39
+#: doc/classes/VisibilityNotifier3D.xml:40
msgid "Emitted when the VisibilityNotifier3D exits a [Camera3D]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:44
+#: doc/classes/VisibilityNotifier3D.xml:45
msgid "Emitted when the VisibilityNotifier3D enters the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:49
+#: doc/classes/VisibilityNotifier3D.xml:50
msgid "Emitted when the VisibilityNotifier3D exits the screen."
msgstr ""
@@ -55237,6 +56091,12 @@ msgid ""
"exist."
msgstr ""
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:90
+msgid ""
+"Easing function, based on exponent. 0 is constant, 1 is linear, 0 to 1 is "
+"ease-in, 1+ is ease out. Negative values are in-out/out in."
+msgstr ""
+
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:93
msgid ""
"Return the number of digit places after the decimal that the first non-zero "
@@ -56122,6 +56982,7 @@ msgid "A shader for light calculations."
msgstr ""
#: doc/classes/VisualShader.xml:214
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:26
msgid "Represents the size of the [enum Type] enum."
msgstr ""
@@ -56224,6 +57085,24 @@ msgstr ""
msgid "Translated to [code]uniform bool[/code] in the shader language."
msgstr ""
+#: doc/classes/VisualShaderNodeBooleanUniform.xml:15
+#: doc/classes/VisualShaderNodeColorUniform.xml:15
+#: doc/classes/VisualShaderNodeFloatUniform.xml:15
+#: doc/classes/VisualShaderNodeIntUniform.xml:15
+#: doc/classes/VisualShaderNodeTransformUniform.xml:15
+#: doc/classes/VisualShaderNodeVec3Uniform.xml:15
+msgid "A default value to be assigned within the shader."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeBooleanUniform.xml:18
+#: doc/classes/VisualShaderNodeColorUniform.xml:18
+#: doc/classes/VisualShaderNodeFloatUniform.xml:18
+#: doc/classes/VisualShaderNodeIntUniform.xml:18
+#: doc/classes/VisualShaderNodeTransformUniform.xml:18
+#: doc/classes/VisualShaderNodeVec3Uniform.xml:18
+msgid "Enables usage of the [member default_value]."
+msgstr ""
+
#: doc/classes/VisualShaderNodeColorConstant.xml:4
msgid "A [Color] constant to be used within the visual shader graph."
msgstr ""
@@ -57074,49 +57953,49 @@ msgstr ""
msgid "Translated to [code]uniform float[/code] in the shader language."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:15
-#: doc/classes/VisualShaderNodeIntUniform.xml:15
+#: doc/classes/VisualShaderNodeFloatUniform.xml:21
+#: doc/classes/VisualShaderNodeIntUniform.xml:21
msgid ""
"A hint applied to the uniform, which controls the values it can take when "
"set through the inspector."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:18
-#: doc/classes/VisualShaderNodeIntUniform.xml:18
+#: doc/classes/VisualShaderNodeFloatUniform.xml:24
+#: doc/classes/VisualShaderNodeIntUniform.xml:24
msgid ""
"Minimum value for range hints. Used if [member hint] is set to [constant "
"HINT_RANGE] or [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:21
-#: doc/classes/VisualShaderNodeIntUniform.xml:21
+#: doc/classes/VisualShaderNodeFloatUniform.xml:27
+#: doc/classes/VisualShaderNodeIntUniform.xml:27
msgid ""
"Maximum value for range hints. Used if [member hint] is set to [constant "
"HINT_RANGE] or [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:24
-#: doc/classes/VisualShaderNodeIntUniform.xml:24
+#: doc/classes/VisualShaderNodeFloatUniform.xml:30
+#: doc/classes/VisualShaderNodeIntUniform.xml:30
msgid ""
"Step (increment) value for the range hint with step. Used if [member hint] "
"is set to [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:29
-#: doc/classes/VisualShaderNodeIntUniform.xml:29
+#: doc/classes/VisualShaderNodeFloatUniform.xml:35
+#: doc/classes/VisualShaderNodeIntUniform.xml:35
msgid "No hint used."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:32
-#: doc/classes/VisualShaderNodeIntUniform.xml:32
+#: doc/classes/VisualShaderNodeFloatUniform.xml:38
+#: doc/classes/VisualShaderNodeIntUniform.xml:38
msgid ""
"A range hint for scalar value, which limits possible input values between "
"[member min] and [member max]. Translated to [code]hint_range(min, max)[/"
"code] in shader code."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:35
-#: doc/classes/VisualShaderNodeIntUniform.xml:35
+#: doc/classes/VisualShaderNodeFloatUniform.xml:41
+#: doc/classes/VisualShaderNodeIntUniform.xml:41
msgid ""
"A range hint for scalar value with step, which limits possible input values "
"between [member min] and [member max], with a step (increment) of [member "
@@ -57398,6 +58277,26 @@ msgid ""
"results, e.g. division by zero)."
msgstr ""
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:4
+msgid "Performs a fused multiply-add operation within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:7
+msgid "Uses three operands to compute [code](a * b + c)[/code] expression."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:15
+msgid "A type of operands and returned value."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:20
+msgid "A scalar type."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:23
+msgid "A vector type."
+msgstr ""
+
#: doc/classes/VisualShaderNodeOuterProduct.xml:4
msgid ""
"Calculates an outer product of two vectors within the visual shader graph."
@@ -57420,7 +58319,7 @@ msgstr ""
#: doc/classes/VisualShaderNodeOutput.xml:7
msgid ""
"This visual shader node is present in all shader graphs in form of \"Output"
-"\" block with mutliple output value ports."
+"\" block with multiple output value ports."
msgstr ""
#: doc/classes/VisualShaderNodeSample3D.xml:4
@@ -57784,6 +58683,20 @@ msgid ""
"[ShaderMaterial] properties."
msgstr ""
+#: doc/classes/VisualShaderNodeUniformRef.xml:4
+msgid "A reference to an existing [VisualShaderNodeUniform]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniformRef.xml:7
+msgid ""
+"Creating a reference to a [VisualShaderNodeUniform] allows you to reuse this "
+"uniform in different shaders or shader stages easily."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniformRef.xml:15
+msgid "The name of the uniform which this reference points to."
+msgstr ""
+
#: doc/classes/VisualShaderNodeVec3Constant.xml:4
msgid "A [Vector3] constant to be used within the visual shader graph."
msgstr ""
@@ -58114,7 +59027,7 @@ msgstr ""
msgid ""
"Translated to [code]refract(I, N, eta)[/code] in the shader language, where "
"[code]I[/code] is the incident vector, [code]N[/code] is the normal vector "
-"and [code]eta[/code] is the ratio of the indicies of the refraction."
+"and [code]eta[/code] is the ratio of the indices of the refraction."
msgstr ""
#: doc/classes/VisualShaderNodeVectorScalarMix.xml:4
diff --git a/doc/translations/tr.po b/doc/translations/tr.po
index d973b84dc6..0e5992ad0e 100644
--- a/doc/translations/tr.po
+++ b/doc/translations/tr.po
@@ -90,8 +90,8 @@ msgstr ""
#: modules/gdscript/doc_classes/@GDScript.xml:55
msgid ""
-"Returns the absolute value of parameter [code]s[/code] (i.e. unsigned value, "
-"works for integer and float).\n"
+"Returns the absolute value of parameter [code]s[/code] (i.e. positive "
+"value).\n"
"[codeblock]\n"
"# a is 1\n"
"a = abs(-1)\n"
@@ -146,7 +146,7 @@ msgid ""
"angle from an angle's tangent in trigonometry: [code]atan(tan(angle)) == "
"angle[/code].\n"
"The method cannot know in which quadrant the angle should fall. See [method "
-"atan2] if you always want an exact angle.\n"
+"atan2] if you have both [code]y[/code] and [code]x[/code].\n"
"[codeblock]\n"
"a = atan(0.5) # a is 0.463648\n"
"[/codeblock]"
@@ -157,12 +157,13 @@ msgid ""
"Returns the arc tangent of [code]y/x[/code] in radians. Use to get the angle "
"of tangent [code]y/x[/code]. To compute the value, the method takes into "
"account the sign of both arguments in order to determine the quadrant.\n"
+"Important note: The Y coordinate comes first, by convention.\n"
"[codeblock]\n"
"a = atan2(0, -1) # a is 3.141593\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:143
+#: modules/gdscript/doc_classes/@GDScript.xml:144
msgid ""
"Decodes a byte array back to a value. When [code]allow_objects[/code] is "
"[code]true[/code] decoding objects is allowed.\n"
@@ -171,7 +172,7 @@ msgid ""
"avoid potential security threats (remote code execution)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:155
+#: modules/gdscript/doc_classes/@GDScript.xml:156
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:145
msgid ""
"Converts a 2D point expressed in the cartesian coordinate system (X and Y "
@@ -179,17 +180,17 @@ msgid ""
"angle)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:164
+#: modules/gdscript/doc_classes/@GDScript.xml:165
msgid ""
-"Rounds [code]s[/code] upward, returning the smallest integral value that is "
-"not less than [code]s[/code].\n"
+"Rounds [code]s[/code] upward (towards positive infinity), returning the "
+"smallest whole number that is not less than [code]s[/code].\n"
"[codeblock]\n"
"i = ceil(1.45) # i is 2\n"
"i = ceil(1.001) # i is 2\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:177
+#: modules/gdscript/doc_classes/@GDScript.xml:178
msgid ""
"Returns a character as a String of the given Unicode code point (which is "
"compatible with ASCII code).\n"
@@ -201,7 +202,7 @@ msgid ""
"This is the inverse of [method ord]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:196
+#: modules/gdscript/doc_classes/@GDScript.xml:197
msgid ""
"Clamps [code]value[/code] and returns a value not less than [code]min[/code] "
"and not more than [code]max[/code].\n"
@@ -216,7 +217,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:216
+#: modules/gdscript/doc_classes/@GDScript.xml:217
msgid ""
"Converts from a type to another in the best way possible. The [code]type[/"
"code] parameter uses the [enum Variant.Type] values.\n"
@@ -230,7 +231,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:233
+#: modules/gdscript/doc_classes/@GDScript.xml:234
msgid ""
"Returns the cosine of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -240,7 +241,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:247
+#: modules/gdscript/doc_classes/@GDScript.xml:248
msgid ""
"Returns the hyperbolic cosine of [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -249,11 +250,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:260
+#: modules/gdscript/doc_classes/@GDScript.xml:261
msgid "Converts from decibels to linear energy (audio)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:273
+#: modules/gdscript/doc_classes/@GDScript.xml:274
msgid ""
"Returns the result of [code]value[/code] decreased by [code]step[/code] * "
"[code]amount[/code].\n"
@@ -263,42 +264,44 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:286
+#: modules/gdscript/doc_classes/@GDScript.xml:287
msgid ""
-"Returns degrees converted to radians.\n"
+"Converts an angle expressed in degrees to radians.\n"
"[codeblock]\n"
"# r is 3.141593\n"
"r = deg2rad(180)\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:299
+#: modules/gdscript/doc_classes/@GDScript.xml:300
msgid ""
"Converts a previously converted instance to a dictionary, back into an "
"instance. Useful for deserializing."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:310
-#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:90
+#: modules/gdscript/doc_classes/@GDScript.xml:311
msgid ""
-"Easing function, based on exponent. 0 is constant, 1 is linear, 0 to 1 is "
-"ease-in, 1+ is ease out. Negative values are in-out/out in."
+"Easing function, based on exponent. The curve values are: 0 is constant, 1 "
+"is linear, 0 to 1 is ease-in, 1+ is ease out. Negative values are in-out/out "
+"in."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:319
+#: modules/gdscript/doc_classes/@GDScript.xml:320
msgid ""
"The natural exponential function. It raises the mathematical constant [b]e[/"
"b] to the power of [code]s[/code] and returns it.\n"
-"[b]e[/b] has an approximate value of 2.71828.\n"
+"[b]e[/b] has an approximate value of 2.71828, and can be obtained with "
+"[code]exp(1)[/code].\n"
"For exponents to other bases use the method [method pow].\n"
"[codeblock]\n"
"a = exp(2) # Approximately 7.39\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:333
+#: modules/gdscript/doc_classes/@GDScript.xml:334
msgid ""
-"Rounds [code]s[/code] to the closest smaller integer and returns it.\n"
+"Rounds [code]s[/code] downward (towards negative infinity), returning the "
+"largest whole number that is not more than [code]s[/code].\n"
"[codeblock]\n"
"# a is 2.0\n"
"a = floor(2.99)\n"
@@ -309,7 +312,7 @@ msgid ""
"use [code]int(s)[/code] directly."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:351
+#: modules/gdscript/doc_classes/@GDScript.xml:352
msgid ""
"Returns the floating-point remainder of [code]a/b[/code], keeping the sign "
"of [code]a[/code].\n"
@@ -320,7 +323,7 @@ msgid ""
"For the integer remainder operation, use the % operator."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:367
+#: modules/gdscript/doc_classes/@GDScript.xml:368
msgid ""
"Returns the floating-point modulus of [code]a/b[/code] that wraps equally in "
"positive and negative.\n"
@@ -346,7 +349,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:398
+#: modules/gdscript/doc_classes/@GDScript.xml:399
msgid ""
"Returns a reference to the specified function [code]funcname[/code] in the "
"[code]instance[/code] node. As functions aren't first-class objects in "
@@ -361,7 +364,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:412
+#: modules/gdscript/doc_classes/@GDScript.xml:413
msgid ""
"Returns an array of dictionaries representing the current call stack.\n"
"[codeblock]\n"
@@ -381,7 +384,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:435
+#: modules/gdscript/doc_classes/@GDScript.xml:436
msgid ""
"Returns the integer hash of the variable passed.\n"
"[codeblock]\n"
@@ -389,7 +392,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:447
+#: modules/gdscript/doc_classes/@GDScript.xml:448
msgid ""
"Returns the passed instance converted to a dictionary (useful for "
"serializing).\n"
@@ -407,7 +410,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:468
+#: modules/gdscript/doc_classes/@GDScript.xml:469
msgid ""
"Returns the Object that corresponds to [code]instance_id[/code]. All Objects "
"have a unique instance ID.\n"
@@ -420,7 +423,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:488
+#: modules/gdscript/doc_classes/@GDScript.xml:489
msgid ""
"Returns a normalized value considering the given range. This is the opposite "
"of [method lerp].\n"
@@ -434,33 +437,41 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:506
+#: modules/gdscript/doc_classes/@GDScript.xml:507
msgid ""
"Returns [code]true[/code] if [code]a[/code] and [code]b[/code] are "
-"approximately equal to each other."
+"approximately equal to each other.\n"
+"Here, approximately equal means that [code]a[/code] and [code]b[/code] are "
+"within a small internal epsilon of each other, which scales with the "
+"magnitude of the numbers.\n"
+"Infinity values of the same sign are considered equal."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:515
+#: modules/gdscript/doc_classes/@GDScript.xml:518
msgid ""
"Returns whether [code]s[/code] is an infinity value (either positive "
"infinity or negative infinity)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:524
+#: modules/gdscript/doc_classes/@GDScript.xml:527
msgid ""
"Returns whether [code]instance[/code] is a valid object (e.g. has not been "
"deleted from memory)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:533
-msgid "Returns whether [code]s[/code] is a NaN (Not-A-Number) value."
+#: modules/gdscript/doc_classes/@GDScript.xml:536
+msgid ""
+"Returns whether [code]s[/code] is a NaN (\"Not a Number\" or invalid) value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:542
-msgid "Returns [code]true[/code] if [code]s[/code] is zero or almost zero."
+#: modules/gdscript/doc_classes/@GDScript.xml:545
+msgid ""
+"Returns [code]true[/code] if [code]s[/code] is zero or almost zero.\n"
+"This method is faster than using [method is_equal_approx] with one value as "
+"zero."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:551
+#: modules/gdscript/doc_classes/@GDScript.xml:555
msgid ""
"Returns length of Variant [code]var[/code]. Length is the character count of "
"String, element count of Array, size of Dictionary, etc.\n"
@@ -471,7 +482,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:569
+#: modules/gdscript/doc_classes/@GDScript.xml:573
msgid ""
"Linearly interpolates between two values by a normalized value. This is the "
"opposite of [method inverse_lerp].\n"
@@ -486,7 +497,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:588
+#: modules/gdscript/doc_classes/@GDScript.xml:592
msgid ""
"Linearly interpolates between two angles (in radians) by a normalized "
"value.\n"
@@ -503,7 +514,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:607
+#: modules/gdscript/doc_classes/@GDScript.xml:611
msgid ""
"Converts from linear energy to decibels (audio). This can be used to "
"implement volume sliders that behave as expected (since volume isn't "
@@ -519,20 +530,28 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:622
+#: modules/gdscript/doc_classes/@GDScript.xml:626
msgid ""
-"Loads a resource from the filesystem located at [code]path[/code].\n"
+"Loads a resource from the filesystem located at [code]path[/code]. The "
+"resource is loaded on the method call (unless it's referenced already "
+"elsewhere, e.g. in another script or in the scene), which might cause slight "
+"delay, especially when loading scenes. To avoid unnecessary delays when "
+"loading something multiple times, either store the resource in a variable or "
+"use [method preload].\n"
"[b]Note:[/b] Resource paths can be obtained by right-clicking on a resource "
-"in the FileSystem dock and choosing [b]Copy Path[/b].\n"
+"in the FileSystem dock and choosing \"Copy Path\" or by dragging the file "
+"from the FileSystem dock into the script.\n"
"[codeblock]\n"
-"# Load a scene called main located in the root of the project directory.\n"
-"var main = load(\"res://main.tscn\")\n"
+"# Load a scene called main located in the root of the project directory and "
+"cache it in a variable.\n"
+"var main = load(\"res://main.tscn\") # main will contain a PackedScene "
+"resource.\n"
"[/codeblock]\n"
"[b]Important:[/b] The path must be absolute, a local path will just return "
"[code]null[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:637
+#: modules/gdscript/doc_classes/@GDScript.xml:641
msgid ""
"Natural logarithm. The amount of time needed to reach a certain level of "
"continuous growth.\n"
@@ -540,10 +559,12 @@ msgid ""
"calculators, which uses a base 10 logarithm.\n"
"[codeblock]\n"
"log(10) # Returns 2.302585\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] The logarithm of [code]0[/code] returns [code]-inf[/code], "
+"while negative values return [code]-nan[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:652
+#: modules/gdscript/doc_classes/@GDScript.xml:657
msgid ""
"Returns the maximum of two values.\n"
"[codeblock]\n"
@@ -552,7 +573,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:667
+#: modules/gdscript/doc_classes/@GDScript.xml:672
msgid ""
"Returns the minimum of two values.\n"
"[codeblock]\n"
@@ -561,27 +582,39 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:684
+#: modules/gdscript/doc_classes/@GDScript.xml:689
msgid ""
"Moves [code]from[/code] toward [code]to[/code] by the [code]delta[/code] "
"value.\n"
"Use a negative [code]delta[/code] value to move away.\n"
"[codeblock]\n"
+"move_toward(5, 10, 4) # Returns 9\n"
"move_toward(10, 5, 4) # Returns 6\n"
+"move_toward(10, 5, -1.5) # Returns 11.5\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:697
+#: modules/gdscript/doc_classes/@GDScript.xml:704
msgid ""
-"Returns the nearest larger power of 2 for integer [code]value[/code].\n"
+"Returns the nearest equal or larger power of 2 for integer [code]value[/"
+"code].\n"
+"In other words, returns the smallest value [code]a[/code] where [code]a = "
+"pow(2, n)[/code] such that [code]value <= a[/code] for some non-negative "
+"integer [code]n[/code].\n"
"[codeblock]\n"
"nearest_po2(3) # Returns 4\n"
"nearest_po2(4) # Returns 4\n"
"nearest_po2(5) # Returns 8\n"
-"[/codeblock]"
+"\n"
+"nearest_po2(0) # Returns 0 (this may not be what you expect)\n"
+"nearest_po2(-1) # Returns 0 (this may not be what you expect)\n"
+"[/codeblock]\n"
+"[b]WARNING:[/b] Due to the way it is implemented, this function returns "
+"[code]0[/code] rather than [code]1[/code] for non-positive values of "
+"[code]value[/code] (in reality, 1 is the smallest integer power of 2)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:711
+#: modules/gdscript/doc_classes/@GDScript.xml:723
msgid ""
"Returns an integer representing the Unicode code point of the given Unicode "
"character [code]char[/code].\n"
@@ -593,27 +626,28 @@ msgid ""
"This is the inverse of [method char]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:726
+#: modules/gdscript/doc_classes/@GDScript.xml:738
msgid ""
-"Parse JSON text to a Variant (use [method typeof] to check if it is what you "
-"expect).\n"
-"Be aware that the JSON specification does not define integer or float types, "
-"but only a number type. Therefore, parsing a JSON text will convert all "
-"numerical values to [float] types.\n"
-"Note that JSON objects do not preserve key order like Godot dictionaries, "
-"thus you should not rely on keys being in a certain order if a dictionary is "
-"constructed from JSON. In contrast, JSON arrays retain the order of their "
+"Parse JSON text to a Variant. (Use [method typeof] to check if the Variant's "
+"type is what you expect.)\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, parsing a JSON text will convert "
+"all numerical values to [float] types.\n"
+"[b]Note:[/b] JSON objects do not preserve key order like Godot dictionaries, "
+"thus, you should not rely on keys being in a certain order if a dictionary "
+"is constructed from JSON. In contrast, JSON arrays retain the order of their "
"elements:\n"
"[codeblock]\n"
-"p = parse_json('[\"a\", \"b\", \"c\"]')\n"
-"if typeof(p) == TYPE_ARRAY:\n"
-" print(p[0]) # Prints a\n"
+"var p = JSON.parse('[\"hello\", \"world\", \"!\"]')\n"
+"if typeof(p.result) == TYPE_ARRAY:\n"
+" print(p.result[0]) # Prints \"hello\"\n"
"else:\n"
-" print(\"unexpected results\")\n"
-"[/codeblock]"
+" push_error(\"Unexpected results.\")\n"
+"[/codeblock]\n"
+"See also [JSON] for an alternative way to parse JSON text."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:746
+#: modules/gdscript/doc_classes/@GDScript.xml:759
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:142
msgid ""
"Converts a 2D point expressed in the polar coordinate system (a distance "
@@ -621,7 +655,7 @@ msgid ""
"cartesian coordinate system (X and Y axis)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:757
+#: modules/gdscript/doc_classes/@GDScript.xml:770
msgid ""
"Returns the integer modulus of [code]a/b[/code] that wraps equally in "
"positive and negative.\n"
@@ -647,7 +681,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:788
+#: modules/gdscript/doc_classes/@GDScript.xml:801
msgid ""
"Returns the result of [code]x[/code] raised to the power of [code]y[/code].\n"
"[codeblock]\n"
@@ -655,19 +689,23 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:800
+#: modules/gdscript/doc_classes/@GDScript.xml:813
msgid ""
-"Returns a resource from the filesystem that is loaded during script "
-"parsing.\n"
+"Returns a [Resource] from the filesystem located at [code]path[/code]. The "
+"resource is loaded during script parsing, i.e. is loaded with the script and "
+"[method preload] effectively acts as a reference to that resource. Note that "
+"the method requires a constant path. If you want to load a resource from a "
+"dynamic/variable path, use [method load].\n"
"[b]Note:[/b] Resource paths can be obtained by right clicking on a resource "
-"in the Assets Panel and choosing \"Copy Path\".\n"
+"in the Assets Panel and choosing \"Copy Path\" or by dragging the file from "
+"the FileSystem dock into the script.\n"
"[codeblock]\n"
-"# Load a scene called main located in the root of the project directory.\n"
-"var main = preload(\"res://main.tscn\")\n"
+"# Instance a scene.\n"
+"var diamond = preload(\"res://diamond.tscn\").instance()\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:812
+#: modules/gdscript/doc_classes/@GDScript.xml:825
msgid ""
"Converts one or more arguments to strings in the best way possible and "
"prints them to the console.\n"
@@ -677,11 +715,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:823
+#: modules/gdscript/doc_classes/@GDScript.xml:836
msgid "Like [method print], but prints only when used in debug mode."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:830
+#: modules/gdscript/doc_classes/@GDScript.xml:843
msgid ""
"Prints a stack track at code location, only works when running with debugger "
"turned on.\n"
@@ -691,7 +729,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:841
+#: modules/gdscript/doc_classes/@GDScript.xml:854
msgid ""
"Prints one or more arguments to strings in the best way possible to standard "
"error line.\n"
@@ -700,7 +738,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:851
+#: modules/gdscript/doc_classes/@GDScript.xml:864
msgid ""
"Prints one or more arguments to strings in the best way possible to console. "
"No newline is added at the end.\n"
@@ -714,7 +752,7 @@ msgid ""
"method, such as [method print]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:864
+#: modules/gdscript/doc_classes/@GDScript.xml:877
msgid ""
"Prints one or more arguments to the console with a space between each "
"argument.\n"
@@ -723,7 +761,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:874
+#: modules/gdscript/doc_classes/@GDScript.xml:887
msgid ""
"Prints one or more arguments to the console with a tab between each "
"argument.\n"
@@ -732,7 +770,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:886
+#: modules/gdscript/doc_classes/@GDScript.xml:899
msgid ""
"Pushes an error message to Godot's built-in debugger and to the OS "
"terminal.\n"
@@ -742,7 +780,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:898
+#: modules/gdscript/doc_classes/@GDScript.xml:911
msgid ""
"Pushes a warning message to Godot's built-in debugger and to the OS "
"terminal.\n"
@@ -752,15 +790,15 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:910
+#: modules/gdscript/doc_classes/@GDScript.xml:923
msgid ""
-"Converts from radians to degrees.\n"
+"Converts an angle expressed in radians to degrees.\n"
"[codeblock]\n"
"rad2deg(0.523599) # Returns 30\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:924
+#: modules/gdscript/doc_classes/@GDScript.xml:937
msgid ""
"Random range, any floating point value between [code]from[/code] and "
"[code]to[/code].\n"
@@ -769,7 +807,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:936
+#: modules/gdscript/doc_classes/@GDScript.xml:949
msgid ""
"Random from seed: pass a [code]seed[/code], and an array with both number "
"and new seed is returned. \"Seed\" here refers to the internal state of the "
@@ -777,7 +815,7 @@ msgid ""
"implementation is 64 bits."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:943
+#: modules/gdscript/doc_classes/@GDScript.xml:956
msgid ""
"Returns a random floating point value on the interval [code][0, 1][/code].\n"
"[codeblock]\n"
@@ -785,7 +823,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:953
+#: modules/gdscript/doc_classes/@GDScript.xml:966
msgid ""
"Returns a random unsigned 32 bit integer. Use remainder to obtain a random "
"value in the interval [code][0, N - 1][/code] (where N is smaller than "
@@ -798,7 +836,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:966
+#: modules/gdscript/doc_classes/@GDScript.xml:979
msgid ""
"Randomizes the seed (or the internal state) of the random number generator. "
"Current implementation reseeds using a number based on time.\n"
@@ -808,7 +846,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:977
+#: modules/gdscript/doc_classes/@GDScript.xml:990
msgid ""
"Returns an array with the given range. Range can be 1 argument N (0 to N-1), "
"two arguments (initial, final-1) or three arguments (initial, final-1, "
@@ -838,7 +876,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1017
+#: modules/gdscript/doc_classes/@GDScript.xml:1030
msgid ""
"Maps a [code]value[/code] from range [code][istart, istop][/code] to [code]"
"[ostart, ostop][/code].\n"
@@ -847,16 +885,16 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1029
+#: modules/gdscript/doc_classes/@GDScript.xml:1042
msgid ""
-"Returns the integral value that is nearest to [code]s[/code], with halfway "
-"cases rounded away from zero.\n"
+"Rounds [code]s[/code] to the nearest whole number, with halfway cases "
+"rounded away from zero.\n"
"[codeblock]\n"
"round(2.6) # Returns 3\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1041
+#: modules/gdscript/doc_classes/@GDScript.xml:1054
msgid ""
"Sets seed for the random number generator.\n"
"[codeblock]\n"
@@ -865,7 +903,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1054
+#: modules/gdscript/doc_classes/@GDScript.xml:1067
msgid ""
"Returns the sign of [code]s[/code]: -1 or 1. Returns 0 if [code]s[/code] is "
"0.\n"
@@ -876,7 +914,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1068
+#: modules/gdscript/doc_classes/@GDScript.xml:1081
msgid ""
"Returns the sine of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -884,7 +922,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1080
+#: modules/gdscript/doc_classes/@GDScript.xml:1093
msgid ""
"Returns the hyperbolic sine of [code]s[/code].\n"
"[codeblock]\n"
@@ -893,27 +931,37 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1097
+#: modules/gdscript/doc_classes/@GDScript.xml:1110
msgid ""
-"Returns a number smoothly interpolated between the [code]from[/code] and "
-"[code]to[/code], based on the [code]weight[/code]. Similar to [method lerp], "
-"but interpolates faster at the beginning and slower at the end.\n"
+"Returns the result of smoothly interpolating the value of [code]s[/code] "
+"between [code]0[/code] and [code]1[/code], based on the where [code]s[/code] "
+"lies with respect to the edges [code]from[/code] and [code]to[/code].\n"
+"The return value is [code]0[/code] if [code]s <= from[/code], and [code]1[/"
+"code] if [code]s >= to[/code]. If [code]s[/code] lies between [code]from[/"
+"code] and [code]to[/code], the returned value follows an S-shaped curve that "
+"maps [code]s[/code] between [code]0[/code] and [code]1[/code].\n"
+"This S-shaped curve is the cubic Hermite interpolator, given by [code]f(s) = "
+"3*s^2 - 2*s^3[/code].\n"
"[codeblock]\n"
-"smoothstep(0, 2, 0.5) # Returns 0.15\n"
+"smoothstep(0, 2, -5.0) # Returns 0.0\n"
+"smoothstep(0, 2, 0.5) # Returns 0.15625\n"
"smoothstep(0, 2, 1.0) # Returns 0.5\n"
"smoothstep(0, 2, 2.0) # Returns 1.0\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1111
+#: modules/gdscript/doc_classes/@GDScript.xml:1127
msgid ""
-"Returns the square root of [code]s[/code].\n"
+"Returns the square root of [code]s[/code], where [code]s[/code] is a non-"
+"negative number.\n"
"[codeblock]\n"
"sqrt(9) # Returns 3\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b]Negative values of [code]s[/code] return NaN. If you need "
+"negative inputs, use [code]System.Numerics.Complex[/code] in C#."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1123
+#: modules/gdscript/doc_classes/@GDScript.xml:1140
msgid ""
"Returns the position of the first non-zero digit, after the decimal point. "
"Note that the maximum return value is 10, which is a design decision in the "
@@ -928,7 +976,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1142
+#: modules/gdscript/doc_classes/@GDScript.xml:1159
msgid ""
"Snaps float value [code]s[/code] to a given [code]step[/code]. This can also "
"be used to round a floating point number to an arbitrary number of "
@@ -939,7 +987,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1153
+#: modules/gdscript/doc_classes/@GDScript.xml:1170
msgid ""
"Converts one or more arguments to string in the best way possible.\n"
"[codeblock]\n"
@@ -950,7 +998,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1168
+#: modules/gdscript/doc_classes/@GDScript.xml:1185
msgid ""
"Converts a formatted string that was returned by [method var2str] to the "
"original value.\n"
@@ -961,7 +1009,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1182
+#: modules/gdscript/doc_classes/@GDScript.xml:1199
msgid ""
"Returns the tangent of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -969,7 +1017,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1194
+#: modules/gdscript/doc_classes/@GDScript.xml:1211
msgid ""
"Returns the hyperbolic tangent of [code]s[/code].\n"
"[codeblock]\n"
@@ -978,18 +1026,25 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1207
+#: modules/gdscript/doc_classes/@GDScript.xml:1224
msgid ""
-"Converts a Variant [code]var[/code] to JSON text and return the result. "
+"Converts a [Variant] [code]var[/code] to JSON text and return the result. "
"Useful for serializing data to store or send over the network.\n"
"[codeblock]\n"
+"# Both numbers below are integers.\n"
"a = { \"a\": 1, \"b\": 2 }\n"
"b = to_json(a)\n"
"print(b) # {\"a\":1, \"b\":2}\n"
-"[/codeblock]"
+"# Both numbers above are floats, even if they display without any decimal "
+"places.\n"
+"[/codeblock]\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, converting a [Variant] to JSON "
+"text will convert all numerical values to [float] types.\n"
+"See also [JSON] for an alternative way to convert a [Variant] to JSON text."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1221
+#: modules/gdscript/doc_classes/@GDScript.xml:1242
msgid ""
"Returns whether the given class exists in [ClassDB].\n"
"[codeblock]\n"
@@ -998,7 +1053,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1234
+#: modules/gdscript/doc_classes/@GDScript.xml:1255
msgid ""
"Returns the internal type of the given Variant object, using the [enum "
"Variant.Type] values.\n"
@@ -1011,7 +1066,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1250
+#: modules/gdscript/doc_classes/@GDScript.xml:1271
msgid ""
"Checks that [code]json[/code] is valid JSON data. Returns an empty string if "
"valid, or an error message otherwise.\n"
@@ -1019,20 +1074,20 @@ msgid ""
"j = to_json([1, 2, 3])\n"
"v = validate_json(j)\n"
"if not v:\n"
-" print(\"valid\")\n"
+" print(\"Valid JSON.\")\n"
"else:\n"
-" prints(\"invalid\", v)\n"
+" push_error(\"Invalid JSON: \" + v)\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1269
+#: modules/gdscript/doc_classes/@GDScript.xml:1290
msgid ""
"Encodes a variable value to a byte array. When [code]full_objects[/code] is "
"[code]true[/code] encoding objects is allowed (and can potentially include "
"code)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1278
+#: modules/gdscript/doc_classes/@GDScript.xml:1299
msgid ""
"Converts a Variant [code]var[/code] to a formatted string that can later be "
"parsed using [method str2var].\n"
@@ -1049,7 +1104,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1298
+#: modules/gdscript/doc_classes/@GDScript.xml:1319
msgid ""
"Returns a weak reference to an object.\n"
"A weak reference to an object is not enough to keep the object alive: when "
@@ -1059,135 +1114,67 @@ msgid ""
"reference may return the object even if there are no strong references to it."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1312
+#: modules/gdscript/doc_classes/@GDScript.xml:1333
msgid ""
"Wraps float [code]value[/code] between [code]min[/code] and [code]max[/"
"code].\n"
"Usable for creating loop-alike behavior or infinite surfaces.\n"
"[codeblock]\n"
-"# a is 0.5\n"
-"a = wrapf(10.5, 0.0, 10.0)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# a is 9.5\n"
-"a = wrapf(-0.5, 0.0, 10.0)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# Infinite loop between 0.0 and 0.99\n"
-"f = wrapf(f + 0.1, 0.0, 1.0)\n"
+"# Infinite loop between 5.0 and 9.9\n"
+"value = wrapf(value + 0.1, 5.0, 10.0)\n"
"[/codeblock]\n"
"[codeblock]\n"
"# Infinite rotation (in radians)\n"
"angle = wrapf(angle + 0.1, 0.0, TAU)\n"
"[/codeblock]\n"
-"[b]Note:[/b] If you just want to wrap between 0.0 and [code]n[/code] (where "
-"[code]n[/code] is a positive floating-point value), it is better for "
-"performance to use the [method fmod] method like [code]fmod(number, n)[/"
-"code].\n"
-"[code]wrapf[/code] is more flexible than using the [method fmod] approach by "
-"giving the user a simple control over the minimum value. It also fully "
-"supports negative numbers, e.g.\n"
"[codeblock]\n"
"# Infinite rotation (in radians)\n"
"angle = wrapf(angle + 0.1, -PI, PI)\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] If [code]min[/code] is [code]0[/code], this is equivalent to "
+"[method fposmod], so prefer using that instead.\n"
+"[code]wrapf[/code] is more flexible than using the [method fposmod] approach "
+"by giving the user control over the minimum value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1348
+#: modules/gdscript/doc_classes/@GDScript.xml:1361
msgid ""
"Wraps integer [code]value[/code] between [code]min[/code] and [code]max[/"
"code].\n"
"Usable for creating loop-alike behavior or infinite surfaces.\n"
"[codeblock]\n"
-"# a is 0\n"
-"a = wrapi(10, 0, 10)\n"
+"# Infinite loop between 5 and 9\n"
+"frame = wrapi(frame + 1, 5, 10)\n"
"[/codeblock]\n"
"[codeblock]\n"
-"# a is 9\n"
-"a = wrapi(-1, 0, 10)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# Infinite loop between 0 and 9\n"
-"frame = wrapi(frame + 1, 0, 10)\n"
-"[/codeblock]\n"
-"[b]Note:[/b] If you just want to wrap between 0 and [code]n[/code] (where "
-"[code]n[/code] is a positive integer value), it is better for performance to "
-"use the modulo operator like [code]number % n[/code].\n"
-"[code]wrapi[/code] is more flexible than using the modulo approach by giving "
-"the user a simple control over the minimum value. It also fully supports "
-"negative numbers, e.g.\n"
-"[codeblock]\n"
"# result is -2\n"
"var result = wrapi(-6, -5, -1)\n"
-"[/codeblock]"
-msgstr ""
-
-#: modules/gdscript/doc_classes/@GDScript.xml:1378
-msgid ""
-"Stops the function execution and returns the current suspended state to the "
-"calling function.\n"
-"From the caller, call [method GDScriptFunctionState.resume] on the state to "
-"resume execution. This invalidates the state. Within the resumed function, "
-"[code]yield()[/code] returns whatever was passed to the [code]resume()[/"
-"code] function call.\n"
-"If passed an object and a signal, the execution is resumed when the object "
-"emits the given signal. In this case, [code]yield()[/code] returns the "
-"argument passed to [code]emit_signal()[/code] if the signal takes only one "
-"argument, or an array containing all the arguments passed to "
-"[code]emit_signal()[/code] if the signal takes multiple arguments.\n"
-"You can also use [code]yield[/code] to wait for a function to finish:\n"
-"[codeblock]\n"
-"func _ready():\n"
-" yield(countdown(), \"completed\") # waiting for the countdown() function "
-"to complete\n"
-" print('Ready')\n"
-"\n"
-"func countdown():\n"
-" yield(get_tree(), \"idle_frame\") # returns a GDScriptFunctionState "
-"object to _ready()\n"
-" print(3)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-" print(2)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-" print(1)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-"\n"
-"# prints:\n"
-"# 3\n"
-"# 2\n"
-"# 1\n"
-"# Ready\n"
"[/codeblock]\n"
-"When yielding on a function, the [code]completed[/code] signal will be "
-"emitted automatically when the function returns. It can, therefore, be used "
-"as the [code]signal[/code] parameter of the [code]yield[/code] method to "
-"resume.\n"
-"In order to yield on a function, the resulting function should also return a "
-"[code]GDScriptFunctionState[/code]. Notice [code]yield(get_tree(), "
-"\"idle_frame\")[/code] from the above example."
+"[b]Note:[/b] If [code]min[/code] is [code]0[/code], this is equivalent to "
+"[method posmod], so prefer using that instead.\n"
+"[code]wrapi[/code] is more flexible than using the [method posmod] approach "
+"by giving the user control over the minimum value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1409
+#: modules/gdscript/doc_classes/@GDScript.xml:1378
msgid ""
"Constant that represents how many times the diameter of a circle fits around "
-"its perimeter."
+"its perimeter. This is equivalent to [code]TAU / 2[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1412
-msgid "The circle constant, the circumference of the unit circle."
+#: modules/gdscript/doc_classes/@GDScript.xml:1381
+msgid "The circle constant, the circumference of the unit circle in radians."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1415
-msgid "A positive infinity. (For negative infinity, use -INF)."
+#: modules/gdscript/doc_classes/@GDScript.xml:1384
+msgid "Positive infinity. For negative infinity, use -INF."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1418
+#: modules/gdscript/doc_classes/@GDScript.xml:1387
msgid ""
-"Macro constant that expands to an expression of type float that represents a "
-"NaN.\n"
-"The NaN values are used to identify undefined or non-representable values "
-"for floating-point elements, such as the square root of negative numbers or "
-"the result of 0/0."
+"\"Not a Number\", an invalid value. [code]NaN[/code] has special properties, "
+"including that it is not equal to itself. It is output by some invalid "
+"operations, such as dividing zero by zero."
msgstr ""
#: doc/classes/@GlobalScope.xml:4
@@ -3423,130 +3410,141 @@ msgid ""
msgstr ""
#: doc/classes/AABB.xml:10 doc/classes/Plane.xml:10 doc/classes/Rect2.xml:11
-#: doc/classes/Rect2i.xml:11 doc/classes/Transform.xml:10
+#: doc/classes/Rect2i.xml:11 doc/classes/Transform.xml:11
#: doc/classes/Vector2.xml:12 doc/classes/Vector2i.xml:12
#: doc/classes/Vector3.xml:12 doc/classes/Vector3i.xml:12
msgid "https://docs.godotengine.org/en/latest/tutorials/math/index.html"
msgstr ""
#: doc/classes/AABB.xml:21
-msgid "Optional constructor, accepts position and size."
+msgid "Constructs an [AABB] from a position and size."
msgstr ""
-#: doc/classes/AABB.xml:30
+#: doc/classes/AABB.xml:28
+msgid ""
+"Returns an AABB with equivalent position and size, modified so that the most-"
+"negative corner is the origin and the size is positive."
+msgstr ""
+
+#: doc/classes/AABB.xml:37
msgid ""
"Returns [code]true[/code] if this [AABB] completely encloses another one."
msgstr ""
-#: doc/classes/AABB.xml:39
+#: doc/classes/AABB.xml:46
msgid "Returns this [AABB] expanded to include a given point."
msgstr ""
-#: doc/classes/AABB.xml:46
+#: doc/classes/AABB.xml:53
msgid "Returns the volume of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:55
+#: doc/classes/AABB.xml:62
msgid "Gets the position of the 8 endpoints of the [AABB] in space."
msgstr ""
-#: doc/classes/AABB.xml:62
+#: doc/classes/AABB.xml:69
msgid "Returns the normalized longest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:69
+#: doc/classes/AABB.xml:76
msgid ""
"Returns the index of the longest axis of the [AABB] (according to "
"[Vector3]'s [code]AXIS_*[/code] constants)."
msgstr ""
-#: doc/classes/AABB.xml:76
+#: doc/classes/AABB.xml:83
msgid "Returns the scalar length of the longest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:83
+#: doc/classes/AABB.xml:90
msgid "Returns the normalized shortest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:90
+#: doc/classes/AABB.xml:97
msgid ""
"Returns the index of the shortest axis of the [AABB] (according to "
"[Vector3]::AXIS* enum)."
msgstr ""
-#: doc/classes/AABB.xml:97
+#: doc/classes/AABB.xml:104
msgid "Returns the scalar length of the shortest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:106
+#: doc/classes/AABB.xml:113
msgid ""
"Returns the support point in a given direction. This is useful for collision "
"detection algorithms."
msgstr ""
-#: doc/classes/AABB.xml:115
+#: doc/classes/AABB.xml:122
msgid ""
"Returns a copy of the [AABB] grown a given amount of units towards all the "
"sides."
msgstr ""
-#: doc/classes/AABB.xml:122
+#: doc/classes/AABB.xml:129
msgid "Returns [code]true[/code] if the [AABB] is flat or empty."
msgstr ""
-#: doc/classes/AABB.xml:129
+#: doc/classes/AABB.xml:136
msgid "Returns [code]true[/code] if the [AABB] is empty."
msgstr ""
-#: doc/classes/AABB.xml:138
+#: doc/classes/AABB.xml:145
msgid "Returns [code]true[/code] if the [AABB] contains a point."
msgstr ""
-#: doc/classes/AABB.xml:147
+#: doc/classes/AABB.xml:154
msgid ""
"Returns the intersection between two [AABB]. An empty AABB (size 0,0,0) is "
"returned on failure."
msgstr ""
-#: doc/classes/AABB.xml:156
+#: doc/classes/AABB.xml:163
msgid "Returns [code]true[/code] if the [AABB] overlaps with another."
msgstr ""
-#: doc/classes/AABB.xml:165
+#: doc/classes/AABB.xml:172
msgid "Returns [code]true[/code] if the [AABB] is on both sides of a plane."
msgstr ""
-#: doc/classes/AABB.xml:176
+#: doc/classes/AABB.xml:183
msgid ""
"Returns [code]true[/code] if the [AABB] intersects the line segment between "
"[code]from[/code] and [code]to[/code]."
msgstr ""
-#: doc/classes/AABB.xml:185
+#: doc/classes/AABB.xml:192
msgid ""
"Returns [code]true[/code] if this [AABB] and [code]aabb[/code] are "
"approximately equal, by calling [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/AABB.xml:194
+#: doc/classes/AABB.xml:201
msgid ""
"Returns a larger [AABB] that contains both this [AABB] and [code]with[/code]."
msgstr ""
-#: doc/classes/AABB.xml:200
+#: doc/classes/AABB.xml:207 doc/classes/Rect2.xml:174
+#: doc/classes/Rect2i.xml:163
msgid ""
-"Ending corner. This is calculated as [code]position + size[/code]. Changing "
-"this property changes [member size] accordingly."
+"Ending corner. This is calculated as [code]position + size[/code]. Setting "
+"this value will change the size."
msgstr ""
-#: doc/classes/AABB.xml:203
-msgid "Beginning corner."
+#: doc/classes/AABB.xml:210 doc/classes/Rect2.xml:177
+#: doc/classes/Rect2i.xml:166
+msgid "Beginning corner. Typically has values lower than [member end]."
msgstr ""
-#: doc/classes/AABB.xml:206 doc/classes/Rect2.xml:180
+#: doc/classes/AABB.xml:213 doc/classes/Rect2.xml:180
#: doc/classes/Rect2i.xml:169
-msgid "Size from position to end."
+msgid ""
+"Size from [member position] to [member end]. Typically all components are "
+"positive.\n"
+"If the size is negative, you can use [method abs] to fix it."
msgstr ""
#: doc/classes/AcceptDialog.xml:4
@@ -3610,11 +3608,11 @@ msgstr ""
msgid "The text displayed by the dialog."
msgstr ""
-#: doc/classes/AcceptDialog.xml:82
+#: doc/classes/AcceptDialog.xml:83
msgid "Emitted when the dialog is accepted, i.e. the OK button is pressed."
msgstr ""
-#: doc/classes/AcceptDialog.xml:89
+#: doc/classes/AcceptDialog.xml:90
msgid "Emitted when a custom button is pressed. See [method add_button]."
msgstr ""
@@ -3667,7 +3665,7 @@ msgstr ""
#: doc/classes/AESContext.xml:54
msgid ""
"Get the current IV state for this context (IV gets updated when calling "
-"[method update]). You normally don't need this funciton.\n"
+"[method update]). You normally don't need this function.\n"
"Note: This function only makes sense when the context is started with "
"[constant MODE_CBC_ENCRYPT] or [constant MODE_CBC_DECRYPT]."
msgstr ""
@@ -3745,12 +3743,14 @@ msgid "If [code]true[/code], texture will be centered."
msgstr ""
#: doc/classes/AnimatedSprite2D.xml:46 doc/classes/Sprite2D.xml:41
-#: doc/classes/SpriteBase3D.xml:61 doc/classes/TextureRect.xml:18
+#: doc/classes/SpriteBase3D.xml:61 doc/classes/TextureButton.xml:19
+#: doc/classes/TextureRect.xml:18
msgid "If [code]true[/code], texture is flipped horizontally."
msgstr ""
#: doc/classes/AnimatedSprite2D.xml:49 doc/classes/Sprite2D.xml:44
-#: doc/classes/SpriteBase3D.xml:64 doc/classes/TextureRect.xml:21
+#: doc/classes/SpriteBase3D.xml:64 doc/classes/TextureButton.xml:22
+#: doc/classes/TextureRect.xml:21
msgid "If [code]true[/code], texture is flipped vertically."
msgstr ""
@@ -3917,10 +3917,10 @@ msgid ""
"[codeblock]\n"
"# This creates an animation that makes the node \"Enemy\" move to the right "
"by\n"
-"# 100 pixels in 1 second.\n"
+"# 100 pixels in 0.5 seconds.\n"
"var animation = Animation.new()\n"
"var track_index = animation.add_track(Animation.TYPE_VALUE)\n"
-"animation.track_set_path(track_index, \"Enemy:position.x\")\n"
+"animation.track_set_path(track_index, \"Enemy:position:x\")\n"
"animation.track_insert_key(track_index, 0.0, 0)\n"
"animation.track_insert_key(track_index, 0.5, 100)\n"
"[/codeblock]\n"
@@ -6048,10 +6048,10 @@ msgstr ""
msgid ""
"Returns [code]true[/code] if the array contains the given value.\n"
"[codeblock]\n"
-"[\"inside\", 7].has(\"inside\") == true\n"
-"[\"inside\", 7].has(\"outside\") == false\n"
-"[\"inside\", 7].has(7) == true\n"
-"[\"inside\", 7].has(\"7\") == false\n"
+"print([\"inside\", 7].has(\"inside\")) # True\n"
+"print([\"inside\", 7].has(\"outside\")) # False\n"
+"print([\"inside\", 7].has(7)) # True\n"
+"print([\"inside\", 7].has(\"7\")) # False\n"
"[/codeblock]\n"
"[b]Note:[/b] This is equivalent to using the [code]in[/code] operator as "
"follows:\n"
@@ -6072,11 +6072,11 @@ msgid ""
"valid, or at the end of the array ([code]pos == size()[/code])."
msgstr ""
-#: doc/classes/Array.xml:265 doc/classes/PackedByteArray.xml:107
-#: doc/classes/PackedColorArray.xml:62 doc/classes/PackedFloat32Array.xml:63
-#: doc/classes/PackedFloat64Array.xml:63 doc/classes/PackedInt32Array.xml:63
-#: doc/classes/PackedInt64Array.xml:63 doc/classes/PackedStringArray.xml:62
-#: doc/classes/PackedVector2Array.xml:62 doc/classes/PackedVector3Array.xml:62
+#: doc/classes/Array.xml:265 doc/classes/PackedByteArray.xml:116
+#: doc/classes/PackedColorArray.xml:71 doc/classes/PackedFloat32Array.xml:72
+#: doc/classes/PackedFloat64Array.xml:72 doc/classes/PackedInt32Array.xml:72
+#: doc/classes/PackedInt64Array.xml:72 doc/classes/PackedStringArray.xml:71
+#: doc/classes/PackedVector2Array.xml:71 doc/classes/PackedVector3Array.xml:71
msgid "Reverses the order of the elements in the array."
msgstr ""
@@ -6106,8 +6106,8 @@ msgid ""
"code] if the array is empty."
msgstr ""
-#: doc/classes/Array.xml:302 doc/classes/PackedByteArray.xml:116
-#: doc/classes/PackedFloat32Array.xml:72 doc/classes/PackedFloat64Array.xml:72
+#: doc/classes/Array.xml:302 doc/classes/PackedByteArray.xml:125
+#: doc/classes/PackedFloat32Array.xml:81 doc/classes/PackedFloat64Array.xml:81
msgid "Appends an element at the end of the array."
msgstr ""
@@ -6115,11 +6115,11 @@ msgstr ""
msgid "Adds an element at the beginning of the array."
msgstr ""
-#: doc/classes/Array.xml:320 doc/classes/PackedByteArray.xml:125
-#: doc/classes/PackedColorArray.xml:80 doc/classes/PackedFloat32Array.xml:81
-#: doc/classes/PackedFloat64Array.xml:81 doc/classes/PackedInt32Array.xml:81
-#: doc/classes/PackedInt64Array.xml:81 doc/classes/PackedStringArray.xml:80
-#: doc/classes/PackedVector2Array.xml:80 doc/classes/PackedVector3Array.xml:80
+#: doc/classes/Array.xml:320 doc/classes/PackedByteArray.xml:134
+#: doc/classes/PackedColorArray.xml:89 doc/classes/PackedFloat32Array.xml:90
+#: doc/classes/PackedFloat64Array.xml:90 doc/classes/PackedInt32Array.xml:90
+#: doc/classes/PackedInt64Array.xml:90 doc/classes/PackedStringArray.xml:89
+#: doc/classes/PackedVector2Array.xml:89 doc/classes/PackedVector3Array.xml:89
msgid "Removes an element from the array by index."
msgstr ""
@@ -6402,7 +6402,7 @@ msgid ""
msgstr ""
#: doc/classes/ArrayMesh.xml:235 doc/classes/Mesh.xml:210
-#: doc/classes/RenderingServer.xml:3115
+#: doc/classes/RenderingServer.xml:3111
msgid "Represents the size of the [enum ArrayType] enum."
msgstr ""
@@ -8219,7 +8219,9 @@ msgid ""
msgstr ""
#: doc/classes/BaseButton.xml:16
-msgid "Called when the button is pressed."
+msgid ""
+"Called when the button is pressed. If you need to know the button's pressed "
+"state (and [member toggle_mode] is active), use [method _toggled] instead."
msgstr ""
#: doc/classes/BaseButton.xml:25
@@ -8313,43 +8315,45 @@ msgstr ""
msgid ""
"Emitted when the button is toggled or pressed. This is on [signal "
"button_down] if [member action_mode] is [constant ACTION_MODE_BUTTON_PRESS] "
-"and on [signal button_up] otherwise."
+"and on [signal button_up] otherwise.\n"
+"If you need to know the button's pressed state (and [member toggle_mode] is "
+"active), use [signal toggled] instead."
msgstr ""
-#: doc/classes/BaseButton.xml:98
+#: doc/classes/BaseButton.xml:99
msgid ""
"Emitted when the button was just toggled between pressed and normal states "
"(only if [member toggle_mode] is active). The new state is contained in the "
"[code]button_pressed[/code] argument."
msgstr ""
-#: doc/classes/BaseButton.xml:104
+#: doc/classes/BaseButton.xml:105
msgid ""
"The normal state (i.e. not pressed, not hovered, not toggled and enabled) of "
"buttons."
msgstr ""
-#: doc/classes/BaseButton.xml:107
+#: doc/classes/BaseButton.xml:108
msgid "The state of buttons are pressed."
msgstr ""
-#: doc/classes/BaseButton.xml:110
+#: doc/classes/BaseButton.xml:111
msgid "The state of buttons are hovered."
msgstr ""
-#: doc/classes/BaseButton.xml:113
+#: doc/classes/BaseButton.xml:114
msgid "The state of buttons are disabled."
msgstr ""
-#: doc/classes/BaseButton.xml:116
+#: doc/classes/BaseButton.xml:117
msgid "The state of buttons are both hovered and pressed."
msgstr ""
-#: doc/classes/BaseButton.xml:119
+#: doc/classes/BaseButton.xml:120
msgid "Require just a press to consider the button clicked."
msgstr ""
-#: doc/classes/BaseButton.xml:122
+#: doc/classes/BaseButton.xml:123
msgid ""
"Require a press and a subsequent release before considering the button "
"clicked."
@@ -9042,22 +9046,22 @@ msgstr ""
msgid "Represents the size of the [enum TextureParam] enum."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:451 doc/classes/RenderingServer.xml:3657
-#: doc/classes/Viewport.xml:390
+#: doc/classes/BaseMaterial3D.xml:451 doc/classes/RenderingServer.xml:3668
+#: doc/classes/Viewport.xml:393
msgid ""
"The texture filter reads from the nearest pixel only. The simplest and "
"fastest method of filtering, but the texture will look pixelized."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:454 doc/classes/RenderingServer.xml:3660
-#: doc/classes/Viewport.xml:393
+#: doc/classes/BaseMaterial3D.xml:454 doc/classes/RenderingServer.xml:3671
+#: doc/classes/Viewport.xml:396
msgid ""
"The texture filter blends between the nearest 4 pixels. Use this when you "
"want to avoid a pixelated style, but do not want mipmaps."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:457 doc/classes/RenderingServer.xml:3663
-#: doc/classes/Viewport.xml:396
+#: doc/classes/BaseMaterial3D.xml:457 doc/classes/RenderingServer.xml:3674
+#: doc/classes/Viewport.xml:399
msgid ""
"The texture filter reads from the nearest pixel in the nearest mipmap. The "
"fastest way to read from textures with mipmaps."
@@ -9070,14 +9074,14 @@ msgid ""
"smooth out pixels that are far from the camera."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:463 doc/classes/RenderingServer.xml:3669
+#: doc/classes/BaseMaterial3D.xml:463 doc/classes/RenderingServer.xml:3680
msgid ""
"The texture filter reads from the nearest pixel, but selects a mipmap based "
"on the angle between the surface and the camera view. This reduces artifacts "
"on surfaces that are almost in line with the camera."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:466 doc/classes/RenderingServer.xml:3672
+#: doc/classes/BaseMaterial3D.xml:466 doc/classes/RenderingServer.xml:3683
msgid ""
"The texture filter blends between the nearest 4 pixels and selects a mipmap "
"based on the angle between the surface and the camera view. This reduces "
@@ -9086,7 +9090,7 @@ msgid ""
"texturing."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:469 doc/classes/CanvasItem.xml:685
+#: doc/classes/BaseMaterial3D.xml:469 doc/classes/CanvasItem.xml:695
msgid "Represents the size of the [enum TextureFilter] enum."
msgstr ""
@@ -9309,8 +9313,8 @@ msgstr ""
msgid "Enables the shadow to opacity feature."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:622 doc/classes/RenderingServer.xml:3684
-#: doc/classes/Viewport.xml:408
+#: doc/classes/BaseMaterial3D.xml:622 doc/classes/RenderingServer.xml:3695
+#: doc/classes/Viewport.xml:411
msgid ""
"Enables the texture to repeat when UV coordinates are outside the 0-1 range. "
"If using one of the linear filtering modes, this can result in artifacts at "
@@ -9451,167 +9455,195 @@ msgstr ""
#: doc/classes/Basis.xml:7
msgid ""
-"3×3 matrix used for 3D rotation and scale. Contains 3 vector fields X, Y and "
-"Z as its columns, which can be interpreted as the local basis vectors of a "
-"transformation. Can also be accessed as array of 3D vectors. These vectors "
-"are orthogonal to each other, but are not necessarily normalized (due to "
-"scaling). Almost always used as an orthogonal basis for a [Transform].\n"
-"For such use, it is composed of a scaling and a rotation matrix, in that "
-"order (M = R.S)."
+"3×3 matrix used for 3D rotation and scale. Almost always used as an "
+"orthogonal basis for a Transform.\n"
+"Contains 3 vector fields X, Y and Z as its columns, which are typically "
+"interpreted as the local basis vectors of a transformation. For such use, it "
+"is composed of a scaling and a rotation matrix, in that order (M = R.S).\n"
+"Can also be accessed as array of 3D vectors. These vectors are normally "
+"orthogonal to each other, but are not necessarily normalized (due to "
+"scaling).\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
+msgstr ""
+
+#: doc/classes/Basis.xml:13 doc/classes/Transform.xml:12
+#: doc/classes/Transform2D.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/math/"
+"matrices_and_transforms.html"
msgstr ""
-#: doc/classes/Basis.xml:11 doc/classes/Transform.xml:11
+#: doc/classes/Basis.xml:14 doc/classes/Transform.xml:13
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/using_transforms.html"
msgstr ""
-#: doc/classes/Basis.xml:20
-msgid "Create a rotation matrix from the given quaternion."
+#: doc/classes/Basis.xml:23
+msgid "Constructs a pure rotation basis matrix from the given quaternion."
msgstr ""
-#: doc/classes/Basis.xml:29
+#: doc/classes/Basis.xml:32
msgid ""
-"Create a rotation matrix (in the YXZ convention: first Z, then X, and Y "
-"last) from the specified Euler angles, given in the vector format as (X "
-"angle, Y angle, Z angle)."
+"Constructs a pure rotation basis matrix from the given Euler angles (in the "
+"YXZ convention: when *composing*, first Y, then X, and Z last), given in the "
+"vector format as (X angle, Y angle, Z angle).\n"
+"Consider using the [Quat] constructor instead, which uses a quaternion "
+"instead of Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:40
+#: doc/classes/Basis.xml:44
msgid ""
-"Create a rotation matrix which rotates around the given axis by the "
-"specified angle, in radians. The axis must be a normalized vector."
+"Constructs a pure rotation basis matrix, rotated around the given "
+"[code]axis[/code] by [code]phi[/code], in radians. The axis must be a "
+"normalized vector."
msgstr ""
-#: doc/classes/Basis.xml:53
-msgid "Create a matrix from 3 axis vectors."
+#: doc/classes/Basis.xml:57
+msgid "Constructs a basis matrix from 3 axis vectors (matrix columns)."
msgstr ""
-#: doc/classes/Basis.xml:60
-msgid "Returns the determinant of the matrix."
+#: doc/classes/Basis.xml:64
+msgid ""
+"Returns the determinant of the basis matrix. If the basis is uniformly "
+"scaled, its determinant is the square of the scale.\n"
+"A negative determinant means the basis has a negative scale. A zero "
+"determinant means the basis isn't invertible, and is usually considered "
+"invalid."
msgstr ""
-#: doc/classes/Basis.xml:67
+#: doc/classes/Basis.xml:72
msgid ""
"Returns the basis's rotation in the form of Euler angles (in the YXZ "
-"convention: first Z, then X, and Y last). The returned vector contains the "
-"rotation angles in the format (X angle, Y angle, Z angle). See [method "
-"get_rotation_quat] if you need a quaternion instead."
+"convention: when decomposing, first Z, then X, and Y last). The returned "
+"vector contains the rotation angles in the format (X angle, Y angle, Z "
+"angle).\n"
+"Consider using the [method get_rotation_quat] method instead, which returns "
+"a [Quat] quaternion instead of Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:74
+#: doc/classes/Basis.xml:80
msgid ""
"This function considers a discretization of rotations into 24 points on unit "
"sphere, lying along the vectors (x,y,z) with each component being either -1, "
"0, or 1, and returns the index of the point best representing the "
-"orientation of the object. It is mainly used by the grid map editor. For "
+"orientation of the object. It is mainly used by the [GridMap] editor. For "
"further details, refer to the Godot source code."
msgstr ""
-#: doc/classes/Basis.xml:81
+#: doc/classes/Basis.xml:87
msgid ""
"Returns the basis's rotation in the form of a quaternion. See [method "
"get_euler] if you need Euler angles, but keep in mind quaternions should "
"generally be preferred to Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:88
+#: doc/classes/Basis.xml:94
msgid ""
"Assuming that the matrix is the combination of a rotation and scaling, "
"return the absolute value of scaling factors along each axis."
msgstr ""
-#: doc/classes/Basis.xml:95 doc/classes/Transform2D.xml:49
+#: doc/classes/Basis.xml:101
msgid "Returns the inverse of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:106
+#: doc/classes/Basis.xml:112
msgid ""
"Returns [code]true[/code] if this basis and [code]b[/code] are approximately "
"equal, by calling [code]is_equal_approx[/code] on each component."
msgstr ""
-#: doc/classes/Basis.xml:113
+#: doc/classes/Basis.xml:119
msgid ""
"Returns the orthonormalized version of the matrix (useful to call from time "
"to time to avoid rounding error for orthogonal matrices). This performs a "
"Gram-Schmidt orthonormalization on the basis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:124
+#: doc/classes/Basis.xml:130
msgid ""
"Introduce an additional rotation around the given axis by phi (radians). The "
"axis must be a normalized vector."
msgstr ""
-#: doc/classes/Basis.xml:133
+#: doc/classes/Basis.xml:139
msgid ""
"Introduce an additional scaling specified by the given 3D scaling factor."
msgstr ""
-#: doc/classes/Basis.xml:144
+#: doc/classes/Basis.xml:150
msgid ""
"Assuming that the matrix is a proper rotation matrix, slerp performs a "
"spherical-linear interpolation with another rotation matrix."
msgstr ""
-#: doc/classes/Basis.xml:153
+#: doc/classes/Basis.xml:159
msgid "Transposed dot product with the X axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:162
+#: doc/classes/Basis.xml:168
msgid "Transposed dot product with the Y axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:171
+#: doc/classes/Basis.xml:177
msgid "Transposed dot product with the Z axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:178
+#: doc/classes/Basis.xml:184
msgid "Returns the transposed version of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:187
+#: doc/classes/Basis.xml:193
msgid "Returns a vector transformed (multiplied) by the matrix."
msgstr ""
-#: doc/classes/Basis.xml:196
+#: doc/classes/Basis.xml:202
msgid ""
-"Returns a vector transformed (multiplied) by the transposed matrix.\n"
+"Returns a vector transformed (multiplied) by the transposed basis matrix.\n"
"[b]Note:[/b] This results in a multiplication by the inverse of the matrix "
"only if it represents a rotation-reflection."
msgstr ""
-#: doc/classes/Basis.xml:203
-msgid "The basis matrix's X vector."
+#: doc/classes/Basis.xml:209 doc/classes/Transform2D.xml:181
+msgid ""
+"The basis matrix's X vector (column 0). Equivalent to array index [code]0[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:206
-msgid "The basis matrix's Y vector."
+#: doc/classes/Basis.xml:212 doc/classes/Transform2D.xml:184
+msgid ""
+"The basis matrix's Y vector (column 1). Equivalent to array index [code]1[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:209
-msgid "The basis matrix's Z vector."
+#: doc/classes/Basis.xml:215
+msgid ""
+"The basis matrix's Z vector (column 2). Equivalent to array index [code]2[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:214
+#: doc/classes/Basis.xml:220
msgid ""
-"The identity basis. This is identical to calling [code]Basis()[/code] "
-"without any parameters. This constant can be used to make your code clearer."
+"The identity basis, with no rotation or scaling applied.\n"
+"This is identical to calling [code]Basis()[/code] without any parameters. "
+"This constant can be used to make your code clearer, and for consistency "
+"with C#."
msgstr ""
-#: doc/classes/Basis.xml:217
+#: doc/classes/Basis.xml:224
msgid ""
"The basis that will flip something along the X axis when used in a "
"transformation."
msgstr ""
-#: doc/classes/Basis.xml:220
+#: doc/classes/Basis.xml:227
msgid ""
"The basis that will flip something along the Y axis when used in a "
"transformation."
msgstr ""
-#: doc/classes/Basis.xml:223
+#: doc/classes/Basis.xml:230
msgid ""
"The basis that will flip something along the Z axis when used in a "
"transformation."
@@ -9924,97 +9956,111 @@ msgstr ""
#: doc/classes/Button.xml:7
msgid ""
"Button is the standard themed button. It can contain text and an icon, and "
-"will display them according to the current [Theme]."
+"will display them according to the current [Theme].\n"
+"[b]Example of creating a button and assigning an action when pressed by code:"
+"[/b]\n"
+"[codeblock]\n"
+"func _ready():\n"
+" var button = Button.new()\n"
+" button.text = \"Click me\"\n"
+" button.connect(\"pressed\", self, \"_button_pressed\")\n"
+" add_child(button)\n"
+"\n"
+"func _button_pressed():\n"
+" print(\"Hello world!\")\n"
+"[/codeblock]\n"
+"Buttons (like all Control nodes) can also be created in the editor, but some "
+"situations may require creating them from code."
msgstr ""
-#: doc/classes/Button.xml:15
+#: doc/classes/Button.xml:27
msgid ""
"Text alignment policy for the button's text, use one of the [enum TextAlign] "
"constants."
msgstr ""
-#: doc/classes/Button.xml:18
+#: doc/classes/Button.xml:30
msgid ""
"When this property is enabled, text that is too large to fit the button is "
"clipped, when disabled the Button will always be wide enough to hold the "
"text."
msgstr ""
-#: doc/classes/Button.xml:21
+#: doc/classes/Button.xml:33
msgid ""
"When enabled, the button's icon will expand/shrink to fit the button's size "
"while keeping its aspect."
msgstr ""
-#: doc/classes/Button.xml:24
+#: doc/classes/Button.xml:36
msgid "Flat buttons don't display decoration."
msgstr ""
-#: doc/classes/Button.xml:27
+#: doc/classes/Button.xml:39
msgid ""
"Button's icon, if text is present the icon will be placed before the text."
msgstr ""
-#: doc/classes/Button.xml:30 doc/classes/LinkButton.xml:18
+#: doc/classes/Button.xml:42 doc/classes/LinkButton.xml:18
msgid "The button's text that will be displayed inside the button's area."
msgstr ""
-#: doc/classes/Button.xml:35
+#: doc/classes/Button.xml:47
msgid "Align the text to the left."
msgstr ""
-#: doc/classes/Button.xml:38
+#: doc/classes/Button.xml:50
msgid "Align the text to the center."
msgstr ""
-#: doc/classes/Button.xml:41
+#: doc/classes/Button.xml:53
msgid "Align the text to the right."
msgstr ""
-#: doc/classes/Button.xml:46
+#: doc/classes/Button.xml:58
msgid "[StyleBox] used when the [Button] is disabled."
msgstr ""
-#: doc/classes/Button.xml:49
+#: doc/classes/Button.xml:61
msgid ""
"[StyleBox] used when the [Button] is focused. It is displayed over the "
"current [StyleBox], so using [StyleBoxEmpty] will just disable the focus "
"visual effect."
msgstr ""
-#: doc/classes/Button.xml:52
+#: doc/classes/Button.xml:64
msgid "[Font] of the [Button]'s text."
msgstr ""
-#: doc/classes/Button.xml:55
+#: doc/classes/Button.xml:67
msgid "Default text [Color] of the [Button]."
msgstr ""
-#: doc/classes/Button.xml:58
+#: doc/classes/Button.xml:70
msgid "Text [Color] used when the [Button] is disabled."
msgstr ""
-#: doc/classes/Button.xml:61
+#: doc/classes/Button.xml:73
msgid "Text [Color] used when the [Button] is being hovered."
msgstr ""
-#: doc/classes/Button.xml:64
+#: doc/classes/Button.xml:76
msgid "Text [Color] used when the [Button] is being pressed."
msgstr ""
-#: doc/classes/Button.xml:67
+#: doc/classes/Button.xml:79
msgid "[StyleBox] used when the [Button] is being hovered."
msgstr ""
-#: doc/classes/Button.xml:70
+#: doc/classes/Button.xml:82
msgid "The horizontal space between [Button]'s icon and text."
msgstr ""
-#: doc/classes/Button.xml:73
+#: doc/classes/Button.xml:85
msgid "Default [StyleBox] for the [Button]."
msgstr ""
-#: doc/classes/Button.xml:76
+#: doc/classes/Button.xml:88
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr ""
@@ -10666,7 +10712,7 @@ msgstr ""
#: doc/classes/CameraEffects.xml:37
msgid ""
"The exposure override value to use. Higher values will result in a brighter "
-"scene. Only effective if [member override_exposure_enable] is [code]true[/"
+"scene. Only effective if [member override_exposure_enabled] is [code]true[/"
"code]."
msgstr ""
@@ -10920,265 +10966,282 @@ msgid ""
msgstr ""
#: doc/classes/CanvasItem.xml:319
-msgid "Draws a string using a custom font."
+msgid ""
+"Draws [code]text[/code] using the specified [code]font[/code] at the "
+"[code]position[/code] (top-left corner). The text will have its color "
+"multiplied by [code]modulate[/code]. If [code]clip_w[/code] is greater than "
+"or equal to 0, the text will be clipped if it exceeds the specified width.\n"
+"[b]Example using the default project font:[/b]\n"
+"[codeblock]\n"
+"# If using this method in a script that redraws constantly, move the\n"
+"# `default_font` declaration to a member variable assigned in `_ready()`\n"
+"# so the Control is only created once.\n"
+"var default_font = Control.new().get_font(\"font\")\n"
+"draw_string(default_font, Vector2(64, 64), \"Hello world\")\n"
+"[/codeblock]\n"
+"See also [method Font.draw]."
msgstr ""
-#: doc/classes/CanvasItem.xml:330
+#: doc/classes/CanvasItem.xml:339
msgid "Draws a styled rectangle."
msgstr ""
-#: doc/classes/CanvasItem.xml:353
+#: doc/classes/CanvasItem.xml:362
msgid "Draws a texture at a given position."
msgstr ""
-#: doc/classes/CanvasItem.xml:380
+#: doc/classes/CanvasItem.xml:389
msgid ""
"Draws a textured rectangle at a given position, optionally modulated by a "
"color. If [code]transpose[/code] is [code]true[/code], the texture will have "
"its X and Y coordinates swapped."
msgstr ""
-#: doc/classes/CanvasItem.xml:409
+#: doc/classes/CanvasItem.xml:418
msgid ""
"Draws a textured rectangle region at a given position, optionally modulated "
"by a color. If [code]transpose[/code] is [code]true[/code], the texture will "
"have its X and Y coordinates swapped."
msgstr ""
-#: doc/classes/CanvasItem.xml:416 doc/classes/Node3D.xml:19
+#: doc/classes/CanvasItem.xml:425 doc/classes/Node3D.xml:19
msgid ""
"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."
msgstr ""
-#: doc/classes/CanvasItem.xml:423
+#: doc/classes/CanvasItem.xml:432
msgid "Returns the [RID] of the [World2D] canvas where this item is in."
msgstr ""
-#: doc/classes/CanvasItem.xml:430
+#: doc/classes/CanvasItem.xml:439
msgid "Returns the canvas item RID used by [RenderingServer] for this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:437
+#: doc/classes/CanvasItem.xml:446
msgid "Returns the transform matrix of this item's canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:444
+#: doc/classes/CanvasItem.xml:453
msgid "Returns the global position of the mouse."
msgstr ""
-#: doc/classes/CanvasItem.xml:451
+#: doc/classes/CanvasItem.xml:460
msgid "Returns the global transform matrix of this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:458
+#: doc/classes/CanvasItem.xml:467
msgid ""
"Returns the global transform matrix of this item in relation to the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:465
+#: doc/classes/CanvasItem.xml:474
msgid "Returns the mouse position relative to this item's position."
msgstr ""
-#: doc/classes/CanvasItem.xml:472
+#: doc/classes/CanvasItem.xml:481
msgid "Returns the transform matrix of this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:479
+#: doc/classes/CanvasItem.xml:488
msgid "Returns the viewport's boundaries as a [Rect2]."
msgstr ""
-#: doc/classes/CanvasItem.xml:486
+#: doc/classes/CanvasItem.xml:495
msgid "Returns this item's transform in relation to the viewport."
msgstr ""
-#: doc/classes/CanvasItem.xml:493
+#: doc/classes/CanvasItem.xml:502
msgid "Returns the [World2D] where this item is in."
msgstr ""
-#: doc/classes/CanvasItem.xml:500
+#: doc/classes/CanvasItem.xml:509
msgid "Hide the [CanvasItem] if it's currently visible."
msgstr ""
-#: doc/classes/CanvasItem.xml:507
+#: doc/classes/CanvasItem.xml:516
msgid ""
"Returns [code]true[/code] if local transform notifications are communicated "
"to children."
msgstr ""
-#: doc/classes/CanvasItem.xml:514
+#: doc/classes/CanvasItem.xml:523
msgid ""
"Returns [code]true[/code] if the node is set as top-level. See [method "
"set_as_toplevel]."
msgstr ""
-#: doc/classes/CanvasItem.xml:521
+#: doc/classes/CanvasItem.xml:530
msgid ""
"Returns [code]true[/code] if global transform notifications are communicated "
"to children."
msgstr ""
-#: doc/classes/CanvasItem.xml:528
+#: doc/classes/CanvasItem.xml:537 doc/classes/Node3D.xml:104
msgid ""
"Returns [code]true[/code] if the node is present in the [SceneTree], its "
-"[member visible] property is [code]true[/code] and its inherited visibility "
-"is also [code]true[/code]."
+"[member visible] property is [code]true[/code] and all its antecedents are "
+"also visible. If any antecedent is hidden, this node will not be visible in "
+"the scene tree."
msgstr ""
-#: doc/classes/CanvasItem.xml:537
+#: doc/classes/CanvasItem.xml:546
msgid "Assigns [code]screen_point[/code] as this node's new local transform."
msgstr ""
-#: doc/classes/CanvasItem.xml:546
+#: doc/classes/CanvasItem.xml:555
msgid ""
"Transformations issued by [code]event[/code]'s inputs are applied in local "
"space instead of global space."
msgstr ""
-#: doc/classes/CanvasItem.xml:555
+#: doc/classes/CanvasItem.xml:564
msgid ""
"If [code]enable[/code] is [code]true[/code], the node won't inherit its "
"transform from parent canvas items."
msgstr ""
-#: doc/classes/CanvasItem.xml:564
+#: doc/classes/CanvasItem.xml:573
msgid ""
"If [code]enable[/code] is [code]true[/code], children will be updated with "
"local transform data."
msgstr ""
-#: doc/classes/CanvasItem.xml:573
+#: doc/classes/CanvasItem.xml:582
msgid ""
"If [code]enable[/code] is [code]true[/code], children will be updated with "
"global transform data."
msgstr ""
-#: doc/classes/CanvasItem.xml:580
+#: doc/classes/CanvasItem.xml:589
msgid ""
"Show the [CanvasItem] if it's currently hidden. For controls that inherit "
"[Popup], the correct way to make them visible is to call one of the multiple "
"[code]popup*()[/code] functions instead."
msgstr ""
-#: doc/classes/CanvasItem.xml:587
+#: doc/classes/CanvasItem.xml:596
msgid ""
"Queue the [CanvasItem] for update. [constant NOTIFICATION_DRAW] will be "
"called on idle time to request redraw."
msgstr ""
-#: doc/classes/CanvasItem.xml:593
+#: doc/classes/CanvasItem.xml:602
msgid ""
"The rendering layers in which this [CanvasItem] responds to [Light2D] nodes."
msgstr ""
-#: doc/classes/CanvasItem.xml:596
+#: doc/classes/CanvasItem.xml:605
msgid "The material applied to textures on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:599
+#: doc/classes/CanvasItem.xml:608
msgid "The color applied to textures on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:602
+#: doc/classes/CanvasItem.xml:611
msgid ""
"The color applied to textures on this [CanvasItem]. This is not inherited by "
"children [CanvasItem]s."
msgstr ""
-#: doc/classes/CanvasItem.xml:605
+#: doc/classes/CanvasItem.xml:614
msgid "If [code]true[/code], the object draws behind its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:608
+#: doc/classes/CanvasItem.xml:617
msgid "If [code]true[/code], the object draws on top of its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:611
+#: doc/classes/CanvasItem.xml:620
msgid "The texture filtering mode to use on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:614
+#: doc/classes/CanvasItem.xml:623
msgid "The texture repeating mode to use on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:617
+#: doc/classes/CanvasItem.xml:626
msgid ""
"If [code]true[/code], the parent [CanvasItem]'s [member material] property "
"is used as this one's material."
msgstr ""
-#: doc/classes/CanvasItem.xml:620
+#: doc/classes/CanvasItem.xml:629
msgid ""
-"If [code]true[/code], this [CanvasItem] is drawn. For controls that inherit "
-"[Popup], the correct way to make them visible is to call one of the multiple "
-"[code]popup*()[/code] functions instead."
+"If [code]true[/code], this [CanvasItem] is drawn. The node is only visible "
+"if all of its antecedents are visible as well (in other words, [method "
+"is_visible_in_tree] must return [code]true[/code]).\n"
+"[b]Note:[/b] For controls that inherit [Popup], the correct way to make them "
+"visible is to call one of the multiple [code]popup*()[/code] functions "
+"instead."
msgstr ""
-#: doc/classes/CanvasItem.xml:626
+#: doc/classes/CanvasItem.xml:636
msgid ""
"Emitted when the [CanvasItem] must redraw. This can only be connected "
"realtime, as deferred will not allow drawing."
msgstr ""
-#: doc/classes/CanvasItem.xml:631
+#: doc/classes/CanvasItem.xml:641
msgid "Emitted when becoming hidden."
msgstr ""
-#: doc/classes/CanvasItem.xml:636
+#: doc/classes/CanvasItem.xml:646
msgid "Emitted when the item rect has changed."
msgstr ""
-#: doc/classes/CanvasItem.xml:641
+#: doc/classes/CanvasItem.xml:651
msgid "Emitted when the visibility (hidden/visible) changes."
msgstr ""
-#: doc/classes/CanvasItem.xml:647
+#: doc/classes/CanvasItem.xml:657
msgid ""
"The [CanvasItem]'s transform has changed. This notification is only received "
"if enabled by [method set_notify_transform] or [method "
"set_notify_local_transform]."
msgstr ""
-#: doc/classes/CanvasItem.xml:650
+#: doc/classes/CanvasItem.xml:660
msgid "The [CanvasItem] is requested to draw."
msgstr ""
-#: doc/classes/CanvasItem.xml:653
+#: doc/classes/CanvasItem.xml:663
msgid "The [CanvasItem]'s visibility has changed."
msgstr ""
-#: doc/classes/CanvasItem.xml:656
+#: doc/classes/CanvasItem.xml:666
msgid "The [CanvasItem] has entered the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:659
+#: doc/classes/CanvasItem.xml:669
msgid "The [CanvasItem] has exited the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:662 doc/classes/CanvasItem.xml:688
+#: doc/classes/CanvasItem.xml:672 doc/classes/CanvasItem.xml:698
msgid "The [CanvasItem] will inherit the filter from its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:665
+#: doc/classes/CanvasItem.xml:675
msgid ""
"The texture filter reads from the nearest pixel only. The simplest and "
"fastest method of filtering. Useful for pixel art."
msgstr ""
-#: doc/classes/CanvasItem.xml:668
+#: doc/classes/CanvasItem.xml:678
msgid ""
"The texture filter blends between the nearest four pixels. Use this for most "
"cases where you want to avoid a pixelated style."
msgstr ""
-#: doc/classes/CanvasItem.xml:671
+#: doc/classes/CanvasItem.xml:681
msgid ""
"The texture filter reads from the nearest pixel in the nearest mipmap. This "
"is the fastest way to read from textures with mipmaps."
msgstr ""
-#: doc/classes/CanvasItem.xml:674
+#: doc/classes/CanvasItem.xml:684
msgid ""
"The texture filter blends between the nearest 4 pixels and between the "
"nearest 2 mipmaps. Use this for non-pixel art textures that may be viewed at "
@@ -11186,7 +11249,7 @@ msgid ""
"smooth out pixels that are smaller than on-screen pixels."
msgstr ""
-#: doc/classes/CanvasItem.xml:677
+#: doc/classes/CanvasItem.xml:687
msgid ""
"The texture filter reads from the nearest pixel, but selects a mipmap based "
"on the angle between the surface and the camera view. This reduces artifacts "
@@ -11195,7 +11258,7 @@ msgid ""
"TEXTURE_FILTER_NEAREST_WITH_MIPMAPS] is usually more appropriate."
msgstr ""
-#: doc/classes/CanvasItem.xml:681
+#: doc/classes/CanvasItem.xml:691
msgid ""
"The texture filter blends between the nearest 4 pixels and selects a mipmap "
"based on the angle between the surface and the camera view. This reduces "
@@ -11206,21 +11269,21 @@ msgid ""
"TEXTURE_FILTER_LINEAR_WITH_MIPMAPS] is usually more appropriate."
msgstr ""
-#: doc/classes/CanvasItem.xml:691
+#: doc/classes/CanvasItem.xml:701
msgid "Texture will not repeat."
msgstr ""
-#: doc/classes/CanvasItem.xml:694
+#: doc/classes/CanvasItem.xml:704
msgid "Texture will repeat normally."
msgstr ""
-#: doc/classes/CanvasItem.xml:697
+#: doc/classes/CanvasItem.xml:707
msgid ""
"Texture will repeat in a 2x2 tiled mode, where elements at even positions "
"are mirrored."
msgstr ""
-#: doc/classes/CanvasItem.xml:700
+#: doc/classes/CanvasItem.xml:710
msgid "Represents the size of the [enum TextureRepeat] enum."
msgstr ""
@@ -12293,16 +12356,15 @@ msgid ""
msgstr ""
#: doc/classes/Color.xml:4
-msgid "Color in RGBA format with some support for ARGB format."
+msgid "Color in RGBA format using floats on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:7
msgid ""
-"A color is represented by red, green, and blue [code](r, g, b)[/code] "
-"components. Additionally, [code]a[/code] represents the alpha component, "
-"often used for transparency. Values are in floating-point and usually range "
-"from 0 to 1. Some properties (such as [member CanvasItem.modulate]) may "
-"accept values greater than 1.\n"
+"A color represented by red, green, blue, and alpha (RGBA) components. The "
+"alpha component is often used for transparency. Values are in floating-point "
+"and usually range from 0 to 1. Some properties (such as CanvasItem.modulate) "
+"may accept values greater than 1 (overbright or HDR colors).\n"
"You can also create a color from standardized color names by using [method "
"@GDScript.ColorN] or directly using the color constants defined here. The "
"standardized color set is based on the [url=https://en.wikipedia.org/wiki/"
@@ -12516,47 +12578,48 @@ msgid ""
msgstr ""
#: doc/classes/Color.xml:280
-msgid "Alpha value (range 0 to 1)."
+msgid ""
+"The color's alpha (transparency) component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:283
-msgid "Alpha value (range 0 to 255)."
+msgid "Wrapper for [member a] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:286
-msgid "Blue value (range 0 to 1)."
+msgid "The color's blue component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:289
-msgid "Blue value (range 0 to 255)."
+msgid "Wrapper for [member b] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:292
-msgid "Green value (range 0 to 1)."
+msgid "The color's green component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:295
-msgid "Green value (range 0 to 255)."
+msgid "Wrapper for [member g] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:298
-msgid "HSV hue value (range 0 to 1)."
+msgid "The HSV hue of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:301
-msgid "Red value (range 0 to 1)."
+msgid "The color's red component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:304
-msgid "Red value (range 0 to 255)."
+msgid "Wrapper for [member r] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:307
-msgid "HSV saturation value (range 0 to 1)."
+msgid "The HSV saturation of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:310
-msgid "HSV value (range 0 to 1)."
+msgid "The HSV value (brightness) of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:315
@@ -14476,23 +14539,35 @@ msgstr ""
#: doc/classes/Control.xml:859
msgid ""
"The node's scale, relative to its [member rect_size]. Change this property "
-"to scale the node around its [member rect_pivot_offset]."
-msgstr ""
-
-#: doc/classes/Control.xml:862
+"to scale the node around its [member rect_pivot_offset]. The Control's "
+"[member hint_tooltip] will also scale according to this value.\n"
+"[b]Note:[/b] This property is mainly intended to be used for animation "
+"purposes. Text inside the Control will look pixelated or blurry when the "
+"Control is scaled. To support multiple resolutions in your project, use an "
+"appropriate viewport stretch mode as described in the [url=https://docs."
+"godotengine.org/en/latest/tutorials/viewports/multiple_resolutions."
+"html]documentation[/url] instead of scaling Controls individually.\n"
+"[b]Note:[/b] If the Control node is a child of a [Container] node, the scale "
+"will be reset to [code]Vector2(1, 1)[/code] when the scene is instanced. To "
+"set the Control's scale when it's instanced, wait for one frame using "
+"[code]yield(get_tree(), \"idle_frame\")[/code] then set its [member "
+"rect_scale] property."
+msgstr ""
+
+#: doc/classes/Control.xml:864
msgid ""
"The size of the node's bounding rectangle, in pixels. [Container] nodes "
"update this property automatically."
msgstr ""
-#: doc/classes/Control.xml:865
+#: doc/classes/Control.xml:867
msgid ""
"Tells the parent [Container] nodes how they should resize and place the node "
"on the X axis. Use one of the [enum SizeFlags] constants to change the "
"flags. See the constants to learn what each does."
msgstr ""
-#: doc/classes/Control.xml:868
+#: doc/classes/Control.xml:870
msgid ""
"If the node and at least one of its neighbours uses the [constant "
"SIZE_EXPAND] size flag, the parent [Container] will let it take more or less "
@@ -14501,181 +14576,181 @@ msgid ""
"space."
msgstr ""
-#: doc/classes/Control.xml:871
+#: doc/classes/Control.xml:873
msgid ""
"Tells the parent [Container] nodes how they should resize and place the node "
"on the Y axis. Use one of the [enum SizeFlags] constants to change the "
"flags. See the constants to learn what each does."
msgstr ""
-#: doc/classes/Control.xml:874
+#: doc/classes/Control.xml:876
msgid ""
"Changing this property replaces the current [Theme] resource this node and "
"all its [Control] children use."
msgstr ""
-#: doc/classes/Control.xml:880
+#: doc/classes/Control.xml:882
msgid "Emitted when the node gains keyboard focus."
msgstr ""
-#: doc/classes/Control.xml:885
+#: doc/classes/Control.xml:887
msgid "Emitted when the node loses keyboard focus."
msgstr ""
-#: doc/classes/Control.xml:892
+#: doc/classes/Control.xml:894
msgid "Emitted when the node receives an [InputEvent]."
msgstr ""
-#: doc/classes/Control.xml:897
+#: doc/classes/Control.xml:899
msgid "Emitted when the node's minimum size changes."
msgstr ""
-#: doc/classes/Control.xml:902
+#: doc/classes/Control.xml:904
msgid ""
"Emitted when the mouse enters the control's [code]Rect[/code] area, provided "
"its [member mouse_filter] lets the event reach it."
msgstr ""
-#: doc/classes/Control.xml:907
+#: doc/classes/Control.xml:909
msgid ""
"Emitted when the mouse leaves the control's [code]Rect[/code] area, provided "
"its [member mouse_filter] lets the event reach it."
msgstr ""
-#: doc/classes/Control.xml:912
+#: doc/classes/Control.xml:914
msgid "Emitted when the control changes size."
msgstr ""
-#: doc/classes/Control.xml:917
+#: doc/classes/Control.xml:919
msgid ""
"Emitted when one of the size flags changes. See [member "
"size_flags_horizontal] and [member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:927
+#: doc/classes/Control.xml:929
msgid "The node cannot grab focus. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:930
+#: doc/classes/Control.xml:932
msgid ""
"The node can only grab focus on mouse clicks. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:933
+#: doc/classes/Control.xml:935
msgid ""
"The node can grab focus on mouse click or using the arrows and the Tab keys "
"on the keyboard. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:936
+#: doc/classes/Control.xml:938
msgid ""
"Sent when the node changes size. Use [member rect_size] to get the new size."
msgstr ""
-#: doc/classes/Control.xml:939
+#: doc/classes/Control.xml:941
msgid "Sent when the mouse pointer enters the node."
msgstr ""
-#: doc/classes/Control.xml:942
+#: doc/classes/Control.xml:944
msgid "Sent when the mouse pointer exits the node."
msgstr ""
-#: doc/classes/Control.xml:945
+#: doc/classes/Control.xml:947
msgid "Sent when the node grabs focus."
msgstr ""
-#: doc/classes/Control.xml:948
+#: doc/classes/Control.xml:950
msgid "Sent when the node loses focus."
msgstr ""
-#: doc/classes/Control.xml:951
+#: doc/classes/Control.xml:953
msgid ""
"Sent when the node's [member theme] changes, right before Godot redraws the "
"control. Happens when you call one of the [code]add_theme_*_override[/code] "
"methods."
msgstr ""
-#: doc/classes/Control.xml:954
+#: doc/classes/Control.xml:956
msgid ""
"Sent when this node is inside a [ScrollContainer] which has begun being "
"scrolled."
msgstr ""
-#: doc/classes/Control.xml:957
+#: doc/classes/Control.xml:959
msgid ""
"Sent when this node is inside a [ScrollContainer] which has stopped being "
"scrolled."
msgstr ""
-#: doc/classes/Control.xml:960
+#: doc/classes/Control.xml:962
msgid ""
"Show the system's arrow mouse cursor when the user hovers the node. Use with "
"[member mouse_default_cursor_shape]."
msgstr ""
-#: doc/classes/Control.xml:963
+#: doc/classes/Control.xml:965
msgid ""
"Show the system's I-beam mouse cursor when the user hovers the node. The I-"
"beam pointer has a shape similar to \"I\". It tells the user they can "
"highlight or insert text."
msgstr ""
-#: doc/classes/Control.xml:966
+#: doc/classes/Control.xml:968
msgid ""
"Show the system's pointing hand mouse cursor when the user hovers the node."
msgstr ""
-#: doc/classes/Control.xml:969
+#: doc/classes/Control.xml:971
msgid "Show the system's cross mouse cursor when the user hovers the node."
msgstr ""
-#: doc/classes/Control.xml:972
+#: doc/classes/Control.xml:974
msgid ""
"Show the system's wait mouse cursor, often an hourglass, when the user "
"hovers the node."
msgstr ""
-#: doc/classes/Control.xml:975
+#: doc/classes/Control.xml:977
msgid ""
"Show the system's busy mouse cursor when the user hovers the node. Often an "
"hourglass."
msgstr ""
-#: doc/classes/Control.xml:978
+#: doc/classes/Control.xml:980
msgid ""
"Show the system's drag mouse cursor, often a closed fist or a cross symbol, "
"when the user hovers the node. It tells the user they're currently dragging "
"an item, like a node in the Scene dock."
msgstr ""
-#: doc/classes/Control.xml:981
+#: doc/classes/Control.xml:983
msgid ""
"Show the system's drop mouse cursor when the user hovers the node. It can be "
"an open hand. It tells the user they can drop an item they're currently "
"grabbing, like a node in the Scene dock."
msgstr ""
-#: doc/classes/Control.xml:984
+#: doc/classes/Control.xml:986
msgid ""
"Show the system's forbidden mouse cursor when the user hovers the node. "
"Often a crossed circle."
msgstr ""
-#: doc/classes/Control.xml:987
+#: doc/classes/Control.xml:989
msgid ""
"Show the system's vertical resize mouse cursor when the user hovers the "
"node. A double-headed vertical arrow. It tells the user they can resize the "
"window or the panel vertically."
msgstr ""
-#: doc/classes/Control.xml:990
+#: doc/classes/Control.xml:992
msgid ""
"Show the system's horizontal resize mouse cursor when the user hovers the "
"node. A double-headed horizontal arrow. It tells the user they can resize "
"the window or the panel horizontally."
msgstr ""
-#: doc/classes/Control.xml:993
+#: doc/classes/Control.xml:995
msgid ""
"Show the system's window resize mouse cursor when the user hovers the node. "
"The cursor is a double-headed arrow that goes from the bottom left to the "
@@ -14683,7 +14758,7 @@ msgid ""
"horizontally and vertically."
msgstr ""
-#: doc/classes/Control.xml:996
+#: doc/classes/Control.xml:998
msgid ""
"Show the system's window resize mouse cursor when the user hovers the node. "
"The cursor is a double-headed arrow that goes from the top left to the "
@@ -14691,93 +14766,93 @@ msgid ""
"they can resize the window or the panel both horizontally and vertically."
msgstr ""
-#: doc/classes/Control.xml:999
+#: doc/classes/Control.xml:1001
msgid ""
"Show the system's move mouse cursor when the user hovers the node. It shows "
"2 double-headed arrows at a 90 degree angle. It tells the user they can move "
"a UI element freely."
msgstr ""
-#: doc/classes/Control.xml:1002
+#: doc/classes/Control.xml:1004
msgid ""
"Show the system's vertical split mouse cursor when the user hovers the node. "
"On Windows, it's the same as [constant CURSOR_VSIZE]."
msgstr ""
-#: doc/classes/Control.xml:1005
+#: doc/classes/Control.xml:1007
msgid ""
"Show the system's horizontal split mouse cursor when the user hovers the "
"node. On Windows, it's the same as [constant CURSOR_HSIZE]."
msgstr ""
-#: doc/classes/Control.xml:1008
+#: doc/classes/Control.xml:1010
msgid ""
"Show the system's help mouse cursor when the user hovers the node, a "
"question mark."
msgstr ""
-#: doc/classes/Control.xml:1011
+#: doc/classes/Control.xml:1013
msgid ""
"Snap all 4 anchors to the top-left of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1014
+#: doc/classes/Control.xml:1016
msgid ""
"Snap all 4 anchors to the top-right of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1017
+#: doc/classes/Control.xml:1019
msgid ""
"Snap all 4 anchors to the bottom-left of the parent control's bounds. Use "
"with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1020
+#: doc/classes/Control.xml:1022
msgid ""
"Snap all 4 anchors to the bottom-right of the parent control's bounds. Use "
"with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1023
+#: doc/classes/Control.xml:1025
msgid ""
"Snap all 4 anchors to the center of the left edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1026
+#: doc/classes/Control.xml:1028
msgid ""
"Snap all 4 anchors to the center of the top edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1029
+#: doc/classes/Control.xml:1031
msgid ""
"Snap all 4 anchors to the center of the right edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1032
+#: doc/classes/Control.xml:1034
msgid ""
"Snap all 4 anchors to the center of the bottom edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1035
+#: doc/classes/Control.xml:1037
msgid ""
"Snap all 4 anchors to the center of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1038
+#: doc/classes/Control.xml:1040
msgid ""
"Snap all 4 anchors to the left edge of the parent control. The left margin "
"becomes relative to the left edge and the top margin relative to the top "
"left corner of the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1041
+#: doc/classes/Control.xml:1043
msgid ""
"Snap all 4 anchors to the top edge of the parent control. The left margin "
"becomes relative to the top left corner, the top margin relative to the top "
@@ -14785,14 +14860,14 @@ msgid ""
"parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1044
+#: doc/classes/Control.xml:1046
msgid ""
"Snap all 4 anchors to the right edge of the parent control. The right margin "
"becomes relative to the right edge and the top margin relative to the top "
"right corner of the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1047
+#: doc/classes/Control.xml:1049
msgid ""
"Snap all 4 anchors to the bottom edge of the parent control. The left margin "
"becomes relative to the bottom left corner, the bottom margin relative to "
@@ -14800,19 +14875,19 @@ msgid ""
"the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1050
+#: doc/classes/Control.xml:1052
msgid ""
"Snap all 4 anchors to a vertical line that cuts the parent control in half. "
"Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1053
+#: doc/classes/Control.xml:1055
msgid ""
"Snap all 4 anchors to a horizontal line that cuts the parent control in "
"half. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1056
+#: doc/classes/Control.xml:1058
msgid ""
"Snap all 4 anchors to the respective corners of the parent control. Set all "
"4 margins to 0 after you applied this preset and the [Control] will fit its "
@@ -14820,30 +14895,30 @@ msgid ""
"editor. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1059
+#: doc/classes/Control.xml:1061
msgid "The control will be resized to its minimum size."
msgstr ""
-#: doc/classes/Control.xml:1062
+#: doc/classes/Control.xml:1064
msgid "The control's width will not change."
msgstr ""
-#: doc/classes/Control.xml:1065
+#: doc/classes/Control.xml:1067
msgid "The control's height will not change."
msgstr ""
-#: doc/classes/Control.xml:1068
+#: doc/classes/Control.xml:1070
msgid "The control's size will not change."
msgstr ""
-#: doc/classes/Control.xml:1071
+#: doc/classes/Control.xml:1073
msgid ""
"Tells the parent [Container] to expand the bounds of this node to fill all "
"the available space without pushing any other node. Use with [member "
"size_flags_horizontal] and [member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1074
+#: doc/classes/Control.xml:1076
msgid ""
"Tells the parent [Container] to let this node take all the available space "
"on the axis you flag. If multiple neighboring nodes are set to expand, "
@@ -14852,13 +14927,13 @@ msgid ""
"[member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1077
+#: doc/classes/Control.xml:1079
msgid ""
"Sets the node's size flags to both fill and expand. See the 2 constants "
"above for more information."
msgstr ""
-#: doc/classes/Control.xml:1080
+#: doc/classes/Control.xml:1082
msgid ""
"Tells the parent [Container] to center the node in itself. It centers the "
"control based on its bounding box, so it doesn't work with the fill or "
@@ -14866,7 +14941,7 @@ msgid ""
"size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1083
+#: doc/classes/Control.xml:1085
msgid ""
"Tells the parent [Container] to align the node with its end, either the "
"bottom or the right edge. It doesn't work with the fill or expand size "
@@ -14874,7 +14949,7 @@ msgid ""
"size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1086
+#: doc/classes/Control.xml:1088
msgid ""
"The control will receive mouse button input events through [method "
"_gui_input] if clicked on. And the control will receive the [signal "
@@ -14883,7 +14958,7 @@ msgid ""
"other controls. This also results in blocking signals in other controls."
msgstr ""
-#: doc/classes/Control.xml:1089
+#: doc/classes/Control.xml:1091
msgid ""
"The control will receive mouse button input events through [method "
"_gui_input] if clicked on. And the control will receive the [signal "
@@ -14895,7 +14970,7 @@ msgid ""
"not be fired."
msgstr ""
-#: doc/classes/Control.xml:1092
+#: doc/classes/Control.xml:1094
msgid ""
"The control will not receive mouse button input events through [method "
"_gui_input]. The control will also not receive the [signal mouse_entered] "
@@ -14904,25 +14979,25 @@ msgid ""
"handled automatically."
msgstr ""
-#: doc/classes/Control.xml:1095
+#: doc/classes/Control.xml:1097
msgid ""
"The control will grow to the left or top to make up if its minimum size is "
"changed to be greater than its current size on the respective axis."
msgstr ""
-#: doc/classes/Control.xml:1098
+#: doc/classes/Control.xml:1100
msgid ""
"The control will grow to the right or bottom to make up if its minimum size "
"is changed to be greater than its current size on the respective axis."
msgstr ""
-#: doc/classes/Control.xml:1101
+#: doc/classes/Control.xml:1103
msgid ""
"The control will grow in both directions equally to make up if its minimum "
"size is changed to be greater than its current size."
msgstr ""
-#: doc/classes/Control.xml:1104
+#: doc/classes/Control.xml:1106
msgid ""
"Snaps one of the 4 anchor's sides to the origin of the node's [code]Rect[/"
"code], in the top left. Use it with one of the [code]anchor_*[/code] member "
@@ -14930,7 +15005,7 @@ msgid ""
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1107
+#: doc/classes/Control.xml:1109
msgid ""
"Snaps one of the 4 anchor's sides to the end of the node's [code]Rect[/"
"code], in the bottom right. Use it with one of the [code]anchor_*[/code] "
@@ -16715,7 +16790,7 @@ msgstr ""
msgid ""
"Returns the [Texture2D] associated with the specified [enum DecalTexture]. "
"This is a convenience method, in most cases you should access the texture "
-"directly. \n"
+"directly.\n"
"For example, instead of [code]albedo_tex = $Decal.get_texture(Decal."
"TEXTURE_ALBEDO)[/code], use [code]albedo_tex = $Decal.texture_albedo[/"
"code].\n"
@@ -16731,7 +16806,7 @@ msgstr ""
msgid ""
"Sets the [Texture2D] associated with the specified [enum DecalTexture]. This "
"is a convenience method, in most cases you should access the texture "
-"directly. \n"
+"directly.\n"
"For example, instead of [code]$Decal.set_texture(Decal.TEXTURE_ALBEDO, "
"albedo_tex)[/code], use [code]$Decal.texture_albedo = albedo_tex[/code].\n"
"One case where this is better than accessing the texture directly is when "
@@ -17080,7 +17155,7 @@ msgstr ""
msgid "The light's shadow rendering algorithm. See [enum ShadowMode]."
msgstr ""
-#: doc/classes/DirectionalLight3D.xml:31 doc/classes/RenderingServer.xml:3254
+#: doc/classes/DirectionalLight3D.xml:31 doc/classes/RenderingServer.xml:3250
msgid ""
"Sets the size of the directional shadow pancake. The pancake offsets the "
"start of the shadow's camera frustum to provide a higher effective depth "
@@ -17154,10 +17229,10 @@ msgstr ""
msgid ""
"Directory type. It is used to manage directories and their content (not "
"restricted to the project folder).\n"
-"When creating a new [Directory], its default opened directory will be "
-"[code]res://[/code]. This may change in the future, so it is advised to "
-"always use [method open] to initialize your [Directory] where you want to "
-"operate, with explicit error checking.\n"
+"When creating a new [Directory], it must be explicitly opened using [method "
+"open] before most methods can be used. However, [method file_exists] and "
+"[method dir_exists] can be used without opening a directory. If so, they use "
+"a path relative to [code]res://[/code].\n"
"Here is an example on how to iterate through the files of a directory:\n"
"[codeblock]\n"
"func dir_contents(path):\n"
@@ -17176,7 +17251,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Directory.xml:27 doc/classes/File.xml:25
+#: doc/classes/Directory.xml:27 doc/classes/File.xml:26
msgid ""
"https://docs.godotengine.org/en/latest/getting_started/step_by_step/"
"filesystem.html"
@@ -17210,41 +17285,43 @@ msgstr ""
#: doc/classes/Directory.xml:65
msgid ""
"Returns whether the target directory exists. The argument can be relative to "
-"the current directory, or an absolute path."
+"the current directory, or an absolute path.\n"
+"If the [Directory] is not open, the path is relative to [code]res://[/code]."
msgstr ""
-#: doc/classes/Directory.xml:74
+#: doc/classes/Directory.xml:75
msgid ""
"Returns whether the target file exists. The argument can be relative to the "
-"current directory, or an absolute path."
+"current directory, or an absolute path.\n"
+"If the [Directory] is not open, the path is relative to [code]res://[/code]."
msgstr ""
-#: doc/classes/Directory.xml:81
+#: doc/classes/Directory.xml:83
msgid ""
"Returns the absolute path to the currently opened directory (e.g. "
"[code]res://folder[/code] or [code]C:\\tmp\\folder[/code])."
msgstr ""
-#: doc/classes/Directory.xml:88
+#: doc/classes/Directory.xml:90
msgid ""
"Returns the currently opened directory's drive index. See [method get_drive] "
"to convert returned index to the name of the drive."
msgstr ""
-#: doc/classes/Directory.xml:97
+#: doc/classes/Directory.xml:99
msgid ""
"On Windows, returns the name of the drive (partition) passed as an argument "
"(e.g. [code]C:[/code]). On other platforms, or if the requested drive does "
"not existed, the method returns an empty String."
msgstr ""
-#: doc/classes/Directory.xml:104
+#: doc/classes/Directory.xml:106
msgid ""
"On Windows, returns the number of drives (partitions) mounted on the current "
"filesystem. On other platforms, the method returns 0."
msgstr ""
-#: doc/classes/Directory.xml:111
+#: doc/classes/Directory.xml:113
msgid ""
"Returns the next element (file or directory) in the current directory "
"(including [code].[/code] and [code]..[/code], unless "
@@ -17255,14 +17332,14 @@ msgid ""
"mandatory in such a case)."
msgstr ""
-#: doc/classes/Directory.xml:119
+#: doc/classes/Directory.xml:121
msgid ""
"On UNIX desktop systems, returns the available space on the current "
"directory's disk. On other platforms, this information is not available and "
"the method returns 0 or -1."
msgstr ""
-#: doc/classes/Directory.xml:130
+#: doc/classes/Directory.xml:132
msgid ""
"Initializes the stream used to list all files and directories using the "
"[method get_next] function, closing the current opened stream if needed. "
@@ -17274,13 +17351,13 @@ msgid ""
"out."
msgstr ""
-#: doc/classes/Directory.xml:139
+#: doc/classes/Directory.xml:141
msgid ""
"Closes the current stream opened with [method list_dir_begin] (whether it "
"has been fully processed with [method get_next] or not does not matter)."
msgstr ""
-#: doc/classes/Directory.xml:148
+#: doc/classes/Directory.xml:150
msgid ""
"Creates a directory. The argument can be relative to the current directory, "
"or an absolute path. The target directory should be placed in an already "
@@ -17289,7 +17366,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:158
+#: doc/classes/Directory.xml:160
msgid ""
"Creates a target directory and all necessary intermediate directories in its "
"path, by calling [method make_dir] recursively. The argument can be relative "
@@ -17297,7 +17374,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:168
+#: doc/classes/Directory.xml:170
msgid ""
"Opens an existing directory of the filesystem. The [code]path[/code] "
"argument can be within the project tree ([code]res://folder[/code]), the "
@@ -17306,7 +17383,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:178
+#: doc/classes/Directory.xml:180
msgid ""
"Deletes the target file or an empty directory. The argument can be relative "
"to the current directory, or an absolute path. If the target directory is "
@@ -17314,7 +17391,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:190
+#: doc/classes/Directory.xml:192
msgid ""
"Renames (move) the [code]from[/code] file to the [code]to[/code] "
"destination. Both arguments should be paths to files, either relative or "
@@ -17355,6 +17432,53 @@ msgid ""
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
+#: doc/classes/DisplayServer.xml:530
+msgid ""
+"Return the greatest scale factor of all screens.\n"
+"[b]Note:[/b] On macOS returned value is [code]2.0[/code] if there is at "
+"least one hiDPI (Retina) screen in the system, and [code]1.0[/code] in all "
+"other cases.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:557
+msgid ""
+"Return the scale factor of the specified screen by index.\n"
+"[b]Note:[/b] On macOS returned value is [code]2.0[/code] for hiDPI (Retina) "
+"screen, and [code]1.0[/code] for all other cases.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:630
+msgid ""
+"Returns the on-screen keyboard's height in pixels. Returns 0 if there is no "
+"keyboard or if it is currently hidden."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:637
+msgid "Hides the virtual keyboard if it is shown, does nothing otherwise."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:656
+msgid ""
+"Shows the virtual keyboard if the platform has one.\n"
+"[code]existing_text[/code] parameter is useful for implementing your own "
+"[LineEdit] or [TextEdit], as it tells the virtual keyboard what text has "
+"already been typed (the virtual keyboard uses it for auto-correct and "
+"predictions).\n"
+"[code]position[/code] parameter is the screen space [Rect2] of the edited "
+"text.\n"
+"[code]multiline[/code] parameter needs to be set to [code]true[/code] to be "
+"able to enter multiple lines of text, as in [TextEdit].\n"
+"[code]max_length[/code] limits the number of characters that can be entered "
+"if different from [code]-1[/code].\n"
+"[code]cursor_start[/code] can optionally define the current text cursor "
+"position if [code]cursor_end[/code] is not set.\n"
+"[code]cursor_start[/code] and [code]cursor_end[/code] can optionally define "
+"the current text selection.\n"
+"[b]Note:[/b] This method is implemented on Android, iOS and UWP."
+msgstr ""
+
#: doc/classes/DTLSServer.xml:4
msgid "Helper class to implement a DTLS server."
msgstr ""
@@ -17475,54 +17599,62 @@ msgstr ""
msgid "Adds a fallback font."
msgstr ""
-#: doc/classes/DynamicFont.xml:35
+#: doc/classes/DynamicFont.xml:33
+msgid ""
+"Returns a string containing all the characters available in the main and all "
+"the fallback fonts.\n"
+"If a given character is included in more than one font, it appears only once "
+"in the returned string."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:43
msgid "Returns the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:42
+#: doc/classes/DynamicFont.xml:50
msgid "Returns the number of fallback fonts."
msgstr ""
-#: doc/classes/DynamicFont.xml:51
+#: doc/classes/DynamicFont.xml:59
msgid ""
"Returns the spacing for the given [code]type[/code] (see [enum SpacingType])."
msgstr ""
-#: doc/classes/DynamicFont.xml:60
+#: doc/classes/DynamicFont.xml:68
msgid "Removes the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:71
+#: doc/classes/DynamicFont.xml:79
msgid "Sets the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:82
+#: doc/classes/DynamicFont.xml:90
msgid ""
"Sets the spacing for [code]type[/code] (see [enum SpacingType]) to "
"[code]value[/code] in pixels (not relative to the font size)."
msgstr ""
-#: doc/classes/DynamicFont.xml:88
+#: doc/classes/DynamicFont.xml:96
msgid "Extra spacing at the bottom in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:91
+#: doc/classes/DynamicFont.xml:99
msgid "Extra character spacing in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:94
+#: doc/classes/DynamicFont.xml:102
msgid "Extra space spacing in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:97
+#: doc/classes/DynamicFont.xml:105
msgid "Extra spacing at the top in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:100
+#: doc/classes/DynamicFont.xml:108
msgid "The font data."
msgstr ""
-#: doc/classes/DynamicFont.xml:103
+#: doc/classes/DynamicFont.xml:111
msgid ""
"The font outline's color.\n"
"[b]Note:[/b] It's recommended to leave this at the default value so that you "
@@ -17531,27 +17663,27 @@ msgid ""
"outline modulate theme item."
msgstr ""
-#: doc/classes/DynamicFont.xml:107
+#: doc/classes/DynamicFont.xml:115
msgid "The font outline's thickness in pixels (not relative to the font size)."
msgstr ""
-#: doc/classes/DynamicFont.xml:110
+#: doc/classes/DynamicFont.xml:118
msgid "The font size in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:115
+#: doc/classes/DynamicFont.xml:123
msgid "Spacing at the top."
msgstr ""
-#: doc/classes/DynamicFont.xml:118
+#: doc/classes/DynamicFont.xml:126
msgid "Spacing at the bottom."
msgstr ""
-#: doc/classes/DynamicFont.xml:121
+#: doc/classes/DynamicFont.xml:129
msgid "Character spacing."
msgstr ""
-#: doc/classes/DynamicFont.xml:124
+#: doc/classes/DynamicFont.xml:132
msgid "Space spacing."
msgstr ""
@@ -17933,7 +18065,12 @@ msgstr ""
msgid "Remitted if a resource is reimported."
msgstr ""
-#: doc/classes/EditorFileSystem.xml:106
+#: doc/classes/EditorFileSystem.xml:100
+msgid ""
+"Emitted if at least one resource is reloaded when the filesystem is scanned."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:107
msgid "Emitted if the source of any imported file changed."
msgstr ""
@@ -17975,29 +18112,43 @@ msgstr ""
msgid "Returns the path to the file at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:86
+#: doc/classes/EditorFileSystemDirectory.xml:70
+msgid ""
+"Returns the base class of the script class defined in the file at index "
+"[code]idx[/code]. If the file doesn't define a script class using the "
+"[code]class_name[/code] syntax, this will return an empty string."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:79
+msgid ""
+"Returns the name of the script class defined in the file at index [code]idx[/"
+"code]. If the file doesn't define a script class using the [code]class_name[/"
+"code] syntax, this will return an empty string."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:88
msgid "Returns the file extension of the file at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:93
+#: doc/classes/EditorFileSystemDirectory.xml:95
msgid "Returns the name of this directory."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:100
+#: doc/classes/EditorFileSystemDirectory.xml:102
msgid ""
"Returns the parent directory for this directory or [code]null[/code] if "
"called on a directory at [code]res://[/code] or [code]user://[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:107
+#: doc/classes/EditorFileSystemDirectory.xml:109
msgid "Returns the path to this directory."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:116
+#: doc/classes/EditorFileSystemDirectory.xml:118
msgid "Returns the subdirectory at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:123
+#: doc/classes/EditorFileSystemDirectory.xml:125
msgid "Returns the number of subdirectories in this directory."
msgstr ""
@@ -18088,45 +18239,72 @@ msgstr ""
msgid "Gets the unique name of the importer."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:92
+#: doc/classes/EditorImportPlugin.xml:86
+msgid ""
+"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. For example:\n"
+"[codeblock]\n"
+"func get_option_visibility(option, options):\n"
+" # Only show the lossy quality setting if the compression mode is set to "
+"\"Lossy\".\n"
+" if option == \"compress/lossy_quality\" and options.has(\"compress/mode"
+"\"):\n"
+" return int(options[\"compress/mode\"]) == COMPRESS_LOSSY\n"
+"\n"
+" return true\n"
+"[/codeblock]\n"
+"Return [code]true[/code] to make all options always visible."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:102
msgid ""
"Gets the number of initial presets defined by the plugin. Use [method "
"get_import_options] to get the default options for the preset and [method "
"get_preset_name] to get the name of the preset."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:101
+#: doc/classes/EditorImportPlugin.xml:111
msgid "Gets the name of the options preset at this index."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:108
+#: doc/classes/EditorImportPlugin.xml:118
msgid ""
"Gets the priority of this plugin for the recognized extension. Higher "
"priority plugins will be preferred. The default priority is [code]1.0[/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:115
+#: doc/classes/EditorImportPlugin.xml:125
msgid ""
"Gets the list of file extensions to associate with this loader (case-"
"insensitive). e.g. [code][\"obj\"][/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:122
+#: doc/classes/EditorImportPlugin.xml:132
msgid ""
"Gets the Godot resource type associated with this loader. e.g. [code]\"Mesh"
"\"[/code] or [code]\"Animation\"[/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:129
+#: doc/classes/EditorImportPlugin.xml:139
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:136
+#: doc/classes/EditorImportPlugin.xml:146
msgid "Gets the name to display in the import window."
msgstr ""
+#: doc/classes/EditorImportPlugin.xml:163
+msgid ""
+"Imports [code]source_file[/code] into [code]save_path[/code] with the import "
+"[code]options[/code] specified. The [code]platform_variants[/code] and "
+"[code]gen_files[/code] arrays will be modified by this function.\n"
+"This method must be overridden to do the actual importing work. See this "
+"class' description for an example of overriding this method."
+msgstr ""
+
#: doc/classes/EditorInspector.xml:4
msgid "A tab used to edit properties of the selected node."
msgstr ""
@@ -18142,6 +18320,58 @@ msgid ""
"the singleton using [method EditorInterface.get_inspector]."
msgstr ""
+#: doc/classes/EditorInspector.xml:17
+msgid ""
+"Refreshes the inspector.\n"
+"[b]Note:[/b] To save on CPU resources, calling this method will do nothing "
+"if the time specified in [code]docks/property_editor/auto_refresh_interval[/"
+"code] editor setting hasn't passed yet since this method was last called. "
+"(By default, this interval is set to 0.3 seconds.)"
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:30
+msgid ""
+"Emitted when the Edit button of an [Object] has been pressed in the "
+"inspector. This is mainly used in the remote scene tree inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:37
+msgid "Emitted when a property is removed from the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:44
+msgid "Emitted when a property is edited in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:51
+msgid ""
+"Emitted when a property is keyed in the inspector. Properties can be keyed "
+"by clicking the \"key\" icon next to a property when the Animation panel is "
+"toggled."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:58
+msgid "Emitted when a property is selected in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:67
+msgid ""
+"Emitted when a boolean property is toggled in the inspector.\n"
+"[b]Note:[/b] This signal is never emitted if the internal [code]autoclear[/"
+"code] property enabled. Since this property is always enabled in the editor "
+"inspector, this signal is never emitted by the editor itself."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:77
+msgid "Emitted when a resource is selected in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:82
+msgid ""
+"Emitted when a property that requires a restart to be applied is edited in "
+"the inspector. This is only used in the Project Settings and Editor Settings."
+msgstr ""
+
#: doc/classes/EditorInspectorPlugin.xml:4
msgid "Plugin for adding custom property editors on inspector."
msgstr ""
@@ -18220,91 +18450,155 @@ msgstr ""
#: doc/classes/EditorInterface.xml:26
msgid ""
-"Returns the main container of Godot editor's window. You can use it, for "
-"example, to retrieve the size of the container and place your controls "
+"Returns the main container of Godot editor's window. For example, you can "
+"use it to retrieve the size of the container and place your controls "
"accordingly."
msgstr ""
-#: doc/classes/EditorInterface.xml:39
+#: doc/classes/EditorInterface.xml:33
+msgid "Returns the current path being viewed in the [FileSystemDock]."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:40
msgid "Returns the edited (current) scene's root [Node]."
msgstr ""
-#: doc/classes/EditorInterface.xml:46
-msgid "Returns the [EditorSettings]."
+#: doc/classes/EditorInterface.xml:47
+msgid "Returns the editor's [EditorSettings] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:53
-msgid "Returns the editor [Viewport]."
+#: doc/classes/EditorInterface.xml:54
+msgid ""
+"Returns the main editor control. Use this as a parent for main screens.\n"
+"[b]Note:[/b] This returns the main editor control containing the whole "
+"editor, not the 2D or 3D viewports specifically."
msgstr ""
-#: doc/classes/EditorInterface.xml:72
+#: doc/classes/EditorInterface.xml:62
+msgid "Returns the editor's [FileSystemDock] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:69
+msgid "Returns the editor's [EditorInspector] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:76
msgid "Returns an [Array] with the file paths of the currently opened scenes."
msgstr ""
-#: doc/classes/EditorInterface.xml:79
-msgid "Returns the [EditorFileSystem]."
+#: doc/classes/EditorInterface.xml:83
+msgid ""
+"Returns the name of the scene that is being played. If no scene is currently "
+"being played, returns an empty string."
msgstr ""
-#: doc/classes/EditorInterface.xml:86
-msgid "Returns the [EditorResourcePreview]."
+#: doc/classes/EditorInterface.xml:90
+msgid "Returns the editor's [EditorFileSystem] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:93
-msgid "Returns the [ScriptEditor]."
+#: doc/classes/EditorInterface.xml:97
+msgid "Returns the editor's [EditorResourcePreview] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:106
-msgid "Returns the [EditorSelection]."
+#: doc/classes/EditorInterface.xml:104
+msgid "Returns the editor's [ScriptEditor] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:117
+#: doc/classes/EditorInterface.xml:111
msgid ""
-"Shows the given property on the given [code]object[/code] in the Editor's "
+"Returns the path of the directory currently selected in the "
+"[FileSystemDock]. If a file is selected, its base directory will be returned "
+"using [method String.get_base_dir] instead."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:118
+msgid "Returns the editor's [EditorSelection] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:129
+msgid ""
+"Shows the given property on the given [code]object[/code] in the editor's "
"Inspector dock."
msgstr ""
-#: doc/classes/EditorInterface.xml:126
+#: doc/classes/EditorInterface.xml:136
msgid ""
-"Returns the enabled status of a plugin. The plugin name is the same as its "
-"directory name."
+"Returns [code]true[/code] if a scene is currently being played, [code]false[/"
+"code] otherwise. Paused scenes are considered as being played."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:145
+msgid ""
+"Returns [code]true[/code] if the specified [code]plugin[/code] is enabled. "
+"The plugin name is the same as its directory name."
msgstr ""
-#: doc/classes/EditorInterface.xml:137
+#: doc/classes/EditorInterface.xml:156
msgid ""
"Returns mesh previews rendered at the given size as an [Array] of "
"[Texture2D]s."
msgstr ""
-#: doc/classes/EditorInterface.xml:146
+#: doc/classes/EditorInterface.xml:165
msgid "Opens the scene at the given path."
msgstr ""
-#: doc/classes/EditorInterface.xml:155
+#: doc/classes/EditorInterface.xml:172
+msgid "Plays the currently active scene."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:181
+msgid "Plays the scene specified by its filepath."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:188
+msgid "Plays the main scene."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:197
msgid "Reloads the scene at the given path."
msgstr ""
-#: doc/classes/EditorInterface.xml:162
+#: doc/classes/EditorInterface.xml:204
msgid ""
"Saves the scene. Returns either [code]OK[/code] or [code]ERR_CANT_CREATE[/"
"code] (see [@GlobalScope] constants)."
msgstr ""
-#: doc/classes/EditorInterface.xml:173
+#: doc/classes/EditorInterface.xml:215
msgid "Saves the scene as a file at [code]path[/code]."
msgstr ""
-#: doc/classes/EditorInterface.xml:182
+#: doc/classes/EditorInterface.xml:224
msgid ""
"Selects the file, with the path provided by [code]file[/code], in the "
"FileSystem dock."
msgstr ""
-#: doc/classes/EditorInterface.xml:201
+#: doc/classes/EditorInterface.xml:233
+msgid ""
+"Sets the editor's current main screen to the one specified in [code]name[/"
+"code]. [code]name[/code] must match the text of the tab in question exactly "
+"([code]2D[/code], [code]3D[/code], [code]Script[/code], [code]AssetLib[/"
+"code])."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:244
msgid ""
"Sets the enabled status of a plugin. The plugin name is the same as its "
"directory name."
msgstr ""
+#: doc/classes/EditorInterface.xml:251
+msgid "Stops the scene that is currently playing."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:257
+msgid ""
+"If [code]true[/code], enables distraction-free mode which hides side docks "
+"to increase the space available for the main view."
+msgstr ""
+
#: doc/classes/EditorNode3DGizmo.xml:4
msgid "Custom gizmo for editing Node3D objects."
msgstr ""
@@ -18316,14 +18610,20 @@ msgid ""
"information."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:26
+#: doc/classes/EditorNode3DGizmo.xml:18
+msgid ""
+"Adds the specified [code]segments[/code] to the gizmo's collision shape for "
+"picking. Call this function during [method redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:27
msgid ""
"Adds collision triangles to the gizmo for picking. A [TriangleMesh] can be "
"generated from a regular [Mesh] too. Call this function during [method "
"redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:41
+#: doc/classes/EditorNode3DGizmo.xml:42
msgid ""
"Adds a list of handles (points) which can be used to deform the object being "
"edited.\n"
@@ -18331,20 +18631,33 @@ msgid ""
"handles. Call this function during [method redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:57
+#: doc/classes/EditorNode3DGizmo.xml:58
msgid ""
"Adds lines to the gizmo (as sets of 2 points), with a given material. The "
"lines are used for visualizing the gizmo. Call this function during [method "
"redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:84
+#: doc/classes/EditorNode3DGizmo.xml:73
+msgid ""
+"Adds a mesh to the gizmo with the specified [code]billboard[/code] state, "
+"[code]skeleton[/code] and [code]material[/code]. If [code]billboard[/code] "
+"is [code]true[/code], the mesh will rotate to always face the camera. Call "
+"this function during [method redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:86
msgid ""
"Adds an unscaled billboard for visualization. Call this function during "
"[method redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:103
+#: doc/classes/EditorNode3DGizmo.xml:93
+msgid ""
+"Removes everything in the gizmo including meshes, collisions and handles."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:106
msgid ""
"Commit a handle being edited (handles must have been previously added by "
"[method add_handles]).\n"
@@ -18352,40 +18665,42 @@ msgid ""
"restore the edited value to the original is provided."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:113
+#: doc/classes/EditorNode3DGizmo.xml:116
msgid ""
"Gets the name of an edited handle (handles must have been previously added "
"by [method add_handles]).\n"
"Handles can be named for reference to the user when editing."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:123
+#: doc/classes/EditorNode3DGizmo.xml:126
msgid ""
"Gets actual value of a handle. This value can be anything and used for "
"eventually undoing the motion when calling [method commit_handle]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:130
+#: doc/classes/EditorNode3DGizmo.xml:133
msgid ""
"Returns the [EditorNode3DGizmoPlugin] that owns this gizmo. It's useful to "
"retrieve materials using [method EditorNode3DGizmoPlugin.get_material]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:137
+#: doc/classes/EditorNode3DGizmo.xml:140
msgid "Returns the Node3D node associated with this gizmo."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:146
-msgid "Gets whether a handle is highlighted or not."
+#: doc/classes/EditorNode3DGizmo.xml:149
+msgid ""
+"Returns [code]true[/code] if the handle at index [code]index[/code] is "
+"highlighted by being hovered with the mouse."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:153
+#: doc/classes/EditorNode3DGizmo.xml:156
msgid ""
-"This function is called when the Node3D this gizmo refers to changes (the "
+"This function is called when the [Node3D] this gizmo refers to changes (the "
"[method Node3D.update_gizmo] is called)."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:166
+#: doc/classes/EditorNode3DGizmo.xml:169
msgid ""
"This function is used when the user drags a gizmo handle (previously added "
"with [method add_handles]) in screen coordinates.\n"
@@ -18393,6 +18708,18 @@ msgid ""
"raycasts."
msgstr ""
+#: doc/classes/EditorNode3DGizmo.xml:179
+msgid ""
+"Sets the gizmo's hidden state. If [code]true[/code], the gizmo will be "
+"hidden. If [code]false[/code], it will be shown."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:188
+msgid ""
+"Sets the reference [Node3D] node for the gizmo. [code]node[/code] must "
+"inherit from [Node3D]."
+msgstr ""
+
#: doc/classes/EditorNode3DGizmoPlugin.xml:4
msgid "Used by the editor to define Node3D gizmo types."
msgstr ""
@@ -18485,7 +18812,17 @@ msgid ""
"visibility menu."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:150
+#: doc/classes/EditorNode3DGizmoPlugin.xml:142
+msgid ""
+"Override this method to set the gizmo's priority. Higher values correspond "
+"to higher priority. If a gizmo with higher priority conflicts with another "
+"gizmo, only the gizmo with higher priority will be used.\n"
+"All built-in editor gizmos return a priority of [code]-1[/code]. If not "
+"overridden, this method will return [code]0[/code], which means custom "
+"gizmos will automatically override built-in gizmos."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:152
msgid ""
"Override this method to define which Node3D nodes have a gizmo from this "
"plugin. Whenever a [Node3D] node is added to a scene this method is called, "
@@ -18493,25 +18830,25 @@ msgid ""
"assigned and is added to this plugin's list of active gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:161
+#: doc/classes/EditorNode3DGizmoPlugin.xml:163
msgid ""
"Gets whether a handle is highlighted or not. Called for this plugin's active "
"gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:168
+#: doc/classes/EditorNode3DGizmoPlugin.xml:170
msgid ""
"Override this method to define whether Node3D with this gizmo should be "
"selecteble even when the gizmo is hidden."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:177
+#: doc/classes/EditorNode3DGizmoPlugin.xml:179
msgid ""
"Callback to redraw the provided gizmo. Called for this plugin's active "
"gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:192
+#: doc/classes/EditorNode3DGizmoPlugin.xml:194
msgid ""
"Update the value of a handle after it has been updated. Called for this "
"plugin's active gizmos."
@@ -18598,7 +18935,13 @@ msgid ""
"should be cleaned up using [code]remove_tool_menu_item(name)[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:149
+#: doc/classes/EditorPlugin.xml:151
+msgid ""
+"Registers a custom translation parser plugin for extracting translatable "
+"strings from custom files."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:158
msgid ""
"This method is called when the editor is about to save the project, switch "
"to another tab, etc. It asks the plugin to apply any pending state changes "
@@ -18607,32 +18950,32 @@ msgid ""
"must apply the shader code being written by the user to the object."
msgstr ""
-#: doc/classes/EditorPlugin.xml:163
+#: doc/classes/EditorPlugin.xml:172
msgid ""
"Clear all the state and reset the object being edited to zero. This ensures "
"your plugin does not keep editing a currently existing node, or a node from "
"the wrong scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:170
+#: doc/classes/EditorPlugin.xml:179
msgid ""
"Called by the engine when the user disables the [EditorPlugin] in the Plugin "
"tab of the project settings window."
msgstr ""
-#: doc/classes/EditorPlugin.xml:179
+#: doc/classes/EditorPlugin.xml:188
msgid ""
"This function is used for plugins that edit specific object types (nodes or "
"resources). It requests the editor to edit the given object."
msgstr ""
-#: doc/classes/EditorPlugin.xml:186
+#: doc/classes/EditorPlugin.xml:195
msgid ""
"Called by the engine when the user enables the [EditorPlugin] in the Plugin "
"tab of the project settings window."
msgstr ""
-#: doc/classes/EditorPlugin.xml:211
+#: doc/classes/EditorPlugin.xml:220
msgid ""
"Called when there is a root node in the current edited scene, [method "
"handles] is implemented and an [InputEvent] happens in the 2D viewport. "
@@ -18657,7 +19000,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:237
+#: doc/classes/EditorPlugin.xml:246
msgid ""
"Called when there is a root node in the current edited scene, [method "
"handles] is implemented and an [InputEvent] happens in the 3D viewport. "
@@ -18682,20 +19025,20 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:259
+#: doc/classes/EditorPlugin.xml:268
msgid ""
"This is for editors that edit script-based objects. You can return a list of "
"breakpoints in the format ([code]script:line[/code]), for example: "
"[code]res://path_to_script.gd:25[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:266
+#: doc/classes/EditorPlugin.xml:275
msgid ""
"Returns the [EditorInterface] object that gives you control over Godot "
"editor's window and its functionalities."
msgstr ""
-#: doc/classes/EditorPlugin.xml:273
+#: doc/classes/EditorPlugin.xml:282
msgid ""
"Override this method in your plugin to return a [Texture2D] in order to give "
"it an icon.\n"
@@ -18713,7 +19056,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:289
+#: doc/classes/EditorPlugin.xml:298
msgid ""
"Override this method in your plugin to provide the name of the plugin when "
"displayed in the Godot editor.\n"
@@ -18721,33 +19064,33 @@ msgid ""
"of the \"2D\", \"3D\", \"Script\", and \"AssetLib\" buttons."
msgstr ""
-#: doc/classes/EditorPlugin.xml:297
+#: doc/classes/EditorPlugin.xml:306
msgid ""
"Gets the Editor's dialogue used for making scripts.\n"
"[b]Note:[/b] Users can configure it before use."
msgstr ""
-#: doc/classes/EditorPlugin.xml:305
+#: doc/classes/EditorPlugin.xml:314
msgid ""
"Gets the state of your plugin editor. This is used when saving the scene (so "
"state is kept when opening it again) and for switching tabs (so state can be "
"restored when the tab returns)."
msgstr ""
-#: doc/classes/EditorPlugin.xml:312
+#: doc/classes/EditorPlugin.xml:321
msgid ""
"Gets the undo/redo object. Most actions in the editor can be undoable, so "
"use this object to make sure this happens when it's worth it."
msgstr ""
-#: doc/classes/EditorPlugin.xml:321
+#: doc/classes/EditorPlugin.xml:330
msgid ""
"Gets the GUI layout of the plugin. This is used to save the project's editor "
"layout when [method queue_save_layout] is called or the editor layout was "
"changed(For example changing the position of a dock)."
msgstr ""
-#: doc/classes/EditorPlugin.xml:330
+#: doc/classes/EditorPlugin.xml:339
msgid ""
"Implement this function if your plugin edits a specific type of object "
"(Resource or Node). If you return [code]true[/code], then you will get the "
@@ -18757,14 +19100,14 @@ msgid ""
"be called too."
msgstr ""
-#: doc/classes/EditorPlugin.xml:337
+#: doc/classes/EditorPlugin.xml:346
msgid ""
"Returns [code]true[/code] if this is a main screen editor plugin (it goes in "
"the workspace selector together with [b]2D[/b], [b]3D[/b], [b]Script[/b] and "
"[b]AssetLib[/b])."
msgstr ""
-#: doc/classes/EditorPlugin.xml:360
+#: doc/classes/EditorPlugin.xml:369
msgid ""
"This function will be called when the editor is requested to become visible. "
"It is used for plugins that edit a specific object type.\n"
@@ -18772,85 +19115,89 @@ msgid ""
"manually."
msgstr ""
-#: doc/classes/EditorPlugin.xml:368
+#: doc/classes/EditorPlugin.xml:377
msgid "Queue save the project's editor layout."
msgstr ""
-#: doc/classes/EditorPlugin.xml:377
+#: doc/classes/EditorPlugin.xml:386
msgid "Removes an Autoload [code]name[/code] from the list."
msgstr ""
-#: doc/classes/EditorPlugin.xml:386
+#: doc/classes/EditorPlugin.xml:395
msgid ""
"Removes the control from the bottom panel. You have to manually [method Node."
"queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:397
+#: doc/classes/EditorPlugin.xml:406
msgid ""
"Removes the control from the specified container. You have to manually "
"[method Node.queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:406
+#: doc/classes/EditorPlugin.xml:415
msgid ""
"Removes the control from the dock. You have to manually [method Node."
"queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:415
+#: doc/classes/EditorPlugin.xml:424
msgid "Removes a custom type added by [method add_custom_type]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:464
+#: doc/classes/EditorPlugin.xml:473
msgid "Removes a menu [code]name[/code] from [b]Project > Tools[/b]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:471
+#: doc/classes/EditorPlugin.xml:482
+msgid "Removes a registered custom translation parser plugin."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:489
msgid ""
"This method is called after the editor saves the project or when it's "
"closed. It asks the plugin to save edited external scenes/resources."
msgstr ""
-#: doc/classes/EditorPlugin.xml:484
+#: doc/classes/EditorPlugin.xml:502
msgid ""
"Use this method if you always want to receive inputs from 3D view screen "
"inside [method forward_spatial_gui_input]. It might be especially usable if "
"your plugin will want to use raycast in the scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:493
+#: doc/classes/EditorPlugin.xml:511
msgid "Restore the state saved by [method get_state]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:502
+#: doc/classes/EditorPlugin.xml:520
msgid "Restore the plugin GUI layout saved by [method get_window_layout]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:509
+#: doc/classes/EditorPlugin.xml:527
msgid "Updates the overlays of the editor (2D/3D) viewport."
msgstr ""
-#: doc/classes/EditorPlugin.xml:518
+#: doc/classes/EditorPlugin.xml:536
msgid ""
"Emitted when user changes the workspace ([b]2D[/b], [b]3D[/b], [b]Script[/"
"b], [b]AssetLib[/b]). Also works with custom screens defined by plugins."
msgstr ""
-#: doc/classes/EditorPlugin.xml:531
+#: doc/classes/EditorPlugin.xml:549
msgid ""
"Emitted when the scene is changed in the editor. The argument will return "
"the root node of the scene that has just become active. If this scene is new "
"and empty, the argument will be [code]null[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:538
+#: doc/classes/EditorPlugin.xml:556
msgid ""
"Emitted when user closes a scene. The argument is file path to a closed "
"scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:584
+#: doc/classes/EditorPlugin.xml:602
msgid "Represents the size of the [enum DockSlot] enum."
msgstr ""
@@ -18905,64 +19252,83 @@ msgid "When this virtual function is called, you must update your editor."
msgstr ""
#: doc/classes/EditorProperty.xml:76
-msgid "Used by the inspector, set when property is checkable."
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is "
+"checkable."
msgstr ""
#: doc/classes/EditorProperty.xml:79
-msgid "Used by the inspector, when the property is checked."
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is checked."
msgstr ""
-#: doc/classes/EditorProperty.xml:84
-msgid "Used by the inspector, when the property must draw with error color."
+#: doc/classes/EditorProperty.xml:82
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property can be "
+"deleted by the user."
msgstr ""
-#: doc/classes/EditorProperty.xml:87
-msgid "Used by the inspector, when the property can add keys for animation."
+#: doc/classes/EditorProperty.xml:85
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property must draw "
+"with error color. This is used for editable children's properties."
msgstr ""
-#: doc/classes/EditorProperty.xml:90
-msgid "Sets this property to change the label (if you want to show one)."
+#: doc/classes/EditorProperty.xml:88
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property can add "
+"keys for animation."
msgstr ""
-#: doc/classes/EditorProperty.xml:93
-msgid "Used by the inspector, when the property is read-only."
+#: doc/classes/EditorProperty.xml:91
+msgid "Set this property to change the label (if you want to show one)."
msgstr ""
-#: doc/classes/EditorProperty.xml:103
+#: doc/classes/EditorProperty.xml:94
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is read-"
+"only."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:104
msgid ""
"Emit it if you want multiple properties modified at the same time. Do not "
"use if added via [method EditorInspectorPlugin.parse_property]."
msgstr ""
-#: doc/classes/EditorProperty.xml:112
+#: doc/classes/EditorProperty.xml:113
msgid "Used by sub-inspectors. Emit it if what was selected was an Object ID."
msgstr ""
-#: doc/classes/EditorProperty.xml:121
+#: doc/classes/EditorProperty.xml:122
msgid ""
"Do not emit this manually, use the [method emit_changed] method instead."
msgstr ""
-#: doc/classes/EditorProperty.xml:130
+#: doc/classes/EditorProperty.xml:131
msgid "Emitted when a property was checked. Used internally."
msgstr ""
-#: doc/classes/EditorProperty.xml:143
+#: doc/classes/EditorProperty.xml:138
+msgid "Emitted when a property was deleted. Used internally."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:145
msgid ""
"Emit it if you want to add this value as an animation key (check for keying "
"being enabled first)."
msgstr ""
-#: doc/classes/EditorProperty.xml:152
+#: doc/classes/EditorProperty.xml:154
msgid "Emit it if you want to key a property with a single value."
msgstr ""
-#: doc/classes/EditorProperty.xml:161
+#: doc/classes/EditorProperty.xml:163
msgid ""
"If you want a sub-resource to be edited, emit this signal with the resource."
msgstr ""
-#: doc/classes/EditorProperty.xml:170
+#: doc/classes/EditorProperty.xml:172
msgid "Emitted when selected. Used internally."
msgstr ""
@@ -19247,17 +19613,26 @@ msgstr ""
msgid ""
"Object that holds the project-independent editor settings. These settings "
"are generally visible in the [b]Editor > Editor Settings[/b] menu.\n"
-"Accessing the settings is done by using the regular [Object] API, such as:\n"
-"[codeblock]\n"
-"settings.set(prop,value)\n"
-"settings.get(prop)\n"
-"list_of_settings = settings.get_property_list()\n"
+"Property names use slash delimiters to distinguish sections. Setting values "
+"can be of any [Variant] type. It's recommended to use [code]snake_case[/"
+"code] for editor settings to be consistent with the Godot editor itself.\n"
+"Accessing the settings can be done using the following methods, such as:\n"
+"[codeblock]\n"
+"# `settings.set(\"some/property\", value)` also works as this class "
+"overrides `_set()` internally.\n"
+"settings.set_setting(\"some/property\",value)\n"
+"\n"
+"# `settings.get(\"some/property\", value)` also works as this class "
+"overrides `_get()` internally.\n"
+"settings.get_setting(\"some/property\")\n"
+"\n"
+"var list_of_settings = settings.get_property_list()\n"
"[/codeblock]\n"
"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
"the singleton using [method EditorInterface.get_editor_settings]."
msgstr ""
-#: doc/classes/EditorSettings.xml:25
+#: doc/classes/EditorSettings.xml:30
msgid ""
"Adds a custom property info to a property. The dictionary must contain:\n"
"- [code]name[/code]: [String] (the name of the property)\n"
@@ -19279,52 +19654,173 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorSettings.xml:50
-msgid "Erase a given setting (pass full property path)."
+#: doc/classes/EditorSettings.xml:55
+msgid "Erases the setting whose name is specified by [code]property[/code]."
msgstr ""
-#: doc/classes/EditorSettings.xml:57
-msgid "Gets the list of favorite files and directories for this project."
+#: doc/classes/EditorSettings.xml:62
+msgid "Returns the list of favorite files and directories for this project."
msgstr ""
-#: doc/classes/EditorSettings.xml:76
+#: doc/classes/EditorSettings.xml:75
msgid ""
-"Gets the specific project settings path. Projects all have a unique sub-"
-"directory inside the settings path where project specific settings are saved."
+"Returns project-specific metadata for the [code]section[/code] and "
+"[code]key[/code] specified. If the metadata doesn't exist, [code]default[/"
+"code] will be returned instead. See also [method set_project_metadata]."
msgstr ""
-#: doc/classes/EditorSettings.xml:83
+#: doc/classes/EditorSettings.xml:82
msgid ""
-"Gets the list of recently visited folders in the file dialog for this "
+"Returns the project-specific settings path. Projects all have a unique "
+"subdirectory inside the settings path where project-specific settings are "
+"saved."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:89
+msgid ""
+"Returns the list of recently visited folders in the file dialog for this "
"project."
msgstr ""
#: doc/classes/EditorSettings.xml:98
msgid ""
+"Returns the value of the setting specified by [code]name[/code]. This is "
+"equivalent to using [method Object.get] on the EditorSettings instance."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:105
+msgid ""
"Gets the global settings path for the engine. Inside this path, you can find "
"some standard paths such as:\n"
"[code]settings/tmp[/code] - Used for temporary storage of files\n"
"[code]settings/templates[/code] - Where export templates are located"
msgstr ""
-#: doc/classes/EditorSettings.xml:133
+#: doc/classes/EditorSettings.xml:116
+msgid ""
+"Returns [code]true[/code] if the setting specified by [code]name[/code] "
+"exists, [code]false[/code] otherwise."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:125
+msgid ""
+"Returns [code]true[/code] if the setting specified by [code]name[/code] can "
+"have its value reverted to the default value, [code]false[/code] otherwise. "
+"When this method returns [code]true[/code], a Revert button will display "
+"next to the setting in the Editor Settings."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:134
+msgid ""
+"Returns the default value of the setting specified by [code]name[/code]. "
+"This is the value that would be applied when clicking the Revert button in "
+"the Editor Settings."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:143
msgid "Sets the list of favorite files and directories for this project."
msgstr ""
-#: doc/classes/EditorSettings.xml:166
+#: doc/classes/EditorSettings.xml:156
+msgid ""
+"Sets the initial value of the setting specified by [code]name[/code] to "
+"[code]value[/code]. This is used to provide a value for the Revert button in "
+"the Editor Settings. If [code]update_current[/code] is true, the current "
+"value of the setting will be set to [code]value[/code] as well."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:169
+msgid ""
+"Sets project-specific metadata with the [code]section[/code], [code]key[/"
+"code] and [code]data[/code] specified. This metadata is stored outside the "
+"project folder and therefore won't be checked into version control. See also "
+"[method get_project_metadata]."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:178
msgid ""
"Sets the list of recently visited folders in the file dialog for this "
"project."
msgstr ""
-#: doc/classes/EditorSettings.xml:183
-msgid "Emitted when editor settings change."
+#: doc/classes/EditorSettings.xml:189
+msgid ""
+"Sets the [code]value[/code] of the setting specified by [code]name[/code]. "
+"This is equivalent to using [method Object.set] on the EditorSettings "
+"instance."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:196
+msgid "Emitted after any editor setting has changed."
msgstr ""
-#: doc/classes/EditorSettings.xml:189
+#: doc/classes/EditorSettings.xml:202
+msgid ""
+"Emitted after any editor setting has changed. It's used by various editor "
+"plugins to update their visuals on theme changes or logic on configuration "
+"changes."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:4
+msgid ""
+"Plugin for adding custom parsers to extract strings that are to be "
+"translated from custom files (.csv, .json etc.)."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:7
+msgid ""
+"Plugins are registered via [method EditorPlugin."
+"add_translation_parser_plugin] method. To define the parsing and string "
+"extraction logic, override the [method parse_file] method in script.\n"
+"The extracted strings will be written into a POT file selected by user under "
+"\"POT Generation\" in \"Localization\" tab in \"Project Settings\" menu.\n"
+"Below shows an example of a custom parser that extracts strings in a CSV "
+"file to write into a POT.\n"
+"[codeblock]\n"
+"tool\n"
+"extends EditorTranslationParserPlugin\n"
+"\n"
+"\n"
+"func parse_file(path, extracted_strings):\n"
+" var file = File.new()\n"
+" file.open(path, File.READ)\n"
+" var text = file.get_as_text()\n"
+" var split_strs = text.split(\",\", false, 0)\n"
+" for s in split_strs:\n"
+" extracted_strings.append(s)\n"
+" #print(\"Extracted string: \" + s)\n"
+"\n"
+"\n"
+"func get_recognized_extensions():\n"
+" return [\"csv\"]\n"
+"[/codeblock]\n"
+"[b]Note:[/b] If you override parsing logic for standard script types "
+"(GDScript, C#, etc.), it would be better to load the [code]path[/code] "
+"argument using [method ResourceLoader.load]. This is because built-in "
+"scripts are loaded as [Resource] type, not [File] type.\n"
+"For example:\n"
+"[codeblock]\n"
+"func parse_file(path, extracted_strings):\n"
+" var res = ResourceLoader.load(path, \"Script\")\n"
+" var text = res.get_source_code()\n"
+" # Parsing logic.\n"
+"\n"
+"\n"
+"func get_recognized_extensions():\n"
+" return [\"gd\"]\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:48
+msgid ""
+"Gets the list of file extensions to associate with this parser, e.g. [code]"
+"[\"csv\"][/code]."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:59
msgid ""
-"Emitted when editor settings change. It used by various editor plugins to "
-"update their visuals on theme changes or logic on configuration changes."
+"Override this method to define a custom parsing logic to extract the "
+"translatable strings."
msgstr ""
#: doc/classes/EditorVCSInterface.xml:4
@@ -19935,15 +20431,15 @@ msgid ""
"to 1.3 to compensate for the lack of HDR rendering."
msgstr ""
-#: doc/classes/Environment.xml:190
+#: doc/classes/Environment.xml:214
msgid "The [Sky] resource used for this [Environment]."
msgstr ""
-#: doc/classes/Environment.xml:197
+#: doc/classes/Environment.xml:221
msgid "The depth tolerance for screen-space reflections."
msgstr ""
-#: doc/classes/Environment.xml:200
+#: doc/classes/Environment.xml:224
msgid ""
"If [code]true[/code], screen-space reflections are enabled. Screen-space "
"reflections are more accurate than reflections from [GIProbe]s or "
@@ -19951,48 +20447,48 @@ msgid ""
"others."
msgstr ""
-#: doc/classes/Environment.xml:203
+#: doc/classes/Environment.xml:227
msgid ""
"The fade-in distance for screen-space reflections. Affects the area from the "
"reflected material to the screen-space reflection)."
msgstr ""
-#: doc/classes/Environment.xml:206
+#: doc/classes/Environment.xml:230
msgid ""
"The fade-out distance for screen-space reflections. Affects the area from "
"the screen-space reflection to the \"global\" reflection."
msgstr ""
-#: doc/classes/Environment.xml:209
+#: doc/classes/Environment.xml:233
msgid ""
"The maximum number of steps for screen-space reflections. Higher values are "
"slower."
msgstr ""
-#: doc/classes/Environment.xml:212
+#: doc/classes/Environment.xml:236
msgid ""
"The screen-space ambient occlusion intensity on materials that have an AO "
"texture defined. Values higher than [code]0[/code] will make the SSAO effect "
"visible in areas darkened by AO textures."
msgstr ""
-#: doc/classes/Environment.xml:215
+#: doc/classes/Environment.xml:239
msgid ""
"The screen-space ambient occlusion bias. This should be kept high enough to "
"prevent \"smooth\" curves from being affected by ambient occlusion."
msgstr ""
-#: doc/classes/Environment.xml:218
+#: doc/classes/Environment.xml:242
msgid ""
"The screen-space ambient occlusion blur quality. See [enum SSAOBlur] for "
"possible values."
msgstr ""
-#: doc/classes/Environment.xml:221
+#: doc/classes/Environment.xml:245
msgid "The screen-space ambient occlusion edge sharpness."
msgstr ""
-#: doc/classes/Environment.xml:224
+#: doc/classes/Environment.xml:248
msgid ""
"If [code]true[/code], the screen-space ambient occlusion effect is enabled. "
"This darkens objects' corners and cavities to simulate ambient light not "
@@ -20003,13 +20499,13 @@ msgid ""
"issues."
msgstr ""
-#: doc/classes/Environment.xml:227
+#: doc/classes/Environment.xml:251
msgid ""
"The primary screen-space ambient occlusion intensity. See also [member "
"ssao_radius]."
msgstr ""
-#: doc/classes/Environment.xml:230
+#: doc/classes/Environment.xml:254
msgid ""
"The screen-space ambient occlusion intensity in direct light. In real life, "
"ambient occlusion only applies to indirect light, which means its effects "
@@ -20017,46 +20513,46 @@ msgid ""
"the SSAO effect visible in direct light."
msgstr ""
-#: doc/classes/Environment.xml:233
+#: doc/classes/Environment.xml:257
msgid "The primary screen-space ambient occlusion radius."
msgstr ""
-#: doc/classes/Environment.xml:236
+#: doc/classes/Environment.xml:260
msgid "The default exposure used for tonemapping."
msgstr ""
-#: doc/classes/Environment.xml:239
+#: doc/classes/Environment.xml:263
msgid ""
"The tonemapping mode to use. Tonemapping is the process that \"converts\" "
"HDR values to be suitable for rendering on a LDR display. (Godot doesn't "
"support rendering on HDR displays yet.)"
msgstr ""
-#: doc/classes/Environment.xml:242
+#: doc/classes/Environment.xml:266
msgid ""
"The white reference value for tonemapping. Only effective if the [member "
"tonemap_mode] isn't set to [constant TONE_MAPPER_LINEAR]."
msgstr ""
-#: doc/classes/Environment.xml:247
+#: doc/classes/Environment.xml:271
msgid ""
"Clears the background using the clear color defined in [member "
"ProjectSettings.rendering/environment/default_clear_color]."
msgstr ""
-#: doc/classes/Environment.xml:250
+#: doc/classes/Environment.xml:274
msgid "Clears the background using a custom clear color."
msgstr ""
-#: doc/classes/Environment.xml:253
+#: doc/classes/Environment.xml:277
msgid "Displays a user-defined sky in the background."
msgstr ""
-#: doc/classes/Environment.xml:256
+#: doc/classes/Environment.xml:280
msgid "Displays a [CanvasLayer] in the background."
msgstr ""
-#: doc/classes/Environment.xml:259
+#: doc/classes/Environment.xml:283
msgid ""
"Keeps on screen every pixel drawn in the background. This is the fastest "
"background mode, but it can only be safely used in fully-interior scenes (no "
@@ -20064,107 +20560,107 @@ msgid ""
"is visible, \"ghost trail\" artifacts will be visible when moving the camera."
msgstr ""
-#: doc/classes/Environment.xml:262 doc/classes/RenderingServer.xml:3446
+#: doc/classes/Environment.xml:286 doc/classes/RenderingServer.xml:3457
msgid "Displays a camera feed in the background."
msgstr ""
-#: doc/classes/Environment.xml:265
+#: doc/classes/Environment.xml:289
msgid "Represents the size of the [enum BGMode] enum."
msgstr ""
-#: doc/classes/Environment.xml:268 doc/classes/RenderingServer.xml:3452
+#: doc/classes/Environment.xml:292 doc/classes/RenderingServer.xml:3463
msgid ""
"Gather ambient light from whichever source is specified as the background."
msgstr ""
-#: doc/classes/Environment.xml:271 doc/classes/RenderingServer.xml:3455
+#: doc/classes/Environment.xml:295 doc/classes/RenderingServer.xml:3466
msgid "Disable ambient light."
msgstr ""
-#: doc/classes/Environment.xml:274 doc/classes/RenderingServer.xml:3458
+#: doc/classes/Environment.xml:298 doc/classes/RenderingServer.xml:3469
msgid "Specify a specific [Color] for ambient light."
msgstr ""
-#: doc/classes/Environment.xml:277 doc/classes/RenderingServer.xml:3461
+#: doc/classes/Environment.xml:301 doc/classes/RenderingServer.xml:3472
msgid ""
"Gather ambient light from the [Sky] regardless of what the background is."
msgstr ""
-#: doc/classes/Environment.xml:280 doc/classes/RenderingServer.xml:3464
+#: doc/classes/Environment.xml:304 doc/classes/RenderingServer.xml:3475
msgid "Use the background for reflections."
msgstr ""
-#: doc/classes/Environment.xml:283 doc/classes/RenderingServer.xml:3467
+#: doc/classes/Environment.xml:307 doc/classes/RenderingServer.xml:3478
msgid "Disable reflections."
msgstr ""
-#: doc/classes/Environment.xml:286 doc/classes/RenderingServer.xml:3470
+#: doc/classes/Environment.xml:310 doc/classes/RenderingServer.xml:3481
msgid "Use the [Sky] for reflections regardless of what the background is."
msgstr ""
-#: doc/classes/Environment.xml:289 doc/classes/RenderingServer.xml:3473
+#: doc/classes/Environment.xml:313
+msgid ""
+"Linear tonemapper operator. Reads the linear data and passes it on "
+"unmodified."
+msgstr ""
+
+#: doc/classes/Environment.xml:316
+msgid ""
+"Reinhardt tonemapper operator. Performs a variation on rendered pixels' "
+"colors by this formula: [code]color = color / (1 + color)[/code]."
+msgstr ""
+
+#: doc/classes/Environment.xml:319
+msgid "Filmic tonemapper operator."
+msgstr ""
+
+#: doc/classes/Environment.xml:322
+msgid "Academy Color Encoding System tonemapper operator."
+msgstr ""
+
+#: doc/classes/Environment.xml:325 doc/classes/RenderingServer.xml:3484
msgid ""
"Additive glow blending mode. Mostly used for particles, glows (bloom), lens "
"flare, bright sources."
msgstr ""
-#: doc/classes/Environment.xml:292 doc/classes/RenderingServer.xml:3476
+#: doc/classes/Environment.xml:328 doc/classes/RenderingServer.xml:3487
msgid ""
"Screen glow blending mode. Increases brightness, used frequently with bloom."
msgstr ""
-#: doc/classes/Environment.xml:295 doc/classes/RenderingServer.xml:3479
+#: doc/classes/Environment.xml:331 doc/classes/RenderingServer.xml:3490
msgid ""
"Soft light glow blending mode. Modifies contrast, exposes shadows and "
"highlights (vivid bloom)."
msgstr ""
-#: doc/classes/Environment.xml:298 doc/classes/RenderingServer.xml:3482
+#: doc/classes/Environment.xml:334 doc/classes/RenderingServer.xml:3493
msgid ""
"Replace glow blending mode. Replaces all pixels' color by the glow value. "
"This can be used to simulate a full-screen blur effect by tweaking the glow "
"parameters to match the original image's brightness."
msgstr ""
-#: doc/classes/Environment.xml:301 doc/classes/RenderingServer.xml:3485
+#: doc/classes/Environment.xml:337 doc/classes/RenderingServer.xml:3496
msgid ""
"Mixes the glow with the underlying color to avoid increasing brightness as "
"much while still maintaining a glow effect."
msgstr ""
-#: doc/classes/Environment.xml:304
-msgid ""
-"Linear tonemapper operator. Reads the linear data and passes it on "
-"unmodified."
-msgstr ""
-
-#: doc/classes/Environment.xml:307
-msgid ""
-"Reinhardt tonemapper operator. Performs a variation on rendered pixels' "
-"colors by this formula: [code]color = color / (1 + color)[/code]."
-msgstr ""
-
-#: doc/classes/Environment.xml:310
-msgid "Filmic tonemapper operator."
-msgstr ""
-
-#: doc/classes/Environment.xml:313
-msgid "Academy Color Encoding System tonemapper operator."
-msgstr ""
-
-#: doc/classes/Environment.xml:316
+#: doc/classes/Environment.xml:340
msgid "No blur for the screen-space ambient occlusion effect (fastest)."
msgstr ""
-#: doc/classes/Environment.xml:319
+#: doc/classes/Environment.xml:343
msgid "1×1 blur for the screen-space ambient occlusion effect."
msgstr ""
-#: doc/classes/Environment.xml:322
+#: doc/classes/Environment.xml:346
msgid "2×2 blur for the screen-space ambient occlusion effect."
msgstr ""
-#: doc/classes/Environment.xml:325
+#: doc/classes/Environment.xml:349
msgid ""
"3×3 blur for the screen-space ambient occlusion effect. Increases the radius "
"of the blur for a smoother look, but can result in checkerboard-like "
@@ -20249,14 +20745,17 @@ msgid ""
" var content = file.get_as_text()\n"
" file.close()\n"
" return content\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"In the example above, the file will be saved in the user data folder as "
+"specified in the [url=https://docs.godotengine.org/en/latest/tutorials/io/"
+"data_paths.html]Data paths[/url] documentation."
msgstr ""
-#: doc/classes/File.xml:32
+#: doc/classes/File.xml:33
msgid "Closes the currently opened file."
msgstr ""
-#: doc/classes/File.xml:39
+#: doc/classes/File.xml:40
msgid ""
"Returns [code]true[/code] if the file cursor has read past the end of the "
"file.\n"
@@ -20267,7 +20766,7 @@ msgid ""
"get_position] to implement a custom logic."
msgstr ""
-#: doc/classes/File.xml:49
+#: doc/classes/File.xml:50
msgid ""
"Returns [code]true[/code] if the file exists in the given path.\n"
"[b]Note:[/b] Many resources types are imported (e.g. textures or sound "
@@ -20280,41 +20779,41 @@ msgid ""
"source asset is present in [code]res://[/code], but fail when exported)."
msgstr ""
-#: doc/classes/File.xml:57
+#: doc/classes/File.xml:58
msgid ""
"Returns the next 16 bits from the file as an integer. See [method store_16] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:64
+#: doc/classes/File.xml:65
msgid ""
"Returns the next 32 bits from the file as an integer. See [method store_32] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:71
+#: doc/classes/File.xml:72
msgid ""
"Returns the next 64 bits from the file as an integer. See [method store_64] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:78
+#: doc/classes/File.xml:79
msgid ""
"Returns the next 8 bits from the file as an integer. See [method store_8] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:85
+#: doc/classes/File.xml:86
msgid ""
"Returns the whole file as a [String].\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:95
+#: doc/classes/File.xml:96
msgid "Returns next [code]len[/code] bytes of the file as a [PackedByteArray]."
msgstr ""
-#: doc/classes/File.xml:104
+#: doc/classes/File.xml:105
msgid ""
"Returns the next value of the file in CSV (Comma-Separated Values) format. "
"You can pass a different delimiter [code]delim[/code] to use other than the "
@@ -20323,37 +20822,37 @@ msgid ""
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:112
+#: doc/classes/File.xml:113
msgid "Returns the next 64 bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:119
+#: doc/classes/File.xml:120
msgid ""
"Returns the last error that happened when trying to perform operations. "
"Compare with the [code]ERR_FILE_*[/code] constants from [enum Error]."
msgstr ""
-#: doc/classes/File.xml:126
+#: doc/classes/File.xml:127
msgid "Returns the next 32 bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:133
+#: doc/classes/File.xml:134
msgid "Returns the size of the file in bytes."
msgstr ""
-#: doc/classes/File.xml:140
+#: doc/classes/File.xml:141
msgid ""
"Returns the next line of the file as a [String].\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:150
+#: doc/classes/File.xml:151
msgid ""
"Returns an MD5 String representing the file at the given path or an empty "
"[String] on failure."
msgstr ""
-#: doc/classes/File.xml:159
+#: doc/classes/File.xml:160
msgid ""
"Returns the last time the [code]file[/code] was modified in unix timestamp "
"format or returns a [String] \"ERROR IN [code]file[/code]\". This unix "
@@ -20361,35 +20860,35 @@ msgid ""
"get_datetime_from_unix_time]."
msgstr ""
-#: doc/classes/File.xml:166
+#: doc/classes/File.xml:167
msgid ""
"Returns a [String] saved in Pascal format from the file.\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:174
+#: doc/classes/File.xml:175
msgid "Returns the path as a [String] for the current open file."
msgstr ""
-#: doc/classes/File.xml:181
+#: doc/classes/File.xml:182
msgid "Returns the absolute path as a [String] for the current open file."
msgstr ""
-#: doc/classes/File.xml:188
+#: doc/classes/File.xml:189
msgid "Returns the file cursor's position."
msgstr ""
-#: doc/classes/File.xml:195
+#: doc/classes/File.xml:196
msgid "Returns the next bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:204
+#: doc/classes/File.xml:205
msgid ""
"Returns a SHA-256 [String] representing the file at the given path or an "
"empty [String] on failure."
msgstr ""
-#: doc/classes/File.xml:213
+#: doc/classes/File.xml:214
msgid ""
"Returns the next [Variant] value from the file. If [code]allow_objects[/"
"code] is [code]true[/code], decoding objects is allowed.\n"
@@ -20398,37 +20897,38 @@ msgid ""
"to avoid potential security threats such as remote code execution."
msgstr ""
-#: doc/classes/File.xml:221
+#: doc/classes/File.xml:222
msgid "Returns [code]true[/code] if the file is currently opened."
msgstr ""
-#: doc/classes/File.xml:232
+#: doc/classes/File.xml:233
msgid "Opens the file for writing or reading, depending on the flags."
msgstr ""
-#: doc/classes/File.xml:245
+#: doc/classes/File.xml:246
msgid "Opens a compressed file for reading or writing."
msgstr ""
-#: doc/classes/File.xml:258
+#: doc/classes/File.xml:259
msgid ""
"Opens an encrypted file in write or read mode. You need to pass a binary key "
-"to encrypt/decrypt it."
+"to encrypt/decrypt it.\n"
+"[b]Note:[/b] The provided key must be 32 bytes long."
msgstr ""
-#: doc/classes/File.xml:271
+#: doc/classes/File.xml:273
msgid ""
"Opens an encrypted file in write or read mode. You need to pass a password "
"to encrypt/decrypt it."
msgstr ""
-#: doc/classes/File.xml:280
+#: doc/classes/File.xml:282
msgid ""
"Changes the file reading/writing cursor to the specified position (in bytes "
"from the beginning of the file)."
msgstr ""
-#: doc/classes/File.xml:289
+#: doc/classes/File.xml:291
msgid ""
"Changes the file reading/writing cursor to the specified position (in bytes "
"from the end of the file).\n"
@@ -20436,7 +20936,7 @@ msgid ""
"cursor will be at the end of the file."
msgstr ""
-#: doc/classes/File.xml:299
+#: doc/classes/File.xml:301
msgid ""
"Stores an integer as 16 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, "
@@ -20464,7 +20964,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/File.xml:328
+#: doc/classes/File.xml:330
msgid ""
"Stores an integer as 32 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, "
@@ -20473,14 +20973,14 @@ msgid ""
"(see [method store_16] for an example)."
msgstr ""
-#: doc/classes/File.xml:339
+#: doc/classes/File.xml:341
msgid ""
"Stores an integer as 64 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] must lie in the interval [code][-2^63, "
"2^63 - 1][/code] (i.e. be a valid [int] value)."
msgstr ""
-#: doc/classes/File.xml:349
+#: doc/classes/File.xml:351
msgid ""
"Stores an integer as 8 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, 255]"
@@ -20489,11 +20989,11 @@ msgid ""
"(see [method store_16] for an example)."
msgstr ""
-#: doc/classes/File.xml:360
+#: doc/classes/File.xml:362
msgid "Stores the given array of bytes in the file."
msgstr ""
-#: doc/classes/File.xml:371
+#: doc/classes/File.xml:373
msgid ""
"Store the given [PackedStringArray] in the file as a line formatted in the "
"CSV (Comma-Separated Values) format. You can pass a different delimiter "
@@ -20502,45 +21002,45 @@ msgid ""
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:381
+#: doc/classes/File.xml:383
msgid "Stores a floating-point number as 64 bits in the file."
msgstr ""
-#: doc/classes/File.xml:390
+#: doc/classes/File.xml:392
msgid "Stores a floating-point number as 32 bits in the file."
msgstr ""
-#: doc/classes/File.xml:399
+#: doc/classes/File.xml:401
msgid ""
"Stores the given [String] as a line in the file.\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:409
+#: doc/classes/File.xml:411
msgid ""
"Stores the given [String] as a line in the file in Pascal format (i.e. also "
"store the length of the string).\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:419
+#: doc/classes/File.xml:421
msgid "Stores a floating-point number in the file."
msgstr ""
-#: doc/classes/File.xml:428
+#: doc/classes/File.xml:430
msgid ""
"Stores the given [String] in the file.\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:440
+#: doc/classes/File.xml:442
msgid ""
"Stores any Variant value in the file. If [code]full_objects[/code] is "
"[code]true[/code], encoding objects is allowed (and can potentially include "
"code)."
msgstr ""
-#: doc/classes/File.xml:446
+#: doc/classes/File.xml:448
msgid ""
"If [code]true[/code], the file's endianness is swapped. Use this if you're "
"dealing with files written on big-endian machines.\n"
@@ -20548,44 +21048,44 @@ msgid ""
"reset to [code]false[/code] whenever you open the file."
msgstr ""
-#: doc/classes/File.xml:452
+#: doc/classes/File.xml:454
msgid "Opens the file for read operations."
msgstr ""
-#: doc/classes/File.xml:455
+#: doc/classes/File.xml:457
msgid ""
"Opens the file for write operations. Create it if the file does not exist "
"and truncate if it exists."
msgstr ""
-#: doc/classes/File.xml:458
+#: doc/classes/File.xml:460
msgid ""
"Opens the file for read and write operations. Does not truncate the file."
msgstr ""
-#: doc/classes/File.xml:461
+#: doc/classes/File.xml:463
msgid ""
"Opens the file for read and write operations. Create it if the file does not "
"exist and truncate if it exists."
msgstr ""
-#: doc/classes/File.xml:464
+#: doc/classes/File.xml:466
msgid "Uses the [url=http://fastlz.org/]FastLZ[/url] compression method."
msgstr ""
-#: doc/classes/File.xml:467
+#: doc/classes/File.xml:469
msgid ""
"Uses the [url=https://en.wikipedia.org/wiki/DEFLATE]DEFLATE[/url] "
"compression method."
msgstr ""
-#: doc/classes/File.xml:470
+#: doc/classes/File.xml:472
msgid ""
"Uses the [url=https://facebook.github.io/zstd/]Zstandard[/url] compression "
"method."
msgstr ""
-#: doc/classes/File.xml:473
+#: doc/classes/File.xml:475
msgid "Uses the [url=https://www.gzip.org/]gzip[/url] compression method."
msgstr ""
@@ -20801,10 +21301,11 @@ msgid ""
"Draw [code]string[/code] into a canvas item using the font at a given "
"position, with [code]modulate[/code] color, and optionally clipping the "
"width. [code]position[/code] specifies the baseline, not the top. To draw "
-"from the top, [i]ascent[/i] must be added to the Y axis."
+"from the top, [i]ascent[/i] must be added to the Y axis.\n"
+"See also [method CanvasItem.draw_string]."
msgstr ""
-#: doc/classes/Font.xml:47
+#: doc/classes/Font.xml:48
msgid ""
"Draw character [code]char[/code] into a canvas item using the font at a "
"given position, with [code]modulate[/code] color, and optionally kerning if "
@@ -20814,39 +21315,39 @@ msgid ""
"making this function useful for drawing strings character by character."
msgstr ""
-#: doc/classes/Font.xml:54
+#: doc/classes/Font.xml:55
msgid "Returns the font ascent (number of pixels above the baseline)."
msgstr ""
-#: doc/classes/Font.xml:65
+#: doc/classes/Font.xml:66
msgid ""
"Returns the size of a character, optionally taking kerning into account if "
"the next character is provided."
msgstr ""
-#: doc/classes/Font.xml:72
+#: doc/classes/Font.xml:73
msgid "Returns the font descent (number of pixels below the baseline)."
msgstr ""
-#: doc/classes/Font.xml:79
+#: doc/classes/Font.xml:80
msgid "Returns the total font height (ascent plus descent) in pixels."
msgstr ""
-#: doc/classes/Font.xml:88
+#: doc/classes/Font.xml:89
msgid "Returns the size of a string, taking kerning and advance into account."
msgstr ""
-#: doc/classes/Font.xml:99
+#: doc/classes/Font.xml:100
msgid ""
"Returns the size that the string would have with word wrapping enabled with "
"a fixed [code]width[/code]."
msgstr ""
-#: doc/classes/Font.xml:106
+#: doc/classes/Font.xml:107
msgid "Returns [code]true[/code] if the font has an outline."
msgstr ""
-#: doc/classes/Font.xml:119
+#: doc/classes/Font.xml:120
msgid ""
"After editing a font (changing size, ascent, char rects, etc.). Call this "
"function to propagate changes to controls that might use it."
@@ -21018,13 +21519,14 @@ msgstr ""
#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:7
msgid ""
-"Calling [method @GDScript.yield] within a function will cause that function "
-"to yield and return its current state as an object of this type. The yielded "
+"FIXME: Outdated docs as of GDScript rewrite in 4.0.\n"
+"Calling [code]yield[/code] within a function will cause that function to "
+"yield and return its current state as an object of this type. The yielded "
"function call can then be resumed later by calling [method resume] on this "
"state object."
msgstr ""
-#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:18
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:19
msgid ""
"Check whether the function call may be resumed. This is not the case if the "
"function state was already resumed.\n"
@@ -21035,12 +21537,12 @@ msgid ""
"script have survived up to that point."
msgstr ""
-#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:28
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:29
msgid ""
"Resume execution of the yielded function call.\n"
-"If handed an argument, return the argument from the [method @GDScript.yield] "
-"call in the yielded function call. You can pass e.g. an [Array] to hand "
-"multiple arguments.\n"
+"If handed an argument, return the argument from the [code]yield[/code] call "
+"in the yielded function call. You can pass e.g. an [Array] to hand multiple "
+"arguments.\n"
"This function returns what the resumed function call returns, possibly "
"another function state if yielded again."
msgstr ""
@@ -21609,10 +22111,20 @@ msgid ""
"code], see [enum PolyJoinType].\n"
"The operation may result in an outer polygon (boundary) and inner polygon "
"(hole) produced which could be distinguished by calling [method "
-"is_polygon_clockwise]."
+"is_polygon_clockwise].\n"
+"[b]Note:[/b] To translate the polygon's vertices specifically, use the "
+"[method Transform2D.xform] method:\n"
+"[codeblock]\n"
+"var polygon = PackedVector2Array([Vector2(0, 0), Vector2(100, 0), "
+"Vector2(100, 100), Vector2(0, 100)])\n"
+"var offset = Vector2(50, 50)\n"
+"polygon = Transform2D(0, offset).xform(polygon)\n"
+"print(polygon) # prints [Vector2(50, 50), Vector2(150, 50), Vector2(150, "
+"150), Vector2(50, 150)]\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/Geometry2D.xml:217
+#: doc/classes/Geometry2D.xml:224
msgid ""
"Inflates or deflates [code]polyline[/code] by [code]delta[/code] units "
"(pixels), producing polygons. If [code]delta[/code] is positive, makes the "
@@ -21628,13 +22140,13 @@ msgid ""
"is_polygon_clockwise]."
msgstr ""
-#: doc/classes/Geometry2D.xml:235
+#: doc/classes/Geometry2D.xml:242
msgid ""
"Returns if [code]point[/code] is inside the triangle specified by [code]a[/"
"code], [code]b[/code] and [code]c[/code]."
msgstr ""
-#: doc/classes/Geometry2D.xml:250
+#: doc/classes/Geometry2D.xml:257
msgid ""
"Checks if the two segments ([code]from_a[/code], [code]to_a[/code]) and "
"([code]from_b[/code], [code]to_b[/code]) intersect. If yes, return the point "
@@ -21642,7 +22154,7 @@ msgid ""
"empty [Variant]."
msgstr ""
-#: doc/classes/Geometry2D.xml:259
+#: doc/classes/Geometry2D.xml:266
msgid ""
"Triangulates the area specified by discrete set of [code]points[/code] such "
"that no point is inside the circumcircle of any resulting triangle. Returns "
@@ -21653,7 +22165,7 @@ msgid ""
"[PackedInt32Array] is returned."
msgstr ""
-#: doc/classes/Geometry2D.xml:268
+#: doc/classes/Geometry2D.xml:275
msgid ""
"Triangulates the polygon specified by the points in [code]polygon[/code]. "
"Returns a [PackedInt32Array] where each triangle consists of three "
@@ -21663,40 +22175,40 @@ msgid ""
"[PackedInt32Array] is returned."
msgstr ""
-#: doc/classes/Geometry2D.xml:274
+#: doc/classes/Geometry2D.xml:281
msgid ""
"Create regions where either subject or clip polygons (or both) are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:277
+#: doc/classes/Geometry2D.xml:284
msgid ""
"Create regions where subject polygons are filled except where clip polygons "
"are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:280
+#: doc/classes/Geometry2D.xml:287
msgid "Create regions where both subject and clip polygons are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:283
+#: doc/classes/Geometry2D.xml:290
msgid ""
"Create regions where either subject or clip polygons are filled but not "
"where both are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:286
+#: doc/classes/Geometry2D.xml:293
msgid ""
"Squaring is applied uniformally at all convex edge joins at [code]1 * delta[/"
"code]."
msgstr ""
-#: doc/classes/Geometry2D.xml:289
+#: doc/classes/Geometry2D.xml:296
msgid ""
"While flattened paths can never perfectly trace an arc, they are "
"approximated by a series of arc chords."
msgstr ""
-#: doc/classes/Geometry2D.xml:292
+#: doc/classes/Geometry2D.xml:299
msgid ""
"There's a necessary limit to mitered joins since offsetting edges that join "
"at very acute angles will produce excessively long and narrow \"spikes\". "
@@ -21704,27 +22216,27 @@ msgid ""
"distance, \"square\" joining is applied."
msgstr ""
-#: doc/classes/Geometry2D.xml:295
+#: doc/classes/Geometry2D.xml:302
msgid ""
"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
"as a polygon."
msgstr ""
-#: doc/classes/Geometry2D.xml:298
+#: doc/classes/Geometry2D.xml:305
msgid ""
"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
"as a polyline."
msgstr ""
-#: doc/classes/Geometry2D.xml:301
+#: doc/classes/Geometry2D.xml:308
msgid "Endpoints are squared off with no extension."
msgstr ""
-#: doc/classes/Geometry2D.xml:304
+#: doc/classes/Geometry2D.xml:311
msgid "Endpoints are squared off and extended by [code]delta[/code] units."
msgstr ""
-#: doc/classes/Geometry2D.xml:307
+#: doc/classes/Geometry2D.xml:314
msgid "Endpoints are rounded off and extended by [code]delta[/code] units."
msgstr ""
@@ -21954,7 +22466,7 @@ msgstr ""
msgid ""
"Bakes the effect from all [GeometryInstance3D]s marked with [constant "
"GeometryInstance3D.GI_MODE_BAKED] and [Light3D]s marked with either "
-"[constant Light3D.BAKE_INDIRECT] or [constant Light3D.BAKE_ALL]. If "
+"[constant Light3D.BAKE_DYNAMIC] or [constant Light3D.BAKE_STATIC]. If "
"[code]create_visual_debug[/code] is [code]true[/code], after baking the "
"light, this will generate a [MultiMesh] that has a cube representing each "
"solid cell with each cube colored to the cell's albedo color. This can be "
@@ -22841,121 +23353,119 @@ msgstr ""
msgid "Clear all cells."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:53
+#: modules/gridmap/doc_classes/GridMap.xml:49
msgid ""
-"The [MeshLibrary] item index located at the grid-based X, Y and Z "
-"coordinates. If the cell is empty, [constant INVALID_CELL_ITEM] will be "
-"returned."
+"The [MeshLibrary] item index located at the given grid coordinates. If the "
+"cell is empty, [constant INVALID_CELL_ITEM] will be returned."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:66
+#: modules/gridmap/doc_classes/GridMap.xml:58
msgid ""
-"The orientation of the cell at the grid-based X, Y and Z coordinates. -1 is "
-"returned if the cell is empty."
+"The orientation of the cell at the given grid coordinates. [code]-1[/code] "
+"is returned if the cell is empty."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:75 doc/classes/PhysicsBody2D.xml:35
+#: modules/gridmap/doc_classes/GridMap.xml:67 doc/classes/PhysicsBody2D.xml:35
#: doc/classes/PhysicsBody3D.xml:35
msgid "Returns an individual bit on the [member collision_layer]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:84 doc/classes/PhysicsBody2D.xml:44
+#: modules/gridmap/doc_classes/GridMap.xml:76 doc/classes/PhysicsBody2D.xml:44
#: doc/classes/PhysicsBody3D.xml:44
msgid "Returns an individual bit on the [member collision_mask]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:91
+#: modules/gridmap/doc_classes/GridMap.xml:83
msgid ""
"Returns an array of [Transform] and [Mesh] references corresponding to the "
"non-empty cells in the grid. The transforms are specified in world space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:98
+#: modules/gridmap/doc_classes/GridMap.xml:90
msgid ""
"Returns an array of [Vector3] with the non-empty cell coordinates in the "
"grid map."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:121
+#: modules/gridmap/doc_classes/GridMap.xml:109
msgid ""
"Returns the position of a grid cell in the GridMap's local coordinate space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:146
+#: modules/gridmap/doc_classes/GridMap.xml:130
msgid ""
-"Sets the mesh index for the cell referenced by its grid-based X, Y and Z "
-"coordinates.\n"
+"Sets the mesh index for the cell referenced by its grid coordinates.\n"
"A negative item index such as [constant INVALID_CELL_ITEM] will clear the "
"cell.\n"
"Optionally, the item's orientation can be passed. For valid orientation "
"values, see [method Basis.get_orthogonal_index]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:173
+#: modules/gridmap/doc_classes/GridMap.xml:157
msgid "Sets an individual bit on the [member collision_layer]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:184
+#: modules/gridmap/doc_classes/GridMap.xml:168
msgid "Sets an individual bit on the [member collision_mask]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:193
+#: modules/gridmap/doc_classes/GridMap.xml:177
msgid ""
"Returns the coordinates of the grid cell containing the given point.\n"
"[code]pos[/code] should be in the GridMap's local coordinate space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:200
+#: modules/gridmap/doc_classes/GridMap.xml:184
msgid "If [code]true[/code], grid items are centered on the X axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:203
+#: modules/gridmap/doc_classes/GridMap.xml:187
msgid "If [code]true[/code], grid items are centered on the Y axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:206
+#: modules/gridmap/doc_classes/GridMap.xml:190
msgid "If [code]true[/code], grid items are centered on the Z axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:209
+#: modules/gridmap/doc_classes/GridMap.xml:193
msgid ""
"The size of each octant measured in number of cells. This applies to all "
"three axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:212
+#: modules/gridmap/doc_classes/GridMap.xml:196
msgid ""
"The scale of the cell items.\n"
"This does not affect the size of the grid cells themselves, only the items "
"in them. This can be used to make cell items overlap their neighbors."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:216
+#: modules/gridmap/doc_classes/GridMap.xml:200
msgid ""
"The dimensions of the grid's cells.\n"
"This does not affect the size of the meshes. See [member cell_scale]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:220
+#: modules/gridmap/doc_classes/GridMap.xml:204
msgid ""
"The physics layers this GridMap is in.\n"
"GridMaps act as static bodies, meaning they aren't affected by gravity or "
"other forces. They only affect other physics bodies that collide with them."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:224
+#: modules/gridmap/doc_classes/GridMap.xml:208
msgid "The physics layers this GridMap detects collisions in."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:227
+#: modules/gridmap/doc_classes/GridMap.xml:211
msgid "The assigned [MeshLibrary]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:235
+#: modules/gridmap/doc_classes/GridMap.xml:219
msgid "Emitted when [member cell_size] changes."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:241
+#: modules/gridmap/doc_classes/GridMap.xml:225
msgid ""
"Invalid cell item that can be used in [method set_cell_item] to clear cells "
"(or represent an empty cell in [method get_cell_item])."
@@ -23320,27 +23830,33 @@ msgid ""
"server's side.\n"
"For more information on HTTP, see https://developer.mozilla.org/en-US/docs/"
"Web/HTTP (or read RFC 2616 to get it straight from the source: https://tools."
-"ietf.org/html/rfc2616)."
+"ietf.org/html/rfc2616).\n"
+"[b]Note:[/b] When performing HTTP requests from a project exported to HTML5, "
+"keep in mind the remote server may not allow requests from foreign origins "
+"due to [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/"
+"url]. If you host the server in question, you should modify its backend to "
+"allow requests from foreign origins by adding the [code]Access-Control-Allow-"
+"Origin: *[/code] HTTP header."
msgstr ""
-#: doc/classes/HTTPClient.xml:13
+#: doc/classes/HTTPClient.xml:14
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/"
"http_client_class.html"
msgstr ""
-#: doc/classes/HTTPClient.xml:14 doc/classes/HTTPRequest.xml:62
+#: doc/classes/HTTPClient.xml:15 doc/classes/HTTPRequest.xml:71
#: doc/classes/StreamPeerSSL.xml:10
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/ssl_certificates."
"html"
msgstr ""
-#: doc/classes/HTTPClient.xml:21
+#: doc/classes/HTTPClient.xml:22
msgid "Closes the current connection, allowing reuse of this [HTTPClient]."
msgstr ""
-#: doc/classes/HTTPClient.xml:36
+#: doc/classes/HTTPClient.xml:37
msgid ""
"Connects to a host. This needs to be done before any requests are sent.\n"
"The host should not have http:// prepended but will strip the protocol "
@@ -23352,7 +23868,7 @@ msgid ""
"[code]true[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:46
+#: doc/classes/HTTPClient.xml:47
msgid ""
"Returns the response's body length.\n"
"[b]Note:[/b] Some Web servers may not send a body length. In this case, the "
@@ -23360,15 +23876,15 @@ msgid ""
"the body length will also be [code]-1[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:54
+#: doc/classes/HTTPClient.xml:55
msgid "Returns the response's HTTP status code."
msgstr ""
-#: doc/classes/HTTPClient.xml:61
+#: doc/classes/HTTPClient.xml:62
msgid "Returns the response headers."
msgstr ""
-#: doc/classes/HTTPClient.xml:68
+#: doc/classes/HTTPClient.xml:69
msgid ""
"Returns all response headers as a Dictionary of structure [code]{ \"key\": "
"\"value1; value2\" }[/code] where the case-sensitivity of the keys and "
@@ -23383,27 +23899,27 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:82
+#: doc/classes/HTTPClient.xml:83
msgid ""
"Returns a [enum Status] constant. Need to call [method poll] in order to get "
"status updates."
msgstr ""
-#: doc/classes/HTTPClient.xml:89
+#: doc/classes/HTTPClient.xml:90
msgid "If [code]true[/code], this [HTTPClient] has a response available."
msgstr ""
-#: doc/classes/HTTPClient.xml:96
+#: doc/classes/HTTPClient.xml:97
msgid "If [code]true[/code], this [HTTPClient] has a response that is chunked."
msgstr ""
-#: doc/classes/HTTPClient.xml:103
+#: doc/classes/HTTPClient.xml:104
msgid ""
"This needs to be called in order to have any request processed. Check "
"results with [method get_status]."
msgstr ""
-#: doc/classes/HTTPClient.xml:112
+#: doc/classes/HTTPClient.xml:113
msgid ""
"Generates a GET/POST application/x-www-form-urlencoded style query string "
"from a provided dictionary, e.g.:\n"
@@ -23423,11 +23939,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:130
+#: doc/classes/HTTPClient.xml:131
msgid "Reads one chunk from the response."
msgstr ""
-#: doc/classes/HTTPClient.xml:145
+#: doc/classes/HTTPClient.xml:146
msgid ""
"Sends a request to the connected host. The URL parameter is just the part "
"after the host, so for [code]http://somehost.com/index.php[/code], it is "
@@ -23445,7 +23961,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:168
+#: doc/classes/HTTPClient.xml:169
msgid ""
"Sends a raw request to the connected host. The URL parameter is just the "
"part after the host, so for [code]http://somehost.com/index.php[/code], it "
@@ -23455,43 +23971,43 @@ msgid ""
"Sends the body data raw, as a byte array and does not encode it in any way."
msgstr ""
-#: doc/classes/HTTPClient.xml:176
+#: doc/classes/HTTPClient.xml:177
msgid ""
"If [code]true[/code], execution will block until all data is read from the "
"response."
msgstr ""
-#: doc/classes/HTTPClient.xml:179
+#: doc/classes/HTTPClient.xml:180
msgid "The connection to use for this client."
msgstr ""
-#: doc/classes/HTTPClient.xml:182
+#: doc/classes/HTTPClient.xml:183
msgid ""
"The size of the buffer used and maximum bytes to read per iteration. See "
"[method read_response_body_chunk]."
msgstr ""
-#: doc/classes/HTTPClient.xml:187
+#: doc/classes/HTTPClient.xml:188
msgid ""
"HTTP GET method. The GET method requests a representation of the specified "
"resource. Requests using GET should only retrieve data."
msgstr ""
-#: doc/classes/HTTPClient.xml:190
+#: doc/classes/HTTPClient.xml:191
msgid ""
"HTTP HEAD method. The HEAD method asks for a response identical to that of a "
"GET request, but without the response body. This is useful to request "
"metadata like HTTP headers or to check if a resource exists."
msgstr ""
-#: doc/classes/HTTPClient.xml:193
+#: doc/classes/HTTPClient.xml:194
msgid ""
"HTTP POST method. The POST method is used to submit an entity to the "
"specified resource, often causing a change in state or side effects on the "
"server. This is often used for forms and submitting data or uploading files."
msgstr ""
-#: doc/classes/HTTPClient.xml:196
+#: doc/classes/HTTPClient.xml:197
msgid ""
"HTTP PUT method. The PUT method asks to replace all current representations "
"of the target resource with the request payload. (You can think of POST as "
@@ -23499,103 +24015,103 @@ msgid ""
"not make a clear distinction or change their meaning)."
msgstr ""
-#: doc/classes/HTTPClient.xml:199
+#: doc/classes/HTTPClient.xml:200
msgid ""
"HTTP DELETE method. The DELETE method requests to delete the specified "
"resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:202
+#: doc/classes/HTTPClient.xml:203
msgid ""
"HTTP OPTIONS method. The OPTIONS method asks for a description of the "
"communication options for the target resource. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:205
+#: doc/classes/HTTPClient.xml:206
msgid ""
"HTTP TRACE method. The TRACE method performs a message loop-back test along "
"the path to the target resource. Returns the entire HTTP request received in "
"the response body. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:208
+#: doc/classes/HTTPClient.xml:209
msgid ""
"HTTP CONNECT method. The CONNECT method establishes a tunnel to the server "
"identified by the target resource. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:211
+#: doc/classes/HTTPClient.xml:212
msgid ""
"HTTP PATCH method. The PATCH method is used to apply partial modifications "
"to a resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:214
+#: doc/classes/HTTPClient.xml:215
msgid "Represents the size of the [enum Method] enum."
msgstr ""
-#: doc/classes/HTTPClient.xml:217
+#: doc/classes/HTTPClient.xml:218
msgid "Status: Disconnected from the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:220
+#: doc/classes/HTTPClient.xml:221
msgid "Status: Currently resolving the hostname for the given URL into an IP."
msgstr ""
-#: doc/classes/HTTPClient.xml:223
+#: doc/classes/HTTPClient.xml:224
msgid "Status: DNS failure: Can't resolve the hostname for the given URL."
msgstr ""
-#: doc/classes/HTTPClient.xml:226
+#: doc/classes/HTTPClient.xml:227
msgid "Status: Currently connecting to server."
msgstr ""
-#: doc/classes/HTTPClient.xml:229
+#: doc/classes/HTTPClient.xml:230
msgid "Status: Can't connect to the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:232
+#: doc/classes/HTTPClient.xml:233
msgid "Status: Connection established."
msgstr ""
-#: doc/classes/HTTPClient.xml:235
+#: doc/classes/HTTPClient.xml:236
msgid "Status: Currently sending request."
msgstr ""
-#: doc/classes/HTTPClient.xml:238
+#: doc/classes/HTTPClient.xml:239
msgid "Status: HTTP body received."
msgstr ""
-#: doc/classes/HTTPClient.xml:241
+#: doc/classes/HTTPClient.xml:242
msgid "Status: Error in HTTP connection."
msgstr ""
-#: doc/classes/HTTPClient.xml:244
+#: doc/classes/HTTPClient.xml:245
msgid "Status: Error in SSL handshake."
msgstr ""
-#: doc/classes/HTTPClient.xml:247
+#: doc/classes/HTTPClient.xml:248
msgid ""
"HTTP status code [code]100 Continue[/code]. Interim response that indicates "
"everything so far is OK and that the client should continue with the request "
"(or ignore this status if already finished)."
msgstr ""
-#: doc/classes/HTTPClient.xml:250
+#: doc/classes/HTTPClient.xml:251
msgid ""
"HTTP status code [code]101 Switching Protocol[/code]. Sent in response to an "
"[code]Upgrade[/code] request header by the client. Indicates the protocol "
"the server is switching to."
msgstr ""
-#: doc/classes/HTTPClient.xml:253
+#: doc/classes/HTTPClient.xml:254
msgid ""
"HTTP status code [code]102 Processing[/code] (WebDAV). Indicates that the "
"server has received and is processing the request, but no response is "
"available yet."
msgstr ""
-#: doc/classes/HTTPClient.xml:256
+#: doc/classes/HTTPClient.xml:257
msgid ""
"HTTP status code [code]200 OK[/code]. The request has succeeded. Default "
"response for successful requests. Meaning varies depending on the request. "
@@ -23606,14 +24122,14 @@ msgid ""
"server."
msgstr ""
-#: doc/classes/HTTPClient.xml:259
+#: doc/classes/HTTPClient.xml:260
msgid ""
"HTTP status code [code]201 Created[/code]. The request has succeeded and a "
"new resource has been created as a result of it. This is typically the "
"response sent after a PUT request."
msgstr ""
-#: doc/classes/HTTPClient.xml:262
+#: doc/classes/HTTPClient.xml:263
msgid ""
"HTTP status code [code]202 Accepted[/code]. The request has been received "
"but not yet acted upon. It is non-committal, meaning that there is no way in "
@@ -23622,7 +24138,7 @@ msgid ""
"server handles the request, or for batch processing."
msgstr ""
-#: doc/classes/HTTPClient.xml:265
+#: doc/classes/HTTPClient.xml:266
msgid ""
"HTTP status code [code]203 Non-Authoritative Information[/code]. This "
"response code means returned meta-information set is not exact set as "
@@ -23631,14 +24147,14 @@ msgid ""
"instead of this response."
msgstr ""
-#: doc/classes/HTTPClient.xml:268
+#: doc/classes/HTTPClient.xml:269
msgid ""
"HTTP status code [code]204 No Content[/code]. There is no content to send "
"for this request, but the headers may be useful. The user-agent may update "
"its cached headers for this resource with the new ones."
msgstr ""
-#: doc/classes/HTTPClient.xml:271
+#: doc/classes/HTTPClient.xml:272
msgid ""
"HTTP status code [code]205 Reset Content[/code]. The server has fulfilled "
"the request and desires that the client resets the \"document view\" that "
@@ -23646,49 +24162,49 @@ msgid ""
"origin server."
msgstr ""
-#: doc/classes/HTTPClient.xml:274
+#: doc/classes/HTTPClient.xml:275
msgid ""
"HTTP status code [code]206 Partial Content[/code]. This response code is "
"used because of a range header sent by the client to separate download into "
"multiple streams."
msgstr ""
-#: doc/classes/HTTPClient.xml:277
+#: doc/classes/HTTPClient.xml:278
msgid ""
"HTTP status code [code]207 Multi-Status[/code] (WebDAV). A Multi-Status "
"response conveys information about multiple resources in situations where "
"multiple status codes might be appropriate."
msgstr ""
-#: doc/classes/HTTPClient.xml:280
+#: doc/classes/HTTPClient.xml:281
msgid ""
"HTTP status code [code]208 Already Reported[/code] (WebDAV). Used inside a "
"DAV: propstat response element to avoid enumerating the internal members of "
"multiple bindings to the same collection repeatedly."
msgstr ""
-#: doc/classes/HTTPClient.xml:283
+#: doc/classes/HTTPClient.xml:284
msgid ""
"HTTP status code [code]226 IM Used[/code] (WebDAV). The server has fulfilled "
"a GET request for the resource, and the response is a representation of the "
"result of one or more instance-manipulations applied to the current instance."
msgstr ""
-#: doc/classes/HTTPClient.xml:286
+#: doc/classes/HTTPClient.xml:287
msgid ""
"HTTP status code [code]300 Multiple Choice[/code]. The request has more than "
"one possible responses and there is no standardized way to choose one of the "
"responses. User-agent or user should choose one of them."
msgstr ""
-#: doc/classes/HTTPClient.xml:289
+#: doc/classes/HTTPClient.xml:290
msgid ""
"HTTP status code [code]301 Moved Permanently[/code]. Redirection. This "
"response code means the URI of requested resource has been changed. The new "
"URI is usually included in the response."
msgstr ""
-#: doc/classes/HTTPClient.xml:292
+#: doc/classes/HTTPClient.xml:293
msgid ""
"HTTP status code [code]302 Found[/code]. Temporary redirection. This "
"response code means the URI of requested resource has been changed "
@@ -23696,7 +24212,7 @@ msgid ""
"this same URI should be used by the client in future requests."
msgstr ""
-#: doc/classes/HTTPClient.xml:295
+#: doc/classes/HTTPClient.xml:296
msgid ""
"HTTP status code [code]303 See Other[/code]. The server is redirecting the "
"user agent to a different resource, as indicated by a URI in the Location "
@@ -23704,39 +24220,39 @@ msgid ""
"original request."
msgstr ""
-#: doc/classes/HTTPClient.xml:298
+#: doc/classes/HTTPClient.xml:299
msgid ""
"HTTP status code [code]304 Not Modified[/code]. A conditional GET or HEAD "
"request has been received and would have resulted in a 200 OK response if it "
"were not for the fact that the condition evaluated to [code]false[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:301
+#: doc/classes/HTTPClient.xml:302
msgid ""
"HTTP status code [code]305 Use Proxy[/code]. [i]Deprecated. Do not use.[/i]"
msgstr ""
-#: doc/classes/HTTPClient.xml:304
+#: doc/classes/HTTPClient.xml:305
msgid ""
"HTTP status code [code]306 Switch Proxy[/code]. [i]Deprecated. Do not use.[/"
"i]"
msgstr ""
-#: doc/classes/HTTPClient.xml:307
+#: doc/classes/HTTPClient.xml:308
msgid ""
"HTTP status code [code]307 Temporary Redirect[/code]. The target resource "
"resides temporarily under a different URI and the user agent MUST NOT change "
"the request method if it performs an automatic redirection to that URI."
msgstr ""
-#: doc/classes/HTTPClient.xml:310
+#: doc/classes/HTTPClient.xml:311
msgid ""
"HTTP status code [code]308 Permanent Redirect[/code]. The target resource "
"has been assigned a new permanent URI and any future references to this "
"resource ought to use one of the enclosed URIs."
msgstr ""
-#: doc/classes/HTTPClient.xml:313
+#: doc/classes/HTTPClient.xml:314
msgid ""
"HTTP status code [code]400 Bad Request[/code]. The request was invalid. The "
"server cannot or will not process the request due to something that is "
@@ -23745,21 +24261,21 @@ msgid ""
"routing)."
msgstr ""
-#: doc/classes/HTTPClient.xml:316
+#: doc/classes/HTTPClient.xml:317
msgid ""
"HTTP status code [code]401 Unauthorized[/code]. Credentials required. The "
"request has not been applied because it lacks valid authentication "
"credentials for the target resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:319
+#: doc/classes/HTTPClient.xml:320
msgid ""
"HTTP status code [code]402 Payment Required[/code]. This response code is "
"reserved for future use. Initial aim for creating this code was using it for "
"digital payment systems, however this is not currently used."
msgstr ""
-#: doc/classes/HTTPClient.xml:322
+#: doc/classes/HTTPClient.xml:323
msgid ""
"HTTP status code [code]403 Forbidden[/code]. The client does not have access "
"rights to the content, i.e. they are unauthorized, so server is rejecting to "
@@ -23767,7 +24283,7 @@ msgid ""
"known to the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:325
+#: doc/classes/HTTPClient.xml:326
msgid ""
"HTTP status code [code]404 Not Found[/code]. The server can not find "
"requested resource. Either the URL is not recognized or the endpoint is "
@@ -23775,7 +24291,7 @@ msgid ""
"403 to hide existence of a resource if the client is not authorized."
msgstr ""
-#: doc/classes/HTTPClient.xml:328
+#: doc/classes/HTTPClient.xml:329
msgid ""
"HTTP status code [code]405 Method Not Allowed[/code]. The request's HTTP "
"method is known by the server but has been disabled and cannot be used. For "
@@ -23783,7 +24299,7 @@ msgid ""
"GET and HEAD, must never be disabled and should not return this error code."
msgstr ""
-#: doc/classes/HTTPClient.xml:331
+#: doc/classes/HTTPClient.xml:332
msgid ""
"HTTP status code [code]406 Not Acceptable[/code]. The target resource does "
"not have a current representation that would be acceptable to the user "
@@ -23791,21 +24307,21 @@ msgid ""
"request. Used when negotiation content."
msgstr ""
-#: doc/classes/HTTPClient.xml:334
+#: doc/classes/HTTPClient.xml:335
msgid ""
"HTTP status code [code]407 Proxy Authentication Required[/code]. Similar to "
"401 Unauthorized, but it indicates that the client needs to authenticate "
"itself in order to use a proxy."
msgstr ""
-#: doc/classes/HTTPClient.xml:337
+#: doc/classes/HTTPClient.xml:338
msgid ""
"HTTP status code [code]408 Request Timeout[/code]. The server did not "
"receive a complete request message within the time that it was prepared to "
"wait."
msgstr ""
-#: doc/classes/HTTPClient.xml:340
+#: doc/classes/HTTPClient.xml:341
msgid ""
"HTTP status code [code]409 Conflict[/code]. The request could not be "
"completed due to a conflict with the current state of the target resource. "
@@ -23813,47 +24329,47 @@ msgid ""
"conflict and resubmit the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:343
+#: doc/classes/HTTPClient.xml:344
msgid ""
"HTTP status code [code]410 Gone[/code]. The target resource is no longer "
"available at the origin server and this condition is likely permanent."
msgstr ""
-#: doc/classes/HTTPClient.xml:346
+#: doc/classes/HTTPClient.xml:347
msgid ""
"HTTP status code [code]411 Length Required[/code]. The server refuses to "
"accept the request without a defined Content-Length header."
msgstr ""
-#: doc/classes/HTTPClient.xml:349
+#: doc/classes/HTTPClient.xml:350
msgid ""
"HTTP status code [code]412 Precondition Failed[/code]. One or more "
"conditions given in the request header fields evaluated to [code]false[/"
"code] when tested on the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:352
+#: doc/classes/HTTPClient.xml:353
msgid ""
"HTTP status code [code]413 Entity Too Large[/code]. The server is refusing "
"to process a request because the request payload is larger than the server "
"is willing or able to process."
msgstr ""
-#: doc/classes/HTTPClient.xml:355
+#: doc/classes/HTTPClient.xml:356
msgid ""
"HTTP status code [code]414 Request-URI Too Long[/code]. The server is "
"refusing to service the request because the request-target is longer than "
"the server is willing to interpret."
msgstr ""
-#: doc/classes/HTTPClient.xml:358
+#: doc/classes/HTTPClient.xml:359
msgid ""
"HTTP status code [code]415 Unsupported Media Type[/code]. The origin server "
"is refusing to service the request because the payload is in a format not "
"supported by this method on the target resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:361
+#: doc/classes/HTTPClient.xml:362
msgid ""
"HTTP status code [code]416 Requested Range Not Satisfiable[/code]. None of "
"the ranges in the request's Range header field overlap the current extent of "
@@ -23861,21 +24377,21 @@ msgid ""
"to invalid ranges or an excessive request of small or overlapping ranges."
msgstr ""
-#: doc/classes/HTTPClient.xml:364
+#: doc/classes/HTTPClient.xml:365
msgid ""
"HTTP status code [code]417 Expectation Failed[/code]. The expectation given "
"in the request's Expect header field could not be met by at least one of the "
"inbound servers."
msgstr ""
-#: doc/classes/HTTPClient.xml:367
+#: doc/classes/HTTPClient.xml:368
msgid ""
"HTTP status code [code]418 I'm A Teapot[/code]. Any attempt to brew coffee "
"with a teapot should result in the error code \"418 I'm a teapot\". The "
"resulting entity body MAY be short and stout."
msgstr ""
-#: doc/classes/HTTPClient.xml:370
+#: doc/classes/HTTPClient.xml:371
msgid ""
"HTTP status code [code]421 Misdirected Request[/code]. The request was "
"directed at a server that is not able to produce a response. This can be "
@@ -23883,7 +24399,7 @@ msgid ""
"combination of scheme and authority that are included in the request URI."
msgstr ""
-#: doc/classes/HTTPClient.xml:373
+#: doc/classes/HTTPClient.xml:374
msgid ""
"HTTP status code [code]422 Unprocessable Entity[/code] (WebDAV). The server "
"understands the content type of the request entity (hence a 415 Unsupported "
@@ -23892,40 +24408,40 @@ msgid ""
"was unable to process the contained instructions."
msgstr ""
-#: doc/classes/HTTPClient.xml:376
+#: doc/classes/HTTPClient.xml:377
msgid ""
"HTTP status code [code]423 Locked[/code] (WebDAV). The source or destination "
"resource of a method is locked."
msgstr ""
-#: doc/classes/HTTPClient.xml:379
+#: doc/classes/HTTPClient.xml:380
msgid ""
"HTTP status code [code]424 Failed Dependency[/code] (WebDAV). The method "
"could not be performed on the resource because the requested action depended "
"on another action and that action failed."
msgstr ""
-#: doc/classes/HTTPClient.xml:382
+#: doc/classes/HTTPClient.xml:383
msgid ""
"HTTP status code [code]426 Upgrade Required[/code]. The server refuses to "
"perform the request using the current protocol but might be willing to do so "
"after the client upgrades to a different protocol."
msgstr ""
-#: doc/classes/HTTPClient.xml:385
+#: doc/classes/HTTPClient.xml:386
msgid ""
"HTTP status code [code]428 Precondition Required[/code]. The origin server "
"requires the request to be conditional."
msgstr ""
-#: doc/classes/HTTPClient.xml:388
+#: doc/classes/HTTPClient.xml:389
msgid ""
"HTTP status code [code]429 Too Many Requests[/code]. The user has sent too "
"many requests in a given amount of time (see \"rate limiting\"). Back off "
"and increase time between requests or try again later."
msgstr ""
-#: doc/classes/HTTPClient.xml:391
+#: doc/classes/HTTPClient.xml:392
msgid ""
"HTTP status code [code]431 Request Header Fields Too Large[/code]. The "
"server is unwilling to process the request because its header fields are too "
@@ -23933,27 +24449,27 @@ msgid ""
"header fields."
msgstr ""
-#: doc/classes/HTTPClient.xml:394
+#: doc/classes/HTTPClient.xml:395
msgid ""
"HTTP status code [code]451 Response Unavailable For Legal Reasons[/code]. "
"The server is denying access to the resource as a consequence of a legal "
"demand."
msgstr ""
-#: doc/classes/HTTPClient.xml:397
+#: doc/classes/HTTPClient.xml:398
msgid ""
"HTTP status code [code]500 Internal Server Error[/code]. The server "
"encountered an unexpected condition that prevented it from fulfilling the "
"request."
msgstr ""
-#: doc/classes/HTTPClient.xml:400
+#: doc/classes/HTTPClient.xml:401
msgid ""
"HTTP status code [code]501 Not Implemented[/code]. The server does not "
"support the functionality required to fulfill the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:403
+#: doc/classes/HTTPClient.xml:404
msgid ""
"HTTP status code [code]502 Bad Gateway[/code]. The server, while acting as a "
"gateway or proxy, received an invalid response from an inbound server it "
@@ -23961,7 +24477,7 @@ msgid ""
"balancers or proxies."
msgstr ""
-#: doc/classes/HTTPClient.xml:406
+#: doc/classes/HTTPClient.xml:407
msgid ""
"HTTP status code [code]503 Service Unavailable[/code]. The server is "
"currently unable to handle the request due to a temporary overload or "
@@ -23969,7 +24485,7 @@ msgid ""
"again later."
msgstr ""
-#: doc/classes/HTTPClient.xml:409
+#: doc/classes/HTTPClient.xml:410
msgid ""
"HTTP status code [code]504 Gateway Timeout[/code]. The server, while acting "
"as a gateway or proxy, did not receive a timely response from an upstream "
@@ -23977,14 +24493,14 @@ msgid ""
"returned by load balancers or proxies."
msgstr ""
-#: doc/classes/HTTPClient.xml:412
+#: doc/classes/HTTPClient.xml:413
msgid ""
"HTTP status code [code]505 HTTP Version Not Supported[/code]. The server "
"does not support, or refuses to support, the major version of HTTP that was "
"used in the request message."
msgstr ""
-#: doc/classes/HTTPClient.xml:415
+#: doc/classes/HTTPClient.xml:416
msgid ""
"HTTP status code [code]506 Variant Also Negotiates[/code]. The server has an "
"internal configuration error: the chosen variant resource is configured to "
@@ -23992,14 +24508,14 @@ msgid ""
"proper end point in the negotiation process."
msgstr ""
-#: doc/classes/HTTPClient.xml:418
+#: doc/classes/HTTPClient.xml:419
msgid ""
"HTTP status code [code]507 Insufficient Storage[/code]. The method could not "
"be performed on the resource because the server is unable to store the "
"representation needed to successfully complete the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:421
+#: doc/classes/HTTPClient.xml:422
msgid ""
"HTTP status code [code]508 Loop Detected[/code]. The server terminated an "
"operation because it encountered an infinite loop while processing a request "
@@ -24007,14 +24523,14 @@ msgid ""
"failed."
msgstr ""
-#: doc/classes/HTTPClient.xml:424
+#: doc/classes/HTTPClient.xml:425
msgid ""
"HTTP status code [code]510 Not Extended[/code]. The policy for accessing the "
"resource has not been met in the request. The server should send back all "
"the information necessary for the client to issue an extended request."
msgstr ""
-#: doc/classes/HTTPClient.xml:427
+#: doc/classes/HTTPClient.xml:428
msgid ""
"HTTP status code [code]511 Network Authentication Required[/code]. The "
"client needs to authenticate to gain network access."
@@ -24040,12 +24556,21 @@ msgid ""
" http_request.connect(\"request_completed\", self, "
"\"_http_request_completed\")\n"
"\n"
-" # Perform the HTTP request. The URL below returns some JSON as of "
-"writing.\n"
+" # Perform a GET request. The URL below returns JSON as of writing.\n"
" var error = http_request.request(\"https://httpbin.org/get\")\n"
" if error != OK:\n"
" push_error(\"An error occurred in the HTTP request.\")\n"
"\n"
+" # Perform a POST request. The URL below returns JSON as of writing.\n"
+" # Note: Don't make simultaneous requests using a single HTTPRequest "
+"node.\n"
+" # The snippet below is provided for reference only.\n"
+" var body = {\"name\": \"Godette\"}\n"
+" var error = http_request.request(\"https://httpbin.org/post\", [], true, "
+"HTTPClient.METHOD_POST, body)\n"
+" if error != OK:\n"
+" push_error(\"An error occurred in the HTTP request.\")\n"
+"\n"
"\n"
"# Called when the HTTP request is completed.\n"
"func _http_request_completed(result, response_code, headers, body):\n"
@@ -24085,20 +24610,26 @@ msgid ""
" var texture_rect = TextureRect.new()\n"
" add_child(texture_rect)\n"
" texture_rect.texture = texture\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] When performing HTTP requests from a project exported to HTML5, "
+"keep in mind the remote server may not allow requests from foreign origins "
+"due to [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/"
+"url]. If you host the server in question, you should modify its backend to "
+"allow requests from foreign origins by adding the [code]Access-Control-Allow-"
+"Origin: *[/code] HTTP header."
msgstr ""
-#: doc/classes/HTTPRequest.xml:61
+#: doc/classes/HTTPRequest.xml:70
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/"
"http_request_class.html"
msgstr ""
-#: doc/classes/HTTPRequest.xml:69
+#: doc/classes/HTTPRequest.xml:78
msgid "Cancels the current request."
msgstr ""
-#: doc/classes/HTTPRequest.xml:76
+#: doc/classes/HTTPRequest.xml:85
msgid ""
"Returns the response body length.\n"
"[b]Note:[/b] Some Web servers may not send a body length. In this case, the "
@@ -24106,17 +24637,17 @@ msgid ""
"the body length will also be [code]-1[/code]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:84
+#: doc/classes/HTTPRequest.xml:93
msgid "Returns the amount of bytes this HTTPRequest downloaded."
msgstr ""
-#: doc/classes/HTTPRequest.xml:91
+#: doc/classes/HTTPRequest.xml:100
msgid ""
"Returns the current status of the underlying [HTTPClient]. See [enum "
"HTTPClient.Status]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:108
+#: doc/classes/HTTPRequest.xml:117
msgid ""
"Creates request on the underlying [HTTPClient]. If there is no configuration "
"errors, it tries to connect using [method HTTPClient.connect_to_host] and "
@@ -24129,11 +24660,11 @@ msgid ""
"connect to host."
msgstr ""
-#: doc/classes/HTTPRequest.xml:115
+#: doc/classes/HTTPRequest.xml:124
msgid "Maximum allowed size for response bodies."
msgstr ""
-#: doc/classes/HTTPRequest.xml:118
+#: doc/classes/HTTPRequest.xml:127
msgid ""
"The size of the buffer used and maximum bytes to read per iteration. See "
"[member HTTPClient.read_chunk_size].\n"
@@ -24141,63 +24672,63 @@ msgid ""
"files to achieve better speeds at the cost of memory."
msgstr ""
-#: doc/classes/HTTPRequest.xml:122
+#: doc/classes/HTTPRequest.xml:131
msgid "The file to download into. Will output any received file into it."
msgstr ""
-#: doc/classes/HTTPRequest.xml:125
+#: doc/classes/HTTPRequest.xml:134
msgid "Maximum number of allowed redirects."
msgstr ""
-#: doc/classes/HTTPRequest.xml:130
+#: doc/classes/HTTPRequest.xml:139
msgid "If [code]true[/code], multithreading is used to improve performance."
msgstr ""
-#: doc/classes/HTTPRequest.xml:144
+#: doc/classes/HTTPRequest.xml:153
msgid "Emitted when a request is completed."
msgstr ""
-#: doc/classes/HTTPRequest.xml:150
+#: doc/classes/HTTPRequest.xml:159
msgid "Request successful."
msgstr ""
-#: doc/classes/HTTPRequest.xml:155
+#: doc/classes/HTTPRequest.xml:164
msgid "Request failed while connecting."
msgstr ""
-#: doc/classes/HTTPRequest.xml:158
+#: doc/classes/HTTPRequest.xml:167
msgid "Request failed while resolving."
msgstr ""
-#: doc/classes/HTTPRequest.xml:161
+#: doc/classes/HTTPRequest.xml:170
msgid "Request failed due to connection (read/write) error."
msgstr ""
-#: doc/classes/HTTPRequest.xml:164
+#: doc/classes/HTTPRequest.xml:173
msgid "Request failed on SSL handshake."
msgstr ""
-#: doc/classes/HTTPRequest.xml:167
+#: doc/classes/HTTPRequest.xml:176
msgid "Request does not have a response (yet)."
msgstr ""
-#: doc/classes/HTTPRequest.xml:170
+#: doc/classes/HTTPRequest.xml:179
msgid "Request exceeded its maximum size limit, see [member body_size_limit]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:173
+#: doc/classes/HTTPRequest.xml:182
msgid "Request failed (currently unused)."
msgstr ""
-#: doc/classes/HTTPRequest.xml:176
+#: doc/classes/HTTPRequest.xml:185
msgid "HTTPRequest couldn't open the download file."
msgstr ""
-#: doc/classes/HTTPRequest.xml:179
+#: doc/classes/HTTPRequest.xml:188
msgid "HTTPRequest couldn't write to the download file."
msgstr ""
-#: doc/classes/HTTPRequest.xml:182
+#: doc/classes/HTTPRequest.xml:191
msgid "Request reached its maximum redirect limit, see [member max_redirects]."
msgstr ""
@@ -24421,42 +24952,46 @@ msgid "Loads an image from the binary contents of a PNG file."
msgstr ""
#: doc/classes/Image.xml:373
+msgid "Loads an image from the binary contents of a TGA file."
+msgstr ""
+
+#: doc/classes/Image.xml:382
msgid "Loads an image from the binary contents of a WebP file."
msgstr ""
-#: doc/classes/Image.xml:380
+#: doc/classes/Image.xml:389
msgid ""
"Converts the image's data to represent coordinates on a 3D plane. This is "
"used when the image represents a normalmap. A normalmap can add lots of "
"detail to a 3D surface without increasing the polygon count."
msgstr ""
-#: doc/classes/Image.xml:387
+#: doc/classes/Image.xml:396
msgid ""
"Multiplies color values with alpha values. Resulting color values for a "
"pixel are [code](color * alpha)/256[/code]."
msgstr ""
-#: doc/classes/Image.xml:400
+#: doc/classes/Image.xml:409
msgid ""
"Resizes the image to the given [code]width[/code] and [code]height[/code]. "
"New pixels are calculated using [code]interpolation[/code]. See "
"[code]interpolation[/code] constants."
msgstr ""
-#: doc/classes/Image.xml:409
+#: doc/classes/Image.xml:418
msgid ""
"Resizes the image to the nearest power of 2 for the width and height. If "
"[code]square[/code] is [code]true[/code] then set width and height to be the "
"same."
msgstr ""
-#: doc/classes/Image.xml:416
+#: doc/classes/Image.xml:425
msgid ""
"Converts a standard RGBE (Red Green Blue Exponent) image to an sRGB image."
msgstr ""
-#: doc/classes/Image.xml:427
+#: doc/classes/Image.xml:436
msgid ""
"Saves the image as an EXR file to [code]path[/code]. If [code]grayscale[/"
"code] is [code]true[/code] and the image has only one channel, it will be "
@@ -24465,11 +25000,11 @@ msgid ""
"TinyEXR module."
msgstr ""
-#: doc/classes/Image.xml:436
+#: doc/classes/Image.xml:445
msgid "Saves the image as a PNG file to [code]path[/code]."
msgstr ""
-#: doc/classes/Image.xml:455
+#: doc/classes/Image.xml:464
msgid ""
"Sets the [Color] of the pixel at [code](x, y)[/code]. Example:\n"
"[codeblock]\n"
@@ -24479,7 +25014,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Image.xml:471
+#: doc/classes/Image.xml:480
msgid ""
"Sets the [Color] of the pixel at [code](dst.x, dst.y)[/code]. Note that the "
"[code]dst[/code] values must be integers. Example:\n"
@@ -24490,51 +25025,51 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Image.xml:483
+#: doc/classes/Image.xml:492
msgid "Shrinks the image by a factor of 2."
msgstr ""
-#: doc/classes/Image.xml:490
+#: doc/classes/Image.xml:499
msgid "Converts the raw data from the sRGB colorspace to a linear scale."
msgstr ""
-#: doc/classes/Image.xml:496
+#: doc/classes/Image.xml:505
msgid ""
"Holds all of the image's color data in a given format. See [enum Format] "
"constants."
msgstr ""
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:510
msgid "The maximal width allowed for [Image] resources."
msgstr ""
-#: doc/classes/Image.xml:504
+#: doc/classes/Image.xml:513
msgid "The maximal height allowed for [Image] resources."
msgstr ""
-#: doc/classes/Image.xml:507
+#: doc/classes/Image.xml:516
msgid "Texture format with a single 8-bit depth representing luminance."
msgstr ""
-#: doc/classes/Image.xml:510
+#: doc/classes/Image.xml:519
msgid ""
"OpenGL texture format with two values, luminance and alpha each stored with "
"8 bits."
msgstr ""
-#: doc/classes/Image.xml:513
+#: doc/classes/Image.xml:522
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
"bitdepth of 8."
msgstr ""
-#: doc/classes/Image.xml:516
+#: doc/classes/Image.xml:525
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
-#: doc/classes/Image.xml:519
+#: doc/classes/Image.xml:528
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -24542,7 +25077,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:523
+#: doc/classes/Image.xml:532
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -24550,67 +25085,67 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:536
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
-#: doc/classes/Image.xml:532
+#: doc/classes/Image.xml:541
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
-#: doc/classes/Image.xml:535
+#: doc/classes/Image.xml:544
msgid ""
"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
"each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:538
+#: doc/classes/Image.xml:547
msgid ""
"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
"components, each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:541
+#: doc/classes/Image.xml:550
msgid ""
"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
"components, each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:544
+#: doc/classes/Image.xml:553
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 16-"
"bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:556
msgid ""
"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
"each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:550
+#: doc/classes/Image.xml:559
msgid ""
"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
"components, each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:553
+#: doc/classes/Image.xml:562
msgid ""
"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
"components, each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:556
+#: doc/classes/Image.xml:565
msgid ""
"A special OpenGL texture format where the three color components have 9 bits "
"of precision and all three share a single 5-bit exponent."
msgstr ""
-#: doc/classes/Image.xml:559
+#: doc/classes/Image.xml:568
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format that uses Block Compression 1, and is the smallest variation "
@@ -24620,7 +25155,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:563
+#: doc/classes/Image.xml:572
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format that uses Block Compression 2, and color data is interpreted "
@@ -24630,7 +25165,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:567
+#: doc/classes/Image.xml:576
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format also known as Block Compression 3 or BC3 that contains 64 "
@@ -24641,7 +25176,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:571
+#: doc/classes/Image.xml:580
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -24649,7 +25184,7 @@ msgid ""
"DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:574
+#: doc/classes/Image.xml:583
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -24657,7 +25192,7 @@ msgid ""
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:577
+#: doc/classes/Image.xml:586
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -24666,21 +25201,21 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:581
+#: doc/classes/Image.xml:590
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with signed floating-point "
"RGB components."
msgstr ""
-#: doc/classes/Image.xml:584
+#: doc/classes/Image.xml:593
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned floating-point "
"RGB components."
msgstr ""
-#: doc/classes/Image.xml:587
+#: doc/classes/Image.xml:596
msgid ""
"Texture format used on PowerVR-supported mobile platforms, uses 2-bit color "
"depth with no alpha. More information can be found [url=https://en.wikipedia."
@@ -24689,25 +25224,25 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:600
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:603
msgid ""
"Similar to [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with 4-"
"bit color depth and no alpha."
msgstr ""
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:606
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:609
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -24715,7 +25250,7 @@ msgid ""
"standard. This format cannot store an alpha channel."
msgstr ""
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:612
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24723,7 +25258,7 @@ msgid ""
"unsigned data."
msgstr ""
-#: doc/classes/Image.xml:606
+#: doc/classes/Image.xml:615
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24731,7 +25266,7 @@ msgid ""
"channel of signed data."
msgstr ""
-#: doc/classes/Image.xml:609
+#: doc/classes/Image.xml:618
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24739,7 +25274,7 @@ msgid ""
"of unsigned data."
msgstr ""
-#: doc/classes/Image.xml:612
+#: doc/classes/Image.xml:621
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24747,7 +25282,7 @@ msgid ""
"channels of signed data."
msgstr ""
-#: doc/classes/Image.xml:615
+#: doc/classes/Image.xml:624
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24757,7 +25292,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:619
+#: doc/classes/Image.xml:628
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24767,7 +25302,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:623
+#: doc/classes/Image.xml:632
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24778,31 +25313,31 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:631
+#: doc/classes/Image.xml:640
msgid "Represents the size of the [enum Format] enum."
msgstr ""
-#: doc/classes/Image.xml:634
+#: doc/classes/Image.xml:643
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
-#: doc/classes/Image.xml:637
+#: doc/classes/Image.xml:646
msgid ""
"Performs bilinear interpolation. If the image is resized, it will be blurry. "
"This mode is faster than [constant INTERPOLATE_CUBIC], but it results in "
"lower quality."
msgstr ""
-#: doc/classes/Image.xml:640
+#: doc/classes/Image.xml:649
msgid ""
"Performs cubic interpolation. If the image is resized, it will be blurry. "
"This mode often gives better results compared to [constant "
"INTERPOLATE_BILINEAR], at the cost of being slower."
msgstr ""
-#: doc/classes/Image.xml:643
+#: doc/classes/Image.xml:652
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -24817,55 +25352,55 @@ msgid ""
"a new set will be generated for the resulting image."
msgstr ""
-#: doc/classes/Image.xml:650
+#: doc/classes/Image.xml:659
msgid ""
"Performs Lanczos interpolation. This is the slowest image resizing mode, but "
"it typically gives the best results, especially when downscalng images."
msgstr ""
-#: doc/classes/Image.xml:653
+#: doc/classes/Image.xml:662
msgid "Image does not have alpha."
msgstr ""
-#: doc/classes/Image.xml:656
+#: doc/classes/Image.xml:665
msgid "Image stores alpha in a single bit."
msgstr ""
-#: doc/classes/Image.xml:659
+#: doc/classes/Image.xml:668
msgid "Image uses alpha."
msgstr ""
-#: doc/classes/Image.xml:662
+#: doc/classes/Image.xml:671
msgid "Use S3TC compression."
msgstr ""
-#: doc/classes/Image.xml:665
+#: doc/classes/Image.xml:674
msgid "Use PVRTC2 compression."
msgstr ""
-#: doc/classes/Image.xml:668
+#: doc/classes/Image.xml:677
msgid "Use PVRTC4 compression."
msgstr ""
-#: doc/classes/Image.xml:671
+#: doc/classes/Image.xml:680
msgid "Use ETC compression."
msgstr ""
-#: doc/classes/Image.xml:674
+#: doc/classes/Image.xml:683
msgid "Use ETC2 compression."
msgstr ""
-#: doc/classes/Image.xml:689
+#: doc/classes/Image.xml:698
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
-#: doc/classes/Image.xml:692
+#: doc/classes/Image.xml:701
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
-#: doc/classes/Image.xml:695
+#: doc/classes/Image.xml:704
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -25684,7 +26219,7 @@ msgid "Contains mouse click information. See [method Node._input]."
msgstr ""
#: doc/classes/InputEventMouseButton.xml:10
-#: doc/classes/InputEventMouseMotion.xml:10
+#: doc/classes/InputEventMouseMotion.xml:11
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/inputs/"
"mouse_and_input_coordinates.html"
@@ -25721,29 +26256,36 @@ msgstr ""
#: doc/classes/InputEventMouseMotion.xml:7
msgid ""
"Contains mouse and pen motion information. Supports relative, absolute "
-"positions and speed. See [method Node._input]."
+"positions and speed. See [method Node._input].\n"
+"[b]Note:[/b] By default, this event is only emitted once per frame rendered "
+"at most. If you need more precise input reporting, call [method Input."
+"set_use_accumulated_input] with [code]false[/code] to make events emitted as "
+"often as possible. If you use InputEventMouseMotion to draw lines, consider "
+"implementing [url=https://en.wikipedia.org/wiki/Bresenham"
+"%27s_line_algorithm]Bresenham's line algorithm[/url] as well to avoid "
+"visible gaps in lines if the user is moving the mouse quickly."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:16
+#: doc/classes/InputEventMouseMotion.xml:17
msgid ""
"Represents the pressure the user puts on the pen. Ranges from [code]0.0[/"
"code] to [code]1.0[/code]."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:19
+#: doc/classes/InputEventMouseMotion.xml:20
msgid ""
"The mouse position relative to the previous position (position at the last "
-"frame). \n"
+"frame).\n"
"[b]Note:[/b] Since [InputEventMouseMotion] is only emitted when the mouse "
"moves, the last event won't have a relative position of [code]Vector2(0, 0)[/"
"code] when the user stops moving the mouse."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:23
+#: doc/classes/InputEventMouseMotion.xml:24
msgid "The mouse speed in pixels per second."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:26
+#: doc/classes/InputEventMouseMotion.xml:27
msgid ""
"Represents the angles of tilt of the pen. Positive X-coordinate value "
"indicates a tilt to the right. Positive Y-coordinate value indicates a tilt "
@@ -26633,14 +27175,17 @@ msgstr ""
#: doc/classes/JSON.xml:18
msgid ""
-"Parses a JSON encoded string and returns a [JSONParseResult] containing the "
+"Parses a JSON-encoded string and returns a [JSONParseResult] containing the "
"result."
msgstr ""
#: doc/classes/JSON.xml:31
msgid ""
"Converts a [Variant] var to JSON text and returns the result. Useful for "
-"serializing data to store or send over the network."
+"serializing data to store or send over the network.\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, converting a Variant to JSON text "
+"will convert all numerical values to [float] types."
msgstr ""
#: doc/classes/JSONParseResult.xml:4
@@ -26663,14 +27208,14 @@ msgstr ""
#: doc/classes/JSONParseResult.xml:18
msgid ""
-"The line number where the error occurred if JSON source was not successfully "
-"parsed."
+"The line number where the error occurred if the JSON source was not "
+"successfully parsed."
msgstr ""
#: doc/classes/JSONParseResult.xml:21
msgid ""
-"The error message if JSON source was not successfully parsed. See the [enum "
-"Error] constants."
+"The error message if the JSON source was not successfully parsed. See the "
+"[enum Error] constants."
msgstr ""
#: doc/classes/JSONParseResult.xml:24
@@ -26678,11 +27223,11 @@ msgid ""
"A [Variant] containing the parsed JSON. Use [method @GDScript.typeof] or the "
"[code]is[/code] keyword to check if it is what you expect. For example, if "
"the JSON source starts with curly braces ([code]{}[/code]), a [Dictionary] "
-"will be returned. If the JSON source starts with braces ([code][][/code]), "
+"will be returned. If the JSON source starts with brackets ([code][][/code]), "
"an [Array] will be returned.\n"
"[b]Note:[/b] The JSON specification does not define integer or float types, "
-"but only a number type. Therefore, parsing a JSON text will convert all "
-"numerical values to float types.\n"
+"but only a [i]number[/i] type. Therefore, parsing a JSON text will convert "
+"all numerical values to [float] types.\n"
"[b]Note:[/b] JSON objects do not preserve key order like Godot dictionaries, "
"thus, you should not rely on keys being in a certain order if a dictionary "
"is constructed from JSON. In contrast, JSON arrays retain the order of their "
@@ -26692,7 +27237,7 @@ msgid ""
"if typeof(p.result) == TYPE_ARRAY:\n"
" print(p.result[0]) # Prints \"hello\"\n"
"else:\n"
-" print(\"unexpected results\")\n"
+" push_error(\"Unexpected results.\")\n"
"[/codeblock]"
msgstr ""
@@ -26808,7 +27353,7 @@ msgid ""
"simulation will run at an incorrect speed.\n"
"[code]linear_velocity[/code] is the velocity vector in pixels per second. "
"Unlike in [method move_and_collide], you should [i]not[/i] multiply it by "
-"[code]delta[/code] — the physics engine handles applying the velocity. \n"
+"[code]delta[/code] — the physics engine handles applying the velocity.\n"
"[code]up_direction[/code] is the up direction, used to determine what is a "
"wall and what is a floor or a ceiling. If set to the default value of "
"[code]Vector2(0, 0)[/code], everything is considered a wall. This is useful "
@@ -26924,7 +27469,7 @@ msgid ""
"[code]linear_velocity[/code] is the velocity vector (typically meters per "
"second). Unlike in [method move_and_collide], you should [i]not[/i] multiply "
"it by [code]delta[/code] — the physics engine handles applying the "
-"velocity. \n"
+"velocity.\n"
"[code]up_direction[/code] is the up direction, used to determine what is a "
"wall and what is a floor or a ceiling. If set to the default value of "
"[code]Vector3(0, 0, 0)[/code], everything is considered a wall.\n"
@@ -27653,17 +28198,6 @@ msgid ""
"[b]Note:[/b] Hiding a light does [i]not[/i] affect baking."
msgstr ""
-#: doc/classes/Light3D.xml:152
-msgid "Only indirect lighting will be baked (default)."
-msgstr ""
-
-#: doc/classes/Light3D.xml:155
-msgid ""
-"Both direct and indirect light will be baked.\n"
-"[b]Note:[/b] You should hide the light if you don't want it to appear twice "
-"(dynamic and baked)."
-msgstr ""
-
#: doc/classes/LightOccluder2D.xml:4
msgid "Occludes light cast by a Light2D, casting shadows."
msgstr ""
@@ -27942,136 +28476,142 @@ msgstr ""
msgid "Text alignment as defined in the [enum Align] enum."
msgstr ""
-#: doc/classes/LineEdit.xml:120 doc/classes/TextEdit.xml:406
+#: doc/classes/LineEdit.xml:120 doc/classes/TextEdit.xml:358
msgid "If [code]true[/code], the caret (visual cursor) blinks."
msgstr ""
-#: doc/classes/LineEdit.xml:123 doc/classes/TextEdit.xml:409
+#: doc/classes/LineEdit.xml:123 doc/classes/TextEdit.xml:361
msgid "Duration (in seconds) of a caret's blinking cycle."
msgstr ""
-#: doc/classes/LineEdit.xml:126
+#: doc/classes/LineEdit.xml:128
msgid ""
"The cursor's position inside the [LineEdit]. When set, the text may scroll "
"to accommodate it."
msgstr ""
-#: doc/classes/LineEdit.xml:129
+#: doc/classes/LineEdit.xml:131
msgid ""
"If [code]true[/code], the [LineEdit] will show a clear button if [code]text[/"
"code] is not empty, which can be used to clear the text quickly."
msgstr ""
-#: doc/classes/LineEdit.xml:132
+#: doc/classes/LineEdit.xml:134
msgid "If [code]true[/code], the context menu will appear when right-clicked."
msgstr ""
-#: doc/classes/LineEdit.xml:135
+#: doc/classes/LineEdit.xml:137
msgid ""
"If [code]false[/code], existing text cannot be modified and new text cannot "
"be added."
msgstr ""
-#: doc/classes/LineEdit.xml:138
+#: doc/classes/LineEdit.xml:140
msgid ""
"If [code]true[/code], the [LineEdit] width will increase to stay longer than "
"the [member text]. It will [b]not[/b] compress if the [member text] is "
"shortened."
msgstr ""
-#: doc/classes/LineEdit.xml:142
+#: doc/classes/LineEdit.xml:144
msgid ""
"Maximum amount of characters that can be entered inside the [LineEdit]. If "
"[code]0[/code], there is no limit."
msgstr ""
-#: doc/classes/LineEdit.xml:146
+#: doc/classes/LineEdit.xml:148
msgid ""
"Opacity of the [member placeholder_text]. From [code]0[/code] to [code]1[/"
"code]."
msgstr ""
-#: doc/classes/LineEdit.xml:149
+#: doc/classes/LineEdit.xml:151
msgid ""
"Text shown when the [LineEdit] is empty. It is [b]not[/b] the [LineEdit]'s "
"default value (see [member text])."
msgstr ""
-#: doc/classes/LineEdit.xml:152
+#: doc/classes/LineEdit.xml:154
msgid ""
"Sets the icon that will appear in the right end of the [LineEdit] if there's "
"no [member text], or always, if [member clear_button_enabled] is set to "
"[code]false[/code]."
msgstr ""
-#: doc/classes/LineEdit.xml:155
+#: doc/classes/LineEdit.xml:157
msgid ""
"If [code]true[/code], every character is replaced with the secret character "
"(see [member secret_character])."
msgstr ""
-#: doc/classes/LineEdit.xml:158
+#: doc/classes/LineEdit.xml:160
msgid ""
"The character to use to mask secret input (defaults to \"*\"). Only a single "
"character can be used as the secret character."
msgstr ""
-#: doc/classes/LineEdit.xml:161
+#: doc/classes/LineEdit.xml:163
msgid ""
"If [code]false[/code], it's impossible to select the text using mouse nor "
"keyboard."
msgstr ""
-#: doc/classes/LineEdit.xml:164
+#: doc/classes/LineEdit.xml:166
msgid "If [code]false[/code], using shortcuts will be disabled."
msgstr ""
-#: doc/classes/LineEdit.xml:167
+#: doc/classes/LineEdit.xml:169
msgid ""
"String value of the [LineEdit].\n"
"[b]Note:[/b] Changing text using this property won't emit the [signal "
"text_changed] signal."
msgstr ""
-#: doc/classes/LineEdit.xml:174
+#: doc/classes/LineEdit.xml:173 doc/classes/TextEdit.xml:434
+msgid ""
+"If [code]true[/code], the native virtual keyboard is shown when focused on "
+"platforms that support it."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:179
msgid ""
"Emitted when trying to append text that would overflow the [member "
"max_length]."
msgstr ""
-#: doc/classes/LineEdit.xml:181 doc/classes/TextEdit.xml:525
+#: doc/classes/LineEdit.xml:186 doc/classes/TextEdit.xml:490
msgid "Emitted when the text changes."
msgstr ""
-#: doc/classes/LineEdit.xml:188
+#: doc/classes/LineEdit.xml:193
msgid "Emitted when the user presses [constant KEY_ENTER] on the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:194
+#: doc/classes/LineEdit.xml:199
msgid "Aligns the text on the left-hand side of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:197
+#: doc/classes/LineEdit.xml:202
msgid "Centers the text in the middle of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:200
+#: doc/classes/LineEdit.xml:205
msgid "Aligns the text on the right-hand side of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:203
+#: doc/classes/LineEdit.xml:208
msgid "Stretches whitespaces to fit the [LineEdit]'s width."
msgstr ""
-#: doc/classes/LineEdit.xml:206 doc/classes/TextEdit.xml:540
+#: doc/classes/LineEdit.xml:211 doc/classes/TextEdit.xml:505
msgid "Cuts (copies and clears) the selected text."
msgstr ""
-#: doc/classes/LineEdit.xml:209 doc/classes/TextEdit.xml:543
+#: doc/classes/LineEdit.xml:214 doc/classes/TextEdit.xml:508
msgid "Copies the selected text."
msgstr ""
-#: doc/classes/LineEdit.xml:212
+#: doc/classes/LineEdit.xml:217
msgid ""
"Pastes the clipboard text over the selected text (or at the cursor's "
"position).\n"
@@ -28079,80 +28619,80 @@ msgid ""
"clipboard via [method String.strip_escapes]."
msgstr ""
-#: doc/classes/LineEdit.xml:216
+#: doc/classes/LineEdit.xml:221
msgid "Erases the whole [LineEdit] text."
msgstr ""
-#: doc/classes/LineEdit.xml:219
+#: doc/classes/LineEdit.xml:224
msgid "Selects the whole [LineEdit] text."
msgstr ""
-#: doc/classes/LineEdit.xml:222 doc/classes/TextEdit.xml:555
+#: doc/classes/LineEdit.xml:227 doc/classes/TextEdit.xml:520
msgid "Undoes the previous action."
msgstr ""
-#: doc/classes/LineEdit.xml:225
+#: doc/classes/LineEdit.xml:230
msgid "Reverse the last undo action."
msgstr ""
-#: doc/classes/LineEdit.xml:228 doc/classes/TextEdit.xml:561
+#: doc/classes/LineEdit.xml:233 doc/classes/TextEdit.xml:526
msgid "Represents the size of the [enum MenuItems] enum."
msgstr ""
-#: doc/classes/LineEdit.xml:233
+#: doc/classes/LineEdit.xml:238
msgid "Texture for the clear button. See [member clear_button_enabled]."
msgstr ""
-#: doc/classes/LineEdit.xml:236
+#: doc/classes/LineEdit.xml:241
msgid "Color used as default tint for the clear button."
msgstr ""
-#: doc/classes/LineEdit.xml:239
+#: doc/classes/LineEdit.xml:244
msgid "Color used for the clear button when it's pressed."
msgstr ""
-#: doc/classes/LineEdit.xml:242
+#: doc/classes/LineEdit.xml:247
msgid "Color of the [LineEdit]'s visual cursor (caret)."
msgstr ""
-#: doc/classes/LineEdit.xml:245
+#: doc/classes/LineEdit.xml:250
msgid "Background used when [LineEdit] has GUI focus."
msgstr ""
-#: doc/classes/LineEdit.xml:248
+#: doc/classes/LineEdit.xml:253
msgid "Font used for the text."
msgstr ""
-#: doc/classes/LineEdit.xml:251
+#: doc/classes/LineEdit.xml:256
msgid "Default font color."
msgstr ""
-#: doc/classes/LineEdit.xml:254
+#: doc/classes/LineEdit.xml:259
msgid "Font color for selected text (inside the selection rectangle)."
msgstr ""
-#: doc/classes/LineEdit.xml:257
+#: doc/classes/LineEdit.xml:262
msgid "Font color when editing is disabled."
msgstr ""
-#: doc/classes/LineEdit.xml:260
+#: doc/classes/LineEdit.xml:265
msgid ""
"Minimum horizontal space for the text (not counting the clear button and "
"content margins). This value is measured in count of space characters (i.e. "
"this amount of space characters can be displayed without scrolling)."
msgstr ""
-#: doc/classes/LineEdit.xml:263
+#: doc/classes/LineEdit.xml:268
msgid "Default background for the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:266
+#: doc/classes/LineEdit.xml:271
msgid ""
"Background used when [LineEdit] is in read-only mode ([member editable] is "
"set to [code]false[/code])."
msgstr ""
-#: doc/classes/LineEdit.xml:269
+#: doc/classes/LineEdit.xml:274
msgid "Color of the selection rectangle."
msgstr ""
@@ -28370,14 +28910,14 @@ msgstr ""
msgid "Emitted when a user responds to a permission request."
msgstr ""
-#: doc/classes/MainLoop.xml:127 doc/classes/Node.xml:948
+#: doc/classes/MainLoop.xml:127 doc/classes/Node.xml:946
msgid ""
"Notification received from the OS when the application is exceeding its "
"allocated memory.\n"
"Specific to the iOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:131 doc/classes/Node.xml:952
+#: doc/classes/MainLoop.xml:131 doc/classes/Node.xml:950
msgid ""
"Notification received when translations may have changed. Can be triggered "
"by the user changing the locale. Can be used to respond to language changes, "
@@ -28385,39 +28925,55 @@ msgid ""
"the built-in translation support, like [method Object.tr]."
msgstr ""
-#: doc/classes/MainLoop.xml:134 doc/classes/Node.xml:955
+#: doc/classes/MainLoop.xml:134 doc/classes/Node.xml:953
msgid ""
"Notification received from the OS when a request for \"About\" information "
"is sent.\n"
"Specific to the macOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:138 doc/classes/Node.xml:959
+#: doc/classes/MainLoop.xml:138 doc/classes/Node.xml:957
msgid ""
"Notification received from Godot's crash handler when the engine is about to "
"crash.\n"
"Implemented on desktop platforms if the crash handler is enabled."
msgstr ""
-#: doc/classes/MainLoop.xml:142 doc/classes/Node.xml:963
+#: doc/classes/MainLoop.xml:142 doc/classes/Node.xml:961
msgid ""
"Notification received from the OS when an update of the Input Method Engine "
"occurs (e.g. change of IME cursor position or composition string).\n"
"Specific to the macOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:146 doc/classes/Node.xml:967
+#: doc/classes/MainLoop.xml:146 doc/classes/Node.xml:965
msgid ""
-"Notification received from the OS when the app is resumed.\n"
+"Notification received from the OS when the application is resumed.\n"
"Specific to the Android platform."
msgstr ""
-#: doc/classes/MainLoop.xml:150 doc/classes/Node.xml:971
+#: doc/classes/MainLoop.xml:150 doc/classes/Node.xml:969
msgid ""
-"Notification received from the OS when the app is paused.\n"
+"Notification received from the OS when the application is paused.\n"
"Specific to the Android platform."
msgstr ""
+#: doc/classes/MainLoop.xml:154 doc/classes/Node.xml:973
+msgid ""
+"Notification received from the OS when the application is focused, i.e. when "
+"changing the focus from the OS desktop or a thirdparty application to any "
+"open window of the Godot instance.\n"
+"Implemented on desktop platforms."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:158 doc/classes/Node.xml:977
+msgid ""
+"Notification received from the OS when the application is defocused, i.e. "
+"when changing the focus from any open window of the Godot instance to the OS "
+"desktop or a thirdparty application.\n"
+"Implemented on desktop platforms."
+msgstr ""
+
#: doc/classes/MarginContainer.xml:4
msgid "Simple margin container."
msgstr ""
@@ -28725,11 +29281,11 @@ msgstr ""
msgid "Render array as triangle strips."
msgstr ""
-#: doc/classes/Mesh.xml:126 doc/classes/RenderingServer.xml:3189
+#: doc/classes/Mesh.xml:126 doc/classes/RenderingServer.xml:3185
msgid "Blend shapes are normalized."
msgstr ""
-#: doc/classes/Mesh.xml:129 doc/classes/RenderingServer.xml:3192
+#: doc/classes/Mesh.xml:129 doc/classes/RenderingServer.xml:3188
msgid "Blend shapes are relative to base weight."
msgstr ""
@@ -28771,37 +29327,37 @@ msgstr ""
msgid "Mesh array uses indices."
msgstr ""
-#: doc/classes/Mesh.xml:159 doc/classes/RenderingServer.xml:3145
+#: doc/classes/Mesh.xml:159 doc/classes/RenderingServer.xml:3141
msgid "Flag used to mark a compressed (half float) normal array."
msgstr ""
-#: doc/classes/Mesh.xml:162 doc/classes/RenderingServer.xml:3148
+#: doc/classes/Mesh.xml:162 doc/classes/RenderingServer.xml:3144
msgid "Flag used to mark a compressed (half float) tangent array."
msgstr ""
-#: doc/classes/Mesh.xml:165 doc/classes/RenderingServer.xml:3151
+#: doc/classes/Mesh.xml:165 doc/classes/RenderingServer.xml:3147
msgid "Flag used to mark a compressed (half float) color array."
msgstr ""
-#: doc/classes/Mesh.xml:168 doc/classes/RenderingServer.xml:3154
+#: doc/classes/Mesh.xml:168 doc/classes/RenderingServer.xml:3150
msgid "Flag used to mark a compressed (half float) UV coordinates array."
msgstr ""
-#: doc/classes/Mesh.xml:171 doc/classes/RenderingServer.xml:3157
+#: doc/classes/Mesh.xml:171 doc/classes/RenderingServer.xml:3153
msgid ""
"Flag used to mark a compressed (half float) UV coordinates array for the "
"second UV coordinates."
msgstr ""
-#: doc/classes/Mesh.xml:174 doc/classes/RenderingServer.xml:3160
+#: doc/classes/Mesh.xml:174 doc/classes/RenderingServer.xml:3156
msgid "Flag used to mark a compressed index array."
msgstr ""
-#: doc/classes/Mesh.xml:177 doc/classes/RenderingServer.xml:3166
+#: doc/classes/Mesh.xml:177 doc/classes/RenderingServer.xml:3162
msgid "Flag used to mark that the array contains 2D vertices."
msgstr ""
-#: doc/classes/Mesh.xml:180 doc/classes/RenderingServer.xml:3163
+#: doc/classes/Mesh.xml:180 doc/classes/RenderingServer.xml:3159
msgid ""
"Used to set flags [constant ARRAY_COMPRESS_NORMAL], [constant "
"ARRAY_COMPRESS_TANGENT], [constant ARRAY_COMPRESS_COLOR], [constant "
@@ -30562,7 +31118,10 @@ msgstr ""
msgid ""
"The number of channels to be used by ENet. Channels are used to separate "
"different kinds of data. In reliable or ordered mode, for example, the "
-"packet delivery order is ensured on a per channel basis."
+"packet delivery order is ensured on a per-channel basis. This is done to "
+"combat latency and reduces ordering restrictions on packets. The delivery "
+"status of a packet in one channel won't stall the delivery of other packets "
+"in another channel."
msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:134
@@ -30589,11 +31148,12 @@ msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:144
msgid ""
"Set the default channel to be used to transfer data. By default, this value "
-"is [code]-1[/code] which means that ENet will only use 2 channels, one for "
-"reliable and one for unreliable packets. Channel [code]0[/code] is reserved, "
-"and cannot be used. Setting this member to any value between [code]0[/code] "
-"and [member channel_count] (excluded) will force ENet to use that channel "
-"for sending data."
+"is [code]-1[/code] which means that ENet will only use 2 channels: one for "
+"reliable packets, and one for unreliable packets. The channel [code]0[/code] "
+"is reserved and cannot be used. Setting this member to any value between "
+"[code]0[/code] and [member channel_count] (excluded) will force ENet to use "
+"that channel for sending data. See [member channel_count] for more "
+"information about ENet channels."
msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:148
@@ -31785,57 +32345,63 @@ msgstr ""
#: doc/classes/Node.xml:930
msgid ""
-"Notification received from the OS when the game window is focused.\n"
-"Implemented on all platforms."
+"Notification received from the OS when the node's parent [Window] is "
+"focused. This may be a change of focus between two windows of the same "
+"engine instance, or from the OS desktop or a third-party application to a "
+"window of the game (in which case [constant "
+"NOTIFICATION_APPLICATION_FOCUS_IN] is also emitted)."
msgstr ""
-#: doc/classes/Node.xml:934
+#: doc/classes/Node.xml:933
msgid ""
-"Notification received from the OS when the game window is unfocused.\n"
-"Implemented on all platforms."
+"Notification received from the OS when the node's parent [Window] is "
+"defocused. This may be a change of focus between two windows of the same "
+"engine instance, or from a window of the game to the OS desktop or a third-"
+"party application (in which case [constant "
+"NOTIFICATION_APPLICATION_FOCUS_OUT] is also emitted)."
msgstr ""
-#: doc/classes/Node.xml:938
+#: doc/classes/Node.xml:936
msgid ""
"Notification received from the OS when a close request is sent (e.g. closing "
"the window with a \"Close\" button or [kbd]Alt + F4[/kbd]).\n"
"Implemented on desktop platforms."
msgstr ""
-#: doc/classes/Node.xml:942
+#: doc/classes/Node.xml:940
msgid ""
"Notification received from the OS when a go back request is sent (e.g. "
"pressing the \"Back\" button on Android).\n"
"Specific to the Android platform."
msgstr ""
-#: doc/classes/Node.xml:975
+#: doc/classes/Node.xml:981
msgid ""
"Inherits pause mode from the node's parent. For the root node, it is "
"equivalent to [constant PAUSE_MODE_STOP]. Default."
msgstr ""
-#: doc/classes/Node.xml:978
+#: doc/classes/Node.xml:984
msgid "Stops processing when the [SceneTree] is paused."
msgstr ""
-#: doc/classes/Node.xml:981
+#: doc/classes/Node.xml:987
msgid "Continue to process regardless of the [SceneTree] pause state."
msgstr ""
-#: doc/classes/Node.xml:984
+#: doc/classes/Node.xml:990
msgid "Duplicate the node's signals."
msgstr ""
-#: doc/classes/Node.xml:987
+#: doc/classes/Node.xml:993
msgid "Duplicate the node's groups."
msgstr ""
-#: doc/classes/Node.xml:990
+#: doc/classes/Node.xml:996
msgid "Duplicate the node's scripts."
msgstr ""
-#: doc/classes/Node.xml:993
+#: doc/classes/Node.xml:999
msgid ""
"Duplicate using instancing.\n"
"An instance stays linked to the original so when the original changes, the "
@@ -32059,12 +32625,6 @@ msgid ""
"changes. [Node3D] will not propagate this by default."
msgstr ""
-#: doc/classes/Node3D.xml:104
-msgid ""
-"Returns whether the node is visible, taking into consideration that its "
-"parents visibility."
-msgstr ""
-
#: doc/classes/Node3D.xml:115
msgid ""
"Rotates itself so that the local -Z axis points towards the [code]target[/"
@@ -32234,7 +32794,10 @@ msgid "Local translation of this node."
msgstr ""
#: doc/classes/Node3D.xml:326
-msgid "If [code]true[/code], this node is drawn."
+msgid ""
+"If [code]true[/code], this node is drawn. The node is only visible if all of "
+"its antecedents are visible as well (in other words, [method "
+"is_visible_in_tree] must return [code]true[/code])."
msgstr ""
#: doc/classes/Node3D.xml:332
@@ -32491,10 +33054,20 @@ msgid ""
"the key exists, even if the value is [code]null[/code].\n"
"Objects also receive notifications. Notifications are a simple way to notify "
"the object about different events, so they can all be handled together. See "
-"[method _notification]."
+"[method _notification].\n"
+"[b]Note:[/b] Unlike references to a [Reference], references to an Object "
+"stored in a variable can become invalid without warning. Therefore, it's "
+"recommended to use [Reference] for data classes instead of [Object]."
msgstr ""
-#: doc/classes/Object.xml:30
+#: doc/classes/Object.xml:23 doc/classes/Reference.xml:12
+#: doc/classes/Resource.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/getting_started/workflow/"
+"best_practices/node_alternatives.html"
+msgstr ""
+
+#: doc/classes/Object.xml:32
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method get].\n"
@@ -32502,7 +33075,7 @@ msgid ""
"code] does not exist."
msgstr ""
-#: doc/classes/Object.xml:38
+#: doc/classes/Object.xml:40
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method get_property_list].\n"
@@ -32514,11 +33087,11 @@ msgid ""
"PropertyUsageFlags])."
msgstr ""
-#: doc/classes/Object.xml:47
+#: doc/classes/Object.xml:49
msgid "Called when the object is initialized."
msgstr ""
-#: doc/classes/Object.xml:56
+#: doc/classes/Object.xml:58
msgid ""
"Called whenever the object receives a notification, which is identified in "
"[code]what[/code] by a constant. The base [Object] has two constants "
@@ -32527,7 +33100,7 @@ msgid ""
"notifications which are also received by this method."
msgstr ""
-#: doc/classes/Object.xml:67
+#: doc/classes/Object.xml:69
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method set].\n"
@@ -32535,7 +33108,7 @@ msgid ""
"exists."
msgstr ""
-#: doc/classes/Object.xml:75
+#: doc/classes/Object.xml:77
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method to_string], and thus the object's representation where it is "
@@ -32544,34 +33117,42 @@ msgid ""
"[code]\"[ClassName:RID]\"[/code]."
msgstr ""
-#: doc/classes/Object.xml:87
+#: doc/classes/Object.xml:89
msgid ""
"Adds a user-defined [code]signal[/code]. Arguments are optional, but can be "
"added as an [Array] of dictionaries, each containing [code]name: String[/"
"code] and [code]type: int[/code] (see [enum Variant.Type]) entries."
msgstr ""
-#: doc/classes/Object.xml:96
+#: doc/classes/Object.xml:98
msgid ""
"Calls the [code]method[/code] on the object and returns the result. This "
"method supports a variable number of arguments, so parameters are passed as "
"a comma separated list. Example:\n"
"[codeblock]\n"
"call(\"set\", \"position\", Vector2(42.0, 0.0))\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] In C#, the method name must be specified as snake_case if it is "
+"defined by a built-in Godot node. This doesn't apply to user-defined methods "
+"where you should use the same convention as in the C# source (typically "
+"PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:108
+#: doc/classes/Object.xml:111
msgid ""
"Calls the [code]method[/code] on the object during idle time. This method "
"supports a variable number of arguments, so parameters are passed as a comma "
"separated list. Example:\n"
"[codeblock]\n"
"call_deferred(\"set\", \"position\", Vector2(42.0, 0.0))\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] In C#, the method name must be specified as snake_case if it is "
+"defined by a built-in Godot node. This doesn't apply to user-defined methods "
+"where you should use the same convention as in the C# source (typically "
+"PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:122
+#: doc/classes/Object.xml:126
msgid ""
"Calls the [code]method[/code] on the object and returns the result. "
"Contrarily to [method call], this method does not support a variable number "
@@ -32581,13 +33162,13 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:132
+#: doc/classes/Object.xml:136
msgid ""
"Returns [code]true[/code] if the object can translate strings. See [method "
"set_message_translation] and [method tr]."
msgstr ""
-#: doc/classes/Object.xml:147
+#: doc/classes/Object.xml:151
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32623,7 +33204,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:174
+#: doc/classes/Object.xml:178
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32634,7 +33215,7 @@ msgid ""
"exists."
msgstr ""
-#: doc/classes/Object.xml:185
+#: doc/classes/Object.xml:189
msgid ""
"Emits the given [code]signal[/code]. The signal must exist, so it should be "
"a built-in signal of this class or one of its parent classes, or a user-"
@@ -32646,24 +33227,28 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:196
+#: doc/classes/Object.xml:200
msgid ""
"Deletes the object from memory. Any pre-existing reference to the freed "
"object will become invalid, e.g. [code]is_instance_valid(object)[/code] will "
"return [code]false[/code]."
msgstr ""
-#: doc/classes/Object.xml:205
+#: doc/classes/Object.xml:209
msgid ""
"Returns the [Variant] value of the given [code]property[/code]. If the "
-"[code]property[/code] doesn't exist, this will return [code]null[/code]."
+"[code]property[/code] doesn't exist, this will return [code]null[/code].\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:212
+#: doc/classes/Object.xml:217
msgid "Returns the object's class as a [String]."
msgstr ""
-#: doc/classes/Object.xml:219
+#: doc/classes/Object.xml:224
msgid ""
"Returns an [Array] of dictionaries with information about signals that are "
"connected to the object.\n"
@@ -32674,7 +33259,7 @@ msgid ""
"connected."
msgstr ""
-#: doc/classes/Object.xml:232
+#: doc/classes/Object.xml:237
msgid ""
"Gets the object's property indexed by the given [NodePath]. The node path "
"should be relative to the current object and can use the colon character "
@@ -32682,26 +33267,26 @@ msgid ""
"\"[/code] or [code]\"material:next_pass:blend_mode\"[/code]."
msgstr ""
-#: doc/classes/Object.xml:239
+#: doc/classes/Object.xml:244
msgid ""
"Returns the object's unique instance ID.\n"
"This ID can be saved in [EncodedObjectAsID], and can be used to retrieve the "
"object instance with [method @GDScript.instance_from_id]."
msgstr ""
-#: doc/classes/Object.xml:249
+#: doc/classes/Object.xml:254
msgid "Returns the object's metadata entry for the given [code]name[/code]."
msgstr ""
-#: doc/classes/Object.xml:256
+#: doc/classes/Object.xml:261
msgid "Returns the object's metadata as a [PackedStringArray]."
msgstr ""
-#: doc/classes/Object.xml:263
+#: doc/classes/Object.xml:268
msgid "Returns the object's methods and their signatures as an [Array]."
msgstr ""
-#: doc/classes/Object.xml:270
+#: doc/classes/Object.xml:275
msgid ""
"Returns the object's property list as an [Array] of dictionaries.\n"
"Each property's [Dictionary] contain at least [code]name: String[/code] and "
@@ -32711,54 +33296,54 @@ msgid ""
"PropertyUsageFlags])."
msgstr ""
-#: doc/classes/Object.xml:278
+#: doc/classes/Object.xml:283
msgid ""
"Returns the object's [Script] instance, or [code]null[/code] if none is "
"assigned."
msgstr ""
-#: doc/classes/Object.xml:287
+#: doc/classes/Object.xml:292
msgid "Returns an [Array] of connections for the given [code]signal[/code]."
msgstr ""
-#: doc/classes/Object.xml:294
+#: doc/classes/Object.xml:299
msgid "Returns the list of signals as an [Array] of dictionaries."
msgstr ""
-#: doc/classes/Object.xml:303
+#: doc/classes/Object.xml:308
msgid ""
"Returns [code]true[/code] if a metadata entry is found with the given "
"[code]name[/code]."
msgstr ""
-#: doc/classes/Object.xml:312
+#: doc/classes/Object.xml:317
msgid ""
"Returns [code]true[/code] if the object contains the given [code]method[/"
"code]."
msgstr ""
-#: doc/classes/Object.xml:321
+#: doc/classes/Object.xml:326
msgid "Returns [code]true[/code] if the given [code]signal[/code] exists."
msgstr ""
-#: doc/classes/Object.xml:330
+#: doc/classes/Object.xml:335
msgid ""
"Returns [code]true[/code] if the given user-defined [code]signal[/code] "
"exists. Only signals added using [method add_user_signal] are taken into "
"account."
msgstr ""
-#: doc/classes/Object.xml:337
+#: doc/classes/Object.xml:342
msgid "Returns [code]true[/code] if signal emission blocking is enabled."
msgstr ""
-#: doc/classes/Object.xml:346
+#: doc/classes/Object.xml:351
msgid ""
"Returns [code]true[/code] if the object inherits from the given [code]class[/"
"code]."
msgstr ""
-#: doc/classes/Object.xml:357
+#: doc/classes/Object.xml:362
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32766,13 +33351,13 @@ msgid ""
"code], [code]target[/code], and [code]method[/code]."
msgstr ""
-#: doc/classes/Object.xml:365
+#: doc/classes/Object.xml:370
msgid ""
"Returns [code]true[/code] if the [method Node.queue_free] method was called "
"for the object."
msgstr ""
-#: doc/classes/Object.xml:376
+#: doc/classes/Object.xml:381
msgid ""
"Send a given notification to the object, which will also trigger a call to "
"the [method _notification] method of all classes that the object inherits "
@@ -32784,34 +33369,42 @@ msgid ""
"and then down to its successive inheriting classes."
msgstr ""
-#: doc/classes/Object.xml:384
+#: doc/classes/Object.xml:389
msgid ""
"Notify the editor that the property list has changed, so that editor plugins "
"can take the new values into account. Does nothing on export builds."
msgstr ""
-#: doc/classes/Object.xml:393
+#: doc/classes/Object.xml:398
msgid "Removes a given entry from the object's metadata."
msgstr ""
-#: doc/classes/Object.xml:404
+#: doc/classes/Object.xml:409
msgid ""
"Assigns a new value to the given property. If the [code]property[/code] does "
-"not exist, nothing will happen."
+"not exist, nothing will happen.\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:413
+#: doc/classes/Object.xml:419
msgid "If set to [code]true[/code], signal emission is blocked."
msgstr ""
-#: doc/classes/Object.xml:424
+#: doc/classes/Object.xml:430
msgid ""
"Assigns a new value to the given property, after the current frame's physics "
"step. This is equivalent to calling [method set] via [method call_deferred], "
-"i.e. [code]call_deferred(\"set\", property, value)[/code]."
+"i.e. [code]call_deferred(\"set\", property, value)[/code].\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:435
+#: doc/classes/Object.xml:442
msgid ""
"Assigns a new value to the property identified by the [NodePath]. The node "
"path should be relative to the current object and can use the colon "
@@ -32823,19 +33416,19 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:449
+#: doc/classes/Object.xml:456
msgid ""
"Defines whether the object can translate strings (with calls to [method "
"tr]). Enabled by default."
msgstr ""
-#: doc/classes/Object.xml:460
+#: doc/classes/Object.xml:467
msgid ""
"Adds or changes a given entry in the object's metadata. Metadata are "
"serialized, and can take any [Variant] value."
msgstr ""
-#: doc/classes/Object.xml:469
+#: doc/classes/Object.xml:476
msgid ""
"Assigns a script to the object. Each object can have a single script "
"assigned to it, which are used to extend its functionality.\n"
@@ -32844,7 +33437,7 @@ msgid ""
"_init] method will be called."
msgstr ""
-#: doc/classes/Object.xml:477
+#: doc/classes/Object.xml:484
msgid ""
"Returns a [String] representing the object. If not overridden, defaults to "
"[code]\"[ClassName:RID]\"[/code].\n"
@@ -32852,7 +33445,7 @@ msgid ""
"representation."
msgstr ""
-#: doc/classes/Object.xml:487
+#: doc/classes/Object.xml:494
msgid ""
"Translates a message using translation catalogs configured in the Project "
"Settings.\n"
@@ -32861,35 +33454,35 @@ msgid ""
"set_message_translation]."
msgstr ""
-#: doc/classes/Object.xml:495
+#: doc/classes/Object.xml:502
msgid "Emitted whenever the object's script is changed."
msgstr ""
-#: doc/classes/Object.xml:501
+#: doc/classes/Object.xml:508
msgid "Called right when the object is initialized. Not available in script."
msgstr ""
-#: doc/classes/Object.xml:504
+#: doc/classes/Object.xml:511
msgid "Called before the object is about to be deleted."
msgstr ""
-#: doc/classes/Object.xml:507
+#: doc/classes/Object.xml:514
msgid ""
"Connects a signal in deferred mode. This way, signal emissions are stored in "
"a queue, then set on idle time."
msgstr ""
-#: doc/classes/Object.xml:510
+#: doc/classes/Object.xml:517
msgid "Persisting connections are saved when the object is serialized to file."
msgstr ""
-#: doc/classes/Object.xml:513
+#: doc/classes/Object.xml:520
msgid "One-shot connections disconnect themselves after emission."
msgstr ""
-#: doc/classes/Object.xml:516
+#: doc/classes/Object.xml:523
msgid ""
-"Connect a signal as reference counted. This means that a given signal can be "
+"Connect a signal as reference-counted. This means that a given signal can be "
"connected several times to the same target, and will only be fully "
"disconnected once no references are left."
msgstr ""
@@ -33354,10 +33947,29 @@ msgid "Returns the keycode of the given string (e.g. \"Escape\")."
msgstr ""
#: doc/classes/OS.xml:115
-msgid "Returns the command line arguments passed to the engine."
+msgid ""
+"Returns the command-line arguments passed to the engine.\n"
+"Command-line arguments can be written in any form, including both [code]--"
+"key value[/code] and [code]--key=value[/code] forms so they can be properly "
+"parsed, as long as custom command-line arguments do not conflict with engine "
+"arguments.\n"
+"You can also incorporate environment variables using the [method "
+"get_environment] method.\n"
+"You can set [code]editor/main_run_args[/code] in the Project Settings to "
+"define command-line arguments to be passed by the editor when running the "
+"project.\n"
+"Here's a minimal example on how to parse command-line arguments into a "
+"dictionary using the [code]--key=value[/code] form for arguments:\n"
+"[codeblock]\n"
+"var arguments = {}\n"
+"for argument in OS.get_cmdline_args():\n"
+" if argument.find(\"=\") > -1:\n"
+" var key_value = argument.split(\"=\")\n"
+" arguments[key_value[0].lstrip(\"--\")] = key_value[1]\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/OS.xml:122
+#: doc/classes/OS.xml:133
msgid ""
"Returns an array of MIDI device names.\n"
"The returned array will be empty if the system MIDI driver has not "
@@ -33365,14 +33977,14 @@ msgid ""
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:133
+#: doc/classes/OS.xml:144
msgid ""
"Returns current date as a dictionary of keys: [code]year[/code], "
"[code]month[/code], [code]day[/code], [code]weekday[/code], [code]dst[/code] "
"(Daylight Savings Time)."
msgstr ""
-#: doc/classes/OS.xml:142
+#: doc/classes/OS.xml:153
msgid ""
"Returns current datetime as a dictionary of keys: [code]year[/code], "
"[code]month[/code], [code]day[/code], [code]weekday[/code], [code]dst[/code] "
@@ -33380,7 +33992,7 @@ msgid ""
"[code]second[/code]."
msgstr ""
-#: doc/classes/OS.xml:151
+#: doc/classes/OS.xml:162
msgid ""
"Gets a dictionary of time values corresponding to the given UNIX epoch time "
"(in seconds).\n"
@@ -33389,22 +34001,22 @@ msgid ""
"the epoch."
msgstr ""
-#: doc/classes/OS.xml:161
+#: doc/classes/OS.xml:172
msgid "Returns an environment variable."
msgstr ""
-#: doc/classes/OS.xml:168
+#: doc/classes/OS.xml:179
msgid "Returns the path to the current engine executable."
msgstr ""
-#: doc/classes/OS.xml:175
+#: doc/classes/OS.xml:186
msgid ""
"With this function you can get the list of dangerous permissions that have "
"been granted to the Android application.\n"
"[b]Note:[/b] This method is implemented on Android."
msgstr ""
-#: doc/classes/OS.xml:185
+#: doc/classes/OS.xml:196
msgid ""
"Returns the given keycode as a string (e.g. Return values: [code]\"Escape\"[/"
"code], [code]\"Shift+Escape\"[/code]).\n"
@@ -33412,18 +34024,18 @@ msgid ""
"get_keycode_with_modifiers]."
msgstr ""
-#: doc/classes/OS.xml:193
+#: doc/classes/OS.xml:204
msgid "Returns the host OS locale."
msgstr ""
-#: doc/classes/OS.xml:200
+#: doc/classes/OS.xml:211
msgid ""
"Returns the model name of the current device.\n"
"[b]Note:[/b] This method is implemented on Android and iOS. Returns "
"[code]\"GenericDevice\"[/code] on unsupported platforms."
msgstr ""
-#: doc/classes/OS.xml:208
+#: doc/classes/OS.xml:219
msgid ""
"Returns the name of the host OS. Possible values are: [code]\"Android\"[/"
"code], [code]\"iOS\"[/code], [code]\"HTML5\"[/code], [code]\"OSX\"[/code], "
@@ -33431,81 +34043,81 @@ msgid ""
"[code]\"X11\"[/code]."
msgstr ""
-#: doc/classes/OS.xml:215
+#: doc/classes/OS.xml:226
msgid ""
"Returns the project's process ID.\n"
"[b]Note:[/b] This method is implemented on Android, iOS, Linux, macOS and "
"Windows."
msgstr ""
-#: doc/classes/OS.xml:223
+#: doc/classes/OS.xml:234
msgid "Returns the number of threads available on the host machine."
msgstr ""
-#: doc/classes/OS.xml:230
+#: doc/classes/OS.xml:241
msgid ""
"Returns the amount of time in milliseconds it took for the boot logo to "
"appear."
msgstr ""
-#: doc/classes/OS.xml:237
+#: doc/classes/OS.xml:248
msgid "Returns the maximum amount of static memory used (only works in debug)."
msgstr ""
-#: doc/classes/OS.xml:244
+#: doc/classes/OS.xml:255
msgid "Returns the amount of static memory being used by the program in bytes."
msgstr ""
-#: doc/classes/OS.xml:253
+#: doc/classes/OS.xml:264
msgid ""
"Returns the actual path to commonly used folders across different platforms. "
"Available locations are specified in [enum SystemDir].\n"
"[b]Note:[/b] This method is implemented on Android, Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:261
+#: doc/classes/OS.xml:272
msgid ""
"Returns the total number of available tablet drivers.\n"
"[b]Note:[/b] This method is implemented on Windows."
msgstr ""
-#: doc/classes/OS.xml:271
+#: doc/classes/OS.xml:282
msgid ""
"Returns the tablet driver name for the given index.\n"
"[b]Note:[/b] This method is implemented on Windows."
msgstr ""
-#: doc/classes/OS.xml:279
+#: doc/classes/OS.xml:290
msgid ""
"Returns the amount of time passed in milliseconds since the engine started."
msgstr ""
-#: doc/classes/OS.xml:286
+#: doc/classes/OS.xml:297
msgid ""
"Returns the amount of time passed in microseconds since the engine started."
msgstr ""
-#: doc/classes/OS.xml:295
+#: doc/classes/OS.xml:306
msgid "Returns current time as a dictionary of keys: hour, minute, second."
msgstr ""
-#: doc/classes/OS.xml:302
+#: doc/classes/OS.xml:313
msgid ""
"Returns the current time zone as a dictionary with the keys: bias and name."
msgstr ""
-#: doc/classes/OS.xml:309
+#: doc/classes/OS.xml:320
msgid ""
"Returns a string that is unique to the device.\n"
"[b]Note:[/b] Returns an empty string on HTML5 and UWP, as this method isn't "
"implemented on those platforms yet."
msgstr ""
-#: doc/classes/OS.xml:317
+#: doc/classes/OS.xml:328
msgid "Returns the current UNIX epoch timestamp."
msgstr ""
-#: doc/classes/OS.xml:326
+#: doc/classes/OS.xml:337
msgid ""
"Gets an epoch time value from a dictionary of time values.\n"
"[code]datetime[/code] must be populated with the following keys: [code]year[/"
@@ -33516,7 +34128,7 @@ msgid ""
"ignored."
msgstr ""
-#: doc/classes/OS.xml:335
+#: doc/classes/OS.xml:346
msgid ""
"Returns the absolute directory path where user data is written ([code]user://"
"[/code]).\n"
@@ -33534,11 +34146,11 @@ msgid ""
"[/code]."
msgstr ""
-#: doc/classes/OS.xml:348
+#: doc/classes/OS.xml:359
msgid "Returns [code]true[/code] if an environment variable exists."
msgstr ""
-#: doc/classes/OS.xml:357
+#: doc/classes/OS.xml:368
msgid ""
"Returns [code]true[/code] if the feature for the given feature tag is "
"supported in the currently running instance, depending on platform, build "
@@ -33549,7 +34161,7 @@ msgid ""
"[b]Note:[/b] Tag names are case-sensitive."
msgstr ""
-#: doc/classes/OS.xml:365
+#: doc/classes/OS.xml:376
msgid ""
"Returns [code]true[/code] if the Godot binary used to run the project is a "
"[i]debug[/i] export template, or when running in the editor.\n"
@@ -33560,26 +34172,26 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/OS.xml:376
+#: doc/classes/OS.xml:387
msgid ""
"Returns [code]true[/code] if the input keycode corresponds to a Unicode "
"character."
msgstr ""
-#: doc/classes/OS.xml:383
+#: doc/classes/OS.xml:394
msgid ""
"Returns [code]true[/code] if the engine was executed with [code]-v[/code] "
"(verbose stdout)."
msgstr ""
-#: doc/classes/OS.xml:390
+#: doc/classes/OS.xml:401
msgid ""
"If [code]true[/code], the [code]user://[/code] file system is persistent, so "
"that its state is the same after a player quits and starts the game again. "
"Relevant to the HTML5 platform, where this persistence may be unavailable."
msgstr ""
-#: doc/classes/OS.xml:399
+#: doc/classes/OS.xml:410
msgid ""
"Kill (terminate) the process identified by the given process ID ([code]pid[/"
"code]), e.g. the one returned by [method execute] in non-blocking mode.\n"
@@ -33589,37 +34201,37 @@ msgid ""
"Windows."
msgstr ""
-#: doc/classes/OS.xml:408
+#: doc/classes/OS.xml:419
msgid ""
"Initialises the singleton for the system MIDI driver.\n"
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:418
+#: doc/classes/OS.xml:429
msgid ""
"Shows all resources in the game. Optionally, the list can be written to a "
"file by specifying a file path in [code]tofile[/code]."
msgstr ""
-#: doc/classes/OS.xml:425
+#: doc/classes/OS.xml:436
msgid "Shows the list of loaded textures sorted by size in memory."
msgstr ""
-#: doc/classes/OS.xml:434
+#: doc/classes/OS.xml:445
msgid "Shows the number of resources loaded by the game of the given types."
msgstr ""
-#: doc/classes/OS.xml:443
+#: doc/classes/OS.xml:454
msgid "Shows all resources currently used by the game."
msgstr ""
-#: doc/classes/OS.xml:452
+#: doc/classes/OS.xml:463
msgid ""
"At the moment this function is only used by [code]AudioDriverOpenSL[/code] "
"to request permission for [code]RECORD_AUDIO[/code] on Android."
msgstr ""
-#: doc/classes/OS.xml:459
+#: doc/classes/OS.xml:470
msgid ""
"With this function you can request dangerous permissions since normal "
"permissions are automatically granted at install time in Android "
@@ -33627,15 +34239,15 @@ msgid ""
"[b]Note:[/b] This method is implemented on Android."
msgstr ""
-#: doc/classes/OS.xml:469
+#: doc/classes/OS.xml:480
msgid "Sets the name of the current thread."
msgstr ""
-#: doc/classes/OS.xml:478
+#: doc/classes/OS.xml:489
msgid "Enables backup saves if [code]enabled[/code] is [code]true[/code]."
msgstr ""
-#: doc/classes/OS.xml:487
+#: doc/classes/OS.xml:498
msgid ""
"Requests the OS to open a resource with the most appropriate program. For "
"example:\n"
@@ -33654,7 +34266,7 @@ msgid ""
"and Windows."
msgstr ""
-#: doc/classes/OS.xml:498
+#: doc/classes/OS.xml:509
msgid ""
"The exit code passed to the OS when the main loop exits. By convention, an "
"exit code of [code]0[/code] indicates success whereas a non-zero exit code "
@@ -33664,137 +34276,137 @@ msgid ""
"with an [code]exit_code[/code] argument passed."
msgstr ""
-#: doc/classes/OS.xml:502
+#: doc/classes/OS.xml:513
msgid ""
"If [code]true[/code], the engine optimizes for low processor usage by only "
"refreshing the screen if needed. Can improve battery consumption on mobile."
msgstr ""
-#: doc/classes/OS.xml:505
+#: doc/classes/OS.xml:516
msgid ""
"The amount of sleeping between frames when the low-processor usage mode is "
"enabled (in microseconds). Higher values will result in lower CPU usage."
msgstr ""
-#: doc/classes/OS.xml:508
-msgid "The current tablet drvier in use."
+#: doc/classes/OS.xml:519
+msgid "The current tablet driver in use."
msgstr ""
-#: doc/classes/OS.xml:513
+#: doc/classes/OS.xml:524
msgid ""
"The GLES2 rendering backend. It uses OpenGL ES 2.0 on mobile devices, OpenGL "
"2.1 on desktop platforms and WebGL 1.0 on the web."
msgstr ""
-#: doc/classes/OS.xml:516
+#: doc/classes/OS.xml:527
msgid "The Vulkan rendering backend."
msgstr ""
-#: doc/classes/OS.xml:519
+#: doc/classes/OS.xml:530
msgid "Sunday."
msgstr ""
-#: doc/classes/OS.xml:522
+#: doc/classes/OS.xml:533
msgid "Monday."
msgstr ""
-#: doc/classes/OS.xml:525
+#: doc/classes/OS.xml:536
msgid "Tuesday."
msgstr ""
-#: doc/classes/OS.xml:528
+#: doc/classes/OS.xml:539
msgid "Wednesday."
msgstr ""
-#: doc/classes/OS.xml:531
+#: doc/classes/OS.xml:542
msgid "Thursday."
msgstr ""
-#: doc/classes/OS.xml:534
+#: doc/classes/OS.xml:545
msgid "Friday."
msgstr ""
-#: doc/classes/OS.xml:537
+#: doc/classes/OS.xml:548
msgid "Saturday."
msgstr ""
-#: doc/classes/OS.xml:540
+#: doc/classes/OS.xml:551
msgid "January."
msgstr ""
-#: doc/classes/OS.xml:543
+#: doc/classes/OS.xml:554
msgid "February."
msgstr ""
-#: doc/classes/OS.xml:546
+#: doc/classes/OS.xml:557
msgid "March."
msgstr ""
-#: doc/classes/OS.xml:549
+#: doc/classes/OS.xml:560
msgid "April."
msgstr ""
-#: doc/classes/OS.xml:552
+#: doc/classes/OS.xml:563
msgid "May."
msgstr ""
-#: doc/classes/OS.xml:555
+#: doc/classes/OS.xml:566
msgid "June."
msgstr ""
-#: doc/classes/OS.xml:558
+#: doc/classes/OS.xml:569
msgid "July."
msgstr ""
-#: doc/classes/OS.xml:561
+#: doc/classes/OS.xml:572
msgid "August."
msgstr ""
-#: doc/classes/OS.xml:564
+#: doc/classes/OS.xml:575
msgid "September."
msgstr ""
-#: doc/classes/OS.xml:567
+#: doc/classes/OS.xml:578
msgid "October."
msgstr ""
-#: doc/classes/OS.xml:570
+#: doc/classes/OS.xml:581
msgid "November."
msgstr ""
-#: doc/classes/OS.xml:573
+#: doc/classes/OS.xml:584
msgid "December."
msgstr ""
-#: doc/classes/OS.xml:576
+#: doc/classes/OS.xml:587
msgid "Desktop directory path."
msgstr ""
-#: doc/classes/OS.xml:579
+#: doc/classes/OS.xml:590
msgid "DCIM (Digital Camera Images) directory path."
msgstr ""
-#: doc/classes/OS.xml:582
+#: doc/classes/OS.xml:593
msgid "Documents directory path."
msgstr ""
-#: doc/classes/OS.xml:585
+#: doc/classes/OS.xml:596
msgid "Downloads directory path."
msgstr ""
-#: doc/classes/OS.xml:588
+#: doc/classes/OS.xml:599
msgid "Movies directory path."
msgstr ""
-#: doc/classes/OS.xml:591
+#: doc/classes/OS.xml:602
msgid "Music directory path."
msgstr ""
-#: doc/classes/OS.xml:594
+#: doc/classes/OS.xml:605
msgid "Pictures directory path."
msgstr ""
-#: doc/classes/OS.xml:597
+#: doc/classes/OS.xml:608
msgid "Ringtones directory path."
msgstr ""
@@ -33849,7 +34461,15 @@ msgid ""
"should always be preferred."
msgstr ""
-#: doc/classes/PackedByteArray.xml:85
+#: doc/classes/PackedByteArray.xml:87 doc/classes/PackedColorArray.xml:53
+#: doc/classes/PackedFloat32Array.xml:54 doc/classes/PackedFloat64Array.xml:54
+#: doc/classes/PackedInt32Array.xml:54 doc/classes/PackedInt64Array.xml:54
+#: doc/classes/PackedStringArray.xml:53 doc/classes/PackedVector2Array.xml:53
+#: doc/classes/PackedVector3Array.xml:53
+msgid "Returns [code]true[/code] if the array contains [code]value[/code]."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:94
msgid ""
"Returns a hexadecimal representation of this array as a [String].\n"
"[codeblock]\n"
@@ -33858,39 +34478,48 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/PackedByteArray.xml:100 doc/classes/PackedColorArray.xml:55
-#: doc/classes/PackedFloat32Array.xml:56 doc/classes/PackedFloat64Array.xml:56
-#: doc/classes/PackedStringArray.xml:55 doc/classes/PackedVector2Array.xml:55
-#: doc/classes/PackedVector3Array.xml:55
+#: doc/classes/PackedByteArray.xml:109 doc/classes/PackedColorArray.xml:64
+#: doc/classes/PackedFloat32Array.xml:65 doc/classes/PackedFloat64Array.xml:65
+#: doc/classes/PackedStringArray.xml:64 doc/classes/PackedVector2Array.xml:64
+#: doc/classes/PackedVector3Array.xml:64
msgid ""
"Inserts a new element at a given position in the array. The position must be "
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PackedByteArray.xml:134 doc/classes/PackedColorArray.xml:89
-#: doc/classes/PackedFloat32Array.xml:90 doc/classes/PackedFloat64Array.xml:90
-#: doc/classes/PackedInt32Array.xml:90 doc/classes/PackedInt64Array.xml:90
-#: doc/classes/PackedStringArray.xml:89 doc/classes/PackedVector2Array.xml:89
-#: doc/classes/PackedVector3Array.xml:89
+#: doc/classes/PackedByteArray.xml:143 doc/classes/PackedColorArray.xml:98
+#: doc/classes/PackedFloat32Array.xml:99 doc/classes/PackedFloat64Array.xml:99
+#: doc/classes/PackedInt32Array.xml:99 doc/classes/PackedInt64Array.xml:99
+#: doc/classes/PackedStringArray.xml:98 doc/classes/PackedVector2Array.xml:98
+#: doc/classes/PackedVector3Array.xml:98
msgid ""
"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."
msgstr ""
-#: doc/classes/PackedByteArray.xml:145
+#: doc/classes/PackedByteArray.xml:154
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PackedByteArray.xml:152 doc/classes/PackedColorArray.xml:107
-#: doc/classes/PackedFloat32Array.xml:108
-#: doc/classes/PackedFloat64Array.xml:108 doc/classes/PackedStringArray.xml:107
-#: doc/classes/PackedVector2Array.xml:107
-#: doc/classes/PackedVector3Array.xml:107
+#: doc/classes/PackedByteArray.xml:161 doc/classes/PackedColorArray.xml:116
+#: doc/classes/PackedFloat32Array.xml:117
+#: doc/classes/PackedFloat64Array.xml:117 doc/classes/PackedStringArray.xml:116
+#: doc/classes/PackedVector2Array.xml:116
+#: doc/classes/PackedVector3Array.xml:116
msgid "Returns the size of the array."
msgstr ""
-#: doc/classes/PackedByteArray.xml:163
+#: doc/classes/PackedByteArray.xml:168 doc/classes/PackedColorArray.xml:123
+#: doc/classes/PackedFloat32Array.xml:124
+#: doc/classes/PackedFloat64Array.xml:124 doc/classes/PackedInt32Array.xml:124
+#: doc/classes/PackedInt64Array.xml:124 doc/classes/PackedStringArray.xml:123
+#: doc/classes/PackedVector2Array.xml:123
+#: doc/classes/PackedVector3Array.xml:123
+msgid "Sorts the elements of the array in ascending order."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:179
msgid ""
"Returns the slice of the [PackedByteArray] between indices (inclusive) as a "
"new [PackedByteArray]. Any negative index is considered to be from the end "
@@ -33918,12 +34547,12 @@ msgstr ""
msgid "Appends a [PackedColorArray] at the end of this array."
msgstr ""
-#: doc/classes/PackedColorArray.xml:71 doc/classes/PackedInt32Array.xml:72
-#: doc/classes/PackedInt64Array.xml:72
+#: doc/classes/PackedColorArray.xml:80 doc/classes/PackedInt32Array.xml:81
+#: doc/classes/PackedInt64Array.xml:81
msgid "Appends a value to the array."
msgstr ""
-#: doc/classes/PackedColorArray.xml:100
+#: doc/classes/PackedColorArray.xml:109
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -33953,8 +34582,8 @@ msgstr ""
msgid "Appends a [PackedFloat32Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedFloat32Array.xml:101
-#: doc/classes/PackedFloat64Array.xml:101
+#: doc/classes/PackedFloat32Array.xml:110
+#: doc/classes/PackedFloat64Array.xml:110
msgid "Changes the float at the given index."
msgstr ""
@@ -34007,17 +34636,17 @@ msgstr ""
msgid "Appends a [PackedInt32Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:56 doc/classes/PackedInt64Array.xml:56
+#: doc/classes/PackedInt32Array.xml:65 doc/classes/PackedInt64Array.xml:65
msgid ""
"Inserts a new integer at a given position in the array. The position must be "
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:101 doc/classes/PackedInt64Array.xml:101
+#: doc/classes/PackedInt32Array.xml:110 doc/classes/PackedInt64Array.xml:110
msgid "Changes the integer at the given index."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:108 doc/classes/PackedInt64Array.xml:108
+#: doc/classes/PackedInt32Array.xml:117 doc/classes/PackedInt64Array.xml:117
msgid "Returns the array size."
msgstr ""
@@ -34058,6 +34687,14 @@ msgid ""
"Can be used to save a node to a file. When saving, the node as well as all "
"the node it owns get saved (see [code]owner[/code] property on [Node]).\n"
"[b]Note:[/b] The node doesn't need to own itself.\n"
+"[b]Example of loading a saved scene:[/b]\n"
+"[codeblock]\n"
+"# Use `load()` instead of `preload()` if the path isn't known at compile-"
+"time.\n"
+"var scene = preload(\"res://scene.tscn\").instance()\n"
+"# Add the node as a child of the node the script is attached to.\n"
+"add_child(scene)\n"
+"[/codeblock]\n"
"[b]Example of saving a node with different owners:[/b] The following example "
"creates 3 objects: [code]Node2D[/code] ([code]node[/code]), "
"[code]RigidBody2D[/code] ([code]rigid[/code]) and [code]CollisionObject2D[/"
@@ -34089,29 +34726,29 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/PackedScene.xml:40
+#: doc/classes/PackedScene.xml:47
msgid "Returns [code]true[/code] if the scene file has nodes."
msgstr ""
-#: doc/classes/PackedScene.xml:47
+#: doc/classes/PackedScene.xml:54
msgid ""
"Returns the [code]SceneState[/code] representing the scene file contents."
msgstr ""
-#: doc/classes/PackedScene.xml:56
+#: doc/classes/PackedScene.xml:63
msgid ""
"Instantiates the scene's node hierarchy. Triggers child scene "
"instantiation(s). Triggers a [constant Node.NOTIFICATION_INSTANCED] "
"notification on the root node."
msgstr ""
-#: doc/classes/PackedScene.xml:65
+#: doc/classes/PackedScene.xml:72
msgid ""
"Pack will ignore any sub-nodes not owned by given node. See [member Node."
"owner]."
msgstr ""
-#: doc/classes/PackedScene.xml:71
+#: doc/classes/PackedScene.xml:78
msgid ""
"A dictionary representation of the scene contents.\n"
"Available keys include \"rnames\" and \"variants\" for resources, "
@@ -34120,18 +34757,18 @@ msgid ""
"connections, and \"version\" for the format style of the PackedScene."
msgstr ""
-#: doc/classes/PackedScene.xml:77
+#: doc/classes/PackedScene.xml:84
msgid "If passed to [method instance], blocks edits to the scene state."
msgstr ""
-#: doc/classes/PackedScene.xml:80
+#: doc/classes/PackedScene.xml:87
msgid ""
"If passed to [method instance], provides local scene resources to the local "
"scene.\n"
"[b]Note:[/b] Only available in editor builds."
msgstr ""
-#: doc/classes/PackedScene.xml:84
+#: doc/classes/PackedScene.xml:91
msgid ""
"If passed to [method instance], provides local scene resources to the local "
"scene. Only the main scene should receive the main edit state.\n"
@@ -34159,11 +34796,11 @@ msgstr ""
msgid "Appends a [PackedStringArray] at the end of this array."
msgstr ""
-#: doc/classes/PackedStringArray.xml:71
+#: doc/classes/PackedStringArray.xml:80
msgid "Appends a string element at end of the array."
msgstr ""
-#: doc/classes/PackedStringArray.xml:100
+#: doc/classes/PackedStringArray.xml:109
msgid "Changes the [String] at the given index."
msgstr ""
@@ -34188,11 +34825,11 @@ msgstr ""
msgid "Appends a [PackedVector2Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedVector2Array.xml:71
+#: doc/classes/PackedVector2Array.xml:80
msgid "Inserts a [Vector2] at the end."
msgstr ""
-#: doc/classes/PackedVector2Array.xml:100
+#: doc/classes/PackedVector2Array.xml:109
msgid "Changes the [Vector2] at the given index."
msgstr ""
@@ -34217,11 +34854,11 @@ msgstr ""
msgid "Appends a [PackedVector3Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedVector3Array.xml:71
+#: doc/classes/PackedVector3Array.xml:80
msgid "Inserts a [Vector3] at the end."
msgstr ""
-#: doc/classes/PackedVector3Array.xml:100
+#: doc/classes/PackedVector3Array.xml:109
msgid "Changes the [Vector3] at the given index."
msgstr ""
@@ -35112,13 +35749,55 @@ msgid ""
"as the values displayed in the [b]Monitor[/b] tab in the editor's "
"[b]Debugger[/b] panel. By using the [method get_monitor] method of this "
"class, you can access this data from your code.\n"
+"You can add custom monitors using the [method add_custom_monitor] method. "
+"Custom monitors are available in [b]Monitor[/b] tab in the editor's "
+"[b]Debugger[/b] panel together with built-in monitors.\n"
"[b]Note:[/b] A few of these monitors are only available in debug mode and "
"will always return 0 when used in a release build.\n"
"[b]Note:[/b] Many of these monitors are not updated in real-time, so there "
-"may be a short delay between changes."
+"may be a short delay between changes.\n"
+"[b]Note:[/b] Custom monitors do not support negative values. Negative values "
+"are clamped to 0."
+msgstr ""
+
+#: doc/classes/Performance.xml:26
+msgid ""
+"Adds a custom monitor with name same as id. You can specify the category of "
+"monitor using '/' in id. If there are more than one '/' then default "
+"category is used. Default category is \"Custom\".\n"
+"[codeblock]\n"
+"Performance.add_custom_monitor(\"MyCategory/MyMonitor\", some_callable) # "
+"Adds monitor with name \"MyName\" to category \"MyCategory\"\n"
+"Performance.add_custom_monitor(\"MyMonitor\", some_callable) # Adds monitor "
+"with name \"MyName\" to category \"Custom\"\n"
+"# Note: \"MyCategory/MyMonitor\" and \"MyMonitor\" have same name but "
+"different ids so above code is valid\n"
+"Performance.add_custom_monitor(\"Custom/MyMonitor\", some_callable) # Adds "
+"monitor with name \"MyName\" to category \"Custom\"\n"
+"# Note: \"MyMonitor\" and \"Custom/MyMonitor\" have same name and same "
+"category but different ids so above code is valid\n"
+"Performance.add_custom_monitor(\"MyCategoryOne/MyCategoryTwo/MyMonitor\", "
+"some_callable) # Adds monitor with name \"MyCategoryOne/MyCategoryTwo/"
+"MyMonitor\" to category \"Custom\"\n"
+"[/codeblock]\n"
+"The debugger calls the callable to get the value of custom monitor. The "
+"callable must return a number.\n"
+"Callables are called with arguments supplied in argument array.\n"
+"[b]Note:[/b] It throws an error if given id is already present."
+msgstr ""
+
+#: doc/classes/Performance.xml:46
+msgid ""
+"Returns the value of custom monitor with given id. The callable is called to "
+"get the value of custom monitor.\n"
+"[b]Note:[/b] It throws an error if the given id is absent."
+msgstr ""
+
+#: doc/classes/Performance.xml:54
+msgid "Returns the names of active custom monitors in an array."
msgstr ""
-#: doc/classes/Performance.xml:20
+#: doc/classes/Performance.xml:63
msgid ""
"Returns the value of one of the available monitors. You should provide one "
"of the [enum Monitor] constants as the argument, like this:\n"
@@ -35128,123 +35807,139 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Performance.xml:29
+#: doc/classes/Performance.xml:73
+msgid "Returns the last tick in which custom monitor was added/removed."
+msgstr ""
+
+#: doc/classes/Performance.xml:82
+msgid ""
+"Returns true if custom monitor with the given id is present otherwise "
+"returns false."
+msgstr ""
+
+#: doc/classes/Performance.xml:91
+msgid ""
+"Removes the custom monitor with given id.\n"
+"[b]Note:[/b] It throws an error if the given id is already absent."
+msgstr ""
+
+#: doc/classes/Performance.xml:98
msgid "Number of frames per second."
msgstr ""
-#: doc/classes/Performance.xml:32
+#: doc/classes/Performance.xml:101
msgid "Time it took to complete one frame, in seconds."
msgstr ""
-#: doc/classes/Performance.xml:35
+#: doc/classes/Performance.xml:104
msgid "Time it took to complete one physics frame, in seconds."
msgstr ""
-#: doc/classes/Performance.xml:38
+#: doc/classes/Performance.xml:107
msgid ""
"Static memory currently used, in bytes. Not available in release builds."
msgstr ""
-#: doc/classes/Performance.xml:41
+#: doc/classes/Performance.xml:110
msgid "Available static memory. Not available in release builds."
msgstr ""
-#: doc/classes/Performance.xml:44
+#: doc/classes/Performance.xml:113
msgid ""
"Largest amount of memory the message queue buffer has used, in bytes. The "
"message queue is used for deferred functions calls and notifications."
msgstr ""
-#: doc/classes/Performance.xml:47
+#: doc/classes/Performance.xml:116
msgid "Number of objects currently instanced (including nodes)."
msgstr ""
-#: doc/classes/Performance.xml:50
+#: doc/classes/Performance.xml:119
msgid "Number of resources currently used."
msgstr ""
-#: doc/classes/Performance.xml:53
+#: doc/classes/Performance.xml:122
msgid ""
"Number of nodes currently instanced in the scene tree. This also includes "
"the root node."
msgstr ""
-#: doc/classes/Performance.xml:56
+#: doc/classes/Performance.xml:125
msgid ""
"Number of orphan nodes, i.e. nodes which are not parented to a node of the "
"scene tree."
msgstr ""
-#: doc/classes/Performance.xml:59
+#: doc/classes/Performance.xml:128
msgid "3D objects drawn per frame."
msgstr ""
-#: doc/classes/Performance.xml:62
+#: doc/classes/Performance.xml:131
msgid "Vertices drawn per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:65
+#: doc/classes/Performance.xml:134
msgid "Material changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:68
+#: doc/classes/Performance.xml:137
msgid "Shader changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:71
+#: doc/classes/Performance.xml:140
msgid "Render surface changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:74
+#: doc/classes/Performance.xml:143
msgid "Draw calls per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:77 doc/classes/RenderingServer.xml:3805
+#: doc/classes/Performance.xml:146 doc/classes/RenderingServer.xml:3816
msgid ""
"The amount of video memory used, i.e. texture and vertex memory combined."
msgstr ""
-#: doc/classes/Performance.xml:80 doc/classes/RenderingServer.xml:3808
+#: doc/classes/Performance.xml:149 doc/classes/RenderingServer.xml:3819
msgid "The amount of texture memory used."
msgstr ""
-#: doc/classes/Performance.xml:83 doc/classes/RenderingServer.xml:3811
+#: doc/classes/Performance.xml:152 doc/classes/RenderingServer.xml:3822
msgid "The amount of vertex memory used."
msgstr ""
-#: doc/classes/Performance.xml:86 doc/classes/RenderingServer.xml:3802
+#: doc/classes/Performance.xml:155 doc/classes/RenderingServer.xml:3813
msgid "Unimplemented in the GLES2 rendering backend, always returns 0."
msgstr ""
-#: doc/classes/Performance.xml:89
+#: doc/classes/Performance.xml:158
msgid "Number of active [RigidBody2D] nodes in the game."
msgstr ""
-#: doc/classes/Performance.xml:92
+#: doc/classes/Performance.xml:161
msgid "Number of collision pairs in the 2D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:95
+#: doc/classes/Performance.xml:164
msgid "Number of islands in the 2D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:98
+#: doc/classes/Performance.xml:167
msgid "Number of active [RigidBody3D] and [VehicleBody3D] nodes in the game."
msgstr ""
-#: doc/classes/Performance.xml:101
+#: doc/classes/Performance.xml:170
msgid "Number of collision pairs in the 3D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:104
+#: doc/classes/Performance.xml:173
msgid "Number of islands in the 3D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:107
+#: doc/classes/Performance.xml:176
msgid "Output latency of the [AudioServer]."
msgstr ""
-#: doc/classes/Performance.xml:110
+#: doc/classes/Performance.xml:179
msgid "Represents the size of the [enum Monitor] enum."
msgstr ""
@@ -35268,27 +35963,27 @@ msgstr ""
msgid "Damps the body's rotation if greater than [code]0[/code]."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:70 doc/classes/RigidBody3D.xml:132
+#: doc/classes/PhysicalBone3D.xml:70 doc/classes/RigidBody3D.xml:139
msgid "Lock the body's rotation in the X axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:73 doc/classes/RigidBody3D.xml:135
+#: doc/classes/PhysicalBone3D.xml:73 doc/classes/RigidBody3D.xml:142
msgid "Lock the body's rotation in the Y axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:76 doc/classes/RigidBody3D.xml:138
+#: doc/classes/PhysicalBone3D.xml:76 doc/classes/RigidBody3D.xml:145
msgid "Lock the body's rotation in the Z axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:79 doc/classes/RigidBody3D.xml:141
+#: doc/classes/PhysicalBone3D.xml:79 doc/classes/RigidBody3D.xml:148
msgid "Lock the body's movement in the X axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:82 doc/classes/RigidBody3D.xml:144
+#: doc/classes/PhysicalBone3D.xml:82 doc/classes/RigidBody3D.xml:151
msgid "Lock the body's movement in the Y axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:85 doc/classes/RigidBody3D.xml:147
+#: doc/classes/PhysicalBone3D.xml:85 doc/classes/RigidBody3D.xml:154
msgid "Lock the body's movement in the Z axis."
msgstr ""
@@ -35343,12 +36038,12 @@ msgstr ""
msgid "Damps the body's movement if greater than [code]0[/code]."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:118 doc/classes/RigidBody2D.xml:158
-#: doc/classes/RigidBody3D.xml:175
+#: doc/classes/PhysicalBone3D.xml:118 doc/classes/RigidBody2D.xml:159
+#: doc/classes/RigidBody3D.xml:183
msgid "The body's mass."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:121 doc/classes/RigidBody3D.xml:188
+#: doc/classes/PhysicalBone3D.xml:121 doc/classes/RigidBody3D.xml:196
msgid ""
"The body's weight based on its mass and the global 3D gravity. Global values "
"are set in [b]Project > Project Settings > Physics > 3d[/b]."
@@ -35655,7 +36350,7 @@ msgid "The inverse of the mass of the body."
msgstr ""
#: doc/classes/PhysicsDirectBodyState2D.xml:195
-#: doc/classes/PhysicsDirectBodyState3D.xml:198 doc/classes/RigidBody2D.xml:155
+#: doc/classes/PhysicsDirectBodyState3D.xml:198 doc/classes/RigidBody2D.xml:156
msgid "The body's linear velocity."
msgstr ""
@@ -36208,7 +36903,7 @@ msgid ""
msgstr ""
#: doc/classes/PhysicsServer2D.xml:620 doc/classes/PhysicsServer3D.xml:637
-#: doc/classes/RigidBody3D.xml:120
+#: doc/classes/RigidBody3D.xml:127
msgid ""
"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."
@@ -37273,47 +37968,64 @@ msgid ""
"collision queries. See also [PhysicsShapeQueryResult2D]."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:18
-msgid ""
-"Sets the [Shape2D] that will be used for collision/intersection queries."
-msgstr ""
-
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:24
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:15
msgid "If [code]true[/code], the query will take [Area2D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:18
msgid ""
"If [code]true[/code], the query will take [PhysicsBody2D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:30
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:30
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:21
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:21
msgid "The physics layer(s) the query will take into account (as a bitmask)."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:33
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:33
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:24
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:24
msgid ""
"The list of objects or object [RID]s that will be excluded from collisions."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:36
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:36 doc/classes/Shape3D.xml:16
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:27 doc/classes/Shape3D.xml:16
msgid "The collision margin for the shape."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:39
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:30
msgid "The motion of the shape being queried for."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:42
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:39
-msgid "The queried shape's [RID]. See also [method set_shape]."
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:33
+msgid ""
+"The [Shape2D] that will be used for collision/intersection queries. This "
+"stores the actual reference which avoids the shape to be released while "
+"being used for queries, so always prefer using this over [member shape_rid]."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:36
+msgid ""
+"The queried shape's [RID] that will be used for collision/intersection "
+"queries. Use this over [member shape] if you want to optimize for "
+"performance using the Servers API:\n"
+"[codeblock]\n"
+"var shape_rid = PhysicsServer2D.circle_shape_create()\n"
+"var radius = 64\n"
+"PhysicsServer2D.shape_set_data(shape_rid, radius)\n"
+"\n"
+"var params = PhysicsShapeQueryParameters2D.new()\n"
+"params.shape_rid = shape_rid\n"
+"\n"
+"# Execute physics queries here...\n"
+"\n"
+"# Release the shape when done with physics queries.\n"
+"PhysicsServer2D.free_rid(shape_rid)\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:45
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:42
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:52
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:49
msgid "The queried shape's transform matrix."
msgstr ""
@@ -37327,18 +38039,40 @@ msgid ""
"collision queries. See also [PhysicsShapeQueryResult3D]."
msgstr ""
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:15
+msgid "If [code]true[/code], the query will take [Area3D]s into account."
+msgstr ""
+
#: doc/classes/PhysicsShapeQueryParameters3D.xml:18
msgid ""
-"Sets the [Shape3D] that will be used for collision/intersection queries."
+"If [code]true[/code], the query will take [PhysicsBody3D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:24
-msgid "If [code]true[/code], the query will take [Area3D]s into account."
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:30
+msgid ""
+"The [Shape3D] that will be used for collision/intersection queries. This "
+"stores the actual reference which avoids the shape to be released while "
+"being used for queries, so always prefer using this over [member shape_rid]."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:33
msgid ""
-"If [code]true[/code], the query will take [PhysicsBody3D]s into account."
+"The queried shape's [RID] that will be used for collision/intersection "
+"queries. Use this over [member shape] if you want to optimize for "
+"performance using the Servers API:\n"
+"[codeblock]\n"
+"var shape_rid = PhysicsServer3D.shape_create(PhysicsServer3D.SHAPE_SPHERE)\n"
+"var radius = 2.0\n"
+"PhysicsServer3D.shape_set_data(shape_rid, radius)\n"
+"\n"
+"var params = PhysicsShapeQueryParameters3D.new()\n"
+"params.shape_rid = shape_rid\n"
+"\n"
+"# Execute physics queries here...\n"
+"\n"
+"# Release the shape when done with physics queries.\n"
+"PhysicsServer3D.free_rid(shape_rid)\n"
+"[/codeblock]"
msgstr ""
#: doc/classes/PhysicsShapeQueryResult2D.xml:4
@@ -37479,92 +38213,94 @@ msgid ""
"code]."
msgstr ""
-#: doc/classes/Plane.xml:72
-msgid "Returns a point on the plane."
-msgstr ""
-
-#: doc/classes/Plane.xml:83
+#: doc/classes/Plane.xml:76
msgid ""
-"Returns [code]true[/code] if [code]point[/code] is inside the plane (by a "
-"very minimum [code]epsilon[/code] threshold)."
+"Returns [code]true[/code] if [code]point[/code] is inside the plane. "
+"Comparison uses a custom minimum [code]epsilon[/code] threshold."
msgstr ""
-#: doc/classes/Plane.xml:94
+#: doc/classes/Plane.xml:87
msgid ""
"Returns the intersection point of the three planes [code]b[/code], [code]c[/"
"code] and this plane. If no intersection is found, [code]null[/code] is "
"returned."
msgstr ""
-#: doc/classes/Plane.xml:105
+#: doc/classes/Plane.xml:98
msgid ""
"Returns the intersection point of a ray consisting of the position "
"[code]from[/code] and the direction normal [code]dir[/code] with this plane. "
"If no intersection is found, [code]null[/code] is returned."
msgstr ""
-#: doc/classes/Plane.xml:116
+#: doc/classes/Plane.xml:109
msgid ""
"Returns the intersection point of a segment from position [code]begin[/code] "
"to position [code]end[/code] with this plane. If no intersection is found, "
"[code]null[/code] is returned."
msgstr ""
-#: doc/classes/Plane.xml:125
+#: doc/classes/Plane.xml:118
msgid ""
"Returns [code]true[/code] if this plane and [code]plane[/code] are "
"approximately equal, by running [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/Plane.xml:134
+#: doc/classes/Plane.xml:127
msgid ""
"Returns [code]true[/code] if [code]point[/code] is located above the plane."
msgstr ""
-#: doc/classes/Plane.xml:141
+#: doc/classes/Plane.xml:134
msgid "Returns a copy of the plane, normalized."
msgstr ""
-#: doc/classes/Plane.xml:150
+#: doc/classes/Plane.xml:143
msgid ""
-"Returns the orthogonal projection of point [code]p[/code] into a point in "
-"the plane."
+"Returns the orthogonal projection of [code]point[/code] into a point in the "
+"plane."
msgstr ""
-#: doc/classes/Plane.xml:156
+#: doc/classes/Plane.xml:149
msgid ""
-"Distance from the origin to the plane, in the direction of [member normal]."
+"The distance from the origin to the plane, in the direction of [member "
+"normal]. This value is typically non-negative.\n"
+"In the scalar equation of the plane [code]ax + by + cz = d[/code], this is "
+"[code]d[/code], while the [code](a, b, c)[/code] coordinates are represented "
+"by the [member normal] property."
msgstr ""
-#: doc/classes/Plane.xml:159
+#: doc/classes/Plane.xml:153
msgid ""
-"The normal of the plane. \"Over\" or \"Above\" the plane is considered the "
-"side of the plane towards where the normal is pointing."
+"The normal of the plane, which must be normalized.\n"
+"In the scalar equation of the plane [code]ax + by + cz = d[/code], this is "
+"the vector [code](a, b, c)[/code], where [code]d[/code] is the [member d] "
+"property."
msgstr ""
-#: doc/classes/Plane.xml:162
-msgid "The [member normal]'s X component."
+#: doc/classes/Plane.xml:157
+msgid "The X component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:165
-msgid "The [member normal]'s Y component."
+#: doc/classes/Plane.xml:160
+msgid "The Y component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:168
-msgid "The [member normal]'s Z component."
+#: doc/classes/Plane.xml:163
+msgid "The Z component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:173
-msgid "A plane that extends in the Y and Z axes."
+#: doc/classes/Plane.xml:168
+msgid "A plane that extends in the Y and Z axes (normal vector points +X)."
msgstr ""
-#: doc/classes/Plane.xml:176
-msgid "A plane that extends in the X and Z axes."
+#: doc/classes/Plane.xml:171
+msgid "A plane that extends in the X and Z axes (normal vector points +Y)."
msgstr ""
-#: doc/classes/Plane.xml:179
-msgid "A plane that extends in the X and Y axes."
+#: doc/classes/Plane.xml:174
+msgid "A plane that extends in the X and Y axes (normal vector points +Z)."
msgstr ""
#: doc/classes/PlaneMesh.xml:4
@@ -38275,18 +39011,25 @@ msgstr ""
#: doc/classes/PrimitiveMesh.xml:16
msgid ""
-"Returns mesh arrays used to constitute surface of [Mesh]. Mesh arrays can be "
-"used with [ArrayMesh] to create new surfaces."
+"Returns mesh arrays used to constitute surface of [Mesh]. The result can be "
+"passed to [method ArrayMesh.add_surface_from_arrays] to create a new "
+"surface. For example:\n"
+"[codeblock]\n"
+"var c := CylinderMesh.new()\n"
+"var arr_mesh := ArrayMesh.new()\n"
+"arr_mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLES, c."
+"get_mesh_arrays())\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:22
+#: doc/classes/PrimitiveMesh.xml:27
msgid ""
"Overrides the [AABB] with one defined by user for use with frustum culling. "
"Especially useful to avoid unnexpected culling when using a shader to "
"offset vertices."
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:25
+#: doc/classes/PrimitiveMesh.xml:30
msgid ""
"If set, the order of the vertices in each triangle are reversed resulting in "
"the backside of the mesh being drawn.\n"
@@ -38294,7 +39037,7 @@ msgid ""
"[member BaseMaterial3D.cull_mode]."
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:29
+#: doc/classes/PrimitiveMesh.xml:34
msgid "The current [Material] of the primitive mesh."
msgstr ""
@@ -38725,11 +39468,17 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:260
msgid ""
+"Safer override for [member audio/output_latency] in the Web platform, to "
+"avoid audio issues especially on mobile devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:263
+msgid ""
"Setting to hardcode audio delay when playing video. Best to leave this "
"untouched unless you know what you are doing."
msgstr ""
-#: doc/classes/ProjectSettings.xml:263
+#: doc/classes/ProjectSettings.xml:266
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -38739,7 +39488,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:269
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -38749,27 +39498,27 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:269
+#: doc/classes/ProjectSettings.xml:272
msgid ""
"The default compression level for Zstandard. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
"speed. Decompression speed is mostly unaffected by the compression level."
msgstr ""
-#: doc/classes/ProjectSettings.xml:272
+#: doc/classes/ProjectSettings.xml:275
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:278
msgid ""
"Largest size limit (in power of 2) allowed when compressing using long-"
"distance matching with Zstandard. Higher values can result in better "
"compression, but will require more memory when compressing and decompressing."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:281
msgid ""
"If [code]true[/code], displays getters and setters in autocompletion results "
"in the script editor. This setting is meant to be used when porting old "
@@ -38777,74 +39526,55 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:281
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:284
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:287
+#: doc/classes/ProjectSettings.xml:294
msgid ""
"If [code]true[/code], enables specific GDScript warnings (see [code]debug/"
"gdscript/warnings/*[/code] settings). If [code]false[/code], disables all "
"GDScript warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
-msgid ""
-"If [code]true[/code], enables warnings when a function is declared with the "
-"same name as a constant."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:296
-msgid ""
-"If [code]true[/code], enables warnings when a function is declared with the "
-"same name as a variable. This will turn into an error in a future version "
-"when first-class functions become supported in GDScript."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:299
-msgid ""
-"If [code]true[/code], enables warnings when a function assigned to a "
-"variable may yield and return a function state instead of a value."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:302
+#: doc/classes/ProjectSettings.xml:300
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:303
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when dividing an integer by another "
"integer (the decimal part will be discarded)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when passing a floating-point value "
"to a function that expects an integer (it will be converted and lose "
"precision)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:314
+#: doc/classes/ProjectSettings.xml:312
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
@@ -38865,102 +39595,85 @@ msgid ""
"member variable)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:323
+#: doc/classes/ProjectSettings.xml:325
msgid ""
"If [code]true[/code], enables warnings when calling an expression that has "
"no effect on the surrounding code, such as writing [code]2 + 2[/code] as a "
"statement."
msgstr ""
-#: doc/classes/ProjectSettings.xml:326
+#: doc/classes/ProjectSettings.xml:328
msgid ""
"If [code]true[/code], enables warnings when calling a ternary expression "
"that has no effect on the surrounding code, such as writing [code]42 if "
"active else 0[/code] as a statement."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:331
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:334
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:335
+#: doc/classes/ProjectSettings.xml:337
msgid ""
"If [code]true[/code], enables warnings when assigning a variable using an "
"assignment operator like [code]+=[/code] if the variable wasn't previously "
"assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:338
+#: doc/classes/ProjectSettings.xml:340
msgid ""
"If [code]true[/code], enables warnings when unreachable code is detected "
"(such as after a [code]return[/code] statement that will always be executed)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:345
msgid ""
"If [code]true[/code], enables warnings when using an expression whose type "
"may not be compatible with the function parameter expected."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:348
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:347
+#: doc/classes/ProjectSettings.xml:351
msgid ""
"If [code]true[/code], enables warnings when calling a method whose presence "
"is not guaranteed at compile-time in the class."
msgstr ""
-#: doc/classes/ProjectSettings.xml:350
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], enables warnings when accessing a property whose "
"presence is not guaranteed at compile-time in the class."
msgstr ""
-#: doc/classes/ProjectSettings.xml:353
-msgid ""
-"If [code]true[/code], enables warnings when a function parameter is unused."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:356
-msgid ""
-"If [code]true[/code], enables warnings when a member variable is unused."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:363
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:362
+#: doc/classes/ProjectSettings.xml:366
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:365
-msgid ""
-"If [code]true[/code], enables warnings when a variable is declared with the "
-"same name as a function. This will turn into an error in a future version "
-"when first-class functions become supported in GDScript."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:368
+#: doc/classes/ProjectSettings.xml:369
msgid ""
"If [code]true[/code], enables warnings when assigning the result of a "
"function that returns [code]void[/code] to a variable."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:374
+#: doc/classes/ProjectSettings.xml:375
msgid ""
"Maximum number of frames per second allowed. The actual number of frames per "
"second may still be below this value if the game is lagging.\n"
@@ -38971,143 +39684,143 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:379
+#: doc/classes/ProjectSettings.xml:380
msgid "Maximum call stack allowed for debugging GDScript."
msgstr ""
-#: doc/classes/ProjectSettings.xml:382
+#: doc/classes/ProjectSettings.xml:383
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:385
+#: doc/classes/ProjectSettings.xml:386
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:388
+#: doc/classes/ProjectSettings.xml:389
msgid ""
"Print more information to standard output when running. It displays "
"information such as memory leaks, which scenes and resources are being "
"loaded, etc."
msgstr ""
-#: doc/classes/ProjectSettings.xml:391
+#: doc/classes/ProjectSettings.xml:392
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:394
+#: doc/classes/ProjectSettings.xml:395
msgid ""
"Color of the contact points between collision shapes, visible when \"Visible "
"Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:397
+#: doc/classes/ProjectSettings.xml:398
msgid ""
"Maximum number of contact points between collision shapes to display when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:400
+#: doc/classes/ProjectSettings.xml:401
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
msgid "Hotspot for the custom mouse cursor image."
msgstr ""
-#: doc/classes/ProjectSettings.xml:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
msgid ""
"If [code]true[/code], allows HiDPI display on Windows and macOS. This "
"setting has no effect on desktop Linux, as DPI-awareness fallbacks are not "
"supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"If [code]true[/code], keeps the screen on (even in case of inactivity), so "
"the screensaver does not take over. Works on desktop and mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
msgid "Default orientation on mobile devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"If [code]true[/code], the home indicator is hidden automatically. This only "
"affects iOS devices without a physical home button."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid "Force the window to be always on top."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid "Force the window to be borderless."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Sets the window to full screen when it starts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid ""
"Sets the game's main viewport height. On desktop platforms, this is the "
"default window size. Stretch mode settings also use this as a reference when "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Allows the window to be resizable by default."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"Sets the game's main viewport width. On desktop platforms, this is the "
"default window size. Stretch mode settings also use this as a reference when "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:454
+#: doc/classes/ProjectSettings.xml:455
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:457
+#: doc/classes/ProjectSettings.xml:458
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -39116,7 +39829,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:460
+#: doc/classes/ProjectSettings.xml:461
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -39127,13 +39840,13 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:464
+#: doc/classes/ProjectSettings.xml:465
msgid ""
"Search path for project-specific script templates. Script templates will be "
"search both in the editor-specific path and in this project-specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:467
+#: doc/classes/ProjectSettings.xml:468
msgid ""
"Text-based file extensions to include in the script editor's \"Find in Files"
"\" feature. You can add e.g. [code]tscn[/code] if you wish to also parse "
@@ -39141,49 +39854,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:470
+#: doc/classes/ProjectSettings.xml:471
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:473
+#: doc/classes/ProjectSettings.xml:474
msgid ""
-"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
+"If [code]true[/code], swaps Cancel and OK buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:478
+#: doc/classes/ProjectSettings.xml:479
msgid ""
"Path to a custom [Theme] resource file to use for the project ([code]theme[/"
"code] or generic [code]tres[/code]/[code]res[/code] extension)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:484
+#: doc/classes/ProjectSettings.xml:485
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:487
+#: doc/classes/ProjectSettings.xml:488
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:490
+#: doc/classes/ProjectSettings.xml:491
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:493
+#: doc/classes/ProjectSettings.xml:494
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:496
+#: doc/classes/ProjectSettings.xml:497
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -39192,7 +39905,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"Default [InputEventAction] to discard a modal or pending input.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39200,7 +39913,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:504
+#: doc/classes/ProjectSettings.xml:505
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39208,7 +39921,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:508
+#: doc/classes/ProjectSettings.xml:509
msgid ""
"Default [InputEventAction] to go to the end position of a [Control] (e.g. "
"last item in an [ItemList] or a [Tree]), matching the behavior of [constant "
@@ -39218,7 +39931,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:512
+#: doc/classes/ProjectSettings.xml:513
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -39227,7 +39940,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:516
+#: doc/classes/ProjectSettings.xml:517
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -39236,7 +39949,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:520
+#: doc/classes/ProjectSettings.xml:521
msgid ""
"Default [InputEventAction] to go to the start position of a [Control] (e.g. "
"first item in an [ItemList] or a [Tree]), matching the behavior of [constant "
@@ -39246,7 +39959,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39254,7 +39967,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:528
+#: doc/classes/ProjectSettings.xml:529
msgid ""
"Default [InputEventAction] to go down a page in a [Control] (e.g. in an "
"[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEDOWN] on "
@@ -39264,7 +39977,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Default [InputEventAction] to go up a page in a [Control] (e.g. in an "
"[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEUP] on "
@@ -39274,7 +39987,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:536
+#: doc/classes/ProjectSettings.xml:537
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39282,7 +39995,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:540
+#: doc/classes/ProjectSettings.xml:541
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -39291,7 +40004,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39299,371 +40012,371 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:548
+#: doc/classes/ProjectSettings.xml:549
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:554
+#: doc/classes/ProjectSettings.xml:555
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:557
+#: doc/classes/ProjectSettings.xml:558
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:560
+#: doc/classes/ProjectSettings.xml:561
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:566
+#: doc/classes/ProjectSettings.xml:567
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:569
+#: doc/classes/ProjectSettings.xml:570
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:572
+#: doc/classes/ProjectSettings.xml:573
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:578
+#: doc/classes/ProjectSettings.xml:579
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:581
+#: doc/classes/ProjectSettings.xml:582
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:584
+#: doc/classes/ProjectSettings.xml:585
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:590
+#: doc/classes/ProjectSettings.xml:591
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:593
+#: doc/classes/ProjectSettings.xml:594
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:596
+#: doc/classes/ProjectSettings.xml:597
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:602
+#: doc/classes/ProjectSettings.xml:603
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid ""
"The locale to fall back to if a translation isn't available in a given "
"language. If left empty, [code]en[/code] (English) will be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "If [code]true[/code], logs all output to files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:806
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:809
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:812
msgid ""
"Godot uses a message queue to defer some function calls. If you run out of "
"space on it (you will see an error), you can increase the size here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:815
msgid ""
"This is used by servers when used in multi-threading mode (servers and "
"visual). RIDs are preallocated to avoid stalling the server requesting them "
@@ -39671,56 +40384,56 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:829
+#: doc/classes/ProjectSettings.xml:832
msgid ""
"Maximum amount of characters allowed to send as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:832
+#: doc/classes/ProjectSettings.xml:835
msgid ""
"Maximum number of errors allowed to be sent from the debugger. Over this "
"value, content is dropped. This helps not to stall the debugger connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:835
+#: doc/classes/ProjectSettings.xml:838
msgid ""
"Maximum amount of messages in the debugger queue. Over this value, content "
"is dropped. This helps to limit the debugger memory usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:838
+#: doc/classes/ProjectSettings.xml:841
msgid ""
"Maximum number of warnings allowed to be sent from the debugger. Over this "
"value, content is dropped. This helps not to stall the debugger connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:841
+#: doc/classes/ProjectSettings.xml:844
msgid ""
"Default size of packet peer stream for deserializing Godot data. Over this "
"size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:844
+#: doc/classes/ProjectSettings.xml:847
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:847
+#: doc/classes/ProjectSettings.xml:850
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:850
+#: doc/classes/ProjectSettings.xml:853
msgid ""
"Amount of read ahead used by remote filesystem. Higher values decrease the "
"effects of latency at the cost of higher bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:853
+#: doc/classes/ProjectSettings.xml:856
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:856
+#: doc/classes/ProjectSettings.xml:859
msgid ""
"The CA certificates bundle to use for SSL connections. If this is set to a "
"non-empty value, this will [i]override[/i] Godot's default [url=https://"
@@ -39730,31 +40443,31 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:863
msgid ""
"When creating node names automatically, set the type of casing in this "
"project. This is mostly an editor setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:866
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:869
msgid "Size of the hash table used for the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:872
msgid "Cell size used for the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:875
msgid "The default angular damp in 2D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:878
msgid ""
"The default gravity strength in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39766,7 +40479,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:883
+#: doc/classes/ProjectSettings.xml:886
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39778,38 +40491,38 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:891
+#: doc/classes/ProjectSettings.xml:894
msgid "The default linear damp in 2D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:894
+#: doc/classes/ProjectSettings.xml:897
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:897
+#: doc/classes/ProjectSettings.xml:900
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics2D\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:901
+#: doc/classes/ProjectSettings.xml:904
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant PhysicsServer2D."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:904
+#: doc/classes/ProjectSettings.xml:907
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant PhysicsServer2D."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:907
+#: doc/classes/ProjectSettings.xml:910
msgid ""
"Sets whether physics is run on the main thread or a separate one. Running "
"the server on a thread increases performance, but restricts API access to "
@@ -39819,23 +40532,23 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:914
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant PhysicsServer2D.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:917
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody3D] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:920
msgid "The default angular damp in 3D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:923
msgid ""
"The default gravity strength in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39847,7 +40560,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:928
+#: doc/classes/ProjectSettings.xml:931
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39859,11 +40572,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:936
+#: doc/classes/ProjectSettings.xml:939
msgid "The default linear damp in 3D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:939
+#: doc/classes/ProjectSettings.xml:942
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -39871,11 +40584,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:943
+#: doc/classes/ProjectSettings.xml:946
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:949
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -39884,7 +40597,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:950
+#: doc/classes/ProjectSettings.xml:953
msgid ""
"Fix to improve physics jitter, specially on monitors where refresh rate is "
"different than the physics FPS.\n"
@@ -39892,7 +40605,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:954
+#: doc/classes/ProjectSettings.xml:957
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -39900,7 +40613,7 @@ msgid ""
"programmatically, use [method RenderingServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:957
+#: doc/classes/ProjectSettings.xml:960
msgid ""
"[Environment] that will be used as a fallback environment in case a scene "
"does not specify its own environment. The default environment is loaded in "
@@ -39910,14 +40623,14 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:986
+#: doc/classes/ProjectSettings.xml:989
msgid ""
"Max amount of elements renderable in a frame. If more than this are visible "
"per frame, they will be dropped. Keep in mind elements refer to mesh "
"surfaces and not meshes themselves."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:994
msgid ""
"Some NVIDIA GPU drivers have a bug which produces flickering issues for the "
"[code]draw_rect[/code] method, especially as used in [TileMap]. Refer to "
@@ -39929,73 +40642,73 @@ msgid ""
"using the Vulkan backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:995
+#: doc/classes/ProjectSettings.xml:998
msgid ""
"If [code]true[/code], forces snapping of polygons to pixels in 2D rendering. "
"May help in some pixel art styles."
msgstr ""
-#: doc/classes/ProjectSettings.xml:998
+#: doc/classes/ProjectSettings.xml:1001
msgid ""
"Sets the quality of the depth of field effect. Higher quality takes more "
"samples, which is slower but looks smoother."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1001
+#: doc/classes/ProjectSettings.xml:1004
msgid ""
"Sets the depth of field shape. Can be Box, Hexagon, or Circle. Box is the "
"fastest. Circle is the most realistic, but also the most expensive to "
"compute."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1004
+#: doc/classes/ProjectSettings.xml:1007
msgid ""
"If [code]true[/code], jitters DOF samples to make effect slightly blurrier "
"and hide lines created from low sample rates. This can result in a slightly "
"grainy appearance when used with a low number of samples."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1010
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1010
+#: doc/classes/ProjectSettings.xml:1013
msgid ""
"If [code]true[/code], performs a previous depth pass before rendering "
"materials. This increases performance in scenes with high overdraw, when "
"complex materials and lighting are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1016
msgid ""
"The directional shadow's size in pixels. Higher values will result in "
"sharper shadows, at the cost of performance. The value will be rounded up to "
"the nearest power of 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1016
+#: doc/classes/ProjectSettings.xml:1019
msgid ""
"Lower-end override for [member rendering/quality/directional_shadow/size] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1019
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"Quality setting for shadows cast by [DirectionalLight3D]s. Higher quality "
"settings use more samples when reading from shadow maps and are thus slower. "
"Low quality settings may result in shadows looking grainy."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1022
+#: doc/classes/ProjectSettings.xml:1025
msgid ""
"Lower-end override for [member rendering/quality/directional_shadow/"
"soft_shadow_quality] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1028
msgid ""
"The video driver to use (\"GLES2\" or \"Vulkan\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -40005,32 +40718,32 @@ msgid ""
"get_current_video_driver[/code] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1031
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"If [code]true[/code], take additional samples when rendering objects "
"affected by a [GIProbe] to reduce artifacts from only sampling in one "
"direction."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1034
+#: doc/classes/ProjectSettings.xml:1037
msgid ""
"Sets the number of cone samples taken when rendering objects affected by "
"[GIProbe]s."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1037
+#: doc/classes/ProjectSettings.xml:1040
msgid ""
"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."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1040
+#: doc/classes/ProjectSettings.xml:1043
msgid ""
"Lower-end override for [member rendering/quality/glow/upscale_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1043
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Strategy used for framebuffer allocation. The simpler it is, the less "
"resources it uses (but the less features it supports). If set to \"2D "
@@ -40040,41 +40753,41 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1046
+#: doc/classes/ProjectSettings.xml:1049
msgid ""
"Lower-end override for [member rendering/quality/intended_usage/"
"framebuffer_allocation] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1052
msgid ""
"Number of cubemaps to store in the reflection atlas. The number of "
"[ReflectionProbe]s in a scene will be limited by this amount. A higher "
"number requires more VRAM."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1052
+#: doc/classes/ProjectSettings.xml:1055
msgid ""
"Size of cubemap faces for [ReflectionProbe]s. A higher number requires more "
"VRAM and may make reflection probe updating slower."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1055
+#: doc/classes/ProjectSettings.xml:1058
msgid ""
"Lower-end override for [member rendering/quality/reflection_atlas/"
"reflection_size] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1058
+#: doc/classes/ProjectSettings.xml:1061
msgid ""
"Use a higher quality variant of the fast filtering algorithm. Significantly "
"slower than using default quality, but results in smoother reflections. "
"Should only be used when the scene is especially detailed."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1061
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Sets the number of samples to take when using importance sampling for [Sky]s "
"and [ReflectionProbe]s. A higher value will result in smoother, higher "
@@ -40084,19 +40797,19 @@ msgid ""
"environments with a high level of detail."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1064
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Lower-end override for [member rendering/quality/reflections/ggx_samples] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1067
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Limits the number of layers to use in radiance maps when using importance "
"sampling. A lower number will be slightly faster and take up less VRAM."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1070
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise and "
@@ -40105,14 +40818,14 @@ msgid ""
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1073
+#: doc/classes/ProjectSettings.xml:1076
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"texture_array_reflections] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1079
msgid ""
"Sets the number of MSAA samples to use (as a power of two). MSAA is used to "
"reduce aliasing around the edges of polygons. A higher MSAA value results in "
@@ -40120,7 +40833,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1080
+#: doc/classes/ProjectSettings.xml:1083
msgid ""
"Sets the screen-space antialiasing mode for the default screen [Viewport]. "
"Screen-space antialiasing works by selectively blurring edges in a post-"
@@ -40129,133 +40842,117 @@ msgid ""
"MSAA and will smooth out specular aliasing, but tend to make scenes appear "
"blurry.\n"
"Another way to combat specular aliasing is to enable [member rendering/"
-"quality/screen_filters/screen_space_roughness_limiter]."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:1084
-msgid ""
-"Enables the screen-space roughness limiter which increases material "
-"roughness in areas with a high normal frequency (i.e. when normals change a "
-"lot from pixel to pixel). This helps to reduce the amount of specular "
-"aliasing in a scene. Specular aliasing looks like random bright pixels that "
-"occur in reflections."
+"quality/screen_filters/screen_space_roughness_limiter_enabled]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1087
-msgid ""
-"Curves the amount of the roughness limited effect. A higher value limits the "
-"effect to very sharply curved surfaces, while a lower threshold extends the "
-"effect to smoother surfaces."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:1090
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"Sets the quality for rough screen-space reflections. Turning off will make "
"all screen space reflections sharp, while higher values make rough "
"reflections look better."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1093
+#: doc/classes/ProjectSettings.xml:1096
msgid ""
"If [code]true[/code], uses faster but lower-quality Blinn model to generate "
"blurred reflections instead of the GGX model."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1099
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_blinn_over_ggx] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1102
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1102
+#: doc/classes/ProjectSettings.xml:1105
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_lambert_over_burley] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1105
+#: doc/classes/ProjectSettings.xml:1108
msgid ""
"If [code]true[/code], forces vertex shading for all rendering. This can "
"increase performance a lot, but also reduces quality immensely. Can be used "
"to optimize performance on low-end mobile devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1108
+#: doc/classes/ProjectSettings.xml:1111
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_vertex_shading] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1111 doc/classes/ProjectSettings.xml:1114
-#: doc/classes/ProjectSettings.xml:1117 doc/classes/ProjectSettings.xml:1120
+#: doc/classes/ProjectSettings.xml:1114 doc/classes/ProjectSettings.xml:1117
+#: doc/classes/ProjectSettings.xml:1120 doc/classes/ProjectSettings.xml:1123
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1123
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1126
+#: doc/classes/ProjectSettings.xml:1129
msgid ""
"Lower-end override for [member rendering/quality/shadow_atlas/size] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1132
msgid ""
"Quality setting for shadows cast by [OmniLight3D]s and [SpotLight3D]s. "
"Higher quality settings use more samples when reading from shadow maps and "
"are thus slower. Low quality settings may result in shadows looking grainy."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1132
+#: doc/classes/ProjectSettings.xml:1135
msgid ""
"Lower-end override for [member rendering/quality/shadows/"
"soft_shadow_quality] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1135
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"If [code]true[/code], screen-space ambient occlusion will be rendered at "
"half size and then upscaled before being added to the scene. This is "
"significantly faster but may miss small details."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1138
+#: doc/classes/ProjectSettings.xml:1141
msgid ""
"Sets the quality of the screen-space ambient occlusion effect. Higher values "
"take more samples and so will result in better quality, at the cost of "
"performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1144
msgid ""
"Scales the depth over which the subsurface scattering effect is applied. A "
"high value may allow light to scatter into a part of the mesh or another "
"mesh that is close in screen space but far in depth."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1144
+#: doc/classes/ProjectSettings.xml:1147
msgid ""
"Sets the quality of the subsurface scattering effect. Higher values are "
"slower but look nicer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1147
+#: doc/classes/ProjectSettings.xml:1150
msgid ""
"Scales the distance over which samples are taken for subsurface scattering "
"effect. Changing this does not impact performance, but higher values will "
@@ -40263,7 +40960,7 @@ msgid ""
"out. A lower value results in a smaller spread of scattered light."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1150
+#: doc/classes/ProjectSettings.xml:1153
msgid ""
"Sets the maximum number of samples to take when using anisotropic filtering "
"on textures (as a power of two). A higher sample count will result in "
@@ -40272,7 +40969,7 @@ msgid ""
"materials where it is enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1153
+#: doc/classes/ProjectSettings.xml:1156
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -40281,49 +40978,49 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Thread model for rendering. Rendering on a thread can vastly improve "
"performance, but synchronizing to the main thread can cause a bit more "
"jitter."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
"only supported on desktop platforms, and only when using the Vulkan renderer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
"doesn't support alpha channels in textures."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
"compression algorithm is only supported when using the Vulkan renderer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1175
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
"compression algorithm is only supported on iOS."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
"supported on desktop platforms and consoles."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1182
+#: doc/classes/ProjectSettings.xml:1189
msgid "Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses."
msgstr ""
@@ -40353,13 +41050,14 @@ msgstr ""
#: doc/classes/Quat.xml:7
msgid ""
-"A unit quaternion used for representing 3D rotations.\n"
-"It is similar to [Basis], which implements matrix representation of "
-"rotations, and can be parametrized using both an axis-angle pair or Euler "
-"angles. But due to its compactness and the way it is stored in memory, "
-"certain operations (obtaining axis-angle and performing SLERP, in "
-"particular) are more efficient and robust against floating-point errors.\n"
-"Quaternions need to be (re)normalized."
+"A unit quaternion used for representing 3D rotations. Quaternions need to be "
+"normalized to be used for rotation.\n"
+"It is similar to Basis, which implements matrix representation of rotations, "
+"and can be parametrized using both an axis-angle pair or Euler angles. Basis "
+"stores rotation, scale, and shearing, while Quat only stores rotation.\n"
+"Due to its compactness and the way it is stored in memory, certain "
+"operations (obtaining axis-angle and performing SLERP, in particular) are "
+"more efficient and robust against floating-point errors."
msgstr ""
#: doc/classes/Quat.xml:12
@@ -40369,29 +41067,31 @@ msgid ""
msgstr ""
#: doc/classes/Quat.xml:21
-msgid "Returns the rotation matrix corresponding to the given quaternion."
+msgid "Constructs a quaternion from the given [Basis]."
msgstr ""
#: doc/classes/Quat.xml:30
msgid ""
-"Returns a quaternion that will perform a rotation specified by Euler angles "
-"(in the YXZ convention: first Z, then X, and Y last), given in the vector "
-"format as (X angle, Y angle, Z angle)."
+"Constructs a quaternion that will perform a rotation specified by Euler "
+"angles (in the YXZ convention: when decomposing, first Z, then X, and Y "
+"last), given in the vector format as (X angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:41
msgid ""
-"Returns a quaternion that will rotate around the given axis by the specified "
-"angle. The axis must be a normalized vector."
+"Constructs a quaternion that will rotate around the given axis by the "
+"specified angle. The axis must be a normalized vector."
msgstr ""
#: doc/classes/Quat.xml:56
-msgid "Returns a quaternion defined by these values."
+msgid "Constructs a quaternion defined by the given values."
msgstr ""
#: doc/classes/Quat.xml:71
msgid ""
-"Performs a cubic spherical-linear interpolation with another quaternion."
+"Performs a cubic spherical interpolation between quaternions [code]preA[/"
+"code], this vector, [code]b[/code], and [code]postB[/code], by the given "
+"amount [code]t[/code]."
msgstr ""
#: doc/classes/Quat.xml:80
@@ -40400,10 +41100,10 @@ msgstr ""
#: doc/classes/Quat.xml:87
msgid ""
-"Returns Euler angles (in the YXZ convention: first Z, then X, and Y last) "
-"corresponding to the rotation represented by the unit quaternion. Returned "
-"vector contains the rotation angles in the format (X angle, Y angle, Z "
-"angle)."
+"Returns Euler angles (in the YXZ convention: when decomposing, first Z, then "
+"X, and Y last) corresponding to the rotation represented by the unit "
+"quaternion. Returned vector contains the rotation angles in the format (X "
+"angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:94
@@ -40442,44 +41142,57 @@ msgstr ""
#: doc/classes/Quat.xml:151
msgid ""
"Sets the quaternion to a rotation specified by Euler angles (in the YXZ "
-"convention: first Z, then X, and Y last), given in the vector format as (X "
-"angle, Y angle, Z angle)."
+"convention: when decomposing, first Z, then X, and Y last), given in the "
+"vector format as (X angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:162
-msgid "Performs a spherical-linear interpolation with another quaternion."
+msgid ""
+"Returns the result of the spherical linear interpolation between this "
+"quaternion and [code]to[/code] by amount [code]weight[/code].\n"
+"[b]Note:[/b] Both quaternions must be normalized."
msgstr ""
-#: doc/classes/Quat.xml:173
+#: doc/classes/Quat.xml:174
msgid ""
-"Performs a spherical-linear interpolation with another quaterion without "
-"checking if the rotation path is not bigger than 90°."
+"Returns the result of the spherical linear interpolation between this "
+"quaternion and [code]to[/code] by amount [code]weight[/code], but without "
+"checking if the rotation path is not bigger than 90 degrees."
msgstr ""
-#: doc/classes/Quat.xml:182
-msgid "Transforms the vector [code]v[/code] by this quaternion."
+#: doc/classes/Quat.xml:183
+msgid "Returns a vector transformed (multiplied) by this quaternion."
msgstr ""
-#: doc/classes/Quat.xml:188
-msgid "W component of the quaternion."
+#: doc/classes/Quat.xml:189
+msgid ""
+"W component of the quaternion (real part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:191
-msgid "X component of the quaternion."
+#: doc/classes/Quat.xml:193
+msgid ""
+"X component of the quaternion (imaginary [code]i[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:194
-msgid "Y component of the quaternion."
+#: doc/classes/Quat.xml:197
+msgid ""
+"Y component of the quaternion (imaginary [code]j[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:197
-msgid "Z component of the quaternion."
+#: doc/classes/Quat.xml:201
+msgid ""
+"Z component of the quaternion (imaginary [code]k[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:202
+#: doc/classes/Quat.xml:207
msgid ""
-"The identity rotation. Equivalent to an identity matrix. If a vector is "
-"transformed by an identity quaternion, it will not change."
+"The identity quaternion, representing no rotation. Equivalent to an identity "
+"[Basis] matrix. If a vector is transformed by an identity quaternion, it "
+"will not change."
msgstr ""
#: doc/classes/RandomNumberGenerator.xml:4
@@ -40682,7 +41395,8 @@ msgid ""
"collision information immediately instead of waiting for the next "
"[code]_physics_process[/code] call, for example if the ray or its parent has "
"changed state.\n"
-"[b]Note:[/b] [code]enabled == true[/code] is not required for this to work."
+"[b]Note:[/b] [member enabled] does not need to be [code]true[/code] for this "
+"to work."
msgstr ""
#: doc/classes/RayCast2D.xml:54 doc/classes/RayCast3D.xml:55
@@ -40788,7 +41502,8 @@ msgid ""
"Use this method to update the collision information immediately instead of "
"waiting for the next [code]_physics_process[/code] call, for example if the "
"ray or its parent has changed state.\n"
-"[b]Note:[/b] [code]enabled == true[/code] is not required for this to work."
+"[b]Note:[/b] [member enabled] does not need to be [code]true[/code] for this "
+"to work."
msgstr ""
#: doc/classes/RayCast3D.xml:71
@@ -40946,14 +41661,6 @@ msgstr ""
msgid "Returns a larger [Rect2] that contains this [Rect2] and [code]b[/code]."
msgstr ""
-#: doc/classes/Rect2.xml:174 doc/classes/Rect2i.xml:163
-msgid "Ending corner."
-msgstr ""
-
-#: doc/classes/Rect2.xml:177 doc/classes/Rect2i.xml:166
-msgid "Position (starting corner)."
-msgstr ""
-
#: doc/classes/Rect2i.xml:4
msgid "2D axis-aligned bounding box using integer coordinates."
msgstr ""
@@ -41066,22 +41773,22 @@ msgstr ""
msgid ""
"Base class for any object that keeps a reference count. [Resource] and many "
"other helper objects inherit this class.\n"
-"References keep an internal reference counter so that they are automatically "
-"released when no longer in use, and only then. References therefore do not "
-"need to be freed manually with [method Object.free].\n"
+"Unlike [Object]s, References keep an internal reference counter so that they "
+"are automatically released when no longer in use, and only then. References "
+"therefore do not need to be freed manually with [method Object.free].\n"
"In the vast majority of use cases, instantiating and using [Reference]-"
"derived types is all you need to do. The methods provided in this class are "
"only for advanced users, and can cause issues if misused."
msgstr ""
-#: doc/classes/Reference.xml:18
+#: doc/classes/Reference.xml:19
msgid ""
"Initializes the internal reference counter. Use this only if you really know "
"what you are doing.\n"
"Returns whether the initialization was successful."
msgstr ""
-#: doc/classes/Reference.xml:26
+#: doc/classes/Reference.xml:27
msgid ""
"Increments the internal reference counter. Use this only if you really know "
"what you are doing.\n"
@@ -41089,7 +41796,7 @@ msgid ""
"code] otherwise."
msgstr ""
-#: doc/classes/Reference.xml:34
+#: doc/classes/Reference.xml:35
msgid ""
"Decrements the internal reference counter. Use this only if you really know "
"what you are doing.\n"
@@ -41138,14 +41845,14 @@ msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/reflection_probes.html"
msgstr ""
-#: doc/classes/ReflectionProbe.xml:17
+#: doc/classes/ReflectionProbe.xml:23
msgid ""
"If [code]true[/code], enables box projection. This makes reflections look "
"more correct in rectangle-shaped rooms by offsetting the reflection center "
"depending on the camera's location."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:20
+#: doc/classes/ReflectionProbe.xml:26
msgid ""
"Sets the cull mask which determines what objects are drawn by this probe. "
"Every [VisualInstance3D] with a layer included in this cull mask will be "
@@ -41154,78 +41861,56 @@ msgid ""
"rendering cost."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:23
+#: doc/classes/ReflectionProbe.xml:29
msgid ""
"If [code]true[/code], computes shadows in the reflection probe. This makes "
"the reflection probe slower to render; you may want to disable this if using "
"the [constant UPDATE_ALWAYS] [member update_mode]."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:26
+#: doc/classes/ReflectionProbe.xml:32
msgid ""
"The size of the reflection probe. The larger the extents the more space "
"covered by the probe which will lower the perceived resolution. It is best "
"to keep the extents only as large as you need them."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:29
+#: doc/classes/ReflectionProbe.xml:35
msgid ""
"Defines the reflection intensity. Intensity modulates the strength of the "
"reflection."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:32
-msgid ""
-"Sets the ambient light color to be used when this probe is set to [member "
-"interior_enable]."
-msgstr ""
-
-#: doc/classes/ReflectionProbe.xml:35
-msgid ""
-"Sets the contribution value for how much the reflection affects the ambient "
-"light for this reflection probe when set to [member interior_enable]. Useful "
-"so that ambient light matches the color of the room."
-msgstr ""
-
#: doc/classes/ReflectionProbe.xml:38
-msgid ""
-"Sets the energy multiplier for this reflection probe's ambient light "
-"contribution when set to [member interior_enable]."
+msgid "If [code]true[/code], reflections will ignore sky contribution."
msgstr ""
#: doc/classes/ReflectionProbe.xml:41
msgid ""
-"If [code]true[/code], reflections will ignore sky contribution. Ambient "
-"lighting is then controlled by the [code]interior_ambient_*[/code] "
-"properties."
-msgstr ""
-
-#: doc/classes/ReflectionProbe.xml:44
-msgid ""
"Sets the max distance away from the probe an object can be before it is "
"culled."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:47
+#: doc/classes/ReflectionProbe.xml:44
msgid ""
"Sets the origin offset to be used when this reflection probe is in box "
"project mode."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:50
+#: doc/classes/ReflectionProbe.xml:47
msgid ""
"Sets how frequently the probe is updated. Can be [constant UPDATE_ONCE] or "
"[constant UPDATE_ALWAYS]."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:55
+#: doc/classes/ReflectionProbe.xml:52
msgid ""
"Update the probe once on the next frame. The corresponding radiance map will "
"be generated over the following six frames. This is slower to update than "
"[constant UPDATE_ALWAYS] but can result in higher quality reflections."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:58
+#: doc/classes/ReflectionProbe.xml:55
msgid ""
"Update the probe every frame. This is needed when you want to capture "
"dynamic objects. However, it results in an increased render time. Use "
@@ -41255,10 +41940,10 @@ msgid ""
"read by RegEx as [code]\\d+[/code]. Similarly, [code]compile(\"\\\"(?:\\\\\\"
"\\.|[^\\\"])*\\\"\")[/code] would be read as [code]\"(?:\\\\.|[^\"])*\"[/"
"code].\n"
-"Using [method search] you can find the pattern within the given text. If a "
+"Using [method search], you can find the pattern within the given text. If a "
"pattern is found, [RegExMatch] is returned and you can retrieve details of "
-"the results using functions such as [method RegExMatch.get_string] and "
-"[method RegExMatch.get_start].\n"
+"the results using methods such as [method RegExMatch.get_string] and [method "
+"RegExMatch.get_start].\n"
"[codeblock]\n"
"var regex = RegEx.new()\n"
"regex.compile(\"\\\\w-(\\\\d+)\")\n"
@@ -41267,7 +41952,7 @@ msgid ""
" print(result.get_string()) # Would print n-0123\n"
"[/codeblock]\n"
"The results of capturing groups [code]()[/code] can be retrieved by passing "
-"the group number to the various functions in [RegExMatch]. Group 0 is the "
+"the group number to the various methods in [RegExMatch]. Group 0 is the "
"default and will always refer to the entire pattern. In the above example, "
"calling [code]result.get_string(1)[/code] would give you [code]0123[/code].\n"
"This version of RegEx also supports named capturing groups, and the names "
@@ -41288,6 +41973,15 @@ msgid ""
" print(result.get_string(\"digit\"))\n"
"# Would print 01 03 0 3f 42\n"
"[/codeblock]\n"
+"[b]Example of splitting a string using a RegEx:[/b]\n"
+"[codeblock]\n"
+"var regex = RegEx.new()\n"
+"regex.compile(\"\\\\S+\") # Negated whitespace character class.\n"
+"var results = []\n"
+"for match in regex.search_all(\"One Two \\n\\tThree\"):\n"
+" results.push_back(match.get_string())\n"
+"# The `results` array now contains \"One\", \"Two\", \"Three\".\n"
+"[/codeblock]\n"
"[b]Note:[/b] Godot's regex implementation is based on the [url=https://www."
"pcre.org/]PCRE2[/url] library. You can view the full pattern reference "
"[url=https://www.pcre.org/current/doc/html/pcre2pattern.html]here[/url].\n"
@@ -41295,38 +41989,38 @@ msgid ""
"regular expressions online."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:47
+#: modules/regex/doc_classes/RegEx.xml:56
msgid ""
"This method resets the state of the object, as if it was freshly created. "
"Namely, it unassigns the regular expression of this object."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:56
+#: modules/regex/doc_classes/RegEx.xml:65
msgid ""
"Compiles and assign the search pattern to use. Returns [constant OK] if the "
"compilation is successful. If an error is encountered, details are printed "
"to standard output and an error is returned."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:63
+#: modules/regex/doc_classes/RegEx.xml:72
msgid "Returns the number of capturing groups in compiled pattern."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:70
+#: modules/regex/doc_classes/RegEx.xml:79
msgid ""
"Returns an array of names of named capturing groups in the compiled pattern. "
"They are ordered by appearance."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:77
+#: modules/regex/doc_classes/RegEx.xml:86
msgid "Returns the original search pattern that was compiled."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:84
+#: modules/regex/doc_classes/RegEx.xml:93
msgid "Returns whether this object has a valid search pattern assigned."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:97
+#: modules/regex/doc_classes/RegEx.xml:106
msgid ""
"Searches the text for the compiled pattern. Returns a [RegExMatch] container "
"of the first matching result if found, otherwise [code]null[/code]. The "
@@ -41334,7 +42028,7 @@ msgid ""
"and end anchor would be."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:110
+#: modules/regex/doc_classes/RegEx.xml:119
msgid ""
"Searches the text for the compiled pattern. Returns an array of [RegExMatch] "
"containers for each non-overlapping result. If no results were found, an "
@@ -41342,7 +42036,7 @@ msgid ""
"specified without modifying where the start and end anchor would be."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:127
+#: modules/regex/doc_classes/RegEx.xml:136
msgid ""
"Searches the text for the compiled pattern and replaces it with the "
"specified string. Escapes and backreferences such as [code]$1[/code] and "
@@ -42069,7 +42763,7 @@ msgid ""
msgstr ""
#: doc/classes/RenderingServer.xml:1222 doc/classes/RenderingServer.xml:1250
-#: doc/classes/RenderingServer.xml:1527
+#: doc/classes/RenderingServer.xml:1537
msgid "Not implemented in Godot 3.x."
msgstr ""
@@ -42216,30 +42910,30 @@ msgid ""
"OmniLight3D.omni_shadow_mode]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1481
+#: doc/classes/RenderingServer.xml:1491
msgid ""
"Sets the color of the light. Equivalent to [member Light3D.light_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1492
+#: doc/classes/RenderingServer.xml:1502
msgid ""
"Sets the cull mask for this Light3D. Lights only affect objects in the "
"selected layers. Equivalent to [member Light3D.light_cull_mask]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1503
+#: doc/classes/RenderingServer.xml:1513
msgid ""
"If [code]true[/code], light will subtract light instead of adding light. "
"Equivalent to [member Light3D.light_negative]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1516
+#: doc/classes/RenderingServer.xml:1526
msgid ""
"Sets the specified light parameter. See [enum LightParam] for options. "
"Equivalent to [method Light3D.set_param]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1538
+#: doc/classes/RenderingServer.xml:1548
msgid ""
"If [code]true[/code], reverses the backface culling of the mesh. This can be "
"useful when you have a flat mesh that has a light behind it. If you need to "
@@ -42248,29 +42942,25 @@ msgid ""
"to [member Light3D.shadow_reverse_cull_face]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1549
+#: doc/classes/RenderingServer.xml:1559
msgid ""
"If [code]true[/code], light will cast shadows. Equivalent to [member Light3D."
"shadow_enabled]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1560
+#: doc/classes/RenderingServer.xml:1570
msgid ""
"Sets the color of the shadow cast by the light. Equivalent to [member "
"Light3D.shadow_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1571
-msgid "Sets whether GI probes capture light information from this light."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:1584
+#: doc/classes/RenderingServer.xml:1583
msgid ""
"Returns a mesh of a sphere with the given amount of horizontal and vertical "
"subdivisions."
msgstr ""
-#: doc/classes/RenderingServer.xml:1591
+#: doc/classes/RenderingServer.xml:1590
msgid ""
"Creates an empty material and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42279,31 +42969,31 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:1603
+#: doc/classes/RenderingServer.xml:1602
msgid "Returns the value of a certain material's parameter."
msgstr ""
-#: doc/classes/RenderingServer.xml:1614
+#: doc/classes/RenderingServer.xml:1613
msgid "Sets an object's next material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1627
+#: doc/classes/RenderingServer.xml:1626
msgid "Sets a material's parameter."
msgstr ""
-#: doc/classes/RenderingServer.xml:1638
+#: doc/classes/RenderingServer.xml:1637
msgid "Sets a material's render priority."
msgstr ""
-#: doc/classes/RenderingServer.xml:1649
+#: doc/classes/RenderingServer.xml:1648
msgid "Sets a shader material's shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:1678
+#: doc/classes/RenderingServer.xml:1677
msgid "Removes all surfaces from a mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1685
+#: doc/classes/RenderingServer.xml:1684
msgid ""
"Creates a new mesh and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all [code]mesh_*[/"
@@ -42314,58 +43004,58 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:1696
+#: doc/classes/RenderingServer.xml:1695
msgid "Returns a mesh's blend shape count."
msgstr ""
-#: doc/classes/RenderingServer.xml:1705
+#: doc/classes/RenderingServer.xml:1704
msgid "Returns a mesh's blend shape mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:1714
+#: doc/classes/RenderingServer.xml:1713
msgid "Returns a mesh's custom aabb."
msgstr ""
-#: doc/classes/RenderingServer.xml:1723
+#: doc/classes/RenderingServer.xml:1722
msgid "Returns a mesh's number of surfaces."
msgstr ""
-#: doc/classes/RenderingServer.xml:1734
+#: doc/classes/RenderingServer.xml:1733
msgid "Sets a mesh's blend shape mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:1745
+#: doc/classes/RenderingServer.xml:1744
msgid "Sets a mesh's custom aabb."
msgstr ""
-#: doc/classes/RenderingServer.xml:1756
+#: doc/classes/RenderingServer.xml:1755
msgid "Returns a mesh's surface's buffer arrays."
msgstr ""
-#: doc/classes/RenderingServer.xml:1767
+#: doc/classes/RenderingServer.xml:1766
msgid "Returns a mesh's surface's arrays for blend shapes."
msgstr ""
-#: doc/classes/RenderingServer.xml:1782 doc/classes/RenderingServer.xml:1795
+#: doc/classes/RenderingServer.xml:1781 doc/classes/RenderingServer.xml:1794
msgid "Function is unused in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:1806
+#: doc/classes/RenderingServer.xml:1805
msgid "Returns a mesh's surface's material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1819
+#: doc/classes/RenderingServer.xml:1818
msgid "Sets a mesh's surface's material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1834
+#: doc/classes/RenderingServer.xml:1833
msgid ""
"Updates a specific region of a vertex buffer for the specified surface. "
"Warning: this function alters the vertex buffer directly with no safety "
"mechanisms, you can easily corrupt your mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1857
+#: doc/classes/RenderingServer.xml:1856
msgid ""
"Creates a new multimesh on the RenderingServer and returns an [RID] handle. "
"This RID will be used in all [code]multimesh_*[/code] RenderingServer "
@@ -42376,82 +43066,82 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:1868
+#: doc/classes/RenderingServer.xml:1867
msgid ""
"Calculates and returns the axis-aligned bounding box that encloses all "
"instances within the multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1885
+#: doc/classes/RenderingServer.xml:1884
msgid "Returns the number of instances allocated for this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1894
+#: doc/classes/RenderingServer.xml:1893
msgid ""
"Returns the RID of the mesh that will be used in drawing this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1903
+#: doc/classes/RenderingServer.xml:1902
msgid "Returns the number of visible instances for this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1914
+#: doc/classes/RenderingServer.xml:1913
msgid "Returns the color by which the specified instance will be modulated."
msgstr ""
-#: doc/classes/RenderingServer.xml:1925
+#: doc/classes/RenderingServer.xml:1924
msgid "Returns the custom data associated with the specified instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:1936
+#: doc/classes/RenderingServer.xml:1935
msgid "Returns the [Transform] of the specified instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:1947
+#: doc/classes/RenderingServer.xml:1946
msgid ""
"Returns the [Transform2D] of the specified instance. For use when the "
"multimesh is set to use 2D transforms."
msgstr ""
-#: doc/classes/RenderingServer.xml:1960
+#: doc/classes/RenderingServer.xml:1959
msgid ""
"Sets the color by which this instance will be modulated. Equivalent to "
"[method MultiMesh.set_instance_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1973
+#: doc/classes/RenderingServer.xml:1972
msgid ""
"Sets the custom data for this instance. Custom data is passed as a [Color], "
"but is interpreted as a [code]vec4[/code] in the shader. Equivalent to "
"[method MultiMesh.set_instance_custom_data]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1986
+#: doc/classes/RenderingServer.xml:1985
msgid ""
"Sets the [Transform] for this instance. Equivalent to [method MultiMesh."
"set_instance_transform]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1999
+#: doc/classes/RenderingServer.xml:1998
msgid ""
"Sets the [Transform2D] for this instance. For use when multimesh is used in "
"2D. Equivalent to [method MultiMesh.set_instance_transform_2d]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2020
+#: doc/classes/RenderingServer.xml:2019
msgid ""
"Sets the mesh to be drawn by the multimesh. Equivalent to [member MultiMesh."
"mesh]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2031
+#: doc/classes/RenderingServer.xml:2030
msgid ""
"Sets the number of instances visible at a given time. If -1, all instances "
"that have been allocated are drawn. Equivalent to [member MultiMesh."
"visible_instance_count]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2038
+#: doc/classes/RenderingServer.xml:2037
msgid ""
"Creates a new omni light and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID can be used in most "
@@ -42462,7 +43152,7 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2047
+#: doc/classes/RenderingServer.xml:2046
msgid ""
"Creates a particle system and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42473,23 +43163,23 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2058
+#: doc/classes/RenderingServer.xml:2057
msgid ""
"Calculates and returns the axis-aligned bounding box that contains all the "
"particles. Equivalent to [method GPUParticles3D.capture_aabb]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2067
+#: doc/classes/RenderingServer.xml:2066
msgid "Returns [code]true[/code] if particles are currently set to emitting."
msgstr ""
-#: doc/classes/RenderingServer.xml:2076
+#: doc/classes/RenderingServer.xml:2075
msgid ""
"Returns [code]true[/code] if particles are not emitting and particles are "
"set to inactive."
msgstr ""
-#: doc/classes/RenderingServer.xml:2085
+#: doc/classes/RenderingServer.xml:2084
msgid ""
"Add particle system to list of particle systems that need to be updated. "
"Update will take place on the next frame, or on the next call to [method "
@@ -42497,121 +43187,121 @@ msgid ""
"instances_cull_ray]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2094
+#: doc/classes/RenderingServer.xml:2093
msgid ""
"Reset the particles on the next update. Equivalent to [method GPUParticles3D."
"restart]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2105
+#: doc/classes/RenderingServer.xml:2104
msgid ""
"Sets the number of particles to be drawn and allocates the memory for them. "
"Equivalent to [member GPUParticles3D.amount]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2116
+#: doc/classes/RenderingServer.xml:2115
msgid ""
"Sets a custom axis-aligned bounding box for the particle system. Equivalent "
"to [member GPUParticles3D.visibility_aabb]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2127
+#: doc/classes/RenderingServer.xml:2126
msgid ""
"Sets the draw order of the particles to one of the named enums from [enum "
"ParticlesDrawOrder]. See [enum ParticlesDrawOrder] for options. Equivalent "
"to [member GPUParticles3D.draw_order]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2140
+#: doc/classes/RenderingServer.xml:2139
msgid ""
"Sets the mesh to be used for the specified draw pass. Equivalent to [member "
"GPUParticles3D.draw_pass_1], [member GPUParticles3D.draw_pass_2], [member "
"GPUParticles3D.draw_pass_3], and [member GPUParticles3D.draw_pass_4]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2151
+#: doc/classes/RenderingServer.xml:2150
msgid ""
"Sets the number of draw passes to use. Equivalent to [member GPUParticles3D."
"draw_passes]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2162
+#: doc/classes/RenderingServer.xml:2161
msgid ""
"Sets the [Transform] that will be used by the particles when they first emit."
msgstr ""
-#: doc/classes/RenderingServer.xml:2173
+#: doc/classes/RenderingServer.xml:2172
msgid ""
"If [code]true[/code], particles will emit over time. Setting to false does "
"not reset the particles, but only stops their emission. Equivalent to "
"[member GPUParticles3D.emitting]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2184
+#: doc/classes/RenderingServer.xml:2183
msgid ""
"Sets the explosiveness ratio. Equivalent to [member GPUParticles3D."
"explosiveness]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2195
+#: doc/classes/RenderingServer.xml:2194
msgid ""
"Sets the frame rate that the particle system rendering will be fixed to. "
"Equivalent to [member GPUParticles3D.fixed_fps]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2206
+#: doc/classes/RenderingServer.xml:2205
msgid ""
"If [code]true[/code], uses fractional delta which smooths the movement of "
"the particles. Equivalent to [member GPUParticles3D.fract_delta]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2217
+#: doc/classes/RenderingServer.xml:2216
msgid ""
"Sets the lifetime of each particle in the system. Equivalent to [member "
"GPUParticles3D.lifetime]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2228
+#: doc/classes/RenderingServer.xml:2227
msgid ""
"If [code]true[/code], particles will emit once and then stop. Equivalent to "
"[member GPUParticles3D.one_shot]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2239
+#: doc/classes/RenderingServer.xml:2238
msgid ""
"Sets the preprocess time for the particles animation. This lets you delay "
"starting an animation until after the particles have begun emitting. "
"Equivalent to [member GPUParticles3D.preprocess]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2250
+#: doc/classes/RenderingServer.xml:2249
msgid ""
"Sets the material for processing the particles. Note: this is not the "
"material used to draw the materials. Equivalent to [member GPUParticles3D."
"process_material]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2261
+#: doc/classes/RenderingServer.xml:2260
msgid ""
"Sets the emission randomness ratio. This randomizes the emission of "
"particles within their phase. Equivalent to [member GPUParticles3D."
"randomness]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2272
+#: doc/classes/RenderingServer.xml:2271
msgid ""
"Sets the speed scale of the particle system. Equivalent to [member "
"GPUParticles3D.speed_scale]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2283
+#: doc/classes/RenderingServer.xml:2282
msgid ""
"If [code]true[/code], particles use local coordinates. If [code]false[/code] "
"they use global coordinates. Equivalent to [member GPUParticles3D."
"local_coords]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2290
+#: doc/classes/RenderingServer.xml:2289
msgid ""
"Creates a reflection probe and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42622,85 +43312,64 @@ msgid ""
"[method instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2303
+#: doc/classes/RenderingServer.xml:2332
msgid ""
"If [code]true[/code], reflections will ignore sky contribution. Equivalent "
-"to [member ReflectionProbe.interior_enable]."
+"to [member ReflectionProbe.interior]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2314
+#: doc/classes/RenderingServer.xml:2343
msgid ""
"Sets the render cull mask for this reflection probe. Only instances with a "
"matching cull mask will be rendered by this probe. Equivalent to [member "
"ReflectionProbe.cull_mask]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2325
+#: doc/classes/RenderingServer.xml:2354
msgid ""
"If [code]true[/code], uses box projection. This can make reflections look "
"more correct in certain situations. Equivalent to [member ReflectionProbe."
"box_projection]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2336
+#: doc/classes/RenderingServer.xml:2365
msgid ""
"If [code]true[/code], computes shadows in the reflection probe. This makes "
"the reflection much slower to compute. Equivalent to [member ReflectionProbe."
"enable_shadows]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2347
+#: doc/classes/RenderingServer.xml:2376
msgid ""
"Sets the size of the area that the reflection probe will capture. Equivalent "
"to [member ReflectionProbe.extents]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2358
+#: doc/classes/RenderingServer.xml:2387
msgid ""
"Sets the intensity of the reflection probe. Intensity modulates the strength "
"of the reflection. Equivalent to [member ReflectionProbe.intensity]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2369
-msgid ""
-"Sets the ambient light color for this reflection probe when set to interior "
-"mode. Equivalent to [member ReflectionProbe.interior_ambient_color]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2380
-msgid ""
-"Sets the energy multiplier for this reflection probes ambient light "
-"contribution when set to interior mode. Equivalent to [member "
-"ReflectionProbe.interior_ambient_energy]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2391
-msgid ""
-"Sets the contribution value for how much the reflection affects the ambient "
-"light for this reflection probe when set to interior mode. Useful so that "
-"ambient light matches the color of the room. Equivalent to [member "
-"ReflectionProbe.interior_ambient_contrib]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2402
+#: doc/classes/RenderingServer.xml:2398
msgid ""
"Sets the max distance away from the probe an object can be before it is "
"culled. Equivalent to [member ReflectionProbe.max_distance]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2413
+#: doc/classes/RenderingServer.xml:2409
msgid ""
"Sets the origin offset to be used when this reflection probe is in box "
"project mode. Equivalent to [member ReflectionProbe.origin_offset]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2424
+#: doc/classes/RenderingServer.xml:2420
msgid ""
"Sets how often the reflection probe updates. Can either be once or every "
"frame. See [enum ReflectionProbeUpdateMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2437
+#: doc/classes/RenderingServer.xml:2433
msgid ""
"Schedules a callback to the corresponding named [code]method[/code] on "
"[code]where[/code] after a frame has been drawn.\n"
@@ -42708,7 +43377,7 @@ msgid ""
"[code]userdata[/code]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2445
+#: doc/classes/RenderingServer.xml:2441
msgid ""
"Creates a scenario and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all "
@@ -42718,24 +43387,24 @@ msgid ""
"The scenario is the 3D world that all the visual instances exist in."
msgstr ""
-#: doc/classes/RenderingServer.xml:2458
+#: doc/classes/RenderingServer.xml:2454
msgid ""
"Sets the [enum ScenarioDebugMode] for this scenario. See [enum "
"ScenarioDebugMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2469
+#: doc/classes/RenderingServer.xml:2465
msgid "Sets the environment that will be used with this scenario."
msgstr ""
-#: doc/classes/RenderingServer.xml:2480
+#: doc/classes/RenderingServer.xml:2476
msgid ""
"Sets the fallback environment to be used by this scenario. The fallback "
"environment is used if no environment is set. Internally, this is used by "
"the editor to provide a default environment."
msgstr ""
-#: doc/classes/RenderingServer.xml:2495
+#: doc/classes/RenderingServer.xml:2491
msgid ""
"Sets a boot image. The color defines the background color. If [code]scale[/"
"code] is [code]true[/code], the image will be scaled to fit the screen size. "
@@ -42744,19 +43413,19 @@ msgid ""
"the image will be scaled with nearest-neighbor interpolation."
msgstr ""
-#: doc/classes/RenderingServer.xml:2504
+#: doc/classes/RenderingServer.xml:2500
msgid ""
"If [code]true[/code], the engine will generate wireframes for use with the "
"wireframe debug mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:2513
+#: doc/classes/RenderingServer.xml:2509
msgid ""
"Sets the default clear color which is used when a specific clear color has "
"not been selected."
msgstr ""
-#: doc/classes/RenderingServer.xml:2520
+#: doc/classes/RenderingServer.xml:2516
msgid ""
"Creates an empty shader and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42765,47 +43434,47 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2530
+#: doc/classes/RenderingServer.xml:2526
msgid "Returns a shader's code."
msgstr ""
-#: doc/classes/RenderingServer.xml:2541
+#: doc/classes/RenderingServer.xml:2537
msgid "Returns a default texture from a shader searched by name."
msgstr ""
-#: doc/classes/RenderingServer.xml:2560
+#: doc/classes/RenderingServer.xml:2556
msgid "Returns the parameters of a shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:2571
+#: doc/classes/RenderingServer.xml:2567
msgid "Sets a shader's code."
msgstr ""
-#: doc/classes/RenderingServer.xml:2584
+#: doc/classes/RenderingServer.xml:2580
msgid "Sets a shader's default texture. Overwrites the texture given by name."
msgstr ""
-#: doc/classes/RenderingServer.xml:2597
+#: doc/classes/RenderingServer.xml:2593
msgid "Allocates the GPU buffers for this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2608
+#: doc/classes/RenderingServer.xml:2604
msgid "Returns the [Transform] set for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2619
+#: doc/classes/RenderingServer.xml:2615
msgid "Returns the [Transform2D] set for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2632
+#: doc/classes/RenderingServer.xml:2628
msgid "Sets the [Transform] for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2645
+#: doc/classes/RenderingServer.xml:2641
msgid "Sets the [Transform2D] for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2652
+#: doc/classes/RenderingServer.xml:2648
msgid ""
"Creates a skeleton and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all "
@@ -42814,11 +43483,11 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2662
+#: doc/classes/RenderingServer.xml:2658
msgid "Returns the number of bones allocated for this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2669
+#: doc/classes/RenderingServer.xml:2665
msgid ""
"Creates an empty sky and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all [code]sky_*[/"
@@ -42827,13 +43496,13 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2681
+#: doc/classes/RenderingServer.xml:2677
msgid ""
"Sets the material that the sky uses to render the background and reflection "
"maps."
msgstr ""
-#: doc/classes/RenderingServer.xml:2688
+#: doc/classes/RenderingServer.xml:2684
msgid ""
"Creates a spot light and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID can be used in most [code]light_*[/"
@@ -42844,15 +43513,15 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2717
+#: doc/classes/RenderingServer.xml:2713
msgid "Sets a viewport's camera."
msgstr ""
-#: doc/classes/RenderingServer.xml:2728
+#: doc/classes/RenderingServer.xml:2724
msgid "Sets a viewport's canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:2741
+#: doc/classes/RenderingServer.xml:2737
msgid ""
"Copies the viewport to a region of the screen specified by [code]rect[/"
"code]. If [method viewport_set_render_direct_to_screen] is [code]true[/"
@@ -42874,7 +43543,7 @@ msgid ""
"viewport_set_render_direct_to_screen]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2755
+#: doc/classes/RenderingServer.xml:2751
msgid ""
"Creates an empty viewport and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42883,72 +43552,72 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2767
+#: doc/classes/RenderingServer.xml:2763
msgid ""
"Returns a viewport's render information. For options, see the [enum "
"ViewportRenderInfo] constants."
msgstr ""
-#: doc/classes/RenderingServer.xml:2776
+#: doc/classes/RenderingServer.xml:2772
msgid "Returns the viewport's last rendered frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:2787
+#: doc/classes/RenderingServer.xml:2783
msgid "Detaches a viewport from a canvas and vice versa."
msgstr ""
-#: doc/classes/RenderingServer.xml:2798
+#: doc/classes/RenderingServer.xml:2794
msgid "If [code]true[/code], sets the viewport active, else sets it inactive."
msgstr ""
-#: doc/classes/RenderingServer.xml:2813
+#: doc/classes/RenderingServer.xml:2809
msgid ""
"Sets the stacking order for a viewport's canvas.\n"
"[code]layer[/code] is the actual canvas layer, while [code]sublayer[/code] "
"specifies the stacking order of the canvas among those in the same layer."
msgstr ""
-#: doc/classes/RenderingServer.xml:2827
+#: doc/classes/RenderingServer.xml:2823
msgid "Sets the transformation of a viewport's canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:2838
+#: doc/classes/RenderingServer.xml:2834
msgid ""
"Sets the clear mode of a viewport. See [enum ViewportClearMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2849
+#: doc/classes/RenderingServer.xml:2845
msgid ""
"Sets the debug draw mode of a viewport. See [enum ViewportDebugDraw] for "
"options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2860
+#: doc/classes/RenderingServer.xml:2856
msgid ""
"If [code]true[/code], rendering of a viewport's environment is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:2871
+#: doc/classes/RenderingServer.xml:2867
msgid "Sets the viewport's global transformation matrix."
msgstr ""
-#: doc/classes/RenderingServer.xml:2882
+#: doc/classes/RenderingServer.xml:2878
msgid "If [code]true[/code], the viewport's canvas is not rendered."
msgstr ""
-#: doc/classes/RenderingServer.xml:2893
+#: doc/classes/RenderingServer.xml:2889
msgid "Currently unimplemented in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:2904
+#: doc/classes/RenderingServer.xml:2900
msgid "Sets the anti-aliasing mode. See [enum ViewportMSAA] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2915
+#: doc/classes/RenderingServer.xml:2911
msgid "Sets the viewport's parent to another viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:2926
+#: doc/classes/RenderingServer.xml:2922
msgid ""
"If [code]true[/code], render the contents of the viewport directly to "
"screen. This allows a low-level optimization where you can skip drawing a "
@@ -42964,455 +43633,455 @@ msgid ""
"significantly larger than the window size."
msgstr ""
-#: doc/classes/RenderingServer.xml:2937
+#: doc/classes/RenderingServer.xml:2933
msgid ""
"Sets a viewport's scenario.\n"
"The scenario contains information about the [enum ScenarioDebugMode], "
"environment information, reflection atlas etc."
msgstr ""
-#: doc/classes/RenderingServer.xml:2951
+#: doc/classes/RenderingServer.xml:2947
msgid "Sets the shadow atlas quadrant's subdivision."
msgstr ""
-#: doc/classes/RenderingServer.xml:2962
+#: doc/classes/RenderingServer.xml:2958
msgid ""
"Sets the size of the shadow atlas's images (used for omni and spot lights). "
"The value will be rounded up to the nearest power of 2."
msgstr ""
-#: doc/classes/RenderingServer.xml:2975
+#: doc/classes/RenderingServer.xml:2971
msgid "Sets the viewport's width and height."
msgstr ""
-#: doc/classes/RenderingServer.xml:2986
+#: doc/classes/RenderingServer.xml:2982
msgid ""
"If [code]true[/code], the viewport renders its background as transparent."
msgstr ""
-#: doc/classes/RenderingServer.xml:2997
+#: doc/classes/RenderingServer.xml:2993
msgid ""
"Sets when the viewport should be updated. See [enum ViewportUpdateMode] "
"constants for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:3008
+#: doc/classes/RenderingServer.xml:3004
msgid ""
"If [code]true[/code], the viewport uses augmented or virtual reality "
"technologies. See [XRInterface]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3014
+#: doc/classes/RenderingServer.xml:3010
msgid ""
"If [code]false[/code], disables rendering completely, but the engine logic "
"is still being processed. You can call [method force_draw] to draw a frame "
"even with rendering disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3020
+#: doc/classes/RenderingServer.xml:3016
msgid ""
"Emitted at the end of the frame, after the RenderingServer has finished "
"updating all the Viewports."
msgstr ""
-#: doc/classes/RenderingServer.xml:3025
+#: doc/classes/RenderingServer.xml:3021
msgid ""
"Emitted at the beginning of the frame, before the RenderingServer updates "
"all the Viewports."
msgstr ""
-#: doc/classes/RenderingServer.xml:3031
+#: doc/classes/RenderingServer.xml:3027
msgid "Marks an error that shows that the index array is empty."
msgstr ""
-#: doc/classes/RenderingServer.xml:3034
+#: doc/classes/RenderingServer.xml:3030
msgid "Number of weights/bones per vertex."
msgstr ""
-#: doc/classes/RenderingServer.xml:3037
+#: doc/classes/RenderingServer.xml:3033
msgid "The minimum Z-layer for canvas items."
msgstr ""
-#: doc/classes/RenderingServer.xml:3040
+#: doc/classes/RenderingServer.xml:3036
msgid "The maximum Z-layer for canvas items."
msgstr ""
-#: doc/classes/RenderingServer.xml:3043
+#: doc/classes/RenderingServer.xml:3039
msgid ""
"Max number of glow levels that can be used with glow post-process effect."
msgstr ""
-#: doc/classes/RenderingServer.xml:3046
+#: doc/classes/RenderingServer.xml:3042
msgid "Unused enum in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:3067
+#: doc/classes/RenderingServer.xml:3063
msgid "Shader is a 3D shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3070
+#: doc/classes/RenderingServer.xml:3066
msgid "Shader is a 2D shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3073
+#: doc/classes/RenderingServer.xml:3069
msgid "Shader is a particle shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3076
+#: doc/classes/RenderingServer.xml:3072
msgid "Shader is a sky shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3079
+#: doc/classes/RenderingServer.xml:3075
msgid "Represents the size of the [enum ShaderMode] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3082
+#: doc/classes/RenderingServer.xml:3078
msgid "The minimum renderpriority of all materials."
msgstr ""
-#: doc/classes/RenderingServer.xml:3085
+#: doc/classes/RenderingServer.xml:3081
msgid "The maximum renderpriority of all materials."
msgstr ""
-#: doc/classes/RenderingServer.xml:3088
+#: doc/classes/RenderingServer.xml:3084
msgid "Array is a vertex array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3091
+#: doc/classes/RenderingServer.xml:3087
msgid "Array is a normal array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3094
+#: doc/classes/RenderingServer.xml:3090
msgid "Array is a tangent array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3097
+#: doc/classes/RenderingServer.xml:3093
msgid "Array is a color array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3100
+#: doc/classes/RenderingServer.xml:3096
msgid "Array is an UV coordinates array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3103
+#: doc/classes/RenderingServer.xml:3099
msgid "Array is an UV coordinates array for the second UV coordinates."
msgstr ""
-#: doc/classes/RenderingServer.xml:3106
+#: doc/classes/RenderingServer.xml:3102
msgid "Array contains bone information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3109
+#: doc/classes/RenderingServer.xml:3105
msgid "Array is weight information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3112
+#: doc/classes/RenderingServer.xml:3108
msgid "Array is index array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3118
+#: doc/classes/RenderingServer.xml:3114
msgid "Flag used to mark a vertex array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3121
+#: doc/classes/RenderingServer.xml:3117
msgid "Flag used to mark a normal array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3124
+#: doc/classes/RenderingServer.xml:3120
msgid "Flag used to mark a tangent array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3127
+#: doc/classes/RenderingServer.xml:3123
msgid "Flag used to mark a color array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3130
+#: doc/classes/RenderingServer.xml:3126
msgid "Flag used to mark an UV coordinates array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3133
+#: doc/classes/RenderingServer.xml:3129
msgid ""
"Flag used to mark an UV coordinates array for the second UV coordinates."
msgstr ""
-#: doc/classes/RenderingServer.xml:3136
+#: doc/classes/RenderingServer.xml:3132
msgid "Flag used to mark a bone information array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3139
+#: doc/classes/RenderingServer.xml:3135
msgid "Flag used to mark a weights array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3142
+#: doc/classes/RenderingServer.xml:3138
msgid "Flag used to mark an index array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3171
+#: doc/classes/RenderingServer.xml:3167
msgid "Primitive to draw consists of points."
msgstr ""
-#: doc/classes/RenderingServer.xml:3174
+#: doc/classes/RenderingServer.xml:3170
msgid "Primitive to draw consists of lines."
msgstr ""
-#: doc/classes/RenderingServer.xml:3177
+#: doc/classes/RenderingServer.xml:3173
msgid "Primitive to draw consists of a line strip from start to end."
msgstr ""
-#: doc/classes/RenderingServer.xml:3180
+#: doc/classes/RenderingServer.xml:3176
msgid "Primitive to draw consists of triangles."
msgstr ""
-#: doc/classes/RenderingServer.xml:3183
+#: doc/classes/RenderingServer.xml:3179
msgid ""
"Primitive to draw consists of a triangle strip (the last 3 vertices are "
"always combined to make a triangle)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3186
+#: doc/classes/RenderingServer.xml:3182
msgid "Represents the size of the [enum PrimitiveType] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3195
+#: doc/classes/RenderingServer.xml:3191
msgid "Use [Transform2D] to store MultiMesh transform."
msgstr ""
-#: doc/classes/RenderingServer.xml:3198
+#: doc/classes/RenderingServer.xml:3194
msgid "Use [Transform] to store MultiMesh transform."
msgstr ""
-#: doc/classes/RenderingServer.xml:3201
+#: doc/classes/RenderingServer.xml:3197
msgid "Is a directional (sun) light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3204
+#: doc/classes/RenderingServer.xml:3200
msgid "Is an omni light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3207
+#: doc/classes/RenderingServer.xml:3203
msgid "Is a spot light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3210
+#: doc/classes/RenderingServer.xml:3206
msgid "The light's energy."
msgstr ""
-#: doc/classes/RenderingServer.xml:3215
+#: doc/classes/RenderingServer.xml:3211
msgid "The light's influence on specularity."
msgstr ""
-#: doc/classes/RenderingServer.xml:3218
+#: doc/classes/RenderingServer.xml:3214
msgid "The light's range."
msgstr ""
-#: doc/classes/RenderingServer.xml:3221
+#: doc/classes/RenderingServer.xml:3217
msgid ""
"The size of the light when using spot light or omni light. The angular size "
"of the light when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3224
+#: doc/classes/RenderingServer.xml:3220
msgid "The light's attenuation."
msgstr ""
-#: doc/classes/RenderingServer.xml:3227
+#: doc/classes/RenderingServer.xml:3223
msgid "The spotlight's angle."
msgstr ""
-#: doc/classes/RenderingServer.xml:3230
+#: doc/classes/RenderingServer.xml:3226
msgid "The spotlight's attenuation."
msgstr ""
-#: doc/classes/RenderingServer.xml:3233
+#: doc/classes/RenderingServer.xml:3229
msgid "Max distance that shadows will be rendered."
msgstr ""
-#: doc/classes/RenderingServer.xml:3236
+#: doc/classes/RenderingServer.xml:3232
msgid "Proportion of shadow atlas occupied by the first split."
msgstr ""
-#: doc/classes/RenderingServer.xml:3239
+#: doc/classes/RenderingServer.xml:3235
msgid "Proportion of shadow atlas occupied by the second split."
msgstr ""
-#: doc/classes/RenderingServer.xml:3242
+#: doc/classes/RenderingServer.xml:3238
msgid ""
"Proportion of shadow atlas occupied by the third split. The fourth split "
"occupies the rest."
msgstr ""
-#: doc/classes/RenderingServer.xml:3245
+#: doc/classes/RenderingServer.xml:3241
msgid ""
"Proportion of shadow max distance where the shadow will start to fade out."
msgstr ""
-#: doc/classes/RenderingServer.xml:3248
+#: doc/classes/RenderingServer.xml:3244
msgid ""
"Normal bias used to offset shadow lookup by object normal. Can be used to "
"fix self-shadowing artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3251
+#: doc/classes/RenderingServer.xml:3247
msgid "Bias the shadow lookup to fix self-shadowing artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3257
+#: doc/classes/RenderingServer.xml:3253
msgid ""
"Blurs the edges of the shadow. Can be used to hide pixel artifacts in low "
"resolution shadow maps. A high value can make shadows appear grainy and can "
"cause other unwanted artifacts. Try to keep as near default as possible."
msgstr ""
-#: doc/classes/RenderingServer.xml:3262
+#: doc/classes/RenderingServer.xml:3258
msgid "Represents the size of the [enum LightParam] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3265
+#: doc/classes/RenderingServer.xml:3267
msgid "Use a dual paraboloid shadow map for omni lights."
msgstr ""
-#: doc/classes/RenderingServer.xml:3268
+#: doc/classes/RenderingServer.xml:3270
msgid ""
"Use a cubemap shadow map for omni lights. Slower but better quality than "
"dual paraboloid."
msgstr ""
-#: doc/classes/RenderingServer.xml:3271
+#: doc/classes/RenderingServer.xml:3273
msgid "Use orthogonal shadow projection for directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3274
+#: doc/classes/RenderingServer.xml:3276
msgid "Use 2 splits for shadow projection when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3277
+#: doc/classes/RenderingServer.xml:3279
msgid "Use 4 splits for shadow projection when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3280
+#: doc/classes/RenderingServer.xml:3282
msgid ""
"Keeps shadows stable as camera moves but has lower effective resolution."
msgstr ""
-#: doc/classes/RenderingServer.xml:3283
+#: doc/classes/RenderingServer.xml:3285
msgid ""
"Optimize use of shadow maps, increasing the effective resolution. But may "
"result in shadows moving or flickering slightly."
msgstr ""
-#: doc/classes/RenderingServer.xml:3286
+#: doc/classes/RenderingServer.xml:3288
msgid "Reflection probe will update reflections once and then stop."
msgstr ""
-#: doc/classes/RenderingServer.xml:3289
+#: doc/classes/RenderingServer.xml:3291
msgid ""
"Reflection probe will update each frame. This mode is necessary to capture "
"moving objects."
msgstr ""
-#: doc/classes/RenderingServer.xml:3302
+#: doc/classes/RenderingServer.xml:3310
msgid "Draw particles in the order that they appear in the particles array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3305
+#: doc/classes/RenderingServer.xml:3313
msgid "Sort particles based on their lifetime."
msgstr ""
-#: doc/classes/RenderingServer.xml:3308
+#: doc/classes/RenderingServer.xml:3316
msgid "Sort particles based on their distance to the camera."
msgstr ""
-#: doc/classes/RenderingServer.xml:3311
+#: doc/classes/RenderingServer.xml:3319
msgid "Do not update the viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:3314
+#: doc/classes/RenderingServer.xml:3322
msgid "Update the viewport once then set to disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3317
+#: doc/classes/RenderingServer.xml:3325
msgid "Update the viewport whenever it is visible."
msgstr ""
-#: doc/classes/RenderingServer.xml:3322
+#: doc/classes/RenderingServer.xml:3330
msgid "Always update the viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:3325
+#: doc/classes/RenderingServer.xml:3333
msgid "The viewport is always cleared before drawing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3328
+#: doc/classes/RenderingServer.xml:3336
msgid "The viewport is never cleared before drawing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3331
+#: doc/classes/RenderingServer.xml:3339
msgid ""
"The viewport is cleared once, then the clear mode is set to [constant "
"VIEWPORT_CLEAR_NEVER]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3334
+#: doc/classes/RenderingServer.xml:3342
msgid "Multisample antialiasing is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3337
+#: doc/classes/RenderingServer.xml:3345
msgid "Multisample antialiasing uses 2 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3340
+#: doc/classes/RenderingServer.xml:3348
msgid "Multisample antialiasing uses 4 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3343
+#: doc/classes/RenderingServer.xml:3351
msgid "Multisample antialiasing uses 8 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3346
+#: doc/classes/RenderingServer.xml:3354
msgid "Multisample antialiasing uses 16 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3357
+#: doc/classes/RenderingServer.xml:3365
msgid "Number of objects drawn in a single frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3360
+#: doc/classes/RenderingServer.xml:3368
msgid "Number of vertices drawn in a single frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3363
+#: doc/classes/RenderingServer.xml:3371
msgid "Number of material changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3366
+#: doc/classes/RenderingServer.xml:3374
msgid "Number of shader changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3369
+#: doc/classes/RenderingServer.xml:3377
msgid "Number of surface changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3372
+#: doc/classes/RenderingServer.xml:3380
msgid "Number of draw calls during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3375
+#: doc/classes/RenderingServer.xml:3383
msgid "Represents the size of the [enum ViewportRenderInfo] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3378
+#: doc/classes/RenderingServer.xml:3386
msgid "Debug draw is disabled. Default setting."
msgstr ""
-#: doc/classes/RenderingServer.xml:3381 doc/classes/Viewport.xml:348
+#: doc/classes/RenderingServer.xml:3389 doc/classes/Viewport.xml:348
msgid "Objects are displayed without light information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3384
+#: doc/classes/RenderingServer.xml:3392
msgid "Objects are displayed with only light information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3387 doc/classes/Viewport.xml:353
+#: doc/classes/RenderingServer.xml:3395 doc/classes/Viewport.xml:353
msgid ""
"Objects are displayed semi-transparent with additive blending so you can see "
"where they are drawing over top of one another. A higher overdraw means you "
@@ -43420,41 +44089,41 @@ msgid ""
"others."
msgstr ""
-#: doc/classes/RenderingServer.xml:3390
+#: doc/classes/RenderingServer.xml:3398
msgid "Debug draw draws objects in wireframe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3393
+#: doc/classes/RenderingServer.xml:3401
msgid ""
"Normal buffer is drawn instead of regular scene so you can see the per-pixel "
"normals that will be used by post-processing effects."
msgstr ""
-#: doc/classes/RenderingServer.xml:3396 doc/classes/Viewport.xml:361
+#: doc/classes/RenderingServer.xml:3404 doc/classes/Viewport.xml:361
msgid "Objects are displayed with only the albedo value from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3399 doc/classes/Viewport.xml:364
+#: doc/classes/RenderingServer.xml:3407 doc/classes/Viewport.xml:364
msgid "Objects are displayed with only the lighting value from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3402 doc/classes/Viewport.xml:367
+#: doc/classes/RenderingServer.xml:3410 doc/classes/Viewport.xml:367
msgid "Objects are displayed with only the emission color from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3405 doc/classes/Viewport.xml:370
+#: doc/classes/RenderingServer.xml:3413 doc/classes/Viewport.xml:370
msgid ""
"Draws the shadow atlas that stores shadows from [OmniLight3D]s and "
"[SpotLight3D]s in the upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3408 doc/classes/Viewport.xml:373
+#: doc/classes/RenderingServer.xml:3416 doc/classes/Viewport.xml:373
msgid ""
"Draws the shadow atlas that stores shadows from [DirectionalLight3D]s in the "
"upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3413
+#: doc/classes/RenderingServer.xml:3421
msgid ""
"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 "
@@ -43462,21 +44131,14 @@ msgid ""
"your [WorldEnvironment]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3416 doc/classes/Viewport.xml:381
-msgid ""
-"Draws the roughness limiter post process over the Viewport so you can see "
-"where it has an effect. It must be enabled in [member ProjectSettings."
-"rendering/quality/screen_filters/screen_space_roughness_limiter] to work."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:3419
+#: doc/classes/RenderingServer.xml:3424
msgid ""
"Colors each PSSM split for the [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."
msgstr ""
-#: doc/classes/RenderingServer.xml:3424
+#: doc/classes/RenderingServer.xml:3435
msgid ""
"Uses high quality importance sampling to process the radiance map. In "
"general, this results in much higher quality than [constant Sky."
@@ -43487,7 +44149,7 @@ msgid ""
"ggx_samples]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3427
+#: doc/classes/RenderingServer.xml:3438
msgid ""
"Uses the fast filtering algorithm to process the radiance map. In general "
"this results in lower quality, but substantially faster run times.\n"
@@ -43495,347 +44157,347 @@ msgid ""
"[member Sky.radiance_size] must be set to [constant Sky.RADIANCE_SIZE_256]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3431
+#: doc/classes/RenderingServer.xml:3442
msgid "Use the clear color as background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3434
+#: doc/classes/RenderingServer.xml:3445
msgid "Use a specified color as the background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3437
+#: doc/classes/RenderingServer.xml:3448
msgid "Use a sky resource for the background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3440
+#: doc/classes/RenderingServer.xml:3451
msgid ""
"Use a specified canvas layer as the background. This can be useful for "
"instantiating a 2D scene in a 3D world."
msgstr ""
-#: doc/classes/RenderingServer.xml:3443
+#: doc/classes/RenderingServer.xml:3454
msgid ""
"Do not clear the background, use whatever was rendered last frame as the "
"background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3449
+#: doc/classes/RenderingServer.xml:3460
msgid "Represents the size of the [enum EnvironmentBG] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3488
+#: doc/classes/RenderingServer.xml:3499
msgid "Output color as they came in."
msgstr ""
-#: doc/classes/RenderingServer.xml:3491
+#: doc/classes/RenderingServer.xml:3502
msgid "Use the Reinhard tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3494
+#: doc/classes/RenderingServer.xml:3505
msgid "Use the filmic tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3497
+#: doc/classes/RenderingServer.xml:3508
msgid "Use the ACES tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3508
+#: doc/classes/RenderingServer.xml:3519
msgid "Disables the blur set for SSAO. Will make SSAO look noisier."
msgstr ""
-#: doc/classes/RenderingServer.xml:3511
+#: doc/classes/RenderingServer.xml:3522
msgid "Perform a 1x1 blur on the SSAO output."
msgstr ""
-#: doc/classes/RenderingServer.xml:3514
+#: doc/classes/RenderingServer.xml:3525
msgid "Performs a 2x2 blur on the SSAO output."
msgstr ""
-#: doc/classes/RenderingServer.xml:3517
+#: doc/classes/RenderingServer.xml:3528
msgid "Performs a 3x3 blur on the SSAO output. Use this for smoothest SSAO."
msgstr ""
-#: doc/classes/RenderingServer.xml:3520
+#: doc/classes/RenderingServer.xml:3531
msgid "Lowest quality of screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3523
+#: doc/classes/RenderingServer.xml:3534
msgid "Medium quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3526
+#: doc/classes/RenderingServer.xml:3537
msgid "High quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3529
+#: doc/classes/RenderingServer.xml:3540
msgid "Highest quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3540
+#: doc/classes/RenderingServer.xml:3551
msgid ""
"Lowest quality DOF blur. This is the fastest setting, but you may be able to "
"see filtering artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3543
+#: doc/classes/RenderingServer.xml:3554
msgid "Low quality DOF blur."
msgstr ""
-#: doc/classes/RenderingServer.xml:3546
+#: doc/classes/RenderingServer.xml:3557
msgid "Medium quality DOF blur."
msgstr ""
-#: doc/classes/RenderingServer.xml:3549
+#: doc/classes/RenderingServer.xml:3560
msgid ""
"Highest quality DOF blur. Results in the smoothest looking blur by taking "
"the most samples, but is also significantly slower."
msgstr ""
-#: doc/classes/RenderingServer.xml:3552
+#: doc/classes/RenderingServer.xml:3563
msgid ""
"Calculate the DOF blur using a box filter. The fastest option, but results "
"in obvious lines in blur pattern."
msgstr ""
-#: doc/classes/RenderingServer.xml:3555
+#: doc/classes/RenderingServer.xml:3566
msgid "Calculates DOF blur using a hexagon shaped filter."
msgstr ""
-#: doc/classes/RenderingServer.xml:3558
+#: doc/classes/RenderingServer.xml:3569
msgid ""
"Calculates DOF blur using a circle shaped filter. Best quality and most "
"realistic, but slowest. Use only for areas where a lot of performance can be "
"dedicated to post-processing (e.g. cutscenes)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3573
+#: doc/classes/RenderingServer.xml:3584
msgid "Do not use a debug mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:3576
+#: doc/classes/RenderingServer.xml:3587
msgid "Draw all objects as wireframe models."
msgstr ""
-#: doc/classes/RenderingServer.xml:3579
+#: doc/classes/RenderingServer.xml:3590
msgid ""
"Draw all objects in a way that displays how much overdraw is occurring. "
"Overdraw occurs when a section of pixels is drawn and shaded and then "
"another object covers it up. To optimize a scene, you should reduce overdraw."
msgstr ""
-#: doc/classes/RenderingServer.xml:3582
+#: doc/classes/RenderingServer.xml:3593
msgid ""
"Draw all objects without shading. Equivalent to setting all objects shaders "
"to [code]unshaded[/code]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3585
+#: doc/classes/RenderingServer.xml:3596
msgid "The instance does not have a type."
msgstr ""
-#: doc/classes/RenderingServer.xml:3588
+#: doc/classes/RenderingServer.xml:3599
msgid "The instance is a mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:3591
+#: doc/classes/RenderingServer.xml:3602
msgid "The instance is a multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:3594
+#: doc/classes/RenderingServer.xml:3605
msgid "The instance is an immediate geometry."
msgstr ""
-#: doc/classes/RenderingServer.xml:3597
+#: doc/classes/RenderingServer.xml:3608
msgid "The instance is a particle emitter."
msgstr ""
-#: doc/classes/RenderingServer.xml:3600
+#: doc/classes/RenderingServer.xml:3611
msgid "The instance is a light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3603
+#: doc/classes/RenderingServer.xml:3614
msgid "The instance is a reflection probe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3606
+#: doc/classes/RenderingServer.xml:3617
msgid "The instance is a decal."
msgstr ""
-#: doc/classes/RenderingServer.xml:3609
+#: doc/classes/RenderingServer.xml:3620
msgid "The instance is a GI probe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3612
+#: doc/classes/RenderingServer.xml:3623
msgid "The instance is a lightmap."
msgstr ""
-#: doc/classes/RenderingServer.xml:3615
+#: doc/classes/RenderingServer.xml:3626
msgid "Represents the size of the [enum InstanceType] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3618
+#: doc/classes/RenderingServer.xml:3629
msgid ""
"A combination of the flags of geometry instances (mesh, multimesh, immediate "
"and particles)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3621
+#: doc/classes/RenderingServer.xml:3632
msgid "Allows the instance to be used in baked lighting."
msgstr ""
-#: doc/classes/RenderingServer.xml:3624
+#: doc/classes/RenderingServer.xml:3635
msgid "Allows the instance to be used with dynamic global illumination."
msgstr ""
-#: doc/classes/RenderingServer.xml:3627
+#: doc/classes/RenderingServer.xml:3638
msgid "When set, manually requests to draw geometry on next frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3630
+#: doc/classes/RenderingServer.xml:3641
msgid "Represents the size of the [enum InstanceFlags] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3633
+#: doc/classes/RenderingServer.xml:3644
msgid "Disable shadows from this instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:3636
+#: doc/classes/RenderingServer.xml:3647
msgid "Cast shadows from this instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:3639
+#: doc/classes/RenderingServer.xml:3650
msgid ""
"Disable backface culling when rendering the shadow of the object. This is "
"slightly slower but may result in more correct shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3642
+#: doc/classes/RenderingServer.xml:3653
msgid ""
"Only render the shadows from the object. The object itself will not be drawn."
msgstr ""
-#: doc/classes/RenderingServer.xml:3645
+#: doc/classes/RenderingServer.xml:3656
msgid "The nine patch gets stretched where needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3648
+#: doc/classes/RenderingServer.xml:3659
msgid "The nine patch gets filled with tiles where needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3651
+#: doc/classes/RenderingServer.xml:3662
msgid ""
"The nine patch gets filled with tiles where needed and stretches them a bit "
"if needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3654
+#: doc/classes/RenderingServer.xml:3665
msgid "Uses the default filter mode for this [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3666 doc/classes/Viewport.xml:399
+#: doc/classes/RenderingServer.xml:3677 doc/classes/Viewport.xml:402
msgid ""
"The texture filter blends between the nearest 4 pixels and between the "
"nearest 2 mipmaps."
msgstr ""
-#: doc/classes/RenderingServer.xml:3675
+#: doc/classes/RenderingServer.xml:3686
msgid "Max value for [enum CanvasItemTextureFilter] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3678
+#: doc/classes/RenderingServer.xml:3689
msgid "Uses the default repeat mode for this [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3681 doc/classes/Viewport.xml:405
+#: doc/classes/RenderingServer.xml:3692 doc/classes/Viewport.xml:408
msgid ""
"Disables textures repeating. Instead, when reading UVs outside the 0-1 "
"range, the value will be clamped to the edge of the texture, resulting in a "
"stretched out look at the borders of the texture."
msgstr ""
-#: doc/classes/RenderingServer.xml:3687 doc/classes/Viewport.xml:411
+#: doc/classes/RenderingServer.xml:3698 doc/classes/Viewport.xml:414
msgid ""
"Flip the texture when repeating so that the edge lines up instead of "
"abruptly changing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3690
+#: doc/classes/RenderingServer.xml:3701
msgid "Max value for [enum CanvasItemTextureRepeat] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3693
+#: doc/classes/RenderingServer.xml:3704
msgid "Adds light color additive to the canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:3696
+#: doc/classes/RenderingServer.xml:3707
msgid "Adds light color subtractive to the canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:3699
+#: doc/classes/RenderingServer.xml:3710
msgid "The light adds color depending on transparency."
msgstr ""
-#: doc/classes/RenderingServer.xml:3702
+#: doc/classes/RenderingServer.xml:3713
msgid "The light adds color depending on mask."
msgstr ""
-#: doc/classes/RenderingServer.xml:3705
+#: doc/classes/RenderingServer.xml:3716
msgid "Do not apply a filter to canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3708
+#: doc/classes/RenderingServer.xml:3719
msgid "Use PCF5 filtering to filter canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3711
+#: doc/classes/RenderingServer.xml:3722
msgid "Use PCF13 filtering to filter canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3714
+#: doc/classes/RenderingServer.xml:3725
msgid "Max value of the [enum CanvasLightShadowFilter] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3717
+#: doc/classes/RenderingServer.xml:3728
msgid "Culling of the canvas occluder is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3720
+#: doc/classes/RenderingServer.xml:3731
msgid "Culling of the canvas occluder is clockwise."
msgstr ""
-#: doc/classes/RenderingServer.xml:3723
+#: doc/classes/RenderingServer.xml:3734
msgid "Culling of the canvas occluder is counterclockwise."
msgstr ""
-#: doc/classes/RenderingServer.xml:3784
+#: doc/classes/RenderingServer.xml:3795
msgid "The amount of objects in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3787
+#: doc/classes/RenderingServer.xml:3798
msgid "The amount of vertices in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3790
+#: doc/classes/RenderingServer.xml:3801
msgid "The amount of modified materials in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3793
+#: doc/classes/RenderingServer.xml:3804
msgid "The amount of shader rebinds in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3796
+#: doc/classes/RenderingServer.xml:3807
msgid "The amount of surface changes in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3799
+#: doc/classes/RenderingServer.xml:3810
msgid "The amount of draw calls in frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3814
+#: doc/classes/RenderingServer.xml:3825
msgid "Hardware supports shaders. This enum is currently unused in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:3817
+#: doc/classes/RenderingServer.xml:3828
msgid ""
"Hardware supports multithreading. This enum is currently unused in Godot 3.x."
msgstr ""
@@ -43847,13 +44509,13 @@ msgstr ""
#: doc/classes/Resource.xml:7
msgid ""
"Resource is the base class for all Godot-specific resource types, serving "
-"primarily as data containers. They are reference counted and freed when no "
-"longer in use. They are also cached once loaded from disk, so that any "
-"further attempts to load a resource from a given path will return the same "
-"reference (all this in contrast to a [Node], which is not reference counted "
-"and can be instanced from disk as many times as desired). Resources can be "
-"saved externally on disk or bundled into another object, such as a [Node] or "
-"another resource."
+"primarily as data containers. Unlike [Object]s, they are reference-counted "
+"and freed when no longer in use. They are also cached once loaded from disk, "
+"so that any further attempts to load a resource from a given path will "
+"return the same reference (all this in contrast to a [Node], which is not "
+"reference-counted and can be instanced from disk as many times as desired). "
+"Resources can be saved externally on disk or bundled into another object, "
+"such as a [Node] or another resource."
msgstr ""
#: doc/classes/Resource.xml:10
@@ -43862,34 +44524,38 @@ msgid ""
"resources.html"
msgstr ""
-#: doc/classes/Resource.xml:17
+#: doc/classes/Resource.xml:18
msgid ""
"Virtual function which can be overridden to customize the behavior value of "
"[method setup_local_to_scene]."
msgstr ""
-#: doc/classes/Resource.xml:26
+#: doc/classes/Resource.xml:27
msgid ""
"Duplicates the resource, returning a new resource. By default, sub-resources "
-"are shared between resource copies for efficiency, this can be changed by "
-"passing [code]true[/code] to the [code]subresources[/code] argument."
+"are shared between resource copies for efficiency. This can be changed by "
+"passing [code]true[/code] to the [code]subresources[/code] argument which "
+"will copy the subresources.\n"
+"[b]Note:[/b] If [code]subresources[/code] is [code]true[/code], this method "
+"will only perform a shallow copy. Nested resources within subresources will "
+"not be duplicated and will still be shared."
msgstr ""
-#: doc/classes/Resource.xml:33
+#: doc/classes/Resource.xml:35
msgid ""
"If [member resource_local_to_scene] is enabled and the resource was loaded "
"from a [PackedScene] instantiation, returns the local scene where this "
"resource's unique copy is in use. Otherwise, returns [code]null[/code]."
msgstr ""
-#: doc/classes/Resource.xml:40
+#: doc/classes/Resource.xml:42
msgid ""
"Returns the RID of the resource (or an empty RID). Many resources (such as "
"[Texture2D], [Mesh], etc) are high-level abstractions of resources stored in "
"a server, so this function will return the original RID."
msgstr ""
-#: doc/classes/Resource.xml:47
+#: doc/classes/Resource.xml:49
msgid ""
"This method is called when a resource with [member resource_local_to_scene] "
"enabled is loaded from a [PackedScene] instantiation. Its behavior can be "
@@ -43899,7 +44565,7 @@ msgid ""
"local viewport."
msgstr ""
-#: doc/classes/Resource.xml:57
+#: doc/classes/Resource.xml:59
msgid ""
"Sets the path of the resource, potentially overriding an existing cache "
"entry for this path. This differs from setting [member resource_path], as "
@@ -43907,25 +44573,25 @@ msgid ""
"given path."
msgstr ""
-#: doc/classes/Resource.xml:63
+#: doc/classes/Resource.xml:65
msgid ""
"If [code]true[/code], the resource will be made unique in each instance of "
"its local scene. It can thus be modified in a scene instance without "
"impacting other instances of that same scene."
msgstr ""
-#: doc/classes/Resource.xml:66
+#: doc/classes/Resource.xml:68
msgid "The name of the resource. This is an optional identifier."
msgstr ""
-#: doc/classes/Resource.xml:69
+#: doc/classes/Resource.xml:71
msgid ""
"The path to the resource. In case it has its own file, it will return its "
"filepath. If it's tied to the scene, it will return the scene's path, "
"followed by the resource's index."
msgstr ""
-#: doc/classes/Resource.xml:75
+#: doc/classes/Resource.xml:77
msgid "Emitted whenever the resource changes."
msgstr ""
@@ -44744,11 +45410,11 @@ msgid ""
"global coordinate system, but is centered at the object's origin."
msgstr ""
-#: doc/classes/RigidBody2D.xml:87
+#: doc/classes/RigidBody2D.xml:87 doc/classes/RigidBody3D.xml:99
msgid ""
-"Returns a list of the bodies colliding with this one. Use [member "
-"contacts_reported] to set the maximum number reported. You must also set "
-"[member contact_monitor] to [code]true[/code].\n"
+"Returns a list of the bodies colliding with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
"For performance, list of collisions is updated once per frame and before the "
"physics step. Consider using signals instead."
@@ -44785,7 +45451,7 @@ msgstr ""
msgid "The body's total applied torque."
msgstr ""
-#: doc/classes/RigidBody2D.xml:130 doc/classes/RigidBody3D.xml:150
+#: doc/classes/RigidBody2D.xml:130 doc/classes/RigidBody3D.xml:157
msgid ""
"If [code]true[/code], the body can enter sleep mode when there is no "
"movement. See [member sleeping]."
@@ -44797,11 +45463,17 @@ msgid ""
"another RigidBody2D. See also [member contacts_reported]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:136
-msgid "The maximum number of contacts to report."
+#: doc/classes/RigidBody2D.xml:136 doc/classes/RigidBody3D.xml:163
+msgid ""
+"The maximum number of contacts that will be recorded. Requires [member "
+"contact_monitor] to be set to [code]true[/code].\n"
+"[b]Note:[/b] The number of contacts is different from the number of "
+"collisions. Collisions between parallel edges will result in two contacts "
+"(one at each end), and collisions between parallel faces will result in four "
+"contacts (one at each corner)."
msgstr ""
-#: doc/classes/RigidBody2D.xml:139
+#: doc/classes/RigidBody2D.xml:140
msgid ""
"Continuous collision detection mode.\n"
"Continuous collision detection tries to predict where a moving body will "
@@ -44811,21 +45483,21 @@ msgid ""
"methods are available. See [enum CCDMode] for details."
msgstr ""
-#: doc/classes/RigidBody2D.xml:143
+#: doc/classes/RigidBody2D.xml:144
msgid ""
"If [code]true[/code], internal force integration is disabled for this body. "
"Aside from collision response, the body will only move as determined by the "
"[method _integrate_forces] function."
msgstr ""
-#: doc/classes/RigidBody2D.xml:146
+#: doc/classes/RigidBody2D.xml:147
msgid ""
"Multiplies the gravity applied to the body. The body's gravity is calculated "
"from the [b]Default Gravity[/b] value in [b]Project > Project Settings > "
"Physics > 2d[/b] and/or any additional gravity vector applied by [Area2D]s."
msgstr ""
-#: doc/classes/RigidBody2D.xml:149
+#: doc/classes/RigidBody2D.xml:150
msgid ""
"The body's moment of inertia. This is like mass, but for rotation: it "
"determines how much torque it takes to rotate the body. The moment of "
@@ -44834,18 +45506,18 @@ msgid ""
"automatically computing it."
msgstr ""
-#: doc/classes/RigidBody2D.xml:152
+#: doc/classes/RigidBody2D.xml:153
msgid ""
"Damps the body's [member linear_velocity]. If [code]-1[/code], the body will "
"use the [b]Default Linear Damp[/b] in [b]Project > Project Settings > "
"Physics > 2d[/b]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:161
+#: doc/classes/RigidBody2D.xml:162
msgid "The body's mode. See [enum Mode] for possible values."
msgstr ""
-#: doc/classes/RigidBody2D.xml:164 doc/classes/RigidBody3D.xml:181
+#: doc/classes/RigidBody2D.xml:165 doc/classes/RigidBody3D.xml:189
#: doc/classes/StaticBody2D.xml:22 doc/classes/StaticBody3D.xml:22
msgid ""
"The physics material override for the body.\n"
@@ -44853,50 +45525,50 @@ msgid ""
"other physics material, such as an inherited one."
msgstr ""
-#: doc/classes/RigidBody2D.xml:168 doc/classes/RigidBody3D.xml:185
+#: doc/classes/RigidBody2D.xml:169 doc/classes/RigidBody3D.xml:193
msgid ""
"If [code]true[/code], the body will not move and will not calculate forces "
"until woken up by another body through, for example, a collision, or by "
"using the [method apply_impulse] or [method add_force] methods."
msgstr ""
-#: doc/classes/RigidBody2D.xml:171
+#: doc/classes/RigidBody2D.xml:172
msgid ""
"The body's weight based on its mass and the [b]Default Gravity[/b] value in "
"[b]Project > Project Settings > Physics > 2d[/b]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:179
+#: doc/classes/RigidBody2D.xml:180 doc/classes/RigidBody3D.xml:204
msgid ""
-"Emitted when a body enters into contact with this one. [member "
-"contact_monitor] must be [code]true[/code] and [member contacts_reported] "
-"greater than [code]0[/code]."
+"Emitted when a body enters into contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:186
+#: doc/classes/RigidBody2D.xml:187
msgid ""
-"Emitted when a body exits contact with this one. [member contact_monitor] "
-"must be [code]true[/code] and [member contacts_reported] greater than "
-"[code]0[/code]."
+"Emitted when a body exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:199
+#: doc/classes/RigidBody2D.xml:200
msgid ""
"Emitted when a body enters into contact with this one. Reports colliding "
"shape information. See [CollisionObject2D] for shape index information. "
-"[member contact_monitor] must be [code]true[/code] and [member "
-"contacts_reported] greater than [code]0[/code]."
+"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:212
+#: doc/classes/RigidBody2D.xml:213
msgid ""
"Emitted when a body shape exits contact with this one. Reports colliding "
"shape information. See [CollisionObject2D] for shape index information. "
-"[member contact_monitor] must be [code]true[/code] and [member "
-"contacts_reported] greater than [code]0[/code]."
+"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:217 doc/classes/RigidBody3D.xml:236
+#: doc/classes/RigidBody2D.xml:218 doc/classes/RigidBody3D.xml:244
msgid ""
"Emitted when the physics engine changes the body's sleeping state.\n"
"[b]Note:[/b] Changing the value [member sleeping] will not trigger this "
@@ -44904,41 +45576,41 @@ msgid ""
"engine or [code]emit_signal(\"sleeping_state_changed\")[/code] is used."
msgstr ""
-#: doc/classes/RigidBody2D.xml:224
+#: doc/classes/RigidBody2D.xml:225
msgid ""
"Rigid mode. The body behaves as a physical object. It collides with other "
"bodies and responds to forces applied to it. This is the default mode."
msgstr ""
-#: doc/classes/RigidBody2D.xml:227
+#: doc/classes/RigidBody2D.xml:228
msgid "Static mode. The body behaves like a [StaticBody2D] and does not move."
msgstr ""
-#: doc/classes/RigidBody2D.xml:230
+#: doc/classes/RigidBody2D.xml:231
msgid ""
"Character mode. Similar to [constant MODE_RIGID], but the body can not "
"rotate."
msgstr ""
-#: doc/classes/RigidBody2D.xml:233
+#: doc/classes/RigidBody2D.xml:234
msgid ""
"Kinematic mode. The body behaves like a [KinematicBody2D], and must be moved "
"by code."
msgstr ""
-#: doc/classes/RigidBody2D.xml:236
+#: doc/classes/RigidBody2D.xml:237
msgid ""
"Continuous collision detection disabled. This is the fastest way to detect "
"body collisions, but can miss small, fast-moving objects."
msgstr ""
-#: doc/classes/RigidBody2D.xml:239
+#: doc/classes/RigidBody2D.xml:240
msgid ""
"Continuous collision detection enabled using raycasting. This is faster than "
"shapecasting but less precise."
msgstr ""
-#: doc/classes/RigidBody2D.xml:242
+#: doc/classes/RigidBody2D.xml:243
msgid ""
"Continuous collision detection enabled using shapecasting. This is the "
"slowest CCD method and the most precise."
@@ -45024,42 +45696,31 @@ msgid ""
"locked."
msgstr ""
-#: doc/classes/RigidBody3D.xml:99
+#: doc/classes/RigidBody3D.xml:107
msgid ""
-"Returns a list of the bodies colliding with this one. By default, number of "
-"max contacts reported is at 0, see the [member contacts_reported] property "
-"to increase it.\n"
-"[b]Note:[/b] The result of this test is not immediate after moving objects. "
-"For performance, list of collisions is updated once per frame and before the "
-"physics step. Consider using signals instead."
+"Returns the inverse inertia tensor basis. This is used to calculate the "
+"angular acceleration resulting from a torque applied to the [RigidBody3D]."
msgstr ""
-#: doc/classes/RigidBody3D.xml:111
+#: doc/classes/RigidBody3D.xml:118
msgid "Locks the specified linear or rotational axis."
msgstr ""
-#: doc/classes/RigidBody3D.xml:126
+#: doc/classes/RigidBody3D.xml:133
msgid "Damps RigidBody3D's rotational forces."
msgstr ""
-#: doc/classes/RigidBody3D.xml:129
+#: doc/classes/RigidBody3D.xml:136
msgid "RigidBody3D's rotational velocity."
msgstr ""
-#: doc/classes/RigidBody3D.xml:153
+#: doc/classes/RigidBody3D.xml:160
msgid ""
"If [code]true[/code], the RigidBody3D will emit signals when it collides "
-"with another RigidBody3D."
+"with another RigidBody3D. See also [member contacts_reported]."
msgstr ""
-#: doc/classes/RigidBody3D.xml:156
-msgid ""
-"The maximum contacts to report. Bodies can keep a log of the contacts with "
-"other bodies, this is enabled by setting the maximum amount of contacts "
-"reported to a number greater than 0."
-msgstr ""
-
-#: doc/classes/RigidBody3D.xml:159
+#: doc/classes/RigidBody3D.xml:167
msgid ""
"If [code]true[/code], continuous collision detection is used.\n"
"Continuous collision detection tries to predict where a moving body will "
@@ -45069,7 +45730,7 @@ msgid ""
"faster to compute, but can miss small, fast-moving objects."
msgstr ""
-#: doc/classes/RigidBody3D.xml:163
+#: doc/classes/RigidBody3D.xml:171
msgid ""
"If [code]true[/code], internal force integration will be disabled (like "
"gravity or air friction) for this body. Other than collision response, the "
@@ -45077,7 +45738,7 @@ msgid ""
"function, if defined."
msgstr ""
-#: doc/classes/RigidBody3D.xml:166
+#: doc/classes/RigidBody3D.xml:174
msgid ""
"This is multiplied by the global 3D gravity setting found in [b]Project > "
"Project Settings > Physics > 3d[/b] to produce RigidBody3D's gravity. For "
@@ -45085,14 +45746,14 @@ msgid ""
"and 0.5 will apply half gravity to this object."
msgstr ""
-#: doc/classes/RigidBody3D.xml:169
+#: doc/classes/RigidBody3D.xml:177
msgid ""
"The body's linear damp. Cannot be less than -1.0. If this value is different "
"from -1.0, any linear damp derived from the world or areas will be "
"overridden."
msgstr ""
-#: doc/classes/RigidBody3D.xml:172
+#: doc/classes/RigidBody3D.xml:180
msgid ""
"The body's linear velocity. Can be used sporadically, but [b]don't set this "
"every frame[/b], because physics may run in another thread and runs at a "
@@ -45100,60 +45761,57 @@ msgid ""
"for precise control of the body state."
msgstr ""
-#: doc/classes/RigidBody3D.xml:178
+#: doc/classes/RigidBody3D.xml:186
msgid "The body mode. See [enum Mode] for possible values."
msgstr ""
-#: doc/classes/RigidBody3D.xml:196
-msgid ""
-"Emitted when a body enters into contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work."
-msgstr ""
-
-#: doc/classes/RigidBody3D.xml:203
+#: doc/classes/RigidBody3D.xml:211
msgid ""
-"Emitted when a body shape exits contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work."
+"Emitted when a body shape exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody3D.xml:216
+#: doc/classes/RigidBody3D.xml:224
msgid ""
-"Emitted when a body enters into contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work.\n"
+"Emitted when a body enters into contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"This signal not only receives the body that collided with this one, but also "
"its [RID] ([code]body_id[/code]), the shape index from the colliding body "
"([code]body_shape[/code]), and the shape index from this body "
"([code]local_shape[/code]) the other body collided with."
msgstr ""
-#: doc/classes/RigidBody3D.xml:230
+#: doc/classes/RigidBody3D.xml:238
msgid ""
-"Emitted when a body shape exits contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work.\n"
+"Emitted when a body shape exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"This signal not only receives the body that stopped colliding with this one, "
"but also its [RID] ([code]body_id[/code]), the shape index from the "
"colliding body ([code]body_shape[/code]), and the shape index from this body "
"([code]local_shape[/code]) the other body stopped colliding with."
msgstr ""
-#: doc/classes/RigidBody3D.xml:243
+#: doc/classes/RigidBody3D.xml:251
msgid ""
"Rigid body mode. This is the \"natural\" state of a rigid body. It is "
"affected by forces, and can move, rotate, and be affected by user code."
msgstr ""
-#: doc/classes/RigidBody3D.xml:246
+#: doc/classes/RigidBody3D.xml:254
msgid ""
"Static mode. The body behaves like a [StaticBody3D], and can only move by "
"user code."
msgstr ""
-#: doc/classes/RigidBody3D.xml:249
+#: doc/classes/RigidBody3D.xml:257
msgid ""
"Character body mode. This behaves like a rigid body, but can not rotate."
msgstr ""
-#: doc/classes/RigidBody3D.xml:252
+#: doc/classes/RigidBody3D.xml:260
msgid ""
"Kinematic body mode. The body behaves like a [KinematicBody3D], and can only "
"move by user code."
@@ -45660,7 +46318,7 @@ msgstr ""
msgid "The time remaining."
msgstr ""
-#: doc/classes/SceneTreeTimer.xml:28 doc/classes/Timer.xml:62
+#: doc/classes/SceneTreeTimer.xml:28 doc/classes/Timer.xml:63
msgid "Emitted when the timer reaches 0."
msgstr ""
@@ -45783,27 +46441,27 @@ msgid ""
"the singleton using [method EditorInterface.get_script_editor]."
msgstr ""
-#: doc/classes/ScriptEditor.xml:40
+#: doc/classes/ScriptEditor.xml:46
msgid "Returns a [Script] that is currently active in editor."
msgstr ""
-#: doc/classes/ScriptEditor.xml:57
+#: doc/classes/ScriptEditor.xml:69
msgid ""
"Returns an array with all [Script] objects which are currently open in "
"editor."
msgstr ""
-#: doc/classes/ScriptEditor.xml:66
+#: doc/classes/ScriptEditor.xml:78
msgid "Goes to the specified line in the current script."
msgstr ""
-#: doc/classes/ScriptEditor.xml:85
+#: doc/classes/ScriptEditor.xml:113
msgid ""
"Emitted when user changed active script. Argument is a freshly activated "
"[Script]."
msgstr ""
-#: doc/classes/ScriptEditor.xml:92
+#: doc/classes/ScriptEditor.xml:120
msgid ""
"Emitted when editor is about to close the active script. Argument is a "
"[Script] that is going to be closed."
@@ -45865,7 +46523,7 @@ msgid ""
"visible."
msgstr ""
-#: doc/classes/ScrollContainer.xml:37 doc/classes/TextEdit.xml:453
+#: doc/classes/ScrollContainer.xml:37 doc/classes/TextEdit.xml:407
msgid "The current horizontal scroll value."
msgstr ""
@@ -45873,7 +46531,7 @@ msgstr ""
msgid "If [code]true[/code], enables horizontal scrolling."
msgstr ""
-#: doc/classes/ScrollContainer.xml:43 doc/classes/TextEdit.xml:456
+#: doc/classes/ScrollContainer.xml:43 doc/classes/TextEdit.xml:410
msgid "The current vertical scroll value."
msgstr ""
@@ -46392,7 +47050,7 @@ msgstr ""
msgid ""
"Sets the global pose transform, [code]pose[/code], for the bone at "
"[code]bone_idx[/code].\n"
-"[code]amount[/code] is the interpolation strengh that will be used when "
+"[code]amount[/code] is the interpolation strength that will be used when "
"applying the pose, and [code]persistent[/code] determines if the applied "
"pose will remain.\n"
"[b]Note[/b]: The pose transform needs to be in bone space. Use [method "
@@ -46409,7 +47067,7 @@ msgstr ""
#: doc/classes/Skeleton3D.xml:266
msgid ""
-"Returns the pose transform for bone [code]bone_idx[/code].\n"
+"Sets the pose transform for bone [code]bone_idx[/code].\n"
"[b]Note[/b]: The pose transform needs to be in bone space. Use [method "
"world_transform_to_bone_transform] to convert a world transform, like one "
"you can get from a [Node3D], to bone space."
@@ -46502,6 +47160,16 @@ msgstr ""
#: doc/classes/Sky.xml:52
msgid ""
+"Automatically selects the appropriate process mode based on your sky shader. "
+"If your shader uses [code]TIME[/code] or [code]POSITION[/code], this will "
+"use [constant PROCESS_MODE_REALTIME]. If your shader uses any of the "
+"[code]LIGHT_*[/code] variables or any custom uniforms, this uses [constant "
+"PROCESS_MODE_INCREMENTAL]. Otherwise, this defaults to [constant "
+"PROCESS_MODE_QUALITY]."
+msgstr ""
+
+#: doc/classes/Sky.xml:55
+msgid ""
"Uses high quality importance sampling to process the radiance map. In "
"general, this results in much higher quality than [constant "
"PROCESS_MODE_REALTIME] but takes much longer to generate. This should not be "
@@ -46511,10 +47179,22 @@ msgid ""
"ggx_samples]."
msgstr ""
-#: doc/classes/Sky.xml:55
+#: doc/classes/Sky.xml:58
+msgid ""
+"Uses the same high quality importance sampling to process the radiance map "
+"as [constant PROCESS_MODE_QUALITY], but updates over several frames. The "
+"number of frames is determined by [member ProjectSettings.rendering/quality/"
+"reflections/roughness_layers]. Use this when you need highest quality "
+"radiance maps, but have a sky that updates slowly."
+msgstr ""
+
+#: doc/classes/Sky.xml:61
msgid ""
"Uses the fast filtering algorithm to process the radiance map. In general "
-"this results in lower quality, but substantially faster run times.\n"
+"this results in lower quality, but substantially faster run times. If you "
+"need better quality, but still need to update the sky every frame, consider "
+"turning on [member ProjectSettings.rendering/quality/reflections/"
+"fast_filter_high_quality].\n"
"[b]Note:[/b] The fast filtering algorithm is limited to 256x256 cubemaps, so "
"[member radiance_size] must be set to [constant RADIANCE_SIZE_256]."
msgstr ""
@@ -46851,9 +47531,7 @@ msgid ""
msgstr ""
#: doc/classes/SpringArm3D.xml:35
-msgid ""
-"Returns the proportion between the current arm length (after checking for "
-"collisions) and the [member spring_length]. Ranges from 0 to 1."
+msgid "Returns the spring arm's current length."
msgstr ""
#: doc/classes/SpringArm3D.xml:44
@@ -47549,7 +48227,7 @@ msgstr ""
msgid ""
"This is the built-in string class (and the one used by GDScript). It "
"supports Unicode and provides all necessary means for string handling. "
-"Strings are reference counted and use a copy-on-write approach, so passing "
+"Strings are reference-counted and use a copy-on-write approach, so passing "
"them around is cheap in resources."
msgstr ""
@@ -47704,26 +48382,32 @@ msgstr ""
#: doc/classes/String.xml:328
msgid ""
"Returns a copy of the string with escaped characters replaced by their "
-"meanings according to the C language standard."
+"meanings. Supported escape sequences are [code]\\'[/code], [code]\\\"[/"
+"code], [code]\\?[/code], [code]\\\\[/code], [code]\\a[/code], [code]\\b[/"
+"code], [code]\\f[/code], [code]\\n[/code], [code]\\r[/code], [code]\\t[/"
+"code], [code]\\v[/code].\n"
+"[b]Note:[/b] Unlike the GDScript parser, this method doesn't support the "
+"[code]\\uXXXX[/code] escape sequence."
msgstr ""
-#: doc/classes/String.xml:335
+#: doc/classes/String.xml:336
msgid ""
-"Changes the case of some letters. Replaces underscores with spaces, converts "
-"all letters to lowercase, then capitalizes first and every letter following "
-"the space character. For [code]capitalize camelCase mixed_with_underscores[/"
-"code], it will return [code]Capitalize Camelcase Mixed With Underscores[/"
+"Changes the case of some letters. Replaces underscores with spaces, adds "
+"spaces before in-word uppercase characters, converts all letters to "
+"lowercase, then capitalizes the first letter and every letter following a "
+"space character. For [code]capitalize camelCase mixed_with_underscores[/"
+"code], it will return [code]Capitalize Camel Case Mixed With Underscores[/"
"code]."
msgstr ""
-#: doc/classes/String.xml:344
+#: doc/classes/String.xml:345
msgid ""
"Performs a case-sensitive comparison to another string. Returns [code]-1[/"
"code] if less than, [code]+1[/code] if greater than, or [code]0[/code] if "
"equal."
msgstr ""
-#: doc/classes/String.xml:357
+#: doc/classes/String.xml:358
msgid ""
"Returns the number of occurrences of substring [code]what[/code] between "
"[code]from[/code] and [code]to[/code] positions. If [code]from[/code] and "
@@ -47731,7 +48415,7 @@ msgid ""
"code] equals 0 the remained substring will be used."
msgstr ""
-#: doc/classes/String.xml:370
+#: doc/classes/String.xml:371
msgid ""
"Returns the number of occurrences of substring [code]what[/code] (ignoring "
"case) between [code]from[/code] and [code]to[/code] positions. If "
@@ -47739,32 +48423,33 @@ msgid ""
"used. If only [code]to[/code] equals 0 the remained substring will be used."
msgstr ""
-#: doc/classes/String.xml:377
+#: doc/classes/String.xml:378
msgid ""
"Returns a copy of the string with indentation (leading tabs and spaces) "
"removed."
msgstr ""
-#: doc/classes/String.xml:384
+#: doc/classes/String.xml:385
msgid ""
"Returns [code]true[/code] if the length of the string equals [code]0[/code]."
msgstr ""
-#: doc/classes/String.xml:393
+#: doc/classes/String.xml:394
msgid "Returns [code]true[/code] if the string ends with the given string."
msgstr ""
-#: doc/classes/String.xml:404
+#: doc/classes/String.xml:405
msgid ""
"Erases [code]chars[/code] characters from the string starting from "
"[code]position[/code]."
msgstr ""
-#: doc/classes/String.xml:415
+#: doc/classes/String.xml:416
msgid ""
-"Finds the first occurrence of a substring. Returns the starting position of "
-"the substring or [code]-1[/code] if not found. Optionally, the initial "
-"search index can be passed.\n"
+"Returns the index of the [b]first[/b] case-sensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the end of the "
+"string.\n"
"[b]Note:[/b] If you just want to know whether a string contains a substring, "
"use the [code]in[/code] operator as follows:\n"
"[codeblock]\n"
@@ -47774,48 +48459,42 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:430
+#: doc/classes/String.xml:433
msgid ""
-"Finds the last occurrence of a substring. Returns the starting position of "
-"the substring or [code]-1[/code] if not found."
+"Returns the index of the [b]first[/b] case-insensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the end of the string."
msgstr ""
-#: doc/classes/String.xml:441
-msgid ""
-"Finds the first occurrence of a substring, ignoring case. Returns the "
-"starting position of the substring or [code]-1[/code] if not found. "
-"Optionally, the initial search index can be passed."
-msgstr ""
-
-#: doc/classes/String.xml:452
+#: doc/classes/String.xml:444
msgid ""
"Formats the string by replacing all occurrences of [code]placeholder[/code] "
"with [code]values[/code]."
msgstr ""
-#: doc/classes/String.xml:459
+#: doc/classes/String.xml:451
msgid "If the string is a valid file path, returns the base directory name."
msgstr ""
-#: doc/classes/String.xml:466
+#: doc/classes/String.xml:458
msgid ""
"If the string is a valid file path, returns the full file path without the "
"extension."
msgstr ""
-#: doc/classes/String.xml:473
+#: doc/classes/String.xml:465
msgid "If the string is a valid file path, returns the extension."
msgstr ""
-#: doc/classes/String.xml:480
+#: doc/classes/String.xml:472
msgid "If the string is a valid file path, returns the filename."
msgstr ""
-#: doc/classes/String.xml:487
+#: doc/classes/String.xml:479
msgid "Hashes the string and returns a 32-bit integer."
msgstr ""
-#: doc/classes/String.xml:494
+#: doc/classes/String.xml:486
msgid ""
"Converts a string containing a hexadecimal number into an integer. "
"Hexadecimal strings are expected to be prefixed with \"[code]0x[/code]\" "
@@ -47825,7 +48504,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:504
+#: doc/classes/String.xml:496
msgid ""
"Escapes (encodes) a string to URL friendly format. Also referred to as 'URL "
"encode'.\n"
@@ -47835,7 +48514,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:514
+#: doc/classes/String.xml:506
msgid ""
"Unescapes (decodes) a string in URL encoded format. Also referred to as 'URL "
"decode'.\n"
@@ -47845,7 +48524,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:526
+#: doc/classes/String.xml:518
msgid ""
"Converts [code]size[/code] represented as number of bytes to human-readable "
"format using internationalized set of data size units, namely: B, KiB, MiB, "
@@ -47858,48 +48537,48 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:542
+#: doc/classes/String.xml:534
msgid ""
"Returns a copy of the string with the substring [code]what[/code] inserted "
"at the given position."
msgstr ""
-#: doc/classes/String.xml:549
+#: doc/classes/String.xml:541
msgid ""
"If the string is a path to a file or directory, returns [code]true[/code] if "
"the path is absolute."
msgstr ""
-#: doc/classes/String.xml:556
+#: doc/classes/String.xml:548
msgid ""
"If the string is a path to a file or directory, returns [code]true[/code] if "
"the path is relative."
msgstr ""
-#: doc/classes/String.xml:565
+#: doc/classes/String.xml:557
msgid ""
"Returns [code]true[/code] if this string is a subsequence of the given "
"string."
msgstr ""
-#: doc/classes/String.xml:574
+#: doc/classes/String.xml:566
msgid ""
"Returns [code]true[/code] if this string is a subsequence of the given "
"string, without considering case."
msgstr ""
-#: doc/classes/String.xml:581
+#: doc/classes/String.xml:573
msgid ""
"Returns [code]true[/code] if this string is free from characters that aren't "
"allowed in file names, those being:\n"
"[code]: / \\ ? * \" | % < >[/code]"
msgstr ""
-#: doc/classes/String.xml:589
+#: doc/classes/String.xml:581
msgid "Returns [code]true[/code] if this string contains a valid float."
msgstr ""
-#: doc/classes/String.xml:598
+#: doc/classes/String.xml:590
msgid ""
"Returns [code]true[/code] if this string contains a valid hexadecimal "
"number. If [code]with_prefix[/code] is [code]true[/code], then a validity of "
@@ -47907,7 +48586,7 @@ msgid ""
"instance: [code]0xDEADC0DE[/code]."
msgstr ""
-#: doc/classes/String.xml:605
+#: doc/classes/String.xml:597
msgid ""
"Returns [code]true[/code] if this string contains a valid color in "
"hexadecimal HTML notation. Other HTML notations such as named colors or "
@@ -47915,22 +48594,22 @@ msgid ""
"return [code]false[/code]."
msgstr ""
-#: doc/classes/String.xml:612
+#: doc/classes/String.xml:604
msgid ""
"Returns [code]true[/code] if this string is a valid identifier. A valid "
"identifier may contain only letters, digits and underscores ([code]_[/code]) "
"and the first character may not be a digit."
msgstr ""
-#: doc/classes/String.xml:619
+#: doc/classes/String.xml:611
msgid "Returns [code]true[/code] if this string contains a valid integer."
msgstr ""
-#: doc/classes/String.xml:626
+#: doc/classes/String.xml:618
msgid "Returns [code]true[/code] if this string contains a valid IP address."
msgstr ""
-#: doc/classes/String.xml:635
+#: doc/classes/String.xml:627
msgid ""
"Return a [String] which is the concatenation of the [code]parts[/code]. The "
"separator between elements is the string providing this method.\n"
@@ -47940,121 +48619,125 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:646
+#: doc/classes/String.xml:638
msgid ""
"Returns a copy of the string with special characters escaped using the JSON "
"standard."
msgstr ""
-#: doc/classes/String.xml:655
+#: doc/classes/String.xml:647
msgid "Returns a number of characters from the left of the string."
msgstr ""
-#: doc/classes/String.xml:662
+#: doc/classes/String.xml:654
msgid "Returns the string's amount of characters."
msgstr ""
-#: doc/classes/String.xml:671
+#: doc/classes/String.xml:663
msgid "Returns a copy of the string with characters removed from the left."
msgstr ""
-#: doc/classes/String.xml:680
+#: doc/classes/String.xml:672
msgid ""
"Does a simple case-sensitive expression match, where [code]\"*\"[/code] "
"matches zero or more arbitrary characters and [code]\"?\"[/code] matches any "
"single character except a period ([code]\".\"[/code])."
msgstr ""
-#: doc/classes/String.xml:689
+#: doc/classes/String.xml:681
msgid ""
"Does a simple case-insensitive expression match, where [code]\"*\"[/code] "
"matches zero or more arbitrary characters and [code]\"?\"[/code] matches any "
"single character except a period ([code]\".\"[/code])."
msgstr ""
-#: doc/classes/String.xml:696
+#: doc/classes/String.xml:688
msgid "Returns the MD5 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:703
+#: doc/classes/String.xml:695
msgid "Returns the MD5 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:712
+#: doc/classes/String.xml:704
msgid ""
"Performs a case-insensitive comparison to another string. Returns [code]-1[/"
"code] if less than, [code]+1[/code] if greater than, or [code]0[/code] if "
"equal."
msgstr ""
-#: doc/classes/String.xml:721
+#: doc/classes/String.xml:713
msgid "Returns the character code at position [code]at[/code]."
msgstr ""
-#: doc/classes/String.xml:730
+#: doc/classes/String.xml:722
msgid ""
"Formats a number to have an exact number of [code]digits[/code] after the "
"decimal point."
msgstr ""
-#: doc/classes/String.xml:739
+#: doc/classes/String.xml:731
msgid ""
"Formats a number to have an exact number of [code]digits[/code] before the "
"decimal point."
msgstr ""
-#: doc/classes/String.xml:746
+#: doc/classes/String.xml:738
msgid "Decode a percent-encoded string. See [method percent_encode]."
msgstr ""
-#: doc/classes/String.xml:753
+#: doc/classes/String.xml:745
msgid ""
"Percent-encodes a string. Encodes parameters in a URL when sending a HTTP "
"GET request (and bodies of form-urlencoded POST requests)."
msgstr ""
-#: doc/classes/String.xml:762
+#: doc/classes/String.xml:754
msgid ""
"If the string is a path, this concatenates [code]file[/code] at the end of "
"the string as a subpath. E.g. [code]\"this/is\".plus_file(\"path\") == "
"\"this/is/path\"[/code]."
msgstr ""
-#: doc/classes/String.xml:771
+#: doc/classes/String.xml:763
msgid ""
"Returns original string repeated a number of times. The number of "
"repetitions is given by the argument."
msgstr ""
-#: doc/classes/String.xml:782
+#: doc/classes/String.xml:774
msgid ""
"Replaces occurrences of a case-sensitive substring with the given one inside "
"the string."
msgstr ""
-#: doc/classes/String.xml:793
+#: doc/classes/String.xml:785
msgid ""
"Replaces occurrences of a case-insensitive substring with the given one "
"inside the string."
msgstr ""
-#: doc/classes/String.xml:804
+#: doc/classes/String.xml:796
msgid ""
-"Performs a case-sensitive search for a substring, but starts from the end of "
-"the string instead of the beginning."
+"Returns the index of the [b]last[/b] case-sensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the beginning of the "
+"string."
msgstr ""
-#: doc/classes/String.xml:815
+#: doc/classes/String.xml:807
msgid ""
-"Performs a case-insensitive search for a substring, but starts from the end "
-"of the string instead of the beginning."
+"Returns the index of the [b]last[/b] case-insensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the beginning of the "
+"string."
msgstr ""
-#: doc/classes/String.xml:824
+#: doc/classes/String.xml:816
msgid "Returns the right side of the string from a given position."
msgstr ""
-#: doc/classes/String.xml:837
+#: doc/classes/String.xml:829
msgid ""
"Splits the string by a [code]delimiter[/code] string and returns an array of "
"the substrings, starting from right.\n"
@@ -48073,39 +48756,39 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:856
+#: doc/classes/String.xml:848
msgid "Returns a copy of the string with characters removed from the right."
msgstr ""
-#: doc/classes/String.xml:863
+#: doc/classes/String.xml:855
msgid "Returns the SHA-1 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:870
+#: doc/classes/String.xml:862
msgid "Returns the SHA-1 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:877
+#: doc/classes/String.xml:869
msgid "Returns the SHA-256 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:884
+#: doc/classes/String.xml:876
msgid "Returns the SHA-256 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:893
+#: doc/classes/String.xml:885
msgid ""
"Returns the similarity index of the text compared to this string. 1 means "
"totally similar and 0 means totally dissimilar."
msgstr ""
-#: doc/classes/String.xml:906
+#: doc/classes/String.xml:898
msgid ""
"Splits the string by a [code]delimiter[/code] string and returns an array of "
-"the substrings.\n"
+"the substrings. The [code]delimiter[/code] can be of any length.\n"
"If [code]maxsplit[/code] is specified, it defines the number of splits to do "
-"from the left up to [code]maxsplit[/code]. The default value of 0 means that "
-"all items are split.\n"
+"from the left up to [code]maxsplit[/code]. The default value of [code]0[/"
+"code] means that all items are split.\n"
"Example:\n"
"[codeblock]\n"
"var some_string = \"One,Two,Three,Four\"\n"
@@ -48113,10 +48796,12 @@ msgid ""
"print(some_array.size()) # Prints 2\n"
"print(some_array[0]) # Prints \"One\"\n"
"print(some_array[1]) # Prints \"Two,Three,Four\"\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"If you need to split strings with more complex rules, use the [RegEx] class "
+"instead."
msgstr ""
-#: doc/classes/String.xml:926
+#: doc/classes/String.xml:919
msgid ""
"Splits the string in floats by using a delimiter string and returns an array "
"of the substrings.\n"
@@ -48124,7 +48809,7 @@ msgid ""
"split by [code]\",\"[/code]."
msgstr ""
-#: doc/classes/String.xml:938
+#: doc/classes/String.xml:931
msgid ""
"Returns a copy of the string stripped of any non-printable character "
"(including tabulations, spaces and line breaks) at the beginning and the "
@@ -48132,7 +48817,7 @@ msgid ""
"right edges respectively."
msgstr ""
-#: doc/classes/String.xml:945
+#: doc/classes/String.xml:938
msgid ""
"Returns a copy of the string stripped of any escape character. These include "
"all non-printable control characters of the first page of the ASCII table (< "
@@ -48140,14 +48825,14 @@ msgid ""
"code] and [code]\\r[/code]) characters, but not spaces."
msgstr ""
-#: doc/classes/String.xml:956
+#: doc/classes/String.xml:949
msgid ""
"Returns part of the string from the position [code]from[/code] with length "
"[code]len[/code]. Argument [code]len[/code] is optional and using [code]-1[/"
"code] will return remaining characters from given position."
msgstr ""
-#: doc/classes/String.xml:963
+#: doc/classes/String.xml:956
msgid ""
"Converts the String (which is a character array) to [PackedByteArray] (which "
"is an array of bytes). The conversion is faster compared to [method "
@@ -48155,25 +48840,25 @@ msgid ""
"ASCII characters."
msgstr ""
-#: doc/classes/String.xml:970
+#: doc/classes/String.xml:963
msgid ""
"Converts a string containing a decimal number into a [code]float[/code]."
msgstr ""
-#: doc/classes/String.xml:977
+#: doc/classes/String.xml:970
msgid ""
"Converts a string containing an integer number into an [code]int[/code]."
msgstr ""
-#: doc/classes/String.xml:984
+#: doc/classes/String.xml:977
msgid "Returns the string converted to lowercase."
msgstr ""
-#: doc/classes/String.xml:991
+#: doc/classes/String.xml:984
msgid "Returns the string converted to uppercase."
msgstr ""
-#: doc/classes/String.xml:998
+#: doc/classes/String.xml:991
msgid ""
"Converts the String (which is an array of characters) to [PackedByteArray] "
"(which is an array of bytes). The conversion is a bit slower than [method "
@@ -48181,25 +48866,25 @@ msgid ""
"this function over [method to_ascii]."
msgstr ""
-#: doc/classes/String.xml:1007
+#: doc/classes/String.xml:1000
msgid ""
"Removes a given string from the start if it starts with it or leaves the "
"string unchanged."
msgstr ""
-#: doc/classes/String.xml:1016
+#: doc/classes/String.xml:1009
msgid ""
"Removes a given string from the end if it ends with it or leaves the string "
"unchanged."
msgstr ""
-#: doc/classes/String.xml:1023
+#: doc/classes/String.xml:1016
msgid ""
"Returns a copy of the string with special characters escaped using the XML "
"standard."
msgstr ""
-#: doc/classes/String.xml:1030
+#: doc/classes/String.xml:1023
msgid ""
"Returns a copy of the string with escaped characters replaced by their "
"meanings according to the XML standard."
@@ -49431,50 +50116,42 @@ msgid ""
"undo/redo."
msgstr ""
-#: doc/classes/TextEdit.xml:24
-msgid "Adds color region (given the delimiters) and its colors."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:35
-msgid "Adds a [code]keyword[/code] and its [Color]."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:44
+#: doc/classes/TextEdit.xml:18
msgid ""
"Returns if the given line is foldable, that is, it has indented lines right "
"below it."
msgstr ""
-#: doc/classes/TextEdit.xml:57
+#: doc/classes/TextEdit.xml:25
msgid ""
-"Clears all custom syntax coloring information previously added with [method "
-"add_color_region] or [method add_keyword_color]."
+"Centers the viewport on the line the editing cursor is at. This also resets "
+"the [member scroll_horizontal] value to [code]0[/code]."
msgstr ""
-#: doc/classes/TextEdit.xml:64
+#: doc/classes/TextEdit.xml:32
msgid "Clears the undo history."
msgstr ""
-#: doc/classes/TextEdit.xml:71
+#: doc/classes/TextEdit.xml:39
msgid "Copy's the current text selection."
msgstr ""
-#: doc/classes/TextEdit.xml:78
+#: doc/classes/TextEdit.xml:46
msgid "Returns the column the editing cursor is at."
msgstr ""
-#: doc/classes/TextEdit.xml:85
+#: doc/classes/TextEdit.xml:53
msgid "Returns the line the editing cursor is at."
msgstr ""
-#: doc/classes/TextEdit.xml:96
+#: doc/classes/TextEdit.xml:64
msgid ""
"Moves the cursor at the specified [code]column[/code] index.\n"
"If [code]adjust_viewport[/code] is set to [code]true[/code], the viewport "
"will center at the cursor position after the move occurs."
msgstr ""
-#: doc/classes/TextEdit.xml:112
+#: doc/classes/TextEdit.xml:80
msgid ""
"Moves the cursor at the specified [code]line[/code] index.\n"
"If [code]adjust_viewport[/code] is set to [code]true[/code], the viewport "
@@ -49483,111 +50160,101 @@ msgid ""
"[code]line[/code] can be hidden using [method set_line_as_hidden]."
msgstr ""
-#: doc/classes/TextEdit.xml:121
+#: doc/classes/TextEdit.xml:89
msgid "Cut's the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:128
+#: doc/classes/TextEdit.xml:96
msgid "Deselects the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:135
+#: doc/classes/TextEdit.xml:103
msgid "Folds all lines that are possible to be folded (see [method can_fold])."
msgstr ""
-#: doc/classes/TextEdit.xml:144
+#: doc/classes/TextEdit.xml:112
msgid "Folds the given line, if possible (see [method can_fold])."
msgstr ""
-#: doc/classes/TextEdit.xml:151
+#: doc/classes/TextEdit.xml:119
msgid "Returns an array containing the line number of each breakpoint."
msgstr ""
-#: doc/classes/TextEdit.xml:160
-msgid "Returns the [Color] of the specified [code]keyword[/code]."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:169
+#: doc/classes/TextEdit.xml:128
msgid "Returns the text of a specific line."
msgstr ""
-#: doc/classes/TextEdit.xml:176
+#: doc/classes/TextEdit.xml:135
msgid "Returns the amount of total lines in the text."
msgstr ""
-#: doc/classes/TextEdit.xml:183
+#: doc/classes/TextEdit.xml:142
msgid ""
"Returns the [PopupMenu] of this [TextEdit]. By default, this menu is "
"displayed when right-clicking on the [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:190
+#: doc/classes/TextEdit.xml:149
msgid "Returns the selection begin column."
msgstr ""
-#: doc/classes/TextEdit.xml:197
+#: doc/classes/TextEdit.xml:156
msgid "Returns the selection begin line."
msgstr ""
-#: doc/classes/TextEdit.xml:204
+#: doc/classes/TextEdit.xml:163
msgid "Returns the text inside the selection."
msgstr ""
-#: doc/classes/TextEdit.xml:211
+#: doc/classes/TextEdit.xml:170
msgid "Returns the selection end column."
msgstr ""
-#: doc/classes/TextEdit.xml:218
+#: doc/classes/TextEdit.xml:177
msgid "Returns the selection end line."
msgstr ""
-#: doc/classes/TextEdit.xml:225
+#: doc/classes/TextEdit.xml:184
msgid "Returns a [String] text with the word under the mouse cursor location."
msgstr ""
-#: doc/classes/TextEdit.xml:234
-msgid ""
-"Returns whether the specified [code]keyword[/code] has a color set to it or "
-"not."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:243
+#: doc/classes/TextEdit.xml:193
msgid "Insert the specified text at the cursor position."
msgstr ""
-#: doc/classes/TextEdit.xml:252
+#: doc/classes/TextEdit.xml:202
msgid "Returns whether the line at the specified index is folded or not."
msgstr ""
-#: doc/classes/TextEdit.xml:261
+#: doc/classes/TextEdit.xml:211
msgid "Returns whether the line at the specified index is hidden or not."
msgstr ""
-#: doc/classes/TextEdit.xml:268
+#: doc/classes/TextEdit.xml:218
msgid "Returns [code]true[/code] if the selection is active."
msgstr ""
-#: doc/classes/TextEdit.xml:277
+#: doc/classes/TextEdit.xml:227
msgid ""
"Triggers a right-click menu action by the specified index. See [enum "
"MenuItems] for a list of available indexes."
msgstr ""
-#: doc/classes/TextEdit.xml:284
+#: doc/classes/TextEdit.xml:234
msgid "Paste the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:291
+#: doc/classes/TextEdit.xml:241
msgid "Perform redo operation."
msgstr ""
-#: doc/classes/TextEdit.xml:298
+#: doc/classes/TextEdit.xml:248
msgid ""
"Removes all the breakpoints. This will not fire the [signal "
"breakpoint_toggled] signal."
msgstr ""
-#: doc/classes/TextEdit.xml:313
+#: doc/classes/TextEdit.xml:263
msgid ""
"Perform a search inside the text. Search flags can be specified in the [enum "
"SearchFlags] enum.\n"
@@ -49603,244 +50270,265 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/TextEdit.xml:336
-msgid "Perform selection, from line/column to line/column."
+#: doc/classes/TextEdit.xml:286
+msgid ""
+"Perform selection, from line/column to line/column.\n"
+"If [member selecting_enabled] is [code]false[/code], no selection will occur."
msgstr ""
-#: doc/classes/TextEdit.xml:343
-msgid "Select all the text."
+#: doc/classes/TextEdit.xml:294
+msgid ""
+"Select all the text.\n"
+"If [member selecting_enabled] is [code]false[/code], no selection will occur."
msgstr ""
-#: doc/classes/TextEdit.xml:354
+#: doc/classes/TextEdit.xml:306
msgid "Sets the text for a specific line."
msgstr ""
-#: doc/classes/TextEdit.xml:365
+#: doc/classes/TextEdit.xml:317
msgid "If [code]true[/code], hides the line of the specified index."
msgstr ""
-#: doc/classes/TextEdit.xml:374
+#: doc/classes/TextEdit.xml:326
msgid "Toggle the folding of the code block at the given line."
msgstr ""
-#: doc/classes/TextEdit.xml:381
+#: doc/classes/TextEdit.xml:333
msgid "Perform undo operation."
msgstr ""
-#: doc/classes/TextEdit.xml:390
+#: doc/classes/TextEdit.xml:342
msgid "Unfolds the given line, if folded."
msgstr ""
-#: doc/classes/TextEdit.xml:397
+#: doc/classes/TextEdit.xml:349
msgid ""
"Unhide all lines that were previously set to hidden by [method "
"set_line_as_hidden]."
msgstr ""
-#: doc/classes/TextEdit.xml:403
+#: doc/classes/TextEdit.xml:355
msgid "If [code]true[/code], the breakpoint gutter is visible."
msgstr ""
-#: doc/classes/TextEdit.xml:412
+#: doc/classes/TextEdit.xml:364
msgid ""
"If [code]true[/code], the caret displays as a rectangle.\n"
"If [code]false[/code], the caret displays as a bar."
msgstr ""
-#: doc/classes/TextEdit.xml:416
+#: doc/classes/TextEdit.xml:368
msgid ""
"If [code]true[/code], a right-click moves the cursor at the mouse position "
"before displaying the context menu.\n"
"If [code]false[/code], the context menu disregards mouse location."
msgstr ""
-#: doc/classes/TextEdit.xml:420
+#: doc/classes/TextEdit.xml:372
msgid "If [code]true[/code], a right-click displays the context menu."
msgstr ""
-#: doc/classes/TextEdit.xml:423
+#: doc/classes/TextEdit.xml:375
msgid ""
"If [code]true[/code], the \"space\" character will have a visible "
"representation."
msgstr ""
-#: doc/classes/TextEdit.xml:426
+#: doc/classes/TextEdit.xml:378
msgid ""
"If [code]true[/code], the \"tab\" character will have a visible "
"representation."
msgstr ""
-#: doc/classes/TextEdit.xml:430
+#: doc/classes/TextEdit.xml:382
msgid ""
"If [code]true[/code], the fold gutter is visible. This enables folding "
"groups of indented lines."
msgstr ""
-#: doc/classes/TextEdit.xml:433
+#: doc/classes/TextEdit.xml:385
msgid ""
"If [code]true[/code], all lines that have been set to hidden by [method "
"set_line_as_hidden], will not be visible."
msgstr ""
-#: doc/classes/TextEdit.xml:436
+#: doc/classes/TextEdit.xml:388
msgid ""
"If [code]true[/code], all occurrences of the selected text will be "
"highlighted."
msgstr ""
-#: doc/classes/TextEdit.xml:439
+#: doc/classes/TextEdit.xml:391
msgid "If [code]true[/code], the line containing the cursor is highlighted."
msgstr ""
-#: doc/classes/TextEdit.xml:447
+#: doc/classes/TextEdit.xml:394
+msgid ""
+"If [code]true[/code], a minimap is shown, providing an outline of your "
+"source code."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:397
+msgid "The width, in pixels, of the minimap."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:401
msgid ""
"If [code]true[/code], custom [code]font_color_selected[/code] will be used "
"for selected text."
msgstr ""
-#: doc/classes/TextEdit.xml:450
+#: doc/classes/TextEdit.xml:404
msgid ""
"If [code]true[/code], read-only mode is enabled. Existing text cannot be "
"modified and new text cannot be added."
msgstr ""
-#: doc/classes/TextEdit.xml:463
+#: doc/classes/TextEdit.xml:413
msgid ""
-"If [code]true[/code], line numbers are displayed to the left of the text."
+"If [code]true[/code], text can be selected.\n"
+"If [code]false[/code], text can not be selected by the user or by the "
+"[method select] or [method select_all] methods."
msgstr ""
-#: doc/classes/TextEdit.xml:466
+#: doc/classes/TextEdit.xml:417
msgid ""
-"If [code]true[/code], sets the [code]step[/code] of the scrollbars to "
-"[code]0.25[/code] which results in smoother scrolling."
+"If [code]true[/code], shortcut keys for context menu items are enabled, even "
+"if the context menu is disabled."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:420
+msgid ""
+"If [code]true[/code], line numbers are displayed to the left of the text."
msgstr ""
-#: doc/classes/TextEdit.xml:469
+#: doc/classes/TextEdit.xml:423
msgid ""
-"If [code]true[/code], any custom color properties that have been set for "
-"this [TextEdit] will be visible."
+"If [code]true[/code], sets the [code]step[/code] of the scrollbars to "
+"[code]0.25[/code] which results in smoother scrolling."
msgstr ""
-#: doc/classes/TextEdit.xml:472
+#: doc/classes/TextEdit.xml:428
msgid "String value of the [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:475
+#: doc/classes/TextEdit.xml:431
msgid "Vertical scroll sensitivity."
msgstr ""
-#: doc/classes/TextEdit.xml:478
+#: doc/classes/TextEdit.xml:437
msgid ""
"If [code]true[/code], enables text wrapping when it goes beyond the edge of "
"what is visible."
msgstr ""
-#: doc/classes/TextEdit.xml:486
+#: doc/classes/TextEdit.xml:445
msgid "Emitted when a breakpoint is placed via the breakpoint gutter."
msgstr ""
-#: doc/classes/TextEdit.xml:491
+#: doc/classes/TextEdit.xml:450
msgid "Emitted when the cursor changes."
msgstr ""
-#: doc/classes/TextEdit.xml:500
+#: doc/classes/TextEdit.xml:459
msgid "Emitted when the info icon is clicked."
msgstr ""
-#: doc/classes/TextEdit.xml:531
+#: doc/classes/TextEdit.xml:496
msgid "Match case when searching."
msgstr ""
-#: doc/classes/TextEdit.xml:534
+#: doc/classes/TextEdit.xml:499
msgid "Match whole words when searching."
msgstr ""
-#: doc/classes/TextEdit.xml:537
+#: doc/classes/TextEdit.xml:502
msgid "Search from end to beginning."
msgstr ""
-#: doc/classes/TextEdit.xml:546
+#: doc/classes/TextEdit.xml:511
msgid ""
"Pastes the clipboard text over the selected text (or at the cursor's "
"position)."
msgstr ""
-#: doc/classes/TextEdit.xml:549
+#: doc/classes/TextEdit.xml:514
msgid "Erases the whole [TextEdit] text."
msgstr ""
-#: doc/classes/TextEdit.xml:552
+#: doc/classes/TextEdit.xml:517
msgid "Selects the whole [TextEdit] text."
msgstr ""
-#: doc/classes/TextEdit.xml:558
+#: doc/classes/TextEdit.xml:523
msgid "Redoes the previous action."
msgstr ""
-#: doc/classes/TextEdit.xml:566
+#: doc/classes/TextEdit.xml:531
msgid ""
"Sets the background [Color] of this [TextEdit]. [member syntax_highlighting] "
"has to be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:569
+#: doc/classes/TextEdit.xml:534
msgid ""
"Sets the [Color] of the bookmark marker. [member syntax_highlighting] has to "
"be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:574 doc/classes/TextEdit.xml:601
+#: doc/classes/TextEdit.xml:539 doc/classes/TextEdit.xml:566
msgid ""
"Sets the [Color] of the breakpoints. [member breakpoint_gutter] has to be "
"enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:612
+#: doc/classes/TextEdit.xml:577
msgid "Sets the default [Font]."
msgstr ""
-#: doc/classes/TextEdit.xml:615
+#: doc/classes/TextEdit.xml:580
msgid "Sets the font [Color]."
msgstr ""
-#: doc/classes/TextEdit.xml:620
+#: doc/classes/TextEdit.xml:585
msgid ""
"Sets the [Color] of the selected text. [member override_selected_font_color] "
"has to be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:625
+#: doc/classes/TextEdit.xml:588
msgid ""
"Sets the [Color] of the line numbers. [member show_line_numbers] has to be "
"enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:628
+#: doc/classes/TextEdit.xml:591
msgid "Sets the spacing between the lines."
msgstr ""
-#: doc/classes/TextEdit.xml:631
+#: doc/classes/TextEdit.xml:594
msgid "Sets the [Color] of marked text."
msgstr ""
-#: doc/classes/TextEdit.xml:636
+#: doc/classes/TextEdit.xml:597
msgid "Sets the [StyleBox] of this [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:641
+#: doc/classes/TextEdit.xml:600
msgid ""
"Sets the [StyleBox] of this [TextEdit] when [member readonly] is enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:646
+#: doc/classes/TextEdit.xml:605
msgid "Sets the highlight [Color] of text selections."
msgstr ""
-#: doc/classes/TextEdit.xml:653
+#: doc/classes/TextEdit.xml:610
msgid "Sets a custom [Texture2D] for tab text characters."
msgstr ""
-#: doc/classes/TextEdit.xml:656
+#: doc/classes/TextEdit.xml:613
msgid ""
"Sets the highlight [Color] of multiple occurrences. [member "
"highlight_all_occurrences] has to be enabled."
@@ -49918,80 +50606,80 @@ msgid ""
"the texture will not scale with the node."
msgstr ""
-#: doc/classes/TextureButton.xml:19
+#: doc/classes/TextureButton.xml:25
msgid ""
"Controls the texture's behavior when you resize the node's bounding "
"rectangle, [b]only if[/b] [member expand] is [code]true[/code]. Set it to "
"one of the [enum StretchMode] constants. See the constants to learn more."
msgstr ""
-#: doc/classes/TextureButton.xml:22
+#: doc/classes/TextureButton.xml:28
msgid ""
"Pure black and white [BitMap] image to use for click detection. On the mask, "
"white pixels represent the button's clickable area. Use it to create buttons "
"with curved shapes."
msgstr ""
-#: doc/classes/TextureButton.xml:25
+#: doc/classes/TextureButton.xml:31
msgid ""
"Texture to display when the node is disabled. See [member BaseButton."
"disabled]."
msgstr ""
-#: doc/classes/TextureButton.xml:28
+#: doc/classes/TextureButton.xml:34
msgid "Texture to display when the node has mouse or keyboard focus."
msgstr ""
-#: doc/classes/TextureButton.xml:31
+#: doc/classes/TextureButton.xml:37
msgid "Texture to display when the mouse hovers the node."
msgstr ""
-#: doc/classes/TextureButton.xml:34
+#: doc/classes/TextureButton.xml:40
msgid ""
"Texture to display by default, when the node is [b]not[/b] in the disabled, "
"focused, hover or pressed state."
msgstr ""
-#: doc/classes/TextureButton.xml:37
+#: doc/classes/TextureButton.xml:43
msgid ""
"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 "
"[member BaseButton.shortcut] key."
msgstr ""
-#: doc/classes/TextureButton.xml:42 doc/classes/TextureRect.xml:36
+#: doc/classes/TextureButton.xml:48 doc/classes/TextureRect.xml:36
msgid "Scale to fit the node's bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:45 doc/classes/TextureRect.xml:39
+#: doc/classes/TextureButton.xml:51 doc/classes/TextureRect.xml:39
msgid "Tile inside the node's bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:48 doc/classes/TextureRect.xml:42
+#: doc/classes/TextureButton.xml:54 doc/classes/TextureRect.xml:42
msgid ""
"The texture keeps its original size and stays in the bounding rectangle's "
"top-left corner."
msgstr ""
-#: doc/classes/TextureButton.xml:51 doc/classes/TextureRect.xml:45
+#: doc/classes/TextureButton.xml:57 doc/classes/TextureRect.xml:45
msgid ""
"The texture keeps its original size and stays centered in the node's "
"bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:54 doc/classes/TextureRect.xml:48
+#: doc/classes/TextureButton.xml:60 doc/classes/TextureRect.xml:48
msgid ""
"Scale the texture to fit the node's bounding rectangle, but maintain the "
"texture's aspect ratio."
msgstr ""
-#: doc/classes/TextureButton.xml:57
+#: doc/classes/TextureButton.xml:63
msgid ""
"Scale the texture to fit the node's bounding rectangle, center it, and "
"maintain its aspect ratio."
msgstr ""
-#: doc/classes/TextureButton.xml:60 doc/classes/TextureRect.xml:54
+#: doc/classes/TextureButton.xml:66 doc/classes/TextureRect.xml:54
msgid ""
"Scale the texture so that the shorter side fits the bounding rectangle. The "
"other side clips to the node's limits."
@@ -50441,19 +51129,25 @@ msgid ""
"advised if working with shared objects."
msgstr ""
-#: doc/classes/Thread.xml:17
+#: doc/classes/Thread.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/threads/thread_safe_apis."
+"html"
+msgstr ""
+
+#: doc/classes/Thread.xml:18
msgid ""
"Returns the current [Thread]'s ID, uniquely identifying it among all threads."
msgstr ""
-#: doc/classes/Thread.xml:24
+#: doc/classes/Thread.xml:25
msgid ""
"Returns [code]true[/code] if this [Thread] is currently active. An active "
"[Thread] cannot start work on a new method but can be joined with [method "
"wait_to_finish]."
msgstr ""
-#: doc/classes/Thread.xml:39
+#: doc/classes/Thread.xml:40
msgid ""
"Starts a new [Thread] that runs [code]method[/code] on object "
"[code]instance[/code] with [code]userdata[/code] passed as an argument. Even "
@@ -50463,21 +51157,21 @@ msgid ""
"Returns [constant OK] on success, or [constant ERR_CANT_CREATE] on failure."
msgstr ""
-#: doc/classes/Thread.xml:47
+#: doc/classes/Thread.xml:48
msgid ""
"Joins the [Thread] and waits for it to finish. Returns what the method "
"called returned."
msgstr ""
-#: doc/classes/Thread.xml:53
+#: doc/classes/Thread.xml:54
msgid "A thread running with lower priority than normally."
msgstr ""
-#: doc/classes/Thread.xml:56
+#: doc/classes/Thread.xml:57
msgid "A thread with a standard priority."
msgstr ""
-#: doc/classes/Thread.xml:59
+#: doc/classes/Thread.xml:60
msgid "A thread running with higher priority than normally."
msgstr ""
@@ -51012,50 +51706,61 @@ msgid "Returns the [Transform2D] of a tile's shape."
msgstr ""
#: doc/classes/TileSet.xml:481
-msgid "Returns an array of the tile's shapes."
+msgid ""
+"Returns an array of dictionaries describing the tile's shapes.\n"
+"[b]Dictionary structure in the array returned by this method:[/b]\n"
+"[codeblock]\n"
+"{\n"
+" \"autotile_coord\": Vector2,\n"
+" \"one_way\": bool,\n"
+" \"one_way_margin\": int,\n"
+" \"shape\": CollisionShape2D,\n"
+" \"shape_transform\": Transform2D,\n"
+"}\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/TileSet.xml:490
+#: doc/classes/TileSet.xml:500
msgid "Returns the tile's texture."
msgstr ""
-#: doc/classes/TileSet.xml:499
+#: doc/classes/TileSet.xml:509
msgid "Returns the texture offset of the tile."
msgstr ""
-#: doc/classes/TileSet.xml:508
+#: doc/classes/TileSet.xml:518
msgid "Returns the tile's [enum TileMode]."
msgstr ""
-#: doc/classes/TileSet.xml:517
+#: doc/classes/TileSet.xml:527
msgid "Returns the tile's Z index (drawing layer)."
msgstr ""
-#: doc/classes/TileSet.xml:528
+#: doc/classes/TileSet.xml:538
msgid "Sets a light occluder for the tile."
msgstr ""
-#: doc/classes/TileSet.xml:539
+#: doc/classes/TileSet.xml:549
msgid "Sets the tile's material."
msgstr ""
-#: doc/classes/TileSet.xml:550
+#: doc/classes/TileSet.xml:560
msgid "Sets the tile's modulation color."
msgstr ""
-#: doc/classes/TileSet.xml:561
+#: doc/classes/TileSet.xml:571
msgid "Sets the tile's name."
msgstr ""
-#: doc/classes/TileSet.xml:572
+#: doc/classes/TileSet.xml:582
msgid "Sets the tile's navigation polygon."
msgstr ""
-#: doc/classes/TileSet.xml:583
+#: doc/classes/TileSet.xml:593
msgid "Sets an offset for the tile's navigation polygon."
msgstr ""
-#: doc/classes/TileSet.xml:594
+#: doc/classes/TileSet.xml:604
msgid ""
"Sets the tile's normal map texture.\n"
"[b]Note:[/b] Godot expects the normal map to use X+, Y-, and Z+ coordinates. "
@@ -51064,48 +51769,48 @@ msgid ""
"a comparison of normal map coordinates expected by popular engines."
msgstr ""
-#: doc/classes/TileSet.xml:606
+#: doc/classes/TileSet.xml:616
msgid "Sets an offset for the tile's light occluder."
msgstr ""
-#: doc/classes/TileSet.xml:617
+#: doc/classes/TileSet.xml:627
msgid ""
"Sets the tile's sub-region in the texture. This is common in texture atlases."
msgstr ""
-#: doc/classes/TileSet.xml:630
+#: doc/classes/TileSet.xml:640
msgid "Sets a shape for the tile, enabling collision."
msgstr ""
-#: doc/classes/TileSet.xml:643
+#: doc/classes/TileSet.xml:653
msgid "Sets the offset of a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:656
+#: doc/classes/TileSet.xml:666
msgid "Enables one-way collision on a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:681
+#: doc/classes/TileSet.xml:691
msgid "Sets a [Transform2D] on a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:692
+#: doc/classes/TileSet.xml:702
msgid "Sets an array of shapes for the tile, enabling collision."
msgstr ""
-#: doc/classes/TileSet.xml:703
+#: doc/classes/TileSet.xml:713
msgid "Sets the tile's texture."
msgstr ""
-#: doc/classes/TileSet.xml:714
+#: doc/classes/TileSet.xml:724
msgid "Sets the tile's texture offset."
msgstr ""
-#: doc/classes/TileSet.xml:725
+#: doc/classes/TileSet.xml:735
msgid "Sets the tile's [enum TileMode]."
msgstr ""
-#: doc/classes/TileSet.xml:736
+#: doc/classes/TileSet.xml:746
msgid "Sets the tile's drawing index."
msgstr ""
@@ -51116,14 +51821,16 @@ msgstr ""
#: doc/classes/Timer.xml:7
msgid ""
"Counts down a specified interval and emits a signal on reaching 0. Can be "
-"set to repeat or \"one-shot\" mode."
+"set to repeat or \"one-shot\" mode.\n"
+"[b]Note:[/b] To create an one-shot timer without instantiating a node, use "
+"[method SceneTree.create_timer]."
msgstr ""
-#: doc/classes/Timer.xml:16
+#: doc/classes/Timer.xml:17
msgid "Returns [code]true[/code] if the timer is stopped."
msgstr ""
-#: doc/classes/Timer.xml:25
+#: doc/classes/Timer.xml:26
msgid ""
"Starts the timer. Sets [code]wait_time[/code] to [code]time_sec[/code] if "
"[code]time_sec > 0[/code]. This also resets the remaining time to "
@@ -51131,11 +51838,11 @@ msgid ""
"[b]Note:[/b] this method will not resume a paused timer. See [member paused]."
msgstr ""
-#: doc/classes/Timer.xml:33
+#: doc/classes/Timer.xml:34
msgid "Stops the timer."
msgstr ""
-#: doc/classes/Timer.xml:39
+#: doc/classes/Timer.xml:40
msgid ""
"If [code]true[/code], the timer will automatically start when entering the "
"scene tree.\n"
@@ -51143,40 +51850,40 @@ msgid ""
"the timer enters the scene tree and starts."
msgstr ""
-#: doc/classes/Timer.xml:43
+#: doc/classes/Timer.xml:44
msgid ""
"If [code]true[/code], the timer will stop when reaching 0. If [code]false[/"
"code], it will restart."
msgstr ""
-#: doc/classes/Timer.xml:46
+#: doc/classes/Timer.xml:47
msgid ""
"If [code]true[/code], the timer is paused and will not process until it is "
"unpaused again, even if [method start] is called."
msgstr ""
-#: doc/classes/Timer.xml:49
+#: doc/classes/Timer.xml:50
msgid "Processing mode. See [enum TimerProcessMode]."
msgstr ""
-#: doc/classes/Timer.xml:52
+#: doc/classes/Timer.xml:53
msgid ""
"The timer's remaining time in seconds. Returns 0 if the timer is inactive.\n"
"[b]Note:[/b] You cannot set this value. To change the timer's remaining "
"time, use [method start]."
msgstr ""
-#: doc/classes/Timer.xml:56
+#: doc/classes/Timer.xml:57
msgid "Wait time in seconds."
msgstr ""
-#: doc/classes/Timer.xml:68
+#: doc/classes/Timer.xml:69
msgid ""
"Update the timer during the physics step at each frame (fixed framerate "
"processing)."
msgstr ""
-#: doc/classes/Timer.xml:71
+#: doc/classes/Timer.xml:72
msgid "Update the timer during the idle time at each frame."
msgstr ""
@@ -51255,60 +51962,66 @@ msgstr ""
#: doc/classes/Transform.xml:7
msgid ""
-"Represents one or many transformations in 3D space such as translation, "
-"rotation, or scaling. It consists of a [member basis] and an [member "
-"origin]. It is similar to a 3×4 matrix."
+"3×4 matrix (3 rows, 4 columns) used for 3D linear transformations. It can "
+"represent transformations such as translation, rotation, or scaling. It "
+"consists of a [member basis] (first 3 columns) and a [Vector3] for the "
+"[member origin] (last column).\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
msgstr ""
-#: doc/classes/Transform.xml:26
+#: doc/classes/Transform.xml:28
msgid ""
-"Constructs the Transform from four [Vector3]. Each axis corresponds to local "
-"basis vectors (some of which may be scaled)."
+"Constructs a Transform from four [Vector3] values (matrix columns). Each "
+"axis corresponds to local basis vectors (some of which may be scaled)."
msgstr ""
-#: doc/classes/Transform.xml:37
-msgid "Constructs the Transform from a [Basis] and [Vector3]."
+#: doc/classes/Transform.xml:39
+msgid "Constructs a Transform from a [Basis] and [Vector3]."
msgstr ""
-#: doc/classes/Transform.xml:46
-msgid "Constructs the Transform from a [Transform2D]."
+#: doc/classes/Transform.xml:48
+msgid "Constructs a Transform from a [Transform2D]."
msgstr ""
-#: doc/classes/Transform.xml:55
+#: doc/classes/Transform.xml:57
msgid ""
-"Constructs the Transform from a [Quat]. The origin will be Vector3(0, 0, 0)."
+"Constructs a Transform from a [Quat]. The origin will be [code]Vector3(0, 0, "
+"0)[/code]."
msgstr ""
-#: doc/classes/Transform.xml:64
+#: doc/classes/Transform.xml:66
msgid ""
"Constructs the Transform from a [Basis]. The origin will be Vector3(0, 0, 0)."
msgstr ""
-#: doc/classes/Transform.xml:71
+#: doc/classes/Transform.xml:73 doc/classes/Transform2D.xml:51
msgid ""
"Returns the inverse of the transform, under the assumption that the "
"transformation is composed of rotation, scaling and translation."
msgstr ""
-#: doc/classes/Transform.xml:82
-msgid "Interpolates the transform to other Transform by weight amount (0-1)."
+#: doc/classes/Transform.xml:84
+msgid ""
+"Interpolates the transform to other Transform by weight amount (on the range "
+"of 0.0 to 1.0)."
msgstr ""
-#: doc/classes/Transform.xml:89 doc/classes/Transform2D.xml:106
+#: doc/classes/Transform.xml:91
msgid ""
"Returns the inverse of the transform, under the assumption that the "
"transformation is composed of rotation and translation (no scaling, use "
"affine_inverse for transforms with scaling)."
msgstr ""
-#: doc/classes/Transform.xml:98 doc/classes/Transform2D.xml:115
+#: doc/classes/Transform.xml:100 doc/classes/Transform2D.xml:119
msgid ""
"Returns [code]true[/code] if this transform and [code]transform[/code] are "
"approximately equal, by calling [code]is_equal_approx[/code] on each "
"component."
msgstr ""
-#: doc/classes/Transform.xml:109
+#: doc/classes/Transform.xml:111
msgid ""
"Returns a copy of the transform rotated such that its -Z axis points towards "
"the [code]target[/code] position.\n"
@@ -51318,25 +52031,25 @@ msgid ""
"Operations take place in global space."
msgstr ""
-#: doc/classes/Transform.xml:118 doc/classes/Transform2D.xml:122
+#: doc/classes/Transform.xml:120
msgid ""
"Returns the transform with the basis orthogonal (90 degrees), and normalized "
"axis vectors."
msgstr ""
-#: doc/classes/Transform.xml:129
+#: doc/classes/Transform.xml:131
msgid ""
"Rotates the transform around the given axis by the given angle (in radians), "
"using matrix multiplication. The axis must be a normalized vector."
msgstr ""
-#: doc/classes/Transform.xml:138
+#: doc/classes/Transform.xml:140
msgid ""
"Scales basis and origin of the transform by the given scale factor, using "
"matrix multiplication."
msgstr ""
-#: doc/classes/Transform.xml:147 doc/classes/Transform2D.xml:149
+#: doc/classes/Transform.xml:149 doc/classes/Transform2D.xml:153
msgid ""
"Translates the transform by the given offset, relative to the transform's "
"basis vectors.\n"
@@ -51344,152 +52057,162 @@ msgid ""
"multiplication."
msgstr ""
-#: doc/classes/Transform.xml:157
+#: doc/classes/Transform.xml:159
msgid ""
"Transforms the given [Vector3], [Plane], [AABB], or [PackedVector3Array] by "
"this transform."
msgstr ""
-#: doc/classes/Transform.xml:166
+#: doc/classes/Transform.xml:168
msgid ""
"Inverse-transforms the given [Vector3], [Plane], [AABB], or "
"[PackedVector3Array] by this transform."
msgstr ""
-#: doc/classes/Transform.xml:172
+#: doc/classes/Transform.xml:174
msgid ""
"The basis is a matrix containing 3 [Vector3] as its columns: X axis, Y axis, "
"and Z axis. These vectors can be interpreted as the basis vectors of local "
"coordinate system traveling with the object."
msgstr ""
-#: doc/classes/Transform.xml:175
-msgid "The translation offset of the transform."
+#: doc/classes/Transform.xml:177
+msgid ""
+"The translation offset of the transform (column 3, the fourth column). "
+"Equivalent to array index [code]3[/code]."
msgstr ""
-#: doc/classes/Transform.xml:180
+#: doc/classes/Transform.xml:182
msgid ""
"[Transform] with no translation, rotation or scaling applied. When applied "
"to other data structures, [constant IDENTITY] performs no transformation."
msgstr ""
-#: doc/classes/Transform.xml:183
+#: doc/classes/Transform.xml:185
msgid "[Transform] with mirroring applied perpendicular to the YZ plane."
msgstr ""
-#: doc/classes/Transform.xml:186
+#: doc/classes/Transform.xml:188
msgid "[Transform] with mirroring applied perpendicular to the XZ plane."
msgstr ""
-#: doc/classes/Transform.xml:189
+#: doc/classes/Transform.xml:191
msgid "[Transform] with mirroring applied perpendicular to the XY plane."
msgstr ""
#: doc/classes/Transform2D.xml:4
-msgid "2D transformation (3×2 matrix)."
+msgid "2D transformation (2×3 matrix)."
msgstr ""
#: doc/classes/Transform2D.xml:7
msgid ""
-"Represents one or many transformations in 2D space such as translation, "
-"rotation, or scaling. It consists of two [member x] and [member y] "
-"[Vector2]s and an [member origin]. It is similar to a 3×2 matrix."
+"2×3 matrix (2 rows, 3 columns) used for 2D linear transformations. It can "
+"represent transformations such as translation, rotation, or scaling. It "
+"consists of a three [Vector2] values: [member x], [member y], and the "
+"[member origin].\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
msgstr ""
-#: doc/classes/Transform2D.xml:18
+#: doc/classes/Transform2D.xml:20
msgid "Constructs the transform from a 3D [Transform]."
msgstr ""
-#: doc/classes/Transform2D.xml:31
+#: doc/classes/Transform2D.xml:33
msgid ""
-"Constructs the transform from 3 [Vector2]s representing x, y, and origin."
+"Constructs the transform from 3 [Vector2] values representing [member x], "
+"[member y], and the [member origin] (the three column vectors)."
msgstr ""
-#: doc/classes/Transform2D.xml:42
+#: doc/classes/Transform2D.xml:44
msgid "Constructs the transform from a given angle (in radians) and position."
msgstr ""
-#: doc/classes/Transform2D.xml:58
-msgid "Transforms the given vector by this transform's basis (no translation)."
+#: doc/classes/Transform2D.xml:60
+msgid ""
+"Returns a vector transformed (multiplied) by the basis matrix.\n"
+"This method does not account for translation (the origin vector)."
msgstr ""
-#: doc/classes/Transform2D.xml:67
+#: doc/classes/Transform2D.xml:70
msgid ""
-"Inverse-transforms the given vector by this transform's basis (no "
-"translation)."
+"Returns a vector transformed (multiplied) by the inverse basis matrix.\n"
+"This method does not account for translation (the origin vector)."
msgstr ""
-#: doc/classes/Transform2D.xml:74
+#: doc/classes/Transform2D.xml:78
msgid "Returns the transform's origin (translation)."
msgstr ""
-#: doc/classes/Transform2D.xml:81
+#: doc/classes/Transform2D.xml:85
msgid "Returns the transform's rotation (in radians)."
msgstr ""
-#: doc/classes/Transform2D.xml:88
+#: doc/classes/Transform2D.xml:92
msgid "Returns the scale."
msgstr ""
-#: doc/classes/Transform2D.xml:99
+#: doc/classes/Transform2D.xml:103
msgid ""
"Returns a transform interpolated between this transform and another by a "
-"given weight (0-1)."
+"given weight (on the range of 0.0 to 1.0)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:110
+msgid ""
+"Returns the inverse of the transform, under the assumption that the "
+"transformation is composed of rotation and translation (no scaling, use "
+"[method affine_inverse] for transforms with scaling)."
msgstr ""
-#: doc/classes/Transform2D.xml:131
+#: doc/classes/Transform2D.xml:126
+msgid ""
+"Returns the transform with the basis orthogonal (90 degrees), and normalized "
+"axis vectors (scale of 1 or -1)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:135
msgid ""
"Rotates the transform by the given angle (in radians), using matrix "
"multiplication."
msgstr ""
-#: doc/classes/Transform2D.xml:140
+#: doc/classes/Transform2D.xml:144
msgid ""
"Scales the transform by the given scale factor, using matrix multiplication."
msgstr ""
-#: doc/classes/Transform2D.xml:159
+#: doc/classes/Transform2D.xml:163
msgid ""
"Transforms the given [Vector2], [Rect2], or [PackedVector2Array] by this "
"transform."
msgstr ""
-#: doc/classes/Transform2D.xml:168
+#: doc/classes/Transform2D.xml:172
msgid ""
"Inverse-transforms the given [Vector2], [Rect2], or [PackedVector2Array] by "
"this transform."
msgstr ""
-#: doc/classes/Transform2D.xml:174
-msgid "The transform's translation offset."
-msgstr ""
-
-#: doc/classes/Transform2D.xml:177
-msgid ""
-"The X axis of 2×2 basis matrix containing 2 [Vector2]s as its columns: X "
-"axis and Y axis. These vectors can be interpreted as the basis vectors of "
-"local coordinate system traveling with the object."
-msgstr ""
-
-#: doc/classes/Transform2D.xml:180
+#: doc/classes/Transform2D.xml:178
msgid ""
-"The Y axis of 2×2 basis matrix containing 2 [Vector2]s as its columns: X "
-"axis and Y axis. These vectors can be interpreted as the basis vectors of "
-"local coordinate system traveling with the object."
+"The origin vector (column 2, the third column). Equivalent to array index "
+"[code]2[/code]. The origin vector represents translation."
msgstr ""
-#: doc/classes/Transform2D.xml:185
+#: doc/classes/Transform2D.xml:189
msgid ""
-"[Transform2D] with no translation, rotation or scaling applied. When applied "
-"to other data structures, [constant IDENTITY] performs no transformation."
+"The identity [Transform2D] with no translation, rotation or scaling applied. "
+"When applied to other data structures, [constant IDENTITY] performs no "
+"transformation."
msgstr ""
-#: doc/classes/Transform2D.xml:188
-msgid "[Transform2D] with mirroring applied parallel to the X axis."
+#: doc/classes/Transform2D.xml:192
+msgid "The [Transform2D] that will flip something along the X axis."
msgstr ""
-#: doc/classes/Transform2D.xml:191
-msgid "[Transform2D] with mirroring applied parallel to the Y axis."
+#: doc/classes/Transform2D.xml:195
+msgid "The [Transform2D] that will flip something along the Y axis."
msgstr ""
#: doc/classes/Translation.xml:4
@@ -52153,7 +52876,8 @@ msgid "Returns the column's cell mode."
msgstr ""
#: doc/classes/TreeItem.xml:121
-msgid "Returns the TreeItem's child items."
+msgid ""
+"Returns the TreeItem's first child item or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:130
@@ -52185,28 +52909,32 @@ msgid "Returns the icon [Texture2D] region as [Rect2]."
msgstr ""
#: doc/classes/TreeItem.xml:199
-msgid "Returns the next TreeItem in the tree."
+msgid ""
+"Returns the next TreeItem in the tree or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:208
msgid ""
-"Returns the next visible TreeItem in the tree.\n"
+"Returns the next visible TreeItem in the tree or a null object if there is "
+"none.\n"
"If [code]wrap[/code] is enabled, the method will wrap around to the first "
"visible element in the tree when called on the last visible element, "
"otherwise it returns [code]null[/code]."
msgstr ""
#: doc/classes/TreeItem.xml:216
-msgid "Returns the parent TreeItem."
+msgid "Returns the parent TreeItem or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:223
-msgid "Returns the previous TreeItem in the tree."
+msgid ""
+"Returns the previous TreeItem in the tree or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:232
msgid ""
-"Returns the previous visible TreeItem in the tree.\n"
+"Returns the previous visible TreeItem in the tree or a null object if there "
+"is none.\n"
"If [code]wrap[/code] is enabled, the method will wrap around to the last "
"visible element in the tree when called on the first visible element, "
"otherwise it returns [code]null[/code]."
@@ -52716,6 +53444,10 @@ msgid ""
"A simple server that opens a UDP socket and returns connected "
"[PacketPeerUDP] upon receiving new packets. See also [method PacketPeerUDP."
"connect_to_host].\n"
+"After starting the server ([method listen]), you will need to [method poll] "
+"it at regular intervals (e.g. inside [method Node._process]) for it to "
+"process new packets, delivering them to the appropriate [PacketPeerUDP], and "
+"taking new connections.\n"
"Below a small example of how it can be used:\n"
"[codeblock]\n"
"# server.gd\n"
@@ -52728,6 +53460,7 @@ msgid ""
" server.listen(4242)\n"
"\n"
"func _process(delta):\n"
+" server.poll() # Important!\n"
" if server.is_connection_available():\n"
" var peer : PacketPeerUDP = server.take_connection()\n"
" var pkt = peer.get_packet()\n"
@@ -52763,35 +53496,55 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/UDPServer.xml:60
+#: doc/classes/UDPServer.xml:62
msgid ""
-"Returns [code]true[/code] if a packet with a new address/port combination is "
-"received on the socket."
+"Returns [code]true[/code] if a packet with a new address/port combination "
+"was received on the socket."
msgstr ""
-#: doc/classes/UDPServer.xml:67
+#: doc/classes/UDPServer.xml:69
msgid ""
"Returns [code]true[/code] if the socket is open and listening on a port."
msgstr ""
-#: doc/classes/UDPServer.xml:78
+#: doc/classes/UDPServer.xml:80
msgid ""
"Starts the server by opening a UDP socket listening on the given port. You "
"can optionally specify a [code]bind_address[/code] to only listen for "
"packets sent to that address. See also [method PacketPeerUDP.listen]."
msgstr ""
-#: doc/classes/UDPServer.xml:85
+#: doc/classes/UDPServer.xml:87
+msgid ""
+"Call this method at regular intervals (e.g. inside [method Node._process]) "
+"to process new packets. And packet from known address/port pair will be "
+"delivered to the appropriate [PacketPeerUDP], any packet received from an "
+"unknown address/port pair will be added as a pending connection (see [method "
+"is_connection_available], [method take_connection]). The maximum number of "
+"pending connection is defined via [member max_pending_connections]."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:94
+msgid ""
+"Stops the server, closing the UDP socket if open. Will close all connected "
+"[PacketPeerUDP] accepted via [method take_connection] (remote peers will not "
+"be notified)."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:101
msgid ""
-"Stops the server, closing the UDP socket if open. Will not disconnect any "
-"connected [PacketPeerUDP]."
+"Returns the first pending connection (connected to the appropriate address/"
+"port). Will return [code]null[/code] if no new connection is available. See "
+"also [method is_connection_available], [method PacketPeerUDP."
+"connect_to_host]."
msgstr ""
-#: doc/classes/UDPServer.xml:92
+#: doc/classes/UDPServer.xml:107
msgid ""
-"Returns a [PacketPeerUDP] connected to the address/port combination of the "
-"first packet in queue. Will return [code]null[/code] if no packet is in "
-"queue. See also [method PacketPeerUDP.connect_to_host]."
+"Define the maximum number of pending connections, during [method poll], any "
+"new pending connection exceeding that value will be automatically dropped. "
+"Setting this value to [code]0[/code] effectively prevents any new pending "
+"connection to be accepted (e.g. when all your players have connected)."
msgstr ""
#: doc/classes/UndoRedo.xml:4
@@ -53432,24 +54185,26 @@ msgstr ""
#: doc/classes/Vector2.xml:46
msgid ""
-"Returns the vector's angle in radians with respect to the X axis, or [code]"
-"(1, 0)[/code] vector.\n"
+"Returns this vector's angle with respect to the X axis, or [code](1, 0)[/"
+"code] vector, in radians.\n"
"Equivalent to the result of [method @GDScript.atan2] when called with the "
-"vector's [member x] and [member y] as parameters: [code]atan2(x, y)[/code]."
+"vector's [member y] and [member x] as parameters: [code]atan2(y, x)[/code]."
msgstr ""
#: doc/classes/Vector2.xml:56
-msgid "Returns the angle in radians between the two vectors."
+msgid "Returns the angle to the given vector, in radians."
msgstr ""
#: doc/classes/Vector2.xml:65
msgid ""
-"Returns the angle in radians between the line connecting the two points and "
-"the X coordinate."
+"Returns the angle between the line connecting the two points and the X axis, "
+"in radians."
msgstr ""
-#: doc/classes/Vector2.xml:72 doc/classes/Vector2i.xml:46
-msgid "Returns the ratio of [member x] to [member y]."
+#: doc/classes/Vector2.xml:72
+msgid ""
+"Returns the aspect ratio of this vector, the ratio of [member x] to [member "
+"y]."
msgstr ""
#: doc/classes/Vector2.xml:81 doc/classes/Vector3.xml:59
@@ -53458,24 +54213,27 @@ msgid ""
msgstr ""
#: doc/classes/Vector2.xml:88
-msgid "Returns the vector with all components rounded up."
+msgid ""
+"Returns the vector with all components rounded up (towards positive "
+"infinity)."
msgstr ""
#: doc/classes/Vector2.xml:97
-msgid "Returns the vector with a maximum length."
+msgid ""
+"Returns the vector with a maximum length by limiting its length to "
+"[code]length[/code]."
msgstr ""
#: doc/classes/Vector2.xml:106
-msgid ""
-"Returns the 2-dimensional analog of the cross product with the given vector."
+msgid "Returns the cross product of this vector and [code]with[/code]."
msgstr ""
#: doc/classes/Vector2.xml:121
msgid ""
"Cubically interpolates between this vector and [code]b[/code] using "
"[code]pre_a[/code] and [code]post_b[/code] as handles, and returns the "
-"result at position [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation."
+"result at position [code]t[/code]. [code]t[/code] is on the range of 0.0 to "
+"1.0, representing the amount of interpolation."
msgstr ""
#: doc/classes/Vector2.xml:130 doc/classes/Vector3.xml:99
@@ -53483,182 +54241,198 @@ msgid ""
"Returns the normalized vector pointing from this vector to [code]b[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:139
+#: doc/classes/Vector2.xml:139 doc/classes/Vector3.xml:108
msgid ""
-"Returns the squared distance to vector [code]b[/code]. Prefer this function "
-"over [method distance_to] if you need to sort vectors or need the squared "
-"distance for some formula."
+"Returns the squared distance between this vector and [code]b[/code].\n"
+"This method runs faster than [method distance_to], so prefer it if you need "
+"to compare vectors or need the squared distance for some formula."
msgstr ""
-#: doc/classes/Vector2.xml:148
-msgid "Returns the distance to vector [code]b[/code]."
+#: doc/classes/Vector2.xml:149
+msgid "Returns the distance between this vector and [code]to[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:157
-msgid "Returns the dot product with vector [code]b[/code]."
+#: doc/classes/Vector2.xml:158
+msgid ""
+"Returns the dot product of this vector and [code]with[/code]. This can be "
+"used to compare the angle between two vectors. For example, this can be used "
+"to determine whether an enemy is facing the player.\n"
+"The dot product will be [code]0[/code] for a straight angle (90 degrees), "
+"greater than 0 for angles narrower than 90 degrees and lower than 0 for "
+"angles wider than 90 degrees.\n"
+"When using unit (normalized) vectors, the result will always be between "
+"[code]-1.0[/code] (180 degree angle) when the vectors are facing opposite "
+"directions, and [code]1.0[/code] (0 degree angle) when the vectors are "
+"aligned.\n"
+"[b]Note:[/b] [code]a.dot(b)[/code] is equivalent to [code]b.dot(a)[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:164
-msgid "Returns the vector with all components rounded down."
+#: doc/classes/Vector2.xml:168
+msgid ""
+"Returns the vector with all components rounded down (towards negative "
+"infinity)."
msgstr ""
-#: doc/classes/Vector2.xml:173 doc/classes/Vector3.xml:149
+#: doc/classes/Vector2.xml:177 doc/classes/Vector3.xml:153
msgid ""
"Returns [code]true[/code] if this vector and [code]v[/code] are "
"approximately equal, by running [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/Vector2.xml:180 doc/classes/Vector3.xml:156
-msgid "Returns [code]true[/code] if the vector is normalized."
+#: doc/classes/Vector2.xml:184 doc/classes/Vector3.xml:160
+msgid ""
+"Returns [code]true[/code] if the vector is normalized, and false otherwise."
msgstr ""
-#: doc/classes/Vector2.xml:187 doc/classes/Vector3.xml:163
-msgid "Returns the vector's length."
+#: doc/classes/Vector2.xml:191 doc/classes/Vector3.xml:167
+msgid "Returns the length (magnitude) of this vector."
msgstr ""
-#: doc/classes/Vector2.xml:194
+#: doc/classes/Vector2.xml:198 doc/classes/Vector3.xml:174
msgid ""
-"Returns the vector's length squared. Prefer this method over [method length] "
-"if you need to sort vectors or need the squared length for some formula."
+"Returns the squared length (squared magnitude) of this vector.\n"
+"This method runs faster than [method length], so prefer it if you need to "
+"compare vectors or need the squared distance for some formula."
msgstr ""
-#: doc/classes/Vector2.xml:205
+#: doc/classes/Vector2.xml:210 doc/classes/Vector3.xml:186
msgid ""
"Returns the result of the linear interpolation between this vector and "
-"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation."
+"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is on the range of "
+"0.0 to 1.0, representing the amount of interpolation."
msgstr ""
-#: doc/classes/Vector2.xml:216 doc/classes/Vector3.xml:206
+#: doc/classes/Vector2.xml:221
msgid ""
"Moves the vector toward [code]to[/code] by the fixed [code]delta[/code] "
"amount."
msgstr ""
-#: doc/classes/Vector2.xml:223 doc/classes/Vector3.xml:213
+#: doc/classes/Vector2.xml:228 doc/classes/Vector3.xml:218
msgid ""
"Returns the vector scaled to unit length. Equivalent to [code]v / v.length()"
"[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:232 doc/classes/Vector3.xml:231
+#: doc/classes/Vector2.xml:237 doc/classes/Vector3.xml:236
msgid ""
-"Returns a vector composed of the [code]fposmod[/code] of this vector's "
+"Returns a vector composed of the [method @GDScript.fposmod] of this vector's "
"components and [code]mod[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:241 doc/classes/Vector3.xml:240
+#: doc/classes/Vector2.xml:246 doc/classes/Vector3.xml:245
msgid ""
-"Returns a vector composed of the [code]fposmod[/code] of this vector's "
+"Returns a vector composed of the [method @GDScript.fposmod] of this vector's "
"components and [code]modv[/code]'s components."
msgstr ""
-#: doc/classes/Vector2.xml:250 doc/classes/Vector3.xml:249
+#: doc/classes/Vector2.xml:255
msgid "Returns the vector projected onto the vector [code]b[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:259 doc/classes/Vector3.xml:258
+#: doc/classes/Vector2.xml:264
msgid "Returns the vector reflected from a plane defined by the given normal."
msgstr ""
-#: doc/classes/Vector2.xml:268
+#: doc/classes/Vector2.xml:273
msgid ""
"Returns the vector rotated by [code]phi[/code] radians. See also [method "
"@GDScript.deg2rad]."
msgstr ""
-#: doc/classes/Vector2.xml:275 doc/classes/Vector3.xml:276
+#: doc/classes/Vector2.xml:280
msgid ""
"Returns the vector with all components rounded to the nearest integer, with "
"halfway cases rounded away from zero."
msgstr ""
-#: doc/classes/Vector2.xml:282 doc/classes/Vector2i.xml:53
-#: doc/classes/Vector3.xml:283 doc/classes/Vector3i.xml:55
+#: doc/classes/Vector2.xml:287
msgid ""
"Returns the vector with each component set to one or negative one, depending "
-"on the signs of the components."
+"on the signs of the components, or zero if the component is zero, by calling "
+"[method @GDScript.sign] on each component."
msgstr ""
-#: doc/classes/Vector2.xml:293 doc/classes/Vector3.xml:294
+#: doc/classes/Vector2.xml:298 doc/classes/Vector3.xml:299
msgid ""
"Returns the result of spherical linear interpolation between this vector and "
-"[code]b[/code], by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation.\n"
+"[code]b[/code], by amount [code]t[/code]. [code]t[/code] is on the range of "
+"0.0 to 1.0, representing the amount of interpolation.\n"
"[b]Note:[/b] Both vectors must be normalized."
msgstr ""
-#: doc/classes/Vector2.xml:303 doc/classes/Vector3.xml:304
-msgid ""
-"Returns the component of the vector along a plane defined by the given "
-"normal."
+#: doc/classes/Vector2.xml:308 doc/classes/Vector3.xml:309
+msgid "Returns this vector slid along a plane defined by the given normal."
msgstr ""
-#: doc/classes/Vector2.xml:312 doc/classes/Vector3.xml:313
-msgid "Returns the vector snapped to a grid with the given size."
+#: doc/classes/Vector2.xml:317 doc/classes/Vector3.xml:318
+msgid ""
+"Returns this vector with each component snapped to the nearest multiple of "
+"[code]step[/code]. This can also be used to round to an arbitrary number of "
+"decimals."
msgstr ""
-#: doc/classes/Vector2.xml:319
-msgid "Returns a perpendicular vector."
+#: doc/classes/Vector2.xml:324
+msgid ""
+"Returns a perpendicular vector rotated 90 degrees counter-clockwise compared "
+"to the original, with the same length."
msgstr ""
-#: doc/classes/Vector2.xml:325 doc/classes/Vector2i.xml:59
-#: doc/classes/Vector3.xml:326 doc/classes/Vector3i.xml:61
+#: doc/classes/Vector2.xml:330 doc/classes/Vector2i.xml:59
+#: doc/classes/Vector3.xml:332 doc/classes/Vector3i.xml:61
msgid ""
"The vector's X component. Also accessible by using the index position [code]"
"[0][/code]."
msgstr ""
-#: doc/classes/Vector2.xml:328 doc/classes/Vector2i.xml:62
-#: doc/classes/Vector3.xml:329 doc/classes/Vector3i.xml:64
+#: doc/classes/Vector2.xml:333 doc/classes/Vector2i.xml:62
+#: doc/classes/Vector3.xml:335 doc/classes/Vector3i.xml:64
msgid ""
"The vector's Y component. Also accessible by using the index position [code]"
"[1][/code]."
msgstr ""
-#: doc/classes/Vector2.xml:333 doc/classes/Vector2i.xml:67
+#: doc/classes/Vector2.xml:338 doc/classes/Vector2i.xml:67
#: doc/classes/Vector3i.xml:72
msgid "Enumerated value for the X axis."
msgstr ""
-#: doc/classes/Vector2.xml:336 doc/classes/Vector2i.xml:70
+#: doc/classes/Vector2.xml:341 doc/classes/Vector2i.xml:70
#: doc/classes/Vector3i.xml:75
msgid "Enumerated value for the Y axis."
msgstr ""
-#: doc/classes/Vector2.xml:339 doc/classes/Vector2i.xml:73
-#: doc/classes/Vector3.xml:346 doc/classes/Vector3i.xml:81
-msgid "Zero vector."
+#: doc/classes/Vector2.xml:344 doc/classes/Vector2i.xml:73
+#: doc/classes/Vector3.xml:352 doc/classes/Vector3i.xml:81
+msgid "Zero vector, a vector with all components set to [code]0[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:342 doc/classes/Vector2i.xml:76
-#: doc/classes/Vector3.xml:349 doc/classes/Vector3i.xml:84
-msgid "One vector."
+#: doc/classes/Vector2.xml:347 doc/classes/Vector2i.xml:76
+#: doc/classes/Vector3.xml:355 doc/classes/Vector3i.xml:84
+msgid "One vector, a vector with all components set to [code]1[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:345 doc/classes/Vector3.xml:352
-msgid "Infinity vector."
+#: doc/classes/Vector2.xml:350 doc/classes/Vector3.xml:358
+msgid ""
+"Infinity vector, a vector with all components set to [constant @GDScript."
+"INF]."
msgstr ""
-#: doc/classes/Vector2.xml:348 doc/classes/Vector2i.xml:79
-#: doc/classes/Vector3.xml:355 doc/classes/Vector3i.xml:87
-msgid "Left unit vector."
+#: doc/classes/Vector2.xml:353 doc/classes/Vector2i.xml:79
+msgid "Left unit vector. Represents the direction of left."
msgstr ""
-#: doc/classes/Vector2.xml:351 doc/classes/Vector2i.xml:82
-#: doc/classes/Vector3.xml:358 doc/classes/Vector3i.xml:90
-msgid "Right unit vector."
+#: doc/classes/Vector2.xml:356 doc/classes/Vector2i.xml:82
+msgid "Right unit vector. Represents the direction of right."
msgstr ""
-#: doc/classes/Vector2.xml:354 doc/classes/Vector2i.xml:85
-#: doc/classes/Vector3.xml:361 doc/classes/Vector3i.xml:93
-msgid "Up unit vector."
+#: doc/classes/Vector2.xml:359 doc/classes/Vector2i.xml:85
+msgid "Up unit vector. Y is down in 2D, so this vector points -Y."
msgstr ""
-#: doc/classes/Vector2.xml:357 doc/classes/Vector2i.xml:88
-#: doc/classes/Vector3.xml:364 doc/classes/Vector3i.xml:96
-msgid "Down unit vector."
+#: doc/classes/Vector2.xml:362 doc/classes/Vector2i.xml:88
+msgid "Down unit vector. Y is down in 2D, so this vector points +Y."
msgstr ""
#: doc/classes/Vector2i.xml:4
@@ -53687,6 +54461,16 @@ msgid ""
"will be truncated."
msgstr ""
+#: doc/classes/Vector2i.xml:46
+msgid "Returns the ratio of [member x] to [member y]."
+msgstr ""
+
+#: doc/classes/Vector2i.xml:53 doc/classes/Vector3i.xml:55
+msgid ""
+"Returns the vector with each component set to one or negative one, depending "
+"on the signs of the components."
+msgstr ""
+
#: doc/classes/Vector3.xml:4
msgid "Vector used for 3D math using floating point coordinates."
msgstr ""
@@ -53711,120 +54495,170 @@ msgid "Returns a [Vector3] with the given components."
msgstr ""
#: doc/classes/Vector3.xml:50
-msgid "Returns the minimum angle to the given vector."
+msgid "Returns the minimum angle to the given vector, in radians."
msgstr ""
#: doc/classes/Vector3.xml:66
-msgid "Returns a new vector with all components rounded up."
+msgid ""
+"Returns a new vector with all components rounded up (towards positive "
+"infinity)."
msgstr ""
#: doc/classes/Vector3.xml:75
-msgid "Returns the cross product with [code]b[/code]."
+msgid "Returns the cross product of this vector and [code]b[/code]."
msgstr ""
#: doc/classes/Vector3.xml:90
msgid ""
"Performs a cubic interpolation between vectors [code]pre_a[/code], [code]a[/"
"code], [code]b[/code], [code]post_b[/code] ([code]a[/code] is current), by "
-"the given amount [code]t[/code]. [code]t[/code] is in the range of [code]0.0 "
-"- 1.0[/code], representing the amount of interpolation."
-msgstr ""
-
-#: doc/classes/Vector3.xml:108
-msgid ""
-"Returns the squared distance to [code]b[/code]. Prefer this function over "
-"[method distance_to] if you need to sort vectors or need the squared "
-"distance for some formula."
+"the given amount [code]t[/code]. [code]t[/code] is on the range of 0.0 to "
+"1.0, representing the amount of interpolation."
msgstr ""
-#: doc/classes/Vector3.xml:117
-msgid "Returns the distance to [code]b[/code]."
+#: doc/classes/Vector3.xml:118
+msgid "Returns the distance between this vector and [code]b[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:126
-msgid "Returns the dot product with [code]b[/code]."
+#: doc/classes/Vector3.xml:127
+msgid ""
+"Returns the dot product of this vector and [code]b[/code]. This can be used "
+"to compare the angle between two vectors. For example, this can be used to "
+"determine whether an enemy is facing the player.\n"
+"The dot product will be [code]0[/code] for a straight angle (90 degrees), "
+"greater than 0 for angles narrower than 90 degrees and lower than 0 for "
+"angles wider than 90 degrees.\n"
+"When using unit (normalized) vectors, the result will always be between "
+"[code]-1.0[/code] (180 degree angle) when the vectors are facing opposite "
+"directions, and [code]1.0[/code] (0 degree angle) when the vectors are "
+"aligned.\n"
+"[b]Note:[/b] [code]a.dot(b)[/code] is equivalent to [code]b.dot(a)[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:133
-msgid "Returns a new vector with all components rounded down."
+#: doc/classes/Vector3.xml:137
+msgid ""
+"Returns a new vector with all components rounded down (towards negative "
+"infinity)."
msgstr ""
-#: doc/classes/Vector3.xml:140
+#: doc/classes/Vector3.xml:144
msgid ""
"Returns the inverse of the vector. This is the same as [code]Vector3( 1.0 / "
"v.x, 1.0 / v.y, 1.0 / v.z )[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:170
+#: doc/classes/Vector3.xml:193 doc/classes/Vector3i.xml:41
msgid ""
-"Returns the vector's length squared. Prefer this function over [method "
-"length] if you need to sort vectors or need the squared length for some "
-"formula."
+"Returns the axis of the vector's largest value. See [code]AXIS_*[/code] "
+"constants. If all components are equal, this method returns [constant "
+"AXIS_X]."
msgstr ""
-#: doc/classes/Vector3.xml:181
+#: doc/classes/Vector3.xml:200 doc/classes/Vector3i.xml:48
msgid ""
-"Returns the result of the linear interpolation between this vector and "
-"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation.."
+"Returns the axis of the vector's smallest value. See [code]AXIS_*[/code] "
+"constants. If all components are equal, this method returns [constant "
+"AXIS_Z]."
msgstr ""
-#: doc/classes/Vector3.xml:188 doc/classes/Vector3i.xml:41
+#: doc/classes/Vector3.xml:211
msgid ""
-"Returns the axis of the vector's largest value. See [code]AXIS_*[/code] "
-"constants."
+"Moves this vector toward [code]to[/code] by the fixed [code]delta[/code] "
+"amount."
msgstr ""
-#: doc/classes/Vector3.xml:195 doc/classes/Vector3i.xml:48
+#: doc/classes/Vector3.xml:227
+msgid "Returns the outer product with [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:254
+msgid "Returns this vector projected onto another vector [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:263
+msgid "Returns this vector reflected from a plane defined by the given normal."
+msgstr ""
+
+#: doc/classes/Vector3.xml:274
msgid ""
-"Returns the axis of the vector's smallest value. See [code]AXIS_*[/code] "
-"constants."
+"Rotates this vector around a given axis by [code]phi[/code] radians. The "
+"axis must be a normalized vector."
msgstr ""
-#: doc/classes/Vector3.xml:222
-msgid "Returns the outer product with [code]b[/code]."
+#: doc/classes/Vector3.xml:281
+msgid ""
+"Returns this vector with all components rounded to the nearest integer, with "
+"halfway cases rounded away from zero."
msgstr ""
-#: doc/classes/Vector3.xml:269
+#: doc/classes/Vector3.xml:288
msgid ""
-"Rotates the vector around a given axis by [code]phi[/code] radians. The axis "
-"must be a normalized vector."
+"Returns a vector with each component set to one or negative one, depending "
+"on the signs of this vector's components, or zero if the component is zero, "
+"by calling [method @GDScript.sign] on each component."
msgstr ""
-#: doc/classes/Vector3.xml:320
-msgid "Returns a diagonal matrix with the vector as main diagonal."
+#: doc/classes/Vector3.xml:325
+msgid ""
+"Returns a diagonal matrix with the vector as main diagonal.\n"
+"This is equivalent to a Basis with no rotation or shearing and this vector's "
+"components set as the scale."
msgstr ""
-#: doc/classes/Vector3.xml:332 doc/classes/Vector3i.xml:67
+#: doc/classes/Vector3.xml:338 doc/classes/Vector3i.xml:67
msgid ""
"The vector's Z component. Also accessible by using the index position [code]"
"[2][/code]."
msgstr ""
-#: doc/classes/Vector3.xml:337
+#: doc/classes/Vector3.xml:343
msgid ""
"Enumerated value for the X axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:340
+#: doc/classes/Vector3.xml:346
msgid ""
"Enumerated value for the Y axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:343
+#: doc/classes/Vector3.xml:349
msgid ""
"Enumerated value for the Z axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:367 doc/classes/Vector3i.xml:99
-msgid "Forward unit vector."
+#: doc/classes/Vector3.xml:361 doc/classes/Vector3i.xml:87
+msgid ""
+"Left unit vector. Represents the local direction of left, and the global "
+"direction of west."
msgstr ""
-#: doc/classes/Vector3.xml:370 doc/classes/Vector3i.xml:102
-msgid "Back unit vector."
+#: doc/classes/Vector3.xml:364 doc/classes/Vector3i.xml:90
+msgid ""
+"Right unit vector. Represents the local direction of right, and the global "
+"direction of east."
+msgstr ""
+
+#: doc/classes/Vector3.xml:367 doc/classes/Vector3i.xml:93
+msgid "Up unit vector."
+msgstr ""
+
+#: doc/classes/Vector3.xml:370 doc/classes/Vector3i.xml:96
+msgid "Down unit vector."
+msgstr ""
+
+#: doc/classes/Vector3.xml:373 doc/classes/Vector3i.xml:99
+msgid ""
+"Forward unit vector. Represents the local direction of forward, and the "
+"global direction of north."
+msgstr ""
+
+#: doc/classes/Vector3.xml:376 doc/classes/Vector3i.xml:102
+msgid ""
+"Back unit vector. Represents the local direction of back, and the global "
+"direction of south."
msgstr ""
#: doc/classes/Vector3i.xml:4
@@ -53873,10 +54707,14 @@ msgid ""
"directly.\n"
"[b]Note:[/b] The origin point of your VehicleBody3D will determine the "
"center of gravity of your vehicle so it is better to keep this low and move "
-"the [CollisionShape3D] and [MeshInstance3D] upwards."
+"the [CollisionShape3D] and [MeshInstance3D] upwards.\n"
+"[b]Note:[/b] This class has known issues and isn't designed to provide "
+"realistic 3D vehicle physics. If you want advanced vehicle physics, you will "
+"probably have to write your own physics integration using another "
+"[PhysicsBody3D] class."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:16
+#: doc/classes/VehicleBody3D.xml:17
msgid ""
"Slows down the vehicle by applying a braking force. The vehicle is only "
"slowed down if the wheels are in contact with a surface. The force you need "
@@ -53885,7 +54723,7 @@ msgid ""
"a value in the 25 - 30 range for hard braking."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:19
+#: doc/classes/VehicleBody3D.xml:20
msgid ""
"Accelerates the vehicle by applying an engine force. The vehicle is only "
"speed up if the wheels that have [member VehicleWheel3D.use_as_traction] set "
@@ -53898,7 +54736,7 @@ msgid ""
"A negative value will result in the vehicle reversing."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:25
+#: doc/classes/VehicleBody3D.xml:26
msgid ""
"The steering angle for the vehicle. Setting this to a non-zero value will "
"result in the vehicle turning when it's moving. Wheels that have [member "
@@ -53914,25 +54752,29 @@ msgstr ""
msgid ""
"This node needs to be used as a child node of [VehicleBody3D] and simulates "
"the behavior of one of its wheels. This node also acts as a collider to "
-"detect if the wheel is touching a surface."
+"detect if the wheel is touching a surface.\n"
+"[b]Note:[/b] This class has known issues and isn't designed to provide "
+"realistic 3D vehicle physics. If you want advanced vehicle physics, you will "
+"probably have to write your own physics integration using another "
+"[PhysicsBody3D] class."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:16
+#: doc/classes/VehicleWheel3D.xml:17
msgid "Returns the rotational speed of the wheel in revolutions per minute."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:23
+#: doc/classes/VehicleWheel3D.xml:24
msgid ""
"Returns a value between 0.0 and 1.0 that indicates whether this wheel is "
"skidding. 0.0 is skidding (the wheel has lost grip, e.g. icy terrain), 1.0 "
"means not skidding (the wheel has full grip, e.g. dry asphalt road)."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:30
+#: doc/classes/VehicleWheel3D.xml:31
msgid "Returns [code]true[/code] if this wheel is in contact with a surface."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:36
+#: doc/classes/VehicleWheel3D.xml:37
msgid ""
"Slows down the wheel by applying a braking force. The wheel is only slowed "
"down if it is in contact with a surface. The force you need to apply to "
@@ -53941,7 +54783,7 @@ msgid ""
"- 30 range for hard braking."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:39
+#: doc/classes/VehicleWheel3D.xml:40
msgid ""
"The damping applied to the spring when the spring is being compressed. This "
"value should be between 0.0 (no damping) and 1.0. A value of 0.0 means the "
@@ -53949,7 +54791,7 @@ msgid ""
"is around 0.3 for a normal car, 0.5 for a race car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:42
+#: doc/classes/VehicleWheel3D.xml:43
msgid ""
"The damping applied to the spring when relaxing. This value should be "
"between 0.0 (no damping) and 1.0. This value should always be slightly "
@@ -53957,7 +54799,7 @@ msgid ""
"damping_compression] value of 0.3, try a relaxation value of 0.5."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:45
+#: doc/classes/VehicleWheel3D.xml:46
msgid ""
"Accelerates the wheel by applying an engine force. The wheel is only speed "
"up if it is in contact with a surface. The [member RigidBody3D.mass] of the "
@@ -53968,13 +54810,13 @@ msgid ""
"A negative value will result in the wheel reversing."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:50
+#: doc/classes/VehicleWheel3D.xml:51
msgid ""
"The steering angle for the wheel. Setting this to a non-zero value will "
"result in the vehicle turning when it's moving."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:53
+#: doc/classes/VehicleWheel3D.xml:54
msgid ""
"The maximum force the spring can resist. This value should be higher than a "
"quarter of the [member RigidBody3D.mass] of the [VehicleBody3D] or the "
@@ -53982,28 +54824,28 @@ msgid ""
"obtained by a value that is about 3× to 4× this number."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:56
+#: doc/classes/VehicleWheel3D.xml:57
msgid ""
"This value defines the stiffness of the suspension. Use a value lower than "
"50 for an off-road car, a value between 50 and 100 for a race car and try "
"something around 200 for something like a Formula 1 car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:59
+#: doc/classes/VehicleWheel3D.xml:60
msgid ""
"This is the distance the suspension can travel. As Godot units are "
"equivalent to meters, keep this setting relatively low. Try a value between "
"0.1 and 0.3 depending on the type of car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:62
+#: doc/classes/VehicleWheel3D.xml:63
msgid ""
"If [code]true[/code], this wheel will be turned when the car steers. This "
"value is used in conjunction with [member VehicleBody3D.steering] and "
"ignored if you are using the per-wheel [member steering] value instead."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:65
+#: doc/classes/VehicleWheel3D.xml:66
msgid ""
"If [code]true[/code], this wheel transfers engine force to the ground to "
"propel the vehicle forward. This value is used in conjunction with [member "
@@ -54011,7 +54853,7 @@ msgid ""
"[member engine_force] value instead."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:68
+#: doc/classes/VehicleWheel3D.xml:69
msgid ""
"This determines how much grip this wheel has. It is combined with the "
"friction setting of the surface the wheel is in contact with. 0.0 means no "
@@ -54021,11 +54863,11 @@ msgid ""
"It's best to set this to 1.0 when starting out."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:72
+#: doc/classes/VehicleWheel3D.xml:73
msgid "The radius of the wheel in meters."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:75
+#: doc/classes/VehicleWheel3D.xml:76
msgid ""
"This is the distance in meters the wheel is lowered from its origin point. "
"Don't set this to 0.0 and move the wheel into position, instead move the "
@@ -54034,7 +54876,7 @@ msgid ""
"down to the position it should be in when the car is in rest."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:78
+#: doc/classes/VehicleWheel3D.xml:79
msgid ""
"This value affects the roll of your vehicle. If set to 1.0 for all wheels, "
"your vehicle will be prone to rolling over, while a value of 0.0 will resist "
@@ -54512,7 +55354,7 @@ msgstr ""
#: doc/classes/Viewport.xml:318
msgid ""
"Use fast approximate antialiasing. FXAA is a popular screen-space "
-"antialising method, which is fast but will make the image look blurry, "
+"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."
msgstr ""
@@ -54565,24 +55407,24 @@ msgid ""
"your [WorldEnvironment]."
msgstr ""
-#: doc/classes/Viewport.xml:384
+#: doc/classes/Viewport.xml:381
msgid ""
"Colors each PSSM split for the [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, and yellow."
msgstr ""
-#: doc/classes/Viewport.xml:387
+#: doc/classes/Viewport.xml:384
msgid ""
"Draws the decal atlas used by [Decal]s and light projector textures in the "
"upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/Viewport.xml:402
+#: doc/classes/Viewport.xml:405
msgid "Max value for [enum DefaultCanvasItemTextureFilter] enum."
msgstr ""
-#: doc/classes/Viewport.xml:414
+#: doc/classes/Viewport.xml:417
msgid "Max value for [enum DefaultCanvasItemTextureRepeat] enum."
msgstr ""
@@ -54613,82 +55455,84 @@ msgid ""
"The VisibilityEnabler2D will disable [RigidBody2D], [AnimationPlayer], and "
"other nodes when they are not visible. It will only affect nodes with the "
"same root node as the VisibilityEnabler2D, and the root node itself.\n"
+"If you just want to receive notifications, use [VisibilityNotifier2D] "
+"instead.\n"
"[b]Note:[/b] For performance reasons, VisibilityEnabler2D uses an "
"approximate heuristic with precision determined by [member ProjectSettings."
-"world/2d/cell_size]. If you need exact visibility checking, use another "
+"world/2d/cell_size]. If you need precise visibility checking, use another "
"method such as adding an [Area2D] node as a child of a [Camera2D] node.\n"
"[b]Note:[/b] VisibilityEnabler2D will not affect nodes added after scene "
"initialization."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:20
-#: doc/classes/VisibilityEnabler3D.xml:20
+#: doc/classes/VisibilityEnabler2D.xml:21
+#: doc/classes/VisibilityEnabler3D.xml:21
msgid ""
"Returns whether the enabler identified by given [enum Enabler] constant is "
"active."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:31
-#: doc/classes/VisibilityEnabler3D.xml:31
+#: doc/classes/VisibilityEnabler2D.xml:32
+#: doc/classes/VisibilityEnabler3D.xml:32
msgid ""
"Sets active state of the enabler identified by given [enum Enabler] constant."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:37
+#: doc/classes/VisibilityEnabler2D.xml:38
msgid "If [code]true[/code], [RigidBody2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:40
+#: doc/classes/VisibilityEnabler2D.xml:41
msgid "If [code]true[/code], [AnimatedSprite2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:43
-#: doc/classes/VisibilityEnabler3D.xml:40
+#: doc/classes/VisibilityEnabler2D.xml:44
+#: doc/classes/VisibilityEnabler3D.xml:41
msgid "If [code]true[/code], [AnimationPlayer] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:46
+#: doc/classes/VisibilityEnabler2D.xml:47
msgid "If [code]true[/code], [GPUParticles2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:49
+#: doc/classes/VisibilityEnabler2D.xml:50
msgid ""
"If [code]true[/code], the parent's [method Node._physics_process] will be "
"stopped."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:52
+#: doc/classes/VisibilityEnabler2D.xml:53
msgid ""
"If [code]true[/code], the parent's [method Node._process] will be stopped."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:57
-#: doc/classes/VisibilityEnabler3D.xml:45
+#: doc/classes/VisibilityEnabler2D.xml:58
+#: doc/classes/VisibilityEnabler3D.xml:46
msgid "This enabler will pause [AnimationPlayer] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:60
+#: doc/classes/VisibilityEnabler2D.xml:61
msgid "This enabler will freeze [RigidBody2D] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:63
+#: doc/classes/VisibilityEnabler2D.xml:64
msgid "This enabler will stop [GPUParticles2D] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:66
+#: doc/classes/VisibilityEnabler2D.xml:67
msgid "This enabler will stop the parent's _process function."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:69
+#: doc/classes/VisibilityEnabler2D.xml:70
msgid "This enabler will stop the parent's _physics_process function."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:72
+#: doc/classes/VisibilityEnabler2D.xml:73
msgid "This enabler will stop [AnimatedSprite2D] nodes animations."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:75
-#: doc/classes/VisibilityEnabler3D.xml:51
+#: doc/classes/VisibilityEnabler2D.xml:76
+#: doc/classes/VisibilityEnabler3D.xml:52
msgid "Represents the size of the [enum Enabler] enum."
msgstr ""
@@ -54697,19 +55541,23 @@ msgid ""
"The VisibilityEnabler3D will disable [RigidBody3D] and [AnimationPlayer] "
"nodes when they are not visible. It will only affect other nodes within the "
"same scene as the VisibilityEnabler3D itself.\n"
+"If you just want to receive notifications, use [VisibilityNotifier3D] "
+"instead.\n"
"[b]Note:[/b] VisibilityEnabler3D uses an approximate heuristic for "
"performance reasons. It doesn't take walls and other occlusion into account. "
-"If you need exact visibility checking, use another method such as adding an "
-"[Area3D] node as a child of a [Camera3D] node.\n"
+"The heuristic is an implementation detail and may change in future versions. "
+"If you need precise visibility checking, use another method such as adding "
+"an [Area3D] node as a child of a [Camera3D] node and/or [method Vector3."
+"dot].\n"
"[b]Note:[/b] VisibilityEnabler3D will not affect nodes added after scene "
"initialization."
msgstr ""
-#: doc/classes/VisibilityEnabler3D.xml:37
+#: doc/classes/VisibilityEnabler3D.xml:38
msgid "If [code]true[/code], [RigidBody3D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler3D.xml:48
+#: doc/classes/VisibilityEnabler3D.xml:49
msgid "This enabler will freeze [RigidBody3D] nodes."
msgstr ""
@@ -54723,13 +55571,15 @@ msgid ""
"The VisibilityNotifier2D detects when it is visible on the screen. It also "
"notifies when its bounding rectangle enters or exits the screen or a "
"viewport.\n"
+"If you want nodes to be disabled automatically when they exit the screen, "
+"use [VisibilityEnabler2D] instead.\n"
"[b]Note:[/b] For performance reasons, VisibilityNotifier2D uses an "
"approximate heuristic with precision determined by [member ProjectSettings."
-"world/2d/cell_size]. If you need exact visibility checking, use another "
+"world/2d/cell_size]. If you need precise visibility checking, use another "
"method such as adding an [Area2D] node as a child of a [Camera2D] node."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:17
+#: doc/classes/VisibilityNotifier2D.xml:18
msgid ""
"If [code]true[/code], the bounding rectangle is on the screen.\n"
"[b]Note:[/b] It takes one frame for the node's visibility to be assessed "
@@ -54738,23 +55588,23 @@ msgid ""
"pass."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:24
+#: doc/classes/VisibilityNotifier2D.xml:25
msgid "The VisibilityNotifier2D's bounding rectangle."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:30
+#: doc/classes/VisibilityNotifier2D.xml:31
msgid "Emitted when the VisibilityNotifier2D enters the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:35
+#: doc/classes/VisibilityNotifier2D.xml:36
msgid "Emitted when the VisibilityNotifier2D exits the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:42
+#: doc/classes/VisibilityNotifier2D.xml:43
msgid "Emitted when the VisibilityNotifier2D enters a [Viewport]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:49
+#: doc/classes/VisibilityNotifier2D.xml:50
msgid "Emitted when the VisibilityNotifier2D exits a [Viewport]'s view."
msgstr ""
@@ -54763,13 +55613,16 @@ msgid ""
"The VisibilityNotifier3D detects when it is visible on the screen. It also "
"notifies when its bounding rectangle enters or exits the screen or a "
"[Camera3D]'s view.\n"
+"If you want nodes to be disabled automatically when they exit the screen, "
+"use [VisibilityEnabler3D] instead.\n"
"[b]Note:[/b] VisibilityNotifier3D uses an approximate heuristic for "
"performance reasons. It doesn't take walls and other occlusion into account. "
-"If you need exact visibility checking, use another method such as adding an "
-"[Area3D] node as a child of a [Camera3D] node."
+"The heuristic is an implementation detail and may change in future versions. "
+"If you need precise visibility checking, use another method such as adding "
+"an [Area3D] node as a child of a [Camera3D] node and/or [method Vector3.dot]."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:17
+#: doc/classes/VisibilityNotifier3D.xml:18
msgid ""
"If [code]true[/code], the bounding box is on the screen.\n"
"[b]Note:[/b] It takes one frame for the node's visibility to be assessed "
@@ -54778,23 +55631,23 @@ msgid ""
"pass."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:24
+#: doc/classes/VisibilityNotifier3D.xml:25
msgid "The VisibilityNotifier3D's bounding box."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:32
+#: doc/classes/VisibilityNotifier3D.xml:33
msgid "Emitted when the VisibilityNotifier3D enters a [Camera3D]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:39
+#: doc/classes/VisibilityNotifier3D.xml:40
msgid "Emitted when the VisibilityNotifier3D exits a [Camera3D]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:44
+#: doc/classes/VisibilityNotifier3D.xml:45
msgid "Emitted when the VisibilityNotifier3D enters the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:49
+#: doc/classes/VisibilityNotifier3D.xml:50
msgid "Emitted when the VisibilityNotifier3D exits the screen."
msgstr ""
@@ -55214,6 +56067,12 @@ msgid ""
"exist."
msgstr ""
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:90
+msgid ""
+"Easing function, based on exponent. 0 is constant, 1 is linear, 0 to 1 is "
+"ease-in, 1+ is ease out. Negative values are in-out/out in."
+msgstr ""
+
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:93
msgid ""
"Return the number of digit places after the decimal that the first non-zero "
@@ -56099,6 +56958,7 @@ msgid "A shader for light calculations."
msgstr ""
#: doc/classes/VisualShader.xml:214
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:26
msgid "Represents the size of the [enum Type] enum."
msgstr ""
@@ -56201,6 +57061,24 @@ msgstr ""
msgid "Translated to [code]uniform bool[/code] in the shader language."
msgstr ""
+#: doc/classes/VisualShaderNodeBooleanUniform.xml:15
+#: doc/classes/VisualShaderNodeColorUniform.xml:15
+#: doc/classes/VisualShaderNodeFloatUniform.xml:15
+#: doc/classes/VisualShaderNodeIntUniform.xml:15
+#: doc/classes/VisualShaderNodeTransformUniform.xml:15
+#: doc/classes/VisualShaderNodeVec3Uniform.xml:15
+msgid "A default value to be assigned within the shader."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeBooleanUniform.xml:18
+#: doc/classes/VisualShaderNodeColorUniform.xml:18
+#: doc/classes/VisualShaderNodeFloatUniform.xml:18
+#: doc/classes/VisualShaderNodeIntUniform.xml:18
+#: doc/classes/VisualShaderNodeTransformUniform.xml:18
+#: doc/classes/VisualShaderNodeVec3Uniform.xml:18
+msgid "Enables usage of the [member default_value]."
+msgstr ""
+
#: doc/classes/VisualShaderNodeColorConstant.xml:4
msgid "A [Color] constant to be used within the visual shader graph."
msgstr ""
@@ -57051,49 +57929,49 @@ msgstr ""
msgid "Translated to [code]uniform float[/code] in the shader language."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:15
-#: doc/classes/VisualShaderNodeIntUniform.xml:15
+#: doc/classes/VisualShaderNodeFloatUniform.xml:21
+#: doc/classes/VisualShaderNodeIntUniform.xml:21
msgid ""
"A hint applied to the uniform, which controls the values it can take when "
"set through the inspector."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:18
-#: doc/classes/VisualShaderNodeIntUniform.xml:18
+#: doc/classes/VisualShaderNodeFloatUniform.xml:24
+#: doc/classes/VisualShaderNodeIntUniform.xml:24
msgid ""
"Minimum value for range hints. Used if [member hint] is set to [constant "
"HINT_RANGE] or [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:21
-#: doc/classes/VisualShaderNodeIntUniform.xml:21
+#: doc/classes/VisualShaderNodeFloatUniform.xml:27
+#: doc/classes/VisualShaderNodeIntUniform.xml:27
msgid ""
"Maximum value for range hints. Used if [member hint] is set to [constant "
"HINT_RANGE] or [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:24
-#: doc/classes/VisualShaderNodeIntUniform.xml:24
+#: doc/classes/VisualShaderNodeFloatUniform.xml:30
+#: doc/classes/VisualShaderNodeIntUniform.xml:30
msgid ""
"Step (increment) value for the range hint with step. Used if [member hint] "
"is set to [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:29
-#: doc/classes/VisualShaderNodeIntUniform.xml:29
+#: doc/classes/VisualShaderNodeFloatUniform.xml:35
+#: doc/classes/VisualShaderNodeIntUniform.xml:35
msgid "No hint used."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:32
-#: doc/classes/VisualShaderNodeIntUniform.xml:32
+#: doc/classes/VisualShaderNodeFloatUniform.xml:38
+#: doc/classes/VisualShaderNodeIntUniform.xml:38
msgid ""
"A range hint for scalar value, which limits possible input values between "
"[member min] and [member max]. Translated to [code]hint_range(min, max)[/"
"code] in shader code."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:35
-#: doc/classes/VisualShaderNodeIntUniform.xml:35
+#: doc/classes/VisualShaderNodeFloatUniform.xml:41
+#: doc/classes/VisualShaderNodeIntUniform.xml:41
msgid ""
"A range hint for scalar value with step, which limits possible input values "
"between [member min] and [member max], with a step (increment) of [member "
@@ -57375,6 +58253,26 @@ msgid ""
"results, e.g. division by zero)."
msgstr ""
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:4
+msgid "Performs a fused multiply-add operation within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:7
+msgid "Uses three operands to compute [code](a * b + c)[/code] expression."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:15
+msgid "A type of operands and returned value."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:20
+msgid "A scalar type."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:23
+msgid "A vector type."
+msgstr ""
+
#: doc/classes/VisualShaderNodeOuterProduct.xml:4
msgid ""
"Calculates an outer product of two vectors within the visual shader graph."
@@ -57397,7 +58295,7 @@ msgstr ""
#: doc/classes/VisualShaderNodeOutput.xml:7
msgid ""
"This visual shader node is present in all shader graphs in form of \"Output"
-"\" block with mutliple output value ports."
+"\" block with multiple output value ports."
msgstr ""
#: doc/classes/VisualShaderNodeSample3D.xml:4
@@ -57761,6 +58659,20 @@ msgid ""
"[ShaderMaterial] properties."
msgstr ""
+#: doc/classes/VisualShaderNodeUniformRef.xml:4
+msgid "A reference to an existing [VisualShaderNodeUniform]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniformRef.xml:7
+msgid ""
+"Creating a reference to a [VisualShaderNodeUniform] allows you to reuse this "
+"uniform in different shaders or shader stages easily."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniformRef.xml:15
+msgid "The name of the uniform which this reference points to."
+msgstr ""
+
#: doc/classes/VisualShaderNodeVec3Constant.xml:4
msgid "A [Vector3] constant to be used within the visual shader graph."
msgstr ""
@@ -58091,7 +59003,7 @@ msgstr ""
msgid ""
"Translated to [code]refract(I, N, eta)[/code] in the shader language, where "
"[code]I[/code] is the incident vector, [code]N[/code] is the normal vector "
-"and [code]eta[/code] is the ratio of the indicies of the refraction."
+"and [code]eta[/code] is the ratio of the indices of the refraction."
msgstr ""
#: doc/classes/VisualShaderNodeVectorScalarMix.xml:4
diff --git a/doc/translations/uk.po b/doc/translations/uk.po
index 034c4c67a1..e94a78591f 100644
--- a/doc/translations/uk.po
+++ b/doc/translations/uk.po
@@ -4,11 +4,12 @@
# This file is distributed under the same license as the Godot source code.
#
# Yuri Chornoivan <yurchor@ukr.net>, 2020.
+# Kiev Ball <supermensy2@gmail.com>, 2020.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine class reference\n"
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
-"PO-Revision-Date: 2020-06-25 08:53+0000\n"
+"PO-Revision-Date: 2020-07-31 03:47+0000\n"
"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
"Language-Team: Ukrainian <https://hosted.weblate.org/projects/godot-engine/"
"godot-class-reference/uk/>\n"
@@ -26,7 +27,7 @@ msgstr "ОпиÑ"
#: doc/tools/makerst.py
msgid "Tutorials"
-msgstr "Покрокові наÑтанови"
+msgstr "Туторіали"
#: doc/tools/makerst.py
msgid "Properties"
@@ -62,7 +63,7 @@ msgstr "ОпиÑи методів"
#: modules/gdscript/doc_classes/@GDScript.xml:4
msgid "Built-in GDScript functions."
-msgstr ""
+msgstr "Вбудовані функції GDScript."
#: modules/gdscript/doc_classes/@GDScript.xml:7
msgid ""
@@ -70,6 +71,9 @@ msgid ""
"utilities. Everything else is provided by objects. (Keywords: builtin, built "
"in, global functions.)"
msgstr ""
+"СпиÑок оÑновних вбудованих функцій GDScript. Математичні функції та багато "
+"інших програм. Ð’Ñе інше забезпечуєтьÑÑ Ð¾Ð±'єктами. (Ключові Ñлова: вбудовані, "
+"глобальні функції.)"
#: modules/gdscript/doc_classes/@GDScript.xml:24
msgid ""
@@ -84,6 +88,16 @@ msgid ""
"red = Color8(255, 0, 0)\n"
"[/codeblock]"
msgstr ""
+"Повертає колір, побудований з цілочиÑельних червоного, зеленого, Ñинього та "
+"альфа каналів. Кожен канал має зберігати 8 бітів інформації в діапазоні від "
+"0 до 255.\n"
+"[code]r8[/code] червоний канал\n"
+"[code]g8[/code] зелений канал\n"
+"[code]b8[/code] Ñиній канал\n"
+"[code]a8[/code] альфа-канал\n"
+"[codeblock]\n"
+"red = Color8(255, 0, 0)\n"
+"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:42
msgid ""
@@ -94,16 +108,29 @@ msgid ""
"[/codeblock]\n"
"Supported color names are the same as the constants defined in [Color]."
msgstr ""
+"Повертає колір у відповідноÑÑ‚Ñ– зі Ñтандартним [code]name[/code] з "
+"[code]alpha[/code] у діапазоні від 0 до 1.\n"
+"[codeblock]\n"
+"red = ColorN (\"red\", 1)\n"
+"[/codeblock]\n"
+"Підтримувані імена кольорів збігаютьÑÑ Ð· конÑтантами, визначеними у [Color]."
#: modules/gdscript/doc_classes/@GDScript.xml:55
+#, fuzzy
msgid ""
-"Returns the absolute value of parameter [code]s[/code] (i.e. unsigned value, "
-"works for integer and float).\n"
+"Returns the absolute value of parameter [code]s[/code] (i.e. positive "
+"value).\n"
"[codeblock]\n"
"# a is 1\n"
"a = abs(-1)\n"
"[/codeblock]"
msgstr ""
+"Повертає абÑолютне Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð° [code]s[/code] (тобто Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð±ÐµÐ· "
+"знака, працює Ð´Ð»Ñ Ñ†Ñ–Ð»Ð¸Ñ… чиÑел Ñ– чиÑел із рухомою крапкою).\n"
+"[codeblock]\n"
+"# a дорівнює 1\n"
+"a = abs(-1)\n"
+"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:68
msgid ""
@@ -114,6 +141,13 @@ msgid ""
"c = acos(0.866025)\n"
"[/codeblock]"
msgstr ""
+"Повертає арккоÑÐ¸Ð½ÑƒÑ [code]s[/code] в радіанах. ВикориÑтовуєтьÑÑ Ð´Ð»Ñ "
+"Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ ÐºÑƒÑ‚Ð° коÑинуÑа [code]s[/code].\n"
+"[codeblock]\n"
+"# c дорівнює 0.523599 або 30 градуÑів, Ñкщо конвертувати за допомогою "
+"rad2deg(s)\n"
+"c = acos(0.866025)\n"
+"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:81
msgid ""
@@ -124,6 +158,13 @@ msgid ""
"s = asin(0.5)\n"
"[/codeblock]"
msgstr ""
+"Повертає аркÑÐ¸Ð½ÑƒÑ [code]s[/code] у радіанах. ВикориÑтовуєтьÑÑ Ð´Ð»Ñ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ "
+"кута ÑинуÑа [code]s[/code].\n"
+"[codeblock]\n"
+"# s дорівнює 0.523599 або 30 градуÑів, Ñкщо конвертувати за допомогою "
+"rad2deg(s)\n"
+"s = asin(0.5)\n"
+"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:96
msgid ""
@@ -146,30 +187,69 @@ msgid ""
"a message with clarifying details\n"
"[/codeblock]"
msgstr ""
+"ПеревірÑÑ”, чи дорівнює [code]condition[/code] [code]true[/code]. Якщо "
+"[code]condition[/code] дорівнює [code]false[/code], буде згенеровано "
+"помилку, Ñ– Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð¸ буде припинено, поки ви не продовжите його. Ð¦Ñ "
+"Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ Ð²Ð¸ÐºÐ¾Ð½ÑƒÑ”Ñ‚ÑŒÑÑ Ñ‚Ñ–Ð»ÑŒÐºÐ¸ у діагноÑтичних збірках, або коли гра "
+"запуÑкаєтьÑÑ Ð² редакторі. ВикориÑтовуйте Ñ—Ñ— Ð´Ð»Ñ Ð´Ñ–Ð°Ð³Ð½Ð¾Ñтики, щоб "
+"переконатиÑÑ, що вираз дорівнює [code]true[/code] протÑгом розробки.\n"
+"Якщо заданий, необов'Ñзковий аргумент [code]message[/code], то він буде "
+"показаний у додатку до Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Â«Assertion failed». Ви можете "
+"ÑкориÑтатиÑÑ Ñ†Ð¸Ð¼ Ð´Ð»Ñ Ð½Ð°Ð´Ð°Ð½Ð½Ñ Ð´Ð¾Ð´Ð°Ñ‚ÐºÐ¾Ð²Ð¸Ñ… відомоÑтей щодо того, чому перевірку "
+"не було пройдено.\n"
+"[codeblock]\n"
+"# ПрипуÑтімо, що ви хочете, щоб швидкіÑÑ‚ÑŒ (speed) була між 0 Ñ– 20\n"
+"speed = -10\n"
+"assert(speed < 20) # ІÑтина, програма продовжить виконаннÑ\n"
+"assert(speed >= 0) # ХибніÑÑ‚ÑŒ, програму буде зупинено\n"
+"assert(speed >= 0 && speed <20) # Ви можете комбінувати два умовних вирази в "
+"одній перевірці\n"
+"assert(speed < 20, \"speed =%f, але Ð¾Ð±Ð¼ÐµÐ¶ÐµÐ½Ð½Ñ ÑˆÐ²Ð¸Ð´ÐºÐ¾ÑÑ‚Ñ– дорівнює 20\" "
+"%speed) # Показує Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð· уточненнÑм подробиць\n"
+"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:114
+#, fuzzy
msgid ""
"Returns the arc tangent of [code]s[/code] in radians. Use it to get the "
"angle from an angle's tangent in trigonometry: [code]atan(tan(angle)) == "
"angle[/code].\n"
"The method cannot know in which quadrant the angle should fall. See [method "
-"atan2] if you always want an exact angle.\n"
+"atan2] if you have both [code]y[/code] and [code]x[/code].\n"
"[codeblock]\n"
"a = atan(0.5) # a is 0.463648\n"
"[/codeblock]"
msgstr ""
+"Повертає Ð°Ñ€ÐºÑ‚Ð°Ð½Ð³ÐµÐ½Ñ [code]s[/code] у радіанах. ВикориÑтовуєтьÑÑ Ð´Ð»Ñ "
+"Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ ÐºÑƒÑ‚Ð° за тангенÑом кута у тригонометрії: [code]atan(tan(angle)) == "
+"angle[/code].\n"
+"Метод не може знати, в Ñкий квадрант повинен потраплÑти кут. ДивітьÑÑ "
+"[method atan2], Ñкщо ви хочете завжди отримувати точний кут.\n"
+"[codeblock]\n"
+"a = atan(0.5) # a дорівнює 0.463648\n"
+"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:129
+#, fuzzy
msgid ""
"Returns the arc tangent of [code]y/x[/code] in radians. Use to get the angle "
"of tangent [code]y/x[/code]. To compute the value, the method takes into "
"account the sign of both arguments in order to determine the quadrant.\n"
+"Important note: The Y coordinate comes first, by convention.\n"
"[codeblock]\n"
"a = atan2(0, -1) # a is 3.141593\n"
"[/codeblock]"
msgstr ""
+"Повертає Ð°Ñ€ÐºÑ‚Ð°Ð½Ð³ÐµÐ½Ñ [code]s[/code] у радіанах. ВикориÑтовуєтьÑÑ Ð´Ð»Ñ "
+"Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ ÐºÑƒÑ‚Ð° за тангенÑом кута у тригонометрії: [code]atan(tan(angle)) == "
+"angle[/code].\n"
+"Метод не може знати, в Ñкий квадрант повинен потраплÑти кут. ДивітьÑÑ "
+"[method atan2], Ñкщо ви хочете завжди отримувати точний кут.\n"
+"[codeblock]\n"
+"a = atan(0.5) # a дорівнює 0.463648\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:143
+#: modules/gdscript/doc_classes/@GDScript.xml:144
msgid ""
"Decodes a byte array back to a value. When [code]allow_objects[/code] is "
"[code]true[/code] decoding objects is allowed.\n"
@@ -178,7 +258,7 @@ msgid ""
"avoid potential security threats (remote code execution)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:155
+#: modules/gdscript/doc_classes/@GDScript.xml:156
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:145
msgid ""
"Converts a 2D point expressed in the cartesian coordinate system (X and Y "
@@ -186,17 +266,17 @@ msgid ""
"angle)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:164
+#: modules/gdscript/doc_classes/@GDScript.xml:165
msgid ""
-"Rounds [code]s[/code] upward, returning the smallest integral value that is "
-"not less than [code]s[/code].\n"
+"Rounds [code]s[/code] upward (towards positive infinity), returning the "
+"smallest whole number that is not less than [code]s[/code].\n"
"[codeblock]\n"
"i = ceil(1.45) # i is 2\n"
"i = ceil(1.001) # i is 2\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:177
+#: modules/gdscript/doc_classes/@GDScript.xml:178
msgid ""
"Returns a character as a String of the given Unicode code point (which is "
"compatible with ASCII code).\n"
@@ -208,7 +288,7 @@ msgid ""
"This is the inverse of [method ord]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:196
+#: modules/gdscript/doc_classes/@GDScript.xml:197
msgid ""
"Clamps [code]value[/code] and returns a value not less than [code]min[/code] "
"and not more than [code]max[/code].\n"
@@ -223,7 +303,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:216
+#: modules/gdscript/doc_classes/@GDScript.xml:217
msgid ""
"Converts from a type to another in the best way possible. The [code]type[/"
"code] parameter uses the [enum Variant.Type] values.\n"
@@ -237,7 +317,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:233
+#: modules/gdscript/doc_classes/@GDScript.xml:234
msgid ""
"Returns the cosine of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -247,7 +327,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:247
+#: modules/gdscript/doc_classes/@GDScript.xml:248
msgid ""
"Returns the hyperbolic cosine of [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -256,11 +336,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:260
+#: modules/gdscript/doc_classes/@GDScript.xml:261
msgid "Converts from decibels to linear energy (audio)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:273
+#: modules/gdscript/doc_classes/@GDScript.xml:274
msgid ""
"Returns the result of [code]value[/code] decreased by [code]step[/code] * "
"[code]amount[/code].\n"
@@ -270,42 +350,44 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:286
+#: modules/gdscript/doc_classes/@GDScript.xml:287
msgid ""
-"Returns degrees converted to radians.\n"
+"Converts an angle expressed in degrees to radians.\n"
"[codeblock]\n"
"# r is 3.141593\n"
"r = deg2rad(180)\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:299
+#: modules/gdscript/doc_classes/@GDScript.xml:300
msgid ""
"Converts a previously converted instance to a dictionary, back into an "
"instance. Useful for deserializing."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:310
-#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:90
+#: modules/gdscript/doc_classes/@GDScript.xml:311
msgid ""
-"Easing function, based on exponent. 0 is constant, 1 is linear, 0 to 1 is "
-"ease-in, 1+ is ease out. Negative values are in-out/out in."
+"Easing function, based on exponent. The curve values are: 0 is constant, 1 "
+"is linear, 0 to 1 is ease-in, 1+ is ease out. Negative values are in-out/out "
+"in."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:319
+#: modules/gdscript/doc_classes/@GDScript.xml:320
msgid ""
"The natural exponential function. It raises the mathematical constant [b]e[/"
"b] to the power of [code]s[/code] and returns it.\n"
-"[b]e[/b] has an approximate value of 2.71828.\n"
+"[b]e[/b] has an approximate value of 2.71828, and can be obtained with "
+"[code]exp(1)[/code].\n"
"For exponents to other bases use the method [method pow].\n"
"[codeblock]\n"
"a = exp(2) # Approximately 7.39\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:333
+#: modules/gdscript/doc_classes/@GDScript.xml:334
msgid ""
-"Rounds [code]s[/code] to the closest smaller integer and returns it.\n"
+"Rounds [code]s[/code] downward (towards negative infinity), returning the "
+"largest whole number that is not more than [code]s[/code].\n"
"[codeblock]\n"
"# a is 2.0\n"
"a = floor(2.99)\n"
@@ -316,7 +398,7 @@ msgid ""
"use [code]int(s)[/code] directly."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:351
+#: modules/gdscript/doc_classes/@GDScript.xml:352
msgid ""
"Returns the floating-point remainder of [code]a/b[/code], keeping the sign "
"of [code]a[/code].\n"
@@ -327,7 +409,7 @@ msgid ""
"For the integer remainder operation, use the % operator."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:367
+#: modules/gdscript/doc_classes/@GDScript.xml:368
msgid ""
"Returns the floating-point modulus of [code]a/b[/code] that wraps equally in "
"positive and negative.\n"
@@ -353,7 +435,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:398
+#: modules/gdscript/doc_classes/@GDScript.xml:399
msgid ""
"Returns a reference to the specified function [code]funcname[/code] in the "
"[code]instance[/code] node. As functions aren't first-class objects in "
@@ -368,7 +450,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:412
+#: modules/gdscript/doc_classes/@GDScript.xml:413
msgid ""
"Returns an array of dictionaries representing the current call stack.\n"
"[codeblock]\n"
@@ -388,7 +470,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:435
+#: modules/gdscript/doc_classes/@GDScript.xml:436
msgid ""
"Returns the integer hash of the variable passed.\n"
"[codeblock]\n"
@@ -396,7 +478,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:447
+#: modules/gdscript/doc_classes/@GDScript.xml:448
msgid ""
"Returns the passed instance converted to a dictionary (useful for "
"serializing).\n"
@@ -414,7 +496,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:468
+#: modules/gdscript/doc_classes/@GDScript.xml:469
msgid ""
"Returns the Object that corresponds to [code]instance_id[/code]. All Objects "
"have a unique instance ID.\n"
@@ -427,7 +509,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:488
+#: modules/gdscript/doc_classes/@GDScript.xml:489
msgid ""
"Returns a normalized value considering the given range. This is the opposite "
"of [method lerp].\n"
@@ -441,33 +523,41 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:506
+#: modules/gdscript/doc_classes/@GDScript.xml:507
msgid ""
"Returns [code]true[/code] if [code]a[/code] and [code]b[/code] are "
-"approximately equal to each other."
+"approximately equal to each other.\n"
+"Here, approximately equal means that [code]a[/code] and [code]b[/code] are "
+"within a small internal epsilon of each other, which scales with the "
+"magnitude of the numbers.\n"
+"Infinity values of the same sign are considered equal."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:515
+#: modules/gdscript/doc_classes/@GDScript.xml:518
msgid ""
"Returns whether [code]s[/code] is an infinity value (either positive "
"infinity or negative infinity)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:524
+#: modules/gdscript/doc_classes/@GDScript.xml:527
msgid ""
"Returns whether [code]instance[/code] is a valid object (e.g. has not been "
"deleted from memory)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:533
-msgid "Returns whether [code]s[/code] is a NaN (Not-A-Number) value."
+#: modules/gdscript/doc_classes/@GDScript.xml:536
+msgid ""
+"Returns whether [code]s[/code] is a NaN (\"Not a Number\" or invalid) value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:542
-msgid "Returns [code]true[/code] if [code]s[/code] is zero or almost zero."
+#: modules/gdscript/doc_classes/@GDScript.xml:545
+msgid ""
+"Returns [code]true[/code] if [code]s[/code] is zero or almost zero.\n"
+"This method is faster than using [method is_equal_approx] with one value as "
+"zero."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:551
+#: modules/gdscript/doc_classes/@GDScript.xml:555
msgid ""
"Returns length of Variant [code]var[/code]. Length is the character count of "
"String, element count of Array, size of Dictionary, etc.\n"
@@ -478,7 +568,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:569
+#: modules/gdscript/doc_classes/@GDScript.xml:573
msgid ""
"Linearly interpolates between two values by a normalized value. This is the "
"opposite of [method inverse_lerp].\n"
@@ -493,7 +583,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:588
+#: modules/gdscript/doc_classes/@GDScript.xml:592
msgid ""
"Linearly interpolates between two angles (in radians) by a normalized "
"value.\n"
@@ -510,7 +600,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:607
+#: modules/gdscript/doc_classes/@GDScript.xml:611
msgid ""
"Converts from linear energy to decibels (audio). This can be used to "
"implement volume sliders that behave as expected (since volume isn't "
@@ -526,20 +616,28 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:622
+#: modules/gdscript/doc_classes/@GDScript.xml:626
msgid ""
-"Loads a resource from the filesystem located at [code]path[/code].\n"
+"Loads a resource from the filesystem located at [code]path[/code]. The "
+"resource is loaded on the method call (unless it's referenced already "
+"elsewhere, e.g. in another script or in the scene), which might cause slight "
+"delay, especially when loading scenes. To avoid unnecessary delays when "
+"loading something multiple times, either store the resource in a variable or "
+"use [method preload].\n"
"[b]Note:[/b] Resource paths can be obtained by right-clicking on a resource "
-"in the FileSystem dock and choosing [b]Copy Path[/b].\n"
+"in the FileSystem dock and choosing \"Copy Path\" or by dragging the file "
+"from the FileSystem dock into the script.\n"
"[codeblock]\n"
-"# Load a scene called main located in the root of the project directory.\n"
-"var main = load(\"res://main.tscn\")\n"
+"# Load a scene called main located in the root of the project directory and "
+"cache it in a variable.\n"
+"var main = load(\"res://main.tscn\") # main will contain a PackedScene "
+"resource.\n"
"[/codeblock]\n"
"[b]Important:[/b] The path must be absolute, a local path will just return "
"[code]null[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:637
+#: modules/gdscript/doc_classes/@GDScript.xml:641
msgid ""
"Natural logarithm. The amount of time needed to reach a certain level of "
"continuous growth.\n"
@@ -547,10 +645,12 @@ msgid ""
"calculators, which uses a base 10 logarithm.\n"
"[codeblock]\n"
"log(10) # Returns 2.302585\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] The logarithm of [code]0[/code] returns [code]-inf[/code], "
+"while negative values return [code]-nan[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:652
+#: modules/gdscript/doc_classes/@GDScript.xml:657
msgid ""
"Returns the maximum of two values.\n"
"[codeblock]\n"
@@ -559,7 +659,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:667
+#: modules/gdscript/doc_classes/@GDScript.xml:672
msgid ""
"Returns the minimum of two values.\n"
"[codeblock]\n"
@@ -568,27 +668,39 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:684
+#: modules/gdscript/doc_classes/@GDScript.xml:689
msgid ""
"Moves [code]from[/code] toward [code]to[/code] by the [code]delta[/code] "
"value.\n"
"Use a negative [code]delta[/code] value to move away.\n"
"[codeblock]\n"
+"move_toward(5, 10, 4) # Returns 9\n"
"move_toward(10, 5, 4) # Returns 6\n"
+"move_toward(10, 5, -1.5) # Returns 11.5\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:697
+#: modules/gdscript/doc_classes/@GDScript.xml:704
msgid ""
-"Returns the nearest larger power of 2 for integer [code]value[/code].\n"
+"Returns the nearest equal or larger power of 2 for integer [code]value[/"
+"code].\n"
+"In other words, returns the smallest value [code]a[/code] where [code]a = "
+"pow(2, n)[/code] such that [code]value <= a[/code] for some non-negative "
+"integer [code]n[/code].\n"
"[codeblock]\n"
"nearest_po2(3) # Returns 4\n"
"nearest_po2(4) # Returns 4\n"
"nearest_po2(5) # Returns 8\n"
-"[/codeblock]"
+"\n"
+"nearest_po2(0) # Returns 0 (this may not be what you expect)\n"
+"nearest_po2(-1) # Returns 0 (this may not be what you expect)\n"
+"[/codeblock]\n"
+"[b]WARNING:[/b] Due to the way it is implemented, this function returns "
+"[code]0[/code] rather than [code]1[/code] for non-positive values of "
+"[code]value[/code] (in reality, 1 is the smallest integer power of 2)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:711
+#: modules/gdscript/doc_classes/@GDScript.xml:723
msgid ""
"Returns an integer representing the Unicode code point of the given Unicode "
"character [code]char[/code].\n"
@@ -600,27 +712,28 @@ msgid ""
"This is the inverse of [method char]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:726
+#: modules/gdscript/doc_classes/@GDScript.xml:738
msgid ""
-"Parse JSON text to a Variant (use [method typeof] to check if it is what you "
-"expect).\n"
-"Be aware that the JSON specification does not define integer or float types, "
-"but only a number type. Therefore, parsing a JSON text will convert all "
-"numerical values to [float] types.\n"
-"Note that JSON objects do not preserve key order like Godot dictionaries, "
-"thus you should not rely on keys being in a certain order if a dictionary is "
-"constructed from JSON. In contrast, JSON arrays retain the order of their "
+"Parse JSON text to a Variant. (Use [method typeof] to check if the Variant's "
+"type is what you expect.)\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, parsing a JSON text will convert "
+"all numerical values to [float] types.\n"
+"[b]Note:[/b] JSON objects do not preserve key order like Godot dictionaries, "
+"thus, you should not rely on keys being in a certain order if a dictionary "
+"is constructed from JSON. In contrast, JSON arrays retain the order of their "
"elements:\n"
"[codeblock]\n"
-"p = parse_json('[\"a\", \"b\", \"c\"]')\n"
-"if typeof(p) == TYPE_ARRAY:\n"
-" print(p[0]) # Prints a\n"
+"var p = JSON.parse('[\"hello\", \"world\", \"!\"]')\n"
+"if typeof(p.result) == TYPE_ARRAY:\n"
+" print(p.result[0]) # Prints \"hello\"\n"
"else:\n"
-" print(\"unexpected results\")\n"
-"[/codeblock]"
+" push_error(\"Unexpected results.\")\n"
+"[/codeblock]\n"
+"See also [JSON] for an alternative way to parse JSON text."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:746
+#: modules/gdscript/doc_classes/@GDScript.xml:759
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:142
msgid ""
"Converts a 2D point expressed in the polar coordinate system (a distance "
@@ -628,7 +741,7 @@ msgid ""
"cartesian coordinate system (X and Y axis)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:757
+#: modules/gdscript/doc_classes/@GDScript.xml:770
msgid ""
"Returns the integer modulus of [code]a/b[/code] that wraps equally in "
"positive and negative.\n"
@@ -654,7 +767,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:788
+#: modules/gdscript/doc_classes/@GDScript.xml:801
msgid ""
"Returns the result of [code]x[/code] raised to the power of [code]y[/code].\n"
"[codeblock]\n"
@@ -662,19 +775,23 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:800
+#: modules/gdscript/doc_classes/@GDScript.xml:813
msgid ""
-"Returns a resource from the filesystem that is loaded during script "
-"parsing.\n"
+"Returns a [Resource] from the filesystem located at [code]path[/code]. The "
+"resource is loaded during script parsing, i.e. is loaded with the script and "
+"[method preload] effectively acts as a reference to that resource. Note that "
+"the method requires a constant path. If you want to load a resource from a "
+"dynamic/variable path, use [method load].\n"
"[b]Note:[/b] Resource paths can be obtained by right clicking on a resource "
-"in the Assets Panel and choosing \"Copy Path\".\n"
+"in the Assets Panel and choosing \"Copy Path\" or by dragging the file from "
+"the FileSystem dock into the script.\n"
"[codeblock]\n"
-"# Load a scene called main located in the root of the project directory.\n"
-"var main = preload(\"res://main.tscn\")\n"
+"# Instance a scene.\n"
+"var diamond = preload(\"res://diamond.tscn\").instance()\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:812
+#: modules/gdscript/doc_classes/@GDScript.xml:825
msgid ""
"Converts one or more arguments to strings in the best way possible and "
"prints them to the console.\n"
@@ -684,11 +801,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:823
+#: modules/gdscript/doc_classes/@GDScript.xml:836
msgid "Like [method print], but prints only when used in debug mode."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:830
+#: modules/gdscript/doc_classes/@GDScript.xml:843
msgid ""
"Prints a stack track at code location, only works when running with debugger "
"turned on.\n"
@@ -698,7 +815,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:841
+#: modules/gdscript/doc_classes/@GDScript.xml:854
msgid ""
"Prints one or more arguments to strings in the best way possible to standard "
"error line.\n"
@@ -707,7 +824,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:851
+#: modules/gdscript/doc_classes/@GDScript.xml:864
msgid ""
"Prints one or more arguments to strings in the best way possible to console. "
"No newline is added at the end.\n"
@@ -721,7 +838,7 @@ msgid ""
"method, such as [method print]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:864
+#: modules/gdscript/doc_classes/@GDScript.xml:877
msgid ""
"Prints one or more arguments to the console with a space between each "
"argument.\n"
@@ -730,7 +847,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:874
+#: modules/gdscript/doc_classes/@GDScript.xml:887
msgid ""
"Prints one or more arguments to the console with a tab between each "
"argument.\n"
@@ -739,7 +856,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:886
+#: modules/gdscript/doc_classes/@GDScript.xml:899
msgid ""
"Pushes an error message to Godot's built-in debugger and to the OS "
"terminal.\n"
@@ -749,7 +866,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:898
+#: modules/gdscript/doc_classes/@GDScript.xml:911
msgid ""
"Pushes a warning message to Godot's built-in debugger and to the OS "
"terminal.\n"
@@ -759,15 +876,15 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:910
+#: modules/gdscript/doc_classes/@GDScript.xml:923
msgid ""
-"Converts from radians to degrees.\n"
+"Converts an angle expressed in radians to degrees.\n"
"[codeblock]\n"
"rad2deg(0.523599) # Returns 30\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:924
+#: modules/gdscript/doc_classes/@GDScript.xml:937
msgid ""
"Random range, any floating point value between [code]from[/code] and "
"[code]to[/code].\n"
@@ -776,7 +893,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:936
+#: modules/gdscript/doc_classes/@GDScript.xml:949
msgid ""
"Random from seed: pass a [code]seed[/code], and an array with both number "
"and new seed is returned. \"Seed\" here refers to the internal state of the "
@@ -784,7 +901,7 @@ msgid ""
"implementation is 64 bits."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:943
+#: modules/gdscript/doc_classes/@GDScript.xml:956
msgid ""
"Returns a random floating point value on the interval [code][0, 1][/code].\n"
"[codeblock]\n"
@@ -792,7 +909,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:953
+#: modules/gdscript/doc_classes/@GDScript.xml:966
msgid ""
"Returns a random unsigned 32 bit integer. Use remainder to obtain a random "
"value in the interval [code][0, N - 1][/code] (where N is smaller than "
@@ -805,7 +922,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:966
+#: modules/gdscript/doc_classes/@GDScript.xml:979
msgid ""
"Randomizes the seed (or the internal state) of the random number generator. "
"Current implementation reseeds using a number based on time.\n"
@@ -815,7 +932,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:977
+#: modules/gdscript/doc_classes/@GDScript.xml:990
msgid ""
"Returns an array with the given range. Range can be 1 argument N (0 to N-1), "
"two arguments (initial, final-1) or three arguments (initial, final-1, "
@@ -845,7 +962,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1017
+#: modules/gdscript/doc_classes/@GDScript.xml:1030
msgid ""
"Maps a [code]value[/code] from range [code][istart, istop][/code] to [code]"
"[ostart, ostop][/code].\n"
@@ -854,16 +971,16 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1029
+#: modules/gdscript/doc_classes/@GDScript.xml:1042
msgid ""
-"Returns the integral value that is nearest to [code]s[/code], with halfway "
-"cases rounded away from zero.\n"
+"Rounds [code]s[/code] to the nearest whole number, with halfway cases "
+"rounded away from zero.\n"
"[codeblock]\n"
"round(2.6) # Returns 3\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1041
+#: modules/gdscript/doc_classes/@GDScript.xml:1054
msgid ""
"Sets seed for the random number generator.\n"
"[codeblock]\n"
@@ -872,7 +989,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1054
+#: modules/gdscript/doc_classes/@GDScript.xml:1067
msgid ""
"Returns the sign of [code]s[/code]: -1 or 1. Returns 0 if [code]s[/code] is "
"0.\n"
@@ -883,7 +1000,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1068
+#: modules/gdscript/doc_classes/@GDScript.xml:1081
msgid ""
"Returns the sine of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -891,7 +1008,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1080
+#: modules/gdscript/doc_classes/@GDScript.xml:1093
msgid ""
"Returns the hyperbolic sine of [code]s[/code].\n"
"[codeblock]\n"
@@ -900,27 +1017,37 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1097
+#: modules/gdscript/doc_classes/@GDScript.xml:1110
msgid ""
-"Returns a number smoothly interpolated between the [code]from[/code] and "
-"[code]to[/code], based on the [code]weight[/code]. Similar to [method lerp], "
-"but interpolates faster at the beginning and slower at the end.\n"
+"Returns the result of smoothly interpolating the value of [code]s[/code] "
+"between [code]0[/code] and [code]1[/code], based on the where [code]s[/code] "
+"lies with respect to the edges [code]from[/code] and [code]to[/code].\n"
+"The return value is [code]0[/code] if [code]s <= from[/code], and [code]1[/"
+"code] if [code]s >= to[/code]. If [code]s[/code] lies between [code]from[/"
+"code] and [code]to[/code], the returned value follows an S-shaped curve that "
+"maps [code]s[/code] between [code]0[/code] and [code]1[/code].\n"
+"This S-shaped curve is the cubic Hermite interpolator, given by [code]f(s) = "
+"3*s^2 - 2*s^3[/code].\n"
"[codeblock]\n"
-"smoothstep(0, 2, 0.5) # Returns 0.15\n"
+"smoothstep(0, 2, -5.0) # Returns 0.0\n"
+"smoothstep(0, 2, 0.5) # Returns 0.15625\n"
"smoothstep(0, 2, 1.0) # Returns 0.5\n"
"smoothstep(0, 2, 2.0) # Returns 1.0\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1111
+#: modules/gdscript/doc_classes/@GDScript.xml:1127
msgid ""
-"Returns the square root of [code]s[/code].\n"
+"Returns the square root of [code]s[/code], where [code]s[/code] is a non-"
+"negative number.\n"
"[codeblock]\n"
"sqrt(9) # Returns 3\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b]Negative values of [code]s[/code] return NaN. If you need "
+"negative inputs, use [code]System.Numerics.Complex[/code] in C#."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1123
+#: modules/gdscript/doc_classes/@GDScript.xml:1140
msgid ""
"Returns the position of the first non-zero digit, after the decimal point. "
"Note that the maximum return value is 10, which is a design decision in the "
@@ -935,7 +1062,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1142
+#: modules/gdscript/doc_classes/@GDScript.xml:1159
msgid ""
"Snaps float value [code]s[/code] to a given [code]step[/code]. This can also "
"be used to round a floating point number to an arbitrary number of "
@@ -946,7 +1073,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1153
+#: modules/gdscript/doc_classes/@GDScript.xml:1170
msgid ""
"Converts one or more arguments to string in the best way possible.\n"
"[codeblock]\n"
@@ -957,7 +1084,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1168
+#: modules/gdscript/doc_classes/@GDScript.xml:1185
msgid ""
"Converts a formatted string that was returned by [method var2str] to the "
"original value.\n"
@@ -968,7 +1095,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1182
+#: modules/gdscript/doc_classes/@GDScript.xml:1199
msgid ""
"Returns the tangent of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -976,7 +1103,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1194
+#: modules/gdscript/doc_classes/@GDScript.xml:1211
msgid ""
"Returns the hyperbolic tangent of [code]s[/code].\n"
"[codeblock]\n"
@@ -985,18 +1112,25 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1207
+#: modules/gdscript/doc_classes/@GDScript.xml:1224
msgid ""
-"Converts a Variant [code]var[/code] to JSON text and return the result. "
+"Converts a [Variant] [code]var[/code] to JSON text and return the result. "
"Useful for serializing data to store or send over the network.\n"
"[codeblock]\n"
+"# Both numbers below are integers.\n"
"a = { \"a\": 1, \"b\": 2 }\n"
"b = to_json(a)\n"
"print(b) # {\"a\":1, \"b\":2}\n"
-"[/codeblock]"
+"# Both numbers above are floats, even if they display without any decimal "
+"places.\n"
+"[/codeblock]\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, converting a [Variant] to JSON "
+"text will convert all numerical values to [float] types.\n"
+"See also [JSON] for an alternative way to convert a [Variant] to JSON text."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1221
+#: modules/gdscript/doc_classes/@GDScript.xml:1242
msgid ""
"Returns whether the given class exists in [ClassDB].\n"
"[codeblock]\n"
@@ -1005,7 +1139,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1234
+#: modules/gdscript/doc_classes/@GDScript.xml:1255
msgid ""
"Returns the internal type of the given Variant object, using the [enum "
"Variant.Type] values.\n"
@@ -1018,7 +1152,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1250
+#: modules/gdscript/doc_classes/@GDScript.xml:1271
msgid ""
"Checks that [code]json[/code] is valid JSON data. Returns an empty string if "
"valid, or an error message otherwise.\n"
@@ -1026,20 +1160,20 @@ msgid ""
"j = to_json([1, 2, 3])\n"
"v = validate_json(j)\n"
"if not v:\n"
-" print(\"valid\")\n"
+" print(\"Valid JSON.\")\n"
"else:\n"
-" prints(\"invalid\", v)\n"
+" push_error(\"Invalid JSON: \" + v)\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1269
+#: modules/gdscript/doc_classes/@GDScript.xml:1290
msgid ""
"Encodes a variable value to a byte array. When [code]full_objects[/code] is "
"[code]true[/code] encoding objects is allowed (and can potentially include "
"code)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1278
+#: modules/gdscript/doc_classes/@GDScript.xml:1299
msgid ""
"Converts a Variant [code]var[/code] to a formatted string that can later be "
"parsed using [method str2var].\n"
@@ -1056,7 +1190,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1298
+#: modules/gdscript/doc_classes/@GDScript.xml:1319
msgid ""
"Returns a weak reference to an object.\n"
"A weak reference to an object is not enough to keep the object alive: when "
@@ -1066,135 +1200,67 @@ msgid ""
"reference may return the object even if there are no strong references to it."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1312
+#: modules/gdscript/doc_classes/@GDScript.xml:1333
msgid ""
"Wraps float [code]value[/code] between [code]min[/code] and [code]max[/"
"code].\n"
"Usable for creating loop-alike behavior or infinite surfaces.\n"
"[codeblock]\n"
-"# a is 0.5\n"
-"a = wrapf(10.5, 0.0, 10.0)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# a is 9.5\n"
-"a = wrapf(-0.5, 0.0, 10.0)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# Infinite loop between 0.0 and 0.99\n"
-"f = wrapf(f + 0.1, 0.0, 1.0)\n"
+"# Infinite loop between 5.0 and 9.9\n"
+"value = wrapf(value + 0.1, 5.0, 10.0)\n"
"[/codeblock]\n"
"[codeblock]\n"
"# Infinite rotation (in radians)\n"
"angle = wrapf(angle + 0.1, 0.0, TAU)\n"
"[/codeblock]\n"
-"[b]Note:[/b] If you just want to wrap between 0.0 and [code]n[/code] (where "
-"[code]n[/code] is a positive floating-point value), it is better for "
-"performance to use the [method fmod] method like [code]fmod(number, n)[/"
-"code].\n"
-"[code]wrapf[/code] is more flexible than using the [method fmod] approach by "
-"giving the user a simple control over the minimum value. It also fully "
-"supports negative numbers, e.g.\n"
"[codeblock]\n"
"# Infinite rotation (in radians)\n"
"angle = wrapf(angle + 0.1, -PI, PI)\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] If [code]min[/code] is [code]0[/code], this is equivalent to "
+"[method fposmod], so prefer using that instead.\n"
+"[code]wrapf[/code] is more flexible than using the [method fposmod] approach "
+"by giving the user control over the minimum value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1348
+#: modules/gdscript/doc_classes/@GDScript.xml:1361
msgid ""
"Wraps integer [code]value[/code] between [code]min[/code] and [code]max[/"
"code].\n"
"Usable for creating loop-alike behavior or infinite surfaces.\n"
"[codeblock]\n"
-"# a is 0\n"
-"a = wrapi(10, 0, 10)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# a is 9\n"
-"a = wrapi(-1, 0, 10)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# Infinite loop between 0 and 9\n"
-"frame = wrapi(frame + 1, 0, 10)\n"
+"# Infinite loop between 5 and 9\n"
+"frame = wrapi(frame + 1, 5, 10)\n"
"[/codeblock]\n"
-"[b]Note:[/b] If you just want to wrap between 0 and [code]n[/code] (where "
-"[code]n[/code] is a positive integer value), it is better for performance to "
-"use the modulo operator like [code]number % n[/code].\n"
-"[code]wrapi[/code] is more flexible than using the modulo approach by giving "
-"the user a simple control over the minimum value. It also fully supports "
-"negative numbers, e.g.\n"
"[codeblock]\n"
"# result is -2\n"
"var result = wrapi(-6, -5, -1)\n"
-"[/codeblock]"
-msgstr ""
-
-#: modules/gdscript/doc_classes/@GDScript.xml:1378
-msgid ""
-"Stops the function execution and returns the current suspended state to the "
-"calling function.\n"
-"From the caller, call [method GDScriptFunctionState.resume] on the state to "
-"resume execution. This invalidates the state. Within the resumed function, "
-"[code]yield()[/code] returns whatever was passed to the [code]resume()[/"
-"code] function call.\n"
-"If passed an object and a signal, the execution is resumed when the object "
-"emits the given signal. In this case, [code]yield()[/code] returns the "
-"argument passed to [code]emit_signal()[/code] if the signal takes only one "
-"argument, or an array containing all the arguments passed to "
-"[code]emit_signal()[/code] if the signal takes multiple arguments.\n"
-"You can also use [code]yield[/code] to wait for a function to finish:\n"
-"[codeblock]\n"
-"func _ready():\n"
-" yield(countdown(), \"completed\") # waiting for the countdown() function "
-"to complete\n"
-" print('Ready')\n"
-"\n"
-"func countdown():\n"
-" yield(get_tree(), \"idle_frame\") # returns a GDScriptFunctionState "
-"object to _ready()\n"
-" print(3)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-" print(2)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-" print(1)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-"\n"
-"# prints:\n"
-"# 3\n"
-"# 2\n"
-"# 1\n"
-"# Ready\n"
"[/codeblock]\n"
-"When yielding on a function, the [code]completed[/code] signal will be "
-"emitted automatically when the function returns. It can, therefore, be used "
-"as the [code]signal[/code] parameter of the [code]yield[/code] method to "
-"resume.\n"
-"In order to yield on a function, the resulting function should also return a "
-"[code]GDScriptFunctionState[/code]. Notice [code]yield(get_tree(), "
-"\"idle_frame\")[/code] from the above example."
+"[b]Note:[/b] If [code]min[/code] is [code]0[/code], this is equivalent to "
+"[method posmod], so prefer using that instead.\n"
+"[code]wrapi[/code] is more flexible than using the [method posmod] approach "
+"by giving the user control over the minimum value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1409
+#: modules/gdscript/doc_classes/@GDScript.xml:1378
msgid ""
"Constant that represents how many times the diameter of a circle fits around "
-"its perimeter."
+"its perimeter. This is equivalent to [code]TAU / 2[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1412
-msgid "The circle constant, the circumference of the unit circle."
+#: modules/gdscript/doc_classes/@GDScript.xml:1381
+msgid "The circle constant, the circumference of the unit circle in radians."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1415
-msgid "A positive infinity. (For negative infinity, use -INF)."
+#: modules/gdscript/doc_classes/@GDScript.xml:1384
+msgid "Positive infinity. For negative infinity, use -INF."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1418
+#: modules/gdscript/doc_classes/@GDScript.xml:1387
msgid ""
-"Macro constant that expands to an expression of type float that represents a "
-"NaN.\n"
-"The NaN values are used to identify undefined or non-representable values "
-"for floating-point elements, such as the square root of negative numbers or "
-"the result of 0/0."
+"\"Not a Number\", an invalid value. [code]NaN[/code] has special properties, "
+"including that it is not equal to itself. It is output by some invalid "
+"operations, such as dividing zero by zero."
msgstr ""
#: doc/classes/@GlobalScope.xml:4
@@ -3430,130 +3496,141 @@ msgid ""
msgstr ""
#: doc/classes/AABB.xml:10 doc/classes/Plane.xml:10 doc/classes/Rect2.xml:11
-#: doc/classes/Rect2i.xml:11 doc/classes/Transform.xml:10
+#: doc/classes/Rect2i.xml:11 doc/classes/Transform.xml:11
#: doc/classes/Vector2.xml:12 doc/classes/Vector2i.xml:12
#: doc/classes/Vector3.xml:12 doc/classes/Vector3i.xml:12
msgid "https://docs.godotengine.org/en/latest/tutorials/math/index.html"
msgstr ""
#: doc/classes/AABB.xml:21
-msgid "Optional constructor, accepts position and size."
+msgid "Constructs an [AABB] from a position and size."
+msgstr ""
+
+#: doc/classes/AABB.xml:28
+msgid ""
+"Returns an AABB with equivalent position and size, modified so that the most-"
+"negative corner is the origin and the size is positive."
msgstr ""
-#: doc/classes/AABB.xml:30
+#: doc/classes/AABB.xml:37
msgid ""
"Returns [code]true[/code] if this [AABB] completely encloses another one."
msgstr ""
-#: doc/classes/AABB.xml:39
+#: doc/classes/AABB.xml:46
msgid "Returns this [AABB] expanded to include a given point."
msgstr ""
-#: doc/classes/AABB.xml:46
+#: doc/classes/AABB.xml:53
msgid "Returns the volume of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:55
+#: doc/classes/AABB.xml:62
msgid "Gets the position of the 8 endpoints of the [AABB] in space."
msgstr ""
-#: doc/classes/AABB.xml:62
+#: doc/classes/AABB.xml:69
msgid "Returns the normalized longest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:69
+#: doc/classes/AABB.xml:76
msgid ""
"Returns the index of the longest axis of the [AABB] (according to "
"[Vector3]'s [code]AXIS_*[/code] constants)."
msgstr ""
-#: doc/classes/AABB.xml:76
+#: doc/classes/AABB.xml:83
msgid "Returns the scalar length of the longest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:83
+#: doc/classes/AABB.xml:90
msgid "Returns the normalized shortest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:90
+#: doc/classes/AABB.xml:97
msgid ""
"Returns the index of the shortest axis of the [AABB] (according to "
"[Vector3]::AXIS* enum)."
msgstr ""
-#: doc/classes/AABB.xml:97
+#: doc/classes/AABB.xml:104
msgid "Returns the scalar length of the shortest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:106
+#: doc/classes/AABB.xml:113
msgid ""
"Returns the support point in a given direction. This is useful for collision "
"detection algorithms."
msgstr ""
-#: doc/classes/AABB.xml:115
+#: doc/classes/AABB.xml:122
msgid ""
"Returns a copy of the [AABB] grown a given amount of units towards all the "
"sides."
msgstr ""
-#: doc/classes/AABB.xml:122
+#: doc/classes/AABB.xml:129
msgid "Returns [code]true[/code] if the [AABB] is flat or empty."
msgstr ""
-#: doc/classes/AABB.xml:129
+#: doc/classes/AABB.xml:136
msgid "Returns [code]true[/code] if the [AABB] is empty."
msgstr ""
-#: doc/classes/AABB.xml:138
+#: doc/classes/AABB.xml:145
msgid "Returns [code]true[/code] if the [AABB] contains a point."
msgstr ""
-#: doc/classes/AABB.xml:147
+#: doc/classes/AABB.xml:154
msgid ""
"Returns the intersection between two [AABB]. An empty AABB (size 0,0,0) is "
"returned on failure."
msgstr ""
-#: doc/classes/AABB.xml:156
+#: doc/classes/AABB.xml:163
msgid "Returns [code]true[/code] if the [AABB] overlaps with another."
msgstr ""
-#: doc/classes/AABB.xml:165
+#: doc/classes/AABB.xml:172
msgid "Returns [code]true[/code] if the [AABB] is on both sides of a plane."
msgstr ""
-#: doc/classes/AABB.xml:176
+#: doc/classes/AABB.xml:183
msgid ""
"Returns [code]true[/code] if the [AABB] intersects the line segment between "
"[code]from[/code] and [code]to[/code]."
msgstr ""
-#: doc/classes/AABB.xml:185
+#: doc/classes/AABB.xml:192
msgid ""
"Returns [code]true[/code] if this [AABB] and [code]aabb[/code] are "
"approximately equal, by calling [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/AABB.xml:194
+#: doc/classes/AABB.xml:201
msgid ""
"Returns a larger [AABB] that contains both this [AABB] and [code]with[/code]."
msgstr ""
-#: doc/classes/AABB.xml:200
+#: doc/classes/AABB.xml:207 doc/classes/Rect2.xml:174
+#: doc/classes/Rect2i.xml:163
msgid ""
-"Ending corner. This is calculated as [code]position + size[/code]. Changing "
-"this property changes [member size] accordingly."
+"Ending corner. This is calculated as [code]position + size[/code]. Setting "
+"this value will change the size."
msgstr ""
-#: doc/classes/AABB.xml:203
-msgid "Beginning corner."
+#: doc/classes/AABB.xml:210 doc/classes/Rect2.xml:177
+#: doc/classes/Rect2i.xml:166
+msgid "Beginning corner. Typically has values lower than [member end]."
msgstr ""
-#: doc/classes/AABB.xml:206 doc/classes/Rect2.xml:180
+#: doc/classes/AABB.xml:213 doc/classes/Rect2.xml:180
#: doc/classes/Rect2i.xml:169
-msgid "Size from position to end."
+msgid ""
+"Size from [member position] to [member end]. Typically all components are "
+"positive.\n"
+"If the size is negative, you can use [method abs] to fix it."
msgstr ""
#: doc/classes/AcceptDialog.xml:4
@@ -3617,11 +3694,11 @@ msgstr ""
msgid "The text displayed by the dialog."
msgstr ""
-#: doc/classes/AcceptDialog.xml:82
+#: doc/classes/AcceptDialog.xml:83
msgid "Emitted when the dialog is accepted, i.e. the OK button is pressed."
msgstr ""
-#: doc/classes/AcceptDialog.xml:89
+#: doc/classes/AcceptDialog.xml:90
msgid "Emitted when a custom button is pressed. See [method add_button]."
msgstr ""
@@ -3674,7 +3751,7 @@ msgstr ""
#: doc/classes/AESContext.xml:54
msgid ""
"Get the current IV state for this context (IV gets updated when calling "
-"[method update]). You normally don't need this funciton.\n"
+"[method update]). You normally don't need this function.\n"
"Note: This function only makes sense when the context is started with "
"[constant MODE_CBC_ENCRYPT] or [constant MODE_CBC_DECRYPT]."
msgstr ""
@@ -3752,12 +3829,14 @@ msgid "If [code]true[/code], texture will be centered."
msgstr ""
#: doc/classes/AnimatedSprite2D.xml:46 doc/classes/Sprite2D.xml:41
-#: doc/classes/SpriteBase3D.xml:61 doc/classes/TextureRect.xml:18
+#: doc/classes/SpriteBase3D.xml:61 doc/classes/TextureButton.xml:19
+#: doc/classes/TextureRect.xml:18
msgid "If [code]true[/code], texture is flipped horizontally."
msgstr ""
#: doc/classes/AnimatedSprite2D.xml:49 doc/classes/Sprite2D.xml:44
-#: doc/classes/SpriteBase3D.xml:64 doc/classes/TextureRect.xml:21
+#: doc/classes/SpriteBase3D.xml:64 doc/classes/TextureButton.xml:22
+#: doc/classes/TextureRect.xml:21
msgid "If [code]true[/code], texture is flipped vertically."
msgstr ""
@@ -3924,10 +4003,10 @@ msgid ""
"[codeblock]\n"
"# This creates an animation that makes the node \"Enemy\" move to the right "
"by\n"
-"# 100 pixels in 1 second.\n"
+"# 100 pixels in 0.5 seconds.\n"
"var animation = Animation.new()\n"
"var track_index = animation.add_track(Animation.TYPE_VALUE)\n"
-"animation.track_set_path(track_index, \"Enemy:position.x\")\n"
+"animation.track_set_path(track_index, \"Enemy:position:x\")\n"
"animation.track_insert_key(track_index, 0.0, 0)\n"
"animation.track_insert_key(track_index, 0.5, 100)\n"
"[/codeblock]\n"
@@ -6055,10 +6134,10 @@ msgstr ""
msgid ""
"Returns [code]true[/code] if the array contains the given value.\n"
"[codeblock]\n"
-"[\"inside\", 7].has(\"inside\") == true\n"
-"[\"inside\", 7].has(\"outside\") == false\n"
-"[\"inside\", 7].has(7) == true\n"
-"[\"inside\", 7].has(\"7\") == false\n"
+"print([\"inside\", 7].has(\"inside\")) # True\n"
+"print([\"inside\", 7].has(\"outside\")) # False\n"
+"print([\"inside\", 7].has(7)) # True\n"
+"print([\"inside\", 7].has(\"7\")) # False\n"
"[/codeblock]\n"
"[b]Note:[/b] This is equivalent to using the [code]in[/code] operator as "
"follows:\n"
@@ -6079,11 +6158,11 @@ msgid ""
"valid, or at the end of the array ([code]pos == size()[/code])."
msgstr ""
-#: doc/classes/Array.xml:265 doc/classes/PackedByteArray.xml:107
-#: doc/classes/PackedColorArray.xml:62 doc/classes/PackedFloat32Array.xml:63
-#: doc/classes/PackedFloat64Array.xml:63 doc/classes/PackedInt32Array.xml:63
-#: doc/classes/PackedInt64Array.xml:63 doc/classes/PackedStringArray.xml:62
-#: doc/classes/PackedVector2Array.xml:62 doc/classes/PackedVector3Array.xml:62
+#: doc/classes/Array.xml:265 doc/classes/PackedByteArray.xml:116
+#: doc/classes/PackedColorArray.xml:71 doc/classes/PackedFloat32Array.xml:72
+#: doc/classes/PackedFloat64Array.xml:72 doc/classes/PackedInt32Array.xml:72
+#: doc/classes/PackedInt64Array.xml:72 doc/classes/PackedStringArray.xml:71
+#: doc/classes/PackedVector2Array.xml:71 doc/classes/PackedVector3Array.xml:71
msgid "Reverses the order of the elements in the array."
msgstr ""
@@ -6113,8 +6192,8 @@ msgid ""
"code] if the array is empty."
msgstr ""
-#: doc/classes/Array.xml:302 doc/classes/PackedByteArray.xml:116
-#: doc/classes/PackedFloat32Array.xml:72 doc/classes/PackedFloat64Array.xml:72
+#: doc/classes/Array.xml:302 doc/classes/PackedByteArray.xml:125
+#: doc/classes/PackedFloat32Array.xml:81 doc/classes/PackedFloat64Array.xml:81
msgid "Appends an element at the end of the array."
msgstr ""
@@ -6122,11 +6201,11 @@ msgstr ""
msgid "Adds an element at the beginning of the array."
msgstr ""
-#: doc/classes/Array.xml:320 doc/classes/PackedByteArray.xml:125
-#: doc/classes/PackedColorArray.xml:80 doc/classes/PackedFloat32Array.xml:81
-#: doc/classes/PackedFloat64Array.xml:81 doc/classes/PackedInt32Array.xml:81
-#: doc/classes/PackedInt64Array.xml:81 doc/classes/PackedStringArray.xml:80
-#: doc/classes/PackedVector2Array.xml:80 doc/classes/PackedVector3Array.xml:80
+#: doc/classes/Array.xml:320 doc/classes/PackedByteArray.xml:134
+#: doc/classes/PackedColorArray.xml:89 doc/classes/PackedFloat32Array.xml:90
+#: doc/classes/PackedFloat64Array.xml:90 doc/classes/PackedInt32Array.xml:90
+#: doc/classes/PackedInt64Array.xml:90 doc/classes/PackedStringArray.xml:89
+#: doc/classes/PackedVector2Array.xml:89 doc/classes/PackedVector3Array.xml:89
msgid "Removes an element from the array by index."
msgstr ""
@@ -6409,7 +6488,7 @@ msgid ""
msgstr ""
#: doc/classes/ArrayMesh.xml:235 doc/classes/Mesh.xml:210
-#: doc/classes/RenderingServer.xml:3115
+#: doc/classes/RenderingServer.xml:3111
msgid "Represents the size of the [enum ArrayType] enum."
msgstr ""
@@ -8226,7 +8305,9 @@ msgid ""
msgstr ""
#: doc/classes/BaseButton.xml:16
-msgid "Called when the button is pressed."
+msgid ""
+"Called when the button is pressed. If you need to know the button's pressed "
+"state (and [member toggle_mode] is active), use [method _toggled] instead."
msgstr ""
#: doc/classes/BaseButton.xml:25
@@ -8320,43 +8401,45 @@ msgstr ""
msgid ""
"Emitted when the button is toggled or pressed. This is on [signal "
"button_down] if [member action_mode] is [constant ACTION_MODE_BUTTON_PRESS] "
-"and on [signal button_up] otherwise."
+"and on [signal button_up] otherwise.\n"
+"If you need to know the button's pressed state (and [member toggle_mode] is "
+"active), use [signal toggled] instead."
msgstr ""
-#: doc/classes/BaseButton.xml:98
+#: doc/classes/BaseButton.xml:99
msgid ""
"Emitted when the button was just toggled between pressed and normal states "
"(only if [member toggle_mode] is active). The new state is contained in the "
"[code]button_pressed[/code] argument."
msgstr ""
-#: doc/classes/BaseButton.xml:104
+#: doc/classes/BaseButton.xml:105
msgid ""
"The normal state (i.e. not pressed, not hovered, not toggled and enabled) of "
"buttons."
msgstr ""
-#: doc/classes/BaseButton.xml:107
+#: doc/classes/BaseButton.xml:108
msgid "The state of buttons are pressed."
msgstr ""
-#: doc/classes/BaseButton.xml:110
+#: doc/classes/BaseButton.xml:111
msgid "The state of buttons are hovered."
msgstr ""
-#: doc/classes/BaseButton.xml:113
+#: doc/classes/BaseButton.xml:114
msgid "The state of buttons are disabled."
msgstr ""
-#: doc/classes/BaseButton.xml:116
+#: doc/classes/BaseButton.xml:117
msgid "The state of buttons are both hovered and pressed."
msgstr ""
-#: doc/classes/BaseButton.xml:119
+#: doc/classes/BaseButton.xml:120
msgid "Require just a press to consider the button clicked."
msgstr ""
-#: doc/classes/BaseButton.xml:122
+#: doc/classes/BaseButton.xml:123
msgid ""
"Require a press and a subsequent release before considering the button "
"clicked."
@@ -9049,22 +9132,22 @@ msgstr ""
msgid "Represents the size of the [enum TextureParam] enum."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:451 doc/classes/RenderingServer.xml:3657
-#: doc/classes/Viewport.xml:390
+#: doc/classes/BaseMaterial3D.xml:451 doc/classes/RenderingServer.xml:3668
+#: doc/classes/Viewport.xml:393
msgid ""
"The texture filter reads from the nearest pixel only. The simplest and "
"fastest method of filtering, but the texture will look pixelized."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:454 doc/classes/RenderingServer.xml:3660
-#: doc/classes/Viewport.xml:393
+#: doc/classes/BaseMaterial3D.xml:454 doc/classes/RenderingServer.xml:3671
+#: doc/classes/Viewport.xml:396
msgid ""
"The texture filter blends between the nearest 4 pixels. Use this when you "
"want to avoid a pixelated style, but do not want mipmaps."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:457 doc/classes/RenderingServer.xml:3663
-#: doc/classes/Viewport.xml:396
+#: doc/classes/BaseMaterial3D.xml:457 doc/classes/RenderingServer.xml:3674
+#: doc/classes/Viewport.xml:399
msgid ""
"The texture filter reads from the nearest pixel in the nearest mipmap. The "
"fastest way to read from textures with mipmaps."
@@ -9077,14 +9160,14 @@ msgid ""
"smooth out pixels that are far from the camera."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:463 doc/classes/RenderingServer.xml:3669
+#: doc/classes/BaseMaterial3D.xml:463 doc/classes/RenderingServer.xml:3680
msgid ""
"The texture filter reads from the nearest pixel, but selects a mipmap based "
"on the angle between the surface and the camera view. This reduces artifacts "
"on surfaces that are almost in line with the camera."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:466 doc/classes/RenderingServer.xml:3672
+#: doc/classes/BaseMaterial3D.xml:466 doc/classes/RenderingServer.xml:3683
msgid ""
"The texture filter blends between the nearest 4 pixels and selects a mipmap "
"based on the angle between the surface and the camera view. This reduces "
@@ -9093,7 +9176,7 @@ msgid ""
"texturing."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:469 doc/classes/CanvasItem.xml:685
+#: doc/classes/BaseMaterial3D.xml:469 doc/classes/CanvasItem.xml:695
msgid "Represents the size of the [enum TextureFilter] enum."
msgstr ""
@@ -9316,8 +9399,8 @@ msgstr ""
msgid "Enables the shadow to opacity feature."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:622 doc/classes/RenderingServer.xml:3684
-#: doc/classes/Viewport.xml:408
+#: doc/classes/BaseMaterial3D.xml:622 doc/classes/RenderingServer.xml:3695
+#: doc/classes/Viewport.xml:411
msgid ""
"Enables the texture to repeat when UV coordinates are outside the 0-1 range. "
"If using one of the linear filtering modes, this can result in artifacts at "
@@ -9458,167 +9541,195 @@ msgstr ""
#: doc/classes/Basis.xml:7
msgid ""
-"3×3 matrix used for 3D rotation and scale. Contains 3 vector fields X, Y and "
-"Z as its columns, which can be interpreted as the local basis vectors of a "
-"transformation. Can also be accessed as array of 3D vectors. These vectors "
-"are orthogonal to each other, but are not necessarily normalized (due to "
-"scaling). Almost always used as an orthogonal basis for a [Transform].\n"
-"For such use, it is composed of a scaling and a rotation matrix, in that "
-"order (M = R.S)."
+"3×3 matrix used for 3D rotation and scale. Almost always used as an "
+"orthogonal basis for a Transform.\n"
+"Contains 3 vector fields X, Y and Z as its columns, which are typically "
+"interpreted as the local basis vectors of a transformation. For such use, it "
+"is composed of a scaling and a rotation matrix, in that order (M = R.S).\n"
+"Can also be accessed as array of 3D vectors. These vectors are normally "
+"orthogonal to each other, but are not necessarily normalized (due to "
+"scaling).\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
msgstr ""
-#: doc/classes/Basis.xml:11 doc/classes/Transform.xml:11
+#: doc/classes/Basis.xml:13 doc/classes/Transform.xml:12
+#: doc/classes/Transform2D.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/math/"
+"matrices_and_transforms.html"
+msgstr ""
+
+#: doc/classes/Basis.xml:14 doc/classes/Transform.xml:13
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/using_transforms.html"
msgstr ""
-#: doc/classes/Basis.xml:20
-msgid "Create a rotation matrix from the given quaternion."
+#: doc/classes/Basis.xml:23
+msgid "Constructs a pure rotation basis matrix from the given quaternion."
msgstr ""
-#: doc/classes/Basis.xml:29
+#: doc/classes/Basis.xml:32
msgid ""
-"Create a rotation matrix (in the YXZ convention: first Z, then X, and Y "
-"last) from the specified Euler angles, given in the vector format as (X "
-"angle, Y angle, Z angle)."
+"Constructs a pure rotation basis matrix from the given Euler angles (in the "
+"YXZ convention: when *composing*, first Y, then X, and Z last), given in the "
+"vector format as (X angle, Y angle, Z angle).\n"
+"Consider using the [Quat] constructor instead, which uses a quaternion "
+"instead of Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:40
+#: doc/classes/Basis.xml:44
msgid ""
-"Create a rotation matrix which rotates around the given axis by the "
-"specified angle, in radians. The axis must be a normalized vector."
+"Constructs a pure rotation basis matrix, rotated around the given "
+"[code]axis[/code] by [code]phi[/code], in radians. The axis must be a "
+"normalized vector."
msgstr ""
-#: doc/classes/Basis.xml:53
-msgid "Create a matrix from 3 axis vectors."
+#: doc/classes/Basis.xml:57
+msgid "Constructs a basis matrix from 3 axis vectors (matrix columns)."
msgstr ""
-#: doc/classes/Basis.xml:60
-msgid "Returns the determinant of the matrix."
+#: doc/classes/Basis.xml:64
+msgid ""
+"Returns the determinant of the basis matrix. If the basis is uniformly "
+"scaled, its determinant is the square of the scale.\n"
+"A negative determinant means the basis has a negative scale. A zero "
+"determinant means the basis isn't invertible, and is usually considered "
+"invalid."
msgstr ""
-#: doc/classes/Basis.xml:67
+#: doc/classes/Basis.xml:72
msgid ""
"Returns the basis's rotation in the form of Euler angles (in the YXZ "
-"convention: first Z, then X, and Y last). The returned vector contains the "
-"rotation angles in the format (X angle, Y angle, Z angle). See [method "
-"get_rotation_quat] if you need a quaternion instead."
+"convention: when decomposing, first Z, then X, and Y last). The returned "
+"vector contains the rotation angles in the format (X angle, Y angle, Z "
+"angle).\n"
+"Consider using the [method get_rotation_quat] method instead, which returns "
+"a [Quat] quaternion instead of Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:74
+#: doc/classes/Basis.xml:80
msgid ""
"This function considers a discretization of rotations into 24 points on unit "
"sphere, lying along the vectors (x,y,z) with each component being either -1, "
"0, or 1, and returns the index of the point best representing the "
-"orientation of the object. It is mainly used by the grid map editor. For "
+"orientation of the object. It is mainly used by the [GridMap] editor. For "
"further details, refer to the Godot source code."
msgstr ""
-#: doc/classes/Basis.xml:81
+#: doc/classes/Basis.xml:87
msgid ""
"Returns the basis's rotation in the form of a quaternion. See [method "
"get_euler] if you need Euler angles, but keep in mind quaternions should "
"generally be preferred to Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:88
+#: doc/classes/Basis.xml:94
msgid ""
"Assuming that the matrix is the combination of a rotation and scaling, "
"return the absolute value of scaling factors along each axis."
msgstr ""
-#: doc/classes/Basis.xml:95 doc/classes/Transform2D.xml:49
+#: doc/classes/Basis.xml:101
msgid "Returns the inverse of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:106
+#: doc/classes/Basis.xml:112
msgid ""
"Returns [code]true[/code] if this basis and [code]b[/code] are approximately "
"equal, by calling [code]is_equal_approx[/code] on each component."
msgstr ""
-#: doc/classes/Basis.xml:113
+#: doc/classes/Basis.xml:119
msgid ""
"Returns the orthonormalized version of the matrix (useful to call from time "
"to time to avoid rounding error for orthogonal matrices). This performs a "
"Gram-Schmidt orthonormalization on the basis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:124
+#: doc/classes/Basis.xml:130
msgid ""
"Introduce an additional rotation around the given axis by phi (radians). The "
"axis must be a normalized vector."
msgstr ""
-#: doc/classes/Basis.xml:133
+#: doc/classes/Basis.xml:139
msgid ""
"Introduce an additional scaling specified by the given 3D scaling factor."
msgstr ""
-#: doc/classes/Basis.xml:144
+#: doc/classes/Basis.xml:150
msgid ""
"Assuming that the matrix is a proper rotation matrix, slerp performs a "
"spherical-linear interpolation with another rotation matrix."
msgstr ""
-#: doc/classes/Basis.xml:153
+#: doc/classes/Basis.xml:159
msgid "Transposed dot product with the X axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:162
+#: doc/classes/Basis.xml:168
msgid "Transposed dot product with the Y axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:171
+#: doc/classes/Basis.xml:177
msgid "Transposed dot product with the Z axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:178
+#: doc/classes/Basis.xml:184
msgid "Returns the transposed version of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:187
+#: doc/classes/Basis.xml:193
msgid "Returns a vector transformed (multiplied) by the matrix."
msgstr ""
-#: doc/classes/Basis.xml:196
+#: doc/classes/Basis.xml:202
msgid ""
-"Returns a vector transformed (multiplied) by the transposed matrix.\n"
+"Returns a vector transformed (multiplied) by the transposed basis matrix.\n"
"[b]Note:[/b] This results in a multiplication by the inverse of the matrix "
"only if it represents a rotation-reflection."
msgstr ""
-#: doc/classes/Basis.xml:203
-msgid "The basis matrix's X vector."
+#: doc/classes/Basis.xml:209 doc/classes/Transform2D.xml:181
+msgid ""
+"The basis matrix's X vector (column 0). Equivalent to array index [code]0[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:206
-msgid "The basis matrix's Y vector."
+#: doc/classes/Basis.xml:212 doc/classes/Transform2D.xml:184
+msgid ""
+"The basis matrix's Y vector (column 1). Equivalent to array index [code]1[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:209
-msgid "The basis matrix's Z vector."
+#: doc/classes/Basis.xml:215
+msgid ""
+"The basis matrix's Z vector (column 2). Equivalent to array index [code]2[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:214
+#: doc/classes/Basis.xml:220
msgid ""
-"The identity basis. This is identical to calling [code]Basis()[/code] "
-"without any parameters. This constant can be used to make your code clearer."
+"The identity basis, with no rotation or scaling applied.\n"
+"This is identical to calling [code]Basis()[/code] without any parameters. "
+"This constant can be used to make your code clearer, and for consistency "
+"with C#."
msgstr ""
-#: doc/classes/Basis.xml:217
+#: doc/classes/Basis.xml:224
msgid ""
"The basis that will flip something along the X axis when used in a "
"transformation."
msgstr ""
-#: doc/classes/Basis.xml:220
+#: doc/classes/Basis.xml:227
msgid ""
"The basis that will flip something along the Y axis when used in a "
"transformation."
msgstr ""
-#: doc/classes/Basis.xml:223
+#: doc/classes/Basis.xml:230
msgid ""
"The basis that will flip something along the Z axis when used in a "
"transformation."
@@ -9931,97 +10042,111 @@ msgstr ""
#: doc/classes/Button.xml:7
msgid ""
"Button is the standard themed button. It can contain text and an icon, and "
-"will display them according to the current [Theme]."
+"will display them according to the current [Theme].\n"
+"[b]Example of creating a button and assigning an action when pressed by code:"
+"[/b]\n"
+"[codeblock]\n"
+"func _ready():\n"
+" var button = Button.new()\n"
+" button.text = \"Click me\"\n"
+" button.connect(\"pressed\", self, \"_button_pressed\")\n"
+" add_child(button)\n"
+"\n"
+"func _button_pressed():\n"
+" print(\"Hello world!\")\n"
+"[/codeblock]\n"
+"Buttons (like all Control nodes) can also be created in the editor, but some "
+"situations may require creating them from code."
msgstr ""
-#: doc/classes/Button.xml:15
+#: doc/classes/Button.xml:27
msgid ""
"Text alignment policy for the button's text, use one of the [enum TextAlign] "
"constants."
msgstr ""
-#: doc/classes/Button.xml:18
+#: doc/classes/Button.xml:30
msgid ""
"When this property is enabled, text that is too large to fit the button is "
"clipped, when disabled the Button will always be wide enough to hold the "
"text."
msgstr ""
-#: doc/classes/Button.xml:21
+#: doc/classes/Button.xml:33
msgid ""
"When enabled, the button's icon will expand/shrink to fit the button's size "
"while keeping its aspect."
msgstr ""
-#: doc/classes/Button.xml:24
+#: doc/classes/Button.xml:36
msgid "Flat buttons don't display decoration."
msgstr ""
-#: doc/classes/Button.xml:27
+#: doc/classes/Button.xml:39
msgid ""
"Button's icon, if text is present the icon will be placed before the text."
msgstr ""
-#: doc/classes/Button.xml:30 doc/classes/LinkButton.xml:18
+#: doc/classes/Button.xml:42 doc/classes/LinkButton.xml:18
msgid "The button's text that will be displayed inside the button's area."
msgstr ""
-#: doc/classes/Button.xml:35
+#: doc/classes/Button.xml:47
msgid "Align the text to the left."
msgstr ""
-#: doc/classes/Button.xml:38
+#: doc/classes/Button.xml:50
msgid "Align the text to the center."
msgstr ""
-#: doc/classes/Button.xml:41
+#: doc/classes/Button.xml:53
msgid "Align the text to the right."
msgstr ""
-#: doc/classes/Button.xml:46
+#: doc/classes/Button.xml:58
msgid "[StyleBox] used when the [Button] is disabled."
msgstr ""
-#: doc/classes/Button.xml:49
+#: doc/classes/Button.xml:61
msgid ""
"[StyleBox] used when the [Button] is focused. It is displayed over the "
"current [StyleBox], so using [StyleBoxEmpty] will just disable the focus "
"visual effect."
msgstr ""
-#: doc/classes/Button.xml:52
+#: doc/classes/Button.xml:64
msgid "[Font] of the [Button]'s text."
msgstr ""
-#: doc/classes/Button.xml:55
+#: doc/classes/Button.xml:67
msgid "Default text [Color] of the [Button]."
msgstr ""
-#: doc/classes/Button.xml:58
+#: doc/classes/Button.xml:70
msgid "Text [Color] used when the [Button] is disabled."
msgstr ""
-#: doc/classes/Button.xml:61
+#: doc/classes/Button.xml:73
msgid "Text [Color] used when the [Button] is being hovered."
msgstr ""
-#: doc/classes/Button.xml:64
+#: doc/classes/Button.xml:76
msgid "Text [Color] used when the [Button] is being pressed."
msgstr ""
-#: doc/classes/Button.xml:67
+#: doc/classes/Button.xml:79
msgid "[StyleBox] used when the [Button] is being hovered."
msgstr ""
-#: doc/classes/Button.xml:70
+#: doc/classes/Button.xml:82
msgid "The horizontal space between [Button]'s icon and text."
msgstr ""
-#: doc/classes/Button.xml:73
+#: doc/classes/Button.xml:85
msgid "Default [StyleBox] for the [Button]."
msgstr ""
-#: doc/classes/Button.xml:76
+#: doc/classes/Button.xml:88
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr ""
@@ -10673,7 +10798,7 @@ msgstr ""
#: doc/classes/CameraEffects.xml:37
msgid ""
"The exposure override value to use. Higher values will result in a brighter "
-"scene. Only effective if [member override_exposure_enable] is [code]true[/"
+"scene. Only effective if [member override_exposure_enabled] is [code]true[/"
"code]."
msgstr ""
@@ -10927,265 +11052,282 @@ msgid ""
msgstr ""
#: doc/classes/CanvasItem.xml:319
-msgid "Draws a string using a custom font."
+msgid ""
+"Draws [code]text[/code] using the specified [code]font[/code] at the "
+"[code]position[/code] (top-left corner). The text will have its color "
+"multiplied by [code]modulate[/code]. If [code]clip_w[/code] is greater than "
+"or equal to 0, the text will be clipped if it exceeds the specified width.\n"
+"[b]Example using the default project font:[/b]\n"
+"[codeblock]\n"
+"# If using this method in a script that redraws constantly, move the\n"
+"# `default_font` declaration to a member variable assigned in `_ready()`\n"
+"# so the Control is only created once.\n"
+"var default_font = Control.new().get_font(\"font\")\n"
+"draw_string(default_font, Vector2(64, 64), \"Hello world\")\n"
+"[/codeblock]\n"
+"See also [method Font.draw]."
msgstr ""
-#: doc/classes/CanvasItem.xml:330
+#: doc/classes/CanvasItem.xml:339
msgid "Draws a styled rectangle."
msgstr ""
-#: doc/classes/CanvasItem.xml:353
+#: doc/classes/CanvasItem.xml:362
msgid "Draws a texture at a given position."
msgstr ""
-#: doc/classes/CanvasItem.xml:380
+#: doc/classes/CanvasItem.xml:389
msgid ""
"Draws a textured rectangle at a given position, optionally modulated by a "
"color. If [code]transpose[/code] is [code]true[/code], the texture will have "
"its X and Y coordinates swapped."
msgstr ""
-#: doc/classes/CanvasItem.xml:409
+#: doc/classes/CanvasItem.xml:418
msgid ""
"Draws a textured rectangle region at a given position, optionally modulated "
"by a color. If [code]transpose[/code] is [code]true[/code], the texture will "
"have its X and Y coordinates swapped."
msgstr ""
-#: doc/classes/CanvasItem.xml:416 doc/classes/Node3D.xml:19
+#: doc/classes/CanvasItem.xml:425 doc/classes/Node3D.xml:19
msgid ""
"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."
msgstr ""
-#: doc/classes/CanvasItem.xml:423
+#: doc/classes/CanvasItem.xml:432
msgid "Returns the [RID] of the [World2D] canvas where this item is in."
msgstr ""
-#: doc/classes/CanvasItem.xml:430
+#: doc/classes/CanvasItem.xml:439
msgid "Returns the canvas item RID used by [RenderingServer] for this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:437
+#: doc/classes/CanvasItem.xml:446
msgid "Returns the transform matrix of this item's canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:444
+#: doc/classes/CanvasItem.xml:453
msgid "Returns the global position of the mouse."
msgstr ""
-#: doc/classes/CanvasItem.xml:451
+#: doc/classes/CanvasItem.xml:460
msgid "Returns the global transform matrix of this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:458
+#: doc/classes/CanvasItem.xml:467
msgid ""
"Returns the global transform matrix of this item in relation to the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:465
+#: doc/classes/CanvasItem.xml:474
msgid "Returns the mouse position relative to this item's position."
msgstr ""
-#: doc/classes/CanvasItem.xml:472
+#: doc/classes/CanvasItem.xml:481
msgid "Returns the transform matrix of this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:479
+#: doc/classes/CanvasItem.xml:488
msgid "Returns the viewport's boundaries as a [Rect2]."
msgstr ""
-#: doc/classes/CanvasItem.xml:486
+#: doc/classes/CanvasItem.xml:495
msgid "Returns this item's transform in relation to the viewport."
msgstr ""
-#: doc/classes/CanvasItem.xml:493
+#: doc/classes/CanvasItem.xml:502
msgid "Returns the [World2D] where this item is in."
msgstr ""
-#: doc/classes/CanvasItem.xml:500
+#: doc/classes/CanvasItem.xml:509
msgid "Hide the [CanvasItem] if it's currently visible."
msgstr ""
-#: doc/classes/CanvasItem.xml:507
+#: doc/classes/CanvasItem.xml:516
msgid ""
"Returns [code]true[/code] if local transform notifications are communicated "
"to children."
msgstr ""
-#: doc/classes/CanvasItem.xml:514
+#: doc/classes/CanvasItem.xml:523
msgid ""
"Returns [code]true[/code] if the node is set as top-level. See [method "
"set_as_toplevel]."
msgstr ""
-#: doc/classes/CanvasItem.xml:521
+#: doc/classes/CanvasItem.xml:530
msgid ""
"Returns [code]true[/code] if global transform notifications are communicated "
"to children."
msgstr ""
-#: doc/classes/CanvasItem.xml:528
+#: doc/classes/CanvasItem.xml:537 doc/classes/Node3D.xml:104
msgid ""
"Returns [code]true[/code] if the node is present in the [SceneTree], its "
-"[member visible] property is [code]true[/code] and its inherited visibility "
-"is also [code]true[/code]."
+"[member visible] property is [code]true[/code] and all its antecedents are "
+"also visible. If any antecedent is hidden, this node will not be visible in "
+"the scene tree."
msgstr ""
-#: doc/classes/CanvasItem.xml:537
+#: doc/classes/CanvasItem.xml:546
msgid "Assigns [code]screen_point[/code] as this node's new local transform."
msgstr ""
-#: doc/classes/CanvasItem.xml:546
+#: doc/classes/CanvasItem.xml:555
msgid ""
"Transformations issued by [code]event[/code]'s inputs are applied in local "
"space instead of global space."
msgstr ""
-#: doc/classes/CanvasItem.xml:555
+#: doc/classes/CanvasItem.xml:564
msgid ""
"If [code]enable[/code] is [code]true[/code], the node won't inherit its "
"transform from parent canvas items."
msgstr ""
-#: doc/classes/CanvasItem.xml:564
+#: doc/classes/CanvasItem.xml:573
msgid ""
"If [code]enable[/code] is [code]true[/code], children will be updated with "
"local transform data."
msgstr ""
-#: doc/classes/CanvasItem.xml:573
+#: doc/classes/CanvasItem.xml:582
msgid ""
"If [code]enable[/code] is [code]true[/code], children will be updated with "
"global transform data."
msgstr ""
-#: doc/classes/CanvasItem.xml:580
+#: doc/classes/CanvasItem.xml:589
msgid ""
"Show the [CanvasItem] if it's currently hidden. For controls that inherit "
"[Popup], the correct way to make them visible is to call one of the multiple "
"[code]popup*()[/code] functions instead."
msgstr ""
-#: doc/classes/CanvasItem.xml:587
+#: doc/classes/CanvasItem.xml:596
msgid ""
"Queue the [CanvasItem] for update. [constant NOTIFICATION_DRAW] will be "
"called on idle time to request redraw."
msgstr ""
-#: doc/classes/CanvasItem.xml:593
+#: doc/classes/CanvasItem.xml:602
msgid ""
"The rendering layers in which this [CanvasItem] responds to [Light2D] nodes."
msgstr ""
-#: doc/classes/CanvasItem.xml:596
+#: doc/classes/CanvasItem.xml:605
msgid "The material applied to textures on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:599
+#: doc/classes/CanvasItem.xml:608
msgid "The color applied to textures on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:602
+#: doc/classes/CanvasItem.xml:611
msgid ""
"The color applied to textures on this [CanvasItem]. This is not inherited by "
"children [CanvasItem]s."
msgstr ""
-#: doc/classes/CanvasItem.xml:605
+#: doc/classes/CanvasItem.xml:614
msgid "If [code]true[/code], the object draws behind its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:608
+#: doc/classes/CanvasItem.xml:617
msgid "If [code]true[/code], the object draws on top of its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:611
+#: doc/classes/CanvasItem.xml:620
msgid "The texture filtering mode to use on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:614
+#: doc/classes/CanvasItem.xml:623
msgid "The texture repeating mode to use on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:617
+#: doc/classes/CanvasItem.xml:626
msgid ""
"If [code]true[/code], the parent [CanvasItem]'s [member material] property "
"is used as this one's material."
msgstr ""
-#: doc/classes/CanvasItem.xml:620
+#: doc/classes/CanvasItem.xml:629
msgid ""
-"If [code]true[/code], this [CanvasItem] is drawn. For controls that inherit "
-"[Popup], the correct way to make them visible is to call one of the multiple "
-"[code]popup*()[/code] functions instead."
+"If [code]true[/code], this [CanvasItem] is drawn. The node is only visible "
+"if all of its antecedents are visible as well (in other words, [method "
+"is_visible_in_tree] must return [code]true[/code]).\n"
+"[b]Note:[/b] For controls that inherit [Popup], the correct way to make them "
+"visible is to call one of the multiple [code]popup*()[/code] functions "
+"instead."
msgstr ""
-#: doc/classes/CanvasItem.xml:626
+#: doc/classes/CanvasItem.xml:636
msgid ""
"Emitted when the [CanvasItem] must redraw. This can only be connected "
"realtime, as deferred will not allow drawing."
msgstr ""
-#: doc/classes/CanvasItem.xml:631
+#: doc/classes/CanvasItem.xml:641
msgid "Emitted when becoming hidden."
msgstr ""
-#: doc/classes/CanvasItem.xml:636
+#: doc/classes/CanvasItem.xml:646
msgid "Emitted when the item rect has changed."
msgstr ""
-#: doc/classes/CanvasItem.xml:641
+#: doc/classes/CanvasItem.xml:651
msgid "Emitted when the visibility (hidden/visible) changes."
msgstr ""
-#: doc/classes/CanvasItem.xml:647
+#: doc/classes/CanvasItem.xml:657
msgid ""
"The [CanvasItem]'s transform has changed. This notification is only received "
"if enabled by [method set_notify_transform] or [method "
"set_notify_local_transform]."
msgstr ""
-#: doc/classes/CanvasItem.xml:650
+#: doc/classes/CanvasItem.xml:660
msgid "The [CanvasItem] is requested to draw."
msgstr ""
-#: doc/classes/CanvasItem.xml:653
+#: doc/classes/CanvasItem.xml:663
msgid "The [CanvasItem]'s visibility has changed."
msgstr ""
-#: doc/classes/CanvasItem.xml:656
+#: doc/classes/CanvasItem.xml:666
msgid "The [CanvasItem] has entered the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:659
+#: doc/classes/CanvasItem.xml:669
msgid "The [CanvasItem] has exited the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:662 doc/classes/CanvasItem.xml:688
+#: doc/classes/CanvasItem.xml:672 doc/classes/CanvasItem.xml:698
msgid "The [CanvasItem] will inherit the filter from its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:665
+#: doc/classes/CanvasItem.xml:675
msgid ""
"The texture filter reads from the nearest pixel only. The simplest and "
"fastest method of filtering. Useful for pixel art."
msgstr ""
-#: doc/classes/CanvasItem.xml:668
+#: doc/classes/CanvasItem.xml:678
msgid ""
"The texture filter blends between the nearest four pixels. Use this for most "
"cases where you want to avoid a pixelated style."
msgstr ""
-#: doc/classes/CanvasItem.xml:671
+#: doc/classes/CanvasItem.xml:681
msgid ""
"The texture filter reads from the nearest pixel in the nearest mipmap. This "
"is the fastest way to read from textures with mipmaps."
msgstr ""
-#: doc/classes/CanvasItem.xml:674
+#: doc/classes/CanvasItem.xml:684
msgid ""
"The texture filter blends between the nearest 4 pixels and between the "
"nearest 2 mipmaps. Use this for non-pixel art textures that may be viewed at "
@@ -11193,7 +11335,7 @@ msgid ""
"smooth out pixels that are smaller than on-screen pixels."
msgstr ""
-#: doc/classes/CanvasItem.xml:677
+#: doc/classes/CanvasItem.xml:687
msgid ""
"The texture filter reads from the nearest pixel, but selects a mipmap based "
"on the angle between the surface and the camera view. This reduces artifacts "
@@ -11202,7 +11344,7 @@ msgid ""
"TEXTURE_FILTER_NEAREST_WITH_MIPMAPS] is usually more appropriate."
msgstr ""
-#: doc/classes/CanvasItem.xml:681
+#: doc/classes/CanvasItem.xml:691
msgid ""
"The texture filter blends between the nearest 4 pixels and selects a mipmap "
"based on the angle between the surface and the camera view. This reduces "
@@ -11213,21 +11355,21 @@ msgid ""
"TEXTURE_FILTER_LINEAR_WITH_MIPMAPS] is usually more appropriate."
msgstr ""
-#: doc/classes/CanvasItem.xml:691
+#: doc/classes/CanvasItem.xml:701
msgid "Texture will not repeat."
msgstr ""
-#: doc/classes/CanvasItem.xml:694
+#: doc/classes/CanvasItem.xml:704
msgid "Texture will repeat normally."
msgstr ""
-#: doc/classes/CanvasItem.xml:697
+#: doc/classes/CanvasItem.xml:707
msgid ""
"Texture will repeat in a 2x2 tiled mode, where elements at even positions "
"are mirrored."
msgstr ""
-#: doc/classes/CanvasItem.xml:700
+#: doc/classes/CanvasItem.xml:710
msgid "Represents the size of the [enum TextureRepeat] enum."
msgstr ""
@@ -12300,16 +12442,15 @@ msgid ""
msgstr ""
#: doc/classes/Color.xml:4
-msgid "Color in RGBA format with some support for ARGB format."
+msgid "Color in RGBA format using floats on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:7
msgid ""
-"A color is represented by red, green, and blue [code](r, g, b)[/code] "
-"components. Additionally, [code]a[/code] represents the alpha component, "
-"often used for transparency. Values are in floating-point and usually range "
-"from 0 to 1. Some properties (such as [member CanvasItem.modulate]) may "
-"accept values greater than 1.\n"
+"A color represented by red, green, blue, and alpha (RGBA) components. The "
+"alpha component is often used for transparency. Values are in floating-point "
+"and usually range from 0 to 1. Some properties (such as CanvasItem.modulate) "
+"may accept values greater than 1 (overbright or HDR colors).\n"
"You can also create a color from standardized color names by using [method "
"@GDScript.ColorN] or directly using the color constants defined here. The "
"standardized color set is based on the [url=https://en.wikipedia.org/wiki/"
@@ -12523,47 +12664,48 @@ msgid ""
msgstr ""
#: doc/classes/Color.xml:280
-msgid "Alpha value (range 0 to 1)."
+msgid ""
+"The color's alpha (transparency) component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:283
-msgid "Alpha value (range 0 to 255)."
+msgid "Wrapper for [member a] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:286
-msgid "Blue value (range 0 to 1)."
+msgid "The color's blue component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:289
-msgid "Blue value (range 0 to 255)."
+msgid "Wrapper for [member b] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:292
-msgid "Green value (range 0 to 1)."
+msgid "The color's green component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:295
-msgid "Green value (range 0 to 255)."
+msgid "Wrapper for [member g] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:298
-msgid "HSV hue value (range 0 to 1)."
+msgid "The HSV hue of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:301
-msgid "Red value (range 0 to 1)."
+msgid "The color's red component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:304
-msgid "Red value (range 0 to 255)."
+msgid "Wrapper for [member r] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:307
-msgid "HSV saturation value (range 0 to 1)."
+msgid "The HSV saturation of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:310
-msgid "HSV value (range 0 to 1)."
+msgid "The HSV value (brightness) of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:315
@@ -14483,23 +14625,35 @@ msgstr ""
#: doc/classes/Control.xml:859
msgid ""
"The node's scale, relative to its [member rect_size]. Change this property "
-"to scale the node around its [member rect_pivot_offset]."
-msgstr ""
-
-#: doc/classes/Control.xml:862
+"to scale the node around its [member rect_pivot_offset]. The Control's "
+"[member hint_tooltip] will also scale according to this value.\n"
+"[b]Note:[/b] This property is mainly intended to be used for animation "
+"purposes. Text inside the Control will look pixelated or blurry when the "
+"Control is scaled. To support multiple resolutions in your project, use an "
+"appropriate viewport stretch mode as described in the [url=https://docs."
+"godotengine.org/en/latest/tutorials/viewports/multiple_resolutions."
+"html]documentation[/url] instead of scaling Controls individually.\n"
+"[b]Note:[/b] If the Control node is a child of a [Container] node, the scale "
+"will be reset to [code]Vector2(1, 1)[/code] when the scene is instanced. To "
+"set the Control's scale when it's instanced, wait for one frame using "
+"[code]yield(get_tree(), \"idle_frame\")[/code] then set its [member "
+"rect_scale] property."
+msgstr ""
+
+#: doc/classes/Control.xml:864
msgid ""
"The size of the node's bounding rectangle, in pixels. [Container] nodes "
"update this property automatically."
msgstr ""
-#: doc/classes/Control.xml:865
+#: doc/classes/Control.xml:867
msgid ""
"Tells the parent [Container] nodes how they should resize and place the node "
"on the X axis. Use one of the [enum SizeFlags] constants to change the "
"flags. See the constants to learn what each does."
msgstr ""
-#: doc/classes/Control.xml:868
+#: doc/classes/Control.xml:870
msgid ""
"If the node and at least one of its neighbours uses the [constant "
"SIZE_EXPAND] size flag, the parent [Container] will let it take more or less "
@@ -14508,181 +14662,181 @@ msgid ""
"space."
msgstr ""
-#: doc/classes/Control.xml:871
+#: doc/classes/Control.xml:873
msgid ""
"Tells the parent [Container] nodes how they should resize and place the node "
"on the Y axis. Use one of the [enum SizeFlags] constants to change the "
"flags. See the constants to learn what each does."
msgstr ""
-#: doc/classes/Control.xml:874
+#: doc/classes/Control.xml:876
msgid ""
"Changing this property replaces the current [Theme] resource this node and "
"all its [Control] children use."
msgstr ""
-#: doc/classes/Control.xml:880
+#: doc/classes/Control.xml:882
msgid "Emitted when the node gains keyboard focus."
msgstr ""
-#: doc/classes/Control.xml:885
+#: doc/classes/Control.xml:887
msgid "Emitted when the node loses keyboard focus."
msgstr ""
-#: doc/classes/Control.xml:892
+#: doc/classes/Control.xml:894
msgid "Emitted when the node receives an [InputEvent]."
msgstr ""
-#: doc/classes/Control.xml:897
+#: doc/classes/Control.xml:899
msgid "Emitted when the node's minimum size changes."
msgstr ""
-#: doc/classes/Control.xml:902
+#: doc/classes/Control.xml:904
msgid ""
"Emitted when the mouse enters the control's [code]Rect[/code] area, provided "
"its [member mouse_filter] lets the event reach it."
msgstr ""
-#: doc/classes/Control.xml:907
+#: doc/classes/Control.xml:909
msgid ""
"Emitted when the mouse leaves the control's [code]Rect[/code] area, provided "
"its [member mouse_filter] lets the event reach it."
msgstr ""
-#: doc/classes/Control.xml:912
+#: doc/classes/Control.xml:914
msgid "Emitted when the control changes size."
msgstr ""
-#: doc/classes/Control.xml:917
+#: doc/classes/Control.xml:919
msgid ""
"Emitted when one of the size flags changes. See [member "
"size_flags_horizontal] and [member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:927
+#: doc/classes/Control.xml:929
msgid "The node cannot grab focus. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:930
+#: doc/classes/Control.xml:932
msgid ""
"The node can only grab focus on mouse clicks. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:933
+#: doc/classes/Control.xml:935
msgid ""
"The node can grab focus on mouse click or using the arrows and the Tab keys "
"on the keyboard. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:936
+#: doc/classes/Control.xml:938
msgid ""
"Sent when the node changes size. Use [member rect_size] to get the new size."
msgstr ""
-#: doc/classes/Control.xml:939
+#: doc/classes/Control.xml:941
msgid "Sent when the mouse pointer enters the node."
msgstr ""
-#: doc/classes/Control.xml:942
+#: doc/classes/Control.xml:944
msgid "Sent when the mouse pointer exits the node."
msgstr ""
-#: doc/classes/Control.xml:945
+#: doc/classes/Control.xml:947
msgid "Sent when the node grabs focus."
msgstr ""
-#: doc/classes/Control.xml:948
+#: doc/classes/Control.xml:950
msgid "Sent when the node loses focus."
msgstr ""
-#: doc/classes/Control.xml:951
+#: doc/classes/Control.xml:953
msgid ""
"Sent when the node's [member theme] changes, right before Godot redraws the "
"control. Happens when you call one of the [code]add_theme_*_override[/code] "
"methods."
msgstr ""
-#: doc/classes/Control.xml:954
+#: doc/classes/Control.xml:956
msgid ""
"Sent when this node is inside a [ScrollContainer] which has begun being "
"scrolled."
msgstr ""
-#: doc/classes/Control.xml:957
+#: doc/classes/Control.xml:959
msgid ""
"Sent when this node is inside a [ScrollContainer] which has stopped being "
"scrolled."
msgstr ""
-#: doc/classes/Control.xml:960
+#: doc/classes/Control.xml:962
msgid ""
"Show the system's arrow mouse cursor when the user hovers the node. Use with "
"[member mouse_default_cursor_shape]."
msgstr ""
-#: doc/classes/Control.xml:963
+#: doc/classes/Control.xml:965
msgid ""
"Show the system's I-beam mouse cursor when the user hovers the node. The I-"
"beam pointer has a shape similar to \"I\". It tells the user they can "
"highlight or insert text."
msgstr ""
-#: doc/classes/Control.xml:966
+#: doc/classes/Control.xml:968
msgid ""
"Show the system's pointing hand mouse cursor when the user hovers the node."
msgstr ""
-#: doc/classes/Control.xml:969
+#: doc/classes/Control.xml:971
msgid "Show the system's cross mouse cursor when the user hovers the node."
msgstr ""
-#: doc/classes/Control.xml:972
+#: doc/classes/Control.xml:974
msgid ""
"Show the system's wait mouse cursor, often an hourglass, when the user "
"hovers the node."
msgstr ""
-#: doc/classes/Control.xml:975
+#: doc/classes/Control.xml:977
msgid ""
"Show the system's busy mouse cursor when the user hovers the node. Often an "
"hourglass."
msgstr ""
-#: doc/classes/Control.xml:978
+#: doc/classes/Control.xml:980
msgid ""
"Show the system's drag mouse cursor, often a closed fist or a cross symbol, "
"when the user hovers the node. It tells the user they're currently dragging "
"an item, like a node in the Scene dock."
msgstr ""
-#: doc/classes/Control.xml:981
+#: doc/classes/Control.xml:983
msgid ""
"Show the system's drop mouse cursor when the user hovers the node. It can be "
"an open hand. It tells the user they can drop an item they're currently "
"grabbing, like a node in the Scene dock."
msgstr ""
-#: doc/classes/Control.xml:984
+#: doc/classes/Control.xml:986
msgid ""
"Show the system's forbidden mouse cursor when the user hovers the node. "
"Often a crossed circle."
msgstr ""
-#: doc/classes/Control.xml:987
+#: doc/classes/Control.xml:989
msgid ""
"Show the system's vertical resize mouse cursor when the user hovers the "
"node. A double-headed vertical arrow. It tells the user they can resize the "
"window or the panel vertically."
msgstr ""
-#: doc/classes/Control.xml:990
+#: doc/classes/Control.xml:992
msgid ""
"Show the system's horizontal resize mouse cursor when the user hovers the "
"node. A double-headed horizontal arrow. It tells the user they can resize "
"the window or the panel horizontally."
msgstr ""
-#: doc/classes/Control.xml:993
+#: doc/classes/Control.xml:995
msgid ""
"Show the system's window resize mouse cursor when the user hovers the node. "
"The cursor is a double-headed arrow that goes from the bottom left to the "
@@ -14690,7 +14844,7 @@ msgid ""
"horizontally and vertically."
msgstr ""
-#: doc/classes/Control.xml:996
+#: doc/classes/Control.xml:998
msgid ""
"Show the system's window resize mouse cursor when the user hovers the node. "
"The cursor is a double-headed arrow that goes from the top left to the "
@@ -14698,93 +14852,93 @@ msgid ""
"they can resize the window or the panel both horizontally and vertically."
msgstr ""
-#: doc/classes/Control.xml:999
+#: doc/classes/Control.xml:1001
msgid ""
"Show the system's move mouse cursor when the user hovers the node. It shows "
"2 double-headed arrows at a 90 degree angle. It tells the user they can move "
"a UI element freely."
msgstr ""
-#: doc/classes/Control.xml:1002
+#: doc/classes/Control.xml:1004
msgid ""
"Show the system's vertical split mouse cursor when the user hovers the node. "
"On Windows, it's the same as [constant CURSOR_VSIZE]."
msgstr ""
-#: doc/classes/Control.xml:1005
+#: doc/classes/Control.xml:1007
msgid ""
"Show the system's horizontal split mouse cursor when the user hovers the "
"node. On Windows, it's the same as [constant CURSOR_HSIZE]."
msgstr ""
-#: doc/classes/Control.xml:1008
+#: doc/classes/Control.xml:1010
msgid ""
"Show the system's help mouse cursor when the user hovers the node, a "
"question mark."
msgstr ""
-#: doc/classes/Control.xml:1011
+#: doc/classes/Control.xml:1013
msgid ""
"Snap all 4 anchors to the top-left of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1014
+#: doc/classes/Control.xml:1016
msgid ""
"Snap all 4 anchors to the top-right of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1017
+#: doc/classes/Control.xml:1019
msgid ""
"Snap all 4 anchors to the bottom-left of the parent control's bounds. Use "
"with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1020
+#: doc/classes/Control.xml:1022
msgid ""
"Snap all 4 anchors to the bottom-right of the parent control's bounds. Use "
"with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1023
+#: doc/classes/Control.xml:1025
msgid ""
"Snap all 4 anchors to the center of the left edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1026
+#: doc/classes/Control.xml:1028
msgid ""
"Snap all 4 anchors to the center of the top edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1029
+#: doc/classes/Control.xml:1031
msgid ""
"Snap all 4 anchors to the center of the right edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1032
+#: doc/classes/Control.xml:1034
msgid ""
"Snap all 4 anchors to the center of the bottom edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1035
+#: doc/classes/Control.xml:1037
msgid ""
"Snap all 4 anchors to the center of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1038
+#: doc/classes/Control.xml:1040
msgid ""
"Snap all 4 anchors to the left edge of the parent control. The left margin "
"becomes relative to the left edge and the top margin relative to the top "
"left corner of the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1041
+#: doc/classes/Control.xml:1043
msgid ""
"Snap all 4 anchors to the top edge of the parent control. The left margin "
"becomes relative to the top left corner, the top margin relative to the top "
@@ -14792,14 +14946,14 @@ msgid ""
"parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1044
+#: doc/classes/Control.xml:1046
msgid ""
"Snap all 4 anchors to the right edge of the parent control. The right margin "
"becomes relative to the right edge and the top margin relative to the top "
"right corner of the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1047
+#: doc/classes/Control.xml:1049
msgid ""
"Snap all 4 anchors to the bottom edge of the parent control. The left margin "
"becomes relative to the bottom left corner, the bottom margin relative to "
@@ -14807,19 +14961,19 @@ msgid ""
"the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1050
+#: doc/classes/Control.xml:1052
msgid ""
"Snap all 4 anchors to a vertical line that cuts the parent control in half. "
"Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1053
+#: doc/classes/Control.xml:1055
msgid ""
"Snap all 4 anchors to a horizontal line that cuts the parent control in "
"half. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1056
+#: doc/classes/Control.xml:1058
msgid ""
"Snap all 4 anchors to the respective corners of the parent control. Set all "
"4 margins to 0 after you applied this preset and the [Control] will fit its "
@@ -14827,30 +14981,30 @@ msgid ""
"editor. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1059
+#: doc/classes/Control.xml:1061
msgid "The control will be resized to its minimum size."
msgstr ""
-#: doc/classes/Control.xml:1062
+#: doc/classes/Control.xml:1064
msgid "The control's width will not change."
msgstr ""
-#: doc/classes/Control.xml:1065
+#: doc/classes/Control.xml:1067
msgid "The control's height will not change."
msgstr ""
-#: doc/classes/Control.xml:1068
+#: doc/classes/Control.xml:1070
msgid "The control's size will not change."
msgstr ""
-#: doc/classes/Control.xml:1071
+#: doc/classes/Control.xml:1073
msgid ""
"Tells the parent [Container] to expand the bounds of this node to fill all "
"the available space without pushing any other node. Use with [member "
"size_flags_horizontal] and [member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1074
+#: doc/classes/Control.xml:1076
msgid ""
"Tells the parent [Container] to let this node take all the available space "
"on the axis you flag. If multiple neighboring nodes are set to expand, "
@@ -14859,13 +15013,13 @@ msgid ""
"[member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1077
+#: doc/classes/Control.xml:1079
msgid ""
"Sets the node's size flags to both fill and expand. See the 2 constants "
"above for more information."
msgstr ""
-#: doc/classes/Control.xml:1080
+#: doc/classes/Control.xml:1082
msgid ""
"Tells the parent [Container] to center the node in itself. It centers the "
"control based on its bounding box, so it doesn't work with the fill or "
@@ -14873,7 +15027,7 @@ msgid ""
"size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1083
+#: doc/classes/Control.xml:1085
msgid ""
"Tells the parent [Container] to align the node with its end, either the "
"bottom or the right edge. It doesn't work with the fill or expand size "
@@ -14881,7 +15035,7 @@ msgid ""
"size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1086
+#: doc/classes/Control.xml:1088
msgid ""
"The control will receive mouse button input events through [method "
"_gui_input] if clicked on. And the control will receive the [signal "
@@ -14890,7 +15044,7 @@ msgid ""
"other controls. This also results in blocking signals in other controls."
msgstr ""
-#: doc/classes/Control.xml:1089
+#: doc/classes/Control.xml:1091
msgid ""
"The control will receive mouse button input events through [method "
"_gui_input] if clicked on. And the control will receive the [signal "
@@ -14902,7 +15056,7 @@ msgid ""
"not be fired."
msgstr ""
-#: doc/classes/Control.xml:1092
+#: doc/classes/Control.xml:1094
msgid ""
"The control will not receive mouse button input events through [method "
"_gui_input]. The control will also not receive the [signal mouse_entered] "
@@ -14911,25 +15065,25 @@ msgid ""
"handled automatically."
msgstr ""
-#: doc/classes/Control.xml:1095
+#: doc/classes/Control.xml:1097
msgid ""
"The control will grow to the left or top to make up if its minimum size is "
"changed to be greater than its current size on the respective axis."
msgstr ""
-#: doc/classes/Control.xml:1098
+#: doc/classes/Control.xml:1100
msgid ""
"The control will grow to the right or bottom to make up if its minimum size "
"is changed to be greater than its current size on the respective axis."
msgstr ""
-#: doc/classes/Control.xml:1101
+#: doc/classes/Control.xml:1103
msgid ""
"The control will grow in both directions equally to make up if its minimum "
"size is changed to be greater than its current size."
msgstr ""
-#: doc/classes/Control.xml:1104
+#: doc/classes/Control.xml:1106
msgid ""
"Snaps one of the 4 anchor's sides to the origin of the node's [code]Rect[/"
"code], in the top left. Use it with one of the [code]anchor_*[/code] member "
@@ -14937,7 +15091,7 @@ msgid ""
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1107
+#: doc/classes/Control.xml:1109
msgid ""
"Snaps one of the 4 anchor's sides to the end of the node's [code]Rect[/"
"code], in the bottom right. Use it with one of the [code]anchor_*[/code] "
@@ -16722,7 +16876,7 @@ msgstr ""
msgid ""
"Returns the [Texture2D] associated with the specified [enum DecalTexture]. "
"This is a convenience method, in most cases you should access the texture "
-"directly. \n"
+"directly.\n"
"For example, instead of [code]albedo_tex = $Decal.get_texture(Decal."
"TEXTURE_ALBEDO)[/code], use [code]albedo_tex = $Decal.texture_albedo[/"
"code].\n"
@@ -16738,7 +16892,7 @@ msgstr ""
msgid ""
"Sets the [Texture2D] associated with the specified [enum DecalTexture]. This "
"is a convenience method, in most cases you should access the texture "
-"directly. \n"
+"directly.\n"
"For example, instead of [code]$Decal.set_texture(Decal.TEXTURE_ALBEDO, "
"albedo_tex)[/code], use [code]$Decal.texture_albedo = albedo_tex[/code].\n"
"One case where this is better than accessing the texture directly is when "
@@ -17087,7 +17241,7 @@ msgstr ""
msgid "The light's shadow rendering algorithm. See [enum ShadowMode]."
msgstr ""
-#: doc/classes/DirectionalLight3D.xml:31 doc/classes/RenderingServer.xml:3254
+#: doc/classes/DirectionalLight3D.xml:31 doc/classes/RenderingServer.xml:3250
msgid ""
"Sets the size of the directional shadow pancake. The pancake offsets the "
"start of the shadow's camera frustum to provide a higher effective depth "
@@ -17161,10 +17315,10 @@ msgstr ""
msgid ""
"Directory type. It is used to manage directories and their content (not "
"restricted to the project folder).\n"
-"When creating a new [Directory], its default opened directory will be "
-"[code]res://[/code]. This may change in the future, so it is advised to "
-"always use [method open] to initialize your [Directory] where you want to "
-"operate, with explicit error checking.\n"
+"When creating a new [Directory], it must be explicitly opened using [method "
+"open] before most methods can be used. However, [method file_exists] and "
+"[method dir_exists] can be used without opening a directory. If so, they use "
+"a path relative to [code]res://[/code].\n"
"Here is an example on how to iterate through the files of a directory:\n"
"[codeblock]\n"
"func dir_contents(path):\n"
@@ -17183,7 +17337,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Directory.xml:27 doc/classes/File.xml:25
+#: doc/classes/Directory.xml:27 doc/classes/File.xml:26
msgid ""
"https://docs.godotengine.org/en/latest/getting_started/step_by_step/"
"filesystem.html"
@@ -17217,41 +17371,43 @@ msgstr ""
#: doc/classes/Directory.xml:65
msgid ""
"Returns whether the target directory exists. The argument can be relative to "
-"the current directory, or an absolute path."
+"the current directory, or an absolute path.\n"
+"If the [Directory] is not open, the path is relative to [code]res://[/code]."
msgstr ""
-#: doc/classes/Directory.xml:74
+#: doc/classes/Directory.xml:75
msgid ""
"Returns whether the target file exists. The argument can be relative to the "
-"current directory, or an absolute path."
+"current directory, or an absolute path.\n"
+"If the [Directory] is not open, the path is relative to [code]res://[/code]."
msgstr ""
-#: doc/classes/Directory.xml:81
+#: doc/classes/Directory.xml:83
msgid ""
"Returns the absolute path to the currently opened directory (e.g. "
"[code]res://folder[/code] or [code]C:\\tmp\\folder[/code])."
msgstr ""
-#: doc/classes/Directory.xml:88
+#: doc/classes/Directory.xml:90
msgid ""
"Returns the currently opened directory's drive index. See [method get_drive] "
"to convert returned index to the name of the drive."
msgstr ""
-#: doc/classes/Directory.xml:97
+#: doc/classes/Directory.xml:99
msgid ""
"On Windows, returns the name of the drive (partition) passed as an argument "
"(e.g. [code]C:[/code]). On other platforms, or if the requested drive does "
"not existed, the method returns an empty String."
msgstr ""
-#: doc/classes/Directory.xml:104
+#: doc/classes/Directory.xml:106
msgid ""
"On Windows, returns the number of drives (partitions) mounted on the current "
"filesystem. On other platforms, the method returns 0."
msgstr ""
-#: doc/classes/Directory.xml:111
+#: doc/classes/Directory.xml:113
msgid ""
"Returns the next element (file or directory) in the current directory "
"(including [code].[/code] and [code]..[/code], unless "
@@ -17262,14 +17418,14 @@ msgid ""
"mandatory in such a case)."
msgstr ""
-#: doc/classes/Directory.xml:119
+#: doc/classes/Directory.xml:121
msgid ""
"On UNIX desktop systems, returns the available space on the current "
"directory's disk. On other platforms, this information is not available and "
"the method returns 0 or -1."
msgstr ""
-#: doc/classes/Directory.xml:130
+#: doc/classes/Directory.xml:132
msgid ""
"Initializes the stream used to list all files and directories using the "
"[method get_next] function, closing the current opened stream if needed. "
@@ -17281,13 +17437,13 @@ msgid ""
"out."
msgstr ""
-#: doc/classes/Directory.xml:139
+#: doc/classes/Directory.xml:141
msgid ""
"Closes the current stream opened with [method list_dir_begin] (whether it "
"has been fully processed with [method get_next] or not does not matter)."
msgstr ""
-#: doc/classes/Directory.xml:148
+#: doc/classes/Directory.xml:150
msgid ""
"Creates a directory. The argument can be relative to the current directory, "
"or an absolute path. The target directory should be placed in an already "
@@ -17296,7 +17452,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:158
+#: doc/classes/Directory.xml:160
msgid ""
"Creates a target directory and all necessary intermediate directories in its "
"path, by calling [method make_dir] recursively. The argument can be relative "
@@ -17304,7 +17460,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:168
+#: doc/classes/Directory.xml:170
msgid ""
"Opens an existing directory of the filesystem. The [code]path[/code] "
"argument can be within the project tree ([code]res://folder[/code]), the "
@@ -17313,7 +17469,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:178
+#: doc/classes/Directory.xml:180
msgid ""
"Deletes the target file or an empty directory. The argument can be relative "
"to the current directory, or an absolute path. If the target directory is "
@@ -17321,7 +17477,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:190
+#: doc/classes/Directory.xml:192
msgid ""
"Renames (move) the [code]from[/code] file to the [code]to[/code] "
"destination. Both arguments should be paths to files, either relative or "
@@ -17362,6 +17518,53 @@ msgid ""
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
+#: doc/classes/DisplayServer.xml:530
+msgid ""
+"Return the greatest scale factor of all screens.\n"
+"[b]Note:[/b] On macOS returned value is [code]2.0[/code] if there is at "
+"least one hiDPI (Retina) screen in the system, and [code]1.0[/code] in all "
+"other cases.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:557
+msgid ""
+"Return the scale factor of the specified screen by index.\n"
+"[b]Note:[/b] On macOS returned value is [code]2.0[/code] for hiDPI (Retina) "
+"screen, and [code]1.0[/code] for all other cases.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:630
+msgid ""
+"Returns the on-screen keyboard's height in pixels. Returns 0 if there is no "
+"keyboard or if it is currently hidden."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:637
+msgid "Hides the virtual keyboard if it is shown, does nothing otherwise."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:656
+msgid ""
+"Shows the virtual keyboard if the platform has one.\n"
+"[code]existing_text[/code] parameter is useful for implementing your own "
+"[LineEdit] or [TextEdit], as it tells the virtual keyboard what text has "
+"already been typed (the virtual keyboard uses it for auto-correct and "
+"predictions).\n"
+"[code]position[/code] parameter is the screen space [Rect2] of the edited "
+"text.\n"
+"[code]multiline[/code] parameter needs to be set to [code]true[/code] to be "
+"able to enter multiple lines of text, as in [TextEdit].\n"
+"[code]max_length[/code] limits the number of characters that can be entered "
+"if different from [code]-1[/code].\n"
+"[code]cursor_start[/code] can optionally define the current text cursor "
+"position if [code]cursor_end[/code] is not set.\n"
+"[code]cursor_start[/code] and [code]cursor_end[/code] can optionally define "
+"the current text selection.\n"
+"[b]Note:[/b] This method is implemented on Android, iOS and UWP."
+msgstr ""
+
#: doc/classes/DTLSServer.xml:4
msgid "Helper class to implement a DTLS server."
msgstr ""
@@ -17482,54 +17685,62 @@ msgstr ""
msgid "Adds a fallback font."
msgstr ""
-#: doc/classes/DynamicFont.xml:35
+#: doc/classes/DynamicFont.xml:33
+msgid ""
+"Returns a string containing all the characters available in the main and all "
+"the fallback fonts.\n"
+"If a given character is included in more than one font, it appears only once "
+"in the returned string."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:43
msgid "Returns the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:42
+#: doc/classes/DynamicFont.xml:50
msgid "Returns the number of fallback fonts."
msgstr ""
-#: doc/classes/DynamicFont.xml:51
+#: doc/classes/DynamicFont.xml:59
msgid ""
"Returns the spacing for the given [code]type[/code] (see [enum SpacingType])."
msgstr ""
-#: doc/classes/DynamicFont.xml:60
+#: doc/classes/DynamicFont.xml:68
msgid "Removes the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:71
+#: doc/classes/DynamicFont.xml:79
msgid "Sets the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:82
+#: doc/classes/DynamicFont.xml:90
msgid ""
"Sets the spacing for [code]type[/code] (see [enum SpacingType]) to "
"[code]value[/code] in pixels (not relative to the font size)."
msgstr ""
-#: doc/classes/DynamicFont.xml:88
+#: doc/classes/DynamicFont.xml:96
msgid "Extra spacing at the bottom in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:91
+#: doc/classes/DynamicFont.xml:99
msgid "Extra character spacing in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:94
+#: doc/classes/DynamicFont.xml:102
msgid "Extra space spacing in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:97
+#: doc/classes/DynamicFont.xml:105
msgid "Extra spacing at the top in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:100
+#: doc/classes/DynamicFont.xml:108
msgid "The font data."
msgstr ""
-#: doc/classes/DynamicFont.xml:103
+#: doc/classes/DynamicFont.xml:111
msgid ""
"The font outline's color.\n"
"[b]Note:[/b] It's recommended to leave this at the default value so that you "
@@ -17538,27 +17749,27 @@ msgid ""
"outline modulate theme item."
msgstr ""
-#: doc/classes/DynamicFont.xml:107
+#: doc/classes/DynamicFont.xml:115
msgid "The font outline's thickness in pixels (not relative to the font size)."
msgstr ""
-#: doc/classes/DynamicFont.xml:110
+#: doc/classes/DynamicFont.xml:118
msgid "The font size in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:115
+#: doc/classes/DynamicFont.xml:123
msgid "Spacing at the top."
msgstr ""
-#: doc/classes/DynamicFont.xml:118
+#: doc/classes/DynamicFont.xml:126
msgid "Spacing at the bottom."
msgstr ""
-#: doc/classes/DynamicFont.xml:121
+#: doc/classes/DynamicFont.xml:129
msgid "Character spacing."
msgstr ""
-#: doc/classes/DynamicFont.xml:124
+#: doc/classes/DynamicFont.xml:132
msgid "Space spacing."
msgstr ""
@@ -17940,7 +18151,12 @@ msgstr ""
msgid "Remitted if a resource is reimported."
msgstr ""
-#: doc/classes/EditorFileSystem.xml:106
+#: doc/classes/EditorFileSystem.xml:100
+msgid ""
+"Emitted if at least one resource is reloaded when the filesystem is scanned."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:107
msgid "Emitted if the source of any imported file changed."
msgstr ""
@@ -17982,29 +18198,43 @@ msgstr ""
msgid "Returns the path to the file at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:86
+#: doc/classes/EditorFileSystemDirectory.xml:70
+msgid ""
+"Returns the base class of the script class defined in the file at index "
+"[code]idx[/code]. If the file doesn't define a script class using the "
+"[code]class_name[/code] syntax, this will return an empty string."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:79
+msgid ""
+"Returns the name of the script class defined in the file at index [code]idx[/"
+"code]. If the file doesn't define a script class using the [code]class_name[/"
+"code] syntax, this will return an empty string."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:88
msgid "Returns the file extension of the file at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:93
+#: doc/classes/EditorFileSystemDirectory.xml:95
msgid "Returns the name of this directory."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:100
+#: doc/classes/EditorFileSystemDirectory.xml:102
msgid ""
"Returns the parent directory for this directory or [code]null[/code] if "
"called on a directory at [code]res://[/code] or [code]user://[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:107
+#: doc/classes/EditorFileSystemDirectory.xml:109
msgid "Returns the path to this directory."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:116
+#: doc/classes/EditorFileSystemDirectory.xml:118
msgid "Returns the subdirectory at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:123
+#: doc/classes/EditorFileSystemDirectory.xml:125
msgid "Returns the number of subdirectories in this directory."
msgstr ""
@@ -18095,45 +18325,72 @@ msgstr ""
msgid "Gets the unique name of the importer."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:92
+#: doc/classes/EditorImportPlugin.xml:86
+msgid ""
+"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. For example:\n"
+"[codeblock]\n"
+"func get_option_visibility(option, options):\n"
+" # Only show the lossy quality setting if the compression mode is set to "
+"\"Lossy\".\n"
+" if option == \"compress/lossy_quality\" and options.has(\"compress/mode"
+"\"):\n"
+" return int(options[\"compress/mode\"]) == COMPRESS_LOSSY\n"
+"\n"
+" return true\n"
+"[/codeblock]\n"
+"Return [code]true[/code] to make all options always visible."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:102
msgid ""
"Gets the number of initial presets defined by the plugin. Use [method "
"get_import_options] to get the default options for the preset and [method "
"get_preset_name] to get the name of the preset."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:101
+#: doc/classes/EditorImportPlugin.xml:111
msgid "Gets the name of the options preset at this index."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:108
+#: doc/classes/EditorImportPlugin.xml:118
msgid ""
"Gets the priority of this plugin for the recognized extension. Higher "
"priority plugins will be preferred. The default priority is [code]1.0[/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:115
+#: doc/classes/EditorImportPlugin.xml:125
msgid ""
"Gets the list of file extensions to associate with this loader (case-"
"insensitive). e.g. [code][\"obj\"][/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:122
+#: doc/classes/EditorImportPlugin.xml:132
msgid ""
"Gets the Godot resource type associated with this loader. e.g. [code]\"Mesh"
"\"[/code] or [code]\"Animation\"[/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:129
+#: doc/classes/EditorImportPlugin.xml:139
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:136
+#: doc/classes/EditorImportPlugin.xml:146
msgid "Gets the name to display in the import window."
msgstr ""
+#: doc/classes/EditorImportPlugin.xml:163
+msgid ""
+"Imports [code]source_file[/code] into [code]save_path[/code] with the import "
+"[code]options[/code] specified. The [code]platform_variants[/code] and "
+"[code]gen_files[/code] arrays will be modified by this function.\n"
+"This method must be overridden to do the actual importing work. See this "
+"class' description for an example of overriding this method."
+msgstr ""
+
#: doc/classes/EditorInspector.xml:4
msgid "A tab used to edit properties of the selected node."
msgstr ""
@@ -18149,6 +18406,58 @@ msgid ""
"the singleton using [method EditorInterface.get_inspector]."
msgstr ""
+#: doc/classes/EditorInspector.xml:17
+msgid ""
+"Refreshes the inspector.\n"
+"[b]Note:[/b] To save on CPU resources, calling this method will do nothing "
+"if the time specified in [code]docks/property_editor/auto_refresh_interval[/"
+"code] editor setting hasn't passed yet since this method was last called. "
+"(By default, this interval is set to 0.3 seconds.)"
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:30
+msgid ""
+"Emitted when the Edit button of an [Object] has been pressed in the "
+"inspector. This is mainly used in the remote scene tree inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:37
+msgid "Emitted when a property is removed from the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:44
+msgid "Emitted when a property is edited in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:51
+msgid ""
+"Emitted when a property is keyed in the inspector. Properties can be keyed "
+"by clicking the \"key\" icon next to a property when the Animation panel is "
+"toggled."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:58
+msgid "Emitted when a property is selected in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:67
+msgid ""
+"Emitted when a boolean property is toggled in the inspector.\n"
+"[b]Note:[/b] This signal is never emitted if the internal [code]autoclear[/"
+"code] property enabled. Since this property is always enabled in the editor "
+"inspector, this signal is never emitted by the editor itself."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:77
+msgid "Emitted when a resource is selected in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:82
+msgid ""
+"Emitted when a property that requires a restart to be applied is edited in "
+"the inspector. This is only used in the Project Settings and Editor Settings."
+msgstr ""
+
#: doc/classes/EditorInspectorPlugin.xml:4
msgid "Plugin for adding custom property editors on inspector."
msgstr ""
@@ -18227,91 +18536,155 @@ msgstr ""
#: doc/classes/EditorInterface.xml:26
msgid ""
-"Returns the main container of Godot editor's window. You can use it, for "
-"example, to retrieve the size of the container and place your controls "
+"Returns the main container of Godot editor's window. For example, you can "
+"use it to retrieve the size of the container and place your controls "
"accordingly."
msgstr ""
-#: doc/classes/EditorInterface.xml:39
+#: doc/classes/EditorInterface.xml:33
+msgid "Returns the current path being viewed in the [FileSystemDock]."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:40
msgid "Returns the edited (current) scene's root [Node]."
msgstr ""
-#: doc/classes/EditorInterface.xml:46
-msgid "Returns the [EditorSettings]."
+#: doc/classes/EditorInterface.xml:47
+msgid "Returns the editor's [EditorSettings] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:54
+msgid ""
+"Returns the main editor control. Use this as a parent for main screens.\n"
+"[b]Note:[/b] This returns the main editor control containing the whole "
+"editor, not the 2D or 3D viewports specifically."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:62
+msgid "Returns the editor's [FileSystemDock] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:53
-msgid "Returns the editor [Viewport]."
+#: doc/classes/EditorInterface.xml:69
+msgid "Returns the editor's [EditorInspector] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:72
+#: doc/classes/EditorInterface.xml:76
msgid "Returns an [Array] with the file paths of the currently opened scenes."
msgstr ""
-#: doc/classes/EditorInterface.xml:79
-msgid "Returns the [EditorFileSystem]."
+#: doc/classes/EditorInterface.xml:83
+msgid ""
+"Returns the name of the scene that is being played. If no scene is currently "
+"being played, returns an empty string."
msgstr ""
-#: doc/classes/EditorInterface.xml:86
-msgid "Returns the [EditorResourcePreview]."
+#: doc/classes/EditorInterface.xml:90
+msgid "Returns the editor's [EditorFileSystem] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:93
-msgid "Returns the [ScriptEditor]."
+#: doc/classes/EditorInterface.xml:97
+msgid "Returns the editor's [EditorResourcePreview] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:106
-msgid "Returns the [EditorSelection]."
+#: doc/classes/EditorInterface.xml:104
+msgid "Returns the editor's [ScriptEditor] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:117
+#: doc/classes/EditorInterface.xml:111
msgid ""
-"Shows the given property on the given [code]object[/code] in the Editor's "
+"Returns the path of the directory currently selected in the "
+"[FileSystemDock]. If a file is selected, its base directory will be returned "
+"using [method String.get_base_dir] instead."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:118
+msgid "Returns the editor's [EditorSelection] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:129
+msgid ""
+"Shows the given property on the given [code]object[/code] in the editor's "
"Inspector dock."
msgstr ""
-#: doc/classes/EditorInterface.xml:126
+#: doc/classes/EditorInterface.xml:136
msgid ""
-"Returns the enabled status of a plugin. The plugin name is the same as its "
-"directory name."
+"Returns [code]true[/code] if a scene is currently being played, [code]false[/"
+"code] otherwise. Paused scenes are considered as being played."
msgstr ""
-#: doc/classes/EditorInterface.xml:137
+#: doc/classes/EditorInterface.xml:145
+msgid ""
+"Returns [code]true[/code] if the specified [code]plugin[/code] is enabled. "
+"The plugin name is the same as its directory name."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:156
msgid ""
"Returns mesh previews rendered at the given size as an [Array] of "
"[Texture2D]s."
msgstr ""
-#: doc/classes/EditorInterface.xml:146
+#: doc/classes/EditorInterface.xml:165
msgid "Opens the scene at the given path."
msgstr ""
-#: doc/classes/EditorInterface.xml:155
+#: doc/classes/EditorInterface.xml:172
+msgid "Plays the currently active scene."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:181
+msgid "Plays the scene specified by its filepath."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:188
+msgid "Plays the main scene."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:197
msgid "Reloads the scene at the given path."
msgstr ""
-#: doc/classes/EditorInterface.xml:162
+#: doc/classes/EditorInterface.xml:204
msgid ""
"Saves the scene. Returns either [code]OK[/code] or [code]ERR_CANT_CREATE[/"
"code] (see [@GlobalScope] constants)."
msgstr ""
-#: doc/classes/EditorInterface.xml:173
+#: doc/classes/EditorInterface.xml:215
msgid "Saves the scene as a file at [code]path[/code]."
msgstr ""
-#: doc/classes/EditorInterface.xml:182
+#: doc/classes/EditorInterface.xml:224
msgid ""
"Selects the file, with the path provided by [code]file[/code], in the "
"FileSystem dock."
msgstr ""
-#: doc/classes/EditorInterface.xml:201
+#: doc/classes/EditorInterface.xml:233
+msgid ""
+"Sets the editor's current main screen to the one specified in [code]name[/"
+"code]. [code]name[/code] must match the text of the tab in question exactly "
+"([code]2D[/code], [code]3D[/code], [code]Script[/code], [code]AssetLib[/"
+"code])."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:244
msgid ""
"Sets the enabled status of a plugin. The plugin name is the same as its "
"directory name."
msgstr ""
+#: doc/classes/EditorInterface.xml:251
+msgid "Stops the scene that is currently playing."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:257
+msgid ""
+"If [code]true[/code], enables distraction-free mode which hides side docks "
+"to increase the space available for the main view."
+msgstr ""
+
#: doc/classes/EditorNode3DGizmo.xml:4
msgid "Custom gizmo for editing Node3D objects."
msgstr ""
@@ -18323,14 +18696,20 @@ msgid ""
"information."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:26
+#: doc/classes/EditorNode3DGizmo.xml:18
+msgid ""
+"Adds the specified [code]segments[/code] to the gizmo's collision shape for "
+"picking. Call this function during [method redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:27
msgid ""
"Adds collision triangles to the gizmo for picking. A [TriangleMesh] can be "
"generated from a regular [Mesh] too. Call this function during [method "
"redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:41
+#: doc/classes/EditorNode3DGizmo.xml:42
msgid ""
"Adds a list of handles (points) which can be used to deform the object being "
"edited.\n"
@@ -18338,20 +18717,33 @@ msgid ""
"handles. Call this function during [method redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:57
+#: doc/classes/EditorNode3DGizmo.xml:58
msgid ""
"Adds lines to the gizmo (as sets of 2 points), with a given material. The "
"lines are used for visualizing the gizmo. Call this function during [method "
"redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:84
+#: doc/classes/EditorNode3DGizmo.xml:73
+msgid ""
+"Adds a mesh to the gizmo with the specified [code]billboard[/code] state, "
+"[code]skeleton[/code] and [code]material[/code]. If [code]billboard[/code] "
+"is [code]true[/code], the mesh will rotate to always face the camera. Call "
+"this function during [method redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:86
msgid ""
"Adds an unscaled billboard for visualization. Call this function during "
"[method redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:103
+#: doc/classes/EditorNode3DGizmo.xml:93
+msgid ""
+"Removes everything in the gizmo including meshes, collisions and handles."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:106
msgid ""
"Commit a handle being edited (handles must have been previously added by "
"[method add_handles]).\n"
@@ -18359,40 +18751,42 @@ msgid ""
"restore the edited value to the original is provided."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:113
+#: doc/classes/EditorNode3DGizmo.xml:116
msgid ""
"Gets the name of an edited handle (handles must have been previously added "
"by [method add_handles]).\n"
"Handles can be named for reference to the user when editing."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:123
+#: doc/classes/EditorNode3DGizmo.xml:126
msgid ""
"Gets actual value of a handle. This value can be anything and used for "
"eventually undoing the motion when calling [method commit_handle]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:130
+#: doc/classes/EditorNode3DGizmo.xml:133
msgid ""
"Returns the [EditorNode3DGizmoPlugin] that owns this gizmo. It's useful to "
"retrieve materials using [method EditorNode3DGizmoPlugin.get_material]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:137
+#: doc/classes/EditorNode3DGizmo.xml:140
msgid "Returns the Node3D node associated with this gizmo."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:146
-msgid "Gets whether a handle is highlighted or not."
+#: doc/classes/EditorNode3DGizmo.xml:149
+msgid ""
+"Returns [code]true[/code] if the handle at index [code]index[/code] is "
+"highlighted by being hovered with the mouse."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:153
+#: doc/classes/EditorNode3DGizmo.xml:156
msgid ""
-"This function is called when the Node3D this gizmo refers to changes (the "
+"This function is called when the [Node3D] this gizmo refers to changes (the "
"[method Node3D.update_gizmo] is called)."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:166
+#: doc/classes/EditorNode3DGizmo.xml:169
msgid ""
"This function is used when the user drags a gizmo handle (previously added "
"with [method add_handles]) in screen coordinates.\n"
@@ -18400,6 +18794,18 @@ msgid ""
"raycasts."
msgstr ""
+#: doc/classes/EditorNode3DGizmo.xml:179
+msgid ""
+"Sets the gizmo's hidden state. If [code]true[/code], the gizmo will be "
+"hidden. If [code]false[/code], it will be shown."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:188
+msgid ""
+"Sets the reference [Node3D] node for the gizmo. [code]node[/code] must "
+"inherit from [Node3D]."
+msgstr ""
+
#: doc/classes/EditorNode3DGizmoPlugin.xml:4
msgid "Used by the editor to define Node3D gizmo types."
msgstr ""
@@ -18492,7 +18898,17 @@ msgid ""
"visibility menu."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:150
+#: doc/classes/EditorNode3DGizmoPlugin.xml:142
+msgid ""
+"Override this method to set the gizmo's priority. Higher values correspond "
+"to higher priority. If a gizmo with higher priority conflicts with another "
+"gizmo, only the gizmo with higher priority will be used.\n"
+"All built-in editor gizmos return a priority of [code]-1[/code]. If not "
+"overridden, this method will return [code]0[/code], which means custom "
+"gizmos will automatically override built-in gizmos."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:152
msgid ""
"Override this method to define which Node3D nodes have a gizmo from this "
"plugin. Whenever a [Node3D] node is added to a scene this method is called, "
@@ -18500,25 +18916,25 @@ msgid ""
"assigned and is added to this plugin's list of active gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:161
+#: doc/classes/EditorNode3DGizmoPlugin.xml:163
msgid ""
"Gets whether a handle is highlighted or not. Called for this plugin's active "
"gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:168
+#: doc/classes/EditorNode3DGizmoPlugin.xml:170
msgid ""
"Override this method to define whether Node3D with this gizmo should be "
"selecteble even when the gizmo is hidden."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:177
+#: doc/classes/EditorNode3DGizmoPlugin.xml:179
msgid ""
"Callback to redraw the provided gizmo. Called for this plugin's active "
"gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:192
+#: doc/classes/EditorNode3DGizmoPlugin.xml:194
msgid ""
"Update the value of a handle after it has been updated. Called for this "
"plugin's active gizmos."
@@ -18605,7 +19021,13 @@ msgid ""
"should be cleaned up using [code]remove_tool_menu_item(name)[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:149
+#: doc/classes/EditorPlugin.xml:151
+msgid ""
+"Registers a custom translation parser plugin for extracting translatable "
+"strings from custom files."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:158
msgid ""
"This method is called when the editor is about to save the project, switch "
"to another tab, etc. It asks the plugin to apply any pending state changes "
@@ -18614,32 +19036,32 @@ msgid ""
"must apply the shader code being written by the user to the object."
msgstr ""
-#: doc/classes/EditorPlugin.xml:163
+#: doc/classes/EditorPlugin.xml:172
msgid ""
"Clear all the state and reset the object being edited to zero. This ensures "
"your plugin does not keep editing a currently existing node, or a node from "
"the wrong scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:170
+#: doc/classes/EditorPlugin.xml:179
msgid ""
"Called by the engine when the user disables the [EditorPlugin] in the Plugin "
"tab of the project settings window."
msgstr ""
-#: doc/classes/EditorPlugin.xml:179
+#: doc/classes/EditorPlugin.xml:188
msgid ""
"This function is used for plugins that edit specific object types (nodes or "
"resources). It requests the editor to edit the given object."
msgstr ""
-#: doc/classes/EditorPlugin.xml:186
+#: doc/classes/EditorPlugin.xml:195
msgid ""
"Called by the engine when the user enables the [EditorPlugin] in the Plugin "
"tab of the project settings window."
msgstr ""
-#: doc/classes/EditorPlugin.xml:211
+#: doc/classes/EditorPlugin.xml:220
msgid ""
"Called when there is a root node in the current edited scene, [method "
"handles] is implemented and an [InputEvent] happens in the 2D viewport. "
@@ -18664,7 +19086,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:237
+#: doc/classes/EditorPlugin.xml:246
msgid ""
"Called when there is a root node in the current edited scene, [method "
"handles] is implemented and an [InputEvent] happens in the 3D viewport. "
@@ -18689,20 +19111,20 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:259
+#: doc/classes/EditorPlugin.xml:268
msgid ""
"This is for editors that edit script-based objects. You can return a list of "
"breakpoints in the format ([code]script:line[/code]), for example: "
"[code]res://path_to_script.gd:25[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:266
+#: doc/classes/EditorPlugin.xml:275
msgid ""
"Returns the [EditorInterface] object that gives you control over Godot "
"editor's window and its functionalities."
msgstr ""
-#: doc/classes/EditorPlugin.xml:273
+#: doc/classes/EditorPlugin.xml:282
msgid ""
"Override this method in your plugin to return a [Texture2D] in order to give "
"it an icon.\n"
@@ -18720,7 +19142,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:289
+#: doc/classes/EditorPlugin.xml:298
msgid ""
"Override this method in your plugin to provide the name of the plugin when "
"displayed in the Godot editor.\n"
@@ -18728,33 +19150,33 @@ msgid ""
"of the \"2D\", \"3D\", \"Script\", and \"AssetLib\" buttons."
msgstr ""
-#: doc/classes/EditorPlugin.xml:297
+#: doc/classes/EditorPlugin.xml:306
msgid ""
"Gets the Editor's dialogue used for making scripts.\n"
"[b]Note:[/b] Users can configure it before use."
msgstr ""
-#: doc/classes/EditorPlugin.xml:305
+#: doc/classes/EditorPlugin.xml:314
msgid ""
"Gets the state of your plugin editor. This is used when saving the scene (so "
"state is kept when opening it again) and for switching tabs (so state can be "
"restored when the tab returns)."
msgstr ""
-#: doc/classes/EditorPlugin.xml:312
+#: doc/classes/EditorPlugin.xml:321
msgid ""
"Gets the undo/redo object. Most actions in the editor can be undoable, so "
"use this object to make sure this happens when it's worth it."
msgstr ""
-#: doc/classes/EditorPlugin.xml:321
+#: doc/classes/EditorPlugin.xml:330
msgid ""
"Gets the GUI layout of the plugin. This is used to save the project's editor "
"layout when [method queue_save_layout] is called or the editor layout was "
"changed(For example changing the position of a dock)."
msgstr ""
-#: doc/classes/EditorPlugin.xml:330
+#: doc/classes/EditorPlugin.xml:339
msgid ""
"Implement this function if your plugin edits a specific type of object "
"(Resource or Node). If you return [code]true[/code], then you will get the "
@@ -18764,14 +19186,14 @@ msgid ""
"be called too."
msgstr ""
-#: doc/classes/EditorPlugin.xml:337
+#: doc/classes/EditorPlugin.xml:346
msgid ""
"Returns [code]true[/code] if this is a main screen editor plugin (it goes in "
"the workspace selector together with [b]2D[/b], [b]3D[/b], [b]Script[/b] and "
"[b]AssetLib[/b])."
msgstr ""
-#: doc/classes/EditorPlugin.xml:360
+#: doc/classes/EditorPlugin.xml:369
msgid ""
"This function will be called when the editor is requested to become visible. "
"It is used for plugins that edit a specific object type.\n"
@@ -18779,85 +19201,89 @@ msgid ""
"manually."
msgstr ""
-#: doc/classes/EditorPlugin.xml:368
+#: doc/classes/EditorPlugin.xml:377
msgid "Queue save the project's editor layout."
msgstr ""
-#: doc/classes/EditorPlugin.xml:377
+#: doc/classes/EditorPlugin.xml:386
msgid "Removes an Autoload [code]name[/code] from the list."
msgstr ""
-#: doc/classes/EditorPlugin.xml:386
+#: doc/classes/EditorPlugin.xml:395
msgid ""
"Removes the control from the bottom panel. You have to manually [method Node."
"queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:397
+#: doc/classes/EditorPlugin.xml:406
msgid ""
"Removes the control from the specified container. You have to manually "
"[method Node.queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:406
+#: doc/classes/EditorPlugin.xml:415
msgid ""
"Removes the control from the dock. You have to manually [method Node."
"queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:415
+#: doc/classes/EditorPlugin.xml:424
msgid "Removes a custom type added by [method add_custom_type]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:464
+#: doc/classes/EditorPlugin.xml:473
msgid "Removes a menu [code]name[/code] from [b]Project > Tools[/b]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:471
+#: doc/classes/EditorPlugin.xml:482
+msgid "Removes a registered custom translation parser plugin."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:489
msgid ""
"This method is called after the editor saves the project or when it's "
"closed. It asks the plugin to save edited external scenes/resources."
msgstr ""
-#: doc/classes/EditorPlugin.xml:484
+#: doc/classes/EditorPlugin.xml:502
msgid ""
"Use this method if you always want to receive inputs from 3D view screen "
"inside [method forward_spatial_gui_input]. It might be especially usable if "
"your plugin will want to use raycast in the scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:493
+#: doc/classes/EditorPlugin.xml:511
msgid "Restore the state saved by [method get_state]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:502
+#: doc/classes/EditorPlugin.xml:520
msgid "Restore the plugin GUI layout saved by [method get_window_layout]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:509
+#: doc/classes/EditorPlugin.xml:527
msgid "Updates the overlays of the editor (2D/3D) viewport."
msgstr ""
-#: doc/classes/EditorPlugin.xml:518
+#: doc/classes/EditorPlugin.xml:536
msgid ""
"Emitted when user changes the workspace ([b]2D[/b], [b]3D[/b], [b]Script[/"
"b], [b]AssetLib[/b]). Also works with custom screens defined by plugins."
msgstr ""
-#: doc/classes/EditorPlugin.xml:531
+#: doc/classes/EditorPlugin.xml:549
msgid ""
"Emitted when the scene is changed in the editor. The argument will return "
"the root node of the scene that has just become active. If this scene is new "
"and empty, the argument will be [code]null[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:538
+#: doc/classes/EditorPlugin.xml:556
msgid ""
"Emitted when user closes a scene. The argument is file path to a closed "
"scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:584
+#: doc/classes/EditorPlugin.xml:602
msgid "Represents the size of the [enum DockSlot] enum."
msgstr ""
@@ -18912,64 +19338,83 @@ msgid "When this virtual function is called, you must update your editor."
msgstr ""
#: doc/classes/EditorProperty.xml:76
-msgid "Used by the inspector, set when property is checkable."
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is "
+"checkable."
msgstr ""
#: doc/classes/EditorProperty.xml:79
-msgid "Used by the inspector, when the property is checked."
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is checked."
msgstr ""
-#: doc/classes/EditorProperty.xml:84
-msgid "Used by the inspector, when the property must draw with error color."
+#: doc/classes/EditorProperty.xml:82
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property can be "
+"deleted by the user."
msgstr ""
-#: doc/classes/EditorProperty.xml:87
-msgid "Used by the inspector, when the property can add keys for animation."
+#: doc/classes/EditorProperty.xml:85
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property must draw "
+"with error color. This is used for editable children's properties."
msgstr ""
-#: doc/classes/EditorProperty.xml:90
-msgid "Sets this property to change the label (if you want to show one)."
+#: doc/classes/EditorProperty.xml:88
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property can add "
+"keys for animation."
msgstr ""
-#: doc/classes/EditorProperty.xml:93
-msgid "Used by the inspector, when the property is read-only."
+#: doc/classes/EditorProperty.xml:91
+msgid "Set this property to change the label (if you want to show one)."
msgstr ""
-#: doc/classes/EditorProperty.xml:103
+#: doc/classes/EditorProperty.xml:94
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is read-"
+"only."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:104
msgid ""
"Emit it if you want multiple properties modified at the same time. Do not "
"use if added via [method EditorInspectorPlugin.parse_property]."
msgstr ""
-#: doc/classes/EditorProperty.xml:112
+#: doc/classes/EditorProperty.xml:113
msgid "Used by sub-inspectors. Emit it if what was selected was an Object ID."
msgstr ""
-#: doc/classes/EditorProperty.xml:121
+#: doc/classes/EditorProperty.xml:122
msgid ""
"Do not emit this manually, use the [method emit_changed] method instead."
msgstr ""
-#: doc/classes/EditorProperty.xml:130
+#: doc/classes/EditorProperty.xml:131
msgid "Emitted when a property was checked. Used internally."
msgstr ""
-#: doc/classes/EditorProperty.xml:143
+#: doc/classes/EditorProperty.xml:138
+msgid "Emitted when a property was deleted. Used internally."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:145
msgid ""
"Emit it if you want to add this value as an animation key (check for keying "
"being enabled first)."
msgstr ""
-#: doc/classes/EditorProperty.xml:152
+#: doc/classes/EditorProperty.xml:154
msgid "Emit it if you want to key a property with a single value."
msgstr ""
-#: doc/classes/EditorProperty.xml:161
+#: doc/classes/EditorProperty.xml:163
msgid ""
"If you want a sub-resource to be edited, emit this signal with the resource."
msgstr ""
-#: doc/classes/EditorProperty.xml:170
+#: doc/classes/EditorProperty.xml:172
msgid "Emitted when selected. Used internally."
msgstr ""
@@ -19254,17 +19699,26 @@ msgstr ""
msgid ""
"Object that holds the project-independent editor settings. These settings "
"are generally visible in the [b]Editor > Editor Settings[/b] menu.\n"
-"Accessing the settings is done by using the regular [Object] API, such as:\n"
-"[codeblock]\n"
-"settings.set(prop,value)\n"
-"settings.get(prop)\n"
-"list_of_settings = settings.get_property_list()\n"
+"Property names use slash delimiters to distinguish sections. Setting values "
+"can be of any [Variant] type. It's recommended to use [code]snake_case[/"
+"code] for editor settings to be consistent with the Godot editor itself.\n"
+"Accessing the settings can be done using the following methods, such as:\n"
+"[codeblock]\n"
+"# `settings.set(\"some/property\", value)` also works as this class "
+"overrides `_set()` internally.\n"
+"settings.set_setting(\"some/property\",value)\n"
+"\n"
+"# `settings.get(\"some/property\", value)` also works as this class "
+"overrides `_get()` internally.\n"
+"settings.get_setting(\"some/property\")\n"
+"\n"
+"var list_of_settings = settings.get_property_list()\n"
"[/codeblock]\n"
"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
"the singleton using [method EditorInterface.get_editor_settings]."
msgstr ""
-#: doc/classes/EditorSettings.xml:25
+#: doc/classes/EditorSettings.xml:30
msgid ""
"Adds a custom property info to a property. The dictionary must contain:\n"
"- [code]name[/code]: [String] (the name of the property)\n"
@@ -19286,52 +19740,173 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorSettings.xml:50
-msgid "Erase a given setting (pass full property path)."
+#: doc/classes/EditorSettings.xml:55
+msgid "Erases the setting whose name is specified by [code]property[/code]."
msgstr ""
-#: doc/classes/EditorSettings.xml:57
-msgid "Gets the list of favorite files and directories for this project."
+#: doc/classes/EditorSettings.xml:62
+msgid "Returns the list of favorite files and directories for this project."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:75
+msgid ""
+"Returns project-specific metadata for the [code]section[/code] and "
+"[code]key[/code] specified. If the metadata doesn't exist, [code]default[/"
+"code] will be returned instead. See also [method set_project_metadata]."
msgstr ""
-#: doc/classes/EditorSettings.xml:76
+#: doc/classes/EditorSettings.xml:82
msgid ""
-"Gets the specific project settings path. Projects all have a unique sub-"
-"directory inside the settings path where project specific settings are saved."
+"Returns the project-specific settings path. Projects all have a unique "
+"subdirectory inside the settings path where project-specific settings are "
+"saved."
msgstr ""
-#: doc/classes/EditorSettings.xml:83
+#: doc/classes/EditorSettings.xml:89
msgid ""
-"Gets the list of recently visited folders in the file dialog for this "
+"Returns the list of recently visited folders in the file dialog for this "
"project."
msgstr ""
#: doc/classes/EditorSettings.xml:98
msgid ""
+"Returns the value of the setting specified by [code]name[/code]. This is "
+"equivalent to using [method Object.get] on the EditorSettings instance."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:105
+msgid ""
"Gets the global settings path for the engine. Inside this path, you can find "
"some standard paths such as:\n"
"[code]settings/tmp[/code] - Used for temporary storage of files\n"
"[code]settings/templates[/code] - Where export templates are located"
msgstr ""
-#: doc/classes/EditorSettings.xml:133
+#: doc/classes/EditorSettings.xml:116
+msgid ""
+"Returns [code]true[/code] if the setting specified by [code]name[/code] "
+"exists, [code]false[/code] otherwise."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:125
+msgid ""
+"Returns [code]true[/code] if the setting specified by [code]name[/code] can "
+"have its value reverted to the default value, [code]false[/code] otherwise. "
+"When this method returns [code]true[/code], a Revert button will display "
+"next to the setting in the Editor Settings."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:134
+msgid ""
+"Returns the default value of the setting specified by [code]name[/code]. "
+"This is the value that would be applied when clicking the Revert button in "
+"the Editor Settings."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:143
msgid "Sets the list of favorite files and directories for this project."
msgstr ""
-#: doc/classes/EditorSettings.xml:166
+#: doc/classes/EditorSettings.xml:156
+msgid ""
+"Sets the initial value of the setting specified by [code]name[/code] to "
+"[code]value[/code]. This is used to provide a value for the Revert button in "
+"the Editor Settings. If [code]update_current[/code] is true, the current "
+"value of the setting will be set to [code]value[/code] as well."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:169
+msgid ""
+"Sets project-specific metadata with the [code]section[/code], [code]key[/"
+"code] and [code]data[/code] specified. This metadata is stored outside the "
+"project folder and therefore won't be checked into version control. See also "
+"[method get_project_metadata]."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:178
msgid ""
"Sets the list of recently visited folders in the file dialog for this "
"project."
msgstr ""
-#: doc/classes/EditorSettings.xml:183
-msgid "Emitted when editor settings change."
+#: doc/classes/EditorSettings.xml:189
+msgid ""
+"Sets the [code]value[/code] of the setting specified by [code]name[/code]. "
+"This is equivalent to using [method Object.set] on the EditorSettings "
+"instance."
msgstr ""
-#: doc/classes/EditorSettings.xml:189
+#: doc/classes/EditorSettings.xml:196
+msgid "Emitted after any editor setting has changed."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:202
+msgid ""
+"Emitted after any editor setting has changed. It's used by various editor "
+"plugins to update their visuals on theme changes or logic on configuration "
+"changes."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:4
+msgid ""
+"Plugin for adding custom parsers to extract strings that are to be "
+"translated from custom files (.csv, .json etc.)."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:7
+msgid ""
+"Plugins are registered via [method EditorPlugin."
+"add_translation_parser_plugin] method. To define the parsing and string "
+"extraction logic, override the [method parse_file] method in script.\n"
+"The extracted strings will be written into a POT file selected by user under "
+"\"POT Generation\" in \"Localization\" tab in \"Project Settings\" menu.\n"
+"Below shows an example of a custom parser that extracts strings in a CSV "
+"file to write into a POT.\n"
+"[codeblock]\n"
+"tool\n"
+"extends EditorTranslationParserPlugin\n"
+"\n"
+"\n"
+"func parse_file(path, extracted_strings):\n"
+" var file = File.new()\n"
+" file.open(path, File.READ)\n"
+" var text = file.get_as_text()\n"
+" var split_strs = text.split(\",\", false, 0)\n"
+" for s in split_strs:\n"
+" extracted_strings.append(s)\n"
+" #print(\"Extracted string: \" + s)\n"
+"\n"
+"\n"
+"func get_recognized_extensions():\n"
+" return [\"csv\"]\n"
+"[/codeblock]\n"
+"[b]Note:[/b] If you override parsing logic for standard script types "
+"(GDScript, C#, etc.), it would be better to load the [code]path[/code] "
+"argument using [method ResourceLoader.load]. This is because built-in "
+"scripts are loaded as [Resource] type, not [File] type.\n"
+"For example:\n"
+"[codeblock]\n"
+"func parse_file(path, extracted_strings):\n"
+" var res = ResourceLoader.load(path, \"Script\")\n"
+" var text = res.get_source_code()\n"
+" # Parsing logic.\n"
+"\n"
+"\n"
+"func get_recognized_extensions():\n"
+" return [\"gd\"]\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:48
+msgid ""
+"Gets the list of file extensions to associate with this parser, e.g. [code]"
+"[\"csv\"][/code]."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:59
msgid ""
-"Emitted when editor settings change. It used by various editor plugins to "
-"update their visuals on theme changes or logic on configuration changes."
+"Override this method to define a custom parsing logic to extract the "
+"translatable strings."
msgstr ""
#: doc/classes/EditorVCSInterface.xml:4
@@ -19942,15 +20517,15 @@ msgid ""
"to 1.3 to compensate for the lack of HDR rendering."
msgstr ""
-#: doc/classes/Environment.xml:190
+#: doc/classes/Environment.xml:214
msgid "The [Sky] resource used for this [Environment]."
msgstr ""
-#: doc/classes/Environment.xml:197
+#: doc/classes/Environment.xml:221
msgid "The depth tolerance for screen-space reflections."
msgstr ""
-#: doc/classes/Environment.xml:200
+#: doc/classes/Environment.xml:224
msgid ""
"If [code]true[/code], screen-space reflections are enabled. Screen-space "
"reflections are more accurate than reflections from [GIProbe]s or "
@@ -19958,48 +20533,48 @@ msgid ""
"others."
msgstr ""
-#: doc/classes/Environment.xml:203
+#: doc/classes/Environment.xml:227
msgid ""
"The fade-in distance for screen-space reflections. Affects the area from the "
"reflected material to the screen-space reflection)."
msgstr ""
-#: doc/classes/Environment.xml:206
+#: doc/classes/Environment.xml:230
msgid ""
"The fade-out distance for screen-space reflections. Affects the area from "
"the screen-space reflection to the \"global\" reflection."
msgstr ""
-#: doc/classes/Environment.xml:209
+#: doc/classes/Environment.xml:233
msgid ""
"The maximum number of steps for screen-space reflections. Higher values are "
"slower."
msgstr ""
-#: doc/classes/Environment.xml:212
+#: doc/classes/Environment.xml:236
msgid ""
"The screen-space ambient occlusion intensity on materials that have an AO "
"texture defined. Values higher than [code]0[/code] will make the SSAO effect "
"visible in areas darkened by AO textures."
msgstr ""
-#: doc/classes/Environment.xml:215
+#: doc/classes/Environment.xml:239
msgid ""
"The screen-space ambient occlusion bias. This should be kept high enough to "
"prevent \"smooth\" curves from being affected by ambient occlusion."
msgstr ""
-#: doc/classes/Environment.xml:218
+#: doc/classes/Environment.xml:242
msgid ""
"The screen-space ambient occlusion blur quality. See [enum SSAOBlur] for "
"possible values."
msgstr ""
-#: doc/classes/Environment.xml:221
+#: doc/classes/Environment.xml:245
msgid "The screen-space ambient occlusion edge sharpness."
msgstr ""
-#: doc/classes/Environment.xml:224
+#: doc/classes/Environment.xml:248
msgid ""
"If [code]true[/code], the screen-space ambient occlusion effect is enabled. "
"This darkens objects' corners and cavities to simulate ambient light not "
@@ -20010,13 +20585,13 @@ msgid ""
"issues."
msgstr ""
-#: doc/classes/Environment.xml:227
+#: doc/classes/Environment.xml:251
msgid ""
"The primary screen-space ambient occlusion intensity. See also [member "
"ssao_radius]."
msgstr ""
-#: doc/classes/Environment.xml:230
+#: doc/classes/Environment.xml:254
msgid ""
"The screen-space ambient occlusion intensity in direct light. In real life, "
"ambient occlusion only applies to indirect light, which means its effects "
@@ -20024,46 +20599,46 @@ msgid ""
"the SSAO effect visible in direct light."
msgstr ""
-#: doc/classes/Environment.xml:233
+#: doc/classes/Environment.xml:257
msgid "The primary screen-space ambient occlusion radius."
msgstr ""
-#: doc/classes/Environment.xml:236
+#: doc/classes/Environment.xml:260
msgid "The default exposure used for tonemapping."
msgstr ""
-#: doc/classes/Environment.xml:239
+#: doc/classes/Environment.xml:263
msgid ""
"The tonemapping mode to use. Tonemapping is the process that \"converts\" "
"HDR values to be suitable for rendering on a LDR display. (Godot doesn't "
"support rendering on HDR displays yet.)"
msgstr ""
-#: doc/classes/Environment.xml:242
+#: doc/classes/Environment.xml:266
msgid ""
"The white reference value for tonemapping. Only effective if the [member "
"tonemap_mode] isn't set to [constant TONE_MAPPER_LINEAR]."
msgstr ""
-#: doc/classes/Environment.xml:247
+#: doc/classes/Environment.xml:271
msgid ""
"Clears the background using the clear color defined in [member "
"ProjectSettings.rendering/environment/default_clear_color]."
msgstr ""
-#: doc/classes/Environment.xml:250
+#: doc/classes/Environment.xml:274
msgid "Clears the background using a custom clear color."
msgstr ""
-#: doc/classes/Environment.xml:253
+#: doc/classes/Environment.xml:277
msgid "Displays a user-defined sky in the background."
msgstr ""
-#: doc/classes/Environment.xml:256
+#: doc/classes/Environment.xml:280
msgid "Displays a [CanvasLayer] in the background."
msgstr ""
-#: doc/classes/Environment.xml:259
+#: doc/classes/Environment.xml:283
msgid ""
"Keeps on screen every pixel drawn in the background. This is the fastest "
"background mode, but it can only be safely used in fully-interior scenes (no "
@@ -20071,107 +20646,107 @@ msgid ""
"is visible, \"ghost trail\" artifacts will be visible when moving the camera."
msgstr ""
-#: doc/classes/Environment.xml:262 doc/classes/RenderingServer.xml:3446
+#: doc/classes/Environment.xml:286 doc/classes/RenderingServer.xml:3457
msgid "Displays a camera feed in the background."
msgstr ""
-#: doc/classes/Environment.xml:265
+#: doc/classes/Environment.xml:289
msgid "Represents the size of the [enum BGMode] enum."
msgstr ""
-#: doc/classes/Environment.xml:268 doc/classes/RenderingServer.xml:3452
+#: doc/classes/Environment.xml:292 doc/classes/RenderingServer.xml:3463
msgid ""
"Gather ambient light from whichever source is specified as the background."
msgstr ""
-#: doc/classes/Environment.xml:271 doc/classes/RenderingServer.xml:3455
+#: doc/classes/Environment.xml:295 doc/classes/RenderingServer.xml:3466
msgid "Disable ambient light."
msgstr ""
-#: doc/classes/Environment.xml:274 doc/classes/RenderingServer.xml:3458
+#: doc/classes/Environment.xml:298 doc/classes/RenderingServer.xml:3469
msgid "Specify a specific [Color] for ambient light."
msgstr ""
-#: doc/classes/Environment.xml:277 doc/classes/RenderingServer.xml:3461
+#: doc/classes/Environment.xml:301 doc/classes/RenderingServer.xml:3472
msgid ""
"Gather ambient light from the [Sky] regardless of what the background is."
msgstr ""
-#: doc/classes/Environment.xml:280 doc/classes/RenderingServer.xml:3464
+#: doc/classes/Environment.xml:304 doc/classes/RenderingServer.xml:3475
msgid "Use the background for reflections."
msgstr ""
-#: doc/classes/Environment.xml:283 doc/classes/RenderingServer.xml:3467
+#: doc/classes/Environment.xml:307 doc/classes/RenderingServer.xml:3478
msgid "Disable reflections."
msgstr ""
-#: doc/classes/Environment.xml:286 doc/classes/RenderingServer.xml:3470
+#: doc/classes/Environment.xml:310 doc/classes/RenderingServer.xml:3481
msgid "Use the [Sky] for reflections regardless of what the background is."
msgstr ""
-#: doc/classes/Environment.xml:289 doc/classes/RenderingServer.xml:3473
+#: doc/classes/Environment.xml:313
+msgid ""
+"Linear tonemapper operator. Reads the linear data and passes it on "
+"unmodified."
+msgstr ""
+
+#: doc/classes/Environment.xml:316
+msgid ""
+"Reinhardt tonemapper operator. Performs a variation on rendered pixels' "
+"colors by this formula: [code]color = color / (1 + color)[/code]."
+msgstr ""
+
+#: doc/classes/Environment.xml:319
+msgid "Filmic tonemapper operator."
+msgstr ""
+
+#: doc/classes/Environment.xml:322
+msgid "Academy Color Encoding System tonemapper operator."
+msgstr ""
+
+#: doc/classes/Environment.xml:325 doc/classes/RenderingServer.xml:3484
msgid ""
"Additive glow blending mode. Mostly used for particles, glows (bloom), lens "
"flare, bright sources."
msgstr ""
-#: doc/classes/Environment.xml:292 doc/classes/RenderingServer.xml:3476
+#: doc/classes/Environment.xml:328 doc/classes/RenderingServer.xml:3487
msgid ""
"Screen glow blending mode. Increases brightness, used frequently with bloom."
msgstr ""
-#: doc/classes/Environment.xml:295 doc/classes/RenderingServer.xml:3479
+#: doc/classes/Environment.xml:331 doc/classes/RenderingServer.xml:3490
msgid ""
"Soft light glow blending mode. Modifies contrast, exposes shadows and "
"highlights (vivid bloom)."
msgstr ""
-#: doc/classes/Environment.xml:298 doc/classes/RenderingServer.xml:3482
+#: doc/classes/Environment.xml:334 doc/classes/RenderingServer.xml:3493
msgid ""
"Replace glow blending mode. Replaces all pixels' color by the glow value. "
"This can be used to simulate a full-screen blur effect by tweaking the glow "
"parameters to match the original image's brightness."
msgstr ""
-#: doc/classes/Environment.xml:301 doc/classes/RenderingServer.xml:3485
+#: doc/classes/Environment.xml:337 doc/classes/RenderingServer.xml:3496
msgid ""
"Mixes the glow with the underlying color to avoid increasing brightness as "
"much while still maintaining a glow effect."
msgstr ""
-#: doc/classes/Environment.xml:304
-msgid ""
-"Linear tonemapper operator. Reads the linear data and passes it on "
-"unmodified."
-msgstr ""
-
-#: doc/classes/Environment.xml:307
-msgid ""
-"Reinhardt tonemapper operator. Performs a variation on rendered pixels' "
-"colors by this formula: [code]color = color / (1 + color)[/code]."
-msgstr ""
-
-#: doc/classes/Environment.xml:310
-msgid "Filmic tonemapper operator."
-msgstr ""
-
-#: doc/classes/Environment.xml:313
-msgid "Academy Color Encoding System tonemapper operator."
-msgstr ""
-
-#: doc/classes/Environment.xml:316
+#: doc/classes/Environment.xml:340
msgid "No blur for the screen-space ambient occlusion effect (fastest)."
msgstr ""
-#: doc/classes/Environment.xml:319
+#: doc/classes/Environment.xml:343
msgid "1×1 blur for the screen-space ambient occlusion effect."
msgstr ""
-#: doc/classes/Environment.xml:322
+#: doc/classes/Environment.xml:346
msgid "2×2 blur for the screen-space ambient occlusion effect."
msgstr ""
-#: doc/classes/Environment.xml:325
+#: doc/classes/Environment.xml:349
msgid ""
"3×3 blur for the screen-space ambient occlusion effect. Increases the radius "
"of the blur for a smoother look, but can result in checkerboard-like "
@@ -20256,14 +20831,17 @@ msgid ""
" var content = file.get_as_text()\n"
" file.close()\n"
" return content\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"In the example above, the file will be saved in the user data folder as "
+"specified in the [url=https://docs.godotengine.org/en/latest/tutorials/io/"
+"data_paths.html]Data paths[/url] documentation."
msgstr ""
-#: doc/classes/File.xml:32
+#: doc/classes/File.xml:33
msgid "Closes the currently opened file."
msgstr ""
-#: doc/classes/File.xml:39
+#: doc/classes/File.xml:40
msgid ""
"Returns [code]true[/code] if the file cursor has read past the end of the "
"file.\n"
@@ -20274,7 +20852,7 @@ msgid ""
"get_position] to implement a custom logic."
msgstr ""
-#: doc/classes/File.xml:49
+#: doc/classes/File.xml:50
msgid ""
"Returns [code]true[/code] if the file exists in the given path.\n"
"[b]Note:[/b] Many resources types are imported (e.g. textures or sound "
@@ -20287,41 +20865,41 @@ msgid ""
"source asset is present in [code]res://[/code], but fail when exported)."
msgstr ""
-#: doc/classes/File.xml:57
+#: doc/classes/File.xml:58
msgid ""
"Returns the next 16 bits from the file as an integer. See [method store_16] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:64
+#: doc/classes/File.xml:65
msgid ""
"Returns the next 32 bits from the file as an integer. See [method store_32] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:71
+#: doc/classes/File.xml:72
msgid ""
"Returns the next 64 bits from the file as an integer. See [method store_64] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:78
+#: doc/classes/File.xml:79
msgid ""
"Returns the next 8 bits from the file as an integer. See [method store_8] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:85
+#: doc/classes/File.xml:86
msgid ""
"Returns the whole file as a [String].\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:95
+#: doc/classes/File.xml:96
msgid "Returns next [code]len[/code] bytes of the file as a [PackedByteArray]."
msgstr ""
-#: doc/classes/File.xml:104
+#: doc/classes/File.xml:105
msgid ""
"Returns the next value of the file in CSV (Comma-Separated Values) format. "
"You can pass a different delimiter [code]delim[/code] to use other than the "
@@ -20330,37 +20908,37 @@ msgid ""
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:112
+#: doc/classes/File.xml:113
msgid "Returns the next 64 bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:119
+#: doc/classes/File.xml:120
msgid ""
"Returns the last error that happened when trying to perform operations. "
"Compare with the [code]ERR_FILE_*[/code] constants from [enum Error]."
msgstr ""
-#: doc/classes/File.xml:126
+#: doc/classes/File.xml:127
msgid "Returns the next 32 bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:133
+#: doc/classes/File.xml:134
msgid "Returns the size of the file in bytes."
msgstr ""
-#: doc/classes/File.xml:140
+#: doc/classes/File.xml:141
msgid ""
"Returns the next line of the file as a [String].\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:150
+#: doc/classes/File.xml:151
msgid ""
"Returns an MD5 String representing the file at the given path or an empty "
"[String] on failure."
msgstr ""
-#: doc/classes/File.xml:159
+#: doc/classes/File.xml:160
msgid ""
"Returns the last time the [code]file[/code] was modified in unix timestamp "
"format or returns a [String] \"ERROR IN [code]file[/code]\". This unix "
@@ -20368,35 +20946,35 @@ msgid ""
"get_datetime_from_unix_time]."
msgstr ""
-#: doc/classes/File.xml:166
+#: doc/classes/File.xml:167
msgid ""
"Returns a [String] saved in Pascal format from the file.\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:174
+#: doc/classes/File.xml:175
msgid "Returns the path as a [String] for the current open file."
msgstr ""
-#: doc/classes/File.xml:181
+#: doc/classes/File.xml:182
msgid "Returns the absolute path as a [String] for the current open file."
msgstr ""
-#: doc/classes/File.xml:188
+#: doc/classes/File.xml:189
msgid "Returns the file cursor's position."
msgstr ""
-#: doc/classes/File.xml:195
+#: doc/classes/File.xml:196
msgid "Returns the next bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:204
+#: doc/classes/File.xml:205
msgid ""
"Returns a SHA-256 [String] representing the file at the given path or an "
"empty [String] on failure."
msgstr ""
-#: doc/classes/File.xml:213
+#: doc/classes/File.xml:214
msgid ""
"Returns the next [Variant] value from the file. If [code]allow_objects[/"
"code] is [code]true[/code], decoding objects is allowed.\n"
@@ -20405,37 +20983,38 @@ msgid ""
"to avoid potential security threats such as remote code execution."
msgstr ""
-#: doc/classes/File.xml:221
+#: doc/classes/File.xml:222
msgid "Returns [code]true[/code] if the file is currently opened."
msgstr ""
-#: doc/classes/File.xml:232
+#: doc/classes/File.xml:233
msgid "Opens the file for writing or reading, depending on the flags."
msgstr ""
-#: doc/classes/File.xml:245
+#: doc/classes/File.xml:246
msgid "Opens a compressed file for reading or writing."
msgstr ""
-#: doc/classes/File.xml:258
+#: doc/classes/File.xml:259
msgid ""
"Opens an encrypted file in write or read mode. You need to pass a binary key "
-"to encrypt/decrypt it."
+"to encrypt/decrypt it.\n"
+"[b]Note:[/b] The provided key must be 32 bytes long."
msgstr ""
-#: doc/classes/File.xml:271
+#: doc/classes/File.xml:273
msgid ""
"Opens an encrypted file in write or read mode. You need to pass a password "
"to encrypt/decrypt it."
msgstr ""
-#: doc/classes/File.xml:280
+#: doc/classes/File.xml:282
msgid ""
"Changes the file reading/writing cursor to the specified position (in bytes "
"from the beginning of the file)."
msgstr ""
-#: doc/classes/File.xml:289
+#: doc/classes/File.xml:291
msgid ""
"Changes the file reading/writing cursor to the specified position (in bytes "
"from the end of the file).\n"
@@ -20443,7 +21022,7 @@ msgid ""
"cursor will be at the end of the file."
msgstr ""
-#: doc/classes/File.xml:299
+#: doc/classes/File.xml:301
msgid ""
"Stores an integer as 16 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, "
@@ -20471,7 +21050,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/File.xml:328
+#: doc/classes/File.xml:330
msgid ""
"Stores an integer as 32 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, "
@@ -20480,14 +21059,14 @@ msgid ""
"(see [method store_16] for an example)."
msgstr ""
-#: doc/classes/File.xml:339
+#: doc/classes/File.xml:341
msgid ""
"Stores an integer as 64 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] must lie in the interval [code][-2^63, "
"2^63 - 1][/code] (i.e. be a valid [int] value)."
msgstr ""
-#: doc/classes/File.xml:349
+#: doc/classes/File.xml:351
msgid ""
"Stores an integer as 8 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, 255]"
@@ -20496,11 +21075,11 @@ msgid ""
"(see [method store_16] for an example)."
msgstr ""
-#: doc/classes/File.xml:360
+#: doc/classes/File.xml:362
msgid "Stores the given array of bytes in the file."
msgstr ""
-#: doc/classes/File.xml:371
+#: doc/classes/File.xml:373
msgid ""
"Store the given [PackedStringArray] in the file as a line formatted in the "
"CSV (Comma-Separated Values) format. You can pass a different delimiter "
@@ -20509,45 +21088,45 @@ msgid ""
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:381
+#: doc/classes/File.xml:383
msgid "Stores a floating-point number as 64 bits in the file."
msgstr ""
-#: doc/classes/File.xml:390
+#: doc/classes/File.xml:392
msgid "Stores a floating-point number as 32 bits in the file."
msgstr ""
-#: doc/classes/File.xml:399
+#: doc/classes/File.xml:401
msgid ""
"Stores the given [String] as a line in the file.\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:409
+#: doc/classes/File.xml:411
msgid ""
"Stores the given [String] as a line in the file in Pascal format (i.e. also "
"store the length of the string).\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:419
+#: doc/classes/File.xml:421
msgid "Stores a floating-point number in the file."
msgstr ""
-#: doc/classes/File.xml:428
+#: doc/classes/File.xml:430
msgid ""
"Stores the given [String] in the file.\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:440
+#: doc/classes/File.xml:442
msgid ""
"Stores any Variant value in the file. If [code]full_objects[/code] is "
"[code]true[/code], encoding objects is allowed (and can potentially include "
"code)."
msgstr ""
-#: doc/classes/File.xml:446
+#: doc/classes/File.xml:448
msgid ""
"If [code]true[/code], the file's endianness is swapped. Use this if you're "
"dealing with files written on big-endian machines.\n"
@@ -20555,44 +21134,44 @@ msgid ""
"reset to [code]false[/code] whenever you open the file."
msgstr ""
-#: doc/classes/File.xml:452
+#: doc/classes/File.xml:454
msgid "Opens the file for read operations."
msgstr ""
-#: doc/classes/File.xml:455
+#: doc/classes/File.xml:457
msgid ""
"Opens the file for write operations. Create it if the file does not exist "
"and truncate if it exists."
msgstr ""
-#: doc/classes/File.xml:458
+#: doc/classes/File.xml:460
msgid ""
"Opens the file for read and write operations. Does not truncate the file."
msgstr ""
-#: doc/classes/File.xml:461
+#: doc/classes/File.xml:463
msgid ""
"Opens the file for read and write operations. Create it if the file does not "
"exist and truncate if it exists."
msgstr ""
-#: doc/classes/File.xml:464
+#: doc/classes/File.xml:466
msgid "Uses the [url=http://fastlz.org/]FastLZ[/url] compression method."
msgstr ""
-#: doc/classes/File.xml:467
+#: doc/classes/File.xml:469
msgid ""
"Uses the [url=https://en.wikipedia.org/wiki/DEFLATE]DEFLATE[/url] "
"compression method."
msgstr ""
-#: doc/classes/File.xml:470
+#: doc/classes/File.xml:472
msgid ""
"Uses the [url=https://facebook.github.io/zstd/]Zstandard[/url] compression "
"method."
msgstr ""
-#: doc/classes/File.xml:473
+#: doc/classes/File.xml:475
msgid "Uses the [url=https://www.gzip.org/]gzip[/url] compression method."
msgstr ""
@@ -20808,10 +21387,11 @@ msgid ""
"Draw [code]string[/code] into a canvas item using the font at a given "
"position, with [code]modulate[/code] color, and optionally clipping the "
"width. [code]position[/code] specifies the baseline, not the top. To draw "
-"from the top, [i]ascent[/i] must be added to the Y axis."
+"from the top, [i]ascent[/i] must be added to the Y axis.\n"
+"See also [method CanvasItem.draw_string]."
msgstr ""
-#: doc/classes/Font.xml:47
+#: doc/classes/Font.xml:48
msgid ""
"Draw character [code]char[/code] into a canvas item using the font at a "
"given position, with [code]modulate[/code] color, and optionally kerning if "
@@ -20821,39 +21401,39 @@ msgid ""
"making this function useful for drawing strings character by character."
msgstr ""
-#: doc/classes/Font.xml:54
+#: doc/classes/Font.xml:55
msgid "Returns the font ascent (number of pixels above the baseline)."
msgstr ""
-#: doc/classes/Font.xml:65
+#: doc/classes/Font.xml:66
msgid ""
"Returns the size of a character, optionally taking kerning into account if "
"the next character is provided."
msgstr ""
-#: doc/classes/Font.xml:72
+#: doc/classes/Font.xml:73
msgid "Returns the font descent (number of pixels below the baseline)."
msgstr ""
-#: doc/classes/Font.xml:79
+#: doc/classes/Font.xml:80
msgid "Returns the total font height (ascent plus descent) in pixels."
msgstr ""
-#: doc/classes/Font.xml:88
+#: doc/classes/Font.xml:89
msgid "Returns the size of a string, taking kerning and advance into account."
msgstr ""
-#: doc/classes/Font.xml:99
+#: doc/classes/Font.xml:100
msgid ""
"Returns the size that the string would have with word wrapping enabled with "
"a fixed [code]width[/code]."
msgstr ""
-#: doc/classes/Font.xml:106
+#: doc/classes/Font.xml:107
msgid "Returns [code]true[/code] if the font has an outline."
msgstr ""
-#: doc/classes/Font.xml:119
+#: doc/classes/Font.xml:120
msgid ""
"After editing a font (changing size, ascent, char rects, etc.). Call this "
"function to propagate changes to controls that might use it."
@@ -21025,13 +21605,14 @@ msgstr ""
#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:7
msgid ""
-"Calling [method @GDScript.yield] within a function will cause that function "
-"to yield and return its current state as an object of this type. The yielded "
+"FIXME: Outdated docs as of GDScript rewrite in 4.0.\n"
+"Calling [code]yield[/code] within a function will cause that function to "
+"yield and return its current state as an object of this type. The yielded "
"function call can then be resumed later by calling [method resume] on this "
"state object."
msgstr ""
-#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:18
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:19
msgid ""
"Check whether the function call may be resumed. This is not the case if the "
"function state was already resumed.\n"
@@ -21042,12 +21623,12 @@ msgid ""
"script have survived up to that point."
msgstr ""
-#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:28
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:29
msgid ""
"Resume execution of the yielded function call.\n"
-"If handed an argument, return the argument from the [method @GDScript.yield] "
-"call in the yielded function call. You can pass e.g. an [Array] to hand "
-"multiple arguments.\n"
+"If handed an argument, return the argument from the [code]yield[/code] call "
+"in the yielded function call. You can pass e.g. an [Array] to hand multiple "
+"arguments.\n"
"This function returns what the resumed function call returns, possibly "
"another function state if yielded again."
msgstr ""
@@ -21616,10 +22197,20 @@ msgid ""
"code], see [enum PolyJoinType].\n"
"The operation may result in an outer polygon (boundary) and inner polygon "
"(hole) produced which could be distinguished by calling [method "
-"is_polygon_clockwise]."
+"is_polygon_clockwise].\n"
+"[b]Note:[/b] To translate the polygon's vertices specifically, use the "
+"[method Transform2D.xform] method:\n"
+"[codeblock]\n"
+"var polygon = PackedVector2Array([Vector2(0, 0), Vector2(100, 0), "
+"Vector2(100, 100), Vector2(0, 100)])\n"
+"var offset = Vector2(50, 50)\n"
+"polygon = Transform2D(0, offset).xform(polygon)\n"
+"print(polygon) # prints [Vector2(50, 50), Vector2(150, 50), Vector2(150, "
+"150), Vector2(50, 150)]\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/Geometry2D.xml:217
+#: doc/classes/Geometry2D.xml:224
msgid ""
"Inflates or deflates [code]polyline[/code] by [code]delta[/code] units "
"(pixels), producing polygons. If [code]delta[/code] is positive, makes the "
@@ -21635,13 +22226,13 @@ msgid ""
"is_polygon_clockwise]."
msgstr ""
-#: doc/classes/Geometry2D.xml:235
+#: doc/classes/Geometry2D.xml:242
msgid ""
"Returns if [code]point[/code] is inside the triangle specified by [code]a[/"
"code], [code]b[/code] and [code]c[/code]."
msgstr ""
-#: doc/classes/Geometry2D.xml:250
+#: doc/classes/Geometry2D.xml:257
msgid ""
"Checks if the two segments ([code]from_a[/code], [code]to_a[/code]) and "
"([code]from_b[/code], [code]to_b[/code]) intersect. If yes, return the point "
@@ -21649,7 +22240,7 @@ msgid ""
"empty [Variant]."
msgstr ""
-#: doc/classes/Geometry2D.xml:259
+#: doc/classes/Geometry2D.xml:266
msgid ""
"Triangulates the area specified by discrete set of [code]points[/code] such "
"that no point is inside the circumcircle of any resulting triangle. Returns "
@@ -21660,7 +22251,7 @@ msgid ""
"[PackedInt32Array] is returned."
msgstr ""
-#: doc/classes/Geometry2D.xml:268
+#: doc/classes/Geometry2D.xml:275
msgid ""
"Triangulates the polygon specified by the points in [code]polygon[/code]. "
"Returns a [PackedInt32Array] where each triangle consists of three "
@@ -21670,40 +22261,40 @@ msgid ""
"[PackedInt32Array] is returned."
msgstr ""
-#: doc/classes/Geometry2D.xml:274
+#: doc/classes/Geometry2D.xml:281
msgid ""
"Create regions where either subject or clip polygons (or both) are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:277
+#: doc/classes/Geometry2D.xml:284
msgid ""
"Create regions where subject polygons are filled except where clip polygons "
"are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:280
+#: doc/classes/Geometry2D.xml:287
msgid "Create regions where both subject and clip polygons are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:283
+#: doc/classes/Geometry2D.xml:290
msgid ""
"Create regions where either subject or clip polygons are filled but not "
"where both are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:286
+#: doc/classes/Geometry2D.xml:293
msgid ""
"Squaring is applied uniformally at all convex edge joins at [code]1 * delta[/"
"code]."
msgstr ""
-#: doc/classes/Geometry2D.xml:289
+#: doc/classes/Geometry2D.xml:296
msgid ""
"While flattened paths can never perfectly trace an arc, they are "
"approximated by a series of arc chords."
msgstr ""
-#: doc/classes/Geometry2D.xml:292
+#: doc/classes/Geometry2D.xml:299
msgid ""
"There's a necessary limit to mitered joins since offsetting edges that join "
"at very acute angles will produce excessively long and narrow \"spikes\". "
@@ -21711,27 +22302,27 @@ msgid ""
"distance, \"square\" joining is applied."
msgstr ""
-#: doc/classes/Geometry2D.xml:295
+#: doc/classes/Geometry2D.xml:302
msgid ""
"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
"as a polygon."
msgstr ""
-#: doc/classes/Geometry2D.xml:298
+#: doc/classes/Geometry2D.xml:305
msgid ""
"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
"as a polyline."
msgstr ""
-#: doc/classes/Geometry2D.xml:301
+#: doc/classes/Geometry2D.xml:308
msgid "Endpoints are squared off with no extension."
msgstr ""
-#: doc/classes/Geometry2D.xml:304
+#: doc/classes/Geometry2D.xml:311
msgid "Endpoints are squared off and extended by [code]delta[/code] units."
msgstr ""
-#: doc/classes/Geometry2D.xml:307
+#: doc/classes/Geometry2D.xml:314
msgid "Endpoints are rounded off and extended by [code]delta[/code] units."
msgstr ""
@@ -21961,7 +22552,7 @@ msgstr ""
msgid ""
"Bakes the effect from all [GeometryInstance3D]s marked with [constant "
"GeometryInstance3D.GI_MODE_BAKED] and [Light3D]s marked with either "
-"[constant Light3D.BAKE_INDIRECT] or [constant Light3D.BAKE_ALL]. If "
+"[constant Light3D.BAKE_DYNAMIC] or [constant Light3D.BAKE_STATIC]. If "
"[code]create_visual_debug[/code] is [code]true[/code], after baking the "
"light, this will generate a [MultiMesh] that has a cube representing each "
"solid cell with each cube colored to the cell's albedo color. This can be "
@@ -22848,121 +23439,119 @@ msgstr ""
msgid "Clear all cells."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:53
+#: modules/gridmap/doc_classes/GridMap.xml:49
msgid ""
-"The [MeshLibrary] item index located at the grid-based X, Y and Z "
-"coordinates. If the cell is empty, [constant INVALID_CELL_ITEM] will be "
-"returned."
+"The [MeshLibrary] item index located at the given grid coordinates. If the "
+"cell is empty, [constant INVALID_CELL_ITEM] will be returned."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:66
+#: modules/gridmap/doc_classes/GridMap.xml:58
msgid ""
-"The orientation of the cell at the grid-based X, Y and Z coordinates. -1 is "
-"returned if the cell is empty."
+"The orientation of the cell at the given grid coordinates. [code]-1[/code] "
+"is returned if the cell is empty."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:75 doc/classes/PhysicsBody2D.xml:35
+#: modules/gridmap/doc_classes/GridMap.xml:67 doc/classes/PhysicsBody2D.xml:35
#: doc/classes/PhysicsBody3D.xml:35
msgid "Returns an individual bit on the [member collision_layer]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:84 doc/classes/PhysicsBody2D.xml:44
+#: modules/gridmap/doc_classes/GridMap.xml:76 doc/classes/PhysicsBody2D.xml:44
#: doc/classes/PhysicsBody3D.xml:44
msgid "Returns an individual bit on the [member collision_mask]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:91
+#: modules/gridmap/doc_classes/GridMap.xml:83
msgid ""
"Returns an array of [Transform] and [Mesh] references corresponding to the "
"non-empty cells in the grid. The transforms are specified in world space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:98
+#: modules/gridmap/doc_classes/GridMap.xml:90
msgid ""
"Returns an array of [Vector3] with the non-empty cell coordinates in the "
"grid map."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:121
+#: modules/gridmap/doc_classes/GridMap.xml:109
msgid ""
"Returns the position of a grid cell in the GridMap's local coordinate space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:146
+#: modules/gridmap/doc_classes/GridMap.xml:130
msgid ""
-"Sets the mesh index for the cell referenced by its grid-based X, Y and Z "
-"coordinates.\n"
+"Sets the mesh index for the cell referenced by its grid coordinates.\n"
"A negative item index such as [constant INVALID_CELL_ITEM] will clear the "
"cell.\n"
"Optionally, the item's orientation can be passed. For valid orientation "
"values, see [method Basis.get_orthogonal_index]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:173
+#: modules/gridmap/doc_classes/GridMap.xml:157
msgid "Sets an individual bit on the [member collision_layer]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:184
+#: modules/gridmap/doc_classes/GridMap.xml:168
msgid "Sets an individual bit on the [member collision_mask]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:193
+#: modules/gridmap/doc_classes/GridMap.xml:177
msgid ""
"Returns the coordinates of the grid cell containing the given point.\n"
"[code]pos[/code] should be in the GridMap's local coordinate space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:200
+#: modules/gridmap/doc_classes/GridMap.xml:184
msgid "If [code]true[/code], grid items are centered on the X axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:203
+#: modules/gridmap/doc_classes/GridMap.xml:187
msgid "If [code]true[/code], grid items are centered on the Y axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:206
+#: modules/gridmap/doc_classes/GridMap.xml:190
msgid "If [code]true[/code], grid items are centered on the Z axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:209
+#: modules/gridmap/doc_classes/GridMap.xml:193
msgid ""
"The size of each octant measured in number of cells. This applies to all "
"three axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:212
+#: modules/gridmap/doc_classes/GridMap.xml:196
msgid ""
"The scale of the cell items.\n"
"This does not affect the size of the grid cells themselves, only the items "
"in them. This can be used to make cell items overlap their neighbors."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:216
+#: modules/gridmap/doc_classes/GridMap.xml:200
msgid ""
"The dimensions of the grid's cells.\n"
"This does not affect the size of the meshes. See [member cell_scale]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:220
+#: modules/gridmap/doc_classes/GridMap.xml:204
msgid ""
"The physics layers this GridMap is in.\n"
"GridMaps act as static bodies, meaning they aren't affected by gravity or "
"other forces. They only affect other physics bodies that collide with them."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:224
+#: modules/gridmap/doc_classes/GridMap.xml:208
msgid "The physics layers this GridMap detects collisions in."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:227
+#: modules/gridmap/doc_classes/GridMap.xml:211
msgid "The assigned [MeshLibrary]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:235
+#: modules/gridmap/doc_classes/GridMap.xml:219
msgid "Emitted when [member cell_size] changes."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:241
+#: modules/gridmap/doc_classes/GridMap.xml:225
msgid ""
"Invalid cell item that can be used in [method set_cell_item] to clear cells "
"(or represent an empty cell in [method get_cell_item])."
@@ -23327,27 +23916,33 @@ msgid ""
"server's side.\n"
"For more information on HTTP, see https://developer.mozilla.org/en-US/docs/"
"Web/HTTP (or read RFC 2616 to get it straight from the source: https://tools."
-"ietf.org/html/rfc2616)."
+"ietf.org/html/rfc2616).\n"
+"[b]Note:[/b] When performing HTTP requests from a project exported to HTML5, "
+"keep in mind the remote server may not allow requests from foreign origins "
+"due to [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/"
+"url]. If you host the server in question, you should modify its backend to "
+"allow requests from foreign origins by adding the [code]Access-Control-Allow-"
+"Origin: *[/code] HTTP header."
msgstr ""
-#: doc/classes/HTTPClient.xml:13
+#: doc/classes/HTTPClient.xml:14
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/"
"http_client_class.html"
msgstr ""
-#: doc/classes/HTTPClient.xml:14 doc/classes/HTTPRequest.xml:62
+#: doc/classes/HTTPClient.xml:15 doc/classes/HTTPRequest.xml:71
#: doc/classes/StreamPeerSSL.xml:10
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/ssl_certificates."
"html"
msgstr ""
-#: doc/classes/HTTPClient.xml:21
+#: doc/classes/HTTPClient.xml:22
msgid "Closes the current connection, allowing reuse of this [HTTPClient]."
msgstr ""
-#: doc/classes/HTTPClient.xml:36
+#: doc/classes/HTTPClient.xml:37
msgid ""
"Connects to a host. This needs to be done before any requests are sent.\n"
"The host should not have http:// prepended but will strip the protocol "
@@ -23359,7 +23954,7 @@ msgid ""
"[code]true[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:46
+#: doc/classes/HTTPClient.xml:47
msgid ""
"Returns the response's body length.\n"
"[b]Note:[/b] Some Web servers may not send a body length. In this case, the "
@@ -23367,15 +23962,15 @@ msgid ""
"the body length will also be [code]-1[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:54
+#: doc/classes/HTTPClient.xml:55
msgid "Returns the response's HTTP status code."
msgstr ""
-#: doc/classes/HTTPClient.xml:61
+#: doc/classes/HTTPClient.xml:62
msgid "Returns the response headers."
msgstr ""
-#: doc/classes/HTTPClient.xml:68
+#: doc/classes/HTTPClient.xml:69
msgid ""
"Returns all response headers as a Dictionary of structure [code]{ \"key\": "
"\"value1; value2\" }[/code] where the case-sensitivity of the keys and "
@@ -23390,27 +23985,27 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:82
+#: doc/classes/HTTPClient.xml:83
msgid ""
"Returns a [enum Status] constant. Need to call [method poll] in order to get "
"status updates."
msgstr ""
-#: doc/classes/HTTPClient.xml:89
+#: doc/classes/HTTPClient.xml:90
msgid "If [code]true[/code], this [HTTPClient] has a response available."
msgstr ""
-#: doc/classes/HTTPClient.xml:96
+#: doc/classes/HTTPClient.xml:97
msgid "If [code]true[/code], this [HTTPClient] has a response that is chunked."
msgstr ""
-#: doc/classes/HTTPClient.xml:103
+#: doc/classes/HTTPClient.xml:104
msgid ""
"This needs to be called in order to have any request processed. Check "
"results with [method get_status]."
msgstr ""
-#: doc/classes/HTTPClient.xml:112
+#: doc/classes/HTTPClient.xml:113
msgid ""
"Generates a GET/POST application/x-www-form-urlencoded style query string "
"from a provided dictionary, e.g.:\n"
@@ -23430,11 +24025,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:130
+#: doc/classes/HTTPClient.xml:131
msgid "Reads one chunk from the response."
msgstr ""
-#: doc/classes/HTTPClient.xml:145
+#: doc/classes/HTTPClient.xml:146
msgid ""
"Sends a request to the connected host. The URL parameter is just the part "
"after the host, so for [code]http://somehost.com/index.php[/code], it is "
@@ -23452,7 +24047,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:168
+#: doc/classes/HTTPClient.xml:169
msgid ""
"Sends a raw request to the connected host. The URL parameter is just the "
"part after the host, so for [code]http://somehost.com/index.php[/code], it "
@@ -23462,43 +24057,43 @@ msgid ""
"Sends the body data raw, as a byte array and does not encode it in any way."
msgstr ""
-#: doc/classes/HTTPClient.xml:176
+#: doc/classes/HTTPClient.xml:177
msgid ""
"If [code]true[/code], execution will block until all data is read from the "
"response."
msgstr ""
-#: doc/classes/HTTPClient.xml:179
+#: doc/classes/HTTPClient.xml:180
msgid "The connection to use for this client."
msgstr ""
-#: doc/classes/HTTPClient.xml:182
+#: doc/classes/HTTPClient.xml:183
msgid ""
"The size of the buffer used and maximum bytes to read per iteration. See "
"[method read_response_body_chunk]."
msgstr ""
-#: doc/classes/HTTPClient.xml:187
+#: doc/classes/HTTPClient.xml:188
msgid ""
"HTTP GET method. The GET method requests a representation of the specified "
"resource. Requests using GET should only retrieve data."
msgstr ""
-#: doc/classes/HTTPClient.xml:190
+#: doc/classes/HTTPClient.xml:191
msgid ""
"HTTP HEAD method. The HEAD method asks for a response identical to that of a "
"GET request, but without the response body. This is useful to request "
"metadata like HTTP headers or to check if a resource exists."
msgstr ""
-#: doc/classes/HTTPClient.xml:193
+#: doc/classes/HTTPClient.xml:194
msgid ""
"HTTP POST method. The POST method is used to submit an entity to the "
"specified resource, often causing a change in state or side effects on the "
"server. This is often used for forms and submitting data or uploading files."
msgstr ""
-#: doc/classes/HTTPClient.xml:196
+#: doc/classes/HTTPClient.xml:197
msgid ""
"HTTP PUT method. The PUT method asks to replace all current representations "
"of the target resource with the request payload. (You can think of POST as "
@@ -23506,103 +24101,103 @@ msgid ""
"not make a clear distinction or change their meaning)."
msgstr ""
-#: doc/classes/HTTPClient.xml:199
+#: doc/classes/HTTPClient.xml:200
msgid ""
"HTTP DELETE method. The DELETE method requests to delete the specified "
"resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:202
+#: doc/classes/HTTPClient.xml:203
msgid ""
"HTTP OPTIONS method. The OPTIONS method asks for a description of the "
"communication options for the target resource. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:205
+#: doc/classes/HTTPClient.xml:206
msgid ""
"HTTP TRACE method. The TRACE method performs a message loop-back test along "
"the path to the target resource. Returns the entire HTTP request received in "
"the response body. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:208
+#: doc/classes/HTTPClient.xml:209
msgid ""
"HTTP CONNECT method. The CONNECT method establishes a tunnel to the server "
"identified by the target resource. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:211
+#: doc/classes/HTTPClient.xml:212
msgid ""
"HTTP PATCH method. The PATCH method is used to apply partial modifications "
"to a resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:214
+#: doc/classes/HTTPClient.xml:215
msgid "Represents the size of the [enum Method] enum."
msgstr ""
-#: doc/classes/HTTPClient.xml:217
+#: doc/classes/HTTPClient.xml:218
msgid "Status: Disconnected from the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:220
+#: doc/classes/HTTPClient.xml:221
msgid "Status: Currently resolving the hostname for the given URL into an IP."
msgstr ""
-#: doc/classes/HTTPClient.xml:223
+#: doc/classes/HTTPClient.xml:224
msgid "Status: DNS failure: Can't resolve the hostname for the given URL."
msgstr ""
-#: doc/classes/HTTPClient.xml:226
+#: doc/classes/HTTPClient.xml:227
msgid "Status: Currently connecting to server."
msgstr ""
-#: doc/classes/HTTPClient.xml:229
+#: doc/classes/HTTPClient.xml:230
msgid "Status: Can't connect to the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:232
+#: doc/classes/HTTPClient.xml:233
msgid "Status: Connection established."
msgstr ""
-#: doc/classes/HTTPClient.xml:235
+#: doc/classes/HTTPClient.xml:236
msgid "Status: Currently sending request."
msgstr ""
-#: doc/classes/HTTPClient.xml:238
+#: doc/classes/HTTPClient.xml:239
msgid "Status: HTTP body received."
msgstr ""
-#: doc/classes/HTTPClient.xml:241
+#: doc/classes/HTTPClient.xml:242
msgid "Status: Error in HTTP connection."
msgstr ""
-#: doc/classes/HTTPClient.xml:244
+#: doc/classes/HTTPClient.xml:245
msgid "Status: Error in SSL handshake."
msgstr ""
-#: doc/classes/HTTPClient.xml:247
+#: doc/classes/HTTPClient.xml:248
msgid ""
"HTTP status code [code]100 Continue[/code]. Interim response that indicates "
"everything so far is OK and that the client should continue with the request "
"(or ignore this status if already finished)."
msgstr ""
-#: doc/classes/HTTPClient.xml:250
+#: doc/classes/HTTPClient.xml:251
msgid ""
"HTTP status code [code]101 Switching Protocol[/code]. Sent in response to an "
"[code]Upgrade[/code] request header by the client. Indicates the protocol "
"the server is switching to."
msgstr ""
-#: doc/classes/HTTPClient.xml:253
+#: doc/classes/HTTPClient.xml:254
msgid ""
"HTTP status code [code]102 Processing[/code] (WebDAV). Indicates that the "
"server has received and is processing the request, but no response is "
"available yet."
msgstr ""
-#: doc/classes/HTTPClient.xml:256
+#: doc/classes/HTTPClient.xml:257
msgid ""
"HTTP status code [code]200 OK[/code]. The request has succeeded. Default "
"response for successful requests. Meaning varies depending on the request. "
@@ -23613,14 +24208,14 @@ msgid ""
"server."
msgstr ""
-#: doc/classes/HTTPClient.xml:259
+#: doc/classes/HTTPClient.xml:260
msgid ""
"HTTP status code [code]201 Created[/code]. The request has succeeded and a "
"new resource has been created as a result of it. This is typically the "
"response sent after a PUT request."
msgstr ""
-#: doc/classes/HTTPClient.xml:262
+#: doc/classes/HTTPClient.xml:263
msgid ""
"HTTP status code [code]202 Accepted[/code]. The request has been received "
"but not yet acted upon. It is non-committal, meaning that there is no way in "
@@ -23629,7 +24224,7 @@ msgid ""
"server handles the request, or for batch processing."
msgstr ""
-#: doc/classes/HTTPClient.xml:265
+#: doc/classes/HTTPClient.xml:266
msgid ""
"HTTP status code [code]203 Non-Authoritative Information[/code]. This "
"response code means returned meta-information set is not exact set as "
@@ -23638,14 +24233,14 @@ msgid ""
"instead of this response."
msgstr ""
-#: doc/classes/HTTPClient.xml:268
+#: doc/classes/HTTPClient.xml:269
msgid ""
"HTTP status code [code]204 No Content[/code]. There is no content to send "
"for this request, but the headers may be useful. The user-agent may update "
"its cached headers for this resource with the new ones."
msgstr ""
-#: doc/classes/HTTPClient.xml:271
+#: doc/classes/HTTPClient.xml:272
msgid ""
"HTTP status code [code]205 Reset Content[/code]. The server has fulfilled "
"the request and desires that the client resets the \"document view\" that "
@@ -23653,49 +24248,49 @@ msgid ""
"origin server."
msgstr ""
-#: doc/classes/HTTPClient.xml:274
+#: doc/classes/HTTPClient.xml:275
msgid ""
"HTTP status code [code]206 Partial Content[/code]. This response code is "
"used because of a range header sent by the client to separate download into "
"multiple streams."
msgstr ""
-#: doc/classes/HTTPClient.xml:277
+#: doc/classes/HTTPClient.xml:278
msgid ""
"HTTP status code [code]207 Multi-Status[/code] (WebDAV). A Multi-Status "
"response conveys information about multiple resources in situations where "
"multiple status codes might be appropriate."
msgstr ""
-#: doc/classes/HTTPClient.xml:280
+#: doc/classes/HTTPClient.xml:281
msgid ""
"HTTP status code [code]208 Already Reported[/code] (WebDAV). Used inside a "
"DAV: propstat response element to avoid enumerating the internal members of "
"multiple bindings to the same collection repeatedly."
msgstr ""
-#: doc/classes/HTTPClient.xml:283
+#: doc/classes/HTTPClient.xml:284
msgid ""
"HTTP status code [code]226 IM Used[/code] (WebDAV). The server has fulfilled "
"a GET request for the resource, and the response is a representation of the "
"result of one or more instance-manipulations applied to the current instance."
msgstr ""
-#: doc/classes/HTTPClient.xml:286
+#: doc/classes/HTTPClient.xml:287
msgid ""
"HTTP status code [code]300 Multiple Choice[/code]. The request has more than "
"one possible responses and there is no standardized way to choose one of the "
"responses. User-agent or user should choose one of them."
msgstr ""
-#: doc/classes/HTTPClient.xml:289
+#: doc/classes/HTTPClient.xml:290
msgid ""
"HTTP status code [code]301 Moved Permanently[/code]. Redirection. This "
"response code means the URI of requested resource has been changed. The new "
"URI is usually included in the response."
msgstr ""
-#: doc/classes/HTTPClient.xml:292
+#: doc/classes/HTTPClient.xml:293
msgid ""
"HTTP status code [code]302 Found[/code]. Temporary redirection. This "
"response code means the URI of requested resource has been changed "
@@ -23703,7 +24298,7 @@ msgid ""
"this same URI should be used by the client in future requests."
msgstr ""
-#: doc/classes/HTTPClient.xml:295
+#: doc/classes/HTTPClient.xml:296
msgid ""
"HTTP status code [code]303 See Other[/code]. The server is redirecting the "
"user agent to a different resource, as indicated by a URI in the Location "
@@ -23711,39 +24306,39 @@ msgid ""
"original request."
msgstr ""
-#: doc/classes/HTTPClient.xml:298
+#: doc/classes/HTTPClient.xml:299
msgid ""
"HTTP status code [code]304 Not Modified[/code]. A conditional GET or HEAD "
"request has been received and would have resulted in a 200 OK response if it "
"were not for the fact that the condition evaluated to [code]false[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:301
+#: doc/classes/HTTPClient.xml:302
msgid ""
"HTTP status code [code]305 Use Proxy[/code]. [i]Deprecated. Do not use.[/i]"
msgstr ""
-#: doc/classes/HTTPClient.xml:304
+#: doc/classes/HTTPClient.xml:305
msgid ""
"HTTP status code [code]306 Switch Proxy[/code]. [i]Deprecated. Do not use.[/"
"i]"
msgstr ""
-#: doc/classes/HTTPClient.xml:307
+#: doc/classes/HTTPClient.xml:308
msgid ""
"HTTP status code [code]307 Temporary Redirect[/code]. The target resource "
"resides temporarily under a different URI and the user agent MUST NOT change "
"the request method if it performs an automatic redirection to that URI."
msgstr ""
-#: doc/classes/HTTPClient.xml:310
+#: doc/classes/HTTPClient.xml:311
msgid ""
"HTTP status code [code]308 Permanent Redirect[/code]. The target resource "
"has been assigned a new permanent URI and any future references to this "
"resource ought to use one of the enclosed URIs."
msgstr ""
-#: doc/classes/HTTPClient.xml:313
+#: doc/classes/HTTPClient.xml:314
msgid ""
"HTTP status code [code]400 Bad Request[/code]. The request was invalid. The "
"server cannot or will not process the request due to something that is "
@@ -23752,21 +24347,21 @@ msgid ""
"routing)."
msgstr ""
-#: doc/classes/HTTPClient.xml:316
+#: doc/classes/HTTPClient.xml:317
msgid ""
"HTTP status code [code]401 Unauthorized[/code]. Credentials required. The "
"request has not been applied because it lacks valid authentication "
"credentials for the target resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:319
+#: doc/classes/HTTPClient.xml:320
msgid ""
"HTTP status code [code]402 Payment Required[/code]. This response code is "
"reserved for future use. Initial aim for creating this code was using it for "
"digital payment systems, however this is not currently used."
msgstr ""
-#: doc/classes/HTTPClient.xml:322
+#: doc/classes/HTTPClient.xml:323
msgid ""
"HTTP status code [code]403 Forbidden[/code]. The client does not have access "
"rights to the content, i.e. they are unauthorized, so server is rejecting to "
@@ -23774,7 +24369,7 @@ msgid ""
"known to the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:325
+#: doc/classes/HTTPClient.xml:326
msgid ""
"HTTP status code [code]404 Not Found[/code]. The server can not find "
"requested resource. Either the URL is not recognized or the endpoint is "
@@ -23782,7 +24377,7 @@ msgid ""
"403 to hide existence of a resource if the client is not authorized."
msgstr ""
-#: doc/classes/HTTPClient.xml:328
+#: doc/classes/HTTPClient.xml:329
msgid ""
"HTTP status code [code]405 Method Not Allowed[/code]. The request's HTTP "
"method is known by the server but has been disabled and cannot be used. For "
@@ -23790,7 +24385,7 @@ msgid ""
"GET and HEAD, must never be disabled and should not return this error code."
msgstr ""
-#: doc/classes/HTTPClient.xml:331
+#: doc/classes/HTTPClient.xml:332
msgid ""
"HTTP status code [code]406 Not Acceptable[/code]. The target resource does "
"not have a current representation that would be acceptable to the user "
@@ -23798,21 +24393,21 @@ msgid ""
"request. Used when negotiation content."
msgstr ""
-#: doc/classes/HTTPClient.xml:334
+#: doc/classes/HTTPClient.xml:335
msgid ""
"HTTP status code [code]407 Proxy Authentication Required[/code]. Similar to "
"401 Unauthorized, but it indicates that the client needs to authenticate "
"itself in order to use a proxy."
msgstr ""
-#: doc/classes/HTTPClient.xml:337
+#: doc/classes/HTTPClient.xml:338
msgid ""
"HTTP status code [code]408 Request Timeout[/code]. The server did not "
"receive a complete request message within the time that it was prepared to "
"wait."
msgstr ""
-#: doc/classes/HTTPClient.xml:340
+#: doc/classes/HTTPClient.xml:341
msgid ""
"HTTP status code [code]409 Conflict[/code]. The request could not be "
"completed due to a conflict with the current state of the target resource. "
@@ -23820,47 +24415,47 @@ msgid ""
"conflict and resubmit the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:343
+#: doc/classes/HTTPClient.xml:344
msgid ""
"HTTP status code [code]410 Gone[/code]. The target resource is no longer "
"available at the origin server and this condition is likely permanent."
msgstr ""
-#: doc/classes/HTTPClient.xml:346
+#: doc/classes/HTTPClient.xml:347
msgid ""
"HTTP status code [code]411 Length Required[/code]. The server refuses to "
"accept the request without a defined Content-Length header."
msgstr ""
-#: doc/classes/HTTPClient.xml:349
+#: doc/classes/HTTPClient.xml:350
msgid ""
"HTTP status code [code]412 Precondition Failed[/code]. One or more "
"conditions given in the request header fields evaluated to [code]false[/"
"code] when tested on the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:352
+#: doc/classes/HTTPClient.xml:353
msgid ""
"HTTP status code [code]413 Entity Too Large[/code]. The server is refusing "
"to process a request because the request payload is larger than the server "
"is willing or able to process."
msgstr ""
-#: doc/classes/HTTPClient.xml:355
+#: doc/classes/HTTPClient.xml:356
msgid ""
"HTTP status code [code]414 Request-URI Too Long[/code]. The server is "
"refusing to service the request because the request-target is longer than "
"the server is willing to interpret."
msgstr ""
-#: doc/classes/HTTPClient.xml:358
+#: doc/classes/HTTPClient.xml:359
msgid ""
"HTTP status code [code]415 Unsupported Media Type[/code]. The origin server "
"is refusing to service the request because the payload is in a format not "
"supported by this method on the target resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:361
+#: doc/classes/HTTPClient.xml:362
msgid ""
"HTTP status code [code]416 Requested Range Not Satisfiable[/code]. None of "
"the ranges in the request's Range header field overlap the current extent of "
@@ -23868,21 +24463,21 @@ msgid ""
"to invalid ranges or an excessive request of small or overlapping ranges."
msgstr ""
-#: doc/classes/HTTPClient.xml:364
+#: doc/classes/HTTPClient.xml:365
msgid ""
"HTTP status code [code]417 Expectation Failed[/code]. The expectation given "
"in the request's Expect header field could not be met by at least one of the "
"inbound servers."
msgstr ""
-#: doc/classes/HTTPClient.xml:367
+#: doc/classes/HTTPClient.xml:368
msgid ""
"HTTP status code [code]418 I'm A Teapot[/code]. Any attempt to brew coffee "
"with a teapot should result in the error code \"418 I'm a teapot\". The "
"resulting entity body MAY be short and stout."
msgstr ""
-#: doc/classes/HTTPClient.xml:370
+#: doc/classes/HTTPClient.xml:371
msgid ""
"HTTP status code [code]421 Misdirected Request[/code]. The request was "
"directed at a server that is not able to produce a response. This can be "
@@ -23890,7 +24485,7 @@ msgid ""
"combination of scheme and authority that are included in the request URI."
msgstr ""
-#: doc/classes/HTTPClient.xml:373
+#: doc/classes/HTTPClient.xml:374
msgid ""
"HTTP status code [code]422 Unprocessable Entity[/code] (WebDAV). The server "
"understands the content type of the request entity (hence a 415 Unsupported "
@@ -23899,40 +24494,40 @@ msgid ""
"was unable to process the contained instructions."
msgstr ""
-#: doc/classes/HTTPClient.xml:376
+#: doc/classes/HTTPClient.xml:377
msgid ""
"HTTP status code [code]423 Locked[/code] (WebDAV). The source or destination "
"resource of a method is locked."
msgstr ""
-#: doc/classes/HTTPClient.xml:379
+#: doc/classes/HTTPClient.xml:380
msgid ""
"HTTP status code [code]424 Failed Dependency[/code] (WebDAV). The method "
"could not be performed on the resource because the requested action depended "
"on another action and that action failed."
msgstr ""
-#: doc/classes/HTTPClient.xml:382
+#: doc/classes/HTTPClient.xml:383
msgid ""
"HTTP status code [code]426 Upgrade Required[/code]. The server refuses to "
"perform the request using the current protocol but might be willing to do so "
"after the client upgrades to a different protocol."
msgstr ""
-#: doc/classes/HTTPClient.xml:385
+#: doc/classes/HTTPClient.xml:386
msgid ""
"HTTP status code [code]428 Precondition Required[/code]. The origin server "
"requires the request to be conditional."
msgstr ""
-#: doc/classes/HTTPClient.xml:388
+#: doc/classes/HTTPClient.xml:389
msgid ""
"HTTP status code [code]429 Too Many Requests[/code]. The user has sent too "
"many requests in a given amount of time (see \"rate limiting\"). Back off "
"and increase time between requests or try again later."
msgstr ""
-#: doc/classes/HTTPClient.xml:391
+#: doc/classes/HTTPClient.xml:392
msgid ""
"HTTP status code [code]431 Request Header Fields Too Large[/code]. The "
"server is unwilling to process the request because its header fields are too "
@@ -23940,27 +24535,27 @@ msgid ""
"header fields."
msgstr ""
-#: doc/classes/HTTPClient.xml:394
+#: doc/classes/HTTPClient.xml:395
msgid ""
"HTTP status code [code]451 Response Unavailable For Legal Reasons[/code]. "
"The server is denying access to the resource as a consequence of a legal "
"demand."
msgstr ""
-#: doc/classes/HTTPClient.xml:397
+#: doc/classes/HTTPClient.xml:398
msgid ""
"HTTP status code [code]500 Internal Server Error[/code]. The server "
"encountered an unexpected condition that prevented it from fulfilling the "
"request."
msgstr ""
-#: doc/classes/HTTPClient.xml:400
+#: doc/classes/HTTPClient.xml:401
msgid ""
"HTTP status code [code]501 Not Implemented[/code]. The server does not "
"support the functionality required to fulfill the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:403
+#: doc/classes/HTTPClient.xml:404
msgid ""
"HTTP status code [code]502 Bad Gateway[/code]. The server, while acting as a "
"gateway or proxy, received an invalid response from an inbound server it "
@@ -23968,7 +24563,7 @@ msgid ""
"balancers or proxies."
msgstr ""
-#: doc/classes/HTTPClient.xml:406
+#: doc/classes/HTTPClient.xml:407
msgid ""
"HTTP status code [code]503 Service Unavailable[/code]. The server is "
"currently unable to handle the request due to a temporary overload or "
@@ -23976,7 +24571,7 @@ msgid ""
"again later."
msgstr ""
-#: doc/classes/HTTPClient.xml:409
+#: doc/classes/HTTPClient.xml:410
msgid ""
"HTTP status code [code]504 Gateway Timeout[/code]. The server, while acting "
"as a gateway or proxy, did not receive a timely response from an upstream "
@@ -23984,14 +24579,14 @@ msgid ""
"returned by load balancers or proxies."
msgstr ""
-#: doc/classes/HTTPClient.xml:412
+#: doc/classes/HTTPClient.xml:413
msgid ""
"HTTP status code [code]505 HTTP Version Not Supported[/code]. The server "
"does not support, or refuses to support, the major version of HTTP that was "
"used in the request message."
msgstr ""
-#: doc/classes/HTTPClient.xml:415
+#: doc/classes/HTTPClient.xml:416
msgid ""
"HTTP status code [code]506 Variant Also Negotiates[/code]. The server has an "
"internal configuration error: the chosen variant resource is configured to "
@@ -23999,14 +24594,14 @@ msgid ""
"proper end point in the negotiation process."
msgstr ""
-#: doc/classes/HTTPClient.xml:418
+#: doc/classes/HTTPClient.xml:419
msgid ""
"HTTP status code [code]507 Insufficient Storage[/code]. The method could not "
"be performed on the resource because the server is unable to store the "
"representation needed to successfully complete the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:421
+#: doc/classes/HTTPClient.xml:422
msgid ""
"HTTP status code [code]508 Loop Detected[/code]. The server terminated an "
"operation because it encountered an infinite loop while processing a request "
@@ -24014,14 +24609,14 @@ msgid ""
"failed."
msgstr ""
-#: doc/classes/HTTPClient.xml:424
+#: doc/classes/HTTPClient.xml:425
msgid ""
"HTTP status code [code]510 Not Extended[/code]. The policy for accessing the "
"resource has not been met in the request. The server should send back all "
"the information necessary for the client to issue an extended request."
msgstr ""
-#: doc/classes/HTTPClient.xml:427
+#: doc/classes/HTTPClient.xml:428
msgid ""
"HTTP status code [code]511 Network Authentication Required[/code]. The "
"client needs to authenticate to gain network access."
@@ -24047,12 +24642,21 @@ msgid ""
" http_request.connect(\"request_completed\", self, "
"\"_http_request_completed\")\n"
"\n"
-" # Perform the HTTP request. The URL below returns some JSON as of "
-"writing.\n"
+" # Perform a GET request. The URL below returns JSON as of writing.\n"
" var error = http_request.request(\"https://httpbin.org/get\")\n"
" if error != OK:\n"
" push_error(\"An error occurred in the HTTP request.\")\n"
"\n"
+" # Perform a POST request. The URL below returns JSON as of writing.\n"
+" # Note: Don't make simultaneous requests using a single HTTPRequest "
+"node.\n"
+" # The snippet below is provided for reference only.\n"
+" var body = {\"name\": \"Godette\"}\n"
+" var error = http_request.request(\"https://httpbin.org/post\", [], true, "
+"HTTPClient.METHOD_POST, body)\n"
+" if error != OK:\n"
+" push_error(\"An error occurred in the HTTP request.\")\n"
+"\n"
"\n"
"# Called when the HTTP request is completed.\n"
"func _http_request_completed(result, response_code, headers, body):\n"
@@ -24092,20 +24696,26 @@ msgid ""
" var texture_rect = TextureRect.new()\n"
" add_child(texture_rect)\n"
" texture_rect.texture = texture\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] When performing HTTP requests from a project exported to HTML5, "
+"keep in mind the remote server may not allow requests from foreign origins "
+"due to [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/"
+"url]. If you host the server in question, you should modify its backend to "
+"allow requests from foreign origins by adding the [code]Access-Control-Allow-"
+"Origin: *[/code] HTTP header."
msgstr ""
-#: doc/classes/HTTPRequest.xml:61
+#: doc/classes/HTTPRequest.xml:70
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/"
"http_request_class.html"
msgstr ""
-#: doc/classes/HTTPRequest.xml:69
+#: doc/classes/HTTPRequest.xml:78
msgid "Cancels the current request."
msgstr ""
-#: doc/classes/HTTPRequest.xml:76
+#: doc/classes/HTTPRequest.xml:85
msgid ""
"Returns the response body length.\n"
"[b]Note:[/b] Some Web servers may not send a body length. In this case, the "
@@ -24113,17 +24723,17 @@ msgid ""
"the body length will also be [code]-1[/code]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:84
+#: doc/classes/HTTPRequest.xml:93
msgid "Returns the amount of bytes this HTTPRequest downloaded."
msgstr ""
-#: doc/classes/HTTPRequest.xml:91
+#: doc/classes/HTTPRequest.xml:100
msgid ""
"Returns the current status of the underlying [HTTPClient]. See [enum "
"HTTPClient.Status]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:108
+#: doc/classes/HTTPRequest.xml:117
msgid ""
"Creates request on the underlying [HTTPClient]. If there is no configuration "
"errors, it tries to connect using [method HTTPClient.connect_to_host] and "
@@ -24136,11 +24746,11 @@ msgid ""
"connect to host."
msgstr ""
-#: doc/classes/HTTPRequest.xml:115
+#: doc/classes/HTTPRequest.xml:124
msgid "Maximum allowed size for response bodies."
msgstr ""
-#: doc/classes/HTTPRequest.xml:118
+#: doc/classes/HTTPRequest.xml:127
msgid ""
"The size of the buffer used and maximum bytes to read per iteration. See "
"[member HTTPClient.read_chunk_size].\n"
@@ -24148,63 +24758,63 @@ msgid ""
"files to achieve better speeds at the cost of memory."
msgstr ""
-#: doc/classes/HTTPRequest.xml:122
+#: doc/classes/HTTPRequest.xml:131
msgid "The file to download into. Will output any received file into it."
msgstr ""
-#: doc/classes/HTTPRequest.xml:125
+#: doc/classes/HTTPRequest.xml:134
msgid "Maximum number of allowed redirects."
msgstr ""
-#: doc/classes/HTTPRequest.xml:130
+#: doc/classes/HTTPRequest.xml:139
msgid "If [code]true[/code], multithreading is used to improve performance."
msgstr ""
-#: doc/classes/HTTPRequest.xml:144
+#: doc/classes/HTTPRequest.xml:153
msgid "Emitted when a request is completed."
msgstr ""
-#: doc/classes/HTTPRequest.xml:150
+#: doc/classes/HTTPRequest.xml:159
msgid "Request successful."
msgstr ""
-#: doc/classes/HTTPRequest.xml:155
+#: doc/classes/HTTPRequest.xml:164
msgid "Request failed while connecting."
msgstr ""
-#: doc/classes/HTTPRequest.xml:158
+#: doc/classes/HTTPRequest.xml:167
msgid "Request failed while resolving."
msgstr ""
-#: doc/classes/HTTPRequest.xml:161
+#: doc/classes/HTTPRequest.xml:170
msgid "Request failed due to connection (read/write) error."
msgstr ""
-#: doc/classes/HTTPRequest.xml:164
+#: doc/classes/HTTPRequest.xml:173
msgid "Request failed on SSL handshake."
msgstr ""
-#: doc/classes/HTTPRequest.xml:167
+#: doc/classes/HTTPRequest.xml:176
msgid "Request does not have a response (yet)."
msgstr ""
-#: doc/classes/HTTPRequest.xml:170
+#: doc/classes/HTTPRequest.xml:179
msgid "Request exceeded its maximum size limit, see [member body_size_limit]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:173
+#: doc/classes/HTTPRequest.xml:182
msgid "Request failed (currently unused)."
msgstr ""
-#: doc/classes/HTTPRequest.xml:176
+#: doc/classes/HTTPRequest.xml:185
msgid "HTTPRequest couldn't open the download file."
msgstr ""
-#: doc/classes/HTTPRequest.xml:179
+#: doc/classes/HTTPRequest.xml:188
msgid "HTTPRequest couldn't write to the download file."
msgstr ""
-#: doc/classes/HTTPRequest.xml:182
+#: doc/classes/HTTPRequest.xml:191
msgid "Request reached its maximum redirect limit, see [member max_redirects]."
msgstr ""
@@ -24428,42 +25038,46 @@ msgid "Loads an image from the binary contents of a PNG file."
msgstr ""
#: doc/classes/Image.xml:373
+msgid "Loads an image from the binary contents of a TGA file."
+msgstr ""
+
+#: doc/classes/Image.xml:382
msgid "Loads an image from the binary contents of a WebP file."
msgstr ""
-#: doc/classes/Image.xml:380
+#: doc/classes/Image.xml:389
msgid ""
"Converts the image's data to represent coordinates on a 3D plane. This is "
"used when the image represents a normalmap. A normalmap can add lots of "
"detail to a 3D surface without increasing the polygon count."
msgstr ""
-#: doc/classes/Image.xml:387
+#: doc/classes/Image.xml:396
msgid ""
"Multiplies color values with alpha values. Resulting color values for a "
"pixel are [code](color * alpha)/256[/code]."
msgstr ""
-#: doc/classes/Image.xml:400
+#: doc/classes/Image.xml:409
msgid ""
"Resizes the image to the given [code]width[/code] and [code]height[/code]. "
"New pixels are calculated using [code]interpolation[/code]. See "
"[code]interpolation[/code] constants."
msgstr ""
-#: doc/classes/Image.xml:409
+#: doc/classes/Image.xml:418
msgid ""
"Resizes the image to the nearest power of 2 for the width and height. If "
"[code]square[/code] is [code]true[/code] then set width and height to be the "
"same."
msgstr ""
-#: doc/classes/Image.xml:416
+#: doc/classes/Image.xml:425
msgid ""
"Converts a standard RGBE (Red Green Blue Exponent) image to an sRGB image."
msgstr ""
-#: doc/classes/Image.xml:427
+#: doc/classes/Image.xml:436
msgid ""
"Saves the image as an EXR file to [code]path[/code]. If [code]grayscale[/"
"code] is [code]true[/code] and the image has only one channel, it will be "
@@ -24472,11 +25086,11 @@ msgid ""
"TinyEXR module."
msgstr ""
-#: doc/classes/Image.xml:436
+#: doc/classes/Image.xml:445
msgid "Saves the image as a PNG file to [code]path[/code]."
msgstr ""
-#: doc/classes/Image.xml:455
+#: doc/classes/Image.xml:464
msgid ""
"Sets the [Color] of the pixel at [code](x, y)[/code]. Example:\n"
"[codeblock]\n"
@@ -24486,7 +25100,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Image.xml:471
+#: doc/classes/Image.xml:480
msgid ""
"Sets the [Color] of the pixel at [code](dst.x, dst.y)[/code]. Note that the "
"[code]dst[/code] values must be integers. Example:\n"
@@ -24497,51 +25111,51 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Image.xml:483
+#: doc/classes/Image.xml:492
msgid "Shrinks the image by a factor of 2."
msgstr ""
-#: doc/classes/Image.xml:490
+#: doc/classes/Image.xml:499
msgid "Converts the raw data from the sRGB colorspace to a linear scale."
msgstr ""
-#: doc/classes/Image.xml:496
+#: doc/classes/Image.xml:505
msgid ""
"Holds all of the image's color data in a given format. See [enum Format] "
"constants."
msgstr ""
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:510
msgid "The maximal width allowed for [Image] resources."
msgstr ""
-#: doc/classes/Image.xml:504
+#: doc/classes/Image.xml:513
msgid "The maximal height allowed for [Image] resources."
msgstr ""
-#: doc/classes/Image.xml:507
+#: doc/classes/Image.xml:516
msgid "Texture format with a single 8-bit depth representing luminance."
msgstr ""
-#: doc/classes/Image.xml:510
+#: doc/classes/Image.xml:519
msgid ""
"OpenGL texture format with two values, luminance and alpha each stored with "
"8 bits."
msgstr ""
-#: doc/classes/Image.xml:513
+#: doc/classes/Image.xml:522
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
"bitdepth of 8."
msgstr ""
-#: doc/classes/Image.xml:516
+#: doc/classes/Image.xml:525
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
-#: doc/classes/Image.xml:519
+#: doc/classes/Image.xml:528
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -24549,7 +25163,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:523
+#: doc/classes/Image.xml:532
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -24557,67 +25171,67 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:536
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
-#: doc/classes/Image.xml:532
+#: doc/classes/Image.xml:541
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
-#: doc/classes/Image.xml:535
+#: doc/classes/Image.xml:544
msgid ""
"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
"each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:538
+#: doc/classes/Image.xml:547
msgid ""
"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
"components, each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:541
+#: doc/classes/Image.xml:550
msgid ""
"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
"components, each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:544
+#: doc/classes/Image.xml:553
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 16-"
"bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:556
msgid ""
"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
"each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:550
+#: doc/classes/Image.xml:559
msgid ""
"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
"components, each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:553
+#: doc/classes/Image.xml:562
msgid ""
"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
"components, each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:556
+#: doc/classes/Image.xml:565
msgid ""
"A special OpenGL texture format where the three color components have 9 bits "
"of precision and all three share a single 5-bit exponent."
msgstr ""
-#: doc/classes/Image.xml:559
+#: doc/classes/Image.xml:568
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format that uses Block Compression 1, and is the smallest variation "
@@ -24627,7 +25241,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:563
+#: doc/classes/Image.xml:572
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format that uses Block Compression 2, and color data is interpreted "
@@ -24637,7 +25251,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:567
+#: doc/classes/Image.xml:576
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format also known as Block Compression 3 or BC3 that contains 64 "
@@ -24648,7 +25262,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:571
+#: doc/classes/Image.xml:580
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -24656,7 +25270,7 @@ msgid ""
"DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:574
+#: doc/classes/Image.xml:583
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -24664,7 +25278,7 @@ msgid ""
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:577
+#: doc/classes/Image.xml:586
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -24673,21 +25287,21 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:581
+#: doc/classes/Image.xml:590
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with signed floating-point "
"RGB components."
msgstr ""
-#: doc/classes/Image.xml:584
+#: doc/classes/Image.xml:593
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned floating-point "
"RGB components."
msgstr ""
-#: doc/classes/Image.xml:587
+#: doc/classes/Image.xml:596
msgid ""
"Texture format used on PowerVR-supported mobile platforms, uses 2-bit color "
"depth with no alpha. More information can be found [url=https://en.wikipedia."
@@ -24696,25 +25310,25 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:600
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:603
msgid ""
"Similar to [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with 4-"
"bit color depth and no alpha."
msgstr ""
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:606
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:609
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -24722,7 +25336,7 @@ msgid ""
"standard. This format cannot store an alpha channel."
msgstr ""
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:612
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24730,7 +25344,7 @@ msgid ""
"unsigned data."
msgstr ""
-#: doc/classes/Image.xml:606
+#: doc/classes/Image.xml:615
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24738,7 +25352,7 @@ msgid ""
"channel of signed data."
msgstr ""
-#: doc/classes/Image.xml:609
+#: doc/classes/Image.xml:618
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24746,7 +25360,7 @@ msgid ""
"of unsigned data."
msgstr ""
-#: doc/classes/Image.xml:612
+#: doc/classes/Image.xml:621
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24754,7 +25368,7 @@ msgid ""
"channels of signed data."
msgstr ""
-#: doc/classes/Image.xml:615
+#: doc/classes/Image.xml:624
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24764,7 +25378,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:619
+#: doc/classes/Image.xml:628
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24774,7 +25388,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:623
+#: doc/classes/Image.xml:632
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24785,31 +25399,31 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:631
+#: doc/classes/Image.xml:640
msgid "Represents the size of the [enum Format] enum."
msgstr ""
-#: doc/classes/Image.xml:634
+#: doc/classes/Image.xml:643
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
-#: doc/classes/Image.xml:637
+#: doc/classes/Image.xml:646
msgid ""
"Performs bilinear interpolation. If the image is resized, it will be blurry. "
"This mode is faster than [constant INTERPOLATE_CUBIC], but it results in "
"lower quality."
msgstr ""
-#: doc/classes/Image.xml:640
+#: doc/classes/Image.xml:649
msgid ""
"Performs cubic interpolation. If the image is resized, it will be blurry. "
"This mode often gives better results compared to [constant "
"INTERPOLATE_BILINEAR], at the cost of being slower."
msgstr ""
-#: doc/classes/Image.xml:643
+#: doc/classes/Image.xml:652
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -24824,55 +25438,55 @@ msgid ""
"a new set will be generated for the resulting image."
msgstr ""
-#: doc/classes/Image.xml:650
+#: doc/classes/Image.xml:659
msgid ""
"Performs Lanczos interpolation. This is the slowest image resizing mode, but "
"it typically gives the best results, especially when downscalng images."
msgstr ""
-#: doc/classes/Image.xml:653
+#: doc/classes/Image.xml:662
msgid "Image does not have alpha."
msgstr ""
-#: doc/classes/Image.xml:656
+#: doc/classes/Image.xml:665
msgid "Image stores alpha in a single bit."
msgstr ""
-#: doc/classes/Image.xml:659
+#: doc/classes/Image.xml:668
msgid "Image uses alpha."
msgstr ""
-#: doc/classes/Image.xml:662
+#: doc/classes/Image.xml:671
msgid "Use S3TC compression."
msgstr ""
-#: doc/classes/Image.xml:665
+#: doc/classes/Image.xml:674
msgid "Use PVRTC2 compression."
msgstr ""
-#: doc/classes/Image.xml:668
+#: doc/classes/Image.xml:677
msgid "Use PVRTC4 compression."
msgstr ""
-#: doc/classes/Image.xml:671
+#: doc/classes/Image.xml:680
msgid "Use ETC compression."
msgstr ""
-#: doc/classes/Image.xml:674
+#: doc/classes/Image.xml:683
msgid "Use ETC2 compression."
msgstr ""
-#: doc/classes/Image.xml:689
+#: doc/classes/Image.xml:698
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
-#: doc/classes/Image.xml:692
+#: doc/classes/Image.xml:701
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
-#: doc/classes/Image.xml:695
+#: doc/classes/Image.xml:704
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -25691,7 +26305,7 @@ msgid "Contains mouse click information. See [method Node._input]."
msgstr ""
#: doc/classes/InputEventMouseButton.xml:10
-#: doc/classes/InputEventMouseMotion.xml:10
+#: doc/classes/InputEventMouseMotion.xml:11
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/inputs/"
"mouse_and_input_coordinates.html"
@@ -25728,29 +26342,36 @@ msgstr ""
#: doc/classes/InputEventMouseMotion.xml:7
msgid ""
"Contains mouse and pen motion information. Supports relative, absolute "
-"positions and speed. See [method Node._input]."
+"positions and speed. See [method Node._input].\n"
+"[b]Note:[/b] By default, this event is only emitted once per frame rendered "
+"at most. If you need more precise input reporting, call [method Input."
+"set_use_accumulated_input] with [code]false[/code] to make events emitted as "
+"often as possible. If you use InputEventMouseMotion to draw lines, consider "
+"implementing [url=https://en.wikipedia.org/wiki/Bresenham"
+"%27s_line_algorithm]Bresenham's line algorithm[/url] as well to avoid "
+"visible gaps in lines if the user is moving the mouse quickly."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:16
+#: doc/classes/InputEventMouseMotion.xml:17
msgid ""
"Represents the pressure the user puts on the pen. Ranges from [code]0.0[/"
"code] to [code]1.0[/code]."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:19
+#: doc/classes/InputEventMouseMotion.xml:20
msgid ""
"The mouse position relative to the previous position (position at the last "
-"frame). \n"
+"frame).\n"
"[b]Note:[/b] Since [InputEventMouseMotion] is only emitted when the mouse "
"moves, the last event won't have a relative position of [code]Vector2(0, 0)[/"
"code] when the user stops moving the mouse."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:23
+#: doc/classes/InputEventMouseMotion.xml:24
msgid "The mouse speed in pixels per second."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:26
+#: doc/classes/InputEventMouseMotion.xml:27
msgid ""
"Represents the angles of tilt of the pen. Positive X-coordinate value "
"indicates a tilt to the right. Positive Y-coordinate value indicates a tilt "
@@ -26640,14 +27261,17 @@ msgstr ""
#: doc/classes/JSON.xml:18
msgid ""
-"Parses a JSON encoded string and returns a [JSONParseResult] containing the "
+"Parses a JSON-encoded string and returns a [JSONParseResult] containing the "
"result."
msgstr ""
#: doc/classes/JSON.xml:31
msgid ""
"Converts a [Variant] var to JSON text and returns the result. Useful for "
-"serializing data to store or send over the network."
+"serializing data to store or send over the network.\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, converting a Variant to JSON text "
+"will convert all numerical values to [float] types."
msgstr ""
#: doc/classes/JSONParseResult.xml:4
@@ -26670,14 +27294,14 @@ msgstr ""
#: doc/classes/JSONParseResult.xml:18
msgid ""
-"The line number where the error occurred if JSON source was not successfully "
-"parsed."
+"The line number where the error occurred if the JSON source was not "
+"successfully parsed."
msgstr ""
#: doc/classes/JSONParseResult.xml:21
msgid ""
-"The error message if JSON source was not successfully parsed. See the [enum "
-"Error] constants."
+"The error message if the JSON source was not successfully parsed. See the "
+"[enum Error] constants."
msgstr ""
#: doc/classes/JSONParseResult.xml:24
@@ -26685,11 +27309,11 @@ msgid ""
"A [Variant] containing the parsed JSON. Use [method @GDScript.typeof] or the "
"[code]is[/code] keyword to check if it is what you expect. For example, if "
"the JSON source starts with curly braces ([code]{}[/code]), a [Dictionary] "
-"will be returned. If the JSON source starts with braces ([code][][/code]), "
+"will be returned. If the JSON source starts with brackets ([code][][/code]), "
"an [Array] will be returned.\n"
"[b]Note:[/b] The JSON specification does not define integer or float types, "
-"but only a number type. Therefore, parsing a JSON text will convert all "
-"numerical values to float types.\n"
+"but only a [i]number[/i] type. Therefore, parsing a JSON text will convert "
+"all numerical values to [float] types.\n"
"[b]Note:[/b] JSON objects do not preserve key order like Godot dictionaries, "
"thus, you should not rely on keys being in a certain order if a dictionary "
"is constructed from JSON. In contrast, JSON arrays retain the order of their "
@@ -26699,7 +27323,7 @@ msgid ""
"if typeof(p.result) == TYPE_ARRAY:\n"
" print(p.result[0]) # Prints \"hello\"\n"
"else:\n"
-" print(\"unexpected results\")\n"
+" push_error(\"Unexpected results.\")\n"
"[/codeblock]"
msgstr ""
@@ -26815,7 +27439,7 @@ msgid ""
"simulation will run at an incorrect speed.\n"
"[code]linear_velocity[/code] is the velocity vector in pixels per second. "
"Unlike in [method move_and_collide], you should [i]not[/i] multiply it by "
-"[code]delta[/code] — the physics engine handles applying the velocity. \n"
+"[code]delta[/code] — the physics engine handles applying the velocity.\n"
"[code]up_direction[/code] is the up direction, used to determine what is a "
"wall and what is a floor or a ceiling. If set to the default value of "
"[code]Vector2(0, 0)[/code], everything is considered a wall. This is useful "
@@ -26931,7 +27555,7 @@ msgid ""
"[code]linear_velocity[/code] is the velocity vector (typically meters per "
"second). Unlike in [method move_and_collide], you should [i]not[/i] multiply "
"it by [code]delta[/code] — the physics engine handles applying the "
-"velocity. \n"
+"velocity.\n"
"[code]up_direction[/code] is the up direction, used to determine what is a "
"wall and what is a floor or a ceiling. If set to the default value of "
"[code]Vector3(0, 0, 0)[/code], everything is considered a wall.\n"
@@ -27660,17 +28284,6 @@ msgid ""
"[b]Note:[/b] Hiding a light does [i]not[/i] affect baking."
msgstr ""
-#: doc/classes/Light3D.xml:152
-msgid "Only indirect lighting will be baked (default)."
-msgstr ""
-
-#: doc/classes/Light3D.xml:155
-msgid ""
-"Both direct and indirect light will be baked.\n"
-"[b]Note:[/b] You should hide the light if you don't want it to appear twice "
-"(dynamic and baked)."
-msgstr ""
-
#: doc/classes/LightOccluder2D.xml:4
msgid "Occludes light cast by a Light2D, casting shadows."
msgstr ""
@@ -27949,136 +28562,142 @@ msgstr ""
msgid "Text alignment as defined in the [enum Align] enum."
msgstr ""
-#: doc/classes/LineEdit.xml:120 doc/classes/TextEdit.xml:406
+#: doc/classes/LineEdit.xml:120 doc/classes/TextEdit.xml:358
msgid "If [code]true[/code], the caret (visual cursor) blinks."
msgstr ""
-#: doc/classes/LineEdit.xml:123 doc/classes/TextEdit.xml:409
+#: doc/classes/LineEdit.xml:123 doc/classes/TextEdit.xml:361
msgid "Duration (in seconds) of a caret's blinking cycle."
msgstr ""
-#: doc/classes/LineEdit.xml:126
+#: doc/classes/LineEdit.xml:128
msgid ""
"The cursor's position inside the [LineEdit]. When set, the text may scroll "
"to accommodate it."
msgstr ""
-#: doc/classes/LineEdit.xml:129
+#: doc/classes/LineEdit.xml:131
msgid ""
"If [code]true[/code], the [LineEdit] will show a clear button if [code]text[/"
"code] is not empty, which can be used to clear the text quickly."
msgstr ""
-#: doc/classes/LineEdit.xml:132
+#: doc/classes/LineEdit.xml:134
msgid "If [code]true[/code], the context menu will appear when right-clicked."
msgstr ""
-#: doc/classes/LineEdit.xml:135
+#: doc/classes/LineEdit.xml:137
msgid ""
"If [code]false[/code], existing text cannot be modified and new text cannot "
"be added."
msgstr ""
-#: doc/classes/LineEdit.xml:138
+#: doc/classes/LineEdit.xml:140
msgid ""
"If [code]true[/code], the [LineEdit] width will increase to stay longer than "
"the [member text]. It will [b]not[/b] compress if the [member text] is "
"shortened."
msgstr ""
-#: doc/classes/LineEdit.xml:142
+#: doc/classes/LineEdit.xml:144
msgid ""
"Maximum amount of characters that can be entered inside the [LineEdit]. If "
"[code]0[/code], there is no limit."
msgstr ""
-#: doc/classes/LineEdit.xml:146
+#: doc/classes/LineEdit.xml:148
msgid ""
"Opacity of the [member placeholder_text]. From [code]0[/code] to [code]1[/"
"code]."
msgstr ""
-#: doc/classes/LineEdit.xml:149
+#: doc/classes/LineEdit.xml:151
msgid ""
"Text shown when the [LineEdit] is empty. It is [b]not[/b] the [LineEdit]'s "
"default value (see [member text])."
msgstr ""
-#: doc/classes/LineEdit.xml:152
+#: doc/classes/LineEdit.xml:154
msgid ""
"Sets the icon that will appear in the right end of the [LineEdit] if there's "
"no [member text], or always, if [member clear_button_enabled] is set to "
"[code]false[/code]."
msgstr ""
-#: doc/classes/LineEdit.xml:155
+#: doc/classes/LineEdit.xml:157
msgid ""
"If [code]true[/code], every character is replaced with the secret character "
"(see [member secret_character])."
msgstr ""
-#: doc/classes/LineEdit.xml:158
+#: doc/classes/LineEdit.xml:160
msgid ""
"The character to use to mask secret input (defaults to \"*\"). Only a single "
"character can be used as the secret character."
msgstr ""
-#: doc/classes/LineEdit.xml:161
+#: doc/classes/LineEdit.xml:163
msgid ""
"If [code]false[/code], it's impossible to select the text using mouse nor "
"keyboard."
msgstr ""
-#: doc/classes/LineEdit.xml:164
+#: doc/classes/LineEdit.xml:166
msgid "If [code]false[/code], using shortcuts will be disabled."
msgstr ""
-#: doc/classes/LineEdit.xml:167
+#: doc/classes/LineEdit.xml:169
msgid ""
"String value of the [LineEdit].\n"
"[b]Note:[/b] Changing text using this property won't emit the [signal "
"text_changed] signal."
msgstr ""
-#: doc/classes/LineEdit.xml:174
+#: doc/classes/LineEdit.xml:173 doc/classes/TextEdit.xml:434
+msgid ""
+"If [code]true[/code], the native virtual keyboard is shown when focused on "
+"platforms that support it."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:179
msgid ""
"Emitted when trying to append text that would overflow the [member "
"max_length]."
msgstr ""
-#: doc/classes/LineEdit.xml:181 doc/classes/TextEdit.xml:525
+#: doc/classes/LineEdit.xml:186 doc/classes/TextEdit.xml:490
msgid "Emitted when the text changes."
msgstr ""
-#: doc/classes/LineEdit.xml:188
+#: doc/classes/LineEdit.xml:193
msgid "Emitted when the user presses [constant KEY_ENTER] on the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:194
+#: doc/classes/LineEdit.xml:199
msgid "Aligns the text on the left-hand side of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:197
+#: doc/classes/LineEdit.xml:202
msgid "Centers the text in the middle of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:200
+#: doc/classes/LineEdit.xml:205
msgid "Aligns the text on the right-hand side of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:203
+#: doc/classes/LineEdit.xml:208
msgid "Stretches whitespaces to fit the [LineEdit]'s width."
msgstr ""
-#: doc/classes/LineEdit.xml:206 doc/classes/TextEdit.xml:540
+#: doc/classes/LineEdit.xml:211 doc/classes/TextEdit.xml:505
msgid "Cuts (copies and clears) the selected text."
msgstr ""
-#: doc/classes/LineEdit.xml:209 doc/classes/TextEdit.xml:543
+#: doc/classes/LineEdit.xml:214 doc/classes/TextEdit.xml:508
msgid "Copies the selected text."
msgstr ""
-#: doc/classes/LineEdit.xml:212
+#: doc/classes/LineEdit.xml:217
msgid ""
"Pastes the clipboard text over the selected text (or at the cursor's "
"position).\n"
@@ -28086,80 +28705,80 @@ msgid ""
"clipboard via [method String.strip_escapes]."
msgstr ""
-#: doc/classes/LineEdit.xml:216
+#: doc/classes/LineEdit.xml:221
msgid "Erases the whole [LineEdit] text."
msgstr ""
-#: doc/classes/LineEdit.xml:219
+#: doc/classes/LineEdit.xml:224
msgid "Selects the whole [LineEdit] text."
msgstr ""
-#: doc/classes/LineEdit.xml:222 doc/classes/TextEdit.xml:555
+#: doc/classes/LineEdit.xml:227 doc/classes/TextEdit.xml:520
msgid "Undoes the previous action."
msgstr ""
-#: doc/classes/LineEdit.xml:225
+#: doc/classes/LineEdit.xml:230
msgid "Reverse the last undo action."
msgstr ""
-#: doc/classes/LineEdit.xml:228 doc/classes/TextEdit.xml:561
+#: doc/classes/LineEdit.xml:233 doc/classes/TextEdit.xml:526
msgid "Represents the size of the [enum MenuItems] enum."
msgstr ""
-#: doc/classes/LineEdit.xml:233
+#: doc/classes/LineEdit.xml:238
msgid "Texture for the clear button. See [member clear_button_enabled]."
msgstr ""
-#: doc/classes/LineEdit.xml:236
+#: doc/classes/LineEdit.xml:241
msgid "Color used as default tint for the clear button."
msgstr ""
-#: doc/classes/LineEdit.xml:239
+#: doc/classes/LineEdit.xml:244
msgid "Color used for the clear button when it's pressed."
msgstr ""
-#: doc/classes/LineEdit.xml:242
+#: doc/classes/LineEdit.xml:247
msgid "Color of the [LineEdit]'s visual cursor (caret)."
msgstr ""
-#: doc/classes/LineEdit.xml:245
+#: doc/classes/LineEdit.xml:250
msgid "Background used when [LineEdit] has GUI focus."
msgstr ""
-#: doc/classes/LineEdit.xml:248
+#: doc/classes/LineEdit.xml:253
msgid "Font used for the text."
msgstr ""
-#: doc/classes/LineEdit.xml:251
+#: doc/classes/LineEdit.xml:256
msgid "Default font color."
msgstr ""
-#: doc/classes/LineEdit.xml:254
+#: doc/classes/LineEdit.xml:259
msgid "Font color for selected text (inside the selection rectangle)."
msgstr ""
-#: doc/classes/LineEdit.xml:257
+#: doc/classes/LineEdit.xml:262
msgid "Font color when editing is disabled."
msgstr ""
-#: doc/classes/LineEdit.xml:260
+#: doc/classes/LineEdit.xml:265
msgid ""
"Minimum horizontal space for the text (not counting the clear button and "
"content margins). This value is measured in count of space characters (i.e. "
"this amount of space characters can be displayed without scrolling)."
msgstr ""
-#: doc/classes/LineEdit.xml:263
+#: doc/classes/LineEdit.xml:268
msgid "Default background for the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:266
+#: doc/classes/LineEdit.xml:271
msgid ""
"Background used when [LineEdit] is in read-only mode ([member editable] is "
"set to [code]false[/code])."
msgstr ""
-#: doc/classes/LineEdit.xml:269
+#: doc/classes/LineEdit.xml:274
msgid "Color of the selection rectangle."
msgstr ""
@@ -28377,14 +28996,14 @@ msgstr ""
msgid "Emitted when a user responds to a permission request."
msgstr ""
-#: doc/classes/MainLoop.xml:127 doc/classes/Node.xml:948
+#: doc/classes/MainLoop.xml:127 doc/classes/Node.xml:946
msgid ""
"Notification received from the OS when the application is exceeding its "
"allocated memory.\n"
"Specific to the iOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:131 doc/classes/Node.xml:952
+#: doc/classes/MainLoop.xml:131 doc/classes/Node.xml:950
msgid ""
"Notification received when translations may have changed. Can be triggered "
"by the user changing the locale. Can be used to respond to language changes, "
@@ -28392,39 +29011,55 @@ msgid ""
"the built-in translation support, like [method Object.tr]."
msgstr ""
-#: doc/classes/MainLoop.xml:134 doc/classes/Node.xml:955
+#: doc/classes/MainLoop.xml:134 doc/classes/Node.xml:953
msgid ""
"Notification received from the OS when a request for \"About\" information "
"is sent.\n"
"Specific to the macOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:138 doc/classes/Node.xml:959
+#: doc/classes/MainLoop.xml:138 doc/classes/Node.xml:957
msgid ""
"Notification received from Godot's crash handler when the engine is about to "
"crash.\n"
"Implemented on desktop platforms if the crash handler is enabled."
msgstr ""
-#: doc/classes/MainLoop.xml:142 doc/classes/Node.xml:963
+#: doc/classes/MainLoop.xml:142 doc/classes/Node.xml:961
msgid ""
"Notification received from the OS when an update of the Input Method Engine "
"occurs (e.g. change of IME cursor position or composition string).\n"
"Specific to the macOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:146 doc/classes/Node.xml:967
+#: doc/classes/MainLoop.xml:146 doc/classes/Node.xml:965
msgid ""
-"Notification received from the OS when the app is resumed.\n"
+"Notification received from the OS when the application is resumed.\n"
"Specific to the Android platform."
msgstr ""
-#: doc/classes/MainLoop.xml:150 doc/classes/Node.xml:971
+#: doc/classes/MainLoop.xml:150 doc/classes/Node.xml:969
msgid ""
-"Notification received from the OS when the app is paused.\n"
+"Notification received from the OS when the application is paused.\n"
"Specific to the Android platform."
msgstr ""
+#: doc/classes/MainLoop.xml:154 doc/classes/Node.xml:973
+msgid ""
+"Notification received from the OS when the application is focused, i.e. when "
+"changing the focus from the OS desktop or a thirdparty application to any "
+"open window of the Godot instance.\n"
+"Implemented on desktop platforms."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:158 doc/classes/Node.xml:977
+msgid ""
+"Notification received from the OS when the application is defocused, i.e. "
+"when changing the focus from any open window of the Godot instance to the OS "
+"desktop or a thirdparty application.\n"
+"Implemented on desktop platforms."
+msgstr ""
+
#: doc/classes/MarginContainer.xml:4
msgid "Simple margin container."
msgstr ""
@@ -28732,11 +29367,11 @@ msgstr ""
msgid "Render array as triangle strips."
msgstr ""
-#: doc/classes/Mesh.xml:126 doc/classes/RenderingServer.xml:3189
+#: doc/classes/Mesh.xml:126 doc/classes/RenderingServer.xml:3185
msgid "Blend shapes are normalized."
msgstr ""
-#: doc/classes/Mesh.xml:129 doc/classes/RenderingServer.xml:3192
+#: doc/classes/Mesh.xml:129 doc/classes/RenderingServer.xml:3188
msgid "Blend shapes are relative to base weight."
msgstr ""
@@ -28778,37 +29413,37 @@ msgstr ""
msgid "Mesh array uses indices."
msgstr ""
-#: doc/classes/Mesh.xml:159 doc/classes/RenderingServer.xml:3145
+#: doc/classes/Mesh.xml:159 doc/classes/RenderingServer.xml:3141
msgid "Flag used to mark a compressed (half float) normal array."
msgstr ""
-#: doc/classes/Mesh.xml:162 doc/classes/RenderingServer.xml:3148
+#: doc/classes/Mesh.xml:162 doc/classes/RenderingServer.xml:3144
msgid "Flag used to mark a compressed (half float) tangent array."
msgstr ""
-#: doc/classes/Mesh.xml:165 doc/classes/RenderingServer.xml:3151
+#: doc/classes/Mesh.xml:165 doc/classes/RenderingServer.xml:3147
msgid "Flag used to mark a compressed (half float) color array."
msgstr ""
-#: doc/classes/Mesh.xml:168 doc/classes/RenderingServer.xml:3154
+#: doc/classes/Mesh.xml:168 doc/classes/RenderingServer.xml:3150
msgid "Flag used to mark a compressed (half float) UV coordinates array."
msgstr ""
-#: doc/classes/Mesh.xml:171 doc/classes/RenderingServer.xml:3157
+#: doc/classes/Mesh.xml:171 doc/classes/RenderingServer.xml:3153
msgid ""
"Flag used to mark a compressed (half float) UV coordinates array for the "
"second UV coordinates."
msgstr ""
-#: doc/classes/Mesh.xml:174 doc/classes/RenderingServer.xml:3160
+#: doc/classes/Mesh.xml:174 doc/classes/RenderingServer.xml:3156
msgid "Flag used to mark a compressed index array."
msgstr ""
-#: doc/classes/Mesh.xml:177 doc/classes/RenderingServer.xml:3166
+#: doc/classes/Mesh.xml:177 doc/classes/RenderingServer.xml:3162
msgid "Flag used to mark that the array contains 2D vertices."
msgstr ""
-#: doc/classes/Mesh.xml:180 doc/classes/RenderingServer.xml:3163
+#: doc/classes/Mesh.xml:180 doc/classes/RenderingServer.xml:3159
msgid ""
"Used to set flags [constant ARRAY_COMPRESS_NORMAL], [constant "
"ARRAY_COMPRESS_TANGENT], [constant ARRAY_COMPRESS_COLOR], [constant "
@@ -30569,7 +31204,10 @@ msgstr ""
msgid ""
"The number of channels to be used by ENet. Channels are used to separate "
"different kinds of data. In reliable or ordered mode, for example, the "
-"packet delivery order is ensured on a per channel basis."
+"packet delivery order is ensured on a per-channel basis. This is done to "
+"combat latency and reduces ordering restrictions on packets. The delivery "
+"status of a packet in one channel won't stall the delivery of other packets "
+"in another channel."
msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:134
@@ -30596,11 +31234,12 @@ msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:144
msgid ""
"Set the default channel to be used to transfer data. By default, this value "
-"is [code]-1[/code] which means that ENet will only use 2 channels, one for "
-"reliable and one for unreliable packets. Channel [code]0[/code] is reserved, "
-"and cannot be used. Setting this member to any value between [code]0[/code] "
-"and [member channel_count] (excluded) will force ENet to use that channel "
-"for sending data."
+"is [code]-1[/code] which means that ENet will only use 2 channels: one for "
+"reliable packets, and one for unreliable packets. The channel [code]0[/code] "
+"is reserved and cannot be used. Setting this member to any value between "
+"[code]0[/code] and [member channel_count] (excluded) will force ENet to use "
+"that channel for sending data. See [member channel_count] for more "
+"information about ENet channels."
msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:148
@@ -31792,57 +32431,63 @@ msgstr ""
#: doc/classes/Node.xml:930
msgid ""
-"Notification received from the OS when the game window is focused.\n"
-"Implemented on all platforms."
+"Notification received from the OS when the node's parent [Window] is "
+"focused. This may be a change of focus between two windows of the same "
+"engine instance, or from the OS desktop or a third-party application to a "
+"window of the game (in which case [constant "
+"NOTIFICATION_APPLICATION_FOCUS_IN] is also emitted)."
msgstr ""
-#: doc/classes/Node.xml:934
+#: doc/classes/Node.xml:933
msgid ""
-"Notification received from the OS when the game window is unfocused.\n"
-"Implemented on all platforms."
+"Notification received from the OS when the node's parent [Window] is "
+"defocused. This may be a change of focus between two windows of the same "
+"engine instance, or from a window of the game to the OS desktop or a third-"
+"party application (in which case [constant "
+"NOTIFICATION_APPLICATION_FOCUS_OUT] is also emitted)."
msgstr ""
-#: doc/classes/Node.xml:938
+#: doc/classes/Node.xml:936
msgid ""
"Notification received from the OS when a close request is sent (e.g. closing "
"the window with a \"Close\" button or [kbd]Alt + F4[/kbd]).\n"
"Implemented on desktop platforms."
msgstr ""
-#: doc/classes/Node.xml:942
+#: doc/classes/Node.xml:940
msgid ""
"Notification received from the OS when a go back request is sent (e.g. "
"pressing the \"Back\" button on Android).\n"
"Specific to the Android platform."
msgstr ""
-#: doc/classes/Node.xml:975
+#: doc/classes/Node.xml:981
msgid ""
"Inherits pause mode from the node's parent. For the root node, it is "
"equivalent to [constant PAUSE_MODE_STOP]. Default."
msgstr ""
-#: doc/classes/Node.xml:978
+#: doc/classes/Node.xml:984
msgid "Stops processing when the [SceneTree] is paused."
msgstr ""
-#: doc/classes/Node.xml:981
+#: doc/classes/Node.xml:987
msgid "Continue to process regardless of the [SceneTree] pause state."
msgstr ""
-#: doc/classes/Node.xml:984
+#: doc/classes/Node.xml:990
msgid "Duplicate the node's signals."
msgstr ""
-#: doc/classes/Node.xml:987
+#: doc/classes/Node.xml:993
msgid "Duplicate the node's groups."
msgstr ""
-#: doc/classes/Node.xml:990
+#: doc/classes/Node.xml:996
msgid "Duplicate the node's scripts."
msgstr ""
-#: doc/classes/Node.xml:993
+#: doc/classes/Node.xml:999
msgid ""
"Duplicate using instancing.\n"
"An instance stays linked to the original so when the original changes, the "
@@ -32066,12 +32711,6 @@ msgid ""
"changes. [Node3D] will not propagate this by default."
msgstr ""
-#: doc/classes/Node3D.xml:104
-msgid ""
-"Returns whether the node is visible, taking into consideration that its "
-"parents visibility."
-msgstr ""
-
#: doc/classes/Node3D.xml:115
msgid ""
"Rotates itself so that the local -Z axis points towards the [code]target[/"
@@ -32241,7 +32880,10 @@ msgid "Local translation of this node."
msgstr ""
#: doc/classes/Node3D.xml:326
-msgid "If [code]true[/code], this node is drawn."
+msgid ""
+"If [code]true[/code], this node is drawn. The node is only visible if all of "
+"its antecedents are visible as well (in other words, [method "
+"is_visible_in_tree] must return [code]true[/code])."
msgstr ""
#: doc/classes/Node3D.xml:332
@@ -32498,10 +33140,20 @@ msgid ""
"the key exists, even if the value is [code]null[/code].\n"
"Objects also receive notifications. Notifications are a simple way to notify "
"the object about different events, so they can all be handled together. See "
-"[method _notification]."
+"[method _notification].\n"
+"[b]Note:[/b] Unlike references to a [Reference], references to an Object "
+"stored in a variable can become invalid without warning. Therefore, it's "
+"recommended to use [Reference] for data classes instead of [Object]."
+msgstr ""
+
+#: doc/classes/Object.xml:23 doc/classes/Reference.xml:12
+#: doc/classes/Resource.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/getting_started/workflow/"
+"best_practices/node_alternatives.html"
msgstr ""
-#: doc/classes/Object.xml:30
+#: doc/classes/Object.xml:32
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method get].\n"
@@ -32509,7 +33161,7 @@ msgid ""
"code] does not exist."
msgstr ""
-#: doc/classes/Object.xml:38
+#: doc/classes/Object.xml:40
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method get_property_list].\n"
@@ -32521,11 +33173,11 @@ msgid ""
"PropertyUsageFlags])."
msgstr ""
-#: doc/classes/Object.xml:47
+#: doc/classes/Object.xml:49
msgid "Called when the object is initialized."
msgstr ""
-#: doc/classes/Object.xml:56
+#: doc/classes/Object.xml:58
msgid ""
"Called whenever the object receives a notification, which is identified in "
"[code]what[/code] by a constant. The base [Object] has two constants "
@@ -32534,7 +33186,7 @@ msgid ""
"notifications which are also received by this method."
msgstr ""
-#: doc/classes/Object.xml:67
+#: doc/classes/Object.xml:69
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method set].\n"
@@ -32542,7 +33194,7 @@ msgid ""
"exists."
msgstr ""
-#: doc/classes/Object.xml:75
+#: doc/classes/Object.xml:77
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method to_string], and thus the object's representation where it is "
@@ -32551,34 +33203,42 @@ msgid ""
"[code]\"[ClassName:RID]\"[/code]."
msgstr ""
-#: doc/classes/Object.xml:87
+#: doc/classes/Object.xml:89
msgid ""
"Adds a user-defined [code]signal[/code]. Arguments are optional, but can be "
"added as an [Array] of dictionaries, each containing [code]name: String[/"
"code] and [code]type: int[/code] (see [enum Variant.Type]) entries."
msgstr ""
-#: doc/classes/Object.xml:96
+#: doc/classes/Object.xml:98
msgid ""
"Calls the [code]method[/code] on the object and returns the result. This "
"method supports a variable number of arguments, so parameters are passed as "
"a comma separated list. Example:\n"
"[codeblock]\n"
"call(\"set\", \"position\", Vector2(42.0, 0.0))\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] In C#, the method name must be specified as snake_case if it is "
+"defined by a built-in Godot node. This doesn't apply to user-defined methods "
+"where you should use the same convention as in the C# source (typically "
+"PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:108
+#: doc/classes/Object.xml:111
msgid ""
"Calls the [code]method[/code] on the object during idle time. This method "
"supports a variable number of arguments, so parameters are passed as a comma "
"separated list. Example:\n"
"[codeblock]\n"
"call_deferred(\"set\", \"position\", Vector2(42.0, 0.0))\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] In C#, the method name must be specified as snake_case if it is "
+"defined by a built-in Godot node. This doesn't apply to user-defined methods "
+"where you should use the same convention as in the C# source (typically "
+"PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:122
+#: doc/classes/Object.xml:126
msgid ""
"Calls the [code]method[/code] on the object and returns the result. "
"Contrarily to [method call], this method does not support a variable number "
@@ -32588,13 +33248,13 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:132
+#: doc/classes/Object.xml:136
msgid ""
"Returns [code]true[/code] if the object can translate strings. See [method "
"set_message_translation] and [method tr]."
msgstr ""
-#: doc/classes/Object.xml:147
+#: doc/classes/Object.xml:151
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32630,7 +33290,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:174
+#: doc/classes/Object.xml:178
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32641,7 +33301,7 @@ msgid ""
"exists."
msgstr ""
-#: doc/classes/Object.xml:185
+#: doc/classes/Object.xml:189
msgid ""
"Emits the given [code]signal[/code]. The signal must exist, so it should be "
"a built-in signal of this class or one of its parent classes, or a user-"
@@ -32653,24 +33313,28 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:196
+#: doc/classes/Object.xml:200
msgid ""
"Deletes the object from memory. Any pre-existing reference to the freed "
"object will become invalid, e.g. [code]is_instance_valid(object)[/code] will "
"return [code]false[/code]."
msgstr ""
-#: doc/classes/Object.xml:205
+#: doc/classes/Object.xml:209
msgid ""
"Returns the [Variant] value of the given [code]property[/code]. If the "
-"[code]property[/code] doesn't exist, this will return [code]null[/code]."
+"[code]property[/code] doesn't exist, this will return [code]null[/code].\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:212
+#: doc/classes/Object.xml:217
msgid "Returns the object's class as a [String]."
msgstr ""
-#: doc/classes/Object.xml:219
+#: doc/classes/Object.xml:224
msgid ""
"Returns an [Array] of dictionaries with information about signals that are "
"connected to the object.\n"
@@ -32681,7 +33345,7 @@ msgid ""
"connected."
msgstr ""
-#: doc/classes/Object.xml:232
+#: doc/classes/Object.xml:237
msgid ""
"Gets the object's property indexed by the given [NodePath]. The node path "
"should be relative to the current object and can use the colon character "
@@ -32689,26 +33353,26 @@ msgid ""
"\"[/code] or [code]\"material:next_pass:blend_mode\"[/code]."
msgstr ""
-#: doc/classes/Object.xml:239
+#: doc/classes/Object.xml:244
msgid ""
"Returns the object's unique instance ID.\n"
"This ID can be saved in [EncodedObjectAsID], and can be used to retrieve the "
"object instance with [method @GDScript.instance_from_id]."
msgstr ""
-#: doc/classes/Object.xml:249
+#: doc/classes/Object.xml:254
msgid "Returns the object's metadata entry for the given [code]name[/code]."
msgstr ""
-#: doc/classes/Object.xml:256
+#: doc/classes/Object.xml:261
msgid "Returns the object's metadata as a [PackedStringArray]."
msgstr ""
-#: doc/classes/Object.xml:263
+#: doc/classes/Object.xml:268
msgid "Returns the object's methods and their signatures as an [Array]."
msgstr ""
-#: doc/classes/Object.xml:270
+#: doc/classes/Object.xml:275
msgid ""
"Returns the object's property list as an [Array] of dictionaries.\n"
"Each property's [Dictionary] contain at least [code]name: String[/code] and "
@@ -32718,54 +33382,54 @@ msgid ""
"PropertyUsageFlags])."
msgstr ""
-#: doc/classes/Object.xml:278
+#: doc/classes/Object.xml:283
msgid ""
"Returns the object's [Script] instance, or [code]null[/code] if none is "
"assigned."
msgstr ""
-#: doc/classes/Object.xml:287
+#: doc/classes/Object.xml:292
msgid "Returns an [Array] of connections for the given [code]signal[/code]."
msgstr ""
-#: doc/classes/Object.xml:294
+#: doc/classes/Object.xml:299
msgid "Returns the list of signals as an [Array] of dictionaries."
msgstr ""
-#: doc/classes/Object.xml:303
+#: doc/classes/Object.xml:308
msgid ""
"Returns [code]true[/code] if a metadata entry is found with the given "
"[code]name[/code]."
msgstr ""
-#: doc/classes/Object.xml:312
+#: doc/classes/Object.xml:317
msgid ""
"Returns [code]true[/code] if the object contains the given [code]method[/"
"code]."
msgstr ""
-#: doc/classes/Object.xml:321
+#: doc/classes/Object.xml:326
msgid "Returns [code]true[/code] if the given [code]signal[/code] exists."
msgstr ""
-#: doc/classes/Object.xml:330
+#: doc/classes/Object.xml:335
msgid ""
"Returns [code]true[/code] if the given user-defined [code]signal[/code] "
"exists. Only signals added using [method add_user_signal] are taken into "
"account."
msgstr ""
-#: doc/classes/Object.xml:337
+#: doc/classes/Object.xml:342
msgid "Returns [code]true[/code] if signal emission blocking is enabled."
msgstr ""
-#: doc/classes/Object.xml:346
+#: doc/classes/Object.xml:351
msgid ""
"Returns [code]true[/code] if the object inherits from the given [code]class[/"
"code]."
msgstr ""
-#: doc/classes/Object.xml:357
+#: doc/classes/Object.xml:362
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32773,13 +33437,13 @@ msgid ""
"code], [code]target[/code], and [code]method[/code]."
msgstr ""
-#: doc/classes/Object.xml:365
+#: doc/classes/Object.xml:370
msgid ""
"Returns [code]true[/code] if the [method Node.queue_free] method was called "
"for the object."
msgstr ""
-#: doc/classes/Object.xml:376
+#: doc/classes/Object.xml:381
msgid ""
"Send a given notification to the object, which will also trigger a call to "
"the [method _notification] method of all classes that the object inherits "
@@ -32791,34 +33455,42 @@ msgid ""
"and then down to its successive inheriting classes."
msgstr ""
-#: doc/classes/Object.xml:384
+#: doc/classes/Object.xml:389
msgid ""
"Notify the editor that the property list has changed, so that editor plugins "
"can take the new values into account. Does nothing on export builds."
msgstr ""
-#: doc/classes/Object.xml:393
+#: doc/classes/Object.xml:398
msgid "Removes a given entry from the object's metadata."
msgstr ""
-#: doc/classes/Object.xml:404
+#: doc/classes/Object.xml:409
msgid ""
"Assigns a new value to the given property. If the [code]property[/code] does "
-"not exist, nothing will happen."
+"not exist, nothing will happen.\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:413
+#: doc/classes/Object.xml:419
msgid "If set to [code]true[/code], signal emission is blocked."
msgstr ""
-#: doc/classes/Object.xml:424
+#: doc/classes/Object.xml:430
msgid ""
"Assigns a new value to the given property, after the current frame's physics "
"step. This is equivalent to calling [method set] via [method call_deferred], "
-"i.e. [code]call_deferred(\"set\", property, value)[/code]."
+"i.e. [code]call_deferred(\"set\", property, value)[/code].\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:435
+#: doc/classes/Object.xml:442
msgid ""
"Assigns a new value to the property identified by the [NodePath]. The node "
"path should be relative to the current object and can use the colon "
@@ -32830,19 +33502,19 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:449
+#: doc/classes/Object.xml:456
msgid ""
"Defines whether the object can translate strings (with calls to [method "
"tr]). Enabled by default."
msgstr ""
-#: doc/classes/Object.xml:460
+#: doc/classes/Object.xml:467
msgid ""
"Adds or changes a given entry in the object's metadata. Metadata are "
"serialized, and can take any [Variant] value."
msgstr ""
-#: doc/classes/Object.xml:469
+#: doc/classes/Object.xml:476
msgid ""
"Assigns a script to the object. Each object can have a single script "
"assigned to it, which are used to extend its functionality.\n"
@@ -32851,7 +33523,7 @@ msgid ""
"_init] method will be called."
msgstr ""
-#: doc/classes/Object.xml:477
+#: doc/classes/Object.xml:484
msgid ""
"Returns a [String] representing the object. If not overridden, defaults to "
"[code]\"[ClassName:RID]\"[/code].\n"
@@ -32859,7 +33531,7 @@ msgid ""
"representation."
msgstr ""
-#: doc/classes/Object.xml:487
+#: doc/classes/Object.xml:494
msgid ""
"Translates a message using translation catalogs configured in the Project "
"Settings.\n"
@@ -32868,35 +33540,35 @@ msgid ""
"set_message_translation]."
msgstr ""
-#: doc/classes/Object.xml:495
+#: doc/classes/Object.xml:502
msgid "Emitted whenever the object's script is changed."
msgstr ""
-#: doc/classes/Object.xml:501
+#: doc/classes/Object.xml:508
msgid "Called right when the object is initialized. Not available in script."
msgstr ""
-#: doc/classes/Object.xml:504
+#: doc/classes/Object.xml:511
msgid "Called before the object is about to be deleted."
msgstr ""
-#: doc/classes/Object.xml:507
+#: doc/classes/Object.xml:514
msgid ""
"Connects a signal in deferred mode. This way, signal emissions are stored in "
"a queue, then set on idle time."
msgstr ""
-#: doc/classes/Object.xml:510
+#: doc/classes/Object.xml:517
msgid "Persisting connections are saved when the object is serialized to file."
msgstr ""
-#: doc/classes/Object.xml:513
+#: doc/classes/Object.xml:520
msgid "One-shot connections disconnect themselves after emission."
msgstr ""
-#: doc/classes/Object.xml:516
+#: doc/classes/Object.xml:523
msgid ""
-"Connect a signal as reference counted. This means that a given signal can be "
+"Connect a signal as reference-counted. This means that a given signal can be "
"connected several times to the same target, and will only be fully "
"disconnected once no references are left."
msgstr ""
@@ -33361,10 +34033,29 @@ msgid "Returns the keycode of the given string (e.g. \"Escape\")."
msgstr ""
#: doc/classes/OS.xml:115
-msgid "Returns the command line arguments passed to the engine."
+msgid ""
+"Returns the command-line arguments passed to the engine.\n"
+"Command-line arguments can be written in any form, including both [code]--"
+"key value[/code] and [code]--key=value[/code] forms so they can be properly "
+"parsed, as long as custom command-line arguments do not conflict with engine "
+"arguments.\n"
+"You can also incorporate environment variables using the [method "
+"get_environment] method.\n"
+"You can set [code]editor/main_run_args[/code] in the Project Settings to "
+"define command-line arguments to be passed by the editor when running the "
+"project.\n"
+"Here's a minimal example on how to parse command-line arguments into a "
+"dictionary using the [code]--key=value[/code] form for arguments:\n"
+"[codeblock]\n"
+"var arguments = {}\n"
+"for argument in OS.get_cmdline_args():\n"
+" if argument.find(\"=\") > -1:\n"
+" var key_value = argument.split(\"=\")\n"
+" arguments[key_value[0].lstrip(\"--\")] = key_value[1]\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/OS.xml:122
+#: doc/classes/OS.xml:133
msgid ""
"Returns an array of MIDI device names.\n"
"The returned array will be empty if the system MIDI driver has not "
@@ -33372,14 +34063,14 @@ msgid ""
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:133
+#: doc/classes/OS.xml:144
msgid ""
"Returns current date as a dictionary of keys: [code]year[/code], "
"[code]month[/code], [code]day[/code], [code]weekday[/code], [code]dst[/code] "
"(Daylight Savings Time)."
msgstr ""
-#: doc/classes/OS.xml:142
+#: doc/classes/OS.xml:153
msgid ""
"Returns current datetime as a dictionary of keys: [code]year[/code], "
"[code]month[/code], [code]day[/code], [code]weekday[/code], [code]dst[/code] "
@@ -33387,7 +34078,7 @@ msgid ""
"[code]second[/code]."
msgstr ""
-#: doc/classes/OS.xml:151
+#: doc/classes/OS.xml:162
msgid ""
"Gets a dictionary of time values corresponding to the given UNIX epoch time "
"(in seconds).\n"
@@ -33396,22 +34087,22 @@ msgid ""
"the epoch."
msgstr ""
-#: doc/classes/OS.xml:161
+#: doc/classes/OS.xml:172
msgid "Returns an environment variable."
msgstr ""
-#: doc/classes/OS.xml:168
+#: doc/classes/OS.xml:179
msgid "Returns the path to the current engine executable."
msgstr ""
-#: doc/classes/OS.xml:175
+#: doc/classes/OS.xml:186
msgid ""
"With this function you can get the list of dangerous permissions that have "
"been granted to the Android application.\n"
"[b]Note:[/b] This method is implemented on Android."
msgstr ""
-#: doc/classes/OS.xml:185
+#: doc/classes/OS.xml:196
msgid ""
"Returns the given keycode as a string (e.g. Return values: [code]\"Escape\"[/"
"code], [code]\"Shift+Escape\"[/code]).\n"
@@ -33419,18 +34110,18 @@ msgid ""
"get_keycode_with_modifiers]."
msgstr ""
-#: doc/classes/OS.xml:193
+#: doc/classes/OS.xml:204
msgid "Returns the host OS locale."
msgstr ""
-#: doc/classes/OS.xml:200
+#: doc/classes/OS.xml:211
msgid ""
"Returns the model name of the current device.\n"
"[b]Note:[/b] This method is implemented on Android and iOS. Returns "
"[code]\"GenericDevice\"[/code] on unsupported platforms."
msgstr ""
-#: doc/classes/OS.xml:208
+#: doc/classes/OS.xml:219
msgid ""
"Returns the name of the host OS. Possible values are: [code]\"Android\"[/"
"code], [code]\"iOS\"[/code], [code]\"HTML5\"[/code], [code]\"OSX\"[/code], "
@@ -33438,81 +34129,81 @@ msgid ""
"[code]\"X11\"[/code]."
msgstr ""
-#: doc/classes/OS.xml:215
+#: doc/classes/OS.xml:226
msgid ""
"Returns the project's process ID.\n"
"[b]Note:[/b] This method is implemented on Android, iOS, Linux, macOS and "
"Windows."
msgstr ""
-#: doc/classes/OS.xml:223
+#: doc/classes/OS.xml:234
msgid "Returns the number of threads available on the host machine."
msgstr ""
-#: doc/classes/OS.xml:230
+#: doc/classes/OS.xml:241
msgid ""
"Returns the amount of time in milliseconds it took for the boot logo to "
"appear."
msgstr ""
-#: doc/classes/OS.xml:237
+#: doc/classes/OS.xml:248
msgid "Returns the maximum amount of static memory used (only works in debug)."
msgstr ""
-#: doc/classes/OS.xml:244
+#: doc/classes/OS.xml:255
msgid "Returns the amount of static memory being used by the program in bytes."
msgstr ""
-#: doc/classes/OS.xml:253
+#: doc/classes/OS.xml:264
msgid ""
"Returns the actual path to commonly used folders across different platforms. "
"Available locations are specified in [enum SystemDir].\n"
"[b]Note:[/b] This method is implemented on Android, Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:261
+#: doc/classes/OS.xml:272
msgid ""
"Returns the total number of available tablet drivers.\n"
"[b]Note:[/b] This method is implemented on Windows."
msgstr ""
-#: doc/classes/OS.xml:271
+#: doc/classes/OS.xml:282
msgid ""
"Returns the tablet driver name for the given index.\n"
"[b]Note:[/b] This method is implemented on Windows."
msgstr ""
-#: doc/classes/OS.xml:279
+#: doc/classes/OS.xml:290
msgid ""
"Returns the amount of time passed in milliseconds since the engine started."
msgstr ""
-#: doc/classes/OS.xml:286
+#: doc/classes/OS.xml:297
msgid ""
"Returns the amount of time passed in microseconds since the engine started."
msgstr ""
-#: doc/classes/OS.xml:295
+#: doc/classes/OS.xml:306
msgid "Returns current time as a dictionary of keys: hour, minute, second."
msgstr ""
-#: doc/classes/OS.xml:302
+#: doc/classes/OS.xml:313
msgid ""
"Returns the current time zone as a dictionary with the keys: bias and name."
msgstr ""
-#: doc/classes/OS.xml:309
+#: doc/classes/OS.xml:320
msgid ""
"Returns a string that is unique to the device.\n"
"[b]Note:[/b] Returns an empty string on HTML5 and UWP, as this method isn't "
"implemented on those platforms yet."
msgstr ""
-#: doc/classes/OS.xml:317
+#: doc/classes/OS.xml:328
msgid "Returns the current UNIX epoch timestamp."
msgstr ""
-#: doc/classes/OS.xml:326
+#: doc/classes/OS.xml:337
msgid ""
"Gets an epoch time value from a dictionary of time values.\n"
"[code]datetime[/code] must be populated with the following keys: [code]year[/"
@@ -33523,7 +34214,7 @@ msgid ""
"ignored."
msgstr ""
-#: doc/classes/OS.xml:335
+#: doc/classes/OS.xml:346
msgid ""
"Returns the absolute directory path where user data is written ([code]user://"
"[/code]).\n"
@@ -33541,11 +34232,11 @@ msgid ""
"[/code]."
msgstr ""
-#: doc/classes/OS.xml:348
+#: doc/classes/OS.xml:359
msgid "Returns [code]true[/code] if an environment variable exists."
msgstr ""
-#: doc/classes/OS.xml:357
+#: doc/classes/OS.xml:368
msgid ""
"Returns [code]true[/code] if the feature for the given feature tag is "
"supported in the currently running instance, depending on platform, build "
@@ -33556,7 +34247,7 @@ msgid ""
"[b]Note:[/b] Tag names are case-sensitive."
msgstr ""
-#: doc/classes/OS.xml:365
+#: doc/classes/OS.xml:376
msgid ""
"Returns [code]true[/code] if the Godot binary used to run the project is a "
"[i]debug[/i] export template, or when running in the editor.\n"
@@ -33567,26 +34258,26 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/OS.xml:376
+#: doc/classes/OS.xml:387
msgid ""
"Returns [code]true[/code] if the input keycode corresponds to a Unicode "
"character."
msgstr ""
-#: doc/classes/OS.xml:383
+#: doc/classes/OS.xml:394
msgid ""
"Returns [code]true[/code] if the engine was executed with [code]-v[/code] "
"(verbose stdout)."
msgstr ""
-#: doc/classes/OS.xml:390
+#: doc/classes/OS.xml:401
msgid ""
"If [code]true[/code], the [code]user://[/code] file system is persistent, so "
"that its state is the same after a player quits and starts the game again. "
"Relevant to the HTML5 platform, where this persistence may be unavailable."
msgstr ""
-#: doc/classes/OS.xml:399
+#: doc/classes/OS.xml:410
msgid ""
"Kill (terminate) the process identified by the given process ID ([code]pid[/"
"code]), e.g. the one returned by [method execute] in non-blocking mode.\n"
@@ -33596,37 +34287,37 @@ msgid ""
"Windows."
msgstr ""
-#: doc/classes/OS.xml:408
+#: doc/classes/OS.xml:419
msgid ""
"Initialises the singleton for the system MIDI driver.\n"
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:418
+#: doc/classes/OS.xml:429
msgid ""
"Shows all resources in the game. Optionally, the list can be written to a "
"file by specifying a file path in [code]tofile[/code]."
msgstr ""
-#: doc/classes/OS.xml:425
+#: doc/classes/OS.xml:436
msgid "Shows the list of loaded textures sorted by size in memory."
msgstr ""
-#: doc/classes/OS.xml:434
+#: doc/classes/OS.xml:445
msgid "Shows the number of resources loaded by the game of the given types."
msgstr ""
-#: doc/classes/OS.xml:443
+#: doc/classes/OS.xml:454
msgid "Shows all resources currently used by the game."
msgstr ""
-#: doc/classes/OS.xml:452
+#: doc/classes/OS.xml:463
msgid ""
"At the moment this function is only used by [code]AudioDriverOpenSL[/code] "
"to request permission for [code]RECORD_AUDIO[/code] on Android."
msgstr ""
-#: doc/classes/OS.xml:459
+#: doc/classes/OS.xml:470
msgid ""
"With this function you can request dangerous permissions since normal "
"permissions are automatically granted at install time in Android "
@@ -33634,15 +34325,15 @@ msgid ""
"[b]Note:[/b] This method is implemented on Android."
msgstr ""
-#: doc/classes/OS.xml:469
+#: doc/classes/OS.xml:480
msgid "Sets the name of the current thread."
msgstr ""
-#: doc/classes/OS.xml:478
+#: doc/classes/OS.xml:489
msgid "Enables backup saves if [code]enabled[/code] is [code]true[/code]."
msgstr ""
-#: doc/classes/OS.xml:487
+#: doc/classes/OS.xml:498
msgid ""
"Requests the OS to open a resource with the most appropriate program. For "
"example:\n"
@@ -33661,7 +34352,7 @@ msgid ""
"and Windows."
msgstr ""
-#: doc/classes/OS.xml:498
+#: doc/classes/OS.xml:509
msgid ""
"The exit code passed to the OS when the main loop exits. By convention, an "
"exit code of [code]0[/code] indicates success whereas a non-zero exit code "
@@ -33671,137 +34362,137 @@ msgid ""
"with an [code]exit_code[/code] argument passed."
msgstr ""
-#: doc/classes/OS.xml:502
+#: doc/classes/OS.xml:513
msgid ""
"If [code]true[/code], the engine optimizes for low processor usage by only "
"refreshing the screen if needed. Can improve battery consumption on mobile."
msgstr ""
-#: doc/classes/OS.xml:505
+#: doc/classes/OS.xml:516
msgid ""
"The amount of sleeping between frames when the low-processor usage mode is "
"enabled (in microseconds). Higher values will result in lower CPU usage."
msgstr ""
-#: doc/classes/OS.xml:508
-msgid "The current tablet drvier in use."
+#: doc/classes/OS.xml:519
+msgid "The current tablet driver in use."
msgstr ""
-#: doc/classes/OS.xml:513
+#: doc/classes/OS.xml:524
msgid ""
"The GLES2 rendering backend. It uses OpenGL ES 2.0 on mobile devices, OpenGL "
"2.1 on desktop platforms and WebGL 1.0 on the web."
msgstr ""
-#: doc/classes/OS.xml:516
+#: doc/classes/OS.xml:527
msgid "The Vulkan rendering backend."
msgstr ""
-#: doc/classes/OS.xml:519
+#: doc/classes/OS.xml:530
msgid "Sunday."
msgstr ""
-#: doc/classes/OS.xml:522
+#: doc/classes/OS.xml:533
msgid "Monday."
msgstr ""
-#: doc/classes/OS.xml:525
+#: doc/classes/OS.xml:536
msgid "Tuesday."
msgstr ""
-#: doc/classes/OS.xml:528
+#: doc/classes/OS.xml:539
msgid "Wednesday."
msgstr ""
-#: doc/classes/OS.xml:531
+#: doc/classes/OS.xml:542
msgid "Thursday."
msgstr ""
-#: doc/classes/OS.xml:534
+#: doc/classes/OS.xml:545
msgid "Friday."
msgstr ""
-#: doc/classes/OS.xml:537
+#: doc/classes/OS.xml:548
msgid "Saturday."
msgstr ""
-#: doc/classes/OS.xml:540
+#: doc/classes/OS.xml:551
msgid "January."
msgstr ""
-#: doc/classes/OS.xml:543
+#: doc/classes/OS.xml:554
msgid "February."
msgstr ""
-#: doc/classes/OS.xml:546
+#: doc/classes/OS.xml:557
msgid "March."
msgstr ""
-#: doc/classes/OS.xml:549
+#: doc/classes/OS.xml:560
msgid "April."
msgstr ""
-#: doc/classes/OS.xml:552
+#: doc/classes/OS.xml:563
msgid "May."
msgstr ""
-#: doc/classes/OS.xml:555
+#: doc/classes/OS.xml:566
msgid "June."
msgstr ""
-#: doc/classes/OS.xml:558
+#: doc/classes/OS.xml:569
msgid "July."
msgstr ""
-#: doc/classes/OS.xml:561
+#: doc/classes/OS.xml:572
msgid "August."
msgstr ""
-#: doc/classes/OS.xml:564
+#: doc/classes/OS.xml:575
msgid "September."
msgstr ""
-#: doc/classes/OS.xml:567
+#: doc/classes/OS.xml:578
msgid "October."
msgstr ""
-#: doc/classes/OS.xml:570
+#: doc/classes/OS.xml:581
msgid "November."
msgstr ""
-#: doc/classes/OS.xml:573
+#: doc/classes/OS.xml:584
msgid "December."
msgstr ""
-#: doc/classes/OS.xml:576
+#: doc/classes/OS.xml:587
msgid "Desktop directory path."
msgstr ""
-#: doc/classes/OS.xml:579
+#: doc/classes/OS.xml:590
msgid "DCIM (Digital Camera Images) directory path."
msgstr ""
-#: doc/classes/OS.xml:582
+#: doc/classes/OS.xml:593
msgid "Documents directory path."
msgstr ""
-#: doc/classes/OS.xml:585
+#: doc/classes/OS.xml:596
msgid "Downloads directory path."
msgstr ""
-#: doc/classes/OS.xml:588
+#: doc/classes/OS.xml:599
msgid "Movies directory path."
msgstr ""
-#: doc/classes/OS.xml:591
+#: doc/classes/OS.xml:602
msgid "Music directory path."
msgstr ""
-#: doc/classes/OS.xml:594
+#: doc/classes/OS.xml:605
msgid "Pictures directory path."
msgstr ""
-#: doc/classes/OS.xml:597
+#: doc/classes/OS.xml:608
msgid "Ringtones directory path."
msgstr ""
@@ -33856,7 +34547,15 @@ msgid ""
"should always be preferred."
msgstr ""
-#: doc/classes/PackedByteArray.xml:85
+#: doc/classes/PackedByteArray.xml:87 doc/classes/PackedColorArray.xml:53
+#: doc/classes/PackedFloat32Array.xml:54 doc/classes/PackedFloat64Array.xml:54
+#: doc/classes/PackedInt32Array.xml:54 doc/classes/PackedInt64Array.xml:54
+#: doc/classes/PackedStringArray.xml:53 doc/classes/PackedVector2Array.xml:53
+#: doc/classes/PackedVector3Array.xml:53
+msgid "Returns [code]true[/code] if the array contains [code]value[/code]."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:94
msgid ""
"Returns a hexadecimal representation of this array as a [String].\n"
"[codeblock]\n"
@@ -33865,39 +34564,48 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/PackedByteArray.xml:100 doc/classes/PackedColorArray.xml:55
-#: doc/classes/PackedFloat32Array.xml:56 doc/classes/PackedFloat64Array.xml:56
-#: doc/classes/PackedStringArray.xml:55 doc/classes/PackedVector2Array.xml:55
-#: doc/classes/PackedVector3Array.xml:55
+#: doc/classes/PackedByteArray.xml:109 doc/classes/PackedColorArray.xml:64
+#: doc/classes/PackedFloat32Array.xml:65 doc/classes/PackedFloat64Array.xml:65
+#: doc/classes/PackedStringArray.xml:64 doc/classes/PackedVector2Array.xml:64
+#: doc/classes/PackedVector3Array.xml:64
msgid ""
"Inserts a new element at a given position in the array. The position must be "
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PackedByteArray.xml:134 doc/classes/PackedColorArray.xml:89
-#: doc/classes/PackedFloat32Array.xml:90 doc/classes/PackedFloat64Array.xml:90
-#: doc/classes/PackedInt32Array.xml:90 doc/classes/PackedInt64Array.xml:90
-#: doc/classes/PackedStringArray.xml:89 doc/classes/PackedVector2Array.xml:89
-#: doc/classes/PackedVector3Array.xml:89
+#: doc/classes/PackedByteArray.xml:143 doc/classes/PackedColorArray.xml:98
+#: doc/classes/PackedFloat32Array.xml:99 doc/classes/PackedFloat64Array.xml:99
+#: doc/classes/PackedInt32Array.xml:99 doc/classes/PackedInt64Array.xml:99
+#: doc/classes/PackedStringArray.xml:98 doc/classes/PackedVector2Array.xml:98
+#: doc/classes/PackedVector3Array.xml:98
msgid ""
"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."
msgstr ""
-#: doc/classes/PackedByteArray.xml:145
+#: doc/classes/PackedByteArray.xml:154
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PackedByteArray.xml:152 doc/classes/PackedColorArray.xml:107
-#: doc/classes/PackedFloat32Array.xml:108
-#: doc/classes/PackedFloat64Array.xml:108 doc/classes/PackedStringArray.xml:107
-#: doc/classes/PackedVector2Array.xml:107
-#: doc/classes/PackedVector3Array.xml:107
+#: doc/classes/PackedByteArray.xml:161 doc/classes/PackedColorArray.xml:116
+#: doc/classes/PackedFloat32Array.xml:117
+#: doc/classes/PackedFloat64Array.xml:117 doc/classes/PackedStringArray.xml:116
+#: doc/classes/PackedVector2Array.xml:116
+#: doc/classes/PackedVector3Array.xml:116
msgid "Returns the size of the array."
msgstr ""
-#: doc/classes/PackedByteArray.xml:163
+#: doc/classes/PackedByteArray.xml:168 doc/classes/PackedColorArray.xml:123
+#: doc/classes/PackedFloat32Array.xml:124
+#: doc/classes/PackedFloat64Array.xml:124 doc/classes/PackedInt32Array.xml:124
+#: doc/classes/PackedInt64Array.xml:124 doc/classes/PackedStringArray.xml:123
+#: doc/classes/PackedVector2Array.xml:123
+#: doc/classes/PackedVector3Array.xml:123
+msgid "Sorts the elements of the array in ascending order."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:179
msgid ""
"Returns the slice of the [PackedByteArray] between indices (inclusive) as a "
"new [PackedByteArray]. Any negative index is considered to be from the end "
@@ -33925,12 +34633,12 @@ msgstr ""
msgid "Appends a [PackedColorArray] at the end of this array."
msgstr ""
-#: doc/classes/PackedColorArray.xml:71 doc/classes/PackedInt32Array.xml:72
-#: doc/classes/PackedInt64Array.xml:72
+#: doc/classes/PackedColorArray.xml:80 doc/classes/PackedInt32Array.xml:81
+#: doc/classes/PackedInt64Array.xml:81
msgid "Appends a value to the array."
msgstr ""
-#: doc/classes/PackedColorArray.xml:100
+#: doc/classes/PackedColorArray.xml:109
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -33960,8 +34668,8 @@ msgstr ""
msgid "Appends a [PackedFloat32Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedFloat32Array.xml:101
-#: doc/classes/PackedFloat64Array.xml:101
+#: doc/classes/PackedFloat32Array.xml:110
+#: doc/classes/PackedFloat64Array.xml:110
msgid "Changes the float at the given index."
msgstr ""
@@ -34014,17 +34722,17 @@ msgstr ""
msgid "Appends a [PackedInt32Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:56 doc/classes/PackedInt64Array.xml:56
+#: doc/classes/PackedInt32Array.xml:65 doc/classes/PackedInt64Array.xml:65
msgid ""
"Inserts a new integer at a given position in the array. The position must be "
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:101 doc/classes/PackedInt64Array.xml:101
+#: doc/classes/PackedInt32Array.xml:110 doc/classes/PackedInt64Array.xml:110
msgid "Changes the integer at the given index."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:108 doc/classes/PackedInt64Array.xml:108
+#: doc/classes/PackedInt32Array.xml:117 doc/classes/PackedInt64Array.xml:117
msgid "Returns the array size."
msgstr ""
@@ -34065,6 +34773,14 @@ msgid ""
"Can be used to save a node to a file. When saving, the node as well as all "
"the node it owns get saved (see [code]owner[/code] property on [Node]).\n"
"[b]Note:[/b] The node doesn't need to own itself.\n"
+"[b]Example of loading a saved scene:[/b]\n"
+"[codeblock]\n"
+"# Use `load()` instead of `preload()` if the path isn't known at compile-"
+"time.\n"
+"var scene = preload(\"res://scene.tscn\").instance()\n"
+"# Add the node as a child of the node the script is attached to.\n"
+"add_child(scene)\n"
+"[/codeblock]\n"
"[b]Example of saving a node with different owners:[/b] The following example "
"creates 3 objects: [code]Node2D[/code] ([code]node[/code]), "
"[code]RigidBody2D[/code] ([code]rigid[/code]) and [code]CollisionObject2D[/"
@@ -34096,29 +34812,29 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/PackedScene.xml:40
+#: doc/classes/PackedScene.xml:47
msgid "Returns [code]true[/code] if the scene file has nodes."
msgstr ""
-#: doc/classes/PackedScene.xml:47
+#: doc/classes/PackedScene.xml:54
msgid ""
"Returns the [code]SceneState[/code] representing the scene file contents."
msgstr ""
-#: doc/classes/PackedScene.xml:56
+#: doc/classes/PackedScene.xml:63
msgid ""
"Instantiates the scene's node hierarchy. Triggers child scene "
"instantiation(s). Triggers a [constant Node.NOTIFICATION_INSTANCED] "
"notification on the root node."
msgstr ""
-#: doc/classes/PackedScene.xml:65
+#: doc/classes/PackedScene.xml:72
msgid ""
"Pack will ignore any sub-nodes not owned by given node. See [member Node."
"owner]."
msgstr ""
-#: doc/classes/PackedScene.xml:71
+#: doc/classes/PackedScene.xml:78
msgid ""
"A dictionary representation of the scene contents.\n"
"Available keys include \"rnames\" and \"variants\" for resources, "
@@ -34127,18 +34843,18 @@ msgid ""
"connections, and \"version\" for the format style of the PackedScene."
msgstr ""
-#: doc/classes/PackedScene.xml:77
+#: doc/classes/PackedScene.xml:84
msgid "If passed to [method instance], blocks edits to the scene state."
msgstr ""
-#: doc/classes/PackedScene.xml:80
+#: doc/classes/PackedScene.xml:87
msgid ""
"If passed to [method instance], provides local scene resources to the local "
"scene.\n"
"[b]Note:[/b] Only available in editor builds."
msgstr ""
-#: doc/classes/PackedScene.xml:84
+#: doc/classes/PackedScene.xml:91
msgid ""
"If passed to [method instance], provides local scene resources to the local "
"scene. Only the main scene should receive the main edit state.\n"
@@ -34166,11 +34882,11 @@ msgstr ""
msgid "Appends a [PackedStringArray] at the end of this array."
msgstr ""
-#: doc/classes/PackedStringArray.xml:71
+#: doc/classes/PackedStringArray.xml:80
msgid "Appends a string element at end of the array."
msgstr ""
-#: doc/classes/PackedStringArray.xml:100
+#: doc/classes/PackedStringArray.xml:109
msgid "Changes the [String] at the given index."
msgstr ""
@@ -34195,11 +34911,11 @@ msgstr ""
msgid "Appends a [PackedVector2Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedVector2Array.xml:71
+#: doc/classes/PackedVector2Array.xml:80
msgid "Inserts a [Vector2] at the end."
msgstr ""
-#: doc/classes/PackedVector2Array.xml:100
+#: doc/classes/PackedVector2Array.xml:109
msgid "Changes the [Vector2] at the given index."
msgstr ""
@@ -34224,11 +34940,11 @@ msgstr ""
msgid "Appends a [PackedVector3Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedVector3Array.xml:71
+#: doc/classes/PackedVector3Array.xml:80
msgid "Inserts a [Vector3] at the end."
msgstr ""
-#: doc/classes/PackedVector3Array.xml:100
+#: doc/classes/PackedVector3Array.xml:109
msgid "Changes the [Vector3] at the given index."
msgstr ""
@@ -35119,13 +35835,55 @@ msgid ""
"as the values displayed in the [b]Monitor[/b] tab in the editor's "
"[b]Debugger[/b] panel. By using the [method get_monitor] method of this "
"class, you can access this data from your code.\n"
+"You can add custom monitors using the [method add_custom_monitor] method. "
+"Custom monitors are available in [b]Monitor[/b] tab in the editor's "
+"[b]Debugger[/b] panel together with built-in monitors.\n"
"[b]Note:[/b] A few of these monitors are only available in debug mode and "
"will always return 0 when used in a release build.\n"
"[b]Note:[/b] Many of these monitors are not updated in real-time, so there "
-"may be a short delay between changes."
+"may be a short delay between changes.\n"
+"[b]Note:[/b] Custom monitors do not support negative values. Negative values "
+"are clamped to 0."
+msgstr ""
+
+#: doc/classes/Performance.xml:26
+msgid ""
+"Adds a custom monitor with name same as id. You can specify the category of "
+"monitor using '/' in id. If there are more than one '/' then default "
+"category is used. Default category is \"Custom\".\n"
+"[codeblock]\n"
+"Performance.add_custom_monitor(\"MyCategory/MyMonitor\", some_callable) # "
+"Adds monitor with name \"MyName\" to category \"MyCategory\"\n"
+"Performance.add_custom_monitor(\"MyMonitor\", some_callable) # Adds monitor "
+"with name \"MyName\" to category \"Custom\"\n"
+"# Note: \"MyCategory/MyMonitor\" and \"MyMonitor\" have same name but "
+"different ids so above code is valid\n"
+"Performance.add_custom_monitor(\"Custom/MyMonitor\", some_callable) # Adds "
+"monitor with name \"MyName\" to category \"Custom\"\n"
+"# Note: \"MyMonitor\" and \"Custom/MyMonitor\" have same name and same "
+"category but different ids so above code is valid\n"
+"Performance.add_custom_monitor(\"MyCategoryOne/MyCategoryTwo/MyMonitor\", "
+"some_callable) # Adds monitor with name \"MyCategoryOne/MyCategoryTwo/"
+"MyMonitor\" to category \"Custom\"\n"
+"[/codeblock]\n"
+"The debugger calls the callable to get the value of custom monitor. The "
+"callable must return a number.\n"
+"Callables are called with arguments supplied in argument array.\n"
+"[b]Note:[/b] It throws an error if given id is already present."
msgstr ""
-#: doc/classes/Performance.xml:20
+#: doc/classes/Performance.xml:46
+msgid ""
+"Returns the value of custom monitor with given id. The callable is called to "
+"get the value of custom monitor.\n"
+"[b]Note:[/b] It throws an error if the given id is absent."
+msgstr ""
+
+#: doc/classes/Performance.xml:54
+msgid "Returns the names of active custom monitors in an array."
+msgstr ""
+
+#: doc/classes/Performance.xml:63
msgid ""
"Returns the value of one of the available monitors. You should provide one "
"of the [enum Monitor] constants as the argument, like this:\n"
@@ -35135,123 +35893,139 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Performance.xml:29
+#: doc/classes/Performance.xml:73
+msgid "Returns the last tick in which custom monitor was added/removed."
+msgstr ""
+
+#: doc/classes/Performance.xml:82
+msgid ""
+"Returns true if custom monitor with the given id is present otherwise "
+"returns false."
+msgstr ""
+
+#: doc/classes/Performance.xml:91
+msgid ""
+"Removes the custom monitor with given id.\n"
+"[b]Note:[/b] It throws an error if the given id is already absent."
+msgstr ""
+
+#: doc/classes/Performance.xml:98
msgid "Number of frames per second."
msgstr ""
-#: doc/classes/Performance.xml:32
+#: doc/classes/Performance.xml:101
msgid "Time it took to complete one frame, in seconds."
msgstr ""
-#: doc/classes/Performance.xml:35
+#: doc/classes/Performance.xml:104
msgid "Time it took to complete one physics frame, in seconds."
msgstr ""
-#: doc/classes/Performance.xml:38
+#: doc/classes/Performance.xml:107
msgid ""
"Static memory currently used, in bytes. Not available in release builds."
msgstr ""
-#: doc/classes/Performance.xml:41
+#: doc/classes/Performance.xml:110
msgid "Available static memory. Not available in release builds."
msgstr ""
-#: doc/classes/Performance.xml:44
+#: doc/classes/Performance.xml:113
msgid ""
"Largest amount of memory the message queue buffer has used, in bytes. The "
"message queue is used for deferred functions calls and notifications."
msgstr ""
-#: doc/classes/Performance.xml:47
+#: doc/classes/Performance.xml:116
msgid "Number of objects currently instanced (including nodes)."
msgstr ""
-#: doc/classes/Performance.xml:50
+#: doc/classes/Performance.xml:119
msgid "Number of resources currently used."
msgstr ""
-#: doc/classes/Performance.xml:53
+#: doc/classes/Performance.xml:122
msgid ""
"Number of nodes currently instanced in the scene tree. This also includes "
"the root node."
msgstr ""
-#: doc/classes/Performance.xml:56
+#: doc/classes/Performance.xml:125
msgid ""
"Number of orphan nodes, i.e. nodes which are not parented to a node of the "
"scene tree."
msgstr ""
-#: doc/classes/Performance.xml:59
+#: doc/classes/Performance.xml:128
msgid "3D objects drawn per frame."
msgstr ""
-#: doc/classes/Performance.xml:62
+#: doc/classes/Performance.xml:131
msgid "Vertices drawn per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:65
+#: doc/classes/Performance.xml:134
msgid "Material changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:68
+#: doc/classes/Performance.xml:137
msgid "Shader changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:71
+#: doc/classes/Performance.xml:140
msgid "Render surface changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:74
+#: doc/classes/Performance.xml:143
msgid "Draw calls per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:77 doc/classes/RenderingServer.xml:3805
+#: doc/classes/Performance.xml:146 doc/classes/RenderingServer.xml:3816
msgid ""
"The amount of video memory used, i.e. texture and vertex memory combined."
msgstr ""
-#: doc/classes/Performance.xml:80 doc/classes/RenderingServer.xml:3808
+#: doc/classes/Performance.xml:149 doc/classes/RenderingServer.xml:3819
msgid "The amount of texture memory used."
msgstr ""
-#: doc/classes/Performance.xml:83 doc/classes/RenderingServer.xml:3811
+#: doc/classes/Performance.xml:152 doc/classes/RenderingServer.xml:3822
msgid "The amount of vertex memory used."
msgstr ""
-#: doc/classes/Performance.xml:86 doc/classes/RenderingServer.xml:3802
+#: doc/classes/Performance.xml:155 doc/classes/RenderingServer.xml:3813
msgid "Unimplemented in the GLES2 rendering backend, always returns 0."
msgstr ""
-#: doc/classes/Performance.xml:89
+#: doc/classes/Performance.xml:158
msgid "Number of active [RigidBody2D] nodes in the game."
msgstr ""
-#: doc/classes/Performance.xml:92
+#: doc/classes/Performance.xml:161
msgid "Number of collision pairs in the 2D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:95
+#: doc/classes/Performance.xml:164
msgid "Number of islands in the 2D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:98
+#: doc/classes/Performance.xml:167
msgid "Number of active [RigidBody3D] and [VehicleBody3D] nodes in the game."
msgstr ""
-#: doc/classes/Performance.xml:101
+#: doc/classes/Performance.xml:170
msgid "Number of collision pairs in the 3D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:104
+#: doc/classes/Performance.xml:173
msgid "Number of islands in the 3D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:107
+#: doc/classes/Performance.xml:176
msgid "Output latency of the [AudioServer]."
msgstr ""
-#: doc/classes/Performance.xml:110
+#: doc/classes/Performance.xml:179
msgid "Represents the size of the [enum Monitor] enum."
msgstr ""
@@ -35275,27 +36049,27 @@ msgstr ""
msgid "Damps the body's rotation if greater than [code]0[/code]."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:70 doc/classes/RigidBody3D.xml:132
+#: doc/classes/PhysicalBone3D.xml:70 doc/classes/RigidBody3D.xml:139
msgid "Lock the body's rotation in the X axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:73 doc/classes/RigidBody3D.xml:135
+#: doc/classes/PhysicalBone3D.xml:73 doc/classes/RigidBody3D.xml:142
msgid "Lock the body's rotation in the Y axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:76 doc/classes/RigidBody3D.xml:138
+#: doc/classes/PhysicalBone3D.xml:76 doc/classes/RigidBody3D.xml:145
msgid "Lock the body's rotation in the Z axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:79 doc/classes/RigidBody3D.xml:141
+#: doc/classes/PhysicalBone3D.xml:79 doc/classes/RigidBody3D.xml:148
msgid "Lock the body's movement in the X axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:82 doc/classes/RigidBody3D.xml:144
+#: doc/classes/PhysicalBone3D.xml:82 doc/classes/RigidBody3D.xml:151
msgid "Lock the body's movement in the Y axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:85 doc/classes/RigidBody3D.xml:147
+#: doc/classes/PhysicalBone3D.xml:85 doc/classes/RigidBody3D.xml:154
msgid "Lock the body's movement in the Z axis."
msgstr ""
@@ -35350,12 +36124,12 @@ msgstr ""
msgid "Damps the body's movement if greater than [code]0[/code]."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:118 doc/classes/RigidBody2D.xml:158
-#: doc/classes/RigidBody3D.xml:175
+#: doc/classes/PhysicalBone3D.xml:118 doc/classes/RigidBody2D.xml:159
+#: doc/classes/RigidBody3D.xml:183
msgid "The body's mass."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:121 doc/classes/RigidBody3D.xml:188
+#: doc/classes/PhysicalBone3D.xml:121 doc/classes/RigidBody3D.xml:196
msgid ""
"The body's weight based on its mass and the global 3D gravity. Global values "
"are set in [b]Project > Project Settings > Physics > 3d[/b]."
@@ -35662,7 +36436,7 @@ msgid "The inverse of the mass of the body."
msgstr ""
#: doc/classes/PhysicsDirectBodyState2D.xml:195
-#: doc/classes/PhysicsDirectBodyState3D.xml:198 doc/classes/RigidBody2D.xml:155
+#: doc/classes/PhysicsDirectBodyState3D.xml:198 doc/classes/RigidBody2D.xml:156
msgid "The body's linear velocity."
msgstr ""
@@ -36215,7 +36989,7 @@ msgid ""
msgstr ""
#: doc/classes/PhysicsServer2D.xml:620 doc/classes/PhysicsServer3D.xml:637
-#: doc/classes/RigidBody3D.xml:120
+#: doc/classes/RigidBody3D.xml:127
msgid ""
"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."
@@ -37280,47 +38054,64 @@ msgid ""
"collision queries. See also [PhysicsShapeQueryResult2D]."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:18
-msgid ""
-"Sets the [Shape2D] that will be used for collision/intersection queries."
-msgstr ""
-
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:24
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:15
msgid "If [code]true[/code], the query will take [Area2D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:18
msgid ""
"If [code]true[/code], the query will take [PhysicsBody2D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:30
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:30
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:21
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:21
msgid "The physics layer(s) the query will take into account (as a bitmask)."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:33
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:33
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:24
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:24
msgid ""
"The list of objects or object [RID]s that will be excluded from collisions."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:36
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:36 doc/classes/Shape3D.xml:16
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:27 doc/classes/Shape3D.xml:16
msgid "The collision margin for the shape."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:39
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:30
msgid "The motion of the shape being queried for."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:42
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:39
-msgid "The queried shape's [RID]. See also [method set_shape]."
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:33
+msgid ""
+"The [Shape2D] that will be used for collision/intersection queries. This "
+"stores the actual reference which avoids the shape to be released while "
+"being used for queries, so always prefer using this over [member shape_rid]."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:45
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:42
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:36
+msgid ""
+"The queried shape's [RID] that will be used for collision/intersection "
+"queries. Use this over [member shape] if you want to optimize for "
+"performance using the Servers API:\n"
+"[codeblock]\n"
+"var shape_rid = PhysicsServer2D.circle_shape_create()\n"
+"var radius = 64\n"
+"PhysicsServer2D.shape_set_data(shape_rid, radius)\n"
+"\n"
+"var params = PhysicsShapeQueryParameters2D.new()\n"
+"params.shape_rid = shape_rid\n"
+"\n"
+"# Execute physics queries here...\n"
+"\n"
+"# Release the shape when done with physics queries.\n"
+"PhysicsServer2D.free_rid(shape_rid)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:52
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:49
msgid "The queried shape's transform matrix."
msgstr ""
@@ -37334,18 +38125,40 @@ msgid ""
"collision queries. See also [PhysicsShapeQueryResult3D]."
msgstr ""
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:15
+msgid "If [code]true[/code], the query will take [Area3D]s into account."
+msgstr ""
+
#: doc/classes/PhysicsShapeQueryParameters3D.xml:18
msgid ""
-"Sets the [Shape3D] that will be used for collision/intersection queries."
+"If [code]true[/code], the query will take [PhysicsBody3D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:24
-msgid "If [code]true[/code], the query will take [Area3D]s into account."
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:30
+msgid ""
+"The [Shape3D] that will be used for collision/intersection queries. This "
+"stores the actual reference which avoids the shape to be released while "
+"being used for queries, so always prefer using this over [member shape_rid]."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:33
msgid ""
-"If [code]true[/code], the query will take [PhysicsBody3D]s into account."
+"The queried shape's [RID] that will be used for collision/intersection "
+"queries. Use this over [member shape] if you want to optimize for "
+"performance using the Servers API:\n"
+"[codeblock]\n"
+"var shape_rid = PhysicsServer3D.shape_create(PhysicsServer3D.SHAPE_SPHERE)\n"
+"var radius = 2.0\n"
+"PhysicsServer3D.shape_set_data(shape_rid, radius)\n"
+"\n"
+"var params = PhysicsShapeQueryParameters3D.new()\n"
+"params.shape_rid = shape_rid\n"
+"\n"
+"# Execute physics queries here...\n"
+"\n"
+"# Release the shape when done with physics queries.\n"
+"PhysicsServer3D.free_rid(shape_rid)\n"
+"[/codeblock]"
msgstr ""
#: doc/classes/PhysicsShapeQueryResult2D.xml:4
@@ -37486,92 +38299,94 @@ msgid ""
"code]."
msgstr ""
-#: doc/classes/Plane.xml:72
-msgid "Returns a point on the plane."
-msgstr ""
-
-#: doc/classes/Plane.xml:83
+#: doc/classes/Plane.xml:76
msgid ""
-"Returns [code]true[/code] if [code]point[/code] is inside the plane (by a "
-"very minimum [code]epsilon[/code] threshold)."
+"Returns [code]true[/code] if [code]point[/code] is inside the plane. "
+"Comparison uses a custom minimum [code]epsilon[/code] threshold."
msgstr ""
-#: doc/classes/Plane.xml:94
+#: doc/classes/Plane.xml:87
msgid ""
"Returns the intersection point of the three planes [code]b[/code], [code]c[/"
"code] and this plane. If no intersection is found, [code]null[/code] is "
"returned."
msgstr ""
-#: doc/classes/Plane.xml:105
+#: doc/classes/Plane.xml:98
msgid ""
"Returns the intersection point of a ray consisting of the position "
"[code]from[/code] and the direction normal [code]dir[/code] with this plane. "
"If no intersection is found, [code]null[/code] is returned."
msgstr ""
-#: doc/classes/Plane.xml:116
+#: doc/classes/Plane.xml:109
msgid ""
"Returns the intersection point of a segment from position [code]begin[/code] "
"to position [code]end[/code] with this plane. If no intersection is found, "
"[code]null[/code] is returned."
msgstr ""
-#: doc/classes/Plane.xml:125
+#: doc/classes/Plane.xml:118
msgid ""
"Returns [code]true[/code] if this plane and [code]plane[/code] are "
"approximately equal, by running [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/Plane.xml:134
+#: doc/classes/Plane.xml:127
msgid ""
"Returns [code]true[/code] if [code]point[/code] is located above the plane."
msgstr ""
-#: doc/classes/Plane.xml:141
+#: doc/classes/Plane.xml:134
msgid "Returns a copy of the plane, normalized."
msgstr ""
-#: doc/classes/Plane.xml:150
+#: doc/classes/Plane.xml:143
msgid ""
-"Returns the orthogonal projection of point [code]p[/code] into a point in "
-"the plane."
+"Returns the orthogonal projection of [code]point[/code] into a point in the "
+"plane."
msgstr ""
-#: doc/classes/Plane.xml:156
+#: doc/classes/Plane.xml:149
msgid ""
-"Distance from the origin to the plane, in the direction of [member normal]."
+"The distance from the origin to the plane, in the direction of [member "
+"normal]. This value is typically non-negative.\n"
+"In the scalar equation of the plane [code]ax + by + cz = d[/code], this is "
+"[code]d[/code], while the [code](a, b, c)[/code] coordinates are represented "
+"by the [member normal] property."
msgstr ""
-#: doc/classes/Plane.xml:159
+#: doc/classes/Plane.xml:153
msgid ""
-"The normal of the plane. \"Over\" or \"Above\" the plane is considered the "
-"side of the plane towards where the normal is pointing."
+"The normal of the plane, which must be normalized.\n"
+"In the scalar equation of the plane [code]ax + by + cz = d[/code], this is "
+"the vector [code](a, b, c)[/code], where [code]d[/code] is the [member d] "
+"property."
msgstr ""
-#: doc/classes/Plane.xml:162
-msgid "The [member normal]'s X component."
+#: doc/classes/Plane.xml:157
+msgid "The X component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:165
-msgid "The [member normal]'s Y component."
+#: doc/classes/Plane.xml:160
+msgid "The Y component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:168
-msgid "The [member normal]'s Z component."
+#: doc/classes/Plane.xml:163
+msgid "The Z component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:173
-msgid "A plane that extends in the Y and Z axes."
+#: doc/classes/Plane.xml:168
+msgid "A plane that extends in the Y and Z axes (normal vector points +X)."
msgstr ""
-#: doc/classes/Plane.xml:176
-msgid "A plane that extends in the X and Z axes."
+#: doc/classes/Plane.xml:171
+msgid "A plane that extends in the X and Z axes (normal vector points +Y)."
msgstr ""
-#: doc/classes/Plane.xml:179
-msgid "A plane that extends in the X and Y axes."
+#: doc/classes/Plane.xml:174
+msgid "A plane that extends in the X and Y axes (normal vector points +Z)."
msgstr ""
#: doc/classes/PlaneMesh.xml:4
@@ -38282,18 +39097,25 @@ msgstr ""
#: doc/classes/PrimitiveMesh.xml:16
msgid ""
-"Returns mesh arrays used to constitute surface of [Mesh]. Mesh arrays can be "
-"used with [ArrayMesh] to create new surfaces."
+"Returns mesh arrays used to constitute surface of [Mesh]. The result can be "
+"passed to [method ArrayMesh.add_surface_from_arrays] to create a new "
+"surface. For example:\n"
+"[codeblock]\n"
+"var c := CylinderMesh.new()\n"
+"var arr_mesh := ArrayMesh.new()\n"
+"arr_mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLES, c."
+"get_mesh_arrays())\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:22
+#: doc/classes/PrimitiveMesh.xml:27
msgid ""
"Overrides the [AABB] with one defined by user for use with frustum culling. "
"Especially useful to avoid unnexpected culling when using a shader to "
"offset vertices."
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:25
+#: doc/classes/PrimitiveMesh.xml:30
msgid ""
"If set, the order of the vertices in each triangle are reversed resulting in "
"the backside of the mesh being drawn.\n"
@@ -38301,7 +39123,7 @@ msgid ""
"[member BaseMaterial3D.cull_mode]."
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:29
+#: doc/classes/PrimitiveMesh.xml:34
msgid "The current [Material] of the primitive mesh."
msgstr ""
@@ -38732,11 +39554,17 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:260
msgid ""
+"Safer override for [member audio/output_latency] in the Web platform, to "
+"avoid audio issues especially on mobile devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:263
+msgid ""
"Setting to hardcode audio delay when playing video. Best to leave this "
"untouched unless you know what you are doing."
msgstr ""
-#: doc/classes/ProjectSettings.xml:263
+#: doc/classes/ProjectSettings.xml:266
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -38746,7 +39574,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:269
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -38756,27 +39584,27 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:269
+#: doc/classes/ProjectSettings.xml:272
msgid ""
"The default compression level for Zstandard. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
"speed. Decompression speed is mostly unaffected by the compression level."
msgstr ""
-#: doc/classes/ProjectSettings.xml:272
+#: doc/classes/ProjectSettings.xml:275
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:278
msgid ""
"Largest size limit (in power of 2) allowed when compressing using long-"
"distance matching with Zstandard. Higher values can result in better "
"compression, but will require more memory when compressing and decompressing."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:281
msgid ""
"If [code]true[/code], displays getters and setters in autocompletion results "
"in the script editor. This setting is meant to be used when porting old "
@@ -38784,74 +39612,55 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:281
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:284
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:287
+#: doc/classes/ProjectSettings.xml:294
msgid ""
"If [code]true[/code], enables specific GDScript warnings (see [code]debug/"
"gdscript/warnings/*[/code] settings). If [code]false[/code], disables all "
"GDScript warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
-msgid ""
-"If [code]true[/code], enables warnings when a function is declared with the "
-"same name as a constant."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:296
-msgid ""
-"If [code]true[/code], enables warnings when a function is declared with the "
-"same name as a variable. This will turn into an error in a future version "
-"when first-class functions become supported in GDScript."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:299
-msgid ""
-"If [code]true[/code], enables warnings when a function assigned to a "
-"variable may yield and return a function state instead of a value."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:302
+#: doc/classes/ProjectSettings.xml:300
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:303
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when dividing an integer by another "
"integer (the decimal part will be discarded)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when passing a floating-point value "
"to a function that expects an integer (it will be converted and lose "
"precision)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:314
+#: doc/classes/ProjectSettings.xml:312
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
@@ -38872,102 +39681,85 @@ msgid ""
"member variable)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:323
+#: doc/classes/ProjectSettings.xml:325
msgid ""
"If [code]true[/code], enables warnings when calling an expression that has "
"no effect on the surrounding code, such as writing [code]2 + 2[/code] as a "
"statement."
msgstr ""
-#: doc/classes/ProjectSettings.xml:326
+#: doc/classes/ProjectSettings.xml:328
msgid ""
"If [code]true[/code], enables warnings when calling a ternary expression "
"that has no effect on the surrounding code, such as writing [code]42 if "
"active else 0[/code] as a statement."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:331
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:334
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:335
+#: doc/classes/ProjectSettings.xml:337
msgid ""
"If [code]true[/code], enables warnings when assigning a variable using an "
"assignment operator like [code]+=[/code] if the variable wasn't previously "
"assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:338
+#: doc/classes/ProjectSettings.xml:340
msgid ""
"If [code]true[/code], enables warnings when unreachable code is detected "
"(such as after a [code]return[/code] statement that will always be executed)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:345
msgid ""
"If [code]true[/code], enables warnings when using an expression whose type "
"may not be compatible with the function parameter expected."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:348
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:347
+#: doc/classes/ProjectSettings.xml:351
msgid ""
"If [code]true[/code], enables warnings when calling a method whose presence "
"is not guaranteed at compile-time in the class."
msgstr ""
-#: doc/classes/ProjectSettings.xml:350
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], enables warnings when accessing a property whose "
"presence is not guaranteed at compile-time in the class."
msgstr ""
-#: doc/classes/ProjectSettings.xml:353
-msgid ""
-"If [code]true[/code], enables warnings when a function parameter is unused."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:356
-msgid ""
-"If [code]true[/code], enables warnings when a member variable is unused."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:363
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:362
+#: doc/classes/ProjectSettings.xml:366
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:365
-msgid ""
-"If [code]true[/code], enables warnings when a variable is declared with the "
-"same name as a function. This will turn into an error in a future version "
-"when first-class functions become supported in GDScript."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:368
+#: doc/classes/ProjectSettings.xml:369
msgid ""
"If [code]true[/code], enables warnings when assigning the result of a "
"function that returns [code]void[/code] to a variable."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:374
+#: doc/classes/ProjectSettings.xml:375
msgid ""
"Maximum number of frames per second allowed. The actual number of frames per "
"second may still be below this value if the game is lagging.\n"
@@ -38978,143 +39770,143 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:379
+#: doc/classes/ProjectSettings.xml:380
msgid "Maximum call stack allowed for debugging GDScript."
msgstr ""
-#: doc/classes/ProjectSettings.xml:382
+#: doc/classes/ProjectSettings.xml:383
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:385
+#: doc/classes/ProjectSettings.xml:386
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:388
+#: doc/classes/ProjectSettings.xml:389
msgid ""
"Print more information to standard output when running. It displays "
"information such as memory leaks, which scenes and resources are being "
"loaded, etc."
msgstr ""
-#: doc/classes/ProjectSettings.xml:391
+#: doc/classes/ProjectSettings.xml:392
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:394
+#: doc/classes/ProjectSettings.xml:395
msgid ""
"Color of the contact points between collision shapes, visible when \"Visible "
"Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:397
+#: doc/classes/ProjectSettings.xml:398
msgid ""
"Maximum number of contact points between collision shapes to display when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:400
+#: doc/classes/ProjectSettings.xml:401
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
msgid "Hotspot for the custom mouse cursor image."
msgstr ""
-#: doc/classes/ProjectSettings.xml:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
msgid ""
"If [code]true[/code], allows HiDPI display on Windows and macOS. This "
"setting has no effect on desktop Linux, as DPI-awareness fallbacks are not "
"supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"If [code]true[/code], keeps the screen on (even in case of inactivity), so "
"the screensaver does not take over. Works on desktop and mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
msgid "Default orientation on mobile devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"If [code]true[/code], the home indicator is hidden automatically. This only "
"affects iOS devices without a physical home button."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid "Force the window to be always on top."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid "Force the window to be borderless."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Sets the window to full screen when it starts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid ""
"Sets the game's main viewport height. On desktop platforms, this is the "
"default window size. Stretch mode settings also use this as a reference when "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Allows the window to be resizable by default."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"Sets the game's main viewport width. On desktop platforms, this is the "
"default window size. Stretch mode settings also use this as a reference when "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:454
+#: doc/classes/ProjectSettings.xml:455
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:457
+#: doc/classes/ProjectSettings.xml:458
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -39123,7 +39915,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:460
+#: doc/classes/ProjectSettings.xml:461
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -39134,13 +39926,13 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:464
+#: doc/classes/ProjectSettings.xml:465
msgid ""
"Search path for project-specific script templates. Script templates will be "
"search both in the editor-specific path and in this project-specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:467
+#: doc/classes/ProjectSettings.xml:468
msgid ""
"Text-based file extensions to include in the script editor's \"Find in Files"
"\" feature. You can add e.g. [code]tscn[/code] if you wish to also parse "
@@ -39148,49 +39940,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:470
+#: doc/classes/ProjectSettings.xml:471
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:473
+#: doc/classes/ProjectSettings.xml:474
msgid ""
-"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
+"If [code]true[/code], swaps Cancel and OK buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:478
+#: doc/classes/ProjectSettings.xml:479
msgid ""
"Path to a custom [Theme] resource file to use for the project ([code]theme[/"
"code] or generic [code]tres[/code]/[code]res[/code] extension)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:484
+#: doc/classes/ProjectSettings.xml:485
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:487
+#: doc/classes/ProjectSettings.xml:488
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:490
+#: doc/classes/ProjectSettings.xml:491
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:493
+#: doc/classes/ProjectSettings.xml:494
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:496
+#: doc/classes/ProjectSettings.xml:497
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -39199,7 +39991,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"Default [InputEventAction] to discard a modal or pending input.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39207,7 +39999,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:504
+#: doc/classes/ProjectSettings.xml:505
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39215,7 +40007,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:508
+#: doc/classes/ProjectSettings.xml:509
msgid ""
"Default [InputEventAction] to go to the end position of a [Control] (e.g. "
"last item in an [ItemList] or a [Tree]), matching the behavior of [constant "
@@ -39225,7 +40017,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:512
+#: doc/classes/ProjectSettings.xml:513
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -39234,7 +40026,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:516
+#: doc/classes/ProjectSettings.xml:517
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -39243,7 +40035,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:520
+#: doc/classes/ProjectSettings.xml:521
msgid ""
"Default [InputEventAction] to go to the start position of a [Control] (e.g. "
"first item in an [ItemList] or a [Tree]), matching the behavior of [constant "
@@ -39253,7 +40045,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39261,7 +40053,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:528
+#: doc/classes/ProjectSettings.xml:529
msgid ""
"Default [InputEventAction] to go down a page in a [Control] (e.g. in an "
"[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEDOWN] on "
@@ -39271,7 +40063,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Default [InputEventAction] to go up a page in a [Control] (e.g. in an "
"[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEUP] on "
@@ -39281,7 +40073,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:536
+#: doc/classes/ProjectSettings.xml:537
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39289,7 +40081,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:540
+#: doc/classes/ProjectSettings.xml:541
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -39298,7 +40090,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39306,371 +40098,371 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:548
+#: doc/classes/ProjectSettings.xml:549
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:554
+#: doc/classes/ProjectSettings.xml:555
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:557
+#: doc/classes/ProjectSettings.xml:558
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:560
+#: doc/classes/ProjectSettings.xml:561
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:566
+#: doc/classes/ProjectSettings.xml:567
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:569
+#: doc/classes/ProjectSettings.xml:570
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:572
+#: doc/classes/ProjectSettings.xml:573
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:578
+#: doc/classes/ProjectSettings.xml:579
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:581
+#: doc/classes/ProjectSettings.xml:582
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:584
+#: doc/classes/ProjectSettings.xml:585
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:590
+#: doc/classes/ProjectSettings.xml:591
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:593
+#: doc/classes/ProjectSettings.xml:594
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:596
+#: doc/classes/ProjectSettings.xml:597
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:602
+#: doc/classes/ProjectSettings.xml:603
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid ""
"The locale to fall back to if a translation isn't available in a given "
"language. If left empty, [code]en[/code] (English) will be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "If [code]true[/code], logs all output to files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:806
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:809
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:812
msgid ""
"Godot uses a message queue to defer some function calls. If you run out of "
"space on it (you will see an error), you can increase the size here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:815
msgid ""
"This is used by servers when used in multi-threading mode (servers and "
"visual). RIDs are preallocated to avoid stalling the server requesting them "
@@ -39678,56 +40470,56 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:829
+#: doc/classes/ProjectSettings.xml:832
msgid ""
"Maximum amount of characters allowed to send as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:832
+#: doc/classes/ProjectSettings.xml:835
msgid ""
"Maximum number of errors allowed to be sent from the debugger. Over this "
"value, content is dropped. This helps not to stall the debugger connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:835
+#: doc/classes/ProjectSettings.xml:838
msgid ""
"Maximum amount of messages in the debugger queue. Over this value, content "
"is dropped. This helps to limit the debugger memory usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:838
+#: doc/classes/ProjectSettings.xml:841
msgid ""
"Maximum number of warnings allowed to be sent from the debugger. Over this "
"value, content is dropped. This helps not to stall the debugger connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:841
+#: doc/classes/ProjectSettings.xml:844
msgid ""
"Default size of packet peer stream for deserializing Godot data. Over this "
"size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:844
+#: doc/classes/ProjectSettings.xml:847
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:847
+#: doc/classes/ProjectSettings.xml:850
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:850
+#: doc/classes/ProjectSettings.xml:853
msgid ""
"Amount of read ahead used by remote filesystem. Higher values decrease the "
"effects of latency at the cost of higher bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:853
+#: doc/classes/ProjectSettings.xml:856
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:856
+#: doc/classes/ProjectSettings.xml:859
msgid ""
"The CA certificates bundle to use for SSL connections. If this is set to a "
"non-empty value, this will [i]override[/i] Godot's default [url=https://"
@@ -39737,31 +40529,31 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:863
msgid ""
"When creating node names automatically, set the type of casing in this "
"project. This is mostly an editor setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:866
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:869
msgid "Size of the hash table used for the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:872
msgid "Cell size used for the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:875
msgid "The default angular damp in 2D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:878
msgid ""
"The default gravity strength in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39773,7 +40565,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:883
+#: doc/classes/ProjectSettings.xml:886
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39785,38 +40577,38 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:891
+#: doc/classes/ProjectSettings.xml:894
msgid "The default linear damp in 2D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:894
+#: doc/classes/ProjectSettings.xml:897
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:897
+#: doc/classes/ProjectSettings.xml:900
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics2D\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:901
+#: doc/classes/ProjectSettings.xml:904
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant PhysicsServer2D."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:904
+#: doc/classes/ProjectSettings.xml:907
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant PhysicsServer2D."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:907
+#: doc/classes/ProjectSettings.xml:910
msgid ""
"Sets whether physics is run on the main thread or a separate one. Running "
"the server on a thread increases performance, but restricts API access to "
@@ -39826,23 +40618,23 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:914
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant PhysicsServer2D.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:917
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody3D] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:920
msgid "The default angular damp in 3D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:923
msgid ""
"The default gravity strength in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39854,7 +40646,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:928
+#: doc/classes/ProjectSettings.xml:931
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39866,11 +40658,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:936
+#: doc/classes/ProjectSettings.xml:939
msgid "The default linear damp in 3D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:939
+#: doc/classes/ProjectSettings.xml:942
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -39878,11 +40670,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:943
+#: doc/classes/ProjectSettings.xml:946
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:949
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -39891,7 +40683,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:950
+#: doc/classes/ProjectSettings.xml:953
msgid ""
"Fix to improve physics jitter, specially on monitors where refresh rate is "
"different than the physics FPS.\n"
@@ -39899,7 +40691,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:954
+#: doc/classes/ProjectSettings.xml:957
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -39907,7 +40699,7 @@ msgid ""
"programmatically, use [method RenderingServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:957
+#: doc/classes/ProjectSettings.xml:960
msgid ""
"[Environment] that will be used as a fallback environment in case a scene "
"does not specify its own environment. The default environment is loaded in "
@@ -39917,14 +40709,14 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:986
+#: doc/classes/ProjectSettings.xml:989
msgid ""
"Max amount of elements renderable in a frame. If more than this are visible "
"per frame, they will be dropped. Keep in mind elements refer to mesh "
"surfaces and not meshes themselves."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:994
msgid ""
"Some NVIDIA GPU drivers have a bug which produces flickering issues for the "
"[code]draw_rect[/code] method, especially as used in [TileMap]. Refer to "
@@ -39936,73 +40728,73 @@ msgid ""
"using the Vulkan backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:995
+#: doc/classes/ProjectSettings.xml:998
msgid ""
"If [code]true[/code], forces snapping of polygons to pixels in 2D rendering. "
"May help in some pixel art styles."
msgstr ""
-#: doc/classes/ProjectSettings.xml:998
+#: doc/classes/ProjectSettings.xml:1001
msgid ""
"Sets the quality of the depth of field effect. Higher quality takes more "
"samples, which is slower but looks smoother."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1001
+#: doc/classes/ProjectSettings.xml:1004
msgid ""
"Sets the depth of field shape. Can be Box, Hexagon, or Circle. Box is the "
"fastest. Circle is the most realistic, but also the most expensive to "
"compute."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1004
+#: doc/classes/ProjectSettings.xml:1007
msgid ""
"If [code]true[/code], jitters DOF samples to make effect slightly blurrier "
"and hide lines created from low sample rates. This can result in a slightly "
"grainy appearance when used with a low number of samples."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1010
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1010
+#: doc/classes/ProjectSettings.xml:1013
msgid ""
"If [code]true[/code], performs a previous depth pass before rendering "
"materials. This increases performance in scenes with high overdraw, when "
"complex materials and lighting are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1016
msgid ""
"The directional shadow's size in pixels. Higher values will result in "
"sharper shadows, at the cost of performance. The value will be rounded up to "
"the nearest power of 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1016
+#: doc/classes/ProjectSettings.xml:1019
msgid ""
"Lower-end override for [member rendering/quality/directional_shadow/size] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1019
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"Quality setting for shadows cast by [DirectionalLight3D]s. Higher quality "
"settings use more samples when reading from shadow maps and are thus slower. "
"Low quality settings may result in shadows looking grainy."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1022
+#: doc/classes/ProjectSettings.xml:1025
msgid ""
"Lower-end override for [member rendering/quality/directional_shadow/"
"soft_shadow_quality] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1028
msgid ""
"The video driver to use (\"GLES2\" or \"Vulkan\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -40012,32 +40804,32 @@ msgid ""
"get_current_video_driver[/code] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1031
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"If [code]true[/code], take additional samples when rendering objects "
"affected by a [GIProbe] to reduce artifacts from only sampling in one "
"direction."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1034
+#: doc/classes/ProjectSettings.xml:1037
msgid ""
"Sets the number of cone samples taken when rendering objects affected by "
"[GIProbe]s."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1037
+#: doc/classes/ProjectSettings.xml:1040
msgid ""
"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."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1040
+#: doc/classes/ProjectSettings.xml:1043
msgid ""
"Lower-end override for [member rendering/quality/glow/upscale_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1043
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Strategy used for framebuffer allocation. The simpler it is, the less "
"resources it uses (but the less features it supports). If set to \"2D "
@@ -40047,41 +40839,41 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1046
+#: doc/classes/ProjectSettings.xml:1049
msgid ""
"Lower-end override for [member rendering/quality/intended_usage/"
"framebuffer_allocation] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1052
msgid ""
"Number of cubemaps to store in the reflection atlas. The number of "
"[ReflectionProbe]s in a scene will be limited by this amount. A higher "
"number requires more VRAM."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1052
+#: doc/classes/ProjectSettings.xml:1055
msgid ""
"Size of cubemap faces for [ReflectionProbe]s. A higher number requires more "
"VRAM and may make reflection probe updating slower."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1055
+#: doc/classes/ProjectSettings.xml:1058
msgid ""
"Lower-end override for [member rendering/quality/reflection_atlas/"
"reflection_size] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1058
+#: doc/classes/ProjectSettings.xml:1061
msgid ""
"Use a higher quality variant of the fast filtering algorithm. Significantly "
"slower than using default quality, but results in smoother reflections. "
"Should only be used when the scene is especially detailed."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1061
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Sets the number of samples to take when using importance sampling for [Sky]s "
"and [ReflectionProbe]s. A higher value will result in smoother, higher "
@@ -40091,19 +40883,19 @@ msgid ""
"environments with a high level of detail."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1064
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Lower-end override for [member rendering/quality/reflections/ggx_samples] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1067
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Limits the number of layers to use in radiance maps when using importance "
"sampling. A lower number will be slightly faster and take up less VRAM."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1070
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise and "
@@ -40112,14 +40904,14 @@ msgid ""
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1073
+#: doc/classes/ProjectSettings.xml:1076
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"texture_array_reflections] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1079
msgid ""
"Sets the number of MSAA samples to use (as a power of two). MSAA is used to "
"reduce aliasing around the edges of polygons. A higher MSAA value results in "
@@ -40127,7 +40919,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1080
+#: doc/classes/ProjectSettings.xml:1083
msgid ""
"Sets the screen-space antialiasing mode for the default screen [Viewport]. "
"Screen-space antialiasing works by selectively blurring edges in a post-"
@@ -40136,133 +40928,117 @@ msgid ""
"MSAA and will smooth out specular aliasing, but tend to make scenes appear "
"blurry.\n"
"Another way to combat specular aliasing is to enable [member rendering/"
-"quality/screen_filters/screen_space_roughness_limiter]."
+"quality/screen_filters/screen_space_roughness_limiter_enabled]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1084
-msgid ""
-"Enables the screen-space roughness limiter which increases material "
-"roughness in areas with a high normal frequency (i.e. when normals change a "
-"lot from pixel to pixel). This helps to reduce the amount of specular "
-"aliasing in a scene. Specular aliasing looks like random bright pixels that "
-"occur in reflections."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:1087
-msgid ""
-"Curves the amount of the roughness limited effect. A higher value limits the "
-"effect to very sharply curved surfaces, while a lower threshold extends the "
-"effect to smoother surfaces."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:1090
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"Sets the quality for rough screen-space reflections. Turning off will make "
"all screen space reflections sharp, while higher values make rough "
"reflections look better."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1093
+#: doc/classes/ProjectSettings.xml:1096
msgid ""
"If [code]true[/code], uses faster but lower-quality Blinn model to generate "
"blurred reflections instead of the GGX model."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1099
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_blinn_over_ggx] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1102
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1102
+#: doc/classes/ProjectSettings.xml:1105
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_lambert_over_burley] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1105
+#: doc/classes/ProjectSettings.xml:1108
msgid ""
"If [code]true[/code], forces vertex shading for all rendering. This can "
"increase performance a lot, but also reduces quality immensely. Can be used "
"to optimize performance on low-end mobile devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1108
+#: doc/classes/ProjectSettings.xml:1111
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_vertex_shading] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1111 doc/classes/ProjectSettings.xml:1114
-#: doc/classes/ProjectSettings.xml:1117 doc/classes/ProjectSettings.xml:1120
+#: doc/classes/ProjectSettings.xml:1114 doc/classes/ProjectSettings.xml:1117
+#: doc/classes/ProjectSettings.xml:1120 doc/classes/ProjectSettings.xml:1123
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1123
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1126
+#: doc/classes/ProjectSettings.xml:1129
msgid ""
"Lower-end override for [member rendering/quality/shadow_atlas/size] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1132
msgid ""
"Quality setting for shadows cast by [OmniLight3D]s and [SpotLight3D]s. "
"Higher quality settings use more samples when reading from shadow maps and "
"are thus slower. Low quality settings may result in shadows looking grainy."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1132
+#: doc/classes/ProjectSettings.xml:1135
msgid ""
"Lower-end override for [member rendering/quality/shadows/"
"soft_shadow_quality] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1135
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"If [code]true[/code], screen-space ambient occlusion will be rendered at "
"half size and then upscaled before being added to the scene. This is "
"significantly faster but may miss small details."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1138
+#: doc/classes/ProjectSettings.xml:1141
msgid ""
"Sets the quality of the screen-space ambient occlusion effect. Higher values "
"take more samples and so will result in better quality, at the cost of "
"performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1144
msgid ""
"Scales the depth over which the subsurface scattering effect is applied. A "
"high value may allow light to scatter into a part of the mesh or another "
"mesh that is close in screen space but far in depth."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1144
+#: doc/classes/ProjectSettings.xml:1147
msgid ""
"Sets the quality of the subsurface scattering effect. Higher values are "
"slower but look nicer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1147
+#: doc/classes/ProjectSettings.xml:1150
msgid ""
"Scales the distance over which samples are taken for subsurface scattering "
"effect. Changing this does not impact performance, but higher values will "
@@ -40270,7 +41046,7 @@ msgid ""
"out. A lower value results in a smaller spread of scattered light."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1150
+#: doc/classes/ProjectSettings.xml:1153
msgid ""
"Sets the maximum number of samples to take when using anisotropic filtering "
"on textures (as a power of two). A higher sample count will result in "
@@ -40279,7 +41055,7 @@ msgid ""
"materials where it is enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1153
+#: doc/classes/ProjectSettings.xml:1156
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -40288,49 +41064,49 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Thread model for rendering. Rendering on a thread can vastly improve "
"performance, but synchronizing to the main thread can cause a bit more "
"jitter."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
"only supported on desktop platforms, and only when using the Vulkan renderer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
"doesn't support alpha channels in textures."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
"compression algorithm is only supported when using the Vulkan renderer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1175
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
"compression algorithm is only supported on iOS."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
"supported on desktop platforms and consoles."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1182
+#: doc/classes/ProjectSettings.xml:1189
msgid "Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses."
msgstr ""
@@ -40360,13 +41136,14 @@ msgstr ""
#: doc/classes/Quat.xml:7
msgid ""
-"A unit quaternion used for representing 3D rotations.\n"
-"It is similar to [Basis], which implements matrix representation of "
-"rotations, and can be parametrized using both an axis-angle pair or Euler "
-"angles. But due to its compactness and the way it is stored in memory, "
-"certain operations (obtaining axis-angle and performing SLERP, in "
-"particular) are more efficient and robust against floating-point errors.\n"
-"Quaternions need to be (re)normalized."
+"A unit quaternion used for representing 3D rotations. Quaternions need to be "
+"normalized to be used for rotation.\n"
+"It is similar to Basis, which implements matrix representation of rotations, "
+"and can be parametrized using both an axis-angle pair or Euler angles. Basis "
+"stores rotation, scale, and shearing, while Quat only stores rotation.\n"
+"Due to its compactness and the way it is stored in memory, certain "
+"operations (obtaining axis-angle and performing SLERP, in particular) are "
+"more efficient and robust against floating-point errors."
msgstr ""
#: doc/classes/Quat.xml:12
@@ -40376,29 +41153,31 @@ msgid ""
msgstr ""
#: doc/classes/Quat.xml:21
-msgid "Returns the rotation matrix corresponding to the given quaternion."
+msgid "Constructs a quaternion from the given [Basis]."
msgstr ""
#: doc/classes/Quat.xml:30
msgid ""
-"Returns a quaternion that will perform a rotation specified by Euler angles "
-"(in the YXZ convention: first Z, then X, and Y last), given in the vector "
-"format as (X angle, Y angle, Z angle)."
+"Constructs a quaternion that will perform a rotation specified by Euler "
+"angles (in the YXZ convention: when decomposing, first Z, then X, and Y "
+"last), given in the vector format as (X angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:41
msgid ""
-"Returns a quaternion that will rotate around the given axis by the specified "
-"angle. The axis must be a normalized vector."
+"Constructs a quaternion that will rotate around the given axis by the "
+"specified angle. The axis must be a normalized vector."
msgstr ""
#: doc/classes/Quat.xml:56
-msgid "Returns a quaternion defined by these values."
+msgid "Constructs a quaternion defined by the given values."
msgstr ""
#: doc/classes/Quat.xml:71
msgid ""
-"Performs a cubic spherical-linear interpolation with another quaternion."
+"Performs a cubic spherical interpolation between quaternions [code]preA[/"
+"code], this vector, [code]b[/code], and [code]postB[/code], by the given "
+"amount [code]t[/code]."
msgstr ""
#: doc/classes/Quat.xml:80
@@ -40407,10 +41186,10 @@ msgstr ""
#: doc/classes/Quat.xml:87
msgid ""
-"Returns Euler angles (in the YXZ convention: first Z, then X, and Y last) "
-"corresponding to the rotation represented by the unit quaternion. Returned "
-"vector contains the rotation angles in the format (X angle, Y angle, Z "
-"angle)."
+"Returns Euler angles (in the YXZ convention: when decomposing, first Z, then "
+"X, and Y last) corresponding to the rotation represented by the unit "
+"quaternion. Returned vector contains the rotation angles in the format (X "
+"angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:94
@@ -40449,44 +41228,57 @@ msgstr ""
#: doc/classes/Quat.xml:151
msgid ""
"Sets the quaternion to a rotation specified by Euler angles (in the YXZ "
-"convention: first Z, then X, and Y last), given in the vector format as (X "
-"angle, Y angle, Z angle)."
+"convention: when decomposing, first Z, then X, and Y last), given in the "
+"vector format as (X angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:162
-msgid "Performs a spherical-linear interpolation with another quaternion."
+msgid ""
+"Returns the result of the spherical linear interpolation between this "
+"quaternion and [code]to[/code] by amount [code]weight[/code].\n"
+"[b]Note:[/b] Both quaternions must be normalized."
msgstr ""
-#: doc/classes/Quat.xml:173
+#: doc/classes/Quat.xml:174
msgid ""
-"Performs a spherical-linear interpolation with another quaterion without "
-"checking if the rotation path is not bigger than 90°."
+"Returns the result of the spherical linear interpolation between this "
+"quaternion and [code]to[/code] by amount [code]weight[/code], but without "
+"checking if the rotation path is not bigger than 90 degrees."
msgstr ""
-#: doc/classes/Quat.xml:182
-msgid "Transforms the vector [code]v[/code] by this quaternion."
+#: doc/classes/Quat.xml:183
+msgid "Returns a vector transformed (multiplied) by this quaternion."
msgstr ""
-#: doc/classes/Quat.xml:188
-msgid "W component of the quaternion."
+#: doc/classes/Quat.xml:189
+msgid ""
+"W component of the quaternion (real part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:191
-msgid "X component of the quaternion."
+#: doc/classes/Quat.xml:193
+msgid ""
+"X component of the quaternion (imaginary [code]i[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:194
-msgid "Y component of the quaternion."
+#: doc/classes/Quat.xml:197
+msgid ""
+"Y component of the quaternion (imaginary [code]j[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:197
-msgid "Z component of the quaternion."
+#: doc/classes/Quat.xml:201
+msgid ""
+"Z component of the quaternion (imaginary [code]k[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:202
+#: doc/classes/Quat.xml:207
msgid ""
-"The identity rotation. Equivalent to an identity matrix. If a vector is "
-"transformed by an identity quaternion, it will not change."
+"The identity quaternion, representing no rotation. Equivalent to an identity "
+"[Basis] matrix. If a vector is transformed by an identity quaternion, it "
+"will not change."
msgstr ""
#: doc/classes/RandomNumberGenerator.xml:4
@@ -40689,7 +41481,8 @@ msgid ""
"collision information immediately instead of waiting for the next "
"[code]_physics_process[/code] call, for example if the ray or its parent has "
"changed state.\n"
-"[b]Note:[/b] [code]enabled == true[/code] is not required for this to work."
+"[b]Note:[/b] [member enabled] does not need to be [code]true[/code] for this "
+"to work."
msgstr ""
#: doc/classes/RayCast2D.xml:54 doc/classes/RayCast3D.xml:55
@@ -40795,7 +41588,8 @@ msgid ""
"Use this method to update the collision information immediately instead of "
"waiting for the next [code]_physics_process[/code] call, for example if the "
"ray or its parent has changed state.\n"
-"[b]Note:[/b] [code]enabled == true[/code] is not required for this to work."
+"[b]Note:[/b] [member enabled] does not need to be [code]true[/code] for this "
+"to work."
msgstr ""
#: doc/classes/RayCast3D.xml:71
@@ -40953,14 +41747,6 @@ msgstr ""
msgid "Returns a larger [Rect2] that contains this [Rect2] and [code]b[/code]."
msgstr ""
-#: doc/classes/Rect2.xml:174 doc/classes/Rect2i.xml:163
-msgid "Ending corner."
-msgstr ""
-
-#: doc/classes/Rect2.xml:177 doc/classes/Rect2i.xml:166
-msgid "Position (starting corner)."
-msgstr ""
-
#: doc/classes/Rect2i.xml:4
msgid "2D axis-aligned bounding box using integer coordinates."
msgstr ""
@@ -41073,22 +41859,22 @@ msgstr ""
msgid ""
"Base class for any object that keeps a reference count. [Resource] and many "
"other helper objects inherit this class.\n"
-"References keep an internal reference counter so that they are automatically "
-"released when no longer in use, and only then. References therefore do not "
-"need to be freed manually with [method Object.free].\n"
+"Unlike [Object]s, References keep an internal reference counter so that they "
+"are automatically released when no longer in use, and only then. References "
+"therefore do not need to be freed manually with [method Object.free].\n"
"In the vast majority of use cases, instantiating and using [Reference]-"
"derived types is all you need to do. The methods provided in this class are "
"only for advanced users, and can cause issues if misused."
msgstr ""
-#: doc/classes/Reference.xml:18
+#: doc/classes/Reference.xml:19
msgid ""
"Initializes the internal reference counter. Use this only if you really know "
"what you are doing.\n"
"Returns whether the initialization was successful."
msgstr ""
-#: doc/classes/Reference.xml:26
+#: doc/classes/Reference.xml:27
msgid ""
"Increments the internal reference counter. Use this only if you really know "
"what you are doing.\n"
@@ -41096,7 +41882,7 @@ msgid ""
"code] otherwise."
msgstr ""
-#: doc/classes/Reference.xml:34
+#: doc/classes/Reference.xml:35
msgid ""
"Decrements the internal reference counter. Use this only if you really know "
"what you are doing.\n"
@@ -41145,14 +41931,14 @@ msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/reflection_probes.html"
msgstr ""
-#: doc/classes/ReflectionProbe.xml:17
+#: doc/classes/ReflectionProbe.xml:23
msgid ""
"If [code]true[/code], enables box projection. This makes reflections look "
"more correct in rectangle-shaped rooms by offsetting the reflection center "
"depending on the camera's location."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:20
+#: doc/classes/ReflectionProbe.xml:26
msgid ""
"Sets the cull mask which determines what objects are drawn by this probe. "
"Every [VisualInstance3D] with a layer included in this cull mask will be "
@@ -41161,78 +41947,56 @@ msgid ""
"rendering cost."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:23
+#: doc/classes/ReflectionProbe.xml:29
msgid ""
"If [code]true[/code], computes shadows in the reflection probe. This makes "
"the reflection probe slower to render; you may want to disable this if using "
"the [constant UPDATE_ALWAYS] [member update_mode]."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:26
+#: doc/classes/ReflectionProbe.xml:32
msgid ""
"The size of the reflection probe. The larger the extents the more space "
"covered by the probe which will lower the perceived resolution. It is best "
"to keep the extents only as large as you need them."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:29
+#: doc/classes/ReflectionProbe.xml:35
msgid ""
"Defines the reflection intensity. Intensity modulates the strength of the "
"reflection."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:32
-msgid ""
-"Sets the ambient light color to be used when this probe is set to [member "
-"interior_enable]."
-msgstr ""
-
-#: doc/classes/ReflectionProbe.xml:35
-msgid ""
-"Sets the contribution value for how much the reflection affects the ambient "
-"light for this reflection probe when set to [member interior_enable]. Useful "
-"so that ambient light matches the color of the room."
-msgstr ""
-
#: doc/classes/ReflectionProbe.xml:38
-msgid ""
-"Sets the energy multiplier for this reflection probe's ambient light "
-"contribution when set to [member interior_enable]."
+msgid "If [code]true[/code], reflections will ignore sky contribution."
msgstr ""
#: doc/classes/ReflectionProbe.xml:41
msgid ""
-"If [code]true[/code], reflections will ignore sky contribution. Ambient "
-"lighting is then controlled by the [code]interior_ambient_*[/code] "
-"properties."
-msgstr ""
-
-#: doc/classes/ReflectionProbe.xml:44
-msgid ""
"Sets the max distance away from the probe an object can be before it is "
"culled."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:47
+#: doc/classes/ReflectionProbe.xml:44
msgid ""
"Sets the origin offset to be used when this reflection probe is in box "
"project mode."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:50
+#: doc/classes/ReflectionProbe.xml:47
msgid ""
"Sets how frequently the probe is updated. Can be [constant UPDATE_ONCE] or "
"[constant UPDATE_ALWAYS]."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:55
+#: doc/classes/ReflectionProbe.xml:52
msgid ""
"Update the probe once on the next frame. The corresponding radiance map will "
"be generated over the following six frames. This is slower to update than "
"[constant UPDATE_ALWAYS] but can result in higher quality reflections."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:58
+#: doc/classes/ReflectionProbe.xml:55
msgid ""
"Update the probe every frame. This is needed when you want to capture "
"dynamic objects. However, it results in an increased render time. Use "
@@ -41262,10 +42026,10 @@ msgid ""
"read by RegEx as [code]\\d+[/code]. Similarly, [code]compile(\"\\\"(?:\\\\\\"
"\\.|[^\\\"])*\\\"\")[/code] would be read as [code]\"(?:\\\\.|[^\"])*\"[/"
"code].\n"
-"Using [method search] you can find the pattern within the given text. If a "
+"Using [method search], you can find the pattern within the given text. If a "
"pattern is found, [RegExMatch] is returned and you can retrieve details of "
-"the results using functions such as [method RegExMatch.get_string] and "
-"[method RegExMatch.get_start].\n"
+"the results using methods such as [method RegExMatch.get_string] and [method "
+"RegExMatch.get_start].\n"
"[codeblock]\n"
"var regex = RegEx.new()\n"
"regex.compile(\"\\\\w-(\\\\d+)\")\n"
@@ -41274,7 +42038,7 @@ msgid ""
" print(result.get_string()) # Would print n-0123\n"
"[/codeblock]\n"
"The results of capturing groups [code]()[/code] can be retrieved by passing "
-"the group number to the various functions in [RegExMatch]. Group 0 is the "
+"the group number to the various methods in [RegExMatch]. Group 0 is the "
"default and will always refer to the entire pattern. In the above example, "
"calling [code]result.get_string(1)[/code] would give you [code]0123[/code].\n"
"This version of RegEx also supports named capturing groups, and the names "
@@ -41295,6 +42059,15 @@ msgid ""
" print(result.get_string(\"digit\"))\n"
"# Would print 01 03 0 3f 42\n"
"[/codeblock]\n"
+"[b]Example of splitting a string using a RegEx:[/b]\n"
+"[codeblock]\n"
+"var regex = RegEx.new()\n"
+"regex.compile(\"\\\\S+\") # Negated whitespace character class.\n"
+"var results = []\n"
+"for match in regex.search_all(\"One Two \\n\\tThree\"):\n"
+" results.push_back(match.get_string())\n"
+"# The `results` array now contains \"One\", \"Two\", \"Three\".\n"
+"[/codeblock]\n"
"[b]Note:[/b] Godot's regex implementation is based on the [url=https://www."
"pcre.org/]PCRE2[/url] library. You can view the full pattern reference "
"[url=https://www.pcre.org/current/doc/html/pcre2pattern.html]here[/url].\n"
@@ -41302,38 +42075,38 @@ msgid ""
"regular expressions online."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:47
+#: modules/regex/doc_classes/RegEx.xml:56
msgid ""
"This method resets the state of the object, as if it was freshly created. "
"Namely, it unassigns the regular expression of this object."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:56
+#: modules/regex/doc_classes/RegEx.xml:65
msgid ""
"Compiles and assign the search pattern to use. Returns [constant OK] if the "
"compilation is successful. If an error is encountered, details are printed "
"to standard output and an error is returned."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:63
+#: modules/regex/doc_classes/RegEx.xml:72
msgid "Returns the number of capturing groups in compiled pattern."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:70
+#: modules/regex/doc_classes/RegEx.xml:79
msgid ""
"Returns an array of names of named capturing groups in the compiled pattern. "
"They are ordered by appearance."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:77
+#: modules/regex/doc_classes/RegEx.xml:86
msgid "Returns the original search pattern that was compiled."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:84
+#: modules/regex/doc_classes/RegEx.xml:93
msgid "Returns whether this object has a valid search pattern assigned."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:97
+#: modules/regex/doc_classes/RegEx.xml:106
msgid ""
"Searches the text for the compiled pattern. Returns a [RegExMatch] container "
"of the first matching result if found, otherwise [code]null[/code]. The "
@@ -41341,7 +42114,7 @@ msgid ""
"and end anchor would be."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:110
+#: modules/regex/doc_classes/RegEx.xml:119
msgid ""
"Searches the text for the compiled pattern. Returns an array of [RegExMatch] "
"containers for each non-overlapping result. If no results were found, an "
@@ -41349,7 +42122,7 @@ msgid ""
"specified without modifying where the start and end anchor would be."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:127
+#: modules/regex/doc_classes/RegEx.xml:136
msgid ""
"Searches the text for the compiled pattern and replaces it with the "
"specified string. Escapes and backreferences such as [code]$1[/code] and "
@@ -42076,7 +42849,7 @@ msgid ""
msgstr ""
#: doc/classes/RenderingServer.xml:1222 doc/classes/RenderingServer.xml:1250
-#: doc/classes/RenderingServer.xml:1527
+#: doc/classes/RenderingServer.xml:1537
msgid "Not implemented in Godot 3.x."
msgstr ""
@@ -42223,30 +42996,30 @@ msgid ""
"OmniLight3D.omni_shadow_mode]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1481
+#: doc/classes/RenderingServer.xml:1491
msgid ""
"Sets the color of the light. Equivalent to [member Light3D.light_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1492
+#: doc/classes/RenderingServer.xml:1502
msgid ""
"Sets the cull mask for this Light3D. Lights only affect objects in the "
"selected layers. Equivalent to [member Light3D.light_cull_mask]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1503
+#: doc/classes/RenderingServer.xml:1513
msgid ""
"If [code]true[/code], light will subtract light instead of adding light. "
"Equivalent to [member Light3D.light_negative]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1516
+#: doc/classes/RenderingServer.xml:1526
msgid ""
"Sets the specified light parameter. See [enum LightParam] for options. "
"Equivalent to [method Light3D.set_param]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1538
+#: doc/classes/RenderingServer.xml:1548
msgid ""
"If [code]true[/code], reverses the backface culling of the mesh. This can be "
"useful when you have a flat mesh that has a light behind it. If you need to "
@@ -42255,29 +43028,25 @@ msgid ""
"to [member Light3D.shadow_reverse_cull_face]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1549
+#: doc/classes/RenderingServer.xml:1559
msgid ""
"If [code]true[/code], light will cast shadows. Equivalent to [member Light3D."
"shadow_enabled]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1560
+#: doc/classes/RenderingServer.xml:1570
msgid ""
"Sets the color of the shadow cast by the light. Equivalent to [member "
"Light3D.shadow_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1571
-msgid "Sets whether GI probes capture light information from this light."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:1584
+#: doc/classes/RenderingServer.xml:1583
msgid ""
"Returns a mesh of a sphere with the given amount of horizontal and vertical "
"subdivisions."
msgstr ""
-#: doc/classes/RenderingServer.xml:1591
+#: doc/classes/RenderingServer.xml:1590
msgid ""
"Creates an empty material and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42286,31 +43055,31 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:1603
+#: doc/classes/RenderingServer.xml:1602
msgid "Returns the value of a certain material's parameter."
msgstr ""
-#: doc/classes/RenderingServer.xml:1614
+#: doc/classes/RenderingServer.xml:1613
msgid "Sets an object's next material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1627
+#: doc/classes/RenderingServer.xml:1626
msgid "Sets a material's parameter."
msgstr ""
-#: doc/classes/RenderingServer.xml:1638
+#: doc/classes/RenderingServer.xml:1637
msgid "Sets a material's render priority."
msgstr ""
-#: doc/classes/RenderingServer.xml:1649
+#: doc/classes/RenderingServer.xml:1648
msgid "Sets a shader material's shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:1678
+#: doc/classes/RenderingServer.xml:1677
msgid "Removes all surfaces from a mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1685
+#: doc/classes/RenderingServer.xml:1684
msgid ""
"Creates a new mesh and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all [code]mesh_*[/"
@@ -42321,58 +43090,58 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:1696
+#: doc/classes/RenderingServer.xml:1695
msgid "Returns a mesh's blend shape count."
msgstr ""
-#: doc/classes/RenderingServer.xml:1705
+#: doc/classes/RenderingServer.xml:1704
msgid "Returns a mesh's blend shape mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:1714
+#: doc/classes/RenderingServer.xml:1713
msgid "Returns a mesh's custom aabb."
msgstr ""
-#: doc/classes/RenderingServer.xml:1723
+#: doc/classes/RenderingServer.xml:1722
msgid "Returns a mesh's number of surfaces."
msgstr ""
-#: doc/classes/RenderingServer.xml:1734
+#: doc/classes/RenderingServer.xml:1733
msgid "Sets a mesh's blend shape mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:1745
+#: doc/classes/RenderingServer.xml:1744
msgid "Sets a mesh's custom aabb."
msgstr ""
-#: doc/classes/RenderingServer.xml:1756
+#: doc/classes/RenderingServer.xml:1755
msgid "Returns a mesh's surface's buffer arrays."
msgstr ""
-#: doc/classes/RenderingServer.xml:1767
+#: doc/classes/RenderingServer.xml:1766
msgid "Returns a mesh's surface's arrays for blend shapes."
msgstr ""
-#: doc/classes/RenderingServer.xml:1782 doc/classes/RenderingServer.xml:1795
+#: doc/classes/RenderingServer.xml:1781 doc/classes/RenderingServer.xml:1794
msgid "Function is unused in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:1806
+#: doc/classes/RenderingServer.xml:1805
msgid "Returns a mesh's surface's material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1819
+#: doc/classes/RenderingServer.xml:1818
msgid "Sets a mesh's surface's material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1834
+#: doc/classes/RenderingServer.xml:1833
msgid ""
"Updates a specific region of a vertex buffer for the specified surface. "
"Warning: this function alters the vertex buffer directly with no safety "
"mechanisms, you can easily corrupt your mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1857
+#: doc/classes/RenderingServer.xml:1856
msgid ""
"Creates a new multimesh on the RenderingServer and returns an [RID] handle. "
"This RID will be used in all [code]multimesh_*[/code] RenderingServer "
@@ -42383,82 +43152,82 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:1868
+#: doc/classes/RenderingServer.xml:1867
msgid ""
"Calculates and returns the axis-aligned bounding box that encloses all "
"instances within the multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1885
+#: doc/classes/RenderingServer.xml:1884
msgid "Returns the number of instances allocated for this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1894
+#: doc/classes/RenderingServer.xml:1893
msgid ""
"Returns the RID of the mesh that will be used in drawing this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1903
+#: doc/classes/RenderingServer.xml:1902
msgid "Returns the number of visible instances for this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1914
+#: doc/classes/RenderingServer.xml:1913
msgid "Returns the color by which the specified instance will be modulated."
msgstr ""
-#: doc/classes/RenderingServer.xml:1925
+#: doc/classes/RenderingServer.xml:1924
msgid "Returns the custom data associated with the specified instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:1936
+#: doc/classes/RenderingServer.xml:1935
msgid "Returns the [Transform] of the specified instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:1947
+#: doc/classes/RenderingServer.xml:1946
msgid ""
"Returns the [Transform2D] of the specified instance. For use when the "
"multimesh is set to use 2D transforms."
msgstr ""
-#: doc/classes/RenderingServer.xml:1960
+#: doc/classes/RenderingServer.xml:1959
msgid ""
"Sets the color by which this instance will be modulated. Equivalent to "
"[method MultiMesh.set_instance_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1973
+#: doc/classes/RenderingServer.xml:1972
msgid ""
"Sets the custom data for this instance. Custom data is passed as a [Color], "
"but is interpreted as a [code]vec4[/code] in the shader. Equivalent to "
"[method MultiMesh.set_instance_custom_data]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1986
+#: doc/classes/RenderingServer.xml:1985
msgid ""
"Sets the [Transform] for this instance. Equivalent to [method MultiMesh."
"set_instance_transform]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1999
+#: doc/classes/RenderingServer.xml:1998
msgid ""
"Sets the [Transform2D] for this instance. For use when multimesh is used in "
"2D. Equivalent to [method MultiMesh.set_instance_transform_2d]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2020
+#: doc/classes/RenderingServer.xml:2019
msgid ""
"Sets the mesh to be drawn by the multimesh. Equivalent to [member MultiMesh."
"mesh]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2031
+#: doc/classes/RenderingServer.xml:2030
msgid ""
"Sets the number of instances visible at a given time. If -1, all instances "
"that have been allocated are drawn. Equivalent to [member MultiMesh."
"visible_instance_count]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2038
+#: doc/classes/RenderingServer.xml:2037
msgid ""
"Creates a new omni light and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID can be used in most "
@@ -42469,7 +43238,7 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2047
+#: doc/classes/RenderingServer.xml:2046
msgid ""
"Creates a particle system and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42480,23 +43249,23 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2058
+#: doc/classes/RenderingServer.xml:2057
msgid ""
"Calculates and returns the axis-aligned bounding box that contains all the "
"particles. Equivalent to [method GPUParticles3D.capture_aabb]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2067
+#: doc/classes/RenderingServer.xml:2066
msgid "Returns [code]true[/code] if particles are currently set to emitting."
msgstr ""
-#: doc/classes/RenderingServer.xml:2076
+#: doc/classes/RenderingServer.xml:2075
msgid ""
"Returns [code]true[/code] if particles are not emitting and particles are "
"set to inactive."
msgstr ""
-#: doc/classes/RenderingServer.xml:2085
+#: doc/classes/RenderingServer.xml:2084
msgid ""
"Add particle system to list of particle systems that need to be updated. "
"Update will take place on the next frame, or on the next call to [method "
@@ -42504,121 +43273,121 @@ msgid ""
"instances_cull_ray]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2094
+#: doc/classes/RenderingServer.xml:2093
msgid ""
"Reset the particles on the next update. Equivalent to [method GPUParticles3D."
"restart]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2105
+#: doc/classes/RenderingServer.xml:2104
msgid ""
"Sets the number of particles to be drawn and allocates the memory for them. "
"Equivalent to [member GPUParticles3D.amount]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2116
+#: doc/classes/RenderingServer.xml:2115
msgid ""
"Sets a custom axis-aligned bounding box for the particle system. Equivalent "
"to [member GPUParticles3D.visibility_aabb]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2127
+#: doc/classes/RenderingServer.xml:2126
msgid ""
"Sets the draw order of the particles to one of the named enums from [enum "
"ParticlesDrawOrder]. See [enum ParticlesDrawOrder] for options. Equivalent "
"to [member GPUParticles3D.draw_order]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2140
+#: doc/classes/RenderingServer.xml:2139
msgid ""
"Sets the mesh to be used for the specified draw pass. Equivalent to [member "
"GPUParticles3D.draw_pass_1], [member GPUParticles3D.draw_pass_2], [member "
"GPUParticles3D.draw_pass_3], and [member GPUParticles3D.draw_pass_4]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2151
+#: doc/classes/RenderingServer.xml:2150
msgid ""
"Sets the number of draw passes to use. Equivalent to [member GPUParticles3D."
"draw_passes]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2162
+#: doc/classes/RenderingServer.xml:2161
msgid ""
"Sets the [Transform] that will be used by the particles when they first emit."
msgstr ""
-#: doc/classes/RenderingServer.xml:2173
+#: doc/classes/RenderingServer.xml:2172
msgid ""
"If [code]true[/code], particles will emit over time. Setting to false does "
"not reset the particles, but only stops their emission. Equivalent to "
"[member GPUParticles3D.emitting]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2184
+#: doc/classes/RenderingServer.xml:2183
msgid ""
"Sets the explosiveness ratio. Equivalent to [member GPUParticles3D."
"explosiveness]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2195
+#: doc/classes/RenderingServer.xml:2194
msgid ""
"Sets the frame rate that the particle system rendering will be fixed to. "
"Equivalent to [member GPUParticles3D.fixed_fps]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2206
+#: doc/classes/RenderingServer.xml:2205
msgid ""
"If [code]true[/code], uses fractional delta which smooths the movement of "
"the particles. Equivalent to [member GPUParticles3D.fract_delta]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2217
+#: doc/classes/RenderingServer.xml:2216
msgid ""
"Sets the lifetime of each particle in the system. Equivalent to [member "
"GPUParticles3D.lifetime]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2228
+#: doc/classes/RenderingServer.xml:2227
msgid ""
"If [code]true[/code], particles will emit once and then stop. Equivalent to "
"[member GPUParticles3D.one_shot]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2239
+#: doc/classes/RenderingServer.xml:2238
msgid ""
"Sets the preprocess time for the particles animation. This lets you delay "
"starting an animation until after the particles have begun emitting. "
"Equivalent to [member GPUParticles3D.preprocess]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2250
+#: doc/classes/RenderingServer.xml:2249
msgid ""
"Sets the material for processing the particles. Note: this is not the "
"material used to draw the materials. Equivalent to [member GPUParticles3D."
"process_material]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2261
+#: doc/classes/RenderingServer.xml:2260
msgid ""
"Sets the emission randomness ratio. This randomizes the emission of "
"particles within their phase. Equivalent to [member GPUParticles3D."
"randomness]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2272
+#: doc/classes/RenderingServer.xml:2271
msgid ""
"Sets the speed scale of the particle system. Equivalent to [member "
"GPUParticles3D.speed_scale]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2283
+#: doc/classes/RenderingServer.xml:2282
msgid ""
"If [code]true[/code], particles use local coordinates. If [code]false[/code] "
"they use global coordinates. Equivalent to [member GPUParticles3D."
"local_coords]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2290
+#: doc/classes/RenderingServer.xml:2289
msgid ""
"Creates a reflection probe and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42629,85 +43398,64 @@ msgid ""
"[method instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2303
+#: doc/classes/RenderingServer.xml:2332
msgid ""
"If [code]true[/code], reflections will ignore sky contribution. Equivalent "
-"to [member ReflectionProbe.interior_enable]."
+"to [member ReflectionProbe.interior]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2314
+#: doc/classes/RenderingServer.xml:2343
msgid ""
"Sets the render cull mask for this reflection probe. Only instances with a "
"matching cull mask will be rendered by this probe. Equivalent to [member "
"ReflectionProbe.cull_mask]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2325
+#: doc/classes/RenderingServer.xml:2354
msgid ""
"If [code]true[/code], uses box projection. This can make reflections look "
"more correct in certain situations. Equivalent to [member ReflectionProbe."
"box_projection]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2336
+#: doc/classes/RenderingServer.xml:2365
msgid ""
"If [code]true[/code], computes shadows in the reflection probe. This makes "
"the reflection much slower to compute. Equivalent to [member ReflectionProbe."
"enable_shadows]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2347
+#: doc/classes/RenderingServer.xml:2376
msgid ""
"Sets the size of the area that the reflection probe will capture. Equivalent "
"to [member ReflectionProbe.extents]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2358
+#: doc/classes/RenderingServer.xml:2387
msgid ""
"Sets the intensity of the reflection probe. Intensity modulates the strength "
"of the reflection. Equivalent to [member ReflectionProbe.intensity]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2369
-msgid ""
-"Sets the ambient light color for this reflection probe when set to interior "
-"mode. Equivalent to [member ReflectionProbe.interior_ambient_color]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2380
-msgid ""
-"Sets the energy multiplier for this reflection probes ambient light "
-"contribution when set to interior mode. Equivalent to [member "
-"ReflectionProbe.interior_ambient_energy]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2391
-msgid ""
-"Sets the contribution value for how much the reflection affects the ambient "
-"light for this reflection probe when set to interior mode. Useful so that "
-"ambient light matches the color of the room. Equivalent to [member "
-"ReflectionProbe.interior_ambient_contrib]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2402
+#: doc/classes/RenderingServer.xml:2398
msgid ""
"Sets the max distance away from the probe an object can be before it is "
"culled. Equivalent to [member ReflectionProbe.max_distance]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2413
+#: doc/classes/RenderingServer.xml:2409
msgid ""
"Sets the origin offset to be used when this reflection probe is in box "
"project mode. Equivalent to [member ReflectionProbe.origin_offset]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2424
+#: doc/classes/RenderingServer.xml:2420
msgid ""
"Sets how often the reflection probe updates. Can either be once or every "
"frame. See [enum ReflectionProbeUpdateMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2437
+#: doc/classes/RenderingServer.xml:2433
msgid ""
"Schedules a callback to the corresponding named [code]method[/code] on "
"[code]where[/code] after a frame has been drawn.\n"
@@ -42715,7 +43463,7 @@ msgid ""
"[code]userdata[/code]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2445
+#: doc/classes/RenderingServer.xml:2441
msgid ""
"Creates a scenario and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all "
@@ -42725,24 +43473,24 @@ msgid ""
"The scenario is the 3D world that all the visual instances exist in."
msgstr ""
-#: doc/classes/RenderingServer.xml:2458
+#: doc/classes/RenderingServer.xml:2454
msgid ""
"Sets the [enum ScenarioDebugMode] for this scenario. See [enum "
"ScenarioDebugMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2469
+#: doc/classes/RenderingServer.xml:2465
msgid "Sets the environment that will be used with this scenario."
msgstr ""
-#: doc/classes/RenderingServer.xml:2480
+#: doc/classes/RenderingServer.xml:2476
msgid ""
"Sets the fallback environment to be used by this scenario. The fallback "
"environment is used if no environment is set. Internally, this is used by "
"the editor to provide a default environment."
msgstr ""
-#: doc/classes/RenderingServer.xml:2495
+#: doc/classes/RenderingServer.xml:2491
msgid ""
"Sets a boot image. The color defines the background color. If [code]scale[/"
"code] is [code]true[/code], the image will be scaled to fit the screen size. "
@@ -42751,19 +43499,19 @@ msgid ""
"the image will be scaled with nearest-neighbor interpolation."
msgstr ""
-#: doc/classes/RenderingServer.xml:2504
+#: doc/classes/RenderingServer.xml:2500
msgid ""
"If [code]true[/code], the engine will generate wireframes for use with the "
"wireframe debug mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:2513
+#: doc/classes/RenderingServer.xml:2509
msgid ""
"Sets the default clear color which is used when a specific clear color has "
"not been selected."
msgstr ""
-#: doc/classes/RenderingServer.xml:2520
+#: doc/classes/RenderingServer.xml:2516
msgid ""
"Creates an empty shader and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42772,47 +43520,47 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2530
+#: doc/classes/RenderingServer.xml:2526
msgid "Returns a shader's code."
msgstr ""
-#: doc/classes/RenderingServer.xml:2541
+#: doc/classes/RenderingServer.xml:2537
msgid "Returns a default texture from a shader searched by name."
msgstr ""
-#: doc/classes/RenderingServer.xml:2560
+#: doc/classes/RenderingServer.xml:2556
msgid "Returns the parameters of a shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:2571
+#: doc/classes/RenderingServer.xml:2567
msgid "Sets a shader's code."
msgstr ""
-#: doc/classes/RenderingServer.xml:2584
+#: doc/classes/RenderingServer.xml:2580
msgid "Sets a shader's default texture. Overwrites the texture given by name."
msgstr ""
-#: doc/classes/RenderingServer.xml:2597
+#: doc/classes/RenderingServer.xml:2593
msgid "Allocates the GPU buffers for this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2608
+#: doc/classes/RenderingServer.xml:2604
msgid "Returns the [Transform] set for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2619
+#: doc/classes/RenderingServer.xml:2615
msgid "Returns the [Transform2D] set for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2632
+#: doc/classes/RenderingServer.xml:2628
msgid "Sets the [Transform] for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2645
+#: doc/classes/RenderingServer.xml:2641
msgid "Sets the [Transform2D] for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2652
+#: doc/classes/RenderingServer.xml:2648
msgid ""
"Creates a skeleton and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all "
@@ -42821,11 +43569,11 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2662
+#: doc/classes/RenderingServer.xml:2658
msgid "Returns the number of bones allocated for this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2669
+#: doc/classes/RenderingServer.xml:2665
msgid ""
"Creates an empty sky and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all [code]sky_*[/"
@@ -42834,13 +43582,13 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2681
+#: doc/classes/RenderingServer.xml:2677
msgid ""
"Sets the material that the sky uses to render the background and reflection "
"maps."
msgstr ""
-#: doc/classes/RenderingServer.xml:2688
+#: doc/classes/RenderingServer.xml:2684
msgid ""
"Creates a spot light and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID can be used in most [code]light_*[/"
@@ -42851,15 +43599,15 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2717
+#: doc/classes/RenderingServer.xml:2713
msgid "Sets a viewport's camera."
msgstr ""
-#: doc/classes/RenderingServer.xml:2728
+#: doc/classes/RenderingServer.xml:2724
msgid "Sets a viewport's canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:2741
+#: doc/classes/RenderingServer.xml:2737
msgid ""
"Copies the viewport to a region of the screen specified by [code]rect[/"
"code]. If [method viewport_set_render_direct_to_screen] is [code]true[/"
@@ -42881,7 +43629,7 @@ msgid ""
"viewport_set_render_direct_to_screen]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2755
+#: doc/classes/RenderingServer.xml:2751
msgid ""
"Creates an empty viewport and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42890,72 +43638,72 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2767
+#: doc/classes/RenderingServer.xml:2763
msgid ""
"Returns a viewport's render information. For options, see the [enum "
"ViewportRenderInfo] constants."
msgstr ""
-#: doc/classes/RenderingServer.xml:2776
+#: doc/classes/RenderingServer.xml:2772
msgid "Returns the viewport's last rendered frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:2787
+#: doc/classes/RenderingServer.xml:2783
msgid "Detaches a viewport from a canvas and vice versa."
msgstr ""
-#: doc/classes/RenderingServer.xml:2798
+#: doc/classes/RenderingServer.xml:2794
msgid "If [code]true[/code], sets the viewport active, else sets it inactive."
msgstr ""
-#: doc/classes/RenderingServer.xml:2813
+#: doc/classes/RenderingServer.xml:2809
msgid ""
"Sets the stacking order for a viewport's canvas.\n"
"[code]layer[/code] is the actual canvas layer, while [code]sublayer[/code] "
"specifies the stacking order of the canvas among those in the same layer."
msgstr ""
-#: doc/classes/RenderingServer.xml:2827
+#: doc/classes/RenderingServer.xml:2823
msgid "Sets the transformation of a viewport's canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:2838
+#: doc/classes/RenderingServer.xml:2834
msgid ""
"Sets the clear mode of a viewport. See [enum ViewportClearMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2849
+#: doc/classes/RenderingServer.xml:2845
msgid ""
"Sets the debug draw mode of a viewport. See [enum ViewportDebugDraw] for "
"options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2860
+#: doc/classes/RenderingServer.xml:2856
msgid ""
"If [code]true[/code], rendering of a viewport's environment is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:2871
+#: doc/classes/RenderingServer.xml:2867
msgid "Sets the viewport's global transformation matrix."
msgstr ""
-#: doc/classes/RenderingServer.xml:2882
+#: doc/classes/RenderingServer.xml:2878
msgid "If [code]true[/code], the viewport's canvas is not rendered."
msgstr ""
-#: doc/classes/RenderingServer.xml:2893
+#: doc/classes/RenderingServer.xml:2889
msgid "Currently unimplemented in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:2904
+#: doc/classes/RenderingServer.xml:2900
msgid "Sets the anti-aliasing mode. See [enum ViewportMSAA] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2915
+#: doc/classes/RenderingServer.xml:2911
msgid "Sets the viewport's parent to another viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:2926
+#: doc/classes/RenderingServer.xml:2922
msgid ""
"If [code]true[/code], render the contents of the viewport directly to "
"screen. This allows a low-level optimization where you can skip drawing a "
@@ -42971,455 +43719,455 @@ msgid ""
"significantly larger than the window size."
msgstr ""
-#: doc/classes/RenderingServer.xml:2937
+#: doc/classes/RenderingServer.xml:2933
msgid ""
"Sets a viewport's scenario.\n"
"The scenario contains information about the [enum ScenarioDebugMode], "
"environment information, reflection atlas etc."
msgstr ""
-#: doc/classes/RenderingServer.xml:2951
+#: doc/classes/RenderingServer.xml:2947
msgid "Sets the shadow atlas quadrant's subdivision."
msgstr ""
-#: doc/classes/RenderingServer.xml:2962
+#: doc/classes/RenderingServer.xml:2958
msgid ""
"Sets the size of the shadow atlas's images (used for omni and spot lights). "
"The value will be rounded up to the nearest power of 2."
msgstr ""
-#: doc/classes/RenderingServer.xml:2975
+#: doc/classes/RenderingServer.xml:2971
msgid "Sets the viewport's width and height."
msgstr ""
-#: doc/classes/RenderingServer.xml:2986
+#: doc/classes/RenderingServer.xml:2982
msgid ""
"If [code]true[/code], the viewport renders its background as transparent."
msgstr ""
-#: doc/classes/RenderingServer.xml:2997
+#: doc/classes/RenderingServer.xml:2993
msgid ""
"Sets when the viewport should be updated. See [enum ViewportUpdateMode] "
"constants for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:3008
+#: doc/classes/RenderingServer.xml:3004
msgid ""
"If [code]true[/code], the viewport uses augmented or virtual reality "
"technologies. See [XRInterface]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3014
+#: doc/classes/RenderingServer.xml:3010
msgid ""
"If [code]false[/code], disables rendering completely, but the engine logic "
"is still being processed. You can call [method force_draw] to draw a frame "
"even with rendering disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3020
+#: doc/classes/RenderingServer.xml:3016
msgid ""
"Emitted at the end of the frame, after the RenderingServer has finished "
"updating all the Viewports."
msgstr ""
-#: doc/classes/RenderingServer.xml:3025
+#: doc/classes/RenderingServer.xml:3021
msgid ""
"Emitted at the beginning of the frame, before the RenderingServer updates "
"all the Viewports."
msgstr ""
-#: doc/classes/RenderingServer.xml:3031
+#: doc/classes/RenderingServer.xml:3027
msgid "Marks an error that shows that the index array is empty."
msgstr ""
-#: doc/classes/RenderingServer.xml:3034
+#: doc/classes/RenderingServer.xml:3030
msgid "Number of weights/bones per vertex."
msgstr ""
-#: doc/classes/RenderingServer.xml:3037
+#: doc/classes/RenderingServer.xml:3033
msgid "The minimum Z-layer for canvas items."
msgstr ""
-#: doc/classes/RenderingServer.xml:3040
+#: doc/classes/RenderingServer.xml:3036
msgid "The maximum Z-layer for canvas items."
msgstr ""
-#: doc/classes/RenderingServer.xml:3043
+#: doc/classes/RenderingServer.xml:3039
msgid ""
"Max number of glow levels that can be used with glow post-process effect."
msgstr ""
-#: doc/classes/RenderingServer.xml:3046
+#: doc/classes/RenderingServer.xml:3042
msgid "Unused enum in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:3067
+#: doc/classes/RenderingServer.xml:3063
msgid "Shader is a 3D shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3070
+#: doc/classes/RenderingServer.xml:3066
msgid "Shader is a 2D shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3073
+#: doc/classes/RenderingServer.xml:3069
msgid "Shader is a particle shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3076
+#: doc/classes/RenderingServer.xml:3072
msgid "Shader is a sky shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3079
+#: doc/classes/RenderingServer.xml:3075
msgid "Represents the size of the [enum ShaderMode] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3082
+#: doc/classes/RenderingServer.xml:3078
msgid "The minimum renderpriority of all materials."
msgstr ""
-#: doc/classes/RenderingServer.xml:3085
+#: doc/classes/RenderingServer.xml:3081
msgid "The maximum renderpriority of all materials."
msgstr ""
-#: doc/classes/RenderingServer.xml:3088
+#: doc/classes/RenderingServer.xml:3084
msgid "Array is a vertex array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3091
+#: doc/classes/RenderingServer.xml:3087
msgid "Array is a normal array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3094
+#: doc/classes/RenderingServer.xml:3090
msgid "Array is a tangent array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3097
+#: doc/classes/RenderingServer.xml:3093
msgid "Array is a color array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3100
+#: doc/classes/RenderingServer.xml:3096
msgid "Array is an UV coordinates array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3103
+#: doc/classes/RenderingServer.xml:3099
msgid "Array is an UV coordinates array for the second UV coordinates."
msgstr ""
-#: doc/classes/RenderingServer.xml:3106
+#: doc/classes/RenderingServer.xml:3102
msgid "Array contains bone information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3109
+#: doc/classes/RenderingServer.xml:3105
msgid "Array is weight information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3112
+#: doc/classes/RenderingServer.xml:3108
msgid "Array is index array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3118
+#: doc/classes/RenderingServer.xml:3114
msgid "Flag used to mark a vertex array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3121
+#: doc/classes/RenderingServer.xml:3117
msgid "Flag used to mark a normal array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3124
+#: doc/classes/RenderingServer.xml:3120
msgid "Flag used to mark a tangent array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3127
+#: doc/classes/RenderingServer.xml:3123
msgid "Flag used to mark a color array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3130
+#: doc/classes/RenderingServer.xml:3126
msgid "Flag used to mark an UV coordinates array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3133
+#: doc/classes/RenderingServer.xml:3129
msgid ""
"Flag used to mark an UV coordinates array for the second UV coordinates."
msgstr ""
-#: doc/classes/RenderingServer.xml:3136
+#: doc/classes/RenderingServer.xml:3132
msgid "Flag used to mark a bone information array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3139
+#: doc/classes/RenderingServer.xml:3135
msgid "Flag used to mark a weights array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3142
+#: doc/classes/RenderingServer.xml:3138
msgid "Flag used to mark an index array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3171
+#: doc/classes/RenderingServer.xml:3167
msgid "Primitive to draw consists of points."
msgstr ""
-#: doc/classes/RenderingServer.xml:3174
+#: doc/classes/RenderingServer.xml:3170
msgid "Primitive to draw consists of lines."
msgstr ""
-#: doc/classes/RenderingServer.xml:3177
+#: doc/classes/RenderingServer.xml:3173
msgid "Primitive to draw consists of a line strip from start to end."
msgstr ""
-#: doc/classes/RenderingServer.xml:3180
+#: doc/classes/RenderingServer.xml:3176
msgid "Primitive to draw consists of triangles."
msgstr ""
-#: doc/classes/RenderingServer.xml:3183
+#: doc/classes/RenderingServer.xml:3179
msgid ""
"Primitive to draw consists of a triangle strip (the last 3 vertices are "
"always combined to make a triangle)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3186
+#: doc/classes/RenderingServer.xml:3182
msgid "Represents the size of the [enum PrimitiveType] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3195
+#: doc/classes/RenderingServer.xml:3191
msgid "Use [Transform2D] to store MultiMesh transform."
msgstr ""
-#: doc/classes/RenderingServer.xml:3198
+#: doc/classes/RenderingServer.xml:3194
msgid "Use [Transform] to store MultiMesh transform."
msgstr ""
-#: doc/classes/RenderingServer.xml:3201
+#: doc/classes/RenderingServer.xml:3197
msgid "Is a directional (sun) light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3204
+#: doc/classes/RenderingServer.xml:3200
msgid "Is an omni light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3207
+#: doc/classes/RenderingServer.xml:3203
msgid "Is a spot light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3210
+#: doc/classes/RenderingServer.xml:3206
msgid "The light's energy."
msgstr ""
-#: doc/classes/RenderingServer.xml:3215
+#: doc/classes/RenderingServer.xml:3211
msgid "The light's influence on specularity."
msgstr ""
-#: doc/classes/RenderingServer.xml:3218
+#: doc/classes/RenderingServer.xml:3214
msgid "The light's range."
msgstr ""
-#: doc/classes/RenderingServer.xml:3221
+#: doc/classes/RenderingServer.xml:3217
msgid ""
"The size of the light when using spot light or omni light. The angular size "
"of the light when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3224
+#: doc/classes/RenderingServer.xml:3220
msgid "The light's attenuation."
msgstr ""
-#: doc/classes/RenderingServer.xml:3227
+#: doc/classes/RenderingServer.xml:3223
msgid "The spotlight's angle."
msgstr ""
-#: doc/classes/RenderingServer.xml:3230
+#: doc/classes/RenderingServer.xml:3226
msgid "The spotlight's attenuation."
msgstr ""
-#: doc/classes/RenderingServer.xml:3233
+#: doc/classes/RenderingServer.xml:3229
msgid "Max distance that shadows will be rendered."
msgstr ""
-#: doc/classes/RenderingServer.xml:3236
+#: doc/classes/RenderingServer.xml:3232
msgid "Proportion of shadow atlas occupied by the first split."
msgstr ""
-#: doc/classes/RenderingServer.xml:3239
+#: doc/classes/RenderingServer.xml:3235
msgid "Proportion of shadow atlas occupied by the second split."
msgstr ""
-#: doc/classes/RenderingServer.xml:3242
+#: doc/classes/RenderingServer.xml:3238
msgid ""
"Proportion of shadow atlas occupied by the third split. The fourth split "
"occupies the rest."
msgstr ""
-#: doc/classes/RenderingServer.xml:3245
+#: doc/classes/RenderingServer.xml:3241
msgid ""
"Proportion of shadow max distance where the shadow will start to fade out."
msgstr ""
-#: doc/classes/RenderingServer.xml:3248
+#: doc/classes/RenderingServer.xml:3244
msgid ""
"Normal bias used to offset shadow lookup by object normal. Can be used to "
"fix self-shadowing artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3251
+#: doc/classes/RenderingServer.xml:3247
msgid "Bias the shadow lookup to fix self-shadowing artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3257
+#: doc/classes/RenderingServer.xml:3253
msgid ""
"Blurs the edges of the shadow. Can be used to hide pixel artifacts in low "
"resolution shadow maps. A high value can make shadows appear grainy and can "
"cause other unwanted artifacts. Try to keep as near default as possible."
msgstr ""
-#: doc/classes/RenderingServer.xml:3262
+#: doc/classes/RenderingServer.xml:3258
msgid "Represents the size of the [enum LightParam] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3265
+#: doc/classes/RenderingServer.xml:3267
msgid "Use a dual paraboloid shadow map for omni lights."
msgstr ""
-#: doc/classes/RenderingServer.xml:3268
+#: doc/classes/RenderingServer.xml:3270
msgid ""
"Use a cubemap shadow map for omni lights. Slower but better quality than "
"dual paraboloid."
msgstr ""
-#: doc/classes/RenderingServer.xml:3271
+#: doc/classes/RenderingServer.xml:3273
msgid "Use orthogonal shadow projection for directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3274
+#: doc/classes/RenderingServer.xml:3276
msgid "Use 2 splits for shadow projection when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3277
+#: doc/classes/RenderingServer.xml:3279
msgid "Use 4 splits for shadow projection when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3280
+#: doc/classes/RenderingServer.xml:3282
msgid ""
"Keeps shadows stable as camera moves but has lower effective resolution."
msgstr ""
-#: doc/classes/RenderingServer.xml:3283
+#: doc/classes/RenderingServer.xml:3285
msgid ""
"Optimize use of shadow maps, increasing the effective resolution. But may "
"result in shadows moving or flickering slightly."
msgstr ""
-#: doc/classes/RenderingServer.xml:3286
+#: doc/classes/RenderingServer.xml:3288
msgid "Reflection probe will update reflections once and then stop."
msgstr ""
-#: doc/classes/RenderingServer.xml:3289
+#: doc/classes/RenderingServer.xml:3291
msgid ""
"Reflection probe will update each frame. This mode is necessary to capture "
"moving objects."
msgstr ""
-#: doc/classes/RenderingServer.xml:3302
+#: doc/classes/RenderingServer.xml:3310
msgid "Draw particles in the order that they appear in the particles array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3305
+#: doc/classes/RenderingServer.xml:3313
msgid "Sort particles based on their lifetime."
msgstr ""
-#: doc/classes/RenderingServer.xml:3308
+#: doc/classes/RenderingServer.xml:3316
msgid "Sort particles based on their distance to the camera."
msgstr ""
-#: doc/classes/RenderingServer.xml:3311
+#: doc/classes/RenderingServer.xml:3319
msgid "Do not update the viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:3314
+#: doc/classes/RenderingServer.xml:3322
msgid "Update the viewport once then set to disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3317
+#: doc/classes/RenderingServer.xml:3325
msgid "Update the viewport whenever it is visible."
msgstr ""
-#: doc/classes/RenderingServer.xml:3322
+#: doc/classes/RenderingServer.xml:3330
msgid "Always update the viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:3325
+#: doc/classes/RenderingServer.xml:3333
msgid "The viewport is always cleared before drawing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3328
+#: doc/classes/RenderingServer.xml:3336
msgid "The viewport is never cleared before drawing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3331
+#: doc/classes/RenderingServer.xml:3339
msgid ""
"The viewport is cleared once, then the clear mode is set to [constant "
"VIEWPORT_CLEAR_NEVER]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3334
+#: doc/classes/RenderingServer.xml:3342
msgid "Multisample antialiasing is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3337
+#: doc/classes/RenderingServer.xml:3345
msgid "Multisample antialiasing uses 2 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3340
+#: doc/classes/RenderingServer.xml:3348
msgid "Multisample antialiasing uses 4 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3343
+#: doc/classes/RenderingServer.xml:3351
msgid "Multisample antialiasing uses 8 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3346
+#: doc/classes/RenderingServer.xml:3354
msgid "Multisample antialiasing uses 16 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3357
+#: doc/classes/RenderingServer.xml:3365
msgid "Number of objects drawn in a single frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3360
+#: doc/classes/RenderingServer.xml:3368
msgid "Number of vertices drawn in a single frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3363
+#: doc/classes/RenderingServer.xml:3371
msgid "Number of material changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3366
+#: doc/classes/RenderingServer.xml:3374
msgid "Number of shader changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3369
+#: doc/classes/RenderingServer.xml:3377
msgid "Number of surface changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3372
+#: doc/classes/RenderingServer.xml:3380
msgid "Number of draw calls during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3375
+#: doc/classes/RenderingServer.xml:3383
msgid "Represents the size of the [enum ViewportRenderInfo] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3378
+#: doc/classes/RenderingServer.xml:3386
msgid "Debug draw is disabled. Default setting."
msgstr ""
-#: doc/classes/RenderingServer.xml:3381 doc/classes/Viewport.xml:348
+#: doc/classes/RenderingServer.xml:3389 doc/classes/Viewport.xml:348
msgid "Objects are displayed without light information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3384
+#: doc/classes/RenderingServer.xml:3392
msgid "Objects are displayed with only light information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3387 doc/classes/Viewport.xml:353
+#: doc/classes/RenderingServer.xml:3395 doc/classes/Viewport.xml:353
msgid ""
"Objects are displayed semi-transparent with additive blending so you can see "
"where they are drawing over top of one another. A higher overdraw means you "
@@ -43427,41 +44175,41 @@ msgid ""
"others."
msgstr ""
-#: doc/classes/RenderingServer.xml:3390
+#: doc/classes/RenderingServer.xml:3398
msgid "Debug draw draws objects in wireframe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3393
+#: doc/classes/RenderingServer.xml:3401
msgid ""
"Normal buffer is drawn instead of regular scene so you can see the per-pixel "
"normals that will be used by post-processing effects."
msgstr ""
-#: doc/classes/RenderingServer.xml:3396 doc/classes/Viewport.xml:361
+#: doc/classes/RenderingServer.xml:3404 doc/classes/Viewport.xml:361
msgid "Objects are displayed with only the albedo value from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3399 doc/classes/Viewport.xml:364
+#: doc/classes/RenderingServer.xml:3407 doc/classes/Viewport.xml:364
msgid "Objects are displayed with only the lighting value from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3402 doc/classes/Viewport.xml:367
+#: doc/classes/RenderingServer.xml:3410 doc/classes/Viewport.xml:367
msgid "Objects are displayed with only the emission color from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3405 doc/classes/Viewport.xml:370
+#: doc/classes/RenderingServer.xml:3413 doc/classes/Viewport.xml:370
msgid ""
"Draws the shadow atlas that stores shadows from [OmniLight3D]s and "
"[SpotLight3D]s in the upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3408 doc/classes/Viewport.xml:373
+#: doc/classes/RenderingServer.xml:3416 doc/classes/Viewport.xml:373
msgid ""
"Draws the shadow atlas that stores shadows from [DirectionalLight3D]s in the "
"upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3413
+#: doc/classes/RenderingServer.xml:3421
msgid ""
"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 "
@@ -43469,21 +44217,14 @@ msgid ""
"your [WorldEnvironment]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3416 doc/classes/Viewport.xml:381
-msgid ""
-"Draws the roughness limiter post process over the Viewport so you can see "
-"where it has an effect. It must be enabled in [member ProjectSettings."
-"rendering/quality/screen_filters/screen_space_roughness_limiter] to work."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:3419
+#: doc/classes/RenderingServer.xml:3424
msgid ""
"Colors each PSSM split for the [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."
msgstr ""
-#: doc/classes/RenderingServer.xml:3424
+#: doc/classes/RenderingServer.xml:3435
msgid ""
"Uses high quality importance sampling to process the radiance map. In "
"general, this results in much higher quality than [constant Sky."
@@ -43494,7 +44235,7 @@ msgid ""
"ggx_samples]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3427
+#: doc/classes/RenderingServer.xml:3438
msgid ""
"Uses the fast filtering algorithm to process the radiance map. In general "
"this results in lower quality, but substantially faster run times.\n"
@@ -43502,347 +44243,347 @@ msgid ""
"[member Sky.radiance_size] must be set to [constant Sky.RADIANCE_SIZE_256]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3431
+#: doc/classes/RenderingServer.xml:3442
msgid "Use the clear color as background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3434
+#: doc/classes/RenderingServer.xml:3445
msgid "Use a specified color as the background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3437
+#: doc/classes/RenderingServer.xml:3448
msgid "Use a sky resource for the background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3440
+#: doc/classes/RenderingServer.xml:3451
msgid ""
"Use a specified canvas layer as the background. This can be useful for "
"instantiating a 2D scene in a 3D world."
msgstr ""
-#: doc/classes/RenderingServer.xml:3443
+#: doc/classes/RenderingServer.xml:3454
msgid ""
"Do not clear the background, use whatever was rendered last frame as the "
"background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3449
+#: doc/classes/RenderingServer.xml:3460
msgid "Represents the size of the [enum EnvironmentBG] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3488
+#: doc/classes/RenderingServer.xml:3499
msgid "Output color as they came in."
msgstr ""
-#: doc/classes/RenderingServer.xml:3491
+#: doc/classes/RenderingServer.xml:3502
msgid "Use the Reinhard tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3494
+#: doc/classes/RenderingServer.xml:3505
msgid "Use the filmic tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3497
+#: doc/classes/RenderingServer.xml:3508
msgid "Use the ACES tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3508
+#: doc/classes/RenderingServer.xml:3519
msgid "Disables the blur set for SSAO. Will make SSAO look noisier."
msgstr ""
-#: doc/classes/RenderingServer.xml:3511
+#: doc/classes/RenderingServer.xml:3522
msgid "Perform a 1x1 blur on the SSAO output."
msgstr ""
-#: doc/classes/RenderingServer.xml:3514
+#: doc/classes/RenderingServer.xml:3525
msgid "Performs a 2x2 blur on the SSAO output."
msgstr ""
-#: doc/classes/RenderingServer.xml:3517
+#: doc/classes/RenderingServer.xml:3528
msgid "Performs a 3x3 blur on the SSAO output. Use this for smoothest SSAO."
msgstr ""
-#: doc/classes/RenderingServer.xml:3520
+#: doc/classes/RenderingServer.xml:3531
msgid "Lowest quality of screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3523
+#: doc/classes/RenderingServer.xml:3534
msgid "Medium quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3526
+#: doc/classes/RenderingServer.xml:3537
msgid "High quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3529
+#: doc/classes/RenderingServer.xml:3540
msgid "Highest quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3540
+#: doc/classes/RenderingServer.xml:3551
msgid ""
"Lowest quality DOF blur. This is the fastest setting, but you may be able to "
"see filtering artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3543
+#: doc/classes/RenderingServer.xml:3554
msgid "Low quality DOF blur."
msgstr ""
-#: doc/classes/RenderingServer.xml:3546
+#: doc/classes/RenderingServer.xml:3557
msgid "Medium quality DOF blur."
msgstr ""
-#: doc/classes/RenderingServer.xml:3549
+#: doc/classes/RenderingServer.xml:3560
msgid ""
"Highest quality DOF blur. Results in the smoothest looking blur by taking "
"the most samples, but is also significantly slower."
msgstr ""
-#: doc/classes/RenderingServer.xml:3552
+#: doc/classes/RenderingServer.xml:3563
msgid ""
"Calculate the DOF blur using a box filter. The fastest option, but results "
"in obvious lines in blur pattern."
msgstr ""
-#: doc/classes/RenderingServer.xml:3555
+#: doc/classes/RenderingServer.xml:3566
msgid "Calculates DOF blur using a hexagon shaped filter."
msgstr ""
-#: doc/classes/RenderingServer.xml:3558
+#: doc/classes/RenderingServer.xml:3569
msgid ""
"Calculates DOF blur using a circle shaped filter. Best quality and most "
"realistic, but slowest. Use only for areas where a lot of performance can be "
"dedicated to post-processing (e.g. cutscenes)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3573
+#: doc/classes/RenderingServer.xml:3584
msgid "Do not use a debug mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:3576
+#: doc/classes/RenderingServer.xml:3587
msgid "Draw all objects as wireframe models."
msgstr ""
-#: doc/classes/RenderingServer.xml:3579
+#: doc/classes/RenderingServer.xml:3590
msgid ""
"Draw all objects in a way that displays how much overdraw is occurring. "
"Overdraw occurs when a section of pixels is drawn and shaded and then "
"another object covers it up. To optimize a scene, you should reduce overdraw."
msgstr ""
-#: doc/classes/RenderingServer.xml:3582
+#: doc/classes/RenderingServer.xml:3593
msgid ""
"Draw all objects without shading. Equivalent to setting all objects shaders "
"to [code]unshaded[/code]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3585
+#: doc/classes/RenderingServer.xml:3596
msgid "The instance does not have a type."
msgstr ""
-#: doc/classes/RenderingServer.xml:3588
+#: doc/classes/RenderingServer.xml:3599
msgid "The instance is a mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:3591
+#: doc/classes/RenderingServer.xml:3602
msgid "The instance is a multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:3594
+#: doc/classes/RenderingServer.xml:3605
msgid "The instance is an immediate geometry."
msgstr ""
-#: doc/classes/RenderingServer.xml:3597
+#: doc/classes/RenderingServer.xml:3608
msgid "The instance is a particle emitter."
msgstr ""
-#: doc/classes/RenderingServer.xml:3600
+#: doc/classes/RenderingServer.xml:3611
msgid "The instance is a light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3603
+#: doc/classes/RenderingServer.xml:3614
msgid "The instance is a reflection probe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3606
+#: doc/classes/RenderingServer.xml:3617
msgid "The instance is a decal."
msgstr ""
-#: doc/classes/RenderingServer.xml:3609
+#: doc/classes/RenderingServer.xml:3620
msgid "The instance is a GI probe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3612
+#: doc/classes/RenderingServer.xml:3623
msgid "The instance is a lightmap."
msgstr ""
-#: doc/classes/RenderingServer.xml:3615
+#: doc/classes/RenderingServer.xml:3626
msgid "Represents the size of the [enum InstanceType] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3618
+#: doc/classes/RenderingServer.xml:3629
msgid ""
"A combination of the flags of geometry instances (mesh, multimesh, immediate "
"and particles)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3621
+#: doc/classes/RenderingServer.xml:3632
msgid "Allows the instance to be used in baked lighting."
msgstr ""
-#: doc/classes/RenderingServer.xml:3624
+#: doc/classes/RenderingServer.xml:3635
msgid "Allows the instance to be used with dynamic global illumination."
msgstr ""
-#: doc/classes/RenderingServer.xml:3627
+#: doc/classes/RenderingServer.xml:3638
msgid "When set, manually requests to draw geometry on next frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3630
+#: doc/classes/RenderingServer.xml:3641
msgid "Represents the size of the [enum InstanceFlags] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3633
+#: doc/classes/RenderingServer.xml:3644
msgid "Disable shadows from this instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:3636
+#: doc/classes/RenderingServer.xml:3647
msgid "Cast shadows from this instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:3639
+#: doc/classes/RenderingServer.xml:3650
msgid ""
"Disable backface culling when rendering the shadow of the object. This is "
"slightly slower but may result in more correct shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3642
+#: doc/classes/RenderingServer.xml:3653
msgid ""
"Only render the shadows from the object. The object itself will not be drawn."
msgstr ""
-#: doc/classes/RenderingServer.xml:3645
+#: doc/classes/RenderingServer.xml:3656
msgid "The nine patch gets stretched where needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3648
+#: doc/classes/RenderingServer.xml:3659
msgid "The nine patch gets filled with tiles where needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3651
+#: doc/classes/RenderingServer.xml:3662
msgid ""
"The nine patch gets filled with tiles where needed and stretches them a bit "
"if needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3654
+#: doc/classes/RenderingServer.xml:3665
msgid "Uses the default filter mode for this [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3666 doc/classes/Viewport.xml:399
+#: doc/classes/RenderingServer.xml:3677 doc/classes/Viewport.xml:402
msgid ""
"The texture filter blends between the nearest 4 pixels and between the "
"nearest 2 mipmaps."
msgstr ""
-#: doc/classes/RenderingServer.xml:3675
+#: doc/classes/RenderingServer.xml:3686
msgid "Max value for [enum CanvasItemTextureFilter] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3678
+#: doc/classes/RenderingServer.xml:3689
msgid "Uses the default repeat mode for this [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3681 doc/classes/Viewport.xml:405
+#: doc/classes/RenderingServer.xml:3692 doc/classes/Viewport.xml:408
msgid ""
"Disables textures repeating. Instead, when reading UVs outside the 0-1 "
"range, the value will be clamped to the edge of the texture, resulting in a "
"stretched out look at the borders of the texture."
msgstr ""
-#: doc/classes/RenderingServer.xml:3687 doc/classes/Viewport.xml:411
+#: doc/classes/RenderingServer.xml:3698 doc/classes/Viewport.xml:414
msgid ""
"Flip the texture when repeating so that the edge lines up instead of "
"abruptly changing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3690
+#: doc/classes/RenderingServer.xml:3701
msgid "Max value for [enum CanvasItemTextureRepeat] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3693
+#: doc/classes/RenderingServer.xml:3704
msgid "Adds light color additive to the canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:3696
+#: doc/classes/RenderingServer.xml:3707
msgid "Adds light color subtractive to the canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:3699
+#: doc/classes/RenderingServer.xml:3710
msgid "The light adds color depending on transparency."
msgstr ""
-#: doc/classes/RenderingServer.xml:3702
+#: doc/classes/RenderingServer.xml:3713
msgid "The light adds color depending on mask."
msgstr ""
-#: doc/classes/RenderingServer.xml:3705
+#: doc/classes/RenderingServer.xml:3716
msgid "Do not apply a filter to canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3708
+#: doc/classes/RenderingServer.xml:3719
msgid "Use PCF5 filtering to filter canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3711
+#: doc/classes/RenderingServer.xml:3722
msgid "Use PCF13 filtering to filter canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3714
+#: doc/classes/RenderingServer.xml:3725
msgid "Max value of the [enum CanvasLightShadowFilter] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3717
+#: doc/classes/RenderingServer.xml:3728
msgid "Culling of the canvas occluder is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3720
+#: doc/classes/RenderingServer.xml:3731
msgid "Culling of the canvas occluder is clockwise."
msgstr ""
-#: doc/classes/RenderingServer.xml:3723
+#: doc/classes/RenderingServer.xml:3734
msgid "Culling of the canvas occluder is counterclockwise."
msgstr ""
-#: doc/classes/RenderingServer.xml:3784
+#: doc/classes/RenderingServer.xml:3795
msgid "The amount of objects in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3787
+#: doc/classes/RenderingServer.xml:3798
msgid "The amount of vertices in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3790
+#: doc/classes/RenderingServer.xml:3801
msgid "The amount of modified materials in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3793
+#: doc/classes/RenderingServer.xml:3804
msgid "The amount of shader rebinds in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3796
+#: doc/classes/RenderingServer.xml:3807
msgid "The amount of surface changes in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3799
+#: doc/classes/RenderingServer.xml:3810
msgid "The amount of draw calls in frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3814
+#: doc/classes/RenderingServer.xml:3825
msgid "Hardware supports shaders. This enum is currently unused in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:3817
+#: doc/classes/RenderingServer.xml:3828
msgid ""
"Hardware supports multithreading. This enum is currently unused in Godot 3.x."
msgstr ""
@@ -43854,13 +44595,13 @@ msgstr ""
#: doc/classes/Resource.xml:7
msgid ""
"Resource is the base class for all Godot-specific resource types, serving "
-"primarily as data containers. They are reference counted and freed when no "
-"longer in use. They are also cached once loaded from disk, so that any "
-"further attempts to load a resource from a given path will return the same "
-"reference (all this in contrast to a [Node], which is not reference counted "
-"and can be instanced from disk as many times as desired). Resources can be "
-"saved externally on disk or bundled into another object, such as a [Node] or "
-"another resource."
+"primarily as data containers. Unlike [Object]s, they are reference-counted "
+"and freed when no longer in use. They are also cached once loaded from disk, "
+"so that any further attempts to load a resource from a given path will "
+"return the same reference (all this in contrast to a [Node], which is not "
+"reference-counted and can be instanced from disk as many times as desired). "
+"Resources can be saved externally on disk or bundled into another object, "
+"such as a [Node] or another resource."
msgstr ""
#: doc/classes/Resource.xml:10
@@ -43869,34 +44610,38 @@ msgid ""
"resources.html"
msgstr ""
-#: doc/classes/Resource.xml:17
+#: doc/classes/Resource.xml:18
msgid ""
"Virtual function which can be overridden to customize the behavior value of "
"[method setup_local_to_scene]."
msgstr ""
-#: doc/classes/Resource.xml:26
+#: doc/classes/Resource.xml:27
msgid ""
"Duplicates the resource, returning a new resource. By default, sub-resources "
-"are shared between resource copies for efficiency, this can be changed by "
-"passing [code]true[/code] to the [code]subresources[/code] argument."
+"are shared between resource copies for efficiency. This can be changed by "
+"passing [code]true[/code] to the [code]subresources[/code] argument which "
+"will copy the subresources.\n"
+"[b]Note:[/b] If [code]subresources[/code] is [code]true[/code], this method "
+"will only perform a shallow copy. Nested resources within subresources will "
+"not be duplicated and will still be shared."
msgstr ""
-#: doc/classes/Resource.xml:33
+#: doc/classes/Resource.xml:35
msgid ""
"If [member resource_local_to_scene] is enabled and the resource was loaded "
"from a [PackedScene] instantiation, returns the local scene where this "
"resource's unique copy is in use. Otherwise, returns [code]null[/code]."
msgstr ""
-#: doc/classes/Resource.xml:40
+#: doc/classes/Resource.xml:42
msgid ""
"Returns the RID of the resource (or an empty RID). Many resources (such as "
"[Texture2D], [Mesh], etc) are high-level abstractions of resources stored in "
"a server, so this function will return the original RID."
msgstr ""
-#: doc/classes/Resource.xml:47
+#: doc/classes/Resource.xml:49
msgid ""
"This method is called when a resource with [member resource_local_to_scene] "
"enabled is loaded from a [PackedScene] instantiation. Its behavior can be "
@@ -43906,7 +44651,7 @@ msgid ""
"local viewport."
msgstr ""
-#: doc/classes/Resource.xml:57
+#: doc/classes/Resource.xml:59
msgid ""
"Sets the path of the resource, potentially overriding an existing cache "
"entry for this path. This differs from setting [member resource_path], as "
@@ -43914,25 +44659,25 @@ msgid ""
"given path."
msgstr ""
-#: doc/classes/Resource.xml:63
+#: doc/classes/Resource.xml:65
msgid ""
"If [code]true[/code], the resource will be made unique in each instance of "
"its local scene. It can thus be modified in a scene instance without "
"impacting other instances of that same scene."
msgstr ""
-#: doc/classes/Resource.xml:66
+#: doc/classes/Resource.xml:68
msgid "The name of the resource. This is an optional identifier."
msgstr ""
-#: doc/classes/Resource.xml:69
+#: doc/classes/Resource.xml:71
msgid ""
"The path to the resource. In case it has its own file, it will return its "
"filepath. If it's tied to the scene, it will return the scene's path, "
"followed by the resource's index."
msgstr ""
-#: doc/classes/Resource.xml:75
+#: doc/classes/Resource.xml:77
msgid "Emitted whenever the resource changes."
msgstr ""
@@ -44751,11 +45496,11 @@ msgid ""
"global coordinate system, but is centered at the object's origin."
msgstr ""
-#: doc/classes/RigidBody2D.xml:87
+#: doc/classes/RigidBody2D.xml:87 doc/classes/RigidBody3D.xml:99
msgid ""
-"Returns a list of the bodies colliding with this one. Use [member "
-"contacts_reported] to set the maximum number reported. You must also set "
-"[member contact_monitor] to [code]true[/code].\n"
+"Returns a list of the bodies colliding with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
"For performance, list of collisions is updated once per frame and before the "
"physics step. Consider using signals instead."
@@ -44792,7 +45537,7 @@ msgstr ""
msgid "The body's total applied torque."
msgstr ""
-#: doc/classes/RigidBody2D.xml:130 doc/classes/RigidBody3D.xml:150
+#: doc/classes/RigidBody2D.xml:130 doc/classes/RigidBody3D.xml:157
msgid ""
"If [code]true[/code], the body can enter sleep mode when there is no "
"movement. See [member sleeping]."
@@ -44804,11 +45549,17 @@ msgid ""
"another RigidBody2D. See also [member contacts_reported]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:136
-msgid "The maximum number of contacts to report."
+#: doc/classes/RigidBody2D.xml:136 doc/classes/RigidBody3D.xml:163
+msgid ""
+"The maximum number of contacts that will be recorded. Requires [member "
+"contact_monitor] to be set to [code]true[/code].\n"
+"[b]Note:[/b] The number of contacts is different from the number of "
+"collisions. Collisions between parallel edges will result in two contacts "
+"(one at each end), and collisions between parallel faces will result in four "
+"contacts (one at each corner)."
msgstr ""
-#: doc/classes/RigidBody2D.xml:139
+#: doc/classes/RigidBody2D.xml:140
msgid ""
"Continuous collision detection mode.\n"
"Continuous collision detection tries to predict where a moving body will "
@@ -44818,21 +45569,21 @@ msgid ""
"methods are available. See [enum CCDMode] for details."
msgstr ""
-#: doc/classes/RigidBody2D.xml:143
+#: doc/classes/RigidBody2D.xml:144
msgid ""
"If [code]true[/code], internal force integration is disabled for this body. "
"Aside from collision response, the body will only move as determined by the "
"[method _integrate_forces] function."
msgstr ""
-#: doc/classes/RigidBody2D.xml:146
+#: doc/classes/RigidBody2D.xml:147
msgid ""
"Multiplies the gravity applied to the body. The body's gravity is calculated "
"from the [b]Default Gravity[/b] value in [b]Project > Project Settings > "
"Physics > 2d[/b] and/or any additional gravity vector applied by [Area2D]s."
msgstr ""
-#: doc/classes/RigidBody2D.xml:149
+#: doc/classes/RigidBody2D.xml:150
msgid ""
"The body's moment of inertia. This is like mass, but for rotation: it "
"determines how much torque it takes to rotate the body. The moment of "
@@ -44841,18 +45592,18 @@ msgid ""
"automatically computing it."
msgstr ""
-#: doc/classes/RigidBody2D.xml:152
+#: doc/classes/RigidBody2D.xml:153
msgid ""
"Damps the body's [member linear_velocity]. If [code]-1[/code], the body will "
"use the [b]Default Linear Damp[/b] in [b]Project > Project Settings > "
"Physics > 2d[/b]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:161
+#: doc/classes/RigidBody2D.xml:162
msgid "The body's mode. See [enum Mode] for possible values."
msgstr ""
-#: doc/classes/RigidBody2D.xml:164 doc/classes/RigidBody3D.xml:181
+#: doc/classes/RigidBody2D.xml:165 doc/classes/RigidBody3D.xml:189
#: doc/classes/StaticBody2D.xml:22 doc/classes/StaticBody3D.xml:22
msgid ""
"The physics material override for the body.\n"
@@ -44860,50 +45611,50 @@ msgid ""
"other physics material, such as an inherited one."
msgstr ""
-#: doc/classes/RigidBody2D.xml:168 doc/classes/RigidBody3D.xml:185
+#: doc/classes/RigidBody2D.xml:169 doc/classes/RigidBody3D.xml:193
msgid ""
"If [code]true[/code], the body will not move and will not calculate forces "
"until woken up by another body through, for example, a collision, or by "
"using the [method apply_impulse] or [method add_force] methods."
msgstr ""
-#: doc/classes/RigidBody2D.xml:171
+#: doc/classes/RigidBody2D.xml:172
msgid ""
"The body's weight based on its mass and the [b]Default Gravity[/b] value in "
"[b]Project > Project Settings > Physics > 2d[/b]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:179
+#: doc/classes/RigidBody2D.xml:180 doc/classes/RigidBody3D.xml:204
msgid ""
-"Emitted when a body enters into contact with this one. [member "
-"contact_monitor] must be [code]true[/code] and [member contacts_reported] "
-"greater than [code]0[/code]."
+"Emitted when a body enters into contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:186
+#: doc/classes/RigidBody2D.xml:187
msgid ""
-"Emitted when a body exits contact with this one. [member contact_monitor] "
-"must be [code]true[/code] and [member contacts_reported] greater than "
-"[code]0[/code]."
+"Emitted when a body exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:199
+#: doc/classes/RigidBody2D.xml:200
msgid ""
"Emitted when a body enters into contact with this one. Reports colliding "
"shape information. See [CollisionObject2D] for shape index information. "
-"[member contact_monitor] must be [code]true[/code] and [member "
-"contacts_reported] greater than [code]0[/code]."
+"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:212
+#: doc/classes/RigidBody2D.xml:213
msgid ""
"Emitted when a body shape exits contact with this one. Reports colliding "
"shape information. See [CollisionObject2D] for shape index information. "
-"[member contact_monitor] must be [code]true[/code] and [member "
-"contacts_reported] greater than [code]0[/code]."
+"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:217 doc/classes/RigidBody3D.xml:236
+#: doc/classes/RigidBody2D.xml:218 doc/classes/RigidBody3D.xml:244
msgid ""
"Emitted when the physics engine changes the body's sleeping state.\n"
"[b]Note:[/b] Changing the value [member sleeping] will not trigger this "
@@ -44911,41 +45662,41 @@ msgid ""
"engine or [code]emit_signal(\"sleeping_state_changed\")[/code] is used."
msgstr ""
-#: doc/classes/RigidBody2D.xml:224
+#: doc/classes/RigidBody2D.xml:225
msgid ""
"Rigid mode. The body behaves as a physical object. It collides with other "
"bodies and responds to forces applied to it. This is the default mode."
msgstr ""
-#: doc/classes/RigidBody2D.xml:227
+#: doc/classes/RigidBody2D.xml:228
msgid "Static mode. The body behaves like a [StaticBody2D] and does not move."
msgstr ""
-#: doc/classes/RigidBody2D.xml:230
+#: doc/classes/RigidBody2D.xml:231
msgid ""
"Character mode. Similar to [constant MODE_RIGID], but the body can not "
"rotate."
msgstr ""
-#: doc/classes/RigidBody2D.xml:233
+#: doc/classes/RigidBody2D.xml:234
msgid ""
"Kinematic mode. The body behaves like a [KinematicBody2D], and must be moved "
"by code."
msgstr ""
-#: doc/classes/RigidBody2D.xml:236
+#: doc/classes/RigidBody2D.xml:237
msgid ""
"Continuous collision detection disabled. This is the fastest way to detect "
"body collisions, but can miss small, fast-moving objects."
msgstr ""
-#: doc/classes/RigidBody2D.xml:239
+#: doc/classes/RigidBody2D.xml:240
msgid ""
"Continuous collision detection enabled using raycasting. This is faster than "
"shapecasting but less precise."
msgstr ""
-#: doc/classes/RigidBody2D.xml:242
+#: doc/classes/RigidBody2D.xml:243
msgid ""
"Continuous collision detection enabled using shapecasting. This is the "
"slowest CCD method and the most precise."
@@ -45031,42 +45782,31 @@ msgid ""
"locked."
msgstr ""
-#: doc/classes/RigidBody3D.xml:99
+#: doc/classes/RigidBody3D.xml:107
msgid ""
-"Returns a list of the bodies colliding with this one. By default, number of "
-"max contacts reported is at 0, see the [member contacts_reported] property "
-"to increase it.\n"
-"[b]Note:[/b] The result of this test is not immediate after moving objects. "
-"For performance, list of collisions is updated once per frame and before the "
-"physics step. Consider using signals instead."
+"Returns the inverse inertia tensor basis. This is used to calculate the "
+"angular acceleration resulting from a torque applied to the [RigidBody3D]."
msgstr ""
-#: doc/classes/RigidBody3D.xml:111
+#: doc/classes/RigidBody3D.xml:118
msgid "Locks the specified linear or rotational axis."
msgstr ""
-#: doc/classes/RigidBody3D.xml:126
+#: doc/classes/RigidBody3D.xml:133
msgid "Damps RigidBody3D's rotational forces."
msgstr ""
-#: doc/classes/RigidBody3D.xml:129
+#: doc/classes/RigidBody3D.xml:136
msgid "RigidBody3D's rotational velocity."
msgstr ""
-#: doc/classes/RigidBody3D.xml:153
+#: doc/classes/RigidBody3D.xml:160
msgid ""
"If [code]true[/code], the RigidBody3D will emit signals when it collides "
-"with another RigidBody3D."
-msgstr ""
-
-#: doc/classes/RigidBody3D.xml:156
-msgid ""
-"The maximum contacts to report. Bodies can keep a log of the contacts with "
-"other bodies, this is enabled by setting the maximum amount of contacts "
-"reported to a number greater than 0."
+"with another RigidBody3D. See also [member contacts_reported]."
msgstr ""
-#: doc/classes/RigidBody3D.xml:159
+#: doc/classes/RigidBody3D.xml:167
msgid ""
"If [code]true[/code], continuous collision detection is used.\n"
"Continuous collision detection tries to predict where a moving body will "
@@ -45076,7 +45816,7 @@ msgid ""
"faster to compute, but can miss small, fast-moving objects."
msgstr ""
-#: doc/classes/RigidBody3D.xml:163
+#: doc/classes/RigidBody3D.xml:171
msgid ""
"If [code]true[/code], internal force integration will be disabled (like "
"gravity or air friction) for this body. Other than collision response, the "
@@ -45084,7 +45824,7 @@ msgid ""
"function, if defined."
msgstr ""
-#: doc/classes/RigidBody3D.xml:166
+#: doc/classes/RigidBody3D.xml:174
msgid ""
"This is multiplied by the global 3D gravity setting found in [b]Project > "
"Project Settings > Physics > 3d[/b] to produce RigidBody3D's gravity. For "
@@ -45092,14 +45832,14 @@ msgid ""
"and 0.5 will apply half gravity to this object."
msgstr ""
-#: doc/classes/RigidBody3D.xml:169
+#: doc/classes/RigidBody3D.xml:177
msgid ""
"The body's linear damp. Cannot be less than -1.0. If this value is different "
"from -1.0, any linear damp derived from the world or areas will be "
"overridden."
msgstr ""
-#: doc/classes/RigidBody3D.xml:172
+#: doc/classes/RigidBody3D.xml:180
msgid ""
"The body's linear velocity. Can be used sporadically, but [b]don't set this "
"every frame[/b], because physics may run in another thread and runs at a "
@@ -45107,60 +45847,57 @@ msgid ""
"for precise control of the body state."
msgstr ""
-#: doc/classes/RigidBody3D.xml:178
+#: doc/classes/RigidBody3D.xml:186
msgid "The body mode. See [enum Mode] for possible values."
msgstr ""
-#: doc/classes/RigidBody3D.xml:196
-msgid ""
-"Emitted when a body enters into contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work."
-msgstr ""
-
-#: doc/classes/RigidBody3D.xml:203
+#: doc/classes/RigidBody3D.xml:211
msgid ""
-"Emitted when a body shape exits contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work."
+"Emitted when a body shape exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody3D.xml:216
+#: doc/classes/RigidBody3D.xml:224
msgid ""
-"Emitted when a body enters into contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work.\n"
+"Emitted when a body enters into contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"This signal not only receives the body that collided with this one, but also "
"its [RID] ([code]body_id[/code]), the shape index from the colliding body "
"([code]body_shape[/code]), and the shape index from this body "
"([code]local_shape[/code]) the other body collided with."
msgstr ""
-#: doc/classes/RigidBody3D.xml:230
+#: doc/classes/RigidBody3D.xml:238
msgid ""
-"Emitted when a body shape exits contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work.\n"
+"Emitted when a body shape exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"This signal not only receives the body that stopped colliding with this one, "
"but also its [RID] ([code]body_id[/code]), the shape index from the "
"colliding body ([code]body_shape[/code]), and the shape index from this body "
"([code]local_shape[/code]) the other body stopped colliding with."
msgstr ""
-#: doc/classes/RigidBody3D.xml:243
+#: doc/classes/RigidBody3D.xml:251
msgid ""
"Rigid body mode. This is the \"natural\" state of a rigid body. It is "
"affected by forces, and can move, rotate, and be affected by user code."
msgstr ""
-#: doc/classes/RigidBody3D.xml:246
+#: doc/classes/RigidBody3D.xml:254
msgid ""
"Static mode. The body behaves like a [StaticBody3D], and can only move by "
"user code."
msgstr ""
-#: doc/classes/RigidBody3D.xml:249
+#: doc/classes/RigidBody3D.xml:257
msgid ""
"Character body mode. This behaves like a rigid body, but can not rotate."
msgstr ""
-#: doc/classes/RigidBody3D.xml:252
+#: doc/classes/RigidBody3D.xml:260
msgid ""
"Kinematic body mode. The body behaves like a [KinematicBody3D], and can only "
"move by user code."
@@ -45667,7 +46404,7 @@ msgstr ""
msgid "The time remaining."
msgstr ""
-#: doc/classes/SceneTreeTimer.xml:28 doc/classes/Timer.xml:62
+#: doc/classes/SceneTreeTimer.xml:28 doc/classes/Timer.xml:63
msgid "Emitted when the timer reaches 0."
msgstr ""
@@ -45790,27 +46527,27 @@ msgid ""
"the singleton using [method EditorInterface.get_script_editor]."
msgstr ""
-#: doc/classes/ScriptEditor.xml:40
+#: doc/classes/ScriptEditor.xml:46
msgid "Returns a [Script] that is currently active in editor."
msgstr ""
-#: doc/classes/ScriptEditor.xml:57
+#: doc/classes/ScriptEditor.xml:69
msgid ""
"Returns an array with all [Script] objects which are currently open in "
"editor."
msgstr ""
-#: doc/classes/ScriptEditor.xml:66
+#: doc/classes/ScriptEditor.xml:78
msgid "Goes to the specified line in the current script."
msgstr ""
-#: doc/classes/ScriptEditor.xml:85
+#: doc/classes/ScriptEditor.xml:113
msgid ""
"Emitted when user changed active script. Argument is a freshly activated "
"[Script]."
msgstr ""
-#: doc/classes/ScriptEditor.xml:92
+#: doc/classes/ScriptEditor.xml:120
msgid ""
"Emitted when editor is about to close the active script. Argument is a "
"[Script] that is going to be closed."
@@ -45872,7 +46609,7 @@ msgid ""
"visible."
msgstr ""
-#: doc/classes/ScrollContainer.xml:37 doc/classes/TextEdit.xml:453
+#: doc/classes/ScrollContainer.xml:37 doc/classes/TextEdit.xml:407
msgid "The current horizontal scroll value."
msgstr ""
@@ -45880,7 +46617,7 @@ msgstr ""
msgid "If [code]true[/code], enables horizontal scrolling."
msgstr ""
-#: doc/classes/ScrollContainer.xml:43 doc/classes/TextEdit.xml:456
+#: doc/classes/ScrollContainer.xml:43 doc/classes/TextEdit.xml:410
msgid "The current vertical scroll value."
msgstr ""
@@ -46399,7 +47136,7 @@ msgstr ""
msgid ""
"Sets the global pose transform, [code]pose[/code], for the bone at "
"[code]bone_idx[/code].\n"
-"[code]amount[/code] is the interpolation strengh that will be used when "
+"[code]amount[/code] is the interpolation strength that will be used when "
"applying the pose, and [code]persistent[/code] determines if the applied "
"pose will remain.\n"
"[b]Note[/b]: The pose transform needs to be in bone space. Use [method "
@@ -46416,7 +47153,7 @@ msgstr ""
#: doc/classes/Skeleton3D.xml:266
msgid ""
-"Returns the pose transform for bone [code]bone_idx[/code].\n"
+"Sets the pose transform for bone [code]bone_idx[/code].\n"
"[b]Note[/b]: The pose transform needs to be in bone space. Use [method "
"world_transform_to_bone_transform] to convert a world transform, like one "
"you can get from a [Node3D], to bone space."
@@ -46509,6 +47246,16 @@ msgstr ""
#: doc/classes/Sky.xml:52
msgid ""
+"Automatically selects the appropriate process mode based on your sky shader. "
+"If your shader uses [code]TIME[/code] or [code]POSITION[/code], this will "
+"use [constant PROCESS_MODE_REALTIME]. If your shader uses any of the "
+"[code]LIGHT_*[/code] variables or any custom uniforms, this uses [constant "
+"PROCESS_MODE_INCREMENTAL]. Otherwise, this defaults to [constant "
+"PROCESS_MODE_QUALITY]."
+msgstr ""
+
+#: doc/classes/Sky.xml:55
+msgid ""
"Uses high quality importance sampling to process the radiance map. In "
"general, this results in much higher quality than [constant "
"PROCESS_MODE_REALTIME] but takes much longer to generate. This should not be "
@@ -46518,10 +47265,22 @@ msgid ""
"ggx_samples]."
msgstr ""
-#: doc/classes/Sky.xml:55
+#: doc/classes/Sky.xml:58
+msgid ""
+"Uses the same high quality importance sampling to process the radiance map "
+"as [constant PROCESS_MODE_QUALITY], but updates over several frames. The "
+"number of frames is determined by [member ProjectSettings.rendering/quality/"
+"reflections/roughness_layers]. Use this when you need highest quality "
+"radiance maps, but have a sky that updates slowly."
+msgstr ""
+
+#: doc/classes/Sky.xml:61
msgid ""
"Uses the fast filtering algorithm to process the radiance map. In general "
-"this results in lower quality, but substantially faster run times.\n"
+"this results in lower quality, but substantially faster run times. If you "
+"need better quality, but still need to update the sky every frame, consider "
+"turning on [member ProjectSettings.rendering/quality/reflections/"
+"fast_filter_high_quality].\n"
"[b]Note:[/b] The fast filtering algorithm is limited to 256x256 cubemaps, so "
"[member radiance_size] must be set to [constant RADIANCE_SIZE_256]."
msgstr ""
@@ -46858,10 +47617,9 @@ msgid ""
msgstr ""
#: doc/classes/SpringArm3D.xml:35
-msgid ""
-"Returns the proportion between the current arm length (after checking for "
-"collisions) and the [member spring_length]. Ranges from 0 to 1."
-msgstr ""
+#, fuzzy
+msgid "Returns the spring arm's current length."
+msgstr "Повертає ÑÐ¸Ð½ÑƒÑ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð°."
#: doc/classes/SpringArm3D.xml:44
msgid ""
@@ -47556,7 +48314,7 @@ msgstr ""
msgid ""
"This is the built-in string class (and the one used by GDScript). It "
"supports Unicode and provides all necessary means for string handling. "
-"Strings are reference counted and use a copy-on-write approach, so passing "
+"Strings are reference-counted and use a copy-on-write approach, so passing "
"them around is cheap in resources."
msgstr ""
@@ -47711,26 +48469,32 @@ msgstr ""
#: doc/classes/String.xml:328
msgid ""
"Returns a copy of the string with escaped characters replaced by their "
-"meanings according to the C language standard."
+"meanings. Supported escape sequences are [code]\\'[/code], [code]\\\"[/"
+"code], [code]\\?[/code], [code]\\\\[/code], [code]\\a[/code], [code]\\b[/"
+"code], [code]\\f[/code], [code]\\n[/code], [code]\\r[/code], [code]\\t[/"
+"code], [code]\\v[/code].\n"
+"[b]Note:[/b] Unlike the GDScript parser, this method doesn't support the "
+"[code]\\uXXXX[/code] escape sequence."
msgstr ""
-#: doc/classes/String.xml:335
+#: doc/classes/String.xml:336
msgid ""
-"Changes the case of some letters. Replaces underscores with spaces, converts "
-"all letters to lowercase, then capitalizes first and every letter following "
-"the space character. For [code]capitalize camelCase mixed_with_underscores[/"
-"code], it will return [code]Capitalize Camelcase Mixed With Underscores[/"
+"Changes the case of some letters. Replaces underscores with spaces, adds "
+"spaces before in-word uppercase characters, converts all letters to "
+"lowercase, then capitalizes the first letter and every letter following a "
+"space character. For [code]capitalize camelCase mixed_with_underscores[/"
+"code], it will return [code]Capitalize Camel Case Mixed With Underscores[/"
"code]."
msgstr ""
-#: doc/classes/String.xml:344
+#: doc/classes/String.xml:345
msgid ""
"Performs a case-sensitive comparison to another string. Returns [code]-1[/"
"code] if less than, [code]+1[/code] if greater than, or [code]0[/code] if "
"equal."
msgstr ""
-#: doc/classes/String.xml:357
+#: doc/classes/String.xml:358
msgid ""
"Returns the number of occurrences of substring [code]what[/code] between "
"[code]from[/code] and [code]to[/code] positions. If [code]from[/code] and "
@@ -47738,7 +48502,7 @@ msgid ""
"code] equals 0 the remained substring will be used."
msgstr ""
-#: doc/classes/String.xml:370
+#: doc/classes/String.xml:371
msgid ""
"Returns the number of occurrences of substring [code]what[/code] (ignoring "
"case) between [code]from[/code] and [code]to[/code] positions. If "
@@ -47746,32 +48510,33 @@ msgid ""
"used. If only [code]to[/code] equals 0 the remained substring will be used."
msgstr ""
-#: doc/classes/String.xml:377
+#: doc/classes/String.xml:378
msgid ""
"Returns a copy of the string with indentation (leading tabs and spaces) "
"removed."
msgstr ""
-#: doc/classes/String.xml:384
+#: doc/classes/String.xml:385
msgid ""
"Returns [code]true[/code] if the length of the string equals [code]0[/code]."
msgstr ""
-#: doc/classes/String.xml:393
+#: doc/classes/String.xml:394
msgid "Returns [code]true[/code] if the string ends with the given string."
msgstr ""
-#: doc/classes/String.xml:404
+#: doc/classes/String.xml:405
msgid ""
"Erases [code]chars[/code] characters from the string starting from "
"[code]position[/code]."
msgstr ""
-#: doc/classes/String.xml:415
+#: doc/classes/String.xml:416
msgid ""
-"Finds the first occurrence of a substring. Returns the starting position of "
-"the substring or [code]-1[/code] if not found. Optionally, the initial "
-"search index can be passed.\n"
+"Returns the index of the [b]first[/b] case-sensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the end of the "
+"string.\n"
"[b]Note:[/b] If you just want to know whether a string contains a substring, "
"use the [code]in[/code] operator as follows:\n"
"[codeblock]\n"
@@ -47781,48 +48546,42 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:430
-msgid ""
-"Finds the last occurrence of a substring. Returns the starting position of "
-"the substring or [code]-1[/code] if not found."
-msgstr ""
-
-#: doc/classes/String.xml:441
+#: doc/classes/String.xml:433
msgid ""
-"Finds the first occurrence of a substring, ignoring case. Returns the "
-"starting position of the substring or [code]-1[/code] if not found. "
-"Optionally, the initial search index can be passed."
+"Returns the index of the [b]first[/b] case-insensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the end of the string."
msgstr ""
-#: doc/classes/String.xml:452
+#: doc/classes/String.xml:444
msgid ""
"Formats the string by replacing all occurrences of [code]placeholder[/code] "
"with [code]values[/code]."
msgstr ""
-#: doc/classes/String.xml:459
+#: doc/classes/String.xml:451
msgid "If the string is a valid file path, returns the base directory name."
msgstr ""
-#: doc/classes/String.xml:466
+#: doc/classes/String.xml:458
msgid ""
"If the string is a valid file path, returns the full file path without the "
"extension."
msgstr ""
-#: doc/classes/String.xml:473
+#: doc/classes/String.xml:465
msgid "If the string is a valid file path, returns the extension."
msgstr ""
-#: doc/classes/String.xml:480
+#: doc/classes/String.xml:472
msgid "If the string is a valid file path, returns the filename."
msgstr ""
-#: doc/classes/String.xml:487
+#: doc/classes/String.xml:479
msgid "Hashes the string and returns a 32-bit integer."
msgstr ""
-#: doc/classes/String.xml:494
+#: doc/classes/String.xml:486
msgid ""
"Converts a string containing a hexadecimal number into an integer. "
"Hexadecimal strings are expected to be prefixed with \"[code]0x[/code]\" "
@@ -47832,7 +48591,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:504
+#: doc/classes/String.xml:496
msgid ""
"Escapes (encodes) a string to URL friendly format. Also referred to as 'URL "
"encode'.\n"
@@ -47842,7 +48601,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:514
+#: doc/classes/String.xml:506
msgid ""
"Unescapes (decodes) a string in URL encoded format. Also referred to as 'URL "
"decode'.\n"
@@ -47852,7 +48611,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:526
+#: doc/classes/String.xml:518
msgid ""
"Converts [code]size[/code] represented as number of bytes to human-readable "
"format using internationalized set of data size units, namely: B, KiB, MiB, "
@@ -47865,48 +48624,48 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:542
+#: doc/classes/String.xml:534
msgid ""
"Returns a copy of the string with the substring [code]what[/code] inserted "
"at the given position."
msgstr ""
-#: doc/classes/String.xml:549
+#: doc/classes/String.xml:541
msgid ""
"If the string is a path to a file or directory, returns [code]true[/code] if "
"the path is absolute."
msgstr ""
-#: doc/classes/String.xml:556
+#: doc/classes/String.xml:548
msgid ""
"If the string is a path to a file or directory, returns [code]true[/code] if "
"the path is relative."
msgstr ""
-#: doc/classes/String.xml:565
+#: doc/classes/String.xml:557
msgid ""
"Returns [code]true[/code] if this string is a subsequence of the given "
"string."
msgstr ""
-#: doc/classes/String.xml:574
+#: doc/classes/String.xml:566
msgid ""
"Returns [code]true[/code] if this string is a subsequence of the given "
"string, without considering case."
msgstr ""
-#: doc/classes/String.xml:581
+#: doc/classes/String.xml:573
msgid ""
"Returns [code]true[/code] if this string is free from characters that aren't "
"allowed in file names, those being:\n"
"[code]: / \\ ? * \" | % < >[/code]"
msgstr ""
-#: doc/classes/String.xml:589
+#: doc/classes/String.xml:581
msgid "Returns [code]true[/code] if this string contains a valid float."
msgstr ""
-#: doc/classes/String.xml:598
+#: doc/classes/String.xml:590
msgid ""
"Returns [code]true[/code] if this string contains a valid hexadecimal "
"number. If [code]with_prefix[/code] is [code]true[/code], then a validity of "
@@ -47914,7 +48673,7 @@ msgid ""
"instance: [code]0xDEADC0DE[/code]."
msgstr ""
-#: doc/classes/String.xml:605
+#: doc/classes/String.xml:597
msgid ""
"Returns [code]true[/code] if this string contains a valid color in "
"hexadecimal HTML notation. Other HTML notations such as named colors or "
@@ -47922,22 +48681,22 @@ msgid ""
"return [code]false[/code]."
msgstr ""
-#: doc/classes/String.xml:612
+#: doc/classes/String.xml:604
msgid ""
"Returns [code]true[/code] if this string is a valid identifier. A valid "
"identifier may contain only letters, digits and underscores ([code]_[/code]) "
"and the first character may not be a digit."
msgstr ""
-#: doc/classes/String.xml:619
+#: doc/classes/String.xml:611
msgid "Returns [code]true[/code] if this string contains a valid integer."
msgstr ""
-#: doc/classes/String.xml:626
+#: doc/classes/String.xml:618
msgid "Returns [code]true[/code] if this string contains a valid IP address."
msgstr ""
-#: doc/classes/String.xml:635
+#: doc/classes/String.xml:627
msgid ""
"Return a [String] which is the concatenation of the [code]parts[/code]. The "
"separator between elements is the string providing this method.\n"
@@ -47947,121 +48706,125 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:646
+#: doc/classes/String.xml:638
msgid ""
"Returns a copy of the string with special characters escaped using the JSON "
"standard."
msgstr ""
-#: doc/classes/String.xml:655
+#: doc/classes/String.xml:647
msgid "Returns a number of characters from the left of the string."
msgstr ""
-#: doc/classes/String.xml:662
+#: doc/classes/String.xml:654
msgid "Returns the string's amount of characters."
msgstr ""
-#: doc/classes/String.xml:671
+#: doc/classes/String.xml:663
msgid "Returns a copy of the string with characters removed from the left."
msgstr ""
-#: doc/classes/String.xml:680
+#: doc/classes/String.xml:672
msgid ""
"Does a simple case-sensitive expression match, where [code]\"*\"[/code] "
"matches zero or more arbitrary characters and [code]\"?\"[/code] matches any "
"single character except a period ([code]\".\"[/code])."
msgstr ""
-#: doc/classes/String.xml:689
+#: doc/classes/String.xml:681
msgid ""
"Does a simple case-insensitive expression match, where [code]\"*\"[/code] "
"matches zero or more arbitrary characters and [code]\"?\"[/code] matches any "
"single character except a period ([code]\".\"[/code])."
msgstr ""
-#: doc/classes/String.xml:696
+#: doc/classes/String.xml:688
msgid "Returns the MD5 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:703
+#: doc/classes/String.xml:695
msgid "Returns the MD5 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:712
+#: doc/classes/String.xml:704
msgid ""
"Performs a case-insensitive comparison to another string. Returns [code]-1[/"
"code] if less than, [code]+1[/code] if greater than, or [code]0[/code] if "
"equal."
msgstr ""
-#: doc/classes/String.xml:721
+#: doc/classes/String.xml:713
msgid "Returns the character code at position [code]at[/code]."
msgstr ""
-#: doc/classes/String.xml:730
+#: doc/classes/String.xml:722
msgid ""
"Formats a number to have an exact number of [code]digits[/code] after the "
"decimal point."
msgstr ""
-#: doc/classes/String.xml:739
+#: doc/classes/String.xml:731
msgid ""
"Formats a number to have an exact number of [code]digits[/code] before the "
"decimal point."
msgstr ""
-#: doc/classes/String.xml:746
+#: doc/classes/String.xml:738
msgid "Decode a percent-encoded string. See [method percent_encode]."
msgstr ""
-#: doc/classes/String.xml:753
+#: doc/classes/String.xml:745
msgid ""
"Percent-encodes a string. Encodes parameters in a URL when sending a HTTP "
"GET request (and bodies of form-urlencoded POST requests)."
msgstr ""
-#: doc/classes/String.xml:762
+#: doc/classes/String.xml:754
msgid ""
"If the string is a path, this concatenates [code]file[/code] at the end of "
"the string as a subpath. E.g. [code]\"this/is\".plus_file(\"path\") == "
"\"this/is/path\"[/code]."
msgstr ""
-#: doc/classes/String.xml:771
+#: doc/classes/String.xml:763
msgid ""
"Returns original string repeated a number of times. The number of "
"repetitions is given by the argument."
msgstr ""
-#: doc/classes/String.xml:782
+#: doc/classes/String.xml:774
msgid ""
"Replaces occurrences of a case-sensitive substring with the given one inside "
"the string."
msgstr ""
-#: doc/classes/String.xml:793
+#: doc/classes/String.xml:785
msgid ""
"Replaces occurrences of a case-insensitive substring with the given one "
"inside the string."
msgstr ""
-#: doc/classes/String.xml:804
+#: doc/classes/String.xml:796
msgid ""
-"Performs a case-sensitive search for a substring, but starts from the end of "
-"the string instead of the beginning."
+"Returns the index of the [b]last[/b] case-sensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the beginning of the "
+"string."
msgstr ""
-#: doc/classes/String.xml:815
+#: doc/classes/String.xml:807
msgid ""
-"Performs a case-insensitive search for a substring, but starts from the end "
-"of the string instead of the beginning."
+"Returns the index of the [b]last[/b] case-insensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the beginning of the "
+"string."
msgstr ""
-#: doc/classes/String.xml:824
+#: doc/classes/String.xml:816
msgid "Returns the right side of the string from a given position."
msgstr ""
-#: doc/classes/String.xml:837
+#: doc/classes/String.xml:829
msgid ""
"Splits the string by a [code]delimiter[/code] string and returns an array of "
"the substrings, starting from right.\n"
@@ -48080,39 +48843,39 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:856
+#: doc/classes/String.xml:848
msgid "Returns a copy of the string with characters removed from the right."
msgstr ""
-#: doc/classes/String.xml:863
+#: doc/classes/String.xml:855
msgid "Returns the SHA-1 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:870
+#: doc/classes/String.xml:862
msgid "Returns the SHA-1 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:877
+#: doc/classes/String.xml:869
msgid "Returns the SHA-256 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:884
+#: doc/classes/String.xml:876
msgid "Returns the SHA-256 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:893
+#: doc/classes/String.xml:885
msgid ""
"Returns the similarity index of the text compared to this string. 1 means "
"totally similar and 0 means totally dissimilar."
msgstr ""
-#: doc/classes/String.xml:906
+#: doc/classes/String.xml:898
msgid ""
"Splits the string by a [code]delimiter[/code] string and returns an array of "
-"the substrings.\n"
+"the substrings. The [code]delimiter[/code] can be of any length.\n"
"If [code]maxsplit[/code] is specified, it defines the number of splits to do "
-"from the left up to [code]maxsplit[/code]. The default value of 0 means that "
-"all items are split.\n"
+"from the left up to [code]maxsplit[/code]. The default value of [code]0[/"
+"code] means that all items are split.\n"
"Example:\n"
"[codeblock]\n"
"var some_string = \"One,Two,Three,Four\"\n"
@@ -48120,10 +48883,12 @@ msgid ""
"print(some_array.size()) # Prints 2\n"
"print(some_array[0]) # Prints \"One\"\n"
"print(some_array[1]) # Prints \"Two,Three,Four\"\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"If you need to split strings with more complex rules, use the [RegEx] class "
+"instead."
msgstr ""
-#: doc/classes/String.xml:926
+#: doc/classes/String.xml:919
msgid ""
"Splits the string in floats by using a delimiter string and returns an array "
"of the substrings.\n"
@@ -48131,7 +48896,7 @@ msgid ""
"split by [code]\",\"[/code]."
msgstr ""
-#: doc/classes/String.xml:938
+#: doc/classes/String.xml:931
msgid ""
"Returns a copy of the string stripped of any non-printable character "
"(including tabulations, spaces and line breaks) at the beginning and the "
@@ -48139,7 +48904,7 @@ msgid ""
"right edges respectively."
msgstr ""
-#: doc/classes/String.xml:945
+#: doc/classes/String.xml:938
msgid ""
"Returns a copy of the string stripped of any escape character. These include "
"all non-printable control characters of the first page of the ASCII table (< "
@@ -48147,14 +48912,14 @@ msgid ""
"code] and [code]\\r[/code]) characters, but not spaces."
msgstr ""
-#: doc/classes/String.xml:956
+#: doc/classes/String.xml:949
msgid ""
"Returns part of the string from the position [code]from[/code] with length "
"[code]len[/code]. Argument [code]len[/code] is optional and using [code]-1[/"
"code] will return remaining characters from given position."
msgstr ""
-#: doc/classes/String.xml:963
+#: doc/classes/String.xml:956
msgid ""
"Converts the String (which is a character array) to [PackedByteArray] (which "
"is an array of bytes). The conversion is faster compared to [method "
@@ -48162,25 +48927,25 @@ msgid ""
"ASCII characters."
msgstr ""
-#: doc/classes/String.xml:970
+#: doc/classes/String.xml:963
msgid ""
"Converts a string containing a decimal number into a [code]float[/code]."
msgstr ""
-#: doc/classes/String.xml:977
+#: doc/classes/String.xml:970
msgid ""
"Converts a string containing an integer number into an [code]int[/code]."
msgstr ""
-#: doc/classes/String.xml:984
+#: doc/classes/String.xml:977
msgid "Returns the string converted to lowercase."
msgstr ""
-#: doc/classes/String.xml:991
+#: doc/classes/String.xml:984
msgid "Returns the string converted to uppercase."
msgstr ""
-#: doc/classes/String.xml:998
+#: doc/classes/String.xml:991
msgid ""
"Converts the String (which is an array of characters) to [PackedByteArray] "
"(which is an array of bytes). The conversion is a bit slower than [method "
@@ -48188,25 +48953,25 @@ msgid ""
"this function over [method to_ascii]."
msgstr ""
-#: doc/classes/String.xml:1007
+#: doc/classes/String.xml:1000
msgid ""
"Removes a given string from the start if it starts with it or leaves the "
"string unchanged."
msgstr ""
-#: doc/classes/String.xml:1016
+#: doc/classes/String.xml:1009
msgid ""
"Removes a given string from the end if it ends with it or leaves the string "
"unchanged."
msgstr ""
-#: doc/classes/String.xml:1023
+#: doc/classes/String.xml:1016
msgid ""
"Returns a copy of the string with special characters escaped using the XML "
"standard."
msgstr ""
-#: doc/classes/String.xml:1030
+#: doc/classes/String.xml:1023
msgid ""
"Returns a copy of the string with escaped characters replaced by their "
"meanings according to the XML standard."
@@ -49438,50 +50203,42 @@ msgid ""
"undo/redo."
msgstr ""
-#: doc/classes/TextEdit.xml:24
-msgid "Adds color region (given the delimiters) and its colors."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:35
-msgid "Adds a [code]keyword[/code] and its [Color]."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:44
+#: doc/classes/TextEdit.xml:18
msgid ""
"Returns if the given line is foldable, that is, it has indented lines right "
"below it."
msgstr ""
-#: doc/classes/TextEdit.xml:57
+#: doc/classes/TextEdit.xml:25
msgid ""
-"Clears all custom syntax coloring information previously added with [method "
-"add_color_region] or [method add_keyword_color]."
+"Centers the viewport on the line the editing cursor is at. This also resets "
+"the [member scroll_horizontal] value to [code]0[/code]."
msgstr ""
-#: doc/classes/TextEdit.xml:64
+#: doc/classes/TextEdit.xml:32
msgid "Clears the undo history."
msgstr ""
-#: doc/classes/TextEdit.xml:71
+#: doc/classes/TextEdit.xml:39
msgid "Copy's the current text selection."
msgstr ""
-#: doc/classes/TextEdit.xml:78
+#: doc/classes/TextEdit.xml:46
msgid "Returns the column the editing cursor is at."
msgstr ""
-#: doc/classes/TextEdit.xml:85
+#: doc/classes/TextEdit.xml:53
msgid "Returns the line the editing cursor is at."
msgstr ""
-#: doc/classes/TextEdit.xml:96
+#: doc/classes/TextEdit.xml:64
msgid ""
"Moves the cursor at the specified [code]column[/code] index.\n"
"If [code]adjust_viewport[/code] is set to [code]true[/code], the viewport "
"will center at the cursor position after the move occurs."
msgstr ""
-#: doc/classes/TextEdit.xml:112
+#: doc/classes/TextEdit.xml:80
msgid ""
"Moves the cursor at the specified [code]line[/code] index.\n"
"If [code]adjust_viewport[/code] is set to [code]true[/code], the viewport "
@@ -49490,111 +50247,101 @@ msgid ""
"[code]line[/code] can be hidden using [method set_line_as_hidden]."
msgstr ""
-#: doc/classes/TextEdit.xml:121
+#: doc/classes/TextEdit.xml:89
msgid "Cut's the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:128
+#: doc/classes/TextEdit.xml:96
msgid "Deselects the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:135
+#: doc/classes/TextEdit.xml:103
msgid "Folds all lines that are possible to be folded (see [method can_fold])."
msgstr ""
-#: doc/classes/TextEdit.xml:144
+#: doc/classes/TextEdit.xml:112
msgid "Folds the given line, if possible (see [method can_fold])."
msgstr ""
-#: doc/classes/TextEdit.xml:151
+#: doc/classes/TextEdit.xml:119
msgid "Returns an array containing the line number of each breakpoint."
msgstr ""
-#: doc/classes/TextEdit.xml:160
-msgid "Returns the [Color] of the specified [code]keyword[/code]."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:169
+#: doc/classes/TextEdit.xml:128
msgid "Returns the text of a specific line."
msgstr ""
-#: doc/classes/TextEdit.xml:176
+#: doc/classes/TextEdit.xml:135
msgid "Returns the amount of total lines in the text."
msgstr ""
-#: doc/classes/TextEdit.xml:183
+#: doc/classes/TextEdit.xml:142
msgid ""
"Returns the [PopupMenu] of this [TextEdit]. By default, this menu is "
"displayed when right-clicking on the [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:190
+#: doc/classes/TextEdit.xml:149
msgid "Returns the selection begin column."
msgstr ""
-#: doc/classes/TextEdit.xml:197
+#: doc/classes/TextEdit.xml:156
msgid "Returns the selection begin line."
msgstr ""
-#: doc/classes/TextEdit.xml:204
+#: doc/classes/TextEdit.xml:163
msgid "Returns the text inside the selection."
msgstr ""
-#: doc/classes/TextEdit.xml:211
+#: doc/classes/TextEdit.xml:170
msgid "Returns the selection end column."
msgstr ""
-#: doc/classes/TextEdit.xml:218
+#: doc/classes/TextEdit.xml:177
msgid "Returns the selection end line."
msgstr ""
-#: doc/classes/TextEdit.xml:225
+#: doc/classes/TextEdit.xml:184
msgid "Returns a [String] text with the word under the mouse cursor location."
msgstr ""
-#: doc/classes/TextEdit.xml:234
-msgid ""
-"Returns whether the specified [code]keyword[/code] has a color set to it or "
-"not."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:243
+#: doc/classes/TextEdit.xml:193
msgid "Insert the specified text at the cursor position."
msgstr ""
-#: doc/classes/TextEdit.xml:252
+#: doc/classes/TextEdit.xml:202
msgid "Returns whether the line at the specified index is folded or not."
msgstr ""
-#: doc/classes/TextEdit.xml:261
+#: doc/classes/TextEdit.xml:211
msgid "Returns whether the line at the specified index is hidden or not."
msgstr ""
-#: doc/classes/TextEdit.xml:268
+#: doc/classes/TextEdit.xml:218
msgid "Returns [code]true[/code] if the selection is active."
msgstr ""
-#: doc/classes/TextEdit.xml:277
+#: doc/classes/TextEdit.xml:227
msgid ""
"Triggers a right-click menu action by the specified index. See [enum "
"MenuItems] for a list of available indexes."
msgstr ""
-#: doc/classes/TextEdit.xml:284
+#: doc/classes/TextEdit.xml:234
msgid "Paste the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:291
+#: doc/classes/TextEdit.xml:241
msgid "Perform redo operation."
msgstr ""
-#: doc/classes/TextEdit.xml:298
+#: doc/classes/TextEdit.xml:248
msgid ""
"Removes all the breakpoints. This will not fire the [signal "
"breakpoint_toggled] signal."
msgstr ""
-#: doc/classes/TextEdit.xml:313
+#: doc/classes/TextEdit.xml:263
msgid ""
"Perform a search inside the text. Search flags can be specified in the [enum "
"SearchFlags] enum.\n"
@@ -49610,244 +50357,265 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/TextEdit.xml:336
-msgid "Perform selection, from line/column to line/column."
+#: doc/classes/TextEdit.xml:286
+msgid ""
+"Perform selection, from line/column to line/column.\n"
+"If [member selecting_enabled] is [code]false[/code], no selection will occur."
msgstr ""
-#: doc/classes/TextEdit.xml:343
-msgid "Select all the text."
+#: doc/classes/TextEdit.xml:294
+msgid ""
+"Select all the text.\n"
+"If [member selecting_enabled] is [code]false[/code], no selection will occur."
msgstr ""
-#: doc/classes/TextEdit.xml:354
+#: doc/classes/TextEdit.xml:306
msgid "Sets the text for a specific line."
msgstr ""
-#: doc/classes/TextEdit.xml:365
+#: doc/classes/TextEdit.xml:317
msgid "If [code]true[/code], hides the line of the specified index."
msgstr ""
-#: doc/classes/TextEdit.xml:374
+#: doc/classes/TextEdit.xml:326
msgid "Toggle the folding of the code block at the given line."
msgstr ""
-#: doc/classes/TextEdit.xml:381
+#: doc/classes/TextEdit.xml:333
msgid "Perform undo operation."
msgstr ""
-#: doc/classes/TextEdit.xml:390
+#: doc/classes/TextEdit.xml:342
msgid "Unfolds the given line, if folded."
msgstr ""
-#: doc/classes/TextEdit.xml:397
+#: doc/classes/TextEdit.xml:349
msgid ""
"Unhide all lines that were previously set to hidden by [method "
"set_line_as_hidden]."
msgstr ""
-#: doc/classes/TextEdit.xml:403
+#: doc/classes/TextEdit.xml:355
msgid "If [code]true[/code], the breakpoint gutter is visible."
msgstr ""
-#: doc/classes/TextEdit.xml:412
+#: doc/classes/TextEdit.xml:364
msgid ""
"If [code]true[/code], the caret displays as a rectangle.\n"
"If [code]false[/code], the caret displays as a bar."
msgstr ""
-#: doc/classes/TextEdit.xml:416
+#: doc/classes/TextEdit.xml:368
msgid ""
"If [code]true[/code], a right-click moves the cursor at the mouse position "
"before displaying the context menu.\n"
"If [code]false[/code], the context menu disregards mouse location."
msgstr ""
-#: doc/classes/TextEdit.xml:420
+#: doc/classes/TextEdit.xml:372
msgid "If [code]true[/code], a right-click displays the context menu."
msgstr ""
-#: doc/classes/TextEdit.xml:423
+#: doc/classes/TextEdit.xml:375
msgid ""
"If [code]true[/code], the \"space\" character will have a visible "
"representation."
msgstr ""
-#: doc/classes/TextEdit.xml:426
+#: doc/classes/TextEdit.xml:378
msgid ""
"If [code]true[/code], the \"tab\" character will have a visible "
"representation."
msgstr ""
-#: doc/classes/TextEdit.xml:430
+#: doc/classes/TextEdit.xml:382
msgid ""
"If [code]true[/code], the fold gutter is visible. This enables folding "
"groups of indented lines."
msgstr ""
-#: doc/classes/TextEdit.xml:433
+#: doc/classes/TextEdit.xml:385
msgid ""
"If [code]true[/code], all lines that have been set to hidden by [method "
"set_line_as_hidden], will not be visible."
msgstr ""
-#: doc/classes/TextEdit.xml:436
+#: doc/classes/TextEdit.xml:388
msgid ""
"If [code]true[/code], all occurrences of the selected text will be "
"highlighted."
msgstr ""
-#: doc/classes/TextEdit.xml:439
+#: doc/classes/TextEdit.xml:391
msgid "If [code]true[/code], the line containing the cursor is highlighted."
msgstr ""
-#: doc/classes/TextEdit.xml:447
+#: doc/classes/TextEdit.xml:394
+msgid ""
+"If [code]true[/code], a minimap is shown, providing an outline of your "
+"source code."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:397
+msgid "The width, in pixels, of the minimap."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:401
msgid ""
"If [code]true[/code], custom [code]font_color_selected[/code] will be used "
"for selected text."
msgstr ""
-#: doc/classes/TextEdit.xml:450
+#: doc/classes/TextEdit.xml:404
msgid ""
"If [code]true[/code], read-only mode is enabled. Existing text cannot be "
"modified and new text cannot be added."
msgstr ""
-#: doc/classes/TextEdit.xml:463
+#: doc/classes/TextEdit.xml:413
msgid ""
-"If [code]true[/code], line numbers are displayed to the left of the text."
+"If [code]true[/code], text can be selected.\n"
+"If [code]false[/code], text can not be selected by the user or by the "
+"[method select] or [method select_all] methods."
msgstr ""
-#: doc/classes/TextEdit.xml:466
+#: doc/classes/TextEdit.xml:417
msgid ""
-"If [code]true[/code], sets the [code]step[/code] of the scrollbars to "
-"[code]0.25[/code] which results in smoother scrolling."
+"If [code]true[/code], shortcut keys for context menu items are enabled, even "
+"if the context menu is disabled."
msgstr ""
-#: doc/classes/TextEdit.xml:469
+#: doc/classes/TextEdit.xml:420
msgid ""
-"If [code]true[/code], any custom color properties that have been set for "
-"this [TextEdit] will be visible."
+"If [code]true[/code], line numbers are displayed to the left of the text."
msgstr ""
-#: doc/classes/TextEdit.xml:472
+#: doc/classes/TextEdit.xml:423
+msgid ""
+"If [code]true[/code], sets the [code]step[/code] of the scrollbars to "
+"[code]0.25[/code] which results in smoother scrolling."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:428
msgid "String value of the [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:475
+#: doc/classes/TextEdit.xml:431
msgid "Vertical scroll sensitivity."
msgstr ""
-#: doc/classes/TextEdit.xml:478
+#: doc/classes/TextEdit.xml:437
msgid ""
"If [code]true[/code], enables text wrapping when it goes beyond the edge of "
"what is visible."
msgstr ""
-#: doc/classes/TextEdit.xml:486
+#: doc/classes/TextEdit.xml:445
msgid "Emitted when a breakpoint is placed via the breakpoint gutter."
msgstr ""
-#: doc/classes/TextEdit.xml:491
+#: doc/classes/TextEdit.xml:450
msgid "Emitted when the cursor changes."
msgstr ""
-#: doc/classes/TextEdit.xml:500
+#: doc/classes/TextEdit.xml:459
msgid "Emitted when the info icon is clicked."
msgstr ""
-#: doc/classes/TextEdit.xml:531
+#: doc/classes/TextEdit.xml:496
msgid "Match case when searching."
msgstr ""
-#: doc/classes/TextEdit.xml:534
+#: doc/classes/TextEdit.xml:499
msgid "Match whole words when searching."
msgstr ""
-#: doc/classes/TextEdit.xml:537
+#: doc/classes/TextEdit.xml:502
msgid "Search from end to beginning."
msgstr ""
-#: doc/classes/TextEdit.xml:546
+#: doc/classes/TextEdit.xml:511
msgid ""
"Pastes the clipboard text over the selected text (or at the cursor's "
"position)."
msgstr ""
-#: doc/classes/TextEdit.xml:549
+#: doc/classes/TextEdit.xml:514
msgid "Erases the whole [TextEdit] text."
msgstr ""
-#: doc/classes/TextEdit.xml:552
+#: doc/classes/TextEdit.xml:517
msgid "Selects the whole [TextEdit] text."
msgstr ""
-#: doc/classes/TextEdit.xml:558
+#: doc/classes/TextEdit.xml:523
msgid "Redoes the previous action."
msgstr ""
-#: doc/classes/TextEdit.xml:566
+#: doc/classes/TextEdit.xml:531
msgid ""
"Sets the background [Color] of this [TextEdit]. [member syntax_highlighting] "
"has to be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:569
+#: doc/classes/TextEdit.xml:534
msgid ""
"Sets the [Color] of the bookmark marker. [member syntax_highlighting] has to "
"be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:574 doc/classes/TextEdit.xml:601
+#: doc/classes/TextEdit.xml:539 doc/classes/TextEdit.xml:566
msgid ""
"Sets the [Color] of the breakpoints. [member breakpoint_gutter] has to be "
"enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:612
+#: doc/classes/TextEdit.xml:577
msgid "Sets the default [Font]."
msgstr ""
-#: doc/classes/TextEdit.xml:615
+#: doc/classes/TextEdit.xml:580
msgid "Sets the font [Color]."
msgstr ""
-#: doc/classes/TextEdit.xml:620
+#: doc/classes/TextEdit.xml:585
msgid ""
"Sets the [Color] of the selected text. [member override_selected_font_color] "
"has to be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:625
+#: doc/classes/TextEdit.xml:588
msgid ""
"Sets the [Color] of the line numbers. [member show_line_numbers] has to be "
"enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:628
+#: doc/classes/TextEdit.xml:591
msgid "Sets the spacing between the lines."
msgstr ""
-#: doc/classes/TextEdit.xml:631
+#: doc/classes/TextEdit.xml:594
msgid "Sets the [Color] of marked text."
msgstr ""
-#: doc/classes/TextEdit.xml:636
+#: doc/classes/TextEdit.xml:597
msgid "Sets the [StyleBox] of this [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:641
+#: doc/classes/TextEdit.xml:600
msgid ""
"Sets the [StyleBox] of this [TextEdit] when [member readonly] is enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:646
+#: doc/classes/TextEdit.xml:605
msgid "Sets the highlight [Color] of text selections."
msgstr ""
-#: doc/classes/TextEdit.xml:653
+#: doc/classes/TextEdit.xml:610
msgid "Sets a custom [Texture2D] for tab text characters."
msgstr ""
-#: doc/classes/TextEdit.xml:656
+#: doc/classes/TextEdit.xml:613
msgid ""
"Sets the highlight [Color] of multiple occurrences. [member "
"highlight_all_occurrences] has to be enabled."
@@ -49925,80 +50693,80 @@ msgid ""
"the texture will not scale with the node."
msgstr ""
-#: doc/classes/TextureButton.xml:19
+#: doc/classes/TextureButton.xml:25
msgid ""
"Controls the texture's behavior when you resize the node's bounding "
"rectangle, [b]only if[/b] [member expand] is [code]true[/code]. Set it to "
"one of the [enum StretchMode] constants. See the constants to learn more."
msgstr ""
-#: doc/classes/TextureButton.xml:22
+#: doc/classes/TextureButton.xml:28
msgid ""
"Pure black and white [BitMap] image to use for click detection. On the mask, "
"white pixels represent the button's clickable area. Use it to create buttons "
"with curved shapes."
msgstr ""
-#: doc/classes/TextureButton.xml:25
+#: doc/classes/TextureButton.xml:31
msgid ""
"Texture to display when the node is disabled. See [member BaseButton."
"disabled]."
msgstr ""
-#: doc/classes/TextureButton.xml:28
+#: doc/classes/TextureButton.xml:34
msgid "Texture to display when the node has mouse or keyboard focus."
msgstr ""
-#: doc/classes/TextureButton.xml:31
+#: doc/classes/TextureButton.xml:37
msgid "Texture to display when the mouse hovers the node."
msgstr ""
-#: doc/classes/TextureButton.xml:34
+#: doc/classes/TextureButton.xml:40
msgid ""
"Texture to display by default, when the node is [b]not[/b] in the disabled, "
"focused, hover or pressed state."
msgstr ""
-#: doc/classes/TextureButton.xml:37
+#: doc/classes/TextureButton.xml:43
msgid ""
"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 "
"[member BaseButton.shortcut] key."
msgstr ""
-#: doc/classes/TextureButton.xml:42 doc/classes/TextureRect.xml:36
+#: doc/classes/TextureButton.xml:48 doc/classes/TextureRect.xml:36
msgid "Scale to fit the node's bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:45 doc/classes/TextureRect.xml:39
+#: doc/classes/TextureButton.xml:51 doc/classes/TextureRect.xml:39
msgid "Tile inside the node's bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:48 doc/classes/TextureRect.xml:42
+#: doc/classes/TextureButton.xml:54 doc/classes/TextureRect.xml:42
msgid ""
"The texture keeps its original size and stays in the bounding rectangle's "
"top-left corner."
msgstr ""
-#: doc/classes/TextureButton.xml:51 doc/classes/TextureRect.xml:45
+#: doc/classes/TextureButton.xml:57 doc/classes/TextureRect.xml:45
msgid ""
"The texture keeps its original size and stays centered in the node's "
"bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:54 doc/classes/TextureRect.xml:48
+#: doc/classes/TextureButton.xml:60 doc/classes/TextureRect.xml:48
msgid ""
"Scale the texture to fit the node's bounding rectangle, but maintain the "
"texture's aspect ratio."
msgstr ""
-#: doc/classes/TextureButton.xml:57
+#: doc/classes/TextureButton.xml:63
msgid ""
"Scale the texture to fit the node's bounding rectangle, center it, and "
"maintain its aspect ratio."
msgstr ""
-#: doc/classes/TextureButton.xml:60 doc/classes/TextureRect.xml:54
+#: doc/classes/TextureButton.xml:66 doc/classes/TextureRect.xml:54
msgid ""
"Scale the texture so that the shorter side fits the bounding rectangle. The "
"other side clips to the node's limits."
@@ -50448,19 +51216,25 @@ msgid ""
"advised if working with shared objects."
msgstr ""
-#: doc/classes/Thread.xml:17
+#: doc/classes/Thread.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/threads/thread_safe_apis."
+"html"
+msgstr ""
+
+#: doc/classes/Thread.xml:18
msgid ""
"Returns the current [Thread]'s ID, uniquely identifying it among all threads."
msgstr ""
-#: doc/classes/Thread.xml:24
+#: doc/classes/Thread.xml:25
msgid ""
"Returns [code]true[/code] if this [Thread] is currently active. An active "
"[Thread] cannot start work on a new method but can be joined with [method "
"wait_to_finish]."
msgstr ""
-#: doc/classes/Thread.xml:39
+#: doc/classes/Thread.xml:40
msgid ""
"Starts a new [Thread] that runs [code]method[/code] on object "
"[code]instance[/code] with [code]userdata[/code] passed as an argument. Even "
@@ -50470,21 +51244,21 @@ msgid ""
"Returns [constant OK] on success, or [constant ERR_CANT_CREATE] on failure."
msgstr ""
-#: doc/classes/Thread.xml:47
+#: doc/classes/Thread.xml:48
msgid ""
"Joins the [Thread] and waits for it to finish. Returns what the method "
"called returned."
msgstr ""
-#: doc/classes/Thread.xml:53
+#: doc/classes/Thread.xml:54
msgid "A thread running with lower priority than normally."
msgstr ""
-#: doc/classes/Thread.xml:56
+#: doc/classes/Thread.xml:57
msgid "A thread with a standard priority."
msgstr ""
-#: doc/classes/Thread.xml:59
+#: doc/classes/Thread.xml:60
msgid "A thread running with higher priority than normally."
msgstr ""
@@ -51019,50 +51793,61 @@ msgid "Returns the [Transform2D] of a tile's shape."
msgstr ""
#: doc/classes/TileSet.xml:481
-msgid "Returns an array of the tile's shapes."
+msgid ""
+"Returns an array of dictionaries describing the tile's shapes.\n"
+"[b]Dictionary structure in the array returned by this method:[/b]\n"
+"[codeblock]\n"
+"{\n"
+" \"autotile_coord\": Vector2,\n"
+" \"one_way\": bool,\n"
+" \"one_way_margin\": int,\n"
+" \"shape\": CollisionShape2D,\n"
+" \"shape_transform\": Transform2D,\n"
+"}\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/TileSet.xml:490
+#: doc/classes/TileSet.xml:500
msgid "Returns the tile's texture."
msgstr ""
-#: doc/classes/TileSet.xml:499
+#: doc/classes/TileSet.xml:509
msgid "Returns the texture offset of the tile."
msgstr ""
-#: doc/classes/TileSet.xml:508
+#: doc/classes/TileSet.xml:518
msgid "Returns the tile's [enum TileMode]."
msgstr ""
-#: doc/classes/TileSet.xml:517
+#: doc/classes/TileSet.xml:527
msgid "Returns the tile's Z index (drawing layer)."
msgstr ""
-#: doc/classes/TileSet.xml:528
+#: doc/classes/TileSet.xml:538
msgid "Sets a light occluder for the tile."
msgstr ""
-#: doc/classes/TileSet.xml:539
+#: doc/classes/TileSet.xml:549
msgid "Sets the tile's material."
msgstr ""
-#: doc/classes/TileSet.xml:550
+#: doc/classes/TileSet.xml:560
msgid "Sets the tile's modulation color."
msgstr ""
-#: doc/classes/TileSet.xml:561
+#: doc/classes/TileSet.xml:571
msgid "Sets the tile's name."
msgstr ""
-#: doc/classes/TileSet.xml:572
+#: doc/classes/TileSet.xml:582
msgid "Sets the tile's navigation polygon."
msgstr ""
-#: doc/classes/TileSet.xml:583
+#: doc/classes/TileSet.xml:593
msgid "Sets an offset for the tile's navigation polygon."
msgstr ""
-#: doc/classes/TileSet.xml:594
+#: doc/classes/TileSet.xml:604
msgid ""
"Sets the tile's normal map texture.\n"
"[b]Note:[/b] Godot expects the normal map to use X+, Y-, and Z+ coordinates. "
@@ -51071,48 +51856,48 @@ msgid ""
"a comparison of normal map coordinates expected by popular engines."
msgstr ""
-#: doc/classes/TileSet.xml:606
+#: doc/classes/TileSet.xml:616
msgid "Sets an offset for the tile's light occluder."
msgstr ""
-#: doc/classes/TileSet.xml:617
+#: doc/classes/TileSet.xml:627
msgid ""
"Sets the tile's sub-region in the texture. This is common in texture atlases."
msgstr ""
-#: doc/classes/TileSet.xml:630
+#: doc/classes/TileSet.xml:640
msgid "Sets a shape for the tile, enabling collision."
msgstr ""
-#: doc/classes/TileSet.xml:643
+#: doc/classes/TileSet.xml:653
msgid "Sets the offset of a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:656
+#: doc/classes/TileSet.xml:666
msgid "Enables one-way collision on a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:681
+#: doc/classes/TileSet.xml:691
msgid "Sets a [Transform2D] on a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:692
+#: doc/classes/TileSet.xml:702
msgid "Sets an array of shapes for the tile, enabling collision."
msgstr ""
-#: doc/classes/TileSet.xml:703
+#: doc/classes/TileSet.xml:713
msgid "Sets the tile's texture."
msgstr ""
-#: doc/classes/TileSet.xml:714
+#: doc/classes/TileSet.xml:724
msgid "Sets the tile's texture offset."
msgstr ""
-#: doc/classes/TileSet.xml:725
+#: doc/classes/TileSet.xml:735
msgid "Sets the tile's [enum TileMode]."
msgstr ""
-#: doc/classes/TileSet.xml:736
+#: doc/classes/TileSet.xml:746
msgid "Sets the tile's drawing index."
msgstr ""
@@ -51123,14 +51908,16 @@ msgstr ""
#: doc/classes/Timer.xml:7
msgid ""
"Counts down a specified interval and emits a signal on reaching 0. Can be "
-"set to repeat or \"one-shot\" mode."
+"set to repeat or \"one-shot\" mode.\n"
+"[b]Note:[/b] To create an one-shot timer without instantiating a node, use "
+"[method SceneTree.create_timer]."
msgstr ""
-#: doc/classes/Timer.xml:16
+#: doc/classes/Timer.xml:17
msgid "Returns [code]true[/code] if the timer is stopped."
msgstr ""
-#: doc/classes/Timer.xml:25
+#: doc/classes/Timer.xml:26
msgid ""
"Starts the timer. Sets [code]wait_time[/code] to [code]time_sec[/code] if "
"[code]time_sec > 0[/code]. This also resets the remaining time to "
@@ -51138,11 +51925,11 @@ msgid ""
"[b]Note:[/b] this method will not resume a paused timer. See [member paused]."
msgstr ""
-#: doc/classes/Timer.xml:33
+#: doc/classes/Timer.xml:34
msgid "Stops the timer."
msgstr ""
-#: doc/classes/Timer.xml:39
+#: doc/classes/Timer.xml:40
msgid ""
"If [code]true[/code], the timer will automatically start when entering the "
"scene tree.\n"
@@ -51150,40 +51937,40 @@ msgid ""
"the timer enters the scene tree and starts."
msgstr ""
-#: doc/classes/Timer.xml:43
+#: doc/classes/Timer.xml:44
msgid ""
"If [code]true[/code], the timer will stop when reaching 0. If [code]false[/"
"code], it will restart."
msgstr ""
-#: doc/classes/Timer.xml:46
+#: doc/classes/Timer.xml:47
msgid ""
"If [code]true[/code], the timer is paused and will not process until it is "
"unpaused again, even if [method start] is called."
msgstr ""
-#: doc/classes/Timer.xml:49
+#: doc/classes/Timer.xml:50
msgid "Processing mode. See [enum TimerProcessMode]."
msgstr ""
-#: doc/classes/Timer.xml:52
+#: doc/classes/Timer.xml:53
msgid ""
"The timer's remaining time in seconds. Returns 0 if the timer is inactive.\n"
"[b]Note:[/b] You cannot set this value. To change the timer's remaining "
"time, use [method start]."
msgstr ""
-#: doc/classes/Timer.xml:56
+#: doc/classes/Timer.xml:57
msgid "Wait time in seconds."
msgstr ""
-#: doc/classes/Timer.xml:68
+#: doc/classes/Timer.xml:69
msgid ""
"Update the timer during the physics step at each frame (fixed framerate "
"processing)."
msgstr ""
-#: doc/classes/Timer.xml:71
+#: doc/classes/Timer.xml:72
msgid "Update the timer during the idle time at each frame."
msgstr ""
@@ -51262,60 +52049,66 @@ msgstr ""
#: doc/classes/Transform.xml:7
msgid ""
-"Represents one or many transformations in 3D space such as translation, "
-"rotation, or scaling. It consists of a [member basis] and an [member "
-"origin]. It is similar to a 3×4 matrix."
+"3×4 matrix (3 rows, 4 columns) used for 3D linear transformations. It can "
+"represent transformations such as translation, rotation, or scaling. It "
+"consists of a [member basis] (first 3 columns) and a [Vector3] for the "
+"[member origin] (last column).\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
msgstr ""
-#: doc/classes/Transform.xml:26
+#: doc/classes/Transform.xml:28
msgid ""
-"Constructs the Transform from four [Vector3]. Each axis corresponds to local "
-"basis vectors (some of which may be scaled)."
+"Constructs a Transform from four [Vector3] values (matrix columns). Each "
+"axis corresponds to local basis vectors (some of which may be scaled)."
msgstr ""
-#: doc/classes/Transform.xml:37
-msgid "Constructs the Transform from a [Basis] and [Vector3]."
+#: doc/classes/Transform.xml:39
+msgid "Constructs a Transform from a [Basis] and [Vector3]."
msgstr ""
-#: doc/classes/Transform.xml:46
-msgid "Constructs the Transform from a [Transform2D]."
+#: doc/classes/Transform.xml:48
+msgid "Constructs a Transform from a [Transform2D]."
msgstr ""
-#: doc/classes/Transform.xml:55
+#: doc/classes/Transform.xml:57
msgid ""
-"Constructs the Transform from a [Quat]. The origin will be Vector3(0, 0, 0)."
+"Constructs a Transform from a [Quat]. The origin will be [code]Vector3(0, 0, "
+"0)[/code]."
msgstr ""
-#: doc/classes/Transform.xml:64
+#: doc/classes/Transform.xml:66
msgid ""
"Constructs the Transform from a [Basis]. The origin will be Vector3(0, 0, 0)."
msgstr ""
-#: doc/classes/Transform.xml:71
+#: doc/classes/Transform.xml:73 doc/classes/Transform2D.xml:51
msgid ""
"Returns the inverse of the transform, under the assumption that the "
"transformation is composed of rotation, scaling and translation."
msgstr ""
-#: doc/classes/Transform.xml:82
-msgid "Interpolates the transform to other Transform by weight amount (0-1)."
+#: doc/classes/Transform.xml:84
+msgid ""
+"Interpolates the transform to other Transform by weight amount (on the range "
+"of 0.0 to 1.0)."
msgstr ""
-#: doc/classes/Transform.xml:89 doc/classes/Transform2D.xml:106
+#: doc/classes/Transform.xml:91
msgid ""
"Returns the inverse of the transform, under the assumption that the "
"transformation is composed of rotation and translation (no scaling, use "
"affine_inverse for transforms with scaling)."
msgstr ""
-#: doc/classes/Transform.xml:98 doc/classes/Transform2D.xml:115
+#: doc/classes/Transform.xml:100 doc/classes/Transform2D.xml:119
msgid ""
"Returns [code]true[/code] if this transform and [code]transform[/code] are "
"approximately equal, by calling [code]is_equal_approx[/code] on each "
"component."
msgstr ""
-#: doc/classes/Transform.xml:109
+#: doc/classes/Transform.xml:111
msgid ""
"Returns a copy of the transform rotated such that its -Z axis points towards "
"the [code]target[/code] position.\n"
@@ -51325,25 +52118,25 @@ msgid ""
"Operations take place in global space."
msgstr ""
-#: doc/classes/Transform.xml:118 doc/classes/Transform2D.xml:122
+#: doc/classes/Transform.xml:120
msgid ""
"Returns the transform with the basis orthogonal (90 degrees), and normalized "
"axis vectors."
msgstr ""
-#: doc/classes/Transform.xml:129
+#: doc/classes/Transform.xml:131
msgid ""
"Rotates the transform around the given axis by the given angle (in radians), "
"using matrix multiplication. The axis must be a normalized vector."
msgstr ""
-#: doc/classes/Transform.xml:138
+#: doc/classes/Transform.xml:140
msgid ""
"Scales basis and origin of the transform by the given scale factor, using "
"matrix multiplication."
msgstr ""
-#: doc/classes/Transform.xml:147 doc/classes/Transform2D.xml:149
+#: doc/classes/Transform.xml:149 doc/classes/Transform2D.xml:153
msgid ""
"Translates the transform by the given offset, relative to the transform's "
"basis vectors.\n"
@@ -51351,152 +52144,162 @@ msgid ""
"multiplication."
msgstr ""
-#: doc/classes/Transform.xml:157
+#: doc/classes/Transform.xml:159
msgid ""
"Transforms the given [Vector3], [Plane], [AABB], or [PackedVector3Array] by "
"this transform."
msgstr ""
-#: doc/classes/Transform.xml:166
+#: doc/classes/Transform.xml:168
msgid ""
"Inverse-transforms the given [Vector3], [Plane], [AABB], or "
"[PackedVector3Array] by this transform."
msgstr ""
-#: doc/classes/Transform.xml:172
+#: doc/classes/Transform.xml:174
msgid ""
"The basis is a matrix containing 3 [Vector3] as its columns: X axis, Y axis, "
"and Z axis. These vectors can be interpreted as the basis vectors of local "
"coordinate system traveling with the object."
msgstr ""
-#: doc/classes/Transform.xml:175
-msgid "The translation offset of the transform."
+#: doc/classes/Transform.xml:177
+msgid ""
+"The translation offset of the transform (column 3, the fourth column). "
+"Equivalent to array index [code]3[/code]."
msgstr ""
-#: doc/classes/Transform.xml:180
+#: doc/classes/Transform.xml:182
msgid ""
"[Transform] with no translation, rotation or scaling applied. When applied "
"to other data structures, [constant IDENTITY] performs no transformation."
msgstr ""
-#: doc/classes/Transform.xml:183
+#: doc/classes/Transform.xml:185
msgid "[Transform] with mirroring applied perpendicular to the YZ plane."
msgstr ""
-#: doc/classes/Transform.xml:186
+#: doc/classes/Transform.xml:188
msgid "[Transform] with mirroring applied perpendicular to the XZ plane."
msgstr ""
-#: doc/classes/Transform.xml:189
+#: doc/classes/Transform.xml:191
msgid "[Transform] with mirroring applied perpendicular to the XY plane."
msgstr ""
#: doc/classes/Transform2D.xml:4
-msgid "2D transformation (3×2 matrix)."
+msgid "2D transformation (2×3 matrix)."
msgstr ""
#: doc/classes/Transform2D.xml:7
msgid ""
-"Represents one or many transformations in 2D space such as translation, "
-"rotation, or scaling. It consists of two [member x] and [member y] "
-"[Vector2]s and an [member origin]. It is similar to a 3×2 matrix."
+"2×3 matrix (2 rows, 3 columns) used for 2D linear transformations. It can "
+"represent transformations such as translation, rotation, or scaling. It "
+"consists of a three [Vector2] values: [member x], [member y], and the "
+"[member origin].\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
msgstr ""
-#: doc/classes/Transform2D.xml:18
+#: doc/classes/Transform2D.xml:20
msgid "Constructs the transform from a 3D [Transform]."
msgstr ""
-#: doc/classes/Transform2D.xml:31
+#: doc/classes/Transform2D.xml:33
msgid ""
-"Constructs the transform from 3 [Vector2]s representing x, y, and origin."
+"Constructs the transform from 3 [Vector2] values representing [member x], "
+"[member y], and the [member origin] (the three column vectors)."
msgstr ""
-#: doc/classes/Transform2D.xml:42
+#: doc/classes/Transform2D.xml:44
msgid "Constructs the transform from a given angle (in radians) and position."
msgstr ""
-#: doc/classes/Transform2D.xml:58
-msgid "Transforms the given vector by this transform's basis (no translation)."
+#: doc/classes/Transform2D.xml:60
+msgid ""
+"Returns a vector transformed (multiplied) by the basis matrix.\n"
+"This method does not account for translation (the origin vector)."
msgstr ""
-#: doc/classes/Transform2D.xml:67
+#: doc/classes/Transform2D.xml:70
msgid ""
-"Inverse-transforms the given vector by this transform's basis (no "
-"translation)."
+"Returns a vector transformed (multiplied) by the inverse basis matrix.\n"
+"This method does not account for translation (the origin vector)."
msgstr ""
-#: doc/classes/Transform2D.xml:74
+#: doc/classes/Transform2D.xml:78
msgid "Returns the transform's origin (translation)."
msgstr ""
-#: doc/classes/Transform2D.xml:81
+#: doc/classes/Transform2D.xml:85
msgid "Returns the transform's rotation (in radians)."
msgstr ""
-#: doc/classes/Transform2D.xml:88
+#: doc/classes/Transform2D.xml:92
msgid "Returns the scale."
msgstr ""
-#: doc/classes/Transform2D.xml:99
+#: doc/classes/Transform2D.xml:103
msgid ""
"Returns a transform interpolated between this transform and another by a "
-"given weight (0-1)."
+"given weight (on the range of 0.0 to 1.0)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:110
+msgid ""
+"Returns the inverse of the transform, under the assumption that the "
+"transformation is composed of rotation and translation (no scaling, use "
+"[method affine_inverse] for transforms with scaling)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:126
+msgid ""
+"Returns the transform with the basis orthogonal (90 degrees), and normalized "
+"axis vectors (scale of 1 or -1)."
msgstr ""
-#: doc/classes/Transform2D.xml:131
+#: doc/classes/Transform2D.xml:135
msgid ""
"Rotates the transform by the given angle (in radians), using matrix "
"multiplication."
msgstr ""
-#: doc/classes/Transform2D.xml:140
+#: doc/classes/Transform2D.xml:144
msgid ""
"Scales the transform by the given scale factor, using matrix multiplication."
msgstr ""
-#: doc/classes/Transform2D.xml:159
+#: doc/classes/Transform2D.xml:163
msgid ""
"Transforms the given [Vector2], [Rect2], or [PackedVector2Array] by this "
"transform."
msgstr ""
-#: doc/classes/Transform2D.xml:168
+#: doc/classes/Transform2D.xml:172
msgid ""
"Inverse-transforms the given [Vector2], [Rect2], or [PackedVector2Array] by "
"this transform."
msgstr ""
-#: doc/classes/Transform2D.xml:174
-msgid "The transform's translation offset."
-msgstr ""
-
-#: doc/classes/Transform2D.xml:177
-msgid ""
-"The X axis of 2×2 basis matrix containing 2 [Vector2]s as its columns: X "
-"axis and Y axis. These vectors can be interpreted as the basis vectors of "
-"local coordinate system traveling with the object."
-msgstr ""
-
-#: doc/classes/Transform2D.xml:180
+#: doc/classes/Transform2D.xml:178
msgid ""
-"The Y axis of 2×2 basis matrix containing 2 [Vector2]s as its columns: X "
-"axis and Y axis. These vectors can be interpreted as the basis vectors of "
-"local coordinate system traveling with the object."
+"The origin vector (column 2, the third column). Equivalent to array index "
+"[code]2[/code]. The origin vector represents translation."
msgstr ""
-#: doc/classes/Transform2D.xml:185
+#: doc/classes/Transform2D.xml:189
msgid ""
-"[Transform2D] with no translation, rotation or scaling applied. When applied "
-"to other data structures, [constant IDENTITY] performs no transformation."
+"The identity [Transform2D] with no translation, rotation or scaling applied. "
+"When applied to other data structures, [constant IDENTITY] performs no "
+"transformation."
msgstr ""
-#: doc/classes/Transform2D.xml:188
-msgid "[Transform2D] with mirroring applied parallel to the X axis."
+#: doc/classes/Transform2D.xml:192
+msgid "The [Transform2D] that will flip something along the X axis."
msgstr ""
-#: doc/classes/Transform2D.xml:191
-msgid "[Transform2D] with mirroring applied parallel to the Y axis."
+#: doc/classes/Transform2D.xml:195
+msgid "The [Transform2D] that will flip something along the Y axis."
msgstr ""
#: doc/classes/Translation.xml:4
@@ -52160,7 +52963,8 @@ msgid "Returns the column's cell mode."
msgstr ""
#: doc/classes/TreeItem.xml:121
-msgid "Returns the TreeItem's child items."
+msgid ""
+"Returns the TreeItem's first child item or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:130
@@ -52192,28 +52996,32 @@ msgid "Returns the icon [Texture2D] region as [Rect2]."
msgstr ""
#: doc/classes/TreeItem.xml:199
-msgid "Returns the next TreeItem in the tree."
+msgid ""
+"Returns the next TreeItem in the tree or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:208
msgid ""
-"Returns the next visible TreeItem in the tree.\n"
+"Returns the next visible TreeItem in the tree or a null object if there is "
+"none.\n"
"If [code]wrap[/code] is enabled, the method will wrap around to the first "
"visible element in the tree when called on the last visible element, "
"otherwise it returns [code]null[/code]."
msgstr ""
#: doc/classes/TreeItem.xml:216
-msgid "Returns the parent TreeItem."
+msgid "Returns the parent TreeItem or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:223
-msgid "Returns the previous TreeItem in the tree."
+msgid ""
+"Returns the previous TreeItem in the tree or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:232
msgid ""
-"Returns the previous visible TreeItem in the tree.\n"
+"Returns the previous visible TreeItem in the tree or a null object if there "
+"is none.\n"
"If [code]wrap[/code] is enabled, the method will wrap around to the last "
"visible element in the tree when called on the first visible element, "
"otherwise it returns [code]null[/code]."
@@ -52723,6 +53531,10 @@ msgid ""
"A simple server that opens a UDP socket and returns connected "
"[PacketPeerUDP] upon receiving new packets. See also [method PacketPeerUDP."
"connect_to_host].\n"
+"After starting the server ([method listen]), you will need to [method poll] "
+"it at regular intervals (e.g. inside [method Node._process]) for it to "
+"process new packets, delivering them to the appropriate [PacketPeerUDP], and "
+"taking new connections.\n"
"Below a small example of how it can be used:\n"
"[codeblock]\n"
"# server.gd\n"
@@ -52735,6 +53547,7 @@ msgid ""
" server.listen(4242)\n"
"\n"
"func _process(delta):\n"
+" server.poll() # Important!\n"
" if server.is_connection_available():\n"
" var peer : PacketPeerUDP = server.take_connection()\n"
" var pkt = peer.get_packet()\n"
@@ -52770,35 +53583,55 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/UDPServer.xml:60
+#: doc/classes/UDPServer.xml:62
msgid ""
-"Returns [code]true[/code] if a packet with a new address/port combination is "
-"received on the socket."
+"Returns [code]true[/code] if a packet with a new address/port combination "
+"was received on the socket."
msgstr ""
-#: doc/classes/UDPServer.xml:67
+#: doc/classes/UDPServer.xml:69
msgid ""
"Returns [code]true[/code] if the socket is open and listening on a port."
msgstr ""
-#: doc/classes/UDPServer.xml:78
+#: doc/classes/UDPServer.xml:80
msgid ""
"Starts the server by opening a UDP socket listening on the given port. You "
"can optionally specify a [code]bind_address[/code] to only listen for "
"packets sent to that address. See also [method PacketPeerUDP.listen]."
msgstr ""
-#: doc/classes/UDPServer.xml:85
+#: doc/classes/UDPServer.xml:87
+msgid ""
+"Call this method at regular intervals (e.g. inside [method Node._process]) "
+"to process new packets. And packet from known address/port pair will be "
+"delivered to the appropriate [PacketPeerUDP], any packet received from an "
+"unknown address/port pair will be added as a pending connection (see [method "
+"is_connection_available], [method take_connection]). The maximum number of "
+"pending connection is defined via [member max_pending_connections]."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:94
+msgid ""
+"Stops the server, closing the UDP socket if open. Will close all connected "
+"[PacketPeerUDP] accepted via [method take_connection] (remote peers will not "
+"be notified)."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:101
msgid ""
-"Stops the server, closing the UDP socket if open. Will not disconnect any "
-"connected [PacketPeerUDP]."
+"Returns the first pending connection (connected to the appropriate address/"
+"port). Will return [code]null[/code] if no new connection is available. See "
+"also [method is_connection_available], [method PacketPeerUDP."
+"connect_to_host]."
msgstr ""
-#: doc/classes/UDPServer.xml:92
+#: doc/classes/UDPServer.xml:107
msgid ""
-"Returns a [PacketPeerUDP] connected to the address/port combination of the "
-"first packet in queue. Will return [code]null[/code] if no packet is in "
-"queue. See also [method PacketPeerUDP.connect_to_host]."
+"Define the maximum number of pending connections, during [method poll], any "
+"new pending connection exceeding that value will be automatically dropped. "
+"Setting this value to [code]0[/code] effectively prevents any new pending "
+"connection to be accepted (e.g. when all your players have connected)."
msgstr ""
#: doc/classes/UndoRedo.xml:4
@@ -53439,24 +54272,27 @@ msgstr ""
#: doc/classes/Vector2.xml:46
msgid ""
-"Returns the vector's angle in radians with respect to the X axis, or [code]"
-"(1, 0)[/code] vector.\n"
+"Returns this vector's angle with respect to the X axis, or [code](1, 0)[/"
+"code] vector, in radians.\n"
"Equivalent to the result of [method @GDScript.atan2] when called with the "
-"vector's [member x] and [member y] as parameters: [code]atan2(x, y)[/code]."
+"vector's [member y] and [member x] as parameters: [code]atan2(y, x)[/code]."
msgstr ""
#: doc/classes/Vector2.xml:56
-msgid "Returns the angle in radians between the two vectors."
-msgstr ""
+#, fuzzy
+msgid "Returns the angle to the given vector, in radians."
+msgstr "Повертає лишок за двома векторами."
#: doc/classes/Vector2.xml:65
msgid ""
-"Returns the angle in radians between the line connecting the two points and "
-"the X coordinate."
+"Returns the angle between the line connecting the two points and the X axis, "
+"in radians."
msgstr ""
-#: doc/classes/Vector2.xml:72 doc/classes/Vector2i.xml:46
-msgid "Returns the ratio of [member x] to [member y]."
+#: doc/classes/Vector2.xml:72
+msgid ""
+"Returns the aspect ratio of this vector, the ratio of [member x] to [member "
+"y]."
msgstr ""
#: doc/classes/Vector2.xml:81 doc/classes/Vector3.xml:59
@@ -53465,24 +54301,28 @@ msgid ""
msgstr ""
#: doc/classes/Vector2.xml:88
-msgid "Returns the vector with all components rounded up."
+msgid ""
+"Returns the vector with all components rounded up (towards positive "
+"infinity)."
msgstr ""
#: doc/classes/Vector2.xml:97
-msgid "Returns the vector with a maximum length."
+msgid ""
+"Returns the vector with a maximum length by limiting its length to "
+"[code]length[/code]."
msgstr ""
#: doc/classes/Vector2.xml:106
-msgid ""
-"Returns the 2-dimensional analog of the cross product with the given vector."
-msgstr ""
+#, fuzzy
+msgid "Returns the cross product of this vector and [code]with[/code]."
+msgstr "ОбчиÑлює векторний добуток двох векторів."
#: doc/classes/Vector2.xml:121
msgid ""
"Cubically interpolates between this vector and [code]b[/code] using "
"[code]pre_a[/code] and [code]post_b[/code] as handles, and returns the "
-"result at position [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation."
+"result at position [code]t[/code]. [code]t[/code] is on the range of 0.0 to "
+"1.0, representing the amount of interpolation."
msgstr ""
#: doc/classes/Vector2.xml:130 doc/classes/Vector3.xml:99
@@ -53490,182 +54330,199 @@ msgid ""
"Returns the normalized vector pointing from this vector to [code]b[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:139
+#: doc/classes/Vector2.xml:139 doc/classes/Vector3.xml:108
msgid ""
-"Returns the squared distance to vector [code]b[/code]. Prefer this function "
-"over [method distance_to] if you need to sort vectors or need the squared "
-"distance for some formula."
+"Returns the squared distance between this vector and [code]b[/code].\n"
+"This method runs faster than [method distance_to], so prefer it if you need "
+"to compare vectors or need the squared distance for some formula."
msgstr ""
-#: doc/classes/Vector2.xml:148
-msgid "Returns the distance to vector [code]b[/code]."
+#: doc/classes/Vector2.xml:149
+msgid "Returns the distance between this vector and [code]to[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:157
-msgid "Returns the dot product with vector [code]b[/code]."
+#: doc/classes/Vector2.xml:158
+msgid ""
+"Returns the dot product of this vector and [code]with[/code]. This can be "
+"used to compare the angle between two vectors. For example, this can be used "
+"to determine whether an enemy is facing the player.\n"
+"The dot product will be [code]0[/code] for a straight angle (90 degrees), "
+"greater than 0 for angles narrower than 90 degrees and lower than 0 for "
+"angles wider than 90 degrees.\n"
+"When using unit (normalized) vectors, the result will always be between "
+"[code]-1.0[/code] (180 degree angle) when the vectors are facing opposite "
+"directions, and [code]1.0[/code] (0 degree angle) when the vectors are "
+"aligned.\n"
+"[b]Note:[/b] [code]a.dot(b)[/code] is equivalent to [code]b.dot(a)[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:164
-msgid "Returns the vector with all components rounded down."
+#: doc/classes/Vector2.xml:168
+msgid ""
+"Returns the vector with all components rounded down (towards negative "
+"infinity)."
msgstr ""
-#: doc/classes/Vector2.xml:173 doc/classes/Vector3.xml:149
+#: doc/classes/Vector2.xml:177 doc/classes/Vector3.xml:153
msgid ""
"Returns [code]true[/code] if this vector and [code]v[/code] are "
"approximately equal, by running [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/Vector2.xml:180 doc/classes/Vector3.xml:156
-msgid "Returns [code]true[/code] if the vector is normalized."
+#: doc/classes/Vector2.xml:184 doc/classes/Vector3.xml:160
+msgid ""
+"Returns [code]true[/code] if the vector is normalized, and false otherwise."
msgstr ""
-#: doc/classes/Vector2.xml:187 doc/classes/Vector3.xml:163
-msgid "Returns the vector's length."
-msgstr ""
+#: doc/classes/Vector2.xml:191 doc/classes/Vector3.xml:167
+#, fuzzy
+msgid "Returns the length (magnitude) of this vector."
+msgstr "Повертає лишок за двома векторами."
-#: doc/classes/Vector2.xml:194
+#: doc/classes/Vector2.xml:198 doc/classes/Vector3.xml:174
msgid ""
-"Returns the vector's length squared. Prefer this method over [method length] "
-"if you need to sort vectors or need the squared length for some formula."
+"Returns the squared length (squared magnitude) of this vector.\n"
+"This method runs faster than [method length], so prefer it if you need to "
+"compare vectors or need the squared distance for some formula."
msgstr ""
-#: doc/classes/Vector2.xml:205
+#: doc/classes/Vector2.xml:210 doc/classes/Vector3.xml:186
msgid ""
"Returns the result of the linear interpolation between this vector and "
-"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation."
+"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is on the range of "
+"0.0 to 1.0, representing the amount of interpolation."
msgstr ""
-#: doc/classes/Vector2.xml:216 doc/classes/Vector3.xml:206
+#: doc/classes/Vector2.xml:221
msgid ""
"Moves the vector toward [code]to[/code] by the fixed [code]delta[/code] "
"amount."
msgstr ""
-#: doc/classes/Vector2.xml:223 doc/classes/Vector3.xml:213
+#: doc/classes/Vector2.xml:228 doc/classes/Vector3.xml:218
msgid ""
"Returns the vector scaled to unit length. Equivalent to [code]v / v.length()"
"[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:232 doc/classes/Vector3.xml:231
+#: doc/classes/Vector2.xml:237 doc/classes/Vector3.xml:236
msgid ""
-"Returns a vector composed of the [code]fposmod[/code] of this vector's "
+"Returns a vector composed of the [method @GDScript.fposmod] of this vector's "
"components and [code]mod[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:241 doc/classes/Vector3.xml:240
+#: doc/classes/Vector2.xml:246 doc/classes/Vector3.xml:245
msgid ""
-"Returns a vector composed of the [code]fposmod[/code] of this vector's "
+"Returns a vector composed of the [method @GDScript.fposmod] of this vector's "
"components and [code]modv[/code]'s components."
msgstr ""
-#: doc/classes/Vector2.xml:250 doc/classes/Vector3.xml:249
+#: doc/classes/Vector2.xml:255
msgid "Returns the vector projected onto the vector [code]b[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:259 doc/classes/Vector3.xml:258
+#: doc/classes/Vector2.xml:264
msgid "Returns the vector reflected from a plane defined by the given normal."
msgstr ""
-#: doc/classes/Vector2.xml:268
+#: doc/classes/Vector2.xml:273
msgid ""
"Returns the vector rotated by [code]phi[/code] radians. See also [method "
"@GDScript.deg2rad]."
msgstr ""
-#: doc/classes/Vector2.xml:275 doc/classes/Vector3.xml:276
+#: doc/classes/Vector2.xml:280
msgid ""
"Returns the vector with all components rounded to the nearest integer, with "
"halfway cases rounded away from zero."
msgstr ""
-#: doc/classes/Vector2.xml:282 doc/classes/Vector2i.xml:53
-#: doc/classes/Vector3.xml:283 doc/classes/Vector3i.xml:55
+#: doc/classes/Vector2.xml:287
msgid ""
"Returns the vector with each component set to one or negative one, depending "
-"on the signs of the components."
+"on the signs of the components, or zero if the component is zero, by calling "
+"[method @GDScript.sign] on each component."
msgstr ""
-#: doc/classes/Vector2.xml:293 doc/classes/Vector3.xml:294
+#: doc/classes/Vector2.xml:298 doc/classes/Vector3.xml:299
msgid ""
"Returns the result of spherical linear interpolation between this vector and "
-"[code]b[/code], by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation.\n"
+"[code]b[/code], by amount [code]t[/code]. [code]t[/code] is on the range of "
+"0.0 to 1.0, representing the amount of interpolation.\n"
"[b]Note:[/b] Both vectors must be normalized."
msgstr ""
-#: doc/classes/Vector2.xml:303 doc/classes/Vector3.xml:304
-msgid ""
-"Returns the component of the vector along a plane defined by the given "
-"normal."
+#: doc/classes/Vector2.xml:308 doc/classes/Vector3.xml:309
+msgid "Returns this vector slid along a plane defined by the given normal."
msgstr ""
-#: doc/classes/Vector2.xml:312 doc/classes/Vector3.xml:313
-msgid "Returns the vector snapped to a grid with the given size."
+#: doc/classes/Vector2.xml:317 doc/classes/Vector3.xml:318
+msgid ""
+"Returns this vector with each component snapped to the nearest multiple of "
+"[code]step[/code]. This can also be used to round to an arbitrary number of "
+"decimals."
msgstr ""
-#: doc/classes/Vector2.xml:319
-msgid "Returns a perpendicular vector."
+#: doc/classes/Vector2.xml:324
+msgid ""
+"Returns a perpendicular vector rotated 90 degrees counter-clockwise compared "
+"to the original, with the same length."
msgstr ""
-#: doc/classes/Vector2.xml:325 doc/classes/Vector2i.xml:59
-#: doc/classes/Vector3.xml:326 doc/classes/Vector3i.xml:61
+#: doc/classes/Vector2.xml:330 doc/classes/Vector2i.xml:59
+#: doc/classes/Vector3.xml:332 doc/classes/Vector3i.xml:61
msgid ""
"The vector's X component. Also accessible by using the index position [code]"
"[0][/code]."
msgstr ""
-#: doc/classes/Vector2.xml:328 doc/classes/Vector2i.xml:62
-#: doc/classes/Vector3.xml:329 doc/classes/Vector3i.xml:64
+#: doc/classes/Vector2.xml:333 doc/classes/Vector2i.xml:62
+#: doc/classes/Vector3.xml:335 doc/classes/Vector3i.xml:64
msgid ""
"The vector's Y component. Also accessible by using the index position [code]"
"[1][/code]."
msgstr ""
-#: doc/classes/Vector2.xml:333 doc/classes/Vector2i.xml:67
+#: doc/classes/Vector2.xml:338 doc/classes/Vector2i.xml:67
#: doc/classes/Vector3i.xml:72
msgid "Enumerated value for the X axis."
msgstr ""
-#: doc/classes/Vector2.xml:336 doc/classes/Vector2i.xml:70
+#: doc/classes/Vector2.xml:341 doc/classes/Vector2i.xml:70
#: doc/classes/Vector3i.xml:75
msgid "Enumerated value for the Y axis."
msgstr ""
-#: doc/classes/Vector2.xml:339 doc/classes/Vector2i.xml:73
-#: doc/classes/Vector3.xml:346 doc/classes/Vector3i.xml:81
-msgid "Zero vector."
+#: doc/classes/Vector2.xml:344 doc/classes/Vector2i.xml:73
+#: doc/classes/Vector3.xml:352 doc/classes/Vector3i.xml:81
+msgid "Zero vector, a vector with all components set to [code]0[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:342 doc/classes/Vector2i.xml:76
-#: doc/classes/Vector3.xml:349 doc/classes/Vector3i.xml:84
-msgid "One vector."
+#: doc/classes/Vector2.xml:347 doc/classes/Vector2i.xml:76
+#: doc/classes/Vector3.xml:355 doc/classes/Vector3i.xml:84
+msgid "One vector, a vector with all components set to [code]1[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:345 doc/classes/Vector3.xml:352
-msgid "Infinity vector."
+#: doc/classes/Vector2.xml:350 doc/classes/Vector3.xml:358
+msgid ""
+"Infinity vector, a vector with all components set to [constant @GDScript."
+"INF]."
msgstr ""
-#: doc/classes/Vector2.xml:348 doc/classes/Vector2i.xml:79
-#: doc/classes/Vector3.xml:355 doc/classes/Vector3i.xml:87
-msgid "Left unit vector."
+#: doc/classes/Vector2.xml:353 doc/classes/Vector2i.xml:79
+msgid "Left unit vector. Represents the direction of left."
msgstr ""
-#: doc/classes/Vector2.xml:351 doc/classes/Vector2i.xml:82
-#: doc/classes/Vector3.xml:358 doc/classes/Vector3i.xml:90
-msgid "Right unit vector."
+#: doc/classes/Vector2.xml:356 doc/classes/Vector2i.xml:82
+msgid "Right unit vector. Represents the direction of right."
msgstr ""
-#: doc/classes/Vector2.xml:354 doc/classes/Vector2i.xml:85
-#: doc/classes/Vector3.xml:361 doc/classes/Vector3i.xml:93
-msgid "Up unit vector."
+#: doc/classes/Vector2.xml:359 doc/classes/Vector2i.xml:85
+msgid "Up unit vector. Y is down in 2D, so this vector points -Y."
msgstr ""
-#: doc/classes/Vector2.xml:357 doc/classes/Vector2i.xml:88
-#: doc/classes/Vector3.xml:364 doc/classes/Vector3i.xml:96
-msgid "Down unit vector."
+#: doc/classes/Vector2.xml:362 doc/classes/Vector2i.xml:88
+msgid "Down unit vector. Y is down in 2D, so this vector points +Y."
msgstr ""
#: doc/classes/Vector2i.xml:4
@@ -53694,6 +54551,16 @@ msgid ""
"will be truncated."
msgstr ""
+#: doc/classes/Vector2i.xml:46
+msgid "Returns the ratio of [member x] to [member y]."
+msgstr ""
+
+#: doc/classes/Vector2i.xml:53 doc/classes/Vector3i.xml:55
+msgid ""
+"Returns the vector with each component set to one or negative one, depending "
+"on the signs of the components."
+msgstr ""
+
#: doc/classes/Vector3.xml:4
msgid "Vector used for 3D math using floating point coordinates."
msgstr ""
@@ -53718,120 +54585,172 @@ msgid "Returns a [Vector3] with the given components."
msgstr ""
#: doc/classes/Vector3.xml:50
-msgid "Returns the minimum angle to the given vector."
-msgstr ""
+#, fuzzy
+msgid "Returns the minimum angle to the given vector, in radians."
+msgstr "Повертає лишок за двома векторами."
#: doc/classes/Vector3.xml:66
-msgid "Returns a new vector with all components rounded up."
+msgid ""
+"Returns a new vector with all components rounded up (towards positive "
+"infinity)."
msgstr ""
#: doc/classes/Vector3.xml:75
-msgid "Returns the cross product with [code]b[/code]."
-msgstr ""
+#, fuzzy
+msgid "Returns the cross product of this vector and [code]b[/code]."
+msgstr "ОбчиÑлює векторний добуток двох векторів."
#: doc/classes/Vector3.xml:90
msgid ""
"Performs a cubic interpolation between vectors [code]pre_a[/code], [code]a[/"
"code], [code]b[/code], [code]post_b[/code] ([code]a[/code] is current), by "
-"the given amount [code]t[/code]. [code]t[/code] is in the range of [code]0.0 "
-"- 1.0[/code], representing the amount of interpolation."
+"the given amount [code]t[/code]. [code]t[/code] is on the range of 0.0 to "
+"1.0, representing the amount of interpolation."
msgstr ""
-#: doc/classes/Vector3.xml:108
-msgid ""
-"Returns the squared distance to [code]b[/code]. Prefer this function over "
-"[method distance_to] if you need to sort vectors or need the squared "
-"distance for some formula."
+#: doc/classes/Vector3.xml:118
+msgid "Returns the distance between this vector and [code]b[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:117
-msgid "Returns the distance to [code]b[/code]."
-msgstr ""
-
-#: doc/classes/Vector3.xml:126
-msgid "Returns the dot product with [code]b[/code]."
+#: doc/classes/Vector3.xml:127
+msgid ""
+"Returns the dot product of this vector and [code]b[/code]. This can be used "
+"to compare the angle between two vectors. For example, this can be used to "
+"determine whether an enemy is facing the player.\n"
+"The dot product will be [code]0[/code] for a straight angle (90 degrees), "
+"greater than 0 for angles narrower than 90 degrees and lower than 0 for "
+"angles wider than 90 degrees.\n"
+"When using unit (normalized) vectors, the result will always be between "
+"[code]-1.0[/code] (180 degree angle) when the vectors are facing opposite "
+"directions, and [code]1.0[/code] (0 degree angle) when the vectors are "
+"aligned.\n"
+"[b]Note:[/b] [code]a.dot(b)[/code] is equivalent to [code]b.dot(a)[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:133
-msgid "Returns a new vector with all components rounded down."
+#: doc/classes/Vector3.xml:137
+msgid ""
+"Returns a new vector with all components rounded down (towards negative "
+"infinity)."
msgstr ""
-#: doc/classes/Vector3.xml:140
+#: doc/classes/Vector3.xml:144
msgid ""
"Returns the inverse of the vector. This is the same as [code]Vector3( 1.0 / "
"v.x, 1.0 / v.y, 1.0 / v.z )[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:170
+#: doc/classes/Vector3.xml:193 doc/classes/Vector3i.xml:41
msgid ""
-"Returns the vector's length squared. Prefer this function over [method "
-"length] if you need to sort vectors or need the squared length for some "
-"formula."
+"Returns the axis of the vector's largest value. See [code]AXIS_*[/code] "
+"constants. If all components are equal, this method returns [constant "
+"AXIS_X]."
msgstr ""
-#: doc/classes/Vector3.xml:181
+#: doc/classes/Vector3.xml:200 doc/classes/Vector3i.xml:48
msgid ""
-"Returns the result of the linear interpolation between this vector and "
-"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation.."
+"Returns the axis of the vector's smallest value. See [code]AXIS_*[/code] "
+"constants. If all components are equal, this method returns [constant "
+"AXIS_Z]."
msgstr ""
-#: doc/classes/Vector3.xml:188 doc/classes/Vector3i.xml:41
+#: doc/classes/Vector3.xml:211
msgid ""
-"Returns the axis of the vector's largest value. See [code]AXIS_*[/code] "
-"constants."
+"Moves this vector toward [code]to[/code] by the fixed [code]delta[/code] "
+"amount."
+msgstr ""
+
+#: doc/classes/Vector3.xml:227
+msgid "Returns the outer product with [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:254
+msgid "Returns this vector projected onto another vector [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:263
+msgid "Returns this vector reflected from a plane defined by the given normal."
msgstr ""
-#: doc/classes/Vector3.xml:195 doc/classes/Vector3i.xml:48
+#: doc/classes/Vector3.xml:274
msgid ""
-"Returns the axis of the vector's smallest value. See [code]AXIS_*[/code] "
-"constants."
+"Rotates this vector around a given axis by [code]phi[/code] radians. The "
+"axis must be a normalized vector."
msgstr ""
-#: doc/classes/Vector3.xml:222
-msgid "Returns the outer product with [code]b[/code]."
+#: doc/classes/Vector3.xml:281
+msgid ""
+"Returns this vector with all components rounded to the nearest integer, with "
+"halfway cases rounded away from zero."
msgstr ""
-#: doc/classes/Vector3.xml:269
+#: doc/classes/Vector3.xml:288
msgid ""
-"Rotates the vector around a given axis by [code]phi[/code] radians. The axis "
-"must be a normalized vector."
+"Returns a vector with each component set to one or negative one, depending "
+"on the signs of this vector's components, or zero if the component is zero, "
+"by calling [method @GDScript.sign] on each component."
msgstr ""
-#: doc/classes/Vector3.xml:320
-msgid "Returns a diagonal matrix with the vector as main diagonal."
+#: doc/classes/Vector3.xml:325
+msgid ""
+"Returns a diagonal matrix with the vector as main diagonal.\n"
+"This is equivalent to a Basis with no rotation or shearing and this vector's "
+"components set as the scale."
msgstr ""
-#: doc/classes/Vector3.xml:332 doc/classes/Vector3i.xml:67
+#: doc/classes/Vector3.xml:338 doc/classes/Vector3i.xml:67
msgid ""
"The vector's Z component. Also accessible by using the index position [code]"
"[2][/code]."
msgstr ""
-#: doc/classes/Vector3.xml:337
+#: doc/classes/Vector3.xml:343
msgid ""
"Enumerated value for the X axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:340
+#: doc/classes/Vector3.xml:346
msgid ""
"Enumerated value for the Y axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:343
+#: doc/classes/Vector3.xml:349
msgid ""
"Enumerated value for the Z axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:367 doc/classes/Vector3i.xml:99
-msgid "Forward unit vector."
+#: doc/classes/Vector3.xml:361 doc/classes/Vector3i.xml:87
+msgid ""
+"Left unit vector. Represents the local direction of left, and the global "
+"direction of west."
+msgstr ""
+
+#: doc/classes/Vector3.xml:364 doc/classes/Vector3i.xml:90
+msgid ""
+"Right unit vector. Represents the local direction of right, and the global "
+"direction of east."
+msgstr ""
+
+#: doc/classes/Vector3.xml:367 doc/classes/Vector3i.xml:93
+msgid "Up unit vector."
msgstr ""
-#: doc/classes/Vector3.xml:370 doc/classes/Vector3i.xml:102
-msgid "Back unit vector."
+#: doc/classes/Vector3.xml:370 doc/classes/Vector3i.xml:96
+msgid "Down unit vector."
+msgstr ""
+
+#: doc/classes/Vector3.xml:373 doc/classes/Vector3i.xml:99
+msgid ""
+"Forward unit vector. Represents the local direction of forward, and the "
+"global direction of north."
+msgstr ""
+
+#: doc/classes/Vector3.xml:376 doc/classes/Vector3i.xml:102
+msgid ""
+"Back unit vector. Represents the local direction of back, and the global "
+"direction of south."
msgstr ""
#: doc/classes/Vector3i.xml:4
@@ -53880,10 +54799,14 @@ msgid ""
"directly.\n"
"[b]Note:[/b] The origin point of your VehicleBody3D will determine the "
"center of gravity of your vehicle so it is better to keep this low and move "
-"the [CollisionShape3D] and [MeshInstance3D] upwards."
+"the [CollisionShape3D] and [MeshInstance3D] upwards.\n"
+"[b]Note:[/b] This class has known issues and isn't designed to provide "
+"realistic 3D vehicle physics. If you want advanced vehicle physics, you will "
+"probably have to write your own physics integration using another "
+"[PhysicsBody3D] class."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:16
+#: doc/classes/VehicleBody3D.xml:17
msgid ""
"Slows down the vehicle by applying a braking force. The vehicle is only "
"slowed down if the wheels are in contact with a surface. The force you need "
@@ -53892,7 +54815,7 @@ msgid ""
"a value in the 25 - 30 range for hard braking."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:19
+#: doc/classes/VehicleBody3D.xml:20
msgid ""
"Accelerates the vehicle by applying an engine force. The vehicle is only "
"speed up if the wheels that have [member VehicleWheel3D.use_as_traction] set "
@@ -53905,7 +54828,7 @@ msgid ""
"A negative value will result in the vehicle reversing."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:25
+#: doc/classes/VehicleBody3D.xml:26
msgid ""
"The steering angle for the vehicle. Setting this to a non-zero value will "
"result in the vehicle turning when it's moving. Wheels that have [member "
@@ -53921,25 +54844,29 @@ msgstr ""
msgid ""
"This node needs to be used as a child node of [VehicleBody3D] and simulates "
"the behavior of one of its wheels. This node also acts as a collider to "
-"detect if the wheel is touching a surface."
+"detect if the wheel is touching a surface.\n"
+"[b]Note:[/b] This class has known issues and isn't designed to provide "
+"realistic 3D vehicle physics. If you want advanced vehicle physics, you will "
+"probably have to write your own physics integration using another "
+"[PhysicsBody3D] class."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:16
+#: doc/classes/VehicleWheel3D.xml:17
msgid "Returns the rotational speed of the wheel in revolutions per minute."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:23
+#: doc/classes/VehicleWheel3D.xml:24
msgid ""
"Returns a value between 0.0 and 1.0 that indicates whether this wheel is "
"skidding. 0.0 is skidding (the wheel has lost grip, e.g. icy terrain), 1.0 "
"means not skidding (the wheel has full grip, e.g. dry asphalt road)."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:30
+#: doc/classes/VehicleWheel3D.xml:31
msgid "Returns [code]true[/code] if this wheel is in contact with a surface."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:36
+#: doc/classes/VehicleWheel3D.xml:37
msgid ""
"Slows down the wheel by applying a braking force. The wheel is only slowed "
"down if it is in contact with a surface. The force you need to apply to "
@@ -53948,7 +54875,7 @@ msgid ""
"- 30 range for hard braking."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:39
+#: doc/classes/VehicleWheel3D.xml:40
msgid ""
"The damping applied to the spring when the spring is being compressed. This "
"value should be between 0.0 (no damping) and 1.0. A value of 0.0 means the "
@@ -53956,7 +54883,7 @@ msgid ""
"is around 0.3 for a normal car, 0.5 for a race car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:42
+#: doc/classes/VehicleWheel3D.xml:43
msgid ""
"The damping applied to the spring when relaxing. This value should be "
"between 0.0 (no damping) and 1.0. This value should always be slightly "
@@ -53964,7 +54891,7 @@ msgid ""
"damping_compression] value of 0.3, try a relaxation value of 0.5."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:45
+#: doc/classes/VehicleWheel3D.xml:46
msgid ""
"Accelerates the wheel by applying an engine force. The wheel is only speed "
"up if it is in contact with a surface. The [member RigidBody3D.mass] of the "
@@ -53975,13 +54902,13 @@ msgid ""
"A negative value will result in the wheel reversing."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:50
+#: doc/classes/VehicleWheel3D.xml:51
msgid ""
"The steering angle for the wheel. Setting this to a non-zero value will "
"result in the vehicle turning when it's moving."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:53
+#: doc/classes/VehicleWheel3D.xml:54
msgid ""
"The maximum force the spring can resist. This value should be higher than a "
"quarter of the [member RigidBody3D.mass] of the [VehicleBody3D] or the "
@@ -53989,28 +54916,28 @@ msgid ""
"obtained by a value that is about 3× to 4× this number."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:56
+#: doc/classes/VehicleWheel3D.xml:57
msgid ""
"This value defines the stiffness of the suspension. Use a value lower than "
"50 for an off-road car, a value between 50 and 100 for a race car and try "
"something around 200 for something like a Formula 1 car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:59
+#: doc/classes/VehicleWheel3D.xml:60
msgid ""
"This is the distance the suspension can travel. As Godot units are "
"equivalent to meters, keep this setting relatively low. Try a value between "
"0.1 and 0.3 depending on the type of car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:62
+#: doc/classes/VehicleWheel3D.xml:63
msgid ""
"If [code]true[/code], this wheel will be turned when the car steers. This "
"value is used in conjunction with [member VehicleBody3D.steering] and "
"ignored if you are using the per-wheel [member steering] value instead."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:65
+#: doc/classes/VehicleWheel3D.xml:66
msgid ""
"If [code]true[/code], this wheel transfers engine force to the ground to "
"propel the vehicle forward. This value is used in conjunction with [member "
@@ -54018,7 +54945,7 @@ msgid ""
"[member engine_force] value instead."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:68
+#: doc/classes/VehicleWheel3D.xml:69
msgid ""
"This determines how much grip this wheel has. It is combined with the "
"friction setting of the surface the wheel is in contact with. 0.0 means no "
@@ -54028,11 +54955,11 @@ msgid ""
"It's best to set this to 1.0 when starting out."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:72
+#: doc/classes/VehicleWheel3D.xml:73
msgid "The radius of the wheel in meters."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:75
+#: doc/classes/VehicleWheel3D.xml:76
msgid ""
"This is the distance in meters the wheel is lowered from its origin point. "
"Don't set this to 0.0 and move the wheel into position, instead move the "
@@ -54041,7 +54968,7 @@ msgid ""
"down to the position it should be in when the car is in rest."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:78
+#: doc/classes/VehicleWheel3D.xml:79
msgid ""
"This value affects the roll of your vehicle. If set to 1.0 for all wheels, "
"your vehicle will be prone to rolling over, while a value of 0.0 will resist "
@@ -54519,7 +55446,7 @@ msgstr ""
#: doc/classes/Viewport.xml:318
msgid ""
"Use fast approximate antialiasing. FXAA is a popular screen-space "
-"antialising method, which is fast but will make the image look blurry, "
+"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."
msgstr ""
@@ -54572,24 +55499,24 @@ msgid ""
"your [WorldEnvironment]."
msgstr ""
-#: doc/classes/Viewport.xml:384
+#: doc/classes/Viewport.xml:381
msgid ""
"Colors each PSSM split for the [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, and yellow."
msgstr ""
-#: doc/classes/Viewport.xml:387
+#: doc/classes/Viewport.xml:384
msgid ""
"Draws the decal atlas used by [Decal]s and light projector textures in the "
"upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/Viewport.xml:402
+#: doc/classes/Viewport.xml:405
msgid "Max value for [enum DefaultCanvasItemTextureFilter] enum."
msgstr ""
-#: doc/classes/Viewport.xml:414
+#: doc/classes/Viewport.xml:417
msgid "Max value for [enum DefaultCanvasItemTextureRepeat] enum."
msgstr ""
@@ -54620,82 +55547,84 @@ msgid ""
"The VisibilityEnabler2D will disable [RigidBody2D], [AnimationPlayer], and "
"other nodes when they are not visible. It will only affect nodes with the "
"same root node as the VisibilityEnabler2D, and the root node itself.\n"
+"If you just want to receive notifications, use [VisibilityNotifier2D] "
+"instead.\n"
"[b]Note:[/b] For performance reasons, VisibilityEnabler2D uses an "
"approximate heuristic with precision determined by [member ProjectSettings."
-"world/2d/cell_size]. If you need exact visibility checking, use another "
+"world/2d/cell_size]. If you need precise visibility checking, use another "
"method such as adding an [Area2D] node as a child of a [Camera2D] node.\n"
"[b]Note:[/b] VisibilityEnabler2D will not affect nodes added after scene "
"initialization."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:20
-#: doc/classes/VisibilityEnabler3D.xml:20
+#: doc/classes/VisibilityEnabler2D.xml:21
+#: doc/classes/VisibilityEnabler3D.xml:21
msgid ""
"Returns whether the enabler identified by given [enum Enabler] constant is "
"active."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:31
-#: doc/classes/VisibilityEnabler3D.xml:31
+#: doc/classes/VisibilityEnabler2D.xml:32
+#: doc/classes/VisibilityEnabler3D.xml:32
msgid ""
"Sets active state of the enabler identified by given [enum Enabler] constant."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:37
+#: doc/classes/VisibilityEnabler2D.xml:38
msgid "If [code]true[/code], [RigidBody2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:40
+#: doc/classes/VisibilityEnabler2D.xml:41
msgid "If [code]true[/code], [AnimatedSprite2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:43
-#: doc/classes/VisibilityEnabler3D.xml:40
+#: doc/classes/VisibilityEnabler2D.xml:44
+#: doc/classes/VisibilityEnabler3D.xml:41
msgid "If [code]true[/code], [AnimationPlayer] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:46
+#: doc/classes/VisibilityEnabler2D.xml:47
msgid "If [code]true[/code], [GPUParticles2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:49
+#: doc/classes/VisibilityEnabler2D.xml:50
msgid ""
"If [code]true[/code], the parent's [method Node._physics_process] will be "
"stopped."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:52
+#: doc/classes/VisibilityEnabler2D.xml:53
msgid ""
"If [code]true[/code], the parent's [method Node._process] will be stopped."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:57
-#: doc/classes/VisibilityEnabler3D.xml:45
+#: doc/classes/VisibilityEnabler2D.xml:58
+#: doc/classes/VisibilityEnabler3D.xml:46
msgid "This enabler will pause [AnimationPlayer] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:60
+#: doc/classes/VisibilityEnabler2D.xml:61
msgid "This enabler will freeze [RigidBody2D] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:63
+#: doc/classes/VisibilityEnabler2D.xml:64
msgid "This enabler will stop [GPUParticles2D] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:66
+#: doc/classes/VisibilityEnabler2D.xml:67
msgid "This enabler will stop the parent's _process function."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:69
+#: doc/classes/VisibilityEnabler2D.xml:70
msgid "This enabler will stop the parent's _physics_process function."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:72
+#: doc/classes/VisibilityEnabler2D.xml:73
msgid "This enabler will stop [AnimatedSprite2D] nodes animations."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:75
-#: doc/classes/VisibilityEnabler3D.xml:51
+#: doc/classes/VisibilityEnabler2D.xml:76
+#: doc/classes/VisibilityEnabler3D.xml:52
msgid "Represents the size of the [enum Enabler] enum."
msgstr ""
@@ -54704,19 +55633,23 @@ msgid ""
"The VisibilityEnabler3D will disable [RigidBody3D] and [AnimationPlayer] "
"nodes when they are not visible. It will only affect other nodes within the "
"same scene as the VisibilityEnabler3D itself.\n"
+"If you just want to receive notifications, use [VisibilityNotifier3D] "
+"instead.\n"
"[b]Note:[/b] VisibilityEnabler3D uses an approximate heuristic for "
"performance reasons. It doesn't take walls and other occlusion into account. "
-"If you need exact visibility checking, use another method such as adding an "
-"[Area3D] node as a child of a [Camera3D] node.\n"
+"The heuristic is an implementation detail and may change in future versions. "
+"If you need precise visibility checking, use another method such as adding "
+"an [Area3D] node as a child of a [Camera3D] node and/or [method Vector3."
+"dot].\n"
"[b]Note:[/b] VisibilityEnabler3D will not affect nodes added after scene "
"initialization."
msgstr ""
-#: doc/classes/VisibilityEnabler3D.xml:37
+#: doc/classes/VisibilityEnabler3D.xml:38
msgid "If [code]true[/code], [RigidBody3D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler3D.xml:48
+#: doc/classes/VisibilityEnabler3D.xml:49
msgid "This enabler will freeze [RigidBody3D] nodes."
msgstr ""
@@ -54730,13 +55663,15 @@ msgid ""
"The VisibilityNotifier2D detects when it is visible on the screen. It also "
"notifies when its bounding rectangle enters or exits the screen or a "
"viewport.\n"
+"If you want nodes to be disabled automatically when they exit the screen, "
+"use [VisibilityEnabler2D] instead.\n"
"[b]Note:[/b] For performance reasons, VisibilityNotifier2D uses an "
"approximate heuristic with precision determined by [member ProjectSettings."
-"world/2d/cell_size]. If you need exact visibility checking, use another "
+"world/2d/cell_size]. If you need precise visibility checking, use another "
"method such as adding an [Area2D] node as a child of a [Camera2D] node."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:17
+#: doc/classes/VisibilityNotifier2D.xml:18
msgid ""
"If [code]true[/code], the bounding rectangle is on the screen.\n"
"[b]Note:[/b] It takes one frame for the node's visibility to be assessed "
@@ -54745,23 +55680,23 @@ msgid ""
"pass."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:24
+#: doc/classes/VisibilityNotifier2D.xml:25
msgid "The VisibilityNotifier2D's bounding rectangle."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:30
+#: doc/classes/VisibilityNotifier2D.xml:31
msgid "Emitted when the VisibilityNotifier2D enters the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:35
+#: doc/classes/VisibilityNotifier2D.xml:36
msgid "Emitted when the VisibilityNotifier2D exits the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:42
+#: doc/classes/VisibilityNotifier2D.xml:43
msgid "Emitted when the VisibilityNotifier2D enters a [Viewport]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:49
+#: doc/classes/VisibilityNotifier2D.xml:50
msgid "Emitted when the VisibilityNotifier2D exits a [Viewport]'s view."
msgstr ""
@@ -54770,13 +55705,16 @@ msgid ""
"The VisibilityNotifier3D detects when it is visible on the screen. It also "
"notifies when its bounding rectangle enters or exits the screen or a "
"[Camera3D]'s view.\n"
+"If you want nodes to be disabled automatically when they exit the screen, "
+"use [VisibilityEnabler3D] instead.\n"
"[b]Note:[/b] VisibilityNotifier3D uses an approximate heuristic for "
"performance reasons. It doesn't take walls and other occlusion into account. "
-"If you need exact visibility checking, use another method such as adding an "
-"[Area3D] node as a child of a [Camera3D] node."
+"The heuristic is an implementation detail and may change in future versions. "
+"If you need precise visibility checking, use another method such as adding "
+"an [Area3D] node as a child of a [Camera3D] node and/or [method Vector3.dot]."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:17
+#: doc/classes/VisibilityNotifier3D.xml:18
msgid ""
"If [code]true[/code], the bounding box is on the screen.\n"
"[b]Note:[/b] It takes one frame for the node's visibility to be assessed "
@@ -54785,23 +55723,23 @@ msgid ""
"pass."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:24
+#: doc/classes/VisibilityNotifier3D.xml:25
msgid "The VisibilityNotifier3D's bounding box."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:32
+#: doc/classes/VisibilityNotifier3D.xml:33
msgid "Emitted when the VisibilityNotifier3D enters a [Camera3D]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:39
+#: doc/classes/VisibilityNotifier3D.xml:40
msgid "Emitted when the VisibilityNotifier3D exits a [Camera3D]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:44
+#: doc/classes/VisibilityNotifier3D.xml:45
msgid "Emitted when the VisibilityNotifier3D enters the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:49
+#: doc/classes/VisibilityNotifier3D.xml:50
msgid "Emitted when the VisibilityNotifier3D exits the screen."
msgstr ""
@@ -55221,6 +56159,12 @@ msgid ""
"exist."
msgstr ""
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:90
+msgid ""
+"Easing function, based on exponent. 0 is constant, 1 is linear, 0 to 1 is "
+"ease-in, 1+ is ease out. Negative values are in-out/out in."
+msgstr ""
+
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:93
msgid ""
"Return the number of digit places after the decimal that the first non-zero "
@@ -56106,6 +57050,7 @@ msgid "A shader for light calculations."
msgstr ""
#: doc/classes/VisualShader.xml:214
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:26
msgid "Represents the size of the [enum Type] enum."
msgstr ""
@@ -56208,6 +57153,24 @@ msgstr ""
msgid "Translated to [code]uniform bool[/code] in the shader language."
msgstr ""
+#: doc/classes/VisualShaderNodeBooleanUniform.xml:15
+#: doc/classes/VisualShaderNodeColorUniform.xml:15
+#: doc/classes/VisualShaderNodeFloatUniform.xml:15
+#: doc/classes/VisualShaderNodeIntUniform.xml:15
+#: doc/classes/VisualShaderNodeTransformUniform.xml:15
+#: doc/classes/VisualShaderNodeVec3Uniform.xml:15
+msgid "A default value to be assigned within the shader."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeBooleanUniform.xml:18
+#: doc/classes/VisualShaderNodeColorUniform.xml:18
+#: doc/classes/VisualShaderNodeFloatUniform.xml:18
+#: doc/classes/VisualShaderNodeIntUniform.xml:18
+#: doc/classes/VisualShaderNodeTransformUniform.xml:18
+#: doc/classes/VisualShaderNodeVec3Uniform.xml:18
+msgid "Enables usage of the [member default_value]."
+msgstr ""
+
#: doc/classes/VisualShaderNodeColorConstant.xml:4
msgid "A [Color] constant to be used within the visual shader graph."
msgstr ""
@@ -57058,49 +58021,49 @@ msgstr ""
msgid "Translated to [code]uniform float[/code] in the shader language."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:15
-#: doc/classes/VisualShaderNodeIntUniform.xml:15
+#: doc/classes/VisualShaderNodeFloatUniform.xml:21
+#: doc/classes/VisualShaderNodeIntUniform.xml:21
msgid ""
"A hint applied to the uniform, which controls the values it can take when "
"set through the inspector."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:18
-#: doc/classes/VisualShaderNodeIntUniform.xml:18
+#: doc/classes/VisualShaderNodeFloatUniform.xml:24
+#: doc/classes/VisualShaderNodeIntUniform.xml:24
msgid ""
"Minimum value for range hints. Used if [member hint] is set to [constant "
"HINT_RANGE] or [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:21
-#: doc/classes/VisualShaderNodeIntUniform.xml:21
+#: doc/classes/VisualShaderNodeFloatUniform.xml:27
+#: doc/classes/VisualShaderNodeIntUniform.xml:27
msgid ""
"Maximum value for range hints. Used if [member hint] is set to [constant "
"HINT_RANGE] or [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:24
-#: doc/classes/VisualShaderNodeIntUniform.xml:24
+#: doc/classes/VisualShaderNodeFloatUniform.xml:30
+#: doc/classes/VisualShaderNodeIntUniform.xml:30
msgid ""
"Step (increment) value for the range hint with step. Used if [member hint] "
"is set to [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:29
-#: doc/classes/VisualShaderNodeIntUniform.xml:29
+#: doc/classes/VisualShaderNodeFloatUniform.xml:35
+#: doc/classes/VisualShaderNodeIntUniform.xml:35
msgid "No hint used."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:32
-#: doc/classes/VisualShaderNodeIntUniform.xml:32
+#: doc/classes/VisualShaderNodeFloatUniform.xml:38
+#: doc/classes/VisualShaderNodeIntUniform.xml:38
msgid ""
"A range hint for scalar value, which limits possible input values between "
"[member min] and [member max]. Translated to [code]hint_range(min, max)[/"
"code] in shader code."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:35
-#: doc/classes/VisualShaderNodeIntUniform.xml:35
+#: doc/classes/VisualShaderNodeFloatUniform.xml:41
+#: doc/classes/VisualShaderNodeIntUniform.xml:41
msgid ""
"A range hint for scalar value with step, which limits possible input values "
"between [member min] and [member max], with a step (increment) of [member "
@@ -57384,6 +58347,26 @@ msgid ""
"results, e.g. division by zero)."
msgstr ""
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:4
+msgid "Performs a fused multiply-add operation within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:7
+msgid "Uses three operands to compute [code](a * b + c)[/code] expression."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:15
+msgid "A type of operands and returned value."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:20
+msgid "A scalar type."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:23
+msgid "A vector type."
+msgstr ""
+
#: doc/classes/VisualShaderNodeOuterProduct.xml:4
msgid ""
"Calculates an outer product of two vectors within the visual shader graph."
@@ -57406,7 +58389,7 @@ msgstr ""
#: doc/classes/VisualShaderNodeOutput.xml:7
msgid ""
"This visual shader node is present in all shader graphs in form of \"Output"
-"\" block with mutliple output value ports."
+"\" block with multiple output value ports."
msgstr ""
#: doc/classes/VisualShaderNodeSample3D.xml:4
@@ -57770,6 +58753,20 @@ msgid ""
"[ShaderMaterial] properties."
msgstr ""
+#: doc/classes/VisualShaderNodeUniformRef.xml:4
+msgid "A reference to an existing [VisualShaderNodeUniform]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniformRef.xml:7
+msgid ""
+"Creating a reference to a [VisualShaderNodeUniform] allows you to reuse this "
+"uniform in different shaders or shader stages easily."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniformRef.xml:15
+msgid "The name of the uniform which this reference points to."
+msgstr ""
+
#: doc/classes/VisualShaderNodeVec3Constant.xml:4
msgid "A [Vector3] constant to be used within the visual shader graph."
msgstr ""
@@ -57867,7 +58864,7 @@ msgstr ""
#: doc/classes/VisualShaderNodeVectorFunc.xml:26
msgid "Returns the opposite value of the parameter."
-msgstr ""
+msgstr "Повертає значеннÑ, Ñке Ñ” протилежним до Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð°."
#: doc/classes/VisualShaderNodeVectorFunc.xml:29
msgid "Returns [code]1/vector[/code]."
@@ -57875,96 +58872,100 @@ msgstr ""
#: doc/classes/VisualShaderNodeVectorFunc.xml:32
msgid "Converts RGB vector to HSV equivalent."
-msgstr ""
+msgstr "Перетворює вектор RGB на еквівалентний колір HSV."
#: doc/classes/VisualShaderNodeVectorFunc.xml:35
msgid "Converts HSV vector to RGB equivalent."
-msgstr ""
+msgstr "Перетворює вектор HSV на еквівалентний колір RGB."
#: doc/classes/VisualShaderNodeVectorFunc.xml:38
msgid "Returns the absolute value of the parameter."
-msgstr ""
+msgstr "Повертає модуль параметра."
#: doc/classes/VisualShaderNodeVectorFunc.xml:41
msgid "Returns the arc-cosine of the parameter."
-msgstr ""
+msgstr "Повертає арккоÑÐ¸Ð½ÑƒÑ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð°."
#: doc/classes/VisualShaderNodeVectorFunc.xml:44
msgid "Returns the inverse hyperbolic cosine of the parameter."
-msgstr ""
+msgstr "Повертає обернений гіперболічний коÑÐ¸Ð½ÑƒÑ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð°."
#: doc/classes/VisualShaderNodeVectorFunc.xml:47
msgid "Returns the arc-sine of the parameter."
-msgstr ""
+msgstr "Повертає аркÑÐ¸Ð½ÑƒÑ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð°."
#: doc/classes/VisualShaderNodeVectorFunc.xml:50
msgid "Returns the inverse hyperbolic sine of the parameter."
-msgstr ""
+msgstr "Повертає обернений гіперболічний ÑÐ¸Ð½ÑƒÑ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð°."
#: doc/classes/VisualShaderNodeVectorFunc.xml:53
msgid "Returns the arc-tangent of the parameter."
-msgstr ""
+msgstr "Повертає Ð°Ñ€ÐºÑ‚Ð°Ð½Ð³ÐµÐ½Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð°."
#: doc/classes/VisualShaderNodeVectorFunc.xml:56
msgid "Returns the inverse hyperbolic tangent of the parameter."
-msgstr ""
+msgstr "Повертає обернений гіперболічний Ñ‚Ð°Ð½Ð³ÐµÐ½Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð°."
#: doc/classes/VisualShaderNodeVectorFunc.xml:59
msgid ""
"Finds the nearest integer that is greater than or equal to the parameter."
msgstr ""
+"Знаходить найближче ціле чиÑло, Ñке Ñ” більшим або рівним за Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ "
+"параметра."
#: doc/classes/VisualShaderNodeVectorFunc.xml:62
msgid "Returns the cosine of the parameter."
-msgstr ""
+msgstr "Повертає коÑÐ¸Ð½ÑƒÑ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð°."
#: doc/classes/VisualShaderNodeVectorFunc.xml:65
msgid "Returns the hyperbolic cosine of the parameter."
-msgstr ""
+msgstr "Повертає гіперболічний коÑÐ¸Ð½ÑƒÑ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð°."
#: doc/classes/VisualShaderNodeVectorFunc.xml:68
msgid "Converts a quantity in radians to degrees."
-msgstr ""
+msgstr "Перетворює Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñƒ радіанах на Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñƒ градуÑах."
#: doc/classes/VisualShaderNodeVectorFunc.xml:71
msgid "Base-e Exponential."
-msgstr ""
+msgstr "Показникова Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ Ñ–Ð· оÑновою e (екÑпонента)."
#: doc/classes/VisualShaderNodeVectorFunc.xml:74
msgid "Base-2 Exponential."
-msgstr ""
+msgstr "Показникова Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ Ñ–Ð· оÑновою 2."
#: doc/classes/VisualShaderNodeVectorFunc.xml:77
msgid "Finds the nearest integer less than or equal to the parameter."
msgstr ""
+"Знаходить найближче ціле чиÑло, Ñке Ñ” меншим або рівним за Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ "
+"параметра."
#: doc/classes/VisualShaderNodeVectorFunc.xml:80
msgid "Computes the fractional part of the argument."
-msgstr ""
+msgstr "ОбчиÑлює дробову чаÑтину аргументу."
#: doc/classes/VisualShaderNodeVectorFunc.xml:83
msgid "Returns the inverse of the square root of the parameter."
-msgstr ""
+msgstr "Повертає одиницю поділену на квадратний корінь з параметра."
#: doc/classes/VisualShaderNodeVectorFunc.xml:86
msgid "Natural logarithm."
-msgstr ""
+msgstr "Ðатуральний логарифм."
#: doc/classes/VisualShaderNodeVectorFunc.xml:89
msgid "Base-2 logarithm."
-msgstr ""
+msgstr "Двійковий логарифм."
#: doc/classes/VisualShaderNodeVectorFunc.xml:92
msgid "Converts a quantity in degrees to radians."
-msgstr ""
+msgstr "Перетворює Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñƒ градуÑах на Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñƒ радіанах."
#: doc/classes/VisualShaderNodeVectorFunc.xml:95
msgid "Finds the nearest integer to the parameter."
-msgstr ""
+msgstr "Знаходить найближче ціле Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð´Ð¾ параметра."
#: doc/classes/VisualShaderNodeVectorFunc.xml:98
msgid "Finds the nearest even integer to the parameter."
-msgstr ""
+msgstr "Знаходить найближче парне ціле Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð´Ð¾ параметра."
#: doc/classes/VisualShaderNodeVectorFunc.xml:101
msgid ""
@@ -57975,23 +58976,23 @@ msgstr ""
#: doc/classes/VisualShaderNodeVectorFunc.xml:104
msgid "Returns the sine of the parameter."
-msgstr ""
+msgstr "Повертає ÑÐ¸Ð½ÑƒÑ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð°."
#: doc/classes/VisualShaderNodeVectorFunc.xml:107
msgid "Returns the hyperbolic sine of the parameter."
-msgstr ""
+msgstr "Повертає гіперболічний ÑÐ¸Ð½ÑƒÑ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð°."
#: doc/classes/VisualShaderNodeVectorFunc.xml:110
msgid "Returns the square root of the parameter."
-msgstr ""
+msgstr "Повертає квадратний корінь з параметра."
#: doc/classes/VisualShaderNodeVectorFunc.xml:113
msgid "Returns the tangent of the parameter."
-msgstr ""
+msgstr "Повертає Ñ‚Ð°Ð½Ð³ÐµÐ½Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð°."
#: doc/classes/VisualShaderNodeVectorFunc.xml:116
msgid "Returns the hyperbolic tangent of the parameter."
-msgstr ""
+msgstr "Повертає гіперболічний Ñ‚Ð°Ð½Ð³ÐµÐ½Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð°."
#: doc/classes/VisualShaderNodeVectorFunc.xml:119
msgid ""
@@ -58050,11 +59051,11 @@ msgstr ""
#: doc/classes/VisualShaderNodeVectorOp.xml:29
msgid "Divides vector by vector."
-msgstr ""
+msgstr "Ділить вектор на вектор."
#: doc/classes/VisualShaderNodeVectorOp.xml:32
msgid "Returns the remainder of the two vectors."
-msgstr ""
+msgstr "Повертає лишок за двома векторами."
#: doc/classes/VisualShaderNodeVectorOp.xml:35
msgid ""
@@ -58072,11 +59073,11 @@ msgstr ""
#: doc/classes/VisualShaderNodeVectorOp.xml:44
msgid "Calculates the cross product of two vectors."
-msgstr ""
+msgstr "ОбчиÑлює векторний добуток двох векторів."
#: doc/classes/VisualShaderNodeVectorOp.xml:47
msgid "Returns the arc-tangent of the parameters."
-msgstr ""
+msgstr "Повертає Ð°Ñ€ÐºÑ‚Ð°Ð½Ð³ÐµÐ½Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ñ–Ð²."
#: doc/classes/VisualShaderNodeVectorOp.xml:50
msgid ""
@@ -58100,7 +59101,7 @@ msgstr ""
msgid ""
"Translated to [code]refract(I, N, eta)[/code] in the shader language, where "
"[code]I[/code] is the incident vector, [code]N[/code] is the normal vector "
-"and [code]eta[/code] is the ratio of the indicies of the refraction."
+"and [code]eta[/code] is the ratio of the indices of the refraction."
msgstr ""
#: doc/classes/VisualShaderNodeVectorScalarMix.xml:4
diff --git a/doc/translations/zh_Hans.po b/doc/translations/zh_Hans.po
index 1ec73b260a..08e9667c29 100644
--- a/doc/translations/zh_Hans.po
+++ b/doc/translations/zh_Hans.po
@@ -6,12 +6,16 @@
# Haoyu Qiu <timothyqiu32@gmail.com>, 2020.
# fangxvan <2661712415@qq.com>, 2020.
# yzt <834950797@qq.com>, 2020.
+# 懵逼Kitty <m1330586660@163.com>, 2020.
+# MintSoda <lionlxh@qq.com>, 2020.
+# Gardner Belgrade <hapenia@sina.com>, 2020.
+# WangYi13 <wyi13@outlook.com>, 2020.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine class reference\n"
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
-"PO-Revision-Date: 2020-06-09 13:36+0000\n"
-"Last-Translator: yzt <834950797@qq.com>\n"
+"PO-Revision-Date: 2020-08-11 14:38+0000\n"
+"Last-Translator: WangYi13 <wyi13@outlook.com>\n"
"Language-Team: Chinese (Simplified) <https://hosted.weblate.org/projects/"
"godot-engine/godot-class-reference/zh_Hans/>\n"
"Language: zh_Hans\n"
@@ -19,7 +23,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8-bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-"X-Generator: Weblate 4.1-dev\n"
+"X-Generator: Weblate 4.2-dev\n"
#: doc/tools/makerst.py
msgid "Description"
@@ -113,9 +117,10 @@ msgstr ""
"支æŒçš„颜色å称与[color]中定义的常é‡ç›¸åŒã€‚"
#: modules/gdscript/doc_classes/@GDScript.xml:55
+#, fuzzy
msgid ""
-"Returns the absolute value of parameter [code]s[/code] (i.e. unsigned value, "
-"works for integer and float).\n"
+"Returns the absolute value of parameter [code]s[/code] (i.e. positive "
+"value).\n"
"[codeblock]\n"
"# a is 1\n"
"a = abs(-1)\n"
@@ -196,12 +201,13 @@ msgstr ""
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:114
+#, fuzzy
msgid ""
"Returns the arc tangent of [code]s[/code] in radians. Use it to get the "
"angle from an angle's tangent in trigonometry: [code]atan(tan(angle)) == "
"angle[/code].\n"
"The method cannot know in which quadrant the angle should fall. See [method "
-"atan2] if you always want an exact angle.\n"
+"atan2] if you have both [code]y[/code] and [code]x[/code].\n"
"[codeblock]\n"
"a = atan(0.5) # a is 0.463648\n"
"[/codeblock]"
@@ -215,16 +221,23 @@ msgstr ""
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:129
+#, fuzzy
msgid ""
"Returns the arc tangent of [code]y/x[/code] in radians. Use to get the angle "
"of tangent [code]y/x[/code]. To compute the value, the method takes into "
"account the sign of both arguments in order to determine the quadrant.\n"
+"Important note: The Y coordinate comes first, by convention.\n"
"[codeblock]\n"
"a = atan2(0, -1) # a is 3.141593\n"
"[/codeblock]"
msgstr ""
+"以弧度返回 [code]y/x[/code] çš„åæ­£åˆ‡ã€‚ç”¨äºŽèŽ·å– [code]y/x[/code] 的切角。为了"
+"求解该值,该方法计算会两个å‚数的符å·ä»¥ç¡®å®šè±¡é™ã€‚\n"
+"[codeblock]\n"
+"a = atan2(0, -1) # a is 3.141593\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:143
+#: modules/gdscript/doc_classes/@GDScript.xml:144
msgid ""
"Decodes a byte array back to a value. When [code]allow_objects[/code] is "
"[code]true[/code] decoding objects is allowed.\n"
@@ -232,26 +245,38 @@ msgid ""
"not use this option if the serialized object comes from untrusted sources to "
"avoid potential security threats (remote code execution)."
msgstr ""
+"将字节数组解ç å›žä¸€ä¸ªå€¼ã€‚当 [code]allow_objects[/code] 为 [/code]true[code] "
+"时,å…许解ç å¯¹è±¡ã€‚\n"
+"[b]警告:[/b]ååºåˆ—化过的对象å¯ä»¥å®¹çº³å¯æ‰§è¡Œçš„代ç ã€‚如果åºåˆ—化的对象æ¥è‡ªä¸å—ä¿¡"
+"任的æ¥æºï¼Œè¯·ä¸è¦æ¿€æ´»æ­¤é€‰é¡¹ï¼Œä»¥é¿å…潜在的安全å¨èƒï¼ˆæŒ‡è¿œç¨‹æ‰§è¡Œä»£ç ï¼‰ã€‚"
-#: modules/gdscript/doc_classes/@GDScript.xml:155
+#: modules/gdscript/doc_classes/@GDScript.xml:156
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:145
msgid ""
"Converts a 2D point expressed in the cartesian coordinate system (X and Y "
"axis) to the polar coordinate system (a distance from the origin and an "
"angle)."
msgstr ""
+"将以直角å标系(Xå’ŒY轴)表示的2D点转æ¢ä¸ºä»¥æžå标系(è·åŽŸç‚¹çš„è·ç¦»å’Œè§’度)表"
+"示。"
-#: modules/gdscript/doc_classes/@GDScript.xml:164
+#: modules/gdscript/doc_classes/@GDScript.xml:165
+#, fuzzy
msgid ""
-"Rounds [code]s[/code] upward, returning the smallest integral value that is "
-"not less than [code]s[/code].\n"
+"Rounds [code]s[/code] upward (towards positive infinity), returning the "
+"smallest whole number that is not less than [code]s[/code].\n"
"[codeblock]\n"
"i = ceil(1.45) # i is 2\n"
"i = ceil(1.001) # i is 2\n"
"[/codeblock]"
msgstr ""
+"å‘上èˆå…¥ [code]s[/code],返回ä¸å°äºŽ [code]s[/code] 的最å°æ•´æ•°å€¼ã€‚\n"
+"[codeblock]\n"
+"i = ceil(1.45) # i is 2\n"
+"i = ceil(1.001) # i is 2\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:177
+#: modules/gdscript/doc_classes/@GDScript.xml:178
msgid ""
"Returns a character as a String of the given Unicode code point (which is "
"compatible with ASCII code).\n"
@@ -262,8 +287,15 @@ msgid ""
"[/codeblock]\n"
"This is the inverse of [method ord]."
msgstr ""
+"返回指定Unicodeç¼–ç ä½ç½®çš„字符为字符串(这个编ç ä½ç½®ä¹Ÿå¯ä»¥æ˜¯ASCIIç¼–ç ï¼‰ã€‚\n"
+"[codeblock]\n"
+"a = char(65) # a is \"A\"\n"
+"a = char(65 + 32) # a is \"a\"\n"
+"a = char(8364) # a is \"€\"\n"
+"[/codeblock]\n"
+"This is the inverse of [method ord]."
-#: modules/gdscript/doc_classes/@GDScript.xml:196
+#: modules/gdscript/doc_classes/@GDScript.xml:197
msgid ""
"Clamps [code]value[/code] and returns a value not less than [code]min[/code] "
"and not more than [code]max[/code].\n"
@@ -277,8 +309,19 @@ msgid ""
"a = clamp(speed, 1, 20)\n"
"[/codeblock]"
msgstr ""
+"Clamp (é’³ä½) [code]value[/code],返回ä¸ä½ŽäºŽ [code]min[/code] 且ä¸é«˜äºŽ "
+"[code]max[/code]的值。\n"
+"[codeblock]\n"
+"speed = 1000\n"
+"# a is 20\n"
+"a = clamp(speed, 1, 20)\n"
+"\n"
+"speed = -10\n"
+"# a is 1\n"
+"a = clamp(speed, 1, 20)\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:216
+#: modules/gdscript/doc_classes/@GDScript.xml:217
msgid ""
"Converts from a type to another in the best way possible. The [code]type[/"
"code] parameter uses the [enum Variant.Type] values.\n"
@@ -291,8 +334,18 @@ msgid ""
"print(a.length())\n"
"[/codeblock]"
msgstr ""
+"å°½å¯èƒ½ä»¥æœ€ä½³æ–¹å¼å°†ä¸€ç§ç±»åž‹è½¬æ¢ä¸ºå¦ä¸€ç§ç±»åž‹ã€‚[code]type[/code] å‚数应使用 "
+"[enum Variant.Type] 作为值。\n"
+"[codeblock]\n"
+"a = Vector2(1, 0)\n"
+"# 打å°å‡º 1\n"
+"print(a.length())\n"
+"a = convert(a, TYPE_STRING)\n"
+"# 打å°å‡º 6 ,因为 \"(1, 0)\" 是6个字符\n"
+"print(a.length())\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:233
+#: modules/gdscript/doc_classes/@GDScript.xml:234
msgid ""
"Returns the cosine of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -301,8 +354,14 @@ msgid ""
"print(cos(PI))\n"
"[/codeblock]"
msgstr ""
+"返回角度 [code]s[/code] 为弧度。\n"
+"[codeblock]\n"
+"# 打å°å‡º 1 ï¼Œç„¶åŽ -1\n"
+"print(cos(PI * 2))\n"
+"print(cos(PI))\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:247
+#: modules/gdscript/doc_classes/@GDScript.xml:248
msgid ""
"Returns the hyperbolic cosine of [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -310,12 +369,17 @@ msgid ""
"print(cosh(1))\n"
"[/codeblock]"
msgstr ""
+"返回 [code]s[/code] çš„åŒæ›²ä½™å¼¦å€¼ä¸ºå¼§åº¦ã€‚\n"
+"[codeblock]\n"
+"# 打å°å‡º 1.543081\n"
+"print(cosh(1))\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:260
+#: modules/gdscript/doc_classes/@GDScript.xml:261
msgid "Converts from decibels to linear energy (audio)."
-msgstr ""
+msgstr "从分è´è½¬æ¢ä¸ºçº¿æ€§èƒ½é‡ï¼Œå³ç”µåŽ‹å¢žç›Šï¼ˆå£°å­¦èŒƒç•´çš„)。"
-#: modules/gdscript/doc_classes/@GDScript.xml:273
+#: modules/gdscript/doc_classes/@GDScript.xml:274
msgid ""
"Returns the result of [code]value[/code] decreased by [code]step[/code] * "
"[code]amount[/code].\n"
@@ -324,43 +388,69 @@ msgid ""
"a = dectime(60, 10, 0.1))\n"
"[/codeblock]"
msgstr ""
+"返回 [code]value[/code] å‡å°‘了 [code]step[/code] * [code]amount[/code] 之åŽçš„"
+"结果.\n"
+"[codeblock]\n"
+"# a = 59\n"
+"a = dectime(60, 10, 0.1))\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:286
+#: modules/gdscript/doc_classes/@GDScript.xml:287
+#, fuzzy
msgid ""
-"Returns degrees converted to radians.\n"
+"Converts an angle expressed in degrees to radians.\n"
"[codeblock]\n"
"# r is 3.141593\n"
"r = deg2rad(180)\n"
"[/codeblock]"
msgstr ""
+"将角度转æ¢ä¸ºå¼§åº¦ã€‚\n"
+"[codeblock]\n"
+"# r 为 3.141593\n"
+"r = deg2rad(180)\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:299
+#: modules/gdscript/doc_classes/@GDScript.xml:300
msgid ""
"Converts a previously converted instance to a dictionary, back into an "
"instance. Useful for deserializing."
-msgstr ""
+msgstr "å°† (由实例转化而æ¥çš„) 字典转æ¢å›žå®žä¾‹ã€‚用于ååºåˆ—化。"
-#: modules/gdscript/doc_classes/@GDScript.xml:310
-#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:90
+#: modules/gdscript/doc_classes/@GDScript.xml:311
+#, fuzzy
msgid ""
-"Easing function, based on exponent. 0 is constant, 1 is linear, 0 to 1 is "
-"ease-in, 1+ is ease out. Negative values are in-out/out in."
+"Easing function, based on exponent. The curve values are: 0 is constant, 1 "
+"is linear, 0 to 1 is ease-in, 1+ is ease out. Negative values are in-out/out "
+"in."
msgstr ""
+"缓动函数,基于指数。[code]s[/code]是函数的x值,[code]curve[/code]为0时,函数"
+"为常数函数,1是线性函数,0到1是缓入,1+是缓出。0到-1是缓出å†ç¼“入,低于-1是缓"
+"å…¥å†ç¼“出。"
-#: modules/gdscript/doc_classes/@GDScript.xml:319
+#: modules/gdscript/doc_classes/@GDScript.xml:320
+#, fuzzy
msgid ""
"The natural exponential function. It raises the mathematical constant [b]e[/"
"b] to the power of [code]s[/code] and returns it.\n"
-"[b]e[/b] has an approximate value of 2.71828.\n"
+"[b]e[/b] has an approximate value of 2.71828, and can be obtained with "
+"[code]exp(1)[/code].\n"
"For exponents to other bases use the method [method pow].\n"
"[codeblock]\n"
"a = exp(2) # Approximately 7.39\n"
"[/codeblock]"
msgstr ""
+"自然指数函数。返回 [b]e[/b] 的 [b]s[/b] 次幂。\n"
+"[b]e[/b]的近似值为2.71828。\n"
+"以其他底数求指数,应使用方法 [method pow]。\n"
+"[codeblock]\n"
+"a = exp(2) # 约为 7.39\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:333
+#: modules/gdscript/doc_classes/@GDScript.xml:334
+#, fuzzy
msgid ""
-"Rounds [code]s[/code] to the closest smaller integer and returns it.\n"
+"Rounds [code]s[/code] downward (towards negative infinity), returning the "
+"largest whole number that is not more than [code]s[/code].\n"
"[codeblock]\n"
"# a is 2.0\n"
"a = floor(2.99)\n"
@@ -370,8 +460,17 @@ msgid ""
"[b]Note:[/b] This method returns a float. If you need an integer, you can "
"use [code]int(s)[/code] directly."
msgstr ""
+"返回ä¸å¤§äºŽ[code]s[/code] 的最大整数。\n"
+"[codeblock]\n"
+"a = floor(2.99)\n"
+"# a is 2.0\n"
+"a = floor(-2.99)\n"
+"# a is -3.0\n"
+"[/codeblock]\n"
+"[b]注:[/b] 这个方法返回一个浮点值,如果需è¦è¿”回一个整数,å¯ä»¥ç›´æŽ¥ä½¿ç”¨"
+"[code]int(s)[/code] 。"
-#: modules/gdscript/doc_classes/@GDScript.xml:351
+#: modules/gdscript/doc_classes/@GDScript.xml:352
msgid ""
"Returns the floating-point remainder of [code]a/b[/code], keeping the sign "
"of [code]a[/code].\n"
@@ -381,8 +480,14 @@ msgid ""
"[/codeblock]\n"
"For the integer remainder operation, use the % operator."
msgstr ""
+"返回[code]a/b[/code]的浮点型余数, 符å·ä¸Ž [code]a[/code]一致。\n"
+"[codeblock]\n"
+"var remainder = fmod(7, 5.5)\n"
+"# Remainder is 1.5\n"
+"[/codeblock]\n"
+"如果对整数进行å–ä½™æ“作,请使用æ“作符 % 。"
-#: modules/gdscript/doc_classes/@GDScript.xml:367
+#: modules/gdscript/doc_classes/@GDScript.xml:368
msgid ""
"Returns the floating-point modulus of [code]a/b[/code] that wraps equally in "
"positive and negative.\n"
@@ -408,7 +513,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:398
+#: modules/gdscript/doc_classes/@GDScript.xml:399
msgid ""
"Returns a reference to the specified function [code]funcname[/code] in the "
"[code]instance[/code] node. As functions aren't first-class objects in "
@@ -422,8 +527,18 @@ msgid ""
"print(a.call_func()) # Prints bar\n"
"[/codeblock]"
msgstr ""
+"返回æŸä¸€å®žä¾‹èŠ‚点 [code]instance[/code]中指定函数 [code]funcname[/code]的引"
+"用。 由于函数在GDScript中ä¸æ˜¯ä¸€çº§å¯¹è±¡ï¼Œæ‰€ä»¥ 使用 [code]funcref[/code] 将函数"
+"引用[FuncRef]存储在一个å˜é‡ä¹‹ä¸­ä»¥åœ¨åŽç»­è°ƒç”¨å®ƒ 。\n"
+"[codeblock]\n"
+"func foo():\n"
+" return(\"bar\")\n"
+"\n"
+"a = funcref(self, \"foo\")\n"
+"print(a.call_func()) # 会打å°å‡º\"bar\"\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:412
+#: modules/gdscript/doc_classes/@GDScript.xml:413
msgid ""
"Returns an array of dictionaries representing the current call stack.\n"
"[codeblock]\n"
@@ -442,16 +557,36 @@ msgid ""
"source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n"
"[/codeblock]"
msgstr ""
+"返回一个数组,其元素为展示当å‰è°ƒç”¨å †æ ˆçš„字典。\n"
+"[codeblock]\n"
+"func _ready():\n"
+" foo()\n"
+"\n"
+"func foo():\n"
+" bar()\n"
+"\n"
+"func bar():\n"
+" print(get_stack())\n"
+"[/codeblock]\n"
+"输出:\n"
+"[codeblock]\n"
+"[{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, "
+"source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:435
+#: modules/gdscript/doc_classes/@GDScript.xml:436
msgid ""
"Returns the integer hash of the variable passed.\n"
"[codeblock]\n"
"print(hash(\"a\")) # Prints 177670\n"
"[/codeblock]"
msgstr ""
+"返回å˜é‡çš„整数哈希值\n"
+"[codeblock]\n"
+"print(hash(\"a\")) # 输出结果: 177670\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:447
+#: modules/gdscript/doc_classes/@GDScript.xml:448
msgid ""
"Returns the passed instance converted to a dictionary (useful for "
"serializing).\n"
@@ -469,7 +604,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:468
+#: modules/gdscript/doc_classes/@GDScript.xml:469
msgid ""
"Returns the Object that corresponds to [code]instance_id[/code]. All Objects "
"have a unique instance ID.\n"
@@ -481,8 +616,16 @@ msgid ""
" print(inst.foo) # Prints bar\n"
"[/codeblock]"
msgstr ""
+"返回id [code]instance_id[/code]所对应的对象。 所有对象都有独有的id。\n"
+"[codeblock]\n"
+"var foo = \"bar\"\n"
+"func _ready():\n"
+" var id = get_instance_id()\n"
+" var inst = instance_from_id(id)\n"
+" print(inst.foo) # 输出 bar\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:488
+#: modules/gdscript/doc_classes/@GDScript.xml:489
msgid ""
"Returns a normalized value considering the given range. This is the opposite "
"of [method lerp].\n"
@@ -495,34 +638,56 @@ msgid ""
"# `ratio` is now 0.75.\n"
"[/codeblock]"
msgstr ""
+"返回给定区间所决定的规范化系数, 是方法 [lerp]çš„åå‘过程。\n"
+"[codeblock]\n"
+"var middle = lerp(20, 30, 0.75)\n"
+"# `middle` 为 27.5.\n"
+"# 现在我们ä¸çŸ¥é“系数0.75的值,但是知é“归一化结果27.5,计算规范化系数:\n"
+"var ratio = inverse_lerp(20, 30, 27.5)\n"
+"# `ratio` 为 0.75.\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:506
+#: modules/gdscript/doc_classes/@GDScript.xml:507
msgid ""
"Returns [code]true[/code] if [code]a[/code] and [code]b[/code] are "
-"approximately equal to each other."
+"approximately equal to each other.\n"
+"Here, approximately equal means that [code]a[/code] and [code]b[/code] are "
+"within a small internal epsilon of each other, which scales with the "
+"magnitude of the numbers.\n"
+"Infinity values of the same sign are considered equal."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:515
+#: modules/gdscript/doc_classes/@GDScript.xml:518
msgid ""
"Returns whether [code]s[/code] is an infinity value (either positive "
"infinity or negative infinity)."
msgstr ""
+"判断[code]s[/code]是å¦ä¸ºæ— ç©·å¤§ï¼ˆåŒ…括正无穷和负无穷),是返回true,å¦è¿”回"
+"false。"
-#: modules/gdscript/doc_classes/@GDScript.xml:524
+#: modules/gdscript/doc_classes/@GDScript.xml:527
msgid ""
"Returns whether [code]instance[/code] is a valid object (e.g. has not been "
"deleted from memory)."
msgstr ""
+"判断实例[code]instance[/code]是å¦ä¸ºåˆæ³•å¯¹è±¡ï¼ˆå¦‚未从内存中删除),是返回true,"
+"å¦è¿”回false。"
-#: modules/gdscript/doc_classes/@GDScript.xml:533
-msgid "Returns whether [code]s[/code] is a NaN (Not-A-Number) value."
-msgstr ""
+#: modules/gdscript/doc_classes/@GDScript.xml:536
+#, fuzzy
+msgid ""
+"Returns whether [code]s[/code] is a NaN (\"Not a Number\" or invalid) value."
+msgstr "返回[code]s[/code]是å¦ä¸ºNaN(Not-A-Number,éžæ•°ï¼‰å€¼çš„判断结果。"
-#: modules/gdscript/doc_classes/@GDScript.xml:542
-msgid "Returns [code]true[/code] if [code]s[/code] is zero or almost zero."
-msgstr ""
+#: modules/gdscript/doc_classes/@GDScript.xml:545
+#, fuzzy
+msgid ""
+"Returns [code]true[/code] if [code]s[/code] is zero or almost zero.\n"
+"This method is faster than using [method is_equal_approx] with one value as "
+"zero."
+msgstr "如果[code]s[/code] 为0或者很接近0则返回[code]true[/code]。"
-#: modules/gdscript/doc_classes/@GDScript.xml:551
+#: modules/gdscript/doc_classes/@GDScript.xml:555
msgid ""
"Returns length of Variant [code]var[/code]. Length is the character count of "
"String, element count of Array, size of Dictionary, etc.\n"
@@ -532,8 +697,15 @@ msgid ""
"len(a) # Returns 4\n"
"[/codeblock]"
msgstr ""
+"返回å˜é‡[code]var[/code]的长度。 长度指字符串的字符数ã€æ•°ç»„的元素数ã€å­—典的大"
+"å°ç­‰ã€‚\n"
+"[b]注:[/b] å˜é‡æ— æ³•æä¾›å¯ä½œä¸ºé•¿åº¦çš„值时会抛出错误。\n"
+"[codeblock]\n"
+"a = [1, 2, 3, 4]\n"
+"len(a) # 返回值:4\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:569
+#: modules/gdscript/doc_classes/@GDScript.xml:573
msgid ""
"Linearly interpolates between two values by a normalized value. This is the "
"opposite of [method inverse_lerp].\n"
@@ -547,8 +719,18 @@ msgid ""
"lerp(Vector2(1, 5), Vector2(3, 2), 0.5) # Returns Vector2(2, 3.5)\n"
"[/codeblock]"
msgstr ""
+"由规范化系数在两个数之间线性æ’值,是方法[method inverse_lerp]çš„åå‘过程。\n"
+"如果å‚æ•° [code]from[/code]ã€[code]to[/code]的类型为[int] 或 [float],返回值类"
+"型为[float]。\n"
+"如果å‚æ•° [code]from[/code]ã€[code]to[/code]的类型为åŒä¸€ç±»åž‹çš„矢é‡"
+"([Vector2], [Vector3]或 [Color]),则返回值也是相åŒç±»åž‹ï¼ˆæ­¤æ—¶[code]lerp[/"
+"code] 会调用矢é‡ç±»åž‹çš„[code]lerp[/code] 方法)。\n"
+"[codeblock]\n"
+"lerp(0, 4, 0.75) # Returns 3.0\n"
+"lerp(Vector2(1, 5), Vector2(3, 2), 0.5) # 返回值: Vector2(2, 3.5)\n"
+"[/codeblock]"
-#: modules/gdscript/doc_classes/@GDScript.xml:588
+#: modules/gdscript/doc_classes/@GDScript.xml:592
msgid ""
"Linearly interpolates between two angles (in radians) by a normalized "
"value.\n"
@@ -565,7 +747,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:607
+#: modules/gdscript/doc_classes/@GDScript.xml:611
msgid ""
"Converts from linear energy to decibels (audio). This can be used to "
"implement volume sliders that behave as expected (since volume isn't "
@@ -581,20 +763,28 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:622
+#: modules/gdscript/doc_classes/@GDScript.xml:626
msgid ""
-"Loads a resource from the filesystem located at [code]path[/code].\n"
+"Loads a resource from the filesystem located at [code]path[/code]. The "
+"resource is loaded on the method call (unless it's referenced already "
+"elsewhere, e.g. in another script or in the scene), which might cause slight "
+"delay, especially when loading scenes. To avoid unnecessary delays when "
+"loading something multiple times, either store the resource in a variable or "
+"use [method preload].\n"
"[b]Note:[/b] Resource paths can be obtained by right-clicking on a resource "
-"in the FileSystem dock and choosing [b]Copy Path[/b].\n"
+"in the FileSystem dock and choosing \"Copy Path\" or by dragging the file "
+"from the FileSystem dock into the script.\n"
"[codeblock]\n"
-"# Load a scene called main located in the root of the project directory.\n"
-"var main = load(\"res://main.tscn\")\n"
+"# Load a scene called main located in the root of the project directory and "
+"cache it in a variable.\n"
+"var main = load(\"res://main.tscn\") # main will contain a PackedScene "
+"resource.\n"
"[/codeblock]\n"
"[b]Important:[/b] The path must be absolute, a local path will just return "
"[code]null[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:637
+#: modules/gdscript/doc_classes/@GDScript.xml:641
msgid ""
"Natural logarithm. The amount of time needed to reach a certain level of "
"continuous growth.\n"
@@ -602,10 +792,12 @@ msgid ""
"calculators, which uses a base 10 logarithm.\n"
"[codeblock]\n"
"log(10) # Returns 2.302585\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] The logarithm of [code]0[/code] returns [code]-inf[/code], "
+"while negative values return [code]-nan[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:652
+#: modules/gdscript/doc_classes/@GDScript.xml:657
msgid ""
"Returns the maximum of two values.\n"
"[codeblock]\n"
@@ -614,7 +806,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:667
+#: modules/gdscript/doc_classes/@GDScript.xml:672
msgid ""
"Returns the minimum of two values.\n"
"[codeblock]\n"
@@ -623,27 +815,39 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:684
+#: modules/gdscript/doc_classes/@GDScript.xml:689
msgid ""
"Moves [code]from[/code] toward [code]to[/code] by the [code]delta[/code] "
"value.\n"
"Use a negative [code]delta[/code] value to move away.\n"
"[codeblock]\n"
+"move_toward(5, 10, 4) # Returns 9\n"
"move_toward(10, 5, 4) # Returns 6\n"
+"move_toward(10, 5, -1.5) # Returns 11.5\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:697
+#: modules/gdscript/doc_classes/@GDScript.xml:704
msgid ""
-"Returns the nearest larger power of 2 for integer [code]value[/code].\n"
+"Returns the nearest equal or larger power of 2 for integer [code]value[/"
+"code].\n"
+"In other words, returns the smallest value [code]a[/code] where [code]a = "
+"pow(2, n)[/code] such that [code]value <= a[/code] for some non-negative "
+"integer [code]n[/code].\n"
"[codeblock]\n"
"nearest_po2(3) # Returns 4\n"
"nearest_po2(4) # Returns 4\n"
"nearest_po2(5) # Returns 8\n"
-"[/codeblock]"
+"\n"
+"nearest_po2(0) # Returns 0 (this may not be what you expect)\n"
+"nearest_po2(-1) # Returns 0 (this may not be what you expect)\n"
+"[/codeblock]\n"
+"[b]WARNING:[/b] Due to the way it is implemented, this function returns "
+"[code]0[/code] rather than [code]1[/code] for non-positive values of "
+"[code]value[/code] (in reality, 1 is the smallest integer power of 2)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:711
+#: modules/gdscript/doc_classes/@GDScript.xml:723
msgid ""
"Returns an integer representing the Unicode code point of the given Unicode "
"character [code]char[/code].\n"
@@ -655,27 +859,28 @@ msgid ""
"This is the inverse of [method char]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:726
+#: modules/gdscript/doc_classes/@GDScript.xml:738
msgid ""
-"Parse JSON text to a Variant (use [method typeof] to check if it is what you "
-"expect).\n"
-"Be aware that the JSON specification does not define integer or float types, "
-"but only a number type. Therefore, parsing a JSON text will convert all "
-"numerical values to [float] types.\n"
-"Note that JSON objects do not preserve key order like Godot dictionaries, "
-"thus you should not rely on keys being in a certain order if a dictionary is "
-"constructed from JSON. In contrast, JSON arrays retain the order of their "
+"Parse JSON text to a Variant. (Use [method typeof] to check if the Variant's "
+"type is what you expect.)\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, parsing a JSON text will convert "
+"all numerical values to [float] types.\n"
+"[b]Note:[/b] JSON objects do not preserve key order like Godot dictionaries, "
+"thus, you should not rely on keys being in a certain order if a dictionary "
+"is constructed from JSON. In contrast, JSON arrays retain the order of their "
"elements:\n"
"[codeblock]\n"
-"p = parse_json('[\"a\", \"b\", \"c\"]')\n"
-"if typeof(p) == TYPE_ARRAY:\n"
-" print(p[0]) # Prints a\n"
+"var p = JSON.parse('[\"hello\", \"world\", \"!\"]')\n"
+"if typeof(p.result) == TYPE_ARRAY:\n"
+" print(p.result[0]) # Prints \"hello\"\n"
"else:\n"
-" print(\"unexpected results\")\n"
-"[/codeblock]"
+" push_error(\"Unexpected results.\")\n"
+"[/codeblock]\n"
+"See also [JSON] for an alternative way to parse JSON text."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:746
+#: modules/gdscript/doc_classes/@GDScript.xml:759
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:142
msgid ""
"Converts a 2D point expressed in the polar coordinate system (a distance "
@@ -683,7 +888,7 @@ msgid ""
"cartesian coordinate system (X and Y axis)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:757
+#: modules/gdscript/doc_classes/@GDScript.xml:770
msgid ""
"Returns the integer modulus of [code]a/b[/code] that wraps equally in "
"positive and negative.\n"
@@ -709,7 +914,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:788
+#: modules/gdscript/doc_classes/@GDScript.xml:801
msgid ""
"Returns the result of [code]x[/code] raised to the power of [code]y[/code].\n"
"[codeblock]\n"
@@ -717,19 +922,23 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:800
+#: modules/gdscript/doc_classes/@GDScript.xml:813
msgid ""
-"Returns a resource from the filesystem that is loaded during script "
-"parsing.\n"
+"Returns a [Resource] from the filesystem located at [code]path[/code]. The "
+"resource is loaded during script parsing, i.e. is loaded with the script and "
+"[method preload] effectively acts as a reference to that resource. Note that "
+"the method requires a constant path. If you want to load a resource from a "
+"dynamic/variable path, use [method load].\n"
"[b]Note:[/b] Resource paths can be obtained by right clicking on a resource "
-"in the Assets Panel and choosing \"Copy Path\".\n"
+"in the Assets Panel and choosing \"Copy Path\" or by dragging the file from "
+"the FileSystem dock into the script.\n"
"[codeblock]\n"
-"# Load a scene called main located in the root of the project directory.\n"
-"var main = preload(\"res://main.tscn\")\n"
+"# Instance a scene.\n"
+"var diamond = preload(\"res://diamond.tscn\").instance()\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:812
+#: modules/gdscript/doc_classes/@GDScript.xml:825
msgid ""
"Converts one or more arguments to strings in the best way possible and "
"prints them to the console.\n"
@@ -739,11 +948,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:823
+#: modules/gdscript/doc_classes/@GDScript.xml:836
msgid "Like [method print], but prints only when used in debug mode."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:830
+#: modules/gdscript/doc_classes/@GDScript.xml:843
msgid ""
"Prints a stack track at code location, only works when running with debugger "
"turned on.\n"
@@ -753,7 +962,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:841
+#: modules/gdscript/doc_classes/@GDScript.xml:854
msgid ""
"Prints one or more arguments to strings in the best way possible to standard "
"error line.\n"
@@ -762,7 +971,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:851
+#: modules/gdscript/doc_classes/@GDScript.xml:864
msgid ""
"Prints one or more arguments to strings in the best way possible to console. "
"No newline is added at the end.\n"
@@ -776,7 +985,7 @@ msgid ""
"method, such as [method print]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:864
+#: modules/gdscript/doc_classes/@GDScript.xml:877
msgid ""
"Prints one or more arguments to the console with a space between each "
"argument.\n"
@@ -785,7 +994,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:874
+#: modules/gdscript/doc_classes/@GDScript.xml:887
msgid ""
"Prints one or more arguments to the console with a tab between each "
"argument.\n"
@@ -794,7 +1003,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:886
+#: modules/gdscript/doc_classes/@GDScript.xml:899
msgid ""
"Pushes an error message to Godot's built-in debugger and to the OS "
"terminal.\n"
@@ -804,7 +1013,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:898
+#: modules/gdscript/doc_classes/@GDScript.xml:911
msgid ""
"Pushes a warning message to Godot's built-in debugger and to the OS "
"terminal.\n"
@@ -814,15 +1023,15 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:910
+#: modules/gdscript/doc_classes/@GDScript.xml:923
msgid ""
-"Converts from radians to degrees.\n"
+"Converts an angle expressed in radians to degrees.\n"
"[codeblock]\n"
"rad2deg(0.523599) # Returns 30\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:924
+#: modules/gdscript/doc_classes/@GDScript.xml:937
msgid ""
"Random range, any floating point value between [code]from[/code] and "
"[code]to[/code].\n"
@@ -831,7 +1040,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:936
+#: modules/gdscript/doc_classes/@GDScript.xml:949
msgid ""
"Random from seed: pass a [code]seed[/code], and an array with both number "
"and new seed is returned. \"Seed\" here refers to the internal state of the "
@@ -839,7 +1048,7 @@ msgid ""
"implementation is 64 bits."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:943
+#: modules/gdscript/doc_classes/@GDScript.xml:956
msgid ""
"Returns a random floating point value on the interval [code][0, 1][/code].\n"
"[codeblock]\n"
@@ -847,7 +1056,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:953
+#: modules/gdscript/doc_classes/@GDScript.xml:966
msgid ""
"Returns a random unsigned 32 bit integer. Use remainder to obtain a random "
"value in the interval [code][0, N - 1][/code] (where N is smaller than "
@@ -860,7 +1069,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:966
+#: modules/gdscript/doc_classes/@GDScript.xml:979
msgid ""
"Randomizes the seed (or the internal state) of the random number generator. "
"Current implementation reseeds using a number based on time.\n"
@@ -870,7 +1079,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:977
+#: modules/gdscript/doc_classes/@GDScript.xml:990
msgid ""
"Returns an array with the given range. Range can be 1 argument N (0 to N-1), "
"two arguments (initial, final-1) or three arguments (initial, final-1, "
@@ -900,7 +1109,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1017
+#: modules/gdscript/doc_classes/@GDScript.xml:1030
msgid ""
"Maps a [code]value[/code] from range [code][istart, istop][/code] to [code]"
"[ostart, ostop][/code].\n"
@@ -909,16 +1118,16 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1029
+#: modules/gdscript/doc_classes/@GDScript.xml:1042
msgid ""
-"Returns the integral value that is nearest to [code]s[/code], with halfway "
-"cases rounded away from zero.\n"
+"Rounds [code]s[/code] to the nearest whole number, with halfway cases "
+"rounded away from zero.\n"
"[codeblock]\n"
"round(2.6) # Returns 3\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1041
+#: modules/gdscript/doc_classes/@GDScript.xml:1054
msgid ""
"Sets seed for the random number generator.\n"
"[codeblock]\n"
@@ -927,7 +1136,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1054
+#: modules/gdscript/doc_classes/@GDScript.xml:1067
msgid ""
"Returns the sign of [code]s[/code]: -1 or 1. Returns 0 if [code]s[/code] is "
"0.\n"
@@ -938,7 +1147,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1068
+#: modules/gdscript/doc_classes/@GDScript.xml:1081
msgid ""
"Returns the sine of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -946,7 +1155,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1080
+#: modules/gdscript/doc_classes/@GDScript.xml:1093
msgid ""
"Returns the hyperbolic sine of [code]s[/code].\n"
"[codeblock]\n"
@@ -955,27 +1164,37 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1097
+#: modules/gdscript/doc_classes/@GDScript.xml:1110
msgid ""
-"Returns a number smoothly interpolated between the [code]from[/code] and "
-"[code]to[/code], based on the [code]weight[/code]. Similar to [method lerp], "
-"but interpolates faster at the beginning and slower at the end.\n"
+"Returns the result of smoothly interpolating the value of [code]s[/code] "
+"between [code]0[/code] and [code]1[/code], based on the where [code]s[/code] "
+"lies with respect to the edges [code]from[/code] and [code]to[/code].\n"
+"The return value is [code]0[/code] if [code]s <= from[/code], and [code]1[/"
+"code] if [code]s >= to[/code]. If [code]s[/code] lies between [code]from[/"
+"code] and [code]to[/code], the returned value follows an S-shaped curve that "
+"maps [code]s[/code] between [code]0[/code] and [code]1[/code].\n"
+"This S-shaped curve is the cubic Hermite interpolator, given by [code]f(s) = "
+"3*s^2 - 2*s^3[/code].\n"
"[codeblock]\n"
-"smoothstep(0, 2, 0.5) # Returns 0.15\n"
+"smoothstep(0, 2, -5.0) # Returns 0.0\n"
+"smoothstep(0, 2, 0.5) # Returns 0.15625\n"
"smoothstep(0, 2, 1.0) # Returns 0.5\n"
"smoothstep(0, 2, 2.0) # Returns 1.0\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1111
+#: modules/gdscript/doc_classes/@GDScript.xml:1127
msgid ""
-"Returns the square root of [code]s[/code].\n"
+"Returns the square root of [code]s[/code], where [code]s[/code] is a non-"
+"negative number.\n"
"[codeblock]\n"
"sqrt(9) # Returns 3\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b]Negative values of [code]s[/code] return NaN. If you need "
+"negative inputs, use [code]System.Numerics.Complex[/code] in C#."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1123
+#: modules/gdscript/doc_classes/@GDScript.xml:1140
msgid ""
"Returns the position of the first non-zero digit, after the decimal point. "
"Note that the maximum return value is 10, which is a design decision in the "
@@ -990,7 +1209,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1142
+#: modules/gdscript/doc_classes/@GDScript.xml:1159
msgid ""
"Snaps float value [code]s[/code] to a given [code]step[/code]. This can also "
"be used to round a floating point number to an arbitrary number of "
@@ -1001,7 +1220,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1153
+#: modules/gdscript/doc_classes/@GDScript.xml:1170
msgid ""
"Converts one or more arguments to string in the best way possible.\n"
"[codeblock]\n"
@@ -1012,7 +1231,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1168
+#: modules/gdscript/doc_classes/@GDScript.xml:1185
msgid ""
"Converts a formatted string that was returned by [method var2str] to the "
"original value.\n"
@@ -1023,7 +1242,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1182
+#: modules/gdscript/doc_classes/@GDScript.xml:1199
msgid ""
"Returns the tangent of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -1031,7 +1250,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1194
+#: modules/gdscript/doc_classes/@GDScript.xml:1211
msgid ""
"Returns the hyperbolic tangent of [code]s[/code].\n"
"[codeblock]\n"
@@ -1040,18 +1259,25 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1207
+#: modules/gdscript/doc_classes/@GDScript.xml:1224
msgid ""
-"Converts a Variant [code]var[/code] to JSON text and return the result. "
+"Converts a [Variant] [code]var[/code] to JSON text and return the result. "
"Useful for serializing data to store or send over the network.\n"
"[codeblock]\n"
+"# Both numbers below are integers.\n"
"a = { \"a\": 1, \"b\": 2 }\n"
"b = to_json(a)\n"
"print(b) # {\"a\":1, \"b\":2}\n"
-"[/codeblock]"
+"# Both numbers above are floats, even if they display without any decimal "
+"places.\n"
+"[/codeblock]\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, converting a [Variant] to JSON "
+"text will convert all numerical values to [float] types.\n"
+"See also [JSON] for an alternative way to convert a [Variant] to JSON text."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1221
+#: modules/gdscript/doc_classes/@GDScript.xml:1242
msgid ""
"Returns whether the given class exists in [ClassDB].\n"
"[codeblock]\n"
@@ -1060,7 +1286,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1234
+#: modules/gdscript/doc_classes/@GDScript.xml:1255
msgid ""
"Returns the internal type of the given Variant object, using the [enum "
"Variant.Type] values.\n"
@@ -1073,7 +1299,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1250
+#: modules/gdscript/doc_classes/@GDScript.xml:1271
msgid ""
"Checks that [code]json[/code] is valid JSON data. Returns an empty string if "
"valid, or an error message otherwise.\n"
@@ -1081,20 +1307,20 @@ msgid ""
"j = to_json([1, 2, 3])\n"
"v = validate_json(j)\n"
"if not v:\n"
-" print(\"valid\")\n"
+" print(\"Valid JSON.\")\n"
"else:\n"
-" prints(\"invalid\", v)\n"
+" push_error(\"Invalid JSON: \" + v)\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1269
+#: modules/gdscript/doc_classes/@GDScript.xml:1290
msgid ""
"Encodes a variable value to a byte array. When [code]full_objects[/code] is "
"[code]true[/code] encoding objects is allowed (and can potentially include "
"code)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1278
+#: modules/gdscript/doc_classes/@GDScript.xml:1299
msgid ""
"Converts a Variant [code]var[/code] to a formatted string that can later be "
"parsed using [method str2var].\n"
@@ -1111,7 +1337,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1298
+#: modules/gdscript/doc_classes/@GDScript.xml:1319
msgid ""
"Returns a weak reference to an object.\n"
"A weak reference to an object is not enough to keep the object alive: when "
@@ -1121,135 +1347,67 @@ msgid ""
"reference may return the object even if there are no strong references to it."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1312
+#: modules/gdscript/doc_classes/@GDScript.xml:1333
msgid ""
"Wraps float [code]value[/code] between [code]min[/code] and [code]max[/"
"code].\n"
"Usable for creating loop-alike behavior or infinite surfaces.\n"
"[codeblock]\n"
-"# a is 0.5\n"
-"a = wrapf(10.5, 0.0, 10.0)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# a is 9.5\n"
-"a = wrapf(-0.5, 0.0, 10.0)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# Infinite loop between 0.0 and 0.99\n"
-"f = wrapf(f + 0.1, 0.0, 1.0)\n"
+"# Infinite loop between 5.0 and 9.9\n"
+"value = wrapf(value + 0.1, 5.0, 10.0)\n"
"[/codeblock]\n"
"[codeblock]\n"
"# Infinite rotation (in radians)\n"
"angle = wrapf(angle + 0.1, 0.0, TAU)\n"
"[/codeblock]\n"
-"[b]Note:[/b] If you just want to wrap between 0.0 and [code]n[/code] (where "
-"[code]n[/code] is a positive floating-point value), it is better for "
-"performance to use the [method fmod] method like [code]fmod(number, n)[/"
-"code].\n"
-"[code]wrapf[/code] is more flexible than using the [method fmod] approach by "
-"giving the user a simple control over the minimum value. It also fully "
-"supports negative numbers, e.g.\n"
"[codeblock]\n"
"# Infinite rotation (in radians)\n"
"angle = wrapf(angle + 0.1, -PI, PI)\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] If [code]min[/code] is [code]0[/code], this is equivalent to "
+"[method fposmod], so prefer using that instead.\n"
+"[code]wrapf[/code] is more flexible than using the [method fposmod] approach "
+"by giving the user control over the minimum value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1348
+#: modules/gdscript/doc_classes/@GDScript.xml:1361
msgid ""
"Wraps integer [code]value[/code] between [code]min[/code] and [code]max[/"
"code].\n"
"Usable for creating loop-alike behavior or infinite surfaces.\n"
"[codeblock]\n"
-"# a is 0\n"
-"a = wrapi(10, 0, 10)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# a is 9\n"
-"a = wrapi(-1, 0, 10)\n"
+"# Infinite loop between 5 and 9\n"
+"frame = wrapi(frame + 1, 5, 10)\n"
"[/codeblock]\n"
"[codeblock]\n"
-"# Infinite loop between 0 and 9\n"
-"frame = wrapi(frame + 1, 0, 10)\n"
-"[/codeblock]\n"
-"[b]Note:[/b] If you just want to wrap between 0 and [code]n[/code] (where "
-"[code]n[/code] is a positive integer value), it is better for performance to "
-"use the modulo operator like [code]number % n[/code].\n"
-"[code]wrapi[/code] is more flexible than using the modulo approach by giving "
-"the user a simple control over the minimum value. It also fully supports "
-"negative numbers, e.g.\n"
-"[codeblock]\n"
"# result is -2\n"
"var result = wrapi(-6, -5, -1)\n"
-"[/codeblock]"
-msgstr ""
-
-#: modules/gdscript/doc_classes/@GDScript.xml:1378
-msgid ""
-"Stops the function execution and returns the current suspended state to the "
-"calling function.\n"
-"From the caller, call [method GDScriptFunctionState.resume] on the state to "
-"resume execution. This invalidates the state. Within the resumed function, "
-"[code]yield()[/code] returns whatever was passed to the [code]resume()[/"
-"code] function call.\n"
-"If passed an object and a signal, the execution is resumed when the object "
-"emits the given signal. In this case, [code]yield()[/code] returns the "
-"argument passed to [code]emit_signal()[/code] if the signal takes only one "
-"argument, or an array containing all the arguments passed to "
-"[code]emit_signal()[/code] if the signal takes multiple arguments.\n"
-"You can also use [code]yield[/code] to wait for a function to finish:\n"
-"[codeblock]\n"
-"func _ready():\n"
-" yield(countdown(), \"completed\") # waiting for the countdown() function "
-"to complete\n"
-" print('Ready')\n"
-"\n"
-"func countdown():\n"
-" yield(get_tree(), \"idle_frame\") # returns a GDScriptFunctionState "
-"object to _ready()\n"
-" print(3)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-" print(2)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-" print(1)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-"\n"
-"# prints:\n"
-"# 3\n"
-"# 2\n"
-"# 1\n"
-"# Ready\n"
"[/codeblock]\n"
-"When yielding on a function, the [code]completed[/code] signal will be "
-"emitted automatically when the function returns. It can, therefore, be used "
-"as the [code]signal[/code] parameter of the [code]yield[/code] method to "
-"resume.\n"
-"In order to yield on a function, the resulting function should also return a "
-"[code]GDScriptFunctionState[/code]. Notice [code]yield(get_tree(), "
-"\"idle_frame\")[/code] from the above example."
+"[b]Note:[/b] If [code]min[/code] is [code]0[/code], this is equivalent to "
+"[method posmod], so prefer using that instead.\n"
+"[code]wrapi[/code] is more flexible than using the [method posmod] approach "
+"by giving the user control over the minimum value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1409
+#: modules/gdscript/doc_classes/@GDScript.xml:1378
msgid ""
"Constant that represents how many times the diameter of a circle fits around "
-"its perimeter."
+"its perimeter. This is equivalent to [code]TAU / 2[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1412
-msgid "The circle constant, the circumference of the unit circle."
+#: modules/gdscript/doc_classes/@GDScript.xml:1381
+msgid "The circle constant, the circumference of the unit circle in radians."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1415
-msgid "A positive infinity. (For negative infinity, use -INF)."
+#: modules/gdscript/doc_classes/@GDScript.xml:1384
+msgid "Positive infinity. For negative infinity, use -INF."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1418
+#: modules/gdscript/doc_classes/@GDScript.xml:1387
msgid ""
-"Macro constant that expands to an expression of type float that represents a "
-"NaN.\n"
-"The NaN values are used to identify undefined or non-representable values "
-"for floating-point elements, such as the square root of negative numbers or "
-"the result of 0/0."
+"\"Not a Number\", an invalid value. [code]NaN[/code] has special properties, "
+"including that it is not equal to itself. It is output by some invalid "
+"operations, such as dividing zero by zero."
msgstr ""
#: doc/classes/@GlobalScope.xml:4
@@ -3485,130 +3643,141 @@ msgid ""
msgstr ""
#: doc/classes/AABB.xml:10 doc/classes/Plane.xml:10 doc/classes/Rect2.xml:11
-#: doc/classes/Rect2i.xml:11 doc/classes/Transform.xml:10
+#: doc/classes/Rect2i.xml:11 doc/classes/Transform.xml:11
#: doc/classes/Vector2.xml:12 doc/classes/Vector2i.xml:12
#: doc/classes/Vector3.xml:12 doc/classes/Vector3i.xml:12
msgid "https://docs.godotengine.org/en/latest/tutorials/math/index.html"
msgstr ""
#: doc/classes/AABB.xml:21
-msgid "Optional constructor, accepts position and size."
+msgid "Constructs an [AABB] from a position and size."
msgstr ""
-#: doc/classes/AABB.xml:30
+#: doc/classes/AABB.xml:28
+msgid ""
+"Returns an AABB with equivalent position and size, modified so that the most-"
+"negative corner is the origin and the size is positive."
+msgstr ""
+
+#: doc/classes/AABB.xml:37
msgid ""
"Returns [code]true[/code] if this [AABB] completely encloses another one."
msgstr ""
-#: doc/classes/AABB.xml:39
+#: doc/classes/AABB.xml:46
msgid "Returns this [AABB] expanded to include a given point."
msgstr ""
-#: doc/classes/AABB.xml:46
+#: doc/classes/AABB.xml:53
msgid "Returns the volume of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:55
+#: doc/classes/AABB.xml:62
msgid "Gets the position of the 8 endpoints of the [AABB] in space."
msgstr ""
-#: doc/classes/AABB.xml:62
+#: doc/classes/AABB.xml:69
msgid "Returns the normalized longest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:69
+#: doc/classes/AABB.xml:76
msgid ""
"Returns the index of the longest axis of the [AABB] (according to "
"[Vector3]'s [code]AXIS_*[/code] constants)."
msgstr ""
-#: doc/classes/AABB.xml:76
+#: doc/classes/AABB.xml:83
msgid "Returns the scalar length of the longest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:83
+#: doc/classes/AABB.xml:90
msgid "Returns the normalized shortest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:90
+#: doc/classes/AABB.xml:97
msgid ""
"Returns the index of the shortest axis of the [AABB] (according to "
"[Vector3]::AXIS* enum)."
msgstr ""
-#: doc/classes/AABB.xml:97
+#: doc/classes/AABB.xml:104
msgid "Returns the scalar length of the shortest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:106
+#: doc/classes/AABB.xml:113
msgid ""
"Returns the support point in a given direction. This is useful for collision "
"detection algorithms."
msgstr ""
-#: doc/classes/AABB.xml:115
+#: doc/classes/AABB.xml:122
msgid ""
"Returns a copy of the [AABB] grown a given amount of units towards all the "
"sides."
msgstr ""
-#: doc/classes/AABB.xml:122
+#: doc/classes/AABB.xml:129
msgid "Returns [code]true[/code] if the [AABB] is flat or empty."
msgstr ""
-#: doc/classes/AABB.xml:129
+#: doc/classes/AABB.xml:136
msgid "Returns [code]true[/code] if the [AABB] is empty."
msgstr ""
-#: doc/classes/AABB.xml:138
+#: doc/classes/AABB.xml:145
msgid "Returns [code]true[/code] if the [AABB] contains a point."
msgstr ""
-#: doc/classes/AABB.xml:147
+#: doc/classes/AABB.xml:154
msgid ""
"Returns the intersection between two [AABB]. An empty AABB (size 0,0,0) is "
"returned on failure."
msgstr ""
-#: doc/classes/AABB.xml:156
+#: doc/classes/AABB.xml:163
msgid "Returns [code]true[/code] if the [AABB] overlaps with another."
msgstr ""
-#: doc/classes/AABB.xml:165
+#: doc/classes/AABB.xml:172
msgid "Returns [code]true[/code] if the [AABB] is on both sides of a plane."
msgstr ""
-#: doc/classes/AABB.xml:176
+#: doc/classes/AABB.xml:183
msgid ""
"Returns [code]true[/code] if the [AABB] intersects the line segment between "
"[code]from[/code] and [code]to[/code]."
msgstr ""
-#: doc/classes/AABB.xml:185
+#: doc/classes/AABB.xml:192
msgid ""
"Returns [code]true[/code] if this [AABB] and [code]aabb[/code] are "
"approximately equal, by calling [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/AABB.xml:194
+#: doc/classes/AABB.xml:201
msgid ""
"Returns a larger [AABB] that contains both this [AABB] and [code]with[/code]."
msgstr ""
-#: doc/classes/AABB.xml:200
+#: doc/classes/AABB.xml:207 doc/classes/Rect2.xml:174
+#: doc/classes/Rect2i.xml:163
msgid ""
-"Ending corner. This is calculated as [code]position + size[/code]. Changing "
-"this property changes [member size] accordingly."
+"Ending corner. This is calculated as [code]position + size[/code]. Setting "
+"this value will change the size."
msgstr ""
-#: doc/classes/AABB.xml:203
-msgid "Beginning corner."
+#: doc/classes/AABB.xml:210 doc/classes/Rect2.xml:177
+#: doc/classes/Rect2i.xml:166
+msgid "Beginning corner. Typically has values lower than [member end]."
msgstr ""
-#: doc/classes/AABB.xml:206 doc/classes/Rect2.xml:180
+#: doc/classes/AABB.xml:213 doc/classes/Rect2.xml:180
#: doc/classes/Rect2i.xml:169
-msgid "Size from position to end."
+msgid ""
+"Size from [member position] to [member end]. Typically all components are "
+"positive.\n"
+"If the size is negative, you can use [method abs] to fix it."
msgstr ""
#: doc/classes/AcceptDialog.xml:4
@@ -3672,11 +3841,11 @@ msgstr ""
msgid "The text displayed by the dialog."
msgstr ""
-#: doc/classes/AcceptDialog.xml:82
+#: doc/classes/AcceptDialog.xml:83
msgid "Emitted when the dialog is accepted, i.e. the OK button is pressed."
msgstr ""
-#: doc/classes/AcceptDialog.xml:89
+#: doc/classes/AcceptDialog.xml:90
msgid "Emitted when a custom button is pressed. See [method add_button]."
msgstr ""
@@ -3729,7 +3898,7 @@ msgstr ""
#: doc/classes/AESContext.xml:54
msgid ""
"Get the current IV state for this context (IV gets updated when calling "
-"[method update]). You normally don't need this funciton.\n"
+"[method update]). You normally don't need this function.\n"
"Note: This function only makes sense when the context is started with "
"[constant MODE_CBC_ENCRYPT] or [constant MODE_CBC_DECRYPT]."
msgstr ""
@@ -3807,12 +3976,14 @@ msgid "If [code]true[/code], texture will be centered."
msgstr ""
#: doc/classes/AnimatedSprite2D.xml:46 doc/classes/Sprite2D.xml:41
-#: doc/classes/SpriteBase3D.xml:61 doc/classes/TextureRect.xml:18
+#: doc/classes/SpriteBase3D.xml:61 doc/classes/TextureButton.xml:19
+#: doc/classes/TextureRect.xml:18
msgid "If [code]true[/code], texture is flipped horizontally."
msgstr ""
#: doc/classes/AnimatedSprite2D.xml:49 doc/classes/Sprite2D.xml:44
-#: doc/classes/SpriteBase3D.xml:64 doc/classes/TextureRect.xml:21
+#: doc/classes/SpriteBase3D.xml:64 doc/classes/TextureButton.xml:22
+#: doc/classes/TextureRect.xml:21
msgid "If [code]true[/code], texture is flipped vertically."
msgstr ""
@@ -3979,10 +4150,10 @@ msgid ""
"[codeblock]\n"
"# This creates an animation that makes the node \"Enemy\" move to the right "
"by\n"
-"# 100 pixels in 1 second.\n"
+"# 100 pixels in 0.5 seconds.\n"
"var animation = Animation.new()\n"
"var track_index = animation.add_track(Animation.TYPE_VALUE)\n"
-"animation.track_set_path(track_index, \"Enemy:position.x\")\n"
+"animation.track_set_path(track_index, \"Enemy:position:x\")\n"
"animation.track_insert_key(track_index, 0.0, 0)\n"
"animation.track_insert_key(track_index, 0.5, 100)\n"
"[/codeblock]\n"
@@ -6110,10 +6281,10 @@ msgstr ""
msgid ""
"Returns [code]true[/code] if the array contains the given value.\n"
"[codeblock]\n"
-"[\"inside\", 7].has(\"inside\") == true\n"
-"[\"inside\", 7].has(\"outside\") == false\n"
-"[\"inside\", 7].has(7) == true\n"
-"[\"inside\", 7].has(\"7\") == false\n"
+"print([\"inside\", 7].has(\"inside\")) # True\n"
+"print([\"inside\", 7].has(\"outside\")) # False\n"
+"print([\"inside\", 7].has(7)) # True\n"
+"print([\"inside\", 7].has(\"7\")) # False\n"
"[/codeblock]\n"
"[b]Note:[/b] This is equivalent to using the [code]in[/code] operator as "
"follows:\n"
@@ -6134,11 +6305,11 @@ msgid ""
"valid, or at the end of the array ([code]pos == size()[/code])."
msgstr ""
-#: doc/classes/Array.xml:265 doc/classes/PackedByteArray.xml:107
-#: doc/classes/PackedColorArray.xml:62 doc/classes/PackedFloat32Array.xml:63
-#: doc/classes/PackedFloat64Array.xml:63 doc/classes/PackedInt32Array.xml:63
-#: doc/classes/PackedInt64Array.xml:63 doc/classes/PackedStringArray.xml:62
-#: doc/classes/PackedVector2Array.xml:62 doc/classes/PackedVector3Array.xml:62
+#: doc/classes/Array.xml:265 doc/classes/PackedByteArray.xml:116
+#: doc/classes/PackedColorArray.xml:71 doc/classes/PackedFloat32Array.xml:72
+#: doc/classes/PackedFloat64Array.xml:72 doc/classes/PackedInt32Array.xml:72
+#: doc/classes/PackedInt64Array.xml:72 doc/classes/PackedStringArray.xml:71
+#: doc/classes/PackedVector2Array.xml:71 doc/classes/PackedVector3Array.xml:71
msgid "Reverses the order of the elements in the array."
msgstr ""
@@ -6168,8 +6339,8 @@ msgid ""
"code] if the array is empty."
msgstr ""
-#: doc/classes/Array.xml:302 doc/classes/PackedByteArray.xml:116
-#: doc/classes/PackedFloat32Array.xml:72 doc/classes/PackedFloat64Array.xml:72
+#: doc/classes/Array.xml:302 doc/classes/PackedByteArray.xml:125
+#: doc/classes/PackedFloat32Array.xml:81 doc/classes/PackedFloat64Array.xml:81
msgid "Appends an element at the end of the array."
msgstr ""
@@ -6177,11 +6348,11 @@ msgstr ""
msgid "Adds an element at the beginning of the array."
msgstr ""
-#: doc/classes/Array.xml:320 doc/classes/PackedByteArray.xml:125
-#: doc/classes/PackedColorArray.xml:80 doc/classes/PackedFloat32Array.xml:81
-#: doc/classes/PackedFloat64Array.xml:81 doc/classes/PackedInt32Array.xml:81
-#: doc/classes/PackedInt64Array.xml:81 doc/classes/PackedStringArray.xml:80
-#: doc/classes/PackedVector2Array.xml:80 doc/classes/PackedVector3Array.xml:80
+#: doc/classes/Array.xml:320 doc/classes/PackedByteArray.xml:134
+#: doc/classes/PackedColorArray.xml:89 doc/classes/PackedFloat32Array.xml:90
+#: doc/classes/PackedFloat64Array.xml:90 doc/classes/PackedInt32Array.xml:90
+#: doc/classes/PackedInt64Array.xml:90 doc/classes/PackedStringArray.xml:89
+#: doc/classes/PackedVector2Array.xml:89 doc/classes/PackedVector3Array.xml:89
msgid "Removes an element from the array by index."
msgstr ""
@@ -6464,7 +6635,7 @@ msgid ""
msgstr ""
#: doc/classes/ArrayMesh.xml:235 doc/classes/Mesh.xml:210
-#: doc/classes/RenderingServer.xml:3115
+#: doc/classes/RenderingServer.xml:3111
msgid "Represents the size of the [enum ArrayType] enum."
msgstr ""
@@ -8281,7 +8452,9 @@ msgid ""
msgstr ""
#: doc/classes/BaseButton.xml:16
-msgid "Called when the button is pressed."
+msgid ""
+"Called when the button is pressed. If you need to know the button's pressed "
+"state (and [member toggle_mode] is active), use [method _toggled] instead."
msgstr ""
#: doc/classes/BaseButton.xml:25
@@ -8375,43 +8548,45 @@ msgstr ""
msgid ""
"Emitted when the button is toggled or pressed. This is on [signal "
"button_down] if [member action_mode] is [constant ACTION_MODE_BUTTON_PRESS] "
-"and on [signal button_up] otherwise."
+"and on [signal button_up] otherwise.\n"
+"If you need to know the button's pressed state (and [member toggle_mode] is "
+"active), use [signal toggled] instead."
msgstr ""
-#: doc/classes/BaseButton.xml:98
+#: doc/classes/BaseButton.xml:99
msgid ""
"Emitted when the button was just toggled between pressed and normal states "
"(only if [member toggle_mode] is active). The new state is contained in the "
"[code]button_pressed[/code] argument."
msgstr ""
-#: doc/classes/BaseButton.xml:104
+#: doc/classes/BaseButton.xml:105
msgid ""
"The normal state (i.e. not pressed, not hovered, not toggled and enabled) of "
"buttons."
msgstr ""
-#: doc/classes/BaseButton.xml:107
+#: doc/classes/BaseButton.xml:108
msgid "The state of buttons are pressed."
msgstr ""
-#: doc/classes/BaseButton.xml:110
+#: doc/classes/BaseButton.xml:111
msgid "The state of buttons are hovered."
msgstr ""
-#: doc/classes/BaseButton.xml:113
+#: doc/classes/BaseButton.xml:114
msgid "The state of buttons are disabled."
msgstr ""
-#: doc/classes/BaseButton.xml:116
+#: doc/classes/BaseButton.xml:117
msgid "The state of buttons are both hovered and pressed."
msgstr ""
-#: doc/classes/BaseButton.xml:119
+#: doc/classes/BaseButton.xml:120
msgid "Require just a press to consider the button clicked."
msgstr ""
-#: doc/classes/BaseButton.xml:122
+#: doc/classes/BaseButton.xml:123
msgid ""
"Require a press and a subsequent release before considering the button "
"clicked."
@@ -9104,22 +9279,22 @@ msgstr ""
msgid "Represents the size of the [enum TextureParam] enum."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:451 doc/classes/RenderingServer.xml:3657
-#: doc/classes/Viewport.xml:390
+#: doc/classes/BaseMaterial3D.xml:451 doc/classes/RenderingServer.xml:3668
+#: doc/classes/Viewport.xml:393
msgid ""
"The texture filter reads from the nearest pixel only. The simplest and "
"fastest method of filtering, but the texture will look pixelized."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:454 doc/classes/RenderingServer.xml:3660
-#: doc/classes/Viewport.xml:393
+#: doc/classes/BaseMaterial3D.xml:454 doc/classes/RenderingServer.xml:3671
+#: doc/classes/Viewport.xml:396
msgid ""
"The texture filter blends between the nearest 4 pixels. Use this when you "
"want to avoid a pixelated style, but do not want mipmaps."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:457 doc/classes/RenderingServer.xml:3663
-#: doc/classes/Viewport.xml:396
+#: doc/classes/BaseMaterial3D.xml:457 doc/classes/RenderingServer.xml:3674
+#: doc/classes/Viewport.xml:399
msgid ""
"The texture filter reads from the nearest pixel in the nearest mipmap. The "
"fastest way to read from textures with mipmaps."
@@ -9132,14 +9307,14 @@ msgid ""
"smooth out pixels that are far from the camera."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:463 doc/classes/RenderingServer.xml:3669
+#: doc/classes/BaseMaterial3D.xml:463 doc/classes/RenderingServer.xml:3680
msgid ""
"The texture filter reads from the nearest pixel, but selects a mipmap based "
"on the angle between the surface and the camera view. This reduces artifacts "
"on surfaces that are almost in line with the camera."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:466 doc/classes/RenderingServer.xml:3672
+#: doc/classes/BaseMaterial3D.xml:466 doc/classes/RenderingServer.xml:3683
msgid ""
"The texture filter blends between the nearest 4 pixels and selects a mipmap "
"based on the angle between the surface and the camera view. This reduces "
@@ -9148,7 +9323,7 @@ msgid ""
"texturing."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:469 doc/classes/CanvasItem.xml:685
+#: doc/classes/BaseMaterial3D.xml:469 doc/classes/CanvasItem.xml:695
msgid "Represents the size of the [enum TextureFilter] enum."
msgstr ""
@@ -9371,8 +9546,8 @@ msgstr ""
msgid "Enables the shadow to opacity feature."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:622 doc/classes/RenderingServer.xml:3684
-#: doc/classes/Viewport.xml:408
+#: doc/classes/BaseMaterial3D.xml:622 doc/classes/RenderingServer.xml:3695
+#: doc/classes/Viewport.xml:411
msgid ""
"Enables the texture to repeat when UV coordinates are outside the 0-1 range. "
"If using one of the linear filtering modes, this can result in artifacts at "
@@ -9513,167 +9688,195 @@ msgstr ""
#: doc/classes/Basis.xml:7
msgid ""
-"3×3 matrix used for 3D rotation and scale. Contains 3 vector fields X, Y and "
-"Z as its columns, which can be interpreted as the local basis vectors of a "
-"transformation. Can also be accessed as array of 3D vectors. These vectors "
-"are orthogonal to each other, but are not necessarily normalized (due to "
-"scaling). Almost always used as an orthogonal basis for a [Transform].\n"
-"For such use, it is composed of a scaling and a rotation matrix, in that "
-"order (M = R.S)."
+"3×3 matrix used for 3D rotation and scale. Almost always used as an "
+"orthogonal basis for a Transform.\n"
+"Contains 3 vector fields X, Y and Z as its columns, which are typically "
+"interpreted as the local basis vectors of a transformation. For such use, it "
+"is composed of a scaling and a rotation matrix, in that order (M = R.S).\n"
+"Can also be accessed as array of 3D vectors. These vectors are normally "
+"orthogonal to each other, but are not necessarily normalized (due to "
+"scaling).\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
+msgstr ""
+
+#: doc/classes/Basis.xml:13 doc/classes/Transform.xml:12
+#: doc/classes/Transform2D.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/math/"
+"matrices_and_transforms.html"
msgstr ""
-#: doc/classes/Basis.xml:11 doc/classes/Transform.xml:11
+#: doc/classes/Basis.xml:14 doc/classes/Transform.xml:13
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/using_transforms.html"
msgstr ""
-#: doc/classes/Basis.xml:20
-msgid "Create a rotation matrix from the given quaternion."
+#: doc/classes/Basis.xml:23
+msgid "Constructs a pure rotation basis matrix from the given quaternion."
msgstr ""
-#: doc/classes/Basis.xml:29
+#: doc/classes/Basis.xml:32
msgid ""
-"Create a rotation matrix (in the YXZ convention: first Z, then X, and Y "
-"last) from the specified Euler angles, given in the vector format as (X "
-"angle, Y angle, Z angle)."
+"Constructs a pure rotation basis matrix from the given Euler angles (in the "
+"YXZ convention: when *composing*, first Y, then X, and Z last), given in the "
+"vector format as (X angle, Y angle, Z angle).\n"
+"Consider using the [Quat] constructor instead, which uses a quaternion "
+"instead of Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:40
+#: doc/classes/Basis.xml:44
msgid ""
-"Create a rotation matrix which rotates around the given axis by the "
-"specified angle, in radians. The axis must be a normalized vector."
+"Constructs a pure rotation basis matrix, rotated around the given "
+"[code]axis[/code] by [code]phi[/code], in radians. The axis must be a "
+"normalized vector."
msgstr ""
-#: doc/classes/Basis.xml:53
-msgid "Create a matrix from 3 axis vectors."
+#: doc/classes/Basis.xml:57
+msgid "Constructs a basis matrix from 3 axis vectors (matrix columns)."
msgstr ""
-#: doc/classes/Basis.xml:60
-msgid "Returns the determinant of the matrix."
+#: doc/classes/Basis.xml:64
+msgid ""
+"Returns the determinant of the basis matrix. If the basis is uniformly "
+"scaled, its determinant is the square of the scale.\n"
+"A negative determinant means the basis has a negative scale. A zero "
+"determinant means the basis isn't invertible, and is usually considered "
+"invalid."
msgstr ""
-#: doc/classes/Basis.xml:67
+#: doc/classes/Basis.xml:72
msgid ""
"Returns the basis's rotation in the form of Euler angles (in the YXZ "
-"convention: first Z, then X, and Y last). The returned vector contains the "
-"rotation angles in the format (X angle, Y angle, Z angle). See [method "
-"get_rotation_quat] if you need a quaternion instead."
+"convention: when decomposing, first Z, then X, and Y last). The returned "
+"vector contains the rotation angles in the format (X angle, Y angle, Z "
+"angle).\n"
+"Consider using the [method get_rotation_quat] method instead, which returns "
+"a [Quat] quaternion instead of Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:74
+#: doc/classes/Basis.xml:80
msgid ""
"This function considers a discretization of rotations into 24 points on unit "
"sphere, lying along the vectors (x,y,z) with each component being either -1, "
"0, or 1, and returns the index of the point best representing the "
-"orientation of the object. It is mainly used by the grid map editor. For "
+"orientation of the object. It is mainly used by the [GridMap] editor. For "
"further details, refer to the Godot source code."
msgstr ""
-#: doc/classes/Basis.xml:81
+#: doc/classes/Basis.xml:87
msgid ""
"Returns the basis's rotation in the form of a quaternion. See [method "
"get_euler] if you need Euler angles, but keep in mind quaternions should "
"generally be preferred to Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:88
+#: doc/classes/Basis.xml:94
msgid ""
"Assuming that the matrix is the combination of a rotation and scaling, "
"return the absolute value of scaling factors along each axis."
msgstr ""
-#: doc/classes/Basis.xml:95 doc/classes/Transform2D.xml:49
+#: doc/classes/Basis.xml:101
msgid "Returns the inverse of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:106
+#: doc/classes/Basis.xml:112
msgid ""
"Returns [code]true[/code] if this basis and [code]b[/code] are approximately "
"equal, by calling [code]is_equal_approx[/code] on each component."
msgstr ""
-#: doc/classes/Basis.xml:113
+#: doc/classes/Basis.xml:119
msgid ""
"Returns the orthonormalized version of the matrix (useful to call from time "
"to time to avoid rounding error for orthogonal matrices). This performs a "
"Gram-Schmidt orthonormalization on the basis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:124
+#: doc/classes/Basis.xml:130
msgid ""
"Introduce an additional rotation around the given axis by phi (radians). The "
"axis must be a normalized vector."
msgstr ""
-#: doc/classes/Basis.xml:133
+#: doc/classes/Basis.xml:139
msgid ""
"Introduce an additional scaling specified by the given 3D scaling factor."
msgstr ""
-#: doc/classes/Basis.xml:144
+#: doc/classes/Basis.xml:150
msgid ""
"Assuming that the matrix is a proper rotation matrix, slerp performs a "
"spherical-linear interpolation with another rotation matrix."
msgstr ""
-#: doc/classes/Basis.xml:153
+#: doc/classes/Basis.xml:159
msgid "Transposed dot product with the X axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:162
+#: doc/classes/Basis.xml:168
msgid "Transposed dot product with the Y axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:171
+#: doc/classes/Basis.xml:177
msgid "Transposed dot product with the Z axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:178
+#: doc/classes/Basis.xml:184
msgid "Returns the transposed version of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:187
+#: doc/classes/Basis.xml:193
msgid "Returns a vector transformed (multiplied) by the matrix."
msgstr ""
-#: doc/classes/Basis.xml:196
+#: doc/classes/Basis.xml:202
msgid ""
-"Returns a vector transformed (multiplied) by the transposed matrix.\n"
+"Returns a vector transformed (multiplied) by the transposed basis matrix.\n"
"[b]Note:[/b] This results in a multiplication by the inverse of the matrix "
"only if it represents a rotation-reflection."
msgstr ""
-#: doc/classes/Basis.xml:203
-msgid "The basis matrix's X vector."
+#: doc/classes/Basis.xml:209 doc/classes/Transform2D.xml:181
+msgid ""
+"The basis matrix's X vector (column 0). Equivalent to array index [code]0[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:206
-msgid "The basis matrix's Y vector."
+#: doc/classes/Basis.xml:212 doc/classes/Transform2D.xml:184
+msgid ""
+"The basis matrix's Y vector (column 1). Equivalent to array index [code]1[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:209
-msgid "The basis matrix's Z vector."
+#: doc/classes/Basis.xml:215
+msgid ""
+"The basis matrix's Z vector (column 2). Equivalent to array index [code]2[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:214
+#: doc/classes/Basis.xml:220
msgid ""
-"The identity basis. This is identical to calling [code]Basis()[/code] "
-"without any parameters. This constant can be used to make your code clearer."
+"The identity basis, with no rotation or scaling applied.\n"
+"This is identical to calling [code]Basis()[/code] without any parameters. "
+"This constant can be used to make your code clearer, and for consistency "
+"with C#."
msgstr ""
-#: doc/classes/Basis.xml:217
+#: doc/classes/Basis.xml:224
msgid ""
"The basis that will flip something along the X axis when used in a "
"transformation."
msgstr ""
-#: doc/classes/Basis.xml:220
+#: doc/classes/Basis.xml:227
msgid ""
"The basis that will flip something along the Y axis when used in a "
"transformation."
msgstr ""
-#: doc/classes/Basis.xml:223
+#: doc/classes/Basis.xml:230
msgid ""
"The basis that will flip something along the Z axis when used in a "
"transformation."
@@ -9986,97 +10189,111 @@ msgstr ""
#: doc/classes/Button.xml:7
msgid ""
"Button is the standard themed button. It can contain text and an icon, and "
-"will display them according to the current [Theme]."
+"will display them according to the current [Theme].\n"
+"[b]Example of creating a button and assigning an action when pressed by code:"
+"[/b]\n"
+"[codeblock]\n"
+"func _ready():\n"
+" var button = Button.new()\n"
+" button.text = \"Click me\"\n"
+" button.connect(\"pressed\", self, \"_button_pressed\")\n"
+" add_child(button)\n"
+"\n"
+"func _button_pressed():\n"
+" print(\"Hello world!\")\n"
+"[/codeblock]\n"
+"Buttons (like all Control nodes) can also be created in the editor, but some "
+"situations may require creating them from code."
msgstr ""
-#: doc/classes/Button.xml:15
+#: doc/classes/Button.xml:27
msgid ""
"Text alignment policy for the button's text, use one of the [enum TextAlign] "
"constants."
msgstr ""
-#: doc/classes/Button.xml:18
+#: doc/classes/Button.xml:30
msgid ""
"When this property is enabled, text that is too large to fit the button is "
"clipped, when disabled the Button will always be wide enough to hold the "
"text."
msgstr ""
-#: doc/classes/Button.xml:21
+#: doc/classes/Button.xml:33
msgid ""
"When enabled, the button's icon will expand/shrink to fit the button's size "
"while keeping its aspect."
msgstr ""
-#: doc/classes/Button.xml:24
+#: doc/classes/Button.xml:36
msgid "Flat buttons don't display decoration."
msgstr ""
-#: doc/classes/Button.xml:27
+#: doc/classes/Button.xml:39
msgid ""
"Button's icon, if text is present the icon will be placed before the text."
msgstr ""
-#: doc/classes/Button.xml:30 doc/classes/LinkButton.xml:18
+#: doc/classes/Button.xml:42 doc/classes/LinkButton.xml:18
msgid "The button's text that will be displayed inside the button's area."
msgstr ""
-#: doc/classes/Button.xml:35
+#: doc/classes/Button.xml:47
msgid "Align the text to the left."
msgstr ""
-#: doc/classes/Button.xml:38
+#: doc/classes/Button.xml:50
msgid "Align the text to the center."
msgstr ""
-#: doc/classes/Button.xml:41
+#: doc/classes/Button.xml:53
msgid "Align the text to the right."
msgstr ""
-#: doc/classes/Button.xml:46
+#: doc/classes/Button.xml:58
msgid "[StyleBox] used when the [Button] is disabled."
msgstr ""
-#: doc/classes/Button.xml:49
+#: doc/classes/Button.xml:61
msgid ""
"[StyleBox] used when the [Button] is focused. It is displayed over the "
"current [StyleBox], so using [StyleBoxEmpty] will just disable the focus "
"visual effect."
msgstr ""
-#: doc/classes/Button.xml:52
+#: doc/classes/Button.xml:64
msgid "[Font] of the [Button]'s text."
msgstr ""
-#: doc/classes/Button.xml:55
+#: doc/classes/Button.xml:67
msgid "Default text [Color] of the [Button]."
msgstr ""
-#: doc/classes/Button.xml:58
+#: doc/classes/Button.xml:70
msgid "Text [Color] used when the [Button] is disabled."
msgstr ""
-#: doc/classes/Button.xml:61
+#: doc/classes/Button.xml:73
msgid "Text [Color] used when the [Button] is being hovered."
msgstr ""
-#: doc/classes/Button.xml:64
+#: doc/classes/Button.xml:76
msgid "Text [Color] used when the [Button] is being pressed."
msgstr ""
-#: doc/classes/Button.xml:67
+#: doc/classes/Button.xml:79
msgid "[StyleBox] used when the [Button] is being hovered."
msgstr ""
-#: doc/classes/Button.xml:70
+#: doc/classes/Button.xml:82
msgid "The horizontal space between [Button]'s icon and text."
msgstr ""
-#: doc/classes/Button.xml:73
+#: doc/classes/Button.xml:85
msgid "Default [StyleBox] for the [Button]."
msgstr ""
-#: doc/classes/Button.xml:76
+#: doc/classes/Button.xml:88
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr ""
@@ -10728,7 +10945,7 @@ msgstr ""
#: doc/classes/CameraEffects.xml:37
msgid ""
"The exposure override value to use. Higher values will result in a brighter "
-"scene. Only effective if [member override_exposure_enable] is [code]true[/"
+"scene. Only effective if [member override_exposure_enabled] is [code]true[/"
"code]."
msgstr ""
@@ -10982,265 +11199,282 @@ msgid ""
msgstr ""
#: doc/classes/CanvasItem.xml:319
-msgid "Draws a string using a custom font."
+msgid ""
+"Draws [code]text[/code] using the specified [code]font[/code] at the "
+"[code]position[/code] (top-left corner). The text will have its color "
+"multiplied by [code]modulate[/code]. If [code]clip_w[/code] is greater than "
+"or equal to 0, the text will be clipped if it exceeds the specified width.\n"
+"[b]Example using the default project font:[/b]\n"
+"[codeblock]\n"
+"# If using this method in a script that redraws constantly, move the\n"
+"# `default_font` declaration to a member variable assigned in `_ready()`\n"
+"# so the Control is only created once.\n"
+"var default_font = Control.new().get_font(\"font\")\n"
+"draw_string(default_font, Vector2(64, 64), \"Hello world\")\n"
+"[/codeblock]\n"
+"See also [method Font.draw]."
msgstr ""
-#: doc/classes/CanvasItem.xml:330
+#: doc/classes/CanvasItem.xml:339
msgid "Draws a styled rectangle."
msgstr ""
-#: doc/classes/CanvasItem.xml:353
+#: doc/classes/CanvasItem.xml:362
msgid "Draws a texture at a given position."
msgstr ""
-#: doc/classes/CanvasItem.xml:380
+#: doc/classes/CanvasItem.xml:389
msgid ""
"Draws a textured rectangle at a given position, optionally modulated by a "
"color. If [code]transpose[/code] is [code]true[/code], the texture will have "
"its X and Y coordinates swapped."
msgstr ""
-#: doc/classes/CanvasItem.xml:409
+#: doc/classes/CanvasItem.xml:418
msgid ""
"Draws a textured rectangle region at a given position, optionally modulated "
"by a color. If [code]transpose[/code] is [code]true[/code], the texture will "
"have its X and Y coordinates swapped."
msgstr ""
-#: doc/classes/CanvasItem.xml:416 doc/classes/Node3D.xml:19
+#: doc/classes/CanvasItem.xml:425 doc/classes/Node3D.xml:19
msgid ""
"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."
msgstr ""
-#: doc/classes/CanvasItem.xml:423
+#: doc/classes/CanvasItem.xml:432
msgid "Returns the [RID] of the [World2D] canvas where this item is in."
msgstr ""
-#: doc/classes/CanvasItem.xml:430
+#: doc/classes/CanvasItem.xml:439
msgid "Returns the canvas item RID used by [RenderingServer] for this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:437
+#: doc/classes/CanvasItem.xml:446
msgid "Returns the transform matrix of this item's canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:444
+#: doc/classes/CanvasItem.xml:453
msgid "Returns the global position of the mouse."
msgstr ""
-#: doc/classes/CanvasItem.xml:451
+#: doc/classes/CanvasItem.xml:460
msgid "Returns the global transform matrix of this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:458
+#: doc/classes/CanvasItem.xml:467
msgid ""
"Returns the global transform matrix of this item in relation to the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:465
+#: doc/classes/CanvasItem.xml:474
msgid "Returns the mouse position relative to this item's position."
msgstr ""
-#: doc/classes/CanvasItem.xml:472
+#: doc/classes/CanvasItem.xml:481
msgid "Returns the transform matrix of this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:479
+#: doc/classes/CanvasItem.xml:488
msgid "Returns the viewport's boundaries as a [Rect2]."
msgstr ""
-#: doc/classes/CanvasItem.xml:486
+#: doc/classes/CanvasItem.xml:495
msgid "Returns this item's transform in relation to the viewport."
msgstr ""
-#: doc/classes/CanvasItem.xml:493
+#: doc/classes/CanvasItem.xml:502
msgid "Returns the [World2D] where this item is in."
msgstr ""
-#: doc/classes/CanvasItem.xml:500
+#: doc/classes/CanvasItem.xml:509
msgid "Hide the [CanvasItem] if it's currently visible."
msgstr ""
-#: doc/classes/CanvasItem.xml:507
+#: doc/classes/CanvasItem.xml:516
msgid ""
"Returns [code]true[/code] if local transform notifications are communicated "
"to children."
msgstr ""
-#: doc/classes/CanvasItem.xml:514
+#: doc/classes/CanvasItem.xml:523
msgid ""
"Returns [code]true[/code] if the node is set as top-level. See [method "
"set_as_toplevel]."
msgstr ""
-#: doc/classes/CanvasItem.xml:521
+#: doc/classes/CanvasItem.xml:530
msgid ""
"Returns [code]true[/code] if global transform notifications are communicated "
"to children."
msgstr ""
-#: doc/classes/CanvasItem.xml:528
+#: doc/classes/CanvasItem.xml:537 doc/classes/Node3D.xml:104
msgid ""
"Returns [code]true[/code] if the node is present in the [SceneTree], its "
-"[member visible] property is [code]true[/code] and its inherited visibility "
-"is also [code]true[/code]."
+"[member visible] property is [code]true[/code] and all its antecedents are "
+"also visible. If any antecedent is hidden, this node will not be visible in "
+"the scene tree."
msgstr ""
-#: doc/classes/CanvasItem.xml:537
+#: doc/classes/CanvasItem.xml:546
msgid "Assigns [code]screen_point[/code] as this node's new local transform."
msgstr ""
-#: doc/classes/CanvasItem.xml:546
+#: doc/classes/CanvasItem.xml:555
msgid ""
"Transformations issued by [code]event[/code]'s inputs are applied in local "
"space instead of global space."
msgstr ""
-#: doc/classes/CanvasItem.xml:555
+#: doc/classes/CanvasItem.xml:564
msgid ""
"If [code]enable[/code] is [code]true[/code], the node won't inherit its "
"transform from parent canvas items."
msgstr ""
-#: doc/classes/CanvasItem.xml:564
+#: doc/classes/CanvasItem.xml:573
msgid ""
"If [code]enable[/code] is [code]true[/code], children will be updated with "
"local transform data."
msgstr ""
-#: doc/classes/CanvasItem.xml:573
+#: doc/classes/CanvasItem.xml:582
msgid ""
"If [code]enable[/code] is [code]true[/code], children will be updated with "
"global transform data."
msgstr ""
-#: doc/classes/CanvasItem.xml:580
+#: doc/classes/CanvasItem.xml:589
msgid ""
"Show the [CanvasItem] if it's currently hidden. For controls that inherit "
"[Popup], the correct way to make them visible is to call one of the multiple "
"[code]popup*()[/code] functions instead."
msgstr ""
-#: doc/classes/CanvasItem.xml:587
+#: doc/classes/CanvasItem.xml:596
msgid ""
"Queue the [CanvasItem] for update. [constant NOTIFICATION_DRAW] will be "
"called on idle time to request redraw."
msgstr ""
-#: doc/classes/CanvasItem.xml:593
+#: doc/classes/CanvasItem.xml:602
msgid ""
"The rendering layers in which this [CanvasItem] responds to [Light2D] nodes."
msgstr ""
-#: doc/classes/CanvasItem.xml:596
+#: doc/classes/CanvasItem.xml:605
msgid "The material applied to textures on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:599
+#: doc/classes/CanvasItem.xml:608
msgid "The color applied to textures on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:602
+#: doc/classes/CanvasItem.xml:611
msgid ""
"The color applied to textures on this [CanvasItem]. This is not inherited by "
"children [CanvasItem]s."
msgstr ""
-#: doc/classes/CanvasItem.xml:605
+#: doc/classes/CanvasItem.xml:614
msgid "If [code]true[/code], the object draws behind its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:608
+#: doc/classes/CanvasItem.xml:617
msgid "If [code]true[/code], the object draws on top of its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:611
+#: doc/classes/CanvasItem.xml:620
msgid "The texture filtering mode to use on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:614
+#: doc/classes/CanvasItem.xml:623
msgid "The texture repeating mode to use on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:617
+#: doc/classes/CanvasItem.xml:626
msgid ""
"If [code]true[/code], the parent [CanvasItem]'s [member material] property "
"is used as this one's material."
msgstr ""
-#: doc/classes/CanvasItem.xml:620
+#: doc/classes/CanvasItem.xml:629
msgid ""
-"If [code]true[/code], this [CanvasItem] is drawn. For controls that inherit "
-"[Popup], the correct way to make them visible is to call one of the multiple "
-"[code]popup*()[/code] functions instead."
+"If [code]true[/code], this [CanvasItem] is drawn. The node is only visible "
+"if all of its antecedents are visible as well (in other words, [method "
+"is_visible_in_tree] must return [code]true[/code]).\n"
+"[b]Note:[/b] For controls that inherit [Popup], the correct way to make them "
+"visible is to call one of the multiple [code]popup*()[/code] functions "
+"instead."
msgstr ""
-#: doc/classes/CanvasItem.xml:626
+#: doc/classes/CanvasItem.xml:636
msgid ""
"Emitted when the [CanvasItem] must redraw. This can only be connected "
"realtime, as deferred will not allow drawing."
msgstr ""
-#: doc/classes/CanvasItem.xml:631
+#: doc/classes/CanvasItem.xml:641
msgid "Emitted when becoming hidden."
msgstr ""
-#: doc/classes/CanvasItem.xml:636
+#: doc/classes/CanvasItem.xml:646
msgid "Emitted when the item rect has changed."
msgstr ""
-#: doc/classes/CanvasItem.xml:641
+#: doc/classes/CanvasItem.xml:651
msgid "Emitted when the visibility (hidden/visible) changes."
msgstr ""
-#: doc/classes/CanvasItem.xml:647
+#: doc/classes/CanvasItem.xml:657
msgid ""
"The [CanvasItem]'s transform has changed. This notification is only received "
"if enabled by [method set_notify_transform] or [method "
"set_notify_local_transform]."
msgstr ""
-#: doc/classes/CanvasItem.xml:650
+#: doc/classes/CanvasItem.xml:660
msgid "The [CanvasItem] is requested to draw."
msgstr ""
-#: doc/classes/CanvasItem.xml:653
+#: doc/classes/CanvasItem.xml:663
msgid "The [CanvasItem]'s visibility has changed."
msgstr ""
-#: doc/classes/CanvasItem.xml:656
+#: doc/classes/CanvasItem.xml:666
msgid "The [CanvasItem] has entered the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:659
+#: doc/classes/CanvasItem.xml:669
msgid "The [CanvasItem] has exited the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:662 doc/classes/CanvasItem.xml:688
+#: doc/classes/CanvasItem.xml:672 doc/classes/CanvasItem.xml:698
msgid "The [CanvasItem] will inherit the filter from its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:665
+#: doc/classes/CanvasItem.xml:675
msgid ""
"The texture filter reads from the nearest pixel only. The simplest and "
"fastest method of filtering. Useful for pixel art."
msgstr ""
-#: doc/classes/CanvasItem.xml:668
+#: doc/classes/CanvasItem.xml:678
msgid ""
"The texture filter blends between the nearest four pixels. Use this for most "
"cases where you want to avoid a pixelated style."
msgstr ""
-#: doc/classes/CanvasItem.xml:671
+#: doc/classes/CanvasItem.xml:681
msgid ""
"The texture filter reads from the nearest pixel in the nearest mipmap. This "
"is the fastest way to read from textures with mipmaps."
msgstr ""
-#: doc/classes/CanvasItem.xml:674
+#: doc/classes/CanvasItem.xml:684
msgid ""
"The texture filter blends between the nearest 4 pixels and between the "
"nearest 2 mipmaps. Use this for non-pixel art textures that may be viewed at "
@@ -11248,7 +11482,7 @@ msgid ""
"smooth out pixels that are smaller than on-screen pixels."
msgstr ""
-#: doc/classes/CanvasItem.xml:677
+#: doc/classes/CanvasItem.xml:687
msgid ""
"The texture filter reads from the nearest pixel, but selects a mipmap based "
"on the angle between the surface and the camera view. This reduces artifacts "
@@ -11257,7 +11491,7 @@ msgid ""
"TEXTURE_FILTER_NEAREST_WITH_MIPMAPS] is usually more appropriate."
msgstr ""
-#: doc/classes/CanvasItem.xml:681
+#: doc/classes/CanvasItem.xml:691
msgid ""
"The texture filter blends between the nearest 4 pixels and selects a mipmap "
"based on the angle between the surface and the camera view. This reduces "
@@ -11268,21 +11502,21 @@ msgid ""
"TEXTURE_FILTER_LINEAR_WITH_MIPMAPS] is usually more appropriate."
msgstr ""
-#: doc/classes/CanvasItem.xml:691
+#: doc/classes/CanvasItem.xml:701
msgid "Texture will not repeat."
msgstr ""
-#: doc/classes/CanvasItem.xml:694
+#: doc/classes/CanvasItem.xml:704
msgid "Texture will repeat normally."
msgstr ""
-#: doc/classes/CanvasItem.xml:697
+#: doc/classes/CanvasItem.xml:707
msgid ""
"Texture will repeat in a 2x2 tiled mode, where elements at even positions "
"are mirrored."
msgstr ""
-#: doc/classes/CanvasItem.xml:700
+#: doc/classes/CanvasItem.xml:710
msgid "Represents the size of the [enum TextureRepeat] enum."
msgstr ""
@@ -12355,16 +12589,15 @@ msgid ""
msgstr ""
#: doc/classes/Color.xml:4
-msgid "Color in RGBA format with some support for ARGB format."
+msgid "Color in RGBA format using floats on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:7
msgid ""
-"A color is represented by red, green, and blue [code](r, g, b)[/code] "
-"components. Additionally, [code]a[/code] represents the alpha component, "
-"often used for transparency. Values are in floating-point and usually range "
-"from 0 to 1. Some properties (such as [member CanvasItem.modulate]) may "
-"accept values greater than 1.\n"
+"A color represented by red, green, blue, and alpha (RGBA) components. The "
+"alpha component is often used for transparency. Values are in floating-point "
+"and usually range from 0 to 1. Some properties (such as CanvasItem.modulate) "
+"may accept values greater than 1 (overbright or HDR colors).\n"
"You can also create a color from standardized color names by using [method "
"@GDScript.ColorN] or directly using the color constants defined here. The "
"standardized color set is based on the [url=https://en.wikipedia.org/wiki/"
@@ -12578,47 +12811,48 @@ msgid ""
msgstr ""
#: doc/classes/Color.xml:280
-msgid "Alpha value (range 0 to 1)."
+msgid ""
+"The color's alpha (transparency) component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:283
-msgid "Alpha value (range 0 to 255)."
+msgid "Wrapper for [member a] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:286
-msgid "Blue value (range 0 to 1)."
+msgid "The color's blue component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:289
-msgid "Blue value (range 0 to 255)."
+msgid "Wrapper for [member b] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:292
-msgid "Green value (range 0 to 1)."
+msgid "The color's green component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:295
-msgid "Green value (range 0 to 255)."
+msgid "Wrapper for [member g] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:298
-msgid "HSV hue value (range 0 to 1)."
+msgid "The HSV hue of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:301
-msgid "Red value (range 0 to 1)."
+msgid "The color's red component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:304
-msgid "Red value (range 0 to 255)."
+msgid "Wrapper for [member r] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:307
-msgid "HSV saturation value (range 0 to 1)."
+msgid "The HSV saturation of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:310
-msgid "HSV value (range 0 to 1)."
+msgid "The HSV value (brightness) of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:315
@@ -14538,23 +14772,35 @@ msgstr ""
#: doc/classes/Control.xml:859
msgid ""
"The node's scale, relative to its [member rect_size]. Change this property "
-"to scale the node around its [member rect_pivot_offset]."
-msgstr ""
-
-#: doc/classes/Control.xml:862
+"to scale the node around its [member rect_pivot_offset]. The Control's "
+"[member hint_tooltip] will also scale according to this value.\n"
+"[b]Note:[/b] This property is mainly intended to be used for animation "
+"purposes. Text inside the Control will look pixelated or blurry when the "
+"Control is scaled. To support multiple resolutions in your project, use an "
+"appropriate viewport stretch mode as described in the [url=https://docs."
+"godotengine.org/en/latest/tutorials/viewports/multiple_resolutions."
+"html]documentation[/url] instead of scaling Controls individually.\n"
+"[b]Note:[/b] If the Control node is a child of a [Container] node, the scale "
+"will be reset to [code]Vector2(1, 1)[/code] when the scene is instanced. To "
+"set the Control's scale when it's instanced, wait for one frame using "
+"[code]yield(get_tree(), \"idle_frame\")[/code] then set its [member "
+"rect_scale] property."
+msgstr ""
+
+#: doc/classes/Control.xml:864
msgid ""
"The size of the node's bounding rectangle, in pixels. [Container] nodes "
"update this property automatically."
msgstr ""
-#: doc/classes/Control.xml:865
+#: doc/classes/Control.xml:867
msgid ""
"Tells the parent [Container] nodes how they should resize and place the node "
"on the X axis. Use one of the [enum SizeFlags] constants to change the "
"flags. See the constants to learn what each does."
msgstr ""
-#: doc/classes/Control.xml:868
+#: doc/classes/Control.xml:870
msgid ""
"If the node and at least one of its neighbours uses the [constant "
"SIZE_EXPAND] size flag, the parent [Container] will let it take more or less "
@@ -14563,181 +14809,181 @@ msgid ""
"space."
msgstr ""
-#: doc/classes/Control.xml:871
+#: doc/classes/Control.xml:873
msgid ""
"Tells the parent [Container] nodes how they should resize and place the node "
"on the Y axis. Use one of the [enum SizeFlags] constants to change the "
"flags. See the constants to learn what each does."
msgstr ""
-#: doc/classes/Control.xml:874
+#: doc/classes/Control.xml:876
msgid ""
"Changing this property replaces the current [Theme] resource this node and "
"all its [Control] children use."
msgstr ""
-#: doc/classes/Control.xml:880
+#: doc/classes/Control.xml:882
msgid "Emitted when the node gains keyboard focus."
msgstr ""
-#: doc/classes/Control.xml:885
+#: doc/classes/Control.xml:887
msgid "Emitted when the node loses keyboard focus."
msgstr ""
-#: doc/classes/Control.xml:892
+#: doc/classes/Control.xml:894
msgid "Emitted when the node receives an [InputEvent]."
msgstr ""
-#: doc/classes/Control.xml:897
+#: doc/classes/Control.xml:899
msgid "Emitted when the node's minimum size changes."
msgstr ""
-#: doc/classes/Control.xml:902
+#: doc/classes/Control.xml:904
msgid ""
"Emitted when the mouse enters the control's [code]Rect[/code] area, provided "
"its [member mouse_filter] lets the event reach it."
msgstr ""
-#: doc/classes/Control.xml:907
+#: doc/classes/Control.xml:909
msgid ""
"Emitted when the mouse leaves the control's [code]Rect[/code] area, provided "
"its [member mouse_filter] lets the event reach it."
msgstr ""
-#: doc/classes/Control.xml:912
+#: doc/classes/Control.xml:914
msgid "Emitted when the control changes size."
msgstr ""
-#: doc/classes/Control.xml:917
+#: doc/classes/Control.xml:919
msgid ""
"Emitted when one of the size flags changes. See [member "
"size_flags_horizontal] and [member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:927
+#: doc/classes/Control.xml:929
msgid "The node cannot grab focus. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:930
+#: doc/classes/Control.xml:932
msgid ""
"The node can only grab focus on mouse clicks. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:933
+#: doc/classes/Control.xml:935
msgid ""
"The node can grab focus on mouse click or using the arrows and the Tab keys "
"on the keyboard. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:936
+#: doc/classes/Control.xml:938
msgid ""
"Sent when the node changes size. Use [member rect_size] to get the new size."
msgstr ""
-#: doc/classes/Control.xml:939
+#: doc/classes/Control.xml:941
msgid "Sent when the mouse pointer enters the node."
msgstr ""
-#: doc/classes/Control.xml:942
+#: doc/classes/Control.xml:944
msgid "Sent when the mouse pointer exits the node."
msgstr ""
-#: doc/classes/Control.xml:945
+#: doc/classes/Control.xml:947
msgid "Sent when the node grabs focus."
msgstr ""
-#: doc/classes/Control.xml:948
+#: doc/classes/Control.xml:950
msgid "Sent when the node loses focus."
msgstr ""
-#: doc/classes/Control.xml:951
+#: doc/classes/Control.xml:953
msgid ""
"Sent when the node's [member theme] changes, right before Godot redraws the "
"control. Happens when you call one of the [code]add_theme_*_override[/code] "
"methods."
msgstr ""
-#: doc/classes/Control.xml:954
+#: doc/classes/Control.xml:956
msgid ""
"Sent when this node is inside a [ScrollContainer] which has begun being "
"scrolled."
msgstr ""
-#: doc/classes/Control.xml:957
+#: doc/classes/Control.xml:959
msgid ""
"Sent when this node is inside a [ScrollContainer] which has stopped being "
"scrolled."
msgstr ""
-#: doc/classes/Control.xml:960
+#: doc/classes/Control.xml:962
msgid ""
"Show the system's arrow mouse cursor when the user hovers the node. Use with "
"[member mouse_default_cursor_shape]."
msgstr ""
-#: doc/classes/Control.xml:963
+#: doc/classes/Control.xml:965
msgid ""
"Show the system's I-beam mouse cursor when the user hovers the node. The I-"
"beam pointer has a shape similar to \"I\". It tells the user they can "
"highlight or insert text."
msgstr ""
-#: doc/classes/Control.xml:966
+#: doc/classes/Control.xml:968
msgid ""
"Show the system's pointing hand mouse cursor when the user hovers the node."
msgstr ""
-#: doc/classes/Control.xml:969
+#: doc/classes/Control.xml:971
msgid "Show the system's cross mouse cursor when the user hovers the node."
msgstr ""
-#: doc/classes/Control.xml:972
+#: doc/classes/Control.xml:974
msgid ""
"Show the system's wait mouse cursor, often an hourglass, when the user "
"hovers the node."
msgstr ""
-#: doc/classes/Control.xml:975
+#: doc/classes/Control.xml:977
msgid ""
"Show the system's busy mouse cursor when the user hovers the node. Often an "
"hourglass."
msgstr ""
-#: doc/classes/Control.xml:978
+#: doc/classes/Control.xml:980
msgid ""
"Show the system's drag mouse cursor, often a closed fist or a cross symbol, "
"when the user hovers the node. It tells the user they're currently dragging "
"an item, like a node in the Scene dock."
msgstr ""
-#: doc/classes/Control.xml:981
+#: doc/classes/Control.xml:983
msgid ""
"Show the system's drop mouse cursor when the user hovers the node. It can be "
"an open hand. It tells the user they can drop an item they're currently "
"grabbing, like a node in the Scene dock."
msgstr ""
-#: doc/classes/Control.xml:984
+#: doc/classes/Control.xml:986
msgid ""
"Show the system's forbidden mouse cursor when the user hovers the node. "
"Often a crossed circle."
msgstr ""
-#: doc/classes/Control.xml:987
+#: doc/classes/Control.xml:989
msgid ""
"Show the system's vertical resize mouse cursor when the user hovers the "
"node. A double-headed vertical arrow. It tells the user they can resize the "
"window or the panel vertically."
msgstr ""
-#: doc/classes/Control.xml:990
+#: doc/classes/Control.xml:992
msgid ""
"Show the system's horizontal resize mouse cursor when the user hovers the "
"node. A double-headed horizontal arrow. It tells the user they can resize "
"the window or the panel horizontally."
msgstr ""
-#: doc/classes/Control.xml:993
+#: doc/classes/Control.xml:995
msgid ""
"Show the system's window resize mouse cursor when the user hovers the node. "
"The cursor is a double-headed arrow that goes from the bottom left to the "
@@ -14745,7 +14991,7 @@ msgid ""
"horizontally and vertically."
msgstr ""
-#: doc/classes/Control.xml:996
+#: doc/classes/Control.xml:998
msgid ""
"Show the system's window resize mouse cursor when the user hovers the node. "
"The cursor is a double-headed arrow that goes from the top left to the "
@@ -14753,93 +14999,93 @@ msgid ""
"they can resize the window or the panel both horizontally and vertically."
msgstr ""
-#: doc/classes/Control.xml:999
+#: doc/classes/Control.xml:1001
msgid ""
"Show the system's move mouse cursor when the user hovers the node. It shows "
"2 double-headed arrows at a 90 degree angle. It tells the user they can move "
"a UI element freely."
msgstr ""
-#: doc/classes/Control.xml:1002
+#: doc/classes/Control.xml:1004
msgid ""
"Show the system's vertical split mouse cursor when the user hovers the node. "
"On Windows, it's the same as [constant CURSOR_VSIZE]."
msgstr ""
-#: doc/classes/Control.xml:1005
+#: doc/classes/Control.xml:1007
msgid ""
"Show the system's horizontal split mouse cursor when the user hovers the "
"node. On Windows, it's the same as [constant CURSOR_HSIZE]."
msgstr ""
-#: doc/classes/Control.xml:1008
+#: doc/classes/Control.xml:1010
msgid ""
"Show the system's help mouse cursor when the user hovers the node, a "
"question mark."
msgstr ""
-#: doc/classes/Control.xml:1011
+#: doc/classes/Control.xml:1013
msgid ""
"Snap all 4 anchors to the top-left of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1014
+#: doc/classes/Control.xml:1016
msgid ""
"Snap all 4 anchors to the top-right of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1017
+#: doc/classes/Control.xml:1019
msgid ""
"Snap all 4 anchors to the bottom-left of the parent control's bounds. Use "
"with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1020
+#: doc/classes/Control.xml:1022
msgid ""
"Snap all 4 anchors to the bottom-right of the parent control's bounds. Use "
"with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1023
+#: doc/classes/Control.xml:1025
msgid ""
"Snap all 4 anchors to the center of the left edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1026
+#: doc/classes/Control.xml:1028
msgid ""
"Snap all 4 anchors to the center of the top edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1029
+#: doc/classes/Control.xml:1031
msgid ""
"Snap all 4 anchors to the center of the right edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1032
+#: doc/classes/Control.xml:1034
msgid ""
"Snap all 4 anchors to the center of the bottom edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1035
+#: doc/classes/Control.xml:1037
msgid ""
"Snap all 4 anchors to the center of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1038
+#: doc/classes/Control.xml:1040
msgid ""
"Snap all 4 anchors to the left edge of the parent control. The left margin "
"becomes relative to the left edge and the top margin relative to the top "
"left corner of the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1041
+#: doc/classes/Control.xml:1043
msgid ""
"Snap all 4 anchors to the top edge of the parent control. The left margin "
"becomes relative to the top left corner, the top margin relative to the top "
@@ -14847,14 +15093,14 @@ msgid ""
"parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1044
+#: doc/classes/Control.xml:1046
msgid ""
"Snap all 4 anchors to the right edge of the parent control. The right margin "
"becomes relative to the right edge and the top margin relative to the top "
"right corner of the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1047
+#: doc/classes/Control.xml:1049
msgid ""
"Snap all 4 anchors to the bottom edge of the parent control. The left margin "
"becomes relative to the bottom left corner, the bottom margin relative to "
@@ -14862,19 +15108,19 @@ msgid ""
"the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1050
+#: doc/classes/Control.xml:1052
msgid ""
"Snap all 4 anchors to a vertical line that cuts the parent control in half. "
"Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1053
+#: doc/classes/Control.xml:1055
msgid ""
"Snap all 4 anchors to a horizontal line that cuts the parent control in "
"half. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1056
+#: doc/classes/Control.xml:1058
msgid ""
"Snap all 4 anchors to the respective corners of the parent control. Set all "
"4 margins to 0 after you applied this preset and the [Control] will fit its "
@@ -14882,30 +15128,30 @@ msgid ""
"editor. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1059
+#: doc/classes/Control.xml:1061
msgid "The control will be resized to its minimum size."
msgstr ""
-#: doc/classes/Control.xml:1062
+#: doc/classes/Control.xml:1064
msgid "The control's width will not change."
msgstr ""
-#: doc/classes/Control.xml:1065
+#: doc/classes/Control.xml:1067
msgid "The control's height will not change."
msgstr ""
-#: doc/classes/Control.xml:1068
+#: doc/classes/Control.xml:1070
msgid "The control's size will not change."
msgstr ""
-#: doc/classes/Control.xml:1071
+#: doc/classes/Control.xml:1073
msgid ""
"Tells the parent [Container] to expand the bounds of this node to fill all "
"the available space without pushing any other node. Use with [member "
"size_flags_horizontal] and [member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1074
+#: doc/classes/Control.xml:1076
msgid ""
"Tells the parent [Container] to let this node take all the available space "
"on the axis you flag. If multiple neighboring nodes are set to expand, "
@@ -14914,13 +15160,13 @@ msgid ""
"[member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1077
+#: doc/classes/Control.xml:1079
msgid ""
"Sets the node's size flags to both fill and expand. See the 2 constants "
"above for more information."
msgstr ""
-#: doc/classes/Control.xml:1080
+#: doc/classes/Control.xml:1082
msgid ""
"Tells the parent [Container] to center the node in itself. It centers the "
"control based on its bounding box, so it doesn't work with the fill or "
@@ -14928,7 +15174,7 @@ msgid ""
"size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1083
+#: doc/classes/Control.xml:1085
msgid ""
"Tells the parent [Container] to align the node with its end, either the "
"bottom or the right edge. It doesn't work with the fill or expand size "
@@ -14936,7 +15182,7 @@ msgid ""
"size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1086
+#: doc/classes/Control.xml:1088
msgid ""
"The control will receive mouse button input events through [method "
"_gui_input] if clicked on. And the control will receive the [signal "
@@ -14945,7 +15191,7 @@ msgid ""
"other controls. This also results in blocking signals in other controls."
msgstr ""
-#: doc/classes/Control.xml:1089
+#: doc/classes/Control.xml:1091
msgid ""
"The control will receive mouse button input events through [method "
"_gui_input] if clicked on. And the control will receive the [signal "
@@ -14957,7 +15203,7 @@ msgid ""
"not be fired."
msgstr ""
-#: doc/classes/Control.xml:1092
+#: doc/classes/Control.xml:1094
msgid ""
"The control will not receive mouse button input events through [method "
"_gui_input]. The control will also not receive the [signal mouse_entered] "
@@ -14966,25 +15212,25 @@ msgid ""
"handled automatically."
msgstr ""
-#: doc/classes/Control.xml:1095
+#: doc/classes/Control.xml:1097
msgid ""
"The control will grow to the left or top to make up if its minimum size is "
"changed to be greater than its current size on the respective axis."
msgstr ""
-#: doc/classes/Control.xml:1098
+#: doc/classes/Control.xml:1100
msgid ""
"The control will grow to the right or bottom to make up if its minimum size "
"is changed to be greater than its current size on the respective axis."
msgstr ""
-#: doc/classes/Control.xml:1101
+#: doc/classes/Control.xml:1103
msgid ""
"The control will grow in both directions equally to make up if its minimum "
"size is changed to be greater than its current size."
msgstr ""
-#: doc/classes/Control.xml:1104
+#: doc/classes/Control.xml:1106
msgid ""
"Snaps one of the 4 anchor's sides to the origin of the node's [code]Rect[/"
"code], in the top left. Use it with one of the [code]anchor_*[/code] member "
@@ -14992,7 +15238,7 @@ msgid ""
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1107
+#: doc/classes/Control.xml:1109
msgid ""
"Snaps one of the 4 anchor's sides to the end of the node's [code]Rect[/"
"code], in the bottom right. Use it with one of the [code]anchor_*[/code] "
@@ -16777,7 +17023,7 @@ msgstr ""
msgid ""
"Returns the [Texture2D] associated with the specified [enum DecalTexture]. "
"This is a convenience method, in most cases you should access the texture "
-"directly. \n"
+"directly.\n"
"For example, instead of [code]albedo_tex = $Decal.get_texture(Decal."
"TEXTURE_ALBEDO)[/code], use [code]albedo_tex = $Decal.texture_albedo[/"
"code].\n"
@@ -16793,7 +17039,7 @@ msgstr ""
msgid ""
"Sets the [Texture2D] associated with the specified [enum DecalTexture]. This "
"is a convenience method, in most cases you should access the texture "
-"directly. \n"
+"directly.\n"
"For example, instead of [code]$Decal.set_texture(Decal.TEXTURE_ALBEDO, "
"albedo_tex)[/code], use [code]$Decal.texture_albedo = albedo_tex[/code].\n"
"One case where this is better than accessing the texture directly is when "
@@ -17142,7 +17388,7 @@ msgstr ""
msgid "The light's shadow rendering algorithm. See [enum ShadowMode]."
msgstr ""
-#: doc/classes/DirectionalLight3D.xml:31 doc/classes/RenderingServer.xml:3254
+#: doc/classes/DirectionalLight3D.xml:31 doc/classes/RenderingServer.xml:3250
msgid ""
"Sets the size of the directional shadow pancake. The pancake offsets the "
"start of the shadow's camera frustum to provide a higher effective depth "
@@ -17216,10 +17462,10 @@ msgstr ""
msgid ""
"Directory type. It is used to manage directories and their content (not "
"restricted to the project folder).\n"
-"When creating a new [Directory], its default opened directory will be "
-"[code]res://[/code]. This may change in the future, so it is advised to "
-"always use [method open] to initialize your [Directory] where you want to "
-"operate, with explicit error checking.\n"
+"When creating a new [Directory], it must be explicitly opened using [method "
+"open] before most methods can be used. However, [method file_exists] and "
+"[method dir_exists] can be used without opening a directory. If so, they use "
+"a path relative to [code]res://[/code].\n"
"Here is an example on how to iterate through the files of a directory:\n"
"[codeblock]\n"
"func dir_contents(path):\n"
@@ -17238,7 +17484,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Directory.xml:27 doc/classes/File.xml:25
+#: doc/classes/Directory.xml:27 doc/classes/File.xml:26
msgid ""
"https://docs.godotengine.org/en/latest/getting_started/step_by_step/"
"filesystem.html"
@@ -17272,41 +17518,43 @@ msgstr ""
#: doc/classes/Directory.xml:65
msgid ""
"Returns whether the target directory exists. The argument can be relative to "
-"the current directory, or an absolute path."
+"the current directory, or an absolute path.\n"
+"If the [Directory] is not open, the path is relative to [code]res://[/code]."
msgstr ""
-#: doc/classes/Directory.xml:74
+#: doc/classes/Directory.xml:75
msgid ""
"Returns whether the target file exists. The argument can be relative to the "
-"current directory, or an absolute path."
+"current directory, or an absolute path.\n"
+"If the [Directory] is not open, the path is relative to [code]res://[/code]."
msgstr ""
-#: doc/classes/Directory.xml:81
+#: doc/classes/Directory.xml:83
msgid ""
"Returns the absolute path to the currently opened directory (e.g. "
"[code]res://folder[/code] or [code]C:\\tmp\\folder[/code])."
msgstr ""
-#: doc/classes/Directory.xml:88
+#: doc/classes/Directory.xml:90
msgid ""
"Returns the currently opened directory's drive index. See [method get_drive] "
"to convert returned index to the name of the drive."
msgstr ""
-#: doc/classes/Directory.xml:97
+#: doc/classes/Directory.xml:99
msgid ""
"On Windows, returns the name of the drive (partition) passed as an argument "
"(e.g. [code]C:[/code]). On other platforms, or if the requested drive does "
"not existed, the method returns an empty String."
msgstr ""
-#: doc/classes/Directory.xml:104
+#: doc/classes/Directory.xml:106
msgid ""
"On Windows, returns the number of drives (partitions) mounted on the current "
"filesystem. On other platforms, the method returns 0."
msgstr ""
-#: doc/classes/Directory.xml:111
+#: doc/classes/Directory.xml:113
msgid ""
"Returns the next element (file or directory) in the current directory "
"(including [code].[/code] and [code]..[/code], unless "
@@ -17317,14 +17565,14 @@ msgid ""
"mandatory in such a case)."
msgstr ""
-#: doc/classes/Directory.xml:119
+#: doc/classes/Directory.xml:121
msgid ""
"On UNIX desktop systems, returns the available space on the current "
"directory's disk. On other platforms, this information is not available and "
"the method returns 0 or -1."
msgstr ""
-#: doc/classes/Directory.xml:130
+#: doc/classes/Directory.xml:132
msgid ""
"Initializes the stream used to list all files and directories using the "
"[method get_next] function, closing the current opened stream if needed. "
@@ -17336,13 +17584,13 @@ msgid ""
"out."
msgstr ""
-#: doc/classes/Directory.xml:139
+#: doc/classes/Directory.xml:141
msgid ""
"Closes the current stream opened with [method list_dir_begin] (whether it "
"has been fully processed with [method get_next] or not does not matter)."
msgstr ""
-#: doc/classes/Directory.xml:148
+#: doc/classes/Directory.xml:150
msgid ""
"Creates a directory. The argument can be relative to the current directory, "
"or an absolute path. The target directory should be placed in an already "
@@ -17351,7 +17599,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:158
+#: doc/classes/Directory.xml:160
msgid ""
"Creates a target directory and all necessary intermediate directories in its "
"path, by calling [method make_dir] recursively. The argument can be relative "
@@ -17359,7 +17607,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:168
+#: doc/classes/Directory.xml:170
msgid ""
"Opens an existing directory of the filesystem. The [code]path[/code] "
"argument can be within the project tree ([code]res://folder[/code]), the "
@@ -17368,7 +17616,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:178
+#: doc/classes/Directory.xml:180
msgid ""
"Deletes the target file or an empty directory. The argument can be relative "
"to the current directory, or an absolute path. If the target directory is "
@@ -17376,7 +17624,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:190
+#: doc/classes/Directory.xml:192
msgid ""
"Renames (move) the [code]from[/code] file to the [code]to[/code] "
"destination. Both arguments should be paths to files, either relative or "
@@ -17417,6 +17665,53 @@ msgid ""
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
+#: doc/classes/DisplayServer.xml:530
+msgid ""
+"Return the greatest scale factor of all screens.\n"
+"[b]Note:[/b] On macOS returned value is [code]2.0[/code] if there is at "
+"least one hiDPI (Retina) screen in the system, and [code]1.0[/code] in all "
+"other cases.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:557
+msgid ""
+"Return the scale factor of the specified screen by index.\n"
+"[b]Note:[/b] On macOS returned value is [code]2.0[/code] for hiDPI (Retina) "
+"screen, and [code]1.0[/code] for all other cases.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:630
+msgid ""
+"Returns the on-screen keyboard's height in pixels. Returns 0 if there is no "
+"keyboard or if it is currently hidden."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:637
+msgid "Hides the virtual keyboard if it is shown, does nothing otherwise."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:656
+msgid ""
+"Shows the virtual keyboard if the platform has one.\n"
+"[code]existing_text[/code] parameter is useful for implementing your own "
+"[LineEdit] or [TextEdit], as it tells the virtual keyboard what text has "
+"already been typed (the virtual keyboard uses it for auto-correct and "
+"predictions).\n"
+"[code]position[/code] parameter is the screen space [Rect2] of the edited "
+"text.\n"
+"[code]multiline[/code] parameter needs to be set to [code]true[/code] to be "
+"able to enter multiple lines of text, as in [TextEdit].\n"
+"[code]max_length[/code] limits the number of characters that can be entered "
+"if different from [code]-1[/code].\n"
+"[code]cursor_start[/code] can optionally define the current text cursor "
+"position if [code]cursor_end[/code] is not set.\n"
+"[code]cursor_start[/code] and [code]cursor_end[/code] can optionally define "
+"the current text selection.\n"
+"[b]Note:[/b] This method is implemented on Android, iOS and UWP."
+msgstr ""
+
#: doc/classes/DTLSServer.xml:4
msgid "Helper class to implement a DTLS server."
msgstr ""
@@ -17537,54 +17832,62 @@ msgstr ""
msgid "Adds a fallback font."
msgstr ""
-#: doc/classes/DynamicFont.xml:35
+#: doc/classes/DynamicFont.xml:33
+msgid ""
+"Returns a string containing all the characters available in the main and all "
+"the fallback fonts.\n"
+"If a given character is included in more than one font, it appears only once "
+"in the returned string."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:43
msgid "Returns the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:42
+#: doc/classes/DynamicFont.xml:50
msgid "Returns the number of fallback fonts."
msgstr ""
-#: doc/classes/DynamicFont.xml:51
+#: doc/classes/DynamicFont.xml:59
msgid ""
"Returns the spacing for the given [code]type[/code] (see [enum SpacingType])."
msgstr ""
-#: doc/classes/DynamicFont.xml:60
+#: doc/classes/DynamicFont.xml:68
msgid "Removes the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:71
+#: doc/classes/DynamicFont.xml:79
msgid "Sets the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:82
+#: doc/classes/DynamicFont.xml:90
msgid ""
"Sets the spacing for [code]type[/code] (see [enum SpacingType]) to "
"[code]value[/code] in pixels (not relative to the font size)."
msgstr ""
-#: doc/classes/DynamicFont.xml:88
+#: doc/classes/DynamicFont.xml:96
msgid "Extra spacing at the bottom in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:91
+#: doc/classes/DynamicFont.xml:99
msgid "Extra character spacing in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:94
+#: doc/classes/DynamicFont.xml:102
msgid "Extra space spacing in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:97
+#: doc/classes/DynamicFont.xml:105
msgid "Extra spacing at the top in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:100
+#: doc/classes/DynamicFont.xml:108
msgid "The font data."
msgstr ""
-#: doc/classes/DynamicFont.xml:103
+#: doc/classes/DynamicFont.xml:111
msgid ""
"The font outline's color.\n"
"[b]Note:[/b] It's recommended to leave this at the default value so that you "
@@ -17593,27 +17896,27 @@ msgid ""
"outline modulate theme item."
msgstr ""
-#: doc/classes/DynamicFont.xml:107
+#: doc/classes/DynamicFont.xml:115
msgid "The font outline's thickness in pixels (not relative to the font size)."
msgstr ""
-#: doc/classes/DynamicFont.xml:110
+#: doc/classes/DynamicFont.xml:118
msgid "The font size in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:115
+#: doc/classes/DynamicFont.xml:123
msgid "Spacing at the top."
msgstr ""
-#: doc/classes/DynamicFont.xml:118
+#: doc/classes/DynamicFont.xml:126
msgid "Spacing at the bottom."
msgstr ""
-#: doc/classes/DynamicFont.xml:121
+#: doc/classes/DynamicFont.xml:129
msgid "Character spacing."
msgstr ""
-#: doc/classes/DynamicFont.xml:124
+#: doc/classes/DynamicFont.xml:132
msgid "Space spacing."
msgstr ""
@@ -17995,7 +18298,12 @@ msgstr ""
msgid "Remitted if a resource is reimported."
msgstr ""
-#: doc/classes/EditorFileSystem.xml:106
+#: doc/classes/EditorFileSystem.xml:100
+msgid ""
+"Emitted if at least one resource is reloaded when the filesystem is scanned."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:107
msgid "Emitted if the source of any imported file changed."
msgstr ""
@@ -18037,29 +18345,43 @@ msgstr ""
msgid "Returns the path to the file at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:86
+#: doc/classes/EditorFileSystemDirectory.xml:70
+msgid ""
+"Returns the base class of the script class defined in the file at index "
+"[code]idx[/code]. If the file doesn't define a script class using the "
+"[code]class_name[/code] syntax, this will return an empty string."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:79
+msgid ""
+"Returns the name of the script class defined in the file at index [code]idx[/"
+"code]. If the file doesn't define a script class using the [code]class_name[/"
+"code] syntax, this will return an empty string."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:88
msgid "Returns the file extension of the file at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:93
+#: doc/classes/EditorFileSystemDirectory.xml:95
msgid "Returns the name of this directory."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:100
+#: doc/classes/EditorFileSystemDirectory.xml:102
msgid ""
"Returns the parent directory for this directory or [code]null[/code] if "
"called on a directory at [code]res://[/code] or [code]user://[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:107
+#: doc/classes/EditorFileSystemDirectory.xml:109
msgid "Returns the path to this directory."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:116
+#: doc/classes/EditorFileSystemDirectory.xml:118
msgid "Returns the subdirectory at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:123
+#: doc/classes/EditorFileSystemDirectory.xml:125
msgid "Returns the number of subdirectories in this directory."
msgstr ""
@@ -18150,45 +18472,72 @@ msgstr ""
msgid "Gets the unique name of the importer."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:92
+#: doc/classes/EditorImportPlugin.xml:86
+msgid ""
+"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. For example:\n"
+"[codeblock]\n"
+"func get_option_visibility(option, options):\n"
+" # Only show the lossy quality setting if the compression mode is set to "
+"\"Lossy\".\n"
+" if option == \"compress/lossy_quality\" and options.has(\"compress/mode"
+"\"):\n"
+" return int(options[\"compress/mode\"]) == COMPRESS_LOSSY\n"
+"\n"
+" return true\n"
+"[/codeblock]\n"
+"Return [code]true[/code] to make all options always visible."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:102
msgid ""
"Gets the number of initial presets defined by the plugin. Use [method "
"get_import_options] to get the default options for the preset and [method "
"get_preset_name] to get the name of the preset."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:101
+#: doc/classes/EditorImportPlugin.xml:111
msgid "Gets the name of the options preset at this index."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:108
+#: doc/classes/EditorImportPlugin.xml:118
msgid ""
"Gets the priority of this plugin for the recognized extension. Higher "
"priority plugins will be preferred. The default priority is [code]1.0[/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:115
+#: doc/classes/EditorImportPlugin.xml:125
msgid ""
"Gets the list of file extensions to associate with this loader (case-"
"insensitive). e.g. [code][\"obj\"][/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:122
+#: doc/classes/EditorImportPlugin.xml:132
msgid ""
"Gets the Godot resource type associated with this loader. e.g. [code]\"Mesh"
"\"[/code] or [code]\"Animation\"[/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:129
+#: doc/classes/EditorImportPlugin.xml:139
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:136
+#: doc/classes/EditorImportPlugin.xml:146
msgid "Gets the name to display in the import window."
msgstr ""
+#: doc/classes/EditorImportPlugin.xml:163
+msgid ""
+"Imports [code]source_file[/code] into [code]save_path[/code] with the import "
+"[code]options[/code] specified. The [code]platform_variants[/code] and "
+"[code]gen_files[/code] arrays will be modified by this function.\n"
+"This method must be overridden to do the actual importing work. See this "
+"class' description for an example of overriding this method."
+msgstr ""
+
#: doc/classes/EditorInspector.xml:4
msgid "A tab used to edit properties of the selected node."
msgstr ""
@@ -18204,6 +18553,58 @@ msgid ""
"the singleton using [method EditorInterface.get_inspector]."
msgstr ""
+#: doc/classes/EditorInspector.xml:17
+msgid ""
+"Refreshes the inspector.\n"
+"[b]Note:[/b] To save on CPU resources, calling this method will do nothing "
+"if the time specified in [code]docks/property_editor/auto_refresh_interval[/"
+"code] editor setting hasn't passed yet since this method was last called. "
+"(By default, this interval is set to 0.3 seconds.)"
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:30
+msgid ""
+"Emitted when the Edit button of an [Object] has been pressed in the "
+"inspector. This is mainly used in the remote scene tree inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:37
+msgid "Emitted when a property is removed from the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:44
+msgid "Emitted when a property is edited in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:51
+msgid ""
+"Emitted when a property is keyed in the inspector. Properties can be keyed "
+"by clicking the \"key\" icon next to a property when the Animation panel is "
+"toggled."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:58
+msgid "Emitted when a property is selected in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:67
+msgid ""
+"Emitted when a boolean property is toggled in the inspector.\n"
+"[b]Note:[/b] This signal is never emitted if the internal [code]autoclear[/"
+"code] property enabled. Since this property is always enabled in the editor "
+"inspector, this signal is never emitted by the editor itself."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:77
+msgid "Emitted when a resource is selected in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:82
+msgid ""
+"Emitted when a property that requires a restart to be applied is edited in "
+"the inspector. This is only used in the Project Settings and Editor Settings."
+msgstr ""
+
#: doc/classes/EditorInspectorPlugin.xml:4
msgid "Plugin for adding custom property editors on inspector."
msgstr ""
@@ -18282,91 +18683,156 @@ msgstr ""
#: doc/classes/EditorInterface.xml:26
msgid ""
-"Returns the main container of Godot editor's window. You can use it, for "
-"example, to retrieve the size of the container and place your controls "
+"Returns the main container of Godot editor's window. For example, you can "
+"use it to retrieve the size of the container and place your controls "
"accordingly."
msgstr ""
-#: doc/classes/EditorInterface.xml:39
+#: doc/classes/EditorInterface.xml:33
+msgid "Returns the current path being viewed in the [FileSystemDock]."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:40
msgid "Returns the edited (current) scene's root [Node]."
msgstr ""
-#: doc/classes/EditorInterface.xml:46
-msgid "Returns the [EditorSettings]."
+#: doc/classes/EditorInterface.xml:47
+msgid "Returns the editor's [EditorSettings] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:54
+msgid ""
+"Returns the main editor control. Use this as a parent for main screens.\n"
+"[b]Note:[/b] This returns the main editor control containing the whole "
+"editor, not the 2D or 3D viewports specifically."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:62
+msgid "Returns the editor's [FileSystemDock] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:53
-msgid "Returns the editor [Viewport]."
+#: doc/classes/EditorInterface.xml:69
+msgid "Returns the editor's [EditorInspector] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:72
+#: doc/classes/EditorInterface.xml:76
msgid "Returns an [Array] with the file paths of the currently opened scenes."
msgstr ""
-#: doc/classes/EditorInterface.xml:79
-msgid "Returns the [EditorFileSystem]."
+#: doc/classes/EditorInterface.xml:83
+msgid ""
+"Returns the name of the scene that is being played. If no scene is currently "
+"being played, returns an empty string."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:90
+msgid "Returns the editor's [EditorFileSystem] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:86
-msgid "Returns the [EditorResourcePreview]."
+#: doc/classes/EditorInterface.xml:97
+msgid "Returns the editor's [EditorResourcePreview] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:93
-msgid "Returns the [ScriptEditor]."
+#: doc/classes/EditorInterface.xml:104
+msgid "Returns the editor's [ScriptEditor] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:106
-msgid "Returns the [EditorSelection]."
+#: doc/classes/EditorInterface.xml:111
+msgid ""
+"Returns the path of the directory currently selected in the "
+"[FileSystemDock]. If a file is selected, its base directory will be returned "
+"using [method String.get_base_dir] instead."
msgstr ""
-#: doc/classes/EditorInterface.xml:117
+#: doc/classes/EditorInterface.xml:118
+msgid "Returns the editor's [EditorSelection] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:129
msgid ""
-"Shows the given property on the given [code]object[/code] in the Editor's "
+"Shows the given property on the given [code]object[/code] in the editor's "
"Inspector dock."
msgstr ""
-#: doc/classes/EditorInterface.xml:126
+#: doc/classes/EditorInterface.xml:136
msgid ""
-"Returns the enabled status of a plugin. The plugin name is the same as its "
-"directory name."
+"Returns [code]true[/code] if a scene is currently being played, [code]false[/"
+"code] otherwise. Paused scenes are considered as being played."
msgstr ""
-#: doc/classes/EditorInterface.xml:137
+#: doc/classes/EditorInterface.xml:145
+#, fuzzy
+msgid ""
+"Returns [code]true[/code] if the specified [code]plugin[/code] is enabled. "
+"The plugin name is the same as its directory name."
+msgstr "如果[code]s[/code] 为0或者很接近0则返回[code]true[/code]。"
+
+#: doc/classes/EditorInterface.xml:156
msgid ""
"Returns mesh previews rendered at the given size as an [Array] of "
"[Texture2D]s."
msgstr ""
-#: doc/classes/EditorInterface.xml:146
+#: doc/classes/EditorInterface.xml:165
msgid "Opens the scene at the given path."
msgstr ""
-#: doc/classes/EditorInterface.xml:155
+#: doc/classes/EditorInterface.xml:172
+msgid "Plays the currently active scene."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:181
+msgid "Plays the scene specified by its filepath."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:188
+msgid "Plays the main scene."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:197
msgid "Reloads the scene at the given path."
msgstr ""
-#: doc/classes/EditorInterface.xml:162
+#: doc/classes/EditorInterface.xml:204
msgid ""
"Saves the scene. Returns either [code]OK[/code] or [code]ERR_CANT_CREATE[/"
"code] (see [@GlobalScope] constants)."
msgstr ""
-#: doc/classes/EditorInterface.xml:173
+#: doc/classes/EditorInterface.xml:215
msgid "Saves the scene as a file at [code]path[/code]."
msgstr ""
-#: doc/classes/EditorInterface.xml:182
+#: doc/classes/EditorInterface.xml:224
msgid ""
"Selects the file, with the path provided by [code]file[/code], in the "
"FileSystem dock."
msgstr ""
-#: doc/classes/EditorInterface.xml:201
+#: doc/classes/EditorInterface.xml:233
+msgid ""
+"Sets the editor's current main screen to the one specified in [code]name[/"
+"code]. [code]name[/code] must match the text of the tab in question exactly "
+"([code]2D[/code], [code]3D[/code], [code]Script[/code], [code]AssetLib[/"
+"code])."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:244
msgid ""
"Sets the enabled status of a plugin. The plugin name is the same as its "
"directory name."
msgstr ""
+#: doc/classes/EditorInterface.xml:251
+msgid "Stops the scene that is currently playing."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:257
+msgid ""
+"If [code]true[/code], enables distraction-free mode which hides side docks "
+"to increase the space available for the main view."
+msgstr ""
+
#: doc/classes/EditorNode3DGizmo.xml:4
msgid "Custom gizmo for editing Node3D objects."
msgstr ""
@@ -18378,14 +18844,20 @@ msgid ""
"information."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:26
+#: doc/classes/EditorNode3DGizmo.xml:18
+msgid ""
+"Adds the specified [code]segments[/code] to the gizmo's collision shape for "
+"picking. Call this function during [method redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:27
msgid ""
"Adds collision triangles to the gizmo for picking. A [TriangleMesh] can be "
"generated from a regular [Mesh] too. Call this function during [method "
"redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:41
+#: doc/classes/EditorNode3DGizmo.xml:42
msgid ""
"Adds a list of handles (points) which can be used to deform the object being "
"edited.\n"
@@ -18393,20 +18865,33 @@ msgid ""
"handles. Call this function during [method redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:57
+#: doc/classes/EditorNode3DGizmo.xml:58
msgid ""
"Adds lines to the gizmo (as sets of 2 points), with a given material. The "
"lines are used for visualizing the gizmo. Call this function during [method "
"redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:84
+#: doc/classes/EditorNode3DGizmo.xml:73
+msgid ""
+"Adds a mesh to the gizmo with the specified [code]billboard[/code] state, "
+"[code]skeleton[/code] and [code]material[/code]. If [code]billboard[/code] "
+"is [code]true[/code], the mesh will rotate to always face the camera. Call "
+"this function during [method redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:86
msgid ""
"Adds an unscaled billboard for visualization. Call this function during "
"[method redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:103
+#: doc/classes/EditorNode3DGizmo.xml:93
+msgid ""
+"Removes everything in the gizmo including meshes, collisions and handles."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:106
msgid ""
"Commit a handle being edited (handles must have been previously added by "
"[method add_handles]).\n"
@@ -18414,40 +18899,43 @@ msgid ""
"restore the edited value to the original is provided."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:113
+#: doc/classes/EditorNode3DGizmo.xml:116
msgid ""
"Gets the name of an edited handle (handles must have been previously added "
"by [method add_handles]).\n"
"Handles can be named for reference to the user when editing."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:123
+#: doc/classes/EditorNode3DGizmo.xml:126
msgid ""
"Gets actual value of a handle. This value can be anything and used for "
"eventually undoing the motion when calling [method commit_handle]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:130
+#: doc/classes/EditorNode3DGizmo.xml:133
msgid ""
"Returns the [EditorNode3DGizmoPlugin] that owns this gizmo. It's useful to "
"retrieve materials using [method EditorNode3DGizmoPlugin.get_material]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:137
+#: doc/classes/EditorNode3DGizmo.xml:140
msgid "Returns the Node3D node associated with this gizmo."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:146
-msgid "Gets whether a handle is highlighted or not."
-msgstr ""
+#: doc/classes/EditorNode3DGizmo.xml:149
+#, fuzzy
+msgid ""
+"Returns [code]true[/code] if the handle at index [code]index[/code] is "
+"highlighted by being hovered with the mouse."
+msgstr "如果[code]a[/code]与[code]b[/code]近似相等,则返回[code]true[/code]。"
-#: doc/classes/EditorNode3DGizmo.xml:153
+#: doc/classes/EditorNode3DGizmo.xml:156
msgid ""
-"This function is called when the Node3D this gizmo refers to changes (the "
+"This function is called when the [Node3D] this gizmo refers to changes (the "
"[method Node3D.update_gizmo] is called)."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:166
+#: doc/classes/EditorNode3DGizmo.xml:169
msgid ""
"This function is used when the user drags a gizmo handle (previously added "
"with [method add_handles]) in screen coordinates.\n"
@@ -18455,6 +18943,18 @@ msgid ""
"raycasts."
msgstr ""
+#: doc/classes/EditorNode3DGizmo.xml:179
+msgid ""
+"Sets the gizmo's hidden state. If [code]true[/code], the gizmo will be "
+"hidden. If [code]false[/code], it will be shown."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:188
+msgid ""
+"Sets the reference [Node3D] node for the gizmo. [code]node[/code] must "
+"inherit from [Node3D]."
+msgstr ""
+
#: doc/classes/EditorNode3DGizmoPlugin.xml:4
msgid "Used by the editor to define Node3D gizmo types."
msgstr ""
@@ -18547,7 +19047,17 @@ msgid ""
"visibility menu."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:150
+#: doc/classes/EditorNode3DGizmoPlugin.xml:142
+msgid ""
+"Override this method to set the gizmo's priority. Higher values correspond "
+"to higher priority. If a gizmo with higher priority conflicts with another "
+"gizmo, only the gizmo with higher priority will be used.\n"
+"All built-in editor gizmos return a priority of [code]-1[/code]. If not "
+"overridden, this method will return [code]0[/code], which means custom "
+"gizmos will automatically override built-in gizmos."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:152
msgid ""
"Override this method to define which Node3D nodes have a gizmo from this "
"plugin. Whenever a [Node3D] node is added to a scene this method is called, "
@@ -18555,25 +19065,25 @@ msgid ""
"assigned and is added to this plugin's list of active gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:161
+#: doc/classes/EditorNode3DGizmoPlugin.xml:163
msgid ""
"Gets whether a handle is highlighted or not. Called for this plugin's active "
"gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:168
+#: doc/classes/EditorNode3DGizmoPlugin.xml:170
msgid ""
"Override this method to define whether Node3D with this gizmo should be "
"selecteble even when the gizmo is hidden."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:177
+#: doc/classes/EditorNode3DGizmoPlugin.xml:179
msgid ""
"Callback to redraw the provided gizmo. Called for this plugin's active "
"gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:192
+#: doc/classes/EditorNode3DGizmoPlugin.xml:194
msgid ""
"Update the value of a handle after it has been updated. Called for this "
"plugin's active gizmos."
@@ -18660,7 +19170,13 @@ msgid ""
"should be cleaned up using [code]remove_tool_menu_item(name)[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:149
+#: doc/classes/EditorPlugin.xml:151
+msgid ""
+"Registers a custom translation parser plugin for extracting translatable "
+"strings from custom files."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:158
msgid ""
"This method is called when the editor is about to save the project, switch "
"to another tab, etc. It asks the plugin to apply any pending state changes "
@@ -18669,32 +19185,32 @@ msgid ""
"must apply the shader code being written by the user to the object."
msgstr ""
-#: doc/classes/EditorPlugin.xml:163
+#: doc/classes/EditorPlugin.xml:172
msgid ""
"Clear all the state and reset the object being edited to zero. This ensures "
"your plugin does not keep editing a currently existing node, or a node from "
"the wrong scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:170
+#: doc/classes/EditorPlugin.xml:179
msgid ""
"Called by the engine when the user disables the [EditorPlugin] in the Plugin "
"tab of the project settings window."
msgstr ""
-#: doc/classes/EditorPlugin.xml:179
+#: doc/classes/EditorPlugin.xml:188
msgid ""
"This function is used for plugins that edit specific object types (nodes or "
"resources). It requests the editor to edit the given object."
msgstr ""
-#: doc/classes/EditorPlugin.xml:186
+#: doc/classes/EditorPlugin.xml:195
msgid ""
"Called by the engine when the user enables the [EditorPlugin] in the Plugin "
"tab of the project settings window."
msgstr ""
-#: doc/classes/EditorPlugin.xml:211
+#: doc/classes/EditorPlugin.xml:220
msgid ""
"Called when there is a root node in the current edited scene, [method "
"handles] is implemented and an [InputEvent] happens in the 2D viewport. "
@@ -18719,7 +19235,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:237
+#: doc/classes/EditorPlugin.xml:246
msgid ""
"Called when there is a root node in the current edited scene, [method "
"handles] is implemented and an [InputEvent] happens in the 3D viewport. "
@@ -18744,20 +19260,20 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:259
+#: doc/classes/EditorPlugin.xml:268
msgid ""
"This is for editors that edit script-based objects. You can return a list of "
"breakpoints in the format ([code]script:line[/code]), for example: "
"[code]res://path_to_script.gd:25[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:266
+#: doc/classes/EditorPlugin.xml:275
msgid ""
"Returns the [EditorInterface] object that gives you control over Godot "
"editor's window and its functionalities."
msgstr ""
-#: doc/classes/EditorPlugin.xml:273
+#: doc/classes/EditorPlugin.xml:282
msgid ""
"Override this method in your plugin to return a [Texture2D] in order to give "
"it an icon.\n"
@@ -18775,7 +19291,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:289
+#: doc/classes/EditorPlugin.xml:298
msgid ""
"Override this method in your plugin to provide the name of the plugin when "
"displayed in the Godot editor.\n"
@@ -18783,33 +19299,33 @@ msgid ""
"of the \"2D\", \"3D\", \"Script\", and \"AssetLib\" buttons."
msgstr ""
-#: doc/classes/EditorPlugin.xml:297
+#: doc/classes/EditorPlugin.xml:306
msgid ""
"Gets the Editor's dialogue used for making scripts.\n"
"[b]Note:[/b] Users can configure it before use."
msgstr ""
-#: doc/classes/EditorPlugin.xml:305
+#: doc/classes/EditorPlugin.xml:314
msgid ""
"Gets the state of your plugin editor. This is used when saving the scene (so "
"state is kept when opening it again) and for switching tabs (so state can be "
"restored when the tab returns)."
msgstr ""
-#: doc/classes/EditorPlugin.xml:312
+#: doc/classes/EditorPlugin.xml:321
msgid ""
"Gets the undo/redo object. Most actions in the editor can be undoable, so "
"use this object to make sure this happens when it's worth it."
msgstr ""
-#: doc/classes/EditorPlugin.xml:321
+#: doc/classes/EditorPlugin.xml:330
msgid ""
"Gets the GUI layout of the plugin. This is used to save the project's editor "
"layout when [method queue_save_layout] is called or the editor layout was "
"changed(For example changing the position of a dock)."
msgstr ""
-#: doc/classes/EditorPlugin.xml:330
+#: doc/classes/EditorPlugin.xml:339
msgid ""
"Implement this function if your plugin edits a specific type of object "
"(Resource or Node). If you return [code]true[/code], then you will get the "
@@ -18819,14 +19335,14 @@ msgid ""
"be called too."
msgstr ""
-#: doc/classes/EditorPlugin.xml:337
+#: doc/classes/EditorPlugin.xml:346
msgid ""
"Returns [code]true[/code] if this is a main screen editor plugin (it goes in "
"the workspace selector together with [b]2D[/b], [b]3D[/b], [b]Script[/b] and "
"[b]AssetLib[/b])."
msgstr ""
-#: doc/classes/EditorPlugin.xml:360
+#: doc/classes/EditorPlugin.xml:369
msgid ""
"This function will be called when the editor is requested to become visible. "
"It is used for plugins that edit a specific object type.\n"
@@ -18834,85 +19350,89 @@ msgid ""
"manually."
msgstr ""
-#: doc/classes/EditorPlugin.xml:368
+#: doc/classes/EditorPlugin.xml:377
msgid "Queue save the project's editor layout."
msgstr ""
-#: doc/classes/EditorPlugin.xml:377
+#: doc/classes/EditorPlugin.xml:386
msgid "Removes an Autoload [code]name[/code] from the list."
msgstr ""
-#: doc/classes/EditorPlugin.xml:386
+#: doc/classes/EditorPlugin.xml:395
msgid ""
"Removes the control from the bottom panel. You have to manually [method Node."
"queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:397
+#: doc/classes/EditorPlugin.xml:406
msgid ""
"Removes the control from the specified container. You have to manually "
"[method Node.queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:406
+#: doc/classes/EditorPlugin.xml:415
msgid ""
"Removes the control from the dock. You have to manually [method Node."
"queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:415
+#: doc/classes/EditorPlugin.xml:424
msgid "Removes a custom type added by [method add_custom_type]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:464
+#: doc/classes/EditorPlugin.xml:473
msgid "Removes a menu [code]name[/code] from [b]Project > Tools[/b]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:471
+#: doc/classes/EditorPlugin.xml:482
+msgid "Removes a registered custom translation parser plugin."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:489
msgid ""
"This method is called after the editor saves the project or when it's "
"closed. It asks the plugin to save edited external scenes/resources."
msgstr ""
-#: doc/classes/EditorPlugin.xml:484
+#: doc/classes/EditorPlugin.xml:502
msgid ""
"Use this method if you always want to receive inputs from 3D view screen "
"inside [method forward_spatial_gui_input]. It might be especially usable if "
"your plugin will want to use raycast in the scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:493
+#: doc/classes/EditorPlugin.xml:511
msgid "Restore the state saved by [method get_state]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:502
+#: doc/classes/EditorPlugin.xml:520
msgid "Restore the plugin GUI layout saved by [method get_window_layout]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:509
+#: doc/classes/EditorPlugin.xml:527
msgid "Updates the overlays of the editor (2D/3D) viewport."
msgstr ""
-#: doc/classes/EditorPlugin.xml:518
+#: doc/classes/EditorPlugin.xml:536
msgid ""
"Emitted when user changes the workspace ([b]2D[/b], [b]3D[/b], [b]Script[/"
"b], [b]AssetLib[/b]). Also works with custom screens defined by plugins."
msgstr ""
-#: doc/classes/EditorPlugin.xml:531
+#: doc/classes/EditorPlugin.xml:549
msgid ""
"Emitted when the scene is changed in the editor. The argument will return "
"the root node of the scene that has just become active. If this scene is new "
"and empty, the argument will be [code]null[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:538
+#: doc/classes/EditorPlugin.xml:556
msgid ""
"Emitted when user closes a scene. The argument is file path to a closed "
"scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:584
+#: doc/classes/EditorPlugin.xml:602
msgid "Represents the size of the [enum DockSlot] enum."
msgstr ""
@@ -18967,64 +19487,83 @@ msgid "When this virtual function is called, you must update your editor."
msgstr ""
#: doc/classes/EditorProperty.xml:76
-msgid "Used by the inspector, set when property is checkable."
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is "
+"checkable."
msgstr ""
#: doc/classes/EditorProperty.xml:79
-msgid "Used by the inspector, when the property is checked."
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is checked."
msgstr ""
-#: doc/classes/EditorProperty.xml:84
-msgid "Used by the inspector, when the property must draw with error color."
+#: doc/classes/EditorProperty.xml:82
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property can be "
+"deleted by the user."
msgstr ""
-#: doc/classes/EditorProperty.xml:87
-msgid "Used by the inspector, when the property can add keys for animation."
+#: doc/classes/EditorProperty.xml:85
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property must draw "
+"with error color. This is used for editable children's properties."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:88
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property can add "
+"keys for animation."
msgstr ""
-#: doc/classes/EditorProperty.xml:90
-msgid "Sets this property to change the label (if you want to show one)."
+#: doc/classes/EditorProperty.xml:91
+msgid "Set this property to change the label (if you want to show one)."
msgstr ""
-#: doc/classes/EditorProperty.xml:93
-msgid "Used by the inspector, when the property is read-only."
+#: doc/classes/EditorProperty.xml:94
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is read-"
+"only."
msgstr ""
-#: doc/classes/EditorProperty.xml:103
+#: doc/classes/EditorProperty.xml:104
msgid ""
"Emit it if you want multiple properties modified at the same time. Do not "
"use if added via [method EditorInspectorPlugin.parse_property]."
msgstr ""
-#: doc/classes/EditorProperty.xml:112
+#: doc/classes/EditorProperty.xml:113
msgid "Used by sub-inspectors. Emit it if what was selected was an Object ID."
msgstr ""
-#: doc/classes/EditorProperty.xml:121
+#: doc/classes/EditorProperty.xml:122
msgid ""
"Do not emit this manually, use the [method emit_changed] method instead."
msgstr ""
-#: doc/classes/EditorProperty.xml:130
+#: doc/classes/EditorProperty.xml:131
msgid "Emitted when a property was checked. Used internally."
msgstr ""
-#: doc/classes/EditorProperty.xml:143
+#: doc/classes/EditorProperty.xml:138
+msgid "Emitted when a property was deleted. Used internally."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:145
msgid ""
"Emit it if you want to add this value as an animation key (check for keying "
"being enabled first)."
msgstr ""
-#: doc/classes/EditorProperty.xml:152
+#: doc/classes/EditorProperty.xml:154
msgid "Emit it if you want to key a property with a single value."
msgstr ""
-#: doc/classes/EditorProperty.xml:161
+#: doc/classes/EditorProperty.xml:163
msgid ""
"If you want a sub-resource to be edited, emit this signal with the resource."
msgstr ""
-#: doc/classes/EditorProperty.xml:170
+#: doc/classes/EditorProperty.xml:172
msgid "Emitted when selected. Used internally."
msgstr ""
@@ -19309,17 +19848,26 @@ msgstr ""
msgid ""
"Object that holds the project-independent editor settings. These settings "
"are generally visible in the [b]Editor > Editor Settings[/b] menu.\n"
-"Accessing the settings is done by using the regular [Object] API, such as:\n"
-"[codeblock]\n"
-"settings.set(prop,value)\n"
-"settings.get(prop)\n"
-"list_of_settings = settings.get_property_list()\n"
+"Property names use slash delimiters to distinguish sections. Setting values "
+"can be of any [Variant] type. It's recommended to use [code]snake_case[/"
+"code] for editor settings to be consistent with the Godot editor itself.\n"
+"Accessing the settings can be done using the following methods, such as:\n"
+"[codeblock]\n"
+"# `settings.set(\"some/property\", value)` also works as this class "
+"overrides `_set()` internally.\n"
+"settings.set_setting(\"some/property\",value)\n"
+"\n"
+"# `settings.get(\"some/property\", value)` also works as this class "
+"overrides `_get()` internally.\n"
+"settings.get_setting(\"some/property\")\n"
+"\n"
+"var list_of_settings = settings.get_property_list()\n"
"[/codeblock]\n"
"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
"the singleton using [method EditorInterface.get_editor_settings]."
msgstr ""
-#: doc/classes/EditorSettings.xml:25
+#: doc/classes/EditorSettings.xml:30
msgid ""
"Adds a custom property info to a property. The dictionary must contain:\n"
"- [code]name[/code]: [String] (the name of the property)\n"
@@ -19341,52 +19889,174 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorSettings.xml:50
-msgid "Erase a given setting (pass full property path)."
+#: doc/classes/EditorSettings.xml:55
+msgid "Erases the setting whose name is specified by [code]property[/code]."
msgstr ""
-#: doc/classes/EditorSettings.xml:57
-msgid "Gets the list of favorite files and directories for this project."
+#: doc/classes/EditorSettings.xml:62
+msgid "Returns the list of favorite files and directories for this project."
msgstr ""
-#: doc/classes/EditorSettings.xml:76
+#: doc/classes/EditorSettings.xml:75
msgid ""
-"Gets the specific project settings path. Projects all have a unique sub-"
-"directory inside the settings path where project specific settings are saved."
+"Returns project-specific metadata for the [code]section[/code] and "
+"[code]key[/code] specified. If the metadata doesn't exist, [code]default[/"
+"code] will be returned instead. See also [method set_project_metadata]."
msgstr ""
-#: doc/classes/EditorSettings.xml:83
+#: doc/classes/EditorSettings.xml:82
msgid ""
-"Gets the list of recently visited folders in the file dialog for this "
+"Returns the project-specific settings path. Projects all have a unique "
+"subdirectory inside the settings path where project-specific settings are "
+"saved."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:89
+msgid ""
+"Returns the list of recently visited folders in the file dialog for this "
"project."
msgstr ""
#: doc/classes/EditorSettings.xml:98
msgid ""
+"Returns the value of the setting specified by [code]name[/code]. This is "
+"equivalent to using [method Object.get] on the EditorSettings instance."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:105
+msgid ""
"Gets the global settings path for the engine. Inside this path, you can find "
"some standard paths such as:\n"
"[code]settings/tmp[/code] - Used for temporary storage of files\n"
"[code]settings/templates[/code] - Where export templates are located"
msgstr ""
-#: doc/classes/EditorSettings.xml:133
+#: doc/classes/EditorSettings.xml:116
+#, fuzzy
+msgid ""
+"Returns [code]true[/code] if the setting specified by [code]name[/code] "
+"exists, [code]false[/code] otherwise."
+msgstr "如果[code]a[/code]与[code]b[/code]近似相等,则返回[code]true[/code]。"
+
+#: doc/classes/EditorSettings.xml:125
+msgid ""
+"Returns [code]true[/code] if the setting specified by [code]name[/code] can "
+"have its value reverted to the default value, [code]false[/code] otherwise. "
+"When this method returns [code]true[/code], a Revert button will display "
+"next to the setting in the Editor Settings."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:134
+msgid ""
+"Returns the default value of the setting specified by [code]name[/code]. "
+"This is the value that would be applied when clicking the Revert button in "
+"the Editor Settings."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:143
msgid "Sets the list of favorite files and directories for this project."
msgstr ""
-#: doc/classes/EditorSettings.xml:166
+#: doc/classes/EditorSettings.xml:156
+msgid ""
+"Sets the initial value of the setting specified by [code]name[/code] to "
+"[code]value[/code]. This is used to provide a value for the Revert button in "
+"the Editor Settings. If [code]update_current[/code] is true, the current "
+"value of the setting will be set to [code]value[/code] as well."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:169
+msgid ""
+"Sets project-specific metadata with the [code]section[/code], [code]key[/"
+"code] and [code]data[/code] specified. This metadata is stored outside the "
+"project folder and therefore won't be checked into version control. See also "
+"[method get_project_metadata]."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:178
msgid ""
"Sets the list of recently visited folders in the file dialog for this "
"project."
msgstr ""
-#: doc/classes/EditorSettings.xml:183
-msgid "Emitted when editor settings change."
+#: doc/classes/EditorSettings.xml:189
+msgid ""
+"Sets the [code]value[/code] of the setting specified by [code]name[/code]. "
+"This is equivalent to using [method Object.set] on the EditorSettings "
+"instance."
msgstr ""
-#: doc/classes/EditorSettings.xml:189
+#: doc/classes/EditorSettings.xml:196
+msgid "Emitted after any editor setting has changed."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:202
+msgid ""
+"Emitted after any editor setting has changed. It's used by various editor "
+"plugins to update their visuals on theme changes or logic on configuration "
+"changes."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:4
msgid ""
-"Emitted when editor settings change. It used by various editor plugins to "
-"update their visuals on theme changes or logic on configuration changes."
+"Plugin for adding custom parsers to extract strings that are to be "
+"translated from custom files (.csv, .json etc.)."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:7
+msgid ""
+"Plugins are registered via [method EditorPlugin."
+"add_translation_parser_plugin] method. To define the parsing and string "
+"extraction logic, override the [method parse_file] method in script.\n"
+"The extracted strings will be written into a POT file selected by user under "
+"\"POT Generation\" in \"Localization\" tab in \"Project Settings\" menu.\n"
+"Below shows an example of a custom parser that extracts strings in a CSV "
+"file to write into a POT.\n"
+"[codeblock]\n"
+"tool\n"
+"extends EditorTranslationParserPlugin\n"
+"\n"
+"\n"
+"func parse_file(path, extracted_strings):\n"
+" var file = File.new()\n"
+" file.open(path, File.READ)\n"
+" var text = file.get_as_text()\n"
+" var split_strs = text.split(\",\", false, 0)\n"
+" for s in split_strs:\n"
+" extracted_strings.append(s)\n"
+" #print(\"Extracted string: \" + s)\n"
+"\n"
+"\n"
+"func get_recognized_extensions():\n"
+" return [\"csv\"]\n"
+"[/codeblock]\n"
+"[b]Note:[/b] If you override parsing logic for standard script types "
+"(GDScript, C#, etc.), it would be better to load the [code]path[/code] "
+"argument using [method ResourceLoader.load]. This is because built-in "
+"scripts are loaded as [Resource] type, not [File] type.\n"
+"For example:\n"
+"[codeblock]\n"
+"func parse_file(path, extracted_strings):\n"
+" var res = ResourceLoader.load(path, \"Script\")\n"
+" var text = res.get_source_code()\n"
+" # Parsing logic.\n"
+"\n"
+"\n"
+"func get_recognized_extensions():\n"
+" return [\"gd\"]\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:48
+msgid ""
+"Gets the list of file extensions to associate with this parser, e.g. [code]"
+"[\"csv\"][/code]."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:59
+msgid ""
+"Override this method to define a custom parsing logic to extract the "
+"translatable strings."
msgstr ""
#: doc/classes/EditorVCSInterface.xml:4
@@ -19997,15 +20667,15 @@ msgid ""
"to 1.3 to compensate for the lack of HDR rendering."
msgstr ""
-#: doc/classes/Environment.xml:190
+#: doc/classes/Environment.xml:214
msgid "The [Sky] resource used for this [Environment]."
msgstr ""
-#: doc/classes/Environment.xml:197
+#: doc/classes/Environment.xml:221
msgid "The depth tolerance for screen-space reflections."
msgstr ""
-#: doc/classes/Environment.xml:200
+#: doc/classes/Environment.xml:224
msgid ""
"If [code]true[/code], screen-space reflections are enabled. Screen-space "
"reflections are more accurate than reflections from [GIProbe]s or "
@@ -20013,48 +20683,48 @@ msgid ""
"others."
msgstr ""
-#: doc/classes/Environment.xml:203
+#: doc/classes/Environment.xml:227
msgid ""
"The fade-in distance for screen-space reflections. Affects the area from the "
"reflected material to the screen-space reflection)."
msgstr ""
-#: doc/classes/Environment.xml:206
+#: doc/classes/Environment.xml:230
msgid ""
"The fade-out distance for screen-space reflections. Affects the area from "
"the screen-space reflection to the \"global\" reflection."
msgstr ""
-#: doc/classes/Environment.xml:209
+#: doc/classes/Environment.xml:233
msgid ""
"The maximum number of steps for screen-space reflections. Higher values are "
"slower."
msgstr ""
-#: doc/classes/Environment.xml:212
+#: doc/classes/Environment.xml:236
msgid ""
"The screen-space ambient occlusion intensity on materials that have an AO "
"texture defined. Values higher than [code]0[/code] will make the SSAO effect "
"visible in areas darkened by AO textures."
msgstr ""
-#: doc/classes/Environment.xml:215
+#: doc/classes/Environment.xml:239
msgid ""
"The screen-space ambient occlusion bias. This should be kept high enough to "
"prevent \"smooth\" curves from being affected by ambient occlusion."
msgstr ""
-#: doc/classes/Environment.xml:218
+#: doc/classes/Environment.xml:242
msgid ""
"The screen-space ambient occlusion blur quality. See [enum SSAOBlur] for "
"possible values."
msgstr ""
-#: doc/classes/Environment.xml:221
+#: doc/classes/Environment.xml:245
msgid "The screen-space ambient occlusion edge sharpness."
msgstr ""
-#: doc/classes/Environment.xml:224
+#: doc/classes/Environment.xml:248
msgid ""
"If [code]true[/code], the screen-space ambient occlusion effect is enabled. "
"This darkens objects' corners and cavities to simulate ambient light not "
@@ -20065,13 +20735,13 @@ msgid ""
"issues."
msgstr ""
-#: doc/classes/Environment.xml:227
+#: doc/classes/Environment.xml:251
msgid ""
"The primary screen-space ambient occlusion intensity. See also [member "
"ssao_radius]."
msgstr ""
-#: doc/classes/Environment.xml:230
+#: doc/classes/Environment.xml:254
msgid ""
"The screen-space ambient occlusion intensity in direct light. In real life, "
"ambient occlusion only applies to indirect light, which means its effects "
@@ -20079,46 +20749,46 @@ msgid ""
"the SSAO effect visible in direct light."
msgstr ""
-#: doc/classes/Environment.xml:233
+#: doc/classes/Environment.xml:257
msgid "The primary screen-space ambient occlusion radius."
msgstr ""
-#: doc/classes/Environment.xml:236
+#: doc/classes/Environment.xml:260
msgid "The default exposure used for tonemapping."
msgstr ""
-#: doc/classes/Environment.xml:239
+#: doc/classes/Environment.xml:263
msgid ""
"The tonemapping mode to use. Tonemapping is the process that \"converts\" "
"HDR values to be suitable for rendering on a LDR display. (Godot doesn't "
"support rendering on HDR displays yet.)"
msgstr ""
-#: doc/classes/Environment.xml:242
+#: doc/classes/Environment.xml:266
msgid ""
"The white reference value for tonemapping. Only effective if the [member "
"tonemap_mode] isn't set to [constant TONE_MAPPER_LINEAR]."
msgstr ""
-#: doc/classes/Environment.xml:247
+#: doc/classes/Environment.xml:271
msgid ""
"Clears the background using the clear color defined in [member "
"ProjectSettings.rendering/environment/default_clear_color]."
msgstr ""
-#: doc/classes/Environment.xml:250
+#: doc/classes/Environment.xml:274
msgid "Clears the background using a custom clear color."
msgstr ""
-#: doc/classes/Environment.xml:253
+#: doc/classes/Environment.xml:277
msgid "Displays a user-defined sky in the background."
msgstr ""
-#: doc/classes/Environment.xml:256
+#: doc/classes/Environment.xml:280
msgid "Displays a [CanvasLayer] in the background."
msgstr ""
-#: doc/classes/Environment.xml:259
+#: doc/classes/Environment.xml:283
msgid ""
"Keeps on screen every pixel drawn in the background. This is the fastest "
"background mode, but it can only be safely used in fully-interior scenes (no "
@@ -20126,107 +20796,107 @@ msgid ""
"is visible, \"ghost trail\" artifacts will be visible when moving the camera."
msgstr ""
-#: doc/classes/Environment.xml:262 doc/classes/RenderingServer.xml:3446
+#: doc/classes/Environment.xml:286 doc/classes/RenderingServer.xml:3457
msgid "Displays a camera feed in the background."
msgstr ""
-#: doc/classes/Environment.xml:265
+#: doc/classes/Environment.xml:289
msgid "Represents the size of the [enum BGMode] enum."
msgstr ""
-#: doc/classes/Environment.xml:268 doc/classes/RenderingServer.xml:3452
+#: doc/classes/Environment.xml:292 doc/classes/RenderingServer.xml:3463
msgid ""
"Gather ambient light from whichever source is specified as the background."
msgstr ""
-#: doc/classes/Environment.xml:271 doc/classes/RenderingServer.xml:3455
+#: doc/classes/Environment.xml:295 doc/classes/RenderingServer.xml:3466
msgid "Disable ambient light."
msgstr ""
-#: doc/classes/Environment.xml:274 doc/classes/RenderingServer.xml:3458
+#: doc/classes/Environment.xml:298 doc/classes/RenderingServer.xml:3469
msgid "Specify a specific [Color] for ambient light."
msgstr ""
-#: doc/classes/Environment.xml:277 doc/classes/RenderingServer.xml:3461
+#: doc/classes/Environment.xml:301 doc/classes/RenderingServer.xml:3472
msgid ""
"Gather ambient light from the [Sky] regardless of what the background is."
msgstr ""
-#: doc/classes/Environment.xml:280 doc/classes/RenderingServer.xml:3464
+#: doc/classes/Environment.xml:304 doc/classes/RenderingServer.xml:3475
msgid "Use the background for reflections."
msgstr ""
-#: doc/classes/Environment.xml:283 doc/classes/RenderingServer.xml:3467
+#: doc/classes/Environment.xml:307 doc/classes/RenderingServer.xml:3478
msgid "Disable reflections."
msgstr ""
-#: doc/classes/Environment.xml:286 doc/classes/RenderingServer.xml:3470
+#: doc/classes/Environment.xml:310 doc/classes/RenderingServer.xml:3481
msgid "Use the [Sky] for reflections regardless of what the background is."
msgstr ""
-#: doc/classes/Environment.xml:289 doc/classes/RenderingServer.xml:3473
+#: doc/classes/Environment.xml:313
+msgid ""
+"Linear tonemapper operator. Reads the linear data and passes it on "
+"unmodified."
+msgstr ""
+
+#: doc/classes/Environment.xml:316
+msgid ""
+"Reinhardt tonemapper operator. Performs a variation on rendered pixels' "
+"colors by this formula: [code]color = color / (1 + color)[/code]."
+msgstr ""
+
+#: doc/classes/Environment.xml:319
+msgid "Filmic tonemapper operator."
+msgstr ""
+
+#: doc/classes/Environment.xml:322
+msgid "Academy Color Encoding System tonemapper operator."
+msgstr ""
+
+#: doc/classes/Environment.xml:325 doc/classes/RenderingServer.xml:3484
msgid ""
"Additive glow blending mode. Mostly used for particles, glows (bloom), lens "
"flare, bright sources."
msgstr ""
-#: doc/classes/Environment.xml:292 doc/classes/RenderingServer.xml:3476
+#: doc/classes/Environment.xml:328 doc/classes/RenderingServer.xml:3487
msgid ""
"Screen glow blending mode. Increases brightness, used frequently with bloom."
msgstr ""
-#: doc/classes/Environment.xml:295 doc/classes/RenderingServer.xml:3479
+#: doc/classes/Environment.xml:331 doc/classes/RenderingServer.xml:3490
msgid ""
"Soft light glow blending mode. Modifies contrast, exposes shadows and "
"highlights (vivid bloom)."
msgstr ""
-#: doc/classes/Environment.xml:298 doc/classes/RenderingServer.xml:3482
+#: doc/classes/Environment.xml:334 doc/classes/RenderingServer.xml:3493
msgid ""
"Replace glow blending mode. Replaces all pixels' color by the glow value. "
"This can be used to simulate a full-screen blur effect by tweaking the glow "
"parameters to match the original image's brightness."
msgstr ""
-#: doc/classes/Environment.xml:301 doc/classes/RenderingServer.xml:3485
+#: doc/classes/Environment.xml:337 doc/classes/RenderingServer.xml:3496
msgid ""
"Mixes the glow with the underlying color to avoid increasing brightness as "
"much while still maintaining a glow effect."
msgstr ""
-#: doc/classes/Environment.xml:304
-msgid ""
-"Linear tonemapper operator. Reads the linear data and passes it on "
-"unmodified."
-msgstr ""
-
-#: doc/classes/Environment.xml:307
-msgid ""
-"Reinhardt tonemapper operator. Performs a variation on rendered pixels' "
-"colors by this formula: [code]color = color / (1 + color)[/code]."
-msgstr ""
-
-#: doc/classes/Environment.xml:310
-msgid "Filmic tonemapper operator."
-msgstr ""
-
-#: doc/classes/Environment.xml:313
-msgid "Academy Color Encoding System tonemapper operator."
-msgstr ""
-
-#: doc/classes/Environment.xml:316
+#: doc/classes/Environment.xml:340
msgid "No blur for the screen-space ambient occlusion effect (fastest)."
msgstr ""
-#: doc/classes/Environment.xml:319
+#: doc/classes/Environment.xml:343
msgid "1×1 blur for the screen-space ambient occlusion effect."
msgstr ""
-#: doc/classes/Environment.xml:322
+#: doc/classes/Environment.xml:346
msgid "2×2 blur for the screen-space ambient occlusion effect."
msgstr ""
-#: doc/classes/Environment.xml:325
+#: doc/classes/Environment.xml:349
msgid ""
"3×3 blur for the screen-space ambient occlusion effect. Increases the radius "
"of the blur for a smoother look, but can result in checkerboard-like "
@@ -20311,14 +20981,17 @@ msgid ""
" var content = file.get_as_text()\n"
" file.close()\n"
" return content\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"In the example above, the file will be saved in the user data folder as "
+"specified in the [url=https://docs.godotengine.org/en/latest/tutorials/io/"
+"data_paths.html]Data paths[/url] documentation."
msgstr ""
-#: doc/classes/File.xml:32
+#: doc/classes/File.xml:33
msgid "Closes the currently opened file."
msgstr ""
-#: doc/classes/File.xml:39
+#: doc/classes/File.xml:40
msgid ""
"Returns [code]true[/code] if the file cursor has read past the end of the "
"file.\n"
@@ -20329,7 +21002,7 @@ msgid ""
"get_position] to implement a custom logic."
msgstr ""
-#: doc/classes/File.xml:49
+#: doc/classes/File.xml:50
msgid ""
"Returns [code]true[/code] if the file exists in the given path.\n"
"[b]Note:[/b] Many resources types are imported (e.g. textures or sound "
@@ -20342,41 +21015,41 @@ msgid ""
"source asset is present in [code]res://[/code], but fail when exported)."
msgstr ""
-#: doc/classes/File.xml:57
+#: doc/classes/File.xml:58
msgid ""
"Returns the next 16 bits from the file as an integer. See [method store_16] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:64
+#: doc/classes/File.xml:65
msgid ""
"Returns the next 32 bits from the file as an integer. See [method store_32] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:71
+#: doc/classes/File.xml:72
msgid ""
"Returns the next 64 bits from the file as an integer. See [method store_64] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:78
+#: doc/classes/File.xml:79
msgid ""
"Returns the next 8 bits from the file as an integer. See [method store_8] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:85
+#: doc/classes/File.xml:86
msgid ""
"Returns the whole file as a [String].\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:95
+#: doc/classes/File.xml:96
msgid "Returns next [code]len[/code] bytes of the file as a [PackedByteArray]."
msgstr ""
-#: doc/classes/File.xml:104
+#: doc/classes/File.xml:105
msgid ""
"Returns the next value of the file in CSV (Comma-Separated Values) format. "
"You can pass a different delimiter [code]delim[/code] to use other than the "
@@ -20385,37 +21058,37 @@ msgid ""
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:112
+#: doc/classes/File.xml:113
msgid "Returns the next 64 bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:119
+#: doc/classes/File.xml:120
msgid ""
"Returns the last error that happened when trying to perform operations. "
"Compare with the [code]ERR_FILE_*[/code] constants from [enum Error]."
msgstr ""
-#: doc/classes/File.xml:126
+#: doc/classes/File.xml:127
msgid "Returns the next 32 bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:133
+#: doc/classes/File.xml:134
msgid "Returns the size of the file in bytes."
msgstr ""
-#: doc/classes/File.xml:140
+#: doc/classes/File.xml:141
msgid ""
"Returns the next line of the file as a [String].\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:150
+#: doc/classes/File.xml:151
msgid ""
"Returns an MD5 String representing the file at the given path or an empty "
"[String] on failure."
msgstr ""
-#: doc/classes/File.xml:159
+#: doc/classes/File.xml:160
msgid ""
"Returns the last time the [code]file[/code] was modified in unix timestamp "
"format or returns a [String] \"ERROR IN [code]file[/code]\". This unix "
@@ -20423,35 +21096,35 @@ msgid ""
"get_datetime_from_unix_time]."
msgstr ""
-#: doc/classes/File.xml:166
+#: doc/classes/File.xml:167
msgid ""
"Returns a [String] saved in Pascal format from the file.\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:174
+#: doc/classes/File.xml:175
msgid "Returns the path as a [String] for the current open file."
msgstr ""
-#: doc/classes/File.xml:181
+#: doc/classes/File.xml:182
msgid "Returns the absolute path as a [String] for the current open file."
msgstr ""
-#: doc/classes/File.xml:188
+#: doc/classes/File.xml:189
msgid "Returns the file cursor's position."
msgstr ""
-#: doc/classes/File.xml:195
+#: doc/classes/File.xml:196
msgid "Returns the next bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:204
+#: doc/classes/File.xml:205
msgid ""
"Returns a SHA-256 [String] representing the file at the given path or an "
"empty [String] on failure."
msgstr ""
-#: doc/classes/File.xml:213
+#: doc/classes/File.xml:214
msgid ""
"Returns the next [Variant] value from the file. If [code]allow_objects[/"
"code] is [code]true[/code], decoding objects is allowed.\n"
@@ -20460,37 +21133,38 @@ msgid ""
"to avoid potential security threats such as remote code execution."
msgstr ""
-#: doc/classes/File.xml:221
+#: doc/classes/File.xml:222
msgid "Returns [code]true[/code] if the file is currently opened."
msgstr ""
-#: doc/classes/File.xml:232
+#: doc/classes/File.xml:233
msgid "Opens the file for writing or reading, depending on the flags."
msgstr ""
-#: doc/classes/File.xml:245
+#: doc/classes/File.xml:246
msgid "Opens a compressed file for reading or writing."
msgstr ""
-#: doc/classes/File.xml:258
+#: doc/classes/File.xml:259
msgid ""
"Opens an encrypted file in write or read mode. You need to pass a binary key "
-"to encrypt/decrypt it."
+"to encrypt/decrypt it.\n"
+"[b]Note:[/b] The provided key must be 32 bytes long."
msgstr ""
-#: doc/classes/File.xml:271
+#: doc/classes/File.xml:273
msgid ""
"Opens an encrypted file in write or read mode. You need to pass a password "
"to encrypt/decrypt it."
msgstr ""
-#: doc/classes/File.xml:280
+#: doc/classes/File.xml:282
msgid ""
"Changes the file reading/writing cursor to the specified position (in bytes "
"from the beginning of the file)."
msgstr ""
-#: doc/classes/File.xml:289
+#: doc/classes/File.xml:291
msgid ""
"Changes the file reading/writing cursor to the specified position (in bytes "
"from the end of the file).\n"
@@ -20498,7 +21172,7 @@ msgid ""
"cursor will be at the end of the file."
msgstr ""
-#: doc/classes/File.xml:299
+#: doc/classes/File.xml:301
msgid ""
"Stores an integer as 16 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, "
@@ -20526,7 +21200,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/File.xml:328
+#: doc/classes/File.xml:330
msgid ""
"Stores an integer as 32 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, "
@@ -20535,14 +21209,14 @@ msgid ""
"(see [method store_16] for an example)."
msgstr ""
-#: doc/classes/File.xml:339
+#: doc/classes/File.xml:341
msgid ""
"Stores an integer as 64 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] must lie in the interval [code][-2^63, "
"2^63 - 1][/code] (i.e. be a valid [int] value)."
msgstr ""
-#: doc/classes/File.xml:349
+#: doc/classes/File.xml:351
msgid ""
"Stores an integer as 8 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, 255]"
@@ -20551,11 +21225,11 @@ msgid ""
"(see [method store_16] for an example)."
msgstr ""
-#: doc/classes/File.xml:360
+#: doc/classes/File.xml:362
msgid "Stores the given array of bytes in the file."
msgstr ""
-#: doc/classes/File.xml:371
+#: doc/classes/File.xml:373
msgid ""
"Store the given [PackedStringArray] in the file as a line formatted in the "
"CSV (Comma-Separated Values) format. You can pass a different delimiter "
@@ -20564,45 +21238,45 @@ msgid ""
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:381
+#: doc/classes/File.xml:383
msgid "Stores a floating-point number as 64 bits in the file."
msgstr ""
-#: doc/classes/File.xml:390
+#: doc/classes/File.xml:392
msgid "Stores a floating-point number as 32 bits in the file."
msgstr ""
-#: doc/classes/File.xml:399
+#: doc/classes/File.xml:401
msgid ""
"Stores the given [String] as a line in the file.\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:409
+#: doc/classes/File.xml:411
msgid ""
"Stores the given [String] as a line in the file in Pascal format (i.e. also "
"store the length of the string).\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:419
+#: doc/classes/File.xml:421
msgid "Stores a floating-point number in the file."
msgstr ""
-#: doc/classes/File.xml:428
+#: doc/classes/File.xml:430
msgid ""
"Stores the given [String] in the file.\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:440
+#: doc/classes/File.xml:442
msgid ""
"Stores any Variant value in the file. If [code]full_objects[/code] is "
"[code]true[/code], encoding objects is allowed (and can potentially include "
"code)."
msgstr ""
-#: doc/classes/File.xml:446
+#: doc/classes/File.xml:448
msgid ""
"If [code]true[/code], the file's endianness is swapped. Use this if you're "
"dealing with files written on big-endian machines.\n"
@@ -20610,44 +21284,44 @@ msgid ""
"reset to [code]false[/code] whenever you open the file."
msgstr ""
-#: doc/classes/File.xml:452
+#: doc/classes/File.xml:454
msgid "Opens the file for read operations."
msgstr ""
-#: doc/classes/File.xml:455
+#: doc/classes/File.xml:457
msgid ""
"Opens the file for write operations. Create it if the file does not exist "
"and truncate if it exists."
msgstr ""
-#: doc/classes/File.xml:458
+#: doc/classes/File.xml:460
msgid ""
"Opens the file for read and write operations. Does not truncate the file."
msgstr ""
-#: doc/classes/File.xml:461
+#: doc/classes/File.xml:463
msgid ""
"Opens the file for read and write operations. Create it if the file does not "
"exist and truncate if it exists."
msgstr ""
-#: doc/classes/File.xml:464
+#: doc/classes/File.xml:466
msgid "Uses the [url=http://fastlz.org/]FastLZ[/url] compression method."
msgstr ""
-#: doc/classes/File.xml:467
+#: doc/classes/File.xml:469
msgid ""
"Uses the [url=https://en.wikipedia.org/wiki/DEFLATE]DEFLATE[/url] "
"compression method."
msgstr ""
-#: doc/classes/File.xml:470
+#: doc/classes/File.xml:472
msgid ""
"Uses the [url=https://facebook.github.io/zstd/]Zstandard[/url] compression "
"method."
msgstr ""
-#: doc/classes/File.xml:473
+#: doc/classes/File.xml:475
msgid "Uses the [url=https://www.gzip.org/]gzip[/url] compression method."
msgstr ""
@@ -20863,10 +21537,11 @@ msgid ""
"Draw [code]string[/code] into a canvas item using the font at a given "
"position, with [code]modulate[/code] color, and optionally clipping the "
"width. [code]position[/code] specifies the baseline, not the top. To draw "
-"from the top, [i]ascent[/i] must be added to the Y axis."
+"from the top, [i]ascent[/i] must be added to the Y axis.\n"
+"See also [method CanvasItem.draw_string]."
msgstr ""
-#: doc/classes/Font.xml:47
+#: doc/classes/Font.xml:48
msgid ""
"Draw character [code]char[/code] into a canvas item using the font at a "
"given position, with [code]modulate[/code] color, and optionally kerning if "
@@ -20876,39 +21551,39 @@ msgid ""
"making this function useful for drawing strings character by character."
msgstr ""
-#: doc/classes/Font.xml:54
+#: doc/classes/Font.xml:55
msgid "Returns the font ascent (number of pixels above the baseline)."
msgstr ""
-#: doc/classes/Font.xml:65
+#: doc/classes/Font.xml:66
msgid ""
"Returns the size of a character, optionally taking kerning into account if "
"the next character is provided."
msgstr ""
-#: doc/classes/Font.xml:72
+#: doc/classes/Font.xml:73
msgid "Returns the font descent (number of pixels below the baseline)."
msgstr ""
-#: doc/classes/Font.xml:79
+#: doc/classes/Font.xml:80
msgid "Returns the total font height (ascent plus descent) in pixels."
msgstr ""
-#: doc/classes/Font.xml:88
+#: doc/classes/Font.xml:89
msgid "Returns the size of a string, taking kerning and advance into account."
msgstr ""
-#: doc/classes/Font.xml:99
+#: doc/classes/Font.xml:100
msgid ""
"Returns the size that the string would have with word wrapping enabled with "
"a fixed [code]width[/code]."
msgstr ""
-#: doc/classes/Font.xml:106
+#: doc/classes/Font.xml:107
msgid "Returns [code]true[/code] if the font has an outline."
msgstr ""
-#: doc/classes/Font.xml:119
+#: doc/classes/Font.xml:120
msgid ""
"After editing a font (changing size, ascent, char rects, etc.). Call this "
"function to propagate changes to controls that might use it."
@@ -21080,13 +21755,14 @@ msgstr ""
#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:7
msgid ""
-"Calling [method @GDScript.yield] within a function will cause that function "
-"to yield and return its current state as an object of this type. The yielded "
+"FIXME: Outdated docs as of GDScript rewrite in 4.0.\n"
+"Calling [code]yield[/code] within a function will cause that function to "
+"yield and return its current state as an object of this type. The yielded "
"function call can then be resumed later by calling [method resume] on this "
"state object."
msgstr ""
-#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:18
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:19
msgid ""
"Check whether the function call may be resumed. This is not the case if the "
"function state was already resumed.\n"
@@ -21097,12 +21773,12 @@ msgid ""
"script have survived up to that point."
msgstr ""
-#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:28
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:29
msgid ""
"Resume execution of the yielded function call.\n"
-"If handed an argument, return the argument from the [method @GDScript.yield] "
-"call in the yielded function call. You can pass e.g. an [Array] to hand "
-"multiple arguments.\n"
+"If handed an argument, return the argument from the [code]yield[/code] call "
+"in the yielded function call. You can pass e.g. an [Array] to hand multiple "
+"arguments.\n"
"This function returns what the resumed function call returns, possibly "
"another function state if yielded again."
msgstr ""
@@ -21671,10 +22347,20 @@ msgid ""
"code], see [enum PolyJoinType].\n"
"The operation may result in an outer polygon (boundary) and inner polygon "
"(hole) produced which could be distinguished by calling [method "
-"is_polygon_clockwise]."
+"is_polygon_clockwise].\n"
+"[b]Note:[/b] To translate the polygon's vertices specifically, use the "
+"[method Transform2D.xform] method:\n"
+"[codeblock]\n"
+"var polygon = PackedVector2Array([Vector2(0, 0), Vector2(100, 0), "
+"Vector2(100, 100), Vector2(0, 100)])\n"
+"var offset = Vector2(50, 50)\n"
+"polygon = Transform2D(0, offset).xform(polygon)\n"
+"print(polygon) # prints [Vector2(50, 50), Vector2(150, 50), Vector2(150, "
+"150), Vector2(50, 150)]\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/Geometry2D.xml:217
+#: doc/classes/Geometry2D.xml:224
msgid ""
"Inflates or deflates [code]polyline[/code] by [code]delta[/code] units "
"(pixels), producing polygons. If [code]delta[/code] is positive, makes the "
@@ -21690,13 +22376,13 @@ msgid ""
"is_polygon_clockwise]."
msgstr ""
-#: doc/classes/Geometry2D.xml:235
+#: doc/classes/Geometry2D.xml:242
msgid ""
"Returns if [code]point[/code] is inside the triangle specified by [code]a[/"
"code], [code]b[/code] and [code]c[/code]."
msgstr ""
-#: doc/classes/Geometry2D.xml:250
+#: doc/classes/Geometry2D.xml:257
msgid ""
"Checks if the two segments ([code]from_a[/code], [code]to_a[/code]) and "
"([code]from_b[/code], [code]to_b[/code]) intersect. If yes, return the point "
@@ -21704,7 +22390,7 @@ msgid ""
"empty [Variant]."
msgstr ""
-#: doc/classes/Geometry2D.xml:259
+#: doc/classes/Geometry2D.xml:266
msgid ""
"Triangulates the area specified by discrete set of [code]points[/code] such "
"that no point is inside the circumcircle of any resulting triangle. Returns "
@@ -21715,7 +22401,7 @@ msgid ""
"[PackedInt32Array] is returned."
msgstr ""
-#: doc/classes/Geometry2D.xml:268
+#: doc/classes/Geometry2D.xml:275
msgid ""
"Triangulates the polygon specified by the points in [code]polygon[/code]. "
"Returns a [PackedInt32Array] where each triangle consists of three "
@@ -21725,40 +22411,40 @@ msgid ""
"[PackedInt32Array] is returned."
msgstr ""
-#: doc/classes/Geometry2D.xml:274
+#: doc/classes/Geometry2D.xml:281
msgid ""
"Create regions where either subject or clip polygons (or both) are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:277
+#: doc/classes/Geometry2D.xml:284
msgid ""
"Create regions where subject polygons are filled except where clip polygons "
"are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:280
+#: doc/classes/Geometry2D.xml:287
msgid "Create regions where both subject and clip polygons are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:283
+#: doc/classes/Geometry2D.xml:290
msgid ""
"Create regions where either subject or clip polygons are filled but not "
"where both are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:286
+#: doc/classes/Geometry2D.xml:293
msgid ""
"Squaring is applied uniformally at all convex edge joins at [code]1 * delta[/"
"code]."
msgstr ""
-#: doc/classes/Geometry2D.xml:289
+#: doc/classes/Geometry2D.xml:296
msgid ""
"While flattened paths can never perfectly trace an arc, they are "
"approximated by a series of arc chords."
msgstr ""
-#: doc/classes/Geometry2D.xml:292
+#: doc/classes/Geometry2D.xml:299
msgid ""
"There's a necessary limit to mitered joins since offsetting edges that join "
"at very acute angles will produce excessively long and narrow \"spikes\". "
@@ -21766,27 +22452,27 @@ msgid ""
"distance, \"square\" joining is applied."
msgstr ""
-#: doc/classes/Geometry2D.xml:295
+#: doc/classes/Geometry2D.xml:302
msgid ""
"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
"as a polygon."
msgstr ""
-#: doc/classes/Geometry2D.xml:298
+#: doc/classes/Geometry2D.xml:305
msgid ""
"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
"as a polyline."
msgstr ""
-#: doc/classes/Geometry2D.xml:301
+#: doc/classes/Geometry2D.xml:308
msgid "Endpoints are squared off with no extension."
msgstr ""
-#: doc/classes/Geometry2D.xml:304
+#: doc/classes/Geometry2D.xml:311
msgid "Endpoints are squared off and extended by [code]delta[/code] units."
msgstr ""
-#: doc/classes/Geometry2D.xml:307
+#: doc/classes/Geometry2D.xml:314
msgid "Endpoints are rounded off and extended by [code]delta[/code] units."
msgstr ""
@@ -22016,7 +22702,7 @@ msgstr ""
msgid ""
"Bakes the effect from all [GeometryInstance3D]s marked with [constant "
"GeometryInstance3D.GI_MODE_BAKED] and [Light3D]s marked with either "
-"[constant Light3D.BAKE_INDIRECT] or [constant Light3D.BAKE_ALL]. If "
+"[constant Light3D.BAKE_DYNAMIC] or [constant Light3D.BAKE_STATIC]. If "
"[code]create_visual_debug[/code] is [code]true[/code], after baking the "
"light, this will generate a [MultiMesh] that has a cube representing each "
"solid cell with each cube colored to the cell's albedo color. This can be "
@@ -22903,121 +23589,119 @@ msgstr ""
msgid "Clear all cells."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:53
+#: modules/gridmap/doc_classes/GridMap.xml:49
msgid ""
-"The [MeshLibrary] item index located at the grid-based X, Y and Z "
-"coordinates. If the cell is empty, [constant INVALID_CELL_ITEM] will be "
-"returned."
+"The [MeshLibrary] item index located at the given grid coordinates. If the "
+"cell is empty, [constant INVALID_CELL_ITEM] will be returned."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:66
+#: modules/gridmap/doc_classes/GridMap.xml:58
msgid ""
-"The orientation of the cell at the grid-based X, Y and Z coordinates. -1 is "
-"returned if the cell is empty."
+"The orientation of the cell at the given grid coordinates. [code]-1[/code] "
+"is returned if the cell is empty."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:75 doc/classes/PhysicsBody2D.xml:35
+#: modules/gridmap/doc_classes/GridMap.xml:67 doc/classes/PhysicsBody2D.xml:35
#: doc/classes/PhysicsBody3D.xml:35
msgid "Returns an individual bit on the [member collision_layer]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:84 doc/classes/PhysicsBody2D.xml:44
+#: modules/gridmap/doc_classes/GridMap.xml:76 doc/classes/PhysicsBody2D.xml:44
#: doc/classes/PhysicsBody3D.xml:44
msgid "Returns an individual bit on the [member collision_mask]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:91
+#: modules/gridmap/doc_classes/GridMap.xml:83
msgid ""
"Returns an array of [Transform] and [Mesh] references corresponding to the "
"non-empty cells in the grid. The transforms are specified in world space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:98
+#: modules/gridmap/doc_classes/GridMap.xml:90
msgid ""
"Returns an array of [Vector3] with the non-empty cell coordinates in the "
"grid map."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:121
+#: modules/gridmap/doc_classes/GridMap.xml:109
msgid ""
"Returns the position of a grid cell in the GridMap's local coordinate space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:146
+#: modules/gridmap/doc_classes/GridMap.xml:130
msgid ""
-"Sets the mesh index for the cell referenced by its grid-based X, Y and Z "
-"coordinates.\n"
+"Sets the mesh index for the cell referenced by its grid coordinates.\n"
"A negative item index such as [constant INVALID_CELL_ITEM] will clear the "
"cell.\n"
"Optionally, the item's orientation can be passed. For valid orientation "
"values, see [method Basis.get_orthogonal_index]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:173
+#: modules/gridmap/doc_classes/GridMap.xml:157
msgid "Sets an individual bit on the [member collision_layer]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:184
+#: modules/gridmap/doc_classes/GridMap.xml:168
msgid "Sets an individual bit on the [member collision_mask]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:193
+#: modules/gridmap/doc_classes/GridMap.xml:177
msgid ""
"Returns the coordinates of the grid cell containing the given point.\n"
"[code]pos[/code] should be in the GridMap's local coordinate space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:200
+#: modules/gridmap/doc_classes/GridMap.xml:184
msgid "If [code]true[/code], grid items are centered on the X axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:203
+#: modules/gridmap/doc_classes/GridMap.xml:187
msgid "If [code]true[/code], grid items are centered on the Y axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:206
+#: modules/gridmap/doc_classes/GridMap.xml:190
msgid "If [code]true[/code], grid items are centered on the Z axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:209
+#: modules/gridmap/doc_classes/GridMap.xml:193
msgid ""
"The size of each octant measured in number of cells. This applies to all "
"three axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:212
+#: modules/gridmap/doc_classes/GridMap.xml:196
msgid ""
"The scale of the cell items.\n"
"This does not affect the size of the grid cells themselves, only the items "
"in them. This can be used to make cell items overlap their neighbors."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:216
+#: modules/gridmap/doc_classes/GridMap.xml:200
msgid ""
"The dimensions of the grid's cells.\n"
"This does not affect the size of the meshes. See [member cell_scale]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:220
+#: modules/gridmap/doc_classes/GridMap.xml:204
msgid ""
"The physics layers this GridMap is in.\n"
"GridMaps act as static bodies, meaning they aren't affected by gravity or "
"other forces. They only affect other physics bodies that collide with them."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:224
+#: modules/gridmap/doc_classes/GridMap.xml:208
msgid "The physics layers this GridMap detects collisions in."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:227
+#: modules/gridmap/doc_classes/GridMap.xml:211
msgid "The assigned [MeshLibrary]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:235
+#: modules/gridmap/doc_classes/GridMap.xml:219
msgid "Emitted when [member cell_size] changes."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:241
+#: modules/gridmap/doc_classes/GridMap.xml:225
msgid ""
"Invalid cell item that can be used in [method set_cell_item] to clear cells "
"(or represent an empty cell in [method get_cell_item])."
@@ -23382,27 +24066,33 @@ msgid ""
"server's side.\n"
"For more information on HTTP, see https://developer.mozilla.org/en-US/docs/"
"Web/HTTP (or read RFC 2616 to get it straight from the source: https://tools."
-"ietf.org/html/rfc2616)."
+"ietf.org/html/rfc2616).\n"
+"[b]Note:[/b] When performing HTTP requests from a project exported to HTML5, "
+"keep in mind the remote server may not allow requests from foreign origins "
+"due to [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/"
+"url]. If you host the server in question, you should modify its backend to "
+"allow requests from foreign origins by adding the [code]Access-Control-Allow-"
+"Origin: *[/code] HTTP header."
msgstr ""
-#: doc/classes/HTTPClient.xml:13
+#: doc/classes/HTTPClient.xml:14
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/"
"http_client_class.html"
msgstr ""
-#: doc/classes/HTTPClient.xml:14 doc/classes/HTTPRequest.xml:62
+#: doc/classes/HTTPClient.xml:15 doc/classes/HTTPRequest.xml:71
#: doc/classes/StreamPeerSSL.xml:10
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/ssl_certificates."
"html"
msgstr ""
-#: doc/classes/HTTPClient.xml:21
+#: doc/classes/HTTPClient.xml:22
msgid "Closes the current connection, allowing reuse of this [HTTPClient]."
msgstr ""
-#: doc/classes/HTTPClient.xml:36
+#: doc/classes/HTTPClient.xml:37
msgid ""
"Connects to a host. This needs to be done before any requests are sent.\n"
"The host should not have http:// prepended but will strip the protocol "
@@ -23414,7 +24104,7 @@ msgid ""
"[code]true[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:46
+#: doc/classes/HTTPClient.xml:47
msgid ""
"Returns the response's body length.\n"
"[b]Note:[/b] Some Web servers may not send a body length. In this case, the "
@@ -23422,15 +24112,15 @@ msgid ""
"the body length will also be [code]-1[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:54
+#: doc/classes/HTTPClient.xml:55
msgid "Returns the response's HTTP status code."
msgstr ""
-#: doc/classes/HTTPClient.xml:61
+#: doc/classes/HTTPClient.xml:62
msgid "Returns the response headers."
msgstr ""
-#: doc/classes/HTTPClient.xml:68
+#: doc/classes/HTTPClient.xml:69
msgid ""
"Returns all response headers as a Dictionary of structure [code]{ \"key\": "
"\"value1; value2\" }[/code] where the case-sensitivity of the keys and "
@@ -23445,27 +24135,27 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:82
+#: doc/classes/HTTPClient.xml:83
msgid ""
"Returns a [enum Status] constant. Need to call [method poll] in order to get "
"status updates."
msgstr ""
-#: doc/classes/HTTPClient.xml:89
+#: doc/classes/HTTPClient.xml:90
msgid "If [code]true[/code], this [HTTPClient] has a response available."
msgstr ""
-#: doc/classes/HTTPClient.xml:96
+#: doc/classes/HTTPClient.xml:97
msgid "If [code]true[/code], this [HTTPClient] has a response that is chunked."
msgstr ""
-#: doc/classes/HTTPClient.xml:103
+#: doc/classes/HTTPClient.xml:104
msgid ""
"This needs to be called in order to have any request processed. Check "
"results with [method get_status]."
msgstr ""
-#: doc/classes/HTTPClient.xml:112
+#: doc/classes/HTTPClient.xml:113
msgid ""
"Generates a GET/POST application/x-www-form-urlencoded style query string "
"from a provided dictionary, e.g.:\n"
@@ -23485,11 +24175,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:130
+#: doc/classes/HTTPClient.xml:131
msgid "Reads one chunk from the response."
msgstr ""
-#: doc/classes/HTTPClient.xml:145
+#: doc/classes/HTTPClient.xml:146
msgid ""
"Sends a request to the connected host. The URL parameter is just the part "
"after the host, so for [code]http://somehost.com/index.php[/code], it is "
@@ -23507,7 +24197,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:168
+#: doc/classes/HTTPClient.xml:169
msgid ""
"Sends a raw request to the connected host. The URL parameter is just the "
"part after the host, so for [code]http://somehost.com/index.php[/code], it "
@@ -23517,43 +24207,43 @@ msgid ""
"Sends the body data raw, as a byte array and does not encode it in any way."
msgstr ""
-#: doc/classes/HTTPClient.xml:176
+#: doc/classes/HTTPClient.xml:177
msgid ""
"If [code]true[/code], execution will block until all data is read from the "
"response."
msgstr ""
-#: doc/classes/HTTPClient.xml:179
+#: doc/classes/HTTPClient.xml:180
msgid "The connection to use for this client."
msgstr ""
-#: doc/classes/HTTPClient.xml:182
+#: doc/classes/HTTPClient.xml:183
msgid ""
"The size of the buffer used and maximum bytes to read per iteration. See "
"[method read_response_body_chunk]."
msgstr ""
-#: doc/classes/HTTPClient.xml:187
+#: doc/classes/HTTPClient.xml:188
msgid ""
"HTTP GET method. The GET method requests a representation of the specified "
"resource. Requests using GET should only retrieve data."
msgstr ""
-#: doc/classes/HTTPClient.xml:190
+#: doc/classes/HTTPClient.xml:191
msgid ""
"HTTP HEAD method. The HEAD method asks for a response identical to that of a "
"GET request, but without the response body. This is useful to request "
"metadata like HTTP headers or to check if a resource exists."
msgstr ""
-#: doc/classes/HTTPClient.xml:193
+#: doc/classes/HTTPClient.xml:194
msgid ""
"HTTP POST method. The POST method is used to submit an entity to the "
"specified resource, often causing a change in state or side effects on the "
"server. This is often used for forms and submitting data or uploading files."
msgstr ""
-#: doc/classes/HTTPClient.xml:196
+#: doc/classes/HTTPClient.xml:197
msgid ""
"HTTP PUT method. The PUT method asks to replace all current representations "
"of the target resource with the request payload. (You can think of POST as "
@@ -23561,103 +24251,103 @@ msgid ""
"not make a clear distinction or change their meaning)."
msgstr ""
-#: doc/classes/HTTPClient.xml:199
+#: doc/classes/HTTPClient.xml:200
msgid ""
"HTTP DELETE method. The DELETE method requests to delete the specified "
"resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:202
+#: doc/classes/HTTPClient.xml:203
msgid ""
"HTTP OPTIONS method. The OPTIONS method asks for a description of the "
"communication options for the target resource. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:205
+#: doc/classes/HTTPClient.xml:206
msgid ""
"HTTP TRACE method. The TRACE method performs a message loop-back test along "
"the path to the target resource. Returns the entire HTTP request received in "
"the response body. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:208
+#: doc/classes/HTTPClient.xml:209
msgid ""
"HTTP CONNECT method. The CONNECT method establishes a tunnel to the server "
"identified by the target resource. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:211
+#: doc/classes/HTTPClient.xml:212
msgid ""
"HTTP PATCH method. The PATCH method is used to apply partial modifications "
"to a resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:214
+#: doc/classes/HTTPClient.xml:215
msgid "Represents the size of the [enum Method] enum."
msgstr ""
-#: doc/classes/HTTPClient.xml:217
+#: doc/classes/HTTPClient.xml:218
msgid "Status: Disconnected from the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:220
+#: doc/classes/HTTPClient.xml:221
msgid "Status: Currently resolving the hostname for the given URL into an IP."
msgstr ""
-#: doc/classes/HTTPClient.xml:223
+#: doc/classes/HTTPClient.xml:224
msgid "Status: DNS failure: Can't resolve the hostname for the given URL."
msgstr ""
-#: doc/classes/HTTPClient.xml:226
+#: doc/classes/HTTPClient.xml:227
msgid "Status: Currently connecting to server."
msgstr ""
-#: doc/classes/HTTPClient.xml:229
+#: doc/classes/HTTPClient.xml:230
msgid "Status: Can't connect to the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:232
+#: doc/classes/HTTPClient.xml:233
msgid "Status: Connection established."
msgstr ""
-#: doc/classes/HTTPClient.xml:235
+#: doc/classes/HTTPClient.xml:236
msgid "Status: Currently sending request."
msgstr ""
-#: doc/classes/HTTPClient.xml:238
+#: doc/classes/HTTPClient.xml:239
msgid "Status: HTTP body received."
msgstr ""
-#: doc/classes/HTTPClient.xml:241
+#: doc/classes/HTTPClient.xml:242
msgid "Status: Error in HTTP connection."
msgstr ""
-#: doc/classes/HTTPClient.xml:244
+#: doc/classes/HTTPClient.xml:245
msgid "Status: Error in SSL handshake."
msgstr ""
-#: doc/classes/HTTPClient.xml:247
+#: doc/classes/HTTPClient.xml:248
msgid ""
"HTTP status code [code]100 Continue[/code]. Interim response that indicates "
"everything so far is OK and that the client should continue with the request "
"(or ignore this status if already finished)."
msgstr ""
-#: doc/classes/HTTPClient.xml:250
+#: doc/classes/HTTPClient.xml:251
msgid ""
"HTTP status code [code]101 Switching Protocol[/code]. Sent in response to an "
"[code]Upgrade[/code] request header by the client. Indicates the protocol "
"the server is switching to."
msgstr ""
-#: doc/classes/HTTPClient.xml:253
+#: doc/classes/HTTPClient.xml:254
msgid ""
"HTTP status code [code]102 Processing[/code] (WebDAV). Indicates that the "
"server has received and is processing the request, but no response is "
"available yet."
msgstr ""
-#: doc/classes/HTTPClient.xml:256
+#: doc/classes/HTTPClient.xml:257
msgid ""
"HTTP status code [code]200 OK[/code]. The request has succeeded. Default "
"response for successful requests. Meaning varies depending on the request. "
@@ -23668,14 +24358,14 @@ msgid ""
"server."
msgstr ""
-#: doc/classes/HTTPClient.xml:259
+#: doc/classes/HTTPClient.xml:260
msgid ""
"HTTP status code [code]201 Created[/code]. The request has succeeded and a "
"new resource has been created as a result of it. This is typically the "
"response sent after a PUT request."
msgstr ""
-#: doc/classes/HTTPClient.xml:262
+#: doc/classes/HTTPClient.xml:263
msgid ""
"HTTP status code [code]202 Accepted[/code]. The request has been received "
"but not yet acted upon. It is non-committal, meaning that there is no way in "
@@ -23684,7 +24374,7 @@ msgid ""
"server handles the request, or for batch processing."
msgstr ""
-#: doc/classes/HTTPClient.xml:265
+#: doc/classes/HTTPClient.xml:266
msgid ""
"HTTP status code [code]203 Non-Authoritative Information[/code]. This "
"response code means returned meta-information set is not exact set as "
@@ -23693,14 +24383,14 @@ msgid ""
"instead of this response."
msgstr ""
-#: doc/classes/HTTPClient.xml:268
+#: doc/classes/HTTPClient.xml:269
msgid ""
"HTTP status code [code]204 No Content[/code]. There is no content to send "
"for this request, but the headers may be useful. The user-agent may update "
"its cached headers for this resource with the new ones."
msgstr ""
-#: doc/classes/HTTPClient.xml:271
+#: doc/classes/HTTPClient.xml:272
msgid ""
"HTTP status code [code]205 Reset Content[/code]. The server has fulfilled "
"the request and desires that the client resets the \"document view\" that "
@@ -23708,49 +24398,49 @@ msgid ""
"origin server."
msgstr ""
-#: doc/classes/HTTPClient.xml:274
+#: doc/classes/HTTPClient.xml:275
msgid ""
"HTTP status code [code]206 Partial Content[/code]. This response code is "
"used because of a range header sent by the client to separate download into "
"multiple streams."
msgstr ""
-#: doc/classes/HTTPClient.xml:277
+#: doc/classes/HTTPClient.xml:278
msgid ""
"HTTP status code [code]207 Multi-Status[/code] (WebDAV). A Multi-Status "
"response conveys information about multiple resources in situations where "
"multiple status codes might be appropriate."
msgstr ""
-#: doc/classes/HTTPClient.xml:280
+#: doc/classes/HTTPClient.xml:281
msgid ""
"HTTP status code [code]208 Already Reported[/code] (WebDAV). Used inside a "
"DAV: propstat response element to avoid enumerating the internal members of "
"multiple bindings to the same collection repeatedly."
msgstr ""
-#: doc/classes/HTTPClient.xml:283
+#: doc/classes/HTTPClient.xml:284
msgid ""
"HTTP status code [code]226 IM Used[/code] (WebDAV). The server has fulfilled "
"a GET request for the resource, and the response is a representation of the "
"result of one or more instance-manipulations applied to the current instance."
msgstr ""
-#: doc/classes/HTTPClient.xml:286
+#: doc/classes/HTTPClient.xml:287
msgid ""
"HTTP status code [code]300 Multiple Choice[/code]. The request has more than "
"one possible responses and there is no standardized way to choose one of the "
"responses. User-agent or user should choose one of them."
msgstr ""
-#: doc/classes/HTTPClient.xml:289
+#: doc/classes/HTTPClient.xml:290
msgid ""
"HTTP status code [code]301 Moved Permanently[/code]. Redirection. This "
"response code means the URI of requested resource has been changed. The new "
"URI is usually included in the response."
msgstr ""
-#: doc/classes/HTTPClient.xml:292
+#: doc/classes/HTTPClient.xml:293
msgid ""
"HTTP status code [code]302 Found[/code]. Temporary redirection. This "
"response code means the URI of requested resource has been changed "
@@ -23758,7 +24448,7 @@ msgid ""
"this same URI should be used by the client in future requests."
msgstr ""
-#: doc/classes/HTTPClient.xml:295
+#: doc/classes/HTTPClient.xml:296
msgid ""
"HTTP status code [code]303 See Other[/code]. The server is redirecting the "
"user agent to a different resource, as indicated by a URI in the Location "
@@ -23766,39 +24456,39 @@ msgid ""
"original request."
msgstr ""
-#: doc/classes/HTTPClient.xml:298
+#: doc/classes/HTTPClient.xml:299
msgid ""
"HTTP status code [code]304 Not Modified[/code]. A conditional GET or HEAD "
"request has been received and would have resulted in a 200 OK response if it "
"were not for the fact that the condition evaluated to [code]false[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:301
+#: doc/classes/HTTPClient.xml:302
msgid ""
"HTTP status code [code]305 Use Proxy[/code]. [i]Deprecated. Do not use.[/i]"
msgstr ""
-#: doc/classes/HTTPClient.xml:304
+#: doc/classes/HTTPClient.xml:305
msgid ""
"HTTP status code [code]306 Switch Proxy[/code]. [i]Deprecated. Do not use.[/"
"i]"
msgstr ""
-#: doc/classes/HTTPClient.xml:307
+#: doc/classes/HTTPClient.xml:308
msgid ""
"HTTP status code [code]307 Temporary Redirect[/code]. The target resource "
"resides temporarily under a different URI and the user agent MUST NOT change "
"the request method if it performs an automatic redirection to that URI."
msgstr ""
-#: doc/classes/HTTPClient.xml:310
+#: doc/classes/HTTPClient.xml:311
msgid ""
"HTTP status code [code]308 Permanent Redirect[/code]. The target resource "
"has been assigned a new permanent URI and any future references to this "
"resource ought to use one of the enclosed URIs."
msgstr ""
-#: doc/classes/HTTPClient.xml:313
+#: doc/classes/HTTPClient.xml:314
msgid ""
"HTTP status code [code]400 Bad Request[/code]. The request was invalid. The "
"server cannot or will not process the request due to something that is "
@@ -23807,21 +24497,21 @@ msgid ""
"routing)."
msgstr ""
-#: doc/classes/HTTPClient.xml:316
+#: doc/classes/HTTPClient.xml:317
msgid ""
"HTTP status code [code]401 Unauthorized[/code]. Credentials required. The "
"request has not been applied because it lacks valid authentication "
"credentials for the target resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:319
+#: doc/classes/HTTPClient.xml:320
msgid ""
"HTTP status code [code]402 Payment Required[/code]. This response code is "
"reserved for future use. Initial aim for creating this code was using it for "
"digital payment systems, however this is not currently used."
msgstr ""
-#: doc/classes/HTTPClient.xml:322
+#: doc/classes/HTTPClient.xml:323
msgid ""
"HTTP status code [code]403 Forbidden[/code]. The client does not have access "
"rights to the content, i.e. they are unauthorized, so server is rejecting to "
@@ -23829,7 +24519,7 @@ msgid ""
"known to the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:325
+#: doc/classes/HTTPClient.xml:326
msgid ""
"HTTP status code [code]404 Not Found[/code]. The server can not find "
"requested resource. Either the URL is not recognized or the endpoint is "
@@ -23837,7 +24527,7 @@ msgid ""
"403 to hide existence of a resource if the client is not authorized."
msgstr ""
-#: doc/classes/HTTPClient.xml:328
+#: doc/classes/HTTPClient.xml:329
msgid ""
"HTTP status code [code]405 Method Not Allowed[/code]. The request's HTTP "
"method is known by the server but has been disabled and cannot be used. For "
@@ -23845,7 +24535,7 @@ msgid ""
"GET and HEAD, must never be disabled and should not return this error code."
msgstr ""
-#: doc/classes/HTTPClient.xml:331
+#: doc/classes/HTTPClient.xml:332
msgid ""
"HTTP status code [code]406 Not Acceptable[/code]. The target resource does "
"not have a current representation that would be acceptable to the user "
@@ -23853,21 +24543,21 @@ msgid ""
"request. Used when negotiation content."
msgstr ""
-#: doc/classes/HTTPClient.xml:334
+#: doc/classes/HTTPClient.xml:335
msgid ""
"HTTP status code [code]407 Proxy Authentication Required[/code]. Similar to "
"401 Unauthorized, but it indicates that the client needs to authenticate "
"itself in order to use a proxy."
msgstr ""
-#: doc/classes/HTTPClient.xml:337
+#: doc/classes/HTTPClient.xml:338
msgid ""
"HTTP status code [code]408 Request Timeout[/code]. The server did not "
"receive a complete request message within the time that it was prepared to "
"wait."
msgstr ""
-#: doc/classes/HTTPClient.xml:340
+#: doc/classes/HTTPClient.xml:341
msgid ""
"HTTP status code [code]409 Conflict[/code]. The request could not be "
"completed due to a conflict with the current state of the target resource. "
@@ -23875,47 +24565,47 @@ msgid ""
"conflict and resubmit the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:343
+#: doc/classes/HTTPClient.xml:344
msgid ""
"HTTP status code [code]410 Gone[/code]. The target resource is no longer "
"available at the origin server and this condition is likely permanent."
msgstr ""
-#: doc/classes/HTTPClient.xml:346
+#: doc/classes/HTTPClient.xml:347
msgid ""
"HTTP status code [code]411 Length Required[/code]. The server refuses to "
"accept the request without a defined Content-Length header."
msgstr ""
-#: doc/classes/HTTPClient.xml:349
+#: doc/classes/HTTPClient.xml:350
msgid ""
"HTTP status code [code]412 Precondition Failed[/code]. One or more "
"conditions given in the request header fields evaluated to [code]false[/"
"code] when tested on the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:352
+#: doc/classes/HTTPClient.xml:353
msgid ""
"HTTP status code [code]413 Entity Too Large[/code]. The server is refusing "
"to process a request because the request payload is larger than the server "
"is willing or able to process."
msgstr ""
-#: doc/classes/HTTPClient.xml:355
+#: doc/classes/HTTPClient.xml:356
msgid ""
"HTTP status code [code]414 Request-URI Too Long[/code]. The server is "
"refusing to service the request because the request-target is longer than "
"the server is willing to interpret."
msgstr ""
-#: doc/classes/HTTPClient.xml:358
+#: doc/classes/HTTPClient.xml:359
msgid ""
"HTTP status code [code]415 Unsupported Media Type[/code]. The origin server "
"is refusing to service the request because the payload is in a format not "
"supported by this method on the target resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:361
+#: doc/classes/HTTPClient.xml:362
msgid ""
"HTTP status code [code]416 Requested Range Not Satisfiable[/code]. None of "
"the ranges in the request's Range header field overlap the current extent of "
@@ -23923,21 +24613,21 @@ msgid ""
"to invalid ranges or an excessive request of small or overlapping ranges."
msgstr ""
-#: doc/classes/HTTPClient.xml:364
+#: doc/classes/HTTPClient.xml:365
msgid ""
"HTTP status code [code]417 Expectation Failed[/code]. The expectation given "
"in the request's Expect header field could not be met by at least one of the "
"inbound servers."
msgstr ""
-#: doc/classes/HTTPClient.xml:367
+#: doc/classes/HTTPClient.xml:368
msgid ""
"HTTP status code [code]418 I'm A Teapot[/code]. Any attempt to brew coffee "
"with a teapot should result in the error code \"418 I'm a teapot\". The "
"resulting entity body MAY be short and stout."
msgstr ""
-#: doc/classes/HTTPClient.xml:370
+#: doc/classes/HTTPClient.xml:371
msgid ""
"HTTP status code [code]421 Misdirected Request[/code]. The request was "
"directed at a server that is not able to produce a response. This can be "
@@ -23945,7 +24635,7 @@ msgid ""
"combination of scheme and authority that are included in the request URI."
msgstr ""
-#: doc/classes/HTTPClient.xml:373
+#: doc/classes/HTTPClient.xml:374
msgid ""
"HTTP status code [code]422 Unprocessable Entity[/code] (WebDAV). The server "
"understands the content type of the request entity (hence a 415 Unsupported "
@@ -23954,40 +24644,40 @@ msgid ""
"was unable to process the contained instructions."
msgstr ""
-#: doc/classes/HTTPClient.xml:376
+#: doc/classes/HTTPClient.xml:377
msgid ""
"HTTP status code [code]423 Locked[/code] (WebDAV). The source or destination "
"resource of a method is locked."
msgstr ""
-#: doc/classes/HTTPClient.xml:379
+#: doc/classes/HTTPClient.xml:380
msgid ""
"HTTP status code [code]424 Failed Dependency[/code] (WebDAV). The method "
"could not be performed on the resource because the requested action depended "
"on another action and that action failed."
msgstr ""
-#: doc/classes/HTTPClient.xml:382
+#: doc/classes/HTTPClient.xml:383
msgid ""
"HTTP status code [code]426 Upgrade Required[/code]. The server refuses to "
"perform the request using the current protocol but might be willing to do so "
"after the client upgrades to a different protocol."
msgstr ""
-#: doc/classes/HTTPClient.xml:385
+#: doc/classes/HTTPClient.xml:386
msgid ""
"HTTP status code [code]428 Precondition Required[/code]. The origin server "
"requires the request to be conditional."
msgstr ""
-#: doc/classes/HTTPClient.xml:388
+#: doc/classes/HTTPClient.xml:389
msgid ""
"HTTP status code [code]429 Too Many Requests[/code]. The user has sent too "
"many requests in a given amount of time (see \"rate limiting\"). Back off "
"and increase time between requests or try again later."
msgstr ""
-#: doc/classes/HTTPClient.xml:391
+#: doc/classes/HTTPClient.xml:392
msgid ""
"HTTP status code [code]431 Request Header Fields Too Large[/code]. The "
"server is unwilling to process the request because its header fields are too "
@@ -23995,27 +24685,27 @@ msgid ""
"header fields."
msgstr ""
-#: doc/classes/HTTPClient.xml:394
+#: doc/classes/HTTPClient.xml:395
msgid ""
"HTTP status code [code]451 Response Unavailable For Legal Reasons[/code]. "
"The server is denying access to the resource as a consequence of a legal "
"demand."
msgstr ""
-#: doc/classes/HTTPClient.xml:397
+#: doc/classes/HTTPClient.xml:398
msgid ""
"HTTP status code [code]500 Internal Server Error[/code]. The server "
"encountered an unexpected condition that prevented it from fulfilling the "
"request."
msgstr ""
-#: doc/classes/HTTPClient.xml:400
+#: doc/classes/HTTPClient.xml:401
msgid ""
"HTTP status code [code]501 Not Implemented[/code]. The server does not "
"support the functionality required to fulfill the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:403
+#: doc/classes/HTTPClient.xml:404
msgid ""
"HTTP status code [code]502 Bad Gateway[/code]. The server, while acting as a "
"gateway or proxy, received an invalid response from an inbound server it "
@@ -24023,7 +24713,7 @@ msgid ""
"balancers or proxies."
msgstr ""
-#: doc/classes/HTTPClient.xml:406
+#: doc/classes/HTTPClient.xml:407
msgid ""
"HTTP status code [code]503 Service Unavailable[/code]. The server is "
"currently unable to handle the request due to a temporary overload or "
@@ -24031,7 +24721,7 @@ msgid ""
"again later."
msgstr ""
-#: doc/classes/HTTPClient.xml:409
+#: doc/classes/HTTPClient.xml:410
msgid ""
"HTTP status code [code]504 Gateway Timeout[/code]. The server, while acting "
"as a gateway or proxy, did not receive a timely response from an upstream "
@@ -24039,14 +24729,14 @@ msgid ""
"returned by load balancers or proxies."
msgstr ""
-#: doc/classes/HTTPClient.xml:412
+#: doc/classes/HTTPClient.xml:413
msgid ""
"HTTP status code [code]505 HTTP Version Not Supported[/code]. The server "
"does not support, or refuses to support, the major version of HTTP that was "
"used in the request message."
msgstr ""
-#: doc/classes/HTTPClient.xml:415
+#: doc/classes/HTTPClient.xml:416
msgid ""
"HTTP status code [code]506 Variant Also Negotiates[/code]. The server has an "
"internal configuration error: the chosen variant resource is configured to "
@@ -24054,14 +24744,14 @@ msgid ""
"proper end point in the negotiation process."
msgstr ""
-#: doc/classes/HTTPClient.xml:418
+#: doc/classes/HTTPClient.xml:419
msgid ""
"HTTP status code [code]507 Insufficient Storage[/code]. The method could not "
"be performed on the resource because the server is unable to store the "
"representation needed to successfully complete the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:421
+#: doc/classes/HTTPClient.xml:422
msgid ""
"HTTP status code [code]508 Loop Detected[/code]. The server terminated an "
"operation because it encountered an infinite loop while processing a request "
@@ -24069,14 +24759,14 @@ msgid ""
"failed."
msgstr ""
-#: doc/classes/HTTPClient.xml:424
+#: doc/classes/HTTPClient.xml:425
msgid ""
"HTTP status code [code]510 Not Extended[/code]. The policy for accessing the "
"resource has not been met in the request. The server should send back all "
"the information necessary for the client to issue an extended request."
msgstr ""
-#: doc/classes/HTTPClient.xml:427
+#: doc/classes/HTTPClient.xml:428
msgid ""
"HTTP status code [code]511 Network Authentication Required[/code]. The "
"client needs to authenticate to gain network access."
@@ -24102,12 +24792,21 @@ msgid ""
" http_request.connect(\"request_completed\", self, "
"\"_http_request_completed\")\n"
"\n"
-" # Perform the HTTP request. The URL below returns some JSON as of "
-"writing.\n"
+" # Perform a GET request. The URL below returns JSON as of writing.\n"
" var error = http_request.request(\"https://httpbin.org/get\")\n"
" if error != OK:\n"
" push_error(\"An error occurred in the HTTP request.\")\n"
"\n"
+" # Perform a POST request. The URL below returns JSON as of writing.\n"
+" # Note: Don't make simultaneous requests using a single HTTPRequest "
+"node.\n"
+" # The snippet below is provided for reference only.\n"
+" var body = {\"name\": \"Godette\"}\n"
+" var error = http_request.request(\"https://httpbin.org/post\", [], true, "
+"HTTPClient.METHOD_POST, body)\n"
+" if error != OK:\n"
+" push_error(\"An error occurred in the HTTP request.\")\n"
+"\n"
"\n"
"# Called when the HTTP request is completed.\n"
"func _http_request_completed(result, response_code, headers, body):\n"
@@ -24147,20 +24846,26 @@ msgid ""
" var texture_rect = TextureRect.new()\n"
" add_child(texture_rect)\n"
" texture_rect.texture = texture\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] When performing HTTP requests from a project exported to HTML5, "
+"keep in mind the remote server may not allow requests from foreign origins "
+"due to [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/"
+"url]. If you host the server in question, you should modify its backend to "
+"allow requests from foreign origins by adding the [code]Access-Control-Allow-"
+"Origin: *[/code] HTTP header."
msgstr ""
-#: doc/classes/HTTPRequest.xml:61
+#: doc/classes/HTTPRequest.xml:70
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/"
"http_request_class.html"
msgstr ""
-#: doc/classes/HTTPRequest.xml:69
+#: doc/classes/HTTPRequest.xml:78
msgid "Cancels the current request."
msgstr ""
-#: doc/classes/HTTPRequest.xml:76
+#: doc/classes/HTTPRequest.xml:85
msgid ""
"Returns the response body length.\n"
"[b]Note:[/b] Some Web servers may not send a body length. In this case, the "
@@ -24168,17 +24873,17 @@ msgid ""
"the body length will also be [code]-1[/code]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:84
+#: doc/classes/HTTPRequest.xml:93
msgid "Returns the amount of bytes this HTTPRequest downloaded."
msgstr ""
-#: doc/classes/HTTPRequest.xml:91
+#: doc/classes/HTTPRequest.xml:100
msgid ""
"Returns the current status of the underlying [HTTPClient]. See [enum "
"HTTPClient.Status]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:108
+#: doc/classes/HTTPRequest.xml:117
msgid ""
"Creates request on the underlying [HTTPClient]. If there is no configuration "
"errors, it tries to connect using [method HTTPClient.connect_to_host] and "
@@ -24191,11 +24896,11 @@ msgid ""
"connect to host."
msgstr ""
-#: doc/classes/HTTPRequest.xml:115
+#: doc/classes/HTTPRequest.xml:124
msgid "Maximum allowed size for response bodies."
msgstr ""
-#: doc/classes/HTTPRequest.xml:118
+#: doc/classes/HTTPRequest.xml:127
msgid ""
"The size of the buffer used and maximum bytes to read per iteration. See "
"[member HTTPClient.read_chunk_size].\n"
@@ -24203,63 +24908,63 @@ msgid ""
"files to achieve better speeds at the cost of memory."
msgstr ""
-#: doc/classes/HTTPRequest.xml:122
+#: doc/classes/HTTPRequest.xml:131
msgid "The file to download into. Will output any received file into it."
msgstr ""
-#: doc/classes/HTTPRequest.xml:125
+#: doc/classes/HTTPRequest.xml:134
msgid "Maximum number of allowed redirects."
msgstr ""
-#: doc/classes/HTTPRequest.xml:130
+#: doc/classes/HTTPRequest.xml:139
msgid "If [code]true[/code], multithreading is used to improve performance."
msgstr ""
-#: doc/classes/HTTPRequest.xml:144
+#: doc/classes/HTTPRequest.xml:153
msgid "Emitted when a request is completed."
msgstr ""
-#: doc/classes/HTTPRequest.xml:150
+#: doc/classes/HTTPRequest.xml:159
msgid "Request successful."
msgstr ""
-#: doc/classes/HTTPRequest.xml:155
+#: doc/classes/HTTPRequest.xml:164
msgid "Request failed while connecting."
msgstr ""
-#: doc/classes/HTTPRequest.xml:158
+#: doc/classes/HTTPRequest.xml:167
msgid "Request failed while resolving."
msgstr ""
-#: doc/classes/HTTPRequest.xml:161
+#: doc/classes/HTTPRequest.xml:170
msgid "Request failed due to connection (read/write) error."
msgstr ""
-#: doc/classes/HTTPRequest.xml:164
+#: doc/classes/HTTPRequest.xml:173
msgid "Request failed on SSL handshake."
msgstr ""
-#: doc/classes/HTTPRequest.xml:167
+#: doc/classes/HTTPRequest.xml:176
msgid "Request does not have a response (yet)."
msgstr ""
-#: doc/classes/HTTPRequest.xml:170
+#: doc/classes/HTTPRequest.xml:179
msgid "Request exceeded its maximum size limit, see [member body_size_limit]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:173
+#: doc/classes/HTTPRequest.xml:182
msgid "Request failed (currently unused)."
msgstr ""
-#: doc/classes/HTTPRequest.xml:176
+#: doc/classes/HTTPRequest.xml:185
msgid "HTTPRequest couldn't open the download file."
msgstr ""
-#: doc/classes/HTTPRequest.xml:179
+#: doc/classes/HTTPRequest.xml:188
msgid "HTTPRequest couldn't write to the download file."
msgstr ""
-#: doc/classes/HTTPRequest.xml:182
+#: doc/classes/HTTPRequest.xml:191
msgid "Request reached its maximum redirect limit, see [member max_redirects]."
msgstr ""
@@ -24483,42 +25188,46 @@ msgid "Loads an image from the binary contents of a PNG file."
msgstr ""
#: doc/classes/Image.xml:373
+msgid "Loads an image from the binary contents of a TGA file."
+msgstr ""
+
+#: doc/classes/Image.xml:382
msgid "Loads an image from the binary contents of a WebP file."
msgstr ""
-#: doc/classes/Image.xml:380
+#: doc/classes/Image.xml:389
msgid ""
"Converts the image's data to represent coordinates on a 3D plane. This is "
"used when the image represents a normalmap. A normalmap can add lots of "
"detail to a 3D surface without increasing the polygon count."
msgstr ""
-#: doc/classes/Image.xml:387
+#: doc/classes/Image.xml:396
msgid ""
"Multiplies color values with alpha values. Resulting color values for a "
"pixel are [code](color * alpha)/256[/code]."
msgstr ""
-#: doc/classes/Image.xml:400
+#: doc/classes/Image.xml:409
msgid ""
"Resizes the image to the given [code]width[/code] and [code]height[/code]. "
"New pixels are calculated using [code]interpolation[/code]. See "
"[code]interpolation[/code] constants."
msgstr ""
-#: doc/classes/Image.xml:409
+#: doc/classes/Image.xml:418
msgid ""
"Resizes the image to the nearest power of 2 for the width and height. If "
"[code]square[/code] is [code]true[/code] then set width and height to be the "
"same."
msgstr ""
-#: doc/classes/Image.xml:416
+#: doc/classes/Image.xml:425
msgid ""
"Converts a standard RGBE (Red Green Blue Exponent) image to an sRGB image."
msgstr ""
-#: doc/classes/Image.xml:427
+#: doc/classes/Image.xml:436
msgid ""
"Saves the image as an EXR file to [code]path[/code]. If [code]grayscale[/"
"code] is [code]true[/code] and the image has only one channel, it will be "
@@ -24527,11 +25236,11 @@ msgid ""
"TinyEXR module."
msgstr ""
-#: doc/classes/Image.xml:436
+#: doc/classes/Image.xml:445
msgid "Saves the image as a PNG file to [code]path[/code]."
msgstr ""
-#: doc/classes/Image.xml:455
+#: doc/classes/Image.xml:464
msgid ""
"Sets the [Color] of the pixel at [code](x, y)[/code]. Example:\n"
"[codeblock]\n"
@@ -24541,7 +25250,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Image.xml:471
+#: doc/classes/Image.xml:480
msgid ""
"Sets the [Color] of the pixel at [code](dst.x, dst.y)[/code]. Note that the "
"[code]dst[/code] values must be integers. Example:\n"
@@ -24552,51 +25261,51 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Image.xml:483
+#: doc/classes/Image.xml:492
msgid "Shrinks the image by a factor of 2."
msgstr ""
-#: doc/classes/Image.xml:490
+#: doc/classes/Image.xml:499
msgid "Converts the raw data from the sRGB colorspace to a linear scale."
msgstr ""
-#: doc/classes/Image.xml:496
+#: doc/classes/Image.xml:505
msgid ""
"Holds all of the image's color data in a given format. See [enum Format] "
"constants."
msgstr ""
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:510
msgid "The maximal width allowed for [Image] resources."
msgstr ""
-#: doc/classes/Image.xml:504
+#: doc/classes/Image.xml:513
msgid "The maximal height allowed for [Image] resources."
msgstr ""
-#: doc/classes/Image.xml:507
+#: doc/classes/Image.xml:516
msgid "Texture format with a single 8-bit depth representing luminance."
msgstr ""
-#: doc/classes/Image.xml:510
+#: doc/classes/Image.xml:519
msgid ""
"OpenGL texture format with two values, luminance and alpha each stored with "
"8 bits."
msgstr ""
-#: doc/classes/Image.xml:513
+#: doc/classes/Image.xml:522
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
"bitdepth of 8."
msgstr ""
-#: doc/classes/Image.xml:516
+#: doc/classes/Image.xml:525
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
-#: doc/classes/Image.xml:519
+#: doc/classes/Image.xml:528
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -24604,7 +25313,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:523
+#: doc/classes/Image.xml:532
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -24612,67 +25321,67 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:536
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
-#: doc/classes/Image.xml:532
+#: doc/classes/Image.xml:541
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
-#: doc/classes/Image.xml:535
+#: doc/classes/Image.xml:544
msgid ""
"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
"each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:538
+#: doc/classes/Image.xml:547
msgid ""
"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
"components, each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:541
+#: doc/classes/Image.xml:550
msgid ""
"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
"components, each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:544
+#: doc/classes/Image.xml:553
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 16-"
"bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:556
msgid ""
"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
"each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:550
+#: doc/classes/Image.xml:559
msgid ""
"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
"components, each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:553
+#: doc/classes/Image.xml:562
msgid ""
"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
"components, each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:556
+#: doc/classes/Image.xml:565
msgid ""
"A special OpenGL texture format where the three color components have 9 bits "
"of precision and all three share a single 5-bit exponent."
msgstr ""
-#: doc/classes/Image.xml:559
+#: doc/classes/Image.xml:568
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format that uses Block Compression 1, and is the smallest variation "
@@ -24682,7 +25391,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:563
+#: doc/classes/Image.xml:572
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format that uses Block Compression 2, and color data is interpreted "
@@ -24692,7 +25401,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:567
+#: doc/classes/Image.xml:576
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format also known as Block Compression 3 or BC3 that contains 64 "
@@ -24703,7 +25412,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:571
+#: doc/classes/Image.xml:580
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -24711,7 +25420,7 @@ msgid ""
"DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:574
+#: doc/classes/Image.xml:583
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -24719,7 +25428,7 @@ msgid ""
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:577
+#: doc/classes/Image.xml:586
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -24728,21 +25437,21 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:581
+#: doc/classes/Image.xml:590
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with signed floating-point "
"RGB components."
msgstr ""
-#: doc/classes/Image.xml:584
+#: doc/classes/Image.xml:593
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned floating-point "
"RGB components."
msgstr ""
-#: doc/classes/Image.xml:587
+#: doc/classes/Image.xml:596
msgid ""
"Texture format used on PowerVR-supported mobile platforms, uses 2-bit color "
"depth with no alpha. More information can be found [url=https://en.wikipedia."
@@ -24751,25 +25460,25 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:600
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:603
msgid ""
"Similar to [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with 4-"
"bit color depth and no alpha."
msgstr ""
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:606
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:609
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -24777,7 +25486,7 @@ msgid ""
"standard. This format cannot store an alpha channel."
msgstr ""
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:612
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24785,7 +25494,7 @@ msgid ""
"unsigned data."
msgstr ""
-#: doc/classes/Image.xml:606
+#: doc/classes/Image.xml:615
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24793,7 +25502,7 @@ msgid ""
"channel of signed data."
msgstr ""
-#: doc/classes/Image.xml:609
+#: doc/classes/Image.xml:618
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24801,7 +25510,7 @@ msgid ""
"of unsigned data."
msgstr ""
-#: doc/classes/Image.xml:612
+#: doc/classes/Image.xml:621
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24809,7 +25518,7 @@ msgid ""
"channels of signed data."
msgstr ""
-#: doc/classes/Image.xml:615
+#: doc/classes/Image.xml:624
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24819,7 +25528,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:619
+#: doc/classes/Image.xml:628
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24829,7 +25538,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:623
+#: doc/classes/Image.xml:632
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24840,31 +25549,31 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:631
+#: doc/classes/Image.xml:640
msgid "Represents the size of the [enum Format] enum."
msgstr ""
-#: doc/classes/Image.xml:634
+#: doc/classes/Image.xml:643
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
-#: doc/classes/Image.xml:637
+#: doc/classes/Image.xml:646
msgid ""
"Performs bilinear interpolation. If the image is resized, it will be blurry. "
"This mode is faster than [constant INTERPOLATE_CUBIC], but it results in "
"lower quality."
msgstr ""
-#: doc/classes/Image.xml:640
+#: doc/classes/Image.xml:649
msgid ""
"Performs cubic interpolation. If the image is resized, it will be blurry. "
"This mode often gives better results compared to [constant "
"INTERPOLATE_BILINEAR], at the cost of being slower."
msgstr ""
-#: doc/classes/Image.xml:643
+#: doc/classes/Image.xml:652
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -24879,55 +25588,55 @@ msgid ""
"a new set will be generated for the resulting image."
msgstr ""
-#: doc/classes/Image.xml:650
+#: doc/classes/Image.xml:659
msgid ""
"Performs Lanczos interpolation. This is the slowest image resizing mode, but "
"it typically gives the best results, especially when downscalng images."
msgstr ""
-#: doc/classes/Image.xml:653
+#: doc/classes/Image.xml:662
msgid "Image does not have alpha."
msgstr ""
-#: doc/classes/Image.xml:656
+#: doc/classes/Image.xml:665
msgid "Image stores alpha in a single bit."
msgstr ""
-#: doc/classes/Image.xml:659
+#: doc/classes/Image.xml:668
msgid "Image uses alpha."
msgstr ""
-#: doc/classes/Image.xml:662
+#: doc/classes/Image.xml:671
msgid "Use S3TC compression."
msgstr ""
-#: doc/classes/Image.xml:665
+#: doc/classes/Image.xml:674
msgid "Use PVRTC2 compression."
msgstr ""
-#: doc/classes/Image.xml:668
+#: doc/classes/Image.xml:677
msgid "Use PVRTC4 compression."
msgstr ""
-#: doc/classes/Image.xml:671
+#: doc/classes/Image.xml:680
msgid "Use ETC compression."
msgstr ""
-#: doc/classes/Image.xml:674
+#: doc/classes/Image.xml:683
msgid "Use ETC2 compression."
msgstr ""
-#: doc/classes/Image.xml:689
+#: doc/classes/Image.xml:698
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
-#: doc/classes/Image.xml:692
+#: doc/classes/Image.xml:701
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
-#: doc/classes/Image.xml:695
+#: doc/classes/Image.xml:704
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -25746,7 +26455,7 @@ msgid "Contains mouse click information. See [method Node._input]."
msgstr ""
#: doc/classes/InputEventMouseButton.xml:10
-#: doc/classes/InputEventMouseMotion.xml:10
+#: doc/classes/InputEventMouseMotion.xml:11
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/inputs/"
"mouse_and_input_coordinates.html"
@@ -25783,29 +26492,36 @@ msgstr ""
#: doc/classes/InputEventMouseMotion.xml:7
msgid ""
"Contains mouse and pen motion information. Supports relative, absolute "
-"positions and speed. See [method Node._input]."
+"positions and speed. See [method Node._input].\n"
+"[b]Note:[/b] By default, this event is only emitted once per frame rendered "
+"at most. If you need more precise input reporting, call [method Input."
+"set_use_accumulated_input] with [code]false[/code] to make events emitted as "
+"often as possible. If you use InputEventMouseMotion to draw lines, consider "
+"implementing [url=https://en.wikipedia.org/wiki/Bresenham"
+"%27s_line_algorithm]Bresenham's line algorithm[/url] as well to avoid "
+"visible gaps in lines if the user is moving the mouse quickly."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:16
+#: doc/classes/InputEventMouseMotion.xml:17
msgid ""
"Represents the pressure the user puts on the pen. Ranges from [code]0.0[/"
"code] to [code]1.0[/code]."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:19
+#: doc/classes/InputEventMouseMotion.xml:20
msgid ""
"The mouse position relative to the previous position (position at the last "
-"frame). \n"
+"frame).\n"
"[b]Note:[/b] Since [InputEventMouseMotion] is only emitted when the mouse "
"moves, the last event won't have a relative position of [code]Vector2(0, 0)[/"
"code] when the user stops moving the mouse."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:23
+#: doc/classes/InputEventMouseMotion.xml:24
msgid "The mouse speed in pixels per second."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:26
+#: doc/classes/InputEventMouseMotion.xml:27
msgid ""
"Represents the angles of tilt of the pen. Positive X-coordinate value "
"indicates a tilt to the right. Positive Y-coordinate value indicates a tilt "
@@ -26695,14 +27411,17 @@ msgstr ""
#: doc/classes/JSON.xml:18
msgid ""
-"Parses a JSON encoded string and returns a [JSONParseResult] containing the "
+"Parses a JSON-encoded string and returns a [JSONParseResult] containing the "
"result."
msgstr ""
#: doc/classes/JSON.xml:31
msgid ""
"Converts a [Variant] var to JSON text and returns the result. Useful for "
-"serializing data to store or send over the network."
+"serializing data to store or send over the network.\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, converting a Variant to JSON text "
+"will convert all numerical values to [float] types."
msgstr ""
#: doc/classes/JSONParseResult.xml:4
@@ -26725,14 +27444,14 @@ msgstr ""
#: doc/classes/JSONParseResult.xml:18
msgid ""
-"The line number where the error occurred if JSON source was not successfully "
-"parsed."
+"The line number where the error occurred if the JSON source was not "
+"successfully parsed."
msgstr ""
#: doc/classes/JSONParseResult.xml:21
msgid ""
-"The error message if JSON source was not successfully parsed. See the [enum "
-"Error] constants."
+"The error message if the JSON source was not successfully parsed. See the "
+"[enum Error] constants."
msgstr ""
#: doc/classes/JSONParseResult.xml:24
@@ -26740,11 +27459,11 @@ msgid ""
"A [Variant] containing the parsed JSON. Use [method @GDScript.typeof] or the "
"[code]is[/code] keyword to check if it is what you expect. For example, if "
"the JSON source starts with curly braces ([code]{}[/code]), a [Dictionary] "
-"will be returned. If the JSON source starts with braces ([code][][/code]), "
+"will be returned. If the JSON source starts with brackets ([code][][/code]), "
"an [Array] will be returned.\n"
"[b]Note:[/b] The JSON specification does not define integer or float types, "
-"but only a number type. Therefore, parsing a JSON text will convert all "
-"numerical values to float types.\n"
+"but only a [i]number[/i] type. Therefore, parsing a JSON text will convert "
+"all numerical values to [float] types.\n"
"[b]Note:[/b] JSON objects do not preserve key order like Godot dictionaries, "
"thus, you should not rely on keys being in a certain order if a dictionary "
"is constructed from JSON. In contrast, JSON arrays retain the order of their "
@@ -26754,13 +27473,13 @@ msgid ""
"if typeof(p.result) == TYPE_ARRAY:\n"
" print(p.result[0]) # Prints \"hello\"\n"
"else:\n"
-" print(\"unexpected results\")\n"
+" push_error(\"Unexpected results.\")\n"
"[/codeblock]"
msgstr ""
#: doc/classes/KinematicBody2D.xml:4
msgid "Kinematic body 2D node."
-msgstr ""
+msgstr "2Dè¿åŠ¨ä½“节点。"
#: doc/classes/KinematicBody2D.xml:7
msgid ""
@@ -26870,7 +27589,7 @@ msgid ""
"simulation will run at an incorrect speed.\n"
"[code]linear_velocity[/code] is the velocity vector in pixels per second. "
"Unlike in [method move_and_collide], you should [i]not[/i] multiply it by "
-"[code]delta[/code] — the physics engine handles applying the velocity. \n"
+"[code]delta[/code] — the physics engine handles applying the velocity.\n"
"[code]up_direction[/code] is the up direction, used to determine what is a "
"wall and what is a floor or a ceiling. If set to the default value of "
"[code]Vector2(0, 0)[/code], everything is considered a wall. This is useful "
@@ -26926,7 +27645,7 @@ msgstr ""
#: doc/classes/KinematicBody3D.xml:4
msgid "Kinematic body 3D node."
-msgstr ""
+msgstr "3Dè¿åŠ¨ä½“节点。"
#: doc/classes/KinematicBody3D.xml:7
msgid ""
@@ -26986,7 +27705,7 @@ msgid ""
"[code]linear_velocity[/code] is the velocity vector (typically meters per "
"second). Unlike in [method move_and_collide], you should [i]not[/i] multiply "
"it by [code]delta[/code] — the physics engine handles applying the "
-"velocity. \n"
+"velocity.\n"
"[code]up_direction[/code] is the up direction, used to determine what is a "
"wall and what is a floor or a ceiling. If set to the default value of "
"[code]Vector3(0, 0, 0)[/code], everything is considered a wall.\n"
@@ -27715,17 +28434,6 @@ msgid ""
"[b]Note:[/b] Hiding a light does [i]not[/i] affect baking."
msgstr ""
-#: doc/classes/Light3D.xml:152
-msgid "Only indirect lighting will be baked (default)."
-msgstr ""
-
-#: doc/classes/Light3D.xml:155
-msgid ""
-"Both direct and indirect light will be baked.\n"
-"[b]Note:[/b] You should hide the light if you don't want it to appear twice "
-"(dynamic and baked)."
-msgstr ""
-
#: doc/classes/LightOccluder2D.xml:4
msgid "Occludes light cast by a Light2D, casting shadows."
msgstr ""
@@ -28004,136 +28712,142 @@ msgstr ""
msgid "Text alignment as defined in the [enum Align] enum."
msgstr ""
-#: doc/classes/LineEdit.xml:120 doc/classes/TextEdit.xml:406
+#: doc/classes/LineEdit.xml:120 doc/classes/TextEdit.xml:358
msgid "If [code]true[/code], the caret (visual cursor) blinks."
msgstr ""
-#: doc/classes/LineEdit.xml:123 doc/classes/TextEdit.xml:409
+#: doc/classes/LineEdit.xml:123 doc/classes/TextEdit.xml:361
msgid "Duration (in seconds) of a caret's blinking cycle."
msgstr ""
-#: doc/classes/LineEdit.xml:126
+#: doc/classes/LineEdit.xml:128
msgid ""
"The cursor's position inside the [LineEdit]. When set, the text may scroll "
"to accommodate it."
msgstr ""
-#: doc/classes/LineEdit.xml:129
+#: doc/classes/LineEdit.xml:131
msgid ""
"If [code]true[/code], the [LineEdit] will show a clear button if [code]text[/"
"code] is not empty, which can be used to clear the text quickly."
msgstr ""
-#: doc/classes/LineEdit.xml:132
+#: doc/classes/LineEdit.xml:134
msgid "If [code]true[/code], the context menu will appear when right-clicked."
msgstr ""
-#: doc/classes/LineEdit.xml:135
+#: doc/classes/LineEdit.xml:137
msgid ""
"If [code]false[/code], existing text cannot be modified and new text cannot "
"be added."
msgstr ""
-#: doc/classes/LineEdit.xml:138
+#: doc/classes/LineEdit.xml:140
msgid ""
"If [code]true[/code], the [LineEdit] width will increase to stay longer than "
"the [member text]. It will [b]not[/b] compress if the [member text] is "
"shortened."
msgstr ""
-#: doc/classes/LineEdit.xml:142
+#: doc/classes/LineEdit.xml:144
msgid ""
"Maximum amount of characters that can be entered inside the [LineEdit]. If "
"[code]0[/code], there is no limit."
msgstr ""
-#: doc/classes/LineEdit.xml:146
+#: doc/classes/LineEdit.xml:148
msgid ""
"Opacity of the [member placeholder_text]. From [code]0[/code] to [code]1[/"
"code]."
msgstr ""
-#: doc/classes/LineEdit.xml:149
+#: doc/classes/LineEdit.xml:151
msgid ""
"Text shown when the [LineEdit] is empty. It is [b]not[/b] the [LineEdit]'s "
"default value (see [member text])."
msgstr ""
-#: doc/classes/LineEdit.xml:152
+#: doc/classes/LineEdit.xml:154
msgid ""
"Sets the icon that will appear in the right end of the [LineEdit] if there's "
"no [member text], or always, if [member clear_button_enabled] is set to "
"[code]false[/code]."
msgstr ""
-#: doc/classes/LineEdit.xml:155
+#: doc/classes/LineEdit.xml:157
msgid ""
"If [code]true[/code], every character is replaced with the secret character "
"(see [member secret_character])."
msgstr ""
-#: doc/classes/LineEdit.xml:158
+#: doc/classes/LineEdit.xml:160
msgid ""
"The character to use to mask secret input (defaults to \"*\"). Only a single "
"character can be used as the secret character."
msgstr ""
-#: doc/classes/LineEdit.xml:161
+#: doc/classes/LineEdit.xml:163
msgid ""
"If [code]false[/code], it's impossible to select the text using mouse nor "
"keyboard."
msgstr ""
-#: doc/classes/LineEdit.xml:164
+#: doc/classes/LineEdit.xml:166
msgid "If [code]false[/code], using shortcuts will be disabled."
msgstr ""
-#: doc/classes/LineEdit.xml:167
+#: doc/classes/LineEdit.xml:169
msgid ""
"String value of the [LineEdit].\n"
"[b]Note:[/b] Changing text using this property won't emit the [signal "
"text_changed] signal."
msgstr ""
-#: doc/classes/LineEdit.xml:174
+#: doc/classes/LineEdit.xml:173 doc/classes/TextEdit.xml:434
+msgid ""
+"If [code]true[/code], the native virtual keyboard is shown when focused on "
+"platforms that support it."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:179
msgid ""
"Emitted when trying to append text that would overflow the [member "
"max_length]."
msgstr ""
-#: doc/classes/LineEdit.xml:181 doc/classes/TextEdit.xml:525
+#: doc/classes/LineEdit.xml:186 doc/classes/TextEdit.xml:490
msgid "Emitted when the text changes."
msgstr ""
-#: doc/classes/LineEdit.xml:188
+#: doc/classes/LineEdit.xml:193
msgid "Emitted when the user presses [constant KEY_ENTER] on the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:194
+#: doc/classes/LineEdit.xml:199
msgid "Aligns the text on the left-hand side of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:197
+#: doc/classes/LineEdit.xml:202
msgid "Centers the text in the middle of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:200
+#: doc/classes/LineEdit.xml:205
msgid "Aligns the text on the right-hand side of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:203
+#: doc/classes/LineEdit.xml:208
msgid "Stretches whitespaces to fit the [LineEdit]'s width."
msgstr ""
-#: doc/classes/LineEdit.xml:206 doc/classes/TextEdit.xml:540
+#: doc/classes/LineEdit.xml:211 doc/classes/TextEdit.xml:505
msgid "Cuts (copies and clears) the selected text."
msgstr ""
-#: doc/classes/LineEdit.xml:209 doc/classes/TextEdit.xml:543
+#: doc/classes/LineEdit.xml:214 doc/classes/TextEdit.xml:508
msgid "Copies the selected text."
msgstr ""
-#: doc/classes/LineEdit.xml:212
+#: doc/classes/LineEdit.xml:217
msgid ""
"Pastes the clipboard text over the selected text (or at the cursor's "
"position).\n"
@@ -28141,80 +28855,80 @@ msgid ""
"clipboard via [method String.strip_escapes]."
msgstr ""
-#: doc/classes/LineEdit.xml:216
+#: doc/classes/LineEdit.xml:221
msgid "Erases the whole [LineEdit] text."
msgstr ""
-#: doc/classes/LineEdit.xml:219
+#: doc/classes/LineEdit.xml:224
msgid "Selects the whole [LineEdit] text."
msgstr ""
-#: doc/classes/LineEdit.xml:222 doc/classes/TextEdit.xml:555
+#: doc/classes/LineEdit.xml:227 doc/classes/TextEdit.xml:520
msgid "Undoes the previous action."
msgstr ""
-#: doc/classes/LineEdit.xml:225
+#: doc/classes/LineEdit.xml:230
msgid "Reverse the last undo action."
msgstr ""
-#: doc/classes/LineEdit.xml:228 doc/classes/TextEdit.xml:561
+#: doc/classes/LineEdit.xml:233 doc/classes/TextEdit.xml:526
msgid "Represents the size of the [enum MenuItems] enum."
msgstr ""
-#: doc/classes/LineEdit.xml:233
+#: doc/classes/LineEdit.xml:238
msgid "Texture for the clear button. See [member clear_button_enabled]."
msgstr ""
-#: doc/classes/LineEdit.xml:236
+#: doc/classes/LineEdit.xml:241
msgid "Color used as default tint for the clear button."
msgstr ""
-#: doc/classes/LineEdit.xml:239
+#: doc/classes/LineEdit.xml:244
msgid "Color used for the clear button when it's pressed."
msgstr ""
-#: doc/classes/LineEdit.xml:242
+#: doc/classes/LineEdit.xml:247
msgid "Color of the [LineEdit]'s visual cursor (caret)."
msgstr ""
-#: doc/classes/LineEdit.xml:245
+#: doc/classes/LineEdit.xml:250
msgid "Background used when [LineEdit] has GUI focus."
msgstr ""
-#: doc/classes/LineEdit.xml:248
+#: doc/classes/LineEdit.xml:253
msgid "Font used for the text."
msgstr ""
-#: doc/classes/LineEdit.xml:251
+#: doc/classes/LineEdit.xml:256
msgid "Default font color."
msgstr ""
-#: doc/classes/LineEdit.xml:254
+#: doc/classes/LineEdit.xml:259
msgid "Font color for selected text (inside the selection rectangle)."
msgstr ""
-#: doc/classes/LineEdit.xml:257
+#: doc/classes/LineEdit.xml:262
msgid "Font color when editing is disabled."
msgstr ""
-#: doc/classes/LineEdit.xml:260
+#: doc/classes/LineEdit.xml:265
msgid ""
"Minimum horizontal space for the text (not counting the clear button and "
"content margins). This value is measured in count of space characters (i.e. "
"this amount of space characters can be displayed without scrolling)."
msgstr ""
-#: doc/classes/LineEdit.xml:263
+#: doc/classes/LineEdit.xml:268
msgid "Default background for the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:266
+#: doc/classes/LineEdit.xml:271
msgid ""
"Background used when [LineEdit] is in read-only mode ([member editable] is "
"set to [code]false[/code])."
msgstr ""
-#: doc/classes/LineEdit.xml:269
+#: doc/classes/LineEdit.xml:274
msgid "Color of the selection rectangle."
msgstr ""
@@ -28432,14 +29146,14 @@ msgstr ""
msgid "Emitted when a user responds to a permission request."
msgstr ""
-#: doc/classes/MainLoop.xml:127 doc/classes/Node.xml:948
+#: doc/classes/MainLoop.xml:127 doc/classes/Node.xml:946
msgid ""
"Notification received from the OS when the application is exceeding its "
"allocated memory.\n"
"Specific to the iOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:131 doc/classes/Node.xml:952
+#: doc/classes/MainLoop.xml:131 doc/classes/Node.xml:950
msgid ""
"Notification received when translations may have changed. Can be triggered "
"by the user changing the locale. Can be used to respond to language changes, "
@@ -28447,39 +29161,55 @@ msgid ""
"the built-in translation support, like [method Object.tr]."
msgstr ""
-#: doc/classes/MainLoop.xml:134 doc/classes/Node.xml:955
+#: doc/classes/MainLoop.xml:134 doc/classes/Node.xml:953
msgid ""
"Notification received from the OS when a request for \"About\" information "
"is sent.\n"
"Specific to the macOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:138 doc/classes/Node.xml:959
+#: doc/classes/MainLoop.xml:138 doc/classes/Node.xml:957
msgid ""
"Notification received from Godot's crash handler when the engine is about to "
"crash.\n"
"Implemented on desktop platforms if the crash handler is enabled."
msgstr ""
-#: doc/classes/MainLoop.xml:142 doc/classes/Node.xml:963
+#: doc/classes/MainLoop.xml:142 doc/classes/Node.xml:961
msgid ""
"Notification received from the OS when an update of the Input Method Engine "
"occurs (e.g. change of IME cursor position or composition string).\n"
"Specific to the macOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:146 doc/classes/Node.xml:967
+#: doc/classes/MainLoop.xml:146 doc/classes/Node.xml:965
msgid ""
-"Notification received from the OS when the app is resumed.\n"
+"Notification received from the OS when the application is resumed.\n"
"Specific to the Android platform."
msgstr ""
-#: doc/classes/MainLoop.xml:150 doc/classes/Node.xml:971
+#: doc/classes/MainLoop.xml:150 doc/classes/Node.xml:969
msgid ""
-"Notification received from the OS when the app is paused.\n"
+"Notification received from the OS when the application is paused.\n"
"Specific to the Android platform."
msgstr ""
+#: doc/classes/MainLoop.xml:154 doc/classes/Node.xml:973
+msgid ""
+"Notification received from the OS when the application is focused, i.e. when "
+"changing the focus from the OS desktop or a thirdparty application to any "
+"open window of the Godot instance.\n"
+"Implemented on desktop platforms."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:158 doc/classes/Node.xml:977
+msgid ""
+"Notification received from the OS when the application is defocused, i.e. "
+"when changing the focus from any open window of the Godot instance to the OS "
+"desktop or a thirdparty application.\n"
+"Implemented on desktop platforms."
+msgstr ""
+
#: doc/classes/MarginContainer.xml:4
msgid "Simple margin container."
msgstr ""
@@ -28787,11 +29517,11 @@ msgstr ""
msgid "Render array as triangle strips."
msgstr ""
-#: doc/classes/Mesh.xml:126 doc/classes/RenderingServer.xml:3189
+#: doc/classes/Mesh.xml:126 doc/classes/RenderingServer.xml:3185
msgid "Blend shapes are normalized."
msgstr ""
-#: doc/classes/Mesh.xml:129 doc/classes/RenderingServer.xml:3192
+#: doc/classes/Mesh.xml:129 doc/classes/RenderingServer.xml:3188
msgid "Blend shapes are relative to base weight."
msgstr ""
@@ -28833,37 +29563,37 @@ msgstr ""
msgid "Mesh array uses indices."
msgstr ""
-#: doc/classes/Mesh.xml:159 doc/classes/RenderingServer.xml:3145
+#: doc/classes/Mesh.xml:159 doc/classes/RenderingServer.xml:3141
msgid "Flag used to mark a compressed (half float) normal array."
msgstr ""
-#: doc/classes/Mesh.xml:162 doc/classes/RenderingServer.xml:3148
+#: doc/classes/Mesh.xml:162 doc/classes/RenderingServer.xml:3144
msgid "Flag used to mark a compressed (half float) tangent array."
msgstr ""
-#: doc/classes/Mesh.xml:165 doc/classes/RenderingServer.xml:3151
+#: doc/classes/Mesh.xml:165 doc/classes/RenderingServer.xml:3147
msgid "Flag used to mark a compressed (half float) color array."
msgstr ""
-#: doc/classes/Mesh.xml:168 doc/classes/RenderingServer.xml:3154
+#: doc/classes/Mesh.xml:168 doc/classes/RenderingServer.xml:3150
msgid "Flag used to mark a compressed (half float) UV coordinates array."
msgstr ""
-#: doc/classes/Mesh.xml:171 doc/classes/RenderingServer.xml:3157
+#: doc/classes/Mesh.xml:171 doc/classes/RenderingServer.xml:3153
msgid ""
"Flag used to mark a compressed (half float) UV coordinates array for the "
"second UV coordinates."
msgstr ""
-#: doc/classes/Mesh.xml:174 doc/classes/RenderingServer.xml:3160
+#: doc/classes/Mesh.xml:174 doc/classes/RenderingServer.xml:3156
msgid "Flag used to mark a compressed index array."
msgstr ""
-#: doc/classes/Mesh.xml:177 doc/classes/RenderingServer.xml:3166
+#: doc/classes/Mesh.xml:177 doc/classes/RenderingServer.xml:3162
msgid "Flag used to mark that the array contains 2D vertices."
msgstr ""
-#: doc/classes/Mesh.xml:180 doc/classes/RenderingServer.xml:3163
+#: doc/classes/Mesh.xml:180 doc/classes/RenderingServer.xml:3159
msgid ""
"Used to set flags [constant ARRAY_COMPRESS_NORMAL], [constant "
"ARRAY_COMPRESS_TANGENT], [constant ARRAY_COMPRESS_COLOR], [constant "
@@ -30624,7 +31354,10 @@ msgstr ""
msgid ""
"The number of channels to be used by ENet. Channels are used to separate "
"different kinds of data. In reliable or ordered mode, for example, the "
-"packet delivery order is ensured on a per channel basis."
+"packet delivery order is ensured on a per-channel basis. This is done to "
+"combat latency and reduces ordering restrictions on packets. The delivery "
+"status of a packet in one channel won't stall the delivery of other packets "
+"in another channel."
msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:134
@@ -30651,11 +31384,12 @@ msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:144
msgid ""
"Set the default channel to be used to transfer data. By default, this value "
-"is [code]-1[/code] which means that ENet will only use 2 channels, one for "
-"reliable and one for unreliable packets. Channel [code]0[/code] is reserved, "
-"and cannot be used. Setting this member to any value between [code]0[/code] "
-"and [member channel_count] (excluded) will force ENet to use that channel "
-"for sending data."
+"is [code]-1[/code] which means that ENet will only use 2 channels: one for "
+"reliable packets, and one for unreliable packets. The channel [code]0[/code] "
+"is reserved and cannot be used. Setting this member to any value between "
+"[code]0[/code] and [member channel_count] (excluded) will force ENet to use "
+"that channel for sending data. See [member channel_count] for more "
+"information about ENet channels."
msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:148
@@ -31847,57 +32581,63 @@ msgstr ""
#: doc/classes/Node.xml:930
msgid ""
-"Notification received from the OS when the game window is focused.\n"
-"Implemented on all platforms."
+"Notification received from the OS when the node's parent [Window] is "
+"focused. This may be a change of focus between two windows of the same "
+"engine instance, or from the OS desktop or a third-party application to a "
+"window of the game (in which case [constant "
+"NOTIFICATION_APPLICATION_FOCUS_IN] is also emitted)."
msgstr ""
-#: doc/classes/Node.xml:934
+#: doc/classes/Node.xml:933
msgid ""
-"Notification received from the OS when the game window is unfocused.\n"
-"Implemented on all platforms."
+"Notification received from the OS when the node's parent [Window] is "
+"defocused. This may be a change of focus between two windows of the same "
+"engine instance, or from a window of the game to the OS desktop or a third-"
+"party application (in which case [constant "
+"NOTIFICATION_APPLICATION_FOCUS_OUT] is also emitted)."
msgstr ""
-#: doc/classes/Node.xml:938
+#: doc/classes/Node.xml:936
msgid ""
"Notification received from the OS when a close request is sent (e.g. closing "
"the window with a \"Close\" button or [kbd]Alt + F4[/kbd]).\n"
"Implemented on desktop platforms."
msgstr ""
-#: doc/classes/Node.xml:942
+#: doc/classes/Node.xml:940
msgid ""
"Notification received from the OS when a go back request is sent (e.g. "
"pressing the \"Back\" button on Android).\n"
"Specific to the Android platform."
msgstr ""
-#: doc/classes/Node.xml:975
+#: doc/classes/Node.xml:981
msgid ""
"Inherits pause mode from the node's parent. For the root node, it is "
"equivalent to [constant PAUSE_MODE_STOP]. Default."
msgstr ""
-#: doc/classes/Node.xml:978
+#: doc/classes/Node.xml:984
msgid "Stops processing when the [SceneTree] is paused."
msgstr ""
-#: doc/classes/Node.xml:981
+#: doc/classes/Node.xml:987
msgid "Continue to process regardless of the [SceneTree] pause state."
msgstr ""
-#: doc/classes/Node.xml:984
+#: doc/classes/Node.xml:990
msgid "Duplicate the node's signals."
msgstr ""
-#: doc/classes/Node.xml:987
+#: doc/classes/Node.xml:993
msgid "Duplicate the node's groups."
msgstr ""
-#: doc/classes/Node.xml:990
+#: doc/classes/Node.xml:996
msgid "Duplicate the node's scripts."
msgstr ""
-#: doc/classes/Node.xml:993
+#: doc/classes/Node.xml:999
msgid ""
"Duplicate using instancing.\n"
"An instance stays linked to the original so when the original changes, the "
@@ -32006,7 +32746,7 @@ msgstr ""
#: doc/classes/Node2D.xml:134
msgid "Position, relative to the node's parent."
-msgstr ""
+msgstr "ä½ç½®ï¼Œç›¸å¯¹äºŽçˆ¶èŠ‚点的ä½ç½®ã€‚"
#: doc/classes/Node2D.xml:137
msgid "Rotation in radians, relative to the node's parent."
@@ -32014,7 +32754,7 @@ msgstr ""
#: doc/classes/Node2D.xml:140
msgid "Rotation in degrees, relative to the node's parent."
-msgstr ""
+msgstr "旋转角度,相对于父节点的旋转角度。"
#: doc/classes/Node2D.xml:143
msgid "The node's scale. Unscaled value: [code](1, 1)[/code]."
@@ -32121,12 +32861,6 @@ msgid ""
"changes. [Node3D] will not propagate this by default."
msgstr ""
-#: doc/classes/Node3D.xml:104
-msgid ""
-"Returns whether the node is visible, taking into consideration that its "
-"parents visibility."
-msgstr ""
-
#: doc/classes/Node3D.xml:115
msgid ""
"Rotates itself so that the local -Z axis points towards the [code]target[/"
@@ -32296,7 +33030,10 @@ msgid "Local translation of this node."
msgstr ""
#: doc/classes/Node3D.xml:326
-msgid "If [code]true[/code], this node is drawn."
+msgid ""
+"If [code]true[/code], this node is drawn. The node is only visible if all of "
+"its antecedents are visible as well (in other words, [method "
+"is_visible_in_tree] must return [code]true[/code])."
msgstr ""
#: doc/classes/Node3D.xml:332
@@ -32553,10 +33290,20 @@ msgid ""
"the key exists, even if the value is [code]null[/code].\n"
"Objects also receive notifications. Notifications are a simple way to notify "
"the object about different events, so they can all be handled together. See "
-"[method _notification]."
+"[method _notification].\n"
+"[b]Note:[/b] Unlike references to a [Reference], references to an Object "
+"stored in a variable can become invalid without warning. Therefore, it's "
+"recommended to use [Reference] for data classes instead of [Object]."
+msgstr ""
+
+#: doc/classes/Object.xml:23 doc/classes/Reference.xml:12
+#: doc/classes/Resource.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/getting_started/workflow/"
+"best_practices/node_alternatives.html"
msgstr ""
-#: doc/classes/Object.xml:30
+#: doc/classes/Object.xml:32
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method get].\n"
@@ -32564,7 +33311,7 @@ msgid ""
"code] does not exist."
msgstr ""
-#: doc/classes/Object.xml:38
+#: doc/classes/Object.xml:40
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method get_property_list].\n"
@@ -32576,11 +33323,11 @@ msgid ""
"PropertyUsageFlags])."
msgstr ""
-#: doc/classes/Object.xml:47
+#: doc/classes/Object.xml:49
msgid "Called when the object is initialized."
msgstr ""
-#: doc/classes/Object.xml:56
+#: doc/classes/Object.xml:58
msgid ""
"Called whenever the object receives a notification, which is identified in "
"[code]what[/code] by a constant. The base [Object] has two constants "
@@ -32589,7 +33336,7 @@ msgid ""
"notifications which are also received by this method."
msgstr ""
-#: doc/classes/Object.xml:67
+#: doc/classes/Object.xml:69
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method set].\n"
@@ -32597,7 +33344,7 @@ msgid ""
"exists."
msgstr ""
-#: doc/classes/Object.xml:75
+#: doc/classes/Object.xml:77
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method to_string], and thus the object's representation where it is "
@@ -32606,34 +33353,42 @@ msgid ""
"[code]\"[ClassName:RID]\"[/code]."
msgstr ""
-#: doc/classes/Object.xml:87
+#: doc/classes/Object.xml:89
msgid ""
"Adds a user-defined [code]signal[/code]. Arguments are optional, but can be "
"added as an [Array] of dictionaries, each containing [code]name: String[/"
"code] and [code]type: int[/code] (see [enum Variant.Type]) entries."
msgstr ""
-#: doc/classes/Object.xml:96
+#: doc/classes/Object.xml:98
msgid ""
"Calls the [code]method[/code] on the object and returns the result. This "
"method supports a variable number of arguments, so parameters are passed as "
"a comma separated list. Example:\n"
"[codeblock]\n"
"call(\"set\", \"position\", Vector2(42.0, 0.0))\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] In C#, the method name must be specified as snake_case if it is "
+"defined by a built-in Godot node. This doesn't apply to user-defined methods "
+"where you should use the same convention as in the C# source (typically "
+"PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:108
+#: doc/classes/Object.xml:111
msgid ""
"Calls the [code]method[/code] on the object during idle time. This method "
"supports a variable number of arguments, so parameters are passed as a comma "
"separated list. Example:\n"
"[codeblock]\n"
"call_deferred(\"set\", \"position\", Vector2(42.0, 0.0))\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] In C#, the method name must be specified as snake_case if it is "
+"defined by a built-in Godot node. This doesn't apply to user-defined methods "
+"where you should use the same convention as in the C# source (typically "
+"PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:122
+#: doc/classes/Object.xml:126
msgid ""
"Calls the [code]method[/code] on the object and returns the result. "
"Contrarily to [method call], this method does not support a variable number "
@@ -32643,13 +33398,13 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:132
+#: doc/classes/Object.xml:136
msgid ""
"Returns [code]true[/code] if the object can translate strings. See [method "
"set_message_translation] and [method tr]."
msgstr ""
-#: doc/classes/Object.xml:147
+#: doc/classes/Object.xml:151
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32685,7 +33440,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:174
+#: doc/classes/Object.xml:178
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32696,7 +33451,7 @@ msgid ""
"exists."
msgstr ""
-#: doc/classes/Object.xml:185
+#: doc/classes/Object.xml:189
msgid ""
"Emits the given [code]signal[/code]. The signal must exist, so it should be "
"a built-in signal of this class or one of its parent classes, or a user-"
@@ -32708,24 +33463,28 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:196
+#: doc/classes/Object.xml:200
msgid ""
"Deletes the object from memory. Any pre-existing reference to the freed "
"object will become invalid, e.g. [code]is_instance_valid(object)[/code] will "
"return [code]false[/code]."
msgstr ""
-#: doc/classes/Object.xml:205
+#: doc/classes/Object.xml:209
msgid ""
"Returns the [Variant] value of the given [code]property[/code]. If the "
-"[code]property[/code] doesn't exist, this will return [code]null[/code]."
+"[code]property[/code] doesn't exist, this will return [code]null[/code].\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:212
+#: doc/classes/Object.xml:217
msgid "Returns the object's class as a [String]."
msgstr ""
-#: doc/classes/Object.xml:219
+#: doc/classes/Object.xml:224
msgid ""
"Returns an [Array] of dictionaries with information about signals that are "
"connected to the object.\n"
@@ -32736,7 +33495,7 @@ msgid ""
"connected."
msgstr ""
-#: doc/classes/Object.xml:232
+#: doc/classes/Object.xml:237
msgid ""
"Gets the object's property indexed by the given [NodePath]. The node path "
"should be relative to the current object and can use the colon character "
@@ -32744,26 +33503,26 @@ msgid ""
"\"[/code] or [code]\"material:next_pass:blend_mode\"[/code]."
msgstr ""
-#: doc/classes/Object.xml:239
+#: doc/classes/Object.xml:244
msgid ""
"Returns the object's unique instance ID.\n"
"This ID can be saved in [EncodedObjectAsID], and can be used to retrieve the "
"object instance with [method @GDScript.instance_from_id]."
msgstr ""
-#: doc/classes/Object.xml:249
+#: doc/classes/Object.xml:254
msgid "Returns the object's metadata entry for the given [code]name[/code]."
msgstr ""
-#: doc/classes/Object.xml:256
+#: doc/classes/Object.xml:261
msgid "Returns the object's metadata as a [PackedStringArray]."
msgstr ""
-#: doc/classes/Object.xml:263
+#: doc/classes/Object.xml:268
msgid "Returns the object's methods and their signatures as an [Array]."
msgstr ""
-#: doc/classes/Object.xml:270
+#: doc/classes/Object.xml:275
msgid ""
"Returns the object's property list as an [Array] of dictionaries.\n"
"Each property's [Dictionary] contain at least [code]name: String[/code] and "
@@ -32773,54 +33532,54 @@ msgid ""
"PropertyUsageFlags])."
msgstr ""
-#: doc/classes/Object.xml:278
+#: doc/classes/Object.xml:283
msgid ""
"Returns the object's [Script] instance, or [code]null[/code] if none is "
"assigned."
msgstr ""
-#: doc/classes/Object.xml:287
+#: doc/classes/Object.xml:292
msgid "Returns an [Array] of connections for the given [code]signal[/code]."
msgstr ""
-#: doc/classes/Object.xml:294
+#: doc/classes/Object.xml:299
msgid "Returns the list of signals as an [Array] of dictionaries."
msgstr ""
-#: doc/classes/Object.xml:303
+#: doc/classes/Object.xml:308
msgid ""
"Returns [code]true[/code] if a metadata entry is found with the given "
"[code]name[/code]."
msgstr ""
-#: doc/classes/Object.xml:312
+#: doc/classes/Object.xml:317
msgid ""
"Returns [code]true[/code] if the object contains the given [code]method[/"
"code]."
msgstr ""
-#: doc/classes/Object.xml:321
+#: doc/classes/Object.xml:326
msgid "Returns [code]true[/code] if the given [code]signal[/code] exists."
msgstr ""
-#: doc/classes/Object.xml:330
+#: doc/classes/Object.xml:335
msgid ""
"Returns [code]true[/code] if the given user-defined [code]signal[/code] "
"exists. Only signals added using [method add_user_signal] are taken into "
"account."
msgstr ""
-#: doc/classes/Object.xml:337
+#: doc/classes/Object.xml:342
msgid "Returns [code]true[/code] if signal emission blocking is enabled."
msgstr ""
-#: doc/classes/Object.xml:346
+#: doc/classes/Object.xml:351
msgid ""
"Returns [code]true[/code] if the object inherits from the given [code]class[/"
"code]."
msgstr ""
-#: doc/classes/Object.xml:357
+#: doc/classes/Object.xml:362
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32828,13 +33587,13 @@ msgid ""
"code], [code]target[/code], and [code]method[/code]."
msgstr ""
-#: doc/classes/Object.xml:365
+#: doc/classes/Object.xml:370
msgid ""
"Returns [code]true[/code] if the [method Node.queue_free] method was called "
"for the object."
msgstr ""
-#: doc/classes/Object.xml:376
+#: doc/classes/Object.xml:381
msgid ""
"Send a given notification to the object, which will also trigger a call to "
"the [method _notification] method of all classes that the object inherits "
@@ -32846,34 +33605,42 @@ msgid ""
"and then down to its successive inheriting classes."
msgstr ""
-#: doc/classes/Object.xml:384
+#: doc/classes/Object.xml:389
msgid ""
"Notify the editor that the property list has changed, so that editor plugins "
"can take the new values into account. Does nothing on export builds."
msgstr ""
-#: doc/classes/Object.xml:393
+#: doc/classes/Object.xml:398
msgid "Removes a given entry from the object's metadata."
msgstr ""
-#: doc/classes/Object.xml:404
+#: doc/classes/Object.xml:409
msgid ""
"Assigns a new value to the given property. If the [code]property[/code] does "
-"not exist, nothing will happen."
+"not exist, nothing will happen.\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:413
+#: doc/classes/Object.xml:419
msgid "If set to [code]true[/code], signal emission is blocked."
msgstr ""
-#: doc/classes/Object.xml:424
+#: doc/classes/Object.xml:430
msgid ""
"Assigns a new value to the given property, after the current frame's physics "
"step. This is equivalent to calling [method set] via [method call_deferred], "
-"i.e. [code]call_deferred(\"set\", property, value)[/code]."
+"i.e. [code]call_deferred(\"set\", property, value)[/code].\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:435
+#: doc/classes/Object.xml:442
msgid ""
"Assigns a new value to the property identified by the [NodePath]. The node "
"path should be relative to the current object and can use the colon "
@@ -32885,19 +33652,19 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:449
+#: doc/classes/Object.xml:456
msgid ""
"Defines whether the object can translate strings (with calls to [method "
"tr]). Enabled by default."
msgstr ""
-#: doc/classes/Object.xml:460
+#: doc/classes/Object.xml:467
msgid ""
"Adds or changes a given entry in the object's metadata. Metadata are "
"serialized, and can take any [Variant] value."
msgstr ""
-#: doc/classes/Object.xml:469
+#: doc/classes/Object.xml:476
msgid ""
"Assigns a script to the object. Each object can have a single script "
"assigned to it, which are used to extend its functionality.\n"
@@ -32906,7 +33673,7 @@ msgid ""
"_init] method will be called."
msgstr ""
-#: doc/classes/Object.xml:477
+#: doc/classes/Object.xml:484
msgid ""
"Returns a [String] representing the object. If not overridden, defaults to "
"[code]\"[ClassName:RID]\"[/code].\n"
@@ -32914,7 +33681,7 @@ msgid ""
"representation."
msgstr ""
-#: doc/classes/Object.xml:487
+#: doc/classes/Object.xml:494
msgid ""
"Translates a message using translation catalogs configured in the Project "
"Settings.\n"
@@ -32923,35 +33690,35 @@ msgid ""
"set_message_translation]."
msgstr ""
-#: doc/classes/Object.xml:495
+#: doc/classes/Object.xml:502
msgid "Emitted whenever the object's script is changed."
msgstr ""
-#: doc/classes/Object.xml:501
+#: doc/classes/Object.xml:508
msgid "Called right when the object is initialized. Not available in script."
msgstr ""
-#: doc/classes/Object.xml:504
+#: doc/classes/Object.xml:511
msgid "Called before the object is about to be deleted."
msgstr ""
-#: doc/classes/Object.xml:507
+#: doc/classes/Object.xml:514
msgid ""
"Connects a signal in deferred mode. This way, signal emissions are stored in "
"a queue, then set on idle time."
msgstr ""
-#: doc/classes/Object.xml:510
+#: doc/classes/Object.xml:517
msgid "Persisting connections are saved when the object is serialized to file."
msgstr ""
-#: doc/classes/Object.xml:513
+#: doc/classes/Object.xml:520
msgid "One-shot connections disconnect themselves after emission."
msgstr ""
-#: doc/classes/Object.xml:516
+#: doc/classes/Object.xml:523
msgid ""
-"Connect a signal as reference counted. This means that a given signal can be "
+"Connect a signal as reference-counted. This means that a given signal can be "
"connected several times to the same target, and will only be fully "
"disconnected once no references are left."
msgstr ""
@@ -33416,10 +34183,29 @@ msgid "Returns the keycode of the given string (e.g. \"Escape\")."
msgstr ""
#: doc/classes/OS.xml:115
-msgid "Returns the command line arguments passed to the engine."
+msgid ""
+"Returns the command-line arguments passed to the engine.\n"
+"Command-line arguments can be written in any form, including both [code]--"
+"key value[/code] and [code]--key=value[/code] forms so they can be properly "
+"parsed, as long as custom command-line arguments do not conflict with engine "
+"arguments.\n"
+"You can also incorporate environment variables using the [method "
+"get_environment] method.\n"
+"You can set [code]editor/main_run_args[/code] in the Project Settings to "
+"define command-line arguments to be passed by the editor when running the "
+"project.\n"
+"Here's a minimal example on how to parse command-line arguments into a "
+"dictionary using the [code]--key=value[/code] form for arguments:\n"
+"[codeblock]\n"
+"var arguments = {}\n"
+"for argument in OS.get_cmdline_args():\n"
+" if argument.find(\"=\") > -1:\n"
+" var key_value = argument.split(\"=\")\n"
+" arguments[key_value[0].lstrip(\"--\")] = key_value[1]\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/OS.xml:122
+#: doc/classes/OS.xml:133
msgid ""
"Returns an array of MIDI device names.\n"
"The returned array will be empty if the system MIDI driver has not "
@@ -33427,14 +34213,14 @@ msgid ""
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:133
+#: doc/classes/OS.xml:144
msgid ""
"Returns current date as a dictionary of keys: [code]year[/code], "
"[code]month[/code], [code]day[/code], [code]weekday[/code], [code]dst[/code] "
"(Daylight Savings Time)."
msgstr ""
-#: doc/classes/OS.xml:142
+#: doc/classes/OS.xml:153
msgid ""
"Returns current datetime as a dictionary of keys: [code]year[/code], "
"[code]month[/code], [code]day[/code], [code]weekday[/code], [code]dst[/code] "
@@ -33442,7 +34228,7 @@ msgid ""
"[code]second[/code]."
msgstr ""
-#: doc/classes/OS.xml:151
+#: doc/classes/OS.xml:162
msgid ""
"Gets a dictionary of time values corresponding to the given UNIX epoch time "
"(in seconds).\n"
@@ -33451,22 +34237,22 @@ msgid ""
"the epoch."
msgstr ""
-#: doc/classes/OS.xml:161
+#: doc/classes/OS.xml:172
msgid "Returns an environment variable."
msgstr ""
-#: doc/classes/OS.xml:168
+#: doc/classes/OS.xml:179
msgid "Returns the path to the current engine executable."
msgstr ""
-#: doc/classes/OS.xml:175
+#: doc/classes/OS.xml:186
msgid ""
"With this function you can get the list of dangerous permissions that have "
"been granted to the Android application.\n"
"[b]Note:[/b] This method is implemented on Android."
msgstr ""
-#: doc/classes/OS.xml:185
+#: doc/classes/OS.xml:196
msgid ""
"Returns the given keycode as a string (e.g. Return values: [code]\"Escape\"[/"
"code], [code]\"Shift+Escape\"[/code]).\n"
@@ -33474,18 +34260,18 @@ msgid ""
"get_keycode_with_modifiers]."
msgstr ""
-#: doc/classes/OS.xml:193
+#: doc/classes/OS.xml:204
msgid "Returns the host OS locale."
msgstr ""
-#: doc/classes/OS.xml:200
+#: doc/classes/OS.xml:211
msgid ""
"Returns the model name of the current device.\n"
"[b]Note:[/b] This method is implemented on Android and iOS. Returns "
"[code]\"GenericDevice\"[/code] on unsupported platforms."
msgstr ""
-#: doc/classes/OS.xml:208
+#: doc/classes/OS.xml:219
msgid ""
"Returns the name of the host OS. Possible values are: [code]\"Android\"[/"
"code], [code]\"iOS\"[/code], [code]\"HTML5\"[/code], [code]\"OSX\"[/code], "
@@ -33493,81 +34279,81 @@ msgid ""
"[code]\"X11\"[/code]."
msgstr ""
-#: doc/classes/OS.xml:215
+#: doc/classes/OS.xml:226
msgid ""
"Returns the project's process ID.\n"
"[b]Note:[/b] This method is implemented on Android, iOS, Linux, macOS and "
"Windows."
msgstr ""
-#: doc/classes/OS.xml:223
+#: doc/classes/OS.xml:234
msgid "Returns the number of threads available on the host machine."
msgstr ""
-#: doc/classes/OS.xml:230
+#: doc/classes/OS.xml:241
msgid ""
"Returns the amount of time in milliseconds it took for the boot logo to "
"appear."
msgstr ""
-#: doc/classes/OS.xml:237
+#: doc/classes/OS.xml:248
msgid "Returns the maximum amount of static memory used (only works in debug)."
msgstr ""
-#: doc/classes/OS.xml:244
+#: doc/classes/OS.xml:255
msgid "Returns the amount of static memory being used by the program in bytes."
msgstr ""
-#: doc/classes/OS.xml:253
+#: doc/classes/OS.xml:264
msgid ""
"Returns the actual path to commonly used folders across different platforms. "
"Available locations are specified in [enum SystemDir].\n"
"[b]Note:[/b] This method is implemented on Android, Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:261
+#: doc/classes/OS.xml:272
msgid ""
"Returns the total number of available tablet drivers.\n"
"[b]Note:[/b] This method is implemented on Windows."
msgstr ""
-#: doc/classes/OS.xml:271
+#: doc/classes/OS.xml:282
msgid ""
"Returns the tablet driver name for the given index.\n"
"[b]Note:[/b] This method is implemented on Windows."
msgstr ""
-#: doc/classes/OS.xml:279
+#: doc/classes/OS.xml:290
msgid ""
"Returns the amount of time passed in milliseconds since the engine started."
msgstr ""
-#: doc/classes/OS.xml:286
+#: doc/classes/OS.xml:297
msgid ""
"Returns the amount of time passed in microseconds since the engine started."
msgstr ""
-#: doc/classes/OS.xml:295
+#: doc/classes/OS.xml:306
msgid "Returns current time as a dictionary of keys: hour, minute, second."
msgstr ""
-#: doc/classes/OS.xml:302
+#: doc/classes/OS.xml:313
msgid ""
"Returns the current time zone as a dictionary with the keys: bias and name."
msgstr ""
-#: doc/classes/OS.xml:309
+#: doc/classes/OS.xml:320
msgid ""
"Returns a string that is unique to the device.\n"
"[b]Note:[/b] Returns an empty string on HTML5 and UWP, as this method isn't "
"implemented on those platforms yet."
msgstr ""
-#: doc/classes/OS.xml:317
+#: doc/classes/OS.xml:328
msgid "Returns the current UNIX epoch timestamp."
msgstr ""
-#: doc/classes/OS.xml:326
+#: doc/classes/OS.xml:337
msgid ""
"Gets an epoch time value from a dictionary of time values.\n"
"[code]datetime[/code] must be populated with the following keys: [code]year[/"
@@ -33578,7 +34364,7 @@ msgid ""
"ignored."
msgstr ""
-#: doc/classes/OS.xml:335
+#: doc/classes/OS.xml:346
msgid ""
"Returns the absolute directory path where user data is written ([code]user://"
"[/code]).\n"
@@ -33596,11 +34382,11 @@ msgid ""
"[/code]."
msgstr ""
-#: doc/classes/OS.xml:348
+#: doc/classes/OS.xml:359
msgid "Returns [code]true[/code] if an environment variable exists."
msgstr ""
-#: doc/classes/OS.xml:357
+#: doc/classes/OS.xml:368
msgid ""
"Returns [code]true[/code] if the feature for the given feature tag is "
"supported in the currently running instance, depending on platform, build "
@@ -33611,7 +34397,7 @@ msgid ""
"[b]Note:[/b] Tag names are case-sensitive."
msgstr ""
-#: doc/classes/OS.xml:365
+#: doc/classes/OS.xml:376
msgid ""
"Returns [code]true[/code] if the Godot binary used to run the project is a "
"[i]debug[/i] export template, or when running in the editor.\n"
@@ -33622,26 +34408,26 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/OS.xml:376
+#: doc/classes/OS.xml:387
msgid ""
"Returns [code]true[/code] if the input keycode corresponds to a Unicode "
"character."
msgstr ""
-#: doc/classes/OS.xml:383
+#: doc/classes/OS.xml:394
msgid ""
"Returns [code]true[/code] if the engine was executed with [code]-v[/code] "
"(verbose stdout)."
msgstr ""
-#: doc/classes/OS.xml:390
+#: doc/classes/OS.xml:401
msgid ""
"If [code]true[/code], the [code]user://[/code] file system is persistent, so "
"that its state is the same after a player quits and starts the game again. "
"Relevant to the HTML5 platform, where this persistence may be unavailable."
msgstr ""
-#: doc/classes/OS.xml:399
+#: doc/classes/OS.xml:410
msgid ""
"Kill (terminate) the process identified by the given process ID ([code]pid[/"
"code]), e.g. the one returned by [method execute] in non-blocking mode.\n"
@@ -33651,37 +34437,37 @@ msgid ""
"Windows."
msgstr ""
-#: doc/classes/OS.xml:408
+#: doc/classes/OS.xml:419
msgid ""
"Initialises the singleton for the system MIDI driver.\n"
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:418
+#: doc/classes/OS.xml:429
msgid ""
"Shows all resources in the game. Optionally, the list can be written to a "
"file by specifying a file path in [code]tofile[/code]."
msgstr ""
-#: doc/classes/OS.xml:425
+#: doc/classes/OS.xml:436
msgid "Shows the list of loaded textures sorted by size in memory."
msgstr ""
-#: doc/classes/OS.xml:434
+#: doc/classes/OS.xml:445
msgid "Shows the number of resources loaded by the game of the given types."
msgstr ""
-#: doc/classes/OS.xml:443
+#: doc/classes/OS.xml:454
msgid "Shows all resources currently used by the game."
msgstr ""
-#: doc/classes/OS.xml:452
+#: doc/classes/OS.xml:463
msgid ""
"At the moment this function is only used by [code]AudioDriverOpenSL[/code] "
"to request permission for [code]RECORD_AUDIO[/code] on Android."
msgstr ""
-#: doc/classes/OS.xml:459
+#: doc/classes/OS.xml:470
msgid ""
"With this function you can request dangerous permissions since normal "
"permissions are automatically granted at install time in Android "
@@ -33689,15 +34475,15 @@ msgid ""
"[b]Note:[/b] This method is implemented on Android."
msgstr ""
-#: doc/classes/OS.xml:469
+#: doc/classes/OS.xml:480
msgid "Sets the name of the current thread."
msgstr ""
-#: doc/classes/OS.xml:478
+#: doc/classes/OS.xml:489
msgid "Enables backup saves if [code]enabled[/code] is [code]true[/code]."
msgstr ""
-#: doc/classes/OS.xml:487
+#: doc/classes/OS.xml:498
msgid ""
"Requests the OS to open a resource with the most appropriate program. For "
"example:\n"
@@ -33716,7 +34502,7 @@ msgid ""
"and Windows."
msgstr ""
-#: doc/classes/OS.xml:498
+#: doc/classes/OS.xml:509
msgid ""
"The exit code passed to the OS when the main loop exits. By convention, an "
"exit code of [code]0[/code] indicates success whereas a non-zero exit code "
@@ -33726,137 +34512,137 @@ msgid ""
"with an [code]exit_code[/code] argument passed."
msgstr ""
-#: doc/classes/OS.xml:502
+#: doc/classes/OS.xml:513
msgid ""
"If [code]true[/code], the engine optimizes for low processor usage by only "
"refreshing the screen if needed. Can improve battery consumption on mobile."
msgstr ""
-#: doc/classes/OS.xml:505
+#: doc/classes/OS.xml:516
msgid ""
"The amount of sleeping between frames when the low-processor usage mode is "
"enabled (in microseconds). Higher values will result in lower CPU usage."
msgstr ""
-#: doc/classes/OS.xml:508
-msgid "The current tablet drvier in use."
+#: doc/classes/OS.xml:519
+msgid "The current tablet driver in use."
msgstr ""
-#: doc/classes/OS.xml:513
+#: doc/classes/OS.xml:524
msgid ""
"The GLES2 rendering backend. It uses OpenGL ES 2.0 on mobile devices, OpenGL "
"2.1 on desktop platforms and WebGL 1.0 on the web."
msgstr ""
-#: doc/classes/OS.xml:516
+#: doc/classes/OS.xml:527
msgid "The Vulkan rendering backend."
msgstr ""
-#: doc/classes/OS.xml:519
+#: doc/classes/OS.xml:530
msgid "Sunday."
msgstr ""
-#: doc/classes/OS.xml:522
+#: doc/classes/OS.xml:533
msgid "Monday."
msgstr ""
-#: doc/classes/OS.xml:525
+#: doc/classes/OS.xml:536
msgid "Tuesday."
msgstr ""
-#: doc/classes/OS.xml:528
+#: doc/classes/OS.xml:539
msgid "Wednesday."
msgstr ""
-#: doc/classes/OS.xml:531
+#: doc/classes/OS.xml:542
msgid "Thursday."
msgstr ""
-#: doc/classes/OS.xml:534
+#: doc/classes/OS.xml:545
msgid "Friday."
msgstr ""
-#: doc/classes/OS.xml:537
+#: doc/classes/OS.xml:548
msgid "Saturday."
msgstr ""
-#: doc/classes/OS.xml:540
+#: doc/classes/OS.xml:551
msgid "January."
msgstr ""
-#: doc/classes/OS.xml:543
+#: doc/classes/OS.xml:554
msgid "February."
msgstr ""
-#: doc/classes/OS.xml:546
+#: doc/classes/OS.xml:557
msgid "March."
msgstr ""
-#: doc/classes/OS.xml:549
+#: doc/classes/OS.xml:560
msgid "April."
msgstr ""
-#: doc/classes/OS.xml:552
+#: doc/classes/OS.xml:563
msgid "May."
msgstr ""
-#: doc/classes/OS.xml:555
+#: doc/classes/OS.xml:566
msgid "June."
msgstr ""
-#: doc/classes/OS.xml:558
+#: doc/classes/OS.xml:569
msgid "July."
msgstr ""
-#: doc/classes/OS.xml:561
+#: doc/classes/OS.xml:572
msgid "August."
msgstr ""
-#: doc/classes/OS.xml:564
+#: doc/classes/OS.xml:575
msgid "September."
msgstr ""
-#: doc/classes/OS.xml:567
+#: doc/classes/OS.xml:578
msgid "October."
msgstr ""
-#: doc/classes/OS.xml:570
+#: doc/classes/OS.xml:581
msgid "November."
msgstr ""
-#: doc/classes/OS.xml:573
+#: doc/classes/OS.xml:584
msgid "December."
msgstr ""
-#: doc/classes/OS.xml:576
+#: doc/classes/OS.xml:587
msgid "Desktop directory path."
msgstr ""
-#: doc/classes/OS.xml:579
+#: doc/classes/OS.xml:590
msgid "DCIM (Digital Camera Images) directory path."
msgstr ""
-#: doc/classes/OS.xml:582
+#: doc/classes/OS.xml:593
msgid "Documents directory path."
msgstr ""
-#: doc/classes/OS.xml:585
+#: doc/classes/OS.xml:596
msgid "Downloads directory path."
msgstr ""
-#: doc/classes/OS.xml:588
+#: doc/classes/OS.xml:599
msgid "Movies directory path."
msgstr ""
-#: doc/classes/OS.xml:591
+#: doc/classes/OS.xml:602
msgid "Music directory path."
msgstr ""
-#: doc/classes/OS.xml:594
+#: doc/classes/OS.xml:605
msgid "Pictures directory path."
msgstr ""
-#: doc/classes/OS.xml:597
+#: doc/classes/OS.xml:608
msgid "Ringtones directory path."
msgstr ""
@@ -33911,7 +34697,16 @@ msgid ""
"should always be preferred."
msgstr ""
-#: doc/classes/PackedByteArray.xml:85
+#: doc/classes/PackedByteArray.xml:87 doc/classes/PackedColorArray.xml:53
+#: doc/classes/PackedFloat32Array.xml:54 doc/classes/PackedFloat64Array.xml:54
+#: doc/classes/PackedInt32Array.xml:54 doc/classes/PackedInt64Array.xml:54
+#: doc/classes/PackedStringArray.xml:53 doc/classes/PackedVector2Array.xml:53
+#: doc/classes/PackedVector3Array.xml:53
+#, fuzzy
+msgid "Returns [code]true[/code] if the array contains [code]value[/code]."
+msgstr "如果[code]s[/code] 为0或者很接近0则返回[code]true[/code]。"
+
+#: doc/classes/PackedByteArray.xml:94
msgid ""
"Returns a hexadecimal representation of this array as a [String].\n"
"[codeblock]\n"
@@ -33920,39 +34715,48 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/PackedByteArray.xml:100 doc/classes/PackedColorArray.xml:55
-#: doc/classes/PackedFloat32Array.xml:56 doc/classes/PackedFloat64Array.xml:56
-#: doc/classes/PackedStringArray.xml:55 doc/classes/PackedVector2Array.xml:55
-#: doc/classes/PackedVector3Array.xml:55
+#: doc/classes/PackedByteArray.xml:109 doc/classes/PackedColorArray.xml:64
+#: doc/classes/PackedFloat32Array.xml:65 doc/classes/PackedFloat64Array.xml:65
+#: doc/classes/PackedStringArray.xml:64 doc/classes/PackedVector2Array.xml:64
+#: doc/classes/PackedVector3Array.xml:64
msgid ""
"Inserts a new element at a given position in the array. The position must be "
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PackedByteArray.xml:134 doc/classes/PackedColorArray.xml:89
-#: doc/classes/PackedFloat32Array.xml:90 doc/classes/PackedFloat64Array.xml:90
-#: doc/classes/PackedInt32Array.xml:90 doc/classes/PackedInt64Array.xml:90
-#: doc/classes/PackedStringArray.xml:89 doc/classes/PackedVector2Array.xml:89
-#: doc/classes/PackedVector3Array.xml:89
+#: doc/classes/PackedByteArray.xml:143 doc/classes/PackedColorArray.xml:98
+#: doc/classes/PackedFloat32Array.xml:99 doc/classes/PackedFloat64Array.xml:99
+#: doc/classes/PackedInt32Array.xml:99 doc/classes/PackedInt64Array.xml:99
+#: doc/classes/PackedStringArray.xml:98 doc/classes/PackedVector2Array.xml:98
+#: doc/classes/PackedVector3Array.xml:98
msgid ""
"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."
msgstr ""
-#: doc/classes/PackedByteArray.xml:145
+#: doc/classes/PackedByteArray.xml:154
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PackedByteArray.xml:152 doc/classes/PackedColorArray.xml:107
-#: doc/classes/PackedFloat32Array.xml:108
-#: doc/classes/PackedFloat64Array.xml:108 doc/classes/PackedStringArray.xml:107
-#: doc/classes/PackedVector2Array.xml:107
-#: doc/classes/PackedVector3Array.xml:107
+#: doc/classes/PackedByteArray.xml:161 doc/classes/PackedColorArray.xml:116
+#: doc/classes/PackedFloat32Array.xml:117
+#: doc/classes/PackedFloat64Array.xml:117 doc/classes/PackedStringArray.xml:116
+#: doc/classes/PackedVector2Array.xml:116
+#: doc/classes/PackedVector3Array.xml:116
msgid "Returns the size of the array."
msgstr ""
-#: doc/classes/PackedByteArray.xml:163
+#: doc/classes/PackedByteArray.xml:168 doc/classes/PackedColorArray.xml:123
+#: doc/classes/PackedFloat32Array.xml:124
+#: doc/classes/PackedFloat64Array.xml:124 doc/classes/PackedInt32Array.xml:124
+#: doc/classes/PackedInt64Array.xml:124 doc/classes/PackedStringArray.xml:123
+#: doc/classes/PackedVector2Array.xml:123
+#: doc/classes/PackedVector3Array.xml:123
+msgid "Sorts the elements of the array in ascending order."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:179
msgid ""
"Returns the slice of the [PackedByteArray] between indices (inclusive) as a "
"new [PackedByteArray]. Any negative index is considered to be from the end "
@@ -33980,12 +34784,12 @@ msgstr ""
msgid "Appends a [PackedColorArray] at the end of this array."
msgstr ""
-#: doc/classes/PackedColorArray.xml:71 doc/classes/PackedInt32Array.xml:72
-#: doc/classes/PackedInt64Array.xml:72
+#: doc/classes/PackedColorArray.xml:80 doc/classes/PackedInt32Array.xml:81
+#: doc/classes/PackedInt64Array.xml:81
msgid "Appends a value to the array."
msgstr ""
-#: doc/classes/PackedColorArray.xml:100
+#: doc/classes/PackedColorArray.xml:109
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -34015,8 +34819,8 @@ msgstr ""
msgid "Appends a [PackedFloat32Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedFloat32Array.xml:101
-#: doc/classes/PackedFloat64Array.xml:101
+#: doc/classes/PackedFloat32Array.xml:110
+#: doc/classes/PackedFloat64Array.xml:110
msgid "Changes the float at the given index."
msgstr ""
@@ -34069,17 +34873,17 @@ msgstr ""
msgid "Appends a [PackedInt32Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:56 doc/classes/PackedInt64Array.xml:56
+#: doc/classes/PackedInt32Array.xml:65 doc/classes/PackedInt64Array.xml:65
msgid ""
"Inserts a new integer at a given position in the array. The position must be "
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:101 doc/classes/PackedInt64Array.xml:101
+#: doc/classes/PackedInt32Array.xml:110 doc/classes/PackedInt64Array.xml:110
msgid "Changes the integer at the given index."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:108 doc/classes/PackedInt64Array.xml:108
+#: doc/classes/PackedInt32Array.xml:117 doc/classes/PackedInt64Array.xml:117
msgid "Returns the array size."
msgstr ""
@@ -34120,6 +34924,14 @@ msgid ""
"Can be used to save a node to a file. When saving, the node as well as all "
"the node it owns get saved (see [code]owner[/code] property on [Node]).\n"
"[b]Note:[/b] The node doesn't need to own itself.\n"
+"[b]Example of loading a saved scene:[/b]\n"
+"[codeblock]\n"
+"# Use `load()` instead of `preload()` if the path isn't known at compile-"
+"time.\n"
+"var scene = preload(\"res://scene.tscn\").instance()\n"
+"# Add the node as a child of the node the script is attached to.\n"
+"add_child(scene)\n"
+"[/codeblock]\n"
"[b]Example of saving a node with different owners:[/b] The following example "
"creates 3 objects: [code]Node2D[/code] ([code]node[/code]), "
"[code]RigidBody2D[/code] ([code]rigid[/code]) and [code]CollisionObject2D[/"
@@ -34151,29 +34963,29 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/PackedScene.xml:40
+#: doc/classes/PackedScene.xml:47
msgid "Returns [code]true[/code] if the scene file has nodes."
msgstr ""
-#: doc/classes/PackedScene.xml:47
+#: doc/classes/PackedScene.xml:54
msgid ""
"Returns the [code]SceneState[/code] representing the scene file contents."
msgstr ""
-#: doc/classes/PackedScene.xml:56
+#: doc/classes/PackedScene.xml:63
msgid ""
"Instantiates the scene's node hierarchy. Triggers child scene "
"instantiation(s). Triggers a [constant Node.NOTIFICATION_INSTANCED] "
"notification on the root node."
msgstr ""
-#: doc/classes/PackedScene.xml:65
+#: doc/classes/PackedScene.xml:72
msgid ""
"Pack will ignore any sub-nodes not owned by given node. See [member Node."
"owner]."
msgstr ""
-#: doc/classes/PackedScene.xml:71
+#: doc/classes/PackedScene.xml:78
msgid ""
"A dictionary representation of the scene contents.\n"
"Available keys include \"rnames\" and \"variants\" for resources, "
@@ -34182,18 +34994,18 @@ msgid ""
"connections, and \"version\" for the format style of the PackedScene."
msgstr ""
-#: doc/classes/PackedScene.xml:77
+#: doc/classes/PackedScene.xml:84
msgid "If passed to [method instance], blocks edits to the scene state."
msgstr ""
-#: doc/classes/PackedScene.xml:80
+#: doc/classes/PackedScene.xml:87
msgid ""
"If passed to [method instance], provides local scene resources to the local "
"scene.\n"
"[b]Note:[/b] Only available in editor builds."
msgstr ""
-#: doc/classes/PackedScene.xml:84
+#: doc/classes/PackedScene.xml:91
msgid ""
"If passed to [method instance], provides local scene resources to the local "
"scene. Only the main scene should receive the main edit state.\n"
@@ -34221,11 +35033,11 @@ msgstr ""
msgid "Appends a [PackedStringArray] at the end of this array."
msgstr ""
-#: doc/classes/PackedStringArray.xml:71
+#: doc/classes/PackedStringArray.xml:80
msgid "Appends a string element at end of the array."
msgstr ""
-#: doc/classes/PackedStringArray.xml:100
+#: doc/classes/PackedStringArray.xml:109
msgid "Changes the [String] at the given index."
msgstr ""
@@ -34250,11 +35062,11 @@ msgstr ""
msgid "Appends a [PackedVector2Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedVector2Array.xml:71
+#: doc/classes/PackedVector2Array.xml:80
msgid "Inserts a [Vector2] at the end."
msgstr ""
-#: doc/classes/PackedVector2Array.xml:100
+#: doc/classes/PackedVector2Array.xml:109
msgid "Changes the [Vector2] at the given index."
msgstr ""
@@ -34279,11 +35091,11 @@ msgstr ""
msgid "Appends a [PackedVector3Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedVector3Array.xml:71
+#: doc/classes/PackedVector3Array.xml:80
msgid "Inserts a [Vector3] at the end."
msgstr ""
-#: doc/classes/PackedVector3Array.xml:100
+#: doc/classes/PackedVector3Array.xml:109
msgid "Changes the [Vector3] at the given index."
msgstr ""
@@ -35174,13 +35986,55 @@ msgid ""
"as the values displayed in the [b]Monitor[/b] tab in the editor's "
"[b]Debugger[/b] panel. By using the [method get_monitor] method of this "
"class, you can access this data from your code.\n"
+"You can add custom monitors using the [method add_custom_monitor] method. "
+"Custom monitors are available in [b]Monitor[/b] tab in the editor's "
+"[b]Debugger[/b] panel together with built-in monitors.\n"
"[b]Note:[/b] A few of these monitors are only available in debug mode and "
"will always return 0 when used in a release build.\n"
"[b]Note:[/b] Many of these monitors are not updated in real-time, so there "
-"may be a short delay between changes."
+"may be a short delay between changes.\n"
+"[b]Note:[/b] Custom monitors do not support negative values. Negative values "
+"are clamped to 0."
+msgstr ""
+
+#: doc/classes/Performance.xml:26
+msgid ""
+"Adds a custom monitor with name same as id. You can specify the category of "
+"monitor using '/' in id. If there are more than one '/' then default "
+"category is used. Default category is \"Custom\".\n"
+"[codeblock]\n"
+"Performance.add_custom_monitor(\"MyCategory/MyMonitor\", some_callable) # "
+"Adds monitor with name \"MyName\" to category \"MyCategory\"\n"
+"Performance.add_custom_monitor(\"MyMonitor\", some_callable) # Adds monitor "
+"with name \"MyName\" to category \"Custom\"\n"
+"# Note: \"MyCategory/MyMonitor\" and \"MyMonitor\" have same name but "
+"different ids so above code is valid\n"
+"Performance.add_custom_monitor(\"Custom/MyMonitor\", some_callable) # Adds "
+"monitor with name \"MyName\" to category \"Custom\"\n"
+"# Note: \"MyMonitor\" and \"Custom/MyMonitor\" have same name and same "
+"category but different ids so above code is valid\n"
+"Performance.add_custom_monitor(\"MyCategoryOne/MyCategoryTwo/MyMonitor\", "
+"some_callable) # Adds monitor with name \"MyCategoryOne/MyCategoryTwo/"
+"MyMonitor\" to category \"Custom\"\n"
+"[/codeblock]\n"
+"The debugger calls the callable to get the value of custom monitor. The "
+"callable must return a number.\n"
+"Callables are called with arguments supplied in argument array.\n"
+"[b]Note:[/b] It throws an error if given id is already present."
+msgstr ""
+
+#: doc/classes/Performance.xml:46
+msgid ""
+"Returns the value of custom monitor with given id. The callable is called to "
+"get the value of custom monitor.\n"
+"[b]Note:[/b] It throws an error if the given id is absent."
msgstr ""
-#: doc/classes/Performance.xml:20
+#: doc/classes/Performance.xml:54
+msgid "Returns the names of active custom monitors in an array."
+msgstr ""
+
+#: doc/classes/Performance.xml:63
msgid ""
"Returns the value of one of the available monitors. You should provide one "
"of the [enum Monitor] constants as the argument, like this:\n"
@@ -35190,123 +36044,139 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Performance.xml:29
+#: doc/classes/Performance.xml:73
+msgid "Returns the last tick in which custom monitor was added/removed."
+msgstr ""
+
+#: doc/classes/Performance.xml:82
+msgid ""
+"Returns true if custom monitor with the given id is present otherwise "
+"returns false."
+msgstr ""
+
+#: doc/classes/Performance.xml:91
+msgid ""
+"Removes the custom monitor with given id.\n"
+"[b]Note:[/b] It throws an error if the given id is already absent."
+msgstr ""
+
+#: doc/classes/Performance.xml:98
msgid "Number of frames per second."
msgstr ""
-#: doc/classes/Performance.xml:32
+#: doc/classes/Performance.xml:101
msgid "Time it took to complete one frame, in seconds."
msgstr ""
-#: doc/classes/Performance.xml:35
+#: doc/classes/Performance.xml:104
msgid "Time it took to complete one physics frame, in seconds."
msgstr ""
-#: doc/classes/Performance.xml:38
+#: doc/classes/Performance.xml:107
msgid ""
"Static memory currently used, in bytes. Not available in release builds."
msgstr ""
-#: doc/classes/Performance.xml:41
+#: doc/classes/Performance.xml:110
msgid "Available static memory. Not available in release builds."
msgstr ""
-#: doc/classes/Performance.xml:44
+#: doc/classes/Performance.xml:113
msgid ""
"Largest amount of memory the message queue buffer has used, in bytes. The "
"message queue is used for deferred functions calls and notifications."
msgstr ""
-#: doc/classes/Performance.xml:47
+#: doc/classes/Performance.xml:116
msgid "Number of objects currently instanced (including nodes)."
msgstr ""
-#: doc/classes/Performance.xml:50
+#: doc/classes/Performance.xml:119
msgid "Number of resources currently used."
msgstr ""
-#: doc/classes/Performance.xml:53
+#: doc/classes/Performance.xml:122
msgid ""
"Number of nodes currently instanced in the scene tree. This also includes "
"the root node."
msgstr ""
-#: doc/classes/Performance.xml:56
+#: doc/classes/Performance.xml:125
msgid ""
"Number of orphan nodes, i.e. nodes which are not parented to a node of the "
"scene tree."
msgstr ""
-#: doc/classes/Performance.xml:59
+#: doc/classes/Performance.xml:128
msgid "3D objects drawn per frame."
msgstr ""
-#: doc/classes/Performance.xml:62
+#: doc/classes/Performance.xml:131
msgid "Vertices drawn per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:65
+#: doc/classes/Performance.xml:134
msgid "Material changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:68
+#: doc/classes/Performance.xml:137
msgid "Shader changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:71
+#: doc/classes/Performance.xml:140
msgid "Render surface changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:74
+#: doc/classes/Performance.xml:143
msgid "Draw calls per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:77 doc/classes/RenderingServer.xml:3805
+#: doc/classes/Performance.xml:146 doc/classes/RenderingServer.xml:3816
msgid ""
"The amount of video memory used, i.e. texture and vertex memory combined."
msgstr ""
-#: doc/classes/Performance.xml:80 doc/classes/RenderingServer.xml:3808
+#: doc/classes/Performance.xml:149 doc/classes/RenderingServer.xml:3819
msgid "The amount of texture memory used."
msgstr ""
-#: doc/classes/Performance.xml:83 doc/classes/RenderingServer.xml:3811
+#: doc/classes/Performance.xml:152 doc/classes/RenderingServer.xml:3822
msgid "The amount of vertex memory used."
msgstr ""
-#: doc/classes/Performance.xml:86 doc/classes/RenderingServer.xml:3802
+#: doc/classes/Performance.xml:155 doc/classes/RenderingServer.xml:3813
msgid "Unimplemented in the GLES2 rendering backend, always returns 0."
msgstr ""
-#: doc/classes/Performance.xml:89
+#: doc/classes/Performance.xml:158
msgid "Number of active [RigidBody2D] nodes in the game."
msgstr ""
-#: doc/classes/Performance.xml:92
+#: doc/classes/Performance.xml:161
msgid "Number of collision pairs in the 2D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:95
+#: doc/classes/Performance.xml:164
msgid "Number of islands in the 2D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:98
+#: doc/classes/Performance.xml:167
msgid "Number of active [RigidBody3D] and [VehicleBody3D] nodes in the game."
msgstr ""
-#: doc/classes/Performance.xml:101
+#: doc/classes/Performance.xml:170
msgid "Number of collision pairs in the 3D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:104
+#: doc/classes/Performance.xml:173
msgid "Number of islands in the 3D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:107
+#: doc/classes/Performance.xml:176
msgid "Output latency of the [AudioServer]."
msgstr ""
-#: doc/classes/Performance.xml:110
+#: doc/classes/Performance.xml:179
msgid "Represents the size of the [enum Monitor] enum."
msgstr ""
@@ -35330,27 +36200,27 @@ msgstr ""
msgid "Damps the body's rotation if greater than [code]0[/code]."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:70 doc/classes/RigidBody3D.xml:132
+#: doc/classes/PhysicalBone3D.xml:70 doc/classes/RigidBody3D.xml:139
msgid "Lock the body's rotation in the X axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:73 doc/classes/RigidBody3D.xml:135
+#: doc/classes/PhysicalBone3D.xml:73 doc/classes/RigidBody3D.xml:142
msgid "Lock the body's rotation in the Y axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:76 doc/classes/RigidBody3D.xml:138
+#: doc/classes/PhysicalBone3D.xml:76 doc/classes/RigidBody3D.xml:145
msgid "Lock the body's rotation in the Z axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:79 doc/classes/RigidBody3D.xml:141
+#: doc/classes/PhysicalBone3D.xml:79 doc/classes/RigidBody3D.xml:148
msgid "Lock the body's movement in the X axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:82 doc/classes/RigidBody3D.xml:144
+#: doc/classes/PhysicalBone3D.xml:82 doc/classes/RigidBody3D.xml:151
msgid "Lock the body's movement in the Y axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:85 doc/classes/RigidBody3D.xml:147
+#: doc/classes/PhysicalBone3D.xml:85 doc/classes/RigidBody3D.xml:154
msgid "Lock the body's movement in the Z axis."
msgstr ""
@@ -35405,12 +36275,12 @@ msgstr ""
msgid "Damps the body's movement if greater than [code]0[/code]."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:118 doc/classes/RigidBody2D.xml:158
-#: doc/classes/RigidBody3D.xml:175
+#: doc/classes/PhysicalBone3D.xml:118 doc/classes/RigidBody2D.xml:159
+#: doc/classes/RigidBody3D.xml:183
msgid "The body's mass."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:121 doc/classes/RigidBody3D.xml:188
+#: doc/classes/PhysicalBone3D.xml:121 doc/classes/RigidBody3D.xml:196
msgid ""
"The body's weight based on its mass and the global 3D gravity. Global values "
"are set in [b]Project > Project Settings > Physics > 3d[/b]."
@@ -35717,7 +36587,7 @@ msgid "The inverse of the mass of the body."
msgstr ""
#: doc/classes/PhysicsDirectBodyState2D.xml:195
-#: doc/classes/PhysicsDirectBodyState3D.xml:198 doc/classes/RigidBody2D.xml:155
+#: doc/classes/PhysicsDirectBodyState3D.xml:198 doc/classes/RigidBody2D.xml:156
msgid "The body's linear velocity."
msgstr ""
@@ -36270,7 +37140,7 @@ msgid ""
msgstr ""
#: doc/classes/PhysicsServer2D.xml:620 doc/classes/PhysicsServer3D.xml:637
-#: doc/classes/RigidBody3D.xml:120
+#: doc/classes/RigidBody3D.xml:127
msgid ""
"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."
@@ -37335,47 +38205,64 @@ msgid ""
"collision queries. See also [PhysicsShapeQueryResult2D]."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:18
-msgid ""
-"Sets the [Shape2D] that will be used for collision/intersection queries."
-msgstr ""
-
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:24
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:15
msgid "If [code]true[/code], the query will take [Area2D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:18
msgid ""
"If [code]true[/code], the query will take [PhysicsBody2D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:30
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:30
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:21
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:21
msgid "The physics layer(s) the query will take into account (as a bitmask)."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:33
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:33
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:24
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:24
msgid ""
"The list of objects or object [RID]s that will be excluded from collisions."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:36
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:36 doc/classes/Shape3D.xml:16
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:27 doc/classes/Shape3D.xml:16
msgid "The collision margin for the shape."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:39
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:30
msgid "The motion of the shape being queried for."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:42
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:39
-msgid "The queried shape's [RID]. See also [method set_shape]."
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:33
+msgid ""
+"The [Shape2D] that will be used for collision/intersection queries. This "
+"stores the actual reference which avoids the shape to be released while "
+"being used for queries, so always prefer using this over [member shape_rid]."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:36
+msgid ""
+"The queried shape's [RID] that will be used for collision/intersection "
+"queries. Use this over [member shape] if you want to optimize for "
+"performance using the Servers API:\n"
+"[codeblock]\n"
+"var shape_rid = PhysicsServer2D.circle_shape_create()\n"
+"var radius = 64\n"
+"PhysicsServer2D.shape_set_data(shape_rid, radius)\n"
+"\n"
+"var params = PhysicsShapeQueryParameters2D.new()\n"
+"params.shape_rid = shape_rid\n"
+"\n"
+"# Execute physics queries here...\n"
+"\n"
+"# Release the shape when done with physics queries.\n"
+"PhysicsServer2D.free_rid(shape_rid)\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:45
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:42
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:52
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:49
msgid "The queried shape's transform matrix."
msgstr ""
@@ -37389,18 +38276,40 @@ msgid ""
"collision queries. See also [PhysicsShapeQueryResult3D]."
msgstr ""
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:15
+msgid "If [code]true[/code], the query will take [Area3D]s into account."
+msgstr ""
+
#: doc/classes/PhysicsShapeQueryParameters3D.xml:18
msgid ""
-"Sets the [Shape3D] that will be used for collision/intersection queries."
+"If [code]true[/code], the query will take [PhysicsBody3D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:24
-msgid "If [code]true[/code], the query will take [Area3D]s into account."
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:30
+msgid ""
+"The [Shape3D] that will be used for collision/intersection queries. This "
+"stores the actual reference which avoids the shape to be released while "
+"being used for queries, so always prefer using this over [member shape_rid]."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:33
msgid ""
-"If [code]true[/code], the query will take [PhysicsBody3D]s into account."
+"The queried shape's [RID] that will be used for collision/intersection "
+"queries. Use this over [member shape] if you want to optimize for "
+"performance using the Servers API:\n"
+"[codeblock]\n"
+"var shape_rid = PhysicsServer3D.shape_create(PhysicsServer3D.SHAPE_SPHERE)\n"
+"var radius = 2.0\n"
+"PhysicsServer3D.shape_set_data(shape_rid, radius)\n"
+"\n"
+"var params = PhysicsShapeQueryParameters3D.new()\n"
+"params.shape_rid = shape_rid\n"
+"\n"
+"# Execute physics queries here...\n"
+"\n"
+"# Release the shape when done with physics queries.\n"
+"PhysicsServer3D.free_rid(shape_rid)\n"
+"[/codeblock]"
msgstr ""
#: doc/classes/PhysicsShapeQueryResult2D.xml:4
@@ -37541,92 +38450,94 @@ msgid ""
"code]."
msgstr ""
-#: doc/classes/Plane.xml:72
-msgid "Returns a point on the plane."
-msgstr ""
-
-#: doc/classes/Plane.xml:83
+#: doc/classes/Plane.xml:76
msgid ""
-"Returns [code]true[/code] if [code]point[/code] is inside the plane (by a "
-"very minimum [code]epsilon[/code] threshold)."
+"Returns [code]true[/code] if [code]point[/code] is inside the plane. "
+"Comparison uses a custom minimum [code]epsilon[/code] threshold."
msgstr ""
-#: doc/classes/Plane.xml:94
+#: doc/classes/Plane.xml:87
msgid ""
"Returns the intersection point of the three planes [code]b[/code], [code]c[/"
"code] and this plane. If no intersection is found, [code]null[/code] is "
"returned."
msgstr ""
-#: doc/classes/Plane.xml:105
+#: doc/classes/Plane.xml:98
msgid ""
"Returns the intersection point of a ray consisting of the position "
"[code]from[/code] and the direction normal [code]dir[/code] with this plane. "
"If no intersection is found, [code]null[/code] is returned."
msgstr ""
-#: doc/classes/Plane.xml:116
+#: doc/classes/Plane.xml:109
msgid ""
"Returns the intersection point of a segment from position [code]begin[/code] "
"to position [code]end[/code] with this plane. If no intersection is found, "
"[code]null[/code] is returned."
msgstr ""
-#: doc/classes/Plane.xml:125
+#: doc/classes/Plane.xml:118
msgid ""
"Returns [code]true[/code] if this plane and [code]plane[/code] are "
"approximately equal, by running [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/Plane.xml:134
+#: doc/classes/Plane.xml:127
msgid ""
"Returns [code]true[/code] if [code]point[/code] is located above the plane."
msgstr ""
-#: doc/classes/Plane.xml:141
+#: doc/classes/Plane.xml:134
msgid "Returns a copy of the plane, normalized."
msgstr ""
-#: doc/classes/Plane.xml:150
+#: doc/classes/Plane.xml:143
msgid ""
-"Returns the orthogonal projection of point [code]p[/code] into a point in "
-"the plane."
+"Returns the orthogonal projection of [code]point[/code] into a point in the "
+"plane."
msgstr ""
-#: doc/classes/Plane.xml:156
+#: doc/classes/Plane.xml:149
msgid ""
-"Distance from the origin to the plane, in the direction of [member normal]."
+"The distance from the origin to the plane, in the direction of [member "
+"normal]. This value is typically non-negative.\n"
+"In the scalar equation of the plane [code]ax + by + cz = d[/code], this is "
+"[code]d[/code], while the [code](a, b, c)[/code] coordinates are represented "
+"by the [member normal] property."
msgstr ""
-#: doc/classes/Plane.xml:159
+#: doc/classes/Plane.xml:153
msgid ""
-"The normal of the plane. \"Over\" or \"Above\" the plane is considered the "
-"side of the plane towards where the normal is pointing."
+"The normal of the plane, which must be normalized.\n"
+"In the scalar equation of the plane [code]ax + by + cz = d[/code], this is "
+"the vector [code](a, b, c)[/code], where [code]d[/code] is the [member d] "
+"property."
msgstr ""
-#: doc/classes/Plane.xml:162
-msgid "The [member normal]'s X component."
+#: doc/classes/Plane.xml:157
+msgid "The X component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:165
-msgid "The [member normal]'s Y component."
+#: doc/classes/Plane.xml:160
+msgid "The Y component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:168
-msgid "The [member normal]'s Z component."
+#: doc/classes/Plane.xml:163
+msgid "The Z component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:173
-msgid "A plane that extends in the Y and Z axes."
+#: doc/classes/Plane.xml:168
+msgid "A plane that extends in the Y and Z axes (normal vector points +X)."
msgstr ""
-#: doc/classes/Plane.xml:176
-msgid "A plane that extends in the X and Z axes."
+#: doc/classes/Plane.xml:171
+msgid "A plane that extends in the X and Z axes (normal vector points +Y)."
msgstr ""
-#: doc/classes/Plane.xml:179
-msgid "A plane that extends in the X and Y axes."
+#: doc/classes/Plane.xml:174
+msgid "A plane that extends in the X and Y axes (normal vector points +Z)."
msgstr ""
#: doc/classes/PlaneMesh.xml:4
@@ -38337,18 +39248,25 @@ msgstr ""
#: doc/classes/PrimitiveMesh.xml:16
msgid ""
-"Returns mesh arrays used to constitute surface of [Mesh]. Mesh arrays can be "
-"used with [ArrayMesh] to create new surfaces."
+"Returns mesh arrays used to constitute surface of [Mesh]. The result can be "
+"passed to [method ArrayMesh.add_surface_from_arrays] to create a new "
+"surface. For example:\n"
+"[codeblock]\n"
+"var c := CylinderMesh.new()\n"
+"var arr_mesh := ArrayMesh.new()\n"
+"arr_mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLES, c."
+"get_mesh_arrays())\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:22
+#: doc/classes/PrimitiveMesh.xml:27
msgid ""
"Overrides the [AABB] with one defined by user for use with frustum culling. "
"Especially useful to avoid unnexpected culling when using a shader to "
"offset vertices."
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:25
+#: doc/classes/PrimitiveMesh.xml:30
msgid ""
"If set, the order of the vertices in each triangle are reversed resulting in "
"the backside of the mesh being drawn.\n"
@@ -38356,7 +39274,7 @@ msgid ""
"[member BaseMaterial3D.cull_mode]."
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:29
+#: doc/classes/PrimitiveMesh.xml:34
msgid "The current [Material] of the primitive mesh."
msgstr ""
@@ -38787,11 +39705,17 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:260
msgid ""
+"Safer override for [member audio/output_latency] in the Web platform, to "
+"avoid audio issues especially on mobile devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:263
+msgid ""
"Setting to hardcode audio delay when playing video. Best to leave this "
"untouched unless you know what you are doing."
msgstr ""
-#: doc/classes/ProjectSettings.xml:263
+#: doc/classes/ProjectSettings.xml:266
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -38801,7 +39725,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:269
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -38811,27 +39735,27 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:269
+#: doc/classes/ProjectSettings.xml:272
msgid ""
"The default compression level for Zstandard. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
"speed. Decompression speed is mostly unaffected by the compression level."
msgstr ""
-#: doc/classes/ProjectSettings.xml:272
+#: doc/classes/ProjectSettings.xml:275
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:278
msgid ""
"Largest size limit (in power of 2) allowed when compressing using long-"
"distance matching with Zstandard. Higher values can result in better "
"compression, but will require more memory when compressing and decompressing."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:281
msgid ""
"If [code]true[/code], displays getters and setters in autocompletion results "
"in the script editor. This setting is meant to be used when porting old "
@@ -38839,74 +39763,55 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:281
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:284
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:287
+#: doc/classes/ProjectSettings.xml:294
msgid ""
"If [code]true[/code], enables specific GDScript warnings (see [code]debug/"
"gdscript/warnings/*[/code] settings). If [code]false[/code], disables all "
"GDScript warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
-msgid ""
-"If [code]true[/code], enables warnings when a function is declared with the "
-"same name as a constant."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:296
-msgid ""
-"If [code]true[/code], enables warnings when a function is declared with the "
-"same name as a variable. This will turn into an error in a future version "
-"when first-class functions become supported in GDScript."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:299
-msgid ""
-"If [code]true[/code], enables warnings when a function assigned to a "
-"variable may yield and return a function state instead of a value."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:302
+#: doc/classes/ProjectSettings.xml:300
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:303
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when dividing an integer by another "
"integer (the decimal part will be discarded)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when passing a floating-point value "
"to a function that expects an integer (it will be converted and lose "
"precision)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:314
+#: doc/classes/ProjectSettings.xml:312
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
@@ -38927,102 +39832,85 @@ msgid ""
"member variable)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:323
+#: doc/classes/ProjectSettings.xml:325
msgid ""
"If [code]true[/code], enables warnings when calling an expression that has "
"no effect on the surrounding code, such as writing [code]2 + 2[/code] as a "
"statement."
msgstr ""
-#: doc/classes/ProjectSettings.xml:326
+#: doc/classes/ProjectSettings.xml:328
msgid ""
"If [code]true[/code], enables warnings when calling a ternary expression "
"that has no effect on the surrounding code, such as writing [code]42 if "
"active else 0[/code] as a statement."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:331
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:334
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:335
+#: doc/classes/ProjectSettings.xml:337
msgid ""
"If [code]true[/code], enables warnings when assigning a variable using an "
"assignment operator like [code]+=[/code] if the variable wasn't previously "
"assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:338
+#: doc/classes/ProjectSettings.xml:340
msgid ""
"If [code]true[/code], enables warnings when unreachable code is detected "
"(such as after a [code]return[/code] statement that will always be executed)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:345
msgid ""
"If [code]true[/code], enables warnings when using an expression whose type "
"may not be compatible with the function parameter expected."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:348
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:347
+#: doc/classes/ProjectSettings.xml:351
msgid ""
"If [code]true[/code], enables warnings when calling a method whose presence "
"is not guaranteed at compile-time in the class."
msgstr ""
-#: doc/classes/ProjectSettings.xml:350
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], enables warnings when accessing a property whose "
"presence is not guaranteed at compile-time in the class."
msgstr ""
-#: doc/classes/ProjectSettings.xml:353
-msgid ""
-"If [code]true[/code], enables warnings when a function parameter is unused."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:356
-msgid ""
-"If [code]true[/code], enables warnings when a member variable is unused."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:363
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:362
+#: doc/classes/ProjectSettings.xml:366
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:365
-msgid ""
-"If [code]true[/code], enables warnings when a variable is declared with the "
-"same name as a function. This will turn into an error in a future version "
-"when first-class functions become supported in GDScript."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:368
+#: doc/classes/ProjectSettings.xml:369
msgid ""
"If [code]true[/code], enables warnings when assigning the result of a "
"function that returns [code]void[/code] to a variable."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:374
+#: doc/classes/ProjectSettings.xml:375
msgid ""
"Maximum number of frames per second allowed. The actual number of frames per "
"second may still be below this value if the game is lagging.\n"
@@ -39033,143 +39921,143 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:379
+#: doc/classes/ProjectSettings.xml:380
msgid "Maximum call stack allowed for debugging GDScript."
msgstr ""
-#: doc/classes/ProjectSettings.xml:382
+#: doc/classes/ProjectSettings.xml:383
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:385
+#: doc/classes/ProjectSettings.xml:386
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:388
+#: doc/classes/ProjectSettings.xml:389
msgid ""
"Print more information to standard output when running. It displays "
"information such as memory leaks, which scenes and resources are being "
"loaded, etc."
msgstr ""
-#: doc/classes/ProjectSettings.xml:391
+#: doc/classes/ProjectSettings.xml:392
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:394
+#: doc/classes/ProjectSettings.xml:395
msgid ""
"Color of the contact points between collision shapes, visible when \"Visible "
"Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:397
+#: doc/classes/ProjectSettings.xml:398
msgid ""
"Maximum number of contact points between collision shapes to display when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:400
+#: doc/classes/ProjectSettings.xml:401
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
msgid "Hotspot for the custom mouse cursor image."
msgstr ""
-#: doc/classes/ProjectSettings.xml:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
msgid ""
"If [code]true[/code], allows HiDPI display on Windows and macOS. This "
"setting has no effect on desktop Linux, as DPI-awareness fallbacks are not "
"supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"If [code]true[/code], keeps the screen on (even in case of inactivity), so "
"the screensaver does not take over. Works on desktop and mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
msgid "Default orientation on mobile devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"If [code]true[/code], the home indicator is hidden automatically. This only "
"affects iOS devices without a physical home button."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid "Force the window to be always on top."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid "Force the window to be borderless."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Sets the window to full screen when it starts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid ""
"Sets the game's main viewport height. On desktop platforms, this is the "
"default window size. Stretch mode settings also use this as a reference when "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Allows the window to be resizable by default."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"Sets the game's main viewport width. On desktop platforms, this is the "
"default window size. Stretch mode settings also use this as a reference when "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:454
+#: doc/classes/ProjectSettings.xml:455
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:457
+#: doc/classes/ProjectSettings.xml:458
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -39178,7 +40066,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:460
+#: doc/classes/ProjectSettings.xml:461
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -39189,13 +40077,13 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:464
+#: doc/classes/ProjectSettings.xml:465
msgid ""
"Search path for project-specific script templates. Script templates will be "
"search both in the editor-specific path and in this project-specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:467
+#: doc/classes/ProjectSettings.xml:468
msgid ""
"Text-based file extensions to include in the script editor's \"Find in Files"
"\" feature. You can add e.g. [code]tscn[/code] if you wish to also parse "
@@ -39203,49 +40091,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:470
+#: doc/classes/ProjectSettings.xml:471
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:473
+#: doc/classes/ProjectSettings.xml:474
msgid ""
-"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
+"If [code]true[/code], swaps Cancel and OK buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:478
+#: doc/classes/ProjectSettings.xml:479
msgid ""
"Path to a custom [Theme] resource file to use for the project ([code]theme[/"
"code] or generic [code]tres[/code]/[code]res[/code] extension)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:484
+#: doc/classes/ProjectSettings.xml:485
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:487
+#: doc/classes/ProjectSettings.xml:488
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:490
+#: doc/classes/ProjectSettings.xml:491
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:493
+#: doc/classes/ProjectSettings.xml:494
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:496
+#: doc/classes/ProjectSettings.xml:497
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -39254,7 +40142,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"Default [InputEventAction] to discard a modal or pending input.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39262,7 +40150,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:504
+#: doc/classes/ProjectSettings.xml:505
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39270,7 +40158,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:508
+#: doc/classes/ProjectSettings.xml:509
msgid ""
"Default [InputEventAction] to go to the end position of a [Control] (e.g. "
"last item in an [ItemList] or a [Tree]), matching the behavior of [constant "
@@ -39280,7 +40168,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:512
+#: doc/classes/ProjectSettings.xml:513
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -39289,7 +40177,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:516
+#: doc/classes/ProjectSettings.xml:517
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -39298,7 +40186,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:520
+#: doc/classes/ProjectSettings.xml:521
msgid ""
"Default [InputEventAction] to go to the start position of a [Control] (e.g. "
"first item in an [ItemList] or a [Tree]), matching the behavior of [constant "
@@ -39308,7 +40196,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39316,7 +40204,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:528
+#: doc/classes/ProjectSettings.xml:529
msgid ""
"Default [InputEventAction] to go down a page in a [Control] (e.g. in an "
"[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEDOWN] on "
@@ -39326,7 +40214,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Default [InputEventAction] to go up a page in a [Control] (e.g. in an "
"[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEUP] on "
@@ -39336,7 +40224,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:536
+#: doc/classes/ProjectSettings.xml:537
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39344,7 +40232,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:540
+#: doc/classes/ProjectSettings.xml:541
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -39353,7 +40241,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39361,371 +40249,371 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:548
+#: doc/classes/ProjectSettings.xml:549
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:554
+#: doc/classes/ProjectSettings.xml:555
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:557
+#: doc/classes/ProjectSettings.xml:558
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:560
+#: doc/classes/ProjectSettings.xml:561
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:566
+#: doc/classes/ProjectSettings.xml:567
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:569
+#: doc/classes/ProjectSettings.xml:570
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:572
+#: doc/classes/ProjectSettings.xml:573
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:578
+#: doc/classes/ProjectSettings.xml:579
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:581
+#: doc/classes/ProjectSettings.xml:582
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:584
+#: doc/classes/ProjectSettings.xml:585
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:590
+#: doc/classes/ProjectSettings.xml:591
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:593
+#: doc/classes/ProjectSettings.xml:594
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:596
+#: doc/classes/ProjectSettings.xml:597
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:602
+#: doc/classes/ProjectSettings.xml:603
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid ""
"The locale to fall back to if a translation isn't available in a given "
"language. If left empty, [code]en[/code] (English) will be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "If [code]true[/code], logs all output to files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:806
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:809
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:812
msgid ""
"Godot uses a message queue to defer some function calls. If you run out of "
"space on it (you will see an error), you can increase the size here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:815
msgid ""
"This is used by servers when used in multi-threading mode (servers and "
"visual). RIDs are preallocated to avoid stalling the server requesting them "
@@ -39733,56 +40621,56 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:829
+#: doc/classes/ProjectSettings.xml:832
msgid ""
"Maximum amount of characters allowed to send as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:832
+#: doc/classes/ProjectSettings.xml:835
msgid ""
"Maximum number of errors allowed to be sent from the debugger. Over this "
"value, content is dropped. This helps not to stall the debugger connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:835
+#: doc/classes/ProjectSettings.xml:838
msgid ""
"Maximum amount of messages in the debugger queue. Over this value, content "
"is dropped. This helps to limit the debugger memory usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:838
+#: doc/classes/ProjectSettings.xml:841
msgid ""
"Maximum number of warnings allowed to be sent from the debugger. Over this "
"value, content is dropped. This helps not to stall the debugger connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:841
+#: doc/classes/ProjectSettings.xml:844
msgid ""
"Default size of packet peer stream for deserializing Godot data. Over this "
"size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:844
+#: doc/classes/ProjectSettings.xml:847
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:847
+#: doc/classes/ProjectSettings.xml:850
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:850
+#: doc/classes/ProjectSettings.xml:853
msgid ""
"Amount of read ahead used by remote filesystem. Higher values decrease the "
"effects of latency at the cost of higher bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:853
+#: doc/classes/ProjectSettings.xml:856
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:856
+#: doc/classes/ProjectSettings.xml:859
msgid ""
"The CA certificates bundle to use for SSL connections. If this is set to a "
"non-empty value, this will [i]override[/i] Godot's default [url=https://"
@@ -39792,31 +40680,31 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:863
msgid ""
"When creating node names automatically, set the type of casing in this "
"project. This is mostly an editor setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:866
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:869
msgid "Size of the hash table used for the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:872
msgid "Cell size used for the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:875
msgid "The default angular damp in 2D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:878
msgid ""
"The default gravity strength in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39828,7 +40716,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:883
+#: doc/classes/ProjectSettings.xml:886
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39840,38 +40728,38 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:891
+#: doc/classes/ProjectSettings.xml:894
msgid "The default linear damp in 2D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:894
+#: doc/classes/ProjectSettings.xml:897
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:897
+#: doc/classes/ProjectSettings.xml:900
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics2D\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:901
+#: doc/classes/ProjectSettings.xml:904
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant PhysicsServer2D."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:904
+#: doc/classes/ProjectSettings.xml:907
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant PhysicsServer2D."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:907
+#: doc/classes/ProjectSettings.xml:910
msgid ""
"Sets whether physics is run on the main thread or a separate one. Running "
"the server on a thread increases performance, but restricts API access to "
@@ -39881,23 +40769,23 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:914
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant PhysicsServer2D.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:917
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody3D] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:920
msgid "The default angular damp in 3D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:923
msgid ""
"The default gravity strength in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39909,7 +40797,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:928
+#: doc/classes/ProjectSettings.xml:931
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39921,11 +40809,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:936
+#: doc/classes/ProjectSettings.xml:939
msgid "The default linear damp in 3D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:939
+#: doc/classes/ProjectSettings.xml:942
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -39933,11 +40821,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:943
+#: doc/classes/ProjectSettings.xml:946
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:949
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -39946,7 +40834,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:950
+#: doc/classes/ProjectSettings.xml:953
msgid ""
"Fix to improve physics jitter, specially on monitors where refresh rate is "
"different than the physics FPS.\n"
@@ -39954,7 +40842,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:954
+#: doc/classes/ProjectSettings.xml:957
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -39962,7 +40850,7 @@ msgid ""
"programmatically, use [method RenderingServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:957
+#: doc/classes/ProjectSettings.xml:960
msgid ""
"[Environment] that will be used as a fallback environment in case a scene "
"does not specify its own environment. The default environment is loaded in "
@@ -39972,14 +40860,14 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:986
+#: doc/classes/ProjectSettings.xml:989
msgid ""
"Max amount of elements renderable in a frame. If more than this are visible "
"per frame, they will be dropped. Keep in mind elements refer to mesh "
"surfaces and not meshes themselves."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:994
msgid ""
"Some NVIDIA GPU drivers have a bug which produces flickering issues for the "
"[code]draw_rect[/code] method, especially as used in [TileMap]. Refer to "
@@ -39991,73 +40879,73 @@ msgid ""
"using the Vulkan backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:995
+#: doc/classes/ProjectSettings.xml:998
msgid ""
"If [code]true[/code], forces snapping of polygons to pixels in 2D rendering. "
"May help in some pixel art styles."
msgstr ""
-#: doc/classes/ProjectSettings.xml:998
+#: doc/classes/ProjectSettings.xml:1001
msgid ""
"Sets the quality of the depth of field effect. Higher quality takes more "
"samples, which is slower but looks smoother."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1001
+#: doc/classes/ProjectSettings.xml:1004
msgid ""
"Sets the depth of field shape. Can be Box, Hexagon, or Circle. Box is the "
"fastest. Circle is the most realistic, but also the most expensive to "
"compute."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1004
+#: doc/classes/ProjectSettings.xml:1007
msgid ""
"If [code]true[/code], jitters DOF samples to make effect slightly blurrier "
"and hide lines created from low sample rates. This can result in a slightly "
"grainy appearance when used with a low number of samples."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1010
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1010
+#: doc/classes/ProjectSettings.xml:1013
msgid ""
"If [code]true[/code], performs a previous depth pass before rendering "
"materials. This increases performance in scenes with high overdraw, when "
"complex materials and lighting are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1016
msgid ""
"The directional shadow's size in pixels. Higher values will result in "
"sharper shadows, at the cost of performance. The value will be rounded up to "
"the nearest power of 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1016
+#: doc/classes/ProjectSettings.xml:1019
msgid ""
"Lower-end override for [member rendering/quality/directional_shadow/size] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1019
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"Quality setting for shadows cast by [DirectionalLight3D]s. Higher quality "
"settings use more samples when reading from shadow maps and are thus slower. "
"Low quality settings may result in shadows looking grainy."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1022
+#: doc/classes/ProjectSettings.xml:1025
msgid ""
"Lower-end override for [member rendering/quality/directional_shadow/"
"soft_shadow_quality] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1028
msgid ""
"The video driver to use (\"GLES2\" or \"Vulkan\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -40067,32 +40955,32 @@ msgid ""
"get_current_video_driver[/code] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1031
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"If [code]true[/code], take additional samples when rendering objects "
"affected by a [GIProbe] to reduce artifacts from only sampling in one "
"direction."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1034
+#: doc/classes/ProjectSettings.xml:1037
msgid ""
"Sets the number of cone samples taken when rendering objects affected by "
"[GIProbe]s."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1037
+#: doc/classes/ProjectSettings.xml:1040
msgid ""
"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."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1040
+#: doc/classes/ProjectSettings.xml:1043
msgid ""
"Lower-end override for [member rendering/quality/glow/upscale_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1043
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Strategy used for framebuffer allocation. The simpler it is, the less "
"resources it uses (but the less features it supports). If set to \"2D "
@@ -40102,41 +40990,41 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1046
+#: doc/classes/ProjectSettings.xml:1049
msgid ""
"Lower-end override for [member rendering/quality/intended_usage/"
"framebuffer_allocation] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1052
msgid ""
"Number of cubemaps to store in the reflection atlas. The number of "
"[ReflectionProbe]s in a scene will be limited by this amount. A higher "
"number requires more VRAM."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1052
+#: doc/classes/ProjectSettings.xml:1055
msgid ""
"Size of cubemap faces for [ReflectionProbe]s. A higher number requires more "
"VRAM and may make reflection probe updating slower."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1055
+#: doc/classes/ProjectSettings.xml:1058
msgid ""
"Lower-end override for [member rendering/quality/reflection_atlas/"
"reflection_size] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1058
+#: doc/classes/ProjectSettings.xml:1061
msgid ""
"Use a higher quality variant of the fast filtering algorithm. Significantly "
"slower than using default quality, but results in smoother reflections. "
"Should only be used when the scene is especially detailed."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1061
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Sets the number of samples to take when using importance sampling for [Sky]s "
"and [ReflectionProbe]s. A higher value will result in smoother, higher "
@@ -40146,19 +41034,19 @@ msgid ""
"environments with a high level of detail."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1064
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Lower-end override for [member rendering/quality/reflections/ggx_samples] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1067
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Limits the number of layers to use in radiance maps when using importance "
"sampling. A lower number will be slightly faster and take up less VRAM."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1070
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise and "
@@ -40167,14 +41055,14 @@ msgid ""
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1073
+#: doc/classes/ProjectSettings.xml:1076
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"texture_array_reflections] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1079
msgid ""
"Sets the number of MSAA samples to use (as a power of two). MSAA is used to "
"reduce aliasing around the edges of polygons. A higher MSAA value results in "
@@ -40182,7 +41070,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1080
+#: doc/classes/ProjectSettings.xml:1083
msgid ""
"Sets the screen-space antialiasing mode for the default screen [Viewport]. "
"Screen-space antialiasing works by selectively blurring edges in a post-"
@@ -40191,133 +41079,117 @@ msgid ""
"MSAA and will smooth out specular aliasing, but tend to make scenes appear "
"blurry.\n"
"Another way to combat specular aliasing is to enable [member rendering/"
-"quality/screen_filters/screen_space_roughness_limiter]."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:1084
-msgid ""
-"Enables the screen-space roughness limiter which increases material "
-"roughness in areas with a high normal frequency (i.e. when normals change a "
-"lot from pixel to pixel). This helps to reduce the amount of specular "
-"aliasing in a scene. Specular aliasing looks like random bright pixels that "
-"occur in reflections."
+"quality/screen_filters/screen_space_roughness_limiter_enabled]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1087
-msgid ""
-"Curves the amount of the roughness limited effect. A higher value limits the "
-"effect to very sharply curved surfaces, while a lower threshold extends the "
-"effect to smoother surfaces."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:1090
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"Sets the quality for rough screen-space reflections. Turning off will make "
"all screen space reflections sharp, while higher values make rough "
"reflections look better."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1093
+#: doc/classes/ProjectSettings.xml:1096
msgid ""
"If [code]true[/code], uses faster but lower-quality Blinn model to generate "
"blurred reflections instead of the GGX model."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1099
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_blinn_over_ggx] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1102
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1102
+#: doc/classes/ProjectSettings.xml:1105
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_lambert_over_burley] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1105
+#: doc/classes/ProjectSettings.xml:1108
msgid ""
"If [code]true[/code], forces vertex shading for all rendering. This can "
"increase performance a lot, but also reduces quality immensely. Can be used "
"to optimize performance on low-end mobile devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1108
+#: doc/classes/ProjectSettings.xml:1111
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_vertex_shading] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1111 doc/classes/ProjectSettings.xml:1114
-#: doc/classes/ProjectSettings.xml:1117 doc/classes/ProjectSettings.xml:1120
+#: doc/classes/ProjectSettings.xml:1114 doc/classes/ProjectSettings.xml:1117
+#: doc/classes/ProjectSettings.xml:1120 doc/classes/ProjectSettings.xml:1123
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1123
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1126
+#: doc/classes/ProjectSettings.xml:1129
msgid ""
"Lower-end override for [member rendering/quality/shadow_atlas/size] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1132
msgid ""
"Quality setting for shadows cast by [OmniLight3D]s and [SpotLight3D]s. "
"Higher quality settings use more samples when reading from shadow maps and "
"are thus slower. Low quality settings may result in shadows looking grainy."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1132
+#: doc/classes/ProjectSettings.xml:1135
msgid ""
"Lower-end override for [member rendering/quality/shadows/"
"soft_shadow_quality] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1135
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"If [code]true[/code], screen-space ambient occlusion will be rendered at "
"half size and then upscaled before being added to the scene. This is "
"significantly faster but may miss small details."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1138
+#: doc/classes/ProjectSettings.xml:1141
msgid ""
"Sets the quality of the screen-space ambient occlusion effect. Higher values "
"take more samples and so will result in better quality, at the cost of "
"performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1144
msgid ""
"Scales the depth over which the subsurface scattering effect is applied. A "
"high value may allow light to scatter into a part of the mesh or another "
"mesh that is close in screen space but far in depth."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1144
+#: doc/classes/ProjectSettings.xml:1147
msgid ""
"Sets the quality of the subsurface scattering effect. Higher values are "
"slower but look nicer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1147
+#: doc/classes/ProjectSettings.xml:1150
msgid ""
"Scales the distance over which samples are taken for subsurface scattering "
"effect. Changing this does not impact performance, but higher values will "
@@ -40325,7 +41197,7 @@ msgid ""
"out. A lower value results in a smaller spread of scattered light."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1150
+#: doc/classes/ProjectSettings.xml:1153
msgid ""
"Sets the maximum number of samples to take when using anisotropic filtering "
"on textures (as a power of two). A higher sample count will result in "
@@ -40334,7 +41206,7 @@ msgid ""
"materials where it is enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1153
+#: doc/classes/ProjectSettings.xml:1156
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -40343,49 +41215,49 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Thread model for rendering. Rendering on a thread can vastly improve "
"performance, but synchronizing to the main thread can cause a bit more "
"jitter."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
"only supported on desktop platforms, and only when using the Vulkan renderer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
"doesn't support alpha channels in textures."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
"compression algorithm is only supported when using the Vulkan renderer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1175
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
"compression algorithm is only supported on iOS."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
"supported on desktop platforms and consoles."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1182
+#: doc/classes/ProjectSettings.xml:1189
msgid "Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses."
msgstr ""
@@ -40415,13 +41287,14 @@ msgstr ""
#: doc/classes/Quat.xml:7
msgid ""
-"A unit quaternion used for representing 3D rotations.\n"
-"It is similar to [Basis], which implements matrix representation of "
-"rotations, and can be parametrized using both an axis-angle pair or Euler "
-"angles. But due to its compactness and the way it is stored in memory, "
-"certain operations (obtaining axis-angle and performing SLERP, in "
-"particular) are more efficient and robust against floating-point errors.\n"
-"Quaternions need to be (re)normalized."
+"A unit quaternion used for representing 3D rotations. Quaternions need to be "
+"normalized to be used for rotation.\n"
+"It is similar to Basis, which implements matrix representation of rotations, "
+"and can be parametrized using both an axis-angle pair or Euler angles. Basis "
+"stores rotation, scale, and shearing, while Quat only stores rotation.\n"
+"Due to its compactness and the way it is stored in memory, certain "
+"operations (obtaining axis-angle and performing SLERP, in particular) are "
+"more efficient and robust against floating-point errors."
msgstr ""
#: doc/classes/Quat.xml:12
@@ -40431,29 +41304,31 @@ msgid ""
msgstr ""
#: doc/classes/Quat.xml:21
-msgid "Returns the rotation matrix corresponding to the given quaternion."
+msgid "Constructs a quaternion from the given [Basis]."
msgstr ""
#: doc/classes/Quat.xml:30
msgid ""
-"Returns a quaternion that will perform a rotation specified by Euler angles "
-"(in the YXZ convention: first Z, then X, and Y last), given in the vector "
-"format as (X angle, Y angle, Z angle)."
+"Constructs a quaternion that will perform a rotation specified by Euler "
+"angles (in the YXZ convention: when decomposing, first Z, then X, and Y "
+"last), given in the vector format as (X angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:41
msgid ""
-"Returns a quaternion that will rotate around the given axis by the specified "
-"angle. The axis must be a normalized vector."
+"Constructs a quaternion that will rotate around the given axis by the "
+"specified angle. The axis must be a normalized vector."
msgstr ""
#: doc/classes/Quat.xml:56
-msgid "Returns a quaternion defined by these values."
+msgid "Constructs a quaternion defined by the given values."
msgstr ""
#: doc/classes/Quat.xml:71
msgid ""
-"Performs a cubic spherical-linear interpolation with another quaternion."
+"Performs a cubic spherical interpolation between quaternions [code]preA[/"
+"code], this vector, [code]b[/code], and [code]postB[/code], by the given "
+"amount [code]t[/code]."
msgstr ""
#: doc/classes/Quat.xml:80
@@ -40462,10 +41337,10 @@ msgstr ""
#: doc/classes/Quat.xml:87
msgid ""
-"Returns Euler angles (in the YXZ convention: first Z, then X, and Y last) "
-"corresponding to the rotation represented by the unit quaternion. Returned "
-"vector contains the rotation angles in the format (X angle, Y angle, Z "
-"angle)."
+"Returns Euler angles (in the YXZ convention: when decomposing, first Z, then "
+"X, and Y last) corresponding to the rotation represented by the unit "
+"quaternion. Returned vector contains the rotation angles in the format (X "
+"angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:94
@@ -40504,44 +41379,57 @@ msgstr ""
#: doc/classes/Quat.xml:151
msgid ""
"Sets the quaternion to a rotation specified by Euler angles (in the YXZ "
-"convention: first Z, then X, and Y last), given in the vector format as (X "
-"angle, Y angle, Z angle)."
+"convention: when decomposing, first Z, then X, and Y last), given in the "
+"vector format as (X angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:162
-msgid "Performs a spherical-linear interpolation with another quaternion."
+msgid ""
+"Returns the result of the spherical linear interpolation between this "
+"quaternion and [code]to[/code] by amount [code]weight[/code].\n"
+"[b]Note:[/b] Both quaternions must be normalized."
msgstr ""
-#: doc/classes/Quat.xml:173
+#: doc/classes/Quat.xml:174
msgid ""
-"Performs a spherical-linear interpolation with another quaterion without "
-"checking if the rotation path is not bigger than 90°."
+"Returns the result of the spherical linear interpolation between this "
+"quaternion and [code]to[/code] by amount [code]weight[/code], but without "
+"checking if the rotation path is not bigger than 90 degrees."
msgstr ""
-#: doc/classes/Quat.xml:182
-msgid "Transforms the vector [code]v[/code] by this quaternion."
+#: doc/classes/Quat.xml:183
+msgid "Returns a vector transformed (multiplied) by this quaternion."
msgstr ""
-#: doc/classes/Quat.xml:188
-msgid "W component of the quaternion."
+#: doc/classes/Quat.xml:189
+msgid ""
+"W component of the quaternion (real part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:191
-msgid "X component of the quaternion."
+#: doc/classes/Quat.xml:193
+msgid ""
+"X component of the quaternion (imaginary [code]i[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:194
-msgid "Y component of the quaternion."
+#: doc/classes/Quat.xml:197
+msgid ""
+"Y component of the quaternion (imaginary [code]j[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:197
-msgid "Z component of the quaternion."
+#: doc/classes/Quat.xml:201
+msgid ""
+"Z component of the quaternion (imaginary [code]k[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:202
+#: doc/classes/Quat.xml:207
msgid ""
-"The identity rotation. Equivalent to an identity matrix. If a vector is "
-"transformed by an identity quaternion, it will not change."
+"The identity quaternion, representing no rotation. Equivalent to an identity "
+"[Basis] matrix. If a vector is transformed by an identity quaternion, it "
+"will not change."
msgstr ""
#: doc/classes/RandomNumberGenerator.xml:4
@@ -40744,7 +41632,8 @@ msgid ""
"collision information immediately instead of waiting for the next "
"[code]_physics_process[/code] call, for example if the ray or its parent has "
"changed state.\n"
-"[b]Note:[/b] [code]enabled == true[/code] is not required for this to work."
+"[b]Note:[/b] [member enabled] does not need to be [code]true[/code] for this "
+"to work."
msgstr ""
#: doc/classes/RayCast2D.xml:54 doc/classes/RayCast3D.xml:55
@@ -40850,7 +41739,8 @@ msgid ""
"Use this method to update the collision information immediately instead of "
"waiting for the next [code]_physics_process[/code] call, for example if the "
"ray or its parent has changed state.\n"
-"[b]Note:[/b] [code]enabled == true[/code] is not required for this to work."
+"[b]Note:[/b] [member enabled] does not need to be [code]true[/code] for this "
+"to work."
msgstr ""
#: doc/classes/RayCast3D.xml:71
@@ -41008,14 +41898,6 @@ msgstr ""
msgid "Returns a larger [Rect2] that contains this [Rect2] and [code]b[/code]."
msgstr ""
-#: doc/classes/Rect2.xml:174 doc/classes/Rect2i.xml:163
-msgid "Ending corner."
-msgstr ""
-
-#: doc/classes/Rect2.xml:177 doc/classes/Rect2i.xml:166
-msgid "Position (starting corner)."
-msgstr ""
-
#: doc/classes/Rect2i.xml:4
msgid "2D axis-aligned bounding box using integer coordinates."
msgstr ""
@@ -41128,22 +42010,22 @@ msgstr ""
msgid ""
"Base class for any object that keeps a reference count. [Resource] and many "
"other helper objects inherit this class.\n"
-"References keep an internal reference counter so that they are automatically "
-"released when no longer in use, and only then. References therefore do not "
-"need to be freed manually with [method Object.free].\n"
+"Unlike [Object]s, References keep an internal reference counter so that they "
+"are automatically released when no longer in use, and only then. References "
+"therefore do not need to be freed manually with [method Object.free].\n"
"In the vast majority of use cases, instantiating and using [Reference]-"
"derived types is all you need to do. The methods provided in this class are "
"only for advanced users, and can cause issues if misused."
msgstr ""
-#: doc/classes/Reference.xml:18
+#: doc/classes/Reference.xml:19
msgid ""
"Initializes the internal reference counter. Use this only if you really know "
"what you are doing.\n"
"Returns whether the initialization was successful."
msgstr ""
-#: doc/classes/Reference.xml:26
+#: doc/classes/Reference.xml:27
msgid ""
"Increments the internal reference counter. Use this only if you really know "
"what you are doing.\n"
@@ -41151,7 +42033,7 @@ msgid ""
"code] otherwise."
msgstr ""
-#: doc/classes/Reference.xml:34
+#: doc/classes/Reference.xml:35
msgid ""
"Decrements the internal reference counter. Use this only if you really know "
"what you are doing.\n"
@@ -41200,14 +42082,14 @@ msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/reflection_probes.html"
msgstr ""
-#: doc/classes/ReflectionProbe.xml:17
+#: doc/classes/ReflectionProbe.xml:23
msgid ""
"If [code]true[/code], enables box projection. This makes reflections look "
"more correct in rectangle-shaped rooms by offsetting the reflection center "
"depending on the camera's location."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:20
+#: doc/classes/ReflectionProbe.xml:26
msgid ""
"Sets the cull mask which determines what objects are drawn by this probe. "
"Every [VisualInstance3D] with a layer included in this cull mask will be "
@@ -41216,78 +42098,56 @@ msgid ""
"rendering cost."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:23
+#: doc/classes/ReflectionProbe.xml:29
msgid ""
"If [code]true[/code], computes shadows in the reflection probe. This makes "
"the reflection probe slower to render; you may want to disable this if using "
"the [constant UPDATE_ALWAYS] [member update_mode]."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:26
+#: doc/classes/ReflectionProbe.xml:32
msgid ""
"The size of the reflection probe. The larger the extents the more space "
"covered by the probe which will lower the perceived resolution. It is best "
"to keep the extents only as large as you need them."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:29
+#: doc/classes/ReflectionProbe.xml:35
msgid ""
"Defines the reflection intensity. Intensity modulates the strength of the "
"reflection."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:32
-msgid ""
-"Sets the ambient light color to be used when this probe is set to [member "
-"interior_enable]."
-msgstr ""
-
-#: doc/classes/ReflectionProbe.xml:35
-msgid ""
-"Sets the contribution value for how much the reflection affects the ambient "
-"light for this reflection probe when set to [member interior_enable]. Useful "
-"so that ambient light matches the color of the room."
-msgstr ""
-
#: doc/classes/ReflectionProbe.xml:38
-msgid ""
-"Sets the energy multiplier for this reflection probe's ambient light "
-"contribution when set to [member interior_enable]."
+msgid "If [code]true[/code], reflections will ignore sky contribution."
msgstr ""
#: doc/classes/ReflectionProbe.xml:41
msgid ""
-"If [code]true[/code], reflections will ignore sky contribution. Ambient "
-"lighting is then controlled by the [code]interior_ambient_*[/code] "
-"properties."
-msgstr ""
-
-#: doc/classes/ReflectionProbe.xml:44
-msgid ""
"Sets the max distance away from the probe an object can be before it is "
"culled."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:47
+#: doc/classes/ReflectionProbe.xml:44
msgid ""
"Sets the origin offset to be used when this reflection probe is in box "
"project mode."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:50
+#: doc/classes/ReflectionProbe.xml:47
msgid ""
"Sets how frequently the probe is updated. Can be [constant UPDATE_ONCE] or "
"[constant UPDATE_ALWAYS]."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:55
+#: doc/classes/ReflectionProbe.xml:52
msgid ""
"Update the probe once on the next frame. The corresponding radiance map will "
"be generated over the following six frames. This is slower to update than "
"[constant UPDATE_ALWAYS] but can result in higher quality reflections."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:58
+#: doc/classes/ReflectionProbe.xml:55
msgid ""
"Update the probe every frame. This is needed when you want to capture "
"dynamic objects. However, it results in an increased render time. Use "
@@ -41317,10 +42177,10 @@ msgid ""
"read by RegEx as [code]\\d+[/code]. Similarly, [code]compile(\"\\\"(?:\\\\\\"
"\\.|[^\\\"])*\\\"\")[/code] would be read as [code]\"(?:\\\\.|[^\"])*\"[/"
"code].\n"
-"Using [method search] you can find the pattern within the given text. If a "
+"Using [method search], you can find the pattern within the given text. If a "
"pattern is found, [RegExMatch] is returned and you can retrieve details of "
-"the results using functions such as [method RegExMatch.get_string] and "
-"[method RegExMatch.get_start].\n"
+"the results using methods such as [method RegExMatch.get_string] and [method "
+"RegExMatch.get_start].\n"
"[codeblock]\n"
"var regex = RegEx.new()\n"
"regex.compile(\"\\\\w-(\\\\d+)\")\n"
@@ -41329,7 +42189,7 @@ msgid ""
" print(result.get_string()) # Would print n-0123\n"
"[/codeblock]\n"
"The results of capturing groups [code]()[/code] can be retrieved by passing "
-"the group number to the various functions in [RegExMatch]. Group 0 is the "
+"the group number to the various methods in [RegExMatch]. Group 0 is the "
"default and will always refer to the entire pattern. In the above example, "
"calling [code]result.get_string(1)[/code] would give you [code]0123[/code].\n"
"This version of RegEx also supports named capturing groups, and the names "
@@ -41350,6 +42210,15 @@ msgid ""
" print(result.get_string(\"digit\"))\n"
"# Would print 01 03 0 3f 42\n"
"[/codeblock]\n"
+"[b]Example of splitting a string using a RegEx:[/b]\n"
+"[codeblock]\n"
+"var regex = RegEx.new()\n"
+"regex.compile(\"\\\\S+\") # Negated whitespace character class.\n"
+"var results = []\n"
+"for match in regex.search_all(\"One Two \\n\\tThree\"):\n"
+" results.push_back(match.get_string())\n"
+"# The `results` array now contains \"One\", \"Two\", \"Three\".\n"
+"[/codeblock]\n"
"[b]Note:[/b] Godot's regex implementation is based on the [url=https://www."
"pcre.org/]PCRE2[/url] library. You can view the full pattern reference "
"[url=https://www.pcre.org/current/doc/html/pcre2pattern.html]here[/url].\n"
@@ -41357,38 +42226,38 @@ msgid ""
"regular expressions online."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:47
+#: modules/regex/doc_classes/RegEx.xml:56
msgid ""
"This method resets the state of the object, as if it was freshly created. "
"Namely, it unassigns the regular expression of this object."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:56
+#: modules/regex/doc_classes/RegEx.xml:65
msgid ""
"Compiles and assign the search pattern to use. Returns [constant OK] if the "
"compilation is successful. If an error is encountered, details are printed "
"to standard output and an error is returned."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:63
+#: modules/regex/doc_classes/RegEx.xml:72
msgid "Returns the number of capturing groups in compiled pattern."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:70
+#: modules/regex/doc_classes/RegEx.xml:79
msgid ""
"Returns an array of names of named capturing groups in the compiled pattern. "
"They are ordered by appearance."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:77
+#: modules/regex/doc_classes/RegEx.xml:86
msgid "Returns the original search pattern that was compiled."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:84
+#: modules/regex/doc_classes/RegEx.xml:93
msgid "Returns whether this object has a valid search pattern assigned."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:97
+#: modules/regex/doc_classes/RegEx.xml:106
msgid ""
"Searches the text for the compiled pattern. Returns a [RegExMatch] container "
"of the first matching result if found, otherwise [code]null[/code]. The "
@@ -41396,7 +42265,7 @@ msgid ""
"and end anchor would be."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:110
+#: modules/regex/doc_classes/RegEx.xml:119
msgid ""
"Searches the text for the compiled pattern. Returns an array of [RegExMatch] "
"containers for each non-overlapping result. If no results were found, an "
@@ -41404,7 +42273,7 @@ msgid ""
"specified without modifying where the start and end anchor would be."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:127
+#: modules/regex/doc_classes/RegEx.xml:136
msgid ""
"Searches the text for the compiled pattern and replaces it with the "
"specified string. Escapes and backreferences such as [code]$1[/code] and "
@@ -42131,7 +43000,7 @@ msgid ""
msgstr ""
#: doc/classes/RenderingServer.xml:1222 doc/classes/RenderingServer.xml:1250
-#: doc/classes/RenderingServer.xml:1527
+#: doc/classes/RenderingServer.xml:1537
msgid "Not implemented in Godot 3.x."
msgstr ""
@@ -42278,30 +43147,30 @@ msgid ""
"OmniLight3D.omni_shadow_mode]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1481
+#: doc/classes/RenderingServer.xml:1491
msgid ""
"Sets the color of the light. Equivalent to [member Light3D.light_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1492
+#: doc/classes/RenderingServer.xml:1502
msgid ""
"Sets the cull mask for this Light3D. Lights only affect objects in the "
"selected layers. Equivalent to [member Light3D.light_cull_mask]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1503
+#: doc/classes/RenderingServer.xml:1513
msgid ""
"If [code]true[/code], light will subtract light instead of adding light. "
"Equivalent to [member Light3D.light_negative]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1516
+#: doc/classes/RenderingServer.xml:1526
msgid ""
"Sets the specified light parameter. See [enum LightParam] for options. "
"Equivalent to [method Light3D.set_param]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1538
+#: doc/classes/RenderingServer.xml:1548
msgid ""
"If [code]true[/code], reverses the backface culling of the mesh. This can be "
"useful when you have a flat mesh that has a light behind it. If you need to "
@@ -42310,29 +43179,25 @@ msgid ""
"to [member Light3D.shadow_reverse_cull_face]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1549
+#: doc/classes/RenderingServer.xml:1559
msgid ""
"If [code]true[/code], light will cast shadows. Equivalent to [member Light3D."
"shadow_enabled]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1560
+#: doc/classes/RenderingServer.xml:1570
msgid ""
"Sets the color of the shadow cast by the light. Equivalent to [member "
"Light3D.shadow_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1571
-msgid "Sets whether GI probes capture light information from this light."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:1584
+#: doc/classes/RenderingServer.xml:1583
msgid ""
"Returns a mesh of a sphere with the given amount of horizontal and vertical "
"subdivisions."
msgstr ""
-#: doc/classes/RenderingServer.xml:1591
+#: doc/classes/RenderingServer.xml:1590
msgid ""
"Creates an empty material and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42341,31 +43206,31 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:1603
+#: doc/classes/RenderingServer.xml:1602
msgid "Returns the value of a certain material's parameter."
msgstr ""
-#: doc/classes/RenderingServer.xml:1614
+#: doc/classes/RenderingServer.xml:1613
msgid "Sets an object's next material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1627
+#: doc/classes/RenderingServer.xml:1626
msgid "Sets a material's parameter."
msgstr ""
-#: doc/classes/RenderingServer.xml:1638
+#: doc/classes/RenderingServer.xml:1637
msgid "Sets a material's render priority."
msgstr ""
-#: doc/classes/RenderingServer.xml:1649
+#: doc/classes/RenderingServer.xml:1648
msgid "Sets a shader material's shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:1678
+#: doc/classes/RenderingServer.xml:1677
msgid "Removes all surfaces from a mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1685
+#: doc/classes/RenderingServer.xml:1684
msgid ""
"Creates a new mesh and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all [code]mesh_*[/"
@@ -42376,58 +43241,58 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:1696
+#: doc/classes/RenderingServer.xml:1695
msgid "Returns a mesh's blend shape count."
msgstr ""
-#: doc/classes/RenderingServer.xml:1705
+#: doc/classes/RenderingServer.xml:1704
msgid "Returns a mesh's blend shape mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:1714
+#: doc/classes/RenderingServer.xml:1713
msgid "Returns a mesh's custom aabb."
msgstr ""
-#: doc/classes/RenderingServer.xml:1723
+#: doc/classes/RenderingServer.xml:1722
msgid "Returns a mesh's number of surfaces."
msgstr ""
-#: doc/classes/RenderingServer.xml:1734
+#: doc/classes/RenderingServer.xml:1733
msgid "Sets a mesh's blend shape mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:1745
+#: doc/classes/RenderingServer.xml:1744
msgid "Sets a mesh's custom aabb."
msgstr ""
-#: doc/classes/RenderingServer.xml:1756
+#: doc/classes/RenderingServer.xml:1755
msgid "Returns a mesh's surface's buffer arrays."
msgstr ""
-#: doc/classes/RenderingServer.xml:1767
+#: doc/classes/RenderingServer.xml:1766
msgid "Returns a mesh's surface's arrays for blend shapes."
msgstr ""
-#: doc/classes/RenderingServer.xml:1782 doc/classes/RenderingServer.xml:1795
+#: doc/classes/RenderingServer.xml:1781 doc/classes/RenderingServer.xml:1794
msgid "Function is unused in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:1806
+#: doc/classes/RenderingServer.xml:1805
msgid "Returns a mesh's surface's material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1819
+#: doc/classes/RenderingServer.xml:1818
msgid "Sets a mesh's surface's material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1834
+#: doc/classes/RenderingServer.xml:1833
msgid ""
"Updates a specific region of a vertex buffer for the specified surface. "
"Warning: this function alters the vertex buffer directly with no safety "
"mechanisms, you can easily corrupt your mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1857
+#: doc/classes/RenderingServer.xml:1856
msgid ""
"Creates a new multimesh on the RenderingServer and returns an [RID] handle. "
"This RID will be used in all [code]multimesh_*[/code] RenderingServer "
@@ -42438,82 +43303,82 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:1868
+#: doc/classes/RenderingServer.xml:1867
msgid ""
"Calculates and returns the axis-aligned bounding box that encloses all "
"instances within the multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1885
+#: doc/classes/RenderingServer.xml:1884
msgid "Returns the number of instances allocated for this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1894
+#: doc/classes/RenderingServer.xml:1893
msgid ""
"Returns the RID of the mesh that will be used in drawing this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1903
+#: doc/classes/RenderingServer.xml:1902
msgid "Returns the number of visible instances for this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1914
+#: doc/classes/RenderingServer.xml:1913
msgid "Returns the color by which the specified instance will be modulated."
msgstr ""
-#: doc/classes/RenderingServer.xml:1925
+#: doc/classes/RenderingServer.xml:1924
msgid "Returns the custom data associated with the specified instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:1936
+#: doc/classes/RenderingServer.xml:1935
msgid "Returns the [Transform] of the specified instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:1947
+#: doc/classes/RenderingServer.xml:1946
msgid ""
"Returns the [Transform2D] of the specified instance. For use when the "
"multimesh is set to use 2D transforms."
msgstr ""
-#: doc/classes/RenderingServer.xml:1960
+#: doc/classes/RenderingServer.xml:1959
msgid ""
"Sets the color by which this instance will be modulated. Equivalent to "
"[method MultiMesh.set_instance_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1973
+#: doc/classes/RenderingServer.xml:1972
msgid ""
"Sets the custom data for this instance. Custom data is passed as a [Color], "
"but is interpreted as a [code]vec4[/code] in the shader. Equivalent to "
"[method MultiMesh.set_instance_custom_data]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1986
+#: doc/classes/RenderingServer.xml:1985
msgid ""
"Sets the [Transform] for this instance. Equivalent to [method MultiMesh."
"set_instance_transform]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1999
+#: doc/classes/RenderingServer.xml:1998
msgid ""
"Sets the [Transform2D] for this instance. For use when multimesh is used in "
"2D. Equivalent to [method MultiMesh.set_instance_transform_2d]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2020
+#: doc/classes/RenderingServer.xml:2019
msgid ""
"Sets the mesh to be drawn by the multimesh. Equivalent to [member MultiMesh."
"mesh]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2031
+#: doc/classes/RenderingServer.xml:2030
msgid ""
"Sets the number of instances visible at a given time. If -1, all instances "
"that have been allocated are drawn. Equivalent to [member MultiMesh."
"visible_instance_count]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2038
+#: doc/classes/RenderingServer.xml:2037
msgid ""
"Creates a new omni light and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID can be used in most "
@@ -42524,7 +43389,7 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2047
+#: doc/classes/RenderingServer.xml:2046
msgid ""
"Creates a particle system and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42535,23 +43400,23 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2058
+#: doc/classes/RenderingServer.xml:2057
msgid ""
"Calculates and returns the axis-aligned bounding box that contains all the "
"particles. Equivalent to [method GPUParticles3D.capture_aabb]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2067
+#: doc/classes/RenderingServer.xml:2066
msgid "Returns [code]true[/code] if particles are currently set to emitting."
msgstr ""
-#: doc/classes/RenderingServer.xml:2076
+#: doc/classes/RenderingServer.xml:2075
msgid ""
"Returns [code]true[/code] if particles are not emitting and particles are "
"set to inactive."
msgstr ""
-#: doc/classes/RenderingServer.xml:2085
+#: doc/classes/RenderingServer.xml:2084
msgid ""
"Add particle system to list of particle systems that need to be updated. "
"Update will take place on the next frame, or on the next call to [method "
@@ -42559,121 +43424,121 @@ msgid ""
"instances_cull_ray]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2094
+#: doc/classes/RenderingServer.xml:2093
msgid ""
"Reset the particles on the next update. Equivalent to [method GPUParticles3D."
"restart]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2105
+#: doc/classes/RenderingServer.xml:2104
msgid ""
"Sets the number of particles to be drawn and allocates the memory for them. "
"Equivalent to [member GPUParticles3D.amount]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2116
+#: doc/classes/RenderingServer.xml:2115
msgid ""
"Sets a custom axis-aligned bounding box for the particle system. Equivalent "
"to [member GPUParticles3D.visibility_aabb]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2127
+#: doc/classes/RenderingServer.xml:2126
msgid ""
"Sets the draw order of the particles to one of the named enums from [enum "
"ParticlesDrawOrder]. See [enum ParticlesDrawOrder] for options. Equivalent "
"to [member GPUParticles3D.draw_order]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2140
+#: doc/classes/RenderingServer.xml:2139
msgid ""
"Sets the mesh to be used for the specified draw pass. Equivalent to [member "
"GPUParticles3D.draw_pass_1], [member GPUParticles3D.draw_pass_2], [member "
"GPUParticles3D.draw_pass_3], and [member GPUParticles3D.draw_pass_4]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2151
+#: doc/classes/RenderingServer.xml:2150
msgid ""
"Sets the number of draw passes to use. Equivalent to [member GPUParticles3D."
"draw_passes]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2162
+#: doc/classes/RenderingServer.xml:2161
msgid ""
"Sets the [Transform] that will be used by the particles when they first emit."
msgstr ""
-#: doc/classes/RenderingServer.xml:2173
+#: doc/classes/RenderingServer.xml:2172
msgid ""
"If [code]true[/code], particles will emit over time. Setting to false does "
"not reset the particles, but only stops their emission. Equivalent to "
"[member GPUParticles3D.emitting]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2184
+#: doc/classes/RenderingServer.xml:2183
msgid ""
"Sets the explosiveness ratio. Equivalent to [member GPUParticles3D."
"explosiveness]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2195
+#: doc/classes/RenderingServer.xml:2194
msgid ""
"Sets the frame rate that the particle system rendering will be fixed to. "
"Equivalent to [member GPUParticles3D.fixed_fps]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2206
+#: doc/classes/RenderingServer.xml:2205
msgid ""
"If [code]true[/code], uses fractional delta which smooths the movement of "
"the particles. Equivalent to [member GPUParticles3D.fract_delta]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2217
+#: doc/classes/RenderingServer.xml:2216
msgid ""
"Sets the lifetime of each particle in the system. Equivalent to [member "
"GPUParticles3D.lifetime]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2228
+#: doc/classes/RenderingServer.xml:2227
msgid ""
"If [code]true[/code], particles will emit once and then stop. Equivalent to "
"[member GPUParticles3D.one_shot]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2239
+#: doc/classes/RenderingServer.xml:2238
msgid ""
"Sets the preprocess time for the particles animation. This lets you delay "
"starting an animation until after the particles have begun emitting. "
"Equivalent to [member GPUParticles3D.preprocess]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2250
+#: doc/classes/RenderingServer.xml:2249
msgid ""
"Sets the material for processing the particles. Note: this is not the "
"material used to draw the materials. Equivalent to [member GPUParticles3D."
"process_material]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2261
+#: doc/classes/RenderingServer.xml:2260
msgid ""
"Sets the emission randomness ratio. This randomizes the emission of "
"particles within their phase. Equivalent to [member GPUParticles3D."
"randomness]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2272
+#: doc/classes/RenderingServer.xml:2271
msgid ""
"Sets the speed scale of the particle system. Equivalent to [member "
"GPUParticles3D.speed_scale]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2283
+#: doc/classes/RenderingServer.xml:2282
msgid ""
"If [code]true[/code], particles use local coordinates. If [code]false[/code] "
"they use global coordinates. Equivalent to [member GPUParticles3D."
"local_coords]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2290
+#: doc/classes/RenderingServer.xml:2289
msgid ""
"Creates a reflection probe and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42684,85 +43549,64 @@ msgid ""
"[method instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2303
+#: doc/classes/RenderingServer.xml:2332
msgid ""
"If [code]true[/code], reflections will ignore sky contribution. Equivalent "
-"to [member ReflectionProbe.interior_enable]."
+"to [member ReflectionProbe.interior]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2314
+#: doc/classes/RenderingServer.xml:2343
msgid ""
"Sets the render cull mask for this reflection probe. Only instances with a "
"matching cull mask will be rendered by this probe. Equivalent to [member "
"ReflectionProbe.cull_mask]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2325
+#: doc/classes/RenderingServer.xml:2354
msgid ""
"If [code]true[/code], uses box projection. This can make reflections look "
"more correct in certain situations. Equivalent to [member ReflectionProbe."
"box_projection]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2336
+#: doc/classes/RenderingServer.xml:2365
msgid ""
"If [code]true[/code], computes shadows in the reflection probe. This makes "
"the reflection much slower to compute. Equivalent to [member ReflectionProbe."
"enable_shadows]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2347
+#: doc/classes/RenderingServer.xml:2376
msgid ""
"Sets the size of the area that the reflection probe will capture. Equivalent "
"to [member ReflectionProbe.extents]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2358
+#: doc/classes/RenderingServer.xml:2387
msgid ""
"Sets the intensity of the reflection probe. Intensity modulates the strength "
"of the reflection. Equivalent to [member ReflectionProbe.intensity]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2369
-msgid ""
-"Sets the ambient light color for this reflection probe when set to interior "
-"mode. Equivalent to [member ReflectionProbe.interior_ambient_color]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2380
-msgid ""
-"Sets the energy multiplier for this reflection probes ambient light "
-"contribution when set to interior mode. Equivalent to [member "
-"ReflectionProbe.interior_ambient_energy]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2391
-msgid ""
-"Sets the contribution value for how much the reflection affects the ambient "
-"light for this reflection probe when set to interior mode. Useful so that "
-"ambient light matches the color of the room. Equivalent to [member "
-"ReflectionProbe.interior_ambient_contrib]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2402
+#: doc/classes/RenderingServer.xml:2398
msgid ""
"Sets the max distance away from the probe an object can be before it is "
"culled. Equivalent to [member ReflectionProbe.max_distance]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2413
+#: doc/classes/RenderingServer.xml:2409
msgid ""
"Sets the origin offset to be used when this reflection probe is in box "
"project mode. Equivalent to [member ReflectionProbe.origin_offset]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2424
+#: doc/classes/RenderingServer.xml:2420
msgid ""
"Sets how often the reflection probe updates. Can either be once or every "
"frame. See [enum ReflectionProbeUpdateMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2437
+#: doc/classes/RenderingServer.xml:2433
msgid ""
"Schedules a callback to the corresponding named [code]method[/code] on "
"[code]where[/code] after a frame has been drawn.\n"
@@ -42770,7 +43614,7 @@ msgid ""
"[code]userdata[/code]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2445
+#: doc/classes/RenderingServer.xml:2441
msgid ""
"Creates a scenario and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all "
@@ -42780,24 +43624,24 @@ msgid ""
"The scenario is the 3D world that all the visual instances exist in."
msgstr ""
-#: doc/classes/RenderingServer.xml:2458
+#: doc/classes/RenderingServer.xml:2454
msgid ""
"Sets the [enum ScenarioDebugMode] for this scenario. See [enum "
"ScenarioDebugMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2469
+#: doc/classes/RenderingServer.xml:2465
msgid "Sets the environment that will be used with this scenario."
msgstr ""
-#: doc/classes/RenderingServer.xml:2480
+#: doc/classes/RenderingServer.xml:2476
msgid ""
"Sets the fallback environment to be used by this scenario. The fallback "
"environment is used if no environment is set. Internally, this is used by "
"the editor to provide a default environment."
msgstr ""
-#: doc/classes/RenderingServer.xml:2495
+#: doc/classes/RenderingServer.xml:2491
msgid ""
"Sets a boot image. The color defines the background color. If [code]scale[/"
"code] is [code]true[/code], the image will be scaled to fit the screen size. "
@@ -42806,19 +43650,19 @@ msgid ""
"the image will be scaled with nearest-neighbor interpolation."
msgstr ""
-#: doc/classes/RenderingServer.xml:2504
+#: doc/classes/RenderingServer.xml:2500
msgid ""
"If [code]true[/code], the engine will generate wireframes for use with the "
"wireframe debug mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:2513
+#: doc/classes/RenderingServer.xml:2509
msgid ""
"Sets the default clear color which is used when a specific clear color has "
"not been selected."
msgstr ""
-#: doc/classes/RenderingServer.xml:2520
+#: doc/classes/RenderingServer.xml:2516
msgid ""
"Creates an empty shader and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42827,47 +43671,47 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2530
+#: doc/classes/RenderingServer.xml:2526
msgid "Returns a shader's code."
msgstr ""
-#: doc/classes/RenderingServer.xml:2541
+#: doc/classes/RenderingServer.xml:2537
msgid "Returns a default texture from a shader searched by name."
msgstr ""
-#: doc/classes/RenderingServer.xml:2560
+#: doc/classes/RenderingServer.xml:2556
msgid "Returns the parameters of a shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:2571
+#: doc/classes/RenderingServer.xml:2567
msgid "Sets a shader's code."
msgstr ""
-#: doc/classes/RenderingServer.xml:2584
+#: doc/classes/RenderingServer.xml:2580
msgid "Sets a shader's default texture. Overwrites the texture given by name."
msgstr ""
-#: doc/classes/RenderingServer.xml:2597
+#: doc/classes/RenderingServer.xml:2593
msgid "Allocates the GPU buffers for this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2608
+#: doc/classes/RenderingServer.xml:2604
msgid "Returns the [Transform] set for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2619
+#: doc/classes/RenderingServer.xml:2615
msgid "Returns the [Transform2D] set for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2632
+#: doc/classes/RenderingServer.xml:2628
msgid "Sets the [Transform] for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2645
+#: doc/classes/RenderingServer.xml:2641
msgid "Sets the [Transform2D] for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2652
+#: doc/classes/RenderingServer.xml:2648
msgid ""
"Creates a skeleton and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all "
@@ -42876,11 +43720,11 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2662
+#: doc/classes/RenderingServer.xml:2658
msgid "Returns the number of bones allocated for this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2669
+#: doc/classes/RenderingServer.xml:2665
msgid ""
"Creates an empty sky and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all [code]sky_*[/"
@@ -42889,13 +43733,13 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2681
+#: doc/classes/RenderingServer.xml:2677
msgid ""
"Sets the material that the sky uses to render the background and reflection "
"maps."
msgstr ""
-#: doc/classes/RenderingServer.xml:2688
+#: doc/classes/RenderingServer.xml:2684
msgid ""
"Creates a spot light and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID can be used in most [code]light_*[/"
@@ -42906,15 +43750,15 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2717
+#: doc/classes/RenderingServer.xml:2713
msgid "Sets a viewport's camera."
msgstr ""
-#: doc/classes/RenderingServer.xml:2728
+#: doc/classes/RenderingServer.xml:2724
msgid "Sets a viewport's canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:2741
+#: doc/classes/RenderingServer.xml:2737
msgid ""
"Copies the viewport to a region of the screen specified by [code]rect[/"
"code]. If [method viewport_set_render_direct_to_screen] is [code]true[/"
@@ -42936,7 +43780,7 @@ msgid ""
"viewport_set_render_direct_to_screen]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2755
+#: doc/classes/RenderingServer.xml:2751
msgid ""
"Creates an empty viewport and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42945,72 +43789,72 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2767
+#: doc/classes/RenderingServer.xml:2763
msgid ""
"Returns a viewport's render information. For options, see the [enum "
"ViewportRenderInfo] constants."
msgstr ""
-#: doc/classes/RenderingServer.xml:2776
+#: doc/classes/RenderingServer.xml:2772
msgid "Returns the viewport's last rendered frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:2787
+#: doc/classes/RenderingServer.xml:2783
msgid "Detaches a viewport from a canvas and vice versa."
msgstr ""
-#: doc/classes/RenderingServer.xml:2798
+#: doc/classes/RenderingServer.xml:2794
msgid "If [code]true[/code], sets the viewport active, else sets it inactive."
msgstr ""
-#: doc/classes/RenderingServer.xml:2813
+#: doc/classes/RenderingServer.xml:2809
msgid ""
"Sets the stacking order for a viewport's canvas.\n"
"[code]layer[/code] is the actual canvas layer, while [code]sublayer[/code] "
"specifies the stacking order of the canvas among those in the same layer."
msgstr ""
-#: doc/classes/RenderingServer.xml:2827
+#: doc/classes/RenderingServer.xml:2823
msgid "Sets the transformation of a viewport's canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:2838
+#: doc/classes/RenderingServer.xml:2834
msgid ""
"Sets the clear mode of a viewport. See [enum ViewportClearMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2849
+#: doc/classes/RenderingServer.xml:2845
msgid ""
"Sets the debug draw mode of a viewport. See [enum ViewportDebugDraw] for "
"options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2860
+#: doc/classes/RenderingServer.xml:2856
msgid ""
"If [code]true[/code], rendering of a viewport's environment is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:2871
+#: doc/classes/RenderingServer.xml:2867
msgid "Sets the viewport's global transformation matrix."
msgstr ""
-#: doc/classes/RenderingServer.xml:2882
+#: doc/classes/RenderingServer.xml:2878
msgid "If [code]true[/code], the viewport's canvas is not rendered."
msgstr ""
-#: doc/classes/RenderingServer.xml:2893
+#: doc/classes/RenderingServer.xml:2889
msgid "Currently unimplemented in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:2904
+#: doc/classes/RenderingServer.xml:2900
msgid "Sets the anti-aliasing mode. See [enum ViewportMSAA] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2915
+#: doc/classes/RenderingServer.xml:2911
msgid "Sets the viewport's parent to another viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:2926
+#: doc/classes/RenderingServer.xml:2922
msgid ""
"If [code]true[/code], render the contents of the viewport directly to "
"screen. This allows a low-level optimization where you can skip drawing a "
@@ -43026,455 +43870,455 @@ msgid ""
"significantly larger than the window size."
msgstr ""
-#: doc/classes/RenderingServer.xml:2937
+#: doc/classes/RenderingServer.xml:2933
msgid ""
"Sets a viewport's scenario.\n"
"The scenario contains information about the [enum ScenarioDebugMode], "
"environment information, reflection atlas etc."
msgstr ""
-#: doc/classes/RenderingServer.xml:2951
+#: doc/classes/RenderingServer.xml:2947
msgid "Sets the shadow atlas quadrant's subdivision."
msgstr ""
-#: doc/classes/RenderingServer.xml:2962
+#: doc/classes/RenderingServer.xml:2958
msgid ""
"Sets the size of the shadow atlas's images (used for omni and spot lights). "
"The value will be rounded up to the nearest power of 2."
msgstr ""
-#: doc/classes/RenderingServer.xml:2975
+#: doc/classes/RenderingServer.xml:2971
msgid "Sets the viewport's width and height."
msgstr ""
-#: doc/classes/RenderingServer.xml:2986
+#: doc/classes/RenderingServer.xml:2982
msgid ""
"If [code]true[/code], the viewport renders its background as transparent."
msgstr ""
-#: doc/classes/RenderingServer.xml:2997
+#: doc/classes/RenderingServer.xml:2993
msgid ""
"Sets when the viewport should be updated. See [enum ViewportUpdateMode] "
"constants for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:3008
+#: doc/classes/RenderingServer.xml:3004
msgid ""
"If [code]true[/code], the viewport uses augmented or virtual reality "
"technologies. See [XRInterface]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3014
+#: doc/classes/RenderingServer.xml:3010
msgid ""
"If [code]false[/code], disables rendering completely, but the engine logic "
"is still being processed. You can call [method force_draw] to draw a frame "
"even with rendering disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3020
+#: doc/classes/RenderingServer.xml:3016
msgid ""
"Emitted at the end of the frame, after the RenderingServer has finished "
"updating all the Viewports."
msgstr ""
-#: doc/classes/RenderingServer.xml:3025
+#: doc/classes/RenderingServer.xml:3021
msgid ""
"Emitted at the beginning of the frame, before the RenderingServer updates "
"all the Viewports."
msgstr ""
-#: doc/classes/RenderingServer.xml:3031
+#: doc/classes/RenderingServer.xml:3027
msgid "Marks an error that shows that the index array is empty."
msgstr ""
-#: doc/classes/RenderingServer.xml:3034
+#: doc/classes/RenderingServer.xml:3030
msgid "Number of weights/bones per vertex."
msgstr ""
-#: doc/classes/RenderingServer.xml:3037
+#: doc/classes/RenderingServer.xml:3033
msgid "The minimum Z-layer for canvas items."
msgstr ""
-#: doc/classes/RenderingServer.xml:3040
+#: doc/classes/RenderingServer.xml:3036
msgid "The maximum Z-layer for canvas items."
msgstr ""
-#: doc/classes/RenderingServer.xml:3043
+#: doc/classes/RenderingServer.xml:3039
msgid ""
"Max number of glow levels that can be used with glow post-process effect."
msgstr ""
-#: doc/classes/RenderingServer.xml:3046
+#: doc/classes/RenderingServer.xml:3042
msgid "Unused enum in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:3067
+#: doc/classes/RenderingServer.xml:3063
msgid "Shader is a 3D shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3070
+#: doc/classes/RenderingServer.xml:3066
msgid "Shader is a 2D shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3073
+#: doc/classes/RenderingServer.xml:3069
msgid "Shader is a particle shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3076
+#: doc/classes/RenderingServer.xml:3072
msgid "Shader is a sky shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3079
+#: doc/classes/RenderingServer.xml:3075
msgid "Represents the size of the [enum ShaderMode] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3082
+#: doc/classes/RenderingServer.xml:3078
msgid "The minimum renderpriority of all materials."
msgstr ""
-#: doc/classes/RenderingServer.xml:3085
+#: doc/classes/RenderingServer.xml:3081
msgid "The maximum renderpriority of all materials."
msgstr ""
-#: doc/classes/RenderingServer.xml:3088
+#: doc/classes/RenderingServer.xml:3084
msgid "Array is a vertex array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3091
+#: doc/classes/RenderingServer.xml:3087
msgid "Array is a normal array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3094
+#: doc/classes/RenderingServer.xml:3090
msgid "Array is a tangent array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3097
+#: doc/classes/RenderingServer.xml:3093
msgid "Array is a color array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3100
+#: doc/classes/RenderingServer.xml:3096
msgid "Array is an UV coordinates array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3103
+#: doc/classes/RenderingServer.xml:3099
msgid "Array is an UV coordinates array for the second UV coordinates."
msgstr ""
-#: doc/classes/RenderingServer.xml:3106
+#: doc/classes/RenderingServer.xml:3102
msgid "Array contains bone information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3109
+#: doc/classes/RenderingServer.xml:3105
msgid "Array is weight information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3112
+#: doc/classes/RenderingServer.xml:3108
msgid "Array is index array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3118
+#: doc/classes/RenderingServer.xml:3114
msgid "Flag used to mark a vertex array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3121
+#: doc/classes/RenderingServer.xml:3117
msgid "Flag used to mark a normal array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3124
+#: doc/classes/RenderingServer.xml:3120
msgid "Flag used to mark a tangent array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3127
+#: doc/classes/RenderingServer.xml:3123
msgid "Flag used to mark a color array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3130
+#: doc/classes/RenderingServer.xml:3126
msgid "Flag used to mark an UV coordinates array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3133
+#: doc/classes/RenderingServer.xml:3129
msgid ""
"Flag used to mark an UV coordinates array for the second UV coordinates."
msgstr ""
-#: doc/classes/RenderingServer.xml:3136
+#: doc/classes/RenderingServer.xml:3132
msgid "Flag used to mark a bone information array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3139
+#: doc/classes/RenderingServer.xml:3135
msgid "Flag used to mark a weights array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3142
+#: doc/classes/RenderingServer.xml:3138
msgid "Flag used to mark an index array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3171
+#: doc/classes/RenderingServer.xml:3167
msgid "Primitive to draw consists of points."
msgstr ""
-#: doc/classes/RenderingServer.xml:3174
+#: doc/classes/RenderingServer.xml:3170
msgid "Primitive to draw consists of lines."
msgstr ""
-#: doc/classes/RenderingServer.xml:3177
+#: doc/classes/RenderingServer.xml:3173
msgid "Primitive to draw consists of a line strip from start to end."
msgstr ""
-#: doc/classes/RenderingServer.xml:3180
+#: doc/classes/RenderingServer.xml:3176
msgid "Primitive to draw consists of triangles."
msgstr ""
-#: doc/classes/RenderingServer.xml:3183
+#: doc/classes/RenderingServer.xml:3179
msgid ""
"Primitive to draw consists of a triangle strip (the last 3 vertices are "
"always combined to make a triangle)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3186
+#: doc/classes/RenderingServer.xml:3182
msgid "Represents the size of the [enum PrimitiveType] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3195
+#: doc/classes/RenderingServer.xml:3191
msgid "Use [Transform2D] to store MultiMesh transform."
msgstr ""
-#: doc/classes/RenderingServer.xml:3198
+#: doc/classes/RenderingServer.xml:3194
msgid "Use [Transform] to store MultiMesh transform."
msgstr ""
-#: doc/classes/RenderingServer.xml:3201
+#: doc/classes/RenderingServer.xml:3197
msgid "Is a directional (sun) light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3204
+#: doc/classes/RenderingServer.xml:3200
msgid "Is an omni light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3207
+#: doc/classes/RenderingServer.xml:3203
msgid "Is a spot light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3210
+#: doc/classes/RenderingServer.xml:3206
msgid "The light's energy."
msgstr ""
-#: doc/classes/RenderingServer.xml:3215
+#: doc/classes/RenderingServer.xml:3211
msgid "The light's influence on specularity."
msgstr ""
-#: doc/classes/RenderingServer.xml:3218
+#: doc/classes/RenderingServer.xml:3214
msgid "The light's range."
msgstr ""
-#: doc/classes/RenderingServer.xml:3221
+#: doc/classes/RenderingServer.xml:3217
msgid ""
"The size of the light when using spot light or omni light. The angular size "
"of the light when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3224
+#: doc/classes/RenderingServer.xml:3220
msgid "The light's attenuation."
msgstr ""
-#: doc/classes/RenderingServer.xml:3227
+#: doc/classes/RenderingServer.xml:3223
msgid "The spotlight's angle."
msgstr ""
-#: doc/classes/RenderingServer.xml:3230
+#: doc/classes/RenderingServer.xml:3226
msgid "The spotlight's attenuation."
msgstr ""
-#: doc/classes/RenderingServer.xml:3233
+#: doc/classes/RenderingServer.xml:3229
msgid "Max distance that shadows will be rendered."
msgstr ""
-#: doc/classes/RenderingServer.xml:3236
+#: doc/classes/RenderingServer.xml:3232
msgid "Proportion of shadow atlas occupied by the first split."
msgstr ""
-#: doc/classes/RenderingServer.xml:3239
+#: doc/classes/RenderingServer.xml:3235
msgid "Proportion of shadow atlas occupied by the second split."
msgstr ""
-#: doc/classes/RenderingServer.xml:3242
+#: doc/classes/RenderingServer.xml:3238
msgid ""
"Proportion of shadow atlas occupied by the third split. The fourth split "
"occupies the rest."
msgstr ""
-#: doc/classes/RenderingServer.xml:3245
+#: doc/classes/RenderingServer.xml:3241
msgid ""
"Proportion of shadow max distance where the shadow will start to fade out."
msgstr ""
-#: doc/classes/RenderingServer.xml:3248
+#: doc/classes/RenderingServer.xml:3244
msgid ""
"Normal bias used to offset shadow lookup by object normal. Can be used to "
"fix self-shadowing artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3251
+#: doc/classes/RenderingServer.xml:3247
msgid "Bias the shadow lookup to fix self-shadowing artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3257
+#: doc/classes/RenderingServer.xml:3253
msgid ""
"Blurs the edges of the shadow. Can be used to hide pixel artifacts in low "
"resolution shadow maps. A high value can make shadows appear grainy and can "
"cause other unwanted artifacts. Try to keep as near default as possible."
msgstr ""
-#: doc/classes/RenderingServer.xml:3262
+#: doc/classes/RenderingServer.xml:3258
msgid "Represents the size of the [enum LightParam] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3265
+#: doc/classes/RenderingServer.xml:3267
msgid "Use a dual paraboloid shadow map for omni lights."
msgstr ""
-#: doc/classes/RenderingServer.xml:3268
+#: doc/classes/RenderingServer.xml:3270
msgid ""
"Use a cubemap shadow map for omni lights. Slower but better quality than "
"dual paraboloid."
msgstr ""
-#: doc/classes/RenderingServer.xml:3271
+#: doc/classes/RenderingServer.xml:3273
msgid "Use orthogonal shadow projection for directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3274
+#: doc/classes/RenderingServer.xml:3276
msgid "Use 2 splits for shadow projection when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3277
+#: doc/classes/RenderingServer.xml:3279
msgid "Use 4 splits for shadow projection when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3280
+#: doc/classes/RenderingServer.xml:3282
msgid ""
"Keeps shadows stable as camera moves but has lower effective resolution."
msgstr ""
-#: doc/classes/RenderingServer.xml:3283
+#: doc/classes/RenderingServer.xml:3285
msgid ""
"Optimize use of shadow maps, increasing the effective resolution. But may "
"result in shadows moving or flickering slightly."
msgstr ""
-#: doc/classes/RenderingServer.xml:3286
+#: doc/classes/RenderingServer.xml:3288
msgid "Reflection probe will update reflections once and then stop."
msgstr ""
-#: doc/classes/RenderingServer.xml:3289
+#: doc/classes/RenderingServer.xml:3291
msgid ""
"Reflection probe will update each frame. This mode is necessary to capture "
"moving objects."
msgstr ""
-#: doc/classes/RenderingServer.xml:3302
+#: doc/classes/RenderingServer.xml:3310
msgid "Draw particles in the order that they appear in the particles array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3305
+#: doc/classes/RenderingServer.xml:3313
msgid "Sort particles based on their lifetime."
msgstr ""
-#: doc/classes/RenderingServer.xml:3308
+#: doc/classes/RenderingServer.xml:3316
msgid "Sort particles based on their distance to the camera."
msgstr ""
-#: doc/classes/RenderingServer.xml:3311
+#: doc/classes/RenderingServer.xml:3319
msgid "Do not update the viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:3314
+#: doc/classes/RenderingServer.xml:3322
msgid "Update the viewport once then set to disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3317
+#: doc/classes/RenderingServer.xml:3325
msgid "Update the viewport whenever it is visible."
msgstr ""
-#: doc/classes/RenderingServer.xml:3322
+#: doc/classes/RenderingServer.xml:3330
msgid "Always update the viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:3325
+#: doc/classes/RenderingServer.xml:3333
msgid "The viewport is always cleared before drawing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3328
+#: doc/classes/RenderingServer.xml:3336
msgid "The viewport is never cleared before drawing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3331
+#: doc/classes/RenderingServer.xml:3339
msgid ""
"The viewport is cleared once, then the clear mode is set to [constant "
"VIEWPORT_CLEAR_NEVER]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3334
+#: doc/classes/RenderingServer.xml:3342
msgid "Multisample antialiasing is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3337
+#: doc/classes/RenderingServer.xml:3345
msgid "Multisample antialiasing uses 2 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3340
+#: doc/classes/RenderingServer.xml:3348
msgid "Multisample antialiasing uses 4 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3343
+#: doc/classes/RenderingServer.xml:3351
msgid "Multisample antialiasing uses 8 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3346
+#: doc/classes/RenderingServer.xml:3354
msgid "Multisample antialiasing uses 16 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3357
+#: doc/classes/RenderingServer.xml:3365
msgid "Number of objects drawn in a single frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3360
+#: doc/classes/RenderingServer.xml:3368
msgid "Number of vertices drawn in a single frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3363
+#: doc/classes/RenderingServer.xml:3371
msgid "Number of material changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3366
+#: doc/classes/RenderingServer.xml:3374
msgid "Number of shader changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3369
+#: doc/classes/RenderingServer.xml:3377
msgid "Number of surface changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3372
+#: doc/classes/RenderingServer.xml:3380
msgid "Number of draw calls during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3375
+#: doc/classes/RenderingServer.xml:3383
msgid "Represents the size of the [enum ViewportRenderInfo] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3378
+#: doc/classes/RenderingServer.xml:3386
msgid "Debug draw is disabled. Default setting."
msgstr ""
-#: doc/classes/RenderingServer.xml:3381 doc/classes/Viewport.xml:348
+#: doc/classes/RenderingServer.xml:3389 doc/classes/Viewport.xml:348
msgid "Objects are displayed without light information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3384
+#: doc/classes/RenderingServer.xml:3392
msgid "Objects are displayed with only light information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3387 doc/classes/Viewport.xml:353
+#: doc/classes/RenderingServer.xml:3395 doc/classes/Viewport.xml:353
msgid ""
"Objects are displayed semi-transparent with additive blending so you can see "
"where they are drawing over top of one another. A higher overdraw means you "
@@ -43482,41 +44326,41 @@ msgid ""
"others."
msgstr ""
-#: doc/classes/RenderingServer.xml:3390
+#: doc/classes/RenderingServer.xml:3398
msgid "Debug draw draws objects in wireframe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3393
+#: doc/classes/RenderingServer.xml:3401
msgid ""
"Normal buffer is drawn instead of regular scene so you can see the per-pixel "
"normals that will be used by post-processing effects."
msgstr ""
-#: doc/classes/RenderingServer.xml:3396 doc/classes/Viewport.xml:361
+#: doc/classes/RenderingServer.xml:3404 doc/classes/Viewport.xml:361
msgid "Objects are displayed with only the albedo value from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3399 doc/classes/Viewport.xml:364
+#: doc/classes/RenderingServer.xml:3407 doc/classes/Viewport.xml:364
msgid "Objects are displayed with only the lighting value from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3402 doc/classes/Viewport.xml:367
+#: doc/classes/RenderingServer.xml:3410 doc/classes/Viewport.xml:367
msgid "Objects are displayed with only the emission color from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3405 doc/classes/Viewport.xml:370
+#: doc/classes/RenderingServer.xml:3413 doc/classes/Viewport.xml:370
msgid ""
"Draws the shadow atlas that stores shadows from [OmniLight3D]s and "
"[SpotLight3D]s in the upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3408 doc/classes/Viewport.xml:373
+#: doc/classes/RenderingServer.xml:3416 doc/classes/Viewport.xml:373
msgid ""
"Draws the shadow atlas that stores shadows from [DirectionalLight3D]s in the "
"upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3413
+#: doc/classes/RenderingServer.xml:3421
msgid ""
"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 "
@@ -43524,21 +44368,14 @@ msgid ""
"your [WorldEnvironment]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3416 doc/classes/Viewport.xml:381
-msgid ""
-"Draws the roughness limiter post process over the Viewport so you can see "
-"where it has an effect. It must be enabled in [member ProjectSettings."
-"rendering/quality/screen_filters/screen_space_roughness_limiter] to work."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:3419
+#: doc/classes/RenderingServer.xml:3424
msgid ""
"Colors each PSSM split for the [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."
msgstr ""
-#: doc/classes/RenderingServer.xml:3424
+#: doc/classes/RenderingServer.xml:3435
msgid ""
"Uses high quality importance sampling to process the radiance map. In "
"general, this results in much higher quality than [constant Sky."
@@ -43549,7 +44386,7 @@ msgid ""
"ggx_samples]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3427
+#: doc/classes/RenderingServer.xml:3438
msgid ""
"Uses the fast filtering algorithm to process the radiance map. In general "
"this results in lower quality, but substantially faster run times.\n"
@@ -43557,347 +44394,347 @@ msgid ""
"[member Sky.radiance_size] must be set to [constant Sky.RADIANCE_SIZE_256]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3431
+#: doc/classes/RenderingServer.xml:3442
msgid "Use the clear color as background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3434
+#: doc/classes/RenderingServer.xml:3445
msgid "Use a specified color as the background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3437
+#: doc/classes/RenderingServer.xml:3448
msgid "Use a sky resource for the background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3440
+#: doc/classes/RenderingServer.xml:3451
msgid ""
"Use a specified canvas layer as the background. This can be useful for "
"instantiating a 2D scene in a 3D world."
msgstr ""
-#: doc/classes/RenderingServer.xml:3443
+#: doc/classes/RenderingServer.xml:3454
msgid ""
"Do not clear the background, use whatever was rendered last frame as the "
"background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3449
+#: doc/classes/RenderingServer.xml:3460
msgid "Represents the size of the [enum EnvironmentBG] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3488
+#: doc/classes/RenderingServer.xml:3499
msgid "Output color as they came in."
msgstr ""
-#: doc/classes/RenderingServer.xml:3491
+#: doc/classes/RenderingServer.xml:3502
msgid "Use the Reinhard tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3494
+#: doc/classes/RenderingServer.xml:3505
msgid "Use the filmic tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3497
+#: doc/classes/RenderingServer.xml:3508
msgid "Use the ACES tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3508
+#: doc/classes/RenderingServer.xml:3519
msgid "Disables the blur set for SSAO. Will make SSAO look noisier."
msgstr ""
-#: doc/classes/RenderingServer.xml:3511
+#: doc/classes/RenderingServer.xml:3522
msgid "Perform a 1x1 blur on the SSAO output."
msgstr ""
-#: doc/classes/RenderingServer.xml:3514
+#: doc/classes/RenderingServer.xml:3525
msgid "Performs a 2x2 blur on the SSAO output."
msgstr ""
-#: doc/classes/RenderingServer.xml:3517
+#: doc/classes/RenderingServer.xml:3528
msgid "Performs a 3x3 blur on the SSAO output. Use this for smoothest SSAO."
msgstr ""
-#: doc/classes/RenderingServer.xml:3520
+#: doc/classes/RenderingServer.xml:3531
msgid "Lowest quality of screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3523
+#: doc/classes/RenderingServer.xml:3534
msgid "Medium quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3526
+#: doc/classes/RenderingServer.xml:3537
msgid "High quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3529
+#: doc/classes/RenderingServer.xml:3540
msgid "Highest quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3540
+#: doc/classes/RenderingServer.xml:3551
msgid ""
"Lowest quality DOF blur. This is the fastest setting, but you may be able to "
"see filtering artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3543
+#: doc/classes/RenderingServer.xml:3554
msgid "Low quality DOF blur."
msgstr ""
-#: doc/classes/RenderingServer.xml:3546
+#: doc/classes/RenderingServer.xml:3557
msgid "Medium quality DOF blur."
msgstr ""
-#: doc/classes/RenderingServer.xml:3549
+#: doc/classes/RenderingServer.xml:3560
msgid ""
"Highest quality DOF blur. Results in the smoothest looking blur by taking "
"the most samples, but is also significantly slower."
msgstr ""
-#: doc/classes/RenderingServer.xml:3552
+#: doc/classes/RenderingServer.xml:3563
msgid ""
"Calculate the DOF blur using a box filter. The fastest option, but results "
"in obvious lines in blur pattern."
msgstr ""
-#: doc/classes/RenderingServer.xml:3555
+#: doc/classes/RenderingServer.xml:3566
msgid "Calculates DOF blur using a hexagon shaped filter."
msgstr ""
-#: doc/classes/RenderingServer.xml:3558
+#: doc/classes/RenderingServer.xml:3569
msgid ""
"Calculates DOF blur using a circle shaped filter. Best quality and most "
"realistic, but slowest. Use only for areas where a lot of performance can be "
"dedicated to post-processing (e.g. cutscenes)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3573
+#: doc/classes/RenderingServer.xml:3584
msgid "Do not use a debug mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:3576
+#: doc/classes/RenderingServer.xml:3587
msgid "Draw all objects as wireframe models."
msgstr ""
-#: doc/classes/RenderingServer.xml:3579
+#: doc/classes/RenderingServer.xml:3590
msgid ""
"Draw all objects in a way that displays how much overdraw is occurring. "
"Overdraw occurs when a section of pixels is drawn and shaded and then "
"another object covers it up. To optimize a scene, you should reduce overdraw."
msgstr ""
-#: doc/classes/RenderingServer.xml:3582
+#: doc/classes/RenderingServer.xml:3593
msgid ""
"Draw all objects without shading. Equivalent to setting all objects shaders "
"to [code]unshaded[/code]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3585
+#: doc/classes/RenderingServer.xml:3596
msgid "The instance does not have a type."
msgstr ""
-#: doc/classes/RenderingServer.xml:3588
+#: doc/classes/RenderingServer.xml:3599
msgid "The instance is a mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:3591
+#: doc/classes/RenderingServer.xml:3602
msgid "The instance is a multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:3594
+#: doc/classes/RenderingServer.xml:3605
msgid "The instance is an immediate geometry."
msgstr ""
-#: doc/classes/RenderingServer.xml:3597
+#: doc/classes/RenderingServer.xml:3608
msgid "The instance is a particle emitter."
msgstr ""
-#: doc/classes/RenderingServer.xml:3600
+#: doc/classes/RenderingServer.xml:3611
msgid "The instance is a light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3603
+#: doc/classes/RenderingServer.xml:3614
msgid "The instance is a reflection probe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3606
+#: doc/classes/RenderingServer.xml:3617
msgid "The instance is a decal."
msgstr ""
-#: doc/classes/RenderingServer.xml:3609
+#: doc/classes/RenderingServer.xml:3620
msgid "The instance is a GI probe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3612
+#: doc/classes/RenderingServer.xml:3623
msgid "The instance is a lightmap."
msgstr ""
-#: doc/classes/RenderingServer.xml:3615
+#: doc/classes/RenderingServer.xml:3626
msgid "Represents the size of the [enum InstanceType] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3618
+#: doc/classes/RenderingServer.xml:3629
msgid ""
"A combination of the flags of geometry instances (mesh, multimesh, immediate "
"and particles)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3621
+#: doc/classes/RenderingServer.xml:3632
msgid "Allows the instance to be used in baked lighting."
msgstr ""
-#: doc/classes/RenderingServer.xml:3624
+#: doc/classes/RenderingServer.xml:3635
msgid "Allows the instance to be used with dynamic global illumination."
msgstr ""
-#: doc/classes/RenderingServer.xml:3627
+#: doc/classes/RenderingServer.xml:3638
msgid "When set, manually requests to draw geometry on next frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3630
+#: doc/classes/RenderingServer.xml:3641
msgid "Represents the size of the [enum InstanceFlags] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3633
+#: doc/classes/RenderingServer.xml:3644
msgid "Disable shadows from this instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:3636
+#: doc/classes/RenderingServer.xml:3647
msgid "Cast shadows from this instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:3639
+#: doc/classes/RenderingServer.xml:3650
msgid ""
"Disable backface culling when rendering the shadow of the object. This is "
"slightly slower but may result in more correct shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3642
+#: doc/classes/RenderingServer.xml:3653
msgid ""
"Only render the shadows from the object. The object itself will not be drawn."
msgstr ""
-#: doc/classes/RenderingServer.xml:3645
+#: doc/classes/RenderingServer.xml:3656
msgid "The nine patch gets stretched where needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3648
+#: doc/classes/RenderingServer.xml:3659
msgid "The nine patch gets filled with tiles where needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3651
+#: doc/classes/RenderingServer.xml:3662
msgid ""
"The nine patch gets filled with tiles where needed and stretches them a bit "
"if needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3654
+#: doc/classes/RenderingServer.xml:3665
msgid "Uses the default filter mode for this [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3666 doc/classes/Viewport.xml:399
+#: doc/classes/RenderingServer.xml:3677 doc/classes/Viewport.xml:402
msgid ""
"The texture filter blends between the nearest 4 pixels and between the "
"nearest 2 mipmaps."
msgstr ""
-#: doc/classes/RenderingServer.xml:3675
+#: doc/classes/RenderingServer.xml:3686
msgid "Max value for [enum CanvasItemTextureFilter] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3678
+#: doc/classes/RenderingServer.xml:3689
msgid "Uses the default repeat mode for this [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3681 doc/classes/Viewport.xml:405
+#: doc/classes/RenderingServer.xml:3692 doc/classes/Viewport.xml:408
msgid ""
"Disables textures repeating. Instead, when reading UVs outside the 0-1 "
"range, the value will be clamped to the edge of the texture, resulting in a "
"stretched out look at the borders of the texture."
msgstr ""
-#: doc/classes/RenderingServer.xml:3687 doc/classes/Viewport.xml:411
+#: doc/classes/RenderingServer.xml:3698 doc/classes/Viewport.xml:414
msgid ""
"Flip the texture when repeating so that the edge lines up instead of "
"abruptly changing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3690
+#: doc/classes/RenderingServer.xml:3701
msgid "Max value for [enum CanvasItemTextureRepeat] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3693
+#: doc/classes/RenderingServer.xml:3704
msgid "Adds light color additive to the canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:3696
+#: doc/classes/RenderingServer.xml:3707
msgid "Adds light color subtractive to the canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:3699
+#: doc/classes/RenderingServer.xml:3710
msgid "The light adds color depending on transparency."
msgstr ""
-#: doc/classes/RenderingServer.xml:3702
+#: doc/classes/RenderingServer.xml:3713
msgid "The light adds color depending on mask."
msgstr ""
-#: doc/classes/RenderingServer.xml:3705
+#: doc/classes/RenderingServer.xml:3716
msgid "Do not apply a filter to canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3708
+#: doc/classes/RenderingServer.xml:3719
msgid "Use PCF5 filtering to filter canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3711
+#: doc/classes/RenderingServer.xml:3722
msgid "Use PCF13 filtering to filter canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3714
+#: doc/classes/RenderingServer.xml:3725
msgid "Max value of the [enum CanvasLightShadowFilter] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3717
+#: doc/classes/RenderingServer.xml:3728
msgid "Culling of the canvas occluder is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3720
+#: doc/classes/RenderingServer.xml:3731
msgid "Culling of the canvas occluder is clockwise."
msgstr ""
-#: doc/classes/RenderingServer.xml:3723
+#: doc/classes/RenderingServer.xml:3734
msgid "Culling of the canvas occluder is counterclockwise."
msgstr ""
-#: doc/classes/RenderingServer.xml:3784
+#: doc/classes/RenderingServer.xml:3795
msgid "The amount of objects in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3787
+#: doc/classes/RenderingServer.xml:3798
msgid "The amount of vertices in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3790
+#: doc/classes/RenderingServer.xml:3801
msgid "The amount of modified materials in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3793
+#: doc/classes/RenderingServer.xml:3804
msgid "The amount of shader rebinds in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3796
+#: doc/classes/RenderingServer.xml:3807
msgid "The amount of surface changes in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3799
+#: doc/classes/RenderingServer.xml:3810
msgid "The amount of draw calls in frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3814
+#: doc/classes/RenderingServer.xml:3825
msgid "Hardware supports shaders. This enum is currently unused in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:3817
+#: doc/classes/RenderingServer.xml:3828
msgid ""
"Hardware supports multithreading. This enum is currently unused in Godot 3.x."
msgstr ""
@@ -43909,13 +44746,13 @@ msgstr ""
#: doc/classes/Resource.xml:7
msgid ""
"Resource is the base class for all Godot-specific resource types, serving "
-"primarily as data containers. They are reference counted and freed when no "
-"longer in use. They are also cached once loaded from disk, so that any "
-"further attempts to load a resource from a given path will return the same "
-"reference (all this in contrast to a [Node], which is not reference counted "
-"and can be instanced from disk as many times as desired). Resources can be "
-"saved externally on disk or bundled into another object, such as a [Node] or "
-"another resource."
+"primarily as data containers. Unlike [Object]s, they are reference-counted "
+"and freed when no longer in use. They are also cached once loaded from disk, "
+"so that any further attempts to load a resource from a given path will "
+"return the same reference (all this in contrast to a [Node], which is not "
+"reference-counted and can be instanced from disk as many times as desired). "
+"Resources can be saved externally on disk or bundled into another object, "
+"such as a [Node] or another resource."
msgstr ""
#: doc/classes/Resource.xml:10
@@ -43924,34 +44761,38 @@ msgid ""
"resources.html"
msgstr ""
-#: doc/classes/Resource.xml:17
+#: doc/classes/Resource.xml:18
msgid ""
"Virtual function which can be overridden to customize the behavior value of "
"[method setup_local_to_scene]."
msgstr ""
-#: doc/classes/Resource.xml:26
+#: doc/classes/Resource.xml:27
msgid ""
"Duplicates the resource, returning a new resource. By default, sub-resources "
-"are shared between resource copies for efficiency, this can be changed by "
-"passing [code]true[/code] to the [code]subresources[/code] argument."
+"are shared between resource copies for efficiency. This can be changed by "
+"passing [code]true[/code] to the [code]subresources[/code] argument which "
+"will copy the subresources.\n"
+"[b]Note:[/b] If [code]subresources[/code] is [code]true[/code], this method "
+"will only perform a shallow copy. Nested resources within subresources will "
+"not be duplicated and will still be shared."
msgstr ""
-#: doc/classes/Resource.xml:33
+#: doc/classes/Resource.xml:35
msgid ""
"If [member resource_local_to_scene] is enabled and the resource was loaded "
"from a [PackedScene] instantiation, returns the local scene where this "
"resource's unique copy is in use. Otherwise, returns [code]null[/code]."
msgstr ""
-#: doc/classes/Resource.xml:40
+#: doc/classes/Resource.xml:42
msgid ""
"Returns the RID of the resource (or an empty RID). Many resources (such as "
"[Texture2D], [Mesh], etc) are high-level abstractions of resources stored in "
"a server, so this function will return the original RID."
msgstr ""
-#: doc/classes/Resource.xml:47
+#: doc/classes/Resource.xml:49
msgid ""
"This method is called when a resource with [member resource_local_to_scene] "
"enabled is loaded from a [PackedScene] instantiation. Its behavior can be "
@@ -43961,7 +44802,7 @@ msgid ""
"local viewport."
msgstr ""
-#: doc/classes/Resource.xml:57
+#: doc/classes/Resource.xml:59
msgid ""
"Sets the path of the resource, potentially overriding an existing cache "
"entry for this path. This differs from setting [member resource_path], as "
@@ -43969,25 +44810,25 @@ msgid ""
"given path."
msgstr ""
-#: doc/classes/Resource.xml:63
+#: doc/classes/Resource.xml:65
msgid ""
"If [code]true[/code], the resource will be made unique in each instance of "
"its local scene. It can thus be modified in a scene instance without "
"impacting other instances of that same scene."
msgstr ""
-#: doc/classes/Resource.xml:66
+#: doc/classes/Resource.xml:68
msgid "The name of the resource. This is an optional identifier."
msgstr ""
-#: doc/classes/Resource.xml:69
+#: doc/classes/Resource.xml:71
msgid ""
"The path to the resource. In case it has its own file, it will return its "
"filepath. If it's tied to the scene, it will return the scene's path, "
"followed by the resource's index."
msgstr ""
-#: doc/classes/Resource.xml:75
+#: doc/classes/Resource.xml:77
msgid "Emitted whenever the resource changes."
msgstr ""
@@ -44806,11 +45647,11 @@ msgid ""
"global coordinate system, but is centered at the object's origin."
msgstr ""
-#: doc/classes/RigidBody2D.xml:87
+#: doc/classes/RigidBody2D.xml:87 doc/classes/RigidBody3D.xml:99
msgid ""
-"Returns a list of the bodies colliding with this one. Use [member "
-"contacts_reported] to set the maximum number reported. You must also set "
-"[member contact_monitor] to [code]true[/code].\n"
+"Returns a list of the bodies colliding with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
"For performance, list of collisions is updated once per frame and before the "
"physics step. Consider using signals instead."
@@ -44847,7 +45688,7 @@ msgstr ""
msgid "The body's total applied torque."
msgstr ""
-#: doc/classes/RigidBody2D.xml:130 doc/classes/RigidBody3D.xml:150
+#: doc/classes/RigidBody2D.xml:130 doc/classes/RigidBody3D.xml:157
msgid ""
"If [code]true[/code], the body can enter sleep mode when there is no "
"movement. See [member sleeping]."
@@ -44859,11 +45700,17 @@ msgid ""
"another RigidBody2D. See also [member contacts_reported]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:136
-msgid "The maximum number of contacts to report."
+#: doc/classes/RigidBody2D.xml:136 doc/classes/RigidBody3D.xml:163
+msgid ""
+"The maximum number of contacts that will be recorded. Requires [member "
+"contact_monitor] to be set to [code]true[/code].\n"
+"[b]Note:[/b] The number of contacts is different from the number of "
+"collisions. Collisions between parallel edges will result in two contacts "
+"(one at each end), and collisions between parallel faces will result in four "
+"contacts (one at each corner)."
msgstr ""
-#: doc/classes/RigidBody2D.xml:139
+#: doc/classes/RigidBody2D.xml:140
msgid ""
"Continuous collision detection mode.\n"
"Continuous collision detection tries to predict where a moving body will "
@@ -44873,21 +45720,21 @@ msgid ""
"methods are available. See [enum CCDMode] for details."
msgstr ""
-#: doc/classes/RigidBody2D.xml:143
+#: doc/classes/RigidBody2D.xml:144
msgid ""
"If [code]true[/code], internal force integration is disabled for this body. "
"Aside from collision response, the body will only move as determined by the "
"[method _integrate_forces] function."
msgstr ""
-#: doc/classes/RigidBody2D.xml:146
+#: doc/classes/RigidBody2D.xml:147
msgid ""
"Multiplies the gravity applied to the body. The body's gravity is calculated "
"from the [b]Default Gravity[/b] value in [b]Project > Project Settings > "
"Physics > 2d[/b] and/or any additional gravity vector applied by [Area2D]s."
msgstr ""
-#: doc/classes/RigidBody2D.xml:149
+#: doc/classes/RigidBody2D.xml:150
msgid ""
"The body's moment of inertia. This is like mass, but for rotation: it "
"determines how much torque it takes to rotate the body. The moment of "
@@ -44896,18 +45743,18 @@ msgid ""
"automatically computing it."
msgstr ""
-#: doc/classes/RigidBody2D.xml:152
+#: doc/classes/RigidBody2D.xml:153
msgid ""
"Damps the body's [member linear_velocity]. If [code]-1[/code], the body will "
"use the [b]Default Linear Damp[/b] in [b]Project > Project Settings > "
"Physics > 2d[/b]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:161
+#: doc/classes/RigidBody2D.xml:162
msgid "The body's mode. See [enum Mode] for possible values."
msgstr ""
-#: doc/classes/RigidBody2D.xml:164 doc/classes/RigidBody3D.xml:181
+#: doc/classes/RigidBody2D.xml:165 doc/classes/RigidBody3D.xml:189
#: doc/classes/StaticBody2D.xml:22 doc/classes/StaticBody3D.xml:22
msgid ""
"The physics material override for the body.\n"
@@ -44915,50 +45762,50 @@ msgid ""
"other physics material, such as an inherited one."
msgstr ""
-#: doc/classes/RigidBody2D.xml:168 doc/classes/RigidBody3D.xml:185
+#: doc/classes/RigidBody2D.xml:169 doc/classes/RigidBody3D.xml:193
msgid ""
"If [code]true[/code], the body will not move and will not calculate forces "
"until woken up by another body through, for example, a collision, or by "
"using the [method apply_impulse] or [method add_force] methods."
msgstr ""
-#: doc/classes/RigidBody2D.xml:171
+#: doc/classes/RigidBody2D.xml:172
msgid ""
"The body's weight based on its mass and the [b]Default Gravity[/b] value in "
"[b]Project > Project Settings > Physics > 2d[/b]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:179
+#: doc/classes/RigidBody2D.xml:180 doc/classes/RigidBody3D.xml:204
msgid ""
-"Emitted when a body enters into contact with this one. [member "
-"contact_monitor] must be [code]true[/code] and [member contacts_reported] "
-"greater than [code]0[/code]."
+"Emitted when a body enters into contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:186
+#: doc/classes/RigidBody2D.xml:187
msgid ""
-"Emitted when a body exits contact with this one. [member contact_monitor] "
-"must be [code]true[/code] and [member contacts_reported] greater than "
-"[code]0[/code]."
+"Emitted when a body exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:199
+#: doc/classes/RigidBody2D.xml:200
msgid ""
"Emitted when a body enters into contact with this one. Reports colliding "
"shape information. See [CollisionObject2D] for shape index information. "
-"[member contact_monitor] must be [code]true[/code] and [member "
-"contacts_reported] greater than [code]0[/code]."
+"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:212
+#: doc/classes/RigidBody2D.xml:213
msgid ""
"Emitted when a body shape exits contact with this one. Reports colliding "
"shape information. See [CollisionObject2D] for shape index information. "
-"[member contact_monitor] must be [code]true[/code] and [member "
-"contacts_reported] greater than [code]0[/code]."
+"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:217 doc/classes/RigidBody3D.xml:236
+#: doc/classes/RigidBody2D.xml:218 doc/classes/RigidBody3D.xml:244
msgid ""
"Emitted when the physics engine changes the body's sleeping state.\n"
"[b]Note:[/b] Changing the value [member sleeping] will not trigger this "
@@ -44966,41 +45813,41 @@ msgid ""
"engine or [code]emit_signal(\"sleeping_state_changed\")[/code] is used."
msgstr ""
-#: doc/classes/RigidBody2D.xml:224
+#: doc/classes/RigidBody2D.xml:225
msgid ""
"Rigid mode. The body behaves as a physical object. It collides with other "
"bodies and responds to forces applied to it. This is the default mode."
msgstr ""
-#: doc/classes/RigidBody2D.xml:227
+#: doc/classes/RigidBody2D.xml:228
msgid "Static mode. The body behaves like a [StaticBody2D] and does not move."
msgstr ""
-#: doc/classes/RigidBody2D.xml:230
+#: doc/classes/RigidBody2D.xml:231
msgid ""
"Character mode. Similar to [constant MODE_RIGID], but the body can not "
"rotate."
msgstr ""
-#: doc/classes/RigidBody2D.xml:233
+#: doc/classes/RigidBody2D.xml:234
msgid ""
"Kinematic mode. The body behaves like a [KinematicBody2D], and must be moved "
"by code."
msgstr ""
-#: doc/classes/RigidBody2D.xml:236
+#: doc/classes/RigidBody2D.xml:237
msgid ""
"Continuous collision detection disabled. This is the fastest way to detect "
"body collisions, but can miss small, fast-moving objects."
msgstr ""
-#: doc/classes/RigidBody2D.xml:239
+#: doc/classes/RigidBody2D.xml:240
msgid ""
"Continuous collision detection enabled using raycasting. This is faster than "
"shapecasting but less precise."
msgstr ""
-#: doc/classes/RigidBody2D.xml:242
+#: doc/classes/RigidBody2D.xml:243
msgid ""
"Continuous collision detection enabled using shapecasting. This is the "
"slowest CCD method and the most precise."
@@ -45086,42 +45933,31 @@ msgid ""
"locked."
msgstr ""
-#: doc/classes/RigidBody3D.xml:99
+#: doc/classes/RigidBody3D.xml:107
msgid ""
-"Returns a list of the bodies colliding with this one. By default, number of "
-"max contacts reported is at 0, see the [member contacts_reported] property "
-"to increase it.\n"
-"[b]Note:[/b] The result of this test is not immediate after moving objects. "
-"For performance, list of collisions is updated once per frame and before the "
-"physics step. Consider using signals instead."
+"Returns the inverse inertia tensor basis. This is used to calculate the "
+"angular acceleration resulting from a torque applied to the [RigidBody3D]."
msgstr ""
-#: doc/classes/RigidBody3D.xml:111
+#: doc/classes/RigidBody3D.xml:118
msgid "Locks the specified linear or rotational axis."
msgstr ""
-#: doc/classes/RigidBody3D.xml:126
+#: doc/classes/RigidBody3D.xml:133
msgid "Damps RigidBody3D's rotational forces."
msgstr ""
-#: doc/classes/RigidBody3D.xml:129
+#: doc/classes/RigidBody3D.xml:136
msgid "RigidBody3D's rotational velocity."
msgstr ""
-#: doc/classes/RigidBody3D.xml:153
+#: doc/classes/RigidBody3D.xml:160
msgid ""
"If [code]true[/code], the RigidBody3D will emit signals when it collides "
-"with another RigidBody3D."
+"with another RigidBody3D. See also [member contacts_reported]."
msgstr ""
-#: doc/classes/RigidBody3D.xml:156
-msgid ""
-"The maximum contacts to report. Bodies can keep a log of the contacts with "
-"other bodies, this is enabled by setting the maximum amount of contacts "
-"reported to a number greater than 0."
-msgstr ""
-
-#: doc/classes/RigidBody3D.xml:159
+#: doc/classes/RigidBody3D.xml:167
msgid ""
"If [code]true[/code], continuous collision detection is used.\n"
"Continuous collision detection tries to predict where a moving body will "
@@ -45131,7 +45967,7 @@ msgid ""
"faster to compute, but can miss small, fast-moving objects."
msgstr ""
-#: doc/classes/RigidBody3D.xml:163
+#: doc/classes/RigidBody3D.xml:171
msgid ""
"If [code]true[/code], internal force integration will be disabled (like "
"gravity or air friction) for this body. Other than collision response, the "
@@ -45139,7 +45975,7 @@ msgid ""
"function, if defined."
msgstr ""
-#: doc/classes/RigidBody3D.xml:166
+#: doc/classes/RigidBody3D.xml:174
msgid ""
"This is multiplied by the global 3D gravity setting found in [b]Project > "
"Project Settings > Physics > 3d[/b] to produce RigidBody3D's gravity. For "
@@ -45147,14 +45983,14 @@ msgid ""
"and 0.5 will apply half gravity to this object."
msgstr ""
-#: doc/classes/RigidBody3D.xml:169
+#: doc/classes/RigidBody3D.xml:177
msgid ""
"The body's linear damp. Cannot be less than -1.0. If this value is different "
"from -1.0, any linear damp derived from the world or areas will be "
"overridden."
msgstr ""
-#: doc/classes/RigidBody3D.xml:172
+#: doc/classes/RigidBody3D.xml:180
msgid ""
"The body's linear velocity. Can be used sporadically, but [b]don't set this "
"every frame[/b], because physics may run in another thread and runs at a "
@@ -45162,60 +45998,57 @@ msgid ""
"for precise control of the body state."
msgstr ""
-#: doc/classes/RigidBody3D.xml:178
+#: doc/classes/RigidBody3D.xml:186
msgid "The body mode. See [enum Mode] for possible values."
msgstr ""
-#: doc/classes/RigidBody3D.xml:196
-msgid ""
-"Emitted when a body enters into contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work."
-msgstr ""
-
-#: doc/classes/RigidBody3D.xml:203
+#: doc/classes/RigidBody3D.xml:211
msgid ""
-"Emitted when a body shape exits contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work."
+"Emitted when a body shape exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody3D.xml:216
+#: doc/classes/RigidBody3D.xml:224
msgid ""
-"Emitted when a body enters into contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work.\n"
+"Emitted when a body enters into contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"This signal not only receives the body that collided with this one, but also "
"its [RID] ([code]body_id[/code]), the shape index from the colliding body "
"([code]body_shape[/code]), and the shape index from this body "
"([code]local_shape[/code]) the other body collided with."
msgstr ""
-#: doc/classes/RigidBody3D.xml:230
+#: doc/classes/RigidBody3D.xml:238
msgid ""
-"Emitted when a body shape exits contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work.\n"
+"Emitted when a body shape exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"This signal not only receives the body that stopped colliding with this one, "
"but also its [RID] ([code]body_id[/code]), the shape index from the "
"colliding body ([code]body_shape[/code]), and the shape index from this body "
"([code]local_shape[/code]) the other body stopped colliding with."
msgstr ""
-#: doc/classes/RigidBody3D.xml:243
+#: doc/classes/RigidBody3D.xml:251
msgid ""
"Rigid body mode. This is the \"natural\" state of a rigid body. It is "
"affected by forces, and can move, rotate, and be affected by user code."
msgstr ""
-#: doc/classes/RigidBody3D.xml:246
+#: doc/classes/RigidBody3D.xml:254
msgid ""
"Static mode. The body behaves like a [StaticBody3D], and can only move by "
"user code."
msgstr ""
-#: doc/classes/RigidBody3D.xml:249
+#: doc/classes/RigidBody3D.xml:257
msgid ""
"Character body mode. This behaves like a rigid body, but can not rotate."
msgstr ""
-#: doc/classes/RigidBody3D.xml:252
+#: doc/classes/RigidBody3D.xml:260
msgid ""
"Kinematic body mode. The body behaves like a [KinematicBody3D], and can only "
"move by user code."
@@ -45722,7 +46555,7 @@ msgstr ""
msgid "The time remaining."
msgstr ""
-#: doc/classes/SceneTreeTimer.xml:28 doc/classes/Timer.xml:62
+#: doc/classes/SceneTreeTimer.xml:28 doc/classes/Timer.xml:63
msgid "Emitted when the timer reaches 0."
msgstr ""
@@ -45845,27 +46678,27 @@ msgid ""
"the singleton using [method EditorInterface.get_script_editor]."
msgstr ""
-#: doc/classes/ScriptEditor.xml:40
+#: doc/classes/ScriptEditor.xml:46
msgid "Returns a [Script] that is currently active in editor."
msgstr ""
-#: doc/classes/ScriptEditor.xml:57
+#: doc/classes/ScriptEditor.xml:69
msgid ""
"Returns an array with all [Script] objects which are currently open in "
"editor."
msgstr ""
-#: doc/classes/ScriptEditor.xml:66
+#: doc/classes/ScriptEditor.xml:78
msgid "Goes to the specified line in the current script."
msgstr ""
-#: doc/classes/ScriptEditor.xml:85
+#: doc/classes/ScriptEditor.xml:113
msgid ""
"Emitted when user changed active script. Argument is a freshly activated "
"[Script]."
msgstr ""
-#: doc/classes/ScriptEditor.xml:92
+#: doc/classes/ScriptEditor.xml:120
msgid ""
"Emitted when editor is about to close the active script. Argument is a "
"[Script] that is going to be closed."
@@ -45927,7 +46760,7 @@ msgid ""
"visible."
msgstr ""
-#: doc/classes/ScrollContainer.xml:37 doc/classes/TextEdit.xml:453
+#: doc/classes/ScrollContainer.xml:37 doc/classes/TextEdit.xml:407
msgid "The current horizontal scroll value."
msgstr ""
@@ -45935,7 +46768,7 @@ msgstr ""
msgid "If [code]true[/code], enables horizontal scrolling."
msgstr ""
-#: doc/classes/ScrollContainer.xml:43 doc/classes/TextEdit.xml:456
+#: doc/classes/ScrollContainer.xml:43 doc/classes/TextEdit.xml:410
msgid "The current vertical scroll value."
msgstr ""
@@ -46454,7 +47287,7 @@ msgstr ""
msgid ""
"Sets the global pose transform, [code]pose[/code], for the bone at "
"[code]bone_idx[/code].\n"
-"[code]amount[/code] is the interpolation strengh that will be used when "
+"[code]amount[/code] is the interpolation strength that will be used when "
"applying the pose, and [code]persistent[/code] determines if the applied "
"pose will remain.\n"
"[b]Note[/b]: The pose transform needs to be in bone space. Use [method "
@@ -46471,7 +47304,7 @@ msgstr ""
#: doc/classes/Skeleton3D.xml:266
msgid ""
-"Returns the pose transform for bone [code]bone_idx[/code].\n"
+"Sets the pose transform for bone [code]bone_idx[/code].\n"
"[b]Note[/b]: The pose transform needs to be in bone space. Use [method "
"world_transform_to_bone_transform] to convert a world transform, like one "
"you can get from a [Node3D], to bone space."
@@ -46564,6 +47397,16 @@ msgstr ""
#: doc/classes/Sky.xml:52
msgid ""
+"Automatically selects the appropriate process mode based on your sky shader. "
+"If your shader uses [code]TIME[/code] or [code]POSITION[/code], this will "
+"use [constant PROCESS_MODE_REALTIME]. If your shader uses any of the "
+"[code]LIGHT_*[/code] variables or any custom uniforms, this uses [constant "
+"PROCESS_MODE_INCREMENTAL]. Otherwise, this defaults to [constant "
+"PROCESS_MODE_QUALITY]."
+msgstr ""
+
+#: doc/classes/Sky.xml:55
+msgid ""
"Uses high quality importance sampling to process the radiance map. In "
"general, this results in much higher quality than [constant "
"PROCESS_MODE_REALTIME] but takes much longer to generate. This should not be "
@@ -46573,10 +47416,22 @@ msgid ""
"ggx_samples]."
msgstr ""
-#: doc/classes/Sky.xml:55
+#: doc/classes/Sky.xml:58
+msgid ""
+"Uses the same high quality importance sampling to process the radiance map "
+"as [constant PROCESS_MODE_QUALITY], but updates over several frames. The "
+"number of frames is determined by [member ProjectSettings.rendering/quality/"
+"reflections/roughness_layers]. Use this when you need highest quality "
+"radiance maps, but have a sky that updates slowly."
+msgstr ""
+
+#: doc/classes/Sky.xml:61
msgid ""
"Uses the fast filtering algorithm to process the radiance map. In general "
-"this results in lower quality, but substantially faster run times.\n"
+"this results in lower quality, but substantially faster run times. If you "
+"need better quality, but still need to update the sky every frame, consider "
+"turning on [member ProjectSettings.rendering/quality/reflections/"
+"fast_filter_high_quality].\n"
"[b]Note:[/b] The fast filtering algorithm is limited to 256x256 cubemaps, so "
"[member radiance_size] must be set to [constant RADIANCE_SIZE_256]."
msgstr ""
@@ -46913,9 +47768,7 @@ msgid ""
msgstr ""
#: doc/classes/SpringArm3D.xml:35
-msgid ""
-"Returns the proportion between the current arm length (after checking for "
-"collisions) and the [member spring_length]. Ranges from 0 to 1."
+msgid "Returns the spring arm's current length."
msgstr ""
#: doc/classes/SpringArm3D.xml:44
@@ -47611,7 +48464,7 @@ msgstr ""
msgid ""
"This is the built-in string class (and the one used by GDScript). It "
"supports Unicode and provides all necessary means for string handling. "
-"Strings are reference counted and use a copy-on-write approach, so passing "
+"Strings are reference-counted and use a copy-on-write approach, so passing "
"them around is cheap in resources."
msgstr ""
@@ -47766,26 +48619,32 @@ msgstr ""
#: doc/classes/String.xml:328
msgid ""
"Returns a copy of the string with escaped characters replaced by their "
-"meanings according to the C language standard."
+"meanings. Supported escape sequences are [code]\\'[/code], [code]\\\"[/"
+"code], [code]\\?[/code], [code]\\\\[/code], [code]\\a[/code], [code]\\b[/"
+"code], [code]\\f[/code], [code]\\n[/code], [code]\\r[/code], [code]\\t[/"
+"code], [code]\\v[/code].\n"
+"[b]Note:[/b] Unlike the GDScript parser, this method doesn't support the "
+"[code]\\uXXXX[/code] escape sequence."
msgstr ""
-#: doc/classes/String.xml:335
+#: doc/classes/String.xml:336
msgid ""
-"Changes the case of some letters. Replaces underscores with spaces, converts "
-"all letters to lowercase, then capitalizes first and every letter following "
-"the space character. For [code]capitalize camelCase mixed_with_underscores[/"
-"code], it will return [code]Capitalize Camelcase Mixed With Underscores[/"
+"Changes the case of some letters. Replaces underscores with spaces, adds "
+"spaces before in-word uppercase characters, converts all letters to "
+"lowercase, then capitalizes the first letter and every letter following a "
+"space character. For [code]capitalize camelCase mixed_with_underscores[/"
+"code], it will return [code]Capitalize Camel Case Mixed With Underscores[/"
"code]."
msgstr ""
-#: doc/classes/String.xml:344
+#: doc/classes/String.xml:345
msgid ""
"Performs a case-sensitive comparison to another string. Returns [code]-1[/"
"code] if less than, [code]+1[/code] if greater than, or [code]0[/code] if "
"equal."
msgstr ""
-#: doc/classes/String.xml:357
+#: doc/classes/String.xml:358
msgid ""
"Returns the number of occurrences of substring [code]what[/code] between "
"[code]from[/code] and [code]to[/code] positions. If [code]from[/code] and "
@@ -47793,7 +48652,7 @@ msgid ""
"code] equals 0 the remained substring will be used."
msgstr ""
-#: doc/classes/String.xml:370
+#: doc/classes/String.xml:371
msgid ""
"Returns the number of occurrences of substring [code]what[/code] (ignoring "
"case) between [code]from[/code] and [code]to[/code] positions. If "
@@ -47801,32 +48660,33 @@ msgid ""
"used. If only [code]to[/code] equals 0 the remained substring will be used."
msgstr ""
-#: doc/classes/String.xml:377
+#: doc/classes/String.xml:378
msgid ""
"Returns a copy of the string with indentation (leading tabs and spaces) "
"removed."
msgstr ""
-#: doc/classes/String.xml:384
+#: doc/classes/String.xml:385
msgid ""
"Returns [code]true[/code] if the length of the string equals [code]0[/code]."
msgstr ""
-#: doc/classes/String.xml:393
+#: doc/classes/String.xml:394
msgid "Returns [code]true[/code] if the string ends with the given string."
msgstr ""
-#: doc/classes/String.xml:404
+#: doc/classes/String.xml:405
msgid ""
"Erases [code]chars[/code] characters from the string starting from "
"[code]position[/code]."
msgstr ""
-#: doc/classes/String.xml:415
+#: doc/classes/String.xml:416
msgid ""
-"Finds the first occurrence of a substring. Returns the starting position of "
-"the substring or [code]-1[/code] if not found. Optionally, the initial "
-"search index can be passed.\n"
+"Returns the index of the [b]first[/b] case-sensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the end of the "
+"string.\n"
"[b]Note:[/b] If you just want to know whether a string contains a substring, "
"use the [code]in[/code] operator as follows:\n"
"[codeblock]\n"
@@ -47836,48 +48696,42 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:430
-msgid ""
-"Finds the last occurrence of a substring. Returns the starting position of "
-"the substring or [code]-1[/code] if not found."
-msgstr ""
-
-#: doc/classes/String.xml:441
+#: doc/classes/String.xml:433
msgid ""
-"Finds the first occurrence of a substring, ignoring case. Returns the "
-"starting position of the substring or [code]-1[/code] if not found. "
-"Optionally, the initial search index can be passed."
+"Returns the index of the [b]first[/b] case-insensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the end of the string."
msgstr ""
-#: doc/classes/String.xml:452
+#: doc/classes/String.xml:444
msgid ""
"Formats the string by replacing all occurrences of [code]placeholder[/code] "
"with [code]values[/code]."
msgstr ""
-#: doc/classes/String.xml:459
+#: doc/classes/String.xml:451
msgid "If the string is a valid file path, returns the base directory name."
msgstr ""
-#: doc/classes/String.xml:466
+#: doc/classes/String.xml:458
msgid ""
"If the string is a valid file path, returns the full file path without the "
"extension."
msgstr ""
-#: doc/classes/String.xml:473
+#: doc/classes/String.xml:465
msgid "If the string is a valid file path, returns the extension."
msgstr ""
-#: doc/classes/String.xml:480
+#: doc/classes/String.xml:472
msgid "If the string is a valid file path, returns the filename."
msgstr ""
-#: doc/classes/String.xml:487
+#: doc/classes/String.xml:479
msgid "Hashes the string and returns a 32-bit integer."
msgstr ""
-#: doc/classes/String.xml:494
+#: doc/classes/String.xml:486
msgid ""
"Converts a string containing a hexadecimal number into an integer. "
"Hexadecimal strings are expected to be prefixed with \"[code]0x[/code]\" "
@@ -47887,7 +48741,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:504
+#: doc/classes/String.xml:496
msgid ""
"Escapes (encodes) a string to URL friendly format. Also referred to as 'URL "
"encode'.\n"
@@ -47897,7 +48751,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:514
+#: doc/classes/String.xml:506
msgid ""
"Unescapes (decodes) a string in URL encoded format. Also referred to as 'URL "
"decode'.\n"
@@ -47907,7 +48761,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:526
+#: doc/classes/String.xml:518
msgid ""
"Converts [code]size[/code] represented as number of bytes to human-readable "
"format using internationalized set of data size units, namely: B, KiB, MiB, "
@@ -47920,48 +48774,48 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:542
+#: doc/classes/String.xml:534
msgid ""
"Returns a copy of the string with the substring [code]what[/code] inserted "
"at the given position."
msgstr ""
-#: doc/classes/String.xml:549
+#: doc/classes/String.xml:541
msgid ""
"If the string is a path to a file or directory, returns [code]true[/code] if "
"the path is absolute."
msgstr ""
-#: doc/classes/String.xml:556
+#: doc/classes/String.xml:548
msgid ""
"If the string is a path to a file or directory, returns [code]true[/code] if "
"the path is relative."
msgstr ""
-#: doc/classes/String.xml:565
+#: doc/classes/String.xml:557
msgid ""
"Returns [code]true[/code] if this string is a subsequence of the given "
"string."
msgstr ""
-#: doc/classes/String.xml:574
+#: doc/classes/String.xml:566
msgid ""
"Returns [code]true[/code] if this string is a subsequence of the given "
"string, without considering case."
msgstr ""
-#: doc/classes/String.xml:581
+#: doc/classes/String.xml:573
msgid ""
"Returns [code]true[/code] if this string is free from characters that aren't "
"allowed in file names, those being:\n"
"[code]: / \\ ? * \" | % < >[/code]"
msgstr ""
-#: doc/classes/String.xml:589
+#: doc/classes/String.xml:581
msgid "Returns [code]true[/code] if this string contains a valid float."
msgstr ""
-#: doc/classes/String.xml:598
+#: doc/classes/String.xml:590
msgid ""
"Returns [code]true[/code] if this string contains a valid hexadecimal "
"number. If [code]with_prefix[/code] is [code]true[/code], then a validity of "
@@ -47969,7 +48823,7 @@ msgid ""
"instance: [code]0xDEADC0DE[/code]."
msgstr ""
-#: doc/classes/String.xml:605
+#: doc/classes/String.xml:597
msgid ""
"Returns [code]true[/code] if this string contains a valid color in "
"hexadecimal HTML notation. Other HTML notations such as named colors or "
@@ -47977,22 +48831,22 @@ msgid ""
"return [code]false[/code]."
msgstr ""
-#: doc/classes/String.xml:612
+#: doc/classes/String.xml:604
msgid ""
"Returns [code]true[/code] if this string is a valid identifier. A valid "
"identifier may contain only letters, digits and underscores ([code]_[/code]) "
"and the first character may not be a digit."
msgstr ""
-#: doc/classes/String.xml:619
+#: doc/classes/String.xml:611
msgid "Returns [code]true[/code] if this string contains a valid integer."
msgstr ""
-#: doc/classes/String.xml:626
+#: doc/classes/String.xml:618
msgid "Returns [code]true[/code] if this string contains a valid IP address."
msgstr ""
-#: doc/classes/String.xml:635
+#: doc/classes/String.xml:627
msgid ""
"Return a [String] which is the concatenation of the [code]parts[/code]. The "
"separator between elements is the string providing this method.\n"
@@ -48002,121 +48856,125 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:646
+#: doc/classes/String.xml:638
msgid ""
"Returns a copy of the string with special characters escaped using the JSON "
"standard."
msgstr ""
-#: doc/classes/String.xml:655
+#: doc/classes/String.xml:647
msgid "Returns a number of characters from the left of the string."
msgstr ""
-#: doc/classes/String.xml:662
+#: doc/classes/String.xml:654
msgid "Returns the string's amount of characters."
msgstr ""
-#: doc/classes/String.xml:671
+#: doc/classes/String.xml:663
msgid "Returns a copy of the string with characters removed from the left."
msgstr ""
-#: doc/classes/String.xml:680
+#: doc/classes/String.xml:672
msgid ""
"Does a simple case-sensitive expression match, where [code]\"*\"[/code] "
"matches zero or more arbitrary characters and [code]\"?\"[/code] matches any "
"single character except a period ([code]\".\"[/code])."
msgstr ""
-#: doc/classes/String.xml:689
+#: doc/classes/String.xml:681
msgid ""
"Does a simple case-insensitive expression match, where [code]\"*\"[/code] "
"matches zero or more arbitrary characters and [code]\"?\"[/code] matches any "
"single character except a period ([code]\".\"[/code])."
msgstr ""
-#: doc/classes/String.xml:696
+#: doc/classes/String.xml:688
msgid "Returns the MD5 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:703
+#: doc/classes/String.xml:695
msgid "Returns the MD5 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:712
+#: doc/classes/String.xml:704
msgid ""
"Performs a case-insensitive comparison to another string. Returns [code]-1[/"
"code] if less than, [code]+1[/code] if greater than, or [code]0[/code] if "
"equal."
msgstr ""
-#: doc/classes/String.xml:721
+#: doc/classes/String.xml:713
msgid "Returns the character code at position [code]at[/code]."
msgstr ""
-#: doc/classes/String.xml:730
+#: doc/classes/String.xml:722
msgid ""
"Formats a number to have an exact number of [code]digits[/code] after the "
"decimal point."
msgstr ""
-#: doc/classes/String.xml:739
+#: doc/classes/String.xml:731
msgid ""
"Formats a number to have an exact number of [code]digits[/code] before the "
"decimal point."
msgstr ""
-#: doc/classes/String.xml:746
+#: doc/classes/String.xml:738
msgid "Decode a percent-encoded string. See [method percent_encode]."
msgstr ""
-#: doc/classes/String.xml:753
+#: doc/classes/String.xml:745
msgid ""
"Percent-encodes a string. Encodes parameters in a URL when sending a HTTP "
"GET request (and bodies of form-urlencoded POST requests)."
msgstr ""
-#: doc/classes/String.xml:762
+#: doc/classes/String.xml:754
msgid ""
"If the string is a path, this concatenates [code]file[/code] at the end of "
"the string as a subpath. E.g. [code]\"this/is\".plus_file(\"path\") == "
"\"this/is/path\"[/code]."
msgstr ""
-#: doc/classes/String.xml:771
+#: doc/classes/String.xml:763
msgid ""
"Returns original string repeated a number of times. The number of "
"repetitions is given by the argument."
msgstr ""
-#: doc/classes/String.xml:782
+#: doc/classes/String.xml:774
msgid ""
"Replaces occurrences of a case-sensitive substring with the given one inside "
"the string."
msgstr ""
-#: doc/classes/String.xml:793
+#: doc/classes/String.xml:785
msgid ""
"Replaces occurrences of a case-insensitive substring with the given one "
"inside the string."
msgstr ""
-#: doc/classes/String.xml:804
+#: doc/classes/String.xml:796
msgid ""
-"Performs a case-sensitive search for a substring, but starts from the end of "
-"the string instead of the beginning."
+"Returns the index of the [b]last[/b] case-sensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the beginning of the "
+"string."
msgstr ""
-#: doc/classes/String.xml:815
+#: doc/classes/String.xml:807
msgid ""
-"Performs a case-insensitive search for a substring, but starts from the end "
-"of the string instead of the beginning."
+"Returns the index of the [b]last[/b] case-insensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the beginning of the "
+"string."
msgstr ""
-#: doc/classes/String.xml:824
+#: doc/classes/String.xml:816
msgid "Returns the right side of the string from a given position."
msgstr ""
-#: doc/classes/String.xml:837
+#: doc/classes/String.xml:829
msgid ""
"Splits the string by a [code]delimiter[/code] string and returns an array of "
"the substrings, starting from right.\n"
@@ -48135,39 +48993,39 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:856
+#: doc/classes/String.xml:848
msgid "Returns a copy of the string with characters removed from the right."
msgstr ""
-#: doc/classes/String.xml:863
+#: doc/classes/String.xml:855
msgid "Returns the SHA-1 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:870
+#: doc/classes/String.xml:862
msgid "Returns the SHA-1 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:877
+#: doc/classes/String.xml:869
msgid "Returns the SHA-256 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:884
+#: doc/classes/String.xml:876
msgid "Returns the SHA-256 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:893
+#: doc/classes/String.xml:885
msgid ""
"Returns the similarity index of the text compared to this string. 1 means "
"totally similar and 0 means totally dissimilar."
msgstr ""
-#: doc/classes/String.xml:906
+#: doc/classes/String.xml:898
msgid ""
"Splits the string by a [code]delimiter[/code] string and returns an array of "
-"the substrings.\n"
+"the substrings. The [code]delimiter[/code] can be of any length.\n"
"If [code]maxsplit[/code] is specified, it defines the number of splits to do "
-"from the left up to [code]maxsplit[/code]. The default value of 0 means that "
-"all items are split.\n"
+"from the left up to [code]maxsplit[/code]. The default value of [code]0[/"
+"code] means that all items are split.\n"
"Example:\n"
"[codeblock]\n"
"var some_string = \"One,Two,Three,Four\"\n"
@@ -48175,10 +49033,12 @@ msgid ""
"print(some_array.size()) # Prints 2\n"
"print(some_array[0]) # Prints \"One\"\n"
"print(some_array[1]) # Prints \"Two,Three,Four\"\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"If you need to split strings with more complex rules, use the [RegEx] class "
+"instead."
msgstr ""
-#: doc/classes/String.xml:926
+#: doc/classes/String.xml:919
msgid ""
"Splits the string in floats by using a delimiter string and returns an array "
"of the substrings.\n"
@@ -48186,7 +49046,7 @@ msgid ""
"split by [code]\",\"[/code]."
msgstr ""
-#: doc/classes/String.xml:938
+#: doc/classes/String.xml:931
msgid ""
"Returns a copy of the string stripped of any non-printable character "
"(including tabulations, spaces and line breaks) at the beginning and the "
@@ -48194,7 +49054,7 @@ msgid ""
"right edges respectively."
msgstr ""
-#: doc/classes/String.xml:945
+#: doc/classes/String.xml:938
msgid ""
"Returns a copy of the string stripped of any escape character. These include "
"all non-printable control characters of the first page of the ASCII table (< "
@@ -48202,14 +49062,14 @@ msgid ""
"code] and [code]\\r[/code]) characters, but not spaces."
msgstr ""
-#: doc/classes/String.xml:956
+#: doc/classes/String.xml:949
msgid ""
"Returns part of the string from the position [code]from[/code] with length "
"[code]len[/code]. Argument [code]len[/code] is optional and using [code]-1[/"
"code] will return remaining characters from given position."
msgstr ""
-#: doc/classes/String.xml:963
+#: doc/classes/String.xml:956
msgid ""
"Converts the String (which is a character array) to [PackedByteArray] (which "
"is an array of bytes). The conversion is faster compared to [method "
@@ -48217,25 +49077,25 @@ msgid ""
"ASCII characters."
msgstr ""
-#: doc/classes/String.xml:970
+#: doc/classes/String.xml:963
msgid ""
"Converts a string containing a decimal number into a [code]float[/code]."
msgstr ""
-#: doc/classes/String.xml:977
+#: doc/classes/String.xml:970
msgid ""
"Converts a string containing an integer number into an [code]int[/code]."
msgstr ""
-#: doc/classes/String.xml:984
+#: doc/classes/String.xml:977
msgid "Returns the string converted to lowercase."
msgstr ""
-#: doc/classes/String.xml:991
+#: doc/classes/String.xml:984
msgid "Returns the string converted to uppercase."
msgstr ""
-#: doc/classes/String.xml:998
+#: doc/classes/String.xml:991
msgid ""
"Converts the String (which is an array of characters) to [PackedByteArray] "
"(which is an array of bytes). The conversion is a bit slower than [method "
@@ -48243,25 +49103,25 @@ msgid ""
"this function over [method to_ascii]."
msgstr ""
-#: doc/classes/String.xml:1007
+#: doc/classes/String.xml:1000
msgid ""
"Removes a given string from the start if it starts with it or leaves the "
"string unchanged."
msgstr ""
-#: doc/classes/String.xml:1016
+#: doc/classes/String.xml:1009
msgid ""
"Removes a given string from the end if it ends with it or leaves the string "
"unchanged."
msgstr ""
-#: doc/classes/String.xml:1023
+#: doc/classes/String.xml:1016
msgid ""
"Returns a copy of the string with special characters escaped using the XML "
"standard."
msgstr ""
-#: doc/classes/String.xml:1030
+#: doc/classes/String.xml:1023
msgid ""
"Returns a copy of the string with escaped characters replaced by their "
"meanings according to the XML standard."
@@ -49493,50 +50353,42 @@ msgid ""
"undo/redo."
msgstr ""
-#: doc/classes/TextEdit.xml:24
-msgid "Adds color region (given the delimiters) and its colors."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:35
-msgid "Adds a [code]keyword[/code] and its [Color]."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:44
+#: doc/classes/TextEdit.xml:18
msgid ""
"Returns if the given line is foldable, that is, it has indented lines right "
"below it."
msgstr ""
-#: doc/classes/TextEdit.xml:57
+#: doc/classes/TextEdit.xml:25
msgid ""
-"Clears all custom syntax coloring information previously added with [method "
-"add_color_region] or [method add_keyword_color]."
+"Centers the viewport on the line the editing cursor is at. This also resets "
+"the [member scroll_horizontal] value to [code]0[/code]."
msgstr ""
-#: doc/classes/TextEdit.xml:64
+#: doc/classes/TextEdit.xml:32
msgid "Clears the undo history."
msgstr ""
-#: doc/classes/TextEdit.xml:71
+#: doc/classes/TextEdit.xml:39
msgid "Copy's the current text selection."
msgstr ""
-#: doc/classes/TextEdit.xml:78
+#: doc/classes/TextEdit.xml:46
msgid "Returns the column the editing cursor is at."
msgstr ""
-#: doc/classes/TextEdit.xml:85
+#: doc/classes/TextEdit.xml:53
msgid "Returns the line the editing cursor is at."
msgstr ""
-#: doc/classes/TextEdit.xml:96
+#: doc/classes/TextEdit.xml:64
msgid ""
"Moves the cursor at the specified [code]column[/code] index.\n"
"If [code]adjust_viewport[/code] is set to [code]true[/code], the viewport "
"will center at the cursor position after the move occurs."
msgstr ""
-#: doc/classes/TextEdit.xml:112
+#: doc/classes/TextEdit.xml:80
msgid ""
"Moves the cursor at the specified [code]line[/code] index.\n"
"If [code]adjust_viewport[/code] is set to [code]true[/code], the viewport "
@@ -49545,111 +50397,101 @@ msgid ""
"[code]line[/code] can be hidden using [method set_line_as_hidden]."
msgstr ""
-#: doc/classes/TextEdit.xml:121
+#: doc/classes/TextEdit.xml:89
msgid "Cut's the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:128
+#: doc/classes/TextEdit.xml:96
msgid "Deselects the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:135
+#: doc/classes/TextEdit.xml:103
msgid "Folds all lines that are possible to be folded (see [method can_fold])."
msgstr ""
-#: doc/classes/TextEdit.xml:144
+#: doc/classes/TextEdit.xml:112
msgid "Folds the given line, if possible (see [method can_fold])."
msgstr ""
-#: doc/classes/TextEdit.xml:151
+#: doc/classes/TextEdit.xml:119
msgid "Returns an array containing the line number of each breakpoint."
msgstr ""
-#: doc/classes/TextEdit.xml:160
-msgid "Returns the [Color] of the specified [code]keyword[/code]."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:169
+#: doc/classes/TextEdit.xml:128
msgid "Returns the text of a specific line."
msgstr ""
-#: doc/classes/TextEdit.xml:176
+#: doc/classes/TextEdit.xml:135
msgid "Returns the amount of total lines in the text."
msgstr ""
-#: doc/classes/TextEdit.xml:183
+#: doc/classes/TextEdit.xml:142
msgid ""
"Returns the [PopupMenu] of this [TextEdit]. By default, this menu is "
"displayed when right-clicking on the [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:190
+#: doc/classes/TextEdit.xml:149
msgid "Returns the selection begin column."
msgstr ""
-#: doc/classes/TextEdit.xml:197
+#: doc/classes/TextEdit.xml:156
msgid "Returns the selection begin line."
msgstr ""
-#: doc/classes/TextEdit.xml:204
+#: doc/classes/TextEdit.xml:163
msgid "Returns the text inside the selection."
msgstr ""
-#: doc/classes/TextEdit.xml:211
+#: doc/classes/TextEdit.xml:170
msgid "Returns the selection end column."
msgstr ""
-#: doc/classes/TextEdit.xml:218
+#: doc/classes/TextEdit.xml:177
msgid "Returns the selection end line."
msgstr ""
-#: doc/classes/TextEdit.xml:225
+#: doc/classes/TextEdit.xml:184
msgid "Returns a [String] text with the word under the mouse cursor location."
msgstr ""
-#: doc/classes/TextEdit.xml:234
-msgid ""
-"Returns whether the specified [code]keyword[/code] has a color set to it or "
-"not."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:243
+#: doc/classes/TextEdit.xml:193
msgid "Insert the specified text at the cursor position."
msgstr ""
-#: doc/classes/TextEdit.xml:252
+#: doc/classes/TextEdit.xml:202
msgid "Returns whether the line at the specified index is folded or not."
msgstr ""
-#: doc/classes/TextEdit.xml:261
+#: doc/classes/TextEdit.xml:211
msgid "Returns whether the line at the specified index is hidden or not."
msgstr ""
-#: doc/classes/TextEdit.xml:268
+#: doc/classes/TextEdit.xml:218
msgid "Returns [code]true[/code] if the selection is active."
msgstr ""
-#: doc/classes/TextEdit.xml:277
+#: doc/classes/TextEdit.xml:227
msgid ""
"Triggers a right-click menu action by the specified index. See [enum "
"MenuItems] for a list of available indexes."
msgstr ""
-#: doc/classes/TextEdit.xml:284
+#: doc/classes/TextEdit.xml:234
msgid "Paste the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:291
+#: doc/classes/TextEdit.xml:241
msgid "Perform redo operation."
msgstr ""
-#: doc/classes/TextEdit.xml:298
+#: doc/classes/TextEdit.xml:248
msgid ""
"Removes all the breakpoints. This will not fire the [signal "
"breakpoint_toggled] signal."
msgstr ""
-#: doc/classes/TextEdit.xml:313
+#: doc/classes/TextEdit.xml:263
msgid ""
"Perform a search inside the text. Search flags can be specified in the [enum "
"SearchFlags] enum.\n"
@@ -49665,244 +50507,266 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/TextEdit.xml:336
-msgid "Perform selection, from line/column to line/column."
+#: doc/classes/TextEdit.xml:286
+msgid ""
+"Perform selection, from line/column to line/column.\n"
+"If [member selecting_enabled] is [code]false[/code], no selection will occur."
msgstr ""
-#: doc/classes/TextEdit.xml:343
-msgid "Select all the text."
+#: doc/classes/TextEdit.xml:294
+msgid ""
+"Select all the text.\n"
+"If [member selecting_enabled] is [code]false[/code], no selection will occur."
msgstr ""
-#: doc/classes/TextEdit.xml:354
+#: doc/classes/TextEdit.xml:306
msgid "Sets the text for a specific line."
msgstr ""
-#: doc/classes/TextEdit.xml:365
+#: doc/classes/TextEdit.xml:317
msgid "If [code]true[/code], hides the line of the specified index."
msgstr ""
-#: doc/classes/TextEdit.xml:374
+#: doc/classes/TextEdit.xml:326
msgid "Toggle the folding of the code block at the given line."
msgstr ""
-#: doc/classes/TextEdit.xml:381
+#: doc/classes/TextEdit.xml:333
msgid "Perform undo operation."
msgstr ""
-#: doc/classes/TextEdit.xml:390
+#: doc/classes/TextEdit.xml:342
msgid "Unfolds the given line, if folded."
msgstr ""
-#: doc/classes/TextEdit.xml:397
+#: doc/classes/TextEdit.xml:349
msgid ""
"Unhide all lines that were previously set to hidden by [method "
"set_line_as_hidden]."
msgstr ""
-#: doc/classes/TextEdit.xml:403
+#: doc/classes/TextEdit.xml:355
msgid "If [code]true[/code], the breakpoint gutter is visible."
msgstr ""
-#: doc/classes/TextEdit.xml:412
+#: doc/classes/TextEdit.xml:364
msgid ""
"If [code]true[/code], the caret displays as a rectangle.\n"
"If [code]false[/code], the caret displays as a bar."
msgstr ""
-#: doc/classes/TextEdit.xml:416
+#: doc/classes/TextEdit.xml:368
msgid ""
"If [code]true[/code], a right-click moves the cursor at the mouse position "
"before displaying the context menu.\n"
"If [code]false[/code], the context menu disregards mouse location."
msgstr ""
-#: doc/classes/TextEdit.xml:420
+#: doc/classes/TextEdit.xml:372
msgid "If [code]true[/code], a right-click displays the context menu."
msgstr ""
-#: doc/classes/TextEdit.xml:423
+#: doc/classes/TextEdit.xml:375
msgid ""
"If [code]true[/code], the \"space\" character will have a visible "
"representation."
msgstr ""
-#: doc/classes/TextEdit.xml:426
+#: doc/classes/TextEdit.xml:378
msgid ""
"If [code]true[/code], the \"tab\" character will have a visible "
"representation."
msgstr ""
-#: doc/classes/TextEdit.xml:430
+#: doc/classes/TextEdit.xml:382
msgid ""
"If [code]true[/code], the fold gutter is visible. This enables folding "
"groups of indented lines."
msgstr ""
-#: doc/classes/TextEdit.xml:433
+#: doc/classes/TextEdit.xml:385
msgid ""
"If [code]true[/code], all lines that have been set to hidden by [method "
"set_line_as_hidden], will not be visible."
msgstr ""
-#: doc/classes/TextEdit.xml:436
+#: doc/classes/TextEdit.xml:388
msgid ""
"If [code]true[/code], all occurrences of the selected text will be "
"highlighted."
msgstr ""
-#: doc/classes/TextEdit.xml:439
+#: doc/classes/TextEdit.xml:391
msgid "If [code]true[/code], the line containing the cursor is highlighted."
msgstr ""
-#: doc/classes/TextEdit.xml:447
+#: doc/classes/TextEdit.xml:394
+msgid ""
+"If [code]true[/code], a minimap is shown, providing an outline of your "
+"source code."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:397
+msgid "The width, in pixels, of the minimap."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:401
msgid ""
"If [code]true[/code], custom [code]font_color_selected[/code] will be used "
"for selected text."
msgstr ""
-#: doc/classes/TextEdit.xml:450
+#: doc/classes/TextEdit.xml:404
msgid ""
"If [code]true[/code], read-only mode is enabled. Existing text cannot be "
"modified and new text cannot be added."
msgstr ""
-#: doc/classes/TextEdit.xml:463
+#: doc/classes/TextEdit.xml:413
msgid ""
-"If [code]true[/code], line numbers are displayed to the left of the text."
+"If [code]true[/code], text can be selected.\n"
+"If [code]false[/code], text can not be selected by the user or by the "
+"[method select] or [method select_all] methods."
msgstr ""
-#: doc/classes/TextEdit.xml:466
+#: doc/classes/TextEdit.xml:417
+#, fuzzy
msgid ""
-"If [code]true[/code], sets the [code]step[/code] of the scrollbars to "
-"[code]0.25[/code] which results in smoother scrolling."
+"If [code]true[/code], shortcut keys for context menu items are enabled, even "
+"if the context menu is disabled."
+msgstr "如果为 [code]true[/code],则对å­èŠ‚点进行排åºï¼Œå¦åˆ™å°†ç¦ç”¨æŽ’åºã€‚"
+
+#: doc/classes/TextEdit.xml:420
+msgid ""
+"If [code]true[/code], line numbers are displayed to the left of the text."
msgstr ""
-#: doc/classes/TextEdit.xml:469
+#: doc/classes/TextEdit.xml:423
msgid ""
-"If [code]true[/code], any custom color properties that have been set for "
-"this [TextEdit] will be visible."
+"If [code]true[/code], sets the [code]step[/code] of the scrollbars to "
+"[code]0.25[/code] which results in smoother scrolling."
msgstr ""
-#: doc/classes/TextEdit.xml:472
+#: doc/classes/TextEdit.xml:428
msgid "String value of the [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:475
+#: doc/classes/TextEdit.xml:431
msgid "Vertical scroll sensitivity."
msgstr ""
-#: doc/classes/TextEdit.xml:478
+#: doc/classes/TextEdit.xml:437
msgid ""
"If [code]true[/code], enables text wrapping when it goes beyond the edge of "
"what is visible."
msgstr ""
-#: doc/classes/TextEdit.xml:486
+#: doc/classes/TextEdit.xml:445
msgid "Emitted when a breakpoint is placed via the breakpoint gutter."
msgstr ""
-#: doc/classes/TextEdit.xml:491
+#: doc/classes/TextEdit.xml:450
msgid "Emitted when the cursor changes."
msgstr ""
-#: doc/classes/TextEdit.xml:500
+#: doc/classes/TextEdit.xml:459
msgid "Emitted when the info icon is clicked."
msgstr ""
-#: doc/classes/TextEdit.xml:531
+#: doc/classes/TextEdit.xml:496
msgid "Match case when searching."
msgstr ""
-#: doc/classes/TextEdit.xml:534
+#: doc/classes/TextEdit.xml:499
msgid "Match whole words when searching."
msgstr ""
-#: doc/classes/TextEdit.xml:537
+#: doc/classes/TextEdit.xml:502
msgid "Search from end to beginning."
msgstr ""
-#: doc/classes/TextEdit.xml:546
+#: doc/classes/TextEdit.xml:511
msgid ""
"Pastes the clipboard text over the selected text (or at the cursor's "
"position)."
msgstr ""
-#: doc/classes/TextEdit.xml:549
+#: doc/classes/TextEdit.xml:514
msgid "Erases the whole [TextEdit] text."
msgstr ""
-#: doc/classes/TextEdit.xml:552
+#: doc/classes/TextEdit.xml:517
msgid "Selects the whole [TextEdit] text."
msgstr ""
-#: doc/classes/TextEdit.xml:558
+#: doc/classes/TextEdit.xml:523
msgid "Redoes the previous action."
msgstr ""
-#: doc/classes/TextEdit.xml:566
+#: doc/classes/TextEdit.xml:531
msgid ""
"Sets the background [Color] of this [TextEdit]. [member syntax_highlighting] "
"has to be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:569
+#: doc/classes/TextEdit.xml:534
msgid ""
"Sets the [Color] of the bookmark marker. [member syntax_highlighting] has to "
"be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:574 doc/classes/TextEdit.xml:601
+#: doc/classes/TextEdit.xml:539 doc/classes/TextEdit.xml:566
msgid ""
"Sets the [Color] of the breakpoints. [member breakpoint_gutter] has to be "
"enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:612
+#: doc/classes/TextEdit.xml:577
msgid "Sets the default [Font]."
msgstr ""
-#: doc/classes/TextEdit.xml:615
+#: doc/classes/TextEdit.xml:580
msgid "Sets the font [Color]."
msgstr ""
-#: doc/classes/TextEdit.xml:620
+#: doc/classes/TextEdit.xml:585
msgid ""
"Sets the [Color] of the selected text. [member override_selected_font_color] "
"has to be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:625
+#: doc/classes/TextEdit.xml:588
msgid ""
"Sets the [Color] of the line numbers. [member show_line_numbers] has to be "
"enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:628
+#: doc/classes/TextEdit.xml:591
msgid "Sets the spacing between the lines."
msgstr ""
-#: doc/classes/TextEdit.xml:631
+#: doc/classes/TextEdit.xml:594
msgid "Sets the [Color] of marked text."
msgstr ""
-#: doc/classes/TextEdit.xml:636
+#: doc/classes/TextEdit.xml:597
msgid "Sets the [StyleBox] of this [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:641
+#: doc/classes/TextEdit.xml:600
msgid ""
"Sets the [StyleBox] of this [TextEdit] when [member readonly] is enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:646
+#: doc/classes/TextEdit.xml:605
msgid "Sets the highlight [Color] of text selections."
msgstr ""
-#: doc/classes/TextEdit.xml:653
+#: doc/classes/TextEdit.xml:610
msgid "Sets a custom [Texture2D] for tab text characters."
msgstr ""
-#: doc/classes/TextEdit.xml:656
+#: doc/classes/TextEdit.xml:613
msgid ""
"Sets the highlight [Color] of multiple occurrences. [member "
"highlight_all_occurrences] has to be enabled."
@@ -49980,80 +50844,80 @@ msgid ""
"the texture will not scale with the node."
msgstr ""
-#: doc/classes/TextureButton.xml:19
+#: doc/classes/TextureButton.xml:25
msgid ""
"Controls the texture's behavior when you resize the node's bounding "
"rectangle, [b]only if[/b] [member expand] is [code]true[/code]. Set it to "
"one of the [enum StretchMode] constants. See the constants to learn more."
msgstr ""
-#: doc/classes/TextureButton.xml:22
+#: doc/classes/TextureButton.xml:28
msgid ""
"Pure black and white [BitMap] image to use for click detection. On the mask, "
"white pixels represent the button's clickable area. Use it to create buttons "
"with curved shapes."
msgstr ""
-#: doc/classes/TextureButton.xml:25
+#: doc/classes/TextureButton.xml:31
msgid ""
"Texture to display when the node is disabled. See [member BaseButton."
"disabled]."
msgstr ""
-#: doc/classes/TextureButton.xml:28
+#: doc/classes/TextureButton.xml:34
msgid "Texture to display when the node has mouse or keyboard focus."
msgstr ""
-#: doc/classes/TextureButton.xml:31
+#: doc/classes/TextureButton.xml:37
msgid "Texture to display when the mouse hovers the node."
msgstr ""
-#: doc/classes/TextureButton.xml:34
+#: doc/classes/TextureButton.xml:40
msgid ""
"Texture to display by default, when the node is [b]not[/b] in the disabled, "
"focused, hover or pressed state."
msgstr ""
-#: doc/classes/TextureButton.xml:37
+#: doc/classes/TextureButton.xml:43
msgid ""
"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 "
"[member BaseButton.shortcut] key."
msgstr ""
-#: doc/classes/TextureButton.xml:42 doc/classes/TextureRect.xml:36
+#: doc/classes/TextureButton.xml:48 doc/classes/TextureRect.xml:36
msgid "Scale to fit the node's bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:45 doc/classes/TextureRect.xml:39
+#: doc/classes/TextureButton.xml:51 doc/classes/TextureRect.xml:39
msgid "Tile inside the node's bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:48 doc/classes/TextureRect.xml:42
+#: doc/classes/TextureButton.xml:54 doc/classes/TextureRect.xml:42
msgid ""
"The texture keeps its original size and stays in the bounding rectangle's "
"top-left corner."
msgstr ""
-#: doc/classes/TextureButton.xml:51 doc/classes/TextureRect.xml:45
+#: doc/classes/TextureButton.xml:57 doc/classes/TextureRect.xml:45
msgid ""
"The texture keeps its original size and stays centered in the node's "
"bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:54 doc/classes/TextureRect.xml:48
+#: doc/classes/TextureButton.xml:60 doc/classes/TextureRect.xml:48
msgid ""
"Scale the texture to fit the node's bounding rectangle, but maintain the "
"texture's aspect ratio."
msgstr ""
-#: doc/classes/TextureButton.xml:57
+#: doc/classes/TextureButton.xml:63
msgid ""
"Scale the texture to fit the node's bounding rectangle, center it, and "
"maintain its aspect ratio."
msgstr ""
-#: doc/classes/TextureButton.xml:60 doc/classes/TextureRect.xml:54
+#: doc/classes/TextureButton.xml:66 doc/classes/TextureRect.xml:54
msgid ""
"Scale the texture so that the shorter side fits the bounding rectangle. The "
"other side clips to the node's limits."
@@ -50503,19 +51367,25 @@ msgid ""
"advised if working with shared objects."
msgstr ""
-#: doc/classes/Thread.xml:17
+#: doc/classes/Thread.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/threads/thread_safe_apis."
+"html"
+msgstr ""
+
+#: doc/classes/Thread.xml:18
msgid ""
"Returns the current [Thread]'s ID, uniquely identifying it among all threads."
msgstr ""
-#: doc/classes/Thread.xml:24
+#: doc/classes/Thread.xml:25
msgid ""
"Returns [code]true[/code] if this [Thread] is currently active. An active "
"[Thread] cannot start work on a new method but can be joined with [method "
"wait_to_finish]."
msgstr ""
-#: doc/classes/Thread.xml:39
+#: doc/classes/Thread.xml:40
msgid ""
"Starts a new [Thread] that runs [code]method[/code] on object "
"[code]instance[/code] with [code]userdata[/code] passed as an argument. Even "
@@ -50525,21 +51395,21 @@ msgid ""
"Returns [constant OK] on success, or [constant ERR_CANT_CREATE] on failure."
msgstr ""
-#: doc/classes/Thread.xml:47
+#: doc/classes/Thread.xml:48
msgid ""
"Joins the [Thread] and waits for it to finish. Returns what the method "
"called returned."
msgstr ""
-#: doc/classes/Thread.xml:53
+#: doc/classes/Thread.xml:54
msgid "A thread running with lower priority than normally."
msgstr ""
-#: doc/classes/Thread.xml:56
+#: doc/classes/Thread.xml:57
msgid "A thread with a standard priority."
msgstr ""
-#: doc/classes/Thread.xml:59
+#: doc/classes/Thread.xml:60
msgid "A thread running with higher priority than normally."
msgstr ""
@@ -51074,50 +51944,61 @@ msgid "Returns the [Transform2D] of a tile's shape."
msgstr ""
#: doc/classes/TileSet.xml:481
-msgid "Returns an array of the tile's shapes."
+msgid ""
+"Returns an array of dictionaries describing the tile's shapes.\n"
+"[b]Dictionary structure in the array returned by this method:[/b]\n"
+"[codeblock]\n"
+"{\n"
+" \"autotile_coord\": Vector2,\n"
+" \"one_way\": bool,\n"
+" \"one_way_margin\": int,\n"
+" \"shape\": CollisionShape2D,\n"
+" \"shape_transform\": Transform2D,\n"
+"}\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/TileSet.xml:490
+#: doc/classes/TileSet.xml:500
msgid "Returns the tile's texture."
msgstr ""
-#: doc/classes/TileSet.xml:499
+#: doc/classes/TileSet.xml:509
msgid "Returns the texture offset of the tile."
msgstr ""
-#: doc/classes/TileSet.xml:508
+#: doc/classes/TileSet.xml:518
msgid "Returns the tile's [enum TileMode]."
msgstr ""
-#: doc/classes/TileSet.xml:517
+#: doc/classes/TileSet.xml:527
msgid "Returns the tile's Z index (drawing layer)."
msgstr ""
-#: doc/classes/TileSet.xml:528
+#: doc/classes/TileSet.xml:538
msgid "Sets a light occluder for the tile."
msgstr ""
-#: doc/classes/TileSet.xml:539
+#: doc/classes/TileSet.xml:549
msgid "Sets the tile's material."
msgstr ""
-#: doc/classes/TileSet.xml:550
+#: doc/classes/TileSet.xml:560
msgid "Sets the tile's modulation color."
msgstr ""
-#: doc/classes/TileSet.xml:561
+#: doc/classes/TileSet.xml:571
msgid "Sets the tile's name."
msgstr ""
-#: doc/classes/TileSet.xml:572
+#: doc/classes/TileSet.xml:582
msgid "Sets the tile's navigation polygon."
msgstr ""
-#: doc/classes/TileSet.xml:583
+#: doc/classes/TileSet.xml:593
msgid "Sets an offset for the tile's navigation polygon."
msgstr ""
-#: doc/classes/TileSet.xml:594
+#: doc/classes/TileSet.xml:604
msgid ""
"Sets the tile's normal map texture.\n"
"[b]Note:[/b] Godot expects the normal map to use X+, Y-, and Z+ coordinates. "
@@ -51126,48 +52007,48 @@ msgid ""
"a comparison of normal map coordinates expected by popular engines."
msgstr ""
-#: doc/classes/TileSet.xml:606
+#: doc/classes/TileSet.xml:616
msgid "Sets an offset for the tile's light occluder."
msgstr ""
-#: doc/classes/TileSet.xml:617
+#: doc/classes/TileSet.xml:627
msgid ""
"Sets the tile's sub-region in the texture. This is common in texture atlases."
msgstr ""
-#: doc/classes/TileSet.xml:630
+#: doc/classes/TileSet.xml:640
msgid "Sets a shape for the tile, enabling collision."
msgstr ""
-#: doc/classes/TileSet.xml:643
+#: doc/classes/TileSet.xml:653
msgid "Sets the offset of a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:656
+#: doc/classes/TileSet.xml:666
msgid "Enables one-way collision on a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:681
+#: doc/classes/TileSet.xml:691
msgid "Sets a [Transform2D] on a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:692
+#: doc/classes/TileSet.xml:702
msgid "Sets an array of shapes for the tile, enabling collision."
msgstr ""
-#: doc/classes/TileSet.xml:703
+#: doc/classes/TileSet.xml:713
msgid "Sets the tile's texture."
msgstr ""
-#: doc/classes/TileSet.xml:714
+#: doc/classes/TileSet.xml:724
msgid "Sets the tile's texture offset."
msgstr ""
-#: doc/classes/TileSet.xml:725
+#: doc/classes/TileSet.xml:735
msgid "Sets the tile's [enum TileMode]."
msgstr ""
-#: doc/classes/TileSet.xml:736
+#: doc/classes/TileSet.xml:746
msgid "Sets the tile's drawing index."
msgstr ""
@@ -51178,14 +52059,16 @@ msgstr ""
#: doc/classes/Timer.xml:7
msgid ""
"Counts down a specified interval and emits a signal on reaching 0. Can be "
-"set to repeat or \"one-shot\" mode."
+"set to repeat or \"one-shot\" mode.\n"
+"[b]Note:[/b] To create an one-shot timer without instantiating a node, use "
+"[method SceneTree.create_timer]."
msgstr ""
-#: doc/classes/Timer.xml:16
+#: doc/classes/Timer.xml:17
msgid "Returns [code]true[/code] if the timer is stopped."
msgstr ""
-#: doc/classes/Timer.xml:25
+#: doc/classes/Timer.xml:26
msgid ""
"Starts the timer. Sets [code]wait_time[/code] to [code]time_sec[/code] if "
"[code]time_sec > 0[/code]. This also resets the remaining time to "
@@ -51193,11 +52076,11 @@ msgid ""
"[b]Note:[/b] this method will not resume a paused timer. See [member paused]."
msgstr ""
-#: doc/classes/Timer.xml:33
+#: doc/classes/Timer.xml:34
msgid "Stops the timer."
msgstr ""
-#: doc/classes/Timer.xml:39
+#: doc/classes/Timer.xml:40
msgid ""
"If [code]true[/code], the timer will automatically start when entering the "
"scene tree.\n"
@@ -51205,40 +52088,40 @@ msgid ""
"the timer enters the scene tree and starts."
msgstr ""
-#: doc/classes/Timer.xml:43
+#: doc/classes/Timer.xml:44
msgid ""
"If [code]true[/code], the timer will stop when reaching 0. If [code]false[/"
"code], it will restart."
msgstr ""
-#: doc/classes/Timer.xml:46
+#: doc/classes/Timer.xml:47
msgid ""
"If [code]true[/code], the timer is paused and will not process until it is "
"unpaused again, even if [method start] is called."
msgstr ""
-#: doc/classes/Timer.xml:49
+#: doc/classes/Timer.xml:50
msgid "Processing mode. See [enum TimerProcessMode]."
msgstr ""
-#: doc/classes/Timer.xml:52
+#: doc/classes/Timer.xml:53
msgid ""
"The timer's remaining time in seconds. Returns 0 if the timer is inactive.\n"
"[b]Note:[/b] You cannot set this value. To change the timer's remaining "
"time, use [method start]."
msgstr ""
-#: doc/classes/Timer.xml:56
+#: doc/classes/Timer.xml:57
msgid "Wait time in seconds."
msgstr ""
-#: doc/classes/Timer.xml:68
+#: doc/classes/Timer.xml:69
msgid ""
"Update the timer during the physics step at each frame (fixed framerate "
"processing)."
msgstr ""
-#: doc/classes/Timer.xml:71
+#: doc/classes/Timer.xml:72
msgid "Update the timer during the idle time at each frame."
msgstr ""
@@ -51317,60 +52200,66 @@ msgstr ""
#: doc/classes/Transform.xml:7
msgid ""
-"Represents one or many transformations in 3D space such as translation, "
-"rotation, or scaling. It consists of a [member basis] and an [member "
-"origin]. It is similar to a 3×4 matrix."
+"3×4 matrix (3 rows, 4 columns) used for 3D linear transformations. It can "
+"represent transformations such as translation, rotation, or scaling. It "
+"consists of a [member basis] (first 3 columns) and a [Vector3] for the "
+"[member origin] (last column).\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
msgstr ""
-#: doc/classes/Transform.xml:26
+#: doc/classes/Transform.xml:28
msgid ""
-"Constructs the Transform from four [Vector3]. Each axis corresponds to local "
-"basis vectors (some of which may be scaled)."
+"Constructs a Transform from four [Vector3] values (matrix columns). Each "
+"axis corresponds to local basis vectors (some of which may be scaled)."
msgstr ""
-#: doc/classes/Transform.xml:37
-msgid "Constructs the Transform from a [Basis] and [Vector3]."
+#: doc/classes/Transform.xml:39
+msgid "Constructs a Transform from a [Basis] and [Vector3]."
msgstr ""
-#: doc/classes/Transform.xml:46
-msgid "Constructs the Transform from a [Transform2D]."
+#: doc/classes/Transform.xml:48
+msgid "Constructs a Transform from a [Transform2D]."
msgstr ""
-#: doc/classes/Transform.xml:55
+#: doc/classes/Transform.xml:57
msgid ""
-"Constructs the Transform from a [Quat]. The origin will be Vector3(0, 0, 0)."
+"Constructs a Transform from a [Quat]. The origin will be [code]Vector3(0, 0, "
+"0)[/code]."
msgstr ""
-#: doc/classes/Transform.xml:64
+#: doc/classes/Transform.xml:66
msgid ""
"Constructs the Transform from a [Basis]. The origin will be Vector3(0, 0, 0)."
msgstr ""
-#: doc/classes/Transform.xml:71
+#: doc/classes/Transform.xml:73 doc/classes/Transform2D.xml:51
msgid ""
"Returns the inverse of the transform, under the assumption that the "
"transformation is composed of rotation, scaling and translation."
msgstr ""
-#: doc/classes/Transform.xml:82
-msgid "Interpolates the transform to other Transform by weight amount (0-1)."
+#: doc/classes/Transform.xml:84
+msgid ""
+"Interpolates the transform to other Transform by weight amount (on the range "
+"of 0.0 to 1.0)."
msgstr ""
-#: doc/classes/Transform.xml:89 doc/classes/Transform2D.xml:106
+#: doc/classes/Transform.xml:91
msgid ""
"Returns the inverse of the transform, under the assumption that the "
"transformation is composed of rotation and translation (no scaling, use "
"affine_inverse for transforms with scaling)."
msgstr ""
-#: doc/classes/Transform.xml:98 doc/classes/Transform2D.xml:115
+#: doc/classes/Transform.xml:100 doc/classes/Transform2D.xml:119
msgid ""
"Returns [code]true[/code] if this transform and [code]transform[/code] are "
"approximately equal, by calling [code]is_equal_approx[/code] on each "
"component."
msgstr ""
-#: doc/classes/Transform.xml:109
+#: doc/classes/Transform.xml:111
msgid ""
"Returns a copy of the transform rotated such that its -Z axis points towards "
"the [code]target[/code] position.\n"
@@ -51380,25 +52269,25 @@ msgid ""
"Operations take place in global space."
msgstr ""
-#: doc/classes/Transform.xml:118 doc/classes/Transform2D.xml:122
+#: doc/classes/Transform.xml:120
msgid ""
"Returns the transform with the basis orthogonal (90 degrees), and normalized "
"axis vectors."
msgstr ""
-#: doc/classes/Transform.xml:129
+#: doc/classes/Transform.xml:131
msgid ""
"Rotates the transform around the given axis by the given angle (in radians), "
"using matrix multiplication. The axis must be a normalized vector."
msgstr ""
-#: doc/classes/Transform.xml:138
+#: doc/classes/Transform.xml:140
msgid ""
"Scales basis and origin of the transform by the given scale factor, using "
"matrix multiplication."
msgstr ""
-#: doc/classes/Transform.xml:147 doc/classes/Transform2D.xml:149
+#: doc/classes/Transform.xml:149 doc/classes/Transform2D.xml:153
msgid ""
"Translates the transform by the given offset, relative to the transform's "
"basis vectors.\n"
@@ -51406,152 +52295,162 @@ msgid ""
"multiplication."
msgstr ""
-#: doc/classes/Transform.xml:157
+#: doc/classes/Transform.xml:159
msgid ""
"Transforms the given [Vector3], [Plane], [AABB], or [PackedVector3Array] by "
"this transform."
msgstr ""
-#: doc/classes/Transform.xml:166
+#: doc/classes/Transform.xml:168
msgid ""
"Inverse-transforms the given [Vector3], [Plane], [AABB], or "
"[PackedVector3Array] by this transform."
msgstr ""
-#: doc/classes/Transform.xml:172
+#: doc/classes/Transform.xml:174
msgid ""
"The basis is a matrix containing 3 [Vector3] as its columns: X axis, Y axis, "
"and Z axis. These vectors can be interpreted as the basis vectors of local "
"coordinate system traveling with the object."
msgstr ""
-#: doc/classes/Transform.xml:175
-msgid "The translation offset of the transform."
+#: doc/classes/Transform.xml:177
+msgid ""
+"The translation offset of the transform (column 3, the fourth column). "
+"Equivalent to array index [code]3[/code]."
msgstr ""
-#: doc/classes/Transform.xml:180
+#: doc/classes/Transform.xml:182
msgid ""
"[Transform] with no translation, rotation or scaling applied. When applied "
"to other data structures, [constant IDENTITY] performs no transformation."
msgstr ""
-#: doc/classes/Transform.xml:183
+#: doc/classes/Transform.xml:185
msgid "[Transform] with mirroring applied perpendicular to the YZ plane."
msgstr ""
-#: doc/classes/Transform.xml:186
+#: doc/classes/Transform.xml:188
msgid "[Transform] with mirroring applied perpendicular to the XZ plane."
msgstr ""
-#: doc/classes/Transform.xml:189
+#: doc/classes/Transform.xml:191
msgid "[Transform] with mirroring applied perpendicular to the XY plane."
msgstr ""
#: doc/classes/Transform2D.xml:4
-msgid "2D transformation (3×2 matrix)."
+msgid "2D transformation (2×3 matrix)."
msgstr ""
#: doc/classes/Transform2D.xml:7
msgid ""
-"Represents one or many transformations in 2D space such as translation, "
-"rotation, or scaling. It consists of two [member x] and [member y] "
-"[Vector2]s and an [member origin]. It is similar to a 3×2 matrix."
+"2×3 matrix (2 rows, 3 columns) used for 2D linear transformations. It can "
+"represent transformations such as translation, rotation, or scaling. It "
+"consists of a three [Vector2] values: [member x], [member y], and the "
+"[member origin].\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
msgstr ""
-#: doc/classes/Transform2D.xml:18
+#: doc/classes/Transform2D.xml:20
msgid "Constructs the transform from a 3D [Transform]."
msgstr ""
-#: doc/classes/Transform2D.xml:31
+#: doc/classes/Transform2D.xml:33
msgid ""
-"Constructs the transform from 3 [Vector2]s representing x, y, and origin."
+"Constructs the transform from 3 [Vector2] values representing [member x], "
+"[member y], and the [member origin] (the three column vectors)."
msgstr ""
-#: doc/classes/Transform2D.xml:42
+#: doc/classes/Transform2D.xml:44
msgid "Constructs the transform from a given angle (in radians) and position."
msgstr ""
-#: doc/classes/Transform2D.xml:58
-msgid "Transforms the given vector by this transform's basis (no translation)."
+#: doc/classes/Transform2D.xml:60
+msgid ""
+"Returns a vector transformed (multiplied) by the basis matrix.\n"
+"This method does not account for translation (the origin vector)."
msgstr ""
-#: doc/classes/Transform2D.xml:67
+#: doc/classes/Transform2D.xml:70
msgid ""
-"Inverse-transforms the given vector by this transform's basis (no "
-"translation)."
+"Returns a vector transformed (multiplied) by the inverse basis matrix.\n"
+"This method does not account for translation (the origin vector)."
msgstr ""
-#: doc/classes/Transform2D.xml:74
+#: doc/classes/Transform2D.xml:78
msgid "Returns the transform's origin (translation)."
msgstr ""
-#: doc/classes/Transform2D.xml:81
+#: doc/classes/Transform2D.xml:85
msgid "Returns the transform's rotation (in radians)."
msgstr ""
-#: doc/classes/Transform2D.xml:88
+#: doc/classes/Transform2D.xml:92
msgid "Returns the scale."
msgstr ""
-#: doc/classes/Transform2D.xml:99
+#: doc/classes/Transform2D.xml:103
msgid ""
"Returns a transform interpolated between this transform and another by a "
-"given weight (0-1)."
+"given weight (on the range of 0.0 to 1.0)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:110
+msgid ""
+"Returns the inverse of the transform, under the assumption that the "
+"transformation is composed of rotation and translation (no scaling, use "
+"[method affine_inverse] for transforms with scaling)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:126
+msgid ""
+"Returns the transform with the basis orthogonal (90 degrees), and normalized "
+"axis vectors (scale of 1 or -1)."
msgstr ""
-#: doc/classes/Transform2D.xml:131
+#: doc/classes/Transform2D.xml:135
msgid ""
"Rotates the transform by the given angle (in radians), using matrix "
"multiplication."
msgstr ""
-#: doc/classes/Transform2D.xml:140
+#: doc/classes/Transform2D.xml:144
msgid ""
"Scales the transform by the given scale factor, using matrix multiplication."
msgstr ""
-#: doc/classes/Transform2D.xml:159
+#: doc/classes/Transform2D.xml:163
msgid ""
"Transforms the given [Vector2], [Rect2], or [PackedVector2Array] by this "
"transform."
msgstr ""
-#: doc/classes/Transform2D.xml:168
+#: doc/classes/Transform2D.xml:172
msgid ""
"Inverse-transforms the given [Vector2], [Rect2], or [PackedVector2Array] by "
"this transform."
msgstr ""
-#: doc/classes/Transform2D.xml:174
-msgid "The transform's translation offset."
-msgstr ""
-
-#: doc/classes/Transform2D.xml:177
-msgid ""
-"The X axis of 2×2 basis matrix containing 2 [Vector2]s as its columns: X "
-"axis and Y axis. These vectors can be interpreted as the basis vectors of "
-"local coordinate system traveling with the object."
-msgstr ""
-
-#: doc/classes/Transform2D.xml:180
+#: doc/classes/Transform2D.xml:178
msgid ""
-"The Y axis of 2×2 basis matrix containing 2 [Vector2]s as its columns: X "
-"axis and Y axis. These vectors can be interpreted as the basis vectors of "
-"local coordinate system traveling with the object."
+"The origin vector (column 2, the third column). Equivalent to array index "
+"[code]2[/code]. The origin vector represents translation."
msgstr ""
-#: doc/classes/Transform2D.xml:185
+#: doc/classes/Transform2D.xml:189
msgid ""
-"[Transform2D] with no translation, rotation or scaling applied. When applied "
-"to other data structures, [constant IDENTITY] performs no transformation."
+"The identity [Transform2D] with no translation, rotation or scaling applied. "
+"When applied to other data structures, [constant IDENTITY] performs no "
+"transformation."
msgstr ""
-#: doc/classes/Transform2D.xml:188
-msgid "[Transform2D] with mirroring applied parallel to the X axis."
+#: doc/classes/Transform2D.xml:192
+msgid "The [Transform2D] that will flip something along the X axis."
msgstr ""
-#: doc/classes/Transform2D.xml:191
-msgid "[Transform2D] with mirroring applied parallel to the Y axis."
+#: doc/classes/Transform2D.xml:195
+msgid "The [Transform2D] that will flip something along the Y axis."
msgstr ""
#: doc/classes/Translation.xml:4
@@ -52215,7 +53114,8 @@ msgid "Returns the column's cell mode."
msgstr ""
#: doc/classes/TreeItem.xml:121
-msgid "Returns the TreeItem's child items."
+msgid ""
+"Returns the TreeItem's first child item or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:130
@@ -52247,28 +53147,32 @@ msgid "Returns the icon [Texture2D] region as [Rect2]."
msgstr ""
#: doc/classes/TreeItem.xml:199
-msgid "Returns the next TreeItem in the tree."
+msgid ""
+"Returns the next TreeItem in the tree or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:208
msgid ""
-"Returns the next visible TreeItem in the tree.\n"
+"Returns the next visible TreeItem in the tree or a null object if there is "
+"none.\n"
"If [code]wrap[/code] is enabled, the method will wrap around to the first "
"visible element in the tree when called on the last visible element, "
"otherwise it returns [code]null[/code]."
msgstr ""
#: doc/classes/TreeItem.xml:216
-msgid "Returns the parent TreeItem."
+msgid "Returns the parent TreeItem or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:223
-msgid "Returns the previous TreeItem in the tree."
+msgid ""
+"Returns the previous TreeItem in the tree or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:232
msgid ""
-"Returns the previous visible TreeItem in the tree.\n"
+"Returns the previous visible TreeItem in the tree or a null object if there "
+"is none.\n"
"If [code]wrap[/code] is enabled, the method will wrap around to the last "
"visible element in the tree when called on the first visible element, "
"otherwise it returns [code]null[/code]."
@@ -52778,6 +53682,10 @@ msgid ""
"A simple server that opens a UDP socket and returns connected "
"[PacketPeerUDP] upon receiving new packets. See also [method PacketPeerUDP."
"connect_to_host].\n"
+"After starting the server ([method listen]), you will need to [method poll] "
+"it at regular intervals (e.g. inside [method Node._process]) for it to "
+"process new packets, delivering them to the appropriate [PacketPeerUDP], and "
+"taking new connections.\n"
"Below a small example of how it can be used:\n"
"[codeblock]\n"
"# server.gd\n"
@@ -52790,6 +53698,7 @@ msgid ""
" server.listen(4242)\n"
"\n"
"func _process(delta):\n"
+" server.poll() # Important!\n"
" if server.is_connection_available():\n"
" var peer : PacketPeerUDP = server.take_connection()\n"
" var pkt = peer.get_packet()\n"
@@ -52825,35 +53734,55 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/UDPServer.xml:60
+#: doc/classes/UDPServer.xml:62
msgid ""
-"Returns [code]true[/code] if a packet with a new address/port combination is "
-"received on the socket."
+"Returns [code]true[/code] if a packet with a new address/port combination "
+"was received on the socket."
msgstr ""
-#: doc/classes/UDPServer.xml:67
+#: doc/classes/UDPServer.xml:69
msgid ""
"Returns [code]true[/code] if the socket is open and listening on a port."
msgstr ""
-#: doc/classes/UDPServer.xml:78
+#: doc/classes/UDPServer.xml:80
msgid ""
"Starts the server by opening a UDP socket listening on the given port. You "
"can optionally specify a [code]bind_address[/code] to only listen for "
"packets sent to that address. See also [method PacketPeerUDP.listen]."
msgstr ""
-#: doc/classes/UDPServer.xml:85
+#: doc/classes/UDPServer.xml:87
+msgid ""
+"Call this method at regular intervals (e.g. inside [method Node._process]) "
+"to process new packets. And packet from known address/port pair will be "
+"delivered to the appropriate [PacketPeerUDP], any packet received from an "
+"unknown address/port pair will be added as a pending connection (see [method "
+"is_connection_available], [method take_connection]). The maximum number of "
+"pending connection is defined via [member max_pending_connections]."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:94
+msgid ""
+"Stops the server, closing the UDP socket if open. Will close all connected "
+"[PacketPeerUDP] accepted via [method take_connection] (remote peers will not "
+"be notified)."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:101
msgid ""
-"Stops the server, closing the UDP socket if open. Will not disconnect any "
-"connected [PacketPeerUDP]."
+"Returns the first pending connection (connected to the appropriate address/"
+"port). Will return [code]null[/code] if no new connection is available. See "
+"also [method is_connection_available], [method PacketPeerUDP."
+"connect_to_host]."
msgstr ""
-#: doc/classes/UDPServer.xml:92
+#: doc/classes/UDPServer.xml:107
msgid ""
-"Returns a [PacketPeerUDP] connected to the address/port combination of the "
-"first packet in queue. Will return [code]null[/code] if no packet is in "
-"queue. See also [method PacketPeerUDP.connect_to_host]."
+"Define the maximum number of pending connections, during [method poll], any "
+"new pending connection exceeding that value will be automatically dropped. "
+"Setting this value to [code]0[/code] effectively prevents any new pending "
+"connection to be accepted (e.g. when all your players have connected)."
msgstr ""
#: doc/classes/UndoRedo.xml:4
@@ -53494,24 +54423,26 @@ msgstr ""
#: doc/classes/Vector2.xml:46
msgid ""
-"Returns the vector's angle in radians with respect to the X axis, or [code]"
-"(1, 0)[/code] vector.\n"
+"Returns this vector's angle with respect to the X axis, or [code](1, 0)[/"
+"code] vector, in radians.\n"
"Equivalent to the result of [method @GDScript.atan2] when called with the "
-"vector's [member x] and [member y] as parameters: [code]atan2(x, y)[/code]."
+"vector's [member y] and [member x] as parameters: [code]atan2(y, x)[/code]."
msgstr ""
#: doc/classes/Vector2.xml:56
-msgid "Returns the angle in radians between the two vectors."
+msgid "Returns the angle to the given vector, in radians."
msgstr ""
#: doc/classes/Vector2.xml:65
msgid ""
-"Returns the angle in radians between the line connecting the two points and "
-"the X coordinate."
+"Returns the angle between the line connecting the two points and the X axis, "
+"in radians."
msgstr ""
-#: doc/classes/Vector2.xml:72 doc/classes/Vector2i.xml:46
-msgid "Returns the ratio of [member x] to [member y]."
+#: doc/classes/Vector2.xml:72
+msgid ""
+"Returns the aspect ratio of this vector, the ratio of [member x] to [member "
+"y]."
msgstr ""
#: doc/classes/Vector2.xml:81 doc/classes/Vector3.xml:59
@@ -53520,24 +54451,27 @@ msgid ""
msgstr ""
#: doc/classes/Vector2.xml:88
-msgid "Returns the vector with all components rounded up."
+msgid ""
+"Returns the vector with all components rounded up (towards positive "
+"infinity)."
msgstr ""
#: doc/classes/Vector2.xml:97
-msgid "Returns the vector with a maximum length."
+msgid ""
+"Returns the vector with a maximum length by limiting its length to "
+"[code]length[/code]."
msgstr ""
#: doc/classes/Vector2.xml:106
-msgid ""
-"Returns the 2-dimensional analog of the cross product with the given vector."
+msgid "Returns the cross product of this vector and [code]with[/code]."
msgstr ""
#: doc/classes/Vector2.xml:121
msgid ""
"Cubically interpolates between this vector and [code]b[/code] using "
"[code]pre_a[/code] and [code]post_b[/code] as handles, and returns the "
-"result at position [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation."
+"result at position [code]t[/code]. [code]t[/code] is on the range of 0.0 to "
+"1.0, representing the amount of interpolation."
msgstr ""
#: doc/classes/Vector2.xml:130 doc/classes/Vector3.xml:99
@@ -53545,182 +54479,199 @@ msgid ""
"Returns the normalized vector pointing from this vector to [code]b[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:139
+#: doc/classes/Vector2.xml:139 doc/classes/Vector3.xml:108
msgid ""
-"Returns the squared distance to vector [code]b[/code]. Prefer this function "
-"over [method distance_to] if you need to sort vectors or need the squared "
-"distance for some formula."
+"Returns the squared distance between this vector and [code]b[/code].\n"
+"This method runs faster than [method distance_to], so prefer it if you need "
+"to compare vectors or need the squared distance for some formula."
msgstr ""
-#: doc/classes/Vector2.xml:148
-msgid "Returns the distance to vector [code]b[/code]."
+#: doc/classes/Vector2.xml:149
+msgid "Returns the distance between this vector and [code]to[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:157
-msgid "Returns the dot product with vector [code]b[/code]."
+#: doc/classes/Vector2.xml:158
+msgid ""
+"Returns the dot product of this vector and [code]with[/code]. This can be "
+"used to compare the angle between two vectors. For example, this can be used "
+"to determine whether an enemy is facing the player.\n"
+"The dot product will be [code]0[/code] for a straight angle (90 degrees), "
+"greater than 0 for angles narrower than 90 degrees and lower than 0 for "
+"angles wider than 90 degrees.\n"
+"When using unit (normalized) vectors, the result will always be between "
+"[code]-1.0[/code] (180 degree angle) when the vectors are facing opposite "
+"directions, and [code]1.0[/code] (0 degree angle) when the vectors are "
+"aligned.\n"
+"[b]Note:[/b] [code]a.dot(b)[/code] is equivalent to [code]b.dot(a)[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:164
-msgid "Returns the vector with all components rounded down."
+#: doc/classes/Vector2.xml:168
+msgid ""
+"Returns the vector with all components rounded down (towards negative "
+"infinity)."
msgstr ""
-#: doc/classes/Vector2.xml:173 doc/classes/Vector3.xml:149
+#: doc/classes/Vector2.xml:177 doc/classes/Vector3.xml:153
msgid ""
"Returns [code]true[/code] if this vector and [code]v[/code] are "
"approximately equal, by running [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/Vector2.xml:180 doc/classes/Vector3.xml:156
-msgid "Returns [code]true[/code] if the vector is normalized."
-msgstr ""
+#: doc/classes/Vector2.xml:184 doc/classes/Vector3.xml:160
+#, fuzzy
+msgid ""
+"Returns [code]true[/code] if the vector is normalized, and false otherwise."
+msgstr "如果[code]s[/code] 为0或者很接近0则返回[code]true[/code]。"
-#: doc/classes/Vector2.xml:187 doc/classes/Vector3.xml:163
-msgid "Returns the vector's length."
+#: doc/classes/Vector2.xml:191 doc/classes/Vector3.xml:167
+msgid "Returns the length (magnitude) of this vector."
msgstr ""
-#: doc/classes/Vector2.xml:194
+#: doc/classes/Vector2.xml:198 doc/classes/Vector3.xml:174
msgid ""
-"Returns the vector's length squared. Prefer this method over [method length] "
-"if you need to sort vectors or need the squared length for some formula."
+"Returns the squared length (squared magnitude) of this vector.\n"
+"This method runs faster than [method length], so prefer it if you need to "
+"compare vectors or need the squared distance for some formula."
msgstr ""
-#: doc/classes/Vector2.xml:205
+#: doc/classes/Vector2.xml:210 doc/classes/Vector3.xml:186
msgid ""
"Returns the result of the linear interpolation between this vector and "
-"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation."
+"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is on the range of "
+"0.0 to 1.0, representing the amount of interpolation."
msgstr ""
-#: doc/classes/Vector2.xml:216 doc/classes/Vector3.xml:206
+#: doc/classes/Vector2.xml:221
msgid ""
"Moves the vector toward [code]to[/code] by the fixed [code]delta[/code] "
"amount."
msgstr ""
-#: doc/classes/Vector2.xml:223 doc/classes/Vector3.xml:213
+#: doc/classes/Vector2.xml:228 doc/classes/Vector3.xml:218
msgid ""
"Returns the vector scaled to unit length. Equivalent to [code]v / v.length()"
"[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:232 doc/classes/Vector3.xml:231
+#: doc/classes/Vector2.xml:237 doc/classes/Vector3.xml:236
msgid ""
-"Returns a vector composed of the [code]fposmod[/code] of this vector's "
+"Returns a vector composed of the [method @GDScript.fposmod] of this vector's "
"components and [code]mod[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:241 doc/classes/Vector3.xml:240
+#: doc/classes/Vector2.xml:246 doc/classes/Vector3.xml:245
msgid ""
-"Returns a vector composed of the [code]fposmod[/code] of this vector's "
+"Returns a vector composed of the [method @GDScript.fposmod] of this vector's "
"components and [code]modv[/code]'s components."
msgstr ""
-#: doc/classes/Vector2.xml:250 doc/classes/Vector3.xml:249
+#: doc/classes/Vector2.xml:255
msgid "Returns the vector projected onto the vector [code]b[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:259 doc/classes/Vector3.xml:258
+#: doc/classes/Vector2.xml:264
msgid "Returns the vector reflected from a plane defined by the given normal."
msgstr ""
-#: doc/classes/Vector2.xml:268
+#: doc/classes/Vector2.xml:273
msgid ""
"Returns the vector rotated by [code]phi[/code] radians. See also [method "
"@GDScript.deg2rad]."
msgstr ""
-#: doc/classes/Vector2.xml:275 doc/classes/Vector3.xml:276
+#: doc/classes/Vector2.xml:280
msgid ""
"Returns the vector with all components rounded to the nearest integer, with "
"halfway cases rounded away from zero."
msgstr ""
-#: doc/classes/Vector2.xml:282 doc/classes/Vector2i.xml:53
-#: doc/classes/Vector3.xml:283 doc/classes/Vector3i.xml:55
+#: doc/classes/Vector2.xml:287
msgid ""
"Returns the vector with each component set to one or negative one, depending "
-"on the signs of the components."
+"on the signs of the components, or zero if the component is zero, by calling "
+"[method @GDScript.sign] on each component."
msgstr ""
-#: doc/classes/Vector2.xml:293 doc/classes/Vector3.xml:294
+#: doc/classes/Vector2.xml:298 doc/classes/Vector3.xml:299
msgid ""
"Returns the result of spherical linear interpolation between this vector and "
-"[code]b[/code], by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation.\n"
+"[code]b[/code], by amount [code]t[/code]. [code]t[/code] is on the range of "
+"0.0 to 1.0, representing the amount of interpolation.\n"
"[b]Note:[/b] Both vectors must be normalized."
msgstr ""
-#: doc/classes/Vector2.xml:303 doc/classes/Vector3.xml:304
-msgid ""
-"Returns the component of the vector along a plane defined by the given "
-"normal."
+#: doc/classes/Vector2.xml:308 doc/classes/Vector3.xml:309
+msgid "Returns this vector slid along a plane defined by the given normal."
msgstr ""
-#: doc/classes/Vector2.xml:312 doc/classes/Vector3.xml:313
-msgid "Returns the vector snapped to a grid with the given size."
+#: doc/classes/Vector2.xml:317 doc/classes/Vector3.xml:318
+msgid ""
+"Returns this vector with each component snapped to the nearest multiple of "
+"[code]step[/code]. This can also be used to round to an arbitrary number of "
+"decimals."
msgstr ""
-#: doc/classes/Vector2.xml:319
-msgid "Returns a perpendicular vector."
+#: doc/classes/Vector2.xml:324
+msgid ""
+"Returns a perpendicular vector rotated 90 degrees counter-clockwise compared "
+"to the original, with the same length."
msgstr ""
-#: doc/classes/Vector2.xml:325 doc/classes/Vector2i.xml:59
-#: doc/classes/Vector3.xml:326 doc/classes/Vector3i.xml:61
+#: doc/classes/Vector2.xml:330 doc/classes/Vector2i.xml:59
+#: doc/classes/Vector3.xml:332 doc/classes/Vector3i.xml:61
msgid ""
"The vector's X component. Also accessible by using the index position [code]"
"[0][/code]."
msgstr ""
-#: doc/classes/Vector2.xml:328 doc/classes/Vector2i.xml:62
-#: doc/classes/Vector3.xml:329 doc/classes/Vector3i.xml:64
+#: doc/classes/Vector2.xml:333 doc/classes/Vector2i.xml:62
+#: doc/classes/Vector3.xml:335 doc/classes/Vector3i.xml:64
msgid ""
"The vector's Y component. Also accessible by using the index position [code]"
"[1][/code]."
msgstr ""
-#: doc/classes/Vector2.xml:333 doc/classes/Vector2i.xml:67
+#: doc/classes/Vector2.xml:338 doc/classes/Vector2i.xml:67
#: doc/classes/Vector3i.xml:72
msgid "Enumerated value for the X axis."
msgstr ""
-#: doc/classes/Vector2.xml:336 doc/classes/Vector2i.xml:70
+#: doc/classes/Vector2.xml:341 doc/classes/Vector2i.xml:70
#: doc/classes/Vector3i.xml:75
msgid "Enumerated value for the Y axis."
msgstr ""
-#: doc/classes/Vector2.xml:339 doc/classes/Vector2i.xml:73
-#: doc/classes/Vector3.xml:346 doc/classes/Vector3i.xml:81
-msgid "Zero vector."
+#: doc/classes/Vector2.xml:344 doc/classes/Vector2i.xml:73
+#: doc/classes/Vector3.xml:352 doc/classes/Vector3i.xml:81
+msgid "Zero vector, a vector with all components set to [code]0[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:342 doc/classes/Vector2i.xml:76
-#: doc/classes/Vector3.xml:349 doc/classes/Vector3i.xml:84
-msgid "One vector."
+#: doc/classes/Vector2.xml:347 doc/classes/Vector2i.xml:76
+#: doc/classes/Vector3.xml:355 doc/classes/Vector3i.xml:84
+msgid "One vector, a vector with all components set to [code]1[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:345 doc/classes/Vector3.xml:352
-msgid "Infinity vector."
+#: doc/classes/Vector2.xml:350 doc/classes/Vector3.xml:358
+msgid ""
+"Infinity vector, a vector with all components set to [constant @GDScript."
+"INF]."
msgstr ""
-#: doc/classes/Vector2.xml:348 doc/classes/Vector2i.xml:79
-#: doc/classes/Vector3.xml:355 doc/classes/Vector3i.xml:87
-msgid "Left unit vector."
+#: doc/classes/Vector2.xml:353 doc/classes/Vector2i.xml:79
+msgid "Left unit vector. Represents the direction of left."
msgstr ""
-#: doc/classes/Vector2.xml:351 doc/classes/Vector2i.xml:82
-#: doc/classes/Vector3.xml:358 doc/classes/Vector3i.xml:90
-msgid "Right unit vector."
+#: doc/classes/Vector2.xml:356 doc/classes/Vector2i.xml:82
+msgid "Right unit vector. Represents the direction of right."
msgstr ""
-#: doc/classes/Vector2.xml:354 doc/classes/Vector2i.xml:85
-#: doc/classes/Vector3.xml:361 doc/classes/Vector3i.xml:93
-msgid "Up unit vector."
+#: doc/classes/Vector2.xml:359 doc/classes/Vector2i.xml:85
+msgid "Up unit vector. Y is down in 2D, so this vector points -Y."
msgstr ""
-#: doc/classes/Vector2.xml:357 doc/classes/Vector2i.xml:88
-#: doc/classes/Vector3.xml:364 doc/classes/Vector3i.xml:96
-msgid "Down unit vector."
+#: doc/classes/Vector2.xml:362 doc/classes/Vector2i.xml:88
+msgid "Down unit vector. Y is down in 2D, so this vector points +Y."
msgstr ""
#: doc/classes/Vector2i.xml:4
@@ -53749,6 +54700,16 @@ msgid ""
"will be truncated."
msgstr ""
+#: doc/classes/Vector2i.xml:46
+msgid "Returns the ratio of [member x] to [member y]."
+msgstr ""
+
+#: doc/classes/Vector2i.xml:53 doc/classes/Vector3i.xml:55
+msgid ""
+"Returns the vector with each component set to one or negative one, depending "
+"on the signs of the components."
+msgstr ""
+
#: doc/classes/Vector3.xml:4
msgid "Vector used for 3D math using floating point coordinates."
msgstr ""
@@ -53773,120 +54734,170 @@ msgid "Returns a [Vector3] with the given components."
msgstr ""
#: doc/classes/Vector3.xml:50
-msgid "Returns the minimum angle to the given vector."
+msgid "Returns the minimum angle to the given vector, in radians."
msgstr ""
#: doc/classes/Vector3.xml:66
-msgid "Returns a new vector with all components rounded up."
+msgid ""
+"Returns a new vector with all components rounded up (towards positive "
+"infinity)."
msgstr ""
#: doc/classes/Vector3.xml:75
-msgid "Returns the cross product with [code]b[/code]."
+msgid "Returns the cross product of this vector and [code]b[/code]."
msgstr ""
#: doc/classes/Vector3.xml:90
msgid ""
"Performs a cubic interpolation between vectors [code]pre_a[/code], [code]a[/"
"code], [code]b[/code], [code]post_b[/code] ([code]a[/code] is current), by "
-"the given amount [code]t[/code]. [code]t[/code] is in the range of [code]0.0 "
-"- 1.0[/code], representing the amount of interpolation."
+"the given amount [code]t[/code]. [code]t[/code] is on the range of 0.0 to "
+"1.0, representing the amount of interpolation."
msgstr ""
-#: doc/classes/Vector3.xml:108
-msgid ""
-"Returns the squared distance to [code]b[/code]. Prefer this function over "
-"[method distance_to] if you need to sort vectors or need the squared "
-"distance for some formula."
+#: doc/classes/Vector3.xml:118
+msgid "Returns the distance between this vector and [code]b[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:117
-msgid "Returns the distance to [code]b[/code]."
-msgstr ""
-
-#: doc/classes/Vector3.xml:126
-msgid "Returns the dot product with [code]b[/code]."
+#: doc/classes/Vector3.xml:127
+msgid ""
+"Returns the dot product of this vector and [code]b[/code]. This can be used "
+"to compare the angle between two vectors. For example, this can be used to "
+"determine whether an enemy is facing the player.\n"
+"The dot product will be [code]0[/code] for a straight angle (90 degrees), "
+"greater than 0 for angles narrower than 90 degrees and lower than 0 for "
+"angles wider than 90 degrees.\n"
+"When using unit (normalized) vectors, the result will always be between "
+"[code]-1.0[/code] (180 degree angle) when the vectors are facing opposite "
+"directions, and [code]1.0[/code] (0 degree angle) when the vectors are "
+"aligned.\n"
+"[b]Note:[/b] [code]a.dot(b)[/code] is equivalent to [code]b.dot(a)[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:133
-msgid "Returns a new vector with all components rounded down."
+#: doc/classes/Vector3.xml:137
+msgid ""
+"Returns a new vector with all components rounded down (towards negative "
+"infinity)."
msgstr ""
-#: doc/classes/Vector3.xml:140
+#: doc/classes/Vector3.xml:144
msgid ""
"Returns the inverse of the vector. This is the same as [code]Vector3( 1.0 / "
"v.x, 1.0 / v.y, 1.0 / v.z )[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:170
+#: doc/classes/Vector3.xml:193 doc/classes/Vector3i.xml:41
msgid ""
-"Returns the vector's length squared. Prefer this function over [method "
-"length] if you need to sort vectors or need the squared length for some "
-"formula."
+"Returns the axis of the vector's largest value. See [code]AXIS_*[/code] "
+"constants. If all components are equal, this method returns [constant "
+"AXIS_X]."
msgstr ""
-#: doc/classes/Vector3.xml:181
+#: doc/classes/Vector3.xml:200 doc/classes/Vector3i.xml:48
msgid ""
-"Returns the result of the linear interpolation between this vector and "
-"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation.."
+"Returns the axis of the vector's smallest value. See [code]AXIS_*[/code] "
+"constants. If all components are equal, this method returns [constant "
+"AXIS_Z]."
msgstr ""
-#: doc/classes/Vector3.xml:188 doc/classes/Vector3i.xml:41
+#: doc/classes/Vector3.xml:211
msgid ""
-"Returns the axis of the vector's largest value. See [code]AXIS_*[/code] "
-"constants."
+"Moves this vector toward [code]to[/code] by the fixed [code]delta[/code] "
+"amount."
+msgstr ""
+
+#: doc/classes/Vector3.xml:227
+msgid "Returns the outer product with [code]b[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:195 doc/classes/Vector3i.xml:48
+#: doc/classes/Vector3.xml:254
+msgid "Returns this vector projected onto another vector [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:263
+msgid "Returns this vector reflected from a plane defined by the given normal."
+msgstr ""
+
+#: doc/classes/Vector3.xml:274
msgid ""
-"Returns the axis of the vector's smallest value. See [code]AXIS_*[/code] "
-"constants."
+"Rotates this vector around a given axis by [code]phi[/code] radians. The "
+"axis must be a normalized vector."
msgstr ""
-#: doc/classes/Vector3.xml:222
-msgid "Returns the outer product with [code]b[/code]."
+#: doc/classes/Vector3.xml:281
+msgid ""
+"Returns this vector with all components rounded to the nearest integer, with "
+"halfway cases rounded away from zero."
msgstr ""
-#: doc/classes/Vector3.xml:269
+#: doc/classes/Vector3.xml:288
msgid ""
-"Rotates the vector around a given axis by [code]phi[/code] radians. The axis "
-"must be a normalized vector."
+"Returns a vector with each component set to one or negative one, depending "
+"on the signs of this vector's components, or zero if the component is zero, "
+"by calling [method @GDScript.sign] on each component."
msgstr ""
-#: doc/classes/Vector3.xml:320
-msgid "Returns a diagonal matrix with the vector as main diagonal."
+#: doc/classes/Vector3.xml:325
+msgid ""
+"Returns a diagonal matrix with the vector as main diagonal.\n"
+"This is equivalent to a Basis with no rotation or shearing and this vector's "
+"components set as the scale."
msgstr ""
-#: doc/classes/Vector3.xml:332 doc/classes/Vector3i.xml:67
+#: doc/classes/Vector3.xml:338 doc/classes/Vector3i.xml:67
msgid ""
"The vector's Z component. Also accessible by using the index position [code]"
"[2][/code]."
msgstr ""
-#: doc/classes/Vector3.xml:337
+#: doc/classes/Vector3.xml:343
msgid ""
"Enumerated value for the X axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:340
+#: doc/classes/Vector3.xml:346
msgid ""
"Enumerated value for the Y axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:343
+#: doc/classes/Vector3.xml:349
msgid ""
"Enumerated value for the Z axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:367 doc/classes/Vector3i.xml:99
-msgid "Forward unit vector."
+#: doc/classes/Vector3.xml:361 doc/classes/Vector3i.xml:87
+msgid ""
+"Left unit vector. Represents the local direction of left, and the global "
+"direction of west."
+msgstr ""
+
+#: doc/classes/Vector3.xml:364 doc/classes/Vector3i.xml:90
+msgid ""
+"Right unit vector. Represents the local direction of right, and the global "
+"direction of east."
+msgstr ""
+
+#: doc/classes/Vector3.xml:367 doc/classes/Vector3i.xml:93
+msgid "Up unit vector."
+msgstr ""
+
+#: doc/classes/Vector3.xml:370 doc/classes/Vector3i.xml:96
+msgid "Down unit vector."
+msgstr ""
+
+#: doc/classes/Vector3.xml:373 doc/classes/Vector3i.xml:99
+msgid ""
+"Forward unit vector. Represents the local direction of forward, and the "
+"global direction of north."
msgstr ""
-#: doc/classes/Vector3.xml:370 doc/classes/Vector3i.xml:102
-msgid "Back unit vector."
+#: doc/classes/Vector3.xml:376 doc/classes/Vector3i.xml:102
+msgid ""
+"Back unit vector. Represents the local direction of back, and the global "
+"direction of south."
msgstr ""
#: doc/classes/Vector3i.xml:4
@@ -53935,10 +54946,14 @@ msgid ""
"directly.\n"
"[b]Note:[/b] The origin point of your VehicleBody3D will determine the "
"center of gravity of your vehicle so it is better to keep this low and move "
-"the [CollisionShape3D] and [MeshInstance3D] upwards."
+"the [CollisionShape3D] and [MeshInstance3D] upwards.\n"
+"[b]Note:[/b] This class has known issues and isn't designed to provide "
+"realistic 3D vehicle physics. If you want advanced vehicle physics, you will "
+"probably have to write your own physics integration using another "
+"[PhysicsBody3D] class."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:16
+#: doc/classes/VehicleBody3D.xml:17
msgid ""
"Slows down the vehicle by applying a braking force. The vehicle is only "
"slowed down if the wheels are in contact with a surface. The force you need "
@@ -53947,7 +54962,7 @@ msgid ""
"a value in the 25 - 30 range for hard braking."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:19
+#: doc/classes/VehicleBody3D.xml:20
msgid ""
"Accelerates the vehicle by applying an engine force. The vehicle is only "
"speed up if the wheels that have [member VehicleWheel3D.use_as_traction] set "
@@ -53960,7 +54975,7 @@ msgid ""
"A negative value will result in the vehicle reversing."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:25
+#: doc/classes/VehicleBody3D.xml:26
msgid ""
"The steering angle for the vehicle. Setting this to a non-zero value will "
"result in the vehicle turning when it's moving. Wheels that have [member "
@@ -53976,25 +54991,29 @@ msgstr ""
msgid ""
"This node needs to be used as a child node of [VehicleBody3D] and simulates "
"the behavior of one of its wheels. This node also acts as a collider to "
-"detect if the wheel is touching a surface."
+"detect if the wheel is touching a surface.\n"
+"[b]Note:[/b] This class has known issues and isn't designed to provide "
+"realistic 3D vehicle physics. If you want advanced vehicle physics, you will "
+"probably have to write your own physics integration using another "
+"[PhysicsBody3D] class."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:16
+#: doc/classes/VehicleWheel3D.xml:17
msgid "Returns the rotational speed of the wheel in revolutions per minute."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:23
+#: doc/classes/VehicleWheel3D.xml:24
msgid ""
"Returns a value between 0.0 and 1.0 that indicates whether this wheel is "
"skidding. 0.0 is skidding (the wheel has lost grip, e.g. icy terrain), 1.0 "
"means not skidding (the wheel has full grip, e.g. dry asphalt road)."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:30
+#: doc/classes/VehicleWheel3D.xml:31
msgid "Returns [code]true[/code] if this wheel is in contact with a surface."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:36
+#: doc/classes/VehicleWheel3D.xml:37
msgid ""
"Slows down the wheel by applying a braking force. The wheel is only slowed "
"down if it is in contact with a surface. The force you need to apply to "
@@ -54003,7 +55022,7 @@ msgid ""
"- 30 range for hard braking."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:39
+#: doc/classes/VehicleWheel3D.xml:40
msgid ""
"The damping applied to the spring when the spring is being compressed. This "
"value should be between 0.0 (no damping) and 1.0. A value of 0.0 means the "
@@ -54011,7 +55030,7 @@ msgid ""
"is around 0.3 for a normal car, 0.5 for a race car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:42
+#: doc/classes/VehicleWheel3D.xml:43
msgid ""
"The damping applied to the spring when relaxing. This value should be "
"between 0.0 (no damping) and 1.0. This value should always be slightly "
@@ -54019,7 +55038,7 @@ msgid ""
"damping_compression] value of 0.3, try a relaxation value of 0.5."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:45
+#: doc/classes/VehicleWheel3D.xml:46
msgid ""
"Accelerates the wheel by applying an engine force. The wheel is only speed "
"up if it is in contact with a surface. The [member RigidBody3D.mass] of the "
@@ -54030,13 +55049,13 @@ msgid ""
"A negative value will result in the wheel reversing."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:50
+#: doc/classes/VehicleWheel3D.xml:51
msgid ""
"The steering angle for the wheel. Setting this to a non-zero value will "
"result in the vehicle turning when it's moving."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:53
+#: doc/classes/VehicleWheel3D.xml:54
msgid ""
"The maximum force the spring can resist. This value should be higher than a "
"quarter of the [member RigidBody3D.mass] of the [VehicleBody3D] or the "
@@ -54044,28 +55063,28 @@ msgid ""
"obtained by a value that is about 3× to 4× this number."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:56
+#: doc/classes/VehicleWheel3D.xml:57
msgid ""
"This value defines the stiffness of the suspension. Use a value lower than "
"50 for an off-road car, a value between 50 and 100 for a race car and try "
"something around 200 for something like a Formula 1 car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:59
+#: doc/classes/VehicleWheel3D.xml:60
msgid ""
"This is the distance the suspension can travel. As Godot units are "
"equivalent to meters, keep this setting relatively low. Try a value between "
"0.1 and 0.3 depending on the type of car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:62
+#: doc/classes/VehicleWheel3D.xml:63
msgid ""
"If [code]true[/code], this wheel will be turned when the car steers. This "
"value is used in conjunction with [member VehicleBody3D.steering] and "
"ignored if you are using the per-wheel [member steering] value instead."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:65
+#: doc/classes/VehicleWheel3D.xml:66
msgid ""
"If [code]true[/code], this wheel transfers engine force to the ground to "
"propel the vehicle forward. This value is used in conjunction with [member "
@@ -54073,7 +55092,7 @@ msgid ""
"[member engine_force] value instead."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:68
+#: doc/classes/VehicleWheel3D.xml:69
msgid ""
"This determines how much grip this wheel has. It is combined with the "
"friction setting of the surface the wheel is in contact with. 0.0 means no "
@@ -54083,11 +55102,11 @@ msgid ""
"It's best to set this to 1.0 when starting out."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:72
+#: doc/classes/VehicleWheel3D.xml:73
msgid "The radius of the wheel in meters."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:75
+#: doc/classes/VehicleWheel3D.xml:76
msgid ""
"This is the distance in meters the wheel is lowered from its origin point. "
"Don't set this to 0.0 and move the wheel into position, instead move the "
@@ -54096,7 +55115,7 @@ msgid ""
"down to the position it should be in when the car is in rest."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:78
+#: doc/classes/VehicleWheel3D.xml:79
msgid ""
"This value affects the roll of your vehicle. If set to 1.0 for all wheels, "
"your vehicle will be prone to rolling over, while a value of 0.0 will resist "
@@ -54574,7 +55593,7 @@ msgstr ""
#: doc/classes/Viewport.xml:318
msgid ""
"Use fast approximate antialiasing. FXAA is a popular screen-space "
-"antialising method, which is fast but will make the image look blurry, "
+"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."
msgstr ""
@@ -54627,24 +55646,24 @@ msgid ""
"your [WorldEnvironment]."
msgstr ""
-#: doc/classes/Viewport.xml:384
+#: doc/classes/Viewport.xml:381
msgid ""
"Colors each PSSM split for the [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, and yellow."
msgstr ""
-#: doc/classes/Viewport.xml:387
+#: doc/classes/Viewport.xml:384
msgid ""
"Draws the decal atlas used by [Decal]s and light projector textures in the "
"upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/Viewport.xml:402
+#: doc/classes/Viewport.xml:405
msgid "Max value for [enum DefaultCanvasItemTextureFilter] enum."
msgstr ""
-#: doc/classes/Viewport.xml:414
+#: doc/classes/Viewport.xml:417
msgid "Max value for [enum DefaultCanvasItemTextureRepeat] enum."
msgstr ""
@@ -54675,82 +55694,84 @@ msgid ""
"The VisibilityEnabler2D will disable [RigidBody2D], [AnimationPlayer], and "
"other nodes when they are not visible. It will only affect nodes with the "
"same root node as the VisibilityEnabler2D, and the root node itself.\n"
+"If you just want to receive notifications, use [VisibilityNotifier2D] "
+"instead.\n"
"[b]Note:[/b] For performance reasons, VisibilityEnabler2D uses an "
"approximate heuristic with precision determined by [member ProjectSettings."
-"world/2d/cell_size]. If you need exact visibility checking, use another "
+"world/2d/cell_size]. If you need precise visibility checking, use another "
"method such as adding an [Area2D] node as a child of a [Camera2D] node.\n"
"[b]Note:[/b] VisibilityEnabler2D will not affect nodes added after scene "
"initialization."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:20
-#: doc/classes/VisibilityEnabler3D.xml:20
+#: doc/classes/VisibilityEnabler2D.xml:21
+#: doc/classes/VisibilityEnabler3D.xml:21
msgid ""
"Returns whether the enabler identified by given [enum Enabler] constant is "
"active."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:31
-#: doc/classes/VisibilityEnabler3D.xml:31
+#: doc/classes/VisibilityEnabler2D.xml:32
+#: doc/classes/VisibilityEnabler3D.xml:32
msgid ""
"Sets active state of the enabler identified by given [enum Enabler] constant."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:37
+#: doc/classes/VisibilityEnabler2D.xml:38
msgid "If [code]true[/code], [RigidBody2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:40
+#: doc/classes/VisibilityEnabler2D.xml:41
msgid "If [code]true[/code], [AnimatedSprite2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:43
-#: doc/classes/VisibilityEnabler3D.xml:40
+#: doc/classes/VisibilityEnabler2D.xml:44
+#: doc/classes/VisibilityEnabler3D.xml:41
msgid "If [code]true[/code], [AnimationPlayer] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:46
+#: doc/classes/VisibilityEnabler2D.xml:47
msgid "If [code]true[/code], [GPUParticles2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:49
+#: doc/classes/VisibilityEnabler2D.xml:50
msgid ""
"If [code]true[/code], the parent's [method Node._physics_process] will be "
"stopped."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:52
+#: doc/classes/VisibilityEnabler2D.xml:53
msgid ""
"If [code]true[/code], the parent's [method Node._process] will be stopped."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:57
-#: doc/classes/VisibilityEnabler3D.xml:45
+#: doc/classes/VisibilityEnabler2D.xml:58
+#: doc/classes/VisibilityEnabler3D.xml:46
msgid "This enabler will pause [AnimationPlayer] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:60
+#: doc/classes/VisibilityEnabler2D.xml:61
msgid "This enabler will freeze [RigidBody2D] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:63
+#: doc/classes/VisibilityEnabler2D.xml:64
msgid "This enabler will stop [GPUParticles2D] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:66
+#: doc/classes/VisibilityEnabler2D.xml:67
msgid "This enabler will stop the parent's _process function."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:69
+#: doc/classes/VisibilityEnabler2D.xml:70
msgid "This enabler will stop the parent's _physics_process function."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:72
+#: doc/classes/VisibilityEnabler2D.xml:73
msgid "This enabler will stop [AnimatedSprite2D] nodes animations."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:75
-#: doc/classes/VisibilityEnabler3D.xml:51
+#: doc/classes/VisibilityEnabler2D.xml:76
+#: doc/classes/VisibilityEnabler3D.xml:52
msgid "Represents the size of the [enum Enabler] enum."
msgstr ""
@@ -54759,19 +55780,23 @@ msgid ""
"The VisibilityEnabler3D will disable [RigidBody3D] and [AnimationPlayer] "
"nodes when they are not visible. It will only affect other nodes within the "
"same scene as the VisibilityEnabler3D itself.\n"
+"If you just want to receive notifications, use [VisibilityNotifier3D] "
+"instead.\n"
"[b]Note:[/b] VisibilityEnabler3D uses an approximate heuristic for "
"performance reasons. It doesn't take walls and other occlusion into account. "
-"If you need exact visibility checking, use another method such as adding an "
-"[Area3D] node as a child of a [Camera3D] node.\n"
+"The heuristic is an implementation detail and may change in future versions. "
+"If you need precise visibility checking, use another method such as adding "
+"an [Area3D] node as a child of a [Camera3D] node and/or [method Vector3."
+"dot].\n"
"[b]Note:[/b] VisibilityEnabler3D will not affect nodes added after scene "
"initialization."
msgstr ""
-#: doc/classes/VisibilityEnabler3D.xml:37
+#: doc/classes/VisibilityEnabler3D.xml:38
msgid "If [code]true[/code], [RigidBody3D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler3D.xml:48
+#: doc/classes/VisibilityEnabler3D.xml:49
msgid "This enabler will freeze [RigidBody3D] nodes."
msgstr ""
@@ -54785,13 +55810,15 @@ msgid ""
"The VisibilityNotifier2D detects when it is visible on the screen. It also "
"notifies when its bounding rectangle enters or exits the screen or a "
"viewport.\n"
+"If you want nodes to be disabled automatically when they exit the screen, "
+"use [VisibilityEnabler2D] instead.\n"
"[b]Note:[/b] For performance reasons, VisibilityNotifier2D uses an "
"approximate heuristic with precision determined by [member ProjectSettings."
-"world/2d/cell_size]. If you need exact visibility checking, use another "
+"world/2d/cell_size]. If you need precise visibility checking, use another "
"method such as adding an [Area2D] node as a child of a [Camera2D] node."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:17
+#: doc/classes/VisibilityNotifier2D.xml:18
msgid ""
"If [code]true[/code], the bounding rectangle is on the screen.\n"
"[b]Note:[/b] It takes one frame for the node's visibility to be assessed "
@@ -54800,23 +55827,23 @@ msgid ""
"pass."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:24
+#: doc/classes/VisibilityNotifier2D.xml:25
msgid "The VisibilityNotifier2D's bounding rectangle."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:30
+#: doc/classes/VisibilityNotifier2D.xml:31
msgid "Emitted when the VisibilityNotifier2D enters the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:35
+#: doc/classes/VisibilityNotifier2D.xml:36
msgid "Emitted when the VisibilityNotifier2D exits the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:42
+#: doc/classes/VisibilityNotifier2D.xml:43
msgid "Emitted when the VisibilityNotifier2D enters a [Viewport]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:49
+#: doc/classes/VisibilityNotifier2D.xml:50
msgid "Emitted when the VisibilityNotifier2D exits a [Viewport]'s view."
msgstr ""
@@ -54825,13 +55852,16 @@ msgid ""
"The VisibilityNotifier3D detects when it is visible on the screen. It also "
"notifies when its bounding rectangle enters or exits the screen or a "
"[Camera3D]'s view.\n"
+"If you want nodes to be disabled automatically when they exit the screen, "
+"use [VisibilityEnabler3D] instead.\n"
"[b]Note:[/b] VisibilityNotifier3D uses an approximate heuristic for "
"performance reasons. It doesn't take walls and other occlusion into account. "
-"If you need exact visibility checking, use another method such as adding an "
-"[Area3D] node as a child of a [Camera3D] node."
+"The heuristic is an implementation detail and may change in future versions. "
+"If you need precise visibility checking, use another method such as adding "
+"an [Area3D] node as a child of a [Camera3D] node and/or [method Vector3.dot]."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:17
+#: doc/classes/VisibilityNotifier3D.xml:18
msgid ""
"If [code]true[/code], the bounding box is on the screen.\n"
"[b]Note:[/b] It takes one frame for the node's visibility to be assessed "
@@ -54840,23 +55870,23 @@ msgid ""
"pass."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:24
+#: doc/classes/VisibilityNotifier3D.xml:25
msgid "The VisibilityNotifier3D's bounding box."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:32
+#: doc/classes/VisibilityNotifier3D.xml:33
msgid "Emitted when the VisibilityNotifier3D enters a [Camera3D]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:39
+#: doc/classes/VisibilityNotifier3D.xml:40
msgid "Emitted when the VisibilityNotifier3D exits a [Camera3D]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:44
+#: doc/classes/VisibilityNotifier3D.xml:45
msgid "Emitted when the VisibilityNotifier3D enters the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:49
+#: doc/classes/VisibilityNotifier3D.xml:50
msgid "Emitted when the VisibilityNotifier3D exits the screen."
msgstr ""
@@ -55276,6 +56306,15 @@ msgid ""
"exist."
msgstr ""
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:90
+msgid ""
+"Easing function, based on exponent. 0 is constant, 1 is linear, 0 to 1 is "
+"ease-in, 1+ is ease out. Negative values are in-out/out in."
+msgstr ""
+"缓动函数,基于指数。[code]s[/code]是函数的x值,[code]curve[/code]为0时,函数"
+"为常数函数,1是线性函数,0到1是缓入,1+是缓出。0到-1是缓出å†ç¼“入,低于-1是缓"
+"å…¥å†ç¼“出。"
+
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:93
msgid ""
"Return the number of digit places after the decimal that the first non-zero "
@@ -56161,6 +57200,7 @@ msgid "A shader for light calculations."
msgstr ""
#: doc/classes/VisualShader.xml:214
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:26
msgid "Represents the size of the [enum Type] enum."
msgstr ""
@@ -56263,6 +57303,24 @@ msgstr ""
msgid "Translated to [code]uniform bool[/code] in the shader language."
msgstr ""
+#: doc/classes/VisualShaderNodeBooleanUniform.xml:15
+#: doc/classes/VisualShaderNodeColorUniform.xml:15
+#: doc/classes/VisualShaderNodeFloatUniform.xml:15
+#: doc/classes/VisualShaderNodeIntUniform.xml:15
+#: doc/classes/VisualShaderNodeTransformUniform.xml:15
+#: doc/classes/VisualShaderNodeVec3Uniform.xml:15
+msgid "A default value to be assigned within the shader."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeBooleanUniform.xml:18
+#: doc/classes/VisualShaderNodeColorUniform.xml:18
+#: doc/classes/VisualShaderNodeFloatUniform.xml:18
+#: doc/classes/VisualShaderNodeIntUniform.xml:18
+#: doc/classes/VisualShaderNodeTransformUniform.xml:18
+#: doc/classes/VisualShaderNodeVec3Uniform.xml:18
+msgid "Enables usage of the [member default_value]."
+msgstr ""
+
#: doc/classes/VisualShaderNodeColorConstant.xml:4
msgid "A [Color] constant to be used within the visual shader graph."
msgstr ""
@@ -57113,49 +58171,49 @@ msgstr ""
msgid "Translated to [code]uniform float[/code] in the shader language."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:15
-#: doc/classes/VisualShaderNodeIntUniform.xml:15
+#: doc/classes/VisualShaderNodeFloatUniform.xml:21
+#: doc/classes/VisualShaderNodeIntUniform.xml:21
msgid ""
"A hint applied to the uniform, which controls the values it can take when "
"set through the inspector."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:18
-#: doc/classes/VisualShaderNodeIntUniform.xml:18
+#: doc/classes/VisualShaderNodeFloatUniform.xml:24
+#: doc/classes/VisualShaderNodeIntUniform.xml:24
msgid ""
"Minimum value for range hints. Used if [member hint] is set to [constant "
"HINT_RANGE] or [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:21
-#: doc/classes/VisualShaderNodeIntUniform.xml:21
+#: doc/classes/VisualShaderNodeFloatUniform.xml:27
+#: doc/classes/VisualShaderNodeIntUniform.xml:27
msgid ""
"Maximum value for range hints. Used if [member hint] is set to [constant "
"HINT_RANGE] or [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:24
-#: doc/classes/VisualShaderNodeIntUniform.xml:24
+#: doc/classes/VisualShaderNodeFloatUniform.xml:30
+#: doc/classes/VisualShaderNodeIntUniform.xml:30
msgid ""
"Step (increment) value for the range hint with step. Used if [member hint] "
"is set to [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:29
-#: doc/classes/VisualShaderNodeIntUniform.xml:29
+#: doc/classes/VisualShaderNodeFloatUniform.xml:35
+#: doc/classes/VisualShaderNodeIntUniform.xml:35
msgid "No hint used."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:32
-#: doc/classes/VisualShaderNodeIntUniform.xml:32
+#: doc/classes/VisualShaderNodeFloatUniform.xml:38
+#: doc/classes/VisualShaderNodeIntUniform.xml:38
msgid ""
"A range hint for scalar value, which limits possible input values between "
"[member min] and [member max]. Translated to [code]hint_range(min, max)[/"
"code] in shader code."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:35
-#: doc/classes/VisualShaderNodeIntUniform.xml:35
+#: doc/classes/VisualShaderNodeFloatUniform.xml:41
+#: doc/classes/VisualShaderNodeIntUniform.xml:41
msgid ""
"A range hint for scalar value with step, which limits possible input values "
"between [member min] and [member max], with a step (increment) of [member "
@@ -57437,6 +58495,26 @@ msgid ""
"results, e.g. division by zero)."
msgstr ""
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:4
+msgid "Performs a fused multiply-add operation within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:7
+msgid "Uses three operands to compute [code](a * b + c)[/code] expression."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:15
+msgid "A type of operands and returned value."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:20
+msgid "A scalar type."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:23
+msgid "A vector type."
+msgstr ""
+
#: doc/classes/VisualShaderNodeOuterProduct.xml:4
msgid ""
"Calculates an outer product of two vectors within the visual shader graph."
@@ -57459,7 +58537,7 @@ msgstr ""
#: doc/classes/VisualShaderNodeOutput.xml:7
msgid ""
"This visual shader node is present in all shader graphs in form of \"Output"
-"\" block with mutliple output value ports."
+"\" block with multiple output value ports."
msgstr ""
#: doc/classes/VisualShaderNodeSample3D.xml:4
@@ -57823,6 +58901,20 @@ msgid ""
"[ShaderMaterial] properties."
msgstr ""
+#: doc/classes/VisualShaderNodeUniformRef.xml:4
+msgid "A reference to an existing [VisualShaderNodeUniform]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniformRef.xml:7
+msgid ""
+"Creating a reference to a [VisualShaderNodeUniform] allows you to reuse this "
+"uniform in different shaders or shader stages easily."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniformRef.xml:15
+msgid "The name of the uniform which this reference points to."
+msgstr ""
+
#: doc/classes/VisualShaderNodeVec3Constant.xml:4
msgid "A [Vector3] constant to be used within the visual shader graph."
msgstr ""
@@ -58153,7 +59245,7 @@ msgstr ""
msgid ""
"Translated to [code]refract(I, N, eta)[/code] in the shader language, where "
"[code]I[/code] is the incident vector, [code]N[/code] is the normal vector "
-"and [code]eta[/code] is the ratio of the indicies of the refraction."
+"and [code]eta[/code] is the ratio of the indices of the refraction."
msgstr ""
#: doc/classes/VisualShaderNodeVectorScalarMix.xml:4
@@ -59929,4 +61021,4 @@ msgstr ""
#: doc/classes/YSort.xml:16
msgid ""
"If [code]true[/code], child nodes are sorted, otherwise sorting is disabled."
-msgstr ""
+msgstr "如果为 [code]true[/code],则对å­èŠ‚点进行排åºï¼Œå¦åˆ™å°†ç¦ç”¨æŽ’åºã€‚"
diff --git a/doc/translations/zh_Hant.po b/doc/translations/zh_Hant.po
index 92f3552905..e09b693f6e 100644
--- a/doc/translations/zh_Hant.po
+++ b/doc/translations/zh_Hant.po
@@ -5,20 +5,21 @@
#
# binotaliu <binota@protonmail.ch>, 2020.
# BinotaLIU <me@binota.org>, 2020.
+# Eric K <eric900601@gmail.com>, 2020.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine class reference\n"
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
-"PO-Revision-Date: 2020-06-03 20:09+0000\n"
-"Last-Translator: BinotaLIU <me@binota.org>\n"
+"PO-Revision-Date: 2020-08-04 06:42+0000\n"
+"Last-Translator: Eric K <eric900601@gmail.com>\n"
"Language-Team: Chinese (Traditional) <https://hosted.weblate.org/projects/"
"godot-engine/godot-class-reference/zh_Hant/>\n"
"Language: zh_Hant\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8-bit\n"
-"Plural-Forms: nplurals=2; plural=n != 1;\n"
-"X-Generator: Weblate 4.1-dev\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+"X-Generator: Weblate 4.2-dev\n"
#: doc/tools/makerst.py
msgid "Description"
@@ -62,7 +63,7 @@ msgstr "方法說明"
#: modules/gdscript/doc_classes/@GDScript.xml:4
msgid "Built-in GDScript functions."
-msgstr ""
+msgstr "內建 GDScript 函å¼ã€‚"
#: modules/gdscript/doc_classes/@GDScript.xml:7
msgid ""
@@ -70,6 +71,8 @@ msgid ""
"utilities. Everything else is provided by objects. (Keywords: builtin, built "
"in, global functions.)"
msgstr ""
+"GDScript 核心內建函å¼åˆ—表,包å«æ•¸å­¸å‡½å¼èˆ‡å…¶ä»–公用程å¼ã€‚其餘功能則以物件æ"
+"供。 (é—œéµå­—:內建ã€å…¨åŸŸå‡½å¼ã€buildinã€build inã€global functions)"
#: modules/gdscript/doc_classes/@GDScript.xml:24
msgid ""
@@ -84,6 +87,15 @@ msgid ""
"red = Color8(255, 0, 0)\n"
"[/codeblock]"
msgstr ""
+"回傳以整數紅色ã€ç¶ è‰²ã€è—色與 Alpha 通é“構æˆçš„色彩。æ¯å€‹é€šé“éƒ½æ‡‰åŒ…å« 0 至 255 "
+"çš„ 8 ä½å…ƒè³‡è¨Šã€‚\n"
+"[code]r8[/code] 紅色通é“\n"
+"[code]g8[/code] 綠色通é“\n"
+"[code]b8[/code] è—色通é“\n"
+"[code]a8[/code] Alpha 通é“\n"
+"[codeblock]\n"
+"red = Color8(255, 0, 0)\n"
+"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:42
msgid ""
@@ -94,16 +106,28 @@ msgid ""
"[/codeblock]\n"
"Supported color names are the same as the constants defined in [Color]."
msgstr ""
+"回傳以標準化的å稱 [code]name[/code] 與介於 0 至 1 é–“çš„ Alpha [code]alpha[/"
+"code] 組æˆçš„色彩。\n"
+"[codeblock]\n"
+"red = ColorN(\"red\", 1)\n"
+"[/codeblock]\n"
+"支æ´çš„色彩å稱與 [Color] 中定義的常數相åŒã€‚"
#: modules/gdscript/doc_classes/@GDScript.xml:55
+#, fuzzy
msgid ""
-"Returns the absolute value of parameter [code]s[/code] (i.e. unsigned value, "
-"works for integer and float).\n"
+"Returns the absolute value of parameter [code]s[/code] (i.e. positive "
+"value).\n"
"[codeblock]\n"
"# a is 1\n"
"a = abs(-1)\n"
"[/codeblock]"
msgstr ""
+"回傳åƒæ•¸ [code]s[/code] 的絕å°å€¼ (å³ç„¡è™Ÿå€¼ï¼Œå¯ç”¨æ–¼æ•´æ•¸èˆ‡æµ®é»žæ•¸)。\n"
+"[codeblock]\n"
+"# a 為 1\n"
+"a = abs(-1)\n"
+"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:68
msgid ""
@@ -114,6 +138,12 @@ msgid ""
"c = acos(0.866025)\n"
"[/codeblock]"
msgstr ""
+"回傳以弧度表示的[code]s[/code]çš„å餘弦(cos)值。用於求餘弦(sin)值[code]s[/"
+"code]的夾角。\n"
+"[codeblock]\n"
+"# c 為0.523599,若以rad2deg(s)æ›ç®—,則為30度\n"
+"c = acos(0.866025)\n"
+"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:81
msgid ""
@@ -153,7 +183,7 @@ msgid ""
"angle from an angle's tangent in trigonometry: [code]atan(tan(angle)) == "
"angle[/code].\n"
"The method cannot know in which quadrant the angle should fall. See [method "
-"atan2] if you always want an exact angle.\n"
+"atan2] if you have both [code]y[/code] and [code]x[/code].\n"
"[codeblock]\n"
"a = atan(0.5) # a is 0.463648\n"
"[/codeblock]"
@@ -164,12 +194,13 @@ msgid ""
"Returns the arc tangent of [code]y/x[/code] in radians. Use to get the angle "
"of tangent [code]y/x[/code]. To compute the value, the method takes into "
"account the sign of both arguments in order to determine the quadrant.\n"
+"Important note: The Y coordinate comes first, by convention.\n"
"[codeblock]\n"
"a = atan2(0, -1) # a is 3.141593\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:143
+#: modules/gdscript/doc_classes/@GDScript.xml:144
msgid ""
"Decodes a byte array back to a value. When [code]allow_objects[/code] is "
"[code]true[/code] decoding objects is allowed.\n"
@@ -178,7 +209,7 @@ msgid ""
"avoid potential security threats (remote code execution)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:155
+#: modules/gdscript/doc_classes/@GDScript.xml:156
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:145
msgid ""
"Converts a 2D point expressed in the cartesian coordinate system (X and Y "
@@ -186,17 +217,17 @@ msgid ""
"angle)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:164
+#: modules/gdscript/doc_classes/@GDScript.xml:165
msgid ""
-"Rounds [code]s[/code] upward, returning the smallest integral value that is "
-"not less than [code]s[/code].\n"
+"Rounds [code]s[/code] upward (towards positive infinity), returning the "
+"smallest whole number that is not less than [code]s[/code].\n"
"[codeblock]\n"
"i = ceil(1.45) # i is 2\n"
"i = ceil(1.001) # i is 2\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:177
+#: modules/gdscript/doc_classes/@GDScript.xml:178
msgid ""
"Returns a character as a String of the given Unicode code point (which is "
"compatible with ASCII code).\n"
@@ -208,7 +239,7 @@ msgid ""
"This is the inverse of [method ord]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:196
+#: modules/gdscript/doc_classes/@GDScript.xml:197
msgid ""
"Clamps [code]value[/code] and returns a value not less than [code]min[/code] "
"and not more than [code]max[/code].\n"
@@ -223,7 +254,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:216
+#: modules/gdscript/doc_classes/@GDScript.xml:217
msgid ""
"Converts from a type to another in the best way possible. The [code]type[/"
"code] parameter uses the [enum Variant.Type] values.\n"
@@ -237,7 +268,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:233
+#: modules/gdscript/doc_classes/@GDScript.xml:234
msgid ""
"Returns the cosine of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -247,7 +278,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:247
+#: modules/gdscript/doc_classes/@GDScript.xml:248
msgid ""
"Returns the hyperbolic cosine of [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -256,11 +287,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:260
+#: modules/gdscript/doc_classes/@GDScript.xml:261
msgid "Converts from decibels to linear energy (audio)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:273
+#: modules/gdscript/doc_classes/@GDScript.xml:274
msgid ""
"Returns the result of [code]value[/code] decreased by [code]step[/code] * "
"[code]amount[/code].\n"
@@ -270,42 +301,44 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:286
+#: modules/gdscript/doc_classes/@GDScript.xml:287
msgid ""
-"Returns degrees converted to radians.\n"
+"Converts an angle expressed in degrees to radians.\n"
"[codeblock]\n"
"# r is 3.141593\n"
"r = deg2rad(180)\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:299
+#: modules/gdscript/doc_classes/@GDScript.xml:300
msgid ""
"Converts a previously converted instance to a dictionary, back into an "
"instance. Useful for deserializing."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:310
-#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:90
+#: modules/gdscript/doc_classes/@GDScript.xml:311
msgid ""
-"Easing function, based on exponent. 0 is constant, 1 is linear, 0 to 1 is "
-"ease-in, 1+ is ease out. Negative values are in-out/out in."
+"Easing function, based on exponent. The curve values are: 0 is constant, 1 "
+"is linear, 0 to 1 is ease-in, 1+ is ease out. Negative values are in-out/out "
+"in."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:319
+#: modules/gdscript/doc_classes/@GDScript.xml:320
msgid ""
"The natural exponential function. It raises the mathematical constant [b]e[/"
"b] to the power of [code]s[/code] and returns it.\n"
-"[b]e[/b] has an approximate value of 2.71828.\n"
+"[b]e[/b] has an approximate value of 2.71828, and can be obtained with "
+"[code]exp(1)[/code].\n"
"For exponents to other bases use the method [method pow].\n"
"[codeblock]\n"
"a = exp(2) # Approximately 7.39\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:333
+#: modules/gdscript/doc_classes/@GDScript.xml:334
msgid ""
-"Rounds [code]s[/code] to the closest smaller integer and returns it.\n"
+"Rounds [code]s[/code] downward (towards negative infinity), returning the "
+"largest whole number that is not more than [code]s[/code].\n"
"[codeblock]\n"
"# a is 2.0\n"
"a = floor(2.99)\n"
@@ -316,7 +349,7 @@ msgid ""
"use [code]int(s)[/code] directly."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:351
+#: modules/gdscript/doc_classes/@GDScript.xml:352
msgid ""
"Returns the floating-point remainder of [code]a/b[/code], keeping the sign "
"of [code]a[/code].\n"
@@ -327,7 +360,7 @@ msgid ""
"For the integer remainder operation, use the % operator."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:367
+#: modules/gdscript/doc_classes/@GDScript.xml:368
msgid ""
"Returns the floating-point modulus of [code]a/b[/code] that wraps equally in "
"positive and negative.\n"
@@ -353,7 +386,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:398
+#: modules/gdscript/doc_classes/@GDScript.xml:399
msgid ""
"Returns a reference to the specified function [code]funcname[/code] in the "
"[code]instance[/code] node. As functions aren't first-class objects in "
@@ -368,7 +401,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:412
+#: modules/gdscript/doc_classes/@GDScript.xml:413
msgid ""
"Returns an array of dictionaries representing the current call stack.\n"
"[codeblock]\n"
@@ -388,7 +421,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:435
+#: modules/gdscript/doc_classes/@GDScript.xml:436
msgid ""
"Returns the integer hash of the variable passed.\n"
"[codeblock]\n"
@@ -396,7 +429,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:447
+#: modules/gdscript/doc_classes/@GDScript.xml:448
msgid ""
"Returns the passed instance converted to a dictionary (useful for "
"serializing).\n"
@@ -414,7 +447,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:468
+#: modules/gdscript/doc_classes/@GDScript.xml:469
msgid ""
"Returns the Object that corresponds to [code]instance_id[/code]. All Objects "
"have a unique instance ID.\n"
@@ -427,7 +460,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:488
+#: modules/gdscript/doc_classes/@GDScript.xml:489
msgid ""
"Returns a normalized value considering the given range. This is the opposite "
"of [method lerp].\n"
@@ -441,33 +474,41 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:506
+#: modules/gdscript/doc_classes/@GDScript.xml:507
msgid ""
"Returns [code]true[/code] if [code]a[/code] and [code]b[/code] are "
-"approximately equal to each other."
+"approximately equal to each other.\n"
+"Here, approximately equal means that [code]a[/code] and [code]b[/code] are "
+"within a small internal epsilon of each other, which scales with the "
+"magnitude of the numbers.\n"
+"Infinity values of the same sign are considered equal."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:515
+#: modules/gdscript/doc_classes/@GDScript.xml:518
msgid ""
"Returns whether [code]s[/code] is an infinity value (either positive "
"infinity or negative infinity)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:524
+#: modules/gdscript/doc_classes/@GDScript.xml:527
msgid ""
"Returns whether [code]instance[/code] is a valid object (e.g. has not been "
"deleted from memory)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:533
-msgid "Returns whether [code]s[/code] is a NaN (Not-A-Number) value."
+#: modules/gdscript/doc_classes/@GDScript.xml:536
+msgid ""
+"Returns whether [code]s[/code] is a NaN (\"Not a Number\" or invalid) value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:542
-msgid "Returns [code]true[/code] if [code]s[/code] is zero or almost zero."
+#: modules/gdscript/doc_classes/@GDScript.xml:545
+msgid ""
+"Returns [code]true[/code] if [code]s[/code] is zero or almost zero.\n"
+"This method is faster than using [method is_equal_approx] with one value as "
+"zero."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:551
+#: modules/gdscript/doc_classes/@GDScript.xml:555
msgid ""
"Returns length of Variant [code]var[/code]. Length is the character count of "
"String, element count of Array, size of Dictionary, etc.\n"
@@ -478,7 +519,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:569
+#: modules/gdscript/doc_classes/@GDScript.xml:573
msgid ""
"Linearly interpolates between two values by a normalized value. This is the "
"opposite of [method inverse_lerp].\n"
@@ -493,7 +534,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:588
+#: modules/gdscript/doc_classes/@GDScript.xml:592
msgid ""
"Linearly interpolates between two angles (in radians) by a normalized "
"value.\n"
@@ -510,7 +551,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:607
+#: modules/gdscript/doc_classes/@GDScript.xml:611
msgid ""
"Converts from linear energy to decibels (audio). This can be used to "
"implement volume sliders that behave as expected (since volume isn't "
@@ -526,20 +567,28 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:622
+#: modules/gdscript/doc_classes/@GDScript.xml:626
msgid ""
-"Loads a resource from the filesystem located at [code]path[/code].\n"
+"Loads a resource from the filesystem located at [code]path[/code]. The "
+"resource is loaded on the method call (unless it's referenced already "
+"elsewhere, e.g. in another script or in the scene), which might cause slight "
+"delay, especially when loading scenes. To avoid unnecessary delays when "
+"loading something multiple times, either store the resource in a variable or "
+"use [method preload].\n"
"[b]Note:[/b] Resource paths can be obtained by right-clicking on a resource "
-"in the FileSystem dock and choosing [b]Copy Path[/b].\n"
+"in the FileSystem dock and choosing \"Copy Path\" or by dragging the file "
+"from the FileSystem dock into the script.\n"
"[codeblock]\n"
-"# Load a scene called main located in the root of the project directory.\n"
-"var main = load(\"res://main.tscn\")\n"
+"# Load a scene called main located in the root of the project directory and "
+"cache it in a variable.\n"
+"var main = load(\"res://main.tscn\") # main will contain a PackedScene "
+"resource.\n"
"[/codeblock]\n"
"[b]Important:[/b] The path must be absolute, a local path will just return "
"[code]null[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:637
+#: modules/gdscript/doc_classes/@GDScript.xml:641
msgid ""
"Natural logarithm. The amount of time needed to reach a certain level of "
"continuous growth.\n"
@@ -547,10 +596,12 @@ msgid ""
"calculators, which uses a base 10 logarithm.\n"
"[codeblock]\n"
"log(10) # Returns 2.302585\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] The logarithm of [code]0[/code] returns [code]-inf[/code], "
+"while negative values return [code]-nan[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:652
+#: modules/gdscript/doc_classes/@GDScript.xml:657
msgid ""
"Returns the maximum of two values.\n"
"[codeblock]\n"
@@ -559,7 +610,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:667
+#: modules/gdscript/doc_classes/@GDScript.xml:672
msgid ""
"Returns the minimum of two values.\n"
"[codeblock]\n"
@@ -568,27 +619,39 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:684
+#: modules/gdscript/doc_classes/@GDScript.xml:689
msgid ""
"Moves [code]from[/code] toward [code]to[/code] by the [code]delta[/code] "
"value.\n"
"Use a negative [code]delta[/code] value to move away.\n"
"[codeblock]\n"
+"move_toward(5, 10, 4) # Returns 9\n"
"move_toward(10, 5, 4) # Returns 6\n"
+"move_toward(10, 5, -1.5) # Returns 11.5\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:697
+#: modules/gdscript/doc_classes/@GDScript.xml:704
msgid ""
-"Returns the nearest larger power of 2 for integer [code]value[/code].\n"
+"Returns the nearest equal or larger power of 2 for integer [code]value[/"
+"code].\n"
+"In other words, returns the smallest value [code]a[/code] where [code]a = "
+"pow(2, n)[/code] such that [code]value <= a[/code] for some non-negative "
+"integer [code]n[/code].\n"
"[codeblock]\n"
"nearest_po2(3) # Returns 4\n"
"nearest_po2(4) # Returns 4\n"
"nearest_po2(5) # Returns 8\n"
-"[/codeblock]"
+"\n"
+"nearest_po2(0) # Returns 0 (this may not be what you expect)\n"
+"nearest_po2(-1) # Returns 0 (this may not be what you expect)\n"
+"[/codeblock]\n"
+"[b]WARNING:[/b] Due to the way it is implemented, this function returns "
+"[code]0[/code] rather than [code]1[/code] for non-positive values of "
+"[code]value[/code] (in reality, 1 is the smallest integer power of 2)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:711
+#: modules/gdscript/doc_classes/@GDScript.xml:723
msgid ""
"Returns an integer representing the Unicode code point of the given Unicode "
"character [code]char[/code].\n"
@@ -600,27 +663,28 @@ msgid ""
"This is the inverse of [method char]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:726
+#: modules/gdscript/doc_classes/@GDScript.xml:738
msgid ""
-"Parse JSON text to a Variant (use [method typeof] to check if it is what you "
-"expect).\n"
-"Be aware that the JSON specification does not define integer or float types, "
-"but only a number type. Therefore, parsing a JSON text will convert all "
-"numerical values to [float] types.\n"
-"Note that JSON objects do not preserve key order like Godot dictionaries, "
-"thus you should not rely on keys being in a certain order if a dictionary is "
-"constructed from JSON. In contrast, JSON arrays retain the order of their "
+"Parse JSON text to a Variant. (Use [method typeof] to check if the Variant's "
+"type is what you expect.)\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, parsing a JSON text will convert "
+"all numerical values to [float] types.\n"
+"[b]Note:[/b] JSON objects do not preserve key order like Godot dictionaries, "
+"thus, you should not rely on keys being in a certain order if a dictionary "
+"is constructed from JSON. In contrast, JSON arrays retain the order of their "
"elements:\n"
"[codeblock]\n"
-"p = parse_json('[\"a\", \"b\", \"c\"]')\n"
-"if typeof(p) == TYPE_ARRAY:\n"
-" print(p[0]) # Prints a\n"
+"var p = JSON.parse('[\"hello\", \"world\", \"!\"]')\n"
+"if typeof(p.result) == TYPE_ARRAY:\n"
+" print(p.result[0]) # Prints \"hello\"\n"
"else:\n"
-" print(\"unexpected results\")\n"
-"[/codeblock]"
+" push_error(\"Unexpected results.\")\n"
+"[/codeblock]\n"
+"See also [JSON] for an alternative way to parse JSON text."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:746
+#: modules/gdscript/doc_classes/@GDScript.xml:759
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:142
msgid ""
"Converts a 2D point expressed in the polar coordinate system (a distance "
@@ -628,7 +692,7 @@ msgid ""
"cartesian coordinate system (X and Y axis)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:757
+#: modules/gdscript/doc_classes/@GDScript.xml:770
msgid ""
"Returns the integer modulus of [code]a/b[/code] that wraps equally in "
"positive and negative.\n"
@@ -654,7 +718,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:788
+#: modules/gdscript/doc_classes/@GDScript.xml:801
msgid ""
"Returns the result of [code]x[/code] raised to the power of [code]y[/code].\n"
"[codeblock]\n"
@@ -662,19 +726,23 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:800
+#: modules/gdscript/doc_classes/@GDScript.xml:813
msgid ""
-"Returns a resource from the filesystem that is loaded during script "
-"parsing.\n"
+"Returns a [Resource] from the filesystem located at [code]path[/code]. The "
+"resource is loaded during script parsing, i.e. is loaded with the script and "
+"[method preload] effectively acts as a reference to that resource. Note that "
+"the method requires a constant path. If you want to load a resource from a "
+"dynamic/variable path, use [method load].\n"
"[b]Note:[/b] Resource paths can be obtained by right clicking on a resource "
-"in the Assets Panel and choosing \"Copy Path\".\n"
+"in the Assets Panel and choosing \"Copy Path\" or by dragging the file from "
+"the FileSystem dock into the script.\n"
"[codeblock]\n"
-"# Load a scene called main located in the root of the project directory.\n"
-"var main = preload(\"res://main.tscn\")\n"
+"# Instance a scene.\n"
+"var diamond = preload(\"res://diamond.tscn\").instance()\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:812
+#: modules/gdscript/doc_classes/@GDScript.xml:825
msgid ""
"Converts one or more arguments to strings in the best way possible and "
"prints them to the console.\n"
@@ -684,11 +752,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:823
+#: modules/gdscript/doc_classes/@GDScript.xml:836
msgid "Like [method print], but prints only when used in debug mode."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:830
+#: modules/gdscript/doc_classes/@GDScript.xml:843
msgid ""
"Prints a stack track at code location, only works when running with debugger "
"turned on.\n"
@@ -698,7 +766,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:841
+#: modules/gdscript/doc_classes/@GDScript.xml:854
msgid ""
"Prints one or more arguments to strings in the best way possible to standard "
"error line.\n"
@@ -707,7 +775,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:851
+#: modules/gdscript/doc_classes/@GDScript.xml:864
msgid ""
"Prints one or more arguments to strings in the best way possible to console. "
"No newline is added at the end.\n"
@@ -721,7 +789,7 @@ msgid ""
"method, such as [method print]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:864
+#: modules/gdscript/doc_classes/@GDScript.xml:877
msgid ""
"Prints one or more arguments to the console with a space between each "
"argument.\n"
@@ -730,7 +798,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:874
+#: modules/gdscript/doc_classes/@GDScript.xml:887
msgid ""
"Prints one or more arguments to the console with a tab between each "
"argument.\n"
@@ -739,7 +807,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:886
+#: modules/gdscript/doc_classes/@GDScript.xml:899
msgid ""
"Pushes an error message to Godot's built-in debugger and to the OS "
"terminal.\n"
@@ -749,7 +817,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:898
+#: modules/gdscript/doc_classes/@GDScript.xml:911
msgid ""
"Pushes a warning message to Godot's built-in debugger and to the OS "
"terminal.\n"
@@ -759,15 +827,15 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:910
+#: modules/gdscript/doc_classes/@GDScript.xml:923
msgid ""
-"Converts from radians to degrees.\n"
+"Converts an angle expressed in radians to degrees.\n"
"[codeblock]\n"
"rad2deg(0.523599) # Returns 30\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:924
+#: modules/gdscript/doc_classes/@GDScript.xml:937
msgid ""
"Random range, any floating point value between [code]from[/code] and "
"[code]to[/code].\n"
@@ -776,7 +844,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:936
+#: modules/gdscript/doc_classes/@GDScript.xml:949
msgid ""
"Random from seed: pass a [code]seed[/code], and an array with both number "
"and new seed is returned. \"Seed\" here refers to the internal state of the "
@@ -784,7 +852,7 @@ msgid ""
"implementation is 64 bits."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:943
+#: modules/gdscript/doc_classes/@GDScript.xml:956
msgid ""
"Returns a random floating point value on the interval [code][0, 1][/code].\n"
"[codeblock]\n"
@@ -792,7 +860,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:953
+#: modules/gdscript/doc_classes/@GDScript.xml:966
msgid ""
"Returns a random unsigned 32 bit integer. Use remainder to obtain a random "
"value in the interval [code][0, N - 1][/code] (where N is smaller than "
@@ -805,7 +873,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:966
+#: modules/gdscript/doc_classes/@GDScript.xml:979
msgid ""
"Randomizes the seed (or the internal state) of the random number generator. "
"Current implementation reseeds using a number based on time.\n"
@@ -815,7 +883,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:977
+#: modules/gdscript/doc_classes/@GDScript.xml:990
msgid ""
"Returns an array with the given range. Range can be 1 argument N (0 to N-1), "
"two arguments (initial, final-1) or three arguments (initial, final-1, "
@@ -845,7 +913,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1017
+#: modules/gdscript/doc_classes/@GDScript.xml:1030
msgid ""
"Maps a [code]value[/code] from range [code][istart, istop][/code] to [code]"
"[ostart, ostop][/code].\n"
@@ -854,16 +922,16 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1029
+#: modules/gdscript/doc_classes/@GDScript.xml:1042
msgid ""
-"Returns the integral value that is nearest to [code]s[/code], with halfway "
-"cases rounded away from zero.\n"
+"Rounds [code]s[/code] to the nearest whole number, with halfway cases "
+"rounded away from zero.\n"
"[codeblock]\n"
"round(2.6) # Returns 3\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1041
+#: modules/gdscript/doc_classes/@GDScript.xml:1054
msgid ""
"Sets seed for the random number generator.\n"
"[codeblock]\n"
@@ -872,7 +940,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1054
+#: modules/gdscript/doc_classes/@GDScript.xml:1067
msgid ""
"Returns the sign of [code]s[/code]: -1 or 1. Returns 0 if [code]s[/code] is "
"0.\n"
@@ -883,7 +951,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1068
+#: modules/gdscript/doc_classes/@GDScript.xml:1081
msgid ""
"Returns the sine of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -891,7 +959,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1080
+#: modules/gdscript/doc_classes/@GDScript.xml:1093
msgid ""
"Returns the hyperbolic sine of [code]s[/code].\n"
"[codeblock]\n"
@@ -900,27 +968,37 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1097
+#: modules/gdscript/doc_classes/@GDScript.xml:1110
msgid ""
-"Returns a number smoothly interpolated between the [code]from[/code] and "
-"[code]to[/code], based on the [code]weight[/code]. Similar to [method lerp], "
-"but interpolates faster at the beginning and slower at the end.\n"
+"Returns the result of smoothly interpolating the value of [code]s[/code] "
+"between [code]0[/code] and [code]1[/code], based on the where [code]s[/code] "
+"lies with respect to the edges [code]from[/code] and [code]to[/code].\n"
+"The return value is [code]0[/code] if [code]s <= from[/code], and [code]1[/"
+"code] if [code]s >= to[/code]. If [code]s[/code] lies between [code]from[/"
+"code] and [code]to[/code], the returned value follows an S-shaped curve that "
+"maps [code]s[/code] between [code]0[/code] and [code]1[/code].\n"
+"This S-shaped curve is the cubic Hermite interpolator, given by [code]f(s) = "
+"3*s^2 - 2*s^3[/code].\n"
"[codeblock]\n"
-"smoothstep(0, 2, 0.5) # Returns 0.15\n"
+"smoothstep(0, 2, -5.0) # Returns 0.0\n"
+"smoothstep(0, 2, 0.5) # Returns 0.15625\n"
"smoothstep(0, 2, 1.0) # Returns 0.5\n"
"smoothstep(0, 2, 2.0) # Returns 1.0\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1111
+#: modules/gdscript/doc_classes/@GDScript.xml:1127
msgid ""
-"Returns the square root of [code]s[/code].\n"
+"Returns the square root of [code]s[/code], where [code]s[/code] is a non-"
+"negative number.\n"
"[codeblock]\n"
"sqrt(9) # Returns 3\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b]Negative values of [code]s[/code] return NaN. If you need "
+"negative inputs, use [code]System.Numerics.Complex[/code] in C#."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1123
+#: modules/gdscript/doc_classes/@GDScript.xml:1140
msgid ""
"Returns the position of the first non-zero digit, after the decimal point. "
"Note that the maximum return value is 10, which is a design decision in the "
@@ -935,7 +1013,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1142
+#: modules/gdscript/doc_classes/@GDScript.xml:1159
msgid ""
"Snaps float value [code]s[/code] to a given [code]step[/code]. This can also "
"be used to round a floating point number to an arbitrary number of "
@@ -946,7 +1024,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1153
+#: modules/gdscript/doc_classes/@GDScript.xml:1170
msgid ""
"Converts one or more arguments to string in the best way possible.\n"
"[codeblock]\n"
@@ -957,7 +1035,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1168
+#: modules/gdscript/doc_classes/@GDScript.xml:1185
msgid ""
"Converts a formatted string that was returned by [method var2str] to the "
"original value.\n"
@@ -968,7 +1046,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1182
+#: modules/gdscript/doc_classes/@GDScript.xml:1199
msgid ""
"Returns the tangent of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -976,7 +1054,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1194
+#: modules/gdscript/doc_classes/@GDScript.xml:1211
msgid ""
"Returns the hyperbolic tangent of [code]s[/code].\n"
"[codeblock]\n"
@@ -985,18 +1063,25 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1207
+#: modules/gdscript/doc_classes/@GDScript.xml:1224
msgid ""
-"Converts a Variant [code]var[/code] to JSON text and return the result. "
+"Converts a [Variant] [code]var[/code] to JSON text and return the result. "
"Useful for serializing data to store or send over the network.\n"
"[codeblock]\n"
+"# Both numbers below are integers.\n"
"a = { \"a\": 1, \"b\": 2 }\n"
"b = to_json(a)\n"
"print(b) # {\"a\":1, \"b\":2}\n"
-"[/codeblock]"
+"# Both numbers above are floats, even if they display without any decimal "
+"places.\n"
+"[/codeblock]\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, converting a [Variant] to JSON "
+"text will convert all numerical values to [float] types.\n"
+"See also [JSON] for an alternative way to convert a [Variant] to JSON text."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1221
+#: modules/gdscript/doc_classes/@GDScript.xml:1242
msgid ""
"Returns whether the given class exists in [ClassDB].\n"
"[codeblock]\n"
@@ -1005,7 +1090,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1234
+#: modules/gdscript/doc_classes/@GDScript.xml:1255
msgid ""
"Returns the internal type of the given Variant object, using the [enum "
"Variant.Type] values.\n"
@@ -1018,7 +1103,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1250
+#: modules/gdscript/doc_classes/@GDScript.xml:1271
msgid ""
"Checks that [code]json[/code] is valid JSON data. Returns an empty string if "
"valid, or an error message otherwise.\n"
@@ -1026,20 +1111,20 @@ msgid ""
"j = to_json([1, 2, 3])\n"
"v = validate_json(j)\n"
"if not v:\n"
-" print(\"valid\")\n"
+" print(\"Valid JSON.\")\n"
"else:\n"
-" prints(\"invalid\", v)\n"
+" push_error(\"Invalid JSON: \" + v)\n"
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1269
+#: modules/gdscript/doc_classes/@GDScript.xml:1290
msgid ""
"Encodes a variable value to a byte array. When [code]full_objects[/code] is "
"[code]true[/code] encoding objects is allowed (and can potentially include "
"code)."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1278
+#: modules/gdscript/doc_classes/@GDScript.xml:1299
msgid ""
"Converts a Variant [code]var[/code] to a formatted string that can later be "
"parsed using [method str2var].\n"
@@ -1056,7 +1141,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1298
+#: modules/gdscript/doc_classes/@GDScript.xml:1319
msgid ""
"Returns a weak reference to an object.\n"
"A weak reference to an object is not enough to keep the object alive: when "
@@ -1066,135 +1151,67 @@ msgid ""
"reference may return the object even if there are no strong references to it."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1312
+#: modules/gdscript/doc_classes/@GDScript.xml:1333
msgid ""
"Wraps float [code]value[/code] between [code]min[/code] and [code]max[/"
"code].\n"
"Usable for creating loop-alike behavior or infinite surfaces.\n"
"[codeblock]\n"
-"# a is 0.5\n"
-"a = wrapf(10.5, 0.0, 10.0)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# a is 9.5\n"
-"a = wrapf(-0.5, 0.0, 10.0)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# Infinite loop between 0.0 and 0.99\n"
-"f = wrapf(f + 0.1, 0.0, 1.0)\n"
+"# Infinite loop between 5.0 and 9.9\n"
+"value = wrapf(value + 0.1, 5.0, 10.0)\n"
"[/codeblock]\n"
"[codeblock]\n"
"# Infinite rotation (in radians)\n"
"angle = wrapf(angle + 0.1, 0.0, TAU)\n"
"[/codeblock]\n"
-"[b]Note:[/b] If you just want to wrap between 0.0 and [code]n[/code] (where "
-"[code]n[/code] is a positive floating-point value), it is better for "
-"performance to use the [method fmod] method like [code]fmod(number, n)[/"
-"code].\n"
-"[code]wrapf[/code] is more flexible than using the [method fmod] approach by "
-"giving the user a simple control over the minimum value. It also fully "
-"supports negative numbers, e.g.\n"
"[codeblock]\n"
"# Infinite rotation (in radians)\n"
"angle = wrapf(angle + 0.1, -PI, PI)\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] If [code]min[/code] is [code]0[/code], this is equivalent to "
+"[method fposmod], so prefer using that instead.\n"
+"[code]wrapf[/code] is more flexible than using the [method fposmod] approach "
+"by giving the user control over the minimum value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1348
+#: modules/gdscript/doc_classes/@GDScript.xml:1361
msgid ""
"Wraps integer [code]value[/code] between [code]min[/code] and [code]max[/"
"code].\n"
"Usable for creating loop-alike behavior or infinite surfaces.\n"
"[codeblock]\n"
-"# a is 0\n"
-"a = wrapi(10, 0, 10)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# a is 9\n"
-"a = wrapi(-1, 0, 10)\n"
-"[/codeblock]\n"
-"[codeblock]\n"
-"# Infinite loop between 0 and 9\n"
-"frame = wrapi(frame + 1, 0, 10)\n"
+"# Infinite loop between 5 and 9\n"
+"frame = wrapi(frame + 1, 5, 10)\n"
"[/codeblock]\n"
-"[b]Note:[/b] If you just want to wrap between 0 and [code]n[/code] (where "
-"[code]n[/code] is a positive integer value), it is better for performance to "
-"use the modulo operator like [code]number % n[/code].\n"
-"[code]wrapi[/code] is more flexible than using the modulo approach by giving "
-"the user a simple control over the minimum value. It also fully supports "
-"negative numbers, e.g.\n"
"[codeblock]\n"
"# result is -2\n"
"var result = wrapi(-6, -5, -1)\n"
-"[/codeblock]"
-msgstr ""
-
-#: modules/gdscript/doc_classes/@GDScript.xml:1378
-msgid ""
-"Stops the function execution and returns the current suspended state to the "
-"calling function.\n"
-"From the caller, call [method GDScriptFunctionState.resume] on the state to "
-"resume execution. This invalidates the state. Within the resumed function, "
-"[code]yield()[/code] returns whatever was passed to the [code]resume()[/"
-"code] function call.\n"
-"If passed an object and a signal, the execution is resumed when the object "
-"emits the given signal. In this case, [code]yield()[/code] returns the "
-"argument passed to [code]emit_signal()[/code] if the signal takes only one "
-"argument, or an array containing all the arguments passed to "
-"[code]emit_signal()[/code] if the signal takes multiple arguments.\n"
-"You can also use [code]yield[/code] to wait for a function to finish:\n"
-"[codeblock]\n"
-"func _ready():\n"
-" yield(countdown(), \"completed\") # waiting for the countdown() function "
-"to complete\n"
-" print('Ready')\n"
-"\n"
-"func countdown():\n"
-" yield(get_tree(), \"idle_frame\") # returns a GDScriptFunctionState "
-"object to _ready()\n"
-" print(3)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-" print(2)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-" print(1)\n"
-" yield(get_tree().create_timer(1.0), \"timeout\")\n"
-"\n"
-"# prints:\n"
-"# 3\n"
-"# 2\n"
-"# 1\n"
-"# Ready\n"
"[/codeblock]\n"
-"When yielding on a function, the [code]completed[/code] signal will be "
-"emitted automatically when the function returns. It can, therefore, be used "
-"as the [code]signal[/code] parameter of the [code]yield[/code] method to "
-"resume.\n"
-"In order to yield on a function, the resulting function should also return a "
-"[code]GDScriptFunctionState[/code]. Notice [code]yield(get_tree(), "
-"\"idle_frame\")[/code] from the above example."
+"[b]Note:[/b] If [code]min[/code] is [code]0[/code], this is equivalent to "
+"[method posmod], so prefer using that instead.\n"
+"[code]wrapi[/code] is more flexible than using the [method posmod] approach "
+"by giving the user control over the minimum value."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1409
+#: modules/gdscript/doc_classes/@GDScript.xml:1378
msgid ""
"Constant that represents how many times the diameter of a circle fits around "
-"its perimeter."
+"its perimeter. This is equivalent to [code]TAU / 2[/code]."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1412
-msgid "The circle constant, the circumference of the unit circle."
+#: modules/gdscript/doc_classes/@GDScript.xml:1381
+msgid "The circle constant, the circumference of the unit circle in radians."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1415
-msgid "A positive infinity. (For negative infinity, use -INF)."
+#: modules/gdscript/doc_classes/@GDScript.xml:1384
+msgid "Positive infinity. For negative infinity, use -INF."
msgstr ""
-#: modules/gdscript/doc_classes/@GDScript.xml:1418
+#: modules/gdscript/doc_classes/@GDScript.xml:1387
msgid ""
-"Macro constant that expands to an expression of type float that represents a "
-"NaN.\n"
-"The NaN values are used to identify undefined or non-representable values "
-"for floating-point elements, such as the square root of negative numbers or "
-"the result of 0/0."
+"\"Not a Number\", an invalid value. [code]NaN[/code] has special properties, "
+"including that it is not equal to itself. It is output by some invalid "
+"operations, such as dividing zero by zero."
msgstr ""
#: doc/classes/@GlobalScope.xml:4
@@ -3430,130 +3447,141 @@ msgid ""
msgstr ""
#: doc/classes/AABB.xml:10 doc/classes/Plane.xml:10 doc/classes/Rect2.xml:11
-#: doc/classes/Rect2i.xml:11 doc/classes/Transform.xml:10
+#: doc/classes/Rect2i.xml:11 doc/classes/Transform.xml:11
#: doc/classes/Vector2.xml:12 doc/classes/Vector2i.xml:12
#: doc/classes/Vector3.xml:12 doc/classes/Vector3i.xml:12
msgid "https://docs.godotengine.org/en/latest/tutorials/math/index.html"
msgstr ""
#: doc/classes/AABB.xml:21
-msgid "Optional constructor, accepts position and size."
+msgid "Constructs an [AABB] from a position and size."
msgstr ""
-#: doc/classes/AABB.xml:30
+#: doc/classes/AABB.xml:28
+msgid ""
+"Returns an AABB with equivalent position and size, modified so that the most-"
+"negative corner is the origin and the size is positive."
+msgstr ""
+
+#: doc/classes/AABB.xml:37
msgid ""
"Returns [code]true[/code] if this [AABB] completely encloses another one."
msgstr ""
-#: doc/classes/AABB.xml:39
+#: doc/classes/AABB.xml:46
msgid "Returns this [AABB] expanded to include a given point."
msgstr ""
-#: doc/classes/AABB.xml:46
+#: doc/classes/AABB.xml:53
msgid "Returns the volume of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:55
+#: doc/classes/AABB.xml:62
msgid "Gets the position of the 8 endpoints of the [AABB] in space."
msgstr ""
-#: doc/classes/AABB.xml:62
+#: doc/classes/AABB.xml:69
msgid "Returns the normalized longest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:69
+#: doc/classes/AABB.xml:76
msgid ""
"Returns the index of the longest axis of the [AABB] (according to "
"[Vector3]'s [code]AXIS_*[/code] constants)."
msgstr ""
-#: doc/classes/AABB.xml:76
+#: doc/classes/AABB.xml:83
msgid "Returns the scalar length of the longest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:83
+#: doc/classes/AABB.xml:90
msgid "Returns the normalized shortest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:90
+#: doc/classes/AABB.xml:97
msgid ""
"Returns the index of the shortest axis of the [AABB] (according to "
"[Vector3]::AXIS* enum)."
msgstr ""
-#: doc/classes/AABB.xml:97
+#: doc/classes/AABB.xml:104
msgid "Returns the scalar length of the shortest axis of the [AABB]."
msgstr ""
-#: doc/classes/AABB.xml:106
+#: doc/classes/AABB.xml:113
msgid ""
"Returns the support point in a given direction. This is useful for collision "
"detection algorithms."
msgstr ""
-#: doc/classes/AABB.xml:115
+#: doc/classes/AABB.xml:122
msgid ""
"Returns a copy of the [AABB] grown a given amount of units towards all the "
"sides."
msgstr ""
-#: doc/classes/AABB.xml:122
+#: doc/classes/AABB.xml:129
msgid "Returns [code]true[/code] if the [AABB] is flat or empty."
msgstr ""
-#: doc/classes/AABB.xml:129
+#: doc/classes/AABB.xml:136
msgid "Returns [code]true[/code] if the [AABB] is empty."
msgstr ""
-#: doc/classes/AABB.xml:138
+#: doc/classes/AABB.xml:145
msgid "Returns [code]true[/code] if the [AABB] contains a point."
msgstr ""
-#: doc/classes/AABB.xml:147
+#: doc/classes/AABB.xml:154
msgid ""
"Returns the intersection between two [AABB]. An empty AABB (size 0,0,0) is "
"returned on failure."
msgstr ""
-#: doc/classes/AABB.xml:156
+#: doc/classes/AABB.xml:163
msgid "Returns [code]true[/code] if the [AABB] overlaps with another."
msgstr ""
-#: doc/classes/AABB.xml:165
+#: doc/classes/AABB.xml:172
msgid "Returns [code]true[/code] if the [AABB] is on both sides of a plane."
msgstr ""
-#: doc/classes/AABB.xml:176
+#: doc/classes/AABB.xml:183
msgid ""
"Returns [code]true[/code] if the [AABB] intersects the line segment between "
"[code]from[/code] and [code]to[/code]."
msgstr ""
-#: doc/classes/AABB.xml:185
+#: doc/classes/AABB.xml:192
msgid ""
"Returns [code]true[/code] if this [AABB] and [code]aabb[/code] are "
"approximately equal, by calling [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/AABB.xml:194
+#: doc/classes/AABB.xml:201
msgid ""
"Returns a larger [AABB] that contains both this [AABB] and [code]with[/code]."
msgstr ""
-#: doc/classes/AABB.xml:200
+#: doc/classes/AABB.xml:207 doc/classes/Rect2.xml:174
+#: doc/classes/Rect2i.xml:163
msgid ""
-"Ending corner. This is calculated as [code]position + size[/code]. Changing "
-"this property changes [member size] accordingly."
+"Ending corner. This is calculated as [code]position + size[/code]. Setting "
+"this value will change the size."
msgstr ""
-#: doc/classes/AABB.xml:203
-msgid "Beginning corner."
+#: doc/classes/AABB.xml:210 doc/classes/Rect2.xml:177
+#: doc/classes/Rect2i.xml:166
+msgid "Beginning corner. Typically has values lower than [member end]."
msgstr ""
-#: doc/classes/AABB.xml:206 doc/classes/Rect2.xml:180
+#: doc/classes/AABB.xml:213 doc/classes/Rect2.xml:180
#: doc/classes/Rect2i.xml:169
-msgid "Size from position to end."
+msgid ""
+"Size from [member position] to [member end]. Typically all components are "
+"positive.\n"
+"If the size is negative, you can use [method abs] to fix it."
msgstr ""
#: doc/classes/AcceptDialog.xml:4
@@ -3617,11 +3645,11 @@ msgstr ""
msgid "The text displayed by the dialog."
msgstr ""
-#: doc/classes/AcceptDialog.xml:82
+#: doc/classes/AcceptDialog.xml:83
msgid "Emitted when the dialog is accepted, i.e. the OK button is pressed."
msgstr ""
-#: doc/classes/AcceptDialog.xml:89
+#: doc/classes/AcceptDialog.xml:90
msgid "Emitted when a custom button is pressed. See [method add_button]."
msgstr ""
@@ -3674,7 +3702,7 @@ msgstr ""
#: doc/classes/AESContext.xml:54
msgid ""
"Get the current IV state for this context (IV gets updated when calling "
-"[method update]). You normally don't need this funciton.\n"
+"[method update]). You normally don't need this function.\n"
"Note: This function only makes sense when the context is started with "
"[constant MODE_CBC_ENCRYPT] or [constant MODE_CBC_DECRYPT]."
msgstr ""
@@ -3752,12 +3780,14 @@ msgid "If [code]true[/code], texture will be centered."
msgstr ""
#: doc/classes/AnimatedSprite2D.xml:46 doc/classes/Sprite2D.xml:41
-#: doc/classes/SpriteBase3D.xml:61 doc/classes/TextureRect.xml:18
+#: doc/classes/SpriteBase3D.xml:61 doc/classes/TextureButton.xml:19
+#: doc/classes/TextureRect.xml:18
msgid "If [code]true[/code], texture is flipped horizontally."
msgstr ""
#: doc/classes/AnimatedSprite2D.xml:49 doc/classes/Sprite2D.xml:44
-#: doc/classes/SpriteBase3D.xml:64 doc/classes/TextureRect.xml:21
+#: doc/classes/SpriteBase3D.xml:64 doc/classes/TextureButton.xml:22
+#: doc/classes/TextureRect.xml:21
msgid "If [code]true[/code], texture is flipped vertically."
msgstr ""
@@ -3924,10 +3954,10 @@ msgid ""
"[codeblock]\n"
"# This creates an animation that makes the node \"Enemy\" move to the right "
"by\n"
-"# 100 pixels in 1 second.\n"
+"# 100 pixels in 0.5 seconds.\n"
"var animation = Animation.new()\n"
"var track_index = animation.add_track(Animation.TYPE_VALUE)\n"
-"animation.track_set_path(track_index, \"Enemy:position.x\")\n"
+"animation.track_set_path(track_index, \"Enemy:position:x\")\n"
"animation.track_insert_key(track_index, 0.0, 0)\n"
"animation.track_insert_key(track_index, 0.5, 100)\n"
"[/codeblock]\n"
@@ -6055,10 +6085,10 @@ msgstr ""
msgid ""
"Returns [code]true[/code] if the array contains the given value.\n"
"[codeblock]\n"
-"[\"inside\", 7].has(\"inside\") == true\n"
-"[\"inside\", 7].has(\"outside\") == false\n"
-"[\"inside\", 7].has(7) == true\n"
-"[\"inside\", 7].has(\"7\") == false\n"
+"print([\"inside\", 7].has(\"inside\")) # True\n"
+"print([\"inside\", 7].has(\"outside\")) # False\n"
+"print([\"inside\", 7].has(7)) # True\n"
+"print([\"inside\", 7].has(\"7\")) # False\n"
"[/codeblock]\n"
"[b]Note:[/b] This is equivalent to using the [code]in[/code] operator as "
"follows:\n"
@@ -6079,11 +6109,11 @@ msgid ""
"valid, or at the end of the array ([code]pos == size()[/code])."
msgstr ""
-#: doc/classes/Array.xml:265 doc/classes/PackedByteArray.xml:107
-#: doc/classes/PackedColorArray.xml:62 doc/classes/PackedFloat32Array.xml:63
-#: doc/classes/PackedFloat64Array.xml:63 doc/classes/PackedInt32Array.xml:63
-#: doc/classes/PackedInt64Array.xml:63 doc/classes/PackedStringArray.xml:62
-#: doc/classes/PackedVector2Array.xml:62 doc/classes/PackedVector3Array.xml:62
+#: doc/classes/Array.xml:265 doc/classes/PackedByteArray.xml:116
+#: doc/classes/PackedColorArray.xml:71 doc/classes/PackedFloat32Array.xml:72
+#: doc/classes/PackedFloat64Array.xml:72 doc/classes/PackedInt32Array.xml:72
+#: doc/classes/PackedInt64Array.xml:72 doc/classes/PackedStringArray.xml:71
+#: doc/classes/PackedVector2Array.xml:71 doc/classes/PackedVector3Array.xml:71
msgid "Reverses the order of the elements in the array."
msgstr ""
@@ -6113,8 +6143,8 @@ msgid ""
"code] if the array is empty."
msgstr ""
-#: doc/classes/Array.xml:302 doc/classes/PackedByteArray.xml:116
-#: doc/classes/PackedFloat32Array.xml:72 doc/classes/PackedFloat64Array.xml:72
+#: doc/classes/Array.xml:302 doc/classes/PackedByteArray.xml:125
+#: doc/classes/PackedFloat32Array.xml:81 doc/classes/PackedFloat64Array.xml:81
msgid "Appends an element at the end of the array."
msgstr ""
@@ -6122,11 +6152,11 @@ msgstr ""
msgid "Adds an element at the beginning of the array."
msgstr ""
-#: doc/classes/Array.xml:320 doc/classes/PackedByteArray.xml:125
-#: doc/classes/PackedColorArray.xml:80 doc/classes/PackedFloat32Array.xml:81
-#: doc/classes/PackedFloat64Array.xml:81 doc/classes/PackedInt32Array.xml:81
-#: doc/classes/PackedInt64Array.xml:81 doc/classes/PackedStringArray.xml:80
-#: doc/classes/PackedVector2Array.xml:80 doc/classes/PackedVector3Array.xml:80
+#: doc/classes/Array.xml:320 doc/classes/PackedByteArray.xml:134
+#: doc/classes/PackedColorArray.xml:89 doc/classes/PackedFloat32Array.xml:90
+#: doc/classes/PackedFloat64Array.xml:90 doc/classes/PackedInt32Array.xml:90
+#: doc/classes/PackedInt64Array.xml:90 doc/classes/PackedStringArray.xml:89
+#: doc/classes/PackedVector2Array.xml:89 doc/classes/PackedVector3Array.xml:89
msgid "Removes an element from the array by index."
msgstr ""
@@ -6409,7 +6439,7 @@ msgid ""
msgstr ""
#: doc/classes/ArrayMesh.xml:235 doc/classes/Mesh.xml:210
-#: doc/classes/RenderingServer.xml:3115
+#: doc/classes/RenderingServer.xml:3111
msgid "Represents the size of the [enum ArrayType] enum."
msgstr ""
@@ -8226,7 +8256,9 @@ msgid ""
msgstr ""
#: doc/classes/BaseButton.xml:16
-msgid "Called when the button is pressed."
+msgid ""
+"Called when the button is pressed. If you need to know the button's pressed "
+"state (and [member toggle_mode] is active), use [method _toggled] instead."
msgstr ""
#: doc/classes/BaseButton.xml:25
@@ -8320,43 +8352,45 @@ msgstr ""
msgid ""
"Emitted when the button is toggled or pressed. This is on [signal "
"button_down] if [member action_mode] is [constant ACTION_MODE_BUTTON_PRESS] "
-"and on [signal button_up] otherwise."
+"and on [signal button_up] otherwise.\n"
+"If you need to know the button's pressed state (and [member toggle_mode] is "
+"active), use [signal toggled] instead."
msgstr ""
-#: doc/classes/BaseButton.xml:98
+#: doc/classes/BaseButton.xml:99
msgid ""
"Emitted when the button was just toggled between pressed and normal states "
"(only if [member toggle_mode] is active). The new state is contained in the "
"[code]button_pressed[/code] argument."
msgstr ""
-#: doc/classes/BaseButton.xml:104
+#: doc/classes/BaseButton.xml:105
msgid ""
"The normal state (i.e. not pressed, not hovered, not toggled and enabled) of "
"buttons."
msgstr ""
-#: doc/classes/BaseButton.xml:107
+#: doc/classes/BaseButton.xml:108
msgid "The state of buttons are pressed."
msgstr ""
-#: doc/classes/BaseButton.xml:110
+#: doc/classes/BaseButton.xml:111
msgid "The state of buttons are hovered."
msgstr ""
-#: doc/classes/BaseButton.xml:113
+#: doc/classes/BaseButton.xml:114
msgid "The state of buttons are disabled."
msgstr ""
-#: doc/classes/BaseButton.xml:116
+#: doc/classes/BaseButton.xml:117
msgid "The state of buttons are both hovered and pressed."
msgstr ""
-#: doc/classes/BaseButton.xml:119
+#: doc/classes/BaseButton.xml:120
msgid "Require just a press to consider the button clicked."
msgstr ""
-#: doc/classes/BaseButton.xml:122
+#: doc/classes/BaseButton.xml:123
msgid ""
"Require a press and a subsequent release before considering the button "
"clicked."
@@ -9049,22 +9083,22 @@ msgstr ""
msgid "Represents the size of the [enum TextureParam] enum."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:451 doc/classes/RenderingServer.xml:3657
-#: doc/classes/Viewport.xml:390
+#: doc/classes/BaseMaterial3D.xml:451 doc/classes/RenderingServer.xml:3668
+#: doc/classes/Viewport.xml:393
msgid ""
"The texture filter reads from the nearest pixel only. The simplest and "
"fastest method of filtering, but the texture will look pixelized."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:454 doc/classes/RenderingServer.xml:3660
-#: doc/classes/Viewport.xml:393
+#: doc/classes/BaseMaterial3D.xml:454 doc/classes/RenderingServer.xml:3671
+#: doc/classes/Viewport.xml:396
msgid ""
"The texture filter blends between the nearest 4 pixels. Use this when you "
"want to avoid a pixelated style, but do not want mipmaps."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:457 doc/classes/RenderingServer.xml:3663
-#: doc/classes/Viewport.xml:396
+#: doc/classes/BaseMaterial3D.xml:457 doc/classes/RenderingServer.xml:3674
+#: doc/classes/Viewport.xml:399
msgid ""
"The texture filter reads from the nearest pixel in the nearest mipmap. The "
"fastest way to read from textures with mipmaps."
@@ -9077,14 +9111,14 @@ msgid ""
"smooth out pixels that are far from the camera."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:463 doc/classes/RenderingServer.xml:3669
+#: doc/classes/BaseMaterial3D.xml:463 doc/classes/RenderingServer.xml:3680
msgid ""
"The texture filter reads from the nearest pixel, but selects a mipmap based "
"on the angle between the surface and the camera view. This reduces artifacts "
"on surfaces that are almost in line with the camera."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:466 doc/classes/RenderingServer.xml:3672
+#: doc/classes/BaseMaterial3D.xml:466 doc/classes/RenderingServer.xml:3683
msgid ""
"The texture filter blends between the nearest 4 pixels and selects a mipmap "
"based on the angle between the surface and the camera view. This reduces "
@@ -9093,7 +9127,7 @@ msgid ""
"texturing."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:469 doc/classes/CanvasItem.xml:685
+#: doc/classes/BaseMaterial3D.xml:469 doc/classes/CanvasItem.xml:695
msgid "Represents the size of the [enum TextureFilter] enum."
msgstr ""
@@ -9316,8 +9350,8 @@ msgstr ""
msgid "Enables the shadow to opacity feature."
msgstr ""
-#: doc/classes/BaseMaterial3D.xml:622 doc/classes/RenderingServer.xml:3684
-#: doc/classes/Viewport.xml:408
+#: doc/classes/BaseMaterial3D.xml:622 doc/classes/RenderingServer.xml:3695
+#: doc/classes/Viewport.xml:411
msgid ""
"Enables the texture to repeat when UV coordinates are outside the 0-1 range. "
"If using one of the linear filtering modes, this can result in artifacts at "
@@ -9458,167 +9492,195 @@ msgstr ""
#: doc/classes/Basis.xml:7
msgid ""
-"3×3 matrix used for 3D rotation and scale. Contains 3 vector fields X, Y and "
-"Z as its columns, which can be interpreted as the local basis vectors of a "
-"transformation. Can also be accessed as array of 3D vectors. These vectors "
-"are orthogonal to each other, but are not necessarily normalized (due to "
-"scaling). Almost always used as an orthogonal basis for a [Transform].\n"
-"For such use, it is composed of a scaling and a rotation matrix, in that "
-"order (M = R.S)."
+"3×3 matrix used for 3D rotation and scale. Almost always used as an "
+"orthogonal basis for a Transform.\n"
+"Contains 3 vector fields X, Y and Z as its columns, which are typically "
+"interpreted as the local basis vectors of a transformation. For such use, it "
+"is composed of a scaling and a rotation matrix, in that order (M = R.S).\n"
+"Can also be accessed as array of 3D vectors. These vectors are normally "
+"orthogonal to each other, but are not necessarily normalized (due to "
+"scaling).\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
+msgstr ""
+
+#: doc/classes/Basis.xml:13 doc/classes/Transform.xml:12
+#: doc/classes/Transform2D.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/math/"
+"matrices_and_transforms.html"
msgstr ""
-#: doc/classes/Basis.xml:11 doc/classes/Transform.xml:11
+#: doc/classes/Basis.xml:14 doc/classes/Transform.xml:13
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/using_transforms.html"
msgstr ""
-#: doc/classes/Basis.xml:20
-msgid "Create a rotation matrix from the given quaternion."
+#: doc/classes/Basis.xml:23
+msgid "Constructs a pure rotation basis matrix from the given quaternion."
msgstr ""
-#: doc/classes/Basis.xml:29
+#: doc/classes/Basis.xml:32
msgid ""
-"Create a rotation matrix (in the YXZ convention: first Z, then X, and Y "
-"last) from the specified Euler angles, given in the vector format as (X "
-"angle, Y angle, Z angle)."
+"Constructs a pure rotation basis matrix from the given Euler angles (in the "
+"YXZ convention: when *composing*, first Y, then X, and Z last), given in the "
+"vector format as (X angle, Y angle, Z angle).\n"
+"Consider using the [Quat] constructor instead, which uses a quaternion "
+"instead of Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:40
+#: doc/classes/Basis.xml:44
msgid ""
-"Create a rotation matrix which rotates around the given axis by the "
-"specified angle, in radians. The axis must be a normalized vector."
+"Constructs a pure rotation basis matrix, rotated around the given "
+"[code]axis[/code] by [code]phi[/code], in radians. The axis must be a "
+"normalized vector."
msgstr ""
-#: doc/classes/Basis.xml:53
-msgid "Create a matrix from 3 axis vectors."
+#: doc/classes/Basis.xml:57
+msgid "Constructs a basis matrix from 3 axis vectors (matrix columns)."
msgstr ""
-#: doc/classes/Basis.xml:60
-msgid "Returns the determinant of the matrix."
+#: doc/classes/Basis.xml:64
+msgid ""
+"Returns the determinant of the basis matrix. If the basis is uniformly "
+"scaled, its determinant is the square of the scale.\n"
+"A negative determinant means the basis has a negative scale. A zero "
+"determinant means the basis isn't invertible, and is usually considered "
+"invalid."
msgstr ""
-#: doc/classes/Basis.xml:67
+#: doc/classes/Basis.xml:72
msgid ""
"Returns the basis's rotation in the form of Euler angles (in the YXZ "
-"convention: first Z, then X, and Y last). The returned vector contains the "
-"rotation angles in the format (X angle, Y angle, Z angle). See [method "
-"get_rotation_quat] if you need a quaternion instead."
+"convention: when decomposing, first Z, then X, and Y last). The returned "
+"vector contains the rotation angles in the format (X angle, Y angle, Z "
+"angle).\n"
+"Consider using the [method get_rotation_quat] method instead, which returns "
+"a [Quat] quaternion instead of Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:74
+#: doc/classes/Basis.xml:80
msgid ""
"This function considers a discretization of rotations into 24 points on unit "
"sphere, lying along the vectors (x,y,z) with each component being either -1, "
"0, or 1, and returns the index of the point best representing the "
-"orientation of the object. It is mainly used by the grid map editor. For "
+"orientation of the object. It is mainly used by the [GridMap] editor. For "
"further details, refer to the Godot source code."
msgstr ""
-#: doc/classes/Basis.xml:81
+#: doc/classes/Basis.xml:87
msgid ""
"Returns the basis's rotation in the form of a quaternion. See [method "
"get_euler] if you need Euler angles, but keep in mind quaternions should "
"generally be preferred to Euler angles."
msgstr ""
-#: doc/classes/Basis.xml:88
+#: doc/classes/Basis.xml:94
msgid ""
"Assuming that the matrix is the combination of a rotation and scaling, "
"return the absolute value of scaling factors along each axis."
msgstr ""
-#: doc/classes/Basis.xml:95 doc/classes/Transform2D.xml:49
+#: doc/classes/Basis.xml:101
msgid "Returns the inverse of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:106
+#: doc/classes/Basis.xml:112
msgid ""
"Returns [code]true[/code] if this basis and [code]b[/code] are approximately "
"equal, by calling [code]is_equal_approx[/code] on each component."
msgstr ""
-#: doc/classes/Basis.xml:113
+#: doc/classes/Basis.xml:119
msgid ""
"Returns the orthonormalized version of the matrix (useful to call from time "
"to time to avoid rounding error for orthogonal matrices). This performs a "
"Gram-Schmidt orthonormalization on the basis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:124
+#: doc/classes/Basis.xml:130
msgid ""
"Introduce an additional rotation around the given axis by phi (radians). The "
"axis must be a normalized vector."
msgstr ""
-#: doc/classes/Basis.xml:133
+#: doc/classes/Basis.xml:139
msgid ""
"Introduce an additional scaling specified by the given 3D scaling factor."
msgstr ""
-#: doc/classes/Basis.xml:144
+#: doc/classes/Basis.xml:150
msgid ""
"Assuming that the matrix is a proper rotation matrix, slerp performs a "
"spherical-linear interpolation with another rotation matrix."
msgstr ""
-#: doc/classes/Basis.xml:153
+#: doc/classes/Basis.xml:159
msgid "Transposed dot product with the X axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:162
+#: doc/classes/Basis.xml:168
msgid "Transposed dot product with the Y axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:171
+#: doc/classes/Basis.xml:177
msgid "Transposed dot product with the Z axis of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:178
+#: doc/classes/Basis.xml:184
msgid "Returns the transposed version of the matrix."
msgstr ""
-#: doc/classes/Basis.xml:187
+#: doc/classes/Basis.xml:193
msgid "Returns a vector transformed (multiplied) by the matrix."
msgstr ""
-#: doc/classes/Basis.xml:196
+#: doc/classes/Basis.xml:202
msgid ""
-"Returns a vector transformed (multiplied) by the transposed matrix.\n"
+"Returns a vector transformed (multiplied) by the transposed basis matrix.\n"
"[b]Note:[/b] This results in a multiplication by the inverse of the matrix "
"only if it represents a rotation-reflection."
msgstr ""
-#: doc/classes/Basis.xml:203
-msgid "The basis matrix's X vector."
+#: doc/classes/Basis.xml:209 doc/classes/Transform2D.xml:181
+msgid ""
+"The basis matrix's X vector (column 0). Equivalent to array index [code]0[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:206
-msgid "The basis matrix's Y vector."
+#: doc/classes/Basis.xml:212 doc/classes/Transform2D.xml:184
+msgid ""
+"The basis matrix's Y vector (column 1). Equivalent to array index [code]1[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:209
-msgid "The basis matrix's Z vector."
+#: doc/classes/Basis.xml:215
+msgid ""
+"The basis matrix's Z vector (column 2). Equivalent to array index [code]2[/"
+"code]."
msgstr ""
-#: doc/classes/Basis.xml:214
+#: doc/classes/Basis.xml:220
msgid ""
-"The identity basis. This is identical to calling [code]Basis()[/code] "
-"without any parameters. This constant can be used to make your code clearer."
+"The identity basis, with no rotation or scaling applied.\n"
+"This is identical to calling [code]Basis()[/code] without any parameters. "
+"This constant can be used to make your code clearer, and for consistency "
+"with C#."
msgstr ""
-#: doc/classes/Basis.xml:217
+#: doc/classes/Basis.xml:224
msgid ""
"The basis that will flip something along the X axis when used in a "
"transformation."
msgstr ""
-#: doc/classes/Basis.xml:220
+#: doc/classes/Basis.xml:227
msgid ""
"The basis that will flip something along the Y axis when used in a "
"transformation."
msgstr ""
-#: doc/classes/Basis.xml:223
+#: doc/classes/Basis.xml:230
msgid ""
"The basis that will flip something along the Z axis when used in a "
"transformation."
@@ -9931,97 +9993,111 @@ msgstr ""
#: doc/classes/Button.xml:7
msgid ""
"Button is the standard themed button. It can contain text and an icon, and "
-"will display them according to the current [Theme]."
+"will display them according to the current [Theme].\n"
+"[b]Example of creating a button and assigning an action when pressed by code:"
+"[/b]\n"
+"[codeblock]\n"
+"func _ready():\n"
+" var button = Button.new()\n"
+" button.text = \"Click me\"\n"
+" button.connect(\"pressed\", self, \"_button_pressed\")\n"
+" add_child(button)\n"
+"\n"
+"func _button_pressed():\n"
+" print(\"Hello world!\")\n"
+"[/codeblock]\n"
+"Buttons (like all Control nodes) can also be created in the editor, but some "
+"situations may require creating them from code."
msgstr ""
-#: doc/classes/Button.xml:15
+#: doc/classes/Button.xml:27
msgid ""
"Text alignment policy for the button's text, use one of the [enum TextAlign] "
"constants."
msgstr ""
-#: doc/classes/Button.xml:18
+#: doc/classes/Button.xml:30
msgid ""
"When this property is enabled, text that is too large to fit the button is "
"clipped, when disabled the Button will always be wide enough to hold the "
"text."
msgstr ""
-#: doc/classes/Button.xml:21
+#: doc/classes/Button.xml:33
msgid ""
"When enabled, the button's icon will expand/shrink to fit the button's size "
"while keeping its aspect."
msgstr ""
-#: doc/classes/Button.xml:24
+#: doc/classes/Button.xml:36
msgid "Flat buttons don't display decoration."
msgstr ""
-#: doc/classes/Button.xml:27
+#: doc/classes/Button.xml:39
msgid ""
"Button's icon, if text is present the icon will be placed before the text."
msgstr ""
-#: doc/classes/Button.xml:30 doc/classes/LinkButton.xml:18
+#: doc/classes/Button.xml:42 doc/classes/LinkButton.xml:18
msgid "The button's text that will be displayed inside the button's area."
msgstr ""
-#: doc/classes/Button.xml:35
+#: doc/classes/Button.xml:47
msgid "Align the text to the left."
msgstr ""
-#: doc/classes/Button.xml:38
+#: doc/classes/Button.xml:50
msgid "Align the text to the center."
msgstr ""
-#: doc/classes/Button.xml:41
+#: doc/classes/Button.xml:53
msgid "Align the text to the right."
msgstr ""
-#: doc/classes/Button.xml:46
+#: doc/classes/Button.xml:58
msgid "[StyleBox] used when the [Button] is disabled."
msgstr ""
-#: doc/classes/Button.xml:49
+#: doc/classes/Button.xml:61
msgid ""
"[StyleBox] used when the [Button] is focused. It is displayed over the "
"current [StyleBox], so using [StyleBoxEmpty] will just disable the focus "
"visual effect."
msgstr ""
-#: doc/classes/Button.xml:52
+#: doc/classes/Button.xml:64
msgid "[Font] of the [Button]'s text."
msgstr ""
-#: doc/classes/Button.xml:55
+#: doc/classes/Button.xml:67
msgid "Default text [Color] of the [Button]."
msgstr ""
-#: doc/classes/Button.xml:58
+#: doc/classes/Button.xml:70
msgid "Text [Color] used when the [Button] is disabled."
msgstr ""
-#: doc/classes/Button.xml:61
+#: doc/classes/Button.xml:73
msgid "Text [Color] used when the [Button] is being hovered."
msgstr ""
-#: doc/classes/Button.xml:64
+#: doc/classes/Button.xml:76
msgid "Text [Color] used when the [Button] is being pressed."
msgstr ""
-#: doc/classes/Button.xml:67
+#: doc/classes/Button.xml:79
msgid "[StyleBox] used when the [Button] is being hovered."
msgstr ""
-#: doc/classes/Button.xml:70
+#: doc/classes/Button.xml:82
msgid "The horizontal space between [Button]'s icon and text."
msgstr ""
-#: doc/classes/Button.xml:73
+#: doc/classes/Button.xml:85
msgid "Default [StyleBox] for the [Button]."
msgstr ""
-#: doc/classes/Button.xml:76
+#: doc/classes/Button.xml:88
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr ""
@@ -10673,7 +10749,7 @@ msgstr ""
#: doc/classes/CameraEffects.xml:37
msgid ""
"The exposure override value to use. Higher values will result in a brighter "
-"scene. Only effective if [member override_exposure_enable] is [code]true[/"
+"scene. Only effective if [member override_exposure_enabled] is [code]true[/"
"code]."
msgstr ""
@@ -10927,265 +11003,282 @@ msgid ""
msgstr ""
#: doc/classes/CanvasItem.xml:319
-msgid "Draws a string using a custom font."
+msgid ""
+"Draws [code]text[/code] using the specified [code]font[/code] at the "
+"[code]position[/code] (top-left corner). The text will have its color "
+"multiplied by [code]modulate[/code]. If [code]clip_w[/code] is greater than "
+"or equal to 0, the text will be clipped if it exceeds the specified width.\n"
+"[b]Example using the default project font:[/b]\n"
+"[codeblock]\n"
+"# If using this method in a script that redraws constantly, move the\n"
+"# `default_font` declaration to a member variable assigned in `_ready()`\n"
+"# so the Control is only created once.\n"
+"var default_font = Control.new().get_font(\"font\")\n"
+"draw_string(default_font, Vector2(64, 64), \"Hello world\")\n"
+"[/codeblock]\n"
+"See also [method Font.draw]."
msgstr ""
-#: doc/classes/CanvasItem.xml:330
+#: doc/classes/CanvasItem.xml:339
msgid "Draws a styled rectangle."
msgstr ""
-#: doc/classes/CanvasItem.xml:353
+#: doc/classes/CanvasItem.xml:362
msgid "Draws a texture at a given position."
msgstr ""
-#: doc/classes/CanvasItem.xml:380
+#: doc/classes/CanvasItem.xml:389
msgid ""
"Draws a textured rectangle at a given position, optionally modulated by a "
"color. If [code]transpose[/code] is [code]true[/code], the texture will have "
"its X and Y coordinates swapped."
msgstr ""
-#: doc/classes/CanvasItem.xml:409
+#: doc/classes/CanvasItem.xml:418
msgid ""
"Draws a textured rectangle region at a given position, optionally modulated "
"by a color. If [code]transpose[/code] is [code]true[/code], the texture will "
"have its X and Y coordinates swapped."
msgstr ""
-#: doc/classes/CanvasItem.xml:416 doc/classes/Node3D.xml:19
+#: doc/classes/CanvasItem.xml:425 doc/classes/Node3D.xml:19
msgid ""
"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."
msgstr ""
-#: doc/classes/CanvasItem.xml:423
+#: doc/classes/CanvasItem.xml:432
msgid "Returns the [RID] of the [World2D] canvas where this item is in."
msgstr ""
-#: doc/classes/CanvasItem.xml:430
+#: doc/classes/CanvasItem.xml:439
msgid "Returns the canvas item RID used by [RenderingServer] for this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:437
+#: doc/classes/CanvasItem.xml:446
msgid "Returns the transform matrix of this item's canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:444
+#: doc/classes/CanvasItem.xml:453
msgid "Returns the global position of the mouse."
msgstr ""
-#: doc/classes/CanvasItem.xml:451
+#: doc/classes/CanvasItem.xml:460
msgid "Returns the global transform matrix of this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:458
+#: doc/classes/CanvasItem.xml:467
msgid ""
"Returns the global transform matrix of this item in relation to the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:465
+#: doc/classes/CanvasItem.xml:474
msgid "Returns the mouse position relative to this item's position."
msgstr ""
-#: doc/classes/CanvasItem.xml:472
+#: doc/classes/CanvasItem.xml:481
msgid "Returns the transform matrix of this item."
msgstr ""
-#: doc/classes/CanvasItem.xml:479
+#: doc/classes/CanvasItem.xml:488
msgid "Returns the viewport's boundaries as a [Rect2]."
msgstr ""
-#: doc/classes/CanvasItem.xml:486
+#: doc/classes/CanvasItem.xml:495
msgid "Returns this item's transform in relation to the viewport."
msgstr ""
-#: doc/classes/CanvasItem.xml:493
+#: doc/classes/CanvasItem.xml:502
msgid "Returns the [World2D] where this item is in."
msgstr ""
-#: doc/classes/CanvasItem.xml:500
+#: doc/classes/CanvasItem.xml:509
msgid "Hide the [CanvasItem] if it's currently visible."
msgstr ""
-#: doc/classes/CanvasItem.xml:507
+#: doc/classes/CanvasItem.xml:516
msgid ""
"Returns [code]true[/code] if local transform notifications are communicated "
"to children."
msgstr ""
-#: doc/classes/CanvasItem.xml:514
+#: doc/classes/CanvasItem.xml:523
msgid ""
"Returns [code]true[/code] if the node is set as top-level. See [method "
"set_as_toplevel]."
msgstr ""
-#: doc/classes/CanvasItem.xml:521
+#: doc/classes/CanvasItem.xml:530
msgid ""
"Returns [code]true[/code] if global transform notifications are communicated "
"to children."
msgstr ""
-#: doc/classes/CanvasItem.xml:528
+#: doc/classes/CanvasItem.xml:537 doc/classes/Node3D.xml:104
msgid ""
"Returns [code]true[/code] if the node is present in the [SceneTree], its "
-"[member visible] property is [code]true[/code] and its inherited visibility "
-"is also [code]true[/code]."
+"[member visible] property is [code]true[/code] and all its antecedents are "
+"also visible. If any antecedent is hidden, this node will not be visible in "
+"the scene tree."
msgstr ""
-#: doc/classes/CanvasItem.xml:537
+#: doc/classes/CanvasItem.xml:546
msgid "Assigns [code]screen_point[/code] as this node's new local transform."
msgstr ""
-#: doc/classes/CanvasItem.xml:546
+#: doc/classes/CanvasItem.xml:555
msgid ""
"Transformations issued by [code]event[/code]'s inputs are applied in local "
"space instead of global space."
msgstr ""
-#: doc/classes/CanvasItem.xml:555
+#: doc/classes/CanvasItem.xml:564
msgid ""
"If [code]enable[/code] is [code]true[/code], the node won't inherit its "
"transform from parent canvas items."
msgstr ""
-#: doc/classes/CanvasItem.xml:564
+#: doc/classes/CanvasItem.xml:573
msgid ""
"If [code]enable[/code] is [code]true[/code], children will be updated with "
"local transform data."
msgstr ""
-#: doc/classes/CanvasItem.xml:573
+#: doc/classes/CanvasItem.xml:582
msgid ""
"If [code]enable[/code] is [code]true[/code], children will be updated with "
"global transform data."
msgstr ""
-#: doc/classes/CanvasItem.xml:580
+#: doc/classes/CanvasItem.xml:589
msgid ""
"Show the [CanvasItem] if it's currently hidden. For controls that inherit "
"[Popup], the correct way to make them visible is to call one of the multiple "
"[code]popup*()[/code] functions instead."
msgstr ""
-#: doc/classes/CanvasItem.xml:587
+#: doc/classes/CanvasItem.xml:596
msgid ""
"Queue the [CanvasItem] for update. [constant NOTIFICATION_DRAW] will be "
"called on idle time to request redraw."
msgstr ""
-#: doc/classes/CanvasItem.xml:593
+#: doc/classes/CanvasItem.xml:602
msgid ""
"The rendering layers in which this [CanvasItem] responds to [Light2D] nodes."
msgstr ""
-#: doc/classes/CanvasItem.xml:596
+#: doc/classes/CanvasItem.xml:605
msgid "The material applied to textures on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:599
+#: doc/classes/CanvasItem.xml:608
msgid "The color applied to textures on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:602
+#: doc/classes/CanvasItem.xml:611
msgid ""
"The color applied to textures on this [CanvasItem]. This is not inherited by "
"children [CanvasItem]s."
msgstr ""
-#: doc/classes/CanvasItem.xml:605
+#: doc/classes/CanvasItem.xml:614
msgid "If [code]true[/code], the object draws behind its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:608
+#: doc/classes/CanvasItem.xml:617
msgid "If [code]true[/code], the object draws on top of its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:611
+#: doc/classes/CanvasItem.xml:620
msgid "The texture filtering mode to use on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:614
+#: doc/classes/CanvasItem.xml:623
msgid "The texture repeating mode to use on this [CanvasItem]."
msgstr ""
-#: doc/classes/CanvasItem.xml:617
+#: doc/classes/CanvasItem.xml:626
msgid ""
"If [code]true[/code], the parent [CanvasItem]'s [member material] property "
"is used as this one's material."
msgstr ""
-#: doc/classes/CanvasItem.xml:620
+#: doc/classes/CanvasItem.xml:629
msgid ""
-"If [code]true[/code], this [CanvasItem] is drawn. For controls that inherit "
-"[Popup], the correct way to make them visible is to call one of the multiple "
-"[code]popup*()[/code] functions instead."
+"If [code]true[/code], this [CanvasItem] is drawn. The node is only visible "
+"if all of its antecedents are visible as well (in other words, [method "
+"is_visible_in_tree] must return [code]true[/code]).\n"
+"[b]Note:[/b] For controls that inherit [Popup], the correct way to make them "
+"visible is to call one of the multiple [code]popup*()[/code] functions "
+"instead."
msgstr ""
-#: doc/classes/CanvasItem.xml:626
+#: doc/classes/CanvasItem.xml:636
msgid ""
"Emitted when the [CanvasItem] must redraw. This can only be connected "
"realtime, as deferred will not allow drawing."
msgstr ""
-#: doc/classes/CanvasItem.xml:631
+#: doc/classes/CanvasItem.xml:641
msgid "Emitted when becoming hidden."
msgstr ""
-#: doc/classes/CanvasItem.xml:636
+#: doc/classes/CanvasItem.xml:646
msgid "Emitted when the item rect has changed."
msgstr ""
-#: doc/classes/CanvasItem.xml:641
+#: doc/classes/CanvasItem.xml:651
msgid "Emitted when the visibility (hidden/visible) changes."
msgstr ""
-#: doc/classes/CanvasItem.xml:647
+#: doc/classes/CanvasItem.xml:657
msgid ""
"The [CanvasItem]'s transform has changed. This notification is only received "
"if enabled by [method set_notify_transform] or [method "
"set_notify_local_transform]."
msgstr ""
-#: doc/classes/CanvasItem.xml:650
+#: doc/classes/CanvasItem.xml:660
msgid "The [CanvasItem] is requested to draw."
msgstr ""
-#: doc/classes/CanvasItem.xml:653
+#: doc/classes/CanvasItem.xml:663
msgid "The [CanvasItem]'s visibility has changed."
msgstr ""
-#: doc/classes/CanvasItem.xml:656
+#: doc/classes/CanvasItem.xml:666
msgid "The [CanvasItem] has entered the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:659
+#: doc/classes/CanvasItem.xml:669
msgid "The [CanvasItem] has exited the canvas."
msgstr ""
-#: doc/classes/CanvasItem.xml:662 doc/classes/CanvasItem.xml:688
+#: doc/classes/CanvasItem.xml:672 doc/classes/CanvasItem.xml:698
msgid "The [CanvasItem] will inherit the filter from its parent."
msgstr ""
-#: doc/classes/CanvasItem.xml:665
+#: doc/classes/CanvasItem.xml:675
msgid ""
"The texture filter reads from the nearest pixel only. The simplest and "
"fastest method of filtering. Useful for pixel art."
msgstr ""
-#: doc/classes/CanvasItem.xml:668
+#: doc/classes/CanvasItem.xml:678
msgid ""
"The texture filter blends between the nearest four pixels. Use this for most "
"cases where you want to avoid a pixelated style."
msgstr ""
-#: doc/classes/CanvasItem.xml:671
+#: doc/classes/CanvasItem.xml:681
msgid ""
"The texture filter reads from the nearest pixel in the nearest mipmap. This "
"is the fastest way to read from textures with mipmaps."
msgstr ""
-#: doc/classes/CanvasItem.xml:674
+#: doc/classes/CanvasItem.xml:684
msgid ""
"The texture filter blends between the nearest 4 pixels and between the "
"nearest 2 mipmaps. Use this for non-pixel art textures that may be viewed at "
@@ -11193,7 +11286,7 @@ msgid ""
"smooth out pixels that are smaller than on-screen pixels."
msgstr ""
-#: doc/classes/CanvasItem.xml:677
+#: doc/classes/CanvasItem.xml:687
msgid ""
"The texture filter reads from the nearest pixel, but selects a mipmap based "
"on the angle between the surface and the camera view. This reduces artifacts "
@@ -11202,7 +11295,7 @@ msgid ""
"TEXTURE_FILTER_NEAREST_WITH_MIPMAPS] is usually more appropriate."
msgstr ""
-#: doc/classes/CanvasItem.xml:681
+#: doc/classes/CanvasItem.xml:691
msgid ""
"The texture filter blends between the nearest 4 pixels and selects a mipmap "
"based on the angle between the surface and the camera view. This reduces "
@@ -11213,21 +11306,21 @@ msgid ""
"TEXTURE_FILTER_LINEAR_WITH_MIPMAPS] is usually more appropriate."
msgstr ""
-#: doc/classes/CanvasItem.xml:691
+#: doc/classes/CanvasItem.xml:701
msgid "Texture will not repeat."
msgstr ""
-#: doc/classes/CanvasItem.xml:694
+#: doc/classes/CanvasItem.xml:704
msgid "Texture will repeat normally."
msgstr ""
-#: doc/classes/CanvasItem.xml:697
+#: doc/classes/CanvasItem.xml:707
msgid ""
"Texture will repeat in a 2x2 tiled mode, where elements at even positions "
"are mirrored."
msgstr ""
-#: doc/classes/CanvasItem.xml:700
+#: doc/classes/CanvasItem.xml:710
msgid "Represents the size of the [enum TextureRepeat] enum."
msgstr ""
@@ -12300,16 +12393,15 @@ msgid ""
msgstr ""
#: doc/classes/Color.xml:4
-msgid "Color in RGBA format with some support for ARGB format."
+msgid "Color in RGBA format using floats on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:7
msgid ""
-"A color is represented by red, green, and blue [code](r, g, b)[/code] "
-"components. Additionally, [code]a[/code] represents the alpha component, "
-"often used for transparency. Values are in floating-point and usually range "
-"from 0 to 1. Some properties (such as [member CanvasItem.modulate]) may "
-"accept values greater than 1.\n"
+"A color represented by red, green, blue, and alpha (RGBA) components. The "
+"alpha component is often used for transparency. Values are in floating-point "
+"and usually range from 0 to 1. Some properties (such as CanvasItem.modulate) "
+"may accept values greater than 1 (overbright or HDR colors).\n"
"You can also create a color from standardized color names by using [method "
"@GDScript.ColorN] or directly using the color constants defined here. The "
"standardized color set is based on the [url=https://en.wikipedia.org/wiki/"
@@ -12523,47 +12615,48 @@ msgid ""
msgstr ""
#: doc/classes/Color.xml:280
-msgid "Alpha value (range 0 to 1)."
+msgid ""
+"The color's alpha (transparency) component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:283
-msgid "Alpha value (range 0 to 255)."
+msgid "Wrapper for [member a] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:286
-msgid "Blue value (range 0 to 1)."
+msgid "The color's blue component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:289
-msgid "Blue value (range 0 to 255)."
+msgid "Wrapper for [member b] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:292
-msgid "Green value (range 0 to 1)."
+msgid "The color's green component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:295
-msgid "Green value (range 0 to 255)."
+msgid "Wrapper for [member g] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:298
-msgid "HSV hue value (range 0 to 1)."
+msgid "The HSV hue of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:301
-msgid "Red value (range 0 to 1)."
+msgid "The color's red component, typically on the range of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:304
-msgid "Red value (range 0 to 255)."
+msgid "Wrapper for [member r] that uses the range 0 to 255 instead of 0 to 1."
msgstr ""
#: doc/classes/Color.xml:307
-msgid "HSV saturation value (range 0 to 1)."
+msgid "The HSV saturation of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:310
-msgid "HSV value (range 0 to 1)."
+msgid "The HSV value (brightness) of this color, on the range 0 to 1."
msgstr ""
#: doc/classes/Color.xml:315
@@ -14483,23 +14576,35 @@ msgstr ""
#: doc/classes/Control.xml:859
msgid ""
"The node's scale, relative to its [member rect_size]. Change this property "
-"to scale the node around its [member rect_pivot_offset]."
-msgstr ""
-
-#: doc/classes/Control.xml:862
+"to scale the node around its [member rect_pivot_offset]. The Control's "
+"[member hint_tooltip] will also scale according to this value.\n"
+"[b]Note:[/b] This property is mainly intended to be used for animation "
+"purposes. Text inside the Control will look pixelated or blurry when the "
+"Control is scaled. To support multiple resolutions in your project, use an "
+"appropriate viewport stretch mode as described in the [url=https://docs."
+"godotengine.org/en/latest/tutorials/viewports/multiple_resolutions."
+"html]documentation[/url] instead of scaling Controls individually.\n"
+"[b]Note:[/b] If the Control node is a child of a [Container] node, the scale "
+"will be reset to [code]Vector2(1, 1)[/code] when the scene is instanced. To "
+"set the Control's scale when it's instanced, wait for one frame using "
+"[code]yield(get_tree(), \"idle_frame\")[/code] then set its [member "
+"rect_scale] property."
+msgstr ""
+
+#: doc/classes/Control.xml:864
msgid ""
"The size of the node's bounding rectangle, in pixels. [Container] nodes "
"update this property automatically."
msgstr ""
-#: doc/classes/Control.xml:865
+#: doc/classes/Control.xml:867
msgid ""
"Tells the parent [Container] nodes how they should resize and place the node "
"on the X axis. Use one of the [enum SizeFlags] constants to change the "
"flags. See the constants to learn what each does."
msgstr ""
-#: doc/classes/Control.xml:868
+#: doc/classes/Control.xml:870
msgid ""
"If the node and at least one of its neighbours uses the [constant "
"SIZE_EXPAND] size flag, the parent [Container] will let it take more or less "
@@ -14508,181 +14613,181 @@ msgid ""
"space."
msgstr ""
-#: doc/classes/Control.xml:871
+#: doc/classes/Control.xml:873
msgid ""
"Tells the parent [Container] nodes how they should resize and place the node "
"on the Y axis. Use one of the [enum SizeFlags] constants to change the "
"flags. See the constants to learn what each does."
msgstr ""
-#: doc/classes/Control.xml:874
+#: doc/classes/Control.xml:876
msgid ""
"Changing this property replaces the current [Theme] resource this node and "
"all its [Control] children use."
msgstr ""
-#: doc/classes/Control.xml:880
+#: doc/classes/Control.xml:882
msgid "Emitted when the node gains keyboard focus."
msgstr ""
-#: doc/classes/Control.xml:885
+#: doc/classes/Control.xml:887
msgid "Emitted when the node loses keyboard focus."
msgstr ""
-#: doc/classes/Control.xml:892
+#: doc/classes/Control.xml:894
msgid "Emitted when the node receives an [InputEvent]."
msgstr ""
-#: doc/classes/Control.xml:897
+#: doc/classes/Control.xml:899
msgid "Emitted when the node's minimum size changes."
msgstr ""
-#: doc/classes/Control.xml:902
+#: doc/classes/Control.xml:904
msgid ""
"Emitted when the mouse enters the control's [code]Rect[/code] area, provided "
"its [member mouse_filter] lets the event reach it."
msgstr ""
-#: doc/classes/Control.xml:907
+#: doc/classes/Control.xml:909
msgid ""
"Emitted when the mouse leaves the control's [code]Rect[/code] area, provided "
"its [member mouse_filter] lets the event reach it."
msgstr ""
-#: doc/classes/Control.xml:912
+#: doc/classes/Control.xml:914
msgid "Emitted when the control changes size."
msgstr ""
-#: doc/classes/Control.xml:917
+#: doc/classes/Control.xml:919
msgid ""
"Emitted when one of the size flags changes. See [member "
"size_flags_horizontal] and [member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:927
+#: doc/classes/Control.xml:929
msgid "The node cannot grab focus. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:930
+#: doc/classes/Control.xml:932
msgid ""
"The node can only grab focus on mouse clicks. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:933
+#: doc/classes/Control.xml:935
msgid ""
"The node can grab focus on mouse click or using the arrows and the Tab keys "
"on the keyboard. Use with [member focus_mode]."
msgstr ""
-#: doc/classes/Control.xml:936
+#: doc/classes/Control.xml:938
msgid ""
"Sent when the node changes size. Use [member rect_size] to get the new size."
msgstr ""
-#: doc/classes/Control.xml:939
+#: doc/classes/Control.xml:941
msgid "Sent when the mouse pointer enters the node."
msgstr ""
-#: doc/classes/Control.xml:942
+#: doc/classes/Control.xml:944
msgid "Sent when the mouse pointer exits the node."
msgstr ""
-#: doc/classes/Control.xml:945
+#: doc/classes/Control.xml:947
msgid "Sent when the node grabs focus."
msgstr ""
-#: doc/classes/Control.xml:948
+#: doc/classes/Control.xml:950
msgid "Sent when the node loses focus."
msgstr ""
-#: doc/classes/Control.xml:951
+#: doc/classes/Control.xml:953
msgid ""
"Sent when the node's [member theme] changes, right before Godot redraws the "
"control. Happens when you call one of the [code]add_theme_*_override[/code] "
"methods."
msgstr ""
-#: doc/classes/Control.xml:954
+#: doc/classes/Control.xml:956
msgid ""
"Sent when this node is inside a [ScrollContainer] which has begun being "
"scrolled."
msgstr ""
-#: doc/classes/Control.xml:957
+#: doc/classes/Control.xml:959
msgid ""
"Sent when this node is inside a [ScrollContainer] which has stopped being "
"scrolled."
msgstr ""
-#: doc/classes/Control.xml:960
+#: doc/classes/Control.xml:962
msgid ""
"Show the system's arrow mouse cursor when the user hovers the node. Use with "
"[member mouse_default_cursor_shape]."
msgstr ""
-#: doc/classes/Control.xml:963
+#: doc/classes/Control.xml:965
msgid ""
"Show the system's I-beam mouse cursor when the user hovers the node. The I-"
"beam pointer has a shape similar to \"I\". It tells the user they can "
"highlight or insert text."
msgstr ""
-#: doc/classes/Control.xml:966
+#: doc/classes/Control.xml:968
msgid ""
"Show the system's pointing hand mouse cursor when the user hovers the node."
msgstr ""
-#: doc/classes/Control.xml:969
+#: doc/classes/Control.xml:971
msgid "Show the system's cross mouse cursor when the user hovers the node."
msgstr ""
-#: doc/classes/Control.xml:972
+#: doc/classes/Control.xml:974
msgid ""
"Show the system's wait mouse cursor, often an hourglass, when the user "
"hovers the node."
msgstr ""
-#: doc/classes/Control.xml:975
+#: doc/classes/Control.xml:977
msgid ""
"Show the system's busy mouse cursor when the user hovers the node. Often an "
"hourglass."
msgstr ""
-#: doc/classes/Control.xml:978
+#: doc/classes/Control.xml:980
msgid ""
"Show the system's drag mouse cursor, often a closed fist or a cross symbol, "
"when the user hovers the node. It tells the user they're currently dragging "
"an item, like a node in the Scene dock."
msgstr ""
-#: doc/classes/Control.xml:981
+#: doc/classes/Control.xml:983
msgid ""
"Show the system's drop mouse cursor when the user hovers the node. It can be "
"an open hand. It tells the user they can drop an item they're currently "
"grabbing, like a node in the Scene dock."
msgstr ""
-#: doc/classes/Control.xml:984
+#: doc/classes/Control.xml:986
msgid ""
"Show the system's forbidden mouse cursor when the user hovers the node. "
"Often a crossed circle."
msgstr ""
-#: doc/classes/Control.xml:987
+#: doc/classes/Control.xml:989
msgid ""
"Show the system's vertical resize mouse cursor when the user hovers the "
"node. A double-headed vertical arrow. It tells the user they can resize the "
"window or the panel vertically."
msgstr ""
-#: doc/classes/Control.xml:990
+#: doc/classes/Control.xml:992
msgid ""
"Show the system's horizontal resize mouse cursor when the user hovers the "
"node. A double-headed horizontal arrow. It tells the user they can resize "
"the window or the panel horizontally."
msgstr ""
-#: doc/classes/Control.xml:993
+#: doc/classes/Control.xml:995
msgid ""
"Show the system's window resize mouse cursor when the user hovers the node. "
"The cursor is a double-headed arrow that goes from the bottom left to the "
@@ -14690,7 +14795,7 @@ msgid ""
"horizontally and vertically."
msgstr ""
-#: doc/classes/Control.xml:996
+#: doc/classes/Control.xml:998
msgid ""
"Show the system's window resize mouse cursor when the user hovers the node. "
"The cursor is a double-headed arrow that goes from the top left to the "
@@ -14698,93 +14803,93 @@ msgid ""
"they can resize the window or the panel both horizontally and vertically."
msgstr ""
-#: doc/classes/Control.xml:999
+#: doc/classes/Control.xml:1001
msgid ""
"Show the system's move mouse cursor when the user hovers the node. It shows "
"2 double-headed arrows at a 90 degree angle. It tells the user they can move "
"a UI element freely."
msgstr ""
-#: doc/classes/Control.xml:1002
+#: doc/classes/Control.xml:1004
msgid ""
"Show the system's vertical split mouse cursor when the user hovers the node. "
"On Windows, it's the same as [constant CURSOR_VSIZE]."
msgstr ""
-#: doc/classes/Control.xml:1005
+#: doc/classes/Control.xml:1007
msgid ""
"Show the system's horizontal split mouse cursor when the user hovers the "
"node. On Windows, it's the same as [constant CURSOR_HSIZE]."
msgstr ""
-#: doc/classes/Control.xml:1008
+#: doc/classes/Control.xml:1010
msgid ""
"Show the system's help mouse cursor when the user hovers the node, a "
"question mark."
msgstr ""
-#: doc/classes/Control.xml:1011
+#: doc/classes/Control.xml:1013
msgid ""
"Snap all 4 anchors to the top-left of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1014
+#: doc/classes/Control.xml:1016
msgid ""
"Snap all 4 anchors to the top-right of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1017
+#: doc/classes/Control.xml:1019
msgid ""
"Snap all 4 anchors to the bottom-left of the parent control's bounds. Use "
"with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1020
+#: doc/classes/Control.xml:1022
msgid ""
"Snap all 4 anchors to the bottom-right of the parent control's bounds. Use "
"with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1023
+#: doc/classes/Control.xml:1025
msgid ""
"Snap all 4 anchors to the center of the left edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1026
+#: doc/classes/Control.xml:1028
msgid ""
"Snap all 4 anchors to the center of the top edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1029
+#: doc/classes/Control.xml:1031
msgid ""
"Snap all 4 anchors to the center of the right edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1032
+#: doc/classes/Control.xml:1034
msgid ""
"Snap all 4 anchors to the center of the bottom edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1035
+#: doc/classes/Control.xml:1037
msgid ""
"Snap all 4 anchors to the center of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1038
+#: doc/classes/Control.xml:1040
msgid ""
"Snap all 4 anchors to the left edge of the parent control. The left margin "
"becomes relative to the left edge and the top margin relative to the top "
"left corner of the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1041
+#: doc/classes/Control.xml:1043
msgid ""
"Snap all 4 anchors to the top edge of the parent control. The left margin "
"becomes relative to the top left corner, the top margin relative to the top "
@@ -14792,14 +14897,14 @@ msgid ""
"parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1044
+#: doc/classes/Control.xml:1046
msgid ""
"Snap all 4 anchors to the right edge of the parent control. The right margin "
"becomes relative to the right edge and the top margin relative to the top "
"right corner of the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1047
+#: doc/classes/Control.xml:1049
msgid ""
"Snap all 4 anchors to the bottom edge of the parent control. The left margin "
"becomes relative to the bottom left corner, the bottom margin relative to "
@@ -14807,19 +14912,19 @@ msgid ""
"the node's parent. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1050
+#: doc/classes/Control.xml:1052
msgid ""
"Snap all 4 anchors to a vertical line that cuts the parent control in half. "
"Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1053
+#: doc/classes/Control.xml:1055
msgid ""
"Snap all 4 anchors to a horizontal line that cuts the parent control in "
"half. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1056
+#: doc/classes/Control.xml:1058
msgid ""
"Snap all 4 anchors to the respective corners of the parent control. Set all "
"4 margins to 0 after you applied this preset and the [Control] will fit its "
@@ -14827,30 +14932,30 @@ msgid ""
"editor. Use with [method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1059
+#: doc/classes/Control.xml:1061
msgid "The control will be resized to its minimum size."
msgstr ""
-#: doc/classes/Control.xml:1062
+#: doc/classes/Control.xml:1064
msgid "The control's width will not change."
msgstr ""
-#: doc/classes/Control.xml:1065
+#: doc/classes/Control.xml:1067
msgid "The control's height will not change."
msgstr ""
-#: doc/classes/Control.xml:1068
+#: doc/classes/Control.xml:1070
msgid "The control's size will not change."
msgstr ""
-#: doc/classes/Control.xml:1071
+#: doc/classes/Control.xml:1073
msgid ""
"Tells the parent [Container] to expand the bounds of this node to fill all "
"the available space without pushing any other node. Use with [member "
"size_flags_horizontal] and [member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1074
+#: doc/classes/Control.xml:1076
msgid ""
"Tells the parent [Container] to let this node take all the available space "
"on the axis you flag. If multiple neighboring nodes are set to expand, "
@@ -14859,13 +14964,13 @@ msgid ""
"[member size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1077
+#: doc/classes/Control.xml:1079
msgid ""
"Sets the node's size flags to both fill and expand. See the 2 constants "
"above for more information."
msgstr ""
-#: doc/classes/Control.xml:1080
+#: doc/classes/Control.xml:1082
msgid ""
"Tells the parent [Container] to center the node in itself. It centers the "
"control based on its bounding box, so it doesn't work with the fill or "
@@ -14873,7 +14978,7 @@ msgid ""
"size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1083
+#: doc/classes/Control.xml:1085
msgid ""
"Tells the parent [Container] to align the node with its end, either the "
"bottom or the right edge. It doesn't work with the fill or expand size "
@@ -14881,7 +14986,7 @@ msgid ""
"size_flags_vertical]."
msgstr ""
-#: doc/classes/Control.xml:1086
+#: doc/classes/Control.xml:1088
msgid ""
"The control will receive mouse button input events through [method "
"_gui_input] if clicked on. And the control will receive the [signal "
@@ -14890,7 +14995,7 @@ msgid ""
"other controls. This also results in blocking signals in other controls."
msgstr ""
-#: doc/classes/Control.xml:1089
+#: doc/classes/Control.xml:1091
msgid ""
"The control will receive mouse button input events through [method "
"_gui_input] if clicked on. And the control will receive the [signal "
@@ -14902,7 +15007,7 @@ msgid ""
"not be fired."
msgstr ""
-#: doc/classes/Control.xml:1092
+#: doc/classes/Control.xml:1094
msgid ""
"The control will not receive mouse button input events through [method "
"_gui_input]. The control will also not receive the [signal mouse_entered] "
@@ -14911,25 +15016,25 @@ msgid ""
"handled automatically."
msgstr ""
-#: doc/classes/Control.xml:1095
+#: doc/classes/Control.xml:1097
msgid ""
"The control will grow to the left or top to make up if its minimum size is "
"changed to be greater than its current size on the respective axis."
msgstr ""
-#: doc/classes/Control.xml:1098
+#: doc/classes/Control.xml:1100
msgid ""
"The control will grow to the right or bottom to make up if its minimum size "
"is changed to be greater than its current size on the respective axis."
msgstr ""
-#: doc/classes/Control.xml:1101
+#: doc/classes/Control.xml:1103
msgid ""
"The control will grow in both directions equally to make up if its minimum "
"size is changed to be greater than its current size."
msgstr ""
-#: doc/classes/Control.xml:1104
+#: doc/classes/Control.xml:1106
msgid ""
"Snaps one of the 4 anchor's sides to the origin of the node's [code]Rect[/"
"code], in the top left. Use it with one of the [code]anchor_*[/code] member "
@@ -14937,7 +15042,7 @@ msgid ""
"[method set_anchors_preset]."
msgstr ""
-#: doc/classes/Control.xml:1107
+#: doc/classes/Control.xml:1109
msgid ""
"Snaps one of the 4 anchor's sides to the end of the node's [code]Rect[/"
"code], in the bottom right. Use it with one of the [code]anchor_*[/code] "
@@ -16722,7 +16827,7 @@ msgstr ""
msgid ""
"Returns the [Texture2D] associated with the specified [enum DecalTexture]. "
"This is a convenience method, in most cases you should access the texture "
-"directly. \n"
+"directly.\n"
"For example, instead of [code]albedo_tex = $Decal.get_texture(Decal."
"TEXTURE_ALBEDO)[/code], use [code]albedo_tex = $Decal.texture_albedo[/"
"code].\n"
@@ -16738,7 +16843,7 @@ msgstr ""
msgid ""
"Sets the [Texture2D] associated with the specified [enum DecalTexture]. This "
"is a convenience method, in most cases you should access the texture "
-"directly. \n"
+"directly.\n"
"For example, instead of [code]$Decal.set_texture(Decal.TEXTURE_ALBEDO, "
"albedo_tex)[/code], use [code]$Decal.texture_albedo = albedo_tex[/code].\n"
"One case where this is better than accessing the texture directly is when "
@@ -17087,7 +17192,7 @@ msgstr ""
msgid "The light's shadow rendering algorithm. See [enum ShadowMode]."
msgstr ""
-#: doc/classes/DirectionalLight3D.xml:31 doc/classes/RenderingServer.xml:3254
+#: doc/classes/DirectionalLight3D.xml:31 doc/classes/RenderingServer.xml:3250
msgid ""
"Sets the size of the directional shadow pancake. The pancake offsets the "
"start of the shadow's camera frustum to provide a higher effective depth "
@@ -17161,10 +17266,10 @@ msgstr ""
msgid ""
"Directory type. It is used to manage directories and their content (not "
"restricted to the project folder).\n"
-"When creating a new [Directory], its default opened directory will be "
-"[code]res://[/code]. This may change in the future, so it is advised to "
-"always use [method open] to initialize your [Directory] where you want to "
-"operate, with explicit error checking.\n"
+"When creating a new [Directory], it must be explicitly opened using [method "
+"open] before most methods can be used. However, [method file_exists] and "
+"[method dir_exists] can be used without opening a directory. If so, they use "
+"a path relative to [code]res://[/code].\n"
"Here is an example on how to iterate through the files of a directory:\n"
"[codeblock]\n"
"func dir_contents(path):\n"
@@ -17183,7 +17288,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Directory.xml:27 doc/classes/File.xml:25
+#: doc/classes/Directory.xml:27 doc/classes/File.xml:26
msgid ""
"https://docs.godotengine.org/en/latest/getting_started/step_by_step/"
"filesystem.html"
@@ -17217,41 +17322,43 @@ msgstr ""
#: doc/classes/Directory.xml:65
msgid ""
"Returns whether the target directory exists. The argument can be relative to "
-"the current directory, or an absolute path."
+"the current directory, or an absolute path.\n"
+"If the [Directory] is not open, the path is relative to [code]res://[/code]."
msgstr ""
-#: doc/classes/Directory.xml:74
+#: doc/classes/Directory.xml:75
msgid ""
"Returns whether the target file exists. The argument can be relative to the "
-"current directory, or an absolute path."
+"current directory, or an absolute path.\n"
+"If the [Directory] is not open, the path is relative to [code]res://[/code]."
msgstr ""
-#: doc/classes/Directory.xml:81
+#: doc/classes/Directory.xml:83
msgid ""
"Returns the absolute path to the currently opened directory (e.g. "
"[code]res://folder[/code] or [code]C:\\tmp\\folder[/code])."
msgstr ""
-#: doc/classes/Directory.xml:88
+#: doc/classes/Directory.xml:90
msgid ""
"Returns the currently opened directory's drive index. See [method get_drive] "
"to convert returned index to the name of the drive."
msgstr ""
-#: doc/classes/Directory.xml:97
+#: doc/classes/Directory.xml:99
msgid ""
"On Windows, returns the name of the drive (partition) passed as an argument "
"(e.g. [code]C:[/code]). On other platforms, or if the requested drive does "
"not existed, the method returns an empty String."
msgstr ""
-#: doc/classes/Directory.xml:104
+#: doc/classes/Directory.xml:106
msgid ""
"On Windows, returns the number of drives (partitions) mounted on the current "
"filesystem. On other platforms, the method returns 0."
msgstr ""
-#: doc/classes/Directory.xml:111
+#: doc/classes/Directory.xml:113
msgid ""
"Returns the next element (file or directory) in the current directory "
"(including [code].[/code] and [code]..[/code], unless "
@@ -17262,14 +17369,14 @@ msgid ""
"mandatory in such a case)."
msgstr ""
-#: doc/classes/Directory.xml:119
+#: doc/classes/Directory.xml:121
msgid ""
"On UNIX desktop systems, returns the available space on the current "
"directory's disk. On other platforms, this information is not available and "
"the method returns 0 or -1."
msgstr ""
-#: doc/classes/Directory.xml:130
+#: doc/classes/Directory.xml:132
msgid ""
"Initializes the stream used to list all files and directories using the "
"[method get_next] function, closing the current opened stream if needed. "
@@ -17281,13 +17388,13 @@ msgid ""
"out."
msgstr ""
-#: doc/classes/Directory.xml:139
+#: doc/classes/Directory.xml:141
msgid ""
"Closes the current stream opened with [method list_dir_begin] (whether it "
"has been fully processed with [method get_next] or not does not matter)."
msgstr ""
-#: doc/classes/Directory.xml:148
+#: doc/classes/Directory.xml:150
msgid ""
"Creates a directory. The argument can be relative to the current directory, "
"or an absolute path. The target directory should be placed in an already "
@@ -17296,7 +17403,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:158
+#: doc/classes/Directory.xml:160
msgid ""
"Creates a target directory and all necessary intermediate directories in its "
"path, by calling [method make_dir] recursively. The argument can be relative "
@@ -17304,7 +17411,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:168
+#: doc/classes/Directory.xml:170
msgid ""
"Opens an existing directory of the filesystem. The [code]path[/code] "
"argument can be within the project tree ([code]res://folder[/code]), the "
@@ -17313,7 +17420,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:178
+#: doc/classes/Directory.xml:180
msgid ""
"Deletes the target file or an empty directory. The argument can be relative "
"to the current directory, or an absolute path. If the target directory is "
@@ -17321,7 +17428,7 @@ msgid ""
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-#: doc/classes/Directory.xml:190
+#: doc/classes/Directory.xml:192
msgid ""
"Renames (move) the [code]from[/code] file to the [code]to[/code] "
"destination. Both arguments should be paths to files, either relative or "
@@ -17362,6 +17469,53 @@ msgid ""
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
+#: doc/classes/DisplayServer.xml:530
+msgid ""
+"Return the greatest scale factor of all screens.\n"
+"[b]Note:[/b] On macOS returned value is [code]2.0[/code] if there is at "
+"least one hiDPI (Retina) screen in the system, and [code]1.0[/code] in all "
+"other cases.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:557
+msgid ""
+"Return the scale factor of the specified screen by index.\n"
+"[b]Note:[/b] On macOS returned value is [code]2.0[/code] for hiDPI (Retina) "
+"screen, and [code]1.0[/code] for all other cases.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:630
+msgid ""
+"Returns the on-screen keyboard's height in pixels. Returns 0 if there is no "
+"keyboard or if it is currently hidden."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:637
+msgid "Hides the virtual keyboard if it is shown, does nothing otherwise."
+msgstr ""
+
+#: doc/classes/DisplayServer.xml:656
+msgid ""
+"Shows the virtual keyboard if the platform has one.\n"
+"[code]existing_text[/code] parameter is useful for implementing your own "
+"[LineEdit] or [TextEdit], as it tells the virtual keyboard what text has "
+"already been typed (the virtual keyboard uses it for auto-correct and "
+"predictions).\n"
+"[code]position[/code] parameter is the screen space [Rect2] of the edited "
+"text.\n"
+"[code]multiline[/code] parameter needs to be set to [code]true[/code] to be "
+"able to enter multiple lines of text, as in [TextEdit].\n"
+"[code]max_length[/code] limits the number of characters that can be entered "
+"if different from [code]-1[/code].\n"
+"[code]cursor_start[/code] can optionally define the current text cursor "
+"position if [code]cursor_end[/code] is not set.\n"
+"[code]cursor_start[/code] and [code]cursor_end[/code] can optionally define "
+"the current text selection.\n"
+"[b]Note:[/b] This method is implemented on Android, iOS and UWP."
+msgstr ""
+
#: doc/classes/DTLSServer.xml:4
msgid "Helper class to implement a DTLS server."
msgstr ""
@@ -17482,54 +17636,62 @@ msgstr ""
msgid "Adds a fallback font."
msgstr ""
-#: doc/classes/DynamicFont.xml:35
+#: doc/classes/DynamicFont.xml:33
+msgid ""
+"Returns a string containing all the characters available in the main and all "
+"the fallback fonts.\n"
+"If a given character is included in more than one font, it appears only once "
+"in the returned string."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:43
msgid "Returns the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:42
+#: doc/classes/DynamicFont.xml:50
msgid "Returns the number of fallback fonts."
msgstr ""
-#: doc/classes/DynamicFont.xml:51
+#: doc/classes/DynamicFont.xml:59
msgid ""
"Returns the spacing for the given [code]type[/code] (see [enum SpacingType])."
msgstr ""
-#: doc/classes/DynamicFont.xml:60
+#: doc/classes/DynamicFont.xml:68
msgid "Removes the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:71
+#: doc/classes/DynamicFont.xml:79
msgid "Sets the fallback font at index [code]idx[/code]."
msgstr ""
-#: doc/classes/DynamicFont.xml:82
+#: doc/classes/DynamicFont.xml:90
msgid ""
"Sets the spacing for [code]type[/code] (see [enum SpacingType]) to "
"[code]value[/code] in pixels (not relative to the font size)."
msgstr ""
-#: doc/classes/DynamicFont.xml:88
+#: doc/classes/DynamicFont.xml:96
msgid "Extra spacing at the bottom in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:91
+#: doc/classes/DynamicFont.xml:99
msgid "Extra character spacing in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:94
+#: doc/classes/DynamicFont.xml:102
msgid "Extra space spacing in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:97
+#: doc/classes/DynamicFont.xml:105
msgid "Extra spacing at the top in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:100
+#: doc/classes/DynamicFont.xml:108
msgid "The font data."
msgstr ""
-#: doc/classes/DynamicFont.xml:103
+#: doc/classes/DynamicFont.xml:111
msgid ""
"The font outline's color.\n"
"[b]Note:[/b] It's recommended to leave this at the default value so that you "
@@ -17538,27 +17700,27 @@ msgid ""
"outline modulate theme item."
msgstr ""
-#: doc/classes/DynamicFont.xml:107
+#: doc/classes/DynamicFont.xml:115
msgid "The font outline's thickness in pixels (not relative to the font size)."
msgstr ""
-#: doc/classes/DynamicFont.xml:110
+#: doc/classes/DynamicFont.xml:118
msgid "The font size in pixels."
msgstr ""
-#: doc/classes/DynamicFont.xml:115
+#: doc/classes/DynamicFont.xml:123
msgid "Spacing at the top."
msgstr ""
-#: doc/classes/DynamicFont.xml:118
+#: doc/classes/DynamicFont.xml:126
msgid "Spacing at the bottom."
msgstr ""
-#: doc/classes/DynamicFont.xml:121
+#: doc/classes/DynamicFont.xml:129
msgid "Character spacing."
msgstr ""
-#: doc/classes/DynamicFont.xml:124
+#: doc/classes/DynamicFont.xml:132
msgid "Space spacing."
msgstr ""
@@ -17940,7 +18102,12 @@ msgstr ""
msgid "Remitted if a resource is reimported."
msgstr ""
-#: doc/classes/EditorFileSystem.xml:106
+#: doc/classes/EditorFileSystem.xml:100
+msgid ""
+"Emitted if at least one resource is reloaded when the filesystem is scanned."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:107
msgid "Emitted if the source of any imported file changed."
msgstr ""
@@ -17982,29 +18149,43 @@ msgstr ""
msgid "Returns the path to the file at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:86
+#: doc/classes/EditorFileSystemDirectory.xml:70
+msgid ""
+"Returns the base class of the script class defined in the file at index "
+"[code]idx[/code]. If the file doesn't define a script class using the "
+"[code]class_name[/code] syntax, this will return an empty string."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:79
+msgid ""
+"Returns the name of the script class defined in the file at index [code]idx[/"
+"code]. If the file doesn't define a script class using the [code]class_name[/"
+"code] syntax, this will return an empty string."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:88
msgid "Returns the file extension of the file at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:93
+#: doc/classes/EditorFileSystemDirectory.xml:95
msgid "Returns the name of this directory."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:100
+#: doc/classes/EditorFileSystemDirectory.xml:102
msgid ""
"Returns the parent directory for this directory or [code]null[/code] if "
"called on a directory at [code]res://[/code] or [code]user://[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:107
+#: doc/classes/EditorFileSystemDirectory.xml:109
msgid "Returns the path to this directory."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:116
+#: doc/classes/EditorFileSystemDirectory.xml:118
msgid "Returns the subdirectory at index [code]idx[/code]."
msgstr ""
-#: doc/classes/EditorFileSystemDirectory.xml:123
+#: doc/classes/EditorFileSystemDirectory.xml:125
msgid "Returns the number of subdirectories in this directory."
msgstr ""
@@ -18095,45 +18276,72 @@ msgstr ""
msgid "Gets the unique name of the importer."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:92
+#: doc/classes/EditorImportPlugin.xml:86
+msgid ""
+"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. For example:\n"
+"[codeblock]\n"
+"func get_option_visibility(option, options):\n"
+" # Only show the lossy quality setting if the compression mode is set to "
+"\"Lossy\".\n"
+" if option == \"compress/lossy_quality\" and options.has(\"compress/mode"
+"\"):\n"
+" return int(options[\"compress/mode\"]) == COMPRESS_LOSSY\n"
+"\n"
+" return true\n"
+"[/codeblock]\n"
+"Return [code]true[/code] to make all options always visible."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:102
msgid ""
"Gets the number of initial presets defined by the plugin. Use [method "
"get_import_options] to get the default options for the preset and [method "
"get_preset_name] to get the name of the preset."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:101
+#: doc/classes/EditorImportPlugin.xml:111
msgid "Gets the name of the options preset at this index."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:108
+#: doc/classes/EditorImportPlugin.xml:118
msgid ""
"Gets the priority of this plugin for the recognized extension. Higher "
"priority plugins will be preferred. The default priority is [code]1.0[/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:115
+#: doc/classes/EditorImportPlugin.xml:125
msgid ""
"Gets the list of file extensions to associate with this loader (case-"
"insensitive). e.g. [code][\"obj\"][/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:122
+#: doc/classes/EditorImportPlugin.xml:132
msgid ""
"Gets the Godot resource type associated with this loader. e.g. [code]\"Mesh"
"\"[/code] or [code]\"Animation\"[/code]."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:129
+#: doc/classes/EditorImportPlugin.xml:139
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory."
msgstr ""
-#: doc/classes/EditorImportPlugin.xml:136
+#: doc/classes/EditorImportPlugin.xml:146
msgid "Gets the name to display in the import window."
msgstr ""
+#: doc/classes/EditorImportPlugin.xml:163
+msgid ""
+"Imports [code]source_file[/code] into [code]save_path[/code] with the import "
+"[code]options[/code] specified. The [code]platform_variants[/code] and "
+"[code]gen_files[/code] arrays will be modified by this function.\n"
+"This method must be overridden to do the actual importing work. See this "
+"class' description for an example of overriding this method."
+msgstr ""
+
#: doc/classes/EditorInspector.xml:4
msgid "A tab used to edit properties of the selected node."
msgstr ""
@@ -18149,6 +18357,58 @@ msgid ""
"the singleton using [method EditorInterface.get_inspector]."
msgstr ""
+#: doc/classes/EditorInspector.xml:17
+msgid ""
+"Refreshes the inspector.\n"
+"[b]Note:[/b] To save on CPU resources, calling this method will do nothing "
+"if the time specified in [code]docks/property_editor/auto_refresh_interval[/"
+"code] editor setting hasn't passed yet since this method was last called. "
+"(By default, this interval is set to 0.3 seconds.)"
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:30
+msgid ""
+"Emitted when the Edit button of an [Object] has been pressed in the "
+"inspector. This is mainly used in the remote scene tree inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:37
+msgid "Emitted when a property is removed from the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:44
+msgid "Emitted when a property is edited in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:51
+msgid ""
+"Emitted when a property is keyed in the inspector. Properties can be keyed "
+"by clicking the \"key\" icon next to a property when the Animation panel is "
+"toggled."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:58
+msgid "Emitted when a property is selected in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:67
+msgid ""
+"Emitted when a boolean property is toggled in the inspector.\n"
+"[b]Note:[/b] This signal is never emitted if the internal [code]autoclear[/"
+"code] property enabled. Since this property is always enabled in the editor "
+"inspector, this signal is never emitted by the editor itself."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:77
+msgid "Emitted when a resource is selected in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:82
+msgid ""
+"Emitted when a property that requires a restart to be applied is edited in "
+"the inspector. This is only used in the Project Settings and Editor Settings."
+msgstr ""
+
#: doc/classes/EditorInspectorPlugin.xml:4
msgid "Plugin for adding custom property editors on inspector."
msgstr ""
@@ -18227,91 +18487,155 @@ msgstr ""
#: doc/classes/EditorInterface.xml:26
msgid ""
-"Returns the main container of Godot editor's window. You can use it, for "
-"example, to retrieve the size of the container and place your controls "
+"Returns the main container of Godot editor's window. For example, you can "
+"use it to retrieve the size of the container and place your controls "
"accordingly."
msgstr ""
-#: doc/classes/EditorInterface.xml:39
+#: doc/classes/EditorInterface.xml:33
+msgid "Returns the current path being viewed in the [FileSystemDock]."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:40
msgid "Returns the edited (current) scene's root [Node]."
msgstr ""
-#: doc/classes/EditorInterface.xml:46
-msgid "Returns the [EditorSettings]."
+#: doc/classes/EditorInterface.xml:47
+msgid "Returns the editor's [EditorSettings] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:53
-msgid "Returns the editor [Viewport]."
+#: doc/classes/EditorInterface.xml:54
+msgid ""
+"Returns the main editor control. Use this as a parent for main screens.\n"
+"[b]Note:[/b] This returns the main editor control containing the whole "
+"editor, not the 2D or 3D viewports specifically."
msgstr ""
-#: doc/classes/EditorInterface.xml:72
+#: doc/classes/EditorInterface.xml:62
+msgid "Returns the editor's [FileSystemDock] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:69
+msgid "Returns the editor's [EditorInspector] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:76
msgid "Returns an [Array] with the file paths of the currently opened scenes."
msgstr ""
-#: doc/classes/EditorInterface.xml:79
-msgid "Returns the [EditorFileSystem]."
+#: doc/classes/EditorInterface.xml:83
+msgid ""
+"Returns the name of the scene that is being played. If no scene is currently "
+"being played, returns an empty string."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:90
+msgid "Returns the editor's [EditorFileSystem] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:86
-msgid "Returns the [EditorResourcePreview]."
+#: doc/classes/EditorInterface.xml:97
+msgid "Returns the editor's [EditorResourcePreview] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:93
-msgid "Returns the [ScriptEditor]."
+#: doc/classes/EditorInterface.xml:104
+msgid "Returns the editor's [ScriptEditor] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:111
+msgid ""
+"Returns the path of the directory currently selected in the "
+"[FileSystemDock]. If a file is selected, its base directory will be returned "
+"using [method String.get_base_dir] instead."
msgstr ""
-#: doc/classes/EditorInterface.xml:106
-msgid "Returns the [EditorSelection]."
+#: doc/classes/EditorInterface.xml:118
+msgid "Returns the editor's [EditorSelection] instance."
msgstr ""
-#: doc/classes/EditorInterface.xml:117
+#: doc/classes/EditorInterface.xml:129
msgid ""
-"Shows the given property on the given [code]object[/code] in the Editor's "
+"Shows the given property on the given [code]object[/code] in the editor's "
"Inspector dock."
msgstr ""
-#: doc/classes/EditorInterface.xml:126
+#: doc/classes/EditorInterface.xml:136
msgid ""
-"Returns the enabled status of a plugin. The plugin name is the same as its "
-"directory name."
+"Returns [code]true[/code] if a scene is currently being played, [code]false[/"
+"code] otherwise. Paused scenes are considered as being played."
msgstr ""
-#: doc/classes/EditorInterface.xml:137
+#: doc/classes/EditorInterface.xml:145
+msgid ""
+"Returns [code]true[/code] if the specified [code]plugin[/code] is enabled. "
+"The plugin name is the same as its directory name."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:156
msgid ""
"Returns mesh previews rendered at the given size as an [Array] of "
"[Texture2D]s."
msgstr ""
-#: doc/classes/EditorInterface.xml:146
+#: doc/classes/EditorInterface.xml:165
msgid "Opens the scene at the given path."
msgstr ""
-#: doc/classes/EditorInterface.xml:155
+#: doc/classes/EditorInterface.xml:172
+msgid "Plays the currently active scene."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:181
+msgid "Plays the scene specified by its filepath."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:188
+msgid "Plays the main scene."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:197
msgid "Reloads the scene at the given path."
msgstr ""
-#: doc/classes/EditorInterface.xml:162
+#: doc/classes/EditorInterface.xml:204
msgid ""
"Saves the scene. Returns either [code]OK[/code] or [code]ERR_CANT_CREATE[/"
"code] (see [@GlobalScope] constants)."
msgstr ""
-#: doc/classes/EditorInterface.xml:173
+#: doc/classes/EditorInterface.xml:215
msgid "Saves the scene as a file at [code]path[/code]."
msgstr ""
-#: doc/classes/EditorInterface.xml:182
+#: doc/classes/EditorInterface.xml:224
msgid ""
"Selects the file, with the path provided by [code]file[/code], in the "
"FileSystem dock."
msgstr ""
-#: doc/classes/EditorInterface.xml:201
+#: doc/classes/EditorInterface.xml:233
+msgid ""
+"Sets the editor's current main screen to the one specified in [code]name[/"
+"code]. [code]name[/code] must match the text of the tab in question exactly "
+"([code]2D[/code], [code]3D[/code], [code]Script[/code], [code]AssetLib[/"
+"code])."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:244
msgid ""
"Sets the enabled status of a plugin. The plugin name is the same as its "
"directory name."
msgstr ""
+#: doc/classes/EditorInterface.xml:251
+msgid "Stops the scene that is currently playing."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:257
+msgid ""
+"If [code]true[/code], enables distraction-free mode which hides side docks "
+"to increase the space available for the main view."
+msgstr ""
+
#: doc/classes/EditorNode3DGizmo.xml:4
msgid "Custom gizmo for editing Node3D objects."
msgstr ""
@@ -18323,14 +18647,20 @@ msgid ""
"information."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:26
+#: doc/classes/EditorNode3DGizmo.xml:18
+msgid ""
+"Adds the specified [code]segments[/code] to the gizmo's collision shape for "
+"picking. Call this function during [method redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:27
msgid ""
"Adds collision triangles to the gizmo for picking. A [TriangleMesh] can be "
"generated from a regular [Mesh] too. Call this function during [method "
"redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:41
+#: doc/classes/EditorNode3DGizmo.xml:42
msgid ""
"Adds a list of handles (points) which can be used to deform the object being "
"edited.\n"
@@ -18338,20 +18668,33 @@ msgid ""
"handles. Call this function during [method redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:57
+#: doc/classes/EditorNode3DGizmo.xml:58
msgid ""
"Adds lines to the gizmo (as sets of 2 points), with a given material. The "
"lines are used for visualizing the gizmo. Call this function during [method "
"redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:84
+#: doc/classes/EditorNode3DGizmo.xml:73
+msgid ""
+"Adds a mesh to the gizmo with the specified [code]billboard[/code] state, "
+"[code]skeleton[/code] and [code]material[/code]. If [code]billboard[/code] "
+"is [code]true[/code], the mesh will rotate to always face the camera. Call "
+"this function during [method redraw]."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:86
msgid ""
"Adds an unscaled billboard for visualization. Call this function during "
"[method redraw]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:103
+#: doc/classes/EditorNode3DGizmo.xml:93
+msgid ""
+"Removes everything in the gizmo including meshes, collisions and handles."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:106
msgid ""
"Commit a handle being edited (handles must have been previously added by "
"[method add_handles]).\n"
@@ -18359,40 +18702,42 @@ msgid ""
"restore the edited value to the original is provided."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:113
+#: doc/classes/EditorNode3DGizmo.xml:116
msgid ""
"Gets the name of an edited handle (handles must have been previously added "
"by [method add_handles]).\n"
"Handles can be named for reference to the user when editing."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:123
+#: doc/classes/EditorNode3DGizmo.xml:126
msgid ""
"Gets actual value of a handle. This value can be anything and used for "
"eventually undoing the motion when calling [method commit_handle]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:130
+#: doc/classes/EditorNode3DGizmo.xml:133
msgid ""
"Returns the [EditorNode3DGizmoPlugin] that owns this gizmo. It's useful to "
"retrieve materials using [method EditorNode3DGizmoPlugin.get_material]."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:137
+#: doc/classes/EditorNode3DGizmo.xml:140
msgid "Returns the Node3D node associated with this gizmo."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:146
-msgid "Gets whether a handle is highlighted or not."
+#: doc/classes/EditorNode3DGizmo.xml:149
+msgid ""
+"Returns [code]true[/code] if the handle at index [code]index[/code] is "
+"highlighted by being hovered with the mouse."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:153
+#: doc/classes/EditorNode3DGizmo.xml:156
msgid ""
-"This function is called when the Node3D this gizmo refers to changes (the "
+"This function is called when the [Node3D] this gizmo refers to changes (the "
"[method Node3D.update_gizmo] is called)."
msgstr ""
-#: doc/classes/EditorNode3DGizmo.xml:166
+#: doc/classes/EditorNode3DGizmo.xml:169
msgid ""
"This function is used when the user drags a gizmo handle (previously added "
"with [method add_handles]) in screen coordinates.\n"
@@ -18400,6 +18745,18 @@ msgid ""
"raycasts."
msgstr ""
+#: doc/classes/EditorNode3DGizmo.xml:179
+msgid ""
+"Sets the gizmo's hidden state. If [code]true[/code], the gizmo will be "
+"hidden. If [code]false[/code], it will be shown."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmo.xml:188
+msgid ""
+"Sets the reference [Node3D] node for the gizmo. [code]node[/code] must "
+"inherit from [Node3D]."
+msgstr ""
+
#: doc/classes/EditorNode3DGizmoPlugin.xml:4
msgid "Used by the editor to define Node3D gizmo types."
msgstr ""
@@ -18492,7 +18849,17 @@ msgid ""
"visibility menu."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:150
+#: doc/classes/EditorNode3DGizmoPlugin.xml:142
+msgid ""
+"Override this method to set the gizmo's priority. Higher values correspond "
+"to higher priority. If a gizmo with higher priority conflicts with another "
+"gizmo, only the gizmo with higher priority will be used.\n"
+"All built-in editor gizmos return a priority of [code]-1[/code]. If not "
+"overridden, this method will return [code]0[/code], which means custom "
+"gizmos will automatically override built-in gizmos."
+msgstr ""
+
+#: doc/classes/EditorNode3DGizmoPlugin.xml:152
msgid ""
"Override this method to define which Node3D nodes have a gizmo from this "
"plugin. Whenever a [Node3D] node is added to a scene this method is called, "
@@ -18500,25 +18867,25 @@ msgid ""
"assigned and is added to this plugin's list of active gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:161
+#: doc/classes/EditorNode3DGizmoPlugin.xml:163
msgid ""
"Gets whether a handle is highlighted or not. Called for this plugin's active "
"gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:168
+#: doc/classes/EditorNode3DGizmoPlugin.xml:170
msgid ""
"Override this method to define whether Node3D with this gizmo should be "
"selecteble even when the gizmo is hidden."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:177
+#: doc/classes/EditorNode3DGizmoPlugin.xml:179
msgid ""
"Callback to redraw the provided gizmo. Called for this plugin's active "
"gizmos."
msgstr ""
-#: doc/classes/EditorNode3DGizmoPlugin.xml:192
+#: doc/classes/EditorNode3DGizmoPlugin.xml:194
msgid ""
"Update the value of a handle after it has been updated. Called for this "
"plugin's active gizmos."
@@ -18605,7 +18972,13 @@ msgid ""
"should be cleaned up using [code]remove_tool_menu_item(name)[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:149
+#: doc/classes/EditorPlugin.xml:151
+msgid ""
+"Registers a custom translation parser plugin for extracting translatable "
+"strings from custom files."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:158
msgid ""
"This method is called when the editor is about to save the project, switch "
"to another tab, etc. It asks the plugin to apply any pending state changes "
@@ -18614,32 +18987,32 @@ msgid ""
"must apply the shader code being written by the user to the object."
msgstr ""
-#: doc/classes/EditorPlugin.xml:163
+#: doc/classes/EditorPlugin.xml:172
msgid ""
"Clear all the state and reset the object being edited to zero. This ensures "
"your plugin does not keep editing a currently existing node, or a node from "
"the wrong scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:170
+#: doc/classes/EditorPlugin.xml:179
msgid ""
"Called by the engine when the user disables the [EditorPlugin] in the Plugin "
"tab of the project settings window."
msgstr ""
-#: doc/classes/EditorPlugin.xml:179
+#: doc/classes/EditorPlugin.xml:188
msgid ""
"This function is used for plugins that edit specific object types (nodes or "
"resources). It requests the editor to edit the given object."
msgstr ""
-#: doc/classes/EditorPlugin.xml:186
+#: doc/classes/EditorPlugin.xml:195
msgid ""
"Called by the engine when the user enables the [EditorPlugin] in the Plugin "
"tab of the project settings window."
msgstr ""
-#: doc/classes/EditorPlugin.xml:211
+#: doc/classes/EditorPlugin.xml:220
msgid ""
"Called when there is a root node in the current edited scene, [method "
"handles] is implemented and an [InputEvent] happens in the 2D viewport. "
@@ -18664,7 +19037,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:237
+#: doc/classes/EditorPlugin.xml:246
msgid ""
"Called when there is a root node in the current edited scene, [method "
"handles] is implemented and an [InputEvent] happens in the 3D viewport. "
@@ -18689,20 +19062,20 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:259
+#: doc/classes/EditorPlugin.xml:268
msgid ""
"This is for editors that edit script-based objects. You can return a list of "
"breakpoints in the format ([code]script:line[/code]), for example: "
"[code]res://path_to_script.gd:25[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:266
+#: doc/classes/EditorPlugin.xml:275
msgid ""
"Returns the [EditorInterface] object that gives you control over Godot "
"editor's window and its functionalities."
msgstr ""
-#: doc/classes/EditorPlugin.xml:273
+#: doc/classes/EditorPlugin.xml:282
msgid ""
"Override this method in your plugin to return a [Texture2D] in order to give "
"it an icon.\n"
@@ -18720,7 +19093,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorPlugin.xml:289
+#: doc/classes/EditorPlugin.xml:298
msgid ""
"Override this method in your plugin to provide the name of the plugin when "
"displayed in the Godot editor.\n"
@@ -18728,33 +19101,33 @@ msgid ""
"of the \"2D\", \"3D\", \"Script\", and \"AssetLib\" buttons."
msgstr ""
-#: doc/classes/EditorPlugin.xml:297
+#: doc/classes/EditorPlugin.xml:306
msgid ""
"Gets the Editor's dialogue used for making scripts.\n"
"[b]Note:[/b] Users can configure it before use."
msgstr ""
-#: doc/classes/EditorPlugin.xml:305
+#: doc/classes/EditorPlugin.xml:314
msgid ""
"Gets the state of your plugin editor. This is used when saving the scene (so "
"state is kept when opening it again) and for switching tabs (so state can be "
"restored when the tab returns)."
msgstr ""
-#: doc/classes/EditorPlugin.xml:312
+#: doc/classes/EditorPlugin.xml:321
msgid ""
"Gets the undo/redo object. Most actions in the editor can be undoable, so "
"use this object to make sure this happens when it's worth it."
msgstr ""
-#: doc/classes/EditorPlugin.xml:321
+#: doc/classes/EditorPlugin.xml:330
msgid ""
"Gets the GUI layout of the plugin. This is used to save the project's editor "
"layout when [method queue_save_layout] is called or the editor layout was "
"changed(For example changing the position of a dock)."
msgstr ""
-#: doc/classes/EditorPlugin.xml:330
+#: doc/classes/EditorPlugin.xml:339
msgid ""
"Implement this function if your plugin edits a specific type of object "
"(Resource or Node). If you return [code]true[/code], then you will get the "
@@ -18764,14 +19137,14 @@ msgid ""
"be called too."
msgstr ""
-#: doc/classes/EditorPlugin.xml:337
+#: doc/classes/EditorPlugin.xml:346
msgid ""
"Returns [code]true[/code] if this is a main screen editor plugin (it goes in "
"the workspace selector together with [b]2D[/b], [b]3D[/b], [b]Script[/b] and "
"[b]AssetLib[/b])."
msgstr ""
-#: doc/classes/EditorPlugin.xml:360
+#: doc/classes/EditorPlugin.xml:369
msgid ""
"This function will be called when the editor is requested to become visible. "
"It is used for plugins that edit a specific object type.\n"
@@ -18779,85 +19152,89 @@ msgid ""
"manually."
msgstr ""
-#: doc/classes/EditorPlugin.xml:368
+#: doc/classes/EditorPlugin.xml:377
msgid "Queue save the project's editor layout."
msgstr ""
-#: doc/classes/EditorPlugin.xml:377
+#: doc/classes/EditorPlugin.xml:386
msgid "Removes an Autoload [code]name[/code] from the list."
msgstr ""
-#: doc/classes/EditorPlugin.xml:386
+#: doc/classes/EditorPlugin.xml:395
msgid ""
"Removes the control from the bottom panel. You have to manually [method Node."
"queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:397
+#: doc/classes/EditorPlugin.xml:406
msgid ""
"Removes the control from the specified container. You have to manually "
"[method Node.queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:406
+#: doc/classes/EditorPlugin.xml:415
msgid ""
"Removes the control from the dock. You have to manually [method Node."
"queue_free] the control."
msgstr ""
-#: doc/classes/EditorPlugin.xml:415
+#: doc/classes/EditorPlugin.xml:424
msgid "Removes a custom type added by [method add_custom_type]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:464
+#: doc/classes/EditorPlugin.xml:473
msgid "Removes a menu [code]name[/code] from [b]Project > Tools[/b]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:471
+#: doc/classes/EditorPlugin.xml:482
+msgid "Removes a registered custom translation parser plugin."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:489
msgid ""
"This method is called after the editor saves the project or when it's "
"closed. It asks the plugin to save edited external scenes/resources."
msgstr ""
-#: doc/classes/EditorPlugin.xml:484
+#: doc/classes/EditorPlugin.xml:502
msgid ""
"Use this method if you always want to receive inputs from 3D view screen "
"inside [method forward_spatial_gui_input]. It might be especially usable if "
"your plugin will want to use raycast in the scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:493
+#: doc/classes/EditorPlugin.xml:511
msgid "Restore the state saved by [method get_state]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:502
+#: doc/classes/EditorPlugin.xml:520
msgid "Restore the plugin GUI layout saved by [method get_window_layout]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:509
+#: doc/classes/EditorPlugin.xml:527
msgid "Updates the overlays of the editor (2D/3D) viewport."
msgstr ""
-#: doc/classes/EditorPlugin.xml:518
+#: doc/classes/EditorPlugin.xml:536
msgid ""
"Emitted when user changes the workspace ([b]2D[/b], [b]3D[/b], [b]Script[/"
"b], [b]AssetLib[/b]). Also works with custom screens defined by plugins."
msgstr ""
-#: doc/classes/EditorPlugin.xml:531
+#: doc/classes/EditorPlugin.xml:549
msgid ""
"Emitted when the scene is changed in the editor. The argument will return "
"the root node of the scene that has just become active. If this scene is new "
"and empty, the argument will be [code]null[/code]."
msgstr ""
-#: doc/classes/EditorPlugin.xml:538
+#: doc/classes/EditorPlugin.xml:556
msgid ""
"Emitted when user closes a scene. The argument is file path to a closed "
"scene."
msgstr ""
-#: doc/classes/EditorPlugin.xml:584
+#: doc/classes/EditorPlugin.xml:602
msgid "Represents the size of the [enum DockSlot] enum."
msgstr ""
@@ -18912,64 +19289,83 @@ msgid "When this virtual function is called, you must update your editor."
msgstr ""
#: doc/classes/EditorProperty.xml:76
-msgid "Used by the inspector, set when property is checkable."
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is "
+"checkable."
msgstr ""
#: doc/classes/EditorProperty.xml:79
-msgid "Used by the inspector, when the property is checked."
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is checked."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:82
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property can be "
+"deleted by the user."
msgstr ""
-#: doc/classes/EditorProperty.xml:84
-msgid "Used by the inspector, when the property must draw with error color."
+#: doc/classes/EditorProperty.xml:85
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property must draw "
+"with error color. This is used for editable children's properties."
msgstr ""
-#: doc/classes/EditorProperty.xml:87
-msgid "Used by the inspector, when the property can add keys for animation."
+#: doc/classes/EditorProperty.xml:88
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property can add "
+"keys for animation."
msgstr ""
-#: doc/classes/EditorProperty.xml:90
-msgid "Sets this property to change the label (if you want to show one)."
+#: doc/classes/EditorProperty.xml:91
+msgid "Set this property to change the label (if you want to show one)."
msgstr ""
-#: doc/classes/EditorProperty.xml:93
-msgid "Used by the inspector, when the property is read-only."
+#: doc/classes/EditorProperty.xml:94
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is read-"
+"only."
msgstr ""
-#: doc/classes/EditorProperty.xml:103
+#: doc/classes/EditorProperty.xml:104
msgid ""
"Emit it if you want multiple properties modified at the same time. Do not "
"use if added via [method EditorInspectorPlugin.parse_property]."
msgstr ""
-#: doc/classes/EditorProperty.xml:112
+#: doc/classes/EditorProperty.xml:113
msgid "Used by sub-inspectors. Emit it if what was selected was an Object ID."
msgstr ""
-#: doc/classes/EditorProperty.xml:121
+#: doc/classes/EditorProperty.xml:122
msgid ""
"Do not emit this manually, use the [method emit_changed] method instead."
msgstr ""
-#: doc/classes/EditorProperty.xml:130
+#: doc/classes/EditorProperty.xml:131
msgid "Emitted when a property was checked. Used internally."
msgstr ""
-#: doc/classes/EditorProperty.xml:143
+#: doc/classes/EditorProperty.xml:138
+msgid "Emitted when a property was deleted. Used internally."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:145
msgid ""
"Emit it if you want to add this value as an animation key (check for keying "
"being enabled first)."
msgstr ""
-#: doc/classes/EditorProperty.xml:152
+#: doc/classes/EditorProperty.xml:154
msgid "Emit it if you want to key a property with a single value."
msgstr ""
-#: doc/classes/EditorProperty.xml:161
+#: doc/classes/EditorProperty.xml:163
msgid ""
"If you want a sub-resource to be edited, emit this signal with the resource."
msgstr ""
-#: doc/classes/EditorProperty.xml:170
+#: doc/classes/EditorProperty.xml:172
msgid "Emitted when selected. Used internally."
msgstr ""
@@ -19254,17 +19650,26 @@ msgstr ""
msgid ""
"Object that holds the project-independent editor settings. These settings "
"are generally visible in the [b]Editor > Editor Settings[/b] menu.\n"
-"Accessing the settings is done by using the regular [Object] API, such as:\n"
-"[codeblock]\n"
-"settings.set(prop,value)\n"
-"settings.get(prop)\n"
-"list_of_settings = settings.get_property_list()\n"
+"Property names use slash delimiters to distinguish sections. Setting values "
+"can be of any [Variant] type. It's recommended to use [code]snake_case[/"
+"code] for editor settings to be consistent with the Godot editor itself.\n"
+"Accessing the settings can be done using the following methods, such as:\n"
+"[codeblock]\n"
+"# `settings.set(\"some/property\", value)` also works as this class "
+"overrides `_set()` internally.\n"
+"settings.set_setting(\"some/property\",value)\n"
+"\n"
+"# `settings.get(\"some/property\", value)` also works as this class "
+"overrides `_get()` internally.\n"
+"settings.get_setting(\"some/property\")\n"
+"\n"
+"var list_of_settings = settings.get_property_list()\n"
"[/codeblock]\n"
"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
"the singleton using [method EditorInterface.get_editor_settings]."
msgstr ""
-#: doc/classes/EditorSettings.xml:25
+#: doc/classes/EditorSettings.xml:30
msgid ""
"Adds a custom property info to a property. The dictionary must contain:\n"
"- [code]name[/code]: [String] (the name of the property)\n"
@@ -19286,52 +19691,173 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/EditorSettings.xml:50
-msgid "Erase a given setting (pass full property path)."
+#: doc/classes/EditorSettings.xml:55
+msgid "Erases the setting whose name is specified by [code]property[/code]."
msgstr ""
-#: doc/classes/EditorSettings.xml:57
-msgid "Gets the list of favorite files and directories for this project."
+#: doc/classes/EditorSettings.xml:62
+msgid "Returns the list of favorite files and directories for this project."
msgstr ""
-#: doc/classes/EditorSettings.xml:76
+#: doc/classes/EditorSettings.xml:75
msgid ""
-"Gets the specific project settings path. Projects all have a unique sub-"
-"directory inside the settings path where project specific settings are saved."
+"Returns project-specific metadata for the [code]section[/code] and "
+"[code]key[/code] specified. If the metadata doesn't exist, [code]default[/"
+"code] will be returned instead. See also [method set_project_metadata]."
msgstr ""
-#: doc/classes/EditorSettings.xml:83
+#: doc/classes/EditorSettings.xml:82
msgid ""
-"Gets the list of recently visited folders in the file dialog for this "
+"Returns the project-specific settings path. Projects all have a unique "
+"subdirectory inside the settings path where project-specific settings are "
+"saved."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:89
+msgid ""
+"Returns the list of recently visited folders in the file dialog for this "
"project."
msgstr ""
#: doc/classes/EditorSettings.xml:98
msgid ""
+"Returns the value of the setting specified by [code]name[/code]. This is "
+"equivalent to using [method Object.get] on the EditorSettings instance."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:105
+msgid ""
"Gets the global settings path for the engine. Inside this path, you can find "
"some standard paths such as:\n"
"[code]settings/tmp[/code] - Used for temporary storage of files\n"
"[code]settings/templates[/code] - Where export templates are located"
msgstr ""
-#: doc/classes/EditorSettings.xml:133
+#: doc/classes/EditorSettings.xml:116
+msgid ""
+"Returns [code]true[/code] if the setting specified by [code]name[/code] "
+"exists, [code]false[/code] otherwise."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:125
+msgid ""
+"Returns [code]true[/code] if the setting specified by [code]name[/code] can "
+"have its value reverted to the default value, [code]false[/code] otherwise. "
+"When this method returns [code]true[/code], a Revert button will display "
+"next to the setting in the Editor Settings."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:134
+msgid ""
+"Returns the default value of the setting specified by [code]name[/code]. "
+"This is the value that would be applied when clicking the Revert button in "
+"the Editor Settings."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:143
msgid "Sets the list of favorite files and directories for this project."
msgstr ""
-#: doc/classes/EditorSettings.xml:166
+#: doc/classes/EditorSettings.xml:156
+msgid ""
+"Sets the initial value of the setting specified by [code]name[/code] to "
+"[code]value[/code]. This is used to provide a value for the Revert button in "
+"the Editor Settings. If [code]update_current[/code] is true, the current "
+"value of the setting will be set to [code]value[/code] as well."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:169
+msgid ""
+"Sets project-specific metadata with the [code]section[/code], [code]key[/"
+"code] and [code]data[/code] specified. This metadata is stored outside the "
+"project folder and therefore won't be checked into version control. See also "
+"[method get_project_metadata]."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:178
msgid ""
"Sets the list of recently visited folders in the file dialog for this "
"project."
msgstr ""
-#: doc/classes/EditorSettings.xml:183
-msgid "Emitted when editor settings change."
+#: doc/classes/EditorSettings.xml:189
+msgid ""
+"Sets the [code]value[/code] of the setting specified by [code]name[/code]. "
+"This is equivalent to using [method Object.set] on the EditorSettings "
+"instance."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:196
+msgid "Emitted after any editor setting has changed."
msgstr ""
-#: doc/classes/EditorSettings.xml:189
+#: doc/classes/EditorSettings.xml:202
+msgid ""
+"Emitted after any editor setting has changed. It's used by various editor "
+"plugins to update their visuals on theme changes or logic on configuration "
+"changes."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:4
+msgid ""
+"Plugin for adding custom parsers to extract strings that are to be "
+"translated from custom files (.csv, .json etc.)."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:7
+msgid ""
+"Plugins are registered via [method EditorPlugin."
+"add_translation_parser_plugin] method. To define the parsing and string "
+"extraction logic, override the [method parse_file] method in script.\n"
+"The extracted strings will be written into a POT file selected by user under "
+"\"POT Generation\" in \"Localization\" tab in \"Project Settings\" menu.\n"
+"Below shows an example of a custom parser that extracts strings in a CSV "
+"file to write into a POT.\n"
+"[codeblock]\n"
+"tool\n"
+"extends EditorTranslationParserPlugin\n"
+"\n"
+"\n"
+"func parse_file(path, extracted_strings):\n"
+" var file = File.new()\n"
+" file.open(path, File.READ)\n"
+" var text = file.get_as_text()\n"
+" var split_strs = text.split(\",\", false, 0)\n"
+" for s in split_strs:\n"
+" extracted_strings.append(s)\n"
+" #print(\"Extracted string: \" + s)\n"
+"\n"
+"\n"
+"func get_recognized_extensions():\n"
+" return [\"csv\"]\n"
+"[/codeblock]\n"
+"[b]Note:[/b] If you override parsing logic for standard script types "
+"(GDScript, C#, etc.), it would be better to load the [code]path[/code] "
+"argument using [method ResourceLoader.load]. This is because built-in "
+"scripts are loaded as [Resource] type, not [File] type.\n"
+"For example:\n"
+"[codeblock]\n"
+"func parse_file(path, extracted_strings):\n"
+" var res = ResourceLoader.load(path, \"Script\")\n"
+" var text = res.get_source_code()\n"
+" # Parsing logic.\n"
+"\n"
+"\n"
+"func get_recognized_extensions():\n"
+" return [\"gd\"]\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:48
msgid ""
-"Emitted when editor settings change. It used by various editor plugins to "
-"update their visuals on theme changes or logic on configuration changes."
+"Gets the list of file extensions to associate with this parser, e.g. [code]"
+"[\"csv\"][/code]."
+msgstr ""
+
+#: doc/classes/EditorTranslationParserPlugin.xml:59
+msgid ""
+"Override this method to define a custom parsing logic to extract the "
+"translatable strings."
msgstr ""
#: doc/classes/EditorVCSInterface.xml:4
@@ -19942,15 +20468,15 @@ msgid ""
"to 1.3 to compensate for the lack of HDR rendering."
msgstr ""
-#: doc/classes/Environment.xml:190
+#: doc/classes/Environment.xml:214
msgid "The [Sky] resource used for this [Environment]."
msgstr ""
-#: doc/classes/Environment.xml:197
+#: doc/classes/Environment.xml:221
msgid "The depth tolerance for screen-space reflections."
msgstr ""
-#: doc/classes/Environment.xml:200
+#: doc/classes/Environment.xml:224
msgid ""
"If [code]true[/code], screen-space reflections are enabled. Screen-space "
"reflections are more accurate than reflections from [GIProbe]s or "
@@ -19958,48 +20484,48 @@ msgid ""
"others."
msgstr ""
-#: doc/classes/Environment.xml:203
+#: doc/classes/Environment.xml:227
msgid ""
"The fade-in distance for screen-space reflections. Affects the area from the "
"reflected material to the screen-space reflection)."
msgstr ""
-#: doc/classes/Environment.xml:206
+#: doc/classes/Environment.xml:230
msgid ""
"The fade-out distance for screen-space reflections. Affects the area from "
"the screen-space reflection to the \"global\" reflection."
msgstr ""
-#: doc/classes/Environment.xml:209
+#: doc/classes/Environment.xml:233
msgid ""
"The maximum number of steps for screen-space reflections. Higher values are "
"slower."
msgstr ""
-#: doc/classes/Environment.xml:212
+#: doc/classes/Environment.xml:236
msgid ""
"The screen-space ambient occlusion intensity on materials that have an AO "
"texture defined. Values higher than [code]0[/code] will make the SSAO effect "
"visible in areas darkened by AO textures."
msgstr ""
-#: doc/classes/Environment.xml:215
+#: doc/classes/Environment.xml:239
msgid ""
"The screen-space ambient occlusion bias. This should be kept high enough to "
"prevent \"smooth\" curves from being affected by ambient occlusion."
msgstr ""
-#: doc/classes/Environment.xml:218
+#: doc/classes/Environment.xml:242
msgid ""
"The screen-space ambient occlusion blur quality. See [enum SSAOBlur] for "
"possible values."
msgstr ""
-#: doc/classes/Environment.xml:221
+#: doc/classes/Environment.xml:245
msgid "The screen-space ambient occlusion edge sharpness."
msgstr ""
-#: doc/classes/Environment.xml:224
+#: doc/classes/Environment.xml:248
msgid ""
"If [code]true[/code], the screen-space ambient occlusion effect is enabled. "
"This darkens objects' corners and cavities to simulate ambient light not "
@@ -20010,13 +20536,13 @@ msgid ""
"issues."
msgstr ""
-#: doc/classes/Environment.xml:227
+#: doc/classes/Environment.xml:251
msgid ""
"The primary screen-space ambient occlusion intensity. See also [member "
"ssao_radius]."
msgstr ""
-#: doc/classes/Environment.xml:230
+#: doc/classes/Environment.xml:254
msgid ""
"The screen-space ambient occlusion intensity in direct light. In real life, "
"ambient occlusion only applies to indirect light, which means its effects "
@@ -20024,46 +20550,46 @@ msgid ""
"the SSAO effect visible in direct light."
msgstr ""
-#: doc/classes/Environment.xml:233
+#: doc/classes/Environment.xml:257
msgid "The primary screen-space ambient occlusion radius."
msgstr ""
-#: doc/classes/Environment.xml:236
+#: doc/classes/Environment.xml:260
msgid "The default exposure used for tonemapping."
msgstr ""
-#: doc/classes/Environment.xml:239
+#: doc/classes/Environment.xml:263
msgid ""
"The tonemapping mode to use. Tonemapping is the process that \"converts\" "
"HDR values to be suitable for rendering on a LDR display. (Godot doesn't "
"support rendering on HDR displays yet.)"
msgstr ""
-#: doc/classes/Environment.xml:242
+#: doc/classes/Environment.xml:266
msgid ""
"The white reference value for tonemapping. Only effective if the [member "
"tonemap_mode] isn't set to [constant TONE_MAPPER_LINEAR]."
msgstr ""
-#: doc/classes/Environment.xml:247
+#: doc/classes/Environment.xml:271
msgid ""
"Clears the background using the clear color defined in [member "
"ProjectSettings.rendering/environment/default_clear_color]."
msgstr ""
-#: doc/classes/Environment.xml:250
+#: doc/classes/Environment.xml:274
msgid "Clears the background using a custom clear color."
msgstr ""
-#: doc/classes/Environment.xml:253
+#: doc/classes/Environment.xml:277
msgid "Displays a user-defined sky in the background."
msgstr ""
-#: doc/classes/Environment.xml:256
+#: doc/classes/Environment.xml:280
msgid "Displays a [CanvasLayer] in the background."
msgstr ""
-#: doc/classes/Environment.xml:259
+#: doc/classes/Environment.xml:283
msgid ""
"Keeps on screen every pixel drawn in the background. This is the fastest "
"background mode, but it can only be safely used in fully-interior scenes (no "
@@ -20071,107 +20597,107 @@ msgid ""
"is visible, \"ghost trail\" artifacts will be visible when moving the camera."
msgstr ""
-#: doc/classes/Environment.xml:262 doc/classes/RenderingServer.xml:3446
+#: doc/classes/Environment.xml:286 doc/classes/RenderingServer.xml:3457
msgid "Displays a camera feed in the background."
msgstr ""
-#: doc/classes/Environment.xml:265
+#: doc/classes/Environment.xml:289
msgid "Represents the size of the [enum BGMode] enum."
msgstr ""
-#: doc/classes/Environment.xml:268 doc/classes/RenderingServer.xml:3452
+#: doc/classes/Environment.xml:292 doc/classes/RenderingServer.xml:3463
msgid ""
"Gather ambient light from whichever source is specified as the background."
msgstr ""
-#: doc/classes/Environment.xml:271 doc/classes/RenderingServer.xml:3455
+#: doc/classes/Environment.xml:295 doc/classes/RenderingServer.xml:3466
msgid "Disable ambient light."
msgstr ""
-#: doc/classes/Environment.xml:274 doc/classes/RenderingServer.xml:3458
+#: doc/classes/Environment.xml:298 doc/classes/RenderingServer.xml:3469
msgid "Specify a specific [Color] for ambient light."
msgstr ""
-#: doc/classes/Environment.xml:277 doc/classes/RenderingServer.xml:3461
+#: doc/classes/Environment.xml:301 doc/classes/RenderingServer.xml:3472
msgid ""
"Gather ambient light from the [Sky] regardless of what the background is."
msgstr ""
-#: doc/classes/Environment.xml:280 doc/classes/RenderingServer.xml:3464
+#: doc/classes/Environment.xml:304 doc/classes/RenderingServer.xml:3475
msgid "Use the background for reflections."
msgstr ""
-#: doc/classes/Environment.xml:283 doc/classes/RenderingServer.xml:3467
+#: doc/classes/Environment.xml:307 doc/classes/RenderingServer.xml:3478
msgid "Disable reflections."
msgstr ""
-#: doc/classes/Environment.xml:286 doc/classes/RenderingServer.xml:3470
+#: doc/classes/Environment.xml:310 doc/classes/RenderingServer.xml:3481
msgid "Use the [Sky] for reflections regardless of what the background is."
msgstr ""
-#: doc/classes/Environment.xml:289 doc/classes/RenderingServer.xml:3473
+#: doc/classes/Environment.xml:313
+msgid ""
+"Linear tonemapper operator. Reads the linear data and passes it on "
+"unmodified."
+msgstr ""
+
+#: doc/classes/Environment.xml:316
+msgid ""
+"Reinhardt tonemapper operator. Performs a variation on rendered pixels' "
+"colors by this formula: [code]color = color / (1 + color)[/code]."
+msgstr ""
+
+#: doc/classes/Environment.xml:319
+msgid "Filmic tonemapper operator."
+msgstr ""
+
+#: doc/classes/Environment.xml:322
+msgid "Academy Color Encoding System tonemapper operator."
+msgstr ""
+
+#: doc/classes/Environment.xml:325 doc/classes/RenderingServer.xml:3484
msgid ""
"Additive glow blending mode. Mostly used for particles, glows (bloom), lens "
"flare, bright sources."
msgstr ""
-#: doc/classes/Environment.xml:292 doc/classes/RenderingServer.xml:3476
+#: doc/classes/Environment.xml:328 doc/classes/RenderingServer.xml:3487
msgid ""
"Screen glow blending mode. Increases brightness, used frequently with bloom."
msgstr ""
-#: doc/classes/Environment.xml:295 doc/classes/RenderingServer.xml:3479
+#: doc/classes/Environment.xml:331 doc/classes/RenderingServer.xml:3490
msgid ""
"Soft light glow blending mode. Modifies contrast, exposes shadows and "
"highlights (vivid bloom)."
msgstr ""
-#: doc/classes/Environment.xml:298 doc/classes/RenderingServer.xml:3482
+#: doc/classes/Environment.xml:334 doc/classes/RenderingServer.xml:3493
msgid ""
"Replace glow blending mode. Replaces all pixels' color by the glow value. "
"This can be used to simulate a full-screen blur effect by tweaking the glow "
"parameters to match the original image's brightness."
msgstr ""
-#: doc/classes/Environment.xml:301 doc/classes/RenderingServer.xml:3485
+#: doc/classes/Environment.xml:337 doc/classes/RenderingServer.xml:3496
msgid ""
"Mixes the glow with the underlying color to avoid increasing brightness as "
"much while still maintaining a glow effect."
msgstr ""
-#: doc/classes/Environment.xml:304
-msgid ""
-"Linear tonemapper operator. Reads the linear data and passes it on "
-"unmodified."
-msgstr ""
-
-#: doc/classes/Environment.xml:307
-msgid ""
-"Reinhardt tonemapper operator. Performs a variation on rendered pixels' "
-"colors by this formula: [code]color = color / (1 + color)[/code]."
-msgstr ""
-
-#: doc/classes/Environment.xml:310
-msgid "Filmic tonemapper operator."
-msgstr ""
-
-#: doc/classes/Environment.xml:313
-msgid "Academy Color Encoding System tonemapper operator."
-msgstr ""
-
-#: doc/classes/Environment.xml:316
+#: doc/classes/Environment.xml:340
msgid "No blur for the screen-space ambient occlusion effect (fastest)."
msgstr ""
-#: doc/classes/Environment.xml:319
+#: doc/classes/Environment.xml:343
msgid "1×1 blur for the screen-space ambient occlusion effect."
msgstr ""
-#: doc/classes/Environment.xml:322
+#: doc/classes/Environment.xml:346
msgid "2×2 blur for the screen-space ambient occlusion effect."
msgstr ""
-#: doc/classes/Environment.xml:325
+#: doc/classes/Environment.xml:349
msgid ""
"3×3 blur for the screen-space ambient occlusion effect. Increases the radius "
"of the blur for a smoother look, but can result in checkerboard-like "
@@ -20256,14 +20782,17 @@ msgid ""
" var content = file.get_as_text()\n"
" file.close()\n"
" return content\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"In the example above, the file will be saved in the user data folder as "
+"specified in the [url=https://docs.godotengine.org/en/latest/tutorials/io/"
+"data_paths.html]Data paths[/url] documentation."
msgstr ""
-#: doc/classes/File.xml:32
+#: doc/classes/File.xml:33
msgid "Closes the currently opened file."
msgstr ""
-#: doc/classes/File.xml:39
+#: doc/classes/File.xml:40
msgid ""
"Returns [code]true[/code] if the file cursor has read past the end of the "
"file.\n"
@@ -20274,7 +20803,7 @@ msgid ""
"get_position] to implement a custom logic."
msgstr ""
-#: doc/classes/File.xml:49
+#: doc/classes/File.xml:50
msgid ""
"Returns [code]true[/code] if the file exists in the given path.\n"
"[b]Note:[/b] Many resources types are imported (e.g. textures or sound "
@@ -20287,41 +20816,41 @@ msgid ""
"source asset is present in [code]res://[/code], but fail when exported)."
msgstr ""
-#: doc/classes/File.xml:57
+#: doc/classes/File.xml:58
msgid ""
"Returns the next 16 bits from the file as an integer. See [method store_16] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:64
+#: doc/classes/File.xml:65
msgid ""
"Returns the next 32 bits from the file as an integer. See [method store_32] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:71
+#: doc/classes/File.xml:72
msgid ""
"Returns the next 64 bits from the file as an integer. See [method store_64] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:78
+#: doc/classes/File.xml:79
msgid ""
"Returns the next 8 bits from the file as an integer. See [method store_8] "
"for details on what values can be stored and retrieved this way."
msgstr ""
-#: doc/classes/File.xml:85
+#: doc/classes/File.xml:86
msgid ""
"Returns the whole file as a [String].\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:95
+#: doc/classes/File.xml:96
msgid "Returns next [code]len[/code] bytes of the file as a [PackedByteArray]."
msgstr ""
-#: doc/classes/File.xml:104
+#: doc/classes/File.xml:105
msgid ""
"Returns the next value of the file in CSV (Comma-Separated Values) format. "
"You can pass a different delimiter [code]delim[/code] to use other than the "
@@ -20330,37 +20859,37 @@ msgid ""
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:112
+#: doc/classes/File.xml:113
msgid "Returns the next 64 bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:119
+#: doc/classes/File.xml:120
msgid ""
"Returns the last error that happened when trying to perform operations. "
"Compare with the [code]ERR_FILE_*[/code] constants from [enum Error]."
msgstr ""
-#: doc/classes/File.xml:126
+#: doc/classes/File.xml:127
msgid "Returns the next 32 bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:133
+#: doc/classes/File.xml:134
msgid "Returns the size of the file in bytes."
msgstr ""
-#: doc/classes/File.xml:140
+#: doc/classes/File.xml:141
msgid ""
"Returns the next line of the file as a [String].\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:150
+#: doc/classes/File.xml:151
msgid ""
"Returns an MD5 String representing the file at the given path or an empty "
"[String] on failure."
msgstr ""
-#: doc/classes/File.xml:159
+#: doc/classes/File.xml:160
msgid ""
"Returns the last time the [code]file[/code] was modified in unix timestamp "
"format or returns a [String] \"ERROR IN [code]file[/code]\". This unix "
@@ -20368,35 +20897,35 @@ msgid ""
"get_datetime_from_unix_time]."
msgstr ""
-#: doc/classes/File.xml:166
+#: doc/classes/File.xml:167
msgid ""
"Returns a [String] saved in Pascal format from the file.\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
-#: doc/classes/File.xml:174
+#: doc/classes/File.xml:175
msgid "Returns the path as a [String] for the current open file."
msgstr ""
-#: doc/classes/File.xml:181
+#: doc/classes/File.xml:182
msgid "Returns the absolute path as a [String] for the current open file."
msgstr ""
-#: doc/classes/File.xml:188
+#: doc/classes/File.xml:189
msgid "Returns the file cursor's position."
msgstr ""
-#: doc/classes/File.xml:195
+#: doc/classes/File.xml:196
msgid "Returns the next bits from the file as a floating-point number."
msgstr ""
-#: doc/classes/File.xml:204
+#: doc/classes/File.xml:205
msgid ""
"Returns a SHA-256 [String] representing the file at the given path or an "
"empty [String] on failure."
msgstr ""
-#: doc/classes/File.xml:213
+#: doc/classes/File.xml:214
msgid ""
"Returns the next [Variant] value from the file. If [code]allow_objects[/"
"code] is [code]true[/code], decoding objects is allowed.\n"
@@ -20405,37 +20934,38 @@ msgid ""
"to avoid potential security threats such as remote code execution."
msgstr ""
-#: doc/classes/File.xml:221
+#: doc/classes/File.xml:222
msgid "Returns [code]true[/code] if the file is currently opened."
msgstr ""
-#: doc/classes/File.xml:232
+#: doc/classes/File.xml:233
msgid "Opens the file for writing or reading, depending on the flags."
msgstr ""
-#: doc/classes/File.xml:245
+#: doc/classes/File.xml:246
msgid "Opens a compressed file for reading or writing."
msgstr ""
-#: doc/classes/File.xml:258
+#: doc/classes/File.xml:259
msgid ""
"Opens an encrypted file in write or read mode. You need to pass a binary key "
-"to encrypt/decrypt it."
+"to encrypt/decrypt it.\n"
+"[b]Note:[/b] The provided key must be 32 bytes long."
msgstr ""
-#: doc/classes/File.xml:271
+#: doc/classes/File.xml:273
msgid ""
"Opens an encrypted file in write or read mode. You need to pass a password "
"to encrypt/decrypt it."
msgstr ""
-#: doc/classes/File.xml:280
+#: doc/classes/File.xml:282
msgid ""
"Changes the file reading/writing cursor to the specified position (in bytes "
"from the beginning of the file)."
msgstr ""
-#: doc/classes/File.xml:289
+#: doc/classes/File.xml:291
msgid ""
"Changes the file reading/writing cursor to the specified position (in bytes "
"from the end of the file).\n"
@@ -20443,7 +20973,7 @@ msgid ""
"cursor will be at the end of the file."
msgstr ""
-#: doc/classes/File.xml:299
+#: doc/classes/File.xml:301
msgid ""
"Stores an integer as 16 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, "
@@ -20471,7 +21001,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/File.xml:328
+#: doc/classes/File.xml:330
msgid ""
"Stores an integer as 32 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, "
@@ -20480,14 +21010,14 @@ msgid ""
"(see [method store_16] for an example)."
msgstr ""
-#: doc/classes/File.xml:339
+#: doc/classes/File.xml:341
msgid ""
"Stores an integer as 64 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] must lie in the interval [code][-2^63, "
"2^63 - 1][/code] (i.e. be a valid [int] value)."
msgstr ""
-#: doc/classes/File.xml:349
+#: doc/classes/File.xml:351
msgid ""
"Stores an integer as 8 bits in the file.\n"
"[b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, 255]"
@@ -20496,11 +21026,11 @@ msgid ""
"(see [method store_16] for an example)."
msgstr ""
-#: doc/classes/File.xml:360
+#: doc/classes/File.xml:362
msgid "Stores the given array of bytes in the file."
msgstr ""
-#: doc/classes/File.xml:371
+#: doc/classes/File.xml:373
msgid ""
"Store the given [PackedStringArray] in the file as a line formatted in the "
"CSV (Comma-Separated Values) format. You can pass a different delimiter "
@@ -20509,45 +21039,45 @@ msgid ""
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:381
+#: doc/classes/File.xml:383
msgid "Stores a floating-point number as 64 bits in the file."
msgstr ""
-#: doc/classes/File.xml:390
+#: doc/classes/File.xml:392
msgid "Stores a floating-point number as 32 bits in the file."
msgstr ""
-#: doc/classes/File.xml:399
+#: doc/classes/File.xml:401
msgid ""
"Stores the given [String] as a line in the file.\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:409
+#: doc/classes/File.xml:411
msgid ""
"Stores the given [String] as a line in the file in Pascal format (i.e. also "
"store the length of the string).\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:419
+#: doc/classes/File.xml:421
msgid "Stores a floating-point number in the file."
msgstr ""
-#: doc/classes/File.xml:428
+#: doc/classes/File.xml:430
msgid ""
"Stores the given [String] in the file.\n"
"Text will be encoded as UTF-8."
msgstr ""
-#: doc/classes/File.xml:440
+#: doc/classes/File.xml:442
msgid ""
"Stores any Variant value in the file. If [code]full_objects[/code] is "
"[code]true[/code], encoding objects is allowed (and can potentially include "
"code)."
msgstr ""
-#: doc/classes/File.xml:446
+#: doc/classes/File.xml:448
msgid ""
"If [code]true[/code], the file's endianness is swapped. Use this if you're "
"dealing with files written on big-endian machines.\n"
@@ -20555,44 +21085,44 @@ msgid ""
"reset to [code]false[/code] whenever you open the file."
msgstr ""
-#: doc/classes/File.xml:452
+#: doc/classes/File.xml:454
msgid "Opens the file for read operations."
msgstr ""
-#: doc/classes/File.xml:455
+#: doc/classes/File.xml:457
msgid ""
"Opens the file for write operations. Create it if the file does not exist "
"and truncate if it exists."
msgstr ""
-#: doc/classes/File.xml:458
+#: doc/classes/File.xml:460
msgid ""
"Opens the file for read and write operations. Does not truncate the file."
msgstr ""
-#: doc/classes/File.xml:461
+#: doc/classes/File.xml:463
msgid ""
"Opens the file for read and write operations. Create it if the file does not "
"exist and truncate if it exists."
msgstr ""
-#: doc/classes/File.xml:464
+#: doc/classes/File.xml:466
msgid "Uses the [url=http://fastlz.org/]FastLZ[/url] compression method."
msgstr ""
-#: doc/classes/File.xml:467
+#: doc/classes/File.xml:469
msgid ""
"Uses the [url=https://en.wikipedia.org/wiki/DEFLATE]DEFLATE[/url] "
"compression method."
msgstr ""
-#: doc/classes/File.xml:470
+#: doc/classes/File.xml:472
msgid ""
"Uses the [url=https://facebook.github.io/zstd/]Zstandard[/url] compression "
"method."
msgstr ""
-#: doc/classes/File.xml:473
+#: doc/classes/File.xml:475
msgid "Uses the [url=https://www.gzip.org/]gzip[/url] compression method."
msgstr ""
@@ -20808,10 +21338,11 @@ msgid ""
"Draw [code]string[/code] into a canvas item using the font at a given "
"position, with [code]modulate[/code] color, and optionally clipping the "
"width. [code]position[/code] specifies the baseline, not the top. To draw "
-"from the top, [i]ascent[/i] must be added to the Y axis."
+"from the top, [i]ascent[/i] must be added to the Y axis.\n"
+"See also [method CanvasItem.draw_string]."
msgstr ""
-#: doc/classes/Font.xml:47
+#: doc/classes/Font.xml:48
msgid ""
"Draw character [code]char[/code] into a canvas item using the font at a "
"given position, with [code]modulate[/code] color, and optionally kerning if "
@@ -20821,39 +21352,39 @@ msgid ""
"making this function useful for drawing strings character by character."
msgstr ""
-#: doc/classes/Font.xml:54
+#: doc/classes/Font.xml:55
msgid "Returns the font ascent (number of pixels above the baseline)."
msgstr ""
-#: doc/classes/Font.xml:65
+#: doc/classes/Font.xml:66
msgid ""
"Returns the size of a character, optionally taking kerning into account if "
"the next character is provided."
msgstr ""
-#: doc/classes/Font.xml:72
+#: doc/classes/Font.xml:73
msgid "Returns the font descent (number of pixels below the baseline)."
msgstr ""
-#: doc/classes/Font.xml:79
+#: doc/classes/Font.xml:80
msgid "Returns the total font height (ascent plus descent) in pixels."
msgstr ""
-#: doc/classes/Font.xml:88
+#: doc/classes/Font.xml:89
msgid "Returns the size of a string, taking kerning and advance into account."
msgstr ""
-#: doc/classes/Font.xml:99
+#: doc/classes/Font.xml:100
msgid ""
"Returns the size that the string would have with word wrapping enabled with "
"a fixed [code]width[/code]."
msgstr ""
-#: doc/classes/Font.xml:106
+#: doc/classes/Font.xml:107
msgid "Returns [code]true[/code] if the font has an outline."
msgstr ""
-#: doc/classes/Font.xml:119
+#: doc/classes/Font.xml:120
msgid ""
"After editing a font (changing size, ascent, char rects, etc.). Call this "
"function to propagate changes to controls that might use it."
@@ -21025,13 +21556,14 @@ msgstr ""
#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:7
msgid ""
-"Calling [method @GDScript.yield] within a function will cause that function "
-"to yield and return its current state as an object of this type. The yielded "
+"FIXME: Outdated docs as of GDScript rewrite in 4.0.\n"
+"Calling [code]yield[/code] within a function will cause that function to "
+"yield and return its current state as an object of this type. The yielded "
"function call can then be resumed later by calling [method resume] on this "
"state object."
msgstr ""
-#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:18
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:19
msgid ""
"Check whether the function call may be resumed. This is not the case if the "
"function state was already resumed.\n"
@@ -21042,12 +21574,12 @@ msgid ""
"script have survived up to that point."
msgstr ""
-#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:28
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:29
msgid ""
"Resume execution of the yielded function call.\n"
-"If handed an argument, return the argument from the [method @GDScript.yield] "
-"call in the yielded function call. You can pass e.g. an [Array] to hand "
-"multiple arguments.\n"
+"If handed an argument, return the argument from the [code]yield[/code] call "
+"in the yielded function call. You can pass e.g. an [Array] to hand multiple "
+"arguments.\n"
"This function returns what the resumed function call returns, possibly "
"another function state if yielded again."
msgstr ""
@@ -21616,10 +22148,20 @@ msgid ""
"code], see [enum PolyJoinType].\n"
"The operation may result in an outer polygon (boundary) and inner polygon "
"(hole) produced which could be distinguished by calling [method "
-"is_polygon_clockwise]."
+"is_polygon_clockwise].\n"
+"[b]Note:[/b] To translate the polygon's vertices specifically, use the "
+"[method Transform2D.xform] method:\n"
+"[codeblock]\n"
+"var polygon = PackedVector2Array([Vector2(0, 0), Vector2(100, 0), "
+"Vector2(100, 100), Vector2(0, 100)])\n"
+"var offset = Vector2(50, 50)\n"
+"polygon = Transform2D(0, offset).xform(polygon)\n"
+"print(polygon) # prints [Vector2(50, 50), Vector2(150, 50), Vector2(150, "
+"150), Vector2(50, 150)]\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/Geometry2D.xml:217
+#: doc/classes/Geometry2D.xml:224
msgid ""
"Inflates or deflates [code]polyline[/code] by [code]delta[/code] units "
"(pixels), producing polygons. If [code]delta[/code] is positive, makes the "
@@ -21635,13 +22177,13 @@ msgid ""
"is_polygon_clockwise]."
msgstr ""
-#: doc/classes/Geometry2D.xml:235
+#: doc/classes/Geometry2D.xml:242
msgid ""
"Returns if [code]point[/code] is inside the triangle specified by [code]a[/"
"code], [code]b[/code] and [code]c[/code]."
msgstr ""
-#: doc/classes/Geometry2D.xml:250
+#: doc/classes/Geometry2D.xml:257
msgid ""
"Checks if the two segments ([code]from_a[/code], [code]to_a[/code]) and "
"([code]from_b[/code], [code]to_b[/code]) intersect. If yes, return the point "
@@ -21649,7 +22191,7 @@ msgid ""
"empty [Variant]."
msgstr ""
-#: doc/classes/Geometry2D.xml:259
+#: doc/classes/Geometry2D.xml:266
msgid ""
"Triangulates the area specified by discrete set of [code]points[/code] such "
"that no point is inside the circumcircle of any resulting triangle. Returns "
@@ -21660,7 +22202,7 @@ msgid ""
"[PackedInt32Array] is returned."
msgstr ""
-#: doc/classes/Geometry2D.xml:268
+#: doc/classes/Geometry2D.xml:275
msgid ""
"Triangulates the polygon specified by the points in [code]polygon[/code]. "
"Returns a [PackedInt32Array] where each triangle consists of three "
@@ -21670,40 +22212,40 @@ msgid ""
"[PackedInt32Array] is returned."
msgstr ""
-#: doc/classes/Geometry2D.xml:274
+#: doc/classes/Geometry2D.xml:281
msgid ""
"Create regions where either subject or clip polygons (or both) are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:277
+#: doc/classes/Geometry2D.xml:284
msgid ""
"Create regions where subject polygons are filled except where clip polygons "
"are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:280
+#: doc/classes/Geometry2D.xml:287
msgid "Create regions where both subject and clip polygons are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:283
+#: doc/classes/Geometry2D.xml:290
msgid ""
"Create regions where either subject or clip polygons are filled but not "
"where both are filled."
msgstr ""
-#: doc/classes/Geometry2D.xml:286
+#: doc/classes/Geometry2D.xml:293
msgid ""
"Squaring is applied uniformally at all convex edge joins at [code]1 * delta[/"
"code]."
msgstr ""
-#: doc/classes/Geometry2D.xml:289
+#: doc/classes/Geometry2D.xml:296
msgid ""
"While flattened paths can never perfectly trace an arc, they are "
"approximated by a series of arc chords."
msgstr ""
-#: doc/classes/Geometry2D.xml:292
+#: doc/classes/Geometry2D.xml:299
msgid ""
"There's a necessary limit to mitered joins since offsetting edges that join "
"at very acute angles will produce excessively long and narrow \"spikes\". "
@@ -21711,27 +22253,27 @@ msgid ""
"distance, \"square\" joining is applied."
msgstr ""
-#: doc/classes/Geometry2D.xml:295
+#: doc/classes/Geometry2D.xml:302
msgid ""
"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
"as a polygon."
msgstr ""
-#: doc/classes/Geometry2D.xml:298
+#: doc/classes/Geometry2D.xml:305
msgid ""
"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
"as a polyline."
msgstr ""
-#: doc/classes/Geometry2D.xml:301
+#: doc/classes/Geometry2D.xml:308
msgid "Endpoints are squared off with no extension."
msgstr ""
-#: doc/classes/Geometry2D.xml:304
+#: doc/classes/Geometry2D.xml:311
msgid "Endpoints are squared off and extended by [code]delta[/code] units."
msgstr ""
-#: doc/classes/Geometry2D.xml:307
+#: doc/classes/Geometry2D.xml:314
msgid "Endpoints are rounded off and extended by [code]delta[/code] units."
msgstr ""
@@ -21961,7 +22503,7 @@ msgstr ""
msgid ""
"Bakes the effect from all [GeometryInstance3D]s marked with [constant "
"GeometryInstance3D.GI_MODE_BAKED] and [Light3D]s marked with either "
-"[constant Light3D.BAKE_INDIRECT] or [constant Light3D.BAKE_ALL]. If "
+"[constant Light3D.BAKE_DYNAMIC] or [constant Light3D.BAKE_STATIC]. If "
"[code]create_visual_debug[/code] is [code]true[/code], after baking the "
"light, this will generate a [MultiMesh] that has a cube representing each "
"solid cell with each cube colored to the cell's albedo color. This can be "
@@ -22848,121 +23390,119 @@ msgstr ""
msgid "Clear all cells."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:53
+#: modules/gridmap/doc_classes/GridMap.xml:49
msgid ""
-"The [MeshLibrary] item index located at the grid-based X, Y and Z "
-"coordinates. If the cell is empty, [constant INVALID_CELL_ITEM] will be "
-"returned."
+"The [MeshLibrary] item index located at the given grid coordinates. If the "
+"cell is empty, [constant INVALID_CELL_ITEM] will be returned."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:66
+#: modules/gridmap/doc_classes/GridMap.xml:58
msgid ""
-"The orientation of the cell at the grid-based X, Y and Z coordinates. -1 is "
-"returned if the cell is empty."
+"The orientation of the cell at the given grid coordinates. [code]-1[/code] "
+"is returned if the cell is empty."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:75 doc/classes/PhysicsBody2D.xml:35
+#: modules/gridmap/doc_classes/GridMap.xml:67 doc/classes/PhysicsBody2D.xml:35
#: doc/classes/PhysicsBody3D.xml:35
msgid "Returns an individual bit on the [member collision_layer]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:84 doc/classes/PhysicsBody2D.xml:44
+#: modules/gridmap/doc_classes/GridMap.xml:76 doc/classes/PhysicsBody2D.xml:44
#: doc/classes/PhysicsBody3D.xml:44
msgid "Returns an individual bit on the [member collision_mask]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:91
+#: modules/gridmap/doc_classes/GridMap.xml:83
msgid ""
"Returns an array of [Transform] and [Mesh] references corresponding to the "
"non-empty cells in the grid. The transforms are specified in world space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:98
+#: modules/gridmap/doc_classes/GridMap.xml:90
msgid ""
"Returns an array of [Vector3] with the non-empty cell coordinates in the "
"grid map."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:121
+#: modules/gridmap/doc_classes/GridMap.xml:109
msgid ""
"Returns the position of a grid cell in the GridMap's local coordinate space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:146
+#: modules/gridmap/doc_classes/GridMap.xml:130
msgid ""
-"Sets the mesh index for the cell referenced by its grid-based X, Y and Z "
-"coordinates.\n"
+"Sets the mesh index for the cell referenced by its grid coordinates.\n"
"A negative item index such as [constant INVALID_CELL_ITEM] will clear the "
"cell.\n"
"Optionally, the item's orientation can be passed. For valid orientation "
"values, see [method Basis.get_orthogonal_index]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:173
+#: modules/gridmap/doc_classes/GridMap.xml:157
msgid "Sets an individual bit on the [member collision_layer]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:184
+#: modules/gridmap/doc_classes/GridMap.xml:168
msgid "Sets an individual bit on the [member collision_mask]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:193
+#: modules/gridmap/doc_classes/GridMap.xml:177
msgid ""
"Returns the coordinates of the grid cell containing the given point.\n"
"[code]pos[/code] should be in the GridMap's local coordinate space."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:200
+#: modules/gridmap/doc_classes/GridMap.xml:184
msgid "If [code]true[/code], grid items are centered on the X axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:203
+#: modules/gridmap/doc_classes/GridMap.xml:187
msgid "If [code]true[/code], grid items are centered on the Y axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:206
+#: modules/gridmap/doc_classes/GridMap.xml:190
msgid "If [code]true[/code], grid items are centered on the Z axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:209
+#: modules/gridmap/doc_classes/GridMap.xml:193
msgid ""
"The size of each octant measured in number of cells. This applies to all "
"three axis."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:212
+#: modules/gridmap/doc_classes/GridMap.xml:196
msgid ""
"The scale of the cell items.\n"
"This does not affect the size of the grid cells themselves, only the items "
"in them. This can be used to make cell items overlap their neighbors."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:216
+#: modules/gridmap/doc_classes/GridMap.xml:200
msgid ""
"The dimensions of the grid's cells.\n"
"This does not affect the size of the meshes. See [member cell_scale]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:220
+#: modules/gridmap/doc_classes/GridMap.xml:204
msgid ""
"The physics layers this GridMap is in.\n"
"GridMaps act as static bodies, meaning they aren't affected by gravity or "
"other forces. They only affect other physics bodies that collide with them."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:224
+#: modules/gridmap/doc_classes/GridMap.xml:208
msgid "The physics layers this GridMap detects collisions in."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:227
+#: modules/gridmap/doc_classes/GridMap.xml:211
msgid "The assigned [MeshLibrary]."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:235
+#: modules/gridmap/doc_classes/GridMap.xml:219
msgid "Emitted when [member cell_size] changes."
msgstr ""
-#: modules/gridmap/doc_classes/GridMap.xml:241
+#: modules/gridmap/doc_classes/GridMap.xml:225
msgid ""
"Invalid cell item that can be used in [method set_cell_item] to clear cells "
"(or represent an empty cell in [method get_cell_item])."
@@ -23327,27 +23867,33 @@ msgid ""
"server's side.\n"
"For more information on HTTP, see https://developer.mozilla.org/en-US/docs/"
"Web/HTTP (or read RFC 2616 to get it straight from the source: https://tools."
-"ietf.org/html/rfc2616)."
+"ietf.org/html/rfc2616).\n"
+"[b]Note:[/b] When performing HTTP requests from a project exported to HTML5, "
+"keep in mind the remote server may not allow requests from foreign origins "
+"due to [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/"
+"url]. If you host the server in question, you should modify its backend to "
+"allow requests from foreign origins by adding the [code]Access-Control-Allow-"
+"Origin: *[/code] HTTP header."
msgstr ""
-#: doc/classes/HTTPClient.xml:13
+#: doc/classes/HTTPClient.xml:14
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/"
"http_client_class.html"
msgstr ""
-#: doc/classes/HTTPClient.xml:14 doc/classes/HTTPRequest.xml:62
+#: doc/classes/HTTPClient.xml:15 doc/classes/HTTPRequest.xml:71
#: doc/classes/StreamPeerSSL.xml:10
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/ssl_certificates."
"html"
msgstr ""
-#: doc/classes/HTTPClient.xml:21
+#: doc/classes/HTTPClient.xml:22
msgid "Closes the current connection, allowing reuse of this [HTTPClient]."
msgstr ""
-#: doc/classes/HTTPClient.xml:36
+#: doc/classes/HTTPClient.xml:37
msgid ""
"Connects to a host. This needs to be done before any requests are sent.\n"
"The host should not have http:// prepended but will strip the protocol "
@@ -23359,7 +23905,7 @@ msgid ""
"[code]true[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:46
+#: doc/classes/HTTPClient.xml:47
msgid ""
"Returns the response's body length.\n"
"[b]Note:[/b] Some Web servers may not send a body length. In this case, the "
@@ -23367,15 +23913,15 @@ msgid ""
"the body length will also be [code]-1[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:54
+#: doc/classes/HTTPClient.xml:55
msgid "Returns the response's HTTP status code."
msgstr ""
-#: doc/classes/HTTPClient.xml:61
+#: doc/classes/HTTPClient.xml:62
msgid "Returns the response headers."
msgstr ""
-#: doc/classes/HTTPClient.xml:68
+#: doc/classes/HTTPClient.xml:69
msgid ""
"Returns all response headers as a Dictionary of structure [code]{ \"key\": "
"\"value1; value2\" }[/code] where the case-sensitivity of the keys and "
@@ -23390,27 +23936,27 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:82
+#: doc/classes/HTTPClient.xml:83
msgid ""
"Returns a [enum Status] constant. Need to call [method poll] in order to get "
"status updates."
msgstr ""
-#: doc/classes/HTTPClient.xml:89
+#: doc/classes/HTTPClient.xml:90
msgid "If [code]true[/code], this [HTTPClient] has a response available."
msgstr ""
-#: doc/classes/HTTPClient.xml:96
+#: doc/classes/HTTPClient.xml:97
msgid "If [code]true[/code], this [HTTPClient] has a response that is chunked."
msgstr ""
-#: doc/classes/HTTPClient.xml:103
+#: doc/classes/HTTPClient.xml:104
msgid ""
"This needs to be called in order to have any request processed. Check "
"results with [method get_status]."
msgstr ""
-#: doc/classes/HTTPClient.xml:112
+#: doc/classes/HTTPClient.xml:113
msgid ""
"Generates a GET/POST application/x-www-form-urlencoded style query string "
"from a provided dictionary, e.g.:\n"
@@ -23430,11 +23976,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:130
+#: doc/classes/HTTPClient.xml:131
msgid "Reads one chunk from the response."
msgstr ""
-#: doc/classes/HTTPClient.xml:145
+#: doc/classes/HTTPClient.xml:146
msgid ""
"Sends a request to the connected host. The URL parameter is just the part "
"after the host, so for [code]http://somehost.com/index.php[/code], it is "
@@ -23452,7 +23998,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/HTTPClient.xml:168
+#: doc/classes/HTTPClient.xml:169
msgid ""
"Sends a raw request to the connected host. The URL parameter is just the "
"part after the host, so for [code]http://somehost.com/index.php[/code], it "
@@ -23462,43 +24008,43 @@ msgid ""
"Sends the body data raw, as a byte array and does not encode it in any way."
msgstr ""
-#: doc/classes/HTTPClient.xml:176
+#: doc/classes/HTTPClient.xml:177
msgid ""
"If [code]true[/code], execution will block until all data is read from the "
"response."
msgstr ""
-#: doc/classes/HTTPClient.xml:179
+#: doc/classes/HTTPClient.xml:180
msgid "The connection to use for this client."
msgstr ""
-#: doc/classes/HTTPClient.xml:182
+#: doc/classes/HTTPClient.xml:183
msgid ""
"The size of the buffer used and maximum bytes to read per iteration. See "
"[method read_response_body_chunk]."
msgstr ""
-#: doc/classes/HTTPClient.xml:187
+#: doc/classes/HTTPClient.xml:188
msgid ""
"HTTP GET method. The GET method requests a representation of the specified "
"resource. Requests using GET should only retrieve data."
msgstr ""
-#: doc/classes/HTTPClient.xml:190
+#: doc/classes/HTTPClient.xml:191
msgid ""
"HTTP HEAD method. The HEAD method asks for a response identical to that of a "
"GET request, but without the response body. This is useful to request "
"metadata like HTTP headers or to check if a resource exists."
msgstr ""
-#: doc/classes/HTTPClient.xml:193
+#: doc/classes/HTTPClient.xml:194
msgid ""
"HTTP POST method. The POST method is used to submit an entity to the "
"specified resource, often causing a change in state or side effects on the "
"server. This is often used for forms and submitting data or uploading files."
msgstr ""
-#: doc/classes/HTTPClient.xml:196
+#: doc/classes/HTTPClient.xml:197
msgid ""
"HTTP PUT method. The PUT method asks to replace all current representations "
"of the target resource with the request payload. (You can think of POST as "
@@ -23506,103 +24052,103 @@ msgid ""
"not make a clear distinction or change their meaning)."
msgstr ""
-#: doc/classes/HTTPClient.xml:199
+#: doc/classes/HTTPClient.xml:200
msgid ""
"HTTP DELETE method. The DELETE method requests to delete the specified "
"resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:202
+#: doc/classes/HTTPClient.xml:203
msgid ""
"HTTP OPTIONS method. The OPTIONS method asks for a description of the "
"communication options for the target resource. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:205
+#: doc/classes/HTTPClient.xml:206
msgid ""
"HTTP TRACE method. The TRACE method performs a message loop-back test along "
"the path to the target resource. Returns the entire HTTP request received in "
"the response body. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:208
+#: doc/classes/HTTPClient.xml:209
msgid ""
"HTTP CONNECT method. The CONNECT method establishes a tunnel to the server "
"identified by the target resource. Rarely used."
msgstr ""
-#: doc/classes/HTTPClient.xml:211
+#: doc/classes/HTTPClient.xml:212
msgid ""
"HTTP PATCH method. The PATCH method is used to apply partial modifications "
"to a resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:214
+#: doc/classes/HTTPClient.xml:215
msgid "Represents the size of the [enum Method] enum."
msgstr ""
-#: doc/classes/HTTPClient.xml:217
+#: doc/classes/HTTPClient.xml:218
msgid "Status: Disconnected from the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:220
+#: doc/classes/HTTPClient.xml:221
msgid "Status: Currently resolving the hostname for the given URL into an IP."
msgstr ""
-#: doc/classes/HTTPClient.xml:223
+#: doc/classes/HTTPClient.xml:224
msgid "Status: DNS failure: Can't resolve the hostname for the given URL."
msgstr ""
-#: doc/classes/HTTPClient.xml:226
+#: doc/classes/HTTPClient.xml:227
msgid "Status: Currently connecting to server."
msgstr ""
-#: doc/classes/HTTPClient.xml:229
+#: doc/classes/HTTPClient.xml:230
msgid "Status: Can't connect to the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:232
+#: doc/classes/HTTPClient.xml:233
msgid "Status: Connection established."
msgstr ""
-#: doc/classes/HTTPClient.xml:235
+#: doc/classes/HTTPClient.xml:236
msgid "Status: Currently sending request."
msgstr ""
-#: doc/classes/HTTPClient.xml:238
+#: doc/classes/HTTPClient.xml:239
msgid "Status: HTTP body received."
msgstr ""
-#: doc/classes/HTTPClient.xml:241
+#: doc/classes/HTTPClient.xml:242
msgid "Status: Error in HTTP connection."
msgstr ""
-#: doc/classes/HTTPClient.xml:244
+#: doc/classes/HTTPClient.xml:245
msgid "Status: Error in SSL handshake."
msgstr ""
-#: doc/classes/HTTPClient.xml:247
+#: doc/classes/HTTPClient.xml:248
msgid ""
"HTTP status code [code]100 Continue[/code]. Interim response that indicates "
"everything so far is OK and that the client should continue with the request "
"(or ignore this status if already finished)."
msgstr ""
-#: doc/classes/HTTPClient.xml:250
+#: doc/classes/HTTPClient.xml:251
msgid ""
"HTTP status code [code]101 Switching Protocol[/code]. Sent in response to an "
"[code]Upgrade[/code] request header by the client. Indicates the protocol "
"the server is switching to."
msgstr ""
-#: doc/classes/HTTPClient.xml:253
+#: doc/classes/HTTPClient.xml:254
msgid ""
"HTTP status code [code]102 Processing[/code] (WebDAV). Indicates that the "
"server has received and is processing the request, but no response is "
"available yet."
msgstr ""
-#: doc/classes/HTTPClient.xml:256
+#: doc/classes/HTTPClient.xml:257
msgid ""
"HTTP status code [code]200 OK[/code]. The request has succeeded. Default "
"response for successful requests. Meaning varies depending on the request. "
@@ -23613,14 +24159,14 @@ msgid ""
"server."
msgstr ""
-#: doc/classes/HTTPClient.xml:259
+#: doc/classes/HTTPClient.xml:260
msgid ""
"HTTP status code [code]201 Created[/code]. The request has succeeded and a "
"new resource has been created as a result of it. This is typically the "
"response sent after a PUT request."
msgstr ""
-#: doc/classes/HTTPClient.xml:262
+#: doc/classes/HTTPClient.xml:263
msgid ""
"HTTP status code [code]202 Accepted[/code]. The request has been received "
"but not yet acted upon. It is non-committal, meaning that there is no way in "
@@ -23629,7 +24175,7 @@ msgid ""
"server handles the request, or for batch processing."
msgstr ""
-#: doc/classes/HTTPClient.xml:265
+#: doc/classes/HTTPClient.xml:266
msgid ""
"HTTP status code [code]203 Non-Authoritative Information[/code]. This "
"response code means returned meta-information set is not exact set as "
@@ -23638,14 +24184,14 @@ msgid ""
"instead of this response."
msgstr ""
-#: doc/classes/HTTPClient.xml:268
+#: doc/classes/HTTPClient.xml:269
msgid ""
"HTTP status code [code]204 No Content[/code]. There is no content to send "
"for this request, but the headers may be useful. The user-agent may update "
"its cached headers for this resource with the new ones."
msgstr ""
-#: doc/classes/HTTPClient.xml:271
+#: doc/classes/HTTPClient.xml:272
msgid ""
"HTTP status code [code]205 Reset Content[/code]. The server has fulfilled "
"the request and desires that the client resets the \"document view\" that "
@@ -23653,49 +24199,49 @@ msgid ""
"origin server."
msgstr ""
-#: doc/classes/HTTPClient.xml:274
+#: doc/classes/HTTPClient.xml:275
msgid ""
"HTTP status code [code]206 Partial Content[/code]. This response code is "
"used because of a range header sent by the client to separate download into "
"multiple streams."
msgstr ""
-#: doc/classes/HTTPClient.xml:277
+#: doc/classes/HTTPClient.xml:278
msgid ""
"HTTP status code [code]207 Multi-Status[/code] (WebDAV). A Multi-Status "
"response conveys information about multiple resources in situations where "
"multiple status codes might be appropriate."
msgstr ""
-#: doc/classes/HTTPClient.xml:280
+#: doc/classes/HTTPClient.xml:281
msgid ""
"HTTP status code [code]208 Already Reported[/code] (WebDAV). Used inside a "
"DAV: propstat response element to avoid enumerating the internal members of "
"multiple bindings to the same collection repeatedly."
msgstr ""
-#: doc/classes/HTTPClient.xml:283
+#: doc/classes/HTTPClient.xml:284
msgid ""
"HTTP status code [code]226 IM Used[/code] (WebDAV). The server has fulfilled "
"a GET request for the resource, and the response is a representation of the "
"result of one or more instance-manipulations applied to the current instance."
msgstr ""
-#: doc/classes/HTTPClient.xml:286
+#: doc/classes/HTTPClient.xml:287
msgid ""
"HTTP status code [code]300 Multiple Choice[/code]. The request has more than "
"one possible responses and there is no standardized way to choose one of the "
"responses. User-agent or user should choose one of them."
msgstr ""
-#: doc/classes/HTTPClient.xml:289
+#: doc/classes/HTTPClient.xml:290
msgid ""
"HTTP status code [code]301 Moved Permanently[/code]. Redirection. This "
"response code means the URI of requested resource has been changed. The new "
"URI is usually included in the response."
msgstr ""
-#: doc/classes/HTTPClient.xml:292
+#: doc/classes/HTTPClient.xml:293
msgid ""
"HTTP status code [code]302 Found[/code]. Temporary redirection. This "
"response code means the URI of requested resource has been changed "
@@ -23703,7 +24249,7 @@ msgid ""
"this same URI should be used by the client in future requests."
msgstr ""
-#: doc/classes/HTTPClient.xml:295
+#: doc/classes/HTTPClient.xml:296
msgid ""
"HTTP status code [code]303 See Other[/code]. The server is redirecting the "
"user agent to a different resource, as indicated by a URI in the Location "
@@ -23711,39 +24257,39 @@ msgid ""
"original request."
msgstr ""
-#: doc/classes/HTTPClient.xml:298
+#: doc/classes/HTTPClient.xml:299
msgid ""
"HTTP status code [code]304 Not Modified[/code]. A conditional GET or HEAD "
"request has been received and would have resulted in a 200 OK response if it "
"were not for the fact that the condition evaluated to [code]false[/code]."
msgstr ""
-#: doc/classes/HTTPClient.xml:301
+#: doc/classes/HTTPClient.xml:302
msgid ""
"HTTP status code [code]305 Use Proxy[/code]. [i]Deprecated. Do not use.[/i]"
msgstr ""
-#: doc/classes/HTTPClient.xml:304
+#: doc/classes/HTTPClient.xml:305
msgid ""
"HTTP status code [code]306 Switch Proxy[/code]. [i]Deprecated. Do not use.[/"
"i]"
msgstr ""
-#: doc/classes/HTTPClient.xml:307
+#: doc/classes/HTTPClient.xml:308
msgid ""
"HTTP status code [code]307 Temporary Redirect[/code]. The target resource "
"resides temporarily under a different URI and the user agent MUST NOT change "
"the request method if it performs an automatic redirection to that URI."
msgstr ""
-#: doc/classes/HTTPClient.xml:310
+#: doc/classes/HTTPClient.xml:311
msgid ""
"HTTP status code [code]308 Permanent Redirect[/code]. The target resource "
"has been assigned a new permanent URI and any future references to this "
"resource ought to use one of the enclosed URIs."
msgstr ""
-#: doc/classes/HTTPClient.xml:313
+#: doc/classes/HTTPClient.xml:314
msgid ""
"HTTP status code [code]400 Bad Request[/code]. The request was invalid. The "
"server cannot or will not process the request due to something that is "
@@ -23752,21 +24298,21 @@ msgid ""
"routing)."
msgstr ""
-#: doc/classes/HTTPClient.xml:316
+#: doc/classes/HTTPClient.xml:317
msgid ""
"HTTP status code [code]401 Unauthorized[/code]. Credentials required. The "
"request has not been applied because it lacks valid authentication "
"credentials for the target resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:319
+#: doc/classes/HTTPClient.xml:320
msgid ""
"HTTP status code [code]402 Payment Required[/code]. This response code is "
"reserved for future use. Initial aim for creating this code was using it for "
"digital payment systems, however this is not currently used."
msgstr ""
-#: doc/classes/HTTPClient.xml:322
+#: doc/classes/HTTPClient.xml:323
msgid ""
"HTTP status code [code]403 Forbidden[/code]. The client does not have access "
"rights to the content, i.e. they are unauthorized, so server is rejecting to "
@@ -23774,7 +24320,7 @@ msgid ""
"known to the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:325
+#: doc/classes/HTTPClient.xml:326
msgid ""
"HTTP status code [code]404 Not Found[/code]. The server can not find "
"requested resource. Either the URL is not recognized or the endpoint is "
@@ -23782,7 +24328,7 @@ msgid ""
"403 to hide existence of a resource if the client is not authorized."
msgstr ""
-#: doc/classes/HTTPClient.xml:328
+#: doc/classes/HTTPClient.xml:329
msgid ""
"HTTP status code [code]405 Method Not Allowed[/code]. The request's HTTP "
"method is known by the server but has been disabled and cannot be used. For "
@@ -23790,7 +24336,7 @@ msgid ""
"GET and HEAD, must never be disabled and should not return this error code."
msgstr ""
-#: doc/classes/HTTPClient.xml:331
+#: doc/classes/HTTPClient.xml:332
msgid ""
"HTTP status code [code]406 Not Acceptable[/code]. The target resource does "
"not have a current representation that would be acceptable to the user "
@@ -23798,21 +24344,21 @@ msgid ""
"request. Used when negotiation content."
msgstr ""
-#: doc/classes/HTTPClient.xml:334
+#: doc/classes/HTTPClient.xml:335
msgid ""
"HTTP status code [code]407 Proxy Authentication Required[/code]. Similar to "
"401 Unauthorized, but it indicates that the client needs to authenticate "
"itself in order to use a proxy."
msgstr ""
-#: doc/classes/HTTPClient.xml:337
+#: doc/classes/HTTPClient.xml:338
msgid ""
"HTTP status code [code]408 Request Timeout[/code]. The server did not "
"receive a complete request message within the time that it was prepared to "
"wait."
msgstr ""
-#: doc/classes/HTTPClient.xml:340
+#: doc/classes/HTTPClient.xml:341
msgid ""
"HTTP status code [code]409 Conflict[/code]. The request could not be "
"completed due to a conflict with the current state of the target resource. "
@@ -23820,47 +24366,47 @@ msgid ""
"conflict and resubmit the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:343
+#: doc/classes/HTTPClient.xml:344
msgid ""
"HTTP status code [code]410 Gone[/code]. The target resource is no longer "
"available at the origin server and this condition is likely permanent."
msgstr ""
-#: doc/classes/HTTPClient.xml:346
+#: doc/classes/HTTPClient.xml:347
msgid ""
"HTTP status code [code]411 Length Required[/code]. The server refuses to "
"accept the request without a defined Content-Length header."
msgstr ""
-#: doc/classes/HTTPClient.xml:349
+#: doc/classes/HTTPClient.xml:350
msgid ""
"HTTP status code [code]412 Precondition Failed[/code]. One or more "
"conditions given in the request header fields evaluated to [code]false[/"
"code] when tested on the server."
msgstr ""
-#: doc/classes/HTTPClient.xml:352
+#: doc/classes/HTTPClient.xml:353
msgid ""
"HTTP status code [code]413 Entity Too Large[/code]. The server is refusing "
"to process a request because the request payload is larger than the server "
"is willing or able to process."
msgstr ""
-#: doc/classes/HTTPClient.xml:355
+#: doc/classes/HTTPClient.xml:356
msgid ""
"HTTP status code [code]414 Request-URI Too Long[/code]. The server is "
"refusing to service the request because the request-target is longer than "
"the server is willing to interpret."
msgstr ""
-#: doc/classes/HTTPClient.xml:358
+#: doc/classes/HTTPClient.xml:359
msgid ""
"HTTP status code [code]415 Unsupported Media Type[/code]. The origin server "
"is refusing to service the request because the payload is in a format not "
"supported by this method on the target resource."
msgstr ""
-#: doc/classes/HTTPClient.xml:361
+#: doc/classes/HTTPClient.xml:362
msgid ""
"HTTP status code [code]416 Requested Range Not Satisfiable[/code]. None of "
"the ranges in the request's Range header field overlap the current extent of "
@@ -23868,21 +24414,21 @@ msgid ""
"to invalid ranges or an excessive request of small or overlapping ranges."
msgstr ""
-#: doc/classes/HTTPClient.xml:364
+#: doc/classes/HTTPClient.xml:365
msgid ""
"HTTP status code [code]417 Expectation Failed[/code]. The expectation given "
"in the request's Expect header field could not be met by at least one of the "
"inbound servers."
msgstr ""
-#: doc/classes/HTTPClient.xml:367
+#: doc/classes/HTTPClient.xml:368
msgid ""
"HTTP status code [code]418 I'm A Teapot[/code]. Any attempt to brew coffee "
"with a teapot should result in the error code \"418 I'm a teapot\". The "
"resulting entity body MAY be short and stout."
msgstr ""
-#: doc/classes/HTTPClient.xml:370
+#: doc/classes/HTTPClient.xml:371
msgid ""
"HTTP status code [code]421 Misdirected Request[/code]. The request was "
"directed at a server that is not able to produce a response. This can be "
@@ -23890,7 +24436,7 @@ msgid ""
"combination of scheme and authority that are included in the request URI."
msgstr ""
-#: doc/classes/HTTPClient.xml:373
+#: doc/classes/HTTPClient.xml:374
msgid ""
"HTTP status code [code]422 Unprocessable Entity[/code] (WebDAV). The server "
"understands the content type of the request entity (hence a 415 Unsupported "
@@ -23899,40 +24445,40 @@ msgid ""
"was unable to process the contained instructions."
msgstr ""
-#: doc/classes/HTTPClient.xml:376
+#: doc/classes/HTTPClient.xml:377
msgid ""
"HTTP status code [code]423 Locked[/code] (WebDAV). The source or destination "
"resource of a method is locked."
msgstr ""
-#: doc/classes/HTTPClient.xml:379
+#: doc/classes/HTTPClient.xml:380
msgid ""
"HTTP status code [code]424 Failed Dependency[/code] (WebDAV). The method "
"could not be performed on the resource because the requested action depended "
"on another action and that action failed."
msgstr ""
-#: doc/classes/HTTPClient.xml:382
+#: doc/classes/HTTPClient.xml:383
msgid ""
"HTTP status code [code]426 Upgrade Required[/code]. The server refuses to "
"perform the request using the current protocol but might be willing to do so "
"after the client upgrades to a different protocol."
msgstr ""
-#: doc/classes/HTTPClient.xml:385
+#: doc/classes/HTTPClient.xml:386
msgid ""
"HTTP status code [code]428 Precondition Required[/code]. The origin server "
"requires the request to be conditional."
msgstr ""
-#: doc/classes/HTTPClient.xml:388
+#: doc/classes/HTTPClient.xml:389
msgid ""
"HTTP status code [code]429 Too Many Requests[/code]. The user has sent too "
"many requests in a given amount of time (see \"rate limiting\"). Back off "
"and increase time between requests or try again later."
msgstr ""
-#: doc/classes/HTTPClient.xml:391
+#: doc/classes/HTTPClient.xml:392
msgid ""
"HTTP status code [code]431 Request Header Fields Too Large[/code]. The "
"server is unwilling to process the request because its header fields are too "
@@ -23940,27 +24486,27 @@ msgid ""
"header fields."
msgstr ""
-#: doc/classes/HTTPClient.xml:394
+#: doc/classes/HTTPClient.xml:395
msgid ""
"HTTP status code [code]451 Response Unavailable For Legal Reasons[/code]. "
"The server is denying access to the resource as a consequence of a legal "
"demand."
msgstr ""
-#: doc/classes/HTTPClient.xml:397
+#: doc/classes/HTTPClient.xml:398
msgid ""
"HTTP status code [code]500 Internal Server Error[/code]. The server "
"encountered an unexpected condition that prevented it from fulfilling the "
"request."
msgstr ""
-#: doc/classes/HTTPClient.xml:400
+#: doc/classes/HTTPClient.xml:401
msgid ""
"HTTP status code [code]501 Not Implemented[/code]. The server does not "
"support the functionality required to fulfill the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:403
+#: doc/classes/HTTPClient.xml:404
msgid ""
"HTTP status code [code]502 Bad Gateway[/code]. The server, while acting as a "
"gateway or proxy, received an invalid response from an inbound server it "
@@ -23968,7 +24514,7 @@ msgid ""
"balancers or proxies."
msgstr ""
-#: doc/classes/HTTPClient.xml:406
+#: doc/classes/HTTPClient.xml:407
msgid ""
"HTTP status code [code]503 Service Unavailable[/code]. The server is "
"currently unable to handle the request due to a temporary overload or "
@@ -23976,7 +24522,7 @@ msgid ""
"again later."
msgstr ""
-#: doc/classes/HTTPClient.xml:409
+#: doc/classes/HTTPClient.xml:410
msgid ""
"HTTP status code [code]504 Gateway Timeout[/code]. The server, while acting "
"as a gateway or proxy, did not receive a timely response from an upstream "
@@ -23984,14 +24530,14 @@ msgid ""
"returned by load balancers or proxies."
msgstr ""
-#: doc/classes/HTTPClient.xml:412
+#: doc/classes/HTTPClient.xml:413
msgid ""
"HTTP status code [code]505 HTTP Version Not Supported[/code]. The server "
"does not support, or refuses to support, the major version of HTTP that was "
"used in the request message."
msgstr ""
-#: doc/classes/HTTPClient.xml:415
+#: doc/classes/HTTPClient.xml:416
msgid ""
"HTTP status code [code]506 Variant Also Negotiates[/code]. The server has an "
"internal configuration error: the chosen variant resource is configured to "
@@ -23999,14 +24545,14 @@ msgid ""
"proper end point in the negotiation process."
msgstr ""
-#: doc/classes/HTTPClient.xml:418
+#: doc/classes/HTTPClient.xml:419
msgid ""
"HTTP status code [code]507 Insufficient Storage[/code]. The method could not "
"be performed on the resource because the server is unable to store the "
"representation needed to successfully complete the request."
msgstr ""
-#: doc/classes/HTTPClient.xml:421
+#: doc/classes/HTTPClient.xml:422
msgid ""
"HTTP status code [code]508 Loop Detected[/code]. The server terminated an "
"operation because it encountered an infinite loop while processing a request "
@@ -24014,14 +24560,14 @@ msgid ""
"failed."
msgstr ""
-#: doc/classes/HTTPClient.xml:424
+#: doc/classes/HTTPClient.xml:425
msgid ""
"HTTP status code [code]510 Not Extended[/code]. The policy for accessing the "
"resource has not been met in the request. The server should send back all "
"the information necessary for the client to issue an extended request."
msgstr ""
-#: doc/classes/HTTPClient.xml:427
+#: doc/classes/HTTPClient.xml:428
msgid ""
"HTTP status code [code]511 Network Authentication Required[/code]. The "
"client needs to authenticate to gain network access."
@@ -24047,12 +24593,21 @@ msgid ""
" http_request.connect(\"request_completed\", self, "
"\"_http_request_completed\")\n"
"\n"
-" # Perform the HTTP request. The URL below returns some JSON as of "
-"writing.\n"
+" # Perform a GET request. The URL below returns JSON as of writing.\n"
" var error = http_request.request(\"https://httpbin.org/get\")\n"
" if error != OK:\n"
" push_error(\"An error occurred in the HTTP request.\")\n"
"\n"
+" # Perform a POST request. The URL below returns JSON as of writing.\n"
+" # Note: Don't make simultaneous requests using a single HTTPRequest "
+"node.\n"
+" # The snippet below is provided for reference only.\n"
+" var body = {\"name\": \"Godette\"}\n"
+" var error = http_request.request(\"https://httpbin.org/post\", [], true, "
+"HTTPClient.METHOD_POST, body)\n"
+" if error != OK:\n"
+" push_error(\"An error occurred in the HTTP request.\")\n"
+"\n"
"\n"
"# Called when the HTTP request is completed.\n"
"func _http_request_completed(result, response_code, headers, body):\n"
@@ -24092,20 +24647,26 @@ msgid ""
" var texture_rect = TextureRect.new()\n"
" add_child(texture_rect)\n"
" texture_rect.texture = texture\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] When performing HTTP requests from a project exported to HTML5, "
+"keep in mind the remote server may not allow requests from foreign origins "
+"due to [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/"
+"url]. If you host the server in question, you should modify its backend to "
+"allow requests from foreign origins by adding the [code]Access-Control-Allow-"
+"Origin: *[/code] HTTP header."
msgstr ""
-#: doc/classes/HTTPRequest.xml:61
+#: doc/classes/HTTPRequest.xml:70
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/networking/"
"http_request_class.html"
msgstr ""
-#: doc/classes/HTTPRequest.xml:69
+#: doc/classes/HTTPRequest.xml:78
msgid "Cancels the current request."
msgstr ""
-#: doc/classes/HTTPRequest.xml:76
+#: doc/classes/HTTPRequest.xml:85
msgid ""
"Returns the response body length.\n"
"[b]Note:[/b] Some Web servers may not send a body length. In this case, the "
@@ -24113,17 +24674,17 @@ msgid ""
"the body length will also be [code]-1[/code]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:84
+#: doc/classes/HTTPRequest.xml:93
msgid "Returns the amount of bytes this HTTPRequest downloaded."
msgstr ""
-#: doc/classes/HTTPRequest.xml:91
+#: doc/classes/HTTPRequest.xml:100
msgid ""
"Returns the current status of the underlying [HTTPClient]. See [enum "
"HTTPClient.Status]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:108
+#: doc/classes/HTTPRequest.xml:117
msgid ""
"Creates request on the underlying [HTTPClient]. If there is no configuration "
"errors, it tries to connect using [method HTTPClient.connect_to_host] and "
@@ -24136,11 +24697,11 @@ msgid ""
"connect to host."
msgstr ""
-#: doc/classes/HTTPRequest.xml:115
+#: doc/classes/HTTPRequest.xml:124
msgid "Maximum allowed size for response bodies."
msgstr ""
-#: doc/classes/HTTPRequest.xml:118
+#: doc/classes/HTTPRequest.xml:127
msgid ""
"The size of the buffer used and maximum bytes to read per iteration. See "
"[member HTTPClient.read_chunk_size].\n"
@@ -24148,63 +24709,63 @@ msgid ""
"files to achieve better speeds at the cost of memory."
msgstr ""
-#: doc/classes/HTTPRequest.xml:122
+#: doc/classes/HTTPRequest.xml:131
msgid "The file to download into. Will output any received file into it."
msgstr ""
-#: doc/classes/HTTPRequest.xml:125
+#: doc/classes/HTTPRequest.xml:134
msgid "Maximum number of allowed redirects."
msgstr ""
-#: doc/classes/HTTPRequest.xml:130
+#: doc/classes/HTTPRequest.xml:139
msgid "If [code]true[/code], multithreading is used to improve performance."
msgstr ""
-#: doc/classes/HTTPRequest.xml:144
+#: doc/classes/HTTPRequest.xml:153
msgid "Emitted when a request is completed."
msgstr ""
-#: doc/classes/HTTPRequest.xml:150
+#: doc/classes/HTTPRequest.xml:159
msgid "Request successful."
msgstr ""
-#: doc/classes/HTTPRequest.xml:155
+#: doc/classes/HTTPRequest.xml:164
msgid "Request failed while connecting."
msgstr ""
-#: doc/classes/HTTPRequest.xml:158
+#: doc/classes/HTTPRequest.xml:167
msgid "Request failed while resolving."
msgstr ""
-#: doc/classes/HTTPRequest.xml:161
+#: doc/classes/HTTPRequest.xml:170
msgid "Request failed due to connection (read/write) error."
msgstr ""
-#: doc/classes/HTTPRequest.xml:164
+#: doc/classes/HTTPRequest.xml:173
msgid "Request failed on SSL handshake."
msgstr ""
-#: doc/classes/HTTPRequest.xml:167
+#: doc/classes/HTTPRequest.xml:176
msgid "Request does not have a response (yet)."
msgstr ""
-#: doc/classes/HTTPRequest.xml:170
+#: doc/classes/HTTPRequest.xml:179
msgid "Request exceeded its maximum size limit, see [member body_size_limit]."
msgstr ""
-#: doc/classes/HTTPRequest.xml:173
+#: doc/classes/HTTPRequest.xml:182
msgid "Request failed (currently unused)."
msgstr ""
-#: doc/classes/HTTPRequest.xml:176
+#: doc/classes/HTTPRequest.xml:185
msgid "HTTPRequest couldn't open the download file."
msgstr ""
-#: doc/classes/HTTPRequest.xml:179
+#: doc/classes/HTTPRequest.xml:188
msgid "HTTPRequest couldn't write to the download file."
msgstr ""
-#: doc/classes/HTTPRequest.xml:182
+#: doc/classes/HTTPRequest.xml:191
msgid "Request reached its maximum redirect limit, see [member max_redirects]."
msgstr ""
@@ -24428,42 +24989,46 @@ msgid "Loads an image from the binary contents of a PNG file."
msgstr ""
#: doc/classes/Image.xml:373
+msgid "Loads an image from the binary contents of a TGA file."
+msgstr ""
+
+#: doc/classes/Image.xml:382
msgid "Loads an image from the binary contents of a WebP file."
msgstr ""
-#: doc/classes/Image.xml:380
+#: doc/classes/Image.xml:389
msgid ""
"Converts the image's data to represent coordinates on a 3D plane. This is "
"used when the image represents a normalmap. A normalmap can add lots of "
"detail to a 3D surface without increasing the polygon count."
msgstr ""
-#: doc/classes/Image.xml:387
+#: doc/classes/Image.xml:396
msgid ""
"Multiplies color values with alpha values. Resulting color values for a "
"pixel are [code](color * alpha)/256[/code]."
msgstr ""
-#: doc/classes/Image.xml:400
+#: doc/classes/Image.xml:409
msgid ""
"Resizes the image to the given [code]width[/code] and [code]height[/code]. "
"New pixels are calculated using [code]interpolation[/code]. See "
"[code]interpolation[/code] constants."
msgstr ""
-#: doc/classes/Image.xml:409
+#: doc/classes/Image.xml:418
msgid ""
"Resizes the image to the nearest power of 2 for the width and height. If "
"[code]square[/code] is [code]true[/code] then set width and height to be the "
"same."
msgstr ""
-#: doc/classes/Image.xml:416
+#: doc/classes/Image.xml:425
msgid ""
"Converts a standard RGBE (Red Green Blue Exponent) image to an sRGB image."
msgstr ""
-#: doc/classes/Image.xml:427
+#: doc/classes/Image.xml:436
msgid ""
"Saves the image as an EXR file to [code]path[/code]. If [code]grayscale[/"
"code] is [code]true[/code] and the image has only one channel, it will be "
@@ -24472,11 +25037,11 @@ msgid ""
"TinyEXR module."
msgstr ""
-#: doc/classes/Image.xml:436
+#: doc/classes/Image.xml:445
msgid "Saves the image as a PNG file to [code]path[/code]."
msgstr ""
-#: doc/classes/Image.xml:455
+#: doc/classes/Image.xml:464
msgid ""
"Sets the [Color] of the pixel at [code](x, y)[/code]. Example:\n"
"[codeblock]\n"
@@ -24486,7 +25051,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Image.xml:471
+#: doc/classes/Image.xml:480
msgid ""
"Sets the [Color] of the pixel at [code](dst.x, dst.y)[/code]. Note that the "
"[code]dst[/code] values must be integers. Example:\n"
@@ -24497,51 +25062,51 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Image.xml:483
+#: doc/classes/Image.xml:492
msgid "Shrinks the image by a factor of 2."
msgstr ""
-#: doc/classes/Image.xml:490
+#: doc/classes/Image.xml:499
msgid "Converts the raw data from the sRGB colorspace to a linear scale."
msgstr ""
-#: doc/classes/Image.xml:496
+#: doc/classes/Image.xml:505
msgid ""
"Holds all of the image's color data in a given format. See [enum Format] "
"constants."
msgstr ""
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:510
msgid "The maximal width allowed for [Image] resources."
msgstr ""
-#: doc/classes/Image.xml:504
+#: doc/classes/Image.xml:513
msgid "The maximal height allowed for [Image] resources."
msgstr ""
-#: doc/classes/Image.xml:507
+#: doc/classes/Image.xml:516
msgid "Texture format with a single 8-bit depth representing luminance."
msgstr ""
-#: doc/classes/Image.xml:510
+#: doc/classes/Image.xml:519
msgid ""
"OpenGL texture format with two values, luminance and alpha each stored with "
"8 bits."
msgstr ""
-#: doc/classes/Image.xml:513
+#: doc/classes/Image.xml:522
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
"bitdepth of 8."
msgstr ""
-#: doc/classes/Image.xml:516
+#: doc/classes/Image.xml:525
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
-#: doc/classes/Image.xml:519
+#: doc/classes/Image.xml:528
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -24549,7 +25114,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:523
+#: doc/classes/Image.xml:532
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -24557,67 +25122,67 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:536
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
-#: doc/classes/Image.xml:532
+#: doc/classes/Image.xml:541
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
-#: doc/classes/Image.xml:535
+#: doc/classes/Image.xml:544
msgid ""
"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
"each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:538
+#: doc/classes/Image.xml:547
msgid ""
"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
"components, each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:541
+#: doc/classes/Image.xml:550
msgid ""
"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
"components, each a 32-bit floating-point values."
msgstr ""
-#: doc/classes/Image.xml:544
+#: doc/classes/Image.xml:553
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 16-"
"bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:556
msgid ""
"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
"each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:550
+#: doc/classes/Image.xml:559
msgid ""
"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
"components, each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:553
+#: doc/classes/Image.xml:562
msgid ""
"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
"components, each a 16-bit \"half-precision\" floating-point value."
msgstr ""
-#: doc/classes/Image.xml:556
+#: doc/classes/Image.xml:565
msgid ""
"A special OpenGL texture format where the three color components have 9 bits "
"of precision and all three share a single 5-bit exponent."
msgstr ""
-#: doc/classes/Image.xml:559
+#: doc/classes/Image.xml:568
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format that uses Block Compression 1, and is the smallest variation "
@@ -24627,7 +25192,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:563
+#: doc/classes/Image.xml:572
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format that uses Block Compression 2, and color data is interpreted "
@@ -24637,7 +25202,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:567
+#: doc/classes/Image.xml:576
msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format also known as Block Compression 3 or BC3 that contains 64 "
@@ -24648,7 +25213,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:571
+#: doc/classes/Image.xml:580
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -24656,7 +25221,7 @@ msgid ""
"DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:574
+#: doc/classes/Image.xml:583
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -24664,7 +25229,7 @@ msgid ""
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:577
+#: doc/classes/Image.xml:586
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -24673,21 +25238,21 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:581
+#: doc/classes/Image.xml:590
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with signed floating-point "
"RGB components."
msgstr ""
-#: doc/classes/Image.xml:584
+#: doc/classes/Image.xml:593
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned floating-point "
"RGB components."
msgstr ""
-#: doc/classes/Image.xml:587
+#: doc/classes/Image.xml:596
msgid ""
"Texture format used on PowerVR-supported mobile platforms, uses 2-bit color "
"depth with no alpha. More information can be found [url=https://en.wikipedia."
@@ -24696,25 +25261,25 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:600
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:603
msgid ""
"Similar to [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with 4-"
"bit color depth and no alpha."
msgstr ""
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:606
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:609
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -24722,7 +25287,7 @@ msgid ""
"standard. This format cannot store an alpha channel."
msgstr ""
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:612
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24730,7 +25295,7 @@ msgid ""
"unsigned data."
msgstr ""
-#: doc/classes/Image.xml:606
+#: doc/classes/Image.xml:615
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24738,7 +25303,7 @@ msgid ""
"channel of signed data."
msgstr ""
-#: doc/classes/Image.xml:609
+#: doc/classes/Image.xml:618
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24746,7 +25311,7 @@ msgid ""
"of unsigned data."
msgstr ""
-#: doc/classes/Image.xml:612
+#: doc/classes/Image.xml:621
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24754,7 +25319,7 @@ msgid ""
"channels of signed data."
msgstr ""
-#: doc/classes/Image.xml:615
+#: doc/classes/Image.xml:624
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24764,7 +25329,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:619
+#: doc/classes/Image.xml:628
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24774,7 +25339,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:623
+#: doc/classes/Image.xml:632
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -24785,31 +25350,31 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:631
+#: doc/classes/Image.xml:640
msgid "Represents the size of the [enum Format] enum."
msgstr ""
-#: doc/classes/Image.xml:634
+#: doc/classes/Image.xml:643
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
-#: doc/classes/Image.xml:637
+#: doc/classes/Image.xml:646
msgid ""
"Performs bilinear interpolation. If the image is resized, it will be blurry. "
"This mode is faster than [constant INTERPOLATE_CUBIC], but it results in "
"lower quality."
msgstr ""
-#: doc/classes/Image.xml:640
+#: doc/classes/Image.xml:649
msgid ""
"Performs cubic interpolation. If the image is resized, it will be blurry. "
"This mode often gives better results compared to [constant "
"INTERPOLATE_BILINEAR], at the cost of being slower."
msgstr ""
-#: doc/classes/Image.xml:643
+#: doc/classes/Image.xml:652
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -24824,55 +25389,55 @@ msgid ""
"a new set will be generated for the resulting image."
msgstr ""
-#: doc/classes/Image.xml:650
+#: doc/classes/Image.xml:659
msgid ""
"Performs Lanczos interpolation. This is the slowest image resizing mode, but "
"it typically gives the best results, especially when downscalng images."
msgstr ""
-#: doc/classes/Image.xml:653
+#: doc/classes/Image.xml:662
msgid "Image does not have alpha."
msgstr ""
-#: doc/classes/Image.xml:656
+#: doc/classes/Image.xml:665
msgid "Image stores alpha in a single bit."
msgstr ""
-#: doc/classes/Image.xml:659
+#: doc/classes/Image.xml:668
msgid "Image uses alpha."
msgstr ""
-#: doc/classes/Image.xml:662
+#: doc/classes/Image.xml:671
msgid "Use S3TC compression."
msgstr ""
-#: doc/classes/Image.xml:665
+#: doc/classes/Image.xml:674
msgid "Use PVRTC2 compression."
msgstr ""
-#: doc/classes/Image.xml:668
+#: doc/classes/Image.xml:677
msgid "Use PVRTC4 compression."
msgstr ""
-#: doc/classes/Image.xml:671
+#: doc/classes/Image.xml:680
msgid "Use ETC compression."
msgstr ""
-#: doc/classes/Image.xml:674
+#: doc/classes/Image.xml:683
msgid "Use ETC2 compression."
msgstr ""
-#: doc/classes/Image.xml:689
+#: doc/classes/Image.xml:698
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
-#: doc/classes/Image.xml:692
+#: doc/classes/Image.xml:701
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
-#: doc/classes/Image.xml:695
+#: doc/classes/Image.xml:704
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -25691,7 +26256,7 @@ msgid "Contains mouse click information. See [method Node._input]."
msgstr ""
#: doc/classes/InputEventMouseButton.xml:10
-#: doc/classes/InputEventMouseMotion.xml:10
+#: doc/classes/InputEventMouseMotion.xml:11
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/inputs/"
"mouse_and_input_coordinates.html"
@@ -25728,29 +26293,36 @@ msgstr ""
#: doc/classes/InputEventMouseMotion.xml:7
msgid ""
"Contains mouse and pen motion information. Supports relative, absolute "
-"positions and speed. See [method Node._input]."
+"positions and speed. See [method Node._input].\n"
+"[b]Note:[/b] By default, this event is only emitted once per frame rendered "
+"at most. If you need more precise input reporting, call [method Input."
+"set_use_accumulated_input] with [code]false[/code] to make events emitted as "
+"often as possible. If you use InputEventMouseMotion to draw lines, consider "
+"implementing [url=https://en.wikipedia.org/wiki/Bresenham"
+"%27s_line_algorithm]Bresenham's line algorithm[/url] as well to avoid "
+"visible gaps in lines if the user is moving the mouse quickly."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:16
+#: doc/classes/InputEventMouseMotion.xml:17
msgid ""
"Represents the pressure the user puts on the pen. Ranges from [code]0.0[/"
"code] to [code]1.0[/code]."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:19
+#: doc/classes/InputEventMouseMotion.xml:20
msgid ""
"The mouse position relative to the previous position (position at the last "
-"frame). \n"
+"frame).\n"
"[b]Note:[/b] Since [InputEventMouseMotion] is only emitted when the mouse "
"moves, the last event won't have a relative position of [code]Vector2(0, 0)[/"
"code] when the user stops moving the mouse."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:23
+#: doc/classes/InputEventMouseMotion.xml:24
msgid "The mouse speed in pixels per second."
msgstr ""
-#: doc/classes/InputEventMouseMotion.xml:26
+#: doc/classes/InputEventMouseMotion.xml:27
msgid ""
"Represents the angles of tilt of the pen. Positive X-coordinate value "
"indicates a tilt to the right. Positive Y-coordinate value indicates a tilt "
@@ -26640,14 +27212,17 @@ msgstr ""
#: doc/classes/JSON.xml:18
msgid ""
-"Parses a JSON encoded string and returns a [JSONParseResult] containing the "
+"Parses a JSON-encoded string and returns a [JSONParseResult] containing the "
"result."
msgstr ""
#: doc/classes/JSON.xml:31
msgid ""
"Converts a [Variant] var to JSON text and returns the result. Useful for "
-"serializing data to store or send over the network."
+"serializing data to store or send over the network.\n"
+"[b]Note:[/b] The JSON specification does not define integer or float types, "
+"but only a [i]number[/i] type. Therefore, converting a Variant to JSON text "
+"will convert all numerical values to [float] types."
msgstr ""
#: doc/classes/JSONParseResult.xml:4
@@ -26670,14 +27245,14 @@ msgstr ""
#: doc/classes/JSONParseResult.xml:18
msgid ""
-"The line number where the error occurred if JSON source was not successfully "
-"parsed."
+"The line number where the error occurred if the JSON source was not "
+"successfully parsed."
msgstr ""
#: doc/classes/JSONParseResult.xml:21
msgid ""
-"The error message if JSON source was not successfully parsed. See the [enum "
-"Error] constants."
+"The error message if the JSON source was not successfully parsed. See the "
+"[enum Error] constants."
msgstr ""
#: doc/classes/JSONParseResult.xml:24
@@ -26685,11 +27260,11 @@ msgid ""
"A [Variant] containing the parsed JSON. Use [method @GDScript.typeof] or the "
"[code]is[/code] keyword to check if it is what you expect. For example, if "
"the JSON source starts with curly braces ([code]{}[/code]), a [Dictionary] "
-"will be returned. If the JSON source starts with braces ([code][][/code]), "
+"will be returned. If the JSON source starts with brackets ([code][][/code]), "
"an [Array] will be returned.\n"
"[b]Note:[/b] The JSON specification does not define integer or float types, "
-"but only a number type. Therefore, parsing a JSON text will convert all "
-"numerical values to float types.\n"
+"but only a [i]number[/i] type. Therefore, parsing a JSON text will convert "
+"all numerical values to [float] types.\n"
"[b]Note:[/b] JSON objects do not preserve key order like Godot dictionaries, "
"thus, you should not rely on keys being in a certain order if a dictionary "
"is constructed from JSON. In contrast, JSON arrays retain the order of their "
@@ -26699,7 +27274,7 @@ msgid ""
"if typeof(p.result) == TYPE_ARRAY:\n"
" print(p.result[0]) # Prints \"hello\"\n"
"else:\n"
-" print(\"unexpected results\")\n"
+" push_error(\"Unexpected results.\")\n"
"[/codeblock]"
msgstr ""
@@ -26815,7 +27390,7 @@ msgid ""
"simulation will run at an incorrect speed.\n"
"[code]linear_velocity[/code] is the velocity vector in pixels per second. "
"Unlike in [method move_and_collide], you should [i]not[/i] multiply it by "
-"[code]delta[/code] — the physics engine handles applying the velocity. \n"
+"[code]delta[/code] — the physics engine handles applying the velocity.\n"
"[code]up_direction[/code] is the up direction, used to determine what is a "
"wall and what is a floor or a ceiling. If set to the default value of "
"[code]Vector2(0, 0)[/code], everything is considered a wall. This is useful "
@@ -26931,7 +27506,7 @@ msgid ""
"[code]linear_velocity[/code] is the velocity vector (typically meters per "
"second). Unlike in [method move_and_collide], you should [i]not[/i] multiply "
"it by [code]delta[/code] — the physics engine handles applying the "
-"velocity. \n"
+"velocity.\n"
"[code]up_direction[/code] is the up direction, used to determine what is a "
"wall and what is a floor or a ceiling. If set to the default value of "
"[code]Vector3(0, 0, 0)[/code], everything is considered a wall.\n"
@@ -27660,17 +28235,6 @@ msgid ""
"[b]Note:[/b] Hiding a light does [i]not[/i] affect baking."
msgstr ""
-#: doc/classes/Light3D.xml:152
-msgid "Only indirect lighting will be baked (default)."
-msgstr ""
-
-#: doc/classes/Light3D.xml:155
-msgid ""
-"Both direct and indirect light will be baked.\n"
-"[b]Note:[/b] You should hide the light if you don't want it to appear twice "
-"(dynamic and baked)."
-msgstr ""
-
#: doc/classes/LightOccluder2D.xml:4
msgid "Occludes light cast by a Light2D, casting shadows."
msgstr ""
@@ -27949,136 +28513,142 @@ msgstr ""
msgid "Text alignment as defined in the [enum Align] enum."
msgstr ""
-#: doc/classes/LineEdit.xml:120 doc/classes/TextEdit.xml:406
+#: doc/classes/LineEdit.xml:120 doc/classes/TextEdit.xml:358
msgid "If [code]true[/code], the caret (visual cursor) blinks."
msgstr ""
-#: doc/classes/LineEdit.xml:123 doc/classes/TextEdit.xml:409
+#: doc/classes/LineEdit.xml:123 doc/classes/TextEdit.xml:361
msgid "Duration (in seconds) of a caret's blinking cycle."
msgstr ""
-#: doc/classes/LineEdit.xml:126
+#: doc/classes/LineEdit.xml:128
msgid ""
"The cursor's position inside the [LineEdit]. When set, the text may scroll "
"to accommodate it."
msgstr ""
-#: doc/classes/LineEdit.xml:129
+#: doc/classes/LineEdit.xml:131
msgid ""
"If [code]true[/code], the [LineEdit] will show a clear button if [code]text[/"
"code] is not empty, which can be used to clear the text quickly."
msgstr ""
-#: doc/classes/LineEdit.xml:132
+#: doc/classes/LineEdit.xml:134
msgid "If [code]true[/code], the context menu will appear when right-clicked."
msgstr ""
-#: doc/classes/LineEdit.xml:135
+#: doc/classes/LineEdit.xml:137
msgid ""
"If [code]false[/code], existing text cannot be modified and new text cannot "
"be added."
msgstr ""
-#: doc/classes/LineEdit.xml:138
+#: doc/classes/LineEdit.xml:140
msgid ""
"If [code]true[/code], the [LineEdit] width will increase to stay longer than "
"the [member text]. It will [b]not[/b] compress if the [member text] is "
"shortened."
msgstr ""
-#: doc/classes/LineEdit.xml:142
+#: doc/classes/LineEdit.xml:144
msgid ""
"Maximum amount of characters that can be entered inside the [LineEdit]. If "
"[code]0[/code], there is no limit."
msgstr ""
-#: doc/classes/LineEdit.xml:146
+#: doc/classes/LineEdit.xml:148
msgid ""
"Opacity of the [member placeholder_text]. From [code]0[/code] to [code]1[/"
"code]."
msgstr ""
-#: doc/classes/LineEdit.xml:149
+#: doc/classes/LineEdit.xml:151
msgid ""
"Text shown when the [LineEdit] is empty. It is [b]not[/b] the [LineEdit]'s "
"default value (see [member text])."
msgstr ""
-#: doc/classes/LineEdit.xml:152
+#: doc/classes/LineEdit.xml:154
msgid ""
"Sets the icon that will appear in the right end of the [LineEdit] if there's "
"no [member text], or always, if [member clear_button_enabled] is set to "
"[code]false[/code]."
msgstr ""
-#: doc/classes/LineEdit.xml:155
+#: doc/classes/LineEdit.xml:157
msgid ""
"If [code]true[/code], every character is replaced with the secret character "
"(see [member secret_character])."
msgstr ""
-#: doc/classes/LineEdit.xml:158
+#: doc/classes/LineEdit.xml:160
msgid ""
"The character to use to mask secret input (defaults to \"*\"). Only a single "
"character can be used as the secret character."
msgstr ""
-#: doc/classes/LineEdit.xml:161
+#: doc/classes/LineEdit.xml:163
msgid ""
"If [code]false[/code], it's impossible to select the text using mouse nor "
"keyboard."
msgstr ""
-#: doc/classes/LineEdit.xml:164
+#: doc/classes/LineEdit.xml:166
msgid "If [code]false[/code], using shortcuts will be disabled."
msgstr ""
-#: doc/classes/LineEdit.xml:167
+#: doc/classes/LineEdit.xml:169
msgid ""
"String value of the [LineEdit].\n"
"[b]Note:[/b] Changing text using this property won't emit the [signal "
"text_changed] signal."
msgstr ""
-#: doc/classes/LineEdit.xml:174
+#: doc/classes/LineEdit.xml:173 doc/classes/TextEdit.xml:434
+msgid ""
+"If [code]true[/code], the native virtual keyboard is shown when focused on "
+"platforms that support it."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:179
msgid ""
"Emitted when trying to append text that would overflow the [member "
"max_length]."
msgstr ""
-#: doc/classes/LineEdit.xml:181 doc/classes/TextEdit.xml:525
+#: doc/classes/LineEdit.xml:186 doc/classes/TextEdit.xml:490
msgid "Emitted when the text changes."
msgstr ""
-#: doc/classes/LineEdit.xml:188
+#: doc/classes/LineEdit.xml:193
msgid "Emitted when the user presses [constant KEY_ENTER] on the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:194
+#: doc/classes/LineEdit.xml:199
msgid "Aligns the text on the left-hand side of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:197
+#: doc/classes/LineEdit.xml:202
msgid "Centers the text in the middle of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:200
+#: doc/classes/LineEdit.xml:205
msgid "Aligns the text on the right-hand side of the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:203
+#: doc/classes/LineEdit.xml:208
msgid "Stretches whitespaces to fit the [LineEdit]'s width."
msgstr ""
-#: doc/classes/LineEdit.xml:206 doc/classes/TextEdit.xml:540
+#: doc/classes/LineEdit.xml:211 doc/classes/TextEdit.xml:505
msgid "Cuts (copies and clears) the selected text."
msgstr ""
-#: doc/classes/LineEdit.xml:209 doc/classes/TextEdit.xml:543
+#: doc/classes/LineEdit.xml:214 doc/classes/TextEdit.xml:508
msgid "Copies the selected text."
msgstr ""
-#: doc/classes/LineEdit.xml:212
+#: doc/classes/LineEdit.xml:217
msgid ""
"Pastes the clipboard text over the selected text (or at the cursor's "
"position).\n"
@@ -28086,80 +28656,80 @@ msgid ""
"clipboard via [method String.strip_escapes]."
msgstr ""
-#: doc/classes/LineEdit.xml:216
+#: doc/classes/LineEdit.xml:221
msgid "Erases the whole [LineEdit] text."
msgstr ""
-#: doc/classes/LineEdit.xml:219
+#: doc/classes/LineEdit.xml:224
msgid "Selects the whole [LineEdit] text."
msgstr ""
-#: doc/classes/LineEdit.xml:222 doc/classes/TextEdit.xml:555
+#: doc/classes/LineEdit.xml:227 doc/classes/TextEdit.xml:520
msgid "Undoes the previous action."
msgstr ""
-#: doc/classes/LineEdit.xml:225
+#: doc/classes/LineEdit.xml:230
msgid "Reverse the last undo action."
msgstr ""
-#: doc/classes/LineEdit.xml:228 doc/classes/TextEdit.xml:561
+#: doc/classes/LineEdit.xml:233 doc/classes/TextEdit.xml:526
msgid "Represents the size of the [enum MenuItems] enum."
msgstr ""
-#: doc/classes/LineEdit.xml:233
+#: doc/classes/LineEdit.xml:238
msgid "Texture for the clear button. See [member clear_button_enabled]."
msgstr ""
-#: doc/classes/LineEdit.xml:236
+#: doc/classes/LineEdit.xml:241
msgid "Color used as default tint for the clear button."
msgstr ""
-#: doc/classes/LineEdit.xml:239
+#: doc/classes/LineEdit.xml:244
msgid "Color used for the clear button when it's pressed."
msgstr ""
-#: doc/classes/LineEdit.xml:242
+#: doc/classes/LineEdit.xml:247
msgid "Color of the [LineEdit]'s visual cursor (caret)."
msgstr ""
-#: doc/classes/LineEdit.xml:245
+#: doc/classes/LineEdit.xml:250
msgid "Background used when [LineEdit] has GUI focus."
msgstr ""
-#: doc/classes/LineEdit.xml:248
+#: doc/classes/LineEdit.xml:253
msgid "Font used for the text."
msgstr ""
-#: doc/classes/LineEdit.xml:251
+#: doc/classes/LineEdit.xml:256
msgid "Default font color."
msgstr ""
-#: doc/classes/LineEdit.xml:254
+#: doc/classes/LineEdit.xml:259
msgid "Font color for selected text (inside the selection rectangle)."
msgstr ""
-#: doc/classes/LineEdit.xml:257
+#: doc/classes/LineEdit.xml:262
msgid "Font color when editing is disabled."
msgstr ""
-#: doc/classes/LineEdit.xml:260
+#: doc/classes/LineEdit.xml:265
msgid ""
"Minimum horizontal space for the text (not counting the clear button and "
"content margins). This value is measured in count of space characters (i.e. "
"this amount of space characters can be displayed without scrolling)."
msgstr ""
-#: doc/classes/LineEdit.xml:263
+#: doc/classes/LineEdit.xml:268
msgid "Default background for the [LineEdit]."
msgstr ""
-#: doc/classes/LineEdit.xml:266
+#: doc/classes/LineEdit.xml:271
msgid ""
"Background used when [LineEdit] is in read-only mode ([member editable] is "
"set to [code]false[/code])."
msgstr ""
-#: doc/classes/LineEdit.xml:269
+#: doc/classes/LineEdit.xml:274
msgid "Color of the selection rectangle."
msgstr ""
@@ -28377,14 +28947,14 @@ msgstr ""
msgid "Emitted when a user responds to a permission request."
msgstr ""
-#: doc/classes/MainLoop.xml:127 doc/classes/Node.xml:948
+#: doc/classes/MainLoop.xml:127 doc/classes/Node.xml:946
msgid ""
"Notification received from the OS when the application is exceeding its "
"allocated memory.\n"
"Specific to the iOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:131 doc/classes/Node.xml:952
+#: doc/classes/MainLoop.xml:131 doc/classes/Node.xml:950
msgid ""
"Notification received when translations may have changed. Can be triggered "
"by the user changing the locale. Can be used to respond to language changes, "
@@ -28392,39 +28962,55 @@ msgid ""
"the built-in translation support, like [method Object.tr]."
msgstr ""
-#: doc/classes/MainLoop.xml:134 doc/classes/Node.xml:955
+#: doc/classes/MainLoop.xml:134 doc/classes/Node.xml:953
msgid ""
"Notification received from the OS when a request for \"About\" information "
"is sent.\n"
"Specific to the macOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:138 doc/classes/Node.xml:959
+#: doc/classes/MainLoop.xml:138 doc/classes/Node.xml:957
msgid ""
"Notification received from Godot's crash handler when the engine is about to "
"crash.\n"
"Implemented on desktop platforms if the crash handler is enabled."
msgstr ""
-#: doc/classes/MainLoop.xml:142 doc/classes/Node.xml:963
+#: doc/classes/MainLoop.xml:142 doc/classes/Node.xml:961
msgid ""
"Notification received from the OS when an update of the Input Method Engine "
"occurs (e.g. change of IME cursor position or composition string).\n"
"Specific to the macOS platform."
msgstr ""
-#: doc/classes/MainLoop.xml:146 doc/classes/Node.xml:967
+#: doc/classes/MainLoop.xml:146 doc/classes/Node.xml:965
msgid ""
-"Notification received from the OS when the app is resumed.\n"
+"Notification received from the OS when the application is resumed.\n"
"Specific to the Android platform."
msgstr ""
-#: doc/classes/MainLoop.xml:150 doc/classes/Node.xml:971
+#: doc/classes/MainLoop.xml:150 doc/classes/Node.xml:969
msgid ""
-"Notification received from the OS when the app is paused.\n"
+"Notification received from the OS when the application is paused.\n"
"Specific to the Android platform."
msgstr ""
+#: doc/classes/MainLoop.xml:154 doc/classes/Node.xml:973
+msgid ""
+"Notification received from the OS when the application is focused, i.e. when "
+"changing the focus from the OS desktop or a thirdparty application to any "
+"open window of the Godot instance.\n"
+"Implemented on desktop platforms."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:158 doc/classes/Node.xml:977
+msgid ""
+"Notification received from the OS when the application is defocused, i.e. "
+"when changing the focus from any open window of the Godot instance to the OS "
+"desktop or a thirdparty application.\n"
+"Implemented on desktop platforms."
+msgstr ""
+
#: doc/classes/MarginContainer.xml:4
msgid "Simple margin container."
msgstr ""
@@ -28732,11 +29318,11 @@ msgstr ""
msgid "Render array as triangle strips."
msgstr ""
-#: doc/classes/Mesh.xml:126 doc/classes/RenderingServer.xml:3189
+#: doc/classes/Mesh.xml:126 doc/classes/RenderingServer.xml:3185
msgid "Blend shapes are normalized."
msgstr ""
-#: doc/classes/Mesh.xml:129 doc/classes/RenderingServer.xml:3192
+#: doc/classes/Mesh.xml:129 doc/classes/RenderingServer.xml:3188
msgid "Blend shapes are relative to base weight."
msgstr ""
@@ -28778,37 +29364,37 @@ msgstr ""
msgid "Mesh array uses indices."
msgstr ""
-#: doc/classes/Mesh.xml:159 doc/classes/RenderingServer.xml:3145
+#: doc/classes/Mesh.xml:159 doc/classes/RenderingServer.xml:3141
msgid "Flag used to mark a compressed (half float) normal array."
msgstr ""
-#: doc/classes/Mesh.xml:162 doc/classes/RenderingServer.xml:3148
+#: doc/classes/Mesh.xml:162 doc/classes/RenderingServer.xml:3144
msgid "Flag used to mark a compressed (half float) tangent array."
msgstr ""
-#: doc/classes/Mesh.xml:165 doc/classes/RenderingServer.xml:3151
+#: doc/classes/Mesh.xml:165 doc/classes/RenderingServer.xml:3147
msgid "Flag used to mark a compressed (half float) color array."
msgstr ""
-#: doc/classes/Mesh.xml:168 doc/classes/RenderingServer.xml:3154
+#: doc/classes/Mesh.xml:168 doc/classes/RenderingServer.xml:3150
msgid "Flag used to mark a compressed (half float) UV coordinates array."
msgstr ""
-#: doc/classes/Mesh.xml:171 doc/classes/RenderingServer.xml:3157
+#: doc/classes/Mesh.xml:171 doc/classes/RenderingServer.xml:3153
msgid ""
"Flag used to mark a compressed (half float) UV coordinates array for the "
"second UV coordinates."
msgstr ""
-#: doc/classes/Mesh.xml:174 doc/classes/RenderingServer.xml:3160
+#: doc/classes/Mesh.xml:174 doc/classes/RenderingServer.xml:3156
msgid "Flag used to mark a compressed index array."
msgstr ""
-#: doc/classes/Mesh.xml:177 doc/classes/RenderingServer.xml:3166
+#: doc/classes/Mesh.xml:177 doc/classes/RenderingServer.xml:3162
msgid "Flag used to mark that the array contains 2D vertices."
msgstr ""
-#: doc/classes/Mesh.xml:180 doc/classes/RenderingServer.xml:3163
+#: doc/classes/Mesh.xml:180 doc/classes/RenderingServer.xml:3159
msgid ""
"Used to set flags [constant ARRAY_COMPRESS_NORMAL], [constant "
"ARRAY_COMPRESS_TANGENT], [constant ARRAY_COMPRESS_COLOR], [constant "
@@ -30569,7 +31155,10 @@ msgstr ""
msgid ""
"The number of channels to be used by ENet. Channels are used to separate "
"different kinds of data. In reliable or ordered mode, for example, the "
-"packet delivery order is ensured on a per channel basis."
+"packet delivery order is ensured on a per-channel basis. This is done to "
+"combat latency and reduces ordering restrictions on packets. The delivery "
+"status of a packet in one channel won't stall the delivery of other packets "
+"in another channel."
msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:134
@@ -30596,11 +31185,12 @@ msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:144
msgid ""
"Set the default channel to be used to transfer data. By default, this value "
-"is [code]-1[/code] which means that ENet will only use 2 channels, one for "
-"reliable and one for unreliable packets. Channel [code]0[/code] is reserved, "
-"and cannot be used. Setting this member to any value between [code]0[/code] "
-"and [member channel_count] (excluded) will force ENet to use that channel "
-"for sending data."
+"is [code]-1[/code] which means that ENet will only use 2 channels: one for "
+"reliable packets, and one for unreliable packets. The channel [code]0[/code] "
+"is reserved and cannot be used. Setting this member to any value between "
+"[code]0[/code] and [member channel_count] (excluded) will force ENet to use "
+"that channel for sending data. See [member channel_count] for more "
+"information about ENet channels."
msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:148
@@ -31792,57 +32382,63 @@ msgstr ""
#: doc/classes/Node.xml:930
msgid ""
-"Notification received from the OS when the game window is focused.\n"
-"Implemented on all platforms."
+"Notification received from the OS when the node's parent [Window] is "
+"focused. This may be a change of focus between two windows of the same "
+"engine instance, or from the OS desktop or a third-party application to a "
+"window of the game (in which case [constant "
+"NOTIFICATION_APPLICATION_FOCUS_IN] is also emitted)."
msgstr ""
-#: doc/classes/Node.xml:934
+#: doc/classes/Node.xml:933
msgid ""
-"Notification received from the OS when the game window is unfocused.\n"
-"Implemented on all platforms."
+"Notification received from the OS when the node's parent [Window] is "
+"defocused. This may be a change of focus between two windows of the same "
+"engine instance, or from a window of the game to the OS desktop or a third-"
+"party application (in which case [constant "
+"NOTIFICATION_APPLICATION_FOCUS_OUT] is also emitted)."
msgstr ""
-#: doc/classes/Node.xml:938
+#: doc/classes/Node.xml:936
msgid ""
"Notification received from the OS when a close request is sent (e.g. closing "
"the window with a \"Close\" button or [kbd]Alt + F4[/kbd]).\n"
"Implemented on desktop platforms."
msgstr ""
-#: doc/classes/Node.xml:942
+#: doc/classes/Node.xml:940
msgid ""
"Notification received from the OS when a go back request is sent (e.g. "
"pressing the \"Back\" button on Android).\n"
"Specific to the Android platform."
msgstr ""
-#: doc/classes/Node.xml:975
+#: doc/classes/Node.xml:981
msgid ""
"Inherits pause mode from the node's parent. For the root node, it is "
"equivalent to [constant PAUSE_MODE_STOP]. Default."
msgstr ""
-#: doc/classes/Node.xml:978
+#: doc/classes/Node.xml:984
msgid "Stops processing when the [SceneTree] is paused."
msgstr ""
-#: doc/classes/Node.xml:981
+#: doc/classes/Node.xml:987
msgid "Continue to process regardless of the [SceneTree] pause state."
msgstr ""
-#: doc/classes/Node.xml:984
+#: doc/classes/Node.xml:990
msgid "Duplicate the node's signals."
msgstr ""
-#: doc/classes/Node.xml:987
+#: doc/classes/Node.xml:993
msgid "Duplicate the node's groups."
msgstr ""
-#: doc/classes/Node.xml:990
+#: doc/classes/Node.xml:996
msgid "Duplicate the node's scripts."
msgstr ""
-#: doc/classes/Node.xml:993
+#: doc/classes/Node.xml:999
msgid ""
"Duplicate using instancing.\n"
"An instance stays linked to the original so when the original changes, the "
@@ -32066,12 +32662,6 @@ msgid ""
"changes. [Node3D] will not propagate this by default."
msgstr ""
-#: doc/classes/Node3D.xml:104
-msgid ""
-"Returns whether the node is visible, taking into consideration that its "
-"parents visibility."
-msgstr ""
-
#: doc/classes/Node3D.xml:115
msgid ""
"Rotates itself so that the local -Z axis points towards the [code]target[/"
@@ -32241,7 +32831,10 @@ msgid "Local translation of this node."
msgstr ""
#: doc/classes/Node3D.xml:326
-msgid "If [code]true[/code], this node is drawn."
+msgid ""
+"If [code]true[/code], this node is drawn. The node is only visible if all of "
+"its antecedents are visible as well (in other words, [method "
+"is_visible_in_tree] must return [code]true[/code])."
msgstr ""
#: doc/classes/Node3D.xml:332
@@ -32498,10 +33091,20 @@ msgid ""
"the key exists, even if the value is [code]null[/code].\n"
"Objects also receive notifications. Notifications are a simple way to notify "
"the object about different events, so they can all be handled together. See "
-"[method _notification]."
+"[method _notification].\n"
+"[b]Note:[/b] Unlike references to a [Reference], references to an Object "
+"stored in a variable can become invalid without warning. Therefore, it's "
+"recommended to use [Reference] for data classes instead of [Object]."
msgstr ""
-#: doc/classes/Object.xml:30
+#: doc/classes/Object.xml:23 doc/classes/Reference.xml:12
+#: doc/classes/Resource.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/getting_started/workflow/"
+"best_practices/node_alternatives.html"
+msgstr ""
+
+#: doc/classes/Object.xml:32
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method get].\n"
@@ -32509,7 +33112,7 @@ msgid ""
"code] does not exist."
msgstr ""
-#: doc/classes/Object.xml:38
+#: doc/classes/Object.xml:40
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method get_property_list].\n"
@@ -32521,11 +33124,11 @@ msgid ""
"PropertyUsageFlags])."
msgstr ""
-#: doc/classes/Object.xml:47
+#: doc/classes/Object.xml:49
msgid "Called when the object is initialized."
msgstr ""
-#: doc/classes/Object.xml:56
+#: doc/classes/Object.xml:58
msgid ""
"Called whenever the object receives a notification, which is identified in "
"[code]what[/code] by a constant. The base [Object] has two constants "
@@ -32534,7 +33137,7 @@ msgid ""
"notifications which are also received by this method."
msgstr ""
-#: doc/classes/Object.xml:67
+#: doc/classes/Object.xml:69
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method set].\n"
@@ -32542,7 +33145,7 @@ msgid ""
"exists."
msgstr ""
-#: doc/classes/Object.xml:75
+#: doc/classes/Object.xml:77
msgid ""
"Virtual method which can be overridden to customize the return value of "
"[method to_string], and thus the object's representation where it is "
@@ -32551,34 +33154,42 @@ msgid ""
"[code]\"[ClassName:RID]\"[/code]."
msgstr ""
-#: doc/classes/Object.xml:87
+#: doc/classes/Object.xml:89
msgid ""
"Adds a user-defined [code]signal[/code]. Arguments are optional, but can be "
"added as an [Array] of dictionaries, each containing [code]name: String[/"
"code] and [code]type: int[/code] (see [enum Variant.Type]) entries."
msgstr ""
-#: doc/classes/Object.xml:96
+#: doc/classes/Object.xml:98
msgid ""
"Calls the [code]method[/code] on the object and returns the result. This "
"method supports a variable number of arguments, so parameters are passed as "
"a comma separated list. Example:\n"
"[codeblock]\n"
"call(\"set\", \"position\", Vector2(42.0, 0.0))\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] In C#, the method name must be specified as snake_case if it is "
+"defined by a built-in Godot node. This doesn't apply to user-defined methods "
+"where you should use the same convention as in the C# source (typically "
+"PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:108
+#: doc/classes/Object.xml:111
msgid ""
"Calls the [code]method[/code] on the object during idle time. This method "
"supports a variable number of arguments, so parameters are passed as a comma "
"separated list. Example:\n"
"[codeblock]\n"
"call_deferred(\"set\", \"position\", Vector2(42.0, 0.0))\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Note:[/b] In C#, the method name must be specified as snake_case if it is "
+"defined by a built-in Godot node. This doesn't apply to user-defined methods "
+"where you should use the same convention as in the C# source (typically "
+"PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:122
+#: doc/classes/Object.xml:126
msgid ""
"Calls the [code]method[/code] on the object and returns the result. "
"Contrarily to [method call], this method does not support a variable number "
@@ -32588,13 +33199,13 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:132
+#: doc/classes/Object.xml:136
msgid ""
"Returns [code]true[/code] if the object can translate strings. See [method "
"set_message_translation] and [method tr]."
msgstr ""
-#: doc/classes/Object.xml:147
+#: doc/classes/Object.xml:151
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32630,7 +33241,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:174
+#: doc/classes/Object.xml:178
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32641,7 +33252,7 @@ msgid ""
"exists."
msgstr ""
-#: doc/classes/Object.xml:185
+#: doc/classes/Object.xml:189
msgid ""
"Emits the given [code]signal[/code]. The signal must exist, so it should be "
"a built-in signal of this class or one of its parent classes, or a user-"
@@ -32653,24 +33264,28 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:196
+#: doc/classes/Object.xml:200
msgid ""
"Deletes the object from memory. Any pre-existing reference to the freed "
"object will become invalid, e.g. [code]is_instance_valid(object)[/code] will "
"return [code]false[/code]."
msgstr ""
-#: doc/classes/Object.xml:205
+#: doc/classes/Object.xml:209
msgid ""
"Returns the [Variant] value of the given [code]property[/code]. If the "
-"[code]property[/code] doesn't exist, this will return [code]null[/code]."
+"[code]property[/code] doesn't exist, this will return [code]null[/code].\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:212
+#: doc/classes/Object.xml:217
msgid "Returns the object's class as a [String]."
msgstr ""
-#: doc/classes/Object.xml:219
+#: doc/classes/Object.xml:224
msgid ""
"Returns an [Array] of dictionaries with information about signals that are "
"connected to the object.\n"
@@ -32681,7 +33296,7 @@ msgid ""
"connected."
msgstr ""
-#: doc/classes/Object.xml:232
+#: doc/classes/Object.xml:237
msgid ""
"Gets the object's property indexed by the given [NodePath]. The node path "
"should be relative to the current object and can use the colon character "
@@ -32689,26 +33304,26 @@ msgid ""
"\"[/code] or [code]\"material:next_pass:blend_mode\"[/code]."
msgstr ""
-#: doc/classes/Object.xml:239
+#: doc/classes/Object.xml:244
msgid ""
"Returns the object's unique instance ID.\n"
"This ID can be saved in [EncodedObjectAsID], and can be used to retrieve the "
"object instance with [method @GDScript.instance_from_id]."
msgstr ""
-#: doc/classes/Object.xml:249
+#: doc/classes/Object.xml:254
msgid "Returns the object's metadata entry for the given [code]name[/code]."
msgstr ""
-#: doc/classes/Object.xml:256
+#: doc/classes/Object.xml:261
msgid "Returns the object's metadata as a [PackedStringArray]."
msgstr ""
-#: doc/classes/Object.xml:263
+#: doc/classes/Object.xml:268
msgid "Returns the object's methods and their signatures as an [Array]."
msgstr ""
-#: doc/classes/Object.xml:270
+#: doc/classes/Object.xml:275
msgid ""
"Returns the object's property list as an [Array] of dictionaries.\n"
"Each property's [Dictionary] contain at least [code]name: String[/code] and "
@@ -32718,54 +33333,54 @@ msgid ""
"PropertyUsageFlags])."
msgstr ""
-#: doc/classes/Object.xml:278
+#: doc/classes/Object.xml:283
msgid ""
"Returns the object's [Script] instance, or [code]null[/code] if none is "
"assigned."
msgstr ""
-#: doc/classes/Object.xml:287
+#: doc/classes/Object.xml:292
msgid "Returns an [Array] of connections for the given [code]signal[/code]."
msgstr ""
-#: doc/classes/Object.xml:294
+#: doc/classes/Object.xml:299
msgid "Returns the list of signals as an [Array] of dictionaries."
msgstr ""
-#: doc/classes/Object.xml:303
+#: doc/classes/Object.xml:308
msgid ""
"Returns [code]true[/code] if a metadata entry is found with the given "
"[code]name[/code]."
msgstr ""
-#: doc/classes/Object.xml:312
+#: doc/classes/Object.xml:317
msgid ""
"Returns [code]true[/code] if the object contains the given [code]method[/"
"code]."
msgstr ""
-#: doc/classes/Object.xml:321
+#: doc/classes/Object.xml:326
msgid "Returns [code]true[/code] if the given [code]signal[/code] exists."
msgstr ""
-#: doc/classes/Object.xml:330
+#: doc/classes/Object.xml:335
msgid ""
"Returns [code]true[/code] if the given user-defined [code]signal[/code] "
"exists. Only signals added using [method add_user_signal] are taken into "
"account."
msgstr ""
-#: doc/classes/Object.xml:337
+#: doc/classes/Object.xml:342
msgid "Returns [code]true[/code] if signal emission blocking is enabled."
msgstr ""
-#: doc/classes/Object.xml:346
+#: doc/classes/Object.xml:351
msgid ""
"Returns [code]true[/code] if the object inherits from the given [code]class[/"
"code]."
msgstr ""
-#: doc/classes/Object.xml:357
+#: doc/classes/Object.xml:362
msgid ""
"[b]FIXME:[/b] The syntax changed with the addition of [Callable], this "
"should be updated.\n"
@@ -32773,13 +33388,13 @@ msgid ""
"code], [code]target[/code], and [code]method[/code]."
msgstr ""
-#: doc/classes/Object.xml:365
+#: doc/classes/Object.xml:370
msgid ""
"Returns [code]true[/code] if the [method Node.queue_free] method was called "
"for the object."
msgstr ""
-#: doc/classes/Object.xml:376
+#: doc/classes/Object.xml:381
msgid ""
"Send a given notification to the object, which will also trigger a call to "
"the [method _notification] method of all classes that the object inherits "
@@ -32791,34 +33406,42 @@ msgid ""
"and then down to its successive inheriting classes."
msgstr ""
-#: doc/classes/Object.xml:384
+#: doc/classes/Object.xml:389
msgid ""
"Notify the editor that the property list has changed, so that editor plugins "
"can take the new values into account. Does nothing on export builds."
msgstr ""
-#: doc/classes/Object.xml:393
+#: doc/classes/Object.xml:398
msgid "Removes a given entry from the object's metadata."
msgstr ""
-#: doc/classes/Object.xml:404
+#: doc/classes/Object.xml:409
msgid ""
"Assigns a new value to the given property. If the [code]property[/code] does "
-"not exist, nothing will happen."
+"not exist, nothing will happen.\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:413
+#: doc/classes/Object.xml:419
msgid "If set to [code]true[/code], signal emission is blocked."
msgstr ""
-#: doc/classes/Object.xml:424
+#: doc/classes/Object.xml:430
msgid ""
"Assigns a new value to the given property, after the current frame's physics "
"step. This is equivalent to calling [method set] via [method call_deferred], "
-"i.e. [code]call_deferred(\"set\", property, value)[/code]."
+"i.e. [code]call_deferred(\"set\", property, value)[/code].\n"
+"[b]Note:[/b] In C#, the property name must be specified as snake_case if it "
+"is defined by a built-in Godot node. This doesn't apply to user-defined "
+"properties where you should use the same convention as in the C# source "
+"(typically PascalCase)."
msgstr ""
-#: doc/classes/Object.xml:435
+#: doc/classes/Object.xml:442
msgid ""
"Assigns a new value to the property identified by the [NodePath]. The node "
"path should be relative to the current object and can use the colon "
@@ -32830,19 +33453,19 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Object.xml:449
+#: doc/classes/Object.xml:456
msgid ""
"Defines whether the object can translate strings (with calls to [method "
"tr]). Enabled by default."
msgstr ""
-#: doc/classes/Object.xml:460
+#: doc/classes/Object.xml:467
msgid ""
"Adds or changes a given entry in the object's metadata. Metadata are "
"serialized, and can take any [Variant] value."
msgstr ""
-#: doc/classes/Object.xml:469
+#: doc/classes/Object.xml:476
msgid ""
"Assigns a script to the object. Each object can have a single script "
"assigned to it, which are used to extend its functionality.\n"
@@ -32851,7 +33474,7 @@ msgid ""
"_init] method will be called."
msgstr ""
-#: doc/classes/Object.xml:477
+#: doc/classes/Object.xml:484
msgid ""
"Returns a [String] representing the object. If not overridden, defaults to "
"[code]\"[ClassName:RID]\"[/code].\n"
@@ -32859,7 +33482,7 @@ msgid ""
"representation."
msgstr ""
-#: doc/classes/Object.xml:487
+#: doc/classes/Object.xml:494
msgid ""
"Translates a message using translation catalogs configured in the Project "
"Settings.\n"
@@ -32868,35 +33491,35 @@ msgid ""
"set_message_translation]."
msgstr ""
-#: doc/classes/Object.xml:495
+#: doc/classes/Object.xml:502
msgid "Emitted whenever the object's script is changed."
msgstr ""
-#: doc/classes/Object.xml:501
+#: doc/classes/Object.xml:508
msgid "Called right when the object is initialized. Not available in script."
msgstr ""
-#: doc/classes/Object.xml:504
+#: doc/classes/Object.xml:511
msgid "Called before the object is about to be deleted."
msgstr ""
-#: doc/classes/Object.xml:507
+#: doc/classes/Object.xml:514
msgid ""
"Connects a signal in deferred mode. This way, signal emissions are stored in "
"a queue, then set on idle time."
msgstr ""
-#: doc/classes/Object.xml:510
+#: doc/classes/Object.xml:517
msgid "Persisting connections are saved when the object is serialized to file."
msgstr ""
-#: doc/classes/Object.xml:513
+#: doc/classes/Object.xml:520
msgid "One-shot connections disconnect themselves after emission."
msgstr ""
-#: doc/classes/Object.xml:516
+#: doc/classes/Object.xml:523
msgid ""
-"Connect a signal as reference counted. This means that a given signal can be "
+"Connect a signal as reference-counted. This means that a given signal can be "
"connected several times to the same target, and will only be fully "
"disconnected once no references are left."
msgstr ""
@@ -33361,10 +33984,29 @@ msgid "Returns the keycode of the given string (e.g. \"Escape\")."
msgstr ""
#: doc/classes/OS.xml:115
-msgid "Returns the command line arguments passed to the engine."
+msgid ""
+"Returns the command-line arguments passed to the engine.\n"
+"Command-line arguments can be written in any form, including both [code]--"
+"key value[/code] and [code]--key=value[/code] forms so they can be properly "
+"parsed, as long as custom command-line arguments do not conflict with engine "
+"arguments.\n"
+"You can also incorporate environment variables using the [method "
+"get_environment] method.\n"
+"You can set [code]editor/main_run_args[/code] in the Project Settings to "
+"define command-line arguments to be passed by the editor when running the "
+"project.\n"
+"Here's a minimal example on how to parse command-line arguments into a "
+"dictionary using the [code]--key=value[/code] form for arguments:\n"
+"[codeblock]\n"
+"var arguments = {}\n"
+"for argument in OS.get_cmdline_args():\n"
+" if argument.find(\"=\") > -1:\n"
+" var key_value = argument.split(\"=\")\n"
+" arguments[key_value[0].lstrip(\"--\")] = key_value[1]\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/OS.xml:122
+#: doc/classes/OS.xml:133
msgid ""
"Returns an array of MIDI device names.\n"
"The returned array will be empty if the system MIDI driver has not "
@@ -33372,14 +34014,14 @@ msgid ""
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:133
+#: doc/classes/OS.xml:144
msgid ""
"Returns current date as a dictionary of keys: [code]year[/code], "
"[code]month[/code], [code]day[/code], [code]weekday[/code], [code]dst[/code] "
"(Daylight Savings Time)."
msgstr ""
-#: doc/classes/OS.xml:142
+#: doc/classes/OS.xml:153
msgid ""
"Returns current datetime as a dictionary of keys: [code]year[/code], "
"[code]month[/code], [code]day[/code], [code]weekday[/code], [code]dst[/code] "
@@ -33387,7 +34029,7 @@ msgid ""
"[code]second[/code]."
msgstr ""
-#: doc/classes/OS.xml:151
+#: doc/classes/OS.xml:162
msgid ""
"Gets a dictionary of time values corresponding to the given UNIX epoch time "
"(in seconds).\n"
@@ -33396,22 +34038,22 @@ msgid ""
"the epoch."
msgstr ""
-#: doc/classes/OS.xml:161
+#: doc/classes/OS.xml:172
msgid "Returns an environment variable."
msgstr ""
-#: doc/classes/OS.xml:168
+#: doc/classes/OS.xml:179
msgid "Returns the path to the current engine executable."
msgstr ""
-#: doc/classes/OS.xml:175
+#: doc/classes/OS.xml:186
msgid ""
"With this function you can get the list of dangerous permissions that have "
"been granted to the Android application.\n"
"[b]Note:[/b] This method is implemented on Android."
msgstr ""
-#: doc/classes/OS.xml:185
+#: doc/classes/OS.xml:196
msgid ""
"Returns the given keycode as a string (e.g. Return values: [code]\"Escape\"[/"
"code], [code]\"Shift+Escape\"[/code]).\n"
@@ -33419,18 +34061,18 @@ msgid ""
"get_keycode_with_modifiers]."
msgstr ""
-#: doc/classes/OS.xml:193
+#: doc/classes/OS.xml:204
msgid "Returns the host OS locale."
msgstr ""
-#: doc/classes/OS.xml:200
+#: doc/classes/OS.xml:211
msgid ""
"Returns the model name of the current device.\n"
"[b]Note:[/b] This method is implemented on Android and iOS. Returns "
"[code]\"GenericDevice\"[/code] on unsupported platforms."
msgstr ""
-#: doc/classes/OS.xml:208
+#: doc/classes/OS.xml:219
msgid ""
"Returns the name of the host OS. Possible values are: [code]\"Android\"[/"
"code], [code]\"iOS\"[/code], [code]\"HTML5\"[/code], [code]\"OSX\"[/code], "
@@ -33438,81 +34080,81 @@ msgid ""
"[code]\"X11\"[/code]."
msgstr ""
-#: doc/classes/OS.xml:215
+#: doc/classes/OS.xml:226
msgid ""
"Returns the project's process ID.\n"
"[b]Note:[/b] This method is implemented on Android, iOS, Linux, macOS and "
"Windows."
msgstr ""
-#: doc/classes/OS.xml:223
+#: doc/classes/OS.xml:234
msgid "Returns the number of threads available on the host machine."
msgstr ""
-#: doc/classes/OS.xml:230
+#: doc/classes/OS.xml:241
msgid ""
"Returns the amount of time in milliseconds it took for the boot logo to "
"appear."
msgstr ""
-#: doc/classes/OS.xml:237
+#: doc/classes/OS.xml:248
msgid "Returns the maximum amount of static memory used (only works in debug)."
msgstr ""
-#: doc/classes/OS.xml:244
+#: doc/classes/OS.xml:255
msgid "Returns the amount of static memory being used by the program in bytes."
msgstr ""
-#: doc/classes/OS.xml:253
+#: doc/classes/OS.xml:264
msgid ""
"Returns the actual path to commonly used folders across different platforms. "
"Available locations are specified in [enum SystemDir].\n"
"[b]Note:[/b] This method is implemented on Android, Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:261
+#: doc/classes/OS.xml:272
msgid ""
"Returns the total number of available tablet drivers.\n"
"[b]Note:[/b] This method is implemented on Windows."
msgstr ""
-#: doc/classes/OS.xml:271
+#: doc/classes/OS.xml:282
msgid ""
"Returns the tablet driver name for the given index.\n"
"[b]Note:[/b] This method is implemented on Windows."
msgstr ""
-#: doc/classes/OS.xml:279
+#: doc/classes/OS.xml:290
msgid ""
"Returns the amount of time passed in milliseconds since the engine started."
msgstr ""
-#: doc/classes/OS.xml:286
+#: doc/classes/OS.xml:297
msgid ""
"Returns the amount of time passed in microseconds since the engine started."
msgstr ""
-#: doc/classes/OS.xml:295
+#: doc/classes/OS.xml:306
msgid "Returns current time as a dictionary of keys: hour, minute, second."
msgstr ""
-#: doc/classes/OS.xml:302
+#: doc/classes/OS.xml:313
msgid ""
"Returns the current time zone as a dictionary with the keys: bias and name."
msgstr ""
-#: doc/classes/OS.xml:309
+#: doc/classes/OS.xml:320
msgid ""
"Returns a string that is unique to the device.\n"
"[b]Note:[/b] Returns an empty string on HTML5 and UWP, as this method isn't "
"implemented on those platforms yet."
msgstr ""
-#: doc/classes/OS.xml:317
+#: doc/classes/OS.xml:328
msgid "Returns the current UNIX epoch timestamp."
msgstr ""
-#: doc/classes/OS.xml:326
+#: doc/classes/OS.xml:337
msgid ""
"Gets an epoch time value from a dictionary of time values.\n"
"[code]datetime[/code] must be populated with the following keys: [code]year[/"
@@ -33523,7 +34165,7 @@ msgid ""
"ignored."
msgstr ""
-#: doc/classes/OS.xml:335
+#: doc/classes/OS.xml:346
msgid ""
"Returns the absolute directory path where user data is written ([code]user://"
"[/code]).\n"
@@ -33541,11 +34183,11 @@ msgid ""
"[/code]."
msgstr ""
-#: doc/classes/OS.xml:348
+#: doc/classes/OS.xml:359
msgid "Returns [code]true[/code] if an environment variable exists."
msgstr ""
-#: doc/classes/OS.xml:357
+#: doc/classes/OS.xml:368
msgid ""
"Returns [code]true[/code] if the feature for the given feature tag is "
"supported in the currently running instance, depending on platform, build "
@@ -33556,7 +34198,7 @@ msgid ""
"[b]Note:[/b] Tag names are case-sensitive."
msgstr ""
-#: doc/classes/OS.xml:365
+#: doc/classes/OS.xml:376
msgid ""
"Returns [code]true[/code] if the Godot binary used to run the project is a "
"[i]debug[/i] export template, or when running in the editor.\n"
@@ -33567,26 +34209,26 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/OS.xml:376
+#: doc/classes/OS.xml:387
msgid ""
"Returns [code]true[/code] if the input keycode corresponds to a Unicode "
"character."
msgstr ""
-#: doc/classes/OS.xml:383
+#: doc/classes/OS.xml:394
msgid ""
"Returns [code]true[/code] if the engine was executed with [code]-v[/code] "
"(verbose stdout)."
msgstr ""
-#: doc/classes/OS.xml:390
+#: doc/classes/OS.xml:401
msgid ""
"If [code]true[/code], the [code]user://[/code] file system is persistent, so "
"that its state is the same after a player quits and starts the game again. "
"Relevant to the HTML5 platform, where this persistence may be unavailable."
msgstr ""
-#: doc/classes/OS.xml:399
+#: doc/classes/OS.xml:410
msgid ""
"Kill (terminate) the process identified by the given process ID ([code]pid[/"
"code]), e.g. the one returned by [method execute] in non-blocking mode.\n"
@@ -33596,37 +34238,37 @@ msgid ""
"Windows."
msgstr ""
-#: doc/classes/OS.xml:408
+#: doc/classes/OS.xml:419
msgid ""
"Initialises the singleton for the system MIDI driver.\n"
"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
msgstr ""
-#: doc/classes/OS.xml:418
+#: doc/classes/OS.xml:429
msgid ""
"Shows all resources in the game. Optionally, the list can be written to a "
"file by specifying a file path in [code]tofile[/code]."
msgstr ""
-#: doc/classes/OS.xml:425
+#: doc/classes/OS.xml:436
msgid "Shows the list of loaded textures sorted by size in memory."
msgstr ""
-#: doc/classes/OS.xml:434
+#: doc/classes/OS.xml:445
msgid "Shows the number of resources loaded by the game of the given types."
msgstr ""
-#: doc/classes/OS.xml:443
+#: doc/classes/OS.xml:454
msgid "Shows all resources currently used by the game."
msgstr ""
-#: doc/classes/OS.xml:452
+#: doc/classes/OS.xml:463
msgid ""
"At the moment this function is only used by [code]AudioDriverOpenSL[/code] "
"to request permission for [code]RECORD_AUDIO[/code] on Android."
msgstr ""
-#: doc/classes/OS.xml:459
+#: doc/classes/OS.xml:470
msgid ""
"With this function you can request dangerous permissions since normal "
"permissions are automatically granted at install time in Android "
@@ -33634,15 +34276,15 @@ msgid ""
"[b]Note:[/b] This method is implemented on Android."
msgstr ""
-#: doc/classes/OS.xml:469
+#: doc/classes/OS.xml:480
msgid "Sets the name of the current thread."
msgstr ""
-#: doc/classes/OS.xml:478
+#: doc/classes/OS.xml:489
msgid "Enables backup saves if [code]enabled[/code] is [code]true[/code]."
msgstr ""
-#: doc/classes/OS.xml:487
+#: doc/classes/OS.xml:498
msgid ""
"Requests the OS to open a resource with the most appropriate program. For "
"example:\n"
@@ -33661,7 +34303,7 @@ msgid ""
"and Windows."
msgstr ""
-#: doc/classes/OS.xml:498
+#: doc/classes/OS.xml:509
msgid ""
"The exit code passed to the OS when the main loop exits. By convention, an "
"exit code of [code]0[/code] indicates success whereas a non-zero exit code "
@@ -33671,137 +34313,137 @@ msgid ""
"with an [code]exit_code[/code] argument passed."
msgstr ""
-#: doc/classes/OS.xml:502
+#: doc/classes/OS.xml:513
msgid ""
"If [code]true[/code], the engine optimizes for low processor usage by only "
"refreshing the screen if needed. Can improve battery consumption on mobile."
msgstr ""
-#: doc/classes/OS.xml:505
+#: doc/classes/OS.xml:516
msgid ""
"The amount of sleeping between frames when the low-processor usage mode is "
"enabled (in microseconds). Higher values will result in lower CPU usage."
msgstr ""
-#: doc/classes/OS.xml:508
-msgid "The current tablet drvier in use."
+#: doc/classes/OS.xml:519
+msgid "The current tablet driver in use."
msgstr ""
-#: doc/classes/OS.xml:513
+#: doc/classes/OS.xml:524
msgid ""
"The GLES2 rendering backend. It uses OpenGL ES 2.0 on mobile devices, OpenGL "
"2.1 on desktop platforms and WebGL 1.0 on the web."
msgstr ""
-#: doc/classes/OS.xml:516
+#: doc/classes/OS.xml:527
msgid "The Vulkan rendering backend."
msgstr ""
-#: doc/classes/OS.xml:519
+#: doc/classes/OS.xml:530
msgid "Sunday."
msgstr ""
-#: doc/classes/OS.xml:522
+#: doc/classes/OS.xml:533
msgid "Monday."
msgstr ""
-#: doc/classes/OS.xml:525
+#: doc/classes/OS.xml:536
msgid "Tuesday."
msgstr ""
-#: doc/classes/OS.xml:528
+#: doc/classes/OS.xml:539
msgid "Wednesday."
msgstr ""
-#: doc/classes/OS.xml:531
+#: doc/classes/OS.xml:542
msgid "Thursday."
msgstr ""
-#: doc/classes/OS.xml:534
+#: doc/classes/OS.xml:545
msgid "Friday."
msgstr ""
-#: doc/classes/OS.xml:537
+#: doc/classes/OS.xml:548
msgid "Saturday."
msgstr ""
-#: doc/classes/OS.xml:540
+#: doc/classes/OS.xml:551
msgid "January."
msgstr ""
-#: doc/classes/OS.xml:543
+#: doc/classes/OS.xml:554
msgid "February."
msgstr ""
-#: doc/classes/OS.xml:546
+#: doc/classes/OS.xml:557
msgid "March."
msgstr ""
-#: doc/classes/OS.xml:549
+#: doc/classes/OS.xml:560
msgid "April."
msgstr ""
-#: doc/classes/OS.xml:552
+#: doc/classes/OS.xml:563
msgid "May."
msgstr ""
-#: doc/classes/OS.xml:555
+#: doc/classes/OS.xml:566
msgid "June."
msgstr ""
-#: doc/classes/OS.xml:558
+#: doc/classes/OS.xml:569
msgid "July."
msgstr ""
-#: doc/classes/OS.xml:561
+#: doc/classes/OS.xml:572
msgid "August."
msgstr ""
-#: doc/classes/OS.xml:564
+#: doc/classes/OS.xml:575
msgid "September."
msgstr ""
-#: doc/classes/OS.xml:567
+#: doc/classes/OS.xml:578
msgid "October."
msgstr ""
-#: doc/classes/OS.xml:570
+#: doc/classes/OS.xml:581
msgid "November."
msgstr ""
-#: doc/classes/OS.xml:573
+#: doc/classes/OS.xml:584
msgid "December."
msgstr ""
-#: doc/classes/OS.xml:576
+#: doc/classes/OS.xml:587
msgid "Desktop directory path."
msgstr ""
-#: doc/classes/OS.xml:579
+#: doc/classes/OS.xml:590
msgid "DCIM (Digital Camera Images) directory path."
msgstr ""
-#: doc/classes/OS.xml:582
+#: doc/classes/OS.xml:593
msgid "Documents directory path."
msgstr ""
-#: doc/classes/OS.xml:585
+#: doc/classes/OS.xml:596
msgid "Downloads directory path."
msgstr ""
-#: doc/classes/OS.xml:588
+#: doc/classes/OS.xml:599
msgid "Movies directory path."
msgstr ""
-#: doc/classes/OS.xml:591
+#: doc/classes/OS.xml:602
msgid "Music directory path."
msgstr ""
-#: doc/classes/OS.xml:594
+#: doc/classes/OS.xml:605
msgid "Pictures directory path."
msgstr ""
-#: doc/classes/OS.xml:597
+#: doc/classes/OS.xml:608
msgid "Ringtones directory path."
msgstr ""
@@ -33856,7 +34498,15 @@ msgid ""
"should always be preferred."
msgstr ""
-#: doc/classes/PackedByteArray.xml:85
+#: doc/classes/PackedByteArray.xml:87 doc/classes/PackedColorArray.xml:53
+#: doc/classes/PackedFloat32Array.xml:54 doc/classes/PackedFloat64Array.xml:54
+#: doc/classes/PackedInt32Array.xml:54 doc/classes/PackedInt64Array.xml:54
+#: doc/classes/PackedStringArray.xml:53 doc/classes/PackedVector2Array.xml:53
+#: doc/classes/PackedVector3Array.xml:53
+msgid "Returns [code]true[/code] if the array contains [code]value[/code]."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:94
msgid ""
"Returns a hexadecimal representation of this array as a [String].\n"
"[codeblock]\n"
@@ -33865,39 +34515,48 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/PackedByteArray.xml:100 doc/classes/PackedColorArray.xml:55
-#: doc/classes/PackedFloat32Array.xml:56 doc/classes/PackedFloat64Array.xml:56
-#: doc/classes/PackedStringArray.xml:55 doc/classes/PackedVector2Array.xml:55
-#: doc/classes/PackedVector3Array.xml:55
+#: doc/classes/PackedByteArray.xml:109 doc/classes/PackedColorArray.xml:64
+#: doc/classes/PackedFloat32Array.xml:65 doc/classes/PackedFloat64Array.xml:65
+#: doc/classes/PackedStringArray.xml:64 doc/classes/PackedVector2Array.xml:64
+#: doc/classes/PackedVector3Array.xml:64
msgid ""
"Inserts a new element at a given position in the array. The position must be "
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PackedByteArray.xml:134 doc/classes/PackedColorArray.xml:89
-#: doc/classes/PackedFloat32Array.xml:90 doc/classes/PackedFloat64Array.xml:90
-#: doc/classes/PackedInt32Array.xml:90 doc/classes/PackedInt64Array.xml:90
-#: doc/classes/PackedStringArray.xml:89 doc/classes/PackedVector2Array.xml:89
-#: doc/classes/PackedVector3Array.xml:89
+#: doc/classes/PackedByteArray.xml:143 doc/classes/PackedColorArray.xml:98
+#: doc/classes/PackedFloat32Array.xml:99 doc/classes/PackedFloat64Array.xml:99
+#: doc/classes/PackedInt32Array.xml:99 doc/classes/PackedInt64Array.xml:99
+#: doc/classes/PackedStringArray.xml:98 doc/classes/PackedVector2Array.xml:98
+#: doc/classes/PackedVector3Array.xml:98
msgid ""
"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."
msgstr ""
-#: doc/classes/PackedByteArray.xml:145
+#: doc/classes/PackedByteArray.xml:154
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PackedByteArray.xml:152 doc/classes/PackedColorArray.xml:107
-#: doc/classes/PackedFloat32Array.xml:108
-#: doc/classes/PackedFloat64Array.xml:108 doc/classes/PackedStringArray.xml:107
-#: doc/classes/PackedVector2Array.xml:107
-#: doc/classes/PackedVector3Array.xml:107
+#: doc/classes/PackedByteArray.xml:161 doc/classes/PackedColorArray.xml:116
+#: doc/classes/PackedFloat32Array.xml:117
+#: doc/classes/PackedFloat64Array.xml:117 doc/classes/PackedStringArray.xml:116
+#: doc/classes/PackedVector2Array.xml:116
+#: doc/classes/PackedVector3Array.xml:116
msgid "Returns the size of the array."
msgstr ""
-#: doc/classes/PackedByteArray.xml:163
+#: doc/classes/PackedByteArray.xml:168 doc/classes/PackedColorArray.xml:123
+#: doc/classes/PackedFloat32Array.xml:124
+#: doc/classes/PackedFloat64Array.xml:124 doc/classes/PackedInt32Array.xml:124
+#: doc/classes/PackedInt64Array.xml:124 doc/classes/PackedStringArray.xml:123
+#: doc/classes/PackedVector2Array.xml:123
+#: doc/classes/PackedVector3Array.xml:123
+msgid "Sorts the elements of the array in ascending order."
+msgstr ""
+
+#: doc/classes/PackedByteArray.xml:179
msgid ""
"Returns the slice of the [PackedByteArray] between indices (inclusive) as a "
"new [PackedByteArray]. Any negative index is considered to be from the end "
@@ -33925,12 +34584,12 @@ msgstr ""
msgid "Appends a [PackedColorArray] at the end of this array."
msgstr ""
-#: doc/classes/PackedColorArray.xml:71 doc/classes/PackedInt32Array.xml:72
-#: doc/classes/PackedInt64Array.xml:72
+#: doc/classes/PackedColorArray.xml:80 doc/classes/PackedInt32Array.xml:81
+#: doc/classes/PackedInt64Array.xml:81
msgid "Appends a value to the array."
msgstr ""
-#: doc/classes/PackedColorArray.xml:100
+#: doc/classes/PackedColorArray.xml:109
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -33960,8 +34619,8 @@ msgstr ""
msgid "Appends a [PackedFloat32Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedFloat32Array.xml:101
-#: doc/classes/PackedFloat64Array.xml:101
+#: doc/classes/PackedFloat32Array.xml:110
+#: doc/classes/PackedFloat64Array.xml:110
msgid "Changes the float at the given index."
msgstr ""
@@ -34014,17 +34673,17 @@ msgstr ""
msgid "Appends a [PackedInt32Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:56 doc/classes/PackedInt64Array.xml:56
+#: doc/classes/PackedInt32Array.xml:65 doc/classes/PackedInt64Array.xml:65
msgid ""
"Inserts a new integer at a given position in the array. The position must be "
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:101 doc/classes/PackedInt64Array.xml:101
+#: doc/classes/PackedInt32Array.xml:110 doc/classes/PackedInt64Array.xml:110
msgid "Changes the integer at the given index."
msgstr ""
-#: doc/classes/PackedInt32Array.xml:108 doc/classes/PackedInt64Array.xml:108
+#: doc/classes/PackedInt32Array.xml:117 doc/classes/PackedInt64Array.xml:117
msgid "Returns the array size."
msgstr ""
@@ -34065,6 +34724,14 @@ msgid ""
"Can be used to save a node to a file. When saving, the node as well as all "
"the node it owns get saved (see [code]owner[/code] property on [Node]).\n"
"[b]Note:[/b] The node doesn't need to own itself.\n"
+"[b]Example of loading a saved scene:[/b]\n"
+"[codeblock]\n"
+"# Use `load()` instead of `preload()` if the path isn't known at compile-"
+"time.\n"
+"var scene = preload(\"res://scene.tscn\").instance()\n"
+"# Add the node as a child of the node the script is attached to.\n"
+"add_child(scene)\n"
+"[/codeblock]\n"
"[b]Example of saving a node with different owners:[/b] The following example "
"creates 3 objects: [code]Node2D[/code] ([code]node[/code]), "
"[code]RigidBody2D[/code] ([code]rigid[/code]) and [code]CollisionObject2D[/"
@@ -34096,29 +34763,29 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/PackedScene.xml:40
+#: doc/classes/PackedScene.xml:47
msgid "Returns [code]true[/code] if the scene file has nodes."
msgstr ""
-#: doc/classes/PackedScene.xml:47
+#: doc/classes/PackedScene.xml:54
msgid ""
"Returns the [code]SceneState[/code] representing the scene file contents."
msgstr ""
-#: doc/classes/PackedScene.xml:56
+#: doc/classes/PackedScene.xml:63
msgid ""
"Instantiates the scene's node hierarchy. Triggers child scene "
"instantiation(s). Triggers a [constant Node.NOTIFICATION_INSTANCED] "
"notification on the root node."
msgstr ""
-#: doc/classes/PackedScene.xml:65
+#: doc/classes/PackedScene.xml:72
msgid ""
"Pack will ignore any sub-nodes not owned by given node. See [member Node."
"owner]."
msgstr ""
-#: doc/classes/PackedScene.xml:71
+#: doc/classes/PackedScene.xml:78
msgid ""
"A dictionary representation of the scene contents.\n"
"Available keys include \"rnames\" and \"variants\" for resources, "
@@ -34127,18 +34794,18 @@ msgid ""
"connections, and \"version\" for the format style of the PackedScene."
msgstr ""
-#: doc/classes/PackedScene.xml:77
+#: doc/classes/PackedScene.xml:84
msgid "If passed to [method instance], blocks edits to the scene state."
msgstr ""
-#: doc/classes/PackedScene.xml:80
+#: doc/classes/PackedScene.xml:87
msgid ""
"If passed to [method instance], provides local scene resources to the local "
"scene.\n"
"[b]Note:[/b] Only available in editor builds."
msgstr ""
-#: doc/classes/PackedScene.xml:84
+#: doc/classes/PackedScene.xml:91
msgid ""
"If passed to [method instance], provides local scene resources to the local "
"scene. Only the main scene should receive the main edit state.\n"
@@ -34166,11 +34833,11 @@ msgstr ""
msgid "Appends a [PackedStringArray] at the end of this array."
msgstr ""
-#: doc/classes/PackedStringArray.xml:71
+#: doc/classes/PackedStringArray.xml:80
msgid "Appends a string element at end of the array."
msgstr ""
-#: doc/classes/PackedStringArray.xml:100
+#: doc/classes/PackedStringArray.xml:109
msgid "Changes the [String] at the given index."
msgstr ""
@@ -34195,11 +34862,11 @@ msgstr ""
msgid "Appends a [PackedVector2Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedVector2Array.xml:71
+#: doc/classes/PackedVector2Array.xml:80
msgid "Inserts a [Vector2] at the end."
msgstr ""
-#: doc/classes/PackedVector2Array.xml:100
+#: doc/classes/PackedVector2Array.xml:109
msgid "Changes the [Vector2] at the given index."
msgstr ""
@@ -34224,11 +34891,11 @@ msgstr ""
msgid "Appends a [PackedVector3Array] at the end of this array."
msgstr ""
-#: doc/classes/PackedVector3Array.xml:71
+#: doc/classes/PackedVector3Array.xml:80
msgid "Inserts a [Vector3] at the end."
msgstr ""
-#: doc/classes/PackedVector3Array.xml:100
+#: doc/classes/PackedVector3Array.xml:109
msgid "Changes the [Vector3] at the given index."
msgstr ""
@@ -35119,13 +35786,55 @@ msgid ""
"as the values displayed in the [b]Monitor[/b] tab in the editor's "
"[b]Debugger[/b] panel. By using the [method get_monitor] method of this "
"class, you can access this data from your code.\n"
+"You can add custom monitors using the [method add_custom_monitor] method. "
+"Custom monitors are available in [b]Monitor[/b] tab in the editor's "
+"[b]Debugger[/b] panel together with built-in monitors.\n"
"[b]Note:[/b] A few of these monitors are only available in debug mode and "
"will always return 0 when used in a release build.\n"
"[b]Note:[/b] Many of these monitors are not updated in real-time, so there "
-"may be a short delay between changes."
+"may be a short delay between changes.\n"
+"[b]Note:[/b] Custom monitors do not support negative values. Negative values "
+"are clamped to 0."
+msgstr ""
+
+#: doc/classes/Performance.xml:26
+msgid ""
+"Adds a custom monitor with name same as id. You can specify the category of "
+"monitor using '/' in id. If there are more than one '/' then default "
+"category is used. Default category is \"Custom\".\n"
+"[codeblock]\n"
+"Performance.add_custom_monitor(\"MyCategory/MyMonitor\", some_callable) # "
+"Adds monitor with name \"MyName\" to category \"MyCategory\"\n"
+"Performance.add_custom_monitor(\"MyMonitor\", some_callable) # Adds monitor "
+"with name \"MyName\" to category \"Custom\"\n"
+"# Note: \"MyCategory/MyMonitor\" and \"MyMonitor\" have same name but "
+"different ids so above code is valid\n"
+"Performance.add_custom_monitor(\"Custom/MyMonitor\", some_callable) # Adds "
+"monitor with name \"MyName\" to category \"Custom\"\n"
+"# Note: \"MyMonitor\" and \"Custom/MyMonitor\" have same name and same "
+"category but different ids so above code is valid\n"
+"Performance.add_custom_monitor(\"MyCategoryOne/MyCategoryTwo/MyMonitor\", "
+"some_callable) # Adds monitor with name \"MyCategoryOne/MyCategoryTwo/"
+"MyMonitor\" to category \"Custom\"\n"
+"[/codeblock]\n"
+"The debugger calls the callable to get the value of custom monitor. The "
+"callable must return a number.\n"
+"Callables are called with arguments supplied in argument array.\n"
+"[b]Note:[/b] It throws an error if given id is already present."
+msgstr ""
+
+#: doc/classes/Performance.xml:46
+msgid ""
+"Returns the value of custom monitor with given id. The callable is called to "
+"get the value of custom monitor.\n"
+"[b]Note:[/b] It throws an error if the given id is absent."
+msgstr ""
+
+#: doc/classes/Performance.xml:54
+msgid "Returns the names of active custom monitors in an array."
msgstr ""
-#: doc/classes/Performance.xml:20
+#: doc/classes/Performance.xml:63
msgid ""
"Returns the value of one of the available monitors. You should provide one "
"of the [enum Monitor] constants as the argument, like this:\n"
@@ -35135,123 +35844,139 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Performance.xml:29
+#: doc/classes/Performance.xml:73
+msgid "Returns the last tick in which custom monitor was added/removed."
+msgstr ""
+
+#: doc/classes/Performance.xml:82
+msgid ""
+"Returns true if custom monitor with the given id is present otherwise "
+"returns false."
+msgstr ""
+
+#: doc/classes/Performance.xml:91
+msgid ""
+"Removes the custom monitor with given id.\n"
+"[b]Note:[/b] It throws an error if the given id is already absent."
+msgstr ""
+
+#: doc/classes/Performance.xml:98
msgid "Number of frames per second."
msgstr ""
-#: doc/classes/Performance.xml:32
+#: doc/classes/Performance.xml:101
msgid "Time it took to complete one frame, in seconds."
msgstr ""
-#: doc/classes/Performance.xml:35
+#: doc/classes/Performance.xml:104
msgid "Time it took to complete one physics frame, in seconds."
msgstr ""
-#: doc/classes/Performance.xml:38
+#: doc/classes/Performance.xml:107
msgid ""
"Static memory currently used, in bytes. Not available in release builds."
msgstr ""
-#: doc/classes/Performance.xml:41
+#: doc/classes/Performance.xml:110
msgid "Available static memory. Not available in release builds."
msgstr ""
-#: doc/classes/Performance.xml:44
+#: doc/classes/Performance.xml:113
msgid ""
"Largest amount of memory the message queue buffer has used, in bytes. The "
"message queue is used for deferred functions calls and notifications."
msgstr ""
-#: doc/classes/Performance.xml:47
+#: doc/classes/Performance.xml:116
msgid "Number of objects currently instanced (including nodes)."
msgstr ""
-#: doc/classes/Performance.xml:50
+#: doc/classes/Performance.xml:119
msgid "Number of resources currently used."
msgstr ""
-#: doc/classes/Performance.xml:53
+#: doc/classes/Performance.xml:122
msgid ""
"Number of nodes currently instanced in the scene tree. This also includes "
"the root node."
msgstr ""
-#: doc/classes/Performance.xml:56
+#: doc/classes/Performance.xml:125
msgid ""
"Number of orphan nodes, i.e. nodes which are not parented to a node of the "
"scene tree."
msgstr ""
-#: doc/classes/Performance.xml:59
+#: doc/classes/Performance.xml:128
msgid "3D objects drawn per frame."
msgstr ""
-#: doc/classes/Performance.xml:62
+#: doc/classes/Performance.xml:131
msgid "Vertices drawn per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:65
+#: doc/classes/Performance.xml:134
msgid "Material changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:68
+#: doc/classes/Performance.xml:137
msgid "Shader changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:71
+#: doc/classes/Performance.xml:140
msgid "Render surface changes per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:74
+#: doc/classes/Performance.xml:143
msgid "Draw calls per frame. 3D only."
msgstr ""
-#: doc/classes/Performance.xml:77 doc/classes/RenderingServer.xml:3805
+#: doc/classes/Performance.xml:146 doc/classes/RenderingServer.xml:3816
msgid ""
"The amount of video memory used, i.e. texture and vertex memory combined."
msgstr ""
-#: doc/classes/Performance.xml:80 doc/classes/RenderingServer.xml:3808
+#: doc/classes/Performance.xml:149 doc/classes/RenderingServer.xml:3819
msgid "The amount of texture memory used."
msgstr ""
-#: doc/classes/Performance.xml:83 doc/classes/RenderingServer.xml:3811
+#: doc/classes/Performance.xml:152 doc/classes/RenderingServer.xml:3822
msgid "The amount of vertex memory used."
msgstr ""
-#: doc/classes/Performance.xml:86 doc/classes/RenderingServer.xml:3802
+#: doc/classes/Performance.xml:155 doc/classes/RenderingServer.xml:3813
msgid "Unimplemented in the GLES2 rendering backend, always returns 0."
msgstr ""
-#: doc/classes/Performance.xml:89
+#: doc/classes/Performance.xml:158
msgid "Number of active [RigidBody2D] nodes in the game."
msgstr ""
-#: doc/classes/Performance.xml:92
+#: doc/classes/Performance.xml:161
msgid "Number of collision pairs in the 2D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:95
+#: doc/classes/Performance.xml:164
msgid "Number of islands in the 2D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:98
+#: doc/classes/Performance.xml:167
msgid "Number of active [RigidBody3D] and [VehicleBody3D] nodes in the game."
msgstr ""
-#: doc/classes/Performance.xml:101
+#: doc/classes/Performance.xml:170
msgid "Number of collision pairs in the 3D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:104
+#: doc/classes/Performance.xml:173
msgid "Number of islands in the 3D physics engine."
msgstr ""
-#: doc/classes/Performance.xml:107
+#: doc/classes/Performance.xml:176
msgid "Output latency of the [AudioServer]."
msgstr ""
-#: doc/classes/Performance.xml:110
+#: doc/classes/Performance.xml:179
msgid "Represents the size of the [enum Monitor] enum."
msgstr ""
@@ -35275,27 +36000,27 @@ msgstr ""
msgid "Damps the body's rotation if greater than [code]0[/code]."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:70 doc/classes/RigidBody3D.xml:132
+#: doc/classes/PhysicalBone3D.xml:70 doc/classes/RigidBody3D.xml:139
msgid "Lock the body's rotation in the X axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:73 doc/classes/RigidBody3D.xml:135
+#: doc/classes/PhysicalBone3D.xml:73 doc/classes/RigidBody3D.xml:142
msgid "Lock the body's rotation in the Y axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:76 doc/classes/RigidBody3D.xml:138
+#: doc/classes/PhysicalBone3D.xml:76 doc/classes/RigidBody3D.xml:145
msgid "Lock the body's rotation in the Z axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:79 doc/classes/RigidBody3D.xml:141
+#: doc/classes/PhysicalBone3D.xml:79 doc/classes/RigidBody3D.xml:148
msgid "Lock the body's movement in the X axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:82 doc/classes/RigidBody3D.xml:144
+#: doc/classes/PhysicalBone3D.xml:82 doc/classes/RigidBody3D.xml:151
msgid "Lock the body's movement in the Y axis."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:85 doc/classes/RigidBody3D.xml:147
+#: doc/classes/PhysicalBone3D.xml:85 doc/classes/RigidBody3D.xml:154
msgid "Lock the body's movement in the Z axis."
msgstr ""
@@ -35350,12 +36075,12 @@ msgstr ""
msgid "Damps the body's movement if greater than [code]0[/code]."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:118 doc/classes/RigidBody2D.xml:158
-#: doc/classes/RigidBody3D.xml:175
+#: doc/classes/PhysicalBone3D.xml:118 doc/classes/RigidBody2D.xml:159
+#: doc/classes/RigidBody3D.xml:183
msgid "The body's mass."
msgstr ""
-#: doc/classes/PhysicalBone3D.xml:121 doc/classes/RigidBody3D.xml:188
+#: doc/classes/PhysicalBone3D.xml:121 doc/classes/RigidBody3D.xml:196
msgid ""
"The body's weight based on its mass and the global 3D gravity. Global values "
"are set in [b]Project > Project Settings > Physics > 3d[/b]."
@@ -35662,7 +36387,7 @@ msgid "The inverse of the mass of the body."
msgstr ""
#: doc/classes/PhysicsDirectBodyState2D.xml:195
-#: doc/classes/PhysicsDirectBodyState3D.xml:198 doc/classes/RigidBody2D.xml:155
+#: doc/classes/PhysicsDirectBodyState3D.xml:198 doc/classes/RigidBody2D.xml:156
msgid "The body's linear velocity."
msgstr ""
@@ -36215,7 +36940,7 @@ msgid ""
msgstr ""
#: doc/classes/PhysicsServer2D.xml:620 doc/classes/PhysicsServer3D.xml:637
-#: doc/classes/RigidBody3D.xml:120
+#: doc/classes/RigidBody3D.xml:127
msgid ""
"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."
@@ -37280,47 +38005,64 @@ msgid ""
"collision queries. See also [PhysicsShapeQueryResult2D]."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:18
-msgid ""
-"Sets the [Shape2D] that will be used for collision/intersection queries."
-msgstr ""
-
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:24
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:15
msgid "If [code]true[/code], the query will take [Area2D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:18
msgid ""
"If [code]true[/code], the query will take [PhysicsBody2D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:30
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:30
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:21
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:21
msgid "The physics layer(s) the query will take into account (as a bitmask)."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:33
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:33
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:24
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:24
msgid ""
"The list of objects or object [RID]s that will be excluded from collisions."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:36
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:36 doc/classes/Shape3D.xml:16
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:27 doc/classes/Shape3D.xml:16
msgid "The collision margin for the shape."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:39
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:30
msgid "The motion of the shape being queried for."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:42
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:39
-msgid "The queried shape's [RID]. See also [method set_shape]."
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:33
+msgid ""
+"The [Shape2D] that will be used for collision/intersection queries. This "
+"stores the actual reference which avoids the shape to be released while "
+"being used for queries, so always prefer using this over [member shape_rid]."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters2D.xml:45
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:42
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:36
+msgid ""
+"The queried shape's [RID] that will be used for collision/intersection "
+"queries. Use this over [member shape] if you want to optimize for "
+"performance using the Servers API:\n"
+"[codeblock]\n"
+"var shape_rid = PhysicsServer2D.circle_shape_create()\n"
+"var radius = 64\n"
+"PhysicsServer2D.shape_set_data(shape_rid, radius)\n"
+"\n"
+"var params = PhysicsShapeQueryParameters2D.new()\n"
+"params.shape_rid = shape_rid\n"
+"\n"
+"# Execute physics queries here...\n"
+"\n"
+"# Release the shape when done with physics queries.\n"
+"PhysicsServer2D.free_rid(shape_rid)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters2D.xml:52
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:49
msgid "The queried shape's transform matrix."
msgstr ""
@@ -37334,18 +38076,40 @@ msgid ""
"collision queries. See also [PhysicsShapeQueryResult3D]."
msgstr ""
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:15
+msgid "If [code]true[/code], the query will take [Area3D]s into account."
+msgstr ""
+
#: doc/classes/PhysicsShapeQueryParameters3D.xml:18
msgid ""
-"Sets the [Shape3D] that will be used for collision/intersection queries."
+"If [code]true[/code], the query will take [PhysicsBody3D]s into account."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:24
-msgid "If [code]true[/code], the query will take [Area3D]s into account."
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:30
+msgid ""
+"The [Shape3D] that will be used for collision/intersection queries. This "
+"stores the actual reference which avoids the shape to be released while "
+"being used for queries, so always prefer using this over [member shape_rid]."
msgstr ""
-#: doc/classes/PhysicsShapeQueryParameters3D.xml:27
+#: doc/classes/PhysicsShapeQueryParameters3D.xml:33
msgid ""
-"If [code]true[/code], the query will take [PhysicsBody3D]s into account."
+"The queried shape's [RID] that will be used for collision/intersection "
+"queries. Use this over [member shape] if you want to optimize for "
+"performance using the Servers API:\n"
+"[codeblock]\n"
+"var shape_rid = PhysicsServer3D.shape_create(PhysicsServer3D.SHAPE_SPHERE)\n"
+"var radius = 2.0\n"
+"PhysicsServer3D.shape_set_data(shape_rid, radius)\n"
+"\n"
+"var params = PhysicsShapeQueryParameters3D.new()\n"
+"params.shape_rid = shape_rid\n"
+"\n"
+"# Execute physics queries here...\n"
+"\n"
+"# Release the shape when done with physics queries.\n"
+"PhysicsServer3D.free_rid(shape_rid)\n"
+"[/codeblock]"
msgstr ""
#: doc/classes/PhysicsShapeQueryResult2D.xml:4
@@ -37486,92 +38250,94 @@ msgid ""
"code]."
msgstr ""
-#: doc/classes/Plane.xml:72
-msgid "Returns a point on the plane."
-msgstr ""
-
-#: doc/classes/Plane.xml:83
+#: doc/classes/Plane.xml:76
msgid ""
-"Returns [code]true[/code] if [code]point[/code] is inside the plane (by a "
-"very minimum [code]epsilon[/code] threshold)."
+"Returns [code]true[/code] if [code]point[/code] is inside the plane. "
+"Comparison uses a custom minimum [code]epsilon[/code] threshold."
msgstr ""
-#: doc/classes/Plane.xml:94
+#: doc/classes/Plane.xml:87
msgid ""
"Returns the intersection point of the three planes [code]b[/code], [code]c[/"
"code] and this plane. If no intersection is found, [code]null[/code] is "
"returned."
msgstr ""
-#: doc/classes/Plane.xml:105
+#: doc/classes/Plane.xml:98
msgid ""
"Returns the intersection point of a ray consisting of the position "
"[code]from[/code] and the direction normal [code]dir[/code] with this plane. "
"If no intersection is found, [code]null[/code] is returned."
msgstr ""
-#: doc/classes/Plane.xml:116
+#: doc/classes/Plane.xml:109
msgid ""
"Returns the intersection point of a segment from position [code]begin[/code] "
"to position [code]end[/code] with this plane. If no intersection is found, "
"[code]null[/code] is returned."
msgstr ""
-#: doc/classes/Plane.xml:125
+#: doc/classes/Plane.xml:118
msgid ""
"Returns [code]true[/code] if this plane and [code]plane[/code] are "
"approximately equal, by running [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/Plane.xml:134
+#: doc/classes/Plane.xml:127
msgid ""
"Returns [code]true[/code] if [code]point[/code] is located above the plane."
msgstr ""
-#: doc/classes/Plane.xml:141
+#: doc/classes/Plane.xml:134
msgid "Returns a copy of the plane, normalized."
msgstr ""
-#: doc/classes/Plane.xml:150
+#: doc/classes/Plane.xml:143
msgid ""
-"Returns the orthogonal projection of point [code]p[/code] into a point in "
-"the plane."
+"Returns the orthogonal projection of [code]point[/code] into a point in the "
+"plane."
msgstr ""
-#: doc/classes/Plane.xml:156
+#: doc/classes/Plane.xml:149
msgid ""
-"Distance from the origin to the plane, in the direction of [member normal]."
+"The distance from the origin to the plane, in the direction of [member "
+"normal]. This value is typically non-negative.\n"
+"In the scalar equation of the plane [code]ax + by + cz = d[/code], this is "
+"[code]d[/code], while the [code](a, b, c)[/code] coordinates are represented "
+"by the [member normal] property."
msgstr ""
-#: doc/classes/Plane.xml:159
+#: doc/classes/Plane.xml:153
msgid ""
-"The normal of the plane. \"Over\" or \"Above\" the plane is considered the "
-"side of the plane towards where the normal is pointing."
+"The normal of the plane, which must be normalized.\n"
+"In the scalar equation of the plane [code]ax + by + cz = d[/code], this is "
+"the vector [code](a, b, c)[/code], where [code]d[/code] is the [member d] "
+"property."
msgstr ""
-#: doc/classes/Plane.xml:162
-msgid "The [member normal]'s X component."
+#: doc/classes/Plane.xml:157
+msgid "The X component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:165
-msgid "The [member normal]'s Y component."
+#: doc/classes/Plane.xml:160
+msgid "The Y component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:168
-msgid "The [member normal]'s Z component."
+#: doc/classes/Plane.xml:163
+msgid "The Z component of the plane's [member normal] vector."
msgstr ""
-#: doc/classes/Plane.xml:173
-msgid "A plane that extends in the Y and Z axes."
+#: doc/classes/Plane.xml:168
+msgid "A plane that extends in the Y and Z axes (normal vector points +X)."
msgstr ""
-#: doc/classes/Plane.xml:176
-msgid "A plane that extends in the X and Z axes."
+#: doc/classes/Plane.xml:171
+msgid "A plane that extends in the X and Z axes (normal vector points +Y)."
msgstr ""
-#: doc/classes/Plane.xml:179
-msgid "A plane that extends in the X and Y axes."
+#: doc/classes/Plane.xml:174
+msgid "A plane that extends in the X and Y axes (normal vector points +Z)."
msgstr ""
#: doc/classes/PlaneMesh.xml:4
@@ -38282,18 +39048,25 @@ msgstr ""
#: doc/classes/PrimitiveMesh.xml:16
msgid ""
-"Returns mesh arrays used to constitute surface of [Mesh]. Mesh arrays can be "
-"used with [ArrayMesh] to create new surfaces."
+"Returns mesh arrays used to constitute surface of [Mesh]. The result can be "
+"passed to [method ArrayMesh.add_surface_from_arrays] to create a new "
+"surface. For example:\n"
+"[codeblock]\n"
+"var c := CylinderMesh.new()\n"
+"var arr_mesh := ArrayMesh.new()\n"
+"arr_mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLES, c."
+"get_mesh_arrays())\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:22
+#: doc/classes/PrimitiveMesh.xml:27
msgid ""
"Overrides the [AABB] with one defined by user for use with frustum culling. "
"Especially useful to avoid unnexpected culling when using a shader to "
"offset vertices."
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:25
+#: doc/classes/PrimitiveMesh.xml:30
msgid ""
"If set, the order of the vertices in each triangle are reversed resulting in "
"the backside of the mesh being drawn.\n"
@@ -38301,7 +39074,7 @@ msgid ""
"[member BaseMaterial3D.cull_mode]."
msgstr ""
-#: doc/classes/PrimitiveMesh.xml:29
+#: doc/classes/PrimitiveMesh.xml:34
msgid "The current [Material] of the primitive mesh."
msgstr ""
@@ -38732,11 +39505,17 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:260
msgid ""
+"Safer override for [member audio/output_latency] in the Web platform, to "
+"avoid audio issues especially on mobile devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:263
+msgid ""
"Setting to hardcode audio delay when playing video. Best to leave this "
"untouched unless you know what you are doing."
msgstr ""
-#: doc/classes/ProjectSettings.xml:263
+#: doc/classes/ProjectSettings.xml:266
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -38746,7 +39525,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:269
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -38756,27 +39535,27 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:269
+#: doc/classes/ProjectSettings.xml:272
msgid ""
"The default compression level for Zstandard. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
"speed. Decompression speed is mostly unaffected by the compression level."
msgstr ""
-#: doc/classes/ProjectSettings.xml:272
+#: doc/classes/ProjectSettings.xml:275
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:278
msgid ""
"Largest size limit (in power of 2) allowed when compressing using long-"
"distance matching with Zstandard. Higher values can result in better "
"compression, but will require more memory when compressing and decompressing."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:281
msgid ""
"If [code]true[/code], displays getters and setters in autocompletion results "
"in the script editor. This setting is meant to be used when porting old "
@@ -38784,74 +39563,55 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:281
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:284
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:287
+#: doc/classes/ProjectSettings.xml:294
msgid ""
"If [code]true[/code], enables specific GDScript warnings (see [code]debug/"
"gdscript/warnings/*[/code] settings). If [code]false[/code], disables all "
"GDScript warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
-msgid ""
-"If [code]true[/code], enables warnings when a function is declared with the "
-"same name as a constant."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:296
-msgid ""
-"If [code]true[/code], enables warnings when a function is declared with the "
-"same name as a variable. This will turn into an error in a future version "
-"when first-class functions become supported in GDScript."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:299
-msgid ""
-"If [code]true[/code], enables warnings when a function assigned to a "
-"variable may yield and return a function state instead of a value."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:302
+#: doc/classes/ProjectSettings.xml:300
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:303
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when dividing an integer by another "
"integer (the decimal part will be discarded)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when passing a floating-point value "
"to a function that expects an integer (it will be converted and lose "
"precision)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:314
+#: doc/classes/ProjectSettings.xml:312
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
@@ -38872,102 +39632,85 @@ msgid ""
"member variable)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:323
+#: doc/classes/ProjectSettings.xml:325
msgid ""
"If [code]true[/code], enables warnings when calling an expression that has "
"no effect on the surrounding code, such as writing [code]2 + 2[/code] as a "
"statement."
msgstr ""
-#: doc/classes/ProjectSettings.xml:326
+#: doc/classes/ProjectSettings.xml:328
msgid ""
"If [code]true[/code], enables warnings when calling a ternary expression "
"that has no effect on the surrounding code, such as writing [code]42 if "
"active else 0[/code] as a statement."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:331
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:334
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:335
+#: doc/classes/ProjectSettings.xml:337
msgid ""
"If [code]true[/code], enables warnings when assigning a variable using an "
"assignment operator like [code]+=[/code] if the variable wasn't previously "
"assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:338
+#: doc/classes/ProjectSettings.xml:340
msgid ""
"If [code]true[/code], enables warnings when unreachable code is detected "
"(such as after a [code]return[/code] statement that will always be executed)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:345
msgid ""
"If [code]true[/code], enables warnings when using an expression whose type "
"may not be compatible with the function parameter expected."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:348
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:347
+#: doc/classes/ProjectSettings.xml:351
msgid ""
"If [code]true[/code], enables warnings when calling a method whose presence "
"is not guaranteed at compile-time in the class."
msgstr ""
-#: doc/classes/ProjectSettings.xml:350
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], enables warnings when accessing a property whose "
"presence is not guaranteed at compile-time in the class."
msgstr ""
-#: doc/classes/ProjectSettings.xml:353
-msgid ""
-"If [code]true[/code], enables warnings when a function parameter is unused."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:356
-msgid ""
-"If [code]true[/code], enables warnings when a member variable is unused."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:363
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:362
+#: doc/classes/ProjectSettings.xml:366
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:365
-msgid ""
-"If [code]true[/code], enables warnings when a variable is declared with the "
-"same name as a function. This will turn into an error in a future version "
-"when first-class functions become supported in GDScript."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:368
+#: doc/classes/ProjectSettings.xml:369
msgid ""
"If [code]true[/code], enables warnings when assigning the result of a "
"function that returns [code]void[/code] to a variable."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:374
+#: doc/classes/ProjectSettings.xml:375
msgid ""
"Maximum number of frames per second allowed. The actual number of frames per "
"second may still be below this value if the game is lagging.\n"
@@ -38978,143 +39721,143 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:379
+#: doc/classes/ProjectSettings.xml:380
msgid "Maximum call stack allowed for debugging GDScript."
msgstr ""
-#: doc/classes/ProjectSettings.xml:382
+#: doc/classes/ProjectSettings.xml:383
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:385
+#: doc/classes/ProjectSettings.xml:386
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:388
+#: doc/classes/ProjectSettings.xml:389
msgid ""
"Print more information to standard output when running. It displays "
"information such as memory leaks, which scenes and resources are being "
"loaded, etc."
msgstr ""
-#: doc/classes/ProjectSettings.xml:391
+#: doc/classes/ProjectSettings.xml:392
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:394
+#: doc/classes/ProjectSettings.xml:395
msgid ""
"Color of the contact points between collision shapes, visible when \"Visible "
"Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:397
+#: doc/classes/ProjectSettings.xml:398
msgid ""
"Maximum number of contact points between collision shapes to display when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:400
+#: doc/classes/ProjectSettings.xml:401
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
msgid "Hotspot for the custom mouse cursor image."
msgstr ""
-#: doc/classes/ProjectSettings.xml:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
msgid ""
"If [code]true[/code], allows HiDPI display on Windows and macOS. This "
"setting has no effect on desktop Linux, as DPI-awareness fallbacks are not "
"supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"If [code]true[/code], keeps the screen on (even in case of inactivity), so "
"the screensaver does not take over. Works on desktop and mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
msgid "Default orientation on mobile devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"If [code]true[/code], the home indicator is hidden automatically. This only "
"affects iOS devices without a physical home button."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid "Force the window to be always on top."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid "Force the window to be borderless."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Sets the window to full screen when it starts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid ""
"Sets the game's main viewport height. On desktop platforms, this is the "
"default window size. Stretch mode settings also use this as a reference when "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Allows the window to be resizable by default."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"Sets the game's main viewport width. On desktop platforms, this is the "
"default window size. Stretch mode settings also use this as a reference when "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:454
+#: doc/classes/ProjectSettings.xml:455
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:457
+#: doc/classes/ProjectSettings.xml:458
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -39123,7 +39866,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:460
+#: doc/classes/ProjectSettings.xml:461
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -39134,13 +39877,13 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:464
+#: doc/classes/ProjectSettings.xml:465
msgid ""
"Search path for project-specific script templates. Script templates will be "
"search both in the editor-specific path and in this project-specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:467
+#: doc/classes/ProjectSettings.xml:468
msgid ""
"Text-based file extensions to include in the script editor's \"Find in Files"
"\" feature. You can add e.g. [code]tscn[/code] if you wish to also parse "
@@ -39148,49 +39891,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:470
+#: doc/classes/ProjectSettings.xml:471
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:473
+#: doc/classes/ProjectSettings.xml:474
msgid ""
-"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
+"If [code]true[/code], swaps Cancel and OK buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:478
+#: doc/classes/ProjectSettings.xml:479
msgid ""
"Path to a custom [Theme] resource file to use for the project ([code]theme[/"
"code] or generic [code]tres[/code]/[code]res[/code] extension)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:484
+#: doc/classes/ProjectSettings.xml:485
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:487
+#: doc/classes/ProjectSettings.xml:488
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:490
+#: doc/classes/ProjectSettings.xml:491
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:493
+#: doc/classes/ProjectSettings.xml:494
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:496
+#: doc/classes/ProjectSettings.xml:497
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -39199,7 +39942,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"Default [InputEventAction] to discard a modal or pending input.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39207,7 +39950,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:504
+#: doc/classes/ProjectSettings.xml:505
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39215,7 +39958,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:508
+#: doc/classes/ProjectSettings.xml:509
msgid ""
"Default [InputEventAction] to go to the end position of a [Control] (e.g. "
"last item in an [ItemList] or a [Tree]), matching the behavior of [constant "
@@ -39225,7 +39968,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:512
+#: doc/classes/ProjectSettings.xml:513
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -39234,7 +39977,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:516
+#: doc/classes/ProjectSettings.xml:517
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -39243,7 +39986,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:520
+#: doc/classes/ProjectSettings.xml:521
msgid ""
"Default [InputEventAction] to go to the start position of a [Control] (e.g. "
"first item in an [ItemList] or a [Tree]), matching the behavior of [constant "
@@ -39253,7 +39996,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39261,7 +40004,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:528
+#: doc/classes/ProjectSettings.xml:529
msgid ""
"Default [InputEventAction] to go down a page in a [Control] (e.g. in an "
"[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEDOWN] on "
@@ -39271,7 +40014,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Default [InputEventAction] to go up a page in a [Control] (e.g. in an "
"[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEUP] on "
@@ -39281,7 +40024,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:536
+#: doc/classes/ProjectSettings.xml:537
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39289,7 +40032,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:540
+#: doc/classes/ProjectSettings.xml:541
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -39298,7 +40041,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -39306,371 +40049,371 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:548
+#: doc/classes/ProjectSettings.xml:549
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:554
+#: doc/classes/ProjectSettings.xml:555
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:557
+#: doc/classes/ProjectSettings.xml:558
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:560
+#: doc/classes/ProjectSettings.xml:561
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:566
+#: doc/classes/ProjectSettings.xml:567
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:569
+#: doc/classes/ProjectSettings.xml:570
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:572
+#: doc/classes/ProjectSettings.xml:573
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:578
+#: doc/classes/ProjectSettings.xml:579
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:581
+#: doc/classes/ProjectSettings.xml:582
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:584
+#: doc/classes/ProjectSettings.xml:585
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:590
+#: doc/classes/ProjectSettings.xml:591
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:593
+#: doc/classes/ProjectSettings.xml:594
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:596
+#: doc/classes/ProjectSettings.xml:597
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:602
+#: doc/classes/ProjectSettings.xml:603
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid ""
"The locale to fall back to if a translation isn't available in a given "
"language. If left empty, [code]en[/code] (English) will be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "If [code]true[/code], logs all output to files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:806
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:809
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:812
msgid ""
"Godot uses a message queue to defer some function calls. If you run out of "
"space on it (you will see an error), you can increase the size here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:815
msgid ""
"This is used by servers when used in multi-threading mode (servers and "
"visual). RIDs are preallocated to avoid stalling the server requesting them "
@@ -39678,56 +40421,56 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:829
+#: doc/classes/ProjectSettings.xml:832
msgid ""
"Maximum amount of characters allowed to send as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:832
+#: doc/classes/ProjectSettings.xml:835
msgid ""
"Maximum number of errors allowed to be sent from the debugger. Over this "
"value, content is dropped. This helps not to stall the debugger connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:835
+#: doc/classes/ProjectSettings.xml:838
msgid ""
"Maximum amount of messages in the debugger queue. Over this value, content "
"is dropped. This helps to limit the debugger memory usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:838
+#: doc/classes/ProjectSettings.xml:841
msgid ""
"Maximum number of warnings allowed to be sent from the debugger. Over this "
"value, content is dropped. This helps not to stall the debugger connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:841
+#: doc/classes/ProjectSettings.xml:844
msgid ""
"Default size of packet peer stream for deserializing Godot data. Over this "
"size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:844
+#: doc/classes/ProjectSettings.xml:847
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:847
+#: doc/classes/ProjectSettings.xml:850
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:850
+#: doc/classes/ProjectSettings.xml:853
msgid ""
"Amount of read ahead used by remote filesystem. Higher values decrease the "
"effects of latency at the cost of higher bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:853
+#: doc/classes/ProjectSettings.xml:856
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:856
+#: doc/classes/ProjectSettings.xml:859
msgid ""
"The CA certificates bundle to use for SSL connections. If this is set to a "
"non-empty value, this will [i]override[/i] Godot's default [url=https://"
@@ -39737,31 +40480,31 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:863
msgid ""
"When creating node names automatically, set the type of casing in this "
"project. This is mostly an editor setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:866
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:869
msgid "Size of the hash table used for the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:872
msgid "Cell size used for the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:875
msgid "The default angular damp in 2D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:878
msgid ""
"The default gravity strength in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39773,7 +40516,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:883
+#: doc/classes/ProjectSettings.xml:886
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39785,38 +40528,38 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:891
+#: doc/classes/ProjectSettings.xml:894
msgid "The default linear damp in 2D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:894
+#: doc/classes/ProjectSettings.xml:897
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm."
msgstr ""
-#: doc/classes/ProjectSettings.xml:897
+#: doc/classes/ProjectSettings.xml:900
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics2D\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:901
+#: doc/classes/ProjectSettings.xml:904
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant PhysicsServer2D."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:904
+#: doc/classes/ProjectSettings.xml:907
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant PhysicsServer2D."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:907
+#: doc/classes/ProjectSettings.xml:910
msgid ""
"Sets whether physics is run on the main thread or a separate one. Running "
"the server on a thread increases performance, but restricts API access to "
@@ -39826,23 +40569,23 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:914
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant PhysicsServer2D.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:917
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody3D] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:920
msgid "The default angular damp in 3D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:923
msgid ""
"The default gravity strength in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39854,7 +40597,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:928
+#: doc/classes/ProjectSettings.xml:931
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -39866,11 +40609,11 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:936
+#: doc/classes/ProjectSettings.xml:939
msgid "The default linear damp in 3D."
msgstr ""
-#: doc/classes/ProjectSettings.xml:939
+#: doc/classes/ProjectSettings.xml:942
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -39878,11 +40621,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:943
+#: doc/classes/ProjectSettings.xml:946
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:949
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -39891,7 +40634,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:950
+#: doc/classes/ProjectSettings.xml:953
msgid ""
"Fix to improve physics jitter, specially on monitors where refresh rate is "
"different than the physics FPS.\n"
@@ -39899,7 +40642,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:954
+#: doc/classes/ProjectSettings.xml:957
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -39907,7 +40650,7 @@ msgid ""
"programmatically, use [method RenderingServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:957
+#: doc/classes/ProjectSettings.xml:960
msgid ""
"[Environment] that will be used as a fallback environment in case a scene "
"does not specify its own environment. The default environment is loaded in "
@@ -39917,14 +40660,14 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:986
+#: doc/classes/ProjectSettings.xml:989
msgid ""
"Max amount of elements renderable in a frame. If more than this are visible "
"per frame, they will be dropped. Keep in mind elements refer to mesh "
"surfaces and not meshes themselves."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:994
msgid ""
"Some NVIDIA GPU drivers have a bug which produces flickering issues for the "
"[code]draw_rect[/code] method, especially as used in [TileMap]. Refer to "
@@ -39936,73 +40679,73 @@ msgid ""
"using the Vulkan backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:995
+#: doc/classes/ProjectSettings.xml:998
msgid ""
"If [code]true[/code], forces snapping of polygons to pixels in 2D rendering. "
"May help in some pixel art styles."
msgstr ""
-#: doc/classes/ProjectSettings.xml:998
+#: doc/classes/ProjectSettings.xml:1001
msgid ""
"Sets the quality of the depth of field effect. Higher quality takes more "
"samples, which is slower but looks smoother."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1001
+#: doc/classes/ProjectSettings.xml:1004
msgid ""
"Sets the depth of field shape. Can be Box, Hexagon, or Circle. Box is the "
"fastest. Circle is the most realistic, but also the most expensive to "
"compute."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1004
+#: doc/classes/ProjectSettings.xml:1007
msgid ""
"If [code]true[/code], jitters DOF samples to make effect slightly blurrier "
"and hide lines created from low sample rates. This can result in a slightly "
"grainy appearance when used with a low number of samples."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1010
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1010
+#: doc/classes/ProjectSettings.xml:1013
msgid ""
"If [code]true[/code], performs a previous depth pass before rendering "
"materials. This increases performance in scenes with high overdraw, when "
"complex materials and lighting are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1016
msgid ""
"The directional shadow's size in pixels. Higher values will result in "
"sharper shadows, at the cost of performance. The value will be rounded up to "
"the nearest power of 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1016
+#: doc/classes/ProjectSettings.xml:1019
msgid ""
"Lower-end override for [member rendering/quality/directional_shadow/size] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1019
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"Quality setting for shadows cast by [DirectionalLight3D]s. Higher quality "
"settings use more samples when reading from shadow maps and are thus slower. "
"Low quality settings may result in shadows looking grainy."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1022
+#: doc/classes/ProjectSettings.xml:1025
msgid ""
"Lower-end override for [member rendering/quality/directional_shadow/"
"soft_shadow_quality] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1028
msgid ""
"The video driver to use (\"GLES2\" or \"Vulkan\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -40012,32 +40755,32 @@ msgid ""
"get_current_video_driver[/code] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1031
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"If [code]true[/code], take additional samples when rendering objects "
"affected by a [GIProbe] to reduce artifacts from only sampling in one "
"direction."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1034
+#: doc/classes/ProjectSettings.xml:1037
msgid ""
"Sets the number of cone samples taken when rendering objects affected by "
"[GIProbe]s."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1037
+#: doc/classes/ProjectSettings.xml:1040
msgid ""
"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."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1040
+#: doc/classes/ProjectSettings.xml:1043
msgid ""
"Lower-end override for [member rendering/quality/glow/upscale_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1043
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Strategy used for framebuffer allocation. The simpler it is, the less "
"resources it uses (but the less features it supports). If set to \"2D "
@@ -40047,41 +40790,41 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1046
+#: doc/classes/ProjectSettings.xml:1049
msgid ""
"Lower-end override for [member rendering/quality/intended_usage/"
"framebuffer_allocation] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1052
msgid ""
"Number of cubemaps to store in the reflection atlas. The number of "
"[ReflectionProbe]s in a scene will be limited by this amount. A higher "
"number requires more VRAM."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1052
+#: doc/classes/ProjectSettings.xml:1055
msgid ""
"Size of cubemap faces for [ReflectionProbe]s. A higher number requires more "
"VRAM and may make reflection probe updating slower."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1055
+#: doc/classes/ProjectSettings.xml:1058
msgid ""
"Lower-end override for [member rendering/quality/reflection_atlas/"
"reflection_size] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1058
+#: doc/classes/ProjectSettings.xml:1061
msgid ""
"Use a higher quality variant of the fast filtering algorithm. Significantly "
"slower than using default quality, but results in smoother reflections. "
"Should only be used when the scene is especially detailed."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1061
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Sets the number of samples to take when using importance sampling for [Sky]s "
"and [ReflectionProbe]s. A higher value will result in smoother, higher "
@@ -40091,19 +40834,19 @@ msgid ""
"environments with a high level of detail."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1064
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Lower-end override for [member rendering/quality/reflections/ggx_samples] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1067
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Limits the number of layers to use in radiance maps when using importance "
"sampling. A lower number will be slightly faster and take up less VRAM."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1070
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise and "
@@ -40112,14 +40855,14 @@ msgid ""
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1073
+#: doc/classes/ProjectSettings.xml:1076
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"texture_array_reflections] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1079
msgid ""
"Sets the number of MSAA samples to use (as a power of two). MSAA is used to "
"reduce aliasing around the edges of polygons. A higher MSAA value results in "
@@ -40127,7 +40870,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1080
+#: doc/classes/ProjectSettings.xml:1083
msgid ""
"Sets the screen-space antialiasing mode for the default screen [Viewport]. "
"Screen-space antialiasing works by selectively blurring edges in a post-"
@@ -40136,133 +40879,117 @@ msgid ""
"MSAA and will smooth out specular aliasing, but tend to make scenes appear "
"blurry.\n"
"Another way to combat specular aliasing is to enable [member rendering/"
-"quality/screen_filters/screen_space_roughness_limiter]."
+"quality/screen_filters/screen_space_roughness_limiter_enabled]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1084
-msgid ""
-"Enables the screen-space roughness limiter which increases material "
-"roughness in areas with a high normal frequency (i.e. when normals change a "
-"lot from pixel to pixel). This helps to reduce the amount of specular "
-"aliasing in a scene. Specular aliasing looks like random bright pixels that "
-"occur in reflections."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:1087
-msgid ""
-"Curves the amount of the roughness limited effect. A higher value limits the "
-"effect to very sharply curved surfaces, while a lower threshold extends the "
-"effect to smoother surfaces."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:1090
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"Sets the quality for rough screen-space reflections. Turning off will make "
"all screen space reflections sharp, while higher values make rough "
"reflections look better."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1093
+#: doc/classes/ProjectSettings.xml:1096
msgid ""
"If [code]true[/code], uses faster but lower-quality Blinn model to generate "
"blurred reflections instead of the GGX model."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1099
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_blinn_over_ggx] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1102
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1102
+#: doc/classes/ProjectSettings.xml:1105
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_lambert_over_burley] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1105
+#: doc/classes/ProjectSettings.xml:1108
msgid ""
"If [code]true[/code], forces vertex shading for all rendering. This can "
"increase performance a lot, but also reduces quality immensely. Can be used "
"to optimize performance on low-end mobile devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1108
+#: doc/classes/ProjectSettings.xml:1111
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_vertex_shading] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1111 doc/classes/ProjectSettings.xml:1114
-#: doc/classes/ProjectSettings.xml:1117 doc/classes/ProjectSettings.xml:1120
+#: doc/classes/ProjectSettings.xml:1114 doc/classes/ProjectSettings.xml:1117
+#: doc/classes/ProjectSettings.xml:1120 doc/classes/ProjectSettings.xml:1123
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1123
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1126
+#: doc/classes/ProjectSettings.xml:1129
msgid ""
"Lower-end override for [member rendering/quality/shadow_atlas/size] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1132
msgid ""
"Quality setting for shadows cast by [OmniLight3D]s and [SpotLight3D]s. "
"Higher quality settings use more samples when reading from shadow maps and "
"are thus slower. Low quality settings may result in shadows looking grainy."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1132
+#: doc/classes/ProjectSettings.xml:1135
msgid ""
"Lower-end override for [member rendering/quality/shadows/"
"soft_shadow_quality] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1135
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"If [code]true[/code], screen-space ambient occlusion will be rendered at "
"half size and then upscaled before being added to the scene. This is "
"significantly faster but may miss small details."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1138
+#: doc/classes/ProjectSettings.xml:1141
msgid ""
"Sets the quality of the screen-space ambient occlusion effect. Higher values "
"take more samples and so will result in better quality, at the cost of "
"performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1144
msgid ""
"Scales the depth over which the subsurface scattering effect is applied. A "
"high value may allow light to scatter into a part of the mesh or another "
"mesh that is close in screen space but far in depth."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1144
+#: doc/classes/ProjectSettings.xml:1147
msgid ""
"Sets the quality of the subsurface scattering effect. Higher values are "
"slower but look nicer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1147
+#: doc/classes/ProjectSettings.xml:1150
msgid ""
"Scales the distance over which samples are taken for subsurface scattering "
"effect. Changing this does not impact performance, but higher values will "
@@ -40270,7 +40997,7 @@ msgid ""
"out. A lower value results in a smaller spread of scattered light."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1150
+#: doc/classes/ProjectSettings.xml:1153
msgid ""
"Sets the maximum number of samples to take when using anisotropic filtering "
"on textures (as a power of two). A higher sample count will result in "
@@ -40279,7 +41006,7 @@ msgid ""
"materials where it is enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1153
+#: doc/classes/ProjectSettings.xml:1156
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -40288,49 +41015,49 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Thread model for rendering. Rendering on a thread can vastly improve "
"performance, but synchronizing to the main thread can cause a bit more "
"jitter."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
"only supported on desktop platforms, and only when using the Vulkan renderer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
"doesn't support alpha channels in textures."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
"compression algorithm is only supported when using the Vulkan renderer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1175
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
"compression algorithm is only supported on iOS."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
"supported on desktop platforms and consoles."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1182
+#: doc/classes/ProjectSettings.xml:1189
msgid "Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses."
msgstr ""
@@ -40360,13 +41087,14 @@ msgstr ""
#: doc/classes/Quat.xml:7
msgid ""
-"A unit quaternion used for representing 3D rotations.\n"
-"It is similar to [Basis], which implements matrix representation of "
-"rotations, and can be parametrized using both an axis-angle pair or Euler "
-"angles. But due to its compactness and the way it is stored in memory, "
-"certain operations (obtaining axis-angle and performing SLERP, in "
-"particular) are more efficient and robust against floating-point errors.\n"
-"Quaternions need to be (re)normalized."
+"A unit quaternion used for representing 3D rotations. Quaternions need to be "
+"normalized to be used for rotation.\n"
+"It is similar to Basis, which implements matrix representation of rotations, "
+"and can be parametrized using both an axis-angle pair or Euler angles. Basis "
+"stores rotation, scale, and shearing, while Quat only stores rotation.\n"
+"Due to its compactness and the way it is stored in memory, certain "
+"operations (obtaining axis-angle and performing SLERP, in particular) are "
+"more efficient and robust against floating-point errors."
msgstr ""
#: doc/classes/Quat.xml:12
@@ -40376,29 +41104,31 @@ msgid ""
msgstr ""
#: doc/classes/Quat.xml:21
-msgid "Returns the rotation matrix corresponding to the given quaternion."
+msgid "Constructs a quaternion from the given [Basis]."
msgstr ""
#: doc/classes/Quat.xml:30
msgid ""
-"Returns a quaternion that will perform a rotation specified by Euler angles "
-"(in the YXZ convention: first Z, then X, and Y last), given in the vector "
-"format as (X angle, Y angle, Z angle)."
+"Constructs a quaternion that will perform a rotation specified by Euler "
+"angles (in the YXZ convention: when decomposing, first Z, then X, and Y "
+"last), given in the vector format as (X angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:41
msgid ""
-"Returns a quaternion that will rotate around the given axis by the specified "
-"angle. The axis must be a normalized vector."
+"Constructs a quaternion that will rotate around the given axis by the "
+"specified angle. The axis must be a normalized vector."
msgstr ""
#: doc/classes/Quat.xml:56
-msgid "Returns a quaternion defined by these values."
+msgid "Constructs a quaternion defined by the given values."
msgstr ""
#: doc/classes/Quat.xml:71
msgid ""
-"Performs a cubic spherical-linear interpolation with another quaternion."
+"Performs a cubic spherical interpolation between quaternions [code]preA[/"
+"code], this vector, [code]b[/code], and [code]postB[/code], by the given "
+"amount [code]t[/code]."
msgstr ""
#: doc/classes/Quat.xml:80
@@ -40407,10 +41137,10 @@ msgstr ""
#: doc/classes/Quat.xml:87
msgid ""
-"Returns Euler angles (in the YXZ convention: first Z, then X, and Y last) "
-"corresponding to the rotation represented by the unit quaternion. Returned "
-"vector contains the rotation angles in the format (X angle, Y angle, Z "
-"angle)."
+"Returns Euler angles (in the YXZ convention: when decomposing, first Z, then "
+"X, and Y last) corresponding to the rotation represented by the unit "
+"quaternion. Returned vector contains the rotation angles in the format (X "
+"angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:94
@@ -40449,44 +41179,57 @@ msgstr ""
#: doc/classes/Quat.xml:151
msgid ""
"Sets the quaternion to a rotation specified by Euler angles (in the YXZ "
-"convention: first Z, then X, and Y last), given in the vector format as (X "
-"angle, Y angle, Z angle)."
+"convention: when decomposing, first Z, then X, and Y last), given in the "
+"vector format as (X angle, Y angle, Z angle)."
msgstr ""
#: doc/classes/Quat.xml:162
-msgid "Performs a spherical-linear interpolation with another quaternion."
+msgid ""
+"Returns the result of the spherical linear interpolation between this "
+"quaternion and [code]to[/code] by amount [code]weight[/code].\n"
+"[b]Note:[/b] Both quaternions must be normalized."
msgstr ""
-#: doc/classes/Quat.xml:173
+#: doc/classes/Quat.xml:174
msgid ""
-"Performs a spherical-linear interpolation with another quaterion without "
-"checking if the rotation path is not bigger than 90°."
+"Returns the result of the spherical linear interpolation between this "
+"quaternion and [code]to[/code] by amount [code]weight[/code], but without "
+"checking if the rotation path is not bigger than 90 degrees."
msgstr ""
-#: doc/classes/Quat.xml:182
-msgid "Transforms the vector [code]v[/code] by this quaternion."
+#: doc/classes/Quat.xml:183
+msgid "Returns a vector transformed (multiplied) by this quaternion."
msgstr ""
-#: doc/classes/Quat.xml:188
-msgid "W component of the quaternion."
+#: doc/classes/Quat.xml:189
+msgid ""
+"W component of the quaternion (real part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:191
-msgid "X component of the quaternion."
+#: doc/classes/Quat.xml:193
+msgid ""
+"X component of the quaternion (imaginary [code]i[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:194
-msgid "Y component of the quaternion."
+#: doc/classes/Quat.xml:197
+msgid ""
+"Y component of the quaternion (imaginary [code]j[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:197
-msgid "Z component of the quaternion."
+#: doc/classes/Quat.xml:201
+msgid ""
+"Z component of the quaternion (imaginary [code]k[/code] axis part).\n"
+"Quaternion components should usually not be manipulated directly."
msgstr ""
-#: doc/classes/Quat.xml:202
+#: doc/classes/Quat.xml:207
msgid ""
-"The identity rotation. Equivalent to an identity matrix. If a vector is "
-"transformed by an identity quaternion, it will not change."
+"The identity quaternion, representing no rotation. Equivalent to an identity "
+"[Basis] matrix. If a vector is transformed by an identity quaternion, it "
+"will not change."
msgstr ""
#: doc/classes/RandomNumberGenerator.xml:4
@@ -40689,7 +41432,8 @@ msgid ""
"collision information immediately instead of waiting for the next "
"[code]_physics_process[/code] call, for example if the ray or its parent has "
"changed state.\n"
-"[b]Note:[/b] [code]enabled == true[/code] is not required for this to work."
+"[b]Note:[/b] [member enabled] does not need to be [code]true[/code] for this "
+"to work."
msgstr ""
#: doc/classes/RayCast2D.xml:54 doc/classes/RayCast3D.xml:55
@@ -40795,7 +41539,8 @@ msgid ""
"Use this method to update the collision information immediately instead of "
"waiting for the next [code]_physics_process[/code] call, for example if the "
"ray or its parent has changed state.\n"
-"[b]Note:[/b] [code]enabled == true[/code] is not required for this to work."
+"[b]Note:[/b] [member enabled] does not need to be [code]true[/code] for this "
+"to work."
msgstr ""
#: doc/classes/RayCast3D.xml:71
@@ -40953,14 +41698,6 @@ msgstr ""
msgid "Returns a larger [Rect2] that contains this [Rect2] and [code]b[/code]."
msgstr ""
-#: doc/classes/Rect2.xml:174 doc/classes/Rect2i.xml:163
-msgid "Ending corner."
-msgstr ""
-
-#: doc/classes/Rect2.xml:177 doc/classes/Rect2i.xml:166
-msgid "Position (starting corner)."
-msgstr ""
-
#: doc/classes/Rect2i.xml:4
msgid "2D axis-aligned bounding box using integer coordinates."
msgstr ""
@@ -41073,22 +41810,22 @@ msgstr ""
msgid ""
"Base class for any object that keeps a reference count. [Resource] and many "
"other helper objects inherit this class.\n"
-"References keep an internal reference counter so that they are automatically "
-"released when no longer in use, and only then. References therefore do not "
-"need to be freed manually with [method Object.free].\n"
+"Unlike [Object]s, References keep an internal reference counter so that they "
+"are automatically released when no longer in use, and only then. References "
+"therefore do not need to be freed manually with [method Object.free].\n"
"In the vast majority of use cases, instantiating and using [Reference]-"
"derived types is all you need to do. The methods provided in this class are "
"only for advanced users, and can cause issues if misused."
msgstr ""
-#: doc/classes/Reference.xml:18
+#: doc/classes/Reference.xml:19
msgid ""
"Initializes the internal reference counter. Use this only if you really know "
"what you are doing.\n"
"Returns whether the initialization was successful."
msgstr ""
-#: doc/classes/Reference.xml:26
+#: doc/classes/Reference.xml:27
msgid ""
"Increments the internal reference counter. Use this only if you really know "
"what you are doing.\n"
@@ -41096,7 +41833,7 @@ msgid ""
"code] otherwise."
msgstr ""
-#: doc/classes/Reference.xml:34
+#: doc/classes/Reference.xml:35
msgid ""
"Decrements the internal reference counter. Use this only if you really know "
"what you are doing.\n"
@@ -41145,14 +41882,14 @@ msgid ""
"https://docs.godotengine.org/en/latest/tutorials/3d/reflection_probes.html"
msgstr ""
-#: doc/classes/ReflectionProbe.xml:17
+#: doc/classes/ReflectionProbe.xml:23
msgid ""
"If [code]true[/code], enables box projection. This makes reflections look "
"more correct in rectangle-shaped rooms by offsetting the reflection center "
"depending on the camera's location."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:20
+#: doc/classes/ReflectionProbe.xml:26
msgid ""
"Sets the cull mask which determines what objects are drawn by this probe. "
"Every [VisualInstance3D] with a layer included in this cull mask will be "
@@ -41161,78 +41898,56 @@ msgid ""
"rendering cost."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:23
+#: doc/classes/ReflectionProbe.xml:29
msgid ""
"If [code]true[/code], computes shadows in the reflection probe. This makes "
"the reflection probe slower to render; you may want to disable this if using "
"the [constant UPDATE_ALWAYS] [member update_mode]."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:26
+#: doc/classes/ReflectionProbe.xml:32
msgid ""
"The size of the reflection probe. The larger the extents the more space "
"covered by the probe which will lower the perceived resolution. It is best "
"to keep the extents only as large as you need them."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:29
+#: doc/classes/ReflectionProbe.xml:35
msgid ""
"Defines the reflection intensity. Intensity modulates the strength of the "
"reflection."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:32
-msgid ""
-"Sets the ambient light color to be used when this probe is set to [member "
-"interior_enable]."
-msgstr ""
-
-#: doc/classes/ReflectionProbe.xml:35
-msgid ""
-"Sets the contribution value for how much the reflection affects the ambient "
-"light for this reflection probe when set to [member interior_enable]. Useful "
-"so that ambient light matches the color of the room."
-msgstr ""
-
#: doc/classes/ReflectionProbe.xml:38
-msgid ""
-"Sets the energy multiplier for this reflection probe's ambient light "
-"contribution when set to [member interior_enable]."
+msgid "If [code]true[/code], reflections will ignore sky contribution."
msgstr ""
#: doc/classes/ReflectionProbe.xml:41
msgid ""
-"If [code]true[/code], reflections will ignore sky contribution. Ambient "
-"lighting is then controlled by the [code]interior_ambient_*[/code] "
-"properties."
-msgstr ""
-
-#: doc/classes/ReflectionProbe.xml:44
-msgid ""
"Sets the max distance away from the probe an object can be before it is "
"culled."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:47
+#: doc/classes/ReflectionProbe.xml:44
msgid ""
"Sets the origin offset to be used when this reflection probe is in box "
"project mode."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:50
+#: doc/classes/ReflectionProbe.xml:47
msgid ""
"Sets how frequently the probe is updated. Can be [constant UPDATE_ONCE] or "
"[constant UPDATE_ALWAYS]."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:55
+#: doc/classes/ReflectionProbe.xml:52
msgid ""
"Update the probe once on the next frame. The corresponding radiance map will "
"be generated over the following six frames. This is slower to update than "
"[constant UPDATE_ALWAYS] but can result in higher quality reflections."
msgstr ""
-#: doc/classes/ReflectionProbe.xml:58
+#: doc/classes/ReflectionProbe.xml:55
msgid ""
"Update the probe every frame. This is needed when you want to capture "
"dynamic objects. However, it results in an increased render time. Use "
@@ -41262,10 +41977,10 @@ msgid ""
"read by RegEx as [code]\\d+[/code]. Similarly, [code]compile(\"\\\"(?:\\\\\\"
"\\.|[^\\\"])*\\\"\")[/code] would be read as [code]\"(?:\\\\.|[^\"])*\"[/"
"code].\n"
-"Using [method search] you can find the pattern within the given text. If a "
+"Using [method search], you can find the pattern within the given text. If a "
"pattern is found, [RegExMatch] is returned and you can retrieve details of "
-"the results using functions such as [method RegExMatch.get_string] and "
-"[method RegExMatch.get_start].\n"
+"the results using methods such as [method RegExMatch.get_string] and [method "
+"RegExMatch.get_start].\n"
"[codeblock]\n"
"var regex = RegEx.new()\n"
"regex.compile(\"\\\\w-(\\\\d+)\")\n"
@@ -41274,7 +41989,7 @@ msgid ""
" print(result.get_string()) # Would print n-0123\n"
"[/codeblock]\n"
"The results of capturing groups [code]()[/code] can be retrieved by passing "
-"the group number to the various functions in [RegExMatch]. Group 0 is the "
+"the group number to the various methods in [RegExMatch]. Group 0 is the "
"default and will always refer to the entire pattern. In the above example, "
"calling [code]result.get_string(1)[/code] would give you [code]0123[/code].\n"
"This version of RegEx also supports named capturing groups, and the names "
@@ -41295,6 +42010,15 @@ msgid ""
" print(result.get_string(\"digit\"))\n"
"# Would print 01 03 0 3f 42\n"
"[/codeblock]\n"
+"[b]Example of splitting a string using a RegEx:[/b]\n"
+"[codeblock]\n"
+"var regex = RegEx.new()\n"
+"regex.compile(\"\\\\S+\") # Negated whitespace character class.\n"
+"var results = []\n"
+"for match in regex.search_all(\"One Two \\n\\tThree\"):\n"
+" results.push_back(match.get_string())\n"
+"# The `results` array now contains \"One\", \"Two\", \"Three\".\n"
+"[/codeblock]\n"
"[b]Note:[/b] Godot's regex implementation is based on the [url=https://www."
"pcre.org/]PCRE2[/url] library. You can view the full pattern reference "
"[url=https://www.pcre.org/current/doc/html/pcre2pattern.html]here[/url].\n"
@@ -41302,38 +42026,38 @@ msgid ""
"regular expressions online."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:47
+#: modules/regex/doc_classes/RegEx.xml:56
msgid ""
"This method resets the state of the object, as if it was freshly created. "
"Namely, it unassigns the regular expression of this object."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:56
+#: modules/regex/doc_classes/RegEx.xml:65
msgid ""
"Compiles and assign the search pattern to use. Returns [constant OK] if the "
"compilation is successful. If an error is encountered, details are printed "
"to standard output and an error is returned."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:63
+#: modules/regex/doc_classes/RegEx.xml:72
msgid "Returns the number of capturing groups in compiled pattern."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:70
+#: modules/regex/doc_classes/RegEx.xml:79
msgid ""
"Returns an array of names of named capturing groups in the compiled pattern. "
"They are ordered by appearance."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:77
+#: modules/regex/doc_classes/RegEx.xml:86
msgid "Returns the original search pattern that was compiled."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:84
+#: modules/regex/doc_classes/RegEx.xml:93
msgid "Returns whether this object has a valid search pattern assigned."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:97
+#: modules/regex/doc_classes/RegEx.xml:106
msgid ""
"Searches the text for the compiled pattern. Returns a [RegExMatch] container "
"of the first matching result if found, otherwise [code]null[/code]. The "
@@ -41341,7 +42065,7 @@ msgid ""
"and end anchor would be."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:110
+#: modules/regex/doc_classes/RegEx.xml:119
msgid ""
"Searches the text for the compiled pattern. Returns an array of [RegExMatch] "
"containers for each non-overlapping result. If no results were found, an "
@@ -41349,7 +42073,7 @@ msgid ""
"specified without modifying where the start and end anchor would be."
msgstr ""
-#: modules/regex/doc_classes/RegEx.xml:127
+#: modules/regex/doc_classes/RegEx.xml:136
msgid ""
"Searches the text for the compiled pattern and replaces it with the "
"specified string. Escapes and backreferences such as [code]$1[/code] and "
@@ -42076,7 +42800,7 @@ msgid ""
msgstr ""
#: doc/classes/RenderingServer.xml:1222 doc/classes/RenderingServer.xml:1250
-#: doc/classes/RenderingServer.xml:1527
+#: doc/classes/RenderingServer.xml:1537
msgid "Not implemented in Godot 3.x."
msgstr ""
@@ -42223,30 +42947,30 @@ msgid ""
"OmniLight3D.omni_shadow_mode]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1481
+#: doc/classes/RenderingServer.xml:1491
msgid ""
"Sets the color of the light. Equivalent to [member Light3D.light_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1492
+#: doc/classes/RenderingServer.xml:1502
msgid ""
"Sets the cull mask for this Light3D. Lights only affect objects in the "
"selected layers. Equivalent to [member Light3D.light_cull_mask]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1503
+#: doc/classes/RenderingServer.xml:1513
msgid ""
"If [code]true[/code], light will subtract light instead of adding light. "
"Equivalent to [member Light3D.light_negative]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1516
+#: doc/classes/RenderingServer.xml:1526
msgid ""
"Sets the specified light parameter. See [enum LightParam] for options. "
"Equivalent to [method Light3D.set_param]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1538
+#: doc/classes/RenderingServer.xml:1548
msgid ""
"If [code]true[/code], reverses the backface culling of the mesh. This can be "
"useful when you have a flat mesh that has a light behind it. If you need to "
@@ -42255,29 +42979,25 @@ msgid ""
"to [member Light3D.shadow_reverse_cull_face]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1549
+#: doc/classes/RenderingServer.xml:1559
msgid ""
"If [code]true[/code], light will cast shadows. Equivalent to [member Light3D."
"shadow_enabled]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1560
+#: doc/classes/RenderingServer.xml:1570
msgid ""
"Sets the color of the shadow cast by the light. Equivalent to [member "
"Light3D.shadow_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1571
-msgid "Sets whether GI probes capture light information from this light."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:1584
+#: doc/classes/RenderingServer.xml:1583
msgid ""
"Returns a mesh of a sphere with the given amount of horizontal and vertical "
"subdivisions."
msgstr ""
-#: doc/classes/RenderingServer.xml:1591
+#: doc/classes/RenderingServer.xml:1590
msgid ""
"Creates an empty material and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42286,31 +43006,31 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:1603
+#: doc/classes/RenderingServer.xml:1602
msgid "Returns the value of a certain material's parameter."
msgstr ""
-#: doc/classes/RenderingServer.xml:1614
+#: doc/classes/RenderingServer.xml:1613
msgid "Sets an object's next material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1627
+#: doc/classes/RenderingServer.xml:1626
msgid "Sets a material's parameter."
msgstr ""
-#: doc/classes/RenderingServer.xml:1638
+#: doc/classes/RenderingServer.xml:1637
msgid "Sets a material's render priority."
msgstr ""
-#: doc/classes/RenderingServer.xml:1649
+#: doc/classes/RenderingServer.xml:1648
msgid "Sets a shader material's shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:1678
+#: doc/classes/RenderingServer.xml:1677
msgid "Removes all surfaces from a mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1685
+#: doc/classes/RenderingServer.xml:1684
msgid ""
"Creates a new mesh and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all [code]mesh_*[/"
@@ -42321,58 +43041,58 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:1696
+#: doc/classes/RenderingServer.xml:1695
msgid "Returns a mesh's blend shape count."
msgstr ""
-#: doc/classes/RenderingServer.xml:1705
+#: doc/classes/RenderingServer.xml:1704
msgid "Returns a mesh's blend shape mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:1714
+#: doc/classes/RenderingServer.xml:1713
msgid "Returns a mesh's custom aabb."
msgstr ""
-#: doc/classes/RenderingServer.xml:1723
+#: doc/classes/RenderingServer.xml:1722
msgid "Returns a mesh's number of surfaces."
msgstr ""
-#: doc/classes/RenderingServer.xml:1734
+#: doc/classes/RenderingServer.xml:1733
msgid "Sets a mesh's blend shape mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:1745
+#: doc/classes/RenderingServer.xml:1744
msgid "Sets a mesh's custom aabb."
msgstr ""
-#: doc/classes/RenderingServer.xml:1756
+#: doc/classes/RenderingServer.xml:1755
msgid "Returns a mesh's surface's buffer arrays."
msgstr ""
-#: doc/classes/RenderingServer.xml:1767
+#: doc/classes/RenderingServer.xml:1766
msgid "Returns a mesh's surface's arrays for blend shapes."
msgstr ""
-#: doc/classes/RenderingServer.xml:1782 doc/classes/RenderingServer.xml:1795
+#: doc/classes/RenderingServer.xml:1781 doc/classes/RenderingServer.xml:1794
msgid "Function is unused in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:1806
+#: doc/classes/RenderingServer.xml:1805
msgid "Returns a mesh's surface's material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1819
+#: doc/classes/RenderingServer.xml:1818
msgid "Sets a mesh's surface's material."
msgstr ""
-#: doc/classes/RenderingServer.xml:1834
+#: doc/classes/RenderingServer.xml:1833
msgid ""
"Updates a specific region of a vertex buffer for the specified surface. "
"Warning: this function alters the vertex buffer directly with no safety "
"mechanisms, you can easily corrupt your mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1857
+#: doc/classes/RenderingServer.xml:1856
msgid ""
"Creates a new multimesh on the RenderingServer and returns an [RID] handle. "
"This RID will be used in all [code]multimesh_*[/code] RenderingServer "
@@ -42383,82 +43103,82 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:1868
+#: doc/classes/RenderingServer.xml:1867
msgid ""
"Calculates and returns the axis-aligned bounding box that encloses all "
"instances within the multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1885
+#: doc/classes/RenderingServer.xml:1884
msgid "Returns the number of instances allocated for this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1894
+#: doc/classes/RenderingServer.xml:1893
msgid ""
"Returns the RID of the mesh that will be used in drawing this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1903
+#: doc/classes/RenderingServer.xml:1902
msgid "Returns the number of visible instances for this multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:1914
+#: doc/classes/RenderingServer.xml:1913
msgid "Returns the color by which the specified instance will be modulated."
msgstr ""
-#: doc/classes/RenderingServer.xml:1925
+#: doc/classes/RenderingServer.xml:1924
msgid "Returns the custom data associated with the specified instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:1936
+#: doc/classes/RenderingServer.xml:1935
msgid "Returns the [Transform] of the specified instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:1947
+#: doc/classes/RenderingServer.xml:1946
msgid ""
"Returns the [Transform2D] of the specified instance. For use when the "
"multimesh is set to use 2D transforms."
msgstr ""
-#: doc/classes/RenderingServer.xml:1960
+#: doc/classes/RenderingServer.xml:1959
msgid ""
"Sets the color by which this instance will be modulated. Equivalent to "
"[method MultiMesh.set_instance_color]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1973
+#: doc/classes/RenderingServer.xml:1972
msgid ""
"Sets the custom data for this instance. Custom data is passed as a [Color], "
"but is interpreted as a [code]vec4[/code] in the shader. Equivalent to "
"[method MultiMesh.set_instance_custom_data]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1986
+#: doc/classes/RenderingServer.xml:1985
msgid ""
"Sets the [Transform] for this instance. Equivalent to [method MultiMesh."
"set_instance_transform]."
msgstr ""
-#: doc/classes/RenderingServer.xml:1999
+#: doc/classes/RenderingServer.xml:1998
msgid ""
"Sets the [Transform2D] for this instance. For use when multimesh is used in "
"2D. Equivalent to [method MultiMesh.set_instance_transform_2d]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2020
+#: doc/classes/RenderingServer.xml:2019
msgid ""
"Sets the mesh to be drawn by the multimesh. Equivalent to [member MultiMesh."
"mesh]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2031
+#: doc/classes/RenderingServer.xml:2030
msgid ""
"Sets the number of instances visible at a given time. If -1, all instances "
"that have been allocated are drawn. Equivalent to [member MultiMesh."
"visible_instance_count]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2038
+#: doc/classes/RenderingServer.xml:2037
msgid ""
"Creates a new omni light and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID can be used in most "
@@ -42469,7 +43189,7 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2047
+#: doc/classes/RenderingServer.xml:2046
msgid ""
"Creates a particle system and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42480,23 +43200,23 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2058
+#: doc/classes/RenderingServer.xml:2057
msgid ""
"Calculates and returns the axis-aligned bounding box that contains all the "
"particles. Equivalent to [method GPUParticles3D.capture_aabb]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2067
+#: doc/classes/RenderingServer.xml:2066
msgid "Returns [code]true[/code] if particles are currently set to emitting."
msgstr ""
-#: doc/classes/RenderingServer.xml:2076
+#: doc/classes/RenderingServer.xml:2075
msgid ""
"Returns [code]true[/code] if particles are not emitting and particles are "
"set to inactive."
msgstr ""
-#: doc/classes/RenderingServer.xml:2085
+#: doc/classes/RenderingServer.xml:2084
msgid ""
"Add particle system to list of particle systems that need to be updated. "
"Update will take place on the next frame, or on the next call to [method "
@@ -42504,121 +43224,121 @@ msgid ""
"instances_cull_ray]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2094
+#: doc/classes/RenderingServer.xml:2093
msgid ""
"Reset the particles on the next update. Equivalent to [method GPUParticles3D."
"restart]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2105
+#: doc/classes/RenderingServer.xml:2104
msgid ""
"Sets the number of particles to be drawn and allocates the memory for them. "
"Equivalent to [member GPUParticles3D.amount]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2116
+#: doc/classes/RenderingServer.xml:2115
msgid ""
"Sets a custom axis-aligned bounding box for the particle system. Equivalent "
"to [member GPUParticles3D.visibility_aabb]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2127
+#: doc/classes/RenderingServer.xml:2126
msgid ""
"Sets the draw order of the particles to one of the named enums from [enum "
"ParticlesDrawOrder]. See [enum ParticlesDrawOrder] for options. Equivalent "
"to [member GPUParticles3D.draw_order]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2140
+#: doc/classes/RenderingServer.xml:2139
msgid ""
"Sets the mesh to be used for the specified draw pass. Equivalent to [member "
"GPUParticles3D.draw_pass_1], [member GPUParticles3D.draw_pass_2], [member "
"GPUParticles3D.draw_pass_3], and [member GPUParticles3D.draw_pass_4]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2151
+#: doc/classes/RenderingServer.xml:2150
msgid ""
"Sets the number of draw passes to use. Equivalent to [member GPUParticles3D."
"draw_passes]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2162
+#: doc/classes/RenderingServer.xml:2161
msgid ""
"Sets the [Transform] that will be used by the particles when they first emit."
msgstr ""
-#: doc/classes/RenderingServer.xml:2173
+#: doc/classes/RenderingServer.xml:2172
msgid ""
"If [code]true[/code], particles will emit over time. Setting to false does "
"not reset the particles, but only stops their emission. Equivalent to "
"[member GPUParticles3D.emitting]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2184
+#: doc/classes/RenderingServer.xml:2183
msgid ""
"Sets the explosiveness ratio. Equivalent to [member GPUParticles3D."
"explosiveness]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2195
+#: doc/classes/RenderingServer.xml:2194
msgid ""
"Sets the frame rate that the particle system rendering will be fixed to. "
"Equivalent to [member GPUParticles3D.fixed_fps]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2206
+#: doc/classes/RenderingServer.xml:2205
msgid ""
"If [code]true[/code], uses fractional delta which smooths the movement of "
"the particles. Equivalent to [member GPUParticles3D.fract_delta]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2217
+#: doc/classes/RenderingServer.xml:2216
msgid ""
"Sets the lifetime of each particle in the system. Equivalent to [member "
"GPUParticles3D.lifetime]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2228
+#: doc/classes/RenderingServer.xml:2227
msgid ""
"If [code]true[/code], particles will emit once and then stop. Equivalent to "
"[member GPUParticles3D.one_shot]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2239
+#: doc/classes/RenderingServer.xml:2238
msgid ""
"Sets the preprocess time for the particles animation. This lets you delay "
"starting an animation until after the particles have begun emitting. "
"Equivalent to [member GPUParticles3D.preprocess]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2250
+#: doc/classes/RenderingServer.xml:2249
msgid ""
"Sets the material for processing the particles. Note: this is not the "
"material used to draw the materials. Equivalent to [member GPUParticles3D."
"process_material]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2261
+#: doc/classes/RenderingServer.xml:2260
msgid ""
"Sets the emission randomness ratio. This randomizes the emission of "
"particles within their phase. Equivalent to [member GPUParticles3D."
"randomness]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2272
+#: doc/classes/RenderingServer.xml:2271
msgid ""
"Sets the speed scale of the particle system. Equivalent to [member "
"GPUParticles3D.speed_scale]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2283
+#: doc/classes/RenderingServer.xml:2282
msgid ""
"If [code]true[/code], particles use local coordinates. If [code]false[/code] "
"they use global coordinates. Equivalent to [member GPUParticles3D."
"local_coords]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2290
+#: doc/classes/RenderingServer.xml:2289
msgid ""
"Creates a reflection probe and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42629,85 +43349,64 @@ msgid ""
"[method instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2303
+#: doc/classes/RenderingServer.xml:2332
msgid ""
"If [code]true[/code], reflections will ignore sky contribution. Equivalent "
-"to [member ReflectionProbe.interior_enable]."
+"to [member ReflectionProbe.interior]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2314
+#: doc/classes/RenderingServer.xml:2343
msgid ""
"Sets the render cull mask for this reflection probe. Only instances with a "
"matching cull mask will be rendered by this probe. Equivalent to [member "
"ReflectionProbe.cull_mask]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2325
+#: doc/classes/RenderingServer.xml:2354
msgid ""
"If [code]true[/code], uses box projection. This can make reflections look "
"more correct in certain situations. Equivalent to [member ReflectionProbe."
"box_projection]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2336
+#: doc/classes/RenderingServer.xml:2365
msgid ""
"If [code]true[/code], computes shadows in the reflection probe. This makes "
"the reflection much slower to compute. Equivalent to [member ReflectionProbe."
"enable_shadows]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2347
+#: doc/classes/RenderingServer.xml:2376
msgid ""
"Sets the size of the area that the reflection probe will capture. Equivalent "
"to [member ReflectionProbe.extents]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2358
+#: doc/classes/RenderingServer.xml:2387
msgid ""
"Sets the intensity of the reflection probe. Intensity modulates the strength "
"of the reflection. Equivalent to [member ReflectionProbe.intensity]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2369
-msgid ""
-"Sets the ambient light color for this reflection probe when set to interior "
-"mode. Equivalent to [member ReflectionProbe.interior_ambient_color]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2380
-msgid ""
-"Sets the energy multiplier for this reflection probes ambient light "
-"contribution when set to interior mode. Equivalent to [member "
-"ReflectionProbe.interior_ambient_energy]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2391
-msgid ""
-"Sets the contribution value for how much the reflection affects the ambient "
-"light for this reflection probe when set to interior mode. Useful so that "
-"ambient light matches the color of the room. Equivalent to [member "
-"ReflectionProbe.interior_ambient_contrib]."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:2402
+#: doc/classes/RenderingServer.xml:2398
msgid ""
"Sets the max distance away from the probe an object can be before it is "
"culled. Equivalent to [member ReflectionProbe.max_distance]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2413
+#: doc/classes/RenderingServer.xml:2409
msgid ""
"Sets the origin offset to be used when this reflection probe is in box "
"project mode. Equivalent to [member ReflectionProbe.origin_offset]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2424
+#: doc/classes/RenderingServer.xml:2420
msgid ""
"Sets how often the reflection probe updates. Can either be once or every "
"frame. See [enum ReflectionProbeUpdateMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2437
+#: doc/classes/RenderingServer.xml:2433
msgid ""
"Schedules a callback to the corresponding named [code]method[/code] on "
"[code]where[/code] after a frame has been drawn.\n"
@@ -42715,7 +43414,7 @@ msgid ""
"[code]userdata[/code]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2445
+#: doc/classes/RenderingServer.xml:2441
msgid ""
"Creates a scenario and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all "
@@ -42725,24 +43424,24 @@ msgid ""
"The scenario is the 3D world that all the visual instances exist in."
msgstr ""
-#: doc/classes/RenderingServer.xml:2458
+#: doc/classes/RenderingServer.xml:2454
msgid ""
"Sets the [enum ScenarioDebugMode] for this scenario. See [enum "
"ScenarioDebugMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2469
+#: doc/classes/RenderingServer.xml:2465
msgid "Sets the environment that will be used with this scenario."
msgstr ""
-#: doc/classes/RenderingServer.xml:2480
+#: doc/classes/RenderingServer.xml:2476
msgid ""
"Sets the fallback environment to be used by this scenario. The fallback "
"environment is used if no environment is set. Internally, this is used by "
"the editor to provide a default environment."
msgstr ""
-#: doc/classes/RenderingServer.xml:2495
+#: doc/classes/RenderingServer.xml:2491
msgid ""
"Sets a boot image. The color defines the background color. If [code]scale[/"
"code] is [code]true[/code], the image will be scaled to fit the screen size. "
@@ -42751,19 +43450,19 @@ msgid ""
"the image will be scaled with nearest-neighbor interpolation."
msgstr ""
-#: doc/classes/RenderingServer.xml:2504
+#: doc/classes/RenderingServer.xml:2500
msgid ""
"If [code]true[/code], the engine will generate wireframes for use with the "
"wireframe debug mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:2513
+#: doc/classes/RenderingServer.xml:2509
msgid ""
"Sets the default clear color which is used when a specific clear color has "
"not been selected."
msgstr ""
-#: doc/classes/RenderingServer.xml:2520
+#: doc/classes/RenderingServer.xml:2516
msgid ""
"Creates an empty shader and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42772,47 +43471,47 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2530
+#: doc/classes/RenderingServer.xml:2526
msgid "Returns a shader's code."
msgstr ""
-#: doc/classes/RenderingServer.xml:2541
+#: doc/classes/RenderingServer.xml:2537
msgid "Returns a default texture from a shader searched by name."
msgstr ""
-#: doc/classes/RenderingServer.xml:2560
+#: doc/classes/RenderingServer.xml:2556
msgid "Returns the parameters of a shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:2571
+#: doc/classes/RenderingServer.xml:2567
msgid "Sets a shader's code."
msgstr ""
-#: doc/classes/RenderingServer.xml:2584
+#: doc/classes/RenderingServer.xml:2580
msgid "Sets a shader's default texture. Overwrites the texture given by name."
msgstr ""
-#: doc/classes/RenderingServer.xml:2597
+#: doc/classes/RenderingServer.xml:2593
msgid "Allocates the GPU buffers for this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2608
+#: doc/classes/RenderingServer.xml:2604
msgid "Returns the [Transform] set for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2619
+#: doc/classes/RenderingServer.xml:2615
msgid "Returns the [Transform2D] set for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2632
+#: doc/classes/RenderingServer.xml:2628
msgid "Sets the [Transform] for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2645
+#: doc/classes/RenderingServer.xml:2641
msgid "Sets the [Transform2D] for a specific bone of this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2652
+#: doc/classes/RenderingServer.xml:2648
msgid ""
"Creates a skeleton and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all "
@@ -42821,11 +43520,11 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2662
+#: doc/classes/RenderingServer.xml:2658
msgid "Returns the number of bones allocated for this skeleton."
msgstr ""
-#: doc/classes/RenderingServer.xml:2669
+#: doc/classes/RenderingServer.xml:2665
msgid ""
"Creates an empty sky and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all [code]sky_*[/"
@@ -42834,13 +43533,13 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2681
+#: doc/classes/RenderingServer.xml:2677
msgid ""
"Sets the material that the sky uses to render the background and reflection "
"maps."
msgstr ""
-#: doc/classes/RenderingServer.xml:2688
+#: doc/classes/RenderingServer.xml:2684
msgid ""
"Creates a spot light and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID can be used in most [code]light_*[/"
@@ -42851,15 +43550,15 @@ msgid ""
"instance_set_base] using the returned RID."
msgstr ""
-#: doc/classes/RenderingServer.xml:2717
+#: doc/classes/RenderingServer.xml:2713
msgid "Sets a viewport's camera."
msgstr ""
-#: doc/classes/RenderingServer.xml:2728
+#: doc/classes/RenderingServer.xml:2724
msgid "Sets a viewport's canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:2741
+#: doc/classes/RenderingServer.xml:2737
msgid ""
"Copies the viewport to a region of the screen specified by [code]rect[/"
"code]. If [method viewport_set_render_direct_to_screen] is [code]true[/"
@@ -42881,7 +43580,7 @@ msgid ""
"viewport_set_render_direct_to_screen]."
msgstr ""
-#: doc/classes/RenderingServer.xml:2755
+#: doc/classes/RenderingServer.xml:2751
msgid ""
"Creates an empty viewport and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
@@ -42890,72 +43589,72 @@ msgid ""
"RenderingServer's [method free_rid] static method."
msgstr ""
-#: doc/classes/RenderingServer.xml:2767
+#: doc/classes/RenderingServer.xml:2763
msgid ""
"Returns a viewport's render information. For options, see the [enum "
"ViewportRenderInfo] constants."
msgstr ""
-#: doc/classes/RenderingServer.xml:2776
+#: doc/classes/RenderingServer.xml:2772
msgid "Returns the viewport's last rendered frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:2787
+#: doc/classes/RenderingServer.xml:2783
msgid "Detaches a viewport from a canvas and vice versa."
msgstr ""
-#: doc/classes/RenderingServer.xml:2798
+#: doc/classes/RenderingServer.xml:2794
msgid "If [code]true[/code], sets the viewport active, else sets it inactive."
msgstr ""
-#: doc/classes/RenderingServer.xml:2813
+#: doc/classes/RenderingServer.xml:2809
msgid ""
"Sets the stacking order for a viewport's canvas.\n"
"[code]layer[/code] is the actual canvas layer, while [code]sublayer[/code] "
"specifies the stacking order of the canvas among those in the same layer."
msgstr ""
-#: doc/classes/RenderingServer.xml:2827
+#: doc/classes/RenderingServer.xml:2823
msgid "Sets the transformation of a viewport's canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:2838
+#: doc/classes/RenderingServer.xml:2834
msgid ""
"Sets the clear mode of a viewport. See [enum ViewportClearMode] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2849
+#: doc/classes/RenderingServer.xml:2845
msgid ""
"Sets the debug draw mode of a viewport. See [enum ViewportDebugDraw] for "
"options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2860
+#: doc/classes/RenderingServer.xml:2856
msgid ""
"If [code]true[/code], rendering of a viewport's environment is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:2871
+#: doc/classes/RenderingServer.xml:2867
msgid "Sets the viewport's global transformation matrix."
msgstr ""
-#: doc/classes/RenderingServer.xml:2882
+#: doc/classes/RenderingServer.xml:2878
msgid "If [code]true[/code], the viewport's canvas is not rendered."
msgstr ""
-#: doc/classes/RenderingServer.xml:2893
+#: doc/classes/RenderingServer.xml:2889
msgid "Currently unimplemented in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:2904
+#: doc/classes/RenderingServer.xml:2900
msgid "Sets the anti-aliasing mode. See [enum ViewportMSAA] for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:2915
+#: doc/classes/RenderingServer.xml:2911
msgid "Sets the viewport's parent to another viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:2926
+#: doc/classes/RenderingServer.xml:2922
msgid ""
"If [code]true[/code], render the contents of the viewport directly to "
"screen. This allows a low-level optimization where you can skip drawing a "
@@ -42971,455 +43670,455 @@ msgid ""
"significantly larger than the window size."
msgstr ""
-#: doc/classes/RenderingServer.xml:2937
+#: doc/classes/RenderingServer.xml:2933
msgid ""
"Sets a viewport's scenario.\n"
"The scenario contains information about the [enum ScenarioDebugMode], "
"environment information, reflection atlas etc."
msgstr ""
-#: doc/classes/RenderingServer.xml:2951
+#: doc/classes/RenderingServer.xml:2947
msgid "Sets the shadow atlas quadrant's subdivision."
msgstr ""
-#: doc/classes/RenderingServer.xml:2962
+#: doc/classes/RenderingServer.xml:2958
msgid ""
"Sets the size of the shadow atlas's images (used for omni and spot lights). "
"The value will be rounded up to the nearest power of 2."
msgstr ""
-#: doc/classes/RenderingServer.xml:2975
+#: doc/classes/RenderingServer.xml:2971
msgid "Sets the viewport's width and height."
msgstr ""
-#: doc/classes/RenderingServer.xml:2986
+#: doc/classes/RenderingServer.xml:2982
msgid ""
"If [code]true[/code], the viewport renders its background as transparent."
msgstr ""
-#: doc/classes/RenderingServer.xml:2997
+#: doc/classes/RenderingServer.xml:2993
msgid ""
"Sets when the viewport should be updated. See [enum ViewportUpdateMode] "
"constants for options."
msgstr ""
-#: doc/classes/RenderingServer.xml:3008
+#: doc/classes/RenderingServer.xml:3004
msgid ""
"If [code]true[/code], the viewport uses augmented or virtual reality "
"technologies. See [XRInterface]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3014
+#: doc/classes/RenderingServer.xml:3010
msgid ""
"If [code]false[/code], disables rendering completely, but the engine logic "
"is still being processed. You can call [method force_draw] to draw a frame "
"even with rendering disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3020
+#: doc/classes/RenderingServer.xml:3016
msgid ""
"Emitted at the end of the frame, after the RenderingServer has finished "
"updating all the Viewports."
msgstr ""
-#: doc/classes/RenderingServer.xml:3025
+#: doc/classes/RenderingServer.xml:3021
msgid ""
"Emitted at the beginning of the frame, before the RenderingServer updates "
"all the Viewports."
msgstr ""
-#: doc/classes/RenderingServer.xml:3031
+#: doc/classes/RenderingServer.xml:3027
msgid "Marks an error that shows that the index array is empty."
msgstr ""
-#: doc/classes/RenderingServer.xml:3034
+#: doc/classes/RenderingServer.xml:3030
msgid "Number of weights/bones per vertex."
msgstr ""
-#: doc/classes/RenderingServer.xml:3037
+#: doc/classes/RenderingServer.xml:3033
msgid "The minimum Z-layer for canvas items."
msgstr ""
-#: doc/classes/RenderingServer.xml:3040
+#: doc/classes/RenderingServer.xml:3036
msgid "The maximum Z-layer for canvas items."
msgstr ""
-#: doc/classes/RenderingServer.xml:3043
+#: doc/classes/RenderingServer.xml:3039
msgid ""
"Max number of glow levels that can be used with glow post-process effect."
msgstr ""
-#: doc/classes/RenderingServer.xml:3046
+#: doc/classes/RenderingServer.xml:3042
msgid "Unused enum in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:3067
+#: doc/classes/RenderingServer.xml:3063
msgid "Shader is a 3D shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3070
+#: doc/classes/RenderingServer.xml:3066
msgid "Shader is a 2D shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3073
+#: doc/classes/RenderingServer.xml:3069
msgid "Shader is a particle shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3076
+#: doc/classes/RenderingServer.xml:3072
msgid "Shader is a sky shader."
msgstr ""
-#: doc/classes/RenderingServer.xml:3079
+#: doc/classes/RenderingServer.xml:3075
msgid "Represents the size of the [enum ShaderMode] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3082
+#: doc/classes/RenderingServer.xml:3078
msgid "The minimum renderpriority of all materials."
msgstr ""
-#: doc/classes/RenderingServer.xml:3085
+#: doc/classes/RenderingServer.xml:3081
msgid "The maximum renderpriority of all materials."
msgstr ""
-#: doc/classes/RenderingServer.xml:3088
+#: doc/classes/RenderingServer.xml:3084
msgid "Array is a vertex array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3091
+#: doc/classes/RenderingServer.xml:3087
msgid "Array is a normal array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3094
+#: doc/classes/RenderingServer.xml:3090
msgid "Array is a tangent array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3097
+#: doc/classes/RenderingServer.xml:3093
msgid "Array is a color array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3100
+#: doc/classes/RenderingServer.xml:3096
msgid "Array is an UV coordinates array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3103
+#: doc/classes/RenderingServer.xml:3099
msgid "Array is an UV coordinates array for the second UV coordinates."
msgstr ""
-#: doc/classes/RenderingServer.xml:3106
+#: doc/classes/RenderingServer.xml:3102
msgid "Array contains bone information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3109
+#: doc/classes/RenderingServer.xml:3105
msgid "Array is weight information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3112
+#: doc/classes/RenderingServer.xml:3108
msgid "Array is index array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3118
+#: doc/classes/RenderingServer.xml:3114
msgid "Flag used to mark a vertex array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3121
+#: doc/classes/RenderingServer.xml:3117
msgid "Flag used to mark a normal array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3124
+#: doc/classes/RenderingServer.xml:3120
msgid "Flag used to mark a tangent array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3127
+#: doc/classes/RenderingServer.xml:3123
msgid "Flag used to mark a color array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3130
+#: doc/classes/RenderingServer.xml:3126
msgid "Flag used to mark an UV coordinates array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3133
+#: doc/classes/RenderingServer.xml:3129
msgid ""
"Flag used to mark an UV coordinates array for the second UV coordinates."
msgstr ""
-#: doc/classes/RenderingServer.xml:3136
+#: doc/classes/RenderingServer.xml:3132
msgid "Flag used to mark a bone information array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3139
+#: doc/classes/RenderingServer.xml:3135
msgid "Flag used to mark a weights array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3142
+#: doc/classes/RenderingServer.xml:3138
msgid "Flag used to mark an index array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3171
+#: doc/classes/RenderingServer.xml:3167
msgid "Primitive to draw consists of points."
msgstr ""
-#: doc/classes/RenderingServer.xml:3174
+#: doc/classes/RenderingServer.xml:3170
msgid "Primitive to draw consists of lines."
msgstr ""
-#: doc/classes/RenderingServer.xml:3177
+#: doc/classes/RenderingServer.xml:3173
msgid "Primitive to draw consists of a line strip from start to end."
msgstr ""
-#: doc/classes/RenderingServer.xml:3180
+#: doc/classes/RenderingServer.xml:3176
msgid "Primitive to draw consists of triangles."
msgstr ""
-#: doc/classes/RenderingServer.xml:3183
+#: doc/classes/RenderingServer.xml:3179
msgid ""
"Primitive to draw consists of a triangle strip (the last 3 vertices are "
"always combined to make a triangle)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3186
+#: doc/classes/RenderingServer.xml:3182
msgid "Represents the size of the [enum PrimitiveType] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3195
+#: doc/classes/RenderingServer.xml:3191
msgid "Use [Transform2D] to store MultiMesh transform."
msgstr ""
-#: doc/classes/RenderingServer.xml:3198
+#: doc/classes/RenderingServer.xml:3194
msgid "Use [Transform] to store MultiMesh transform."
msgstr ""
-#: doc/classes/RenderingServer.xml:3201
+#: doc/classes/RenderingServer.xml:3197
msgid "Is a directional (sun) light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3204
+#: doc/classes/RenderingServer.xml:3200
msgid "Is an omni light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3207
+#: doc/classes/RenderingServer.xml:3203
msgid "Is a spot light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3210
+#: doc/classes/RenderingServer.xml:3206
msgid "The light's energy."
msgstr ""
-#: doc/classes/RenderingServer.xml:3215
+#: doc/classes/RenderingServer.xml:3211
msgid "The light's influence on specularity."
msgstr ""
-#: doc/classes/RenderingServer.xml:3218
+#: doc/classes/RenderingServer.xml:3214
msgid "The light's range."
msgstr ""
-#: doc/classes/RenderingServer.xml:3221
+#: doc/classes/RenderingServer.xml:3217
msgid ""
"The size of the light when using spot light or omni light. The angular size "
"of the light when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3224
+#: doc/classes/RenderingServer.xml:3220
msgid "The light's attenuation."
msgstr ""
-#: doc/classes/RenderingServer.xml:3227
+#: doc/classes/RenderingServer.xml:3223
msgid "The spotlight's angle."
msgstr ""
-#: doc/classes/RenderingServer.xml:3230
+#: doc/classes/RenderingServer.xml:3226
msgid "The spotlight's attenuation."
msgstr ""
-#: doc/classes/RenderingServer.xml:3233
+#: doc/classes/RenderingServer.xml:3229
msgid "Max distance that shadows will be rendered."
msgstr ""
-#: doc/classes/RenderingServer.xml:3236
+#: doc/classes/RenderingServer.xml:3232
msgid "Proportion of shadow atlas occupied by the first split."
msgstr ""
-#: doc/classes/RenderingServer.xml:3239
+#: doc/classes/RenderingServer.xml:3235
msgid "Proportion of shadow atlas occupied by the second split."
msgstr ""
-#: doc/classes/RenderingServer.xml:3242
+#: doc/classes/RenderingServer.xml:3238
msgid ""
"Proportion of shadow atlas occupied by the third split. The fourth split "
"occupies the rest."
msgstr ""
-#: doc/classes/RenderingServer.xml:3245
+#: doc/classes/RenderingServer.xml:3241
msgid ""
"Proportion of shadow max distance where the shadow will start to fade out."
msgstr ""
-#: doc/classes/RenderingServer.xml:3248
+#: doc/classes/RenderingServer.xml:3244
msgid ""
"Normal bias used to offset shadow lookup by object normal. Can be used to "
"fix self-shadowing artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3251
+#: doc/classes/RenderingServer.xml:3247
msgid "Bias the shadow lookup to fix self-shadowing artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3257
+#: doc/classes/RenderingServer.xml:3253
msgid ""
"Blurs the edges of the shadow. Can be used to hide pixel artifacts in low "
"resolution shadow maps. A high value can make shadows appear grainy and can "
"cause other unwanted artifacts. Try to keep as near default as possible."
msgstr ""
-#: doc/classes/RenderingServer.xml:3262
+#: doc/classes/RenderingServer.xml:3258
msgid "Represents the size of the [enum LightParam] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3265
+#: doc/classes/RenderingServer.xml:3267
msgid "Use a dual paraboloid shadow map for omni lights."
msgstr ""
-#: doc/classes/RenderingServer.xml:3268
+#: doc/classes/RenderingServer.xml:3270
msgid ""
"Use a cubemap shadow map for omni lights. Slower but better quality than "
"dual paraboloid."
msgstr ""
-#: doc/classes/RenderingServer.xml:3271
+#: doc/classes/RenderingServer.xml:3273
msgid "Use orthogonal shadow projection for directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3274
+#: doc/classes/RenderingServer.xml:3276
msgid "Use 2 splits for shadow projection when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3277
+#: doc/classes/RenderingServer.xml:3279
msgid "Use 4 splits for shadow projection when using directional light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3280
+#: doc/classes/RenderingServer.xml:3282
msgid ""
"Keeps shadows stable as camera moves but has lower effective resolution."
msgstr ""
-#: doc/classes/RenderingServer.xml:3283
+#: doc/classes/RenderingServer.xml:3285
msgid ""
"Optimize use of shadow maps, increasing the effective resolution. But may "
"result in shadows moving or flickering slightly."
msgstr ""
-#: doc/classes/RenderingServer.xml:3286
+#: doc/classes/RenderingServer.xml:3288
msgid "Reflection probe will update reflections once and then stop."
msgstr ""
-#: doc/classes/RenderingServer.xml:3289
+#: doc/classes/RenderingServer.xml:3291
msgid ""
"Reflection probe will update each frame. This mode is necessary to capture "
"moving objects."
msgstr ""
-#: doc/classes/RenderingServer.xml:3302
+#: doc/classes/RenderingServer.xml:3310
msgid "Draw particles in the order that they appear in the particles array."
msgstr ""
-#: doc/classes/RenderingServer.xml:3305
+#: doc/classes/RenderingServer.xml:3313
msgid "Sort particles based on their lifetime."
msgstr ""
-#: doc/classes/RenderingServer.xml:3308
+#: doc/classes/RenderingServer.xml:3316
msgid "Sort particles based on their distance to the camera."
msgstr ""
-#: doc/classes/RenderingServer.xml:3311
+#: doc/classes/RenderingServer.xml:3319
msgid "Do not update the viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:3314
+#: doc/classes/RenderingServer.xml:3322
msgid "Update the viewport once then set to disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3317
+#: doc/classes/RenderingServer.xml:3325
msgid "Update the viewport whenever it is visible."
msgstr ""
-#: doc/classes/RenderingServer.xml:3322
+#: doc/classes/RenderingServer.xml:3330
msgid "Always update the viewport."
msgstr ""
-#: doc/classes/RenderingServer.xml:3325
+#: doc/classes/RenderingServer.xml:3333
msgid "The viewport is always cleared before drawing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3328
+#: doc/classes/RenderingServer.xml:3336
msgid "The viewport is never cleared before drawing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3331
+#: doc/classes/RenderingServer.xml:3339
msgid ""
"The viewport is cleared once, then the clear mode is set to [constant "
"VIEWPORT_CLEAR_NEVER]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3334
+#: doc/classes/RenderingServer.xml:3342
msgid "Multisample antialiasing is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3337
+#: doc/classes/RenderingServer.xml:3345
msgid "Multisample antialiasing uses 2 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3340
+#: doc/classes/RenderingServer.xml:3348
msgid "Multisample antialiasing uses 4 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3343
+#: doc/classes/RenderingServer.xml:3351
msgid "Multisample antialiasing uses 8 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3346
+#: doc/classes/RenderingServer.xml:3354
msgid "Multisample antialiasing uses 16 samples per pixel."
msgstr ""
-#: doc/classes/RenderingServer.xml:3357
+#: doc/classes/RenderingServer.xml:3365
msgid "Number of objects drawn in a single frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3360
+#: doc/classes/RenderingServer.xml:3368
msgid "Number of vertices drawn in a single frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3363
+#: doc/classes/RenderingServer.xml:3371
msgid "Number of material changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3366
+#: doc/classes/RenderingServer.xml:3374
msgid "Number of shader changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3369
+#: doc/classes/RenderingServer.xml:3377
msgid "Number of surface changes during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3372
+#: doc/classes/RenderingServer.xml:3380
msgid "Number of draw calls during this frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3375
+#: doc/classes/RenderingServer.xml:3383
msgid "Represents the size of the [enum ViewportRenderInfo] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3378
+#: doc/classes/RenderingServer.xml:3386
msgid "Debug draw is disabled. Default setting."
msgstr ""
-#: doc/classes/RenderingServer.xml:3381 doc/classes/Viewport.xml:348
+#: doc/classes/RenderingServer.xml:3389 doc/classes/Viewport.xml:348
msgid "Objects are displayed without light information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3384
+#: doc/classes/RenderingServer.xml:3392
msgid "Objects are displayed with only light information."
msgstr ""
-#: doc/classes/RenderingServer.xml:3387 doc/classes/Viewport.xml:353
+#: doc/classes/RenderingServer.xml:3395 doc/classes/Viewport.xml:353
msgid ""
"Objects are displayed semi-transparent with additive blending so you can see "
"where they are drawing over top of one another. A higher overdraw means you "
@@ -43427,41 +44126,41 @@ msgid ""
"others."
msgstr ""
-#: doc/classes/RenderingServer.xml:3390
+#: doc/classes/RenderingServer.xml:3398
msgid "Debug draw draws objects in wireframe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3393
+#: doc/classes/RenderingServer.xml:3401
msgid ""
"Normal buffer is drawn instead of regular scene so you can see the per-pixel "
"normals that will be used by post-processing effects."
msgstr ""
-#: doc/classes/RenderingServer.xml:3396 doc/classes/Viewport.xml:361
+#: doc/classes/RenderingServer.xml:3404 doc/classes/Viewport.xml:361
msgid "Objects are displayed with only the albedo value from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3399 doc/classes/Viewport.xml:364
+#: doc/classes/RenderingServer.xml:3407 doc/classes/Viewport.xml:364
msgid "Objects are displayed with only the lighting value from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3402 doc/classes/Viewport.xml:367
+#: doc/classes/RenderingServer.xml:3410 doc/classes/Viewport.xml:367
msgid "Objects are displayed with only the emission color from [GIProbe]s."
msgstr ""
-#: doc/classes/RenderingServer.xml:3405 doc/classes/Viewport.xml:370
+#: doc/classes/RenderingServer.xml:3413 doc/classes/Viewport.xml:370
msgid ""
"Draws the shadow atlas that stores shadows from [OmniLight3D]s and "
"[SpotLight3D]s in the upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3408 doc/classes/Viewport.xml:373
+#: doc/classes/RenderingServer.xml:3416 doc/classes/Viewport.xml:373
msgid ""
"Draws the shadow atlas that stores shadows from [DirectionalLight3D]s in the "
"upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3413
+#: doc/classes/RenderingServer.xml:3421
msgid ""
"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 "
@@ -43469,21 +44168,14 @@ msgid ""
"your [WorldEnvironment]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3416 doc/classes/Viewport.xml:381
-msgid ""
-"Draws the roughness limiter post process over the Viewport so you can see "
-"where it has an effect. It must be enabled in [member ProjectSettings."
-"rendering/quality/screen_filters/screen_space_roughness_limiter] to work."
-msgstr ""
-
-#: doc/classes/RenderingServer.xml:3419
+#: doc/classes/RenderingServer.xml:3424
msgid ""
"Colors each PSSM split for the [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."
msgstr ""
-#: doc/classes/RenderingServer.xml:3424
+#: doc/classes/RenderingServer.xml:3435
msgid ""
"Uses high quality importance sampling to process the radiance map. In "
"general, this results in much higher quality than [constant Sky."
@@ -43494,7 +44186,7 @@ msgid ""
"ggx_samples]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3427
+#: doc/classes/RenderingServer.xml:3438
msgid ""
"Uses the fast filtering algorithm to process the radiance map. In general "
"this results in lower quality, but substantially faster run times.\n"
@@ -43502,347 +44194,347 @@ msgid ""
"[member Sky.radiance_size] must be set to [constant Sky.RADIANCE_SIZE_256]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3431
+#: doc/classes/RenderingServer.xml:3442
msgid "Use the clear color as background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3434
+#: doc/classes/RenderingServer.xml:3445
msgid "Use a specified color as the background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3437
+#: doc/classes/RenderingServer.xml:3448
msgid "Use a sky resource for the background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3440
+#: doc/classes/RenderingServer.xml:3451
msgid ""
"Use a specified canvas layer as the background. This can be useful for "
"instantiating a 2D scene in a 3D world."
msgstr ""
-#: doc/classes/RenderingServer.xml:3443
+#: doc/classes/RenderingServer.xml:3454
msgid ""
"Do not clear the background, use whatever was rendered last frame as the "
"background."
msgstr ""
-#: doc/classes/RenderingServer.xml:3449
+#: doc/classes/RenderingServer.xml:3460
msgid "Represents the size of the [enum EnvironmentBG] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3488
+#: doc/classes/RenderingServer.xml:3499
msgid "Output color as they came in."
msgstr ""
-#: doc/classes/RenderingServer.xml:3491
+#: doc/classes/RenderingServer.xml:3502
msgid "Use the Reinhard tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3494
+#: doc/classes/RenderingServer.xml:3505
msgid "Use the filmic tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3497
+#: doc/classes/RenderingServer.xml:3508
msgid "Use the ACES tonemapper."
msgstr ""
-#: doc/classes/RenderingServer.xml:3508
+#: doc/classes/RenderingServer.xml:3519
msgid "Disables the blur set for SSAO. Will make SSAO look noisier."
msgstr ""
-#: doc/classes/RenderingServer.xml:3511
+#: doc/classes/RenderingServer.xml:3522
msgid "Perform a 1x1 blur on the SSAO output."
msgstr ""
-#: doc/classes/RenderingServer.xml:3514
+#: doc/classes/RenderingServer.xml:3525
msgid "Performs a 2x2 blur on the SSAO output."
msgstr ""
-#: doc/classes/RenderingServer.xml:3517
+#: doc/classes/RenderingServer.xml:3528
msgid "Performs a 3x3 blur on the SSAO output. Use this for smoothest SSAO."
msgstr ""
-#: doc/classes/RenderingServer.xml:3520
+#: doc/classes/RenderingServer.xml:3531
msgid "Lowest quality of screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3523
+#: doc/classes/RenderingServer.xml:3534
msgid "Medium quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3526
+#: doc/classes/RenderingServer.xml:3537
msgid "High quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3529
+#: doc/classes/RenderingServer.xml:3540
msgid "Highest quality screen space ambient occlusion."
msgstr ""
-#: doc/classes/RenderingServer.xml:3540
+#: doc/classes/RenderingServer.xml:3551
msgid ""
"Lowest quality DOF blur. This is the fastest setting, but you may be able to "
"see filtering artifacts."
msgstr ""
-#: doc/classes/RenderingServer.xml:3543
+#: doc/classes/RenderingServer.xml:3554
msgid "Low quality DOF blur."
msgstr ""
-#: doc/classes/RenderingServer.xml:3546
+#: doc/classes/RenderingServer.xml:3557
msgid "Medium quality DOF blur."
msgstr ""
-#: doc/classes/RenderingServer.xml:3549
+#: doc/classes/RenderingServer.xml:3560
msgid ""
"Highest quality DOF blur. Results in the smoothest looking blur by taking "
"the most samples, but is also significantly slower."
msgstr ""
-#: doc/classes/RenderingServer.xml:3552
+#: doc/classes/RenderingServer.xml:3563
msgid ""
"Calculate the DOF blur using a box filter. The fastest option, but results "
"in obvious lines in blur pattern."
msgstr ""
-#: doc/classes/RenderingServer.xml:3555
+#: doc/classes/RenderingServer.xml:3566
msgid "Calculates DOF blur using a hexagon shaped filter."
msgstr ""
-#: doc/classes/RenderingServer.xml:3558
+#: doc/classes/RenderingServer.xml:3569
msgid ""
"Calculates DOF blur using a circle shaped filter. Best quality and most "
"realistic, but slowest. Use only for areas where a lot of performance can be "
"dedicated to post-processing (e.g. cutscenes)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3573
+#: doc/classes/RenderingServer.xml:3584
msgid "Do not use a debug mode."
msgstr ""
-#: doc/classes/RenderingServer.xml:3576
+#: doc/classes/RenderingServer.xml:3587
msgid "Draw all objects as wireframe models."
msgstr ""
-#: doc/classes/RenderingServer.xml:3579
+#: doc/classes/RenderingServer.xml:3590
msgid ""
"Draw all objects in a way that displays how much overdraw is occurring. "
"Overdraw occurs when a section of pixels is drawn and shaded and then "
"another object covers it up. To optimize a scene, you should reduce overdraw."
msgstr ""
-#: doc/classes/RenderingServer.xml:3582
+#: doc/classes/RenderingServer.xml:3593
msgid ""
"Draw all objects without shading. Equivalent to setting all objects shaders "
"to [code]unshaded[/code]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3585
+#: doc/classes/RenderingServer.xml:3596
msgid "The instance does not have a type."
msgstr ""
-#: doc/classes/RenderingServer.xml:3588
+#: doc/classes/RenderingServer.xml:3599
msgid "The instance is a mesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:3591
+#: doc/classes/RenderingServer.xml:3602
msgid "The instance is a multimesh."
msgstr ""
-#: doc/classes/RenderingServer.xml:3594
+#: doc/classes/RenderingServer.xml:3605
msgid "The instance is an immediate geometry."
msgstr ""
-#: doc/classes/RenderingServer.xml:3597
+#: doc/classes/RenderingServer.xml:3608
msgid "The instance is a particle emitter."
msgstr ""
-#: doc/classes/RenderingServer.xml:3600
+#: doc/classes/RenderingServer.xml:3611
msgid "The instance is a light."
msgstr ""
-#: doc/classes/RenderingServer.xml:3603
+#: doc/classes/RenderingServer.xml:3614
msgid "The instance is a reflection probe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3606
+#: doc/classes/RenderingServer.xml:3617
msgid "The instance is a decal."
msgstr ""
-#: doc/classes/RenderingServer.xml:3609
+#: doc/classes/RenderingServer.xml:3620
msgid "The instance is a GI probe."
msgstr ""
-#: doc/classes/RenderingServer.xml:3612
+#: doc/classes/RenderingServer.xml:3623
msgid "The instance is a lightmap."
msgstr ""
-#: doc/classes/RenderingServer.xml:3615
+#: doc/classes/RenderingServer.xml:3626
msgid "Represents the size of the [enum InstanceType] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3618
+#: doc/classes/RenderingServer.xml:3629
msgid ""
"A combination of the flags of geometry instances (mesh, multimesh, immediate "
"and particles)."
msgstr ""
-#: doc/classes/RenderingServer.xml:3621
+#: doc/classes/RenderingServer.xml:3632
msgid "Allows the instance to be used in baked lighting."
msgstr ""
-#: doc/classes/RenderingServer.xml:3624
+#: doc/classes/RenderingServer.xml:3635
msgid "Allows the instance to be used with dynamic global illumination."
msgstr ""
-#: doc/classes/RenderingServer.xml:3627
+#: doc/classes/RenderingServer.xml:3638
msgid "When set, manually requests to draw geometry on next frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3630
+#: doc/classes/RenderingServer.xml:3641
msgid "Represents the size of the [enum InstanceFlags] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3633
+#: doc/classes/RenderingServer.xml:3644
msgid "Disable shadows from this instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:3636
+#: doc/classes/RenderingServer.xml:3647
msgid "Cast shadows from this instance."
msgstr ""
-#: doc/classes/RenderingServer.xml:3639
+#: doc/classes/RenderingServer.xml:3650
msgid ""
"Disable backface culling when rendering the shadow of the object. This is "
"slightly slower but may result in more correct shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3642
+#: doc/classes/RenderingServer.xml:3653
msgid ""
"Only render the shadows from the object. The object itself will not be drawn."
msgstr ""
-#: doc/classes/RenderingServer.xml:3645
+#: doc/classes/RenderingServer.xml:3656
msgid "The nine patch gets stretched where needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3648
+#: doc/classes/RenderingServer.xml:3659
msgid "The nine patch gets filled with tiles where needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3651
+#: doc/classes/RenderingServer.xml:3662
msgid ""
"The nine patch gets filled with tiles where needed and stretches them a bit "
"if needed."
msgstr ""
-#: doc/classes/RenderingServer.xml:3654
+#: doc/classes/RenderingServer.xml:3665
msgid "Uses the default filter mode for this [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3666 doc/classes/Viewport.xml:399
+#: doc/classes/RenderingServer.xml:3677 doc/classes/Viewport.xml:402
msgid ""
"The texture filter blends between the nearest 4 pixels and between the "
"nearest 2 mipmaps."
msgstr ""
-#: doc/classes/RenderingServer.xml:3675
+#: doc/classes/RenderingServer.xml:3686
msgid "Max value for [enum CanvasItemTextureFilter] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3678
+#: doc/classes/RenderingServer.xml:3689
msgid "Uses the default repeat mode for this [Viewport]."
msgstr ""
-#: doc/classes/RenderingServer.xml:3681 doc/classes/Viewport.xml:405
+#: doc/classes/RenderingServer.xml:3692 doc/classes/Viewport.xml:408
msgid ""
"Disables textures repeating. Instead, when reading UVs outside the 0-1 "
"range, the value will be clamped to the edge of the texture, resulting in a "
"stretched out look at the borders of the texture."
msgstr ""
-#: doc/classes/RenderingServer.xml:3687 doc/classes/Viewport.xml:411
+#: doc/classes/RenderingServer.xml:3698 doc/classes/Viewport.xml:414
msgid ""
"Flip the texture when repeating so that the edge lines up instead of "
"abruptly changing."
msgstr ""
-#: doc/classes/RenderingServer.xml:3690
+#: doc/classes/RenderingServer.xml:3701
msgid "Max value for [enum CanvasItemTextureRepeat] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3693
+#: doc/classes/RenderingServer.xml:3704
msgid "Adds light color additive to the canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:3696
+#: doc/classes/RenderingServer.xml:3707
msgid "Adds light color subtractive to the canvas."
msgstr ""
-#: doc/classes/RenderingServer.xml:3699
+#: doc/classes/RenderingServer.xml:3710
msgid "The light adds color depending on transparency."
msgstr ""
-#: doc/classes/RenderingServer.xml:3702
+#: doc/classes/RenderingServer.xml:3713
msgid "The light adds color depending on mask."
msgstr ""
-#: doc/classes/RenderingServer.xml:3705
+#: doc/classes/RenderingServer.xml:3716
msgid "Do not apply a filter to canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3708
+#: doc/classes/RenderingServer.xml:3719
msgid "Use PCF5 filtering to filter canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3711
+#: doc/classes/RenderingServer.xml:3722
msgid "Use PCF13 filtering to filter canvas light shadows."
msgstr ""
-#: doc/classes/RenderingServer.xml:3714
+#: doc/classes/RenderingServer.xml:3725
msgid "Max value of the [enum CanvasLightShadowFilter] enum."
msgstr ""
-#: doc/classes/RenderingServer.xml:3717
+#: doc/classes/RenderingServer.xml:3728
msgid "Culling of the canvas occluder is disabled."
msgstr ""
-#: doc/classes/RenderingServer.xml:3720
+#: doc/classes/RenderingServer.xml:3731
msgid "Culling of the canvas occluder is clockwise."
msgstr ""
-#: doc/classes/RenderingServer.xml:3723
+#: doc/classes/RenderingServer.xml:3734
msgid "Culling of the canvas occluder is counterclockwise."
msgstr ""
-#: doc/classes/RenderingServer.xml:3784
+#: doc/classes/RenderingServer.xml:3795
msgid "The amount of objects in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3787
+#: doc/classes/RenderingServer.xml:3798
msgid "The amount of vertices in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3790
+#: doc/classes/RenderingServer.xml:3801
msgid "The amount of modified materials in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3793
+#: doc/classes/RenderingServer.xml:3804
msgid "The amount of shader rebinds in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3796
+#: doc/classes/RenderingServer.xml:3807
msgid "The amount of surface changes in the frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3799
+#: doc/classes/RenderingServer.xml:3810
msgid "The amount of draw calls in frame."
msgstr ""
-#: doc/classes/RenderingServer.xml:3814
+#: doc/classes/RenderingServer.xml:3825
msgid "Hardware supports shaders. This enum is currently unused in Godot 3.x."
msgstr ""
-#: doc/classes/RenderingServer.xml:3817
+#: doc/classes/RenderingServer.xml:3828
msgid ""
"Hardware supports multithreading. This enum is currently unused in Godot 3.x."
msgstr ""
@@ -43854,13 +44546,13 @@ msgstr ""
#: doc/classes/Resource.xml:7
msgid ""
"Resource is the base class for all Godot-specific resource types, serving "
-"primarily as data containers. They are reference counted and freed when no "
-"longer in use. They are also cached once loaded from disk, so that any "
-"further attempts to load a resource from a given path will return the same "
-"reference (all this in contrast to a [Node], which is not reference counted "
-"and can be instanced from disk as many times as desired). Resources can be "
-"saved externally on disk or bundled into another object, such as a [Node] or "
-"another resource."
+"primarily as data containers. Unlike [Object]s, they are reference-counted "
+"and freed when no longer in use. They are also cached once loaded from disk, "
+"so that any further attempts to load a resource from a given path will "
+"return the same reference (all this in contrast to a [Node], which is not "
+"reference-counted and can be instanced from disk as many times as desired). "
+"Resources can be saved externally on disk or bundled into another object, "
+"such as a [Node] or another resource."
msgstr ""
#: doc/classes/Resource.xml:10
@@ -43869,34 +44561,38 @@ msgid ""
"resources.html"
msgstr ""
-#: doc/classes/Resource.xml:17
+#: doc/classes/Resource.xml:18
msgid ""
"Virtual function which can be overridden to customize the behavior value of "
"[method setup_local_to_scene]."
msgstr ""
-#: doc/classes/Resource.xml:26
+#: doc/classes/Resource.xml:27
msgid ""
"Duplicates the resource, returning a new resource. By default, sub-resources "
-"are shared between resource copies for efficiency, this can be changed by "
-"passing [code]true[/code] to the [code]subresources[/code] argument."
+"are shared between resource copies for efficiency. This can be changed by "
+"passing [code]true[/code] to the [code]subresources[/code] argument which "
+"will copy the subresources.\n"
+"[b]Note:[/b] If [code]subresources[/code] is [code]true[/code], this method "
+"will only perform a shallow copy. Nested resources within subresources will "
+"not be duplicated and will still be shared."
msgstr ""
-#: doc/classes/Resource.xml:33
+#: doc/classes/Resource.xml:35
msgid ""
"If [member resource_local_to_scene] is enabled and the resource was loaded "
"from a [PackedScene] instantiation, returns the local scene where this "
"resource's unique copy is in use. Otherwise, returns [code]null[/code]."
msgstr ""
-#: doc/classes/Resource.xml:40
+#: doc/classes/Resource.xml:42
msgid ""
"Returns the RID of the resource (or an empty RID). Many resources (such as "
"[Texture2D], [Mesh], etc) are high-level abstractions of resources stored in "
"a server, so this function will return the original RID."
msgstr ""
-#: doc/classes/Resource.xml:47
+#: doc/classes/Resource.xml:49
msgid ""
"This method is called when a resource with [member resource_local_to_scene] "
"enabled is loaded from a [PackedScene] instantiation. Its behavior can be "
@@ -43906,7 +44602,7 @@ msgid ""
"local viewport."
msgstr ""
-#: doc/classes/Resource.xml:57
+#: doc/classes/Resource.xml:59
msgid ""
"Sets the path of the resource, potentially overriding an existing cache "
"entry for this path. This differs from setting [member resource_path], as "
@@ -43914,25 +44610,25 @@ msgid ""
"given path."
msgstr ""
-#: doc/classes/Resource.xml:63
+#: doc/classes/Resource.xml:65
msgid ""
"If [code]true[/code], the resource will be made unique in each instance of "
"its local scene. It can thus be modified in a scene instance without "
"impacting other instances of that same scene."
msgstr ""
-#: doc/classes/Resource.xml:66
+#: doc/classes/Resource.xml:68
msgid "The name of the resource. This is an optional identifier."
msgstr ""
-#: doc/classes/Resource.xml:69
+#: doc/classes/Resource.xml:71
msgid ""
"The path to the resource. In case it has its own file, it will return its "
"filepath. If it's tied to the scene, it will return the scene's path, "
"followed by the resource's index."
msgstr ""
-#: doc/classes/Resource.xml:75
+#: doc/classes/Resource.xml:77
msgid "Emitted whenever the resource changes."
msgstr ""
@@ -44751,11 +45447,11 @@ msgid ""
"global coordinate system, but is centered at the object's origin."
msgstr ""
-#: doc/classes/RigidBody2D.xml:87
+#: doc/classes/RigidBody2D.xml:87 doc/classes/RigidBody3D.xml:99
msgid ""
-"Returns a list of the bodies colliding with this one. Use [member "
-"contacts_reported] to set the maximum number reported. You must also set "
-"[member contact_monitor] to [code]true[/code].\n"
+"Returns a list of the bodies colliding with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
"For performance, list of collisions is updated once per frame and before the "
"physics step. Consider using signals instead."
@@ -44792,7 +45488,7 @@ msgstr ""
msgid "The body's total applied torque."
msgstr ""
-#: doc/classes/RigidBody2D.xml:130 doc/classes/RigidBody3D.xml:150
+#: doc/classes/RigidBody2D.xml:130 doc/classes/RigidBody3D.xml:157
msgid ""
"If [code]true[/code], the body can enter sleep mode when there is no "
"movement. See [member sleeping]."
@@ -44804,11 +45500,17 @@ msgid ""
"another RigidBody2D. See also [member contacts_reported]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:136
-msgid "The maximum number of contacts to report."
+#: doc/classes/RigidBody2D.xml:136 doc/classes/RigidBody3D.xml:163
+msgid ""
+"The maximum number of contacts that will be recorded. Requires [member "
+"contact_monitor] to be set to [code]true[/code].\n"
+"[b]Note:[/b] The number of contacts is different from the number of "
+"collisions. Collisions between parallel edges will result in two contacts "
+"(one at each end), and collisions between parallel faces will result in four "
+"contacts (one at each corner)."
msgstr ""
-#: doc/classes/RigidBody2D.xml:139
+#: doc/classes/RigidBody2D.xml:140
msgid ""
"Continuous collision detection mode.\n"
"Continuous collision detection tries to predict where a moving body will "
@@ -44818,21 +45520,21 @@ msgid ""
"methods are available. See [enum CCDMode] for details."
msgstr ""
-#: doc/classes/RigidBody2D.xml:143
+#: doc/classes/RigidBody2D.xml:144
msgid ""
"If [code]true[/code], internal force integration is disabled for this body. "
"Aside from collision response, the body will only move as determined by the "
"[method _integrate_forces] function."
msgstr ""
-#: doc/classes/RigidBody2D.xml:146
+#: doc/classes/RigidBody2D.xml:147
msgid ""
"Multiplies the gravity applied to the body. The body's gravity is calculated "
"from the [b]Default Gravity[/b] value in [b]Project > Project Settings > "
"Physics > 2d[/b] and/or any additional gravity vector applied by [Area2D]s."
msgstr ""
-#: doc/classes/RigidBody2D.xml:149
+#: doc/classes/RigidBody2D.xml:150
msgid ""
"The body's moment of inertia. This is like mass, but for rotation: it "
"determines how much torque it takes to rotate the body. The moment of "
@@ -44841,18 +45543,18 @@ msgid ""
"automatically computing it."
msgstr ""
-#: doc/classes/RigidBody2D.xml:152
+#: doc/classes/RigidBody2D.xml:153
msgid ""
"Damps the body's [member linear_velocity]. If [code]-1[/code], the body will "
"use the [b]Default Linear Damp[/b] in [b]Project > Project Settings > "
"Physics > 2d[/b]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:161
+#: doc/classes/RigidBody2D.xml:162
msgid "The body's mode. See [enum Mode] for possible values."
msgstr ""
-#: doc/classes/RigidBody2D.xml:164 doc/classes/RigidBody3D.xml:181
+#: doc/classes/RigidBody2D.xml:165 doc/classes/RigidBody3D.xml:189
#: doc/classes/StaticBody2D.xml:22 doc/classes/StaticBody3D.xml:22
msgid ""
"The physics material override for the body.\n"
@@ -44860,50 +45562,50 @@ msgid ""
"other physics material, such as an inherited one."
msgstr ""
-#: doc/classes/RigidBody2D.xml:168 doc/classes/RigidBody3D.xml:185
+#: doc/classes/RigidBody2D.xml:169 doc/classes/RigidBody3D.xml:193
msgid ""
"If [code]true[/code], the body will not move and will not calculate forces "
"until woken up by another body through, for example, a collision, or by "
"using the [method apply_impulse] or [method add_force] methods."
msgstr ""
-#: doc/classes/RigidBody2D.xml:171
+#: doc/classes/RigidBody2D.xml:172
msgid ""
"The body's weight based on its mass and the [b]Default Gravity[/b] value in "
"[b]Project > Project Settings > Physics > 2d[/b]."
msgstr ""
-#: doc/classes/RigidBody2D.xml:179
+#: doc/classes/RigidBody2D.xml:180 doc/classes/RigidBody3D.xml:204
msgid ""
-"Emitted when a body enters into contact with this one. [member "
-"contact_monitor] must be [code]true[/code] and [member contacts_reported] "
-"greater than [code]0[/code]."
+"Emitted when a body enters into contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:186
+#: doc/classes/RigidBody2D.xml:187
msgid ""
-"Emitted when a body exits contact with this one. [member contact_monitor] "
-"must be [code]true[/code] and [member contacts_reported] greater than "
-"[code]0[/code]."
+"Emitted when a body exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:199
+#: doc/classes/RigidBody2D.xml:200
msgid ""
"Emitted when a body enters into contact with this one. Reports colliding "
"shape information. See [CollisionObject2D] for shape index information. "
-"[member contact_monitor] must be [code]true[/code] and [member "
-"contacts_reported] greater than [code]0[/code]."
+"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:212
+#: doc/classes/RigidBody2D.xml:213
msgid ""
"Emitted when a body shape exits contact with this one. Reports colliding "
"shape information. See [CollisionObject2D] for shape index information. "
-"[member contact_monitor] must be [code]true[/code] and [member "
-"contacts_reported] greater than [code]0[/code]."
+"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody2D.xml:217 doc/classes/RigidBody3D.xml:236
+#: doc/classes/RigidBody2D.xml:218 doc/classes/RigidBody3D.xml:244
msgid ""
"Emitted when the physics engine changes the body's sleeping state.\n"
"[b]Note:[/b] Changing the value [member sleeping] will not trigger this "
@@ -44911,41 +45613,41 @@ msgid ""
"engine or [code]emit_signal(\"sleeping_state_changed\")[/code] is used."
msgstr ""
-#: doc/classes/RigidBody2D.xml:224
+#: doc/classes/RigidBody2D.xml:225
msgid ""
"Rigid mode. The body behaves as a physical object. It collides with other "
"bodies and responds to forces applied to it. This is the default mode."
msgstr ""
-#: doc/classes/RigidBody2D.xml:227
+#: doc/classes/RigidBody2D.xml:228
msgid "Static mode. The body behaves like a [StaticBody2D] and does not move."
msgstr ""
-#: doc/classes/RigidBody2D.xml:230
+#: doc/classes/RigidBody2D.xml:231
msgid ""
"Character mode. Similar to [constant MODE_RIGID], but the body can not "
"rotate."
msgstr ""
-#: doc/classes/RigidBody2D.xml:233
+#: doc/classes/RigidBody2D.xml:234
msgid ""
"Kinematic mode. The body behaves like a [KinematicBody2D], and must be moved "
"by code."
msgstr ""
-#: doc/classes/RigidBody2D.xml:236
+#: doc/classes/RigidBody2D.xml:237
msgid ""
"Continuous collision detection disabled. This is the fastest way to detect "
"body collisions, but can miss small, fast-moving objects."
msgstr ""
-#: doc/classes/RigidBody2D.xml:239
+#: doc/classes/RigidBody2D.xml:240
msgid ""
"Continuous collision detection enabled using raycasting. This is faster than "
"shapecasting but less precise."
msgstr ""
-#: doc/classes/RigidBody2D.xml:242
+#: doc/classes/RigidBody2D.xml:243
msgid ""
"Continuous collision detection enabled using shapecasting. This is the "
"slowest CCD method and the most precise."
@@ -45031,42 +45733,31 @@ msgid ""
"locked."
msgstr ""
-#: doc/classes/RigidBody3D.xml:99
+#: doc/classes/RigidBody3D.xml:107
msgid ""
-"Returns a list of the bodies colliding with this one. By default, number of "
-"max contacts reported is at 0, see the [member contacts_reported] property "
-"to increase it.\n"
-"[b]Note:[/b] The result of this test is not immediate after moving objects. "
-"For performance, list of collisions is updated once per frame and before the "
-"physics step. Consider using signals instead."
+"Returns the inverse inertia tensor basis. This is used to calculate the "
+"angular acceleration resulting from a torque applied to the [RigidBody3D]."
msgstr ""
-#: doc/classes/RigidBody3D.xml:111
+#: doc/classes/RigidBody3D.xml:118
msgid "Locks the specified linear or rotational axis."
msgstr ""
-#: doc/classes/RigidBody3D.xml:126
+#: doc/classes/RigidBody3D.xml:133
msgid "Damps RigidBody3D's rotational forces."
msgstr ""
-#: doc/classes/RigidBody3D.xml:129
+#: doc/classes/RigidBody3D.xml:136
msgid "RigidBody3D's rotational velocity."
msgstr ""
-#: doc/classes/RigidBody3D.xml:153
+#: doc/classes/RigidBody3D.xml:160
msgid ""
"If [code]true[/code], the RigidBody3D will emit signals when it collides "
-"with another RigidBody3D."
-msgstr ""
-
-#: doc/classes/RigidBody3D.xml:156
-msgid ""
-"The maximum contacts to report. Bodies can keep a log of the contacts with "
-"other bodies, this is enabled by setting the maximum amount of contacts "
-"reported to a number greater than 0."
+"with another RigidBody3D. See also [member contacts_reported]."
msgstr ""
-#: doc/classes/RigidBody3D.xml:159
+#: doc/classes/RigidBody3D.xml:167
msgid ""
"If [code]true[/code], continuous collision detection is used.\n"
"Continuous collision detection tries to predict where a moving body will "
@@ -45076,7 +45767,7 @@ msgid ""
"faster to compute, but can miss small, fast-moving objects."
msgstr ""
-#: doc/classes/RigidBody3D.xml:163
+#: doc/classes/RigidBody3D.xml:171
msgid ""
"If [code]true[/code], internal force integration will be disabled (like "
"gravity or air friction) for this body. Other than collision response, the "
@@ -45084,7 +45775,7 @@ msgid ""
"function, if defined."
msgstr ""
-#: doc/classes/RigidBody3D.xml:166
+#: doc/classes/RigidBody3D.xml:174
msgid ""
"This is multiplied by the global 3D gravity setting found in [b]Project > "
"Project Settings > Physics > 3d[/b] to produce RigidBody3D's gravity. For "
@@ -45092,14 +45783,14 @@ msgid ""
"and 0.5 will apply half gravity to this object."
msgstr ""
-#: doc/classes/RigidBody3D.xml:169
+#: doc/classes/RigidBody3D.xml:177
msgid ""
"The body's linear damp. Cannot be less than -1.0. If this value is different "
"from -1.0, any linear damp derived from the world or areas will be "
"overridden."
msgstr ""
-#: doc/classes/RigidBody3D.xml:172
+#: doc/classes/RigidBody3D.xml:180
msgid ""
"The body's linear velocity. Can be used sporadically, but [b]don't set this "
"every frame[/b], because physics may run in another thread and runs at a "
@@ -45107,60 +45798,57 @@ msgid ""
"for precise control of the body state."
msgstr ""
-#: doc/classes/RigidBody3D.xml:178
+#: doc/classes/RigidBody3D.xml:186
msgid "The body mode. See [enum Mode] for possible values."
msgstr ""
-#: doc/classes/RigidBody3D.xml:196
+#: doc/classes/RigidBody3D.xml:211
msgid ""
-"Emitted when a body enters into contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work."
+"Emitted when a body shape exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions."
msgstr ""
-#: doc/classes/RigidBody3D.xml:203
+#: doc/classes/RigidBody3D.xml:224
msgid ""
-"Emitted when a body shape exits contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work."
-msgstr ""
-
-#: doc/classes/RigidBody3D.xml:216
-msgid ""
-"Emitted when a body enters into contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work.\n"
+"Emitted when a body enters into contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"This signal not only receives the body that collided with this one, but also "
"its [RID] ([code]body_id[/code]), the shape index from the colliding body "
"([code]body_shape[/code]), and the shape index from this body "
"([code]local_shape[/code]) the other body collided with."
msgstr ""
-#: doc/classes/RigidBody3D.xml:230
+#: doc/classes/RigidBody3D.xml:238
msgid ""
-"Emitted when a body shape exits contact with this one. Contact monitor and "
-"contacts reported must be enabled for this to work.\n"
+"Emitted when a body shape exits contact with this one. Requires [member "
+"contact_monitor] to be set to [code]true[/code] and [member "
+"contacts_reported] to be set high enough to detect all the collisions.\n"
"This signal not only receives the body that stopped colliding with this one, "
"but also its [RID] ([code]body_id[/code]), the shape index from the "
"colliding body ([code]body_shape[/code]), and the shape index from this body "
"([code]local_shape[/code]) the other body stopped colliding with."
msgstr ""
-#: doc/classes/RigidBody3D.xml:243
+#: doc/classes/RigidBody3D.xml:251
msgid ""
"Rigid body mode. This is the \"natural\" state of a rigid body. It is "
"affected by forces, and can move, rotate, and be affected by user code."
msgstr ""
-#: doc/classes/RigidBody3D.xml:246
+#: doc/classes/RigidBody3D.xml:254
msgid ""
"Static mode. The body behaves like a [StaticBody3D], and can only move by "
"user code."
msgstr ""
-#: doc/classes/RigidBody3D.xml:249
+#: doc/classes/RigidBody3D.xml:257
msgid ""
"Character body mode. This behaves like a rigid body, but can not rotate."
msgstr ""
-#: doc/classes/RigidBody3D.xml:252
+#: doc/classes/RigidBody3D.xml:260
msgid ""
"Kinematic body mode. The body behaves like a [KinematicBody3D], and can only "
"move by user code."
@@ -45667,7 +46355,7 @@ msgstr ""
msgid "The time remaining."
msgstr ""
-#: doc/classes/SceneTreeTimer.xml:28 doc/classes/Timer.xml:62
+#: doc/classes/SceneTreeTimer.xml:28 doc/classes/Timer.xml:63
msgid "Emitted when the timer reaches 0."
msgstr ""
@@ -45790,27 +46478,27 @@ msgid ""
"the singleton using [method EditorInterface.get_script_editor]."
msgstr ""
-#: doc/classes/ScriptEditor.xml:40
+#: doc/classes/ScriptEditor.xml:46
msgid "Returns a [Script] that is currently active in editor."
msgstr ""
-#: doc/classes/ScriptEditor.xml:57
+#: doc/classes/ScriptEditor.xml:69
msgid ""
"Returns an array with all [Script] objects which are currently open in "
"editor."
msgstr ""
-#: doc/classes/ScriptEditor.xml:66
+#: doc/classes/ScriptEditor.xml:78
msgid "Goes to the specified line in the current script."
msgstr ""
-#: doc/classes/ScriptEditor.xml:85
+#: doc/classes/ScriptEditor.xml:113
msgid ""
"Emitted when user changed active script. Argument is a freshly activated "
"[Script]."
msgstr ""
-#: doc/classes/ScriptEditor.xml:92
+#: doc/classes/ScriptEditor.xml:120
msgid ""
"Emitted when editor is about to close the active script. Argument is a "
"[Script] that is going to be closed."
@@ -45872,7 +46560,7 @@ msgid ""
"visible."
msgstr ""
-#: doc/classes/ScrollContainer.xml:37 doc/classes/TextEdit.xml:453
+#: doc/classes/ScrollContainer.xml:37 doc/classes/TextEdit.xml:407
msgid "The current horizontal scroll value."
msgstr ""
@@ -45880,7 +46568,7 @@ msgstr ""
msgid "If [code]true[/code], enables horizontal scrolling."
msgstr ""
-#: doc/classes/ScrollContainer.xml:43 doc/classes/TextEdit.xml:456
+#: doc/classes/ScrollContainer.xml:43 doc/classes/TextEdit.xml:410
msgid "The current vertical scroll value."
msgstr ""
@@ -46399,7 +47087,7 @@ msgstr ""
msgid ""
"Sets the global pose transform, [code]pose[/code], for the bone at "
"[code]bone_idx[/code].\n"
-"[code]amount[/code] is the interpolation strengh that will be used when "
+"[code]amount[/code] is the interpolation strength that will be used when "
"applying the pose, and [code]persistent[/code] determines if the applied "
"pose will remain.\n"
"[b]Note[/b]: The pose transform needs to be in bone space. Use [method "
@@ -46416,7 +47104,7 @@ msgstr ""
#: doc/classes/Skeleton3D.xml:266
msgid ""
-"Returns the pose transform for bone [code]bone_idx[/code].\n"
+"Sets the pose transform for bone [code]bone_idx[/code].\n"
"[b]Note[/b]: The pose transform needs to be in bone space. Use [method "
"world_transform_to_bone_transform] to convert a world transform, like one "
"you can get from a [Node3D], to bone space."
@@ -46509,6 +47197,16 @@ msgstr ""
#: doc/classes/Sky.xml:52
msgid ""
+"Automatically selects the appropriate process mode based on your sky shader. "
+"If your shader uses [code]TIME[/code] or [code]POSITION[/code], this will "
+"use [constant PROCESS_MODE_REALTIME]. If your shader uses any of the "
+"[code]LIGHT_*[/code] variables or any custom uniforms, this uses [constant "
+"PROCESS_MODE_INCREMENTAL]. Otherwise, this defaults to [constant "
+"PROCESS_MODE_QUALITY]."
+msgstr ""
+
+#: doc/classes/Sky.xml:55
+msgid ""
"Uses high quality importance sampling to process the radiance map. In "
"general, this results in much higher quality than [constant "
"PROCESS_MODE_REALTIME] but takes much longer to generate. This should not be "
@@ -46518,10 +47216,22 @@ msgid ""
"ggx_samples]."
msgstr ""
-#: doc/classes/Sky.xml:55
+#: doc/classes/Sky.xml:58
+msgid ""
+"Uses the same high quality importance sampling to process the radiance map "
+"as [constant PROCESS_MODE_QUALITY], but updates over several frames. The "
+"number of frames is determined by [member ProjectSettings.rendering/quality/"
+"reflections/roughness_layers]. Use this when you need highest quality "
+"radiance maps, but have a sky that updates slowly."
+msgstr ""
+
+#: doc/classes/Sky.xml:61
msgid ""
"Uses the fast filtering algorithm to process the radiance map. In general "
-"this results in lower quality, but substantially faster run times.\n"
+"this results in lower quality, but substantially faster run times. If you "
+"need better quality, but still need to update the sky every frame, consider "
+"turning on [member ProjectSettings.rendering/quality/reflections/"
+"fast_filter_high_quality].\n"
"[b]Note:[/b] The fast filtering algorithm is limited to 256x256 cubemaps, so "
"[member radiance_size] must be set to [constant RADIANCE_SIZE_256]."
msgstr ""
@@ -46858,10 +47568,9 @@ msgid ""
msgstr ""
#: doc/classes/SpringArm3D.xml:35
-msgid ""
-"Returns the proportion between the current arm length (after checking for "
-"collisions) and the [member spring_length]. Ranges from 0 to 1."
-msgstr ""
+#, fuzzy
+msgid "Returns the spring arm's current length."
+msgstr "回傳åƒæ•¸çš„正弦值。"
#: doc/classes/SpringArm3D.xml:44
msgid ""
@@ -47556,7 +48265,7 @@ msgstr ""
msgid ""
"This is the built-in string class (and the one used by GDScript). It "
"supports Unicode and provides all necessary means for string handling. "
-"Strings are reference counted and use a copy-on-write approach, so passing "
+"Strings are reference-counted and use a copy-on-write approach, so passing "
"them around is cheap in resources."
msgstr ""
@@ -47711,26 +48420,32 @@ msgstr ""
#: doc/classes/String.xml:328
msgid ""
"Returns a copy of the string with escaped characters replaced by their "
-"meanings according to the C language standard."
+"meanings. Supported escape sequences are [code]\\'[/code], [code]\\\"[/"
+"code], [code]\\?[/code], [code]\\\\[/code], [code]\\a[/code], [code]\\b[/"
+"code], [code]\\f[/code], [code]\\n[/code], [code]\\r[/code], [code]\\t[/"
+"code], [code]\\v[/code].\n"
+"[b]Note:[/b] Unlike the GDScript parser, this method doesn't support the "
+"[code]\\uXXXX[/code] escape sequence."
msgstr ""
-#: doc/classes/String.xml:335
+#: doc/classes/String.xml:336
msgid ""
-"Changes the case of some letters. Replaces underscores with spaces, converts "
-"all letters to lowercase, then capitalizes first and every letter following "
-"the space character. For [code]capitalize camelCase mixed_with_underscores[/"
-"code], it will return [code]Capitalize Camelcase Mixed With Underscores[/"
+"Changes the case of some letters. Replaces underscores with spaces, adds "
+"spaces before in-word uppercase characters, converts all letters to "
+"lowercase, then capitalizes the first letter and every letter following a "
+"space character. For [code]capitalize camelCase mixed_with_underscores[/"
+"code], it will return [code]Capitalize Camel Case Mixed With Underscores[/"
"code]."
msgstr ""
-#: doc/classes/String.xml:344
+#: doc/classes/String.xml:345
msgid ""
"Performs a case-sensitive comparison to another string. Returns [code]-1[/"
"code] if less than, [code]+1[/code] if greater than, or [code]0[/code] if "
"equal."
msgstr ""
-#: doc/classes/String.xml:357
+#: doc/classes/String.xml:358
msgid ""
"Returns the number of occurrences of substring [code]what[/code] between "
"[code]from[/code] and [code]to[/code] positions. If [code]from[/code] and "
@@ -47738,7 +48453,7 @@ msgid ""
"code] equals 0 the remained substring will be used."
msgstr ""
-#: doc/classes/String.xml:370
+#: doc/classes/String.xml:371
msgid ""
"Returns the number of occurrences of substring [code]what[/code] (ignoring "
"case) between [code]from[/code] and [code]to[/code] positions. If "
@@ -47746,32 +48461,33 @@ msgid ""
"used. If only [code]to[/code] equals 0 the remained substring will be used."
msgstr ""
-#: doc/classes/String.xml:377
+#: doc/classes/String.xml:378
msgid ""
"Returns a copy of the string with indentation (leading tabs and spaces) "
"removed."
msgstr ""
-#: doc/classes/String.xml:384
+#: doc/classes/String.xml:385
msgid ""
"Returns [code]true[/code] if the length of the string equals [code]0[/code]."
msgstr ""
-#: doc/classes/String.xml:393
+#: doc/classes/String.xml:394
msgid "Returns [code]true[/code] if the string ends with the given string."
msgstr ""
-#: doc/classes/String.xml:404
+#: doc/classes/String.xml:405
msgid ""
"Erases [code]chars[/code] characters from the string starting from "
"[code]position[/code]."
msgstr ""
-#: doc/classes/String.xml:415
+#: doc/classes/String.xml:416
msgid ""
-"Finds the first occurrence of a substring. Returns the starting position of "
-"the substring or [code]-1[/code] if not found. Optionally, the initial "
-"search index can be passed.\n"
+"Returns the index of the [b]first[/b] case-sensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the end of the "
+"string.\n"
"[b]Note:[/b] If you just want to know whether a string contains a substring, "
"use the [code]in[/code] operator as follows:\n"
"[codeblock]\n"
@@ -47781,48 +48497,42 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:430
+#: doc/classes/String.xml:433
msgid ""
-"Finds the last occurrence of a substring. Returns the starting position of "
-"the substring or [code]-1[/code] if not found."
+"Returns the index of the [b]first[/b] case-insensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the end of the string."
msgstr ""
-#: doc/classes/String.xml:441
-msgid ""
-"Finds the first occurrence of a substring, ignoring case. Returns the "
-"starting position of the substring or [code]-1[/code] if not found. "
-"Optionally, the initial search index can be passed."
-msgstr ""
-
-#: doc/classes/String.xml:452
+#: doc/classes/String.xml:444
msgid ""
"Formats the string by replacing all occurrences of [code]placeholder[/code] "
"with [code]values[/code]."
msgstr ""
-#: doc/classes/String.xml:459
+#: doc/classes/String.xml:451
msgid "If the string is a valid file path, returns the base directory name."
msgstr ""
-#: doc/classes/String.xml:466
+#: doc/classes/String.xml:458
msgid ""
"If the string is a valid file path, returns the full file path without the "
"extension."
msgstr ""
-#: doc/classes/String.xml:473
+#: doc/classes/String.xml:465
msgid "If the string is a valid file path, returns the extension."
msgstr ""
-#: doc/classes/String.xml:480
+#: doc/classes/String.xml:472
msgid "If the string is a valid file path, returns the filename."
msgstr ""
-#: doc/classes/String.xml:487
+#: doc/classes/String.xml:479
msgid "Hashes the string and returns a 32-bit integer."
msgstr ""
-#: doc/classes/String.xml:494
+#: doc/classes/String.xml:486
msgid ""
"Converts a string containing a hexadecimal number into an integer. "
"Hexadecimal strings are expected to be prefixed with \"[code]0x[/code]\" "
@@ -47832,7 +48542,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:504
+#: doc/classes/String.xml:496
msgid ""
"Escapes (encodes) a string to URL friendly format. Also referred to as 'URL "
"encode'.\n"
@@ -47842,7 +48552,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:514
+#: doc/classes/String.xml:506
msgid ""
"Unescapes (decodes) a string in URL encoded format. Also referred to as 'URL "
"decode'.\n"
@@ -47852,7 +48562,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:526
+#: doc/classes/String.xml:518
msgid ""
"Converts [code]size[/code] represented as number of bytes to human-readable "
"format using internationalized set of data size units, namely: B, KiB, MiB, "
@@ -47865,48 +48575,48 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:542
+#: doc/classes/String.xml:534
msgid ""
"Returns a copy of the string with the substring [code]what[/code] inserted "
"at the given position."
msgstr ""
-#: doc/classes/String.xml:549
+#: doc/classes/String.xml:541
msgid ""
"If the string is a path to a file or directory, returns [code]true[/code] if "
"the path is absolute."
msgstr ""
-#: doc/classes/String.xml:556
+#: doc/classes/String.xml:548
msgid ""
"If the string is a path to a file or directory, returns [code]true[/code] if "
"the path is relative."
msgstr ""
-#: doc/classes/String.xml:565
+#: doc/classes/String.xml:557
msgid ""
"Returns [code]true[/code] if this string is a subsequence of the given "
"string."
msgstr ""
-#: doc/classes/String.xml:574
+#: doc/classes/String.xml:566
msgid ""
"Returns [code]true[/code] if this string is a subsequence of the given "
"string, without considering case."
msgstr ""
-#: doc/classes/String.xml:581
+#: doc/classes/String.xml:573
msgid ""
"Returns [code]true[/code] if this string is free from characters that aren't "
"allowed in file names, those being:\n"
"[code]: / \\ ? * \" | % < >[/code]"
msgstr ""
-#: doc/classes/String.xml:589
+#: doc/classes/String.xml:581
msgid "Returns [code]true[/code] if this string contains a valid float."
msgstr ""
-#: doc/classes/String.xml:598
+#: doc/classes/String.xml:590
msgid ""
"Returns [code]true[/code] if this string contains a valid hexadecimal "
"number. If [code]with_prefix[/code] is [code]true[/code], then a validity of "
@@ -47914,7 +48624,7 @@ msgid ""
"instance: [code]0xDEADC0DE[/code]."
msgstr ""
-#: doc/classes/String.xml:605
+#: doc/classes/String.xml:597
msgid ""
"Returns [code]true[/code] if this string contains a valid color in "
"hexadecimal HTML notation. Other HTML notations such as named colors or "
@@ -47922,22 +48632,22 @@ msgid ""
"return [code]false[/code]."
msgstr ""
-#: doc/classes/String.xml:612
+#: doc/classes/String.xml:604
msgid ""
"Returns [code]true[/code] if this string is a valid identifier. A valid "
"identifier may contain only letters, digits and underscores ([code]_[/code]) "
"and the first character may not be a digit."
msgstr ""
-#: doc/classes/String.xml:619
+#: doc/classes/String.xml:611
msgid "Returns [code]true[/code] if this string contains a valid integer."
msgstr ""
-#: doc/classes/String.xml:626
+#: doc/classes/String.xml:618
msgid "Returns [code]true[/code] if this string contains a valid IP address."
msgstr ""
-#: doc/classes/String.xml:635
+#: doc/classes/String.xml:627
msgid ""
"Return a [String] which is the concatenation of the [code]parts[/code]. The "
"separator between elements is the string providing this method.\n"
@@ -47947,121 +48657,125 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:646
+#: doc/classes/String.xml:638
msgid ""
"Returns a copy of the string with special characters escaped using the JSON "
"standard."
msgstr ""
-#: doc/classes/String.xml:655
+#: doc/classes/String.xml:647
msgid "Returns a number of characters from the left of the string."
msgstr ""
-#: doc/classes/String.xml:662
+#: doc/classes/String.xml:654
msgid "Returns the string's amount of characters."
msgstr ""
-#: doc/classes/String.xml:671
+#: doc/classes/String.xml:663
msgid "Returns a copy of the string with characters removed from the left."
msgstr ""
-#: doc/classes/String.xml:680
+#: doc/classes/String.xml:672
msgid ""
"Does a simple case-sensitive expression match, where [code]\"*\"[/code] "
"matches zero or more arbitrary characters and [code]\"?\"[/code] matches any "
"single character except a period ([code]\".\"[/code])."
msgstr ""
-#: doc/classes/String.xml:689
+#: doc/classes/String.xml:681
msgid ""
"Does a simple case-insensitive expression match, where [code]\"*\"[/code] "
"matches zero or more arbitrary characters and [code]\"?\"[/code] matches any "
"single character except a period ([code]\".\"[/code])."
msgstr ""
-#: doc/classes/String.xml:696
+#: doc/classes/String.xml:688
msgid "Returns the MD5 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:703
+#: doc/classes/String.xml:695
msgid "Returns the MD5 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:712
+#: doc/classes/String.xml:704
msgid ""
"Performs a case-insensitive comparison to another string. Returns [code]-1[/"
"code] if less than, [code]+1[/code] if greater than, or [code]0[/code] if "
"equal."
msgstr ""
-#: doc/classes/String.xml:721
+#: doc/classes/String.xml:713
msgid "Returns the character code at position [code]at[/code]."
msgstr ""
-#: doc/classes/String.xml:730
+#: doc/classes/String.xml:722
msgid ""
"Formats a number to have an exact number of [code]digits[/code] after the "
"decimal point."
msgstr ""
-#: doc/classes/String.xml:739
+#: doc/classes/String.xml:731
msgid ""
"Formats a number to have an exact number of [code]digits[/code] before the "
"decimal point."
msgstr ""
-#: doc/classes/String.xml:746
+#: doc/classes/String.xml:738
msgid "Decode a percent-encoded string. See [method percent_encode]."
msgstr ""
-#: doc/classes/String.xml:753
+#: doc/classes/String.xml:745
msgid ""
"Percent-encodes a string. Encodes parameters in a URL when sending a HTTP "
"GET request (and bodies of form-urlencoded POST requests)."
msgstr ""
-#: doc/classes/String.xml:762
+#: doc/classes/String.xml:754
msgid ""
"If the string is a path, this concatenates [code]file[/code] at the end of "
"the string as a subpath. E.g. [code]\"this/is\".plus_file(\"path\") == "
"\"this/is/path\"[/code]."
msgstr ""
-#: doc/classes/String.xml:771
+#: doc/classes/String.xml:763
msgid ""
"Returns original string repeated a number of times. The number of "
"repetitions is given by the argument."
msgstr ""
-#: doc/classes/String.xml:782
+#: doc/classes/String.xml:774
msgid ""
"Replaces occurrences of a case-sensitive substring with the given one inside "
"the string."
msgstr ""
-#: doc/classes/String.xml:793
+#: doc/classes/String.xml:785
msgid ""
"Replaces occurrences of a case-insensitive substring with the given one "
"inside the string."
msgstr ""
-#: doc/classes/String.xml:804
+#: doc/classes/String.xml:796
msgid ""
-"Performs a case-sensitive search for a substring, but starts from the end of "
-"the string instead of the beginning."
+"Returns the index of the [b]last[/b] case-sensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the beginning of the "
+"string."
msgstr ""
-#: doc/classes/String.xml:815
+#: doc/classes/String.xml:807
msgid ""
-"Performs a case-insensitive search for a substring, but starts from the end "
-"of the string instead of the beginning."
+"Returns the index of the [b]last[/b] case-insensitive occurrence of the "
+"specified string in this instance, or [code]-1[/code]. Optionally, the "
+"starting search index can be specified, continuing to the beginning of the "
+"string."
msgstr ""
-#: doc/classes/String.xml:824
+#: doc/classes/String.xml:816
msgid "Returns the right side of the string from a given position."
msgstr ""
-#: doc/classes/String.xml:837
+#: doc/classes/String.xml:829
msgid ""
"Splits the string by a [code]delimiter[/code] string and returns an array of "
"the substrings, starting from right.\n"
@@ -48080,39 +48794,39 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/String.xml:856
+#: doc/classes/String.xml:848
msgid "Returns a copy of the string with characters removed from the right."
msgstr ""
-#: doc/classes/String.xml:863
+#: doc/classes/String.xml:855
msgid "Returns the SHA-1 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:870
+#: doc/classes/String.xml:862
msgid "Returns the SHA-1 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:877
+#: doc/classes/String.xml:869
msgid "Returns the SHA-256 hash of the string as an array of bytes."
msgstr ""
-#: doc/classes/String.xml:884
+#: doc/classes/String.xml:876
msgid "Returns the SHA-256 hash of the string as a string."
msgstr ""
-#: doc/classes/String.xml:893
+#: doc/classes/String.xml:885
msgid ""
"Returns the similarity index of the text compared to this string. 1 means "
"totally similar and 0 means totally dissimilar."
msgstr ""
-#: doc/classes/String.xml:906
+#: doc/classes/String.xml:898
msgid ""
"Splits the string by a [code]delimiter[/code] string and returns an array of "
-"the substrings.\n"
+"the substrings. The [code]delimiter[/code] can be of any length.\n"
"If [code]maxsplit[/code] is specified, it defines the number of splits to do "
-"from the left up to [code]maxsplit[/code]. The default value of 0 means that "
-"all items are split.\n"
+"from the left up to [code]maxsplit[/code]. The default value of [code]0[/"
+"code] means that all items are split.\n"
"Example:\n"
"[codeblock]\n"
"var some_string = \"One,Two,Three,Four\"\n"
@@ -48120,10 +48834,12 @@ msgid ""
"print(some_array.size()) # Prints 2\n"
"print(some_array[0]) # Prints \"One\"\n"
"print(some_array[1]) # Prints \"Two,Three,Four\"\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"If you need to split strings with more complex rules, use the [RegEx] class "
+"instead."
msgstr ""
-#: doc/classes/String.xml:926
+#: doc/classes/String.xml:919
msgid ""
"Splits the string in floats by using a delimiter string and returns an array "
"of the substrings.\n"
@@ -48131,7 +48847,7 @@ msgid ""
"split by [code]\",\"[/code]."
msgstr ""
-#: doc/classes/String.xml:938
+#: doc/classes/String.xml:931
msgid ""
"Returns a copy of the string stripped of any non-printable character "
"(including tabulations, spaces and line breaks) at the beginning and the "
@@ -48139,7 +48855,7 @@ msgid ""
"right edges respectively."
msgstr ""
-#: doc/classes/String.xml:945
+#: doc/classes/String.xml:938
msgid ""
"Returns a copy of the string stripped of any escape character. These include "
"all non-printable control characters of the first page of the ASCII table (< "
@@ -48147,14 +48863,14 @@ msgid ""
"code] and [code]\\r[/code]) characters, but not spaces."
msgstr ""
-#: doc/classes/String.xml:956
+#: doc/classes/String.xml:949
msgid ""
"Returns part of the string from the position [code]from[/code] with length "
"[code]len[/code]. Argument [code]len[/code] is optional and using [code]-1[/"
"code] will return remaining characters from given position."
msgstr ""
-#: doc/classes/String.xml:963
+#: doc/classes/String.xml:956
msgid ""
"Converts the String (which is a character array) to [PackedByteArray] (which "
"is an array of bytes). The conversion is faster compared to [method "
@@ -48162,25 +48878,25 @@ msgid ""
"ASCII characters."
msgstr ""
-#: doc/classes/String.xml:970
+#: doc/classes/String.xml:963
msgid ""
"Converts a string containing a decimal number into a [code]float[/code]."
msgstr ""
-#: doc/classes/String.xml:977
+#: doc/classes/String.xml:970
msgid ""
"Converts a string containing an integer number into an [code]int[/code]."
msgstr ""
-#: doc/classes/String.xml:984
+#: doc/classes/String.xml:977
msgid "Returns the string converted to lowercase."
msgstr ""
-#: doc/classes/String.xml:991
+#: doc/classes/String.xml:984
msgid "Returns the string converted to uppercase."
msgstr ""
-#: doc/classes/String.xml:998
+#: doc/classes/String.xml:991
msgid ""
"Converts the String (which is an array of characters) to [PackedByteArray] "
"(which is an array of bytes). The conversion is a bit slower than [method "
@@ -48188,25 +48904,25 @@ msgid ""
"this function over [method to_ascii]."
msgstr ""
-#: doc/classes/String.xml:1007
+#: doc/classes/String.xml:1000
msgid ""
"Removes a given string from the start if it starts with it or leaves the "
"string unchanged."
msgstr ""
-#: doc/classes/String.xml:1016
+#: doc/classes/String.xml:1009
msgid ""
"Removes a given string from the end if it ends with it or leaves the string "
"unchanged."
msgstr ""
-#: doc/classes/String.xml:1023
+#: doc/classes/String.xml:1016
msgid ""
"Returns a copy of the string with special characters escaped using the XML "
"standard."
msgstr ""
-#: doc/classes/String.xml:1030
+#: doc/classes/String.xml:1023
msgid ""
"Returns a copy of the string with escaped characters replaced by their "
"meanings according to the XML standard."
@@ -49438,50 +50154,42 @@ msgid ""
"undo/redo."
msgstr ""
-#: doc/classes/TextEdit.xml:24
-msgid "Adds color region (given the delimiters) and its colors."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:35
-msgid "Adds a [code]keyword[/code] and its [Color]."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:44
+#: doc/classes/TextEdit.xml:18
msgid ""
"Returns if the given line is foldable, that is, it has indented lines right "
"below it."
msgstr ""
-#: doc/classes/TextEdit.xml:57
+#: doc/classes/TextEdit.xml:25
msgid ""
-"Clears all custom syntax coloring information previously added with [method "
-"add_color_region] or [method add_keyword_color]."
+"Centers the viewport on the line the editing cursor is at. This also resets "
+"the [member scroll_horizontal] value to [code]0[/code]."
msgstr ""
-#: doc/classes/TextEdit.xml:64
+#: doc/classes/TextEdit.xml:32
msgid "Clears the undo history."
msgstr ""
-#: doc/classes/TextEdit.xml:71
+#: doc/classes/TextEdit.xml:39
msgid "Copy's the current text selection."
msgstr ""
-#: doc/classes/TextEdit.xml:78
+#: doc/classes/TextEdit.xml:46
msgid "Returns the column the editing cursor is at."
msgstr ""
-#: doc/classes/TextEdit.xml:85
+#: doc/classes/TextEdit.xml:53
msgid "Returns the line the editing cursor is at."
msgstr ""
-#: doc/classes/TextEdit.xml:96
+#: doc/classes/TextEdit.xml:64
msgid ""
"Moves the cursor at the specified [code]column[/code] index.\n"
"If [code]adjust_viewport[/code] is set to [code]true[/code], the viewport "
"will center at the cursor position after the move occurs."
msgstr ""
-#: doc/classes/TextEdit.xml:112
+#: doc/classes/TextEdit.xml:80
msgid ""
"Moves the cursor at the specified [code]line[/code] index.\n"
"If [code]adjust_viewport[/code] is set to [code]true[/code], the viewport "
@@ -49490,111 +50198,101 @@ msgid ""
"[code]line[/code] can be hidden using [method set_line_as_hidden]."
msgstr ""
-#: doc/classes/TextEdit.xml:121
+#: doc/classes/TextEdit.xml:89
msgid "Cut's the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:128
+#: doc/classes/TextEdit.xml:96
msgid "Deselects the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:135
+#: doc/classes/TextEdit.xml:103
msgid "Folds all lines that are possible to be folded (see [method can_fold])."
msgstr ""
-#: doc/classes/TextEdit.xml:144
+#: doc/classes/TextEdit.xml:112
msgid "Folds the given line, if possible (see [method can_fold])."
msgstr ""
-#: doc/classes/TextEdit.xml:151
+#: doc/classes/TextEdit.xml:119
msgid "Returns an array containing the line number of each breakpoint."
msgstr ""
-#: doc/classes/TextEdit.xml:160
-msgid "Returns the [Color] of the specified [code]keyword[/code]."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:169
+#: doc/classes/TextEdit.xml:128
msgid "Returns the text of a specific line."
msgstr ""
-#: doc/classes/TextEdit.xml:176
+#: doc/classes/TextEdit.xml:135
msgid "Returns the amount of total lines in the text."
msgstr ""
-#: doc/classes/TextEdit.xml:183
+#: doc/classes/TextEdit.xml:142
msgid ""
"Returns the [PopupMenu] of this [TextEdit]. By default, this menu is "
"displayed when right-clicking on the [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:190
+#: doc/classes/TextEdit.xml:149
msgid "Returns the selection begin column."
msgstr ""
-#: doc/classes/TextEdit.xml:197
+#: doc/classes/TextEdit.xml:156
msgid "Returns the selection begin line."
msgstr ""
-#: doc/classes/TextEdit.xml:204
+#: doc/classes/TextEdit.xml:163
msgid "Returns the text inside the selection."
msgstr ""
-#: doc/classes/TextEdit.xml:211
+#: doc/classes/TextEdit.xml:170
msgid "Returns the selection end column."
msgstr ""
-#: doc/classes/TextEdit.xml:218
+#: doc/classes/TextEdit.xml:177
msgid "Returns the selection end line."
msgstr ""
-#: doc/classes/TextEdit.xml:225
+#: doc/classes/TextEdit.xml:184
msgid "Returns a [String] text with the word under the mouse cursor location."
msgstr ""
-#: doc/classes/TextEdit.xml:234
-msgid ""
-"Returns whether the specified [code]keyword[/code] has a color set to it or "
-"not."
-msgstr ""
-
-#: doc/classes/TextEdit.xml:243
+#: doc/classes/TextEdit.xml:193
msgid "Insert the specified text at the cursor position."
msgstr ""
-#: doc/classes/TextEdit.xml:252
+#: doc/classes/TextEdit.xml:202
msgid "Returns whether the line at the specified index is folded or not."
msgstr ""
-#: doc/classes/TextEdit.xml:261
+#: doc/classes/TextEdit.xml:211
msgid "Returns whether the line at the specified index is hidden or not."
msgstr ""
-#: doc/classes/TextEdit.xml:268
+#: doc/classes/TextEdit.xml:218
msgid "Returns [code]true[/code] if the selection is active."
msgstr ""
-#: doc/classes/TextEdit.xml:277
+#: doc/classes/TextEdit.xml:227
msgid ""
"Triggers a right-click menu action by the specified index. See [enum "
"MenuItems] for a list of available indexes."
msgstr ""
-#: doc/classes/TextEdit.xml:284
+#: doc/classes/TextEdit.xml:234
msgid "Paste the current selection."
msgstr ""
-#: doc/classes/TextEdit.xml:291
+#: doc/classes/TextEdit.xml:241
msgid "Perform redo operation."
msgstr ""
-#: doc/classes/TextEdit.xml:298
+#: doc/classes/TextEdit.xml:248
msgid ""
"Removes all the breakpoints. This will not fire the [signal "
"breakpoint_toggled] signal."
msgstr ""
-#: doc/classes/TextEdit.xml:313
+#: doc/classes/TextEdit.xml:263
msgid ""
"Perform a search inside the text. Search flags can be specified in the [enum "
"SearchFlags] enum.\n"
@@ -49610,244 +50308,265 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/TextEdit.xml:336
-msgid "Perform selection, from line/column to line/column."
+#: doc/classes/TextEdit.xml:286
+msgid ""
+"Perform selection, from line/column to line/column.\n"
+"If [member selecting_enabled] is [code]false[/code], no selection will occur."
msgstr ""
-#: doc/classes/TextEdit.xml:343
-msgid "Select all the text."
+#: doc/classes/TextEdit.xml:294
+msgid ""
+"Select all the text.\n"
+"If [member selecting_enabled] is [code]false[/code], no selection will occur."
msgstr ""
-#: doc/classes/TextEdit.xml:354
+#: doc/classes/TextEdit.xml:306
msgid "Sets the text for a specific line."
msgstr ""
-#: doc/classes/TextEdit.xml:365
+#: doc/classes/TextEdit.xml:317
msgid "If [code]true[/code], hides the line of the specified index."
msgstr ""
-#: doc/classes/TextEdit.xml:374
+#: doc/classes/TextEdit.xml:326
msgid "Toggle the folding of the code block at the given line."
msgstr ""
-#: doc/classes/TextEdit.xml:381
+#: doc/classes/TextEdit.xml:333
msgid "Perform undo operation."
msgstr ""
-#: doc/classes/TextEdit.xml:390
+#: doc/classes/TextEdit.xml:342
msgid "Unfolds the given line, if folded."
msgstr ""
-#: doc/classes/TextEdit.xml:397
+#: doc/classes/TextEdit.xml:349
msgid ""
"Unhide all lines that were previously set to hidden by [method "
"set_line_as_hidden]."
msgstr ""
-#: doc/classes/TextEdit.xml:403
+#: doc/classes/TextEdit.xml:355
msgid "If [code]true[/code], the breakpoint gutter is visible."
msgstr ""
-#: doc/classes/TextEdit.xml:412
+#: doc/classes/TextEdit.xml:364
msgid ""
"If [code]true[/code], the caret displays as a rectangle.\n"
"If [code]false[/code], the caret displays as a bar."
msgstr ""
-#: doc/classes/TextEdit.xml:416
+#: doc/classes/TextEdit.xml:368
msgid ""
"If [code]true[/code], a right-click moves the cursor at the mouse position "
"before displaying the context menu.\n"
"If [code]false[/code], the context menu disregards mouse location."
msgstr ""
-#: doc/classes/TextEdit.xml:420
+#: doc/classes/TextEdit.xml:372
msgid "If [code]true[/code], a right-click displays the context menu."
msgstr ""
-#: doc/classes/TextEdit.xml:423
+#: doc/classes/TextEdit.xml:375
msgid ""
"If [code]true[/code], the \"space\" character will have a visible "
"representation."
msgstr ""
-#: doc/classes/TextEdit.xml:426
+#: doc/classes/TextEdit.xml:378
msgid ""
"If [code]true[/code], the \"tab\" character will have a visible "
"representation."
msgstr ""
-#: doc/classes/TextEdit.xml:430
+#: doc/classes/TextEdit.xml:382
msgid ""
"If [code]true[/code], the fold gutter is visible. This enables folding "
"groups of indented lines."
msgstr ""
-#: doc/classes/TextEdit.xml:433
+#: doc/classes/TextEdit.xml:385
msgid ""
"If [code]true[/code], all lines that have been set to hidden by [method "
"set_line_as_hidden], will not be visible."
msgstr ""
-#: doc/classes/TextEdit.xml:436
+#: doc/classes/TextEdit.xml:388
msgid ""
"If [code]true[/code], all occurrences of the selected text will be "
"highlighted."
msgstr ""
-#: doc/classes/TextEdit.xml:439
+#: doc/classes/TextEdit.xml:391
msgid "If [code]true[/code], the line containing the cursor is highlighted."
msgstr ""
-#: doc/classes/TextEdit.xml:447
+#: doc/classes/TextEdit.xml:394
+msgid ""
+"If [code]true[/code], a minimap is shown, providing an outline of your "
+"source code."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:397
+msgid "The width, in pixels, of the minimap."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:401
msgid ""
"If [code]true[/code], custom [code]font_color_selected[/code] will be used "
"for selected text."
msgstr ""
-#: doc/classes/TextEdit.xml:450
+#: doc/classes/TextEdit.xml:404
msgid ""
"If [code]true[/code], read-only mode is enabled. Existing text cannot be "
"modified and new text cannot be added."
msgstr ""
-#: doc/classes/TextEdit.xml:463
+#: doc/classes/TextEdit.xml:413
msgid ""
-"If [code]true[/code], line numbers are displayed to the left of the text."
+"If [code]true[/code], text can be selected.\n"
+"If [code]false[/code], text can not be selected by the user or by the "
+"[method select] or [method select_all] methods."
msgstr ""
-#: doc/classes/TextEdit.xml:466
+#: doc/classes/TextEdit.xml:417
msgid ""
-"If [code]true[/code], sets the [code]step[/code] of the scrollbars to "
-"[code]0.25[/code] which results in smoother scrolling."
+"If [code]true[/code], shortcut keys for context menu items are enabled, even "
+"if the context menu is disabled."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:420
+msgid ""
+"If [code]true[/code], line numbers are displayed to the left of the text."
msgstr ""
-#: doc/classes/TextEdit.xml:469
+#: doc/classes/TextEdit.xml:423
msgid ""
-"If [code]true[/code], any custom color properties that have been set for "
-"this [TextEdit] will be visible."
+"If [code]true[/code], sets the [code]step[/code] of the scrollbars to "
+"[code]0.25[/code] which results in smoother scrolling."
msgstr ""
-#: doc/classes/TextEdit.xml:472
+#: doc/classes/TextEdit.xml:428
msgid "String value of the [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:475
+#: doc/classes/TextEdit.xml:431
msgid "Vertical scroll sensitivity."
msgstr ""
-#: doc/classes/TextEdit.xml:478
+#: doc/classes/TextEdit.xml:437
msgid ""
"If [code]true[/code], enables text wrapping when it goes beyond the edge of "
"what is visible."
msgstr ""
-#: doc/classes/TextEdit.xml:486
+#: doc/classes/TextEdit.xml:445
msgid "Emitted when a breakpoint is placed via the breakpoint gutter."
msgstr ""
-#: doc/classes/TextEdit.xml:491
+#: doc/classes/TextEdit.xml:450
msgid "Emitted when the cursor changes."
msgstr ""
-#: doc/classes/TextEdit.xml:500
+#: doc/classes/TextEdit.xml:459
msgid "Emitted when the info icon is clicked."
msgstr ""
-#: doc/classes/TextEdit.xml:531
+#: doc/classes/TextEdit.xml:496
msgid "Match case when searching."
msgstr ""
-#: doc/classes/TextEdit.xml:534
+#: doc/classes/TextEdit.xml:499
msgid "Match whole words when searching."
msgstr ""
-#: doc/classes/TextEdit.xml:537
+#: doc/classes/TextEdit.xml:502
msgid "Search from end to beginning."
msgstr ""
-#: doc/classes/TextEdit.xml:546
+#: doc/classes/TextEdit.xml:511
msgid ""
"Pastes the clipboard text over the selected text (or at the cursor's "
"position)."
msgstr ""
-#: doc/classes/TextEdit.xml:549
+#: doc/classes/TextEdit.xml:514
msgid "Erases the whole [TextEdit] text."
msgstr ""
-#: doc/classes/TextEdit.xml:552
+#: doc/classes/TextEdit.xml:517
msgid "Selects the whole [TextEdit] text."
msgstr ""
-#: doc/classes/TextEdit.xml:558
+#: doc/classes/TextEdit.xml:523
msgid "Redoes the previous action."
msgstr ""
-#: doc/classes/TextEdit.xml:566
+#: doc/classes/TextEdit.xml:531
msgid ""
"Sets the background [Color] of this [TextEdit]. [member syntax_highlighting] "
"has to be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:569
+#: doc/classes/TextEdit.xml:534
msgid ""
"Sets the [Color] of the bookmark marker. [member syntax_highlighting] has to "
"be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:574 doc/classes/TextEdit.xml:601
+#: doc/classes/TextEdit.xml:539 doc/classes/TextEdit.xml:566
msgid ""
"Sets the [Color] of the breakpoints. [member breakpoint_gutter] has to be "
"enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:612
+#: doc/classes/TextEdit.xml:577
msgid "Sets the default [Font]."
msgstr ""
-#: doc/classes/TextEdit.xml:615
+#: doc/classes/TextEdit.xml:580
msgid "Sets the font [Color]."
msgstr ""
-#: doc/classes/TextEdit.xml:620
+#: doc/classes/TextEdit.xml:585
msgid ""
"Sets the [Color] of the selected text. [member override_selected_font_color] "
"has to be enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:625
+#: doc/classes/TextEdit.xml:588
msgid ""
"Sets the [Color] of the line numbers. [member show_line_numbers] has to be "
"enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:628
+#: doc/classes/TextEdit.xml:591
msgid "Sets the spacing between the lines."
msgstr ""
-#: doc/classes/TextEdit.xml:631
+#: doc/classes/TextEdit.xml:594
msgid "Sets the [Color] of marked text."
msgstr ""
-#: doc/classes/TextEdit.xml:636
+#: doc/classes/TextEdit.xml:597
msgid "Sets the [StyleBox] of this [TextEdit]."
msgstr ""
-#: doc/classes/TextEdit.xml:641
+#: doc/classes/TextEdit.xml:600
msgid ""
"Sets the [StyleBox] of this [TextEdit] when [member readonly] is enabled."
msgstr ""
-#: doc/classes/TextEdit.xml:646
+#: doc/classes/TextEdit.xml:605
msgid "Sets the highlight [Color] of text selections."
msgstr ""
-#: doc/classes/TextEdit.xml:653
+#: doc/classes/TextEdit.xml:610
msgid "Sets a custom [Texture2D] for tab text characters."
msgstr ""
-#: doc/classes/TextEdit.xml:656
+#: doc/classes/TextEdit.xml:613
msgid ""
"Sets the highlight [Color] of multiple occurrences. [member "
"highlight_all_occurrences] has to be enabled."
@@ -49925,80 +50644,80 @@ msgid ""
"the texture will not scale with the node."
msgstr ""
-#: doc/classes/TextureButton.xml:19
+#: doc/classes/TextureButton.xml:25
msgid ""
"Controls the texture's behavior when you resize the node's bounding "
"rectangle, [b]only if[/b] [member expand] is [code]true[/code]. Set it to "
"one of the [enum StretchMode] constants. See the constants to learn more."
msgstr ""
-#: doc/classes/TextureButton.xml:22
+#: doc/classes/TextureButton.xml:28
msgid ""
"Pure black and white [BitMap] image to use for click detection. On the mask, "
"white pixels represent the button's clickable area. Use it to create buttons "
"with curved shapes."
msgstr ""
-#: doc/classes/TextureButton.xml:25
+#: doc/classes/TextureButton.xml:31
msgid ""
"Texture to display when the node is disabled. See [member BaseButton."
"disabled]."
msgstr ""
-#: doc/classes/TextureButton.xml:28
+#: doc/classes/TextureButton.xml:34
msgid "Texture to display when the node has mouse or keyboard focus."
msgstr ""
-#: doc/classes/TextureButton.xml:31
+#: doc/classes/TextureButton.xml:37
msgid "Texture to display when the mouse hovers the node."
msgstr ""
-#: doc/classes/TextureButton.xml:34
+#: doc/classes/TextureButton.xml:40
msgid ""
"Texture to display by default, when the node is [b]not[/b] in the disabled, "
"focused, hover or pressed state."
msgstr ""
-#: doc/classes/TextureButton.xml:37
+#: doc/classes/TextureButton.xml:43
msgid ""
"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 "
"[member BaseButton.shortcut] key."
msgstr ""
-#: doc/classes/TextureButton.xml:42 doc/classes/TextureRect.xml:36
+#: doc/classes/TextureButton.xml:48 doc/classes/TextureRect.xml:36
msgid "Scale to fit the node's bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:45 doc/classes/TextureRect.xml:39
+#: doc/classes/TextureButton.xml:51 doc/classes/TextureRect.xml:39
msgid "Tile inside the node's bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:48 doc/classes/TextureRect.xml:42
+#: doc/classes/TextureButton.xml:54 doc/classes/TextureRect.xml:42
msgid ""
"The texture keeps its original size and stays in the bounding rectangle's "
"top-left corner."
msgstr ""
-#: doc/classes/TextureButton.xml:51 doc/classes/TextureRect.xml:45
+#: doc/classes/TextureButton.xml:57 doc/classes/TextureRect.xml:45
msgid ""
"The texture keeps its original size and stays centered in the node's "
"bounding rectangle."
msgstr ""
-#: doc/classes/TextureButton.xml:54 doc/classes/TextureRect.xml:48
+#: doc/classes/TextureButton.xml:60 doc/classes/TextureRect.xml:48
msgid ""
"Scale the texture to fit the node's bounding rectangle, but maintain the "
"texture's aspect ratio."
msgstr ""
-#: doc/classes/TextureButton.xml:57
+#: doc/classes/TextureButton.xml:63
msgid ""
"Scale the texture to fit the node's bounding rectangle, center it, and "
"maintain its aspect ratio."
msgstr ""
-#: doc/classes/TextureButton.xml:60 doc/classes/TextureRect.xml:54
+#: doc/classes/TextureButton.xml:66 doc/classes/TextureRect.xml:54
msgid ""
"Scale the texture so that the shorter side fits the bounding rectangle. The "
"other side clips to the node's limits."
@@ -50448,19 +51167,25 @@ msgid ""
"advised if working with shared objects."
msgstr ""
-#: doc/classes/Thread.xml:17
+#: doc/classes/Thread.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/threads/thread_safe_apis."
+"html"
+msgstr ""
+
+#: doc/classes/Thread.xml:18
msgid ""
"Returns the current [Thread]'s ID, uniquely identifying it among all threads."
msgstr ""
-#: doc/classes/Thread.xml:24
+#: doc/classes/Thread.xml:25
msgid ""
"Returns [code]true[/code] if this [Thread] is currently active. An active "
"[Thread] cannot start work on a new method but can be joined with [method "
"wait_to_finish]."
msgstr ""
-#: doc/classes/Thread.xml:39
+#: doc/classes/Thread.xml:40
msgid ""
"Starts a new [Thread] that runs [code]method[/code] on object "
"[code]instance[/code] with [code]userdata[/code] passed as an argument. Even "
@@ -50470,21 +51195,21 @@ msgid ""
"Returns [constant OK] on success, or [constant ERR_CANT_CREATE] on failure."
msgstr ""
-#: doc/classes/Thread.xml:47
+#: doc/classes/Thread.xml:48
msgid ""
"Joins the [Thread] and waits for it to finish. Returns what the method "
"called returned."
msgstr ""
-#: doc/classes/Thread.xml:53
+#: doc/classes/Thread.xml:54
msgid "A thread running with lower priority than normally."
msgstr ""
-#: doc/classes/Thread.xml:56
+#: doc/classes/Thread.xml:57
msgid "A thread with a standard priority."
msgstr ""
-#: doc/classes/Thread.xml:59
+#: doc/classes/Thread.xml:60
msgid "A thread running with higher priority than normally."
msgstr ""
@@ -51019,50 +51744,61 @@ msgid "Returns the [Transform2D] of a tile's shape."
msgstr ""
#: doc/classes/TileSet.xml:481
-msgid "Returns an array of the tile's shapes."
+msgid ""
+"Returns an array of dictionaries describing the tile's shapes.\n"
+"[b]Dictionary structure in the array returned by this method:[/b]\n"
+"[codeblock]\n"
+"{\n"
+" \"autotile_coord\": Vector2,\n"
+" \"one_way\": bool,\n"
+" \"one_way_margin\": int,\n"
+" \"shape\": CollisionShape2D,\n"
+" \"shape_transform\": Transform2D,\n"
+"}\n"
+"[/codeblock]"
msgstr ""
-#: doc/classes/TileSet.xml:490
+#: doc/classes/TileSet.xml:500
msgid "Returns the tile's texture."
msgstr ""
-#: doc/classes/TileSet.xml:499
+#: doc/classes/TileSet.xml:509
msgid "Returns the texture offset of the tile."
msgstr ""
-#: doc/classes/TileSet.xml:508
+#: doc/classes/TileSet.xml:518
msgid "Returns the tile's [enum TileMode]."
msgstr ""
-#: doc/classes/TileSet.xml:517
+#: doc/classes/TileSet.xml:527
msgid "Returns the tile's Z index (drawing layer)."
msgstr ""
-#: doc/classes/TileSet.xml:528
+#: doc/classes/TileSet.xml:538
msgid "Sets a light occluder for the tile."
msgstr ""
-#: doc/classes/TileSet.xml:539
+#: doc/classes/TileSet.xml:549
msgid "Sets the tile's material."
msgstr ""
-#: doc/classes/TileSet.xml:550
+#: doc/classes/TileSet.xml:560
msgid "Sets the tile's modulation color."
msgstr ""
-#: doc/classes/TileSet.xml:561
+#: doc/classes/TileSet.xml:571
msgid "Sets the tile's name."
msgstr ""
-#: doc/classes/TileSet.xml:572
+#: doc/classes/TileSet.xml:582
msgid "Sets the tile's navigation polygon."
msgstr ""
-#: doc/classes/TileSet.xml:583
+#: doc/classes/TileSet.xml:593
msgid "Sets an offset for the tile's navigation polygon."
msgstr ""
-#: doc/classes/TileSet.xml:594
+#: doc/classes/TileSet.xml:604
msgid ""
"Sets the tile's normal map texture.\n"
"[b]Note:[/b] Godot expects the normal map to use X+, Y-, and Z+ coordinates. "
@@ -51071,48 +51807,48 @@ msgid ""
"a comparison of normal map coordinates expected by popular engines."
msgstr ""
-#: doc/classes/TileSet.xml:606
+#: doc/classes/TileSet.xml:616
msgid "Sets an offset for the tile's light occluder."
msgstr ""
-#: doc/classes/TileSet.xml:617
+#: doc/classes/TileSet.xml:627
msgid ""
"Sets the tile's sub-region in the texture. This is common in texture atlases."
msgstr ""
-#: doc/classes/TileSet.xml:630
+#: doc/classes/TileSet.xml:640
msgid "Sets a shape for the tile, enabling collision."
msgstr ""
-#: doc/classes/TileSet.xml:643
+#: doc/classes/TileSet.xml:653
msgid "Sets the offset of a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:656
+#: doc/classes/TileSet.xml:666
msgid "Enables one-way collision on a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:681
+#: doc/classes/TileSet.xml:691
msgid "Sets a [Transform2D] on a tile's shape."
msgstr ""
-#: doc/classes/TileSet.xml:692
+#: doc/classes/TileSet.xml:702
msgid "Sets an array of shapes for the tile, enabling collision."
msgstr ""
-#: doc/classes/TileSet.xml:703
+#: doc/classes/TileSet.xml:713
msgid "Sets the tile's texture."
msgstr ""
-#: doc/classes/TileSet.xml:714
+#: doc/classes/TileSet.xml:724
msgid "Sets the tile's texture offset."
msgstr ""
-#: doc/classes/TileSet.xml:725
+#: doc/classes/TileSet.xml:735
msgid "Sets the tile's [enum TileMode]."
msgstr ""
-#: doc/classes/TileSet.xml:736
+#: doc/classes/TileSet.xml:746
msgid "Sets the tile's drawing index."
msgstr ""
@@ -51123,14 +51859,16 @@ msgstr ""
#: doc/classes/Timer.xml:7
msgid ""
"Counts down a specified interval and emits a signal on reaching 0. Can be "
-"set to repeat or \"one-shot\" mode."
+"set to repeat or \"one-shot\" mode.\n"
+"[b]Note:[/b] To create an one-shot timer without instantiating a node, use "
+"[method SceneTree.create_timer]."
msgstr ""
-#: doc/classes/Timer.xml:16
+#: doc/classes/Timer.xml:17
msgid "Returns [code]true[/code] if the timer is stopped."
msgstr ""
-#: doc/classes/Timer.xml:25
+#: doc/classes/Timer.xml:26
msgid ""
"Starts the timer. Sets [code]wait_time[/code] to [code]time_sec[/code] if "
"[code]time_sec > 0[/code]. This also resets the remaining time to "
@@ -51138,11 +51876,11 @@ msgid ""
"[b]Note:[/b] this method will not resume a paused timer. See [member paused]."
msgstr ""
-#: doc/classes/Timer.xml:33
+#: doc/classes/Timer.xml:34
msgid "Stops the timer."
msgstr ""
-#: doc/classes/Timer.xml:39
+#: doc/classes/Timer.xml:40
msgid ""
"If [code]true[/code], the timer will automatically start when entering the "
"scene tree.\n"
@@ -51150,40 +51888,40 @@ msgid ""
"the timer enters the scene tree and starts."
msgstr ""
-#: doc/classes/Timer.xml:43
+#: doc/classes/Timer.xml:44
msgid ""
"If [code]true[/code], the timer will stop when reaching 0. If [code]false[/"
"code], it will restart."
msgstr ""
-#: doc/classes/Timer.xml:46
+#: doc/classes/Timer.xml:47
msgid ""
"If [code]true[/code], the timer is paused and will not process until it is "
"unpaused again, even if [method start] is called."
msgstr ""
-#: doc/classes/Timer.xml:49
+#: doc/classes/Timer.xml:50
msgid "Processing mode. See [enum TimerProcessMode]."
msgstr ""
-#: doc/classes/Timer.xml:52
+#: doc/classes/Timer.xml:53
msgid ""
"The timer's remaining time in seconds. Returns 0 if the timer is inactive.\n"
"[b]Note:[/b] You cannot set this value. To change the timer's remaining "
"time, use [method start]."
msgstr ""
-#: doc/classes/Timer.xml:56
+#: doc/classes/Timer.xml:57
msgid "Wait time in seconds."
msgstr ""
-#: doc/classes/Timer.xml:68
+#: doc/classes/Timer.xml:69
msgid ""
"Update the timer during the physics step at each frame (fixed framerate "
"processing)."
msgstr ""
-#: doc/classes/Timer.xml:71
+#: doc/classes/Timer.xml:72
msgid "Update the timer during the idle time at each frame."
msgstr ""
@@ -51262,60 +52000,66 @@ msgstr ""
#: doc/classes/Transform.xml:7
msgid ""
-"Represents one or many transformations in 3D space such as translation, "
-"rotation, or scaling. It consists of a [member basis] and an [member "
-"origin]. It is similar to a 3×4 matrix."
+"3×4 matrix (3 rows, 4 columns) used for 3D linear transformations. It can "
+"represent transformations such as translation, rotation, or scaling. It "
+"consists of a [member basis] (first 3 columns) and a [Vector3] for the "
+"[member origin] (last column).\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
msgstr ""
-#: doc/classes/Transform.xml:26
+#: doc/classes/Transform.xml:28
msgid ""
-"Constructs the Transform from four [Vector3]. Each axis corresponds to local "
-"basis vectors (some of which may be scaled)."
+"Constructs a Transform from four [Vector3] values (matrix columns). Each "
+"axis corresponds to local basis vectors (some of which may be scaled)."
msgstr ""
-#: doc/classes/Transform.xml:37
-msgid "Constructs the Transform from a [Basis] and [Vector3]."
+#: doc/classes/Transform.xml:39
+msgid "Constructs a Transform from a [Basis] and [Vector3]."
msgstr ""
-#: doc/classes/Transform.xml:46
-msgid "Constructs the Transform from a [Transform2D]."
+#: doc/classes/Transform.xml:48
+msgid "Constructs a Transform from a [Transform2D]."
msgstr ""
-#: doc/classes/Transform.xml:55
+#: doc/classes/Transform.xml:57
msgid ""
-"Constructs the Transform from a [Quat]. The origin will be Vector3(0, 0, 0)."
+"Constructs a Transform from a [Quat]. The origin will be [code]Vector3(0, 0, "
+"0)[/code]."
msgstr ""
-#: doc/classes/Transform.xml:64
+#: doc/classes/Transform.xml:66
msgid ""
"Constructs the Transform from a [Basis]. The origin will be Vector3(0, 0, 0)."
msgstr ""
-#: doc/classes/Transform.xml:71
+#: doc/classes/Transform.xml:73 doc/classes/Transform2D.xml:51
msgid ""
"Returns the inverse of the transform, under the assumption that the "
"transformation is composed of rotation, scaling and translation."
msgstr ""
-#: doc/classes/Transform.xml:82
-msgid "Interpolates the transform to other Transform by weight amount (0-1)."
+#: doc/classes/Transform.xml:84
+msgid ""
+"Interpolates the transform to other Transform by weight amount (on the range "
+"of 0.0 to 1.0)."
msgstr ""
-#: doc/classes/Transform.xml:89 doc/classes/Transform2D.xml:106
+#: doc/classes/Transform.xml:91
msgid ""
"Returns the inverse of the transform, under the assumption that the "
"transformation is composed of rotation and translation (no scaling, use "
"affine_inverse for transforms with scaling)."
msgstr ""
-#: doc/classes/Transform.xml:98 doc/classes/Transform2D.xml:115
+#: doc/classes/Transform.xml:100 doc/classes/Transform2D.xml:119
msgid ""
"Returns [code]true[/code] if this transform and [code]transform[/code] are "
"approximately equal, by calling [code]is_equal_approx[/code] on each "
"component."
msgstr ""
-#: doc/classes/Transform.xml:109
+#: doc/classes/Transform.xml:111
msgid ""
"Returns a copy of the transform rotated such that its -Z axis points towards "
"the [code]target[/code] position.\n"
@@ -51325,25 +52069,25 @@ msgid ""
"Operations take place in global space."
msgstr ""
-#: doc/classes/Transform.xml:118 doc/classes/Transform2D.xml:122
+#: doc/classes/Transform.xml:120
msgid ""
"Returns the transform with the basis orthogonal (90 degrees), and normalized "
"axis vectors."
msgstr ""
-#: doc/classes/Transform.xml:129
+#: doc/classes/Transform.xml:131
msgid ""
"Rotates the transform around the given axis by the given angle (in radians), "
"using matrix multiplication. The axis must be a normalized vector."
msgstr ""
-#: doc/classes/Transform.xml:138
+#: doc/classes/Transform.xml:140
msgid ""
"Scales basis and origin of the transform by the given scale factor, using "
"matrix multiplication."
msgstr ""
-#: doc/classes/Transform.xml:147 doc/classes/Transform2D.xml:149
+#: doc/classes/Transform.xml:149 doc/classes/Transform2D.xml:153
msgid ""
"Translates the transform by the given offset, relative to the transform's "
"basis vectors.\n"
@@ -51351,152 +52095,162 @@ msgid ""
"multiplication."
msgstr ""
-#: doc/classes/Transform.xml:157
+#: doc/classes/Transform.xml:159
msgid ""
"Transforms the given [Vector3], [Plane], [AABB], or [PackedVector3Array] by "
"this transform."
msgstr ""
-#: doc/classes/Transform.xml:166
+#: doc/classes/Transform.xml:168
msgid ""
"Inverse-transforms the given [Vector3], [Plane], [AABB], or "
"[PackedVector3Array] by this transform."
msgstr ""
-#: doc/classes/Transform.xml:172
+#: doc/classes/Transform.xml:174
msgid ""
"The basis is a matrix containing 3 [Vector3] as its columns: X axis, Y axis, "
"and Z axis. These vectors can be interpreted as the basis vectors of local "
"coordinate system traveling with the object."
msgstr ""
-#: doc/classes/Transform.xml:175
-msgid "The translation offset of the transform."
+#: doc/classes/Transform.xml:177
+msgid ""
+"The translation offset of the transform (column 3, the fourth column). "
+"Equivalent to array index [code]3[/code]."
msgstr ""
-#: doc/classes/Transform.xml:180
+#: doc/classes/Transform.xml:182
msgid ""
"[Transform] with no translation, rotation or scaling applied. When applied "
"to other data structures, [constant IDENTITY] performs no transformation."
msgstr ""
-#: doc/classes/Transform.xml:183
+#: doc/classes/Transform.xml:185
msgid "[Transform] with mirroring applied perpendicular to the YZ plane."
msgstr ""
-#: doc/classes/Transform.xml:186
+#: doc/classes/Transform.xml:188
msgid "[Transform] with mirroring applied perpendicular to the XZ plane."
msgstr ""
-#: doc/classes/Transform.xml:189
+#: doc/classes/Transform.xml:191
msgid "[Transform] with mirroring applied perpendicular to the XY plane."
msgstr ""
#: doc/classes/Transform2D.xml:4
-msgid "2D transformation (3×2 matrix)."
+msgid "2D transformation (2×3 matrix)."
msgstr ""
#: doc/classes/Transform2D.xml:7
msgid ""
-"Represents one or many transformations in 2D space such as translation, "
-"rotation, or scaling. It consists of two [member x] and [member y] "
-"[Vector2]s and an [member origin]. It is similar to a 3×2 matrix."
+"2×3 matrix (2 rows, 3 columns) used for 2D linear transformations. It can "
+"represent transformations such as translation, rotation, or scaling. It "
+"consists of a three [Vector2] values: [member x], [member y], and the "
+"[member origin].\n"
+"For more information, read the \"Matrices and transforms\" documentation "
+"article."
msgstr ""
-#: doc/classes/Transform2D.xml:18
+#: doc/classes/Transform2D.xml:20
msgid "Constructs the transform from a 3D [Transform]."
msgstr ""
-#: doc/classes/Transform2D.xml:31
+#: doc/classes/Transform2D.xml:33
msgid ""
-"Constructs the transform from 3 [Vector2]s representing x, y, and origin."
+"Constructs the transform from 3 [Vector2] values representing [member x], "
+"[member y], and the [member origin] (the three column vectors)."
msgstr ""
-#: doc/classes/Transform2D.xml:42
+#: doc/classes/Transform2D.xml:44
msgid "Constructs the transform from a given angle (in radians) and position."
msgstr ""
-#: doc/classes/Transform2D.xml:58
-msgid "Transforms the given vector by this transform's basis (no translation)."
+#: doc/classes/Transform2D.xml:60
+msgid ""
+"Returns a vector transformed (multiplied) by the basis matrix.\n"
+"This method does not account for translation (the origin vector)."
msgstr ""
-#: doc/classes/Transform2D.xml:67
+#: doc/classes/Transform2D.xml:70
msgid ""
-"Inverse-transforms the given vector by this transform's basis (no "
-"translation)."
+"Returns a vector transformed (multiplied) by the inverse basis matrix.\n"
+"This method does not account for translation (the origin vector)."
msgstr ""
-#: doc/classes/Transform2D.xml:74
+#: doc/classes/Transform2D.xml:78
msgid "Returns the transform's origin (translation)."
msgstr ""
-#: doc/classes/Transform2D.xml:81
+#: doc/classes/Transform2D.xml:85
msgid "Returns the transform's rotation (in radians)."
msgstr ""
-#: doc/classes/Transform2D.xml:88
+#: doc/classes/Transform2D.xml:92
msgid "Returns the scale."
msgstr ""
-#: doc/classes/Transform2D.xml:99
+#: doc/classes/Transform2D.xml:103
msgid ""
"Returns a transform interpolated between this transform and another by a "
-"given weight (0-1)."
+"given weight (on the range of 0.0 to 1.0)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:110
+msgid ""
+"Returns the inverse of the transform, under the assumption that the "
+"transformation is composed of rotation and translation (no scaling, use "
+"[method affine_inverse] for transforms with scaling)."
msgstr ""
-#: doc/classes/Transform2D.xml:131
+#: doc/classes/Transform2D.xml:126
+msgid ""
+"Returns the transform with the basis orthogonal (90 degrees), and normalized "
+"axis vectors (scale of 1 or -1)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:135
msgid ""
"Rotates the transform by the given angle (in radians), using matrix "
"multiplication."
msgstr ""
-#: doc/classes/Transform2D.xml:140
+#: doc/classes/Transform2D.xml:144
msgid ""
"Scales the transform by the given scale factor, using matrix multiplication."
msgstr ""
-#: doc/classes/Transform2D.xml:159
+#: doc/classes/Transform2D.xml:163
msgid ""
"Transforms the given [Vector2], [Rect2], or [PackedVector2Array] by this "
"transform."
msgstr ""
-#: doc/classes/Transform2D.xml:168
+#: doc/classes/Transform2D.xml:172
msgid ""
"Inverse-transforms the given [Vector2], [Rect2], or [PackedVector2Array] by "
"this transform."
msgstr ""
-#: doc/classes/Transform2D.xml:174
-msgid "The transform's translation offset."
-msgstr ""
-
-#: doc/classes/Transform2D.xml:177
+#: doc/classes/Transform2D.xml:178
msgid ""
-"The X axis of 2×2 basis matrix containing 2 [Vector2]s as its columns: X "
-"axis and Y axis. These vectors can be interpreted as the basis vectors of "
-"local coordinate system traveling with the object."
+"The origin vector (column 2, the third column). Equivalent to array index "
+"[code]2[/code]. The origin vector represents translation."
msgstr ""
-#: doc/classes/Transform2D.xml:180
+#: doc/classes/Transform2D.xml:189
msgid ""
-"The Y axis of 2×2 basis matrix containing 2 [Vector2]s as its columns: X "
-"axis and Y axis. These vectors can be interpreted as the basis vectors of "
-"local coordinate system traveling with the object."
-msgstr ""
-
-#: doc/classes/Transform2D.xml:185
-msgid ""
-"[Transform2D] with no translation, rotation or scaling applied. When applied "
-"to other data structures, [constant IDENTITY] performs no transformation."
+"The identity [Transform2D] with no translation, rotation or scaling applied. "
+"When applied to other data structures, [constant IDENTITY] performs no "
+"transformation."
msgstr ""
-#: doc/classes/Transform2D.xml:188
-msgid "[Transform2D] with mirroring applied parallel to the X axis."
+#: doc/classes/Transform2D.xml:192
+msgid "The [Transform2D] that will flip something along the X axis."
msgstr ""
-#: doc/classes/Transform2D.xml:191
-msgid "[Transform2D] with mirroring applied parallel to the Y axis."
+#: doc/classes/Transform2D.xml:195
+msgid "The [Transform2D] that will flip something along the Y axis."
msgstr ""
#: doc/classes/Translation.xml:4
@@ -52160,7 +52914,8 @@ msgid "Returns the column's cell mode."
msgstr ""
#: doc/classes/TreeItem.xml:121
-msgid "Returns the TreeItem's child items."
+msgid ""
+"Returns the TreeItem's first child item or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:130
@@ -52192,28 +52947,32 @@ msgid "Returns the icon [Texture2D] region as [Rect2]."
msgstr ""
#: doc/classes/TreeItem.xml:199
-msgid "Returns the next TreeItem in the tree."
+msgid ""
+"Returns the next TreeItem in the tree or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:208
msgid ""
-"Returns the next visible TreeItem in the tree.\n"
+"Returns the next visible TreeItem in the tree or a null object if there is "
+"none.\n"
"If [code]wrap[/code] is enabled, the method will wrap around to the first "
"visible element in the tree when called on the last visible element, "
"otherwise it returns [code]null[/code]."
msgstr ""
#: doc/classes/TreeItem.xml:216
-msgid "Returns the parent TreeItem."
+msgid "Returns the parent TreeItem or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:223
-msgid "Returns the previous TreeItem in the tree."
+msgid ""
+"Returns the previous TreeItem in the tree or a null object if there is none."
msgstr ""
#: doc/classes/TreeItem.xml:232
msgid ""
-"Returns the previous visible TreeItem in the tree.\n"
+"Returns the previous visible TreeItem in the tree or a null object if there "
+"is none.\n"
"If [code]wrap[/code] is enabled, the method will wrap around to the last "
"visible element in the tree when called on the first visible element, "
"otherwise it returns [code]null[/code]."
@@ -52723,6 +53482,10 @@ msgid ""
"A simple server that opens a UDP socket and returns connected "
"[PacketPeerUDP] upon receiving new packets. See also [method PacketPeerUDP."
"connect_to_host].\n"
+"After starting the server ([method listen]), you will need to [method poll] "
+"it at regular intervals (e.g. inside [method Node._process]) for it to "
+"process new packets, delivering them to the appropriate [PacketPeerUDP], and "
+"taking new connections.\n"
"Below a small example of how it can be used:\n"
"[codeblock]\n"
"# server.gd\n"
@@ -52735,6 +53498,7 @@ msgid ""
" server.listen(4242)\n"
"\n"
"func _process(delta):\n"
+" server.poll() # Important!\n"
" if server.is_connection_available():\n"
" var peer : PacketPeerUDP = server.take_connection()\n"
" var pkt = peer.get_packet()\n"
@@ -52770,35 +53534,55 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/UDPServer.xml:60
+#: doc/classes/UDPServer.xml:62
msgid ""
-"Returns [code]true[/code] if a packet with a new address/port combination is "
-"received on the socket."
+"Returns [code]true[/code] if a packet with a new address/port combination "
+"was received on the socket."
msgstr ""
-#: doc/classes/UDPServer.xml:67
+#: doc/classes/UDPServer.xml:69
msgid ""
"Returns [code]true[/code] if the socket is open and listening on a port."
msgstr ""
-#: doc/classes/UDPServer.xml:78
+#: doc/classes/UDPServer.xml:80
msgid ""
"Starts the server by opening a UDP socket listening on the given port. You "
"can optionally specify a [code]bind_address[/code] to only listen for "
"packets sent to that address. See also [method PacketPeerUDP.listen]."
msgstr ""
-#: doc/classes/UDPServer.xml:85
+#: doc/classes/UDPServer.xml:87
msgid ""
-"Stops the server, closing the UDP socket if open. Will not disconnect any "
-"connected [PacketPeerUDP]."
+"Call this method at regular intervals (e.g. inside [method Node._process]) "
+"to process new packets. And packet from known address/port pair will be "
+"delivered to the appropriate [PacketPeerUDP], any packet received from an "
+"unknown address/port pair will be added as a pending connection (see [method "
+"is_connection_available], [method take_connection]). The maximum number of "
+"pending connection is defined via [member max_pending_connections]."
msgstr ""
-#: doc/classes/UDPServer.xml:92
+#: doc/classes/UDPServer.xml:94
msgid ""
-"Returns a [PacketPeerUDP] connected to the address/port combination of the "
-"first packet in queue. Will return [code]null[/code] if no packet is in "
-"queue. See also [method PacketPeerUDP.connect_to_host]."
+"Stops the server, closing the UDP socket if open. Will close all connected "
+"[PacketPeerUDP] accepted via [method take_connection] (remote peers will not "
+"be notified)."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:101
+msgid ""
+"Returns the first pending connection (connected to the appropriate address/"
+"port). Will return [code]null[/code] if no new connection is available. See "
+"also [method is_connection_available], [method PacketPeerUDP."
+"connect_to_host]."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:107
+msgid ""
+"Define the maximum number of pending connections, during [method poll], any "
+"new pending connection exceeding that value will be automatically dropped. "
+"Setting this value to [code]0[/code] effectively prevents any new pending "
+"connection to be accepted (e.g. when all your players have connected)."
msgstr ""
#: doc/classes/UndoRedo.xml:4
@@ -53439,24 +54223,27 @@ msgstr ""
#: doc/classes/Vector2.xml:46
msgid ""
-"Returns the vector's angle in radians with respect to the X axis, or [code]"
-"(1, 0)[/code] vector.\n"
+"Returns this vector's angle with respect to the X axis, or [code](1, 0)[/"
+"code] vector, in radians.\n"
"Equivalent to the result of [method @GDScript.atan2] when called with the "
-"vector's [member x] and [member y] as parameters: [code]atan2(x, y)[/code]."
+"vector's [member y] and [member x] as parameters: [code]atan2(y, x)[/code]."
msgstr ""
#: doc/classes/Vector2.xml:56
-msgid "Returns the angle in radians between the two vectors."
-msgstr ""
+#, fuzzy
+msgid "Returns the angle to the given vector, in radians."
+msgstr "回傳åƒæ•¸çš„正切值。"
#: doc/classes/Vector2.xml:65
msgid ""
-"Returns the angle in radians between the line connecting the two points and "
-"the X coordinate."
+"Returns the angle between the line connecting the two points and the X axis, "
+"in radians."
msgstr ""
-#: doc/classes/Vector2.xml:72 doc/classes/Vector2i.xml:46
-msgid "Returns the ratio of [member x] to [member y]."
+#: doc/classes/Vector2.xml:72
+msgid ""
+"Returns the aspect ratio of this vector, the ratio of [member x] to [member "
+"y]."
msgstr ""
#: doc/classes/Vector2.xml:81 doc/classes/Vector3.xml:59
@@ -53465,24 +54252,28 @@ msgid ""
msgstr ""
#: doc/classes/Vector2.xml:88
-msgid "Returns the vector with all components rounded up."
+msgid ""
+"Returns the vector with all components rounded up (towards positive "
+"infinity)."
msgstr ""
#: doc/classes/Vector2.xml:97
-msgid "Returns the vector with a maximum length."
+msgid ""
+"Returns the vector with a maximum length by limiting its length to "
+"[code]length[/code]."
msgstr ""
#: doc/classes/Vector2.xml:106
-msgid ""
-"Returns the 2-dimensional analog of the cross product with the given vector."
-msgstr ""
+#, fuzzy
+msgid "Returns the cross product of this vector and [code]with[/code]."
+msgstr "計算兩個å‘é‡çš„外ç©ã€‚"
#: doc/classes/Vector2.xml:121
msgid ""
"Cubically interpolates between this vector and [code]b[/code] using "
"[code]pre_a[/code] and [code]post_b[/code] as handles, and returns the "
-"result at position [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation."
+"result at position [code]t[/code]. [code]t[/code] is on the range of 0.0 to "
+"1.0, representing the amount of interpolation."
msgstr ""
#: doc/classes/Vector2.xml:130 doc/classes/Vector3.xml:99
@@ -53490,182 +54281,199 @@ msgid ""
"Returns the normalized vector pointing from this vector to [code]b[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:139
+#: doc/classes/Vector2.xml:139 doc/classes/Vector3.xml:108
msgid ""
-"Returns the squared distance to vector [code]b[/code]. Prefer this function "
-"over [method distance_to] if you need to sort vectors or need the squared "
-"distance for some formula."
+"Returns the squared distance between this vector and [code]b[/code].\n"
+"This method runs faster than [method distance_to], so prefer it if you need "
+"to compare vectors or need the squared distance for some formula."
msgstr ""
-#: doc/classes/Vector2.xml:148
-msgid "Returns the distance to vector [code]b[/code]."
+#: doc/classes/Vector2.xml:149
+msgid "Returns the distance between this vector and [code]to[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:157
-msgid "Returns the dot product with vector [code]b[/code]."
+#: doc/classes/Vector2.xml:158
+msgid ""
+"Returns the dot product of this vector and [code]with[/code]. This can be "
+"used to compare the angle between two vectors. For example, this can be used "
+"to determine whether an enemy is facing the player.\n"
+"The dot product will be [code]0[/code] for a straight angle (90 degrees), "
+"greater than 0 for angles narrower than 90 degrees and lower than 0 for "
+"angles wider than 90 degrees.\n"
+"When using unit (normalized) vectors, the result will always be between "
+"[code]-1.0[/code] (180 degree angle) when the vectors are facing opposite "
+"directions, and [code]1.0[/code] (0 degree angle) when the vectors are "
+"aligned.\n"
+"[b]Note:[/b] [code]a.dot(b)[/code] is equivalent to [code]b.dot(a)[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:164
-msgid "Returns the vector with all components rounded down."
+#: doc/classes/Vector2.xml:168
+msgid ""
+"Returns the vector with all components rounded down (towards negative "
+"infinity)."
msgstr ""
-#: doc/classes/Vector2.xml:173 doc/classes/Vector3.xml:149
+#: doc/classes/Vector2.xml:177 doc/classes/Vector3.xml:153
msgid ""
"Returns [code]true[/code] if this vector and [code]v[/code] are "
"approximately equal, by running [method @GDScript.is_equal_approx] on each "
"component."
msgstr ""
-#: doc/classes/Vector2.xml:180 doc/classes/Vector3.xml:156
-msgid "Returns [code]true[/code] if the vector is normalized."
+#: doc/classes/Vector2.xml:184 doc/classes/Vector3.xml:160
+msgid ""
+"Returns [code]true[/code] if the vector is normalized, and false otherwise."
msgstr ""
-#: doc/classes/Vector2.xml:187 doc/classes/Vector3.xml:163
-msgid "Returns the vector's length."
-msgstr ""
+#: doc/classes/Vector2.xml:191 doc/classes/Vector3.xml:167
+#, fuzzy
+msgid "Returns the length (magnitude) of this vector."
+msgstr "回傳åƒæ•¸çš„正切值。"
-#: doc/classes/Vector2.xml:194
+#: doc/classes/Vector2.xml:198 doc/classes/Vector3.xml:174
msgid ""
-"Returns the vector's length squared. Prefer this method over [method length] "
-"if you need to sort vectors or need the squared length for some formula."
+"Returns the squared length (squared magnitude) of this vector.\n"
+"This method runs faster than [method length], so prefer it if you need to "
+"compare vectors or need the squared distance for some formula."
msgstr ""
-#: doc/classes/Vector2.xml:205
+#: doc/classes/Vector2.xml:210 doc/classes/Vector3.xml:186
msgid ""
"Returns the result of the linear interpolation between this vector and "
-"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation."
+"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is on the range of "
+"0.0 to 1.0, representing the amount of interpolation."
msgstr ""
-#: doc/classes/Vector2.xml:216 doc/classes/Vector3.xml:206
+#: doc/classes/Vector2.xml:221
msgid ""
"Moves the vector toward [code]to[/code] by the fixed [code]delta[/code] "
"amount."
msgstr ""
-#: doc/classes/Vector2.xml:223 doc/classes/Vector3.xml:213
+#: doc/classes/Vector2.xml:228 doc/classes/Vector3.xml:218
msgid ""
"Returns the vector scaled to unit length. Equivalent to [code]v / v.length()"
"[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:232 doc/classes/Vector3.xml:231
+#: doc/classes/Vector2.xml:237 doc/classes/Vector3.xml:236
msgid ""
-"Returns a vector composed of the [code]fposmod[/code] of this vector's "
+"Returns a vector composed of the [method @GDScript.fposmod] of this vector's "
"components and [code]mod[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:241 doc/classes/Vector3.xml:240
+#: doc/classes/Vector2.xml:246 doc/classes/Vector3.xml:245
msgid ""
-"Returns a vector composed of the [code]fposmod[/code] of this vector's "
+"Returns a vector composed of the [method @GDScript.fposmod] of this vector's "
"components and [code]modv[/code]'s components."
msgstr ""
-#: doc/classes/Vector2.xml:250 doc/classes/Vector3.xml:249
+#: doc/classes/Vector2.xml:255
msgid "Returns the vector projected onto the vector [code]b[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:259 doc/classes/Vector3.xml:258
+#: doc/classes/Vector2.xml:264
msgid "Returns the vector reflected from a plane defined by the given normal."
msgstr ""
-#: doc/classes/Vector2.xml:268
+#: doc/classes/Vector2.xml:273
msgid ""
"Returns the vector rotated by [code]phi[/code] radians. See also [method "
"@GDScript.deg2rad]."
msgstr ""
-#: doc/classes/Vector2.xml:275 doc/classes/Vector3.xml:276
+#: doc/classes/Vector2.xml:280
msgid ""
"Returns the vector with all components rounded to the nearest integer, with "
"halfway cases rounded away from zero."
msgstr ""
-#: doc/classes/Vector2.xml:282 doc/classes/Vector2i.xml:53
-#: doc/classes/Vector3.xml:283 doc/classes/Vector3i.xml:55
+#: doc/classes/Vector2.xml:287
msgid ""
"Returns the vector with each component set to one or negative one, depending "
-"on the signs of the components."
+"on the signs of the components, or zero if the component is zero, by calling "
+"[method @GDScript.sign] on each component."
msgstr ""
-#: doc/classes/Vector2.xml:293 doc/classes/Vector3.xml:294
+#: doc/classes/Vector2.xml:298 doc/classes/Vector3.xml:299
msgid ""
"Returns the result of spherical linear interpolation between this vector and "
-"[code]b[/code], by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation.\n"
+"[code]b[/code], by amount [code]t[/code]. [code]t[/code] is on the range of "
+"0.0 to 1.0, representing the amount of interpolation.\n"
"[b]Note:[/b] Both vectors must be normalized."
msgstr ""
-#: doc/classes/Vector2.xml:303 doc/classes/Vector3.xml:304
-msgid ""
-"Returns the component of the vector along a plane defined by the given "
-"normal."
+#: doc/classes/Vector2.xml:308 doc/classes/Vector3.xml:309
+msgid "Returns this vector slid along a plane defined by the given normal."
msgstr ""
-#: doc/classes/Vector2.xml:312 doc/classes/Vector3.xml:313
-msgid "Returns the vector snapped to a grid with the given size."
+#: doc/classes/Vector2.xml:317 doc/classes/Vector3.xml:318
+msgid ""
+"Returns this vector with each component snapped to the nearest multiple of "
+"[code]step[/code]. This can also be used to round to an arbitrary number of "
+"decimals."
msgstr ""
-#: doc/classes/Vector2.xml:319
-msgid "Returns a perpendicular vector."
+#: doc/classes/Vector2.xml:324
+msgid ""
+"Returns a perpendicular vector rotated 90 degrees counter-clockwise compared "
+"to the original, with the same length."
msgstr ""
-#: doc/classes/Vector2.xml:325 doc/classes/Vector2i.xml:59
-#: doc/classes/Vector3.xml:326 doc/classes/Vector3i.xml:61
+#: doc/classes/Vector2.xml:330 doc/classes/Vector2i.xml:59
+#: doc/classes/Vector3.xml:332 doc/classes/Vector3i.xml:61
msgid ""
"The vector's X component. Also accessible by using the index position [code]"
"[0][/code]."
msgstr ""
-#: doc/classes/Vector2.xml:328 doc/classes/Vector2i.xml:62
-#: doc/classes/Vector3.xml:329 doc/classes/Vector3i.xml:64
+#: doc/classes/Vector2.xml:333 doc/classes/Vector2i.xml:62
+#: doc/classes/Vector3.xml:335 doc/classes/Vector3i.xml:64
msgid ""
"The vector's Y component. Also accessible by using the index position [code]"
"[1][/code]."
msgstr ""
-#: doc/classes/Vector2.xml:333 doc/classes/Vector2i.xml:67
+#: doc/classes/Vector2.xml:338 doc/classes/Vector2i.xml:67
#: doc/classes/Vector3i.xml:72
msgid "Enumerated value for the X axis."
msgstr ""
-#: doc/classes/Vector2.xml:336 doc/classes/Vector2i.xml:70
+#: doc/classes/Vector2.xml:341 doc/classes/Vector2i.xml:70
#: doc/classes/Vector3i.xml:75
msgid "Enumerated value for the Y axis."
msgstr ""
-#: doc/classes/Vector2.xml:339 doc/classes/Vector2i.xml:73
-#: doc/classes/Vector3.xml:346 doc/classes/Vector3i.xml:81
-msgid "Zero vector."
+#: doc/classes/Vector2.xml:344 doc/classes/Vector2i.xml:73
+#: doc/classes/Vector3.xml:352 doc/classes/Vector3i.xml:81
+msgid "Zero vector, a vector with all components set to [code]0[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:342 doc/classes/Vector2i.xml:76
-#: doc/classes/Vector3.xml:349 doc/classes/Vector3i.xml:84
-msgid "One vector."
+#: doc/classes/Vector2.xml:347 doc/classes/Vector2i.xml:76
+#: doc/classes/Vector3.xml:355 doc/classes/Vector3i.xml:84
+msgid "One vector, a vector with all components set to [code]1[/code]."
msgstr ""
-#: doc/classes/Vector2.xml:345 doc/classes/Vector3.xml:352
-msgid "Infinity vector."
+#: doc/classes/Vector2.xml:350 doc/classes/Vector3.xml:358
+msgid ""
+"Infinity vector, a vector with all components set to [constant @GDScript."
+"INF]."
msgstr ""
-#: doc/classes/Vector2.xml:348 doc/classes/Vector2i.xml:79
-#: doc/classes/Vector3.xml:355 doc/classes/Vector3i.xml:87
-msgid "Left unit vector."
+#: doc/classes/Vector2.xml:353 doc/classes/Vector2i.xml:79
+msgid "Left unit vector. Represents the direction of left."
msgstr ""
-#: doc/classes/Vector2.xml:351 doc/classes/Vector2i.xml:82
-#: doc/classes/Vector3.xml:358 doc/classes/Vector3i.xml:90
-msgid "Right unit vector."
+#: doc/classes/Vector2.xml:356 doc/classes/Vector2i.xml:82
+msgid "Right unit vector. Represents the direction of right."
msgstr ""
-#: doc/classes/Vector2.xml:354 doc/classes/Vector2i.xml:85
-#: doc/classes/Vector3.xml:361 doc/classes/Vector3i.xml:93
-msgid "Up unit vector."
+#: doc/classes/Vector2.xml:359 doc/classes/Vector2i.xml:85
+msgid "Up unit vector. Y is down in 2D, so this vector points -Y."
msgstr ""
-#: doc/classes/Vector2.xml:357 doc/classes/Vector2i.xml:88
-#: doc/classes/Vector3.xml:364 doc/classes/Vector3i.xml:96
-msgid "Down unit vector."
+#: doc/classes/Vector2.xml:362 doc/classes/Vector2i.xml:88
+msgid "Down unit vector. Y is down in 2D, so this vector points +Y."
msgstr ""
#: doc/classes/Vector2i.xml:4
@@ -53694,6 +54502,16 @@ msgid ""
"will be truncated."
msgstr ""
+#: doc/classes/Vector2i.xml:46
+msgid "Returns the ratio of [member x] to [member y]."
+msgstr ""
+
+#: doc/classes/Vector2i.xml:53 doc/classes/Vector3i.xml:55
+msgid ""
+"Returns the vector with each component set to one or negative one, depending "
+"on the signs of the components."
+msgstr ""
+
#: doc/classes/Vector3.xml:4
msgid "Vector used for 3D math using floating point coordinates."
msgstr ""
@@ -53718,120 +54536,171 @@ msgid "Returns a [Vector3] with the given components."
msgstr ""
#: doc/classes/Vector3.xml:50
-msgid "Returns the minimum angle to the given vector."
+msgid "Returns the minimum angle to the given vector, in radians."
msgstr ""
#: doc/classes/Vector3.xml:66
-msgid "Returns a new vector with all components rounded up."
+msgid ""
+"Returns a new vector with all components rounded up (towards positive "
+"infinity)."
msgstr ""
#: doc/classes/Vector3.xml:75
-msgid "Returns the cross product with [code]b[/code]."
-msgstr ""
+#, fuzzy
+msgid "Returns the cross product of this vector and [code]b[/code]."
+msgstr "計算兩個å‘é‡çš„外ç©ã€‚"
#: doc/classes/Vector3.xml:90
msgid ""
"Performs a cubic interpolation between vectors [code]pre_a[/code], [code]a[/"
"code], [code]b[/code], [code]post_b[/code] ([code]a[/code] is current), by "
-"the given amount [code]t[/code]. [code]t[/code] is in the range of [code]0.0 "
-"- 1.0[/code], representing the amount of interpolation."
+"the given amount [code]t[/code]. [code]t[/code] is on the range of 0.0 to "
+"1.0, representing the amount of interpolation."
msgstr ""
-#: doc/classes/Vector3.xml:108
-msgid ""
-"Returns the squared distance to [code]b[/code]. Prefer this function over "
-"[method distance_to] if you need to sort vectors or need the squared "
-"distance for some formula."
-msgstr ""
-
-#: doc/classes/Vector3.xml:117
-msgid "Returns the distance to [code]b[/code]."
+#: doc/classes/Vector3.xml:118
+msgid "Returns the distance between this vector and [code]b[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:126
-msgid "Returns the dot product with [code]b[/code]."
+#: doc/classes/Vector3.xml:127
+msgid ""
+"Returns the dot product of this vector and [code]b[/code]. This can be used "
+"to compare the angle between two vectors. For example, this can be used to "
+"determine whether an enemy is facing the player.\n"
+"The dot product will be [code]0[/code] for a straight angle (90 degrees), "
+"greater than 0 for angles narrower than 90 degrees and lower than 0 for "
+"angles wider than 90 degrees.\n"
+"When using unit (normalized) vectors, the result will always be between "
+"[code]-1.0[/code] (180 degree angle) when the vectors are facing opposite "
+"directions, and [code]1.0[/code] (0 degree angle) when the vectors are "
+"aligned.\n"
+"[b]Note:[/b] [code]a.dot(b)[/code] is equivalent to [code]b.dot(a)[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:133
-msgid "Returns a new vector with all components rounded down."
+#: doc/classes/Vector3.xml:137
+msgid ""
+"Returns a new vector with all components rounded down (towards negative "
+"infinity)."
msgstr ""
-#: doc/classes/Vector3.xml:140
+#: doc/classes/Vector3.xml:144
msgid ""
"Returns the inverse of the vector. This is the same as [code]Vector3( 1.0 / "
"v.x, 1.0 / v.y, 1.0 / v.z )[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:170
+#: doc/classes/Vector3.xml:193 doc/classes/Vector3i.xml:41
msgid ""
-"Returns the vector's length squared. Prefer this function over [method "
-"length] if you need to sort vectors or need the squared length for some "
-"formula."
+"Returns the axis of the vector's largest value. See [code]AXIS_*[/code] "
+"constants. If all components are equal, this method returns [constant "
+"AXIS_X]."
msgstr ""
-#: doc/classes/Vector3.xml:181
+#: doc/classes/Vector3.xml:200 doc/classes/Vector3i.xml:48
msgid ""
-"Returns the result of the linear interpolation between this vector and "
-"[code]b[/code] by amount [code]t[/code]. [code]t[/code] is in the range of "
-"[code]0.0 - 1.0[/code], representing the amount of interpolation.."
+"Returns the axis of the vector's smallest value. See [code]AXIS_*[/code] "
+"constants. If all components are equal, this method returns [constant "
+"AXIS_Z]."
msgstr ""
-#: doc/classes/Vector3.xml:188 doc/classes/Vector3i.xml:41
+#: doc/classes/Vector3.xml:211
msgid ""
-"Returns the axis of the vector's largest value. See [code]AXIS_*[/code] "
-"constants."
+"Moves this vector toward [code]to[/code] by the fixed [code]delta[/code] "
+"amount."
+msgstr ""
+
+#: doc/classes/Vector3.xml:227
+msgid "Returns the outer product with [code]b[/code]."
msgstr ""
-#: doc/classes/Vector3.xml:195 doc/classes/Vector3i.xml:48
+#: doc/classes/Vector3.xml:254
+msgid "Returns this vector projected onto another vector [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:263
+msgid "Returns this vector reflected from a plane defined by the given normal."
+msgstr ""
+
+#: doc/classes/Vector3.xml:274
msgid ""
-"Returns the axis of the vector's smallest value. See [code]AXIS_*[/code] "
-"constants."
+"Rotates this vector around a given axis by [code]phi[/code] radians. The "
+"axis must be a normalized vector."
msgstr ""
-#: doc/classes/Vector3.xml:222
-msgid "Returns the outer product with [code]b[/code]."
+#: doc/classes/Vector3.xml:281
+msgid ""
+"Returns this vector with all components rounded to the nearest integer, with "
+"halfway cases rounded away from zero."
msgstr ""
-#: doc/classes/Vector3.xml:269
+#: doc/classes/Vector3.xml:288
msgid ""
-"Rotates the vector around a given axis by [code]phi[/code] radians. The axis "
-"must be a normalized vector."
+"Returns a vector with each component set to one or negative one, depending "
+"on the signs of this vector's components, or zero if the component is zero, "
+"by calling [method @GDScript.sign] on each component."
msgstr ""
-#: doc/classes/Vector3.xml:320
-msgid "Returns a diagonal matrix with the vector as main diagonal."
+#: doc/classes/Vector3.xml:325
+msgid ""
+"Returns a diagonal matrix with the vector as main diagonal.\n"
+"This is equivalent to a Basis with no rotation or shearing and this vector's "
+"components set as the scale."
msgstr ""
-#: doc/classes/Vector3.xml:332 doc/classes/Vector3i.xml:67
+#: doc/classes/Vector3.xml:338 doc/classes/Vector3i.xml:67
msgid ""
"The vector's Z component. Also accessible by using the index position [code]"
"[2][/code]."
msgstr ""
-#: doc/classes/Vector3.xml:337
+#: doc/classes/Vector3.xml:343
msgid ""
"Enumerated value for the X axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:340
+#: doc/classes/Vector3.xml:346
msgid ""
"Enumerated value for the Y axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:343
+#: doc/classes/Vector3.xml:349
msgid ""
"Enumerated value for the Z axis. Returned by [method max_axis] and [method "
"min_axis]."
msgstr ""
-#: doc/classes/Vector3.xml:367 doc/classes/Vector3i.xml:99
-msgid "Forward unit vector."
+#: doc/classes/Vector3.xml:361 doc/classes/Vector3i.xml:87
+msgid ""
+"Left unit vector. Represents the local direction of left, and the global "
+"direction of west."
+msgstr ""
+
+#: doc/classes/Vector3.xml:364 doc/classes/Vector3i.xml:90
+msgid ""
+"Right unit vector. Represents the local direction of right, and the global "
+"direction of east."
+msgstr ""
+
+#: doc/classes/Vector3.xml:367 doc/classes/Vector3i.xml:93
+msgid "Up unit vector."
msgstr ""
-#: doc/classes/Vector3.xml:370 doc/classes/Vector3i.xml:102
-msgid "Back unit vector."
+#: doc/classes/Vector3.xml:370 doc/classes/Vector3i.xml:96
+msgid "Down unit vector."
+msgstr ""
+
+#: doc/classes/Vector3.xml:373 doc/classes/Vector3i.xml:99
+msgid ""
+"Forward unit vector. Represents the local direction of forward, and the "
+"global direction of north."
+msgstr ""
+
+#: doc/classes/Vector3.xml:376 doc/classes/Vector3i.xml:102
+msgid ""
+"Back unit vector. Represents the local direction of back, and the global "
+"direction of south."
msgstr ""
#: doc/classes/Vector3i.xml:4
@@ -53880,10 +54749,14 @@ msgid ""
"directly.\n"
"[b]Note:[/b] The origin point of your VehicleBody3D will determine the "
"center of gravity of your vehicle so it is better to keep this low and move "
-"the [CollisionShape3D] and [MeshInstance3D] upwards."
+"the [CollisionShape3D] and [MeshInstance3D] upwards.\n"
+"[b]Note:[/b] This class has known issues and isn't designed to provide "
+"realistic 3D vehicle physics. If you want advanced vehicle physics, you will "
+"probably have to write your own physics integration using another "
+"[PhysicsBody3D] class."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:16
+#: doc/classes/VehicleBody3D.xml:17
msgid ""
"Slows down the vehicle by applying a braking force. The vehicle is only "
"slowed down if the wheels are in contact with a surface. The force you need "
@@ -53892,7 +54765,7 @@ msgid ""
"a value in the 25 - 30 range for hard braking."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:19
+#: doc/classes/VehicleBody3D.xml:20
msgid ""
"Accelerates the vehicle by applying an engine force. The vehicle is only "
"speed up if the wheels that have [member VehicleWheel3D.use_as_traction] set "
@@ -53905,7 +54778,7 @@ msgid ""
"A negative value will result in the vehicle reversing."
msgstr ""
-#: doc/classes/VehicleBody3D.xml:25
+#: doc/classes/VehicleBody3D.xml:26
msgid ""
"The steering angle for the vehicle. Setting this to a non-zero value will "
"result in the vehicle turning when it's moving. Wheels that have [member "
@@ -53921,25 +54794,29 @@ msgstr ""
msgid ""
"This node needs to be used as a child node of [VehicleBody3D] and simulates "
"the behavior of one of its wheels. This node also acts as a collider to "
-"detect if the wheel is touching a surface."
+"detect if the wheel is touching a surface.\n"
+"[b]Note:[/b] This class has known issues and isn't designed to provide "
+"realistic 3D vehicle physics. If you want advanced vehicle physics, you will "
+"probably have to write your own physics integration using another "
+"[PhysicsBody3D] class."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:16
+#: doc/classes/VehicleWheel3D.xml:17
msgid "Returns the rotational speed of the wheel in revolutions per minute."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:23
+#: doc/classes/VehicleWheel3D.xml:24
msgid ""
"Returns a value between 0.0 and 1.0 that indicates whether this wheel is "
"skidding. 0.0 is skidding (the wheel has lost grip, e.g. icy terrain), 1.0 "
"means not skidding (the wheel has full grip, e.g. dry asphalt road)."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:30
+#: doc/classes/VehicleWheel3D.xml:31
msgid "Returns [code]true[/code] if this wheel is in contact with a surface."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:36
+#: doc/classes/VehicleWheel3D.xml:37
msgid ""
"Slows down the wheel by applying a braking force. The wheel is only slowed "
"down if it is in contact with a surface. The force you need to apply to "
@@ -53948,7 +54825,7 @@ msgid ""
"- 30 range for hard braking."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:39
+#: doc/classes/VehicleWheel3D.xml:40
msgid ""
"The damping applied to the spring when the spring is being compressed. This "
"value should be between 0.0 (no damping) and 1.0. A value of 0.0 means the "
@@ -53956,7 +54833,7 @@ msgid ""
"is around 0.3 for a normal car, 0.5 for a race car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:42
+#: doc/classes/VehicleWheel3D.xml:43
msgid ""
"The damping applied to the spring when relaxing. This value should be "
"between 0.0 (no damping) and 1.0. This value should always be slightly "
@@ -53964,7 +54841,7 @@ msgid ""
"damping_compression] value of 0.3, try a relaxation value of 0.5."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:45
+#: doc/classes/VehicleWheel3D.xml:46
msgid ""
"Accelerates the wheel by applying an engine force. The wheel is only speed "
"up if it is in contact with a surface. The [member RigidBody3D.mass] of the "
@@ -53975,13 +54852,13 @@ msgid ""
"A negative value will result in the wheel reversing."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:50
+#: doc/classes/VehicleWheel3D.xml:51
msgid ""
"The steering angle for the wheel. Setting this to a non-zero value will "
"result in the vehicle turning when it's moving."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:53
+#: doc/classes/VehicleWheel3D.xml:54
msgid ""
"The maximum force the spring can resist. This value should be higher than a "
"quarter of the [member RigidBody3D.mass] of the [VehicleBody3D] or the "
@@ -53989,28 +54866,28 @@ msgid ""
"obtained by a value that is about 3× to 4× this number."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:56
+#: doc/classes/VehicleWheel3D.xml:57
msgid ""
"This value defines the stiffness of the suspension. Use a value lower than "
"50 for an off-road car, a value between 50 and 100 for a race car and try "
"something around 200 for something like a Formula 1 car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:59
+#: doc/classes/VehicleWheel3D.xml:60
msgid ""
"This is the distance the suspension can travel. As Godot units are "
"equivalent to meters, keep this setting relatively low. Try a value between "
"0.1 and 0.3 depending on the type of car."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:62
+#: doc/classes/VehicleWheel3D.xml:63
msgid ""
"If [code]true[/code], this wheel will be turned when the car steers. This "
"value is used in conjunction with [member VehicleBody3D.steering] and "
"ignored if you are using the per-wheel [member steering] value instead."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:65
+#: doc/classes/VehicleWheel3D.xml:66
msgid ""
"If [code]true[/code], this wheel transfers engine force to the ground to "
"propel the vehicle forward. This value is used in conjunction with [member "
@@ -54018,7 +54895,7 @@ msgid ""
"[member engine_force] value instead."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:68
+#: doc/classes/VehicleWheel3D.xml:69
msgid ""
"This determines how much grip this wheel has. It is combined with the "
"friction setting of the surface the wheel is in contact with. 0.0 means no "
@@ -54028,11 +54905,11 @@ msgid ""
"It's best to set this to 1.0 when starting out."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:72
+#: doc/classes/VehicleWheel3D.xml:73
msgid "The radius of the wheel in meters."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:75
+#: doc/classes/VehicleWheel3D.xml:76
msgid ""
"This is the distance in meters the wheel is lowered from its origin point. "
"Don't set this to 0.0 and move the wheel into position, instead move the "
@@ -54041,7 +54918,7 @@ msgid ""
"down to the position it should be in when the car is in rest."
msgstr ""
-#: doc/classes/VehicleWheel3D.xml:78
+#: doc/classes/VehicleWheel3D.xml:79
msgid ""
"This value affects the roll of your vehicle. If set to 1.0 for all wheels, "
"your vehicle will be prone to rolling over, while a value of 0.0 will resist "
@@ -54519,7 +55396,7 @@ msgstr ""
#: doc/classes/Viewport.xml:318
msgid ""
"Use fast approximate antialiasing. FXAA is a popular screen-space "
-"antialising method, which is fast but will make the image look blurry, "
+"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."
msgstr ""
@@ -54572,24 +55449,24 @@ msgid ""
"your [WorldEnvironment]."
msgstr ""
-#: doc/classes/Viewport.xml:384
+#: doc/classes/Viewport.xml:381
msgid ""
"Colors each PSSM split for the [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, and yellow."
msgstr ""
-#: doc/classes/Viewport.xml:387
+#: doc/classes/Viewport.xml:384
msgid ""
"Draws the decal atlas used by [Decal]s and light projector textures in the "
"upper left quadrant of the [Viewport]."
msgstr ""
-#: doc/classes/Viewport.xml:402
+#: doc/classes/Viewport.xml:405
msgid "Max value for [enum DefaultCanvasItemTextureFilter] enum."
msgstr ""
-#: doc/classes/Viewport.xml:414
+#: doc/classes/Viewport.xml:417
msgid "Max value for [enum DefaultCanvasItemTextureRepeat] enum."
msgstr ""
@@ -54620,82 +55497,84 @@ msgid ""
"The VisibilityEnabler2D will disable [RigidBody2D], [AnimationPlayer], and "
"other nodes when they are not visible. It will only affect nodes with the "
"same root node as the VisibilityEnabler2D, and the root node itself.\n"
+"If you just want to receive notifications, use [VisibilityNotifier2D] "
+"instead.\n"
"[b]Note:[/b] For performance reasons, VisibilityEnabler2D uses an "
"approximate heuristic with precision determined by [member ProjectSettings."
-"world/2d/cell_size]. If you need exact visibility checking, use another "
+"world/2d/cell_size]. If you need precise visibility checking, use another "
"method such as adding an [Area2D] node as a child of a [Camera2D] node.\n"
"[b]Note:[/b] VisibilityEnabler2D will not affect nodes added after scene "
"initialization."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:20
-#: doc/classes/VisibilityEnabler3D.xml:20
+#: doc/classes/VisibilityEnabler2D.xml:21
+#: doc/classes/VisibilityEnabler3D.xml:21
msgid ""
"Returns whether the enabler identified by given [enum Enabler] constant is "
"active."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:31
-#: doc/classes/VisibilityEnabler3D.xml:31
+#: doc/classes/VisibilityEnabler2D.xml:32
+#: doc/classes/VisibilityEnabler3D.xml:32
msgid ""
"Sets active state of the enabler identified by given [enum Enabler] constant."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:37
+#: doc/classes/VisibilityEnabler2D.xml:38
msgid "If [code]true[/code], [RigidBody2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:40
+#: doc/classes/VisibilityEnabler2D.xml:41
msgid "If [code]true[/code], [AnimatedSprite2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:43
-#: doc/classes/VisibilityEnabler3D.xml:40
+#: doc/classes/VisibilityEnabler2D.xml:44
+#: doc/classes/VisibilityEnabler3D.xml:41
msgid "If [code]true[/code], [AnimationPlayer] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:46
+#: doc/classes/VisibilityEnabler2D.xml:47
msgid "If [code]true[/code], [GPUParticles2D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:49
+#: doc/classes/VisibilityEnabler2D.xml:50
msgid ""
"If [code]true[/code], the parent's [method Node._physics_process] will be "
"stopped."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:52
+#: doc/classes/VisibilityEnabler2D.xml:53
msgid ""
"If [code]true[/code], the parent's [method Node._process] will be stopped."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:57
-#: doc/classes/VisibilityEnabler3D.xml:45
+#: doc/classes/VisibilityEnabler2D.xml:58
+#: doc/classes/VisibilityEnabler3D.xml:46
msgid "This enabler will pause [AnimationPlayer] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:60
+#: doc/classes/VisibilityEnabler2D.xml:61
msgid "This enabler will freeze [RigidBody2D] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:63
+#: doc/classes/VisibilityEnabler2D.xml:64
msgid "This enabler will stop [GPUParticles2D] nodes."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:66
+#: doc/classes/VisibilityEnabler2D.xml:67
msgid "This enabler will stop the parent's _process function."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:69
+#: doc/classes/VisibilityEnabler2D.xml:70
msgid "This enabler will stop the parent's _physics_process function."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:72
+#: doc/classes/VisibilityEnabler2D.xml:73
msgid "This enabler will stop [AnimatedSprite2D] nodes animations."
msgstr ""
-#: doc/classes/VisibilityEnabler2D.xml:75
-#: doc/classes/VisibilityEnabler3D.xml:51
+#: doc/classes/VisibilityEnabler2D.xml:76
+#: doc/classes/VisibilityEnabler3D.xml:52
msgid "Represents the size of the [enum Enabler] enum."
msgstr ""
@@ -54704,19 +55583,23 @@ msgid ""
"The VisibilityEnabler3D will disable [RigidBody3D] and [AnimationPlayer] "
"nodes when they are not visible. It will only affect other nodes within the "
"same scene as the VisibilityEnabler3D itself.\n"
+"If you just want to receive notifications, use [VisibilityNotifier3D] "
+"instead.\n"
"[b]Note:[/b] VisibilityEnabler3D uses an approximate heuristic for "
"performance reasons. It doesn't take walls and other occlusion into account. "
-"If you need exact visibility checking, use another method such as adding an "
-"[Area3D] node as a child of a [Camera3D] node.\n"
+"The heuristic is an implementation detail and may change in future versions. "
+"If you need precise visibility checking, use another method such as adding "
+"an [Area3D] node as a child of a [Camera3D] node and/or [method Vector3."
+"dot].\n"
"[b]Note:[/b] VisibilityEnabler3D will not affect nodes added after scene "
"initialization."
msgstr ""
-#: doc/classes/VisibilityEnabler3D.xml:37
+#: doc/classes/VisibilityEnabler3D.xml:38
msgid "If [code]true[/code], [RigidBody3D] nodes will be paused."
msgstr ""
-#: doc/classes/VisibilityEnabler3D.xml:48
+#: doc/classes/VisibilityEnabler3D.xml:49
msgid "This enabler will freeze [RigidBody3D] nodes."
msgstr ""
@@ -54730,13 +55613,15 @@ msgid ""
"The VisibilityNotifier2D detects when it is visible on the screen. It also "
"notifies when its bounding rectangle enters or exits the screen or a "
"viewport.\n"
+"If you want nodes to be disabled automatically when they exit the screen, "
+"use [VisibilityEnabler2D] instead.\n"
"[b]Note:[/b] For performance reasons, VisibilityNotifier2D uses an "
"approximate heuristic with precision determined by [member ProjectSettings."
-"world/2d/cell_size]. If you need exact visibility checking, use another "
+"world/2d/cell_size]. If you need precise visibility checking, use another "
"method such as adding an [Area2D] node as a child of a [Camera2D] node."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:17
+#: doc/classes/VisibilityNotifier2D.xml:18
msgid ""
"If [code]true[/code], the bounding rectangle is on the screen.\n"
"[b]Note:[/b] It takes one frame for the node's visibility to be assessed "
@@ -54745,23 +55630,23 @@ msgid ""
"pass."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:24
+#: doc/classes/VisibilityNotifier2D.xml:25
msgid "The VisibilityNotifier2D's bounding rectangle."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:30
+#: doc/classes/VisibilityNotifier2D.xml:31
msgid "Emitted when the VisibilityNotifier2D enters the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:35
+#: doc/classes/VisibilityNotifier2D.xml:36
msgid "Emitted when the VisibilityNotifier2D exits the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:42
+#: doc/classes/VisibilityNotifier2D.xml:43
msgid "Emitted when the VisibilityNotifier2D enters a [Viewport]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier2D.xml:49
+#: doc/classes/VisibilityNotifier2D.xml:50
msgid "Emitted when the VisibilityNotifier2D exits a [Viewport]'s view."
msgstr ""
@@ -54770,13 +55655,16 @@ msgid ""
"The VisibilityNotifier3D detects when it is visible on the screen. It also "
"notifies when its bounding rectangle enters or exits the screen or a "
"[Camera3D]'s view.\n"
+"If you want nodes to be disabled automatically when they exit the screen, "
+"use [VisibilityEnabler3D] instead.\n"
"[b]Note:[/b] VisibilityNotifier3D uses an approximate heuristic for "
"performance reasons. It doesn't take walls and other occlusion into account. "
-"If you need exact visibility checking, use another method such as adding an "
-"[Area3D] node as a child of a [Camera3D] node."
+"The heuristic is an implementation detail and may change in future versions. "
+"If you need precise visibility checking, use another method such as adding "
+"an [Area3D] node as a child of a [Camera3D] node and/or [method Vector3.dot]."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:17
+#: doc/classes/VisibilityNotifier3D.xml:18
msgid ""
"If [code]true[/code], the bounding box is on the screen.\n"
"[b]Note:[/b] It takes one frame for the node's visibility to be assessed "
@@ -54785,23 +55673,23 @@ msgid ""
"pass."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:24
+#: doc/classes/VisibilityNotifier3D.xml:25
msgid "The VisibilityNotifier3D's bounding box."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:32
+#: doc/classes/VisibilityNotifier3D.xml:33
msgid "Emitted when the VisibilityNotifier3D enters a [Camera3D]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:39
+#: doc/classes/VisibilityNotifier3D.xml:40
msgid "Emitted when the VisibilityNotifier3D exits a [Camera3D]'s view."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:44
+#: doc/classes/VisibilityNotifier3D.xml:45
msgid "Emitted when the VisibilityNotifier3D enters the screen."
msgstr ""
-#: doc/classes/VisibilityNotifier3D.xml:49
+#: doc/classes/VisibilityNotifier3D.xml:50
msgid "Emitted when the VisibilityNotifier3D exits the screen."
msgstr ""
@@ -55221,6 +56109,12 @@ msgid ""
"exist."
msgstr ""
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:90
+msgid ""
+"Easing function, based on exponent. 0 is constant, 1 is linear, 0 to 1 is "
+"ease-in, 1+ is ease out. Negative values are in-out/out in."
+msgstr ""
+
#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:93
msgid ""
"Return the number of digit places after the decimal that the first non-zero "
@@ -56106,6 +57000,7 @@ msgid "A shader for light calculations."
msgstr ""
#: doc/classes/VisualShader.xml:214
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:26
msgid "Represents the size of the [enum Type] enum."
msgstr ""
@@ -56208,6 +57103,24 @@ msgstr ""
msgid "Translated to [code]uniform bool[/code] in the shader language."
msgstr ""
+#: doc/classes/VisualShaderNodeBooleanUniform.xml:15
+#: doc/classes/VisualShaderNodeColorUniform.xml:15
+#: doc/classes/VisualShaderNodeFloatUniform.xml:15
+#: doc/classes/VisualShaderNodeIntUniform.xml:15
+#: doc/classes/VisualShaderNodeTransformUniform.xml:15
+#: doc/classes/VisualShaderNodeVec3Uniform.xml:15
+msgid "A default value to be assigned within the shader."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeBooleanUniform.xml:18
+#: doc/classes/VisualShaderNodeColorUniform.xml:18
+#: doc/classes/VisualShaderNodeFloatUniform.xml:18
+#: doc/classes/VisualShaderNodeIntUniform.xml:18
+#: doc/classes/VisualShaderNodeTransformUniform.xml:18
+#: doc/classes/VisualShaderNodeVec3Uniform.xml:18
+msgid "Enables usage of the [member default_value]."
+msgstr ""
+
#: doc/classes/VisualShaderNodeColorConstant.xml:4
msgid "A [Color] constant to be used within the visual shader graph."
msgstr ""
@@ -57058,49 +57971,49 @@ msgstr ""
msgid "Translated to [code]uniform float[/code] in the shader language."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:15
-#: doc/classes/VisualShaderNodeIntUniform.xml:15
+#: doc/classes/VisualShaderNodeFloatUniform.xml:21
+#: doc/classes/VisualShaderNodeIntUniform.xml:21
msgid ""
"A hint applied to the uniform, which controls the values it can take when "
"set through the inspector."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:18
-#: doc/classes/VisualShaderNodeIntUniform.xml:18
+#: doc/classes/VisualShaderNodeFloatUniform.xml:24
+#: doc/classes/VisualShaderNodeIntUniform.xml:24
msgid ""
"Minimum value for range hints. Used if [member hint] is set to [constant "
"HINT_RANGE] or [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:21
-#: doc/classes/VisualShaderNodeIntUniform.xml:21
+#: doc/classes/VisualShaderNodeFloatUniform.xml:27
+#: doc/classes/VisualShaderNodeIntUniform.xml:27
msgid ""
"Maximum value for range hints. Used if [member hint] is set to [constant "
"HINT_RANGE] or [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:24
-#: doc/classes/VisualShaderNodeIntUniform.xml:24
+#: doc/classes/VisualShaderNodeFloatUniform.xml:30
+#: doc/classes/VisualShaderNodeIntUniform.xml:30
msgid ""
"Step (increment) value for the range hint with step. Used if [member hint] "
"is set to [constant HINT_RANGE_STEP]."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:29
-#: doc/classes/VisualShaderNodeIntUniform.xml:29
+#: doc/classes/VisualShaderNodeFloatUniform.xml:35
+#: doc/classes/VisualShaderNodeIntUniform.xml:35
msgid "No hint used."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:32
-#: doc/classes/VisualShaderNodeIntUniform.xml:32
+#: doc/classes/VisualShaderNodeFloatUniform.xml:38
+#: doc/classes/VisualShaderNodeIntUniform.xml:38
msgid ""
"A range hint for scalar value, which limits possible input values between "
"[member min] and [member max]. Translated to [code]hint_range(min, max)[/"
"code] in shader code."
msgstr ""
-#: doc/classes/VisualShaderNodeFloatUniform.xml:35
-#: doc/classes/VisualShaderNodeIntUniform.xml:35
+#: doc/classes/VisualShaderNodeFloatUniform.xml:41
+#: doc/classes/VisualShaderNodeIntUniform.xml:41
msgid ""
"A range hint for scalar value with step, which limits possible input values "
"between [member min] and [member max], with a step (increment) of [member "
@@ -57382,6 +58295,26 @@ msgid ""
"results, e.g. division by zero)."
msgstr ""
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:4
+msgid "Performs a fused multiply-add operation within the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:7
+msgid "Uses three operands to compute [code](a * b + c)[/code] expression."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:15
+msgid "A type of operands and returned value."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:20
+msgid "A scalar type."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeMultiplyAdd.xml:23
+msgid "A vector type."
+msgstr ""
+
#: doc/classes/VisualShaderNodeOuterProduct.xml:4
msgid ""
"Calculates an outer product of two vectors within the visual shader graph."
@@ -57404,7 +58337,7 @@ msgstr ""
#: doc/classes/VisualShaderNodeOutput.xml:7
msgid ""
"This visual shader node is present in all shader graphs in form of \"Output"
-"\" block with mutliple output value ports."
+"\" block with multiple output value ports."
msgstr ""
#: doc/classes/VisualShaderNodeSample3D.xml:4
@@ -57768,6 +58701,20 @@ msgid ""
"[ShaderMaterial] properties."
msgstr ""
+#: doc/classes/VisualShaderNodeUniformRef.xml:4
+msgid "A reference to an existing [VisualShaderNodeUniform]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniformRef.xml:7
+msgid ""
+"Creating a reference to a [VisualShaderNodeUniform] allows you to reuse this "
+"uniform in different shaders or shader stages easily."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeUniformRef.xml:15
+msgid "The name of the uniform which this reference points to."
+msgstr ""
+
#: doc/classes/VisualShaderNodeVec3Constant.xml:4
msgid "A [Vector3] constant to be used within the visual shader graph."
msgstr ""
@@ -57865,7 +58812,7 @@ msgstr ""
#: doc/classes/VisualShaderNodeVectorFunc.xml:26
msgid "Returns the opposite value of the parameter."
-msgstr ""
+msgstr "回傳åƒæ•¸çš„相å值。"
#: doc/classes/VisualShaderNodeVectorFunc.xml:29
msgid "Returns [code]1/vector[/code]."
@@ -57873,96 +58820,96 @@ msgstr ""
#: doc/classes/VisualShaderNodeVectorFunc.xml:32
msgid "Converts RGB vector to HSV equivalent."
-msgstr ""
+msgstr "å°‡ RGB å‘é‡è½‰ç‚ºåŒç­‰ä¹‹ HSV。"
#: doc/classes/VisualShaderNodeVectorFunc.xml:35
msgid "Converts HSV vector to RGB equivalent."
-msgstr ""
+msgstr "å°‡ HSV å‘é‡è½‰ç‚ºåŒç­‰ä¹‹ RGB。"
#: doc/classes/VisualShaderNodeVectorFunc.xml:38
msgid "Returns the absolute value of the parameter."
-msgstr ""
+msgstr "回傳åƒæ•¸çš„絕å°å€¼ã€‚"
#: doc/classes/VisualShaderNodeVectorFunc.xml:41
msgid "Returns the arc-cosine of the parameter."
-msgstr ""
+msgstr "回傳åƒæ•¸çš„å餘弦值。"
#: doc/classes/VisualShaderNodeVectorFunc.xml:44
msgid "Returns the inverse hyperbolic cosine of the parameter."
-msgstr ""
+msgstr "回傳åƒæ•¸çš„å雙曲餘弦值。"
#: doc/classes/VisualShaderNodeVectorFunc.xml:47
msgid "Returns the arc-sine of the parameter."
-msgstr ""
+msgstr "回傳åƒæ•¸çš„å正弦值。"
#: doc/classes/VisualShaderNodeVectorFunc.xml:50
msgid "Returns the inverse hyperbolic sine of the parameter."
-msgstr ""
+msgstr "回傳åƒæ•¸çš„å雙曲正弦值。"
#: doc/classes/VisualShaderNodeVectorFunc.xml:53
msgid "Returns the arc-tangent of the parameter."
-msgstr ""
+msgstr "回傳åƒæ•¸çš„å正切值。"
#: doc/classes/VisualShaderNodeVectorFunc.xml:56
msgid "Returns the inverse hyperbolic tangent of the parameter."
-msgstr ""
+msgstr "回傳åƒæ•¸çš„å雙曲正切值。"
#: doc/classes/VisualShaderNodeVectorFunc.xml:59
msgid ""
"Finds the nearest integer that is greater than or equal to the parameter."
-msgstr ""
+msgstr "尋找大於或等於該åƒæ•¸æœ€è¿‘的整數。"
#: doc/classes/VisualShaderNodeVectorFunc.xml:62
msgid "Returns the cosine of the parameter."
-msgstr ""
+msgstr "回傳åƒæ•¸çš„餘弦值。"
#: doc/classes/VisualShaderNodeVectorFunc.xml:65
msgid "Returns the hyperbolic cosine of the parameter."
-msgstr ""
+msgstr "回傳åƒæ•¸çš„雙曲餘弦值。"
#: doc/classes/VisualShaderNodeVectorFunc.xml:68
msgid "Converts a quantity in radians to degrees."
-msgstr ""
+msgstr "將弧度轉æ›ç‚ºè§’度。"
#: doc/classes/VisualShaderNodeVectorFunc.xml:71
msgid "Base-e Exponential."
-msgstr ""
+msgstr "e 為底數的指數。"
#: doc/classes/VisualShaderNodeVectorFunc.xml:74
msgid "Base-2 Exponential."
-msgstr ""
+msgstr "2 為底數的指數。"
#: doc/classes/VisualShaderNodeVectorFunc.xml:77
msgid "Finds the nearest integer less than or equal to the parameter."
-msgstr ""
+msgstr "尋找å°æ–¼æˆ–等於åƒæ•¸æœ€è¿‘的整數。"
#: doc/classes/VisualShaderNodeVectorFunc.xml:80
msgid "Computes the fractional part of the argument."
-msgstr ""
+msgstr "計算引數的å°æ•¸éƒ¨åˆ†ã€‚"
#: doc/classes/VisualShaderNodeVectorFunc.xml:83
msgid "Returns the inverse of the square root of the parameter."
-msgstr ""
+msgstr "回傳åƒæ•¸çš„平方根之倒數。"
#: doc/classes/VisualShaderNodeVectorFunc.xml:86
msgid "Natural logarithm."
-msgstr ""
+msgstr "自然å°æ•¸ã€‚"
#: doc/classes/VisualShaderNodeVectorFunc.xml:89
msgid "Base-2 logarithm."
-msgstr ""
+msgstr "2 為底數的å°æ•¸ã€‚"
#: doc/classes/VisualShaderNodeVectorFunc.xml:92
msgid "Converts a quantity in degrees to radians."
-msgstr ""
+msgstr "將角度轉æ›ç‚ºå¼§åº¦ã€‚"
#: doc/classes/VisualShaderNodeVectorFunc.xml:95
msgid "Finds the nearest integer to the parameter."
-msgstr ""
+msgstr "尋找åƒæ•¸æœ€è¿‘的整數。"
#: doc/classes/VisualShaderNodeVectorFunc.xml:98
msgid "Finds the nearest even integer to the parameter."
-msgstr ""
+msgstr "尋找åƒæ•¸æœ€è¿‘çš„å¶æ•¸ã€‚"
#: doc/classes/VisualShaderNodeVectorFunc.xml:101
msgid ""
@@ -57973,23 +58920,23 @@ msgstr ""
#: doc/classes/VisualShaderNodeVectorFunc.xml:104
msgid "Returns the sine of the parameter."
-msgstr ""
+msgstr "回傳åƒæ•¸çš„正弦值。"
#: doc/classes/VisualShaderNodeVectorFunc.xml:107
msgid "Returns the hyperbolic sine of the parameter."
-msgstr ""
+msgstr "回傳åƒæ•¸çš„雙曲正弦值。"
#: doc/classes/VisualShaderNodeVectorFunc.xml:110
msgid "Returns the square root of the parameter."
-msgstr ""
+msgstr "回傳åƒæ•¸çš„平方根。"
#: doc/classes/VisualShaderNodeVectorFunc.xml:113
msgid "Returns the tangent of the parameter."
-msgstr ""
+msgstr "回傳åƒæ•¸çš„正切值。"
#: doc/classes/VisualShaderNodeVectorFunc.xml:116
msgid "Returns the hyperbolic tangent of the parameter."
-msgstr ""
+msgstr "回傳åƒæ•¸çš„雙曲正切值。"
#: doc/classes/VisualShaderNodeVectorFunc.xml:119
msgid ""
@@ -58070,11 +59017,11 @@ msgstr ""
#: doc/classes/VisualShaderNodeVectorOp.xml:44
msgid "Calculates the cross product of two vectors."
-msgstr ""
+msgstr "計算兩個å‘é‡çš„外ç©ã€‚"
#: doc/classes/VisualShaderNodeVectorOp.xml:47
msgid "Returns the arc-tangent of the parameters."
-msgstr ""
+msgstr "回傳åƒæ•¸çš„å正切值。"
#: doc/classes/VisualShaderNodeVectorOp.xml:50
msgid ""
@@ -58098,7 +59045,7 @@ msgstr ""
msgid ""
"Translated to [code]refract(I, N, eta)[/code] in the shader language, where "
"[code]I[/code] is the incident vector, [code]N[/code] is the normal vector "
-"and [code]eta[/code] is the ratio of the indicies of the refraction."
+"and [code]eta[/code] is the ratio of the indices of the refraction."
msgstr ""
#: doc/classes/VisualShaderNodeVectorScalarMix.xml:4
diff --git a/drivers/SCsub b/drivers/SCsub
index cc7bcbc640..c812057138 100644
--- a/drivers/SCsub
+++ b/drivers/SCsub
@@ -24,9 +24,7 @@ SConscript("winmidi/SCsub")
# Graphics drivers
if env["platform"] != "server" and env["platform"] != "javascript":
- # SConscript('gles2/SCsub')
SConscript("vulkan/SCsub")
- SConscript("gl_context/SCsub")
else:
SConscript("dummy/SCsub")
diff --git a/drivers/gl_context/SCsub b/drivers/gl_context/SCsub
deleted file mode 100644
index ddeec6f4c6..0000000000
--- a/drivers/gl_context/SCsub
+++ /dev/null
@@ -1,23 +0,0 @@
-#!/usr/bin/env python
-
-Import("env")
-
-if env["platform"] in ["haiku", "osx", "windows", "linuxbsd"]:
- # Thirdparty source files
- thirdparty_dir = "#thirdparty/glad/"
- thirdparty_sources = [
- "glad.c",
- ]
- thirdparty_sources = [thirdparty_dir + file for file in thirdparty_sources]
-
- env.Prepend(CPPPATH=[thirdparty_dir])
-
- env.Append(CPPDEFINES=["GLAD_ENABLED"])
- env.Append(CPPDEFINES=["GLES_OVER_GL"])
-
- env_thirdparty = env.Clone()
- env_thirdparty.disable_warnings()
- env_thirdparty.add_source_files(env.drivers_sources, thirdparty_sources)
-
-# Godot source files
-env.add_source_files(env.drivers_sources, "*.cpp")
diff --git a/drivers/gles2/SCsub b/drivers/gles2/SCsub
deleted file mode 100644
index 987ddcd16e..0000000000
--- a/drivers/gles2/SCsub
+++ /dev/null
@@ -1,7 +0,0 @@
-#!/usr/bin/env python
-
-Import("env")
-
-env.add_source_files(env.drivers_sources, "*.cpp")
-
-SConscript("shaders/SCsub")
diff --git a/drivers/gles2/rasterizer_canvas_gles2.cpp b/drivers/gles2/rasterizer_canvas_gles2.cpp
deleted file mode 100644
index c92eb4cd11..0000000000
--- a/drivers/gles2/rasterizer_canvas_gles2.cpp
+++ /dev/null
@@ -1,2161 +0,0 @@
-/*************************************************************************/
-/* rasterizer_canvas_gles2.cpp */
-/*************************************************************************/
-/* This file is part of: */
-/* GODOT ENGINE */
-/* https://godotengine.org */
-/*************************************************************************/
-/* Copyright (c) 2007-2020 Juan Linietsky, Ariel Manzur. */
-/* Copyright (c) 2014-2020 Godot Engine contributors (cf. AUTHORS.md). */
-/* */
-/* Permission is hereby granted, free of charge, to any person obtaining */
-/* a copy of this software and associated documentation files (the */
-/* "Software"), to deal in the Software without restriction, including */
-/* without limitation the rights to use, copy, modify, merge, publish, */
-/* distribute, sublicense, and/or sell copies of the Software, and to */
-/* permit persons to whom the Software is furnished to do so, subject to */
-/* the following conditions: */
-/* */
-/* The above copyright notice and this permission notice shall be */
-/* included in all copies or substantial portions of the Software. */
-/* */
-/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
-/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
-/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.*/
-/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
-/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
-/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
-/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
-/*************************************************************************/
-
-#include "rasterizer_canvas_gles2.h"
-
-#include "core/os/os.h"
-#include "core/project_settings.h"
-#include "rasterizer_scene_gles2.h"
-#include "servers/rendering/rendering_server_raster.h"
-
-#ifndef GLES_OVER_GL
-#define glClearDepth glClearDepthf
-#endif
-
-RID RasterizerCanvasGLES2::light_internal_create() {
- return RID();
-}
-
-void RasterizerCanvasGLES2::light_internal_update(RID p_rid, Light *p_light) {
-}
-
-void RasterizerCanvasGLES2::light_internal_free(RID p_rid) {
-}
-
-void RasterizerCanvasGLES2::_set_uniforms() {
- state.canvas_shader.set_uniform(CanvasShaderGLES2::PROJECTION_MATRIX, state.uniforms.projection_matrix);
- state.canvas_shader.set_uniform(CanvasShaderGLES2::MODELVIEW_MATRIX, state.uniforms.modelview_matrix);
- state.canvas_shader.set_uniform(CanvasShaderGLES2::EXTRA_MATRIX, state.uniforms.extra_matrix);
-
- state.canvas_shader.set_uniform(CanvasShaderGLES2::FINAL_MODULATE, state.uniforms.final_modulate);
-
- state.canvas_shader.set_uniform(CanvasShaderGLES2::TIME, storage->frame.time[0]);
-
- if (storage->frame.current_rt) {
- Vector2 screen_pixel_size;
- screen_pixel_size.x = 1.0 / storage->frame.current_rt->width;
- screen_pixel_size.y = 1.0 / storage->frame.current_rt->height;
-
- state.canvas_shader.set_uniform(CanvasShaderGLES2::SCREEN_PIXEL_SIZE, screen_pixel_size);
- }
-
- if (state.using_skeleton) {
- state.canvas_shader.set_uniform(CanvasShaderGLES2::SKELETON_TRANSFORM, state.skeleton_transform);
- state.canvas_shader.set_uniform(CanvasShaderGLES2::SKELETON_TRANSFORM_INVERSE, state.skeleton_transform_inverse);
- state.canvas_shader.set_uniform(CanvasShaderGLES2::SKELETON_TEXTURE_SIZE, state.skeleton_texture_size);
- }
-
- if (state.using_light) {
- Light *light = state.using_light;
- state.canvas_shader.set_uniform(CanvasShaderGLES2::LIGHT_MATRIX, light->light_shader_xform);
- Transform2D basis_inverse = light->light_shader_xform.affine_inverse().orthonormalized();
- basis_inverse[2] = Vector2();
- state.canvas_shader.set_uniform(CanvasShaderGLES2::LIGHT_MATRIX_INVERSE, basis_inverse);
- state.canvas_shader.set_uniform(CanvasShaderGLES2::LIGHT_LOCAL_MATRIX, light->xform_cache.affine_inverse());
- state.canvas_shader.set_uniform(CanvasShaderGLES2::LIGHT_COLOR, light->color * light->energy);
- state.canvas_shader.set_uniform(CanvasShaderGLES2::LIGHT_POS, light->light_shader_pos);
- state.canvas_shader.set_uniform(CanvasShaderGLES2::LIGHT_HEIGHT, light->height);
- state.canvas_shader.set_uniform(CanvasShaderGLES2::LIGHT_OUTSIDE_ALPHA, light->mode == RS::CANVAS_LIGHT_MODE_MASK ? 1.0 : 0.0);
-
- if (state.using_shadow) {
- RasterizerStorageGLES2::CanvasLightShadow *cls = storage->canvas_light_shadow_owner.getornull(light->shadow_buffer);
- glActiveTexture(GL_TEXTURE0 + storage->config.max_texture_image_units - 5);
- glBindTexture(GL_TEXTURE_2D, cls->distance);
- state.canvas_shader.set_uniform(CanvasShaderGLES2::SHADOW_MATRIX, light->shadow_matrix_cache);
- state.canvas_shader.set_uniform(CanvasShaderGLES2::LIGHT_SHADOW_COLOR, light->shadow_color);
-
- state.canvas_shader.set_uniform(CanvasShaderGLES2::SHADOWPIXEL_SIZE, (1.0 / light->shadow_buffer_size) * (1.0 + light->shadow_smooth));
- if (light->radius_cache == 0) {
- state.canvas_shader.set_uniform(CanvasShaderGLES2::SHADOW_GRADIENT, 0.0);
- } else {
- state.canvas_shader.set_uniform(CanvasShaderGLES2::SHADOW_GRADIENT, light->shadow_gradient_length / (light->radius_cache * 1.1));
- }
- state.canvas_shader.set_uniform(CanvasShaderGLES2::SHADOW_DISTANCE_MULT, light->radius_cache * 1.1);
-
- /*canvas_shader.set_uniform(CanvasShaderGLES2::SHADOW_MATRIX,light->shadow_matrix_cache);
- canvas_shader.set_uniform(CanvasShaderGLES2::SHADOW_ESM_MULTIPLIER,light->shadow_esm_mult);
- canvas_shader.set_uniform(CanvasShaderGLES2::LIGHT_SHADOW_COLOR,light->shadow_color);*/
- }
- }
-}
-
-void RasterizerCanvasGLES2::canvas_begin() {
- state.canvas_shader.bind();
- state.using_transparent_rt = false;
- int viewport_x, viewport_y, viewport_width, viewport_height;
-
- if (storage->frame.current_rt) {
- glBindFramebuffer(GL_FRAMEBUFFER, storage->frame.current_rt->fbo);
- state.using_transparent_rt = storage->frame.current_rt->flags[RasterizerStorage::RENDER_TARGET_TRANSPARENT];
-
- if (storage->frame.current_rt->flags[RasterizerStorage::RENDER_TARGET_DIRECT_TO_SCREEN]) {
- // set Viewport and Scissor when rendering directly to screen
- viewport_width = storage->frame.current_rt->width;
- viewport_height = storage->frame.current_rt->height;
- viewport_x = storage->frame.current_rt->x;
- viewport_y = DisplayServer::get_singleton()->window_get_size().height - viewport_height - storage->frame.current_rt->y;
- glScissor(viewport_x, viewport_y, viewport_width, viewport_height);
- glViewport(viewport_x, viewport_y, viewport_width, viewport_height);
- glEnable(GL_SCISSOR_TEST);
- }
- }
-
- if (storage->frame.clear_request) {
- glClearColor(storage->frame.clear_request_color.r,
- storage->frame.clear_request_color.g,
- storage->frame.clear_request_color.b,
- state.using_transparent_rt ? storage->frame.clear_request_color.a : 1.0);
- glClear(GL_COLOR_BUFFER_BIT);
- storage->frame.clear_request = false;
- }
-
- /*
- if (storage->frame.current_rt) {
- glBindFramebuffer(GL_FRAMEBUFFER, storage->frame.current_rt->fbo);
- glColorMask(1, 1, 1, 1);
- }
- */
-
- reset_canvas();
-
- glActiveTexture(GL_TEXTURE0);
- glBindTexture(GL_TEXTURE_2D, storage->resources.white_tex);
-
- glVertexAttrib4f(RS::ARRAY_COLOR, 1, 1, 1, 1);
- glDisableVertexAttribArray(RS::ARRAY_COLOR);
-
- // set up default uniforms
-
- Transform canvas_transform;
-
- if (storage->frame.current_rt) {
- float csy = 1.0;
- if (storage->frame.current_rt && storage->frame.current_rt->flags[RasterizerStorage::RENDER_TARGET_VFLIP]) {
- csy = -1.0;
- }
- canvas_transform.translate(-(storage->frame.current_rt->width / 2.0f), -(storage->frame.current_rt->height / 2.0f), 0.0f);
- canvas_transform.scale(Vector3(2.0f / storage->frame.current_rt->width, csy * -2.0f / storage->frame.current_rt->height, 1.0f));
- } else {
- Vector2 ssize = DisplayServer::get_singleton()->window_get_size();
- canvas_transform.translate(-(ssize.width / 2.0f), -(ssize.height / 2.0f), 0.0f);
- canvas_transform.scale(Vector3(2.0f / ssize.width, -2.0f / ssize.height, 1.0f));
- }
-
- state.uniforms.projection_matrix = canvas_transform;
-
- state.uniforms.final_modulate = Color(1, 1, 1, 1);
-
- state.uniforms.modelview_matrix = Transform2D();
- state.uniforms.extra_matrix = Transform2D();
-
- _set_uniforms();
- _bind_quad_buffer();
-}
-
-void RasterizerCanvasGLES2::canvas_end() {
- glBindBuffer(GL_ARRAY_BUFFER, 0);
-
- for (int i = 0; i < RS::ARRAY_MAX; i++) {
- glDisableVertexAttribArray(i);
- }
-
- if (storage->frame.current_rt && storage->frame.current_rt->flags[RasterizerStorage::RENDER_TARGET_DIRECT_TO_SCREEN]) {
- //reset viewport to full window size
- int viewport_width = DisplayServer::get_singleton()->window_get_size().width;
- int viewport_height = DisplayServer::get_singleton()->window_get_size().height;
- glViewport(0, 0, viewport_width, viewport_height);
- glScissor(0, 0, viewport_width, viewport_height);
- }
-
- state.using_texture_rect = false;
- state.using_skeleton = false;
- state.using_ninepatch = false;
- state.using_transparent_rt = false;
-}
-
-RasterizerStorageGLES2::Texture *RasterizerCanvasGLES2::_bind_canvas_texture(const RID &p_texture, const RID &p_normal_map) {
- RasterizerStorageGLES2::Texture *tex_return = nullptr;
-
- if (p_texture.is_valid()) {
- RasterizerStorageGLES2::Texture *texture = storage->texture_owner.getornull(p_texture);
-
- if (!texture) {
- state.current_tex = RID();
- state.current_tex_ptr = nullptr;
-
- glActiveTexture(GL_TEXTURE0 + storage->config.max_texture_image_units - 1);
- glBindTexture(GL_TEXTURE_2D, storage->resources.white_tex);
-
- } else {
- if (texture->redraw_if_visible) {
- RenderingServerRaster::redraw_request();
- }
-
- texture = texture->get_ptr();
-
- if (texture->render_target) {
- texture->render_target->used_in_frame = true;
- }
-
- glActiveTexture(GL_TEXTURE0 + storage->config.max_texture_image_units - 1);
- glBindTexture(GL_TEXTURE_2D, texture->tex_id);
-
- state.current_tex = p_texture;
- state.current_tex_ptr = texture;
-
- tex_return = texture;
- }
- } else {
- state.current_tex = RID();
- state.current_tex_ptr = nullptr;
-
- glActiveTexture(GL_TEXTURE0 + storage->config.max_texture_image_units - 1);
- glBindTexture(GL_TEXTURE_2D, storage->resources.white_tex);
- }
-
- if (p_normal_map == state.current_normal) {
- //do none
- state.canvas_shader.set_uniform(CanvasShaderGLES2::USE_DEFAULT_NORMAL, state.current_normal.is_valid());
-
- } else if (p_normal_map.is_valid()) {
- RasterizerStorageGLES2::Texture *normal_map = storage->texture_owner.getornull(p_normal_map);
-
- if (!normal_map) {
- state.current_normal = RID();
- glActiveTexture(GL_TEXTURE0 + storage->config.max_texture_image_units - 2);
- glBindTexture(GL_TEXTURE_2D, storage->resources.normal_tex);
- state.canvas_shader.set_uniform(CanvasShaderGLES2::USE_DEFAULT_NORMAL, false);
-
- } else {
- if (normal_map->redraw_if_visible) { //check before proxy, because this is usually used with proxies
- RenderingServerRaster::redraw_request();
- }
-
- normal_map = normal_map->get_ptr();
-
- glActiveTexture(GL_TEXTURE0 + storage->config.max_texture_image_units - 2);
- glBindTexture(GL_TEXTURE_2D, normal_map->tex_id);
- state.current_normal = p_normal_map;
- state.canvas_shader.set_uniform(CanvasShaderGLES2::USE_DEFAULT_NORMAL, true);
- }
-
- } else {
- state.current_normal = RID();
- glActiveTexture(GL_TEXTURE0 + storage->config.max_texture_image_units - 2);
- glBindTexture(GL_TEXTURE_2D, storage->resources.normal_tex);
- state.canvas_shader.set_uniform(CanvasShaderGLES2::USE_DEFAULT_NORMAL, false);
- }
-
- return tex_return;
-}
-
-void RasterizerCanvasGLES2::_draw_polygon(const int *p_indices, int p_index_count, int p_vertex_count, const Vector2 *p_vertices, const Vector2 *p_uvs, const Color *p_colors, bool p_singlecolor, const float *p_weights, const int *p_bones) {
- glBindBuffer(GL_ARRAY_BUFFER, data.polygon_buffer);
-#ifndef GLES_OVER_GL
- // Orphan the buffer to avoid CPU/GPU sync points caused by glBufferSubData
- glBufferData(GL_ARRAY_BUFFER, data.polygon_buffer_size, nullptr, GL_DYNAMIC_DRAW);
-#endif
-
- uint32_t buffer_ofs = 0;
-
- glBufferSubData(GL_ARRAY_BUFFER, 0, sizeof(Vector2) * p_vertex_count, p_vertices);
- glEnableVertexAttribArray(RS::ARRAY_VERTEX);
- glVertexAttribPointer(RS::ARRAY_VERTEX, 2, GL_FLOAT, GL_FALSE, sizeof(Vector2), nullptr);
- buffer_ofs += sizeof(Vector2) * p_vertex_count;
-
- if (p_singlecolor) {
- glDisableVertexAttribArray(RS::ARRAY_COLOR);
- Color m = *p_colors;
- glVertexAttrib4f(RS::ARRAY_COLOR, m.r, m.g, m.b, m.a);
- } else if (!p_colors) {
- glDisableVertexAttribArray(RS::ARRAY_COLOR);
- glVertexAttrib4f(RS::ARRAY_COLOR, 1, 1, 1, 1);
- } else {
- glBufferSubData(GL_ARRAY_BUFFER, buffer_ofs, sizeof(Color) * p_vertex_count, p_colors);
- glEnableVertexAttribArray(RS::ARRAY_COLOR);
- glVertexAttribPointer(RS::ARRAY_COLOR, 4, GL_FLOAT, GL_FALSE, sizeof(Color), CAST_INT_TO_UCHAR_PTR(buffer_ofs));
- buffer_ofs += sizeof(Color) * p_vertex_count;
- }
-
- if (p_uvs) {
- glBufferSubData(GL_ARRAY_BUFFER, buffer_ofs, sizeof(Vector2) * p_vertex_count, p_uvs);
- glEnableVertexAttribArray(RS::ARRAY_TEX_UV);
- glVertexAttribPointer(RS::ARRAY_TEX_UV, 2, GL_FLOAT, GL_FALSE, sizeof(Vector2), CAST_INT_TO_UCHAR_PTR(buffer_ofs));
- buffer_ofs += sizeof(Vector2) * p_vertex_count;
- } else {
- glDisableVertexAttribArray(RS::ARRAY_TEX_UV);
- }
-
- if (p_weights && p_bones) {
- glBufferSubData(GL_ARRAY_BUFFER, buffer_ofs, sizeof(float) * 4 * p_vertex_count, p_weights);
- glEnableVertexAttribArray(RS::ARRAY_WEIGHTS);
- glVertexAttribPointer(RS::ARRAY_WEIGHTS, 4, GL_FLOAT, GL_FALSE, sizeof(float) * 4, CAST_INT_TO_UCHAR_PTR(buffer_ofs));
- buffer_ofs += sizeof(float) * 4 * p_vertex_count;
-
- glBufferSubData(GL_ARRAY_BUFFER, buffer_ofs, sizeof(int) * 4 * p_vertex_count, p_bones);
- glEnableVertexAttribArray(RS::ARRAY_BONES);
- glVertexAttribPointer(RS::ARRAY_BONES, 4, GL_UNSIGNED_INT, GL_FALSE, sizeof(int) * 4, CAST_INT_TO_UCHAR_PTR(buffer_ofs));
- buffer_ofs += sizeof(int) * 4 * p_vertex_count;
-
- } else {
- glDisableVertexAttribArray(RS::ARRAY_WEIGHTS);
- glDisableVertexAttribArray(RS::ARRAY_BONES);
- }
-
- glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, data.polygon_index_buffer);
-#ifndef GLES_OVER_GL
- // Orphan the buffer to avoid CPU/GPU sync points caused by glBufferSubData
- glBufferData(GL_ELEMENT_ARRAY_BUFFER, data.polygon_index_buffer_size, nullptr, GL_DYNAMIC_DRAW);
-#endif
-
- if (storage->config.support_32_bits_indices) { //should check for
- glBufferSubData(GL_ELEMENT_ARRAY_BUFFER, 0, sizeof(int) * p_index_count, p_indices);
- glDrawElements(GL_TRIANGLES, p_index_count, GL_UNSIGNED_INT, 0);
- } else {
- uint16_t *index16 = (uint16_t *)alloca(sizeof(uint16_t) * p_index_count);
- for (int i = 0; i < p_index_count; i++) {
- index16[i] = uint16_t(p_indices[i]);
- }
- glBufferSubData(GL_ELEMENT_ARRAY_BUFFER, 0, sizeof(uint16_t) * p_index_count, index16);
- glDrawElements(GL_TRIANGLES, p_index_count, GL_UNSIGNED_SHORT, 0);
- }
-
- glBindBuffer(GL_ARRAY_BUFFER, 0);
- glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, 0);
-}
-
-void RasterizerCanvasGLES2::_draw_generic(GLuint p_primitive, int p_vertex_count, const Vector2 *p_vertices, const Vector2 *p_uvs, const Color *p_colors, bool p_singlecolor) {
- glBindBuffer(GL_ARRAY_BUFFER, data.polygon_buffer);
-#ifndef GLES_OVER_GL
- // Orphan the buffer to avoid CPU/GPU sync points caused by glBufferSubData
- glBufferData(GL_ARRAY_BUFFER, data.polygon_buffer_size, nullptr, GL_DYNAMIC_DRAW);
-#endif
-
- uint32_t buffer_ofs = 0;
-
- glBufferSubData(GL_ARRAY_BUFFER, 0, sizeof(Vector2) * p_vertex_count, p_vertices);
- glEnableVertexAttribArray(RS::ARRAY_VERTEX);
- glVertexAttribPointer(RS::ARRAY_VERTEX, 2, GL_FLOAT, GL_FALSE, sizeof(Vector2), nullptr);
- buffer_ofs += sizeof(Vector2) * p_vertex_count;
-
- if (p_singlecolor) {
- glDisableVertexAttribArray(RS::ARRAY_COLOR);
- Color m = *p_colors;
- glVertexAttrib4f(RS::ARRAY_COLOR, m.r, m.g, m.b, m.a);
- } else if (!p_colors) {
- glDisableVertexAttribArray(RS::ARRAY_COLOR);
- glVertexAttrib4f(RS::ARRAY_COLOR, 1, 1, 1, 1);
- } else {
- glBufferSubData(GL_ARRAY_BUFFER, buffer_ofs, sizeof(Color) * p_vertex_count, p_colors);
- glEnableVertexAttribArray(RS::ARRAY_COLOR);
- glVertexAttribPointer(RS::ARRAY_COLOR, 4, GL_FLOAT, GL_FALSE, sizeof(Color), CAST_INT_TO_UCHAR_PTR(buffer_ofs));
- buffer_ofs += sizeof(Color) * p_vertex_count;
- }
-
- if (p_uvs) {
- glBufferSubData(GL_ARRAY_BUFFER, buffer_ofs, sizeof(Vector2) * p_vertex_count, p_uvs);
- glEnableVertexAttribArray(RS::ARRAY_TEX_UV);
- glVertexAttribPointer(RS::ARRAY_TEX_UV, 2, GL_FLOAT, GL_FALSE, sizeof(Vector2), CAST_INT_TO_UCHAR_PTR(buffer_ofs));
- } else {
- glDisableVertexAttribArray(RS::ARRAY_TEX_UV);
- }
-
- glDrawArrays(p_primitive, 0, p_vertex_count);
-
- glBindBuffer(GL_ARRAY_BUFFER, 0);
-}
-
-void RasterizerCanvasGLES2::_draw_generic_indices(GLuint p_primitive, const int *p_indices, int p_index_count, int p_vertex_count, const Vector2 *p_vertices, const Vector2 *p_uvs, const Color *p_colors, bool p_singlecolor) {
- glBindBuffer(GL_ARRAY_BUFFER, data.polygon_buffer);
-#ifndef GLES_OVER_GL
- // Orphan the buffer to avoid CPU/GPU sync points caused by glBufferSubData
- glBufferData(GL_ARRAY_BUFFER, data.polygon_buffer_size, nullptr, GL_DYNAMIC_DRAW);
-#endif
-
- uint32_t buffer_ofs = 0;
-
- glBufferSubData(GL_ARRAY_BUFFER, 0, sizeof(Vector2) * p_vertex_count, p_vertices);
- glEnableVertexAttribArray(RS::ARRAY_VERTEX);
- glVertexAttribPointer(RS::ARRAY_VERTEX, 2, GL_FLOAT, GL_FALSE, sizeof(Vector2), nullptr);
- buffer_ofs += sizeof(Vector2) * p_vertex_count;
-
- if (p_singlecolor) {
- glDisableVertexAttribArray(RS::ARRAY_COLOR);
- Color m = *p_colors;
- glVertexAttrib4f(RS::ARRAY_COLOR, m.r, m.g, m.b, m.a);
- } else if (!p_colors) {
- glDisableVertexAttribArray(RS::ARRAY_COLOR);
- glVertexAttrib4f(RS::ARRAY_COLOR, 1, 1, 1, 1);
- } else {
- glBufferSubData(GL_ARRAY_BUFFER, buffer_ofs, sizeof(Color) * p_vertex_count, p_colors);
- glEnableVertexAttribArray(RS::ARRAY_COLOR);
- glVertexAttribPointer(RS::ARRAY_COLOR, 4, GL_FLOAT, GL_FALSE, sizeof(Color), CAST_INT_TO_UCHAR_PTR(buffer_ofs));
- buffer_ofs += sizeof(Color) * p_vertex_count;
- }
-
- if (p_uvs) {
- glBufferSubData(GL_ARRAY_BUFFER, buffer_ofs, sizeof(Vector2) * p_vertex_count, p_uvs);
- glEnableVertexAttribArray(RS::ARRAY_TEX_UV);
- glVertexAttribPointer(RS::ARRAY_TEX_UV, 2, GL_FLOAT, GL_FALSE, sizeof(Vector2), CAST_INT_TO_UCHAR_PTR(buffer_ofs));
- buffer_ofs += sizeof(Vector2) * p_vertex_count;
- } else {
- glDisableVertexAttribArray(RS::ARRAY_TEX_UV);
- }
-
- glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, data.polygon_index_buffer);
-#ifndef GLES_OVER_GL
- // Orphan the buffer to avoid CPU/GPU sync points caused by glBufferSubData
- glBufferData(GL_ELEMENT_ARRAY_BUFFER, data.polygon_index_buffer_size, nullptr, GL_DYNAMIC_DRAW);
-#endif
-
- if (storage->config.support_32_bits_indices) { //should check for
- glBufferSubData(GL_ELEMENT_ARRAY_BUFFER, 0, sizeof(int) * p_index_count, p_indices);
- glDrawElements(p_primitive, p_index_count, GL_UNSIGNED_INT, 0);
- } else {
- uint16_t *index16 = (uint16_t *)alloca(sizeof(uint16_t) * p_index_count);
- for (int i = 0; i < p_index_count; i++) {
- index16[i] = uint16_t(p_indices[i]);
- }
- glBufferSubData(GL_ELEMENT_ARRAY_BUFFER, 0, sizeof(uint16_t) * p_index_count, index16);
- glDrawElements(p_primitive, p_index_count, GL_UNSIGNED_SHORT, 0);
- }
-
- glBindBuffer(GL_ARRAY_BUFFER, 0);
- glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, 0);
-}
-
-void RasterizerCanvasGLES2::_draw_gui_primitive(int p_points, const Vector2 *p_vertices, const Color *p_colors, const Vector2 *p_uvs) {
- static const GLenum prim[5] = { GL_POINTS, GL_POINTS, GL_LINES, GL_TRIANGLES, GL_TRIANGLE_FAN };
-
- int color_offset = 0;
- int uv_offset = 0;
- int stride = 2;
-
- if (p_colors) {
- color_offset = stride;
- stride += 4;
- }
-
- if (p_uvs) {
- uv_offset = stride;
- stride += 2;
- }
-
- float buffer_data[(2 + 2 + 4) * 4];
-
- for (int i = 0; i < p_points; i++) {
- buffer_data[stride * i + 0] = p_vertices[i].x;
- buffer_data[stride * i + 1] = p_vertices[i].y;
- }
-
- if (p_colors) {
- for (int i = 0; i < p_points; i++) {
- buffer_data[stride * i + color_offset + 0] = p_colors[i].r;
- buffer_data[stride * i + color_offset + 1] = p_colors[i].g;
- buffer_data[stride * i + color_offset + 2] = p_colors[i].b;
- buffer_data[stride * i + color_offset + 3] = p_colors[i].a;
- }
- }
-
- if (p_uvs) {
- for (int i = 0; i < p_points; i++) {
- buffer_data[stride * i + uv_offset + 0] = p_uvs[i].x;
- buffer_data[stride * i + uv_offset + 1] = p_uvs[i].y;
- }
- }
-
- glBindBuffer(GL_ARRAY_BUFFER, data.polygon_buffer);
-#ifndef GLES_OVER_GL
- // Orphan the buffer to avoid CPU/GPU sync points caused by glBufferSubData
- glBufferData(GL_ARRAY_BUFFER, data.polygon_buffer_size, nullptr, GL_DYNAMIC_DRAW);
-#endif
- glBufferSubData(GL_ARRAY_BUFFER, 0, p_points * stride * 4 * sizeof(float), buffer_data);
-
- glVertexAttribPointer(RS::ARRAY_VERTEX, 2, GL_FLOAT, GL_FALSE, stride * sizeof(float), nullptr);
-
- if (p_colors) {
- glVertexAttribPointer(RS::ARRAY_COLOR, 4, GL_FLOAT, GL_FALSE, stride * sizeof(float), CAST_INT_TO_UCHAR_PTR(color_offset * sizeof(float)));
- glEnableVertexAttribArray(RS::ARRAY_COLOR);
- }
-
- if (p_uvs) {
- glVertexAttribPointer(RS::ARRAY_TEX_UV, 2, GL_FLOAT, GL_FALSE, stride * sizeof(float), CAST_INT_TO_UCHAR_PTR(uv_offset * sizeof(float)));
- glEnableVertexAttribArray(RS::ARRAY_TEX_UV);
- }
-
- glDrawArrays(prim[p_points], 0, p_points);
-
- glBindBuffer(GL_ARRAY_BUFFER, 0);
-}
-
-static const GLenum gl_primitive[] = {
- GL_POINTS,
- GL_LINES,
- GL_LINE_STRIP,
- GL_LINE_LOOP,
- GL_TRIANGLES,
- GL_TRIANGLE_STRIP,
- GL_TRIANGLE_FAN
-};
-
-void RasterizerCanvasGLES2::_canvas_item_render_commands(Item *p_item, Item *current_clip, bool &reclip, RasterizerStorageGLES2::Material *p_material) {
- int command_count = p_item->commands.size();
- Item::Command **commands = p_item->commands.ptrw();
-
- for (int i = 0; i < command_count; i++) {
- Item::Command *command = commands[i];
-
- switch (command->type) {
- case Item::Command::TYPE_LINE: {
- Item::CommandLine *line = static_cast<Item::CommandLine *>(command);
-
- state.canvas_shader.set_conditional(CanvasShaderGLES2::USE_TEXTURE_RECT, false);
- if (state.canvas_shader.bind()) {
- _set_uniforms();
- state.canvas_shader.use_material((void *)p_material);
- }
-
- _bind_canvas_texture(RID(), RID());
-
- glDisableVertexAttribArray(RS::ARRAY_COLOR);
- glVertexAttrib4fv(RS::ARRAY_COLOR, line->color.components);
-
- state.canvas_shader.set_uniform(CanvasShaderGLES2::MODELVIEW_MATRIX, state.uniforms.modelview_matrix);
-
- if (line->width <= 1) {
- Vector2 verts[2] = {
- Vector2(line->from.x, line->from.y),
- Vector2(line->to.x, line->to.y)
- };
-
-#ifdef GLES_OVER_GL
- if (line->antialiased)
- glEnable(GL_LINE_SMOOTH);
-#endif
- _draw_gui_primitive(2, verts, nullptr, nullptr);
-
-#ifdef GLES_OVER_GL
- if (line->antialiased)
- glDisable(GL_LINE_SMOOTH);
-#endif
- } else {
- Vector2 t = (line->from - line->to).normalized().tangent() * line->width * 0.5;
-
- Vector2 verts[4] = {
- line->from - t,
- line->from + t,
- line->to + t,
- line->to - t
- };
-
- _draw_gui_primitive(4, verts, nullptr, nullptr);
-#ifdef GLES_OVER_GL
- if (line->antialiased) {
- glEnable(GL_LINE_SMOOTH);
- for (int j = 0; j < 4; j++) {
- Vector2 vertsl[2] = {
- verts[j],
- verts[(j + 1) % 4],
- };
- _draw_gui_primitive(2, vertsl, nullptr, nullptr);
- }
- glDisable(GL_LINE_SMOOTH);
- }
-#endif
- }
- } break;
-
- case Item::Command::TYPE_RECT: {
- Item::CommandRect *r = static_cast<Item::CommandRect *>(command);
-
- glDisableVertexAttribArray(RS::ARRAY_COLOR);
- glVertexAttrib4fv(RS::ARRAY_COLOR, r->modulate.components);
-
- bool can_tile = true;
- if (r->texture.is_valid() && r->flags & CANVAS_RECT_TILE && !storage->config.support_npot_repeat_mipmap) {
- // workaround for when setting tiling does not work due to hardware limitation
-
- RasterizerStorageGLES2::Texture *texture = storage->texture_owner.getornull(r->texture);
-
- if (texture) {
- texture = texture->get_ptr();
-
- if (next_power_of_2(texture->alloc_width) != (unsigned int)texture->alloc_width && next_power_of_2(texture->alloc_height) != (unsigned int)texture->alloc_height) {
- state.canvas_shader.set_conditional(CanvasShaderGLES2::USE_FORCE_REPEAT, true);
- can_tile = false;
- }
- }
- }
-
- // On some widespread Nvidia cards, the normal draw method can produce some
- // flickering in draw_rect and especially TileMap rendering (tiles randomly flicker).
- // See GH-9913.
- // To work it around, we use a simpler draw method which does not flicker, but gives
- // a non negligible performance hit, so it's opt-in (GH-24466).
- if (use_nvidia_rect_workaround) {
- state.canvas_shader.set_conditional(CanvasShaderGLES2::USE_TEXTURE_RECT, false);
-
- if (state.canvas_shader.bind()) {
- _set_uniforms();
- state.canvas_shader.use_material((void *)p_material);
- }
-
- Vector2 points[4] = {
- r->rect.position,
- r->rect.position + Vector2(r->rect.size.x, 0.0),
- r->rect.position + r->rect.size,
- r->rect.position + Vector2(0.0, r->rect.size.y),
- };
-
- if (r->rect.size.x < 0) {
- SWAP(points[0], points[1]);
- SWAP(points[2], points[3]);
- }
- if (r->rect.size.y < 0) {
- SWAP(points[0], points[3]);
- SWAP(points[1], points[2]);
- }
-
- RasterizerStorageGLES2::Texture *texture = _bind_canvas_texture(r->texture, r->normal_map);
-
- if (texture) {
- Size2 texpixel_size(1.0 / texture->width, 1.0 / texture->height);
-
- Rect2 src_rect = (r->flags & CANVAS_RECT_REGION) ? Rect2(r->source.position * texpixel_size, r->source.size * texpixel_size) : Rect2(0, 0, 1, 1);
-
- Vector2 uvs[4] = {
- src_rect.position,
- src_rect.position + Vector2(src_rect.size.x, 0.0),
- src_rect.position + src_rect.size,
- src_rect.position + Vector2(0.0, src_rect.size.y),
- };
-
- if (r->flags & CANVAS_RECT_TRANSPOSE) {
- SWAP(uvs[1], uvs[3]);
- }
-
- if (r->flags & CANVAS_RECT_FLIP_H) {
- SWAP(uvs[0], uvs[1]);
- SWAP(uvs[2], uvs[3]);
- }
- if (r->flags & CANVAS_RECT_FLIP_V) {
- SWAP(uvs[0], uvs[3]);
- SWAP(uvs[1], uvs[2]);
- }
-
- state.canvas_shader.set_uniform(CanvasShaderGLES2::COLOR_TEXPIXEL_SIZE, texpixel_size);
-
- bool untile = false;
-
- if (can_tile && r->flags & CANVAS_RECT_TILE && !(texture->flags & RS::TEXTURE_FLAG_REPEAT)) {
- glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT);
- glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT);
- untile = true;
- }
-
- _draw_gui_primitive(4, points, nullptr, uvs);
-
- if (untile) {
- glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);
- glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);
- }
- } else {
- static const Vector2 uvs[4] = {
- Vector2(0.0, 0.0),
- Vector2(0.0, 1.0),
- Vector2(1.0, 1.0),
- Vector2(1.0, 0.0),
- };
-
- state.canvas_shader.set_uniform(CanvasShaderGLES2::COLOR_TEXPIXEL_SIZE, Vector2());
- _draw_gui_primitive(4, points, nullptr, uvs);
- }
-
- } else {
- // This branch is better for performance, but can produce flicker on Nvidia, see above comment.
- _bind_quad_buffer();
-
- state.canvas_shader.set_conditional(CanvasShaderGLES2::USE_TEXTURE_RECT, true);
-
- if (state.canvas_shader.bind()) {
- _set_uniforms();
- state.canvas_shader.use_material((void *)p_material);
- }
-
- RasterizerStorageGLES2::Texture *tex = _bind_canvas_texture(r->texture, r->normal_map);
-
- if (!tex) {
- Rect2 dst_rect = Rect2(r->rect.position, r->rect.size);
-
- if (dst_rect.size.width < 0) {
- dst_rect.position.x += dst_rect.size.width;
- dst_rect.size.width *= -1;
- }
- if (dst_rect.size.height < 0) {
- dst_rect.position.y += dst_rect.size.height;
- dst_rect.size.height *= -1;
- }
-
- state.canvas_shader.set_uniform(CanvasShaderGLES2::DST_RECT, Color(dst_rect.position.x, dst_rect.position.y, dst_rect.size.x, dst_rect.size.y));
- state.canvas_shader.set_uniform(CanvasShaderGLES2::SRC_RECT, Color(0, 0, 1, 1));
-
- glDrawArrays(GL_TRIANGLE_FAN, 0, 4);
- } else {
- bool untile = false;
-
- if (can_tile && r->flags & CANVAS_RECT_TILE && !(tex->flags & RS::TEXTURE_FLAG_REPEAT)) {
- glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT);
- glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT);
- untile = true;
- }
-
- Size2 texpixel_size(1.0 / tex->width, 1.0 / tex->height);
- Rect2 src_rect = (r->flags & CANVAS_RECT_REGION) ? Rect2(r->source.position * texpixel_size, r->source.size * texpixel_size) : Rect2(0, 0, 1, 1);
-
- Rect2 dst_rect = Rect2(r->rect.position, r->rect.size);
-
- if (dst_rect.size.width < 0) {
- dst_rect.position.x += dst_rect.size.width;
- dst_rect.size.width *= -1;
- }
- if (dst_rect.size.height < 0) {
- dst_rect.position.y += dst_rect.size.height;
- dst_rect.size.height *= -1;
- }
-
- if (r->flags & CANVAS_RECT_FLIP_H) {
- src_rect.size.x *= -1;
- }
-
- if (r->flags & CANVAS_RECT_FLIP_V) {
- src_rect.size.y *= -1;
- }
-
- if (r->flags & CANVAS_RECT_TRANSPOSE) {
- dst_rect.size.x *= -1; // Encoding in the dst_rect.z uniform
- }
-
- state.canvas_shader.set_uniform(CanvasShaderGLES2::COLOR_TEXPIXEL_SIZE, texpixel_size);
-
- state.canvas_shader.set_uniform(CanvasShaderGLES2::DST_RECT, Color(dst_rect.position.x, dst_rect.position.y, dst_rect.size.x, dst_rect.size.y));
- state.canvas_shader.set_uniform(CanvasShaderGLES2::SRC_RECT, Color(src_rect.position.x, src_rect.position.y, src_rect.size.x, src_rect.size.y));
-
- glDrawArrays(GL_TRIANGLE_FAN, 0, 4);
-
- if (untile) {
- glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);
- glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);
- }
- }
-
- glBindBuffer(GL_ARRAY_BUFFER, 0);
- glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, 0);
- }
-
- state.canvas_shader.set_conditional(CanvasShaderGLES2::USE_FORCE_REPEAT, false);
-
- } break;
-
- case Item::Command::TYPE_NINEPATCH: {
- Item::CommandNinePatch *np = static_cast<Item::CommandNinePatch *>(command);
-
- state.canvas_shader.set_conditional(CanvasShaderGLES2::USE_TEXTURE_RECT, false);
- if (state.canvas_shader.bind()) {
- _set_uniforms();
- state.canvas_shader.use_material((void *)p_material);
- }
-
- glDisableVertexAttribArray(RS::ARRAY_COLOR);
- glVertexAttrib4fv(RS::ARRAY_COLOR, np->color.components);
-
- RasterizerStorageGLES2::Texture *tex = _bind_canvas_texture(np->texture, np->normal_map);
-
- if (!tex) {
- // FIXME: Handle textureless ninepatch gracefully
- WARN_PRINT("NinePatch without texture not supported yet in GLES2 backend, skipping.");
- continue;
- }
- if (tex->width == 0 || tex->height == 0) {
- WARN_PRINT("Cannot set empty texture to NinePatch.");
- continue;
- }
-
- Size2 texpixel_size(1.0 / tex->width, 1.0 / tex->height);
-
- // state.canvas_shader.set_uniform(CanvasShaderGLES2::MODELVIEW_MATRIX, state.uniforms.modelview_matrix);
- state.canvas_shader.set_uniform(CanvasShaderGLES2::COLOR_TEXPIXEL_SIZE, texpixel_size);
-
- Rect2 source = np->source;
- if (source.size.x == 0 && source.size.y == 0) {
- source.size.x = tex->width;
- source.size.y = tex->height;
- }
-
- float screen_scale = 1.0;
-
- if (source.size.x != 0 && source.size.y != 0) {
- screen_scale = MIN(np->rect.size.x / source.size.x, np->rect.size.y / source.size.y);
- screen_scale = MIN(1.0, screen_scale);
- }
-
- // prepare vertex buffer
-
- // this buffer contains [ POS POS UV UV ] *
-
- float buffer[16 * 2 + 16 * 2];
-
- {
- // first row
-
- buffer[(0 * 4 * 4) + 0] = np->rect.position.x;
- buffer[(0 * 4 * 4) + 1] = np->rect.position.y;
-
- buffer[(0 * 4 * 4) + 2] = source.position.x * texpixel_size.x;
- buffer[(0 * 4 * 4) + 3] = source.position.y * texpixel_size.y;
-
- buffer[(0 * 4 * 4) + 4] = np->rect.position.x + np->margin[MARGIN_LEFT] * screen_scale;
- buffer[(0 * 4 * 4) + 5] = np->rect.position.y;
-
- buffer[(0 * 4 * 4) + 6] = (source.position.x + np->margin[MARGIN_LEFT]) * texpixel_size.x;
- buffer[(0 * 4 * 4) + 7] = source.position.y * texpixel_size.y;
-
- buffer[(0 * 4 * 4) + 8] = np->rect.position.x + np->rect.size.x - np->margin[MARGIN_RIGHT] * screen_scale;
- buffer[(0 * 4 * 4) + 9] = np->rect.position.y;
-
- buffer[(0 * 4 * 4) + 10] = (source.position.x + source.size.x - np->margin[MARGIN_RIGHT]) * texpixel_size.x;
- buffer[(0 * 4 * 4) + 11] = source.position.y * texpixel_size.y;
-
- buffer[(0 * 4 * 4) + 12] = np->rect.position.x + np->rect.size.x;
- buffer[(0 * 4 * 4) + 13] = np->rect.position.y;
-
- buffer[(0 * 4 * 4) + 14] = (source.position.x + source.size.x) * texpixel_size.x;
- buffer[(0 * 4 * 4) + 15] = source.position.y * texpixel_size.y;
-
- // second row
-
- buffer[(1 * 4 * 4) + 0] = np->rect.position.x;
- buffer[(1 * 4 * 4) + 1] = np->rect.position.y + np->margin[MARGIN_TOP] * screen_scale;
-
- buffer[(1 * 4 * 4) + 2] = source.position.x * texpixel_size.x;
- buffer[(1 * 4 * 4) + 3] = (source.position.y + np->margin[MARGIN_TOP]) * texpixel_size.y;
-
- buffer[(1 * 4 * 4) + 4] = np->rect.position.x + np->margin[MARGIN_LEFT] * screen_scale;
- buffer[(1 * 4 * 4) + 5] = np->rect.position.y + np->margin[MARGIN_TOP] * screen_scale;
-
- buffer[(1 * 4 * 4) + 6] = (source.position.x + np->margin[MARGIN_LEFT]) * texpixel_size.x;
- buffer[(1 * 4 * 4) + 7] = (source.position.y + np->margin[MARGIN_TOP]) * texpixel_size.y;
-
- buffer[(1 * 4 * 4) + 8] = np->rect.position.x + np->rect.size.x - np->margin[MARGIN_RIGHT] * screen_scale;
- buffer[(1 * 4 * 4) + 9] = np->rect.position.y + np->margin[MARGIN_TOP] * screen_scale;
-
- buffer[(1 * 4 * 4) + 10] = (source.position.x + source.size.x - np->margin[MARGIN_RIGHT]) * texpixel_size.x;
- buffer[(1 * 4 * 4) + 11] = (source.position.y + np->margin[MARGIN_TOP]) * texpixel_size.y;
-
- buffer[(1 * 4 * 4) + 12] = np->rect.position.x + np->rect.size.x;
- buffer[(1 * 4 * 4) + 13] = np->rect.position.y + np->margin[MARGIN_TOP] * screen_scale;
-
- buffer[(1 * 4 * 4) + 14] = (source.position.x + source.size.x) * texpixel_size.x;
- buffer[(1 * 4 * 4) + 15] = (source.position.y + np->margin[MARGIN_TOP]) * texpixel_size.y;
-
- // third row
-
- buffer[(2 * 4 * 4) + 0] = np->rect.position.x;
- buffer[(2 * 4 * 4) + 1] = np->rect.position.y + np->rect.size.y - np->margin[MARGIN_BOTTOM] * screen_scale;
-
- buffer[(2 * 4 * 4) + 2] = source.position.x * texpixel_size.x;
- buffer[(2 * 4 * 4) + 3] = (source.position.y + source.size.y - np->margin[MARGIN_BOTTOM]) * texpixel_size.y;
-
- buffer[(2 * 4 * 4) + 4] = np->rect.position.x + np->margin[MARGIN_LEFT] * screen_scale;
- buffer[(2 * 4 * 4) + 5] = np->rect.position.y + np->rect.size.y - np->margin[MARGIN_BOTTOM] * screen_scale;
-
- buffer[(2 * 4 * 4) + 6] = (source.position.x + np->margin[MARGIN_LEFT]) * texpixel_size.x;
- buffer[(2 * 4 * 4) + 7] = (source.position.y + source.size.y - np->margin[MARGIN_BOTTOM]) * texpixel_size.y;
-
- buffer[(2 * 4 * 4) + 8] = np->rect.position.x + np->rect.size.x - np->margin[MARGIN_RIGHT] * screen_scale;
- buffer[(2 * 4 * 4) + 9] = np->rect.position.y + np->rect.size.y - np->margin[MARGIN_BOTTOM] * screen_scale;
-
- buffer[(2 * 4 * 4) + 10] = (source.position.x + source.size.x - np->margin[MARGIN_RIGHT]) * texpixel_size.x;
- buffer[(2 * 4 * 4) + 11] = (source.position.y + source.size.y - np->margin[MARGIN_BOTTOM]) * texpixel_size.y;
-
- buffer[(2 * 4 * 4) + 12] = np->rect.position.x + np->rect.size.x;
- buffer[(2 * 4 * 4) + 13] = np->rect.position.y + np->rect.size.y - np->margin[MARGIN_BOTTOM] * screen_scale;
-
- buffer[(2 * 4 * 4) + 14] = (source.position.x + source.size.x) * texpixel_size.x;
- buffer[(2 * 4 * 4) + 15] = (source.position.y + source.size.y - np->margin[MARGIN_BOTTOM]) * texpixel_size.y;
-
- // fourth row
-
- buffer[(3 * 4 * 4) + 0] = np->rect.position.x;
- buffer[(3 * 4 * 4) + 1] = np->rect.position.y + np->rect.size.y;
-
- buffer[(3 * 4 * 4) + 2] = source.position.x * texpixel_size.x;
- buffer[(3 * 4 * 4) + 3] = (source.position.y + source.size.y) * texpixel_size.y;
-
- buffer[(3 * 4 * 4) + 4] = np->rect.position.x + np->margin[MARGIN_LEFT] * screen_scale;
- buffer[(3 * 4 * 4) + 5] = np->rect.position.y + np->rect.size.y;
-
- buffer[(3 * 4 * 4) + 6] = (source.position.x + np->margin[MARGIN_LEFT]) * texpixel_size.x;
- buffer[(3 * 4 * 4) + 7] = (source.position.y + source.size.y) * texpixel_size.y;
-
- buffer[(3 * 4 * 4) + 8] = np->rect.position.x + np->rect.size.x - np->margin[MARGIN_RIGHT] * screen_scale;
- buffer[(3 * 4 * 4) + 9] = np->rect.position.y + np->rect.size.y;
-
- buffer[(3 * 4 * 4) + 10] = (source.position.x + source.size.x - np->margin[MARGIN_RIGHT]) * texpixel_size.x;
- buffer[(3 * 4 * 4) + 11] = (source.position.y + source.size.y) * texpixel_size.y;
-
- buffer[(3 * 4 * 4) + 12] = np->rect.position.x + np->rect.size.x;
- buffer[(3 * 4 * 4) + 13] = np->rect.position.y + np->rect.size.y;
-
- buffer[(3 * 4 * 4) + 14] = (source.position.x + source.size.x) * texpixel_size.x;
- buffer[(3 * 4 * 4) + 15] = (source.position.y + source.size.y) * texpixel_size.y;
- }
-
- glBindBuffer(GL_ARRAY_BUFFER, data.ninepatch_vertices);
- glBufferData(GL_ARRAY_BUFFER, sizeof(float) * (16 + 16) * 2, buffer, GL_DYNAMIC_DRAW);
-
- glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, data.ninepatch_elements);
-
- glEnableVertexAttribArray(RS::ARRAY_VERTEX);
- glEnableVertexAttribArray(RS::ARRAY_TEX_UV);
-
- glVertexAttribPointer(RS::ARRAY_VERTEX, 2, GL_FLOAT, GL_FALSE, 4 * sizeof(float), nullptr);
- glVertexAttribPointer(RS::ARRAY_TEX_UV, 2, GL_FLOAT, GL_FALSE, 4 * sizeof(float), CAST_INT_TO_UCHAR_PTR((sizeof(float) * 2)));
-
- glDrawElements(GL_TRIANGLES, 18 * 3 - (np->draw_center ? 0 : 6), GL_UNSIGNED_BYTE, nullptr);
-
- glBindBuffer(GL_ARRAY_BUFFER, 0);
- glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, 0);
-
- } break;
-
- case Item::Command::TYPE_CIRCLE: {
- Item::CommandCircle *circle = static_cast<Item::CommandCircle *>(command);
-
- state.canvas_shader.set_conditional(CanvasShaderGLES2::USE_TEXTURE_RECT, false);
-
- if (state.canvas_shader.bind()) {
- _set_uniforms();
- state.canvas_shader.use_material((void *)p_material);
- }
-
- static const int num_points = 32;
-
- Vector2 points[num_points + 1];
- points[num_points] = circle->pos;
-
- int indices[num_points * 3];
-
- for (int j = 0; j < num_points; j++) {
- points[j] = circle->pos + Vector2(Math::sin(j * Math_PI * 2.0 / num_points), Math::cos(j * Math_PI * 2.0 / num_points)) * circle->radius;
- indices[j * 3 + 0] = j;
- indices[j * 3 + 1] = (j + 1) % num_points;
- indices[j * 3 + 2] = num_points;
- }
-
- _bind_canvas_texture(RID(), RID());
-
- _draw_polygon(indices, num_points * 3, num_points + 1, points, nullptr, &circle->color, true);
- } break;
-
- case Item::Command::TYPE_POLYGON: {
- Item::CommandPolygon *polygon = static_cast<Item::CommandPolygon *>(command);
-
- state.canvas_shader.set_conditional(CanvasShaderGLES2::USE_TEXTURE_RECT, false);
-
- if (state.canvas_shader.bind()) {
- _set_uniforms();
- state.canvas_shader.use_material((void *)p_material);
- }
-
- RasterizerStorageGLES2::Texture *texture = _bind_canvas_texture(polygon->texture, polygon->normal_map);
-
- if (texture) {
- Size2 texpixel_size(1.0 / texture->width, 1.0 / texture->height);
- state.canvas_shader.set_uniform(CanvasShaderGLES2::COLOR_TEXPIXEL_SIZE, texpixel_size);
- }
-
- _draw_polygon(polygon->indices.ptr(), polygon->count, polygon->points.size(), polygon->points.ptr(), polygon->uvs.ptr(), polygon->colors.ptr(), polygon->colors.size() == 1, polygon->weights.ptr(), polygon->bones.ptr());
-#ifdef GLES_OVER_GL
- if (polygon->antialiased) {
- glEnable(GL_LINE_SMOOTH);
- // FIXME: Removed during Vulkan rebase.
- //if (polygon->antialiasing_use_indices) {
- // _draw_generic_indices(GL_LINE_STRIP, polygon->indices.ptr(), polygon->count, polygon->points.size(), polygon->points.ptr(), polygon->uvs.ptr(), polygon->colors.ptr(), polygon->colors.size() == 1);
- //} else
- _draw_generic(GL_LINE_LOOP, polygon->points.size(), polygon->points.ptr(), polygon->uvs.ptr(), polygon->colors.ptr(), polygon->colors.size() == 1);
- glDisable(GL_LINE_SMOOTH);
- }
-#endif
- } break;
- case Item::Command::TYPE_MESH: {
- Item::CommandMesh *mesh = static_cast<Item::CommandMesh *>(command);
- state.canvas_shader.set_conditional(CanvasShaderGLES2::USE_TEXTURE_RECT, false);
-
- if (state.canvas_shader.bind()) {
- _set_uniforms();
- state.canvas_shader.use_material((void *)p_material);
- }
-
- RasterizerStorageGLES2::Texture *texture = _bind_canvas_texture(mesh->texture, mesh->normal_map);
-
- if (texture) {
- Size2 texpixel_size(1.0 / texture->width, 1.0 / texture->height);
- state.canvas_shader.set_uniform(CanvasShaderGLES2::COLOR_TEXPIXEL_SIZE, texpixel_size);
- }
-
- RasterizerStorageGLES2::Mesh *mesh_data = storage->mesh_owner.getornull(mesh->mesh);
- if (mesh_data) {
- for (int j = 0; j < mesh_data->surfaces.size(); j++) {
- RasterizerStorageGLES2::Surface *s = mesh_data->surfaces[j];
- // materials are ignored in 2D meshes, could be added but many things (ie, lighting mode, reading from screen, etc) would break as they are not meant be set up at this point of drawing
-
- glBindBuffer(GL_ARRAY_BUFFER, s->vertex_id);
-
- if (s->index_array_len > 0) {
- glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, s->index_id);
- }
-
- for (int k = 0; k < RS::ARRAY_MAX - 1; k++) {
- if (s->attribs[k].enabled) {
- glEnableVertexAttribArray(k);
- glVertexAttribPointer(s->attribs[k].index, s->attribs[k].size, s->attribs[k].type, s->attribs[k].normalized, s->attribs[k].stride, CAST_INT_TO_UCHAR_PTR(s->attribs[k].offset));
- } else {
- glDisableVertexAttribArray(k);
- switch (k) {
- case RS::ARRAY_NORMAL: {
- glVertexAttrib4f(RS::ARRAY_NORMAL, 0.0, 0.0, 1, 1);
- } break;
- case RS::ARRAY_COLOR: {
- glVertexAttrib4f(RS::ARRAY_COLOR, 1, 1, 1, 1);
-
- } break;
- default: {
- }
- }
- }
- }
-
- if (s->index_array_len > 0) {
- glDrawElements(gl_primitive[s->primitive], s->index_array_len, (s->array_len >= (1 << 16)) ? GL_UNSIGNED_INT : GL_UNSIGNED_SHORT, 0);
- } else {
- glDrawArrays(gl_primitive[s->primitive], 0, s->array_len);
- }
- }
-
- for (int j = 1; j < RS::ARRAY_MAX - 1; j++) {
- glDisableVertexAttribArray(j);
- }
- }
-
- } break;
- case Item::Command::TYPE_MULTIMESH: {
- Item::CommandMultiMesh *mmesh = static_cast<Item::CommandMultiMesh *>(command);
-
- RasterizerStorageGLES2::MultiMesh *multi_mesh = storage->multimesh_owner.getornull(mmesh->multimesh);
-
- if (!multi_mesh)
- break;
-
- RasterizerStorageGLES2::Mesh *mesh_data = storage->mesh_owner.getornull(multi_mesh->mesh);
-
- if (!mesh_data)
- break;
-
- state.canvas_shader.set_conditional(CanvasShaderGLES2::USE_INSTANCE_CUSTOM, multi_mesh->custom_data_format != RS::MULTIMESH_CUSTOM_DATA_NONE);
- state.canvas_shader.set_conditional(CanvasShaderGLES2::USE_INSTANCING, true);
- state.canvas_shader.set_conditional(CanvasShaderGLES2::USE_TEXTURE_RECT, false);
-
- if (state.canvas_shader.bind()) {
- _set_uniforms();
- state.canvas_shader.use_material((void *)p_material);
- }
-
- RasterizerStorageGLES2::Texture *texture = _bind_canvas_texture(mmesh->texture, mmesh->normal_map);
-
- if (texture) {
- Size2 texpixel_size(1.0 / texture->width, 1.0 / texture->height);
- state.canvas_shader.set_uniform(CanvasShaderGLES2::COLOR_TEXPIXEL_SIZE, texpixel_size);
- }
-
- //reset shader and force rebind
-
- int amount = MIN(multi_mesh->size, multi_mesh->visible_instances);
-
- if (amount == -1) {
- amount = multi_mesh->size;
- }
-
- int stride = multi_mesh->color_floats + multi_mesh->custom_data_floats + multi_mesh->xform_floats;
-
- int color_ofs = multi_mesh->xform_floats;
- int custom_data_ofs = color_ofs + multi_mesh->color_floats;
-
- // drawing
-
- const float *base_buffer = multi_mesh->data.ptr();
-
- for (int j = 0; j < mesh_data->surfaces.size(); j++) {
- RasterizerStorageGLES2::Surface *s = mesh_data->surfaces[j];
- // materials are ignored in 2D meshes, could be added but many things (ie, lighting mode, reading from screen, etc) would break as they are not meant be set up at this point of drawing
-
- //bind buffers for mesh surface
- glBindBuffer(GL_ARRAY_BUFFER, s->vertex_id);
-
- if (s->index_array_len > 0) {
- glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, s->index_id);
- }
-
- for (int k = 0; k < RS::ARRAY_MAX - 1; k++) {
- if (s->attribs[k].enabled) {
- glEnableVertexAttribArray(k);
- glVertexAttribPointer(s->attribs[k].index, s->attribs[k].size, s->attribs[k].type, s->attribs[k].normalized, s->attribs[k].stride, CAST_INT_TO_UCHAR_PTR(s->attribs[k].offset));
- } else {
- glDisableVertexAttribArray(k);
- switch (k) {
- case RS::ARRAY_NORMAL: {
- glVertexAttrib4f(RS::ARRAY_NORMAL, 0.0, 0.0, 1, 1);
- } break;
- case RS::ARRAY_COLOR: {
- glVertexAttrib4f(RS::ARRAY_COLOR, 1, 1, 1, 1);
-
- } break;
- default: {
- }
- }
- }
- }
-
- for (int k = 0; k < amount; k++) {
- const float *buffer = base_buffer + k * stride;
-
- {
- glVertexAttrib4fv(INSTANCE_ATTRIB_BASE + 0, &buffer[0]);
- glVertexAttrib4fv(INSTANCE_ATTRIB_BASE + 1, &buffer[4]);
- if (multi_mesh->transform_format == RS::MULTIMESH_TRANSFORM_3D) {
- glVertexAttrib4fv(INSTANCE_ATTRIB_BASE + 2, &buffer[8]);
- } else {
- glVertexAttrib4f(INSTANCE_ATTRIB_BASE + 2, 0.0, 0.0, 1.0, 0.0);
- }
- }
-
- if (multi_mesh->color_floats) {
- if (multi_mesh->color_format == RS::MULTIMESH_COLOR_8BIT) {
- uint8_t *color_data = (uint8_t *)(buffer + color_ofs);
- glVertexAttrib4f(INSTANCE_ATTRIB_BASE + 3, color_data[0] / 255.0, color_data[1] / 255.0, color_data[2] / 255.0, color_data[3] / 255.0);
- } else {
- glVertexAttrib4fv(INSTANCE_ATTRIB_BASE + 3, buffer + color_ofs);
- }
- } else {
- glVertexAttrib4f(INSTANCE_ATTRIB_BASE + 3, 1.0, 1.0, 1.0, 1.0);
- }
-
- if (multi_mesh->custom_data_floats) {
- if (multi_mesh->custom_data_format == RS::MULTIMESH_CUSTOM_DATA_8BIT) {
- uint8_t *custom_data = (uint8_t *)(buffer + custom_data_ofs);
- glVertexAttrib4f(INSTANCE_ATTRIB_BASE + 4, custom_data[0] / 255.0, custom_data[1] / 255.0, custom_data[2] / 255.0, custom_data[3] / 255.0);
- } else {
- glVertexAttrib4fv(INSTANCE_ATTRIB_BASE + 4, buffer + custom_data_ofs);
- }
- }
-
- if (s->index_array_len > 0) {
- glDrawElements(gl_primitive[s->primitive], s->index_array_len, (s->array_len >= (1 << 16)) ? GL_UNSIGNED_INT : GL_UNSIGNED_SHORT, 0);
- } else {
- glDrawArrays(gl_primitive[s->primitive], 0, s->array_len);
- }
- }
- }
-
- state.canvas_shader.set_conditional(CanvasShaderGLES2::USE_INSTANCE_CUSTOM, false);
- state.canvas_shader.set_conditional(CanvasShaderGLES2::USE_INSTANCING, false);
-
- } break;
- case Item::Command::TYPE_POLYLINE: {
- Item::CommandPolyLine *pline = static_cast<Item::CommandPolyLine *>(command);
-
- state.canvas_shader.set_conditional(CanvasShaderGLES2::USE_TEXTURE_RECT, false);
-
- if (state.canvas_shader.bind()) {
- _set_uniforms();
- state.canvas_shader.use_material((void *)p_material);
- }
-
- _bind_canvas_texture(RID(), RID());
-
- if (pline->triangles.size()) {
- _draw_generic(GL_TRIANGLE_STRIP, pline->triangles.size(), pline->triangles.ptr(), nullptr, pline->triangle_colors.ptr(), pline->triangle_colors.size() == 1);
-#ifdef GLES_OVER_GL
- glEnable(GL_LINE_SMOOTH);
- if (pline->multiline) {
- //needs to be different
- } else {
- _draw_generic(GL_LINE_LOOP, pline->lines.size(), pline->lines.ptr(), nullptr, pline->line_colors.ptr(), pline->line_colors.size() == 1);
- }
- glDisable(GL_LINE_SMOOTH);
-#endif
- } else {
-#ifdef GLES_OVER_GL
- if (pline->antialiased)
- glEnable(GL_LINE_SMOOTH);
-#endif
-
- if (pline->multiline) {
- int todo = pline->lines.size() / 2;
- int max_per_call = data.polygon_buffer_size / (sizeof(real_t) * 4);
- int offset = 0;
-
- while (todo) {
- int to_draw = MIN(max_per_call, todo);
- _draw_generic(GL_LINES, to_draw * 2, &pline->lines.ptr()[offset], nullptr, pline->line_colors.size() == 1 ? pline->line_colors.ptr() : &pline->line_colors.ptr()[offset], pline->line_colors.size() == 1);
- todo -= to_draw;
- offset += to_draw * 2;
- }
- } else {
- _draw_generic(GL_LINES, pline->lines.size(), pline->lines.ptr(), nullptr, pline->line_colors.ptr(), pline->line_colors.size() == 1);
- }
-
-#ifdef GLES_OVER_GL
- if (pline->antialiased)
- glDisable(GL_LINE_SMOOTH);
-#endif
- }
- } break;
-
- case Item::Command::TYPE_PRIMITIVE: {
- Item::CommandPrimitive *primitive = static_cast<Item::CommandPrimitive *>(command);
- state.canvas_shader.set_conditional(CanvasShaderGLES2::USE_TEXTURE_RECT, false);
-
- if (state.canvas_shader.bind()) {
- _set_uniforms();
- state.canvas_shader.use_material((void *)p_material);
- }
-
- ERR_CONTINUE(primitive->points.size() < 1);
-
- RasterizerStorageGLES2::Texture *texture = _bind_canvas_texture(primitive->texture, primitive->normal_map);
-
- if (texture) {
- Size2 texpixel_size(1.0 / texture->width, 1.0 / texture->height);
- state.canvas_shader.set_uniform(CanvasShaderGLES2::COLOR_TEXPIXEL_SIZE, texpixel_size);
- }
-
- if (primitive->colors.size() == 1 && primitive->points.size() > 1) {
- Color c = primitive->colors[0];
- glVertexAttrib4f(RS::ARRAY_COLOR, c.r, c.g, c.b, c.a);
- } else if (primitive->colors.empty()) {
- glVertexAttrib4f(RS::ARRAY_COLOR, 1, 1, 1, 1);
- }
-
- _draw_gui_primitive(primitive->points.size(), primitive->points.ptr(), primitive->colors.ptr(), primitive->uvs.ptr());
- } break;
-
- case Item::Command::TYPE_TRANSFORM: {
- Item::CommandTransform *transform = static_cast<Item::CommandTransform *>(command);
- state.uniforms.extra_matrix = transform->xform;
- state.canvas_shader.set_uniform(CanvasShaderGLES2::EXTRA_MATRIX, state.uniforms.extra_matrix);
- } break;
-
- case Item::Command::TYPE_PARTICLES: {
- } break;
-
- case Item::Command::TYPE_CLIP_IGNORE: {
- Item::CommandClipIgnore *ci = static_cast<Item::CommandClipIgnore *>(command);
- if (current_clip) {
- if (ci->ignore != reclip) {
- if (ci->ignore) {
- glDisable(GL_SCISSOR_TEST);
- reclip = true;
- } else {
- glEnable(GL_SCISSOR_TEST);
-
- int x = current_clip->final_clip_rect.position.x;
- int y = storage->frame.current_rt->height - (current_clip->final_clip_rect.position.y + current_clip->final_clip_rect.size.y);
- int w = current_clip->final_clip_rect.size.x;
- int h = current_clip->final_clip_rect.size.y;
-
- if (storage->frame.current_rt->flags[RasterizerStorage::RENDER_TARGET_VFLIP])
- y = current_clip->final_clip_rect.position.y;
-
- glScissor(x, y, w, h);
-
- reclip = false;
- }
- }
- }
-
- } break;
-
- default: {
- // FIXME: Proper error handling if relevant
- //print_line("other");
- } break;
- }
- }
-}
-
-void RasterizerCanvasGLES2::_copy_screen(const Rect2 &p_rect) {
- if (storage->frame.current_rt->flags[RasterizerStorage::RENDER_TARGET_DIRECT_TO_SCREEN]) {
- ERR_PRINT_ONCE("Cannot use screen texture copying in render target set to render direct to screen.");
- return;
- }
-
- ERR_FAIL_COND_MSG(storage->frame.current_rt->copy_screen_effect.color == 0, "Can't use screen texture copying in a render target configured without copy buffers.");
-
- glDisable(GL_BLEND);
-
- Vector2 wh(storage->frame.current_rt->width, storage->frame.current_rt->height);
-
- Color copy_section(p_rect.position.x / wh.x, p_rect.position.y / wh.y, p_rect.size.x / wh.x, p_rect.size.y / wh.y);
-
- if (p_rect != Rect2()) {
- storage->shaders.copy.set_conditional(CopyShaderGLES2::USE_COPY_SECTION, true);
- }
-
- storage->shaders.copy.set_conditional(CopyShaderGLES2::USE_NO_ALPHA, !state.using_transparent_rt);
-
- glBindFramebuffer(GL_FRAMEBUFFER, storage->frame.current_rt->copy_screen_effect.fbo);
- glActiveTexture(GL_TEXTURE0);
- glBindTexture(GL_TEXTURE_2D, storage->frame.current_rt->color);
-
- storage->shaders.copy.bind();
- storage->shaders.copy.set_uniform(CopyShaderGLES2::COPY_SECTION, copy_section);
-
- const Vector2 vertpos[4] = {
- Vector2(-1, -1),
- Vector2(-1, 1),
- Vector2(1, 1),
- Vector2(1, -1),
- };
-
- const Vector2 uvpos[4] = {
- Vector2(0, 0),
- Vector2(0, 1),
- Vector2(1, 1),
- Vector2(1, 0)
- };
-
- const int indexpos[6] = {
- 0, 1, 2,
- 2, 3, 0
- };
-
- _draw_polygon(indexpos, 6, 4, vertpos, uvpos, nullptr, false);
-
- storage->shaders.copy.set_conditional(CopyShaderGLES2::USE_COPY_SECTION, false);
- storage->shaders.copy.set_conditional(CopyShaderGLES2::USE_NO_ALPHA, false);
-
- glBindFramebuffer(GL_FRAMEBUFFER, storage->frame.current_rt->fbo); //back to front
- glEnable(GL_BLEND);
-}
-
-void RasterizerCanvasGLES2::_copy_texscreen(const Rect2 &p_rect) {
- state.canvas_texscreen_used = true;
-
- _copy_screen(p_rect);
-
- // back to canvas, force rebind
- state.using_texture_rect = false;
- state.canvas_shader.bind();
- _bind_canvas_texture(state.current_tex, state.current_normal);
- _set_uniforms();
-}
-
-void RasterizerCanvasGLES2::canvas_render_items(Item *p_item_list, int p_z, const Color &p_modulate, Light *p_light, const Transform2D &p_base_transform) {
- Item *current_clip = nullptr;
-
- RasterizerStorageGLES2::Shader *shader_cache = nullptr;
-
- bool rebind_shader = true;
- bool prev_use_skeleton = false;
- state.canvas_shader.set_conditional(CanvasShaderGLES2::USE_SKELETON, false);
-
- state.current_tex = RID();
- state.current_tex_ptr = nullptr;
- state.current_normal = RID();
- state.canvas_texscreen_used = false;
-
- glActiveTexture(GL_TEXTURE0);
- glBindTexture(GL_TEXTURE_2D, storage->resources.white_tex);
-
- int last_blend_mode = -1;
-
- RID canvas_last_material = RID();
-
- while (p_item_list) {
- Item *ci = p_item_list;
-
- if (current_clip != ci->final_clip_owner) {
- current_clip = ci->final_clip_owner;
-
- if (current_clip) {
- glEnable(GL_SCISSOR_TEST);
- int y = storage->frame.current_rt->height - (current_clip->final_clip_rect.position.y + current_clip->final_clip_rect.size.y);
- if (storage->frame.current_rt->flags[RasterizerStorage::RENDER_TARGET_VFLIP])
- y = current_clip->final_clip_rect.position.y;
- glScissor(current_clip->final_clip_rect.position.x, y, current_clip->final_clip_rect.size.width, current_clip->final_clip_rect.size.height);
- } else {
- glDisable(GL_SCISSOR_TEST);
- }
- }
-
- // TODO: copy back buffer
-
- if (ci->copy_back_buffer) {
- if (ci->copy_back_buffer->full) {
- _copy_texscreen(Rect2());
- } else {
- _copy_texscreen(ci->copy_back_buffer->rect);
- }
- }
-
- RasterizerStorageGLES2::Skeleton *skeleton = nullptr;
-
- {
- //skeleton handling
- if (ci->skeleton.is_valid() && storage->skeleton_owner.owns(ci->skeleton)) {
- skeleton = storage->skeleton_owner.getornull(ci->skeleton);
- if (!skeleton->use_2d) {
- skeleton = nullptr;
- } else {
- state.skeleton_transform = p_base_transform * skeleton->base_transform_2d;
- state.skeleton_transform_inverse = state.skeleton_transform.affine_inverse();
- state.skeleton_texture_size = Vector2(skeleton->size * 2, 0);
- }
- }
-
- bool use_skeleton = skeleton != nullptr;
- if (prev_use_skeleton != use_skeleton) {
- rebind_shader = true;
- state.canvas_shader.set_conditional(CanvasShaderGLES2::USE_SKELETON, use_skeleton);
- prev_use_skeleton = use_skeleton;
- }
-
- if (skeleton) {
- glActiveTexture(GL_TEXTURE0 + storage->config.max_texture_image_units - 3);
- glBindTexture(GL_TEXTURE_2D, skeleton->tex_id);
- state.using_skeleton = true;
- } else {
- state.using_skeleton = false;
- }
- }
-
- Item *material_owner = ci->material_owner ? ci->material_owner : ci;
-
- RID material = material_owner->material;
- RasterizerStorageGLES2::Material *material_ptr = storage->material_owner.getornull(material);
-
- if (material != canvas_last_material || rebind_shader) {
- RasterizerStorageGLES2::Shader *shader_ptr = nullptr;
-
- if (material_ptr) {
- shader_ptr = material_ptr->shader;
-
- if (shader_ptr && shader_ptr->mode != RS::SHADER_CANVAS_ITEM) {
- shader_ptr = nullptr; // not a canvas item shader, don't use.
- }
- }
-
- if (shader_ptr) {
- if (shader_ptr->canvas_item.uses_screen_texture) {
- if (!state.canvas_texscreen_used) {
- //copy if not copied before
- _copy_texscreen(Rect2());
-
- // blend mode will have been enabled so make sure we disable it again later on
- //last_blend_mode = last_blend_mode != RasterizerStorageGLES2::Shader::CanvasItem::BLEND_MODE_DISABLED ? last_blend_mode : -1;
- }
-
- if (storage->frame.current_rt->copy_screen_effect.color) {
- glActiveTexture(GL_TEXTURE0 + storage->config.max_texture_image_units - 4);
- glBindTexture(GL_TEXTURE_2D, storage->frame.current_rt->copy_screen_effect.color);
- }
- }
-
- if (shader_ptr != shader_cache) {
- if (shader_ptr->canvas_item.uses_time) {
- RenderingServerRaster::redraw_request();
- }
-
- state.canvas_shader.set_custom_shader(shader_ptr->custom_code_id);
- state.canvas_shader.bind();
- }
-
- int tc = material_ptr->textures.size();
- Pair<StringName, RID> *textures = material_ptr->textures.ptrw();
-
- ShaderLanguage::ShaderNode::Uniform::Hint *texture_hints = shader_ptr->texture_hints.ptrw();
-
- for (int i = 0; i < tc; i++) {
- glActiveTexture(GL_TEXTURE0 + i);
-
- RasterizerStorageGLES2::Texture *t = storage->texture_owner.getornull(textures[i].second);
-
- if (!t) {
- switch (texture_hints[i]) {
- case ShaderLanguage::ShaderNode::Uniform::HINT_BLACK_ALBEDO:
- case ShaderLanguage::ShaderNode::Uniform::HINT_BLACK: {
- glBindTexture(GL_TEXTURE_2D, storage->resources.black_tex);
- } break;
- case ShaderLanguage::ShaderNode::Uniform::HINT_ANISO: {
- glBindTexture(GL_TEXTURE_2D, storage->resources.aniso_tex);
- } break;
- case ShaderLanguage::ShaderNode::Uniform::HINT_NORMAL: {
- glBindTexture(GL_TEXTURE_2D, storage->resources.normal_tex);
- } break;
- default: {
- glBindTexture(GL_TEXTURE_2D, storage->resources.white_tex);
- } break;
- }
-
- continue;
- }
-
- if (t->redraw_if_visible) {
- RenderingServerRaster::redraw_request();
- }
-
- t = t->get_ptr();
-
-#ifdef TOOLS_ENABLED
- if (t->detect_normal && texture_hints[i] == ShaderLanguage::ShaderNode::Uniform::HINT_NORMAL) {
- t->detect_normal(t->detect_normal_ud);
- }
-#endif
- if (t->render_target)
- t->render_target->used_in_frame = true;
-
- glBindTexture(t->target, t->tex_id);
- }
-
- } else {
- state.canvas_shader.set_custom_shader(0);
- state.canvas_shader.bind();
- }
- state.canvas_shader.use_material((void *)material_ptr);
-
- shader_cache = shader_ptr;
-
- canvas_last_material = material;
-
- rebind_shader = false;
- }
-
- int blend_mode = shader_cache ? shader_cache->canvas_item.blend_mode : RasterizerStorageGLES2::Shader::CanvasItem::BLEND_MODE_MIX;
- bool unshaded = shader_cache && (shader_cache->canvas_item.light_mode == RasterizerStorageGLES2::Shader::CanvasItem::LIGHT_MODE_UNSHADED || (blend_mode != RasterizerStorageGLES2::Shader::CanvasItem::BLEND_MODE_MIX && blend_mode != RasterizerStorageGLES2::Shader::CanvasItem::BLEND_MODE_PMALPHA));
- bool reclip = false;
-
- if (last_blend_mode != blend_mode) {
- switch (blend_mode) {
- case RasterizerStorageGLES2::Shader::CanvasItem::BLEND_MODE_MIX: {
- glBlendEquation(GL_FUNC_ADD);
- if (storage->frame.current_rt && storage->frame.current_rt->flags[RasterizerStorage::RENDER_TARGET_TRANSPARENT]) {
- glBlendFuncSeparate(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA, GL_ONE, GL_ONE_MINUS_SRC_ALPHA);
- } else {
- glBlendFuncSeparate(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA, GL_ZERO, GL_ONE);
- }
-
- } break;
- case RasterizerStorageGLES2::Shader::CanvasItem::BLEND_MODE_ADD: {
- glBlendEquation(GL_FUNC_ADD);
- if (storage->frame.current_rt && storage->frame.current_rt->flags[RasterizerStorage::RENDER_TARGET_TRANSPARENT]) {
- glBlendFuncSeparate(GL_SRC_ALPHA, GL_ONE, GL_SRC_ALPHA, GL_ONE);
- } else {
- glBlendFuncSeparate(GL_SRC_ALPHA, GL_ONE, GL_ZERO, GL_ONE);
- }
-
- } break;
- case RasterizerStorageGLES2::Shader::CanvasItem::BLEND_MODE_SUB: {
- glBlendEquation(GL_FUNC_REVERSE_SUBTRACT);
- if (storage->frame.current_rt && storage->frame.current_rt->flags[RasterizerStorage::RENDER_TARGET_TRANSPARENT]) {
- glBlendFuncSeparate(GL_SRC_ALPHA, GL_ONE, GL_SRC_ALPHA, GL_ONE);
- } else {
- glBlendFuncSeparate(GL_SRC_ALPHA, GL_ONE, GL_ZERO, GL_ONE);
- }
- } break;
- case RasterizerStorageGLES2::Shader::CanvasItem::BLEND_MODE_MUL: {
- glBlendEquation(GL_FUNC_ADD);
- if (storage->frame.current_rt && storage->frame.current_rt->flags[RasterizerStorage::RENDER_TARGET_TRANSPARENT]) {
- glBlendFuncSeparate(GL_DST_COLOR, GL_ZERO, GL_DST_ALPHA, GL_ZERO);
- } else {
- glBlendFuncSeparate(GL_DST_COLOR, GL_ZERO, GL_ZERO, GL_ONE);
- }
- } break;
- case RasterizerStorageGLES2::Shader::CanvasItem::BLEND_MODE_PMALPHA: {
- glBlendEquation(GL_FUNC_ADD);
- if (storage->frame.current_rt && storage->frame.current_rt->flags[RasterizerStorage::RENDER_TARGET_TRANSPARENT]) {
- glBlendFuncSeparate(GL_ONE, GL_ONE_MINUS_SRC_ALPHA, GL_ONE, GL_ONE_MINUS_SRC_ALPHA);
- } else {
- glBlendFuncSeparate(GL_ONE, GL_ONE_MINUS_SRC_ALPHA, GL_ZERO, GL_ONE);
- }
- } break;
- }
- }
-
- state.uniforms.final_modulate = unshaded ? ci->final_modulate : Color(ci->final_modulate.r * p_modulate.r, ci->final_modulate.g * p_modulate.g, ci->final_modulate.b * p_modulate.b, ci->final_modulate.a * p_modulate.a);
-
- state.uniforms.modelview_matrix = ci->final_transform;
- state.uniforms.extra_matrix = Transform2D();
-
- _set_uniforms();
-
- if (unshaded || (state.uniforms.final_modulate.a > 0.001 && (!shader_cache || shader_cache->canvas_item.light_mode != RasterizerStorageGLES2::Shader::CanvasItem::LIGHT_MODE_LIGHT_ONLY) && !ci->light_masked))
- _canvas_item_render_commands(p_item_list, nullptr, reclip, material_ptr);
-
- rebind_shader = true; // hacked in for now.
-
- if ((blend_mode == RasterizerStorageGLES2::Shader::CanvasItem::BLEND_MODE_MIX || blend_mode == RasterizerStorageGLES2::Shader::CanvasItem::BLEND_MODE_PMALPHA) && p_light && !unshaded) {
- Light *light = p_light;
- bool light_used = false;
- RS::CanvasLightMode mode = RS::CANVAS_LIGHT_MODE_ADD;
- state.uniforms.final_modulate = ci->final_modulate; // remove the canvas modulate
-
- while (light) {
- if (ci->light_mask & light->item_mask && p_z >= light->z_min && p_z <= light->z_max && ci->global_rect_cache.intersects_transformed(light->xform_cache, light->rect_cache)) {
- //intersects this light
-
- if (!light_used || mode != light->mode) {
- mode = light->mode;
-
- switch (mode) {
- case RS::CANVAS_LIGHT_MODE_ADD: {
- glBlendEquation(GL_FUNC_ADD);
- glBlendFunc(GL_SRC_ALPHA, GL_ONE);
-
- } break;
- case RS::CANVAS_LIGHT_MODE_SUB: {
- glBlendEquation(GL_FUNC_REVERSE_SUBTRACT);
- glBlendFunc(GL_SRC_ALPHA, GL_ONE);
- } break;
- case RS::CANVAS_LIGHT_MODE_MIX:
- case RS::CANVAS_LIGHT_MODE_MASK: {
- glBlendEquation(GL_FUNC_ADD);
- glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
-
- } break;
- }
- }
-
- if (!light_used) {
- state.canvas_shader.set_conditional(CanvasShaderGLES2::USE_LIGHTING, true);
- light_used = true;
- }
-
- bool has_shadow = light->shadow_buffer.is_valid() && ci->light_mask & light->item_shadow_mask;
-
- state.canvas_shader.set_conditional(CanvasShaderGLES2::USE_SHADOWS, has_shadow);
- if (has_shadow) {
- state.canvas_shader.set_conditional(CanvasShaderGLES2::SHADOW_USE_GRADIENT, light->shadow_gradient_length > 0);
- state.canvas_shader.set_conditional(CanvasShaderGLES2::SHADOW_FILTER_NEAREST, light->shadow_filter == RS::CANVAS_LIGHT_FILTER_NONE);
- state.canvas_shader.set_conditional(CanvasShaderGLES2::SHADOW_FILTER_PCF3, light->shadow_filter == RS::CANVAS_LIGHT_FILTER_PCF3);
- state.canvas_shader.set_conditional(CanvasShaderGLES2::SHADOW_FILTER_PCF5, light->shadow_filter == RS::CANVAS_LIGHT_FILTER_PCF5);
- state.canvas_shader.set_conditional(CanvasShaderGLES2::SHADOW_FILTER_PCF7, light->shadow_filter == RS::CANVAS_LIGHT_FILTER_PCF7);
- state.canvas_shader.set_conditional(CanvasShaderGLES2::SHADOW_FILTER_PCF9, light->shadow_filter == RS::CANVAS_LIGHT_FILTER_PCF9);
- state.canvas_shader.set_conditional(CanvasShaderGLES2::SHADOW_FILTER_PCF13, light->shadow_filter == RS::CANVAS_LIGHT_FILTER_PCF13);
- }
-
- state.canvas_shader.bind();
- state.using_light = light;
- state.using_shadow = has_shadow;
-
- //always re-set uniforms, since light parameters changed
- _set_uniforms();
- state.canvas_shader.use_material((void *)material_ptr);
-
- glActiveTexture(GL_TEXTURE0 + storage->config.max_texture_image_units - 4);
- RasterizerStorageGLES2::Texture *t = storage->texture_owner.getornull(light->texture);
- if (!t) {
- glBindTexture(GL_TEXTURE_2D, storage->resources.white_tex);
- } else {
- t = t->get_ptr();
-
- glBindTexture(t->target, t->tex_id);
- }
-
- glActiveTexture(GL_TEXTURE0);
- _canvas_item_render_commands(p_item_list, nullptr, reclip, material_ptr); //redraw using light
-
- state.using_light = nullptr;
- }
-
- light = light->next_ptr;
- }
-
- if (light_used) {
- state.canvas_shader.set_conditional(CanvasShaderGLES2::USE_LIGHTING, false);
- state.canvas_shader.set_conditional(CanvasShaderGLES2::USE_SHADOWS, false);
- state.canvas_shader.set_conditional(CanvasShaderGLES2::SHADOW_FILTER_NEAREST, false);
- state.canvas_shader.set_conditional(CanvasShaderGLES2::SHADOW_FILTER_PCF3, false);
- state.canvas_shader.set_conditional(CanvasShaderGLES2::SHADOW_FILTER_PCF5, false);
- state.canvas_shader.set_conditional(CanvasShaderGLES2::SHADOW_FILTER_PCF7, false);
- state.canvas_shader.set_conditional(CanvasShaderGLES2::SHADOW_FILTER_PCF9, false);
- state.canvas_shader.set_conditional(CanvasShaderGLES2::SHADOW_FILTER_PCF13, false);
-
- state.canvas_shader.bind();
-
- last_blend_mode = -1;
-
- /*
- //this is set again, so it should not be needed anyway?
- state.canvas_item_modulate = unshaded ? ci->final_modulate : Color(
- ci->final_modulate.r * p_modulate.r,
- ci->final_modulate.g * p_modulate.g,
- ci->final_modulate.b * p_modulate.b,
- ci->final_modulate.a * p_modulate.a );
-
-
- state.canvas_shader.set_uniform(CanvasShaderGLES2::MODELVIEW_MATRIX,state.final_transform);
- state.canvas_shader.set_uniform(CanvasShaderGLES2::EXTRA_MATRIX,Transform2D());
- state.canvas_shader.set_uniform(CanvasShaderGLES2::FINAL_MODULATE,state.canvas_item_modulate);
-
- glBlendEquation(GL_FUNC_ADD);
-
- if (storage->frame.current_rt->flags[RasterizerStorage::RENDER_TARGET_TRANSPARENT]) {
- glBlendFuncSeparate(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA, GL_ONE, GL_ONE_MINUS_SRC_ALPHA);
- } else {
- glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
- }
-
- //@TODO RESET canvas_blend_mode
- */
- }
- }
-
- if (reclip) {
- glEnable(GL_SCISSOR_TEST);
- int y = storage->frame.current_rt->height - (current_clip->final_clip_rect.position.y + current_clip->final_clip_rect.size.y);
- if (storage->frame.current_rt->flags[RasterizerStorage::RENDER_TARGET_VFLIP])
- y = current_clip->final_clip_rect.position.y;
- glScissor(current_clip->final_clip_rect.position.x, y, current_clip->final_clip_rect.size.width, current_clip->final_clip_rect.size.height);
- }
-
- p_item_list = p_item_list->next;
- }
-
- if (current_clip) {
- glDisable(GL_SCISSOR_TEST);
- }
-
- state.canvas_shader.set_conditional(CanvasShaderGLES2::USE_SKELETON, false);
-}
-
-void RasterizerCanvasGLES2::canvas_debug_viewport_shadows(Light *p_lights_with_shadow) {
-}
-
-void RasterizerCanvasGLES2::canvas_light_shadow_buffer_update(RID p_buffer, const Transform2D &p_light_xform, int p_light_mask, float p_near, float p_far, LightOccluderInstance *p_occluders, CameraMatrix *p_xform_cache) {
- RasterizerStorageGLES2::CanvasLightShadow *cls = storage->canvas_light_shadow_owner.getornull(p_buffer);
- ERR_FAIL_COND(!cls);
-
- glDisable(GL_BLEND);
- glDisable(GL_SCISSOR_TEST);
- glDisable(GL_DITHER);
- glDisable(GL_CULL_FACE);
- glDepthFunc(GL_LEQUAL);
- glEnable(GL_DEPTH_TEST);
- glDepthMask(true);
-
- glBindFramebuffer(GL_FRAMEBUFFER, cls->fbo);
-
- state.canvas_shadow_shader.set_conditional(CanvasShadowShaderGLES2::USE_RGBA_SHADOWS, storage->config.use_rgba_2d_shadows);
- state.canvas_shadow_shader.bind();
-
- glViewport(0, 0, cls->size, cls->height);
- glClearDepth(1.0f);
- glClearColor(1, 1, 1, 1);
- glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
-
- RS::CanvasOccluderPolygonCullMode cull = RS::CANVAS_OCCLUDER_POLYGON_CULL_DISABLED;
-
- for (int i = 0; i < 4; i++) {
- //make sure it remains orthogonal, makes easy to read angle later
-
- Transform light;
- light.origin[0] = p_light_xform[2][0];
- light.origin[1] = p_light_xform[2][1];
- light.basis[0][0] = p_light_xform[0][0];
- light.basis[0][1] = p_light_xform[1][0];
- light.basis[1][0] = p_light_xform[0][1];
- light.basis[1][1] = p_light_xform[1][1];
-
- //light.basis.scale(Vector3(to_light.elements[0].length(),to_light.elements[1].length(),1));
-
- //p_near=1;
- CameraMatrix projection;
- {
- real_t fov = 90;
- real_t nearp = p_near;
- real_t farp = p_far;
- real_t aspect = 1.0;
-
- real_t ymax = nearp * Math::tan(Math::deg2rad(fov * 0.5));
- real_t ymin = -ymax;
- real_t xmin = ymin * aspect;
- real_t xmax = ymax * aspect;
-
- projection.set_frustum(xmin, xmax, ymin, ymax, nearp, farp);
- }
-
- Vector3 cam_target = Basis(Vector3(0, 0, Math_PI * 2 * (i / 4.0))).xform(Vector3(0, 1, 0));
- projection = projection * CameraMatrix(Transform().looking_at(cam_target, Vector3(0, 0, -1)).affine_inverse());
-
- state.canvas_shadow_shader.set_uniform(CanvasShadowShaderGLES2::PROJECTION_MATRIX, projection);
- state.canvas_shadow_shader.set_uniform(CanvasShadowShaderGLES2::LIGHT_MATRIX, light);
- state.canvas_shadow_shader.set_uniform(CanvasShadowShaderGLES2::DISTANCE_NORM, 1.0 / p_far);
-
- if (i == 0)
- *p_xform_cache = projection;
-
- glViewport(0, (cls->height / 4) * i, cls->size, cls->height / 4);
-
- LightOccluderInstance *instance = p_occluders;
-
- while (instance) {
- RasterizerStorageGLES2::CanvasOccluder *cc = storage->canvas_occluder_owner.getornull(instance->polygon_buffer);
- if (!cc || cc->len == 0 || !(p_light_mask & instance->light_mask)) {
- instance = instance->next;
- continue;
- }
-
- state.canvas_shadow_shader.set_uniform(CanvasShadowShaderGLES2::WORLD_MATRIX, instance->xform_cache);
-
- RS::CanvasOccluderPolygonCullMode transformed_cull_cache = instance->cull_cache;
-
- if (transformed_cull_cache != RS::CANVAS_OCCLUDER_POLYGON_CULL_DISABLED &&
- (p_light_xform.basis_determinant() * instance->xform_cache.basis_determinant()) < 0) {
- transformed_cull_cache =
- transformed_cull_cache == RS::CANVAS_OCCLUDER_POLYGON_CULL_CLOCKWISE ?
- RS::CANVAS_OCCLUDER_POLYGON_CULL_COUNTER_CLOCKWISE :
- RS::CANVAS_OCCLUDER_POLYGON_CULL_CLOCKWISE;
- }
-
- if (cull != transformed_cull_cache) {
- cull = transformed_cull_cache;
- switch (cull) {
- case RS::CANVAS_OCCLUDER_POLYGON_CULL_DISABLED: {
- glDisable(GL_CULL_FACE);
-
- } break;
- case RS::CANVAS_OCCLUDER_POLYGON_CULL_CLOCKWISE: {
- glEnable(GL_CULL_FACE);
- glCullFace(GL_FRONT);
- } break;
- case RS::CANVAS_OCCLUDER_POLYGON_CULL_COUNTER_CLOCKWISE: {
- glEnable(GL_CULL_FACE);
- glCullFace(GL_BACK);
-
- } break;
- }
- }
-
- glBindBuffer(GL_ARRAY_BUFFER, cc->vertex_id);
- glEnableVertexAttribArray(RS::ARRAY_VERTEX);
- glVertexAttribPointer(RS::ARRAY_VERTEX, 3, GL_FLOAT, false, 0, 0);
- glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, cc->index_id);
-
- glDrawElements(GL_TRIANGLES, cc->len * 3, GL_UNSIGNED_SHORT, 0);
-
- instance = instance->next;
- }
- }
-
- glBindBuffer(GL_ARRAY_BUFFER, 0);
- glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, 0);
-}
-
-void RasterizerCanvasGLES2::reset_canvas() {
- glDisable(GL_CULL_FACE);
- glDisable(GL_DEPTH_TEST);
- glDisable(GL_SCISSOR_TEST);
- glDisable(GL_DITHER);
- glEnable(GL_BLEND);
-
- if (storage->frame.current_rt && storage->frame.current_rt->flags[RasterizerStorage::RENDER_TARGET_TRANSPARENT]) {
- glBlendFuncSeparate(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA, GL_ONE, GL_ONE_MINUS_SRC_ALPHA);
- } else {
- glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
- }
-
- // bind the back buffer to a texture so shaders can use it.
- // It should probably use texture unit -3 (as GLES2 does as well) but currently that's buggy.
- // keeping this for now as there's nothing else that uses texture unit 2
- // TODO ^
- if (storage->frame.current_rt) {
- // glActiveTexture(GL_TEXTURE0 + 2);
- // glBindTexture(GL_TEXTURE_2D, storage->frame.current_rt->copy_screen_effect.color);
- }
-
- glBindBuffer(GL_ARRAY_BUFFER, 0);
- glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, 0);
-}
-
-void RasterizerCanvasGLES2::_bind_quad_buffer() {
- glBindBuffer(GL_ARRAY_BUFFER, data.canvas_quad_vertices);
- glEnableVertexAttribArray(RS::ARRAY_VERTEX);
- glVertexAttribPointer(RS::ARRAY_VERTEX, 2, GL_FLOAT, GL_FALSE, 0, nullptr);
-}
-
-void RasterizerCanvasGLES2::draw_generic_textured_rect(const Rect2 &p_rect, const Rect2 &p_src) {
- state.canvas_shader.set_uniform(CanvasShaderGLES2::DST_RECT, Color(p_rect.position.x, p_rect.position.y, p_rect.size.x, p_rect.size.y));
- state.canvas_shader.set_uniform(CanvasShaderGLES2::SRC_RECT, Color(p_src.position.x, p_src.position.y, p_src.size.x, p_src.size.y));
-
- glDrawArrays(GL_TRIANGLE_FAN, 0, 4);
-}
-
-void RasterizerCanvasGLES2::draw_lens_distortion_rect(const Rect2 &p_rect, float p_k1, float p_k2, const Vector2 &p_eye_center, float p_oversample) {
- Vector2 half_size;
- if (storage->frame.current_rt) {
- half_size = Vector2(storage->frame.current_rt->width, storage->frame.current_rt->height);
- } else {
- half_size = DisplayServer::get_singleton()->window_get_size();
- }
- half_size *= 0.5;
- Vector2 offset((p_rect.position.x - half_size.x) / half_size.x, (p_rect.position.y - half_size.y) / half_size.y);
- Vector2 scale(p_rect.size.x / half_size.x, p_rect.size.y / half_size.y);
-
- float aspect_ratio = p_rect.size.x / p_rect.size.y;
-
- // setup our lens shader
- state.lens_shader.bind();
- state.lens_shader.set_uniform(LensDistortedShaderGLES2::OFFSET, offset);
- state.lens_shader.set_uniform(LensDistortedShaderGLES2::SCALE, scale);
- state.lens_shader.set_uniform(LensDistortedShaderGLES2::K1, p_k1);
- state.lens_shader.set_uniform(LensDistortedShaderGLES2::K2, p_k2);
- state.lens_shader.set_uniform(LensDistortedShaderGLES2::EYE_CENTER, p_eye_center);
- state.lens_shader.set_uniform(LensDistortedShaderGLES2::UPSCALE, p_oversample);
- state.lens_shader.set_uniform(LensDistortedShaderGLES2::ASPECT_RATIO, aspect_ratio);
-
- // bind our quad buffer
- _bind_quad_buffer();
-
- // and draw
- glDrawArrays(GL_TRIANGLE_FAN, 0, 4);
-
- // and cleanup
- glBindBuffer(GL_ARRAY_BUFFER, 0);
-
- for (int i = 0; i < RS::ARRAY_MAX; i++) {
- glDisableVertexAttribArray(i);
- }
-}
-
-void RasterizerCanvasGLES2::draw_window_margins(int *black_margin, RID *black_image) {
- Vector2 window_size = DisplayServer::get_singleton()->window_get_size();
- int window_h = window_size.height;
- int window_w = window_size.width;
-
- glBindFramebuffer(GL_FRAMEBUFFER, storage->system_fbo);
- glViewport(0, 0, window_size.width, window_size.height);
- canvas_begin();
-
- if (black_image[MARGIN_LEFT].is_valid()) {
- _bind_canvas_texture(black_image[MARGIN_LEFT], RID());
- Size2 sz(storage->texture_get_width(black_image[MARGIN_LEFT]), storage->texture_get_height(black_image[MARGIN_LEFT]));
- draw_generic_textured_rect(Rect2(0, 0, black_margin[MARGIN_LEFT], window_h), Rect2(0, 0, sz.x, sz.y));
- } else if (black_margin[MARGIN_LEFT]) {
- glActiveTexture(GL_TEXTURE0);
- glBindTexture(GL_TEXTURE_2D, storage->resources.black_tex);
-
- draw_generic_textured_rect(Rect2(0, 0, black_margin[MARGIN_LEFT], window_h), Rect2(0, 0, 1, 1));
- }
-
- if (black_image[MARGIN_RIGHT].is_valid()) {
- _bind_canvas_texture(black_image[MARGIN_RIGHT], RID());
- Size2 sz(storage->texture_get_width(black_image[MARGIN_RIGHT]), storage->texture_get_height(black_image[MARGIN_RIGHT]));
- draw_generic_textured_rect(Rect2(window_w - black_margin[MARGIN_RIGHT], 0, black_margin[MARGIN_RIGHT], window_h), Rect2(0, 0, sz.x, sz.y));
- } else if (black_margin[MARGIN_RIGHT]) {
- glActiveTexture(GL_TEXTURE0);
- glBindTexture(GL_TEXTURE_2D, storage->resources.black_tex);
-
- draw_generic_textured_rect(Rect2(window_w - black_margin[MARGIN_RIGHT], 0, black_margin[MARGIN_RIGHT], window_h), Rect2(0, 0, 1, 1));
- }
-
- if (black_image[MARGIN_TOP].is_valid()) {
- _bind_canvas_texture(black_image[MARGIN_TOP], RID());
-
- Size2 sz(storage->texture_get_width(black_image[MARGIN_TOP]), storage->texture_get_height(black_image[MARGIN_TOP]));
- draw_generic_textured_rect(Rect2(0, 0, window_w, black_margin[MARGIN_TOP]), Rect2(0, 0, sz.x, sz.y));
-
- } else if (black_margin[MARGIN_TOP]) {
- glActiveTexture(GL_TEXTURE0);
- glBindTexture(GL_TEXTURE_2D, storage->resources.black_tex);
-
- draw_generic_textured_rect(Rect2(0, 0, window_w, black_margin[MARGIN_TOP]), Rect2(0, 0, 1, 1));
- }
-
- if (black_image[MARGIN_BOTTOM].is_valid()) {
- _bind_canvas_texture(black_image[MARGIN_BOTTOM], RID());
-
- Size2 sz(storage->texture_get_width(black_image[MARGIN_BOTTOM]), storage->texture_get_height(black_image[MARGIN_BOTTOM]));
- draw_generic_textured_rect(Rect2(0, window_h - black_margin[MARGIN_BOTTOM], window_w, black_margin[MARGIN_BOTTOM]), Rect2(0, 0, sz.x, sz.y));
-
- } else if (black_margin[MARGIN_BOTTOM]) {
- glActiveTexture(GL_TEXTURE0);
- glBindTexture(GL_TEXTURE_2D, storage->resources.black_tex);
-
- draw_generic_textured_rect(Rect2(0, window_h - black_margin[MARGIN_BOTTOM], window_w, black_margin[MARGIN_BOTTOM]), Rect2(0, 0, 1, 1));
- }
-
- canvas_end();
-}
-
-void RasterizerCanvasGLES2::initialize() {
- // quad buffer
- {
- glGenBuffers(1, &data.canvas_quad_vertices);
- glBindBuffer(GL_ARRAY_BUFFER, data.canvas_quad_vertices);
-
- const float qv[8] = {
- 0, 0,
- 0, 1,
- 1, 1,
- 1, 0
- };
-
- glBufferData(GL_ARRAY_BUFFER, sizeof(float) * 8, qv, GL_STATIC_DRAW);
-
- glBindBuffer(GL_ARRAY_BUFFER, 0);
- }
-
- // polygon buffer
- {
- uint32_t poly_size = GLOBAL_DEF("rendering/limits/buffers/canvas_polygon_buffer_size_kb", 128);
- ProjectSettings::get_singleton()->set_custom_property_info("rendering/limits/buffers/canvas_polygon_buffer_size_kb", PropertyInfo(Variant::INT, "rendering/limits/buffers/canvas_polygon_buffer_size_kb", PROPERTY_HINT_RANGE, "0,256,1,or_greater"));
- poly_size *= 1024;
- poly_size = MAX(poly_size, (2 + 2 + 4) * 4 * sizeof(float));
- glGenBuffers(1, &data.polygon_buffer);
- glBindBuffer(GL_ARRAY_BUFFER, data.polygon_buffer);
- glBufferData(GL_ARRAY_BUFFER, poly_size, nullptr, GL_DYNAMIC_DRAW);
-
- data.polygon_buffer_size = poly_size;
-
- glBindBuffer(GL_ARRAY_BUFFER, 0);
-
- uint32_t index_size = GLOBAL_DEF("rendering/limits/buffers/canvas_polygon_index_buffer_size_kb", 128);
- ProjectSettings::get_singleton()->set_custom_property_info("rendering/limits/buffers/canvas_polygon_index_buffer_size_kb", PropertyInfo(Variant::INT, "rendering/limits/buffers/canvas_polygon_index_buffer_size_kb", PROPERTY_HINT_RANGE, "0,256,1,or_greater"));
- index_size *= 1024; // kb
- glGenBuffers(1, &data.polygon_index_buffer);
- glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, data.polygon_index_buffer);
- glBufferData(GL_ELEMENT_ARRAY_BUFFER, index_size, nullptr, GL_DYNAMIC_DRAW);
- glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, 0);
-
- data.polygon_index_buffer_size = index_size;
- }
-
- // ninepatch buffers
- {
- // array buffer
- glGenBuffers(1, &data.ninepatch_vertices);
- glBindBuffer(GL_ARRAY_BUFFER, data.ninepatch_vertices);
-
- glBufferData(GL_ARRAY_BUFFER, sizeof(float) * (16 + 16) * 2, nullptr, GL_DYNAMIC_DRAW);
-
- glBindBuffer(GL_ARRAY_BUFFER, 0);
-
- // element buffer
- glGenBuffers(1, &data.ninepatch_elements);
- glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, data.ninepatch_elements);
-
-#define _EIDX(y, x) (y * 4 + x)
- uint8_t elems[3 * 2 * 9] = {
-
- // first row
-
- _EIDX(0, 0), _EIDX(0, 1), _EIDX(1, 1),
- _EIDX(1, 1), _EIDX(1, 0), _EIDX(0, 0),
-
- _EIDX(0, 1), _EIDX(0, 2), _EIDX(1, 2),
- _EIDX(1, 2), _EIDX(1, 1), _EIDX(0, 1),
-
- _EIDX(0, 2), _EIDX(0, 3), _EIDX(1, 3),
- _EIDX(1, 3), _EIDX(1, 2), _EIDX(0, 2),
-
- // second row
-
- _EIDX(1, 0), _EIDX(1, 1), _EIDX(2, 1),
- _EIDX(2, 1), _EIDX(2, 0), _EIDX(1, 0),
-
- // the center one would be here, but we'll put it at the end
- // so it's easier to disable the center and be able to use
- // one draw call for both
-
- _EIDX(1, 2), _EIDX(1, 3), _EIDX(2, 3),
- _EIDX(2, 3), _EIDX(2, 2), _EIDX(1, 2),
-
- // third row
-
- _EIDX(2, 0), _EIDX(2, 1), _EIDX(3, 1),
- _EIDX(3, 1), _EIDX(3, 0), _EIDX(2, 0),
-
- _EIDX(2, 1), _EIDX(2, 2), _EIDX(3, 2),
- _EIDX(3, 2), _EIDX(3, 1), _EIDX(2, 1),
-
- _EIDX(2, 2), _EIDX(2, 3), _EIDX(3, 3),
- _EIDX(3, 3), _EIDX(3, 2), _EIDX(2, 2),
-
- // center field
-
- _EIDX(1, 1), _EIDX(1, 2), _EIDX(2, 2),
- _EIDX(2, 2), _EIDX(2, 1), _EIDX(1, 1)
- };
-#undef _EIDX
-
- glBufferData(GL_ELEMENT_ARRAY_BUFFER, sizeof(elems), elems, GL_STATIC_DRAW);
-
- glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, 0);
- }
-
- state.canvas_shadow_shader.init();
-
- state.canvas_shader.init();
-
- state.canvas_shader.set_conditional(CanvasShaderGLES2::USE_TEXTURE_RECT, true);
- state.canvas_shader.set_conditional(CanvasShaderGLES2::USE_RGBA_SHADOWS, storage->config.use_rgba_2d_shadows);
-
- state.canvas_shader.bind();
-
- state.lens_shader.init();
-
- state.canvas_shader.set_conditional(CanvasShaderGLES2::USE_PIXEL_SNAP, GLOBAL_DEF("rendering/quality/2d/use_pixel_snap", false));
-
- state.using_light = nullptr;
- state.using_transparent_rt = false;
- state.using_skeleton = false;
-}
-
-void RasterizerCanvasGLES2::finalize() {
-}
-
-RasterizerCanvasGLES2::RasterizerCanvasGLES2() {
-#ifdef GLES_OVER_GL
- use_nvidia_rect_workaround = GLOBAL_GET("rendering/quality/2d/gles2_use_nvidia_rect_flicker_workaround");
-#else
- // Not needed (a priori) on GLES devices
- use_nvidia_rect_workaround = false;
-#endif
-}
diff --git a/drivers/gles2/rasterizer_canvas_gles2.h b/drivers/gles2/rasterizer_canvas_gles2.h
deleted file mode 100644
index 84452fe220..0000000000
--- a/drivers/gles2/rasterizer_canvas_gles2.h
+++ /dev/null
@@ -1,147 +0,0 @@
-/*************************************************************************/
-/* rasterizer_canvas_gles2.h */
-/*************************************************************************/
-/* This file is part of: */
-/* GODOT ENGINE */
-/* https://godotengine.org */
-/*************************************************************************/
-/* Copyright (c) 2007-2020 Juan Linietsky, Ariel Manzur. */
-/* Copyright (c) 2014-2020 Godot Engine contributors (cf. AUTHORS.md). */
-/* */
-/* Permission is hereby granted, free of charge, to any person obtaining */
-/* a copy of this software and associated documentation files (the */
-/* "Software"), to deal in the Software without restriction, including */
-/* without limitation the rights to use, copy, modify, merge, publish, */
-/* distribute, sublicense, and/or sell copies of the Software, and to */
-/* permit persons to whom the Software is furnished to do so, subject to */
-/* the following conditions: */
-/* */
-/* The above copyright notice and this permission notice shall be */
-/* included in all copies or substantial portions of the Software. */
-/* */
-/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
-/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
-/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.*/
-/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
-/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
-/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
-/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
-/*************************************************************************/
-
-#ifndef RASTERIZERCANVASGLES2_H
-#define RASTERIZERCANVASGLES2_H
-
-#include "rasterizer_storage_gles2.h"
-#include "servers/rendering/rasterizer.h"
-
-#include "shaders/canvas.glsl.gen.h"
-#include "shaders/lens_distorted.glsl.gen.h"
-
-#include "shaders/canvas_shadow.glsl.gen.h"
-
-class RasterizerSceneGLES2;
-
-class RasterizerCanvasGLES2 : public RasterizerCanvas {
-public:
- enum {
- INSTANCE_ATTRIB_BASE = 8,
- };
-
- struct Uniforms {
- Transform projection_matrix;
-
- Transform2D modelview_matrix;
- Transform2D extra_matrix;
-
- Color final_modulate;
-
- float time;
- };
-
- struct Data {
- GLuint canvas_quad_vertices;
- GLuint polygon_buffer;
- GLuint polygon_index_buffer;
-
- uint32_t polygon_buffer_size;
- uint32_t polygon_index_buffer_size;
-
- GLuint ninepatch_vertices;
- GLuint ninepatch_elements;
-
- } data;
-
- struct State {
- Uniforms uniforms;
- bool canvas_texscreen_used;
- CanvasShaderGLES2 canvas_shader;
- CanvasShadowShaderGLES2 canvas_shadow_shader;
- LensDistortedShaderGLES2 lens_shader;
-
- bool using_texture_rect;
- bool using_ninepatch;
- bool using_skeleton;
-
- Transform2D skeleton_transform;
- Transform2D skeleton_transform_inverse;
- Size2i skeleton_texture_size;
-
- RID current_tex;
- RID current_normal;
- RasterizerStorageGLES2::Texture *current_tex_ptr;
-
- Transform vp;
- Light *using_light;
- bool using_shadow;
- bool using_transparent_rt;
-
- } state;
-
- typedef void Texture;
-
- RasterizerSceneGLES2 *scene_render;
-
- RasterizerStorageGLES2 *storage;
-
- bool use_nvidia_rect_workaround;
-
- virtual RID light_internal_create();
- virtual void light_internal_update(RID p_rid, Light *p_light);
- virtual void light_internal_free(RID p_rid);
-
- void _set_uniforms();
-
- virtual void canvas_begin();
- virtual void canvas_end();
-
- _FORCE_INLINE_ void _draw_gui_primitive(int p_points, const Vector2 *p_vertices, const Color *p_colors, const Vector2 *p_uvs);
- _FORCE_INLINE_ void _draw_polygon(const int *p_indices, int p_index_count, int p_vertex_count, const Vector2 *p_vertices, const Vector2 *p_uvs, const Color *p_colors, bool p_singlecolor, const float *p_weights = nullptr, const int *p_bones = nullptr);
- _FORCE_INLINE_ void _draw_generic(GLuint p_primitive, int p_vertex_count, const Vector2 *p_vertices, const Vector2 *p_uvs, const Color *p_colors, bool p_singlecolor);
- _FORCE_INLINE_ void _draw_generic_indices(GLuint p_primitive, const int *p_indices, int p_index_count, int p_vertex_count, const Vector2 *p_vertices, const Vector2 *p_uvs, const Color *p_colors, bool p_singlecolor);
-
- _FORCE_INLINE_ void _canvas_item_render_commands(Item *p_item, Item *current_clip, bool &reclip, RasterizerStorageGLES2::Material *p_material);
- void _copy_screen(const Rect2 &p_rect);
- _FORCE_INLINE_ void _copy_texscreen(const Rect2 &p_rect);
-
- virtual void canvas_render_items(Item *p_item_list, int p_z, const Color &p_modulate, Light *p_light, const Transform2D &p_base_transform);
- virtual void canvas_debug_viewport_shadows(Light *p_lights_with_shadow);
-
- virtual void canvas_light_shadow_buffer_update(RID p_buffer, const Transform2D &p_light_xform, int p_light_mask, float p_near, float p_far, LightOccluderInstance *p_occluders, CameraMatrix *p_xform_cache);
-
- virtual void reset_canvas();
-
- RasterizerStorageGLES2::Texture *_bind_canvas_texture(const RID &p_texture, const RID &p_normal_map);
-
- void _bind_quad_buffer();
- void draw_generic_textured_rect(const Rect2 &p_rect, const Rect2 &p_src);
- void draw_lens_distortion_rect(const Rect2 &p_rect, float p_k1, float p_k2, const Vector2 &p_eye_center, float p_oversample);
-
- void initialize();
- void finalize();
-
- virtual void draw_window_margins(int *black_margin, RID *black_image);
-
- RasterizerCanvasGLES2();
-};
-
-#endif // RASTERIZERCANVASGLES2_H
diff --git a/drivers/gles2/rasterizer_gles2.cpp b/drivers/gles2/rasterizer_gles2.cpp
deleted file mode 100644
index fc9f3c67e6..0000000000
--- a/drivers/gles2/rasterizer_gles2.cpp
+++ /dev/null
@@ -1,494 +0,0 @@
-/*************************************************************************/
-/* rasterizer_gles2.cpp */
-/*************************************************************************/
-/* This file is part of: */
-/* GODOT ENGINE */
-/* https://godotengine.org */
-/*************************************************************************/
-/* Copyright (c) 2007-2020 Juan Linietsky, Ariel Manzur. */
-/* Copyright (c) 2014-2020 Godot Engine contributors (cf. AUTHORS.md). */
-/* */
-/* Permission is hereby granted, free of charge, to any person obtaining */
-/* a copy of this software and associated documentation files (the */
-/* "Software"), to deal in the Software without restriction, including */
-/* without limitation the rights to use, copy, modify, merge, publish, */
-/* distribute, sublicense, and/or sell copies of the Software, and to */
-/* permit persons to whom the Software is furnished to do so, subject to */
-/* the following conditions: */
-/* */
-/* The above copyright notice and this permission notice shall be */
-/* included in all copies or substantial portions of the Software. */
-/* */
-/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
-/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
-/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.*/
-/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
-/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
-/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
-/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
-/*************************************************************************/
-
-#include "rasterizer_gles2.h"
-
-#include "core/os/os.h"
-#include "core/project_settings.h"
-
-#define _EXT_DEBUG_OUTPUT_SYNCHRONOUS_ARB 0x8242
-#define _EXT_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH_ARB 0x8243
-#define _EXT_DEBUG_CALLBACK_FUNCTION_ARB 0x8244
-#define _EXT_DEBUG_CALLBACK_USER_PARAM_ARB 0x8245
-#define _EXT_DEBUG_SOURCE_API_ARB 0x8246
-#define _EXT_DEBUG_SOURCE_WINDOW_SYSTEM_ARB 0x8247
-#define _EXT_DEBUG_SOURCE_SHADER_COMPILER_ARB 0x8248
-#define _EXT_DEBUG_SOURCE_THIRD_PARTY_ARB 0x8249
-#define _EXT_DEBUG_SOURCE_APPLICATION_ARB 0x824A
-#define _EXT_DEBUG_SOURCE_OTHER_ARB 0x824B
-#define _EXT_DEBUG_TYPE_ERROR_ARB 0x824C
-#define _EXT_DEBUG_TYPE_DEPRECATED_BEHAVIOR_ARB 0x824D
-#define _EXT_DEBUG_TYPE_UNDEFINED_BEHAVIOR_ARB 0x824E
-#define _EXT_DEBUG_TYPE_PORTABILITY_ARB 0x824F
-#define _EXT_DEBUG_TYPE_PERFORMANCE_ARB 0x8250
-#define _EXT_DEBUG_TYPE_OTHER_ARB 0x8251
-#define _EXT_MAX_DEBUG_MESSAGE_LENGTH_ARB 0x9143
-#define _EXT_MAX_DEBUG_LOGGED_MESSAGES_ARB 0x9144
-#define _EXT_DEBUG_LOGGED_MESSAGES_ARB 0x9145
-#define _EXT_DEBUG_SEVERITY_HIGH_ARB 0x9146
-#define _EXT_DEBUG_SEVERITY_MEDIUM_ARB 0x9147
-#define _EXT_DEBUG_SEVERITY_LOW_ARB 0x9148
-#define _EXT_DEBUG_OUTPUT 0x92E0
-
-#ifndef GLAPIENTRY
-#if defined(WINDOWS_ENABLED) && !defined(UWP_ENABLED)
-#define GLAPIENTRY APIENTRY
-#else
-#define GLAPIENTRY
-#endif
-#endif
-
-#ifndef IPHONE_ENABLED
-// We include EGL below to get debug callback on GLES2 platforms,
-// but EGL is not available on iOS.
-#define CAN_DEBUG
-#endif
-
-#if !defined(GLES_OVER_GL) && defined(CAN_DEBUG)
-#include <GLES2/gl2.h>
-#include <GLES2/gl2ext.h>
-#include <GLES2/gl2platform.h>
-
-#include <EGL/egl.h>
-#include <EGL/eglext.h>
-#endif
-
-#if defined(MINGW_ENABLED) || defined(_MSC_VER)
-#define strcpy strcpy_s
-#endif
-
-#ifdef CAN_DEBUG
-static void GLAPIENTRY _gl_debug_print(GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar *message, const GLvoid *userParam) {
- if (type == _EXT_DEBUG_TYPE_OTHER_ARB)
- return;
-
- if (type == _EXT_DEBUG_TYPE_PERFORMANCE_ARB)
- return; //these are ultimately annoying, so removing for now
-
- char debSource[256], debType[256], debSev[256];
-
- if (source == _EXT_DEBUG_SOURCE_API_ARB)
- strcpy(debSource, "OpenGL");
- else if (source == _EXT_DEBUG_SOURCE_WINDOW_SYSTEM_ARB)
- strcpy(debSource, "Windows");
- else if (source == _EXT_DEBUG_SOURCE_SHADER_COMPILER_ARB)
- strcpy(debSource, "Shader Compiler");
- else if (source == _EXT_DEBUG_SOURCE_THIRD_PARTY_ARB)
- strcpy(debSource, "Third Party");
- else if (source == _EXT_DEBUG_SOURCE_APPLICATION_ARB)
- strcpy(debSource, "Application");
- else if (source == _EXT_DEBUG_SOURCE_OTHER_ARB)
- strcpy(debSource, "Other");
-
- if (type == _EXT_DEBUG_TYPE_ERROR_ARB)
- strcpy(debType, "Error");
- else if (type == _EXT_DEBUG_TYPE_DEPRECATED_BEHAVIOR_ARB)
- strcpy(debType, "Deprecated behavior");
- else if (type == _EXT_DEBUG_TYPE_UNDEFINED_BEHAVIOR_ARB)
- strcpy(debType, "Undefined behavior");
- else if (type == _EXT_DEBUG_TYPE_PORTABILITY_ARB)
- strcpy(debType, "Portability");
- else if (type == _EXT_DEBUG_TYPE_PERFORMANCE_ARB)
- strcpy(debType, "Performance");
- else if (type == _EXT_DEBUG_TYPE_OTHER_ARB)
- strcpy(debType, "Other");
-
- if (severity == _EXT_DEBUG_SEVERITY_HIGH_ARB)
- strcpy(debSev, "High");
- else if (severity == _EXT_DEBUG_SEVERITY_MEDIUM_ARB)
- strcpy(debSev, "Medium");
- else if (severity == _EXT_DEBUG_SEVERITY_LOW_ARB)
- strcpy(debSev, "Low");
-
- String output = String() + "GL ERROR: Source: " + debSource + "\tType: " + debType + "\tID: " + itos(id) + "\tSeverity: " + debSev + "\tMessage: " + message;
-
- ERR_PRINT(output);
-}
-#endif // CAN_DEBUG
-
-typedef void (*DEBUGPROCARB)(GLenum source,
- GLenum type,
- GLuint id,
- GLenum severity,
- GLsizei length,
- const char *message,
- const void *userParam);
-
-typedef void (*DebugMessageCallbackARB)(DEBUGPROCARB callback, const void *userParam);
-
-RasterizerStorage *RasterizerGLES2::get_storage() {
- return storage;
-}
-
-RasterizerCanvas *RasterizerGLES2::get_canvas() {
- return canvas;
-}
-
-RasterizerScene *RasterizerGLES2::get_scene() {
- return scene;
-}
-
-Error RasterizerGLES2::is_viable() {
-#ifdef GLAD_ENABLED
- if (!gladLoadGL()) {
- ERR_PRINT("Error initializing GLAD");
- return ERR_UNAVAILABLE;
- }
-
-// GLVersion seems to be used for both GL and GL ES, so we need different version checks for them
-#ifdef OPENGL_ENABLED // OpenGL 2.1 Profile required
- if (GLVersion.major < 2 || (GLVersion.major == 2 && GLVersion.minor < 1)) {
-#else // OpenGL ES 2.0
- if (GLVersion.major < 2) {
-#endif
- return ERR_UNAVAILABLE;
- }
-
-#ifdef GLES_OVER_GL
- //Test GL_ARB_framebuffer_object extension
- if (!GLAD_GL_ARB_framebuffer_object) {
- //Try older GL_EXT_framebuffer_object extension
- if (GLAD_GL_EXT_framebuffer_object) {
- glIsRenderbuffer = glIsRenderbufferEXT;
- glBindRenderbuffer = glBindRenderbufferEXT;
- glDeleteRenderbuffers = glDeleteRenderbuffersEXT;
- glGenRenderbuffers = glGenRenderbuffersEXT;
- glRenderbufferStorage = glRenderbufferStorageEXT;
- glGetRenderbufferParameteriv = glGetRenderbufferParameterivEXT;
- glIsFramebuffer = glIsFramebufferEXT;
- glBindFramebuffer = glBindFramebufferEXT;
- glDeleteFramebuffers = glDeleteFramebuffersEXT;
- glGenFramebuffers = glGenFramebuffersEXT;
- glCheckFramebufferStatus = glCheckFramebufferStatusEXT;
- glFramebufferTexture1D = glFramebufferTexture1DEXT;
- glFramebufferTexture2D = glFramebufferTexture2DEXT;
- glFramebufferTexture3D = glFramebufferTexture3DEXT;
- glFramebufferRenderbuffer = glFramebufferRenderbufferEXT;
- glGetFramebufferAttachmentParameteriv = glGetFramebufferAttachmentParameterivEXT;
- glGenerateMipmap = glGenerateMipmapEXT;
- } else {
- return ERR_UNAVAILABLE;
- }
- }
-
- if (GLAD_GL_EXT_framebuffer_multisample) {
- glRenderbufferStorageMultisample = glRenderbufferStorageMultisampleEXT;
- }
-#endif // GLES_OVER_GL
-
-#endif // GLAD_ENABLED
-
- return OK;
-}
-
-void RasterizerGLES2::initialize() {
- print_verbose("Using GLES2 video driver");
-
-#ifdef GLAD_ENABLED
- if (OS::get_singleton()->is_stdout_verbose()) {
- if (GLAD_GL_ARB_debug_output) {
- glEnable(_EXT_DEBUG_OUTPUT_SYNCHRONOUS_ARB);
- glDebugMessageCallbackARB(_gl_debug_print, nullptr);
- glEnable(_EXT_DEBUG_OUTPUT);
- } else {
- print_line("OpenGL debugging not supported!");
- }
- }
-#endif // GLAD_ENABLED
-
- // For debugging
-#ifdef CAN_DEBUG
-#ifdef GLES_OVER_GL
- if (OS::get_singleton()->is_stdout_verbose() && GLAD_GL_ARB_debug_output) {
- glDebugMessageControlARB(_EXT_DEBUG_SOURCE_API_ARB, _EXT_DEBUG_TYPE_ERROR_ARB, _EXT_DEBUG_SEVERITY_HIGH_ARB, 0, nullptr, GL_TRUE);
- glDebugMessageControlARB(_EXT_DEBUG_SOURCE_API_ARB, _EXT_DEBUG_TYPE_DEPRECATED_BEHAVIOR_ARB, _EXT_DEBUG_SEVERITY_HIGH_ARB, 0, nullptr, GL_TRUE);
- glDebugMessageControlARB(_EXT_DEBUG_SOURCE_API_ARB, _EXT_DEBUG_TYPE_UNDEFINED_BEHAVIOR_ARB, _EXT_DEBUG_SEVERITY_HIGH_ARB, 0, nullptr, GL_TRUE);
- glDebugMessageControlARB(_EXT_DEBUG_SOURCE_API_ARB, _EXT_DEBUG_TYPE_PORTABILITY_ARB, _EXT_DEBUG_SEVERITY_HIGH_ARB, 0, nullptr, GL_TRUE);
- glDebugMessageControlARB(_EXT_DEBUG_SOURCE_API_ARB, _EXT_DEBUG_TYPE_PERFORMANCE_ARB, _EXT_DEBUG_SEVERITY_HIGH_ARB, 0, nullptr, GL_TRUE);
- glDebugMessageControlARB(_EXT_DEBUG_SOURCE_API_ARB, _EXT_DEBUG_TYPE_OTHER_ARB, _EXT_DEBUG_SEVERITY_HIGH_ARB, 0, nullptr, GL_TRUE);
- /* glDebugMessageInsertARB(
- GL_DEBUG_SOURCE_API_ARB,
- GL_DEBUG_TYPE_OTHER_ARB, 1,
- GL_DEBUG_SEVERITY_HIGH_ARB, 5, "hello");
- */
- }
-#else
- if (OS::get_singleton()->is_stdout_verbose()) {
- DebugMessageCallbackARB callback = (DebugMessageCallbackARB)eglGetProcAddress("glDebugMessageCallback");
- if (!callback) {
- callback = (DebugMessageCallbackARB)eglGetProcAddress("glDebugMessageCallbackKHR");
- }
-
- if (callback) {
- print_line("godot: ENABLING GL DEBUG");
- glEnable(_EXT_DEBUG_OUTPUT_SYNCHRONOUS_ARB);
- callback(_gl_debug_print, nullptr);
- glEnable(_EXT_DEBUG_OUTPUT);
- }
- }
-#endif // GLES_OVER_GL
-#endif // CAN_DEBUG
-
- print_line("OpenGL ES 2.0 Renderer: " + RenderingServer::get_singleton()->get_video_adapter_name());
- storage->initialize();
- canvas->initialize();
- scene->initialize();
-}
-
-void RasterizerGLES2::begin_frame(double frame_step) {
- time_total += frame_step;
-
- if (frame_step == 0) {
- //to avoid hiccups
- frame_step = 0.001;
- }
-
- double time_roll_over = GLOBAL_GET("rendering/limits/time/time_rollover_secs");
- time_total = Math::fmod(time_total, time_roll_over);
-
- storage->frame.time[0] = time_total;
- storage->frame.time[1] = Math::fmod(time_total, 3600);
- storage->frame.time[2] = Math::fmod(time_total, 900);
- storage->frame.time[3] = Math::fmod(time_total, 60);
- storage->frame.count++;
- storage->frame.delta = frame_step;
-
- storage->update_dirty_resources();
-
- storage->info.render_final = storage->info.render;
- storage->info.render.reset();
-
- scene->iteration();
-}
-
-void RasterizerGLES2::set_current_render_target(RID p_render_target) {
- if (!p_render_target.is_valid() && storage->frame.current_rt && storage->frame.clear_request) {
- // pending clear request. Do that first.
- glBindFramebuffer(GL_FRAMEBUFFER, storage->frame.current_rt->fbo);
- glClearColor(storage->frame.clear_request_color.r,
- storage->frame.clear_request_color.g,
- storage->frame.clear_request_color.b,
- storage->frame.clear_request_color.a);
- glClear(GL_COLOR_BUFFER_BIT);
- }
-
- if (p_render_target.is_valid()) {
- RasterizerStorageGLES2::RenderTarget *rt = storage->render_target_owner.getornull(p_render_target);
- storage->frame.current_rt = rt;
- ERR_FAIL_COND(!rt);
- storage->frame.clear_request = false;
-
- glViewport(0, 0, rt->width, rt->height);
- } else {
- storage->frame.current_rt = nullptr;
- storage->frame.clear_request = false;
- glViewport(0, 0, DisplayServer::get_singleton()->window_get_size().width, DisplayServer::get_singleton()->window_get_size().height);
- glBindFramebuffer(GL_FRAMEBUFFER, RasterizerStorageGLES2::system_fbo);
- }
-}
-
-void RasterizerGLES2::restore_render_target(bool p_3d_was_drawn) {
- ERR_FAIL_COND(storage->frame.current_rt == nullptr);
- RasterizerStorageGLES2::RenderTarget *rt = storage->frame.current_rt;
- glBindFramebuffer(GL_FRAMEBUFFER, rt->fbo);
- glViewport(0, 0, rt->width, rt->height);
-}
-
-void RasterizerGLES2::clear_render_target(const Color &p_color) {
- ERR_FAIL_COND(!storage->frame.current_rt);
-
- storage->frame.clear_request = true;
- storage->frame.clear_request_color = p_color;
-}
-
-void RasterizerGLES2::set_boot_image(const Ref<Image> &p_image, const Color &p_color, bool p_scale, bool p_use_filter) {
- if (p_image.is_null() || p_image->empty())
- return;
-
- int window_w = OS::get_singleton()->get_video_mode(0).width;
- int window_h = OS::get_singleton()->get_video_mode(0).height;
-
- glBindFramebuffer(GL_FRAMEBUFFER, 0);
- glViewport(0, 0, window_w, window_h);
- glDisable(GL_BLEND);
- glDepthMask(GL_FALSE);
- if (OS::get_singleton()->get_window_per_pixel_transparency_enabled()) {
- glClearColor(0.0, 0.0, 0.0, 0.0);
- } else {
- glClearColor(p_color.r, p_color.g, p_color.b, 1.0);
- }
- glClear(GL_COLOR_BUFFER_BIT);
-
- canvas->canvas_begin();
-
- RID texture = storage->texture_create();
- storage->texture_allocate(texture, p_image->get_width(), p_image->get_height(), 0, p_image->get_format(), RS::TEXTURE_TYPE_2D, p_use_filter ? RS::TEXTURE_FLAG_FILTER : 0);
- storage->texture_set_data(texture, p_image);
-
- Rect2 imgrect(0, 0, p_image->get_width(), p_image->get_height());
- Rect2 screenrect;
- if (p_scale) {
- if (window_w > window_h) {
- //scale horizontally
- screenrect.size.y = window_h;
- screenrect.size.x = imgrect.size.x * window_h / imgrect.size.y;
- screenrect.position.x = (window_w - screenrect.size.x) / 2;
-
- } else {
- //scale vertically
- screenrect.size.x = window_w;
- screenrect.size.y = imgrect.size.y * window_w / imgrect.size.x;
- screenrect.position.y = (window_h - screenrect.size.y) / 2;
- }
- } else {
- screenrect = imgrect;
- screenrect.position += ((Size2(window_w, window_h) - screenrect.size) / 2.0).floor();
- }
-
- RasterizerStorageGLES2::Texture *t = storage->texture_owner.getornull(texture);
- glActiveTexture(GL_TEXTURE0 + storage->config.max_texture_image_units - 1);
- glBindTexture(GL_TEXTURE_2D, t->tex_id);
- canvas->draw_generic_textured_rect(screenrect, Rect2(0, 0, 1, 1));
- glBindTexture(GL_TEXTURE_2D, 0);
- canvas->canvas_end();
-
- storage->free(texture);
-
- end_frame(true);
-}
-
-void RasterizerGLES2::blit_render_target_to_screen(RID p_render_target, const Rect2 &p_screen_rect, int p_screen) {
- ERR_FAIL_COND(storage->frame.current_rt);
-
- RasterizerStorageGLES2::RenderTarget *rt = storage->render_target_owner.getornull(p_render_target);
- ERR_FAIL_COND(!rt);
-
- canvas->state.canvas_shader.set_conditional(CanvasShaderGLES2::USE_TEXTURE_RECT, true);
-
- canvas->state.canvas_shader.set_custom_shader(0);
- canvas->state.canvas_shader.bind();
-
- canvas->canvas_begin();
- glDisable(GL_BLEND);
- glBindFramebuffer(GL_FRAMEBUFFER, RasterizerStorageGLES2::system_fbo);
- glActiveTexture(GL_TEXTURE0 + storage->config.max_texture_image_units - 1);
- if (rt->external.fbo != 0) {
- glBindTexture(GL_TEXTURE_2D, rt->external.color);
- } else {
- glBindTexture(GL_TEXTURE_2D, rt->color);
- }
-
- // TODO normals
-
- canvas->draw_generic_textured_rect(p_screen_rect, Rect2(0, 0, 1, -1));
-
- glBindTexture(GL_TEXTURE_2D, 0);
- canvas->canvas_end();
-}
-
-void RasterizerGLES2::output_lens_distorted_to_screen(RID p_render_target, const Rect2 &p_screen_rect, float p_k1, float p_k2, const Vector2 &p_eye_center, float p_oversample) {
- ERR_FAIL_COND(storage->frame.current_rt);
-
- RasterizerStorageGLES2::RenderTarget *rt = storage->render_target_owner.getornull(p_render_target);
- ERR_FAIL_COND(!rt);
-
- glDisable(GL_BLEND);
-
- // render to our framebuffer
- glBindFramebuffer(GL_FRAMEBUFFER, RasterizerStorageGLES2::system_fbo);
-
- // output our texture
- glActiveTexture(GL_TEXTURE0);
- glBindTexture(GL_TEXTURE_2D, rt->color);
-
- canvas->draw_lens_distortion_rect(p_screen_rect, p_k1, p_k2, p_eye_center, p_oversample);
-
- glBindTexture(GL_TEXTURE_2D, 0);
-}
-
-void RasterizerGLES2::end_frame(bool p_swap_buffers) {
- if (OS::get_singleton()->is_layered_allowed()) {
- if (OS::get_singleton()->get_window_per_pixel_transparency_enabled()) {
-#if (defined WINDOWS_ENABLED) && !(defined UWP_ENABLED)
- Size2 wndsize = OS::get_singleton()->get_layered_buffer_size();
- uint8_t *data = OS::get_singleton()->get_layered_buffer_data();
- if (data) {
- glReadPixels(0, 0, wndsize.x, wndsize.y, GL_BGRA, GL_UNSIGNED_BYTE, data);
- OS::get_singleton()->swap_layered_buffer();
-
- return;
- }
-#endif
- } else {
- //clear alpha
- glColorMask(false, false, false, true);
- glClearColor(0, 0, 0, 1);
- glClear(GL_COLOR_BUFFER_BIT);
- glColorMask(true, true, true, true);
- }
- }
-
- if (p_swap_buffers)
- OS::get_singleton()->swap_buffers();
- else
- glFinish();
-}
-
-void RasterizerGLES2::finalize() {
-}
-
-Rasterizer *RasterizerGLES2::_create_current() {
- return memnew(RasterizerGLES2);
-}
-
-void RasterizerGLES2::make_current() {
- _create_func = _create_current;
-}
-
-void RasterizerGLES2::register_config() {
-}
-
-RasterizerGLES2::RasterizerGLES2() {
- storage = memnew(RasterizerStorageGLES2);
- canvas = memnew(RasterizerCanvasGLES2);
- scene = memnew(RasterizerSceneGLES2);
- canvas->storage = storage;
- canvas->scene_render = scene;
- storage->canvas = canvas;
- scene->storage = storage;
- storage->scene = scene;
-
- time_total = 0;
-}
-
-RasterizerGLES2::~RasterizerGLES2() {
- memdelete(storage);
- memdelete(canvas);
-}
diff --git a/drivers/gles2/rasterizer_gles2.h b/drivers/gles2/rasterizer_gles2.h
deleted file mode 100644
index e9bef31d1e..0000000000
--- a/drivers/gles2/rasterizer_gles2.h
+++ /dev/null
@@ -1,75 +0,0 @@
-/*************************************************************************/
-/* rasterizer_gles2.h */
-/*************************************************************************/
-/* This file is part of: */
-/* GODOT ENGINE */
-/* https://godotengine.org */
-/*************************************************************************/
-/* Copyright (c) 2007-2020 Juan Linietsky, Ariel Manzur. */
-/* Copyright (c) 2014-2020 Godot Engine contributors (cf. AUTHORS.md). */
-/* */
-/* Permission is hereby granted, free of charge, to any person obtaining */
-/* a copy of this software and associated documentation files (the */
-/* "Software"), to deal in the Software without restriction, including */
-/* without limitation the rights to use, copy, modify, merge, publish, */
-/* distribute, sublicense, and/or sell copies of the Software, and to */
-/* permit persons to whom the Software is furnished to do so, subject to */
-/* the following conditions: */
-/* */
-/* The above copyright notice and this permission notice shall be */
-/* included in all copies or substantial portions of the Software. */
-/* */
-/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
-/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
-/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.*/
-/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
-/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
-/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
-/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
-/*************************************************************************/
-
-#ifndef RASTERIZERGLES2_H
-#define RASTERIZERGLES2_H
-
-#include "rasterizer_canvas_gles2.h"
-#include "rasterizer_scene_gles2.h"
-#include "rasterizer_storage_gles2.h"
-#include "servers/rendering/rasterizer.h"
-
-class RasterizerGLES2 : public Rasterizer {
- static Rasterizer *_create_current();
-
- RasterizerStorageGLES2 *storage;
- RasterizerCanvasGLES2 *canvas;
- RasterizerSceneGLES2 *scene;
-
- double time_total;
-
-public:
- virtual RasterizerStorage *get_storage();
- virtual RasterizerCanvas *get_canvas();
- virtual RasterizerScene *get_scene();
-
- virtual void set_boot_image(const Ref<Image> &p_image, const Color &p_color, bool p_scale, bool p_use_filter = true);
-
- virtual void initialize();
- virtual void begin_frame(double frame_step);
- virtual void set_current_render_target(RID p_render_target);
- virtual void restore_render_target(bool p_3d_was_drawn);
- virtual void clear_render_target(const Color &p_color);
- virtual void blit_render_target_to_screen(RID p_render_target, const Rect2 &p_screen_rect, int p_screen = 0);
- virtual void output_lens_distorted_to_screen(RID p_render_target, const Rect2 &p_screen_rect, float p_k1, float p_k2, const Vector2 &p_eye_center, float p_oversample);
- virtual void end_frame(bool p_swap_buffers);
- virtual void finalize();
-
- static Error is_viable();
- static void make_current();
- static void register_config();
-
- virtual bool is_low_end() const { return true; }
-
- RasterizerGLES2();
- ~RasterizerGLES2();
-};
-
-#endif // RASTERIZERGLES2_H
diff --git a/drivers/gles2/rasterizer_scene_gles2.cpp b/drivers/gles2/rasterizer_scene_gles2.cpp
deleted file mode 100644
index c66506f182..0000000000
--- a/drivers/gles2/rasterizer_scene_gles2.cpp
+++ /dev/null
@@ -1,3982 +0,0 @@
-/*************************************************************************/
-/* rasterizer_scene_gles2.cpp */
-/*************************************************************************/
-/* This file is part of: */
-/* GODOT ENGINE */
-/* https://godotengine.org */
-/*************************************************************************/
-/* Copyright (c) 2007-2020 Juan Linietsky, Ariel Manzur. */
-/* Copyright (c) 2014-2020 Godot Engine contributors (cf. AUTHORS.md). */
-/* */
-/* Permission is hereby granted, free of charge, to any person obtaining */
-/* a copy of this software and associated documentation files (the */
-/* "Software"), to deal in the Software without restriction, including */
-/* without limitation the rights to use, copy, modify, merge, publish, */
-/* distribute, sublicense, and/or sell copies of the Software, and to */
-/* permit persons to whom the Software is furnished to do so, subject to */
-/* the following conditions: */
-/* */
-/* The above copyright notice and this permission notice shall be */
-/* included in all copies or substantial portions of the Software. */
-/* */
-/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
-/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
-/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.*/
-/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
-/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
-/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
-/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
-/*************************************************************************/
-
-#include "rasterizer_scene_gles2.h"
-
-#include "core/math/math_funcs.h"
-#include "core/math/transform.h"
-#include "core/os/os.h"
-#include "core/project_settings.h"
-#include "core/vmap.h"
-#include "rasterizer_canvas_gles2.h"
-#include "servers/camera/camera_feed.h"
-#include "servers/rendering/rendering_server_raster.h"
-
-#ifndef GLES_OVER_GL
-#define glClearDepth glClearDepthf
-#endif
-
-#ifndef GLES_OVER_GL
-#ifdef IPHONE_ENABLED
-#include <OpenGLES/ES2/glext.h>
-//void *glResolveMultisampleFramebufferAPPLE;
-
-#define GL_READ_FRAMEBUFFER 0x8CA8
-#define GL_DRAW_FRAMEBUFFER 0x8CA9
-#endif
-#endif
-
-#if !defined(GLES_OVER_GL)
-#define GL_TEXTURE_2D_ARRAY 0x8C1A
-#define GL_TEXTURE_3D 0x806F
-#endif
-
-static const GLenum _cube_side_enum[6] = {
-
- GL_TEXTURE_CUBE_MAP_NEGATIVE_X,
- GL_TEXTURE_CUBE_MAP_POSITIVE_X,
- GL_TEXTURE_CUBE_MAP_NEGATIVE_Y,
- GL_TEXTURE_CUBE_MAP_POSITIVE_Y,
- GL_TEXTURE_CUBE_MAP_NEGATIVE_Z,
- GL_TEXTURE_CUBE_MAP_POSITIVE_Z,
-
-};
-
-/* SHADOW ATLAS API */
-
-RID RasterizerSceneGLES2::shadow_atlas_create() {
- ShadowAtlas *shadow_atlas = memnew(ShadowAtlas);
- shadow_atlas->fbo = 0;
- shadow_atlas->depth = 0;
- shadow_atlas->color = 0;
- shadow_atlas->size = 0;
- shadow_atlas->smallest_subdiv = 0;
-
- for (int i = 0; i < 4; i++) {
- shadow_atlas->size_order[i] = i;
- }
-
- return shadow_atlas_owner.make_rid(shadow_atlas);
-}
-
-void RasterizerSceneGLES2::shadow_atlas_set_size(RID p_atlas, int p_size) {
- ShadowAtlas *shadow_atlas = shadow_atlas_owner.getornull(p_atlas);
- ERR_FAIL_COND(!shadow_atlas);
- ERR_FAIL_COND(p_size < 0);
-
- p_size = next_power_of_2(p_size);
-
- if (p_size == shadow_atlas->size)
- return;
-
- // erase the old atlast
- if (shadow_atlas->fbo) {
- if (storage->config.use_rgba_3d_shadows) {
- glDeleteRenderbuffers(1, &shadow_atlas->depth);
- } else {
- glDeleteTextures(1, &shadow_atlas->depth);
- }
- glDeleteFramebuffers(1, &shadow_atlas->fbo);
- if (shadow_atlas->color) {
- glDeleteTextures(1, &shadow_atlas->color);
- }
-
- shadow_atlas->fbo = 0;
- shadow_atlas->depth = 0;
- shadow_atlas->color = 0;
- }
-
- // erase shadow atlast references from lights
- for (Map<RID, uint32_t>::Element *E = shadow_atlas->shadow_owners.front(); E; E = E->next()) {
- LightInstance *li = light_instance_owner.getornull(E->key());
- ERR_CONTINUE(!li);
- li->shadow_atlases.erase(p_atlas);
- }
-
- shadow_atlas->shadow_owners.clear();
-
- shadow_atlas->size = p_size;
-
- if (shadow_atlas->size) {
- glGenFramebuffers(1, &shadow_atlas->fbo);
- glBindFramebuffer(GL_FRAMEBUFFER, shadow_atlas->fbo);
-
- // create a depth texture
- glActiveTexture(GL_TEXTURE0);
-
- if (storage->config.use_rgba_3d_shadows) {
- //maximum compatibility, renderbuffer and RGBA shadow
- glGenRenderbuffers(1, &shadow_atlas->depth);
- glBindRenderbuffer(GL_RENDERBUFFER, shadow_atlas->depth);
- glRenderbufferStorage(GL_RENDERBUFFER, storage->config.depth_internalformat, shadow_atlas->size, shadow_atlas->size);
- glFramebufferRenderbuffer(GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, GL_RENDERBUFFER, shadow_atlas->depth);
-
- glGenTextures(1, &shadow_atlas->color);
- glBindTexture(GL_TEXTURE_2D, shadow_atlas->color);
- glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, shadow_atlas->size, shadow_atlas->size, 0, GL_RGBA, GL_UNSIGNED_BYTE, nullptr);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
- glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);
- glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);
- glFramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, shadow_atlas->color, 0);
- } else {
- //just depth texture
- glGenTextures(1, &shadow_atlas->depth);
- glBindTexture(GL_TEXTURE_2D, shadow_atlas->depth);
- glTexImage2D(GL_TEXTURE_2D, 0, storage->config.depth_internalformat, shadow_atlas->size, shadow_atlas->size, 0, GL_DEPTH_COMPONENT, storage->config.depth_type, nullptr);
-
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);
-
- glFramebufferTexture2D(GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, GL_TEXTURE_2D, shadow_atlas->depth, 0);
- }
- glViewport(0, 0, shadow_atlas->size, shadow_atlas->size);
-
- glDepthMask(GL_TRUE);
-
- glClearDepth(0.0f);
- glClear(GL_DEPTH_BUFFER_BIT);
-
- glBindFramebuffer(GL_FRAMEBUFFER, 0);
- }
-}
-
-void RasterizerSceneGLES2::shadow_atlas_set_quadrant_subdivision(RID p_atlas, int p_quadrant, int p_subdivision) {
- ShadowAtlas *shadow_atlas = shadow_atlas_owner.getornull(p_atlas);
- ERR_FAIL_COND(!shadow_atlas);
- ERR_FAIL_INDEX(p_quadrant, 4);
- ERR_FAIL_INDEX(p_subdivision, 16384);
-
- uint32_t subdiv = next_power_of_2(p_subdivision);
- if (subdiv & 0xaaaaaaaa) { // sqrt(subdiv) must be integer
- subdiv <<= 1;
- }
-
- subdiv = int(Math::sqrt((float)subdiv));
-
- if (shadow_atlas->quadrants[p_quadrant].shadows.size() == (int)subdiv)
- return;
-
- // erase all data from the quadrant
- for (int i = 0; i < shadow_atlas->quadrants[p_quadrant].shadows.size(); i++) {
- if (shadow_atlas->quadrants[p_quadrant].shadows[i].owner.is_valid()) {
- shadow_atlas->shadow_owners.erase(shadow_atlas->quadrants[p_quadrant].shadows[i].owner);
-
- LightInstance *li = light_instance_owner.getornull(shadow_atlas->quadrants[p_quadrant].shadows[i].owner);
- ERR_CONTINUE(!li);
- li->shadow_atlases.erase(p_atlas);
- }
- }
-
- shadow_atlas->quadrants[p_quadrant].shadows.resize(0);
- shadow_atlas->quadrants[p_quadrant].shadows.resize(subdiv);
- shadow_atlas->quadrants[p_quadrant].subdivision = subdiv;
-
- // cache the smallest subdivision for faster allocations
-
- shadow_atlas->smallest_subdiv = 1 << 30;
-
- for (int i = 0; i < 4; i++) {
- if (shadow_atlas->quadrants[i].subdivision) {
- shadow_atlas->smallest_subdiv = MIN(shadow_atlas->smallest_subdiv, shadow_atlas->quadrants[i].subdivision);
- }
- }
-
- if (shadow_atlas->smallest_subdiv == 1 << 30) {
- shadow_atlas->smallest_subdiv = 0;
- }
-
- // re-sort the quadrants
-
- int swaps = 0;
- do {
- swaps = 0;
-
- for (int i = 0; i < 3; i++) {
- if (shadow_atlas->quadrants[shadow_atlas->size_order[i]].subdivision < shadow_atlas->quadrants[shadow_atlas->size_order[i + 1]].subdivision) {
- SWAP(shadow_atlas->size_order[i], shadow_atlas->size_order[i + 1]);
- swaps++;
- }
- }
-
- } while (swaps > 0);
-}
-
-bool RasterizerSceneGLES2::_shadow_atlas_find_shadow(ShadowAtlas *shadow_atlas, int *p_in_quadrants, int p_quadrant_count, int p_current_subdiv, uint64_t p_tick, int &r_quadrant, int &r_shadow) {
- for (int i = p_quadrant_count - 1; i >= 0; i--) {
- int qidx = p_in_quadrants[i];
-
- if (shadow_atlas->quadrants[qidx].subdivision == (uint32_t)p_current_subdiv) {
- return false;
- }
-
- // look for an empty space
-
- int sc = shadow_atlas->quadrants[qidx].shadows.size();
-
- ShadowAtlas::Quadrant::Shadow *sarr = shadow_atlas->quadrants[qidx].shadows.ptrw();
-
- int found_free_idx = -1; // found a free one
- int found_used_idx = -1; // found an existing one, must steal it
- uint64_t min_pass = 0; // pass of the existing one, try to use the least recently
-
- for (int j = 0; j < sc; j++) {
- if (!sarr[j].owner.is_valid()) {
- found_free_idx = j;
- break;
- }
-
- LightInstance *sli = light_instance_owner.getornull(sarr[j].owner);
- ERR_CONTINUE(!sli);
-
- if (sli->last_scene_pass != scene_pass) {
- // was just allocated, don't kill it so soon, wait a bit...
-
- if (p_tick - sarr[j].alloc_tick < shadow_atlas_realloc_tolerance_msec) {
- continue;
- }
-
- if (found_used_idx == -1 || sli->last_scene_pass < min_pass) {
- found_used_idx = j;
- min_pass = sli->last_scene_pass;
- }
- }
- }
-
- if (found_free_idx == -1 && found_used_idx == -1) {
- continue; // nothing found
- }
-
- if (found_free_idx == -1 && found_used_idx != -1) {
- found_free_idx = found_used_idx;
- }
-
- r_quadrant = qidx;
- r_shadow = found_free_idx;
-
- return true;
- }
-
- return false;
-}
-
-bool RasterizerSceneGLES2::shadow_atlas_update_light(RID p_atlas, RID p_light_intance, float p_coverage, uint64_t p_light_version) {
- ShadowAtlas *shadow_atlas = shadow_atlas_owner.getornull(p_atlas);
- ERR_FAIL_COND_V(!shadow_atlas, false);
-
- LightInstance *li = light_instance_owner.getornull(p_light_intance);
- ERR_FAIL_COND_V(!li, false);
-
- if (shadow_atlas->size == 0 || shadow_atlas->smallest_subdiv == 0) {
- return false;
- }
-
- uint32_t quad_size = shadow_atlas->size >> 1;
- int desired_fit = MIN(quad_size / shadow_atlas->smallest_subdiv, next_power_of_2(quad_size * p_coverage));
-
- int valid_quadrants[4];
- int valid_quadrant_count = 0;
- int best_size = -1;
- int best_subdiv = -1;
-
- for (int i = 0; i < 4; i++) {
- int q = shadow_atlas->size_order[i];
- int sd = shadow_atlas->quadrants[q].subdivision;
-
- if (sd == 0) {
- continue;
- }
-
- int max_fit = quad_size / sd;
-
- if (best_size != -1 && max_fit > best_size) {
- break; // what we asked for is bigger than this.
- }
-
- valid_quadrants[valid_quadrant_count] = q;
- valid_quadrant_count++;
-
- best_subdiv = sd;
-
- if (max_fit >= desired_fit) {
- best_size = max_fit;
- }
- }
-
- ERR_FAIL_COND_V(valid_quadrant_count == 0, false); // no suitable block available
-
- uint64_t tick = OS::get_singleton()->get_ticks_msec();
-
- if (shadow_atlas->shadow_owners.has(p_light_intance)) {
- // light was already known!
-
- uint32_t key = shadow_atlas->shadow_owners[p_light_intance];
- uint32_t q = (key >> ShadowAtlas::QUADRANT_SHIFT) & 0x3;
- uint32_t s = key & ShadowAtlas::SHADOW_INDEX_MASK;
-
- bool should_realloc = shadow_atlas->quadrants[q].subdivision != (uint32_t)best_subdiv && (shadow_atlas->quadrants[q].shadows[s].alloc_tick - tick > shadow_atlas_realloc_tolerance_msec);
-
- bool should_redraw = shadow_atlas->quadrants[q].shadows[s].version != p_light_version;
-
- if (!should_realloc) {
- shadow_atlas->quadrants[q].shadows.write[s].version = p_light_version;
- return should_redraw;
- }
-
- int new_quadrant;
- int new_shadow;
-
- // find a better place
-
- if (_shadow_atlas_find_shadow(shadow_atlas, valid_quadrants, valid_quadrant_count, shadow_atlas->quadrants[q].subdivision, tick, new_quadrant, new_shadow)) {
- // found a better place
-
- ShadowAtlas::Quadrant::Shadow *sh = &shadow_atlas->quadrants[new_quadrant].shadows.write[new_shadow];
- if (sh->owner.is_valid()) {
- // it is take but invalid, so we can take it
-
- shadow_atlas->shadow_owners.erase(sh->owner);
- LightInstance *sli = light_instance_owner.getornull(sh->owner);
- sli->shadow_atlases.erase(p_atlas);
- }
-
- // erase previous
- shadow_atlas->quadrants[q].shadows.write[s].version = 0;
- shadow_atlas->quadrants[q].shadows.write[s].owner = RID();
-
- sh->owner = p_light_intance;
- sh->alloc_tick = tick;
- sh->version = p_light_version;
- li->shadow_atlases.insert(p_atlas);
-
- // make a new key
- key = new_quadrant << ShadowAtlas::QUADRANT_SHIFT;
- key |= new_shadow;
-
- // update it in the map
- shadow_atlas->shadow_owners[p_light_intance] = key;
-
- // make it dirty, so we redraw
- return true;
- }
-
- // no better place found, so we keep the current place
-
- shadow_atlas->quadrants[q].shadows.write[s].version = p_light_version;
-
- return should_redraw;
- }
-
- int new_quadrant;
- int new_shadow;
-
- if (_shadow_atlas_find_shadow(shadow_atlas, valid_quadrants, valid_quadrant_count, -1, tick, new_quadrant, new_shadow)) {
- // found a better place
-
- ShadowAtlas::Quadrant::Shadow *sh = &shadow_atlas->quadrants[new_quadrant].shadows.write[new_shadow];
- if (sh->owner.is_valid()) {
- // it is take but invalid, so we can take it
-
- shadow_atlas->shadow_owners.erase(sh->owner);
- LightInstance *sli = light_instance_owner.getornull(sh->owner);
- sli->shadow_atlases.erase(p_atlas);
- }
-
- sh->owner = p_light_intance;
- sh->alloc_tick = tick;
- sh->version = p_light_version;
- li->shadow_atlases.insert(p_atlas);
-
- // make a new key
- uint32_t key = new_quadrant << ShadowAtlas::QUADRANT_SHIFT;
- key |= new_shadow;
-
- // update it in the map
- shadow_atlas->shadow_owners[p_light_intance] = key;
-
- // make it dirty, so we redraw
- return true;
- }
-
- return false;
-}
-
-void RasterizerSceneGLES2::set_directional_shadow_count(int p_count) {
- directional_shadow.light_count = p_count;
- directional_shadow.current_light = 0;
-}
-
-int RasterizerSceneGLES2::get_directional_light_shadow_size(RID p_light_intance) {
- ERR_FAIL_COND_V(directional_shadow.light_count == 0, 0);
-
- int shadow_size;
-
- if (directional_shadow.light_count == 1) {
- shadow_size = directional_shadow.size;
- } else {
- shadow_size = directional_shadow.size / 2; //more than 4 not supported anyway
- }
-
- LightInstance *light_instance = light_instance_owner.getornull(p_light_intance);
- ERR_FAIL_COND_V(!light_instance, 0);
-
- switch (light_instance->light_ptr->directional_shadow_mode) {
- case RS::LIGHT_DIRECTIONAL_SHADOW_ORTHOGONAL:
- break; //none
- case RS::LIGHT_DIRECTIONAL_SHADOW_PARALLEL_2_SPLITS:
- case RS::LIGHT_DIRECTIONAL_SHADOW_PARALLEL_4_SPLITS:
- shadow_size /= 2;
- break;
- }
-
- return shadow_size;
-}
-
-//////////////////////////////////////////////////////
-
-RID RasterizerSceneGLES2::reflection_atlas_create() {
- return RID();
-}
-
-void RasterizerSceneGLES2::reflection_atlas_set_size(RID p_ref_atlas, int p_size) {
-}
-
-void RasterizerSceneGLES2::reflection_atlas_set_subdivision(RID p_ref_atlas, int p_subdiv) {
-}
-
-////////////////////////////////////////////////////
-
-RID RasterizerSceneGLES2::reflection_probe_instance_create(RID p_probe) {
- RasterizerStorageGLES2::ReflectionProbe *probe = storage->reflection_probe_owner.getornull(p_probe);
- ERR_FAIL_COND_V(!probe, RID());
-
- ReflectionProbeInstance *rpi = memnew(ReflectionProbeInstance);
-
- rpi->probe_ptr = probe;
- rpi->self = reflection_probe_instance_owner.make_rid(rpi);
- rpi->probe = p_probe;
- rpi->reflection_atlas_index = -1;
- rpi->render_step = -1;
- rpi->last_pass = 0;
- rpi->current_resolution = 0;
- rpi->dirty = true;
-
- rpi->index = 0;
-
- for (int i = 0; i < 6; i++) {
- glGenFramebuffers(1, &rpi->fbo[i]);
- glGenTextures(1, &rpi->color[i]);
- }
-
- glGenRenderbuffers(1, &rpi->depth);
-
- rpi->cubemap = 0;
- //glGenTextures(1, &rpi->cubemap);
-
- return rpi->self;
-}
-
-void RasterizerSceneGLES2::reflection_probe_instance_set_transform(RID p_instance, const Transform &p_transform) {
- ReflectionProbeInstance *rpi = reflection_probe_instance_owner.getornull(p_instance);
- ERR_FAIL_COND(!rpi);
- rpi->transform = p_transform;
-}
-
-void RasterizerSceneGLES2::reflection_probe_release_atlas_index(RID p_instance) {
-}
-
-bool RasterizerSceneGLES2::reflection_probe_instance_needs_redraw(RID p_instance) {
- const ReflectionProbeInstance *rpi = reflection_probe_instance_owner.getornull(p_instance);
- ERR_FAIL_COND_V(!rpi, false);
-
- bool need_redraw = rpi->probe_ptr->resolution != rpi->current_resolution || rpi->dirty || rpi->probe_ptr->update_mode == RS::REFLECTION_PROBE_UPDATE_ALWAYS;
- rpi->dirty = false;
- return need_redraw;
-}
-
-bool RasterizerSceneGLES2::reflection_probe_instance_has_reflection(RID p_instance) {
- return true;
-}
-
-bool RasterizerSceneGLES2::reflection_probe_instance_begin_render(RID p_instance, RID p_reflection_atlas) {
- ReflectionProbeInstance *rpi = reflection_probe_instance_owner.getornull(p_instance);
- ERR_FAIL_COND_V(!rpi, false);
-
- rpi->render_step = 0;
-
- if (rpi->probe_ptr->resolution != rpi->current_resolution) {
- //update cubemap if resolution changed
- int size = rpi->probe_ptr->resolution;
- rpi->current_resolution = size;
-
- GLenum internal_format = GL_RGB;
- GLenum format = GL_RGB;
- GLenum type = GL_UNSIGNED_BYTE;
-
- glActiveTexture(GL_TEXTURE0);
-
- glBindRenderbuffer(GL_RENDERBUFFER, rpi->depth);
- glRenderbufferStorage(GL_RENDERBUFFER, storage->config.depth_internalformat, size, size);
-
- if (rpi->cubemap != 0) {
- glDeleteTextures(1, &rpi->cubemap);
- }
-
- glGenTextures(1, &rpi->cubemap);
- glBindTexture(GL_TEXTURE_CUBE_MAP, rpi->cubemap);
-
- // Mobile hardware (PowerVR specially) prefers this approach,
- // the previous approach with manual lod levels kills the game.
- for (int i = 0; i < 6; i++) {
- glTexImage2D(GL_TEXTURE_CUBE_MAP_POSITIVE_X + i, 0, internal_format, size, size, 0, format, type, nullptr);
- }
-
- glGenerateMipmap(GL_TEXTURE_CUBE_MAP);
-
- // Generate framebuffers for rendering
- for (int i = 0; i < 6; i++) {
- glBindFramebuffer(GL_FRAMEBUFFER, rpi->fbo[i]);
- glBindTexture(GL_TEXTURE_2D, rpi->color[i]);
- glTexImage2D(GL_TEXTURE_2D, 0, internal_format, size, size, 0, format, type, nullptr);
- glFramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, rpi->color[i], 0);
- glFramebufferRenderbuffer(GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, GL_RENDERBUFFER, rpi->depth);
- GLenum status = glCheckFramebufferStatus(GL_FRAMEBUFFER);
- ERR_CONTINUE(status != GL_FRAMEBUFFER_COMPLETE);
- }
-
- glTexParameterf(GL_TEXTURE_CUBE_MAP, GL_TEXTURE_MIN_FILTER, GL_LINEAR_MIPMAP_LINEAR);
- glTexParameterf(GL_TEXTURE_CUBE_MAP, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
- glTexParameterf(GL_TEXTURE_CUBE_MAP, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);
- glTexParameterf(GL_TEXTURE_CUBE_MAP, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);
-
- glBindFramebuffer(GL_FRAMEBUFFER, RasterizerStorageGLES2::system_fbo);
- }
-
- return true;
-}
-
-bool RasterizerSceneGLES2::reflection_probe_instance_postprocess_step(RID p_instance) {
- ReflectionProbeInstance *rpi = reflection_probe_instance_owner.getornull(p_instance);
- ERR_FAIL_COND_V(!rpi, false);
- ERR_FAIL_COND_V(rpi->current_resolution == 0, false);
-
- int size = rpi->probe_ptr->resolution;
-
- {
- glBindBuffer(GL_ARRAY_BUFFER, 0);
- glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, 0);
- glDisable(GL_CULL_FACE);
- glDisable(GL_DEPTH_TEST);
- glDisable(GL_SCISSOR_TEST);
- glDisable(GL_BLEND);
- glDepthMask(GL_FALSE);
-
- for (int i = 0; i < RS::ARRAY_MAX - 1; i++) {
- glDisableVertexAttribArray(i);
- }
- }
-
- glActiveTexture(GL_TEXTURE0);
- glBindTexture(GL_TEXTURE_CUBE_MAP, rpi->cubemap);
- glTexParameterf(GL_TEXTURE_CUBE_MAP, GL_TEXTURE_MIN_FILTER, GL_LINEAR); //use linear, no mipmaps so it does not read from what is being written to
-
- //first of all, copy rendered textures to cubemap
- for (int i = 0; i < 6; i++) {
- glBindFramebuffer(GL_FRAMEBUFFER, rpi->fbo[i]);
- glViewport(0, 0, size, size);
- glCopyTexSubImage2D(_cube_side_enum[i], 0, 0, 0, 0, 0, size, size);
- }
- //do filtering
- //vdc cache
- glActiveTexture(GL_TEXTURE1);
- glBindTexture(GL_TEXTURE_2D, storage->resources.radical_inverse_vdc_cache_tex);
-
- // now render to the framebuffer, mipmap level for mipmap level
- int lod = 1;
-
- size >>= 1;
- int mipmaps = 6;
-
- storage->shaders.cubemap_filter.set_conditional(CubemapFilterShaderGLES2::USE_SOURCE_PANORAMA, false);
- storage->shaders.cubemap_filter.bind();
-
- glBindFramebuffer(GL_FRAMEBUFFER, storage->resources.mipmap_blur_fbo);
-
- //blur
- while (size >= 1) {
- glActiveTexture(GL_TEXTURE3);
- glBindTexture(GL_TEXTURE_2D, storage->resources.mipmap_blur_color);
- glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, size, size, 0, GL_RGB, GL_UNSIGNED_BYTE, nullptr);
- glFramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, storage->resources.mipmap_blur_color, 0);
- glViewport(0, 0, size, size);
- glActiveTexture(GL_TEXTURE0);
-
- for (int i = 0; i < 6; i++) {
- storage->bind_quad_array();
- storage->shaders.cubemap_filter.set_uniform(CubemapFilterShaderGLES2::FACE_ID, i);
- float roughness = CLAMP(lod / (float)(mipmaps - 1), 0, 1);
- storage->shaders.cubemap_filter.set_uniform(CubemapFilterShaderGLES2::ROUGHNESS, roughness);
- storage->shaders.cubemap_filter.set_uniform(CubemapFilterShaderGLES2::Z_FLIP, false);
-
- glDrawArrays(GL_TRIANGLE_FAN, 0, 4);
- glCopyTexSubImage2D(_cube_side_enum[i], lod, 0, 0, 0, 0, size, size);
- }
-
- size >>= 1;
-
- lod++;
- }
-
- // restore ranges
- glActiveTexture(GL_TEXTURE0);
- glTexParameterf(GL_TEXTURE_CUBE_MAP, GL_TEXTURE_MIN_FILTER, GL_LINEAR_MIPMAP_LINEAR);
- glBindTexture(GL_TEXTURE_2D, 0);
- glActiveTexture(GL_TEXTURE3); //back to panorama
- glBindTexture(GL_TEXTURE_2D, 0);
- glActiveTexture(GL_TEXTURE1);
- glBindTexture(GL_TEXTURE_2D, 0);
- glBindFramebuffer(GL_FRAMEBUFFER, RasterizerStorageGLES2::system_fbo);
-
- return true;
-}
-
-/* ENVIRONMENT API */
-
-RID RasterizerSceneGLES2::environment_create() {
- Environment *env = memnew(Environment);
-
- return environment_owner.make_rid(env);
-}
-
-void RasterizerSceneGLES2::environment_set_background(RID p_env, RS::EnvironmentBG p_bg) {
- Environment *env = environment_owner.getornull(p_env);
- ERR_FAIL_COND(!env);
- env->bg_mode = p_bg;
-}
-
-void RasterizerSceneGLES2::environment_set_sky(RID p_env, RID p_sky) {
- Environment *env = environment_owner.getornull(p_env);
- ERR_FAIL_COND(!env);
-
- env->sky = p_sky;
-}
-
-void RasterizerSceneGLES2::environment_set_sky_custom_fov(RID p_env, float p_scale) {
- Environment *env = environment_owner.getornull(p_env);
- ERR_FAIL_COND(!env);
-
- env->sky_custom_fov = p_scale;
-}
-
-void RasterizerSceneGLES2::environment_set_sky_orientation(RID p_env, const Basis &p_orientation) {
- Environment *env = environment_owner.getornull(p_env);
- ERR_FAIL_COND(!env);
-
- env->sky_orientation = p_orientation;
-}
-
-void RasterizerSceneGLES2::environment_set_bg_color(RID p_env, const Color &p_color) {
- Environment *env = environment_owner.getornull(p_env);
- ERR_FAIL_COND(!env);
-
- env->bg_color = p_color;
-}
-
-void RasterizerSceneGLES2::environment_set_bg_energy(RID p_env, float p_energy) {
- Environment *env = environment_owner.getornull(p_env);
- ERR_FAIL_COND(!env);
-
- env->bg_energy = p_energy;
-}
-
-void RasterizerSceneGLES2::environment_set_canvas_max_layer(RID p_env, int p_max_layer) {
- Environment *env = environment_owner.getornull(p_env);
- ERR_FAIL_COND(!env);
-
- env->canvas_max_layer = p_max_layer;
-}
-
-void RasterizerSceneGLES2::environment_set_ambient_light(RID p_env, const Color &p_color, float p_energy, float p_sky_contribution) {
- Environment *env = environment_owner.getornull(p_env);
- ERR_FAIL_COND(!env);
-
- env->ambient_color = p_color;
- env->ambient_energy = p_energy;
- env->ambient_sky_contribution = p_sky_contribution;
-}
-
-void RasterizerSceneGLES2::environment_set_camera_feed_id(RID p_env, int p_camera_feed_id) {
- Environment *env = environment_owner.getornull(p_env);
- ERR_FAIL_COND(!env);
-
- env->camera_feed_id = p_camera_feed_id;
-}
-
-void RasterizerSceneGLES2::environment_set_dof_blur_far(RID p_env, bool p_enable, float p_distance, float p_transition, float p_amount, RS::EnvironmentDOFBlurQuality p_quality) {
- Environment *env = environment_owner.getornull(p_env);
- ERR_FAIL_COND(!env);
-
- env->dof_blur_far_enabled = p_enable;
- env->dof_blur_far_distance = p_distance;
- env->dof_blur_far_transition = p_transition;
- env->dof_blur_far_amount = p_amount;
- env->dof_blur_far_quality = p_quality;
-}
-
-void RasterizerSceneGLES2::environment_set_dof_blur_near(RID p_env, bool p_enable, float p_distance, float p_transition, float p_amount, RS::EnvironmentDOFBlurQuality p_quality) {
- Environment *env = environment_owner.getornull(p_env);
- ERR_FAIL_COND(!env);
-
- env->dof_blur_near_enabled = p_enable;
- env->dof_blur_near_distance = p_distance;
- env->dof_blur_near_transition = p_transition;
- env->dof_blur_near_amount = p_amount;
- env->dof_blur_near_quality = p_quality;
-}
-
-void RasterizerSceneGLES2::environment_set_glow(RID p_env, bool p_enable, int p_level_flags, float p_intensity, float p_strength, float p_bloom_threshold, RS::EnvironmentGlowBlendMode p_blend_mode, float p_hdr_bleed_threshold, float p_hdr_bleed_scale, float p_hdr_luminance_cap, bool p_bicubic_upscale) {
- Environment *env = environment_owner.getornull(p_env);
- ERR_FAIL_COND(!env);
-
- env->glow_enabled = p_enable;
- env->glow_levels = p_level_flags;
- env->glow_intensity = p_intensity;
- env->glow_strength = p_strength;
- env->glow_bloom = p_bloom_threshold;
- env->glow_blend_mode = p_blend_mode;
- env->glow_hdr_bleed_threshold = p_hdr_bleed_threshold;
- env->glow_hdr_bleed_scale = p_hdr_bleed_scale;
- env->glow_hdr_luminance_cap = p_hdr_luminance_cap;
- env->glow_bicubic_upscale = p_bicubic_upscale;
-}
-
-void RasterizerSceneGLES2::environment_set_fog(RID p_env, bool p_enable, float p_begin, float p_end, RID p_gradient_texture) {
- Environment *env = environment_owner.getornull(p_env);
- ERR_FAIL_COND(!env);
-}
-
-void RasterizerSceneGLES2::environment_set_ssr(RID p_env, bool p_enable, int p_max_steps, float p_fade_in, float p_fade_out, float p_depth_tolerance, bool p_roughness) {
- Environment *env = environment_owner.getornull(p_env);
- ERR_FAIL_COND(!env);
-}
-
-void RasterizerSceneGLES2::environment_set_ssao(RID p_env, bool p_enable, float p_radius, float p_intensity, float p_radius2, float p_intensity2, float p_bias, float p_light_affect, float p_ao_channel_affect, const Color &p_color, RS::EnvironmentSSAOQuality p_quality, RenderingServer::EnvironmentSSAOBlur p_blur, float p_bilateral_sharpness) {
- Environment *env = environment_owner.getornull(p_env);
- ERR_FAIL_COND(!env);
-}
-
-void RasterizerSceneGLES2::environment_set_tonemap(RID p_env, RS::EnvironmentToneMapper p_tone_mapper, float p_exposure, float p_white, bool p_auto_exposure, float p_min_luminance, float p_max_luminance, float p_auto_exp_speed, float p_auto_exp_scale) {
- Environment *env = environment_owner.getornull(p_env);
- ERR_FAIL_COND(!env);
-}
-
-void RasterizerSceneGLES2::environment_set_adjustment(RID p_env, bool p_enable, float p_brightness, float p_contrast, float p_saturation, RID p_ramp) {
- Environment *env = environment_owner.getornull(p_env);
- ERR_FAIL_COND(!env);
-
- env->adjustments_enabled = p_enable;
- env->adjustments_brightness = p_brightness;
- env->adjustments_contrast = p_contrast;
- env->adjustments_saturation = p_saturation;
- env->color_correction = p_ramp;
-}
-
-void RasterizerSceneGLES2::environment_set_fog(RID p_env, bool p_enable, const Color &p_color, const Color &p_sun_color, float p_sun_amount) {
- Environment *env = environment_owner.getornull(p_env);
- ERR_FAIL_COND(!env);
-
- env->fog_enabled = p_enable;
- env->fog_color = p_color;
- env->fog_sun_color = p_sun_color;
- env->fog_sun_amount = p_sun_amount;
-}
-
-void RasterizerSceneGLES2::environment_set_fog_depth(RID p_env, bool p_enable, float p_depth_begin, float p_depth_end, float p_depth_curve, bool p_transmit, float p_transmit_curve) {
- Environment *env = environment_owner.getornull(p_env);
- ERR_FAIL_COND(!env);
-
- env->fog_depth_enabled = p_enable;
- env->fog_depth_begin = p_depth_begin;
- env->fog_depth_end = p_depth_end;
- env->fog_depth_curve = p_depth_curve;
- env->fog_transmit_enabled = p_transmit;
- env->fog_transmit_curve = p_transmit_curve;
-}
-
-void RasterizerSceneGLES2::environment_set_fog_height(RID p_env, bool p_enable, float p_min_height, float p_max_height, float p_height_curve) {
- Environment *env = environment_owner.getornull(p_env);
- ERR_FAIL_COND(!env);
-
- env->fog_height_enabled = p_enable;
- env->fog_height_min = p_min_height;
- env->fog_height_max = p_max_height;
- env->fog_height_curve = p_height_curve;
-}
-
-bool RasterizerSceneGLES2::is_environment(RID p_env) {
- return environment_owner.owns(p_env);
-}
-
-RS::EnvironmentBG RasterizerSceneGLES2::environment_get_background(RID p_env) {
- const Environment *env = environment_owner.getornull(p_env);
- ERR_FAIL_COND_V(!env, RS::ENV_BG_MAX);
-
- return env->bg_mode;
-}
-
-int RasterizerSceneGLES2::environment_get_canvas_max_layer(RID p_env) {
- const Environment *env = environment_owner.getornull(p_env);
- ERR_FAIL_COND_V(!env, -1);
-
- return env->canvas_max_layer;
-}
-
-RID RasterizerSceneGLES2::light_instance_create(RID p_light) {
- LightInstance *light_instance = memnew(LightInstance);
-
- light_instance->last_scene_pass = 0;
-
- light_instance->light = p_light;
- light_instance->light_ptr = storage->light_owner.getornull(p_light);
-
- light_instance->light_index = 0xFFFF;
-
- if (!light_instance->light_ptr) {
- memdelete(light_instance);
- ERR_FAIL_V_MSG(RID(), "Condition ' !light_instance->light_ptr ' is true.");
- }
-
- light_instance->self = light_instance_owner.make_rid(light_instance);
-
- return light_instance->self;
-}
-
-void RasterizerSceneGLES2::light_instance_set_transform(RID p_light_instance, const Transform &p_transform) {
- LightInstance *light_instance = light_instance_owner.getornull(p_light_instance);
- ERR_FAIL_COND(!light_instance);
-
- light_instance->transform = p_transform;
-}
-
-void RasterizerSceneGLES2::light_instance_set_shadow_transform(RID p_light_instance, const CameraMatrix &p_projection, const Transform &p_transform, float p_far, float p_split, int p_pass, float p_bias_scale) {
- LightInstance *light_instance = light_instance_owner.getornull(p_light_instance);
- ERR_FAIL_COND(!light_instance);
-
- if (light_instance->light_ptr->type != RS::LIGHT_DIRECTIONAL) {
- p_pass = 0;
- }
-
- ERR_FAIL_INDEX(p_pass, 4);
-
- light_instance->shadow_transform[p_pass].camera = p_projection;
- light_instance->shadow_transform[p_pass].transform = p_transform;
- light_instance->shadow_transform[p_pass].farplane = p_far;
- light_instance->shadow_transform[p_pass].split = p_split;
- light_instance->shadow_transform[p_pass].bias_scale = p_bias_scale;
-}
-
-void RasterizerSceneGLES2::light_instance_mark_visible(RID p_light_instance) {
- LightInstance *light_instance = light_instance_owner.getornull(p_light_instance);
- ERR_FAIL_COND(!light_instance);
-
- light_instance->last_scene_pass = scene_pass;
-}
-
-//////////////////////
-
-RID RasterizerSceneGLES2::gi_probe_instance_create() {
- return RID();
-}
-
-void RasterizerSceneGLES2::gi_probe_instance_set_light_data(RID p_probe, RID p_base, RID p_data) {
-}
-
-void RasterizerSceneGLES2::gi_probe_instance_set_transform_to_data(RID p_probe, const Transform &p_xform) {
-}
-
-void RasterizerSceneGLES2::gi_probe_instance_set_bounds(RID p_probe, const Vector3 &p_bounds) {
-}
-
-////////////////////////////
-////////////////////////////
-////////////////////////////
-
-void RasterizerSceneGLES2::_add_geometry(RasterizerStorageGLES2::Geometry *p_geometry, InstanceBase *p_instance, RasterizerStorageGLES2::GeometryOwner *p_owner, int p_material, bool p_depth_pass, bool p_shadow_pass) {
- RasterizerStorageGLES2::Material *material = nullptr;
- RID material_src;
-
- if (p_instance->material_override.is_valid()) {
- material_src = p_instance->material_override;
- } else if (p_material >= 0) {
- material_src = p_instance->materials[p_material];
- } else {
- material_src = p_geometry->material;
- }
-
- if (material_src.is_valid()) {
- material = storage->material_owner.getornull(material_src);
-
- if (!material->shader || !material->shader->valid) {
- material = nullptr;
- }
- }
-
- if (!material) {
- material = storage->material_owner.getornull(default_material);
- }
-
- ERR_FAIL_COND(!material);
-
- _add_geometry_with_material(p_geometry, p_instance, p_owner, material, p_depth_pass, p_shadow_pass);
-
- while (material->next_pass.is_valid()) {
- material = storage->material_owner.getornull(material->next_pass);
-
- if (!material || !material->shader || !material->shader->valid) {
- break;
- }
-
- _add_geometry_with_material(p_geometry, p_instance, p_owner, material, p_depth_pass, p_shadow_pass);
- }
-}
-
-void RasterizerSceneGLES2::_add_geometry_with_material(RasterizerStorageGLES2::Geometry *p_geometry, InstanceBase *p_instance, RasterizerStorageGLES2::GeometryOwner *p_owner, RasterizerStorageGLES2::Material *p_material, bool p_depth_pass, bool p_shadow_pass) {
- bool has_base_alpha = (p_material->shader->spatial.uses_alpha && !p_material->shader->spatial.uses_alpha_scissor) || p_material->shader->spatial.uses_screen_texture || p_material->shader->spatial.uses_depth_texture;
- bool has_blend_alpha = p_material->shader->spatial.blend_mode != RasterizerStorageGLES2::Shader::Spatial::BLEND_MODE_MIX;
- bool has_alpha = has_base_alpha || has_blend_alpha;
-
- bool mirror = p_instance->mirror;
-
- if (p_material->shader->spatial.cull_mode == RasterizerStorageGLES2::Shader::Spatial::CULL_MODE_DISABLED) {
- mirror = false;
- } else if (p_material->shader->spatial.cull_mode == RasterizerStorageGLES2::Shader::Spatial::CULL_MODE_FRONT) {
- mirror = !mirror;
- }
-
- //if (p_material->shader->spatial.uses_sss) {
- // state.used_sss = true;
- //}
-
- if (p_material->shader->spatial.uses_screen_texture) {
- state.used_screen_texture = true;
- }
-
- if (p_depth_pass) {
- if (has_blend_alpha || p_material->shader->spatial.uses_depth_texture || (has_base_alpha && p_material->shader->spatial.depth_draw_mode != RasterizerStorageGLES2::Shader::Spatial::DEPTH_DRAW_ALPHA_PREPASS))
- return; //bye
-
- if (!p_material->shader->spatial.uses_alpha_scissor && !p_material->shader->spatial.writes_modelview_or_projection && !p_material->shader->spatial.uses_vertex && !p_material->shader->spatial.uses_discard && p_material->shader->spatial.depth_draw_mode != RasterizerStorageGLES2::Shader::Spatial::DEPTH_DRAW_ALPHA_PREPASS) {
- //shader does not use discard and does not write a vertex position, use generic material
- if (p_instance->cast_shadows == RS::SHADOW_CASTING_SETTING_DOUBLE_SIDED) {
- p_material = storage->material_owner.getornull(!p_shadow_pass && p_material->shader->spatial.uses_world_coordinates ? default_worldcoord_material_twosided : default_material_twosided);
- mirror = false;
- } else {
- p_material = storage->material_owner.getornull(!p_shadow_pass && p_material->shader->spatial.uses_world_coordinates ? default_worldcoord_material : default_material);
- }
- }
-
- has_alpha = false;
- }
-
- RenderList::Element *e = (has_alpha || p_material->shader->spatial.no_depth_test) ? render_list.add_alpha_element() : render_list.add_element();
-
- if (!e) {
- return;
- }
-
- e->geometry = p_geometry;
- e->material = p_material;
- e->instance = p_instance;
- e->owner = p_owner;
- e->sort_key = 0;
- e->depth_key = 0;
- e->use_accum = false;
- e->light_index = RenderList::MAX_LIGHTS;
- e->use_accum_ptr = &e->use_accum;
- e->instancing = (e->instance->base_type == RS::INSTANCE_MULTIMESH) ? 1 : 0;
- e->front_facing = false;
-
- if (e->geometry->last_pass != render_pass) {
- e->geometry->last_pass = render_pass;
- e->geometry->index = current_geometry_index++;
- }
-
- e->geometry_index = e->geometry->index;
-
- if (e->material->last_pass != render_pass) {
- e->material->last_pass = render_pass;
- e->material->index = current_material_index++;
-
- if (e->material->shader->last_pass != render_pass) {
- e->material->shader->index = current_shader_index++;
- }
- }
-
- e->material_index = e->material->index;
-
- if (mirror) {
- e->front_facing = true;
- }
-
- e->refprobe_0_index = RenderList::MAX_REFLECTION_PROBES; //refprobe disabled by default
- e->refprobe_1_index = RenderList::MAX_REFLECTION_PROBES; //refprobe disabled by default
-
- if (!p_depth_pass) {
- e->depth_layer = e->instance->depth_layer;
- e->priority = p_material->render_priority;
-
- if (has_alpha && p_material->shader->spatial.depth_draw_mode == RasterizerStorageGLES2::Shader::Spatial::DEPTH_DRAW_ALPHA_PREPASS) {
- //add element to opaque
- RenderList::Element *eo = render_list.add_element();
- *eo = *e;
- eo->use_accum_ptr = &eo->use_accum;
- }
-
- int rpsize = e->instance->reflection_probe_instances.size();
- if (rpsize > 0) {
- bool first = true;
- rpsize = MIN(rpsize, 2); //more than 2 per object are not supported, this keeps it stable
-
- for (int i = 0; i < rpsize; i++) {
- ReflectionProbeInstance *rpi = reflection_probe_instance_owner.getornull(e->instance->reflection_probe_instances[i]);
- if (rpi->last_pass != render_pass) {
- continue;
- }
- if (first) {
- e->refprobe_0_index = rpi->index;
- first = false;
- } else {
- e->refprobe_1_index = rpi->index;
- break;
- }
- }
-
- /* if (e->refprobe_0_index > e->refprobe_1_index) { //if both are valid, swap them to keep order as best as possible
- uint64_t tmp = e->refprobe_0_index;
- e->refprobe_0_index = e->refprobe_1_index;
- e->refprobe_1_index = tmp;
- }*/
- }
-
- //add directional lights
-
- if (p_material->shader->spatial.unshaded) {
- e->light_mode = LIGHTMODE_UNSHADED;
- } else {
- bool copy = false;
-
- for (int i = 0; i < render_directional_lights; i++) {
- if (copy) {
- RenderList::Element *e2 = has_alpha ? render_list.add_alpha_element() : render_list.add_element();
- if (!e2) {
- break;
- }
- *e2 = *e; //this includes accum ptr :)
- e = e2;
- }
-
- //directional sort key
- e->light_type1 = 0;
- e->light_type2 = 1;
- e->light_index = i;
-
- copy = true;
- }
-
- //add omni / spots
-
- for (int i = 0; i < e->instance->light_instances.size(); i++) {
- LightInstance *li = light_instance_owner.getornull(e->instance->light_instances[i]);
-
- if (!li || li->light_index >= render_light_instance_count || render_light_instances[li->light_index] != li) {
- continue; // too many or light_index did not correspond to the light instances to be rendered
- }
-
- if (copy) {
- RenderList::Element *e2 = has_alpha ? render_list.add_alpha_element() : render_list.add_element();
- if (!e2) {
- break;
- }
- *e2 = *e; //this includes accum ptr :)
- e = e2;
- }
-
- //directional sort key
- e->light_type1 = 1;
- e->light_type2 = li->light_ptr->type == RenderingServer::LIGHT_OMNI ? 0 : 1;
- e->light_index = li->light_index;
-
- copy = true;
- }
-
- if (e->instance->lightmap.is_valid()) {
- e->light_mode = LIGHTMODE_LIGHTMAP;
- } else if (!e->instance->lightmap_capture_data.empty()) {
- e->light_mode = LIGHTMODE_LIGHTMAP_CAPTURE;
- } else {
- e->light_mode = LIGHTMODE_NORMAL;
- }
- }
- }
-
- // do not add anything here, as lights are duplicated elements..
-
- if (p_material->shader->spatial.uses_time) {
- RenderingServerRaster::redraw_request();
- }
-}
-
-void RasterizerSceneGLES2::_copy_texture_to_buffer(GLuint p_texture, GLuint p_buffer) {
- //copy to front buffer
- glBindFramebuffer(GL_FRAMEBUFFER, p_buffer);
-
- glDepthMask(GL_FALSE);
- glDisable(GL_DEPTH_TEST);
- glDisable(GL_CULL_FACE);
- glDisable(GL_BLEND);
- glDepthFunc(GL_LEQUAL);
- glColorMask(1, 1, 1, 1);
-
- glActiveTexture(GL_TEXTURE0);
- glBindTexture(GL_TEXTURE_2D, p_texture);
-
- glViewport(0, 0, storage->frame.current_rt->width, storage->frame.current_rt->height);
-
- storage->shaders.copy.bind();
-
- storage->bind_quad_array();
- glDrawArrays(GL_TRIANGLE_FAN, 0, 4);
- glBindBuffer(GL_ARRAY_BUFFER, 0);
-}
-
-void RasterizerSceneGLES2::_fill_render_list(InstanceBase **p_cull_result, int p_cull_count, bool p_depth_pass, bool p_shadow_pass) {
- render_pass++;
- current_material_index = 0;
- current_geometry_index = 0;
- current_light_index = 0;
- current_refprobe_index = 0;
- current_shader_index = 0;
-
- for (int i = 0; i < p_cull_count; i++) {
- InstanceBase *instance = p_cull_result[i];
-
- switch (instance->base_type) {
- case RS::INSTANCE_MESH: {
- RasterizerStorageGLES2::Mesh *mesh = storage->mesh_owner.getornull(instance->base);
- ERR_CONTINUE(!mesh);
-
- int num_surfaces = mesh->surfaces.size();
-
- for (int j = 0; j < num_surfaces; j++) {
- int material_index = instance->materials[j].is_valid() ? j : -1;
-
- RasterizerStorageGLES2::Surface *surface = mesh->surfaces[j];
-
- _add_geometry(surface, instance, nullptr, material_index, p_depth_pass, p_shadow_pass);
- }
-
- } break;
-
- case RS::INSTANCE_MULTIMESH: {
- RasterizerStorageGLES2::MultiMesh *multi_mesh = storage->multimesh_owner.getornull(instance->base);
- ERR_CONTINUE(!multi_mesh);
-
- if (multi_mesh->size == 0 || multi_mesh->visible_instances == 0)
- continue;
-
- RasterizerStorageGLES2::Mesh *mesh = storage->mesh_owner.getornull(multi_mesh->mesh);
- if (!mesh)
- continue;
-
- int ssize = mesh->surfaces.size();
-
- for (int j = 0; j < ssize; j++) {
- RasterizerStorageGLES2::Surface *s = mesh->surfaces[j];
- _add_geometry(s, instance, multi_mesh, -1, p_depth_pass, p_shadow_pass);
- }
- } break;
-
- case RS::INSTANCE_IMMEDIATE: {
- RasterizerStorageGLES2::Immediate *im = storage->immediate_owner.getornull(instance->base);
- ERR_CONTINUE(!im);
-
- _add_geometry(im, instance, nullptr, -1, p_depth_pass, p_shadow_pass);
-
- } break;
-
- default: {
- }
- }
- }
-}
-
-static const GLenum gl_primitive[] = {
- GL_POINTS,
- GL_LINES,
- GL_LINE_STRIP,
- GL_LINE_LOOP,
- GL_TRIANGLES,
- GL_TRIANGLE_STRIP,
- GL_TRIANGLE_FAN
-};
-
-void RasterizerSceneGLES2::_set_cull(bool p_front, bool p_disabled, bool p_reverse_cull) {
- bool front = p_front;
- if (p_reverse_cull)
- front = !front;
-
- if (p_disabled != state.cull_disabled) {
- if (p_disabled)
- glDisable(GL_CULL_FACE);
- else
- glEnable(GL_CULL_FACE);
-
- state.cull_disabled = p_disabled;
- }
-
- if (front != state.cull_front) {
- glCullFace(front ? GL_FRONT : GL_BACK);
- state.cull_front = front;
- }
-}
-
-bool RasterizerSceneGLES2::_setup_material(RasterizerStorageGLES2::Material *p_material, bool p_alpha_pass, Size2i p_skeleton_tex_size) {
- // material parameters
-
- state.scene_shader.set_custom_shader(p_material->shader->custom_code_id);
-
- if (p_material->shader->spatial.uses_screen_texture && storage->frame.current_rt) {
- glActiveTexture(GL_TEXTURE0 + storage->config.max_texture_image_units - 4);
- glBindTexture(GL_TEXTURE_2D, storage->frame.current_rt->copy_screen_effect.color);
- }
-
- if (p_material->shader->spatial.uses_depth_texture && storage->frame.current_rt) {
- glActiveTexture(GL_TEXTURE0 + storage->config.max_texture_image_units - 4);
- glBindTexture(GL_TEXTURE_2D, storage->frame.current_rt->depth);
- }
-
- bool shader_rebind = state.scene_shader.bind();
-
- if (p_material->shader->spatial.no_depth_test || p_material->shader->spatial.uses_depth_texture) {
- glDisable(GL_DEPTH_TEST);
- } else {
- glEnable(GL_DEPTH_TEST);
- }
-
- switch (p_material->shader->spatial.depth_draw_mode) {
- case RasterizerStorageGLES2::Shader::Spatial::DEPTH_DRAW_ALPHA_PREPASS:
- case RasterizerStorageGLES2::Shader::Spatial::DEPTH_DRAW_OPAQUE: {
- glDepthMask(!p_alpha_pass && !p_material->shader->spatial.uses_depth_texture);
- } break;
- case RasterizerStorageGLES2::Shader::Spatial::DEPTH_DRAW_ALWAYS: {
- glDepthMask(GL_TRUE && !p_material->shader->spatial.uses_depth_texture);
- } break;
- case RasterizerStorageGLES2::Shader::Spatial::DEPTH_DRAW_NEVER: {
- glDepthMask(GL_FALSE);
- } break;
- }
-
- int tc = p_material->textures.size();
- const Pair<StringName, RID> *textures = p_material->textures.ptr();
-
- const ShaderLanguage::ShaderNode::Uniform::Hint *texture_hints = p_material->shader->texture_hints.ptr();
- const ShaderLanguage::DataType *texture_types = p_material->shader->texture_types.ptr();
-
- state.scene_shader.set_uniform(SceneShaderGLES2::SKELETON_TEXTURE_SIZE, p_skeleton_tex_size);
-
- state.current_main_tex = 0;
-
- for (int i = 0; i < tc; i++) {
- glActiveTexture(GL_TEXTURE0 + i);
-
- RasterizerStorageGLES2::Texture *t = storage->texture_owner.getornull(textures[i].second);
-
- if (!t) {
- GLenum target = GL_TEXTURE_2D;
- GLuint tex = 0;
- switch (texture_types[i]) {
- case ShaderLanguage::TYPE_ISAMPLER2D:
- case ShaderLanguage::TYPE_USAMPLER2D:
- case ShaderLanguage::TYPE_SAMPLER2D: {
- switch (texture_hints[i]) {
- case ShaderLanguage::ShaderNode::Uniform::HINT_BLACK_ALBEDO:
- case ShaderLanguage::ShaderNode::Uniform::HINT_BLACK: {
- tex = storage->resources.black_tex;
- } break;
- case ShaderLanguage::ShaderNode::Uniform::HINT_ANISO: {
- tex = storage->resources.aniso_tex;
- } break;
- case ShaderLanguage::ShaderNode::Uniform::HINT_NORMAL: {
- tex = storage->resources.normal_tex;
- } break;
- default: {
- tex = storage->resources.white_tex;
- } break;
- }
-
- } break;
-
- case ShaderLanguage::TYPE_SAMPLERCUBE: {
- // TODO
- } break;
-
- case ShaderLanguage::TYPE_ISAMPLER3D:
- case ShaderLanguage::TYPE_USAMPLER3D:
- case ShaderLanguage::TYPE_SAMPLER3D: {
- target = GL_TEXTURE_3D;
- tex = storage->resources.white_tex_3d;
-
- //switch (texture_hints[i]) {
- // TODO
- //}
-
- } break;
-
- case ShaderLanguage::TYPE_ISAMPLER2DARRAY:
- case ShaderLanguage::TYPE_USAMPLER2DARRAY:
- case ShaderLanguage::TYPE_SAMPLER2DARRAY: {
- target = GL_TEXTURE_2D_ARRAY;
- tex = storage->resources.white_tex_array;
-
- //switch (texture_hints[i]) {
- // TODO
- //}
-
- } break;
-
- default: {
- }
- }
-
- glBindTexture(target, tex);
- continue;
- }
-
- if (t->redraw_if_visible) { //must check before proxy because this is often used with proxies
- RenderingServerRaster::redraw_request();
- }
-
- t = t->get_ptr();
-
-#ifdef TOOLS_ENABLED
- if (t->detect_3d) {
- t->detect_3d(t->detect_3d_ud);
- }
-#endif
-
-#ifdef TOOLS_ENABLED
- if (t->detect_normal && texture_hints[i] == ShaderLanguage::ShaderNode::Uniform::HINT_NORMAL) {
- t->detect_normal(t->detect_normal_ud);
- }
-#endif
- if (t->render_target)
- t->render_target->used_in_frame = true;
-
- glBindTexture(t->target, t->tex_id);
- if (i == 0) {
- state.current_main_tex = t->tex_id;
- }
- }
- state.scene_shader.use_material((void *)p_material);
-
- return shader_rebind;
-}
-
-void RasterizerSceneGLES2::_setup_geometry(RenderList::Element *p_element, RasterizerStorageGLES2::Skeleton *p_skeleton) {
- switch (p_element->instance->base_type) {
- case RS::INSTANCE_MESH: {
- RasterizerStorageGLES2::Surface *s = static_cast<RasterizerStorageGLES2::Surface *>(p_element->geometry);
-
- glBindBuffer(GL_ARRAY_BUFFER, s->vertex_id);
-
- if (s->index_array_len > 0) {
- glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, s->index_id);
- }
-
- for (int i = 0; i < RS::ARRAY_MAX - 1; i++) {
- if (s->attribs[i].enabled) {
- glEnableVertexAttribArray(i);
- glVertexAttribPointer(s->attribs[i].index, s->attribs[i].size, s->attribs[i].type, s->attribs[i].normalized, s->attribs[i].stride, CAST_INT_TO_UCHAR_PTR(s->attribs[i].offset));
- } else {
- glDisableVertexAttribArray(i);
- switch (i) {
- case RS::ARRAY_NORMAL: {
- glVertexAttrib4f(RS::ARRAY_NORMAL, 0.0, 0.0, 1, 1);
- } break;
- case RS::ARRAY_COLOR: {
- glVertexAttrib4f(RS::ARRAY_COLOR, 1, 1, 1, 1);
-
- } break;
- default: {
- }
- }
- }
- }
-
- bool clear_skeleton_buffer = storage->config.use_skeleton_software;
-
- if (p_skeleton) {
- if (!storage->config.use_skeleton_software) {
- //use float texture workflow
- glActiveTexture(GL_TEXTURE0 + storage->config.max_texture_image_units - 1);
- glBindTexture(GL_TEXTURE_2D, p_skeleton->tex_id);
- } else {
- //use transform buffer workflow
- ERR_FAIL_COND(p_skeleton->use_2d);
-
- Vector<float> &transform_buffer = storage->resources.skeleton_transform_cpu_buffer;
-
- if (!s->attribs[RS::ARRAY_BONES].enabled || !s->attribs[RS::ARRAY_WEIGHTS].enabled) {
- break; // the whole instance has a skeleton, but this surface is not affected by it.
- }
-
- // 3 * vec4 per vertex
- if (transform_buffer.size() < s->array_len * 12) {
- transform_buffer.resize(s->array_len * 12);
- }
-
- const size_t bones_offset = s->attribs[RS::ARRAY_BONES].offset;
- const size_t bones_stride = s->attribs[RS::ARRAY_BONES].stride;
- const size_t bone_weight_offset = s->attribs[RS::ARRAY_WEIGHTS].offset;
- const size_t bone_weight_stride = s->attribs[RS::ARRAY_WEIGHTS].stride;
-
- {
- float *write = transform_buffer.ptrw();
- float *buffer = write.ptr();
-
- const uint8_t *vertex_array_read = s->data.ptr();
- const uint8_t *vertex_data = vertex_array_read.ptr();
-
- for (int i = 0; i < s->array_len; i++) {
- // do magic
-
- size_t bones[4];
- float bone_weight[4];
-
- if (s->attribs[RS::ARRAY_BONES].type == GL_UNSIGNED_BYTE) {
- // read as byte
- const uint8_t *bones_ptr = vertex_data + bones_offset + (i * bones_stride);
- bones[0] = bones_ptr[0];
- bones[1] = bones_ptr[1];
- bones[2] = bones_ptr[2];
- bones[3] = bones_ptr[3];
- } else {
- // read as short
- const uint16_t *bones_ptr = (const uint16_t *)(vertex_data + bones_offset + (i * bones_stride));
- bones[0] = bones_ptr[0];
- bones[1] = bones_ptr[1];
- bones[2] = bones_ptr[2];
- bones[3] = bones_ptr[3];
- }
-
- if (s->attribs[RS::ARRAY_WEIGHTS].type == GL_FLOAT) {
- // read as float
- const float *weight_ptr = (const float *)(vertex_data + bone_weight_offset + (i * bone_weight_stride));
- bone_weight[0] = weight_ptr[0];
- bone_weight[1] = weight_ptr[1];
- bone_weight[2] = weight_ptr[2];
- bone_weight[3] = weight_ptr[3];
- } else {
- // read as half
- const uint16_t *weight_ptr = (const uint16_t *)(vertex_data + bone_weight_offset + (i * bone_weight_stride));
- bone_weight[0] = (weight_ptr[0] / (float)0xFFFF);
- bone_weight[1] = (weight_ptr[1] / (float)0xFFFF);
- bone_weight[2] = (weight_ptr[2] / (float)0xFFFF);
- bone_weight[3] = (weight_ptr[3] / (float)0xFFFF);
- }
-
- Transform transform;
-
- Transform bone_transforms[4] = {
- storage->skeleton_bone_get_transform(p_element->instance->skeleton, bones[0]),
- storage->skeleton_bone_get_transform(p_element->instance->skeleton, bones[1]),
- storage->skeleton_bone_get_transform(p_element->instance->skeleton, bones[2]),
- storage->skeleton_bone_get_transform(p_element->instance->skeleton, bones[3]),
- };
-
- transform.origin =
- bone_weight[0] * bone_transforms[0].origin +
- bone_weight[1] * bone_transforms[1].origin +
- bone_weight[2] * bone_transforms[2].origin +
- bone_weight[3] * bone_transforms[3].origin;
-
- transform.basis =
- bone_transforms[0].basis * bone_weight[0] +
- bone_transforms[1].basis * bone_weight[1] +
- bone_transforms[2].basis * bone_weight[2] +
- bone_transforms[3].basis * bone_weight[3];
-
- float row[3][4] = {
- { transform.basis[0][0], transform.basis[0][1], transform.basis[0][2], transform.origin[0] },
- { transform.basis[1][0], transform.basis[1][1], transform.basis[1][2], transform.origin[1] },
- { transform.basis[2][0], transform.basis[2][1], transform.basis[2][2], transform.origin[2] },
- };
-
- size_t transform_buffer_offset = i * 12;
-
- copymem(&buffer[transform_buffer_offset], row, sizeof(row));
- }
- }
-
- storage->_update_skeleton_transform_buffer(transform_buffer, s->array_len * 12);
-
- //enable transform buffer and bind it
- glBindBuffer(GL_ARRAY_BUFFER, storage->resources.skeleton_transform_buffer);
-
- glEnableVertexAttribArray(INSTANCE_BONE_BASE + 0);
- glEnableVertexAttribArray(INSTANCE_BONE_BASE + 1);
- glEnableVertexAttribArray(INSTANCE_BONE_BASE + 2);
-
- glVertexAttribPointer(INSTANCE_BONE_BASE + 0, 4, GL_FLOAT, GL_FALSE, sizeof(float) * 12, (const void *)(sizeof(float) * 4 * 0));
- glVertexAttribPointer(INSTANCE_BONE_BASE + 1, 4, GL_FLOAT, GL_FALSE, sizeof(float) * 12, (const void *)(sizeof(float) * 4 * 1));
- glVertexAttribPointer(INSTANCE_BONE_BASE + 2, 4, GL_FLOAT, GL_FALSE, sizeof(float) * 12, (const void *)(sizeof(float) * 4 * 2));
-
- clear_skeleton_buffer = false;
- }
- }
-
- if (clear_skeleton_buffer) {
- glDisableVertexAttribArray(INSTANCE_BONE_BASE + 0);
- glDisableVertexAttribArray(INSTANCE_BONE_BASE + 1);
- glDisableVertexAttribArray(INSTANCE_BONE_BASE + 2);
- }
-
- } break;
-
- case RS::INSTANCE_MULTIMESH: {
- RasterizerStorageGLES2::Surface *s = static_cast<RasterizerStorageGLES2::Surface *>(p_element->geometry);
-
- glBindBuffer(GL_ARRAY_BUFFER, s->vertex_id);
-
- if (s->index_array_len > 0) {
- glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, s->index_id);
- }
-
- for (int i = 0; i < RS::ARRAY_MAX - 1; i++) {
- if (s->attribs[i].enabled) {
- glEnableVertexAttribArray(i);
- glVertexAttribPointer(s->attribs[i].index, s->attribs[i].size, s->attribs[i].type, s->attribs[i].normalized, s->attribs[i].stride, CAST_INT_TO_UCHAR_PTR(s->attribs[i].offset));
- } else {
- glDisableVertexAttribArray(i);
- switch (i) {
- case RS::ARRAY_NORMAL: {
- glVertexAttrib4f(RS::ARRAY_NORMAL, 0.0, 0.0, 1, 1);
- } break;
- case RS::ARRAY_COLOR: {
- glVertexAttrib4f(RS::ARRAY_COLOR, 1, 1, 1, 1);
-
- } break;
- default: {
- }
- }
- }
- }
-
- // prepare multimesh (disable)
- glDisableVertexAttribArray(INSTANCE_ATTRIB_BASE + 0);
- glDisableVertexAttribArray(INSTANCE_ATTRIB_BASE + 1);
- glDisableVertexAttribArray(INSTANCE_ATTRIB_BASE + 2);
- glDisableVertexAttribArray(INSTANCE_ATTRIB_BASE + 3);
- glDisableVertexAttribArray(INSTANCE_ATTRIB_BASE + 4);
- glDisableVertexAttribArray(INSTANCE_BONE_BASE + 0);
- glDisableVertexAttribArray(INSTANCE_BONE_BASE + 1);
- glDisableVertexAttribArray(INSTANCE_BONE_BASE + 2);
-
- } break;
-
- case RS::INSTANCE_IMMEDIATE: {
- } break;
-
- default: {
- }
- }
-}
-
-void RasterizerSceneGLES2::_render_geometry(RenderList::Element *p_element) {
- switch (p_element->instance->base_type) {
- case RS::INSTANCE_MESH: {
- RasterizerStorageGLES2::Surface *s = static_cast<RasterizerStorageGLES2::Surface *>(p_element->geometry);
-
- // drawing
-
- if (s->index_array_len > 0) {
- glDrawElements(gl_primitive[s->primitive], s->index_array_len, (s->array_len >= (1 << 16)) ? GL_UNSIGNED_INT : GL_UNSIGNED_SHORT, 0);
- storage->info.render.vertices_count += s->index_array_len;
- } else {
- glDrawArrays(gl_primitive[s->primitive], 0, s->array_len);
- storage->info.render.vertices_count += s->array_len;
- }
- /*
- if (p_element->instance->skeleton.is_valid() && s->attribs[RS::ARRAY_BONES].enabled && s->attribs[RS::ARRAY_WEIGHTS].enabled) {
- //clean up after skeleton
- glBindBuffer(GL_ARRAY_BUFFER, storage->resources.skeleton_transform_buffer);
-
- glDisableVertexAttribArray(RS::ARRAY_MAX + 0);
- glDisableVertexAttribArray(RS::ARRAY_MAX + 1);
- glDisableVertexAttribArray(RS::ARRAY_MAX + 2);
-
- glVertexAttrib4f(RS::ARRAY_MAX + 0, 1, 0, 0, 0);
- glVertexAttrib4f(RS::ARRAY_MAX + 1, 0, 1, 0, 0);
- glVertexAttrib4f(RS::ARRAY_MAX + 2, 0, 0, 1, 0);
- }
-*/
- } break;
-
- case RS::INSTANCE_MULTIMESH: {
- RasterizerStorageGLES2::MultiMesh *multi_mesh = static_cast<RasterizerStorageGLES2::MultiMesh *>(p_element->owner);
- RasterizerStorageGLES2::Surface *s = static_cast<RasterizerStorageGLES2::Surface *>(p_element->geometry);
-
- int amount = MIN(multi_mesh->size, multi_mesh->visible_instances);
-
- if (amount == -1) {
- amount = multi_mesh->size;
- }
-
- int stride = multi_mesh->color_floats + multi_mesh->custom_data_floats + multi_mesh->xform_floats;
-
- int color_ofs = multi_mesh->xform_floats;
- int custom_data_ofs = color_ofs + multi_mesh->color_floats;
-
- // drawing
-
- const float *base_buffer = multi_mesh->data.ptr();
-
- for (int i = 0; i < amount; i++) {
- const float *buffer = base_buffer + i * stride;
-
- {
- glVertexAttrib4fv(INSTANCE_ATTRIB_BASE + 0, &buffer[0]);
- glVertexAttrib4fv(INSTANCE_ATTRIB_BASE + 1, &buffer[4]);
- glVertexAttrib4fv(INSTANCE_ATTRIB_BASE + 2, &buffer[8]);
- }
-
- if (multi_mesh->color_floats) {
- if (multi_mesh->color_format == RS::MULTIMESH_COLOR_8BIT) {
- uint8_t *color_data = (uint8_t *)(buffer + color_ofs);
- glVertexAttrib4f(INSTANCE_ATTRIB_BASE + 3, color_data[0] / 255.0, color_data[1] / 255.0, color_data[2] / 255.0, color_data[3] / 255.0);
- } else {
- glVertexAttrib4fv(INSTANCE_ATTRIB_BASE + 3, buffer + color_ofs);
- }
- } else {
- glVertexAttrib4f(INSTANCE_ATTRIB_BASE + 3, 1.0, 1.0, 1.0, 1.0);
- }
-
- if (multi_mesh->custom_data_floats) {
- if (multi_mesh->custom_data_format == RS::MULTIMESH_CUSTOM_DATA_8BIT) {
- uint8_t *custom_data = (uint8_t *)(buffer + custom_data_ofs);
- glVertexAttrib4f(INSTANCE_ATTRIB_BASE + 4, custom_data[0] / 255.0, custom_data[1] / 255.0, custom_data[2] / 255.0, custom_data[3] / 255.0);
- } else {
- glVertexAttrib4fv(INSTANCE_ATTRIB_BASE + 4, buffer + custom_data_ofs);
- }
- }
-
- if (s->index_array_len > 0) {
- glDrawElements(gl_primitive[s->primitive], s->index_array_len, (s->array_len >= (1 << 16)) ? GL_UNSIGNED_INT : GL_UNSIGNED_SHORT, 0);
- storage->info.render.vertices_count += s->index_array_len;
- } else {
- glDrawArrays(gl_primitive[s->primitive], 0, s->array_len);
- storage->info.render.vertices_count += s->array_len;
- }
- }
-
- } break;
-
- case RS::INSTANCE_IMMEDIATE: {
- const RasterizerStorageGLES2::Immediate *im = static_cast<const RasterizerStorageGLES2::Immediate *>(p_element->geometry);
-
- if (im->building) {
- return;
- }
-
- bool restore_tex = false;
-
- glBindBuffer(GL_ARRAY_BUFFER, state.immediate_buffer);
-
- for (const List<RasterizerStorageGLES2::Immediate::Chunk>::Element *E = im->chunks.front(); E; E = E->next()) {
- const RasterizerStorageGLES2::Immediate::Chunk &c = E->get();
-
- if (c.vertices.empty()) {
- continue;
- }
-
- int vertices = c.vertices.size();
-
- uint32_t buf_ofs = 0;
-
- storage->info.render.vertices_count += vertices;
-
- if (c.texture.is_valid() && storage->texture_owner.owns(c.texture)) {
- RasterizerStorageGLES2::Texture *t = storage->texture_owner.getornull(c.texture);
-
- if (t->redraw_if_visible) {
- RenderingServerRaster::redraw_request();
- }
- t = t->get_ptr();
-
-#ifdef TOOLS_ENABLED
- if (t->detect_3d) {
- t->detect_3d(t->detect_3d_ud);
- }
-#endif
- if (t->render_target) {
- t->render_target->used_in_frame = true;
- }
-
- glActiveTexture(GL_TEXTURE0);
- glBindTexture(t->target, t->tex_id);
- restore_tex = true;
- } else if (restore_tex) {
- glActiveTexture(GL_TEXTURE0);
- glBindTexture(GL_TEXTURE_2D, state.current_main_tex);
- restore_tex = false;
- }
-
- if (!c.normals.empty()) {
- glEnableVertexAttribArray(RS::ARRAY_NORMAL);
- glBufferSubData(GL_ARRAY_BUFFER, buf_ofs, sizeof(Vector3) * vertices, c.normals.ptr());
- glVertexAttribPointer(RS::ARRAY_NORMAL, 3, GL_FLOAT, GL_FALSE, sizeof(Vector3), CAST_INT_TO_UCHAR_PTR(buf_ofs));
- buf_ofs += sizeof(Vector3) * vertices;
- } else {
- glDisableVertexAttribArray(RS::ARRAY_NORMAL);
- }
-
- if (!c.tangents.empty()) {
- glEnableVertexAttribArray(RS::ARRAY_TANGENT);
- glBufferSubData(GL_ARRAY_BUFFER, buf_ofs, sizeof(Plane) * vertices, c.tangents.ptr());
- glVertexAttribPointer(RS::ARRAY_TANGENT, 4, GL_FLOAT, GL_FALSE, sizeof(Plane), CAST_INT_TO_UCHAR_PTR(buf_ofs));
- buf_ofs += sizeof(Plane) * vertices;
- } else {
- glDisableVertexAttribArray(RS::ARRAY_TANGENT);
- }
-
- if (!c.colors.empty()) {
- glEnableVertexAttribArray(RS::ARRAY_COLOR);
- glBufferSubData(GL_ARRAY_BUFFER, buf_ofs, sizeof(Color) * vertices, c.colors.ptr());
- glVertexAttribPointer(RS::ARRAY_COLOR, 4, GL_FLOAT, GL_FALSE, sizeof(Color), CAST_INT_TO_UCHAR_PTR(buf_ofs));
- buf_ofs += sizeof(Color) * vertices;
- } else {
- glDisableVertexAttribArray(RS::ARRAY_COLOR);
- }
-
- if (!c.uvs.empty()) {
- glEnableVertexAttribArray(RS::ARRAY_TEX_UV);
- glBufferSubData(GL_ARRAY_BUFFER, buf_ofs, sizeof(Vector2) * vertices, c.uvs.ptr());
- glVertexAttribPointer(RS::ARRAY_TEX_UV, 2, GL_FLOAT, GL_FALSE, sizeof(Vector2), CAST_INT_TO_UCHAR_PTR(buf_ofs));
- buf_ofs += sizeof(Vector2) * vertices;
- } else {
- glDisableVertexAttribArray(RS::ARRAY_TEX_UV);
- }
-
- if (!c.uv2s.empty()) {
- glEnableVertexAttribArray(RS::ARRAY_TEX_UV2);
- glBufferSubData(GL_ARRAY_BUFFER, buf_ofs, sizeof(Vector2) * vertices, c.uv2s.ptr());
- glVertexAttribPointer(RS::ARRAY_TEX_UV2, 2, GL_FLOAT, GL_FALSE, sizeof(Vector2), CAST_INT_TO_UCHAR_PTR(buf_ofs));
- buf_ofs += sizeof(Vector2) * vertices;
- } else {
- glDisableVertexAttribArray(RS::ARRAY_TEX_UV2);
- }
-
- glEnableVertexAttribArray(RS::ARRAY_VERTEX);
- glBufferSubData(GL_ARRAY_BUFFER, buf_ofs, sizeof(Vector3) * vertices, c.vertices.ptr());
- glVertexAttribPointer(RS::ARRAY_VERTEX, 3, GL_FLOAT, GL_FALSE, sizeof(Vector3), CAST_INT_TO_UCHAR_PTR(buf_ofs));
-
- glDrawArrays(gl_primitive[c.primitive], 0, c.vertices.size());
- }
-
- if (restore_tex) {
- glActiveTexture(GL_TEXTURE0);
- glBindTexture(GL_TEXTURE_2D, state.current_main_tex);
- restore_tex = false;
- }
-
- } break;
- default: {
- }
- }
-}
-
-void RasterizerSceneGLES2::_setup_light_type(LightInstance *p_light, ShadowAtlas *shadow_atlas) {
- //turn off all by default
- state.scene_shader.set_conditional(SceneShaderGLES2::USE_LIGHTING, false);
- state.scene_shader.set_conditional(SceneShaderGLES2::USE_SHADOW, false);
- state.scene_shader.set_conditional(SceneShaderGLES2::SHADOW_MODE_PCF_5, false);
- state.scene_shader.set_conditional(SceneShaderGLES2::SHADOW_MODE_PCF_13, false);
- state.scene_shader.set_conditional(SceneShaderGLES2::LIGHT_MODE_DIRECTIONAL, false);
- state.scene_shader.set_conditional(SceneShaderGLES2::LIGHT_MODE_OMNI, false);
- state.scene_shader.set_conditional(SceneShaderGLES2::LIGHT_MODE_SPOT, false);
- state.scene_shader.set_conditional(SceneShaderGLES2::LIGHT_USE_PSSM2, false);
- state.scene_shader.set_conditional(SceneShaderGLES2::LIGHT_USE_PSSM4, false);
- state.scene_shader.set_conditional(SceneShaderGLES2::LIGHT_USE_PSSM_BLEND, false);
-
- if (!p_light) { //no light, return off
- return;
- }
-
- //turn on lighting
- state.scene_shader.set_conditional(SceneShaderGLES2::USE_LIGHTING, true);
-
- switch (p_light->light_ptr->type) {
- case RS::LIGHT_DIRECTIONAL: {
- state.scene_shader.set_conditional(SceneShaderGLES2::LIGHT_MODE_DIRECTIONAL, true);
- switch (p_light->light_ptr->directional_shadow_mode) {
- case RS::LIGHT_DIRECTIONAL_SHADOW_ORTHOGONAL: {
- //no need
- } break;
- case RS::LIGHT_DIRECTIONAL_SHADOW_PARALLEL_2_SPLITS: {
- state.scene_shader.set_conditional(SceneShaderGLES2::LIGHT_USE_PSSM2, true);
-
- } break;
- case RS::LIGHT_DIRECTIONAL_SHADOW_PARALLEL_4_SPLITS: {
- state.scene_shader.set_conditional(SceneShaderGLES2::LIGHT_USE_PSSM4, true);
- } break;
- }
-
- state.scene_shader.set_conditional(SceneShaderGLES2::LIGHT_USE_PSSM_BLEND, p_light->light_ptr->directional_blend_splits);
- if (!state.render_no_shadows && p_light->light_ptr->shadow) {
- state.scene_shader.set_conditional(SceneShaderGLES2::USE_SHADOW, true);
- glActiveTexture(GL_TEXTURE0 + storage->config.max_texture_image_units - 3);
- if (storage->config.use_rgba_3d_shadows) {
- glBindTexture(GL_TEXTURE_2D, directional_shadow.color);
- } else {
- glBindTexture(GL_TEXTURE_2D, directional_shadow.depth);
- }
- state.scene_shader.set_conditional(SceneShaderGLES2::SHADOW_MODE_PCF_5, shadow_filter_mode == SHADOW_FILTER_PCF5);
- state.scene_shader.set_conditional(SceneShaderGLES2::SHADOW_MODE_PCF_13, shadow_filter_mode == SHADOW_FILTER_PCF13);
- }
-
- } break;
- case RS::LIGHT_OMNI: {
- state.scene_shader.set_conditional(SceneShaderGLES2::LIGHT_MODE_OMNI, true);
- if (!state.render_no_shadows && shadow_atlas && p_light->light_ptr->shadow) {
- state.scene_shader.set_conditional(SceneShaderGLES2::USE_SHADOW, true);
- glActiveTexture(GL_TEXTURE0 + storage->config.max_texture_image_units - 3);
- if (storage->config.use_rgba_3d_shadows) {
- glBindTexture(GL_TEXTURE_2D, shadow_atlas->color);
- } else {
- glBindTexture(GL_TEXTURE_2D, shadow_atlas->depth);
- }
- state.scene_shader.set_conditional(SceneShaderGLES2::SHADOW_MODE_PCF_5, shadow_filter_mode == SHADOW_FILTER_PCF5);
- state.scene_shader.set_conditional(SceneShaderGLES2::SHADOW_MODE_PCF_13, shadow_filter_mode == SHADOW_FILTER_PCF13);
- }
- } break;
- case RS::LIGHT_SPOT: {
- state.scene_shader.set_conditional(SceneShaderGLES2::LIGHT_MODE_SPOT, true);
- if (!state.render_no_shadows && shadow_atlas && p_light->light_ptr->shadow) {
- state.scene_shader.set_conditional(SceneShaderGLES2::USE_SHADOW, true);
- glActiveTexture(GL_TEXTURE0 + storage->config.max_texture_image_units - 3);
- if (storage->config.use_rgba_3d_shadows) {
- glBindTexture(GL_TEXTURE_2D, shadow_atlas->color);
- } else {
- glBindTexture(GL_TEXTURE_2D, shadow_atlas->depth);
- }
- state.scene_shader.set_conditional(SceneShaderGLES2::SHADOW_MODE_PCF_5, shadow_filter_mode == SHADOW_FILTER_PCF5);
- state.scene_shader.set_conditional(SceneShaderGLES2::SHADOW_MODE_PCF_13, shadow_filter_mode == SHADOW_FILTER_PCF13);
- }
- } break;
- }
-}
-
-void RasterizerSceneGLES2::_setup_light(LightInstance *light, ShadowAtlas *shadow_atlas, const Transform &p_view_transform, bool accum_pass) {
- RasterizerStorageGLES2::Light *light_ptr = light->light_ptr;
-
- //common parameters
- float energy = light_ptr->param[RS::LIGHT_PARAM_ENERGY];
- float specular = light_ptr->param[RS::LIGHT_PARAM_SPECULAR];
- float sign = (light_ptr->negative && !accum_pass) ? -1 : 1; //inverse color for base pass lights only
-
- state.scene_shader.set_uniform(SceneShaderGLES2::LIGHT_SPECULAR, specular);
- Color color = light_ptr->color * sign * energy * Math_PI;
- state.scene_shader.set_uniform(SceneShaderGLES2::LIGHT_COLOR, color);
-
- state.scene_shader.set_uniform(SceneShaderGLES2::SHADOW_COLOR, light_ptr->shadow_color);
-
- //specific parameters
-
- switch (light_ptr->type) {
- case RS::LIGHT_DIRECTIONAL: {
- //not using inverse for performance, view should be normalized anyway
- Vector3 direction = p_view_transform.basis.xform_inv(light->transform.basis.xform(Vector3(0, 0, -1))).normalized();
- state.scene_shader.set_uniform(SceneShaderGLES2::LIGHT_DIRECTION, direction);
-
- CameraMatrix matrices[4];
-
- if (!state.render_no_shadows && light_ptr->shadow && directional_shadow.depth) {
- int shadow_count = 0;
- Color split_offsets;
-
- switch (light_ptr->directional_shadow_mode) {
- case RS::LIGHT_DIRECTIONAL_SHADOW_ORTHOGONAL: {
- shadow_count = 1;
- } break;
-
- case RS::LIGHT_DIRECTIONAL_SHADOW_PARALLEL_2_SPLITS: {
- shadow_count = 2;
- } break;
-
- case RS::LIGHT_DIRECTIONAL_SHADOW_PARALLEL_4_SPLITS: {
- shadow_count = 4;
- } break;
- }
-
- for (int k = 0; k < shadow_count; k++) {
- uint32_t x = light->directional_rect.position.x;
- uint32_t y = light->directional_rect.position.y;
- uint32_t width = light->directional_rect.size.x;
- uint32_t height = light->directional_rect.size.y;
-
- if (light_ptr->directional_shadow_mode == RS::LIGHT_DIRECTIONAL_SHADOW_PARALLEL_4_SPLITS) {
- width /= 2;
- height /= 2;
-
- if (k == 1) {
- x += width;
- } else if (k == 2) {
- y += height;
- } else if (k == 3) {
- x += width;
- y += height;
- }
-
- } else if (light_ptr->directional_shadow_mode == RS::LIGHT_DIRECTIONAL_SHADOW_PARALLEL_2_SPLITS) {
- height /= 2;
-
- if (k != 0) {
- y += height;
- }
- }
-
- split_offsets[k] = light->shadow_transform[k].split;
-
- Transform modelview = (p_view_transform.inverse() * light->shadow_transform[k].transform).affine_inverse();
-
- CameraMatrix bias;
- bias.set_light_bias();
- CameraMatrix rectm;
- Rect2 atlas_rect = Rect2(float(x) / directional_shadow.size, float(y) / directional_shadow.size, float(width) / directional_shadow.size, float(height) / directional_shadow.size);
- rectm.set_light_atlas_rect(atlas_rect);
-
- CameraMatrix shadow_mtx = rectm * bias * light->shadow_transform[k].camera * modelview;
- matrices[k] = shadow_mtx;
-
- /*Color light_clamp;
- light_clamp[0] = atlas_rect.position.x;
- light_clamp[1] = atlas_rect.position.y;
- light_clamp[2] = atlas_rect.size.x;
- light_clamp[3] = atlas_rect.size.y;*/
- }
-
- // state.scene_shader.set_uniform(SceneShaderGLES2::LIGHT_CLAMP, light_clamp);
- state.scene_shader.set_uniform(SceneShaderGLES2::SHADOW_PIXEL_SIZE, Size2(1.0 / directional_shadow.size, 1.0 / directional_shadow.size));
- state.scene_shader.set_uniform(SceneShaderGLES2::LIGHT_SPLIT_OFFSETS, split_offsets);
- state.scene_shader.set_uniform(SceneShaderGLES2::LIGHT_SHADOW_MATRIX, matrices[0]);
- state.scene_shader.set_uniform(SceneShaderGLES2::LIGHT_SHADOW_MATRIX2, matrices[1]);
- state.scene_shader.set_uniform(SceneShaderGLES2::LIGHT_SHADOW_MATRIX3, matrices[2]);
- state.scene_shader.set_uniform(SceneShaderGLES2::LIGHT_SHADOW_MATRIX4, matrices[3]);
- }
- } break;
- case RS::LIGHT_OMNI: {
- Vector3 position = p_view_transform.xform_inv(light->transform.origin);
-
- state.scene_shader.set_uniform(SceneShaderGLES2::LIGHT_POSITION, position);
-
- float range = light_ptr->param[RS::LIGHT_PARAM_RANGE];
- state.scene_shader.set_uniform(SceneShaderGLES2::LIGHT_RANGE, range);
-
- float attenuation = light_ptr->param[RS::LIGHT_PARAM_ATTENUATION];
- state.scene_shader.set_uniform(SceneShaderGLES2::LIGHT_ATTENUATION, attenuation);
-
- if (!state.render_no_shadows && light_ptr->shadow && shadow_atlas && shadow_atlas->shadow_owners.has(light->self)) {
- uint32_t key = shadow_atlas->shadow_owners[light->self];
-
- uint32_t quadrant = (key >> ShadowAtlas::QUADRANT_SHIFT) & 0x03;
- uint32_t shadow = key & ShadowAtlas::SHADOW_INDEX_MASK;
-
- ERR_BREAK(shadow >= (uint32_t)shadow_atlas->quadrants[quadrant].shadows.size());
-
- uint32_t atlas_size = shadow_atlas->size;
- uint32_t quadrant_size = atlas_size >> 1;
-
- uint32_t x = (quadrant & 1) * quadrant_size;
- uint32_t y = (quadrant >> 1) * quadrant_size;
-
- uint32_t shadow_size = (quadrant_size / shadow_atlas->quadrants[quadrant].subdivision);
- x += (shadow % shadow_atlas->quadrants[quadrant].subdivision) * shadow_size;
- y += (shadow / shadow_atlas->quadrants[quadrant].subdivision) * shadow_size;
-
- uint32_t width = shadow_size;
- uint32_t height = shadow_size;
-
- if (light->light_ptr->omni_shadow_detail == RS::LIGHT_OMNI_SHADOW_DETAIL_HORIZONTAL) {
- height /= 2;
- } else {
- width /= 2;
- }
-
- Transform proj = (p_view_transform.inverse() * light->transform).inverse();
-
- Color light_clamp;
- light_clamp[0] = float(x) / atlas_size;
- light_clamp[1] = float(y) / atlas_size;
- light_clamp[2] = float(width) / atlas_size;
- light_clamp[3] = float(height) / atlas_size;
-
- state.scene_shader.set_uniform(SceneShaderGLES2::SHADOW_PIXEL_SIZE, Size2(1.0 / shadow_atlas->size, 1.0 / shadow_atlas->size));
- state.scene_shader.set_uniform(SceneShaderGLES2::LIGHT_SHADOW_MATRIX, proj);
- state.scene_shader.set_uniform(SceneShaderGLES2::LIGHT_CLAMP, light_clamp);
- }
- } break;
-
- case RS::LIGHT_SPOT: {
- Vector3 position = p_view_transform.xform_inv(light->transform.origin);
-
- state.scene_shader.set_uniform(SceneShaderGLES2::LIGHT_POSITION, position);
-
- Vector3 direction = p_view_transform.inverse().basis.xform(light->transform.basis.xform(Vector3(0, 0, -1))).normalized();
- state.scene_shader.set_uniform(SceneShaderGLES2::LIGHT_DIRECTION, direction);
- float attenuation = light_ptr->param[RS::LIGHT_PARAM_ATTENUATION];
- float range = light_ptr->param[RS::LIGHT_PARAM_RANGE];
- float spot_attenuation = light_ptr->param[RS::LIGHT_PARAM_SPOT_ATTENUATION];
- float angle = light_ptr->param[RS::LIGHT_PARAM_SPOT_ANGLE];
- angle = Math::cos(Math::deg2rad(angle));
- state.scene_shader.set_uniform(SceneShaderGLES2::LIGHT_ATTENUATION, attenuation);
- state.scene_shader.set_uniform(SceneShaderGLES2::LIGHT_SPOT_ATTENUATION, spot_attenuation);
- state.scene_shader.set_uniform(SceneShaderGLES2::LIGHT_SPOT_RANGE, spot_attenuation);
- state.scene_shader.set_uniform(SceneShaderGLES2::LIGHT_SPOT_ANGLE, angle);
- state.scene_shader.set_uniform(SceneShaderGLES2::LIGHT_RANGE, range);
-
- if (!state.render_no_shadows && light->light_ptr->shadow && shadow_atlas && shadow_atlas->shadow_owners.has(light->self)) {
- uint32_t key = shadow_atlas->shadow_owners[light->self];
-
- uint32_t quadrant = (key >> ShadowAtlas::QUADRANT_SHIFT) & 0x03;
- uint32_t shadow = key & ShadowAtlas::SHADOW_INDEX_MASK;
-
- ERR_BREAK(shadow >= (uint32_t)shadow_atlas->quadrants[quadrant].shadows.size());
-
- uint32_t atlas_size = shadow_atlas->size;
- uint32_t quadrant_size = atlas_size >> 1;
-
- uint32_t x = (quadrant & 1) * quadrant_size;
- uint32_t y = (quadrant >> 1) * quadrant_size;
-
- uint32_t shadow_size = (quadrant_size / shadow_atlas->quadrants[quadrant].subdivision);
- x += (shadow % shadow_atlas->quadrants[quadrant].subdivision) * shadow_size;
- y += (shadow / shadow_atlas->quadrants[quadrant].subdivision) * shadow_size;
-
- uint32_t width = shadow_size;
- uint32_t height = shadow_size;
-
- Rect2 rect(float(x) / atlas_size, float(y) / atlas_size, float(width) / atlas_size, float(height) / atlas_size);
-
- Color light_clamp;
- light_clamp[0] = rect.position.x;
- light_clamp[1] = rect.position.y;
- light_clamp[2] = rect.size.x;
- light_clamp[3] = rect.size.y;
-
- Transform modelview = (p_view_transform.inverse() * light->transform).inverse();
-
- CameraMatrix bias;
- bias.set_light_bias();
-
- CameraMatrix rectm;
- rectm.set_light_atlas_rect(rect);
-
- CameraMatrix shadow_matrix = rectm * bias * light->shadow_transform[0].camera * modelview;
-
- state.scene_shader.set_uniform(SceneShaderGLES2::SHADOW_PIXEL_SIZE, Size2(1.0 / shadow_atlas->size, 1.0 / shadow_atlas->size));
- state.scene_shader.set_uniform(SceneShaderGLES2::LIGHT_SHADOW_MATRIX, shadow_matrix);
- state.scene_shader.set_uniform(SceneShaderGLES2::LIGHT_CLAMP, light_clamp);
- }
-
- } break;
- default: {
- }
- }
-}
-
-void RasterizerSceneGLES2::_setup_refprobes(ReflectionProbeInstance *p_refprobe1, ReflectionProbeInstance *p_refprobe2, const Transform &p_view_transform, Environment *p_env) {
- if (p_refprobe1) {
- state.scene_shader.set_uniform(SceneShaderGLES2::REFPROBE1_USE_BOX_PROJECT, p_refprobe1->probe_ptr->box_projection);
- state.scene_shader.set_uniform(SceneShaderGLES2::REFPROBE1_BOX_EXTENTS, p_refprobe1->probe_ptr->extents);
- state.scene_shader.set_uniform(SceneShaderGLES2::REFPROBE1_BOX_OFFSET, p_refprobe1->probe_ptr->origin_offset);
- state.scene_shader.set_uniform(SceneShaderGLES2::REFPROBE1_EXTERIOR, !p_refprobe1->probe_ptr->interior);
- state.scene_shader.set_uniform(SceneShaderGLES2::REFPROBE1_INTENSITY, p_refprobe1->probe_ptr->intensity);
-
- Color ambient;
- if (p_refprobe1->probe_ptr->interior) {
- ambient = p_refprobe1->probe_ptr->interior_ambient * p_refprobe1->probe_ptr->interior_ambient_energy;
- ambient.a = p_refprobe1->probe_ptr->interior_ambient_probe_contrib;
- } else if (p_env) {
- ambient = p_env->ambient_color * p_env->ambient_energy;
- ambient.a = p_env->ambient_sky_contribution;
- }
-
- state.scene_shader.set_uniform(SceneShaderGLES2::REFPROBE1_AMBIENT, ambient);
-
- Transform proj = (p_view_transform.inverse() * p_refprobe1->transform).affine_inverse();
-
- state.scene_shader.set_uniform(SceneShaderGLES2::REFPROBE1_LOCAL_MATRIX, proj);
- }
-
- if (p_refprobe2) {
- state.scene_shader.set_uniform(SceneShaderGLES2::REFPROBE2_USE_BOX_PROJECT, p_refprobe2->probe_ptr->box_projection);
- state.scene_shader.set_uniform(SceneShaderGLES2::REFPROBE2_BOX_EXTENTS, p_refprobe2->probe_ptr->extents);
- state.scene_shader.set_uniform(SceneShaderGLES2::REFPROBE2_BOX_OFFSET, p_refprobe2->probe_ptr->origin_offset);
- state.scene_shader.set_uniform(SceneShaderGLES2::REFPROBE2_EXTERIOR, p_refprobe2->probe_ptr->interior);
- state.scene_shader.set_uniform(SceneShaderGLES2::REFPROBE2_INTENSITY, p_refprobe2->probe_ptr->intensity);
-
- Color ambient;
- if (p_refprobe2->probe_ptr->interior) {
- ambient = p_refprobe2->probe_ptr->interior_ambient * p_refprobe2->probe_ptr->interior_ambient_energy;
- ambient.a = p_refprobe2->probe_ptr->interior_ambient_probe_contrib;
- } else if (p_env) {
- ambient = p_env->ambient_color * p_env->ambient_energy;
- ambient.a = p_env->ambient_sky_contribution;
- }
-
- state.scene_shader.set_uniform(SceneShaderGLES2::REFPROBE2_AMBIENT, ambient);
-
- Transform proj = (p_view_transform.inverse() * p_refprobe2->transform).affine_inverse();
-
- state.scene_shader.set_uniform(SceneShaderGLES2::REFPROBE2_LOCAL_MATRIX, proj);
- }
-}
-
-void RasterizerSceneGLES2::_render_render_list(RenderList::Element **p_elements, int p_element_count, const Transform &p_view_transform, const CameraMatrix &p_projection, RID p_shadow_atlas, Environment *p_env, GLuint p_base_env, float p_shadow_bias, float p_shadow_normal_bias, bool p_reverse_cull, bool p_alpha_pass, bool p_shadow) {
- ShadowAtlas *shadow_atlas = shadow_atlas_owner.getornull(p_shadow_atlas);
-
- Vector2 viewport_size = state.viewport_size;
-
- Vector2 screen_pixel_size = state.screen_pixel_size;
-
- bool use_radiance_map = false;
- if (!p_shadow && p_base_env) {
- glActiveTexture(GL_TEXTURE0 + storage->config.max_texture_image_units - 2);
- glBindTexture(GL_TEXTURE_CUBE_MAP, p_base_env);
- use_radiance_map = true;
- state.scene_shader.set_conditional(SceneShaderGLES2::USE_RADIANCE_MAP, true); //since prev unshaded is false, this needs to be true if exists
- }
-
- bool prev_unshaded = false;
- bool prev_instancing = false;
- bool prev_depth_prepass = false;
- state.scene_shader.set_conditional(SceneShaderGLES2::SHADELESS, false);
- RasterizerStorageGLES2::Material *prev_material = nullptr;
- RasterizerStorageGLES2::Geometry *prev_geometry = nullptr;
- RasterizerStorageGLES2::Skeleton *prev_skeleton = nullptr;
- RasterizerStorageGLES2::GeometryOwner *prev_owner = nullptr;
-
- Transform view_transform_inverse = p_view_transform.inverse();
- CameraMatrix projection_inverse = p_projection.inverse();
-
- bool prev_base_pass = false;
- LightInstance *prev_light = nullptr;
- bool prev_vertex_lit = false;
- ReflectionProbeInstance *prev_refprobe_1 = nullptr;
- ReflectionProbeInstance *prev_refprobe_2 = nullptr;
-
- int prev_blend_mode = -2; //will always catch the first go
-
- state.cull_front = false;
- state.cull_disabled = false;
- glCullFace(GL_BACK);
- glEnable(GL_CULL_FACE);
-
- if (p_alpha_pass) {
- glEnable(GL_BLEND);
- } else {
- glDisable(GL_BLEND);
- }
-
- float fog_max_distance = 0;
- bool using_fog = false;
- if (p_env && !p_shadow && p_env->fog_enabled && (p_env->fog_depth_enabled || p_env->fog_height_enabled)) {
- state.scene_shader.set_conditional(SceneShaderGLES2::FOG_DEPTH_ENABLED, p_env->fog_depth_enabled);
- state.scene_shader.set_conditional(SceneShaderGLES2::FOG_HEIGHT_ENABLED, p_env->fog_height_enabled);
- if (p_env->fog_depth_end > 0) {
- fog_max_distance = p_env->fog_depth_end;
- } else {
- fog_max_distance = p_projection.get_z_far();
- }
- using_fog = true;
- }
-
- RasterizerStorageGLES2::Texture *prev_lightmap = nullptr;
- float lightmap_energy = 1.0;
- bool prev_use_lightmap_capture = false;
-
- storage->info.render.draw_call_count += p_element_count;
-
- for (int i = 0; i < p_element_count; i++) {
- RenderList::Element *e = p_elements[i];
-
- RasterizerStorageGLES2::Material *material = e->material;
-
- bool rebind = false;
- bool accum_pass = *e->use_accum_ptr;
- *e->use_accum_ptr = true; //set to accum for next time this is found
- LightInstance *light = nullptr;
- ReflectionProbeInstance *refprobe_1 = nullptr;
- ReflectionProbeInstance *refprobe_2 = nullptr;
- RasterizerStorageGLES2::Texture *lightmap = nullptr;
- bool use_lightmap_capture = false;
- bool rebind_light = false;
- bool rebind_reflection = false;
- bool rebind_lightmap = false;
-
- if (!p_shadow && material->shader) {
- bool unshaded = material->shader->spatial.unshaded;
-
- if (unshaded != prev_unshaded) {
- rebind = true;
- if (unshaded) {
- state.scene_shader.set_conditional(SceneShaderGLES2::SHADELESS, true);
- state.scene_shader.set_conditional(SceneShaderGLES2::USE_RADIANCE_MAP, false);
- state.scene_shader.set_conditional(SceneShaderGLES2::USE_LIGHTING, false);
- } else {
- state.scene_shader.set_conditional(SceneShaderGLES2::SHADELESS, false);
- state.scene_shader.set_conditional(SceneShaderGLES2::USE_RADIANCE_MAP, use_radiance_map);
- }
-
- prev_unshaded = unshaded;
- }
-
- bool base_pass = !accum_pass && !unshaded; //conditions for a base pass
-
- if (base_pass != prev_base_pass) {
- state.scene_shader.set_conditional(SceneShaderGLES2::BASE_PASS, base_pass);
- rebind = true;
- prev_base_pass = base_pass;
- }
-
- if (!unshaded && e->light_index < RenderList::MAX_LIGHTS) {
- light = render_light_instances[e->light_index];
- }
-
- if (light != prev_light) {
- _setup_light_type(light, shadow_atlas);
- rebind = true;
- rebind_light = true;
- }
-
- int blend_mode = p_alpha_pass ? material->shader->spatial.blend_mode : -1; // -1 no blend, no mix
-
- if (accum_pass) { //accum pass force pass
- blend_mode = RasterizerStorageGLES2::Shader::Spatial::BLEND_MODE_ADD;
- if (light && light->light_ptr->negative) {
- blend_mode = RasterizerStorageGLES2::Shader::Spatial::BLEND_MODE_SUB;
- }
- }
-
- if (prev_blend_mode != blend_mode) {
- if (prev_blend_mode == -1 && blend_mode != -1) {
- //does blend
- glEnable(GL_BLEND);
- } else if (blend_mode == -1 && prev_blend_mode != -1) {
- //do not blend
- glDisable(GL_BLEND);
- }
-
- switch (blend_mode) {
- //-1 not handled because not blend is enabled anyway
- case RasterizerStorageGLES2::Shader::Spatial::BLEND_MODE_MIX: {
- glBlendEquation(GL_FUNC_ADD);
- if (storage->frame.current_rt && storage->frame.current_rt->flags[RasterizerStorage::RENDER_TARGET_TRANSPARENT]) {
- glBlendFuncSeparate(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA, GL_ONE, GL_ONE_MINUS_SRC_ALPHA);
- } else {
- glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
- }
-
- } break;
- case RasterizerStorageGLES2::Shader::Spatial::BLEND_MODE_ADD: {
- glBlendEquation(GL_FUNC_ADD);
- glBlendFunc(p_alpha_pass ? GL_SRC_ALPHA : GL_ONE, GL_ONE);
-
- } break;
- case RasterizerStorageGLES2::Shader::Spatial::BLEND_MODE_SUB: {
- glBlendEquation(GL_FUNC_REVERSE_SUBTRACT);
- glBlendFunc(GL_SRC_ALPHA, GL_ONE);
- } break;
- case RasterizerStorageGLES2::Shader::Spatial::BLEND_MODE_MUL: {
- glBlendEquation(GL_FUNC_ADD);
- if (storage->frame.current_rt && storage->frame.current_rt->flags[RasterizerStorage::RENDER_TARGET_TRANSPARENT]) {
- glBlendFuncSeparate(GL_DST_COLOR, GL_ZERO, GL_DST_ALPHA, GL_ZERO);
- } else {
- glBlendFuncSeparate(GL_DST_COLOR, GL_ZERO, GL_ZERO, GL_ONE);
- }
-
- } break;
- }
-
- prev_blend_mode = blend_mode;
- }
-
- //condition to enable vertex lighting on this object
- bool vertex_lit = (material->shader->spatial.uses_vertex_lighting || storage->config.force_vertex_shading) && ((!unshaded && light) || using_fog); //fog forces vertex lighting because it still applies even if unshaded or no fog
-
- if (vertex_lit != prev_vertex_lit) {
- state.scene_shader.set_conditional(SceneShaderGLES2::USE_VERTEX_LIGHTING, vertex_lit);
- prev_vertex_lit = vertex_lit;
- }
-
- if (!unshaded && !accum_pass && e->refprobe_0_index != RenderList::MAX_REFLECTION_PROBES) {
- ERR_FAIL_INDEX(e->refprobe_0_index, reflection_probe_count);
- refprobe_1 = reflection_probe_instances[e->refprobe_0_index];
- }
- if (!unshaded && !accum_pass && e->refprobe_1_index != RenderList::MAX_REFLECTION_PROBES) {
- ERR_FAIL_INDEX(e->refprobe_1_index, reflection_probe_count);
- refprobe_2 = reflection_probe_instances[e->refprobe_1_index];
- }
-
- if (refprobe_1 != prev_refprobe_1 || refprobe_2 != prev_refprobe_2) {
- state.scene_shader.set_conditional(SceneShaderGLES2::USE_REFLECTION_PROBE1, refprobe_1 != nullptr);
- state.scene_shader.set_conditional(SceneShaderGLES2::USE_REFLECTION_PROBE2, refprobe_2 != nullptr);
- if (refprobe_1 != nullptr && refprobe_1 != prev_refprobe_1) {
- glActiveTexture(GL_TEXTURE0 + storage->config.max_texture_image_units - 5);
- glBindTexture(GL_TEXTURE_CUBE_MAP, refprobe_1->cubemap);
- }
- if (refprobe_2 != nullptr && refprobe_2 != prev_refprobe_2) {
- glActiveTexture(GL_TEXTURE0 + storage->config.max_texture_image_units - 6);
- glBindTexture(GL_TEXTURE_CUBE_MAP, refprobe_2->cubemap);
- }
- rebind = true;
- rebind_reflection = true;
- }
-
- use_lightmap_capture = !unshaded && !accum_pass && !e->instance->lightmap_capture_data.empty();
-
- if (use_lightmap_capture != prev_use_lightmap_capture) {
- state.scene_shader.set_conditional(SceneShaderGLES2::USE_LIGHTMAP_CAPTURE, use_lightmap_capture);
- rebind = true;
- }
-
- if (!unshaded && !accum_pass && e->instance->lightmap.is_valid()) {
- lightmap = storage->texture_owner.getornull(e->instance->lightmap);
- lightmap_energy = 1.0;
- if (lightmap) {
- RasterizerStorageGLES2::LightmapCapture *capture = storage->lightmap_capture_data_owner.getornull(e->instance->lightmap_capture->base);
- if (capture) {
- lightmap_energy = capture->energy;
- }
- }
- }
-
- if (lightmap != prev_lightmap) {
- state.scene_shader.set_conditional(SceneShaderGLES2::USE_LIGHTMAP, lightmap != nullptr);
- if (lightmap != nullptr) {
- glActiveTexture(GL_TEXTURE0 + storage->config.max_texture_image_units - 4);
- glBindTexture(GL_TEXTURE_2D, lightmap->tex_id);
- }
- rebind = true;
- rebind_lightmap = true;
- }
- }
-
- bool depth_prepass = false;
-
- if (!p_alpha_pass && material->shader->spatial.depth_draw_mode == RasterizerStorageGLES2::Shader::Spatial::DEPTH_DRAW_ALPHA_PREPASS) {
- depth_prepass = true;
- }
-
- if (depth_prepass != prev_depth_prepass) {
- state.scene_shader.set_conditional(SceneShaderGLES2::USE_DEPTH_PREPASS, depth_prepass);
- prev_depth_prepass = depth_prepass;
- rebind = true;
- }
-
- bool instancing = e->instance->base_type == RS::INSTANCE_MULTIMESH;
-
- if (instancing != prev_instancing) {
- state.scene_shader.set_conditional(SceneShaderGLES2::USE_INSTANCING, instancing);
- rebind = true;
- }
-
- RasterizerStorageGLES2::Skeleton *skeleton = storage->skeleton_owner.getornull(e->instance->skeleton);
-
- if (skeleton != prev_skeleton) {
- if ((prev_skeleton == nullptr) != (skeleton == nullptr)) {
- if (skeleton) {
- state.scene_shader.set_conditional(SceneShaderGLES2::USE_SKELETON, true);
- state.scene_shader.set_conditional(SceneShaderGLES2::USE_SKELETON_SOFTWARE, storage->config.use_skeleton_software);
- } else {
- state.scene_shader.set_conditional(SceneShaderGLES2::USE_SKELETON, false);
- state.scene_shader.set_conditional(SceneShaderGLES2::USE_SKELETON_SOFTWARE, false);
- }
- rebind = true;
- }
- }
-
- if (e->owner != prev_owner || e->geometry != prev_geometry || skeleton != prev_skeleton) {
- _setup_geometry(e, skeleton);
- storage->info.render.surface_switch_count++;
- }
-
- bool shader_rebind = false;
- if (rebind || material != prev_material) {
- storage->info.render.material_switch_count++;
- shader_rebind = _setup_material(material, p_alpha_pass, Size2i(skeleton ? skeleton->size * 3 : 0, 0));
- if (shader_rebind) {
- storage->info.render.shader_rebind_count++;
- }
- }
-
- _set_cull(e->front_facing, material->shader->spatial.cull_mode == RasterizerStorageGLES2::Shader::Spatial::CULL_MODE_DISABLED, p_reverse_cull);
-
- if (i == 0 || shader_rebind) { //first time must rebind
-
- if (p_shadow) {
- state.scene_shader.set_uniform(SceneShaderGLES2::LIGHT_BIAS, p_shadow_bias);
- state.scene_shader.set_uniform(SceneShaderGLES2::LIGHT_NORMAL_BIAS, p_shadow_normal_bias);
- if (state.shadow_is_dual_parabolloid) {
- state.scene_shader.set_uniform(SceneShaderGLES2::SHADOW_DUAL_PARABOLOID_RENDER_SIDE, state.dual_parbolloid_direction);
- state.scene_shader.set_uniform(SceneShaderGLES2::SHADOW_DUAL_PARABOLOID_RENDER_ZFAR, state.dual_parbolloid_zfar);
- }
- } else {
- if (use_radiance_map) {
- if (p_env) {
- Transform sky_orientation(p_env->sky_orientation, Vector3(0.0, 0.0, 0.0));
- state.scene_shader.set_uniform(SceneShaderGLES2::RADIANCE_INVERSE_XFORM, sky_orientation.affine_inverse() * p_view_transform);
- } else {
- // would be a bit weird if we don't have this...
- state.scene_shader.set_uniform(SceneShaderGLES2::RADIANCE_INVERSE_XFORM, p_view_transform);
- }
- }
-
- if (p_env) {
- state.scene_shader.set_uniform(SceneShaderGLES2::BG_ENERGY, p_env->bg_energy);
- state.scene_shader.set_uniform(SceneShaderGLES2::BG_COLOR, p_env->bg_color);
- state.scene_shader.set_uniform(SceneShaderGLES2::AMBIENT_SKY_CONTRIBUTION, p_env->ambient_sky_contribution);
-
- state.scene_shader.set_uniform(SceneShaderGLES2::AMBIENT_COLOR, p_env->ambient_color);
- state.scene_shader.set_uniform(SceneShaderGLES2::AMBIENT_ENERGY, p_env->ambient_energy);
-
- } else {
- state.scene_shader.set_uniform(SceneShaderGLES2::BG_ENERGY, 1.0);
- state.scene_shader.set_uniform(SceneShaderGLES2::BG_COLOR, state.default_bg);
- state.scene_shader.set_uniform(SceneShaderGLES2::AMBIENT_SKY_CONTRIBUTION, 1.0);
- state.scene_shader.set_uniform(SceneShaderGLES2::AMBIENT_COLOR, state.default_ambient);
- state.scene_shader.set_uniform(SceneShaderGLES2::AMBIENT_ENERGY, 1.0);
- }
-
- //rebind all these
- rebind_light = true;
- rebind_reflection = true;
- rebind_lightmap = true;
-
- if (using_fog) {
- state.scene_shader.set_uniform(SceneShaderGLES2::FOG_COLOR_BASE, p_env->fog_color);
- Color sun_color_amount = p_env->fog_sun_color;
- sun_color_amount.a = p_env->fog_sun_amount;
-
- state.scene_shader.set_uniform(SceneShaderGLES2::FOG_SUN_COLOR_AMOUNT, sun_color_amount);
- state.scene_shader.set_uniform(SceneShaderGLES2::FOG_TRANSMIT_ENABLED, p_env->fog_transmit_enabled);
- state.scene_shader.set_uniform(SceneShaderGLES2::FOG_TRANSMIT_CURVE, p_env->fog_transmit_curve);
-
- if (p_env->fog_depth_enabled) {
- state.scene_shader.set_uniform(SceneShaderGLES2::FOG_DEPTH_BEGIN, p_env->fog_depth_begin);
- state.scene_shader.set_uniform(SceneShaderGLES2::FOG_DEPTH_CURVE, p_env->fog_depth_curve);
- state.scene_shader.set_uniform(SceneShaderGLES2::FOG_MAX_DISTANCE, fog_max_distance);
- }
-
- if (p_env->fog_height_enabled) {
- state.scene_shader.set_uniform(SceneShaderGLES2::FOG_HEIGHT_MIN, p_env->fog_height_min);
- state.scene_shader.set_uniform(SceneShaderGLES2::FOG_HEIGHT_MAX, p_env->fog_height_max);
- state.scene_shader.set_uniform(SceneShaderGLES2::FOG_HEIGHT_MAX, p_env->fog_height_max);
- state.scene_shader.set_uniform(SceneShaderGLES2::FOG_HEIGHT_CURVE, p_env->fog_height_curve);
- }
- }
- }
-
- state.scene_shader.set_uniform(SceneShaderGLES2::CAMERA_MATRIX, p_view_transform);
- state.scene_shader.set_uniform(SceneShaderGLES2::CAMERA_INVERSE_MATRIX, view_transform_inverse);
- state.scene_shader.set_uniform(SceneShaderGLES2::PROJECTION_MATRIX, p_projection);
- state.scene_shader.set_uniform(SceneShaderGLES2::PROJECTION_INVERSE_MATRIX, projection_inverse);
-
- state.scene_shader.set_uniform(SceneShaderGLES2::TIME, storage->frame.time[0]);
-
- state.scene_shader.set_uniform(SceneShaderGLES2::VIEWPORT_SIZE, viewport_size);
-
- state.scene_shader.set_uniform(SceneShaderGLES2::SCREEN_PIXEL_SIZE, screen_pixel_size);
- }
-
- if (rebind_light && light) {
- _setup_light(light, shadow_atlas, p_view_transform, accum_pass);
- }
-
- if (rebind_reflection && (refprobe_1 || refprobe_2)) {
- _setup_refprobes(refprobe_1, refprobe_2, p_view_transform, p_env);
- }
-
- if (rebind_lightmap && lightmap) {
- state.scene_shader.set_uniform(SceneShaderGLES2::LIGHTMAP_ENERGY, lightmap_energy);
- }
-
- state.scene_shader.set_uniform(SceneShaderGLES2::WORLD_TRANSFORM, e->instance->transform);
-
- if (use_lightmap_capture) { //this is per instance, must be set always if present
- glUniform4fv(state.scene_shader.get_uniform_location(SceneShaderGLES2::LIGHTMAP_CAPTURES), 12, (const GLfloat *)e->instance->lightmap_capture_data.ptr());
- state.scene_shader.set_uniform(SceneShaderGLES2::LIGHTMAP_CAPTURE_SKY, false);
- }
-
- _render_geometry(e);
-
- prev_geometry = e->geometry;
- prev_owner = e->owner;
- prev_material = material;
- prev_skeleton = skeleton;
- prev_instancing = instancing;
- prev_light = light;
- prev_refprobe_1 = refprobe_1;
- prev_refprobe_2 = refprobe_2;
- prev_lightmap = lightmap;
- prev_use_lightmap_capture = use_lightmap_capture;
- }
-
- _setup_light_type(nullptr, nullptr); //clear light stuff
- state.scene_shader.set_conditional(SceneShaderGLES2::USE_SKELETON, false);
- state.scene_shader.set_conditional(SceneShaderGLES2::SHADELESS, false);
- state.scene_shader.set_conditional(SceneShaderGLES2::BASE_PASS, false);
- state.scene_shader.set_conditional(SceneShaderGLES2::USE_INSTANCING, false);
- state.scene_shader.set_conditional(SceneShaderGLES2::USE_RADIANCE_MAP, false);
- state.scene_shader.set_conditional(SceneShaderGLES2::LIGHT_USE_PSSM4, false);
- state.scene_shader.set_conditional(SceneShaderGLES2::LIGHT_USE_PSSM2, false);
- state.scene_shader.set_conditional(SceneShaderGLES2::LIGHT_USE_PSSM_BLEND, false);
- state.scene_shader.set_conditional(SceneShaderGLES2::USE_VERTEX_LIGHTING, false);
- state.scene_shader.set_conditional(SceneShaderGLES2::USE_REFLECTION_PROBE1, false);
- state.scene_shader.set_conditional(SceneShaderGLES2::USE_REFLECTION_PROBE2, false);
- state.scene_shader.set_conditional(SceneShaderGLES2::USE_LIGHTMAP, false);
- state.scene_shader.set_conditional(SceneShaderGLES2::USE_LIGHTMAP_CAPTURE, false);
- state.scene_shader.set_conditional(SceneShaderGLES2::FOG_DEPTH_ENABLED, false);
- state.scene_shader.set_conditional(SceneShaderGLES2::FOG_HEIGHT_ENABLED, false);
- state.scene_shader.set_conditional(SceneShaderGLES2::USE_DEPTH_PREPASS, false);
-}
-
-void RasterizerSceneGLES2::_draw_sky(RasterizerStorageGLES2::Sky *p_sky, const CameraMatrix &p_projection, const Transform &p_transform, bool p_vflip, float p_custom_fov, float p_energy, const Basis &p_sky_orientation) {
- ERR_FAIL_COND(!p_sky);
-
- RasterizerStorageGLES2::Texture *tex = storage->texture_owner.getornull(p_sky->panorama);
- ERR_FAIL_COND(!tex);
-
- glActiveTexture(GL_TEXTURE0);
- glBindTexture(tex->target, tex->tex_id);
-
- glDepthMask(GL_TRUE);
- glEnable(GL_DEPTH_TEST);
- glDisable(GL_CULL_FACE);
- glDisable(GL_BLEND);
- glDepthFunc(GL_LEQUAL);
-
- // Camera
- CameraMatrix camera;
-
- if (p_custom_fov) {
- float near_plane = p_projection.get_z_near();
- float far_plane = p_projection.get_z_far();
- float aspect = p_projection.get_aspect();
-
- camera.set_perspective(p_custom_fov, aspect, near_plane, far_plane);
- } else {
- camera = p_projection;
- }
-
- float flip_sign = p_vflip ? -1 : 1;
-
- // If matrix[2][0] or matrix[2][1] we're dealing with an asymmetrical projection matrix. This is the case for stereoscopic rendering (i.e. VR).
- // To ensure the image rendered is perspective correct we need to move some logic into the shader. For this the USE_ASYM_PANO option is introduced.
- // It also means the uv coordinates are ignored in this mode and we don't need our loop.
- bool asymmetrical = ((camera.matrix[2][0] != 0.0) || (camera.matrix[2][1] != 0.0));
-
- Vector3 vertices[8] = {
- Vector3(-1, -1 * flip_sign, 1),
- Vector3(0, 1, 0),
- Vector3(1, -1 * flip_sign, 1),
- Vector3(1, 1, 0),
- Vector3(1, 1 * flip_sign, 1),
- Vector3(1, 0, 0),
- Vector3(-1, 1 * flip_sign, 1),
- Vector3(0, 0, 0),
- };
-
- if (!asymmetrical) {
- Vector2 vp_he = camera.get_viewport_half_extents();
- float zn;
- zn = p_projection.get_z_near();
-
- for (int i = 0; i < 4; i++) {
- Vector3 uv = vertices[i * 2 + 1];
- uv.x = (uv.x * 2.0 - 1.0) * vp_he.x;
- uv.y = -(uv.y * 2.0 - 1.0) * vp_he.y;
- uv.z = -zn;
- vertices[i * 2 + 1] = p_transform.basis.xform(uv).normalized();
- vertices[i * 2 + 1].z = -vertices[i * 2 + 1].z;
- }
- }
-
- glBindBuffer(GL_ARRAY_BUFFER, state.sky_verts);
- glBufferData(GL_ARRAY_BUFFER, sizeof(Vector3) * 8, vertices, GL_DYNAMIC_DRAW);
-
- // bind sky vertex array....
- glVertexAttribPointer(RS::ARRAY_VERTEX, 3, GL_FLOAT, GL_FALSE, sizeof(Vector3) * 2, 0);
- glVertexAttribPointer(RS::ARRAY_TEX_UV, 3, GL_FLOAT, GL_FALSE, sizeof(Vector3) * 2, CAST_INT_TO_UCHAR_PTR(sizeof(Vector3)));
- glEnableVertexAttribArray(RS::ARRAY_VERTEX);
- glEnableVertexAttribArray(RS::ARRAY_TEX_UV);
-
- storage->shaders.copy.set_conditional(CopyShaderGLES2::USE_ASYM_PANO, asymmetrical);
- storage->shaders.copy.set_conditional(CopyShaderGLES2::USE_PANORAMA, !asymmetrical);
- storage->shaders.copy.set_conditional(CopyShaderGLES2::USE_MULTIPLIER, true);
- storage->shaders.copy.set_conditional(CopyShaderGLES2::USE_CUBEMAP, false);
- storage->shaders.copy.set_conditional(CopyShaderGLES2::USE_COPY_SECTION, false);
- storage->shaders.copy.set_conditional(CopyShaderGLES2::USE_CUSTOM_ALPHA, false);
- storage->shaders.copy.bind();
- storage->shaders.copy.set_uniform(CopyShaderGLES2::MULTIPLIER, p_energy);
-
- // don't know why but I always have problems setting a uniform mat3, so we're using a transform
- storage->shaders.copy.set_uniform(CopyShaderGLES2::SKY_TRANSFORM, Transform(p_sky_orientation, Vector3(0.0, 0.0, 0.0)).affine_inverse());
-
- if (asymmetrical) {
- // pack the bits we need from our projection matrix
- storage->shaders.copy.set_uniform(CopyShaderGLES2::ASYM_PROJ, camera.matrix[2][0], camera.matrix[0][0], camera.matrix[2][1], camera.matrix[1][1]);
- ///@TODO I couldn't get mat3 + p_transform.basis to work, that would be better here.
- storage->shaders.copy.set_uniform(CopyShaderGLES2::PANO_TRANSFORM, p_transform);
- }
-
- glDrawArrays(GL_TRIANGLE_FAN, 0, 4);
-
- glDisableVertexAttribArray(RS::ARRAY_VERTEX);
- glDisableVertexAttribArray(RS::ARRAY_TEX_UV);
- glBindBuffer(GL_ARRAY_BUFFER, 0);
-
- storage->shaders.copy.set_conditional(CopyShaderGLES2::USE_ASYM_PANO, false);
- storage->shaders.copy.set_conditional(CopyShaderGLES2::USE_PANORAMA, false);
- storage->shaders.copy.set_conditional(CopyShaderGLES2::USE_MULTIPLIER, false);
- storage->shaders.copy.set_conditional(CopyShaderGLES2::USE_CUBEMAP, false);
-}
-
-void RasterizerSceneGLES2::_post_process(Environment *env, const CameraMatrix &p_cam_projection) {
- //copy to front buffer
-
- glDepthMask(GL_FALSE);
- glDisable(GL_DEPTH_TEST);
- glDisable(GL_CULL_FACE);
- glDisable(GL_BLEND);
- glDepthFunc(GL_LEQUAL);
- glColorMask(1, 1, 1, 1);
-
- //no post process on small, transparent or render targets without an env
- bool use_post_process = env && !storage->frame.current_rt->flags[RasterizerStorage::RENDER_TARGET_TRANSPARENT];
- use_post_process = use_post_process && storage->frame.current_rt->width >= 4 && storage->frame.current_rt->height >= 4;
- use_post_process = use_post_process && storage->frame.current_rt->mip_maps_allocated;
-
- if (env) {
- use_post_process = use_post_process && (env->adjustments_enabled || env->glow_enabled || env->dof_blur_far_enabled || env->dof_blur_near_enabled);
- }
-
- GLuint next_buffer;
-
- if (use_post_process) {
- next_buffer = storage->frame.current_rt->mip_maps[0].sizes[0].fbo;
- } else if (storage->frame.current_rt->external.fbo != 0) {
- next_buffer = storage->frame.current_rt->external.fbo;
- } else {
- // set next_buffer to front buffer so multisample blit can happen if needed
- next_buffer = storage->frame.current_rt->fbo;
- }
-
- // If using multisample buffer, resolve to post_process_effect buffer or to front buffer
- if (storage->frame.current_rt && storage->frame.current_rt->multisample_active) {
-#ifdef GLES_OVER_GL
-
- glBindFramebuffer(GL_READ_FRAMEBUFFER, storage->frame.current_rt->multisample_fbo);
- glReadBuffer(GL_COLOR_ATTACHMENT0);
- glBindFramebuffer(GL_DRAW_FRAMEBUFFER, next_buffer);
- glBlitFramebuffer(0, 0, storage->frame.current_rt->width, storage->frame.current_rt->height, 0, 0, storage->frame.current_rt->width, storage->frame.current_rt->height, GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT, GL_NEAREST);
-
- glBindFramebuffer(GL_READ_FRAMEBUFFER, 0);
- glBindFramebuffer(GL_DRAW_FRAMEBUFFER, 0);
-#elif IPHONE_ENABLED
-
- glBindFramebuffer(GL_READ_FRAMEBUFFER, storage->frame.current_rt->multisample_fbo);
- glBindFramebuffer(GL_DRAW_FRAMEBUFFER, next_buffer);
- glResolveMultisampleFramebufferAPPLE();
-
- glBindFramebuffer(GL_READ_FRAMEBUFFER, 0);
- glBindFramebuffer(GL_DRAW_FRAMEBUFFER, 0);
-#elif ANDROID_ENABLED
-
- // In GLES2 Android Blit is not available, so just copy color texture manually
- _copy_texture_to_buffer(storage->frame.current_rt->multisample_color, next_buffer);
-#else
- // TODO: any other platform not supported? this will fail.. maybe we should just call _copy_texture_to_buffer here as well?
-#endif
- } else if (use_post_process) {
- if (storage->frame.current_rt->external.fbo != 0) {
- _copy_texture_to_buffer(storage->frame.current_rt->external.color, storage->frame.current_rt->mip_maps[0].sizes[0].fbo);
- } else {
- _copy_texture_to_buffer(storage->frame.current_rt->color, storage->frame.current_rt->mip_maps[0].sizes[0].fbo);
- }
- }
-
- if (!use_post_process) {
- return;
- }
-
- // Order of operation
- //1) DOF Blur (first blur, then copy to buffer applying the blur) //only on desktop
- //2) Bloom (Glow) //only on desktop
- //3) Adjustments
-
- // DOF Blur
-
- if (env->dof_blur_far_enabled) {
- int vp_h = storage->frame.current_rt->height;
- int vp_w = storage->frame.current_rt->width;
-
- state.effect_blur_shader.set_conditional(EffectBlurShaderGLES2::USE_ORTHOGONAL_PROJECTION, p_cam_projection.is_orthogonal());
- state.effect_blur_shader.set_conditional(EffectBlurShaderGLES2::DOF_FAR_BLUR, true);
- state.effect_blur_shader.set_conditional(EffectBlurShaderGLES2::DOF_QUALITY_LOW, env->dof_blur_far_quality == RS::ENV_DOF_BLUR_QUALITY_LOW);
- state.effect_blur_shader.set_conditional(EffectBlurShaderGLES2::DOF_QUALITY_MEDIUM, env->dof_blur_far_quality == RS::ENV_DOF_BLUR_QUALITY_MEDIUM);
- state.effect_blur_shader.set_conditional(EffectBlurShaderGLES2::DOF_QUALITY_HIGH, env->dof_blur_far_quality == RS::ENV_DOF_BLUR_QUALITY_HIGH);
-
- state.effect_blur_shader.bind();
- int qsteps[3] = { 4, 10, 20 };
-
- float radius = (env->dof_blur_far_amount * env->dof_blur_far_amount) / qsteps[env->dof_blur_far_quality];
-
- state.effect_blur_shader.set_uniform(EffectBlurShaderGLES2::DOF_BEGIN, env->dof_blur_far_distance);
- state.effect_blur_shader.set_uniform(EffectBlurShaderGLES2::DOF_END, env->dof_blur_far_distance + env->dof_blur_far_transition);
- state.effect_blur_shader.set_uniform(EffectBlurShaderGLES2::DOF_DIR, Vector2(1, 0));
- state.effect_blur_shader.set_uniform(EffectBlurShaderGLES2::DOF_RADIUS, radius);
- state.effect_blur_shader.set_uniform(EffectBlurShaderGLES2::PIXEL_SIZE, Vector2(1.0 / vp_w, 1.0 / vp_h));
- state.effect_blur_shader.set_uniform(EffectBlurShaderGLES2::CAMERA_Z_NEAR, p_cam_projection.get_z_near());
- state.effect_blur_shader.set_uniform(EffectBlurShaderGLES2::CAMERA_Z_FAR, p_cam_projection.get_z_far());
-
- glActiveTexture(GL_TEXTURE1);
- glBindTexture(GL_TEXTURE_2D, storage->frame.current_rt->depth);
-
- glActiveTexture(GL_TEXTURE0);
-
- if (storage->frame.current_rt->mip_maps[0].color) {
- glBindTexture(GL_TEXTURE_2D, storage->frame.current_rt->mip_maps[0].color);
- } else {
- glBindTexture(GL_TEXTURE_2D, storage->frame.current_rt->mip_maps[0].sizes[0].color);
- }
-
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
- glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);
- glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);
-
- glBindFramebuffer(GL_FRAMEBUFFER, storage->frame.current_rt->fbo); //copy to front first
-
- storage->_copy_screen();
-
- glActiveTexture(GL_TEXTURE0);
- glBindTexture(GL_TEXTURE_2D, storage->frame.current_rt->color);
- state.effect_blur_shader.set_uniform(EffectBlurShaderGLES2::DOF_DIR, Vector2(0, 1));
- glBindFramebuffer(GL_FRAMEBUFFER, storage->frame.current_rt->mip_maps[0].sizes[0].fbo); // copy to base level
- storage->_copy_screen();
-
- state.effect_blur_shader.set_conditional(EffectBlurShaderGLES2::DOF_FAR_BLUR, false);
- state.effect_blur_shader.set_conditional(EffectBlurShaderGLES2::DOF_QUALITY_LOW, false);
- state.effect_blur_shader.set_conditional(EffectBlurShaderGLES2::DOF_QUALITY_MEDIUM, false);
- state.effect_blur_shader.set_conditional(EffectBlurShaderGLES2::DOF_QUALITY_HIGH, false);
- state.effect_blur_shader.set_conditional(EffectBlurShaderGLES2::USE_ORTHOGONAL_PROJECTION, false);
- }
-
- if (env->dof_blur_near_enabled) {
- //convert texture to RGBA format if not already
- if (!storage->frame.current_rt->used_dof_blur_near) {
- glActiveTexture(GL_TEXTURE0);
- glBindTexture(GL_TEXTURE_2D, storage->frame.current_rt->color);
- glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, storage->frame.current_rt->width, storage->frame.current_rt->height, 0, GL_RGBA, GL_UNSIGNED_BYTE, nullptr);
- }
-
- int vp_h = storage->frame.current_rt->height;
- int vp_w = storage->frame.current_rt->width;
-
- state.effect_blur_shader.set_conditional(EffectBlurShaderGLES2::USE_ORTHOGONAL_PROJECTION, p_cam_projection.is_orthogonal());
- state.effect_blur_shader.set_conditional(EffectBlurShaderGLES2::DOF_NEAR_BLUR, true);
- state.effect_blur_shader.set_conditional(EffectBlurShaderGLES2::DOF_NEAR_FIRST_TAP, true);
-
- state.effect_blur_shader.set_conditional(EffectBlurShaderGLES2::DOF_QUALITY_LOW, env->dof_blur_near_quality == RS::ENV_DOF_BLUR_QUALITY_LOW);
- state.effect_blur_shader.set_conditional(EffectBlurShaderGLES2::DOF_QUALITY_MEDIUM, env->dof_blur_near_quality == RS::ENV_DOF_BLUR_QUALITY_MEDIUM);
- state.effect_blur_shader.set_conditional(EffectBlurShaderGLES2::DOF_QUALITY_HIGH, env->dof_blur_near_quality == RS::ENV_DOF_BLUR_QUALITY_HIGH);
-
- state.effect_blur_shader.bind();
- int qsteps[3] = { 4, 10, 20 };
-
- float radius = (env->dof_blur_near_amount * env->dof_blur_near_amount) / qsteps[env->dof_blur_near_quality];
-
- state.effect_blur_shader.set_uniform(EffectBlurShaderGLES2::DOF_BEGIN, env->dof_blur_near_distance);
- state.effect_blur_shader.set_uniform(EffectBlurShaderGLES2::DOF_END, env->dof_blur_near_distance - env->dof_blur_near_transition);
- state.effect_blur_shader.set_uniform(EffectBlurShaderGLES2::DOF_DIR, Vector2(1, 0));
- state.effect_blur_shader.set_uniform(EffectBlurShaderGLES2::DOF_RADIUS, radius);
- state.effect_blur_shader.set_uniform(EffectBlurShaderGLES2::PIXEL_SIZE, Vector2(1.0 / vp_w, 1.0 / vp_h));
- state.effect_blur_shader.set_uniform(EffectBlurShaderGLES2::CAMERA_Z_NEAR, p_cam_projection.get_z_near());
- state.effect_blur_shader.set_uniform(EffectBlurShaderGLES2::CAMERA_Z_FAR, p_cam_projection.get_z_far());
-
- glActiveTexture(GL_TEXTURE1);
- glBindTexture(GL_TEXTURE_2D, storage->frame.current_rt->depth);
-
- glActiveTexture(GL_TEXTURE0);
- if (storage->frame.current_rt->mip_maps[0].color) {
- glBindTexture(GL_TEXTURE_2D, storage->frame.current_rt->mip_maps[0].color);
- } else {
- glBindTexture(GL_TEXTURE_2D, storage->frame.current_rt->mip_maps[0].sizes[0].color);
- }
-
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
- glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);
- glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);
-
- glBindFramebuffer(GL_FRAMEBUFFER, storage->frame.current_rt->fbo); //copy to front first
-
- storage->_copy_screen();
-
- state.effect_blur_shader.set_conditional(EffectBlurShaderGLES2::DOF_NEAR_FIRST_TAP, false);
- state.effect_blur_shader.bind();
-
- state.effect_blur_shader.set_uniform(EffectBlurShaderGLES2::DOF_BEGIN, env->dof_blur_near_distance);
- state.effect_blur_shader.set_uniform(EffectBlurShaderGLES2::DOF_END, env->dof_blur_near_distance - env->dof_blur_near_transition);
- state.effect_blur_shader.set_uniform(EffectBlurShaderGLES2::DOF_DIR, Vector2(0, 1));
- state.effect_blur_shader.set_uniform(EffectBlurShaderGLES2::DOF_RADIUS, radius);
- state.effect_blur_shader.set_uniform(EffectBlurShaderGLES2::PIXEL_SIZE, Vector2(1.0 / vp_w, 1.0 / vp_h));
- state.effect_blur_shader.set_uniform(EffectBlurShaderGLES2::CAMERA_Z_NEAR, p_cam_projection.get_z_near());
- state.effect_blur_shader.set_uniform(EffectBlurShaderGLES2::CAMERA_Z_FAR, p_cam_projection.get_z_far());
-
- glActiveTexture(GL_TEXTURE0);
- glBindTexture(GL_TEXTURE_2D, storage->frame.current_rt->color);
-
- glBindFramebuffer(GL_FRAMEBUFFER, storage->frame.current_rt->mip_maps[0].sizes[0].fbo); // copy to base level
-
- glEnable(GL_BLEND);
- glBlendEquation(GL_FUNC_ADD);
- glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
-
- storage->_copy_screen();
-
- glDisable(GL_BLEND);
-
- state.effect_blur_shader.set_conditional(EffectBlurShaderGLES2::DOF_NEAR_BLUR, false);
- state.effect_blur_shader.set_conditional(EffectBlurShaderGLES2::DOF_NEAR_FIRST_TAP, false);
- state.effect_blur_shader.set_conditional(EffectBlurShaderGLES2::DOF_QUALITY_LOW, false);
- state.effect_blur_shader.set_conditional(EffectBlurShaderGLES2::DOF_QUALITY_MEDIUM, false);
- state.effect_blur_shader.set_conditional(EffectBlurShaderGLES2::DOF_QUALITY_HIGH, false);
- state.effect_blur_shader.set_conditional(EffectBlurShaderGLES2::USE_ORTHOGONAL_PROJECTION, false);
- storage->frame.current_rt->used_dof_blur_near = true;
- }
-
- if (env->dof_blur_near_enabled || env->dof_blur_far_enabled) {
- //these needed to disable filtering, reenamble
- glActiveTexture(GL_TEXTURE0);
- if (storage->frame.current_rt->mip_maps[0].color) {
- glBindTexture(GL_TEXTURE_2D, storage->frame.current_rt->mip_maps[0].color);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR_MIPMAP_LINEAR);
- } else {
- glBindTexture(GL_TEXTURE_2D, storage->frame.current_rt->mip_maps[0].sizes[0].color);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
- }
-
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
- glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);
- glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);
- }
-
- //glow
-
- int max_glow_level = -1;
- int glow_mask = 0;
-
- if (env->glow_enabled) {
- for (int i = 0; i < RS::MAX_GLOW_LEVELS; i++) {
- if (env->glow_levels & (1 << i)) {
- if (i >= storage->frame.current_rt->mip_maps[1].sizes.size()) {
- max_glow_level = storage->frame.current_rt->mip_maps[1].sizes.size() - 1;
- glow_mask |= 1 << max_glow_level;
-
- } else {
- max_glow_level = i;
- glow_mask |= (1 << i);
- }
- }
- }
-
- for (int i = 0; i < (max_glow_level + 1); i++) {
- int vp_w = storage->frame.current_rt->mip_maps[1].sizes[i].width;
- int vp_h = storage->frame.current_rt->mip_maps[1].sizes[i].height;
- glViewport(0, 0, vp_w, vp_h);
- //horizontal pass
- if (i == 0) {
- state.effect_blur_shader.set_conditional(EffectBlurShaderGLES2::GLOW_FIRST_PASS, true);
- }
-
- state.effect_blur_shader.set_conditional(EffectBlurShaderGLES2::GLOW_GAUSSIAN_HORIZONTAL, true);
- state.effect_blur_shader.bind();
- state.effect_blur_shader.set_uniform(EffectBlurShaderGLES2::PIXEL_SIZE, Vector2(1.0 / vp_w, 1.0 / vp_h));
- state.effect_blur_shader.set_uniform(EffectBlurShaderGLES2::LOD, storage->frame.current_rt->mip_maps[0].color ? float(i) : 0.0);
- state.effect_blur_shader.set_uniform(EffectBlurShaderGLES2::GLOW_STRENGTH, env->glow_strength);
- state.effect_blur_shader.set_uniform(EffectBlurShaderGLES2::LUMINANCE_CAP, env->glow_hdr_luminance_cap);
-
- glActiveTexture(GL_TEXTURE0);
-
- if (storage->frame.current_rt->mip_maps[0].color) {
- glBindTexture(GL_TEXTURE_2D, storage->frame.current_rt->mip_maps[0].color);
- } else {
- glBindTexture(GL_TEXTURE_2D, storage->frame.current_rt->mip_maps[0].sizes[i].color);
- }
-
- if (i == 0) {
- state.effect_blur_shader.set_uniform(EffectBlurShaderGLES2::GLOW_BLOOM, env->glow_bloom);
- state.effect_blur_shader.set_uniform(EffectBlurShaderGLES2::GLOW_HDR_THRESHOLD, env->glow_hdr_bleed_threshold);
- state.effect_blur_shader.set_uniform(EffectBlurShaderGLES2::GLOW_HDR_SCALE, env->glow_hdr_bleed_scale);
- }
-
- glBindFramebuffer(GL_FRAMEBUFFER, storage->frame.current_rt->mip_maps[1].sizes[i].fbo);
- storage->_copy_screen();
- state.effect_blur_shader.set_conditional(EffectBlurShaderGLES2::GLOW_GAUSSIAN_HORIZONTAL, false);
- state.effect_blur_shader.set_conditional(EffectBlurShaderGLES2::GLOW_FIRST_PASS, false);
-
- //vertical pass
- state.effect_blur_shader.set_conditional(EffectBlurShaderGLES2::GLOW_GAUSSIAN_VERTICAL, true);
- state.effect_blur_shader.bind();
- state.effect_blur_shader.set_uniform(EffectBlurShaderGLES2::PIXEL_SIZE, Vector2(1.0 / vp_w, 1.0 / vp_h));
- state.effect_blur_shader.set_uniform(EffectBlurShaderGLES2::LOD, storage->frame.current_rt->mip_maps[0].color ? float(i) : 0.0);
- state.effect_blur_shader.set_uniform(EffectBlurShaderGLES2::GLOW_STRENGTH, env->glow_strength);
- glActiveTexture(GL_TEXTURE0);
-
- if (storage->frame.current_rt->mip_maps[0].color) {
- glBindTexture(GL_TEXTURE_2D, storage->frame.current_rt->mip_maps[1].color);
- } else {
- glBindTexture(GL_TEXTURE_2D, storage->frame.current_rt->mip_maps[1].sizes[i].color);
- }
-
- glBindFramebuffer(GL_FRAMEBUFFER, storage->frame.current_rt->mip_maps[0].sizes[i + 1].fbo); //next level, since mipmaps[0] starts one level bigger
- storage->_copy_screen();
- state.effect_blur_shader.set_conditional(EffectBlurShaderGLES2::GLOW_GAUSSIAN_VERTICAL, false);
- }
-
- glViewport(0, 0, storage->frame.current_rt->width, storage->frame.current_rt->height);
- }
-
- if (storage->frame.current_rt->external.fbo != 0) {
- glBindFramebuffer(GL_FRAMEBUFFER, storage->frame.current_rt->external.fbo);
- } else {
- glBindFramebuffer(GL_FRAMEBUFFER, storage->frame.current_rt->fbo);
- }
-
- glActiveTexture(GL_TEXTURE0);
- if (storage->frame.current_rt->mip_maps[0].color) {
- glBindTexture(GL_TEXTURE_2D, storage->frame.current_rt->mip_maps[0].color);
- } else {
- glBindTexture(GL_TEXTURE_2D, storage->frame.current_rt->mip_maps[0].sizes[0].color);
- }
-
- state.tonemap_shader.set_conditional(TonemapShaderGLES2::USE_GLOW_FILTER_BICUBIC, env->glow_bicubic_upscale);
-
- if (max_glow_level >= 0) {
- if (storage->frame.current_rt->mip_maps[0].color) {
- for (int i = 0; i < (max_glow_level + 1); i++) {
- if (glow_mask & (1 << i)) {
- if (i == 0) {
- state.tonemap_shader.set_conditional(TonemapShaderGLES2::USE_GLOW_LEVEL1, true);
- }
- if (i == 1) {
- state.tonemap_shader.set_conditional(TonemapShaderGLES2::USE_GLOW_LEVEL2, true);
- }
- if (i == 2) {
- state.tonemap_shader.set_conditional(TonemapShaderGLES2::USE_GLOW_LEVEL3, true);
- }
- if (i == 3) {
- state.tonemap_shader.set_conditional(TonemapShaderGLES2::USE_GLOW_LEVEL4, true);
- }
- if (i == 4) {
- state.tonemap_shader.set_conditional(TonemapShaderGLES2::USE_GLOW_LEVEL5, true);
- }
- if (i == 5) {
- state.tonemap_shader.set_conditional(TonemapShaderGLES2::USE_GLOW_LEVEL6, true);
- }
- if (i == 6) {
- state.tonemap_shader.set_conditional(TonemapShaderGLES2::USE_GLOW_LEVEL7, true);
- }
- }
- }
- glActiveTexture(GL_TEXTURE1);
- glBindTexture(GL_TEXTURE_2D, storage->frame.current_rt->mip_maps[0].color);
- } else {
- state.tonemap_shader.set_conditional(TonemapShaderGLES2::USE_MULTI_TEXTURE_GLOW, true);
- int active_glow_level = 0;
- for (int i = 0; i < (max_glow_level + 1); i++) {
- if (glow_mask & (1 << i)) {
- active_glow_level++;
- glActiveTexture(GL_TEXTURE0 + active_glow_level);
- glBindTexture(GL_TEXTURE_2D, storage->frame.current_rt->mip_maps[0].sizes[i + 1].color);
- if (active_glow_level == 1) {
- state.tonemap_shader.set_conditional(TonemapShaderGLES2::USE_GLOW_LEVEL1, true);
- }
- if (active_glow_level == 2) {
- state.tonemap_shader.set_conditional(TonemapShaderGLES2::USE_GLOW_LEVEL2, true);
- }
- if (active_glow_level == 3) {
- state.tonemap_shader.set_conditional(TonemapShaderGLES2::USE_GLOW_LEVEL3, true);
- }
- if (active_glow_level == 4) {
- state.tonemap_shader.set_conditional(TonemapShaderGLES2::USE_GLOW_LEVEL4, true);
- }
- if (active_glow_level == 5) {
- state.tonemap_shader.set_conditional(TonemapShaderGLES2::USE_GLOW_LEVEL5, true);
- }
- if (active_glow_level == 6) {
- state.tonemap_shader.set_conditional(TonemapShaderGLES2::USE_GLOW_LEVEL6, true);
- }
- if (active_glow_level == 7) {
- state.tonemap_shader.set_conditional(TonemapShaderGLES2::USE_GLOW_LEVEL7, true);
- }
- }
- }
- }
-
- state.tonemap_shader.set_conditional(TonemapShaderGLES2::USE_GLOW_SCREEN, env->glow_blend_mode == RS::ENV_GLOW_BLEND_MODE_SCREEN);
- state.tonemap_shader.set_conditional(TonemapShaderGLES2::USE_GLOW_SOFTLIGHT, env->glow_blend_mode == RS::ENV_GLOW_BLEND_MODE_SOFTLIGHT);
- state.tonemap_shader.set_conditional(TonemapShaderGLES2::USE_GLOW_REPLACE, env->glow_blend_mode == RS::ENV_GLOW_BLEND_MODE_REPLACE);
- }
-
- //Adjustments
- if (env->adjustments_enabled) {
- state.tonemap_shader.set_conditional(TonemapShaderGLES2::USE_BCS, true);
- RasterizerStorageGLES2::Texture *tex = storage->texture_owner.getornull(env->color_correction);
- if (tex) {
- state.tonemap_shader.set_conditional(TonemapShaderGLES2::USE_COLOR_CORRECTION, true);
- glActiveTexture(GL_TEXTURE2);
- glBindTexture(tex->target, tex->tex_id);
- }
- }
-
- state.tonemap_shader.bind();
-
- if (max_glow_level >= 0) {
- state.tonemap_shader.set_uniform(TonemapShaderGLES2::GLOW_INTENSITY, env->glow_intensity);
- int ss[2] = {
- storage->frame.current_rt->width,
- storage->frame.current_rt->height,
- };
- glUniform2iv(state.tonemap_shader.get_uniform(TonemapShaderGLES2::GLOW_TEXTURE_SIZE), 1, ss);
- }
-
- if (env->adjustments_enabled) {
- state.tonemap_shader.set_uniform(TonemapShaderGLES2::BCS, Vector3(env->adjustments_brightness, env->adjustments_contrast, env->adjustments_saturation));
- }
-
- storage->_copy_screen();
-
- //turn off everything used
- state.tonemap_shader.set_conditional(TonemapShaderGLES2::USE_GLOW_LEVEL1, false);
- state.tonemap_shader.set_conditional(TonemapShaderGLES2::USE_GLOW_LEVEL2, false);
- state.tonemap_shader.set_conditional(TonemapShaderGLES2::USE_GLOW_LEVEL3, false);
- state.tonemap_shader.set_conditional(TonemapShaderGLES2::USE_GLOW_LEVEL4, false);
- state.tonemap_shader.set_conditional(TonemapShaderGLES2::USE_GLOW_LEVEL5, false);
- state.tonemap_shader.set_conditional(TonemapShaderGLES2::USE_GLOW_LEVEL6, false);
- state.tonemap_shader.set_conditional(TonemapShaderGLES2::USE_GLOW_LEVEL7, false);
- state.tonemap_shader.set_conditional(TonemapShaderGLES2::USE_GLOW_REPLACE, false);
- state.tonemap_shader.set_conditional(TonemapShaderGLES2::USE_GLOW_SCREEN, false);
- state.tonemap_shader.set_conditional(TonemapShaderGLES2::USE_GLOW_SOFTLIGHT, false);
- state.tonemap_shader.set_conditional(TonemapShaderGLES2::USE_GLOW_FILTER_BICUBIC, false);
- state.tonemap_shader.set_conditional(TonemapShaderGLES2::USE_MULTI_TEXTURE_GLOW, false);
- state.tonemap_shader.set_conditional(TonemapShaderGLES2::USE_BCS, false);
- state.tonemap_shader.set_conditional(TonemapShaderGLES2::USE_COLOR_CORRECTION, false);
-}
-
-void RasterizerSceneGLES2::render_scene(const Transform &p_cam_transform, const CameraMatrix &p_cam_projection, bool p_cam_ortogonal, InstanceBase **p_cull_result, int p_cull_count, RID *p_light_cull_result, int p_light_cull_count, RID *p_reflection_probe_cull_result, int p_reflection_probe_cull_count, RID p_environment, RID p_shadow_atlas, RID p_reflection_atlas, RID p_reflection_probe, int p_reflection_probe_pass) {
- Transform cam_transform = p_cam_transform;
-
- storage->info.render.object_count += p_cull_count;
-
- GLuint current_fb = 0;
- Environment *env = nullptr;
-
- int viewport_width, viewport_height;
- int viewport_x = 0;
- int viewport_y = 0;
- bool probe_interior = false;
- bool reverse_cull = false;
-
- if (storage->frame.current_rt && storage->frame.current_rt->flags[RasterizerStorage::RENDER_TARGET_VFLIP]) {
- cam_transform.basis.set_axis(1, -cam_transform.basis.get_axis(1));
- reverse_cull = true;
- }
-
- if (p_reflection_probe.is_valid()) {
- ReflectionProbeInstance *probe = reflection_probe_instance_owner.getornull(p_reflection_probe);
- ERR_FAIL_COND(!probe);
- state.render_no_shadows = !probe->probe_ptr->enable_shadows;
-
- if (!probe->probe_ptr->interior) { //use env only if not interior
- env = environment_owner.getornull(p_environment);
- }
-
- current_fb = probe->fbo[p_reflection_probe_pass];
-
- viewport_width = probe->probe_ptr->resolution;
- viewport_height = probe->probe_ptr->resolution;
-
- probe_interior = probe->probe_ptr->interior;
-
- } else {
- state.render_no_shadows = false;
- if (storage->frame.current_rt->multisample_active) {
- current_fb = storage->frame.current_rt->multisample_fbo;
- } else if (storage->frame.current_rt->external.fbo != 0) {
- current_fb = storage->frame.current_rt->external.fbo;
- } else {
- current_fb = storage->frame.current_rt->fbo;
- }
- env = environment_owner.getornull(p_environment);
-
- viewport_width = storage->frame.current_rt->width;
- viewport_height = storage->frame.current_rt->height;
- viewport_x = storage->frame.current_rt->x;
-
- if (storage->frame.current_rt->flags[RasterizerStorage::RENDER_TARGET_DIRECT_TO_SCREEN]) {
- viewport_y = DisplayServer::get_singleton()->window_get_size().height - viewport_height - storage->frame.current_rt->y;
- } else {
- viewport_y = storage->frame.current_rt->y;
- }
- }
-
- state.used_screen_texture = false;
- state.viewport_size.x = viewport_width;
- state.viewport_size.y = viewport_height;
- state.screen_pixel_size.x = 1.0 / viewport_width;
- state.screen_pixel_size.y = 1.0 / viewport_height;
-
- //push back the directional lights
-
- if (p_light_cull_count) {
- //hardcoded limit of 256 lights
- render_light_instance_count = MIN(RenderList::MAX_LIGHTS, p_light_cull_count);
- render_light_instances = (LightInstance **)alloca(sizeof(LightInstance *) * render_light_instance_count);
- render_directional_lights = 0;
-
- //doing this because directional lights are at the end, put them at the beginning
- int index = 0;
- for (int i = render_light_instance_count - 1; i >= 0; i--) {
- RID light_rid = p_light_cull_result[i];
-
- LightInstance *light = light_instance_owner.getornull(light_rid);
-
- if (light->light_ptr->type == RS::LIGHT_DIRECTIONAL) {
- render_directional_lights++;
- //as going in reverse, directional lights are always first anyway
- }
-
- light->light_index = index;
- render_light_instances[index] = light;
-
- index++;
- }
-
- } else {
- render_light_instances = nullptr;
- render_directional_lights = 0;
- render_light_instance_count = 0;
- }
-
- if (p_reflection_probe_cull_count) {
- reflection_probe_instances = (ReflectionProbeInstance **)alloca(sizeof(ReflectionProbeInstance *) * p_reflection_probe_cull_count);
- reflection_probe_count = p_reflection_probe_cull_count;
- for (int i = 0; i < p_reflection_probe_cull_count; i++) {
- ReflectionProbeInstance *rpi = reflection_probe_instance_owner.getornull(p_reflection_probe_cull_result[i]);
- ERR_CONTINUE(!rpi);
- rpi->last_pass = render_pass + 1; //will be incremented later
- rpi->index = i;
- reflection_probe_instances[i] = rpi;
- }
-
- } else {
- reflection_probe_instances = nullptr;
- reflection_probe_count = 0;
- }
-
- if (env && env->bg_mode == RS::ENV_BG_CANVAS) {
- // If using canvas background, copy 2d to screen copy texture
- // TODO: When GLES2 renders to current_rt->mip_maps[], this copy will no longer be needed
- _copy_texture_to_buffer(storage->frame.current_rt->color, storage->frame.current_rt->copy_screen_effect.fbo);
- }
-
- // render list stuff
-
- render_list.clear();
- _fill_render_list(p_cull_result, p_cull_count, false, false);
-
- // other stuff
-
- glBindFramebuffer(GL_FRAMEBUFFER, current_fb);
- glViewport(viewport_x, viewport_y, viewport_width, viewport_height);
-
- if (storage->frame.current_rt && storage->frame.current_rt->flags[RasterizerStorage::RENDER_TARGET_DIRECT_TO_SCREEN]) {
- glScissor(viewport_x, viewport_y, viewport_width, viewport_height);
- glEnable(GL_SCISSOR_TEST);
- }
-
- glDepthFunc(GL_LEQUAL);
- glDepthMask(GL_TRUE);
- glClearDepth(1.0f);
- glEnable(GL_DEPTH_TEST);
- glClear(GL_DEPTH_BUFFER_BIT);
-
- // clear color
-
- Color clear_color(0, 0, 0, 1);
- Ref<CameraFeed> feed;
-
- if (storage->frame.current_rt && storage->frame.current_rt->flags[RasterizerStorage::RENDER_TARGET_TRANSPARENT]) {
- clear_color = Color(0, 0, 0, 0);
- storage->frame.clear_request = false;
- } else if (!env || env->bg_mode == RS::ENV_BG_CLEAR_COLOR || env->bg_mode == RS::ENV_BG_SKY) {
- if (storage->frame.clear_request) {
- clear_color = storage->frame.clear_request_color;
- storage->frame.clear_request = false;
- }
- } else if (env->bg_mode == RS::ENV_BG_CANVAS || env->bg_mode == RS::ENV_BG_COLOR || env->bg_mode == RS::ENV_BG_COLOR_SKY) {
- clear_color = env->bg_color;
- storage->frame.clear_request = false;
- } else if (env->bg_mode == RS::ENV_BG_CAMERA_FEED) {
- feed = CameraServer::get_singleton()->get_feed_by_id(env->camera_feed_id);
- storage->frame.clear_request = false;
- } else {
- storage->frame.clear_request = false;
- }
-
- if (!env || env->bg_mode != RS::ENV_BG_KEEP) {
- glClearColor(clear_color.r, clear_color.g, clear_color.b, clear_color.a);
- glClear(GL_COLOR_BUFFER_BIT);
- }
-
- state.default_ambient = Color(clear_color.r, clear_color.g, clear_color.b, 1.0);
- state.default_bg = Color(clear_color.r, clear_color.g, clear_color.b, 1.0);
-
- if (storage->frame.current_rt && storage->frame.current_rt->flags[RasterizerStorage::RENDER_TARGET_DIRECT_TO_SCREEN]) {
- glDisable(GL_SCISSOR_TEST);
- }
-
- glVertexAttrib4f(RS::ARRAY_COLOR, 1, 1, 1, 1);
-
- glBlendEquation(GL_FUNC_ADD);
- glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
-
- // render sky
- RasterizerStorageGLES2::Sky *sky = nullptr;
- GLuint env_radiance_tex = 0;
- if (env) {
- switch (env->bg_mode) {
- case RS::ENV_BG_COLOR_SKY:
- case RS::ENV_BG_SKY: {
- sky = storage->sky_owner.getornull(env->sky);
-
- if (sky) {
- env_radiance_tex = sky->radiance;
- }
- } break;
- case RS::ENV_BG_CAMERA_FEED: {
- if (feed.is_valid() && (feed->get_base_width() > 0) && (feed->get_base_height() > 0)) {
- // copy our camera feed to our background
-
- glDisable(GL_BLEND);
- glDepthMask(GL_FALSE);
- glDisable(GL_DEPTH_TEST);
- glDisable(GL_CULL_FACE);
-
- storage->shaders.copy.set_conditional(CopyShaderGLES2::USE_NO_ALPHA, true);
- storage->shaders.copy.set_conditional(CopyShaderGLES2::USE_DISPLAY_TRANSFORM, true);
-
- if (feed->get_datatype() == CameraFeed::FEED_RGB) {
- RID camera_RGBA = feed->get_texture(CameraServer::FEED_RGBA_IMAGE);
-
- RS::get_singleton()->texture_bind(camera_RGBA, 0);
-
- } else if (feed->get_datatype() == CameraFeed::FEED_YCBCR) {
- RID camera_YCbCr = feed->get_texture(CameraServer::FEED_YCBCR_IMAGE);
-
- RS::get_singleton()->texture_bind(camera_YCbCr, 0);
-
- storage->shaders.copy.set_conditional(CopyShaderGLES2::YCBCR_TO_RGB, true);
-
- } else if (feed->get_datatype() == CameraFeed::FEED_YCBCR_SEP) {
- RID camera_Y = feed->get_texture(CameraServer::FEED_Y_IMAGE);
- RID camera_CbCr = feed->get_texture(CameraServer::FEED_CBCR_IMAGE);
-
- RS::get_singleton()->texture_bind(camera_Y, 0);
- RS::get_singleton()->texture_bind(camera_CbCr, 1);
-
- storage->shaders.copy.set_conditional(CopyShaderGLES2::SEP_CBCR_TEXTURE, true);
- storage->shaders.copy.set_conditional(CopyShaderGLES2::YCBCR_TO_RGB, true);
- };
-
- storage->shaders.copy.bind();
- storage->shaders.copy.set_uniform(CopyShaderGLES2::DISPLAY_TRANSFORM, feed->get_transform());
-
- storage->bind_quad_array();
- glDrawArrays(GL_TRIANGLE_FAN, 0, 4);
- glDisableVertexAttribArray(RS::ARRAY_VERTEX);
- glDisableVertexAttribArray(RS::ARRAY_TEX_UV);
- glBindBuffer(GL_ARRAY_BUFFER, 0);
-
- // turn off everything used
- storage->shaders.copy.set_conditional(CopyShaderGLES2::SEP_CBCR_TEXTURE, false);
- storage->shaders.copy.set_conditional(CopyShaderGLES2::YCBCR_TO_RGB, false);
- storage->shaders.copy.set_conditional(CopyShaderGLES2::USE_NO_ALPHA, false);
- storage->shaders.copy.set_conditional(CopyShaderGLES2::USE_DISPLAY_TRANSFORM, false);
-
- //restore
- glEnable(GL_BLEND);
- glDepthMask(GL_TRUE);
- glEnable(GL_DEPTH_TEST);
- glEnable(GL_CULL_FACE);
- } else {
- // don't have a feed, just show greenscreen :)
- clear_color = Color(0.0, 1.0, 0.0, 1.0);
- }
- } break;
- case RS::ENV_BG_CANVAS: {
- // use screen copy as background
- _copy_texture_to_buffer(storage->frame.current_rt->copy_screen_effect.color, current_fb);
- } break;
- default: {
- } break;
- }
- }
-
- if (probe_interior) {
- env_radiance_tex = 0; //do not use radiance texture on interiors
- state.default_ambient = Color(0, 0, 0, 1); //black as default ambient for interior
- state.default_bg = Color(0, 0, 0, 1); //black as default background for interior
- }
-
- // render opaque things first
- render_list.sort_by_key(false);
- _render_render_list(render_list.elements, render_list.element_count, cam_transform, p_cam_projection, p_shadow_atlas, env, env_radiance_tex, 0.0, 0.0, reverse_cull, false, false);
-
- // then draw the sky after
- if (env && env->bg_mode == RS::ENV_BG_SKY && (!storage->frame.current_rt || !storage->frame.current_rt->flags[RasterizerStorage::RENDER_TARGET_TRANSPARENT])) {
- if (sky && sky->panorama.is_valid()) {
- _draw_sky(sky, p_cam_projection, cam_transform, false, env->sky_custom_fov, env->bg_energy, env->sky_orientation);
- }
- }
-
- if (storage->frame.current_rt && state.used_screen_texture) {
- //copy screen texture
-
- if (storage->frame.current_rt->multisample_active) {
- // Resolve framebuffer to front buffer before copying
-#ifdef GLES_OVER_GL
-
- glBindFramebuffer(GL_READ_FRAMEBUFFER, storage->frame.current_rt->multisample_fbo);
- glReadBuffer(GL_COLOR_ATTACHMENT0);
- glBindFramebuffer(GL_DRAW_FRAMEBUFFER, storage->frame.current_rt->fbo);
- glBlitFramebuffer(0, 0, storage->frame.current_rt->width, storage->frame.current_rt->height, 0, 0, storage->frame.current_rt->width, storage->frame.current_rt->height, GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT, GL_NEAREST);
-
- glBindFramebuffer(GL_READ_FRAMEBUFFER, 0);
- glBindFramebuffer(GL_DRAW_FRAMEBUFFER, 0);
-#elif IPHONE_ENABLED
-
- glBindFramebuffer(GL_READ_FRAMEBUFFER, storage->frame.current_rt->multisample_fbo);
- glBindFramebuffer(GL_DRAW_FRAMEBUFFER, storage->frame.current_rt->fbo);
- glResolveMultisampleFramebufferAPPLE();
-
- glBindFramebuffer(GL_READ_FRAMEBUFFER, 0);
- glBindFramebuffer(GL_DRAW_FRAMEBUFFER, 0);
-#elif ANDROID_ENABLED
-
- // In GLES2 AndroidBlit is not available, so just copy color texture manually
- _copy_texture_to_buffer(storage->frame.current_rt->multisample_color, storage->frame.current_rt->fbo);
-#endif
- }
-
- storage->canvas->_copy_screen(Rect2());
-
- if (storage->frame.current_rt && storage->frame.current_rt->multisample_active) {
- // Rebind the current framebuffer
- glBindFramebuffer(GL_FRAMEBUFFER, current_fb);
- glViewport(0, 0, viewport_width, viewport_height);
- }
- }
- // alpha pass
-
- glBlendEquation(GL_FUNC_ADD);
- glBlendFunc(GL_ONE, GL_ONE_MINUS_SRC_ALPHA);
-
- render_list.sort_by_reverse_depth_and_priority(true);
-
- _render_render_list(&render_list.elements[render_list.max_elements - render_list.alpha_element_count], render_list.alpha_element_count, cam_transform, p_cam_projection, p_shadow_atlas, env, env_radiance_tex, 0.0, 0.0, reverse_cull, true, false);
-
- if (p_reflection_probe.is_valid()) {
- // Rendering to a probe so no need for post_processing
- return;
- }
-
- //post process
- _post_process(env, p_cam_projection);
-
- //#define GLES2_SHADOW_ATLAS_DEBUG_VIEW
-
-#ifdef GLES2_SHADOW_ATLAS_DEBUG_VIEW
- ShadowAtlas *shadow_atlas = shadow_atlas_owner.getornull(p_shadow_atlas);
- if (shadow_atlas) {
- glActiveTexture(GL_TEXTURE0);
- glBindTexture(GL_TEXTURE_2D, shadow_atlas->depth);
-
- glViewport(0, 0, storage->frame.current_rt->width / 4, storage->frame.current_rt->height / 4);
- storage->shaders.copy.set_conditional(CopyShaderGLES2::USE_CUBEMAP, false);
- storage->shaders.copy.set_conditional(CopyShaderGLES2::USE_COPY_SECTION, false);
- storage->shaders.copy.set_conditional(CopyShaderGLES2::USE_CUSTOM_ALPHA, false);
- storage->shaders.copy.set_conditional(CopyShaderGLES2::USE_MULTIPLIER, false);
- storage->shaders.copy.set_conditional(CopyShaderGLES2::USE_PANORAMA, false);
- storage->shaders.copy.bind();
-
- storage->_copy_screen();
- }
-#endif
-
- //#define GLES2_SHADOW_DIRECTIONAL_DEBUG_VIEW
-
-#ifdef GLES2_SHADOW_DIRECTIONAL_DEBUG_VIEW
- if (true) {
- glActiveTexture(GL_TEXTURE0);
- glBindTexture(GL_TEXTURE_2D, directional_shadow.depth);
-
- glViewport(0, 0, storage->frame.current_rt->width / 4, storage->frame.current_rt->height / 4);
- storage->shaders.copy.set_conditional(CopyShaderGLES2::USE_CUBEMAP, false);
- storage->shaders.copy.set_conditional(CopyShaderGLES2::USE_COPY_SECTION, false);
- storage->shaders.copy.set_conditional(CopyShaderGLES2::USE_CUSTOM_ALPHA, false);
- storage->shaders.copy.set_conditional(CopyShaderGLES2::USE_MULTIPLIER, false);
- storage->shaders.copy.set_conditional(CopyShaderGLES2::USE_PANORAMA, false);
- storage->shaders.copy.bind();
-
- storage->_copy_screen();
- }
-#endif
-}
-
-void RasterizerSceneGLES2::render_shadow(RID p_light, RID p_shadow_atlas, int p_pass, InstanceBase **p_cull_result, int p_cull_count) {
- state.render_no_shadows = false;
-
- LightInstance *light_instance = light_instance_owner.getornull(p_light);
- ERR_FAIL_COND(!light_instance);
-
- RasterizerStorageGLES2::Light *light = light_instance->light_ptr;
- ERR_FAIL_COND(!light);
-
- uint32_t x;
- uint32_t y;
- uint32_t width;
- uint32_t height;
-
- float zfar = 0;
- bool flip_facing = false;
- int custom_vp_size = 0;
- GLuint fbo = 0;
- state.shadow_is_dual_parabolloid = false;
- state.dual_parbolloid_direction = 0.0;
-
- int current_cubemap = -1;
- float bias = 0;
- float normal_bias = 0;
-
- CameraMatrix light_projection;
- Transform light_transform;
-
- // TODO directional light
-
- if (light->type == RS::LIGHT_DIRECTIONAL) {
- // set pssm stuff
-
- // TODO set this only when changed
-
- light_instance->light_directional_index = directional_shadow.current_light;
- light_instance->last_scene_shadow_pass = scene_pass;
-
- directional_shadow.current_light++;
-
- if (directional_shadow.light_count == 1) {
- light_instance->directional_rect = Rect2(0, 0, directional_shadow.size, directional_shadow.size);
- } else if (directional_shadow.light_count == 2) {
- light_instance->directional_rect = Rect2(0, 0, directional_shadow.size, directional_shadow.size / 2);
- if (light_instance->light_directional_index == 1) {
- light_instance->directional_rect.position.x += light_instance->directional_rect.size.x;
- }
- } else { //3 and 4
- light_instance->directional_rect = Rect2(0, 0, directional_shadow.size / 2, directional_shadow.size / 2);
- if (light_instance->light_directional_index & 1) {
- light_instance->directional_rect.position.x += light_instance->directional_rect.size.x;
- }
- if (light_instance->light_directional_index / 2) {
- light_instance->directional_rect.position.y += light_instance->directional_rect.size.y;
- }
- }
-
- light_projection = light_instance->shadow_transform[p_pass].camera;
- light_transform = light_instance->shadow_transform[p_pass].transform;
-
- x = light_instance->directional_rect.position.x;
- y = light_instance->directional_rect.position.y;
- width = light_instance->directional_rect.size.width;
- height = light_instance->directional_rect.size.height;
-
- if (light->directional_shadow_mode == RS::LIGHT_DIRECTIONAL_SHADOW_PARALLEL_4_SPLITS) {
- width /= 2;
- height /= 2;
-
- if (p_pass == 1) {
- x += width;
- } else if (p_pass == 2) {
- y += height;
- } else if (p_pass == 3) {
- x += width;
- y += height;
- }
-
- } else if (light->directional_shadow_mode == RS::LIGHT_DIRECTIONAL_SHADOW_PARALLEL_2_SPLITS) {
- height /= 2;
-
- if (p_pass == 0) {
- } else {
- y += height;
- }
- }
-
- float bias_mult = Math::lerp(1.0f, light_instance->shadow_transform[p_pass].bias_scale, light->param[RS::LIGHT_PARAM_SHADOW_BIAS_SPLIT_SCALE]);
- zfar = light->param[RS::LIGHT_PARAM_RANGE];
- bias = light->param[RS::LIGHT_PARAM_SHADOW_BIAS] * bias_mult;
- normal_bias = light->param[RS::LIGHT_PARAM_SHADOW_NORMAL_BIAS] * bias_mult;
-
- fbo = directional_shadow.fbo;
- } else {
- ShadowAtlas *shadow_atlas = shadow_atlas_owner.getornull(p_shadow_atlas);
- ERR_FAIL_COND(!shadow_atlas);
- ERR_FAIL_COND(!shadow_atlas->shadow_owners.has(p_light));
-
- fbo = shadow_atlas->fbo;
-
- uint32_t key = shadow_atlas->shadow_owners[p_light];
-
- uint32_t quadrant = (key >> ShadowAtlas::QUADRANT_SHIFT) & 0x03;
- uint32_t shadow = key & ShadowAtlas::SHADOW_INDEX_MASK;
-
- ERR_FAIL_INDEX((int)shadow, shadow_atlas->quadrants[quadrant].shadows.size());
-
- uint32_t quadrant_size = shadow_atlas->size >> 1;
-
- x = (quadrant & 1) * quadrant_size;
- y = (quadrant >> 1) * quadrant_size;
-
- uint32_t shadow_size = (quadrant_size / shadow_atlas->quadrants[quadrant].subdivision);
- x += (shadow % shadow_atlas->quadrants[quadrant].subdivision) * shadow_size;
- y += (shadow / shadow_atlas->quadrants[quadrant].subdivision) * shadow_size;
-
- width = shadow_size;
- height = shadow_size;
-
- if (light->type == RS::LIGHT_OMNI) {
- // cubemap only
- if (light->omni_shadow_mode == RS::LIGHT_OMNI_SHADOW_CUBE && storage->config.support_shadow_cubemaps) {
- int cubemap_index = shadow_cubemaps.size() - 1;
-
- // find an appropriate cubemap to render to
- for (int i = shadow_cubemaps.size() - 1; i >= 0; i--) {
- if (shadow_cubemaps[i].size > shadow_size * 2) {
- break;
- }
-
- cubemap_index = i;
- }
-
- fbo = shadow_cubemaps[cubemap_index].fbo[p_pass];
- light_projection = light_instance->shadow_transform[0].camera;
- light_transform = light_instance->shadow_transform[0].transform;
-
- custom_vp_size = shadow_cubemaps[cubemap_index].size;
- zfar = light->param[RS::LIGHT_PARAM_RANGE];
-
- current_cubemap = cubemap_index;
- } else {
- //dual parabolloid
- state.shadow_is_dual_parabolloid = true;
- light_projection = light_instance->shadow_transform[0].camera;
- light_transform = light_instance->shadow_transform[0].transform;
-
- if (light->omni_shadow_detail == RS::LIGHT_OMNI_SHADOW_DETAIL_HORIZONTAL) {
- height /= 2;
- y += p_pass * height;
- } else {
- width /= 2;
- x += p_pass * width;
- }
-
- state.dual_parbolloid_direction = p_pass == 0 ? 1.0 : -1.0;
- flip_facing = (p_pass == 1);
- zfar = light->param[RS::LIGHT_PARAM_RANGE];
- bias = light->param[RS::LIGHT_PARAM_SHADOW_BIAS];
-
- state.dual_parbolloid_zfar = zfar;
-
- state.scene_shader.set_conditional(SceneShaderGLES2::RENDER_DEPTH_DUAL_PARABOLOID, true);
- }
-
- } else if (light->type == RS::LIGHT_SPOT) {
- light_projection = light_instance->shadow_transform[0].camera;
- light_transform = light_instance->shadow_transform[0].transform;
-
- flip_facing = false;
- zfar = light->param[RS::LIGHT_PARAM_RANGE];
- bias = light->param[RS::LIGHT_PARAM_SHADOW_BIAS];
- normal_bias = light->param[RS::LIGHT_PARAM_SHADOW_NORMAL_BIAS];
- }
- }
-
- render_list.clear();
-
- _fill_render_list(p_cull_result, p_cull_count, true, true);
-
- render_list.sort_by_depth(false);
-
- glDisable(GL_BLEND);
- glDisable(GL_DITHER);
- glEnable(GL_DEPTH_TEST);
-
- glBindFramebuffer(GL_FRAMEBUFFER, fbo);
-
- glDepthMask(GL_TRUE);
- if (!storage->config.use_rgba_3d_shadows) {
- glColorMask(0, 0, 0, 0);
- }
-
- if (custom_vp_size) {
- glViewport(0, 0, custom_vp_size, custom_vp_size);
- glScissor(0, 0, custom_vp_size, custom_vp_size);
- } else {
- glViewport(x, y, width, height);
- glScissor(x, y, width, height);
- }
-
- glEnable(GL_SCISSOR_TEST);
- glClearDepth(1.0f);
- glClear(GL_DEPTH_BUFFER_BIT);
- if (storage->config.use_rgba_3d_shadows) {
- glClearColor(1.0, 1.0, 1.0, 1.0);
- glClear(GL_COLOR_BUFFER_BIT);
- }
- glDisable(GL_SCISSOR_TEST);
-
- if (light->reverse_cull) {
- flip_facing = !flip_facing;
- }
-
- state.scene_shader.set_conditional(SceneShaderGLES2::RENDER_DEPTH, true);
-
- _render_render_list(render_list.elements, render_list.element_count, light_transform, light_projection, RID(), nullptr, 0, bias, normal_bias, flip_facing, false, true);
-
- state.scene_shader.set_conditional(SceneShaderGLES2::RENDER_DEPTH, false);
- state.scene_shader.set_conditional(SceneShaderGLES2::RENDER_DEPTH_DUAL_PARABOLOID, false);
-
- // convert cubemap to dual paraboloid if needed
- if (light->type == RS::LIGHT_OMNI && (light->omni_shadow_mode == RS::LIGHT_OMNI_SHADOW_CUBE && storage->config.support_shadow_cubemaps) && p_pass == 5) {
- ShadowAtlas *shadow_atlas = shadow_atlas_owner.getornull(p_shadow_atlas);
-
- glBindFramebuffer(GL_FRAMEBUFFER, shadow_atlas->fbo);
- state.cube_to_dp_shader.bind();
-
- glActiveTexture(GL_TEXTURE0);
- glBindTexture(GL_TEXTURE_CUBE_MAP, shadow_cubemaps[current_cubemap].cubemap);
-
- glDisable(GL_CULL_FACE);
-
- for (int i = 0; i < 2; i++) {
- state.cube_to_dp_shader.set_uniform(CubeToDpShaderGLES2::Z_FLIP, i == 1);
- state.cube_to_dp_shader.set_uniform(CubeToDpShaderGLES2::Z_NEAR, light_projection.get_z_near());
- state.cube_to_dp_shader.set_uniform(CubeToDpShaderGLES2::Z_FAR, light_projection.get_z_far());
- state.cube_to_dp_shader.set_uniform(CubeToDpShaderGLES2::BIAS, light->param[RS::LIGHT_PARAM_SHADOW_BIAS]);
-
- uint32_t local_width = width;
- uint32_t local_height = height;
- uint32_t local_x = x;
- uint32_t local_y = y;
-
- if (light->omni_shadow_detail == RS::LIGHT_OMNI_SHADOW_DETAIL_HORIZONTAL) {
- local_height /= 2;
- local_y += i * local_height;
- } else {
- local_width /= 2;
- local_x += i * local_width;
- }
-
- glViewport(local_x, local_y, local_width, local_height);
- glScissor(local_x, local_y, local_width, local_height);
-
- glEnable(GL_SCISSOR_TEST);
-
- glClearDepth(1.0f);
-
- glClear(GL_DEPTH_BUFFER_BIT);
- glDisable(GL_SCISSOR_TEST);
-
- glDisable(GL_BLEND);
-
- storage->_copy_screen();
- }
- }
-
- if (storage->frame.current_rt) {
- glViewport(0, 0, storage->frame.current_rt->width, storage->frame.current_rt->height);
- }
- if (!storage->config.use_rgba_3d_shadows) {
- glColorMask(1, 1, 1, 1);
- }
-}
-
-void RasterizerSceneGLES2::set_scene_pass(uint64_t p_pass) {
- scene_pass = p_pass;
-}
-
-bool RasterizerSceneGLES2::free(RID p_rid) {
- if (light_instance_owner.owns(p_rid)) {
- LightInstance *light_instance = light_instance_owner.getornull(p_rid);
-
- //remove from shadow atlases..
- for (Set<RID>::Element *E = light_instance->shadow_atlases.front(); E; E = E->next()) {
- ShadowAtlas *shadow_atlas = shadow_atlas_owner.getornull(E->get());
- ERR_CONTINUE(!shadow_atlas->shadow_owners.has(p_rid));
- uint32_t key = shadow_atlas->shadow_owners[p_rid];
- uint32_t q = (key >> ShadowAtlas::QUADRANT_SHIFT) & 0x3;
- uint32_t s = key & ShadowAtlas::SHADOW_INDEX_MASK;
-
- shadow_atlas->quadrants[q].shadows.write[s].owner = RID();
- shadow_atlas->shadow_owners.erase(p_rid);
- }
-
- light_instance_owner.free(p_rid);
- memdelete(light_instance);
-
- } else if (shadow_atlas_owner.owns(p_rid)) {
- ShadowAtlas *shadow_atlas = shadow_atlas_owner.getornull(p_rid);
- shadow_atlas_set_size(p_rid, 0);
- shadow_atlas_owner.free(p_rid);
- memdelete(shadow_atlas);
- } else if (reflection_probe_instance_owner.owns(p_rid)) {
- ReflectionProbeInstance *reflection_instance = reflection_probe_instance_owner.getornull(p_rid);
-
- for (int i = 0; i < 6; i++) {
- glDeleteFramebuffers(1, &reflection_instance->fbo[i]);
- glDeleteTextures(1, &reflection_instance->color[i]);
- }
-
- if (reflection_instance->cubemap != 0) {
- glDeleteTextures(1, &reflection_instance->cubemap);
- }
- glDeleteRenderbuffers(1, &reflection_instance->depth);
-
- reflection_probe_release_atlas_index(p_rid);
- reflection_probe_instance_owner.free(p_rid);
- memdelete(reflection_instance);
-
- } else {
- return false;
- }
-
- return true;
-}
-
-void RasterizerSceneGLES2::set_debug_draw_mode(RS::ViewportDebugDraw p_debug_draw) {
-}
-
-void RasterizerSceneGLES2::initialize() {
- state.scene_shader.init();
-
- state.scene_shader.set_conditional(SceneShaderGLES2::USE_RGBA_SHADOWS, storage->config.use_rgba_3d_shadows);
- state.cube_to_dp_shader.init();
- state.effect_blur_shader.init();
- state.tonemap_shader.init();
-
- render_list.init();
-
- render_pass = 1;
-
- shadow_atlas_realloc_tolerance_msec = 500;
-
- {
- //default material and shader
-
- default_shader = storage->shader_create();
- storage->shader_set_code(default_shader, "shader_type spatial;\n");
- default_material = storage->material_create();
- storage->material_set_shader(default_material, default_shader);
-
- default_shader_twosided = storage->shader_create();
- default_material_twosided = storage->material_create();
- storage->shader_set_code(default_shader_twosided, "shader_type spatial; render_mode cull_disabled;\n");
- storage->material_set_shader(default_material_twosided, default_shader_twosided);
- }
-
- {
- default_worldcoord_shader = storage->shader_create();
- storage->shader_set_code(default_worldcoord_shader, "shader_type spatial; render_mode world_vertex_coords;\n");
- default_worldcoord_material = storage->material_create();
- storage->material_set_shader(default_worldcoord_material, default_worldcoord_shader);
-
- default_worldcoord_shader_twosided = storage->shader_create();
- default_worldcoord_material_twosided = storage->material_create();
- storage->shader_set_code(default_worldcoord_shader_twosided, "shader_type spatial; render_mode cull_disabled,world_vertex_coords;\n");
- storage->material_set_shader(default_worldcoord_material_twosided, default_worldcoord_shader_twosided);
- }
-
- {
- //default material and shader
-
- default_overdraw_shader = storage->shader_create();
- storage->shader_set_code(default_overdraw_shader, "shader_type spatial;\nrender_mode blend_add,unshaded;\n void fragment() { ALBEDO=vec3(0.4,0.8,0.8); ALPHA=0.2; }");
- default_overdraw_material = storage->material_create();
- storage->material_set_shader(default_overdraw_material, default_overdraw_shader);
- }
-
- {
- glGenBuffers(1, &state.sky_verts);
- glBindBuffer(GL_ARRAY_BUFFER, state.sky_verts);
- glBufferData(GL_ARRAY_BUFFER, sizeof(Vector3) * 8, nullptr, GL_DYNAMIC_DRAW);
- glBindBuffer(GL_ARRAY_BUFFER, 0);
- }
-
- {
- uint32_t immediate_buffer_size = GLOBAL_DEF("rendering/limits/buffers/immediate_buffer_size_kb", 2048);
- ProjectSettings::get_singleton()->set_custom_property_info("rendering/limits/buffers/immediate_buffer_size_kb", PropertyInfo(Variant::INT, "rendering/limits/buffers/immediate_buffer_size_kb", PROPERTY_HINT_RANGE, "0,8192,1,or_greater"));
-
- glGenBuffers(1, &state.immediate_buffer);
- glBindBuffer(GL_ARRAY_BUFFER, state.immediate_buffer);
- glBufferData(GL_ARRAY_BUFFER, immediate_buffer_size * 1024, nullptr, GL_DYNAMIC_DRAW);
- glBindBuffer(GL_ARRAY_BUFFER, 0);
- }
-
- // cubemaps for shadows
- if (storage->config.support_shadow_cubemaps) { //not going to be used
- int max_shadow_cubemap_sampler_size = 512;
-
- int cube_size = max_shadow_cubemap_sampler_size;
-
- glActiveTexture(GL_TEXTURE0);
-
- while (cube_size >= 32) {
- ShadowCubeMap cube;
-
- cube.size = cube_size;
-
- glGenTextures(1, &cube.cubemap);
- glBindTexture(GL_TEXTURE_CUBE_MAP, cube.cubemap);
-
- for (int i = 0; i < 6; i++) {
- glTexImage2D(_cube_side_enum[i], 0, storage->config.depth_internalformat, cube_size, cube_size, 0, GL_DEPTH_COMPONENT, storage->config.depth_type, nullptr);
- }
-
- glTexParameteri(GL_TEXTURE_CUBE_MAP, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
- glTexParameteri(GL_TEXTURE_CUBE_MAP, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
-
- glTexParameteri(GL_TEXTURE_CUBE_MAP, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);
- glTexParameteri(GL_TEXTURE_CUBE_MAP, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);
-
- glGenFramebuffers(6, cube.fbo);
- for (int i = 0; i < 6; i++) {
- glBindFramebuffer(GL_FRAMEBUFFER, cube.fbo[i]);
- glFramebufferTexture2D(GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, _cube_side_enum[i], cube.cubemap, 0);
- }
-
- shadow_cubemaps.push_back(cube);
-
- cube_size >>= 1;
- }
- }
-
- {
- // directional shadows
-
- directional_shadow.light_count = 0;
- directional_shadow.size = next_power_of_2(GLOBAL_GET("rendering/quality/directional_shadow/size"));
-
- glGenFramebuffers(1, &directional_shadow.fbo);
- glBindFramebuffer(GL_FRAMEBUFFER, directional_shadow.fbo);
-
- if (storage->config.use_rgba_3d_shadows) {
- //maximum compatibility, renderbuffer and RGBA shadow
- glGenRenderbuffers(1, &directional_shadow.depth);
- glBindRenderbuffer(GL_RENDERBUFFER, directional_shadow.depth);
- glRenderbufferStorage(GL_RENDERBUFFER, storage->config.depth_buffer_internalformat, directional_shadow.size, directional_shadow.size);
- glFramebufferRenderbuffer(GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, GL_RENDERBUFFER, directional_shadow.depth);
-
- glGenTextures(1, &directional_shadow.color);
- glBindTexture(GL_TEXTURE_2D, directional_shadow.color);
- glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, directional_shadow.size, directional_shadow.size, 0, GL_RGBA, GL_UNSIGNED_BYTE, nullptr);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
- glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);
- glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);
- glFramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, directional_shadow.color, 0);
- } else {
- //just a depth buffer
- glGenTextures(1, &directional_shadow.depth);
- glBindTexture(GL_TEXTURE_2D, directional_shadow.depth);
-
- glTexImage2D(GL_TEXTURE_2D, 0, storage->config.depth_internalformat, directional_shadow.size, directional_shadow.size, 0, GL_DEPTH_COMPONENT, storage->config.depth_type, nullptr);
-
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);
-
- glFramebufferTexture2D(GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, GL_TEXTURE_2D, directional_shadow.depth, 0);
- }
-
- GLenum status = glCheckFramebufferStatus(GL_FRAMEBUFFER);
- if (status != GL_FRAMEBUFFER_COMPLETE) {
- ERR_PRINT("Directional shadow framebuffer status invalid");
- }
- }
-
- shadow_filter_mode = SHADOW_FILTER_NEAREST;
-
- glFrontFace(GL_CW);
-}
-
-void RasterizerSceneGLES2::iteration() {
- shadow_filter_mode = ShadowFilterMode(int(GLOBAL_GET("rendering/quality/shadows/filter_mode")));
-}
-
-void RasterizerSceneGLES2::finalize() {
-}
-
-RasterizerSceneGLES2::RasterizerSceneGLES2() {
-}
diff --git a/drivers/gles2/rasterizer_scene_gles2.h b/drivers/gles2/rasterizer_scene_gles2.h
deleted file mode 100644
index d017fc49a2..0000000000
--- a/drivers/gles2/rasterizer_scene_gles2.h
+++ /dev/null
@@ -1,655 +0,0 @@
-/*************************************************************************/
-/* rasterizer_scene_gles2.h */
-/*************************************************************************/
-/* This file is part of: */
-/* GODOT ENGINE */
-/* https://godotengine.org */
-/*************************************************************************/
-/* Copyright (c) 2007-2020 Juan Linietsky, Ariel Manzur. */
-/* Copyright (c) 2014-2020 Godot Engine contributors (cf. AUTHORS.md). */
-/* */
-/* Permission is hereby granted, free of charge, to any person obtaining */
-/* a copy of this software and associated documentation files (the */
-/* "Software"), to deal in the Software without restriction, including */
-/* without limitation the rights to use, copy, modify, merge, publish, */
-/* distribute, sublicense, and/or sell copies of the Software, and to */
-/* permit persons to whom the Software is furnished to do so, subject to */
-/* the following conditions: */
-/* */
-/* The above copyright notice and this permission notice shall be */
-/* included in all copies or substantial portions of the Software. */
-/* */
-/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
-/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
-/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.*/
-/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
-/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
-/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
-/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
-/*************************************************************************/
-
-#ifndef RASTERIZERSCENEGLES2_H
-#define RASTERIZERSCENEGLES2_H
-
-/* Must come before shaders or the Windows build fails... */
-#include "rasterizer_storage_gles2.h"
-
-#include "shaders/cube_to_dp.glsl.gen.h"
-#include "shaders/effect_blur.glsl.gen.h"
-#include "shaders/scene.glsl.gen.h"
-#include "shaders/tonemap.glsl.gen.h"
-
-class RasterizerSceneGLES2 : public RasterizerScene {
-public:
- enum ShadowFilterMode {
- SHADOW_FILTER_NEAREST,
- SHADOW_FILTER_PCF5,
- SHADOW_FILTER_PCF13,
- };
-
- enum {
- INSTANCE_ATTRIB_BASE = 8,
- INSTANCE_BONE_BASE = 13,
- };
-
- ShadowFilterMode shadow_filter_mode;
-
- RID default_material;
- RID default_material_twosided;
- RID default_shader;
- RID default_shader_twosided;
-
- RID default_worldcoord_material;
- RID default_worldcoord_material_twosided;
- RID default_worldcoord_shader;
- RID default_worldcoord_shader_twosided;
-
- RID default_overdraw_material;
- RID default_overdraw_shader;
-
- uint64_t render_pass;
- uint64_t scene_pass;
- uint32_t current_material_index;
- uint32_t current_geometry_index;
- uint32_t current_light_index;
- uint32_t current_refprobe_index;
- uint32_t current_shader_index;
-
- RasterizerStorageGLES2 *storage;
- struct State {
- bool texscreen_copied;
- int current_blend_mode;
- float current_line_width;
- int current_depth_draw;
- bool current_depth_test;
- GLuint current_main_tex;
-
- SceneShaderGLES2 scene_shader;
- CubeToDpShaderGLES2 cube_to_dp_shader;
- TonemapShaderGLES2 tonemap_shader;
- EffectBlurShaderGLES2 effect_blur_shader;
-
- GLuint sky_verts;
-
- GLuint immediate_buffer;
- Color default_ambient;
- Color default_bg;
-
- bool cull_front;
- bool cull_disabled;
-
- bool used_screen_texture;
- bool shadow_is_dual_parabolloid;
- float dual_parbolloid_direction;
- float dual_parbolloid_zfar;
-
- bool render_no_shadows;
-
- Vector2 viewport_size;
-
- Vector2 screen_pixel_size;
- } state;
-
- /* SHADOW ATLAS API */
-
- uint64_t shadow_atlas_realloc_tolerance_msec;
-
- struct ShadowAtlas {
- enum {
- QUADRANT_SHIFT = 27,
- SHADOW_INDEX_MASK = (1 << QUADRANT_SHIFT) - 1,
- SHADOW_INVALID = 0xFFFFFFFF,
- };
-
- struct Quadrant {
- uint32_t subdivision;
-
- struct Shadow {
- RID owner;
- uint64_t version;
- uint64_t alloc_tick;
-
- Shadow() {
- version = 0;
- alloc_tick = 0;
- }
- };
-
- Vector<Shadow> shadows;
-
- Quadrant() {
- subdivision = 0;
- }
- } quadrants[4];
-
- int size_order[4];
- uint32_t smallest_subdiv;
-
- int size;
-
- GLuint fbo;
- GLuint depth;
- GLuint color;
-
- Map<RID, uint32_t> shadow_owners;
- };
-
- struct ShadowCubeMap {
- GLuint fbo[6];
- GLuint cubemap;
- uint32_t size;
- };
-
- Vector<ShadowCubeMap> shadow_cubemaps;
-
- RID_PtrOwner<ShadowAtlas> shadow_atlas_owner;
-
- RID shadow_atlas_create();
- void shadow_atlas_set_size(RID p_atlas, int p_size);
- void shadow_atlas_set_quadrant_subdivision(RID p_atlas, int p_quadrant, int p_subdivision);
- bool _shadow_atlas_find_shadow(ShadowAtlas *shadow_atlas, int *p_in_quadrants, int p_quadrant_count, int p_current_subdiv, uint64_t p_tick, int &r_quadrant, int &r_shadow);
- bool shadow_atlas_update_light(RID p_atlas, RID p_light_intance, float p_coverage, uint64_t p_light_version);
-
- struct DirectionalShadow {
- GLuint fbo;
- GLuint depth;
- GLuint color;
-
- int light_count;
- int size;
- int current_light;
- } directional_shadow;
-
- virtual int get_directional_light_shadow_size(RID p_light_intance);
- virtual void set_directional_shadow_count(int p_count);
-
- /* REFLECTION PROBE ATLAS API */
-
- virtual RID reflection_atlas_create();
- virtual void reflection_atlas_set_size(RID p_ref_atlas, int p_size);
- virtual void reflection_atlas_set_subdivision(RID p_ref_atlas, int p_subdiv);
-
- /* REFLECTION CUBEMAPS */
-
- /* REFLECTION PROBE INSTANCE */
-
- struct ReflectionProbeInstance {
- RasterizerStorageGLES2::ReflectionProbe *probe_ptr;
- RID probe;
- RID self;
- RID atlas;
-
- int reflection_atlas_index;
-
- int render_step;
- int reflection_index;
-
- GLuint fbo[6];
- GLuint color[6];
- GLuint depth;
- GLuint cubemap;
-
- int current_resolution;
- mutable bool dirty;
-
- uint64_t last_pass;
- uint32_t index;
-
- Transform transform;
- };
-
- mutable RID_PtrOwner<ReflectionProbeInstance> reflection_probe_instance_owner;
-
- ReflectionProbeInstance **reflection_probe_instances;
- int reflection_probe_count;
-
- virtual RID reflection_probe_instance_create(RID p_probe);
- virtual void reflection_probe_instance_set_transform(RID p_instance, const Transform &p_transform);
- virtual void reflection_probe_release_atlas_index(RID p_instance);
- virtual bool reflection_probe_instance_needs_redraw(RID p_instance);
- virtual bool reflection_probe_instance_has_reflection(RID p_instance);
- virtual bool reflection_probe_instance_begin_render(RID p_instance, RID p_reflection_atlas);
- virtual bool reflection_probe_instance_postprocess_step(RID p_instance);
-
- /* ENVIRONMENT API */
-
- struct Environment {
- RS::EnvironmentBG bg_mode;
-
- RID sky;
- float sky_custom_fov;
- Basis sky_orientation;
-
- Color bg_color;
- float bg_energy;
- float sky_ambient;
-
- int camera_feed_id;
-
- Color ambient_color;
- float ambient_energy;
- float ambient_sky_contribution;
-
- int canvas_max_layer;
-
- bool glow_enabled;
- int glow_levels;
- float glow_intensity;
- float glow_strength;
- float glow_bloom;
- RS::EnvironmentGlowBlendMode glow_blend_mode;
- float glow_hdr_bleed_threshold;
- float glow_hdr_bleed_scale;
- float glow_hdr_luminance_cap;
- bool glow_bicubic_upscale;
-
- bool dof_blur_far_enabled;
- float dof_blur_far_distance;
- float dof_blur_far_transition;
- float dof_blur_far_amount;
- RS::EnvironmentDOFBlurQuality dof_blur_far_quality;
-
- bool dof_blur_near_enabled;
- float dof_blur_near_distance;
- float dof_blur_near_transition;
- float dof_blur_near_amount;
- RS::EnvironmentDOFBlurQuality dof_blur_near_quality;
-
- bool adjustments_enabled;
- float adjustments_brightness;
- float adjustments_contrast;
- float adjustments_saturation;
- RID color_correction;
-
- bool fog_enabled;
- Color fog_color;
- Color fog_sun_color;
- float fog_sun_amount;
-
- bool fog_depth_enabled;
- float fog_depth_begin;
- float fog_depth_end;
- float fog_depth_curve;
- bool fog_transmit_enabled;
- float fog_transmit_curve;
- bool fog_height_enabled;
- float fog_height_min;
- float fog_height_max;
- float fog_height_curve;
-
- Environment() :
- bg_mode(RS::ENV_BG_CLEAR_COLOR),
- sky_custom_fov(0.0),
- bg_energy(1.0),
- sky_ambient(0),
- camera_feed_id(0),
- ambient_energy(1.0),
- ambient_sky_contribution(0.0),
- canvas_max_layer(0),
- glow_enabled(false),
- glow_levels((1 << 2) | (1 << 4)),
- glow_intensity(0.8),
- glow_strength(1.0),
- glow_bloom(0.0),
- glow_blend_mode(RS::ENV_GLOW_BLEND_MODE_SOFTLIGHT),
- glow_hdr_bleed_threshold(1.0),
- glow_hdr_bleed_scale(2.0),
- glow_hdr_luminance_cap(12.0),
- glow_bicubic_upscale(false),
- dof_blur_far_enabled(false),
- dof_blur_far_distance(10),
- dof_blur_far_transition(5),
- dof_blur_far_amount(0.1),
- dof_blur_far_quality(RS::ENV_DOF_BLUR_QUALITY_MEDIUM),
- dof_blur_near_enabled(false),
- dof_blur_near_distance(2),
- dof_blur_near_transition(1),
- dof_blur_near_amount(0.1),
- dof_blur_near_quality(RS::ENV_DOF_BLUR_QUALITY_MEDIUM),
- adjustments_enabled(false),
- adjustments_brightness(1.0),
- adjustments_contrast(1.0),
- adjustments_saturation(1.0),
- fog_enabled(false),
- fog_color(Color(0.5, 0.5, 0.5)),
- fog_sun_color(Color(0.8, 0.8, 0.0)),
- fog_sun_amount(0),
- fog_depth_enabled(true),
- fog_depth_begin(10),
- fog_depth_end(0),
- fog_depth_curve(1),
- fog_transmit_enabled(true),
- fog_transmit_curve(1),
- fog_height_enabled(false),
- fog_height_min(10),
- fog_height_max(0),
- fog_height_curve(1) {
- }
- };
-
- mutable RID_PtrOwner<Environment> environment_owner;
-
- virtual RID environment_create();
-
- virtual void environment_set_background(RID p_env, RS::EnvironmentBG p_bg);
- virtual void environment_set_sky(RID p_env, RID p_sky);
- virtual void environment_set_sky_custom_fov(RID p_env, float p_scale);
- virtual void environment_set_sky_orientation(RID p_env, const Basis &p_orientation);
- virtual void environment_set_bg_color(RID p_env, const Color &p_color);
- virtual void environment_set_bg_energy(RID p_env, float p_energy);
- virtual void environment_set_canvas_max_layer(RID p_env, int p_max_layer);
- virtual void environment_set_ambient_light(RID p_env, const Color &p_color, float p_energy = 1.0, float p_sky_contribution = 0.0);
- virtual void environment_set_camera_feed_id(RID p_env, int p_camera_feed_id);
-
- virtual void environment_set_dof_blur_near(RID p_env, bool p_enable, float p_distance, float p_transition, float p_amount, RS::EnvironmentDOFBlurQuality p_quality);
- virtual void environment_set_dof_blur_far(RID p_env, bool p_enable, float p_distance, float p_transition, float p_amount, RS::EnvironmentDOFBlurQuality p_quality);
- virtual void environment_set_glow(RID p_env, bool p_enable, int p_level_flags, float p_intensity, float p_strength, float p_bloom_threshold, RS::EnvironmentGlowBlendMode p_blend_mode, float p_hdr_bleed_threshold, float p_hdr_bleed_scale, float p_hdr_luminance_cap, bool p_bicubic_upscale);
- virtual void environment_set_fog(RID p_env, bool p_enable, float p_begin, float p_end, RID p_gradient_texture);
-
- virtual void environment_set_ssr(RID p_env, bool p_enable, int p_max_steps, float p_fade_in, float p_fade_out, float p_depth_tolerance, bool p_roughness);
- virtual void environment_set_ssao(RID p_env, bool p_enable, float p_radius, float p_intensity, float p_radius2, float p_intensity2, float p_bias, float p_light_affect, float p_ao_channel_affect, const Color &p_color, RS::EnvironmentSSAOQuality p_quality, RS::EnvironmentSSAOBlur p_blur, float p_bilateral_sharpness);
-
- virtual void environment_set_tonemap(RID p_env, RS::EnvironmentToneMapper p_tone_mapper, float p_exposure, float p_white, bool p_auto_exposure, float p_min_luminance, float p_max_luminance, float p_auto_exp_speed, float p_auto_exp_scale);
-
- virtual void environment_set_adjustment(RID p_env, bool p_enable, float p_brightness, float p_contrast, float p_saturation, RID p_ramp);
-
- virtual void environment_set_fog(RID p_env, bool p_enable, const Color &p_color, const Color &p_sun_color, float p_sun_amount);
- virtual void environment_set_fog_depth(RID p_env, bool p_enable, float p_depth_begin, float p_depth_end, float p_depth_curve, bool p_transmit, float p_transmit_curve);
- virtual void environment_set_fog_height(RID p_env, bool p_enable, float p_min_height, float p_max_height, float p_height_curve);
-
- virtual bool is_environment(RID p_env);
-
- virtual RS::EnvironmentBG environment_get_background(RID p_env);
- virtual int environment_get_canvas_max_layer(RID p_env);
-
- /* LIGHT INSTANCE */
-
- struct LightInstance {
- struct ShadowTransform {
- CameraMatrix camera;
- Transform transform;
- float farplane;
- float split;
- float bias_scale;
- };
-
- ShadowTransform shadow_transform[4];
-
- RID self;
- RID light;
-
- RasterizerStorageGLES2::Light *light_ptr;
- Transform transform;
-
- Vector3 light_vector;
- Vector3 spot_vector;
- float linear_att;
-
- // TODO passes and all that stuff ?
- uint64_t last_scene_pass;
- uint64_t last_scene_shadow_pass;
-
- uint16_t light_index;
- uint16_t light_directional_index;
-
- Rect2 directional_rect;
-
- Set<RID> shadow_atlases; // atlases where this light is registered
- };
-
- mutable RID_PtrOwner<LightInstance> light_instance_owner;
-
- virtual RID light_instance_create(RID p_light);
- virtual void light_instance_set_transform(RID p_light_instance, const Transform &p_transform);
- virtual void light_instance_set_shadow_transform(RID p_light_instance, const CameraMatrix &p_projection, const Transform &p_transform, float p_far, float p_split, int p_pass, float p_bias_scale = 1.0);
- virtual void light_instance_mark_visible(RID p_light_instance);
- virtual bool light_instances_can_render_shadow_cube() const { return storage->config.support_shadow_cubemaps; }
-
- LightInstance **render_light_instances;
- int render_directional_lights;
- int render_light_instance_count;
-
- /* REFLECTION INSTANCE */
-
- virtual RID gi_probe_instance_create();
- virtual void gi_probe_instance_set_light_data(RID p_probe, RID p_base, RID p_data);
- virtual void gi_probe_instance_set_transform_to_data(RID p_probe, const Transform &p_xform);
- virtual void gi_probe_instance_set_bounds(RID p_probe, const Vector3 &p_bounds);
-
- /* RENDER LIST */
-
- enum LightMode {
- LIGHTMODE_NORMAL,
- LIGHTMODE_UNSHADED,
- LIGHTMODE_LIGHTMAP,
- LIGHTMODE_LIGHTMAP_CAPTURE,
- };
-
- struct RenderList {
- enum {
- MAX_LIGHTS = 255,
- MAX_REFLECTION_PROBES = 255,
- DEFAULT_MAX_ELEMENTS = 65536
- };
-
- int max_elements;
-
- struct Element {
- RasterizerScene::InstanceBase *instance;
-
- RasterizerStorageGLES2::Geometry *geometry;
- RasterizerStorageGLES2::Material *material;
- RasterizerStorageGLES2::GeometryOwner *owner;
-
- bool use_accum; //is this an add pass for multipass
- bool *use_accum_ptr;
- bool front_facing;
-
- union {
- //TODO: should be endian swapped on big endian
- struct {
- int32_t depth_layer : 16;
- int32_t priority : 16;
- };
-
- uint32_t depth_key;
- };
-
- union {
- struct {
- //from least significant to most significant in sort, TODO: should be endian swapped on big endian
-
- uint64_t geometry_index : 14;
- uint64_t instancing : 1;
- uint64_t skeleton : 1;
- uint64_t shader_index : 10;
- uint64_t material_index : 10;
- uint64_t light_index : 8;
- uint64_t light_type2 : 1; // if 1==0 : nolight/directional, else omni/spot
- uint64_t refprobe_1_index : 8;
- uint64_t refprobe_0_index : 8;
- uint64_t light_type1 : 1; //no light, directional is 0, omni spot is 1
- uint64_t light_mode : 2; // LightMode enum
- };
-
- uint64_t sort_key;
- };
- };
-
- Element *base_elements;
- Element **elements;
-
- int element_count;
- int alpha_element_count;
-
- void clear() {
- element_count = 0;
- alpha_element_count = 0;
- }
-
- // sorts
-
- struct SortByKey {
- _FORCE_INLINE_ bool operator()(const Element *A, const Element *B) const {
- if (A->depth_key == B->depth_key) {
- return A->sort_key < B->sort_key;
- } else {
- return A->depth_key < B->depth_key;
- }
- }
- };
-
- void sort_by_key(bool p_alpha) {
- SortArray<Element *, SortByKey> sorter;
-
- if (p_alpha) {
- sorter.sort(&elements[max_elements - alpha_element_count], alpha_element_count);
- } else {
- sorter.sort(elements, element_count);
- }
- }
-
- struct SortByDepth {
- _FORCE_INLINE_ bool operator()(const Element *A, const Element *B) const {
- return A->instance->depth < B->instance->depth;
- }
- };
-
- void sort_by_depth(bool p_alpha) { //used for shadows
-
- SortArray<Element *, SortByDepth> sorter;
- if (p_alpha) {
- sorter.sort(&elements[max_elements - alpha_element_count], alpha_element_count);
- } else {
- sorter.sort(elements, element_count);
- }
- }
-
- struct SortByReverseDepthAndPriority {
- _FORCE_INLINE_ bool operator()(const Element *A, const Element *B) const {
- if (A->priority == B->priority) {
- return A->instance->depth > B->instance->depth;
- } else {
- return A->priority < B->priority;
- }
- }
- };
-
- void sort_by_reverse_depth_and_priority(bool p_alpha) { //used for alpha
-
- SortArray<Element *, SortByReverseDepthAndPriority> sorter;
- if (p_alpha) {
- sorter.sort(&elements[max_elements - alpha_element_count], alpha_element_count);
- } else {
- sorter.sort(elements, element_count);
- }
- }
-
- // element adding and stuff
-
- _FORCE_INLINE_ Element *add_element() {
- if (element_count + alpha_element_count >= max_elements)
- return nullptr;
-
- elements[element_count] = &base_elements[element_count];
- return elements[element_count++];
- }
-
- _FORCE_INLINE_ Element *add_alpha_element() {
- if (element_count + alpha_element_count >= max_elements) {
- return nullptr;
- }
-
- int idx = max_elements - alpha_element_count - 1;
- elements[idx] = &base_elements[idx];
- alpha_element_count++;
- return elements[idx];
- }
-
- void init() {
- element_count = 0;
- alpha_element_count = 0;
-
- elements = memnew_arr(Element *, max_elements);
- base_elements = memnew_arr(Element, max_elements);
-
- for (int i = 0; i < max_elements; i++) {
- elements[i] = &base_elements[i];
- }
- }
-
- RenderList() {
- max_elements = DEFAULT_MAX_ELEMENTS;
- }
-
- ~RenderList() {
- memdelete_arr(elements);
- memdelete_arr(base_elements);
- }
- };
-
- RenderList render_list;
-
- void _add_geometry(RasterizerStorageGLES2::Geometry *p_geometry, InstanceBase *p_instance, RasterizerStorageGLES2::GeometryOwner *p_owner, int p_material, bool p_depth_pass, bool p_shadow_pass);
- void _add_geometry_with_material(RasterizerStorageGLES2::Geometry *p_geometry, InstanceBase *p_instance, RasterizerStorageGLES2::GeometryOwner *p_owner, RasterizerStorageGLES2::Material *p_material, bool p_depth_pass, bool p_shadow_pass);
-
- void _copy_texture_to_buffer(GLuint p_texture, GLuint p_buffer);
- void _fill_render_list(InstanceBase **p_cull_result, int p_cull_count, bool p_depth_pass, bool p_shadow_pass);
- void _render_render_list(RenderList::Element **p_elements, int p_element_count,
- const Transform &p_view_transform,
- const CameraMatrix &p_projection,
- RID p_shadow_atlas,
- Environment *p_env,
- GLuint p_base_env,
- float p_shadow_bias,
- float p_shadow_normal_bias,
- bool p_reverse_cull,
- bool p_alpha_pass,
- bool p_shadow);
-
- void _draw_sky(RasterizerStorageGLES2::Sky *p_sky, const CameraMatrix &p_projection, const Transform &p_transform, bool p_vflip, float p_custom_fov, float p_energy, const Basis &p_sky_orientation);
-
- _FORCE_INLINE_ void _set_cull(bool p_front, bool p_disabled, bool p_reverse_cull);
- _FORCE_INLINE_ bool _setup_material(RasterizerStorageGLES2::Material *p_material, bool p_alpha_pass, Size2i p_skeleton_tex_size = Size2i(0, 0));
- _FORCE_INLINE_ void _setup_geometry(RenderList::Element *p_element, RasterizerStorageGLES2::Skeleton *p_skeleton);
- _FORCE_INLINE_ void _setup_light_type(LightInstance *p_light, ShadowAtlas *shadow_atlas);
- _FORCE_INLINE_ void _setup_light(LightInstance *p_light, ShadowAtlas *shadow_atlas, const Transform &p_view_transform, bool accum_pass);
- _FORCE_INLINE_ void _setup_refprobes(ReflectionProbeInstance *p_refprobe1, ReflectionProbeInstance *p_refprobe2, const Transform &p_view_transform, Environment *p_env);
- _FORCE_INLINE_ void _render_geometry(RenderList::Element *p_element);
-
- void _post_process(Environment *env, const CameraMatrix &p_cam_projection);
-
- virtual void render_scene(const Transform &p_cam_transform, const CameraMatrix &p_cam_projection, bool p_cam_ortogonal, InstanceBase **p_cull_result, int p_cull_count, RID *p_light_cull_result, int p_light_cull_count, RID *p_reflection_probe_cull_result, int p_reflection_probe_cull_count, RID p_environment, RID p_shadow_atlas, RID p_reflection_atlas, RID p_reflection_probe, int p_reflection_probe_pass);
- virtual void render_shadow(RID p_light, RID p_shadow_atlas, int p_pass, InstanceBase **p_cull_result, int p_cull_count);
- virtual bool free(RID p_rid);
-
- virtual void set_scene_pass(uint64_t p_pass);
- virtual void set_debug_draw_mode(RS::ViewportDebugDraw p_debug_draw);
-
- void iteration();
- void initialize();
- void finalize();
- RasterizerSceneGLES2();
-};
-
-#endif // RASTERIZERSCENEGLES2_H
diff --git a/drivers/gles2/rasterizer_storage_gles2.cpp b/drivers/gles2/rasterizer_storage_gles2.cpp
deleted file mode 100644
index 4dd66c06e6..0000000000
--- a/drivers/gles2/rasterizer_storage_gles2.cpp
+++ /dev/null
@@ -1,6039 +0,0 @@
-/*************************************************************************/
-/* rasterizer_storage_gles2.cpp */
-/*************************************************************************/
-/* This file is part of: */
-/* GODOT ENGINE */
-/* https://godotengine.org */
-/*************************************************************************/
-/* Copyright (c) 2007-2020 Juan Linietsky, Ariel Manzur. */
-/* Copyright (c) 2014-2020 Godot Engine contributors (cf. AUTHORS.md). */
-/* */
-/* Permission is hereby granted, free of charge, to any person obtaining */
-/* a copy of this software and associated documentation files (the */
-/* "Software"), to deal in the Software without restriction, including */
-/* without limitation the rights to use, copy, modify, merge, publish, */
-/* distribute, sublicense, and/or sell copies of the Software, and to */
-/* permit persons to whom the Software is furnished to do so, subject to */
-/* the following conditions: */
-/* */
-/* The above copyright notice and this permission notice shall be */
-/* included in all copies or substantial portions of the Software. */
-/* */
-/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
-/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
-/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.*/
-/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
-/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
-/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
-/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
-/*************************************************************************/
-
-#include "rasterizer_storage_gles2.h"
-
-#include "core/math/transform.h"
-#include "core/project_settings.h"
-#include "rasterizer_canvas_gles2.h"
-#include "rasterizer_scene_gles2.h"
-#include "servers/rendering/shader_language.h"
-
-GLuint RasterizerStorageGLES2::system_fbo = 0;
-
-/* TEXTURE API */
-
-#define _EXT_COMPRESSED_RGBA_S3TC_DXT1_EXT 0x83F1
-#define _EXT_COMPRESSED_RGBA_S3TC_DXT3_EXT 0x83F2
-#define _EXT_COMPRESSED_RGBA_S3TC_DXT5_EXT 0x83F3
-
-#define _EXT_COMPRESSED_RED_RGTC1_EXT 0x8DBB
-#define _EXT_COMPRESSED_RED_RGTC1 0x8DBB
-#define _EXT_COMPRESSED_SIGNED_RED_RGTC1 0x8DBC
-#define _EXT_COMPRESSED_RG_RGTC2 0x8DBD
-#define _EXT_COMPRESSED_SIGNED_RG_RGTC2 0x8DBE
-#define _EXT_COMPRESSED_SIGNED_RED_RGTC1_EXT 0x8DBC
-#define _EXT_COMPRESSED_RED_GREEN_RGTC2_EXT 0x8DBD
-#define _EXT_COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT 0x8DBE
-#define _EXT_ETC1_RGB8_OES 0x8D64
-
-#define _EXT_COMPRESSED_RGB_PVRTC_4BPPV1_IMG 0x8C00
-#define _EXT_COMPRESSED_RGB_PVRTC_2BPPV1_IMG 0x8C01
-#define _EXT_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG 0x8C02
-#define _EXT_COMPRESSED_RGBA_PVRTC_2BPPV1_IMG 0x8C03
-
-#define _EXT_COMPRESSED_SRGB_PVRTC_2BPPV1_EXT 0x8A54
-#define _EXT_COMPRESSED_SRGB_PVRTC_4BPPV1_EXT 0x8A55
-#define _EXT_COMPRESSED_SRGB_ALPHA_PVRTC_2BPPV1_EXT 0x8A56
-#define _EXT_COMPRESSED_SRGB_ALPHA_PVRTC_4BPPV1_EXT 0x8A57
-
-#define _EXT_COMPRESSED_RGBA_BPTC_UNORM 0x8E8C
-#define _EXT_COMPRESSED_SRGB_ALPHA_BPTC_UNORM 0x8E8D
-#define _EXT_COMPRESSED_RGB_BPTC_SIGNED_FLOAT 0x8E8E
-#define _EXT_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT 0x8E8F
-
-#ifdef GLES_OVER_GL
-#define _GL_HALF_FLOAT_OES 0x140B
-#else
-#define _GL_HALF_FLOAT_OES 0x8D61
-#endif
-
-#define _EXT_TEXTURE_CUBE_MAP_SEAMLESS 0x884F
-
-#define _RED_OES 0x1903
-
-#define _DEPTH_COMPONENT24_OES 0x81A6
-
-#ifndef GLES_OVER_GL
-#define glClearDepth glClearDepthf
-
-// enable extensions manually for android and ios
-#ifndef UWP_ENABLED
-#include <dlfcn.h> // needed to load extensions
-#endif
-
-#ifdef IPHONE_ENABLED
-
-#include <OpenGLES/ES2/glext.h>
-//void *glRenderbufferStorageMultisampleAPPLE;
-//void *glResolveMultisampleFramebufferAPPLE;
-#define glRenderbufferStorageMultisample glRenderbufferStorageMultisampleAPPLE
-#elif defined(ANDROID_ENABLED)
-
-#include <GLES2/gl2ext.h>
-PFNGLRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC glRenderbufferStorageMultisampleEXT;
-PFNGLFRAMEBUFFERTEXTURE2DMULTISAMPLEEXTPROC glFramebufferTexture2DMultisampleEXT;
-#define glRenderbufferStorageMultisample glRenderbufferStorageMultisampleEXT
-#define glFramebufferTexture2DMultisample glFramebufferTexture2DMultisampleEXT
-
-PFNGLTEXIMAGE3DOESPROC glTexImage3DOES;
-PFNGLTEXSUBIMAGE3DOESPROC glTexSubImage3DOES;
-PFNGLCOMPRESSEDTEXSUBIMAGE3DOESPROC glCompressedTexSubImage3DOES;
-#define glTexImage3D glTexImage3DOES
-#define glTexSubImage3D glTexSubImage3DOES
-#define glCompressedTexSubImage3D glCompressedTexSubImage3DOES
-
-#elif defined(UWP_ENABLED)
-#include <GLES2/gl2ext.h>
-#define glRenderbufferStorageMultisample glRenderbufferStorageMultisampleANGLE
-#define glFramebufferTexture2DMultisample glFramebufferTexture2DMultisampleANGLE
-#endif
-
-#define GL_TEXTURE_3D 0x806F
-#define GL_MAX_SAMPLES 0x8D57
-#endif //!GLES_OVER_GL
-
-#if !defined(GLES_OVER_GL)
-#define GL_TEXTURE_2D_ARRAY 0x8C1A
-#define GL_TEXTURE_3D 0x806F
-#endif
-
-void RasterizerStorageGLES2::bind_quad_array() const {
- glBindBuffer(GL_ARRAY_BUFFER, resources.quadie);
- glVertexAttribPointer(RS::ARRAY_VERTEX, 2, GL_FLOAT, GL_FALSE, sizeof(float) * 4, 0);
- glVertexAttribPointer(RS::ARRAY_TEX_UV, 2, GL_FLOAT, GL_FALSE, sizeof(float) * 4, CAST_INT_TO_UCHAR_PTR(8));
-
- glEnableVertexAttribArray(RS::ARRAY_VERTEX);
- glEnableVertexAttribArray(RS::ARRAY_TEX_UV);
-}
-
-Ref<Image> RasterizerStorageGLES2::_get_gl_image_and_format(const Ref<Image> &p_image, Image::Format p_format, uint32_t p_flags, Image::Format &r_real_format, GLenum &r_gl_format, GLenum &r_gl_internal_format, GLenum &r_gl_type, bool &r_compressed, bool p_force_decompress) const {
- r_gl_format = 0;
- Ref<Image> image = p_image;
- r_compressed = false;
- r_real_format = p_format;
-
- bool need_decompress = false;
-
- switch (p_format) {
- case Image::FORMAT_L8: {
- r_gl_internal_format = GL_LUMINANCE;
- r_gl_format = GL_LUMINANCE;
- r_gl_type = GL_UNSIGNED_BYTE;
- } break;
- case Image::FORMAT_LA8: {
- r_gl_internal_format = GL_LUMINANCE_ALPHA;
- r_gl_format = GL_LUMINANCE_ALPHA;
- r_gl_type = GL_UNSIGNED_BYTE;
- } break;
- case Image::FORMAT_R8: {
- r_gl_internal_format = GL_ALPHA;
- r_gl_format = GL_ALPHA;
- r_gl_type = GL_UNSIGNED_BYTE;
-
- } break;
- case Image::FORMAT_RG8: {
- ERR_PRINT("RG texture not supported, converting to RGB8.");
- if (image.is_valid())
- image->convert(Image::FORMAT_RGB8);
- r_real_format = Image::FORMAT_RGB8;
- r_gl_internal_format = GL_RGB;
- r_gl_format = GL_RGB;
- r_gl_type = GL_UNSIGNED_BYTE;
-
- } break;
- case Image::FORMAT_RGB8: {
- r_gl_internal_format = GL_RGB;
- r_gl_format = GL_RGB;
- r_gl_type = GL_UNSIGNED_BYTE;
-
- } break;
- case Image::FORMAT_RGBA8: {
- r_gl_format = GL_RGBA;
- r_gl_internal_format = GL_RGBA;
- r_gl_type = GL_UNSIGNED_BYTE;
-
- } break;
- case Image::FORMAT_RGBA4444: {
- r_gl_internal_format = GL_RGBA;
- r_gl_format = GL_RGBA;
- r_gl_type = GL_UNSIGNED_SHORT_4_4_4_4;
-
- } break;
- case Image::FORMAT_RGB565: {
- r_gl_internal_format = GL_RGB5_A1;
- r_gl_format = GL_RGBA;
- r_gl_type = GL_UNSIGNED_SHORT_5_5_5_1;
-
- } break;
- case Image::FORMAT_RF: {
- if (!config.float_texture_supported) {
- ERR_PRINT("R float texture not supported, converting to RGB8.");
- if (image.is_valid())
- image->convert(Image::FORMAT_RGB8);
- r_real_format = Image::FORMAT_RGB8;
- r_gl_internal_format = GL_RGB;
- r_gl_format = GL_RGB;
- r_gl_type = GL_UNSIGNED_BYTE;
- } else {
- r_gl_internal_format = GL_ALPHA;
- r_gl_format = GL_ALPHA;
- r_gl_type = GL_FLOAT;
- }
- } break;
- case Image::FORMAT_RGF: {
- ERR_PRINT("RG float texture not supported, converting to RGB8.");
- if (image.is_valid())
- image->convert(Image::FORMAT_RGB8);
- r_real_format = Image::FORMAT_RGB8;
- r_gl_internal_format = GL_RGB;
- r_gl_format = GL_RGB;
- r_gl_type = GL_UNSIGNED_BYTE;
- } break;
- case Image::FORMAT_RGBF: {
- if (!config.float_texture_supported) {
- ERR_PRINT("RGB float texture not supported, converting to RGB8.");
- if (image.is_valid())
- image->convert(Image::FORMAT_RGB8);
- r_real_format = Image::FORMAT_RGB8;
- r_gl_internal_format = GL_RGB;
- r_gl_format = GL_RGB;
- r_gl_type = GL_UNSIGNED_BYTE;
- } else {
- r_gl_internal_format = GL_RGB;
- r_gl_format = GL_RGB;
- r_gl_type = GL_FLOAT;
- }
- } break;
- case Image::FORMAT_RGBAF: {
- if (!config.float_texture_supported) {
- ERR_PRINT("RGBA float texture not supported, converting to RGBA8.");
- if (image.is_valid())
- image->convert(Image::FORMAT_RGBA8);
- r_real_format = Image::FORMAT_RGBA8;
- r_gl_internal_format = GL_RGBA;
- r_gl_format = GL_RGBA;
- r_gl_type = GL_UNSIGNED_BYTE;
- } else {
- r_gl_internal_format = GL_RGBA;
- r_gl_format = GL_RGBA;
- r_gl_type = GL_FLOAT;
- }
- } break;
- case Image::FORMAT_RH: {
- need_decompress = true;
- } break;
- case Image::FORMAT_RGH: {
- need_decompress = true;
- } break;
- case Image::FORMAT_RGBH: {
- need_decompress = true;
- } break;
- case Image::FORMAT_RGBAH: {
- need_decompress = true;
- } break;
- case Image::FORMAT_RGBE9995: {
- r_gl_internal_format = GL_RGB;
- r_gl_format = GL_RGB;
- r_gl_type = GL_UNSIGNED_BYTE;
-
- if (image.is_valid())
-
- image = image->rgbe_to_srgb();
-
- return image;
-
- } break;
- case Image::FORMAT_DXT1: {
- if (config.s3tc_supported) {
- r_gl_internal_format = _EXT_COMPRESSED_RGBA_S3TC_DXT1_EXT;
- r_gl_format = GL_RGBA;
- r_gl_type = GL_UNSIGNED_BYTE;
- r_compressed = true;
- } else {
- need_decompress = true;
- }
-
- } break;
- case Image::FORMAT_DXT3: {
- if (config.s3tc_supported) {
- r_gl_internal_format = _EXT_COMPRESSED_RGBA_S3TC_DXT3_EXT;
- r_gl_format = GL_RGBA;
- r_gl_type = GL_UNSIGNED_BYTE;
- r_compressed = true;
- } else {
- need_decompress = true;
- }
-
- } break;
- case Image::FORMAT_DXT5: {
- if (config.s3tc_supported) {
- r_gl_internal_format = _EXT_COMPRESSED_RGBA_S3TC_DXT5_EXT;
- r_gl_format = GL_RGBA;
- r_gl_type = GL_UNSIGNED_BYTE;
- r_compressed = true;
- } else {
- need_decompress = true;
- }
-
- } break;
- case Image::FORMAT_RGTC_R: {
- if (config.rgtc_supported) {
- r_gl_internal_format = _EXT_COMPRESSED_RED_RGTC1_EXT;
- r_gl_format = GL_RGBA;
- r_gl_type = GL_UNSIGNED_BYTE;
- r_compressed = true;
-
- } else {
- need_decompress = true;
- }
-
- } break;
- case Image::FORMAT_RGTC_RG: {
- if (config.rgtc_supported) {
- r_gl_internal_format = _EXT_COMPRESSED_RED_GREEN_RGTC2_EXT;
- r_gl_format = GL_RGBA;
- r_gl_type = GL_UNSIGNED_BYTE;
- r_compressed = true;
- } else {
- need_decompress = true;
- }
-
- } break;
- case Image::FORMAT_BPTC_RGBA: {
- if (config.bptc_supported) {
- r_gl_internal_format = _EXT_COMPRESSED_RGBA_BPTC_UNORM;
- r_gl_format = GL_RGBA;
- r_gl_type = GL_UNSIGNED_BYTE;
- r_compressed = true;
-
- } else {
- need_decompress = true;
- }
- } break;
- case Image::FORMAT_BPTC_RGBF: {
- if (config.bptc_supported) {
- r_gl_internal_format = _EXT_COMPRESSED_RGB_BPTC_SIGNED_FLOAT;
- r_gl_format = GL_RGB;
- r_gl_type = GL_FLOAT;
- r_compressed = true;
- } else {
- need_decompress = true;
- }
- } break;
- case Image::FORMAT_BPTC_RGBFU: {
- if (config.bptc_supported) {
- r_gl_internal_format = _EXT_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT;
- r_gl_format = GL_RGB;
- r_gl_type = GL_FLOAT;
- r_compressed = true;
- } else {
- need_decompress = true;
- }
- } break;
- case Image::FORMAT_PVRTC2: {
- if (config.pvrtc_supported) {
- r_gl_internal_format = _EXT_COMPRESSED_RGB_PVRTC_2BPPV1_IMG;
- r_gl_format = GL_RGBA;
- r_gl_type = GL_UNSIGNED_BYTE;
- r_compressed = true;
-
- } else {
- need_decompress = true;
- }
- } break;
- case Image::FORMAT_PVRTC2A: {
- if (config.pvrtc_supported) {
- r_gl_internal_format = _EXT_COMPRESSED_RGBA_PVRTC_2BPPV1_IMG;
- r_gl_format = GL_RGBA;
- r_gl_type = GL_UNSIGNED_BYTE;
- r_compressed = true;
-
- } else {
- need_decompress = true;
- }
-
- } break;
- case Image::FORMAT_PVRTC4: {
- if (config.pvrtc_supported) {
- r_gl_internal_format = _EXT_COMPRESSED_RGB_PVRTC_4BPPV1_IMG;
- r_gl_format = GL_RGBA;
- r_gl_type = GL_UNSIGNED_BYTE;
- r_compressed = true;
-
- } else {
- need_decompress = true;
- }
-
- } break;
- case Image::FORMAT_PVRTC4A: {
- if (config.pvrtc_supported) {
- r_gl_internal_format = _EXT_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG;
- r_gl_format = GL_RGBA;
- r_gl_type = GL_UNSIGNED_BYTE;
- r_compressed = true;
-
- } else {
- need_decompress = true;
- }
-
- } break;
- case Image::FORMAT_ETC: {
- if (config.etc1_supported) {
- r_gl_internal_format = _EXT_ETC1_RGB8_OES;
- r_gl_format = GL_RGBA;
- r_gl_type = GL_UNSIGNED_BYTE;
- r_compressed = true;
- } else {
- need_decompress = true;
- }
- } break;
- case Image::FORMAT_ETC2_R11: {
- need_decompress = true;
- } break;
- case Image::FORMAT_ETC2_R11S: {
- need_decompress = true;
- } break;
- case Image::FORMAT_ETC2_RG11: {
- need_decompress = true;
- } break;
- case Image::FORMAT_ETC2_RG11S: {
- need_decompress = true;
- } break;
- case Image::FORMAT_ETC2_RGB8: {
- need_decompress = true;
- } break;
- case Image::FORMAT_ETC2_RGBA8: {
- need_decompress = true;
- } break;
- case Image::FORMAT_ETC2_RGB8A1: {
- need_decompress = true;
- } break;
- default: {
- ERR_FAIL_V(Ref<Image>());
- }
- }
-
- if (need_decompress || p_force_decompress) {
- if (!image.is_null()) {
- image = image->duplicate();
- image->decompress();
- ERR_FAIL_COND_V(image->is_compressed(), image);
- switch (image->get_format()) {
- case Image::FORMAT_RGB8: {
- r_gl_format = GL_RGB;
- r_gl_internal_format = GL_RGB;
- r_gl_type = GL_UNSIGNED_BYTE;
- r_real_format = Image::FORMAT_RGB8;
- r_compressed = false;
- } break;
- case Image::FORMAT_RGBA8: {
- r_gl_format = GL_RGBA;
- r_gl_internal_format = GL_RGBA;
- r_gl_type = GL_UNSIGNED_BYTE;
- r_real_format = Image::FORMAT_RGBA8;
- r_compressed = false;
- } break;
- default: {
- image->convert(Image::FORMAT_RGBA8);
- r_gl_format = GL_RGBA;
- r_gl_internal_format = GL_RGBA;
- r_gl_type = GL_UNSIGNED_BYTE;
- r_real_format = Image::FORMAT_RGBA8;
- r_compressed = false;
-
- } break;
- }
- }
-
- return image;
- }
-
- return p_image;
-}
-
-static const GLenum _cube_side_enum[6] = {
-
- GL_TEXTURE_CUBE_MAP_NEGATIVE_X,
- GL_TEXTURE_CUBE_MAP_POSITIVE_X,
- GL_TEXTURE_CUBE_MAP_NEGATIVE_Y,
- GL_TEXTURE_CUBE_MAP_POSITIVE_Y,
- GL_TEXTURE_CUBE_MAP_NEGATIVE_Z,
- GL_TEXTURE_CUBE_MAP_POSITIVE_Z,
-
-};
-
-RID RasterizerStorageGLES2::texture_create() {
- Texture *texture = memnew(Texture);
- ERR_FAIL_COND_V(!texture, RID());
- glGenTextures(1, &texture->tex_id);
- texture->active = false;
- texture->total_data_size = 0;
-
- return texture_owner.make_rid(texture);
-}
-
-void RasterizerStorageGLES2::texture_allocate(RID p_texture, int p_width, int p_height, int p_depth_3d, Image::Format p_format, RenderingServer::TextureType p_type, uint32_t p_flags) {
- GLenum format;
- GLenum internal_format;
- GLenum type;
-
- bool compressed = false;
-
- if (p_flags & RS::TEXTURE_FLAG_USED_FOR_STREAMING) {
- p_flags &= ~RS::TEXTURE_FLAG_MIPMAPS; // no mipies for video
- }
-
- Texture *texture = texture_owner.getornull(p_texture);
- ERR_FAIL_COND(!texture);
- texture->width = p_width;
- texture->height = p_height;
- texture->format = p_format;
- texture->flags = p_flags;
- texture->stored_cube_sides = 0;
- texture->type = p_type;
-
- switch (p_type) {
- case RS::TEXTURE_TYPE_2D: {
- texture->target = GL_TEXTURE_2D;
- texture->images.resize(1);
- } break;
- case RS::TEXTURE_TYPE_CUBEMAP: {
- texture->target = GL_TEXTURE_CUBE_MAP;
- texture->images.resize(6);
- } break;
- case RS::TEXTURE_TYPE_2D_ARRAY: {
- if (config.texture_array_supported) {
- texture->target = GL_TEXTURE_2D_ARRAY;
- texture->images.resize(p_depth_3d);
- } else {
- WARN_PRINT_ONCE("Texture Arrays not supported on this hardware.");
- return;
- }
- } break;
- case RS::TEXTURE_TYPE_3D: {
- if (config.texture_3d_supported) {
- texture->target = GL_TEXTURE_3D;
- texture->images.resize(p_depth_3d);
- } else {
- WARN_PRINT_ONCE("3D textures not supported on this hardware.");
- return;
- }
- } break;
- default: {
- ERR_PRINT("Unknown texture type!");
- return;
- }
- }
-
- texture->alloc_width = texture->width;
- texture->alloc_height = texture->height;
- texture->resize_to_po2 = false;
- if (!config.support_npot_repeat_mipmap) {
- int po2_width = next_power_of_2(p_width);
- int po2_height = next_power_of_2(p_height);
-
- bool is_po2 = p_width == po2_width && p_height == po2_height;
-
- if (!is_po2 && (p_flags & RS::TEXTURE_FLAG_REPEAT || p_flags & RS::TEXTURE_FLAG_MIPMAPS)) {
- if (p_flags & RS::TEXTURE_FLAG_USED_FOR_STREAMING) {
- //not supported
- ERR_PRINT("Streaming texture for non power of 2 or has mipmaps on this hardware: " + texture->path + "'. Mipmaps and repeat disabled.");
- texture->flags &= ~(RS::TEXTURE_FLAG_REPEAT | RS::TEXTURE_FLAG_MIPMAPS);
- } else {
- texture->alloc_height = po2_height;
- texture->alloc_width = po2_width;
- texture->resize_to_po2 = true;
- }
- }
- }
-
- Image::Format real_format;
- _get_gl_image_and_format(Ref<Image>(), texture->format, texture->flags, real_format, format, internal_format, type, compressed, texture->resize_to_po2);
-
- texture->gl_format_cache = format;
- texture->gl_type_cache = type;
- texture->gl_internal_format_cache = internal_format;
- texture->data_size = 0;
- texture->mipmaps = 1;
-
- texture->compressed = compressed;
-
- glActiveTexture(GL_TEXTURE0);
- glBindTexture(texture->target, texture->tex_id);
-
-#if defined(GLES_OVER_GL) || defined(ANDROID_ENABLED)
- if ((p_type == RS::TEXTURE_TYPE_3D && config.texture_3d_supported) || (p_type == RS::TEXTURE_TYPE_2D_ARRAY && config.texture_array_supported)) {
- int width = p_width;
- int height = p_height;
- int depth = p_depth_3d;
-
- int mipmaps = 0;
-
- while (width > 0 || height > 0 || (p_type == RS::TEXTURE_TYPE_3D && depth > 0)) {
- width = MAX(1, width);
- height = MAX(1, height);
- depth = MAX(1, depth);
-
- glTexImage3D(texture->target, mipmaps, internal_format, width, height, depth, 0, format, type, nullptr);
-
- width /= 2;
- height /= 2;
-
- if (p_type == RS::TEXTURE_TYPE_3D) {
- depth /= 2;
- }
-
- mipmaps++;
-
- if (!(p_flags & RS::TEXTURE_FLAG_MIPMAPS))
- break;
- }
-#ifdef GLES_OVER_GL
- glTexParameteri(texture->target, GL_TEXTURE_BASE_LEVEL, 0);
- glTexParameteri(texture->target, GL_TEXTURE_MAX_LEVEL, mipmaps - 1);
-#endif
-
- } else
-#endif
- if (p_flags & RS::TEXTURE_FLAG_USED_FOR_STREAMING) {
- //prealloc if video
- glTexImage2D(texture->target, 0, internal_format, texture->alloc_width, texture->alloc_height, 0, format, type, nullptr);
- }
-
- texture->active = true;
-}
-
-void RasterizerStorageGLES2::texture_set_data(RID p_texture, const Ref<Image> &p_image, int p_layer) {
- Texture *texture = texture_owner.getornull(p_texture);
-
- ERR_FAIL_COND(!texture);
- if ((texture->type == RS::TEXTURE_TYPE_2D_ARRAY && !config.texture_array_supported) || (texture->type == RS::TEXTURE_TYPE_3D && !config.texture_3d_supported)) {
- return;
- }
- ERR_FAIL_COND(!texture->active);
- ERR_FAIL_COND(texture->render_target);
- ERR_FAIL_COND(texture->format != p_image->get_format());
- ERR_FAIL_COND(p_image.is_null());
-
- GLenum type;
- GLenum format;
- GLenum internal_format;
- bool compressed = false;
-
- if (config.keep_original_textures && !(texture->flags & RS::TEXTURE_FLAG_USED_FOR_STREAMING)) {
- texture->images.write[p_layer] = p_image;
- }
-
- Image::Format real_format;
- Ref<Image> img = _get_gl_image_and_format(p_image, p_image->get_format(), texture->flags, real_format, format, internal_format, type, compressed, texture->resize_to_po2);
-
- if (texture->resize_to_po2) {
- if (p_image->is_compressed()) {
- ERR_PRINT("Texture '" + texture->path + "' is required to be a power of 2 because it uses either mipmaps or repeat, so it was decompressed. This will hurt performance and memory usage.");
- }
-
- if (img == p_image) {
- img = img->duplicate();
- }
- img->resize_to_po2(false);
- }
-
- if (config.shrink_textures_x2 && (p_image->has_mipmaps() || !p_image->is_compressed()) && !(texture->flags & RS::TEXTURE_FLAG_USED_FOR_STREAMING)) {
- texture->alloc_height = MAX(1, texture->alloc_height / 2);
- texture->alloc_width = MAX(1, texture->alloc_width / 2);
-
- if (texture->alloc_width == img->get_width() / 2 && texture->alloc_height == img->get_height() / 2) {
- img->shrink_x2();
- } else if (img->get_format() <= Image::FORMAT_RGBA8) {
- img->resize(texture->alloc_width, texture->alloc_height, Image::INTERPOLATE_BILINEAR);
- }
- }
-
- GLenum blit_target = GL_TEXTURE_2D;
-
- switch (texture->type) {
- case RS::TEXTURE_TYPE_2D: {
- blit_target = GL_TEXTURE_2D;
- } break;
- case RS::TEXTURE_TYPE_CUBEMAP: {
- ERR_FAIL_INDEX(p_layer, 6);
- blit_target = _cube_side_enum[p_layer];
- } break;
- case RS::TEXTURE_TYPE_2D_ARRAY: {
- blit_target = GL_TEXTURE_2D_ARRAY;
- } break;
- case RS::TEXTURE_TYPE_3D: {
- blit_target = GL_TEXTURE_3D;
- } break;
- }
-
- texture->data_size = img->get_data().size();
- const uint8_t *read = img->get_data().ptr();
- ERR_FAIL_COND(!read.ptr());
-
- glActiveTexture(GL_TEXTURE0);
- glBindTexture(texture->target, texture->tex_id);
-
- texture->ignore_mipmaps = compressed && !img->has_mipmaps();
-
- if ((texture->flags & RS::TEXTURE_FLAG_MIPMAPS) && !texture->ignore_mipmaps)
- glTexParameteri(texture->target, GL_TEXTURE_MIN_FILTER, config.use_fast_texture_filter ? GL_LINEAR_MIPMAP_NEAREST : GL_LINEAR_MIPMAP_LINEAR);
- else {
- if (texture->flags & RS::TEXTURE_FLAG_FILTER) {
- glTexParameteri(texture->target, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
- } else {
- glTexParameteri(texture->target, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
- }
- }
-
- if (texture->flags & RS::TEXTURE_FLAG_FILTER) {
- glTexParameteri(texture->target, GL_TEXTURE_MAG_FILTER, GL_LINEAR); // Linear Filtering
-
- } else {
- glTexParameteri(texture->target, GL_TEXTURE_MAG_FILTER, GL_NEAREST); // raw Filtering
- }
-
- if (((texture->flags & RS::TEXTURE_FLAG_REPEAT) || (texture->flags & RS::TEXTURE_FLAG_MIRRORED_REPEAT)) && texture->target != GL_TEXTURE_CUBE_MAP) {
- if (texture->flags & RS::TEXTURE_FLAG_MIRRORED_REPEAT) {
- glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_MIRRORED_REPEAT);
- glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_MIRRORED_REPEAT);
- } else {
- glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT);
- glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT);
- }
- } else {
- //glTexParameterf( texture->target, GL_TEXTURE_WRAP_R, GL_CLAMP_TO_EDGE );
- glTexParameterf(texture->target, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);
- glTexParameterf(texture->target, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);
- }
-
- int mipmaps = ((texture->flags & RS::TEXTURE_FLAG_MIPMAPS) && img->has_mipmaps()) ? img->get_mipmap_count() + 1 : 1;
-
- int w = img->get_width();
- int h = img->get_height();
-
- int tsize = 0;
-
- for (int i = 0; i < mipmaps; i++) {
- int size, ofs;
- img->get_mipmap_offset_and_size(i, ofs, size);
- if (texture->type == RS::TEXTURE_TYPE_2D || texture->type == RS::TEXTURE_TYPE_CUBEMAP) {
- if (compressed) {
- glPixelStorei(GL_UNPACK_ALIGNMENT, 4);
-
- int bw = w;
- int bh = h;
-
- glCompressedTexImage2D(blit_target, i, internal_format, bw, bh, 0, size, &read[ofs]);
- } else {
- glPixelStorei(GL_UNPACK_ALIGNMENT, 1);
- if (texture->flags & RS::TEXTURE_FLAG_USED_FOR_STREAMING) {
- glTexSubImage2D(blit_target, i, 0, 0, w, h, format, type, &read[ofs]);
- } else {
- glTexImage2D(blit_target, i, internal_format, w, h, 0, format, type, &read[ofs]);
- }
- }
- }
-#if defined(GLES_OVER_GL) || defined(ANDROID_ENABLED)
- else {
- if (texture->compressed) {
- glPixelStorei(GL_UNPACK_ALIGNMENT, 4);
-
- int bw = w;
- int bh = h;
-
- glCompressedTexSubImage3D(blit_target, i, 0, 0, p_layer, bw, bh, 1, internal_format, size, &read[ofs]);
- } else {
- glPixelStorei(GL_UNPACK_ALIGNMENT, 1);
-
- glTexSubImage3D(blit_target, i, 0, 0, p_layer, w, h, 1, format, type, &read[ofs]);
- }
- }
-#endif
-
- tsize += size;
-
- w = MAX(1, w >> 1);
- h = MAX(1, h >> 1);
- }
-
- info.texture_mem -= texture->total_data_size;
- texture->total_data_size = tsize;
- info.texture_mem += texture->total_data_size;
-
- // printf("texture: %i x %i - size: %i - total: %i\n", texture->width, texture->height, tsize, info.texture_mem);
-
- texture->stored_cube_sides |= (1 << p_layer);
-
- if ((texture->flags & RS::TEXTURE_FLAG_MIPMAPS) && mipmaps == 1 && !texture->ignore_mipmaps && (texture->type != RS::TEXTURE_TYPE_CUBEMAP || texture->stored_cube_sides == (1 << 6) - 1)) {
- //generate mipmaps if they were requested and the image does not contain them
- glGenerateMipmap(texture->target);
- }
-
- texture->mipmaps = mipmaps;
-}
-
-void RasterizerStorageGLES2::texture_set_data_partial(RID p_texture, const Ref<Image> &p_image, int src_x, int src_y, int src_w, int src_h, int dst_x, int dst_y, int p_dst_mip, int p_layer) {
- // TODO
- ERR_PRINT("Not implemented (ask Karroffel to do it :p)");
-}
-
-Ref<Image> RasterizerStorageGLES2::texture_get_data(RID p_texture, int p_layer) const {
- Texture *texture = texture_owner.getornull(p_texture);
-
- ERR_FAIL_COND_V(!texture, Ref<Image>());
- ERR_FAIL_COND_V(!texture->active, Ref<Image>());
- ERR_FAIL_COND_V(texture->data_size == 0 && !texture->render_target, Ref<Image>());
-
- if (texture->type == RS::TEXTURE_TYPE_CUBEMAP && p_layer < 6 && p_layer >= 0 && !texture->images[p_layer].is_null()) {
- return texture->images[p_layer];
- }
-
-#ifdef GLES_OVER_GL
-
- Image::Format real_format;
- GLenum gl_format;
- GLenum gl_internal_format;
- GLenum gl_type;
- bool compressed;
- _get_gl_image_and_format(Ref<Image>(), texture->format, texture->flags, real_format, gl_format, gl_internal_format, gl_type, compressed, false);
-
- Vector<uint8_t> data;
-
- int data_size = Image::get_image_data_size(texture->alloc_width, texture->alloc_height, real_format, texture->mipmaps > 1);
-
- data.resize(data_size * 2); //add some memory at the end, just in case for buggy drivers
- uint8_t *wb = data.ptrw();
-
- glActiveTexture(GL_TEXTURE0);
-
- glBindTexture(texture->target, texture->tex_id);
-
- glBindBuffer(GL_PIXEL_PACK_BUFFER, 0);
-
- for (int i = 0; i < texture->mipmaps; i++) {
- int ofs = Image::get_image_mipmap_offset(texture->alloc_width, texture->alloc_height, real_format, i);
-
- if (texture->compressed) {
- glPixelStorei(GL_PACK_ALIGNMENT, 4);
- glGetCompressedTexImage(texture->target, i, &wb[ofs]);
- } else {
- glPixelStorei(GL_PACK_ALIGNMENT, 1);
- glGetTexImage(texture->target, i, texture->gl_format_cache, texture->gl_type_cache, &wb[ofs]);
- }
- }
-
- wb.release();
-
- data.resize(data_size);
-
- Image *img = memnew(Image(texture->alloc_width, texture->alloc_height, texture->mipmaps > 1, real_format, data));
-
- return Ref<Image>(img);
-#else
-
- Image::Format real_format;
- GLenum gl_format;
- GLenum gl_internal_format;
- GLenum gl_type;
- bool compressed;
- _get_gl_image_and_format(Ref<Image>(), texture->format, texture->flags, real_format, gl_format, gl_internal_format, gl_type, compressed, texture->resize_to_po2);
-
- Vector<uint8_t> data;
-
- int data_size = Image::get_image_data_size(texture->alloc_width, texture->alloc_height, Image::FORMAT_RGBA8, false);
-
- data.resize(data_size * 2); //add some memory at the end, just in case for buggy drivers
- uint8_t *wb = data.ptrw();
-
- GLuint temp_framebuffer;
- glGenFramebuffers(1, &temp_framebuffer);
-
- GLuint temp_color_texture;
- glGenTextures(1, &temp_color_texture);
-
- glBindFramebuffer(GL_FRAMEBUFFER, temp_framebuffer);
-
- glBindTexture(GL_TEXTURE_2D, temp_color_texture);
- glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, texture->alloc_width, texture->alloc_height, 0, GL_RGBA, GL_UNSIGNED_BYTE, nullptr);
-
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
- glFramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, temp_color_texture, 0);
-
- glDepthMask(GL_FALSE);
- glDisable(GL_DEPTH_TEST);
- glDisable(GL_CULL_FACE);
- glDisable(GL_BLEND);
- glDepthFunc(GL_LEQUAL);
- glColorMask(1, 1, 1, 1);
- glActiveTexture(GL_TEXTURE0);
- glBindTexture(GL_TEXTURE_2D, texture->tex_id);
-
- glViewport(0, 0, texture->alloc_width, texture->alloc_height);
-
- shaders.copy.bind();
-
- glClearColor(0.0, 0.0, 0.0, 0.0);
- glClear(GL_COLOR_BUFFER_BIT);
- bind_quad_array();
- glDrawArrays(GL_TRIANGLE_FAN, 0, 4);
- glBindBuffer(GL_ARRAY_BUFFER, 0);
-
- glReadPixels(0, 0, texture->alloc_width, texture->alloc_height, GL_RGBA, GL_UNSIGNED_BYTE, &wb[0]);
-
- glDeleteTextures(1, &temp_color_texture);
-
- glBindFramebuffer(GL_FRAMEBUFFER, 0);
- glDeleteFramebuffers(1, &temp_framebuffer);
-
- wb.release();
-
- data.resize(data_size);
-
- Image *img = memnew(Image(texture->alloc_width, texture->alloc_height, false, Image::FORMAT_RGBA8, data));
- if (!texture->compressed) {
- img->convert(real_format);
- }
-
- return Ref<Image>(img);
-
-#endif
-}
-
-void RasterizerStorageGLES2::texture_set_flags(RID p_texture, uint32_t p_flags) {
- Texture *texture = texture_owner.getornull(p_texture);
- ERR_FAIL_COND(!texture);
-
- bool had_mipmaps = texture->flags & RS::TEXTURE_FLAG_MIPMAPS;
-
- texture->flags = p_flags;
-
- glActiveTexture(GL_TEXTURE0);
- glBindTexture(texture->target, texture->tex_id);
-
- if (((texture->flags & RS::TEXTURE_FLAG_REPEAT) || (texture->flags & RS::TEXTURE_FLAG_MIRRORED_REPEAT)) && texture->target != GL_TEXTURE_CUBE_MAP) {
- if (texture->flags & RS::TEXTURE_FLAG_MIRRORED_REPEAT) {
- glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_MIRRORED_REPEAT);
- glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_MIRRORED_REPEAT);
- } else {
- glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT);
- glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT);
- }
- } else {
- //glTexParameterf( texture->target, GL_TEXTURE_WRAP_R, GL_CLAMP_TO_EDGE );
- glTexParameterf(texture->target, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);
- glTexParameterf(texture->target, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);
- }
-
- if ((texture->flags & RS::TEXTURE_FLAG_MIPMAPS) && !texture->ignore_mipmaps) {
- if (!had_mipmaps && texture->mipmaps == 1) {
- glGenerateMipmap(texture->target);
- }
- glTexParameteri(texture->target, GL_TEXTURE_MIN_FILTER, config.use_fast_texture_filter ? GL_LINEAR_MIPMAP_NEAREST : GL_LINEAR_MIPMAP_LINEAR);
-
- } else {
- if (texture->flags & RS::TEXTURE_FLAG_FILTER) {
- glTexParameteri(texture->target, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
- } else {
- glTexParameteri(texture->target, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
- }
- }
-
- if (texture->flags & RS::TEXTURE_FLAG_FILTER) {
- glTexParameteri(texture->target, GL_TEXTURE_MAG_FILTER, GL_LINEAR); // Linear Filtering
-
- } else {
- glTexParameteri(texture->target, GL_TEXTURE_MAG_FILTER, GL_NEAREST); // raw Filtering
- }
-}
-
-uint32_t RasterizerStorageGLES2::texture_get_flags(RID p_texture) const {
- Texture *texture = texture_owner.getornull(p_texture);
-
- ERR_FAIL_COND_V(!texture, 0);
-
- return texture->flags;
-}
-
-Image::Format RasterizerStorageGLES2::texture_get_format(RID p_texture) const {
- Texture *texture = texture_owner.getornull(p_texture);
-
- ERR_FAIL_COND_V(!texture, Image::FORMAT_L8);
-
- return texture->format;
-}
-
-RenderingServer::TextureType RasterizerStorageGLES2::texture_get_type(RID p_texture) const {
- Texture *texture = texture_owner.getornull(p_texture);
-
- ERR_FAIL_COND_V(!texture, RS::TEXTURE_TYPE_2D);
-
- return texture->type;
-}
-
-uint32_t RasterizerStorageGLES2::texture_get_texid(RID p_texture) const {
- Texture *texture = texture_owner.getornull(p_texture);
-
- ERR_FAIL_COND_V(!texture, 0);
-
- return texture->tex_id;
-}
-
-void RasterizerStorageGLES2::texture_bind(RID p_texture, uint32_t p_texture_no) {
- Texture *texture = texture_owner.getornull(p_texture);
-
- ERR_FAIL_COND(!texture);
-
- glActiveTexture(GL_TEXTURE0 + p_texture_no);
- glBindTexture(texture->target, texture->tex_id);
-}
-
-uint32_t RasterizerStorageGLES2::texture_get_width(RID p_texture) const {
- Texture *texture = texture_owner.getornull(p_texture);
-
- ERR_FAIL_COND_V(!texture, 0);
-
- return texture->width;
-}
-
-uint32_t RasterizerStorageGLES2::texture_get_height(RID p_texture) const {
- Texture *texture = texture_owner.getornull(p_texture);
-
- ERR_FAIL_COND_V(!texture, 0);
-
- return texture->height;
-}
-
-uint32_t RasterizerStorageGLES2::texture_get_depth(RID p_texture) const {
- Texture *texture = texture_owner.getornull(p_texture);
-
- ERR_FAIL_COND_V(!texture, 0);
-
- return texture->depth;
-}
-
-void RasterizerStorageGLES2::texture_set_size_override(RID p_texture, int p_width, int p_height, int p_depth) {
- Texture *texture = texture_owner.getornull(p_texture);
-
- ERR_FAIL_COND(!texture);
- ERR_FAIL_COND(texture->render_target);
-
- ERR_FAIL_COND(p_width <= 0 || p_width > 16384);
- ERR_FAIL_COND(p_height <= 0 || p_height > 16384);
- //real texture size is in alloc width and height
- texture->width = p_width;
- texture->height = p_height;
-}
-
-void RasterizerStorageGLES2::texture_set_path(RID p_texture, const String &p_path) {
- Texture *texture = texture_owner.getornull(p_texture);
- ERR_FAIL_COND(!texture);
-
- texture->path = p_path;
-}
-
-String RasterizerStorageGLES2::texture_get_path(RID p_texture) const {
- Texture *texture = texture_owner.getornull(p_texture);
- ERR_FAIL_COND_V(!texture, "");
-
- return texture->path;
-}
-
-void RasterizerStorageGLES2::texture_debug_usage(List<RS::TextureInfo> *r_info) {
- List<RID> textures;
- texture_owner.get_owned_list(&textures);
-
- for (List<RID>::Element *E = textures.front(); E; E = E->next()) {
- Texture *t = texture_owner.getornull(E->get());
- if (!t)
- continue;
- RS::TextureInfo tinfo;
- tinfo.path = t->path;
- tinfo.format = t->format;
- tinfo.width = t->alloc_width;
- tinfo.height = t->alloc_height;
- tinfo.depth = 0;
- tinfo.bytes = t->total_data_size;
- r_info->push_back(tinfo);
- }
-}
-
-void RasterizerStorageGLES2::texture_set_shrink_all_x2_on_set_data(bool p_enable) {
- config.shrink_textures_x2 = p_enable;
-}
-
-void RasterizerStorageGLES2::textures_keep_original(bool p_enable) {
- config.keep_original_textures = p_enable;
-}
-
-Size2 RasterizerStorageGLES2::texture_size_with_proxy(RID p_texture) const {
- const Texture *texture = texture_owner.getornull(p_texture);
- ERR_FAIL_COND_V(!texture, Size2());
- if (texture->proxy) {
- return Size2(texture->proxy->width, texture->proxy->height);
- } else {
- return Size2(texture->width, texture->height);
- }
-}
-
-void RasterizerStorageGLES2::texture_set_proxy(RID p_texture, RID p_proxy) {
- Texture *texture = texture_owner.getornull(p_texture);
- ERR_FAIL_COND(!texture);
-
- if (texture->proxy) {
- texture->proxy->proxy_owners.erase(texture);
- texture->proxy = nullptr;
- }
-
- if (p_proxy.is_valid()) {
- Texture *proxy = texture_owner.getornull(p_proxy);
- ERR_FAIL_COND(!proxy);
- ERR_FAIL_COND(proxy == texture);
- proxy->proxy_owners.insert(texture);
- texture->proxy = proxy;
- }
-}
-
-void RasterizerStorageGLES2::texture_set_force_redraw_if_visible(RID p_texture, bool p_enable) {
- Texture *texture = texture_owner.getornull(p_texture);
- ERR_FAIL_COND(!texture);
-
- texture->redraw_if_visible = p_enable;
-}
-
-void RasterizerStorageGLES2::texture_set_detect_3d_callback(RID p_texture, RenderingServer::TextureDetectCallback p_callback, void *p_userdata) {
- Texture *texture = texture_owner.getornull(p_texture);
- ERR_FAIL_COND(!texture);
-
- texture->detect_3d = p_callback;
- texture->detect_3d_ud = p_userdata;
-}
-
-void RasterizerStorageGLES2::texture_set_detect_srgb_callback(RID p_texture, RenderingServer::TextureDetectCallback p_callback, void *p_userdata) {
- Texture *texture = texture_owner.getornull(p_texture);
- ERR_FAIL_COND(!texture);
-
- texture->detect_srgb = p_callback;
- texture->detect_srgb_ud = p_userdata;
-}
-
-void RasterizerStorageGLES2::texture_set_detect_normal_callback(RID p_texture, RenderingServer::TextureDetectCallback p_callback, void *p_userdata) {
- Texture *texture = texture_owner.getornull(p_texture);
- ERR_FAIL_COND(!texture);
-
- texture->detect_normal = p_callback;
- texture->detect_normal_ud = p_userdata;
-}
-
-RID RasterizerStorageGLES2::texture_create_radiance_cubemap(RID p_source, int p_resolution) const {
- return RID();
-}
-
-RID RasterizerStorageGLES2::sky_create() {
- Sky *sky = memnew(Sky);
- sky->radiance = 0;
- return sky_owner.make_rid(sky);
-}
-
-void RasterizerStorageGLES2::sky_set_texture(RID p_sky, RID p_panorama, int p_radiance_size) {
- Sky *sky = sky_owner.getornull(p_sky);
- ERR_FAIL_COND(!sky);
-
- if (sky->panorama.is_valid()) {
- sky->panorama = RID();
- glDeleteTextures(1, &sky->radiance);
- sky->radiance = 0;
- }
-
- sky->panorama = p_panorama;
- if (!sky->panorama.is_valid()) {
- return; // the panorama was cleared
- }
-
- Texture *texture = texture_owner.getornull(sky->panorama);
- if (!texture) {
- sky->panorama = RID();
- ERR_FAIL_COND(!texture);
- }
-
- // glBindVertexArray(0) and more
- {
- glBindBuffer(GL_ARRAY_BUFFER, 0);
- glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, 0);
- glDisable(GL_CULL_FACE);
- glDisable(GL_DEPTH_TEST);
- glDisable(GL_SCISSOR_TEST);
- glDisable(GL_BLEND);
-
- for (int i = 0; i < RS::ARRAY_MAX - 1; i++) {
- glDisableVertexAttribArray(i);
- }
- }
-
- glActiveTexture(GL_TEXTURE0);
- glBindTexture(texture->target, texture->tex_id);
-
- glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);
- glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);
- glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
- glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); //need this for proper sampling
-
- glActiveTexture(GL_TEXTURE1);
- glBindTexture(GL_TEXTURE_2D, resources.radical_inverse_vdc_cache_tex);
-
- glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);
- glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);
- glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
- glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
-
- // New cubemap that will hold the mipmaps with different roughness values
- glActiveTexture(GL_TEXTURE2);
- glGenTextures(1, &sky->radiance);
- glBindTexture(GL_TEXTURE_CUBE_MAP, sky->radiance);
-
- int size = p_radiance_size / 2; //divide by two because its a cubemap (this is an approximation because GLES3 uses a dual paraboloid)
-
- GLenum internal_format = GL_RGB;
- GLenum format = GL_RGB;
- GLenum type = GL_UNSIGNED_BYTE;
-
- // Set the initial (empty) mipmaps
- // Mobile hardware (PowerVR specially) prefers this approach,
- // the previous approach with manual lod levels kills the game.
- for (int i = 0; i < 6; i++) {
- glTexImage2D(GL_TEXTURE_CUBE_MAP_POSITIVE_X + i, 0, internal_format, size, size, 0, format, type, nullptr);
- }
-
- glGenerateMipmap(GL_TEXTURE_CUBE_MAP);
-
- // No filters for now
- glTexParameterf(GL_TEXTURE_CUBE_MAP, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
- glTexParameterf(GL_TEXTURE_CUBE_MAP, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
- glTexParameterf(GL_TEXTURE_CUBE_MAP, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);
- glTexParameterf(GL_TEXTURE_CUBE_MAP, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);
-
- // Framebuffer
-
- glBindFramebuffer(GL_FRAMEBUFFER, resources.mipmap_blur_fbo);
-
- int mipmaps = 6;
- int lod = 0;
- int mm_level = mipmaps;
- size = p_radiance_size / 2;
- shaders.cubemap_filter.set_conditional(CubemapFilterShaderGLES2::USE_SOURCE_PANORAMA, true);
- shaders.cubemap_filter.set_conditional(CubemapFilterShaderGLES2::USE_DIRECT_WRITE, true);
- shaders.cubemap_filter.bind();
-
- // third, render to the framebuffer using separate textures, then copy to mipmaps
- while (size >= 1) {
- //make framebuffer size the texture size, need to use a separate texture for compatibility
- glActiveTexture(GL_TEXTURE3);
- glBindTexture(GL_TEXTURE_2D, resources.mipmap_blur_color);
- glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, size, size, 0, GL_RGB, GL_UNSIGNED_BYTE, nullptr);
- glFramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, resources.mipmap_blur_color, 0);
-
- if (lod == 1) {
- //bind panorama for smaller lods
-
- glActiveTexture(GL_TEXTURE0);
- glBindTexture(GL_TEXTURE_CUBE_MAP, sky->radiance);
- shaders.cubemap_filter.set_conditional(CubemapFilterShaderGLES2::USE_SOURCE_PANORAMA, false);
- shaders.cubemap_filter.set_conditional(CubemapFilterShaderGLES2::USE_DIRECT_WRITE, false);
- shaders.cubemap_filter.bind();
- }
- glViewport(0, 0, size, size);
- bind_quad_array();
-
- glActiveTexture(GL_TEXTURE2); //back to panorama
-
- for (int i = 0; i < 6; i++) {
- shaders.cubemap_filter.set_uniform(CubemapFilterShaderGLES2::FACE_ID, i);
-
- float roughness = mm_level >= 0 ? lod / (float)(mipmaps - 1) : 1;
- roughness = MIN(1.0, roughness); //keep max at 1
- shaders.cubemap_filter.set_uniform(CubemapFilterShaderGLES2::ROUGHNESS, roughness);
- shaders.cubemap_filter.set_uniform(CubemapFilterShaderGLES2::Z_FLIP, false);
-
- glDrawArrays(GL_TRIANGLE_FAN, 0, 4);
-
- glCopyTexSubImage2D(_cube_side_enum[i], lod, 0, 0, 0, 0, size, size);
- }
-
- size >>= 1;
-
- mm_level--;
-
- lod++;
- }
-
- shaders.cubemap_filter.set_conditional(CubemapFilterShaderGLES2::USE_SOURCE_PANORAMA, false);
- shaders.cubemap_filter.set_conditional(CubemapFilterShaderGLES2::USE_DIRECT_WRITE, false);
-
- // restore ranges
- glActiveTexture(GL_TEXTURE2); //back to panorama
-
- glTexParameterf(GL_TEXTURE_CUBE_MAP, GL_TEXTURE_MIN_FILTER, GL_LINEAR_MIPMAP_LINEAR);
- glTexParameterf(GL_TEXTURE_CUBE_MAP, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
- glTexParameterf(GL_TEXTURE_CUBE_MAP, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);
- glTexParameterf(GL_TEXTURE_CUBE_MAP, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);
-
- glBindTexture(GL_TEXTURE_2D, 0);
- glActiveTexture(GL_TEXTURE3); //back to panorama
- glBindTexture(GL_TEXTURE_2D, 0);
- glActiveTexture(GL_TEXTURE1);
- glBindTexture(GL_TEXTURE_2D, 0);
- glActiveTexture(GL_TEXTURE0);
- glBindTexture(GL_TEXTURE_2D, 0);
-
- // Framebuffer did its job. thank mr framebuffer
- glActiveTexture(GL_TEXTURE0); //back to panorama
- glBindFramebuffer(GL_FRAMEBUFFER, RasterizerStorageGLES2::system_fbo);
-}
-
-/* SHADER API */
-
-RID RasterizerStorageGLES2::shader_create() {
- Shader *shader = memnew(Shader);
- shader->mode = RS::SHADER_SPATIAL;
- shader->shader = &scene->state.scene_shader;
- RID rid = shader_owner.make_rid(shader);
- _shader_make_dirty(shader);
- shader->self = rid;
-
- return rid;
-}
-
-void RasterizerStorageGLES2::_shader_make_dirty(Shader *p_shader) {
- if (p_shader->dirty_list.in_list())
- return;
-
- _shader_dirty_list.add(&p_shader->dirty_list);
-}
-
-void RasterizerStorageGLES2::shader_set_code(RID p_shader, const String &p_code) {
- Shader *shader = shader_owner.getornull(p_shader);
- ERR_FAIL_COND(!shader);
-
- shader->code = p_code;
-
- String mode_string = ShaderLanguage::get_shader_type(p_code);
- RS::ShaderMode mode;
-
- if (mode_string == "canvas_item")
- mode = RS::SHADER_CANVAS_ITEM;
- else if (mode_string == "particles")
- mode = RS::SHADER_PARTICLES;
- else if (mode_string == "sky")
- mode = RS::SHADER_SKY;
- else
- mode = RS::SHADER_SPATIAL;
-
- if (shader->custom_code_id && mode != shader->mode) {
- shader->shader->free_custom_shader(shader->custom_code_id);
- shader->custom_code_id = 0;
- }
-
- shader->mode = mode;
-
- // TODO handle all shader types
- if (mode == RS::SHADER_CANVAS_ITEM) {
- shader->shader = &canvas->state.canvas_shader;
-
- } else if (mode == RS::SHADER_SPATIAL) {
- shader->shader = &scene->state.scene_shader;
- } else {
- return;
- }
-
- if (shader->custom_code_id == 0) {
- shader->custom_code_id = shader->shader->create_custom_shader();
- }
-
- _shader_make_dirty(shader);
-}
-
-String RasterizerStorageGLES2::shader_get_code(RID p_shader) const {
- const Shader *shader = shader_owner.getornull(p_shader);
- ERR_FAIL_COND_V(!shader, "");
-
- return shader->code;
-}
-
-void RasterizerStorageGLES2::_update_shader(Shader *p_shader) const {
- _shader_dirty_list.remove(&p_shader->dirty_list);
-
- p_shader->valid = false;
-
- p_shader->uniforms.clear();
-
- if (p_shader->code == String()) {
- return; //just invalid, but no error
- }
-
- ShaderCompilerGLES2::GeneratedCode gen_code;
- ShaderCompilerGLES2::IdentifierActions *actions = nullptr;
-
- switch (p_shader->mode) {
- case RS::SHADER_CANVAS_ITEM: {
- p_shader->canvas_item.light_mode = Shader::CanvasItem::LIGHT_MODE_NORMAL;
- p_shader->canvas_item.blend_mode = Shader::CanvasItem::BLEND_MODE_MIX;
-
- p_shader->canvas_item.uses_screen_texture = false;
- p_shader->canvas_item.uses_screen_uv = false;
- p_shader->canvas_item.uses_time = false;
-
- shaders.actions_canvas.render_mode_values["blend_add"] = Pair<int *, int>(&p_shader->canvas_item.blend_mode, Shader::CanvasItem::BLEND_MODE_ADD);
- shaders.actions_canvas.render_mode_values["blend_mix"] = Pair<int *, int>(&p_shader->canvas_item.blend_mode, Shader::CanvasItem::BLEND_MODE_MIX);
- shaders.actions_canvas.render_mode_values["blend_sub"] = Pair<int *, int>(&p_shader->canvas_item.blend_mode, Shader::CanvasItem::BLEND_MODE_SUB);
- shaders.actions_canvas.render_mode_values["blend_mul"] = Pair<int *, int>(&p_shader->canvas_item.blend_mode, Shader::CanvasItem::BLEND_MODE_MUL);
- shaders.actions_canvas.render_mode_values["blend_premul_alpha"] = Pair<int *, int>(&p_shader->canvas_item.blend_mode, Shader::CanvasItem::BLEND_MODE_PMALPHA);
-
- shaders.actions_canvas.render_mode_values["unshaded"] = Pair<int *, int>(&p_shader->canvas_item.light_mode, Shader::CanvasItem::LIGHT_MODE_UNSHADED);
- shaders.actions_canvas.render_mode_values["light_only"] = Pair<int *, int>(&p_shader->canvas_item.light_mode, Shader::CanvasItem::LIGHT_MODE_LIGHT_ONLY);
-
- shaders.actions_canvas.usage_flag_pointers["SCREEN_UV"] = &p_shader->canvas_item.uses_screen_uv;
- shaders.actions_canvas.usage_flag_pointers["SCREEN_PIXEL_SIZE"] = &p_shader->canvas_item.uses_screen_uv;
- shaders.actions_canvas.usage_flag_pointers["SCREEN_TEXTURE"] = &p_shader->canvas_item.uses_screen_texture;
- shaders.actions_canvas.usage_flag_pointers["TIME"] = &p_shader->canvas_item.uses_time;
-
- actions = &shaders.actions_canvas;
- actions->uniforms = &p_shader->uniforms;
- } break;
-
- case RS::SHADER_SPATIAL: {
- p_shader->spatial.blend_mode = Shader::Spatial::BLEND_MODE_MIX;
- p_shader->spatial.depth_draw_mode = Shader::Spatial::DEPTH_DRAW_OPAQUE;
- p_shader->spatial.cull_mode = Shader::Spatial::CULL_MODE_BACK;
- p_shader->spatial.uses_alpha = false;
- p_shader->spatial.uses_alpha_scissor = false;
- p_shader->spatial.uses_discard = false;
- p_shader->spatial.unshaded = false;
- p_shader->spatial.no_depth_test = false;
- p_shader->spatial.uses_sss = false;
- p_shader->spatial.uses_time = false;
- p_shader->spatial.uses_vertex_lighting = false;
- p_shader->spatial.uses_screen_texture = false;
- p_shader->spatial.uses_depth_texture = false;
- p_shader->spatial.uses_vertex = false;
- p_shader->spatial.writes_modelview_or_projection = false;
- p_shader->spatial.uses_world_coordinates = false;
-
- shaders.actions_scene.render_mode_values["blend_add"] = Pair<int *, int>(&p_shader->spatial.blend_mode, Shader::Spatial::BLEND_MODE_ADD);
- shaders.actions_scene.render_mode_values["blend_mix"] = Pair<int *, int>(&p_shader->spatial.blend_mode, Shader::Spatial::BLEND_MODE_MIX);
- shaders.actions_scene.render_mode_values["blend_sub"] = Pair<int *, int>(&p_shader->spatial.blend_mode, Shader::Spatial::BLEND_MODE_SUB);
- shaders.actions_scene.render_mode_values["blend_mul"] = Pair<int *, int>(&p_shader->spatial.blend_mode, Shader::Spatial::BLEND_MODE_MUL);
-
- shaders.actions_scene.render_mode_values["depth_draw_opaque"] = Pair<int *, int>(&p_shader->spatial.depth_draw_mode, Shader::Spatial::DEPTH_DRAW_OPAQUE);
- shaders.actions_scene.render_mode_values["depth_draw_always"] = Pair<int *, int>(&p_shader->spatial.depth_draw_mode, Shader::Spatial::DEPTH_DRAW_ALWAYS);
- shaders.actions_scene.render_mode_values["depth_draw_never"] = Pair<int *, int>(&p_shader->spatial.depth_draw_mode, Shader::Spatial::DEPTH_DRAW_NEVER);
- shaders.actions_scene.render_mode_values["depth_draw_alpha_prepass"] = Pair<int *, int>(&p_shader->spatial.depth_draw_mode, Shader::Spatial::DEPTH_DRAW_ALPHA_PREPASS);
-
- shaders.actions_scene.render_mode_values["cull_front"] = Pair<int *, int>(&p_shader->spatial.cull_mode, Shader::Spatial::CULL_MODE_FRONT);
- shaders.actions_scene.render_mode_values["cull_back"] = Pair<int *, int>(&p_shader->spatial.cull_mode, Shader::Spatial::CULL_MODE_BACK);
- shaders.actions_scene.render_mode_values["cull_disabled"] = Pair<int *, int>(&p_shader->spatial.cull_mode, Shader::Spatial::CULL_MODE_DISABLED);
-
- shaders.actions_scene.render_mode_flags["unshaded"] = &p_shader->spatial.unshaded;
- shaders.actions_scene.render_mode_flags["depth_test_disable"] = &p_shader->spatial.no_depth_test;
-
- shaders.actions_scene.render_mode_flags["vertex_lighting"] = &p_shader->spatial.uses_vertex_lighting;
-
- shaders.actions_scene.render_mode_flags["world_vertex_coords"] = &p_shader->spatial.uses_world_coordinates;
-
- shaders.actions_scene.usage_flag_pointers["ALPHA"] = &p_shader->spatial.uses_alpha;
- shaders.actions_scene.usage_flag_pointers["ALPHA_SCISSOR"] = &p_shader->spatial.uses_alpha_scissor;
-
- shaders.actions_scene.usage_flag_pointers["SSS_STRENGTH"] = &p_shader->spatial.uses_sss;
- shaders.actions_scene.usage_flag_pointers["DISCARD"] = &p_shader->spatial.uses_discard;
- shaders.actions_scene.usage_flag_pointers["SCREEN_TEXTURE"] = &p_shader->spatial.uses_screen_texture;
- shaders.actions_scene.usage_flag_pointers["DEPTH_TEXTURE"] = &p_shader->spatial.uses_depth_texture;
- shaders.actions_scene.usage_flag_pointers["TIME"] = &p_shader->spatial.uses_time;
-
- shaders.actions_scene.write_flag_pointers["MODELVIEW_MATRIX"] = &p_shader->spatial.writes_modelview_or_projection;
- shaders.actions_scene.write_flag_pointers["PROJECTION_MATRIX"] = &p_shader->spatial.writes_modelview_or_projection;
- shaders.actions_scene.write_flag_pointers["VERTEX"] = &p_shader->spatial.uses_vertex;
-
- actions = &shaders.actions_scene;
- actions->uniforms = &p_shader->uniforms;
-
- if (p_shader->spatial.uses_screen_texture && p_shader->spatial.uses_depth_texture) {
- ERR_PRINT_ONCE("Using both SCREEN_TEXTURE and DEPTH_TEXTURE is not supported in GLES2");
- }
-
- if (p_shader->spatial.uses_depth_texture && !config.support_depth_texture) {
- ERR_PRINT_ONCE("Using DEPTH_TEXTURE is not permitted on this hardware, operation will fail.");
- }
- } break;
-
- default: {
- return;
- } break;
- }
-
- Error err = shaders.compiler.compile(p_shader->mode, p_shader->code, actions, p_shader->path, gen_code);
- if (err != OK) {
- return;
- }
-
- p_shader->shader->set_custom_shader_code(p_shader->custom_code_id, gen_code.vertex, gen_code.vertex_global, gen_code.fragment, gen_code.light, gen_code.fragment_global, gen_code.uniforms, gen_code.texture_uniforms, gen_code.custom_defines);
-
- p_shader->texture_count = gen_code.texture_uniforms.size();
- p_shader->texture_hints = gen_code.texture_hints;
- p_shader->texture_types = gen_code.texture_types;
-
- p_shader->uses_vertex_time = gen_code.uses_vertex_time;
- p_shader->uses_fragment_time = gen_code.uses_fragment_time;
-
- p_shader->shader->set_custom_shader(p_shader->custom_code_id);
- p_shader->shader->bind();
-
- // cache uniform locations
-
- for (SelfList<Material> *E = p_shader->materials.first(); E; E = E->next()) {
- _material_make_dirty(E->self());
- }
-
- p_shader->valid = true;
- p_shader->version++;
-}
-
-void RasterizerStorageGLES2::update_dirty_shaders() {
- while (_shader_dirty_list.first()) {
- _update_shader(_shader_dirty_list.first()->self());
- }
-}
-
-void RasterizerStorageGLES2::shader_get_param_list(RID p_shader, List<PropertyInfo> *p_param_list) const {
- Shader *shader = shader_owner.getornull(p_shader);
- ERR_FAIL_COND(!shader);
-
- if (shader->dirty_list.in_list()) {
- _update_shader(shader);
- }
-
- Map<int, StringName> order;
-
- for (Map<StringName, ShaderLanguage::ShaderNode::Uniform>::Element *E = shader->uniforms.front(); E; E = E->next()) {
- if (E->get().texture_order >= 0) {
- order[E->get().texture_order + 100000] = E->key();
- } else {
- order[E->get().order] = E->key();
- }
- }
-
- for (Map<int, StringName>::Element *E = order.front(); E; E = E->next()) {
- PropertyInfo pi;
- ShaderLanguage::ShaderNode::Uniform &u = shader->uniforms[E->get()];
-
- pi.name = E->get();
-
- switch (u.type) {
- case ShaderLanguage::TYPE_STRUCT: {
- pi.type = Variant::ARRAY;
- } break;
- case ShaderLanguage::TYPE_VOID: {
- pi.type = Variant::NIL;
- } break;
-
- case ShaderLanguage::TYPE_BOOL: {
- pi.type = Variant::BOOL;
- } break;
-
- // bool vectors
- case ShaderLanguage::TYPE_BVEC2: {
- pi.type = Variant::INT;
- pi.hint = PROPERTY_HINT_FLAGS;
- pi.hint_string = "x,y";
- } break;
- case ShaderLanguage::TYPE_BVEC3: {
- pi.type = Variant::INT;
- pi.hint = PROPERTY_HINT_FLAGS;
- pi.hint_string = "x,y,z";
- } break;
- case ShaderLanguage::TYPE_BVEC4: {
- pi.type = Variant::INT;
- pi.hint = PROPERTY_HINT_FLAGS;
- pi.hint_string = "x,y,z,w";
- } break;
-
- // int stuff
- case ShaderLanguage::TYPE_UINT:
- case ShaderLanguage::TYPE_INT: {
- pi.type = Variant::INT;
-
- if (u.hint == ShaderLanguage::ShaderNode::Uniform::HINT_RANGE) {
- pi.hint = PROPERTY_HINT_RANGE;
- pi.hint_string = rtos(u.hint_range[0]) + "," + rtos(u.hint_range[1]) + "," + rtos(u.hint_range[2]);
- }
- } break;
-
- case ShaderLanguage::TYPE_IVEC2:
- case ShaderLanguage::TYPE_UVEC2:
- case ShaderLanguage::TYPE_IVEC3:
- case ShaderLanguage::TYPE_UVEC3:
- case ShaderLanguage::TYPE_IVEC4:
- case ShaderLanguage::TYPE_UVEC4: {
- pi.type = Variant::PACKED_INT32_ARRAY;
- } break;
-
- case ShaderLanguage::TYPE_FLOAT: {
- pi.type = Variant::FLOAT;
- if (u.hint == ShaderLanguage::ShaderNode::Uniform::HINT_RANGE) {
- pi.hint = PROPERTY_HINT_RANGE;
- pi.hint_string = rtos(u.hint_range[0]) + "," + rtos(u.hint_range[1]) + "," + rtos(u.hint_range[2]);
- }
- } break;
-
- case ShaderLanguage::TYPE_VEC2: {
- pi.type = Variant::VECTOR2;
- } break;
- case ShaderLanguage::TYPE_VEC3: {
- pi.type = Variant::VECTOR3;
- } break;
-
- case ShaderLanguage::TYPE_VEC4: {
- if (u.hint == ShaderLanguage::ShaderNode::Uniform::HINT_COLOR) {
- pi.type = Variant::COLOR;
- } else {
- pi.type = Variant::PLANE;
- }
- } break;
-
- case ShaderLanguage::TYPE_MAT2: {
- pi.type = Variant::TRANSFORM2D;
- } break;
-
- case ShaderLanguage::TYPE_MAT3: {
- pi.type = Variant::BASIS;
- } break;
-
- case ShaderLanguage::TYPE_MAT4: {
- pi.type = Variant::TRANSFORM;
- } break;
-
- case ShaderLanguage::TYPE_SAMPLER2D:
- case ShaderLanguage::TYPE_ISAMPLER2D:
- case ShaderLanguage::TYPE_USAMPLER2D: {
- pi.type = Variant::OBJECT;
- pi.hint = PROPERTY_HINT_RESOURCE_TYPE;
- pi.hint_string = "Texture2D";
- } break;
-
- case ShaderLanguage::TYPE_SAMPLERCUBE: {
- pi.type = Variant::OBJECT;
- pi.hint = PROPERTY_HINT_RESOURCE_TYPE;
- pi.hint_string = "CubeMap";
- } break;
-
- case ShaderLanguage::TYPE_SAMPLER2DARRAY:
- case ShaderLanguage::TYPE_ISAMPLER2DARRAY:
- case ShaderLanguage::TYPE_USAMPLER2DARRAY: {
- pi.type = Variant::OBJECT;
- pi.hint = PROPERTY_HINT_RESOURCE_TYPE;
- pi.hint_string = "TextureArray";
- } break;
-
- case ShaderLanguage::TYPE_SAMPLER3D:
- case ShaderLanguage::TYPE_ISAMPLER3D:
- case ShaderLanguage::TYPE_USAMPLER3D: {
- pi.type = Variant::OBJECT;
- pi.hint = PROPERTY_HINT_RESOURCE_TYPE;
- pi.hint_string = "Texture3D";
- } break;
- }
-
- p_param_list->push_back(pi);
- }
-}
-
-void RasterizerStorageGLES2::shader_set_default_texture_param(RID p_shader, const StringName &p_name, RID p_texture) {
- Shader *shader = shader_owner.getornull(p_shader);
- ERR_FAIL_COND(!shader);
- ERR_FAIL_COND(p_texture.is_valid() && !texture_owner.owns(p_texture));
-
- if (p_texture.is_valid()) {
- shader->default_textures[p_name] = p_texture;
- } else {
- shader->default_textures.erase(p_name);
- }
-
- _shader_make_dirty(shader);
-}
-
-RID RasterizerStorageGLES2::shader_get_default_texture_param(RID p_shader, const StringName &p_name) const {
- const Shader *shader = shader_owner.getornull(p_shader);
- ERR_FAIL_COND_V(!shader, RID());
-
- const Map<StringName, RID>::Element *E = shader->default_textures.find(p_name);
-
- if (!E) {
- return RID();
- }
-
- return E->get();
-}
-
-/* COMMON MATERIAL API */
-
-void RasterizerStorageGLES2::_material_make_dirty(Material *p_material) const {
- if (p_material->dirty_list.in_list())
- return;
-
- _material_dirty_list.add(&p_material->dirty_list);
-}
-
-RID RasterizerStorageGLES2::material_create() {
- Material *material = memnew(Material);
-
- return material_owner.make_rid(material);
-}
-
-void RasterizerStorageGLES2::material_set_shader(RID p_material, RID p_shader) {
- Material *material = material_owner.getornull(p_material);
- ERR_FAIL_COND(!material);
-
- Shader *shader = shader_owner.getornull(p_shader);
-
- if (material->shader) {
- // if a shader is present, remove the old shader
- material->shader->materials.remove(&material->list);
- }
-
- material->shader = shader;
-
- if (shader) {
- shader->materials.add(&material->list);
- }
-
- _material_make_dirty(material);
-}
-
-RID RasterizerStorageGLES2::material_get_shader(RID p_material) const {
- const Material *material = material_owner.getornull(p_material);
- ERR_FAIL_COND_V(!material, RID());
-
- if (material->shader) {
- return material->shader->self;
- }
-
- return RID();
-}
-
-void RasterizerStorageGLES2::material_set_param(RID p_material, const StringName &p_param, const Variant &p_value) {
- Material *material = material_owner.getornull(p_material);
- ERR_FAIL_COND(!material);
-
- if (p_value.get_type() == Variant::NIL) {
- material->params.erase(p_param);
- } else {
- material->params[p_param] = p_value;
- }
-
- _material_make_dirty(material);
-}
-
-Variant RasterizerStorageGLES2::material_get_param(RID p_material, const StringName &p_param) const {
- const Material *material = material_owner.getornull(p_material);
- ERR_FAIL_COND_V(!material, RID());
-
- if (material->params.has(p_param)) {
- return material->params[p_param];
- }
-
- return material_get_param_default(p_material, p_param);
-}
-
-Variant RasterizerStorageGLES2::material_get_param_default(RID p_material, const StringName &p_param) const {
- const Material *material = material_owner.getornull(p_material);
- ERR_FAIL_COND_V(!material, Variant());
-
- if (material->shader) {
- if (material->shader->uniforms.has(p_param)) {
- ShaderLanguage::ShaderNode::Uniform uniform = material->shader->uniforms[p_param];
- Vector<ShaderLanguage::ConstantNode::Value> default_value = uniform.default_value;
- return ShaderLanguage::constant_value_to_variant(default_value, uniform.type, uniform.hint);
- }
- }
- return Variant();
-}
-
-void RasterizerStorageGLES2::material_set_line_width(RID p_material, float p_width) {
- Material *material = material_owner.getornull(p_material);
- ERR_FAIL_COND(!material);
-
- material->line_width = p_width;
-}
-
-void RasterizerStorageGLES2::material_set_next_pass(RID p_material, RID p_next_material) {
- Material *material = material_owner.getornull(p_material);
- ERR_FAIL_COND(!material);
-
- material->next_pass = p_next_material;
-}
-
-bool RasterizerStorageGLES2::material_is_animated(RID p_material) {
- Material *material = material_owner.getornull(p_material);
- ERR_FAIL_COND_V(!material, false);
- if (material->dirty_list.in_list()) {
- _update_material(material);
- }
-
- bool animated = material->is_animated_cache;
- if (!animated && material->next_pass.is_valid()) {
- animated = material_is_animated(material->next_pass);
- }
- return animated;
-}
-
-bool RasterizerStorageGLES2::material_casts_shadows(RID p_material) {
- Material *material = material_owner.getornull(p_material);
- ERR_FAIL_COND_V(!material, false);
- if (material->dirty_list.in_list()) {
- _update_material(material);
- }
-
- bool casts_shadows = material->can_cast_shadow_cache;
-
- if (!casts_shadows && material->next_pass.is_valid()) {
- casts_shadows = material_casts_shadows(material->next_pass);
- }
-
- return casts_shadows;
-}
-
-void RasterizerStorageGLES2::material_add_instance_owner(RID p_material, RasterizerScene::InstanceBase *p_instance) {
- Material *material = material_owner.getornull(p_material);
- ERR_FAIL_COND(!material);
-
- Map<RasterizerScene::InstanceBase *, int>::Element *E = material->instance_owners.find(p_instance);
- if (E) {
- E->get()++;
- } else {
- material->instance_owners[p_instance] = 1;
- }
-}
-
-void RasterizerStorageGLES2::material_remove_instance_owner(RID p_material, RasterizerScene::InstanceBase *p_instance) {
- Material *material = material_owner.getornull(p_material);
- ERR_FAIL_COND(!material);
-
- Map<RasterizerScene::InstanceBase *, int>::Element *E = material->instance_owners.find(p_instance);
- ERR_FAIL_COND(!E);
-
- E->get()--;
-
- if (E->get() == 0) {
- material->instance_owners.erase(E);
- }
-}
-
-void RasterizerStorageGLES2::material_set_render_priority(RID p_material, int priority) {
- ERR_FAIL_COND(priority < RS::MATERIAL_RENDER_PRIORITY_MIN);
- ERR_FAIL_COND(priority > RS::MATERIAL_RENDER_PRIORITY_MAX);
-
- Material *material = material_owner.getornull(p_material);
- ERR_FAIL_COND(!material);
-
- material->render_priority = priority;
-}
-
-void RasterizerStorageGLES2::_update_material(Material *p_material) {
- if (p_material->dirty_list.in_list()) {
- _material_dirty_list.remove(&p_material->dirty_list);
- }
-
- if (p_material->shader && p_material->shader->dirty_list.in_list()) {
- _update_shader(p_material->shader);
- }
-
- if (p_material->shader && !p_material->shader->valid) {
- return;
- }
-
- {
- bool can_cast_shadow = false;
- bool is_animated = false;
-
- if (p_material->shader && p_material->shader->mode == RS::SHADER_SPATIAL) {
- if (p_material->shader->spatial.blend_mode == Shader::Spatial::BLEND_MODE_MIX &&
- (!p_material->shader->spatial.uses_alpha || p_material->shader->spatial.depth_draw_mode == Shader::Spatial::DEPTH_DRAW_ALPHA_PREPASS)) {
- can_cast_shadow = true;
- }
-
- if (p_material->shader->spatial.uses_discard && p_material->shader->uses_fragment_time) {
- is_animated = true;
- }
-
- if (p_material->shader->spatial.uses_vertex && p_material->shader->uses_vertex_time) {
- is_animated = true;
- }
-
- if (can_cast_shadow != p_material->can_cast_shadow_cache || is_animated != p_material->is_animated_cache) {
- p_material->can_cast_shadow_cache = can_cast_shadow;
- p_material->is_animated_cache = is_animated;
-
- for (Map<Geometry *, int>::Element *E = p_material->geometry_owners.front(); E; E = E->next()) {
- E->key()->material_changed_notify();
- }
-
- for (Map<RasterizerScene::InstanceBase *, int>::Element *E = p_material->instance_owners.front(); E; E = E->next()) {
- E->key()->base_changed(false, true);
- }
- }
- }
- }
-
- // uniforms and other things will be set in the use_material method in ShaderGLES2
-
- if (p_material->shader && p_material->shader->texture_count > 0) {
- p_material->textures.resize(p_material->shader->texture_count);
-
- for (Map<StringName, ShaderLanguage::ShaderNode::Uniform>::Element *E = p_material->shader->uniforms.front(); E; E = E->next()) {
- if (E->get().texture_order < 0)
- continue; // not a texture, does not go here
-
- RID texture;
-
- Map<StringName, Variant>::Element *V = p_material->params.find(E->key());
-
- if (V) {
- texture = V->get();
- }
-
- if (!texture.is_valid()) {
- Map<StringName, RID>::Element *W = p_material->shader->default_textures.find(E->key());
-
- if (W) {
- texture = W->get();
- }
- }
-
- p_material->textures.write[E->get().texture_order] = Pair<StringName, RID>(E->key(), texture);
- }
- } else {
- p_material->textures.clear();
- }
-}
-
-void RasterizerStorageGLES2::_material_add_geometry(RID p_material, Geometry *p_geometry) {
- Material *material = material_owner.getornull(p_material);
- ERR_FAIL_COND(!material);
-
- Map<Geometry *, int>::Element *I = material->geometry_owners.find(p_geometry);
-
- if (I) {
- I->get()++;
- } else {
- material->geometry_owners[p_geometry] = 1;
- }
-}
-
-void RasterizerStorageGLES2::_material_remove_geometry(RID p_material, Geometry *p_geometry) {
- Material *material = material_owner.getornull(p_material);
- ERR_FAIL_COND(!material);
-
- Map<Geometry *, int>::Element *I = material->geometry_owners.find(p_geometry);
- ERR_FAIL_COND(!I);
-
- I->get()--;
-
- if (I->get() == 0) {
- material->geometry_owners.erase(I);
- }
-}
-
-void RasterizerStorageGLES2::update_dirty_materials() {
- while (_material_dirty_list.first()) {
- Material *material = _material_dirty_list.first()->self();
- _update_material(material);
- }
-}
-
-/* MESH API */
-
-RID RasterizerStorageGLES2::mesh_create() {
- Mesh *mesh = memnew(Mesh);
-
- return mesh_owner.make_rid(mesh);
-}
-
-static Vector<uint8_t> _unpack_half_floats(const Vector<uint8_t> &array, uint32_t &format, int p_vertices) {
- uint32_t p_format = format;
-
- static int src_size[RS::ARRAY_MAX];
- static int dst_size[RS::ARRAY_MAX];
- static int to_convert[RS::ARRAY_MAX];
-
- int src_stride = 0;
- int dst_stride = 0;
-
- for (int i = 0; i < RS::ARRAY_MAX; i++) {
- to_convert[i] = 0;
- if (!(p_format & (1 << i))) {
- src_size[i] = 0;
- dst_size[i] = 0;
- continue;
- }
-
- switch (i) {
- case RS::ARRAY_VERTEX: {
- if (p_format & RS::ARRAY_COMPRESS_VERTEX) {
- if (p_format & RS::ARRAY_FLAG_USE_2D_VERTICES) {
- src_size[i] = 4;
- dst_size[i] = 8;
- to_convert[i] = 2;
- } else {
- src_size[i] = 8;
- dst_size[i] = 12;
- to_convert[i] = 3;
- }
-
- format &= ~RS::ARRAY_COMPRESS_VERTEX;
- } else {
- if (p_format & RS::ARRAY_FLAG_USE_2D_VERTICES) {
- src_size[i] = 8;
- dst_size[i] = 8;
- } else {
- src_size[i] = 12;
- dst_size[i] = 12;
- }
- }
-
- } break;
- case RS::ARRAY_NORMAL: {
- if (p_format & RS::ARRAY_COMPRESS_NORMAL) {
- src_size[i] = 4;
- dst_size[i] = 4;
- } else {
- src_size[i] = 12;
- dst_size[i] = 12;
- }
-
- } break;
- case RS::ARRAY_TANGENT: {
- if (p_format & RS::ARRAY_COMPRESS_TANGENT) {
- src_size[i] = 4;
- dst_size[i] = 4;
- } else {
- src_size[i] = 16;
- dst_size[i] = 16;
- }
-
- } break;
- case RS::ARRAY_COLOR: {
- if (p_format & RS::ARRAY_COMPRESS_COLOR) {
- src_size[i] = 4;
- dst_size[i] = 4;
- } else {
- src_size[i] = 16;
- dst_size[i] = 16;
- }
-
- } break;
- case RS::ARRAY_TEX_UV: {
- if (p_format & RS::ARRAY_COMPRESS_TEX_UV) {
- src_size[i] = 4;
- to_convert[i] = 2;
- format &= ~RS::ARRAY_COMPRESS_TEX_UV;
- } else {
- src_size[i] = 8;
- }
-
- dst_size[i] = 8;
-
- } break;
- case RS::ARRAY_TEX_UV2: {
- if (p_format & RS::ARRAY_COMPRESS_TEX_UV2) {
- src_size[i] = 4;
- to_convert[i] = 2;
- format &= ~RS::ARRAY_COMPRESS_TEX_UV2;
- } else {
- src_size[i] = 8;
- }
-
- dst_size[i] = 8;
-
- } break;
- case RS::ARRAY_BONES: {
- if (p_format & RS::ARRAY_FLAG_USE_16_BIT_BONES) {
- src_size[i] = 8;
- dst_size[i] = 8;
- } else {
- src_size[i] = 4;
- dst_size[i] = 4;
- }
-
- } break;
- case RS::ARRAY_WEIGHTS: {
- if (p_format & RS::ARRAY_COMPRESS_WEIGHTS) {
- src_size[i] = 8;
- dst_size[i] = 8;
- } else {
- src_size[i] = 16;
- dst_size[i] = 16;
- }
-
- } break;
- case RS::ARRAY_INDEX: {
- src_size[i] = 0;
- dst_size[i] = 0;
-
- } break;
- }
-
- src_stride += src_size[i];
- dst_stride += dst_size[i];
- }
-
- Vector<uint8_t> ret;
- ret.resize(p_vertices * dst_stride);
-
- const uint8_t *r = array.ptr();
- uint8_t *w = ret.ptrw();
-
- int src_offset = 0;
- int dst_offset = 0;
-
- for (int i = 0; i < RS::ARRAY_MAX; i++) {
- if (src_size[i] == 0) {
- continue; //no go
- }
- const uint8_t *rptr = r.ptr();
- uint8_t *wptr = w.ptr();
- if (to_convert[i]) { //converting
-
- for (int j = 0; j < p_vertices; j++) {
- const uint16_t *src = (const uint16_t *)&rptr[src_stride * j + src_offset];
- float *dst = (float *)&wptr[dst_stride * j + dst_offset];
-
- for (int k = 0; k < to_convert[i]; k++) {
- dst[k] = Math::half_to_float(src[k]);
- }
- }
-
- } else {
- //just copy
- for (int j = 0; j < p_vertices; j++) {
- for (int k = 0; k < src_size[i]; k++) {
- wptr[dst_stride * j + dst_offset + k] = rptr[src_stride * j + src_offset + k];
- }
- }
- }
-
- src_offset += src_size[i];
- dst_offset += dst_size[i];
- }
-
- r.release();
- w.release();
-
- return ret;
-}
-
-void RasterizerStorageGLES2::mesh_add_surface(RID p_mesh, uint32_t p_format, RS::PrimitiveType p_primitive, const Vector<uint8_t> &p_array, int p_vertex_count, const Vector<uint8_t> &p_index_array, int p_index_count, const AABB &p_aabb, const Vector<Vector<uint8_t>> &p_blend_shapes, const Vector<AABB> &p_bone_aabbs) {
- Mesh *mesh = mesh_owner.getornull(p_mesh);
- ERR_FAIL_COND(!mesh);
-
- ERR_FAIL_COND(!(p_format & RS::ARRAY_FORMAT_VERTEX));
-
- //must have index and bones, both.
- {
- uint32_t bones_weight = RS::ARRAY_FORMAT_BONES | RS::ARRAY_FORMAT_WEIGHTS;
- ERR_FAIL_COND_MSG((p_format & bones_weight) && (p_format & bones_weight) != bones_weight, "Array must have both bones and weights in format or none.");
- }
-
- //bool has_morph = p_blend_shapes.size();
-
- Surface::Attrib attribs[RS::ARRAY_MAX];
-
- int stride = 0;
- bool uses_half_float = false;
-
- for (int i = 0; i < RS::ARRAY_MAX; i++) {
- attribs[i].index = i;
-
- if (!(p_format & (1 << i))) {
- attribs[i].enabled = false;
- attribs[i].integer = false;
- continue;
- }
-
- attribs[i].enabled = true;
- attribs[i].offset = stride;
- attribs[i].integer = false;
-
- switch (i) {
- case RS::ARRAY_VERTEX: {
- if (p_format & RS::ARRAY_FLAG_USE_2D_VERTICES) {
- attribs[i].size = 2;
- } else {
- attribs[i].size = (p_format & RS::ARRAY_COMPRESS_VERTEX) ? 4 : 3;
- }
-
- if (p_format & RS::ARRAY_COMPRESS_VERTEX) {
- attribs[i].type = _GL_HALF_FLOAT_OES;
- stride += attribs[i].size * 2;
- uses_half_float = true;
- } else {
- attribs[i].type = GL_FLOAT;
- stride += attribs[i].size * 4;
- }
-
- attribs[i].normalized = GL_FALSE;
-
- } break;
- case RS::ARRAY_NORMAL: {
- attribs[i].size = 3;
-
- if (p_format & RS::ARRAY_COMPRESS_NORMAL) {
- attribs[i].type = GL_BYTE;
- stride += 4; //pad extra byte
- attribs[i].normalized = GL_TRUE;
- } else {
- attribs[i].type = GL_FLOAT;
- stride += 12;
- attribs[i].normalized = GL_FALSE;
- }
-
- } break;
- case RS::ARRAY_TANGENT: {
- attribs[i].size = 4;
-
- if (p_format & RS::ARRAY_COMPRESS_TANGENT) {
- attribs[i].type = GL_BYTE;
- stride += 4;
- attribs[i].normalized = GL_TRUE;
- } else {
- attribs[i].type = GL_FLOAT;
- stride += 16;
- attribs[i].normalized = GL_FALSE;
- }
-
- } break;
- case RS::ARRAY_COLOR: {
- attribs[i].size = 4;
-
- if (p_format & RS::ARRAY_COMPRESS_COLOR) {
- attribs[i].type = GL_UNSIGNED_BYTE;
- stride += 4;
- attribs[i].normalized = GL_TRUE;
- } else {
- attribs[i].type = GL_FLOAT;
- stride += 16;
- attribs[i].normalized = GL_FALSE;
- }
-
- } break;
- case RS::ARRAY_TEX_UV: {
- attribs[i].size = 2;
-
- if (p_format & RS::ARRAY_COMPRESS_TEX_UV) {
- attribs[i].type = _GL_HALF_FLOAT_OES;
- stride += 4;
- uses_half_float = true;
- } else {
- attribs[i].type = GL_FLOAT;
- stride += 8;
- }
-
- attribs[i].normalized = GL_FALSE;
-
- } break;
- case RS::ARRAY_TEX_UV2: {
- attribs[i].size = 2;
-
- if (p_format & RS::ARRAY_COMPRESS_TEX_UV2) {
- attribs[i].type = _GL_HALF_FLOAT_OES;
- stride += 4;
- uses_half_float = true;
- } else {
- attribs[i].type = GL_FLOAT;
- stride += 8;
- }
- attribs[i].normalized = GL_FALSE;
-
- } break;
- case RS::ARRAY_BONES: {
- attribs[i].size = 4;
-
- if (p_format & RS::ARRAY_FLAG_USE_16_BIT_BONES) {
- attribs[i].type = GL_UNSIGNED_SHORT;
- stride += 8;
- } else {
- attribs[i].type = GL_UNSIGNED_BYTE;
- stride += 4;
- }
-
- attribs[i].normalized = GL_FALSE;
- attribs[i].integer = true;
-
- } break;
- case RS::ARRAY_WEIGHTS: {
- attribs[i].size = 4;
-
- if (p_format & RS::ARRAY_COMPRESS_WEIGHTS) {
- attribs[i].type = GL_UNSIGNED_SHORT;
- stride += 8;
- attribs[i].normalized = GL_TRUE;
- } else {
- attribs[i].type = GL_FLOAT;
- stride += 16;
- attribs[i].normalized = GL_FALSE;
- }
-
- } break;
- case RS::ARRAY_INDEX: {
- attribs[i].size = 1;
-
- if (p_vertex_count >= (1 << 16)) {
- attribs[i].type = GL_UNSIGNED_INT;
- attribs[i].stride = 4;
- } else {
- attribs[i].type = GL_UNSIGNED_SHORT;
- attribs[i].stride = 2;
- }
-
- attribs[i].normalized = GL_FALSE;
-
- } break;
- }
- }
-
- for (int i = 0; i < RS::ARRAY_MAX - 1; i++) {
- attribs[i].stride = stride;
- }
-
- //validate sizes
- Vector<uint8_t> array = p_array;
-
- int array_size = stride * p_vertex_count;
- int index_array_size = 0;
- if (array.size() != array_size && array.size() + p_vertex_count * 2 == array_size) {
- //old format, convert
- array = Vector<uint8_t>();
-
- array.resize(p_array.size() + p_vertex_count * 2);
-
- uint8_t *w = array.ptrw();
- const uint8_t *r = p_array.ptr();
-
- uint16_t *w16 = (uint16_t *)w.ptr();
- const uint16_t *r16 = (uint16_t *)r.ptr();
-
- uint16_t one = Math::make_half_float(1);
-
- for (int i = 0; i < p_vertex_count; i++) {
- *w16++ = *r16++;
- *w16++ = *r16++;
- *w16++ = *r16++;
- *w16++ = one;
- for (int j = 0; j < (stride / 2) - 4; j++) {
- *w16++ = *r16++;
- }
- }
- }
-
- ERR_FAIL_COND(array.size() != array_size);
-
- if (!config.support_half_float_vertices && uses_half_float) {
- uint32_t new_format = p_format;
- Vector<uint8_t> unpacked_array = _unpack_half_floats(array, new_format, p_vertex_count);
-
- mesh_add_surface(p_mesh, new_format, p_primitive, unpacked_array, p_vertex_count, p_index_array, p_index_count, p_aabb, p_blend_shapes, p_bone_aabbs);
- return; //do not go any further, above function used unpacked stuff will be used instead.
- }
-
- if (p_format & RS::ARRAY_FORMAT_INDEX) {
- index_array_size = attribs[RS::ARRAY_INDEX].stride * p_index_count;
- }
-
- ERR_FAIL_COND(p_index_array.size() != index_array_size);
-
- ERR_FAIL_COND(p_blend_shapes.size() != mesh->blend_shape_count);
-
- for (int i = 0; i < p_blend_shapes.size(); i++) {
- ERR_FAIL_COND(p_blend_shapes[i].size() != array_size);
- }
-
- // all valid, create stuff
-
- Surface *surface = memnew(Surface);
-
- surface->active = true;
- surface->array_len = p_vertex_count;
- surface->index_array_len = p_index_count;
- surface->array_byte_size = array.size();
- surface->index_array_byte_size = p_index_array.size();
- surface->primitive = p_primitive;
- surface->mesh = mesh;
- surface->format = p_format;
- surface->skeleton_bone_aabb = p_bone_aabbs;
- surface->skeleton_bone_used.resize(surface->skeleton_bone_aabb.size());
-
- surface->aabb = p_aabb;
- surface->max_bone = p_bone_aabbs.size();
-#ifdef TOOLS_ENABLED
- surface->blend_shape_data = p_blend_shapes;
- if (surface->blend_shape_data.size()) {
- ERR_PRINT_ONCE("Blend shapes are not supported in OpenGL ES 2.0");
- }
-#endif
-
- surface->data = array;
- surface->index_data = p_index_array;
- surface->total_data_size += surface->array_byte_size + surface->index_array_byte_size;
-
- for (int i = 0; i < surface->skeleton_bone_used.size(); i++) {
- surface->skeleton_bone_used.write[i] = !(surface->skeleton_bone_aabb[i].size.x < 0 || surface->skeleton_bone_aabb[i].size.y < 0 || surface->skeleton_bone_aabb[i].size.z < 0);
- }
-
- for (int i = 0; i < RS::ARRAY_MAX; i++) {
- surface->attribs[i] = attribs[i];
- }
-
- // Okay, now the OpenGL stuff, wheeeeey \o/
- {
- const uint8_t *vr = array.ptr();
-
- glGenBuffers(1, &surface->vertex_id);
- glBindBuffer(GL_ARRAY_BUFFER, surface->vertex_id);
- glBufferData(GL_ARRAY_BUFFER, array_size, vr.ptr(), (p_format & RS::ARRAY_FLAG_USE_DYNAMIC_UPDATE) ? GL_DYNAMIC_DRAW : GL_STATIC_DRAW);
-
- glBindBuffer(GL_ARRAY_BUFFER, 0);
-
- if (p_format & RS::ARRAY_FORMAT_INDEX) {
- const uint8_t *ir = p_index_array.ptr();
-
- glGenBuffers(1, &surface->index_id);
- glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, surface->index_id);
- glBufferData(GL_ELEMENT_ARRAY_BUFFER, index_array_size, ir.ptr(), GL_STATIC_DRAW);
- glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, 0);
- } else {
- surface->index_id = 0;
- }
-
- // TODO generate wireframes
- }
-
- {
- // blend shapes
-
- for (int i = 0; i < p_blend_shapes.size(); i++) {
- Surface::BlendShape mt;
-
- const uint8_t *vr = p_blend_shapes[i].ptr();
-
- surface->total_data_size += array_size;
-
- glGenBuffers(1, &mt.vertex_id);
- glBindBuffer(GL_ARRAY_BUFFER, mt.vertex_id);
- glBufferData(GL_ARRAY_BUFFER, array_size, vr.ptr(), GL_STATIC_DRAW);
- glBindBuffer(GL_ARRAY_BUFFER, 0);
-
- surface->blend_shapes.push_back(mt);
- }
- }
-
- mesh->surfaces.push_back(surface);
- mesh->instance_change_notify(true, true);
-
- info.vertex_mem += surface->total_data_size;
-}
-
-void RasterizerStorageGLES2::mesh_set_blend_shape_count(RID p_mesh, int p_amount) {
- Mesh *mesh = mesh_owner.getornull(p_mesh);
- ERR_FAIL_COND(!mesh);
-
- ERR_FAIL_COND(mesh->surfaces.size() != 0);
- ERR_FAIL_COND(p_amount < 0);
-
- mesh->blend_shape_count = p_amount;
- mesh->instance_change_notify(true, false);
-}
-
-int RasterizerStorageGLES2::mesh_get_blend_shape_count(RID p_mesh) const {
- const Mesh *mesh = mesh_owner.getornull(p_mesh);
- ERR_FAIL_COND_V(!mesh, 0);
- return mesh->blend_shape_count;
-}
-
-void RasterizerStorageGLES2::mesh_set_blend_shape_mode(RID p_mesh, RS::BlendShapeMode p_mode) {
- Mesh *mesh = mesh_owner.getornull(p_mesh);
- ERR_FAIL_COND(!mesh);
-
- mesh->blend_shape_mode = p_mode;
-}
-
-RS::BlendShapeMode RasterizerStorageGLES2::mesh_get_blend_shape_mode(RID p_mesh) const {
- const Mesh *mesh = mesh_owner.getornull(p_mesh);
- ERR_FAIL_COND_V(!mesh, RS::BLEND_SHAPE_MODE_NORMALIZED);
-
- return mesh->blend_shape_mode;
-}
-
-void RasterizerStorageGLES2::mesh_surface_update_region(RID p_mesh, int p_surface, int p_offset, const Vector<uint8_t> &p_data) {
- Mesh *mesh = mesh_owner.getornull(p_mesh);
-
- ERR_FAIL_COND(!mesh);
- ERR_FAIL_INDEX(p_surface, mesh->surfaces.size());
-
- int total_size = p_data.size();
- ERR_FAIL_COND(p_offset + total_size > mesh->surfaces[p_surface]->array_byte_size);
-
- const uint8_t *r = p_data.ptr();
-
- glBindBuffer(GL_ARRAY_BUFFER, mesh->surfaces[p_surface]->vertex_id);
- glBufferSubData(GL_ARRAY_BUFFER, p_offset, total_size, r.ptr());
- glBindBuffer(GL_ARRAY_BUFFER, 0); //unbind
-}
-
-void RasterizerStorageGLES2::mesh_surface_set_material(RID p_mesh, int p_surface, RID p_material) {
- Mesh *mesh = mesh_owner.getornull(p_mesh);
- ERR_FAIL_COND(!mesh);
- ERR_FAIL_INDEX(p_surface, mesh->surfaces.size());
-
- if (mesh->surfaces[p_surface]->material == p_material)
- return;
-
- if (mesh->surfaces[p_surface]->material.is_valid()) {
- _material_remove_geometry(mesh->surfaces[p_surface]->material, mesh->surfaces[p_surface]);
- }
-
- mesh->surfaces[p_surface]->material = p_material;
-
- if (mesh->surfaces[p_surface]->material.is_valid()) {
- _material_add_geometry(mesh->surfaces[p_surface]->material, mesh->surfaces[p_surface]);
- }
-
- mesh->instance_change_notify(false, true);
-}
-
-RID RasterizerStorageGLES2::mesh_surface_get_material(RID p_mesh, int p_surface) const {
- const Mesh *mesh = mesh_owner.getornull(p_mesh);
- ERR_FAIL_COND_V(!mesh, RID());
- ERR_FAIL_INDEX_V(p_surface, mesh->surfaces.size(), RID());
-
- return mesh->surfaces[p_surface]->material;
-}
-
-int RasterizerStorageGLES2::mesh_surface_get_array_len(RID p_mesh, int p_surface) const {
- const Mesh *mesh = mesh_owner.getornull(p_mesh);
- ERR_FAIL_COND_V(!mesh, 0);
- ERR_FAIL_INDEX_V(p_surface, mesh->surfaces.size(), 0);
-
- return mesh->surfaces[p_surface]->array_len;
-}
-
-int RasterizerStorageGLES2::mesh_surface_get_array_index_len(RID p_mesh, int p_surface) const {
- const Mesh *mesh = mesh_owner.getornull(p_mesh);
- ERR_FAIL_COND_V(!mesh, 0);
- ERR_FAIL_INDEX_V(p_surface, mesh->surfaces.size(), 0);
-
- return mesh->surfaces[p_surface]->index_array_len;
-}
-
-Vector<uint8_t> RasterizerStorageGLES2::mesh_surface_get_array(RID p_mesh, int p_surface) const {
- const Mesh *mesh = mesh_owner.getornull(p_mesh);
- ERR_FAIL_COND_V(!mesh, Vector<uint8_t>());
- ERR_FAIL_INDEX_V(p_surface, mesh->surfaces.size(), Vector<uint8_t>());
-
- Surface *surface = mesh->surfaces[p_surface];
-
- return surface->data;
-}
-
-Vector<uint8_t> RasterizerStorageGLES2::mesh_surface_get_index_array(RID p_mesh, int p_surface) const {
- const Mesh *mesh = mesh_owner.getornull(p_mesh);
- ERR_FAIL_COND_V(!mesh, Vector<uint8_t>());
- ERR_FAIL_INDEX_V(p_surface, mesh->surfaces.size(), Vector<uint8_t>());
-
- Surface *surface = mesh->surfaces[p_surface];
-
- return surface->index_data;
-}
-
-uint32_t RasterizerStorageGLES2::mesh_surface_get_format(RID p_mesh, int p_surface) const {
- const Mesh *mesh = mesh_owner.getornull(p_mesh);
-
- ERR_FAIL_COND_V(!mesh, 0);
- ERR_FAIL_INDEX_V(p_surface, mesh->surfaces.size(), 0);
-
- return mesh->surfaces[p_surface]->format;
-}
-
-RS::PrimitiveType RasterizerStorageGLES2::mesh_surface_get_primitive_type(RID p_mesh, int p_surface) const {
- const Mesh *mesh = mesh_owner.getornull(p_mesh);
- ERR_FAIL_COND_V(!mesh, RS::PRIMITIVE_MAX);
- ERR_FAIL_INDEX_V(p_surface, mesh->surfaces.size(), RS::PRIMITIVE_MAX);
-
- return mesh->surfaces[p_surface]->primitive;
-}
-
-AABB RasterizerStorageGLES2::mesh_surface_get_aabb(RID p_mesh, int p_surface) const {
- const Mesh *mesh = mesh_owner.getornull(p_mesh);
- ERR_FAIL_COND_V(!mesh, AABB());
- ERR_FAIL_INDEX_V(p_surface, mesh->surfaces.size(), AABB());
-
- return mesh->surfaces[p_surface]->aabb;
-}
-
-Vector<Vector<uint8_t>> RasterizerStorageGLES2::mesh_surface_get_blend_shapes(RID p_mesh, int p_surface) const {
- const Mesh *mesh = mesh_owner.getornull(p_mesh);
- ERR_FAIL_COND_V(!mesh, Vector<Vector<uint8_t>>());
- ERR_FAIL_INDEX_V(p_surface, mesh->surfaces.size(), Vector<Vector<uint8_t>>());
-#ifndef TOOLS_ENABLED
- ERR_PRINT("OpenGL ES 2.0 does not allow retrieving blend shape data");
-#endif
-
- return mesh->surfaces[p_surface]->blend_shape_data;
-}
-
-Vector<AABB> RasterizerStorageGLES2::mesh_surface_get_skeleton_aabb(RID p_mesh, int p_surface) const {
- const Mesh *mesh = mesh_owner.getornull(p_mesh);
- ERR_FAIL_COND_V(!mesh, Vector<AABB>());
- ERR_FAIL_INDEX_V(p_surface, mesh->surfaces.size(), Vector<AABB>());
-
- return mesh->surfaces[p_surface]->skeleton_bone_aabb;
-}
-
-void RasterizerStorageGLES2::mesh_remove_surface(RID p_mesh, int p_surface) {
- Mesh *mesh = mesh_owner.getornull(p_mesh);
- ERR_FAIL_COND(!mesh);
- ERR_FAIL_INDEX(p_surface, mesh->surfaces.size());
-
- Surface *surface = mesh->surfaces[p_surface];
-
- if (surface->material.is_valid()) {
- _material_remove_geometry(surface->material, mesh->surfaces[p_surface]);
- }
-
- glDeleteBuffers(1, &surface->vertex_id);
- if (surface->index_id) {
- glDeleteBuffers(1, &surface->index_id);
- }
-
- for (int i = 0; i < surface->blend_shapes.size(); i++) {
- glDeleteBuffers(1, &surface->blend_shapes[i].vertex_id);
- }
-
- info.vertex_mem -= surface->total_data_size;
-
- memdelete(surface);
-
- mesh->surfaces.remove(p_surface);
-
- mesh->instance_change_notify(true, true);
-}
-
-int RasterizerStorageGLES2::mesh_get_surface_count(RID p_mesh) const {
- const Mesh *mesh = mesh_owner.getornull(p_mesh);
- ERR_FAIL_COND_V(!mesh, 0);
- return mesh->surfaces.size();
-}
-
-void RasterizerStorageGLES2::mesh_set_custom_aabb(RID p_mesh, const AABB &p_aabb) {
- Mesh *mesh = mesh_owner.getornull(p_mesh);
- ERR_FAIL_COND(!mesh);
-
- mesh->custom_aabb = p_aabb;
- mesh->instance_change_notify(true, false);
-}
-
-AABB RasterizerStorageGLES2::mesh_get_custom_aabb(RID p_mesh) const {
- const Mesh *mesh = mesh_owner.getornull(p_mesh);
- ERR_FAIL_COND_V(!mesh, AABB());
-
- return mesh->custom_aabb;
-}
-
-AABB RasterizerStorageGLES2::mesh_get_aabb(RID p_mesh, RID p_skeleton) const {
- Mesh *mesh = mesh_owner.getornull(p_mesh);
- ERR_FAIL_COND_V(!mesh, AABB());
-
- if (mesh->custom_aabb != AABB())
- return mesh->custom_aabb;
-
- Skeleton *sk = nullptr;
- if (p_skeleton.is_valid()) {
- sk = skeleton_owner.getornull(p_skeleton);
- }
-
- AABB aabb;
-
- if (sk && sk->size != 0) {
- for (int i = 0; i < mesh->surfaces.size(); i++) {
- AABB laabb;
- if ((mesh->surfaces[i]->format & RS::ARRAY_FORMAT_BONES) && mesh->surfaces[i]->skeleton_bone_aabb.size()) {
- int bs = mesh->surfaces[i]->skeleton_bone_aabb.size();
- const AABB *skbones = mesh->surfaces[i]->skeleton_bone_aabb.ptr();
- const bool *skused = mesh->surfaces[i]->skeleton_bone_used.ptr();
-
- int sbs = sk->size;
- ERR_CONTINUE(bs > sbs);
- const float *texture = sk->bone_data.ptr();
-
- bool first = true;
- if (sk->use_2d) {
- for (int j = 0; j < bs; j++) {
- if (!skused[j])
- continue;
-
- int base_ofs = j * 2 * 4;
-
- Transform mtx;
-
- mtx.basis[0].x = texture[base_ofs + 0];
- mtx.basis[0].y = texture[base_ofs + 1];
- mtx.origin.x = texture[base_ofs + 3];
- base_ofs += 4;
- mtx.basis[1].x = texture[base_ofs + 0];
- mtx.basis[1].y = texture[base_ofs + 1];
- mtx.origin.y = texture[base_ofs + 3];
-
- AABB baabb = mtx.xform(skbones[j]);
-
- if (first) {
- laabb = baabb;
- first = false;
- } else {
- laabb.merge_with(baabb);
- }
- }
- } else {
- for (int j = 0; j < bs; j++) {
- if (!skused[j])
- continue;
-
- int base_ofs = j * 3 * 4;
-
- Transform mtx;
-
- mtx.basis[0].x = texture[base_ofs + 0];
- mtx.basis[0].y = texture[base_ofs + 1];
- mtx.basis[0].z = texture[base_ofs + 2];
- mtx.origin.x = texture[base_ofs + 3];
- base_ofs += 4;
- mtx.basis[1].x = texture[base_ofs + 0];
- mtx.basis[1].y = texture[base_ofs + 1];
- mtx.basis[1].z = texture[base_ofs + 2];
- mtx.origin.y = texture[base_ofs + 3];
- base_ofs += 4;
- mtx.basis[2].x = texture[base_ofs + 0];
- mtx.basis[2].y = texture[base_ofs + 1];
- mtx.basis[2].z = texture[base_ofs + 2];
- mtx.origin.z = texture[base_ofs + 3];
-
- AABB baabb = mtx.xform(skbones[j]);
- if (first) {
- laabb = baabb;
- first = false;
- } else {
- laabb.merge_with(baabb);
- }
- }
- }
-
- } else {
- laabb = mesh->surfaces[i]->aabb;
- }
-
- if (i == 0)
- aabb = laabb;
- else
- aabb.merge_with(laabb);
- }
- } else {
- for (int i = 0; i < mesh->surfaces.size(); i++) {
- if (i == 0)
- aabb = mesh->surfaces[i]->aabb;
- else
- aabb.merge_with(mesh->surfaces[i]->aabb);
- }
- }
-
- return aabb;
-}
-
-void RasterizerStorageGLES2::mesh_clear(RID p_mesh) {
- Mesh *mesh = mesh_owner.getornull(p_mesh);
- ERR_FAIL_COND(!mesh);
-
- while (mesh->surfaces.size()) {
- mesh_remove_surface(p_mesh, 0);
- }
-}
-
-/* MULTIMESH API */
-
-RID RasterizerStorageGLES2::multimesh_create() {
- MultiMesh *multimesh = memnew(MultiMesh);
- return multimesh_owner.make_rid(multimesh);
-}
-
-void RasterizerStorageGLES2::multimesh_allocate(RID p_multimesh, int p_instances, RS::MultimeshTransformFormat p_transform_format, RS::MultimeshColorFormat p_color_format, RS::MultimeshCustomDataFormat p_data) {
- MultiMesh *multimesh = multimesh_owner.getornull(p_multimesh);
- ERR_FAIL_COND(!multimesh);
-
- if (multimesh->size == p_instances && multimesh->transform_format == p_transform_format && multimesh->color_format == p_color_format && multimesh->custom_data_format == p_data) {
- return;
- }
-
- multimesh->size = p_instances;
-
- multimesh->color_format = p_color_format;
- multimesh->transform_format = p_transform_format;
- multimesh->custom_data_format = p_data;
-
- if (multimesh->size) {
- multimesh->data.resize(0);
- }
-
- if (multimesh->transform_format == RS::MULTIMESH_TRANSFORM_2D) {
- multimesh->xform_floats = 8;
- } else {
- multimesh->xform_floats = 12;
- }
-
- if (multimesh->color_format == RS::MULTIMESH_COLOR_8BIT) {
- multimesh->color_floats = 1;
- } else if (multimesh->color_format == RS::MULTIMESH_COLOR_FLOAT) {
- multimesh->color_floats = 4;
- } else {
- multimesh->color_floats = 0;
- }
-
- if (multimesh->custom_data_format == RS::MULTIMESH_CUSTOM_DATA_8BIT) {
- multimesh->custom_data_floats = 1;
- } else if (multimesh->custom_data_format == RS::MULTIMESH_CUSTOM_DATA_FLOAT) {
- multimesh->custom_data_floats = 4;
- } else {
- multimesh->custom_data_floats = 0;
- }
-
- int format_floats = multimesh->color_floats + multimesh->xform_floats + multimesh->custom_data_floats;
-
- multimesh->data.resize(format_floats * p_instances);
-
- for (int i = 0; i < p_instances * format_floats; i += format_floats) {
- int color_from = 0;
- int custom_data_from = 0;
-
- if (multimesh->transform_format == RS::MULTIMESH_TRANSFORM_2D) {
- multimesh->data.write[i + 0] = 1.0;
- multimesh->data.write[i + 1] = 0.0;
- multimesh->data.write[i + 2] = 0.0;
- multimesh->data.write[i + 3] = 0.0;
- multimesh->data.write[i + 4] = 0.0;
- multimesh->data.write[i + 5] = 1.0;
- multimesh->data.write[i + 6] = 0.0;
- multimesh->data.write[i + 7] = 0.0;
- color_from = 8;
- custom_data_from = 8;
- } else {
- multimesh->data.write[i + 0] = 1.0;
- multimesh->data.write[i + 1] = 0.0;
- multimesh->data.write[i + 2] = 0.0;
- multimesh->data.write[i + 3] = 0.0;
- multimesh->data.write[i + 4] = 0.0;
- multimesh->data.write[i + 5] = 1.0;
- multimesh->data.write[i + 6] = 0.0;
- multimesh->data.write[i + 7] = 0.0;
- multimesh->data.write[i + 8] = 0.0;
- multimesh->data.write[i + 9] = 0.0;
- multimesh->data.write[i + 10] = 1.0;
- multimesh->data.write[i + 11] = 0.0;
- color_from = 12;
- custom_data_from = 12;
- }
-
- if (multimesh->color_format == RS::MULTIMESH_COLOR_8BIT) {
- union {
- uint32_t colu;
- float colf;
- } cu;
-
- cu.colu = 0xFFFFFFFF;
- multimesh->data.write[i + color_from + 0] = cu.colf;
- custom_data_from = color_from + 1;
- } else if (multimesh->color_format == RS::MULTIMESH_COLOR_FLOAT) {
- multimesh->data.write[i + color_from + 0] = 1.0;
- multimesh->data.write[i + color_from + 1] = 1.0;
- multimesh->data.write[i + color_from + 2] = 1.0;
- multimesh->data.write[i + color_from + 3] = 1.0;
- custom_data_from = color_from + 4;
- }
-
- if (multimesh->custom_data_format == RS::MULTIMESH_CUSTOM_DATA_8BIT) {
- union {
- uint32_t colu;
- float colf;
- } cu;
-
- cu.colu = 0;
- multimesh->data.write[i + custom_data_from + 0] = cu.colf;
- } else if (multimesh->custom_data_format == RS::MULTIMESH_CUSTOM_DATA_FLOAT) {
- multimesh->data.write[i + custom_data_from + 0] = 0.0;
- multimesh->data.write[i + custom_data_from + 1] = 0.0;
- multimesh->data.write[i + custom_data_from + 2] = 0.0;
- multimesh->data.write[i + custom_data_from + 3] = 0.0;
- }
- }
-
- multimesh->dirty_aabb = true;
- multimesh->dirty_data = true;
-
- if (!multimesh->update_list.in_list()) {
- multimesh_update_list.add(&multimesh->update_list);
- }
-}
-
-int RasterizerStorageGLES2::multimesh_get_instance_count(RID p_multimesh) const {
- MultiMesh *multimesh = multimesh_owner.getornull(p_multimesh);
- ERR_FAIL_COND_V(!multimesh, 0);
-
- return multimesh->size;
-}
-
-void RasterizerStorageGLES2::multimesh_set_mesh(RID p_multimesh, RID p_mesh) {
- MultiMesh *multimesh = multimesh_owner.getornull(p_multimesh);
- ERR_FAIL_COND(!multimesh);
-
- if (multimesh->mesh.is_valid()) {
- Mesh *mesh = mesh_owner.getornull(multimesh->mesh);
- if (mesh) {
- mesh->multimeshes.remove(&multimesh->mesh_list);
- }
- }
-
- multimesh->mesh = p_mesh;
-
- if (multimesh->mesh.is_valid()) {
- Mesh *mesh = mesh_owner.getornull(multimesh->mesh);
- if (mesh) {
- mesh->multimeshes.add(&multimesh->mesh_list);
- }
- }
-
- multimesh->dirty_aabb = true;
-
- if (!multimesh->update_list.in_list()) {
- multimesh_update_list.add(&multimesh->update_list);
- }
-}
-
-void RasterizerStorageGLES2::multimesh_instance_set_transform(RID p_multimesh, int p_index, const Transform &p_transform) {
- MultiMesh *multimesh = multimesh_owner.getornull(p_multimesh);
- ERR_FAIL_COND(!multimesh);
- ERR_FAIL_INDEX(p_index, multimesh->size);
- ERR_FAIL_COND(multimesh->transform_format == RS::MULTIMESH_TRANSFORM_2D);
-
- int stride = multimesh->color_floats + multimesh->custom_data_floats + multimesh->xform_floats;
-
- float *dataptr = &multimesh->data.write[stride * p_index];
-
- dataptr[0] = p_transform.basis.elements[0][0];
- dataptr[1] = p_transform.basis.elements[0][1];
- dataptr[2] = p_transform.basis.elements[0][2];
- dataptr[3] = p_transform.origin.x;
- dataptr[4] = p_transform.basis.elements[1][0];
- dataptr[5] = p_transform.basis.elements[1][1];
- dataptr[6] = p_transform.basis.elements[1][2];
- dataptr[7] = p_transform.origin.y;
- dataptr[8] = p_transform.basis.elements[2][0];
- dataptr[9] = p_transform.basis.elements[2][1];
- dataptr[10] = p_transform.basis.elements[2][2];
- dataptr[11] = p_transform.origin.z;
-
- multimesh->dirty_data = true;
- multimesh->dirty_aabb = true;
-
- if (!multimesh->update_list.in_list()) {
- multimesh_update_list.add(&multimesh->update_list);
- }
-}
-
-void RasterizerStorageGLES2::multimesh_instance_set_transform_2d(RID p_multimesh, int p_index, const Transform2D &p_transform) {
- MultiMesh *multimesh = multimesh_owner.getornull(p_multimesh);
- ERR_FAIL_COND(!multimesh);
- ERR_FAIL_INDEX(p_index, multimesh->size);
- ERR_FAIL_COND(multimesh->transform_format == RS::MULTIMESH_TRANSFORM_3D);
-
- int stride = multimesh->color_floats + multimesh->xform_floats + multimesh->custom_data_floats;
- float *dataptr = &multimesh->data.write[stride * p_index];
-
- dataptr[0] = p_transform.elements[0][0];
- dataptr[1] = p_transform.elements[1][0];
- dataptr[2] = 0;
- dataptr[3] = p_transform.elements[2][0];
- dataptr[4] = p_transform.elements[0][1];
- dataptr[5] = p_transform.elements[1][1];
- dataptr[6] = 0;
- dataptr[7] = p_transform.elements[2][1];
-
- multimesh->dirty_data = true;
- multimesh->dirty_aabb = true;
-
- if (!multimesh->update_list.in_list()) {
- multimesh_update_list.add(&multimesh->update_list);
- }
-}
-
-void RasterizerStorageGLES2::multimesh_instance_set_color(RID p_multimesh, int p_index, const Color &p_color) {
- MultiMesh *multimesh = multimesh_owner.getornull(p_multimesh);
- ERR_FAIL_COND(!multimesh);
- ERR_FAIL_INDEX(p_index, multimesh->size);
- ERR_FAIL_COND(multimesh->color_format == RS::MULTIMESH_COLOR_NONE);
- ERR_FAIL_INDEX(multimesh->color_format, RS::MULTIMESH_COLOR_MAX);
-
- int stride = multimesh->color_floats + multimesh->xform_floats + multimesh->custom_data_floats;
- float *dataptr = &multimesh->data.write[stride * p_index + multimesh->xform_floats];
-
- if (multimesh->color_format == RS::MULTIMESH_COLOR_8BIT) {
- uint8_t *data8 = (uint8_t *)dataptr;
- data8[0] = CLAMP(p_color.r * 255.0, 0, 255);
- data8[1] = CLAMP(p_color.g * 255.0, 0, 255);
- data8[2] = CLAMP(p_color.b * 255.0, 0, 255);
- data8[3] = CLAMP(p_color.a * 255.0, 0, 255);
-
- } else if (multimesh->color_format == RS::MULTIMESH_COLOR_FLOAT) {
- dataptr[0] = p_color.r;
- dataptr[1] = p_color.g;
- dataptr[2] = p_color.b;
- dataptr[3] = p_color.a;
- }
-
- multimesh->dirty_data = true;
- multimesh->dirty_aabb = true;
-
- if (!multimesh->update_list.in_list()) {
- multimesh_update_list.add(&multimesh->update_list);
- }
-}
-
-void RasterizerStorageGLES2::multimesh_instance_set_custom_data(RID p_multimesh, int p_index, const Color &p_custom_data) {
- MultiMesh *multimesh = multimesh_owner.getornull(p_multimesh);
- ERR_FAIL_COND(!multimesh);
- ERR_FAIL_INDEX(p_index, multimesh->size);
- ERR_FAIL_COND(multimesh->custom_data_format == RS::MULTIMESH_CUSTOM_DATA_NONE);
- ERR_FAIL_INDEX(multimesh->custom_data_format, RS::MULTIMESH_CUSTOM_DATA_MAX);
-
- int stride = multimesh->color_floats + multimesh->xform_floats + multimesh->custom_data_floats;
- float *dataptr = &multimesh->data.write[stride * p_index + multimesh->xform_floats + multimesh->color_floats];
-
- if (multimesh->custom_data_format == RS::MULTIMESH_CUSTOM_DATA_8BIT) {
- uint8_t *data8 = (uint8_t *)dataptr;
- data8[0] = CLAMP(p_custom_data.r * 255.0, 0, 255);
- data8[1] = CLAMP(p_custom_data.g * 255.0, 0, 255);
- data8[2] = CLAMP(p_custom_data.b * 255.0, 0, 255);
- data8[3] = CLAMP(p_custom_data.a * 255.0, 0, 255);
-
- } else if (multimesh->custom_data_format == RS::MULTIMESH_CUSTOM_DATA_FLOAT) {
- dataptr[0] = p_custom_data.r;
- dataptr[1] = p_custom_data.g;
- dataptr[2] = p_custom_data.b;
- dataptr[3] = p_custom_data.a;
- }
-
- multimesh->dirty_data = true;
- multimesh->dirty_aabb = true;
-
- if (!multimesh->update_list.in_list()) {
- multimesh_update_list.add(&multimesh->update_list);
- }
-}
-
-RID RasterizerStorageGLES2::multimesh_get_mesh(RID p_multimesh) const {
- MultiMesh *multimesh = multimesh_owner.getornull(p_multimesh);
- ERR_FAIL_COND_V(!multimesh, RID());
-
- return multimesh->mesh;
-}
-
-Transform RasterizerStorageGLES2::multimesh_instance_get_transform(RID p_multimesh, int p_index) const {
- MultiMesh *multimesh = multimesh_owner.getornull(p_multimesh);
- ERR_FAIL_COND_V(!multimesh, Transform());
- ERR_FAIL_INDEX_V(p_index, multimesh->size, Transform());
- ERR_FAIL_COND_V(multimesh->transform_format == RS::MULTIMESH_TRANSFORM_2D, Transform());
-
- int stride = multimesh->color_floats + multimesh->xform_floats + multimesh->custom_data_floats;
- float *dataptr = &multimesh->data.write[stride * p_index];
-
- Transform xform;
-
- xform.basis.elements[0][0] = dataptr[0];
- xform.basis.elements[0][1] = dataptr[1];
- xform.basis.elements[0][2] = dataptr[2];
- xform.origin.x = dataptr[3];
- xform.basis.elements[1][0] = dataptr[4];
- xform.basis.elements[1][1] = dataptr[5];
- xform.basis.elements[1][2] = dataptr[6];
- xform.origin.y = dataptr[7];
- xform.basis.elements[2][0] = dataptr[8];
- xform.basis.elements[2][1] = dataptr[9];
- xform.basis.elements[2][2] = dataptr[10];
- xform.origin.z = dataptr[11];
-
- return xform;
-}
-
-Transform2D RasterizerStorageGLES2::multimesh_instance_get_transform_2d(RID p_multimesh, int p_index) const {
- MultiMesh *multimesh = multimesh_owner.getornull(p_multimesh);
- ERR_FAIL_COND_V(!multimesh, Transform2D());
- ERR_FAIL_INDEX_V(p_index, multimesh->size, Transform2D());
- ERR_FAIL_COND_V(multimesh->transform_format == RS::MULTIMESH_TRANSFORM_3D, Transform2D());
-
- int stride = multimesh->color_floats + multimesh->xform_floats + multimesh->custom_data_floats;
- float *dataptr = &multimesh->data.write[stride * p_index];
-
- Transform2D xform;
-
- xform.elements[0][0] = dataptr[0];
- xform.elements[1][0] = dataptr[1];
- xform.elements[2][0] = dataptr[3];
- xform.elements[0][1] = dataptr[4];
- xform.elements[1][1] = dataptr[5];
- xform.elements[2][1] = dataptr[7];
-
- return xform;
-}
-
-Color RasterizerStorageGLES2::multimesh_instance_get_color(RID p_multimesh, int p_index) const {
- MultiMesh *multimesh = multimesh_owner.getornull(p_multimesh);
- ERR_FAIL_COND_V(!multimesh, Color());
- ERR_FAIL_INDEX_V(p_index, multimesh->size, Color());
- ERR_FAIL_COND_V(multimesh->color_format == RS::MULTIMESH_COLOR_NONE, Color());
- ERR_FAIL_INDEX_V(multimesh->color_format, RS::MULTIMESH_COLOR_MAX, Color());
-
- int stride = multimesh->color_floats + multimesh->xform_floats + multimesh->custom_data_floats;
- float *dataptr = &multimesh->data.write[stride * p_index + multimesh->xform_floats];
-
- if (multimesh->color_format == RS::MULTIMESH_COLOR_8BIT) {
- union {
- uint32_t colu;
- float colf;
- } cu;
-
- cu.colf = dataptr[0];
-
- return Color::hex(BSWAP32(cu.colu));
-
- } else if (multimesh->color_format == RS::MULTIMESH_COLOR_FLOAT) {
- Color c;
- c.r = dataptr[0];
- c.g = dataptr[1];
- c.b = dataptr[2];
- c.a = dataptr[3];
-
- return c;
- }
-
- return Color();
-}
-
-Color RasterizerStorageGLES2::multimesh_instance_get_custom_data(RID p_multimesh, int p_index) const {
- MultiMesh *multimesh = multimesh_owner.getornull(p_multimesh);
- ERR_FAIL_COND_V(!multimesh, Color());
- ERR_FAIL_INDEX_V(p_index, multimesh->size, Color());
- ERR_FAIL_COND_V(multimesh->custom_data_format == RS::MULTIMESH_CUSTOM_DATA_NONE, Color());
- ERR_FAIL_INDEX_V(multimesh->custom_data_format, RS::MULTIMESH_CUSTOM_DATA_MAX, Color());
-
- int stride = multimesh->color_floats + multimesh->xform_floats + multimesh->custom_data_floats;
- float *dataptr = &multimesh->data.write[stride * p_index + multimesh->xform_floats + multimesh->color_floats];
-
- if (multimesh->custom_data_format == RS::MULTIMESH_CUSTOM_DATA_8BIT) {
- union {
- uint32_t colu;
- float colf;
- } cu;
-
- cu.colf = dataptr[0];
-
- return Color::hex(BSWAP32(cu.colu));
-
- } else if (multimesh->custom_data_format == RS::MULTIMESH_CUSTOM_DATA_FLOAT) {
- Color c;
- c.r = dataptr[0];
- c.g = dataptr[1];
- c.b = dataptr[2];
- c.a = dataptr[3];
-
- return c;
- }
-
- return Color();
-}
-
-void RasterizerStorageGLES2::multimesh_set_as_bulk_array(RID p_multimesh, const Vector<float> &p_array) {
- MultiMesh *multimesh = multimesh_owner.getornull(p_multimesh);
- ERR_FAIL_COND(!multimesh);
- ERR_FAIL_COND(!multimesh->data.ptr());
-
- int dsize = multimesh->data.size();
-
- ERR_FAIL_COND(dsize != p_array.size());
-
- const float *r = p_array.ptr();
- ERR_FAIL_COND(!r.ptr());
- copymem(multimesh->data.ptrw(), r.ptr(), dsize * sizeof(float));
-
- multimesh->dirty_data = true;
- multimesh->dirty_aabb = true;
-
- if (!multimesh->update_list.in_list()) {
- multimesh_update_list.add(&multimesh->update_list);
- }
-}
-
-void RasterizerStorageGLES2::multimesh_set_visible_instances(RID p_multimesh, int p_visible) {
- MultiMesh *multimesh = multimesh_owner.getornull(p_multimesh);
- ERR_FAIL_COND(!multimesh);
-
- multimesh->visible_instances = p_visible;
-}
-
-int RasterizerStorageGLES2::multimesh_get_visible_instances(RID p_multimesh) const {
- MultiMesh *multimesh = multimesh_owner.getornull(p_multimesh);
- ERR_FAIL_COND_V(!multimesh, -1);
-
- return multimesh->visible_instances;
-}
-
-AABB RasterizerStorageGLES2::multimesh_get_aabb(RID p_multimesh) const {
- MultiMesh *multimesh = multimesh_owner.getornull(p_multimesh);
- ERR_FAIL_COND_V(!multimesh, AABB());
-
- const_cast<RasterizerStorageGLES2 *>(this)->update_dirty_multimeshes();
-
- return multimesh->aabb;
-}
-
-void RasterizerStorageGLES2::update_dirty_multimeshes() {
- while (multimesh_update_list.first()) {
- MultiMesh *multimesh = multimesh_update_list.first()->self();
-
- if (multimesh->size && multimesh->dirty_aabb) {
- AABB mesh_aabb;
-
- if (multimesh->mesh.is_valid()) {
- mesh_aabb = mesh_get_aabb(multimesh->mesh, RID());
- }
-
- mesh_aabb.size += Vector3(0.001, 0.001, 0.001); //in case mesh is empty in one of the sides
-
- int stride = multimesh->color_floats + multimesh->xform_floats + multimesh->custom_data_floats;
- int count = multimesh->data.size();
- float *data = multimesh->data.ptrw();
-
- AABB aabb;
-
- if (multimesh->transform_format == RS::MULTIMESH_TRANSFORM_2D) {
- for (int i = 0; i < count; i += stride) {
- float *dataptr = &data[i];
-
- Transform xform;
- xform.basis[0][0] = dataptr[0];
- xform.basis[0][1] = dataptr[1];
- xform.origin[0] = dataptr[3];
- xform.basis[1][0] = dataptr[4];
- xform.basis[1][1] = dataptr[5];
- xform.origin[1] = dataptr[7];
-
- AABB laabb = xform.xform(mesh_aabb);
-
- if (i == 0) {
- aabb = laabb;
- } else {
- aabb.merge_with(laabb);
- }
- }
-
- } else {
- for (int i = 0; i < count; i += stride) {
- float *dataptr = &data[i];
-
- Transform xform;
- xform.basis.elements[0][0] = dataptr[0];
- xform.basis.elements[0][1] = dataptr[1];
- xform.basis.elements[0][2] = dataptr[2];
- xform.origin.x = dataptr[3];
- xform.basis.elements[1][0] = dataptr[4];
- xform.basis.elements[1][1] = dataptr[5];
- xform.basis.elements[1][2] = dataptr[6];
- xform.origin.y = dataptr[7];
- xform.basis.elements[2][0] = dataptr[8];
- xform.basis.elements[2][1] = dataptr[9];
- xform.basis.elements[2][2] = dataptr[10];
- xform.origin.z = dataptr[11];
-
- AABB laabb = xform.xform(mesh_aabb);
-
- if (i == 0) {
- aabb = laabb;
- } else {
- aabb.merge_with(laabb);
- }
- }
- }
-
- multimesh->aabb = aabb;
- }
-
- multimesh->dirty_aabb = false;
- multimesh->dirty_data = false;
-
- multimesh->instance_change_notify(true, false);
-
- multimesh_update_list.remove(multimesh_update_list.first());
- }
-}
-
-/* IMMEDIATE API */
-
-RID RasterizerStorageGLES2::immediate_create() {
- Immediate *im = memnew(Immediate);
- return immediate_owner.make_rid(im);
-}
-
-void RasterizerStorageGLES2::immediate_begin(RID p_immediate, RS::PrimitiveType p_primitive, RID p_texture) {
- Immediate *im = immediate_owner.getornull(p_immediate);
- ERR_FAIL_COND(!im);
- ERR_FAIL_COND(im->building);
-
- Immediate::Chunk ic;
- ic.texture = p_texture;
- ic.primitive = p_primitive;
- im->chunks.push_back(ic);
- im->mask = 0;
- im->building = true;
-}
-
-void RasterizerStorageGLES2::immediate_vertex(RID p_immediate, const Vector3 &p_vertex) {
- Immediate *im = immediate_owner.getornull(p_immediate);
- ERR_FAIL_COND(!im);
- ERR_FAIL_COND(!im->building);
-
- Immediate::Chunk *c = &im->chunks.back()->get();
-
- if (c->vertices.empty() && im->chunks.size() == 1) {
- im->aabb.position = p_vertex;
- im->aabb.size = Vector3();
- } else {
- im->aabb.expand_to(p_vertex);
- }
-
- if (im->mask & RS::ARRAY_FORMAT_NORMAL)
- c->normals.push_back(chunk_normal);
- if (im->mask & RS::ARRAY_FORMAT_TANGENT)
- c->tangents.push_back(chunk_tangent);
- if (im->mask & RS::ARRAY_FORMAT_COLOR)
- c->colors.push_back(chunk_color);
- if (im->mask & RS::ARRAY_FORMAT_TEX_UV)
- c->uvs.push_back(chunk_uv);
- if (im->mask & RS::ARRAY_FORMAT_TEX_UV2)
- c->uv2s.push_back(chunk_uv2);
- im->mask |= RS::ARRAY_FORMAT_VERTEX;
- c->vertices.push_back(p_vertex);
-}
-
-void RasterizerStorageGLES2::immediate_normal(RID p_immediate, const Vector3 &p_normal) {
- Immediate *im = immediate_owner.getornull(p_immediate);
- ERR_FAIL_COND(!im);
- ERR_FAIL_COND(!im->building);
-
- im->mask |= RS::ARRAY_FORMAT_NORMAL;
- chunk_normal = p_normal;
-}
-
-void RasterizerStorageGLES2::immediate_tangent(RID p_immediate, const Plane &p_tangent) {
- Immediate *im = immediate_owner.getornull(p_immediate);
- ERR_FAIL_COND(!im);
- ERR_FAIL_COND(!im->building);
-
- im->mask |= RS::ARRAY_FORMAT_TANGENT;
- chunk_tangent = p_tangent;
-}
-
-void RasterizerStorageGLES2::immediate_color(RID p_immediate, const Color &p_color) {
- Immediate *im = immediate_owner.getornull(p_immediate);
- ERR_FAIL_COND(!im);
- ERR_FAIL_COND(!im->building);
-
- im->mask |= RS::ARRAY_FORMAT_COLOR;
- chunk_color = p_color;
-}
-
-void RasterizerStorageGLES2::immediate_uv(RID p_immediate, const Vector2 &tex_uv) {
- Immediate *im = immediate_owner.getornull(p_immediate);
- ERR_FAIL_COND(!im);
- ERR_FAIL_COND(!im->building);
-
- im->mask |= RS::ARRAY_FORMAT_TEX_UV;
- chunk_uv = tex_uv;
-}
-
-void RasterizerStorageGLES2::immediate_uv2(RID p_immediate, const Vector2 &tex_uv) {
- Immediate *im = immediate_owner.getornull(p_immediate);
- ERR_FAIL_COND(!im);
- ERR_FAIL_COND(!im->building);
-
- im->mask |= RS::ARRAY_FORMAT_TEX_UV2;
- chunk_uv2 = tex_uv;
-}
-
-void RasterizerStorageGLES2::immediate_end(RID p_immediate) {
- Immediate *im = immediate_owner.getornull(p_immediate);
- ERR_FAIL_COND(!im);
- ERR_FAIL_COND(!im->building);
-
- im->building = false;
- im->instance_change_notify(true, false);
-}
-
-void RasterizerStorageGLES2::immediate_clear(RID p_immediate) {
- Immediate *im = immediate_owner.getornull(p_immediate);
- ERR_FAIL_COND(!im);
- ERR_FAIL_COND(im->building);
-
- im->chunks.clear();
- im->instance_change_notify(true, false);
-}
-
-AABB RasterizerStorageGLES2::immediate_get_aabb(RID p_immediate) const {
- Immediate *im = immediate_owner.getornull(p_immediate);
- ERR_FAIL_COND_V(!im, AABB());
- return im->aabb;
-}
-
-void RasterizerStorageGLES2::immediate_set_material(RID p_immediate, RID p_material) {
- Immediate *im = immediate_owner.getornull(p_immediate);
- ERR_FAIL_COND(!im);
-
- im->material = p_material;
- im->instance_change_notify(false, true);
-}
-
-RID RasterizerStorageGLES2::immediate_get_material(RID p_immediate) const {
- const Immediate *im = immediate_owner.getornull(p_immediate);
- ERR_FAIL_COND_V(!im, RID());
- return im->material;
-}
-
-/* SKELETON API */
-
-RID RasterizerStorageGLES2::skeleton_create() {
- Skeleton *skeleton = memnew(Skeleton);
-
- glGenTextures(1, &skeleton->tex_id);
-
- return skeleton_owner.make_rid(skeleton);
-}
-
-void RasterizerStorageGLES2::skeleton_allocate(RID p_skeleton, int p_bones, bool p_2d_skeleton) {
- Skeleton *skeleton = skeleton_owner.getornull(p_skeleton);
- ERR_FAIL_COND(!skeleton);
- ERR_FAIL_COND(p_bones < 0);
-
- if (skeleton->size == p_bones && skeleton->use_2d == p_2d_skeleton) {
- return;
- }
-
- skeleton->size = p_bones;
- skeleton->use_2d = p_2d_skeleton;
-
- if (!config.use_skeleton_software) {
- glActiveTexture(GL_TEXTURE0);
- glBindTexture(GL_TEXTURE_2D, skeleton->tex_id);
-
-#ifdef GLES_OVER_GL
- glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA32F, p_bones * (skeleton->use_2d ? 2 : 3), 1, 0, GL_RGBA, GL_FLOAT, nullptr);
-#else
- glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, p_bones * (skeleton->use_2d ? 2 : 3), 1, 0, GL_RGBA, GL_FLOAT, nullptr);
-#endif
-
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);
-
- glBindTexture(GL_TEXTURE_2D, 0);
- }
- if (skeleton->use_2d) {
- skeleton->bone_data.resize(p_bones * 4 * 2);
- } else {
- skeleton->bone_data.resize(p_bones * 4 * 3);
- }
-}
-
-int RasterizerStorageGLES2::skeleton_get_bone_count(RID p_skeleton) const {
- Skeleton *skeleton = skeleton_owner.getornull(p_skeleton);
- ERR_FAIL_COND_V(!skeleton, 0);
-
- return skeleton->size;
-}
-
-void RasterizerStorageGLES2::skeleton_bone_set_transform(RID p_skeleton, int p_bone, const Transform &p_transform) {
- Skeleton *skeleton = skeleton_owner.getornull(p_skeleton);
- ERR_FAIL_COND(!skeleton);
-
- ERR_FAIL_INDEX(p_bone, skeleton->size);
- ERR_FAIL_COND(skeleton->use_2d);
-
- float *bone_data = skeleton->bone_data.ptrw();
-
- int base_offset = p_bone * 4 * 3;
-
- bone_data[base_offset + 0] = p_transform.basis[0].x;
- bone_data[base_offset + 1] = p_transform.basis[0].y;
- bone_data[base_offset + 2] = p_transform.basis[0].z;
- bone_data[base_offset + 3] = p_transform.origin.x;
-
- bone_data[base_offset + 4] = p_transform.basis[1].x;
- bone_data[base_offset + 5] = p_transform.basis[1].y;
- bone_data[base_offset + 6] = p_transform.basis[1].z;
- bone_data[base_offset + 7] = p_transform.origin.y;
-
- bone_data[base_offset + 8] = p_transform.basis[2].x;
- bone_data[base_offset + 9] = p_transform.basis[2].y;
- bone_data[base_offset + 10] = p_transform.basis[2].z;
- bone_data[base_offset + 11] = p_transform.origin.z;
-
- if (!skeleton->update_list.in_list()) {
- skeleton_update_list.add(&skeleton->update_list);
- }
-}
-
-Transform RasterizerStorageGLES2::skeleton_bone_get_transform(RID p_skeleton, int p_bone) const {
- Skeleton *skeleton = skeleton_owner.getornull(p_skeleton);
- ERR_FAIL_COND_V(!skeleton, Transform());
-
- ERR_FAIL_INDEX_V(p_bone, skeleton->size, Transform());
- ERR_FAIL_COND_V(skeleton->use_2d, Transform());
-
- const float *bone_data = skeleton->bone_data.ptr();
-
- Transform ret;
-
- int base_offset = p_bone * 4 * 3;
-
- ret.basis[0].x = bone_data[base_offset + 0];
- ret.basis[0].y = bone_data[base_offset + 1];
- ret.basis[0].z = bone_data[base_offset + 2];
- ret.origin.x = bone_data[base_offset + 3];
-
- ret.basis[1].x = bone_data[base_offset + 4];
- ret.basis[1].y = bone_data[base_offset + 5];
- ret.basis[1].z = bone_data[base_offset + 6];
- ret.origin.y = bone_data[base_offset + 7];
-
- ret.basis[2].x = bone_data[base_offset + 8];
- ret.basis[2].y = bone_data[base_offset + 9];
- ret.basis[2].z = bone_data[base_offset + 10];
- ret.origin.z = bone_data[base_offset + 11];
-
- return ret;
-}
-
-void RasterizerStorageGLES2::skeleton_bone_set_transform_2d(RID p_skeleton, int p_bone, const Transform2D &p_transform) {
- Skeleton *skeleton = skeleton_owner.getornull(p_skeleton);
- ERR_FAIL_COND(!skeleton);
-
- ERR_FAIL_INDEX(p_bone, skeleton->size);
- ERR_FAIL_COND(!skeleton->use_2d);
-
- float *bone_data = skeleton->bone_data.ptrw();
-
- int base_offset = p_bone * 4 * 2;
-
- bone_data[base_offset + 0] = p_transform[0][0];
- bone_data[base_offset + 1] = p_transform[1][0];
- bone_data[base_offset + 2] = 0;
- bone_data[base_offset + 3] = p_transform[2][0];
- bone_data[base_offset + 4] = p_transform[0][1];
- bone_data[base_offset + 5] = p_transform[1][1];
- bone_data[base_offset + 6] = 0;
- bone_data[base_offset + 7] = p_transform[2][1];
-
- if (!skeleton->update_list.in_list()) {
- skeleton_update_list.add(&skeleton->update_list);
- }
-}
-
-Transform2D RasterizerStorageGLES2::skeleton_bone_get_transform_2d(RID p_skeleton, int p_bone) const {
- Skeleton *skeleton = skeleton_owner.getornull(p_skeleton);
- ERR_FAIL_COND_V(!skeleton, Transform2D());
-
- ERR_FAIL_INDEX_V(p_bone, skeleton->size, Transform2D());
- ERR_FAIL_COND_V(!skeleton->use_2d, Transform2D());
-
- const float *bone_data = skeleton->bone_data.ptr();
-
- Transform2D ret;
-
- int base_offset = p_bone * 4 * 2;
-
- ret[0][0] = bone_data[base_offset + 0];
- ret[1][0] = bone_data[base_offset + 1];
- ret[2][0] = bone_data[base_offset + 3];
- ret[0][1] = bone_data[base_offset + 4];
- ret[1][1] = bone_data[base_offset + 5];
- ret[2][1] = bone_data[base_offset + 7];
-
- return ret;
-}
-
-void RasterizerStorageGLES2::skeleton_set_base_transform_2d(RID p_skeleton, const Transform2D &p_base_transform) {
- Skeleton *skeleton = skeleton_owner.getornull(p_skeleton);
- ERR_FAIL_COND(!skeleton);
-
- skeleton->base_transform_2d = p_base_transform;
-}
-
-void RasterizerStorageGLES2::_update_skeleton_transform_buffer(const Vector<float> &p_data, size_t p_size) {
- glBindBuffer(GL_ARRAY_BUFFER, resources.skeleton_transform_buffer);
-
- if (p_size > resources.skeleton_transform_buffer_size) {
- // new requested buffer is bigger, so resizing the GPU buffer
-
- resources.skeleton_transform_buffer_size = p_size;
-
- glBufferData(GL_ARRAY_BUFFER, p_size * sizeof(float), p_data.ptr(), GL_DYNAMIC_DRAW);
- } else {
- glBufferSubData(GL_ARRAY_BUFFER, 0, p_size * sizeof(float), p_data.ptr());
- }
-
- glBindBuffer(GL_ARRAY_BUFFER, 0);
-}
-
-void RasterizerStorageGLES2::update_dirty_skeletons() {
- if (config.use_skeleton_software)
- return;
-
- glActiveTexture(GL_TEXTURE0);
-
- while (skeleton_update_list.first()) {
- Skeleton *skeleton = skeleton_update_list.first()->self();
-
- if (skeleton->size) {
- glBindTexture(GL_TEXTURE_2D, skeleton->tex_id);
-
- glTexSubImage2D(GL_TEXTURE_2D, 0, 0, 0, skeleton->size * (skeleton->use_2d ? 2 : 3), 1, GL_RGBA, GL_FLOAT, skeleton->bone_data.ptr());
- }
-
- for (Set<RasterizerScene::InstanceBase *>::Element *E = skeleton->instances.front(); E; E = E->next()) {
- E->get()->base_changed(true, false);
- }
-
- skeleton_update_list.remove(skeleton_update_list.first());
- }
-}
-
-/* Light API */
-
-RID RasterizerStorageGLES2::light_create(RS::LightType p_type) {
- Light *light = memnew(Light);
-
- light->type = p_type;
-
- light->param[RS::LIGHT_PARAM_ENERGY] = 1.0;
- light->param[RS::LIGHT_PARAM_INDIRECT_ENERGY] = 1.0;
- light->param[RS::LIGHT_PARAM_SPECULAR] = 0.5;
- light->param[RS::LIGHT_PARAM_RANGE] = 1.0;
- light->param[RS::LIGHT_PARAM_SPOT_ANGLE] = 45;
- light->param[RS::LIGHT_PARAM_CONTACT_SHADOW_SIZE] = 45;
- light->param[RS::LIGHT_PARAM_SHADOW_MAX_DISTANCE] = 0;
- light->param[RS::LIGHT_PARAM_SHADOW_SPLIT_1_OFFSET] = 0.1;
- light->param[RS::LIGHT_PARAM_SHADOW_SPLIT_2_OFFSET] = 0.3;
- light->param[RS::LIGHT_PARAM_SHADOW_SPLIT_3_OFFSET] = 0.6;
- light->param[RS::LIGHT_PARAM_SHADOW_NORMAL_BIAS] = 0.1;
- light->param[RS::LIGHT_PARAM_SHADOW_BIAS_SPLIT_SCALE] = 0.1;
-
- light->color = Color(1, 1, 1, 1);
- light->shadow = false;
- light->negative = false;
- light->cull_mask = 0xFFFFFFFF;
- light->directional_shadow_mode = RS::LIGHT_DIRECTIONAL_SHADOW_ORTHOGONAL;
- light->omni_shadow_mode = RS::LIGHT_OMNI_SHADOW_DUAL_PARABOLOID;
- light->omni_shadow_detail = RS::LIGHT_OMNI_SHADOW_DETAIL_VERTICAL;
- light->directional_blend_splits = false;
- light->directional_range_mode = RS::LIGHT_DIRECTIONAL_SHADOW_DEPTH_RANGE_STABLE;
- light->reverse_cull = false;
- light->use_gi = true;
- light->version = 0;
-
- return light_owner.make_rid(light);
-}
-
-void RasterizerStorageGLES2::light_set_color(RID p_light, const Color &p_color) {
- Light *light = light_owner.getornull(p_light);
- ERR_FAIL_COND(!light);
-
- light->color = p_color;
-}
-
-void RasterizerStorageGLES2::light_set_param(RID p_light, RS::LightParam p_param, float p_value) {
- Light *light = light_owner.getornull(p_light);
- ERR_FAIL_COND(!light);
- ERR_FAIL_INDEX(p_param, RS::LIGHT_PARAM_MAX);
-
- switch (p_param) {
- case RS::LIGHT_PARAM_RANGE:
- case RS::LIGHT_PARAM_SPOT_ANGLE:
- case RS::LIGHT_PARAM_SHADOW_MAX_DISTANCE:
- case RS::LIGHT_PARAM_SHADOW_SPLIT_1_OFFSET:
- case RS::LIGHT_PARAM_SHADOW_SPLIT_2_OFFSET:
- case RS::LIGHT_PARAM_SHADOW_SPLIT_3_OFFSET:
- case RS::LIGHT_PARAM_SHADOW_NORMAL_BIAS:
- case RS::LIGHT_PARAM_SHADOW_BIAS: {
- light->version++;
- light->instance_change_notify(true, false);
- } break;
- default: {
- }
- }
-
- light->param[p_param] = p_value;
-}
-
-void RasterizerStorageGLES2::light_set_shadow(RID p_light, bool p_enabled) {
- Light *light = light_owner.getornull(p_light);
- ERR_FAIL_COND(!light);
-
- light->shadow = p_enabled;
-
- light->version++;
- light->instance_change_notify(true, false);
-}
-
-void RasterizerStorageGLES2::light_set_shadow_color(RID p_light, const Color &p_color) {
- Light *light = light_owner.getornull(p_light);
- ERR_FAIL_COND(!light);
-
- light->shadow_color = p_color;
-}
-
-void RasterizerStorageGLES2::light_set_projector(RID p_light, RID p_texture) {
- Light *light = light_owner.getornull(p_light);
- ERR_FAIL_COND(!light);
-
- light->projector = p_texture;
-}
-
-void RasterizerStorageGLES2::light_set_negative(RID p_light, bool p_enable) {
- Light *light = light_owner.getornull(p_light);
- ERR_FAIL_COND(!light);
-
- light->negative = p_enable;
-}
-
-void RasterizerStorageGLES2::light_set_cull_mask(RID p_light, uint32_t p_mask) {
- Light *light = light_owner.getornull(p_light);
- ERR_FAIL_COND(!light);
-
- light->cull_mask = p_mask;
-
- light->version++;
- light->instance_change_notify(true, false);
-}
-
-void RasterizerStorageGLES2::light_set_reverse_cull_face_mode(RID p_light, bool p_enabled) {
- Light *light = light_owner.getornull(p_light);
- ERR_FAIL_COND(!light);
-
- light->reverse_cull = p_enabled;
-
- light->version++;
- light->instance_change_notify(true, false);
-}
-
-void RasterizerStorageGLES2::light_set_use_gi(RID p_light, bool p_enabled) {
- Light *light = light_owner.getornull(p_light);
- ERR_FAIL_COND(!light);
-
- light->use_gi = p_enabled;
-
- light->version++;
- light->instance_change_notify(true, false);
-}
-
-void RasterizerStorageGLES2::light_omni_set_shadow_mode(RID p_light, RS::LightOmniShadowMode p_mode) {
- Light *light = light_owner.getornull(p_light);
- ERR_FAIL_COND(!light);
-
- light->omni_shadow_mode = p_mode;
-
- light->version++;
- light->instance_change_notify(true, false);
-}
-
-RS::LightOmniShadowMode RasterizerStorageGLES2::light_omni_get_shadow_mode(RID p_light) {
- Light *light = light_owner.getornull(p_light);
- ERR_FAIL_COND_V(!light, RS::LIGHT_OMNI_SHADOW_CUBE);
-
- return light->omni_shadow_mode;
-}
-
-void RasterizerStorageGLES2::light_omni_set_shadow_detail(RID p_light, RS::LightOmniShadowDetail p_detail) {
- Light *light = light_owner.getornull(p_light);
- ERR_FAIL_COND(!light);
-
- light->omni_shadow_detail = p_detail;
-
- light->version++;
- light->instance_change_notify(true, false);
-}
-
-void RasterizerStorageGLES2::light_directional_set_shadow_mode(RID p_light, RS::LightDirectionalShadowMode p_mode) {
- Light *light = light_owner.getornull(p_light);
- ERR_FAIL_COND(!light);
-
- light->directional_shadow_mode = p_mode;
-
- light->version++;
- light->instance_change_notify(true, false);
-}
-
-void RasterizerStorageGLES2::light_directional_set_blend_splits(RID p_light, bool p_enable) {
- Light *light = light_owner.getornull(p_light);
- ERR_FAIL_COND(!light);
-
- light->directional_blend_splits = p_enable;
-
- light->version++;
- light->instance_change_notify(true, false);
-}
-
-bool RasterizerStorageGLES2::light_directional_get_blend_splits(RID p_light) const {
- Light *light = light_owner.getornull(p_light);
- ERR_FAIL_COND_V(!light, false);
- return light->directional_blend_splits;
-}
-
-RS::LightDirectionalShadowMode RasterizerStorageGLES2::light_directional_get_shadow_mode(RID p_light) {
- Light *light = light_owner.getornull(p_light);
- ERR_FAIL_COND_V(!light, RS::LIGHT_DIRECTIONAL_SHADOW_ORTHOGONAL);
- return light->directional_shadow_mode;
-}
-
-void RasterizerStorageGLES2::light_directional_set_shadow_depth_range_mode(RID p_light, RS::LightDirectionalShadowDepthRangeMode p_range_mode) {
- Light *light = light_owner.getornull(p_light);
- ERR_FAIL_COND(!light);
-
- light->directional_range_mode = p_range_mode;
-}
-
-RS::LightDirectionalShadowDepthRangeMode RasterizerStorageGLES2::light_directional_get_shadow_depth_range_mode(RID p_light) const {
- Light *light = light_owner.getornull(p_light);
- ERR_FAIL_COND_V(!light, RS::LIGHT_DIRECTIONAL_SHADOW_DEPTH_RANGE_STABLE);
-
- return light->directional_range_mode;
-}
-
-RS::LightType RasterizerStorageGLES2::light_get_type(RID p_light) const {
- Light *light = light_owner.getornull(p_light);
- ERR_FAIL_COND_V(!light, RS::LIGHT_DIRECTIONAL);
-
- return light->type;
-}
-
-float RasterizerStorageGLES2::light_get_param(RID p_light, RS::LightParam p_param) {
- Light *light = light_owner.getornull(p_light);
- ERR_FAIL_COND_V(!light, 0.0);
- ERR_FAIL_INDEX_V(p_param, RS::LIGHT_PARAM_MAX, 0.0);
-
- return light->param[p_param];
-}
-
-Color RasterizerStorageGLES2::light_get_color(RID p_light) {
- Light *light = light_owner.getornull(p_light);
- ERR_FAIL_COND_V(!light, Color());
-
- return light->color;
-}
-
-bool RasterizerStorageGLES2::light_get_use_gi(RID p_light) {
- Light *light = light_owner.getornull(p_light);
- ERR_FAIL_COND_V(!light, false);
-
- return light->use_gi;
-}
-
-bool RasterizerStorageGLES2::light_has_shadow(RID p_light) const {
- Light *light = light_owner.getornull(p_light);
- ERR_FAIL_COND_V(!light, false);
-
- return light->shadow;
-}
-
-uint64_t RasterizerStorageGLES2::light_get_version(RID p_light) const {
- Light *light = light_owner.getornull(p_light);
- ERR_FAIL_COND_V(!light, 0);
-
- return light->version;
-}
-
-AABB RasterizerStorageGLES2::light_get_aabb(RID p_light) const {
- Light *light = light_owner.getornull(p_light);
- ERR_FAIL_COND_V(!light, AABB());
-
- switch (light->type) {
- case RS::LIGHT_SPOT: {
- float len = light->param[RS::LIGHT_PARAM_RANGE];
- float size = Math::tan(Math::deg2rad(light->param[RS::LIGHT_PARAM_SPOT_ANGLE])) * len;
- return AABB(Vector3(-size, -size, -len), Vector3(size * 2, size * 2, len));
- };
-
- case RS::LIGHT_OMNI: {
- float r = light->param[RS::LIGHT_PARAM_RANGE];
- return AABB(-Vector3(r, r, r), Vector3(r, r, r) * 2);
- };
-
- case RS::LIGHT_DIRECTIONAL: {
- return AABB();
- };
- }
-
- ERR_FAIL_V(AABB());
-}
-
-/* PROBE API */
-
-RID RasterizerStorageGLES2::reflection_probe_create() {
- ReflectionProbe *reflection_probe = memnew(ReflectionProbe);
-
- reflection_probe->intensity = 1.0;
- reflection_probe->interior_ambient = Color();
- reflection_probe->interior_ambient_energy = 1.0;
- reflection_probe->interior_ambient_probe_contrib = 0.0;
- reflection_probe->max_distance = 0;
- reflection_probe->extents = Vector3(1, 1, 1);
- reflection_probe->origin_offset = Vector3(0, 0, 0);
- reflection_probe->interior = false;
- reflection_probe->box_projection = false;
- reflection_probe->enable_shadows = false;
- reflection_probe->cull_mask = (1 << 20) - 1;
- reflection_probe->update_mode = RS::REFLECTION_PROBE_UPDATE_ONCE;
- reflection_probe->resolution = 128;
-
- return reflection_probe_owner.make_rid(reflection_probe);
-}
-
-void RasterizerStorageGLES2::reflection_probe_set_update_mode(RID p_probe, RS::ReflectionProbeUpdateMode p_mode) {
- ReflectionProbe *reflection_probe = reflection_probe_owner.getornull(p_probe);
- ERR_FAIL_COND(!reflection_probe);
-
- reflection_probe->update_mode = p_mode;
- reflection_probe->instance_change_notify(true, false);
-}
-
-void RasterizerStorageGLES2::reflection_probe_set_intensity(RID p_probe, float p_intensity) {
- ReflectionProbe *reflection_probe = reflection_probe_owner.getornull(p_probe);
- ERR_FAIL_COND(!reflection_probe);
-
- reflection_probe->intensity = p_intensity;
-}
-
-void RasterizerStorageGLES2::reflection_probe_set_interior_ambient(RID p_probe, const Color &p_ambient) {
- ReflectionProbe *reflection_probe = reflection_probe_owner.getornull(p_probe);
- ERR_FAIL_COND(!reflection_probe);
-
- reflection_probe->interior_ambient = p_ambient;
-}
-
-void RasterizerStorageGLES2::reflection_probe_set_interior_ambient_energy(RID p_probe, float p_energy) {
- ReflectionProbe *reflection_probe = reflection_probe_owner.getornull(p_probe);
- ERR_FAIL_COND(!reflection_probe);
-
- reflection_probe->interior_ambient_energy = p_energy;
-}
-
-void RasterizerStorageGLES2::reflection_probe_set_interior_ambient_probe_contribution(RID p_probe, float p_contrib) {
- ReflectionProbe *reflection_probe = reflection_probe_owner.getornull(p_probe);
- ERR_FAIL_COND(!reflection_probe);
-
- reflection_probe->interior_ambient_probe_contrib = p_contrib;
-}
-
-void RasterizerStorageGLES2::reflection_probe_set_max_distance(RID p_probe, float p_distance) {
- ReflectionProbe *reflection_probe = reflection_probe_owner.getornull(p_probe);
- ERR_FAIL_COND(!reflection_probe);
-
- reflection_probe->max_distance = p_distance;
- reflection_probe->instance_change_notify(true, false);
-}
-
-void RasterizerStorageGLES2::reflection_probe_set_extents(RID p_probe, const Vector3 &p_extents) {
- ReflectionProbe *reflection_probe = reflection_probe_owner.getornull(p_probe);
- ERR_FAIL_COND(!reflection_probe);
-
- reflection_probe->extents = p_extents;
- reflection_probe->instance_change_notify(true, false);
-}
-
-void RasterizerStorageGLES2::reflection_probe_set_origin_offset(RID p_probe, const Vector3 &p_offset) {
- ReflectionProbe *reflection_probe = reflection_probe_owner.getornull(p_probe);
- ERR_FAIL_COND(!reflection_probe);
-
- reflection_probe->origin_offset = p_offset;
- reflection_probe->instance_change_notify(true, false);
-}
-
-void RasterizerStorageGLES2::reflection_probe_set_as_interior(RID p_probe, bool p_enable) {
- ReflectionProbe *reflection_probe = reflection_probe_owner.getornull(p_probe);
- ERR_FAIL_COND(!reflection_probe);
-
- reflection_probe->interior = p_enable;
- reflection_probe->instance_change_notify(true, false);
-}
-
-void RasterizerStorageGLES2::reflection_probe_set_enable_box_projection(RID p_probe, bool p_enable) {
- ReflectionProbe *reflection_probe = reflection_probe_owner.getornull(p_probe);
- ERR_FAIL_COND(!reflection_probe);
-
- reflection_probe->box_projection = p_enable;
-}
-
-void RasterizerStorageGLES2::reflection_probe_set_enable_shadows(RID p_probe, bool p_enable) {
- ReflectionProbe *reflection_probe = reflection_probe_owner.getornull(p_probe);
- ERR_FAIL_COND(!reflection_probe);
-
- reflection_probe->enable_shadows = p_enable;
- reflection_probe->instance_change_notify(true, false);
-}
-
-void RasterizerStorageGLES2::reflection_probe_set_cull_mask(RID p_probe, uint32_t p_layers) {
- ReflectionProbe *reflection_probe = reflection_probe_owner.getornull(p_probe);
- ERR_FAIL_COND(!reflection_probe);
-
- reflection_probe->cull_mask = p_layers;
- reflection_probe->instance_change_notify(true, false);
-}
-
-void RasterizerStorageGLES2::reflection_probe_set_resolution(RID p_probe, int p_resolution) {
- ReflectionProbe *reflection_probe = reflection_probe_owner.getornull(p_probe);
- ERR_FAIL_COND(!reflection_probe);
-
- reflection_probe->resolution = p_resolution;
-}
-
-AABB RasterizerStorageGLES2::reflection_probe_get_aabb(RID p_probe) const {
- const ReflectionProbe *reflection_probe = reflection_probe_owner.getornull(p_probe);
- ERR_FAIL_COND_V(!reflection_probe, AABB());
-
- AABB aabb;
- aabb.position = -reflection_probe->extents;
- aabb.size = reflection_probe->extents * 2.0;
-
- return aabb;
-}
-
-RS::ReflectionProbeUpdateMode RasterizerStorageGLES2::reflection_probe_get_update_mode(RID p_probe) const {
- const ReflectionProbe *reflection_probe = reflection_probe_owner.getornull(p_probe);
- ERR_FAIL_COND_V(!reflection_probe, RS::REFLECTION_PROBE_UPDATE_ALWAYS);
-
- return reflection_probe->update_mode;
-}
-
-uint32_t RasterizerStorageGLES2::reflection_probe_get_cull_mask(RID p_probe) const {
- const ReflectionProbe *reflection_probe = reflection_probe_owner.getornull(p_probe);
- ERR_FAIL_COND_V(!reflection_probe, 0);
-
- return reflection_probe->cull_mask;
-}
-
-Vector3 RasterizerStorageGLES2::reflection_probe_get_extents(RID p_probe) const {
- const ReflectionProbe *reflection_probe = reflection_probe_owner.getornull(p_probe);
- ERR_FAIL_COND_V(!reflection_probe, Vector3());
-
- return reflection_probe->extents;
-}
-
-Vector3 RasterizerStorageGLES2::reflection_probe_get_origin_offset(RID p_probe) const {
- const ReflectionProbe *reflection_probe = reflection_probe_owner.getornull(p_probe);
- ERR_FAIL_COND_V(!reflection_probe, Vector3());
-
- return reflection_probe->origin_offset;
-}
-
-bool RasterizerStorageGLES2::reflection_probe_renders_shadows(RID p_probe) const {
- const ReflectionProbe *reflection_probe = reflection_probe_owner.getornull(p_probe);
- ERR_FAIL_COND_V(!reflection_probe, false);
-
- return reflection_probe->enable_shadows;
-}
-
-float RasterizerStorageGLES2::reflection_probe_get_origin_max_distance(RID p_probe) const {
- const ReflectionProbe *reflection_probe = reflection_probe_owner.getornull(p_probe);
- ERR_FAIL_COND_V(!reflection_probe, 0);
-
- return reflection_probe->max_distance;
-}
-
-int RasterizerStorageGLES2::reflection_probe_get_resolution(RID p_probe) const {
- const ReflectionProbe *reflection_probe = reflection_probe_owner.getornull(p_probe);
- ERR_FAIL_COND_V(!reflection_probe, 0);
-
- return reflection_probe->resolution;
-}
-
-RID RasterizerStorageGLES2::gi_probe_create() {
- return RID();
-}
-
-void RasterizerStorageGLES2::gi_probe_set_bounds(RID p_probe, const AABB &p_bounds) {
-}
-
-AABB RasterizerStorageGLES2::gi_probe_get_bounds(RID p_probe) const {
- return AABB();
-}
-
-void RasterizerStorageGLES2::gi_probe_set_cell_size(RID p_probe, float p_size) {
-}
-
-float RasterizerStorageGLES2::gi_probe_get_cell_size(RID p_probe) const {
- return 0.0;
-}
-
-void RasterizerStorageGLES2::gi_probe_set_to_cell_xform(RID p_probe, const Transform &p_xform) {
-}
-
-Transform RasterizerStorageGLES2::gi_probe_get_to_cell_xform(RID p_probe) const {
- return Transform();
-}
-
-void RasterizerStorageGLES2::gi_probe_set_dynamic_data(RID p_probe, const Vector<int> &p_data) {
-}
-
-Vector<int> RasterizerStorageGLES2::gi_probe_get_dynamic_data(RID p_probe) const {
- return Vector<int>();
-}
-
-void RasterizerStorageGLES2::gi_probe_set_dynamic_range(RID p_probe, int p_range) {
-}
-
-int RasterizerStorageGLES2::gi_probe_get_dynamic_range(RID p_probe) const {
- return 0;
-}
-
-void RasterizerStorageGLES2::gi_probe_set_energy(RID p_probe, float p_range) {
-}
-
-void RasterizerStorageGLES2::gi_probe_set_bias(RID p_probe, float p_range) {
-}
-
-void RasterizerStorageGLES2::gi_probe_set_normal_bias(RID p_probe, float p_range) {
-}
-
-void RasterizerStorageGLES2::gi_probe_set_propagation(RID p_probe, float p_range) {
-}
-
-void RasterizerStorageGLES2::gi_probe_set_interior(RID p_probe, bool p_enable) {
-}
-
-bool RasterizerStorageGLES2::gi_probe_is_interior(RID p_probe) const {
- return false;
-}
-
-void RasterizerStorageGLES2::gi_probe_set_compress(RID p_probe, bool p_enable) {
-}
-
-bool RasterizerStorageGLES2::gi_probe_is_compressed(RID p_probe) const {
- return false;
-}
-
-float RasterizerStorageGLES2::gi_probe_get_energy(RID p_probe) const {
- return 0;
-}
-
-float RasterizerStorageGLES2::gi_probe_get_bias(RID p_probe) const {
- return 0;
-}
-
-float RasterizerStorageGLES2::gi_probe_get_normal_bias(RID p_probe) const {
- return 0;
-}
-
-float RasterizerStorageGLES2::gi_probe_get_propagation(RID p_probe) const {
- return 0;
-}
-
-uint32_t RasterizerStorageGLES2::gi_probe_get_version(RID p_probe) {
- return 0;
-}
-
-RasterizerStorage::GIProbeCompression RasterizerStorageGLES2::gi_probe_get_dynamic_data_get_preferred_compression() const {
- return GI_PROBE_UNCOMPRESSED;
-}
-
-RID RasterizerStorageGLES2::gi_probe_dynamic_data_create(int p_width, int p_height, int p_depth, GIProbeCompression p_compression) {
- return RID();
-}
-
-void RasterizerStorageGLES2::gi_probe_dynamic_data_update(RID p_gi_probe_data, int p_depth_slice, int p_slice_count, int p_mipmap, const void *p_data) {
-}
-
-///////
-
-RID RasterizerStorageGLES2::lightmap_capture_create() {
- LightmapCapture *capture = memnew(LightmapCapture);
- return lightmap_capture_data_owner.make_rid(capture);
-}
-
-void RasterizerStorageGLES2::lightmap_capture_set_bounds(RID p_capture, const AABB &p_bounds) {
- LightmapCapture *capture = lightmap_capture_data_owner.getornull(p_capture);
- ERR_FAIL_COND(!capture);
- capture->bounds = p_bounds;
- capture->instance_change_notify(true, false);
-}
-
-AABB RasterizerStorageGLES2::lightmap_capture_get_bounds(RID p_capture) const {
- const LightmapCapture *capture = lightmap_capture_data_owner.getornull(p_capture);
- ERR_FAIL_COND_V(!capture, AABB());
- return capture->bounds;
-}
-
-void RasterizerStorageGLES2::lightmap_capture_set_octree(RID p_capture, const Vector<uint8_t> &p_octree) {
- LightmapCapture *capture = lightmap_capture_data_owner.getornull(p_capture);
- ERR_FAIL_COND(!capture);
-
- ERR_FAIL_COND(p_octree.size() == 0 || (p_octree.size() % sizeof(LightmapCaptureOctree)) != 0);
-
- capture->octree.resize(p_octree.size() / sizeof(LightmapCaptureOctree));
- if (p_octree.size()) {
- LightmapCaptureOctree *w = capture->octree.ptrw();
- const uint8_t *r = p_octree.ptr();
- copymem(w.ptr(), r.ptr(), p_octree.size());
- }
- capture->instance_change_notify(true, false);
-}
-
-Vector<uint8_t> RasterizerStorageGLES2::lightmap_capture_get_octree(RID p_capture) const {
- const LightmapCapture *capture = lightmap_capture_data_owner.getornull(p_capture);
- ERR_FAIL_COND_V(!capture, Vector<uint8_t>());
-
- if (capture->octree.size() == 0)
- return Vector<uint8_t>();
-
- Vector<uint8_t> ret;
- ret.resize(capture->octree.size() * sizeof(LightmapCaptureOctree));
- {
- const LightmapCaptureOctree *r = capture->octree.ptr();
- uint8_t *w = ret.ptrw();
- copymem(w.ptr(), r.ptr(), ret.size());
- }
-
- return ret;
-}
-
-void RasterizerStorageGLES2::lightmap_capture_set_octree_cell_transform(RID p_capture, const Transform &p_xform) {
- LightmapCapture *capture = lightmap_capture_data_owner.getornull(p_capture);
- ERR_FAIL_COND(!capture);
- capture->cell_xform = p_xform;
-}
-
-Transform RasterizerStorageGLES2::lightmap_capture_get_octree_cell_transform(RID p_capture) const {
- const LightmapCapture *capture = lightmap_capture_data_owner.getornull(p_capture);
- ERR_FAIL_COND_V(!capture, Transform());
- return capture->cell_xform;
-}
-
-void RasterizerStorageGLES2::lightmap_capture_set_octree_cell_subdiv(RID p_capture, int p_subdiv) {
- LightmapCapture *capture = lightmap_capture_data_owner.getornull(p_capture);
- ERR_FAIL_COND(!capture);
- capture->cell_subdiv = p_subdiv;
-}
-
-int RasterizerStorageGLES2::lightmap_capture_get_octree_cell_subdiv(RID p_capture) const {
- const LightmapCapture *capture = lightmap_capture_data_owner.getornull(p_capture);
- ERR_FAIL_COND_V(!capture, 0);
- return capture->cell_subdiv;
-}
-
-void RasterizerStorageGLES2::lightmap_capture_set_energy(RID p_capture, float p_energy) {
- LightmapCapture *capture = lightmap_capture_data_owner.getornull(p_capture);
- ERR_FAIL_COND(!capture);
- capture->energy = p_energy;
-}
-
-float RasterizerStorageGLES2::lightmap_capture_get_energy(RID p_capture) const {
- const LightmapCapture *capture = lightmap_capture_data_owner.getornull(p_capture);
- ERR_FAIL_COND_V(!capture, 0);
- return capture->energy;
-}
-
-const Vector<RasterizerStorage::LightmapCaptureOctree> *RasterizerStorageGLES2::lightmap_capture_get_octree_ptr(RID p_capture) const {
- const LightmapCapture *capture = lightmap_capture_data_owner.getornull(p_capture);
- ERR_FAIL_COND_V(!capture, nullptr);
- return &capture->octree;
-}
-
-///////
-
-RID RasterizerStorageGLES2::particles_create() {
- return RID();
-}
-
-void RasterizerStorageGLES2::particles_set_emitting(RID p_particles, bool p_emitting) {
-}
-
-bool RasterizerStorageGLES2::particles_get_emitting(RID p_particles) {
- return false;
-}
-
-void RasterizerStorageGLES2::particles_set_amount(RID p_particles, int p_amount) {
-}
-
-void RasterizerStorageGLES2::particles_set_lifetime(RID p_particles, float p_lifetime) {
-}
-
-void RasterizerStorageGLES2::particles_set_one_shot(RID p_particles, bool p_one_shot) {
-}
-
-void RasterizerStorageGLES2::particles_set_pre_process_time(RID p_particles, float p_time) {
-}
-
-void RasterizerStorageGLES2::particles_set_explosiveness_ratio(RID p_particles, float p_ratio) {
-}
-
-void RasterizerStorageGLES2::particles_set_randomness_ratio(RID p_particles, float p_ratio) {
-}
-
-void RasterizerStorageGLES2::particles_set_custom_aabb(RID p_particles, const AABB &p_aabb) {
-}
-
-void RasterizerStorageGLES2::particles_set_speed_scale(RID p_particles, float p_scale) {
-}
-
-void RasterizerStorageGLES2::particles_set_use_local_coordinates(RID p_particles, bool p_enable) {
-}
-
-void RasterizerStorageGLES2::particles_set_fixed_fps(RID p_particles, int p_fps) {
-}
-
-void RasterizerStorageGLES2::particles_set_fractional_delta(RID p_particles, bool p_enable) {
-}
-
-void RasterizerStorageGLES2::particles_set_process_material(RID p_particles, RID p_material) {
-}
-
-void RasterizerStorageGLES2::particles_set_draw_order(RID p_particles, RS::ParticlesDrawOrder p_order) {
-}
-
-void RasterizerStorageGLES2::particles_set_draw_passes(RID p_particles, int p_passes) {
-}
-
-void RasterizerStorageGLES2::particles_set_draw_pass_mesh(RID p_particles, int p_pass, RID p_mesh) {
-}
-
-void RasterizerStorageGLES2::particles_restart(RID p_particles) {
-}
-
-void RasterizerStorageGLES2::particles_request_process(RID p_particles) {
-}
-
-AABB RasterizerStorageGLES2::particles_get_current_aabb(RID p_particles) {
- return AABB();
-}
-
-AABB RasterizerStorageGLES2::particles_get_aabb(RID p_particles) const {
- return AABB();
-}
-
-void RasterizerStorageGLES2::particles_set_emission_transform(RID p_particles, const Transform &p_transform) {
-}
-
-int RasterizerStorageGLES2::particles_get_draw_passes(RID p_particles) const {
- return 0;
-}
-
-RID RasterizerStorageGLES2::particles_get_draw_pass_mesh(RID p_particles, int p_pass) const {
- return RID();
-}
-
-void RasterizerStorageGLES2::update_particles() {
-}
-
-bool RasterizerStorageGLES2::particles_is_inactive(RID p_particles) const {
- return true;
-}
-
-////////
-
-void RasterizerStorageGLES2::instance_add_skeleton(RID p_skeleton, RasterizerScene::InstanceBase *p_instance) {
- Skeleton *skeleton = skeleton_owner.getornull(p_skeleton);
- ERR_FAIL_COND(!skeleton);
-
- skeleton->instances.insert(p_instance);
-}
-
-void RasterizerStorageGLES2::instance_remove_skeleton(RID p_skeleton, RasterizerScene::InstanceBase *p_instance) {
- Skeleton *skeleton = skeleton_owner.getornull(p_skeleton);
- ERR_FAIL_COND(!skeleton);
-
- skeleton->instances.erase(p_instance);
-}
-
-void RasterizerStorageGLES2::instance_add_dependency(RID p_base, RasterizerScene::InstanceBase *p_instance) {
- Instantiable *inst = nullptr;
- switch (p_instance->base_type) {
- case RS::INSTANCE_MESH: {
- inst = mesh_owner.getornull(p_base);
- ERR_FAIL_COND(!inst);
- } break;
- case RS::INSTANCE_MULTIMESH: {
- inst = multimesh_owner.getornull(p_base);
- ERR_FAIL_COND(!inst);
- } break;
- case RS::INSTANCE_IMMEDIATE: {
- inst = immediate_owner.getornull(p_base);
- ERR_FAIL_COND(!inst);
- } break;
- /*case RS::INSTANCE_PARTICLES: {
- inst = particles_owner.getornull(p_base);
- ERR_FAIL_COND(!inst);
- } break;*/
- case RS::INSTANCE_REFLECTION_PROBE: {
- inst = reflection_probe_owner.getornull(p_base);
- ERR_FAIL_COND(!inst);
- } break;
- case RS::INSTANCE_LIGHT: {
- inst = light_owner.getornull(p_base);
- ERR_FAIL_COND(!inst);
- } break;
- /*case RS::INSTANCE_GI_PROBE: {
- inst = gi_probe_owner.getornull(p_base);
- ERR_FAIL_COND(!inst);
- } break;*/
- case RS::INSTANCE_LIGHTMAP_CAPTURE: {
- inst = lightmap_capture_data_owner.getornull(p_base);
- ERR_FAIL_COND(!inst);
- } break;
- default: {
- ERR_FAIL();
- }
- }
-
- inst->instance_list.add(&p_instance->dependency_item);
-}
-
-void RasterizerStorageGLES2::instance_remove_dependency(RID p_base, RasterizerScene::InstanceBase *p_instance) {
- Instantiable *inst = nullptr;
-
- switch (p_instance->base_type) {
- case RS::INSTANCE_MESH: {
- inst = mesh_owner.getornull(p_base);
- ERR_FAIL_COND(!inst);
- } break;
- case RS::INSTANCE_MULTIMESH: {
- inst = multimesh_owner.getornull(p_base);
- ERR_FAIL_COND(!inst);
- } break;
- case RS::INSTANCE_IMMEDIATE: {
- inst = immediate_owner.getornull(p_base);
- ERR_FAIL_COND(!inst);
- } break;
- /*case RS::INSTANCE_PARTICLES: {
- inst = particles_owner.getornull(p_base);
- ERR_FAIL_COND(!inst);
- } break;*/
- case RS::INSTANCE_REFLECTION_PROBE: {
- inst = reflection_probe_owner.getornull(p_base);
- ERR_FAIL_COND(!inst);
- } break;
- case RS::INSTANCE_LIGHT: {
- inst = light_owner.getornull(p_base);
- ERR_FAIL_COND(!inst);
- } break;
- /*case RS::INSTANCE_GI_PROBE: {
- inst = gi_probe_owner.getornull(p_base);
- ERR_FAIL_COND(!inst);
- } break; */
- case RS::INSTANCE_LIGHTMAP_CAPTURE: {
- inst = lightmap_capture_data_owner.getornull(p_base);
- ERR_FAIL_COND(!inst);
- } break;
- default: {
- ERR_FAIL();
- }
- }
-
- inst->instance_list.remove(&p_instance->dependency_item);
-}
-
-/* RENDER TARGET */
-
-void RasterizerStorageGLES2::_render_target_allocate(RenderTarget *rt) {
- // do not allocate a render target with no size
- if (rt->width <= 0 || rt->height <= 0)
- return;
-
- // do not allocate a render target that is attached to the screen
- if (rt->flags[RENDER_TARGET_DIRECT_TO_SCREEN]) {
- rt->fbo = RasterizerStorageGLES2::system_fbo;
- return;
- }
-
- GLuint color_internal_format;
- GLuint color_format;
- GLuint color_type = GL_UNSIGNED_BYTE;
- Image::Format image_format;
-
- if (rt->flags[RasterizerStorage::RENDER_TARGET_TRANSPARENT]) {
-#ifdef GLES_OVER_GL
- color_internal_format = GL_RGBA8;
-#else
- color_internal_format = GL_RGBA;
-#endif
- color_format = GL_RGBA;
- image_format = Image::FORMAT_RGBA8;
- } else {
-#ifdef GLES_OVER_GL
- color_internal_format = GL_RGB8;
-#else
- color_internal_format = GL_RGB;
-#endif
- color_format = GL_RGB;
- image_format = Image::FORMAT_RGB8;
- }
-
- rt->used_dof_blur_near = false;
- rt->mip_maps_allocated = false;
-
- {
- /* Front FBO */
-
- Texture *texture = texture_owner.getornull(rt->texture);
- ERR_FAIL_COND(!texture);
-
- // framebuffer
- glGenFramebuffers(1, &rt->fbo);
- glBindFramebuffer(GL_FRAMEBUFFER, rt->fbo);
-
- // color
- glGenTextures(1, &rt->color);
- glBindTexture(GL_TEXTURE_2D, rt->color);
-
- glTexImage2D(GL_TEXTURE_2D, 0, color_internal_format, rt->width, rt->height, 0, color_format, color_type, nullptr);
-
- if (texture->flags & RS::TEXTURE_FLAG_FILTER) {
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
- } else {
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
- }
-
- glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);
- glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);
-
- glFramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, rt->color, 0);
-
- // depth
-
- if (config.support_depth_texture) {
- glGenTextures(1, &rt->depth);
- glBindTexture(GL_TEXTURE_2D, rt->depth);
- glTexImage2D(GL_TEXTURE_2D, 0, config.depth_internalformat, rt->width, rt->height, 0, GL_DEPTH_COMPONENT, config.depth_type, nullptr);
-
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);
-
- glFramebufferTexture2D(GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, GL_TEXTURE_2D, rt->depth, 0);
- } else {
- glGenRenderbuffers(1, &rt->depth);
- glBindRenderbuffer(GL_RENDERBUFFER, rt->depth);
-
- glRenderbufferStorage(GL_RENDERBUFFER, config.depth_buffer_internalformat, rt->width, rt->height);
-
- glFramebufferRenderbuffer(GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, GL_RENDERBUFFER, rt->depth);
- }
-
- GLenum status = glCheckFramebufferStatus(GL_FRAMEBUFFER);
-
- if (status != GL_FRAMEBUFFER_COMPLETE) {
- glDeleteFramebuffers(1, &rt->fbo);
- if (config.support_depth_texture) {
- glDeleteTextures(1, &rt->depth);
- } else {
- glDeleteRenderbuffers(1, &rt->depth);
- }
-
- glDeleteTextures(1, &rt->color);
- rt->fbo = 0;
- rt->width = 0;
- rt->height = 0;
- rt->color = 0;
- rt->depth = 0;
- texture->tex_id = 0;
- texture->active = false;
- WARN_PRINT("Could not create framebuffer!!");
- return;
- }
-
- texture->format = image_format;
- texture->gl_format_cache = color_format;
- texture->gl_type_cache = GL_UNSIGNED_BYTE;
- texture->gl_internal_format_cache = color_internal_format;
- texture->tex_id = rt->color;
- texture->width = rt->width;
- texture->alloc_width = rt->width;
- texture->height = rt->height;
- texture->alloc_height = rt->height;
- texture->active = true;
-
- texture_set_flags(rt->texture, texture->flags);
- }
-
- /* BACK FBO */
- /* For MSAA */
-
-#ifndef JAVASCRIPT_ENABLED
- if (rt->msaa >= RS::VIEWPORT_MSAA_2X && rt->msaa <= RS::VIEWPORT_MSAA_16X && config.multisample_supported) {
- rt->multisample_active = true;
-
- static const int msaa_value[] = { 0, 2, 4, 8, 16 };
- int msaa = msaa_value[rt->msaa];
-
- int max_samples = 0;
- glGetIntegerv(GL_MAX_SAMPLES, &max_samples);
- if (msaa > max_samples) {
- WARN_PRINT("MSAA must be <= GL_MAX_SAMPLES, falling-back to GL_MAX_SAMPLES = " + itos(max_samples));
- msaa = max_samples;
- }
-
- //regular fbo
- glGenFramebuffers(1, &rt->multisample_fbo);
- glBindFramebuffer(GL_FRAMEBUFFER, rt->multisample_fbo);
-
- glGenRenderbuffers(1, &rt->multisample_depth);
- glBindRenderbuffer(GL_RENDERBUFFER, rt->multisample_depth);
- glRenderbufferStorageMultisample(GL_RENDERBUFFER, msaa, config.depth_buffer_internalformat, rt->width, rt->height);
-
- glFramebufferRenderbuffer(GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, GL_RENDERBUFFER, rt->multisample_depth);
-
-#if defined(GLES_OVER_GL) || defined(IPHONE_ENABLED)
-
- glGenRenderbuffers(1, &rt->multisample_color);
- glBindRenderbuffer(GL_RENDERBUFFER, rt->multisample_color);
- glRenderbufferStorageMultisample(GL_RENDERBUFFER, msaa, color_internal_format, rt->width, rt->height);
-
- glFramebufferRenderbuffer(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_RENDERBUFFER, rt->multisample_color);
-#elif ANDROID_ENABLED
- // Render to a texture in android
- glGenTextures(1, &rt->multisample_color);
- glBindTexture(GL_TEXTURE_2D, rt->multisample_color);
-
- glTexImage2D(GL_TEXTURE_2D, 0, color_internal_format, rt->width, rt->height, 0, color_format, color_type, nullptr);
-
- // multisample buffer is same size as front buffer, so just use nearest
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
-
- glFramebufferTexture2DMultisample(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, rt->multisample_color, 0, msaa);
-#endif
-
- GLenum status = glCheckFramebufferStatus(GL_FRAMEBUFFER);
-
- if (status != GL_FRAMEBUFFER_COMPLETE) {
- // Delete allocated resources and default to no MSAA
- WARN_PRINT_ONCE("Cannot allocate back framebuffer for MSAA");
- printf("err status: %x\n", status);
- config.multisample_supported = false;
- rt->multisample_active = false;
-
- glDeleteFramebuffers(1, &rt->multisample_fbo);
- rt->multisample_fbo = 0;
-
- glDeleteRenderbuffers(1, &rt->multisample_depth);
- rt->multisample_depth = 0;
-#ifdef ANDROID_ENABLED
- glDeleteTextures(1, &rt->multisample_color);
-#else
- glDeleteRenderbuffers(1, &rt->multisample_color);
-#endif
- rt->multisample_color = 0;
- }
-
- glBindRenderbuffer(GL_RENDERBUFFER, 0);
- glBindFramebuffer(GL_FRAMEBUFFER, 0);
-#ifdef ANDROID_ENABLED
- glBindTexture(GL_TEXTURE_2D, 0);
-#endif
-
- } else
-#endif // JAVASCRIPT_ENABLED
- {
- rt->multisample_active = false;
- }
-
- glClearColor(0, 0, 0, 0);
- glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
-
- // copy texscreen buffers
- if (!(rt->flags[RasterizerStorage::RENDER_TARGET_NO_SAMPLING])) {
- glGenTextures(1, &rt->copy_screen_effect.color);
- glBindTexture(GL_TEXTURE_2D, rt->copy_screen_effect.color);
-
- if (rt->flags[RasterizerStorage::RENDER_TARGET_TRANSPARENT]) {
- glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, rt->width, rt->height, 0, GL_RGBA, GL_UNSIGNED_BYTE, nullptr);
- } else {
- glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, rt->width, rt->height, 0, GL_RGB, GL_UNSIGNED_BYTE, nullptr);
- }
-
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
- glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);
- glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);
-
- glGenFramebuffers(1, &rt->copy_screen_effect.fbo);
- glBindFramebuffer(GL_FRAMEBUFFER, rt->copy_screen_effect.fbo);
- glFramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, rt->copy_screen_effect.color, 0);
-
- glClearColor(0, 0, 0, 0);
- glClear(GL_COLOR_BUFFER_BIT);
-
- GLenum status = glCheckFramebufferStatus(GL_FRAMEBUFFER);
- if (status != GL_FRAMEBUFFER_COMPLETE) {
- _render_target_clear(rt);
- ERR_FAIL_COND(status != GL_FRAMEBUFFER_COMPLETE);
- }
- }
-
- // Allocate mipmap chains for post_process effects
- if (!rt->flags[RasterizerStorage::RENDER_TARGET_NO_3D] && rt->width >= 2 && rt->height >= 2) {
- for (int i = 0; i < 2; i++) {
- ERR_FAIL_COND(rt->mip_maps[i].sizes.size());
- int w = rt->width;
- int h = rt->height;
-
- if (i > 0) {
- w >>= 1;
- h >>= 1;
- }
-
- int level = 0;
- int fb_w = w;
- int fb_h = h;
-
- while (true) {
- RenderTarget::MipMaps::Size mm;
- mm.width = w;
- mm.height = h;
- rt->mip_maps[i].sizes.push_back(mm);
-
- w >>= 1;
- h >>= 1;
-
- if (w < 2 || h < 2)
- break;
-
- level++;
- }
-
- GLsizei width = fb_w;
- GLsizei height = fb_h;
-
- if (config.render_to_mipmap_supported) {
- glGenTextures(1, &rt->mip_maps[i].color);
- glBindTexture(GL_TEXTURE_2D, rt->mip_maps[i].color);
-
- for (int l = 0; l < level + 1; l++) {
- glTexImage2D(GL_TEXTURE_2D, l, color_internal_format, width, height, 0, color_format, color_type, nullptr);
- width = MAX(1, (width / 2));
- height = MAX(1, (height / 2));
- }
-#ifdef GLES_OVER_GL
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_BASE_LEVEL, 0);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAX_LEVEL, level);
-#endif
- } else {
- // Can't render to specific levels of a mipmap in ES 2.0 or Webgl so create a texture for each level
- for (int l = 0; l < level + 1; l++) {
- glGenTextures(1, &rt->mip_maps[i].sizes.write[l].color);
- glBindTexture(GL_TEXTURE_2D, rt->mip_maps[i].sizes[l].color);
- glTexImage2D(GL_TEXTURE_2D, 0, color_internal_format, width, height, 0, color_format, color_type, nullptr);
- width = MAX(1, (width / 2));
- height = MAX(1, (height / 2));
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
- glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);
- glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);
- }
- }
-
- glDisable(GL_SCISSOR_TEST);
- glColorMask(1, 1, 1, 1);
- glDepthMask(GL_TRUE);
-
- for (int j = 0; j < rt->mip_maps[i].sizes.size(); j++) {
- RenderTarget::MipMaps::Size &mm = rt->mip_maps[i].sizes.write[j];
-
- glGenFramebuffers(1, &mm.fbo);
- glBindFramebuffer(GL_FRAMEBUFFER, mm.fbo);
-
- if (config.render_to_mipmap_supported) {
- glFramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, rt->mip_maps[i].color, j);
- } else {
- glBindTexture(GL_TEXTURE_2D, rt->mip_maps[i].sizes[j].color);
- glFramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, rt->mip_maps[i].sizes[j].color, 0);
- }
-
- bool used_depth = false;
- if (j == 0 && i == 0) { //use always
- if (config.support_depth_texture) {
- glFramebufferTexture2D(GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, GL_TEXTURE_2D, rt->depth, 0);
- } else {
- glFramebufferRenderbuffer(GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, GL_RENDERBUFFER, rt->depth);
- }
- used_depth = true;
- }
-
- GLenum status = glCheckFramebufferStatus(GL_FRAMEBUFFER);
- if (status != GL_FRAMEBUFFER_COMPLETE) {
- WARN_PRINT_ONCE("Cannot allocate mipmaps for 3D post processing effects");
- glBindFramebuffer(GL_FRAMEBUFFER, RasterizerStorageGLES2::system_fbo);
- return;
- }
-
- glClearColor(1.0, 0.0, 1.0, 0.0);
- glClear(GL_COLOR_BUFFER_BIT);
- if (used_depth) {
- glClearDepth(1.0);
- glClear(GL_DEPTH_BUFFER_BIT);
- }
- }
-
- rt->mip_maps[i].levels = level;
-
- if (config.render_to_mipmap_supported) {
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR_MIPMAP_LINEAR);
- glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);
- glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);
- }
- }
- rt->mip_maps_allocated = true;
- }
-
- glBindFramebuffer(GL_FRAMEBUFFER, RasterizerStorageGLES2::system_fbo);
-}
-
-void RasterizerStorageGLES2::_render_target_clear(RenderTarget *rt) {
- // there is nothing to clear when DIRECT_TO_SCREEN is used
- if (rt->flags[RENDER_TARGET_DIRECT_TO_SCREEN])
- return;
-
- if (rt->fbo) {
- glDeleteFramebuffers(1, &rt->fbo);
- glDeleteTextures(1, &rt->color);
- rt->fbo = 0;
- }
-
- if (rt->external.fbo != 0) {
- // free this
- glDeleteFramebuffers(1, &rt->external.fbo);
-
- // clean up our texture
- Texture *t = texture_owner.getornull(rt->external.texture);
- t->alloc_height = 0;
- t->alloc_width = 0;
- t->width = 0;
- t->height = 0;
- t->active = false;
- texture_owner.free(rt->external.texture);
- memdelete(t);
-
- rt->external.fbo = 0;
- }
-
- if (rt->depth) {
- if (config.support_depth_texture) {
- glDeleteTextures(1, &rt->depth);
- } else {
- glDeleteRenderbuffers(1, &rt->depth);
- }
-
- rt->depth = 0;
- }
-
- Texture *tex = texture_owner.getornull(rt->texture);
- tex->alloc_height = 0;
- tex->alloc_width = 0;
- tex->width = 0;
- tex->height = 0;
- tex->active = false;
-
- if (rt->copy_screen_effect.color) {
- glDeleteFramebuffers(1, &rt->copy_screen_effect.fbo);
- rt->copy_screen_effect.fbo = 0;
-
- glDeleteTextures(1, &rt->copy_screen_effect.color);
- rt->copy_screen_effect.color = 0;
- }
-
- for (int i = 0; i < 2; i++) {
- if (rt->mip_maps[i].sizes.size()) {
- for (int j = 0; j < rt->mip_maps[i].sizes.size(); j++) {
- glDeleteFramebuffers(1, &rt->mip_maps[i].sizes[j].fbo);
- glDeleteTextures(1, &rt->mip_maps[i].sizes[j].color);
- }
-
- glDeleteTextures(1, &rt->mip_maps[i].color);
- rt->mip_maps[i].sizes.clear();
- rt->mip_maps[i].levels = 0;
- rt->mip_maps[i].color = 0;
- }
- }
-
- if (rt->multisample_active) {
- glDeleteFramebuffers(1, &rt->multisample_fbo);
- rt->multisample_fbo = 0;
-
- glDeleteRenderbuffers(1, &rt->multisample_depth);
- rt->multisample_depth = 0;
-#ifdef ANDROID_ENABLED
- glDeleteTextures(1, &rt->multisample_color);
-#else
- glDeleteRenderbuffers(1, &rt->multisample_color);
-#endif
- rt->multisample_color = 0;
- }
-}
-
-RID RasterizerStorageGLES2::render_target_create() {
- RenderTarget *rt = memnew(RenderTarget);
-
- Texture *t = memnew(Texture);
-
- t->type = RS::TEXTURE_TYPE_2D;
- t->flags = 0;
- t->width = 0;
- t->height = 0;
- t->alloc_height = 0;
- t->alloc_width = 0;
- t->format = Image::FORMAT_R8;
- t->target = GL_TEXTURE_2D;
- t->gl_format_cache = 0;
- t->gl_internal_format_cache = 0;
- t->gl_type_cache = 0;
- t->data_size = 0;
- t->total_data_size = 0;
- t->ignore_mipmaps = false;
- t->compressed = false;
- t->mipmaps = 1;
- t->active = true;
- t->tex_id = 0;
- t->render_target = rt;
-
- rt->texture = texture_owner.make_rid(t);
-
- return render_target_owner.make_rid(rt);
-}
-
-void RasterizerStorageGLES2::render_target_set_position(RID p_render_target, int p_x, int p_y) {
- RenderTarget *rt = render_target_owner.getornull(p_render_target);
- ERR_FAIL_COND(!rt);
-
- rt->x = p_x;
- rt->y = p_y;
-}
-
-void RasterizerStorageGLES2::render_target_set_size(RID p_render_target, int p_width, int p_height) {
- RenderTarget *rt = render_target_owner.getornull(p_render_target);
- ERR_FAIL_COND(!rt);
-
- if (p_width == rt->width && p_height == rt->height)
- return;
-
- _render_target_clear(rt);
-
- rt->width = p_width;
- rt->height = p_height;
-
- _render_target_allocate(rt);
-}
-
-RID RasterizerStorageGLES2::render_target_get_texture(RID p_render_target) const {
- RenderTarget *rt = render_target_owner.getornull(p_render_target);
- ERR_FAIL_COND_V(!rt, RID());
-
- if (rt->external.fbo == 0) {
- return rt->texture;
- } else {
- return rt->external.texture;
- }
-}
-
-void RasterizerStorageGLES2::render_target_set_external_texture(RID p_render_target, unsigned int p_texture_id) {
- RenderTarget *rt = render_target_owner.getornull(p_render_target);
- ERR_FAIL_COND(!rt);
-
- if (p_texture_id == 0) {
- if (rt->external.fbo != 0) {
- // free this
- glDeleteFramebuffers(1, &rt->external.fbo);
-
- // and this
- if (rt->external.depth != 0) {
- glDeleteRenderbuffers(1, &rt->external.depth);
- }
-
- // clean up our texture
- Texture *t = texture_owner.getornull(rt->external.texture);
- t->alloc_height = 0;
- t->alloc_width = 0;
- t->width = 0;
- t->height = 0;
- t->active = false;
- texture_owner.free(rt->external.texture);
- memdelete(t);
-
- rt->external.fbo = 0;
- rt->external.color = 0;
- rt->external.depth = 0;
- }
- } else {
- Texture *t;
-
- if (rt->external.fbo == 0) {
- // create our fbo
- glGenFramebuffers(1, &rt->external.fbo);
- glBindFramebuffer(GL_FRAMEBUFFER, rt->external.fbo);
-
- // allocate a texture
- t = memnew(Texture);
-
- t->type = RS::TEXTURE_TYPE_2D;
- t->flags = 0;
- t->width = 0;
- t->height = 0;
- t->alloc_height = 0;
- t->alloc_width = 0;
- t->format = Image::FORMAT_RGBA8;
- t->target = GL_TEXTURE_2D;
- t->gl_format_cache = 0;
- t->gl_internal_format_cache = 0;
- t->gl_type_cache = 0;
- t->data_size = 0;
- t->compressed = false;
- t->srgb = false;
- t->total_data_size = 0;
- t->ignore_mipmaps = false;
- t->mipmaps = 1;
- t->active = true;
- t->tex_id = 0;
- t->render_target = rt;
-
- rt->external.texture = texture_owner.make_rid(t);
-
- } else {
- // bind our frame buffer
- glBindFramebuffer(GL_FRAMEBUFFER, rt->external.fbo);
-
- // find our texture
- t = texture_owner.getornull(rt->external.texture);
- }
-
- // set our texture
- t->tex_id = p_texture_id;
- rt->external.color = p_texture_id;
-
- // size shouldn't be different
- t->width = rt->width;
- t->height = rt->height;
- t->alloc_height = rt->width;
- t->alloc_width = rt->height;
-
- // Switch our texture on our frame buffer
-#if ANDROID_ENABLED
- if (rt->msaa >= RS::VIEWPORT_MSAA_EXT_2X && rt->msaa <= RS::VIEWPORT_MSAA_EXT_4X) {
- // This code only applies to the Oculus Go and Oculus Quest. Due to the the tiled nature
- // of the GPU we can do a single render pass by rendering directly into our texture chains
- // texture and apply MSAA as we render.
-
- // On any other hardware these two modes are ignored and we do not have any MSAA,
- // the normal MSAA modes need to be used to enable our two pass approach
-
- static const int msaa_value[] = { 2, 4 };
- int msaa = msaa_value[rt->msaa - RS::VIEWPORT_MSAA_EXT_2X];
-
- if (rt->external.depth == 0) {
- // create a multisample depth buffer, we're not reusing Godots because Godot's didn't get created..
- glGenRenderbuffers(1, &rt->external.depth);
- glBindRenderbuffer(GL_RENDERBUFFER, rt->external.depth);
- glRenderbufferStorageMultisample(GL_RENDERBUFFER, msaa, config.depth_buffer_internalformat, rt->width, rt->height);
- glFramebufferRenderbuffer(GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, GL_RENDERBUFFER, rt->external.depth);
- }
-
- // and set our external texture as the texture...
- glFramebufferTexture2DMultisample(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, p_texture_id, 0, msaa);
-
- } else
-#endif
- {
- // set our texture as the destination for our framebuffer
- glFramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, p_texture_id, 0);
-
- // seeing we're rendering into this directly, better also use our depth buffer, just use our existing one :)
- if (config.support_depth_texture) {
- glFramebufferTexture2D(GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, GL_TEXTURE_2D, rt->depth, 0);
- } else {
- glFramebufferRenderbuffer(GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, GL_RENDERBUFFER, rt->depth);
- }
- }
-
- // check status and unbind
- GLenum status = glCheckFramebufferStatus(GL_FRAMEBUFFER);
- glBindFramebuffer(GL_FRAMEBUFFER, RasterizerStorageGLES2::system_fbo);
-
- if (status != GL_FRAMEBUFFER_COMPLETE) {
- printf("framebuffer fail, status: %x\n", status);
- }
-
- ERR_FAIL_COND(status != GL_FRAMEBUFFER_COMPLETE);
- }
-}
-
-void RasterizerStorageGLES2::render_target_set_flag(RID p_render_target, RenderTargetFlags p_flag, bool p_value) {
- RenderTarget *rt = render_target_owner.getornull(p_render_target);
- ERR_FAIL_COND(!rt);
-
- // When setting DIRECT_TO_SCREEN, you need to clear before the value is set, but allocate after as
- // those functions change how they operate depending on the value of DIRECT_TO_SCREEN
- if (p_flag == RENDER_TARGET_DIRECT_TO_SCREEN && p_value != rt->flags[RENDER_TARGET_DIRECT_TO_SCREEN]) {
- _render_target_clear(rt);
- rt->flags[p_flag] = p_value;
- _render_target_allocate(rt);
- }
-
- rt->flags[p_flag] = p_value;
-
- switch (p_flag) {
- case RENDER_TARGET_TRANSPARENT:
- case RENDER_TARGET_HDR:
- case RENDER_TARGET_NO_3D:
- case RENDER_TARGET_NO_SAMPLING:
- case RENDER_TARGET_NO_3D_EFFECTS: {
- //must reset for these formats
- _render_target_clear(rt);
- _render_target_allocate(rt);
-
- } break;
- default: {
- }
- }
-}
-
-bool RasterizerStorageGLES2::render_target_was_used(RID p_render_target) {
- RenderTarget *rt = render_target_owner.getornull(p_render_target);
- ERR_FAIL_COND_V(!rt, false);
-
- return rt->used_in_frame;
-}
-
-void RasterizerStorageGLES2::render_target_set_as_unused(RID p_render_target) {
- RenderTarget *rt = render_target_owner.getornull(p_render_target);
- ERR_FAIL_COND(!rt);
-
- rt->used_in_frame = false;
-}
-
-void RasterizerStorageGLES2::render_target_set_msaa(RID p_render_target, RS::ViewportMSAA p_msaa) {
- RenderTarget *rt = render_target_owner.getornull(p_render_target);
- ERR_FAIL_COND(!rt);
-
- if (rt->msaa == p_msaa)
- return;
-
- if (!config.multisample_supported) {
- ERR_PRINT("MSAA not supported on this hardware.");
- return;
- }
-
- _render_target_clear(rt);
- rt->msaa = p_msaa;
- _render_target_allocate(rt);
-}
-
-/* CANVAS SHADOW */
-
-RID RasterizerStorageGLES2::canvas_light_shadow_buffer_create(int p_width) {
- CanvasLightShadow *cls = memnew(CanvasLightShadow);
-
- if (p_width > config.max_texture_size)
- p_width = config.max_texture_size;
-
- cls->size = p_width;
- cls->height = 16;
-
- glActiveTexture(GL_TEXTURE0);
-
- glGenFramebuffers(1, &cls->fbo);
- glBindFramebuffer(GL_FRAMEBUFFER, cls->fbo);
-
- glGenRenderbuffers(1, &cls->depth);
- glBindRenderbuffer(GL_RENDERBUFFER, cls->depth);
- glRenderbufferStorage(GL_RENDERBUFFER, config.depth_buffer_internalformat, cls->size, cls->height);
- glFramebufferRenderbuffer(GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, GL_RENDERBUFFER, cls->depth);
-
- glGenTextures(1, &cls->distance);
- glBindTexture(GL_TEXTURE_2D, cls->distance);
- if (config.use_rgba_2d_shadows) {
- glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, cls->size, cls->height, 0, GL_RGBA, GL_UNSIGNED_BYTE, nullptr);
- } else {
-#ifdef GLES_OVER_GL
- glTexImage2D(GL_TEXTURE_2D, 0, GL_R32F, cls->size, cls->height, 0, _RED_OES, GL_FLOAT, nullptr);
-#else
- glTexImage2D(GL_TEXTURE_2D, 0, GL_FLOAT, cls->size, cls->height, 0, _RED_OES, GL_FLOAT, nullptr);
-#endif
- }
-
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
- glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);
- glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);
- glFramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, cls->distance, 0);
-
- GLenum status = glCheckFramebufferStatus(GL_FRAMEBUFFER);
- //printf("errnum: %x\n",status);
- glBindFramebuffer(GL_FRAMEBUFFER, RasterizerStorageGLES2::system_fbo);
-
- if (status != GL_FRAMEBUFFER_COMPLETE) {
- memdelete(cls);
- ERR_FAIL_COND_V(status != GL_FRAMEBUFFER_COMPLETE, RID());
- }
-
- return canvas_light_shadow_owner.make_rid(cls);
-}
-
-/* LIGHT SHADOW MAPPING */
-
-RID RasterizerStorageGLES2::canvas_light_occluder_create() {
- CanvasOccluder *co = memnew(CanvasOccluder);
- co->index_id = 0;
- co->vertex_id = 0;
- co->len = 0;
-
- return canvas_occluder_owner.make_rid(co);
-}
-
-void RasterizerStorageGLES2::canvas_light_occluder_set_polylines(RID p_occluder, const Vector<Vector2> &p_lines) {
- CanvasOccluder *co = canvas_occluder_owner.getornull(p_occluder);
- ERR_FAIL_COND(!co);
-
- co->lines = p_lines;
-
- if (p_lines.size() != co->len) {
- if (co->index_id)
- glDeleteBuffers(1, &co->index_id);
- if (co->vertex_id)
- glDeleteBuffers(1, &co->vertex_id);
-
- co->index_id = 0;
- co->vertex_id = 0;
- co->len = 0;
- }
-
- if (p_lines.size()) {
- Vector<float> geometry;
- Vector<uint16_t> indices;
- int lc = p_lines.size();
-
- geometry.resize(lc * 6);
- indices.resize(lc * 3);
-
- float *vw = geometry.ptrw();
- uint16_t *iw = indices.ptrw();
-
- const Vector2 *lr = p_lines.ptr();
-
- const int POLY_HEIGHT = 16384;
-
- for (int i = 0; i < lc / 2; i++) {
- vw[i * 12 + 0] = lr[i * 2 + 0].x;
- vw[i * 12 + 1] = lr[i * 2 + 0].y;
- vw[i * 12 + 2] = POLY_HEIGHT;
-
- vw[i * 12 + 3] = lr[i * 2 + 1].x;
- vw[i * 12 + 4] = lr[i * 2 + 1].y;
- vw[i * 12 + 5] = POLY_HEIGHT;
-
- vw[i * 12 + 6] = lr[i * 2 + 1].x;
- vw[i * 12 + 7] = lr[i * 2 + 1].y;
- vw[i * 12 + 8] = -POLY_HEIGHT;
-
- vw[i * 12 + 9] = lr[i * 2 + 0].x;
- vw[i * 12 + 10] = lr[i * 2 + 0].y;
- vw[i * 12 + 11] = -POLY_HEIGHT;
-
- iw[i * 6 + 0] = i * 4 + 0;
- iw[i * 6 + 1] = i * 4 + 1;
- iw[i * 6 + 2] = i * 4 + 2;
-
- iw[i * 6 + 3] = i * 4 + 2;
- iw[i * 6 + 4] = i * 4 + 3;
- iw[i * 6 + 5] = i * 4 + 0;
- }
-
- //if same buffer len is being set, just use BufferSubData to avoid a pipeline flush
-
- if (!co->vertex_id) {
- glGenBuffers(1, &co->vertex_id);
- glBindBuffer(GL_ARRAY_BUFFER, co->vertex_id);
- glBufferData(GL_ARRAY_BUFFER, lc * 6 * sizeof(real_t), vw.ptr(), GL_STATIC_DRAW);
- } else {
- glBindBuffer(GL_ARRAY_BUFFER, co->vertex_id);
- glBufferSubData(GL_ARRAY_BUFFER, 0, lc * 6 * sizeof(real_t), vw.ptr());
- }
-
- glBindBuffer(GL_ARRAY_BUFFER, 0); //unbind
-
- if (!co->index_id) {
- glGenBuffers(1, &co->index_id);
- glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, co->index_id);
- glBufferData(GL_ELEMENT_ARRAY_BUFFER, lc * 3 * sizeof(uint16_t), iw.ptr(), GL_DYNAMIC_DRAW);
- } else {
- glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, co->index_id);
- glBufferSubData(GL_ELEMENT_ARRAY_BUFFER, 0, lc * 3 * sizeof(uint16_t), iw.ptr());
- }
-
- glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, 0); //unbind
-
- co->len = lc;
- }
-}
-
-RS::InstanceType RasterizerStorageGLES2::get_base_type(RID p_rid) const {
- if (mesh_owner.owns(p_rid)) {
- return RS::INSTANCE_MESH;
- } else if (light_owner.owns(p_rid)) {
- return RS::INSTANCE_LIGHT;
- } else if (multimesh_owner.owns(p_rid)) {
- return RS::INSTANCE_MULTIMESH;
- } else if (immediate_owner.owns(p_rid)) {
- return RS::INSTANCE_IMMEDIATE;
- } else if (reflection_probe_owner.owns(p_rid)) {
- return RS::INSTANCE_REFLECTION_PROBE;
- } else if (lightmap_capture_data_owner.owns(p_rid)) {
- return RS::INSTANCE_LIGHTMAP_CAPTURE;
- } else {
- return RS::INSTANCE_NONE;
- }
-}
-
-bool RasterizerStorageGLES2::free(RID p_rid) {
- if (render_target_owner.owns(p_rid)) {
- RenderTarget *rt = render_target_owner.getornull(p_rid);
- _render_target_clear(rt);
-
- Texture *t = texture_owner.getornull(rt->texture);
- texture_owner.free(rt->texture);
- memdelete(t);
- render_target_owner.free(p_rid);
- memdelete(rt);
-
- return true;
- } else if (texture_owner.owns(p_rid)) {
- Texture *t = texture_owner.getornull(p_rid);
- // can't free a render target texture
- ERR_FAIL_COND_V(t->render_target, true);
-
- info.texture_mem -= t->total_data_size;
- texture_owner.free(p_rid);
- memdelete(t);
-
- return true;
- } else if (sky_owner.owns(p_rid)) {
- Sky *sky = sky_owner.getornull(p_rid);
- sky_set_texture(p_rid, RID(), 256);
- sky_owner.free(p_rid);
- memdelete(sky);
-
- return true;
- } else if (shader_owner.owns(p_rid)) {
- Shader *shader = shader_owner.getornull(p_rid);
-
- if (shader->shader && shader->custom_code_id) {
- shader->shader->free_custom_shader(shader->custom_code_id);
- }
-
- if (shader->dirty_list.in_list()) {
- _shader_dirty_list.remove(&shader->dirty_list);
- }
-
- while (shader->materials.first()) {
- Material *m = shader->materials.first()->self();
-
- m->shader = nullptr;
- _material_make_dirty(m);
-
- shader->materials.remove(shader->materials.first());
- }
-
- shader_owner.free(p_rid);
- memdelete(shader);
-
- return true;
- } else if (material_owner.owns(p_rid)) {
- Material *m = material_owner.getornull(p_rid);
-
- if (m->shader) {
- m->shader->materials.remove(&m->list);
- }
-
- for (Map<Geometry *, int>::Element *E = m->geometry_owners.front(); E; E = E->next()) {
- Geometry *g = E->key();
- g->material = RID();
- }
-
- for (Map<RasterizerScene::InstanceBase *, int>::Element *E = m->instance_owners.front(); E; E = E->next()) {
- RasterizerScene::InstanceBase *ins = E->key();
-
- if (ins->material_override == p_rid) {
- ins->material_override = RID();
- }
-
- for (int i = 0; i < ins->materials.size(); i++) {
- if (ins->materials[i] == p_rid) {
- ins->materials.write[i] = RID();
- }
- }
- }
-
- material_owner.free(p_rid);
- memdelete(m);
-
- return true;
- } else if (skeleton_owner.owns(p_rid)) {
- Skeleton *s = skeleton_owner.getornull(p_rid);
-
- if (s->update_list.in_list()) {
- skeleton_update_list.remove(&s->update_list);
- }
-
- for (Set<RasterizerScene::InstanceBase *>::Element *E = s->instances.front(); E; E = E->next()) {
- E->get()->skeleton = RID();
- }
-
- skeleton_allocate(p_rid, 0, false);
-
- if (s->tex_id) {
- glDeleteTextures(1, &s->tex_id);
- }
-
- skeleton_owner.free(p_rid);
- memdelete(s);
-
- return true;
- } else if (mesh_owner.owns(p_rid)) {
- Mesh *mesh = mesh_owner.getornull(p_rid);
-
- mesh->instance_remove_deps();
- mesh_clear(p_rid);
-
- while (mesh->multimeshes.first()) {
- MultiMesh *multimesh = mesh->multimeshes.first()->self();
- multimesh->mesh = RID();
- multimesh->dirty_aabb = true;
-
- mesh->multimeshes.remove(mesh->multimeshes.first());
-
- if (!multimesh->update_list.in_list()) {
- multimesh_update_list.add(&multimesh->update_list);
- }
- }
-
- mesh_owner.free(p_rid);
- memdelete(mesh);
-
- return true;
- } else if (multimesh_owner.owns(p_rid)) {
- MultiMesh *multimesh = multimesh_owner.getornull(p_rid);
- multimesh->instance_remove_deps();
-
- if (multimesh->mesh.is_valid()) {
- Mesh *mesh = mesh_owner.getornull(multimesh->mesh);
- if (mesh) {
- mesh->multimeshes.remove(&multimesh->mesh_list);
- }
- }
-
- multimesh_allocate(p_rid, 0, RS::MULTIMESH_TRANSFORM_3D, RS::MULTIMESH_COLOR_NONE);
-
- update_dirty_multimeshes();
-
- multimesh_owner.free(p_rid);
- memdelete(multimesh);
-
- return true;
- } else if (immediate_owner.owns(p_rid)) {
- Immediate *im = immediate_owner.getornull(p_rid);
- im->instance_remove_deps();
-
- immediate_owner.free(p_rid);
- memdelete(im);
-
- return true;
- } else if (light_owner.owns(p_rid)) {
- Light *light = light_owner.getornull(p_rid);
- light->instance_remove_deps();
-
- light_owner.free(p_rid);
- memdelete(light);
-
- return true;
- } else if (reflection_probe_owner.owns(p_rid)) {
- // delete the texture
- ReflectionProbe *reflection_probe = reflection_probe_owner.getornull(p_rid);
- reflection_probe->instance_remove_deps();
-
- reflection_probe_owner.free(p_rid);
- memdelete(reflection_probe);
-
- return true;
- } else if (lightmap_capture_data_owner.owns(p_rid)) {
- // delete the texture
- LightmapCapture *lightmap_capture = lightmap_capture_data_owner.getornull(p_rid);
- lightmap_capture->instance_remove_deps();
-
- lightmap_capture_data_owner.free(p_rid);
- memdelete(lightmap_capture);
- return true;
-
- } else if (canvas_occluder_owner.owns(p_rid)) {
- CanvasOccluder *co = canvas_occluder_owner.getornull(p_rid);
- if (co->index_id)
- glDeleteBuffers(1, &co->index_id);
- if (co->vertex_id)
- glDeleteBuffers(1, &co->vertex_id);
-
- canvas_occluder_owner.free(p_rid);
- memdelete(co);
-
- return true;
-
- } else if (canvas_light_shadow_owner.owns(p_rid)) {
- CanvasLightShadow *cls = canvas_light_shadow_owner.getornull(p_rid);
- glDeleteFramebuffers(1, &cls->fbo);
- glDeleteRenderbuffers(1, &cls->depth);
- glDeleteTextures(1, &cls->distance);
- canvas_light_shadow_owner.free(p_rid);
- memdelete(cls);
-
- return true;
- } else {
- return false;
- }
-}
-
-bool RasterizerStorageGLES2::has_os_feature(const String &p_feature) const {
- if (p_feature == "pvrtc")
- return config.pvrtc_supported;
-
- if (p_feature == "s3tc")
- return config.s3tc_supported;
-
- if (p_feature == "etc")
- return config.etc1_supported;
-
- return false;
-}
-
-////////////////////////////////////////////
-
-void RasterizerStorageGLES2::set_debug_generate_wireframes(bool p_generate) {
-}
-
-void RasterizerStorageGLES2::render_info_begin_capture() {
- info.snap = info.render;
-}
-
-void RasterizerStorageGLES2::render_info_end_capture() {
- info.snap.object_count = info.render.object_count - info.snap.object_count;
- info.snap.draw_call_count = info.render.draw_call_count - info.snap.draw_call_count;
- info.snap.material_switch_count = info.render.material_switch_count - info.snap.material_switch_count;
- info.snap.surface_switch_count = info.render.surface_switch_count - info.snap.surface_switch_count;
- info.snap.shader_rebind_count = info.render.shader_rebind_count - info.snap.shader_rebind_count;
- info.snap.vertices_count = info.render.vertices_count - info.snap.vertices_count;
-}
-
-int RasterizerStorageGLES2::get_captured_render_info(RS::RenderInfo p_info) {
- switch (p_info) {
- case RS::INFO_OBJECTS_IN_FRAME: {
- return info.snap.object_count;
- } break;
- case RS::INFO_VERTICES_IN_FRAME: {
- return info.snap.vertices_count;
- } break;
- case RS::INFO_MATERIAL_CHANGES_IN_FRAME: {
- return info.snap.material_switch_count;
- } break;
- case RS::INFO_SHADER_CHANGES_IN_FRAME: {
- return info.snap.shader_rebind_count;
- } break;
- case RS::INFO_SURFACE_CHANGES_IN_FRAME: {
- return info.snap.surface_switch_count;
- } break;
- case RS::INFO_DRAW_CALLS_IN_FRAME: {
- return info.snap.draw_call_count;
- } break;
- default: {
- return get_render_info(p_info);
- }
- }
-}
-
-int RasterizerStorageGLES2::get_render_info(RS::RenderInfo p_info) {
- switch (p_info) {
- case RS::INFO_OBJECTS_IN_FRAME:
- return info.render_final.object_count;
- case RS::INFO_VERTICES_IN_FRAME:
- return info.render_final.vertices_count;
- case RS::INFO_MATERIAL_CHANGES_IN_FRAME:
- return info.render_final.material_switch_count;
- case RS::INFO_SHADER_CHANGES_IN_FRAME:
- return info.render_final.shader_rebind_count;
- case RS::INFO_SURFACE_CHANGES_IN_FRAME:
- return info.render_final.surface_switch_count;
- case RS::INFO_DRAW_CALLS_IN_FRAME:
- return info.render_final.draw_call_count;
- case RS::INFO_USAGE_VIDEO_MEM_TOTAL:
- return 0; //no idea
- case RS::INFO_VIDEO_MEM_USED:
- return info.vertex_mem + info.texture_mem;
- case RS::INFO_TEXTURE_MEM_USED:
- return info.texture_mem;
- case RS::INFO_VERTEX_MEM_USED:
- return info.vertex_mem;
- default:
- return 0; //no idea either
- }
-}
-
-String RasterizerStorageGLES2::get_video_adapter_name() const {
- return (const char *)glGetString(GL_RENDERER);
-}
-
-String RasterizerStorageGLES2::get_video_adapter_vendor() const {
- return (const char *)glGetString(GL_VENDOR);
-}
-
-void RasterizerStorageGLES2::initialize() {
- RasterizerStorageGLES2::system_fbo = 0;
-
- {
- const GLubyte *extension_string = glGetString(GL_EXTENSIONS);
-
- Vector<String> extensions = String((const char *)extension_string).split(" ");
-
- for (int i = 0; i < extensions.size(); i++) {
- config.extensions.insert(extensions[i]);
- }
- }
-
- config.keep_original_textures = false;
- config.shrink_textures_x2 = false;
- config.depth_internalformat = GL_DEPTH_COMPONENT;
- config.depth_type = GL_UNSIGNED_INT;
-
-#ifdef GLES_OVER_GL
- config.texture_3d_supported = true;
- config.texture_array_supported = config.extensions.has("GL_EXT_texture_array");
- config.float_texture_supported = true;
- config.s3tc_supported = true;
- config.pvrtc_supported = false;
- config.etc1_supported = false;
- config.support_npot_repeat_mipmap = true;
- config.depth_buffer_internalformat = GL_DEPTH_COMPONENT24;
-#else
- config.texture_3d_supported = config.extensions.has("GL_OES_texture_3D");
- config.texture_array_supported = false;
- config.float_texture_supported = config.extensions.has("GL_ARB_texture_float") || config.extensions.has("GL_OES_texture_float");
- config.s3tc_supported = config.extensions.has("GL_EXT_texture_compression_s3tc") || config.extensions.has("WEBGL_compressed_texture_s3tc");
- config.etc1_supported = config.extensions.has("GL_OES_compressed_ETC1_RGB8_texture") || config.extensions.has("WEBGL_compressed_texture_etc1");
- config.pvrtc_supported = config.extensions.has("IMG_texture_compression_pvrtc") || config.extensions.has("WEBGL_compressed_texture_pvrtc");
- config.support_npot_repeat_mipmap = config.extensions.has("GL_OES_texture_npot");
-
-#ifdef JAVASCRIPT_ENABLED
- // RenderBuffer internal format must be 16 bits in WebGL,
- // but depth_texture should default to 32 always
- // if the implementation doesn't support 32, it should just quietly use 16 instead
- // https://www.khronos.org/registry/webgl/extensions/WEBGL_depth_texture/
- config.depth_buffer_internalformat = GL_DEPTH_COMPONENT16;
- config.depth_type = GL_UNSIGNED_INT;
-#else
- // on mobile check for 24 bit depth support for RenderBufferStorage
- if (config.extensions.has("GL_OES_depth24")) {
- config.depth_buffer_internalformat = _DEPTH_COMPONENT24_OES;
- config.depth_type = GL_UNSIGNED_INT;
- } else {
- config.depth_buffer_internalformat = GL_DEPTH_COMPONENT16;
- config.depth_type = GL_UNSIGNED_SHORT;
- }
-#endif
-#endif
-
-#ifndef GLES_OVER_GL
- //Manually load extensions for android and ios
-
-#ifdef IPHONE_ENABLED
- // appears that IPhone doesn't need to dlopen TODO: test this rigorously before removing
- //void *gles2_lib = dlopen(nullptr, RTLD_LAZY);
- //glRenderbufferStorageMultisampleAPPLE = dlsym(gles2_lib, "glRenderbufferStorageMultisampleAPPLE");
- //glResolveMultisampleFramebufferAPPLE = dlsym(gles2_lib, "glResolveMultisampleFramebufferAPPLE");
-#elif ANDROID_ENABLED
-
- void *gles2_lib = dlopen("libGLESv2.so", RTLD_LAZY);
- glRenderbufferStorageMultisampleEXT = (PFNGLRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC)dlsym(gles2_lib, "glRenderbufferStorageMultisampleEXT");
- glFramebufferTexture2DMultisampleEXT = (PFNGLFRAMEBUFFERTEXTURE2DMULTISAMPLEEXTPROC)dlsym(gles2_lib, "glFramebufferTexture2DMultisampleEXT");
- glTexImage3DOES = (PFNGLTEXIMAGE3DOESPROC)dlsym(gles2_lib, "glTexImage3DOES");
- glTexSubImage3DOES = (PFNGLTEXSUBIMAGE3DOESPROC)dlsym(gles2_lib, "glTexSubImage3DOES");
- glCompressedTexSubImage3DOES = (PFNGLCOMPRESSEDTEXSUBIMAGE3DOESPROC)dlsym(gles2_lib, "glCompressedTexSubImage3DOES");
-#endif
-#endif
-
- // Check for multisample support
- config.multisample_supported = config.extensions.has("GL_EXT_framebuffer_multisample") || config.extensions.has("GL_EXT_multisampled_render_to_texture") || config.extensions.has("GL_APPLE_framebuffer_multisample");
-
-#ifdef GLES_OVER_GL
- //TODO: causes huge problems with desktop video drivers. Making false for now, needs to be true to render SCREEN_TEXTURE mipmaps
- config.render_to_mipmap_supported = false;
-#else
- //check if mipmaps can be used for SCREEN_TEXTURE and Glow on Mobile and web platforms
- config.render_to_mipmap_supported = config.extensions.has("GL_OES_fbo_render_mipmap") && config.extensions.has("GL_EXT_texture_lod");
-#endif
-
-#ifdef GLES_OVER_GL
- config.use_rgba_2d_shadows = false;
- config.support_depth_texture = true;
- config.use_rgba_3d_shadows = false;
- config.support_depth_cubemaps = true;
-#else
- config.use_rgba_2d_shadows = !(config.float_texture_supported && config.extensions.has("GL_EXT_texture_rg"));
- config.support_depth_texture = config.extensions.has("GL_OES_depth_texture") || config.extensions.has("WEBGL_depth_texture");
- config.use_rgba_3d_shadows = !config.support_depth_texture;
- config.support_depth_cubemaps = config.extensions.has("GL_OES_depth_texture_cube_map");
-#endif
-
-#ifdef GLES_OVER_GL
- config.support_32_bits_indices = true;
-#else
- config.support_32_bits_indices = config.extensions.has("GL_OES_element_index_uint");
-#endif
-
-#ifdef GLES_OVER_GL
- config.support_write_depth = true;
-#elif defined(JAVASCRIPT_ENABLED)
- config.support_write_depth = false;
-#else
- config.support_write_depth = config.extensions.has("GL_EXT_frag_depth");
-#endif
-
-#ifdef JAVASCRIPT_ENABLED
- config.support_half_float_vertices = false;
-#else
- //every other platform, be it mobile or desktop, supports this (even if not in the GLES2 spec).
- config.support_half_float_vertices = true;
-#endif
-
- config.rgtc_supported = config.extensions.has("GL_EXT_texture_compression_rgtc") || config.extensions.has("GL_ARB_texture_compression_rgtc") || config.extensions.has("EXT_texture_compression_rgtc");
- config.bptc_supported = config.extensions.has("GL_ARB_texture_compression_bptc") || config.extensions.has("EXT_texture_compression_bptc");
-
- //determine formats for depth textures (or renderbuffers)
- if (config.support_depth_texture) {
- // Will use texture for depth
- // have to manually see if we can create a valid framebuffer texture using UNSIGNED_INT,
- // as there is no extension to test for this.
- GLuint fbo;
- glGenFramebuffers(1, &fbo);
- glBindFramebuffer(GL_FRAMEBUFFER, fbo);
- GLuint depth;
- glGenTextures(1, &depth);
- glBindTexture(GL_TEXTURE_2D, depth);
- glTexImage2D(GL_TEXTURE_2D, 0, config.depth_internalformat, 32, 32, 0, GL_DEPTH_COMPONENT, config.depth_type, nullptr);
-
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);
-
- glFramebufferTexture2D(GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, GL_TEXTURE_2D, depth, 0);
-
- GLenum status = glCheckFramebufferStatus(GL_FRAMEBUFFER);
-
- glBindFramebuffer(GL_FRAMEBUFFER, system_fbo);
- glDeleteFramebuffers(1, &fbo);
- glBindTexture(GL_TEXTURE_2D, 0);
- glDeleteTextures(1, &depth);
-
- if (status != GL_FRAMEBUFFER_COMPLETE) {
- // If it fails, test to see if it supports a framebuffer texture using UNSIGNED_SHORT
- // This is needed because many OSX devices don't support either UNSIGNED_INT or UNSIGNED_SHORT
-#ifdef GLES_OVER_GL
- config.depth_internalformat = GL_DEPTH_COMPONENT16;
-#else
- // OES_depth_texture extension only specifies GL_DEPTH_COMPONENT.
- config.depth_internalformat = GL_DEPTH_COMPONENT;
-#endif
- config.depth_type = GL_UNSIGNED_SHORT;
-
- glGenFramebuffers(1, &fbo);
- glBindFramebuffer(GL_FRAMEBUFFER, fbo);
-
- glGenTextures(1, &depth);
- glBindTexture(GL_TEXTURE_2D, depth);
- glTexImage2D(GL_TEXTURE_2D, 0, config.depth_internalformat, 32, 32, 0, GL_DEPTH_COMPONENT, GL_UNSIGNED_SHORT, nullptr);
-
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);
-
- glFramebufferTexture2D(GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, GL_TEXTURE_2D, depth, 0);
-
- status = glCheckFramebufferStatus(GL_FRAMEBUFFER);
- if (status != GL_FRAMEBUFFER_COMPLETE) {
- //if it fails again depth textures aren't supported, use rgba shadows and renderbuffer for depth
- config.support_depth_texture = false;
- config.use_rgba_3d_shadows = true;
- }
-
- glBindFramebuffer(GL_FRAMEBUFFER, system_fbo);
- glDeleteFramebuffers(1, &fbo);
- glBindTexture(GL_TEXTURE_2D, 0);
- glDeleteTextures(1, &depth);
- }
- }
-
- //picky requirements for these
- config.support_shadow_cubemaps = config.support_depth_texture && config.support_write_depth && config.support_depth_cubemaps;
-
- frame.count = 0;
- frame.delta = 0;
- frame.current_rt = nullptr;
- frame.clear_request = false;
-
- glGetIntegerv(GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS, &config.max_vertex_texture_image_units);
- glGetIntegerv(GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS, &config.max_texture_image_units);
- glGetIntegerv(GL_MAX_TEXTURE_SIZE, &config.max_texture_size);
-
- // the use skeleton software path should be used if either float texture is not supported,
- // OR max_vertex_texture_image_units is zero
- config.use_skeleton_software = (config.float_texture_supported == false) || (config.max_vertex_texture_image_units == 0);
-
- shaders.copy.init();
- shaders.cubemap_filter.init();
- bool ggx_hq = GLOBAL_GET("rendering/quality/reflections/high_quality_ggx");
- shaders.cubemap_filter.set_conditional(CubemapFilterShaderGLES2::LOW_QUALITY, !ggx_hq);
-
- {
- // quad for copying stuff
-
- glGenBuffers(1, &resources.quadie);
- glBindBuffer(GL_ARRAY_BUFFER, resources.quadie);
- {
- const float qv[16] = {
- -1,
- -1,
- 0,
- 0,
- -1,
- 1,
- 0,
- 1,
- 1,
- 1,
- 1,
- 1,
- 1,
- -1,
- 1,
- 0,
- };
-
- glBufferData(GL_ARRAY_BUFFER, sizeof(float) * 16, qv, GL_STATIC_DRAW);
- }
-
- glBindBuffer(GL_ARRAY_BUFFER, 0);
- }
-
- {
- //default textures
-
- glGenTextures(1, &resources.white_tex);
- unsigned char whitetexdata[8 * 8 * 3];
- for (int i = 0; i < 8 * 8 * 3; i++) {
- whitetexdata[i] = 255;
- }
-
- glActiveTexture(GL_TEXTURE0);
- glBindTexture(GL_TEXTURE_2D, resources.white_tex);
- glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, 8, 8, 0, GL_RGB, GL_UNSIGNED_BYTE, whitetexdata);
- glGenerateMipmap(GL_TEXTURE_2D);
- glBindTexture(GL_TEXTURE_2D, 0);
-
- glGenTextures(1, &resources.black_tex);
- unsigned char blacktexdata[8 * 8 * 3];
- for (int i = 0; i < 8 * 8 * 3; i++) {
- blacktexdata[i] = 0;
- }
-
- glActiveTexture(GL_TEXTURE0);
- glBindTexture(GL_TEXTURE_2D, resources.black_tex);
- glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, 8, 8, 0, GL_RGB, GL_UNSIGNED_BYTE, blacktexdata);
- glGenerateMipmap(GL_TEXTURE_2D);
- glBindTexture(GL_TEXTURE_2D, 0);
-
- glGenTextures(1, &resources.normal_tex);
- unsigned char normaltexdata[8 * 8 * 3];
- for (int i = 0; i < 8 * 8 * 3; i += 3) {
- normaltexdata[i + 0] = 128;
- normaltexdata[i + 1] = 128;
- normaltexdata[i + 2] = 255;
- }
-
- glActiveTexture(GL_TEXTURE0);
- glBindTexture(GL_TEXTURE_2D, resources.normal_tex);
- glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, 8, 8, 0, GL_RGB, GL_UNSIGNED_BYTE, normaltexdata);
- glGenerateMipmap(GL_TEXTURE_2D);
- glBindTexture(GL_TEXTURE_2D, 0);
-
- glGenTextures(1, &resources.aniso_tex);
- unsigned char anisotexdata[8 * 8 * 3];
- for (int i = 0; i < 8 * 8 * 3; i += 3) {
- anisotexdata[i + 0] = 255;
- anisotexdata[i + 1] = 128;
- anisotexdata[i + 2] = 0;
- }
-
- glActiveTexture(GL_TEXTURE0);
- glBindTexture(GL_TEXTURE_2D, resources.aniso_tex);
- glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, 8, 8, 0, GL_RGB, GL_UNSIGNED_BYTE, anisotexdata);
- glGenerateMipmap(GL_TEXTURE_2D);
- glBindTexture(GL_TEXTURE_2D, 0);
-
-#if defined(GLES_OVER_GL) || defined(ANDROID_ENABLED)
- glGenTextures(1, &resources.white_tex_3d);
- glActiveTexture(GL_TEXTURE0);
- glBindTexture(GL_TEXTURE_3D, resources.white_tex_3d);
- glTexImage3D(GL_TEXTURE_3D, 0, GL_RGB, 2, 2, 2, 0, GL_RGB, GL_UNSIGNED_BYTE, whitetexdata);
-
-#ifdef GLES_OVER_GL
- glTexParameteri(GL_TEXTURE_3D, GL_TEXTURE_BASE_LEVEL, 0);
- glTexParameteri(GL_TEXTURE_3D, GL_TEXTURE_MAX_LEVEL, 0);
-#endif
-
- glGenTextures(1, &resources.white_tex_array);
- glActiveTexture(GL_TEXTURE0);
- glBindTexture(GL_TEXTURE_2D_ARRAY, resources.white_tex_array);
- glTexImage3D(GL_TEXTURE_2D_ARRAY, 0, GL_RGB, 8, 8, 1, 0, GL_RGB, GL_UNSIGNED_BYTE, nullptr);
- glTexSubImage3D(GL_TEXTURE_2D_ARRAY, 0, 0, 0, 0, 8, 8, 1, GL_RGB, GL_UNSIGNED_BYTE, whitetexdata);
- glGenerateMipmap(GL_TEXTURE_2D_ARRAY);
- glBindTexture(GL_TEXTURE_2D, 0);
-#endif
- }
-
- // skeleton buffer
- {
- resources.skeleton_transform_buffer_size = 0;
- glGenBuffers(1, &resources.skeleton_transform_buffer);
- }
-
- // radical inverse vdc cache texture
- // used for cubemap filtering
- if (true /*||config.float_texture_supported*/) { //uint8 is similar and works everywhere
- glGenTextures(1, &resources.radical_inverse_vdc_cache_tex);
-
- glActiveTexture(GL_TEXTURE0);
- glBindTexture(GL_TEXTURE_2D, resources.radical_inverse_vdc_cache_tex);
-
- uint8_t radical_inverse[512];
-
- for (uint32_t i = 0; i < 512; i++) {
- uint32_t bits = i;
-
- bits = (bits << 16) | (bits >> 16);
- bits = ((bits & 0x55555555) << 1) | ((bits & 0xAAAAAAAA) >> 1);
- bits = ((bits & 0x33333333) << 2) | ((bits & 0xCCCCCCCC) >> 2);
- bits = ((bits & 0x0F0F0F0F) << 4) | ((bits & 0xF0F0F0F0) >> 4);
- bits = ((bits & 0x00FF00FF) << 8) | ((bits & 0xFF00FF00) >> 8);
-
- float value = float(bits) * 2.3283064365386963e-10;
- radical_inverse[i] = uint8_t(CLAMP(value * 255.0, 0, 255));
- }
-
- glTexImage2D(GL_TEXTURE_2D, 0, GL_LUMINANCE, 512, 1, 0, GL_LUMINANCE, GL_UNSIGNED_BYTE, radical_inverse);
- glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);
- glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);
- glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
- glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST); //need this for proper sampling
-
- glBindTexture(GL_TEXTURE_2D, 0);
- }
-
- {
- glGenFramebuffers(1, &resources.mipmap_blur_fbo);
- glGenTextures(1, &resources.mipmap_blur_color);
- }
-
-#ifdef GLES_OVER_GL
- //this needs to be enabled manually in OpenGL 2.1
-
- if (config.extensions.has("GL_ARB_seamless_cube_map")) {
- glEnable(_EXT_TEXTURE_CUBE_MAP_SEAMLESS);
- }
- glEnable(GL_POINT_SPRITE);
- glEnable(GL_VERTEX_PROGRAM_POINT_SIZE);
-#endif
-
- config.force_vertex_shading = GLOBAL_GET("rendering/quality/shading/force_vertex_shading");
- config.use_fast_texture_filter = GLOBAL_GET("rendering/quality/texture_filters/use_nearest_mipmap_filter");
-}
-
-void RasterizerStorageGLES2::finalize() {
-}
-
-void RasterizerStorageGLES2::_copy_screen() {
- bind_quad_array();
- glDrawArrays(GL_TRIANGLE_FAN, 0, 4);
-}
-
-void RasterizerStorageGLES2::update_dirty_resources() {
- update_dirty_shaders();
- update_dirty_materials();
- update_dirty_skeletons();
- update_dirty_multimeshes();
-}
-
-RasterizerStorageGLES2::RasterizerStorageGLES2() {
- RasterizerStorageGLES2::system_fbo = 0;
-}
diff --git a/drivers/gles2/rasterizer_storage_gles2.h b/drivers/gles2/rasterizer_storage_gles2.h
deleted file mode 100644
index 15761e4efd..0000000000
--- a/drivers/gles2/rasterizer_storage_gles2.h
+++ /dev/null
@@ -1,1295 +0,0 @@
-/*************************************************************************/
-/* rasterizer_storage_gles2.h */
-/*************************************************************************/
-/* This file is part of: */
-/* GODOT ENGINE */
-/* https://godotengine.org */
-/*************************************************************************/
-/* Copyright (c) 2007-2020 Juan Linietsky, Ariel Manzur. */
-/* Copyright (c) 2014-2020 Godot Engine contributors (cf. AUTHORS.md). */
-/* */
-/* Permission is hereby granted, free of charge, to any person obtaining */
-/* a copy of this software and associated documentation files (the */
-/* "Software"), to deal in the Software without restriction, including */
-/* without limitation the rights to use, copy, modify, merge, publish, */
-/* distribute, sublicense, and/or sell copies of the Software, and to */
-/* permit persons to whom the Software is furnished to do so, subject to */
-/* the following conditions: */
-/* */
-/* The above copyright notice and this permission notice shall be */
-/* included in all copies or substantial portions of the Software. */
-/* */
-/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
-/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
-/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.*/
-/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
-/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
-/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
-/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
-/*************************************************************************/
-
-#ifndef RASTERIZERSTORAGEGLES2_H
-#define RASTERIZERSTORAGEGLES2_H
-
-#include "core/self_list.h"
-#include "servers/rendering/rasterizer.h"
-#include "servers/rendering/shader_language.h"
-#include "shader_compiler_gles2.h"
-#include "shader_gles2.h"
-
-#include "core/rid_owner.h"
-#include "shaders/copy.glsl.gen.h"
-#include "shaders/cubemap_filter.glsl.gen.h"
-/*
-#include "shaders/blend_shape.glsl.gen.h"
-#include "shaders/canvas.glsl.gen.h"
-#include "shaders/particles.glsl.gen.h"
-*/
-
-class RasterizerCanvasGLES2;
-class RasterizerSceneGLES2;
-
-class RasterizerStorageGLES2 : public RasterizerStorage {
-public:
- RasterizerCanvasGLES2 *canvas;
- RasterizerSceneGLES2 *scene;
-
- static GLuint system_fbo;
-
- struct Config {
- bool shrink_textures_x2;
- bool use_fast_texture_filter;
- bool use_skeleton_software;
-
- int max_vertex_texture_image_units;
- int max_texture_image_units;
- int max_texture_size;
-
- // TODO implement wireframe in GLES2
- // bool generate_wireframes;
-
- Set<String> extensions;
-
- bool texture_3d_supported;
- bool texture_array_supported;
- bool float_texture_supported;
- bool s3tc_supported;
- bool etc1_supported;
- bool pvrtc_supported;
- bool rgtc_supported;
- bool bptc_supported;
-
- bool keep_original_textures;
-
- bool force_vertex_shading;
-
- bool use_rgba_2d_shadows;
- bool use_rgba_3d_shadows;
-
- bool support_32_bits_indices;
- bool support_write_depth;
- bool support_half_float_vertices;
- bool support_npot_repeat_mipmap;
- bool support_depth_texture;
- bool support_depth_cubemaps;
-
- bool support_shadow_cubemaps;
-
- bool multisample_supported;
- bool render_to_mipmap_supported;
-
- GLuint depth_internalformat;
- GLuint depth_type;
- GLuint depth_buffer_internalformat;
-
- } config;
-
- struct Resources {
- GLuint white_tex;
- GLuint black_tex;
- GLuint normal_tex;
- GLuint aniso_tex;
- GLuint white_tex_3d;
- GLuint white_tex_array;
-
- GLuint mipmap_blur_fbo;
- GLuint mipmap_blur_color;
-
- GLuint radical_inverse_vdc_cache_tex;
- bool use_rgba_2d_shadows;
-
- GLuint quadie;
-
- size_t skeleton_transform_buffer_size;
- GLuint skeleton_transform_buffer;
- Vector<float> skeleton_transform_cpu_buffer;
-
- } resources;
-
- mutable struct Shaders {
- ShaderCompilerGLES2 compiler;
-
- CopyShaderGLES2 copy;
- CubemapFilterShaderGLES2 cubemap_filter;
-
- ShaderCompilerGLES2::IdentifierActions actions_canvas;
- ShaderCompilerGLES2::IdentifierActions actions_scene;
- ShaderCompilerGLES2::IdentifierActions actions_particles;
-
- } shaders;
-
- struct Info {
- uint64_t texture_mem;
- uint64_t vertex_mem;
-
- struct Render {
- uint32_t object_count;
- uint32_t draw_call_count;
- uint32_t material_switch_count;
- uint32_t surface_switch_count;
- uint32_t shader_rebind_count;
- uint32_t vertices_count;
-
- void reset() {
- object_count = 0;
- draw_call_count = 0;
- material_switch_count = 0;
- surface_switch_count = 0;
- shader_rebind_count = 0;
- vertices_count = 0;
- }
- } render, render_final, snap;
-
- Info() :
- texture_mem(0),
- vertex_mem(0) {
- render.reset();
- render_final.reset();
- }
-
- } info;
-
- void bind_quad_array() const;
-
- /////////////////////////////////////////////////////////////////////////////////////////
- //////////////////////////////////DATA///////////////////////////////////////////////////
- /////////////////////////////////////////////////////////////////////////////////////////
-
- struct Instantiable {
- SelfList<RasterizerScene::InstanceBase>::List instance_list;
-
- _FORCE_INLINE_ void instance_change_notify(bool p_aabb, bool p_materials) {
- SelfList<RasterizerScene::InstanceBase> *instances = instance_list.first();
- while (instances) {
- instances->self()->base_changed(p_aabb, p_materials);
- instances = instances->next();
- }
- }
-
- _FORCE_INLINE_ void instance_remove_deps() {
- SelfList<RasterizerScene::InstanceBase> *instances = instance_list.first();
-
- while (instances) {
- instances->self()->base_removed();
- instances = instances->next();
- }
- }
-
- Instantiable() {}
-
- virtual ~Instantiable() {}
- };
-
- struct GeometryOwner : public Instantiable {
- };
-
- struct Geometry : public Instantiable {
- enum Type {
- GEOMETRY_INVALID,
- GEOMETRY_SURFACE,
- GEOMETRY_IMMEDIATE,
- GEOMETRY_MULTISURFACE
- };
-
- Type type;
- RID material;
- uint64_t last_pass;
- uint32_t index;
-
- virtual void material_changed_notify() {}
-
- Geometry() {
- last_pass = 0;
- index = 0;
- }
- };
-
- /////////////////////////////////////////////////////////////////////////////////////////
- //////////////////////////////////API////////////////////////////////////////////////////
- /////////////////////////////////////////////////////////////////////////////////////////
-
- /* TEXTURE API */
-
- struct RenderTarget;
-
- struct Texture {
- Texture *proxy;
- Set<Texture *> proxy_owners;
-
- String path;
- uint32_t flags;
- int width, height, depth;
- int alloc_width, alloc_height;
- Image::Format format;
- RS::TextureType type;
-
- GLenum target;
- GLenum gl_format_cache;
- GLenum gl_internal_format_cache;
- GLenum gl_type_cache;
-
- int data_size;
- int total_data_size;
- bool ignore_mipmaps;
-
- bool compressed;
-
- bool srgb;
-
- int mipmaps;
-
- bool resize_to_po2;
-
- bool active;
- GLenum tex_id;
-
- uint16_t stored_cube_sides;
-
- RenderTarget *render_target;
-
- Vector<Ref<Image>> images;
-
- bool redraw_if_visible;
-
- RenderingServer::TextureDetectCallback detect_3d;
- void *detect_3d_ud;
-
- RenderingServer::TextureDetectCallback detect_srgb;
- void *detect_srgb_ud;
-
- RenderingServer::TextureDetectCallback detect_normal;
- void *detect_normal_ud;
-
- Texture() :
- proxy(nullptr),
- flags(0),
- width(0),
- height(0),
- alloc_width(0),
- alloc_height(0),
- format(Image::FORMAT_L8),
- type(RS::TEXTURE_TYPE_2D),
- target(0),
- data_size(0),
- total_data_size(0),
- ignore_mipmaps(false),
- compressed(false),
- mipmaps(0),
- resize_to_po2(false),
- active(false),
- tex_id(0),
- stored_cube_sides(0),
- render_target(nullptr),
- redraw_if_visible(false),
- detect_3d(nullptr),
- detect_3d_ud(nullptr),
- detect_srgb(nullptr),
- detect_srgb_ud(nullptr),
- detect_normal(nullptr),
- detect_normal_ud(nullptr) {
- }
-
- _ALWAYS_INLINE_ Texture *get_ptr() {
- if (proxy) {
- return proxy; //->get_ptr(); only one level of indirection, else not inlining possible.
- } else {
- return this;
- }
- }
-
- ~Texture() {
- if (tex_id != 0) {
- glDeleteTextures(1, &tex_id);
- }
-
- for (Set<Texture *>::Element *E = proxy_owners.front(); E; E = E->next()) {
- E->get()->proxy = nullptr;
- }
-
- if (proxy) {
- proxy->proxy_owners.erase(this);
- }
- }
- };
-
- mutable RID_PtrOwner<Texture2D> texture_owner;
-
- Ref<Image> _get_gl_image_and_format(const Ref<Image> &p_image, Image::Format p_format, uint32_t p_flags, Image::Format &r_real_format, GLenum &r_gl_format, GLenum &r_gl_internal_format, GLenum &r_gl_type, bool &r_compressed, bool p_force_decompress) const;
-
- virtual RID texture_create();
- virtual void texture_allocate(RID p_texture, int p_width, int p_height, int p_depth_3d, Image::Format p_format, RS::TextureType p_type, uint32_t p_flags = RS::TEXTURE_FLAGS_DEFAULT);
- virtual void texture_set_data(RID p_texture, const Ref<Image> &p_image, int p_layer = 0);
- virtual void texture_set_data_partial(RID p_texture, const Ref<Image> &p_image, int src_x, int src_y, int src_w, int src_h, int dst_x, int dst_y, int p_dst_mip, int p_layer = 0);
- virtual Ref<Image> texture_get_data(RID p_texture, int p_layer = 0) const;
- virtual void texture_set_flags(RID p_texture, uint32_t p_flags);
- virtual uint32_t texture_get_flags(RID p_texture) const;
- virtual Image::Format texture_get_format(RID p_texture) const;
- virtual RS::TextureType texture_get_type(RID p_texture) const;
- virtual uint32_t texture_get_texid(RID p_texture) const;
- virtual uint32_t texture_get_width(RID p_texture) const;
- virtual uint32_t texture_get_height(RID p_texture) const;
- virtual uint32_t texture_get_depth(RID p_texture) const;
- virtual void texture_set_size_override(RID p_texture, int p_width, int p_height, int p_depth);
- virtual void texture_bind(RID p_texture, uint32_t p_texture_no);
-
- virtual void texture_set_path(RID p_texture, const String &p_path);
- virtual String texture_get_path(RID p_texture) const;
-
- virtual void texture_set_shrink_all_x2_on_set_data(bool p_enable);
-
- virtual void texture_debug_usage(List<RS::TextureInfo> *r_info);
-
- virtual RID texture_create_radiance_cubemap(RID p_source, int p_resolution = -1) const;
-
- virtual void textures_keep_original(bool p_enable);
-
- virtual void texture_set_proxy(RID p_texture, RID p_proxy);
- virtual Size2 texture_size_with_proxy(RID p_texture) const;
-
- virtual void texture_set_detect_3d_callback(RID p_texture, RenderingServer::TextureDetectCallback p_callback, void *p_userdata);
- virtual void texture_set_detect_srgb_callback(RID p_texture, RenderingServer::TextureDetectCallback p_callback, void *p_userdata);
- virtual void texture_set_detect_normal_callback(RID p_texture, RenderingServer::TextureDetectCallback p_callback, void *p_userdata);
-
- virtual void texture_set_force_redraw_if_visible(RID p_texture, bool p_enable);
-
- /* SKY API */
-
- struct Sky {
- RID panorama;
- GLuint radiance;
- int radiance_size;
- };
-
- mutable RID_PtrOwner<Sky> sky_owner;
-
- virtual RID sky_create();
- virtual void sky_set_texture(RID p_sky, RID p_panorama, int p_radiance_size);
-
- /* SHADER API */
-
- struct Material;
-
- struct Shader {
- RID self;
-
- RS::ShaderMode mode;
- ShaderGLES2 *shader;
- String code;
- SelfList<Material>::List materials;
-
- Map<StringName, ShaderLanguage::ShaderNode::Uniform> uniforms;
-
- uint32_t texture_count;
-
- uint32_t custom_code_id;
- uint32_t version;
-
- SelfList<Shader> dirty_list;
-
- Map<StringName, RID> default_textures;
-
- Vector<ShaderLanguage::DataType> texture_types;
- Vector<ShaderLanguage::ShaderNode::Uniform::Hint> texture_hints;
-
- bool valid;
-
- String path;
-
- uint32_t index;
- uint64_t last_pass;
-
- struct CanvasItem {
- enum BlendMode {
- BLEND_MODE_MIX,
- BLEND_MODE_ADD,
- BLEND_MODE_SUB,
- BLEND_MODE_MUL,
- BLEND_MODE_PMALPHA,
- };
-
- int blend_mode;
-
- enum LightMode {
- LIGHT_MODE_NORMAL,
- LIGHT_MODE_UNSHADED,
- LIGHT_MODE_LIGHT_ONLY
- };
-
- int light_mode;
-
- bool uses_screen_texture;
- bool uses_screen_uv;
- bool uses_time;
-
- } canvas_item;
-
- struct Spatial {
- enum BlendMode {
- BLEND_MODE_MIX,
- BLEND_MODE_ADD,
- BLEND_MODE_SUB,
- BLEND_MODE_MUL,
- };
-
- int blend_mode;
-
- enum DepthDrawMode {
- DEPTH_DRAW_OPAQUE,
- DEPTH_DRAW_ALWAYS,
- DEPTH_DRAW_NEVER,
- DEPTH_DRAW_ALPHA_PREPASS,
- };
-
- int depth_draw_mode;
-
- enum CullMode {
- CULL_MODE_FRONT,
- CULL_MODE_BACK,
- CULL_MODE_DISABLED,
- };
-
- int cull_mode;
-
- bool uses_alpha;
- bool uses_alpha_scissor;
- bool unshaded;
- bool no_depth_test;
- bool uses_vertex;
- bool uses_discard;
- bool uses_sss;
- bool uses_screen_texture;
- bool uses_depth_texture;
- bool uses_time;
- bool writes_modelview_or_projection;
- bool uses_vertex_lighting;
- bool uses_world_coordinates;
-
- } spatial;
-
- struct Particles {
- } particles;
-
- bool uses_vertex_time;
- bool uses_fragment_time;
-
- Shader() :
- dirty_list(this) {
- shader = nullptr;
- valid = false;
- custom_code_id = 0;
- version = 1;
- last_pass = 0;
- }
- };
-
- mutable RID_PtrOwner<Shader> shader_owner;
- mutable SelfList<Shader>::List _shader_dirty_list;
-
- void _shader_make_dirty(Shader *p_shader);
-
- virtual RID shader_create();
-
- virtual void shader_set_code(RID p_shader, const String &p_code);
- virtual String shader_get_code(RID p_shader) const;
- virtual void shader_get_param_list(RID p_shader, List<PropertyInfo> *p_param_list) const;
-
- virtual void shader_set_default_texture_param(RID p_shader, const StringName &p_name, RID p_texture);
- virtual RID shader_get_default_texture_param(RID p_shader, const StringName &p_name) const;
-
- void _update_shader(Shader *p_shader) const;
- void update_dirty_shaders();
-
- /* COMMON MATERIAL API */
-
- struct Material {
- Shader *shader;
- Map<StringName, Variant> params;
- SelfList<Material> list;
- SelfList<Material> dirty_list;
- Vector<Pair<StringName, RID>> textures;
- float line_width;
- int render_priority;
-
- RID next_pass;
-
- uint32_t index;
- uint64_t last_pass;
-
- Map<Geometry *, int> geometry_owners;
- Map<RasterizerScene::InstanceBase *, int> instance_owners;
-
- bool can_cast_shadow_cache;
- bool is_animated_cache;
-
- Material() :
- list(this),
- dirty_list(this) {
- can_cast_shadow_cache = false;
- is_animated_cache = false;
- shader = nullptr;
- line_width = 1.0;
- last_pass = 0;
- render_priority = 0;
- }
- };
-
- mutable SelfList<Material>::List _material_dirty_list;
- void _material_make_dirty(Material *p_material) const;
-
- void _material_add_geometry(RID p_material, Geometry *p_geometry);
- void _material_remove_geometry(RID p_material, Geometry *p_geometry);
-
- void _update_material(Material *p_material);
-
- mutable RID_PtrOwner<Material> material_owner;
-
- virtual RID material_create();
-
- virtual void material_set_shader(RID p_material, RID p_shader);
- virtual RID material_get_shader(RID p_material) const;
-
- virtual void material_set_param(RID p_material, const StringName &p_param, const Variant &p_value);
- virtual Variant material_get_param(RID p_material, const StringName &p_param) const;
- virtual Variant material_get_param_default(RID p_material, const StringName &p_param) const;
-
- virtual void material_set_line_width(RID p_material, float p_width);
- virtual void material_set_next_pass(RID p_material, RID p_next_material);
-
- virtual bool material_is_animated(RID p_material);
- virtual bool material_casts_shadows(RID p_material);
-
- virtual void material_add_instance_owner(RID p_material, RasterizerScene::InstanceBase *p_instance);
- virtual void material_remove_instance_owner(RID p_material, RasterizerScene::InstanceBase *p_instance);
-
- virtual void material_set_render_priority(RID p_material, int priority);
-
- void update_dirty_materials();
-
- /* MESH API */
-
- struct Mesh;
-
- struct Surface : public Geometry {
- struct Attrib {
- bool enabled;
- bool integer;
- GLuint index;
- GLint size;
- GLenum type;
- GLboolean normalized;
- GLsizei stride;
- uint32_t offset;
- };
-
- Attrib attribs[RS::ARRAY_MAX];
-
- Mesh *mesh;
- uint32_t format;
-
- GLuint vertex_id;
- GLuint index_id;
-
- struct BlendShape {
- GLuint vertex_id;
- GLuint array_id;
- };
-
- Vector<BlendShape> blend_shapes;
-
- AABB aabb;
-
- int array_len;
- int index_array_len;
- int max_bone;
-
- int array_byte_size;
- int index_array_byte_size;
-
- RS::PrimitiveType primitive;
-
- Vector<AABB> skeleton_bone_aabb;
- Vector<bool> skeleton_bone_used;
-
- bool active;
-
- Vector<uint8_t> data;
- Vector<uint8_t> index_data;
- Vector<Vector<uint8_t>> blend_shape_data;
-
- int total_data_size;
-
- Surface() :
- mesh(nullptr),
- array_len(0),
- index_array_len(0),
- array_byte_size(0),
- index_array_byte_size(0),
- primitive(RS::PRIMITIVE_POINTS),
- active(false),
- total_data_size(0) {
- }
- };
-
- struct MultiMesh;
-
- struct Mesh : public GeometryOwner {
- bool active;
-
- Vector<Surface *> surfaces;
-
- int blend_shape_count;
- RS::BlendShapeMode blend_shape_mode;
-
- AABB custom_aabb;
-
- mutable uint64_t last_pass;
-
- SelfList<MultiMesh>::List multimeshes;
-
- _FORCE_INLINE_ void update_multimeshes() {
- SelfList<MultiMesh> *mm = multimeshes.first();
-
- while (mm) {
- mm->self()->instance_change_notify(false, true);
- mm = mm->next();
- }
- }
-
- Mesh() :
- blend_shape_count(0),
- blend_shape_mode(RS::BLEND_SHAPE_MODE_NORMALIZED) {
- }
- };
-
- mutable RID_PtrOwner<Mesh> mesh_owner;
-
- virtual RID mesh_create();
-
- virtual void mesh_add_surface(RID p_mesh, uint32_t p_format, RS::PrimitiveType p_primitive, const Vector<uint8_t> &p_array, int p_vertex_count, const Vector<uint8_t> &p_index_array, int p_index_count, const AABB &p_aabb, const Vector<Vector<uint8_t>> &p_blend_shapes = Vector<Vector<uint8_t>>(), const Vector<AABB> &p_bone_aabbs = Vector<AABB>());
-
- virtual void mesh_set_blend_shape_count(RID p_mesh, int p_amount);
- virtual int mesh_get_blend_shape_count(RID p_mesh) const;
-
- virtual void mesh_set_blend_shape_mode(RID p_mesh, RS::BlendShapeMode p_mode);
- virtual RS::BlendShapeMode mesh_get_blend_shape_mode(RID p_mesh) const;
-
- virtual void mesh_surface_update_region(RID p_mesh, int p_surface, int p_offset, const Vector<uint8_t> &p_data);
-
- virtual void mesh_surface_set_material(RID p_mesh, int p_surface, RID p_material);
- virtual RID mesh_surface_get_material(RID p_mesh, int p_surface) const;
-
- virtual int mesh_surface_get_array_len(RID p_mesh, int p_surface) const;
- virtual int mesh_surface_get_array_index_len(RID p_mesh, int p_surface) const;
-
- virtual Vector<uint8_t> mesh_surface_get_array(RID p_mesh, int p_surface) const;
- virtual Vector<uint8_t> mesh_surface_get_index_array(RID p_mesh, int p_surface) const;
-
- virtual uint32_t mesh_surface_get_format(RID p_mesh, int p_surface) const;
- virtual RS::PrimitiveType mesh_surface_get_primitive_type(RID p_mesh, int p_surface) const;
-
- virtual AABB mesh_surface_get_aabb(RID p_mesh, int p_surface) const;
- virtual Vector<Vector<uint8_t>> mesh_surface_get_blend_shapes(RID p_mesh, int p_surface) const;
- virtual Vector<AABB> mesh_surface_get_skeleton_aabb(RID p_mesh, int p_surface) const;
-
- virtual void mesh_remove_surface(RID p_mesh, int p_surface);
- virtual int mesh_get_surface_count(RID p_mesh) const;
-
- virtual void mesh_set_custom_aabb(RID p_mesh, const AABB &p_aabb);
- virtual AABB mesh_get_custom_aabb(RID p_mesh) const;
-
- virtual AABB mesh_get_aabb(RID p_mesh, RID p_skeleton) const;
- virtual void mesh_clear(RID p_mesh);
-
- /* MULTIMESH API */
-
- struct MultiMesh : public GeometryOwner {
- RID mesh;
- int size;
-
- RS::MultimeshTransformFormat transform_format;
- RS::MultimeshColorFormat color_format;
- RS::MultimeshCustomDataFormat custom_data_format;
-
- Vector<float> data;
-
- AABB aabb;
-
- SelfList<MultiMesh> update_list;
- SelfList<MultiMesh> mesh_list;
-
- int visible_instances;
-
- int xform_floats;
- int color_floats;
- int custom_data_floats;
-
- bool dirty_aabb;
- bool dirty_data;
-
- MultiMesh() :
- size(0),
- transform_format(RS::MULTIMESH_TRANSFORM_2D),
- color_format(RS::MULTIMESH_COLOR_NONE),
- custom_data_format(RS::MULTIMESH_CUSTOM_DATA_NONE),
- update_list(this),
- mesh_list(this),
- visible_instances(-1),
- xform_floats(0),
- color_floats(0),
- custom_data_floats(0),
- dirty_aabb(true),
- dirty_data(true) {
- }
- };
-
- mutable RID_PtrOwner<MultiMesh> multimesh_owner;
-
- SelfList<MultiMesh>::List multimesh_update_list;
-
- virtual RID multimesh_create();
-
- virtual void multimesh_allocate(RID p_multimesh, int p_instances, RS::MultimeshTransformFormat p_transform_format, RS::MultimeshColorFormat p_color_format, RS::MultimeshCustomDataFormat p_data = RS::MULTIMESH_CUSTOM_DATA_NONE);
- virtual int multimesh_get_instance_count(RID p_multimesh) const;
-
- virtual void multimesh_set_mesh(RID p_multimesh, RID p_mesh);
- virtual void multimesh_instance_set_transform(RID p_multimesh, int p_index, const Transform &p_transform);
- virtual void multimesh_instance_set_transform_2d(RID p_multimesh, int p_index, const Transform2D &p_transform);
- virtual void multimesh_instance_set_color(RID p_multimesh, int p_index, const Color &p_color);
- virtual void multimesh_instance_set_custom_data(RID p_multimesh, int p_index, const Color &p_custom_data);
-
- virtual RID multimesh_get_mesh(RID p_multimesh) const;
-
- virtual Transform multimesh_instance_get_transform(RID p_multimesh, int p_index) const;
- virtual Transform2D multimesh_instance_get_transform_2d(RID p_multimesh, int p_index) const;
- virtual Color multimesh_instance_get_color(RID p_multimesh, int p_index) const;
- virtual Color multimesh_instance_get_custom_data(RID p_multimesh, int p_index) const;
-
- virtual void multimesh_set_as_bulk_array(RID p_multimesh, const Vector<float> &p_array);
-
- virtual void multimesh_set_visible_instances(RID p_multimesh, int p_visible);
- virtual int multimesh_get_visible_instances(RID p_multimesh) const;
-
- virtual AABB multimesh_get_aabb(RID p_multimesh) const;
-
- void update_dirty_multimeshes();
-
- /* IMMEDIATE API */
-
- struct Immediate : public Geometry {
- struct Chunk {
- RID texture;
- RS::PrimitiveType primitive;
- Vector<Vector3> vertices;
- Vector<Vector3> normals;
- Vector<Plane> tangents;
- Vector<Color> colors;
- Vector<Vector2> uvs;
- Vector<Vector2> uv2s;
- };
-
- List<Chunk> chunks;
- bool building;
- int mask;
- AABB aabb;
-
- Immediate() {
- type = GEOMETRY_IMMEDIATE;
- building = false;
- }
- };
-
- Vector3 chunk_normal;
- Plane chunk_tangent;
- Color chunk_color;
- Vector2 chunk_uv;
- Vector2 chunk_uv2;
-
- mutable RID_PtrOwner<Immediate> immediate_owner;
-
- virtual RID immediate_create();
- virtual void immediate_begin(RID p_immediate, RS::PrimitiveType p_primitive, RID p_texture = RID());
- virtual void immediate_vertex(RID p_immediate, const Vector3 &p_vertex);
- virtual void immediate_normal(RID p_immediate, const Vector3 &p_normal);
- virtual void immediate_tangent(RID p_immediate, const Plane &p_tangent);
- virtual void immediate_color(RID p_immediate, const Color &p_color);
- virtual void immediate_uv(RID p_immediate, const Vector2 &tex_uv);
- virtual void immediate_uv2(RID p_immediate, const Vector2 &tex_uv);
- virtual void immediate_end(RID p_immediate);
- virtual void immediate_clear(RID p_immediate);
- virtual void immediate_set_material(RID p_immediate, RID p_material);
- virtual RID immediate_get_material(RID p_immediate) const;
- virtual AABB immediate_get_aabb(RID p_immediate) const;
-
- /* SKELETON API */
-
- struct Skeleton {
- bool use_2d;
-
- int size;
-
- // TODO use float textures for storage
-
- Vector<float> bone_data;
-
- GLuint tex_id;
-
- SelfList<Skeleton> update_list;
- Set<RasterizerScene::InstanceBase *> instances;
-
- Transform2D base_transform_2d;
-
- Skeleton() :
- use_2d(false),
- size(0),
- tex_id(0),
- update_list(this) {
- }
- };
-
- mutable RID_PtrOwner<Skeleton> skeleton_owner;
-
- SelfList<Skeleton>::List skeleton_update_list;
-
- void update_dirty_skeletons();
-
- virtual RID skeleton_create();
- virtual void skeleton_allocate(RID p_skeleton, int p_bones, bool p_2d_skeleton = false);
- virtual int skeleton_get_bone_count(RID p_skeleton) const;
- virtual void skeleton_bone_set_transform(RID p_skeleton, int p_bone, const Transform &p_transform);
- virtual Transform skeleton_bone_get_transform(RID p_skeleton, int p_bone) const;
- virtual void skeleton_bone_set_transform_2d(RID p_skeleton, int p_bone, const Transform2D &p_transform);
- virtual Transform2D skeleton_bone_get_transform_2d(RID p_skeleton, int p_bone) const;
- virtual void skeleton_set_base_transform_2d(RID p_skeleton, const Transform2D &p_base_transform);
-
- void _update_skeleton_transform_buffer(const Vector<float> &p_data, size_t p_size);
-
- /* Light API */
-
- struct Light : Instantiable {
- RS::LightType type;
- float param[RS::LIGHT_PARAM_MAX];
-
- Color color;
- Color shadow_color;
-
- RID projector;
-
- bool shadow;
- bool negative;
- bool reverse_cull;
- bool use_gi;
-
- uint32_t cull_mask;
-
- RS::LightOmniShadowMode omni_shadow_mode;
- RS::LightOmniShadowDetail omni_shadow_detail;
-
- RS::LightDirectionalShadowMode directional_shadow_mode;
- RS::LightDirectionalShadowDepthRangeMode directional_range_mode;
-
- bool directional_blend_splits;
-
- uint64_t version;
- };
-
- mutable RID_PtrOwner<Light> light_owner;
-
- virtual RID light_create(RS::LightType p_type);
-
- virtual void light_set_color(RID p_light, const Color &p_color);
- virtual void light_set_param(RID p_light, RS::LightParam p_param, float p_value);
- virtual void light_set_shadow(RID p_light, bool p_enabled);
- virtual void light_set_shadow_color(RID p_light, const Color &p_color);
- virtual void light_set_projector(RID p_light, RID p_texture);
- virtual void light_set_negative(RID p_light, bool p_enable);
- virtual void light_set_cull_mask(RID p_light, uint32_t p_mask);
- virtual void light_set_reverse_cull_face_mode(RID p_light, bool p_enabled);
- virtual void light_set_use_gi(RID p_light, bool p_enabled);
-
- virtual void light_omni_set_shadow_mode(RID p_light, RS::LightOmniShadowMode p_mode);
- virtual void light_omni_set_shadow_detail(RID p_light, RS::LightOmniShadowDetail p_detail);
-
- virtual void light_directional_set_shadow_mode(RID p_light, RS::LightDirectionalShadowMode p_mode);
- virtual void light_directional_set_blend_splits(RID p_light, bool p_enable);
- virtual bool light_directional_get_blend_splits(RID p_light) const;
-
- virtual RS::LightDirectionalShadowMode light_directional_get_shadow_mode(RID p_light);
- virtual RS::LightOmniShadowMode light_omni_get_shadow_mode(RID p_light);
-
- virtual void light_directional_set_shadow_depth_range_mode(RID p_light, RS::LightDirectionalShadowDepthRangeMode p_range_mode);
- virtual RS::LightDirectionalShadowDepthRangeMode light_directional_get_shadow_depth_range_mode(RID p_light) const;
-
- virtual bool light_has_shadow(RID p_light) const;
-
- virtual RS::LightType light_get_type(RID p_light) const;
- virtual float light_get_param(RID p_light, RS::LightParam p_param);
- virtual Color light_get_color(RID p_light);
- virtual bool light_get_use_gi(RID p_light);
-
- virtual AABB light_get_aabb(RID p_light) const;
- virtual uint64_t light_get_version(RID p_light) const;
-
- /* PROBE API */
-
- struct ReflectionProbe : Instantiable {
- RS::ReflectionProbeUpdateMode update_mode;
- float intensity;
- Color interior_ambient;
- float interior_ambient_energy;
- float interior_ambient_probe_contrib;
- float max_distance;
- Vector3 extents;
- Vector3 origin_offset;
- bool interior;
- bool box_projection;
- bool enable_shadows;
- uint32_t cull_mask;
- int resolution;
- };
-
- mutable RID_PtrOwner<ReflectionProbe> reflection_probe_owner;
-
- virtual RID reflection_probe_create();
-
- virtual void reflection_probe_set_update_mode(RID p_probe, RS::ReflectionProbeUpdateMode p_mode);
- virtual void reflection_probe_set_intensity(RID p_probe, float p_intensity);
- virtual void reflection_probe_set_interior_ambient(RID p_probe, const Color &p_ambient);
- virtual void reflection_probe_set_interior_ambient_energy(RID p_probe, float p_energy);
- virtual void reflection_probe_set_interior_ambient_probe_contribution(RID p_probe, float p_contrib);
- virtual void reflection_probe_set_max_distance(RID p_probe, float p_distance);
- virtual void reflection_probe_set_extents(RID p_probe, const Vector3 &p_extents);
- virtual void reflection_probe_set_origin_offset(RID p_probe, const Vector3 &p_offset);
- virtual void reflection_probe_set_as_interior(RID p_probe, bool p_enable);
- virtual void reflection_probe_set_enable_box_projection(RID p_probe, bool p_enable);
- virtual void reflection_probe_set_enable_shadows(RID p_probe, bool p_enable);
- virtual void reflection_probe_set_cull_mask(RID p_probe, uint32_t p_layers);
- virtual void reflection_probe_set_resolution(RID p_probe, int p_resolution);
-
- virtual AABB reflection_probe_get_aabb(RID p_probe) const;
- virtual RS::ReflectionProbeUpdateMode reflection_probe_get_update_mode(RID p_probe) const;
- virtual uint32_t reflection_probe_get_cull_mask(RID p_probe) const;
-
- virtual int reflection_probe_get_resolution(RID p_probe) const;
-
- virtual Vector3 reflection_probe_get_extents(RID p_probe) const;
- virtual Vector3 reflection_probe_get_origin_offset(RID p_probe) const;
- virtual float reflection_probe_get_origin_max_distance(RID p_probe) const;
- virtual bool reflection_probe_renders_shadows(RID p_probe) const;
-
- /* GI PROBE API */
- virtual RID gi_probe_create();
-
- virtual void gi_probe_set_bounds(RID p_probe, const AABB &p_bounds);
- virtual AABB gi_probe_get_bounds(RID p_probe) const;
-
- virtual void gi_probe_set_cell_size(RID p_probe, float p_size);
- virtual float gi_probe_get_cell_size(RID p_probe) const;
-
- virtual void gi_probe_set_to_cell_xform(RID p_probe, const Transform &p_xform);
- virtual Transform gi_probe_get_to_cell_xform(RID p_probe) const;
-
- virtual void gi_probe_set_dynamic_data(RID p_probe, const Vector<int> &p_data);
- virtual Vector<int> gi_probe_get_dynamic_data(RID p_probe) const;
-
- virtual void gi_probe_set_dynamic_range(RID p_probe, int p_range);
- virtual int gi_probe_get_dynamic_range(RID p_probe) const;
-
- virtual void gi_probe_set_energy(RID p_probe, float p_range);
- virtual float gi_probe_get_energy(RID p_probe) const;
-
- virtual void gi_probe_set_bias(RID p_probe, float p_range);
- virtual float gi_probe_get_bias(RID p_probe) const;
-
- virtual void gi_probe_set_normal_bias(RID p_probe, float p_range);
- virtual float gi_probe_get_normal_bias(RID p_probe) const;
-
- virtual void gi_probe_set_propagation(RID p_probe, float p_range);
- virtual float gi_probe_get_propagation(RID p_probe) const;
-
- virtual void gi_probe_set_interior(RID p_probe, bool p_enable);
- virtual bool gi_probe_is_interior(RID p_probe) const;
-
- virtual void gi_probe_set_compress(RID p_probe, bool p_enable);
- virtual bool gi_probe_is_compressed(RID p_probe) const;
-
- virtual uint32_t gi_probe_get_version(RID p_probe);
-
- virtual GIProbeCompression gi_probe_get_dynamic_data_get_preferred_compression() const;
- virtual RID gi_probe_dynamic_data_create(int p_width, int p_height, int p_depth, GIProbeCompression p_compression);
- virtual void gi_probe_dynamic_data_update(RID p_gi_probe_data, int p_depth_slice, int p_slice_count, int p_mipmap, const void *p_data);
-
- /* LIGHTMAP */
-
- struct LightmapCapture : public Instantiable {
- Vector<LightmapCaptureOctree> octree;
- AABB bounds;
- Transform cell_xform;
- int cell_subdiv;
- float energy;
- LightmapCapture() {
- energy = 1.0;
- cell_subdiv = 1;
- }
- };
-
- mutable RID_PtrOwner<LightmapCapture> lightmap_capture_data_owner;
-
- virtual RID lightmap_capture_create();
- virtual void lightmap_capture_set_bounds(RID p_capture, const AABB &p_bounds);
- virtual AABB lightmap_capture_get_bounds(RID p_capture) const;
- virtual void lightmap_capture_set_octree(RID p_capture, const Vector<uint8_t> &p_octree);
- virtual Vector<uint8_t> lightmap_capture_get_octree(RID p_capture) const;
- virtual void lightmap_capture_set_octree_cell_transform(RID p_capture, const Transform &p_xform);
- virtual Transform lightmap_capture_get_octree_cell_transform(RID p_capture) const;
- virtual void lightmap_capture_set_octree_cell_subdiv(RID p_capture, int p_subdiv);
- virtual int lightmap_capture_get_octree_cell_subdiv(RID p_capture) const;
- virtual void lightmap_capture_set_energy(RID p_capture, float p_energy);
- virtual float lightmap_capture_get_energy(RID p_capture) const;
- virtual const Vector<LightmapCaptureOctree> *lightmap_capture_get_octree_ptr(RID p_capture) const;
-
- /* PARTICLES */
- void update_particles();
-
- virtual RID particles_create();
-
- virtual void particles_set_emitting(RID p_particles, bool p_emitting);
- virtual bool particles_get_emitting(RID p_particles);
-
- virtual void particles_set_amount(RID p_particles, int p_amount);
- virtual void particles_set_lifetime(RID p_particles, float p_lifetime);
- virtual void particles_set_one_shot(RID p_particles, bool p_one_shot);
- virtual void particles_set_pre_process_time(RID p_particles, float p_time);
- virtual void particles_set_explosiveness_ratio(RID p_particles, float p_ratio);
- virtual void particles_set_randomness_ratio(RID p_particles, float p_ratio);
- virtual void particles_set_custom_aabb(RID p_particles, const AABB &p_aabb);
- virtual void particles_set_speed_scale(RID p_particles, float p_scale);
- virtual void particles_set_use_local_coordinates(RID p_particles, bool p_enable);
- virtual void particles_set_process_material(RID p_particles, RID p_material);
- virtual void particles_set_fixed_fps(RID p_particles, int p_fps);
- virtual void particles_set_fractional_delta(RID p_particles, bool p_enable);
- virtual void particles_restart(RID p_particles);
-
- virtual void particles_set_draw_order(RID p_particles, RS::ParticlesDrawOrder p_order);
-
- virtual void particles_set_draw_passes(RID p_particles, int p_passes);
- virtual void particles_set_draw_pass_mesh(RID p_particles, int p_pass, RID p_mesh);
-
- virtual void particles_request_process(RID p_particles);
- virtual AABB particles_get_current_aabb(RID p_particles);
- virtual AABB particles_get_aabb(RID p_particles) const;
-
- virtual void particles_set_emission_transform(RID p_particles, const Transform &p_transform);
-
- virtual int particles_get_draw_passes(RID p_particles) const;
- virtual RID particles_get_draw_pass_mesh(RID p_particles, int p_pass) const;
-
- virtual bool particles_is_inactive(RID p_particles) const;
-
- /* INSTANCE */
-
- virtual void instance_add_skeleton(RID p_skeleton, RasterizerScene::InstanceBase *p_instance);
- virtual void instance_remove_skeleton(RID p_skeleton, RasterizerScene::InstanceBase *p_instance);
-
- virtual void instance_add_dependency(RID p_base, RasterizerScene::InstanceBase *p_instance);
- virtual void instance_remove_dependency(RID p_base, RasterizerScene::InstanceBase *p_instance);
-
- /* RENDER TARGET */
-
- struct RenderTarget {
- GLuint fbo;
- GLuint color;
- GLuint depth;
-
- GLuint multisample_fbo;
- GLuint multisample_color;
- GLuint multisample_depth;
- bool multisample_active;
-
- struct Effect {
- GLuint fbo;
- int width;
- int height;
-
- GLuint color;
-
- Effect() :
- fbo(0),
- width(0),
- height(0),
- color(0) {
- }
- };
-
- Effect copy_screen_effect;
-
- struct MipMaps {
- struct Size {
- GLuint fbo;
- GLuint color;
- int width;
- int height;
- };
-
- Vector<Size> sizes;
- GLuint color;
- int levels;
-
- MipMaps() :
- color(0),
- levels(0) {
- }
- };
-
- MipMaps mip_maps[2];
-
- struct External {
- GLuint fbo;
- GLuint color;
- GLuint depth;
- RID texture;
-
- External() :
- fbo(0),
- color(0),
- depth(0) {
- }
- } external;
-
- int x, y, width, height;
-
- bool flags[RENDER_TARGET_FLAG_MAX];
-
- bool used_in_frame;
- RS::ViewportMSAA msaa;
-
- RID texture;
-
- bool used_dof_blur_near;
- bool mip_maps_allocated;
-
- RenderTarget() :
- fbo(0),
- color(0),
- depth(0),
- multisample_fbo(0),
- multisample_color(0),
- multisample_depth(0),
- multisample_active(false),
- x(0),
- y(0),
- width(0),
- height(0),
- used_in_frame(false),
- msaa(RS::VIEWPORT_MSAA_DISABLED),
- used_dof_blur_near(false),
- mip_maps_allocated(false) {
- for (int i = 0; i < RENDER_TARGET_FLAG_MAX; ++i) {
- flags[i] = false;
- }
- external.fbo = 0;
- }
- };
-
- mutable RID_PtrOwner<RenderTarget> render_target_owner;
-
- void _render_target_clear(RenderTarget *rt);
- void _render_target_allocate(RenderTarget *rt);
-
- virtual RID render_target_create();
- virtual void render_target_set_position(RID p_render_target, int p_x, int p_y);
- virtual void render_target_set_size(RID p_render_target, int p_width, int p_height);
- virtual RID render_target_get_texture(RID p_render_target) const;
- virtual void render_target_set_external_texture(RID p_render_target, unsigned int p_texture_id);
-
- virtual void render_target_set_flag(RID p_render_target, RenderTargetFlags p_flag, bool p_value);
- virtual bool render_target_was_used(RID p_render_target);
- virtual void render_target_set_as_unused(RID p_render_target);
- virtual void render_target_set_msaa(RID p_render_target, RS::ViewportMSAA p_msaa);
-
- /* CANVAS SHADOW */
-
- struct CanvasLightShadow {
- int size;
- int height;
- GLuint fbo;
- GLuint depth;
- GLuint distance; //for older devices
- };
-
- RID_PtrOwner<CanvasLightShadow> canvas_light_shadow_owner;
-
- virtual RID canvas_light_shadow_buffer_create(int p_width);
-
- /* LIGHT SHADOW MAPPING */
-
- struct CanvasOccluder {
- GLuint vertex_id; // 0 means, unconfigured
- GLuint index_id; // 0 means, unconfigured
- Vector<Vector2> lines;
- int len;
- };
-
- RID_PtrOwner<CanvasOccluder> canvas_occluder_owner;
-
- virtual RID canvas_light_occluder_create();
- virtual void canvas_light_occluder_set_polylines(RID p_occluder, const Vector<Vector2> &p_lines);
-
- virtual RS::InstanceType get_base_type(RID p_rid) const;
-
- virtual bool free(RID p_rid);
-
- struct Frame {
- RenderTarget *current_rt;
-
- bool clear_request;
- Color clear_request_color;
- int canvas_draw_commands;
- float time[4];
- float delta;
- uint64_t count;
-
- } frame;
-
- void initialize();
- void finalize();
-
- void _copy_screen();
-
- virtual bool has_os_feature(const String &p_feature) const;
-
- virtual void update_dirty_resources();
-
- virtual void set_debug_generate_wireframes(bool p_generate);
-
- virtual void render_info_begin_capture();
- virtual void render_info_end_capture();
- virtual int get_captured_render_info(RS::RenderInfo p_info);
-
- virtual int get_render_info(RS::RenderInfo p_info);
- virtual String get_video_adapter_name() const;
- virtual String get_video_adapter_vendor() const;
-
- RasterizerStorageGLES2();
-};
-
-#endif // RASTERIZERSTORAGEGLES2_H
diff --git a/drivers/gles2/shader_compiler_gles2.cpp b/drivers/gles2/shader_compiler_gles2.cpp
deleted file mode 100644
index 1e30f0dfa1..0000000000
--- a/drivers/gles2/shader_compiler_gles2.cpp
+++ /dev/null
@@ -1,1181 +0,0 @@
-/*************************************************************************/
-/* shader_compiler_gles2.cpp */
-/*************************************************************************/
-/* This file is part of: */
-/* GODOT ENGINE */
-/* https://godotengine.org */
-/*************************************************************************/
-/* Copyright (c) 2007-2020 Juan Linietsky, Ariel Manzur. */
-/* Copyright (c) 2014-2020 Godot Engine contributors (cf. AUTHORS.md). */
-/* */
-/* Permission is hereby granted, free of charge, to any person obtaining */
-/* a copy of this software and associated documentation files (the */
-/* "Software"), to deal in the Software without restriction, including */
-/* without limitation the rights to use, copy, modify, merge, publish, */
-/* distribute, sublicense, and/or sell copies of the Software, and to */
-/* permit persons to whom the Software is furnished to do so, subject to */
-/* the following conditions: */
-/* */
-/* The above copyright notice and this permission notice shall be */
-/* included in all copies or substantial portions of the Software. */
-/* */
-/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
-/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
-/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.*/
-/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
-/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
-/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
-/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
-/*************************************************************************/
-
-#include "shader_compiler_gles2.h"
-
-#include "core/os/os.h"
-#include "core/project_settings.h"
-#include "core/string_buffer.h"
-#include "core/string_builder.h"
-
-#define SL ShaderLanguage
-
-static String _mktab(int p_level) {
- String tb;
- for (int i = 0; i < p_level; i++) {
- tb += "\t";
- }
-
- return tb;
-}
-
-static String _typestr(SL::DataType p_type) {
- return ShaderLanguage::get_datatype_name(p_type);
-}
-
-static String _prestr(SL::DataPrecision p_pres) {
- switch (p_pres) {
- case SL::PRECISION_LOWP:
- return "lowp ";
- case SL::PRECISION_MEDIUMP:
- return "mediump ";
- case SL::PRECISION_HIGHP:
- return "highp ";
- case SL::PRECISION_DEFAULT:
- return "";
- }
- return "";
-}
-
-static String _qualstr(SL::ArgumentQualifier p_qual) {
- switch (p_qual) {
- case SL::ARGUMENT_QUALIFIER_IN:
- return "in ";
- case SL::ARGUMENT_QUALIFIER_OUT:
- return "out ";
- case SL::ARGUMENT_QUALIFIER_INOUT:
- return "inout ";
- }
- return "";
-}
-
-static String _opstr(SL::Operator p_op) {
- return SL::get_operator_text(p_op);
-}
-
-static String _mkid(const String &p_id) {
- String id = "m_" + p_id.replace("__", "_dus_");
- return id.replace("__", "_dus_"); //doubleunderscore is reserved in glsl
-}
-
-static String f2sp0(float p_float) {
- String num = rtoss(p_float);
- if (num.find(".") == -1 && num.find("e") == -1) {
- num += ".0";
- }
- return num;
-}
-
-static String get_constant_text(SL::DataType p_type, const Vector<SL::ConstantNode::Value> &p_values) {
- switch (p_type) {
- case SL::TYPE_BOOL:
- return p_values[0].boolean ? "true" : "false";
- case SL::TYPE_BVEC2:
- case SL::TYPE_BVEC3:
- case SL::TYPE_BVEC4: {
- StringBuffer<> text;
-
- text += "bvec";
- text += itos(p_type - SL::TYPE_BOOL + 1);
- text += "(";
-
- for (int i = 0; i < p_values.size(); i++) {
- if (i > 0)
- text += ",";
-
- text += p_values[i].boolean ? "true" : "false";
- }
- text += ")";
- return text.as_string();
- }
-
- // GLSL ES 2 doesn't support uints, so we just use signed ints instead...
- case SL::TYPE_UINT:
- return itos(p_values[0].uint);
- case SL::TYPE_UVEC2:
- case SL::TYPE_UVEC3:
- case SL::TYPE_UVEC4: {
- StringBuffer<> text;
-
- text += "ivec";
- text += itos(p_type - SL::TYPE_UINT + 1);
- text += "(";
-
- for (int i = 0; i < p_values.size(); i++) {
- if (i > 0)
- text += ",";
-
- text += itos(p_values[i].uint);
- }
- text += ")";
- return text.as_string();
-
- } break;
-
- case SL::TYPE_INT:
- return itos(p_values[0].sint);
- case SL::TYPE_IVEC2:
- case SL::TYPE_IVEC3:
- case SL::TYPE_IVEC4: {
- StringBuffer<> text;
-
- text += "ivec";
- text += itos(p_type - SL::TYPE_INT + 1);
- text += "(";
-
- for (int i = 0; i < p_values.size(); i++) {
- if (i > 0)
- text += ",";
-
- text += itos(p_values[i].sint);
- }
- text += ")";
- return text.as_string();
-
- } break;
- case SL::TYPE_FLOAT:
- return f2sp0(p_values[0].real);
- case SL::TYPE_VEC2:
- case SL::TYPE_VEC3:
- case SL::TYPE_VEC4: {
- StringBuffer<> text;
-
- text += "vec";
- text += itos(p_type - SL::TYPE_FLOAT + 1);
- text += "(";
-
- for (int i = 0; i < p_values.size(); i++) {
- if (i > 0)
- text += ",";
-
- text += f2sp0(p_values[i].real);
- }
- text += ")";
- return text.as_string();
-
- } break;
- case SL::TYPE_MAT2:
- case SL::TYPE_MAT3:
- case SL::TYPE_MAT4: {
- StringBuffer<> text;
-
- text += "mat";
- text += itos(p_type - SL::TYPE_MAT2 + 2);
- text += "(";
-
- for (int i = 0; i < p_values.size(); i++) {
- if (i > 0)
- text += ",";
-
- text += f2sp0(p_values[i].real);
- }
- text += ")";
- return text.as_string();
-
- } break;
- default:
- ERR_FAIL_V(String());
- }
-}
-
-void ShaderCompilerGLES2::_dump_function_deps(SL::ShaderNode *p_node, const StringName &p_for_func, const Map<StringName, String> &p_func_code, StringBuilder &r_to_add, Set<StringName> &r_added) {
- int fidx = -1;
-
- for (int i = 0; i < p_node->functions.size(); i++) {
- if (p_node->functions[i].name == p_for_func) {
- fidx = i;
- break;
- }
- }
-
- ERR_FAIL_COND(fidx == -1);
-
- for (Set<StringName>::Element *E = p_node->functions[fidx].uses_function.front(); E; E = E->next()) {
- if (r_added.has(E->get())) {
- continue;
- }
-
- _dump_function_deps(p_node, E->get(), p_func_code, r_to_add, r_added);
-
- SL::FunctionNode *fnode = nullptr;
-
- for (int i = 0; i < p_node->functions.size(); i++) {
- if (p_node->functions[i].name == E->get()) {
- fnode = p_node->functions[i].function;
- break;
- }
- }
-
- ERR_FAIL_COND(!fnode);
-
- r_to_add += "\n";
-
- StringBuffer<128> header;
- if (fnode->return_type == SL::TYPE_STRUCT) {
- header += _mkid(fnode->return_struct_name) + " " + _mkid(fnode->name) + "(";
- } else {
- header += _typestr(fnode->return_type) + " " + _mkid(fnode->name) + "(";
- }
-
- for (int i = 0; i < fnode->arguments.size(); i++) {
- if (i > 0)
- header += ", ";
- if (fnode->arguments[i].is_const) {
- header += "const ";
- }
- if (fnode->arguments[i].type == SL::TYPE_STRUCT) {
- header += _qualstr(fnode->arguments[i].qualifier) + _mkid(fnode->arguments[i].type_str) + " " + _mkid(fnode->arguments[i].name);
- } else {
- header += _qualstr(fnode->arguments[i].qualifier) + _prestr(fnode->arguments[i].precision) + _typestr(fnode->arguments[i].type) + " " + _mkid(fnode->arguments[i].name);
- }
- }
-
- header += ")\n";
- r_to_add += header.as_string();
- r_to_add += p_func_code[E->get()];
-
- r_added.insert(E->get());
- }
-}
-
-String ShaderCompilerGLES2::_dump_node_code(SL::Node *p_node, int p_level, GeneratedCode &r_gen_code, IdentifierActions &p_actions, const DefaultIdentifierActions &p_default_actions, bool p_assigning, bool p_use_scope) {
- StringBuilder code;
-
- switch (p_node->type) {
- case SL::Node::TYPE_SHADER: {
- SL::ShaderNode *snode = (SL::ShaderNode *)p_node;
-
- for (int i = 0; i < snode->render_modes.size(); i++) {
- if (p_default_actions.render_mode_defines.has(snode->render_modes[i]) && !used_rmode_defines.has(snode->render_modes[i])) {
- r_gen_code.custom_defines.push_back(p_default_actions.render_mode_defines[snode->render_modes[i]].utf8());
- used_rmode_defines.insert(snode->render_modes[i]);
- }
-
- if (p_actions.render_mode_flags.has(snode->render_modes[i])) {
- *p_actions.render_mode_flags[snode->render_modes[i]] = true;
- }
-
- if (p_actions.render_mode_values.has(snode->render_modes[i])) {
- Pair<int *, int> &p = p_actions.render_mode_values[snode->render_modes[i]];
- *p.first = p.second;
- }
- }
-
- int max_texture_uniforms = 0;
- int max_uniforms = 0;
-
- for (Map<StringName, SL::ShaderNode::Uniform>::Element *E = snode->uniforms.front(); E; E = E->next()) {
- if (SL::is_sampler_type(E->get().type))
- max_texture_uniforms++;
- else
- max_uniforms++;
- }
-
- r_gen_code.texture_uniforms.resize(max_texture_uniforms);
- r_gen_code.texture_hints.resize(max_texture_uniforms);
- r_gen_code.texture_types.resize(max_texture_uniforms);
-
- r_gen_code.uniforms.resize(max_uniforms + max_texture_uniforms);
-
- StringBuilder vertex_global;
- StringBuilder fragment_global;
-
- // structs
-
- for (int i = 0; i < snode->vstructs.size(); i++) {
- SL::StructNode *st = snode->vstructs[i].shader_struct;
- String struct_code;
-
- struct_code += "struct ";
- struct_code += _mkid(snode->vstructs[i].name);
- struct_code += " ";
- struct_code += "{\n";
- for (int j = 0; j < st->members.size(); j++) {
- SL::MemberNode *m = st->members[j];
- if (m->datatype == SL::TYPE_STRUCT) {
- struct_code += _mkid(m->struct_name);
- } else {
- struct_code += _prestr(m->precision);
- struct_code += _typestr(m->datatype);
- }
- struct_code += " ";
- struct_code += m->name;
- if (m->array_size > 0) {
- struct_code += "[";
- struct_code += itos(m->array_size);
- struct_code += "]";
- }
- struct_code += ";\n";
- }
- struct_code += "}";
- struct_code += ";\n";
-
- vertex_global += struct_code;
- fragment_global += struct_code;
- }
-
- // uniforms
-
- for (Map<StringName, SL::ShaderNode::Uniform>::Element *E = snode->uniforms.front(); E; E = E->next()) {
- StringBuffer<> uniform_code;
-
- // use highp if no precision is specified to prevent different default values in fragment and vertex shader
- SL::DataPrecision precision = E->get().precision;
- if (precision == SL::PRECISION_DEFAULT && E->get().type != SL::TYPE_BOOL) {
- precision = SL::PRECISION_HIGHP;
- }
-
- uniform_code += "uniform ";
- uniform_code += _prestr(precision);
- uniform_code += _typestr(E->get().type);
- uniform_code += " ";
- uniform_code += _mkid(E->key());
- uniform_code += ";\n";
-
- if (SL::is_sampler_type(E->get().type)) {
- r_gen_code.texture_uniforms.write[E->get().texture_order] = E->key();
- r_gen_code.texture_hints.write[E->get().texture_order] = E->get().hint;
- r_gen_code.texture_types.write[E->get().texture_order] = E->get().type;
- } else {
- r_gen_code.uniforms.write[E->get().order] = E->key();
- }
-
- vertex_global += uniform_code.as_string();
- fragment_global += uniform_code.as_string();
-
- p_actions.uniforms->insert(E->key(), E->get());
- }
-
- // varyings
-
- for (Map<StringName, SL::ShaderNode::Varying>::Element *E = snode->varyings.front(); E; E = E->next()) {
- StringBuffer<> varying_code;
-
- varying_code += "varying ";
- varying_code += _prestr(E->get().precision);
- varying_code += _typestr(E->get().type);
- varying_code += " ";
- varying_code += _mkid(E->key());
- if (E->get().array_size > 0) {
- varying_code += "[";
- varying_code += itos(E->get().array_size);
- varying_code += "]";
- }
- varying_code += ";\n";
-
- String final_code = varying_code.as_string();
-
- vertex_global += final_code;
- fragment_global += final_code;
- }
-
- // constants
-
- for (int i = 0; i < snode->vconstants.size(); i++) {
- const SL::ShaderNode::Constant &cnode = snode->vconstants[i];
- String gcode;
- gcode += "const ";
- gcode += _prestr(cnode.precision);
- if (cnode.type == SL::TYPE_STRUCT) {
- gcode += _mkid(cnode.type_str);
- } else {
- gcode += _typestr(cnode.type);
- }
- gcode += " " + _mkid(String(cnode.name));
- gcode += "=";
- gcode += _dump_node_code(cnode.initializer, p_level, r_gen_code, p_actions, p_default_actions, p_assigning);
- gcode += ";\n";
- vertex_global += gcode;
- fragment_global += gcode;
- }
-
- // functions
-
- Map<StringName, String> function_code;
-
- for (int i = 0; i < snode->functions.size(); i++) {
- SL::FunctionNode *fnode = snode->functions[i].function;
- current_func_name = fnode->name;
- function_code[fnode->name] = _dump_node_code(fnode->body, 1, r_gen_code, p_actions, p_default_actions, p_assigning);
- }
-
- Set<StringName> added_vertex;
- Set<StringName> added_fragment;
-
- for (int i = 0; i < snode->functions.size(); i++) {
- SL::FunctionNode *fnode = snode->functions[i].function;
-
- current_func_name = fnode->name;
-
- if (fnode->name == vertex_name) {
- _dump_function_deps(snode, fnode->name, function_code, vertex_global, added_vertex);
- r_gen_code.vertex = function_code[vertex_name];
-
- } else if (fnode->name == fragment_name) {
- _dump_function_deps(snode, fnode->name, function_code, fragment_global, added_fragment);
- r_gen_code.fragment = function_code[fragment_name];
-
- } else if (fnode->name == light_name) {
- _dump_function_deps(snode, fnode->name, function_code, fragment_global, added_fragment);
- r_gen_code.light = function_code[light_name];
- }
- }
-
- r_gen_code.vertex_global = vertex_global.as_string();
- r_gen_code.fragment_global = fragment_global.as_string();
-
- } break;
- case SL::Node::TYPE_STRUCT: {
- } break;
- case SL::Node::TYPE_FUNCTION: {
- } break;
-
- case SL::Node::TYPE_BLOCK: {
- SL::BlockNode *bnode = (SL::BlockNode *)p_node;
-
- if (!bnode->single_statement) {
- code += _mktab(p_level - 1);
- code += "{\n";
- }
-
- for (int i = 0; i < bnode->statements.size(); i++) {
- String statement_code = _dump_node_code(bnode->statements[i], p_level, r_gen_code, p_actions, p_default_actions, p_assigning);
-
- if (bnode->statements[i]->type == SL::Node::TYPE_CONTROL_FLOW || bnode->single_statement) {
- code += statement_code;
- } else {
- code += _mktab(p_level);
- code += statement_code;
- code += ";\n";
- }
- }
-
- if (!bnode->single_statement) {
- code += _mktab(p_level - 1);
- code += "}\n";
- }
- } break;
-
- case SL::Node::TYPE_VARIABLE_DECLARATION: {
- SL::VariableDeclarationNode *var_dec_node = (SL::VariableDeclarationNode *)p_node;
-
- StringBuffer<> declaration;
- if (var_dec_node->is_const) {
- declaration += "const ";
- }
- if (var_dec_node->datatype == SL::TYPE_STRUCT) {
- declaration += _mkid(var_dec_node->struct_name);
- } else {
- declaration += _prestr(var_dec_node->precision);
- declaration += _typestr(var_dec_node->datatype);
- }
-
- for (int i = 0; i < var_dec_node->declarations.size(); i++) {
- if (i > 0) {
- declaration += ",";
- }
-
- declaration += " ";
-
- declaration += _mkid(var_dec_node->declarations[i].name);
-
- if (var_dec_node->declarations[i].initializer) {
- declaration += " = ";
- declaration += _dump_node_code(var_dec_node->declarations[i].initializer, p_level, r_gen_code, p_actions, p_default_actions, p_assigning);
- }
- }
-
- code += declaration.as_string();
- } break;
-
- case SL::Node::TYPE_VARIABLE: {
- SL::VariableNode *var_node = (SL::VariableNode *)p_node;
-
- if (p_assigning && p_actions.write_flag_pointers.has(var_node->name)) {
- *p_actions.write_flag_pointers[var_node->name] = true;
- }
-
- if (p_default_actions.usage_defines.has(var_node->name) && !used_name_defines.has(var_node->name)) {
- String define = p_default_actions.usage_defines[var_node->name];
-
- if (define.begins_with("@")) {
- define = p_default_actions.usage_defines[define.substr(1, define.length())];
- }
-
- r_gen_code.custom_defines.push_back(define.utf8());
- used_name_defines.insert(var_node->name);
- }
-
- if (p_actions.usage_flag_pointers.has(var_node->name) && !used_flag_pointers.has(var_node->name)) {
- *p_actions.usage_flag_pointers[var_node->name] = true;
- used_flag_pointers.insert(var_node->name);
- }
-
- if (p_default_actions.renames.has(var_node->name)) {
- code += p_default_actions.renames[var_node->name];
- } else {
- code += _mkid(var_node->name);
- }
-
- if (var_node->name == time_name) {
- if (current_func_name == vertex_name) {
- r_gen_code.uses_vertex_time = true;
- }
- if (current_func_name == fragment_name || current_func_name == light_name) {
- r_gen_code.uses_fragment_time = true;
- }
- }
- } break;
- case SL::Node::TYPE_ARRAY_CONSTRUCT: {
- SL::ArrayConstructNode *arr_con_node = (SL::ArrayConstructNode *)p_node;
- int sz = arr_con_node->initializer.size();
- if (acnode->datatype == SL::TYPE_STRUCT) {
- code += _mkid(arr_con_node->struct_name);
- } else {
- code += _typestr(arr_con_node->datatype);
- }
- code += "[";
- code += itos(arr_con_node->initializer.size());
- code += "]";
- code += "(";
- for (int i = 0; i < sz; i++) {
- code += _dump_node_code(arr_con_node->initializer[i], p_level, r_gen_code, p_actions, p_default_actions, p_assigning);
- if (i != sz - 1) {
- code += ", ";
- }
- }
- code += ")";
- } break;
- case SL::Node::TYPE_ARRAY_DECLARATION: {
- SL::ArrayDeclarationNode *arr_dec_node = (SL::ArrayDeclarationNode *)p_node;
-
- StringBuffer<> declaration;
- if (arr_dec_node->datatype == SL::TYPE_STRUCT) {
- declaration += _mkid(arr_dec_node->struct_name);
- } else {
- declaration += _prestr(arr_dec_node->precision);
- declaration += _typestr(arr_dec_node->datatype);
- }
- for (int i = 0; i < arr_dec_node->declarations.size(); i++) {
- if (i > 0) {
- declaration += ",";
- }
-
- declaration += " ";
-
- declaration += _mkid(arr_dec_node->declarations[i].name);
- declaration += "[";
- declaration += itos(arr_dec_node->declarations[i].size);
- declaration += "]";
- }
-
- code += declaration.as_string();
- } break;
- case SL::Node::TYPE_ARRAY: {
- SL::ArrayNode *arr_node = (SL::ArrayNode *)p_node;
-
- if (p_assigning && p_actions.write_flag_pointers.has(arr_node->name)) {
- *p_actions.write_flag_pointers[arr_node->name] = true;
- }
-
- if (p_default_actions.usage_defines.has(arr_node->name) && !used_name_defines.has(arr_node->name)) {
- String define = p_default_actions.usage_defines[arr_node->name];
-
- if (define.begins_with("@")) {
- define = p_default_actions.usage_defines[define.substr(1, define.length())];
- }
-
- r_gen_code.custom_defines.push_back(define.utf8());
- used_name_defines.insert(arr_node->name);
- }
-
- if (p_actions.usage_flag_pointers.has(arr_node->name) && !used_flag_pointers.has(arr_node->name)) {
- *p_actions.usage_flag_pointers[arr_node->name] = true;
- used_flag_pointers.insert(arr_node->name);
- }
-
- if (p_default_actions.renames.has(arr_node->name)) {
- code += p_default_actions.renames[arr_node->name];
- } else {
- code += _mkid(arr_node->name);
- }
-
- if (arr_node->call_expression != nullptr) {
- code += ".";
- code += _dump_node_code(arr_node->call_expression, p_level, r_gen_code, p_actions, p_default_actions, p_assigning, false);
- }
-
- if (arr_node->index_expression != nullptr) {
- code += "[";
- code += _dump_node_code(arr_node->index_expression, p_level, r_gen_code, p_actions, p_default_actions, p_assigning);
- code += "]";
- }
-
- if (arr_node->name == time_name) {
- if (current_func_name == vertex_name) {
- r_gen_code.uses_vertex_time = true;
- }
- if (current_func_name == fragment_name || current_func_name == light_name) {
- r_gen_code.uses_fragment_time = true;
- }
- }
-
- } break;
- case SL::Node::TYPE_CONSTANT: {
- SL::ConstantNode *const_node = (SL::ConstantNode *)p_node;
-
- return get_constant_text(const_node->datatype, const_node->values);
- } break;
-
- case SL::Node::TYPE_OPERATOR: {
- SL::OperatorNode *op_node = (SL::OperatorNode *)p_node;
-
- switch (op_node->op) {
- case SL::OP_ASSIGN:
- case SL::OP_ASSIGN_ADD:
- case SL::OP_ASSIGN_SUB:
- case SL::OP_ASSIGN_MUL:
- case SL::OP_ASSIGN_DIV:
- case SL::OP_ASSIGN_SHIFT_LEFT:
- case SL::OP_ASSIGN_SHIFT_RIGHT:
- case SL::OP_ASSIGN_BIT_AND:
- case SL::OP_ASSIGN_BIT_OR:
- case SL::OP_ASSIGN_BIT_XOR: {
- code += _dump_node_code(op_node->arguments[0], p_level, r_gen_code, p_actions, p_default_actions, true);
- code += " ";
- code += _opstr(op_node->op);
- code += " ";
- code += _dump_node_code(op_node->arguments[1], p_level, r_gen_code, p_actions, p_default_actions, p_assigning);
- } break;
-
- case SL::OP_ASSIGN_MOD: {
- code += _dump_node_code(op_node->arguments[0], p_level, r_gen_code, p_actions, p_default_actions, true);
- code += " = ";
- code += "mod(";
- code += _dump_node_code(op_node->arguments[0], p_level, r_gen_code, p_actions, p_default_actions, true);
- code += ", ";
- code += _dump_node_code(op_node->arguments[1], p_level, r_gen_code, p_actions, p_default_actions, p_assigning);
- code += ")";
- } break;
-
- case SL::OP_BIT_INVERT:
- case SL::OP_NEGATE:
- case SL::OP_NOT:
- case SL::OP_DECREMENT:
- case SL::OP_INCREMENT: {
- code += _opstr(op_node->op);
- code += _dump_node_code(op_node->arguments[0], p_level, r_gen_code, p_actions, p_default_actions, p_assigning);
- } break;
-
- case SL::OP_POST_DECREMENT:
- case SL::OP_POST_INCREMENT: {
- code += _dump_node_code(op_node->arguments[0], p_level, r_gen_code, p_actions, p_default_actions, p_assigning);
- code += _opstr(op_node->op);
- } break;
-
- case SL::OP_CALL:
- case SL::OP_STRUCT:
- case SL::OP_CONSTRUCT: {
- ERR_FAIL_COND_V(op_node->arguments[0]->type != SL::Node::TYPE_VARIABLE, String());
-
- SL::VariableNode *var_node = (SL::VariableNode *)op_node->arguments[0];
- if (op_node->op == SL::OP_STRUCT) {
- code += _mkid(var_node->name);
- } else if (op_node->op == SL::OP_CONSTRUCT) {
- code += var_node->name;
- } else {
- if (var_node->name == "texture") {
- // emit texture call
-
- if (op_node->arguments[1]->get_datatype() == SL::TYPE_SAMPLER2D) {
- code += "texture2D";
- } else if (op_node->arguments[1]->get_datatype() == SL::TYPE_SAMPLERCUBE) {
- code += "textureCube";
- } else if (op_node->arguments[1]->get_datatype() == SL::TYPE_SAMPLER3D) {
- code += "texture3D";
- } else if (op_node->arguments[1]->get_datatype() == SL::TYPE_SAMPLER2DARRAY) {
- code += "texture2DArray";
- }
-
- } else if (var_node->name == "textureLod") {
- // emit texture call
-
- if (op_node->arguments[1]->get_datatype() == SL::TYPE_SAMPLER2D) {
- code += "texture2DLod";
- } else if (op_node->arguments[1]->get_datatype() == SL::TYPE_SAMPLERCUBE) {
- code += "textureCubeLod";
- } else if (op_node->arguments[1]->get_datatype() == SL::TYPE_SAMPLER3D) {
- code += "texture3DLod";
- } else if (op_node->arguments[1]->get_datatype() == SL::TYPE_SAMPLER2DARRAY) {
- code += "texture2DArrayLod";
- }
-
- } else if (var_node->name == "mix") {
- switch (op_node->arguments[3]->get_datatype()) {
- case SL::TYPE_BVEC2: {
- code += "select2";
- } break;
-
- case SL::TYPE_BVEC3: {
- code += "select3";
- } break;
-
- case SL::TYPE_BVEC4: {
- code += "select4";
- } break;
-
- case SL::TYPE_VEC2:
- case SL::TYPE_VEC3:
- case SL::TYPE_VEC4:
- case SL::TYPE_FLOAT: {
- code += "mix";
- } break;
-
- default: {
- SL::DataType type = op_node->arguments[3]->get_datatype();
- // FIXME: Proper error print or graceful handling
- print_line(String("uhhhh invalid mix with type: ") + itos(type));
- } break;
- }
-
- } else if (p_default_actions.renames.has(var_node->name)) {
- code += p_default_actions.renames[var_node->name];
- } else if (internal_functions.has(var_node->name)) {
- code += var_node->name;
- } else {
- code += _mkid(var_node->name);
- }
- }
-
- code += "(";
-
- for (int i = 1; i < op_node->arguments.size(); i++) {
- if (i > 1) {
- code += ", ";
- }
-
- code += _dump_node_code(op_node->arguments[i], p_level, r_gen_code, p_actions, p_default_actions, p_assigning);
- }
-
- code += ")";
-
- if (p_default_actions.usage_defines.has(var_node->name) && !used_name_defines.has(var_node->name)) {
- String define = p_default_actions.usage_defines[var_node->name];
-
- if (define.begins_with("@")) {
- define = p_default_actions.usage_defines[define.substr(1, define.length())];
- }
-
- r_gen_code.custom_defines.push_back(define.utf8());
- used_name_defines.insert(var_node->name);
- }
-
- } break;
-
- case SL::OP_INDEX: {
- code += _dump_node_code(op_node->arguments[0], p_level, r_gen_code, p_actions, p_default_actions, p_assigning);
- code += "[";
- code += _dump_node_code(op_node->arguments[1], p_level, r_gen_code, p_actions, p_default_actions, p_assigning);
- code += "]";
- } break;
-
- case SL::OP_SELECT_IF: {
- code += "(";
- code += _dump_node_code(op_node->arguments[0], p_level, r_gen_code, p_actions, p_default_actions, p_assigning);
- code += " ? ";
- code += _dump_node_code(op_node->arguments[1], p_level, r_gen_code, p_actions, p_default_actions, p_assigning);
- code += " : ";
- code += _dump_node_code(op_node->arguments[2], p_level, r_gen_code, p_actions, p_default_actions, p_assigning);
- code += ")";
- } break;
-
- case SL::OP_MOD: {
- code += "mod(float(";
- code += _dump_node_code(op_node->arguments[0], p_level, r_gen_code, p_actions, p_default_actions, p_assigning);
- code += "), float(";
- code += _dump_node_code(op_node->arguments[1], p_level, r_gen_code, p_actions, p_default_actions, p_assigning);
- code += "))";
- } break;
-
- default: {
- if (p_use_scope) {
- code += "(";
- }
- code += _dump_node_code(op_node->arguments[0], p_level, r_gen_code, p_actions, p_default_actions, p_assigning);
- code += " ";
- code += _opstr(op_node->op);
- code += " ";
- code += _dump_node_code(op_node->arguments[1], p_level, r_gen_code, p_actions, p_default_actions, p_assigning);
- if (p_use_scope) {
- code += ")";
- }
- } break;
- }
- } break;
-
- case SL::Node::TYPE_CONTROL_FLOW: {
- SL::ControlFlowNode *cf_node = (SL::ControlFlowNode *)p_node;
-
- if (cf_node->flow_op == SL::FLOW_OP_IF) {
- code += _mktab(p_level);
- code += "if (";
- code += _dump_node_code(cf_node->expressions[0], p_level, r_gen_code, p_actions, p_default_actions, p_assigning);
- code += ")\n";
- code += _dump_node_code(cf_node->blocks[0], p_level + 1, r_gen_code, p_actions, p_default_actions, p_assigning);
-
- if (cf_node->blocks.size() == 2) {
- code += _mktab(p_level);
- code += "else\n";
- code += _dump_node_code(cf_node->blocks[1], p_level + 1, r_gen_code, p_actions, p_default_actions, p_assigning);
- }
- } else if (cf_node->flow_op == SL::FLOW_OP_DO) {
- code += _mktab(p_level);
- code += "do";
- code += _dump_node_code(cf_node->blocks[0], p_level + 1, r_gen_code, p_actions, p_default_actions, p_assigning);
- code += _mktab(p_level);
- code += "while (";
- code += _dump_node_code(cf_node->expressions[0], p_level, r_gen_code, p_actions, p_default_actions, p_assigning);
- code += ");";
- } else if (cf_node->flow_op == SL::FLOW_OP_WHILE) {
- code += _mktab(p_level);
- code += "while (";
- code += _dump_node_code(cf_node->expressions[0], p_level, r_gen_code, p_actions, p_default_actions, p_assigning);
- code += ")\n";
- code += _dump_node_code(cf_node->blocks[0], p_level + 1, r_gen_code, p_actions, p_default_actions, p_assigning);
- } else if (cf_node->flow_op == SL::FLOW_OP_FOR) {
- code += _mktab(p_level);
- code += "for (";
- code += _dump_node_code(cf_node->blocks[0], p_level, r_gen_code, p_actions, p_default_actions, p_assigning);
- code += "; ";
- code += _dump_node_code(cf_node->expressions[0], p_level, r_gen_code, p_actions, p_default_actions, p_assigning);
- code += "; ";
- code += _dump_node_code(cf_node->expressions[1], p_level, r_gen_code, p_actions, p_default_actions, p_assigning);
- code += ")\n";
-
- code += _dump_node_code(cf_node->blocks[1], p_level, r_gen_code, p_actions, p_default_actions, p_assigning);
-
- } else if (cf_node->flow_op == SL::FLOW_OP_RETURN) {
- code += _mktab(p_level);
- code += "return";
-
- if (cf_node->expressions.size()) {
- code += " ";
- code += _dump_node_code(cf_node->expressions[0], p_level, r_gen_code, p_actions, p_default_actions, p_assigning);
- }
- code += ";\n";
- } else if (cf_node->flow_op == SL::FLOW_OP_DISCARD) {
- if (p_actions.usage_flag_pointers.has("DISCARD") && !used_flag_pointers.has("DISCARD")) {
- *p_actions.usage_flag_pointers["DISCARD"] = true;
- used_flag_pointers.insert("DISCARD");
- }
- code += "discard;";
- } else if (cf_node->flow_op == SL::FLOW_OP_CONTINUE) {
- code += "continue;";
- } else if (cf_node->flow_op == SL::FLOW_OP_BREAK) {
- code += "break;";
- }
- } break;
-
- case SL::Node::TYPE_MEMBER: {
- SL::MemberNode *member_node = (SL::MemberNode *)p_node;
- code += _dump_node_code(member_node->owner, p_level, r_gen_code, p_actions, p_default_actions, p_assigning);
- code += ".";
- code += member_node->name;
- if (member_node->index_expression != nullptr) {
- code += "[";
- code += _dump_node_code(member_node->index_expression, p_level, r_gen_code, p_actions, p_default_actions, p_assigning);
- code += "]";
- }
- } break;
- }
-
- return code.as_string();
-}
-
-Error ShaderCompilerGLES2::compile(RS::ShaderMode p_mode, const String &p_code, IdentifierActions *p_actions, const String &p_path, GeneratedCode &r_gen_code) {
- Error err = parser.compile(p_code, ShaderTypes::get_singleton()->get_functions(p_mode), ShaderTypes::get_singleton()->get_modes(p_mode), ShaderTypes::get_singleton()->get_types());
-
- if (err != OK) {
- Vector<String> shader = p_code.split("\n");
- for (int i = 0; i < shader.size(); i++) {
- print_line(itos(i + 1) + " " + shader[i]);
- }
-
- _err_print_error(nullptr, p_path.utf8().get_data(), parser.get_error_line(), parser.get_error_text().utf8().get_data(), ERR_HANDLER_SHADER);
- return err;
- }
-
- r_gen_code.custom_defines.clear();
- r_gen_code.uniforms.clear();
- r_gen_code.texture_uniforms.clear();
- r_gen_code.texture_hints.clear();
- r_gen_code.texture_types.clear();
- r_gen_code.vertex = String();
- r_gen_code.vertex_global = String();
- r_gen_code.fragment = String();
- r_gen_code.fragment_global = String();
- r_gen_code.light = String();
- r_gen_code.uses_fragment_time = false;
- r_gen_code.uses_vertex_time = false;
-
- used_name_defines.clear();
- used_rmode_defines.clear();
- used_flag_pointers.clear();
-
- _dump_node_code(parser.get_shader(), 1, r_gen_code, *p_actions, actions[p_mode], false);
-
- return OK;
-}
-
-ShaderCompilerGLES2::ShaderCompilerGLES2() {
- /** CANVAS ITEM SHADER **/
-
- actions[RS::SHADER_CANVAS_ITEM].renames["VERTEX"] = "outvec.xy";
- actions[RS::SHADER_CANVAS_ITEM].renames["UV"] = "uv";
- actions[RS::SHADER_CANVAS_ITEM].renames["POINT_SIZE"] = "point_size";
-
- actions[RS::SHADER_CANVAS_ITEM].renames["WORLD_MATRIX"] = "modelview_matrix";
- actions[RS::SHADER_CANVAS_ITEM].renames["PROJECTION_MATRIX"] = "projection_matrix";
- actions[RS::SHADER_CANVAS_ITEM].renames["EXTRA_MATRIX"] = "extra_matrix_instance";
- actions[RS::SHADER_CANVAS_ITEM].renames["TIME"] = "time";
- actions[RS::SHADER_CANVAS_ITEM].renames["AT_LIGHT_PASS"] = "at_light_pass";
- actions[RS::SHADER_CANVAS_ITEM].renames["INSTANCE_CUSTOM"] = "instance_custom";
-
- actions[RS::SHADER_CANVAS_ITEM].renames["COLOR"] = "color";
- actions[RS::SHADER_CANVAS_ITEM].renames["NORMAL"] = "normal";
- actions[RS::SHADER_CANVAS_ITEM].renames["NORMALMAP"] = "normal_map";
- actions[RS::SHADER_CANVAS_ITEM].renames["NORMALMAP_DEPTH"] = "normal_depth";
- actions[RS::SHADER_CANVAS_ITEM].renames["TEXTURE"] = "color_texture";
- actions[RS::SHADER_CANVAS_ITEM].renames["TEXTURE_PIXEL_SIZE"] = "color_texpixel_size";
- actions[RS::SHADER_CANVAS_ITEM].renames["NORMAL_TEXTURE"] = "normal_texture";
- actions[RS::SHADER_CANVAS_ITEM].renames["SCREEN_UV"] = "screen_uv";
- actions[RS::SHADER_CANVAS_ITEM].renames["SCREEN_TEXTURE"] = "screen_texture";
- actions[RS::SHADER_CANVAS_ITEM].renames["SCREEN_PIXEL_SIZE"] = "screen_pixel_size";
- actions[RS::SHADER_CANVAS_ITEM].renames["FRAGCOORD"] = "gl_FragCoord";
- actions[RS::SHADER_CANVAS_ITEM].renames["POINT_COORD"] = "gl_PointCoord";
-
- actions[RS::SHADER_CANVAS_ITEM].renames["LIGHT_VEC"] = "light_vec";
- actions[RS::SHADER_CANVAS_ITEM].renames["LIGHT_HEIGHT"] = "light_height";
- actions[RS::SHADER_CANVAS_ITEM].renames["LIGHT_COLOR"] = "light_color";
- actions[RS::SHADER_CANVAS_ITEM].renames["LIGHT_UV"] = "light_uv";
- actions[RS::SHADER_CANVAS_ITEM].renames["LIGHT"] = "light";
- actions[RS::SHADER_CANVAS_ITEM].renames["SHADOW_COLOR"] = "shadow_color";
- actions[RS::SHADER_CANVAS_ITEM].renames["SHADOW_VEC"] = "shadow_vec";
-
- actions[RS::SHADER_CANVAS_ITEM].usage_defines["COLOR"] = "#define COLOR_USED\n";
- actions[RS::SHADER_CANVAS_ITEM].usage_defines["SCREEN_TEXTURE"] = "#define SCREEN_TEXTURE_USED\n";
- actions[RS::SHADER_CANVAS_ITEM].usage_defines["SCREEN_UV"] = "#define SCREEN_UV_USED\n";
- actions[RS::SHADER_CANVAS_ITEM].usage_defines["SCREEN_PIXEL_SIZE"] = "@SCREEN_UV";
- actions[RS::SHADER_CANVAS_ITEM].usage_defines["NORMAL"] = "#define NORMAL_USED\n";
- actions[RS::SHADER_CANVAS_ITEM].usage_defines["NORMALMAP"] = "#define NORMALMAP_USED\n";
- actions[RS::SHADER_CANVAS_ITEM].usage_defines["LIGHT"] = "#define USE_LIGHT_SHADER_CODE\n";
- actions[RS::SHADER_CANVAS_ITEM].render_mode_defines["skip_vertex_transform"] = "#define SKIP_TRANSFORM_USED\n";
- actions[RS::SHADER_CANVAS_ITEM].usage_defines["SHADOW_VEC"] = "#define SHADOW_VEC_USED\n";
-
- // Ported from GLES3
-
- actions[RS::SHADER_CANVAS_ITEM].usage_defines["sinh"] = "#define SINH_USED\n";
- actions[RS::SHADER_CANVAS_ITEM].usage_defines["cosh"] = "#define COSH_USED\n";
- actions[RS::SHADER_CANVAS_ITEM].usage_defines["tanh"] = "#define TANH_USED\n";
- actions[RS::SHADER_CANVAS_ITEM].usage_defines["asinh"] = "#define ASINH_USED\n";
- actions[RS::SHADER_CANVAS_ITEM].usage_defines["acosh"] = "#define ACOSH_USED\n";
- actions[RS::SHADER_CANVAS_ITEM].usage_defines["atanh"] = "#define ATANH_USED\n";
- actions[RS::SHADER_CANVAS_ITEM].usage_defines["determinant"] = "#define DETERMINANT_USED\n";
- actions[RS::SHADER_CANVAS_ITEM].usage_defines["transpose"] = "#define TRANSPOSE_USED\n";
- actions[RS::SHADER_CANVAS_ITEM].usage_defines["outerProduct"] = "#define OUTER_PRODUCT_USED\n";
- actions[RS::SHADER_CANVAS_ITEM].usage_defines["round"] = "#define ROUND_USED\n";
- actions[RS::SHADER_CANVAS_ITEM].usage_defines["roundEven"] = "#define ROUND_EVEN_USED\n";
- actions[RS::SHADER_CANVAS_ITEM].usage_defines["inverse"] = "#define INVERSE_USED\n";
- actions[RS::SHADER_CANVAS_ITEM].usage_defines["isinf"] = "#define IS_INF_USED\n";
- actions[RS::SHADER_CANVAS_ITEM].usage_defines["isnan"] = "#define IS_NAN_USED\n";
- actions[RS::SHADER_CANVAS_ITEM].usage_defines["trunc"] = "#define TRUNC_USED\n";
- actions[RS::SHADER_CANVAS_ITEM].usage_defines["fma"] = "#define FMA_USED\n";
-
- /** SPATIAL SHADER **/
-
- actions[RS::SHADER_SPATIAL].renames["WORLD_MATRIX"] = "world_transform";
- actions[RS::SHADER_SPATIAL].renames["INV_CAMERA_MATRIX"] = "camera_inverse_matrix";
- actions[RS::SHADER_SPATIAL].renames["CAMERA_MATRIX"] = "camera_matrix";
- actions[RS::SHADER_SPATIAL].renames["PROJECTION_MATRIX"] = "projection_matrix";
- actions[RS::SHADER_SPATIAL].renames["INV_PROJECTION_MATRIX"] = "projection_inverse_matrix";
- actions[RS::SHADER_SPATIAL].renames["MODELVIEW_MATRIX"] = "modelview";
-
- actions[RS::SHADER_SPATIAL].renames["VERTEX"] = "vertex.xyz";
- actions[RS::SHADER_SPATIAL].renames["NORMAL"] = "normal";
- actions[RS::SHADER_SPATIAL].renames["TANGENT"] = "tangent";
- actions[RS::SHADER_SPATIAL].renames["BINORMAL"] = "binormal";
- actions[RS::SHADER_SPATIAL].renames["POSITION"] = "position";
- actions[RS::SHADER_SPATIAL].renames["UV"] = "uv_interp";
- actions[RS::SHADER_SPATIAL].renames["UV2"] = "uv2_interp";
- actions[RS::SHADER_SPATIAL].renames["COLOR"] = "color_interp";
- actions[RS::SHADER_SPATIAL].renames["POINT_SIZE"] = "point_size";
- // gl_InstanceID is not available in OpenGL ES 2.0
- actions[RS::SHADER_SPATIAL].renames["INSTANCE_ID"] = "0";
-
- //builtins
-
- actions[RS::SHADER_SPATIAL].renames["TIME"] = "time";
- actions[RS::SHADER_SPATIAL].renames["VIEWPORT_SIZE"] = "viewport_size";
-
- actions[RS::SHADER_SPATIAL].renames["FRAGCOORD"] = "gl_FragCoord";
- actions[RS::SHADER_SPATIAL].renames["FRONT_FACING"] = "gl_FrontFacing";
- actions[RS::SHADER_SPATIAL].renames["NORMALMAP"] = "normalmap";
- actions[RS::SHADER_SPATIAL].renames["NORMALMAP_DEPTH"] = "normaldepth";
- actions[RS::SHADER_SPATIAL].renames["ALBEDO"] = "albedo";
- actions[RS::SHADER_SPATIAL].renames["ALPHA"] = "alpha";
- actions[RS::SHADER_SPATIAL].renames["METALLIC"] = "metallic";
- actions[RS::SHADER_SPATIAL].renames["SPECULAR"] = "specular";
- actions[RS::SHADER_SPATIAL].renames["ROUGHNESS"] = "roughness";
- actions[RS::SHADER_SPATIAL].renames["RIM"] = "rim";
- actions[RS::SHADER_SPATIAL].renames["RIM_TINT"] = "rim_tint";
- actions[RS::SHADER_SPATIAL].renames["CLEARCOAT"] = "clearcoat";
- actions[RS::SHADER_SPATIAL].renames["CLEARCOAT_GLOSS"] = "clearcoat_gloss";
- actions[RS::SHADER_SPATIAL].renames["ANISOTROPY"] = "anisotropy";
- actions[RS::SHADER_SPATIAL].renames["ANISOTROPY_FLOW"] = "anisotropy_flow";
- actions[RS::SHADER_SPATIAL].renames["SSS_STRENGTH"] = "sss_strength";
- actions[RS::SHADER_SPATIAL].renames["TRANSMISSION"] = "transmission";
- actions[RS::SHADER_SPATIAL].renames["AO"] = "ao";
- actions[RS::SHADER_SPATIAL].renames["AO_LIGHT_AFFECT"] = "ao_light_affect";
- actions[RS::SHADER_SPATIAL].renames["EMISSION"] = "emission";
- actions[RS::SHADER_SPATIAL].renames["POINT_COORD"] = "gl_PointCoord";
- actions[RS::SHADER_SPATIAL].renames["INSTANCE_CUSTOM"] = "instance_custom";
- actions[RS::SHADER_SPATIAL].renames["SCREEN_UV"] = "screen_uv";
- actions[RS::SHADER_SPATIAL].renames["SCREEN_TEXTURE"] = "screen_texture";
- actions[RS::SHADER_SPATIAL].renames["DEPTH_TEXTURE"] = "depth_texture";
- // Defined in GLES3, but not available in GLES2
- //actions[RS::SHADER_SPATIAL].renames["DEPTH"] = "gl_FragDepth";
- actions[RS::SHADER_SPATIAL].renames["ALPHA_SCISSOR"] = "alpha_scissor";
- actions[RS::SHADER_SPATIAL].renames["OUTPUT_IS_SRGB"] = "SHADER_IS_SRGB";
-
- //for light
- actions[RS::SHADER_SPATIAL].renames["VIEW"] = "view";
- actions[RS::SHADER_SPATIAL].renames["LIGHT_COLOR"] = "light_color";
- actions[RS::SHADER_SPATIAL].renames["LIGHT"] = "light";
- actions[RS::SHADER_SPATIAL].renames["ATTENUATION"] = "attenuation";
- actions[RS::SHADER_SPATIAL].renames["DIFFUSE_LIGHT"] = "diffuse_light";
- actions[RS::SHADER_SPATIAL].renames["SPECULAR_LIGHT"] = "specular_light";
-
- actions[RS::SHADER_SPATIAL].usage_defines["TANGENT"] = "#define ENABLE_TANGENT_INTERP\n";
- actions[RS::SHADER_SPATIAL].usage_defines["BINORMAL"] = "@TANGENT";
- actions[RS::SHADER_SPATIAL].usage_defines["RIM"] = "#define LIGHT_USE_RIM\n";
- actions[RS::SHADER_SPATIAL].usage_defines["RIM_TINT"] = "@RIM";
- actions[RS::SHADER_SPATIAL].usage_defines["CLEARCOAT"] = "#define LIGHT_USE_CLEARCOAT\n";
- actions[RS::SHADER_SPATIAL].usage_defines["CLEARCOAT_GLOSS"] = "@CLEARCOAT";
- actions[RS::SHADER_SPATIAL].usage_defines["ANISOTROPY"] = "#define LIGHT_USE_ANISOTROPY\n";
- actions[RS::SHADER_SPATIAL].usage_defines["ANISOTROPY_FLOW"] = "@ANISOTROPY";
- actions[RS::SHADER_SPATIAL].usage_defines["AO"] = "#define ENABLE_AO\n";
- actions[RS::SHADER_SPATIAL].usage_defines["AO_LIGHT_AFFECT"] = "#define ENABLE_AO\n";
- actions[RS::SHADER_SPATIAL].usage_defines["UV"] = "#define ENABLE_UV_INTERP\n";
- actions[RS::SHADER_SPATIAL].usage_defines["UV2"] = "#define ENABLE_UV2_INTERP\n";
- actions[RS::SHADER_SPATIAL].usage_defines["NORMALMAP"] = "#define ENABLE_NORMALMAP\n";
- actions[RS::SHADER_SPATIAL].usage_defines["NORMALMAP_DEPTH"] = "@NORMALMAP";
- actions[RS::SHADER_SPATIAL].usage_defines["COLOR"] = "#define ENABLE_COLOR_INTERP\n";
- actions[RS::SHADER_SPATIAL].usage_defines["INSTANCE_CUSTOM"] = "#define ENABLE_INSTANCE_CUSTOM\n";
- actions[RS::SHADER_SPATIAL].usage_defines["ALPHA_SCISSOR"] = "#define ALPHA_SCISSOR_USED\n";
- actions[RS::SHADER_SPATIAL].usage_defines["POSITION"] = "#define OVERRIDE_POSITION\n";
-
- actions[RS::SHADER_SPATIAL].usage_defines["SSS_STRENGTH"] = "#define ENABLE_SSS\n";
- actions[RS::SHADER_SPATIAL].usage_defines["TRANSMISSION"] = "#define TRANSMISSION_USED\n";
- actions[RS::SHADER_SPATIAL].usage_defines["SCREEN_TEXTURE"] = "#define SCREEN_TEXTURE_USED\n";
- actions[RS::SHADER_SPATIAL].usage_defines["DEPTH_TEXTURE"] = "#define DEPTH_TEXTURE_USED\n";
- actions[RS::SHADER_SPATIAL].usage_defines["SCREEN_UV"] = "#define SCREEN_UV_USED\n";
-
- actions[RS::SHADER_SPATIAL].usage_defines["DIFFUSE_LIGHT"] = "#define USE_LIGHT_SHADER_CODE\n";
- actions[RS::SHADER_SPATIAL].usage_defines["SPECULAR_LIGHT"] = "#define USE_LIGHT_SHADER_CODE\n";
-
- // Ported from GLES3
-
- actions[RS::SHADER_SPATIAL].usage_defines["sinh"] = "#define SINH_USED\n";
- actions[RS::SHADER_SPATIAL].usage_defines["cosh"] = "#define COSH_USED\n";
- actions[RS::SHADER_SPATIAL].usage_defines["tanh"] = "#define TANH_USED\n";
- actions[RS::SHADER_SPATIAL].usage_defines["asinh"] = "#define ASINH_USED\n";
- actions[RS::SHADER_SPATIAL].usage_defines["acosh"] = "#define ACOSH_USED\n";
- actions[RS::SHADER_SPATIAL].usage_defines["atanh"] = "#define ATANH_USED\n";
- actions[RS::SHADER_SPATIAL].usage_defines["determinant"] = "#define DETERMINANT_USED\n";
- actions[RS::SHADER_SPATIAL].usage_defines["transpose"] = "#define TRANSPOSE_USED\n";
- actions[RS::SHADER_SPATIAL].usage_defines["outerProduct"] = "#define OUTER_PRODUCT_USED\n";
- actions[RS::SHADER_SPATIAL].usage_defines["round"] = "#define ROUND_USED\n";
- actions[RS::SHADER_SPATIAL].usage_defines["roundEven"] = "#define ROUND_EVEN_USED\n";
- actions[RS::SHADER_SPATIAL].usage_defines["inverse"] = "#define INVERSE_USED\n";
- actions[RS::SHADER_SPATIAL].usage_defines["isinf"] = "#define IS_INF_USED\n";
- actions[RS::SHADER_SPATIAL].usage_defines["isnan"] = "#define IS_NAN_USED\n";
- actions[RS::SHADER_SPATIAL].usage_defines["trunc"] = "#define TRUNC_USED\n";
- actions[RS::SHADER_SPATIAL].usage_defines["fma"] = "#define FMA_USED\n";
-
- actions[RS::SHADER_SPATIAL].render_mode_defines["skip_vertex_transform"] = "#define SKIP_TRANSFORM_USED\n";
- actions[RS::SHADER_SPATIAL].render_mode_defines["world_vertex_coords"] = "#define VERTEX_WORLD_COORDS_USED\n";
-
- // Defined in GLES3, could be implemented in GLES2 too if there's a need for it
- //actions[RS::SHADER_SPATIAL].render_mode_defines["ensure_correct_normals"] = "#define ENSURE_CORRECT_NORMALS\n";
- // Defined in GLES3, might not be possible in GLES2 as gl_FrontFacing is not available
- //actions[RS::SHADER_SPATIAL].render_mode_defines["cull_front"] = "#define DO_SIDE_CHECK\n";
- //actions[RS::SHADER_SPATIAL].render_mode_defines["cull_disabled"] = "#define DO_SIDE_CHECK\n";
-
- bool force_lambert = GLOBAL_GET("rendering/quality/shading/force_lambert_over_burley");
-
- if (!force_lambert) {
- actions[RS::SHADER_SPATIAL].render_mode_defines["diffuse_burley"] = "#define DIFFUSE_BURLEY\n";
- }
-
- actions[RS::SHADER_SPATIAL].render_mode_defines["diffuse_oren_nayar"] = "#define DIFFUSE_OREN_NAYAR\n";
- actions[RS::SHADER_SPATIAL].render_mode_defines["diffuse_lambert_wrap"] = "#define DIFFUSE_LAMBERT_WRAP\n";
- actions[RS::SHADER_SPATIAL].render_mode_defines["diffuse_toon"] = "#define DIFFUSE_TOON\n";
-
- bool force_blinn = GLOBAL_GET("rendering/quality/shading/force_blinn_over_ggx");
-
- if (!force_blinn) {
- actions[RS::SHADER_SPATIAL].render_mode_defines["specular_schlick_ggx"] = "#define SPECULAR_SCHLICK_GGX\n";
- } else {
- actions[RS::SHADER_SPATIAL].render_mode_defines["specular_schlick_ggx"] = "#define SPECULAR_BLINN\n";
- }
-
- actions[RS::SHADER_SPATIAL].render_mode_defines["specular_blinn"] = "#define SPECULAR_BLINN\n";
- actions[RS::SHADER_SPATIAL].render_mode_defines["specular_phong"] = "#define SPECULAR_PHONG\n";
- actions[RS::SHADER_SPATIAL].render_mode_defines["specular_toon"] = "#define SPECULAR_TOON\n";
- actions[RS::SHADER_SPATIAL].render_mode_defines["specular_disabled"] = "#define SPECULAR_DISABLED\n";
- actions[RS::SHADER_SPATIAL].render_mode_defines["shadows_disabled"] = "#define SHADOWS_DISABLED\n";
- actions[RS::SHADER_SPATIAL].render_mode_defines["ambient_light_disabled"] = "#define AMBIENT_LIGHT_DISABLED\n";
- actions[RS::SHADER_SPATIAL].render_mode_defines["shadow_to_opacity"] = "#define USE_SHADOW_TO_OPACITY\n";
-
- // No defines for particle shaders in GLES2, there are no GPU particles
-
- vertex_name = "vertex";
- fragment_name = "fragment";
- light_name = "light";
- time_name = "TIME";
-
- List<String> func_list;
-
- ShaderLanguage::get_builtin_funcs(&func_list);
-
- for (List<String>::Element *E = func_list.front(); E; E = E->next()) {
- internal_functions.insert(E->get());
- }
-}
diff --git a/drivers/gles2/shader_compiler_gles2.h b/drivers/gles2/shader_compiler_gles2.h
deleted file mode 100644
index 66a3af0739..0000000000
--- a/drivers/gles2/shader_compiler_gles2.h
+++ /dev/null
@@ -1,99 +0,0 @@
-/*************************************************************************/
-/* shader_compiler_gles2.h */
-/*************************************************************************/
-/* This file is part of: */
-/* GODOT ENGINE */
-/* https://godotengine.org */
-/*************************************************************************/
-/* Copyright (c) 2007-2020 Juan Linietsky, Ariel Manzur. */
-/* Copyright (c) 2014-2020 Godot Engine contributors (cf. AUTHORS.md). */
-/* */
-/* Permission is hereby granted, free of charge, to any person obtaining */
-/* a copy of this software and associated documentation files (the */
-/* "Software"), to deal in the Software without restriction, including */
-/* without limitation the rights to use, copy, modify, merge, publish, */
-/* distribute, sublicense, and/or sell copies of the Software, and to */
-/* permit persons to whom the Software is furnished to do so, subject to */
-/* the following conditions: */
-/* */
-/* The above copyright notice and this permission notice shall be */
-/* included in all copies or substantial portions of the Software. */
-/* */
-/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
-/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
-/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.*/
-/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
-/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
-/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
-/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
-/*************************************************************************/
-
-#ifndef SHADERCOMPILERGLES2_H
-#define SHADERCOMPILERGLES2_H
-
-#include "core/pair.h"
-#include "core/string_builder.h"
-#include "servers/rendering/shader_language.h"
-#include "servers/rendering/shader_types.h"
-#include "servers/rendering_server.h"
-
-class ShaderCompilerGLES2 {
-public:
- struct IdentifierActions {
- Map<StringName, Pair<int *, int>> render_mode_values;
- Map<StringName, bool *> render_mode_flags;
- Map<StringName, bool *> usage_flag_pointers;
- Map<StringName, bool *> write_flag_pointers;
-
- Map<StringName, ShaderLanguage::ShaderNode::Uniform> *uniforms;
- };
-
- struct GeneratedCode {
- Vector<CharString> custom_defines;
- Vector<StringName> uniforms;
- Vector<StringName> texture_uniforms;
- Vector<ShaderLanguage::DataType> texture_types;
- Vector<ShaderLanguage::ShaderNode::Uniform::Hint> texture_hints;
-
- String vertex_global;
- String vertex;
- String fragment_global;
- String fragment;
- String light;
-
- bool uses_fragment_time;
- bool uses_vertex_time;
- };
-
-private:
- ShaderLanguage parser;
-
- struct DefaultIdentifierActions {
- Map<StringName, String> renames;
- Map<StringName, String> render_mode_defines;
- Map<StringName, String> usage_defines;
- };
-
- void _dump_function_deps(ShaderLanguage::ShaderNode *p_node, const StringName &p_for_func, const Map<StringName, String> &p_func_code, StringBuilder &r_to_add, Set<StringName> &r_added);
- String _dump_node_code(ShaderLanguage::Node *p_node, int p_level, GeneratedCode &r_gen_code, IdentifierActions &p_actions, const DefaultIdentifierActions &p_default_actions, bool p_assigning, bool p_use_scope = true);
-
- StringName current_func_name;
- StringName vertex_name;
- StringName fragment_name;
- StringName light_name;
- StringName time_name;
-
- Set<StringName> used_name_defines;
- Set<StringName> used_flag_pointers;
- Set<StringName> used_rmode_defines;
- Set<StringName> internal_functions;
-
- DefaultIdentifierActions actions[RS::SHADER_MAX];
-
-public:
- Error compile(RS::ShaderMode p_mode, const String &p_code, IdentifierActions *p_actions, const String &p_path, GeneratedCode &r_gen_code);
-
- ShaderCompilerGLES2();
-};
-
-#endif // SHADERCOMPILERGLES2_H
diff --git a/drivers/gles2/shader_gles2.cpp b/drivers/gles2/shader_gles2.cpp
deleted file mode 100644
index 48b98435c4..0000000000
--- a/drivers/gles2/shader_gles2.cpp
+++ /dev/null
@@ -1,1079 +0,0 @@
-/*************************************************************************/
-/* shader_gles2.cpp */
-/*************************************************************************/
-/* This file is part of: */
-/* GODOT ENGINE */
-/* https://godotengine.org */
-/*************************************************************************/
-/* Copyright (c) 2007-2020 Juan Linietsky, Ariel Manzur. */
-/* Copyright (c) 2014-2020 Godot Engine contributors (cf. AUTHORS.md). */
-/* */
-/* Permission is hereby granted, free of charge, to any person obtaining */
-/* a copy of this software and associated documentation files (the */
-/* "Software"), to deal in the Software without restriction, including */
-/* without limitation the rights to use, copy, modify, merge, publish, */
-/* distribute, sublicense, and/or sell copies of the Software, and to */
-/* permit persons to whom the Software is furnished to do so, subject to */
-/* the following conditions: */
-/* */
-/* The above copyright notice and this permission notice shall be */
-/* included in all copies or substantial portions of the Software. */
-/* */
-/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
-/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
-/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.*/
-/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
-/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
-/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
-/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
-/*************************************************************************/
-
-#include "shader_gles2.h"
-
-#include "core/os/memory.h"
-#include "core/print_string.h"
-#include "core/string_builder.h"
-#include "rasterizer_gles2.h"
-#include "rasterizer_storage_gles2.h"
-
-// #define DEBUG_OPENGL
-
-// #include "shaders/copy.glsl.gen.h"
-
-#ifdef DEBUG_OPENGL
-
-#define DEBUG_TEST_ERROR(m_section) \
- { \
- uint32_t err = glGetError(); \
- if (err) { \
- print_line("OpenGL Error #" + itos(err) + " at: " + m_section); \
- } \
- }
-#else
-
-#define DEBUG_TEST_ERROR(m_section)
-
-#endif
-
-ShaderGLES2 *ShaderGLES2::active = nullptr;
-
-//#define DEBUG_SHADER
-
-#ifdef DEBUG_SHADER
-
-#define DEBUG_PRINT(m_text) print_line(m_text);
-
-#else
-
-#define DEBUG_PRINT(m_text)
-
-#endif
-
-GLint ShaderGLES2::get_uniform_location(int p_index) const {
- ERR_FAIL_COND_V(!version, -1);
-
- return version->uniform_location[p_index];
-}
-
-bool ShaderGLES2::bind() {
- if (active != this || !version || new_conditional_version.key != conditional_version.key) {
- conditional_version = new_conditional_version;
- version = get_current_version();
- } else {
- return false;
- }
-
- ERR_FAIL_COND_V(!version, false);
-
- if (!version->ok) { //broken, unable to bind (do not throw error, you saw it before already when it failed compilation).
- glUseProgram(0);
- return false;
- }
-
- glUseProgram(version->id);
-
- DEBUG_TEST_ERROR("use program");
-
- active = this;
- uniforms_dirty = true;
-
- return true;
-}
-
-void ShaderGLES2::unbind() {
- version = nullptr;
- glUseProgram(0);
- uniforms_dirty = true;
- active = nullptr;
-}
-
-static void _display_error_with_code(const String &p_error, const Vector<const char *> &p_code) {
- int line = 1;
- String total_code;
-
- for (int i = 0; i < p_code.size(); i++) {
- total_code += String(p_code[i]);
- }
-
- Vector<String> lines = String(total_code).split("\n");
-
- for (int j = 0; j < lines.size(); j++) {
- print_line(itos(line) + ": " + lines[j]);
- line++;
- }
-
- ERR_PRINT(p_error);
-}
-
-static String _mkid(const String &p_id) {
- String id = "m_" + p_id;
- return id.replace("__", "_dus_"); //doubleunderscore is reserved in glsl
-}
-
-ShaderGLES2::Version *ShaderGLES2::get_current_version() {
- Version *_v = version_map.getptr(conditional_version);
-
- if (_v) {
- if (conditional_version.code_version != 0) {
- CustomCode *cc = custom_code_map.getptr(conditional_version.code_version);
- ERR_FAIL_COND_V(!cc, _v);
- if (cc->version == _v->code_version)
- return _v;
- } else {
- return _v;
- }
- }
-
- if (!_v)
- version_map[conditional_version] = Version();
-
- Version &v = version_map[conditional_version];
-
- if (!_v) {
- v.uniform_location = memnew_arr(GLint, uniform_count);
- } else {
- if (v.ok) {
- glDeleteShader(v.vert_id);
- glDeleteShader(v.frag_id);
- glDeleteProgram(v.id);
- v.id = 0;
- }
- }
-
- v.ok = false;
-
- Vector<const char *> strings;
-
-#ifdef GLES_OVER_GL
- strings.push_back("#version 120\n");
- strings.push_back("#define USE_GLES_OVER_GL\n");
-#else
- strings.push_back("#version 100\n");
-//angle does not like
-#ifdef JAVASCRIPT_ENABLED
- strings.push_back("#define USE_HIGHP_PRECISION\n");
-#endif
-
-#endif
-
- for (int j = 0; j < conditional_count; j++) {
- bool enable = (conditional_version.version & (1 << j)) > 0;
-
- if (enable) {
- strings.push_back(conditional_defines[j]);
- DEBUG_PRINT(conditional_defines[j]);
- }
- }
-
- // keep them around during the function
- CharString code_string;
- CharString code_string2;
- CharString code_globals;
-
- CustomCode *cc = nullptr;
-
- if (conditional_version.code_version > 0) {
- cc = custom_code_map.getptr(conditional_version.code_version);
-
- ERR_FAIL_COND_V(!cc, nullptr);
- v.code_version = cc->version;
- }
-
- // program
-
- v.id = glCreateProgram();
- ERR_FAIL_COND_V(v.id == 0, nullptr);
-
- if (cc) {
- for (int i = 0; i < cc->custom_defines.size(); i++) {
- strings.push_back(cc->custom_defines.write[i]);
- DEBUG_PRINT("CD #" + itos(i) + ": " + String(cc->custom_defines[i].get_data()));
- }
- }
-
- // vertex shader
-
- int string_base_size = strings.size();
-
- strings.push_back(vertex_code0.get_data());
-
- if (cc) {
- code_globals = cc->vertex_globals.ascii();
- strings.push_back(code_globals.get_data());
- }
-
- strings.push_back(vertex_code1.get_data());
-
- if (cc) {
- code_string = cc->vertex.ascii();
- strings.push_back(code_string.get_data());
- }
-
- strings.push_back(vertex_code2.get_data());
-
-#ifdef DEBUG_SHADER
-
- DEBUG_PRINT("\nVertex Code:\n\n" + String(code_string.get_data()));
-
-#endif
-
- v.vert_id = glCreateShader(GL_VERTEX_SHADER);
- glShaderSource(v.vert_id, strings.size(), &strings[0], nullptr);
- glCompileShader(v.vert_id);
-
- GLint status;
-
- glGetShaderiv(v.vert_id, GL_COMPILE_STATUS, &status);
- if (status == GL_FALSE) {
- GLsizei iloglen;
- glGetShaderiv(v.vert_id, GL_INFO_LOG_LENGTH, &iloglen);
-
- if (iloglen < 0) {
- glDeleteShader(v.vert_id);
- glDeleteProgram(v.id);
- v.id = 0;
-
- ERR_PRINT("No OpenGL vertex shader compiler log. What the frick?");
- } else {
- if (iloglen == 0) {
- iloglen = 4096; // buggy driver (Adreno 220+)
- }
-
- char *ilogmem = (char *)Memory::alloc_static(iloglen + 1);
- ilogmem[iloglen] = '\0';
- glGetShaderInfoLog(v.vert_id, iloglen, &iloglen, ilogmem);
-
- String err_string = get_shader_name() + ": Vertex shader compilation failed:\n";
-
- err_string += ilogmem;
-
- _display_error_with_code(err_string, strings);
-
- Memory::free_static(ilogmem);
- glDeleteShader(v.vert_id);
- glDeleteProgram(v.id);
- v.id = 0;
- }
-
- ERR_FAIL_V(nullptr);
- }
-
- strings.resize(string_base_size);
-
- // fragment shader
-
- strings.push_back(fragment_code0.get_data());
-
- if (cc) {
- code_globals = cc->fragment_globals.ascii();
- strings.push_back(code_globals.get_data());
- }
-
- strings.push_back(fragment_code1.get_data());
-
- if (cc) {
- code_string = cc->light.ascii();
- strings.push_back(code_string.get_data());
- }
-
- strings.push_back(fragment_code2.get_data());
-
- if (cc) {
- code_string2 = cc->fragment.ascii();
- strings.push_back(code_string2.get_data());
- }
-
- strings.push_back(fragment_code3.get_data());
-
-#ifdef DEBUG_SHADER
-
- if (cc) {
- DEBUG_PRINT("\nFragment Code:\n\n" + String(cc->fragment_globals));
- }
- DEBUG_PRINT("\nFragment Code:\n\n" + String(code_string.get_data()));
-#endif
-
- v.frag_id = glCreateShader(GL_FRAGMENT_SHADER);
- glShaderSource(v.frag_id, strings.size(), &strings[0], nullptr);
- glCompileShader(v.frag_id);
-
- glGetShaderiv(v.frag_id, GL_COMPILE_STATUS, &status);
- if (status == GL_FALSE) {
- GLsizei iloglen;
- glGetShaderiv(v.frag_id, GL_INFO_LOG_LENGTH, &iloglen);
-
- if (iloglen < 0) {
- glDeleteShader(v.frag_id);
- glDeleteShader(v.vert_id);
- glDeleteProgram(v.id);
- v.id = 0;
-
- ERR_PRINT("No OpenGL fragment shader compiler log. What the frick?");
- } else {
- if (iloglen == 0) {
- iloglen = 4096; // buggy driver (Adreno 220+)
- }
-
- char *ilogmem = (char *)Memory::alloc_static(iloglen + 1);
- ilogmem[iloglen] = '\0';
- glGetShaderInfoLog(v.frag_id, iloglen, &iloglen, ilogmem);
-
- String err_string = get_shader_name() + ": Fragment shader compilation failed:\n";
-
- err_string += ilogmem;
-
- _display_error_with_code(err_string, strings);
-
- Memory::free_static(ilogmem);
- glDeleteShader(v.frag_id);
- glDeleteShader(v.vert_id);
- glDeleteProgram(v.id);
- v.id = 0;
- }
-
- ERR_FAIL_V(nullptr);
- }
-
- glAttachShader(v.id, v.frag_id);
- glAttachShader(v.id, v.vert_id);
-
- // bind the attribute locations. This has to be done before linking so that the
- // linker doesn't assign some random indices
-
- for (int i = 0; i < attribute_pair_count; i++) {
- glBindAttribLocation(v.id, attribute_pairs[i].index, attribute_pairs[i].name);
- }
-
- glLinkProgram(v.id);
-
- glGetProgramiv(v.id, GL_LINK_STATUS, &status);
- if (status == GL_FALSE) {
- GLsizei iloglen;
- glGetProgramiv(v.id, GL_INFO_LOG_LENGTH, &iloglen);
-
- if (iloglen < 0) {
- glDeleteShader(v.frag_id);
- glDeleteShader(v.vert_id);
- glDeleteProgram(v.id);
- v.id = 0;
-
- ERR_PRINT("No OpenGL program link log. What the frick?");
- ERR_FAIL_V(nullptr);
- }
-
- if (iloglen == 0) {
- iloglen = 4096; // buggy driver (Adreno 220+)
- }
-
- char *ilogmem = (char *)Memory::alloc_static(iloglen + 1);
- ilogmem[iloglen] = '\0';
- glGetProgramInfoLog(v.id, iloglen, &iloglen, ilogmem);
-
- String err_string = get_shader_name() + ": Program linking failed:\n";
-
- err_string += ilogmem;
-
- _display_error_with_code(err_string, strings);
-
- Memory::free_static(ilogmem);
- glDeleteShader(v.frag_id);
- glDeleteShader(v.vert_id);
- glDeleteProgram(v.id);
- v.id = 0;
-
- ERR_FAIL_V(nullptr);
- }
-
- // get uniform locations
-
- glUseProgram(v.id);
-
- for (int i = 0; i < uniform_count; i++) {
- v.uniform_location[i] = glGetUniformLocation(v.id, uniform_names[i]);
- }
-
- for (int i = 0; i < texunit_pair_count; i++) {
- GLint loc = glGetUniformLocation(v.id, texunit_pairs[i].name);
- if (loc >= 0) {
- if (texunit_pairs[i].index < 0) {
- glUniform1i(loc, max_image_units + texunit_pairs[i].index);
- } else {
- glUniform1i(loc, texunit_pairs[i].index);
- }
- }
- }
-
- if (cc) {
- // uniforms
- for (int i = 0; i < cc->custom_uniforms.size(); i++) {
- String native_uniform_name = _mkid(cc->custom_uniforms[i]);
- GLint location = glGetUniformLocation(v.id, (native_uniform_name).ascii().get_data());
- v.custom_uniform_locations[cc->custom_uniforms[i]] = location;
- }
-
- // textures
- for (int i = 0; i < cc->texture_uniforms.size(); i++) {
- String native_uniform_name = _mkid(cc->texture_uniforms[i]);
- GLint location = glGetUniformLocation(v.id, (native_uniform_name).ascii().get_data());
- v.custom_uniform_locations[cc->texture_uniforms[i]] = location;
- glUniform1i(location, i);
- }
- }
-
- glUseProgram(0);
- v.ok = true;
-
- if (cc) {
- cc->versions.insert(conditional_version.version);
- }
-
- return &v;
-}
-
-GLint ShaderGLES2::get_uniform_location(const String &p_name) const {
- ERR_FAIL_COND_V(!version, -1);
- return glGetUniformLocation(version->id, p_name.ascii().get_data());
-}
-
-void ShaderGLES2::setup(
- const char **p_conditional_defines,
- int p_conditional_count,
- const char **p_uniform_names,
- int p_uniform_count,
- const AttributePair *p_attribute_pairs,
- int p_attribute_count,
- const TexUnitPair *p_texunit_pairs,
- int p_texunit_pair_count,
- const char *p_vertex_code,
- const char *p_fragment_code,
- int p_vertex_code_start,
- int p_fragment_code_start) {
- ERR_FAIL_COND(version);
-
- conditional_version.key = 0;
- new_conditional_version.key = 0;
- uniform_count = p_uniform_count;
- conditional_count = p_conditional_count;
- conditional_defines = p_conditional_defines;
- uniform_names = p_uniform_names;
- vertex_code = p_vertex_code;
- fragment_code = p_fragment_code;
- texunit_pairs = p_texunit_pairs;
- texunit_pair_count = p_texunit_pair_count;
- vertex_code_start = p_vertex_code_start;
- fragment_code_start = p_fragment_code_start;
- attribute_pairs = p_attribute_pairs;
- attribute_pair_count = p_attribute_count;
-
- {
- String globals_tag = "\nVERTEX_SHADER_GLOBALS";
- String code_tag = "\nVERTEX_SHADER_CODE";
- String code = vertex_code;
- int cpos = code.find(globals_tag);
- if (cpos == -1) {
- vertex_code0 = code.ascii();
- } else {
- vertex_code0 = code.substr(0, cpos).ascii();
- code = code.substr(cpos + globals_tag.length(), code.length());
-
- cpos = code.find(code_tag);
-
- if (cpos == -1) {
- vertex_code1 = code.ascii();
- } else {
- vertex_code1 = code.substr(0, cpos).ascii();
- vertex_code2 = code.substr(cpos + code_tag.length(), code.length()).ascii();
- }
- }
- }
-
- {
- String globals_tag = "\nFRAGMENT_SHADER_GLOBALS";
- String code_tag = "\nFRAGMENT_SHADER_CODE";
- String light_code_tag = "\nLIGHT_SHADER_CODE";
- String code = fragment_code;
- int cpos = code.find(globals_tag);
- if (cpos == -1) {
- fragment_code0 = code.ascii();
- } else {
- fragment_code0 = code.substr(0, cpos).ascii();
- code = code.substr(cpos + globals_tag.length(), code.length());
-
- cpos = code.find(light_code_tag);
-
- String code2;
-
- if (cpos != -1) {
- fragment_code1 = code.substr(0, cpos).ascii();
- code2 = code.substr(cpos + light_code_tag.length(), code.length());
- } else {
- code2 = code;
- }
-
- cpos = code2.find(code_tag);
- if (cpos == -1) {
- fragment_code2 = code2.ascii();
- } else {
- fragment_code2 = code2.substr(0, cpos).ascii();
- fragment_code3 = code2.substr(cpos + code_tag.length(), code2.length()).ascii();
- }
- }
- }
-
- glGetIntegerv(GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS, &max_image_units);
-}
-
-void ShaderGLES2::finish() {
- const VersionKey *V = nullptr;
-
- while ((V = version_map.next(V))) {
- Version &v = version_map[*V];
- glDeleteShader(v.vert_id);
- glDeleteShader(v.frag_id);
- glDeleteProgram(v.id);
- memdelete_arr(v.uniform_location);
- }
-}
-
-void ShaderGLES2::clear_caches() {
- const VersionKey *V = nullptr;
-
- while ((V = version_map.next(V))) {
- Version &v = version_map[*V];
- glDeleteShader(v.vert_id);
- glDeleteShader(v.frag_id);
- glDeleteProgram(v.id);
- memdelete_arr(v.uniform_location);
- }
-
- version_map.clear();
-
- custom_code_map.clear();
- version = nullptr;
- last_custom_code = 1;
- uniforms_dirty = true;
-}
-
-uint32_t ShaderGLES2::create_custom_shader() {
- custom_code_map[last_custom_code] = CustomCode();
- custom_code_map[last_custom_code].version = 1;
- return last_custom_code++;
-}
-
-void ShaderGLES2::set_custom_shader_code(uint32_t p_code_id,
- const String &p_vertex,
- const String &p_vertex_globals,
- const String &p_fragment,
- const String &p_light,
- const String &p_fragment_globals,
- const Vector<StringName> &p_uniforms,
- const Vector<StringName> &p_texture_uniforms,
- const Vector<CharString> &p_custom_defines) {
- CustomCode *cc = custom_code_map.getptr(p_code_id);
- ERR_FAIL_COND(!cc);
-
- cc->vertex = p_vertex;
- cc->vertex_globals = p_vertex_globals;
- cc->fragment = p_fragment;
- cc->fragment_globals = p_fragment_globals;
- cc->light = p_light;
- cc->custom_uniforms = p_uniforms;
- cc->custom_defines = p_custom_defines;
- cc->texture_uniforms = p_texture_uniforms;
- cc->version++;
-}
-
-void ShaderGLES2::set_custom_shader(uint32_t p_code_id) {
- new_conditional_version.code_version = p_code_id;
-}
-
-void ShaderGLES2::free_custom_shader(uint32_t p_code_id) {
- ERR_FAIL_COND(!custom_code_map.has(p_code_id));
- if (conditional_version.code_version == p_code_id) {
- conditional_version.code_version = 0; //do not keep using a version that is going away
- unbind();
- }
-
- VersionKey key;
- key.code_version = p_code_id;
- for (Set<uint32_t>::Element *E = custom_code_map[p_code_id].versions.front(); E; E = E->next()) {
- key.version = E->get();
- ERR_CONTINUE(!version_map.has(key));
- Version &v = version_map[key];
-
- glDeleteShader(v.vert_id);
- glDeleteShader(v.frag_id);
- glDeleteProgram(v.id);
- memdelete_arr(v.uniform_location);
- v.id = 0;
-
- version_map.erase(key);
- }
-
- custom_code_map.erase(p_code_id);
-}
-
-void ShaderGLES2::use_material(void *p_material) {
- RasterizerStorageGLES2::Material *material = (RasterizerStorageGLES2::Material *)p_material;
-
- if (!material) {
- return;
- }
-
- if (!material->shader) {
- return;
- }
-
- Version *v = version_map.getptr(conditional_version);
-
- // bind uniforms
- for (Map<StringName, ShaderLanguage::ShaderNode::Uniform>::Element *E = material->shader->uniforms.front(); E; E = E->next()) {
- if (E->get().texture_order >= 0)
- continue; // this is a texture, doesn't go here
-
- Map<StringName, GLint>::Element *L = v->custom_uniform_locations.find(E->key());
- if (!L || L->get() < 0)
- continue; //uniform not valid
-
- GLuint location = L->get();
-
- Map<StringName, Variant>::Element *V = material->params.find(E->key());
-
- if (V) {
- switch (E->get().type) {
- case ShaderLanguage::TYPE_BOOL: {
- bool boolean = V->get();
- glUniform1i(location, boolean ? 1 : 0);
- } break;
-
- case ShaderLanguage::TYPE_BVEC2: {
- int flags = V->get();
- glUniform2i(location, (flags & 1) ? 1 : 0, (flags & 2) ? 1 : 0);
- } break;
-
- case ShaderLanguage::TYPE_BVEC3: {
- int flags = V->get();
- glUniform3i(location, (flags & 1) ? 1 : 0, (flags & 2) ? 1 : 0, (flags & 4) ? 1 : 0);
-
- } break;
-
- case ShaderLanguage::TYPE_BVEC4: {
- int flags = V->get();
- glUniform4i(location, (flags & 1) ? 1 : 0, (flags & 2) ? 1 : 0, (flags & 4) ? 1 : 0, (flags & 8) ? 1 : 0);
-
- } break;
-
- case ShaderLanguage::TYPE_INT:
- case ShaderLanguage::TYPE_UINT: {
- int value = V->get();
- glUniform1i(location, value);
- } break;
-
- case ShaderLanguage::TYPE_IVEC2:
- case ShaderLanguage::TYPE_UVEC2: {
- Array r = V->get();
- const int count = 2;
- if (r.size() == count) {
- int values[count];
- for (int i = 0; i < count; i++) {
- values[i] = r[i];
- }
- glUniform2i(location, values[0], values[1]);
- }
-
- } break;
-
- case ShaderLanguage::TYPE_IVEC3:
- case ShaderLanguage::TYPE_UVEC3: {
- Array r = V->get();
- const int count = 3;
- if (r.size() == count) {
- int values[count];
- for (int i = 0; i < count; i++) {
- values[i] = r[i];
- }
- glUniform3i(location, values[0], values[1], values[2]);
- }
-
- } break;
-
- case ShaderLanguage::TYPE_IVEC4:
- case ShaderLanguage::TYPE_UVEC4: {
- Array r = V->get();
- const int count = 4;
- if (r.size() == count) {
- int values[count];
- for (int i = 0; i < count; i++) {
- values[i] = r[i];
- }
- glUniform4i(location, values[0], values[1], values[2], values[3]);
- }
-
- } break;
-
- case ShaderLanguage::TYPE_FLOAT: {
- float value = V->get();
- glUniform1f(location, value);
-
- } break;
-
- case ShaderLanguage::TYPE_VEC2: {
- Vector2 value = V->get();
- glUniform2f(location, value.x, value.y);
- } break;
-
- case ShaderLanguage::TYPE_VEC3: {
- Vector3 value = V->get();
- glUniform3f(location, value.x, value.y, value.z);
- } break;
-
- case ShaderLanguage::TYPE_VEC4: {
- if (V->get().get_type() == Variant::COLOR) {
- Color value = V->get();
- glUniform4f(location, value.r, value.g, value.b, value.a);
- } else if (V->get().get_type() == Variant::QUAT) {
- Quat value = V->get();
- glUniform4f(location, value.x, value.y, value.z, value.w);
- } else {
- Plane value = V->get();
- glUniform4f(location, value.normal.x, value.normal.y, value.normal.z, value.d);
- }
-
- } break;
-
- case ShaderLanguage::TYPE_MAT2: {
- Transform2D tr = V->get();
- GLfloat matrix[4] = {
- /* build a 16x16 matrix */
- tr.elements[0][0],
- tr.elements[0][1],
- tr.elements[1][0],
- tr.elements[1][1],
- };
- glUniformMatrix2fv(location, 1, GL_FALSE, matrix);
-
- } break;
-
- case ShaderLanguage::TYPE_MAT3: {
- Basis val = V->get();
-
- GLfloat mat[9] = {
- val.elements[0][0],
- val.elements[1][0],
- val.elements[2][0],
- val.elements[0][1],
- val.elements[1][1],
- val.elements[2][1],
- val.elements[0][2],
- val.elements[1][2],
- val.elements[2][2],
- };
-
- glUniformMatrix3fv(location, 1, GL_FALSE, mat);
-
- } break;
-
- case ShaderLanguage::TYPE_MAT4: {
- Transform2D tr = V->get();
- GLfloat matrix[16] = { /* build a 16x16 matrix */
- tr.elements[0][0],
- tr.elements[0][1],
- 0,
- 0,
- tr.elements[1][0],
- tr.elements[1][1],
- 0,
- 0,
- 0,
- 0,
- 1,
- 0,
- tr.elements[2][0],
- tr.elements[2][1],
- 0,
- 1
- };
-
- glUniformMatrix4fv(location, 1, GL_FALSE, matrix);
-
- } break;
-
- default: {
- ERR_PRINT("ShaderNode type missing, bug?");
- } break;
- }
- } else if (E->get().default_value.size()) {
- const Vector<ShaderLanguage::ConstantNode::Value> &values = E->get().default_value;
- switch (E->get().type) {
- case ShaderLanguage::TYPE_BOOL: {
- glUniform1i(location, values[0].boolean);
- } break;
-
- case ShaderLanguage::TYPE_BVEC2: {
- glUniform2i(location, values[0].boolean, values[1].boolean);
- } break;
-
- case ShaderLanguage::TYPE_BVEC3: {
- glUniform3i(location, values[0].boolean, values[1].boolean, values[2].boolean);
- } break;
-
- case ShaderLanguage::TYPE_BVEC4: {
- glUniform4i(location, values[0].boolean, values[1].boolean, values[2].boolean, values[3].boolean);
- } break;
-
- case ShaderLanguage::TYPE_INT: {
- glUniform1i(location, values[0].sint);
- } break;
-
- case ShaderLanguage::TYPE_IVEC2: {
- glUniform2i(location, values[0].sint, values[1].sint);
- } break;
-
- case ShaderLanguage::TYPE_IVEC3: {
- glUniform3i(location, values[0].sint, values[1].sint, values[2].sint);
- } break;
-
- case ShaderLanguage::TYPE_IVEC4: {
- glUniform4i(location, values[0].sint, values[1].sint, values[2].sint, values[3].sint);
- } break;
-
- case ShaderLanguage::TYPE_UINT: {
- glUniform1i(location, values[0].uint);
- } break;
-
- case ShaderLanguage::TYPE_UVEC2: {
- glUniform2i(location, values[0].uint, values[1].uint);
- } break;
-
- case ShaderLanguage::TYPE_UVEC3: {
- glUniform3i(location, values[0].uint, values[1].uint, values[2].uint);
- } break;
-
- case ShaderLanguage::TYPE_UVEC4: {
- glUniform4i(location, values[0].uint, values[1].uint, values[2].uint, values[3].uint);
- } break;
-
- case ShaderLanguage::TYPE_FLOAT: {
- glUniform1f(location, values[0].real);
- } break;
-
- case ShaderLanguage::TYPE_VEC2: {
- glUniform2f(location, values[0].real, values[1].real);
- } break;
-
- case ShaderLanguage::TYPE_VEC3: {
- glUniform3f(location, values[0].real, values[1].real, values[2].real);
- } break;
-
- case ShaderLanguage::TYPE_VEC4: {
- glUniform4f(location, values[0].real, values[1].real, values[2].real, values[3].real);
- } break;
-
- case ShaderLanguage::TYPE_MAT2: {
- GLfloat mat[4];
-
- for (int i = 0; i < 4; i++) {
- mat[i] = values[i].real;
- }
-
- glUniformMatrix2fv(location, 1, GL_FALSE, mat);
- } break;
-
- case ShaderLanguage::TYPE_MAT3: {
- GLfloat mat[9];
-
- for (int i = 0; i < 9; i++) {
- mat[i] = values[i].real;
- }
-
- glUniformMatrix3fv(location, 1, GL_FALSE, mat);
-
- } break;
-
- case ShaderLanguage::TYPE_MAT4: {
- GLfloat mat[16];
-
- for (int i = 0; i < 16; i++) {
- mat[i] = values[i].real;
- }
-
- glUniformMatrix4fv(location, 1, GL_FALSE, mat);
-
- } break;
-
- case ShaderLanguage::TYPE_SAMPLER2D: {
- } break;
-
- case ShaderLanguage::TYPE_ISAMPLER2D: {
- } break;
-
- case ShaderLanguage::TYPE_USAMPLER2D: {
- } break;
-
- case ShaderLanguage::TYPE_SAMPLERCUBE: {
- } break;
-
- case ShaderLanguage::TYPE_SAMPLER2DARRAY:
- case ShaderLanguage::TYPE_ISAMPLER2DARRAY:
- case ShaderLanguage::TYPE_USAMPLER2DARRAY:
- case ShaderLanguage::TYPE_SAMPLER3D:
- case ShaderLanguage::TYPE_ISAMPLER3D:
- case ShaderLanguage::TYPE_USAMPLER3D: {
- // Not implemented in GLES2
- } break;
-
- case ShaderLanguage::TYPE_VOID: {
- // Nothing to do?
- } break;
- default: {
- ERR_PRINT("ShaderNode type missing, bug?");
- } break;
- }
- } else { //zero
-
- switch (E->get().type) {
- case ShaderLanguage::TYPE_BOOL: {
- glUniform1i(location, GL_FALSE);
- } break;
-
- case ShaderLanguage::TYPE_BVEC2: {
- glUniform2i(location, GL_FALSE, GL_FALSE);
- } break;
-
- case ShaderLanguage::TYPE_BVEC3: {
- glUniform3i(location, GL_FALSE, GL_FALSE, GL_FALSE);
- } break;
-
- case ShaderLanguage::TYPE_BVEC4: {
- glUniform4i(location, GL_FALSE, GL_FALSE, GL_FALSE, GL_FALSE);
- } break;
-
- case ShaderLanguage::TYPE_INT: {
- glUniform1i(location, 0);
- } break;
-
- case ShaderLanguage::TYPE_IVEC2: {
- glUniform2i(location, 0, 0);
- } break;
-
- case ShaderLanguage::TYPE_IVEC3: {
- glUniform3i(location, 0, 0, 0);
- } break;
-
- case ShaderLanguage::TYPE_IVEC4: {
- glUniform4i(location, 0, 0, 0, 0);
- } break;
-
- case ShaderLanguage::TYPE_UINT: {
- glUniform1i(location, 0);
- } break;
-
- case ShaderLanguage::TYPE_UVEC2: {
- glUniform2i(location, 0, 0);
- } break;
-
- case ShaderLanguage::TYPE_UVEC3: {
- glUniform3i(location, 0, 0, 0);
- } break;
-
- case ShaderLanguage::TYPE_UVEC4: {
- glUniform4i(location, 0, 0, 0, 0);
- } break;
-
- case ShaderLanguage::TYPE_FLOAT: {
- glUniform1f(location, 0);
- } break;
-
- case ShaderLanguage::TYPE_VEC2: {
- glUniform2f(location, 0, 0);
- } break;
-
- case ShaderLanguage::TYPE_VEC3: {
- glUniform3f(location, 0, 0, 0);
- } break;
-
- case ShaderLanguage::TYPE_VEC4: {
- glUniform4f(location, 0, 0, 0, 0);
- } break;
-
- case ShaderLanguage::TYPE_MAT2: {
- GLfloat mat[4] = { 0, 0, 0, 0 };
-
- glUniformMatrix2fv(location, 1, GL_FALSE, mat);
- } break;
-
- case ShaderLanguage::TYPE_MAT3: {
- GLfloat mat[9] = { 0, 0, 0, 0, 0, 0, 0, 0, 0 };
-
- glUniformMatrix3fv(location, 1, GL_FALSE, mat);
-
- } break;
-
- case ShaderLanguage::TYPE_MAT4: {
- GLfloat mat[16] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 };
-
- glUniformMatrix4fv(location, 1, GL_FALSE, mat);
-
- } break;
-
- case ShaderLanguage::TYPE_SAMPLER2D: {
- } break;
-
- case ShaderLanguage::TYPE_ISAMPLER2D: {
- } break;
-
- case ShaderLanguage::TYPE_USAMPLER2D: {
- } break;
-
- case ShaderLanguage::TYPE_SAMPLERCUBE: {
- } break;
-
- case ShaderLanguage::TYPE_SAMPLER2DARRAY:
- case ShaderLanguage::TYPE_ISAMPLER2DARRAY:
- case ShaderLanguage::TYPE_USAMPLER2DARRAY:
- case ShaderLanguage::TYPE_SAMPLER3D:
- case ShaderLanguage::TYPE_ISAMPLER3D:
- case ShaderLanguage::TYPE_USAMPLER3D: {
- // Not implemented in GLES2
- } break;
-
- case ShaderLanguage::TYPE_VOID: {
- // Nothing to do?
- } break;
- default: {
- ERR_PRINT("ShaderNode type missing, bug?");
- } break;
- }
- }
- }
-}
-
-ShaderGLES2::ShaderGLES2() {
- version = nullptr;
- last_custom_code = 1;
- uniforms_dirty = true;
-}
-
-ShaderGLES2::~ShaderGLES2() {
- finish();
-}
diff --git a/drivers/gles2/shader_gles2.h b/drivers/gles2/shader_gles2.h
deleted file mode 100644
index 3096c1e258..0000000000
--- a/drivers/gles2/shader_gles2.h
+++ /dev/null
@@ -1,260 +0,0 @@
-/*************************************************************************/
-/* shader_gles2.h */
-/*************************************************************************/
-/* This file is part of: */
-/* GODOT ENGINE */
-/* https://godotengine.org */
-/*************************************************************************/
-/* Copyright (c) 2007-2020 Juan Linietsky, Ariel Manzur. */
-/* Copyright (c) 2014-2020 Godot Engine contributors (cf. AUTHORS.md). */
-/* */
-/* Permission is hereby granted, free of charge, to any person obtaining */
-/* a copy of this software and associated documentation files (the */
-/* "Software"), to deal in the Software without restriction, including */
-/* without limitation the rights to use, copy, modify, merge, publish, */
-/* distribute, sublicense, and/or sell copies of the Software, and to */
-/* permit persons to whom the Software is furnished to do so, subject to */
-/* the following conditions: */
-/* */
-/* The above copyright notice and this permission notice shall be */
-/* included in all copies or substantial portions of the Software. */
-/* */
-/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
-/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
-/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.*/
-/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
-/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
-/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
-/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
-/*************************************************************************/
-
-#ifndef SHADER_GLES2_H
-#define SHADER_GLES2_H
-
-// This must come first to avoid windows.h mess
-#include "platform_config.h"
-#ifndef GLES2_INCLUDE_H
-#include <GLES2/gl2.h>
-#else
-#include GLES2_INCLUDE_H
-#endif
-
-#include "core/hash_map.h"
-#include "core/map.h"
-#include "core/math/camera_matrix.h"
-#include "core/pair.h"
-#include "core/variant.h"
-#include "servers/rendering/shader_language.h"
-
-#include <stdio.h>
-
-class RasterizerStorageGLES2;
-
-class ShaderGLES2 {
-protected:
- struct Enum {
- uint64_t mask;
- uint64_t shift;
- const char *defines[16];
- };
-
- struct EnumValue {
- uint64_t set_mask;
- uint64_t clear_mask;
- };
-
- struct AttributePair {
- const char *name;
- int index;
- };
-
- struct UniformPair {
- const char *name;
- Variant::Type type_hint;
- };
-
- struct TexUnitPair {
- const char *name;
- int index;
- };
-
- bool uniforms_dirty;
-
-private:
- //@TODO Optimize to a fixed set of shader pools and use a LRU
- int uniform_count;
- int texunit_pair_count;
- int conditional_count;
- int vertex_code_start;
- int fragment_code_start;
- int attribute_pair_count;
-
- struct CustomCode {
- String vertex;
- String vertex_globals;
- String fragment;
- String fragment_globals;
- String light;
- uint32_t version;
- Vector<StringName> texture_uniforms;
- Vector<StringName> custom_uniforms;
- Vector<CharString> custom_defines;
- Set<uint32_t> versions;
- };
-
- struct Version {
- GLuint id;
- GLuint vert_id;
- GLuint frag_id;
- GLint *uniform_location;
- Vector<GLint> texture_uniform_locations;
- Map<StringName, GLint> custom_uniform_locations;
- uint32_t code_version;
- bool ok;
- Version() {
- id = 0;
- vert_id = 0;
- frag_id = 0;
- uniform_location = nullptr;
- code_version = 0;
- ok = false;
- }
- };
-
- Version *version;
-
- union VersionKey {
- struct {
- uint32_t version;
- uint32_t code_version;
- };
- uint64_t key;
- bool operator==(const VersionKey &p_key) const { return key == p_key.key; }
- bool operator<(const VersionKey &p_key) const { return key < p_key.key; }
- };
-
- struct VersionKeyHash {
- static _FORCE_INLINE_ uint32_t hash(const VersionKey &p_key) { return HashMapHasherDefault::hash(p_key.key); }
- };
-
- //this should use a way more cachefriendly version..
- HashMap<VersionKey, Version, VersionKeyHash> version_map;
-
- HashMap<uint32_t, CustomCode> custom_code_map;
- uint32_t last_custom_code;
-
- VersionKey conditional_version;
- VersionKey new_conditional_version;
-
- virtual String get_shader_name() const = 0;
-
- const char **conditional_defines;
- const char **uniform_names;
- const AttributePair *attribute_pairs;
- const TexUnitPair *texunit_pairs;
- const char *vertex_code;
- const char *fragment_code;
- CharString fragment_code0;
- CharString fragment_code1;
- CharString fragment_code2;
- CharString fragment_code3;
-
- CharString vertex_code0;
- CharString vertex_code1;
- CharString vertex_code2;
-
- Vector<CharString> custom_defines;
-
- Version *get_current_version();
-
- static ShaderGLES2 *active;
-
- int max_image_units;
-
- Map<StringName, Pair<ShaderLanguage::DataType, Vector<ShaderLanguage::ConstantNode::Value>>> uniform_values;
-
-protected:
- _FORCE_INLINE_ int _get_uniform(int p_which) const;
- _FORCE_INLINE_ void _set_conditional(int p_which, bool p_value);
-
- void setup(const char **p_conditional_defines,
- int p_conditional_count,
- const char **p_uniform_names,
- int p_uniform_count,
- const AttributePair *p_attribute_pairs,
- int p_attribute_count,
- const TexUnitPair *p_texunit_pairs,
- int p_texunit_pair_count,
- const char *p_vertex_code,
- const char *p_fragment_code,
- int p_vertex_code_start,
- int p_fragment_code_start);
-
- ShaderGLES2();
-
-public:
- enum {
- CUSTOM_SHADER_DISABLED = 0
- };
-
- GLint get_uniform_location(const String &p_name) const;
- GLint get_uniform_location(int p_index) const;
-
- static _FORCE_INLINE_ ShaderGLES2 *get_active() { return active; }
- bool bind();
- void unbind();
-
- inline GLuint get_program() const { return version ? version->id : 0; }
-
- void clear_caches();
-
- uint32_t create_custom_shader();
- void set_custom_shader_code(uint32_t p_code_id,
- const String &p_vertex,
- const String &p_vertex_globals,
- const String &p_fragment,
- const String &p_light,
- const String &p_fragment_globals,
- const Vector<StringName> &p_uniforms,
- const Vector<StringName> &p_texture_uniforms,
- const Vector<CharString> &p_custom_defines);
-
- void set_custom_shader(uint32_t p_code_id);
- void free_custom_shader(uint32_t p_code_id);
-
- uint32_t get_version_key() const { return conditional_version.version; }
-
- // this void* is actually a RasterizerStorageGLES2::Material, but C++ doesn't
- // like forward declared nested classes.
- void use_material(void *p_material);
-
- _FORCE_INLINE_ uint32_t get_version() const { return new_conditional_version.version; }
- _FORCE_INLINE_ bool is_version_valid() const { return version && version->ok; }
-
- virtual void init() = 0;
- void finish();
-
- void add_custom_define(const String &p_define) {
- custom_defines.push_back(p_define.utf8());
- }
-
- virtual ~ShaderGLES2();
-};
-
-// called a lot, made inline
-
-int ShaderGLES2::_get_uniform(int p_which) const {
- ERR_FAIL_INDEX_V(p_which, uniform_count, -1);
- ERR_FAIL_COND_V(!version, -1);
- return version->uniform_location[p_which];
-}
-
-void ShaderGLES2::_set_conditional(int p_which, bool p_value) {
- ERR_FAIL_INDEX(p_which, conditional_count);
- if (p_value)
- new_conditional_version.version |= (1 << p_which);
- else
- new_conditional_version.version &= ~(1 << p_which);
-}
-
-#endif
diff --git a/drivers/gles2/shaders/SCsub b/drivers/gles2/shaders/SCsub
deleted file mode 100644
index bcd6ea79fb..0000000000
--- a/drivers/gles2/shaders/SCsub
+++ /dev/null
@@ -1,23 +0,0 @@
-#!/usr/bin/env python
-
-Import("env")
-
-if "GLES2_GLSL" in env["BUILDERS"]:
- env.GLES2_GLSL("copy.glsl")
- # env.GLES2_GLSL('resolve.glsl');
- env.GLES2_GLSL("canvas.glsl")
- env.GLES2_GLSL("canvas_shadow.glsl")
- env.GLES2_GLSL("scene.glsl")
- env.GLES2_GLSL("cubemap_filter.glsl")
- env.GLES2_GLSL("cube_to_dp.glsl")
- # env.GLES2_GLSL('blend_shape.glsl');
- # env.GLES2_GLSL('screen_space_reflection.glsl');
- env.GLES2_GLSL("effect_blur.glsl")
- # env.GLES2_GLSL('subsurf_scattering.glsl');
- # env.GLES2_GLSL('ssao.glsl');
- # env.GLES2_GLSL('ssao_minify.glsl');
- # env.GLES2_GLSL('ssao_blur.glsl');
- # env.GLES2_GLSL('exposure.glsl');
- env.GLES2_GLSL("tonemap.glsl")
- # env.GLES2_GLSL('particles.glsl');
- env.GLES2_GLSL("lens_distorted.glsl")
diff --git a/drivers/gles2/shaders/blend_shape.glsl b/drivers/gles2/shaders/blend_shape.glsl
deleted file mode 100644
index e229da6f18..0000000000
--- a/drivers/gles2/shaders/blend_shape.glsl
+++ /dev/null
@@ -1,194 +0,0 @@
-/* clang-format off */
-[vertex]
-
-/*
-from RenderingServer:
-
-ARRAY_VERTEX=0,
-ARRAY_NORMAL=1,
-ARRAY_TANGENT=2,
-ARRAY_COLOR=3,
-ARRAY_TEX_UV=4,
-ARRAY_TEX_UV2=5,
-ARRAY_BONES=6,
-ARRAY_WEIGHTS=7,
-ARRAY_INDEX=8,
-*/
-
-#ifdef USE_2D_VERTEX
-#define VFORMAT vec2
-#else
-#define VFORMAT vec3
-#endif
-
-/* INPUT ATTRIBS */
-
-layout(location = 0) in highp VFORMAT vertex_attrib;
-/* clang-format on */
-layout(location = 1) in vec3 normal_attrib;
-
-#ifdef ENABLE_TANGENT
-layout(location = 2) in vec4 tangent_attrib;
-#endif
-
-#ifdef ENABLE_COLOR
-layout(location = 3) in vec4 color_attrib;
-#endif
-
-#ifdef ENABLE_UV
-layout(location = 4) in vec2 uv_attrib;
-#endif
-
-#ifdef ENABLE_UV2
-layout(location = 5) in vec2 uv2_attrib;
-#endif
-
-#ifdef ENABLE_SKELETON
-layout(location = 6) in ivec4 bone_attrib;
-layout(location = 7) in vec4 weight_attrib;
-#endif
-
-/* BLEND ATTRIBS */
-
-#ifdef ENABLE_BLEND
-
-layout(location = 8) in highp VFORMAT vertex_attrib_blend;
-layout(location = 9) in vec3 normal_attrib_blend;
-
-#ifdef ENABLE_TANGENT
-layout(location = 10) in vec4 tangent_attrib_blend;
-#endif
-
-#ifdef ENABLE_COLOR
-layout(location = 11) in vec4 color_attrib_blend;
-#endif
-
-#ifdef ENABLE_UV
-layout(location = 12) in vec2 uv_attrib_blend;
-#endif
-
-#ifdef ENABLE_UV2
-layout(location = 13) in vec2 uv2_attrib_blend;
-#endif
-
-#ifdef ENABLE_SKELETON
-layout(location = 14) in ivec4 bone_attrib_blend;
-layout(location = 15) in vec4 weight_attrib_blend;
-#endif
-
-#endif
-
-/* OUTPUTS */
-
-out VFORMAT vertex_out; //tfb:
-
-#ifdef ENABLE_NORMAL
-out vec3 normal_out; //tfb:ENABLE_NORMAL
-#endif
-
-#ifdef ENABLE_TANGENT
-out vec4 tangent_out; //tfb:ENABLE_TANGENT
-#endif
-
-#ifdef ENABLE_COLOR
-out vec4 color_out; //tfb:ENABLE_COLOR
-#endif
-
-#ifdef ENABLE_UV
-out vec2 uv_out; //tfb:ENABLE_UV
-#endif
-
-#ifdef ENABLE_UV2
-out vec2 uv2_out; //tfb:ENABLE_UV2
-#endif
-
-#ifdef ENABLE_SKELETON
-out ivec4 bone_out; //tfb:ENABLE_SKELETON
-out vec4 weight_out; //tfb:ENABLE_SKELETON
-#endif
-
-uniform float blend_amount;
-
-void main() {
-#ifdef ENABLE_BLEND
-
- vertex_out = vertex_attrib_blend + vertex_attrib * blend_amount;
-
-#ifdef ENABLE_NORMAL
- normal_out = normal_attrib_blend + normal_attrib * blend_amount;
-#endif
-
-#ifdef ENABLE_TANGENT
-
- tangent_out.xyz = tangent_attrib_blend.xyz + tangent_attrib.xyz * blend_amount;
- tangent_out.w = tangent_attrib_blend.w; //just copy, no point in blending his
-#endif
-
-#ifdef ENABLE_COLOR
-
- color_out = color_attrib_blend + color_attrib * blend_amount;
-#endif
-
-#ifdef ENABLE_UV
-
- uv_out = uv_attrib_blend + uv_attrib * blend_amount;
-#endif
-
-#ifdef ENABLE_UV2
-
- uv2_out = uv2_attrib_blend + uv2_attrib * blend_amount;
-#endif
-
-#ifdef ENABLE_SKELETON
-
- bone_out = bone_attrib_blend;
- weight_out = weight_attrib_blend + weight_attrib * blend_amount;
-#endif
-
-#else //ENABLE_BLEND
-
- vertex_out = vertex_attrib * blend_amount;
-
-#ifdef ENABLE_NORMAL
- normal_out = normal_attrib * blend_amount;
-#endif
-
-#ifdef ENABLE_TANGENT
-
- tangent_out.xyz = tangent_attrib.xyz * blend_amount;
- tangent_out.w = tangent_attrib.w; //just copy, no point in blending his
-#endif
-
-#ifdef ENABLE_COLOR
-
- color_out = color_attrib * blend_amount;
-#endif
-
-#ifdef ENABLE_UV
-
- uv_out = uv_attrib * blend_amount;
-#endif
-
-#ifdef ENABLE_UV2
-
- uv2_out = uv2_attrib * blend_amount;
-#endif
-
-#ifdef ENABLE_SKELETON
-
- bone_out = bone_attrib;
- weight_out = weight_attrib * blend_amount;
-#endif
-
-#endif
- gl_Position = vec4(0.0);
-}
-
-/* clang-format off */
-[fragment]
-
-void main() {
-
-}
-
-/* clang-format on */
diff --git a/drivers/gles2/shaders/canvas.glsl b/drivers/gles2/shaders/canvas.glsl
deleted file mode 100644
index 1fadf44d97..0000000000
--- a/drivers/gles2/shaders/canvas.glsl
+++ /dev/null
@@ -1,619 +0,0 @@
-/* clang-format off */
-[vertex]
-
-#ifdef USE_GLES_OVER_GL
-#define lowp
-#define mediump
-#define highp
-#else
-precision highp float;
-precision highp int;
-#endif
-
-#ifndef USE_GLES_OVER_GL
-#extension GL_OES_texture_3D : enable
-#else
-#extension GL_EXT_texture_array : enable
-#endif
-
-uniform highp mat4 projection_matrix;
-/* clang-format on */
-
-#include "stdlib.glsl"
-
-uniform highp mat4 modelview_matrix;
-uniform highp mat4 extra_matrix;
-attribute highp vec2 vertex; // attrib:0
-attribute vec4 color_attrib; // attrib:3
-attribute vec2 uv_attrib; // attrib:4
-
-#ifdef USE_SKELETON
-attribute highp vec4 bone_indices; // attrib:6
-attribute highp vec4 bone_weights; // attrib:7
-#endif
-
-#ifdef USE_INSTANCING
-
-attribute highp vec4 instance_xform0; //attrib:8
-attribute highp vec4 instance_xform1; //attrib:9
-attribute highp vec4 instance_xform2; //attrib:10
-attribute highp vec4 instance_color; //attrib:11
-
-#ifdef USE_INSTANCE_CUSTOM
-attribute highp vec4 instance_custom_data; //attrib:12
-#endif
-
-#endif
-
-#ifdef USE_SKELETON
-uniform highp sampler2D skeleton_texture; // texunit:-3
-uniform highp ivec2 skeleton_texture_size;
-uniform highp mat4 skeleton_transform;
-uniform highp mat4 skeleton_transform_inverse;
-#endif
-
-varying vec2 uv_interp;
-varying vec4 color_interp;
-
-uniform highp vec2 color_texpixel_size;
-
-#ifdef USE_TEXTURE_RECT
-
-uniform vec4 dst_rect;
-uniform vec4 src_rect;
-
-#endif
-
-uniform highp float time;
-
-#ifdef USE_LIGHTING
-
-// light matrices
-uniform highp mat4 light_matrix;
-uniform highp mat4 light_matrix_inverse;
-uniform highp mat4 light_local_matrix;
-uniform highp mat4 shadow_matrix;
-uniform highp vec4 light_color;
-uniform highp vec4 light_shadow_color;
-uniform highp vec2 light_pos;
-uniform highp float shadowpixel_size;
-uniform highp float shadow_gradient;
-uniform highp float light_height;
-uniform highp float light_outside_alpha;
-uniform highp float shadow_distance_mult;
-
-varying vec4 light_uv_interp;
-varying vec2 transformed_light_uv;
-varying vec4 local_rot;
-
-#ifdef USE_SHADOWS
-varying highp vec2 pos;
-#endif
-
-const bool at_light_pass = true;
-#else
-const bool at_light_pass = false;
-#endif
-
-/* clang-format off */
-
-VERTEX_SHADER_GLOBALS
-
-/* clang-format on */
-
-vec2 select(vec2 a, vec2 b, bvec2 c) {
- vec2 ret;
-
- ret.x = c.x ? b.x : a.x;
- ret.y = c.y ? b.y : a.y;
-
- return ret;
-}
-
-void main() {
- vec4 color = color_attrib;
- vec2 uv;
-
-#ifdef USE_INSTANCING
- mat4 extra_matrix_instance = extra_matrix * transpose(mat4(instance_xform0, instance_xform1, instance_xform2, vec4(0.0, 0.0, 0.0, 1.0)));
- color *= instance_color;
-
-#ifdef USE_INSTANCE_CUSTOM
- vec4 instance_custom = instance_custom_data;
-#else
- vec4 instance_custom = vec4(0.0);
-#endif
-
-#else
- mat4 extra_matrix_instance = extra_matrix;
- vec4 instance_custom = vec4(0.0);
-#endif
-
-#ifdef USE_TEXTURE_RECT
-
- if (dst_rect.z < 0.0) { // Transpose is encoded as negative dst_rect.z
- uv = src_rect.xy + abs(src_rect.zw) * vertex.yx;
- } else {
- uv = src_rect.xy + abs(src_rect.zw) * vertex;
- }
-
- vec4 outvec = vec4(0.0, 0.0, 0.0, 1.0);
-
- // This is what is done in the GLES 3 bindings and should
- // take care of flipped rects.
- //
- // But it doesn't.
- // I don't know why, will need to investigate further.
-
- outvec.xy = dst_rect.xy + abs(dst_rect.zw) * select(vertex, vec2(1.0, 1.0) - vertex, lessThan(src_rect.zw, vec2(0.0, 0.0)));
-
- // outvec.xy = dst_rect.xy + abs(dst_rect.zw) * vertex;
-#else
- vec4 outvec = vec4(vertex.xy, 0.0, 1.0);
-
- uv = uv_attrib;
-#endif
-
- float point_size = 1.0;
-
- {
- vec2 src_vtx = outvec.xy;
- /* clang-format off */
-
-VERTEX_SHADER_CODE
-
- /* clang-format on */
- }
-
- gl_PointSize = point_size;
-
-#if !defined(SKIP_TRANSFORM_USED)
- outvec = extra_matrix_instance * outvec;
- outvec = modelview_matrix * outvec;
-#endif
-
- color_interp = color;
-
-#ifdef USE_PIXEL_SNAP
- outvec.xy = floor(outvec + 0.5).xy;
- // precision issue on some hardware creates artifacts within texture
- // offset uv by a small amount to avoid
- uv += 1e-5;
-#endif
-
-#ifdef USE_SKELETON
-
- // look up transform from the "pose texture"
- if (bone_weights != vec4(0.0)) {
- highp mat4 bone_transform = mat4(0.0);
-
- for (int i = 0; i < 4; i++) {
- ivec2 tex_ofs = ivec2(int(bone_indices[i]) * 2, 0);
-
- highp mat4 b = mat4(
- texel2DFetch(skeleton_texture, skeleton_texture_size, tex_ofs + ivec2(0, 0)),
- texel2DFetch(skeleton_texture, skeleton_texture_size, tex_ofs + ivec2(1, 0)),
- vec4(0.0, 0.0, 1.0, 0.0),
- vec4(0.0, 0.0, 0.0, 1.0));
-
- bone_transform += b * bone_weights[i];
- }
-
- mat4 bone_matrix = skeleton_transform * transpose(bone_transform) * skeleton_transform_inverse;
-
- outvec = bone_matrix * outvec;
- }
-
-#endif
-
- uv_interp = uv;
- gl_Position = projection_matrix * outvec;
-
-#ifdef USE_LIGHTING
-
- light_uv_interp.xy = (light_matrix * outvec).xy;
- light_uv_interp.zw = (light_local_matrix * outvec).xy;
-
- transformed_light_uv = (mat3(light_matrix_inverse) * vec3(light_uv_interp.zw, 0.0)).xy; //for normal mapping
-
-#ifdef USE_SHADOWS
- pos = outvec.xy;
-#endif
-
- local_rot.xy = normalize((modelview_matrix * (extra_matrix_instance * vec4(1.0, 0.0, 0.0, 0.0))).xy);
- local_rot.zw = normalize((modelview_matrix * (extra_matrix_instance * vec4(0.0, 1.0, 0.0, 0.0))).xy);
-#ifdef USE_TEXTURE_RECT
- local_rot.xy *= sign(src_rect.z);
- local_rot.zw *= sign(src_rect.w);
-#endif
-
-#endif
-}
-
-/* clang-format off */
-[fragment]
-
-#ifndef USE_GLES_OVER_GL
-#extension GL_OES_texture_3D : enable
-#else
-#extension GL_EXT_texture_array : enable
-#endif
-
-// texture2DLodEXT and textureCubeLodEXT are fragment shader specific.
-// Do not copy these defines in the vertex section.
-#ifndef USE_GLES_OVER_GL
-#ifdef GL_EXT_shader_texture_lod
-#extension GL_EXT_shader_texture_lod : enable
-#define texture2DLod(img, coord, lod) texture2DLodEXT(img, coord, lod)
-#define textureCubeLod(img, coord, lod) textureCubeLodEXT(img, coord, lod)
-#endif
-#endif // !USE_GLES_OVER_GL
-
-#ifdef GL_ARB_shader_texture_lod
-#extension GL_ARB_shader_texture_lod : enable
-#endif
-
-#if !defined(GL_EXT_shader_texture_lod) && !defined(GL_ARB_shader_texture_lod)
-#define texture2DLod(img, coord, lod) texture2D(img, coord, lod)
-#define textureCubeLod(img, coord, lod) textureCube(img, coord, lod)
-#endif
-
-#ifdef USE_GLES_OVER_GL
-#define lowp
-#define mediump
-#define highp
-#else
-#if defined(USE_HIGHP_PRECISION)
-precision highp float;
-precision highp int;
-#else
-precision mediump float;
-precision mediump int;
-#endif
-#endif
-
-#include "stdlib.glsl"
-
-uniform sampler2D color_texture; // texunit:-1
-/* clang-format on */
-uniform highp vec2 color_texpixel_size;
-uniform mediump sampler2D normal_texture; // texunit:-2
-
-varying mediump vec2 uv_interp;
-varying mediump vec4 color_interp;
-
-uniform highp float time;
-
-uniform vec4 final_modulate;
-
-#ifdef SCREEN_TEXTURE_USED
-
-uniform sampler2D screen_texture; // texunit:-4
-
-#endif
-
-#ifdef SCREEN_UV_USED
-
-uniform vec2 screen_pixel_size;
-
-#endif
-
-#ifdef USE_LIGHTING
-
-uniform highp mat4 light_matrix;
-uniform highp mat4 light_local_matrix;
-uniform highp mat4 shadow_matrix;
-uniform highp vec4 light_color;
-uniform highp vec4 light_shadow_color;
-uniform highp vec2 light_pos;
-uniform highp float shadowpixel_size;
-uniform highp float shadow_gradient;
-uniform highp float light_height;
-uniform highp float light_outside_alpha;
-uniform highp float shadow_distance_mult;
-
-uniform lowp sampler2D light_texture; // texunit:-4
-varying vec4 light_uv_interp;
-varying vec2 transformed_light_uv;
-
-varying vec4 local_rot;
-
-#ifdef USE_SHADOWS
-
-uniform highp sampler2D shadow_texture; // texunit:-5
-varying highp vec2 pos;
-
-#endif
-
-const bool at_light_pass = true;
-#else
-const bool at_light_pass = false;
-#endif
-
-uniform bool use_default_normal;
-
-/* clang-format off */
-
-FRAGMENT_SHADER_GLOBALS
-
-/* clang-format on */
-
-void light_compute(
- inout vec4 light,
- inout vec2 light_vec,
- inout float light_height,
- inout vec4 light_color,
- vec2 light_uv,
- inout vec4 shadow_color,
- inout vec2 shadow_vec,
- vec3 normal,
- vec2 uv,
-#if defined(SCREEN_UV_USED)
- vec2 screen_uv,
-#endif
- vec4 color) {
-
-#if defined(USE_LIGHT_SHADER_CODE)
-
- /* clang-format off */
-
-LIGHT_SHADER_CODE
-
- /* clang-format on */
-
-#endif
-}
-
-void main() {
- vec4 color = color_interp;
- vec2 uv = uv_interp;
-#ifdef USE_FORCE_REPEAT
- //needs to use this to workaround GLES2/WebGL1 forcing tiling that textures that don't support it
- uv = mod(uv, vec2(1.0, 1.0));
-#endif
-
-#if !defined(COLOR_USED)
- //default behavior, texture by color
- color *= texture2D(color_texture, uv);
-#endif
-
-#ifdef SCREEN_UV_USED
- vec2 screen_uv = gl_FragCoord.xy * screen_pixel_size;
-#endif
-
- vec3 normal;
-
-#if defined(NORMAL_USED)
-
- bool normal_used = true;
-#else
- bool normal_used = false;
-#endif
-
- if (use_default_normal) {
- normal.xy = texture2D(normal_texture, uv).xy * 2.0 - 1.0;
- normal.z = sqrt(1.0 - dot(normal.xy, normal.xy));
- normal_used = true;
- } else {
- normal = vec3(0.0, 0.0, 1.0);
- }
-
- {
- float normal_depth = 1.0;
-
-#if defined(NORMALMAP_USED)
- vec3 normal_map = vec3(0.0, 0.0, 1.0);
- normal_used = true;
-#endif
-
- /* clang-format off */
-
-FRAGMENT_SHADER_CODE
-
- /* clang-format on */
-
-#if defined(NORMALMAP_USED)
- normal = mix(vec3(0.0, 0.0, 1.0), normal_map * vec3(2.0, -2.0, 1.0) - vec3(1.0, -1.0, 0.0), normal_depth);
-#endif
- }
- color *= final_modulate;
-
-#ifdef USE_LIGHTING
-
- vec2 light_vec = transformed_light_uv;
- vec2 shadow_vec = transformed_light_uv;
-
- if (normal_used) {
- normal.xy = mat2(local_rot.xy, local_rot.zw) * normal.xy;
- }
-
- float att = 1.0;
-
- vec2 light_uv = light_uv_interp.xy;
- vec4 light = texture2D(light_texture, light_uv);
-
- if (any(lessThan(light_uv_interp.xy, vec2(0.0, 0.0))) || any(greaterThanEqual(light_uv_interp.xy, vec2(1.0, 1.0)))) {
- color.a *= light_outside_alpha; //invisible
-
- } else {
- float real_light_height = light_height;
- vec4 real_light_color = light_color;
- vec4 real_light_shadow_color = light_shadow_color;
-
-#if defined(USE_LIGHT_SHADER_CODE)
- //light is written by the light shader
- light_compute(
- light,
- light_vec,
- real_light_height,
- real_light_color,
- light_uv,
- real_light_shadow_color,
- shadow_vec,
- normal,
- uv,
-#if defined(SCREEN_UV_USED)
- screen_uv,
-#endif
- color);
-#endif
-
- light *= real_light_color;
-
- if (normal_used) {
- vec3 light_normal = normalize(vec3(light_vec, -real_light_height));
- light *= max(dot(-light_normal, normal), 0.0);
- }
-
- color *= light;
-
-#ifdef USE_SHADOWS
-
-#ifdef SHADOW_VEC_USED
- mat3 inverse_light_matrix = mat3(light_matrix);
- inverse_light_matrix[0] = normalize(inverse_light_matrix[0]);
- inverse_light_matrix[1] = normalize(inverse_light_matrix[1]);
- inverse_light_matrix[2] = normalize(inverse_light_matrix[2]);
- shadow_vec = (inverse_light_matrix * vec3(shadow_vec, 0.0)).xy;
-#else
- shadow_vec = light_uv_interp.zw;
-#endif
-
- float angle_to_light = -atan(shadow_vec.x, shadow_vec.y);
- float PI = 3.14159265358979323846264;
- /*int i = int(mod(floor((angle_to_light+7.0*PI/6.0)/(4.0*PI/6.0))+1.0, 3.0)); // +1 pq os indices estao em ordem 2,0,1 nos arrays
- float ang*/
-
- float su, sz;
-
- float abs_angle = abs(angle_to_light);
- vec2 point;
- float sh;
- if (abs_angle < 45.0 * PI / 180.0) {
- point = shadow_vec;
- sh = 0.0 + (1.0 / 8.0);
- } else if (abs_angle > 135.0 * PI / 180.0) {
- point = -shadow_vec;
- sh = 0.5 + (1.0 / 8.0);
- } else if (angle_to_light > 0.0) {
- point = vec2(shadow_vec.y, -shadow_vec.x);
- sh = 0.25 + (1.0 / 8.0);
- } else {
- point = vec2(-shadow_vec.y, shadow_vec.x);
- sh = 0.75 + (1.0 / 8.0);
- }
-
- highp vec4 s = shadow_matrix * vec4(point, 0.0, 1.0);
- s.xyz /= s.w;
- su = s.x * 0.5 + 0.5;
- sz = s.z * 0.5 + 0.5;
- //sz=lightlength(light_vec);
-
- highp float shadow_attenuation = 0.0;
-
-#ifdef USE_RGBA_SHADOWS
-#define SHADOW_DEPTH(m_tex, m_uv) dot(texture2D((m_tex), (m_uv)), vec4(1.0 / (255.0 * 255.0 * 255.0), 1.0 / (255.0 * 255.0), 1.0 / 255.0, 1.0))
-
-#else
-
-#define SHADOW_DEPTH(m_tex, m_uv) (texture2D((m_tex), (m_uv)).r)
-
-#endif
-
-#ifdef SHADOW_USE_GRADIENT
-
- /* clang-format off */
- /* GLSL es 100 doesn't support line continuation characters(backslashes) */
-#define SHADOW_TEST(m_ofs) { highp float sd = SHADOW_DEPTH(shadow_texture, vec2(m_ofs, sh)); shadow_attenuation += 1.0 - smoothstep(sd, sd + shadow_gradient, sz); }
-
-#else
-
-#define SHADOW_TEST(m_ofs) { highp float sd = SHADOW_DEPTH(shadow_texture, vec2(m_ofs, sh)); shadow_attenuation += step(sz, sd); }
- /* clang-format on */
-
-#endif
-
-#ifdef SHADOW_FILTER_NEAREST
-
- SHADOW_TEST(su);
-
-#endif
-
-#ifdef SHADOW_FILTER_PCF3
-
- SHADOW_TEST(su + shadowpixel_size);
- SHADOW_TEST(su);
- SHADOW_TEST(su - shadowpixel_size);
- shadow_attenuation /= 3.0;
-
-#endif
-
-#ifdef SHADOW_FILTER_PCF5
-
- SHADOW_TEST(su + shadowpixel_size * 2.0);
- SHADOW_TEST(su + shadowpixel_size);
- SHADOW_TEST(su);
- SHADOW_TEST(su - shadowpixel_size);
- SHADOW_TEST(su - shadowpixel_size * 2.0);
- shadow_attenuation /= 5.0;
-
-#endif
-
-#ifdef SHADOW_FILTER_PCF7
-
- SHADOW_TEST(su + shadowpixel_size * 3.0);
- SHADOW_TEST(su + shadowpixel_size * 2.0);
- SHADOW_TEST(su + shadowpixel_size);
- SHADOW_TEST(su);
- SHADOW_TEST(su - shadowpixel_size);
- SHADOW_TEST(su - shadowpixel_size * 2.0);
- SHADOW_TEST(su - shadowpixel_size * 3.0);
- shadow_attenuation /= 7.0;
-
-#endif
-
-#ifdef SHADOW_FILTER_PCF9
-
- SHADOW_TEST(su + shadowpixel_size * 4.0);
- SHADOW_TEST(su + shadowpixel_size * 3.0);
- SHADOW_TEST(su + shadowpixel_size * 2.0);
- SHADOW_TEST(su + shadowpixel_size);
- SHADOW_TEST(su);
- SHADOW_TEST(su - shadowpixel_size);
- SHADOW_TEST(su - shadowpixel_size * 2.0);
- SHADOW_TEST(su - shadowpixel_size * 3.0);
- SHADOW_TEST(su - shadowpixel_size * 4.0);
- shadow_attenuation /= 9.0;
-
-#endif
-
-#ifdef SHADOW_FILTER_PCF13
-
- SHADOW_TEST(su + shadowpixel_size * 6.0);
- SHADOW_TEST(su + shadowpixel_size * 5.0);
- SHADOW_TEST(su + shadowpixel_size * 4.0);
- SHADOW_TEST(su + shadowpixel_size * 3.0);
- SHADOW_TEST(su + shadowpixel_size * 2.0);
- SHADOW_TEST(su + shadowpixel_size);
- SHADOW_TEST(su);
- SHADOW_TEST(su - shadowpixel_size);
- SHADOW_TEST(su - shadowpixel_size * 2.0);
- SHADOW_TEST(su - shadowpixel_size * 3.0);
- SHADOW_TEST(su - shadowpixel_size * 4.0);
- SHADOW_TEST(su - shadowpixel_size * 5.0);
- SHADOW_TEST(su - shadowpixel_size * 6.0);
- shadow_attenuation /= 13.0;
-
-#endif
-
- //color *= shadow_attenuation;
- color = mix(real_light_shadow_color, color, shadow_attenuation);
-//use shadows
-#endif
- }
-
-//use lighting
-#endif
-
- gl_FragColor = color;
-}
diff --git a/drivers/gles2/shaders/canvas_shadow.glsl b/drivers/gles2/shaders/canvas_shadow.glsl
deleted file mode 100644
index 2abcd5e67c..0000000000
--- a/drivers/gles2/shaders/canvas_shadow.glsl
+++ /dev/null
@@ -1,60 +0,0 @@
-/* clang-format off */
-[vertex]
-
-#ifdef USE_GLES_OVER_GL
-#define lowp
-#define mediump
-#define highp
-#else
-precision highp float;
-precision highp int;
-#endif
-
-attribute highp vec3 vertex; // attrib:0
-
-uniform highp mat4 projection_matrix;
-/* clang-format on */
-uniform highp mat4 light_matrix;
-uniform highp mat4 world_matrix;
-uniform highp float distance_norm;
-
-varying highp vec4 position_interp;
-
-void main() {
- gl_Position = projection_matrix * (light_matrix * (world_matrix * vec4(vertex, 1.0)));
- position_interp = gl_Position;
-}
-
-/* clang-format off */
-[fragment]
-
-#ifdef USE_GLES_OVER_GL
-#define lowp
-#define mediump
-#define highp
-#else
-#if defined(USE_HIGHP_PRECISION)
-precision highp float;
-precision highp int;
-#else
-precision mediump float;
-precision mediump int;
-#endif
-#endif
-
-varying highp vec4 position_interp;
-/* clang-format on */
-
-void main() {
- highp float depth = ((position_interp.z / position_interp.w) + 1.0) * 0.5 + 0.0; // bias
-
-#ifdef USE_RGBA_SHADOWS
-
- highp vec4 comp = fract(depth * vec4(255.0 * 255.0 * 255.0, 255.0 * 255.0, 255.0, 1.0));
- comp -= comp.xxyz * vec4(0.0, 1.0 / 255.0, 1.0 / 255.0, 1.0 / 255.0);
- gl_FragColor = comp;
-#else
-
- gl_FragColor = vec4(depth);
-#endif
-}
diff --git a/drivers/gles2/shaders/copy.glsl b/drivers/gles2/shaders/copy.glsl
deleted file mode 100644
index e833722ac3..0000000000
--- a/drivers/gles2/shaders/copy.glsl
+++ /dev/null
@@ -1,191 +0,0 @@
-/* clang-format off */
-[vertex]
-
-#ifdef USE_GLES_OVER_GL
-#define lowp
-#define mediump
-#define highp
-#else
-precision highp float;
-precision highp int;
-#endif
-
-attribute highp vec4 vertex_attrib; // attrib:0
-/* clang-format on */
-
-#if defined(USE_CUBEMAP) || defined(USE_PANORAMA)
-attribute vec3 cube_in; // attrib:4
-#else
-attribute vec2 uv_in; // attrib:4
-#endif
-
-attribute vec2 uv2_in; // attrib:5
-
-#if defined(USE_CUBEMAP) || defined(USE_PANORAMA)
-varying vec3 cube_interp;
-#else
-varying vec2 uv_interp;
-#endif
-varying vec2 uv2_interp;
-
-// These definitions are here because the shader-wrapper builder does
-// not understand `#elif defined()`
-#ifdef USE_DISPLAY_TRANSFORM
-#endif
-
-#ifdef USE_COPY_SECTION
-uniform highp vec4 copy_section;
-#elif defined(USE_DISPLAY_TRANSFORM)
-uniform highp mat4 display_transform;
-#endif
-
-void main() {
-#if defined(USE_CUBEMAP) || defined(USE_PANORAMA)
- cube_interp = cube_in;
-#elif defined(USE_ASYM_PANO)
- uv_interp = vertex_attrib.xy;
-#else
- uv_interp = uv_in;
-#endif
-
- uv2_interp = uv2_in;
- gl_Position = vertex_attrib;
-
-#ifdef USE_COPY_SECTION
- uv_interp = copy_section.xy + uv_interp * copy_section.zw;
- gl_Position.xy = (copy_section.xy + (gl_Position.xy * 0.5 + 0.5) * copy_section.zw) * 2.0 - 1.0;
-#elif defined(USE_DISPLAY_TRANSFORM)
- uv_interp = (display_transform * vec4(uv_in, 1.0, 1.0)).xy;
-#endif
-}
-
-/* clang-format off */
-[fragment]
-
-#define M_PI 3.14159265359
-
-#ifdef USE_GLES_OVER_GL
-#define lowp
-#define mediump
-#define highp
-#else
-#if defined(USE_HIGHP_PRECISION)
-precision highp float;
-precision highp int;
-#else
-precision mediump float;
-precision mediump int;
-#endif
-#endif
-
-#if defined(USE_CUBEMAP) || defined(USE_PANORAMA)
-varying vec3 cube_interp;
-#else
-varying vec2 uv_interp;
-#endif
-/* clang-format on */
-
-#ifdef USE_ASYM_PANO
-uniform highp mat4 pano_transform;
-uniform highp vec4 asym_proj;
-#endif
-
-#ifdef USE_CUBEMAP
-uniform samplerCube source_cube; // texunit:0
-#else
-uniform sampler2D source; // texunit:0
-#endif
-
-#ifdef SEP_CBCR_TEXTURE
-uniform sampler2D CbCr; //texunit:1
-#endif
-
-varying vec2 uv2_interp;
-
-#ifdef USE_MULTIPLIER
-uniform float multiplier;
-#endif
-
-#ifdef USE_CUSTOM_ALPHA
-uniform float custom_alpha;
-#endif
-
-#if defined(USE_PANORAMA) || defined(USE_ASYM_PANO)
-uniform highp mat4 sky_transform;
-
-vec4 texturePanorama(sampler2D pano, vec3 normal) {
- vec2 st = vec2(
- atan(normal.x, normal.z),
- acos(normal.y));
-
- if (st.x < 0.0)
- st.x += M_PI * 2.0;
-
- st /= vec2(M_PI * 2.0, M_PI);
-
- return texture2D(pano, st);
-}
-
-#endif
-
-void main() {
-#ifdef USE_PANORAMA
-
- vec3 cube_normal = normalize(cube_interp);
- cube_normal.z = -cube_normal.z;
- cube_normal = mat3(sky_transform) * cube_normal;
- cube_normal.z = -cube_normal.z;
-
- vec4 color = texturePanorama(source, cube_normal);
-
-#elif defined(USE_ASYM_PANO)
-
- // When an asymmetrical projection matrix is used (applicable for stereoscopic rendering i.e. VR) we need to do this calculation per fragment to get a perspective correct result.
- // Asymmetrical projection means the center of projection is no longer in the center of the screen but shifted.
- // The Matrix[2][0] (= asym_proj.x) and Matrix[2][1] (= asym_proj.z) values are what provide the right shift in the image.
-
- vec3 cube_normal;
- cube_normal.z = -1.0;
- cube_normal.x = (cube_normal.z * (-uv_interp.x - asym_proj.x)) / asym_proj.y;
- cube_normal.y = (cube_normal.z * (-uv_interp.y - asym_proj.z)) / asym_proj.a;
- cube_normal = mat3(sky_transform) * mat3(pano_transform) * cube_normal;
- cube_normal.z = -cube_normal.z;
-
- vec4 color = texturePanorama(source, normalize(cube_normal.xyz));
-
-#elif defined(USE_CUBEMAP)
- vec4 color = textureCube(source_cube, normalize(cube_interp));
-#elif defined(SEP_CBCR_TEXTURE)
- vec4 color;
- color.r = texture2D(source, uv_interp).r;
- color.gb = texture2D(CbCr, uv_interp).rg - vec2(0.5, 0.5);
- color.a = 1.0;
-#else
- vec4 color = texture2D(source, uv_interp);
-#endif
-
-#ifdef YCBCR_TO_RGB
- // YCbCr -> RGB conversion
-
- // Using BT.601, which is the standard for SDTV is provided as a reference
- color.rgb = mat3(
- vec3(1.00000, 1.00000, 1.00000),
- vec3(0.00000, -0.34413, 1.77200),
- vec3(1.40200, -0.71414, 0.00000)) *
- color.rgb;
-#endif
-
-#ifdef USE_NO_ALPHA
- color.a = 1.0;
-#endif
-
-#ifdef USE_CUSTOM_ALPHA
- color.a = custom_alpha;
-#endif
-
-#ifdef USE_MULTIPLIER
- color.rgb *= multiplier;
-#endif
-
- gl_FragColor = color;
-}
diff --git a/drivers/gles2/shaders/cube_to_dp.glsl b/drivers/gles2/shaders/cube_to_dp.glsl
deleted file mode 100644
index 1612ec3d5a..0000000000
--- a/drivers/gles2/shaders/cube_to_dp.glsl
+++ /dev/null
@@ -1,100 +0,0 @@
-/* clang-format off */
-[vertex]
-
-#ifdef USE_GLES_OVER_GL
-#define lowp
-#define mediump
-#define highp
-#else
-precision mediump float;
-precision mediump int;
-#endif
-
-attribute highp vec4 vertex_attrib; // attrib:0
-/* clang-format on */
-attribute vec2 uv_in; // attrib:4
-
-varying vec2 uv_interp;
-
-void main() {
- uv_interp = uv_in;
- gl_Position = vertex_attrib;
-}
-
-/* clang-format off */
-[fragment]
-
-#ifdef USE_GLES_OVER_GL
-#define lowp
-#define mediump
-#define highp
-#else
-#if defined(USE_HIGHP_PRECISION)
-precision highp float;
-precision highp int;
-#else
-precision mediump float;
-precision mediump int;
-#endif
-#endif
-
-uniform highp samplerCube source_cube; //texunit:0
-/* clang-format on */
-varying vec2 uv_interp;
-
-uniform bool z_flip;
-uniform highp float z_far;
-uniform highp float z_near;
-uniform highp float bias;
-
-void main() {
- highp vec3 normal = vec3(uv_interp * 2.0 - 1.0, 0.0);
- /*
- if (z_flip) {
- normal.z = 0.5 - 0.5 * ((normal.x * normal.x) + (normal.y * normal.y));
- } else {
- normal.z = -0.5 + 0.5 * ((normal.x * normal.x) + (normal.y * normal.y));
- }
- */
-
- //normal.z = sqrt(1.0 - dot(normal.xy, normal.xy));
- //normal.xy *= 1.0 + normal.z;
-
- normal.z = 0.5 - 0.5 * ((normal.x * normal.x) + (normal.y * normal.y));
- normal = normalize(normal);
- /*
- normal.z = 0.5;
- normal = normalize(normal);
- */
-
- if (!z_flip) {
- normal.z = -normal.z;
- }
-
- //normal = normalize(vec3( uv_interp * 2.0 - 1.0, 1.0 ));
- float depth = textureCube(source_cube, normal).r;
-
- // absolute values for direction cosines, bigger value equals closer to basis axis
- vec3 unorm = abs(normal);
-
- if ((unorm.x >= unorm.y) && (unorm.x >= unorm.z)) {
- // x code
- unorm = normal.x > 0.0 ? vec3(1.0, 0.0, 0.0) : vec3(-1.0, 0.0, 0.0);
- } else if ((unorm.y > unorm.x) && (unorm.y >= unorm.z)) {
- // y code
- unorm = normal.y > 0.0 ? vec3(0.0, 1.0, 0.0) : vec3(0.0, -1.0, 0.0);
- } else if ((unorm.z > unorm.x) && (unorm.z > unorm.y)) {
- // z code
- unorm = normal.z > 0.0 ? vec3(0.0, 0.0, 1.0) : vec3(0.0, 0.0, -1.0);
- } else {
- // oh-no we messed up code
- // has to be
- unorm = vec3(1.0, 0.0, 0.0);
- }
-
- float depth_fix = 1.0 / dot(normal, unorm);
-
- depth = 2.0 * depth - 1.0;
- float linear_depth = 2.0 * z_near * z_far / (z_far + z_near - depth * (z_far - z_near));
- gl_FragDepth = (linear_depth * depth_fix + bias) / z_far;
-}
diff --git a/drivers/gles2/shaders/cubemap_filter.glsl b/drivers/gles2/shaders/cubemap_filter.glsl
deleted file mode 100644
index f5c91cc707..0000000000
--- a/drivers/gles2/shaders/cubemap_filter.glsl
+++ /dev/null
@@ -1,231 +0,0 @@
-/* clang-format off */
-[vertex]
-
-#ifdef USE_GLES_OVER_GL
-#define lowp
-#define mediump
-#define highp
-#else
-precision highp float;
-precision highp int;
-#endif
-
-attribute highp vec2 vertex; // attrib:0
-/* clang-format on */
-attribute highp vec2 uv; // attrib:4
-
-varying highp vec2 uv_interp;
-
-void main() {
- uv_interp = uv;
- gl_Position = vec4(vertex, 0, 1);
-}
-
-/* clang-format off */
-[fragment]
-
-// texture2DLodEXT and textureCubeLodEXT are fragment shader specific.
-// Do not copy these defines in the vertex section.
-#ifndef USE_GLES_OVER_GL
-#ifdef GL_EXT_shader_texture_lod
-#extension GL_EXT_shader_texture_lod : enable
-#define texture2DLod(img, coord, lod) texture2DLodEXT(img, coord, lod)
-#define textureCubeLod(img, coord, lod) textureCubeLodEXT(img, coord, lod)
-#endif
-#endif // !USE_GLES_OVER_GL
-
-#ifdef GL_ARB_shader_texture_lod
-#extension GL_ARB_shader_texture_lod : enable
-#endif
-
-#if !defined(GL_EXT_shader_texture_lod) && !defined(GL_ARB_shader_texture_lod)
-#define texture2DLod(img, coord, lod) texture2D(img, coord, lod)
-#define textureCubeLod(img, coord, lod) textureCube(img, coord, lod)
-#endif
-
-#ifdef USE_GLES_OVER_GL
-#define lowp
-#define mediump
-#define highp
-#else
-#if defined(USE_HIGHP_PRECISION)
-precision highp float;
-precision highp int;
-#else
-precision mediump float;
-precision mediump int;
-#endif
-
-#endif
-
-#ifdef USE_SOURCE_PANORAMA
-uniform sampler2D source_panorama; //texunit:0
-#else
-uniform samplerCube source_cube; //texunit:0
-#endif
-/* clang-format on */
-
-uniform int face_id;
-uniform float roughness;
-varying highp vec2 uv_interp;
-
-uniform sampler2D radical_inverse_vdc_cache; // texunit:1
-
-#define M_PI 3.14159265359
-
-#ifdef LOW_QUALITY
-
-#define SAMPLE_COUNT 64
-
-#else
-
-#define SAMPLE_COUNT 512
-
-#endif
-
-#ifdef USE_SOURCE_PANORAMA
-
-vec4 texturePanorama(sampler2D pano, vec3 normal) {
- vec2 st = vec2(
- atan(normal.x, normal.z),
- acos(normal.y));
-
- if (st.x < 0.0)
- st.x += M_PI * 2.0;
-
- st /= vec2(M_PI * 2.0, M_PI);
-
- return texture2DLod(pano, st, 0.0);
-}
-
-#endif
-
-vec3 texelCoordToVec(vec2 uv, int faceID) {
- mat3 faceUvVectors[6];
-
- // -x
- faceUvVectors[0][0] = vec3(0.0, 0.0, 1.0); // u -> +z
- faceUvVectors[0][1] = vec3(0.0, -1.0, 0.0); // v -> -y
- faceUvVectors[0][2] = vec3(-1.0, 0.0, 0.0); // -x face
-
- // +x
- faceUvVectors[1][0] = vec3(0.0, 0.0, -1.0); // u -> -z
- faceUvVectors[1][1] = vec3(0.0, -1.0, 0.0); // v -> -y
- faceUvVectors[1][2] = vec3(1.0, 0.0, 0.0); // +x face
-
- // -y
- faceUvVectors[2][0] = vec3(1.0, 0.0, 0.0); // u -> +x
- faceUvVectors[2][1] = vec3(0.0, 0.0, -1.0); // v -> -z
- faceUvVectors[2][2] = vec3(0.0, -1.0, 0.0); // -y face
-
- // +y
- faceUvVectors[3][0] = vec3(1.0, 0.0, 0.0); // u -> +x
- faceUvVectors[3][1] = vec3(0.0, 0.0, 1.0); // v -> +z
- faceUvVectors[3][2] = vec3(0.0, 1.0, 0.0); // +y face
-
- // -z
- faceUvVectors[4][0] = vec3(-1.0, 0.0, 0.0); // u -> -x
- faceUvVectors[4][1] = vec3(0.0, -1.0, 0.0); // v -> -y
- faceUvVectors[4][2] = vec3(0.0, 0.0, -1.0); // -z face
-
- // +z
- faceUvVectors[5][0] = vec3(1.0, 0.0, 0.0); // u -> +x
- faceUvVectors[5][1] = vec3(0.0, -1.0, 0.0); // v -> -y
- faceUvVectors[5][2] = vec3(0.0, 0.0, 1.0); // +z face
-
- // out = u * s_faceUv[0] + v * s_faceUv[1] + s_faceUv[2].
- vec3 result;
- for (int i = 0; i < 6; i++) {
- if (i == faceID) {
- result = (faceUvVectors[i][0] * uv.x) + (faceUvVectors[i][1] * uv.y) + faceUvVectors[i][2];
- break;
- }
- }
- return normalize(result);
-}
-
-vec3 ImportanceSampleGGX(vec2 Xi, float Roughness, vec3 N) {
- float a = Roughness * Roughness; // DISNEY'S ROUGHNESS [see Burley'12 siggraph]
-
- // Compute distribution direction
- float Phi = 2.0 * M_PI * Xi.x;
- float CosTheta = sqrt((1.0 - Xi.y) / (1.0 + (a * a - 1.0) * Xi.y));
- float SinTheta = sqrt(1.0 - CosTheta * CosTheta);
-
- // Convert to spherical direction
- vec3 H;
- H.x = SinTheta * cos(Phi);
- H.y = SinTheta * sin(Phi);
- H.z = CosTheta;
-
- vec3 UpVector = abs(N.z) < 0.999 ? vec3(0.0, 0.0, 1.0) : vec3(1.0, 0.0, 0.0);
- vec3 TangentX = normalize(cross(UpVector, N));
- vec3 TangentY = cross(N, TangentX);
-
- // Tangent to world space
- return TangentX * H.x + TangentY * H.y + N * H.z;
-}
-
-float radical_inverse_VdC(int i) {
- return texture2D(radical_inverse_vdc_cache, vec2(float(i) / 512.0, 0.0)).x;
-}
-
-vec2 Hammersley(int i, int N) {
- return vec2(float(i) / float(N), radical_inverse_VdC(i));
-}
-
-uniform bool z_flip;
-
-void main() {
- vec3 color = vec3(0.0);
-
- vec2 uv = (uv_interp * 2.0) - 1.0;
- vec3 N = texelCoordToVec(uv, face_id);
-
-#ifdef USE_DIRECT_WRITE
-
-#ifdef USE_SOURCE_PANORAMA
-
- gl_FragColor = vec4(texturePanorama(source_panorama, N).rgb, 1.0);
-#else
-
- gl_FragColor = vec4(textureCube(source_cube, N).rgb, 1.0);
-#endif //USE_SOURCE_PANORAMA
-
-#else
-
- vec4 sum = vec4(0.0);
-
- for (int sample_num = 0; sample_num < SAMPLE_COUNT; sample_num++) {
- vec2 xi = Hammersley(sample_num, SAMPLE_COUNT);
-
- vec3 H = ImportanceSampleGGX(xi, roughness, N);
- vec3 V = N;
- vec3 L = (2.0 * dot(V, H) * H - V);
-
- float NdotL = clamp(dot(N, L), 0.0, 1.0);
-
- if (NdotL > 0.0) {
-
-#ifdef USE_SOURCE_PANORAMA
- vec3 val = texturePanorama(source_panorama, L).rgb;
-#else
- vec3 val = textureCubeLod(source_cube, L, 0.0).rgb;
-#endif
- //mix using Linear, to approximate high end back-end
- val = mix(pow((val + vec3(0.055)) * (1.0 / (1.0 + 0.055)), vec3(2.4)), val * (1.0 / 12.92), vec3(lessThan(val, vec3(0.04045))));
-
- sum.rgb += val * NdotL;
-
- sum.a += NdotL;
- }
- }
-
- sum /= sum.a;
-
- vec3 a = vec3(0.055);
- sum.rgb = mix((vec3(1.0) + a) * pow(sum.rgb, vec3(1.0 / 2.4)) - a, 12.92 * sum.rgb, vec3(lessThan(sum.rgb, vec3(0.0031308))));
-
- gl_FragColor = vec4(sum.rgb, 1.0);
-#endif
-}
diff --git a/drivers/gles2/shaders/effect_blur.glsl b/drivers/gles2/shaders/effect_blur.glsl
deleted file mode 100644
index 7b607dd76a..0000000000
--- a/drivers/gles2/shaders/effect_blur.glsl
+++ /dev/null
@@ -1,308 +0,0 @@
-/* clang-format off */
-[vertex]
-
-#ifdef USE_GLES_OVER_GL
-#define lowp
-#define mediump
-#define highp
-#else
-precision highp float;
-precision highp int;
-#endif
-
-attribute vec2 vertex_attrib; // attrib:0
-/* clang-format on */
-attribute vec2 uv_in; // attrib:4
-
-varying vec2 uv_interp;
-
-#ifdef USE_BLUR_SECTION
-
-uniform vec4 blur_section;
-
-#endif
-
-void main() {
- uv_interp = uv_in;
- gl_Position = vec4(vertex_attrib, 0.0, 1.0);
-#ifdef USE_BLUR_SECTION
-
- uv_interp = blur_section.xy + uv_interp * blur_section.zw;
- gl_Position.xy = (blur_section.xy + (gl_Position.xy * 0.5 + 0.5) * blur_section.zw) * 2.0 - 1.0;
-#endif
-}
-
-/* clang-format off */
-[fragment]
-
-// texture2DLodEXT and textureCubeLodEXT are fragment shader specific.
-// Do not copy these defines in the vertex section.
-#ifndef USE_GLES_OVER_GL
-#ifdef GL_EXT_shader_texture_lod
-#extension GL_EXT_shader_texture_lod : enable
-#define texture2DLod(img, coord, lod) texture2DLodEXT(img, coord, lod)
-#define textureCubeLod(img, coord, lod) textureCubeLodEXT(img, coord, lod)
-#endif
-#endif // !USE_GLES_OVER_GL
-
-#ifdef GL_ARB_shader_texture_lod
-#extension GL_ARB_shader_texture_lod : enable
-#endif
-
-#if !defined(GL_EXT_shader_texture_lod) && !defined(GL_ARB_shader_texture_lod)
-#define texture2DLod(img, coord, lod) texture2D(img, coord, lod)
-#define textureCubeLod(img, coord, lod) textureCube(img, coord, lod)
-#endif
-
-#ifdef USE_GLES_OVER_GL
-#define lowp
-#define mediump
-#define highp
-#else
-#if defined(USE_HIGHP_PRECISION)
-precision highp float;
-precision highp int;
-#else
-precision mediump float;
-precision mediump int;
-#endif
-#endif
-
-varying vec2 uv_interp;
-/* clang-format on */
-uniform sampler2D source_color; //texunit:0
-
-uniform float lod;
-uniform vec2 pixel_size;
-
-#if defined(GLOW_GAUSSIAN_HORIZONTAL) || defined(GLOW_GAUSSIAN_VERTICAL)
-
-uniform float glow_strength;
-
-#endif
-
-#if defined(DOF_FAR_BLUR) || defined(DOF_NEAR_BLUR)
-
-#ifdef USE_GLES_OVER_GL
-#ifdef DOF_QUALITY_LOW
-const int dof_kernel_size = 5;
-const int dof_kernel_from = 2;
-const float dof_kernel[5] = float[](0.153388, 0.221461, 0.250301, 0.221461, 0.153388);
-#endif
-
-#ifdef DOF_QUALITY_MEDIUM
-const int dof_kernel_size = 11;
-const int dof_kernel_from = 5;
-const float dof_kernel[11] = float[](0.055037, 0.072806, 0.090506, 0.105726, 0.116061, 0.119726, 0.116061, 0.105726, 0.090506, 0.072806, 0.055037);
-
-#endif
-
-#ifdef DOF_QUALITY_HIGH
-const int dof_kernel_size = 21;
-const int dof_kernel_from = 10;
-const float dof_kernel[21] = float[](0.028174, 0.032676, 0.037311, 0.041944, 0.046421, 0.050582, 0.054261, 0.057307, 0.059587, 0.060998, 0.061476, 0.060998, 0.059587, 0.057307, 0.054261, 0.050582, 0.046421, 0.041944, 0.037311, 0.032676, 0.028174);
-#endif
-#endif
-
-uniform sampler2D dof_source_depth; //texunit:1
-uniform float dof_begin;
-uniform float dof_end;
-uniform vec2 dof_dir;
-uniform float dof_radius;
-
-#endif
-
-#ifdef GLOW_FIRST_PASS
-
-uniform highp float luminance_cap;
-
-uniform float glow_bloom;
-uniform float glow_hdr_threshold;
-uniform float glow_hdr_scale;
-
-#endif
-
-uniform float camera_z_far;
-uniform float camera_z_near;
-
-void main() {
-#ifdef GLOW_GAUSSIAN_HORIZONTAL
- vec2 pix_size = pixel_size;
- pix_size *= 0.5; //reading from larger buffer, so use more samples
- vec4 color = texture2DLod(source_color, uv_interp + vec2(0.0, 0.0) * pix_size, lod) * 0.174938;
- color += texture2DLod(source_color, uv_interp + vec2(1.0, 0.0) * pix_size, lod) * 0.165569;
- color += texture2DLod(source_color, uv_interp + vec2(2.0, 0.0) * pix_size, lod) * 0.140367;
- color += texture2DLod(source_color, uv_interp + vec2(3.0, 0.0) * pix_size, lod) * 0.106595;
- color += texture2DLod(source_color, uv_interp + vec2(-1.0, 0.0) * pix_size, lod) * 0.165569;
- color += texture2DLod(source_color, uv_interp + vec2(-2.0, 0.0) * pix_size, lod) * 0.140367;
- color += texture2DLod(source_color, uv_interp + vec2(-3.0, 0.0) * pix_size, lod) * 0.106595;
- color *= glow_strength;
- gl_FragColor = color;
-#endif
-
-#ifdef GLOW_GAUSSIAN_VERTICAL
- vec4 color = texture2DLod(source_color, uv_interp + vec2(0.0, 0.0) * pixel_size, lod) * 0.288713;
- color += texture2DLod(source_color, uv_interp + vec2(0.0, 1.0) * pixel_size, lod) * 0.233062;
- color += texture2DLod(source_color, uv_interp + vec2(0.0, 2.0) * pixel_size, lod) * 0.122581;
- color += texture2DLod(source_color, uv_interp + vec2(0.0, -1.0) * pixel_size, lod) * 0.233062;
- color += texture2DLod(source_color, uv_interp + vec2(0.0, -2.0) * pixel_size, lod) * 0.122581;
- color *= glow_strength;
- gl_FragColor = color;
-#endif
-
-#ifndef USE_GLES_OVER_GL
-#if defined(DOF_FAR_BLUR) || defined(DOF_NEAR_BLUR)
-
-#ifdef DOF_QUALITY_LOW
- const int dof_kernel_size = 5;
- const int dof_kernel_from = 2;
- float dof_kernel[5];
- dof_kernel[0] = 0.153388;
- dof_kernel[1] = 0.221461;
- dof_kernel[2] = 0.250301;
- dof_kernel[3] = 0.221461;
- dof_kernel[4] = 0.153388;
-#endif
-
-#ifdef DOF_QUALITY_MEDIUM
- const int dof_kernel_size = 11;
- const int dof_kernel_from = 5;
- float dof_kernel[11];
- dof_kernel[0] = 0.055037;
- dof_kernel[1] = 0.072806;
- dof_kernel[2] = 0.090506;
- dof_kernel[3] = 0.105726;
- dof_kernel[4] = 0.116061;
- dof_kernel[5] = 0.119726;
- dof_kernel[6] = 0.116061;
- dof_kernel[7] = 0.105726;
- dof_kernel[8] = 0.090506;
- dof_kernel[9] = 0.072806;
- dof_kernel[10] = 0.055037;
-#endif
-
-#ifdef DOF_QUALITY_HIGH
- const int dof_kernel_size = 21;
- const int dof_kernel_from = 10;
- float dof_kernel[21];
- dof_kernel[0] = 0.028174;
- dof_kernel[1] = 0.032676;
- dof_kernel[2] = 0.037311;
- dof_kernel[3] = 0.041944;
- dof_kernel[4] = 0.046421;
- dof_kernel[5] = 0.050582;
- dof_kernel[6] = 0.054261;
- dof_kernel[7] = 0.057307;
- dof_kernel[8] = 0.059587;
- dof_kernel[9] = 0.060998;
- dof_kernel[10] = 0.061476;
- dof_kernel[11] = 0.060998;
- dof_kernel[12] = 0.059587;
- dof_kernel[13] = 0.057307;
- dof_kernel[14] = 0.054261;
- dof_kernel[15] = 0.050582;
- dof_kernel[16] = 0.046421;
- dof_kernel[17] = 0.041944;
- dof_kernel[18] = 0.037311;
- dof_kernel[19] = 0.032676;
- dof_kernel[20] = 0.028174;
-#endif
-#endif
-#endif //!USE_GLES_OVER_GL
-
-#ifdef DOF_FAR_BLUR
-
- vec4 color_accum = vec4(0.0);
-
- float depth = texture2DLod(dof_source_depth, uv_interp, 0.0).r;
- depth = depth * 2.0 - 1.0;
-#ifdef USE_ORTHOGONAL_PROJECTION
- depth = ((depth + (camera_z_far + camera_z_near) / (camera_z_far - camera_z_near)) * (camera_z_far - camera_z_near)) / 2.0;
-#else
- depth = 2.0 * camera_z_near * camera_z_far / (camera_z_far + camera_z_near - depth * (camera_z_far - camera_z_near));
-#endif
-
- float amount = smoothstep(dof_begin, dof_end, depth);
- float k_accum = 0.0;
-
- for (int i = 0; i < dof_kernel_size; i++) {
- int int_ofs = i - dof_kernel_from;
- vec2 tap_uv = uv_interp + dof_dir * float(int_ofs) * amount * dof_radius;
-
- float tap_k = dof_kernel[i];
-
- float tap_depth = texture2D(dof_source_depth, tap_uv, 0.0).r;
- tap_depth = tap_depth * 2.0 - 1.0;
-#ifdef USE_ORTHOGONAL_PROJECTION
- tap_depth = ((tap_depth + (camera_z_far + camera_z_near) / (camera_z_far - camera_z_near)) * (camera_z_far - camera_z_near)) / 2.0;
-#else
- tap_depth = 2.0 * camera_z_near * camera_z_far / (camera_z_far + camera_z_near - tap_depth * (camera_z_far - camera_z_near));
-#endif
- float tap_amount = int_ofs == 0 ? 1.0 : smoothstep(dof_begin, dof_end, tap_depth);
- tap_amount *= tap_amount * tap_amount; //prevent undesired glow effect
-
- vec4 tap_color = texture2DLod(source_color, tap_uv, 0.0) * tap_k;
-
- k_accum += tap_k * tap_amount;
- color_accum += tap_color * tap_amount;
- }
-
- if (k_accum > 0.0) {
- color_accum /= k_accum;
- }
-
- gl_FragColor = color_accum; ///k_accum;
-
-#endif
-
-#ifdef DOF_NEAR_BLUR
-
- vec4 color_accum = vec4(0.0);
-
- float max_accum = 0.0;
-
- for (int i = 0; i < dof_kernel_size; i++) {
- int int_ofs = i - dof_kernel_from;
- vec2 tap_uv = uv_interp + dof_dir * float(int_ofs) * dof_radius;
- float ofs_influence = max(0.0, 1.0 - abs(float(int_ofs)) / float(dof_kernel_from));
-
- float tap_k = dof_kernel[i];
-
- vec4 tap_color = texture2DLod(source_color, tap_uv, 0.0);
-
- float tap_depth = texture2D(dof_source_depth, tap_uv, 0.0).r;
- tap_depth = tap_depth * 2.0 - 1.0;
-#ifdef USE_ORTHOGONAL_PROJECTION
- tap_depth = ((tap_depth + (camera_z_far + camera_z_near) / (camera_z_far - camera_z_near)) * (camera_z_far - camera_z_near)) / 2.0;
-#else
- tap_depth = 2.0 * camera_z_near * camera_z_far / (camera_z_far + camera_z_near - tap_depth * (camera_z_far - camera_z_near));
-#endif
- float tap_amount = 1.0 - smoothstep(dof_end, dof_begin, tap_depth);
- tap_amount *= tap_amount * tap_amount; //prevent undesired glow effect
-
-#ifdef DOF_NEAR_FIRST_TAP
-
- tap_color.a = 1.0 - smoothstep(dof_end, dof_begin, tap_depth);
-
-#endif
-
- max_accum = max(max_accum, tap_amount * ofs_influence);
-
- color_accum += tap_color * tap_k;
- }
-
- color_accum.a = max(color_accum.a, sqrt(max_accum));
-
- gl_FragColor = color_accum;
-
-#endif
-
-#ifdef GLOW_FIRST_PASS
-
- float luminance = max(gl_FragColor.r, max(gl_FragColor.g, gl_FragColor.b));
- float feedback = max(smoothstep(glow_hdr_threshold, glow_hdr_threshold + glow_hdr_scale, luminance), glow_bloom);
-
- gl_FragColor = min(gl_FragColor * feedback, vec4(luminance_cap));
-
-#endif
-}
diff --git a/drivers/gles2/shaders/exposure.glsl b/drivers/gles2/shaders/exposure.glsl
deleted file mode 100644
index c20812bfa3..0000000000
--- a/drivers/gles2/shaders/exposure.glsl
+++ /dev/null
@@ -1,86 +0,0 @@
-/* clang-format off */
-[vertex]
-
-layout(location = 0) in highp vec4 vertex_attrib;
-/* clang-format on */
-
-void main() {
- gl_Position = vertex_attrib;
-}
-
-/* clang-format off */
-[fragment]
-
-uniform highp sampler2D source_exposure; //texunit:0
-/* clang-format on */
-
-#ifdef EXPOSURE_BEGIN
-
-uniform highp ivec2 source_render_size;
-uniform highp ivec2 target_size;
-
-#endif
-
-#ifdef EXPOSURE_END
-
-uniform highp sampler2D prev_exposure; //texunit:1
-uniform highp float exposure_adjust;
-uniform highp float min_luminance;
-uniform highp float max_luminance;
-
-#endif
-
-layout(location = 0) out highp float exposure;
-
-void main() {
-#ifdef EXPOSURE_BEGIN
-
- ivec2 src_pos = ivec2(gl_FragCoord.xy) * source_render_size / target_size;
-
-#if 1
- //more precise and expensive, but less jittery
- ivec2 next_pos = ivec2(gl_FragCoord.xy + ivec2(1)) * source_render_size / target_size;
- next_pos = max(next_pos, src_pos + ivec2(1)); //so it at least reads one pixel
- highp vec3 source_color = vec3(0.0);
- for (int i = src_pos.x; i < next_pos.x; i++) {
- for (int j = src_pos.y; j < next_pos.y; j++) {
- source_color += texelFetch(source_exposure, ivec2(i, j), 0).rgb;
- }
- }
-
- source_color /= float((next_pos.x - src_pos.x) * (next_pos.y - src_pos.y));
-#else
- highp vec3 source_color = texelFetch(source_exposure, src_pos, 0).rgb;
-
-#endif
-
- exposure = max(source_color.r, max(source_color.g, source_color.b));
-
-#else
-
- ivec2 coord = ivec2(gl_FragCoord.xy);
- exposure = texelFetch(source_exposure, coord * 3 + ivec2(0, 0), 0).r;
- exposure += texelFetch(source_exposure, coord * 3 + ivec2(1, 0), 0).r;
- exposure += texelFetch(source_exposure, coord * 3 + ivec2(2, 0), 0).r;
- exposure += texelFetch(source_exposure, coord * 3 + ivec2(0, 1), 0).r;
- exposure += texelFetch(source_exposure, coord * 3 + ivec2(1, 1), 0).r;
- exposure += texelFetch(source_exposure, coord * 3 + ivec2(2, 1), 0).r;
- exposure += texelFetch(source_exposure, coord * 3 + ivec2(0, 2), 0).r;
- exposure += texelFetch(source_exposure, coord * 3 + ivec2(1, 2), 0).r;
- exposure += texelFetch(source_exposure, coord * 3 + ivec2(2, 2), 0).r;
- exposure *= (1.0 / 9.0);
-
-#ifdef EXPOSURE_END
-
-#ifdef EXPOSURE_FORCE_SET
- //will stay as is
-#else
- highp float prev_lum = texelFetch(prev_exposure, ivec2(0, 0), 0).r; //1 pixel previous exposure
- exposure = clamp(prev_lum + (exposure - prev_lum) * exposure_adjust, min_luminance, max_luminance);
-
-#endif //EXPOSURE_FORCE_SET
-
-#endif //EXPOSURE_END
-
-#endif //EXPOSURE_BEGIN
-}
diff --git a/drivers/gles2/shaders/lens_distorted.glsl b/drivers/gles2/shaders/lens_distorted.glsl
deleted file mode 100644
index d568006ccc..0000000000
--- a/drivers/gles2/shaders/lens_distorted.glsl
+++ /dev/null
@@ -1,84 +0,0 @@
-/* clang-format off */
-[vertex]
-
-#ifdef USE_GLES_OVER_GL
-#define lowp
-#define mediump
-#define highp
-#else
-precision highp float;
-precision highp int;
-#endif
-
-attribute highp vec2 vertex; // attrib:0
-/* clang-format on */
-
-uniform vec2 offset;
-uniform vec2 scale;
-
-varying vec2 uv_interp;
-
-void main() {
- uv_interp = vertex.xy * 2.0 - 1.0;
-
- vec2 v = vertex.xy * scale + offset;
- gl_Position = vec4(v, 0.0, 1.0);
-}
-
-/* clang-format off */
-[fragment]
-
-#ifdef USE_GLES_OVER_GL
-#define lowp
-#define mediump
-#define highp
-#else
-#if defined(USE_HIGHP_PRECISION)
-precision highp float;
-precision highp int;
-#else
-precision mediump float;
-precision mediump int;
-#endif
-#endif
-
-uniform sampler2D source; //texunit:0
-/* clang-format on */
-
-uniform vec2 eye_center;
-uniform float k1;
-uniform float k2;
-uniform float upscale;
-uniform float aspect_ratio;
-
-varying vec2 uv_interp;
-
-void main() {
- vec2 coords = uv_interp;
- vec2 offset = coords - eye_center;
-
- // take aspect ratio into account
- offset.y /= aspect_ratio;
-
- // distort
- vec2 offset_sq = offset * offset;
- float radius_sq = offset_sq.x + offset_sq.y;
- float radius_s4 = radius_sq * radius_sq;
- float distortion_scale = 1.0 + (k1 * radius_sq) + (k2 * radius_s4);
- offset *= distortion_scale;
-
- // reapply aspect ratio
- offset.y *= aspect_ratio;
-
- // add our eye center back in
- coords = offset + eye_center;
- coords /= upscale;
-
- // and check our color
- if (coords.x < -1.0 || coords.y < -1.0 || coords.x > 1.0 || coords.y > 1.0) {
- gl_FragColor = vec4(0.0, 0.0, 0.0, 1.0);
- } else {
- coords = (coords + vec2(1.0)) / vec2(2.0);
- gl_FragColor = texture2D(source, coords);
- }
-}
diff --git a/drivers/gles2/shaders/particles.glsl b/drivers/gles2/shaders/particles.glsl
deleted file mode 100644
index d762dade2f..0000000000
--- a/drivers/gles2/shaders/particles.glsl
+++ /dev/null
@@ -1,261 +0,0 @@
-/* clang-format off */
-[vertex]
-
-layout(location = 0) in highp vec4 color;
-/* clang-format on */
-layout(location = 1) in highp vec4 velocity_active;
-layout(location = 2) in highp vec4 custom;
-layout(location = 3) in highp vec4 xform_1;
-layout(location = 4) in highp vec4 xform_2;
-layout(location = 5) in highp vec4 xform_3;
-
-struct Attractor {
- vec3 pos;
- vec3 dir;
- float radius;
- float eat_radius;
- float strength;
- float attenuation;
-};
-
-#define MAX_ATTRACTORS 64
-
-uniform bool emitting;
-uniform float system_phase;
-uniform float prev_system_phase;
-uniform int total_particles;
-uniform float explosiveness;
-uniform float randomness;
-uniform float time;
-uniform float delta;
-
-uniform int attractor_count;
-uniform Attractor attractors[MAX_ATTRACTORS];
-uniform bool clear;
-uniform uint cycle;
-uniform float lifetime;
-uniform mat4 emission_transform;
-uniform uint random_seed;
-
-out highp vec4 out_color; //tfb:
-out highp vec4 out_velocity_active; //tfb:
-out highp vec4 out_custom; //tfb:
-out highp vec4 out_xform_1; //tfb:
-out highp vec4 out_xform_2; //tfb:
-out highp vec4 out_xform_3; //tfb:
-
-#if defined(USE_MATERIAL)
-
-/* clang-format off */
-layout(std140) uniform UniformData { //ubo:0
-
-MATERIAL_UNIFORMS
-
-};
-/* clang-format on */
-
-#endif
-
-/* clang-format off */
-
-VERTEX_SHADER_GLOBALS
-
-/* clang-format on */
-
-uint hash(uint x) {
- x = ((x >> uint(16)) ^ x) * uint(0x45d9f3b);
- x = ((x >> uint(16)) ^ x) * uint(0x45d9f3b);
- x = (x >> uint(16)) ^ x;
- return x;
-}
-
-void main() {
-#ifdef PARTICLES_COPY
-
- out_color = color;
- out_velocity_active = velocity_active;
- out_custom = custom;
- out_xform_1 = xform_1;
- out_xform_2 = xform_2;
- out_xform_3 = xform_3;
-
-#else
-
- bool apply_forces = true;
- bool apply_velocity = true;
- float local_delta = delta;
-
- float mass = 1.0;
-
- float restart_phase = float(gl_VertexID) / float(total_particles);
-
- if (randomness > 0.0) {
- uint seed = cycle;
- if (restart_phase >= system_phase) {
- seed -= uint(1);
- }
- seed *= uint(total_particles);
- seed += uint(gl_VertexID);
- float random = float(hash(seed) % uint(65536)) / 65536.0;
- restart_phase += randomness * random * 1.0 / float(total_particles);
- }
-
- restart_phase *= (1.0 - explosiveness);
- bool restart = false;
- bool shader_active = velocity_active.a > 0.5;
-
- if (system_phase > prev_system_phase) {
- // restart_phase >= prev_system_phase is used so particles emit in the first frame they are processed
-
- if (restart_phase >= prev_system_phase && restart_phase < system_phase) {
- restart = true;
-#ifdef USE_FRACTIONAL_DELTA
- local_delta = (system_phase - restart_phase) * lifetime;
-#endif
- }
-
- } else {
- if (restart_phase >= prev_system_phase) {
- restart = true;
-#ifdef USE_FRACTIONAL_DELTA
- local_delta = (1.0 - restart_phase + system_phase) * lifetime;
-#endif
- } else if (restart_phase < system_phase) {
- restart = true;
-#ifdef USE_FRACTIONAL_DELTA
- local_delta = (system_phase - restart_phase) * lifetime;
-#endif
- }
- }
-
- uint current_cycle = cycle;
-
- if (system_phase < restart_phase) {
- current_cycle -= uint(1);
- }
-
- uint particle_number = current_cycle * uint(total_particles) + uint(gl_VertexID);
- int index = int(gl_VertexID);
-
- if (restart) {
- shader_active = emitting;
- }
-
- mat4 xform;
-
-#if defined(ENABLE_KEEP_DATA)
- if (clear) {
-#else
- if (clear || restart) {
-#endif
- out_color = vec4(1.0);
- out_velocity_active = vec4(0.0);
- out_custom = vec4(0.0);
- if (!restart)
- shader_active = false;
-
- xform = mat4(
- vec4(1.0, 0.0, 0.0, 0.0),
- vec4(0.0, 1.0, 0.0, 0.0),
- vec4(0.0, 0.0, 1.0, 0.0),
- vec4(0.0, 0.0, 0.0, 1.0));
- } else {
- out_color = color;
- out_velocity_active = velocity_active;
- out_custom = custom;
- xform = transpose(mat4(xform_1, xform_2, xform_3, vec4(vec3(0.0), 1.0)));
- }
-
- if (shader_active) {
- //execute shader
-
- {
- /* clang-format off */
-
-VERTEX_SHADER_CODE
-
- /* clang-format on */
- }
-
-#if !defined(DISABLE_FORCE)
-
- if (false) {
- vec3 force = vec3(0.0);
- for (int i = 0; i < attractor_count; i++) {
- vec3 rel_vec = xform[3].xyz - attractors[i].pos;
- float dist = length(rel_vec);
- if (attractors[i].radius < dist)
- continue;
- if (attractors[i].eat_radius > 0.0 && attractors[i].eat_radius > dist) {
- out_velocity_active.a = 0.0;
- }
-
- rel_vec = normalize(rel_vec);
-
- float attenuation = pow(dist / attractors[i].radius, attractors[i].attenuation);
-
- if (attractors[i].dir == vec3(0.0)) {
- //towards center
- force += attractors[i].strength * rel_vec * attenuation * mass;
- } else {
- force += attractors[i].strength * attractors[i].dir * attenuation * mass;
- }
- }
-
- out_velocity_active.xyz += force * local_delta;
- }
-#endif
-
-#if !defined(DISABLE_VELOCITY)
-
- if (true) {
- xform[3].xyz += out_velocity_active.xyz * local_delta;
- }
-#endif
- } else {
- xform = mat4(0.0);
- }
-
- xform = transpose(xform);
-
- out_velocity_active.a = mix(0.0, 1.0, shader_active);
-
- out_xform_1 = xform[0];
- out_xform_2 = xform[1];
- out_xform_3 = xform[2];
-
-#endif //PARTICLES_COPY
-}
-
-/* clang-format off */
-[fragment]
-
-//any code here is never executed, stuff is filled just so it works
-
-#if defined(USE_MATERIAL)
-
-layout(std140) uniform UniformData {
-
-MATERIAL_UNIFORMS
-
-};
-
-#endif
-
-FRAGMENT_SHADER_GLOBALS
-
-void main() {
- {
-
-LIGHT_SHADER_CODE
-
- }
-
- {
-
-FRAGMENT_SHADER_CODE
-
- }
-}
-
-/* clang-format on */
diff --git a/drivers/gles2/shaders/resolve.glsl b/drivers/gles2/shaders/resolve.glsl
deleted file mode 100644
index 071cb37a99..0000000000
--- a/drivers/gles2/shaders/resolve.glsl
+++ /dev/null
@@ -1,42 +0,0 @@
-/* clang-format off */
-[vertex]
-
-layout(location = 0) in highp vec4 vertex_attrib;
-/* clang-format on */
-layout(location = 4) in vec2 uv_in;
-
-out vec2 uv_interp;
-
-void main() {
- uv_interp = uv_in;
- gl_Position = vertex_attrib;
-}
-
-/* clang-format off */
-[fragment]
-
-#if !defined(GLES_OVER_GL)
-precision mediump float;
-#endif
-
-in vec2 uv_interp;
-/* clang-format on */
-uniform sampler2D source_specular; //texunit:0
-uniform sampler2D source_ssr; //texunit:1
-
-uniform vec2 pixel_size;
-
-in vec2 uv2_interp;
-
-layout(location = 0) out vec4 frag_color;
-
-void main() {
- vec4 specular = texture(source_specular, uv_interp);
-
-#ifdef USE_SSR
- vec4 ssr = textureLod(source_ssr, uv_interp, 0.0);
- specular.rgb = mix(specular.rgb, ssr.rgb * specular.a, ssr.a);
-#endif
-
- frag_color = vec4(specular.rgb, 1.0);
-}
diff --git a/drivers/gles2/shaders/scene.glsl b/drivers/gles2/shaders/scene.glsl
deleted file mode 100644
index 0311dc4742..0000000000
--- a/drivers/gles2/shaders/scene.glsl
+++ /dev/null
@@ -1,2192 +0,0 @@
-/* clang-format off */
-[vertex]
-
-#ifdef USE_GLES_OVER_GL
-#define lowp
-#define mediump
-#define highp
-#else
-precision highp float;
-precision highp int;
-#endif
-
-#ifndef USE_GLES_OVER_GL
-#extension GL_OES_texture_3D : enable
-#else
-#extension GL_EXT_texture_array : enable
-#endif
-
-/* clang-format on */
-#include "stdlib.glsl"
-/* clang-format off */
-
-#define SHADER_IS_SRGB true
-
-#define M_PI 3.14159265359
-
-
-//
-// attributes
-//
-
-attribute highp vec4 vertex_attrib; // attrib:0
-/* clang-format on */
-attribute vec3 normal_attrib; // attrib:1
-
-#if defined(ENABLE_TANGENT_INTERP) || defined(ENABLE_NORMALMAP)
-attribute vec4 tangent_attrib; // attrib:2
-#endif
-
-#if defined(ENABLE_COLOR_INTERP)
-attribute vec4 color_attrib; // attrib:3
-#endif
-
-#if defined(ENABLE_UV_INTERP)
-attribute vec2 uv_attrib; // attrib:4
-#endif
-
-#if defined(ENABLE_UV2_INTERP) || defined(USE_LIGHTMAP)
-attribute vec2 uv2_attrib; // attrib:5
-#endif
-
-#ifdef USE_SKELETON
-
-#ifdef USE_SKELETON_SOFTWARE
-
-attribute highp vec4 bone_transform_row_0; // attrib:13
-attribute highp vec4 bone_transform_row_1; // attrib:14
-attribute highp vec4 bone_transform_row_2; // attrib:15
-
-#else
-
-attribute vec4 bone_ids; // attrib:6
-attribute highp vec4 bone_weights; // attrib:7
-
-uniform highp sampler2D bone_transforms; // texunit:-1
-uniform ivec2 skeleton_texture_size;
-
-#endif
-
-#endif
-
-#ifdef USE_INSTANCING
-
-attribute highp vec4 instance_xform_row_0; // attrib:8
-attribute highp vec4 instance_xform_row_1; // attrib:9
-attribute highp vec4 instance_xform_row_2; // attrib:10
-
-attribute highp vec4 instance_color; // attrib:11
-attribute highp vec4 instance_custom_data; // attrib:12
-
-#endif
-
-//
-// uniforms
-//
-
-uniform highp mat4 camera_matrix;
-uniform highp mat4 camera_inverse_matrix;
-uniform highp mat4 projection_matrix;
-uniform highp mat4 projection_inverse_matrix;
-
-uniform highp mat4 world_transform;
-
-uniform highp float time;
-
-uniform highp vec2 viewport_size;
-
-#ifdef RENDER_DEPTH
-uniform float light_bias;
-uniform float light_normal_bias;
-#endif
-
-//
-// varyings
-//
-
-#if defined(RENDER_DEPTH) && defined(USE_RGBA_SHADOWS)
-varying highp vec4 position_interp;
-#endif
-
-varying highp vec3 vertex_interp;
-varying vec3 normal_interp;
-
-#if defined(ENABLE_TANGENT_INTERP) || defined(ENABLE_NORMALMAP)
-varying vec3 tangent_interp;
-varying vec3 binormal_interp;
-#endif
-
-#if defined(ENABLE_COLOR_INTERP)
-varying vec4 color_interp;
-#endif
-
-#if defined(ENABLE_UV_INTERP)
-varying vec2 uv_interp;
-#endif
-
-#if defined(ENABLE_UV2_INTERP) || defined(USE_LIGHTMAP)
-varying vec2 uv2_interp;
-#endif
-
-/* clang-format off */
-
-VERTEX_SHADER_GLOBALS
-
-/* clang-format on */
-
-#ifdef RENDER_DEPTH_DUAL_PARABOLOID
-
-varying highp float dp_clip;
-uniform highp float shadow_dual_paraboloid_render_zfar;
-uniform highp float shadow_dual_paraboloid_render_side;
-
-#endif
-
-#if defined(USE_SHADOW) && defined(USE_LIGHTING)
-
-uniform highp mat4 light_shadow_matrix;
-varying highp vec4 shadow_coord;
-
-#if defined(LIGHT_USE_PSSM2) || defined(LIGHT_USE_PSSM4)
-uniform highp mat4 light_shadow_matrix2;
-varying highp vec4 shadow_coord2;
-#endif
-
-#if defined(LIGHT_USE_PSSM4)
-
-uniform highp mat4 light_shadow_matrix3;
-uniform highp mat4 light_shadow_matrix4;
-varying highp vec4 shadow_coord3;
-varying highp vec4 shadow_coord4;
-
-#endif
-
-#endif
-
-#if defined(USE_VERTEX_LIGHTING) && defined(USE_LIGHTING)
-
-varying highp vec3 diffuse_interp;
-varying highp vec3 specular_interp;
-
-// general for all lights
-uniform highp vec4 light_color;
-uniform highp vec4 shadow_color;
-uniform highp float light_specular;
-
-// directional
-uniform highp vec3 light_direction;
-
-// omni
-uniform highp vec3 light_position;
-
-uniform highp float light_range;
-uniform highp float light_attenuation;
-
-// spot
-uniform highp float light_spot_attenuation;
-uniform highp float light_spot_range;
-uniform highp float light_spot_angle;
-
-void light_compute(
- vec3 N,
- vec3 L,
- vec3 V,
- vec3 light_color,
- vec3 attenuation,
- float roughness) {
-//this makes lights behave closer to linear, but then addition of lights looks bad
-//better left disabled
-
-//#define SRGB_APPROX(m_var) m_var = pow(m_var,0.4545454545);
-/*
-#define SRGB_APPROX(m_var) {\
- float S1 = sqrt(m_var);\
- float S2 = sqrt(S1);\
- float S3 = sqrt(S2);\
- m_var = 0.662002687 * S1 + 0.684122060 * S2 - 0.323583601 * S3 - 0.0225411470 * m_var;\
- }
-*/
-#define SRGB_APPROX(m_var)
-
- float NdotL = dot(N, L);
- float cNdotL = max(NdotL, 0.0); // clamped NdotL
- float NdotV = dot(N, V);
- float cNdotV = max(NdotV, 0.0);
-
-#if defined(DIFFUSE_OREN_NAYAR)
- vec3 diffuse_brdf_NL;
-#else
- float diffuse_brdf_NL; // BRDF times N.L for calculating diffuse radiance
-#endif
-
-#if defined(DIFFUSE_LAMBERT_WRAP)
- // energy conserving lambert wrap shader
- diffuse_brdf_NL = max(0.0, (NdotL + roughness) / ((1.0 + roughness) * (1.0 + roughness)));
-
-#elif defined(DIFFUSE_OREN_NAYAR)
-
- {
- // see http://mimosa-pudica.net/improved-oren-nayar.html
- float LdotV = dot(L, V);
-
- float s = LdotV - NdotL * NdotV;
- float t = mix(1.0, max(NdotL, NdotV), step(0.0, s));
-
- float sigma2 = roughness * roughness; // TODO: this needs checking
- vec3 A = 1.0 + sigma2 * (-0.5 / (sigma2 + 0.33) + 0.17 * diffuse_color / (sigma2 + 0.13));
- float B = 0.45 * sigma2 / (sigma2 + 0.09);
-
- diffuse_brdf_NL = cNdotL * (A + vec3(B) * s / t) * (1.0 / M_PI);
- }
-#else
- // lambert by default for everything else
- diffuse_brdf_NL = cNdotL * (1.0 / M_PI);
-#endif
-
- SRGB_APPROX(diffuse_brdf_NL)
-
- diffuse_interp += light_color * diffuse_brdf_NL * attenuation;
-
- if (roughness > 0.0) {
- // D
- float specular_brdf_NL = 0.0;
-
-#if !defined(SPECULAR_DISABLED)
- //normalized blinn always unless disabled
- vec3 H = normalize(V + L);
- float cNdotH = max(dot(N, H), 0.0);
- float shininess = exp2(15.0 * (1.0 - roughness) + 1.0) * 0.25;
- float blinn = pow(cNdotH, shininess) * cNdotL;
- blinn *= (shininess + 8.0) * (1.0 / (8.0 * M_PI));
- specular_brdf_NL = blinn;
-#endif
-
- SRGB_APPROX(specular_brdf_NL)
- specular_interp += specular_brdf_NL * light_color * attenuation * (1.0 / M_PI);
- }
-}
-
-#endif
-
-#ifdef USE_VERTEX_LIGHTING
-
-#ifdef USE_REFLECTION_PROBE1
-
-uniform highp mat4 refprobe1_local_matrix;
-varying mediump vec4 refprobe1_reflection_normal_blend;
-uniform highp vec3 refprobe1_box_extents;
-
-#ifndef USE_LIGHTMAP
-varying mediump vec3 refprobe1_ambient_normal;
-#endif
-
-#endif //reflection probe1
-
-#ifdef USE_REFLECTION_PROBE2
-
-uniform highp mat4 refprobe2_local_matrix;
-varying mediump vec4 refprobe2_reflection_normal_blend;
-uniform highp vec3 refprobe2_box_extents;
-
-#ifndef USE_LIGHTMAP
-varying mediump vec3 refprobe2_ambient_normal;
-#endif
-
-#endif //reflection probe2
-
-#endif //vertex lighting for refprobes
-
-#if defined(FOG_DEPTH_ENABLED) || defined(FOG_HEIGHT_ENABLED)
-
-varying vec4 fog_interp;
-
-uniform mediump vec4 fog_color_base;
-#ifdef LIGHT_MODE_DIRECTIONAL
-uniform mediump vec4 fog_sun_color_amount;
-#endif
-
-uniform bool fog_transmit_enabled;
-uniform mediump float fog_transmit_curve;
-
-#ifdef FOG_DEPTH_ENABLED
-uniform highp float fog_depth_begin;
-uniform mediump float fog_depth_curve;
-uniform mediump float fog_max_distance;
-#endif
-
-#ifdef FOG_HEIGHT_ENABLED
-uniform highp float fog_height_min;
-uniform highp float fog_height_max;
-uniform mediump float fog_height_curve;
-#endif
-
-#endif //fog
-
-void main() {
- highp vec4 vertex = vertex_attrib;
-
- mat4 world_matrix = world_transform;
-
-#ifdef USE_INSTANCING
- {
- highp mat4 m = mat4(
- instance_xform_row_0,
- instance_xform_row_1,
- instance_xform_row_2,
- vec4(0.0, 0.0, 0.0, 1.0));
- world_matrix = world_matrix * transpose(m);
- }
-
-#endif
-
- vec3 normal = normal_attrib;
-
-#if defined(ENABLE_TANGENT_INTERP) || defined(ENABLE_NORMALMAP)
- vec3 tangent = tangent_attrib.xyz;
- float binormalf = tangent_attrib.a;
- vec3 binormal = normalize(cross(normal, tangent) * binormalf);
-#endif
-
-#if defined(ENABLE_COLOR_INTERP)
- color_interp = color_attrib;
-#ifdef USE_INSTANCING
- color_interp *= instance_color;
-#endif
-#endif
-
-#if defined(ENABLE_UV_INTERP)
- uv_interp = uv_attrib;
-#endif
-
-#if defined(ENABLE_UV2_INTERP) || defined(USE_LIGHTMAP)
- uv2_interp = uv2_attrib;
-#endif
-
-#if defined(OVERRIDE_POSITION)
- highp vec4 position;
-#endif
-
-#if !defined(SKIP_TRANSFORM_USED) && defined(VERTEX_WORLD_COORDS_USED)
- vertex = world_matrix * vertex;
- normal = normalize((world_matrix * vec4(normal, 0.0)).xyz);
-#if defined(ENABLE_TANGENT_INTERP) || defined(ENABLE_NORMALMAP)
-
- tangent = normalize((world_matrix * vec4(tangent, 0.0)).xyz);
- binormal = normalize((world_matrix * vec4(binormal, 0.0)).xyz);
-#endif
-#endif
-
-#ifdef USE_SKELETON
-
- highp mat4 bone_transform = mat4(0.0);
-
-#ifdef USE_SKELETON_SOFTWARE
- // passing the transform as attributes
-
- bone_transform[0] = vec4(bone_transform_row_0.x, bone_transform_row_1.x, bone_transform_row_2.x, 0.0);
- bone_transform[1] = vec4(bone_transform_row_0.y, bone_transform_row_1.y, bone_transform_row_2.y, 0.0);
- bone_transform[2] = vec4(bone_transform_row_0.z, bone_transform_row_1.z, bone_transform_row_2.z, 0.0);
- bone_transform[3] = vec4(bone_transform_row_0.w, bone_transform_row_1.w, bone_transform_row_2.w, 1.0);
-
-#else
- // look up transform from the "pose texture"
- {
- for (int i = 0; i < 4; i++) {
- ivec2 tex_ofs = ivec2(int(bone_ids[i]) * 3, 0);
-
- highp mat4 b = mat4(
- texel2DFetch(bone_transforms, skeleton_texture_size, tex_ofs + ivec2(0, 0)),
- texel2DFetch(bone_transforms, skeleton_texture_size, tex_ofs + ivec2(1, 0)),
- texel2DFetch(bone_transforms, skeleton_texture_size, tex_ofs + ivec2(2, 0)),
- vec4(0.0, 0.0, 0.0, 1.0));
-
- bone_transform += transpose(b) * bone_weights[i];
- }
- }
-
-#endif
-
- world_matrix = world_matrix * bone_transform;
-
-#endif
-
-#ifdef USE_INSTANCING
- vec4 instance_custom = instance_custom_data;
-#else
- vec4 instance_custom = vec4(0.0);
-
-#endif
-
- mat4 local_projection_matrix = projection_matrix;
-
- mat4 modelview = camera_inverse_matrix * world_matrix;
- float roughness = 1.0;
-
-#define projection_matrix local_projection_matrix
-#define world_transform world_matrix
-
- float point_size = 1.0;
-
- {
- /* clang-format off */
-
-VERTEX_SHADER_CODE
-
- /* clang-format on */
- }
-
- gl_PointSize = point_size;
- vec4 outvec = vertex;
-
- // use local coordinates
-#if !defined(SKIP_TRANSFORM_USED) && !defined(VERTEX_WORLD_COORDS_USED)
- vertex = modelview * vertex;
- normal = normalize((modelview * vec4(normal, 0.0)).xyz);
-
-#if defined(ENABLE_TANGENT_INTERP) || defined(ENABLE_NORMALMAP)
- tangent = normalize((modelview * vec4(tangent, 0.0)).xyz);
- binormal = normalize((modelview * vec4(binormal, 0.0)).xyz);
-#endif
-#endif
-
-#if !defined(SKIP_TRANSFORM_USED) && defined(VERTEX_WORLD_COORDS_USED)
- vertex = camera_inverse_matrix * vertex;
- normal = normalize((camera_inverse_matrix * vec4(normal, 0.0)).xyz);
-#if defined(ENABLE_TANGENT_INTERP) || defined(ENABLE_NORMALMAP)
- tangent = normalize((camera_inverse_matrix * vec4(tangent, 0.0)).xyz);
- binormal = normalize((camera_inverse_matrix * vec4(binormal, 0.0)).xyz);
-#endif
-#endif
-
- vertex_interp = vertex.xyz;
- normal_interp = normal;
-
-#if defined(ENABLE_TANGENT_INTERP) || defined(ENABLE_NORMALMAP)
- tangent_interp = tangent;
- binormal_interp = binormal;
-#endif
-
-#ifdef RENDER_DEPTH
-
-#ifdef RENDER_DEPTH_DUAL_PARABOLOID
-
- vertex_interp.z *= shadow_dual_paraboloid_render_side;
- normal_interp.z *= shadow_dual_paraboloid_render_side;
-
- dp_clip = vertex_interp.z; //this attempts to avoid noise caused by objects sent to the other parabolloid side due to bias
-
- //for dual paraboloid shadow mapping, this is the fastest but least correct way, as it curves straight edges
-
- highp vec3 vtx = vertex_interp + normalize(vertex_interp) * light_bias;
- highp float distance = length(vtx);
- vtx = normalize(vtx);
- vtx.xy /= 1.0 - vtx.z;
- vtx.z = (distance / shadow_dual_paraboloid_render_zfar);
- vtx.z = vtx.z * 2.0 - 1.0;
-
- vertex_interp = vtx;
-
-#else
- float z_ofs = light_bias;
- z_ofs += (1.0 - abs(normal_interp.z)) * light_normal_bias;
-
- vertex_interp.z -= z_ofs;
-#endif //dual parabolloid
-
-#endif //depth
-
-//vertex lighting
-#if defined(USE_VERTEX_LIGHTING) && defined(USE_LIGHTING)
- //vertex shaded version of lighting (more limited)
- vec3 L;
- vec3 light_att;
-
-#ifdef LIGHT_MODE_OMNI
- vec3 light_vec = light_position - vertex_interp;
- float light_length = length(light_vec);
-
- float normalized_distance = light_length / light_range;
-
- if (normalized_distance < 1.0) {
- float omni_attenuation = pow(1.0 - normalized_distance, light_attenuation);
-
- vec3 attenuation = vec3(omni_attenuation);
- light_att = vec3(omni_attenuation);
- } else {
- light_att = vec3(0.0);
- }
-
- L = normalize(light_vec);
-
-#endif
-
-#ifdef LIGHT_MODE_SPOT
-
- vec3 light_rel_vec = light_position - vertex_interp;
- float light_length = length(light_rel_vec);
- float normalized_distance = light_length / light_range;
-
- if (normalized_distance < 1.0) {
- float spot_attenuation = pow(1.0 - normalized_distance, light_attenuation);
- vec3 spot_dir = light_direction;
-
- float spot_cutoff = light_spot_angle;
-
- float angle = dot(-normalize(light_rel_vec), spot_dir);
-
- if (angle > spot_cutoff) {
- float scos = max(angle, spot_cutoff);
- float spot_rim = max(0.0001, (1.0 - scos) / (1.0 - spot_cutoff));
-
- spot_attenuation *= 1.0 - pow(spot_rim, light_spot_attenuation);
-
- light_att = vec3(spot_attenuation);
- } else {
- light_att = vec3(0.0);
- }
- } else {
- light_att = vec3(0.0);
- }
-
- L = normalize(light_rel_vec);
-
-#endif
-
-#ifdef LIGHT_MODE_DIRECTIONAL
- vec3 light_vec = -light_direction;
- light_att = vec3(1.0); //no base attenuation
- L = normalize(light_vec);
-#endif
-
- diffuse_interp = vec3(0.0);
- specular_interp = vec3(0.0);
- light_compute(normal_interp, L, -normalize(vertex_interp), light_color.rgb, light_att, roughness);
-
-#endif
-
-//shadows (for both vertex and fragment)
-#if defined(USE_SHADOW) && defined(USE_LIGHTING)
-
- vec4 vi4 = vec4(vertex_interp, 1.0);
- shadow_coord = light_shadow_matrix * vi4;
-
-#if defined(LIGHT_USE_PSSM2) || defined(LIGHT_USE_PSSM4)
- shadow_coord2 = light_shadow_matrix2 * vi4;
-#endif
-
-#if defined(LIGHT_USE_PSSM4)
- shadow_coord3 = light_shadow_matrix3 * vi4;
- shadow_coord4 = light_shadow_matrix4 * vi4;
-
-#endif
-
-#endif //use shadow and use lighting
-
-#ifdef USE_VERTEX_LIGHTING
-
-#ifdef USE_REFLECTION_PROBE1
- {
- vec3 ref_normal = normalize(reflect(vertex_interp, normal_interp));
- vec3 local_pos = (refprobe1_local_matrix * vec4(vertex_interp, 1.0)).xyz;
- vec3 inner_pos = abs(local_pos / refprobe1_box_extents);
- float blend = max(inner_pos.x, max(inner_pos.y, inner_pos.z));
-
- {
- vec3 local_ref_vec = (refprobe1_local_matrix * vec4(ref_normal, 0.0)).xyz;
- refprobe1_reflection_normal_blend.xyz = local_ref_vec;
- refprobe1_reflection_normal_blend.a = blend;
- }
-#ifndef USE_LIGHTMAP
-
- refprobe1_ambient_normal = (refprobe1_local_matrix * vec4(normal_interp, 0.0)).xyz;
-#endif
- }
-
-#endif //USE_REFLECTION_PROBE1
-
-#ifdef USE_REFLECTION_PROBE2
- {
- vec3 ref_normal = normalize(reflect(vertex_interp, normal_interp));
- vec3 local_pos = (refprobe2_local_matrix * vec4(vertex_interp, 1.0)).xyz;
- vec3 inner_pos = abs(local_pos / refprobe2_box_extents);
- float blend = max(inner_pos.x, max(inner_pos.y, inner_pos.z));
-
- {
- vec3 local_ref_vec = (refprobe2_local_matrix * vec4(ref_normal, 0.0)).xyz;
- refprobe2_reflection_normal_blend.xyz = local_ref_vec;
- refprobe2_reflection_normal_blend.a = blend;
- }
-#ifndef USE_LIGHTMAP
-
- refprobe2_ambient_normal = (refprobe2_local_matrix * vec4(normal_interp, 0.0)).xyz;
-#endif
- }
-
-#endif //USE_REFLECTION_PROBE2
-
-#if defined(FOG_DEPTH_ENABLED) || defined(FOG_HEIGHT_ENABLED)
-
- float fog_amount = 0.0;
-
-#ifdef LIGHT_MODE_DIRECTIONAL
-
- vec3 fog_color = mix(fog_color_base.rgb, fog_sun_color_amount.rgb, fog_sun_color_amount.a * pow(max(dot(normalize(vertex_interp), light_direction), 0.0), 8.0));
-#else
- vec3 fog_color = fog_color_base.rgb;
-#endif
-
-#ifdef FOG_DEPTH_ENABLED
-
- {
- float fog_z = smoothstep(fog_depth_begin, fog_max_distance, length(vertex));
-
- fog_amount = pow(fog_z, fog_depth_curve) * fog_color_base.a;
- }
-#endif
-
-#ifdef FOG_HEIGHT_ENABLED
- {
- float y = (camera_matrix * vec4(vertex_interp, 1.0)).y;
- fog_amount = max(fog_amount, pow(smoothstep(fog_height_min, fog_height_max, y), fog_height_curve));
- }
-#endif
- fog_interp = vec4(fog_color, fog_amount);
-
-#endif //fog
-
-#endif //use vertex lighting
-
-#if defined(OVERRIDE_POSITION)
- gl_Position = position;
-#else
- gl_Position = projection_matrix * vec4(vertex_interp, 1.0);
-#endif
-
-#if defined(RENDER_DEPTH) && defined(USE_RGBA_SHADOWS)
- position_interp = gl_Position;
-#endif
-}
-
-/* clang-format off */
-[fragment]
-
-#ifndef USE_GLES_OVER_GL
-#extension GL_OES_texture_3D : enable
-#else
-#extension GL_EXT_texture_array : enable
-#endif
-
-// texture2DLodEXT and textureCubeLodEXT are fragment shader specific.
-// Do not copy these defines in the vertex section.
-#ifndef USE_GLES_OVER_GL
-#ifdef GL_EXT_shader_texture_lod
-#extension GL_EXT_shader_texture_lod : enable
-#define texture2DLod(img, coord, lod) texture2DLodEXT(img, coord, lod)
-#define textureCubeLod(img, coord, lod) textureCubeLodEXT(img, coord, lod)
-#endif
-#endif // !USE_GLES_OVER_GL
-
-#ifdef GL_ARB_shader_texture_lod
-#extension GL_ARB_shader_texture_lod : enable
-#endif
-
-#if !defined(GL_EXT_shader_texture_lod) && !defined(GL_ARB_shader_texture_lod)
-#define texture2DLod(img, coord, lod) texture2D(img, coord, lod)
-#define textureCubeLod(img, coord, lod) textureCube(img, coord, lod)
-#endif
-
-#ifdef USE_GLES_OVER_GL
-#define lowp
-#define mediump
-#define highp
-#else
-#if defined(USE_HIGHP_PRECISION)
-precision highp float;
-precision highp int;
-#else
-precision mediump float;
-precision mediump int;
-#endif
-#endif
-
-#include "stdlib.glsl"
-
-#define M_PI 3.14159265359
-#define SHADER_IS_SRGB true
-
-//
-// uniforms
-//
-
-uniform highp mat4 camera_matrix;
-/* clang-format on */
-uniform highp mat4 camera_inverse_matrix;
-uniform highp mat4 projection_matrix;
-uniform highp mat4 projection_inverse_matrix;
-
-uniform highp mat4 world_transform;
-
-uniform highp float time;
-
-uniform highp vec2 viewport_size;
-
-#if defined(SCREEN_UV_USED)
-uniform vec2 screen_pixel_size;
-#endif
-
-#if defined(SCREEN_TEXTURE_USED)
-uniform highp sampler2D screen_texture; //texunit:-4
-#endif
-#if defined(DEPTH_TEXTURE_USED)
-uniform highp sampler2D depth_texture; //texunit:-4
-#endif
-
-#ifdef USE_REFLECTION_PROBE1
-
-#ifdef USE_VERTEX_LIGHTING
-
-varying mediump vec4 refprobe1_reflection_normal_blend;
-#ifndef USE_LIGHTMAP
-varying mediump vec3 refprobe1_ambient_normal;
-#endif
-
-#else
-
-uniform bool refprobe1_use_box_project;
-uniform highp vec3 refprobe1_box_extents;
-uniform vec3 refprobe1_box_offset;
-uniform highp mat4 refprobe1_local_matrix;
-
-#endif //use vertex lighting
-
-uniform bool refprobe1_exterior;
-
-uniform highp samplerCube reflection_probe1; //texunit:-5
-
-uniform float refprobe1_intensity;
-uniform vec4 refprobe1_ambient;
-
-#endif //USE_REFLECTION_PROBE1
-
-#ifdef USE_REFLECTION_PROBE2
-
-#ifdef USE_VERTEX_LIGHTING
-
-varying mediump vec4 refprobe2_reflection_normal_blend;
-#ifndef USE_LIGHTMAP
-varying mediump vec3 refprobe2_ambient_normal;
-#endif
-
-#else
-
-uniform bool refprobe2_use_box_project;
-uniform highp vec3 refprobe2_box_extents;
-uniform vec3 refprobe2_box_offset;
-uniform highp mat4 refprobe2_local_matrix;
-
-#endif //use vertex lighting
-
-uniform bool refprobe2_exterior;
-
-uniform highp samplerCube reflection_probe2; //texunit:-6
-
-uniform float refprobe2_intensity;
-uniform vec4 refprobe2_ambient;
-
-#endif //USE_REFLECTION_PROBE2
-
-#define RADIANCE_MAX_LOD 6.0
-
-#if defined(USE_REFLECTION_PROBE1) || defined(USE_REFLECTION_PROBE2)
-
-void reflection_process(samplerCube reflection_map,
-#ifdef USE_VERTEX_LIGHTING
- vec3 ref_normal,
-#ifndef USE_LIGHTMAP
- vec3 amb_normal,
-#endif
- float ref_blend,
-
-#else //no vertex lighting
- vec3 normal, vec3 vertex,
- mat4 local_matrix,
- bool use_box_project, vec3 box_extents, vec3 box_offset,
-#endif //vertex lighting
- bool exterior, float intensity, vec4 ref_ambient, float roughness, vec3 ambient, vec3 skybox, inout highp vec4 reflection_accum, inout highp vec4 ambient_accum) {
-
- vec4 reflection;
-
-#ifdef USE_VERTEX_LIGHTING
-
- reflection.rgb = textureCubeLod(reflection_map, ref_normal, roughness * RADIANCE_MAX_LOD).rgb;
-
- float blend = ref_blend; //crappier blend formula for vertex
- blend *= blend;
- blend = max(0.0, 1.0 - blend);
-
-#else //fragment lighting
-
- vec3 local_pos = (local_matrix * vec4(vertex, 1.0)).xyz;
-
- if (any(greaterThan(abs(local_pos), box_extents))) { //out of the reflection box
- return;
- }
-
- vec3 inner_pos = abs(local_pos / box_extents);
- float blend = max(inner_pos.x, max(inner_pos.y, inner_pos.z));
- blend = mix(length(inner_pos), blend, blend);
- blend *= blend;
- blend = max(0.0, 1.0 - blend);
-
- //reflect and make local
- vec3 ref_normal = normalize(reflect(vertex, normal));
- ref_normal = (local_matrix * vec4(ref_normal, 0.0)).xyz;
-
- if (use_box_project) { //box project
-
- vec3 nrdir = normalize(ref_normal);
- vec3 rbmax = (box_extents - local_pos) / nrdir;
- vec3 rbmin = (-box_extents - local_pos) / nrdir;
-
- vec3 rbminmax = mix(rbmin, rbmax, vec3(greaterThan(nrdir, vec3(0.0, 0.0, 0.0))));
-
- float fa = min(min(rbminmax.x, rbminmax.y), rbminmax.z);
- vec3 posonbox = local_pos + nrdir * fa;
- ref_normal = posonbox - box_offset.xyz;
- }
-
- reflection.rgb = textureCubeLod(reflection_map, ref_normal, roughness * RADIANCE_MAX_LOD).rgb;
-#endif
-
- if (exterior) {
- reflection.rgb = mix(skybox, reflection.rgb, blend);
- }
- reflection.rgb *= intensity;
- reflection.a = blend;
- reflection.rgb *= blend;
-
- reflection_accum += reflection;
-
-#ifndef USE_LIGHTMAP
-
- vec4 ambient_out;
-#ifndef USE_VERTEX_LIGHTING
-
- vec3 amb_normal = (local_matrix * vec4(normal, 0.0)).xyz;
-#endif
-
- ambient_out.rgb = textureCubeLod(reflection_map, amb_normal, RADIANCE_MAX_LOD).rgb;
- ambient_out.rgb = mix(ref_ambient.rgb, ambient_out.rgb, ref_ambient.a);
- if (exterior) {
- ambient_out.rgb = mix(ambient, ambient_out.rgb, blend);
- }
-
- ambient_out.a = blend;
- ambient_out.rgb *= blend;
- ambient_accum += ambient_out;
-
-#endif
-}
-
-#endif //use refprobe 1 or 2
-
-#ifdef USE_LIGHTMAP
-uniform mediump sampler2D lightmap; //texunit:-4
-uniform mediump float lightmap_energy;
-#endif
-
-#ifdef USE_LIGHTMAP_CAPTURE
-uniform mediump vec4[12] lightmap_captures;
-uniform bool lightmap_capture_sky;
-
-#endif
-
-#ifdef USE_RADIANCE_MAP
-
-uniform samplerCube radiance_map; // texunit:-2
-
-uniform mat4 radiance_inverse_xform;
-
-#endif
-
-uniform vec4 bg_color;
-uniform float bg_energy;
-
-uniform float ambient_sky_contribution;
-uniform vec4 ambient_color;
-uniform float ambient_energy;
-
-#ifdef USE_LIGHTING
-
-uniform highp vec4 shadow_color;
-
-#ifdef USE_VERTEX_LIGHTING
-
-//get from vertex
-varying highp vec3 diffuse_interp;
-varying highp vec3 specular_interp;
-
-uniform highp vec3 light_direction; //may be used by fog, so leave here
-
-#else
-//done in fragment
-// general for all lights
-uniform highp vec4 light_color;
-
-uniform highp float light_specular;
-
-// directional
-uniform highp vec3 light_direction;
-// omni
-uniform highp vec3 light_position;
-
-uniform highp float light_attenuation;
-
-// spot
-uniform highp float light_spot_attenuation;
-uniform highp float light_spot_range;
-uniform highp float light_spot_angle;
-#endif
-
-//this is needed outside above if because dual paraboloid wants it
-uniform highp float light_range;
-
-#ifdef USE_SHADOW
-
-uniform highp vec2 shadow_pixel_size;
-
-#if defined(LIGHT_MODE_OMNI) || defined(LIGHT_MODE_SPOT)
-uniform highp sampler2D light_shadow_atlas; //texunit:-3
-#endif
-
-#ifdef LIGHT_MODE_DIRECTIONAL
-uniform highp sampler2D light_directional_shadow; // texunit:-3
-uniform highp vec4 light_split_offsets;
-#endif
-
-varying highp vec4 shadow_coord;
-
-#if defined(LIGHT_USE_PSSM2) || defined(LIGHT_USE_PSSM4)
-varying highp vec4 shadow_coord2;
-#endif
-
-#if defined(LIGHT_USE_PSSM4)
-
-varying highp vec4 shadow_coord3;
-varying highp vec4 shadow_coord4;
-
-#endif
-
-uniform vec4 light_clamp;
-
-#endif // light shadow
-
-// directional shadow
-
-#endif
-
-//
-// varyings
-//
-
-#if defined(RENDER_DEPTH) && defined(USE_RGBA_SHADOWS)
-varying highp vec4 position_interp;
-#endif
-
-varying highp vec3 vertex_interp;
-varying vec3 normal_interp;
-
-#if defined(ENABLE_TANGENT_INTERP) || defined(ENABLE_NORMALMAP)
-varying vec3 tangent_interp;
-varying vec3 binormal_interp;
-#endif
-
-#if defined(ENABLE_COLOR_INTERP)
-varying vec4 color_interp;
-#endif
-
-#if defined(ENABLE_UV_INTERP)
-varying vec2 uv_interp;
-#endif
-
-#if defined(ENABLE_UV2_INTERP) || defined(USE_LIGHTMAP)
-varying vec2 uv2_interp;
-#endif
-
-varying vec3 view_interp;
-
-vec3 F0(float metallic, float specular, vec3 albedo) {
- float dielectric = 0.16 * specular * specular;
- // use albedo * metallic as colored specular reflectance at 0 angle for metallic materials;
- // see https://google.github.io/filament/Filament.md.html
- return mix(vec3(dielectric), albedo, vec3(metallic));
-}
-
-/* clang-format off */
-
-FRAGMENT_SHADER_GLOBALS
-
-/* clang-format on */
-
-#ifdef RENDER_DEPTH_DUAL_PARABOLOID
-
-varying highp float dp_clip;
-
-#endif
-
-#ifdef USE_LIGHTING
-
-// This returns the G_GGX function divided by 2 cos_theta_m, where in practice cos_theta_m is either N.L or N.V.
-// We're dividing this factor off because the overall term we'll end up looks like
-// (see, for example, the first unnumbered equation in B. Burley, "Physically Based Shading at Disney", SIGGRAPH 2012):
-//
-// F(L.V) D(N.H) G(N.L) G(N.V) / (4 N.L N.V)
-//
-// We're basically regouping this as
-//
-// F(L.V) D(N.H) [G(N.L)/(2 N.L)] [G(N.V) / (2 N.V)]
-//
-// and thus, this function implements the [G(N.m)/(2 N.m)] part with m = L or V.
-//
-// The contents of the D and G (G1) functions (GGX) are taken from
-// E. Heitz, "Understanding the Masking-Shadowing Function in Microfacet-Based BRDFs", J. Comp. Graph. Tech. 3 (2) (2014).
-// Eqns 71-72 and 85-86 (see also Eqns 43 and 80).
-
-/*
-float G_GGX_2cos(float cos_theta_m, float alpha) {
- // Schlick's approximation
- // C. Schlick, "An Inexpensive BRDF Model for Physically-based Rendering", Computer Graphics Forum. 13 (3): 233 (1994)
- // Eq. (19), although see Heitz (2014) the about the problems with his derivation.
- // It nevertheless approximates GGX well with k = alpha/2.
- float k = 0.5 * alpha;
- return 0.5 / (cos_theta_m * (1.0 - k) + k);
-
- // float cos2 = cos_theta_m * cos_theta_m;
- // float sin2 = (1.0 - cos2);
- // return 1.0 / (cos_theta_m + sqrt(cos2 + alpha * alpha * sin2));
-}
-
-*/
-
-// This approximates G_GGX_2cos(cos_theta_l, alpha) * G_GGX_2cos(cos_theta_v, alpha)
-// See Filament docs, Specular G section.
-float V_GGX(float cos_theta_l, float cos_theta_v, float alpha) {
- return 0.5 / mix(2.0 * cos_theta_l * cos_theta_v, cos_theta_l + cos_theta_v, alpha);
-}
-
-float D_GGX(float cos_theta_m, float alpha) {
- float alpha2 = alpha * alpha;
- float d = 1.0 + (alpha2 - 1.0) * cos_theta_m * cos_theta_m;
- return alpha2 / (M_PI * d * d);
-}
-
-/*
-float G_GGX_anisotropic_2cos(float cos_theta_m, float alpha_x, float alpha_y, float cos_phi, float sin_phi) {
- float cos2 = cos_theta_m * cos_theta_m;
- float sin2 = (1.0 - cos2);
- float s_x = alpha_x * cos_phi;
- float s_y = alpha_y * sin_phi;
- return 1.0 / max(cos_theta_m + sqrt(cos2 + (s_x * s_x + s_y * s_y) * sin2), 0.001);
-}
-
-*/
-
-// This approximates G_GGX_anisotropic_2cos(cos_theta_l, ...) * G_GGX_anisotropic_2cos(cos_theta_v, ...)
-// See Filament docs, Anisotropic specular BRDF section.
-float V_GGX_anisotropic(float alpha_x, float alpha_y, float TdotV, float TdotL, float BdotV, float BdotL, float NdotV, float NdotL) {
- float Lambda_V = NdotL * length(vec3(alpha_x * TdotV, alpha_y * BdotV, NdotV));
- float Lambda_L = NdotV * length(vec3(alpha_x * TdotL, alpha_y * BdotL, NdotL));
- return 0.5 / (Lambda_V + Lambda_L);
-}
-
-float D_GGX_anisotropic(float cos_theta_m, float alpha_x, float alpha_y, float cos_phi, float sin_phi, float NdotH) {
- float alpha2 = alpha_x * alpha_y;
- highp vec3 v = vec3(alpha_y * cos_phi, alpha_x * sin_phi, alpha2 * NdotH);
- highp float v2 = dot(v, v);
- float w2 = alpha2 / v2;
- float D = alpha2 * w2 * w2 * (1.0 / M_PI);
- return D;
-
- /* float cos2 = cos_theta_m * cos_theta_m;
- float sin2 = (1.0 - cos2);
- float r_x = cos_phi / alpha_x;
- float r_y = sin_phi / alpha_y;
- float d = cos2 + sin2 * (r_x * r_x + r_y * r_y);
- return 1.0 / max(M_PI * alpha_x * alpha_y * d * d, 0.001); */
-}
-
-float SchlickFresnel(float u) {
- float m = 1.0 - u;
- float m2 = m * m;
- return m2 * m2 * m; // pow(m,5)
-}
-
-float GTR1(float NdotH, float a) {
- if (a >= 1.0)
- return 1.0 / M_PI;
- float a2 = a * a;
- float t = 1.0 + (a2 - 1.0) * NdotH * NdotH;
- return (a2 - 1.0) / (M_PI * log(a2) * t);
-}
-
-void light_compute(
- vec3 N,
- vec3 L,
- vec3 V,
- vec3 B,
- vec3 T,
- vec3 light_color,
- vec3 attenuation,
- vec3 diffuse_color,
- vec3 transmission,
- float specular_blob_intensity,
- float roughness,
- float metallic,
- float specular,
- float rim,
- float rim_tint,
- float clearcoat,
- float clearcoat_gloss,
- float anisotropy,
- inout vec3 diffuse_light,
- inout vec3 specular_light,
- inout float alpha) {
-//this makes lights behave closer to linear, but then addition of lights looks bad
-//better left disabled
-
-//#define SRGB_APPROX(m_var) m_var = pow(m_var,0.4545454545);
-/*
-#define SRGB_APPROX(m_var) {\
- float S1 = sqrt(m_var);\
- float S2 = sqrt(S1);\
- float S3 = sqrt(S2);\
- m_var = 0.662002687 * S1 + 0.684122060 * S2 - 0.323583601 * S3 - 0.0225411470 * m_var;\
- }
-*/
-#define SRGB_APPROX(m_var)
-
-#if defined(USE_LIGHT_SHADER_CODE)
- // light is written by the light shader
-
- vec3 normal = N;
- vec3 albedo = diffuse_color;
- vec3 light = L;
- vec3 view = V;
-
- /* clang-format off */
-
-LIGHT_SHADER_CODE
-
- /* clang-format on */
-
-#else
- float NdotL = dot(N, L);
- float cNdotL = max(NdotL, 0.0); // clamped NdotL
- float NdotV = dot(N, V);
- float cNdotV = max(abs(NdotV), 1e-6);
-
-#if defined(DIFFUSE_BURLEY) || defined(SPECULAR_BLINN) || defined(SPECULAR_SCHLICK_GGX) || defined(LIGHT_USE_CLEARCOAT)
- vec3 H = normalize(V + L);
-#endif
-
-#if defined(SPECULAR_BLINN) || defined(SPECULAR_SCHLICK_GGX) || defined(LIGHT_USE_CLEARCOAT)
- float cNdotH = max(dot(N, H), 0.0);
-#endif
-
-#if defined(DIFFUSE_BURLEY) || defined(SPECULAR_SCHLICK_GGX) || defined(LIGHT_USE_CLEARCOAT)
- float cLdotH = max(dot(L, H), 0.0);
-#endif
-
- if (metallic < 1.0) {
-#if defined(DIFFUSE_OREN_NAYAR)
- vec3 diffuse_brdf_NL;
-#else
- float diffuse_brdf_NL; // BRDF times N.L for calculating diffuse radiance
-#endif
-
-#if defined(DIFFUSE_LAMBERT_WRAP)
- // energy conserving lambert wrap shader
- diffuse_brdf_NL = max(0.0, (NdotL + roughness) / ((1.0 + roughness) * (1.0 + roughness)));
-
-#elif defined(DIFFUSE_OREN_NAYAR)
-
- {
- // see http://mimosa-pudica.net/improved-oren-nayar.html
- float LdotV = dot(L, V);
-
- float s = LdotV - NdotL * NdotV;
- float t = mix(1.0, max(NdotL, NdotV), step(0.0, s));
-
- float sigma2 = roughness * roughness; // TODO: this needs checking
- vec3 A = 1.0 + sigma2 * (-0.5 / (sigma2 + 0.33) + 0.17 * diffuse_color / (sigma2 + 0.13));
- float B = 0.45 * sigma2 / (sigma2 + 0.09);
-
- diffuse_brdf_NL = cNdotL * (A + vec3(B) * s / t) * (1.0 / M_PI);
- }
-
-#elif defined(DIFFUSE_TOON)
-
- diffuse_brdf_NL = smoothstep(-roughness, max(roughness, 0.01), NdotL);
-
-#elif defined(DIFFUSE_BURLEY)
-
- {
- float FD90_minus_1 = 2.0 * cLdotH * cLdotH * roughness - 0.5;
- float FdV = 1.0 + FD90_minus_1 * SchlickFresnel(cNdotV);
- float FdL = 1.0 + FD90_minus_1 * SchlickFresnel(cNdotL);
- diffuse_brdf_NL = (1.0 / M_PI) * FdV * FdL * cNdotL;
- /*
- float energyBias = mix(roughness, 0.0, 0.5);
- float energyFactor = mix(roughness, 1.0, 1.0 / 1.51);
- float fd90 = energyBias + 2.0 * VoH * VoH * roughness;
- float f0 = 1.0;
- float lightScatter = f0 + (fd90 - f0) * pow(1.0 - cNdotL, 5.0);
- float viewScatter = f0 + (fd90 - f0) * pow(1.0 - cNdotV, 5.0);
-
- diffuse_brdf_NL = lightScatter * viewScatter * energyFactor;
- */
- }
-#else
- // lambert
- diffuse_brdf_NL = cNdotL * (1.0 / M_PI);
-#endif
-
- SRGB_APPROX(diffuse_brdf_NL)
-
- diffuse_light += light_color * diffuse_color * diffuse_brdf_NL * attenuation;
-
-#if defined(TRANSMISSION_USED)
- diffuse_light += light_color * diffuse_color * (vec3(1.0 / M_PI) - diffuse_brdf_NL) * transmission * attenuation;
-#endif
-
-#if defined(LIGHT_USE_RIM)
- float rim_light = pow(max(0.0, 1.0 - cNdotV), max(0.0, (1.0 - roughness) * 16.0));
- diffuse_light += rim_light * rim * mix(vec3(1.0), diffuse_color, rim_tint) * light_color;
-#endif
- }
-
- if (roughness > 0.0) {
-
-#if defined(SPECULAR_SCHLICK_GGX)
- vec3 specular_brdf_NL = vec3(0.0);
-#else
- float specular_brdf_NL = 0.0;
-#endif
-
-#if defined(SPECULAR_BLINN)
-
- //normalized blinn
- float shininess = exp2(15.0 * (1.0 - roughness) + 1.0) * 0.25;
- float blinn = pow(cNdotH, shininess) * cNdotL;
- blinn *= (shininess + 8.0) * (1.0 / (8.0 * M_PI));
- specular_brdf_NL = blinn;
-
-#elif defined(SPECULAR_PHONG)
-
- vec3 R = normalize(-reflect(L, N));
- float cRdotV = max(0.0, dot(R, V));
- float shininess = exp2(15.0 * (1.0 - roughness) + 1.0) * 0.25;
- float phong = pow(cRdotV, shininess);
- phong *= (shininess + 8.0) * (1.0 / (8.0 * M_PI));
- specular_brdf_NL = (phong) / max(4.0 * cNdotV * cNdotL, 0.75);
-
-#elif defined(SPECULAR_TOON)
-
- vec3 R = normalize(-reflect(L, N));
- float RdotV = dot(R, V);
- float mid = 1.0 - roughness;
- mid *= mid;
- specular_brdf_NL = smoothstep(mid - roughness * 0.5, mid + roughness * 0.5, RdotV) * mid;
-
-#elif defined(SPECULAR_DISABLED)
- // none..
-#elif defined(SPECULAR_SCHLICK_GGX)
- // shlick+ggx as default
-
-#if defined(LIGHT_USE_ANISOTROPY)
- float alpha_ggx = roughness * roughness;
- float aspect = sqrt(1.0 - anisotropy * 0.9);
- float ax = alpha_ggx / aspect;
- float ay = alpha_ggx * aspect;
- float XdotH = dot(T, H);
- float YdotH = dot(B, H);
- float D = D_GGX_anisotropic(cNdotH, ax, ay, XdotH, YdotH, cNdotH);
- //float G = G_GGX_anisotropic_2cos(cNdotL, ax, ay, XdotH, YdotH) * G_GGX_anisotropic_2cos(cNdotV, ax, ay, XdotH, YdotH);
- float G = V_GGX_anisotropic(ax, ay, dot(T, V), dot(T, L), dot(B, V), dot(B, L), cNdotV, cNdotL);
-
-#else
- float alpha_ggx = roughness * roughness;
- float D = D_GGX(cNdotH, alpha_ggx);
- //float G = G_GGX_2cos(cNdotL, alpha_ggx) * G_GGX_2cos(cNdotV, alpha_ggx);
- float G = V_GGX(cNdotL, cNdotV, alpha_ggx);
-#endif
- // F
- vec3 f0 = F0(metallic, specular, diffuse_color);
- float cLdotH5 = SchlickFresnel(cLdotH);
- vec3 F = mix(vec3(cLdotH5), vec3(1.0), f0);
-
- specular_brdf_NL = cNdotL * D * F * G;
-
-#endif
-
- SRGB_APPROX(specular_brdf_NL)
- specular_light += specular_brdf_NL * light_color * specular_blob_intensity * attenuation;
-
-#if defined(LIGHT_USE_CLEARCOAT)
-
-#if !defined(SPECULAR_SCHLICK_GGX)
- float cLdotH5 = SchlickFresnel(cLdotH);
-#endif
- float Dr = GTR1(cNdotH, mix(.1, .001, clearcoat_gloss));
- float Fr = mix(.04, 1.0, cLdotH5);
- //float Gr = G_GGX_2cos(cNdotL, .25) * G_GGX_2cos(cNdotV, .25);
- float Gr = V_GGX(cNdotL, cNdotV, 0.25);
-
- float clearcoat_specular_brdf_NL = 0.25 * clearcoat * Gr * Fr * Dr * cNdotL;
-
- specular_light += clearcoat_specular_brdf_NL * light_color * specular_blob_intensity * attenuation;
-#endif
- }
-
-#ifdef USE_SHADOW_TO_OPACITY
- alpha = min(alpha, clamp(1.0 - length(attenuation), 0.0, 1.0));
-#endif
-
-#endif //defined(USE_LIGHT_SHADER_CODE)
-}
-
-#endif
-// shadows
-
-#ifdef USE_SHADOW
-
-#ifdef USE_RGBA_SHADOWS
-
-#define SHADOW_DEPTH(m_val) dot(m_val, vec4(1.0 / (255.0 * 255.0 * 255.0), 1.0 / (255.0 * 255.0), 1.0 / 255.0, 1.0))
-
-#else
-
-#define SHADOW_DEPTH(m_val) (m_val).r
-
-#endif
-
-#define SAMPLE_SHADOW_TEXEL(p_shadow, p_pos, p_depth) step(p_depth, SHADOW_DEPTH(texture2D(p_shadow, p_pos)))
-#define SAMPLE_SHADOW_TEXEL_PROJ(p_shadow, p_pos) step(p_pos.z, SHADOW_DEPTH(texture2DProj(p_shadow, p_pos)))
-
-float sample_shadow(highp sampler2D shadow, highp vec4 spos) {
-#ifdef SHADOW_MODE_PCF_13
-
- spos.xyz /= spos.w;
- vec2 pos = spos.xy;
- float depth = spos.z;
-
- float avg = SAMPLE_SHADOW_TEXEL(shadow, pos, depth);
- avg += SAMPLE_SHADOW_TEXEL(shadow, pos + vec2(shadow_pixel_size.x, 0.0), depth);
- avg += SAMPLE_SHADOW_TEXEL(shadow, pos + vec2(-shadow_pixel_size.x, 0.0), depth);
- avg += SAMPLE_SHADOW_TEXEL(shadow, pos + vec2(0.0, shadow_pixel_size.y), depth);
- avg += SAMPLE_SHADOW_TEXEL(shadow, pos + vec2(0.0, -shadow_pixel_size.y), depth);
- avg += SAMPLE_SHADOW_TEXEL(shadow, pos + vec2(shadow_pixel_size.x, shadow_pixel_size.y), depth);
- avg += SAMPLE_SHADOW_TEXEL(shadow, pos + vec2(-shadow_pixel_size.x, shadow_pixel_size.y), depth);
- avg += SAMPLE_SHADOW_TEXEL(shadow, pos + vec2(shadow_pixel_size.x, -shadow_pixel_size.y), depth);
- avg += SAMPLE_SHADOW_TEXEL(shadow, pos + vec2(-shadow_pixel_size.x, -shadow_pixel_size.y), depth);
- avg += SAMPLE_SHADOW_TEXEL(shadow, pos + vec2(shadow_pixel_size.x * 2.0, 0.0), depth);
- avg += SAMPLE_SHADOW_TEXEL(shadow, pos + vec2(-shadow_pixel_size.x * 2.0, 0.0), depth);
- avg += SAMPLE_SHADOW_TEXEL(shadow, pos + vec2(0.0, shadow_pixel_size.y * 2.0), depth);
- avg += SAMPLE_SHADOW_TEXEL(shadow, pos + vec2(0.0, -shadow_pixel_size.y * 2.0), depth);
- return avg * (1.0 / 13.0);
-#endif
-
-#ifdef SHADOW_MODE_PCF_5
-
- spos.xyz /= spos.w;
- vec2 pos = spos.xy;
- float depth = spos.z;
-
- float avg = SAMPLE_SHADOW_TEXEL(shadow, pos, depth);
- avg += SAMPLE_SHADOW_TEXEL(shadow, pos + vec2(shadow_pixel_size.x, 0.0), depth);
- avg += SAMPLE_SHADOW_TEXEL(shadow, pos + vec2(-shadow_pixel_size.x, 0.0), depth);
- avg += SAMPLE_SHADOW_TEXEL(shadow, pos + vec2(0.0, shadow_pixel_size.y), depth);
- avg += SAMPLE_SHADOW_TEXEL(shadow, pos + vec2(0.0, -shadow_pixel_size.y), depth);
- return avg * (1.0 / 5.0);
-
-#endif
-
-#if !defined(SHADOW_MODE_PCF_5) || !defined(SHADOW_MODE_PCF_13)
-
- return SAMPLE_SHADOW_TEXEL_PROJ(shadow, spos);
-#endif
-}
-
-#endif
-
-#if defined(FOG_DEPTH_ENABLED) || defined(FOG_HEIGHT_ENABLED)
-
-#if defined(USE_VERTEX_LIGHTING)
-
-varying vec4 fog_interp;
-
-#else
-uniform mediump vec4 fog_color_base;
-#ifdef LIGHT_MODE_DIRECTIONAL
-uniform mediump vec4 fog_sun_color_amount;
-#endif
-
-uniform bool fog_transmit_enabled;
-uniform mediump float fog_transmit_curve;
-
-#ifdef FOG_DEPTH_ENABLED
-uniform highp float fog_depth_begin;
-uniform mediump float fog_depth_curve;
-uniform mediump float fog_max_distance;
-#endif
-
-#ifdef FOG_HEIGHT_ENABLED
-uniform highp float fog_height_min;
-uniform highp float fog_height_max;
-uniform mediump float fog_height_curve;
-#endif
-
-#endif //vertex lit
-#endif //fog
-
-void main() {
-#ifdef RENDER_DEPTH_DUAL_PARABOLOID
-
- if (dp_clip > 0.0)
- discard;
-#endif
- highp vec3 vertex = vertex_interp;
- vec3 view = -normalize(vertex_interp);
- vec3 albedo = vec3(1.0);
- vec3 transmission = vec3(0.0);
- float metallic = 0.0;
- float specular = 0.5;
- vec3 emission = vec3(0.0);
- float roughness = 1.0;
- float rim = 0.0;
- float rim_tint = 0.0;
- float clearcoat = 0.0;
- float clearcoat_gloss = 0.0;
- float anisotropy = 0.0;
- vec2 anisotropy_flow = vec2(1.0, 0.0);
- float sss_strength = 0.0; //unused
- // gl_FragDepth is not available in GLES2, so writing to DEPTH is not converted to gl_FragDepth by Godot compiler resulting in a
- // compile error because DEPTH is not a variable.
- float m_DEPTH = 0.0;
-
- float alpha = 1.0;
- float side = 1.0;
-
- float specular_blob_intensity = 1.0;
-#if defined(SPECULAR_TOON)
- specular_blob_intensity *= specular * 2.0;
-#endif
-
-#if defined(ENABLE_AO)
- float ao = 1.0;
- float ao_light_affect = 0.0;
-#endif
-
-#if defined(ENABLE_TANGENT_INTERP) || defined(ENABLE_NORMALMAP)
- vec3 binormal = normalize(binormal_interp) * side;
- vec3 tangent = normalize(tangent_interp) * side;
-#else
- vec3 binormal = vec3(0.0);
- vec3 tangent = vec3(0.0);
-#endif
- vec3 normal = normalize(normal_interp) * side;
-
-#if defined(ENABLE_NORMALMAP)
- vec3 normalmap = vec3(0.5);
-#endif
- float normaldepth = 1.0;
-
-#if defined(ALPHA_SCISSOR_USED)
- float alpha_scissor = 0.5;
-#endif
-
-#if defined(SCREEN_UV_USED)
- vec2 screen_uv = gl_FragCoord.xy * screen_pixel_size;
-#endif
-
- {
- /* clang-format off */
-
-FRAGMENT_SHADER_CODE
-
- /* clang-format on */
- }
-
-#if defined(ENABLE_NORMALMAP)
- normalmap.xy = normalmap.xy * 2.0 - 1.0;
- normalmap.z = sqrt(max(0.0, 1.0 - dot(normalmap.xy, normalmap.xy)));
-
- normal = normalize(mix(normal_interp, tangent * normalmap.x + binormal * normalmap.y + normal * normalmap.z, normaldepth)) * side;
- //normal = normalmap;
-#endif
-
- normal = normalize(normal);
-
- vec3 N = normal;
-
- vec3 specular_light = vec3(0.0, 0.0, 0.0);
- vec3 diffuse_light = vec3(0.0, 0.0, 0.0);
- vec3 ambient_light = vec3(0.0, 0.0, 0.0);
-
- vec3 eye_position = view;
-
-#if !defined(USE_SHADOW_TO_OPACITY)
-
-#if defined(ALPHA_SCISSOR_USED)
- if (alpha < alpha_scissor) {
- discard;
- }
-#endif // ALPHA_SCISSOR_USED
-
-#ifdef USE_DEPTH_PREPASS
- if (alpha < 0.1) {
- discard;
- }
-#endif // USE_DEPTH_PREPASS
-
-#endif // !USE_SHADOW_TO_OPACITY
-
-#ifdef BASE_PASS
-
- // IBL precalculations
- float ndotv = clamp(dot(normal, eye_position), 0.0, 1.0);
- vec3 f0 = F0(metallic, specular, albedo);
- vec3 F = f0 + (max(vec3(1.0 - roughness), f0) - f0) * pow(1.0 - ndotv, 5.0);
-
-#ifdef AMBIENT_LIGHT_DISABLED
- ambient_light = vec3(0.0, 0.0, 0.0);
-#else
-
-#ifdef USE_RADIANCE_MAP
-
- vec3 ref_vec = reflect(-eye_position, N);
- ref_vec = normalize((radiance_inverse_xform * vec4(ref_vec, 0.0)).xyz);
-
- ref_vec.z *= -1.0;
-
- specular_light = textureCubeLod(radiance_map, ref_vec, roughness * RADIANCE_MAX_LOD).xyz * bg_energy;
-#ifndef USE_LIGHTMAP
- {
- vec3 ambient_dir = normalize((radiance_inverse_xform * vec4(normal, 0.0)).xyz);
- vec3 env_ambient = textureCubeLod(radiance_map, ambient_dir, 4.0).xyz * bg_energy;
- env_ambient *= 1.0 - F;
-
- ambient_light = mix(ambient_color.rgb, env_ambient, ambient_sky_contribution);
- }
-#endif
-
-#else
-
- ambient_light = ambient_color.rgb;
- specular_light = bg_color.rgb * bg_energy;
-
-#endif
-#endif // AMBIENT_LIGHT_DISABLED
- ambient_light *= ambient_energy;
-
-#if defined(USE_REFLECTION_PROBE1) || defined(USE_REFLECTION_PROBE2)
-
- vec4 ambient_accum = vec4(0.0);
- vec4 reflection_accum = vec4(0.0);
-
-#ifdef USE_REFLECTION_PROBE1
-
- reflection_process(reflection_probe1,
-#ifdef USE_VERTEX_LIGHTING
- refprobe1_reflection_normal_blend.rgb,
-#ifndef USE_LIGHTMAP
- refprobe1_ambient_normal,
-#endif
- refprobe1_reflection_normal_blend.a,
-#else
- normal_interp, vertex_interp, refprobe1_local_matrix,
- refprobe1_use_box_project, refprobe1_box_extents, refprobe1_box_offset,
-#endif
- refprobe1_exterior, refprobe1_intensity, refprobe1_ambient, roughness,
- ambient_light, specular_light, reflection_accum, ambient_accum);
-
-#endif // USE_REFLECTION_PROBE1
-
-#ifdef USE_REFLECTION_PROBE2
-
- reflection_process(reflection_probe2,
-#ifdef USE_VERTEX_LIGHTING
- refprobe2_reflection_normal_blend.rgb,
-#ifndef USE_LIGHTMAP
- refprobe2_ambient_normal,
-#endif
- refprobe2_reflection_normal_blend.a,
-#else
- normal_interp, vertex_interp, refprobe2_local_matrix,
- refprobe2_use_box_project, refprobe2_box_extents, refprobe2_box_offset,
-#endif
- refprobe2_exterior, refprobe2_intensity, refprobe2_ambient, roughness,
- ambient_light, specular_light, reflection_accum, ambient_accum);
-
-#endif // USE_REFLECTION_PROBE2
-
- if (reflection_accum.a > 0.0) {
- specular_light = reflection_accum.rgb / reflection_accum.a;
- }
-
-#ifndef USE_LIGHTMAP
- if (ambient_accum.a > 0.0) {
- ambient_light = ambient_accum.rgb / ambient_accum.a;
- }
-#endif
-
-#endif // defined(USE_REFLECTION_PROBE1) || defined(USE_REFLECTION_PROBE2)
-
- // environment BRDF approximation
- {
-#if defined(DIFFUSE_TOON)
- //simplify for toon, as
- specular_light *= specular * metallic * albedo * 2.0;
-#else
-
- // scales the specular reflections, needs to be be computed before lighting happens,
- // but after environment and reflection probes are added
- //TODO: this curve is not really designed for gammaspace, should be adjusted
- const vec4 c0 = vec4(-1.0, -0.0275, -0.572, 0.022);
- const vec4 c1 = vec4(1.0, 0.0425, 1.04, -0.04);
- vec4 r = roughness * c0 + c1;
- float a004 = min(r.x * r.x, exp2(-9.28 * ndotv)) * r.x + r.y;
- vec2 env = vec2(-1.04, 1.04) * a004 + r.zw;
- specular_light *= env.x * F + env.y;
-
-#endif
- }
-
-#ifdef USE_LIGHTMAP
- //ambient light will come entirely from lightmap is lightmap is used
- ambient_light = texture2D(lightmap, uv2_interp).rgb * lightmap_energy;
-#endif
-
-#ifdef USE_LIGHTMAP_CAPTURE
- {
- vec3 cone_dirs[12];
- cone_dirs[0] = vec3(0.0, 0.0, 1.0);
- cone_dirs[1] = vec3(0.866025, 0.0, 0.5);
- cone_dirs[2] = vec3(0.267617, 0.823639, 0.5);
- cone_dirs[3] = vec3(-0.700629, 0.509037, 0.5);
- cone_dirs[4] = vec3(-0.700629, -0.509037, 0.5);
- cone_dirs[5] = vec3(0.267617, -0.823639, 0.5);
- cone_dirs[6] = vec3(0.0, 0.0, -1.0);
- cone_dirs[7] = vec3(0.866025, 0.0, -0.5);
- cone_dirs[8] = vec3(0.267617, 0.823639, -0.5);
- cone_dirs[9] = vec3(-0.700629, 0.509037, -0.5);
- cone_dirs[10] = vec3(-0.700629, -0.509037, -0.5);
- cone_dirs[11] = vec3(0.267617, -0.823639, -0.5);
-
- vec3 local_normal = normalize(camera_matrix * vec4(normal, 0.0)).xyz;
- vec4 captured = vec4(0.0);
- float sum = 0.0;
- for (int i = 0; i < 12; i++) {
- float amount = max(0.0, dot(local_normal, cone_dirs[i])); //not correct, but creates a nice wrap around effect
- captured += lightmap_captures[i] * amount;
- sum += amount;
- }
-
- captured /= sum;
-
- if (lightmap_capture_sky) {
- ambient_light = mix(ambient_light, captured.rgb, captured.a);
- } else {
- ambient_light = captured.rgb;
- }
- }
-#endif
-
-#endif //BASE PASS
-
-//
-// Lighting
-//
-#ifdef USE_LIGHTING
-
-#ifndef USE_VERTEX_LIGHTING
- vec3 L;
-#endif
- vec3 light_att = vec3(1.0);
-
-#ifdef LIGHT_MODE_OMNI
-
-#ifndef USE_VERTEX_LIGHTING
- vec3 light_vec = light_position - vertex;
- float light_length = length(light_vec);
-
- float normalized_distance = light_length / light_range;
- if (normalized_distance < 1.0) {
- float omni_attenuation = pow(1.0 - normalized_distance, light_attenuation);
-
- light_att = vec3(omni_attenuation);
- } else {
- light_att = vec3(0.0);
- }
- L = normalize(light_vec);
-
-#endif
-
-#if !defined(SHADOWS_DISABLED)
-
-#ifdef USE_SHADOW
- {
- highp vec4 splane = shadow_coord;
- float shadow_len = length(splane.xyz);
-
- splane.xyz = normalize(splane.xyz);
-
- vec4 clamp_rect = light_clamp;
-
- if (splane.z >= 0.0) {
- splane.z += 1.0;
-
- clamp_rect.y += clamp_rect.w;
- } else {
- splane.z = 1.0 - splane.z;
- }
-
- splane.xy /= splane.z;
- splane.xy = splane.xy * 0.5 + 0.5;
- splane.z = shadow_len / light_range;
-
- splane.xy = clamp_rect.xy + splane.xy * clamp_rect.zw;
- splane.w = 1.0;
-
- float shadow = sample_shadow(light_shadow_atlas, splane);
-
- light_att *= mix(shadow_color.rgb, vec3(1.0), shadow);
- }
-#endif
-
-#endif //SHADOWS_DISABLED
-
-#endif //type omni
-
-#ifdef LIGHT_MODE_DIRECTIONAL
-
-#ifndef USE_VERTEX_LIGHTING
- vec3 light_vec = -light_direction;
- L = normalize(light_vec);
-#endif
- float depth_z = -vertex.z;
-
-#if !defined(SHADOWS_DISABLED)
-
-#ifdef USE_SHADOW
-
-#ifdef USE_VERTEX_LIGHTING
- //compute shadows in a mobile friendly way
-
-#ifdef LIGHT_USE_PSSM4
- //take advantage of prefetch
- float shadow1 = sample_shadow(light_directional_shadow, shadow_coord);
- float shadow2 = sample_shadow(light_directional_shadow, shadow_coord2);
- float shadow3 = sample_shadow(light_directional_shadow, shadow_coord3);
- float shadow4 = sample_shadow(light_directional_shadow, shadow_coord4);
-
- if (depth_z < light_split_offsets.w) {
- float pssm_fade = 0.0;
- float shadow_att = 1.0;
-#ifdef LIGHT_USE_PSSM_BLEND
- float shadow_att2 = 1.0;
- float pssm_blend = 0.0;
- bool use_blend = true;
-#endif
- if (depth_z < light_split_offsets.y) {
- if (depth_z < light_split_offsets.x) {
- shadow_att = shadow1;
-
-#ifdef LIGHT_USE_PSSM_BLEND
- shadow_att2 = shadow2;
-
- pssm_blend = smoothstep(0.0, light_split_offsets.x, depth_z);
-#endif
- } else {
- shadow_att = shadow2;
-
-#ifdef LIGHT_USE_PSSM_BLEND
- shadow_att2 = shadow3;
-
- pssm_blend = smoothstep(light_split_offsets.x, light_split_offsets.y, depth_z);
-#endif
- }
- } else {
- if (depth_z < light_split_offsets.z) {
- shadow_att = shadow3;
-
-#if defined(LIGHT_USE_PSSM_BLEND)
- shadow_att2 = shadow4;
- pssm_blend = smoothstep(light_split_offsets.y, light_split_offsets.z, depth_z);
-#endif
-
- } else {
- shadow_att = shadow4;
- pssm_fade = smoothstep(light_split_offsets.z, light_split_offsets.w, depth_z);
-
-#if defined(LIGHT_USE_PSSM_BLEND)
- use_blend = false;
-#endif
- }
- }
-#if defined(LIGHT_USE_PSSM_BLEND)
- if (use_blend) {
- shadow_att = mix(shadow_att, shadow_att2, pssm_blend);
- }
-#endif
- light_att *= mix(shadow_color.rgb, vec3(1.0), shadow_att);
- }
-
-#endif //LIGHT_USE_PSSM4
-
-#ifdef LIGHT_USE_PSSM2
-
- //take advantage of prefetch
- float shadow1 = sample_shadow(light_directional_shadow, shadow_coord);
- float shadow2 = sample_shadow(light_directional_shadow, shadow_coord2);
-
- if (depth_z < light_split_offsets.y) {
- float shadow_att = 1.0;
- float pssm_fade = 0.0;
-
-#ifdef LIGHT_USE_PSSM_BLEND
- float shadow_att2 = 1.0;
- float pssm_blend = 0.0;
- bool use_blend = true;
-#endif
- if (depth_z < light_split_offsets.x) {
- float pssm_fade = 0.0;
- shadow_att = shadow1;
-
-#ifdef LIGHT_USE_PSSM_BLEND
- shadow_att2 = shadow2;
- pssm_blend = smoothstep(0.0, light_split_offsets.x, depth_z);
-#endif
- } else {
- shadow_att = shadow2;
- pssm_fade = smoothstep(light_split_offsets.x, light_split_offsets.y, depth_z);
-#ifdef LIGHT_USE_PSSM_BLEND
- use_blend = false;
-#endif
- }
-#ifdef LIGHT_USE_PSSM_BLEND
- if (use_blend) {
- shadow_att = mix(shadow_att, shadow_att2, pssm_blend);
- }
-#endif
- light_att *= mix(shadow_color.rgb, vec3(1.0), shadow_att);
- }
-
-#endif //LIGHT_USE_PSSM2
-
-#if !defined(LIGHT_USE_PSSM4) && !defined(LIGHT_USE_PSSM2)
-
- light_att *= mix(shadow_color.rgb, vec3(1.0), sample_shadow(light_directional_shadow, shadow_coord));
-#endif //orthogonal
-
-#else //fragment version of pssm
-
- {
-#ifdef LIGHT_USE_PSSM4
- if (depth_z < light_split_offsets.w) {
-#elif defined(LIGHT_USE_PSSM2)
- if (depth_z < light_split_offsets.y) {
-#else
- if (depth_z < light_split_offsets.x) {
-#endif //pssm2
-
- highp vec4 pssm_coord;
- float pssm_fade = 0.0;
-
-#ifdef LIGHT_USE_PSSM_BLEND
- float pssm_blend;
- highp vec4 pssm_coord2;
- bool use_blend = true;
-#endif
-
-#ifdef LIGHT_USE_PSSM4
-
- if (depth_z < light_split_offsets.y) {
- if (depth_z < light_split_offsets.x) {
- pssm_coord = shadow_coord;
-
-#ifdef LIGHT_USE_PSSM_BLEND
- pssm_coord2 = shadow_coord2;
-
- pssm_blend = smoothstep(0.0, light_split_offsets.x, depth_z);
-#endif
- } else {
- pssm_coord = shadow_coord2;
-
-#ifdef LIGHT_USE_PSSM_BLEND
- pssm_coord2 = shadow_coord3;
-
- pssm_blend = smoothstep(light_split_offsets.x, light_split_offsets.y, depth_z);
-#endif
- }
- } else {
- if (depth_z < light_split_offsets.z) {
- pssm_coord = shadow_coord3;
-
-#if defined(LIGHT_USE_PSSM_BLEND)
- pssm_coord2 = shadow_coord4;
- pssm_blend = smoothstep(light_split_offsets.y, light_split_offsets.z, depth_z);
-#endif
-
- } else {
- pssm_coord = shadow_coord4;
- pssm_fade = smoothstep(light_split_offsets.z, light_split_offsets.w, depth_z);
-
-#if defined(LIGHT_USE_PSSM_BLEND)
- use_blend = false;
-#endif
- }
- }
-
-#endif // LIGHT_USE_PSSM4
-
-#ifdef LIGHT_USE_PSSM2
- if (depth_z < light_split_offsets.x) {
- pssm_coord = shadow_coord;
-
-#ifdef LIGHT_USE_PSSM_BLEND
- pssm_coord2 = shadow_coord2;
- pssm_blend = smoothstep(0.0, light_split_offsets.x, depth_z);
-#endif
- } else {
- pssm_coord = shadow_coord2;
- pssm_fade = smoothstep(light_split_offsets.x, light_split_offsets.y, depth_z);
-#ifdef LIGHT_USE_PSSM_BLEND
- use_blend = false;
-#endif
- }
-
-#endif // LIGHT_USE_PSSM2
-
-#if !defined(LIGHT_USE_PSSM4) && !defined(LIGHT_USE_PSSM2)
- {
- pssm_coord = shadow_coord;
- }
-#endif
-
- float shadow = sample_shadow(light_directional_shadow, pssm_coord);
-
-#ifdef LIGHT_USE_PSSM_BLEND
- if (use_blend) {
- shadow = mix(shadow, sample_shadow(light_directional_shadow, pssm_coord2), pssm_blend);
- }
-#endif
-
- light_att *= mix(shadow_color.rgb, vec3(1.0), shadow);
- }
- }
-#endif //use vertex lighting
-
-#endif //use shadow
-
-#endif // SHADOWS_DISABLED
-
-#endif
-
-#ifdef LIGHT_MODE_SPOT
-
- light_att = vec3(1.0);
-
-#ifndef USE_VERTEX_LIGHTING
-
- vec3 light_rel_vec = light_position - vertex;
- float light_length = length(light_rel_vec);
- float normalized_distance = light_length / light_range;
-
- if (normalized_distance < 1.0) {
- float spot_attenuation = pow(1.0 - normalized_distance, light_attenuation);
- vec3 spot_dir = light_direction;
-
- float spot_cutoff = light_spot_angle;
- float angle = dot(-normalize(light_rel_vec), spot_dir);
-
- if (angle > spot_cutoff) {
- float scos = max(angle, spot_cutoff);
- float spot_rim = max(0.0001, (1.0 - scos) / (1.0 - spot_cutoff));
- spot_attenuation *= 1.0 - pow(spot_rim, light_spot_attenuation);
-
- light_att = vec3(spot_attenuation);
- } else {
- light_att = vec3(0.0);
- }
- } else {
- light_att = vec3(0.0);
- }
-
- L = normalize(light_rel_vec);
-
-#endif
-
-#if !defined(SHADOWS_DISABLED)
-
-#ifdef USE_SHADOW
- {
- highp vec4 splane = shadow_coord;
-
- float shadow = sample_shadow(light_shadow_atlas, splane);
- light_att *= mix(shadow_color.rgb, vec3(1.0), shadow);
- }
-#endif
-
-#endif // SHADOWS_DISABLED
-
-#endif // LIGHT_MODE_SPOT
-
-#ifdef USE_VERTEX_LIGHTING
- //vertex lighting
-
- specular_light += specular_interp * specular_blob_intensity * light_att;
- diffuse_light += diffuse_interp * albedo * light_att;
-
-#else
- //fragment lighting
- light_compute(
- normal,
- L,
- eye_position,
- binormal,
- tangent,
- light_color.xyz,
- light_att,
- albedo,
- transmission,
- specular_blob_intensity * light_specular,
- roughness,
- metallic,
- specular,
- rim,
- rim_tint,
- clearcoat,
- clearcoat_gloss,
- anisotropy,
- diffuse_light,
- specular_light,
- alpha);
-
-#endif //vertex lighting
-
-#endif //USE_LIGHTING
- //compute and merge
-
-#ifdef USE_SHADOW_TO_OPACITY
-
- alpha = min(alpha, clamp(length(ambient_light), 0.0, 1.0));
-
-#if defined(ALPHA_SCISSOR_USED)
- if (alpha < alpha_scissor) {
- discard;
- }
-#endif // ALPHA_SCISSOR_USED
-
-#ifdef USE_DEPTH_PREPASS
- if (alpha < 0.1) {
- discard;
- }
-#endif // USE_DEPTH_PREPASS
-
-#endif // !USE_SHADOW_TO_OPACITY
-
-#ifndef RENDER_DEPTH
-
-#ifdef SHADELESS
-
- gl_FragColor = vec4(albedo, alpha);
-#else
-
- ambient_light *= albedo;
-
-#if defined(ENABLE_AO)
- ambient_light *= ao;
- ao_light_affect = mix(1.0, ao, ao_light_affect);
- specular_light *= ao_light_affect;
- diffuse_light *= ao_light_affect;
-#endif
-
- diffuse_light *= 1.0 - metallic;
- ambient_light *= 1.0 - metallic;
-
- gl_FragColor = vec4(ambient_light + diffuse_light + specular_light, alpha);
-
- //add emission if in base pass
-#ifdef BASE_PASS
- gl_FragColor.rgb += emission;
-#endif
- // gl_FragColor = vec4(normal, 1.0);
-
-//apply fog
-#if defined(FOG_DEPTH_ENABLED) || defined(FOG_HEIGHT_ENABLED)
-
-#if defined(USE_VERTEX_LIGHTING)
-
-#if defined(BASE_PASS)
- gl_FragColor.rgb = mix(gl_FragColor.rgb, fog_interp.rgb, fog_interp.a);
-#else
- gl_FragColor.rgb *= (1.0 - fog_interp.a);
-#endif // BASE_PASS
-
-#else //pixel based fog
- float fog_amount = 0.0;
-
-#ifdef LIGHT_MODE_DIRECTIONAL
-
- vec3 fog_color = mix(fog_color_base.rgb, fog_sun_color_amount.rgb, fog_sun_color_amount.a * pow(max(dot(eye_position, light_direction), 0.0), 8.0));
-#else
- vec3 fog_color = fog_color_base.rgb;
-#endif
-
-#ifdef FOG_DEPTH_ENABLED
-
- {
- float fog_z = smoothstep(fog_depth_begin, fog_max_distance, length(vertex));
-
- fog_amount = pow(fog_z, fog_depth_curve) * fog_color_base.a;
-
- if (fog_transmit_enabled) {
- vec3 total_light = gl_FragColor.rgb;
- float transmit = pow(fog_z, fog_transmit_curve);
- fog_color = mix(max(total_light, fog_color), fog_color, transmit);
- }
- }
-#endif
-
-#ifdef FOG_HEIGHT_ENABLED
- {
- float y = (camera_matrix * vec4(vertex, 1.0)).y;
- fog_amount = max(fog_amount, pow(smoothstep(fog_height_min, fog_height_max, y), fog_height_curve));
- }
-#endif
-
-#if defined(BASE_PASS)
- gl_FragColor.rgb = mix(gl_FragColor.rgb, fog_color, fog_amount);
-#else
- gl_FragColor.rgb *= (1.0 - fog_amount);
-#endif // BASE_PASS
-
-#endif //use vertex lit
-
-#endif // defined(FOG_DEPTH_ENABLED) || defined(FOG_HEIGHT_ENABLED)
-
-#endif //unshaded
-
-#else // not RENDER_DEPTH
-//depth render
-#ifdef USE_RGBA_SHADOWS
-
- highp float depth = ((position_interp.z / position_interp.w) + 1.0) * 0.5 + 0.0; // bias
- highp vec4 comp = fract(depth * vec4(255.0 * 255.0 * 255.0, 255.0 * 255.0, 255.0, 1.0));
- comp -= comp.xxyz * vec4(0.0, 1.0 / 255.0, 1.0 / 255.0, 1.0 / 255.0);
- gl_FragColor = comp;
-
-#endif
-#endif
-}
diff --git a/drivers/gles2/shaders/screen_space_reflection.glsl b/drivers/gles2/shaders/screen_space_reflection.glsl
deleted file mode 100644
index 6b5b7c885c..0000000000
--- a/drivers/gles2/shaders/screen_space_reflection.glsl
+++ /dev/null
@@ -1,284 +0,0 @@
-/* clang-format off */
-[vertex]
-
-layout(location = 0) in highp vec4 vertex_attrib;
-/* clang-format on */
-layout(location = 4) in vec2 uv_in;
-
-out vec2 uv_interp;
-out vec2 pos_interp;
-
-void main() {
- uv_interp = uv_in;
- gl_Position = vertex_attrib;
- pos_interp.xy = gl_Position.xy;
-}
-
-/* clang-format off */
-[fragment]
-
-in vec2 uv_interp;
-/* clang-format on */
-in vec2 pos_interp;
-
-uniform sampler2D source_diffuse; //texunit:0
-uniform sampler2D source_normal_roughness; //texunit:1
-uniform sampler2D source_depth; //texunit:2
-
-uniform float camera_z_near;
-uniform float camera_z_far;
-
-uniform vec2 viewport_size;
-uniform vec2 pixel_size;
-
-uniform float filter_mipmap_levels;
-
-uniform mat4 inverse_projection;
-uniform mat4 projection;
-
-uniform int num_steps;
-uniform float depth_tolerance;
-uniform float distance_fade;
-uniform float curve_fade_in;
-
-layout(location = 0) out vec4 frag_color;
-
-vec2 view_to_screen(vec3 view_pos, out float w) {
- vec4 projected = projection * vec4(view_pos, 1.0);
- projected.xyz /= projected.w;
- projected.xy = projected.xy * 0.5 + 0.5;
- w = projected.w;
- return projected.xy;
-}
-
-#define M_PI 3.14159265359
-
-void main() {
- vec4 diffuse = texture(source_diffuse, uv_interp);
- vec4 normal_roughness = texture(source_normal_roughness, uv_interp);
-
- vec3 normal;
-
- normal = normal_roughness.xyz * 2.0 - 1.0;
-
- float roughness = normal_roughness.w;
-
- float depth_tex = texture(source_depth, uv_interp).r;
-
- vec4 world_pos = inverse_projection * vec4(uv_interp * 2.0 - 1.0, depth_tex * 2.0 - 1.0, 1.0);
- vec3 vertex = world_pos.xyz / world_pos.w;
-
- vec3 view_dir = normalize(vertex);
- vec3 ray_dir = normalize(reflect(view_dir, normal));
-
- if (dot(ray_dir, normal) < 0.001) {
- frag_color = vec4(0.0);
- return;
- }
- //ray_dir = normalize(view_dir - normal * dot(normal,view_dir) * 2.0);
-
- //ray_dir = normalize(vec3(1,1,-1));
-
- ////////////////
-
- //make ray length and clip it against the near plane (don't want to trace beyond visible)
- float ray_len = (vertex.z + ray_dir.z * camera_z_far) > -camera_z_near ? (-camera_z_near - vertex.z) / ray_dir.z : camera_z_far;
- vec3 ray_end = vertex + ray_dir * ray_len;
-
- float w_begin;
- vec2 vp_line_begin = view_to_screen(vertex, w_begin);
- float w_end;
- vec2 vp_line_end = view_to_screen(ray_end, w_end);
- vec2 vp_line_dir = vp_line_end - vp_line_begin;
-
- //we need to interpolate w along the ray, to generate perspective correct reflections
-
- w_begin = 1.0 / w_begin;
- w_end = 1.0 / w_end;
-
- float z_begin = vertex.z * w_begin;
- float z_end = ray_end.z * w_end;
-
- vec2 line_begin = vp_line_begin / pixel_size;
- vec2 line_dir = vp_line_dir / pixel_size;
- float z_dir = z_end - z_begin;
- float w_dir = w_end - w_begin;
-
- // clip the line to the viewport edges
-
- float scale_max_x = min(1.0, 0.99 * (1.0 - vp_line_begin.x) / max(1e-5, vp_line_dir.x));
- float scale_max_y = min(1.0, 0.99 * (1.0 - vp_line_begin.y) / max(1e-5, vp_line_dir.y));
- float scale_min_x = min(1.0, 0.99 * vp_line_begin.x / max(1e-5, -vp_line_dir.x));
- float scale_min_y = min(1.0, 0.99 * vp_line_begin.y / max(1e-5, -vp_line_dir.y));
- float line_clip = min(scale_max_x, scale_max_y) * min(scale_min_x, scale_min_y);
- line_dir *= line_clip;
- z_dir *= line_clip;
- w_dir *= line_clip;
-
- //clip z and w advance to line advance
- vec2 line_advance = normalize(line_dir); //down to pixel
- float step_size = length(line_advance) / length(line_dir);
- float z_advance = z_dir * step_size; // adapt z advance to line advance
- float w_advance = w_dir * step_size; // adapt w advance to line advance
-
- //make line advance faster if direction is closer to pixel edges (this avoids sampling the same pixel twice)
- float advance_angle_adj = 1.0 / max(abs(line_advance.x), abs(line_advance.y));
- line_advance *= advance_angle_adj; // adapt z advance to line advance
- z_advance *= advance_angle_adj;
- w_advance *= advance_angle_adj;
-
- vec2 pos = line_begin;
- float z = z_begin;
- float w = w_begin;
- float z_from = z / w;
- float z_to = z_from;
- float depth;
- vec2 prev_pos = pos;
-
- bool found = false;
-
- float steps_taken = 0.0;
-
- for (int i = 0; i < num_steps; i++) {
- pos += line_advance;
- z += z_advance;
- w += w_advance;
-
- //convert to linear depth
-
- depth = texture(source_depth, pos * pixel_size).r * 2.0 - 1.0;
-#ifdef USE_ORTHOGONAL_PROJECTION
- depth = ((depth + (camera_z_far + camera_z_near) / (camera_z_far - camera_z_near)) * (camera_z_far - camera_z_near)) / 2.0;
-#else
- depth = 2.0 * camera_z_near * camera_z_far / (camera_z_far + camera_z_near - depth * (camera_z_far - camera_z_near));
-#endif
- depth = -depth;
-
- z_from = z_to;
- z_to = z / w;
-
- if (depth > z_to) {
- //if depth was surpassed
- if (depth <= max(z_to, z_from) + depth_tolerance) {
- //check the depth tolerance
- found = true;
- }
- break;
- }
-
- steps_taken += 1.0;
- prev_pos = pos;
- }
-
- if (found) {
- float margin_blend = 1.0;
-
- vec2 margin = vec2((viewport_size.x + viewport_size.y) * 0.5 * 0.05); //make a uniform margin
- if (any(bvec4(lessThan(pos, -margin), greaterThan(pos, viewport_size + margin)))) {
- //clip outside screen + margin
- frag_color = vec4(0.0);
- return;
- }
-
- {
- //blend fading out towards external margin
- vec2 margin_grad = mix(pos - viewport_size, -pos, lessThan(pos, vec2(0.0)));
- margin_blend = 1.0 - smoothstep(0.0, margin.x, max(margin_grad.x, margin_grad.y));
- //margin_blend=1.0;
- }
-
- vec2 final_pos;
- float grad;
- grad = steps_taken / float(num_steps);
- float initial_fade = curve_fade_in == 0.0 ? 1.0 : pow(clamp(grad, 0.0, 1.0), curve_fade_in);
- float fade = pow(clamp(1.0 - grad, 0.0, 1.0), distance_fade) * initial_fade;
- final_pos = pos;
-
-#ifdef REFLECT_ROUGHNESS
-
- vec4 final_color;
- //if roughness is enabled, do screen space cone tracing
- if (roughness > 0.001) {
- ///////////////////////////////////////////////////////////////////////////////////////
- //use a blurred version (in consecutive mipmaps) of the screen to simulate roughness
-
- float gloss = 1.0 - roughness;
- float cone_angle = roughness * M_PI * 0.5;
- vec2 cone_dir = final_pos - line_begin;
- float cone_len = length(cone_dir);
- cone_dir = normalize(cone_dir); //will be used normalized from now on
- float max_mipmap = filter_mipmap_levels - 1.0;
- float gloss_mult = gloss;
-
- float rem_alpha = 1.0;
- final_color = vec4(0.0);
-
- for (int i = 0; i < 7; i++) {
- float op_len = 2.0 * tan(cone_angle) * cone_len; //opposite side of iso triangle
- float radius;
- {
- //fit to sphere inside cone (sphere ends at end of cone), something like this:
- // ___
- // \O/
- // V
- //
- // as it avoids bleeding from beyond the reflection as much as possible. As a plus
- // it also makes the rough reflection more elongated.
- float a = op_len;
- float h = cone_len;
- float a2 = a * a;
- float fh2 = 4.0f * h * h;
- radius = (a * (sqrt(a2 + fh2) - a)) / (4.0f * h);
- }
-
- //find the place where screen must be sampled
- vec2 sample_pos = (line_begin + cone_dir * (cone_len - radius)) * pixel_size;
- //radius is in pixels, so it's natural that log2(radius) maps to the right mipmap for the amount of pixels
- float mipmap = clamp(log2(radius), 0.0, max_mipmap);
-
- //mipmap = max(mipmap-1.0,0.0);
- //do sampling
-
- vec4 sample_color;
- {
- sample_color = textureLod(source_diffuse, sample_pos, mipmap);
- }
-
- //multiply by gloss
- sample_color.rgb *= gloss_mult;
- sample_color.a = gloss_mult;
-
- rem_alpha -= sample_color.a;
- if (rem_alpha < 0.0) {
- sample_color.rgb *= (1.0 - abs(rem_alpha));
- }
-
- final_color += sample_color;
-
- if (final_color.a >= 0.95) {
- // This code of accumulating gloss and aborting on near one
- // makes sense when you think of cone tracing.
- // Think of it as if roughness was 0, then we could abort on the first
- // iteration. For lesser roughness values, we need more iterations, but
- // each needs to have less influence given the sphere is smaller
- break;
- }
-
- cone_len -= radius * 2.0; //go to next (smaller) circle.
-
- gloss_mult *= gloss;
- }
- } else {
- final_color = textureLod(source_diffuse, final_pos * pixel_size, 0.0);
- }
-
- frag_color = vec4(final_color.rgb, fade * margin_blend);
-
-#else
- frag_color = vec4(textureLod(source_diffuse, final_pos * pixel_size, 0.0).rgb, fade * margin_blend);
-#endif
-
- } else {
- frag_color = vec4(0.0, 0.0, 0.0, 0.0);
- }
-}
diff --git a/drivers/gles2/shaders/ssao.glsl b/drivers/gles2/shaders/ssao.glsl
deleted file mode 100644
index 0fd29e8dcc..0000000000
--- a/drivers/gles2/shaders/ssao.glsl
+++ /dev/null
@@ -1,283 +0,0 @@
-/* clang-format off */
-[vertex]
-
-layout(location = 0) in highp vec4 vertex_attrib;
-/* clang-format on */
-
-void main() {
- gl_Position = vertex_attrib;
- gl_Position.z = 1.0;
-}
-
-/* clang-format off */
-[fragment]
-
-#define TWO_PI 6.283185307179586476925286766559
-
-#ifdef SSAO_QUALITY_HIGH
-
-#define NUM_SAMPLES (80)
-
-#endif
-
-#ifdef SSAO_QUALITY_LOW
-
-#define NUM_SAMPLES (15)
-
-#endif
-
-#if !defined(SSAO_QUALITY_LOW) && !defined(SSAO_QUALITY_HIGH)
-
-#define NUM_SAMPLES (40)
-
-#endif
-
-// If using depth mip levels, the log of the maximum pixel offset before we need to switch to a lower
-// miplevel to maintain reasonable spatial locality in the cache
-// If this number is too small (< 3), too many taps will land in the same pixel, and we'll get bad variance that manifests as flashing.
-// If it is too high (> 5), we'll get bad performance because we're not using the MIP levels effectively
-#define LOG_MAX_OFFSET (3)
-
-// This must be less than or equal to the MAX_MIP_LEVEL defined in SSAO.cpp
-#define MAX_MIP_LEVEL (4)
-
-// This is the number of turns around the circle that the spiral pattern makes. This should be prime to prevent
-// taps from lining up. This particular choice was tuned for NUM_SAMPLES == 9
-
-const int ROTATIONS[] = int[](
- 1, 1, 2, 3, 2, 5, 2, 3, 2,
- 3, 3, 5, 5, 3, 4, 7, 5, 5, 7,
- 9, 8, 5, 5, 7, 7, 7, 8, 5, 8,
- 11, 12, 7, 10, 13, 8, 11, 8, 7, 14,
- 11, 11, 13, 12, 13, 19, 17, 13, 11, 18,
- 19, 11, 11, 14, 17, 21, 15, 16, 17, 18,
- 13, 17, 11, 17, 19, 18, 25, 18, 19, 19,
- 29, 21, 19, 27, 31, 29, 21, 18, 17, 29,
- 31, 31, 23, 18, 25, 26, 25, 23, 19, 34,
- 19, 27, 21, 25, 39, 29, 17, 21, 27);
-/* clang-format on */
-
-//#define NUM_SPIRAL_TURNS (7)
-const int NUM_SPIRAL_TURNS = ROTATIONS[NUM_SAMPLES - 1];
-
-uniform sampler2D source_depth; //texunit:0
-uniform highp usampler2D source_depth_mipmaps; //texunit:1
-uniform sampler2D source_normal; //texunit:2
-
-uniform ivec2 screen_size;
-uniform float camera_z_far;
-uniform float camera_z_near;
-
-uniform float intensity_div_r6;
-uniform float radius;
-
-#ifdef ENABLE_RADIUS2
-uniform float intensity_div_r62;
-uniform float radius2;
-#endif
-
-uniform float bias;
-uniform float proj_scale;
-
-layout(location = 0) out float visibility;
-
-uniform vec4 proj_info;
-
-vec3 reconstructCSPosition(vec2 S, float z) {
-#ifdef USE_ORTHOGONAL_PROJECTION
- return vec3((S.xy * proj_info.xy + proj_info.zw), z);
-#else
- return vec3((S.xy * proj_info.xy + proj_info.zw) * z, z);
-
-#endif
-}
-
-vec3 getPosition(ivec2 ssP) {
- vec3 P;
- P.z = texelFetch(source_depth, ssP, 0).r;
-
- P.z = P.z * 2.0 - 1.0;
-#ifdef USE_ORTHOGONAL_PROJECTION
- P.z = ((P.z + (camera_z_far + camera_z_near) / (camera_z_far - camera_z_near)) * (camera_z_far - camera_z_near)) / 2.0;
-#else
- P.z = 2.0 * camera_z_near * camera_z_far / (camera_z_far + camera_z_near - P.z * (camera_z_far - camera_z_near));
-#endif
- P.z = -P.z;
-
- // Offset to pixel center
- P = reconstructCSPosition(vec2(ssP) + vec2(0.5), P.z);
- return P;
-}
-
-/** Reconstructs screen-space unit normal from screen-space position */
-vec3 reconstructCSFaceNormal(vec3 C) {
- return normalize(cross(dFdy(C), dFdx(C)));
-}
-
-/** Returns a unit vector and a screen-space radius for the tap on a unit disk (the caller should scale by the actual disk radius) */
-vec2 tapLocation(int sampleNumber, float spinAngle, out float ssR) {
- // Radius relative to ssR
- float alpha = (float(sampleNumber) + 0.5) * (1.0 / float(NUM_SAMPLES));
- float angle = alpha * (float(NUM_SPIRAL_TURNS) * 6.28) + spinAngle;
-
- ssR = alpha;
- return vec2(cos(angle), sin(angle));
-}
-
-/** Read the camera-space position of the point at screen-space pixel ssP + unitOffset * ssR. Assumes length(unitOffset) == 1 */
-vec3 getOffsetPosition(ivec2 ssC, vec2 unitOffset, float ssR) {
- // Derivation:
- // mipLevel = floor(log(ssR / MAX_OFFSET));
- int mipLevel = clamp(int(floor(log2(ssR))) - LOG_MAX_OFFSET, 0, MAX_MIP_LEVEL);
-
- ivec2 ssP = ivec2(ssR * unitOffset) + ssC;
-
- vec3 P;
-
- // We need to divide by 2^mipLevel to read the appropriately scaled coordinate from a MIP-map.
- // Manually clamp to the texture size because texelFetch bypasses the texture unit
- ivec2 mipP = clamp(ssP >> mipLevel, ivec2(0), (screen_size >> mipLevel) - ivec2(1));
-
- if (mipLevel < 1) {
- //read from depth buffer
- P.z = texelFetch(source_depth, mipP, 0).r;
- P.z = P.z * 2.0 - 1.0;
-#ifdef USE_ORTHOGONAL_PROJECTION
- P.z = ((P.z + (camera_z_far + camera_z_near) / (camera_z_far - camera_z_near)) * (camera_z_far - camera_z_near)) / 2.0;
-#else
- P.z = 2.0 * camera_z_near * camera_z_far / (camera_z_far + camera_z_near - P.z * (camera_z_far - camera_z_near));
-
-#endif
- P.z = -P.z;
-
- } else {
- //read from mipmaps
- uint d = texelFetch(source_depth_mipmaps, mipP, mipLevel - 1).r;
- P.z = -(float(d) / 65535.0) * camera_z_far;
- }
-
- // Offset to pixel center
- P = reconstructCSPosition(vec2(ssP) + vec2(0.5), P.z);
-
- return P;
-}
-
-/** Compute the occlusion due to sample with index \a i about the pixel at \a ssC that corresponds
- to camera-space point \a C with unit normal \a n_C, using maximum screen-space sampling radius \a ssDiskRadius
-
- Note that units of H() in the HPG12 paper are meters, not
- unitless. The whole falloff/sampling function is therefore
- unitless. In this implementation, we factor out (9 / radius).
-
- Four versions of the falloff function are implemented below
-*/
-float sampleAO(in ivec2 ssC, in vec3 C, in vec3 n_C, in float ssDiskRadius, in float p_radius, in int tapIndex, in float randomPatternRotationAngle) {
- // Offset on the unit disk, spun for this pixel
- float ssR;
- vec2 unitOffset = tapLocation(tapIndex, randomPatternRotationAngle, ssR);
- ssR *= ssDiskRadius;
-
- // The occluding point in camera space
- vec3 Q = getOffsetPosition(ssC, unitOffset, ssR);
-
- vec3 v = Q - C;
-
- float vv = dot(v, v);
- float vn = dot(v, n_C);
-
- const float epsilon = 0.01;
- float radius2 = p_radius * p_radius;
-
- // A: From the HPG12 paper
- // Note large epsilon to avoid overdarkening within cracks
- //return float(vv < radius2) * max((vn - bias) / (epsilon + vv), 0.0) * radius2 * 0.6;
-
- // B: Smoother transition to zero (lowers contrast, smoothing out corners). [Recommended]
- float f = max(radius2 - vv, 0.0);
- return f * f * f * max((vn - bias) / (epsilon + vv), 0.0);
-
- // C: Medium contrast (which looks better at high radii), no division. Note that the
- // contribution still falls off with radius^2, but we've adjusted the rate in a way that is
- // more computationally efficient and happens to be aesthetically pleasing.
- // return 4.0 * max(1.0 - vv * invRadius2, 0.0) * max(vn - bias, 0.0);
-
- // D: Low contrast, no division operation
- // return 2.0 * float(vv < radius * radius) * max(vn - bias, 0.0);
-}
-
-void main() {
- // Pixel being shaded
- ivec2 ssC = ivec2(gl_FragCoord.xy);
-
- // World space point being shaded
- vec3 C = getPosition(ssC);
-
- /*
- if (C.z <= -camera_z_far*0.999) {
- // We're on the skybox
- visibility=1.0;
- return;
- }
- */
-
- //visibility=-C.z/camera_z_far;
- //return;
-#if 0
- vec3 n_C = texelFetch(source_normal,ssC,0).rgb * 2.0 - 1.0;
-#else
- vec3 n_C = reconstructCSFaceNormal(C);
- n_C = -n_C;
-#endif
-
- // Hash function used in the HPG12 AlchemyAO paper
- float randomPatternRotationAngle = mod(float((3 * ssC.x ^ ssC.y + ssC.x * ssC.y) * 10), TWO_PI);
-
- // Reconstruct normals from positions. These will lead to 1-pixel black lines
- // at depth discontinuities, however the blur will wipe those out so they are not visible
- // in the final image.
-
- // Choose the screen-space sample radius
- // proportional to the projected area of the sphere
-#ifdef USE_ORTHOGONAL_PROJECTION
- float ssDiskRadius = -proj_scale * radius;
-#else
- float ssDiskRadius = -proj_scale * radius / C.z;
-#endif
- float sum = 0.0;
- for (int i = 0; i < NUM_SAMPLES; ++i) {
- sum += sampleAO(ssC, C, n_C, ssDiskRadius, radius, i, randomPatternRotationAngle);
- }
-
- float A = max(0.0, 1.0 - sum * intensity_div_r6 * (5.0 / float(NUM_SAMPLES)));
-
-#ifdef ENABLE_RADIUS2
-
- //go again for radius2
- randomPatternRotationAngle = mod(float((5 * ssC.x ^ ssC.y + ssC.x * ssC.y) * 11), TWO_PI);
-
- // Reconstruct normals from positions. These will lead to 1-pixel black lines
- // at depth discontinuities, however the blur will wipe those out so they are not visible
- // in the final image.
-
- // Choose the screen-space sample radius
- // proportional to the projected area of the sphere
- ssDiskRadius = -proj_scale * radius2 / C.z;
-
- sum = 0.0;
- for (int i = 0; i < NUM_SAMPLES; ++i) {
- sum += sampleAO(ssC, C, n_C, ssDiskRadius, radius2, i, randomPatternRotationAngle);
- }
-
- A = min(A, max(0.0, 1.0 - sum * intensity_div_r62 * (5.0 / float(NUM_SAMPLES))));
-#endif
- // Bilateral box-filter over a quad for free, respecting depth edges
- // (the difference that this makes is subtle)
- if (abs(dFdx(C.z)) < 0.02) {
- A -= dFdx(A) * (float(ssC.x & 1) - 0.5);
- }
- if (abs(dFdy(C.z)) < 0.02) {
- A -= dFdy(A) * (float(ssC.y & 1) - 0.5);
- }
-
- visibility = A;
-}
diff --git a/drivers/gles2/shaders/ssao_blur.glsl b/drivers/gles2/shaders/ssao_blur.glsl
deleted file mode 100644
index f065cd74eb..0000000000
--- a/drivers/gles2/shaders/ssao_blur.glsl
+++ /dev/null
@@ -1,116 +0,0 @@
-/* clang-format off */
-[vertex]
-
-layout(location = 0) in highp vec4 vertex_attrib;
-/* clang-format on */
-
-void main() {
- gl_Position = vertex_attrib;
- gl_Position.z = 1.0;
-}
-
-/* clang-format off */
-[fragment]
-
-uniform sampler2D source_ssao; //texunit:0
-/* clang-format on */
-uniform sampler2D source_depth; //texunit:1
-uniform sampler2D source_normal; //texunit:3
-
-layout(location = 0) out float visibility;
-
-//////////////////////////////////////////////////////////////////////////////////////////////
-// Tunable Parameters:
-
-/** Increase to make depth edges crisper. Decrease to reduce flicker. */
-uniform float edge_sharpness;
-
-/** Step in 2-pixel intervals since we already blurred against neighbors in the
- first AO pass. This constant can be increased while R decreases to improve
- performance at the expense of some dithering artifacts.
-
- Morgan found that a scale of 3 left a 1-pixel checkerboard grid that was
- unobjectionable after shading was applied but eliminated most temporal incoherence
- from using small numbers of sample taps.
- */
-
-uniform int filter_scale;
-
-/** Filter radius in pixels. This will be multiplied by SCALE. */
-#define R (4)
-
-//////////////////////////////////////////////////////////////////////////////////////////////
-
-// Gaussian coefficients
-const float gaussian[R + 1] =
- //float[](0.356642, 0.239400, 0.072410, 0.009869);
- //float[](0.398943, 0.241971, 0.053991, 0.004432, 0.000134); // stddev = 1.0
- float[](0.153170, 0.144893, 0.122649, 0.092902, 0.062970); // stddev = 2.0
-//float[](0.111220, 0.107798, 0.098151, 0.083953, 0.067458, 0.050920, 0.036108); // stddev = 3.0
-
-/** (1, 0) or (0, 1)*/
-uniform ivec2 axis;
-
-uniform float camera_z_far;
-uniform float camera_z_near;
-
-uniform ivec2 screen_size;
-
-void main() {
- ivec2 ssC = ivec2(gl_FragCoord.xy);
-
- float depth = texelFetch(source_depth, ssC, 0).r;
- //vec3 normal = texelFetch(source_normal,ssC,0).rgb * 2.0 - 1.0;
-
- depth = depth * 2.0 - 1.0;
- depth = 2.0 * camera_z_near * camera_z_far / (camera_z_far + camera_z_near - depth * (camera_z_far - camera_z_near));
-
- float depth_divide = 1.0 / camera_z_far;
-
- //depth *= depth_divide;
-
- /*
- if (depth > camera_z_far * 0.999) {
- discard; //skybox
- }
- */
-
- float sum = texelFetch(source_ssao, ssC, 0).r;
-
- // Base weight for depth falloff. Increase this for more blurriness,
- // decrease it for better edge discrimination
- float BASE = gaussian[0];
- float totalWeight = BASE;
- sum *= totalWeight;
-
- ivec2 clamp_limit = screen_size - ivec2(1);
-
- for (int r = -R; r <= R; ++r) {
- // We already handled the zero case above. This loop should be unrolled and the static branch optimized out,
- // so the IF statement has no runtime cost
- if (r != 0) {
- ivec2 ppos = ssC + axis * (r * filter_scale);
- float value = texelFetch(source_ssao, clamp(ppos, ivec2(0), clamp_limit), 0).r;
- ivec2 rpos = clamp(ppos, ivec2(0), clamp_limit);
- float temp_depth = texelFetch(source_depth, rpos, 0).r;
- //vec3 temp_normal = texelFetch(source_normal, rpos, 0).rgb * 2.0 - 1.0;
-
- temp_depth = temp_depth * 2.0 - 1.0;
- temp_depth = 2.0 * camera_z_near * camera_z_far / (camera_z_far + camera_z_near - temp_depth * (camera_z_far - camera_z_near));
- // temp_depth *= depth_divide;
-
- // spatial domain: offset gaussian tap
- float weight = 0.3 + gaussian[abs(r)];
- //weight *= max(0.0,dot(temp_normal,normal));
-
- // range domain (the "bilateral" weight). As depth difference increases, decrease weight.
- weight *= max(0.0, 1.0 - edge_sharpness * abs(temp_depth - depth));
-
- sum += value * weight;
- totalWeight += weight;
- }
- }
-
- const float epsilon = 0.0001;
- visibility = sum / (totalWeight + epsilon);
-}
diff --git a/drivers/gles2/shaders/ssao_minify.glsl b/drivers/gles2/shaders/ssao_minify.glsl
deleted file mode 100644
index f654e00a4f..0000000000
--- a/drivers/gles2/shaders/ssao_minify.glsl
+++ /dev/null
@@ -1,54 +0,0 @@
-/* clang-format off */
-[vertex]
-
-layout(location = 0) in highp vec4 vertex_attrib;
-/* clang-format on */
-
-void main() {
- gl_Position = vertex_attrib;
-}
-
-/* clang-format off */
-[fragment]
-
-#ifdef MINIFY_START
-
-#define SDEPTH_TYPE highp sampler2D
-uniform float camera_z_far;
-uniform float camera_z_near;
-/* clang-format on */
-
-#else
-
-#define SDEPTH_TYPE mediump usampler2D
-
-#endif
-
-uniform SDEPTH_TYPE source_depth; //texunit:0
-
-uniform ivec2 from_size;
-uniform int source_mipmap;
-
-layout(location = 0) out mediump uint depth;
-
-void main() {
- ivec2 ssP = ivec2(gl_FragCoord.xy);
-
- // Rotated grid subsampling to avoid XY directional bias or Z precision bias while downsampling.
- // On DX9, the bit-and can be implemented with floating-point modulo
-
-#ifdef MINIFY_START
- float fdepth = texelFetch(source_depth, clamp(ssP * 2 + ivec2(ssP.y & 1, ssP.x & 1), ivec2(0), from_size - ivec2(1)), source_mipmap).r;
- fdepth = fdepth * 2.0 - 1.0;
-#ifdef USE_ORTHOGONAL_PROJECTION
- fdepth = ((fdepth + (camera_z_far + camera_z_near) / (camera_z_far - camera_z_near)) * (camera_z_far - camera_z_near)) / 2.0;
-#else
- fdepth = 2.0 * camera_z_near * camera_z_far / (camera_z_far + camera_z_near - fdepth * (camera_z_far - camera_z_near));
-#endif
- fdepth /= camera_z_far;
- depth = uint(clamp(fdepth * 65535.0, 0.0, 65535.0));
-
-#else
- depth = texelFetch(source_depth, clamp(ssP * 2 + ivec2(ssP.y & 1, ssP.x & 1), ivec2(0), from_size - ivec2(1)), source_mipmap).r;
-#endif
-}
diff --git a/drivers/gles2/shaders/stdlib.glsl b/drivers/gles2/shaders/stdlib.glsl
deleted file mode 100644
index 807036dda6..0000000000
--- a/drivers/gles2/shaders/stdlib.glsl
+++ /dev/null
@@ -1,440 +0,0 @@
-
-vec2 select2(vec2 a, vec2 b, bvec2 c) {
- vec2 ret;
-
- ret.x = c.x ? b.x : a.x;
- ret.y = c.y ? b.y : a.y;
-
- return ret;
-}
-
-vec3 select3(vec3 a, vec3 b, bvec3 c) {
- vec3 ret;
-
- ret.x = c.x ? b.x : a.x;
- ret.y = c.y ? b.y : a.y;
- ret.z = c.z ? b.z : a.z;
-
- return ret;
-}
-
-vec4 select4(vec4 a, vec4 b, bvec4 c) {
- vec4 ret;
-
- ret.x = c.x ? b.x : a.x;
- ret.y = c.y ? b.y : a.y;
- ret.z = c.z ? b.z : a.z;
- ret.w = c.w ? b.w : a.w;
-
- return ret;
-}
-
-highp vec4 texel2DFetch(highp sampler2D tex, ivec2 size, ivec2 coord) {
- float x_coord = float(2 * coord.x + 1) / float(size.x * 2);
- float y_coord = float(2 * coord.y + 1) / float(size.y * 2);
-
- return texture2DLod(tex, vec2(x_coord, y_coord), 0.0);
-}
-
-#if defined(SINH_USED)
-
-highp float sinh(highp float x) {
- return 0.5 * (exp(x) - exp(-x));
-}
-
-highp vec2 sinh(highp vec2 x) {
- return 0.5 * vec2(exp(x.x) - exp(-x.x), exp(x.y) - exp(-x.y));
-}
-
-highp vec3 sinh(highp vec3 x) {
- return 0.5 * vec3(exp(x.x) - exp(-x.x), exp(x.y) - exp(-x.y), exp(x.z) - exp(-x.z));
-}
-
-highp vec4 sinh(highp vec4 x) {
- return 0.5 * vec4(exp(x.x) - exp(-x.x), exp(x.y) - exp(-x.y), exp(x.z) - exp(-x.z), exp(x.w) - exp(-x.w));
-}
-
-#endif
-
-#if defined(COSH_USED)
-
-highp float cosh(highp float x) {
- return 0.5 * (exp(x) + exp(-x));
-}
-
-highp vec2 cosh(highp vec2 x) {
- return 0.5 * vec2(exp(x.x) + exp(-x.x), exp(x.y) + exp(-x.y));
-}
-
-highp vec3 cosh(highp vec3 x) {
- return 0.5 * vec3(exp(x.x) + exp(-x.x), exp(x.y) + exp(-x.y), exp(x.z) + exp(-x.z));
-}
-
-highp vec4 cosh(highp vec4 x) {
- return 0.5 * vec4(exp(x.x) + exp(-x.x), exp(x.y) + exp(-x.y), exp(x.z) + exp(-x.z), exp(x.w) + exp(-x.w));
-}
-
-#endif
-
-#if defined(TANH_USED)
-
-highp float tanh(highp float x) {
- highp float exp2x = exp(2.0 * x);
- return (exp2x - 1.0) / (exp2x + 1.0);
-}
-
-highp vec2 tanh(highp vec2 x) {
- highp float exp2x = exp(2.0 * x.x);
- highp float exp2y = exp(2.0 * x.y);
- return vec2((exp2x - 1.0) / (exp2x + 1.0), (exp2y - 1.0) / (exp2y + 1.0));
-}
-
-highp vec3 tanh(highp vec3 x) {
- highp float exp2x = exp(2.0 * x.x);
- highp float exp2y = exp(2.0 * x.y);
- highp float exp2z = exp(2.0 * x.z);
- return vec3((exp2x - 1.0) / (exp2x + 1.0), (exp2y - 1.0) / (exp2y + 1.0), (exp2z - 1.0) / (exp2z + 1.0));
-}
-
-highp vec4 tanh(highp vec4 x) {
- highp float exp2x = exp(2.0 * x.x);
- highp float exp2y = exp(2.0 * x.y);
- highp float exp2z = exp(2.0 * x.z);
- highp float exp2w = exp(2.0 * x.w);
- return vec4((exp2x - 1.0) / (exp2x + 1.0), (exp2y - 1.0) / (exp2y + 1.0), (exp2z - 1.0) / (exp2z + 1.0), (exp2w - 1.0) / (exp2w + 1.0));
-}
-
-#endif
-
-#if defined(ASINH_USED)
-
-highp float asinh(highp float x) {
- return sign(x) * log(abs(x) + sqrt(1.0 + x * x));
-}
-
-highp vec2 asinh(highp vec2 x) {
- return vec2(sign(x.x) * log(abs(x.x) + sqrt(1.0 + x.x * x.x)), sign(x.y) * log(abs(x.y) + sqrt(1.0 + x.y * x.y)));
-}
-
-highp vec3 asinh(highp vec3 x) {
- return vec3(sign(x.x) * log(abs(x.x) + sqrt(1.0 + x.x * x.x)), sign(x.y) * log(abs(x.y) + sqrt(1.0 + x.y * x.y)), sign(x.z) * log(abs(x.z) + sqrt(1.0 + x.z * x.z)));
-}
-
-highp vec4 asinh(highp vec4 x) {
- return vec4(sign(x.x) * log(abs(x.x) + sqrt(1.0 + x.x * x.x)), sign(x.y) * log(abs(x.y) + sqrt(1.0 + x.y * x.y)), sign(x.z) * log(abs(x.z) + sqrt(1.0 + x.z * x.z)), sign(x.w) * log(abs(x.w) + sqrt(1.0 + x.w * x.w)));
-}
-
-#endif
-
-#if defined(ACOSH_USED)
-
-highp float acosh(highp float x) {
- return log(x + sqrt(x * x - 1.0));
-}
-
-highp vec2 acosh(highp vec2 x) {
- return vec2(log(x.x + sqrt(x.x * x.x - 1.0)), log(x.y + sqrt(x.y * x.y - 1.0)));
-}
-
-highp vec3 acosh(highp vec3 x) {
- return vec3(log(x.x + sqrt(x.x * x.x - 1.0)), log(x.y + sqrt(x.y * x.y - 1.0)), log(x.z + sqrt(x.z * x.z - 1.0)));
-}
-
-highp vec4 acosh(highp vec4 x) {
- return vec4(log(x.x + sqrt(x.x * x.x - 1.0)), log(x.y + sqrt(x.y * x.y - 1.0)), log(x.z + sqrt(x.z * x.z - 1.0)), log(x.w + sqrt(x.w * x.w - 1.0)));
-}
-
-#endif
-
-#if defined(ATANH_USED)
-
-highp float atanh(highp float x) {
- return 0.5 * log((1.0 + x) / (1.0 - x));
-}
-
-highp vec2 atanh(highp vec2 x) {
- return 0.5 * vec2(log((1.0 + x.x) / (1.0 - x.x)), log((1.0 + x.y) / (1.0 - x.y)));
-}
-
-highp vec3 atanh(highp vec3 x) {
- return 0.5 * vec3(log((1.0 + x.x) / (1.0 - x.x)), log((1.0 + x.y) / (1.0 - x.y)), log((1.0 + x.z) / (1.0 - x.z)));
-}
-
-highp vec4 atanh(highp vec4 x) {
- return 0.5 * vec4(log((1.0 + x.x) / (1.0 - x.x)), log((1.0 + x.y) / (1.0 - x.y)), log((1.0 + x.z) / (1.0 - x.z)), log((1.0 + x.w) / (1.0 - x.w)));
-}
-
-#endif
-
-#if defined(ROUND_USED)
-
-highp float round(highp float x) {
- return floor(x + 0.5);
-}
-
-highp vec2 round(highp vec2 x) {
- return floor(x + vec2(0.5));
-}
-
-highp vec3 round(highp vec3 x) {
- return floor(x + vec3(0.5));
-}
-
-highp vec4 round(highp vec4 x) {
- return floor(x + vec4(0.5));
-}
-
-#endif
-
-#if defined(ROUND_EVEN_USED)
-
-highp float roundEven(highp float x) {
- highp float t = x + 0.5;
- highp float f = floor(t);
- highp float r;
- if (t == f) {
- if (x > 0)
- r = f - mod(f, 2);
- else
- r = f + mod(f, 2);
- } else
- r = f;
- return r;
-}
-
-highp vec2 roundEven(highp vec2 x) {
- return vec2(roundEven(x.x), roundEven(x.y));
-}
-
-highp vec3 roundEven(highp vec3 x) {
- return vec3(roundEven(x.x), roundEven(x.y), roundEven(x.z));
-}
-
-highp vec4 roundEven(highp vec4 x) {
- return vec4(roundEven(x.x), roundEven(x.y), roundEven(x.z), roundEven(x.w));
-}
-
-#endif
-
-#if defined(IS_INF_USED)
-
-bool isinf(highp float x) {
- return (2 * x == x) && (x != 0);
-}
-
-bvec2 isinf(highp vec2 x) {
- return bvec2((2 * x.x == x.x) && (x.x != 0), (2 * x.y == x.y) && (x.y != 0));
-}
-
-bvec3 isinf(highp vec3 x) {
- return bvec3((2 * x.x == x.x) && (x.x != 0), (2 * x.y == x.y) && (x.y != 0), (2 * x.z == x.z) && (x.z != 0));
-}
-
-bvec4 isinf(highp vec4 x) {
- return bvec4((2 * x.x == x.x) && (x.x != 0), (2 * x.y == x.y) && (x.y != 0), (2 * x.z == x.z) && (x.z != 0), (2 * x.w == x.w) && (x.w != 0));
-}
-
-#endif
-
-#if defined(IS_NAN_USED)
-
-bool isnan(highp float x) {
- return x != x;
-}
-
-bvec2 isnan(highp vec2 x) {
- return bvec2(x.x != x.x, x.y != x.y);
-}
-
-bvec3 isnan(highp vec3 x) {
- return bvec3(x.x != x.x, x.y != x.y, x.z != x.z);
-}
-
-bvec4 isnan(highp vec4 x) {
- return bvec4(x.x != x.x, x.y != x.y, x.z != x.z, x.w != x.w);
-}
-
-#endif
-
-#if defined(TRUNC_USED)
-
-highp float trunc(highp float x) {
- return x < 0 ? -floor(-x) : floor(x);
-}
-
-highp vec2 trunc(highp vec2 x) {
- return vec2(x.x < 0 ? -floor(-x.x) : floor(x.x), x.y < 0 ? -floor(-x.y) : floor(x.y));
-}
-
-highp vec3 trunc(highp vec3 x) {
- return vec3(x.x < 0 ? -floor(-x.x) : floor(x.x), x.y < 0 ? -floor(-x.y) : floor(x.y), x.z < 0 ? -floor(-x.z) : floor(x.z));
-}
-
-highp vec4 trunc(highp vec4 x) {
- return vec4(x.x < 0 ? -floor(-x.x) : floor(x.x), x.y < 0 ? -floor(-x.y) : floor(x.y), x.z < 0 ? -floor(-x.z) : floor(x.z), x.w < 0 ? -floor(-x.w) : floor(x.w));
-}
-
-#endif
-
-#if defined(DETERMINANT_USED)
-
-highp float determinant(highp mat2 m) {
- return m[0].x * m[1].y - m[1].x * m[0].y;
-}
-
-highp float determinant(highp mat3 m) {
- return m[0].x * (m[1].y * m[2].z - m[2].y * m[1].z) - m[1].x * (m[0].y * m[2].z - m[2].y * m[0].z) + m[2].x * (m[0].y * m[1].z - m[1].y * m[0].z);
-}
-
-highp float determinant(highp mat4 m) {
- highp float s00 = m[2].z * m[3].w - m[3].z * m[2].w;
- highp float s01 = m[2].y * m[3].w - m[3].y * m[2].w;
- highp float s02 = m[2].y * m[3].z - m[3].y * m[2].z;
- highp float s03 = m[2].x * m[3].w - m[3].x * m[2].w;
- highp float s04 = m[2].x * m[3].z - m[3].x * m[2].z;
- highp float s05 = m[2].x * m[3].y - m[3].x * m[2].y;
- highp vec4 c = vec4((m[1].y * s00 - m[1].z * s01 + m[1].w * s02), -(m[1].x * s00 - m[1].z * s03 + m[1].w * s04), (m[1].x * s01 - m[1].y * s03 + m[1].w * s05), -(m[1].x * s02 - m[1].y * s04 + m[1].z * s05));
- return m[0].x * c.x + m[0].y * c.y + m[0].z * c.z + m[0].w * c.w;
-}
-
-#endif
-
-#if defined(INVERSE_USED)
-
-highp mat2 inverse(highp mat2 m) {
- highp float d = 1.0 / (m[0].x * m[1].y - m[1].x * m[0].y);
- return mat2(
- vec2(m[1].y * d, -m[0].y * d),
- vec2(-m[1].x * d, m[0].x * d));
-}
-
-highp mat3 inverse(highp mat3 m) {
- highp float d = 1.0 / (m[0].x * (m[1].y * m[2].z - m[2].y * m[1].z) - m[1].x * (m[0].y * m[2].z - m[2].y * m[0].z) + m[2].x * (m[0].y * m[1].z - m[1].y * m[0].z));
- return mat3(
- vec3((m[1].y * m[2].z - m[2].y * m[1].z), -(m[1].x * m[2].z - m[2].x * m[1].z), (m[1].x * m[2].y - m[2].x * m[1].y)) * d,
- vec3(-(m[0].y * m[2].z - m[2].y * m[0].z), (m[0].x * m[2].z - m[2].x * m[0].z), -(m[0].x * m[2].y - m[2].x * m[0].y)) * d,
- vec3((m[0].y * m[1].z - m[1].y * m[0].z), -(m[0].x * m[1].z - m[1].x * m[0].z), (m[0].x * m[1].y - m[1].x * m[0].y)) * d);
-}
-
-highp mat4 inverse(highp mat4 m) {
- highp float c00 = m[2].z * m[3].w - m[3].z * m[2].w;
- highp float c02 = m[1].z * m[3].w - m[3].z * m[1].w;
- highp float c03 = m[1].z * m[2].w - m[2].z * m[1].w;
-
- highp float c04 = m[2].y * m[3].w - m[3].y * m[2].w;
- highp float c06 = m[1].y * m[3].w - m[3].y * m[1].w;
- highp float c07 = m[1].y * m[2].w - m[2].y * m[1].w;
-
- highp float c08 = m[2].y * m[3].z - m[3].y * m[2].z;
- highp float c10 = m[1].y * m[3].z - m[3].y * m[1].z;
- highp float c11 = m[1].y * m[2].z - m[2].y * m[1].z;
-
- highp float c12 = m[2].x * m[3].w - m[3].x * m[2].w;
- highp float c14 = m[1].x * m[3].w - m[3].x * m[1].w;
- highp float c15 = m[1].x * m[2].w - m[2].x * m[1].w;
-
- highp float c16 = m[2].x * m[3].z - m[3].x * m[2].z;
- highp float c18 = m[1].x * m[3].z - m[3].x * m[1].z;
- highp float c19 = m[1].x * m[2].z - m[2].x * m[1].z;
-
- highp float c20 = m[2].x * m[3].y - m[3].x * m[2].y;
- highp float c22 = m[1].x * m[3].y - m[3].x * m[1].y;
- highp float c23 = m[1].x * m[2].y - m[2].x * m[1].y;
-
- vec4 f0 = vec4(c00, c00, c02, c03);
- vec4 f1 = vec4(c04, c04, c06, c07);
- vec4 f2 = vec4(c08, c08, c10, c11);
- vec4 f3 = vec4(c12, c12, c14, c15);
- vec4 f4 = vec4(c16, c16, c18, c19);
- vec4 f5 = vec4(c20, c20, c22, c23);
-
- vec4 v0 = vec4(m[1].x, m[0].x, m[0].x, m[0].x);
- vec4 v1 = vec4(m[1].y, m[0].y, m[0].y, m[0].y);
- vec4 v2 = vec4(m[1].z, m[0].z, m[0].z, m[0].z);
- vec4 v3 = vec4(m[1].w, m[0].w, m[0].w, m[0].w);
-
- vec4 inv0 = vec4(v1 * f0 - v2 * f1 + v3 * f2);
- vec4 inv1 = vec4(v0 * f0 - v2 * f3 + v3 * f4);
- vec4 inv2 = vec4(v0 * f1 - v1 * f3 + v3 * f5);
- vec4 inv3 = vec4(v0 * f2 - v1 * f4 + v2 * f5);
-
- vec4 sa = vec4(+1, -1, +1, -1);
- vec4 sb = vec4(-1, +1, -1, +1);
-
- mat4 inv = mat4(inv0 * sa, inv1 * sb, inv2 * sa, inv3 * sb);
-
- vec4 r0 = vec4(inv[0].x, inv[1].x, inv[2].x, inv[3].x);
- vec4 d0 = vec4(m[0] * r0);
-
- highp float d1 = (d0.x + d0.y) + (d0.z + d0.w);
- highp float d = 1.0 / d1;
-
- return inv * d;
-}
-
-#endif
-
-#ifndef USE_GLES_OVER_GL
-
-#if defined(TRANSPOSE_USED)
-
-highp mat2 transpose(highp mat2 m) {
- return mat2(
- vec2(m[0].x, m[1].x),
- vec2(m[0].y, m[1].y));
-}
-
-highp mat3 transpose(highp mat3 m) {
- return mat3(
- vec3(m[0].x, m[1].x, m[2].x),
- vec3(m[0].y, m[1].y, m[2].y),
- vec3(m[0].z, m[1].z, m[2].z));
-}
-
-#endif
-
-highp mat4 transpose(highp mat4 m) {
- return mat4(
- vec4(m[0].x, m[1].x, m[2].x, m[3].x),
- vec4(m[0].y, m[1].y, m[2].y, m[3].y),
- vec4(m[0].z, m[1].z, m[2].z, m[3].z),
- vec4(m[0].w, m[1].w, m[2].w, m[3].w));
-}
-
-#if defined(OUTER_PRODUCT_USED)
-
-highp mat2 outerProduct(highp vec2 c, highp vec2 r) {
- return mat2(c * r.x, c * r.y);
-}
-
-highp mat3 outerProduct(highp vec3 c, highp vec3 r) {
- return mat3(c * r.x, c * r.y, c * r.z);
-}
-
-highp mat4 outerProduct(highp vec4 c, highp vec4 r) {
- return mat4(c * r.x, c * r.y, c * r.z, c * r.w);
-}
-
-#endif
-
-#if defined(FMA_USED)
-
-highp float fma(highp float a, highp float b, highp float c) {
- return a * b + c;
-}
-
-highp vec2 fma(highp vec2 a, highp vec2 b, highp vec2 c) {
- return a * b + c;
-}
-
-highp vec3 fma(highp vec3 a, highp vec3 b, highp vec3 c) {
- return a * b + c;
-}
-
-highp vec4 fma(highp vec4 a, highp vec4 b, highp vec4 c) {
- return a * b + c;
-}
-
-#endif
-
-#endif
diff --git a/drivers/gles2/shaders/subsurf_scattering.glsl b/drivers/gles2/shaders/subsurf_scattering.glsl
deleted file mode 100644
index d0c34cf1b0..0000000000
--- a/drivers/gles2/shaders/subsurf_scattering.glsl
+++ /dev/null
@@ -1,171 +0,0 @@
-/* clang-format off */
-[vertex]
-
-layout(location = 0) in highp vec4 vertex_attrib;
-/* clang-format on */
-layout(location = 4) in vec2 uv_in;
-
-out vec2 uv_interp;
-
-void main() {
- uv_interp = uv_in;
- gl_Position = vertex_attrib;
-}
-
-/* clang-format off */
-[fragment]
-
-//#define QUALIFIER uniform // some guy on the interweb says it may be faster with this
-#define QUALIFIER const
-
-#ifdef USE_25_SAMPLES
-const int kernel_size = 25;
-/* clang-format on */
-QUALIFIER vec2 kernel[25] = vec2[](
- vec2(0.530605, 0.0),
- vec2(0.000973794, -3.0),
- vec2(0.00333804, -2.52083),
- vec2(0.00500364, -2.08333),
- vec2(0.00700976, -1.6875),
- vec2(0.0094389, -1.33333),
- vec2(0.0128496, -1.02083),
- vec2(0.017924, -0.75),
- vec2(0.0263642, -0.520833),
- vec2(0.0410172, -0.333333),
- vec2(0.0493588, -0.1875),
- vec2(0.0402784, -0.0833333),
- vec2(0.0211412, -0.0208333),
- vec2(0.0211412, 0.0208333),
- vec2(0.0402784, 0.0833333),
- vec2(0.0493588, 0.1875),
- vec2(0.0410172, 0.333333),
- vec2(0.0263642, 0.520833),
- vec2(0.017924, 0.75),
- vec2(0.0128496, 1.02083),
- vec2(0.0094389, 1.33333),
- vec2(0.00700976, 1.6875),
- vec2(0.00500364, 2.08333),
- vec2(0.00333804, 2.52083),
- vec2(0.000973794, 3.0));
-#endif //USE_25_SAMPLES
-
-#ifdef USE_17_SAMPLES
-const int kernel_size = 17;
-QUALIFIER vec2 kernel[17] = vec2[](
- vec2(0.536343, 0.0),
- vec2(0.00317394, -2.0),
- vec2(0.0100386, -1.53125),
- vec2(0.0144609, -1.125),
- vec2(0.0216301, -0.78125),
- vec2(0.0347317, -0.5),
- vec2(0.0571056, -0.28125),
- vec2(0.0582416, -0.125),
- vec2(0.0324462, -0.03125),
- vec2(0.0324462, 0.03125),
- vec2(0.0582416, 0.125),
- vec2(0.0571056, 0.28125),
- vec2(0.0347317, 0.5),
- vec2(0.0216301, 0.78125),
- vec2(0.0144609, 1.125),
- vec2(0.0100386, 1.53125),
- vec2(0.00317394, 2.0));
-#endif //USE_17_SAMPLES
-
-#ifdef USE_11_SAMPLES
-const int kernel_size = 11;
-QUALIFIER vec2 kernel[11] = vec2[](
- vec2(0.560479, 0.0),
- vec2(0.00471691, -2.0),
- vec2(0.0192831, -1.28),
- vec2(0.03639, -0.72),
- vec2(0.0821904, -0.32),
- vec2(0.0771802, -0.08),
- vec2(0.0771802, 0.08),
- vec2(0.0821904, 0.32),
- vec2(0.03639, 0.72),
- vec2(0.0192831, 1.28),
- vec2(0.00471691, 2.0));
-#endif //USE_11_SAMPLES
-
-uniform float max_radius;
-uniform float camera_z_far;
-uniform float camera_z_near;
-uniform float unit_size;
-uniform vec2 dir;
-in vec2 uv_interp;
-
-uniform sampler2D source_diffuse; //texunit:0
-uniform sampler2D source_sss; //texunit:1
-uniform sampler2D source_depth; //texunit:2
-
-layout(location = 0) out vec4 frag_color;
-
-void main() {
- float strength = texture(source_sss, uv_interp).r;
- strength *= strength; //stored as sqrt
-
- // Fetch color of current pixel:
- vec4 base_color = texture(source_diffuse, uv_interp);
-
- if (strength > 0.0) {
- // Fetch linear depth of current pixel:
- float depth = texture(source_depth, uv_interp).r * 2.0 - 1.0;
-#ifdef USE_ORTHOGONAL_PROJECTION
- depth = ((depth + (camera_z_far + camera_z_near) / (camera_z_far - camera_z_near)) * (camera_z_far - camera_z_near)) / 2.0;
- float scale = unit_size; //remember depth is negative by default in OpenGL
-#else
- depth = 2.0 * camera_z_near * camera_z_far / (camera_z_far + camera_z_near - depth * (camera_z_far - camera_z_near));
- float scale = unit_size / depth; //remember depth is negative by default in OpenGL
-#endif
-
- // Calculate the final step to fetch the surrounding pixels:
- vec2 step = max_radius * scale * dir;
- step *= strength; // Modulate it using the alpha channel.
- step *= 1.0 / 3.0; // Divide by 3 as the kernels range from -3 to 3.
-
- // Accumulate the center sample:
- vec3 color_accum = base_color.rgb;
- color_accum *= kernel[0].x;
-#ifdef ENABLE_STRENGTH_WEIGHTING
- float color_weight = kernel[0].x;
-#endif
-
- // Accumulate the other samples:
- for (int i = 1; i < kernel_size; i++) {
- // Fetch color and depth for current sample:
- vec2 offset = uv_interp + kernel[i].y * step;
- vec3 color = texture(source_diffuse, offset).rgb;
-
-#ifdef ENABLE_FOLLOW_SURFACE
- // If the difference in depth is huge, we lerp color back to "colorM":
- float depth_cmp = texture(source_depth, offset).r * 2.0 - 1.0;
-
-#ifdef USE_ORTHOGONAL_PROJECTION
- depth_cmp = ((depth_cmp + (camera_z_far + camera_z_near) / (camera_z_far - camera_z_near)) * (camera_z_far - camera_z_near)) / 2.0;
-#else
- depth_cmp = 2.0 * camera_z_near * camera_z_far / (camera_z_far + camera_z_near - depth_cmp * (camera_z_far - camera_z_near));
-#endif
-
- float s = clamp(300.0f * scale * max_radius * abs(depth - depth_cmp), 0.0, 1.0);
- color = mix(color, base_color.rgb, s);
-#endif
-
- // Accumulate:
- color *= kernel[i].x;
-
-#ifdef ENABLE_STRENGTH_WEIGHTING
- float color_s = texture(source_sss, offset).r;
- color_weight += color_s * kernel[i].x;
- color *= color_s;
-#endif
- color_accum += color;
- }
-
-#ifdef ENABLE_STRENGTH_WEIGHTING
- color_accum /= color_weight;
-#endif
- frag_color = vec4(color_accum, base_color.a); //keep alpha (used for SSAO)
- } else {
- frag_color = base_color;
- }
-}
diff --git a/drivers/gles2/shaders/tonemap.glsl b/drivers/gles2/shaders/tonemap.glsl
deleted file mode 100644
index 585d821626..0000000000
--- a/drivers/gles2/shaders/tonemap.glsl
+++ /dev/null
@@ -1,289 +0,0 @@
-/* clang-format off */
-[vertex]
-
-#ifdef USE_GLES_OVER_GL
-#define lowp
-#define mediump
-#define highp
-#else
-precision highp float;
-precision highp int;
-#endif
-
-attribute vec2 vertex_attrib; // attrib:0
-/* clang-format on */
-attribute vec2 uv_in; // attrib:4
-
-varying vec2 uv_interp;
-
-void main() {
- gl_Position = vec4(vertex_attrib, 0.0, 1.0);
-
- uv_interp = uv_in;
-}
-
-/* clang-format off */
-[fragment]
-
-
-// texture2DLodEXT and textureCubeLodEXT are fragment shader specific.
-// Do not copy these defines in the vertex section.
-#ifndef USE_GLES_OVER_GL
-#ifdef GL_EXT_shader_texture_lod
-#extension GL_EXT_shader_texture_lod : enable
-#define texture2DLod(img, coord, lod) texture2DLodEXT(img, coord, lod)
-#define textureCubeLod(img, coord, lod) textureCubeLodEXT(img, coord, lod)
-#endif
-#endif // !USE_GLES_OVER_GL
-
-#ifdef GL_ARB_shader_texture_lod
-#extension GL_ARB_shader_texture_lod : enable
-#endif
-
-#if !defined(GL_EXT_shader_texture_lod) && !defined(GL_ARB_shader_texture_lod)
-#define texture2DLod(img, coord, lod) texture2D(img, coord, lod)
-#define textureCubeLod(img, coord, lod) textureCube(img, coord, lod)
-#endif
-
-// Allows the use of bitshift operators for bicubic upscale
-#ifdef GL_EXT_gpu_shader4
-#extension GL_EXT_gpu_shader4 : enable
-#endif
-
-#ifdef USE_GLES_OVER_GL
-#define lowp
-#define mediump
-#define highp
-#else
-#if defined(USE_HIGHP_PRECISION)
-precision highp float;
-precision highp int;
-#else
-precision mediump float;
-precision mediump int;
-#endif
-#endif
-
-#include "stdlib.glsl"
-
-varying vec2 uv_interp;
-/* clang-format on */
-
-uniform highp sampler2D source; //texunit:0
-
-#if defined(USE_GLOW_LEVEL1) || defined(USE_GLOW_LEVEL2) || defined(USE_GLOW_LEVEL3) || defined(USE_GLOW_LEVEL4) || defined(USE_GLOW_LEVEL5) || defined(USE_GLOW_LEVEL6) || defined(USE_GLOW_LEVEL7)
-#define USING_GLOW // only use glow when at least one glow level is selected
-
-#ifdef USE_MULTI_TEXTURE_GLOW
-uniform highp sampler2D source_glow1; //texunit:1
-uniform highp sampler2D source_glow2; //texunit:2
-uniform highp sampler2D source_glow3; //texunit:3
-uniform highp sampler2D source_glow4; //texunit:4
-uniform highp sampler2D source_glow5; //texunit:5
-uniform highp sampler2D source_glow6; //texunit:6
-uniform highp sampler2D source_glow7; //texunit:7
-#else
-uniform highp sampler2D source_glow; //texunit:1
-#endif
-uniform highp float glow_intensity;
-#endif
-
-#ifdef USE_BCS
-uniform vec3 bcs;
-#endif
-
-#ifdef USE_COLOR_CORRECTION
-uniform sampler2D color_correction; //texunit:2
-#endif
-
-#ifdef GL_EXT_gpu_shader4
-#ifdef USE_GLOW_FILTER_BICUBIC
-// w0, w1, w2, and w3 are the four cubic B-spline basis functions
-float w0(float a) {
- return (1.0 / 6.0) * (a * (a * (-a + 3.0) - 3.0) + 1.0);
-}
-
-float w1(float a) {
- return (1.0 / 6.0) * (a * a * (3.0 * a - 6.0) + 4.0);
-}
-
-float w2(float a) {
- return (1.0 / 6.0) * (a * (a * (-3.0 * a + 3.0) + 3.0) + 1.0);
-}
-
-float w3(float a) {
- return (1.0 / 6.0) * (a * a * a);
-}
-
-// g0 and g1 are the two amplitude functions
-float g0(float a) {
- return w0(a) + w1(a);
-}
-
-float g1(float a) {
- return w2(a) + w3(a);
-}
-
-// h0 and h1 are the two offset functions
-float h0(float a) {
- return -1.0 + w1(a) / (w0(a) + w1(a));
-}
-
-float h1(float a) {
- return 1.0 + w3(a) / (w2(a) + w3(a));
-}
-
-uniform ivec2 glow_texture_size;
-
-vec4 texture2D_bicubic(sampler2D tex, vec2 uv, int p_lod) {
- float lod = float(p_lod);
- vec2 tex_size = vec2(glow_texture_size >> p_lod);
- vec2 pixel_size = vec2(1.0) / tex_size;
-
- uv = uv * tex_size + vec2(0.5);
-
- vec2 iuv = floor(uv);
- vec2 fuv = fract(uv);
-
- float g0x = g0(fuv.x);
- float g1x = g1(fuv.x);
- float h0x = h0(fuv.x);
- float h1x = h1(fuv.x);
- float h0y = h0(fuv.y);
- float h1y = h1(fuv.y);
-
- vec2 p0 = (vec2(iuv.x + h0x, iuv.y + h0y) - vec2(0.5)) * pixel_size;
- vec2 p1 = (vec2(iuv.x + h1x, iuv.y + h0y) - vec2(0.5)) * pixel_size;
- vec2 p2 = (vec2(iuv.x + h0x, iuv.y + h1y) - vec2(0.5)) * pixel_size;
- vec2 p3 = (vec2(iuv.x + h1x, iuv.y + h1y) - vec2(0.5)) * pixel_size;
-
- return (g0(fuv.y) * (g0x * texture2DLod(tex, p0, lod) + g1x * texture2DLod(tex, p1, lod))) +
- (g1(fuv.y) * (g0x * texture2DLod(tex, p2, lod) + g1x * texture2DLod(tex, p3, lod)));
-}
-
-#define GLOW_TEXTURE_SAMPLE(m_tex, m_uv, m_lod) texture2D_bicubic(m_tex, m_uv, m_lod)
-#else //!USE_GLOW_FILTER_BICUBIC
-#define GLOW_TEXTURE_SAMPLE(m_tex, m_uv, m_lod) texture2DLod(m_tex, m_uv, float(m_lod))
-#endif //USE_GLOW_FILTER_BICUBIC
-
-#else //!GL_EXT_gpu_shader4
-#define GLOW_TEXTURE_SAMPLE(m_tex, m_uv, m_lod) texture2DLod(m_tex, m_uv, float(m_lod))
-#endif //GL_EXT_gpu_shader4
-
-vec3 apply_glow(vec3 color, vec3 glow) { // apply glow using the selected blending mode
-#ifdef USE_GLOW_REPLACE
- color = glow;
-#endif
-
-#ifdef USE_GLOW_SCREEN
- color = max((color + glow) - (color * glow), vec3(0.0));
-#endif
-
-#ifdef USE_GLOW_SOFTLIGHT
- glow = glow * vec3(0.5) + vec3(0.5);
-
- color.r = (glow.r <= 0.5) ? (color.r - (1.0 - 2.0 * glow.r) * color.r * (1.0 - color.r)) : (((glow.r > 0.5) && (color.r <= 0.25)) ? (color.r + (2.0 * glow.r - 1.0) * (4.0 * color.r * (4.0 * color.r + 1.0) * (color.r - 1.0) + 7.0 * color.r)) : (color.r + (2.0 * glow.r - 1.0) * (sqrt(color.r) - color.r)));
- color.g = (glow.g <= 0.5) ? (color.g - (1.0 - 2.0 * glow.g) * color.g * (1.0 - color.g)) : (((glow.g > 0.5) && (color.g <= 0.25)) ? (color.g + (2.0 * glow.g - 1.0) * (4.0 * color.g * (4.0 * color.g + 1.0) * (color.g - 1.0) + 7.0 * color.g)) : (color.g + (2.0 * glow.g - 1.0) * (sqrt(color.g) - color.g)));
- color.b = (glow.b <= 0.5) ? (color.b - (1.0 - 2.0 * glow.b) * color.b * (1.0 - color.b)) : (((glow.b > 0.5) && (color.b <= 0.25)) ? (color.b + (2.0 * glow.b - 1.0) * (4.0 * color.b * (4.0 * color.b + 1.0) * (color.b - 1.0) + 7.0 * color.b)) : (color.b + (2.0 * glow.b - 1.0) * (sqrt(color.b) - color.b)));
-#endif
-
-#if !defined(USE_GLOW_SCREEN) && !defined(USE_GLOW_SOFTLIGHT) && !defined(USE_GLOW_REPLACE) // no other selected -> additive
- color += glow;
-#endif
-
- return color;
-}
-
-vec3 apply_bcs(vec3 color, vec3 bcs) {
- color = mix(vec3(0.0), color, bcs.x);
- color = mix(vec3(0.5), color, bcs.y);
- color = mix(vec3(dot(vec3(1.0), color) * 0.33333), color, bcs.z);
-
- return color;
-}
-
-vec3 apply_color_correction(vec3 color, sampler2D correction_tex) {
- color.r = texture2D(correction_tex, vec2(color.r, 0.0)).r;
- color.g = texture2D(correction_tex, vec2(color.g, 0.0)).g;
- color.b = texture2D(correction_tex, vec2(color.b, 0.0)).b;
-
- return color;
-}
-
-void main() {
- vec3 color = texture2DLod(source, uv_interp, 0.0).rgb;
-
- // Glow
-
-#ifdef USING_GLOW
- vec3 glow = vec3(0.0);
-#ifdef USE_MULTI_TEXTURE_GLOW
-#ifdef USE_GLOW_LEVEL1
- glow += GLOW_TEXTURE_SAMPLE(source_glow1, uv_interp, 0).rgb;
-#ifdef USE_GLOW_LEVEL2
- glow += GLOW_TEXTURE_SAMPLE(source_glow2, uv_interp, 0).rgb;
-#ifdef USE_GLOW_LEVEL3
- glow += GLOW_TEXTURE_SAMPLE(source_glow3, uv_interp, 0).rgb;
-#ifdef USE_GLOW_LEVEL4
- glow += GLOW_TEXTURE_SAMPLE(source_glow4, uv_interp, 0).rgb;
-#ifdef USE_GLOW_LEVEL5
- glow += GLOW_TEXTURE_SAMPLE(source_glow5, uv_interp, 0).rgb;
-#ifdef USE_GLOW_LEVEL6
- glow += GLOW_TEXTURE_SAMPLE(source_glow6, uv_interp, 0).rgb;
-#ifdef USE_GLOW_LEVEL7
- glow += GLOW_TEXTURE_SAMPLE(source_glow7, uv_interp, 0).rgb;
-#endif
-#endif
-#endif
-#endif
-#endif
-#endif
-#endif
-
-#else
-
-#ifdef USE_GLOW_LEVEL1
- glow += GLOW_TEXTURE_SAMPLE(source_glow, uv_interp, 1).rgb;
-#endif
-
-#ifdef USE_GLOW_LEVEL2
- glow += GLOW_TEXTURE_SAMPLE(source_glow, uv_interp, 2).rgb;
-#endif
-
-#ifdef USE_GLOW_LEVEL3
- glow += GLOW_TEXTURE_SAMPLE(source_glow, uv_interp, 3).rgb;
-#endif
-
-#ifdef USE_GLOW_LEVEL4
- glow += GLOW_TEXTURE_SAMPLE(source_glow, uv_interp, 4).rgb;
-#endif
-
-#ifdef USE_GLOW_LEVEL5
- glow += GLOW_TEXTURE_SAMPLE(source_glow, uv_interp, 5).rgb;
-#endif
-
-#ifdef USE_GLOW_LEVEL6
- glow += GLOW_TEXTURE_SAMPLE(source_glow, uv_interp, 6).rgb;
-#endif
-
-#ifdef USE_GLOW_LEVEL7
- glow += GLOW_TEXTURE_SAMPLE(source_glow, uv_interp, 7).rgb;
-#endif
-#endif //USE_MULTI_TEXTURE_GLOW
-
- glow *= glow_intensity;
- color = apply_glow(color, glow);
-#endif
-
- // Additional effects
-
-#ifdef USE_BCS
- color = apply_bcs(color, bcs);
-#endif
-
-#ifdef USE_COLOR_CORRECTION
- color = apply_color_correction(color, color_correction);
-#endif
-
- gl_FragColor = vec4(color, 1.0);
-}
diff --git a/drivers/unix/os_unix.cpp b/drivers/unix/os_unix.cpp
index 9a5fc6d1a4..3c212cadb8 100644
--- a/drivers/unix/os_unix.cpp
+++ b/drivers/unix/os_unix.cpp
@@ -323,7 +323,7 @@ Error OS_Unix::execute(const String &p_path, const List<String> &p_arguments, bo
execvp(p_path.utf8().get_data(), &args[0]);
// still alive? something failed..
fprintf(stderr, "**ERROR** OS_Unix::execute - Could not create child process while executing: %s\n", p_path.utf8().get_data());
- abort();
+ raise(SIGKILL);
}
if (p_blocking) {
diff --git a/editor/connections_dialog.cpp b/editor/connections_dialog.cpp
index facd57418d..d3dff3f375 100644
--- a/editor/connections_dialog.cpp
+++ b/editor/connections_dialog.cpp
@@ -477,11 +477,6 @@ ConnectDialog::ConnectDialog() {
advanced->set_text(TTR("Advanced"));
advanced->connect("pressed", callable_mp(this, &ConnectDialog::_advanced_pressed));
- // Add spacing so the tree and inspector are the same size.
- Control *spacing = memnew(Control);
- spacing->set_custom_minimum_size(Size2(0, 4) * EDSCALE);
- vbc_right->add_child(spacing);
-
deferred = memnew(CheckBox);
deferred->set_h_size_flags(0);
deferred->set_text(TTR("Deferred"));
@@ -528,6 +523,10 @@ struct _ConnectionsDockMethodInfoSort {
}
};
+void ConnectionsDock::_filter_changed(const String &p_text) {
+ update_tree();
+}
+
/*
* Post-ConnectDialog callback for creating/editing connections.
* Creates or edits connections based on state of the ConnectDialog when "Connect" is pressed.
@@ -903,6 +902,7 @@ void ConnectionsDock::update_tree() {
String name;
if (!did_script) {
+ // Get script signals (including signals from any base scripts).
Ref<Script> scr = selectedNode->get_script();
if (scr.is_valid()) {
scr->get_script_signal_list(&node_signals2);
@@ -928,15 +928,16 @@ void ConnectionsDock::update_tree() {
icon = get_theme_icon("Object", "EditorIcons");
}
- TreeItem *pitem = nullptr;
+ TreeItem *section_item = nullptr;
+ // Create subsections.
if (node_signals2.size()) {
- pitem = tree->create_item(root);
- pitem->set_text(0, name);
- pitem->set_icon(0, icon);
- pitem->set_selectable(0, false);
- pitem->set_editable(0, false);
- pitem->set_custom_bg_color(0, get_theme_color("prop_subsection", "Editor"));
+ section_item = tree->create_item(root);
+ section_item->set_text(0, name);
+ section_item->set_icon(0, icon);
+ section_item->set_selectable(0, false);
+ section_item->set_editable(0, false);
+ section_item->set_custom_bg_color(0, get_theme_color("prop_subsection", "Editor"));
node_signals2.sort();
}
@@ -946,6 +947,12 @@ void ConnectionsDock::update_tree() {
StringName signal_name = mi.name;
String signaldesc = "(";
PackedStringArray argnames;
+
+ String filter_text = search_box->get_text();
+ if (!filter_text.is_subsequence_ofi(signal_name)) {
+ continue;
+ }
+
if (mi.arguments.size()) {
for (int i = 0; i < mi.arguments.size(); i++) {
PropertyInfo &pi = mi.arguments[i];
@@ -965,13 +972,14 @@ void ConnectionsDock::update_tree() {
}
signaldesc += ")";
- TreeItem *item = tree->create_item(pitem);
- item->set_text(0, String(signal_name) + signaldesc);
+ // Create the children of the subsection - the actual list of signals.
+ TreeItem *signal_item = tree->create_item(section_item);
+ signal_item->set_text(0, String(signal_name) + signaldesc);
Dictionary sinfo;
sinfo["name"] = signal_name;
sinfo["args"] = argnames;
- item->set_metadata(0, sinfo);
- item->set_icon(0, get_theme_icon("Signal", "EditorIcons"));
+ signal_item->set_metadata(0, sinfo);
+ signal_item->set_icon(0, get_theme_icon("Signal", "EditorIcons"));
// Set tooltip with the signal's documentation.
{
@@ -1007,7 +1015,7 @@ void ConnectionsDock::update_tree() {
}
// "::" separators used in make_custom_tooltip for formatting.
- item->set_tooltip(0, String(signal_name) + "::" + signaldesc + "::" + descr);
+ signal_item->set_tooltip(0, String(signal_name) + "::" + signaldesc + "::" + descr);
}
// List existing connections
@@ -1044,11 +1052,11 @@ void ConnectionsDock::update_tree() {
path += ")";
}
- TreeItem *item2 = tree->create_item(item);
- item2->set_text(0, path);
+ TreeItem *connection_item = tree->create_item(signal_item);
+ connection_item->set_text(0, path);
Connection cd = c;
- item2->set_metadata(0, cd);
- item2->set_icon(0, get_theme_icon("Slot", "EditorIcons"));
+ connection_item->set_metadata(0, cd);
+ connection_item->set_icon(0, get_theme_icon("Slot", "EditorIcons"));
}
}
@@ -1069,6 +1077,14 @@ ConnectionsDock::ConnectionsDock(EditorNode *p_editor) {
VBoxContainer *vbc = this;
+ search_box = memnew(LineEdit);
+ search_box->set_h_size_flags(Control::SIZE_EXPAND_FILL);
+ search_box->set_placeholder(TTR("Filter signals"));
+ search_box->set_right_icon(get_theme_icon("Search", "EditorIcons"));
+ search_box->set_clear_button_enabled(true);
+ search_box->connect("text_changed", callable_mp(this, &ConnectionsDock::_filter_changed));
+ vbc->add_child(search_box);
+
tree = memnew(ConnectionsDockTree);
tree->set_columns(1);
tree->set_select_mode(Tree::SELECT_ROW);
diff --git a/editor/connections_dialog.h b/editor/connections_dialog.h
index 9da9a8fb2c..48fdb91f5a 100644
--- a/editor/connections_dialog.h
+++ b/editor/connections_dialog.h
@@ -169,9 +169,12 @@ class ConnectionsDock : public VBoxContainer {
PopupMenu *signal_menu;
PopupMenu *slot_menu;
UndoRedo *undo_redo;
+ LineEdit *search_box;
Map<StringName, Map<StringName, String>> descr_cache;
+ void _filter_changed(const String &p_text);
+
void _make_or_edit_connection();
void _connect(ConnectDialog::ConnectionData cToMake);
void _disconnect(TreeItem &item);
diff --git a/editor/doc_data.cpp b/editor/doc_data.cpp
index 75b16b4510..791b49319a 100644
--- a/editor/doc_data.cpp
+++ b/editor/doc_data.cpp
@@ -316,8 +316,7 @@ void DocData::generate(bool p_basic_types) {
if (name == "ProjectSettings") {
// Special case for project settings, so that settings are not taken from the current project's settings
- if (E->get().name == "script" ||
- ProjectSettings::get_singleton()->get_order(E->get().name) >= ProjectSettings::NO_BUILTIN_ORDER_BASE) {
+ if (E->get().name == "script" || !ProjectSettings::get_singleton()->is_builtin_setting(E->get().name)) {
continue;
}
if (E->get().usage & PROPERTY_USAGE_EDITOR) {
diff --git a/editor/editor_about.cpp b/editor/editor_about.cpp
index d99726c57c..aae476ccf4 100644
--- a/editor/editor_about.cpp
+++ b/editor/editor_about.cpp
@@ -155,12 +155,15 @@ EditorAbout::EditorAbout() {
List<String> donor_sections;
donor_sections.push_back(TTR("Platinum Sponsors"));
donor_sections.push_back(TTR("Gold Sponsors"));
+ donor_sections.push_back(TTR("Silver Sponsors"));
+ donor_sections.push_back(TTR("Bronze Sponsors"));
donor_sections.push_back(TTR("Mini Sponsors"));
donor_sections.push_back(TTR("Gold Donors"));
donor_sections.push_back(TTR("Silver Donors"));
donor_sections.push_back(TTR("Bronze Donors"));
- const char *const *donor_src[] = { DONORS_SPONSOR_PLAT, DONORS_SPONSOR_GOLD,
- DONORS_SPONSOR_MINI, DONORS_GOLD, DONORS_SILVER, DONORS_BRONZE };
+ const char *const *donor_src[] = { DONORS_SPONSOR_PLATINUM, DONORS_SPONSOR_GOLD,
+ DONORS_SPONSOR_SILVER, DONORS_SPONSOR_BRONZE, DONORS_SPONSOR_MINI,
+ DONORS_GOLD, DONORS_SILVER, DONORS_BRONZE };
tc->add_child(_populate_list(TTR("Donors"), donor_sections, donor_src, 3));
// License
diff --git a/editor/editor_node.cpp b/editor/editor_node.cpp
index ce131e6a05..381ff88890 100644
--- a/editor/editor_node.cpp
+++ b/editor/editor_node.cpp
@@ -498,6 +498,10 @@ void EditorNode::_notification(int p_what) {
RS::get_singleton()->environment_set_sdfgi_ray_count(ray_count);
RS::GIProbeQuality gi_probe_quality = RS::GIProbeQuality(int(GLOBAL_GET("rendering/quality/gi_probes/quality")));
RS::get_singleton()->gi_probe_set_quality(gi_probe_quality);
+ RS::get_singleton()->environment_set_volumetric_fog_volume_size(GLOBAL_GET("rendering/volumetric_fog/volume_size"), GLOBAL_GET("rendering/volumetric_fog/volume_depth"));
+ RS::get_singleton()->environment_set_volumetric_fog_filter_active(bool(GLOBAL_GET("rendering/volumetric_fog/use_filter")));
+ RS::get_singleton()->environment_set_volumetric_fog_directional_shadow_shrink_size(GLOBAL_GET("rendering/volumetric_fog/directional_shadow_shrink"));
+ RS::get_singleton()->environment_set_volumetric_fog_positional_shadow_shrink_size(GLOBAL_GET("rendering/volumetric_fog/positional_shadow_shrink"));
}
ResourceImporterTexture::get_singleton()->update_imports();
@@ -2620,7 +2624,6 @@ void EditorNode::_menu_option_confirm(int p_option, bool p_confirmed) {
case SETTINGS_TOGGLE_CONSOLE: {
bool was_visible = DisplayServer::get_singleton()->is_console_visible();
DisplayServer::get_singleton()->console_set_visible(!was_visible);
- EditorSettings::get_singleton()->set_setting("interface/editor/hide_console_window", was_visible);
} break;
case EDITOR_SCREENSHOT: {
screenshot_timer->start();
diff --git a/editor/editor_properties.cpp b/editor/editor_properties.cpp
index daafe095ce..34d553b5f9 100644
--- a/editor/editor_properties.cpp
+++ b/editor/editor_properties.cpp
@@ -946,14 +946,11 @@ void EditorPropertyEasing::_drag_easing(const Ref<InputEvent> &p_ev) {
}
float val = get_edited_object()->get(get_edited_property());
- if (val == 0) {
- return;
- }
bool sg = val < 0;
val = Math::absf(val);
val = Math::log(val) / Math::log((float)2.0);
- //logspace
+ // Logarithmic space.
val += rel * 0.05;
val = Math::pow(2.0f, val);
@@ -961,6 +958,16 @@ void EditorPropertyEasing::_drag_easing(const Ref<InputEvent> &p_ev) {
val = -val;
}
+ // 0 is a singularity, but both positive and negative values
+ // are otherwise allowed. Enforce 0+ as workaround.
+ if (Math::is_zero_approx(val)) {
+ val = 0.00001;
+ }
+
+ // Limit to a reasonable value to prevent the curve going into infinity,
+ // which can cause crashes and other issues.
+ val = CLAMP(val, -1'000'000, 1'000'000);
+
emit_changed(get_edited_property(), val);
easing_draw->update();
}
@@ -1003,7 +1010,18 @@ void EditorPropertyEasing::_draw_easing() {
}
easing_draw->draw_multiline(lines, line_color, 1.0);
- f->draw(ci, Point2(10, 10 + f->get_ascent()), String::num(exp, 2), font_color);
+ // Draw more decimals for small numbers since higher precision is usually required for fine adjustments.
+ int decimals;
+ if (Math::abs(exp) < 0.1 - CMP_EPSILON) {
+ decimals = 4;
+ } else if (Math::abs(exp) < 1 - CMP_EPSILON) {
+ decimals = 3;
+ } else if (Math::abs(exp) < 10 - CMP_EPSILON) {
+ decimals = 2;
+ } else {
+ decimals = 1;
+ }
+ f->draw(ci, Point2(10, 10 + f->get_ascent()), rtos(exp).pad_decimals(decimals), font_color);
}
void EditorPropertyEasing::update_property() {
@@ -1035,6 +1053,11 @@ void EditorPropertyEasing::_spin_value_changed(double p_value) {
if (Math::is_zero_approx(p_value)) {
p_value = 0.00001;
}
+
+ // Limit to a reasonable value to prevent the curve going into infinity,
+ // which can cause crashes and other issues.
+ p_value = CLAMP(p_value, -1'000'000, 1'000'000);
+
emit_changed(get_edited_property(), p_value);
_spin_focus_exited();
}
@@ -2108,6 +2131,11 @@ EditorPropertyTransform::EditorPropertyTransform() {
////////////// COLOR PICKER //////////////////////
void EditorPropertyColor::_color_changed(const Color &p_color) {
+ // Cancel the color change if the current color is identical to the new one.
+ if (get_edited_object()->get(get_edited_property()) == p_color) {
+ return;
+ }
+
emit_changed(get_edited_property(), p_color, "", true);
}
diff --git a/editor/editor_settings.cpp b/editor/editor_settings.cpp
index a3438b3601..7b24e6967a 100644
--- a/editor/editor_settings.cpp
+++ b/editor/editor_settings.cpp
@@ -334,7 +334,6 @@ void EditorSettings::_load_defaults(Ref<ConfigFile> p_extra_config) {
_initial_set("interface/editor/automatically_open_screenshots", true);
_initial_set("interface/editor/single_window_mode", false);
hints["interface/editor/single_window_mode"] = PropertyInfo(Variant::BOOL, "interface/editor/single_window_mode", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_DEFAULT | PROPERTY_USAGE_RESTART_IF_CHANGED);
- _initial_set("interface/editor/hide_console_window", false);
_initial_set("interface/editor/save_each_scene_on_quit", true); // Regression
_initial_set("interface/editor/quit_confirmation", true);
@@ -544,6 +543,7 @@ void EditorSettings::_load_defaults(Ref<ConfigFile> p_extra_config) {
// 3D: Navigation
_initial_set("editors/3d/navigation/navigation_scheme", 0);
_initial_set("editors/3d/navigation/invert_y_axis", false);
+ _initial_set("editors/3d/navigation/invert_x_axis", false);
hints["editors/3d/navigation/navigation_scheme"] = PropertyInfo(Variant::INT, "editors/3d/navigation/navigation_scheme", PROPERTY_HINT_ENUM, "Godot,Maya,Modo");
_initial_set("editors/3d/navigation/zoom_style", 0);
hints["editors/3d/navigation/zoom_style"] = PropertyInfo(Variant::INT, "editors/3d/navigation/zoom_style", PROPERTY_HINT_ENUM, "Vertical, Horizontal");
diff --git a/editor/editor_themes.cpp b/editor/editor_themes.cpp
index a93763810b..8d54bc8021 100644
--- a/editor/editor_themes.cpp
+++ b/editor/editor_themes.cpp
@@ -85,7 +85,8 @@ static Ref<StyleBoxLine> make_line_stylebox(Color p_color, int p_thickness = 1,
return style;
}
-Ref<ImageTexture> editor_generate_icon(int p_index, bool p_convert_color, float p_scale = EDSCALE, bool p_force_filter = false) {
+#ifdef MODULE_SVG_ENABLED
+static Ref<ImageTexture> editor_generate_icon(int p_index, bool p_convert_color, float p_scale = EDSCALE, bool p_force_filter = false) {
Ref<ImageTexture> icon = memnew(ImageTexture);
Ref<Image> img = memnew(Image);
@@ -99,6 +100,7 @@ Ref<ImageTexture> editor_generate_icon(int p_index, bool p_convert_color, float
return icon;
}
+#endif
#ifndef ADD_CONVERT_COLOR
#define ADD_CONVERT_COLOR(dictionary, old_color, new_color) dictionary[Color::html(old_color)] = Color::html(new_color)
diff --git a/editor/filesystem_dock.cpp b/editor/filesystem_dock.cpp
index 4f37fcf39c..31903c89be 100644
--- a/editor/filesystem_dock.cpp
+++ b/editor/filesystem_dock.cpp
@@ -2430,11 +2430,31 @@ void FileSystemDock::_file_list_gui_input(Ref<InputEvent> p_event) {
}
}
-void FileSystemDock::_update_import_dock() {
- if (!import_dock_needs_update) {
+void FileSystemDock::_get_imported_files(const String &p_path, Vector<String> &files) const {
+ if (!p_path.ends_with("/")) {
+ if (FileAccess::exists(p_path + ".import")) {
+ files.push_back(p_path);
+ }
return;
}
+ DirAccess *da = DirAccess::open(p_path);
+ da->list_dir_begin();
+ String n = da->get_next();
+ while (n != String()) {
+ if (n != "." && n != ".." && !n.ends_with(".import")) {
+ String npath = p_path + n + (da->current_is_dir() ? "/" : "");
+ _get_imported_files(npath, files);
+ }
+ n = da->get_next();
+ }
+ da->list_dir_end();
+}
+
+void FileSystemDock::_update_import_dock() {
+ if (!import_dock_needs_update)
+ return;
+
// List selected.
Vector<String> selected;
if (display_mode == DISPLAY_MODE_TREE_ONLY) {
@@ -2444,29 +2464,24 @@ void FileSystemDock::_update_import_dock() {
} else {
// Use the file list.
for (int i = 0; i < files->get_item_count(); i++) {
- if (!files->is_selected(i)) {
+ if (!files->is_selected(i))
continue;
- }
selected.push_back(files->get_item_metadata(i));
}
}
+ // Expand directory selection
+ Vector<String> efiles;
+ for (int i = 0; i < selected.size(); i++) {
+ _get_imported_files(selected[i], efiles);
+ }
+
// Check import.
Vector<String> imports;
String import_type;
- for (int i = 0; i < selected.size(); i++) {
- String fpath = selected[i];
-
- if (fpath.ends_with("/")) {
- imports.clear();
- break;
- }
-
- if (!FileAccess::exists(fpath + ".import")) {
- imports.clear();
- break;
- }
+ for (int i = 0; i < efiles.size(); i++) {
+ String fpath = efiles[i];
Ref<ConfigFile> cf;
cf.instance();
Error err = cf->load(fpath + ".import");
diff --git a/editor/filesystem_dock.h b/editor/filesystem_dock.h
index b0118f11aa..ec2a075834 100644
--- a/editor/filesystem_dock.h
+++ b/editor/filesystem_dock.h
@@ -195,6 +195,7 @@ private:
void _file_multi_selected(int p_index, bool p_selected);
void _tree_multi_selected(Object *p_item, int p_column, bool p_selected);
+ void _get_imported_files(const String &p_path, Vector<String> &files) const;
void _update_import_dock();
void _get_all_items_in_dir(EditorFileSystemDirectory *efsd, Vector<String> &files, Vector<String> &folders) const;
diff --git a/editor/icons/GuiToggleOff.svg b/editor/icons/GuiToggleOff.svg
index 928b55b201..9644ef176c 100644
--- a/editor/icons/GuiToggleOff.svg
+++ b/editor/icons/GuiToggleOff.svg
@@ -1 +1 @@
-<svg height="26" viewBox="0 0 42 25.999998" width="42" xmlns="http://www.w3.org/2000/svg"><g fill="#e0e0e0"><rect fill-opacity=".188235" height="16" rx="9" stroke-width="55.8958" width="38" x="2" y="5"/><circle cx="10" cy="13" r="5" stroke-width="97.3613"/></g></svg>
+<svg height="16" viewBox="0 0 38 15.999999" width="38" xmlns="http://www.w3.org/2000/svg"><g fill="#e0e0e0"><rect fill-opacity=".188235" height="14" rx="7" stroke-width="55.8958" width="36" x="1" y="1"/><circle cx="8" cy="8" r="5" stroke-width="97.3613"/></g></svg>
diff --git a/editor/icons/GuiToggleOn.svg b/editor/icons/GuiToggleOn.svg
index a79a8290b1..8ab0998f71 100644
--- a/editor/icons/GuiToggleOn.svg
+++ b/editor/icons/GuiToggleOn.svg
@@ -1 +1 @@
-<svg height="26" viewBox="0 0 42 25.999998" width="42" xmlns="http://www.w3.org/2000/svg"><path d="m11 5c-4.986 0-9 3.568-9 8s4.014 8 9 8h20c4.986 0 9-3.568 9-8s-4.014-8-9-8zm21 3a5 5 0 0 1 5 5 5 5 0 0 1 -5 5 5 5 0 0 1 -5-5 5 5 0 0 1 5-5z" fill="#e0e0e0" stroke-width="55.8958"/></svg>
+<svg height="16" viewBox="0 0 38 15.999999" width="38" xmlns="http://www.w3.org/2000/svg"><path d="m8 1c-3.878 0-7 3.122-7 7s3.122 7 7 7h22c3.878 0 7-3.122 7-7s-3.122-7-7-7zm22 2a5 5 0 0 1 5 5 5 5 0 0 1 -5 5 5 5 0 0 1 -5-5 5 5 0 0 1 5-5z" fill="#e0e0e0" stroke-width="55.8958"/></svg>
diff --git a/editor/plugins/node_3d_editor_plugin.cpp b/editor/plugins/node_3d_editor_plugin.cpp
index b4b81cc7f0..21a75c2f5d 100644
--- a/editor/plugins/node_3d_editor_plugin.cpp
+++ b/editor/plugins/node_3d_editor_plugin.cpp
@@ -2059,7 +2059,12 @@ void Node3DEditorViewport::_nav_pan(Ref<InputEventWithModifiers> p_event, const
camera_transform.translate(cursor.pos);
camera_transform.basis.rotate(Vector3(1, 0, 0), -cursor.x_rot);
camera_transform.basis.rotate(Vector3(0, 1, 0), -cursor.y_rot);
- Vector3 translation(-p_relative.x * pan_speed, p_relative.y * pan_speed, 0);
+ const bool invert_x_axis = EditorSettings::get_singleton()->get("editors/3d/navigation/invert_x_axis");
+ const bool invert_y_axis = EditorSettings::get_singleton()->get("editors/3d/navigation/invert_y_axis");
+ Vector3 translation(
+ (invert_x_axis ? -1 : 1) * -p_relative.x * pan_speed,
+ (invert_y_axis ? -1 : 1) * p_relative.y * pan_speed,
+ 0);
translation *= cursor.distance / DISTANCE_DEFAULT;
camera_transform.translate(translation);
cursor.pos = camera_transform.origin;
@@ -2100,17 +2105,24 @@ void Node3DEditorViewport::_nav_orbit(Ref<InputEventWithModifiers> p_event, cons
_menu_option(VIEW_PERSPECTIVE);
}
- real_t degrees_per_pixel = EditorSettings::get_singleton()->get("editors/3d/navigation_feel/orbit_sensitivity");
- real_t radians_per_pixel = Math::deg2rad(degrees_per_pixel);
- bool invert_y_axis = EditorSettings::get_singleton()->get("editors/3d/navigation/invert_y_axis");
+ const real_t degrees_per_pixel = EditorSettings::get_singleton()->get("editors/3d/navigation_feel/orbit_sensitivity");
+ const real_t radians_per_pixel = Math::deg2rad(degrees_per_pixel);
+ const bool invert_y_axis = EditorSettings::get_singleton()->get("editors/3d/navigation/invert_y_axis");
+ const bool invert_x_axis = EditorSettings::get_singleton()->get("editors/3d/navigation/invert_x_axis");
if (invert_y_axis) {
cursor.x_rot -= p_relative.y * radians_per_pixel;
} else {
cursor.x_rot += p_relative.y * radians_per_pixel;
}
- cursor.y_rot += p_relative.x * radians_per_pixel;
+ // Clamp the Y rotation to roughly -90..90 degrees so the user can't look upside-down and end up disoriented.
cursor.x_rot = CLAMP(cursor.x_rot, -1.57, 1.57);
+
+ if (invert_x_axis) {
+ cursor.y_rot -= p_relative.x * radians_per_pixel;
+ } else {
+ cursor.y_rot += p_relative.x * radians_per_pixel;
+ }
name = "";
_update_name();
}
@@ -2125,21 +2137,23 @@ void Node3DEditorViewport::_nav_look(Ref<InputEventWithModifiers> p_event, const
_menu_option(VIEW_PERSPECTIVE);
}
- real_t degrees_per_pixel = EditorSettings::get_singleton()->get("editors/3d/freelook/freelook_sensitivity");
- real_t radians_per_pixel = Math::deg2rad(degrees_per_pixel);
- bool invert_y_axis = EditorSettings::get_singleton()->get("editors/3d/navigation/invert_y_axis");
+ const real_t degrees_per_pixel = EditorSettings::get_singleton()->get("editors/3d/freelook/freelook_sensitivity");
+ const real_t radians_per_pixel = Math::deg2rad(degrees_per_pixel);
+ const bool invert_y_axis = EditorSettings::get_singleton()->get("editors/3d/navigation/invert_y_axis");
// Note: do NOT assume the camera has the "current" transform, because it is interpolated and may have "lag".
- Transform prev_camera_transform = to_camera_transform(cursor);
+ const Transform prev_camera_transform = to_camera_transform(cursor);
if (invert_y_axis) {
cursor.x_rot -= p_relative.y * radians_per_pixel;
} else {
cursor.x_rot += p_relative.y * radians_per_pixel;
}
- cursor.y_rot += p_relative.x * radians_per_pixel;
+ // Clamp the Y rotation to roughly -90..90 degrees so the user can't look upside-down and end up disoriented.
cursor.x_rot = CLAMP(cursor.x_rot, -1.57, 1.57);
+ cursor.y_rot += p_relative.x * radians_per_pixel;
+
// Look is like the opposite of Orbit: the focus point rotates around the camera
Transform camera_transform = to_camera_transform(cursor);
Vector3 pos = camera_transform.xform(Vector3(0, 0, 0));
diff --git a/editor/plugins/sprite_frames_editor_plugin.cpp b/editor/plugins/sprite_frames_editor_plugin.cpp
index 1073da7d8c..18942b371c 100644
--- a/editor/plugins/sprite_frames_editor_plugin.cpp
+++ b/editor/plugins/sprite_frames_editor_plugin.cpp
@@ -36,6 +36,8 @@
#include "editor/editor_settings.h"
#include "scene/3d/sprite_3d.h"
#include "scene/gui/center_container.h"
+#include "scene/gui/margin_container.h"
+#include "scene/gui/panel_container.h"
void SpriteFramesEditor::_gui_input(Ref<InputEvent> p_event) {
}
@@ -140,8 +142,27 @@ void SpriteFramesEditor::_sheet_preview_input(const Ref<InputEvent> &p_event) {
}
}
+void SpriteFramesEditor::_sheet_scroll_input(const Ref<InputEvent> &p_event) {
+ const Ref<InputEventMouseButton> mb = p_event;
+
+ if (mb.is_valid()) {
+ // Zoom in/out using Ctrl + mouse wheel. This is done on the ScrollContainer
+ // to allow performing this action anywhere, even if the cursor isn't
+ // hovering the texture in the workspace.
+ if (mb->get_button_index() == BUTTON_WHEEL_UP && mb->is_pressed() && mb->get_control()) {
+ _sheet_zoom_in();
+ // Don't scroll up after zooming in.
+ accept_event();
+ } else if (mb->get_button_index() == BUTTON_WHEEL_DOWN && mb->is_pressed() && mb->get_control()) {
+ _sheet_zoom_out();
+ // Don't scroll down after zooming out.
+ accept_event();
+ }
+ }
+}
+
void SpriteFramesEditor::_sheet_add_frames() {
- Size2i size = split_sheet_preview->get_size();
+ Size2i size = split_sheet_preview->get_texture()->get_size();
int h = split_sheet_h->get_value();
int v = split_sheet_v->get_value();
@@ -180,6 +201,28 @@ void SpriteFramesEditor::_sheet_add_frames() {
undo_redo->commit_action();
}
+void SpriteFramesEditor::_sheet_zoom_in() {
+ if (sheet_zoom < max_sheet_zoom) {
+ sheet_zoom *= scale_ratio;
+ Size2 texture_size = split_sheet_preview->get_texture()->get_size();
+ split_sheet_preview->set_custom_minimum_size(texture_size * sheet_zoom);
+ }
+}
+
+void SpriteFramesEditor::_sheet_zoom_out() {
+ if (sheet_zoom > min_sheet_zoom) {
+ sheet_zoom /= scale_ratio;
+ Size2 texture_size = split_sheet_preview->get_texture()->get_size();
+ split_sheet_preview->set_custom_minimum_size(texture_size * sheet_zoom);
+ }
+}
+
+void SpriteFramesEditor::_sheet_zoom_reset() {
+ sheet_zoom = 1.f;
+ Size2 texture_size = split_sheet_preview->get_texture()->get_size();
+ split_sheet_preview->set_custom_minimum_size(texture_size * sheet_zoom);
+}
+
void SpriteFramesEditor::_sheet_select_clear_all_frames() {
bool should_clear = true;
for (int i = 0; i < split_sheet_h->get_value() * split_sheet_v->get_value(); i++) {
@@ -207,15 +250,18 @@ void SpriteFramesEditor::_prepare_sprite_sheet(const String &p_file) {
EditorNode::get_singleton()->show_warning(TTR("Unable to load images"));
ERR_FAIL_COND(!texture.is_valid());
}
- if (texture != split_sheet_preview->get_texture()) {
- //different texture, reset to 4x4
- split_sheet_h->set_value(4);
- split_sheet_v->set_value(4);
- }
+ bool new_texture = texture != split_sheet_preview->get_texture();
frames_selected.clear();
last_frame_selected = -1;
split_sheet_preview->set_texture(texture);
+ if (new_texture) {
+ //different texture, reset to 4x4
+ split_sheet_h->set_value(4);
+ split_sheet_v->set_value(4);
+ //reset zoom
+ _sheet_zoom_reset();
+ }
split_sheet_dialog->popup_centered_ratio(0.65);
}
@@ -231,8 +277,14 @@ void SpriteFramesEditor::_notification(int p_what) {
move_up->set_icon(get_theme_icon("MoveLeft", "EditorIcons"));
move_down->set_icon(get_theme_icon("MoveRight", "EditorIcons"));
_delete->set_icon(get_theme_icon("Remove", "EditorIcons"));
+ zoom_out->set_icon(get_theme_icon("ZoomLess", "EditorIcons"));
+ zoom_1->set_icon(get_theme_icon("ZoomReset", "EditorIcons"));
+ zoom_in->set_icon(get_theme_icon("ZoomMore", "EditorIcons"));
new_anim->set_icon(get_theme_icon("New", "EditorIcons"));
remove_anim->set_icon(get_theme_icon("Remove", "EditorIcons"));
+ split_sheet_zoom_out->set_icon(get_theme_icon("ZoomLess", "EditorIcons"));
+ split_sheet_zoom_1->set_icon(get_theme_icon("ZoomReset", "EditorIcons"));
+ split_sheet_zoom_in->set_icon(get_theme_icon("ZoomMore", "EditorIcons"));
[[fallthrough]];
}
case NOTIFICATION_THEME_CHANGED: {
@@ -636,6 +688,54 @@ void SpriteFramesEditor::_animation_fps_changed(double p_value) {
undo_redo->commit_action();
}
+void SpriteFramesEditor::_tree_input(const Ref<InputEvent> &p_event) {
+ const Ref<InputEventMouseButton> mb = p_event;
+
+ if (mb.is_valid()) {
+ if (mb->get_button_index() == BUTTON_WHEEL_UP && mb->is_pressed() && mb->get_control()) {
+ _zoom_in();
+ // Don't scroll up after zooming in.
+ accept_event();
+ } else if (mb->get_button_index() == BUTTON_WHEEL_DOWN && mb->is_pressed() && mb->get_control()) {
+ _zoom_out();
+ // Don't scroll down after zooming out.
+ accept_event();
+ }
+ }
+}
+
+void SpriteFramesEditor::_zoom_in() {
+ // Do not zoom in or out with no visible frames
+ if (frames->get_frame_count(edited_anim) <= 0) {
+ return;
+ }
+ if (thumbnail_zoom < max_thumbnail_zoom) {
+ thumbnail_zoom *= scale_ratio;
+ int thumbnail_size = (int)(thumbnail_default_size * thumbnail_zoom);
+ tree->set_fixed_column_width(thumbnail_size * 3 / 2);
+ tree->set_fixed_icon_size(Size2(thumbnail_size, thumbnail_size));
+ }
+}
+
+void SpriteFramesEditor::_zoom_out() {
+ // Do not zoom in or out with no visible frames
+ if (frames->get_frame_count(edited_anim) <= 0) {
+ return;
+ }
+ if (thumbnail_zoom > min_thumbnail_zoom) {
+ thumbnail_zoom /= scale_ratio;
+ int thumbnail_size = (int)(thumbnail_default_size * thumbnail_zoom);
+ tree->set_fixed_column_width(thumbnail_size * 3 / 2);
+ tree->set_fixed_icon_size(Size2(thumbnail_size, thumbnail_size));
+ }
+}
+
+void SpriteFramesEditor::_zoom_reset() {
+ thumbnail_zoom = 1.0f;
+ tree->set_fixed_column_width(thumbnail_default_size * 3 / 2);
+ tree->set_fixed_icon_size(Size2(thumbnail_default_size, thumbnail_default_size));
+}
+
void SpriteFramesEditor::_update_library(bool p_skip_selector) {
updating = true;
@@ -727,6 +827,9 @@ void SpriteFramesEditor::edit(SpriteFrames *p_frames) {
}
_update_library();
+ // Clear zoom and split sheet texture
+ split_sheet_preview->set_texture(Ref<Texture2D>());
+ _zoom_reset();
} else {
hide();
}
@@ -965,6 +1068,24 @@ SpriteFramesEditor::SpriteFramesEditor() {
_delete->set_tooltip(TTR("Delete"));
hbc->add_child(_delete);
+ hbc->add_spacer();
+
+ zoom_out = memnew(Button);
+ zoom_out->connect("pressed", callable_mp(this, &SpriteFramesEditor::_zoom_out));
+ zoom_out->set_flat(true);
+ zoom_out->set_tooltip(TTR("Zoom Out"));
+ hbc->add_child(zoom_out);
+ zoom_1 = memnew(Button);
+ zoom_1->connect("pressed", callable_mp(this, &SpriteFramesEditor::_zoom_reset));
+ zoom_1->set_flat(true);
+ zoom_1->set_tooltip(TTR("Zoom Reset"));
+ hbc->add_child(zoom_1);
+ zoom_in = memnew(Button);
+ zoom_in->connect("pressed", callable_mp(this, &SpriteFramesEditor::_zoom_in));
+ zoom_in->set_flat(true);
+ zoom_in->set_tooltip(TTR("Zoom In"));
+ hbc->add_child(zoom_in);
+
file = memnew(EditorFileDialog);
add_child(file);
@@ -972,13 +1093,11 @@ SpriteFramesEditor::SpriteFramesEditor() {
tree->set_v_size_flags(SIZE_EXPAND_FILL);
tree->set_icon_mode(ItemList::ICON_MODE_TOP);
- int thumbnail_size = 96;
tree->set_max_columns(0);
tree->set_icon_mode(ItemList::ICON_MODE_TOP);
- tree->set_fixed_column_width(thumbnail_size * 3 / 2);
tree->set_max_text_lines(2);
- tree->set_fixed_icon_size(Size2(thumbnail_size, thumbnail_size));
tree->set_drag_forwarding(this);
+ tree->connect("gui_input", callable_mp(this, &SpriteFramesEditor::_tree_input));
sub_vb->add_child(tree);
@@ -1042,8 +1161,13 @@ SpriteFramesEditor::SpriteFramesEditor() {
split_sheet_vb->add_child(split_sheet_hb);
+ PanelContainer *split_sheet_panel = memnew(PanelContainer);
+ split_sheet_panel->set_h_size_flags(SIZE_EXPAND_FILL);
+ split_sheet_panel->set_v_size_flags(SIZE_EXPAND_FILL);
+ split_sheet_vb->add_child(split_sheet_panel);
+
split_sheet_preview = memnew(TextureRect);
- split_sheet_preview->set_expand(false);
+ split_sheet_preview->set_expand(true);
split_sheet_preview->set_mouse_filter(MOUSE_FILTER_PASS);
split_sheet_preview->connect("draw", callable_mp(this, &SpriteFramesEditor::_sheet_preview_draw));
split_sheet_preview->connect("gui_input", callable_mp(this, &SpriteFramesEditor::_sheet_preview_input));
@@ -1051,20 +1175,58 @@ SpriteFramesEditor::SpriteFramesEditor() {
splite_sheet_scroll = memnew(ScrollContainer);
splite_sheet_scroll->set_enable_h_scroll(true);
splite_sheet_scroll->set_enable_v_scroll(true);
- splite_sheet_scroll->set_v_size_flags(SIZE_EXPAND_FILL);
+ splite_sheet_scroll->connect("gui_input", callable_mp(this, &SpriteFramesEditor::_sheet_scroll_input));
+ split_sheet_panel->add_child(splite_sheet_scroll);
CenterContainer *cc = memnew(CenterContainer);
cc->add_child(split_sheet_preview);
cc->set_h_size_flags(SIZE_EXPAND_FILL);
cc->set_v_size_flags(SIZE_EXPAND_FILL);
splite_sheet_scroll->add_child(cc);
- split_sheet_vb->add_child(splite_sheet_scroll);
+ MarginContainer *split_sheet_zoom_margin = memnew(MarginContainer);
+ split_sheet_panel->add_child(split_sheet_zoom_margin);
+ split_sheet_zoom_margin->set_h_size_flags(0);
+ split_sheet_zoom_margin->set_v_size_flags(0);
+ split_sheet_zoom_margin->add_theme_constant_override("margin_top", 5);
+ split_sheet_zoom_margin->add_theme_constant_override("margin_left", 5);
+ HBoxContainer *split_sheet_zoom_hb = memnew(HBoxContainer);
+ split_sheet_zoom_margin->add_child(split_sheet_zoom_hb);
+
+ split_sheet_zoom_out = memnew(Button);
+ split_sheet_zoom_out->set_flat(true);
+ split_sheet_zoom_out->set_focus_mode(FOCUS_NONE);
+ split_sheet_zoom_out->set_tooltip(TTR("Zoom Out"));
+ split_sheet_zoom_out->connect("pressed", callable_mp(this, &SpriteFramesEditor::_sheet_zoom_out));
+ split_sheet_zoom_hb->add_child(split_sheet_zoom_out);
+ split_sheet_zoom_1 = memnew(Button);
+ split_sheet_zoom_1->set_flat(true);
+ split_sheet_zoom_1->set_focus_mode(FOCUS_NONE);
+ split_sheet_zoom_1->set_tooltip(TTR("Zoom Reset"));
+ split_sheet_zoom_1->connect("pressed", callable_mp(this, &SpriteFramesEditor::_sheet_zoom_reset));
+ split_sheet_zoom_hb->add_child(split_sheet_zoom_1);
+ split_sheet_zoom_in = memnew(Button);
+ split_sheet_zoom_in->set_flat(true);
+ split_sheet_zoom_in->set_focus_mode(FOCUS_NONE);
+ split_sheet_zoom_in->set_tooltip(TTR("Zoom In"));
+ split_sheet_zoom_in->connect("pressed", callable_mp(this, &SpriteFramesEditor::_sheet_zoom_in));
+ split_sheet_zoom_hb->add_child(split_sheet_zoom_in);
file_split_sheet = memnew(EditorFileDialog);
file_split_sheet->set_title(TTR("Create Frames from Sprite Sheet"));
file_split_sheet->set_file_mode(EditorFileDialog::FILE_MODE_OPEN_FILE);
add_child(file_split_sheet);
file_split_sheet->connect("file_selected", callable_mp(this, &SpriteFramesEditor::_prepare_sprite_sheet));
+
+ // Config scale.
+ scale_ratio = 1.2f;
+ thumbnail_default_size = 96;
+ thumbnail_zoom = 1.0f;
+ max_thumbnail_zoom = 8.0f;
+ min_thumbnail_zoom = 0.1f;
+ sheet_zoom = 1.0f;
+ max_sheet_zoom = 16.0f;
+ min_sheet_zoom = 0.01f;
+ _zoom_reset();
}
void SpriteFramesEditorPlugin::edit(Object *p_object) {
diff --git a/editor/plugins/sprite_frames_editor_plugin.h b/editor/plugins/sprite_frames_editor_plugin.h
index ee743fe60d..0dce93f55a 100644
--- a/editor/plugins/sprite_frames_editor_plugin.h
+++ b/editor/plugins/sprite_frames_editor_plugin.h
@@ -36,6 +36,7 @@
#include "scene/2d/animated_sprite_2d.h"
#include "scene/gui/dialogs.h"
#include "scene/gui/file_dialog.h"
+#include "scene/gui/scroll_container.h"
#include "scene/gui/split_container.h"
#include "scene/gui/texture_rect.h"
#include "scene/gui/tree.h"
@@ -52,6 +53,9 @@ class SpriteFramesEditor : public HSplitContainer {
Button *empty2;
Button *move_up;
Button *move_down;
+ Button *zoom_out;
+ Button *zoom_1;
+ Button *zoom_in;
ItemList *tree;
bool loading_scene;
int sel;
@@ -79,10 +83,22 @@ class SpriteFramesEditor : public HSplitContainer {
TextureRect *split_sheet_preview;
SpinBox *split_sheet_h;
SpinBox *split_sheet_v;
+ Button *split_sheet_zoom_out;
+ Button *split_sheet_zoom_1;
+ Button *split_sheet_zoom_in;
EditorFileDialog *file_split_sheet;
Set<int> frames_selected;
int last_frame_selected;
+ float scale_ratio;
+ int thumbnail_default_size;
+ float thumbnail_zoom;
+ float max_thumbnail_zoom;
+ float min_thumbnail_zoom;
+ float sheet_zoom;
+ float max_sheet_zoom;
+ float min_sheet_zoom;
+
void _load_pressed();
void _load_scene_pressed();
void _file_load_request(const Vector<String> &p_path, int p_at_pos = -1);
@@ -103,6 +119,11 @@ class SpriteFramesEditor : public HSplitContainer {
void _animation_loop_changed();
void _animation_fps_changed(double p_value);
+ void _tree_input(const Ref<InputEvent> &p_event);
+ void _zoom_in();
+ void _zoom_out();
+ void _zoom_reset();
+
bool updating;
UndoRedo *undo_redo;
@@ -117,7 +138,11 @@ class SpriteFramesEditor : public HSplitContainer {
void _sheet_preview_draw();
void _sheet_spin_changed(double);
void _sheet_preview_input(const Ref<InputEvent> &p_event);
+ void _sheet_scroll_input(const Ref<InputEvent> &p_event);
void _sheet_add_frames();
+ void _sheet_zoom_in();
+ void _sheet_zoom_out();
+ void _sheet_zoom_reset();
void _sheet_select_clear_all_frames();
protected:
diff --git a/editor/plugins/tile_map_editor_plugin.cpp b/editor/plugins/tile_map_editor_plugin.cpp
index 307a8a9001..e71485e9fc 100644
--- a/editor/plugins/tile_map_editor_plugin.cpp
+++ b/editor/plugins/tile_map_editor_plugin.cpp
@@ -886,17 +886,17 @@ void TileMapEditor::_draw_cell(Control *p_viewport, int p_cell, const Point2i &p
rect.position += tile_ofs;
}
- rect.position = p_xform.xform(rect.position);
- rect.size *= sc;
-
Color modulate = node->get_tileset()->tile_get_modulate(p_cell);
modulate.a = 0.5;
+ Transform2D old_transform = p_viewport->get_viewport_transform();
+ p_viewport->draw_set_transform_matrix(p_xform); // Take into account TileMap transformation when displaying cell
if (r.has_no_area()) {
p_viewport->draw_texture_rect(t, rect, false, modulate, p_transpose);
} else {
p_viewport->draw_texture_rect_region(t, rect, r, modulate, p_transpose);
}
+ p_viewport->draw_set_transform_matrix(old_transform);
}
void TileMapEditor::_draw_fill_preview(Control *p_viewport, int p_cell, const Point2i &p_point, bool p_flip_h, bool p_flip_v, bool p_transpose, const Point2i &p_autotile_coord, const Transform2D &p_xform) {
diff --git a/editor/plugins/tile_set_editor_plugin.cpp b/editor/plugins/tile_set_editor_plugin.cpp
index a613174ed9..274c64263f 100644
--- a/editor/plugins/tile_set_editor_plugin.cpp
+++ b/editor/plugins/tile_set_editor_plugin.cpp
@@ -342,11 +342,13 @@ TileSetEditor::TileSetEditor(EditorNode *p_editor) {
left_container->add_child(tileset_toolbar_container);
tileset_toolbar_buttons[TOOL_TILESET_ADD_TEXTURE] = memnew(Button);
+ tileset_toolbar_buttons[TOOL_TILESET_ADD_TEXTURE]->set_flat(true);
tileset_toolbar_buttons[TOOL_TILESET_ADD_TEXTURE]->connect("pressed", callable_mp(this, &TileSetEditor::_on_tileset_toolbar_button_pressed), varray(TOOL_TILESET_ADD_TEXTURE));
tileset_toolbar_container->add_child(tileset_toolbar_buttons[TOOL_TILESET_ADD_TEXTURE]);
tileset_toolbar_buttons[TOOL_TILESET_ADD_TEXTURE]->set_tooltip(TTR("Add Texture(s) to TileSet."));
tileset_toolbar_buttons[TOOL_TILESET_REMOVE_TEXTURE] = memnew(Button);
+ tileset_toolbar_buttons[TOOL_TILESET_REMOVE_TEXTURE]->set_flat(true);
tileset_toolbar_buttons[TOOL_TILESET_REMOVE_TEXTURE]->connect("pressed", callable_mp(this, &TileSetEditor::_on_tileset_toolbar_button_pressed), varray(TOOL_TILESET_REMOVE_TEXTURE));
tileset_toolbar_container->add_child(tileset_toolbar_buttons[TOOL_TILESET_REMOVE_TEXTURE]);
tileset_toolbar_buttons[TOOL_TILESET_REMOVE_TEXTURE]->set_tooltip(TTR("Remove selected Texture from TileSet."));
@@ -405,12 +407,14 @@ TileSetEditor::TileSetEditor(EditorNode *p_editor) {
tools[SELECT_NEXT] = memnew(Button);
tool_hb->add_child(tools[SELECT_NEXT]);
tool_hb->move_child(tools[SELECT_NEXT], WORKSPACE_CREATE_SINGLE);
+ tools[SELECT_NEXT]->set_flat(true);
tools[SELECT_NEXT]->set_shortcut(ED_SHORTCUT("tileset_editor/next_shape", TTR("Next Coordinate"), KEY_PAGEDOWN));
tools[SELECT_NEXT]->connect("pressed", callable_mp(this, &TileSetEditor::_on_tool_clicked), varray(SELECT_NEXT));
tools[SELECT_NEXT]->set_tooltip(TTR("Select the next shape, subtile, or Tile."));
tools[SELECT_PREVIOUS] = memnew(Button);
tool_hb->add_child(tools[SELECT_PREVIOUS]);
tool_hb->move_child(tools[SELECT_PREVIOUS], WORKSPACE_CREATE_SINGLE);
+ tools[SELECT_PREVIOUS]->set_flat(true);
tools[SELECT_PREVIOUS]->set_shortcut(ED_SHORTCUT("tileset_editor/previous_shape", TTR("Previous Coordinate"), KEY_PAGEUP));
tools[SELECT_PREVIOUS]->set_tooltip(TTR("Select the previous shape, subtile, or Tile."));
tools[SELECT_PREVIOUS]->connect("pressed", callable_mp(this, &TileSetEditor::_on_tool_clicked), varray(SELECT_PREVIOUS));
@@ -467,6 +471,7 @@ TileSetEditor::TileSetEditor(EditorNode *p_editor) {
tools[TOOL_SELECT] = memnew(Button);
toolbar->add_child(tools[TOOL_SELECT]);
+ tools[TOOL_SELECT]->set_flat(true);
tools[TOOL_SELECT]->set_toggle_mode(true);
tools[TOOL_SELECT]->set_button_group(tg);
tools[TOOL_SELECT]->set_pressed(true);
@@ -475,20 +480,24 @@ TileSetEditor::TileSetEditor(EditorNode *p_editor) {
separator_bitmask = memnew(VSeparator);
toolbar->add_child(separator_bitmask);
tools[BITMASK_COPY] = memnew(Button);
+ tools[BITMASK_COPY]->set_flat(true);
tools[BITMASK_COPY]->set_tooltip(TTR("Copy bitmask."));
tools[BITMASK_COPY]->connect("pressed", callable_mp(this, &TileSetEditor::_on_tool_clicked), varray(BITMASK_COPY));
toolbar->add_child(tools[BITMASK_COPY]);
tools[BITMASK_PASTE] = memnew(Button);
+ tools[BITMASK_PASTE]->set_flat(true);
tools[BITMASK_PASTE]->set_tooltip(TTR("Paste bitmask."));
tools[BITMASK_PASTE]->connect("pressed", callable_mp(this, &TileSetEditor::_on_tool_clicked), varray(BITMASK_PASTE));
toolbar->add_child(tools[BITMASK_PASTE]);
tools[BITMASK_CLEAR] = memnew(Button);
+ tools[BITMASK_CLEAR]->set_flat(true);
tools[BITMASK_CLEAR]->set_tooltip(TTR("Erase bitmask."));
tools[BITMASK_CLEAR]->connect("pressed", callable_mp(this, &TileSetEditor::_on_tool_clicked), varray(BITMASK_CLEAR));
toolbar->add_child(tools[BITMASK_CLEAR]);
tools[SHAPE_NEW_RECTANGLE] = memnew(Button);
toolbar->add_child(tools[SHAPE_NEW_RECTANGLE]);
+ tools[SHAPE_NEW_RECTANGLE]->set_flat(true);
tools[SHAPE_NEW_RECTANGLE]->set_toggle_mode(true);
tools[SHAPE_NEW_RECTANGLE]->set_button_group(tg);
tools[SHAPE_NEW_RECTANGLE]->set_tooltip(TTR("Create a new rectangle."));
@@ -496,6 +505,7 @@ TileSetEditor::TileSetEditor(EditorNode *p_editor) {
tools[SHAPE_NEW_POLYGON] = memnew(Button);
toolbar->add_child(tools[SHAPE_NEW_POLYGON]);
+ tools[SHAPE_NEW_POLYGON]->set_flat(true);
tools[SHAPE_NEW_POLYGON]->set_toggle_mode(true);
tools[SHAPE_NEW_POLYGON]->set_button_group(tg);
tools[SHAPE_NEW_POLYGON]->set_tooltip(TTR("Create a new polygon."));
@@ -504,12 +514,14 @@ TileSetEditor::TileSetEditor(EditorNode *p_editor) {
separator_shape_toggle = memnew(VSeparator);
toolbar->add_child(separator_shape_toggle);
tools[SHAPE_TOGGLE_TYPE] = memnew(Button);
+ tools[SHAPE_TOGGLE_TYPE]->set_flat(true);
tools[SHAPE_TOGGLE_TYPE]->connect("pressed", callable_mp(this, &TileSetEditor::_on_tool_clicked), varray(SHAPE_TOGGLE_TYPE));
toolbar->add_child(tools[SHAPE_TOGGLE_TYPE]);
separator_delete = memnew(VSeparator);
toolbar->add_child(separator_delete);
tools[SHAPE_DELETE] = memnew(Button);
+ tools[SHAPE_DELETE]->set_flat(true);
tools[SHAPE_DELETE]->connect("pressed", callable_mp(this, &TileSetEditor::_on_tool_clicked), varray(SHAPE_DELETE));
toolbar->add_child(tools[SHAPE_DELETE]);
@@ -534,11 +546,13 @@ TileSetEditor::TileSetEditor(EditorNode *p_editor) {
separator_grid = memnew(VSeparator);
toolbar->add_child(separator_grid);
tools[SHAPE_KEEP_INSIDE_TILE] = memnew(Button);
+ tools[SHAPE_KEEP_INSIDE_TILE]->set_flat(true);
tools[SHAPE_KEEP_INSIDE_TILE]->set_toggle_mode(true);
tools[SHAPE_KEEP_INSIDE_TILE]->set_pressed(true);
tools[SHAPE_KEEP_INSIDE_TILE]->set_tooltip(TTR("Keep polygon inside region Rect."));
toolbar->add_child(tools[SHAPE_KEEP_INSIDE_TILE]);
tools[TOOL_GRID_SNAP] = memnew(Button);
+ tools[TOOL_GRID_SNAP]->set_flat(true);
tools[TOOL_GRID_SNAP]->set_toggle_mode(true);
tools[TOOL_GRID_SNAP]->set_tooltip(TTR("Enable snap and show grid (configurable via the Inspector)."));
tools[TOOL_GRID_SNAP]->connect("toggled", callable_mp(this, &TileSetEditor::_on_grid_snap_toggled));
@@ -549,19 +563,23 @@ TileSetEditor::TileSetEditor(EditorNode *p_editor) {
toolbar->add_child(separator);
tools[ZOOM_OUT] = memnew(Button);
+ tools[ZOOM_OUT]->set_flat(true);
tools[ZOOM_OUT]->connect("pressed", callable_mp(this, &TileSetEditor::_zoom_out));
toolbar->add_child(tools[ZOOM_OUT]);
tools[ZOOM_OUT]->set_tooltip(TTR("Zoom Out"));
tools[ZOOM_1] = memnew(Button);
+ tools[ZOOM_1]->set_flat(true);
tools[ZOOM_1]->connect("pressed", callable_mp(this, &TileSetEditor::_zoom_reset));
toolbar->add_child(tools[ZOOM_1]);
tools[ZOOM_1]->set_tooltip(TTR("Zoom Reset"));
tools[ZOOM_IN] = memnew(Button);
+ tools[ZOOM_IN]->set_flat(true);
tools[ZOOM_IN]->connect("pressed", callable_mp(this, &TileSetEditor::_zoom_in));
toolbar->add_child(tools[ZOOM_IN]);
tools[ZOOM_IN]->set_tooltip(TTR("Zoom In"));
tools[VISIBLE_INFO] = memnew(Button);
+ tools[VISIBLE_INFO]->set_flat(true);
tools[VISIBLE_INFO]->set_toggle_mode(true);
tools[VISIBLE_INFO]->set_tooltip(TTR("Display Tile Names (Hold Alt Key)"));
toolbar->add_child(tools[VISIBLE_INFO]);
diff --git a/editor/project_manager.cpp b/editor/project_manager.cpp
index a68742a985..35311b32eb 100644
--- a/editor/project_manager.cpp
+++ b/editor/project_manager.cpp
@@ -475,10 +475,12 @@ private:
set_message(TTR("Couldn't create project.godot in project path."), MESSAGE_ERROR);
} else {
f->store_line("[gd_resource type=\"Environment\" load_steps=2 format=2]");
+ f->store_line("");
f->store_line("[sub_resource type=\"Sky\" id=1]");
+ f->store_line("");
f->store_line("[resource]");
f->store_line("background_mode = 2");
- f->store_line("background_sky = SubResource( 1 )");
+ f->store_line("sky = SubResource( 1 )");
memdelete(f);
}
}
diff --git a/editor/project_settings_editor.cpp b/editor/project_settings_editor.cpp
index 0257e31ee7..82ac225ddb 100644
--- a/editor/project_settings_editor.cpp
+++ b/editor/project_settings_editor.cpp
@@ -30,8 +30,6 @@
#include "project_settings_editor.h"
-#include "core/global_constants.h"
-#include "core/os/keyboard.h"
#include "core/project_settings.h"
#include "editor/editor_export.h"
#include "editor/editor_node.h"
@@ -48,175 +46,163 @@ void ProjectSettingsEditor::popup_project_settings() {
popup_centered_clamped(Size2(900, 700) * EDSCALE, 0.8);
}
- globals_editor->update_category_list();
+ _add_feature_overrides();
+ inspector->update_category_list();
+
localization_editor->update_translations();
autoload_settings->update_autoload();
plugin_settings->update_plugins();
- set_process_unhandled_input(true);
}
-void ProjectSettingsEditor::_unhandled_input(const Ref<InputEvent> &p_event) {
- const Ref<InputEventKey> k = p_event;
-
- if (k.is_valid() && k->is_pressed()) {
- if (k->get_keycode_with_modifiers() == (KEY_MASK_CMD | KEY_F)) {
- if (search_button->is_pressed()) {
- search_box->grab_focus();
- search_box->select_all();
- } else {
- // This toggles the search bar display while giving the button its "pressed" appearance
- search_button->set_pressed(true);
- }
-
- set_input_as_handled();
- }
- }
+void ProjectSettingsEditor::queue_save() {
+ timer->start();
}
-void ProjectSettingsEditor::_notification(int p_what) {
- switch (p_what) {
- case NOTIFICATION_VISIBILITY_CHANGED: {
- if (!is_visible()) {
- EditorSettings::get_singleton()->set_project_metadata("dialog_bounds", "project_settings", Rect2(get_position(), get_size()));
- set_process_unhandled_input(false);
- }
- } break;
- case NOTIFICATION_ENTER_TREE: {
- globals_editor->edit(ProjectSettings::get_singleton());
-
- search_button->set_icon(get_theme_icon("Search", "EditorIcons"));
- search_box->set_right_icon(get_theme_icon("Search", "EditorIcons"));
- search_box->set_clear_button_enabled(true);
-
- restart_close_button->set_icon(get_theme_icon("Close", "EditorIcons"));
- restart_container->add_theme_style_override("panel", get_theme_stylebox("bg", "Tree"));
- restart_icon->set_texture(get_theme_icon("StatusWarning", "EditorIcons"));
- restart_label->add_theme_color_override("font_color", get_theme_color("warning_color", "Editor"));
-
- } break;
- case EditorSettings::NOTIFICATION_EDITOR_SETTINGS_CHANGED: {
- search_button->set_icon(get_theme_icon("Search", "EditorIcons"));
- search_box->set_right_icon(get_theme_icon("Search", "EditorIcons"));
- search_box->set_clear_button_enabled(true);
- } break;
- }
+void ProjectSettingsEditor::set_plugins_page() {
+ tab_container->set_current_tab(plugin_settings->get_index());
}
void ProjectSettingsEditor::update_plugins() {
plugin_settings->update_plugins();
}
-void ProjectSettingsEditor::_item_selected(const String &p_path) {
- const String &selected_path = p_path;
- if (selected_path == String()) {
- return;
- }
- category->set_text(globals_editor->get_current_section());
- property->set_text(selected_path);
- popup_copy_to_feature->set_disabled(false);
+void ProjectSettingsEditor::_setting_edited(const String &p_name) {
+ queue_save();
}
-void ProjectSettingsEditor::_item_adds(String) {
- _item_add();
+void ProjectSettingsEditor::_advanced_pressed() {
+ if (advanced->is_pressed()) {
+ _update_advanced_bar();
+ advanced_bar->show();
+ } else {
+ advanced_bar->hide();
+ }
}
-void ProjectSettingsEditor::_item_add() {
- // Initialize the property with the default value for the given type.
- // The type list starts at 1 (as we exclude Nil), so add 1 to the selected value.
- Callable::CallError ce;
- const Variant value = Variant::construct(Variant::Type(type->get_selected() + 1), nullptr, 0, ce);
-
- String catname = category->get_text().strip_edges();
- String propname = property->get_text().strip_edges();
-
- if (propname.empty()) {
+void ProjectSettingsEditor::_setting_selected(const String &p_path) {
+ if (p_path == String()) {
return;
}
- if (catname.empty()) {
- catname = "global";
- }
+ category_box->set_text(inspector->get_current_section());
+ property_box->set_text(p_path);
- String name = catname + "/" + propname;
+ if (advanced_bar->is_visible()) {
+ _update_advanced_bar(); // set_text doesn't trigger text_changed
+ }
+}
- undo_redo->create_action(TTR("Add Global Property"));
+void ProjectSettingsEditor::_add_setting() {
+ String setting = _get_setting_name();
- undo_redo->add_do_property(ProjectSettings::get_singleton(), name, value);
+ // Initialize the property with the default value for the given type.
+ // The type list starts at 1 (as we exclude Nil), so add 1 to the selected value.
+ Callable::CallError ce;
+ const Variant value = Variant::construct(Variant::Type(type->get_selected() + 1), nullptr, 0, ce);
- if (ProjectSettings::get_singleton()->has_setting(name)) {
- undo_redo->add_undo_property(ProjectSettings::get_singleton(), name, ProjectSettings::get_singleton()->get(name));
- } else {
- undo_redo->add_undo_property(ProjectSettings::get_singleton(), name, Variant());
- }
+ undo_redo->create_action(TTR("Add Project Setting"));
+ undo_redo->add_do_property(ps, setting, value);
+ undo_redo->add_undo_property(ps, setting, ps->has_setting(setting) ? ps->get(setting) : Variant());
- undo_redo->add_do_method(globals_editor, "update_category_list");
- undo_redo->add_undo_method(globals_editor, "update_category_list");
- undo_redo->add_do_method(this, "_settings_changed");
- undo_redo->add_undo_method(this, "_settings_changed");
+ undo_redo->add_do_method(inspector, "update_category_list");
+ undo_redo->add_undo_method(inspector, "update_category_list");
+ undo_redo->add_do_method(this, "queue_save");
+ undo_redo->add_undo_method(this, "queue_save");
undo_redo->commit_action();
- globals_editor->set_current_section(catname);
-
- _settings_changed();
+ inspector->set_current_section(setting.get_slice("/", 1));
}
-void ProjectSettingsEditor::_item_del() {
- String path = globals_editor->get_inspector()->get_selected_path();
- if (path == String()) {
- EditorNode::get_singleton()->show_warning(TTR("Select a setting item first!"));
- return;
- }
-
- String property = globals_editor->get_current_section().plus_file(path);
-
- if (!ProjectSettings::get_singleton()->has_setting(property)) {
- EditorNode::get_singleton()->show_warning(vformat(TTR("No property '%s' exists."), property));
- return;
- }
+void ProjectSettingsEditor::_delete_setting(bool p_confirmed) {
+ String setting = _get_setting_name();
+ Variant value = ps->get(setting);
+ int order = ps->get_order(setting);
- if (ProjectSettings::get_singleton()->get_order(property) < ProjectSettings::NO_BUILTIN_ORDER_BASE) {
- EditorNode::get_singleton()->show_warning(vformat(TTR("Setting '%s' is internal, and it can't be deleted."), property));
+ if (!p_confirmed) {
+ del_confirmation->set_text(vformat(TTR("Are you sure you want to delete '%s'?"), setting));
+ del_confirmation->popup_centered();
return;
}
undo_redo->create_action(TTR("Delete Item"));
- Variant value = ProjectSettings::get_singleton()->get(property);
- int order = ProjectSettings::get_singleton()->get_order(property);
+ undo_redo->add_do_method(ps, "clear", setting);
+ undo_redo->add_undo_method(ps, "set", setting, value);
+ undo_redo->add_undo_method(ps, "set_order", setting, order);
- undo_redo->add_do_method(ProjectSettings::get_singleton(), "clear", property);
- undo_redo->add_undo_method(ProjectSettings::get_singleton(), "set", property, value);
- undo_redo->add_undo_method(ProjectSettings::get_singleton(), "set_order", property, order);
-
- undo_redo->add_do_method(globals_editor, "update_category_list");
- undo_redo->add_undo_method(globals_editor, "update_category_list");
-
- undo_redo->add_do_method(this, "_settings_changed");
- undo_redo->add_undo_method(this, "_settings_changed");
+ undo_redo->add_do_method(inspector, "update_category_list");
+ undo_redo->add_undo_method(inspector, "update_category_list");
+ undo_redo->add_do_method(this, "queue_save");
+ undo_redo->add_undo_method(this, "queue_save");
undo_redo->commit_action();
+
+ property_box->clear();
}
-void ProjectSettingsEditor::_save() {
- Error err = ProjectSettings::get_singleton()->save();
- message->set_text(err != OK ? TTR("Error saving settings.") : TTR("Settings saved OK."));
- message->popup_centered(Size2(300, 100) * EDSCALE);
+void ProjectSettingsEditor::_text_field_changed(const String &p_text) {
+ _update_advanced_bar();
}
-void ProjectSettingsEditor::_settings_prop_edited(const String &p_name) {
- // Method needed to discard the mandatory argument of the property_edited signal
- _settings_changed();
+void ProjectSettingsEditor::_feature_selected(int p_index) {
+ _update_advanced_bar();
}
-void ProjectSettingsEditor::_settings_changed() {
- timer->start();
+void ProjectSettingsEditor::_update_advanced_bar() {
+ const String property_text = property_box->get_text().strip_edges();
+
+ String error_msg = "";
+ bool disable_add = true;
+ bool disable_del = true;
+
+ if (!property_box->get_text().empty()) {
+ const String setting = _get_setting_name();
+ bool setting_exists = ps->has_setting(setting);
+ if (setting_exists) {
+ error_msg = TTR(" - Cannot add already existing setting.");
+
+ disable_del = ps->is_builtin_setting(setting);
+ if (disable_del) {
+ String msg = TTR(" - Cannot delete built-in setting.");
+ error_msg += (error_msg == "") ? msg : "\n" + msg;
+ }
+ } else {
+ bool bad_category = false; // Allow empty string.
+ Vector<String> cats = category_box->get_text().strip_edges().split("/");
+ for (int i = 0; i < cats.size(); i++) {
+ if (!cats[i].is_valid_identifier()) {
+ bad_category = true;
+ error_msg = TTR(" - Invalid category name.");
+ break;
+ }
+ }
+
+ disable_add = bad_category;
+
+ if (!property_text.is_valid_identifier()) {
+ disable_add = true;
+ String msg = TTR(" - Invalid property name.");
+ error_msg += (error_msg == "") ? msg : "\n" + msg;
+ }
+ }
+ }
+
+ add_button->set_disabled(disable_add);
+ del_button->set_disabled(disable_del);
+
+ error_label->set_text(error_msg);
+ error_label->set_visible(error_msg != "");
}
-void ProjectSettingsEditor::queue_save() {
- _settings_changed();
+String ProjectSettingsEditor::_get_setting_name() const {
+ const String cat = category_box->get_text();
+ const String name = (cat.empty() ? "global" : cat.strip_edges()).plus_file(property_box->get_text().strip_edges());
+ const String feature = feature_override->get_item_text(feature_override->get_selected());
+
+ return (feature == "") ? name : (name + "." + feature);
}
-void ProjectSettingsEditor::_copy_to_platform_about_to_show() {
+void ProjectSettingsEditor::_add_feature_overrides() {
Set<String> presets;
presets.insert("bptc");
@@ -230,25 +216,26 @@ void ProjectSettingsEditor::_copy_to_platform_about_to_show() {
presets.insert("standalone");
presets.insert("32");
presets.insert("64");
- // Not available as an export platform yet, so it needs to be added manually
- presets.insert("Server");
+ presets.insert("Server"); // Not available as an export platform yet, so it needs to be added manually
+
+ EditorExport *ee = EditorExport::get_singleton();
- for (int i = 0; i < EditorExport::get_singleton()->get_export_platform_count(); i++) {
+ for (int i = 0; i < ee->get_export_platform_count(); i++) {
List<String> p;
- EditorExport::get_singleton()->get_export_platform(i)->get_platform_features(&p);
+ ee->get_export_platform(i)->get_platform_features(&p);
for (List<String>::Element *E = p.front(); E; E = E->next()) {
presets.insert(E->get());
}
}
- for (int i = 0; i < EditorExport::get_singleton()->get_export_preset_count(); i++) {
+ for (int i = 0; i < ee->get_export_preset_count(); i++) {
List<String> p;
- EditorExport::get_singleton()->get_export_preset(i)->get_platform()->get_preset_features(EditorExport::get_singleton()->get_export_preset(i), &p);
+ ee->get_export_preset(i)->get_platform()->get_preset_features(ee->get_export_preset(i), &p);
for (List<String>::Element *E = p.front(); E; E = E->next()) {
presets.insert(E->get());
}
- String custom = EditorExport::get_singleton()->get_export_preset(i)->get_custom_features();
+ String custom = ee->get_export_preset(i)->get_custom_features();
Vector<String> custom_list = custom.split(",");
for (int j = 0; j < custom_list.size(); j++) {
String f = custom_list[j].strip_edges();
@@ -258,70 +245,14 @@ void ProjectSettingsEditor::_copy_to_platform_about_to_show() {
}
}
- popup_copy_to_feature->get_popup()->clear();
- int id = 0;
+ feature_override->clear();
+ feature_override->add_item("", 0); // So it is always on top.
+ int id = 1;
for (Set<String>::Element *E = presets.front(); E; E = E->next()) {
- popup_copy_to_feature->get_popup()->add_item(E->get(), id++);
+ feature_override->add_item(E->get(), id++);
}
}
-void ProjectSettingsEditor::_copy_to_platform(int p_which) {
- String path = globals_editor->get_inspector()->get_selected_path();
- if (path == String()) {
- EditorNode::get_singleton()->show_warning(TTR("Select a setting item first!"));
- return;
- }
-
- String property = globals_editor->get_current_section().plus_file(path);
-
- undo_redo->create_action(TTR("Override for Feature"));
-
- Variant value = ProjectSettings::get_singleton()->get(property);
- if (property.find(".") != -1) { //overwriting overwrite, keep overwrite
- undo_redo->add_do_method(ProjectSettings::get_singleton(), "clear", property);
- undo_redo->add_undo_method(ProjectSettings::get_singleton(), "set", property, value);
- }
-
- String feature = popup_copy_to_feature->get_popup()->get_item_text(p_which);
- String new_path = property + "." + feature;
-
- undo_redo->add_do_method(ProjectSettings::get_singleton(), "set", new_path, value);
- if (ProjectSettings::get_singleton()->has_setting(new_path)) {
- undo_redo->add_undo_method(ProjectSettings::get_singleton(), "set", new_path, ProjectSettings::get_singleton()->get(new_path));
- }
-
- undo_redo->add_do_method(globals_editor, "update_category_list");
- undo_redo->add_undo_method(globals_editor, "update_category_list");
-
- undo_redo->add_do_method(this, "_settings_changed");
- undo_redo->add_undo_method(this, "_settings_changed");
-
- undo_redo->commit_action();
-}
-
-void ProjectSettingsEditor::_toggle_search_bar(bool p_pressed) {
- globals_editor->get_inspector()->set_use_filter(p_pressed);
-
- if (p_pressed) {
- search_bar->show();
- add_prop_bar->hide();
- search_box->grab_focus();
- search_box->select_all();
- } else {
- search_box->clear();
- search_bar->hide();
- add_prop_bar->show();
- }
-}
-
-void ProjectSettingsEditor::set_plugins_page() {
- tab_container->set_current_tab(plugin_settings->get_index());
-}
-
-TabContainer *ProjectSettingsEditor::get_tabs() {
- return tab_container;
-}
-
void ProjectSettingsEditor::_editor_restart() {
EditorNode::get_singleton()->save_all_scenes();
EditorNode::get_singleton()->restart_editor();
@@ -335,17 +266,48 @@ void ProjectSettingsEditor::_editor_restart_close() {
restart_container->hide();
}
-void ProjectSettingsEditor::_bind_methods() {
- ClassDB::bind_method(D_METHOD("_unhandled_input"), &ProjectSettingsEditor::_unhandled_input);
- ClassDB::bind_method(D_METHOD("_save"), &ProjectSettingsEditor::_save);
+void ProjectSettingsEditor::_notification(int p_what) {
+ switch (p_what) {
+ case NOTIFICATION_VISIBILITY_CHANGED: {
+ if (!is_visible()) {
+ EditorSettings::get_singleton()->set_project_metadata("dialog_bounds", "project_settings", Rect2(get_position(), get_size()));
+ if (advanced->is_pressed()) {
+ advanced->set_pressed(false);
+ advanced_bar->hide();
+ }
+ }
+ } break;
+ case NOTIFICATION_ENTER_TREE: {
+ inspector->edit(ps);
+
+ error_label->add_theme_color_override("font_color", error_label->get_theme_color("error_color", "Editor"));
+ add_button->set_icon(get_theme_icon("Add", "EditorIcons"));
+ del_button->set_icon(get_theme_icon("Remove", "EditorIcons"));
+
+ search_box->set_right_icon(get_theme_icon("Search", "EditorIcons"));
+ search_box->set_clear_button_enabled(true);
- ClassDB::bind_method(D_METHOD("get_tabs"), &ProjectSettingsEditor::get_tabs);
+ restart_close_button->set_icon(get_theme_icon("Close", "EditorIcons"));
+ restart_container->add_theme_style_override("panel", get_theme_stylebox("bg", "Tree"));
+ restart_icon->set_texture(get_theme_icon("StatusWarning", "EditorIcons"));
+ restart_label->add_theme_color_override("font_color", get_theme_color("warning_color", "Editor"));
+ } break;
+ case EditorSettings::NOTIFICATION_EDITOR_SETTINGS_CHANGED: {
+ search_box->set_right_icon(get_theme_icon("Search", "EditorIcons"));
+ search_box->set_clear_button_enabled(true);
+ } break;
+ }
+}
+
+void ProjectSettingsEditor::_bind_methods() {
+ ClassDB::bind_method(D_METHOD("queue_save"), &ProjectSettingsEditor::queue_save);
}
ProjectSettingsEditor::ProjectSettingsEditor(EditorData *p_data) {
singleton = this;
set_title(TTR("Project Settings (project.godot)"));
+ ps = ProjectSettings::get_singleton();
undo_redo = &p_data->get_undo_redo();
data = p_data;
@@ -354,103 +316,108 @@ ProjectSettingsEditor::ProjectSettingsEditor(EditorData *p_data) {
tab_container->set_use_hidden_tabs_for_min_size(true);
add_child(tab_container);
- VBoxContainer *props_base = memnew(VBoxContainer);
- props_base->set_name(TTR("General"));
- props_base->set_alignment(BoxContainer::ALIGN_BEGIN);
- props_base->set_v_size_flags(Control::SIZE_EXPAND_FILL);
- tab_container->add_child(props_base);
-
- HBoxContainer *hbc = memnew(HBoxContainer);
- hbc->set_h_size_flags(Control::SIZE_EXPAND_FILL);
- props_base->add_child(hbc);
-
- search_button = memnew(Button);
- search_button->set_text(TTR("Search"));
- search_button->set_toggle_mode(true);
- search_button->set_pressed(false);
- search_button->connect("toggled", callable_mp(this, &ProjectSettingsEditor::_toggle_search_bar));
- hbc->add_child(search_button);
-
- hbc->add_child(memnew(VSeparator));
-
- add_prop_bar = memnew(HBoxContainer);
- add_prop_bar->set_h_size_flags(Control::SIZE_EXPAND_FILL);
- hbc->add_child(add_prop_bar);
-
- Label *l = memnew(Label);
- l->set_text(TTR("Category:"));
- add_prop_bar->add_child(l);
-
- category = memnew(LineEdit);
- category->set_h_size_flags(Control::SIZE_EXPAND_FILL);
- category->connect("text_entered", callable_mp(this, &ProjectSettingsEditor::_item_adds));
- add_prop_bar->add_child(category);
-
- l = memnew(Label);
- l->set_text(TTR("Property:"));
- add_prop_bar->add_child(l);
-
- property = memnew(LineEdit);
- property->set_h_size_flags(Control::SIZE_EXPAND_FILL);
- property->connect("text_entered", callable_mp(this, &ProjectSettingsEditor::_item_adds));
- add_prop_bar->add_child(property);
-
- l = memnew(Label);
- l->set_text(TTR("Type:"));
- add_prop_bar->add_child(l);
-
- type = memnew(OptionButton);
- type->set_h_size_flags(Control::SIZE_EXPAND_FILL);
- add_prop_bar->add_child(type);
-
- // Start at 1 to avoid adding "Nil" as an option
- for (int i = 1; i < Variant::VARIANT_MAX; i++) {
- type->add_item(Variant::get_type_name(Variant::Type(i)));
+ VBoxContainer *general_editor = memnew(VBoxContainer);
+ general_editor->set_name(TTR("General"));
+ general_editor->set_alignment(BoxContainer::ALIGN_BEGIN);
+ general_editor->set_v_size_flags(Control::SIZE_EXPAND_FILL);
+ tab_container->add_child(general_editor);
+
+ VBoxContainer *header = memnew(VBoxContainer);
+ header->set_h_size_flags(Control::SIZE_EXPAND_FILL);
+ general_editor->add_child(header);
+
+ {
+ // Search bar.
+ search_bar = memnew(HBoxContainer);
+ search_bar->set_h_size_flags(Control::SIZE_EXPAND_FILL);
+ header->add_child(search_bar);
+
+ search_box = memnew(LineEdit);
+ search_box->set_h_size_flags(Control::SIZE_EXPAND_FILL);
+ search_bar->add_child(search_box);
+
+ advanced = memnew(CheckButton);
+ advanced->set_text(TTR("Advanced"));
+ advanced->connect("pressed", callable_mp(this, &ProjectSettingsEditor::_advanced_pressed));
+ search_bar->add_child(advanced);
}
- Button *add = memnew(Button);
- add->set_text(TTR("Add"));
- add->connect("pressed", callable_mp(this, &ProjectSettingsEditor::_item_add));
- add_prop_bar->add_child(add);
-
- search_bar = memnew(HBoxContainer);
- search_bar->set_h_size_flags(Control::SIZE_EXPAND_FILL);
- search_bar->hide();
- hbc->add_child(search_bar);
-
- search_box = memnew(LineEdit);
- search_box->set_h_size_flags(Control::SIZE_EXPAND_FILL);
- search_bar->add_child(search_box);
+ {
+ // Advanced bar.
+ advanced_bar = memnew(VBoxContainer);
+ advanced_bar->set_h_size_flags(Control::SIZE_EXPAND_FILL);
+ advanced_bar->hide();
+ header->add_child(advanced_bar);
+
+ advanced_bar->add_child(memnew(HSeparator));
+
+ HBoxContainer *hbc = memnew(HBoxContainer);
+ hbc->set_h_size_flags(Control::SIZE_EXPAND_FILL);
+ advanced_bar->add_margin_child(TTR("Add or Remove Custom Project Settings:"), hbc, true);
+
+ category_box = memnew(LineEdit);
+ category_box->set_h_size_flags(Control::SIZE_EXPAND_FILL);
+ category_box->connect("text_changed", callable_mp(this, &ProjectSettingsEditor::_text_field_changed));
+ category_box->set_placeholder(TTR("Category"));
+ hbc->add_child(category_box);
+
+ Label *l = memnew(Label);
+ l->set_text("/");
+ hbc->add_child(l);
+
+ property_box = memnew(LineEdit);
+ property_box->set_h_size_flags(Control::SIZE_EXPAND_FILL);
+ property_box->set_placeholder(TTR("Property"));
+ property_box->connect("text_changed", callable_mp(this, &ProjectSettingsEditor::_text_field_changed));
+ hbc->add_child(property_box);
+
+ l = memnew(Label);
+ l->set_text(TTR("Type:"));
+ hbc->add_child(l);
+
+ type = memnew(OptionButton);
+ type->set_custom_minimum_size(Size2(100, 0) * EDSCALE);
+ hbc->add_child(type);
+
+ // Start at 1 to avoid adding "Nil" as an option
+ for (int i = 1; i < Variant::VARIANT_MAX; i++) {
+ type->add_item(Variant::get_type_name(Variant::Type(i)));
+ }
- globals_editor = memnew(SectionedInspector);
- globals_editor->get_inspector()->set_undo_redo(EditorNode::get_singleton()->get_undo_redo());
- globals_editor->set_v_size_flags(Control::SIZE_EXPAND_FILL);
- globals_editor->register_search_box(search_box);
- globals_editor->get_inspector()->connect("property_selected", callable_mp(this, &ProjectSettingsEditor::_item_selected));
- globals_editor->get_inspector()->connect("property_edited", callable_mp(this, &ProjectSettingsEditor::_settings_prop_edited));
- globals_editor->get_inspector()->connect("restart_requested", callable_mp(this, &ProjectSettingsEditor::_editor_restart_request));
- props_base->add_child(globals_editor);
+ l = memnew(Label);
+ l->set_text(TTR("Feature Override:"));
+ hbc->add_child(l);
- Button *del = memnew(Button);
- del->set_text(TTR("Delete"));
- del->connect("pressed", callable_mp(this, &ProjectSettingsEditor::_item_del));
- hbc->add_child(del);
+ feature_override = memnew(OptionButton);
+ feature_override->set_custom_minimum_size(Size2(100, 0) * EDSCALE);
+ feature_override->connect("item_selected", callable_mp(this, &ProjectSettingsEditor::_feature_selected));
+ hbc->add_child(feature_override);
- add_prop_bar->add_child(memnew(VSeparator));
+ add_button = memnew(Button);
+ add_button->set_flat(true);
+ add_button->connect("pressed", callable_mp(this, &ProjectSettingsEditor::_add_setting));
+ hbc->add_child(add_button);
- popup_copy_to_feature = memnew(MenuButton);
- popup_copy_to_feature->set_text(TTR("Override For..."));
- popup_copy_to_feature->set_disabled(true);
- add_prop_bar->add_child(popup_copy_to_feature);
+ del_button = memnew(Button);
+ del_button->set_flat(true);
+ del_button->connect("pressed", callable_mp(this, &ProjectSettingsEditor::_delete_setting), varray(false));
+ hbc->add_child(del_button);
- popup_copy_to_feature->get_popup()->connect("id_pressed", callable_mp(this, &ProjectSettingsEditor::_copy_to_platform));
- popup_copy_to_feature->get_popup()->connect("about_to_popup", callable_mp(this, &ProjectSettingsEditor::_copy_to_platform_about_to_show));
+ error_label = memnew(Label);
+ advanced_bar->add_child(error_label);
+ }
- get_ok()->set_text(TTR("Close"));
- set_hide_on_ok(true);
+ inspector = memnew(SectionedInspector);
+ inspector->get_inspector()->set_undo_redo(EditorNode::get_singleton()->get_undo_redo());
+ inspector->set_v_size_flags(Control::SIZE_EXPAND_FILL);
+ inspector->register_search_box(search_box);
+ inspector->get_inspector()->connect("property_selected", callable_mp(this, &ProjectSettingsEditor::_setting_selected));
+ inspector->get_inspector()->connect("property_edited", callable_mp(this, &ProjectSettingsEditor::_setting_edited));
+ inspector->get_inspector()->connect("restart_requested", callable_mp(this, &ProjectSettingsEditor::_editor_restart_request));
+ general_editor->add_child(inspector);
restart_container = memnew(PanelContainer);
- props_base->add_child(restart_container);
+ general_editor->add_child(restart_container);
HBoxContainer *restart_hb = memnew(HBoxContainer);
restart_container->hide();
@@ -475,27 +442,24 @@ ProjectSettingsEditor::ProjectSettingsEditor(EditorData *p_data) {
restart_close_button->connect("pressed", callable_mp(this, &ProjectSettingsEditor::_editor_restart_close));
restart_hb->add_child(restart_close_button);
- message = memnew(AcceptDialog);
- add_child(message);
-
inputmap_editor = memnew(InputMapEditor);
inputmap_editor->set_name(TTR("Input Map"));
- inputmap_editor->connect("inputmap_changed", callable_mp(this, &ProjectSettingsEditor::_settings_changed));
+ inputmap_editor->connect("inputmap_changed", callable_mp(this, &ProjectSettingsEditor::queue_save));
tab_container->add_child(inputmap_editor);
localization_editor = memnew(LocalizationEditor);
localization_editor->set_name(TTR("Localization"));
- localization_editor->connect("localization_changed", callable_mp(this, &ProjectSettingsEditor::_settings_changed));
+ localization_editor->connect("localization_changed", callable_mp(this, &ProjectSettingsEditor::queue_save));
tab_container->add_child(localization_editor);
autoload_settings = memnew(EditorAutoloadSettings);
autoload_settings->set_name(TTR("AutoLoad"));
- autoload_settings->connect("autoload_changed", callable_mp(this, &ProjectSettingsEditor::_settings_changed));
+ autoload_settings->connect("autoload_changed", callable_mp(this, &ProjectSettingsEditor::queue_save));
tab_container->add_child(autoload_settings);
shaders_global_variables_editor = memnew(ShaderGlobalsEditor);
shaders_global_variables_editor->set_name(TTR("Shader Globals"));
- shaders_global_variables_editor->connect("globals_changed", callable_mp(this, &ProjectSettingsEditor::_settings_changed));
+ shaders_global_variables_editor->connect("globals_changed", callable_mp(this, &ProjectSettingsEditor::queue_save));
tab_container->add_child(shaders_global_variables_editor);
plugin_settings = memnew(EditorPluginSettings);
@@ -504,7 +468,14 @@ ProjectSettingsEditor::ProjectSettingsEditor(EditorData *p_data) {
timer = memnew(Timer);
timer->set_wait_time(1.5);
- timer->connect("timeout", callable_mp(ProjectSettings::get_singleton(), &ProjectSettings::save));
+ timer->connect("timeout", callable_mp(ps, &ProjectSettings::save));
timer->set_one_shot(true);
add_child(timer);
+
+ del_confirmation = memnew(ConfirmationDialog);
+ del_confirmation->connect("confirmed", callable_mp(this, &ProjectSettingsEditor::_delete_setting), varray(true));
+ add_child(del_confirmation);
+
+ get_ok()->set_text(TTR("Close"));
+ set_hide_on_ok(true);
}
diff --git a/editor/project_settings_editor.h b/editor/project_settings_editor.h
index c99c2fe9a2..4ecd28e514 100644
--- a/editor/project_settings_editor.h
+++ b/editor/project_settings_editor.h
@@ -35,12 +35,11 @@
#include "editor/editor_data.h"
#include "editor/editor_plugin_settings.h"
#include "editor/editor_sectioned_inspector.h"
+#include "editor/input_map_editor.h"
+#include "editor/localization_editor.h"
+#include "editor/shader_globals_editor.h"
#include "editor_autoload_settings.h"
-#include "input_map_editor.h"
-#include "localization_editor.h"
-#include "scene/gui/dialogs.h"
#include "scene/gui/tab_container.h"
-#include "shader_globals_editor.h"
class ProjectSettingsEditor : public AcceptDialog {
GDCLASS(ProjectSettingsEditor, AcceptDialog);
@@ -53,28 +52,33 @@ class ProjectSettingsEditor : public AcceptDialog {
INPUT_MOUSE_BUTTON
};
- TabContainer *tab_container;
- AcceptDialog *message;
+ static ProjectSettingsEditor *singleton;
+ ProjectSettings *ps;
Timer *timer;
- HBoxContainer *search_bar;
- Button *search_button;
- LineEdit *search_box;
- HBoxContainer *add_prop_bar;
- LineEdit *category;
- LineEdit *property;
- OptionButton *type;
-
- SectionedInspector *globals_editor;
-
- MenuButton *popup_copy_to_feature;
-
+ TabContainer *tab_container;
+ SectionedInspector *inspector;
InputMapEditor *inputmap_editor;
LocalizationEditor *localization_editor;
EditorAutoloadSettings *autoload_settings;
ShaderGlobalsEditor *shaders_global_variables_editor;
EditorPluginSettings *plugin_settings;
+ HBoxContainer *search_bar;
+ LineEdit *search_box;
+ CheckButton *advanced;
+
+ VBoxContainer *advanced_bar;
+ LineEdit *category_box;
+ LineEdit *property_box;
+ Button *add_button;
+ Button *del_button;
+ OptionButton *type;
+ OptionButton *feature_override;
+ Label *error_label;
+
+ ConfirmationDialog *del_confirmation;
+
Label *restart_label;
TextureRect *restart_icon;
PanelContainer *restart_container;
@@ -83,30 +87,25 @@ class ProjectSettingsEditor : public AcceptDialog {
EditorData *data;
UndoRedo *undo_redo;
- void _item_selected(const String &);
- void _item_adds(String);
- void _item_add();
- void _item_del();
- void _save();
-
- void _settings_prop_edited(const String &p_name);
- void _settings_changed();
-
- void _copy_to_platform(int p_which);
- void _copy_to_platform_about_to_show();
-
- void _toggle_search_bar(bool p_pressed);
+ void _advanced_pressed();
+ void _update_advanced_bar();
+ void _text_field_changed(const String &p_text);
+ void _feature_selected(int p_index);
- ProjectSettingsEditor();
-
- static ProjectSettingsEditor *singleton;
+ String _get_setting_name() const;
+ void _setting_edited(const String &p_name);
+ void _setting_selected(const String &p_path);
+ void _add_setting();
+ void _delete_setting(bool p_confirmed);
void _editor_restart_request();
void _editor_restart();
void _editor_restart_close();
+ void _add_feature_overrides();
+ ProjectSettingsEditor();
+
protected:
- void _unhandled_input(const Ref<InputEvent> &p_event);
void _notification(int p_what);
static void _bind_methods();
@@ -117,8 +116,7 @@ public:
void update_plugins();
EditorAutoloadSettings *get_autoload_settings() { return autoload_settings; }
-
- TabContainer *get_tabs();
+ TabContainer *get_tabs() { return tab_container; }
void queue_save();
diff --git a/editor/rename_dialog.cpp b/editor/rename_dialog.cpp
index 211e365454..23990bca07 100644
--- a/editor/rename_dialog.cpp
+++ b/editor/rename_dialog.cpp
@@ -61,18 +61,16 @@ RenameDialog::RenameDialog(SceneTreeEditor *p_scene_tree_editor, UndoRedo *p_und
// ---- 1st & 2nd row
Label *lbl_search = memnew(Label);
- lbl_search->set_text(TTR("Search"));
+ lbl_search->set_text(TTR("Search:"));
lne_search = memnew(LineEdit);
- lne_search->set_placeholder(TTR("Search"));
lne_search->set_name("lne_search");
lne_search->set_h_size_flags(Control::SIZE_EXPAND_FILL);
Label *lbl_replace = memnew(Label);
- lbl_replace->set_text(TTR("Replace"));
+ lbl_replace->set_text(TTR("Replace:"));
lne_replace = memnew(LineEdit);
- lne_replace->set_placeholder(TTR("Replace"));
lne_replace->set_name("lne_replace");
lne_replace->set_h_size_flags(Control::SIZE_EXPAND_FILL);
@@ -84,18 +82,16 @@ RenameDialog::RenameDialog(SceneTreeEditor *p_scene_tree_editor, UndoRedo *p_und
// ---- 3rd & 4th row
Label *lbl_prefix = memnew(Label);
- lbl_prefix->set_text(TTR("Prefix"));
+ lbl_prefix->set_text(TTR("Prefix:"));
lne_prefix = memnew(LineEdit);
- lne_prefix->set_placeholder(TTR("Prefix"));
lne_prefix->set_name("lne_prefix");
lne_prefix->set_h_size_flags(Control::SIZE_EXPAND_FILL);
Label *lbl_suffix = memnew(Label);
- lbl_suffix->set_text(TTR("Suffix"));
+ lbl_suffix->set_text(TTR("Suffix:"));
lne_suffix = memnew(LineEdit);
- lne_suffix->set_placeholder(TTR("Suffix"));
lne_suffix->set_name("lne_suffix");
lne_suffix->set_h_size_flags(Control::SIZE_EXPAND_FILL);
@@ -106,8 +102,6 @@ RenameDialog::RenameDialog(SceneTreeEditor *p_scene_tree_editor, UndoRedo *p_und
// -- Feature Tabs
- const int feature_min_height = 160 * EDSCALE;
-
cbut_regex = memnew(CheckButton);
cbut_regex->set_text(TTR("Use Regular Expressions"));
vbc->add_child(cbut_regex);
@@ -118,13 +112,13 @@ RenameDialog::RenameDialog(SceneTreeEditor *p_scene_tree_editor, UndoRedo *p_und
tabc_features = memnew(TabContainer);
tabc_features->set_tab_align(TabContainer::ALIGN_LEFT);
+ tabc_features->set_use_hidden_tabs_for_min_size(true);
vbc->add_child(tabc_features);
// ---- Tab Substitute
VBoxContainer *vbc_substitute = memnew(VBoxContainer);
vbc_substitute->set_h_size_flags(Control::SIZE_EXPAND_FILL);
- vbc_substitute->set_custom_minimum_size(Size2(0, feature_min_height));
vbc_substitute->set_name(TTR("Substitute"));
tabc_features->add_child(vbc_substitute);
@@ -199,7 +193,7 @@ RenameDialog::RenameDialog(SceneTreeEditor *p_scene_tree_editor, UndoRedo *p_und
chk_per_level_counter = memnew(CheckBox);
chk_per_level_counter->set_text(TTR("Per-level Counter"));
- chk_per_level_counter->set_tooltip(TTR("If set the counter restarts for each group of child nodes."));
+ chk_per_level_counter->set_tooltip(TTR("If set, the counter restarts for each group of child nodes."));
vbc_substitute->add_child(chk_per_level_counter);
HBoxContainer *hbc_count_options = memnew(HBoxContainer);
@@ -241,7 +235,6 @@ RenameDialog::RenameDialog(SceneTreeEditor *p_scene_tree_editor, UndoRedo *p_und
VBoxContainer *vbc_process = memnew(VBoxContainer);
vbc_process->set_h_size_flags(Control::SIZE_EXPAND_FILL);
vbc_process->set_name(TTR("Post-Process"));
- vbc_process->set_custom_minimum_size(Size2(0, feature_min_height));
tabc_features->add_child(vbc_process);
cbut_process = memnew(CheckBox);
@@ -285,18 +278,14 @@ RenameDialog::RenameDialog(SceneTreeEditor *p_scene_tree_editor, UndoRedo *p_und
vbc->add_child(sep_preview);
lbl_preview_title = memnew(Label);
- lbl_preview_title->set_text(TTR("Preview"));
vbc->add_child(lbl_preview_title);
lbl_preview = memnew(Label);
- lbl_preview->set_text("");
- lbl_preview->add_theme_color_override("font_color", EditorNode::get_singleton()->get_gui_base()->get_theme_color("error_color", "Editor"));
vbc->add_child(lbl_preview);
// ---- Dialog related
set_min_size(Size2(383, 0));
- //set_as_toplevel(true);
get_ok()->set_text(TTR("Rename"));
Button *but_reset = add_button(TTR("Reset"));
@@ -307,7 +296,7 @@ RenameDialog::RenameDialog(SceneTreeEditor *p_scene_tree_editor, UndoRedo *p_und
cbut_collapse_features->connect("toggled", callable_mp(this, &RenameDialog::_features_toggled));
- // Substitite Buttons
+ // Substitute Buttons
lne_search->connect("focus_entered", callable_mp(this, &RenameDialog::_update_substitute));
lne_search->connect("focus_exited", callable_mp(this, &RenameDialog::_update_substitute));
@@ -391,7 +380,7 @@ void RenameDialog::_update_preview(String new_text) {
String new_name = _apply_rename(preview_node, spn_count_start->get_value());
if (!has_errors) {
- lbl_preview_title->set_text(TTR("Preview"));
+ lbl_preview_title->set_text(TTR("Preview:"));
lbl_preview->set_text(new_name);
if (new_name == preview_node->get_name()) {
@@ -482,7 +471,7 @@ void RenameDialog::_error_handler(void *p_self, const char *p_func, const char *
}
self->has_errors = true;
- self->lbl_preview_title->set_text(TTR("Regular Expression Error"));
+ self->lbl_preview_title->set_text(TTR("Regular Expression Error:"));
self->lbl_preview->add_theme_color_override("font_color", EditorNode::get_singleton()->get_gui_base()->get_theme_color("error_color", "Editor"));
self->lbl_preview->set_text(vformat(TTR("At character %s"), err_str));
}
diff --git a/editor/translations/ar.po b/editor/translations/ar.po
index 45ac317d99..075bc25f6e 100644
--- a/editor/translations/ar.po
+++ b/editor/translations/ar.po
@@ -43,12 +43,13 @@
# HeroFight dev <abdkafi2002@gmail.com>, 2020.
# أحمد مصطÙÙ‰ الطبراني <eltabaraniahmed@gmail.com>, 2020.
# ChemicalInk <aladdinalkhafaji@gmail.com>, 2020.
+# Musab Alasaifer <mousablasefer@gmail.com>, 2020.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine editor\n"
"POT-Creation-Date: \n"
-"PO-Revision-Date: 2020-07-21 13:41+0000\n"
-"Last-Translator: ChemicalInk <aladdinalkhafaji@gmail.com>\n"
+"PO-Revision-Date: 2020-08-11 14:04+0000\n"
+"Last-Translator: Musab Alasaifer <mousablasefer@gmail.com>\n"
"Language-Team: Arabic <https://hosted.weblate.org/projects/godot-engine/"
"godot/ar/>\n"
"Language: ar\n"
@@ -5619,9 +5620,8 @@ msgid "Divide grid step by 2"
msgstr "قسم خطوة الشبكة بـ 2"
#: editor/plugins/canvas_item_editor_plugin.cpp
-#, fuzzy
msgid "Pan View"
-msgstr "أظهر"
+msgstr "إظهار شامل"
#: editor/plugins/canvas_item_editor_plugin.cpp
msgid "Add %s"
@@ -5963,9 +5963,8 @@ msgstr ""
"هذا هو الخيار الأسرع (لكنه الأقل دقة) للكش٠عن وقوع التصادم."
#: editor/plugins/mesh_instance_editor_plugin.cpp
-#, fuzzy
msgid "Create Multiple Convex Collision Siblings"
-msgstr "إنشاء متصادم محدب قريب"
+msgstr "إنشاء أشقاء تصادم محدب متعددة"
#: editor/plugins/mesh_instance_editor_plugin.cpp
msgid ""
@@ -6020,11 +6019,12 @@ msgid "Remove item %d?"
msgstr "مسح العنصر %d؟"
#: editor/plugins/mesh_library_editor_plugin.cpp
-#, fuzzy
msgid ""
"Update from existing scene?:\n"
"%s"
-msgstr "تحديث من المشهد"
+msgstr ""
+"التحديث من المشهد المتواجد؟:\n"
+"%s"
#: editor/plugins/mesh_library_editor_plugin.cpp
msgid "Mesh Library"
@@ -6146,12 +6146,10 @@ msgstr "إنشاء Ù…Ùضلع التنقل"
#: editor/plugins/particles_2d_editor_plugin.cpp
#: editor/plugins/particles_editor_plugin.cpp
-#, fuzzy
msgid "Convert to CPUParticles"
-msgstr "تحويل إلي %s"
+msgstr "تحويل إلى %s"
#: editor/plugins/particles_2d_editor_plugin.cpp
-#, fuzzy
msgid "Generating Visibility Rect"
msgstr "توليد Rect الرؤية"
@@ -6173,23 +6171,20 @@ msgid "The geometry's faces don't contain any area."
msgstr "الوجوه الهندسية لا تتضمن أي منطقة."
#: editor/plugins/particles_editor_plugin.cpp
-#, fuzzy
msgid "The geometry doesn't contain any faces."
-msgstr "العقدة لا تحتوي على هندسة (الوجوه)."
+msgstr "الهندسة لا تحتوي على وجوه."
#: editor/plugins/particles_editor_plugin.cpp
msgid "\"%s\" doesn't inherit from Spatial."
msgstr "\"%s\" لا يرث الÙراغي Spatial."
#: editor/plugins/particles_editor_plugin.cpp
-#, fuzzy
msgid "\"%s\" doesn't contain geometry."
-msgstr "العقدة لا تحتوي على هندسة."
+msgstr "\"%s\" لا تحتوي على هندسة."
#: editor/plugins/particles_editor_plugin.cpp
-#, fuzzy
msgid "\"%s\" doesn't contain face geometry."
-msgstr "العقدة لا تحتوي على هندسة."
+msgstr "\"%s\" لا تحتوي على هندسة وجه."
#: editor/plugins/particles_editor_plugin.cpp
msgid "Create Emitter"
@@ -6249,9 +6244,8 @@ msgid "Add Point to Curve"
msgstr "أض٠نقطة للمنحنى"
#: editor/plugins/path_2d_editor_plugin.cpp
-#, fuzzy
msgid "Split Curve"
-msgstr "تحرير منحنى العقدة"
+msgstr "تقسيم المنحنى"
#: editor/plugins/path_2d_editor_plugin.cpp
msgid "Move Point in Curve"
@@ -6882,49 +6876,42 @@ msgid "Debugger"
msgstr "Ù…Ùنقح الأخطاء"
#: editor/plugins/script_editor_plugin.cpp
-#, fuzzy
msgid "Search Results"
-msgstr "إبحث ÙÙŠ المساعدة"
+msgstr "نتائج البحث"
#: editor/plugins/script_editor_plugin.cpp
-#, fuzzy
msgid "Clear Recent Scripts"
-msgstr "إخلاء المشاهد الحالية"
+msgstr "إخلاء النصوص البرمجية الحديثة"
#: editor/plugins/script_text_editor.cpp
-#, fuzzy
msgid "Connections to method:"
-msgstr "صلها بالعقدة:"
+msgstr "الاتصالات لدالة:"
#: editor/plugins/script_text_editor.cpp editor/script_editor_debugger.cpp
-#, fuzzy
msgid "Source"
-msgstr "مورد"
+msgstr "مصدر"
#: editor/plugins/script_text_editor.cpp
msgid "Target"
msgstr "الهدÙ"
#: editor/plugins/script_text_editor.cpp
-#, fuzzy
msgid ""
"Missing connected method '%s' for signal '%s' from node '%s' to node '%s'."
-msgstr "قطع إتصال'%s' من '%s'"
+msgstr ""
+"الدالة المتصلة '%s' للاشارة '%s' Ù…Ùقودة من العقدة '%s' إلى العقدة '%s'."
#: editor/plugins/script_text_editor.cpp
-#, fuzzy
msgid "[Ignore]"
msgstr "(تجاهل)"
#: editor/plugins/script_text_editor.cpp
-#, fuzzy
msgid "Line"
-msgstr "الخط:"
+msgstr "خط"
#: editor/plugins/script_text_editor.cpp
-#, fuzzy
msgid "Go to Function"
-msgstr "مسح المهمة"
+msgstr "انتقل الى الوظيÙØ© البرمجية"
#: editor/plugins/script_text_editor.cpp
msgid "Only resources from filesystem can be dropped."
@@ -6974,9 +6961,8 @@ msgid "Bookmarks"
msgstr "المحÙوظات"
#: editor/plugins/script_text_editor.cpp
-#, fuzzy
msgid "Breakpoints"
-msgstr "مسح النقاط"
+msgstr "نقاط التكسّر"
#: editor/plugins/script_text_editor.cpp scene/gui/line_edit.cpp
#: scene/gui/text_edit.cpp
@@ -7025,66 +7011,56 @@ msgid "Complete Symbol"
msgstr "رمز التمام"
#: editor/plugins/script_text_editor.cpp
-#, fuzzy
msgid "Evaluate Selection"
-msgstr "تكبير المحدد"
+msgstr "تقييم الاختيار"
#: editor/plugins/script_text_editor.cpp
msgid "Trim Trailing Whitespace"
msgstr "تشذيب الÙراغات البيضاء الزائدة"
#: editor/plugins/script_text_editor.cpp
-#, fuzzy
msgid "Convert Indent to Spaces"
-msgstr "تحويل إلي %s"
+msgstr "تحويل المساÙØ© البادئة إلى مساÙات"
#: editor/plugins/script_text_editor.cpp
-#, fuzzy
msgid "Convert Indent to Tabs"
-msgstr "تحويل إلي %s"
+msgstr "تحويل المساÙØ© البادئة إلى تبويبات"
#: editor/plugins/script_text_editor.cpp
msgid "Auto Indent"
msgstr "مساÙØ© بادئة تلقائية"
#: editor/plugins/script_text_editor.cpp
-#, fuzzy
msgid "Find in Files..."
-msgstr "Ùلتر الملÙات..."
+msgstr "جÙد ÙÙŠ الملÙات..."
#: editor/plugins/script_text_editor.cpp
msgid "Contextual Help"
msgstr "مساعدة سياقية"
#: editor/plugins/script_text_editor.cpp
-#, fuzzy
msgid "Toggle Bookmark"
-msgstr "إلغاء/تÙعيل وضع النظرة الحرة"
+msgstr "تبديل العلامة المرجعية"
#: editor/plugins/script_text_editor.cpp
-#, fuzzy
msgid "Go to Next Bookmark"
-msgstr "إذهب إلي الخطوة التالية"
+msgstr "الانتقال إلى العلامة المرجعية التالية"
#: editor/plugins/script_text_editor.cpp
-#, fuzzy
msgid "Go to Previous Bookmark"
-msgstr "إذهب إلي الخطوة السابقة"
+msgstr "الانتقال إلى العلامة المرجعية السابقة"
#: editor/plugins/script_text_editor.cpp
-#, fuzzy
msgid "Remove All Bookmarks"
-msgstr "مسح الكل"
+msgstr "إزالة جميع الإشارات المرجعية"
#: editor/plugins/script_text_editor.cpp
-#, fuzzy
msgid "Go to Function..."
-msgstr "مسح المهمة"
+msgstr "الذهاب إلى وظيÙØ© برمجية..."
#: editor/plugins/script_text_editor.cpp
-#, fuzzy
msgid "Go to Line..."
-msgstr "إذهب إلي الخط"
+msgstr "الذهاب إلى خط..."
#: editor/plugins/script_text_editor.cpp
#: modules/visual_script/visual_script_editor.cpp
@@ -7096,14 +7072,12 @@ msgid "Remove All Breakpoints"
msgstr "إزالة جميع نقاط التكسّر"
#: editor/plugins/script_text_editor.cpp
-#, fuzzy
msgid "Go to Next Breakpoint"
-msgstr "إذهب إلي الخطوة التالية"
+msgstr "الذهاب إلى نقطة التكسّر التالية"
#: editor/plugins/script_text_editor.cpp
-#, fuzzy
msgid "Go to Previous Breakpoint"
-msgstr "إذهب إلي الخطوة السابقة"
+msgstr "الذهاب إلى نقطة التكسّر السابقة"
#: editor/plugins/shader_editor_plugin.cpp
msgid ""
@@ -7122,9 +7096,8 @@ msgid "This skeleton has no bones, create some children Bone2D nodes."
msgstr "لا يملك هذا الهكيل أيّة عظام، أنشئ بعض عÙقد العظام ثنائية البÙعد كأبناء."
#: editor/plugins/skeleton_2d_editor_plugin.cpp
-#, fuzzy
msgid "Create Rest Pose from Bones"
-msgstr "أنشئ نقاط إنبعاث من الشبكة"
+msgstr "إنشاء وضعية الراحة من العظام"
#: editor/plugins/skeleton_2d_editor_plugin.cpp
msgid "Set Rest Pose to Bones"
@@ -7143,23 +7116,20 @@ msgid "Set Bones to Rest Pose"
msgstr "تحديد العظام لتكون ÙÙŠ وضعية الراحة"
#: editor/plugins/skeleton_editor_plugin.cpp
-#, fuzzy
msgid "Create physical bones"
-msgstr "أنشئ ميش التنقل"
+msgstr "إنشاء عظام مادية"
#: editor/plugins/skeleton_editor_plugin.cpp
msgid "Skeleton"
msgstr "الهيكل"
#: editor/plugins/skeleton_editor_plugin.cpp
-#, fuzzy
msgid "Create physical skeleton"
-msgstr "إنشاء حل C#‎"
+msgstr "إنشاء هيكل عظمي مادي"
#: editor/plugins/skeleton_ik_editor_plugin.cpp
-#, fuzzy
msgid "Play IK"
-msgstr "تشغيل"
+msgstr "تشغيل IK"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "Orthogonal"
@@ -7352,12 +7322,11 @@ msgstr "المستمع الصوتي"
#: editor/plugins/spatial_editor_plugin.cpp
#, fuzzy
msgid "Enable Doppler"
-msgstr "تغيير خط الحركة"
+msgstr "تÙعيل دوبلر"
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Cinematic Preview"
-msgstr "ÙŠÙنشئ مستعرضات الميش"
+msgstr "معاينة سينمائية"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "Not available when using the GLES2 renderer."
@@ -7419,6 +7388,12 @@ msgid ""
"Closed eye: Gizmo is hidden.\n"
"Half-open eye: Gizmo is also visible through opaque surfaces (\"x-ray\")."
msgstr ""
+"انقر للتبديل بين حالات الرؤية.\n"
+"\n"
+"العين المÙتوحة: الأداة مرئية.\n"
+"العين المغلقة: الأداة مخÙية.\n"
+"العين نص٠مÙتوحة: الأداة مرئية أيضا من خلال الأسطح المعتمة (\"الأشعة السينية"
+"\")."
#: editor/plugins/spatial_editor_plugin.cpp
msgid "Snap Nodes To Floor"
@@ -7496,9 +7471,8 @@ msgid "Transform"
msgstr "التحوّل"
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Snap Object to Floor"
-msgstr "الكبس إلي الشبكة"
+msgstr "محاذاة الشيء إلى الأرض"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "Transform Dialog..."
@@ -7542,9 +7516,8 @@ msgstr "إظهار الشبكة"
#: editor/plugins/spatial_editor_plugin.cpp
#: modules/gridmap/grid_map_editor_plugin.cpp
-#, fuzzy
msgid "Settings..."
-msgstr "جاري الإعداد..."
+msgstr "اعدادات..."
#: editor/plugins/spatial_editor_plugin.cpp
msgid "Snap Settings"
@@ -7612,48 +7585,40 @@ msgid "Nameless gizmo"
msgstr "أداة (gizmo) غير مسماة"
#: editor/plugins/sprite_editor_plugin.cpp
-#, fuzzy
msgid "Create Mesh2D"
-msgstr "إنشاء شبكة الخطوط العريضة"
+msgstr "إنشاء Mesh2D"
#: editor/plugins/sprite_editor_plugin.cpp
-#, fuzzy
msgid "Mesh2D Preview"
-msgstr "ÙŠÙنشئ مستعرضات الميش"
+msgstr "معاينة Mesh2D"
#: editor/plugins/sprite_editor_plugin.cpp
-#, fuzzy
msgid "Create Polygon2D"
-msgstr "إنشاء بولي"
+msgstr "إنشاء Ù…Ùضلع ثنائي الأبعاد"
#: editor/plugins/sprite_editor_plugin.cpp
msgid "Polygon2D Preview"
msgstr "Ù…Ùعاينة المÙضلع ثنائي الأبعاد"
#: editor/plugins/sprite_editor_plugin.cpp
-#, fuzzy
msgid "Create CollisionPolygon2D"
-msgstr "إنشاء Ù…Ùضلع التنقل"
+msgstr "إنشاء Ù…Ùضلع تصادم ثنائي الأبعاد"
#: editor/plugins/sprite_editor_plugin.cpp
-#, fuzzy
msgid "CollisionPolygon2D Preview"
-msgstr "إنشاء Ù…Ùضلع التنقل"
+msgstr "معاينة Ù…Ùضلع التصادم ثنائي الأبعاد"
#: editor/plugins/sprite_editor_plugin.cpp
-#, fuzzy
msgid "Create LightOccluder2D"
-msgstr "أنشئ شكل Ù…Ùطبق"
+msgstr "إنشاء LightOccluder2D"
#: editor/plugins/sprite_editor_plugin.cpp
-#, fuzzy
msgid "LightOccluder2D Preview"
-msgstr "أنشئ شكل Ù…Ùطبق"
+msgstr "معاينة LightOccluder2D"
#: editor/plugins/sprite_editor_plugin.cpp
-#, fuzzy
msgid "Sprite is empty!"
-msgstr "الميش Ùارغ!"
+msgstr "الرسومية Ùارغة!"
#: editor/plugins/sprite_editor_plugin.cpp
msgid "Can't convert a sprite using animation frames to mesh."
@@ -7666,27 +7631,24 @@ msgid "Invalid geometry, can't replace by mesh."
msgstr "هندسياً غير صالح، لا يمكن استبداله بسطح (mesh)."
#: editor/plugins/sprite_editor_plugin.cpp
-#, fuzzy
msgid "Convert to Mesh2D"
-msgstr "تحويل إلي %s"
+msgstr "تحويل إلى Mesh2D"
#: editor/plugins/sprite_editor_plugin.cpp
msgid "Invalid geometry, can't create polygon."
msgstr "هندسياصً غير صالح، لا يمكن إنشاء Ù…Ùضلّع."
#: editor/plugins/sprite_editor_plugin.cpp
-#, fuzzy
msgid "Convert to Polygon2D"
-msgstr "تحويل إلي %s"
+msgstr "تحويل إلى Ù…Ùضلع ثنائي الأبعاد"
#: editor/plugins/sprite_editor_plugin.cpp
msgid "Invalid geometry, can't create collision polygon."
msgstr "هندسياً غير صالح، لا يمكن إنشاء Ù…Ùضلع تصادم."
#: editor/plugins/sprite_editor_plugin.cpp
-#, fuzzy
msgid "Create CollisionPolygon2D Sibling"
-msgstr "إنشاء Ù…Ùضلع التنقل"
+msgstr "إنشاء شقيق لمÙضلع التصادم ثنائي الأبعاد"
#: editor/plugins/sprite_editor_plugin.cpp
msgid "Invalid geometry, can't create light occluder."
@@ -7714,9 +7676,8 @@ msgid "Grow (Pixels): "
msgstr "التكبير (Pixels): "
#: editor/plugins/sprite_editor_plugin.cpp
-#, fuzzy
msgid "Update Preview"
-msgstr "إستعراض"
+msgstr "تحديث المÙعاينة"
#: editor/plugins/sprite_editor_plugin.cpp
msgid "Settings:"
@@ -7787,9 +7748,8 @@ msgid "Animation Frames:"
msgstr "إطارات الرسومات المتحركة:"
#: editor/plugins/sprite_frames_editor_plugin.cpp
-#, fuzzy
msgid "Add a Texture from File"
-msgstr "التقط من البيكسل"
+msgstr "إضاÙØ© ملمس من الملÙ"
#: editor/plugins/sprite_frames_editor_plugin.cpp
msgid "Add Frames from a Sprite Sheet"
@@ -7812,9 +7772,8 @@ msgid "Move (After)"
msgstr "تحريك (للتالي)"
#: editor/plugins/sprite_frames_editor_plugin.cpp
-#, fuzzy
msgid "Select Frames"
-msgstr "تحديد الوضع"
+msgstr "تحديد الإطارات"
#: editor/plugins/sprite_frames_editor_plugin.cpp
msgid "Horizontal:"
@@ -7926,23 +7885,20 @@ msgid "Create From Current Editor Theme"
msgstr "إنشاء مستمد من موضوع Theme المحرر الحالي"
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Toggle Button"
-msgstr "إلغاء/تÙعيل التشغيل التلقائي"
+msgstr "زر التبديل"
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Disabled Button"
-msgstr "معطّل"
+msgstr "زر معطّل"
#: editor/plugins/theme_editor_plugin.cpp
msgid "Item"
msgstr "عنصر"
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Disabled Item"
-msgstr "معطّل"
+msgstr "عنصر معطّل"
#: editor/plugins/theme_editor_plugin.cpp
msgid "Check Item"
@@ -7969,14 +7925,12 @@ msgid "Submenu"
msgstr "القائمة الÙرعية"
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Subitem 1"
-msgstr "عنصر"
+msgstr "العنصر الÙرعي 1"
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Subitem 2"
-msgstr "عنصر"
+msgstr "العنصر الÙرعي 2"
#: editor/plugins/theme_editor_plugin.cpp
msgid "Has"
@@ -7987,9 +7941,8 @@ msgid "Many"
msgstr "العديد"
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Disabled LineEdit"
-msgstr "معطّل"
+msgstr "تعديل الخط معطّل"
#: editor/plugins/theme_editor_plugin.cpp
msgid "Tab 1"
@@ -8004,18 +7957,16 @@ msgid "Tab 3"
msgstr "علامة التبويب 3"
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Editable Item"
-msgstr "عنصر انتقاء"
+msgstr "عنصر قابل للتعديل"
#: editor/plugins/theme_editor_plugin.cpp
msgid "Subtree"
msgstr "الشجرة الÙرعية"
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Has,Many,Options"
-msgstr "بكثير، خيارات عديدة،!"
+msgstr "يمتلك، خيارات، عديدة"
#: editor/plugins/theme_editor_plugin.cpp
msgid "Data Type:"
@@ -8039,9 +7990,8 @@ msgid "Color"
msgstr "اللون"
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Theme File"
-msgstr "Ø¥Ùتح ملÙ"
+msgstr "مل٠الثيم"
#: editor/plugins/tile_map_editor_plugin.cpp
msgid "Erase Selection"
@@ -8054,9 +8004,8 @@ msgstr "اسم غير صالح."
#: editor/plugins/tile_map_editor_plugin.cpp
#: modules/gridmap/grid_map_editor_plugin.cpp
-#, fuzzy
msgid "Cut Selection"
-msgstr "نص٠المÙحدد"
+msgstr "قص المÙحدد"
#: editor/plugins/tile_map_editor_plugin.cpp
msgid "Paint TileMap"
@@ -8092,9 +8041,8 @@ msgid "Disable Autotile"
msgstr "تعطيل البلاط التلقائي Autotile"
#: editor/plugins/tile_map_editor_plugin.cpp
-#, fuzzy
msgid "Enable Priority"
-msgstr "تعديل المصاÙÙŠ"
+msgstr "تمكين الأولوية"
#: editor/plugins/tile_map_editor_plugin.cpp
#, fuzzy
@@ -8123,14 +8071,12 @@ msgid "Pick Tile"
msgstr "اختيار البلاط"
#: editor/plugins/tile_map_editor_plugin.cpp
-#, fuzzy
msgid "Rotate Left"
-msgstr "وضع التدوير"
+msgstr "تدوير لليسار"
#: editor/plugins/tile_map_editor_plugin.cpp
-#, fuzzy
msgid "Rotate Right"
-msgstr "وضع التدوير"
+msgstr "تدوير لليمين"
#: editor/plugins/tile_map_editor_plugin.cpp
msgid "Flip Horizontally"
@@ -8141,9 +8087,8 @@ msgid "Flip Vertically"
msgstr "القلب عموديًا"
#: editor/plugins/tile_map_editor_plugin.cpp
-#, fuzzy
msgid "Clear Transform"
-msgstr "تحويل تغيير التحريك"
+msgstr "محو التَحَوّل"
#: editor/plugins/tile_set_editor_plugin.cpp
msgid "Add Texture(s) to TileSet."
@@ -8184,9 +8129,8 @@ msgid "Select the next shape, subtile, or Tile."
msgstr "اختر الشكل أو البلاط الÙرعي أو البلاط التالي."
#: editor/plugins/tile_set_editor_plugin.cpp
-#, fuzzy
msgid "Previous Coordinate"
-msgstr "التبويب السابق"
+msgstr "الإحداثيات السابقة"
#: editor/plugins/tile_set_editor_plugin.cpp
msgid "Select the previous shape, subtile, or Tile."
@@ -8267,9 +8211,8 @@ msgid "Erase bitmask."
msgstr "زر الÙأرة الأيمن: مسح النقطة."
#: editor/plugins/tile_set_editor_plugin.cpp
-#, fuzzy
msgid "Create a new rectangle."
-msgstr "إنشاء %s جديد"
+msgstr "إنشاء مستطيل جديد."
#: editor/plugins/tile_set_editor_plugin.cpp
msgid "Create a new polygon."
@@ -8544,9 +8487,8 @@ msgid "Add a commit message"
msgstr "إضاÙØ© رسالة إجراء"
#: editor/plugins/version_control_editor_plugin.cpp
-#, fuzzy
msgid "Commit Changes"
-msgstr "مزامنة تغييرات الكود"
+msgstr "اقترا٠التعديلا"
#: editor/plugins/version_control_editor_plugin.cpp
#: modules/gdnative/gdnative_library_singleton_editor.cpp
@@ -9342,9 +9284,8 @@ msgid "Vector constant."
msgstr "ثابت المÙتجه."
#: editor/plugins/visual_shader_editor_plugin.cpp
-#, fuzzy
msgid "Vector uniform."
-msgstr "التعين للإنتظام."
+msgstr "Ù…Ùتجهات موحدة."
#: editor/plugins/visual_shader_editor_plugin.cpp
msgid ""
@@ -10164,9 +10105,8 @@ msgid "Settings saved OK."
msgstr "تيسّر Ø­Ùظ الإعدادات."
#: editor/project_settings_editor.cpp
-#, fuzzy
msgid "Moved Input Action Event"
-msgstr "حرك النقطة داخل المنحنى"
+msgstr "حدث إجراء إدخال الذي تم نقله"
#: editor/project_settings_editor.cpp
msgid "Override for Feature"
@@ -10361,9 +10301,8 @@ msgid "Select Method"
msgstr "إختر طريقة"
#: editor/rename_dialog.cpp editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Batch Rename"
-msgstr "إعادة التسمية"
+msgstr "إعادة تسمية الدÙعة"
#: editor/rename_dialog.cpp
msgid "Prefix"
@@ -10386,9 +10325,8 @@ msgid "Substitute"
msgstr "استبدال"
#: editor/rename_dialog.cpp
-#, fuzzy
msgid "Node name"
-msgstr "إسم العقدة:"
+msgstr "إسم العقدة"
#: editor/rename_dialog.cpp
msgid "Node's parent name, if available"
@@ -10427,9 +10365,8 @@ msgid "Initial value for the counter"
msgstr "القيمة المبدئية للعداد"
#: editor/rename_dialog.cpp
-#, fuzzy
msgid "Step"
-msgstr "خطوة (ثانية):"
+msgstr "الخطوة"
#: editor/rename_dialog.cpp
msgid "Amount by which counter is incremented for each node"
@@ -10476,9 +10413,8 @@ msgid "To Uppercase"
msgstr "لأحر٠كبيرة Uppercase"
#: editor/rename_dialog.cpp
-#, fuzzy
msgid "Reset"
-msgstr "إرجاع التكبير"
+msgstr "إعادة تعيين"
#: editor/rename_dialog.cpp
msgid "Regular Expression Error"
@@ -10551,9 +10487,8 @@ msgid "Instance Child Scene"
msgstr "نمذجة المشهد الابن"
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Detach Script"
-msgstr "إلحاق نص برمجي"
+msgstr "Ùصل النص البرمجي"
#: editor/scene_tree_dock.cpp
msgid "This operation can't be done on the tree root."
@@ -10586,19 +10521,16 @@ msgid "Instantiated scenes can't become root"
msgstr "لا يمكن أن تصبح المشاهد المنمذجة مشاهد رئيسة (جذر)"
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Make node as Root"
-msgstr "Ø­Ùظ المشهد"
+msgstr "جعل العقدة المشهد الرئيس"
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Delete %d nodes and any children?"
-msgstr "حذ٠العÙقدة \"%s\" مع جميع أبنائها؟"
+msgstr "حذ٠العÙقدة %d مع جميع أبنائها؟"
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Delete %d nodes?"
-msgstr "إنشاء عقدة"
+msgstr "حذ٠العÙقد %d"
#: editor/scene_tree_dock.cpp
msgid "Delete the root node \"%s\"?"
@@ -10609,9 +10541,8 @@ msgid "Delete node \"%s\" and its children?"
msgstr "حذ٠العÙقدة \"%s\" مع جميع أبنائها؟"
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Delete node \"%s\"?"
-msgstr "إنشاء عقدة"
+msgstr "حذ٠العقدة \"%s\"؟"
#: editor/scene_tree_dock.cpp
msgid "Can not perform with the root node."
@@ -10667,9 +10598,8 @@ msgid "User Interface"
msgstr "واجهة المستخدم"
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Other Node"
-msgstr "إنشاء عقدة"
+msgstr "عقدة أخرى"
#: editor/scene_tree_dock.cpp
msgid "Can't operate on nodes from a foreign scene!"
@@ -10722,9 +10652,8 @@ msgid "Load As Placeholder"
msgstr "تحميله كعنصر نائب"
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Open Documentation"
-msgstr "ÙÙتح مؤخراً"
+msgstr "Ùتح الوثائق"
#: editor/scene_tree_dock.cpp
msgid ""
@@ -10732,15 +10661,16 @@ msgid ""
"This is probably because this editor was built with all language modules "
"disabled."
msgstr ""
+"لا يمكن إرÙاق نص برمجي: لا توجد لغات مسجلة.\n"
+"ربما يكون هذا بسبب أن المحرر تم إنشاؤه مع تعطيل جميع وحدات اللغة."
#: editor/scene_tree_dock.cpp
msgid "Add Child Node"
msgstr "إضاÙØ© عÙقدة ابن"
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Expand/Collapse All"
-msgstr "طوي الكل"
+msgstr "توسيع / طي الكل"
#: editor/scene_tree_dock.cpp
msgid "Change Type"
@@ -10752,9 +10682,8 @@ msgid "Reparent to New Node"
msgstr "إنشاء %s جديد"
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Make Scene Root"
-msgstr "Ø­Ùظ المشهد"
+msgstr "جعل المشهد الرئيس"
#: editor/scene_tree_dock.cpp
msgid "Merge From Scene"
@@ -10773,9 +10702,8 @@ msgid "Delete (No Confirm)"
msgstr "حذ٠(دون تأكيد)"
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Add/Create a New Node."
-msgstr "إنشاء %s جديد"
+msgstr "إضاÙØ©/إنشاء عقدة جديدة."
#: editor/scene_tree_dock.cpp
msgid ""
@@ -10786,14 +10714,12 @@ msgstr ""
"موروث."
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Attach a new or existing script to the selected node."
msgstr "إلحاق نص برمجي موجود أو جديد للعÙقدة المختارة."
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Detach the script from the selected node."
-msgstr "مسح النص البرمجي للعÙقدة المختارة."
+msgstr "Ùصل النص البرمجي من العÙقدة المختارة."
#: editor/scene_tree_dock.cpp
msgid "Remote"
@@ -10808,9 +10734,8 @@ msgid "Clear Inheritance? (No Undo!)"
msgstr "مسح الموروث؟ (لا تراجع!)"
#: editor/scene_tree_editor.cpp
-#, fuzzy
msgid "Toggle Visible"
-msgstr "أظهر الملÙات المخÙية"
+msgstr "تشغيل/إطÙاء الوضوحية"
#: editor/scene_tree_editor.cpp
#, fuzzy
diff --git a/editor/translations/cs.po b/editor/translations/cs.po
index e629fbc2ff..0d2ae15065 100644
--- a/editor/translations/cs.po
+++ b/editor/translations/cs.po
@@ -20,12 +20,13 @@
# Filip Vincůrek <vincurek.f@gmail.com>, 2020.
# Ondrej Pavelka <ondrej.pavelka@outlook.com>, 2020.
# Zbyněk <zbynek.fiala@gmail.com>, 2020.
+# Daniel Kříž <Daniel.kriz@protonmail.com>, 2020.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine editor\n"
"POT-Creation-Date: \n"
-"PO-Revision-Date: 2020-07-28 09:51+0000\n"
-"Last-Translator: Zbyněk <zbynek.fiala@gmail.com>\n"
+"PO-Revision-Date: 2020-08-11 14:04+0000\n"
+"Last-Translator: Daniel Kříž <Daniel.kriz@protonmail.com>\n"
"Language-Team: Czech <https://hosted.weblate.org/projects/godot-engine/godot/"
"cs/>\n"
"Language: cs\n"
@@ -8184,9 +8185,8 @@ msgid "Occlusion"
msgstr "Editovat polygon"
#: editor/plugins/tile_set_editor_plugin.cpp
-#, fuzzy
msgid "Navigation"
-msgstr "Vytvořit Navigation Mesh"
+msgstr "Navigace"
#: editor/plugins/tile_set_editor_plugin.cpp
#, fuzzy
@@ -8965,7 +8965,7 @@ msgstr "Vrátí hyperbolický kosinus parametru."
#: editor/plugins/visual_shader_editor_plugin.cpp
msgid "Converts a quantity in radians to degrees."
-msgstr "Konvertuje množství v radiánech na stupně."
+msgstr "Konvertuje hodnotu v radiánech na stupně."
#: editor/plugins/visual_shader_editor_plugin.cpp
msgid "Base-e Exponential."
@@ -9022,7 +9022,7 @@ msgstr "Vrátí hodnotu prvního parametru umocněného druhým."
#: editor/plugins/visual_shader_editor_plugin.cpp
msgid "Converts a quantity in degrees to radians."
-msgstr "Konvertuje množství ve stupních na radiány."
+msgstr "Konvertuje hodnotu ve stupních na radiány."
#: editor/plugins/visual_shader_editor_plugin.cpp
msgid "1.0 / scalar"
@@ -9521,7 +9521,7 @@ msgstr "Soubour balíÄk"
#: editor/project_export.cpp
msgid "Features"
-msgstr "Funkce"
+msgstr "Vlastnosti"
#: editor/project_export.cpp
msgid "Custom (comma-separated):"
@@ -10387,7 +10387,7 @@ msgstr ""
#: editor/rename_dialog.cpp
msgid "Padding"
-msgstr ""
+msgstr "Odsazení"
#: editor/rename_dialog.cpp
msgid ""
@@ -10475,7 +10475,7 @@ msgstr ""
#: editor/scene_tree_dock.cpp
msgid "No parent to instance the scenes at."
-msgstr ""
+msgstr "Chybí rodiÄ pro instancování scény."
#: editor/scene_tree_dock.cpp
msgid "Error loading scene from %s"
@@ -10489,7 +10489,7 @@ msgstr ""
#: editor/scene_tree_dock.cpp
msgid "Instance Scene(s)"
-msgstr ""
+msgstr "Scéna/Scény instance"
#: editor/scene_tree_dock.cpp
#, fuzzy
@@ -10501,9 +10501,8 @@ msgid "Instance Child Scene"
msgstr ""
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Detach Script"
-msgstr "Připojit skript"
+msgstr "Odpojit skript"
#: editor/scene_tree_dock.cpp
msgid "This operation can't be done on the tree root."
@@ -10534,9 +10533,8 @@ msgid "Instantiated scenes can't become root"
msgstr ""
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Make node as Root"
-msgstr "Dává smysl!"
+msgstr "Nastavit uzel jako zdrojový"
#: editor/scene_tree_dock.cpp
#, fuzzy
@@ -10693,9 +10691,8 @@ msgid "Reparent to New Node"
msgstr "Přidat/Vytvořit nový uzel"
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Make Scene Root"
-msgstr "Dává smysl!"
+msgstr "Nastav scénu jako zdrojovou"
#: editor/scene_tree_dock.cpp
msgid "Merge From Scene"
@@ -10795,6 +10792,8 @@ msgid ""
"Node is locked.\n"
"Click to unlock it."
msgstr ""
+"Uzel je zamÄený.\n"
+"KliknÄ›te pro odemÄení."
#: editor/scene_tree_editor.cpp
msgid ""
@@ -11219,16 +11218,15 @@ msgstr ""
#: modules/gdnative/gdnative_library_editor_plugin.cpp
msgid "Select dependencies of the library for this entry"
-msgstr ""
+msgstr "Vyberte závislosti knihovny pro tento vstup"
#: modules/gdnative/gdnative_library_editor_plugin.cpp
-#, fuzzy
msgid "Remove current entry"
-msgstr "Odstranit signál"
+msgstr "Odstranit aktuální vstup"
#: modules/gdnative/gdnative_library_editor_plugin.cpp
msgid "Double click to create a new entry"
-msgstr ""
+msgstr "Stiskněte dvakrát pro vytvoření nového vstupu"
#: modules/gdnative/gdnative_library_editor_plugin.cpp
msgid "Platform:"
@@ -12647,16 +12645,15 @@ msgstr "HSV"
#: scene/gui/color_picker.cpp
msgid "Raw"
-msgstr ""
+msgstr "Raw"
#: scene/gui/color_picker.cpp
msgid "Switch between hexadecimal and code values."
-msgstr ""
+msgstr "Přepni mezi hexadecimálními a kódovými hodnotami."
#: scene/gui/color_picker.cpp
-#, fuzzy
msgid "Add current color as a preset."
-msgstr "Přidat aktuální barvu jako předvolbu"
+msgstr "Přidat aktuální barvu jako předvolbu."
#: scene/gui/container.cpp
msgid ""
@@ -12730,11 +12727,11 @@ msgstr ""
#: scene/main/viewport.cpp
msgid "Viewport size must be greater than 0 to render anything."
msgstr ""
+"Velikost pohledu musí být větší než 0, aby bylo možné cokoliv renderovat."
#: scene/resources/visual_shader_nodes.cpp
-#, fuzzy
msgid "Invalid source for preview."
-msgstr "Neplatný zdroj pro shader."
+msgstr "Neplatný zdroj pro náhled."
#: scene/resources/visual_shader_nodes.cpp
msgid "Invalid source for shader."
@@ -12747,15 +12744,15 @@ msgstr "Neplatný zdroj pro shader."
#: servers/visual/shader_language.cpp
msgid "Assignment to function."
-msgstr ""
+msgstr "Přiřazeno funkci."
#: servers/visual/shader_language.cpp
msgid "Assignment to uniform."
-msgstr ""
+msgstr "Přiřazeno uniformu."
#: servers/visual/shader_language.cpp
msgid "Varyings can only be assigned in vertex function."
-msgstr ""
+msgstr "Odlišnosti mohou být přiřazeny pouze ve vertex funkci."
#: servers/visual/shader_language.cpp
msgid "Constants cannot be modified."
diff --git a/editor/translations/de.po b/editor/translations/de.po
index 4b8252173e..081dfb8e4f 100644
--- a/editor/translations/de.po
+++ b/editor/translations/de.po
@@ -54,12 +54,13 @@
# Jacqueline Ulken <Jacqueline.Ulken@protonmail.com>, 2020.
# Günther Bohn <ciscouser@gmx.de>, 2020.
# Tom Wor <mail@tomwor.com>, 2020.
+# Bjarne Hiller <bjarne.hiller@gmail.com>, 2020.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine editor\n"
"POT-Creation-Date: \n"
-"PO-Revision-Date: 2020-07-28 09:51+0000\n"
-"Last-Translator: Tom Wor <mail@tomwor.com>\n"
+"PO-Revision-Date: 2020-08-05 16:58+0000\n"
+"Last-Translator: Bjarne Hiller <bjarne.hiller@gmail.com>\n"
"Language-Team: German <https://hosted.weblate.org/projects/godot-engine/"
"godot/de/>\n"
"Language: de\n"
@@ -9610,7 +9611,7 @@ msgstr "Pack-Datei"
#: editor/project_export.cpp
msgid "Features"
-msgstr "Funktionen"
+msgstr "Eigenschaften"
#: editor/project_export.cpp
msgid "Custom (comma-separated):"
@@ -10637,9 +10638,8 @@ msgid "Make node as Root"
msgstr "Node zur Szenenwurzel machen"
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Delete %d nodes and any children?"
-msgstr "Node „%s“ und Unterobjekte löschen?"
+msgstr "%d Nodes und ihre Unterobjekte löschen?"
#: editor/scene_tree_dock.cpp
msgid "Delete %d nodes?"
@@ -12346,6 +12346,9 @@ msgid ""
"Polygon-based shapes are not meant be used nor edited directly through the "
"CollisionShape2D node. Please use the CollisionPolygon2D node instead."
msgstr ""
+"Polygon basierte Formen sollten nicht direkt in CollisionShape2D-Nodes "
+"genutzt oder bearbeitet werden. Zu diesem Zweck sollte das CollsionPolygon2D-"
+"Node verwendet werden."
#: scene/2d/cpu_particles_2d.cpp
msgid ""
diff --git a/editor/translations/el.po b/editor/translations/el.po
index dff4eaafb0..7c2a202767 100644
--- a/editor/translations/el.po
+++ b/editor/translations/el.po
@@ -13,8 +13,8 @@ msgid ""
msgstr ""
"Project-Id-Version: Godot Engine editor\n"
"POT-Creation-Date: \n"
-"PO-Revision-Date: 2020-07-11 01:21+0000\n"
-"Last-Translator: KostasMSC <kargyris@athtech.gr>\n"
+"PO-Revision-Date: 2020-08-11 14:04+0000\n"
+"Last-Translator: George Tsiamasiotis <gtsiam@windowslive.com>\n"
"Language-Team: Greek <https://hosted.weblate.org/projects/godot-engine/godot/"
"el/>\n"
"Language: el\n"
@@ -503,8 +503,8 @@ msgstr ""
"εισαγωγής της σκηνής και θέστε\n"
"το «Animation > Storage» σε «Files», ενεÏγοποιήστε το «Animation > Keep "
"Custom Tracks», και κάντε επαν-εισαγωγή.\n"
-"Εναλλακτικά, χÏησιμοποιήστε μία διαμόÏφωση εισαγωγής που εισάγει κινήσεις "
-"σε ξεχωÏιστά αÏχεία."
+"Εναλλακτικά, χÏησιμοποιήστε μία διαμόÏφωση εισαγωγής που εισάγει κινήσεις σε "
+"ξεχωÏιστά αÏχεία."
#: editor/animation_track_editor.cpp
msgid "Warning: Editing imported animation"
@@ -1597,7 +1597,7 @@ msgstr "Δεν βÏέθηκε Ï€ÏοσαÏμοσμένο πακέτο αποσφ
#: platform/iphone/export/export.cpp platform/javascript/export/export.cpp
#: platform/osx/export/export.cpp platform/uwp/export/export.cpp
msgid "Custom release template not found."
-msgstr "Δεν βÏέθηκε Ï€ÏοσαÏμοσμένο πακέτο παÏαγωγής."
+msgstr "Δεν βÏέθηκε Ï€ÏοσαÏμοσμένο πακέτο διανομής."
#: editor/editor_export.cpp platform/javascript/export/export.cpp
msgid "Template file not found:"
@@ -2456,13 +2456,13 @@ msgstr "Αποθήκευση & Έξοδος"
#: editor/editor_node.cpp
msgid "Save changes to the following scene(s) before quitting?"
-msgstr "Αποθήκευση αλλαγών στις ακόλουθες σκηνές σκηνές Ï€Ïιν την έξοδο;"
+msgstr "Αποθήκευση αλλαγών στις ακόλουθες σκηνές Ï€Ïιν την έξοδο;"
#: editor/editor_node.cpp
msgid "Save changes the following scene(s) before opening Project Manager?"
msgstr ""
-"Αποθήκευση αλλαγών στις ακόλουθες σκηνές σκηνές Ï€Ïιν το άνοιγμα του "
-"διαχειÏιστή έÏγων;"
+"Αποθήκευση αλλαγών στις ακόλουθες σκηνές Ï€Ïιν το άνοιγμα του ΔιαχειÏιστή "
+"ΈÏγων;"
#: editor/editor_node.cpp
msgid ""
@@ -3128,7 +3128,7 @@ msgstr "Άνοιγμα βιβλιοθήκης"
#: editor/editor_node.cpp
msgid "Open the next Editor"
-msgstr "Άνοιγμα του επόμενου επεξεÏγαστή"
+msgstr "Άνοιγμα του επόμενου ΕπεξεÏγαστή"
#: editor/editor_node.cpp
msgid "Open the previous Editor"
@@ -3478,7 +3478,7 @@ msgid ""
"for official releases."
msgstr ""
"Δεν βÏέθηκαν συνδέσμοι λήψης για την Ï„Ïέχουσα έκδοση. Η απευθείας λήψη είναι "
-"διαθέσιμη μόνο για τις επίσημες εκδόσεις."
+"διαθέσιμη μόνο για τις επίσημες διανομές."
#: editor/export_template_manager.cpp
#: editor/plugins/asset_library_editor_plugin.cpp
@@ -3987,6 +3987,7 @@ msgstr "Σφάλμα κατά την εκτέλεση της δέσμης ενε
#: editor/import/resource_importer_scene.cpp
msgid "Did you return a Node-derived object in the `post_import()` method?"
msgstr ""
+"Μήπως επιστÏέψατε ένα αντικείμενο Ï„Ïπου κόμβου στην μέθοδο `post_import()`;"
#: editor/import/resource_importer_scene.cpp
msgid "Saving..."
@@ -6213,7 +6214,7 @@ msgstr ""
#: editor/plugins/particles_2d_editor_plugin.cpp
#: editor/plugins/particles_editor_plugin.cpp
msgid "Generation Time (sec):"
-msgstr "ΧÏόνος παÏαγωγής (sec):"
+msgstr "ΧÏόνος ΠαÏαγωγής (sec):"
#: editor/plugins/particles_editor_plugin.cpp
msgid "The geometry's faces don't contain any area."
@@ -6856,7 +6857,7 @@ msgstr "Κλείσιμο όλων"
#: editor/plugins/script_editor_plugin.cpp
msgid "Close Docs"
-msgstr "Κλείσιμο τεκμηÏίωσης"
+msgstr "Κλείσιμο ΤεκμηÏίωσης"
#: editor/plugins/script_editor_plugin.cpp editor/project_manager.cpp
msgid "Run"
@@ -6957,9 +6958,8 @@ msgstr ""
"κόμβο «%s»."
#: editor/plugins/script_text_editor.cpp
-#, fuzzy
msgid "[Ignore]"
-msgstr "(ΠαÏάβλεψη)"
+msgstr "[ΠαÏάβλεψη]"
#: editor/plugins/script_text_editor.cpp
msgid "Line"
@@ -7449,6 +7449,11 @@ msgid ""
"Closed eye: Gizmo is hidden.\n"
"Half-open eye: Gizmo is also visible through opaque surfaces (\"x-ray\")."
msgstr ""
+"Πατήστε για εναλλαγή λειτουÏγίας οÏατότητας.\n"
+"\n"
+"Ανοιχτό μάτι: ΟÏατό μαÏαφέτι.\n"
+"Κλειστό μάτι: ΚÏυμμένο μαÏαφέτι.\n"
+"Ημι-ανοιχτό μάτι: ΜαÏαφέτι οÏατό και μέσα από στεÏεές επιφάνειες (\"x-ray\")."
#: editor/plugins/spatial_editor_plugin.cpp
msgid "Snap Nodes To Floor"
@@ -8361,7 +8366,9 @@ msgstr ""
msgid ""
"Select sub-tile to change its priority.\n"
"Click on another Tile to edit it."
-msgstr "Επιλέξτε υποπλακίδιο για να αλλάξετε την Ï€ÏοτεÏαιότητα του."
+msgstr ""
+"Επιλέξτε υποπλακίδιο για να αλλάξετε την Ï€ÏοτεÏαιότητα του.\n"
+"Πατήστε σε άλλο Πλακίδιο για να το επεξεÏγαστείτε."
#: editor/plugins/tile_set_editor_plugin.cpp
msgid ""
@@ -9069,7 +9076,7 @@ msgstr "ΕπιστÏέφει την υπεÏβολική εφαπτομένη Ï„
#: editor/plugins/visual_shader_editor_plugin.cpp
msgid "Finds the truncated value of the parameter."
-msgstr "Î’Ïίσκει την πεÏικομμένη τιμή της παÏαμέτÏου."
+msgstr "Î’Ïίσκει την πεÏικομμένη τιμή της παÏαμέτÏου."
#: editor/plugins/visual_shader_editor_plugin.cpp
msgid "Adds scalar to scalar."
@@ -9468,7 +9475,7 @@ msgstr ""
#: editor/project_export.cpp
msgid "Release"
-msgstr "ΚυκλοφοÏία"
+msgstr "Διανομή"
#: editor/project_export.cpp
msgid "Exporting All"
@@ -9971,6 +9978,10 @@ msgid ""
"To filter projects by name and full path, the query must contain at least "
"one `/` character."
msgstr ""
+"Το κουτί αναζήτησης φιλτÏάÏει έÏγα βάσει ονόματος και Ï„ÎµÎ»Î¹ÎºÎ¿Ï Î¼Î­Ïους της "
+"διαδÏομής τους.\n"
+"Για φιλτÏάÏισμα βάσει ονόματος και πλήÏης διαδÏομής, το εÏώτημα Ï€Ïέπει να "
+"πεÏιέχει τουλάχιστον έναν χαÏακτήÏα `/`."
#: editor/project_settings_editor.cpp
msgid "Key "
@@ -10142,7 +10153,7 @@ msgstr ""
#: editor/project_settings_editor.cpp
msgid "Add Input Action"
-msgstr "ΠÏοσθήκη συμβάντος ενέÏγειας εισόδου"
+msgstr "ΠÏοσθήκη ΕνέÏγειας Εισόδου"
#: editor/project_settings_editor.cpp
msgid "Error saving settings."
@@ -10537,9 +10548,8 @@ msgid "Instance Child Scene"
msgstr "ΑÏχικοποίηση σκηνής ως παιδί"
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Detach Script"
-msgstr "ΣÏνδεση Δέσμης ΕνεÏγειών"
+msgstr "ΑποσÏνδεση Δέσμης ΕνεÏγειών"
#: editor/scene_tree_dock.cpp
msgid "This operation can't be done on the tree root."
@@ -10577,9 +10587,8 @@ msgid "Make node as Root"
msgstr "Κάνε κόμβο Ïίζα"
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Delete %d nodes and any children?"
-msgstr "ΔιαγÏαφή κόμβου \"%s\" και των παιδιών του;"
+msgstr "ΔιαγÏαφή %d κόμβων και τυχών παιδιών τους;"
#: editor/scene_tree_dock.cpp
msgid "Delete %d nodes?"
@@ -10720,6 +10729,9 @@ msgid ""
"This is probably because this editor was built with all language modules "
"disabled."
msgstr ""
+"Αδυναμία σÏνδεσης δέσμης ενεÏγειών: Καμία γλώσσα στο μητÏώο.\n"
+"Αυτό μποÏεί να Ï€Ïοκληθεί αν ο επεξεÏγαστής χτιστεί χωÏίς καμία λειτουÏγική "
+"μονάδα γλώσσας."
#: editor/scene_tree_dock.cpp
msgid "Add Child Node"
@@ -10770,14 +10782,12 @@ msgstr ""
"υπάÏχει πηγαίος κόμβος."
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Attach a new or existing script to the selected node."
-msgstr "ΣÏνδεση νέας ή υπαÏκτής δέσμης ενεÏγειών για τον επιλεγμένο κόμβο."
+msgstr "ΣÏνδεση νέας ή υπαÏκτής δέσμης ενεÏγειών στον επιλεγμένο κόμβο."
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Detach the script from the selected node."
-msgstr "ΕκκαθάÏιση δέσμης ενεÏγειών για τον επιλεγμένο κόμβο."
+msgstr "ΑποσÏνδεση της δέσμης ενεÏγειών από τον επιλεγμένο κόμβο."
#: editor/scene_tree_dock.cpp
msgid "Remote"
@@ -11118,9 +11128,8 @@ msgid "Total:"
msgstr "Συνολικά:"
#: editor/script_editor_debugger.cpp
-#, fuzzy
msgid "Export list to a CSV file"
-msgstr "Εξαγωγή ΠÏοφίλ"
+msgstr "Εξαγωγή λίστας σε αÏχείο CSV"
#: editor/script_editor_debugger.cpp
msgid "Resource Path"
@@ -12016,11 +12025,9 @@ msgstr ""
"διαμόÏφωση."
#: platform/android/export/export.cpp
-#, fuzzy
msgid "Release keystore incorrectly configured in the export preset."
msgstr ""
-"Το «debug keystore» δεν έχει καθοÏιστεί στις Ρυθμίσεις ΕπεξεÏγαστή ή την "
-"διαμόÏφωση."
+"Εσφαλμένη ÏÏθμιση αποθετηÏίου κλειδιών διανομής στην διαμόÏφωση εξαγωγής."
#: platform/android/export/export.cpp
msgid "Custom build requires a valid Android SDK path in Editor Settings."
@@ -12055,26 +12062,35 @@ msgid ""
"Invalid \"GodotPaymentV3\" module included in the \"android/modules\" "
"project setting (changed in Godot 3.2.2).\n"
msgstr ""
+"Εσφαλμένη λειτουÏγική μονάδα «GodotPaymentV3» στην ÏÏθμιση εÏγου «Android/"
+"Modules» (άλλαξε στην Godot 3.2.2).\n"
#: platform/android/export/export.cpp
msgid "\"Use Custom Build\" must be enabled to use the plugins."
msgstr ""
+"Η επιλογή «Use Custom Build» Ï€Ïέπει να ενεÏγοποιηθεί για χÏήση Ï€Ïοσθέτων."
#: platform/android/export/export.cpp
msgid ""
"\"Degrees Of Freedom\" is only valid when \"Xr Mode\" is \"Oculus Mobile VR"
"\"."
msgstr ""
+"Το «Degrees Of Freedom» είναι έγκυÏο μόνο όταν το «Xr Mode» είναι «Oculus "
+"Mobile VR»."
#: platform/android/export/export.cpp
msgid ""
"\"Hand Tracking\" is only valid when \"Xr Mode\" is \"Oculus Mobile VR\"."
msgstr ""
+"Το «Hand Tracking» είναι έγκυÏο μόνο όταν το «Xr Mode» είναι «Oculus Mobile "
+"VR»."
#: platform/android/export/export.cpp
msgid ""
"\"Focus Awareness\" is only valid when \"Xr Mode\" is \"Oculus Mobile VR\"."
msgstr ""
+"Το «Focus Awareness» είναι έγκυÏο μόνο όταν το «Xr Mode» είναι «Oculus "
+"Mobile VR»."
#: platform/android/export/export.cpp
msgid ""
@@ -12291,6 +12307,8 @@ msgid ""
"Polygon-based shapes are not meant be used nor edited directly through the "
"CollisionShape2D node. Please use the CollisionPolygon2D node instead."
msgstr ""
+"Τα σχήματα βασισμένα σε πολÏγωνα δεν σχεδιάστικαν ώστε να είναι επεξεÏγάσιμα "
+"από τον κόμβο CollisionShape2D. ΧÏησιμοποιήστε τον κόμβο CollisionPolygon2D."
#: scene/2d/cpu_particles_2d.cpp
msgid ""
diff --git a/editor/translations/es.po b/editor/translations/es.po
index e32797440e..172ce58604 100644
--- a/editor/translations/es.po
+++ b/editor/translations/es.po
@@ -18,7 +18,7 @@
# Jose Maria Martinez <josemar1992@hotmail.com>, 2018.
# Juan Quiroga <juanquiroga9@gmail.com>, 2017.
# Kiji Pixel <raccoon.fella@gmail.com>, 2017.
-# Lisandro Lorea <lisandrolorea@gmail.com>, 2016-2017, 2019.
+# Lisandro Lorea <lisandrolorea@gmail.com>, 2016-2017, 2019, 2020.
# Lonsfor <lotharw@protonmail.com>, 2017-2018.
# Mario Nachbaur <manachbaur@gmail.com>, 2018.
# Oscar Carballal <oscar.carballal@protonmail.com>, 2017-2018.
@@ -54,8 +54,8 @@ msgid ""
msgstr ""
"Project-Id-Version: Godot Engine editor\n"
"POT-Creation-Date: \n"
-"PO-Revision-Date: 2020-07-28 09:51+0000\n"
-"Last-Translator: Javier Ocampos <xavier.ocampos@gmail.com>\n"
+"PO-Revision-Date: 2020-07-31 03:47+0000\n"
+"Last-Translator: Lisandro Lorea <lisandrolorea@gmail.com>\n"
"Language-Team: Spanish <https://hosted.weblate.org/projects/godot-engine/"
"godot/es/>\n"
"Language: es\n"
@@ -1764,7 +1764,7 @@ msgstr "Nuevo"
#: editor/editor_feature_profile.cpp editor/editor_node.cpp
#: editor/project_manager.cpp
msgid "Import"
-msgstr "Importar"
+msgstr "Importación"
#: editor/editor_feature_profile.cpp editor/project_export.cpp
msgid "Export"
@@ -10627,9 +10627,8 @@ msgid "Make node as Root"
msgstr "Convertir nodo como Raíz"
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Delete %d nodes and any children?"
-msgstr "¿Eliminar el nodo \"%s\" y sus hijos?"
+msgstr "¿Eliminar %d nodos y sus hijos?"
#: editor/scene_tree_dock.cpp
msgid "Delete %d nodes?"
@@ -12352,6 +12351,9 @@ msgid ""
"Polygon-based shapes are not meant be used nor edited directly through the "
"CollisionShape2D node. Please use the CollisionPolygon2D node instead."
msgstr ""
+"Las formas basadas en polígonos no están pensadas para ser usadas ni "
+"editadas directamente a través del nodo CollisionShape2D. Por favor, usa el "
+"nodo CollisionPolygon2D en su lugar."
#: scene/2d/cpu_particles_2d.cpp
msgid ""
diff --git a/editor/translations/es_AR.po b/editor/translations/es_AR.po
index 92e6e7d511..f2c72ce1be 100644
--- a/editor/translations/es_AR.po
+++ b/editor/translations/es_AR.po
@@ -19,7 +19,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Godot Engine editor\n"
"POT-Creation-Date: \n"
-"PO-Revision-Date: 2020-06-25 08:40+0000\n"
+"PO-Revision-Date: 2020-07-31 03:47+0000\n"
"Last-Translator: Lisandro Lorea <lisandrolorea@gmail.com>\n"
"Language-Team: Spanish (Argentina) <https://hosted.weblate.org/projects/"
"godot-engine/godot/es_AR/>\n"
@@ -10578,9 +10578,8 @@ msgid "Make node as Root"
msgstr "Convertir nodo en Raíz"
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Delete %d nodes and any children?"
-msgstr "¿Eliminar el nodo \"%s\" y sus hijos?"
+msgstr "¿Eliminar %d nodos y sus hijos?"
#: editor/scene_tree_dock.cpp
msgid "Delete %d nodes?"
@@ -10588,7 +10587,7 @@ msgstr "¿Eliminar %d nodos?"
#: editor/scene_tree_dock.cpp
msgid "Delete the root node \"%s\"?"
-msgstr "¿Eliminar el nodo raiz \"%s\"?"
+msgstr "¿Eliminar el nodo raíz \"%s\"?"
#: editor/scene_tree_dock.cpp
msgid "Delete node \"%s\" and its children?"
@@ -12298,6 +12297,9 @@ msgid ""
"Polygon-based shapes are not meant be used nor edited directly through the "
"CollisionShape2D node. Please use the CollisionPolygon2D node instead."
msgstr ""
+"Las formas basadas en polígonos no están pensadas para ser usadas ni "
+"editadas directamente a través del nodo CollisionShape2D. Por favor, usá el "
+"nodo CollisionPolygon2D en su lugar."
#: scene/2d/cpu_particles_2d.cpp
msgid ""
diff --git a/editor/translations/et.po b/editor/translations/et.po
index ae27129ab6..504de558d5 100644
--- a/editor/translations/et.po
+++ b/editor/translations/et.po
@@ -9,7 +9,7 @@
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine editor\n"
-"PO-Revision-Date: 2020-07-26 15:42+0000\n"
+"PO-Revision-Date: 2020-08-11 14:04+0000\n"
"Last-Translator: StReef <streef.gtx@gmail.com>\n"
"Language-Team: Estonian <https://hosted.weblate.org/projects/godot-engine/"
"godot/et/>\n"
@@ -638,9 +638,8 @@ msgid "Copy"
msgstr "Kopeeri"
#: editor/animation_track_editor.cpp
-#, fuzzy
msgid "Select All/None"
-msgstr "Tühista Valik"
+msgstr "Vali kõik/mitte ükski"
#: editor/animation_track_editor_plugins.cpp
msgid "Add Audio Track Clip"
@@ -1356,7 +1355,7 @@ msgstr "Lae olemasolev siini paigutus."
#: editor/editor_audio_buses.cpp
msgid "Save As"
-msgstr "Salvesta kui…"
+msgstr "Salvesta kui"
#: editor/editor_audio_buses.cpp
msgid "Save this Bus Layout to a file."
@@ -1510,7 +1509,6 @@ msgid "Choose"
msgstr "Vali"
#: editor/editor_export.cpp
-#, fuzzy
msgid "Storing File:"
msgstr "Salvestan faili:"
@@ -1823,14 +1821,12 @@ msgid "Move Favorite Down"
msgstr "Liiguta lemmikud alla"
#: editor/editor_file_dialog.cpp
-#, fuzzy
msgid "Go to previous folder."
-msgstr "Mine Eelmisele Sammule"
+msgstr "Mine eelmisesse kausta."
#: editor/editor_file_dialog.cpp
-#, fuzzy
msgid "Go to next folder."
-msgstr "Mine Järgmisele Sammule"
+msgstr "Mine järmisesse kausta."
#: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp
msgid "Go to parent folder."
@@ -1887,7 +1883,6 @@ msgstr ""
"katkestati"
#: editor/editor_file_system.cpp
-#, fuzzy
msgid "(Re)Importing Assets"
msgstr "(Taas)impordin varasid"
@@ -1906,7 +1901,7 @@ msgstr "Pärib:"
#: editor/editor_help.cpp
msgid "Inherited by:"
-msgstr "Päritud %s poolt"
+msgstr "Päritud %s poolt:"
#: editor/editor_help.cpp
msgid "Description"
@@ -2078,9 +2073,8 @@ msgstr "Lõpeta"
#: editor/editor_network_profiler.cpp editor/editor_profiler.cpp
#: editor/plugins/animation_state_machine_editor.cpp editor/rename_dialog.cpp
-#, fuzzy
msgid "Start"
-msgstr "Start/Käivita"
+msgstr "Käivita"
#: editor/editor_network_profiler.cpp
msgid "%s/s"
@@ -2364,9 +2358,8 @@ msgid "Can't reload a scene that was never saved."
msgstr ""
#: editor/editor_node.cpp
-#, fuzzy
msgid "Reload Saved Scene"
-msgstr "Stseeni salvestamine"
+msgstr "Taaslae salvestatud stseen"
#: editor/editor_node.cpp
msgid ""
@@ -2571,9 +2564,8 @@ msgid "Go to previously opened scene."
msgstr ""
#: editor/editor_node.cpp
-#, fuzzy
msgid "Copy Text"
-msgstr "Kopeeri"
+msgstr "Kopeeri tekst"
#: editor/editor_node.cpp
msgid "Next tab"
@@ -3642,9 +3634,8 @@ msgid "Overwrite"
msgstr ""
#: editor/filesystem_dock.cpp
-#, fuzzy
msgid "Create Scene"
-msgstr "Loo"
+msgstr "Loo stseen"
#: editor/filesystem_dock.cpp editor/plugins/script_editor_plugin.cpp
msgid "Create Script"
@@ -4249,19 +4240,16 @@ msgid ""
msgstr ""
#: editor/plugins/animation_blend_tree_editor_plugin.cpp
-#, fuzzy
msgid "Anim Clips"
-msgstr "Animatsiooni Klipid:"
+msgstr "Animatsiooniklipid"
#: editor/plugins/animation_blend_tree_editor_plugin.cpp
-#, fuzzy
msgid "Audio Clips"
-msgstr "Heliklipid:"
+msgstr "Heliklipid"
#: editor/plugins/animation_blend_tree_editor_plugin.cpp
-#, fuzzy
msgid "Functions"
-msgstr "Funktsioonid:"
+msgstr "Funktsioonid"
#: editor/plugins/animation_blend_tree_editor_plugin.cpp
#: editor/plugins/animation_state_machine_editor.cpp
@@ -4774,9 +4762,8 @@ msgid "Request failed, timeout"
msgstr ""
#: editor/plugins/asset_library_editor_plugin.cpp
-#, fuzzy
msgid "Timeout."
-msgstr "Aeg:"
+msgstr "Aeg maha."
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Bad download hash, assuming file has been tampered with."
@@ -4990,9 +4977,8 @@ msgid "Create Vertical Guide"
msgstr ""
#: editor/plugins/canvas_item_editor_plugin.cpp
-#, fuzzy
msgid "Remove Vertical Guide"
-msgstr "Eemalda kehtetud võtmed"
+msgstr "Eemalda vertikaalne juht"
#: editor/plugins/canvas_item_editor_plugin.cpp
msgid "Move Horizontal Guide"
@@ -5003,9 +4989,8 @@ msgid "Create Horizontal Guide"
msgstr ""
#: editor/plugins/canvas_item_editor_plugin.cpp
-#, fuzzy
msgid "Remove Horizontal Guide"
-msgstr "Eemalda kehtetud võtmed"
+msgstr "Eemalda horisontaalne juht"
#: editor/plugins/canvas_item_editor_plugin.cpp
msgid "Create Horizontal and Vertical Guides"
@@ -6822,9 +6807,8 @@ msgid "Complete Symbol"
msgstr ""
#: editor/plugins/script_text_editor.cpp
-#, fuzzy
msgid "Evaluate Selection"
-msgstr "Kustuta Valim"
+msgstr "Hinda valikut"
#: editor/plugins/script_text_editor.cpp
msgid "Trim Trailing Whitespace"
@@ -8235,9 +8219,8 @@ msgid "Renamed"
msgstr ""
#: editor/plugins/version_control_editor_plugin.cpp
-#, fuzzy
msgid "Deleted"
-msgstr "Kustuta Võti (Võtmed)"
+msgstr "Kustutatud"
#: editor/plugins/version_control_editor_plugin.cpp
msgid "Typechange"
@@ -10155,12 +10138,11 @@ msgstr ""
#: editor/scene_tree_dock.cpp
#, fuzzy
msgid "Delete %d nodes and any children?"
-msgstr "Kustuta Võti (Võtmed)"
+msgstr "Kustuta %d sõlmed ja iga alamsõlm?"
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Delete %d nodes?"
-msgstr "Kustuta Võti (Võtmed)"
+msgstr "Kustuta %d sõlmed?"
#: editor/scene_tree_dock.cpp
msgid "Delete the root node \"%s\"?"
@@ -10171,9 +10153,8 @@ msgid "Delete node \"%s\" and its children?"
msgstr ""
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Delete node \"%s\"?"
-msgstr "Kustuta Võti (Võtmed)"
+msgstr "Kustuta sõlm \"%s\"?"
#: editor/scene_tree_dock.cpp
msgid "Can not perform with the root node."
@@ -10573,9 +10554,8 @@ msgid "Warning:"
msgstr ""
#: editor/script_editor_debugger.cpp
-#, fuzzy
msgid "Error:"
-msgstr "Peegel"
+msgstr "Viga:"
#: editor/script_editor_debugger.cpp
msgid "C++ Error"
@@ -10998,9 +10978,8 @@ msgid "Cursor Clear Rotation"
msgstr ""
#: modules/gridmap/grid_map_editor_plugin.cpp
-#, fuzzy
msgid "Paste Selects"
-msgstr "Kustuta Valitud Võti (Võtmed)"
+msgstr "Kleebi valikud"
#: modules/gridmap/grid_map_editor_plugin.cpp
msgid "Clear Selection"
@@ -11347,9 +11326,8 @@ msgid "Try to only have one sequence input in selection."
msgstr ""
#: modules/visual_script/visual_script_editor.cpp
-#, fuzzy
msgid "Create Function"
-msgstr "Loo"
+msgstr "Loo funktsioon"
#: modules/visual_script/visual_script_editor.cpp
msgid "Remove Function"
@@ -11388,14 +11366,12 @@ msgid "Add Nodes..."
msgstr ""
#: modules/visual_script/visual_script_editor.cpp
-#, fuzzy
msgid "Add Function..."
-msgstr "Funktsioonid:"
+msgstr "Lisa funktsioon..."
#: modules/visual_script/visual_script_editor.cpp
-#, fuzzy
msgid "function_name"
-msgstr "Funktsioonid:"
+msgstr "funktsiooni_nimi"
#: modules/visual_script/visual_script_editor.cpp
msgid "Select or create a function to edit its graph."
@@ -11418,9 +11394,8 @@ msgid "Cut Nodes"
msgstr ""
#: modules/visual_script/visual_script_editor.cpp
-#, fuzzy
msgid "Make Function"
-msgstr "Funktsioonid:"
+msgstr "Loo funktsioon"
#: modules/visual_script/visual_script_editor.cpp
msgid "Refresh Graph"
diff --git a/editor/translations/fi.po b/editor/translations/fi.po
index 67deaf06b3..124ae4f2e0 100644
--- a/editor/translations/fi.po
+++ b/editor/translations/fi.po
@@ -15,7 +15,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Godot Engine editor\n"
"POT-Creation-Date: \n"
-"PO-Revision-Date: 2020-06-26 06:11+0000\n"
+"PO-Revision-Date: 2020-08-05 16:58+0000\n"
"Last-Translator: Tapani Niemi <tapani.niemi@kapsi.fi>\n"
"Language-Team: Finnish <https://hosted.weblate.org/projects/godot-engine/"
"godot/fi/>\n"
@@ -1710,7 +1710,7 @@ msgstr "Uusi"
#: editor/editor_feature_profile.cpp editor/editor_node.cpp
#: editor/project_manager.cpp
msgid "Import"
-msgstr "Tuo"
+msgstr "Tuonti"
#: editor/editor_feature_profile.cpp editor/project_export.cpp
msgid "Export"
@@ -8147,7 +8147,7 @@ msgstr "Peitto"
#: editor/plugins/tile_set_editor_plugin.cpp
msgid "Navigation"
-msgstr "Siirtyminen"
+msgstr "Navigointi"
#: editor/plugins/tile_set_editor_plugin.cpp
msgid "Bitmask"
@@ -10525,9 +10525,8 @@ msgid "Make node as Root"
msgstr "Tee solmusta juurisolmu"
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Delete %d nodes and any children?"
-msgstr "Poista solmu \"%s\" ja sen alisolmut?"
+msgstr "Poista %d solmua ja kaikki alisolmut?"
#: editor/scene_tree_dock.cpp
msgid "Delete %d nodes?"
@@ -12228,6 +12227,9 @@ msgid ""
"Polygon-based shapes are not meant be used nor edited directly through the "
"CollisionShape2D node. Please use the CollisionPolygon2D node instead."
msgstr ""
+"Polygonipohjaisia muotoja ei ole tarkoitus käyttää tai muokata suoraan "
+"CollisionShape2D solmun kautta. Ole hyvä ja käytä sen sijaan "
+"CollisionPolygon2D solmua."
#: scene/2d/cpu_particles_2d.cpp
msgid ""
diff --git a/editor/translations/fr.po b/editor/translations/fr.po
index 95e9d7a55c..9bb04cb2b0 100644
--- a/editor/translations/fr.po
+++ b/editor/translations/fr.po
@@ -79,8 +79,8 @@ msgid ""
msgstr ""
"Project-Id-Version: Godot Engine editor\n"
"POT-Creation-Date: \n"
-"PO-Revision-Date: 2020-07-26 15:41+0000\n"
-"Last-Translator: Nathan <bonnemainsnathan@gmail.com>\n"
+"PO-Revision-Date: 2020-08-01 11:14+0000\n"
+"Last-Translator: Pierre Caye <pierrecaye@laposte.net>\n"
"Language-Team: French <https://hosted.weblate.org/projects/godot-engine/"
"godot/fr/>\n"
"Language: fr\n"
@@ -1787,7 +1787,7 @@ msgstr "Nouveau"
#: editor/editor_feature_profile.cpp editor/editor_node.cpp
#: editor/project_manager.cpp
msgid "Import"
-msgstr "Importer"
+msgstr "Importation"
#: editor/editor_feature_profile.cpp editor/project_export.cpp
msgid "Export"
diff --git a/editor/translations/he.po b/editor/translations/he.po
index c3789f9804..0f9a19c842 100644
--- a/editor/translations/he.po
+++ b/editor/translations/he.po
@@ -14,12 +14,13 @@
# test test <ugbdvwpeikvyzwaadt@awdrt.org>, 2020.
# Anonymous <noreply@weblate.org>, 2020.
# Daniel Kariv <danielkariv98@gmail.com>, 2020.
+# Ziv D <wizdavid@gmail.com>, 2020.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine editor\n"
"POT-Creation-Date: \n"
-"PO-Revision-Date: 2020-05-07 21:28+0000\n"
-"Last-Translator: Anonymous <noreply@weblate.org>\n"
+"PO-Revision-Date: 2020-08-11 14:04+0000\n"
+"Last-Translator: Ziv D <wizdavid@gmail.com>\n"
"Language-Team: Hebrew <https://hosted.weblate.org/projects/godot-engine/"
"godot/he/>\n"
"Language: he\n"
@@ -28,7 +29,7 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=4; plural=(n == 1) ? 0 : ((n == 2) ? 1 : ((n > 10 && "
"n % 10 == 0) ? 2 : 3));\n"
-"X-Generator: Weblate 4.1-dev\n"
+"X-Generator: Weblate 4.2-dev\n"
#: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp
#: modules/visual_script/visual_script_builtin_funcs.cpp
@@ -258,7 +259,7 @@ msgstr "החלפת נתיב רצועה"
#: editor/animation_track_editor.cpp
msgid "Toggle this track on/off."
-msgstr "הפעל/כבה רצועה"
+msgstr "הפעל/כבה רצועה."
#: editor/animation_track_editor.cpp
msgid "Update Mode (How this property is set)"
@@ -340,9 +341,8 @@ msgid "Change Animation Update Mode"
msgstr "שינוי מצב עדכון הנפשה"
#: editor/animation_track_editor.cpp
-#, fuzzy
msgid "Change Animation Interpolation Mode"
-msgstr "החלפת ערך מילון"
+msgstr "שינוי מצב ×ינטרפולציה בהנפשה"
#: editor/animation_track_editor.cpp
msgid "Change Animation Loop Mode"
@@ -554,9 +554,8 @@ msgid "Edit"
msgstr "עריכה"
#: editor/animation_track_editor.cpp
-#, fuzzy
msgid "Animation properties."
-msgstr "שקופיות ההנפשה"
+msgstr "מ×פייני ההנפשה."
#: editor/animation_track_editor.cpp
#, fuzzy
@@ -712,12 +711,11 @@ msgstr "%d הוחלף."
#: editor/code_editor.cpp editor/editor_help.cpp
msgid "%d match."
-msgstr "d% הת×מות."
+msgstr "%d הת×מות."
#: editor/code_editor.cpp editor/editor_help.cpp
-#, fuzzy
msgid "%d matches."
-msgstr "×ין תוצ×ות"
+msgstr "%d הת×מות."
#: editor/code_editor.cpp editor/find_in_files.cpp
msgid "Match Case"
@@ -831,9 +829,8 @@ msgid "Extra Call Arguments:"
msgstr ""
#: editor/connections_dialog.cpp
-#, fuzzy
msgid "Receiver Method:"
-msgstr "מ×פייני פריט."
+msgstr "שיטת המקלט:"
#: editor/connections_dialog.cpp
msgid "Advanced"
@@ -933,9 +930,8 @@ msgid "Disconnect All"
msgstr "ניתוק"
#: editor/connections_dialog.cpp
-#, fuzzy
msgid "Edit..."
-msgstr "עריכה"
+msgstr "עריכה..."
#: editor/connections_dialog.cpp
#, fuzzy
@@ -1395,9 +1391,8 @@ msgid "Add Bus"
msgstr "הוספת ×פיק"
#: editor/editor_audio_buses.cpp
-#, fuzzy
msgid "Add a new Audio Bus to this layout."
-msgstr "שמירת פריסת ×פיקי השמע בתור…"
+msgstr "הוסף ×פיק שמע חדש לפריסה זו."
#: editor/editor_audio_buses.cpp editor/editor_properties.cpp
#: editor/plugins/animation_player_editor_plugin.cpp editor/property_editor.cpp
@@ -1603,9 +1598,8 @@ msgstr ""
#: editor/editor_export.cpp platform/android/export/export.cpp
#: platform/iphone/export/export.cpp platform/javascript/export/export.cpp
#: platform/osx/export/export.cpp platform/uwp/export/export.cpp
-#, fuzzy
msgid "Custom debug template not found."
-msgstr "קובץ התבנית ×œ× × ×ž×¦×:"
+msgstr "תבנית ניפוי שגי×ות מות×מת ×ישית ×œ× × ×ž×¦××”."
#: editor/editor_export.cpp platform/android/export/export.cpp
#: platform/iphone/export/export.cpp platform/javascript/export/export.cpp
@@ -1718,9 +1712,8 @@ msgid ""
msgstr ""
#: editor/editor_feature_profile.cpp
-#, fuzzy
msgid "Error saving profile to path: '%s'."
-msgstr "שגי××” בשמירה"
+msgstr "שגי××” בשמירת פרופיל לנתיב 's%'."
#: editor/editor_feature_profile.cpp
msgid "Unset"
@@ -1899,14 +1892,12 @@ msgid "Move Favorite Down"
msgstr "העברת מועדף למטה"
#: editor/editor_file_dialog.cpp
-#, fuzzy
msgid "Go to previous folder."
-msgstr "מעבר לתיקייה שמעל"
+msgstr "מעבר לתיקיה הקודמת."
#: editor/editor_file_dialog.cpp
-#, fuzzy
msgid "Go to next folder."
-msgstr "מעבר לתיקייה שמעל"
+msgstr "מעבר לתיקיה הב××”."
#: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp
#, fuzzy
@@ -1914,9 +1905,8 @@ msgid "Go to parent folder."
msgstr "מעבר לתיקייה שמעל"
#: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp
-#, fuzzy
msgid "Refresh files."
-msgstr "חיפוש במחלקות"
+msgstr "רענן קבצי×."
#: editor/editor_file_dialog.cpp
#, fuzzy
@@ -1924,19 +1914,16 @@ msgid "(Un)favorite current folder."
msgstr "×œ× × ×™×ª×Ÿ ליצור תיקייה."
#: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp
-#, fuzzy
msgid "Toggle the visibility of hidden files."
-msgstr "החלפת מצב תצוגה ×œ×§×‘×¦×™× ×ž×•×¡×ª×¨×™×"
+msgstr "הצג/הסתר ×§×‘×¦×™× ×ž×•×¡×ª×¨×™×."
#: editor/editor_file_dialog.cpp editor/filesystem_dock.cpp
-#, fuzzy
msgid "View items as a grid of thumbnails."
-msgstr "צפייה ×‘×¤×¨×™×˜×™× ×›×¨×©×ª של תמונות ממוזערות"
+msgstr "הצג ×¤×¨×™×˜×™× ×›×¨×©×ª של תמונות ממוזערות."
#: editor/editor_file_dialog.cpp editor/filesystem_dock.cpp
-#, fuzzy
msgid "View items as a list."
-msgstr "הצגת ×¤×¨×™×˜×™× ×›×¨×©×™×ž×”"
+msgstr "הצג ×¤×¨×™×˜×™× ×›×¨×©×™×ž×”."
#: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp
msgid "Directories & Files:"
@@ -2759,9 +2746,8 @@ msgid "Project"
msgstr "מיז×"
#: editor/editor_node.cpp
-#, fuzzy
msgid "Project Settings..."
-msgstr "הגדרות מיז×"
+msgstr "הגדרות מיז×..."
#: editor/editor_node.cpp editor/plugins/version_control_editor_plugin.cpp
#, fuzzy
@@ -2777,27 +2763,24 @@ msgid "Shut Down Version Control"
msgstr ""
#: editor/editor_node.cpp
-#, fuzzy
msgid "Export..."
-msgstr "ייצו×"
+msgstr "ייצו×..."
#: editor/editor_node.cpp
msgid "Install Android Build Template..."
msgstr ""
#: editor/editor_node.cpp
-#, fuzzy
msgid "Open Project Data Folder"
-msgstr "לפתוח ×ת מנהל המיזמי×?"
+msgstr "פתיחת תיקיית נתוני המיז×"
#: editor/editor_node.cpp editor/plugins/tile_set_editor_plugin.cpp
msgid "Tools"
msgstr "כלי×"
#: editor/editor_node.cpp
-#, fuzzy
msgid "Orphan Resource Explorer..."
-msgstr "דפדפן מש××‘×™× ×™×ª×•×ž×™×"
+msgstr "סייר מש××‘×™× ×™×ª×•×ž×™× ..."
#: editor/editor_node.cpp
msgid "Quit to Project List"
@@ -2883,9 +2866,8 @@ msgid "Editor"
msgstr "עורך"
#: editor/editor_node.cpp
-#, fuzzy
msgid "Editor Settings..."
-msgstr "הגדרות עורך"
+msgstr "הגדרות העורך..."
#: editor/editor_node.cpp
msgid "Editor Layout"
@@ -2911,9 +2893,8 @@ msgid "Toggle System Console"
msgstr "החלפת מצב"
#: editor/editor_node.cpp
-#, fuzzy
msgid "Open Editor Data/Settings Folder"
-msgstr "הגדרות עורך"
+msgstr "פתח תיקיית נתוני×/הגדרות של העורך"
#: editor/editor_node.cpp
msgid "Open Editor Data Folder"
@@ -3527,9 +3508,8 @@ msgid ""
msgstr ""
#: editor/export_template_manager.cpp
-#, fuzzy
msgid "Error requesting URL:"
-msgstr "שגי××” בבקשת כתובת: "
+msgstr "שגי××” בבקשת כתובת:"
#: editor/export_template_manager.cpp
msgid "Connecting to Mirror..."
@@ -3858,14 +3838,12 @@ msgid "Cancel"
msgstr ""
#: editor/find_in_files.cpp
-#, fuzzy
msgid "Find: "
-msgstr "×יתור"
+msgstr "×יתור "
#: editor/find_in_files.cpp
-#, fuzzy
msgid "Replace: "
-msgstr "להחליף"
+msgstr "להחליף "
#: editor/find_in_files.cpp
#, fuzzy
@@ -4812,9 +4790,8 @@ msgid "Set the end animation. This is useful for sub-transitions."
msgstr ""
#: editor/plugins/animation_state_machine_editor.cpp
-#, fuzzy
msgid "Transition: "
-msgstr "מעברון"
+msgstr "מעברון: "
#: editor/plugins/animation_state_machine_editor.cpp
#, fuzzy
@@ -9679,9 +9656,8 @@ msgid "Make Patch"
msgstr ""
#: editor/project_export.cpp
-#, fuzzy
msgid "Pack File"
-msgstr " קבצי×"
+msgstr "קובץ ×רכיון"
#: editor/project_export.cpp
msgid "Features"
@@ -9734,9 +9710,8 @@ msgid "Export Project"
msgstr "×™×™×¦×•× ×ž×™×–×"
#: editor/project_export.cpp
-#, fuzzy
msgid "Export mode?"
-msgstr "×™×™×¦×•× ×ž×™×–×"
+msgstr "מצב הייצו×?"
#: editor/project_export.cpp
#, fuzzy
@@ -9744,9 +9719,8 @@ msgid "Export All"
msgstr "ייצו×"
#: editor/project_export.cpp editor/project_manager.cpp
-#, fuzzy
msgid "ZIP File"
-msgstr " קבצי×"
+msgstr "קובץ ZIP"
#: editor/project_export.cpp
msgid "Godot Game Pack"
@@ -10488,9 +10462,8 @@ msgid "Node type"
msgstr "×יתור סוג מפרק"
#: editor/rename_dialog.cpp
-#, fuzzy
msgid "Current scene name"
-msgstr "הסצנה הנוכחית ×œ× × ×©×ž×¨×”. לפתוח בכל ×–×ת?"
+msgstr "×©× ×¡×¦× ×” נוכחית"
#: editor/rename_dialog.cpp
#, fuzzy
@@ -10686,7 +10659,7 @@ msgstr "מחיקת שורה"
#: editor/scene_tree_dock.cpp
#, fuzzy
msgid "Delete %d nodes?"
-msgstr "מחיקת שורה"
+msgstr "מחק %d מפרקי×?"
#: editor/scene_tree_dock.cpp
msgid "Delete the root node \"%s\"?"
@@ -10697,9 +10670,8 @@ msgid "Delete node \"%s\" and its children?"
msgstr ""
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Delete node \"%s\"?"
-msgstr "מחיקת שורה"
+msgstr "מחק מפרק \"%s\"?"
#: editor/scene_tree_dock.cpp
msgid "Can not perform with the root node."
@@ -12507,7 +12479,7 @@ msgstr "ARVROrigin דורש מפרק צ××¦× ×ž×¡×•×’ ARVRCamera"
#: scene/3d/baked_lightmap.cpp
msgid "%d%%"
-msgstr ""
+msgstr "%d%%"
#: scene/3d/baked_lightmap.cpp
msgid "(Time Left: %d:%02d s)"
diff --git a/editor/translations/hu.po b/editor/translations/hu.po
index 5661ed02cd..c6828cc7d3 100644
--- a/editor/translations/hu.po
+++ b/editor/translations/hu.po
@@ -5,17 +5,18 @@
# Ãrpád Horváth <horvatha4@googlemail.com>, 2018.
# Nagy Lajos <neutron9707@gmail.com>, 2017.
# Sandor Domokos <sandor.domokos@gmail.com>, 2017-2018.
-# Varga Dániel <danikah.danikah@gmail.com>, 2016-2018.
-# Gabor Csordas <gaborcsordas@yahoo.com>, 2018, 2019.
+# Varga Dániel <danikah.danikah@gmail.com>, 2016-2018, 2020.
+# Gabor Csordas <gaborcsordas@yahoo.com>, 2018, 2019, 2020.
# Tusa Gamer <tusagamer@mailinator.com>, 2018.
# Máté Lugosi <mate.lugosi@gmail.com>, 2019.
# sztrovacsek <magadeve@gmail.com>, 2019.
+# Ãcs Zoltán <acszoltan111@gmail.com>, 2020.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine editor\n"
"POT-Creation-Date: \n"
-"PO-Revision-Date: 2020-01-30 03:56+0000\n"
-"Last-Translator: Deleted User <noreply+18797@weblate.org>\n"
+"PO-Revision-Date: 2020-08-11 14:04+0000\n"
+"Last-Translator: Ãcs Zoltán <acszoltan111@gmail.com>\n"
"Language-Team: Hungarian <https://hosted.weblate.org/projects/godot-engine/"
"godot/hu/>\n"
"Language: hu\n"
@@ -23,7 +24,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
-"X-Generator: Weblate 3.11-dev\n"
+"X-Generator: Weblate 4.2-dev\n"
#: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp
#: modules/visual_script/visual_script_builtin_funcs.cpp
@@ -44,7 +45,7 @@ msgstr "Nincs elég bájt a bájtok dekódolására, vagy hibás formátum."
#: core/math/expression.cpp
msgid "Invalid input %i (not passed) in expression"
-msgstr "Érvénytelen bemenet %i (nem átadott) a kifejezésben."
+msgstr "Érvénytelen bemenet %i (nem átadott) a kifejezésben"
#: core/math/expression.cpp
msgid "self can't be used because instance is null (not passed)"
@@ -52,7 +53,7 @@ msgstr "self nem használható, mert a példány null (nincs átadva)"
#: core/math/expression.cpp
msgid "Invalid operands to operator %s, %s and %s."
-msgstr "Érvénytelen operandus a %s, %s és %s operátorokhoz."
+msgstr "Érvénytelen operandusok az %s, %s és %s operátorhoz."
#: core/math/expression.cpp
msgid "Invalid index of type %s for base type %s"
@@ -102,7 +103,7 @@ msgstr "EiB"
#: editor/animation_bezier_editor.cpp
msgid "Free"
-msgstr "Ingyenes"
+msgstr "Szabad"
#: editor/animation_bezier_editor.cpp
msgid "Balanced"
@@ -134,11 +135,11 @@ msgstr "Kiválasztott kulcsok törlése"
#: editor/animation_bezier_editor.cpp
msgid "Add Bezier Point"
-msgstr "Bezier pont hozzáadása"
+msgstr "Bézier pont hozzáadása"
#: editor/animation_bezier_editor.cpp
msgid "Move Bezier Points"
-msgstr "Bezier pont Mozgatása"
+msgstr "Bézier pont mozgatása"
#: editor/animation_bezier_editor.cpp editor/animation_track_editor.cpp
msgid "Anim Duplicate Keys"
@@ -214,7 +215,7 @@ msgstr "UV Térkép Transzformálása"
#: editor/animation_track_editor.cpp
msgid "Call Method Track"
-msgstr ""
+msgstr "Hívás módszer követése"
#: editor/animation_track_editor.cpp
msgid "Bezier Curve Track"
@@ -222,7 +223,7 @@ msgstr "Bezier Görbe Nyomvonal"
#: editor/animation_track_editor.cpp
msgid "Audio Playback Track"
-msgstr ""
+msgstr "Hang lejátszás követése"
#: editor/animation_track_editor.cpp
#, fuzzy
@@ -265,9 +266,8 @@ msgid "Change Track Path"
msgstr "Tömb Értékének Megváltoztatása"
#: editor/animation_track_editor.cpp
-#, fuzzy
msgid "Toggle this track on/off."
-msgstr "Zavarmentes mód váltása."
+msgstr "A sáv ki/be kapcsolása."
#: editor/animation_track_editor.cpp
msgid "Update Mode (How this property is set)"
@@ -287,9 +287,8 @@ msgid "Remove this track."
msgstr "Kiválasztott nyomvonal eltávolítása."
#: editor/animation_track_editor.cpp
-#, fuzzy
msgid "Time (s): "
-msgstr "Ãttűnési IdÅ‘ (mp):"
+msgstr "Idő (mp):"
#: editor/animation_track_editor.cpp
#, fuzzy
@@ -618,7 +617,7 @@ msgstr ""
#: editor/animation_track_editor.cpp
msgid "Use Bezier Curves"
-msgstr ""
+msgstr "Bézier görbék használata"
#: editor/animation_track_editor.cpp
msgid "Anim. Optimizer"
@@ -710,11 +709,11 @@ msgstr "Tömb Értékének Megváltoztatása"
#: editor/code_editor.cpp
msgid "Go to Line"
-msgstr "Sorra Ugrás"
+msgstr "Ugrás Sorra"
#: editor/code_editor.cpp
msgid "Line Number:"
-msgstr "Sor Száma:"
+msgstr "Sorszám:"
#: editor/code_editor.cpp
#, fuzzy
@@ -736,7 +735,7 @@ msgstr "Pontos Egyezés"
#: editor/code_editor.cpp editor/find_in_files.cpp
msgid "Whole Words"
-msgstr "Teljes Szavak"
+msgstr "Egész Szavak"
#: editor/code_editor.cpp editor/rename_dialog.cpp
msgid "Replace"
@@ -826,7 +825,7 @@ msgstr "A Node nem tartalmaz geometriát."
#: editor/groups_editor.cpp editor/plugins/item_list_editor_plugin.cpp
#: editor/plugins/theme_editor_plugin.cpp editor/project_settings_editor.cpp
msgid "Add"
-msgstr "Hozzáad"
+msgstr "Hozzáadás"
#: editor/connections_dialog.cpp editor/dependency_editor.cpp
#: editor/editor_feature_profile.cpp editor/groups_editor.cpp
@@ -837,7 +836,7 @@ msgstr "Hozzáad"
#: editor/plugins/visual_shader_editor_plugin.cpp editor/project_manager.cpp
#: editor/project_settings_editor.cpp
msgid "Remove"
-msgstr "Eltávolít"
+msgstr "Eltávolítás"
#: editor/connections_dialog.cpp
msgid "Add Extra Call Argument:"
@@ -922,7 +921,7 @@ msgstr "Kapcsolás..."
#: editor/connections_dialog.cpp
#: editor/plugins/animation_tree_player_editor_plugin.cpp
msgid "Disconnect"
-msgstr "Szétkapcsol"
+msgstr "Leválasztás"
#: editor/connections_dialog.cpp
#, fuzzy
@@ -980,7 +979,7 @@ msgstr "Kedvencek:"
#: editor/create_dialog.cpp editor/editor_file_dialog.cpp
msgid "Recent:"
-msgstr "Legutóbbi:"
+msgstr "Legutolsó:"
#: editor/create_dialog.cpp editor/plugins/script_editor_plugin.cpp
#: editor/property_selector.cpp editor/quick_open.cpp
@@ -1066,7 +1065,7 @@ msgstr "Csere Forrás Keresése:"
#: modules/visual_script/visual_script_property_selector.cpp
#: scene/gui/file_dialog.cpp
msgid "Open"
-msgstr "Megnyit"
+msgstr "Megnyitás"
#: editor/dependency_editor.cpp
msgid "Owners Of:"
@@ -2266,7 +2265,7 @@ msgstr ""
#: editor/editor_node.cpp editor/plugins/script_editor_plugin.cpp
#: scene/gui/dialogs.cpp
msgid "OK"
-msgstr ""
+msgstr "OK"
#: editor/editor_node.cpp editor/plugins/animation_player_editor_plugin.cpp
msgid "Error saving resource!"
@@ -4315,16 +4314,14 @@ msgid "Create points."
msgstr "Pontok Törlése"
#: editor/plugins/abstract_polygon_2d_editor.cpp
-#, fuzzy
msgid ""
"Edit points.\n"
"LMB: Move Point\n"
"RMB: Erase Point"
msgstr ""
-"Meglévő sokszög módosítása:\n"
-"Bal Egérgomb: Pont Mozgatása.\n"
-"Ctrl + Bal Egérgomb: Szakasz Felosztása.\n"
-"Jobb Egérgomb: Pont Eltörlése."
+"Pontok szerkesztése\n"
+"Bal Egérgomb: Pont mozgatása\n"
+"Jobb Egérgomb: Pont törlése"
#: editor/plugins/abstract_polygon_2d_editor.cpp
#: editor/plugins/animation_blend_space_1d_editor.cpp
@@ -5841,7 +5838,7 @@ msgstr "Nézet Megjelenítése"
#: editor/plugins/canvas_item_editor_plugin.cpp
msgid "Show Group And Lock Icons"
-msgstr ""
+msgstr "Csoport Megjelenítése és ikonok zárolása"
#: editor/plugins/canvas_item_editor_plugin.cpp
msgid "Center Selection"
@@ -8362,7 +8359,7 @@ msgstr ""
#: editor/plugins/theme_editor_plugin.cpp
#: editor/plugins/tile_set_editor_plugin.cpp
msgid "Icon"
-msgstr ""
+msgstr "Ikon"
#: editor/plugins/theme_editor_plugin.cpp editor/rename_dialog.cpp
msgid "Style"
@@ -8370,7 +8367,7 @@ msgstr "Stílus"
#: editor/plugins/theme_editor_plugin.cpp
msgid "Font"
-msgstr ""
+msgstr "Betűtípus"
#: editor/plugins/theme_editor_plugin.cpp
msgid "Color"
@@ -8392,9 +8389,8 @@ msgstr "Érvénytelen név."
#: editor/plugins/tile_map_editor_plugin.cpp
#: modules/gridmap/grid_map_editor_plugin.cpp
-#, fuzzy
msgid "Cut Selection"
-msgstr "Kijelölés Középre"
+msgstr "Kijelölés kivágása"
#: editor/plugins/tile_map_editor_plugin.cpp
msgid "Paint TileMap"
@@ -8402,7 +8398,7 @@ msgstr ""
#: editor/plugins/tile_map_editor_plugin.cpp
msgid "Line Draw"
-msgstr ""
+msgstr "Vonal rajzolás"
#: editor/plugins/tile_map_editor_plugin.cpp
msgid "Rectangle Paint"
@@ -8491,7 +8487,7 @@ msgstr "Jelenlegi tétel eltávolítása"
#: editor/plugins/tile_set_editor_plugin.cpp
msgid "Create from Scene"
-msgstr ""
+msgstr "Létrehozás jelenetből"
#: editor/plugins/tile_set_editor_plugin.cpp
msgid "Merge from Scene"
@@ -10048,7 +10044,7 @@ msgstr ""
#: editor/project_manager.cpp
msgid "Rename Project"
-msgstr ""
+msgstr "Projekt átnevezése"
#: editor/project_manager.cpp
msgid "Import Existing Project"
@@ -10076,7 +10072,7 @@ msgstr ""
#: editor/project_manager.cpp
msgid "Project Name:"
-msgstr ""
+msgstr "Projekt neve:"
#: editor/project_manager.cpp
msgid "Project Path:"
@@ -10120,7 +10116,7 @@ msgstr ""
#: editor/project_manager.cpp
msgid "Unnamed Project"
-msgstr ""
+msgstr "Névtelen projekt"
#: editor/project_manager.cpp
#, fuzzy
@@ -10224,7 +10220,7 @@ msgstr ""
#: editor/project_manager.cpp
msgid "Project Manager"
-msgstr ""
+msgstr "Projektkezelő"
#: editor/project_manager.cpp
#, fuzzy
@@ -10237,7 +10233,7 @@ msgstr ""
#: editor/project_manager.cpp
msgid "Scan"
-msgstr ""
+msgstr "Keresés"
#: editor/project_manager.cpp
msgid "Select a Folder to Scan"
diff --git a/editor/translations/it.po b/editor/translations/it.po
index 93ca2a8f29..b2dac5ae0e 100644
--- a/editor/translations/it.po
+++ b/editor/translations/it.po
@@ -27,8 +27,8 @@
# Hairic95 <hairic95@gmail.com>, 2019.
# Christian Biffi <creixx@virgilio.it>, 2019.
# Giuseppe Guerra <me@nyodev.xyz>, 2019.
-# RHC <rhc.throwaway@gmail.com>, 2019.
-# Antonio Giungato <antonio.giungato@gmail.com>, 2019.
+# RHC <rhc.throwaway@gmail.com>, 2019, 2020.
+# Antonio Giungato <antonio.giungato@gmail.com>, 2019, 2020.
# Marco Galli <mrcgll98@gmail.com>, 2019, 2020.
# MassiminoilTrace <omino.gis@gmail.com>, 2019, 2020.
# MARCO BANFI <mbanfi@gmail.com>, 2019.
@@ -58,8 +58,8 @@ msgid ""
msgstr ""
"Project-Id-Version: Godot Engine editor\n"
"POT-Creation-Date: \n"
-"PO-Revision-Date: 2020-07-26 15:41+0000\n"
-"Last-Translator: Mirko <miknsop@gmail.com>\n"
+"PO-Revision-Date: 2020-08-05 16:58+0000\n"
+"Last-Translator: Lorenzo Cerqua <lorenzocerqua@tutanota.com>\n"
"Language-Team: Italian <https://hosted.weblate.org/projects/godot-engine/"
"godot/it/>\n"
"Language: it\n"
@@ -72,23 +72,23 @@ msgstr ""
#: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp
#: modules/visual_script/visual_script_builtin_funcs.cpp
msgid "Invalid type argument to convert(), use TYPE_* constants."
-msgstr "Argomento non valido per convert(), usare le costanti TYPE_*."
+msgstr "Argomento tipo non valido per convert(), usare le costanti TYPE_*."
#: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp
msgid "Expected a string of length 1 (a character)."
-msgstr "Prevista una stringa di lunghezza 1 (singolo carattere)."
+msgstr "Prevista una stringa di lunghezza 1 (un singolo carattere)."
#: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp
#: modules/mono/glue/gd_glue.cpp
#: modules/visual_script/visual_script_builtin_funcs.cpp
msgid "Not enough bytes for decoding bytes, or invalid format."
msgstr ""
-"Non vi sono abbastanza byte per riuscire a decodificarli, oppure il formato "
+"Non ci sono abbastanza byte per riuscire a decodificarli, oppure il formato "
"non è valido."
#: core/math/expression.cpp
msgid "Invalid input %i (not passed) in expression"
-msgstr "Input non valido %i (non passato) nell'espressione"
+msgstr "Input non valido %i (assente) nell'espressione"
#: core/math/expression.cpp
msgid "self can't be used because instance is null (not passed)"
@@ -100,7 +100,7 @@ msgstr "Operandi non validi per l'operatore %s, %s e %s."
#: core/math/expression.cpp
msgid "Invalid index of type %s for base type %s"
-msgstr "Indice del tipo %s non valido per il tipo base %s"
+msgstr "Indice di tipo %s non valido per il tipo base %s"
#: core/math/expression.cpp
msgid "Invalid named index '%s' for base type %s"
@@ -108,7 +108,7 @@ msgstr "Nome indice '%s' non valido per il tipo base %s"
#: core/math/expression.cpp
msgid "Invalid arguments to construct '%s'"
-msgstr "Argomenti non validi per il costrutto '%s'"
+msgstr "Argomenti non validi per costruire '%s'"
#: core/math/expression.cpp
msgid "On call to '%s':"
@@ -241,7 +241,7 @@ msgstr "Modifica ciclicità animazione"
#: editor/animation_track_editor.cpp
msgid "Property Track"
-msgstr "Proprietà Traccia"
+msgstr "Traccia proprietà"
#: editor/animation_track_editor.cpp
msgid "3D Transform Track"
@@ -249,7 +249,7 @@ msgstr "Traccia trasformazione 3D"
#: editor/animation_track_editor.cpp
msgid "Call Method Track"
-msgstr "Traccia di Chiamata di Metodi"
+msgstr "Traccia chiamata metodo"
#: editor/animation_track_editor.cpp
msgid "Bezier Curve Track"
@@ -265,7 +265,7 @@ msgstr "Traccia di riproduzione animazione"
#: editor/animation_track_editor.cpp
msgid "Animation length (frames)"
-msgstr "Durata Animazione (frames)"
+msgstr "Durata animazione (fotogrammi)"
#: editor/animation_track_editor.cpp
msgid "Animation length (seconds)"
@@ -277,7 +277,7 @@ msgstr "Aggiungi Traccia"
#: editor/animation_track_editor.cpp
msgid "Animation Looping"
-msgstr "Ciclicità Animazione"
+msgstr "Ripeti Ciclicamente Animazione"
#: editor/animation_track_editor.cpp
#: modules/visual_script/visual_script_editor.cpp
@@ -290,7 +290,7 @@ msgstr "Clip Audio:"
#: editor/animation_track_editor.cpp
msgid "Anim Clips:"
-msgstr "Clip Anim:"
+msgstr "Clip Animazione:"
#: editor/animation_track_editor.cpp
msgid "Change Track Path"
@@ -306,11 +306,11 @@ msgstr "Modalità di aggiornamento (Come viene impostata questa proprietà)"
#: editor/animation_track_editor.cpp
msgid "Interpolation Mode"
-msgstr "Modalità di Interpolazione"
+msgstr "Modalità Interpolazione"
#: editor/animation_track_editor.cpp
msgid "Loop Wrap Mode (Interpolate end with beginning on loop)"
-msgstr "Modalità Loop Wrap (Interpola la fine con l'inizio del loop)"
+msgstr "Modalità Ciclo ad Anello (Interpola la fine con l'inizio del ciclo)"
#: editor/animation_track_editor.cpp
msgid "Remove this track."
@@ -1049,11 +1049,11 @@ msgstr "Dipendenze:"
#: editor/dependency_editor.cpp
msgid "Fix Broken"
-msgstr "Riparare rotti"
+msgstr "Ripara rotti"
#: editor/dependency_editor.cpp
msgid "Dependency Editor"
-msgstr "Editor dipendenze"
+msgstr "Editor Dipendenze"
#: editor/dependency_editor.cpp
msgid "Search Replacement Resource:"
@@ -1157,7 +1157,7 @@ msgstr "Grazie dalla comunità di Godot!"
#: editor/editor_about.cpp
msgid "Godot Engine contributors"
-msgstr "Contributori a Godot Engine"
+msgstr "Contributori di Godot engine"
#: editor/editor_about.cpp
msgid "Project Founders"
@@ -1391,7 +1391,7 @@ msgstr "Salva disposizione del bus audio come..."
#: editor/editor_audio_buses.cpp
msgid "Location for New Layout..."
-msgstr "Posizione della nuova disposizione…"
+msgstr "Posizione per la nuova disposizione..."
#: editor/editor_audio_buses.cpp
msgid "Open Audio Bus Layout"
@@ -1441,7 +1441,7 @@ msgstr "Salva questa disposizione bus in un file."
#: editor/editor_audio_buses.cpp editor/import_dock.cpp
msgid "Load Default"
-msgstr "Carica predefiniti"
+msgstr "Carica Predefiniti"
#: editor/editor_audio_buses.cpp
msgid "Load the default Bus Layout."
@@ -1887,7 +1887,7 @@ msgstr "Attiva/disattiva preferito"
#: editor/editor_file_dialog.cpp
msgid "Toggle Mode"
-msgstr "Modalità di Attivazione/Disattivazione"
+msgstr "Commuta Modalità"
#: editor/editor_file_dialog.cpp
msgid "Focus Path"
@@ -2535,12 +2535,14 @@ msgstr ""
#: editor/editor_node.cpp
msgid "Unable to find script field for addon plugin at: 'res://addons/%s'."
msgstr ""
-"Impossibile trovare il campo per lo script del componente aggiuntivo in: "
+"Impossibile trovare il campo dello script per il componente aggiuntivo in: "
"'res://addons/%s'."
#: editor/editor_node.cpp
msgid "Unable to load addon script from path: '%s'."
-msgstr "Impossibile caricare uno script aggiuntivo dal percorso: '%s'."
+msgstr ""
+"Impossibile caricare lo script di un componente aggiuntivo dal percorso: "
+"'%s'."
#: editor/editor_node.cpp
msgid ""
@@ -2560,8 +2562,8 @@ msgstr ""
#: editor/editor_node.cpp
msgid "Unable to load addon script from path: '%s' Script is not in tool mode."
msgstr ""
-"Impossibile caricare uno script aggiuntivo dal percorso: Lo script '%s' non "
-"è in tool mode."
+"Impossibile caricare lo script di un componente aggiuntivo dal percorso: "
+"'%s' Lo script non è in modalità strumento."
#: editor/editor_node.cpp
msgid ""
@@ -2630,7 +2632,7 @@ msgstr "Elimina disposizione"
#: editor/editor_node.cpp editor/import_dock.cpp
#: editor/script_create_dialog.cpp
msgid "Default"
-msgstr "Default"
+msgstr "Predefinito"
#: editor/editor_node.cpp editor/editor_properties.cpp
#: editor/plugins/script_editor_plugin.cpp editor/property_editor.cpp
@@ -2679,7 +2681,7 @@ msgstr "%d altri file"
#: editor/editor_node.cpp
msgid "Dock Position"
-msgstr "Posizione dock"
+msgstr "Posizione Dock"
#: editor/editor_node.cpp
msgid "Distraction Free Mode"
@@ -2798,7 +2800,7 @@ msgstr "Esporta..."
#: editor/editor_node.cpp
msgid "Install Android Build Template..."
-msgstr "Installa il Build Template di Android…"
+msgstr "Installa il Modello di Costruzione di Android…"
#: editor/editor_node.cpp
msgid "Open Project Data Folder"
@@ -2945,7 +2947,7 @@ msgstr "Apri cartella dati/impostazioni editor"
#: editor/editor_node.cpp
msgid "Open Editor Data Folder"
-msgstr "Apri la cartella dati dell'editor"
+msgstr "Apri la Cartella dei Dati dell'Editor"
#: editor/editor_node.cpp
msgid "Open Editor Settings Folder"
@@ -2957,7 +2959,7 @@ msgstr "Gestisci le funzionalità dell'editor…"
#: editor/editor_node.cpp
msgid "Manage Export Templates..."
-msgstr "Gestisci template d'esportazione…"
+msgstr "Gestisci Modello d'Esportazione…"
#: editor/editor_node.cpp editor/plugins/shader_editor_plugin.cpp
msgid "Help"
@@ -2983,11 +2985,11 @@ msgstr "Domande e risposte"
#: editor/editor_node.cpp
msgid "Report a Bug"
-msgstr "Riporta un Bug"
+msgstr "Segnala un problema"
#: editor/editor_node.cpp
msgid "Send Docs Feedback"
-msgstr "Invia opinione sui documenti"
+msgstr "Valuta documentazione"
#: editor/editor_node.cpp editor/plugins/asset_library_editor_plugin.cpp
msgid "Community"
@@ -3086,7 +3088,7 @@ msgstr ""
#: editor/editor_node.cpp
msgid "Manage Templates"
-msgstr "Gestisci i template d'esportazione"
+msgstr "Gestisci i modelli d'esportazione"
#: editor/editor_node.cpp
msgid ""
@@ -3114,7 +3116,7 @@ msgid ""
"Remove the \"res://android/build\" directory manually before attempting this "
"operation again."
msgstr ""
-"Il template della build Android è già installato in questo progetto e non "
+"Il modello della build Android è già installato in questo progetto e non "
"sarà sovrascritto.\n"
"Rimuovi la cartella \"res://android/build\" manualmente prima di ritentare "
"questa operazione."
@@ -3242,7 +3244,7 @@ msgstr "Frame %"
#: editor/editor_profiler.cpp
msgid "Physics Frame %"
-msgstr "Frame della Fisica %"
+msgstr "Fotogramma della Fisica %"
#: editor/editor_profiler.cpp
msgid "Inclusive"
@@ -3520,8 +3522,8 @@ msgid ""
"No download links found for this version. Direct download is only available "
"for official releases."
msgstr ""
-"Non sono stati trovati link di download per questa versione. Il download "
-"diretto è disponibile solamente per rilasci ufficiali."
+"Nessun collegamento di download trovato per questa versione. I download "
+"diretti sono disponibili solo per i rilasci ufficiali."
#: editor/export_template_manager.cpp
#: editor/plugins/asset_library_editor_plugin.cpp
@@ -3615,7 +3617,7 @@ msgstr "Errore di Connessione"
#: editor/export_template_manager.cpp
msgid "SSL Handshake Error"
-msgstr "Errore nell'Handshake SSL"
+msgstr "Errore Handshake SSL"
#: editor/export_template_manager.cpp
msgid "Uncompressing Android Build Sources"
@@ -3643,7 +3645,7 @@ msgstr "Seleziona file template"
#: editor/export_template_manager.cpp
msgid "Godot Export Templates"
-msgstr "Template di Export"
+msgstr "Modello di Esportazione Godot"
#: editor/export_template_manager.cpp
msgid "Export Template Manager"
@@ -3651,7 +3653,7 @@ msgstr "Gestore Template Esportazione"
#: editor/export_template_manager.cpp
msgid "Download Templates"
-msgstr "Scarica Template"
+msgstr "Scarica Modelli"
#: editor/export_template_manager.cpp
msgid "Select mirror from list: (Shift+Click: Open in Browser)"
@@ -4038,11 +4040,11 @@ msgstr "%d File"
#: editor/import_dock.cpp
msgid "Set as Default for '%s'"
-msgstr "Imposta come Default per '%s'"
+msgstr "Imposta come Predefinito per '%s'"
#: editor/import_dock.cpp
msgid "Clear Default for '%s'"
-msgstr "Elimina Default per '%s'"
+msgstr "Elimina Predefinito per '%s'"
#: editor/import_dock.cpp
msgid "Import As:"
@@ -4629,7 +4631,7 @@ msgstr "Opzioni dell'onion skinning"
#: editor/plugins/animation_player_editor_plugin.cpp
msgid "Directions"
-msgstr "Indicazioni"
+msgstr "Direzioni"
#: editor/plugins/animation_player_editor_plugin.cpp
msgid "Past"
@@ -5725,7 +5727,7 @@ msgstr "Errore istanziamento scena da %s"
#: editor/plugins/canvas_item_editor_plugin.cpp
msgid "Change Default Type"
-msgstr "Cambia tipo di default"
+msgstr "Cambia Tipo Predefinito"
#: editor/plugins/canvas_item_editor_plugin.cpp
msgid ""
@@ -8669,7 +8671,7 @@ msgstr "Imposta Nome Uniforme"
#: editor/plugins/visual_shader_editor_plugin.cpp
msgid "Set Input Default Port"
-msgstr "Imposta Porta Input di Default"
+msgstr "Imposta Porta Input Predefinita"
#: editor/plugins/visual_shader_editor_plugin.cpp
msgid "Add Node to Visual Shader"
@@ -9011,7 +9013,7 @@ msgstr "Calcola la parte frazionaria dell'argomento."
#: editor/plugins/visual_shader_editor_plugin.cpp
msgid "Returns the inverse of the square root of the parameter."
-msgstr "Ritorna l'inversa della radice quadrata del parametro."
+msgstr "Restituisce l'inversa della radice quadrata del parametro."
#: editor/plugins/visual_shader_editor_plugin.cpp
msgid "Natural logarithm."
@@ -9073,15 +9075,15 @@ msgstr "Estrae il segno del parametro."
#: editor/plugins/visual_shader_editor_plugin.cpp
msgid "Returns the sine of the parameter."
-msgstr "Ritorna il seno del parametro."
+msgstr "Restituisce il seno del parametro."
#: editor/plugins/visual_shader_editor_plugin.cpp
msgid "Returns the hyperbolic sine of the parameter."
-msgstr "Ritorna il seno iperbolico del parametro."
+msgstr "Restituisce il seno iperbolico del parametro."
#: editor/plugins/visual_shader_editor_plugin.cpp
msgid "Returns the square root of the parameter."
-msgstr "Ritorna la radice quadrata del parametro."
+msgstr "Restituisce la radice quadrata del parametro."
#: editor/plugins/visual_shader_editor_plugin.cpp
msgid ""
@@ -9093,8 +9095,8 @@ msgid ""
msgstr ""
"SmoothStep function( scalar(edge0), scalar(edge1), scalar(x) ).\n"
"\n"
-"Ritorna 0.0 se 'x' è più piccolo di 'edge0', o 1.0 se 'x' è più grande di "
-"'edge1'. Altrimenti, il valore di ritorno è interpolato tra 0.0 ed 1.0 "
+"Restituisce 0.0 se 'x' è più piccolo di 'edge0', o 1.0 se 'x' è più grande "
+"di 'edge1'. Altrimenti, il valore di ritorno è interpolato tra 0.0 ed 1.0 "
"usando i polinomi di Hermite."
#: editor/plugins/visual_shader_editor_plugin.cpp
@@ -9105,15 +9107,15 @@ msgid ""
msgstr ""
"Step function( scalar(edge), scalar(x) ).\n"
"\n"
-"Ritorna 0.0 se 'x' è più piccolo di 'edge', altrimenti 1.0."
+"Restituisce 0.0 se 'x' è più piccolo di 'edge', altrimenti 1.0."
#: editor/plugins/visual_shader_editor_plugin.cpp
msgid "Returns the tangent of the parameter."
-msgstr "Ritorna la tangente del parametro."
+msgstr "Restituisce la tangente del parametro."
#: editor/plugins/visual_shader_editor_plugin.cpp
msgid "Returns the hyperbolic tangent of the parameter."
-msgstr "Ritorna la tangente iperbolica del parametro."
+msgstr "Restituisce la tangente iperbolica del parametro."
#: editor/plugins/visual_shader_editor_plugin.cpp
msgid "Finds the truncated value of the parameter."
@@ -9133,7 +9135,7 @@ msgstr "Moltiplica lo scalare per scalare."
#: editor/plugins/visual_shader_editor_plugin.cpp
msgid "Returns the remainder of the two scalars."
-msgstr "Ritorna il resto dei due scalari."
+msgstr "Restituisce il resto dei due scalari."
#: editor/plugins/visual_shader_editor_plugin.cpp
msgid "Subtracts scalar from scalar."
@@ -9243,11 +9245,11 @@ msgstr "Scompone il vettore a tre scalari."
#: editor/plugins/visual_shader_editor_plugin.cpp
msgid "Calculates the cross product of two vectors."
-msgstr "Calcola il prodotto incrociato di due vettori."
+msgstr "Calcola il prodotto vettoriale di due vettori."
#: editor/plugins/visual_shader_editor_plugin.cpp
msgid "Returns the distance between two points."
-msgstr "Ritorna la distanza tra due punti."
+msgstr "Restituisce la distanza tra due punti."
#: editor/plugins/visual_shader_editor_plugin.cpp
msgid "Calculates the dot product of two vectors."
@@ -9260,7 +9262,7 @@ msgid ""
"incident vector, and Nref, the reference vector. If the dot product of I and "
"Nref is smaller than zero the return value is N. Otherwise -N is returned."
msgstr ""
-"Ritorna un vettore che punta nella stessa direzione di quello di "
+"Restituisce un vettore che punta nella stessa direzione di quello di "
"riferimento. La funzione ha tre vettori parametro: N, il vettore da "
"orientare; I, quello incidente; ed Nref, il vettore di riferimento. Se il "
"prodotto scalare di I ed Nref è minore di zero, il valore di ritorno è N. "
@@ -9295,12 +9297,12 @@ msgid ""
"Returns the vector that points in the direction of reflection ( a : incident "
"vector, b : normal vector )."
msgstr ""
-"Ritorna un vettore che punta nella direzione della riflessione ( a : vettore "
-"incidente, b : vettore normale )."
+"Restituisce un vettore che punta nella direzione della riflessione ( a : "
+"vettore incidente, b : vettore normale )."
#: editor/plugins/visual_shader_editor_plugin.cpp
msgid "Returns the vector that points in the direction of refraction."
-msgstr "Ritorna un vettore che punta nella direzione della refrazione."
+msgstr "Restituisce un vettore che punta nella direzione della refrazione."
#: editor/plugins/visual_shader_editor_plugin.cpp
msgid ""
@@ -9312,7 +9314,7 @@ msgid ""
msgstr ""
"SmoothStep function( vector(edge0), vector(edge1), vector(x) ).\n"
"\n"
-"Ritorna 0.0 se 'x' è minore di 'edge0', ed 1.0 se 'x' è più grande di "
+"Restituisce 0.0 se 'x' è minore di 'edge0', ed 1.0 se 'x' è più grande di "
"'edge1'. Altrimenti, il valore di ritorno è interpolato tra 0.0 ed 1.0 "
"usando i polinomiali di Hermite."
@@ -9326,7 +9328,7 @@ msgid ""
msgstr ""
"SmoothStep function( scalar(edge0), scalar(edge1), vector(x) ).\n"
"\n"
-"Ritorna 0.0 se 'x' è minore di 'edge0', ed 1.0 se 'x' è più grande di "
+"Restituisce 0.0 se 'x' è minore di 'edge0', ed 1.0 se 'x' è più grande di "
"'edge1'. Altrimenti, il valore di ritorno è interpolato tra 0.0 ed 1.0 "
"usando i polinomiali di Hermite."
@@ -9338,7 +9340,7 @@ msgid ""
msgstr ""
"Step function( vector(edge), vector(x) ).\n"
"\n"
-"Ritorna 0.0 se 'x' è minore di 'edge', altrimenti 1.0."
+"Restituisce 0.0 se 'x' è minore di 'edge', altrimenti 1.0."
#: editor/plugins/visual_shader_editor_plugin.cpp
msgid ""
@@ -9348,7 +9350,7 @@ msgid ""
msgstr ""
"Step function( scalar(edge), vector(x) ).\n"
"\n"
-"Ritorna 0.0 se 'x' è minore di 'edge', altrimenti 1.0."
+"Restituisce 0.0 se 'x' è minore di 'edge', altrimenti 1.0."
#: editor/plugins/visual_shader_editor_plugin.cpp
msgid "Adds vector to vector."
@@ -9356,7 +9358,7 @@ msgstr "Aggiunge un vettore al vettore."
#: editor/plugins/visual_shader_editor_plugin.cpp
msgid "Divides vector by vector."
-msgstr "Divide vettore per vettore."
+msgstr "Divide due vettori."
#: editor/plugins/visual_shader_editor_plugin.cpp
msgid "Multiplies vector by vector."
@@ -9364,7 +9366,7 @@ msgstr "Moltiplica vettore per vettore."
#: editor/plugins/visual_shader_editor_plugin.cpp
msgid "Returns the remainder of the two vectors."
-msgstr "Ritorna il resto dei due vettori."
+msgstr "Restituisce il resto dei due vettori."
#: editor/plugins/visual_shader_editor_plugin.cpp
msgid "Subtracts vector from vector."
@@ -9394,7 +9396,7 @@ msgid ""
"Returns falloff based on the dot product of surface normal and view "
"direction of camera (pass associated inputs to it)."
msgstr ""
-"Ritorna il decadimento in base al prodotto scalare della normale della "
+"Restituisce il decadimento in base al prodotto scalare della normale della "
"superfice e direzione della telecamera (passa gli input associati ad essa)."
#: editor/plugins/visual_shader_editor_plugin.cpp
@@ -10630,9 +10632,8 @@ msgid "Make node as Root"
msgstr "Rendi il nodo come Radice"
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Delete %d nodes and any children?"
-msgstr "Elimina il nodo \"%s\" e tutti i suoi figli?"
+msgstr "Eliminare %d nodi ed eventuali figli?"
#: editor/scene_tree_dock.cpp
msgid "Delete %d nodes?"
@@ -10675,9 +10676,8 @@ msgid ""
"Enabling \"Load As Placeholder\" will disable \"Editable Children\" and "
"cause all properties of the node to be reverted to their default."
msgstr ""
-"Abilitando \"Carica Come Placeholder\" disabiliterà \"Figlio Modificabile\" "
-"e causerà tutte le proprietà del nodo di essere riportare ai loro valori "
-"default."
+"Abilitare \"Carica Come Placeholder\" disabiliterà \"Figlio Modificabile\" e "
+"riporterà tutte le proprietà del nodo ai loro valori predefiniti."
#: editor/scene_tree_dock.cpp
msgid "Make Local"
@@ -11111,7 +11111,7 @@ msgstr "Processo Figlio Connesso."
#: editor/script_editor_debugger.cpp
msgid "Copy Error"
-msgstr "Copia messaggio di errore"
+msgstr "Copia Errore"
#: editor/script_editor_debugger.cpp
msgid "Video RAM"
@@ -11644,7 +11644,7 @@ msgstr "Cambia nome Argomento"
#: modules/visual_script/visual_script_editor.cpp
msgid "Set Variable Default Value"
-msgstr "Imposta Valore di Default della Variabile"
+msgstr "Imposta Valore Predefinito della Variabile"
#: modules/visual_script/visual_script_editor.cpp
msgid "Set Variable Type"
@@ -12109,18 +12109,18 @@ msgstr ""
"Mobile VR\"."
#: platform/android/export/export.cpp
-#, fuzzy
msgid ""
"\"Hand Tracking\" is only valid when \"Xr Mode\" is \"Oculus Mobile VR\"."
msgstr ""
-"\"Hand Tracking\" è valido solo quando \"Xr Mode\" è \"Oculus Mobile VR\"."
+"\"Hand Tracking\" è valido solo quando \"Xr Mode\" è impostato su \"Oculus "
+"Mobile VR\"."
#: platform/android/export/export.cpp
-#, fuzzy
msgid ""
"\"Focus Awareness\" is only valid when \"Xr Mode\" is \"Oculus Mobile VR\"."
msgstr ""
-"\"Focus Awareness\" è valida solo quando \"Xr Mode\" è \"Oculus Mobile VR\"."
+"\"Focus Awareness\" è valido solo quando \"Xr Mode\" è impostato su \"Oculus "
+"Mobile VR\"."
#: platform/android/export/export.cpp
msgid ""
@@ -12191,8 +12191,9 @@ msgid "Run in Browser"
msgstr "Esegui nel Browser"
#: platform/javascript/export/export.cpp
+#, fuzzy
msgid "Run exported HTML in the system's default browser."
-msgstr "Esegui HTML esportato all'interno del browser di sistema di default."
+msgstr "Esegui HTML esportato all'interno del browser di sistema predefinito."
#: platform/javascript/export/export.cpp
msgid "Could not write file:"
@@ -12215,6 +12216,7 @@ msgid "Could not read boot splash image file:"
msgstr "Impossibile leggere il file immagine di avvio splash:"
#: platform/javascript/export/export.cpp
+#, fuzzy
msgid "Using default boot splash image."
msgstr "Utilizzando l'immagine di splash di avvio predefinita."
@@ -12350,6 +12352,9 @@ msgid ""
"Polygon-based shapes are not meant be used nor edited directly through the "
"CollisionShape2D node. Please use the CollisionPolygon2D node instead."
msgstr ""
+"Le forme basate sui poligoni non sono state fatte per essere usate nè "
+"modificate direttamente tramite il nodo CollisionShape2D. Per piacere usa "
+"invece il nodo CollisionPolygon2D."
#: scene/2d/cpu_particles_2d.cpp
msgid ""
@@ -12853,9 +12858,9 @@ msgid ""
"functions. Making them visible for editing is fine, but they will hide upon "
"running."
msgstr ""
-"I popup saranno nascosti per default affinché non chiami la funzione "
-"popup(), oppure una delle funzioni popup*(). Farli diventare visibili per "
-"modificarli va bene, ma scompariranno all'esecuzione."
+"I popup saranno nascosti di predefinita finchè non chiami popup() o una "
+"delle qualsiasi funzioni popup*(). Farli diventare visibili per modificarli "
+"va bene, ma scompariranno all'esecuzione."
#: scene/gui/range.cpp
msgid "If \"Exp Edit\" is enabled, \"Min Value\" must be greater than 0."
diff --git a/editor/translations/ja.po b/editor/translations/ja.po
index d3b2771793..e0a1d4d909 100644
--- a/editor/translations/ja.po
+++ b/editor/translations/ja.po
@@ -36,7 +36,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Godot Engine editor\n"
"POT-Creation-Date: \n"
-"PO-Revision-Date: 2020-07-28 09:51+0000\n"
+"PO-Revision-Date: 2020-08-11 14:04+0000\n"
"Last-Translator: Wataru Onuki <bettawat@yahoo.co.jp>\n"
"Language-Team: Japanese <https://hosted.weblate.org/projects/godot-engine/"
"godot/ja/>\n"
@@ -533,8 +533,7 @@ msgstr "警告:インãƒãƒ¼ãƒˆã—ãŸã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã‚’編集ã—ã¦ã„ã¾ã
#: editor/animation_track_editor.cpp
msgid "Select an AnimationPlayer node to create and edit animations."
msgstr ""
-"アニメーションを作ã£ã¦ç·¨é›†ã™ã‚‹ãŸã‚ã« AnimationPlayer ノードã¸ã®ãƒ‘スをé¸æŠžã—ã¦"
-"下ã•ã„。"
+"アニメーションを作ã£ã¦ç·¨é›†ã™ã‚‹ã«ã¯ã€ AnimationPlayer ノードをé¸æŠžã—ã¦ä¸‹ã•ã„。"
#: editor/animation_track_editor.cpp
msgid "Only show tracks from nodes selected in tree."
@@ -899,7 +898,7 @@ msgstr "'%s' ã‚’ '%s' ã‹ã‚‰åˆ‡æ–­"
#: editor/connections_dialog.cpp
msgid "Disconnect all from signal: '%s'"
-msgstr "シグナル '%s' ã‹ã‚‰å…¨ã¦ã‚’切断"
+msgstr "シグナル '%s' ã‹ã‚‰ã™ã¹ã¦ã‚’切断"
#: editor/connections_dialog.cpp
msgid "Connect..."
@@ -920,7 +919,7 @@ msgstr "接続を編集:"
#: editor/connections_dialog.cpp
msgid "Are you sure you want to remove all connections from the \"%s\" signal?"
-msgstr "シグナル %s ã‹ã‚‰å…¨ã¦ã®æŽ¥ç¶šã‚’除去ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹ï¼Ÿ"
+msgstr "シグナル %s ã‹ã‚‰ã™ã¹ã¦ã®æŽ¥ç¶šã‚’除去ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹ï¼Ÿ"
#: editor/connections_dialog.cpp editor/editor_help.cpp editor/node_dock.cpp
msgid "Signals"
@@ -928,7 +927,7 @@ msgstr "シグナル"
#: editor/connections_dialog.cpp
msgid "Are you sure you want to remove all connections from this signal?"
-msgstr "ã“ã®ã‚·ã‚°ãƒŠãƒ«ã‹ã‚‰å…¨ã¦ã®æŽ¥ç¶šã‚’除去ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹ï¼Ÿ"
+msgstr "ã“ã®ã‚·ã‚°ãƒŠãƒ«ã‹ã‚‰ã™ã¹ã¦ã®æŽ¥ç¶šã‚’除去ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹ï¼Ÿ"
#: editor/connections_dialog.cpp
msgid "Disconnect All"
@@ -1762,7 +1761,7 @@ msgstr "Godot機能プロファイル"
#: editor/editor_feature_profile.cpp
msgid "Import Profile(s)"
-msgstr "プロファイルã®ã‚¤ãƒ³ãƒãƒ¼ãƒˆ"
+msgstr "プロファイルをインãƒãƒ¼ãƒˆ"
#: editor/editor_feature_profile.cpp
msgid "Export Profile"
@@ -5363,7 +5362,7 @@ msgstr "IKãƒã‚§ãƒ¼ãƒ³ã‚’クリア"
msgid ""
"Warning: Children of a container get their position and size determined only "
"by their parent."
-msgstr "警告:コンテナã®å­ã®ä½ç½®ã¨ã‚µã‚¤ã‚ºã¯ã€è¦ªã«ã‚ˆã£ã¦ã®ã¿æ±ºå®šã•ã‚Œã¾ã™ã€‚"
+msgstr "注æ„:コンテナã®å­ã®ä½ç½®ã¨ã‚µã‚¤ã‚ºã¯ã€è¦ªã«ã‚ˆã£ã¦ã®ã¿æ±ºå®šã•ã‚Œã¾ã™ã€‚"
#: editor/plugins/canvas_item_editor_plugin.cpp
#: editor/plugins/texture_region_editor_plugin.cpp
@@ -7016,15 +7015,15 @@ msgstr "コメントã®åˆ‡ã‚Šæ›¿ãˆ"
#: editor/plugins/script_text_editor.cpp
msgid "Fold/Unfold Line"
-msgstr "行を折りãŸãŸã‚€/展開ã™ã‚‹"
+msgstr "行を折りãŸãŸã‚€ / 展開ã™ã‚‹"
#: editor/plugins/script_text_editor.cpp
msgid "Fold All Lines"
-msgstr "å…¨ã¦ã®è¡Œã‚’折りãŸãŸã‚€"
+msgstr "ã™ã¹ã¦ã®è¡Œã‚’折りãŸãŸã‚€"
#: editor/plugins/script_text_editor.cpp
msgid "Unfold All Lines"
-msgstr "å…¨ã¦ã®è¡Œã‚’展開ã™ã‚‹"
+msgstr "ã™ã¹ã¦ã®è¡Œã‚’展開ã™ã‚‹"
#: editor/plugins/script_text_editor.cpp
msgid "Clone Down"
@@ -7321,11 +7320,11 @@ msgstr "シェーディングãªã—ã§è¡¨ç¤º"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "View Environment"
-msgstr "環境表示"
+msgstr "環境を表示"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "View Gizmos"
-msgstr "ギズモ(Gizmo)を表示"
+msgstr "ギズモを表示"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "View Information"
@@ -7530,7 +7529,7 @@ msgstr "ギズモ"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "View Origin"
-msgstr "原点ã®è¡¨ç¤º"
+msgstr "ビューã®åŽŸç‚¹"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "View Grid"
@@ -8340,7 +8339,7 @@ msgstr ""
#: editor/plugins/tile_set_editor_plugin.cpp
msgid "Set Tile Region"
-msgstr "タイル領域ã®è¨­å®š"
+msgstr "タイル領域を設定"
#: editor/plugins/tile_set_editor_plugin.cpp
msgid "Create Tile"
@@ -8549,7 +8548,7 @@ msgstr "Sampler"
#: editor/plugins/visual_shader_editor_plugin.cpp
msgid "Add input port"
-msgstr "入力ãƒãƒ¼ãƒˆã®è¿½åŠ "
+msgstr "入力ãƒãƒ¼ãƒˆã‚’追加"
#: editor/plugins/visual_shader_editor_plugin.cpp
msgid "Add output port"
@@ -8581,7 +8580,7 @@ msgstr "出力ãƒãƒ¼ãƒˆã®å‰Šé™¤"
#: editor/plugins/visual_shader_editor_plugin.cpp
msgid "Set expression"
-msgstr "å¼ã®è¨­å®š"
+msgstr "å¼ã‚’設定"
#: editor/plugins/visual_shader_editor_plugin.cpp
msgid "Resize VisualShader node"
@@ -9838,7 +9837,7 @@ msgid ""
"Remove %d projects from the list?\n"
"The project folders' contents won't be modified."
msgstr ""
-"%d プロジェクトを一覧ã‹ã‚‰å‰Šé™¤ã—ã¾ã™ã‹?\n"
+"%d プロジェクトを一覧ã‹ã‚‰å‰Šé™¤ã—ã¾ã™ã‹ï¼Ÿ\n"
"プロジェクトフォルダã®å†…容ã¯å¤‰æ›´ã•ã‚Œã¾ã›ã‚“。"
#: editor/project_manager.cpp
@@ -9846,7 +9845,7 @@ msgid ""
"Remove this project from the list?\n"
"The project folder's contents won't be modified."
msgstr ""
-"ã“ã®ãƒ—ロジェクトを一覧ã‹ã‚‰å‰Šé™¤ã—ã¾ã™ã‹?\n"
+"ã“ã®ãƒ—ロジェクトを一覧ã‹ã‚‰å‰Šé™¤ã—ã¾ã™ã‹ï¼Ÿ\n"
"プロジェクトフォルダã®å†…容ã¯å¤‰æ›´ã•ã‚Œã¾ã›ã‚“。"
#: editor/project_manager.cpp
@@ -9967,11 +9966,11 @@ msgstr "入力アクションイベントã®åå‰ã‚’変更ã™ã‚‹"
#: editor/project_settings_editor.cpp
msgid "Change Action deadzone"
-msgstr "アクションデッドゾーンã®å¤‰æ›´"
+msgstr "アクション デッドゾーンを変更"
#: editor/project_settings_editor.cpp
msgid "Add Input Action Event"
-msgstr "入力アクションイベントを追加"
+msgstr "入力アクション イベントを追加"
#: editor/project_settings_editor.cpp
msgid "All Devices"
@@ -10075,7 +10074,7 @@ msgstr "マウスホイールを下ã«ã€‚"
#: editor/project_settings_editor.cpp
msgid "Add Global Property"
-msgstr "グローãƒãƒ«ãƒ—ロパティã®è¿½åŠ "
+msgstr "グローãƒãƒ«ãƒ—ロパティを追加"
#: editor/project_settings_editor.cpp
msgid "Select a setting item first!"
@@ -10535,9 +10534,8 @@ msgid "Make node as Root"
msgstr "ノードをルートã«ã™ã‚‹"
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Delete %d nodes and any children?"
-msgstr "\"%s\" ノードã¨ãã®å­ãƒŽãƒ¼ãƒ‰ã‚’削除ã—ã¾ã™ã‹ï¼Ÿ"
+msgstr "%d ノードã¨ãã®å­ãƒŽãƒ¼ãƒ‰ã™ã¹ã¦ã‚’削除ã—ã¾ã™ã‹ï¼Ÿ"
#: editor/scene_tree_dock.cpp
msgid "Delete %d nodes?"
@@ -12235,6 +12233,8 @@ msgid ""
"Polygon-based shapes are not meant be used nor edited directly through the "
"CollisionShape2D node. Please use the CollisionPolygon2D node instead."
msgstr ""
+"ãƒãƒªã‚´ãƒ³ãƒ™ãƒ¼ã‚¹ã®ã‚·ã‚§ã‚¤ãƒ—ã¯ã€CollisionShape2Dノードã§ä½¿ç”¨ã—ãŸã‚Šç›´æŽ¥ç·¨é›†ã—ãŸã‚Š"
+"ã™ã‚‹ã«ã¯é©ã—ã¾ã›ã‚“。代ã‚ã‚Šã«CollisionPolygon2Dノードを使用ã—ã¦ãã ã•ã„。"
#: scene/2d/cpu_particles_2d.cpp
msgid ""
diff --git a/editor/translations/ko.po b/editor/translations/ko.po
index 23a9e4dded..9b19450d58 100644
--- a/editor/translations/ko.po
+++ b/editor/translations/ko.po
@@ -18,11 +18,12 @@
# Tilto_ <tilto0822@develable.xyz>, 2020.
# Myeongjin Lee <aranet100@gmail.com>, 2020.
# Doyun Kwon <caen4516@gmail.com>, 2020.
+# Jun Hyung Shin <shmishmi79@gmail.com>, 2020.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine editor\n"
"POT-Creation-Date: \n"
-"PO-Revision-Date: 2020-06-29 15:26+0000\n"
+"PO-Revision-Date: 2020-07-31 03:47+0000\n"
"Last-Translator: Ch. <ccwpc@hanmail.net>\n"
"Language-Team: Korean <https://hosted.weblate.org/projects/godot-engine/"
"godot/ko/>\n"
@@ -7359,7 +7360,6 @@ msgid "XForm Dialog"
msgstr "XForm 대화 ìƒìž"
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid ""
"Click to toggle between visibility states.\n"
"\n"
@@ -10461,9 +10461,8 @@ msgid "Make node as Root"
msgstr "노드를 루트로 만들기"
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Delete %d nodes and any children?"
-msgstr "노드 \"%s\"와(ê³¼) ìžì‹ì„ 삭제할까요?"
+msgstr "%d ê°œì˜ ë…¸ë“œì™€ 모든 ìžì‹ 노드를 삭제할까요?"
#: editor/scene_tree_dock.cpp
msgid "Delete %d nodes?"
@@ -12141,6 +12140,8 @@ msgid ""
"Polygon-based shapes are not meant be used nor edited directly through the "
"CollisionShape2D node. Please use the CollisionPolygon2D node instead."
msgstr ""
+"í´ë¦¬ê³¤ 기반 Shape는 CollisionShape2Dì— ì¶”ê°€í•˜ê±°ë‚˜ 거기서 íŽ¸ì§‘í•˜ê²Œë” ì„¤ê³„í•˜ì§€ "
+"않았습니다. 대신 CollisionPolygon2D 노드를 사용하십시오."
#: scene/2d/cpu_particles_2d.cpp
msgid ""
diff --git a/editor/translations/pl.po b/editor/translations/pl.po
index 2a09acd7c5..d7ff515b05 100644
--- a/editor/translations/pl.po
+++ b/editor/translations/pl.po
@@ -45,8 +45,8 @@ msgid ""
msgstr ""
"Project-Id-Version: Godot Engine editor\n"
"POT-Creation-Date: \n"
-"PO-Revision-Date: 2020-07-21 13:41+0000\n"
-"Last-Translator: Filip Glura <mcmr.slendy@gmail.com>\n"
+"PO-Revision-Date: 2020-07-31 03:47+0000\n"
+"Last-Translator: Tomek <kobewi4e@gmail.com>\n"
"Language-Team: Polish <https://hosted.weblate.org/projects/godot-engine/"
"godot/pl/>\n"
"Language: pl\n"
@@ -10560,9 +10560,8 @@ msgid "Make node as Root"
msgstr "Zmień węzeł na Korzeń"
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Delete %d nodes and any children?"
-msgstr "Usunąć węzeł \"%s\" oraz jego węzły potomne?"
+msgstr "Usunąć %d węzłów i ich węzły potomne?"
#: editor/scene_tree_dock.cpp
msgid "Delete %d nodes?"
@@ -12266,6 +12265,9 @@ msgid ""
"Polygon-based shapes are not meant be used nor edited directly through the "
"CollisionShape2D node. Please use the CollisionPolygon2D node instead."
msgstr ""
+"Kształty oparte na wielokątach nie są przystosowane, by ich używać lub "
+"edytować bezpośrednio przez węzeł CollisionShape2D. Zamiast tego użyj węzła "
+"CollisionPolygon2D."
#: scene/2d/cpu_particles_2d.cpp
msgid ""
diff --git a/editor/translations/pt_BR.po b/editor/translations/pt_BR.po
index e2e19c99ce..6c035decd5 100644
--- a/editor/translations/pt_BR.po
+++ b/editor/translations/pt_BR.po
@@ -97,13 +97,14 @@
# Necco <necco@outlook.com>, 2020.
# Marcelo Silveira Hayden <mshayden.1998@gmail.com>, 2020.
# GUILHERME SOUZA REIS DE MELO LOPES <guilhermesrml@unipam.edu.br>, 2020.
+# Gabriela Araújo <Gabirin@outlook.com.br>, 2020.
+# Jairo Tuboi <tuboi.jairo@gmail.com>, 2020.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine editor\n"
"POT-Creation-Date: 2016-05-30\n"
-"PO-Revision-Date: 2020-07-26 15:41+0000\n"
-"Last-Translator: GUILHERME SOUZA REIS DE MELO LOPES <guilhermesrml@unipam."
-"edu.br>\n"
+"PO-Revision-Date: 2020-08-11 14:04+0000\n"
+"Last-Translator: Jairo Tuboi <tuboi.jairo@gmail.com>\n"
"Language-Team: Portuguese (Brazil) <https://hosted.weblate.org/projects/"
"godot-engine/godot/pt_BR/>\n"
"Language: pt_BR\n"
@@ -242,7 +243,7 @@ msgstr "Alterar Transição da Animação"
#: editor/animation_track_editor.cpp
msgid "Anim Change Transform"
-msgstr "Alterar Transformação da Anim"
+msgstr "Alterar Transformação da Animação"
#: editor/animation_track_editor.cpp
msgid "Anim Change Keyframe Value"
@@ -250,7 +251,7 @@ msgstr "Alterar Valor de Quadro-Chave da Anim"
#: editor/animation_track_editor.cpp
msgid "Anim Change Call"
-msgstr "Alterar Chamada da Anim"
+msgstr "Alterar Chamada da Animação"
#: editor/animation_track_editor.cpp
msgid "Anim Multi Change Keyframe Time"
@@ -1795,7 +1796,7 @@ msgstr "Novo"
#: editor/editor_feature_profile.cpp editor/editor_node.cpp
#: editor/project_manager.cpp
msgid "Import"
-msgstr "Importar"
+msgstr "Import"
#: editor/editor_feature_profile.cpp editor/project_export.cpp
msgid "Export"
@@ -3869,7 +3870,7 @@ msgstr "Criar Script"
#: editor/find_in_files.cpp editor/plugins/script_editor_plugin.cpp
msgid "Find in Files"
-msgstr "Localizar nos Arquivos"
+msgstr "Localizar nos arquivos"
#: editor/find_in_files.cpp
msgid "Find:"
@@ -4177,7 +4178,7 @@ msgstr "Alterações podem ser perdidas!"
#: editor/multi_node_edit.cpp
msgid "MultiNode Set"
-msgstr "Múltiplos Nodes definidos"
+msgstr "Conjunto de Multi-Nós"
#: editor/node_dock.cpp
msgid "Select a single node to edit its signals and groups."
@@ -6817,7 +6818,7 @@ msgstr "Localizar próximo"
#: editor/plugins/script_editor_plugin.cpp
#: editor/plugins/script_text_editor.cpp
msgid "Find Previous"
-msgstr "Encontrar Anterior"
+msgstr "Localizar anterior"
#: editor/plugins/script_editor_plugin.cpp
msgid "Filter scripts"
@@ -7080,7 +7081,7 @@ msgstr "Recortar"
#: editor/plugins/script_text_editor.cpp scene/gui/line_edit.cpp
#: scene/gui/text_edit.cpp
msgid "Select All"
-msgstr "Selecionar Tudo"
+msgstr "Selecionar tudo"
#: editor/plugins/script_text_editor.cpp
msgid "Delete Line"
@@ -10627,9 +10628,8 @@ msgid "Make node as Root"
msgstr "Tornar Raiz o Nó"
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Delete %d nodes and any children?"
-msgstr "Deletar nó \"%s\" e seus filhos?"
+msgstr "Deletar nó \"%d\" e seus filhos?"
#: editor/scene_tree_dock.cpp
msgid "Delete %d nodes?"
@@ -12332,6 +12332,8 @@ msgid ""
"Polygon-based shapes are not meant be used nor edited directly through the "
"CollisionShape2D node. Please use the CollisionPolygon2D node instead."
msgstr ""
+"Formas baseadas em polígonos não foram feitas para serem diretamente "
+"editadas no nó CollisionShape2D. Em vez disso use o nó CollisionPolygon2D."
#: scene/2d/cpu_particles_2d.cpp
msgid ""
diff --git a/editor/translations/pt_PT.po b/editor/translations/pt_PT.po
index ba1f5b31d5..b9d6c82ff0 100644
--- a/editor/translations/pt_PT.po
+++ b/editor/translations/pt_PT.po
@@ -20,7 +20,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Godot Engine editor\n"
"POT-Creation-Date: \n"
-"PO-Revision-Date: 2020-06-26 06:11+0000\n"
+"PO-Revision-Date: 2020-07-31 03:47+0000\n"
"Last-Translator: João Lopes <linux-man@hotmail.com>\n"
"Language-Team: Portuguese (Portugal) <https://hosted.weblate.org/projects/"
"godot-engine/godot/pt_PT/>\n"
@@ -10525,9 +10525,8 @@ msgid "Make node as Root"
msgstr "Tornar Nó Raiz"
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Delete %d nodes and any children?"
-msgstr "Apagar nó \"%s\" e filhos?"
+msgstr "Apagar %d nós e filhos?"
#: editor/scene_tree_dock.cpp
msgid "Delete %d nodes?"
@@ -12232,6 +12231,8 @@ msgid ""
"Polygon-based shapes are not meant be used nor edited directly through the "
"CollisionShape2D node. Please use the CollisionPolygon2D node instead."
msgstr ""
+"Formas baseadas em polígono não pretendem ser usadas ou editadas diretamente "
+"através do nó CollisionShape2D. Em vez disso use o nó CollisionPolygon2D."
#: scene/2d/cpu_particles_2d.cpp
msgid ""
diff --git a/editor/translations/ro.po b/editor/translations/ro.po
index ba5fbcf11a..29487392f8 100644
--- a/editor/translations/ro.po
+++ b/editor/translations/ro.po
@@ -3,7 +3,7 @@
# Copyright (c) 2014-2020 Godot Engine contributors (cf. AUTHORS.md).
# This file is distributed under the same license as the Godot source code.
# Calin Sopterean <csopterean@gmail.com>, 2018.
-# Filip <filipanton@tutanota.com>, 2018.
+# Filip <filipanton@tutanota.com>, 2018, 2020.
# Nitroretro <nitroretro@protonmail.com>, 2018.
# TigerxWood <TigerxWood@gmail.com>, 2018.
# Grigore Antoniuc <grisa181@gmail.com>, 2018.
@@ -17,8 +17,8 @@ msgid ""
msgstr ""
"Project-Id-Version: Godot Engine editor\n"
"POT-Creation-Date: \n"
-"PO-Revision-Date: 2020-07-19 01:27+0000\n"
-"Last-Translator: f0roots <f0rootss@gmail.com>\n"
+"PO-Revision-Date: 2020-08-11 14:04+0000\n"
+"Last-Translator: Filip <filipanton@tutanota.com>\n"
"Language-Team: Romanian <https://hosted.weblate.org/projects/godot-engine/"
"godot/ro/>\n"
"Language: ro\n"
@@ -1720,7 +1720,7 @@ msgstr "Nou"
#: editor/editor_feature_profile.cpp editor/editor_node.cpp
#: editor/project_manager.cpp
msgid "Import"
-msgstr "Importă"
+msgstr "Importare"
#: editor/editor_feature_profile.cpp editor/project_export.cpp
msgid "Export"
@@ -2142,23 +2142,23 @@ msgstr "Nod"
#: editor/editor_network_profiler.cpp
msgid "Incoming RPC"
-msgstr ""
+msgstr "Intrare RPC"
#: editor/editor_network_profiler.cpp
msgid "Incoming RSET"
-msgstr ""
+msgstr "Intrare RSET"
#: editor/editor_network_profiler.cpp
msgid "Outgoing RPC"
-msgstr ""
+msgstr "Ieșire RPC"
#: editor/editor_network_profiler.cpp
msgid "Outgoing RSET"
-msgstr ""
+msgstr "Ieșire RSET"
#: editor/editor_node.cpp editor/project_manager.cpp
msgid "New Window"
-msgstr "Fereastra Noua"
+msgstr "Fereastră Nouă"
#: editor/editor_node.cpp
msgid "Imported resources can't be saved."
@@ -2251,11 +2251,11 @@ msgstr ""
#: editor/editor_node.cpp editor/scene_tree_dock.cpp
msgid "Can't overwrite scene that is still open!"
-msgstr ""
+msgstr "Nu pot salva peste scena care este înca deschisă!"
#: editor/editor_node.cpp
msgid "Can't load MeshLibrary for merging!"
-msgstr "Imposibil de încărcat MeshLibrary pentru unire!"
+msgstr "Nu pot încarca MeshLibrary pentru combinare!"
#: editor/editor_node.cpp
msgid "Error saving MeshLibrary!"
@@ -2378,7 +2378,7 @@ msgstr "Resurse modificate %s salvate."
#: editor/editor_node.cpp
msgid "A root node is required to save the scene."
-msgstr ""
+msgstr "Un nod rădăcină este necesar pentru a salva scena."
#: editor/editor_node.cpp
msgid "Save Scene As..."
@@ -2406,11 +2406,11 @@ msgstr "Exportă Librăria de Mesh-uri"
#: editor/editor_node.cpp
msgid "This operation can't be done without a root node."
-msgstr "Această operațiune nu poate fi făcută fără un nod de bază."
+msgstr "Această operațiune nu poate fi făcută fără un nod rădăcină."
#: editor/editor_node.cpp
msgid "Export Tile Set"
-msgstr "Exportă Setul de Plăci"
+msgstr "Exportă Tile Setul"
#: editor/editor_node.cpp
msgid "This operation can't be done without a selected node."
@@ -2422,25 +2422,27 @@ msgstr "Scena curentă nu este salvată. Deschizi oricum?"
#: editor/editor_node.cpp
msgid "Can't reload a scene that was never saved."
-msgstr "Nu se poate reîncărca o scenă care nu a fost salvată niciodată."
+msgstr "Nu pot reîncărca o scenă care nu a fost salvată niciodată."
#: editor/editor_node.cpp
msgid "Reload Saved Scene"
-msgstr "Reîncărcare scenă salvată"
+msgstr "Reîncarcă scenă salvată"
#: editor/editor_node.cpp
msgid ""
"The current scene has unsaved changes.\n"
"Reload the saved scene anyway? This action cannot be undone."
msgstr ""
+"Scena actuală are modificări nesalvate.\n"
+"Reîncărcați scena salvată? Această acțiune nu poate fi anulată."
#: editor/editor_node.cpp
msgid "Quick Run Scene..."
-msgstr "Execută Rapid Scena..."
+msgstr "Rulează Rapid Scena..."
#: editor/editor_node.cpp
msgid "Quit"
-msgstr "ÃŽnchidere"
+msgstr "ÃŽnchide"
#: editor/editor_node.cpp
msgid "Exit the editor?"
@@ -2448,7 +2450,7 @@ msgstr "Ieși din editor?"
#: editor/editor_node.cpp
msgid "Open Project Manager?"
-msgstr "Deschizi Managerul de Proiect?"
+msgstr "Deschide Managerul de Proiect?"
#: editor/editor_node.cpp
msgid "Save & Quit"
@@ -2603,12 +2605,14 @@ msgid "Undo Close Tab"
msgstr "Anulare fila ÃŽnchidere"
#: editor/editor_node.cpp editor/plugins/script_editor_plugin.cpp
+#, fuzzy
msgid "Close Other Tabs"
-msgstr ""
+msgstr "Închideți Alte File"
#: editor/editor_node.cpp
+#, fuzzy
msgid "Close Tabs to the Right"
-msgstr ""
+msgstr "ÃŽnchidere file la dreapta"
#: editor/editor_node.cpp
msgid "Close All Tabs"
@@ -2738,20 +2742,23 @@ msgid "Version Control"
msgstr "Control versiune"
#: editor/editor_node.cpp editor/plugins/version_control_editor_plugin.cpp
+#, fuzzy
msgid "Set Up Version Control"
-msgstr ""
+msgstr "Configurați controlul versiunii"
#: editor/editor_node.cpp
+#, fuzzy
msgid "Shut Down Version Control"
-msgstr ""
+msgstr "ÃŽnchidere control versiune"
#: editor/editor_node.cpp
msgid "Export..."
msgstr "Export..."
#: editor/editor_node.cpp
+#, fuzzy
msgid "Install Android Build Template..."
-msgstr ""
+msgstr "Instalare șablon compilare Android..."
#: editor/editor_node.cpp
msgid "Open Project Data Folder"
@@ -2867,15 +2874,15 @@ msgstr "Editor"
#: editor/editor_node.cpp
msgid "Editor Settings..."
-msgstr "Setările editorului..."
+msgstr "Setări Editor..."
#: editor/editor_node.cpp
msgid "Editor Layout"
-msgstr "Schema Editorului"
+msgstr "Schema Editor"
#: editor/editor_node.cpp
msgid "Take Screenshot"
-msgstr "Salvează captură de ecran"
+msgstr "Captură de ecran"
#: editor/editor_node.cpp
msgid "Screenshots are stored in the Editor Data/Settings Folder."
@@ -2886,23 +2893,20 @@ msgid "Toggle Fullscreen"
msgstr "Comutare ecran complet"
#: editor/editor_node.cpp
-#, fuzzy
msgid "Toggle System Console"
-msgstr "Modul de Comutare"
+msgstr "Cumutează Consola de Sistem"
#: editor/editor_node.cpp
-#, fuzzy
msgid "Open Editor Data/Settings Folder"
-msgstr "Setări ale Editorului"
+msgstr "Deschide Dosarul De Date/Setări"
#: editor/editor_node.cpp
msgid "Open Editor Data Folder"
-msgstr ""
+msgstr "Deschidere dosarul de date editor"
#: editor/editor_node.cpp
-#, fuzzy
msgid "Open Editor Settings Folder"
-msgstr "Setări ale Editorului"
+msgstr "Deschide Dosarul de Setări Editor"
#: editor/editor_node.cpp
msgid "Manage Editor Features..."
@@ -2935,13 +2939,12 @@ msgid "Q&A"
msgstr "Întrebări și Răspunsuri"
#: editor/editor_node.cpp
-#, fuzzy
msgid "Report a Bug"
-msgstr "Reimportă"
+msgstr "Raportează o Eroare"
#: editor/editor_node.cpp
msgid "Send Docs Feedback"
-msgstr ""
+msgstr "Trimite Feedbackul Docs"
#: editor/editor_node.cpp editor/plugins/asset_library_editor_plugin.cpp
msgid "Community"
@@ -2960,8 +2963,9 @@ msgid "Play"
msgstr "Rulează"
#: editor/editor_node.cpp
+#, fuzzy
msgid "Pause the scene execution for debugging."
-msgstr ""
+msgstr "Întrerupeți executarea scenei pentru depanare."
#: editor/editor_node.cpp
msgid "Pause Scene"
@@ -3001,17 +3005,14 @@ msgid "Spins when the editor window redraws."
msgstr "Se rotește când fereastra editorului se redeschide."
#: editor/editor_node.cpp
-#, fuzzy
msgid "Update Continuously"
-msgstr "Continuu"
+msgstr "Actualizare continuă"
#: editor/editor_node.cpp
-#, fuzzy
msgid "Update When Changed"
-msgstr "Modificări ale Actualizării"
+msgstr "Actualizează Doar La Modificare"
#: editor/editor_node.cpp
-#, fuzzy
msgid "Hide Update Spinner"
msgstr "Dezactivează Cercul de Actualizare"
@@ -3024,9 +3025,8 @@ msgid "Inspector"
msgstr "Inspector"
#: editor/editor_node.cpp
-#, fuzzy
msgid "Expand Bottom Panel"
-msgstr "Extinde toate"
+msgstr "Extinde Panoul De Jos"
#: editor/editor_node.cpp
msgid "Output"
@@ -3039,11 +3039,11 @@ msgstr "Nu Salva"
#: editor/editor_node.cpp
msgid "Android build template is missing, please install relevant templates."
msgstr ""
+"Android construi șablon lipsește, vă rugăm să instalați șabloane relevante."
#: editor/editor_node.cpp
-#, fuzzy
msgid "Manage Templates"
-msgstr "Administrează Șabloanele de Export"
+msgstr "Gestionați șabloanele"
#: editor/editor_node.cpp
msgid ""
@@ -3069,9 +3069,8 @@ msgid "Import Templates From ZIP File"
msgstr "Importă Șabloane Dintr-o Arhivă ZIP"
#: editor/editor_node.cpp
-#, fuzzy
msgid "Template Package"
-msgstr "Exportă Managerul de Șabloane"
+msgstr "Pachetul cu șabloane"
#: editor/editor_node.cpp
msgid "Export Library"
@@ -3126,9 +3125,8 @@ msgid "Warning!"
msgstr ""
#: editor/editor_path.cpp
-#, fuzzy
msgid "No sub-resources found."
-msgstr "Nicio sursă de suprafață specificată."
+msgstr "Nu s-a găsit nici o sub-resursă."
#: editor/editor_plugin.cpp
msgid "Creating Mesh Previews"
@@ -3143,9 +3141,8 @@ msgid "Main Script:"
msgstr "Script principal:"
#: editor/editor_plugin_settings.cpp
-#, fuzzy
msgid "Edit Plugin"
-msgstr "Editează Poligon"
+msgstr "Editare Plugin"
#: editor/editor_plugin_settings.cpp
msgid "Installed Plugins:"
@@ -3269,9 +3266,8 @@ msgid "New Script"
msgstr ""
#: editor/editor_properties.cpp editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Extend Script"
-msgstr "Execută Scriptul"
+msgstr "Extinde Script"
#: editor/editor_properties.cpp editor/property_editor.cpp
msgid "New %s"
@@ -3317,14 +3313,12 @@ msgid "Remove Item"
msgstr ""
#: editor/editor_properties_array_dict.cpp
-#, fuzzy
msgid "New Key:"
-msgstr "Nume nou:"
+msgstr "Cheie Nouă:"
#: editor/editor_properties_array_dict.cpp
-#, fuzzy
msgid "New Value:"
-msgstr "Nume nou:"
+msgstr "Valoare Nouă:"
#: editor/editor_properties_array_dict.cpp
msgid "Add Key/Value Pair"
@@ -3384,7 +3378,6 @@ msgid "Import From Node:"
msgstr "Importă Din Nod:"
#: editor/export_template_manager.cpp
-#, fuzzy
msgid "Redownload"
msgstr "Descarcă din nou"
@@ -3426,9 +3419,8 @@ msgid "Can't open export templates zip."
msgstr "Nu se pot deschide șabloanele de export zip."
#: editor/export_template_manager.cpp
-#, fuzzy
msgid "Invalid version.txt format inside templates: %s."
-msgstr "Format nevalid versiune.txt în șabloane."
+msgstr "Formatul versiune.txt nevalid din interiorul șabloanelor: % s."
#: editor/export_template_manager.cpp
msgid "No version.txt found inside templates."
@@ -3495,9 +3487,8 @@ msgid "Download Complete."
msgstr "Descărcare Completă."
#: editor/export_template_manager.cpp
-#, fuzzy
msgid "Cannot remove temporary file:"
-msgstr "Nu se poate șterge:"
+msgstr "Nu pot sterge fișierul temporar:"
#: editor/export_template_manager.cpp
msgid ""
@@ -3556,9 +3547,8 @@ msgid "SSL Handshake Error"
msgstr "Eroare SSL Handshake"
#: editor/export_template_manager.cpp
-#, fuzzy
msgid "Uncompressing Android Build Sources"
-msgstr "Decomprimare Asset-uri"
+msgstr "Decomprimare Surse de compilare Android"
#: editor/export_template_manager.cpp
msgid "Current Version:"
@@ -3579,12 +3569,11 @@ msgstr "Elimină Șablon"
#: editor/export_template_manager.cpp
#, fuzzy
msgid "Select Template File"
-msgstr "Selectează fișierul șablon"
+msgstr "Selectare fișier șablon"
#: editor/export_template_manager.cpp
-#, fuzzy
msgid "Godot Export Templates"
-msgstr "Administrează Șabloanele de Export"
+msgstr "Șabloane de export Godot"
#: editor/export_template_manager.cpp
msgid "Export Template Manager"
@@ -3665,14 +3654,12 @@ msgid "New Inherited Scene"
msgstr "Nouă scenă moștenită"
#: editor/filesystem_dock.cpp
-#, fuzzy
msgid "Set As Main Scene"
-msgstr "Alege o Scenă Principală"
+msgstr "Setează ca scenă principală"
#: editor/filesystem_dock.cpp
-#, fuzzy
msgid "Open Scenes"
-msgstr "Deschide o scenă"
+msgstr "Deschide Scene"
#: editor/filesystem_dock.cpp
msgid "Instance"
@@ -3683,9 +3670,8 @@ msgid "Add to Favorites"
msgstr "Adauga la Favorite"
#: editor/filesystem_dock.cpp
-#, fuzzy
msgid "Remove from Favorites"
-msgstr "Elimină din Grup"
+msgstr "Eliminare din Preferințe"
#: editor/filesystem_dock.cpp
msgid "Edit Dependencies..."
@@ -3712,26 +3698,22 @@ msgid "New Scene..."
msgstr "Scenă nouă..."
#: editor/filesystem_dock.cpp editor/plugins/script_editor_plugin.cpp
-#, fuzzy
msgid "New Script..."
-msgstr "Deschide un script rapid..."
+msgstr "Script nou ..."
#: editor/filesystem_dock.cpp
-#, fuzzy
msgid "New Resource..."
-msgstr "Salvați Resursa Ca..."
+msgstr "Resursă nouă ..."
#: editor/filesystem_dock.cpp editor/plugins/visual_shader_editor_plugin.cpp
#: editor/script_editor_debugger.cpp
-#, fuzzy
msgid "Expand All"
-msgstr "Extinde toate"
+msgstr "Extinde Toate"
#: editor/filesystem_dock.cpp editor/plugins/visual_shader_editor_plugin.cpp
#: editor/script_editor_debugger.cpp
-#, fuzzy
msgid "Collapse All"
-msgstr "Restrânge toate"
+msgstr "Reduceți Toate"
#: editor/filesystem_dock.cpp
#: editor/plugins/animation_tree_player_editor_plugin.cpp
@@ -3741,28 +3723,24 @@ msgid "Rename"
msgstr "Redenumește"
#: editor/filesystem_dock.cpp
-#, fuzzy
msgid "Previous Folder/File"
-msgstr "Fila anterioară"
+msgstr "Folder/Fișier Anterior"
#: editor/filesystem_dock.cpp
-#, fuzzy
msgid "Next Folder/File"
-msgstr "Creați Director"
+msgstr "Folder/Fișier Următor"
#: editor/filesystem_dock.cpp
msgid "Re-Scan Filesystem"
msgstr "Rescanează Sistemul de Fișiere"
#: editor/filesystem_dock.cpp
-#, fuzzy
msgid "Toggle Split Mode"
-msgstr "Modul de Comutare"
+msgstr "Comută Modul Split"
#: editor/filesystem_dock.cpp
-#, fuzzy
msgid "Search files"
-msgstr "Căutare Clase"
+msgstr "Căută fișiere"
#: editor/filesystem_dock.cpp
msgid ""
@@ -3777,27 +3755,24 @@ msgid "Move"
msgstr "Mută"
#: editor/filesystem_dock.cpp
-#, fuzzy
msgid "There is already file or folder with the same name in this location."
-msgstr "Un fișier sau un director cu acest nume există deja."
+msgstr "Există deja un fișier sau un dosar cu același nume în această locație."
#: editor/filesystem_dock.cpp
msgid "Overwrite"
msgstr ""
#: editor/filesystem_dock.cpp
-#, fuzzy
msgid "Create Scene"
-msgstr "Salvează Scena"
+msgstr "Crează scenă"
#: editor/filesystem_dock.cpp editor/plugins/script_editor_plugin.cpp
msgid "Create Script"
msgstr ""
#: editor/find_in_files.cpp editor/plugins/script_editor_plugin.cpp
-#, fuzzy
msgid "Find in Files"
-msgstr "%d mai multe fișiere"
+msgstr "Caută în fișiere"
#: editor/find_in_files.cpp
msgid "Find:"
@@ -3839,19 +3814,16 @@ msgid "Replace: "
msgstr "Înlocuiți: "
#: editor/find_in_files.cpp
-#, fuzzy
msgid "Replace all (no undo)"
-msgstr "Înlocuiți Tot"
+msgstr "Înlocuiește tot (fără anulare)"
#: editor/find_in_files.cpp
-#, fuzzy
msgid "Searching..."
-msgstr "Se Salvează..."
+msgstr "Caut..."
#: editor/find_in_files.cpp
-#, fuzzy
msgid "Search complete"
-msgstr "Căutați Text"
+msgstr "Căutare completă"
#: editor/groups_editor.cpp
msgid "Add to Group"
@@ -3866,28 +3838,24 @@ msgid "Group name already exists."
msgstr "Numele grupului există deja."
#: editor/groups_editor.cpp
-#, fuzzy
msgid "Invalid group name."
-msgstr "Nume nevalid."
+msgstr "Nume de grup nevalid."
#: editor/groups_editor.cpp
-#, fuzzy
msgid "Rename Group"
-msgstr "Grupuri"
+msgstr "Renumește Grupul"
#: editor/groups_editor.cpp
-#, fuzzy
msgid "Delete Group"
-msgstr "Șterge Schema"
+msgstr "Șterge Grupul"
#: editor/groups_editor.cpp editor/node_dock.cpp
msgid "Groups"
msgstr "Grupuri"
#: editor/groups_editor.cpp
-#, fuzzy
msgid "Nodes Not in Group"
-msgstr "Adaugă în Grup"
+msgstr "Nodurile Nu Sunt în Grup"
#: editor/groups_editor.cpp editor/scene_tree_dock.cpp
#: editor/scene_tree_editor.cpp
@@ -3895,23 +3863,20 @@ msgid "Filter nodes"
msgstr ""
#: editor/groups_editor.cpp
-#, fuzzy
msgid "Nodes in Group"
-msgstr "Adaugă în Grup"
+msgstr "Noduri în Grup"
#: editor/groups_editor.cpp
msgid "Empty groups will be automatically removed."
msgstr ""
#: editor/groups_editor.cpp
-#, fuzzy
msgid "Group Editor"
-msgstr "Deschide Editorul de Scripturi"
+msgstr "Editor Grup"
#: editor/groups_editor.cpp
-#, fuzzy
msgid "Manage Groups"
-msgstr "Grupuri"
+msgstr "Gestionați grupuri"
#: editor/import/resource_importer_scene.cpp
msgid "Import as Single Scene"
@@ -4023,9 +3988,8 @@ msgid "Save Scenes, Re-Import, and Restart"
msgstr ""
#: editor/import_dock.cpp
-#, fuzzy
msgid "Changing the type of an imported file requires editor restart."
-msgstr "Schimbarea driver-ului video necesită restartarea editorului."
+msgstr "Modificarea tipului de fișier importat necesită repornirea editorului."
#: editor/import_dock.cpp
msgid ""
@@ -4037,14 +4001,12 @@ msgid "Failed to load resource."
msgstr "Încărcarea resursei a eșuat."
#: editor/inspector_dock.cpp
-#, fuzzy
msgid "Expand All Properties"
-msgstr "Extinde toate proprietăţile"
+msgstr "Extindeți toate proprietățile"
#: editor/inspector_dock.cpp
-#, fuzzy
msgid "Collapse All Properties"
-msgstr "Restrânge toate proprietăţile"
+msgstr "Reduceți toate proprietățile"
#: editor/inspector_dock.cpp editor/plugins/animation_player_editor_plugin.cpp
#: editor/plugins/script_editor_plugin.cpp
@@ -4116,19 +4078,16 @@ msgid "MultiNode Set"
msgstr "Set MultiNod"
#: editor/node_dock.cpp
-#, fuzzy
msgid "Select a single node to edit its signals and groups."
-msgstr "Selectează un Nod pentru a edita Semnalele și Grupurile."
+msgstr "Selectați un singur nod pentru a-i edita semnalele și grupurile."
#: editor/plugin_config_dialog.cpp
-#, fuzzy
msgid "Edit a Plugin"
-msgstr "Editează Poligon"
+msgstr "Editează un Plugin"
#: editor/plugin_config_dialog.cpp
-#, fuzzy
msgid "Create a Plugin"
-msgstr "Crează Poligon"
+msgstr "Crează un plugin"
#: editor/plugin_config_dialog.cpp
msgid "Plugin Name:"
@@ -4152,9 +4111,8 @@ msgstr ""
#: editor/plugins/abstract_polygon_2d_editor.cpp
#: editor/plugins/polygon_2d_editor_plugin.cpp
-#, fuzzy
msgid "Create Polygon"
-msgstr "Crează Poligon"
+msgstr "Crează poligon"
#: editor/plugins/abstract_polygon_2d_editor.cpp
#: editor/plugins/animation_blend_space_1d_editor.cpp
@@ -4174,12 +4132,10 @@ msgstr ""
#: editor/plugins/abstract_polygon_2d_editor.cpp
#: editor/plugins/animation_blend_space_1d_editor.cpp
-#, fuzzy
msgid "Erase points."
-msgstr "RMB: Șterge Punctul."
+msgstr "Șterge puncte."
#: editor/plugins/abstract_polygon_2d_editor.cpp
-#, fuzzy
msgid "Edit Polygon"
msgstr "Editează Poligon"
@@ -4188,14 +4144,12 @@ msgid "Insert Point"
msgstr "Inserează Punct"
#: editor/plugins/abstract_polygon_2d_editor.cpp
-#, fuzzy
msgid "Edit Polygon (Remove Point)"
-msgstr "Editează Poligon (Elimină Punct)"
+msgstr "Editează Poligon (Șterge puncte)"
#: editor/plugins/abstract_polygon_2d_editor.cpp
-#, fuzzy
msgid "Remove Polygon And Point"
-msgstr "Elimină Poligon Și Punct"
+msgstr "Șterge Poligon Și Punct"
#: editor/plugins/animation_blend_space_1d_editor.cpp
#: editor/plugins/animation_blend_space_2d_editor.cpp
@@ -4214,19 +4168,16 @@ msgstr "Încărca..."
#: editor/plugins/animation_blend_space_1d_editor.cpp
#: editor/plugins/animation_blend_space_2d_editor.cpp
-#, fuzzy
msgid "Move Node Point"
-msgstr "Deplasare punct"
+msgstr "Mută punct nod"
#: editor/plugins/animation_blend_space_1d_editor.cpp
-#, fuzzy
msgid "Change BlendSpace1D Limits"
-msgstr "Schimbă Timpul Amestecului"
+msgstr "Modifică limitele BlendSpace1D"
#: editor/plugins/animation_blend_space_1d_editor.cpp
-#, fuzzy
msgid "Change BlendSpace1D Labels"
-msgstr "Schimbă Timpul Amestecului"
+msgstr "Modifică etichetele BlendSpace1D"
#: editor/plugins/animation_blend_space_1d_editor.cpp
#: editor/plugins/animation_blend_space_2d_editor.cpp
@@ -9632,9 +9583,8 @@ msgid "Make Patch"
msgstr ""
#: editor/project_export.cpp
-#, fuzzy
msgid "Pack File"
-msgstr "Pachet Fișier"
+msgstr "Împachetează Fișierul"
#: editor/project_export.cpp
msgid "Features"
diff --git a/editor/translations/ru.po b/editor/translations/ru.po
index 16be6345f0..7b12d8195c 100644
--- a/editor/translations/ru.po
+++ b/editor/translations/ru.po
@@ -82,12 +82,15 @@
# Calamander <Calamander@yandex.ru>, 2020.
# Terminator <fresh-ter@yandex.com>, 2020.
# Anatoly Kuznetsov <muffinnorth@yandex.ru>, 2020.
+# kyanukovich <ianu0001@algonquinlive.com>, 2020.
+# Ron788 <ustinov200511@gmail.com>, 2020.
+# Daniel <dan.ef1999@gmail.com>, 2020.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine editor\n"
"POT-Creation-Date: \n"
-"PO-Revision-Date: 2020-07-23 02:44+0000\n"
-"Last-Translator: Anatoly Kuznetsov <muffinnorth@yandex.ru>\n"
+"PO-Revision-Date: 2020-08-01 11:14+0000\n"
+"Last-Translator: Daniel <dan.ef1999@gmail.com>\n"
"Language-Team: Russian <https://hosted.weblate.org/projects/godot-engine/"
"godot/ru/>\n"
"Language: ru\n"
@@ -7419,7 +7422,7 @@ msgstr "Свободный вид, право"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "Freelook Forward"
-msgstr "Freelook Forward"
+msgstr "Обзор вперёд"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "Freelook Backwards"
@@ -8172,11 +8175,11 @@ msgstr "Удалить выбранную текÑтуру из TileSet."
#: editor/plugins/tile_set_editor_plugin.cpp
msgid "Create from Scene"
-msgstr "Создать из Ñцены"
+msgstr "Создать из Сцены"
#: editor/plugins/tile_set_editor_plugin.cpp
msgid "Merge from Scene"
-msgstr "СлиÑние из Ñцены"
+msgstr "СлиÑние из Сцены"
#: editor/plugins/tile_set_editor_plugin.cpp
msgid "New Single Tile"
@@ -9578,7 +9581,7 @@ msgstr "Файл пакета"
#: editor/project_export.cpp
msgid "Features"
-msgstr "СвойÑтва"
+msgstr "ВозможноÑти"
#: editor/project_export.cpp
msgid "Custom (comma-separated):"
@@ -10599,9 +10602,8 @@ msgid "Make node as Root"
msgstr "Сделать узел корневым"
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Delete %d nodes and any children?"
-msgstr "Удалить узел «%s» и его дочерние Ñлементы?"
+msgstr "Удалить узел «%d» и его дочерние Ñлементы?"
#: editor/scene_tree_dock.cpp
msgid "Delete %d nodes?"
@@ -12300,6 +12302,9 @@ msgid ""
"Polygon-based shapes are not meant be used nor edited directly through the "
"CollisionShape2D node. Please use the CollisionPolygon2D node instead."
msgstr ""
+"Полигональные фигуры не предназначены Ð´Ð»Ñ Ð¸ÑÐ¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ Ð¸Ð»Ð¸ Ñ€ÐµÐ´Ð°ÐºÑ‚Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ "
+"непоÑредÑтвенно через узел \"CollisionShape2D\". ПожалуйÑта, иÑпользуйте "
+"вмеÑто Ñтого узел \"CollisionPolygon2D\" ."
#: scene/2d/cpu_particles_2d.cpp
msgid ""
diff --git a/editor/translations/uk.po b/editor/translations/uk.po
index edab41c9b6..f7386bf72d 100644
--- a/editor/translations/uk.po
+++ b/editor/translations/uk.po
@@ -14,11 +14,12 @@
# Богдан Матвіїв <bomtvv@gmail.com>, 2019.
# Tymofij Lytvynenko <till.svit@gmail.com>, 2020.
# Vladislav Glinsky <cl0ne@mithril.org.ua>, 2020.
+# Микола Тимошенко <9081@ukr.net>, 2020.
msgid ""
msgstr ""
"Project-Id-Version: Ukrainian (Godot Engine)\n"
"POT-Creation-Date: \n"
-"PO-Revision-Date: 2020-06-25 08:40+0000\n"
+"PO-Revision-Date: 2020-08-04 06:43+0000\n"
"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
"Language-Team: Ukrainian <https://hosted.weblate.org/projects/godot-engine/"
"godot/uk/>\n"
@@ -10564,9 +10565,8 @@ msgid "Make node as Root"
msgstr "Зробити вузол кореневим"
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Delete %d nodes and any children?"
-msgstr "Вилучити вузол «%s» Ñ– його дочірні запиÑи?"
+msgstr "Вилучити %d вузлів та уÑÑ– їхні дочірні запиÑи?"
#: editor/scene_tree_dock.cpp
msgid "Delete %d nodes?"
@@ -12015,7 +12015,7 @@ msgstr ""
#: platform/android/export/export.cpp
msgid "Invalid public key for APK expansion."
-msgstr "Ðеокректний відкритий ключ Ð´Ð»Ñ Ñ€Ð¾Ð·Ð³Ð¾Ñ€Ñ‚Ð°Ð½Ð½Ñ APK."
+msgstr "Ðекоректний відкритий ключ Ð´Ð»Ñ Ñ€Ð¾Ð·Ð³Ð¾Ñ€Ñ‚Ð°Ð½Ð½Ñ APK."
#: platform/android/export/export.cpp
msgid "Invalid package name:"
@@ -12280,6 +12280,9 @@ msgid ""
"Polygon-based shapes are not meant be used nor edited directly through the "
"CollisionShape2D node. Please use the CollisionPolygon2D node instead."
msgstr ""
+"ЗаÑновані на багатокутниках форми не призначено Ð´Ð»Ñ Ð²Ð¸ÐºÐ¾Ñ€Ð¸ÑÑ‚Ð°Ð½Ð½Ñ Ð°Ð±Ð¾ "
+"Ñ€ÐµÐ´Ð°Ð³ÑƒÐ²Ð°Ð½Ð½Ñ Ð· вузла CollisionShape2D. Будь лаÑка, ÑкориÑтайтеÑÑ Ð·Ð°Ð¼Ñ–ÑÑ‚ÑŒ "
+"нього вузлом CollisionPolygon2D."
#: scene/2d/cpu_particles_2d.cpp
msgid ""
diff --git a/editor/translations/vi.po b/editor/translations/vi.po
index 8db07bf4b0..bd52b850e4 100644
--- a/editor/translations/vi.po
+++ b/editor/translations/vi.po
@@ -13,12 +13,15 @@
# Peter Anh <peteranh3105@gmail.com>, 2019.
# DÅ©ng Äinh <dqdthanhthanh@gmail.com>, 2019.
# Steve Dang <bynguu@outlook.com>, 2020.
+# Harry Mitchell <minhyh0987@gmail.com>, 2020.
+# HSGamer <huynhqtienvtag@gmail.com>, 2020.
+# LetterC67 <hoangdeptoong@gmail.com>, 2020.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine editor\n"
"POT-Creation-Date: \n"
-"PO-Revision-Date: 2020-07-28 09:51+0000\n"
-"Last-Translator: Steve Dang <bynguu@outlook.com>\n"
+"PO-Revision-Date: 2020-08-11 14:04+0000\n"
+"Last-Translator: LetterC67 <hoangdeptoong@gmail.com>\n"
"Language-Team: Vietnamese <https://hosted.weblate.org/projects/godot-engine/"
"godot/vi/>\n"
"Language: vi\n"
@@ -73,31 +76,31 @@ msgstr "Khi cuá»™c gá»i đến '%s':"
#: core/ustring.cpp
msgid "B"
-msgstr ""
+msgstr "B"
#: core/ustring.cpp
msgid "KiB"
-msgstr ""
+msgstr "KiB"
#: core/ustring.cpp
msgid "MiB"
-msgstr ""
+msgstr "MiB"
#: core/ustring.cpp
msgid "GiB"
-msgstr ""
+msgstr "GiB"
#: core/ustring.cpp
msgid "TiB"
-msgstr ""
+msgstr "TiB"
#: core/ustring.cpp
msgid "PiB"
-msgstr ""
+msgstr "PiB"
#: core/ustring.cpp
msgid "EiB"
-msgstr ""
+msgstr "EiB"
#: editor/animation_bezier_editor.cpp
msgid "Free"
@@ -121,7 +124,7 @@ msgstr "Giá trị:"
#: editor/animation_bezier_editor.cpp
msgid "Insert Key Here"
-msgstr "Thêm Khoá Tại Äây"
+msgstr "Chèn Khóa Tại Äây"
#: editor/animation_bezier_editor.cpp
msgid "Duplicate Selected Key(s)"
@@ -137,23 +140,23 @@ msgstr "Thêm điểm Bezier"
#: editor/animation_bezier_editor.cpp
msgid "Move Bezier Points"
-msgstr "Di chuyển điểm Bezier"
+msgstr "Di chuyển các điểm Bezier"
#: editor/animation_bezier_editor.cpp editor/animation_track_editor.cpp
msgid "Anim Duplicate Keys"
-msgstr "Nhân đôi Các Key của Animation"
+msgstr "Nhân đôi các Animation Key"
#: editor/animation_bezier_editor.cpp editor/animation_track_editor.cpp
msgid "Anim Delete Keys"
-msgstr "Xóa phím Anim"
+msgstr "Xóa các Animation Key"
#: editor/animation_track_editor.cpp
msgid "Anim Change Keyframe Time"
-msgstr "Äổi thá»i gian khung hình"
+msgstr "Äổi thá»i gian khung hình Animation"
#: editor/animation_track_editor.cpp
msgid "Anim Change Transition"
-msgstr "Äổi Transition Animation"
+msgstr "Äổi Animation Chuyển tiếp"
#: editor/animation_track_editor.cpp
msgid "Anim Change Transform"
@@ -161,7 +164,7 @@ msgstr "Äổi Transform Animation"
#: editor/animation_track_editor.cpp
msgid "Anim Change Keyframe Value"
-msgstr "Äổi giá trị khung hình"
+msgstr "Äổi giá trị khung hình Animation"
#: editor/animation_track_editor.cpp
msgid "Anim Change Call"
@@ -12597,7 +12600,7 @@ msgstr ""
#: scene/gui/color_picker.cpp
msgid "Pick a color from the editor window."
-msgstr ""
+msgstr "Chá»n má»™t màu từ cá»­a sổ biên tập"
#: scene/gui/color_picker.cpp
msgid "HSV"
diff --git a/editor/translations/zh_CN.po b/editor/translations/zh_CN.po
index e344be12e9..f35da2476c 100644
--- a/editor/translations/zh_CN.po
+++ b/editor/translations/zh_CN.po
@@ -68,12 +68,14 @@
# æ— åŒæµ <1257678024@qq.com>, 2020.
# ZhangXinyu <zhang2xinyu@outlook.com>, 2020.
# Silence Tai <silence.m@hotmail.com>, 2020.
+# MintSoda <lionlxh@qq.com>, 2020.
+# Gardner Belgrade <hapenia@sina.com>, 2020.
msgid ""
msgstr ""
"Project-Id-Version: Chinese (Simplified) (Godot Engine)\n"
"POT-Creation-Date: 2018-01-20 12:15+0200\n"
-"PO-Revision-Date: 2020-07-26 15:41+0000\n"
-"Last-Translator: yzt <834950797@qq.com>\n"
+"PO-Revision-Date: 2020-08-11 14:04+0000\n"
+"Last-Translator: Gardner Belgrade <hapenia@sina.com>\n"
"Language-Team: Chinese (Simplified) <https://hosted.weblate.org/projects/"
"godot-engine/godot/zh_Hans/>\n"
"Language: zh_CN\n"
@@ -100,7 +102,7 @@ msgstr "没有足够的字节æ¥è§£ç ï¼Œæˆ–æ ¼å¼æ— æ•ˆã€‚"
#: core/math/expression.cpp
msgid "Invalid input %i (not passed) in expression"
-msgstr "表达å¼ä¸­åŒ…å«å¾—%i无效(未传递)"
+msgstr "表达å¼ä¸­åŒ…å«çš„%i无效(未传递)"
#: core/math/expression.cpp
msgid "self can't be used because instance is null (not passed)"
@@ -3756,7 +3758,7 @@ msgstr "创建脚本"
#: editor/find_in_files.cpp editor/plugins/script_editor_plugin.cpp
msgid "Find in Files"
-msgstr "在文件中查找"
+msgstr "跨文件查找"
#: editor/find_in_files.cpp
msgid "Find:"
@@ -5317,7 +5319,7 @@ msgstr "é‡ç½®ç¼©æ”¾"
#: editor/plugins/canvas_item_editor_plugin.cpp
#: editor/plugins/spatial_editor_plugin.cpp
msgid "Select Mode"
-msgstr "选择模å¼"
+msgstr "鼠标模å¼"
#: editor/plugins/canvas_item_editor_plugin.cpp
msgid "Drag: Rotate"
@@ -10399,7 +10401,6 @@ msgid "Make node as Root"
msgstr "将节点设置为根节点"
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Delete %d nodes and any children?"
msgstr "是å¦åˆ é™¤èŠ‚点“%sâ€åŠå…¶å­èŠ‚点?"
@@ -12048,6 +12049,8 @@ msgid ""
"Polygon-based shapes are not meant be used nor edited directly through the "
"CollisionShape2D node. Please use the CollisionPolygon2D node instead."
msgstr ""
+"基于多边形的形状ä¸åº”该被 CollisionShape2D 节点直接使用或编辑。请使用 "
+"CollisionPolygon2D 节点。"
#: scene/2d/cpu_particles_2d.cpp
msgid ""
@@ -12258,7 +12261,7 @@ msgstr "å¹³é¢å½¢çŠ¶æ— æ³•æ­£å¸¸å·¥ä½œï¼Œæœªæ¥ç‰ˆæœ¬å°†è¢«åˆ é™¤ã€‚请勿使用
#: scene/3d/collision_shape.cpp
msgid ""
"ConcavePolygonShape doesn't support RigidBody in another mode than static."
-msgstr "ConcavePolygonShape仅支æŒé™æ€RigidBody。"
+msgstr "ConcavePolygonShape åªæ”¯æŒé™æ€æ¨¡å¼ä¸‹çš„ RigidBody。"
#: scene/3d/cpu_particles.cpp
msgid "Nothing is visible because no mesh has been assigned."
diff --git a/editor/translations/zh_TW.po b/editor/translations/zh_TW.po
index 73b99ee161..51efdfd2b8 100644
--- a/editor/translations/zh_TW.po
+++ b/editor/translations/zh_TW.po
@@ -24,12 +24,13 @@
# Allen H. <w84miracle@gmail.com>, 2020.
# BinotaLIU <binota@protonmail.ch>, 2020.
# BinotaLIU <me@binota.org>, 2020.
+# MintSoda <lionlxh@qq.com>, 2020.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine editor\n"
"POT-Creation-Date: \n"
-"PO-Revision-Date: 2020-07-07 15:56+0000\n"
-"Last-Translator: BinotaLIU <me@binota.org>\n"
+"PO-Revision-Date: 2020-07-31 03:47+0000\n"
+"Last-Translator: MintSoda <lionlxh@qq.com>\n"
"Language-Team: Chinese (Traditional) <https://hosted.weblate.org/projects/"
"godot-engine/godot/zh_Hant/>\n"
"Language: zh_TW\n"
@@ -10361,7 +10362,6 @@ msgid "Make node as Root"
msgstr "將節點設為根節點"
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Delete %d nodes and any children?"
msgstr "確定è¦åˆªé™¤ç¯€é»žã€Œ%sã€èˆ‡å…¶å­ç¯€é»žå—Žï¼Ÿ"
@@ -12017,6 +12017,8 @@ msgid ""
"Polygon-based shapes are not meant be used nor edited directly through the "
"CollisionShape2D node. Please use the CollisionPolygon2D node instead."
msgstr ""
+"基於多邊形的形狀ä¸æ‡‰è©²è¢« CollisionShape2D 節點直接使用或編輯。請使用 "
+"CollisionPolygon2D 節點。"
#: scene/2d/cpu_particles_2d.cpp
msgid ""
diff --git a/gles_builders.py b/gles_builders.py
deleted file mode 100644
index eca42236ab..0000000000
--- a/gles_builders.py
+++ /dev/null
@@ -1,825 +0,0 @@
-"""Functions used to generate source files during build time
-
-All such functions are invoked in a subprocess on Windows to prevent build flakiness.
-
-"""
-from platform_methods import subprocess_main
-
-
-class LegacyGLHeaderStruct:
- def __init__(self):
- self.vertex_lines = []
- self.fragment_lines = []
- self.uniforms = []
- self.attributes = []
- self.feedbacks = []
- self.fbos = []
- self.conditionals = []
- self.enums = {}
- self.texunits = []
- self.texunit_names = []
- self.ubos = []
- self.ubo_names = []
-
- self.vertex_included_files = []
- self.fragment_included_files = []
-
- self.reading = ""
- self.line_offset = 0
- self.vertex_offset = 0
- self.fragment_offset = 0
-
-
-def include_file_in_legacygl_header(filename, header_data, depth):
- fs = open(filename, "r")
- line = fs.readline()
-
- while line:
-
- if line.find("#[vertex]") != -1:
- header_data.reading = "vertex"
- line = fs.readline()
- header_data.line_offset += 1
- header_data.vertex_offset = header_data.line_offset
- continue
-
- if line.find("#[fragment]") != -1:
- header_data.reading = "fragment"
- line = fs.readline()
- header_data.line_offset += 1
- header_data.fragment_offset = header_data.line_offset
- continue
-
- while line.find("#include ") != -1:
- includeline = line.replace("#include ", "").strip()[1:-1]
-
- import os.path
-
- included_file = os.path.relpath(os.path.dirname(filename) + "/" + includeline)
- if not included_file in header_data.vertex_included_files and header_data.reading == "vertex":
- header_data.vertex_included_files += [included_file]
- if include_file_in_legacygl_header(included_file, header_data, depth + 1) is None:
- print("Error in file '" + filename + "': #include " + includeline + "could not be found!")
- elif not included_file in header_data.fragment_included_files and header_data.reading == "fragment":
- header_data.fragment_included_files += [included_file]
- if include_file_in_legacygl_header(included_file, header_data, depth + 1) is None:
- print("Error in file '" + filename + "': #include " + includeline + "could not be found!")
-
- line = fs.readline()
-
- if line.find("#ifdef ") != -1:
- if line.find("#ifdef ") != -1:
- ifdefline = line.replace("#ifdef ", "").strip()
-
- if line.find("_EN_") != -1:
- enumbase = ifdefline[: ifdefline.find("_EN_")]
- ifdefline = ifdefline.replace("_EN_", "_")
- line = line.replace("_EN_", "_")
- if enumbase not in header_data.enums:
- header_data.enums[enumbase] = []
- if ifdefline not in header_data.enums[enumbase]:
- header_data.enums[enumbase].append(ifdefline)
-
- elif not ifdefline in header_data.conditionals:
- header_data.conditionals += [ifdefline]
-
- if line.find("uniform") != -1 and line.lower().find("texunit:") != -1:
- # texture unit
- texunitstr = line[line.find(":") + 1 :].strip()
- if texunitstr == "auto":
- texunit = "-1"
- else:
- texunit = str(int(texunitstr))
- uline = line[: line.lower().find("//")]
- uline = uline.replace("uniform", "")
- uline = uline.replace("highp", "")
- uline = uline.replace(";", "")
- lines = uline.split(",")
- for x in lines:
-
- x = x.strip()
- x = x[x.rfind(" ") + 1 :]
- if x.find("[") != -1:
- # unfiorm array
- x = x[: x.find("[")]
-
- if not x in header_data.texunit_names:
- header_data.texunits += [(x, texunit)]
- header_data.texunit_names += [x]
-
- elif line.find("uniform") != -1 and line.lower().find("ubo:") != -1:
- # uniform buffer object
- ubostr = line[line.find(":") + 1 :].strip()
- ubo = str(int(ubostr))
- uline = line[: line.lower().find("//")]
- uline = uline[uline.find("uniform") + len("uniform") :]
- uline = uline.replace("highp", "")
- uline = uline.replace(";", "")
- uline = uline.replace("{", "").strip()
- lines = uline.split(",")
- for x in lines:
-
- x = x.strip()
- x = x[x.rfind(" ") + 1 :]
- if x.find("[") != -1:
- # unfiorm array
- x = x[: x.find("[")]
-
- if not x in header_data.ubo_names:
- header_data.ubos += [(x, ubo)]
- header_data.ubo_names += [x]
-
- elif line.find("uniform") != -1 and line.find("{") == -1 and line.find(";") != -1:
- uline = line.replace("uniform", "")
- uline = uline.replace(";", "")
- lines = uline.split(",")
- for x in lines:
-
- x = x.strip()
- x = x[x.rfind(" ") + 1 :]
- if x.find("[") != -1:
- # unfiorm array
- x = x[: x.find("[")]
-
- if not x in header_data.uniforms:
- header_data.uniforms += [x]
-
- if line.strip().find("attribute ") == 0 and line.find("attrib:") != -1:
- uline = line.replace("in ", "")
- uline = uline.replace("attribute ", "")
- uline = uline.replace("highp ", "")
- uline = uline.replace(";", "")
- uline = uline[uline.find(" ") :].strip()
-
- if uline.find("//") != -1:
- name, bind = uline.split("//")
- if bind.find("attrib:") != -1:
- name = name.strip()
- bind = bind.replace("attrib:", "").strip()
- header_data.attributes += [(name, bind)]
-
- if line.strip().find("out ") == 0 and line.find("tfb:") != -1:
- uline = line.replace("out ", "")
- uline = uline.replace("highp ", "")
- uline = uline.replace(";", "")
- uline = uline[uline.find(" ") :].strip()
-
- if uline.find("//") != -1:
- name, bind = uline.split("//")
- if bind.find("tfb:") != -1:
- name = name.strip()
- bind = bind.replace("tfb:", "").strip()
- header_data.feedbacks += [(name, bind)]
-
- line = line.replace("\r", "")
- line = line.replace("\n", "")
-
- if header_data.reading == "vertex":
- header_data.vertex_lines += [line]
- if header_data.reading == "fragment":
- header_data.fragment_lines += [line]
-
- line = fs.readline()
- header_data.line_offset += 1
-
- fs.close()
-
- return header_data
-
-
-def build_legacygl_header(filename, include, class_suffix, output_attribs, gles2=False):
- header_data = LegacyGLHeaderStruct()
- include_file_in_legacygl_header(filename, header_data, 0)
-
- out_file = filename + ".gen.h"
- fd = open(out_file, "w")
-
- enum_constants = []
-
- fd.write("/* WARNING, THIS FILE WAS GENERATED, DO NOT EDIT */\n")
-
- out_file_base = out_file
- out_file_base = out_file_base[out_file_base.rfind("/") + 1 :]
- out_file_base = out_file_base[out_file_base.rfind("\\") + 1 :]
- out_file_ifdef = out_file_base.replace(".", "_").upper()
- fd.write("#ifndef " + out_file_ifdef + class_suffix + "_120\n")
- fd.write("#define " + out_file_ifdef + class_suffix + "_120\n")
-
- out_file_class = (
- out_file_base.replace(".glsl.gen.h", "").title().replace("_", "").replace(".", "") + "Shader" + class_suffix
- )
- fd.write("\n\n")
- fd.write('#include "' + include + '"\n\n\n')
- fd.write("class " + out_file_class + " : public Shader" + class_suffix + " {\n\n")
- fd.write('\t virtual String get_shader_name() const { return "' + out_file_class + '"; }\n')
-
- fd.write("public:\n\n")
-
- if header_data.conditionals:
- fd.write("\tenum Conditionals {\n")
- for x in header_data.conditionals:
- fd.write("\t\t" + x.upper() + ",\n")
- fd.write("\t};\n\n")
-
- if header_data.uniforms:
- fd.write("\tenum Uniforms {\n")
- for x in header_data.uniforms:
- fd.write("\t\t" + x.upper() + ",\n")
- fd.write("\t};\n\n")
-
- fd.write("\t_FORCE_INLINE_ int get_uniform(Uniforms p_uniform) const { return _get_uniform(p_uniform); }\n\n")
- if header_data.conditionals:
- fd.write(
- "\t_FORCE_INLINE_ void set_conditional(Conditionals p_conditional,bool p_enable) {"
- " _set_conditional(p_conditional,p_enable); }\n\n"
- )
- fd.write("\t#ifdef DEBUG_ENABLED\n ")
- fd.write(
- "\t#define _FU if (get_uniform(p_uniform)<0) return; if (!is_version_valid()) return; ERR_FAIL_COND("
- " get_active()!=this ); \n\n "
- )
- fd.write("\t#else\n ")
- fd.write("\t#define _FU if (get_uniform(p_uniform)<0) return; \n\n ")
- fd.write("\t#endif\n")
- fd.write(
- "\t_FORCE_INLINE_ void set_uniform(Uniforms p_uniform, float p_value) { _FU"
- " glUniform1f(get_uniform(p_uniform),p_value); }\n\n"
- )
- fd.write(
- "\t_FORCE_INLINE_ void set_uniform(Uniforms p_uniform, double p_value) { _FU"
- " glUniform1f(get_uniform(p_uniform),p_value); }\n\n"
- )
- fd.write(
- "\t_FORCE_INLINE_ void set_uniform(Uniforms p_uniform, uint8_t p_value) { _FU"
- " glUniform1i(get_uniform(p_uniform),p_value); }\n\n"
- )
- fd.write(
- "\t_FORCE_INLINE_ void set_uniform(Uniforms p_uniform, int8_t p_value) { _FU"
- " glUniform1i(get_uniform(p_uniform),p_value); }\n\n"
- )
- fd.write(
- "\t_FORCE_INLINE_ void set_uniform(Uniforms p_uniform, uint16_t p_value) { _FU"
- " glUniform1i(get_uniform(p_uniform),p_value); }\n\n"
- )
- fd.write(
- "\t_FORCE_INLINE_ void set_uniform(Uniforms p_uniform, int16_t p_value) { _FU"
- " glUniform1i(get_uniform(p_uniform),p_value); }\n\n"
- )
- fd.write(
- "\t_FORCE_INLINE_ void set_uniform(Uniforms p_uniform, uint32_t p_value) { _FU"
- " glUniform1i(get_uniform(p_uniform),p_value); }\n\n"
- )
- fd.write(
- "\t_FORCE_INLINE_ void set_uniform(Uniforms p_uniform, int32_t p_value) { _FU"
- " glUniform1i(get_uniform(p_uniform),p_value); }\n\n"
- )
- fd.write(
- "\t_FORCE_INLINE_ void set_uniform(Uniforms p_uniform, const Color& p_color) { _FU GLfloat"
- " col[4]={p_color.r,p_color.g,p_color.b,p_color.a}; glUniform4fv(get_uniform(p_uniform),1,col); }\n\n"
- )
- fd.write(
- "\t_FORCE_INLINE_ void set_uniform(Uniforms p_uniform, const Vector2& p_vec2) { _FU GLfloat"
- " vec2[2]={p_vec2.x,p_vec2.y}; glUniform2fv(get_uniform(p_uniform),1,vec2); }\n\n"
- )
- fd.write(
- "\t_FORCE_INLINE_ void set_uniform(Uniforms p_uniform, const Size2i& p_vec2) { _FU GLint"
- " vec2[2]={p_vec2.x,p_vec2.y}; glUniform2iv(get_uniform(p_uniform),1,vec2); }\n\n"
- )
- fd.write(
- "\t_FORCE_INLINE_ void set_uniform(Uniforms p_uniform, const Vector3& p_vec3) { _FU GLfloat"
- " vec3[3]={p_vec3.x,p_vec3.y,p_vec3.z}; glUniform3fv(get_uniform(p_uniform),1,vec3); }\n\n"
- )
- fd.write(
- "\t_FORCE_INLINE_ void set_uniform(Uniforms p_uniform, float p_a, float p_b) { _FU"
- " glUniform2f(get_uniform(p_uniform),p_a,p_b); }\n\n"
- )
- fd.write(
- "\t_FORCE_INLINE_ void set_uniform(Uniforms p_uniform, float p_a, float p_b, float p_c) { _FU"
- " glUniform3f(get_uniform(p_uniform),p_a,p_b,p_c); }\n\n"
- )
- fd.write(
- "\t_FORCE_INLINE_ void set_uniform(Uniforms p_uniform, float p_a, float p_b, float p_c, float p_d) { _FU"
- " glUniform4f(get_uniform(p_uniform),p_a,p_b,p_c,p_d); }\n\n"
- )
-
- fd.write(
- """\t_FORCE_INLINE_ void set_uniform(Uniforms p_uniform, const Transform& p_transform) { _FU
-
- const Transform &tr = p_transform;
-
- GLfloat matrix[16]={ /* build a 16x16 matrix */
- tr.basis.elements[0][0],
- tr.basis.elements[1][0],
- tr.basis.elements[2][0],
- 0,
- tr.basis.elements[0][1],
- tr.basis.elements[1][1],
- tr.basis.elements[2][1],
- 0,
- tr.basis.elements[0][2],
- tr.basis.elements[1][2],
- tr.basis.elements[2][2],
- 0,
- tr.origin.x,
- tr.origin.y,
- tr.origin.z,
- 1
- };
-
- glUniformMatrix4fv(get_uniform(p_uniform),1,false,matrix);
- }
-
- """
- )
-
- fd.write(
- """_FORCE_INLINE_ void set_uniform(Uniforms p_uniform, const Transform2D& p_transform) { _FU
-
- const Transform2D &tr = p_transform;
-
- GLfloat matrix[16]={ /* build a 16x16 matrix */
- tr.elements[0][0],
- tr.elements[0][1],
- 0,
- 0,
- tr.elements[1][0],
- tr.elements[1][1],
- 0,
- 0,
- 0,
- 0,
- 1,
- 0,
- tr.elements[2][0],
- tr.elements[2][1],
- 0,
- 1
- };
-
- glUniformMatrix4fv(get_uniform(p_uniform),1,false,matrix);
- }
-
- """
- )
-
- fd.write(
- """_FORCE_INLINE_ void set_uniform(Uniforms p_uniform, const CameraMatrix& p_matrix) { _FU
-
- GLfloat matrix[16];
-
- for (int i=0;i<4;i++) {
- for (int j=0;j<4;j++) {
-
- matrix[i*4+j]=p_matrix.matrix[i][j];
- }
- }
-
- glUniformMatrix4fv(get_uniform(p_uniform),1,false,matrix);
- }
-
- """
- )
-
- fd.write("\n\n#undef _FU\n\n\n")
-
- fd.write("\tvirtual void init() {\n\n")
-
- enum_value_count = 0
-
- if header_data.enums:
-
- fd.write("\t\t//Written using math, given nonstandarity of 64 bits integer constants..\n")
- fd.write("\t\tstatic const Enum _enums[]={\n")
-
- bitofs = len(header_data.conditionals)
- enum_vals = []
-
- for xv in header_data.enums:
- x = header_data.enums[xv]
- bits = 1
- amt = len(x)
- while 2 ** bits < amt:
- bits += 1
- strs = "{"
- for i in range(amt):
- strs += '"#define ' + x[i] + '\\n",'
-
- c = {}
- c["set_mask"] = "uint64_t(" + str(i) + ")<<" + str(bitofs)
- c["clear_mask"] = (
- "((uint64_t(1)<<40)-1) ^ (((uint64_t(1)<<" + str(bits) + ") - 1)<<" + str(bitofs) + ")"
- )
- enum_vals.append(c)
- enum_constants.append(x[i])
-
- strs += "nullptr}"
-
- fd.write(
- "\t\t\t{(uint64_t(1<<" + str(bits) + ")-1)<<" + str(bitofs) + "," + str(bitofs) + "," + strs + "},\n"
- )
- bitofs += bits
-
- fd.write("\t\t};\n\n")
-
- fd.write("\t\tstatic const EnumValue _enum_values[]={\n")
-
- enum_value_count = len(enum_vals)
- for x in enum_vals:
- fd.write("\t\t\t{" + x["set_mask"] + "," + x["clear_mask"] + "},\n")
-
- fd.write("\t\t};\n\n")
-
- conditionals_found = []
- if header_data.conditionals:
-
- fd.write("\t\tstatic const char* _conditional_strings[]={\n")
- if header_data.conditionals:
- for x in header_data.conditionals:
- fd.write('\t\t\t"#define ' + x + '\\n",\n')
- conditionals_found.append(x)
- fd.write("\t\t};\n\n")
- else:
- fd.write("\t\tstatic const char **_conditional_strings=nullptr;\n")
-
- if header_data.uniforms:
-
- fd.write("\t\tstatic const char* _uniform_strings[]={\n")
- if header_data.uniforms:
- for x in header_data.uniforms:
- fd.write('\t\t\t"' + x + '",\n')
- fd.write("\t\t};\n\n")
- else:
- fd.write("\t\tstatic const char **_uniform_strings=nullptr;\n")
-
- if output_attribs:
- if header_data.attributes:
-
- fd.write("\t\tstatic AttributePair _attribute_pairs[]={\n")
- for x in header_data.attributes:
- fd.write('\t\t\t{"' + x[0] + '",' + x[1] + "},\n")
- fd.write("\t\t};\n\n")
- else:
- fd.write("\t\tstatic AttributePair *_attribute_pairs=nullptr;\n")
-
- feedback_count = 0
-
- if not gles2 and len(header_data.feedbacks):
-
- fd.write("\t\tstatic const Feedback _feedbacks[]={\n")
- for x in header_data.feedbacks:
- name = x[0]
- cond = x[1]
- if cond in conditionals_found:
- fd.write('\t\t\t{"' + name + '",' + str(conditionals_found.index(cond)) + "},\n")
- else:
- fd.write('\t\t\t{"' + name + '",-1},\n')
-
- feedback_count += 1
-
- fd.write("\t\t};\n\n")
- else:
- if gles2:
- pass
- else:
- fd.write("\t\tstatic const Feedback* _feedbacks=nullptr;\n")
-
- if header_data.texunits:
- fd.write("\t\tstatic TexUnitPair _texunit_pairs[]={\n")
- for x in header_data.texunits:
- fd.write('\t\t\t{"' + x[0] + '",' + x[1] + "},\n")
- fd.write("\t\t};\n\n")
- else:
- fd.write("\t\tstatic TexUnitPair *_texunit_pairs=nullptr;\n")
-
- if not gles2 and header_data.ubos:
- fd.write("\t\tstatic UBOPair _ubo_pairs[]={\n")
- for x in header_data.ubos:
- fd.write('\t\t\t{"' + x[0] + '",' + x[1] + "},\n")
- fd.write("\t\t};\n\n")
- else:
- if gles2:
- pass
- else:
- fd.write("\t\tstatic UBOPair *_ubo_pairs=nullptr;\n")
-
- fd.write("\t\tstatic const char _vertex_code[]={\n")
- for x in header_data.vertex_lines:
- for c in x:
- fd.write(str(ord(c)) + ",")
-
- fd.write(str(ord("\n")) + ",")
- fd.write("\t\t0};\n\n")
-
- fd.write("\t\tstatic const int _vertex_code_start=" + str(header_data.vertex_offset) + ";\n")
-
- fd.write("\t\tstatic const char _fragment_code[]={\n")
- for x in header_data.fragment_lines:
- for c in x:
- fd.write(str(ord(c)) + ",")
-
- fd.write(str(ord("\n")) + ",")
- fd.write("\t\t0};\n\n")
-
- fd.write("\t\tstatic const int _fragment_code_start=" + str(header_data.fragment_offset) + ";\n")
-
- if output_attribs:
- if gles2:
- fd.write(
- "\t\tsetup(_conditional_strings,"
- + str(len(header_data.conditionals))
- + ",_uniform_strings,"
- + str(len(header_data.uniforms))
- + ",_attribute_pairs,"
- + str(len(header_data.attributes))
- + ", _texunit_pairs,"
- + str(len(header_data.texunits))
- + ",_vertex_code,_fragment_code,_vertex_code_start,_fragment_code_start);\n"
- )
- else:
- fd.write(
- "\t\tsetup(_conditional_strings,"
- + str(len(header_data.conditionals))
- + ",_uniform_strings,"
- + str(len(header_data.uniforms))
- + ",_attribute_pairs,"
- + str(len(header_data.attributes))
- + ", _texunit_pairs,"
- + str(len(header_data.texunits))
- + ",_ubo_pairs,"
- + str(len(header_data.ubos))
- + ",_feedbacks,"
- + str(feedback_count)
- + ",_vertex_code,_fragment_code,_vertex_code_start,_fragment_code_start);\n"
- )
- else:
- if gles2:
- fd.write(
- "\t\tsetup(_conditional_strings,"
- + str(len(header_data.conditionals))
- + ",_uniform_strings,"
- + str(len(header_data.uniforms))
- + ",_texunit_pairs,"
- + str(len(header_data.texunits))
- + ",_enums,"
- + str(len(header_data.enums))
- + ",_enum_values,"
- + str(enum_value_count)
- + ",_vertex_code,_fragment_code,_vertex_code_start,_fragment_code_start);\n"
- )
- else:
- fd.write(
- "\t\tsetup(_conditional_strings,"
- + str(len(header_data.conditionals))
- + ",_uniform_strings,"
- + str(len(header_data.uniforms))
- + ",_texunit_pairs,"
- + str(len(header_data.texunits))
- + ",_enums,"
- + str(len(header_data.enums))
- + ",_enum_values,"
- + str(enum_value_count)
- + ",_ubo_pairs,"
- + str(len(header_data.ubos))
- + ",_feedbacks,"
- + str(feedback_count)
- + ",_vertex_code,_fragment_code,_vertex_code_start,_fragment_code_start);\n"
- )
-
- fd.write("\t}\n\n")
-
- if enum_constants:
-
- fd.write("\tenum EnumConditionals {\n")
- for x in enum_constants:
- fd.write("\t\t" + x.upper() + ",\n")
- fd.write("\t};\n\n")
- fd.write("\tvoid set_enum_conditional(EnumConditionals p_cond) { _set_enum_conditional(p_cond); }\n")
-
- fd.write("};\n\n")
- fd.write("#endif\n\n")
- fd.close()
-
-
-def build_gles2_headers(target, source, env):
- for x in source:
- build_legacygl_header(
- str(x), include="drivers/gles2/shader_gles2.h", class_suffix="GLES2", output_attribs=True, gles2=True
- )
-
-
-class RDHeaderStruct:
- def __init__(self):
- self.vertex_lines = []
- self.fragment_lines = []
- self.compute_lines = []
-
- self.vertex_included_files = []
- self.fragment_included_files = []
-
- self.reading = ""
- self.line_offset = 0
- self.vertex_offset = 0
- self.fragment_offset = 0
- self.compute_offset = 0
-
-
-def include_file_in_rd_header(filename, header_data, depth):
- fs = open(filename, "r")
- line = fs.readline()
-
- while line:
-
- if line.find("#[vertex]") != -1:
- header_data.reading = "vertex"
- line = fs.readline()
- header_data.line_offset += 1
- header_data.vertex_offset = header_data.line_offset
- continue
-
- if line.find("#[fragment]") != -1:
- header_data.reading = "fragment"
- line = fs.readline()
- header_data.line_offset += 1
- header_data.fragment_offset = header_data.line_offset
- continue
-
- if line.find("#[compute]") != -1:
- header_data.reading = "compute"
- line = fs.readline()
- header_data.line_offset += 1
- header_data.compute_offset = header_data.line_offset
- continue
-
- while line.find("#include ") != -1:
- includeline = line.replace("#include ", "").strip()[1:-1]
-
- import os.path
-
- included_file = os.path.relpath(os.path.dirname(filename) + "/" + includeline)
- if not included_file in header_data.vertex_included_files and header_data.reading == "vertex":
- header_data.vertex_included_files += [included_file]
- if include_file_in_rd_header(included_file, header_data, depth + 1) is None:
- print("Error in file '" + filename + "': #include " + includeline + "could not be found!")
- elif not included_file in header_data.fragment_included_files and header_data.reading == "fragment":
- header_data.fragment_included_files += [included_file]
- if include_file_in_rd_header(included_file, header_data, depth + 1) is None:
- print("Error in file '" + filename + "': #include " + includeline + "could not be found!")
- elif not included_file in header_data.compute_included_files and header_data.reading == "compute":
- header_data.compute_included_files += [included_file]
- if include_file_in_rd_header(included_file, header_data, depth + 1) is None:
- print("Error in file '" + filename + "': #include " + includeline + "could not be found!")
-
- line = fs.readline()
-
- line = line.replace("\r", "")
- line = line.replace("\n", "")
-
- if header_data.reading == "vertex":
- header_data.vertex_lines += [line]
- if header_data.reading == "fragment":
- header_data.fragment_lines += [line]
- if header_data.reading == "compute":
- header_data.compute_lines += [line]
-
- line = fs.readline()
- header_data.line_offset += 1
-
- fs.close()
-
- return header_data
-
-
-def build_rd_header(filename):
- header_data = RDHeaderStruct()
- include_file_in_rd_header(filename, header_data, 0)
-
- out_file = filename + ".gen.h"
- fd = open(out_file, "w")
-
- enum_constants = []
-
- fd.write("/* WARNING, THIS FILE WAS GENERATED, DO NOT EDIT */\n")
-
- out_file_base = out_file
- out_file_base = out_file_base[out_file_base.rfind("/") + 1 :]
- out_file_base = out_file_base[out_file_base.rfind("\\") + 1 :]
- out_file_ifdef = out_file_base.replace(".", "_").upper()
- fd.write("#ifndef " + out_file_ifdef + "_RD\n")
- fd.write("#define " + out_file_ifdef + "_RD\n")
-
- out_file_class = out_file_base.replace(".glsl.gen.h", "").title().replace("_", "").replace(".", "") + "ShaderRD"
- fd.write("\n")
- fd.write('#include "servers/rendering/rasterizer_rd/shader_rd.h"\n\n')
- fd.write("class " + out_file_class + " : public ShaderRD {\n\n")
- fd.write("public:\n\n")
-
- fd.write("\t" + out_file_class + "() {\n\n")
-
- if len(header_data.compute_lines):
-
- fd.write("\t\tstatic const char _compute_code[] = {\n")
- for x in header_data.compute_lines:
- for c in x:
- fd.write(str(ord(c)) + ",")
- fd.write(str(ord("\n")) + ",")
- fd.write("\t\t0};\n\n")
-
- fd.write('\t\tsetup(nullptr, nullptr, _compute_code, "' + out_file_class + '");\n')
- fd.write("\t}\n")
-
- else:
-
- fd.write("\t\tstatic const char _vertex_code[] = {\n")
- for x in header_data.vertex_lines:
- for c in x:
- fd.write(str(ord(c)) + ",")
- fd.write(str(ord("\n")) + ",")
- fd.write("\t\t0};\n\n")
-
- fd.write("\t\tstatic const char _fragment_code[]={\n")
- for x in header_data.fragment_lines:
- for c in x:
- fd.write(str(ord(c)) + ",")
- fd.write(str(ord("\n")) + ",")
- fd.write("\t\t0};\n\n")
-
- fd.write('\t\tsetup(_vertex_code, _fragment_code, nullptr, "' + out_file_class + '");\n')
- fd.write("\t}\n")
-
- fd.write("};\n\n")
-
- fd.write("#endif\n")
- fd.close()
-
-
-def build_rd_headers(target, source, env):
- for x in source:
- build_rd_header(str(x))
-
-
-class RAWHeaderStruct:
- def __init__(self):
- self.code = ""
-
-
-def include_file_in_raw_header(filename, header_data, depth):
- fs = open(filename, "r")
- line = fs.readline()
- text = ""
-
- while line:
-
- while line.find("#include ") != -1:
- includeline = line.replace("#include ", "").strip()[1:-1]
-
- import os.path
-
- included_file = os.path.relpath(os.path.dirname(filename) + "/" + includeline)
- include_file_in_raw_header(included_file, header_data, depth + 1)
-
- line = fs.readline()
-
- header_data.code += line
- line = fs.readline()
-
- fs.close()
-
-
-def build_raw_header(filename):
- header_data = RAWHeaderStruct()
- include_file_in_raw_header(filename, header_data, 0)
-
- out_file = filename + ".gen.h"
- fd = open(out_file, "w")
-
- enum_constants = []
-
- fd.write("/* WARNING, THIS FILE WAS GENERATED, DO NOT EDIT */\n")
-
- out_file_base = out_file.replace(".glsl.gen.h", "_shader_glsl")
- out_file_base = out_file_base[out_file_base.rfind("/") + 1 :]
- out_file_base = out_file_base[out_file_base.rfind("\\") + 1 :]
- out_file_ifdef = out_file_base.replace(".", "_").upper()
- fd.write("#ifndef " + out_file_ifdef + "_RAW_H\n")
- fd.write("#define " + out_file_ifdef + "_RAW_H\n")
- fd.write("\n")
- fd.write("static const char " + out_file_base + "[] = {\n")
- for c in header_data.code:
- fd.write(str(ord(c)) + ",")
- fd.write("\t\t0};\n\n")
- fd.write("#endif\n")
- fd.close()
-
-
-def build_rd_headers(target, source, env):
- for x in source:
- build_rd_header(str(x))
-
-
-def build_raw_headers(target, source, env):
- for x in source:
- build_raw_header(str(x))
-
-
-if __name__ == "__main__":
- subprocess_main(globals())
diff --git a/glsl_builders.py b/glsl_builders.py
new file mode 100644
index 0000000000..af9afcae70
--- /dev/null
+++ b/glsl_builders.py
@@ -0,0 +1,225 @@
+"""Functions used to generate source files during build time
+
+All such functions are invoked in a subprocess on Windows to prevent build flakiness.
+
+"""
+from platform_methods import subprocess_main
+
+
+class RDHeaderStruct:
+ def __init__(self):
+ self.vertex_lines = []
+ self.fragment_lines = []
+ self.compute_lines = []
+
+ self.vertex_included_files = []
+ self.fragment_included_files = []
+ self.compute_included_files = []
+
+ self.reading = ""
+ self.line_offset = 0
+ self.vertex_offset = 0
+ self.fragment_offset = 0
+ self.compute_offset = 0
+
+
+def include_file_in_rd_header(filename, header_data, depth):
+ fs = open(filename, "r")
+ line = fs.readline()
+
+ while line:
+
+ if line.find("#[vertex]") != -1:
+ header_data.reading = "vertex"
+ line = fs.readline()
+ header_data.line_offset += 1
+ header_data.vertex_offset = header_data.line_offset
+ continue
+
+ if line.find("#[fragment]") != -1:
+ header_data.reading = "fragment"
+ line = fs.readline()
+ header_data.line_offset += 1
+ header_data.fragment_offset = header_data.line_offset
+ continue
+
+ if line.find("#[compute]") != -1:
+ header_data.reading = "compute"
+ line = fs.readline()
+ header_data.line_offset += 1
+ header_data.compute_offset = header_data.line_offset
+ continue
+
+ while line.find("#include ") != -1:
+ includeline = line.replace("#include ", "").strip()[1:-1]
+
+ import os.path
+
+ included_file = os.path.relpath(os.path.dirname(filename) + "/" + includeline)
+ if not included_file in header_data.vertex_included_files and header_data.reading == "vertex":
+ header_data.vertex_included_files += [included_file]
+ if include_file_in_rd_header(included_file, header_data, depth + 1) is None:
+ print("Error in file '" + filename + "': #include " + includeline + "could not be found!")
+ elif not included_file in header_data.fragment_included_files and header_data.reading == "fragment":
+ header_data.fragment_included_files += [included_file]
+ if include_file_in_rd_header(included_file, header_data, depth + 1) is None:
+ print("Error in file '" + filename + "': #include " + includeline + "could not be found!")
+ elif not included_file in header_data.compute_included_files and header_data.reading == "compute":
+ header_data.compute_included_files += [included_file]
+ if include_file_in_rd_header(included_file, header_data, depth + 1) is None:
+ print("Error in file '" + filename + "': #include " + includeline + "could not be found!")
+
+ line = fs.readline()
+
+ line = line.replace("\r", "")
+ line = line.replace("\n", "")
+
+ if header_data.reading == "vertex":
+ header_data.vertex_lines += [line]
+ if header_data.reading == "fragment":
+ header_data.fragment_lines += [line]
+ if header_data.reading == "compute":
+ header_data.compute_lines += [line]
+
+ line = fs.readline()
+ header_data.line_offset += 1
+
+ fs.close()
+
+ return header_data
+
+
+def build_rd_header(filename):
+ header_data = RDHeaderStruct()
+ include_file_in_rd_header(filename, header_data, 0)
+
+ out_file = filename + ".gen.h"
+ fd = open(out_file, "w")
+
+ enum_constants = []
+
+ fd.write("/* WARNING, THIS FILE WAS GENERATED, DO NOT EDIT */\n")
+
+ out_file_base = out_file
+ out_file_base = out_file_base[out_file_base.rfind("/") + 1 :]
+ out_file_base = out_file_base[out_file_base.rfind("\\") + 1 :]
+ out_file_ifdef = out_file_base.replace(".", "_").upper()
+ fd.write("#ifndef " + out_file_ifdef + "_RD\n")
+ fd.write("#define " + out_file_ifdef + "_RD\n")
+
+ out_file_class = out_file_base.replace(".glsl.gen.h", "").title().replace("_", "").replace(".", "") + "ShaderRD"
+ fd.write("\n")
+ fd.write('#include "servers/rendering/rasterizer_rd/shader_rd.h"\n\n')
+ fd.write("class " + out_file_class + " : public ShaderRD {\n\n")
+ fd.write("public:\n\n")
+
+ fd.write("\t" + out_file_class + "() {\n\n")
+
+ if len(header_data.compute_lines):
+
+ fd.write("\t\tstatic const char _compute_code[] = {\n")
+ for x in header_data.compute_lines:
+ for c in x:
+ fd.write(str(ord(c)) + ",")
+ fd.write(str(ord("\n")) + ",")
+ fd.write("\t\t0};\n\n")
+
+ fd.write('\t\tsetup(nullptr, nullptr, _compute_code, "' + out_file_class + '");\n')
+ fd.write("\t}\n")
+
+ else:
+
+ fd.write("\t\tstatic const char _vertex_code[] = {\n")
+ for x in header_data.vertex_lines:
+ for c in x:
+ fd.write(str(ord(c)) + ",")
+ fd.write(str(ord("\n")) + ",")
+ fd.write("\t\t0};\n\n")
+
+ fd.write("\t\tstatic const char _fragment_code[]={\n")
+ for x in header_data.fragment_lines:
+ for c in x:
+ fd.write(str(ord(c)) + ",")
+ fd.write(str(ord("\n")) + ",")
+ fd.write("\t\t0};\n\n")
+
+ fd.write('\t\tsetup(_vertex_code, _fragment_code, nullptr, "' + out_file_class + '");\n')
+ fd.write("\t}\n")
+
+ fd.write("};\n\n")
+
+ fd.write("#endif\n")
+ fd.close()
+
+
+def build_rd_headers(target, source, env):
+ for x in source:
+ build_rd_header(str(x))
+
+
+class RAWHeaderStruct:
+ def __init__(self):
+ self.code = ""
+
+
+def include_file_in_raw_header(filename, header_data, depth):
+ fs = open(filename, "r")
+ line = fs.readline()
+ text = ""
+
+ while line:
+
+ while line.find("#include ") != -1:
+ includeline = line.replace("#include ", "").strip()[1:-1]
+
+ import os.path
+
+ included_file = os.path.relpath(os.path.dirname(filename) + "/" + includeline)
+ include_file_in_raw_header(included_file, header_data, depth + 1)
+
+ line = fs.readline()
+
+ header_data.code += line
+ line = fs.readline()
+
+ fs.close()
+
+
+def build_raw_header(filename):
+ header_data = RAWHeaderStruct()
+ include_file_in_raw_header(filename, header_data, 0)
+
+ out_file = filename + ".gen.h"
+ fd = open(out_file, "w")
+
+ enum_constants = []
+
+ fd.write("/* WARNING, THIS FILE WAS GENERATED, DO NOT EDIT */\n")
+
+ out_file_base = out_file.replace(".glsl.gen.h", "_shader_glsl")
+ out_file_base = out_file_base[out_file_base.rfind("/") + 1 :]
+ out_file_base = out_file_base[out_file_base.rfind("\\") + 1 :]
+ out_file_ifdef = out_file_base.replace(".", "_").upper()
+ fd.write("#ifndef " + out_file_ifdef + "_RAW_H\n")
+ fd.write("#define " + out_file_ifdef + "_RAW_H\n")
+ fd.write("\n")
+ fd.write("static const char " + out_file_base + "[] = {\n")
+ for c in header_data.code:
+ fd.write(str(ord(c)) + ",")
+ fd.write("\t\t0};\n\n")
+ fd.write("#endif\n")
+ fd.close()
+
+
+def build_rd_headers(target, source, env):
+ for x in source:
+ build_rd_header(str(x))
+
+
+def build_raw_headers(target, source, env):
+ for x in source:
+ build_raw_header(str(x))
+
+
+if __name__ == "__main__":
+ subprocess_main(globals())
diff --git a/main/main.cpp b/main/main.cpp
index 5f791159f9..e45162c0f3 100644
--- a/main/main.cpp
+++ b/main/main.cpp
@@ -369,16 +369,94 @@ void Main::print_help(const char *p_binary) {
#endif
}
+#ifdef TESTS_ENABLED
+// The order is the same as in `Main::setup()`, only core and some editor types
+// are initialized here. This also combines `Main::setup2()` initialization.
+Error Main::test_setup() {
+ OS::get_singleton()->initialize();
+
+ engine = memnew(Engine);
+
+ ClassDB::init();
+
+ register_core_types();
+ register_core_driver_types();
+
+ globals = memnew(ProjectSettings);
+
+ GLOBAL_DEF("debug/settings/crash_handler/message",
+ String("Please include this when reporting the bug on https://github.com/godotengine/godot/issues"));
+
+ // From `Main::setup2()`.
+ preregister_module_types();
+ preregister_server_types();
+
+ register_core_singletons();
+
+ register_server_types();
+ register_scene_types();
+
+#ifdef TOOLS_ENABLED
+ ClassDB::set_current_api(ClassDB::API_EDITOR);
+ EditorNode::register_editor_types();
+
+ ClassDB::set_current_api(ClassDB::API_CORE);
+#endif
+ register_platform_apis();
+
+ register_module_types();
+ register_driver_types();
+
+ ClassDB::set_current_api(ClassDB::API_NONE);
+
+ _start_success = true;
+
+ return OK;
+}
+// The order is the same as in `Main::cleanup()`.
+void Main::test_cleanup() {
+ ERR_FAIL_COND(!_start_success);
+
+ EngineDebugger::deinitialize();
+
+ ResourceLoader::remove_custom_loaders();
+ ResourceSaver::remove_custom_savers();
+
+#ifdef TOOLS_ENABLED
+ EditorNode::unregister_editor_types();
+#endif
+ unregister_driver_types();
+ unregister_module_types();
+ unregister_platform_apis();
+ unregister_scene_types();
+ unregister_server_types();
+
+ OS::get_singleton()->finalize();
+
+ if (globals) {
+ memdelete(globals);
+ }
+ if (engine) {
+ memdelete(engine);
+ }
+
+ unregister_core_driver_types();
+ unregister_core_types();
+
+ OS::get_singleton()->finalize_core();
+}
+#endif
+
int Main::test_entrypoint(int argc, char *argv[], bool &tests_need_run) {
#ifdef TESTS_ENABLED
for (int x = 0; x < argc; x++) {
- if (strncmp(argv[x], "--test", 6) == 0) {
+ if ((strncmp(argv[x], "--test", 6) == 0) && (strlen(argv[x]) == 6)) {
tests_need_run = true;
- OS::get_singleton()->initialize();
- StringName::setup();
+ // TODO: need to come up with different test contexts.
+ // Not every test requires high-level functionality like `ClassDB`.
+ test_setup();
int status = test_main(argc, argv);
- StringName::cleanup();
- // TODO: fix OS::singleton cleanup
+ test_cleanup();
return status;
}
}
@@ -1079,14 +1157,11 @@ Error Main::setup(const char *execpath, int argc, char *argv[], bool p_second_ph
ProjectSettings::get_singleton()->set_custom_property_info("rendering/quality/driver/driver_name",
PropertyInfo(Variant::STRING,
"rendering/quality/driver/driver_name",
- PROPERTY_HINT_ENUM, "Vulkan,GLES2"));
+ PROPERTY_HINT_ENUM, "Vulkan"));
if (display_driver == "") {
display_driver = GLOBAL_GET("rendering/quality/driver/driver_name");
}
- // Assigning here even though it's GLES2-specific, to be sure that it appears in docs
- GLOBAL_DEF("rendering/quality/2d/gles2_use_nvidia_rect_flicker_workaround", false);
-
GLOBAL_DEF("display/window/size/width", 1024);
ProjectSettings::get_singleton()->set_custom_property_info("display/window/size/width",
PropertyInfo(Variant::INT, "display/window/size/width",
@@ -1143,7 +1218,7 @@ Error Main::setup(const char *execpath, int argc, char *argv[], bool p_second_ph
}
if (bool(GLOBAL_GET("display/window/size/always_on_top"))) {
- window_flags |= DisplayServer::WINDOW_FLAG_ALWAYS_ON_TOP;
+ window_flags |= DisplayServer::WINDOW_FLAG_ALWAYS_ON_TOP_BIT;
}
}
@@ -2203,13 +2278,6 @@ bool Main::start() {
}
if (project_manager || editor) {
- if (DisplayServer::get_singleton()->has_feature(DisplayServer::FEATURE_CONSOLE_WINDOW)) {
- // Hide console window if requested (Windows-only).
- bool hide_console = EditorSettings::get_singleton()->get_setting(
- "interface/editor/hide_console_window");
- DisplayServer::get_singleton()->console_set_visible(!hide_console);
- }
-
// Load SSL Certificates from Editor Settings (or builtin)
Crypto::load_default_certificates(EditorSettings::get_singleton()->get_setting(
"network/ssl/editor_ssl_certificates")
diff --git a/main/main.h b/main/main.h
index 20c0bebefa..75a1c0d8cd 100644
--- a/main/main.h
+++ b/main/main.h
@@ -48,6 +48,10 @@ public:
static int test_entrypoint(int argc, char *argv[], bool &tests_need_run);
static Error setup(const char *execpath, int argc, char *argv[], bool p_second_phase = true);
static Error setup2(Thread::ID p_main_tid_override = 0);
+#ifdef TESTS_ENABLED
+ static Error test_setup();
+ static void test_cleanup();
+#endif
static bool start();
static bool iteration();
@@ -58,7 +62,7 @@ public:
static void cleanup();
};
-// Test main override is for the testing behaviour
+// Test main override is for the testing behaviour.
#define TEST_MAIN_OVERRIDE \
bool run_test = false; \
int return_code = Main::test_entrypoint(argc, argv, run_test); \
diff --git a/misc/dist/linux/x-godot-project.xml b/misc/dist/linux/x-godot-project.xml
index 0572e4e54e..9f28bab2ae 100644
--- a/misc/dist/linux/x-godot-project.xml
+++ b/misc/dist/linux/x-godot-project.xml
@@ -1,8 +1,8 @@
<?xml version="1.0"?>
- <mime-info xmlns='http://www.freedesktop.org/standards/shared-mime-info'>
- <mime-type type="application/x-godot-project">
- <comment>Godot Engine project</comment>
- <icon name="godot" />
- <glob pattern="*.godot" weight="100" />
+<mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info">
+ <mime-type type="application/x-godot-project">
+ <comment>Godot Engine project</comment>
+ <icon name="godot" />
+ <glob pattern="*.godot" weight="100" />
</mime-type>
</mime-info>
diff --git a/misc/scons/compilation_db.py b/misc/scons/compilation_db.py
deleted file mode 100644
index 87db32adc9..0000000000
--- a/misc/scons/compilation_db.py
+++ /dev/null
@@ -1,177 +0,0 @@
-# Copyright 2015 MongoDB Inc.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-import json
-import SCons
-import itertools
-
-# Implements the ability for SCons to emit a compilation database for the MongoDB project. See
-# http://clang.llvm.org/docs/JSONCompilationDatabase.html for details on what a compilation
-# database is, and why you might want one. The only user visible entry point here is
-# 'env.CompilationDatabase'. This method takes an optional 'target' to name the file that
-# should hold the compilation database, otherwise, the file defaults to compile_commands.json,
-# which is the name that most clang tools search for by default.
-
-# TODO: Is there a better way to do this than this global? Right now this exists so that the
-# emitter we add can record all of the things it emits, so that the scanner for the top level
-# compilation database can access the complete list, and also so that the writer has easy
-# access to write all of the files. But it seems clunky. How can the emitter and the scanner
-# communicate more gracefully?
-__COMPILATION_DB_ENTRIES = []
-
-# We make no effort to avoid rebuilding the entries. Someday, perhaps we could and even
-# integrate with the cache, but there doesn't seem to be much call for it.
-class __CompilationDbNode(SCons.Node.Python.Value):
- def __init__(self, value):
- SCons.Node.Python.Value.__init__(self, value)
- self.Decider(changed_since_last_build_node)
-
-
-def changed_since_last_build_node(child, target, prev_ni, node):
- """ Dummy decider to force always building"""
- return True
-
-
-def makeEmitCompilationDbEntry(comstr):
- """
- Effectively this creates a lambda function to capture:
- * command line
- * source
- * target
- :param comstr: unevaluated command line
- :return: an emitter which has captured the above
- """
- user_action = SCons.Action.Action(comstr)
-
- def EmitCompilationDbEntry(target, source, env):
- """
- This emitter will be added to each c/c++ object build to capture the info needed
- for clang tools
- :param target: target node(s)
- :param source: source node(s)
- :param env: Environment for use building this node
- :return: target(s), source(s)
- """
-
- dbtarget = __CompilationDbNode(source)
-
- entry = env.__COMPILATIONDB_Entry(
- target=dbtarget,
- source=[],
- __COMPILATIONDB_UTARGET=target,
- __COMPILATIONDB_USOURCE=source,
- __COMPILATIONDB_UACTION=user_action,
- __COMPILATIONDB_ENV=env,
- )
-
- # TODO: Technically, these next two lines should not be required: it should be fine to
- # cache the entries. However, they don't seem to update properly. Since they are quick
- # to re-generate disable caching and sidestep this problem.
- env.AlwaysBuild(entry)
- env.NoCache(entry)
-
- __COMPILATION_DB_ENTRIES.append(dbtarget)
-
- return target, source
-
- return EmitCompilationDbEntry
-
-
-def CompilationDbEntryAction(target, source, env, **kw):
- """
- Create a dictionary with evaluated command line, target, source
- and store that info as an attribute on the target
- (Which has been stored in __COMPILATION_DB_ENTRIES array
- :param target: target node(s)
- :param source: source node(s)
- :param env: Environment for use building this node
- :param kw:
- :return: None
- """
-
- command = env["__COMPILATIONDB_UACTION"].strfunction(
- target=env["__COMPILATIONDB_UTARGET"], source=env["__COMPILATIONDB_USOURCE"], env=env["__COMPILATIONDB_ENV"],
- )
-
- entry = {
- "directory": env.Dir("#").abspath,
- "command": command,
- "file": str(env["__COMPILATIONDB_USOURCE"][0]),
- }
-
- target[0].write(entry)
-
-
-def WriteCompilationDb(target, source, env):
- entries = []
-
- for s in __COMPILATION_DB_ENTRIES:
- entries.append(s.read())
-
- with open(str(target[0]), "w") as target_file:
- json.dump(entries, target_file, sort_keys=True, indent=4, separators=(",", ": "))
-
-
-def ScanCompilationDb(node, env, path):
- return __COMPILATION_DB_ENTRIES
-
-
-def generate(env, **kwargs):
-
- static_obj, shared_obj = SCons.Tool.createObjBuilders(env)
-
- env["COMPILATIONDB_COMSTR"] = kwargs.get("COMPILATIONDB_COMSTR", "Building compilation database $TARGET")
-
- components_by_suffix = itertools.chain(
- itertools.product(
- env["CPPSUFFIXES"],
- [
- (static_obj, SCons.Defaults.StaticObjectEmitter, "$CXXCOM"),
- (shared_obj, SCons.Defaults.SharedObjectEmitter, "$SHCXXCOM"),
- ],
- ),
- )
-
- for entry in components_by_suffix:
- suffix = entry[0]
- builder, base_emitter, command = entry[1]
-
- # Ensure we have a valid entry
- # used to auto ignore header files
- if suffix in builder.emitter:
- emitter = builder.emitter[suffix]
- builder.emitter[suffix] = SCons.Builder.ListEmitter([emitter, makeEmitCompilationDbEntry(command),])
-
- env["BUILDERS"]["__COMPILATIONDB_Entry"] = SCons.Builder.Builder(
- action=SCons.Action.Action(CompilationDbEntryAction, None),
- )
-
- env["BUILDERS"]["__COMPILATIONDB_Database"] = SCons.Builder.Builder(
- action=SCons.Action.Action(WriteCompilationDb, "$COMPILATIONDB_COMSTR"),
- target_scanner=SCons.Scanner.Scanner(function=ScanCompilationDb, node_class=None),
- )
-
- def CompilationDatabase(env, target):
- result = env.__COMPILATIONDB_Database(target=target, source=[])
-
- env.AlwaysBuild(result)
- env.NoCache(result)
-
- return result
-
- env.AddMethod(CompilationDatabase, "CompilationDatabase")
-
-
-def exists(env):
- return True
diff --git a/modules/bmp/image_loader_bmp.cpp b/modules/bmp/image_loader_bmp.cpp
index ac4e534983..757afeb9e3 100644
--- a/modules/bmp/image_loader_bmp.cpp
+++ b/modules/bmp/image_loader_bmp.cpp
@@ -51,16 +51,20 @@ Error ImageLoaderBMP::convert_to_image(Ref<Image> p_image,
if (bits_per_pixel == 1) {
// Requires bit unpacking...
- ERR_FAIL_COND_V(width % 8 != 0, ERR_UNAVAILABLE);
- ERR_FAIL_COND_V(height % 8 != 0, ERR_UNAVAILABLE);
+ ERR_FAIL_COND_V_MSG(width % 8 != 0, ERR_UNAVAILABLE,
+ vformat("1-bpp BMP images must have a width that is a multiple of 8, but the imported BMP is %d pixels wide.", int(width)));
+ ERR_FAIL_COND_V_MSG(height % 8 != 0, ERR_UNAVAILABLE,
+ vformat("1-bpp BMP images must have a height that is a multiple of 8, but the imported BMP is %d pixels tall.", int(height)));
} else if (bits_per_pixel == 4) {
// Requires bit unpacking...
- ERR_FAIL_COND_V(width % 2 != 0, ERR_UNAVAILABLE);
- ERR_FAIL_COND_V(height % 2 != 0, ERR_UNAVAILABLE);
+ ERR_FAIL_COND_V_MSG(width % 2 != 0, ERR_UNAVAILABLE,
+ vformat("4-bpp BMP images must have a width that is a multiple of 2, but the imported BMP is %d pixels wide.", int(width)));
+ ERR_FAIL_COND_V_MSG(height % 2 != 0, ERR_UNAVAILABLE,
+ vformat("4-bpp BMP images must have a height that is a multiple of 2, but the imported BMP is %d pixels tall.", int(height)));
} else if (bits_per_pixel == 16) {
- ERR_FAIL_V(ERR_UNAVAILABLE);
+ ERR_FAIL_V_MSG(ERR_UNAVAILABLE, "16-bpp BMP images are not supported.");
}
// Image data (might be indexed)
@@ -72,7 +76,7 @@ Error ImageLoaderBMP::convert_to_image(Ref<Image> p_image,
} else { // color
data_len = width * height * 4;
}
- ERR_FAIL_COND_V(data_len == 0, ERR_BUG);
+ ERR_FAIL_COND_V_MSG(data_len == 0, ERR_BUG, "Couldn't parse the BMP image data.");
err = data.resize(data_len);
uint8_t *data_w = data.ptrw();
@@ -215,13 +219,15 @@ Error ImageLoaderBMP::load_image(Ref<Image> p_image, FileAccess *f,
// Info Header
bmp_header.bmp_info_header.bmp_header_size = f->get_32();
- ERR_FAIL_COND_V(bmp_header.bmp_info_header.bmp_header_size < BITMAP_INFO_HEADER_MIN_SIZE, ERR_FILE_CORRUPT);
+ ERR_FAIL_COND_V_MSG(bmp_header.bmp_info_header.bmp_header_size < BITMAP_INFO_HEADER_MIN_SIZE, ERR_FILE_CORRUPT,
+ vformat("Couldn't parse the BMP info header. The file is likely corrupt: %s", f->get_path()));
bmp_header.bmp_info_header.bmp_width = f->get_32();
bmp_header.bmp_info_header.bmp_height = f->get_32();
bmp_header.bmp_info_header.bmp_planes = f->get_16();
- ERR_FAIL_COND_V(bmp_header.bmp_info_header.bmp_planes != 1, ERR_FILE_CORRUPT);
+ ERR_FAIL_COND_V_MSG(bmp_header.bmp_info_header.bmp_planes != 1, ERR_FILE_CORRUPT,
+ vformat("Couldn't parse the BMP planes. The file is likely corrupt: %s", f->get_path()));
bmp_header.bmp_info_header.bmp_bit_count = f->get_16();
bmp_header.bmp_info_header.bmp_compression = f->get_32();
@@ -236,10 +242,10 @@ Error ImageLoaderBMP::load_image(Ref<Image> p_image, FileAccess *f,
case BI_RLE4:
case BI_CMYKRLE8:
case BI_CMYKRLE4: {
- // Stop parsing
- String bmp_path = f->get_path();
+ // Stop parsing.
f->close();
- ERR_FAIL_V_MSG(ERR_UNAVAILABLE, "Compressed BMP files are not supported: " + bmp_path + ".");
+ ERR_FAIL_V_MSG(ERR_UNAVAILABLE,
+ vformat("Compressed BMP files are not supported: %s", f->get_path()));
} break;
}
// Don't rely on sizeof(bmp_file_header) as structure padding
@@ -255,7 +261,8 @@ Error ImageLoaderBMP::load_image(Ref<Image> p_image, FileAccess *f,
if (bmp_header.bmp_info_header.bmp_bit_count <= 8) {
// Support 256 colors max
color_table_size = 1 << bmp_header.bmp_info_header.bmp_bit_count;
- ERR_FAIL_COND_V(color_table_size == 0, ERR_BUG);
+ ERR_FAIL_COND_V_MSG(color_table_size == 0, ERR_BUG,
+ vformat("Couldn't parse the BMP color table: %s", f->get_path()));
}
Vector<uint8_t> bmp_color_table;
diff --git a/modules/csg/csg.cpp b/modules/csg/csg.cpp
index 6c0a3a4ca3..47982d519a 100644
--- a/modules/csg/csg.cpp
+++ b/modules/csg/csg.cpp
@@ -154,6 +154,14 @@ inline bool is_point_in_triangle(const Vector3 &p_point, const Vector3 p_vertice
return true;
}
+inline static bool is_triangle_degenerate(const Vector2 p_vertices[3], real_t p_vertex_snap2) {
+ real_t det = p_vertices[0].x * p_vertices[1].y - p_vertices[0].x * p_vertices[2].y +
+ p_vertices[0].y * p_vertices[2].x - p_vertices[0].y * p_vertices[1].x +
+ p_vertices[1].x * p_vertices[2].y - p_vertices[1].y * p_vertices[2].x;
+
+ return det < p_vertex_snap2;
+}
+
inline static bool are_segements_parallel(const Vector2 p_segment1_points[2], const Vector2 p_segment2_points[2], float p_vertex_snap2) {
Vector2 segment1 = p_segment1_points[1] - p_segment1_points[0];
Vector2 segment2 = p_segment2_points[1] - p_segment2_points[0];
@@ -583,8 +591,8 @@ bool CSGBrushOperation::MeshMerge::_bvh_inside(FaceBVH *facebvhptr, int p_max_de
// Check if faces are co-planar.
if ((current_normal - face_normal).length_squared() < CMP_EPSILON2 &&
is_point_in_triangle(face_center, current_points)) {
- // Only add an intersection if checking a B face.
- if (face.from_b) {
+ // Only add an intersection if not a B face.
+ if (!face.from_b) {
_add_distance(intersectionsA, intersectionsB, current_face.from_b, 0);
}
} else if (ray_intersects_triangle(face_center, face_normal, current_points, CMP_EPSILON, intersection_point)) {
@@ -1117,6 +1125,11 @@ int CSGBrushOperation::Build2DFaces::_insert_point(const Vector2 &p_point) {
face_vertices[2].uv
};
+ // Skip degenerate triangles.
+ if (is_triangle_degenerate(points, vertex_snap2)) {
+ continue;
+ }
+
// Check if point is existing face vertex.
for (int i = 0; i < 3; ++i) {
if ((p_point - face_vertices[i].point).length_squared() < vertex_snap2) {
@@ -1198,11 +1211,8 @@ int CSGBrushOperation::Build2DFaces::_insert_point(const Vector2 &p_point) {
// The new vertex is the last vertex.
for (int i = 0; i < 3; ++i) {
// Don't create degenerate triangles.
- Vector2 edge[2] = { points[i], points[(i + 1) % 3] };
- Vector2 new_edge1[2] = { vertices[new_vertex_idx].point, points[i] };
- Vector2 new_edge2[2] = { vertices[new_vertex_idx].point, points[(i + 1) % 3] };
- if (are_segements_parallel(edge, new_edge1, vertex_snap2) &&
- are_segements_parallel(edge, new_edge2, vertex_snap2)) {
+ Vector2 new_points[3] = { points[i], points[(i + 1) % 3], vertices[new_vertex_idx].point };
+ if (is_triangle_degenerate(new_points, vertex_snap2)) {
continue;
}
diff --git a/modules/csg/csg_shape.cpp b/modules/csg/csg_shape.cpp
index 82a47f594b..8f2ebc7232 100644
--- a/modules/csg/csg_shape.cpp
+++ b/modules/csg/csg_shape.cpp
@@ -506,6 +506,12 @@ void CSGShape3D::_notification(int p_what) {
_make_dirty();
}
+ if (p_what == NOTIFICATION_TRANSFORM_CHANGED) {
+ if (use_collision && is_root_shape() && root_collision_instance.is_valid()) {
+ PhysicsServer3D::get_singleton()->body_set_state(root_collision_instance, PhysicsServer3D::BODY_STATE_TRANSFORM, get_global_transform());
+ }
+ }
+
if (p_what == NOTIFICATION_LOCAL_TRANSFORM_CHANGED) {
if (parent) {
parent->_make_dirty();
@@ -641,7 +647,7 @@ CSGShape3D::~CSGShape3D() {
//////////////////////////////////
CSGBrush *CSGCombiner3D::_build_brush() {
- return nullptr; //does not build anything
+ return memnew(CSGBrush); //does not build anything
}
CSGCombiner3D::CSGCombiner3D() {
diff --git a/modules/gdscript/editor/gdscript_highlighter.cpp b/modules/gdscript/editor/gdscript_highlighter.cpp
index aba3e07134..ae1f2893f1 100644
--- a/modules/gdscript/editor/gdscript_highlighter.cpp
+++ b/modules/gdscript/editor/gdscript_highlighter.cpp
@@ -82,6 +82,10 @@ Dictionary GDScriptSyntaxHighlighter::_get_line_syntax_highlighting(int p_line)
const String &str = text_edit->get_line(p_line);
const int line_length = str.length();
Color prev_color;
+
+ if (in_region != -1 && str.length() == 0) {
+ color_region_cache[p_line] = in_region;
+ }
for (int j = 0; j < str.length(); j++) {
Dictionary highlighter_info;
diff --git a/modules/gdscript/gdscript.cpp b/modules/gdscript/gdscript.cpp
index 9170255c02..541d46a2af 100644
--- a/modules/gdscript/gdscript.cpp
+++ b/modules/gdscript/gdscript.cpp
@@ -596,6 +596,21 @@ Error GDScript::reload(bool p_keep_state) {
return OK;
}
+ {
+ String source_path = path;
+ if (source_path.empty()) {
+ source_path = get_path();
+ }
+ if (!source_path.empty()) {
+ MutexLock lock(GDScriptCache::singleton->lock);
+ Ref<GDScript> self(this);
+ if (!GDScriptCache::singleton->shallow_gdscript_cache.has(source_path)) {
+ GDScriptCache::singleton->shallow_gdscript_cache[source_path] = self;
+ self->unreference();
+ }
+ }
+ }
+
valid = false;
GDScriptParser parser;
Error err = parser.parse(source, path, false);
diff --git a/modules/gdscript/gdscript_analyzer.cpp b/modules/gdscript/gdscript_analyzer.cpp
index 531666bec5..2082339ba7 100644
--- a/modules/gdscript/gdscript_analyzer.cpp
+++ b/modules/gdscript/gdscript_analyzer.cpp
@@ -71,6 +71,10 @@ static StringName get_real_class_name(const StringName &p_source) {
return p_source;
}
+void GDScriptAnalyzer::cleanup() {
+ underscore_map.clear();
+}
+
static GDScriptParser::DataType make_callable_type(const MethodInfo &p_info) {
GDScriptParser::DataType type;
type.type_source = GDScriptParser::DataType::ANNOTATED_EXPLICIT;
@@ -494,7 +498,13 @@ void GDScriptAnalyzer::resolve_class_interface(GDScriptParser::ClassNode *p_clas
if (member.variable->initializer != nullptr) {
if (!is_type_compatible(datatype, member.variable->initializer->get_datatype(), true)) {
- push_error(vformat(R"(Value of type "%s" cannot be assigned to a variable of type "%s".)", member.variable->initializer->get_datatype().to_string(), datatype.to_string()), member.variable->initializer);
+ // Try reverse test since it can be a masked subtype.
+ if (!is_type_compatible(member.variable->initializer->get_datatype(), datatype, true)) {
+ push_error(vformat(R"(Value of type "%s" cannot be assigned to a variable of type "%s".)", member.variable->initializer->get_datatype().to_string(), datatype.to_string()), member.variable->initializer);
+ } else {
+ // TODO: Add warning.
+ mark_node_unsafe(member.variable->initializer);
+ }
} else if (datatype.builtin_type == Variant::INT && member.variable->initializer->get_datatype().builtin_type == Variant::FLOAT) {
#ifdef DEBUG_ENABLED
parser->push_warning(member.variable->initializer, GDScriptWarning::NARROWING_CONVERSION);
@@ -592,17 +602,67 @@ void GDScriptAnalyzer::resolve_class_interface(GDScriptParser::ClassNode *p_clas
enum_type.is_meta_type = true;
enum_type.is_constant = true;
+ // Enums can't be nested, so we can safely override this.
+ current_enum = member.m_enum;
+
for (int j = 0; j < member.m_enum->values.size(); j++) {
- enum_type.enum_values[member.m_enum->values[j].identifier->name] = member.m_enum->values[j].value;
+ GDScriptParser::EnumNode::Value &element = member.m_enum->values.write[j];
+
+ if (element.custom_value) {
+ reduce_expression(element.custom_value);
+ if (!element.custom_value->is_constant) {
+ push_error(R"(Enum values must be constant.)", element.custom_value);
+ } else if (element.custom_value->reduced_value.get_type() != Variant::INT) {
+ push_error(R"(Enum values must be integers.)", element.custom_value);
+ } else {
+ element.value = element.custom_value->reduced_value;
+ element.resolved = true;
+ }
+ } else {
+ if (element.index > 0) {
+ element.value = element.parent_enum->values[element.index - 1].value + 1;
+ } else {
+ element.value = 0;
+ }
+ element.resolved = true;
+ }
+
+ enum_type.enum_values[element.identifier->name] = element.value;
}
+ current_enum = nullptr;
+
member.m_enum->set_datatype(enum_type);
} break;
case GDScriptParser::ClassNode::Member::FUNCTION:
resolve_function_signature(member.function);
break;
- case GDScriptParser::ClassNode::Member::ENUM_VALUE:
- break; // Nothing to do, type and value set in parser.
+ case GDScriptParser::ClassNode::Member::ENUM_VALUE: {
+ if (member.enum_value.custom_value) {
+ current_enum = member.enum_value.parent_enum;
+ reduce_expression(member.enum_value.custom_value);
+ current_enum = nullptr;
+
+ if (!member.enum_value.custom_value->is_constant) {
+ push_error(R"(Enum values must be constant.)", member.enum_value.custom_value);
+ } else if (member.enum_value.custom_value->reduced_value.get_type() != Variant::INT) {
+ push_error(R"(Enum values must be integers.)", member.enum_value.custom_value);
+ } else {
+ member.enum_value.value = member.enum_value.custom_value->reduced_value;
+ member.enum_value.resolved = true;
+ }
+ } else {
+ if (member.enum_value.index > 0) {
+ member.enum_value.value = member.enum_value.parent_enum->values[member.enum_value.index - 1].value + 1;
+ } else {
+ member.enum_value.value = 0;
+ }
+ member.enum_value.resolved = true;
+ }
+ // Also update the original references.
+ member.enum_value.parent_enum->values.write[member.enum_value.index] = member.enum_value;
+ p_class->members.write[i].enum_value = member.enum_value;
+ } break;
case GDScriptParser::ClassNode::Member::CLASS:
break; // Done later.
case GDScriptParser::ClassNode::Member::UNDEFINED:
@@ -872,7 +932,8 @@ void GDScriptAnalyzer::resolve_for(GDScriptParser::ForNode *p_for) {
// Use int, Vector2, Vector3 instead, which also can be used as range iterators.
if (p_for->list && p_for->list->type == GDScriptParser::Node::CALL) {
GDScriptParser::CallNode *call = static_cast<GDScriptParser::CallNode *>(p_for->list);
- if (call->callee->type == GDScriptParser::Node::IDENTIFIER) {
+ GDScriptParser::Node::Type callee_type = call->get_callee_type();
+ if (callee_type == GDScriptParser::Node::IDENTIFIER) {
GDScriptParser::IdentifierNode *callee = static_cast<GDScriptParser::IdentifierNode *>(call->callee);
if (callee->name == "range") {
list_resolved = true;
@@ -989,7 +1050,13 @@ void GDScriptAnalyzer::resolve_variable(GDScriptParser::VariableNode *p_variable
if (p_variable->initializer != nullptr) {
if (!is_type_compatible(type, p_variable->initializer->get_datatype(), true)) {
- push_error(vformat(R"(Value of type "%s" cannot be assigned to a variable of type "%s".)", p_variable->initializer->get_datatype().to_string(), type.to_string()), p_variable->initializer);
+ // Try reverse test since it can be a masked subtype.
+ if (!is_type_compatible(p_variable->initializer->get_datatype(), type, true)) {
+ push_error(vformat(R"(Value of type "%s" cannot be assigned to a variable of type "%s".)", p_variable->initializer->get_datatype().to_string(), type.to_string()), p_variable->initializer);
+ } else {
+ // TODO: Add warning.
+ mark_node_unsafe(p_variable->initializer);
+ }
#ifdef DEBUG_ENABLED
} else if (type.builtin_type == Variant::INT && p_variable->initializer->get_datatype().builtin_type == Variant::FLOAT) {
parser->push_warning(p_variable->initializer, GDScriptWarning::NARROWING_CONVERSION);
@@ -1369,60 +1436,32 @@ void GDScriptAnalyzer::reduce_assignment(GDScriptParser::AssignmentNode *p_assig
push_error("Cannot assign a new value to a constant.", p_assignment->assignee);
}
- Variant::Operator vop = Variant::Operator::OP_EQUAL;
- switch (p_assignment->operation) {
- case GDScriptParser::AssignmentNode::OP_NONE:
- vop = Variant::Operator::OP_EQUAL;
- break;
- case GDScriptParser::AssignmentNode::OP_ADDITION:
- vop = Variant::Operator::OP_ADD;
- break;
- case GDScriptParser::AssignmentNode::OP_SUBTRACTION:
- vop = Variant::Operator::OP_SUBTRACT;
- break;
- case GDScriptParser::AssignmentNode::OP_MULTIPLICATION:
- vop = Variant::Operator::OP_MULTIPLY;
- break;
- case GDScriptParser::AssignmentNode::OP_DIVISION:
- vop = Variant::Operator::OP_DIVIDE;
- break;
- case GDScriptParser::AssignmentNode::OP_MODULO:
- vop = Variant::Operator::OP_MODULE;
- break;
- case GDScriptParser::AssignmentNode::OP_BIT_SHIFT_LEFT:
- vop = Variant::Operator::OP_SHIFT_LEFT;
- break;
- case GDScriptParser::AssignmentNode::OP_BIT_SHIFT_RIGHT:
- vop = Variant::Operator::OP_SHIFT_RIGHT;
- break;
- case GDScriptParser::AssignmentNode::OP_BIT_AND:
- vop = Variant::Operator::OP_BIT_AND;
- break;
- case GDScriptParser::AssignmentNode::OP_BIT_OR:
- vop = Variant::Operator::OP_BIT_OR;
- break;
- case GDScriptParser::AssignmentNode::OP_BIT_XOR:
- vop = Variant::Operator::OP_BIT_XOR;
- break;
- }
-
- bool compatible = true;
- GDScriptParser::DataType op_type = p_assignment->assigned_value->get_datatype();
- if (vop != Variant::OP_EQUAL) {
- op_type = get_operation_type(vop, p_assignment->assignee->get_datatype(), p_assignment->assigned_value->get_datatype(), compatible);
- }
+ if (!p_assignment->assignee->get_datatype().is_variant() && !p_assignment->assigned_value->get_datatype().is_variant()) {
+ bool compatible = true;
+ GDScriptParser::DataType op_type = p_assignment->assigned_value->get_datatype();
+ if (p_assignment->operation != GDScriptParser::AssignmentNode::OP_NONE) {
+ op_type = get_operation_type(p_assignment->variant_op, p_assignment->assignee->get_datatype(), p_assignment->assigned_value->get_datatype(), compatible);
+ }
- if (compatible) {
- compatible = is_type_compatible(p_assignment->assignee->get_datatype(), op_type, true);
- if (!compatible) {
- if (p_assignment->assignee->get_datatype().is_hard_type()) {
- push_error(vformat(R"(Cannot assign a value of type "%s" to a target of type "%s".)", p_assignment->assigned_value->get_datatype().to_string(), p_assignment->assignee->get_datatype().to_string()), p_assignment->assigned_value);
- } else {
- // TODO: Warning in this case.
+ if (compatible) {
+ compatible = is_type_compatible(p_assignment->assignee->get_datatype(), op_type, true);
+ if (!compatible) {
+ if (p_assignment->assignee->get_datatype().is_hard_type()) {
+ // Try reverse test since it can be a masked subtype.
+ if (!is_type_compatible(op_type, p_assignment->assignee->get_datatype(), true)) {
+ push_error(vformat(R"(Cannot assign a value of type "%s" to a target of type "%s".)", p_assignment->assigned_value->get_datatype().to_string(), p_assignment->assignee->get_datatype().to_string()), p_assignment->assigned_value);
+ } else {
+ // TODO: Add warning.
+ mark_node_unsafe(p_assignment);
+ }
+ } else {
+ // TODO: Warning in this case.
+ mark_node_unsafe(p_assignment);
+ }
}
+ } else {
+ push_error(vformat(R"(Invalid operands "%s" and "%s" for assignment operator.)", p_assignment->assignee->get_datatype().to_string(), p_assignment->assigned_value->get_datatype().to_string()), p_assignment);
}
- } else {
- push_error(vformat(R"(Invalid operands "%s" and "%s" for assignment operator.)", p_assignment->assignee->get_datatype().to_string(), p_assignment->assigned_value->get_datatype().to_string()), p_assignment);
}
if (p_assignment->assignee->get_datatype().has_no_type() || p_assignment->assigned_value->get_datatype().is_variant()) {
@@ -1536,7 +1575,19 @@ void GDScriptAnalyzer::reduce_binary_op(GDScriptParser::BinaryOpNode *p_binary_o
if (p_binary_op->left_operand->is_constant && p_binary_op->right_operand->is_constant) {
p_binary_op->is_constant = true;
if (p_binary_op->variant_op < Variant::OP_MAX) {
- p_binary_op->reduced_value = Variant::evaluate(p_binary_op->variant_op, p_binary_op->left_operand->reduced_value, p_binary_op->right_operand->reduced_value);
+ bool valid = false;
+ Variant::evaluate(p_binary_op->variant_op, p_binary_op->left_operand->reduced_value, p_binary_op->right_operand->reduced_value, p_binary_op->reduced_value, valid);
+ if (!valid) {
+ if (p_binary_op->reduced_value.get_type() == Variant::STRING) {
+ push_error(vformat(R"(%s in operator %s.)", p_binary_op->reduced_value, Variant::get_operator_name(p_binary_op->variant_op)), p_binary_op);
+ } else {
+ push_error(vformat(R"(Invalid operands to operator %s, %s and %s.".)",
+ Variant::get_operator_name(p_binary_op->variant_op),
+ Variant::get_type_name(p_binary_op->left_operand->reduced_value.get_type()),
+ Variant::get_type_name(p_binary_op->right_operand->reduced_value.get_type())),
+ p_binary_op);
+ }
+ }
} else {
if (p_binary_op->operation == GDScriptParser::BinaryOpNode::OP_TYPE_TEST) {
GDScriptParser::DataType test_type = right_type;
@@ -1608,9 +1659,10 @@ void GDScriptAnalyzer::reduce_call(GDScriptParser::CallNode *p_call, bool is_awa
all_is_constant = all_is_constant && p_call->arguments[i]->is_constant;
}
+ GDScriptParser::Node::Type callee_type = p_call->get_callee_type();
GDScriptParser::DataType call_type;
- if (!p_call->is_super && p_call->callee->type == GDScriptParser::Node::IDENTIFIER) {
+ if (!p_call->is_super && callee_type == GDScriptParser::Node::IDENTIFIER) {
// Call to name directly.
StringName function_name = p_call->function_name;
Variant::Type builtin_type = GDScriptParser::get_builtin_type(function_name);
@@ -1651,6 +1703,7 @@ void GDScriptAnalyzer::reduce_call(GDScriptParser::CallNode *p_call, bool is_awa
}
signature += p_call->arguments[i]->get_datatype().to_string();
}
+ signature += ")";
push_error(vformat(R"(No constructor of "%s" matches the signature "%s".)", Variant::get_type_name(builtin_type), signature), p_call->callee);
} break;
case Callable::CallError::CALL_ERROR_TOO_MANY_ARGUMENTS:
@@ -1701,7 +1754,7 @@ void GDScriptAnalyzer::reduce_call(GDScriptParser::CallNode *p_call, bool is_awa
for (int i = 0; i < p_call->arguments.size(); i++) {
GDScriptParser::DataType par_type = type_from_property(info.arguments[i]);
- if (!is_type_compatible(par_type, p_call->arguments[i]->get_datatype())) {
+ if (!is_type_compatible(par_type, p_call->arguments[i]->get_datatype(), true)) {
types_match = false;
break;
#ifdef DEBUG_ENABLED
@@ -1728,6 +1781,7 @@ void GDScriptAnalyzer::reduce_call(GDScriptParser::CallNode *p_call, bool is_awa
}
signature += p_call->arguments[i]->get_datatype().to_string();
}
+ signature += ")";
push_error(vformat(R"(No constructor of "%s" matches the signature "%s".)", Variant::get_type_name(builtin_type), signature), p_call);
}
}
@@ -1785,10 +1839,10 @@ void GDScriptAnalyzer::reduce_call(GDScriptParser::CallNode *p_call, bool is_awa
if (p_call->is_super) {
base_type = parser->current_class->base_type;
is_self = true;
- } else if (p_call->callee->type == GDScriptParser::Node::IDENTIFIER) {
+ } else if (callee_type == GDScriptParser::Node::IDENTIFIER) {
base_type = parser->current_class->get_datatype();
is_self = true;
- } else if (p_call->callee->type == GDScriptParser::Node::SUBSCRIPT) {
+ } else if (callee_type == GDScriptParser::Node::SUBSCRIPT) {
GDScriptParser::SubscriptNode *subscript = static_cast<GDScriptParser::SubscriptNode *>(p_call->callee);
if (!subscript->is_attribute) {
// Invalid call. Error already sent in parser.
@@ -1825,9 +1879,9 @@ void GDScriptAnalyzer::reduce_call(GDScriptParser::CallNode *p_call, bool is_awa
} else {
// Check if the name exists as something else.
bool found = false;
- if (!p_call->is_super) {
+ if (!p_call->is_super && callee_type != GDScriptParser::Node::NONE) {
GDScriptParser::IdentifierNode *callee_id;
- if (p_call->callee->type == GDScriptParser::Node::IDENTIFIER) {
+ if (callee_type == GDScriptParser::Node::IDENTIFIER) {
callee_id = static_cast<GDScriptParser::IdentifierNode *>(p_call->callee);
} else {
// Can only be attribute.
@@ -1835,13 +1889,13 @@ void GDScriptAnalyzer::reduce_call(GDScriptParser::CallNode *p_call, bool is_awa
}
if (callee_id) {
reduce_identifier_from_base(callee_id, &base_type);
- GDScriptParser::DataType callee_type = callee_id->get_datatype();
- if (callee_type.is_set() && !callee_type.is_variant()) {
+ GDScriptParser::DataType callee_datatype = callee_id->get_datatype();
+ if (callee_datatype.is_set() && !callee_datatype.is_variant()) {
found = true;
- if (callee_type.builtin_type == Variant::CALLABLE) {
+ if (callee_datatype.builtin_type == Variant::CALLABLE) {
push_error(vformat(R"*(Name "%s" is a Callable. You can call it with "%s.call()" instead.)*", p_call->function_name, p_call->function_name), p_call->callee);
} else {
- push_error(vformat(R"*(Name "%s" called as a function but is a "%s".)*", p_call->function_name, callee_type.to_string()), p_call->callee);
+ push_error(vformat(R"*(Name "%s" called as a function but is a "%s".)*", p_call->function_name, callee_datatype.to_string()), p_call->callee);
}
#ifdef DEBUG_ENABLED
} else if (!is_self) {
@@ -2121,6 +2175,33 @@ void GDScriptAnalyzer::reduce_identifier_from_base(GDScriptParser::IdentifierNod
void GDScriptAnalyzer::reduce_identifier(GDScriptParser::IdentifierNode *p_identifier, bool can_be_builtin) {
// TODO: This is opportunity to further infer types.
+
+ // Check if we are inside and enum. This allows enum values to access other elements of the same enum.
+ if (current_enum) {
+ for (int i = 0; i < current_enum->values.size(); i++) {
+ const GDScriptParser::EnumNode::Value &element = current_enum->values[i];
+ if (element.identifier->name == p_identifier->name) {
+ GDScriptParser::DataType type;
+ type.type_source = GDScriptParser::DataType::ANNOTATED_EXPLICIT;
+ type.kind = element.parent_enum->identifier ? GDScriptParser::DataType::ENUM_VALUE : GDScriptParser::DataType::BUILTIN;
+ type.builtin_type = Variant::INT;
+ type.is_constant = true;
+ if (element.parent_enum->identifier) {
+ type.enum_type = element.parent_enum->identifier->name;
+ }
+ p_identifier->set_datatype(type);
+
+ if (element.resolved) {
+ p_identifier->is_constant = true;
+ p_identifier->reduced_value = element.value;
+ } else {
+ push_error(R"(Cannot use another enum element before it was declared.)", p_identifier);
+ }
+ return; // Found anyway.
+ }
+ }
+ }
+
// Check if identifier is local.
// If that's the case, the declaration already was solved before.
switch (p_identifier->source) {
@@ -2526,6 +2607,12 @@ void GDScriptAnalyzer::reduce_unary_op(GDScriptParser::UnaryOpNode *p_unary_op)
GDScriptParser::DataType result;
+ if (p_unary_op->operand == nullptr) {
+ result.kind = GDScriptParser::DataType::VARIANT;
+ p_unary_op->set_datatype(result);
+ return;
+ }
+
if (p_unary_op->operand->is_constant) {
p_unary_op->is_constant = true;
p_unary_op->reduced_value = Variant::evaluate(p_unary_op->variant_op, p_unary_op->operand->reduced_value, Variant());
@@ -2900,7 +2987,7 @@ GDScriptParser::DataType GDScriptAnalyzer::get_operation_type(Variant::Operator
}
// Avoid error in formatting operator (%) where it doesn't find a placeholder.
- if (a_type == Variant::STRING) {
+ if (a_type == Variant::STRING && b_type != Variant::ARRAY) {
a = String("%s");
}
diff --git a/modules/gdscript/gdscript_analyzer.h b/modules/gdscript/gdscript_analyzer.h
index 85183d3272..da767522ad 100644
--- a/modules/gdscript/gdscript_analyzer.h
+++ b/modules/gdscript/gdscript_analyzer.h
@@ -41,6 +41,8 @@ class GDScriptAnalyzer {
GDScriptParser *parser = nullptr;
HashMap<String, Ref<GDScriptParserRef>> depended_parsers;
+ const GDScriptParser::EnumNode *current_enum = nullptr;
+
Error resolve_inheritance(GDScriptParser::ClassNode *p_class, bool p_recursive = true);
GDScriptParser::DataType resolve_datatype(GDScriptParser::TypeNode *p_type);
@@ -113,6 +115,8 @@ public:
Error analyze();
GDScriptAnalyzer(GDScriptParser *p_parser);
+
+ static void cleanup();
};
#endif // GDSCRIPT_ANALYZER_H
diff --git a/modules/gdscript/gdscript_cache.cpp b/modules/gdscript/gdscript_cache.cpp
index 583283ff46..cdb14d6281 100644
--- a/modules/gdscript/gdscript_cache.cpp
+++ b/modules/gdscript/gdscript_cache.cpp
@@ -85,6 +85,17 @@ Error GDScriptParserRef::raise_status(Status p_new_status) {
return result;
}
}
+ if (result != OK) {
+ if (parser != nullptr) {
+ memdelete(parser);
+ parser = nullptr;
+ }
+ if (analyzer != nullptr) {
+ memdelete(analyzer);
+ analyzer = nullptr;
+ }
+ return result;
+ }
}
return result;
@@ -118,6 +129,10 @@ Ref<GDScriptParserRef> GDScriptCache::get_parser(const String &p_path, GDScriptP
if (singleton->parser_map.has(p_path)) {
ref = singleton->parser_map[p_path];
} else {
+ if (!FileAccess::exists(p_path)) {
+ r_error = ERR_FILE_NOT_FOUND;
+ return ref;
+ }
GDScriptParser *parser = memnew(GDScriptParser);
ref.instance();
ref->parser = parser;
diff --git a/modules/gdscript/gdscript_editor.cpp b/modules/gdscript/gdscript_editor.cpp
index 239015060e..88bf8cde0f 100644
--- a/modules/gdscript/gdscript_editor.cpp
+++ b/modules/gdscript/gdscript_editor.cpp
@@ -1259,8 +1259,10 @@ static bool _guess_expression_type(GDScriptParser::CompletionContext &p_context,
GDScriptParser::CompletionContext c = p_context;
c.current_line = call->start_line;
+ GDScriptParser::Node::Type callee_type = call->get_callee_type();
+
GDScriptCompletionIdentifier base;
- if (call->callee->type == GDScriptParser::Node::IDENTIFIER || call->is_super) {
+ if (callee_type == GDScriptParser::Node::IDENTIFIER || call->is_super) {
// Simple call, so base is 'self'.
if (p_context.current_class) {
base.type.kind = GDScriptParser::DataType::CLASS;
@@ -1271,7 +1273,7 @@ static bool _guess_expression_type(GDScriptParser::CompletionContext &p_context,
} else {
break;
}
- } else if (call->callee->type == GDScriptParser::Node::SUBSCRIPT && static_cast<const GDScriptParser::SubscriptNode *>(call->callee)->is_attribute) {
+ } else if (callee_type == GDScriptParser::Node::SUBSCRIPT && static_cast<const GDScriptParser::SubscriptNode *>(call->callee)->is_attribute) {
if (!_guess_expression_type(c, static_cast<const GDScriptParser::SubscriptNode *>(call->callee)->base, base)) {
found = false;
break;
@@ -2290,6 +2292,7 @@ static void _find_call_arguments(GDScriptParser::CompletionContext &p_context, c
GDScriptParser::DataType base_type;
bool _static = false;
const GDScriptParser::CallNode *call = static_cast<const GDScriptParser::CallNode *>(p_call);
+ GDScriptParser::Node::Type callee_type = GDScriptParser::Node::NONE;
GDScriptCompletionIdentifier connect_base;
@@ -2319,14 +2322,14 @@ static void _find_call_arguments(GDScriptParser::CompletionContext &p_context, c
i++;
}
return;
- } else if (call->is_super || call->callee->type == GDScriptParser::Node::IDENTIFIER) {
+ } else if (call->is_super || callee_type == GDScriptParser::Node::IDENTIFIER) {
base = p_context.base;
if (p_context.current_class) {
base_type = p_context.current_class->get_datatype();
_static = !p_context.current_function || p_context.current_function->is_static;
}
- } else if (call->callee->type == GDScriptParser::Node::SUBSCRIPT) {
+ } else if (callee_type == GDScriptParser::Node::SUBSCRIPT) {
const GDScriptParser::SubscriptNode *subscript = static_cast<const GDScriptParser::SubscriptNode *>(call->callee);
if (subscript->is_attribute) {
@@ -2762,6 +2765,7 @@ static Error _lookup_symbol_from_base(const GDScriptParser::DataType &p_base, co
if (base_type.class_type->has_member(p_symbol)) {
r_result.type = ScriptLanguage::LookupResult::RESULT_SCRIPT_LOCATION;
r_result.location = base_type.class_type->get_member(p_symbol).get_line();
+ return OK;
}
base_type = base_type.class_type->base_type;
}
diff --git a/modules/gdscript/gdscript_parser.cpp b/modules/gdscript/gdscript_parser.cpp
index af07457750..e53a1090fe 100644
--- a/modules/gdscript/gdscript_parser.cpp
+++ b/modules/gdscript/gdscript_parser.cpp
@@ -94,6 +94,10 @@ Variant::Type GDScriptParser::get_builtin_type(const StringName &p_type) {
return Variant::VARIANT_MAX;
}
+void GDScriptParser::cleanup() {
+ builtin_types.clear();
+}
+
GDScriptFunctions::Function GDScriptParser::get_builtin_function(const StringName &p_name) {
for (int i = 0; i < GDScriptFunctions::FUNC_MAX; i++) {
if (p_name == GDScriptFunctions::get_func_name(GDScriptFunctions::Function(i))) {
@@ -462,44 +466,40 @@ void GDScriptParser::pop_multiline() {
}
bool GDScriptParser::is_statement_end() {
- return check(GDScriptTokenizer::Token::NEWLINE) || check(GDScriptTokenizer::Token::SEMICOLON);
+ return check(GDScriptTokenizer::Token::NEWLINE) || check(GDScriptTokenizer::Token::SEMICOLON) || check(GDScriptTokenizer::Token::TK_EOF);
}
void GDScriptParser::end_statement(const String &p_context) {
bool found = false;
- while (is_statement_end()) {
+ while (is_statement_end() && !is_at_end()) {
// Remove sequential newlines/semicolons.
found = true;
advance();
}
- if (!found) {
+ if (!found && !is_at_end()) {
push_error(vformat(R"(Expected end of statement after %s, found "%s" instead.)", p_context, current.get_name()));
}
}
void GDScriptParser::parse_program() {
- if (current.type == GDScriptTokenizer::Token::TK_EOF) {
- // Empty file.
- push_error("Source file is empty.");
- return;
- }
-
head = alloc_node<ClassNode>();
current_class = head;
if (match(GDScriptTokenizer::Token::ANNOTATION)) {
// Check for @tool annotation.
AnnotationNode *annotation = parse_annotation(AnnotationInfo::SCRIPT | AnnotationInfo::CLASS_LEVEL);
- if (annotation->name == "@tool") {
- // TODO: don't allow @tool anywhere else. (Should all script annotations be the first thing?).
- _is_tool = true;
- if (previous.type != GDScriptTokenizer::Token::NEWLINE) {
- push_error(R"(Expected newline after "@tool" annotation.)");
- }
- // @tool annotation has no specific target.
- annotation->apply(this, nullptr);
- } else {
- annotation_stack.push_back(annotation);
+ if (annotation != nullptr) {
+ if (annotation->name == "@tool") {
+ // TODO: don't allow @tool anywhere else. (Should all script annotations be the first thing?).
+ _is_tool = true;
+ if (previous.type != GDScriptTokenizer::Token::NEWLINE) {
+ push_error(R"(Expected newline after "@tool" annotation.)");
+ }
+ // @tool annotation has no specific target.
+ annotation->apply(this, nullptr);
+ } else {
+ annotation_stack.push_back(annotation);
+ }
}
}
@@ -1022,8 +1022,6 @@ GDScriptParser::EnumNode *GDScriptParser::parse_enum() {
push_multiline(true);
consume(GDScriptTokenizer::Token::BRACE_OPEN, vformat(R"(Expected "{" after %s.)", named ? "enum name" : R"("enum")"));
- int current_value = 0;
-
do {
if (check(GDScriptTokenizer::Token::BRACE_CLOSE)) {
break; // Allow trailing comma.
@@ -1031,6 +1029,9 @@ GDScriptParser::EnumNode *GDScriptParser::parse_enum() {
if (consume(GDScriptTokenizer::Token::IDENTIFIER, R"(Expected identifer for enum key.)")) {
EnumNode::Value item;
item.identifier = parse_identifier();
+ item.parent_enum = enum_node;
+ item.line = previous.start_line;
+ item.leftmost_column = previous.leftmost_column;
if (!named) {
// TODO: Abstract this recursive member check.
@@ -1045,18 +1046,15 @@ GDScriptParser::EnumNode *GDScriptParser::parse_enum() {
}
if (match(GDScriptTokenizer::Token::EQUAL)) {
- if (consume(GDScriptTokenizer::Token::LITERAL, R"(Expected integer value after "=".)")) {
- item.custom_value = parse_literal();
-
- if (item.custom_value->value.get_type() != Variant::INT) {
- push_error(R"(Expected integer value after "=".)");
- item.custom_value = nullptr;
- } else {
- current_value = item.custom_value->value;
- }
+ ExpressionNode *value = parse_expression(false);
+ if (value == nullptr) {
+ push_error(R"(Expected expression value after "=".)");
}
+ item.custom_value = value;
}
- item.value = current_value++;
+ item.rightmost_column = previous.rightmost_column;
+
+ item.index = enum_node->values.size();
enum_node->values.push_back(item);
if (!named) {
// Add as member of current class.
@@ -2005,7 +2003,6 @@ GDScriptParser::ExpressionNode *GDScriptParser::parse_binary_operator(Expression
push_error(vformat(R"(Expected expression after "%s" operator.")", op.get_name()));
}
- // TODO: Store the Variant operator here too (in the node).
// TODO: Also for unary, ternary, and assignment.
switch (op.type) {
case GDScriptTokenizer::Token::PLUS:
@@ -2167,39 +2164,50 @@ GDScriptParser::ExpressionNode *GDScriptParser::parse_assignment(ExpressionNode
switch (previous.type) {
case GDScriptTokenizer::Token::EQUAL:
assignment->operation = AssignmentNode::OP_NONE;
+ assignment->variant_op = Variant::OP_MAX;
#ifdef DEBUG_ENABLED
has_operator = false;
#endif
break;
case GDScriptTokenizer::Token::PLUS_EQUAL:
assignment->operation = AssignmentNode::OP_ADDITION;
+ assignment->variant_op = Variant::OP_ADD;
break;
case GDScriptTokenizer::Token::MINUS_EQUAL:
assignment->operation = AssignmentNode::OP_SUBTRACTION;
+ assignment->variant_op = Variant::OP_SUBTRACT;
break;
case GDScriptTokenizer::Token::STAR_EQUAL:
assignment->operation = AssignmentNode::OP_MULTIPLICATION;
+ assignment->variant_op = Variant::OP_MULTIPLY;
break;
case GDScriptTokenizer::Token::SLASH_EQUAL:
assignment->operation = AssignmentNode::OP_DIVISION;
+ assignment->variant_op = Variant::OP_DIVIDE;
break;
case GDScriptTokenizer::Token::PERCENT_EQUAL:
assignment->operation = AssignmentNode::OP_MODULO;
+ assignment->variant_op = Variant::OP_MODULE;
break;
case GDScriptTokenizer::Token::LESS_LESS_EQUAL:
assignment->operation = AssignmentNode::OP_BIT_SHIFT_LEFT;
+ assignment->variant_op = Variant::OP_SHIFT_LEFT;
break;
case GDScriptTokenizer::Token::GREATER_GREATER_EQUAL:
assignment->operation = AssignmentNode::OP_BIT_SHIFT_RIGHT;
+ assignment->variant_op = Variant::OP_SHIFT_RIGHT;
break;
case GDScriptTokenizer::Token::AMPERSAND_EQUAL:
assignment->operation = AssignmentNode::OP_BIT_AND;
+ assignment->variant_op = Variant::OP_BIT_AND;
break;
case GDScriptTokenizer::Token::PIPE_EQUAL:
assignment->operation = AssignmentNode::OP_BIT_OR;
+ assignment->variant_op = Variant::OP_BIT_OR;
break;
case GDScriptTokenizer::Token::CARET_EQUAL:
assignment->operation = AssignmentNode::OP_BIT_XOR;
+ assignment->variant_op = Variant::OP_BIT_XOR;
break;
default:
break; // Unreachable.
@@ -2328,7 +2336,11 @@ GDScriptParser::ExpressionNode *GDScriptParser::parse_dictionary(ExpressionNode
GDScriptParser::ExpressionNode *GDScriptParser::parse_grouping(ExpressionNode *p_previous_operand, bool p_can_assign) {
ExpressionNode *grouped = parse_expression(false);
pop_multiline();
- consume(GDScriptTokenizer::Token::PARENTHESIS_CLOSE, R"*(Expected closing ")" after grouping expression.)*");
+ if (grouped == nullptr) {
+ push_error(R"(Expected grouping expression.)");
+ } else {
+ consume(GDScriptTokenizer::Token::PARENTHESIS_CLOSE, R"*(Expected closing ")" after grouping expression.)*");
+ }
return grouped;
}
@@ -2419,7 +2431,9 @@ GDScriptParser::ExpressionNode *GDScriptParser::parse_call(ExpressionNode *p_pre
} else {
call->callee = p_previous_operand;
- if (call->callee->type == Node::IDENTIFIER) {
+ if (call->callee == nullptr) {
+ push_error(R"*(Cannot call on an expression. Use ".call()" if it's a Callable.)*");
+ } else if (call->callee->type == Node::IDENTIFIER) {
call->function_name = static_cast<IdentifierNode *>(call->callee)->name;
make_completion_context(COMPLETION_METHOD, call->callee);
} else if (call->callee->type == Node::SUBSCRIPT) {
diff --git a/modules/gdscript/gdscript_parser.h b/modules/gdscript/gdscript_parser.h
index a741ae0cc7..7d8ae7fc55 100644
--- a/modules/gdscript/gdscript_parser.h
+++ b/modules/gdscript/gdscript_parser.h
@@ -383,6 +383,14 @@ public:
CallNode() {
type = CALL;
}
+
+ Type get_callee_type() const {
+ if (callee == nullptr) {
+ return Type::NONE;
+ } else {
+ return callee->type;
+ }
+ }
};
struct CastNode : public ExpressionNode {
@@ -397,7 +405,10 @@ public:
struct EnumNode : public Node {
struct Value {
IdentifierNode *identifier = nullptr;
- LiteralNode *custom_value = nullptr;
+ ExpressionNode *custom_value = nullptr;
+ EnumNode *parent_enum = nullptr;
+ int index = -1;
+ bool resolved = false;
int value = 0;
int line = 0;
int leftmost_column = 0;
@@ -1335,6 +1346,7 @@ public:
void print_tree(const GDScriptParser &p_parser);
};
#endif // DEBUG_ENABLED
+ static void cleanup();
};
#endif // GDSCRIPT_PARSER_H
diff --git a/modules/gdscript/gdscript_tokenizer.cpp b/modules/gdscript/gdscript_tokenizer.cpp
index 7a4bdd88ba..8ced06e2fd 100644
--- a/modules/gdscript/gdscript_tokenizer.cpp
+++ b/modules/gdscript/gdscript_tokenizer.cpp
@@ -156,6 +156,18 @@ const char *GDScriptTokenizer::Token::get_name() const {
return token_names[type];
}
+bool GDScriptTokenizer::Token::is_identifier() const {
+ // Note: Most keywords should not be recognized as identifiers.
+ // These are only exceptions for stuff that already is on the engine's API.
+ switch (type) {
+ case IDENTIFIER:
+ case MATCH: // Used in String.match().
+ return true;
+ default:
+ return false;
+ }
+}
+
String GDScriptTokenizer::get_token_name(Token::Type p_token_type) {
ERR_FAIL_INDEX_V_MSG(p_token_type, Token::TK_MAX, "<error>", "Using token type out of the enum.");
return token_names[p_token_type];
diff --git a/modules/gdscript/gdscript_tokenizer.h b/modules/gdscript/gdscript_tokenizer.h
index 059a226924..956530341c 100644
--- a/modules/gdscript/gdscript_tokenizer.h
+++ b/modules/gdscript/gdscript_tokenizer.h
@@ -168,9 +168,8 @@ public:
String source;
const char *get_name() const;
- // TODO: Allow some keywords as identifiers?
- bool is_identifier() const { return type == IDENTIFIER; }
- StringName get_identifier() const { return literal; }
+ bool is_identifier() const;
+ StringName get_identifier() const { return source; }
Token(Type p_type) {
type = p_type;
diff --git a/modules/gdscript/language_server/gdscript_extend_parser.cpp b/modules/gdscript/language_server/gdscript_extend_parser.cpp
index ae7898fdf2..4d79d9d395 100644
--- a/modules/gdscript/language_server/gdscript_extend_parser.cpp
+++ b/modules/gdscript/language_server/gdscript_extend_parser.cpp
@@ -237,7 +237,7 @@ void ExtendGDScriptParser::parse_class_symbol(const GDScriptParser::ClassNode *p
case ClassNode::Member::ENUM_VALUE: {
lsp::DocumentSymbol symbol;
- symbol.name = m.constant->identifier->name;
+ symbol.name = m.enum_value.identifier->name;
symbol.kind = lsp::SymbolKind::EnumMember;
symbol.deprecated = false;
symbol.range.start.line = LINE_NUMBER_TO_INDEX(m.enum_value.line);
diff --git a/modules/gdscript/register_types.cpp b/modules/gdscript/register_types.cpp
index 23c7f97b5a..c554cbac05 100644
--- a/modules/gdscript/register_types.cpp
+++ b/modules/gdscript/register_types.cpp
@@ -35,6 +35,7 @@
#include "core/os/dir_access.h"
#include "core/os/file_access.h"
#include "gdscript.h"
+#include "gdscript_analyzer.h"
#include "gdscript_cache.h"
#include "gdscript_tokenizer.h"
@@ -148,4 +149,7 @@ void unregister_gdscript_types() {
EditorTranslationParser::get_singleton()->remove_parser(gdscript_translation_parser_plugin, EditorTranslationParser::STANDARD);
gdscript_translation_parser_plugin.unref();
#endif // TOOLS_ENABLED
+
+ GDScriptParser::cleanup();
+ GDScriptAnalyzer::cleanup();
}
diff --git a/modules/mobile_vr/register_types.cpp b/modules/mobile_vr/register_types.cpp
index 75638d47c4..0bb555e780 100644
--- a/modules/mobile_vr/register_types.cpp
+++ b/modules/mobile_vr/register_types.cpp
@@ -35,9 +35,11 @@
void register_mobile_vr_types() {
ClassDB::register_class<MobileVRInterface>();
- Ref<MobileVRInterface> mobile_vr;
- mobile_vr.instance();
- XRServer::get_singleton()->add_interface(mobile_vr);
+ if (XRServer::get_singleton()) {
+ Ref<MobileVRInterface> mobile_vr;
+ mobile_vr.instance();
+ XRServer::get_singleton()->add_interface(mobile_vr);
+ }
}
void unregister_mobile_vr_types() {
diff --git a/modules/mono/editor/GodotTools/GodotTools/BuildManager.cs b/modules/mono/editor/GodotTools/GodotTools/BuildManager.cs
index 6399991b84..ff7ce97c47 100644
--- a/modules/mono/editor/GodotTools/GodotTools/BuildManager.cs
+++ b/modules/mono/editor/GodotTools/GodotTools/BuildManager.cs
@@ -205,23 +205,8 @@ namespace GodotTools
if (File.Exists(editorScriptsMetadataPath))
File.Copy(editorScriptsMetadataPath, playerScriptsMetadataPath);
- var currentPlayRequest = GodotSharpEditor.Instance.CurrentPlaySettings;
-
- if (currentPlayRequest != null)
- {
- if (currentPlayRequest.Value.HasDebugger)
- {
- // Set the environment variable that will tell the player to connect to the IDE debugger
- // TODO: We should probably add a better way to do this
- Environment.SetEnvironmentVariable("GODOT_MONO_DEBUGGER_AGENT",
- "--debugger-agent=transport=dt_socket" +
- $",address={currentPlayRequest.Value.DebuggerHost}:{currentPlayRequest.Value.DebuggerPort}" +
- ",server=n");
- }
-
- if (!currentPlayRequest.Value.BuildBeforePlaying)
- return true; // Requested play from an external editor/IDE which already built the project
- }
+ if (GodotSharpEditor.Instance.SkipBuildBeforePlaying)
+ return true; // Requested play from an external editor/IDE which already built the project
return BuildProjectBlocking("Debug");
}
diff --git a/modules/mono/editor/GodotTools/GodotTools/GodotSharpEditor.cs b/modules/mono/editor/GodotTools/GodotTools/GodotSharpEditor.cs
index a363ecc920..e2f7e87388 100644
--- a/modules/mono/editor/GodotTools/GodotTools/GodotSharpEditor.cs
+++ b/modules/mono/editor/GodotTools/GodotTools/GodotSharpEditor.cs
@@ -38,7 +38,7 @@ namespace GodotTools
public BottomPanel BottomPanel { get; private set; }
- public PlaySettings? CurrentPlaySettings { get; set; }
+ public bool SkipBuildBeforePlaying { get; set; } = false;
public static string ProjectAssemblyName
{
diff --git a/modules/mono/editor/GodotTools/GodotTools/Ides/MessagingServer.cs b/modules/mono/editor/GodotTools/GodotTools/Ides/MessagingServer.cs
index 17f3339560..eb34a2d0f7 100644
--- a/modules/mono/editor/GodotTools/GodotTools/Ides/MessagingServer.cs
+++ b/modules/mono/editor/GodotTools/GodotTools/Ides/MessagingServer.cs
@@ -330,9 +330,10 @@ namespace GodotTools.Ides
{
DispatchToMainThread(() =>
{
- GodotSharpEditor.Instance.CurrentPlaySettings = new PlaySettings();
+ // TODO: Add BuildBeforePlaying flag to PlayRequest
+
+ // Run the game
Internal.EditorRunPlay();
- GodotSharpEditor.Instance.CurrentPlaySettings = null;
});
return Task.FromResult<Response>(new PlayResponse());
}
@@ -341,10 +342,22 @@ namespace GodotTools.Ides
{
DispatchToMainThread(() =>
{
- GodotSharpEditor.Instance.CurrentPlaySettings =
- new PlaySettings(request.DebuggerHost, request.DebuggerPort, request.BuildBeforePlaying ?? true);
+ // Tell the build callback whether the editor already built the solution or not
+ GodotSharpEditor.Instance.SkipBuildBeforePlaying = !(request.BuildBeforePlaying ?? true);
+
+ // Pass the debugger agent settings to the player via an environment variables
+ // TODO: It would be better if this was an argument in EditorRunPlay instead
+ Environment.SetEnvironmentVariable("GODOT_MONO_DEBUGGER_AGENT",
+ "--debugger-agent=transport=dt_socket" +
+ $",address={request.DebuggerHost}:{request.DebuggerPort}" +
+ ",server=n");
+
+ // Run the game
Internal.EditorRunPlay();
- GodotSharpEditor.Instance.CurrentPlaySettings = null;
+
+ // Restore normal settings
+ Environment.SetEnvironmentVariable("GODOT_MONO_DEBUGGER_AGENT", "");
+ GodotSharpEditor.Instance.SkipBuildBeforePlaying = false;
});
return Task.FromResult<Response>(new DebugPlayResponse());
}
diff --git a/platform/android/display_server_android.cpp b/platform/android/display_server_android.cpp
index 235c9ff665..3aa2fb5451 100644
--- a/platform/android/display_server_android.cpp
+++ b/platform/android/display_server_android.cpp
@@ -36,9 +36,6 @@
#include "java_godot_wrapper.h"
#include "os_android.h"
-#if defined(OPENGL_ENABLED)
-#include "drivers/gles2/rasterizer_gles2.h"
-#endif
#if defined(VULKAN_ENABLED)
#include "drivers/vulkan/rendering_device_vulkan.h"
#include "platform/android/vulkan/vulkan_context_android.h"
diff --git a/platform/android/export/export.cpp b/platform/android/export/export.cpp
index 6f8a968c82..95b778caf6 100644
--- a/platform/android/export/export.cpp
+++ b/platform/android/export/export.cpp
@@ -1554,6 +1554,7 @@ public:
r_options->push_back(ExportOption(PropertyInfo(Variant::STRING, "custom_template/debug", PROPERTY_HINT_GLOBAL_FILE, "*.apk"), ""));
r_options->push_back(ExportOption(PropertyInfo(Variant::STRING, "custom_template/release", PROPERTY_HINT_GLOBAL_FILE, "*.apk"), ""));
r_options->push_back(ExportOption(PropertyInfo(Variant::BOOL, "custom_template/use_custom_build"), false));
+ r_options->push_back(ExportOption(PropertyInfo(Variant::INT, "custom_template/export_format", PROPERTY_HINT_ENUM, "Export APK,Export AAB"), 0));
Vector<PluginConfig> plugins_configs = get_plugins();
for (int i = 0; i < plugins_configs.size(); i++) {
@@ -1974,6 +1975,13 @@ public:
}
}
+ if (int(p_preset->get("custom_template/export_format")) == 1 && /*AAB*/
+ !bool(p_preset->get("custom_template/use_custom_build"))) {
+ valid = false;
+ err += TTR("\"Export AAB\" is only valid when \"Use Custom Build\" is enabled.");
+ err += "\n";
+ }
+
r_error = err;
return valid;
}
@@ -1981,6 +1989,7 @@ public:
virtual List<String> get_binary_extensions(const Ref<EditorExportPreset> &p_preset) const override {
List<String> list;
list.push_back("apk");
+ list.push_back("aab");
return list;
}
@@ -2007,7 +2016,21 @@ public:
return have_plugins_changed || first_build;
}
- Error get_command_line_flags(const Ref<EditorExportPreset> &p_preset, const String &p_path, int p_flags, Vector<uint8_t> &r_command_line_flags) {
+ String get_apk_expansion_fullpath(const Ref<EditorExportPreset> &p_preset, const String &p_path) {
+ int version_code = p_preset->get("version/code");
+ String package_name = p_preset->get("package/unique_name");
+ String apk_file_name = "main." + itos(version_code) + "." + get_package_name(package_name) + ".obb";
+ String fullpath = p_path.get_base_dir().plus_file(apk_file_name);
+ return fullpath;
+ }
+
+ Error save_apk_expansion_file(const Ref<EditorExportPreset> &p_preset, const String &p_path) {
+ String fullpath = get_apk_expansion_fullpath(p_preset, p_path);
+ Error err = save_pack(p_preset, fullpath);
+ return err;
+ }
+
+ void get_command_line_flags(const Ref<EditorExportPreset> &p_preset, const String &p_path, int p_flags, Vector<uint8_t> &r_command_line_flags) {
String cmdline = p_preset->get("command_line/extra_args");
Vector<String> command_line_strings = cmdline.strip_edges().split(" ");
for (int i = 0; i < command_line_strings.size(); i++) {
@@ -2021,17 +2044,8 @@ public:
bool apk_expansion = p_preset->get("apk_expansion/enable");
if (apk_expansion) {
- int version_code = p_preset->get("version/code");
- String package_name = p_preset->get("package/unique_name");
- String apk_file_name = "main." + itos(version_code) + "." + get_package_name(package_name) + ".obb";
- String fullpath = p_path.get_base_dir().plus_file(apk_file_name);
+ String fullpath = get_apk_expansion_fullpath(p_preset, p_path);
String apk_expansion_public_key = p_preset->get("apk_expansion/public_key");
- Error err = save_pack(p_preset, fullpath);
-
- if (err != OK) {
- EditorNode::add_io_error("Could not write expansion package file: " + apk_file_name);
- return err;
- }
command_line_strings.push_back("--use_apk_expansion");
command_line_strings.push_back("--apk_expansion_md5");
@@ -2077,7 +2091,6 @@ public:
copymem(&r_command_line_flags.write[base + 4], command_line_argument.ptr(), length);
}
}
- return OK;
}
Error sign_apk(const Ref<EditorExportPreset> &p_preset, bool p_debug, String apk_path, EditorProgress ep) {
@@ -2171,11 +2184,16 @@ public:
ExportNotifier notifier(*this, p_preset, p_debug, p_path, p_flags);
String src_apk;
+ Error err;
EditorProgress ep("export", "Exporting for Android", 105, true);
bool use_custom_build = bool(p_preset->get("custom_template/use_custom_build"));
+ int export_format = int(p_preset->get("custom_template/export_format"));
bool p_give_internet = p_flags & (DEBUG_FLAG_DUMB_CLIENT | DEBUG_FLAG_REMOTE_DEBUG);
+ bool _signed = p_preset->get("package/signed");
+ bool apk_expansion = p_preset->get("apk_expansion/enable");
+ Vector<String> enabled_abis = get_enabled_abis(p_preset);
Ref<Image> main_image;
Ref<Image> foreground;
@@ -2183,25 +2201,48 @@ public:
load_icon_refs(p_preset, main_image, foreground, background);
+ Vector<uint8_t> command_line_flags;
+ // Write command line flags into the command_line_flags variable.
+ get_command_line_flags(p_preset, p_path, p_flags, command_line_flags);
+
+ if (export_format == 1) {
+ if (!p_path.ends_with(".aab")) {
+ EditorNode::get_singleton()->show_warning(TTR("Invalid filename! Android App Bundle requires the *.aab extension."));
+ return ERR_UNCONFIGURED;
+ }
+ if (apk_expansion) {
+ EditorNode::get_singleton()->show_warning(TTR("APK Expansion not compatible with Android App Bundle."));
+ return ERR_UNCONFIGURED;
+ }
+ }
+ if (export_format == 0 && !p_path.ends_with(".apk")) {
+ EditorNode::get_singleton()->show_warning(
+ TTR("Invalid filename! Android APK requires the *.apk extension."));
+ return ERR_UNCONFIGURED;
+ }
+ if (export_format > 1 || export_format < 0) {
+ EditorNode::add_io_error("Unsupported export format!\n");
+ return ERR_UNCONFIGURED; //TODO: is this the right error?
+ }
+
if (use_custom_build) {
- //re-generate build.gradle and AndroidManifest.xml
- { //test that installed build version is alright
- FileAccessRef f = FileAccess::open("res://android/.build_version", FileAccess::READ);
- if (!f) {
- EditorNode::get_singleton()->show_warning(TTR("Trying to build from a custom built template, but no version info for it exists. Please reinstall from the 'Project' menu."));
- return ERR_UNCONFIGURED;
- }
- String version = f->get_line().strip_edges();
- if (version != VERSION_FULL_CONFIG) {
- EditorNode::get_singleton()->show_warning(vformat(TTR("Android build version mismatch:\n Template installed: %s\n Godot Version: %s\nPlease reinstall Android build template from 'Project' menu."), version, VERSION_FULL_CONFIG));
- return ERR_UNCONFIGURED;
- }
+ //test that installed build version is alright
+ FileAccessRef f = FileAccess::open("res://android/.build_version", FileAccess::READ);
+ if (!f) {
+ EditorNode::get_singleton()->show_warning(TTR("Trying to build from a custom built template, but no version info for it exists. Please reinstall from the 'Project' menu."));
+ return ERR_UNCONFIGURED;
+ }
+ String version = f->get_line().strip_edges();
+ if (version != VERSION_FULL_CONFIG) {
+ EditorNode::get_singleton()->show_warning(vformat(TTR("Android build version mismatch:\n Template installed: %s\n Godot Version: %s\nPlease reinstall Android build template from 'Project' menu."), version, VERSION_FULL_CONFIG));
+ return ERR_UNCONFIGURED;
}
+ String sdk_path = EDITOR_GET("export/android/custom_build_sdk_path");
+ ERR_FAIL_COND_V_MSG(sdk_path == "", ERR_UNCONFIGURED, "Android SDK path must be configured in Editor Settings at 'export/android/custom_build_sdk_path'.");
// TODO: should we use "package/name" or "application/config/name"?
String project_name = get_project_name(p_preset->get("package/name"));
- // instead of calling _fix_resources
- Error err = _create_project_name_strings_files(p_preset, project_name);
+ err = _create_project_name_strings_files(p_preset, project_name); //project name localization.
if (err != OK) {
EditorNode::add_io_error("Unable to overwrite res://android/build/res/*.xml files with project name");
}
@@ -2209,14 +2250,32 @@ public:
_copy_icons_to_gradle_project(p_preset, main_image, foreground, background);
// Write an AndroidManifest.xml file into the Gradle project directory.
_write_tmp_manifest(p_preset, p_give_internet, p_debug);
- //build project if custom build is enabled
- String sdk_path = EDITOR_GET("export/android/custom_build_sdk_path");
- ERR_FAIL_COND_V_MSG(sdk_path == "", ERR_UNCONFIGURED, "Android SDK path must be configured in Editor Settings at 'export/android/custom_build_sdk_path'.");
+ //stores all the project files inside the Gradle project directory. Also includes all ABIs
+ if (!apk_expansion) {
+ DirAccess *da_res = DirAccess::create(DirAccess::ACCESS_RESOURCES);
+ if (da_res->dir_exists("res://android/build/assets")) {
+ DirAccess *da_assets = DirAccess::open("res://android/build/assets");
+ da_assets->erase_contents_recursive();
+ da_res->remove("res://android/build/assets");
+ }
+ err = export_project_files(p_preset, rename_and_store_file_in_gradle_project, NULL, ignore_so_file);
+ if (err != OK) {
+ EditorNode::add_io_error("Could not export project files to gradle project\n");
+ return err;
+ }
+ } else {
+ err = save_apk_expansion_file(p_preset, p_path);
+ if (err != OK) {
+ EditorNode::add_io_error("Could not write expansion package file!");
+ return err;
+ }
+ }
+ store_file_at_path("res://android/build/assets/_cl_", command_line_flags);
OS::get_singleton()->set_environment("ANDROID_HOME", sdk_path); //set and overwrite if required
-
String build_command;
+
#ifdef WINDOWS_ENABLED
build_command = "gradlew.bat";
#else
@@ -2224,12 +2283,12 @@ public:
#endif
String build_path = ProjectSettings::get_singleton()->get_resource_path().plus_file("android/build");
-
build_command = build_path.plus_file(build_command);
String package_name = get_package_name(p_preset->get("package/unique_name"));
String version_code = itos(p_preset->get("version/code"));
String version_name = p_preset->get("version/name");
+ String enabled_abi_string = String("|").join(enabled_abis);
Vector<PluginConfig> enabled_plugins = get_enabled_plugins(p_preset);
String local_plugins_binaries = get_plugins_binaries(BINARY_TYPE_LOCAL, enabled_plugins);
@@ -2241,10 +2300,20 @@ public:
if (clean_build_required) {
cmdline.push_back("clean");
}
- cmdline.push_back("build");
+
+ String build_type = p_debug ? "Debug" : "Release";
+ if (export_format == 1) {
+ String bundle_build_command = vformat("bundle%s", build_type);
+ cmdline.push_back(bundle_build_command);
+ } else if (export_format == 0) {
+ String apk_build_command = vformat("assemble%s", build_type);
+ cmdline.push_back(apk_build_command);
+ }
+
cmdline.push_back("-Pexport_package_name=" + package_name); // argument to specify the package name.
cmdline.push_back("-Pexport_version_code=" + version_code); // argument to specify the version code.
cmdline.push_back("-Pexport_version_name=" + version_name); // argument to specify the version name.
+ cmdline.push_back("-Pexport_enabled_abis=" + enabled_abi_string); // argument to specify enabled ABIs.
cmdline.push_back("-Pplugins_local_binaries=" + local_plugins_binaries); // argument to specify the list of plugins local dependencies.
cmdline.push_back("-Pplugins_remote_binaries=" + remote_plugins_binaries); // argument to specify the list of plugins remote dependencies.
cmdline.push_back("-Pplugins_maven_repos=" + custom_maven_repos); // argument to specify the list of custom maven repos for the plugins dependencies.
@@ -2262,35 +2331,54 @@ public:
EditorNode::get_singleton()->show_warning(TTR("Building of Android project failed, check output for the error.\nAlternatively visit docs.godotengine.org for Android build documentation."));
return ERR_CANT_CREATE;
}
- if (p_debug) {
- src_apk = build_path.plus_file("build/outputs/apk/debug/android_debug.apk");
- } else {
- src_apk = build_path.plus_file("build/outputs/apk/release/android_release.apk");
+
+ List<String> copy_args;
+ String copy_command;
+ if (export_format == 1) {
+ copy_command = vformat("copyAndRename%sAab", build_type);
+ } else if (export_format == 0) {
+ copy_command = vformat("copyAndRename%sApk", build_type);
}
- if (!FileAccess::exists(src_apk)) {
- EditorNode::get_singleton()->show_warning(TTR("No build apk generated at: ") + "\n" + src_apk);
+ copy_args.push_back(copy_command);
+
+ copy_args.push_back("-p"); // argument to specify the start directory.
+ copy_args.push_back(build_path); // start directory.
+
+ String export_filename = p_path.get_file();
+ String export_path = p_path.get_base_dir();
+
+ copy_args.push_back("-Pexport_path=file:" + export_path);
+ copy_args.push_back("-Pexport_filename=" + export_filename);
+
+ int copy_result = EditorNode::get_singleton()->execute_and_show_output(TTR("Moving output"), build_command, copy_args);
+ if (copy_result != 0) {
+ EditorNode::get_singleton()->show_warning(TTR("Unable to copy and rename export file, check gradle project directory for outputs."));
return ERR_CANT_CREATE;
}
-
- } else {
+ if (_signed) {
+ err = sign_apk(p_preset, p_debug, p_path, ep);
+ if (err != OK) {
+ return err;
+ }
+ }
+ return OK;
+ }
+ // This is the start of the Legacy build system
+ if (p_debug)
+ src_apk = p_preset->get("custom_template/debug");
+ else
+ src_apk = p_preset->get("custom_template/release");
+ src_apk = src_apk.strip_edges();
+ if (src_apk == "") {
if (p_debug) {
- src_apk = p_preset->get("custom_template/debug");
+ src_apk = find_export_template("android_debug.apk");
} else {
- src_apk = p_preset->get("custom_template/release");
+ src_apk = find_export_template("android_release.apk");
}
-
- src_apk = src_apk.strip_edges();
if (src_apk == "") {
- if (p_debug) {
- src_apk = find_export_template("android_debug.apk");
- } else {
- src_apk = find_export_template("android_release.apk");
- }
- if (src_apk == "") {
- EditorNode::add_io_error("Package not found: " + src_apk);
- return ERR_FILE_NOT_FOUND;
- }
+ EditorNode::add_io_error("Package not found: " + src_apk);
+ return ERR_FILE_NOT_FOUND;
}
}
@@ -2327,19 +2415,13 @@ public:
zipFile unaligned_apk = zipOpen2(tmp_unaligned_path.utf8().get_data(), APPEND_STATUS_CREATE, nullptr, &io2);
- bool _signed = p_preset->get("package/signed");
String cmdline = p_preset->get("command_line/extra_args");
String version_name = p_preset->get("version/name");
String package_name = p_preset->get("package/unique_name");
- bool apk_expansion = p_preset->get("apk_expansion/enable");
String apk_expansion_pkey = p_preset->get("apk_expansion/public_key");
- Vector<String> enabled_abis = get_enabled_abis(p_preset);
-
- // Prepare images to be resized for the icons. If some image ends up being uninitialized, the default image from the export template will be used.
-
Vector<String> invalid_abis(enabled_abis);
while (ret == UNZ_OK) {
//get filename
@@ -2360,30 +2442,26 @@ public:
unzCloseCurrentFile(pkg);
//write
-
- if (!use_custom_build) {
- if (file == "AndroidManifest.xml") {
- _fix_manifest(p_preset, data, p_give_internet);
- }
- if (file == "resources.arsc") {
- _fix_resources(p_preset, data);
- }
-
- for (int i = 0; i < icon_densities_count; ++i) {
- if (main_image.is_valid() && !main_image->empty()) {
- if (file == launcher_icons[i].export_path) {
- _process_launcher_icons(file, main_image, launcher_icons[i].dimensions, data);
- }
+ if (file == "AndroidManifest.xml") {
+ _fix_manifest(p_preset, data, p_give_internet);
+ }
+ if (file == "resources.arsc") {
+ _fix_resources(p_preset, data);
+ }
+ for (int i = 0; i < icon_densities_count; ++i) {
+ if (main_image.is_valid() && !main_image->empty()) {
+ if (file == launcher_icons[i].export_path) {
+ _process_launcher_icons(file, main_image, launcher_icons[i].dimensions, data);
}
- if (foreground.is_valid() && !foreground->empty()) {
- if (file == launcher_adaptive_icon_foregrounds[i].export_path) {
- _process_launcher_icons(file, foreground, launcher_adaptive_icon_foregrounds[i].dimensions, data);
- }
+ }
+ if (foreground.is_valid() && !foreground->empty()) {
+ if (file == launcher_adaptive_icon_foregrounds[i].export_path) {
+ _process_launcher_icons(file, foreground, launcher_adaptive_icon_foregrounds[i].dimensions, data);
}
- if (background.is_valid() && !background->empty()) {
- if (file == launcher_adaptive_icon_backgrounds[i].export_path) {
- _process_launcher_icons(file, background, launcher_adaptive_icon_backgrounds[i].dimensions, data);
- }
+ }
+ if (background.is_valid() && !background->empty()) {
+ if (file == launcher_adaptive_icon_backgrounds[i].export_path) {
+ _process_launcher_icons(file, background, launcher_adaptive_icon_backgrounds[i].dimensions, data);
}
}
}
@@ -2442,18 +2520,26 @@ public:
if (ep.step("Adding files...", 1)) {
CLEANUP_AND_RETURN(ERR_SKIP);
}
- Error err = OK;
+ err = OK;
if (p_flags & DEBUG_FLAG_DUMB_CLIENT) {
APKExportData ed;
ed.ep = &ep;
ed.apk = unaligned_apk;
err = export_project_files(p_preset, ignore_apk_file, &ed, save_apk_so);
- } else if (!apk_expansion) {
- APKExportData ed;
- ed.ep = &ep;
- ed.apk = unaligned_apk;
- err = export_project_files(p_preset, save_apk_file, &ed, save_apk_so);
+ } else {
+ if (apk_expansion) {
+ err = save_apk_expansion_file(p_preset, p_path);
+ if (err != OK) {
+ EditorNode::add_io_error("Could not write expansion package file!");
+ return err;
+ }
+ } else {
+ APKExportData ed;
+ ed.ep = &ep;
+ ed.apk = unaligned_apk;
+ err = export_project_files(p_preset, save_apk_file, &ed, save_apk_so);
+ }
}
if (err != OK) {
@@ -2462,10 +2548,6 @@ public:
CLEANUP_AND_RETURN(ERR_SKIP);
}
- Vector<uint8_t> command_line_flags;
- // Write command line flags into the command_line_flags variable.
- err = get_command_line_flags(p_preset, p_path, p_flags, command_line_flags);
-
zip_fileinfo zipfi = get_zip_fileinfo();
zipOpenNewFileInZip(unaligned_apk,
"assets/_cl_",
diff --git a/platform/android/java/app/build.gradle b/platform/android/java/app/build.gradle
index 3f8d138e8f..ceacfec9e1 100644
--- a/platform/android/java/app/build.gradle
+++ b/platform/android/java/app/build.gradle
@@ -80,6 +80,11 @@ android {
ignoreAssetsPattern "!.svn:!.git:!.ds_store:!*.scc:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"
}
+ ndk {
+ String[] export_abi_list = getExportEnabledABIs()
+ abiFilters export_abi_list
+ }
+
// Feel free to modify the application id to your own.
applicationId getExportPackageName()
versionCode getExportVersionCode()
@@ -125,3 +130,27 @@ android {
}
}
}
+
+task copyAndRenameDebugApk(type: Copy) {
+ from "$buildDir/outputs/apk/debug/android_debug.apk"
+ into getExportPath()
+ rename "android_debug.apk", getExportFilename()
+}
+
+task copyAndRenameReleaseApk(type: Copy) {
+ from "$buildDir/outputs/apk/release/android_release.apk"
+ into getExportPath()
+ rename "android_release.apk", getExportFilename()
+}
+
+task copyAndRenameDebugAab(type: Copy) {
+ from "$buildDir/outputs/bundle/debug/build-debug.aab"
+ into getExportPath()
+ rename "build-debug.aab", getExportFilename()
+}
+
+task copyAndRenameReleaseAab(type: Copy) {
+ from "$buildDir/outputs/bundle/release/build-release.aab"
+ into getExportPath()
+ rename "build-release.aab", getExportFilename()
+}
diff --git a/platform/android/java/app/config.gradle b/platform/android/java/app/config.gradle
index 7d5d238100..d1176e6196 100644
--- a/platform/android/java/app/config.gradle
+++ b/platform/android/java/app/config.gradle
@@ -46,6 +46,37 @@ ext.getExportVersionName = { ->
final String PLUGIN_VALUE_SEPARATOR_REGEX = "\\|"
+// get the list of ABIs the project should be exported to
+ext.getExportEnabledABIs = { ->
+ String enabledABIs = project.hasProperty("export_enabled_abis") ? project.property("export_enabled_abis") : "";
+ if (enabledABIs == null || enabledABIs.isEmpty()) {
+ enabledABIs = "armeabi-v7a|arm64-v8a|x86|x86_64|"
+ }
+ Set<String> exportAbiFilter = [];
+ for (String abi_name : enabledABIs.split(PLUGIN_VALUE_SEPARATOR_REGEX)) {
+ if (!abi_name.trim().isEmpty()){
+ exportAbiFilter.add(abi_name);
+ }
+ }
+ return exportAbiFilter;
+}
+
+ext.getExportPath = {
+ String exportPath = project.hasProperty("export_path") ? project.property("export_path") : ""
+ if (exportPath == null || exportPath.isEmpty()) {
+ exportPath = "."
+ }
+ return exportPath
+}
+
+ext.getExportFilename = {
+ String exportFilename = project.hasProperty("export_filename") ? project.property("export_filename") : ""
+ if (exportFilename == null || exportFilename.isEmpty()) {
+ exportFilename = "godot_android"
+ }
+ return exportFilename
+}
+
/**
* Parse the project properties for the 'plugins_maven_repos' property and return the list
* of maven repos.
diff --git a/platform/android/logo.png b/platform/android/logo.png
index df445f6a9c..f44d360a25 100644
--- a/platform/android/logo.png
+++ b/platform/android/logo.png
Binary files differ
diff --git a/platform/iphone/godot_view_renderer.mm b/platform/iphone/godot_view_renderer.mm
index 1fc822b457..045fb451f0 100644
--- a/platform/iphone/godot_view_renderer.mm
+++ b/platform/iphone/godot_view_renderer.mm
@@ -44,7 +44,6 @@
@interface GodotViewRenderer ()
-@property(assign, nonatomic) BOOL hasFinishedLocaleSetup;
@property(assign, nonatomic) BOOL hasFinishedProjectDataSetup;
@property(assign, nonatomic) BOOL hasStartedMain;
@property(assign, nonatomic) BOOL hasFinishedSetup;
@@ -58,9 +57,8 @@
return NO;
}
- if (!self.hasFinishedLocaleSetup) {
- [self setupLocaleAndUUID];
- return YES;
+ if (!OS::get_singleton()) {
+ exit(0);
}
if (!self.hasFinishedProjectDataSetup) {
@@ -79,33 +77,6 @@
return NO;
}
-- (void)setupLocaleAndUUID {
- self.hasFinishedLocaleSetup = YES;
-
- if (!OS::get_singleton()) {
- exit(0);
- }
-
- NSString *locale_code = [[NSLocale currentLocale] localeIdentifier];
- OSIPhone::get_singleton()->set_locale(String::utf8([locale_code UTF8String]));
-
- NSString *uuid;
- if ([[UIDevice currentDevice] respondsToSelector:@selector(identifierForVendor)]) {
- uuid = [UIDevice currentDevice].identifierForVendor.UUIDString;
- } else {
- // before iOS 6, so just generate an identifier and store it
- uuid = [[NSUserDefaults standardUserDefaults] objectForKey:@"identiferForVendor"];
- if (!uuid) {
- CFUUIDRef cfuuid = CFUUIDCreate(NULL);
- uuid = [(NSString *)CFUUIDCreateString(NULL, cfuuid) autorelease];
- CFRelease(cfuuid);
- [[NSUserDefaults standardUserDefaults] setObject:uuid forKey:@"identifierForVendor"];
- }
- }
-
- OSIPhone::get_singleton()->set_unique_id(String::utf8([uuid UTF8String]));
-}
-
- (void)setupProjectData {
self.hasFinishedProjectDataSetup = YES;
diff --git a/platform/iphone/logo.png b/platform/iphone/logo.png
index 405b6f93ca..966d8aa70a 100644
--- a/platform/iphone/logo.png
+++ b/platform/iphone/logo.png
Binary files differ
diff --git a/platform/iphone/os_iphone.h b/platform/iphone/os_iphone.h
index f3bde46717..c6f95869ee 100644
--- a/platform/iphone/os_iphone.h
+++ b/platform/iphone/os_iphone.h
@@ -84,8 +84,6 @@ private:
virtual void finalize() override;
String user_data_dir;
- String unique_id;
- String locale_code;
bool is_focused = false;
@@ -118,10 +116,8 @@ public:
void set_user_data_dir(String p_dir);
virtual String get_user_data_dir() const override;
- void set_locale(String p_locale);
virtual String get_locale() const override;
- void set_unique_id(String p_id);
virtual String get_unique_id() const override;
virtual void vibrate_handheld(int p_duration_ms = 500) override;
diff --git a/platform/iphone/os_iphone.mm b/platform/iphone/os_iphone.mm
index f0bbbd39ca..d1a69642b1 100644
--- a/platform/iphone/os_iphone.mm
+++ b/platform/iphone/os_iphone.mm
@@ -46,10 +46,6 @@
#import <UIKit/UIKit.h>
#import <dlfcn.h>
-#if defined(OPENGL_ENABLED)
-#include "drivers/gles2/rasterizer_gles2.h"
-#endif
-
#if defined(VULKAN_ENABLED)
#include "servers/rendering/rasterizer_rd/rasterizer_rd.h"
#import <QuartzCore/CAMetalLayer.h>
@@ -305,20 +301,20 @@ String OSIPhone::get_user_data_dir() const {
return user_data_dir;
}
-void OSIPhone::set_locale(String p_locale) {
- locale_code = p_locale;
-}
-
String OSIPhone::get_locale() const {
- return locale_code;
-}
+ NSString *preferedLanguage = [NSLocale preferredLanguages].firstObject;
+
+ if (preferedLanguage) {
+ return String::utf8([preferedLanguage UTF8String]).replace("-", "_");
+ }
-void OSIPhone::set_unique_id(String p_id) {
- unique_id = p_id;
+ NSString *localeIdentifier = [[NSLocale currentLocale] localeIdentifier];
+ return String::utf8([localeIdentifier UTF8String]).replace("-", "_");
}
String OSIPhone::get_unique_id() const {
- return unique_id;
+ NSString *uuid = [UIDevice currentDevice].identifierForVendor.UUIDString;
+ return String::utf8([uuid UTF8String]);
}
void OSIPhone::vibrate_handheld(int p_duration_ms) {
diff --git a/platform/iphone/platform_config.h b/platform/iphone/platform_config.h
index bc190ba956..2bbbe47c0d 100644
--- a/platform/iphone/platform_config.h
+++ b/platform/iphone/platform_config.h
@@ -30,8 +30,6 @@
#include <alloca.h>
-#define GLES2_INCLUDE_H <ES2/gl.h>
-
#define PLATFORM_REFCOUNT
#define PTHREAD_RENAME_SELF
diff --git a/platform/linuxbsd/display_server_x11.cpp b/platform/linuxbsd/display_server_x11.cpp
index d35941bdcd..e05d540c50 100644
--- a/platform/linuxbsd/display_server_x11.cpp
+++ b/platform/linuxbsd/display_server_x11.cpp
@@ -39,10 +39,6 @@
#include "main/main.h"
#include "scene/resources/texture.h"
-#if defined(OPENGL_ENABLED)
-#include "drivers/gles2/rasterizer_gles2.h"
-#endif
-
#if defined(VULKAN_ENABLED)
#include "servers/rendering/rasterizer_rd/rasterizer_rd.h"
#endif
diff --git a/platform/linuxbsd/os_linuxbsd.cpp b/platform/linuxbsd/os_linuxbsd.cpp
index 8c6f3b1167..e00a32e3ba 100644
--- a/platform/linuxbsd/os_linuxbsd.cpp
+++ b/platform/linuxbsd/os_linuxbsd.cpp
@@ -88,7 +88,9 @@ void OS_LinuxBSD::finalize() {
#endif
#ifdef JOYDEV_ENABLED
- memdelete(joypad);
+ if (joypad) {
+ memdelete(joypad);
+ }
#endif
}
diff --git a/platform/linuxbsd/os_linuxbsd.h b/platform/linuxbsd/os_linuxbsd.h
index 4295721c68..cd4fbd9db5 100644
--- a/platform/linuxbsd/os_linuxbsd.h
+++ b/platform/linuxbsd/os_linuxbsd.h
@@ -48,7 +48,7 @@ class OS_LinuxBSD : public OS_Unix {
bool force_quit;
#ifdef JOYDEV_ENABLED
- JoypadLinux *joypad;
+ JoypadLinux *joypad = nullptr;
#endif
#ifdef ALSA_ENABLED
diff --git a/platform/linuxbsd/platform_config.h b/platform/linuxbsd/platform_config.h
index ac30519132..764666681f 100644
--- a/platform/linuxbsd/platform_config.h
+++ b/platform/linuxbsd/platform_config.h
@@ -35,5 +35,3 @@
#include <stdlib.h>
#define PTHREAD_BSD_SET_NAME
#endif
-
-#define GLES2_INCLUDE_H "thirdparty/glad/glad/glad.h"
diff --git a/platform/osx/detect.py b/platform/osx/detect.py
index 272ae1b620..a4a382f3a9 100644
--- a/platform/osx/detect.py
+++ b/platform/osx/detect.py
@@ -76,6 +76,7 @@ def configure(env):
elif env["target"] == "debug":
env.Prepend(CCFLAGS=["-g3"])
env.Prepend(CPPDEFINES=["DEBUG_ENABLED"])
+ env.Prepend(LINKFLAGS=["-Xlinker", "-no_deduplicate"])
## Architecture
diff --git a/platform/osx/display_server_osx.mm b/platform/osx/display_server_osx.mm
index 4c04151791..c4a5849d43 100644
--- a/platform/osx/display_server_osx.mm
+++ b/platform/osx/display_server_osx.mm
@@ -45,7 +45,6 @@
#include <IOKit/hid/IOHIDLib.h>
#if defined(OPENGL_ENABLED)
-#include "drivers/gles2/rasterizer_gles2.h"
//TODO - reimplement OpenGLES
#import <AppKit/NSOpenGLView.h>
@@ -2375,7 +2374,11 @@ void DisplayServerOSX::_update_window(WindowData p_wd) {
[p_wd.window_object setHidesOnDeactivate:YES];
} else {
// Reset these when our window is not a borderless window that covers up the screen
- [p_wd.window_object setLevel:NSNormalWindowLevel];
+ if (p_wd.on_top) {
+ [p_wd.window_object setLevel:NSFloatingWindowLevel];
+ } else {
+ [p_wd.window_object setLevel:NSNormalWindowLevel];
+ }
[p_wd.window_object setHidesOnDeactivate:NO];
}
}
diff --git a/platform/osx/export/export.cpp b/platform/osx/export/export.cpp
index ae45e0734d..0cf02ef69b 100644
--- a/platform/osx/export/export.cpp
+++ b/platform/osx/export/export.cpp
@@ -95,8 +95,8 @@ protected:
virtual void get_export_options(List<ExportOption> *r_options) override;
public:
- virtual String get_name() const override { return "Mac OSX"; }
- virtual String get_os_name() const override { return "OSX"; }
+ virtual String get_name() const override { return "macOS"; }
+ virtual String get_os_name() const override { return "macOS"; }
virtual Ref<Texture2D> get_logo() const override { return logo; }
virtual List<String> get_binary_extensions(const Ref<EditorExportPreset> &p_preset) const override {
diff --git a/platform/osx/logo.png b/platform/osx/logo.png
index 834bbf3ba6..b5a660b165 100644
--- a/platform/osx/logo.png
+++ b/platform/osx/logo.png
Binary files differ
diff --git a/platform/osx/os_osx.h b/platform/osx/os_osx.h
index 9204a145bf..5a9e43450f 100644
--- a/platform/osx/os_osx.h
+++ b/platform/osx/os_osx.h
@@ -44,7 +44,7 @@ class OS_OSX : public OS_Unix {
bool force_quit;
- JoypadOSX *joypad_osx;
+ JoypadOSX *joypad_osx = nullptr;
#ifdef COREAUDIO_ENABLED
AudioDriverCoreAudio audio_driver;
diff --git a/platform/osx/os_osx.mm b/platform/osx/os_osx.mm
index c4eb5407af..399a29cbe0 100644
--- a/platform/osx/os_osx.mm
+++ b/platform/osx/os_osx.mm
@@ -145,7 +145,9 @@ void OS_OSX::finalize() {
delete_main_loop();
- memdelete(joypad_osx);
+ if (joypad_osx) {
+ memdelete(joypad_osx);
+ }
}
void OS_OSX::set_main_loop(MainLoop *p_main_loop) {
diff --git a/platform/osx/platform_config.h b/platform/osx/platform_config.h
index 155f37ed55..e657aca955 100644
--- a/platform/osx/platform_config.h
+++ b/platform/osx/platform_config.h
@@ -30,5 +30,4 @@
#include <alloca.h>
-#define GLES2_INCLUDE_H "thirdparty/glad/glad/glad.h"
#define PTHREAD_RENAME_SELF
diff --git a/platform/uwp/os_uwp.cpp b/platform/uwp/os_uwp.cpp
index 1dddb07990..401ba6c35d 100644
--- a/platform/uwp/os_uwp.cpp
+++ b/platform/uwp/os_uwp.cpp
@@ -35,7 +35,6 @@
#include "core/io/marshalls.h"
#include "core/project_settings.h"
-#include "drivers/gles2/rasterizer_gles2.h"
#include "drivers/unix/ip_unix.h"
#include "drivers/windows/dir_access_windows.h"
#include "drivers/windows/file_access_windows.h"
diff --git a/platform/windows/detect.py b/platform/windows/detect.py
index 271ffc8871..a9f25fa078 100644
--- a/platform/windows/detect.py
+++ b/platform/windows/detect.py
@@ -183,7 +183,6 @@ def configure_msvc(env, manual_msvc_config):
env.Append(CCFLAGS=["/O2"])
else: # optimize for size
env.Append(CCFLAGS=["/O1"])
- env.Append(LINKFLAGS=["/SUBSYSTEM:WINDOWS"])
env.Append(LINKFLAGS=["/ENTRY:mainCRTStartup"])
env.Append(LINKFLAGS=["/OPT:REF"])
@@ -193,15 +192,15 @@ def configure_msvc(env, manual_msvc_config):
else: # optimize for size
env.Append(CCFLAGS=["/O1"])
env.AppendUnique(CPPDEFINES=["DEBUG_ENABLED"])
- env.Append(LINKFLAGS=["/SUBSYSTEM:CONSOLE"])
env.Append(LINKFLAGS=["/OPT:REF"])
elif env["target"] == "debug":
env.AppendUnique(CCFLAGS=["/Z7", "/Od", "/EHsc"])
env.AppendUnique(CPPDEFINES=["DEBUG_ENABLED"])
- env.Append(LINKFLAGS=["/SUBSYSTEM:CONSOLE"])
env.Append(LINKFLAGS=["/DEBUG"])
+ env.Append(LINKFLAGS=["/SUBSYSTEM:WINDOWS"])
+
if env["debug_symbols"] == "full" or env["debug_symbols"] == "yes":
env.AppendUnique(CCFLAGS=["/Z7"])
env.AppendUnique(LINKFLAGS=["/DEBUG"])
@@ -314,8 +313,6 @@ def configure_mingw(env):
else: # optimize for size
env.Prepend(CCFLAGS=["-Os"])
- env.Append(LINKFLAGS=["-Wl,--subsystem,windows"])
-
if env["debug_symbols"] == "yes":
env.Prepend(CCFLAGS=["-g1"])
if env["debug_symbols"] == "full":
@@ -337,6 +334,8 @@ def configure_mingw(env):
env.Append(CCFLAGS=["-g3"])
env.Append(CPPDEFINES=["DEBUG_ENABLED"])
+ env.Append(LINKFLAGS=["-Wl,--subsystem,windows"])
+
## Compiler configuration
if os.name != "nt":
diff --git a/platform/windows/display_server_windows.cpp b/platform/windows/display_server_windows.cpp
index da2fc1c2c1..cf7bebfbdf 100644
--- a/platform/windows/display_server_windows.cpp
+++ b/platform/windows/display_server_windows.cpp
@@ -1135,10 +1135,17 @@ void DisplayServerWindows::window_set_ime_position(const Point2i &p_pos, WindowI
void DisplayServerWindows::console_set_visible(bool p_enabled) {
_THREAD_SAFE_METHOD_
- if (console_visible == p_enabled)
+ if (console_visible == p_enabled) {
return;
- ShowWindow(GetConsoleWindow(), p_enabled ? SW_SHOW : SW_HIDE);
- console_visible = p_enabled;
+ }
+ if (p_enabled && GetConsoleWindow() == nullptr) { // Open new console if not attached.
+ own_console = true;
+ AllocConsole();
+ }
+ if (own_console) { // Note: Do not hide parent console.
+ ShowWindow(GetConsoleWindow(), p_enabled ? SW_SHOW : SW_HIDE);
+ console_visible = p_enabled;
+ }
}
bool DisplayServerWindows::is_console_visible() const {
@@ -2030,8 +2037,8 @@ LRESULT DisplayServerWindows::WndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARA
Ref<InputEventMouseMotion> mm;
mm.instance();
mm->set_window_id(window_id);
- mm->set_control(GetKeyState(VK_CONTROL) != 0);
- mm->set_shift(GetKeyState(VK_SHIFT) != 0);
+ mm->set_control(GetKeyState(VK_CONTROL) < 0);
+ mm->set_shift(GetKeyState(VK_SHIFT) < 0);
mm->set_alt(alt_mem);
mm->set_pressure(windows[window_id].last_pressure);
@@ -2173,8 +2180,8 @@ LRESULT DisplayServerWindows::WndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARA
mm->set_tilt(Vector2((float)pen_info.tiltX / 90, (float)pen_info.tiltY / 90));
}
- mm->set_control((wParam & MK_CONTROL) != 0);
- mm->set_shift((wParam & MK_SHIFT) != 0);
+ mm->set_control(GetKeyState(VK_CONTROL) < 0);
+ mm->set_shift(GetKeyState(VK_SHIFT) < 0);
mm->set_alt(alt_mem);
mm->set_button_mask(last_button_state);
@@ -3019,7 +3026,18 @@ DisplayServerWindows::DisplayServerWindows(const String &p_rendering_driver, Win
shift_mem = false;
control_mem = false;
meta_mem = false;
- console_visible = IsWindowVisible(GetConsoleWindow());
+
+ if (AttachConsole(ATTACH_PARENT_PROCESS)) {
+ FILE *_file = nullptr;
+ freopen_s(&_file, "CONOUT$", "w", stdout);
+ freopen_s(&_file, "CONOUT$", "w", stderr);
+ freopen_s(&_file, "CONIN$", "r", stdin);
+
+ printf("\n");
+ console_visible = true;
+ } else {
+ console_visible = false;
+ }
hInstance = ((OS_Windows *)OS::get_singleton())->get_hinstance();
pressrc = 0;
diff --git a/platform/windows/display_server_windows.h b/platform/windows/display_server_windows.h
index 7bd93a7086..52f5b0f4a9 100644
--- a/platform/windows/display_server_windows.h
+++ b/platform/windows/display_server_windows.h
@@ -405,6 +405,7 @@ private:
bool drop_events = false;
bool in_dispatch_input_event = false;
bool console_visible = false;
+ bool own_console = false;
WNDCLASSEXW wc;
diff --git a/platform/windows/platform_config.h b/platform/windows/platform_config.h
index 290decac5f..09a16614e0 100644
--- a/platform/windows/platform_config.h
+++ b/platform/windows/platform_config.h
@@ -29,5 +29,3 @@
/*************************************************************************/
#include <malloc.h>
-
-#define GLES2_INCLUDE_H "thirdparty/glad/glad/glad.h"
diff --git a/scene/2d/cpu_particles_2d.cpp b/scene/2d/cpu_particles_2d.cpp
index 526951976e..e3a632c98a 100644
--- a/scene/2d/cpu_particles_2d.cpp
+++ b/scene/2d/cpu_particles_2d.cpp
@@ -749,7 +749,11 @@ void CPUParticles2D::_particles_process(float p_delta) {
p.transform[2] = emission_points.get(random_idx);
if (emission_shape == EMISSION_SHAPE_DIRECTED_POINTS && emission_normals.size() == pc) {
- p.velocity = emission_normals.get(random_idx);
+ Vector2 normal = emission_normals.get(random_idx);
+ Transform2D m2;
+ m2.set_axis(0, normal);
+ m2.set_axis(1, normal.tangent());
+ p.velocity = m2.basis_xform(p.velocity);
}
if (emission_colors.size() == pc) {
diff --git a/scene/3d/cpu_particles_3d.cpp b/scene/3d/cpu_particles_3d.cpp
index 4244a11592..ad8760251f 100644
--- a/scene/3d/cpu_particles_3d.cpp
+++ b/scene/3d/cpu_particles_3d.cpp
@@ -726,13 +726,15 @@ void CPUParticles3D::_particles_process(float p_delta) {
if (emission_shape == EMISSION_SHAPE_DIRECTED_POINTS && emission_normals.size() == pc) {
if (flags[FLAG_DISABLE_Z]) {
- /*
- mat2 rotm;
- ";
- rotm[0] = texelFetch(emission_texture_normal, emission_tex_ofs, 0).xy;
- rotm[1] = rotm[0].yx * vec2(1.0, -1.0);
- VELOCITY.xy = rotm * VELOCITY.xy;
- */
+ Vector3 normal = emission_normals.get(random_idx);
+ Vector2 normal_2d(normal.x, normal.y);
+ Transform2D m2;
+ m2.set_axis(0, normal_2d);
+ m2.set_axis(1, normal_2d.tangent());
+ Vector2 velocity_2d(p.velocity.x, p.velocity.y);
+ velocity_2d = m2.basis_xform(velocity_2d);
+ p.velocity.x = velocity_2d.x;
+ p.velocity.y = velocity_2d.y;
} else {
Vector3 normal = emission_normals.get(random_idx);
Vector3 v0 = Math::abs(normal.z) < 0.999 ? Vector3(0.0, 0.0, 1.0) : Vector3(0, 1.0, 0.0);
diff --git a/scene/3d/light_3d.cpp b/scene/3d/light_3d.cpp
index cc1622722e..2eb12d10fa 100644
--- a/scene/3d/light_3d.cpp
+++ b/scene/3d/light_3d.cpp
@@ -270,6 +270,7 @@ void Light3D::_bind_methods() {
ADD_PROPERTYI(PropertyInfo(Variant::FLOAT, "shadow_normal_bias", PROPERTY_HINT_RANGE, "0,10,0.001"), "set_param", "get_param", PARAM_SHADOW_NORMAL_BIAS);
ADD_PROPERTY(PropertyInfo(Variant::BOOL, "shadow_reverse_cull_face"), "set_shadow_reverse_cull_face", "get_shadow_reverse_cull_face");
ADD_PROPERTYI(PropertyInfo(Variant::FLOAT, "shadow_transmittance_bias", PROPERTY_HINT_RANGE, "-16,16,0.01"), "set_param", "get_param", PARAM_TRANSMITTANCE_BIAS);
+ ADD_PROPERTYI(PropertyInfo(Variant::FLOAT, "shadow_fog_fade", PROPERTY_HINT_RANGE, "0.01,10,0.01"), "set_param", "get_param", PARAM_SHADOW_VOLUMETRIC_FOG_FADE);
ADD_PROPERTYI(PropertyInfo(Variant::FLOAT, "shadow_blur", PROPERTY_HINT_RANGE, "0.1,8,0.01"), "set_param", "get_param", PARAM_SHADOW_BLUR);
ADD_GROUP("Editor", "");
ADD_PROPERTY(PropertyInfo(Variant::BOOL, "editor_only"), "set_editor_only", "is_editor_only");
@@ -292,6 +293,7 @@ void Light3D::_bind_methods() {
BIND_ENUM_CONSTANT(PARAM_SHADOW_BIAS);
BIND_ENUM_CONSTANT(PARAM_SHADOW_PANCAKE_SIZE);
BIND_ENUM_CONSTANT(PARAM_SHADOW_BLUR);
+ BIND_ENUM_CONSTANT(PARAM_SHADOW_VOLUMETRIC_FOG_FADE);
BIND_ENUM_CONSTANT(PARAM_TRANSMITTANCE_BIAS);
BIND_ENUM_CONSTANT(PARAM_MAX);
@@ -345,6 +347,7 @@ Light3D::Light3D(RenderingServer::LightType p_type) {
set_param(PARAM_SHADOW_BIAS, 0.02);
set_param(PARAM_SHADOW_NORMAL_BIAS, 1.0);
set_param(PARAM_TRANSMITTANCE_BIAS, 0.05);
+ set_param(PARAM_SHADOW_VOLUMETRIC_FOG_FADE, 1.0);
set_param(PARAM_SHADOW_FADE_START, 1);
set_disable_scale(true);
}
diff --git a/scene/3d/light_3d.h b/scene/3d/light_3d.h
index f106151472..69c0478b86 100644
--- a/scene/3d/light_3d.h
+++ b/scene/3d/light_3d.h
@@ -58,6 +58,7 @@ public:
PARAM_SHADOW_BIAS = RS::LIGHT_PARAM_SHADOW_BIAS,
PARAM_SHADOW_PANCAKE_SIZE = RS::LIGHT_PARAM_SHADOW_PANCAKE_SIZE,
PARAM_SHADOW_BLUR = RS::LIGHT_PARAM_SHADOW_BLUR,
+ PARAM_SHADOW_VOLUMETRIC_FOG_FADE = RS::LIGHT_PARAM_SHADOW_VOLUMETRIC_FOG_FADE,
PARAM_TRANSMITTANCE_BIAS = RS::LIGHT_PARAM_TRANSMITTANCE_BIAS,
PARAM_MAX = RS::LIGHT_PARAM_MAX
};
diff --git a/scene/gui/line_edit.cpp b/scene/gui/line_edit.cpp
index 5afc1f438e..14167531a5 100644
--- a/scene/gui/line_edit.cpp
+++ b/scene/gui/line_edit.cpp
@@ -578,7 +578,7 @@ void LineEdit::_gui_input(Ref<InputEvent> p_event) {
if (handled) {
accept_event();
- } else if (!k->get_command()) {
+ } else if (!k->get_command() || (k->get_command() && k->get_alt())) {
if (k->get_unicode() >= 32 && k->get_keycode() != KEY_DELETE) {
if (editable) {
selection_delete();
diff --git a/scene/gui/rich_text_label.cpp b/scene/gui/rich_text_label.cpp
index 41cd67dbf1..29337e20f3 100644
--- a/scene/gui/rich_text_label.cpp
+++ b/scene/gui/rich_text_label.cpp
@@ -188,7 +188,7 @@ int RichTextLabel::_process_line(ItemFrame *p_frame, const Vector2 &p_ofs, int &
wofs += line_ofs;
}
- int begin = wofs;
+ int begin = margin;
Ref<Font> cfont = _find_font(it);
if (cfont.is_null()) {
diff --git a/scene/gui/spin_box.cpp b/scene/gui/spin_box.cpp
index 3670f13705..ae2f99e91d 100644
--- a/scene/gui/spin_box.cpp
+++ b/scene/gui/spin_box.cpp
@@ -62,8 +62,8 @@ void SpinBox::_text_entered(const String &p_string) {
Variant value = expr->execute(Array(), nullptr, false);
if (value.get_type() != Variant::NIL) {
set_value(value);
- _value_changed(0);
}
+ _value_changed(0);
}
LineEdit *SpinBox::get_line_edit() {
diff --git a/scene/gui/text_edit.cpp b/scene/gui/text_edit.cpp
index b974dc2897..d6d8e74748 100644
--- a/scene/gui/text_edit.cpp
+++ b/scene/gui/text_edit.cpp
@@ -1631,7 +1631,7 @@ void TextEdit::_notification(int p_what) {
DisplayServer::get_singleton()->window_set_ime_position(get_global_position() + cursor_pos, get_viewport()->get_window_id());
}
- if (DisplayServer::get_singleton()->has_feature(DisplayServer::FEATURE_VIRTUAL_KEYBOARD)) {
+ if (DisplayServer::get_singleton()->has_feature(DisplayServer::FEATURE_VIRTUAL_KEYBOARD) && virtual_keyboard_enabled) {
DisplayServer::get_singleton()->virtual_keyboard_show(get_text(), get_global_rect(), true);
}
} break;
@@ -1647,7 +1647,7 @@ void TextEdit::_notification(int p_what) {
ime_text = "";
ime_selection = Point2();
- if (DisplayServer::get_singleton()->has_feature(DisplayServer::FEATURE_VIRTUAL_KEYBOARD)) {
+ if (DisplayServer::get_singleton()->has_feature(DisplayServer::FEATURE_VIRTUAL_KEYBOARD) && virtual_keyboard_enabled) {
DisplayServer::get_singleton()->virtual_keyboard_hide();
}
} break;
@@ -1872,6 +1872,9 @@ void TextEdit::indent_right() {
for (int i = start_line; i <= end_line; i++) {
String line_text = get_line(i);
+ if (line_text.size() == 0 && is_selection_active()) {
+ continue;
+ }
if (indent_using_spaces) {
// We don't really care where selection is - we just need to know indentation level at the beginning of the line.
int left = _find_first_non_whitespace_column_of_line(line_text);
@@ -3604,7 +3607,7 @@ void TextEdit::_gui_input(const Ref<InputEvent> &p_gui_input) {
return;
}
- if (!keycode_handled && !k->get_command()) { // For German keyboards.
+ if (!keycode_handled && (!k->get_command() || (k->get_command() && k->get_alt()))) { // For German keyboards.
if (k->get_unicode() >= 32) {
if (readonly) {
@@ -6693,6 +6696,10 @@ void TextEdit::set_shortcut_keys_enabled(bool p_enabled) {
_generate_context_menu();
}
+void TextEdit::set_virtual_keyboard_enabled(bool p_enable) {
+ virtual_keyboard_enabled = p_enable;
+}
+
void TextEdit::set_selecting_enabled(bool p_enabled) {
selecting_enabled = p_enabled;
@@ -6711,6 +6718,10 @@ bool TextEdit::is_shortcut_keys_enabled() const {
return shortcut_keys_enabled;
}
+bool TextEdit::is_virtual_keyboard_enabled() const {
+ return virtual_keyboard_enabled;
+}
+
PopupMenu *TextEdit::get_menu() const {
return menu;
}
@@ -6763,6 +6774,8 @@ void TextEdit::_bind_methods() {
ClassDB::bind_method(D_METHOD("is_context_menu_enabled"), &TextEdit::is_context_menu_enabled);
ClassDB::bind_method(D_METHOD("set_shortcut_keys_enabled", "enable"), &TextEdit::set_shortcut_keys_enabled);
ClassDB::bind_method(D_METHOD("is_shortcut_keys_enabled"), &TextEdit::is_shortcut_keys_enabled);
+ ClassDB::bind_method(D_METHOD("set_virtual_keyboard_enabled", "enable"), &TextEdit::set_virtual_keyboard_enabled);
+ ClassDB::bind_method(D_METHOD("is_virtual_keyboard_enabled"), &TextEdit::is_virtual_keyboard_enabled);
ClassDB::bind_method(D_METHOD("set_selecting_enabled", "enable"), &TextEdit::set_selecting_enabled);
ClassDB::bind_method(D_METHOD("is_selecting_enabled"), &TextEdit::is_selecting_enabled);
@@ -6854,6 +6867,7 @@ void TextEdit::_bind_methods() {
ADD_PROPERTY(PropertyInfo(Variant::BOOL, "override_selected_font_color"), "set_override_selected_font_color", "is_overriding_selected_font_color");
ADD_PROPERTY(PropertyInfo(Variant::BOOL, "context_menu_enabled"), "set_context_menu_enabled", "is_context_menu_enabled");
ADD_PROPERTY(PropertyInfo(Variant::BOOL, "shortcut_keys_enabled"), "set_shortcut_keys_enabled", "is_shortcut_keys_enabled");
+ ADD_PROPERTY(PropertyInfo(Variant::BOOL, "virtual_keyboard_enabled"), "set_virtual_keyboard_enabled", "is_virtual_keyboard_enabled");
ADD_PROPERTY(PropertyInfo(Variant::BOOL, "selecting_enabled"), "set_selecting_enabled", "is_selecting_enabled");
ADD_PROPERTY(PropertyInfo(Variant::BOOL, "smooth_scrolling"), "set_smooth_scroll_enable", "is_smooth_scroll_enabled");
ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "v_scroll_speed"), "set_v_scroll_speed", "get_v_scroll_speed");
diff --git a/scene/gui/text_edit.h b/scene/gui/text_edit.h
index 5a6ed99845..a6bc9963cc 100644
--- a/scene/gui/text_edit.h
+++ b/scene/gui/text_edit.h
@@ -386,6 +386,8 @@ private:
bool context_menu_enabled;
bool shortcut_keys_enabled;
+ bool virtual_keyboard_enabled = true;
+
int executing_line;
void _generate_context_menu();
@@ -749,6 +751,9 @@ public:
void set_shortcut_keys_enabled(bool p_enabled);
bool is_shortcut_keys_enabled() const;
+ void set_virtual_keyboard_enabled(bool p_enable);
+ bool is_virtual_keyboard_enabled() const;
+
PopupMenu *get_menu() const;
String get_text_for_completion();
diff --git a/scene/main/node.cpp b/scene/main/node.cpp
index 4dcfcd9d96..653eb698d4 100644
--- a/scene/main/node.cpp
+++ b/scene/main/node.cpp
@@ -2852,6 +2852,7 @@ void Node::_bind_methods() {
BIND_CONSTANT(NOTIFICATION_PATH_CHANGED);
BIND_CONSTANT(NOTIFICATION_INTERNAL_PROCESS);
BIND_CONSTANT(NOTIFICATION_INTERNAL_PHYSICS_PROCESS);
+ BIND_CONSTANT(NOTIFICATION_POST_ENTER_TREE);
BIND_CONSTANT(NOTIFICATION_WM_MOUSE_ENTER);
BIND_CONSTANT(NOTIFICATION_WM_MOUSE_EXIT);
diff --git a/scene/register_scene_types.cpp b/scene/register_scene_types.cpp
index 47b8b6073b..996d249bbf 100644
--- a/scene/register_scene_types.cpp
+++ b/scene/register_scene_types.cpp
@@ -372,7 +372,11 @@ void register_scene_types() {
OS::get_singleton()->yield(); //may take time to init
- AcceptDialog::set_swap_cancel_ok(GLOBAL_DEF_NOVAL("gui/common/swap_cancel_ok", bool(DisplayServer::get_singleton()->get_swap_cancel_ok())));
+ bool swap_cancel_ok = false;
+ if (DisplayServer::get_singleton()) {
+ swap_cancel_ok = GLOBAL_DEF_NOVAL("gui/common/swap_cancel_ok", bool(DisplayServer::get_singleton()->get_swap_cancel_ok()));
+ }
+ AcceptDialog::set_swap_cancel_ok(swap_cancel_ok);
#endif
/* REGISTER 3D */
@@ -912,8 +916,10 @@ void register_scene_types() {
}
}
- // Always make the default theme to avoid invalid default font/icon/style in the given theme
- make_default_theme(default_theme_hidpi, font);
+ // Always make the default theme to avoid invalid default font/icon/style in the given theme.
+ if (RenderingServer::get_singleton()) {
+ make_default_theme(default_theme_hidpi, font);
+ }
if (theme_path != String()) {
Ref<Theme> theme = ResourceLoader::load(theme_path);
diff --git a/scene/resources/box_shape_3d.cpp b/scene/resources/box_shape_3d.cpp
index 69339faf76..e1c8a377c0 100644
--- a/scene/resources/box_shape_3d.cpp
+++ b/scene/resources/box_shape_3d.cpp
@@ -31,7 +31,7 @@
#include "box_shape_3d.h"
#include "servers/physics_server_3d.h"
-Vector<Vector3> BoxShape3D::get_debug_mesh_lines() {
+Vector<Vector3> BoxShape3D::get_debug_mesh_lines() const {
Vector<Vector3> lines;
AABB aabb;
aabb.position = -get_extents();
diff --git a/scene/resources/box_shape_3d.h b/scene/resources/box_shape_3d.h
index 99b6410799..fe634ce568 100644
--- a/scene/resources/box_shape_3d.h
+++ b/scene/resources/box_shape_3d.h
@@ -46,7 +46,7 @@ public:
void set_extents(const Vector3 &p_extents);
Vector3 get_extents() const;
- virtual Vector<Vector3> get_debug_mesh_lines() override;
+ virtual Vector<Vector3> get_debug_mesh_lines() const override;
virtual real_t get_enclosing_radius() const override;
BoxShape3D();
diff --git a/scene/resources/capsule_shape_3d.cpp b/scene/resources/capsule_shape_3d.cpp
index 28fc0d470c..9d1355eec6 100644
--- a/scene/resources/capsule_shape_3d.cpp
+++ b/scene/resources/capsule_shape_3d.cpp
@@ -31,7 +31,7 @@
#include "capsule_shape_3d.h"
#include "servers/physics_server_3d.h"
-Vector<Vector3> CapsuleShape3D::get_debug_mesh_lines() {
+Vector<Vector3> CapsuleShape3D::get_debug_mesh_lines() const {
float radius = get_radius();
float height = get_height();
diff --git a/scene/resources/capsule_shape_3d.h b/scene/resources/capsule_shape_3d.h
index a638618c48..432ca5654e 100644
--- a/scene/resources/capsule_shape_3d.h
+++ b/scene/resources/capsule_shape_3d.h
@@ -49,7 +49,7 @@ public:
void set_height(float p_height);
float get_height() const;
- virtual Vector<Vector3> get_debug_mesh_lines() override;
+ virtual Vector<Vector3> get_debug_mesh_lines() const override;
virtual real_t get_enclosing_radius() const override;
CapsuleShape3D();
diff --git a/scene/resources/concave_polygon_shape_3d.cpp b/scene/resources/concave_polygon_shape_3d.cpp
index 7315945c03..7cbafcbc4d 100644
--- a/scene/resources/concave_polygon_shape_3d.cpp
+++ b/scene/resources/concave_polygon_shape_3d.cpp
@@ -32,7 +32,7 @@
#include "servers/physics_server_3d.h"
-Vector<Vector3> ConcavePolygonShape3D::get_debug_mesh_lines() {
+Vector<Vector3> ConcavePolygonShape3D::get_debug_mesh_lines() const {
Set<DrawEdge> edges;
Vector<Vector3> data = get_faces();
diff --git a/scene/resources/concave_polygon_shape_3d.h b/scene/resources/concave_polygon_shape_3d.h
index a3c10adce2..c17765b9ef 100644
--- a/scene/resources/concave_polygon_shape_3d.h
+++ b/scene/resources/concave_polygon_shape_3d.h
@@ -65,7 +65,7 @@ public:
void set_faces(const Vector<Vector3> &p_faces);
Vector<Vector3> get_faces() const;
- virtual Vector<Vector3> get_debug_mesh_lines() override;
+ virtual Vector<Vector3> get_debug_mesh_lines() const override;
virtual real_t get_enclosing_radius() const override;
ConcavePolygonShape3D();
diff --git a/scene/resources/convex_polygon_shape_3d.cpp b/scene/resources/convex_polygon_shape_3d.cpp
index affeb05a8f..29549e1114 100644
--- a/scene/resources/convex_polygon_shape_3d.cpp
+++ b/scene/resources/convex_polygon_shape_3d.cpp
@@ -32,7 +32,7 @@
#include "core/math/quick_hull.h"
#include "servers/physics_server_3d.h"
-Vector<Vector3> ConvexPolygonShape3D::get_debug_mesh_lines() {
+Vector<Vector3> ConvexPolygonShape3D::get_debug_mesh_lines() const {
Vector<Vector3> points = get_points();
if (points.size() > 3) {
diff --git a/scene/resources/convex_polygon_shape_3d.h b/scene/resources/convex_polygon_shape_3d.h
index 43d8b90740..f436d2f5d4 100644
--- a/scene/resources/convex_polygon_shape_3d.h
+++ b/scene/resources/convex_polygon_shape_3d.h
@@ -46,7 +46,7 @@ public:
void set_points(const Vector<Vector3> &p_points);
Vector<Vector3> get_points() const;
- virtual Vector<Vector3> get_debug_mesh_lines() override;
+ virtual Vector<Vector3> get_debug_mesh_lines() const override;
virtual real_t get_enclosing_radius() const override;
ConvexPolygonShape3D();
diff --git a/scene/resources/cylinder_shape_3d.cpp b/scene/resources/cylinder_shape_3d.cpp
index 44786d6025..ad64541247 100644
--- a/scene/resources/cylinder_shape_3d.cpp
+++ b/scene/resources/cylinder_shape_3d.cpp
@@ -31,7 +31,7 @@
#include "cylinder_shape_3d.h"
#include "servers/physics_server_3d.h"
-Vector<Vector3> CylinderShape3D::get_debug_mesh_lines() {
+Vector<Vector3> CylinderShape3D::get_debug_mesh_lines() const {
float radius = get_radius();
float height = get_height();
diff --git a/scene/resources/cylinder_shape_3d.h b/scene/resources/cylinder_shape_3d.h
index 2564a04a97..e579e1f7cf 100644
--- a/scene/resources/cylinder_shape_3d.h
+++ b/scene/resources/cylinder_shape_3d.h
@@ -48,7 +48,7 @@ public:
void set_height(float p_height);
float get_height() const;
- virtual Vector<Vector3> get_debug_mesh_lines() override;
+ virtual Vector<Vector3> get_debug_mesh_lines() const override;
virtual real_t get_enclosing_radius() const override;
CylinderShape3D();
diff --git a/scene/resources/environment.cpp b/scene/resources/environment.cpp
index 94629a77b9..a174c3eebe 100644
--- a/scene/resources/environment.cpp
+++ b/scene/resources/environment.cpp
@@ -694,150 +694,127 @@ bool Environment::is_fog_enabled() const {
return fog_enabled;
}
-void Environment::set_fog_color(const Color &p_color) {
- fog_color = p_color;
+void Environment::set_fog_light_color(const Color &p_light_color) {
+ fog_light_color = p_light_color;
_update_fog();
}
-
-Color Environment::get_fog_color() const {
- return fog_color;
+Color Environment::get_fog_light_color() const {
+ return fog_light_color;
}
-
-void Environment::set_fog_sun_color(const Color &p_color) {
- fog_sun_color = p_color;
+void Environment::set_fog_light_energy(float p_amount) {
+ fog_light_energy = p_amount;
_update_fog();
}
-
-Color Environment::get_fog_sun_color() const {
- return fog_sun_color;
+float Environment::get_fog_light_energy() const {
+ return fog_light_energy;
}
-
-void Environment::set_fog_sun_amount(float p_amount) {
- fog_sun_amount = p_amount;
+void Environment::set_fog_sun_scatter(float p_amount) {
+ fog_sun_scatter = p_amount;
_update_fog();
}
-
-float Environment::get_fog_sun_amount() const {
- return fog_sun_amount;
+float Environment::get_fog_sun_scatter() const {
+ return fog_sun_scatter;
}
-
-void Environment::_update_fog() {
- RS::get_singleton()->environment_set_fog(
- environment,
- fog_enabled,
- fog_color,
- fog_sun_color,
- fog_sun_amount);
+void Environment::set_fog_density(float p_amount) {
+ fog_density = p_amount;
+ _update_fog();
}
-
-void Environment::set_fog_depth_enabled(bool p_enabled) {
- fog_depth_enabled = p_enabled;
- _update_fog_depth();
+float Environment::get_fog_density() const {
+ return fog_density;
}
-
-bool Environment::is_fog_depth_enabled() const {
- return fog_depth_enabled;
+void Environment::set_fog_height(float p_amount) {
+ fog_height = p_amount;
+ _update_fog();
}
-
-void Environment::set_fog_depth_begin(float p_distance) {
- fog_depth_begin = p_distance;
- _update_fog_depth();
+float Environment::get_fog_height() const {
+ return fog_height;
}
-
-float Environment::get_fog_depth_begin() const {
- return fog_depth_begin;
+void Environment::set_fog_height_density(float p_amount) {
+ fog_height_density = p_amount;
+ _update_fog();
}
-
-void Environment::set_fog_depth_end(float p_distance) {
- fog_depth_end = p_distance;
- _update_fog_depth();
+float Environment::get_fog_height_density() const {
+ return fog_height_density;
}
-float Environment::get_fog_depth_end() const {
- return fog_depth_end;
+void Environment::_update_fog() {
+ RS::get_singleton()->environment_set_fog(
+ environment,
+ fog_enabled,
+ fog_light_color,
+ fog_light_energy,
+ fog_sun_scatter,
+ fog_density,
+ fog_height,
+ fog_height_density);
}
-void Environment::set_fog_depth_curve(float p_curve) {
- fog_depth_curve = p_curve;
- _update_fog_depth();
-}
+// Volumetric Fog
-float Environment::get_fog_depth_curve() const {
- return fog_depth_curve;
+void Environment::_update_volumetric_fog() {
+ RS::get_singleton()->environment_set_volumetric_fog(environment, volumetric_fog_enabled, volumetric_fog_density, volumetric_fog_light, volumetric_fog_light_energy, volumetric_fog_length, volumetric_fog_detail_spread, volumetric_fog_gi_inject, RS::EnvVolumetricFogShadowFilter(volumetric_fog_shadow_filter));
}
-void Environment::set_fog_transmit_enabled(bool p_enabled) {
- fog_transmit_enabled = p_enabled;
- _update_fog_depth();
+void Environment::set_volumetric_fog_enabled(bool p_enable) {
+ volumetric_fog_enabled = p_enable;
+ _update_volumetric_fog();
}
-bool Environment::is_fog_transmit_enabled() const {
- return fog_transmit_enabled;
+bool Environment::is_volumetric_fog_enabled() const {
+ return volumetric_fog_enabled;
}
-
-void Environment::set_fog_transmit_curve(float p_curve) {
- fog_transmit_curve = p_curve;
- _update_fog_depth();
+void Environment::set_volumetric_fog_density(float p_density) {
+ p_density = CLAMP(p_density, 0.0000001, 1.0);
+ volumetric_fog_density = p_density;
+ _update_volumetric_fog();
}
-
-float Environment::get_fog_transmit_curve() const {
- return fog_transmit_curve;
+float Environment::get_volumetric_fog_density() const {
+ return volumetric_fog_density;
}
-
-void Environment::_update_fog_depth() {
- RS::get_singleton()->environment_set_fog_depth(
- environment,
- fog_depth_enabled,
- fog_depth_begin,
- fog_depth_end,
- fog_depth_curve,
- fog_transmit_enabled,
- fog_transmit_curve);
+void Environment::set_volumetric_fog_light(Color p_color) {
+ volumetric_fog_light = p_color;
+ _update_volumetric_fog();
}
-
-void Environment::set_fog_height_enabled(bool p_enabled) {
- fog_height_enabled = p_enabled;
- _update_fog_height();
+Color Environment::get_volumetric_fog_light() const {
+ return volumetric_fog_light;
}
-
-bool Environment::is_fog_height_enabled() const {
- return fog_height_enabled;
+void Environment::set_volumetric_fog_light_energy(float p_begin) {
+ volumetric_fog_light_energy = p_begin;
+ _update_volumetric_fog();
}
-
-void Environment::set_fog_height_min(float p_distance) {
- fog_height_min = p_distance;
- _update_fog_height();
+float Environment::get_volumetric_fog_light_energy() const {
+ return volumetric_fog_light_energy;
}
-
-float Environment::get_fog_height_min() const {
- return fog_height_min;
+void Environment::set_volumetric_fog_length(float p_length) {
+ volumetric_fog_length = p_length;
+ _update_volumetric_fog();
}
-
-void Environment::set_fog_height_max(float p_distance) {
- fog_height_max = p_distance;
- _update_fog_height();
+float Environment::get_volumetric_fog_length() const {
+ return volumetric_fog_length;
}
-
-float Environment::get_fog_height_max() const {
- return fog_height_max;
+void Environment::set_volumetric_fog_detail_spread(float p_detail_spread) {
+ volumetric_fog_detail_spread = p_detail_spread;
+ _update_volumetric_fog();
+}
+float Environment::get_volumetric_fog_detail_spread() const {
+ return volumetric_fog_detail_spread;
}
-void Environment::set_fog_height_curve(float p_distance) {
- fog_height_curve = p_distance;
- _update_fog_height();
+void Environment::set_volumetric_fog_gi_inject(float p_gi_inject) {
+ volumetric_fog_gi_inject = p_gi_inject;
+ _update_volumetric_fog();
+}
+float Environment::get_volumetric_fog_gi_inject() const {
+ return volumetric_fog_gi_inject;
}
-float Environment::get_fog_height_curve() const {
- return fog_height_curve;
+void Environment::set_volumetric_fog_shadow_filter(VolumetricFogShadowFilter p_filter) {
+ volumetric_fog_shadow_filter = p_filter;
+ _update_volumetric_fog();
}
-void Environment::_update_fog_height() {
- RS::get_singleton()->environment_set_fog_height(
- environment,
- fog_height_enabled,
- fog_height_min,
- fog_height_max,
- fog_height_curve);
+Environment::VolumetricFogShadowFilter Environment::get_volumetric_fog_shadow_filter() const {
+ return volumetric_fog_shadow_filter;
}
// Adjustment
@@ -935,6 +912,7 @@ void Environment::_validate_property(PropertyInfo &property) const {
static const char *hide_prefixes[] = {
"fog_",
+ "volumetric_fog_",
"auto_exposure_",
"ss_reflections_",
"ssao_",
@@ -1222,52 +1200,58 @@ void Environment::_bind_methods() {
ClassDB::bind_method(D_METHOD("set_fog_enabled", "enabled"), &Environment::set_fog_enabled);
ClassDB::bind_method(D_METHOD("is_fog_enabled"), &Environment::is_fog_enabled);
- ClassDB::bind_method(D_METHOD("set_fog_color", "color"), &Environment::set_fog_color);
- ClassDB::bind_method(D_METHOD("get_fog_color"), &Environment::get_fog_color);
- ClassDB::bind_method(D_METHOD("set_fog_sun_color", "color"), &Environment::set_fog_sun_color);
- ClassDB::bind_method(D_METHOD("get_fog_sun_color"), &Environment::get_fog_sun_color);
- ClassDB::bind_method(D_METHOD("set_fog_sun_amount", "amount"), &Environment::set_fog_sun_amount);
- ClassDB::bind_method(D_METHOD("get_fog_sun_amount"), &Environment::get_fog_sun_amount);
-
- ClassDB::bind_method(D_METHOD("set_fog_depth_enabled", "enabled"), &Environment::set_fog_depth_enabled);
- ClassDB::bind_method(D_METHOD("is_fog_depth_enabled"), &Environment::is_fog_depth_enabled);
- ClassDB::bind_method(D_METHOD("set_fog_depth_begin", "distance"), &Environment::set_fog_depth_begin);
- ClassDB::bind_method(D_METHOD("get_fog_depth_begin"), &Environment::get_fog_depth_begin);
- ClassDB::bind_method(D_METHOD("set_fog_depth_end", "distance"), &Environment::set_fog_depth_end);
- ClassDB::bind_method(D_METHOD("get_fog_depth_end"), &Environment::get_fog_depth_end);
- ClassDB::bind_method(D_METHOD("set_fog_depth_curve", "curve"), &Environment::set_fog_depth_curve);
- ClassDB::bind_method(D_METHOD("get_fog_depth_curve"), &Environment::get_fog_depth_curve);
- ClassDB::bind_method(D_METHOD("set_fog_transmit_enabled", "enabled"), &Environment::set_fog_transmit_enabled);
- ClassDB::bind_method(D_METHOD("is_fog_transmit_enabled"), &Environment::is_fog_transmit_enabled);
- ClassDB::bind_method(D_METHOD("set_fog_transmit_curve", "curve"), &Environment::set_fog_transmit_curve);
- ClassDB::bind_method(D_METHOD("get_fog_transmit_curve"), &Environment::get_fog_transmit_curve);
-
- ClassDB::bind_method(D_METHOD("set_fog_height_enabled", "enabled"), &Environment::set_fog_height_enabled);
- ClassDB::bind_method(D_METHOD("is_fog_height_enabled"), &Environment::is_fog_height_enabled);
- ClassDB::bind_method(D_METHOD("set_fog_height_min", "height"), &Environment::set_fog_height_min);
- ClassDB::bind_method(D_METHOD("get_fog_height_min"), &Environment::get_fog_height_min);
- ClassDB::bind_method(D_METHOD("set_fog_height_max", "height"), &Environment::set_fog_height_max);
- ClassDB::bind_method(D_METHOD("get_fog_height_max"), &Environment::get_fog_height_max);
- ClassDB::bind_method(D_METHOD("set_fog_height_curve", "curve"), &Environment::set_fog_height_curve);
- ClassDB::bind_method(D_METHOD("get_fog_height_curve"), &Environment::get_fog_height_curve);
+ ClassDB::bind_method(D_METHOD("set_fog_light_color", "light_color"), &Environment::set_fog_light_color);
+ ClassDB::bind_method(D_METHOD("get_fog_light_color"), &Environment::get_fog_light_color);
+ ClassDB::bind_method(D_METHOD("set_fog_light_energy", "light_energy"), &Environment::set_fog_light_energy);
+ ClassDB::bind_method(D_METHOD("get_fog_light_energy"), &Environment::get_fog_light_energy);
+ ClassDB::bind_method(D_METHOD("set_fog_sun_scatter", "sun_scatter"), &Environment::set_fog_sun_scatter);
+ ClassDB::bind_method(D_METHOD("get_fog_sun_scatter"), &Environment::get_fog_sun_scatter);
+
+ ClassDB::bind_method(D_METHOD("set_fog_density", "density"), &Environment::set_fog_density);
+ ClassDB::bind_method(D_METHOD("get_fog_density"), &Environment::get_fog_density);
+
+ ClassDB::bind_method(D_METHOD("set_fog_height", "height"), &Environment::set_fog_height);
+ ClassDB::bind_method(D_METHOD("get_fog_height"), &Environment::get_fog_height);
+
+ ClassDB::bind_method(D_METHOD("set_fog_height_density", "height_density"), &Environment::set_fog_height_density);
+ ClassDB::bind_method(D_METHOD("get_fog_height_density"), &Environment::get_fog_height_density);
ADD_GROUP("Fog", "fog_");
ADD_PROPERTY(PropertyInfo(Variant::BOOL, "fog_enabled"), "set_fog_enabled", "is_fog_enabled");
- ADD_PROPERTY(PropertyInfo(Variant::COLOR, "fog_color"), "set_fog_color", "get_fog_color");
- ADD_PROPERTY(PropertyInfo(Variant::COLOR, "fog_sun_color"), "set_fog_sun_color", "get_fog_sun_color");
- ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "fog_sun_amount", PROPERTY_HINT_RANGE, "0,1,0.01"), "set_fog_sun_amount", "get_fog_sun_amount");
-
- ADD_PROPERTY(PropertyInfo(Variant::BOOL, "fog_depth_enabled"), "set_fog_depth_enabled", "is_fog_depth_enabled");
- ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "fog_depth_begin", PROPERTY_HINT_RANGE, "0,4000,0.1"), "set_fog_depth_begin", "get_fog_depth_begin");
- ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "fog_depth_end", PROPERTY_HINT_RANGE, "0,4000,0.1,or_greater"), "set_fog_depth_end", "get_fog_depth_end");
- ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "fog_depth_curve", PROPERTY_HINT_EXP_EASING), "set_fog_depth_curve", "get_fog_depth_curve");
- ADD_PROPERTY(PropertyInfo(Variant::BOOL, "fog_transmit_enabled"), "set_fog_transmit_enabled", "is_fog_transmit_enabled");
- ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "fog_transmit_curve", PROPERTY_HINT_EXP_EASING), "set_fog_transmit_curve", "get_fog_transmit_curve");
-
- ADD_PROPERTY(PropertyInfo(Variant::BOOL, "fog_height_enabled"), "set_fog_height_enabled", "is_fog_height_enabled");
- ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "fog_height_min", PROPERTY_HINT_RANGE, "-4000,4000,0.1,or_lesser,or_greater"), "set_fog_height_min", "get_fog_height_min");
- ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "fog_height_max", PROPERTY_HINT_RANGE, "-4000,4000,0.1,or_lesser,or_greater"), "set_fog_height_max", "get_fog_height_max");
- ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "fog_height_curve", PROPERTY_HINT_EXP_EASING), "set_fog_height_curve", "get_fog_height_curve");
+ ADD_PROPERTY(PropertyInfo(Variant::COLOR, "fog_light_color", PROPERTY_HINT_COLOR_NO_ALPHA), "set_fog_light_color", "get_fog_light_color");
+ ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "fog_light_energy", PROPERTY_HINT_RANGE, "0,16,0.01,or_greater"), "set_fog_light_energy", "get_fog_light_energy");
+ ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "fog_sun_scatter", PROPERTY_HINT_RANGE, "0,1,0.01,or_greater"), "set_fog_sun_scatter", "get_fog_sun_scatter");
+
+ ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "fog_density", PROPERTY_HINT_RANGE, "0,16,0.0001"), "set_fog_density", "get_fog_density");
+ ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "fog_height", PROPERTY_HINT_RANGE, "-1024,1024,0.01,or_lesser,or_greater"), "set_fog_height", "get_fog_height");
+ ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "fog_height_density", PROPERTY_HINT_RANGE, "0,128,0.001,or_greater"), "set_fog_height_density", "get_fog_height_density");
+
+ ClassDB::bind_method(D_METHOD("set_volumetric_fog_enabled", "enabled"), &Environment::set_volumetric_fog_enabled);
+ ClassDB::bind_method(D_METHOD("is_volumetric_fog_enabled"), &Environment::is_volumetric_fog_enabled);
+ ClassDB::bind_method(D_METHOD("set_volumetric_fog_light", "color"), &Environment::set_volumetric_fog_light);
+ ClassDB::bind_method(D_METHOD("get_volumetric_fog_light"), &Environment::get_volumetric_fog_light);
+ ClassDB::bind_method(D_METHOD("set_volumetric_fog_density", "density"), &Environment::set_volumetric_fog_density);
+ ClassDB::bind_method(D_METHOD("get_volumetric_fog_density"), &Environment::get_volumetric_fog_density);
+ ClassDB::bind_method(D_METHOD("set_volumetric_fog_light_energy", "begin"), &Environment::set_volumetric_fog_light_energy);
+ ClassDB::bind_method(D_METHOD("get_volumetric_fog_light_energy"), &Environment::get_volumetric_fog_light_energy);
+ ClassDB::bind_method(D_METHOD("set_volumetric_fog_length", "length"), &Environment::set_volumetric_fog_length);
+ ClassDB::bind_method(D_METHOD("get_volumetric_fog_length"), &Environment::get_volumetric_fog_length);
+ ClassDB::bind_method(D_METHOD("set_volumetric_fog_detail_spread", "detail_spread"), &Environment::set_volumetric_fog_detail_spread);
+ ClassDB::bind_method(D_METHOD("get_volumetric_fog_detail_spread"), &Environment::get_volumetric_fog_detail_spread);
+ ClassDB::bind_method(D_METHOD("set_volumetric_fog_gi_inject", "gi_inject"), &Environment::set_volumetric_fog_gi_inject);
+ ClassDB::bind_method(D_METHOD("get_volumetric_fog_gi_inject"), &Environment::get_volumetric_fog_gi_inject);
+ ClassDB::bind_method(D_METHOD("set_volumetric_fog_shadow_filter", "shadow_filter"), &Environment::set_volumetric_fog_shadow_filter);
+ ClassDB::bind_method(D_METHOD("get_volumetric_fog_shadow_filter"), &Environment::get_volumetric_fog_shadow_filter);
+
+ ADD_GROUP("Volumetric Fog", "volumetric_fog_");
+ ADD_PROPERTY(PropertyInfo(Variant::BOOL, "volumetric_fog_enabled"), "set_volumetric_fog_enabled", "is_volumetric_fog_enabled");
+ ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "volumetric_fog_density", PROPERTY_HINT_RANGE, "0,1,0.0001,or_greater"), "set_volumetric_fog_density", "get_volumetric_fog_density");
+ ADD_PROPERTY(PropertyInfo(Variant::COLOR, "volumetric_fog_light", PROPERTY_HINT_COLOR_NO_ALPHA), "set_volumetric_fog_light", "get_volumetric_fog_light");
+ ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "volumetric_fog_light_energy", PROPERTY_HINT_RANGE, "0,1024,0.01,or_greater"), "set_volumetric_fog_light_energy", "get_volumetric_fog_light_energy");
+ ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "volumetric_fog_gi_inject", PROPERTY_HINT_EXP_RANGE, "0.00,16,0.01"), "set_volumetric_fog_gi_inject", "get_volumetric_fog_gi_inject");
+ ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "volumetric_fog_length", PROPERTY_HINT_RANGE, "0,1024,0.01,or_greater"), "set_volumetric_fog_length", "get_volumetric_fog_length");
+ ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "volumetric_fog_detail_spread", PROPERTY_HINT_EXP_EASING, "0.01,16,0.01"), "set_volumetric_fog_detail_spread", "get_volumetric_fog_detail_spread");
+ ADD_PROPERTY(PropertyInfo(Variant::INT, "volumetric_fog_shadow_filter", PROPERTY_HINT_ENUM, "Disabled,Low,Medium,High"), "set_volumetric_fog_shadow_filter", "get_volumetric_fog_shadow_filter");
// Adjustment
@@ -1331,6 +1315,11 @@ void Environment::_bind_methods() {
BIND_ENUM_CONSTANT(SDFGI_Y_SCALE_DISABLED);
BIND_ENUM_CONSTANT(SDFGI_Y_SCALE_75_PERCENT);
BIND_ENUM_CONSTANT(SDFGI_Y_SCALE_50_PERCENT);
+
+ BIND_ENUM_CONSTANT(VOLUMETRIC_FOG_SHADOW_FILTER_DISABLED);
+ BIND_ENUM_CONSTANT(VOLUMETRIC_FOG_SHADOW_FILTER_LOW);
+ BIND_ENUM_CONSTANT(VOLUMETRIC_FOG_SHADOW_FILTER_MEDIUM);
+ BIND_ENUM_CONSTANT(VOLUMETRIC_FOG_SHADOW_FILTER_HIGH);
}
Environment::Environment() {
@@ -1344,10 +1333,8 @@ Environment::Environment() {
_update_sdfgi();
_update_glow();
_update_fog();
- _update_fog_depth();
- _update_fog_height();
_update_adjustment();
-
+ _update_volumetric_fog();
_change_notify();
}
diff --git a/scene/resources/environment.h b/scene/resources/environment.h
index f334d22115..d4d84f31aa 100644
--- a/scene/resources/environment.h
+++ b/scene/resources/environment.h
@@ -97,6 +97,13 @@ public:
GLOW_BLEND_MODE_MIX,
};
+ enum VolumetricFogShadowFilter {
+ VOLUMETRIC_FOG_SHADOW_FILTER_DISABLED,
+ VOLUMETRIC_FOG_SHADOW_FILTER_LOW,
+ VOLUMETRIC_FOG_SHADOW_FILTER_MEDIUM,
+ VOLUMETRIC_FOG_SHADOW_FILTER_HIGH,
+ };
+
private:
RID environment;
@@ -177,24 +184,25 @@ private:
// Fog
bool fog_enabled = false;
- Color fog_color = Color(0.5, 0.6, 0.7);
- Color fog_sun_color = Color(1.0, 0.9, 0.7);
- float fog_sun_amount = 0.0;
- void _update_fog();
+ Color fog_light_color = Color(0.5, 0.6, 0.7);
+ float fog_light_energy = 1.0;
+ float fog_sun_scatter = 0.0;
+ float fog_density = 0.001;
+ float fog_height = 0.0;
+ float fog_height_density = 0.0; //can be negative to invert effect
- bool fog_depth_enabled = true;
- float fog_depth_begin = 10.0;
- float fog_depth_end = 100.0;
- float fog_depth_curve = 1.0;
- bool fog_transmit_enabled = false;
- float fog_transmit_curve = 1.0;
- void _update_fog_depth();
+ void _update_fog();
- bool fog_height_enabled = false;
- float fog_height_min = 10.0;
- float fog_height_max = 0.0;
- float fog_height_curve = 1.0;
- void _update_fog_height();
+ // Volumetric Fog
+ bool volumetric_fog_enabled = false;
+ float volumetric_fog_density = 0.01;
+ Color volumetric_fog_light = Color(0.0, 0.0, 0.0);
+ float volumetric_fog_light_energy = 1.0;
+ float volumetric_fog_length = 64.0;
+ float volumetric_fog_detail_spread = 2.0;
+ VolumetricFogShadowFilter volumetric_fog_shadow_filter = VOLUMETRIC_FOG_SHADOW_FILTER_LOW;
+ float volumetric_fog_gi_inject = 0.0;
+ void _update_volumetric_fog();
// Adjustment
bool adjustment_enabled = false;
@@ -344,36 +352,40 @@ public:
float get_glow_hdr_luminance_cap() const;
// Fog
+
void set_fog_enabled(bool p_enabled);
bool is_fog_enabled() const;
- void set_fog_color(const Color &p_color);
- Color get_fog_color() const;
- void set_fog_sun_color(const Color &p_color);
- Color get_fog_sun_color() const;
- void set_fog_sun_amount(float p_amount);
- float get_fog_sun_amount() const;
-
- void set_fog_depth_enabled(bool p_enabled);
- bool is_fog_depth_enabled() const;
- void set_fog_depth_begin(float p_distance);
- float get_fog_depth_begin() const;
- void set_fog_depth_end(float p_distance);
- float get_fog_depth_end() const;
- void set_fog_depth_curve(float p_curve);
- float get_fog_depth_curve() const;
- void set_fog_transmit_enabled(bool p_enabled);
- bool is_fog_transmit_enabled() const;
- void set_fog_transmit_curve(float p_curve);
- float get_fog_transmit_curve() const;
-
- void set_fog_height_enabled(bool p_enabled);
- bool is_fog_height_enabled() const;
- void set_fog_height_min(float p_distance);
- float get_fog_height_min() const;
- void set_fog_height_max(float p_distance);
- float get_fog_height_max() const;
- void set_fog_height_curve(float p_distance);
- float get_fog_height_curve() const;
+ void set_fog_light_color(const Color &p_light_color);
+ Color get_fog_light_color() const;
+ void set_fog_light_energy(float p_amount);
+ float get_fog_light_energy() const;
+ void set_fog_sun_scatter(float p_amount);
+ float get_fog_sun_scatter() const;
+
+ void set_fog_density(float p_amount);
+ float get_fog_density() const;
+ void set_fog_height(float p_amount);
+ float get_fog_height() const;
+ void set_fog_height_density(float p_amount);
+ float get_fog_height_density() const;
+
+ // Volumetric Fog
+ void set_volumetric_fog_enabled(bool p_enable);
+ bool is_volumetric_fog_enabled() const;
+ void set_volumetric_fog_density(float p_density);
+ float get_volumetric_fog_density() const;
+ void set_volumetric_fog_light(Color p_color);
+ Color get_volumetric_fog_light() const;
+ void set_volumetric_fog_light_energy(float p_begin);
+ float get_volumetric_fog_light_energy() const;
+ void set_volumetric_fog_length(float p_length);
+ float get_volumetric_fog_length() const;
+ void set_volumetric_fog_detail_spread(float p_detail_spread);
+ float get_volumetric_fog_detail_spread() const;
+ void set_volumetric_fog_shadow_filter(VolumetricFogShadowFilter p_filter);
+ VolumetricFogShadowFilter get_volumetric_fog_shadow_filter() const;
+ void set_volumetric_fog_gi_inject(float p_gi_inject);
+ float get_volumetric_fog_gi_inject() const;
// Adjustment
void set_adjustment_enabled(bool p_enabled);
@@ -399,5 +411,6 @@ VARIANT_ENUM_CAST(Environment::SSAOBlur)
VARIANT_ENUM_CAST(Environment::SDFGICascades)
VARIANT_ENUM_CAST(Environment::SDFGIYScale)
VARIANT_ENUM_CAST(Environment::GlowBlendMode)
+VARIANT_ENUM_CAST(Environment::VolumetricFogShadowFilter)
#endif // ENVIRONMENT_H
diff --git a/scene/resources/gradient.cpp b/scene/resources/gradient.cpp
index d271c906ff..4bcc52776b 100644
--- a/scene/resources/gradient.cpp
+++ b/scene/resources/gradient.cpp
@@ -141,32 +141,29 @@ void Gradient::set_points(Vector<Gradient::Point> &p_points) {
}
void Gradient::set_offset(int pos, const float offset) {
- ERR_FAIL_COND(pos < 0);
- if (points.size() <= pos) {
- points.resize(pos + 1);
- }
+ ERR_FAIL_INDEX(pos, points.size());
+ _update_sorting();
points.write[pos].offset = offset;
is_sorted = false;
emit_signal(CoreStringNames::get_singleton()->changed);
}
-float Gradient::get_offset(int pos) const {
+float Gradient::get_offset(int pos) {
ERR_FAIL_INDEX_V(pos, points.size(), 0.0);
+ _update_sorting();
return points[pos].offset;
}
void Gradient::set_color(int pos, const Color &color) {
- ERR_FAIL_COND(pos < 0);
- if (points.size() <= pos) {
- points.resize(pos + 1);
- is_sorted = false;
- }
+ ERR_FAIL_INDEX(pos, points.size());
+ _update_sorting();
points.write[pos].color = color;
emit_signal(CoreStringNames::get_singleton()->changed);
}
-Color Gradient::get_color(int pos) const {
+Color Gradient::get_color(int pos) {
ERR_FAIL_INDEX_V(pos, points.size(), Color());
+ _update_sorting();
return points[pos].color;
}
diff --git a/scene/resources/gradient.h b/scene/resources/gradient.h
index d40dcc8d44..6518b13ee8 100644
--- a/scene/resources/gradient.h
+++ b/scene/resources/gradient.h
@@ -49,6 +49,12 @@ public:
private:
Vector<Point> points;
bool is_sorted;
+ _FORCE_INLINE_ void _update_sorting() {
+ if (!is_sorted) {
+ points.sort();
+ is_sorted = true;
+ }
+ }
protected:
static void _bind_methods();
@@ -64,10 +70,10 @@ public:
Vector<Point> &get_points();
void set_offset(int pos, const float offset);
- float get_offset(int pos) const;
+ float get_offset(int pos);
void set_color(int pos, const Color &color);
- Color get_color(int pos) const;
+ Color get_color(int pos);
void set_offsets(const Vector<float> &p_offsets);
Vector<float> get_offsets() const;
@@ -80,10 +86,7 @@ public:
return Color(0, 0, 0, 1);
}
- if (!is_sorted) {
- points.sort();
- is_sorted = true;
- }
+ _update_sorting();
//binary search
int low = 0;
diff --git a/scene/resources/height_map_shape_3d.cpp b/scene/resources/height_map_shape_3d.cpp
index e112c6b436..2ae47bcf3c 100644
--- a/scene/resources/height_map_shape_3d.cpp
+++ b/scene/resources/height_map_shape_3d.cpp
@@ -31,7 +31,7 @@
#include "height_map_shape_3d.h"
#include "servers/physics_server_3d.h"
-Vector<Vector3> HeightMapShape3D::get_debug_mesh_lines() {
+Vector<Vector3> HeightMapShape3D::get_debug_mesh_lines() const {
Vector<Vector3> points;
if ((map_width != 0) && (map_depth != 0)) {
diff --git a/scene/resources/height_map_shape_3d.h b/scene/resources/height_map_shape_3d.h
index c5715a57b1..9ee8b49689 100644
--- a/scene/resources/height_map_shape_3d.h
+++ b/scene/resources/height_map_shape_3d.h
@@ -54,7 +54,7 @@ public:
void set_map_data(PackedFloat32Array p_new);
PackedFloat32Array get_map_data() const;
- virtual Vector<Vector3> get_debug_mesh_lines() override;
+ virtual Vector<Vector3> get_debug_mesh_lines() const override;
virtual real_t get_enclosing_radius() const override;
HeightMapShape3D();
diff --git a/scene/resources/ray_shape_3d.cpp b/scene/resources/ray_shape_3d.cpp
index 17205a500a..39df4c22f9 100644
--- a/scene/resources/ray_shape_3d.cpp
+++ b/scene/resources/ray_shape_3d.cpp
@@ -32,7 +32,7 @@
#include "servers/physics_server_3d.h"
-Vector<Vector3> RayShape3D::get_debug_mesh_lines() {
+Vector<Vector3> RayShape3D::get_debug_mesh_lines() const {
Vector<Vector3> points;
points.push_back(Vector3());
points.push_back(Vector3(0, 0, get_length()));
diff --git a/scene/resources/ray_shape_3d.h b/scene/resources/ray_shape_3d.h
index 6d974a0a4c..a1a6702564 100644
--- a/scene/resources/ray_shape_3d.h
+++ b/scene/resources/ray_shape_3d.h
@@ -48,7 +48,7 @@ public:
void set_slips_on_slope(bool p_active);
bool get_slips_on_slope() const;
- virtual Vector<Vector3> get_debug_mesh_lines() override;
+ virtual Vector<Vector3> get_debug_mesh_lines() const override;
virtual real_t get_enclosing_radius() const override;
RayShape3D();
diff --git a/scene/resources/resource_format_text.cpp b/scene/resources/resource_format_text.cpp
index 93db8b725f..d4d8018d43 100644
--- a/scene/resources/resource_format_text.cpp
+++ b/scene/resources/resource_format_text.cpp
@@ -572,7 +572,7 @@ Error ResourceLoaderText::load() {
}
}
- if (progress) {
+ if (progress && resources_total > 0) {
*progress = resource_current / float(resources_total);
}
}
@@ -640,7 +640,7 @@ Error ResourceLoaderText::load() {
return error;
} else {
error = OK;
- if (progress) {
+ if (progress && resources_total > 0) {
*progress = resource_current / float(resources_total);
}
@@ -674,7 +674,7 @@ Error ResourceLoaderText::load() {
resource_current++;
- if (progress) {
+ if (progress && resources_total > 0) {
*progress = resource_current / float(resources_total);
}
diff --git a/scene/resources/shape_3d.h b/scene/resources/shape_3d.h
index 8a78b41461..eb9607e3a6 100644
--- a/scene/resources/shape_3d.h
+++ b/scene/resources/shape_3d.h
@@ -56,7 +56,7 @@ public:
virtual RID get_rid() const override { return shape; }
Ref<ArrayMesh> get_debug_mesh();
- virtual Vector<Vector3> get_debug_mesh_lines() = 0; // { return Vector<Vector3>(); }
+ virtual Vector<Vector3> get_debug_mesh_lines() const = 0; // { return Vector<Vector3>(); }
/// Returns the radius of a sphere that fully enclose this shape
virtual real_t get_enclosing_radius() const = 0;
diff --git a/scene/resources/sphere_shape_3d.cpp b/scene/resources/sphere_shape_3d.cpp
index d24998ff18..fd33387df6 100644
--- a/scene/resources/sphere_shape_3d.cpp
+++ b/scene/resources/sphere_shape_3d.cpp
@@ -31,7 +31,7 @@
#include "sphere_shape_3d.h"
#include "servers/physics_server_3d.h"
-Vector<Vector3> SphereShape3D::get_debug_mesh_lines() {
+Vector<Vector3> SphereShape3D::get_debug_mesh_lines() const {
float r = get_radius();
Vector<Vector3> points;
diff --git a/scene/resources/sphere_shape_3d.h b/scene/resources/sphere_shape_3d.h
index 78d45b5058..5cad67aea5 100644
--- a/scene/resources/sphere_shape_3d.h
+++ b/scene/resources/sphere_shape_3d.h
@@ -46,7 +46,7 @@ public:
void set_radius(float p_radius);
float get_radius() const;
- virtual Vector<Vector3> get_debug_mesh_lines() override;
+ virtual Vector<Vector3> get_debug_mesh_lines() const override;
virtual real_t get_enclosing_radius() const override;
SphereShape3D();
diff --git a/scene/resources/syntax_highlighter.cpp b/scene/resources/syntax_highlighter.cpp
index 9c8f9334a9..4479b822c0 100644
--- a/scene/resources/syntax_highlighter.cpp
+++ b/scene/resources/syntax_highlighter.cpp
@@ -158,6 +158,10 @@ Dictionary CodeHighlighter::_get_line_syntax_highlighting(int p_line) {
const String &str = text_edit->get_line(p_line);
const int line_length = str.length();
Color prev_color;
+
+ if (in_region != -1 && str.length() == 0) {
+ color_region_cache[p_line] = in_region;
+ }
for (int j = 0; j < line_length; j++) {
Dictionary highlighter_info;
diff --git a/scene/resources/world_margin_shape_3d.cpp b/scene/resources/world_margin_shape_3d.cpp
index d613413b33..0936fcc657 100644
--- a/scene/resources/world_margin_shape_3d.cpp
+++ b/scene/resources/world_margin_shape_3d.cpp
@@ -32,7 +32,7 @@
#include "servers/physics_server_3d.h"
-Vector<Vector3> WorldMarginShape3D::get_debug_mesh_lines() {
+Vector<Vector3> WorldMarginShape3D::get_debug_mesh_lines() const {
Plane p = get_plane();
Vector<Vector3> points;
diff --git a/scene/resources/world_margin_shape_3d.h b/scene/resources/world_margin_shape_3d.h
index c920dc513c..8099592d80 100644
--- a/scene/resources/world_margin_shape_3d.h
+++ b/scene/resources/world_margin_shape_3d.h
@@ -45,7 +45,7 @@ public:
void set_plane(Plane p_plane);
Plane get_plane() const;
- virtual Vector<Vector3> get_debug_mesh_lines() override;
+ virtual Vector<Vector3> get_debug_mesh_lines() const override;
virtual real_t get_enclosing_radius() const override {
// Should be infinite?
return 0;
diff --git a/servers/physics_2d/physics_server_2d_sw.cpp b/servers/physics_2d/physics_server_2d_sw.cpp
index 1ed1ba6958..ffdaab0d92 100644
--- a/servers/physics_2d/physics_server_2d_sw.cpp
+++ b/servers/physics_2d/physics_server_2d_sw.cpp
@@ -821,6 +821,7 @@ void PhysicsServer2DSW::body_apply_torque_impulse(RID p_body, real_t p_torque) {
_update_shapes();
body->apply_torque_impulse(p_torque);
+ body->wakeup();
}
void PhysicsServer2DSW::body_apply_impulse(RID p_body, const Vector2 &p_impulse, const Vector2 &p_position) {
diff --git a/servers/rendering/rasterizer.h b/servers/rendering/rasterizer.h
index 348fc423bb..e1282fdf71 100644
--- a/servers/rendering/rasterizer.h
+++ b/servers/rendering/rasterizer.h
@@ -86,7 +86,13 @@ public:
virtual void environment_set_glow(RID p_env, bool p_enable, int p_level_flags, float p_intensity, float p_strength, float p_mix, float p_bloom_threshold, RS::EnvironmentGlowBlendMode p_blend_mode, float p_hdr_bleed_threshold, float p_hdr_bleed_scale, float p_hdr_luminance_cap) = 0;
virtual void environment_glow_set_use_bicubic_upscale(bool p_enable) = 0;
- virtual void environment_set_fog(RID p_env, bool p_enable, float p_begin, float p_end, RID p_gradient_texture) = 0;
+
+ virtual void environment_set_volumetric_fog(RID p_env, bool p_enable, float p_density, const Color &p_light, float p_light_energy, float p_lenght, float p_detail_spread, float p_gi_inject, RS::EnvVolumetricFogShadowFilter p_shadow_filter) = 0;
+
+ virtual void environment_set_volumetric_fog_volume_size(int p_size, int p_depth) = 0;
+ virtual void environment_set_volumetric_fog_filter_active(bool p_enable) = 0;
+ virtual void environment_set_volumetric_fog_directional_shadow_shrink_size(int p_shrink_size) = 0;
+ virtual void environment_set_volumetric_fog_positional_shadow_shrink_size(int p_shrink_size) = 0;
virtual void environment_set_ssr(RID p_env, bool p_enable, int p_max_steps, float p_fade_int, float p_fade_out, float p_depth_tolerance) = 0;
virtual void environment_set_ssr_roughness_quality(RS::EnvironmentSSRRoughnessQuality p_quality) = 0;
@@ -104,9 +110,7 @@ public:
virtual void environment_set_adjustment(RID p_env, bool p_enable, float p_brightness, float p_contrast, float p_saturation, RID p_ramp) = 0;
- virtual void environment_set_fog(RID p_env, bool p_enable, const Color &p_color, const Color &p_sun_color, float p_sun_amount) = 0;
- virtual void environment_set_fog_depth(RID p_env, bool p_enable, float p_depth_begin, float p_depth_end, float p_depth_curve, bool p_transmit, float p_transmit_curve) = 0;
- virtual void environment_set_fog_height(RID p_env, bool p_enable, float p_min_height, float p_max_height, float p_height_curve) = 0;
+ virtual void environment_set_fog(RID p_env, bool p_enable, const Color &p_light_color, float p_light_energy, float p_sun_scatter, float p_density, float p_height, float p_height_density) = 0;
virtual Ref<Image> environment_bake_panorama(RID p_env, bool p_bake_irradiance, const Size2i &p_size) = 0;
diff --git a/servers/rendering/rasterizer_rd/rasterizer_effects_rd.cpp b/servers/rendering/rasterizer_rd/rasterizer_effects_rd.cpp
index e620ad954d..390272b4b8 100644
--- a/servers/rendering/rasterizer_rd/rasterizer_effects_rd.cpp
+++ b/servers/rendering/rasterizer_rd/rasterizer_effects_rd.cpp
@@ -1229,6 +1229,50 @@ void RasterizerEffectsRD::resolve_gi(RID p_source_depth, RID p_source_normal_rou
RD::get_singleton()->compute_list_end();
}
+void RasterizerEffectsRD::reduce_shadow(RID p_source_shadow, RID p_dest_shadow, const Size2i &p_source_size, const Rect2i &p_source_rect, int p_shrink_limit, RD::ComputeListID compute_list) {
+ uint32_t push_constant[8] = { (uint32_t)p_source_size.x, (uint32_t)p_source_size.y, (uint32_t)p_source_rect.position.x, (uint32_t)p_source_rect.position.y, (uint32_t)p_shrink_limit, 0, 0, 0 };
+
+ RD::get_singleton()->compute_list_bind_compute_pipeline(compute_list, shadow_reduce.pipelines[SHADOW_REDUCE_REDUCE]);
+ RD::get_singleton()->compute_list_bind_uniform_set(compute_list, _get_compute_uniform_set_from_image_pair(p_source_shadow, p_dest_shadow), 0);
+ RD::get_singleton()->compute_list_set_push_constant(compute_list, &push_constant, sizeof(uint32_t) * 8);
+
+ RD::get_singleton()->compute_list_dispatch_threads(compute_list, p_source_rect.size.width, p_source_rect.size.height, 1, 8, 8, 1);
+}
+void RasterizerEffectsRD::filter_shadow(RID p_shadow, RID p_backing_shadow, const Size2i &p_source_size, const Rect2i &p_source_rect, RenderingServer::EnvVolumetricFogShadowFilter p_filter, RD::ComputeListID compute_list, bool p_vertical, bool p_horizontal) {
+ uint32_t push_constant[8] = { (uint32_t)p_source_size.x, (uint32_t)p_source_size.y, (uint32_t)p_source_rect.position.x, (uint32_t)p_source_rect.position.y, 0, 0, 0, 0 };
+
+ switch (p_filter) {
+ case RS::ENV_VOLUMETRIC_FOG_SHADOW_FILTER_DISABLED:
+ case RS::ENV_VOLUMETRIC_FOG_SHADOW_FILTER_LOW: {
+ push_constant[5] = 0;
+ } break;
+ case RS::ENV_VOLUMETRIC_FOG_SHADOW_FILTER_MEDIUM: {
+ push_constant[5] = 9;
+ } break;
+ case RS::ENV_VOLUMETRIC_FOG_SHADOW_FILTER_HIGH: {
+ push_constant[5] = 18;
+ } break;
+ }
+
+ RD::get_singleton()->compute_list_bind_compute_pipeline(compute_list, shadow_reduce.pipelines[SHADOW_REDUCE_FILTER]);
+ if (p_vertical) {
+ push_constant[6] = 1;
+ push_constant[7] = 0;
+ RD::get_singleton()->compute_list_bind_uniform_set(compute_list, _get_compute_uniform_set_from_image_pair(p_shadow, p_backing_shadow), 0);
+ RD::get_singleton()->compute_list_set_push_constant(compute_list, &push_constant, sizeof(uint32_t) * 8);
+ RD::get_singleton()->compute_list_dispatch_threads(compute_list, p_source_rect.size.width, p_source_rect.size.height, 1, 8, 8, 1);
+ }
+ if (p_vertical && p_horizontal) {
+ RD::get_singleton()->compute_list_add_barrier(compute_list);
+ }
+ if (p_horizontal) {
+ push_constant[6] = 0;
+ push_constant[7] = 1;
+ RD::get_singleton()->compute_list_bind_uniform_set(compute_list, _get_compute_uniform_set_from_image_pair(p_backing_shadow, p_shadow), 0);
+ RD::get_singleton()->compute_list_set_push_constant(compute_list, &push_constant, sizeof(uint32_t) * 8);
+ RD::get_singleton()->compute_list_dispatch_threads(compute_list, p_source_rect.size.width, p_source_rect.size.height, 1, 8, 8, 1);
+ }
+}
RasterizerEffectsRD::RasterizerEffectsRD() {
{ // Initialize copy
Vector<String> copy_modes;
@@ -1560,6 +1604,20 @@ RasterizerEffectsRD::RasterizerEffectsRD() {
}
}
+ {
+ Vector<String> shadow_reduce_modes;
+ shadow_reduce_modes.push_back("\n#define MODE_REDUCE\n");
+ shadow_reduce_modes.push_back("\n#define MODE_FILTER\n");
+
+ shadow_reduce.shader.initialize(shadow_reduce_modes);
+
+ shadow_reduce.shader_version = shadow_reduce.shader.version_create();
+
+ for (int i = 0; i < SHADOW_REDUCE_MAX; i++) {
+ shadow_reduce.pipelines[i] = RD::get_singleton()->compute_pipeline_create(shadow_reduce.shader.version_get_shader(shadow_reduce.shader_version, i));
+ }
+ }
+
RD::SamplerState sampler;
sampler.mag_filter = RD::SAMPLER_FILTER_LINEAR;
sampler.min_filter = RD::SAMPLER_FILTER_LINEAR;
@@ -1624,4 +1682,5 @@ RasterizerEffectsRD::~RasterizerEffectsRD() {
ssr_scale.shader.version_free(ssr_scale.shader_version);
sss.shader.version_free(sss.shader_version);
tonemap.shader.version_free(tonemap.shader_version);
+ shadow_reduce.shader.version_free(shadow_reduce.shader_version);
}
diff --git a/servers/rendering/rasterizer_rd/rasterizer_effects_rd.h b/servers/rendering/rasterizer_rd/rasterizer_effects_rd.h
index 80849654de..2ba9610498 100644
--- a/servers/rendering/rasterizer_rd/rasterizer_effects_rd.h
+++ b/servers/rendering/rasterizer_rd/rasterizer_effects_rd.h
@@ -46,6 +46,7 @@
#include "servers/rendering/rasterizer_rd/shaders/screen_space_reflection.glsl.gen.h"
#include "servers/rendering/rasterizer_rd/shaders/screen_space_reflection_filter.glsl.gen.h"
#include "servers/rendering/rasterizer_rd/shaders/screen_space_reflection_scale.glsl.gen.h"
+#include "servers/rendering/rasterizer_rd/shaders/shadow_reduce.glsl.gen.h"
#include "servers/rendering/rasterizer_rd/shaders/specular_merge.glsl.gen.h"
#include "servers/rendering/rasterizer_rd/shaders/ssao.glsl.gen.h"
#include "servers/rendering/rasterizer_rd/shaders/ssao_blur.glsl.gen.h"
@@ -534,6 +535,18 @@ class RasterizerEffectsRD {
RID pipelines[RESOLVE_MODE_MAX]; //3 quality levels
} resolve;
+ enum ShadowReduceMode {
+ SHADOW_REDUCE_REDUCE,
+ SHADOW_REDUCE_FILTER,
+ SHADOW_REDUCE_MAX
+ };
+
+ struct ShadowReduce {
+ ShadowReduceShaderRD shader;
+ RID shader_version;
+ RID pipelines[2];
+ } shadow_reduce;
+
RID default_sampler;
RID default_mipmap_sampler;
RID index_buffer;
@@ -633,6 +646,9 @@ public:
void resolve_gi(RID p_source_depth, RID p_source_normal_roughness, RID p_source_giprobe, RID p_dest_depth, RID p_dest_normal_roughness, RID p_dest_giprobe, Vector2i p_screen_size, int p_samples);
+ void reduce_shadow(RID p_source_shadow, RID p_dest_shadow, const Size2i &p_source_size, const Rect2i &p_source_rect, int p_shrink_limit, RenderingDevice::ComputeListID compute_list);
+ void filter_shadow(RID p_shadow, RID p_backing_shadow, const Size2i &p_source_size, const Rect2i &p_source_rect, RS::EnvVolumetricFogShadowFilter p_filter, RenderingDevice::ComputeListID compute_list, bool p_vertical = true, bool p_horizontal = true);
+
RasterizerEffectsRD();
~RasterizerEffectsRD();
};
diff --git a/servers/rendering/rasterizer_rd/rasterizer_scene_high_end_rd.cpp b/servers/rendering/rasterizer_rd/rasterizer_scene_high_end_rd.cpp
index 8c122983da..f65c5d5de3 100644
--- a/servers/rendering/rasterizer_rd/rasterizer_scene_high_end_rd.cpp
+++ b/servers/rendering/rasterizer_rd/rasterizer_scene_high_end_rd.cpp
@@ -1145,12 +1145,20 @@ void RasterizerSceneHighEndRD::_setup_environment(RID p_environment, RID p_rende
scene_state.ubo.time = time;
scene_state.ubo.gi_upscale_for_msaa = false;
+ scene_state.ubo.volumetric_fog_enabled = false;
+ scene_state.ubo.fog_enabled = false;
if (p_render_buffers.is_valid()) {
RenderBufferDataHighEnd *render_buffers = (RenderBufferDataHighEnd *)render_buffers_get_data(p_render_buffers);
if (render_buffers->msaa != RS::VIEWPORT_MSAA_DISABLED) {
scene_state.ubo.gi_upscale_for_msaa = true;
}
+
+ if (render_buffers_has_volumetric_fog(p_render_buffers)) {
+ scene_state.ubo.volumetric_fog_enabled = true;
+ scene_state.ubo.volumetric_fog_inv_length = 1.0 / render_buffers_get_volumetric_fog_end(p_render_buffers);
+ scene_state.ubo.volumetric_fog_detail_spread = 1.0 / render_buffers_get_volumetric_fog_detail_spread(p_render_buffers); //reverse lookup
+ }
}
#if 0
if (p_render_buffers.is_valid() && render_buffers_is_sdfgi_enabled(p_render_buffers)) {
@@ -1265,12 +1273,29 @@ void RasterizerSceneHighEndRD::_setup_environment(RID p_environment, RID p_rende
scene_state.ubo.ssao_ao_affect = environment_get_ssao_ao_affect(p_environment);
scene_state.ubo.ssao_light_affect = environment_get_ssao_light_affect(p_environment);
- Color ao_color = environment_get_ao_color(p_environment);
+ Color ao_color = environment_get_ao_color(p_environment).to_linear();
scene_state.ubo.ao_color[0] = ao_color.r;
scene_state.ubo.ao_color[1] = ao_color.g;
scene_state.ubo.ao_color[2] = ao_color.b;
scene_state.ubo.ao_color[3] = ao_color.a;
+ scene_state.ubo.fog_enabled = environment_is_fog_enabled(p_environment);
+ scene_state.ubo.fog_density = environment_get_fog_density(p_environment);
+ scene_state.ubo.fog_height = environment_get_fog_height(p_environment);
+ scene_state.ubo.fog_height_density = environment_get_fog_height_density(p_environment);
+ if (scene_state.ubo.fog_height_density >= 0.0001) {
+ scene_state.ubo.fog_height_density = 1.0 / scene_state.ubo.fog_height_density;
+ }
+
+ Color fog_color = environment_get_fog_light_color(p_environment).to_linear();
+ float fog_energy = environment_get_fog_light_energy(p_environment);
+
+ scene_state.ubo.fog_light_color[0] = fog_color.r * fog_energy;
+ scene_state.ubo.fog_light_color[1] = fog_color.g * fog_energy;
+ scene_state.ubo.fog_light_color[2] = fog_color.b * fog_energy;
+
+ scene_state.ubo.fog_sun_scatter = environment_get_fog_sun_scatter(p_environment);
+
} else {
if (p_reflection_probe.is_valid() && storage->reflection_probe_is_interior(reflection_probe_instance_get_probe(p_reflection_probe))) {
scene_state.ubo.use_ambient_light = false;
@@ -1754,6 +1779,7 @@ void RasterizerSceneHighEndRD::_render_scene(RID p_render_buffer, const Transfor
RD::get_singleton()->draw_list_end();
if (render_buffer && render_buffer->msaa != RS::VIEWPORT_MSAA_DISABLED) {
+ RENDER_TIMESTAMP("Resolve Depth Pre-Pass");
if (depth_pass_mode == PASS_MODE_DEPTH_NORMAL_ROUGHNESS || depth_pass_mode == PASS_MODE_DEPTH_NORMAL_ROUGHNESS_GIPROBE) {
static int texture_samples[RS::VIEWPORT_MSAA_MAX] = { 1, 2, 4, 8, 16 };
storage->get_effects()->resolve_gi(render_buffer->depth_msaa, render_buffer->normal_roughness_buffer_msaa, using_giprobe ? render_buffer->giprobe_buffer_msaa : RID(), render_buffer->depth, render_buffer->normal_roughness_buffer, using_giprobe ? render_buffer->giprobe_buffer : RID(), Vector2i(render_buffer->width, render_buffer->height), texture_samples[render_buffer->msaa]);
@@ -2502,7 +2528,17 @@ void RasterizerSceneHighEndRD::_update_render_buffers_uniform_set(RID p_render_b
u.ids.push_back(render_buffers_get_gi_probe_buffer(p_render_buffers));
uniforms.push_back(u);
}
-
+ {
+ RD::Uniform u;
+ u.binding = 10;
+ u.type = RD::UNIFORM_TYPE_TEXTURE;
+ RID vfog = render_buffers_get_volumetric_fog_texture(p_render_buffers);
+ if (vfog.is_null()) {
+ vfog = storage->texture_rd_get_default(RasterizerStorageRD::DEFAULT_RD_TEXTURE_3D_WHITE);
+ }
+ u.ids.push_back(vfog);
+ uniforms.push_back(u);
+ }
rb->uniform_set = RD::get_singleton()->uniform_set_create(uniforms, default_shader_rd, RENDER_BUFFERS_UNIFORM_SET);
}
}
@@ -2815,6 +2851,13 @@ RasterizerSceneHighEndRD::RasterizerSceneHighEndRD(RasterizerStorageRD *p_storag
u.ids.push_back(render_buffers_get_default_gi_probe_buffer());
uniforms.push_back(u);
}
+ {
+ RD::Uniform u;
+ u.binding = 10;
+ u.type = RD::UNIFORM_TYPE_TEXTURE;
+ u.ids.push_back(storage->texture_rd_get_default(RasterizerStorageRD::DEFAULT_RD_TEXTURE_3D_WHITE));
+ uniforms.push_back(u);
+ }
default_render_buffers_uniform_set = RD::get_singleton()->uniform_set_create(uniforms, default_shader_rd, RENDER_BUFFERS_UNIFORM_SET);
}
diff --git a/servers/rendering/rasterizer_rd/rasterizer_scene_high_end_rd.h b/servers/rendering/rasterizer_rd/rasterizer_scene_high_end_rd.h
index a49173de98..1aad9039ff 100644
--- a/servers/rendering/rasterizer_rd/rasterizer_scene_high_end_rd.h
+++ b/servers/rendering/rasterizer_rd/rasterizer_scene_high_end_rd.h
@@ -359,6 +359,21 @@ class RasterizerSceneHighEndRD : public RasterizerSceneRD {
int32_t sdf_size[3];
uint32_t gi_upscale_for_msaa;
+
+ uint32_t volumetric_fog_enabled;
+ float volumetric_fog_inv_length;
+ float volumetric_fog_detail_spread;
+ uint32_t volumetric_fog_pad;
+
+ // Fog
+
+ uint32_t fog_enabled;
+ float fog_density;
+ float fog_height;
+ float fog_height_density;
+
+ float fog_light_color[3];
+ float fog_sun_scatter;
};
UBO ubo;
diff --git a/servers/rendering/rasterizer_rd/rasterizer_scene_rd.cpp b/servers/rendering/rasterizer_rd/rasterizer_scene_rd.cpp
index bdf9b71c56..5e39455c29 100644
--- a/servers/rendering/rasterizer_rd/rasterizer_scene_rd.cpp
+++ b/servers/rendering/rasterizer_rd/rasterizer_scene_rd.cpp
@@ -227,6 +227,7 @@ void RasterizerSceneRD::_sdfgi_erase(RenderBuffers *rb) {
RD::get_singleton()->free(rb->sdfgi->lightprobe_data);
RD::get_singleton()->free(rb->sdfgi->lightprobe_history_scroll);
RD::get_singleton()->free(rb->sdfgi->occlusion_data);
+ RD::get_singleton()->free(rb->sdfgi->ambient_texture);
RD::get_singleton()->free(rb->sdfgi->cascades_ubo);
@@ -371,6 +372,16 @@ void RasterizerSceneRD::sdfgi_update(RID p_render_buffers, RID p_environment, co
RD::TextureView tv;
tv.format_override = RD::DATA_FORMAT_E5B9G9R9_UFLOAT_PACK32;
sdfgi->lightprobe_texture = RD::get_singleton()->texture_create_shared(tv, sdfgi->lightprobe_data);
+
+ //texture handling ambient data, to integrate with volumetric foc
+ RD::TextureFormat tf_ambient = tf_probes;
+ tf_ambient.array_layers = sdfgi->cascades.size();
+ tf_ambient.format = RD::DATA_FORMAT_R16G16B16A16_SFLOAT; //pack well with RGBE
+ tf_ambient.width = sdfgi->probe_axis_count * sdfgi->probe_axis_count;
+ tf_ambient.height = sdfgi->probe_axis_count;
+ tf_ambient.type = RD::TEXTURE_TYPE_2D_ARRAY;
+ //lightprobe texture is an octahedral texture
+ sdfgi->ambient_texture = RD::get_singleton()->texture_create(tf_ambient, RD::TextureView());
}
sdfgi->cascades_ubo = RD::get_singleton()->uniform_buffer_create(sizeof(SDFGI::Cascade::UBO) * SDFGI::MAX_CASCADES);
@@ -930,6 +941,13 @@ void RasterizerSceneRD::sdfgi_update(RID p_render_buffers, RID p_environment, co
u.ids.push_back(parent_average);
uniforms.push_back(u);
}
+ {
+ RD::Uniform u;
+ u.type = RD::UNIFORM_TYPE_IMAGE;
+ u.binding = 14;
+ u.ids.push_back(sdfgi->ambient_texture);
+ uniforms.push_back(u);
+ }
sdfgi->cascades[i].integrate_uniform_set = RD::get_singleton()->uniform_set_create(uniforms, sdfgi_shader.integrate.version_get_shader(sdfgi_shader.integrate_shader, 0), 0);
}
@@ -1282,6 +1300,7 @@ void RasterizerSceneRD::sdfgi_update_probes(RID p_render_buffers, RID p_environm
push_constant.ray_bias = rb->sdfgi->probe_bias;
push_constant.image_size[0] = rb->sdfgi->probe_axis_count * rb->sdfgi->probe_axis_count;
push_constant.image_size[1] = rb->sdfgi->probe_axis_count;
+ push_constant.store_ambient_texture = env->volumetric_fog_enabled;
RID sky_uniform_set = sdfgi_shader.integrate_default_sky_uniform_set;
push_constant.sky_mode = SDGIShader::IntegratePushConstant::SKY_MODE_DISABLED;
@@ -1375,6 +1394,96 @@ void RasterizerSceneRD::sdfgi_update_probes(RID p_render_buffers, RID p_environm
RENDER_TIMESTAMP("<SDFGI Update Probes");
}
+void RasterizerSceneRD::_setup_giprobes(RID p_render_buffers, const Transform &p_transform, RID *p_gi_probe_cull_result, int p_gi_probe_cull_count, uint32_t &r_gi_probes_used) {
+ r_gi_probes_used = 0;
+ RenderBuffers *rb = render_buffers_owner.getornull(p_render_buffers);
+ ERR_FAIL_COND(rb == nullptr);
+
+ RID gi_probe_buffer = render_buffers_get_gi_probe_buffer(p_render_buffers);
+ GI::GIProbeData gi_probe_data[RenderBuffers::MAX_GIPROBES];
+
+ bool giprobes_changed = false;
+
+ Transform to_camera;
+ to_camera.origin = p_transform.origin; //only translation, make local
+
+ for (int i = 0; i < RenderBuffers::MAX_GIPROBES; i++) {
+ RID texture;
+ if (i < p_gi_probe_cull_count) {
+ GIProbeInstance *gipi = gi_probe_instance_owner.getornull(p_gi_probe_cull_result[i]);
+
+ if (gipi) {
+ texture = gipi->texture;
+ GI::GIProbeData &gipd = gi_probe_data[i];
+
+ RID base_probe = gipi->probe;
+
+ Transform to_cell = storage->gi_probe_get_to_cell_xform(gipi->probe) * gipi->transform.affine_inverse() * to_camera;
+
+ gipd.xform[0] = to_cell.basis.elements[0][0];
+ gipd.xform[1] = to_cell.basis.elements[1][0];
+ gipd.xform[2] = to_cell.basis.elements[2][0];
+ gipd.xform[3] = 0;
+ gipd.xform[4] = to_cell.basis.elements[0][1];
+ gipd.xform[5] = to_cell.basis.elements[1][1];
+ gipd.xform[6] = to_cell.basis.elements[2][1];
+ gipd.xform[7] = 0;
+ gipd.xform[8] = to_cell.basis.elements[0][2];
+ gipd.xform[9] = to_cell.basis.elements[1][2];
+ gipd.xform[10] = to_cell.basis.elements[2][2];
+ gipd.xform[11] = 0;
+ gipd.xform[12] = to_cell.origin.x;
+ gipd.xform[13] = to_cell.origin.y;
+ gipd.xform[14] = to_cell.origin.z;
+ gipd.xform[15] = 1;
+
+ Vector3 bounds = storage->gi_probe_get_octree_size(base_probe);
+
+ gipd.bounds[0] = bounds.x;
+ gipd.bounds[1] = bounds.y;
+ gipd.bounds[2] = bounds.z;
+
+ gipd.dynamic_range = storage->gi_probe_get_dynamic_range(base_probe) * storage->gi_probe_get_energy(base_probe);
+ gipd.bias = storage->gi_probe_get_bias(base_probe);
+ gipd.normal_bias = storage->gi_probe_get_normal_bias(base_probe);
+ gipd.blend_ambient = !storage->gi_probe_is_interior(base_probe);
+ gipd.anisotropy_strength = 0;
+ gipd.ao = storage->gi_probe_get_ao(base_probe);
+ gipd.ao_size = Math::pow(storage->gi_probe_get_ao_size(base_probe), 4.0f);
+ gipd.mipmaps = gipi->mipmaps.size();
+ }
+
+ r_gi_probes_used++;
+ }
+
+ if (texture == RID()) {
+ texture = storage->texture_rd_get_default(RasterizerStorageRD::DEFAULT_RD_TEXTURE_3D_WHITE);
+ }
+
+ if (texture != rb->giprobe_textures[i]) {
+ giprobes_changed = true;
+ rb->giprobe_textures[i] = texture;
+ }
+ }
+
+ if (giprobes_changed) {
+ RD::get_singleton()->free(rb->gi_uniform_set);
+ rb->gi_uniform_set = RID();
+ if (rb->volumetric_fog) {
+ if (RD::get_singleton()->uniform_set_is_valid(rb->volumetric_fog->uniform_set)) {
+ RD::get_singleton()->free(rb->volumetric_fog->uniform_set);
+ RD::get_singleton()->free(rb->volumetric_fog->uniform_set2);
+ }
+ rb->volumetric_fog->uniform_set = RID();
+ rb->volumetric_fog->uniform_set2 = RID();
+ }
+ }
+
+ if (p_gi_probe_cull_count > 0) {
+ RD::get_singleton()->buffer_update(gi_probe_buffer, 0, sizeof(GI::GIProbeData) * MIN(RenderBuffers::MAX_GIPROBES, p_gi_probe_cull_count), gi_probe_data, true);
+ }
+}
+
void RasterizerSceneRD::_process_gi(RID p_render_buffers, RID p_normal_roughness_buffer, RID p_ambient_buffer, RID p_reflection_buffer, RID p_gi_probe_buffer, RID p_environment, const CameraMatrix &p_projection, const Transform &p_transform, RID *p_gi_probe_cull_result, int p_gi_probe_cull_count) {
RENDER_TIMESTAMP("Render GI");
@@ -1490,81 +1599,6 @@ void RasterizerSceneRD::_process_gi(RID p_render_buffers, RID p_normal_roughness
RD::get_singleton()->buffer_update(gi.sdfgi_ubo, 0, sizeof(GI::SDFGIData), &sdfgi_data, true);
}
- {
- RID gi_probe_buffer = render_buffers_get_gi_probe_buffer(p_render_buffers);
- GI::GIProbeData gi_probe_data[RenderBuffers::MAX_GIPROBES];
-
- bool giprobes_changed = false;
-
- Transform to_camera;
- to_camera.origin = p_transform.origin; //only translation, make local
-
- for (int i = 0; i < RenderBuffers::MAX_GIPROBES; i++) {
- RID texture;
- if (i < p_gi_probe_cull_count) {
- GIProbeInstance *gipi = gi_probe_instance_owner.getornull(p_gi_probe_cull_result[i]);
-
- if (gipi) {
- texture = gipi->texture;
- GI::GIProbeData &gipd = gi_probe_data[i];
-
- RID base_probe = gipi->probe;
-
- Transform to_cell = storage->gi_probe_get_to_cell_xform(gipi->probe) * gipi->transform.affine_inverse() * to_camera;
-
- gipd.xform[0] = to_cell.basis.elements[0][0];
- gipd.xform[1] = to_cell.basis.elements[1][0];
- gipd.xform[2] = to_cell.basis.elements[2][0];
- gipd.xform[3] = 0;
- gipd.xform[4] = to_cell.basis.elements[0][1];
- gipd.xform[5] = to_cell.basis.elements[1][1];
- gipd.xform[6] = to_cell.basis.elements[2][1];
- gipd.xform[7] = 0;
- gipd.xform[8] = to_cell.basis.elements[0][2];
- gipd.xform[9] = to_cell.basis.elements[1][2];
- gipd.xform[10] = to_cell.basis.elements[2][2];
- gipd.xform[11] = 0;
- gipd.xform[12] = to_cell.origin.x;
- gipd.xform[13] = to_cell.origin.y;
- gipd.xform[14] = to_cell.origin.z;
- gipd.xform[15] = 1;
-
- Vector3 bounds = storage->gi_probe_get_octree_size(base_probe);
-
- gipd.bounds[0] = bounds.x;
- gipd.bounds[1] = bounds.y;
- gipd.bounds[2] = bounds.z;
-
- gipd.dynamic_range = storage->gi_probe_get_dynamic_range(base_probe) * storage->gi_probe_get_energy(base_probe);
- gipd.bias = storage->gi_probe_get_bias(base_probe);
- gipd.normal_bias = storage->gi_probe_get_normal_bias(base_probe);
- gipd.blend_ambient = !storage->gi_probe_is_interior(base_probe);
- gipd.anisotropy_strength = 0;
- gipd.ao = storage->gi_probe_get_ao(base_probe);
- gipd.ao_size = Math::pow(storage->gi_probe_get_ao_size(base_probe), 4.0f);
- }
- }
-
- if (texture == RID()) {
- texture = storage->texture_rd_get_default(RasterizerStorageRD::DEFAULT_RD_TEXTURE_3D_WHITE);
- }
-
- if (texture != rb->giprobe_textures[i]) {
- giprobes_changed = true;
- rb->giprobe_textures[i] = texture;
- }
- }
-
- if (giprobes_changed) {
- RD::get_singleton()->free(rb->gi_uniform_set);
- rb->gi_uniform_set = RID();
- }
-
- if (p_gi_probe_cull_count > 0) {
- RD::get_singleton()->buffer_update(gi_probe_buffer, 0, sizeof(GI::GIProbeData) * MIN(RenderBuffers::MAX_GIPROBES, p_gi_probe_cull_count), gi_probe_data, true);
- }
- }
-
if (rb->gi_uniform_set.is_null() || !RD::get_singleton()->uniform_set_is_valid(rb->gi_uniform_set)) {
Vector<RD::Uniform> uniforms;
{
@@ -2880,6 +2914,99 @@ void RasterizerSceneRD::environment_set_sdfgi(RID p_env, bool p_enable, RS::Envi
env->sdfgi_y_scale = p_y_scale;
}
+void RasterizerSceneRD::environment_set_fog(RID p_env, bool p_enable, const Color &p_light_color, float p_light_energy, float p_sun_scatter, float p_density, float p_height, float p_height_density) {
+ Environment *env = environment_owner.getornull(p_env);
+ ERR_FAIL_COND(!env);
+
+ env->fog_enabled = p_enable;
+ env->fog_light_color = p_light_color;
+ env->fog_light_energy = p_light_energy;
+ env->fog_sun_scatter = p_sun_scatter;
+ env->fog_density = p_density;
+ env->fog_height = p_height;
+ env->fog_height_density = p_height_density;
+}
+
+bool RasterizerSceneRD::environment_is_fog_enabled(RID p_env) const {
+ const Environment *env = environment_owner.getornull(p_env);
+ ERR_FAIL_COND_V(!env, false);
+
+ return env->fog_enabled;
+}
+Color RasterizerSceneRD::environment_get_fog_light_color(RID p_env) const {
+ const Environment *env = environment_owner.getornull(p_env);
+ ERR_FAIL_COND_V(!env, Color());
+ return env->fog_light_color;
+}
+float RasterizerSceneRD::environment_get_fog_light_energy(RID p_env) const {
+ const Environment *env = environment_owner.getornull(p_env);
+ ERR_FAIL_COND_V(!env, 0);
+ return env->fog_light_energy;
+}
+float RasterizerSceneRD::environment_get_fog_sun_scatter(RID p_env) const {
+ const Environment *env = environment_owner.getornull(p_env);
+ ERR_FAIL_COND_V(!env, 0);
+ return env->fog_sun_scatter;
+}
+float RasterizerSceneRD::environment_get_fog_density(RID p_env) const {
+ const Environment *env = environment_owner.getornull(p_env);
+ ERR_FAIL_COND_V(!env, 0);
+ return env->fog_density;
+}
+float RasterizerSceneRD::environment_get_fog_height(RID p_env) const {
+ const Environment *env = environment_owner.getornull(p_env);
+ ERR_FAIL_COND_V(!env, 0);
+
+ return env->fog_height;
+}
+float RasterizerSceneRD::environment_get_fog_height_density(RID p_env) const {
+ const Environment *env = environment_owner.getornull(p_env);
+ ERR_FAIL_COND_V(!env, 0);
+ return env->fog_height_density;
+}
+
+void RasterizerSceneRD::environment_set_volumetric_fog(RID p_env, bool p_enable, float p_density, const Color &p_light, float p_light_energy, float p_lenght, float p_detail_spread, float p_gi_inject, RenderingServer::EnvVolumetricFogShadowFilter p_shadow_filter) {
+ Environment *env = environment_owner.getornull(p_env);
+ ERR_FAIL_COND(!env);
+
+ env->volumetric_fog_enabled = p_enable;
+ env->volumetric_fog_density = p_density;
+ env->volumetric_fog_light = p_light;
+ env->volumetric_fog_light_energy = p_light_energy;
+ env->volumetric_fog_length = p_lenght;
+ env->volumetric_fog_detail_spread = p_detail_spread;
+ env->volumetric_fog_shadow_filter = p_shadow_filter;
+ env->volumetric_fog_gi_inject = p_gi_inject;
+}
+
+void RasterizerSceneRD::environment_set_volumetric_fog_volume_size(int p_size, int p_depth) {
+ volumetric_fog_size = p_size;
+ volumetric_fog_depth = p_depth;
+}
+
+void RasterizerSceneRD::environment_set_volumetric_fog_filter_active(bool p_enable) {
+ volumetric_fog_filter_active = p_enable;
+}
+void RasterizerSceneRD::environment_set_volumetric_fog_directional_shadow_shrink_size(int p_shrink_size) {
+ p_shrink_size = nearest_power_of_2_templated(p_shrink_size);
+ if (volumetric_fog_directional_shadow_shrink == (uint32_t)p_shrink_size) {
+ return;
+ }
+
+ _clear_shadow_shrink_stages(directional_shadow.shrink_stages);
+}
+void RasterizerSceneRD::environment_set_volumetric_fog_positional_shadow_shrink_size(int p_shrink_size) {
+ p_shrink_size = nearest_power_of_2_templated(p_shrink_size);
+ if (volumetric_fog_positional_shadow_shrink == (uint32_t)p_shrink_size) {
+ return;
+ }
+
+ for (uint32_t i = 0; i < shadow_atlas_owner.get_rid_count(); i++) {
+ ShadowAtlas *sa = shadow_atlas_owner.get_ptr_by_index(i);
+ _clear_shadow_shrink_stages(sa->shrink_stages);
+ }
+}
+
void RasterizerSceneRD::environment_set_sdfgi_ray_count(RS::EnvironmentSDFGIRayCount p_ray_count) {
sdfgi_ray_count = p_ray_count;
}
@@ -3286,6 +3413,7 @@ void RasterizerSceneRD::shadow_atlas_set_size(RID p_atlas, int p_size) {
if (shadow_atlas->depth.is_valid()) {
RD::get_singleton()->free(shadow_atlas->depth);
shadow_atlas->depth = RID();
+ _clear_shadow_shrink_stages(shadow_atlas->shrink_stages);
}
for (int i = 0; i < 4; i++) {
//clear subdivisions
@@ -3579,6 +3707,7 @@ void RasterizerSceneRD::directional_shadow_atlas_set_size(int p_size) {
if (directional_shadow.depth.is_valid()) {
RD::get_singleton()->free(directional_shadow.depth);
+ _clear_shadow_shrink_stages(directional_shadow.shrink_stages);
directional_shadow.depth = RID();
}
@@ -4951,6 +5080,8 @@ void RasterizerSceneRD::_process_ssao(RID p_render_buffers, RID p_environment, R
Environment *env = environment_owner.getornull(p_environment);
ERR_FAIL_COND(!env);
+ RENDER_TIMESTAMP("Process SSAO");
+
if (rb->ssao.ao[0].is_valid() && rb->ssao.ao_full.is_valid() != ssao_half_size) {
RD::get_singleton()->free(rb->ssao.depth);
RD::get_singleton()->free(rb->ssao.ao[0]);
@@ -5463,6 +5594,30 @@ RID RasterizerSceneRD::render_buffers_get_sdfgi_occlusion_texture(RID p_render_b
return rb->sdfgi->occlusion_texture;
}
+bool RasterizerSceneRD::render_buffers_has_volumetric_fog(RID p_render_buffers) const {
+ const RenderBuffers *rb = render_buffers_owner.getornull(p_render_buffers);
+ ERR_FAIL_COND_V(!rb, false);
+
+ return rb->volumetric_fog != nullptr;
+}
+RID RasterizerSceneRD::render_buffers_get_volumetric_fog_texture(RID p_render_buffers) {
+ const RenderBuffers *rb = render_buffers_owner.getornull(p_render_buffers);
+ ERR_FAIL_COND_V(!rb || !rb->volumetric_fog, RID());
+
+ return rb->volumetric_fog->fog_map;
+}
+
+float RasterizerSceneRD::render_buffers_get_volumetric_fog_end(RID p_render_buffers) {
+ const RenderBuffers *rb = render_buffers_owner.getornull(p_render_buffers);
+ ERR_FAIL_COND_V(!rb || !rb->volumetric_fog, 0);
+ return rb->volumetric_fog->length;
+}
+float RasterizerSceneRD::render_buffers_get_volumetric_fog_detail_spread(RID p_render_buffers) {
+ const RenderBuffers *rb = render_buffers_owner.getornull(p_render_buffers);
+ ERR_FAIL_COND_V(!rb || !rb->volumetric_fog, 0);
+ return rb->volumetric_fog->spread;
+}
+
void RasterizerSceneRD::render_buffers_configure(RID p_render_buffers, RID p_render_target, int p_width, int p_height, RS::ViewportMSAA p_msaa, RenderingServer::ViewportScreenSpaceAA p_screen_space_aa) {
RenderBuffers *rb = render_buffers_owner.getornull(p_render_buffers);
rb->width = p_width;
@@ -5679,9 +5834,10 @@ void RasterizerSceneRD::_setup_reflections(RID *p_reflection_probe_cull_result,
}
}
-void RasterizerSceneRD::_setup_lights(RID *p_light_cull_result, int p_light_cull_count, const Transform &p_camera_inverse_transform, RID p_shadow_atlas, bool p_using_shadows, uint32_t &r_directional_light_count) {
+void RasterizerSceneRD::_setup_lights(RID *p_light_cull_result, int p_light_cull_count, const Transform &p_camera_inverse_transform, RID p_shadow_atlas, bool p_using_shadows, uint32_t &r_directional_light_count, uint32_t &r_positional_light_count) {
uint32_t light_count = 0;
r_directional_light_count = 0;
+ r_positional_light_count = 0;
sky_scene_state.directional_light_count = 0;
for (int i = 0; i < p_light_cull_count; i++) {
@@ -5797,7 +5953,7 @@ void RasterizerSceneRD::_setup_lights(RID *p_light_cull_result, int p_light_cull
light_data.shadow_bias[j] = storage->light_get_param(base, RS::LIGHT_PARAM_SHADOW_BIAS) * bias_scale;
light_data.shadow_normal_bias[j] = storage->light_get_param(base, RS::LIGHT_PARAM_SHADOW_NORMAL_BIAS) * light_instance_get_directional_shadow_texel_size(li, j);
light_data.shadow_transmittance_bias[j] = storage->light_get_transmittance_bias(base) * bias_scale;
- light_data.shadow_transmittance_z_scale[j] = light_instance_get_shadow_range(li, j);
+ light_data.shadow_z_range[j] = light_instance_get_shadow_range(li, j);
light_data.shadow_range_begin[j] = light_instance_get_shadow_range_begin(li, j);
RasterizerStorageRD::store_camera(shadow_mtx, light_data.shadow_matrices[j]);
@@ -5826,6 +5982,7 @@ void RasterizerSceneRD::_setup_lights(RID *p_light_cull_result, int p_light_cull
float fade_start = storage->light_get_param(base, RS::LIGHT_PARAM_SHADOW_FADE_START);
light_data.fade_from = -light_data.shadow_split_offsets[3] * MIN(fade_start, 0.999); //using 1.0 would break smoothstep
light_data.fade_to = -light_data.shadow_split_offsets[3];
+ light_data.shadow_volumetric_fog_fade = 1.0 / storage->light_get_shadow_volumetric_fog_fade(base);
light_data.soft_shadow_scale = storage->light_get_param(base, RS::LIGHT_PARAM_SHADOW_BLUR);
light_data.softshadow_angle = angular_diameter;
@@ -5867,6 +6024,7 @@ void RasterizerSceneRD::_setup_lights(RID *p_light_cull_result, int p_light_cull
Transform light_transform = light_instance_get_base_transform(li);
Cluster::LightData &light_data = cluster.lights[light_count];
+ cluster.lights_instances[light_count] = li;
float sign = storage->light_is_negative(base) ? -1 : 1;
Color linear_col = storage->light_get_color(base).to_linear();
@@ -5965,6 +6123,7 @@ void RasterizerSceneRD::_setup_lights(RID *p_light_cull_result, int p_light_cull
light_data.atlas_rect[3] = rect.size.height;
light_data.soft_shadow_scale = storage->light_get_param(base, RS::LIGHT_PARAM_SHADOW_BLUR);
+ light_data.shadow_volumetric_fog_fade = 1.0 / storage->light_get_shadow_volumetric_fog_fade(base);
if (type == RS::LIGHT_OMNI) {
light_data.atlas_rect[3] *= 0.5; //one paraboloid on top of another
@@ -6005,6 +6164,7 @@ void RasterizerSceneRD::_setup_lights(RID *p_light_cull_result, int p_light_cull
cluster.builder.add_light(type == RS::LIGHT_SPOT ? LightClusterBuilder::LIGHT_TYPE_SPOT : LightClusterBuilder::LIGHT_TYPE_OMNI, light_transform, radius, spot_angle);
light_count++;
+ r_positional_light_count++;
} break;
}
@@ -6152,6 +6312,526 @@ void RasterizerSceneRD::_setup_decals(const RID *p_decal_instances, int p_decal_
}
}
+void RasterizerSceneRD::_volumetric_fog_erase(RenderBuffers *rb) {
+ ERR_FAIL_COND(!rb->volumetric_fog);
+
+ RD::get_singleton()->free(rb->volumetric_fog->light_density_map);
+ RD::get_singleton()->free(rb->volumetric_fog->fog_map);
+ memdelete(rb->volumetric_fog);
+ rb->volumetric_fog = nullptr;
+}
+
+void RasterizerSceneRD::_allocate_shadow_shrink_stages(RID p_base, int p_base_size, Vector<ShadowShrinkStage> &shrink_stages, uint32_t p_target_size) {
+ //create fog mipmaps
+ uint32_t fog_texture_size = p_target_size;
+ uint32_t base_texture_size = p_base_size;
+
+ ShadowShrinkStage first;
+ first.size = base_texture_size;
+ first.texture = p_base;
+ shrink_stages.push_back(first); //put depth first in case we dont find smaller ones
+
+ while (fog_texture_size < base_texture_size) {
+ base_texture_size = MAX(base_texture_size / 8, fog_texture_size);
+
+ ShadowShrinkStage s;
+ s.size = base_texture_size;
+
+ RD::TextureFormat tf;
+ tf.format = RD::DATA_FORMAT_R32_SFLOAT;
+ tf.width = base_texture_size;
+ tf.height = base_texture_size;
+ tf.usage_bits = RD::TEXTURE_USAGE_STORAGE_BIT;
+
+ if (base_texture_size == fog_texture_size) {
+ s.filter_texture = RD::get_singleton()->texture_create(tf, RD::TextureView());
+ tf.usage_bits |= RD::TEXTURE_USAGE_SAMPLING_BIT;
+ }
+
+ s.texture = RD::get_singleton()->texture_create(tf, RD::TextureView());
+
+ shrink_stages.push_back(s);
+ }
+}
+
+void RasterizerSceneRD::_clear_shadow_shrink_stages(Vector<ShadowShrinkStage> &shrink_stages) {
+ for (int i = 1; i < shrink_stages.size(); i++) {
+ RD::get_singleton()->free(shrink_stages[i].texture);
+ if (shrink_stages[i].filter_texture.is_valid()) {
+ RD::get_singleton()->free(shrink_stages[i].filter_texture);
+ }
+ }
+ shrink_stages.clear();
+}
+
+void RasterizerSceneRD::_update_volumetric_fog(RID p_render_buffers, RID p_environment, const CameraMatrix &p_cam_projection, const Transform &p_cam_transform, RID p_shadow_atlas, int p_directional_light_count, bool p_use_directional_shadows, int p_positional_light_count, int p_gi_probe_count) {
+ RenderBuffers *rb = render_buffers_owner.getornull(p_render_buffers);
+ ERR_FAIL_COND(!rb);
+ Environment *env = environment_owner.getornull(p_environment);
+
+ float ratio = float(rb->width) / float((rb->width + rb->height) / 2);
+ uint32_t target_width = uint32_t(float(volumetric_fog_size) * ratio);
+ uint32_t target_height = uint32_t(float(volumetric_fog_size) / ratio);
+
+ if (rb->volumetric_fog) {
+ //validate
+ if (!env || !env->volumetric_fog_enabled || rb->volumetric_fog->width != target_width || rb->volumetric_fog->height != target_height || rb->volumetric_fog->depth != volumetric_fog_depth) {
+ _volumetric_fog_erase(rb);
+ _render_buffers_uniform_set_changed(p_render_buffers);
+ }
+ }
+
+ if (!env || !env->volumetric_fog_enabled) {
+ //no reason to enable or update, bye
+ return;
+ }
+
+ if (env && env->volumetric_fog_enabled && !rb->volumetric_fog) {
+ //required volumetric fog but not existing, create
+ rb->volumetric_fog = memnew(VolumetricFog);
+ rb->volumetric_fog->width = target_width;
+ rb->volumetric_fog->height = target_height;
+ rb->volumetric_fog->depth = volumetric_fog_depth;
+
+ RD::TextureFormat tf;
+ tf.format = RD::DATA_FORMAT_R16G16B16A16_SFLOAT;
+ tf.width = target_width;
+ tf.height = target_height;
+ tf.depth = volumetric_fog_depth;
+ tf.type = RD::TEXTURE_TYPE_3D;
+ tf.usage_bits = RD::TEXTURE_USAGE_STORAGE_BIT;
+
+ rb->volumetric_fog->light_density_map = RD::get_singleton()->texture_create(tf, RD::TextureView());
+
+ tf.usage_bits |= RD::TEXTURE_USAGE_SAMPLING_BIT;
+
+ rb->volumetric_fog->fog_map = RD::get_singleton()->texture_create(tf, RD::TextureView());
+ _render_buffers_uniform_set_changed(p_render_buffers);
+ }
+
+ //update directional shadow
+
+ if (p_use_directional_shadows) {
+ if (directional_shadow.shrink_stages.empty()) {
+ if (rb->volumetric_fog->uniform_set.is_valid() && RD::get_singleton()->uniform_set_is_valid(rb->volumetric_fog->uniform_set)) {
+ //invalidate uniform set, we will need a new one
+ RD::get_singleton()->free(rb->volumetric_fog->uniform_set);
+ rb->volumetric_fog->uniform_set = RID();
+ }
+ _allocate_shadow_shrink_stages(directional_shadow.depth, directional_shadow.size, directional_shadow.shrink_stages, volumetric_fog_directional_shadow_shrink);
+ }
+
+ if (directional_shadow.shrink_stages.size() > 1) {
+ RD::ComputeListID compute_list = RD::get_singleton()->compute_list_begin();
+ for (int i = 1; i < directional_shadow.shrink_stages.size(); i++) {
+ int32_t src_size = directional_shadow.shrink_stages[i - 1].size;
+ int32_t dst_size = directional_shadow.shrink_stages[i].size;
+ Rect2i r(0, 0, src_size, src_size);
+ int32_t shrink_limit = 8 / (src_size / dst_size);
+
+ storage->get_effects()->reduce_shadow(directional_shadow.shrink_stages[i - 1].texture, directional_shadow.shrink_stages[i].texture, Size2i(src_size, src_size), r, shrink_limit, compute_list);
+ RD::get_singleton()->compute_list_add_barrier(compute_list);
+ if (env->volumetric_fog_shadow_filter != RS::ENV_VOLUMETRIC_FOG_SHADOW_FILTER_DISABLED && directional_shadow.shrink_stages[i].filter_texture.is_valid()) {
+ Rect2i rf(0, 0, dst_size, dst_size);
+ storage->get_effects()->filter_shadow(directional_shadow.shrink_stages[i].texture, directional_shadow.shrink_stages[i].filter_texture, Size2i(dst_size, dst_size), rf, env->volumetric_fog_shadow_filter, compute_list);
+ }
+ }
+ RD::get_singleton()->compute_list_end();
+ }
+ }
+
+ ShadowAtlas *shadow_atlas = shadow_atlas_owner.getornull(p_shadow_atlas);
+
+ if (shadow_atlas) {
+ //shrink shadows that need to be shrunk
+
+ bool force_shrink_shadows = false;
+
+ if (shadow_atlas->shrink_stages.empty()) {
+ if (rb->volumetric_fog->uniform_set.is_valid() && RD::get_singleton()->uniform_set_is_valid(rb->volumetric_fog->uniform_set)) {
+ //invalidate uniform set, we will need a new one
+ RD::get_singleton()->free(rb->volumetric_fog->uniform_set);
+ rb->volumetric_fog->uniform_set = RID();
+ }
+ _allocate_shadow_shrink_stages(shadow_atlas->depth, shadow_atlas->size, shadow_atlas->shrink_stages, volumetric_fog_positional_shadow_shrink);
+ force_shrink_shadows = true;
+ }
+
+ if (rb->volumetric_fog->last_shadow_filter != env->volumetric_fog_shadow_filter) {
+ //if shadow filter changed, invalidate caches
+ rb->volumetric_fog->last_shadow_filter = env->volumetric_fog_shadow_filter;
+ force_shrink_shadows = true;
+ }
+
+ cluster.lights_shadow_rect_cache_count = 0;
+
+ for (int i = 0; i < p_positional_light_count; i++) {
+ if (cluster.lights[i].shadow_color_enabled[3] > 127) {
+ RID li = cluster.lights_instances[i];
+
+ ERR_CONTINUE(!shadow_atlas->shadow_owners.has(li));
+
+ uint32_t key = shadow_atlas->shadow_owners[li];
+
+ uint32_t quadrant = (key >> ShadowAtlas::QUADRANT_SHIFT) & 0x3;
+ uint32_t shadow = key & ShadowAtlas::SHADOW_INDEX_MASK;
+
+ ERR_CONTINUE((int)shadow >= shadow_atlas->quadrants[quadrant].shadows.size());
+
+ ShadowAtlas::Quadrant::Shadow &s = shadow_atlas->quadrants[quadrant].shadows.write[shadow];
+
+ if (!force_shrink_shadows && s.fog_version == s.version) {
+ continue; //do not update, no need
+ }
+
+ s.fog_version = s.version;
+
+ uint32_t quadrant_size = shadow_atlas->size >> 1;
+
+ Rect2i atlas_rect;
+
+ atlas_rect.position.x = (quadrant & 1) * quadrant_size;
+ atlas_rect.position.y = (quadrant >> 1) * quadrant_size;
+
+ uint32_t shadow_size = (quadrant_size / shadow_atlas->quadrants[quadrant].subdivision);
+ atlas_rect.position.x += (shadow % shadow_atlas->quadrants[quadrant].subdivision) * shadow_size;
+ atlas_rect.position.y += (shadow / shadow_atlas->quadrants[quadrant].subdivision) * shadow_size;
+
+ atlas_rect.size.x = shadow_size;
+ atlas_rect.size.y = shadow_size;
+
+ cluster.lights_shadow_rect_cache[cluster.lights_shadow_rect_cache_count] = atlas_rect;
+
+ cluster.lights_shadow_rect_cache_count++;
+
+ if (cluster.lights_shadow_rect_cache_count == cluster.max_lights) {
+ break; //light limit reached
+ }
+ }
+ }
+
+ if (cluster.lights_shadow_rect_cache_count > 0) {
+ //there are shadows to be shrunk, try to do them in parallel
+ RD::ComputeListID compute_list = RD::get_singleton()->compute_list_begin();
+
+ for (int i = 1; i < shadow_atlas->shrink_stages.size(); i++) {
+ int32_t base_size = shadow_atlas->shrink_stages[0].size;
+ int32_t src_size = shadow_atlas->shrink_stages[i - 1].size;
+ int32_t dst_size = shadow_atlas->shrink_stages[i].size;
+
+ uint32_t rect_divisor = base_size / src_size;
+
+ int32_t shrink_limit = 8 / (src_size / dst_size);
+
+ //shrink in parallel for more performance
+ for (uint32_t j = 0; j < cluster.lights_shadow_rect_cache_count; j++) {
+ Rect2i src_rect = cluster.lights_shadow_rect_cache[j];
+
+ src_rect.position /= rect_divisor;
+ src_rect.size /= rect_divisor;
+
+ storage->get_effects()->reduce_shadow(shadow_atlas->shrink_stages[i - 1].texture, shadow_atlas->shrink_stages[i].texture, Size2i(src_size, src_size), src_rect, shrink_limit, compute_list);
+ }
+
+ RD::get_singleton()->compute_list_add_barrier(compute_list);
+
+ if (env->volumetric_fog_shadow_filter != RS::ENV_VOLUMETRIC_FOG_SHADOW_FILTER_DISABLED && shadow_atlas->shrink_stages[i].filter_texture.is_valid()) {
+ uint32_t filter_divisor = base_size / dst_size;
+
+ //filter in parallel for more performance
+ for (uint32_t j = 0; j < cluster.lights_shadow_rect_cache_count; j++) {
+ Rect2i dst_rect = cluster.lights_shadow_rect_cache[j];
+
+ dst_rect.position /= filter_divisor;
+ dst_rect.size /= filter_divisor;
+
+ storage->get_effects()->filter_shadow(shadow_atlas->shrink_stages[i].texture, shadow_atlas->shrink_stages[i].filter_texture, Size2i(dst_size, dst_size), dst_rect, env->volumetric_fog_shadow_filter, compute_list, true, false);
+ }
+
+ RD::get_singleton()->compute_list_add_barrier(compute_list);
+
+ for (uint32_t j = 0; j < cluster.lights_shadow_rect_cache_count; j++) {
+ Rect2i dst_rect = cluster.lights_shadow_rect_cache[j];
+
+ dst_rect.position /= filter_divisor;
+ dst_rect.size /= filter_divisor;
+
+ storage->get_effects()->filter_shadow(shadow_atlas->shrink_stages[i].texture, shadow_atlas->shrink_stages[i].filter_texture, Size2i(dst_size, dst_size), dst_rect, env->volumetric_fog_shadow_filter, compute_list, false, true);
+ }
+ }
+ }
+
+ RD::get_singleton()->compute_list_end();
+ }
+ }
+
+ //update volumetric fog
+
+ if (rb->volumetric_fog->uniform_set.is_null() || !RD::get_singleton()->uniform_set_is_valid(rb->volumetric_fog->uniform_set)) {
+ //re create uniform set if needed
+
+ Vector<RD::Uniform> uniforms;
+
+ {
+ RD::Uniform u;
+ u.type = RD::UNIFORM_TYPE_TEXTURE;
+ u.binding = 1;
+ if (shadow_atlas == nullptr || shadow_atlas->shrink_stages.size() == 0) {
+ u.ids.push_back(storage->texture_rd_get_default(RasterizerStorageRD::DEFAULT_RD_TEXTURE_BLACK));
+ } else {
+ u.ids.push_back(shadow_atlas->shrink_stages[shadow_atlas->shrink_stages.size() - 1].texture);
+ }
+
+ uniforms.push_back(u);
+ }
+
+ {
+ RD::Uniform u;
+ u.type = RD::UNIFORM_TYPE_TEXTURE;
+ u.binding = 2;
+ if (directional_shadow.shrink_stages.size() == 0) {
+ u.ids.push_back(storage->texture_rd_get_default(RasterizerStorageRD::DEFAULT_RD_TEXTURE_BLACK));
+ } else {
+ u.ids.push_back(directional_shadow.shrink_stages[directional_shadow.shrink_stages.size() - 1].texture);
+ }
+ uniforms.push_back(u);
+ }
+
+ {
+ RD::Uniform u;
+ u.type = RD::UNIFORM_TYPE_STORAGE_BUFFER;
+ u.binding = 3;
+ u.ids.push_back(get_positional_light_buffer());
+ uniforms.push_back(u);
+ }
+
+ {
+ RD::Uniform u;
+ u.type = RD::UNIFORM_TYPE_UNIFORM_BUFFER;
+ u.binding = 4;
+ u.ids.push_back(get_directional_light_buffer());
+ uniforms.push_back(u);
+ }
+
+ {
+ RD::Uniform u;
+ u.type = RD::UNIFORM_TYPE_TEXTURE;
+ u.binding = 5;
+ u.ids.push_back(get_cluster_builder_texture());
+ uniforms.push_back(u);
+ }
+
+ {
+ RD::Uniform u;
+ u.type = RD::UNIFORM_TYPE_STORAGE_BUFFER;
+ u.binding = 6;
+ u.ids.push_back(get_cluster_builder_indices_buffer());
+ uniforms.push_back(u);
+ }
+
+ {
+ RD::Uniform u;
+ u.type = RD::UNIFORM_TYPE_SAMPLER;
+ u.binding = 7;
+ u.ids.push_back(storage->sampler_rd_get_default(RS::CANVAS_ITEM_TEXTURE_FILTER_LINEAR, RS::CANVAS_ITEM_TEXTURE_REPEAT_DISABLED));
+ uniforms.push_back(u);
+ }
+
+ {
+ RD::Uniform u;
+ u.type = RD::UNIFORM_TYPE_IMAGE;
+ u.binding = 8;
+ u.ids.push_back(rb->volumetric_fog->light_density_map);
+ uniforms.push_back(u);
+ }
+
+ {
+ RD::Uniform u;
+ u.type = RD::UNIFORM_TYPE_IMAGE;
+ u.binding = 9;
+ u.ids.push_back(rb->volumetric_fog->fog_map);
+ uniforms.push_back(u);
+ }
+
+ {
+ RD::Uniform u;
+ u.type = RD::UNIFORM_TYPE_SAMPLER;
+ u.binding = 10;
+ u.ids.push_back(shadow_sampler);
+ uniforms.push_back(u);
+ }
+
+ {
+ RD::Uniform u;
+ u.type = RD::UNIFORM_TYPE_UNIFORM_BUFFER;
+ u.binding = 11;
+ u.ids.push_back(render_buffers_get_gi_probe_buffer(p_render_buffers));
+ uniforms.push_back(u);
+ }
+
+ {
+ RD::Uniform u;
+ u.type = RD::UNIFORM_TYPE_TEXTURE;
+ u.binding = 12;
+ for (int i = 0; i < RenderBuffers::MAX_GIPROBES; i++) {
+ u.ids.push_back(rb->giprobe_textures[i]);
+ }
+ uniforms.push_back(u);
+ }
+ {
+ RD::Uniform u;
+ u.type = RD::UNIFORM_TYPE_SAMPLER;
+ u.binding = 13;
+ u.ids.push_back(storage->sampler_rd_get_default(RS::CANVAS_ITEM_TEXTURE_FILTER_LINEAR_WITH_MIPMAPS, RS::CANVAS_ITEM_TEXTURE_REPEAT_DISABLED));
+ uniforms.push_back(u);
+ }
+
+ rb->volumetric_fog->uniform_set = RD::get_singleton()->uniform_set_create(uniforms, volumetric_fog.shader.version_get_shader(volumetric_fog.shader_version, 0), 0);
+
+ SWAP(uniforms.write[7].ids.write[0], uniforms.write[8].ids.write[0]);
+
+ rb->volumetric_fog->uniform_set2 = RD::get_singleton()->uniform_set_create(uniforms, volumetric_fog.shader.version_get_shader(volumetric_fog.shader_version, 0), 0);
+ }
+
+ bool using_sdfgi = env->volumetric_fog_gi_inject > 0.0001 && env->sdfgi_enabled && (rb->sdfgi != nullptr);
+
+ if (using_sdfgi) {
+ if (rb->volumetric_fog->sdfgi_uniform_set.is_null() || !RD::get_singleton()->uniform_set_is_valid(rb->volumetric_fog->sdfgi_uniform_set)) {
+ Vector<RD::Uniform> uniforms;
+
+ {
+ RD::Uniform u;
+ u.type = RD::UNIFORM_TYPE_UNIFORM_BUFFER;
+ u.binding = 0;
+ u.ids.push_back(gi.sdfgi_ubo);
+ uniforms.push_back(u);
+ }
+
+ {
+ RD::Uniform u;
+ u.type = RD::UNIFORM_TYPE_TEXTURE;
+ u.binding = 1;
+ u.ids.push_back(rb->sdfgi->ambient_texture);
+ uniforms.push_back(u);
+ }
+
+ {
+ RD::Uniform u;
+ u.type = RD::UNIFORM_TYPE_TEXTURE;
+ u.binding = 2;
+ u.ids.push_back(rb->sdfgi->occlusion_texture);
+ uniforms.push_back(u);
+ }
+
+ rb->volumetric_fog->sdfgi_uniform_set = RD::get_singleton()->uniform_set_create(uniforms, volumetric_fog.shader.version_get_shader(volumetric_fog.shader_version, VOLUMETRIC_FOG_SHADER_DENSITY_WITH_SDFGI), 1);
+ }
+ }
+
+ rb->volumetric_fog->length = env->volumetric_fog_length;
+ rb->volumetric_fog->spread = env->volumetric_fog_detail_spread;
+
+ VolumetricFogShader::PushConstant push_constant;
+
+ Vector2 frustum_near_size = p_cam_projection.get_viewport_half_extents();
+ Vector2 frustum_far_size = p_cam_projection.get_far_plane_half_extents();
+ float z_near = p_cam_projection.get_z_near();
+ float z_far = p_cam_projection.get_z_far();
+ float fog_end = env->volumetric_fog_length;
+
+ Vector2 fog_far_size = frustum_near_size.lerp(frustum_far_size, (fog_end - z_near) / (z_far - z_near));
+ Vector2 fog_near_size;
+ if (p_cam_projection.is_orthogonal()) {
+ fog_near_size = fog_far_size;
+ } else {
+ fog_near_size = Vector2();
+ }
+
+ push_constant.fog_frustum_size_begin[0] = fog_near_size.x;
+ push_constant.fog_frustum_size_begin[1] = fog_near_size.y;
+
+ push_constant.fog_frustum_size_end[0] = fog_far_size.x;
+ push_constant.fog_frustum_size_end[1] = fog_far_size.y;
+
+ push_constant.z_near = z_near;
+ push_constant.z_far = z_far;
+
+ push_constant.fog_frustum_end = fog_end;
+
+ push_constant.fog_volume_size[0] = rb->volumetric_fog->width;
+ push_constant.fog_volume_size[1] = rb->volumetric_fog->height;
+ push_constant.fog_volume_size[2] = rb->volumetric_fog->depth;
+
+ push_constant.directional_light_count = p_directional_light_count;
+
+ Color light = env->volumetric_fog_light.to_linear();
+ push_constant.light_energy[0] = light.r * env->volumetric_fog_light_energy;
+ push_constant.light_energy[1] = light.g * env->volumetric_fog_light_energy;
+ push_constant.light_energy[2] = light.b * env->volumetric_fog_light_energy;
+ push_constant.base_density = env->volumetric_fog_density;
+
+ push_constant.detail_spread = env->volumetric_fog_detail_spread;
+ push_constant.gi_inject = env->volumetric_fog_gi_inject;
+
+ push_constant.cam_rotation[0] = p_cam_transform.basis[0][0];
+ push_constant.cam_rotation[1] = p_cam_transform.basis[1][0];
+ push_constant.cam_rotation[2] = p_cam_transform.basis[2][0];
+ push_constant.cam_rotation[3] = 0;
+ push_constant.cam_rotation[4] = p_cam_transform.basis[0][1];
+ push_constant.cam_rotation[5] = p_cam_transform.basis[1][1];
+ push_constant.cam_rotation[6] = p_cam_transform.basis[2][1];
+ push_constant.cam_rotation[7] = 0;
+ push_constant.cam_rotation[8] = p_cam_transform.basis[0][2];
+ push_constant.cam_rotation[9] = p_cam_transform.basis[1][2];
+ push_constant.cam_rotation[10] = p_cam_transform.basis[2][2];
+ push_constant.cam_rotation[11] = 0;
+ push_constant.filter_axis = 0;
+ push_constant.max_gi_probes = env->volumetric_fog_gi_inject > 0.001 ? p_gi_probe_count : 0;
+
+ /* Vector2 dssize = directional_shadow_get_size();
+ push_constant.directional_shadow_pixel_size[0] = 1.0 / dssize.x;
+ push_constant.directional_shadow_pixel_size[1] = 1.0 / dssize.y;
+*/
+ RD::ComputeListID compute_list = RD::get_singleton()->compute_list_begin();
+
+ bool use_filter = volumetric_fog_filter_active;
+
+ RD::get_singleton()->compute_list_bind_compute_pipeline(compute_list, volumetric_fog.pipelines[using_sdfgi ? VOLUMETRIC_FOG_SHADER_DENSITY_WITH_SDFGI : VOLUMETRIC_FOG_SHADER_DENSITY]);
+
+ RD::get_singleton()->compute_list_bind_uniform_set(compute_list, rb->volumetric_fog->uniform_set, 0);
+ if (using_sdfgi) {
+ RD::get_singleton()->compute_list_bind_uniform_set(compute_list, rb->volumetric_fog->sdfgi_uniform_set, 1);
+ }
+ RD::get_singleton()->compute_list_set_push_constant(compute_list, &push_constant, sizeof(VolumetricFogShader::PushConstant));
+ RD::get_singleton()->compute_list_dispatch_threads(compute_list, rb->volumetric_fog->width, rb->volumetric_fog->height, rb->volumetric_fog->depth, 4, 4, 4);
+
+ RD::get_singleton()->compute_list_add_barrier(compute_list);
+
+ if (use_filter) {
+ RD::get_singleton()->compute_list_bind_compute_pipeline(compute_list, volumetric_fog.pipelines[VOLUMETRIC_FOG_SHADER_FILTER]);
+ RD::get_singleton()->compute_list_bind_uniform_set(compute_list, rb->volumetric_fog->uniform_set, 0);
+
+ RD::get_singleton()->compute_list_set_push_constant(compute_list, &push_constant, sizeof(VolumetricFogShader::PushConstant));
+ RD::get_singleton()->compute_list_dispatch_threads(compute_list, rb->volumetric_fog->width, rb->volumetric_fog->height, rb->volumetric_fog->depth, 8, 8, 1);
+
+ RD::get_singleton()->compute_list_add_barrier(compute_list);
+
+ push_constant.filter_axis = 1;
+
+ RD::get_singleton()->compute_list_bind_uniform_set(compute_list, rb->volumetric_fog->uniform_set2, 0);
+ RD::get_singleton()->compute_list_set_push_constant(compute_list, &push_constant, sizeof(VolumetricFogShader::PushConstant));
+ RD::get_singleton()->compute_list_dispatch_threads(compute_list, rb->volumetric_fog->width, rb->volumetric_fog->height, rb->volumetric_fog->depth, 8, 8, 1);
+
+ RD::get_singleton()->compute_list_add_barrier(compute_list);
+ }
+
+ RD::get_singleton()->compute_list_bind_compute_pipeline(compute_list, volumetric_fog.pipelines[VOLUMETRIC_FOG_SHADER_FOG]);
+ RD::get_singleton()->compute_list_bind_uniform_set(compute_list, rb->volumetric_fog->uniform_set, 0);
+ RD::get_singleton()->compute_list_set_push_constant(compute_list, &push_constant, sizeof(VolumetricFogShader::PushConstant));
+ RD::get_singleton()->compute_list_dispatch_threads(compute_list, rb->volumetric_fog->width, rb->volumetric_fog->height, 1, 8, 8, 1);
+
+ RD::get_singleton()->compute_list_end();
+}
+
void RasterizerSceneRD::render_scene(RID p_render_buffers, const Transform &p_cam_transform, const CameraMatrix &p_cam_projection, bool p_cam_ortogonal, InstanceBase **p_cull_result, int p_cull_count, RID *p_light_cull_result, int p_light_cull_count, RID *p_reflection_probe_cull_result, int p_reflection_probe_cull_count, RID *p_gi_probe_cull_result, int p_gi_probe_cull_count, RID *p_decal_cull_result, int p_decal_cull_count, InstanceBase **p_lightmap_cull_result, int p_lightmap_cull_count, RID p_environment, RID p_camera_effects, RID p_shadow_atlas, RID p_reflection_atlas, RID p_reflection_probe, int p_reflection_probe_pass) {
Color clear_color;
if (p_render_buffers.is_valid()) {
@@ -6190,10 +6870,25 @@ void RasterizerSceneRD::render_scene(RID p_render_buffers, const Transform &p_ca
}
uint32_t directional_light_count = 0;
- _setup_lights(p_light_cull_result, p_light_cull_count, p_cam_transform.affine_inverse(), p_shadow_atlas, using_shadows, directional_light_count);
+ uint32_t positional_light_count = 0;
+ _setup_lights(p_light_cull_result, p_light_cull_count, p_cam_transform.affine_inverse(), p_shadow_atlas, using_shadows, directional_light_count, positional_light_count);
_setup_decals(p_decal_cull_result, p_decal_cull_count, p_cam_transform.affine_inverse());
cluster.builder.bake_cluster(); //bake to cluster
+ uint32_t gi_probe_count = 0;
+ _setup_giprobes(p_render_buffers, p_cam_transform, p_gi_probe_cull_result, p_gi_probe_cull_count, gi_probe_count);
+
+ if (p_render_buffers.is_valid()) {
+ bool directional_shadows = false;
+ for (uint32_t i = 0; i < directional_light_count; i++) {
+ if (cluster.directional_lights[i].shadow_enabled) {
+ directional_shadows = true;
+ break;
+ }
+ }
+ _update_volumetric_fog(p_render_buffers, p_environment, p_cam_projection, p_cam_transform, p_shadow_atlas, directional_light_count, directional_shadows, positional_light_count, gi_probe_count);
+ }
+
_render_scene(p_render_buffers, p_cam_transform, p_cam_projection, p_cam_ortogonal, p_cull_result, p_cull_count, directional_light_count, p_gi_probe_cull_result, p_gi_probe_cull_count, p_lightmap_cull_result, p_lightmap_cull_count, p_environment, p_camera_effects, p_shadow_atlas, p_reflection_atlas, p_reflection_probe, p_reflection_probe_pass, clear_color);
if (p_render_buffers.is_valid()) {
@@ -6481,6 +7176,7 @@ void RasterizerSceneRD::render_sdfgi(RID p_render_buffers, int p_region, Instanc
ipush_constant.sky_color[1] = 0;
ipush_constant.sky_color[2] = 0;
ipush_constant.y_mult = rb->sdfgi->y_mult;
+ ipush_constant.store_ambient_texture = false;
ipush_constant.image_size[0] = rb->sdfgi->probe_axis_count * rb->sdfgi->probe_axis_count;
ipush_constant.image_size[1] = rb->sdfgi->probe_axis_count;
@@ -6836,6 +7532,9 @@ bool RasterizerSceneRD::free(RID p_rid) {
if (rb->sdfgi) {
_sdfgi_erase(rb);
}
+ if (rb->volumetric_fog) {
+ _volumetric_fog_erase(rb);
+ }
render_buffers_owner.free(p_rid);
} else if (environment_owner.owns(p_rid)) {
//not much to delete, just free it
@@ -7406,6 +8105,8 @@ RasterizerSceneRD::RasterizerSceneRD(RasterizerStorageRD *p_storage) {
cluster.lights = memnew_arr(Cluster::LightData, cluster.max_lights);
cluster.light_buffer = RD::get_singleton()->storage_buffer_create(light_buffer_size);
//defines += "\n#define MAX_LIGHT_DATA_STRUCTS " + itos(cluster.max_lights) + "\n";
+ cluster.lights_instances = memnew_arr(RID, cluster.max_lights);
+ cluster.lights_shadow_rect_cache = memnew_arr(Rect2i, cluster.max_lights);
cluster.max_directional_lights = 8;
uint32_t directional_light_buffer_size = cluster.max_directional_lights * sizeof(Cluster::DirectionalLightData);
@@ -7422,8 +8123,30 @@ RasterizerSceneRD::RasterizerSceneRD(RasterizerStorageRD *p_storage) {
cluster.builder.setup(16, 8, 24);
+ {
+ String defines = "\n#define MAX_DIRECTIONAL_LIGHT_DATA_STRUCTS " + itos(cluster.max_directional_lights) + "\n";
+ Vector<String> volumetric_fog_modes;
+ volumetric_fog_modes.push_back("\n#define MODE_DENSITY\n");
+ volumetric_fog_modes.push_back("\n#define MODE_DENSITY\n#define ENABLE_SDFGI\n");
+ volumetric_fog_modes.push_back("\n#define MODE_FILTER\n");
+ volumetric_fog_modes.push_back("\n#define MODE_FOG\n");
+ volumetric_fog.shader.initialize(volumetric_fog_modes, defines);
+ volumetric_fog.shader_version = volumetric_fog.shader.version_create();
+ for (int i = 0; i < VOLUMETRIC_FOG_SHADER_MAX; i++) {
+ volumetric_fog.pipelines[i] = RD::get_singleton()->compute_pipeline_create(volumetric_fog.shader.version_get_shader(volumetric_fog.shader_version, i));
+ }
+ }
default_giprobe_buffer = RD::get_singleton()->uniform_buffer_create(sizeof(GI::GIProbeData) * RenderBuffers::MAX_GIPROBES);
+ {
+ RD::SamplerState sampler;
+ sampler.mag_filter = RD::SAMPLER_FILTER_LINEAR;
+ sampler.min_filter = RD::SAMPLER_FILTER_LINEAR;
+ sampler.enable_compare = true;
+ sampler.compare_op = RD::COMPARE_OP_LESS;
+ shadow_sampler = RD::get_singleton()->sampler_create(sampler);
+ }
+
camera_effects_set_dof_blur_bokeh_shape(RS::DOFBokehShape(int(GLOBAL_GET("rendering/quality/depth_of_field/depth_of_field_bokeh_shape"))));
camera_effects_set_dof_blur_quality(RS::DOFBlurQuality(int(GLOBAL_GET("rendering/quality/depth_of_field/depth_of_field_bokeh_quality"))), GLOBAL_GET("rendering/quality/depth_of_field/depth_of_field_use_jitter"));
environment_set_ssao_quality(RS::EnvironmentSSAOQuality(int(GLOBAL_GET("rendering/quality/ssao/quality"))), GLOBAL_GET("rendering/quality/ssao/half_size"));
@@ -7441,6 +8164,11 @@ RasterizerSceneRD::RasterizerSceneRD(RasterizerStorageRD *p_storage) {
soft_shadow_kernel = memnew_arr(float, 128);
shadows_quality_set(RS::ShadowQuality(int(GLOBAL_GET("rendering/quality/shadows/soft_shadow_quality"))));
directional_shadow_quality_set(RS::ShadowQuality(int(GLOBAL_GET("rendering/quality/directional_shadow/soft_shadow_quality"))));
+
+ environment_set_volumetric_fog_volume_size(GLOBAL_GET("rendering/volumetric_fog/volume_size"), GLOBAL_GET("rendering/volumetric_fog/volume_depth"));
+ environment_set_volumetric_fog_filter_active(GLOBAL_GET("rendering/volumetric_fog/use_filter"));
+ environment_set_volumetric_fog_directional_shadow_shrink_size(GLOBAL_GET("rendering/volumetric_fog/directional_shadow_shrink"));
+ environment_set_volumetric_fog_positional_shadow_shrink_size(GLOBAL_GET("rendering/volumetric_fog/positional_shadow_shrink"));
}
RasterizerSceneRD::~RasterizerSceneRD() {
@@ -7491,7 +8219,13 @@ RasterizerSceneRD::~RasterizerSceneRD() {
RD::get_singleton()->free(cluster.decal_buffer);
memdelete_arr(cluster.directional_lights);
memdelete_arr(cluster.lights);
+ memdelete_arr(cluster.lights_shadow_rect_cache);
+ memdelete_arr(cluster.lights_instances);
memdelete_arr(cluster.reflections);
memdelete_arr(cluster.decals);
}
+
+ RD::get_singleton()->free(shadow_sampler);
+
+ directional_shadow_atlas_set_size(0);
}
diff --git a/servers/rendering/rasterizer_rd/rasterizer_scene_rd.h b/servers/rendering/rasterizer_rd/rasterizer_scene_rd.h
index 27eec44ec3..4c48960587 100644
--- a/servers/rendering/rasterizer_rd/rasterizer_scene_rd.h
+++ b/servers/rendering/rasterizer_rd/rasterizer_scene_rd.h
@@ -45,6 +45,7 @@
#include "servers/rendering/rasterizer_rd/shaders/sdfgi_integrate.glsl.gen.h"
#include "servers/rendering/rasterizer_rd/shaders/sdfgi_preprocess.glsl.gen.h"
#include "servers/rendering/rasterizer_rd/shaders/sky.glsl.gen.h"
+#include "servers/rendering/rasterizer_rd/shaders/volumetric_fog.glsl.gen.h"
#include "servers/rendering/rendering_device.h"
class RasterizerSceneRD : public RasterizerScene {
@@ -78,9 +79,10 @@ protected:
};
virtual RenderBufferData *_create_render_buffer_data() = 0;
- void _setup_lights(RID *p_light_cull_result, int p_light_cull_count, const Transform &p_camera_inverse_transform, RID p_shadow_atlas, bool p_using_shadows, uint32_t &r_directional_light_count);
+ void _setup_lights(RID *p_light_cull_result, int p_light_cull_count, const Transform &p_camera_inverse_transform, RID p_shadow_atlas, bool p_using_shadows, uint32_t &r_directional_light_count, uint32_t &r_positional_light_count);
void _setup_decals(const RID *p_decal_instances, int p_decal_count, const Transform &p_camera_inverse_xform);
void _setup_reflections(RID *p_reflection_probe_cull_result, int p_reflection_probe_cull_count, const Transform &p_camera_inverse_transform, RID p_environment);
+ void _setup_giprobes(RID p_render_buffers, const Transform &p_transform, RID *p_gi_probe_cull_result, int p_gi_probe_cull_count, uint32_t &r_gi_probes_used);
virtual void _render_scene(RID p_render_buffer, const Transform &p_cam_transform, const CameraMatrix &p_cam_projection, bool p_cam_ortogonal, InstanceBase **p_cull_result, int p_cull_count, int p_directional_light_count, RID *p_gi_probe_cull_result, int p_gi_probe_cull_count, InstanceBase **p_lightmap_cull_result, int p_lightmap_cull_count, RID p_environment, RID p_camera_effects, RID p_shadow_atlas, RID p_reflection_atlas, RID p_reflection_probe, int p_reflection_probe_pass, const Color &p_default_color) = 0;
virtual void _render_shadow(RID p_framebuffer, InstanceBase **p_cull_result, int p_cull_count, const CameraMatrix &p_projection, const Transform &p_transform, float p_zfar, float p_bias, float p_normal_bias, bool p_use_dp, bool use_dp_flip, bool p_use_pancake) = 0;
@@ -490,6 +492,12 @@ private:
/* SHADOW ATLAS */
+ struct ShadowShrinkStage {
+ RID texture;
+ RID filter_texture;
+ uint32_t size;
+ };
+
struct ShadowAtlas {
enum {
QUADRANT_SHIFT = 27,
@@ -503,10 +511,12 @@ private:
struct Shadow {
RID owner;
uint64_t version;
+ uint64_t fog_version; // used for fog
uint64_t alloc_tick;
Shadow() {
version = 0;
+ fog_version = 0;
alloc_tick = 0;
}
};
@@ -528,6 +538,8 @@ private:
RID fb; //for copying
Map<RID, uint32_t> shadow_owners;
+
+ Vector<ShadowShrinkStage> shrink_stages;
};
RID_Owner<ShadowAtlas> shadow_atlas_owner;
@@ -556,8 +568,14 @@ private:
int light_count = 0;
int size = 0;
int current_light = 0;
+
+ Vector<ShadowShrinkStage> shrink_stages;
+
} directional_shadow;
+ void _allocate_shadow_shrink_stages(RID p_base, int p_base_size, Vector<ShadowShrinkStage> &shrink_stages, uint32_t p_target_size);
+ void _clear_shadow_shrink_stages(Vector<ShadowShrinkStage> &shrink_stages);
+
/* SHADOW CUBEMAPS */
struct ShadowCubemap {
@@ -656,6 +674,26 @@ private:
float auto_exp_scale = 0.5;
uint64_t auto_exposure_version = 0;
+ // Fog
+ bool fog_enabled = false;
+ Color fog_light_color = Color(0.5, 0.6, 0.7);
+ float fog_light_energy = 1.0;
+ float fog_sun_scatter = 0.0;
+ float fog_density = 0.001;
+ float fog_height = 0.0;
+ float fog_height_density = 0.0; //can be negative to invert effect
+
+ /// Volumetric Fog
+ ///
+ bool volumetric_fog_enabled = false;
+ float volumetric_fog_density = 0.01;
+ Color volumetric_fog_light = Color(0, 0, 0);
+ float volumetric_fog_light_energy = 0.0;
+ float volumetric_fog_length = 64.0;
+ float volumetric_fog_detail_spread = 2.0;
+ RS::EnvVolumetricFogShadowFilter volumetric_fog_shadow_filter = RS::ENV_VOLUMETRIC_FOG_SHADOW_FILTER_LOW;
+ float volumetric_fog_gi_inject = 0.0;
+
/// Glow
bool glow_enabled = false;
@@ -739,6 +777,7 @@ private:
/* RENDER BUFFERS */
struct SDFGI;
+ struct VolumetricFog;
struct RenderBuffers {
enum {
@@ -759,6 +798,7 @@ private:
RID gi_uniform_set;
SDFGI *sdfgi = nullptr;
+ VolumetricFog *volumetric_fog = nullptr;
//built-in textures used for ping pong image processing and blurring
struct Blur {
@@ -885,6 +925,7 @@ private:
RID lightprobe_data;
RID occlusion_texture;
RID occlusion_data;
+ RID ambient_texture; //integrates with volumetric fog
RID lightprobe_history_scroll; //used for scrolling lightprobes
RID lightprobe_average_scroll; //used for scrolling lightprobes
@@ -1077,6 +1118,9 @@ private:
float sky_color[3];
float y_mult;
+
+ uint32_t store_ambient_texture;
+ uint32_t pad[3];
};
SdfgiIntegrateShaderRD integrate;
@@ -1141,7 +1185,7 @@ private:
float anisotropy_strength;
float ao;
float ao_size;
- uint32_t pad[1];
+ uint32_t mipmaps;
};
struct PushConstant {
@@ -1219,7 +1263,8 @@ private:
float soft_shadow_size;
float soft_shadow_scale;
uint32_t mask;
- uint32_t pad[2];
+ float shadow_volumetric_fog_fade;
+ uint32_t pad;
float projector_rect[4];
};
@@ -1236,10 +1281,12 @@ private:
uint32_t shadow_enabled;
float fade_from;
float fade_to;
+ uint32_t pad[3];
+ float shadow_volumetric_fog_fade;
float shadow_bias[4];
float shadow_normal_bias[4];
float shadow_transmittance_bias[4];
- float shadow_transmittance_z_scale[4];
+ float shadow_z_range[4];
float shadow_range_begin[4];
float shadow_split_offsets[4];
float shadow_matrices[4][16];
@@ -1283,6 +1330,9 @@ private:
LightData *lights;
uint32_t max_lights;
RID light_buffer;
+ RID *lights_instances;
+ Rect2i *lights_shadow_rect_cache;
+ uint32_t lights_shadow_rect_cache_count = 0;
DirectionalLightData *directional_lights;
uint32_t max_directional_lights;
@@ -1292,6 +1342,73 @@ private:
} cluster;
+ struct VolumetricFog {
+ uint32_t width = 0;
+ uint32_t height = 0;
+ uint32_t depth = 0;
+
+ float length;
+ float spread;
+
+ RID light_density_map;
+ RID fog_map;
+ RID uniform_set;
+ RID uniform_set2;
+ RID sdfgi_uniform_set;
+
+ int last_shadow_filter = -1;
+ };
+
+ enum {
+ VOLUMETRIC_FOG_SHADER_DENSITY,
+ VOLUMETRIC_FOG_SHADER_DENSITY_WITH_SDFGI,
+ VOLUMETRIC_FOG_SHADER_FILTER,
+ VOLUMETRIC_FOG_SHADER_FOG,
+ VOLUMETRIC_FOG_SHADER_MAX,
+ };
+
+ struct VolumetricFogShader {
+ struct PushConstant {
+ float fog_frustum_size_begin[2];
+ float fog_frustum_size_end[2];
+
+ float fog_frustum_end;
+ float z_near;
+ float z_far;
+ uint32_t filter_axis;
+
+ int32_t fog_volume_size[3];
+ uint32_t directional_light_count;
+
+ float light_energy[3];
+ float base_density;
+
+ float detail_spread;
+ float gi_inject;
+ uint32_t max_gi_probes;
+ uint32_t pad;
+
+ float cam_rotation[12];
+ };
+
+ VolumetricFogShaderRD shader;
+
+ RID shader_version;
+ RID pipelines[VOLUMETRIC_FOG_SHADER_MAX];
+
+ } volumetric_fog;
+
+ uint32_t volumetric_fog_depth = 128;
+ uint32_t volumetric_fog_size = 128;
+ bool volumetric_fog_filter_active = false;
+ uint32_t volumetric_fog_directional_shadow_shrink = 512;
+ uint32_t volumetric_fog_positional_shadow_shrink = 512;
+
+ void _volumetric_fog_erase(RenderBuffers *rb);
+ void _update_volumetric_fog(RID p_render_buffers, RID p_environment, const CameraMatrix &p_cam_projection, const Transform &p_cam_transform, RID p_shadow_atlas, int p_directional_light_count, bool p_use_directional_shadows, int p_positional_light_count, int p_gi_probe_count);
+
+ RID shadow_sampler;
+
uint64_t scene_pass = 0;
uint64_t shadow_atlas_realloc_tolerance_msec = 500;
@@ -1390,7 +1507,21 @@ public:
void environment_set_glow(RID p_env, bool p_enable, int p_level_flags, float p_intensity, float p_strength, float p_mix, float p_bloom_threshold, RS::EnvironmentGlowBlendMode p_blend_mode, float p_hdr_bleed_threshold, float p_hdr_bleed_scale, float p_hdr_luminance_cap);
void environment_glow_set_use_bicubic_upscale(bool p_enable);
- void environment_set_fog(RID p_env, bool p_enable, float p_begin, float p_end, RID p_gradient_texture) {}
+ void environment_set_fog(RID p_env, bool p_enable, const Color &p_light_color, float p_light_energy, float p_sun_scatter, float p_density, float p_height, float p_height_density);
+ bool environment_is_fog_enabled(RID p_env) const;
+ Color environment_get_fog_light_color(RID p_env) const;
+ float environment_get_fog_light_energy(RID p_env) const;
+ float environment_get_fog_sun_scatter(RID p_env) const;
+ float environment_get_fog_density(RID p_env) const;
+ float environment_get_fog_height(RID p_env) const;
+ float environment_get_fog_height_density(RID p_env) const;
+
+ void environment_set_volumetric_fog(RID p_env, bool p_enable, float p_density, const Color &p_light, float p_light_energy, float p_lenght, float p_detail_spread, float p_gi_inject, RS::EnvVolumetricFogShadowFilter p_shadow_filter);
+
+ virtual void environment_set_volumetric_fog_volume_size(int p_size, int p_depth);
+ virtual void environment_set_volumetric_fog_filter_active(bool p_enable);
+ virtual void environment_set_volumetric_fog_directional_shadow_shrink_size(int p_shrink_size);
+ virtual void environment_set_volumetric_fog_positional_shadow_shrink_size(int p_shrink_size);
void environment_set_ssr(RID p_env, bool p_enable, int p_max_steps, float p_fade_int, float p_fade_out, float p_depth_tolerance);
void environment_set_ssao(RID p_env, bool p_enable, float p_radius, float p_intensity, float p_bias, float p_light_affect, float p_ao_channel_affect, RS::EnvironmentSSAOBlur p_blur, float p_bilateral_sharpness);
@@ -1411,10 +1542,6 @@ public:
void environment_set_tonemap(RID p_env, RS::EnvironmentToneMapper p_tone_mapper, float p_exposure, float p_white, bool p_auto_exposure, float p_min_luminance, float p_max_luminance, float p_auto_exp_speed, float p_auto_exp_scale);
void environment_set_adjustment(RID p_env, bool p_enable, float p_brightness, float p_contrast, float p_saturation, RID p_ramp) {}
- void environment_set_fog(RID p_env, bool p_enable, const Color &p_color, const Color &p_sun_color, float p_sun_amount) {}
- void environment_set_fog_depth(RID p_env, bool p_enable, float p_depth_begin, float p_depth_end, float p_depth_curve, bool p_transmit, float p_transmit_curve) {}
- void environment_set_fog_height(RID p_env, bool p_enable, float p_min_height, float p_max_height, float p_height_curve) {}
-
virtual Ref<Image> environment_bake_panorama(RID p_env, bool p_bake_irradiance, const Size2i &p_size);
virtual RID camera_effects_create();
@@ -1708,6 +1835,11 @@ public:
float render_buffers_get_sdfgi_energy(RID p_render_buffers) const;
RID render_buffers_get_sdfgi_occlusion_texture(RID p_render_buffers) const;
+ bool render_buffers_has_volumetric_fog(RID p_render_buffers) const;
+ RID render_buffers_get_volumetric_fog_texture(RID p_render_buffers);
+ float render_buffers_get_volumetric_fog_end(RID p_render_buffers);
+ float render_buffers_get_volumetric_fog_detail_spread(RID p_render_buffers);
+
void render_scene(RID p_render_buffers, const Transform &p_cam_transform, const CameraMatrix &p_cam_projection, bool p_cam_ortogonal, InstanceBase **p_cull_result, int p_cull_count, RID *p_light_cull_result, int p_light_cull_count, RID *p_reflection_probe_cull_result, int p_reflection_probe_cull_count, RID *p_gi_probe_cull_result, int p_gi_probe_cull_count, RID *p_decal_cull_result, int p_decal_cull_count, InstanceBase **p_lightmap_cull_result, int p_lightmap_cull_count, RID p_environment, RID p_shadow_atlas, RID p_camera_effects, RID p_reflection_atlas, RID p_reflection_probe, int p_reflection_probe_pass);
void render_shadow(RID p_light, RID p_shadow_atlas, int p_pass, InstanceBase **p_cull_result, int p_cull_count);
diff --git a/servers/rendering/rasterizer_rd/rasterizer_storage_rd.cpp b/servers/rendering/rasterizer_rd/rasterizer_storage_rd.cpp
index 102e0e2eed..f3ba57e733 100644
--- a/servers/rendering/rasterizer_rd/rasterizer_storage_rd.cpp
+++ b/servers/rendering/rasterizer_rd/rasterizer_storage_rd.cpp
@@ -3290,6 +3290,7 @@ RID RasterizerStorageRD::light_create(RS::LightType p_type) {
light.param[RS::LIGHT_PARAM_SHADOW_NORMAL_BIAS] = 1.0;
light.param[RS::LIGHT_PARAM_SHADOW_PANCAKE_SIZE] = 20.0;
light.param[RS::LIGHT_PARAM_TRANSMITTANCE_BIAS] = 0.05;
+ light.param[RS::LIGHT_PARAM_SHADOW_VOLUMETRIC_FOG_FADE] = 1.0;
return light_owner.make_rid(light);
}
diff --git a/servers/rendering/rasterizer_rd/rasterizer_storage_rd.h b/servers/rendering/rasterizer_rd/rasterizer_storage_rd.h
index b7aedf8717..6e5923953b 100644
--- a/servers/rendering/rasterizer_rd/rasterizer_storage_rd.h
+++ b/servers/rendering/rasterizer_rd/rasterizer_storage_rd.h
@@ -1184,6 +1184,13 @@ public:
return light->param[RS::LIGHT_PARAM_TRANSMITTANCE_BIAS];
}
+ _FORCE_INLINE_ float light_get_shadow_volumetric_fog_fade(RID p_light) const {
+ const Light *light = light_owner.getornull(p_light);
+ ERR_FAIL_COND_V(!light, 0.0);
+
+ return light->param[RS::LIGHT_PARAM_SHADOW_VOLUMETRIC_FOG_FADE];
+ }
+
RS::LightBakeMode light_get_bake_mode(RID p_light);
uint32_t light_get_max_sdfgi_cascade(RID p_light);
uint64_t light_get_version(RID p_light) const;
diff --git a/servers/rendering/rasterizer_rd/shaders/SCsub b/servers/rendering/rasterizer_rd/shaders/SCsub
index 67f4edc626..3aa863be98 100644
--- a/servers/rendering/rasterizer_rd/shaders/SCsub
+++ b/servers/rendering/rasterizer_rd/shaders/SCsub
@@ -35,3 +35,5 @@ if "RD_GLSL" in env["BUILDERS"]:
env.RD_GLSL("sdfgi_direct_light.glsl")
env.RD_GLSL("sdfgi_debug.glsl")
env.RD_GLSL("sdfgi_debug_probes.glsl")
+ env.RD_GLSL("volumetric_fog.glsl")
+ env.RD_GLSL("shadow_reduce.glsl")
diff --git a/servers/rendering/rasterizer_rd/shaders/cluster_data_inc.glsl b/servers/rendering/rasterizer_rd/shaders/cluster_data_inc.glsl
new file mode 100644
index 0000000000..e723468dd8
--- /dev/null
+++ b/servers/rendering/rasterizer_rd/shaders/cluster_data_inc.glsl
@@ -0,0 +1,95 @@
+
+#define CLUSTER_COUNTER_SHIFT 20
+#define CLUSTER_POINTER_MASK ((1 << CLUSTER_COUNTER_SHIFT) - 1)
+#define CLUSTER_COUNTER_MASK 0xfff
+
+struct LightData { //this structure needs to be as packed as possible
+ vec3 position;
+ float inv_radius;
+ vec3 direction;
+ float size;
+ uint attenuation_energy; //attenuation
+ uint color_specular; //rgb color, a specular (8 bit unorm)
+ uint cone_attenuation_angle; // attenuation and angle, (16bit float)
+ uint shadow_color_enabled; //shadow rgb color, a>0.5 enabled (8bit unorm)
+ vec4 atlas_rect; // rect in the shadow atlas
+ mat4 shadow_matrix;
+ float shadow_bias;
+ float shadow_normal_bias;
+ float transmittance_bias;
+ float soft_shadow_size; // for spot, it's the size in uv coordinates of the light, for omni it's the span angle
+ float soft_shadow_scale; // scales the shadow kernel for blurrier shadows
+ uint mask;
+ float shadow_volumetric_fog_fade;
+ uint pad;
+ vec4 projector_rect; //projector rect in srgb decal atlas
+};
+
+#define REFLECTION_AMBIENT_DISABLED 0
+#define REFLECTION_AMBIENT_ENVIRONMENT 1
+#define REFLECTION_AMBIENT_COLOR 2
+
+struct ReflectionData {
+ vec3 box_extents;
+ float index;
+ vec3 box_offset;
+ uint mask;
+ vec4 params; // intensity, 0, interior , boxproject
+ vec3 ambient; // ambient color
+ uint ambient_mode;
+ mat4 local_matrix; // up to here for spot and omni, rest is for directional
+ // notes: for ambientblend, use distance to edge to blend between already existing global environment
+};
+
+struct DirectionalLightData {
+ vec3 direction;
+ float energy;
+ vec3 color;
+ float size;
+ float specular;
+ uint mask;
+ float softshadow_angle;
+ float soft_shadow_scale;
+ bool blend_splits;
+ bool shadow_enabled;
+ float fade_from;
+ float fade_to;
+ uvec3 pad;
+ float shadow_volumetric_fog_fade;
+ vec4 shadow_bias;
+ vec4 shadow_normal_bias;
+ vec4 shadow_transmittance_bias;
+ vec4 shadow_z_range;
+ vec4 shadow_range_begin;
+ vec4 shadow_split_offsets;
+ mat4 shadow_matrix1;
+ mat4 shadow_matrix2;
+ mat4 shadow_matrix3;
+ mat4 shadow_matrix4;
+ vec4 shadow_color1;
+ vec4 shadow_color2;
+ vec4 shadow_color3;
+ vec4 shadow_color4;
+ vec2 uv_scale1;
+ vec2 uv_scale2;
+ vec2 uv_scale3;
+ vec2 uv_scale4;
+};
+
+struct DecalData {
+ mat4 xform; //to decal transform
+ vec3 inv_extents;
+ float albedo_mix;
+ vec4 albedo_rect;
+ vec4 normal_rect;
+ vec4 orm_rect;
+ vec4 emission_rect;
+ vec4 modulate;
+ float emission_energy;
+ uint mask;
+ float upper_fade;
+ float lower_fade;
+ mat3x4 normal_xform;
+ vec3 normal;
+ float normal_fade;
+};
diff --git a/servers/rendering/rasterizer_rd/shaders/gi.glsl b/servers/rendering/rasterizer_rd/shaders/gi.glsl
index a1939f75ad..8011dadc72 100644
--- a/servers/rendering/rasterizer_rd/shaders/gi.glsl
+++ b/servers/rendering/rasterizer_rd/shaders/gi.glsl
@@ -80,7 +80,7 @@ struct GIProbeData {
float anisotropy_strength;
float ambient_occlusion;
float ambient_occlusion_size;
- uint pad2;
+ uint mipmaps;
};
layout(set = 0, binding = 16, std140) uniform GIProbes {
diff --git a/servers/rendering/rasterizer_rd/shaders/scene_high_end.glsl b/servers/rendering/rasterizer_rd/shaders/scene_high_end.glsl
index 792a1aa05f..5993e68317 100644
--- a/servers/rendering/rasterizer_rd/shaders/scene_high_end.glsl
+++ b/servers/rendering/rasterizer_rd/shaders/scene_high_end.glsl
@@ -1237,7 +1237,7 @@ void light_process_spot(uint idx, vec3 vertex, vec3 eye_vec, vec3 normal, vec3 v
float shadow_z = textureLod(sampler2D(shadow_atlas, material_samplers[SAMPLER_LINEAR_CLAMP]), splane.xy, 0.0).r;
//reconstruct depth
- shadow_z / lights.data[idx].inv_radius;
+ shadow_z /= lights.data[idx].inv_radius;
//distance to light plane
float z = dot(spot_dir, -light_rel_vec);
transmittance_z = z - shadow_z;
@@ -1601,6 +1601,51 @@ void sdfgi_process(uint cascade, vec3 cascade_pos, vec3 cam_pos, vec3 cam_normal
#endif //!defined(MODE_RENDER_DEPTH) && !defined(MODE_UNSHADED)
+#ifndef MODE_RENDER_DEPTH
+
+vec4 volumetric_fog_process(vec2 screen_uv, float z) {
+ vec3 fog_pos = vec3(screen_uv, z * scene_data.volumetric_fog_inv_length);
+ if (fog_pos.z < 0.0) {
+ return vec4(0.0);
+ } else if (fog_pos.z < 1.0) {
+ fog_pos.z = pow(fog_pos.z, scene_data.volumetric_fog_detail_spread);
+ }
+
+ return texture(sampler3D(volumetric_fog_texture, material_samplers[SAMPLER_LINEAR_CLAMP]), fog_pos);
+}
+
+vec4 fog_process(vec3 vertex) {
+ vec3 fog_color = scene_data.fog_light_color;
+
+ if (scene_data.fog_sun_scatter > 0.001) {
+ vec4 sun_scatter = vec4(0.0);
+ float sun_total = 0.0;
+ vec3 view = normalize(vertex);
+
+ for (uint i = 0; i < scene_data.directional_light_count; i++) {
+ vec3 light_color = directional_lights.data[i].color * directional_lights.data[i].energy;
+ float light_amount = pow(max(dot(view, directional_lights.data[i].direction), 0.0), 8.0);
+ fog_color += light_color * light_amount * scene_data.fog_sun_scatter;
+ }
+ }
+
+ float fog_amount = 1.0 - exp(vertex.z * scene_data.fog_density);
+
+ if (abs(scene_data.fog_height_density) > 0.001) {
+ float y = (scene_data.camera_matrix * vec4(vertex, 1.0)).y;
+
+ float y_dist = scene_data.fog_height - y;
+
+ float vfog_amount = clamp(exp(y_dist * scene_data.fog_height_density), 0.0, 1.0);
+
+ fog_amount = max(vfog_amount, fog_amount);
+ }
+
+ return vec4(fog_color, fog_amount);
+}
+
+#endif
+
void main() {
#ifdef MODE_DUAL_PARABOLOID
@@ -2187,8 +2232,8 @@ FRAGMENT_SHADER_CODE
trans_coord /= trans_coord.w;
float shadow_z = textureLod(sampler2D(directional_shadow_atlas, material_samplers[SAMPLER_LINEAR_CLAMP]), trans_coord.xy, 0.0).r;
- shadow_z *= directional_lights.data[i].shadow_transmittance_z_scale.x;
- float z = trans_coord.z * directional_lights.data[i].shadow_transmittance_z_scale.x;
+ shadow_z *= directional_lights.data[i].shadow_z_range.x;
+ float z = trans_coord.z * directional_lights.data[i].shadow_z_range.x;
transmittance_z = z - shadow_z;
}
@@ -2219,8 +2264,8 @@ FRAGMENT_SHADER_CODE
trans_coord /= trans_coord.w;
float shadow_z = textureLod(sampler2D(directional_shadow_atlas, material_samplers[SAMPLER_LINEAR_CLAMP]), trans_coord.xy, 0.0).r;
- shadow_z *= directional_lights.data[i].shadow_transmittance_z_scale.y;
- float z = trans_coord.z * directional_lights.data[i].shadow_transmittance_z_scale.y;
+ shadow_z *= directional_lights.data[i].shadow_z_range.y;
+ float z = trans_coord.z * directional_lights.data[i].shadow_z_range.y;
transmittance_z = z - shadow_z;
}
@@ -2251,8 +2296,8 @@ FRAGMENT_SHADER_CODE
trans_coord /= trans_coord.w;
float shadow_z = textureLod(sampler2D(directional_shadow_atlas, material_samplers[SAMPLER_LINEAR_CLAMP]), trans_coord.xy, 0.0).r;
- shadow_z *= directional_lights.data[i].shadow_transmittance_z_scale.z;
- float z = trans_coord.z * directional_lights.data[i].shadow_transmittance_z_scale.z;
+ shadow_z *= directional_lights.data[i].shadow_z_range.z;
+ float z = trans_coord.z * directional_lights.data[i].shadow_z_range.z;
transmittance_z = z - shadow_z;
}
@@ -2285,8 +2330,8 @@ FRAGMENT_SHADER_CODE
trans_coord /= trans_coord.w;
float shadow_z = textureLod(sampler2D(directional_shadow_atlas, material_samplers[SAMPLER_LINEAR_CLAMP]), trans_coord.xy, 0.0).r;
- shadow_z *= directional_lights.data[i].shadow_transmittance_z_scale.w;
- float z = trans_coord.z * directional_lights.data[i].shadow_transmittance_z_scale.w;
+ shadow_z *= directional_lights.data[i].shadow_z_range.w;
+ float z = trans_coord.z * directional_lights.data[i].shadow_z_range.w;
transmittance_z = z - shadow_z;
}
@@ -2662,8 +2707,6 @@ FRAGMENT_SHADER_CODE
diffuse_light *= 1.0 - metallic; // TODO: avoid all diffuse and ambient light calculations when metallic == 1 up to this point
ambient_light *= 1.0 - metallic;
- //fog
-
#ifdef MODE_MULTIPLE_RENDER_TARGETS
#ifdef MODE_UNSHADED
@@ -2679,16 +2722,37 @@ FRAGMENT_SHADER_CODE
specular_buffer = vec4(specular_light, metallic);
#endif
+ if (scene_data.volumetric_fog_enabled) {
+ vec4 fog = volumetric_fog_process(screen_uv, -vertex.z);
+ diffuse_buffer.rgb = mix(diffuse_buffer.rgb, fog.rgb, fog.a);
+ specular_buffer.rgb = mix(specular_buffer.rgb, vec3(0.0), fog.a);
+ }
+
+ if (scene_data.fog_enabled) {
+ vec4 fog = fog_process(vertex);
+ diffuse_buffer.rgb = mix(diffuse_buffer.rgb, fog.rgb, fog.a);
+ specular_buffer.rgb = mix(specular_buffer.rgb, vec3(0.0), fog.a);
+ }
+
#else //MODE_MULTIPLE_RENDER_TARGETS
#ifdef MODE_UNSHADED
frag_color = vec4(albedo, alpha);
#else
frag_color = vec4(emission + ambient_light + diffuse_light + specular_light, alpha);
- //frag_color = vec4(1.0);;;
-
+ //frag_color = vec4(1.0);
#endif //USE_NO_SHADING
+ if (scene_data.volumetric_fog_enabled) {
+ vec4 fog = volumetric_fog_process(screen_uv, -vertex.z);
+ frag_color.rgb = mix(frag_color.rgb, fog.rgb, fog.a);
+ }
+
+ if (scene_data.fog_enabled) {
+ vec4 fog = fog_process(vertex);
+ frag_color.rgb = mix(frag_color.rgb, fog.rgb, fog.a);
+ }
+
#endif //MODE_MULTIPLE_RENDER_TARGETS
#endif //MODE_RENDER_DEPTH
diff --git a/servers/rendering/rasterizer_rd/shaders/scene_high_end_inc.glsl b/servers/rendering/rasterizer_rd/shaders/scene_high_end_inc.glsl
index c4dc7bd675..66bfefbe89 100644
--- a/servers/rendering/rasterizer_rd/shaders/scene_high_end_inc.glsl
+++ b/servers/rendering/rasterizer_rd/shaders/scene_high_end_inc.glsl
@@ -3,6 +3,8 @@
#define MAX_GI_PROBES 8
+#include "cluster_data_inc.glsl"
+
layout(push_constant, binding = 0, std430) uniform DrawCall {
uint instance_index;
uint pad; //16 bits minimum size
@@ -94,40 +96,18 @@ layout(set = 0, binding = 3, std140) uniform SceneData {
ivec3 sdf_size;
bool gi_upscale_for_msaa;
-#if 0
- vec4 ambient_light_color;
- vec4 bg_color;
-
- vec4 fog_color_enabled;
- vec4 fog_sun_color_amount;
-
- float ambient_energy;
- float bg_energy;
-#endif
-
-#if 0
- vec2 shadow_atlas_pixel_size;
- vec2 directional_shadow_pixel_size;
+ bool volumetric_fog_enabled;
+ float volumetric_fog_inv_length;
+ float volumetric_fog_detail_spread;
+ uint volumetric_fog_pad;
- float z_far;
-
- float subsurface_scatter_width;
- float ambient_occlusion_affect_light;
- float ambient_occlusion_affect_ao_channel;
- float opaque_prepass_threshold;
-
- bool fog_depth_enabled;
- float fog_depth_begin;
- float fog_depth_end;
+ bool fog_enabled;
float fog_density;
- float fog_depth_curve;
- bool fog_transmit_enabled;
- float fog_transmit_curve;
- bool fog_height_enabled;
- float fog_height_min;
- float fog_height_max;
- float fog_height_curve;
-#endif
+ float fog_height;
+ float fog_height_density;
+
+ vec3 fog_light_color;
+ float fog_sun_scatter;
}
scene_data;
@@ -163,86 +143,16 @@ layout(set = 0, binding = 4, std430) restrict readonly buffer Instances {
}
instances;
-struct LightData { //this structure needs to be as packed as possible
- vec3 position;
- float inv_radius;
- vec3 direction;
- float size;
- uint attenuation_energy; //attenuation
- uint color_specular; //rgb color, a specular (8 bit unorm)
- uint cone_attenuation_angle; // attenuation and angle, (16bit float)
- uint shadow_color_enabled; //shadow rgb color, a>0.5 enabled (8bit unorm)
- vec4 atlas_rect; // rect in the shadow atlas
- mat4 shadow_matrix;
- float shadow_bias;
- float shadow_normal_bias;
- float transmittance_bias;
- float soft_shadow_size; // for spot, it's the size in uv coordinates of the light, for omni it's the span angle
- float soft_shadow_scale; // scales the shadow kernel for blurrier shadows
- uint mask;
- uint pad[2];
- vec4 projector_rect; //projector rect in srgb decal atlas
-};
-
layout(set = 0, binding = 5, std430) restrict readonly buffer Lights {
LightData data[];
}
lights;
-#define REFLECTION_AMBIENT_DISABLED 0
-#define REFLECTION_AMBIENT_ENVIRONMENT 1
-#define REFLECTION_AMBIENT_COLOR 2
-
-struct ReflectionData {
- vec3 box_extents;
- float index;
- vec3 box_offset;
- uint mask;
- vec4 params; // intensity, 0, interior , boxproject
- vec3 ambient; // ambient color
- uint ambient_mode;
- mat4 local_matrix; // up to here for spot and omni, rest is for directional
- // notes: for ambientblend, use distance to edge to blend between already existing global environment
-};
-
layout(set = 0, binding = 6) buffer restrict readonly ReflectionProbeData {
ReflectionData data[];
}
reflections;
-struct DirectionalLightData {
- vec3 direction;
- float energy;
- vec3 color;
- float size;
- float specular;
- uint mask;
- float softshadow_angle;
- float soft_shadow_scale;
- bool blend_splits;
- bool shadow_enabled;
- float fade_from;
- float fade_to;
- vec4 shadow_bias;
- vec4 shadow_normal_bias;
- vec4 shadow_transmittance_bias;
- vec4 shadow_transmittance_z_scale;
- vec4 shadow_range_begin;
- vec4 shadow_split_offsets;
- mat4 shadow_matrix1;
- mat4 shadow_matrix2;
- mat4 shadow_matrix3;
- mat4 shadow_matrix4;
- vec4 shadow_color1;
- vec4 shadow_color2;
- vec4 shadow_color3;
- vec4 shadow_color4;
- vec2 uv_scale1;
- vec2 uv_scale2;
- vec2 uv_scale3;
- vec2 uv_scale4;
-};
-
layout(set = 0, binding = 7, std140) uniform DirectionalLights {
DirectionalLightData data[MAX_DIRECTIONAL_LIGHT_DATA_STRUCTS];
}
@@ -271,31 +181,9 @@ layout(set = 0, binding = 12, std140) restrict readonly buffer LightmapCaptures
}
lightmap_captures;
-#define CLUSTER_COUNTER_SHIFT 20
-#define CLUSTER_POINTER_MASK ((1 << CLUSTER_COUNTER_SHIFT) - 1)
-#define CLUSTER_COUNTER_MASK 0xfff
-
layout(set = 0, binding = 13) uniform texture2D decal_atlas;
layout(set = 0, binding = 14) uniform texture2D decal_atlas_srgb;
-struct DecalData {
- mat4 xform; //to decal transform
- vec3 inv_extents;
- float albedo_mix;
- vec4 albedo_rect;
- vec4 normal_rect;
- vec4 orm_rect;
- vec4 emission_rect;
- vec4 modulate;
- float emission_energy;
- uint mask;
- float upper_fade;
- float lower_fade;
- mat3x4 normal_xform;
- vec3 normal;
- float normal_fade;
-};
-
layout(set = 0, binding = 15, std430) restrict readonly buffer Decals {
DecalData data[];
}
@@ -394,9 +282,7 @@ layout(set = 3, binding = 2) uniform texture2D normal_roughness_buffer;
layout(set = 3, binding = 4) uniform texture2D ao_buffer;
layout(set = 3, binding = 5) uniform texture2D ambient_buffer;
layout(set = 3, binding = 6) uniform texture2D reflection_buffer;
-
layout(set = 3, binding = 7) uniform texture2DArray sdfgi_lightprobe_texture;
-
layout(set = 3, binding = 8) uniform texture3D sdfgi_occlusion_cascades;
struct GIProbeData {
@@ -412,7 +298,7 @@ struct GIProbeData {
float anisotropy_strength;
float ambient_occlusion;
float ambient_occlusion_size;
- uint pad2;
+ uint mipmaps;
};
layout(set = 3, binding = 9, std140) uniform GIProbes {
@@ -420,6 +306,8 @@ layout(set = 3, binding = 9, std140) uniform GIProbes {
}
gi_probes;
+layout(set = 3, binding = 10) uniform texture3D volumetric_fog_texture;
+
#endif
/* Set 4 Skeleton & Instancing (Multimesh) */
diff --git a/servers/rendering/rasterizer_rd/shaders/sdfgi_integrate.glsl b/servers/rendering/rasterizer_rd/shaders/sdfgi_integrate.glsl
index e4779aafaf..1ec471d204 100644
--- a/servers/rendering/rasterizer_rd/shaders/sdfgi_integrate.glsl
+++ b/servers/rendering/rasterizer_rd/shaders/sdfgi_integrate.glsl
@@ -37,6 +37,8 @@ layout(rgba32i, set = 0, binding = 12) uniform restrict iimage2D lightprobe_aver
layout(rgba32i, set = 0, binding = 13) uniform restrict iimage2D lightprobe_average_parent_texture;
+layout(rgba16f, set = 0, binding = 14) uniform restrict writeonly image2DArray lightprobe_ambient_texture;
+
layout(set = 1, binding = 0) uniform textureCube sky_irradiance;
layout(set = 1, binding = 1) uniform sampler linear_sampler_mipmaps;
@@ -68,6 +70,9 @@ layout(push_constant, binding = 0, std430) uniform Params {
vec3 sky_color;
float y_mult;
+
+ bool store_ambient_texture;
+ uint pad[3];
}
params;
@@ -319,6 +324,13 @@ void main() {
imageStore(lightprobe_history_texture, prev_pos, ivalue);
imageStore(lightprobe_average_texture, average_pos, average);
+
+ if (params.store_ambient_texture && i == 0) {
+ ivec3 ambient_pos = ivec3(pos, int(params.cascade));
+ vec4 ambient_light = (vec4(average) / float(params.history_size)) / float(1 << HISTORY_BITS);
+ ambient_light *= 0.88622; // SHL0
+ imageStore(lightprobe_ambient_texture, ambient_pos, ambient_light);
+ }
}
#endif // MODE PROCESS
diff --git a/servers/rendering/rasterizer_rd/shaders/shadow_reduce.glsl b/servers/rendering/rasterizer_rd/shaders/shadow_reduce.glsl
new file mode 100644
index 0000000000..29443ae7db
--- /dev/null
+++ b/servers/rendering/rasterizer_rd/shaders/shadow_reduce.glsl
@@ -0,0 +1,105 @@
+#[compute]
+
+#version 450
+
+VERSION_DEFINES
+
+#define BLOCK_SIZE 8
+
+layout(local_size_x = BLOCK_SIZE, local_size_y = BLOCK_SIZE, local_size_z = 1) in;
+
+#ifdef MODE_REDUCE
+
+shared float tmp_data[BLOCK_SIZE * BLOCK_SIZE];
+const uint swizzle_table[BLOCK_SIZE] = uint[](0, 4, 2, 6, 1, 5, 3, 7);
+const uint unswizzle_table[BLOCK_SIZE] = uint[](0, 0, 0, 1, 0, 2, 1, 3);
+
+#endif
+
+layout(r32f, set = 0, binding = 0) uniform restrict readonly image2D source_depth;
+layout(r32f, set = 0, binding = 1) uniform restrict writeonly image2D dst_depth;
+
+layout(push_constant, binding = 1, std430) uniform Params {
+ ivec2 source_size;
+ ivec2 source_offset;
+ uint min_size;
+ uint gaussian_kernel_version;
+ ivec2 filter_dir;
+}
+params;
+
+void main() {
+#ifdef MODE_REDUCE
+
+ uvec2 pos = gl_LocalInvocationID.xy;
+
+ ivec2 image_offset = params.source_offset;
+ ivec2 image_pos = image_offset + ivec2(gl_GlobalInvocationID.xy);
+ uint dst_t = swizzle_table[pos.y] * BLOCK_SIZE + swizzle_table[pos.x];
+ tmp_data[dst_t] = imageLoad(source_depth, min(image_pos, params.source_size - ivec2(1))).r;
+ ivec2 image_size = params.source_size;
+
+ uint t = pos.y * BLOCK_SIZE + pos.x;
+
+ //neighbours
+ uint size = BLOCK_SIZE;
+
+ do {
+ groupMemoryBarrier();
+ barrier();
+
+ size >>= 1;
+ image_size >>= 1;
+ image_offset >>= 1;
+
+ if (all(lessThan(pos, uvec2(size)))) {
+ uint nx = t + size;
+ uint ny = t + (BLOCK_SIZE * size);
+ uint nxy = ny + size;
+
+ tmp_data[t] += tmp_data[nx];
+ tmp_data[t] += tmp_data[ny];
+ tmp_data[t] += tmp_data[nxy];
+ tmp_data[t] /= 4.0;
+ }
+
+ } while (size > params.min_size);
+
+ if (all(lessThan(pos, uvec2(size)))) {
+ image_pos = ivec2(unswizzle_table[size + pos.x], unswizzle_table[size + pos.y]);
+ image_pos += image_offset + ivec2(gl_WorkGroupID.xy) * int(size);
+
+ image_size = max(ivec2(1), image_size); //in case image size became 0
+
+ if (all(lessThan(image_pos, uvec2(image_size)))) {
+ imageStore(dst_depth, image_pos, vec4(tmp_data[t]));
+ }
+ }
+#endif
+
+#ifdef MODE_FILTER
+
+ ivec2 image_pos = params.source_offset + ivec2(gl_GlobalInvocationID.xy);
+ if (any(greaterThanEqual(image_pos, params.source_size))) {
+ return;
+ }
+
+ ivec2 clamp_min = ivec2(params.source_offset);
+ ivec2 clamp_max = ivec2(params.source_size) - 1;
+
+ //gaussian kernel, size 9, sigma 4
+ const int kernel_size = 9;
+ const float gaussian_kernel[kernel_size * 3] = float[](
+ 0.000229, 0.005977, 0.060598, 0.241732, 0.382928, 0.241732, 0.060598, 0.005977, 0.000229,
+ 0.028532, 0.067234, 0.124009, 0.179044, 0.20236, 0.179044, 0.124009, 0.067234, 0.028532,
+ 0.081812, 0.101701, 0.118804, 0.130417, 0.134535, 0.130417, 0.118804, 0.101701, 0.081812);
+ float accum = 0.0;
+ for (int i = 0; i < kernel_size; i++) {
+ ivec2 ofs = clamp(image_pos + params.filter_dir * (i - kernel_size / 2), clamp_min, clamp_max);
+ accum += imageLoad(source_depth, ofs).r * gaussian_kernel[params.gaussian_kernel_version + i];
+ }
+
+ imageStore(dst_depth, image_pos, vec4(accum));
+
+#endif
+}
diff --git a/servers/rendering/rasterizer_rd/shaders/volumetric_fog.glsl b/servers/rendering/rasterizer_rd/shaders/volumetric_fog.glsl
new file mode 100644
index 0000000000..cb19fb0b69
--- /dev/null
+++ b/servers/rendering/rasterizer_rd/shaders/volumetric_fog.glsl
@@ -0,0 +1,530 @@
+#[compute]
+
+#version 450
+
+VERSION_DEFINES
+
+#if defined(MODE_FOG) || defined(MODE_FILTER)
+
+layout(local_size_x = 8, local_size_y = 8, local_size_z = 1) in;
+
+#endif
+
+#if defined(MODE_DENSITY)
+
+layout(local_size_x = 4, local_size_y = 4, local_size_z = 4) in;
+
+#endif
+
+#include "cluster_data_inc.glsl"
+
+#define M_PI 3.14159265359
+
+layout(set = 0, binding = 1) uniform texture2D shadow_atlas;
+layout(set = 0, binding = 2) uniform texture2D directional_shadow_atlas;
+
+layout(set = 0, binding = 3, std430) restrict readonly buffer Lights {
+ LightData data[];
+}
+lights;
+
+layout(set = 0, binding = 4, std140) uniform DirectionalLights {
+ DirectionalLightData data[MAX_DIRECTIONAL_LIGHT_DATA_STRUCTS];
+}
+directional_lights;
+
+layout(set = 0, binding = 5) uniform utexture3D cluster_texture;
+
+layout(set = 0, binding = 6, std430) restrict readonly buffer ClusterData {
+ uint indices[];
+}
+cluster_data;
+
+layout(set = 0, binding = 7) uniform sampler linear_sampler;
+
+#ifdef MODE_DENSITY
+layout(rgba16f, set = 0, binding = 8) uniform restrict writeonly image3D density_map;
+layout(rgba16f, set = 0, binding = 9) uniform restrict readonly image3D fog_map; //unused
+#endif
+
+#ifdef MODE_FOG
+layout(rgba16f, set = 0, binding = 8) uniform restrict readonly image3D density_map;
+layout(rgba16f, set = 0, binding = 9) uniform restrict writeonly image3D fog_map;
+#endif
+
+#ifdef MODE_FILTER
+layout(rgba16f, set = 0, binding = 8) uniform restrict readonly image3D source_map;
+layout(rgba16f, set = 0, binding = 9) uniform restrict writeonly image3D dest_map;
+#endif
+
+layout(set = 0, binding = 10) uniform sampler shadow_sampler;
+
+#define MAX_GI_PROBES 8
+
+struct GIProbeData {
+ mat4 xform;
+ vec3 bounds;
+ float dynamic_range;
+
+ float bias;
+ float normal_bias;
+ bool blend_ambient;
+ uint texture_slot;
+
+ float anisotropy_strength;
+ float ambient_occlusion;
+ float ambient_occlusion_size;
+ uint mipmaps;
+};
+
+layout(set = 0, binding = 11, std140) uniform GIProbes {
+ GIProbeData data[MAX_GI_PROBES];
+}
+gi_probes;
+
+layout(set = 0, binding = 12) uniform texture3D gi_probe_textures[MAX_GI_PROBES];
+
+layout(set = 0, binding = 13) uniform sampler linear_sampler_with_mipmaps;
+
+#ifdef ENABLE_SDFGI
+
+// SDFGI Integration on set 1
+#define SDFGI_MAX_CASCADES 8
+
+struct SDFGIProbeCascadeData {
+ vec3 position;
+ float to_probe;
+ ivec3 probe_world_offset;
+ float to_cell; // 1/bounds * grid_size
+};
+
+layout(set = 1, binding = 0, std140) uniform SDFGI {
+ vec3 grid_size;
+ uint max_cascades;
+
+ bool use_occlusion;
+ int probe_axis_size;
+ float probe_to_uvw;
+ float normal_bias;
+
+ vec3 lightprobe_tex_pixel_size;
+ float energy;
+
+ vec3 lightprobe_uv_offset;
+ float y_mult;
+
+ vec3 occlusion_clamp;
+ uint pad3;
+
+ vec3 occlusion_renormalize;
+ uint pad4;
+
+ vec3 cascade_probe_size;
+ uint pad5;
+
+ SDFGIProbeCascadeData cascades[SDFGI_MAX_CASCADES];
+}
+sdfgi;
+
+layout(set = 1, binding = 1) uniform texture2DArray sdfgi_ambient_texture;
+
+layout(set = 1, binding = 2) uniform texture3D sdfgi_occlusion_texture;
+
+#endif //SDFGI
+
+layout(push_constant, binding = 0, std430) uniform Params {
+ vec2 fog_frustum_size_begin;
+ vec2 fog_frustum_size_end;
+
+ float fog_frustum_end;
+ float z_near;
+ float z_far;
+ int filter_axis;
+
+ ivec3 fog_volume_size;
+ uint directional_light_count;
+
+ vec3 light_color;
+ float base_density;
+
+ float detail_spread;
+ float gi_inject;
+ uint max_gi_probes;
+ uint pad;
+
+ mat3x4 cam_rotation;
+}
+params;
+
+float get_depth_at_pos(float cell_depth_size, int z) {
+ float d = float(z) * cell_depth_size + cell_depth_size * 0.5; //center of voxels
+ d = pow(d, params.detail_spread);
+ return params.fog_frustum_end * d;
+}
+
+vec3 hash3f(uvec3 x) {
+ x = ((x >> 16) ^ x) * 0x45d9f3b;
+ x = ((x >> 16) ^ x) * 0x45d9f3b;
+ x = (x >> 16) ^ x;
+ return vec3(x & 0xFFFFF) / vec3(float(0xFFFFF));
+}
+
+void main() {
+ vec3 fog_cell_size = 1.0 / vec3(params.fog_volume_size);
+
+#ifdef MODE_DENSITY
+
+ ivec3 pos = ivec3(gl_GlobalInvocationID.xyz);
+ if (any(greaterThanEqual(pos, params.fog_volume_size))) {
+ return; //do not compute
+ }
+
+ vec3 posf = vec3(pos);
+
+ //posf += mix(vec3(0.0),vec3(1.0),0.3) * hash3f(uvec3(pos)) * 2.0 - 1.0;
+
+ vec3 fog_unit_pos = posf * fog_cell_size + fog_cell_size * 0.5; //center of voxels
+ fog_unit_pos.z = pow(fog_unit_pos.z, params.detail_spread);
+
+ vec3 view_pos;
+ view_pos.xy = (fog_unit_pos.xy * 2.0 - 1.0) * mix(params.fog_frustum_size_begin, params.fog_frustum_size_end, vec2(fog_unit_pos.z));
+ view_pos.z = -params.fog_frustum_end * fog_unit_pos.z;
+ view_pos.y = -view_pos.y;
+
+ vec3 total_light = params.light_color;
+
+ float total_density = params.base_density;
+ float cell_depth_size = abs(view_pos.z - get_depth_at_pos(fog_cell_size.z, pos.z + 1));
+ //compute directional lights
+
+ for (uint i = 0; i < params.directional_light_count; i++) {
+ vec3 shadow_attenuation = vec3(1.0);
+
+ if (directional_lights.data[i].shadow_enabled) {
+ float depth_z = -view_pos.z;
+
+ vec4 pssm_coord;
+ vec3 shadow_color = directional_lights.data[i].shadow_color1.rgb;
+ vec3 light_dir = directional_lights.data[i].direction;
+ vec4 v = vec4(view_pos, 1.0);
+ float z_range;
+
+ if (depth_z < directional_lights.data[i].shadow_split_offsets.x) {
+ pssm_coord = (directional_lights.data[i].shadow_matrix1 * v);
+ pssm_coord /= pssm_coord.w;
+ z_range = directional_lights.data[i].shadow_z_range.x;
+
+ } else if (depth_z < directional_lights.data[i].shadow_split_offsets.y) {
+ pssm_coord = (directional_lights.data[i].shadow_matrix2 * v);
+ pssm_coord /= pssm_coord.w;
+ z_range = directional_lights.data[i].shadow_z_range.y;
+
+ } else if (depth_z < directional_lights.data[i].shadow_split_offsets.z) {
+ pssm_coord = (directional_lights.data[i].shadow_matrix3 * v);
+ pssm_coord /= pssm_coord.w;
+ z_range = directional_lights.data[i].shadow_z_range.z;
+
+ } else {
+ pssm_coord = (directional_lights.data[i].shadow_matrix4 * v);
+ pssm_coord /= pssm_coord.w;
+ z_range = directional_lights.data[i].shadow_z_range.w;
+ }
+
+ float depth = texture(sampler2D(directional_shadow_atlas, linear_sampler), pssm_coord.xy).r;
+ float shadow = exp(min(0.0, (depth - pssm_coord.z)) * z_range * directional_lights.data[i].shadow_volumetric_fog_fade);
+
+ /*
+ //float shadow = textureProj(sampler2DShadow(directional_shadow_atlas,shadow_sampler),pssm_coord);
+ float shadow = 0.0;
+ for(float xi=-1;xi<=1;xi++) {
+ for(float yi=-1;yi<=1;yi++) {
+ vec2 ofs = vec2(xi,yi) * 1.5 * params.directional_shadow_pixel_size;
+ shadow += textureProj(sampler2DShadow(directional_shadow_atlas,shadow_sampler),pssm_coord + vec4(ofs,0.0,0.0));
+ }
+
+ }
+
+ shadow /= 3.0 * 3.0;
+
+*/
+ shadow = mix(shadow, 1.0, smoothstep(directional_lights.data[i].fade_from, directional_lights.data[i].fade_to, view_pos.z)); //done with negative values for performance
+
+ shadow_attenuation = mix(shadow_color, vec3(1.0), shadow);
+ }
+
+ total_light += shadow_attenuation * directional_lights.data[i].color * directional_lights.data[i].energy / M_PI;
+ }
+
+ //compute lights from cluster
+
+ vec3 cluster_pos;
+ cluster_pos.xy = fog_unit_pos.xy;
+ cluster_pos.z = clamp((abs(view_pos.z) - params.z_near) / (params.z_far - params.z_near), 0.0, 1.0);
+
+ uvec4 cluster_cell = texture(usampler3D(cluster_texture, linear_sampler), cluster_pos);
+
+ uint omni_light_count = cluster_cell.x >> CLUSTER_COUNTER_SHIFT;
+ uint omni_light_pointer = cluster_cell.x & CLUSTER_POINTER_MASK;
+
+ for (uint i = 0; i < omni_light_count; i++) {
+ uint light_index = cluster_data.indices[omni_light_pointer + i];
+
+ vec3 light_pos = lights.data[i].position;
+ float d = distance(lights.data[i].position, view_pos) * lights.data[i].inv_radius;
+ vec3 shadow_attenuation = vec3(1.0);
+
+ if (d < 1.0) {
+ vec2 attenuation_energy = unpackHalf2x16(lights.data[i].attenuation_energy);
+ vec4 color_specular = unpackUnorm4x8(lights.data[i].color_specular);
+
+ float attenuation = pow(max(1.0 - d, 0.0), attenuation_energy.x);
+
+ vec3 light = attenuation_energy.y * color_specular.rgb / M_PI;
+
+ vec4 shadow_color_enabled = unpackUnorm4x8(lights.data[i].shadow_color_enabled);
+
+ if (shadow_color_enabled.a > 0.5) {
+ //has shadow
+ vec4 v = vec4(view_pos, 1.0);
+
+ vec4 splane = (lights.data[i].shadow_matrix * v);
+ float shadow_len = length(splane.xyz); //need to remember shadow len from here
+
+ splane.xyz = normalize(splane.xyz);
+ vec4 clamp_rect = lights.data[i].atlas_rect;
+
+ if (splane.z >= 0.0) {
+ splane.z += 1.0;
+
+ clamp_rect.y += clamp_rect.w;
+
+ } else {
+ splane.z = 1.0 - splane.z;
+ }
+
+ splane.xy /= splane.z;
+
+ splane.xy = splane.xy * 0.5 + 0.5;
+ splane.z = shadow_len * lights.data[i].inv_radius;
+ splane.xy = clamp_rect.xy + splane.xy * clamp_rect.zw;
+ splane.w = 1.0; //needed? i think it should be 1 already
+
+ float depth = texture(sampler2D(shadow_atlas, linear_sampler), splane.xy).r;
+ float shadow = exp(min(0.0, (depth - splane.z)) / lights.data[i].inv_radius * lights.data[i].shadow_volumetric_fog_fade);
+
+ shadow_attenuation = mix(shadow_color_enabled.rgb, vec3(1.0), shadow);
+ }
+ total_light += light * attenuation * shadow_attenuation;
+ }
+ }
+
+ uint spot_light_count = cluster_cell.y >> CLUSTER_COUNTER_SHIFT;
+ uint spot_light_pointer = cluster_cell.y & CLUSTER_POINTER_MASK;
+
+ for (uint i = 0; i < spot_light_count; i++) {
+ uint light_index = cluster_data.indices[spot_light_pointer + i];
+
+ vec3 light_pos = lights.data[i].position;
+ vec3 light_rel_vec = lights.data[i].position - view_pos;
+ float d = length(light_rel_vec) * lights.data[i].inv_radius;
+ vec3 shadow_attenuation = vec3(1.0);
+
+ if (d < 1.0) {
+ vec2 attenuation_energy = unpackHalf2x16(lights.data[i].attenuation_energy);
+ vec4 color_specular = unpackUnorm4x8(lights.data[i].color_specular);
+
+ float attenuation = pow(max(1.0 - d, 0.0), attenuation_energy.x);
+
+ vec3 spot_dir = lights.data[i].direction;
+ vec2 spot_att_angle = unpackHalf2x16(lights.data[i].cone_attenuation_angle);
+ float scos = max(dot(-normalize(light_rel_vec), spot_dir), spot_att_angle.y);
+ float spot_rim = max(0.0001, (1.0 - scos) / (1.0 - spot_att_angle.y));
+ attenuation *= 1.0 - pow(spot_rim, spot_att_angle.x);
+
+ vec3 light = attenuation_energy.y * color_specular.rgb / M_PI;
+
+ vec4 shadow_color_enabled = unpackUnorm4x8(lights.data[i].shadow_color_enabled);
+
+ if (shadow_color_enabled.a > 0.5) {
+ //has shadow
+ vec4 v = vec4(view_pos, 1.0);
+
+ vec4 splane = (lights.data[i].shadow_matrix * v);
+ splane /= splane.w;
+
+ float depth = texture(sampler2D(shadow_atlas, linear_sampler), splane.xy).r;
+ float shadow = exp(min(0.0, (depth - splane.z)) / lights.data[i].inv_radius * lights.data[i].shadow_volumetric_fog_fade);
+
+ shadow_attenuation = mix(shadow_color_enabled.rgb, vec3(1.0), shadow);
+ }
+
+ total_light += light * attenuation * shadow_attenuation;
+ }
+ }
+
+ vec3 world_pos = mat3(params.cam_rotation) * view_pos;
+
+ for (uint i = 0; i < params.max_gi_probes; i++) {
+ vec3 position = (gi_probes.data[i].xform * vec4(world_pos, 1.0)).xyz;
+
+ //this causes corrupted pixels, i have no idea why..
+ if (all(bvec2(all(greaterThanEqual(position, vec3(0.0))), all(lessThan(position, gi_probes.data[i].bounds))))) {
+ position /= gi_probes.data[i].bounds;
+
+ vec4 light = vec4(0.0);
+ for (uint j = 0; j < gi_probes.data[i].mipmaps; j++) {
+ vec4 slight = textureLod(sampler3D(gi_probe_textures[i], linear_sampler_with_mipmaps), position, float(j));
+ float a = (1.0 - light.a);
+ light += a * slight;
+ }
+
+ light.rgb *= gi_probes.data[i].dynamic_range * params.gi_inject;
+
+ total_light += light.rgb;
+ }
+ }
+
+ //sdfgi
+#ifdef ENABLE_SDFGI
+
+ {
+ float blend = -1.0;
+ vec3 ambient_total = vec3(0.0);
+
+ for (uint i = 0; i < sdfgi.max_cascades; i++) {
+ vec3 cascade_pos = (world_pos - sdfgi.cascades[i].position) * sdfgi.cascades[i].to_probe;
+
+ if (any(lessThan(cascade_pos, vec3(0.0))) || any(greaterThanEqual(cascade_pos, sdfgi.cascade_probe_size))) {
+ continue; //skip cascade
+ }
+
+ vec3 base_pos = floor(cascade_pos);
+ ivec3 probe_base_pos = ivec3(base_pos);
+
+ vec4 ambient_accum = vec4(0.0);
+
+ ivec3 tex_pos = ivec3(probe_base_pos.xy, int(i));
+ tex_pos.x += probe_base_pos.z * sdfgi.probe_axis_size;
+
+ for (uint j = 0; j < 8; j++) {
+ ivec3 offset = (ivec3(j) >> ivec3(0, 1, 2)) & ivec3(1, 1, 1);
+ ivec3 probe_posi = probe_base_pos;
+ probe_posi += offset;
+
+ // Compute weight
+
+ vec3 probe_pos = vec3(probe_posi);
+ vec3 probe_to_pos = cascade_pos - probe_pos;
+
+ vec3 trilinear = vec3(1.0) - abs(probe_to_pos);
+ float weight = trilinear.x * trilinear.y * trilinear.z;
+
+ // Compute lightprobe occlusion
+
+ if (sdfgi.use_occlusion) {
+ ivec3 occ_indexv = abs((sdfgi.cascades[i].probe_world_offset + probe_posi) & ivec3(1, 1, 1)) * ivec3(1, 2, 4);
+ vec4 occ_mask = mix(vec4(0.0), vec4(1.0), equal(ivec4(occ_indexv.x | occ_indexv.y), ivec4(0, 1, 2, 3)));
+
+ vec3 occ_pos = clamp(cascade_pos, probe_pos - sdfgi.occlusion_clamp, probe_pos + sdfgi.occlusion_clamp) * sdfgi.probe_to_uvw;
+ occ_pos.z += float(i);
+ if (occ_indexv.z != 0) { //z bit is on, means index is >=4, so make it switch to the other half of textures
+ occ_pos.x += 1.0;
+ }
+
+ occ_pos *= sdfgi.occlusion_renormalize;
+ float occlusion = dot(textureLod(sampler3D(sdfgi_occlusion_texture, linear_sampler), occ_pos, 0.0), occ_mask);
+
+ weight *= max(occlusion, 0.01);
+ }
+
+ // Compute ambient texture position
+
+ ivec3 uvw = tex_pos;
+ uvw.xy += offset.xy;
+ uvw.x += offset.z * sdfgi.probe_axis_size;
+
+ vec3 ambient = texelFetch(sampler2DArray(sdfgi_ambient_texture, linear_sampler), uvw, 0).rgb;
+
+ ambient_accum.rgb += ambient * weight;
+ ambient_accum.a += weight;
+ }
+
+ if (ambient_accum.a > 0) {
+ ambient_accum.rgb /= ambient_accum.a;
+ }
+ ambient_total = ambient_accum.rgb;
+ break;
+ }
+
+ total_light += ambient_total * params.gi_inject;
+ }
+
+#endif
+
+ imageStore(density_map, pos, vec4(total_light, total_density));
+#endif
+
+#ifdef MODE_FOG
+
+ ivec3 pos = ivec3(gl_GlobalInvocationID.xy, 0);
+
+ if (any(greaterThanEqual(pos, params.fog_volume_size))) {
+ return; //do not compute
+ }
+
+ vec4 fog_accum = vec4(0.0);
+ float prev_z = 0.0;
+
+ float t = 1.0;
+
+ for (int i = 0; i < params.fog_volume_size.z; i++) {
+ //compute fog position
+ ivec3 fog_pos = pos + ivec3(0, 0, i);
+ //get fog value
+ vec4 fog = imageLoad(density_map, fog_pos);
+
+ //get depth at cell pos
+ float z = get_depth_at_pos(fog_cell_size.z, i);
+ //get distance from previos pos
+ float d = abs(prev_z - z);
+ //compute exinction based on beer's
+ float extinction = t * exp(-d * fog.a);
+ //compute alpha based on different of extinctions
+ float alpha = t - extinction;
+ //update extinction
+ t = extinction;
+
+ fog_accum += vec4(fog.rgb * alpha, alpha);
+ prev_z = z;
+
+ vec4 fog_value;
+
+ if (fog_accum.a > 0.0) {
+ fog_value = vec4(fog_accum.rgb / fog_accum.a, 1.0 - t);
+ } else {
+ fog_value = vec4(0.0);
+ }
+
+ imageStore(fog_map, fog_pos, fog_value);
+ }
+
+#endif
+
+#ifdef MODE_FILTER
+
+ ivec3 pos = ivec3(gl_GlobalInvocationID.xyz);
+
+ const float gauss[7] = float[](0.071303, 0.131514, 0.189879, 0.214607, 0.189879, 0.131514, 0.071303);
+
+ const ivec3 filter_dir[3] = ivec3[](ivec3(1, 0, 0), ivec3(0, 1, 0), ivec3(0, 0, 1));
+ ivec3 offset = filter_dir[params.filter_axis];
+
+ vec4 accum = vec4(0.0);
+ for (int i = -3; i <= 3; i++) {
+ accum += imageLoad(source_map, clamp(pos + offset * i, ivec3(0), params.fog_volume_size - ivec3(1))) * gauss[i + 3];
+ }
+
+ imageStore(dest_map, pos, accum);
+
+#endif
+}
diff --git a/servers/rendering/rendering_server_raster.h b/servers/rendering/rendering_server_raster.h
index 706912b353..b4eac8cd76 100644
--- a/servers/rendering/rendering_server_raster.h
+++ b/servers/rendering/rendering_server_raster.h
@@ -562,9 +562,13 @@ public:
BIND6(environment_set_adjustment, RID, bool, float, float, float, RID)
- BIND5(environment_set_fog, RID, bool, const Color &, const Color &, float)
- BIND7(environment_set_fog_depth, RID, bool, float, float, float, bool, float)
- BIND5(environment_set_fog_height, RID, bool, float, float, float)
+ BIND8(environment_set_fog, RID, bool, const Color &, float, float, float, float, float)
+ BIND9(environment_set_volumetric_fog, RID, bool, float, const Color &, float, float, float, float, EnvVolumetricFogShadowFilter)
+
+ BIND2(environment_set_volumetric_fog_volume_size, int, int)
+ BIND1(environment_set_volumetric_fog_filter_active, bool)
+ BIND1(environment_set_volumetric_fog_directional_shadow_shrink_size, int)
+ BIND1(environment_set_volumetric_fog_positional_shadow_shrink_size, int)
BIND11(environment_set_sdfgi, RID, bool, EnvironmentSDFGICascades, float, EnvironmentSDFGIYScale, bool, bool, bool, float, float, float)
BIND1(environment_set_sdfgi_ray_count, EnvironmentSDFGIRayCount)
diff --git a/servers/rendering/rendering_server_wrap_mt.h b/servers/rendering/rendering_server_wrap_mt.h
index 60a694eed5..fb5c161c8a 100644
--- a/servers/rendering/rendering_server_wrap_mt.h
+++ b/servers/rendering/rendering_server_wrap_mt.h
@@ -479,9 +479,14 @@ public:
FUNC6(environment_set_adjustment, RID, bool, float, float, float, RID)
- FUNC5(environment_set_fog, RID, bool, const Color &, const Color &, float)
- FUNC7(environment_set_fog_depth, RID, bool, float, float, float, bool, float)
- FUNC5(environment_set_fog_height, RID, bool, float, float, float)
+ FUNC8(environment_set_fog, RID, bool, const Color &, float, float, float, float, float)
+
+ FUNC9(environment_set_volumetric_fog, RID, bool, float, const Color &, float, float, float, float, EnvVolumetricFogShadowFilter)
+
+ FUNC2(environment_set_volumetric_fog_volume_size, int, int)
+ FUNC1(environment_set_volumetric_fog_filter_active, bool)
+ FUNC1(environment_set_volumetric_fog_directional_shadow_shrink_size, int)
+ FUNC1(environment_set_volumetric_fog_positional_shadow_shrink_size, int)
FUNC3R(Ref<Image>, environment_bake_panorama, RID, bool, const Size2i &)
diff --git a/servers/rendering_server.cpp b/servers/rendering_server.cpp
index c156313c15..3b034da3aa 100644
--- a/servers/rendering_server.cpp
+++ b/servers/rendering_server.cpp
@@ -1747,11 +1747,7 @@ void RenderingServer::_bind_methods() {
ClassDB::bind_method(D_METHOD("environment_set_adjustment", "env", "enable", "brightness", "contrast", "saturation", "ramp"), &RenderingServer::environment_set_adjustment);
ClassDB::bind_method(D_METHOD("environment_set_ssr", "env", "enable", "max_steps", "fade_in", "fade_out", "depth_tolerance"), &RenderingServer::environment_set_ssr);
ClassDB::bind_method(D_METHOD("environment_set_ssao", "env", "enable", "radius", "intensity", "bias", "light_affect", "ao_channel_affect", "blur", "bilateral_sharpness"), &RenderingServer::environment_set_ssao);
- ClassDB::bind_method(D_METHOD("environment_set_fog", "env", "enable", "color", "sun_color", "sun_amount"), &RenderingServer::environment_set_fog);
-
- ClassDB::bind_method(D_METHOD("environment_set_fog_depth", "env", "enable", "depth_begin", "depth_end", "depth_curve", "transmit", "transmit_curve"), &RenderingServer::environment_set_fog_depth);
-
- ClassDB::bind_method(D_METHOD("environment_set_fog_height", "env", "enable", "min_height", "max_height", "height_curve"), &RenderingServer::environment_set_fog_height);
+ ClassDB::bind_method(D_METHOD("environment_set_fog", "env", "enable", "light_color", "light_energy", "sun_scatter", "density", "height", "height_density"), &RenderingServer::environment_set_fog);
ClassDB::bind_method(D_METHOD("scenario_create"), &RenderingServer::scenario_create);
ClassDB::bind_method(D_METHOD("scenario_set_debug", "scenario", "debug_mode"), &RenderingServer::scenario_set_debug);
@@ -2411,6 +2407,17 @@ RenderingServer::RenderingServer() {
ProjectSettings::get_singleton()->set_custom_property_info("rendering/sdfgi/probe_ray_count", PropertyInfo(Variant::INT, "rendering/sdfgi/probe_ray_count", PROPERTY_HINT_ENUM, "8 (Fastest),16,32,64,96,128 (Slowest)"));
GLOBAL_DEF("rendering/sdfgi/frames_to_converge", 1);
ProjectSettings::get_singleton()->set_custom_property_info("rendering/sdfgi/frames_to_converge", PropertyInfo(Variant::INT, "rendering/sdfgi/frames_to_converge", PROPERTY_HINT_ENUM, "5 (Less Latency but Lower Quality),10,15,20,25,30 (More Latency but Higher Quality)"));
+
+ GLOBAL_DEF("rendering/volumetric_fog/volume_size", 64);
+ ProjectSettings::get_singleton()->set_custom_property_info("rendering/volumetric_fog/volume_size", PropertyInfo(Variant::INT, "rendering/volumetric_fog/volume_size", PROPERTY_HINT_RANGE, "16,512,1"));
+ GLOBAL_DEF("rendering/volumetric_fog/volume_depth", 128);
+ ProjectSettings::get_singleton()->set_custom_property_info("rendering/volumetric_fog/volume_depth", PropertyInfo(Variant::INT, "rendering/volumetric_fog/volume_depth", PROPERTY_HINT_RANGE, "16,512,1"));
+ GLOBAL_DEF("rendering/volumetric_fog/use_filter", 0);
+ ProjectSettings::get_singleton()->set_custom_property_info("rendering/volumetric_fog/use_filter", PropertyInfo(Variant::INT, "rendering/volumetric_fog/use_filter", PROPERTY_HINT_ENUM, "No (Faster),Yes (Higher Quality)"));
+ GLOBAL_DEF("rendering/volumetric_fog/directional_shadow_shrink", 512);
+ ProjectSettings::get_singleton()->set_custom_property_info("rendering/volumetric_fog/directional_shadow_shrink", PropertyInfo(Variant::INT, "rendering/volumetric_fog/directional_shadow_shrink", PROPERTY_HINT_RANGE, "32,2048,1"));
+ GLOBAL_DEF("rendering/volumetric_fog/positional_shadow_shrink", 512);
+ ProjectSettings::get_singleton()->set_custom_property_info("rendering/volumetric_fog/positional_shadow_shrink", PropertyInfo(Variant::INT, "rendering/volumetric_fog/positional_shadow_shrink", PROPERTY_HINT_RANGE, "32,2048,1"));
}
RenderingServer::~RenderingServer() {
diff --git a/servers/rendering_server.h b/servers/rendering_server.h
index 109e9e53c5..a13fd4954b 100644
--- a/servers/rendering_server.h
+++ b/servers/rendering_server.h
@@ -390,6 +390,7 @@ public:
LIGHT_PARAM_SHADOW_BIAS,
LIGHT_PARAM_SHADOW_PANCAKE_SIZE,
LIGHT_PARAM_SHADOW_BLUR,
+ LIGHT_PARAM_SHADOW_VOLUMETRIC_FOG_FADE,
LIGHT_PARAM_TRANSMITTANCE_BIAS,
LIGHT_PARAM_MAX
};
@@ -861,9 +862,20 @@ public:
virtual void environment_set_sdfgi_frames_to_converge(EnvironmentSDFGIFramesToConverge p_frames) = 0;
- virtual void environment_set_fog(RID p_env, bool p_enable, const Color &p_color, const Color &p_sun_color, float p_sun_amount) = 0;
- virtual void environment_set_fog_depth(RID p_env, bool p_enable, float p_depth_begin, float p_depth_end, float p_depth_curve, bool p_transmit, float p_transmit_curve) = 0;
- virtual void environment_set_fog_height(RID p_env, bool p_enable, float p_min_height, float p_max_height, float p_height_curve) = 0;
+ virtual void environment_set_fog(RID p_env, bool p_enable, const Color &p_light_color, float p_light_energy, float p_sun_scatter, float p_density, float p_height, float p_height_density) = 0;
+
+ enum EnvVolumetricFogShadowFilter {
+ ENV_VOLUMETRIC_FOG_SHADOW_FILTER_DISABLED,
+ ENV_VOLUMETRIC_FOG_SHADOW_FILTER_LOW,
+ ENV_VOLUMETRIC_FOG_SHADOW_FILTER_MEDIUM,
+ ENV_VOLUMETRIC_FOG_SHADOW_FILTER_HIGH,
+ };
+
+ virtual void environment_set_volumetric_fog(RID p_env, bool p_enable, float p_density, const Color &p_light, float p_light_energy, float p_lenght, float p_detail_spread, float p_gi_inject, EnvVolumetricFogShadowFilter p_shadow_filter) = 0;
+ virtual void environment_set_volumetric_fog_volume_size(int p_size, int p_depth) = 0;
+ virtual void environment_set_volumetric_fog_filter_active(bool p_enable) = 0;
+ virtual void environment_set_volumetric_fog_directional_shadow_shrink_size(int p_shrink_size) = 0;
+ virtual void environment_set_volumetric_fog_positional_shadow_shrink_size(int p_shrink_size) = 0;
virtual Ref<Image> environment_bake_panorama(RID p_env, bool p_bake_irradiance, const Size2i &p_size) = 0;
diff --git a/tests/test_basis.cpp b/tests/test_basis.cpp
deleted file mode 100644
index 5904fc386a..0000000000
--- a/tests/test_basis.cpp
+++ /dev/null
@@ -1,325 +0,0 @@
-/*************************************************************************/
-/* test_basis.cpp */
-/*************************************************************************/
-/* This file is part of: */
-/* GODOT ENGINE */
-/* https://godotengine.org */
-/*************************************************************************/
-/* Copyright (c) 2007-2020 Juan Linietsky, Ariel Manzur. */
-/* Copyright (c) 2014-2020 Godot Engine contributors (cf. AUTHORS.md). */
-/* */
-/* Permission is hereby granted, free of charge, to any person obtaining */
-/* a copy of this software and associated documentation files (the */
-/* "Software"), to deal in the Software without restriction, including */
-/* without limitation the rights to use, copy, modify, merge, publish, */
-/* distribute, sublicense, and/or sell copies of the Software, and to */
-/* permit persons to whom the Software is furnished to do so, subject to */
-/* the following conditions: */
-/* */
-/* The above copyright notice and this permission notice shall be */
-/* included in all copies or substantial portions of the Software. */
-/* */
-/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
-/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
-/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.*/
-/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
-/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
-/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
-/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
-/*************************************************************************/
-
-#include "test_basis.h"
-
-#include "core/math/random_number_generator.h"
-#include "core/os/os.h"
-#include "core/ustring.h"
-
-namespace TestBasis {
-
-enum RotOrder {
- EulerXYZ,
- EulerXZY,
- EulerYZX,
- EulerYXZ,
- EulerZXY,
- EulerZYX
-};
-
-Vector3 deg2rad(const Vector3 &p_rotation) {
- return p_rotation / 180.0 * Math_PI;
-}
-
-Vector3 rad2deg(const Vector3 &p_rotation) {
- return p_rotation / Math_PI * 180.0;
-}
-
-Basis EulerToBasis(RotOrder mode, const Vector3 &p_rotation) {
- Basis ret;
- switch (mode) {
- case EulerXYZ:
- ret.set_euler_xyz(p_rotation);
- break;
-
- case EulerXZY:
- ret.set_euler_xzy(p_rotation);
- break;
-
- case EulerYZX:
- ret.set_euler_yzx(p_rotation);
- break;
-
- case EulerYXZ:
- ret.set_euler_yxz(p_rotation);
- break;
-
- case EulerZXY:
- ret.set_euler_zxy(p_rotation);
- break;
-
- case EulerZYX:
- ret.set_euler_zyx(p_rotation);
- break;
-
- default:
- // If you land here, Please integrate all rotation orders.
- CRASH_NOW_MSG("This is not unreachable.");
- }
-
- return ret;
-}
-
-Vector3 BasisToEuler(RotOrder mode, const Basis &p_rotation) {
- switch (mode) {
- case EulerXYZ:
- return p_rotation.get_euler_xyz();
-
- case EulerXZY:
- return p_rotation.get_euler_xzy();
-
- case EulerYZX:
- return p_rotation.get_euler_yzx();
-
- case EulerYXZ:
- return p_rotation.get_euler_yxz();
-
- case EulerZXY:
- return p_rotation.get_euler_zxy();
-
- case EulerZYX:
- return p_rotation.get_euler_zyx();
-
- default:
- // If you land here, Please integrate all rotation orders.
- CRASH_NOW_MSG("This is not unreachable.");
- return Vector3();
- }
-}
-
-String get_rot_order_name(RotOrder ro) {
- switch (ro) {
- case EulerXYZ:
- return "XYZ";
- case EulerXZY:
- return "XZY";
- case EulerYZX:
- return "YZX";
- case EulerYXZ:
- return "YXZ";
- case EulerZXY:
- return "ZXY";
- case EulerZYX:
- return "ZYX";
- default:
- return "[Not supported]";
- }
-}
-
-bool test_rotation(Vector3 deg_original_euler, RotOrder rot_order) {
- // This test:
- // 1. Converts the rotation vector from deg to rad.
- // 2. Converts euler to basis.
- // 3. Converts the above basis back into euler.
- // 4. Converts the above euler into basis again.
- // 5. Compares the basis obtained in step 2 with the basis of step 4
- //
- // The conversion "basis to euler", done in the step 3, may be different from
- // the original euler, even if the final rotation are the same.
- // This happens because there are more ways to represents the same rotation,
- // both valid, using eulers.
- // For this reason is necessary to convert that euler back to basis and finally
- // compares it.
- //
- // In this way we can assert that both functions: basis to euler / euler to basis
- // are correct.
-
- bool pass = true;
-
- // Euler to rotation
- const Vector3 original_euler = deg2rad(deg_original_euler);
- const Basis to_rotation = EulerToBasis(rot_order, original_euler);
-
- // Euler from rotation
- const Vector3 euler_from_rotation = BasisToEuler(rot_order, to_rotation);
- const Basis rotation_from_computed_euler = EulerToBasis(rot_order, euler_from_rotation);
-
- Basis res = to_rotation.inverse() * rotation_from_computed_euler;
-
- if ((res.get_axis(0) - Vector3(1.0, 0.0, 0.0)).length() > 0.1) {
- OS::get_singleton()->print("Fail due to X %ls\n", String(res.get_axis(0)).c_str());
- pass = false;
- }
- if ((res.get_axis(1) - Vector3(0.0, 1.0, 0.0)).length() > 0.1) {
- OS::get_singleton()->print("Fail due to Y %ls\n", String(res.get_axis(1)).c_str());
- pass = false;
- }
- if ((res.get_axis(2) - Vector3(0.0, 0.0, 1.0)).length() > 0.1) {
- OS::get_singleton()->print("Fail due to Z %ls\n", String(res.get_axis(2)).c_str());
- pass = false;
- }
-
- if (pass) {
- // Double check `to_rotation` decomposing with XYZ rotation order.
- const Vector3 euler_xyz_from_rotation = to_rotation.get_euler_xyz();
- Basis rotation_from_xyz_computed_euler;
- rotation_from_xyz_computed_euler.set_euler_xyz(euler_xyz_from_rotation);
-
- res = to_rotation.inverse() * rotation_from_xyz_computed_euler;
-
- if ((res.get_axis(0) - Vector3(1.0, 0.0, 0.0)).length() > 0.1) {
- OS::get_singleton()->print("Double check with XYZ rot order failed, due to X %ls\n", String(res.get_axis(0)).c_str());
- pass = false;
- }
- if ((res.get_axis(1) - Vector3(0.0, 1.0, 0.0)).length() > 0.1) {
- OS::get_singleton()->print("Double check with XYZ rot order failed, due to Y %ls\n", String(res.get_axis(1)).c_str());
- pass = false;
- }
- if ((res.get_axis(2) - Vector3(0.0, 0.0, 1.0)).length() > 0.1) {
- OS::get_singleton()->print("Double check with XYZ rot order failed, due to Z %ls\n", String(res.get_axis(2)).c_str());
- pass = false;
- }
- }
-
- if (pass == false) {
- // Print phase only if not pass.
- OS *os = OS::get_singleton();
- os->print("Rotation order: %ls\n.", get_rot_order_name(rot_order).c_str());
- os->print("Original Rotation: %ls\n", String(deg_original_euler).c_str());
- os->print("Quaternion to rotation order: %ls\n", String(rad2deg(euler_from_rotation)).c_str());
- }
-
- return pass;
-}
-
-void test_euler_conversion() {
- Vector<RotOrder> rotorder_to_test;
- rotorder_to_test.push_back(EulerXYZ);
- rotorder_to_test.push_back(EulerXZY);
- rotorder_to_test.push_back(EulerYZX);
- rotorder_to_test.push_back(EulerYXZ);
- rotorder_to_test.push_back(EulerZXY);
- rotorder_to_test.push_back(EulerZYX);
-
- Vector<Vector3> vectors_to_test;
-
- // Test the special cases.
- vectors_to_test.push_back(Vector3(0.0, 0.0, 0.0));
- vectors_to_test.push_back(Vector3(0.5, 0.5, 0.5));
- vectors_to_test.push_back(Vector3(-0.5, -0.5, -0.5));
- vectors_to_test.push_back(Vector3(40.0, 40.0, 40.0));
- vectors_to_test.push_back(Vector3(-40.0, -40.0, -40.0));
- vectors_to_test.push_back(Vector3(0.0, 0.0, -90.0));
- vectors_to_test.push_back(Vector3(0.0, -90.0, 0.0));
- vectors_to_test.push_back(Vector3(-90.0, 0.0, 0.0));
- vectors_to_test.push_back(Vector3(0.0, 0.0, 90.0));
- vectors_to_test.push_back(Vector3(0.0, 90.0, 0.0));
- vectors_to_test.push_back(Vector3(90.0, 0.0, 0.0));
- vectors_to_test.push_back(Vector3(0.0, 0.0, -30.0));
- vectors_to_test.push_back(Vector3(0.0, -30.0, 0.0));
- vectors_to_test.push_back(Vector3(-30.0, 0.0, 0.0));
- vectors_to_test.push_back(Vector3(0.0, 0.0, 30.0));
- vectors_to_test.push_back(Vector3(0.0, 30.0, 0.0));
- vectors_to_test.push_back(Vector3(30.0, 0.0, 0.0));
- vectors_to_test.push_back(Vector3(0.5, 50.0, 20.0));
- vectors_to_test.push_back(Vector3(-0.5, -50.0, -20.0));
- vectors_to_test.push_back(Vector3(0.5, 0.0, 90.0));
- vectors_to_test.push_back(Vector3(0.5, 0.0, -90.0));
- vectors_to_test.push_back(Vector3(360.0, 360.0, 360.0));
- vectors_to_test.push_back(Vector3(-360.0, -360.0, -360.0));
- vectors_to_test.push_back(Vector3(-90.0, 60.0, -90.0));
- vectors_to_test.push_back(Vector3(90.0, 60.0, -90.0));
- vectors_to_test.push_back(Vector3(90.0, -60.0, -90.0));
- vectors_to_test.push_back(Vector3(-90.0, -60.0, -90.0));
- vectors_to_test.push_back(Vector3(-90.0, 60.0, 90.0));
- vectors_to_test.push_back(Vector3(90.0, 60.0, 90.0));
- vectors_to_test.push_back(Vector3(90.0, -60.0, 90.0));
- vectors_to_test.push_back(Vector3(-90.0, -60.0, 90.0));
- vectors_to_test.push_back(Vector3(60.0, 90.0, -40.0));
- vectors_to_test.push_back(Vector3(60.0, -90.0, -40.0));
- vectors_to_test.push_back(Vector3(-60.0, -90.0, -40.0));
- vectors_to_test.push_back(Vector3(-60.0, 90.0, 40.0));
- vectors_to_test.push_back(Vector3(60.0, 90.0, 40.0));
- vectors_to_test.push_back(Vector3(60.0, -90.0, 40.0));
- vectors_to_test.push_back(Vector3(-60.0, -90.0, 40.0));
- vectors_to_test.push_back(Vector3(-90.0, 90.0, -90.0));
- vectors_to_test.push_back(Vector3(90.0, 90.0, -90.0));
- vectors_to_test.push_back(Vector3(90.0, -90.0, -90.0));
- vectors_to_test.push_back(Vector3(-90.0, -90.0, -90.0));
- vectors_to_test.push_back(Vector3(-90.0, 90.0, 90.0));
- vectors_to_test.push_back(Vector3(90.0, 90.0, 90.0));
- vectors_to_test.push_back(Vector3(90.0, -90.0, 90.0));
- vectors_to_test.push_back(Vector3(20.0, 150.0, 30.0));
- vectors_to_test.push_back(Vector3(20.0, -150.0, 30.0));
- vectors_to_test.push_back(Vector3(-120.0, -150.0, 30.0));
- vectors_to_test.push_back(Vector3(-120.0, -150.0, -130.0));
- vectors_to_test.push_back(Vector3(120.0, -150.0, -130.0));
- vectors_to_test.push_back(Vector3(120.0, 150.0, -130.0));
- vectors_to_test.push_back(Vector3(120.0, 150.0, 130.0));
-
- // Add 1000 random vectors with weirds numbers.
- RandomNumberGenerator rng;
- for (int _ = 0; _ < 1000; _ += 1) {
- vectors_to_test.push_back(Vector3(
- rng.randf_range(-1800, 1800),
- rng.randf_range(-1800, 1800),
- rng.randf_range(-1800, 1800)));
- }
-
- bool success = true;
- for (int h = 0; h < rotorder_to_test.size(); h += 1) {
- int passed = 0;
- int failed = 0;
- for (int i = 0; i < vectors_to_test.size(); i += 1) {
- if (test_rotation(vectors_to_test[i], rotorder_to_test[h])) {
- //OS::get_singleton()->print("Success. \n\n");
- passed += 1;
- } else {
- OS::get_singleton()->print("FAILED FAILED FAILED. \n\n");
- OS::get_singleton()->print("------------>\n");
- OS::get_singleton()->print("------------>\n");
- failed += 1;
- success = false;
- }
- }
-
- if (failed == 0) {
- OS::get_singleton()->print("%i passed tests for rotation order: %ls.\n", passed, get_rot_order_name(rotorder_to_test[h]).c_str());
- } else {
- OS::get_singleton()->print("%i FAILED tests for rotation order: %ls.\n", failed, get_rot_order_name(rotorder_to_test[h]).c_str());
- }
- }
-
- if (success) {
- OS::get_singleton()->print("Euler conversion checks passed.\n");
- } else {
- OS::get_singleton()->print("Euler conversion checks FAILED.\n");
- }
-}
-
-MainLoop *test() {
- OS::get_singleton()->print("Start euler conversion checks.\n");
- test_euler_conversion();
-
- return NULL;
-}
-
-} // namespace TestBasis
diff --git a/tests/test_basis.h b/tests/test_basis.h
index 63297bd3b8..05efe33788 100644
--- a/tests/test_basis.h
+++ b/tests/test_basis.h
@@ -31,10 +31,258 @@
#ifndef TEST_BASIS_H
#define TEST_BASIS_H
-#include "core/os/main_loop.h"
+#include "core/math/random_number_generator.h"
+#include "core/os/os.h"
+#include "core/ustring.h"
+
+#include "tests/test_macros.h"
namespace TestBasis {
-MainLoop *test();
+
+enum RotOrder {
+ EulerXYZ,
+ EulerXZY,
+ EulerYZX,
+ EulerYXZ,
+ EulerZXY,
+ EulerZYX
+};
+
+Vector3 deg2rad(const Vector3 &p_rotation) {
+ return p_rotation / 180.0 * Math_PI;
+}
+
+Vector3 rad2deg(const Vector3 &p_rotation) {
+ return p_rotation / Math_PI * 180.0;
+}
+
+Basis EulerToBasis(RotOrder mode, const Vector3 &p_rotation) {
+ Basis ret;
+ switch (mode) {
+ case EulerXYZ:
+ ret.set_euler_xyz(p_rotation);
+ break;
+
+ case EulerXZY:
+ ret.set_euler_xzy(p_rotation);
+ break;
+
+ case EulerYZX:
+ ret.set_euler_yzx(p_rotation);
+ break;
+
+ case EulerYXZ:
+ ret.set_euler_yxz(p_rotation);
+ break;
+
+ case EulerZXY:
+ ret.set_euler_zxy(p_rotation);
+ break;
+
+ case EulerZYX:
+ ret.set_euler_zyx(p_rotation);
+ break;
+
+ default:
+ // If you land here, Please integrate all rotation orders.
+ FAIL("This is not unreachable.");
+ }
+
+ return ret;
+}
+
+Vector3 BasisToEuler(RotOrder mode, const Basis &p_rotation) {
+ switch (mode) {
+ case EulerXYZ:
+ return p_rotation.get_euler_xyz();
+
+ case EulerXZY:
+ return p_rotation.get_euler_xzy();
+
+ case EulerYZX:
+ return p_rotation.get_euler_yzx();
+
+ case EulerYXZ:
+ return p_rotation.get_euler_yxz();
+
+ case EulerZXY:
+ return p_rotation.get_euler_zxy();
+
+ case EulerZYX:
+ return p_rotation.get_euler_zyx();
+
+ default:
+ // If you land here, Please integrate all rotation orders.
+ FAIL("This is not unreachable.");
+ return Vector3();
+ }
}
+String get_rot_order_name(RotOrder ro) {
+ switch (ro) {
+ case EulerXYZ:
+ return "XYZ";
+ case EulerXZY:
+ return "XZY";
+ case EulerYZX:
+ return "YZX";
+ case EulerYXZ:
+ return "YXZ";
+ case EulerZXY:
+ return "ZXY";
+ case EulerZYX:
+ return "ZYX";
+ default:
+ return "[Not supported]";
+ }
+}
+
+void test_rotation(Vector3 deg_original_euler, RotOrder rot_order) {
+ // This test:
+ // 1. Converts the rotation vector from deg to rad.
+ // 2. Converts euler to basis.
+ // 3. Converts the above basis back into euler.
+ // 4. Converts the above euler into basis again.
+ // 5. Compares the basis obtained in step 2 with the basis of step 4
+ //
+ // The conversion "basis to euler", done in the step 3, may be different from
+ // the original euler, even if the final rotation are the same.
+ // This happens because there are more ways to represents the same rotation,
+ // both valid, using eulers.
+ // For this reason is necessary to convert that euler back to basis and finally
+ // compares it.
+ //
+ // In this way we can assert that both functions: basis to euler / euler to basis
+ // are correct.
+
+ // Euler to rotation
+ const Vector3 original_euler = deg2rad(deg_original_euler);
+ const Basis to_rotation = EulerToBasis(rot_order, original_euler);
+
+ // Euler from rotation
+ const Vector3 euler_from_rotation = BasisToEuler(rot_order, to_rotation);
+ const Basis rotation_from_computed_euler = EulerToBasis(rot_order, euler_from_rotation);
+
+ Basis res = to_rotation.inverse() * rotation_from_computed_euler;
+
+ CHECK_MESSAGE((res.get_axis(0) - Vector3(1.0, 0.0, 0.0)).length() <= 0.1, vformat("Fail due to X %s\n", String(res.get_axis(0))).utf8().ptr());
+ CHECK_MESSAGE((res.get_axis(1) - Vector3(0.0, 1.0, 0.0)).length() <= 0.1, vformat("Fail due to Y %s\n", String(res.get_axis(1))).utf8().ptr());
+ CHECK_MESSAGE((res.get_axis(2) - Vector3(0.0, 0.0, 1.0)).length() <= 0.1, vformat("Fail due to Z %s\n", String(res.get_axis(2))).utf8().ptr());
+
+ // Double check `to_rotation` decomposing with XYZ rotation order.
+ const Vector3 euler_xyz_from_rotation = to_rotation.get_euler_xyz();
+ Basis rotation_from_xyz_computed_euler;
+ rotation_from_xyz_computed_euler.set_euler_xyz(euler_xyz_from_rotation);
+
+ res = to_rotation.inverse() * rotation_from_xyz_computed_euler;
+
+ CHECK_MESSAGE((res.get_axis(0) - Vector3(1.0, 0.0, 0.0)).length() <= 0.1, vformat("Double check with XYZ rot order failed, due to X %s\n", String(res.get_axis(0))).utf8().ptr());
+ CHECK_MESSAGE((res.get_axis(1) - Vector3(0.0, 1.0, 0.0)).length() <= 0.1, vformat("Double check with XYZ rot order failed, due to Y %s\n", String(res.get_axis(1))).utf8().ptr());
+ CHECK_MESSAGE((res.get_axis(2) - Vector3(0.0, 0.0, 1.0)).length() <= 0.1, vformat("Double check with XYZ rot order failed, due to Z %s\n", String(res.get_axis(2))).utf8().ptr());
+
+ INFO(vformat("Rotation order: %s\n.", get_rot_order_name(rot_order)).utf8().ptr());
+ INFO(vformat("Original Rotation: %s\n", String(deg_original_euler)).utf8().ptr());
+ INFO(vformat("Quaternion to rotation order: %s\n", String(rad2deg(euler_from_rotation))).utf8().ptr());
+}
+
+TEST_CASE("[Basis] Euler conversions") {
+ Vector<RotOrder> rotorder_to_test;
+ rotorder_to_test.push_back(EulerXYZ);
+ rotorder_to_test.push_back(EulerXZY);
+ rotorder_to_test.push_back(EulerYZX);
+ rotorder_to_test.push_back(EulerYXZ);
+ rotorder_to_test.push_back(EulerZXY);
+ rotorder_to_test.push_back(EulerZYX);
+
+ Vector<Vector3> vectors_to_test;
+
+ // Test the special cases.
+ vectors_to_test.push_back(Vector3(0.0, 0.0, 0.0));
+ vectors_to_test.push_back(Vector3(0.5, 0.5, 0.5));
+ vectors_to_test.push_back(Vector3(-0.5, -0.5, -0.5));
+ vectors_to_test.push_back(Vector3(40.0, 40.0, 40.0));
+ vectors_to_test.push_back(Vector3(-40.0, -40.0, -40.0));
+ vectors_to_test.push_back(Vector3(0.0, 0.0, -90.0));
+ vectors_to_test.push_back(Vector3(0.0, -90.0, 0.0));
+ vectors_to_test.push_back(Vector3(-90.0, 0.0, 0.0));
+ vectors_to_test.push_back(Vector3(0.0, 0.0, 90.0));
+ vectors_to_test.push_back(Vector3(0.0, 90.0, 0.0));
+ vectors_to_test.push_back(Vector3(90.0, 0.0, 0.0));
+ vectors_to_test.push_back(Vector3(0.0, 0.0, -30.0));
+ vectors_to_test.push_back(Vector3(0.0, -30.0, 0.0));
+ vectors_to_test.push_back(Vector3(-30.0, 0.0, 0.0));
+ vectors_to_test.push_back(Vector3(0.0, 0.0, 30.0));
+ vectors_to_test.push_back(Vector3(0.0, 30.0, 0.0));
+ vectors_to_test.push_back(Vector3(30.0, 0.0, 0.0));
+ vectors_to_test.push_back(Vector3(0.5, 50.0, 20.0));
+ vectors_to_test.push_back(Vector3(-0.5, -50.0, -20.0));
+ vectors_to_test.push_back(Vector3(0.5, 0.0, 90.0));
+ vectors_to_test.push_back(Vector3(0.5, 0.0, -90.0));
+ vectors_to_test.push_back(Vector3(360.0, 360.0, 360.0));
+ vectors_to_test.push_back(Vector3(-360.0, -360.0, -360.0));
+ vectors_to_test.push_back(Vector3(-90.0, 60.0, -90.0));
+ vectors_to_test.push_back(Vector3(90.0, 60.0, -90.0));
+ vectors_to_test.push_back(Vector3(90.0, -60.0, -90.0));
+ vectors_to_test.push_back(Vector3(-90.0, -60.0, -90.0));
+ vectors_to_test.push_back(Vector3(-90.0, 60.0, 90.0));
+ vectors_to_test.push_back(Vector3(90.0, 60.0, 90.0));
+ vectors_to_test.push_back(Vector3(90.0, -60.0, 90.0));
+ vectors_to_test.push_back(Vector3(-90.0, -60.0, 90.0));
+ vectors_to_test.push_back(Vector3(60.0, 90.0, -40.0));
+ vectors_to_test.push_back(Vector3(60.0, -90.0, -40.0));
+ vectors_to_test.push_back(Vector3(-60.0, -90.0, -40.0));
+ vectors_to_test.push_back(Vector3(-60.0, 90.0, 40.0));
+ vectors_to_test.push_back(Vector3(60.0, 90.0, 40.0));
+ vectors_to_test.push_back(Vector3(60.0, -90.0, 40.0));
+ vectors_to_test.push_back(Vector3(-60.0, -90.0, 40.0));
+ vectors_to_test.push_back(Vector3(-90.0, 90.0, -90.0));
+ vectors_to_test.push_back(Vector3(90.0, 90.0, -90.0));
+ vectors_to_test.push_back(Vector3(90.0, -90.0, -90.0));
+ vectors_to_test.push_back(Vector3(-90.0, -90.0, -90.0));
+ vectors_to_test.push_back(Vector3(-90.0, 90.0, 90.0));
+ vectors_to_test.push_back(Vector3(90.0, 90.0, 90.0));
+ vectors_to_test.push_back(Vector3(90.0, -90.0, 90.0));
+ vectors_to_test.push_back(Vector3(20.0, 150.0, 30.0));
+ vectors_to_test.push_back(Vector3(20.0, -150.0, 30.0));
+ vectors_to_test.push_back(Vector3(-120.0, -150.0, 30.0));
+ vectors_to_test.push_back(Vector3(-120.0, -150.0, -130.0));
+ vectors_to_test.push_back(Vector3(120.0, -150.0, -130.0));
+ vectors_to_test.push_back(Vector3(120.0, 150.0, -130.0));
+ vectors_to_test.push_back(Vector3(120.0, 150.0, 130.0));
+
+ for (int h = 0; h < rotorder_to_test.size(); h += 1) {
+ for (int i = 0; i < vectors_to_test.size(); i += 1) {
+ test_rotation(vectors_to_test[i], rotorder_to_test[h]);
+ }
+ }
+}
+
+TEST_CASE("[Stress][Basis] Euler conversions") {
+ Vector<RotOrder> rotorder_to_test;
+ rotorder_to_test.push_back(EulerXYZ);
+ rotorder_to_test.push_back(EulerXZY);
+ rotorder_to_test.push_back(EulerYZX);
+ rotorder_to_test.push_back(EulerYXZ);
+ rotorder_to_test.push_back(EulerZXY);
+ rotorder_to_test.push_back(EulerZYX);
+
+ Vector<Vector3> vectors_to_test;
+ // Add 1000 random vectors with weirds numbers.
+ RandomNumberGenerator rng;
+ for (int _ = 0; _ < 1000; _ += 1) {
+ vectors_to_test.push_back(Vector3(
+ rng.randf_range(-1800, 1800),
+ rng.randf_range(-1800, 1800),
+ rng.randf_range(-1800, 1800)));
+ }
+
+ for (int h = 0; h < rotorder_to_test.size(); h += 1) {
+ for (int i = 0; i < vectors_to_test.size(); i += 1) {
+ test_rotation(vectors_to_test[i], rotorder_to_test[h]);
+ }
+ }
+}
+
+} // namespace TestBasis
+
#endif
diff --git a/tests/test_class_db.cpp b/tests/test_class_db.cpp
deleted file mode 100644
index 3171091402..0000000000
--- a/tests/test_class_db.cpp
+++ /dev/null
@@ -1,882 +0,0 @@
-/*************************************************************************/
-/* test_class_db.cpp */
-/*************************************************************************/
-/* This file is part of: */
-/* GODOT ENGINE */
-/* https://godotengine.org */
-/*************************************************************************/
-/* Copyright (c) 2007-2020 Juan Linietsky, Ariel Manzur. */
-/* Copyright (c) 2014-2020 Godot Engine contributors (cf. AUTHORS.md). */
-/* */
-/* Permission is hereby granted, free of charge, to any person obtaining */
-/* a copy of this software and associated documentation files (the */
-/* "Software"), to deal in the Software without restriction, including */
-/* without limitation the rights to use, copy, modify, merge, publish, */
-/* distribute, sublicense, and/or sell copies of the Software, and to */
-/* permit persons to whom the Software is furnished to do so, subject to */
-/* the following conditions: */
-/* */
-/* The above copyright notice and this permission notice shall be */
-/* included in all copies or substantial portions of the Software. */
-/* */
-/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
-/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
-/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.*/
-/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
-/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
-/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
-/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
-/*************************************************************************/
-
-#include "test_class_db.h"
-
-#include "core/global_constants.h"
-#include "core/ordered_hash_map.h"
-#include "core/os/os.h"
-#include "core/string_name.h"
-#include "core/ustring.h"
-#include "core/variant.h"
-
-namespace TestClassDB {
-
-enum class [[nodiscard]] TestResult{
- FAILED,
- PASS
-};
-
-#define TEST_FAIL_COND(m_cond, m_msg) \
- if (unlikely(m_cond)) { \
- ERR_PRINT(m_msg); \
- return TestResult::FAILED; \
- } else \
- ((void)0)
-
-#define TEST_COND(m_cond, m_msg) \
- if (unlikely(m_cond)) { \
- ERR_PRINT(m_msg); \
- __test_result__ = TestResult::FAILED; \
- } else \
- ((void)0)
-
-#define TEST_FAIL_CHECK(m_test_expr) \
- if (unlikely((m_test_expr) == TestResult::FAILED)) { \
- return TestResult::FAILED; \
- } else \
- ((void)0)
-
-#define TEST_CHECK(m_test_expr) \
- if (unlikely((m_test_expr) == TestResult::FAILED)) { \
- __test_result__ = TestResult::FAILED; \
- } else \
- ((void)0)
-
-#define TEST_START() \
- TestResult __test_result__ = TestResult::PASS; \
- ((void)0)
-
-#define TEST_END() return __test_result__;
-
-struct TypeReference {
- StringName name;
- bool is_enum = false;
-};
-
-struct ConstantData {
- String name;
- int value = 0;
-};
-
-struct EnumData {
- StringName name;
- List<ConstantData> constants;
-
- _FORCE_INLINE_ bool operator==(const EnumData &p_enum) const {
- return p_enum.name == name;
- }
-};
-
-struct PropertyData {
- StringName name;
- int index = 0;
-
- StringName getter;
- StringName setter;
-};
-
-struct ArgumentData {
- TypeReference type;
- String name;
- bool has_defval = false;
- Variant defval;
-};
-
-struct MethodData {
- StringName name;
- TypeReference return_type;
- List<ArgumentData> arguments;
- bool is_virtual = false;
- bool is_vararg = false;
-};
-
-struct SignalData {
- StringName name;
- List<ArgumentData> arguments;
-};
-
-struct ExposedClass {
- StringName name;
- StringName base;
-
- bool is_singleton = false;
- bool is_instantiable = false;
- bool is_reference = false;
-
- ClassDB::APIType api_type;
-
- List<ConstantData> constants;
- List<EnumData> enums;
- List<PropertyData> properties;
- List<MethodData> methods;
- List<SignalData> signals_;
-
- const PropertyData *find_property_by_name(const StringName &p_name) const {
- for (const List<PropertyData>::Element *E = properties.front(); E; E = E->next()) {
- if (E->get().name == p_name) {
- return &E->get();
- }
- }
-
- return nullptr;
- }
-
- const MethodData *find_method_by_name(const StringName &p_name) const {
- for (const List<MethodData>::Element *E = methods.front(); E; E = E->next()) {
- if (E->get().name == p_name) {
- return &E->get();
- }
- }
-
- return nullptr;
- }
-};
-
-struct NamesCache {
- StringName variant_type = StaticCString::create("Variant");
- StringName object_class = StaticCString::create("Object");
- StringName reference_class = StaticCString::create("Reference");
- StringName string_type = StaticCString::create("String");
- StringName string_name_type = StaticCString::create("StringName");
- StringName node_path_type = StaticCString::create("NodePath");
- StringName bool_type = StaticCString::create("bool");
- StringName int_type = StaticCString::create("int");
- StringName float_type = StaticCString::create("float");
- StringName void_type = StaticCString::create("void");
- StringName vararg_stub_type = StaticCString::create("@VarArg@");
- StringName vector2_type = StaticCString::create("Vector2");
- StringName rect2_type = StaticCString::create("Rect2");
- StringName vector3_type = StaticCString::create("Vector3");
-
- // Object not included as it must be checked for all derived classes
- static constexpr int nullable_types_count = 17;
- StringName nullable_types[nullable_types_count] = {
- string_type,
- string_name_type,
- node_path_type,
-
- StaticCString::create(_STR(Array)),
- StaticCString::create(_STR(Dictionary)),
- StaticCString::create(_STR(Callable)),
- StaticCString::create(_STR(Signal)),
-
- StaticCString::create(_STR(PackedByteArray)),
- StaticCString::create(_STR(PackedInt32Array)),
- StaticCString::create(_STR(PackedInt64rray)),
- StaticCString::create(_STR(PackedFloat32Array)),
- StaticCString::create(_STR(PackedFloat64Array)),
- StaticCString::create(_STR(PackedStringArray)),
- StaticCString::create(_STR(PackedVector2Array)),
- StaticCString::create(_STR(PackedVector3Array)),
- StaticCString::create(_STR(PackedColorArray)),
- };
-
- bool is_nullable_type(const StringName &p_type) const {
- for (int i = 0; i < nullable_types_count; i++) {
- if (p_type == nullable_types[i]) {
- return true;
- }
- }
-
- return false;
- }
-};
-
-typedef OrderedHashMap<StringName, ExposedClass> ExposedClasses;
-
-struct Context {
- Vector<StringName> enum_types;
- Vector<StringName> builtin_types;
- ExposedClasses exposed_classes;
- List<EnumData> global_enums;
- NamesCache names_cache;
-
- const ExposedClass *find_exposed_class(const StringName &p_name) const {
- ExposedClasses::ConstElement elem = exposed_classes.find(p_name);
- return elem ? &elem.value() : nullptr;
- }
-
- const ExposedClass *find_exposed_class(const TypeReference &p_type_ref) const {
- ExposedClasses::ConstElement elem = exposed_classes.find(p_type_ref.name);
- return elem ? &elem.value() : nullptr;
- }
-
- bool has_type(const TypeReference &p_type_ref) const {
- if (builtin_types.find(p_type_ref.name) >= 0) {
- return true;
- }
-
- if (p_type_ref.is_enum) {
- if (enum_types.find(p_type_ref.name) >= 0) {
- return true;
- }
-
- // Enum not found. Most likely because none of its constants were bound, so it's empty. That's fine. Use int instead.
- return builtin_types.find(names_cache.int_type);
- }
-
- return false;
- }
-};
-
-bool arg_default_value_is_assignable_to_type(const Context &p_context, const Variant &p_val, const TypeReference &p_arg_type) {
- if (p_arg_type.name == p_context.names_cache.variant_type) {
- // Variant can take anything
- return true;
- }
-
- switch (p_val.get_type()) {
- case Variant::NIL:
- return p_context.find_exposed_class(p_arg_type) ||
- p_context.names_cache.is_nullable_type(p_arg_type.name);
- case Variant::BOOL:
- return p_arg_type.name == p_context.names_cache.bool_type;
- case Variant::INT:
- return p_arg_type.name == p_context.names_cache.int_type ||
- p_arg_type.name == p_context.names_cache.float_type ||
- p_arg_type.is_enum;
- case Variant::FLOAT:
- return p_arg_type.name == p_context.names_cache.float_type;
- case Variant::STRING:
- case Variant::STRING_NAME:
- return p_arg_type.name == p_context.names_cache.string_type ||
- p_arg_type.name == p_context.names_cache.string_name_type ||
- p_arg_type.name == p_context.names_cache.node_path_type;
- case Variant::NODE_PATH:
- return p_arg_type.name == p_context.names_cache.node_path_type;
- case Variant::TRANSFORM:
- case Variant::TRANSFORM2D:
- case Variant::BASIS:
- case Variant::QUAT:
- case Variant::PLANE:
- case Variant::AABB:
- case Variant::COLOR:
- case Variant::VECTOR2:
- case Variant::RECT2:
- case Variant::VECTOR3:
- case Variant::_RID:
- case Variant::ARRAY:
- case Variant::DICTIONARY:
- case Variant::PACKED_BYTE_ARRAY:
- case Variant::PACKED_INT32_ARRAY:
- case Variant::PACKED_INT64_ARRAY:
- case Variant::PACKED_FLOAT32_ARRAY:
- case Variant::PACKED_FLOAT64_ARRAY:
- case Variant::PACKED_STRING_ARRAY:
- case Variant::PACKED_VECTOR2_ARRAY:
- case Variant::PACKED_VECTOR3_ARRAY:
- case Variant::PACKED_COLOR_ARRAY:
- case Variant::CALLABLE:
- case Variant::SIGNAL:
- return p_arg_type.name == Variant::get_type_name(p_val.get_type());
- case Variant::OBJECT:
- return p_context.find_exposed_class(p_arg_type);
- case Variant::VECTOR2I:
- return p_arg_type.name == p_context.names_cache.vector2_type ||
- p_arg_type.name == Variant::get_type_name(p_val.get_type());
- case Variant::RECT2I:
- return p_arg_type.name == p_context.names_cache.rect2_type ||
- p_arg_type.name == Variant::get_type_name(p_val.get_type());
- case Variant::VECTOR3I:
- return p_arg_type.name == p_context.names_cache.vector3_type ||
- p_arg_type.name == Variant::get_type_name(p_val.get_type());
- default:
- ERR_PRINT("Unexpected Variant type: " + itos(p_val.get_type()));
- break;
- }
-
- return false;
-}
-
-TestResult validate_property(const Context &p_context, const ExposedClass &p_class, const PropertyData &p_prop) {
- TEST_START();
-
- const MethodData *setter = p_class.find_method_by_name(p_prop.setter);
-
- // Search it in base classes too
- const ExposedClass *top = &p_class;
- while (!setter && top->base != StringName()) {
- top = p_context.find_exposed_class(top->base);
- TEST_FAIL_COND(!top, "Class not found '" + top->base + "'. Inherited by '" + top->name + "'.");
- setter = top->find_method_by_name(p_prop.setter);
- }
-
- const MethodData *getter = p_class.find_method_by_name(p_prop.getter);
-
- // Search it in base classes too
- top = &p_class;
- while (!getter && top->base != StringName()) {
- top = p_context.find_exposed_class(top->base);
- TEST_FAIL_COND(!top, "Class not found '" + top->base + "'. Inherited by '" + top->name + "'.");
- getter = top->find_method_by_name(p_prop.getter);
- }
-
- TEST_FAIL_COND(!setter && !getter,
- "Couldn't find neither the setter nor the getter for property: '" + p_class.name + "." + String(p_prop.name) + "'.");
-
- if (setter) {
- int setter_argc = p_prop.index != -1 ? 2 : 1;
- TEST_FAIL_COND(setter->arguments.size() != setter_argc,
- "Invalid property setter argument count: '" + p_class.name + "." + String(p_prop.name) + "'.");
- }
-
- if (getter) {
- int getter_argc = p_prop.index != -1 ? 1 : 0;
- TEST_FAIL_COND(getter->arguments.size() != getter_argc,
- "Invalid property setter argument count: '" + p_class.name + "." + String(p_prop.name) + "'.");
- }
-
- if (getter && setter) {
- const ArgumentData &setter_first_arg = setter->arguments.back()->get();
- if (getter->return_type.name != setter_first_arg.type.name) {
- // Special case for Node::set_name
- bool whitelisted = getter->return_type.name == p_context.names_cache.string_name_type &&
- setter_first_arg.type.name == p_context.names_cache.string_type;
-
- TEST_FAIL_COND(!whitelisted,
- "Return type from getter doesn't match first argument of setter, for property: '" + p_class.name + "." + String(p_prop.name) + "'.");
- }
- }
-
- const TypeReference &prop_type_ref = getter ? getter->return_type : setter->arguments.back()->get().type;
-
- const ExposedClass *prop_class = p_context.find_exposed_class(prop_type_ref);
- if (prop_class) {
- TEST_COND(prop_class->is_singleton,
- "Property type is a singleton: '" + p_class.name + "." + String(p_prop.name) + "'.");
- } else {
- TEST_FAIL_COND(!p_context.has_type(prop_type_ref),
- "Property type '" + prop_type_ref.name + "' not found: '" + p_class.name + "." + String(p_prop.name) + "'.");
- }
-
- if (getter) {
- if (p_prop.index != -1) {
- const ArgumentData &idx_arg = getter->arguments.front()->get();
- if (idx_arg.type.name != p_context.names_cache.int_type) {
- // If not an int, it can be an enum
- TEST_COND(p_context.enum_types.find(idx_arg.type.name) < 0,
- "Invalid type '" + idx_arg.type.name + "' for index argument of property getter: '" + p_class.name + "." + String(p_prop.name) + "'.");
- }
- }
- }
-
- if (setter) {
- if (p_prop.index != -1) {
- const ArgumentData &idx_arg = setter->arguments.front()->get();
- if (idx_arg.type.name != p_context.names_cache.int_type) {
- // Assume the index parameter is an enum
- // If not an int, it can be an enum
- TEST_COND(p_context.enum_types.find(idx_arg.type.name) < 0,
- "Invalid type '" + idx_arg.type.name + "' for index argument of property setter: '" + p_class.name + "." + String(p_prop.name) + "'.");
- }
- }
- }
-
- TEST_END();
-}
-
-TestResult validate_method(const Context &p_context, const ExposedClass &p_class, const MethodData &p_method) {
- TEST_START();
-
- const ExposedClass *return_class = p_context.find_exposed_class(p_method.return_type);
- if (return_class) {
- TEST_COND(return_class->is_singleton,
- "Method return type is a singleton: '" + p_class.name + "." + p_method.name + "'.");
- }
-
- for (const List<ArgumentData>::Element *F = p_method.arguments.front(); F; F = F->next()) {
- const ArgumentData &arg = F->get();
-
- const ExposedClass *arg_class = p_context.find_exposed_class(arg.type);
- if (arg_class) {
- TEST_COND(arg_class->is_singleton,
- "Argument type is a singleton: '" + arg.name + "' of method '" + p_class.name + "." + p_method.name + "'.");
- } else {
- TEST_FAIL_COND(!p_context.has_type(arg.type),
- "Argument type '" + arg.type.name + "' not found: '" + arg.name + "' of method" + p_class.name + "." + p_method.name + "'.");
- }
-
- if (arg.has_defval) {
- TEST_COND(!arg_default_value_is_assignable_to_type(p_context, arg.defval, arg.type),
- "Invalid default value for parameter '" + arg.name + "' of method '" + p_class.name + "." + p_method.name + "'.");
- }
- }
-
- TEST_END();
-}
-
-TestResult validate_signal(const Context &p_context, const ExposedClass &p_class, const SignalData &p_signal) {
- TEST_START();
-
- for (const List<ArgumentData>::Element *F = p_signal.arguments.front(); F; F = F->next()) {
- const ArgumentData &arg = F->get();
-
- const ExposedClass *arg_class = p_context.find_exposed_class(arg.type);
- if (arg_class) {
- TEST_COND(arg_class->is_singleton,
- "Argument class is a singleton: '" + arg.name + "' of signal" + p_class.name + "." + p_signal.name + "'.");
- } else {
- TEST_FAIL_COND(!p_context.has_type(arg.type),
- "Argument type '" + arg.type.name + "' not found: '" + arg.name + "' of signal" + p_class.name + "." + p_signal.name + "'.");
- }
- }
-
- TEST_END();
-}
-
-TestResult validate_class(const Context &p_context, const ExposedClass &p_exposed_class) {
- TEST_START();
-
- bool is_derived_type = p_exposed_class.base != StringName();
-
- if (!is_derived_type) {
- // Asserts about the base Object class
- TEST_FAIL_COND(p_exposed_class.name != p_context.names_cache.object_class,
- "Class '" + p_exposed_class.name + "' has no base class.");
- TEST_FAIL_COND(!p_exposed_class.is_instantiable,
- "Object class is not instantiable.");
- TEST_FAIL_COND(p_exposed_class.api_type != ClassDB::API_CORE,
- "Object class is API is not API_CORE.");
- TEST_FAIL_COND(p_exposed_class.is_singleton,
- "Object class is registered as a singleton.");
- }
-
- TEST_FAIL_COND(p_exposed_class.is_singleton && p_exposed_class.base != p_context.names_cache.object_class,
- "Singleton base class '" + String(p_exposed_class.base) + "' is not Object, for class '" + p_exposed_class.name + "'.");
-
- TEST_FAIL_COND(is_derived_type && !p_context.exposed_classes.has(p_exposed_class.base),
- "Base type '" + p_exposed_class.base.operator String() + "' does not exist, for class '" + p_exposed_class.name + "'.");
-
- for (const List<PropertyData>::Element *F = p_exposed_class.properties.front(); F; F = F->next()) {
- TEST_CHECK(validate_property(p_context, p_exposed_class, F->get()));
- }
-
- for (const List<MethodData>::Element *F = p_exposed_class.methods.front(); F; F = F->next()) {
- TEST_CHECK(validate_method(p_context, p_exposed_class, F->get()));
- }
-
- for (const List<SignalData>::Element *F = p_exposed_class.signals_.front(); F; F = F->next()) {
- TEST_CHECK(validate_signal(p_context, p_exposed_class, F->get()));
- }
-
- TEST_END();
-}
-
-TestResult add_exposed_classes(Context &r_context) {
- TEST_START();
-
- List<StringName> class_list;
- ClassDB::get_class_list(&class_list);
- class_list.sort_custom<StringName::AlphCompare>();
-
- while (class_list.size()) {
- StringName class_name = class_list.front()->get();
-
- ClassDB::APIType api_type = ClassDB::get_api_type(class_name);
-
- if (api_type == ClassDB::API_NONE) {
- class_list.pop_front();
- continue;
- }
-
- if (!ClassDB::is_class_exposed(class_name)) {
- OS::get_singleton()->print("Ignoring class '%s' because it's not exposed\n", String(class_name).utf8().get_data());
- class_list.pop_front();
- continue;
- }
-
- if (!ClassDB::is_class_enabled(class_name)) {
- OS::get_singleton()->print("Ignoring class '%s' because it's not enabled\n", String(class_name).utf8().get_data());
- class_list.pop_front();
- continue;
- }
-
- ClassDB::ClassInfo *class_info = ClassDB::classes.getptr(class_name);
-
- ExposedClass exposed_class;
- exposed_class.name = class_name;
- exposed_class.api_type = api_type;
- exposed_class.is_singleton = Engine::get_singleton()->has_singleton(class_name);
- exposed_class.is_instantiable = class_info->creation_func && !exposed_class.is_singleton;
- exposed_class.is_reference = ClassDB::is_parent_class(class_name, "Reference");
- exposed_class.base = ClassDB::get_parent_class(class_name);
-
- // Add properties
-
- List<PropertyInfo> property_list;
- ClassDB::get_property_list(class_name, &property_list, true);
-
- Map<StringName, StringName> accessor_methods;
-
- for (const List<PropertyInfo>::Element *E = property_list.front(); E; E = E->next()) {
- const PropertyInfo &property = E->get();
-
- if (property.usage & PROPERTY_USAGE_GROUP || property.usage & PROPERTY_USAGE_SUBGROUP || property.usage & PROPERTY_USAGE_CATEGORY) {
- continue;
- }
-
- PropertyData prop;
- prop.name = property.name;
- prop.setter = ClassDB::get_property_setter(class_name, prop.name);
- prop.getter = ClassDB::get_property_getter(class_name, prop.name);
-
- if (prop.setter != StringName()) {
- accessor_methods[prop.setter] = prop.name;
- }
- if (prop.getter != StringName()) {
- accessor_methods[prop.getter] = prop.name;
- }
-
- bool valid = false;
- prop.index = ClassDB::get_property_index(class_name, prop.name, &valid);
- TEST_FAIL_COND(!valid, "Invalid property: '" + exposed_class.name + "." + String(prop.name) + "'.");
-
- exposed_class.properties.push_back(prop);
- }
-
- // Add methods
-
- List<MethodInfo> virtual_method_list;
- ClassDB::get_virtual_methods(class_name, &virtual_method_list, true);
-
- List<MethodInfo> method_list;
- ClassDB::get_method_list(class_name, &method_list, true);
- method_list.sort();
-
- for (List<MethodInfo>::Element *E = method_list.front(); E; E = E->next()) {
- const MethodInfo &method_info = E->get();
-
- int argc = method_info.arguments.size();
-
- if (method_info.name.empty()) {
- continue;
- }
-
- MethodData method;
- method.name = method_info.name;
-
- if (method_info.flags & METHOD_FLAG_VIRTUAL) {
- method.is_virtual = true;
- }
-
- PropertyInfo return_info = method_info.return_val;
-
- MethodBind *m = method.is_virtual ? nullptr : ClassDB::get_method(class_name, method_info.name);
-
- method.is_vararg = m && m->is_vararg();
-
- if (!m && !method.is_virtual) {
- TEST_FAIL_COND(!virtual_method_list.find(method_info),
- "Missing MethodBind for non-virtual method: '" + exposed_class.name + "." + method.name + "'.");
-
- // A virtual method without the virtual flag. This is a special case.
-
- // The method Object.free is registered as a virtual method, but without the virtual flag.
- // This is because this method is not supposed to be overridden, but called.
- // We assume the return type is void.
- method.return_type.name = r_context.names_cache.void_type;
-
- // Actually, more methods like this may be added in the future, which could return
- // something different. Let's put this check to notify us if that ever happens.
- if (exposed_class.name != r_context.names_cache.object_class || String(method.name) != "free") {
- WARN_PRINT("Notification: New unexpected virtual non-overridable method found."
- " We only expected Object.free, but found '" +
- exposed_class.name + "." + method.name + "'.");
- }
- } else if (return_info.type == Variant::INT && return_info.usage & PROPERTY_USAGE_CLASS_IS_ENUM) {
- method.return_type.name = return_info.class_name;
- method.return_type.is_enum = true;
- } else if (return_info.class_name != StringName()) {
- method.return_type.name = return_info.class_name;
-
- bool bad_reference_hint = !method.is_virtual && return_info.hint != PROPERTY_HINT_RESOURCE_TYPE &&
- ClassDB::is_parent_class(return_info.class_name, r_context.names_cache.reference_class);
- TEST_COND(bad_reference_hint, String() + "Return type is reference but hint is not '" _STR(PROPERTY_HINT_RESOURCE_TYPE) "'." +
- " Are you returning a reference type by pointer? Method: '" +
- exposed_class.name + "." + method.name + "'.");
- } else if (return_info.hint == PROPERTY_HINT_RESOURCE_TYPE) {
- method.return_type.name = return_info.hint_string;
- } else if (return_info.type == Variant::NIL && return_info.usage & PROPERTY_USAGE_NIL_IS_VARIANT) {
- method.return_type.name = r_context.names_cache.variant_type;
- } else if (return_info.type == Variant::NIL) {
- method.return_type.name = r_context.names_cache.void_type;
- } else {
- // NOTE: We don't care about the size and sign of int and float in these tests
- method.return_type.name = Variant::get_type_name(return_info.type);
- }
-
- for (int i = 0; i < argc; i++) {
- PropertyInfo arg_info = method_info.arguments[i];
-
- String orig_arg_name = arg_info.name;
-
- ArgumentData arg;
- arg.name = orig_arg_name;
-
- if (arg_info.type == Variant::INT && arg_info.usage & PROPERTY_USAGE_CLASS_IS_ENUM) {
- arg.type.name = arg_info.class_name;
- arg.type.is_enum = true;
- } else if (arg_info.class_name != StringName()) {
- arg.type.name = arg_info.class_name;
- } else if (arg_info.hint == PROPERTY_HINT_RESOURCE_TYPE) {
- arg.type.name = arg_info.hint_string;
- } else if (arg_info.type == Variant::NIL) {
- arg.type.name = r_context.names_cache.variant_type;
- } else {
- // NOTE: We don't care about the size and sign of int and float in these tests
- arg.type.name = Variant::get_type_name(arg_info.type);
- }
-
- if (m && m->has_default_argument(i)) {
- arg.has_defval = true;
- arg.defval = m->get_default_argument(i);
- }
-
- method.arguments.push_back(arg);
- }
-
- if (method.is_vararg) {
- ArgumentData vararg;
- vararg.type.name = r_context.names_cache.vararg_stub_type;
- vararg.name = "@varargs@";
- method.arguments.push_back(vararg);
- }
-
- TEST_COND(exposed_class.find_property_by_name(method.name),
- "Method name conflicts with property: '" + String(class_name) + "." + String(method.name) + "'.");
-
- // Classes starting with an underscore are ignored unless they're used as a property setter or getter
- if (!method.is_virtual && String(method.name)[0] == '_') {
- for (const List<PropertyData>::Element *F = exposed_class.properties.front(); F; F = F->next()) {
- const PropertyData &prop = F->get();
-
- if (prop.setter == method.name || prop.getter == method.name) {
- exposed_class.methods.push_back(method);
- break;
- }
- }
- } else {
- exposed_class.methods.push_back(method);
- }
- }
-
- // Add signals
-
- const HashMap<StringName, MethodInfo> &signal_map = class_info->signal_map;
- const StringName *k = nullptr;
-
- while ((k = signal_map.next(k))) {
- SignalData signal;
-
- const MethodInfo &method_info = signal_map.get(*k);
-
- signal.name = method_info.name;
-
- int argc = method_info.arguments.size();
-
- for (int i = 0; i < argc; i++) {
- PropertyInfo arg_info = method_info.arguments[i];
-
- String orig_arg_name = arg_info.name;
-
- ArgumentData arg;
- arg.name = orig_arg_name;
-
- if (arg_info.type == Variant::INT && arg_info.usage & PROPERTY_USAGE_CLASS_IS_ENUM) {
- arg.type.name = arg_info.class_name;
- arg.type.is_enum = true;
- } else if (arg_info.class_name != StringName()) {
- arg.type.name = arg_info.class_name;
- } else if (arg_info.hint == PROPERTY_HINT_RESOURCE_TYPE) {
- arg.type.name = arg_info.hint_string;
- } else if (arg_info.type == Variant::NIL) {
- arg.type.name = r_context.names_cache.variant_type;
- } else {
- // NOTE: We don't care about the size and sign of int and float in these tests
- arg.type.name = Variant::get_type_name(arg_info.type);
- }
-
- signal.arguments.push_back(arg);
- }
-
- bool method_conflict = exposed_class.find_property_by_name(signal.name);
-
- if (method_conflict || exposed_class.find_method_by_name(signal.name)) {
- // TODO:
- // ClassDB allows signal names that conflict with method or property names.
- // However registering a signal with a conflicting name is still considered wrong.
- // Unfortunately there are some existing cases that are yet to be fixed.
- // Until those are fixed we will print a warning instead of failing the test.
- WARN_PRINT("Signal name conflicts with " + String(method_conflict ? "method" : "property") +
- ": '" + String(class_name) + "." + String(signal.name) + "'.");
- }
-
- exposed_class.signals_.push_back(signal);
- }
-
- // Add enums and constants
-
- List<String> constants;
- ClassDB::get_integer_constant_list(class_name, &constants, true);
-
- const HashMap<StringName, List<StringName>> &enum_map = class_info->enum_map;
- k = nullptr;
-
- while ((k = enum_map.next(k))) {
- EnumData enum_;
- enum_.name = *k;
-
- const List<StringName> &enum_constants = enum_map.get(*k);
- for (const List<StringName>::Element *E = enum_constants.front(); E; E = E->next()) {
- const StringName &constant_name = E->get();
- int *value = class_info->constant_map.getptr(constant_name);
- TEST_FAIL_COND(!value, "Missing enum constant value: '" +
- String(class_name) + "." + String(enum_.name) + "." + String(constant_name) + "'.");
- constants.erase(constant_name);
-
- ConstantData constant;
- constant.name = constant_name;
- constant.value = *value;
-
- enum_.constants.push_back(constant);
- }
-
- exposed_class.enums.push_back(enum_);
-
- r_context.enum_types.push_back(String(class_name) + "." + String(*k));
- }
-
- for (const List<String>::Element *E = constants.front(); E; E = E->next()) {
- const String &constant_name = E->get();
- int *value = class_info->constant_map.getptr(StringName(E->get()));
- TEST_FAIL_COND(!value, "Missing enum constant value: '" + String(class_name) + "." + String(constant_name) + "'.");
-
- ConstantData constant;
- constant.name = constant_name;
- constant.value = *value;
-
- exposed_class.constants.push_back(constant);
- }
-
- r_context.exposed_classes.insert(class_name, exposed_class);
- class_list.pop_front();
- }
-
- TEST_END();
-}
-
-void add_builtin_types(Context &r_context) {
- // NOTE: We don't care about the size and sign of int and float in these tests
- for (int i = 0; i < Variant::VARIANT_MAX; i++) {
- r_context.builtin_types.push_back(Variant::get_type_name(Variant::Type(i)));
- }
-
- r_context.builtin_types.push_back(_STR(Variant));
- r_context.builtin_types.push_back(r_context.names_cache.vararg_stub_type);
- r_context.builtin_types.push_back("void");
-}
-
-void add_global_enums(Context &r_context) {
- int global_constants_count = GlobalConstants::get_global_constant_count();
-
- if (global_constants_count > 0) {
- for (int i = 0; i < global_constants_count; i++) {
- StringName enum_name = GlobalConstants::get_global_constant_enum(i);
-
- if (enum_name != StringName()) {
- ConstantData constant;
- constant.name = GlobalConstants::get_global_constant_name(i);
- constant.value = GlobalConstants::get_global_constant_value(i);
-
- EnumData enum_;
- enum_.name = enum_name;
- List<EnumData>::Element *enum_match = r_context.global_enums.find(enum_);
- if (enum_match) {
- enum_match->get().constants.push_back(constant);
- } else {
- enum_.constants.push_back(constant);
- r_context.global_enums.push_back(enum_);
- }
- }
- }
-
- for (List<EnumData>::Element *E = r_context.global_enums.front(); E; E = E->next()) {
- r_context.enum_types.push_back(E->get().name);
- }
- }
-
- // HARDCODED
- List<StringName> hardcoded_enums;
- hardcoded_enums.push_back("Vector2.Axis");
- hardcoded_enums.push_back("Vector2i.Axis");
- hardcoded_enums.push_back("Vector3.Axis");
- hardcoded_enums.push_back("Vector3i.Axis");
- for (List<StringName>::Element *E = hardcoded_enums.front(); E; E = E->next()) {
- // These enums are not generated and must be written manually (e.g.: Vector3.Axis)
- // Here, we assume core types do not begin with underscore
- r_context.enum_types.push_back(E->get());
- }
-}
-
-TestResult run_class_db_tests() {
- TEST_START();
-
- Context context;
-
- TEST_FAIL_CHECK(add_exposed_classes(context));
- add_builtin_types(context);
- add_global_enums(context);
-
- const ExposedClass *object_class = context.find_exposed_class(context.names_cache.object_class);
- TEST_FAIL_COND(!object_class, "Object class not found.");
- TEST_FAIL_COND(object_class->base != StringName(),
- "Object class derives from another class: '" + object_class->base + "'.");
-
- for (ExposedClasses::Element E = context.exposed_classes.front(); E; E = E.next()) {
- TEST_CHECK(validate_class(context, E.value()));
- }
-
- TEST_END();
-}
-
-MainLoop *test() {
- TestResult pass = run_class_db_tests();
-
- OS::get_singleton()->print("ClassDB tests: %s\n", pass == TestResult::PASS ? "PASS" : "FAILED");
-
- if (pass == TestResult::FAILED) {
- OS::get_singleton()->set_exit_code(pass == TestResult::PASS ? 0 : 1);
- }
-
- return nullptr;
-}
-
-} // namespace TestClassDB
diff --git a/tests/test_class_db.h b/tests/test_class_db.h
index 1a31cfb01b..d0d8136874 100644
--- a/tests/test_class_db.h
+++ b/tests/test_class_db.h
@@ -31,12 +31,806 @@
#ifndef GODOT_TEST_CLASS_DB_H
#define GODOT_TEST_CLASS_DB_H
-#include "core/os/main_loop.h"
+#include "core/register_core_types.h"
+
+#include "core/global_constants.h"
+#include "core/ordered_hash_map.h"
+#include "core/os/os.h"
+#include "core/string_name.h"
+#include "core/ustring.h"
+#include "core/variant.h"
+
+#include "tests/test_macros.h"
+
+#define TEST_COND DOCTEST_CHECK_FALSE_MESSAGE
+#define TEST_FAIL DOCTEST_FAIL
+#define TEST_FAIL_COND DOCTEST_REQUIRE_FALSE_MESSAGE
+#define TEST_FAIL_COND_WARN DOCTEST_WARN_FALSE_MESSAGE
namespace TestClassDB {
-MainLoop *test();
+struct TypeReference {
+ StringName name;
+ bool is_enum = false;
+};
+
+struct ConstantData {
+ String name;
+ int value = 0;
+};
+
+struct EnumData {
+ StringName name;
+ List<ConstantData> constants;
+
+ _FORCE_INLINE_ bool operator==(const EnumData &p_enum) const {
+ return p_enum.name == name;
+ }
+};
+
+struct PropertyData {
+ StringName name;
+ int index = 0;
+
+ StringName getter;
+ StringName setter;
+};
+
+struct ArgumentData {
+ TypeReference type;
+ String name;
+ bool has_defval = false;
+ Variant defval;
+};
+
+struct MethodData {
+ StringName name;
+ TypeReference return_type;
+ List<ArgumentData> arguments;
+ bool is_virtual = false;
+ bool is_vararg = false;
+};
+
+struct SignalData {
+ StringName name;
+ List<ArgumentData> arguments;
+};
+
+struct ExposedClass {
+ StringName name;
+ StringName base;
+
+ bool is_singleton = false;
+ bool is_instantiable = false;
+ bool is_reference = false;
+
+ ClassDB::APIType api_type;
+
+ List<ConstantData> constants;
+ List<EnumData> enums;
+ List<PropertyData> properties;
+ List<MethodData> methods;
+ List<SignalData> signals_;
+
+ const PropertyData *find_property_by_name(const StringName &p_name) const {
+ for (const List<PropertyData>::Element *E = properties.front(); E; E = E->next()) {
+ if (E->get().name == p_name) {
+ return &E->get();
+ }
+ }
+
+ return nullptr;
+ }
+
+ const MethodData *find_method_by_name(const StringName &p_name) const {
+ for (const List<MethodData>::Element *E = methods.front(); E; E = E->next()) {
+ if (E->get().name == p_name) {
+ return &E->get();
+ }
+ }
+
+ return nullptr;
+ }
+};
+
+struct NamesCache {
+ StringName variant_type = StaticCString::create("Variant");
+ StringName object_class = StaticCString::create("Object");
+ StringName reference_class = StaticCString::create("Reference");
+ StringName string_type = StaticCString::create("String");
+ StringName string_name_type = StaticCString::create("StringName");
+ StringName node_path_type = StaticCString::create("NodePath");
+ StringName bool_type = StaticCString::create("bool");
+ StringName int_type = StaticCString::create("int");
+ StringName float_type = StaticCString::create("float");
+ StringName void_type = StaticCString::create("void");
+ StringName vararg_stub_type = StaticCString::create("@VarArg@");
+ StringName vector2_type = StaticCString::create("Vector2");
+ StringName rect2_type = StaticCString::create("Rect2");
+ StringName vector3_type = StaticCString::create("Vector3");
+ // Object not included as it must be checked for all derived classes
+ static constexpr int nullable_types_count = 17;
+ StringName nullable_types[nullable_types_count] = {
+ string_type,
+ string_name_type,
+ node_path_type,
+
+ StaticCString::create(_STR(Array)),
+ StaticCString::create(_STR(Dictionary)),
+ StaticCString::create(_STR(Callable)),
+ StaticCString::create(_STR(Signal)),
+
+ StaticCString::create(_STR(PackedByteArray)),
+ StaticCString::create(_STR(PackedInt32Array)),
+ StaticCString::create(_STR(PackedInt64rray)),
+ StaticCString::create(_STR(PackedFloat32Array)),
+ StaticCString::create(_STR(PackedFloat64Array)),
+ StaticCString::create(_STR(PackedStringArray)),
+ StaticCString::create(_STR(PackedVector2Array)),
+ StaticCString::create(_STR(PackedVector3Array)),
+ StaticCString::create(_STR(PackedColorArray)),
+ };
+
+ bool is_nullable_type(const StringName &p_type) const {
+ for (int i = 0; i < nullable_types_count; i++) {
+ if (p_type == nullable_types[i]) {
+ return true;
+ }
+ }
+
+ return false;
+ }
+};
+
+typedef OrderedHashMap<StringName, ExposedClass> ExposedClasses;
+
+struct Context {
+ Vector<StringName> enum_types;
+ Vector<StringName> builtin_types;
+ ExposedClasses exposed_classes;
+ List<EnumData> global_enums;
+ NamesCache names_cache;
+
+ const ExposedClass *find_exposed_class(const StringName &p_name) const {
+ ExposedClasses::ConstElement elem = exposed_classes.find(p_name);
+ return elem ? &elem.value() : nullptr;
+ }
+
+ const ExposedClass *find_exposed_class(const TypeReference &p_type_ref) const {
+ ExposedClasses::ConstElement elem = exposed_classes.find(p_type_ref.name);
+ return elem ? &elem.value() : nullptr;
+ }
+
+ bool has_type(const TypeReference &p_type_ref) const {
+ if (builtin_types.find(p_type_ref.name) >= 0) {
+ return true;
+ }
+
+ if (p_type_ref.is_enum) {
+ if (enum_types.find(p_type_ref.name) >= 0) {
+ return true;
+ }
+
+ // Enum not found. Most likely because none of its constants were bound, so it's empty. That's fine. Use int instead.
+ return builtin_types.find(names_cache.int_type);
+ }
+
+ return false;
+ }
+};
+
+bool arg_default_value_is_assignable_to_type(const Context &p_context, const Variant &p_val, const TypeReference &p_arg_type, String *r_err_msg = nullptr) {
+ if (p_arg_type.name == p_context.names_cache.variant_type) {
+ // Variant can take anything
+ return true;
+ }
+
+ switch (p_val.get_type()) {
+ case Variant::NIL:
+ return p_context.find_exposed_class(p_arg_type) ||
+ p_context.names_cache.is_nullable_type(p_arg_type.name);
+ case Variant::BOOL:
+ return p_arg_type.name == p_context.names_cache.bool_type;
+ case Variant::INT:
+ return p_arg_type.name == p_context.names_cache.int_type ||
+ p_arg_type.name == p_context.names_cache.float_type ||
+ p_arg_type.is_enum;
+ case Variant::FLOAT:
+ return p_arg_type.name == p_context.names_cache.float_type;
+ case Variant::STRING:
+ case Variant::STRING_NAME:
+ return p_arg_type.name == p_context.names_cache.string_type ||
+ p_arg_type.name == p_context.names_cache.string_name_type ||
+ p_arg_type.name == p_context.names_cache.node_path_type;
+ case Variant::NODE_PATH:
+ return p_arg_type.name == p_context.names_cache.node_path_type;
+ case Variant::TRANSFORM:
+ case Variant::TRANSFORM2D:
+ case Variant::BASIS:
+ case Variant::QUAT:
+ case Variant::PLANE:
+ case Variant::AABB:
+ case Variant::COLOR:
+ case Variant::VECTOR2:
+ case Variant::RECT2:
+ case Variant::VECTOR3:
+ case Variant::_RID:
+ case Variant::ARRAY:
+ case Variant::DICTIONARY:
+ case Variant::PACKED_BYTE_ARRAY:
+ case Variant::PACKED_INT32_ARRAY:
+ case Variant::PACKED_INT64_ARRAY:
+ case Variant::PACKED_FLOAT32_ARRAY:
+ case Variant::PACKED_FLOAT64_ARRAY:
+ case Variant::PACKED_STRING_ARRAY:
+ case Variant::PACKED_VECTOR2_ARRAY:
+ case Variant::PACKED_VECTOR3_ARRAY:
+ case Variant::PACKED_COLOR_ARRAY:
+ case Variant::CALLABLE:
+ case Variant::SIGNAL:
+ return p_arg_type.name == Variant::get_type_name(p_val.get_type());
+ case Variant::OBJECT:
+ return p_context.find_exposed_class(p_arg_type);
+ case Variant::VECTOR2I:
+ return p_arg_type.name == p_context.names_cache.vector2_type ||
+ p_arg_type.name == Variant::get_type_name(p_val.get_type());
+ case Variant::RECT2I:
+ return p_arg_type.name == p_context.names_cache.rect2_type ||
+ p_arg_type.name == Variant::get_type_name(p_val.get_type());
+ case Variant::VECTOR3I:
+ return p_arg_type.name == p_context.names_cache.vector3_type ||
+ p_arg_type.name == Variant::get_type_name(p_val.get_type());
+ default:
+ if (r_err_msg) {
+ *r_err_msg = "Unexpected Variant type: " + itos(p_val.get_type());
+ }
+ break;
+ }
+
+ return false;
}
+void validate_property(const Context &p_context, const ExposedClass &p_class, const PropertyData &p_prop) {
+ const MethodData *setter = p_class.find_method_by_name(p_prop.setter);
+
+ // Search it in base classes too
+ const ExposedClass *top = &p_class;
+ while (!setter && top->base != StringName()) {
+ top = p_context.find_exposed_class(top->base);
+ TEST_FAIL_COND(!top, "Class not found '" + top->base + "'. Inherited by '" + top->name + "'.");
+ setter = top->find_method_by_name(p_prop.setter);
+ }
+
+ const MethodData *getter = p_class.find_method_by_name(p_prop.getter);
+
+ // Search it in base classes too
+ top = &p_class;
+ while (!getter && top->base != StringName()) {
+ top = p_context.find_exposed_class(top->base);
+ TEST_FAIL_COND(!top, "Class not found '" + top->base + "'. Inherited by '" + top->name + "'.");
+ getter = top->find_method_by_name(p_prop.getter);
+ }
+
+ TEST_FAIL_COND((!setter && !getter),
+ "Couldn't find neither the setter nor the getter for property: '" + p_class.name + "." + String(p_prop.name) + "'.");
+
+ if (setter) {
+ int setter_argc = p_prop.index != -1 ? 2 : 1;
+ TEST_FAIL_COND(setter->arguments.size() != setter_argc,
+ "Invalid property setter argument count: '" + p_class.name + "." + String(p_prop.name) + "'.");
+ }
+
+ if (getter) {
+ int getter_argc = p_prop.index != -1 ? 1 : 0;
+ TEST_FAIL_COND(getter->arguments.size() != getter_argc,
+ "Invalid property setter argument count: '" + p_class.name + "." + String(p_prop.name) + "'.");
+ }
+
+ if (getter && setter) {
+ const ArgumentData &setter_first_arg = setter->arguments.back()->get();
+ if (getter->return_type.name != setter_first_arg.type.name) {
+ // Special case for Node::set_name
+ bool whitelisted = getter->return_type.name == p_context.names_cache.string_name_type &&
+ setter_first_arg.type.name == p_context.names_cache.string_type;
+
+ TEST_FAIL_COND(!whitelisted,
+ "Return type from getter doesn't match first argument of setter, for property: '" + p_class.name + "." + String(p_prop.name) + "'.");
+ }
+ }
+
+ const TypeReference &prop_type_ref = getter ? getter->return_type : setter->arguments.back()->get().type;
+
+ const ExposedClass *prop_class = p_context.find_exposed_class(prop_type_ref);
+ if (prop_class) {
+ TEST_COND(prop_class->is_singleton,
+ "Property type is a singleton: '" + p_class.name + "." + String(p_prop.name) + "'.");
+ } else {
+ TEST_FAIL_COND(!p_context.has_type(prop_type_ref),
+ "Property type '" + prop_type_ref.name + "' not found: '" + p_class.name + "." + String(p_prop.name) + "'.");
+ }
+
+ if (getter) {
+ if (p_prop.index != -1) {
+ const ArgumentData &idx_arg = getter->arguments.front()->get();
+ if (idx_arg.type.name != p_context.names_cache.int_type) {
+ // If not an int, it can be an enum
+ TEST_COND(p_context.enum_types.find(idx_arg.type.name) < 0,
+ "Invalid type '" + idx_arg.type.name + "' for index argument of property getter: '" + p_class.name + "." + String(p_prop.name) + "'.");
+ }
+ }
+ }
+
+ if (setter) {
+ if (p_prop.index != -1) {
+ const ArgumentData &idx_arg = setter->arguments.front()->get();
+ if (idx_arg.type.name != p_context.names_cache.int_type) {
+ // Assume the index parameter is an enum
+ // If not an int, it can be an enum
+ TEST_COND(p_context.enum_types.find(idx_arg.type.name) < 0,
+ "Invalid type '" + idx_arg.type.name + "' for index argument of property setter: '" + p_class.name + "." + String(p_prop.name) + "'.");
+ }
+ }
+ }
+}
+
+void validate_method(const Context &p_context, const ExposedClass &p_class, const MethodData &p_method) {
+ const ExposedClass *return_class = p_context.find_exposed_class(p_method.return_type);
+ if (return_class) {
+ TEST_COND(return_class->is_singleton,
+ "Method return type is a singleton: '" + p_class.name + "." + p_method.name + "'.");
+ }
+
+ for (const List<ArgumentData>::Element *F = p_method.arguments.front(); F; F = F->next()) {
+ const ArgumentData &arg = F->get();
+
+ const ExposedClass *arg_class = p_context.find_exposed_class(arg.type);
+ if (arg_class) {
+ TEST_COND(arg_class->is_singleton,
+ "Argument type is a singleton: '" + arg.name + "' of method '" + p_class.name + "." + p_method.name + "'.");
+ } else {
+ TEST_FAIL_COND(!p_context.has_type(arg.type),
+ "Argument type '" + arg.type.name + "' not found: '" + arg.name + "' of method" + p_class.name + "." + p_method.name + "'.");
+ }
+
+ if (arg.has_defval) {
+ String type_error_msg;
+ bool arg_defval_assignable_to_type = arg_default_value_is_assignable_to_type(p_context, arg.defval, arg.type, &type_error_msg);
+ String err_msg = vformat("Invalid default value for parameter '%s' of method '%s.%s'.", arg.name, p_class.name, p_method.name);
+ if (!type_error_msg.empty()) {
+ err_msg += " " + type_error_msg;
+ }
+ TEST_COND(!arg_defval_assignable_to_type, err_msg.utf8().get_data());
+ }
+ }
+}
+
+void validate_signal(const Context &p_context, const ExposedClass &p_class, const SignalData &p_signal) {
+ for (const List<ArgumentData>::Element *F = p_signal.arguments.front(); F; F = F->next()) {
+ const ArgumentData &arg = F->get();
+
+ const ExposedClass *arg_class = p_context.find_exposed_class(arg.type);
+ if (arg_class) {
+ TEST_COND(arg_class->is_singleton,
+ "Argument class is a singleton: '" + arg.name + "' of signal" + p_class.name + "." + p_signal.name + "'.");
+ } else {
+ TEST_FAIL_COND(!p_context.has_type(arg.type),
+ "Argument type '" + arg.type.name + "' not found: '" + arg.name + "' of signal" + p_class.name + "." + p_signal.name + "'.");
+ }
+ }
+}
+
+void validate_class(const Context &p_context, const ExposedClass &p_exposed_class) {
+ bool is_derived_type = p_exposed_class.base != StringName();
+
+ if (!is_derived_type) {
+ // Asserts about the base Object class
+ TEST_FAIL_COND(p_exposed_class.name != p_context.names_cache.object_class,
+ "Class '" + p_exposed_class.name + "' has no base class.");
+ TEST_FAIL_COND(!p_exposed_class.is_instantiable,
+ "Object class is not instantiable.");
+ TEST_FAIL_COND(p_exposed_class.api_type != ClassDB::API_CORE,
+ "Object class is API is not API_CORE.");
+ TEST_FAIL_COND(p_exposed_class.is_singleton,
+ "Object class is registered as a singleton.");
+ }
+
+ TEST_FAIL_COND((p_exposed_class.is_singleton && p_exposed_class.base != p_context.names_cache.object_class),
+ "Singleton base class '" + String(p_exposed_class.base) + "' is not Object, for class '" + p_exposed_class.name + "'.");
+
+ TEST_FAIL_COND((is_derived_type && !p_context.exposed_classes.has(p_exposed_class.base)),
+ "Base type '" + p_exposed_class.base.operator String() + "' does not exist, for class '" + p_exposed_class.name + "'.");
+
+ for (const List<PropertyData>::Element *F = p_exposed_class.properties.front(); F; F = F->next()) {
+ validate_property(p_context, p_exposed_class, F->get());
+ }
+
+ for (const List<MethodData>::Element *F = p_exposed_class.methods.front(); F; F = F->next()) {
+ validate_method(p_context, p_exposed_class, F->get());
+ }
+
+ for (const List<SignalData>::Element *F = p_exposed_class.signals_.front(); F; F = F->next()) {
+ validate_signal(p_context, p_exposed_class, F->get());
+ }
+}
+
+void add_exposed_classes(Context &r_context) {
+ List<StringName> class_list;
+ ClassDB::get_class_list(&class_list);
+ class_list.sort_custom<StringName::AlphCompare>();
+
+ while (class_list.size()) {
+ StringName class_name = class_list.front()->get();
+
+ ClassDB::APIType api_type = ClassDB::get_api_type(class_name);
+
+ if (api_type == ClassDB::API_NONE) {
+ class_list.pop_front();
+ continue;
+ }
+
+ if (!ClassDB::is_class_exposed(class_name)) {
+ MESSAGE(vformat("Ignoring class '%s' because it's not exposed.", class_name).utf8().get_data());
+ class_list.pop_front();
+ continue;
+ }
+
+ if (!ClassDB::is_class_enabled(class_name)) {
+ MESSAGE(vformat("Ignoring class '%s' because it's not enabled.", class_name).utf8().get_data());
+ class_list.pop_front();
+ continue;
+ }
+
+ ClassDB::ClassInfo *class_info = ClassDB::classes.getptr(class_name);
+
+ ExposedClass exposed_class;
+ exposed_class.name = class_name;
+ exposed_class.api_type = api_type;
+ exposed_class.is_singleton = Engine::get_singleton()->has_singleton(class_name);
+ exposed_class.is_instantiable = class_info->creation_func && !exposed_class.is_singleton;
+ exposed_class.is_reference = ClassDB::is_parent_class(class_name, "Reference");
+ exposed_class.base = ClassDB::get_parent_class(class_name);
+
+ // Add properties
+
+ List<PropertyInfo> property_list;
+ ClassDB::get_property_list(class_name, &property_list, true);
+
+ Map<StringName, StringName> accessor_methods;
+
+ for (const List<PropertyInfo>::Element *E = property_list.front(); E; E = E->next()) {
+ const PropertyInfo &property = E->get();
+
+ if (property.usage & PROPERTY_USAGE_GROUP || property.usage & PROPERTY_USAGE_SUBGROUP || property.usage & PROPERTY_USAGE_CATEGORY) {
+ continue;
+ }
+
+ PropertyData prop;
+ prop.name = property.name;
+ prop.setter = ClassDB::get_property_setter(class_name, prop.name);
+ prop.getter = ClassDB::get_property_getter(class_name, prop.name);
+
+ if (prop.setter != StringName()) {
+ accessor_methods[prop.setter] = prop.name;
+ }
+ if (prop.getter != StringName()) {
+ accessor_methods[prop.getter] = prop.name;
+ }
+
+ bool valid = false;
+ prop.index = ClassDB::get_property_index(class_name, prop.name, &valid);
+ TEST_FAIL_COND(!valid, "Invalid property: '" + exposed_class.name + "." + String(prop.name) + "'.");
+
+ exposed_class.properties.push_back(prop);
+ }
+
+ // Add methods
+
+ List<MethodInfo> virtual_method_list;
+ ClassDB::get_virtual_methods(class_name, &virtual_method_list, true);
+
+ List<MethodInfo> method_list;
+ ClassDB::get_method_list(class_name, &method_list, true);
+ method_list.sort();
+
+ for (List<MethodInfo>::Element *E = method_list.front(); E; E = E->next()) {
+ const MethodInfo &method_info = E->get();
+
+ int argc = method_info.arguments.size();
+
+ if (method_info.name.empty()) {
+ continue;
+ }
+
+ MethodData method;
+ method.name = method_info.name;
+
+ if (method_info.flags & METHOD_FLAG_VIRTUAL) {
+ method.is_virtual = true;
+ }
+
+ PropertyInfo return_info = method_info.return_val;
+
+ MethodBind *m = method.is_virtual ? nullptr : ClassDB::get_method(class_name, method_info.name);
+
+ method.is_vararg = m && m->is_vararg();
+
+ if (!m && !method.is_virtual) {
+ TEST_FAIL_COND(!virtual_method_list.find(method_info),
+ "Missing MethodBind for non-virtual method: '" + exposed_class.name + "." + method.name + "'.");
+
+ // A virtual method without the virtual flag. This is a special case.
+
+ // The method Object.free is registered as a virtual method, but without the virtual flag.
+ // This is because this method is not supposed to be overridden, but called.
+ // We assume the return type is void.
+ method.return_type.name = r_context.names_cache.void_type;
+
+ // Actually, more methods like this may be added in the future, which could return
+ // something different. Let's put this check to notify us if that ever happens.
+ String warn_msg = vformat(
+ "Notification: New unexpected virtual non-overridable method found. "
+ "We only expected Object.free, but found '%s.%s'.",
+ exposed_class.name, method.name);
+ TEST_FAIL_COND_WARN(
+ (exposed_class.name != r_context.names_cache.object_class || String(method.name) != "free"),
+ warn_msg.utf8().get_data());
+
+ } else if (return_info.type == Variant::INT && return_info.usage & PROPERTY_USAGE_CLASS_IS_ENUM) {
+ method.return_type.name = return_info.class_name;
+ method.return_type.is_enum = true;
+ } else if (return_info.class_name != StringName()) {
+ method.return_type.name = return_info.class_name;
+
+ bool bad_reference_hint = !method.is_virtual && return_info.hint != PROPERTY_HINT_RESOURCE_TYPE &&
+ ClassDB::is_parent_class(return_info.class_name, r_context.names_cache.reference_class);
+ TEST_COND(bad_reference_hint, String() + "Return type is reference but hint is not '" _STR(PROPERTY_HINT_RESOURCE_TYPE) "'." +
+ " Are you returning a reference type by pointer? Method: '" +
+ exposed_class.name + "." + method.name + "'.");
+ } else if (return_info.hint == PROPERTY_HINT_RESOURCE_TYPE) {
+ method.return_type.name = return_info.hint_string;
+ } else if (return_info.type == Variant::NIL && return_info.usage & PROPERTY_USAGE_NIL_IS_VARIANT) {
+ method.return_type.name = r_context.names_cache.variant_type;
+ } else if (return_info.type == Variant::NIL) {
+ method.return_type.name = r_context.names_cache.void_type;
+ } else {
+ // NOTE: We don't care about the size and sign of int and float in these tests
+ method.return_type.name = Variant::get_type_name(return_info.type);
+ }
+
+ for (int i = 0; i < argc; i++) {
+ PropertyInfo arg_info = method_info.arguments[i];
+
+ String orig_arg_name = arg_info.name;
+
+ ArgumentData arg;
+ arg.name = orig_arg_name;
+
+ if (arg_info.type == Variant::INT && arg_info.usage & PROPERTY_USAGE_CLASS_IS_ENUM) {
+ arg.type.name = arg_info.class_name;
+ arg.type.is_enum = true;
+ } else if (arg_info.class_name != StringName()) {
+ arg.type.name = arg_info.class_name;
+ } else if (arg_info.hint == PROPERTY_HINT_RESOURCE_TYPE) {
+ arg.type.name = arg_info.hint_string;
+ } else if (arg_info.type == Variant::NIL) {
+ arg.type.name = r_context.names_cache.variant_type;
+ } else {
+ // NOTE: We don't care about the size and sign of int and float in these tests
+ arg.type.name = Variant::get_type_name(arg_info.type);
+ }
+
+ if (m && m->has_default_argument(i)) {
+ arg.has_defval = true;
+ arg.defval = m->get_default_argument(i);
+ }
+
+ method.arguments.push_back(arg);
+ }
+
+ if (method.is_vararg) {
+ ArgumentData vararg;
+ vararg.type.name = r_context.names_cache.vararg_stub_type;
+ vararg.name = "@varargs@";
+ method.arguments.push_back(vararg);
+ }
+
+ TEST_COND(exposed_class.find_property_by_name(method.name),
+ "Method name conflicts with property: '" + String(class_name) + "." + String(method.name) + "'.");
+
+ // Classes starting with an underscore are ignored unless they're used as a property setter or getter
+ if (!method.is_virtual && String(method.name)[0] == '_') {
+ for (const List<PropertyData>::Element *F = exposed_class.properties.front(); F; F = F->next()) {
+ const PropertyData &prop = F->get();
+
+ if (prop.setter == method.name || prop.getter == method.name) {
+ exposed_class.methods.push_back(method);
+ break;
+ }
+ }
+ } else {
+ exposed_class.methods.push_back(method);
+ }
+ }
+
+ // Add signals
+
+ const HashMap<StringName, MethodInfo> &signal_map = class_info->signal_map;
+ const StringName *k = nullptr;
+
+ while ((k = signal_map.next(k))) {
+ SignalData signal;
+
+ const MethodInfo &method_info = signal_map.get(*k);
+
+ signal.name = method_info.name;
+
+ int argc = method_info.arguments.size();
+
+ for (int i = 0; i < argc; i++) {
+ PropertyInfo arg_info = method_info.arguments[i];
+
+ String orig_arg_name = arg_info.name;
+
+ ArgumentData arg;
+ arg.name = orig_arg_name;
+
+ if (arg_info.type == Variant::INT && arg_info.usage & PROPERTY_USAGE_CLASS_IS_ENUM) {
+ arg.type.name = arg_info.class_name;
+ arg.type.is_enum = true;
+ } else if (arg_info.class_name != StringName()) {
+ arg.type.name = arg_info.class_name;
+ } else if (arg_info.hint == PROPERTY_HINT_RESOURCE_TYPE) {
+ arg.type.name = arg_info.hint_string;
+ } else if (arg_info.type == Variant::NIL) {
+ arg.type.name = r_context.names_cache.variant_type;
+ } else {
+ // NOTE: We don't care about the size and sign of int and float in these tests
+ arg.type.name = Variant::get_type_name(arg_info.type);
+ }
+
+ signal.arguments.push_back(arg);
+ }
+
+ bool method_conflict = exposed_class.find_property_by_name(signal.name);
+
+ // TODO:
+ // ClassDB allows signal names that conflict with method or property names.
+ // However registering a signal with a conflicting name is still considered wrong.
+ // Unfortunately there are some existing cases that are yet to be fixed.
+ // Until those are fixed we will print a warning instead of failing the test.
+ String warn_msg = vformat(
+ "Signal name conflicts with %s: '%s.%s.",
+ method_conflict ? "method" : "property", class_name, signal.name);
+ TEST_FAIL_COND_WARN((method_conflict || exposed_class.find_method_by_name(signal.name)),
+ warn_msg.utf8().get_data());
+
+ exposed_class.signals_.push_back(signal);
+ }
+
+ // Add enums and constants
+
+ List<String> constants;
+ ClassDB::get_integer_constant_list(class_name, &constants, true);
+
+ const HashMap<StringName, List<StringName>> &enum_map = class_info->enum_map;
+ k = nullptr;
+
+ while ((k = enum_map.next(k))) {
+ EnumData enum_;
+ enum_.name = *k;
+
+ const List<StringName> &enum_constants = enum_map.get(*k);
+ for (const List<StringName>::Element *E = enum_constants.front(); E; E = E->next()) {
+ const StringName &constant_name = E->get();
+ int *value = class_info->constant_map.getptr(constant_name);
+ TEST_FAIL_COND(!value, "Missing enum constant value: '" +
+ String(class_name) + "." + String(enum_.name) + "." + String(constant_name) + "'.");
+ constants.erase(constant_name);
+
+ ConstantData constant;
+ constant.name = constant_name;
+ constant.value = *value;
+
+ enum_.constants.push_back(constant);
+ }
+
+ exposed_class.enums.push_back(enum_);
+
+ r_context.enum_types.push_back(String(class_name) + "." + String(*k));
+ }
+
+ for (const List<String>::Element *E = constants.front(); E; E = E->next()) {
+ const String &constant_name = E->get();
+ int *value = class_info->constant_map.getptr(StringName(E->get()));
+ TEST_FAIL_COND(!value, "Missing enum constant value: '" + String(class_name) + "." + String(constant_name) + "'.");
+
+ ConstantData constant;
+ constant.name = constant_name;
+ constant.value = *value;
+
+ exposed_class.constants.push_back(constant);
+ }
+
+ r_context.exposed_classes.insert(class_name, exposed_class);
+ class_list.pop_front();
+ }
+}
+
+void add_builtin_types(Context &r_context) {
+ // NOTE: We don't care about the size and sign of int and float in these tests
+ for (int i = 0; i < Variant::VARIANT_MAX; i++) {
+ r_context.builtin_types.push_back(Variant::get_type_name(Variant::Type(i)));
+ }
+
+ r_context.builtin_types.push_back(_STR(Variant));
+ r_context.builtin_types.push_back(r_context.names_cache.vararg_stub_type);
+ r_context.builtin_types.push_back("void");
+}
+
+void add_global_enums(Context &r_context) {
+ int global_constants_count = GlobalConstants::get_global_constant_count();
+
+ if (global_constants_count > 0) {
+ for (int i = 0; i < global_constants_count; i++) {
+ StringName enum_name = GlobalConstants::get_global_constant_enum(i);
+
+ if (enum_name != StringName()) {
+ ConstantData constant;
+ constant.name = GlobalConstants::get_global_constant_name(i);
+ constant.value = GlobalConstants::get_global_constant_value(i);
+
+ EnumData enum_;
+ enum_.name = enum_name;
+ List<EnumData>::Element *enum_match = r_context.global_enums.find(enum_);
+ if (enum_match) {
+ enum_match->get().constants.push_back(constant);
+ } else {
+ enum_.constants.push_back(constant);
+ r_context.global_enums.push_back(enum_);
+ }
+ }
+ }
+
+ for (List<EnumData>::Element *E = r_context.global_enums.front(); E; E = E->next()) {
+ r_context.enum_types.push_back(E->get().name);
+ }
+ }
+
+ // HARDCODED
+ List<StringName> hardcoded_enums;
+ hardcoded_enums.push_back("Vector2.Axis");
+ hardcoded_enums.push_back("Vector2i.Axis");
+ hardcoded_enums.push_back("Vector3.Axis");
+ hardcoded_enums.push_back("Vector3i.Axis");
+ for (List<StringName>::Element *E = hardcoded_enums.front(); E; E = E->next()) {
+ // These enums are not generated and must be written manually (e.g.: Vector3.Axis)
+ // Here, we assume core types do not begin with underscore
+ r_context.enum_types.push_back(E->get());
+ }
+}
+
+TEST_SUITE("[ClassDB]") {
+ TEST_CASE("[ClassDB] Add exposed classes, builtin types, and global enums") {
+ Context context;
+
+ add_exposed_classes(context);
+ add_builtin_types(context);
+ add_global_enums(context);
+
+ SUBCASE("[ClassDB] Find exposed class") {
+ const ExposedClass *object_class = context.find_exposed_class(context.names_cache.object_class);
+ TEST_FAIL_COND(!object_class, "Object class not found.");
+ TEST_FAIL_COND(object_class->base != StringName(),
+ "Object class derives from another class: '" + object_class->base + "'.");
+
+ for (ExposedClasses::Element E = context.exposed_classes.front(); E; E = E.next()) {
+ validate_class(context, E.value());
+ }
+ }
+ }
+}
+
+} // namespace TestClassDB
+
#endif //GODOT_TEST_CLASS_DB_H
diff --git a/tests/test_macros.h b/tests/test_macros.h
index e4494ce11a..45ba8581dd 100644
--- a/tests/test_macros.h
+++ b/tests/test_macros.h
@@ -47,4 +47,61 @@
#define ERR_PRINT_OFF _print_error_enabled = false;
#define ERR_PRINT_ON _print_error_enabled = true;
+// Stringify all `Variant` compatible types for doctest output by default.
+// https://github.com/onqtam/doctest/blob/master/doc/markdown/stringification.md
+
+#define DOCTEST_STRINGIFY_VARIANT(m_type) \
+ template <> \
+ struct doctest::StringMaker<m_type> { \
+ static doctest::String convert(const m_type &p_val) { \
+ const Variant val = p_val; \
+ return val.get_construct_string().utf8().get_data(); \
+ } \
+ };
+
+#define DOCTEST_STRINGIFY_VARIANT_POINTER(m_type) \
+ template <> \
+ struct doctest::StringMaker<m_type> { \
+ static doctest::String convert(const m_type *p_val) { \
+ const Variant val = p_val; \
+ return val.get_construct_string().utf8().get_data(); \
+ } \
+ };
+
+DOCTEST_STRINGIFY_VARIANT(Variant);
+DOCTEST_STRINGIFY_VARIANT(::String); // Disambiguate from `doctest::String`.
+
+DOCTEST_STRINGIFY_VARIANT(Vector2);
+DOCTEST_STRINGIFY_VARIANT(Vector2i);
+DOCTEST_STRINGIFY_VARIANT(Rect2);
+DOCTEST_STRINGIFY_VARIANT(Rect2i);
+DOCTEST_STRINGIFY_VARIANT(Vector3);
+DOCTEST_STRINGIFY_VARIANT(Vector3i);
+DOCTEST_STRINGIFY_VARIANT(Transform2D);
+DOCTEST_STRINGIFY_VARIANT(Plane);
+DOCTEST_STRINGIFY_VARIANT(Quat);
+DOCTEST_STRINGIFY_VARIANT(AABB);
+DOCTEST_STRINGIFY_VARIANT(Basis);
+DOCTEST_STRINGIFY_VARIANT(Transform);
+
+DOCTEST_STRINGIFY_VARIANT(::Color); // Disambiguate from `doctest::Color`.
+DOCTEST_STRINGIFY_VARIANT(StringName);
+DOCTEST_STRINGIFY_VARIANT(NodePath);
+DOCTEST_STRINGIFY_VARIANT(RID);
+DOCTEST_STRINGIFY_VARIANT_POINTER(Object);
+DOCTEST_STRINGIFY_VARIANT(Callable);
+DOCTEST_STRINGIFY_VARIANT(Signal);
+DOCTEST_STRINGIFY_VARIANT(Dictionary);
+DOCTEST_STRINGIFY_VARIANT(Array);
+
+DOCTEST_STRINGIFY_VARIANT(PackedByteArray);
+DOCTEST_STRINGIFY_VARIANT(PackedInt32Array);
+DOCTEST_STRINGIFY_VARIANT(PackedInt64Array);
+DOCTEST_STRINGIFY_VARIANT(PackedFloat32Array);
+DOCTEST_STRINGIFY_VARIANT(PackedFloat64Array);
+DOCTEST_STRINGIFY_VARIANT(PackedStringArray);
+DOCTEST_STRINGIFY_VARIANT(PackedVector2Array);
+DOCTEST_STRINGIFY_VARIANT(PackedVector3Array);
+DOCTEST_STRINGIFY_VARIANT(PackedColorArray);
+
#endif // TEST_MACROS_H
diff --git a/tests/test_ordered_hash_map.cpp b/tests/test_ordered_hash_map.cpp
deleted file mode 100644
index d18a3784be..0000000000
--- a/tests/test_ordered_hash_map.cpp
+++ /dev/null
@@ -1,175 +0,0 @@
-/*************************************************************************/
-/* test_ordered_hash_map.cpp */
-/*************************************************************************/
-/* This file is part of: */
-/* GODOT ENGINE */
-/* https://godotengine.org */
-/*************************************************************************/
-/* Copyright (c) 2007-2020 Juan Linietsky, Ariel Manzur. */
-/* Copyright (c) 2014-2020 Godot Engine contributors (cf. AUTHORS.md). */
-/* */
-/* Permission is hereby granted, free of charge, to any person obtaining */
-/* a copy of this software and associated documentation files (the */
-/* "Software"), to deal in the Software without restriction, including */
-/* without limitation the rights to use, copy, modify, merge, publish, */
-/* distribute, sublicense, and/or sell copies of the Software, and to */
-/* permit persons to whom the Software is furnished to do so, subject to */
-/* the following conditions: */
-/* */
-/* The above copyright notice and this permission notice shall be */
-/* included in all copies or substantial portions of the Software. */
-/* */
-/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
-/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
-/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.*/
-/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
-/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
-/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
-/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
-/*************************************************************************/
-
-#include "test_ordered_hash_map.h"
-
-#include "core/ordered_hash_map.h"
-#include "core/os/os.h"
-#include "core/pair.h"
-#include "core/vector.h"
-
-namespace TestOrderedHashMap {
-
-bool test_insert() {
- OrderedHashMap<int, int> map;
- OrderedHashMap<int, int>::Element e = map.insert(42, 84);
-
- return e && e.key() == 42 && e.get() == 84 && e.value() == 84 && map[42] == 84 && map.has(42) && map.find(42);
-}
-
-bool test_insert_overwrite() {
- OrderedHashMap<int, int> map;
- map.insert(42, 84);
- map.insert(42, 1234);
-
- return map[42] == 1234;
-}
-
-bool test_erase_via_element() {
- OrderedHashMap<int, int> map;
- OrderedHashMap<int, int>::Element e = map.insert(42, 84);
-
- map.erase(e);
- return !e && !map.has(42) && !map.find(42);
-}
-
-bool test_erase_via_key() {
- OrderedHashMap<int, int> map;
- map.insert(42, 84);
- map.erase(42);
- return !map.has(42) && !map.find(42);
-}
-
-bool test_size() {
- OrderedHashMap<int, int> map;
- map.insert(42, 84);
- map.insert(123, 84);
- map.insert(123, 84);
- map.insert(0, 84);
- map.insert(123485, 84);
-
- return map.size() == 4;
-}
-
-bool test_iteration() {
- OrderedHashMap<int, int> map;
- map.insert(42, 84);
- map.insert(123, 12385);
- map.insert(0, 12934);
- map.insert(123485, 1238888);
- map.insert(123, 111111);
-
- Vector<Pair<int, int>> expected;
- expected.push_back(Pair<int, int>(42, 84));
- expected.push_back(Pair<int, int>(123, 111111));
- expected.push_back(Pair<int, int>(0, 12934));
- expected.push_back(Pair<int, int>(123485, 1238888));
-
- int idx = 0;
- for (OrderedHashMap<int, int>::Element E = map.front(); E; E = E.next()) {
- if (expected[idx] != Pair<int, int>(E.key(), E.value())) {
- return false;
- }
- ++idx;
- }
- return true;
-}
-
-bool test_const_iteration(const OrderedHashMap<int, int> &map) {
- Vector<Pair<int, int>> expected;
- expected.push_back(Pair<int, int>(42, 84));
- expected.push_back(Pair<int, int>(123, 111111));
- expected.push_back(Pair<int, int>(0, 12934));
- expected.push_back(Pair<int, int>(123485, 1238888));
-
- int idx = 0;
- for (OrderedHashMap<int, int>::ConstElement E = map.front(); E; E = E.next()) {
- if (expected[idx] != Pair<int, int>(E.key(), E.value())) {
- return false;
- }
- ++idx;
- }
- return true;
-}
-
-bool test_const_iteration() {
- OrderedHashMap<int, int> map;
- map.insert(42, 84);
- map.insert(123, 12385);
- map.insert(0, 12934);
- map.insert(123485, 1238888);
- map.insert(123, 111111);
-
- return test_const_iteration(map);
-}
-
-typedef bool (*TestFunc)();
-
-TestFunc test_funcs[] = {
-
- test_insert,
- test_insert_overwrite,
- test_erase_via_element,
- test_erase_via_key,
- test_size,
- test_iteration,
- test_const_iteration,
- nullptr
-
-};
-
-MainLoop *test() {
- int count = 0;
- int passed = 0;
-
- while (true) {
- if (!test_funcs[count]) {
- break;
- }
- bool pass = test_funcs[count]();
- if (pass) {
- passed++;
- }
- OS::get_singleton()->print("\t%s\n", pass ? "PASS" : "FAILED");
-
- count++;
- }
-
- OS::get_singleton()->print("\n\n\n");
- OS::get_singleton()->print("*************\n");
- OS::get_singleton()->print("***TOTALS!***\n");
- OS::get_singleton()->print("*************\n");
-
- OS::get_singleton()->print("Passed %i of %i tests\n", passed, count);
-
- return nullptr;
-}
-
-} // namespace TestOrderedHashMap
diff --git a/tests/test_ordered_hash_map.h b/tests/test_ordered_hash_map.h
index f251da0ba2..3182c391cb 100644
--- a/tests/test_ordered_hash_map.h
+++ b/tests/test_ordered_hash_map.h
@@ -31,11 +31,109 @@
#ifndef TEST_ORDERED_HASH_MAP_H
#define TEST_ORDERED_HASH_MAP_H
-#include "core/os/main_loop.h"
+#include "core/ordered_hash_map.h"
+#include "core/os/os.h"
+#include "core/pair.h"
+#include "core/vector.h"
+
+#include "tests/test_macros.h"
namespace TestOrderedHashMap {
-MainLoop *test();
+TEST_CASE("[OrderedHashMap] Insert element") {
+ OrderedHashMap<int, int> map;
+ OrderedHashMap<int, int>::Element e = map.insert(42, 84);
+
+ CHECK(e);
+ CHECK(e.key() == 42);
+ CHECK(e.get() == 84);
+ CHECK(e.value() == 84);
+ CHECK(map[42] == 84);
+ CHECK(map.has(42));
+ CHECK(map.find(42));
+}
+
+TEST_CASE("[OrderedHashMap] Overwrite element") {
+ OrderedHashMap<int, int> map;
+ map.insert(42, 84);
+ map.insert(42, 1234);
+
+ CHECK(map[42] == 1234);
+}
+
+TEST_CASE("[OrderedHashMap] Erase via element") {
+ OrderedHashMap<int, int> map;
+ OrderedHashMap<int, int>::Element e = map.insert(42, 84);
+
+ map.erase(e);
+ CHECK(!e);
+ CHECK(!map.has(42));
+ CHECK(!map.find(42));
+}
+
+TEST_CASE("[OrderedHashMap] Erase via key") {
+ OrderedHashMap<int, int> map;
+ map.insert(42, 84);
+ map.erase(42);
+ CHECK(!map.has(42));
+ CHECK(!map.find(42));
}
+TEST_CASE("[OrderedHashMap] Size") {
+ OrderedHashMap<int, int> map;
+ map.insert(42, 84);
+ map.insert(123, 84);
+ map.insert(123, 84);
+ map.insert(0, 84);
+ map.insert(123485, 84);
+
+ CHECK(map.size() == 4);
+}
+
+TEST_CASE("[OrderedHashMap] Iteration") {
+ OrderedHashMap<int, int> map;
+ map.insert(42, 84);
+ map.insert(123, 12385);
+ map.insert(0, 12934);
+ map.insert(123485, 1238888);
+ map.insert(123, 111111);
+
+ Vector<Pair<int, int>> expected;
+ expected.push_back(Pair<int, int>(42, 84));
+ expected.push_back(Pair<int, int>(123, 111111));
+ expected.push_back(Pair<int, int>(0, 12934));
+ expected.push_back(Pair<int, int>(123485, 1238888));
+
+ int idx = 0;
+ for (OrderedHashMap<int, int>::Element E = map.front(); E; E = E.next()) {
+ CHECK(expected[idx] == Pair<int, int>(E.key(), E.value()));
+ ++idx;
+ }
+}
+
+TEST_CASE("[OrderedHashMap] Const iteration") {
+ OrderedHashMap<int, int> map;
+ map.insert(42, 84);
+ map.insert(123, 12385);
+ map.insert(0, 12934);
+ map.insert(123485, 1238888);
+ map.insert(123, 111111);
+
+ const OrderedHashMap<int, int> const_map = map;
+
+ Vector<Pair<int, int>> expected;
+ expected.push_back(Pair<int, int>(42, 84));
+ expected.push_back(Pair<int, int>(123, 111111));
+ expected.push_back(Pair<int, int>(0, 12934));
+ expected.push_back(Pair<int, int>(123485, 1238888));
+
+ int idx = 0;
+ for (OrderedHashMap<int, int>::ConstElement E = const_map.front(); E; E = E.next()) {
+ CHECK(expected[idx] == Pair<int, int>(E.key(), E.value()));
+ ++idx;
+ }
+}
+
+} // namespace TestOrderedHashMap
+
#endif // TEST_ORDERED_HASH_MAP_H
diff --git a/tests/test_validate_testing.h b/tests/test_validate_testing.h
index 24acdec96c..b4ea6eb576 100644
--- a/tests/test_validate_testing.h
+++ b/tests/test_validate_testing.h
@@ -53,6 +53,137 @@ TEST_SUITE("Validate tests") {
ERR_PRINT_ON;
CHECK_MESSAGE(_print_error_enabled, "Error printing should be re-enabled.");
}
+ TEST_CASE("Stringify Variant types") {
+ Variant var;
+ INFO(var);
+
+ String string("Godot is finally here!");
+ INFO(string);
+
+ Vector2 vec2(0.5, 1.0);
+ INFO(vec2);
+
+ Vector2i vec2i(1, 2);
+ INFO(vec2i);
+
+ Rect2 rect2(0.5, 0.5, 100.5, 100.5);
+ INFO(rect2);
+
+ Rect2i rect2i(0, 0, 100, 100);
+ INFO(rect2i);
+
+ Vector3 vec3(0.5, 1.0, 2.0);
+ INFO(vec3);
+
+ Vector3i vec3i(1, 2, 3);
+ INFO(vec3i);
+
+ Transform2D trans2d(0.5, Vector2(100, 100));
+ INFO(trans2d);
+
+ Plane plane(Vector3(1, 1, 1), 1.0);
+ INFO(plane);
+
+ Quat quat(Vector3(0.5, 1.0, 2.0));
+ INFO(quat);
+
+ AABB aabb(Vector3(), Vector3(100, 100, 100));
+ INFO(aabb);
+
+ Basis basis(quat);
+ INFO(basis);
+
+ Transform trans(basis);
+ INFO(trans);
+
+ Color color(1, 0.5, 0.2, 0.3);
+ INFO(color);
+
+ StringName string_name("has_method");
+ INFO(string_name);
+
+ NodePath node_path("godot/sprite");
+ INFO(node_path);
+
+ INFO(RID());
+
+ Object *obj = memnew(Object);
+ INFO(obj);
+
+ Callable callable(obj, "has_method");
+ INFO(callable);
+
+ Signal signal(obj, "script_changed");
+ INFO(signal);
+
+ memdelete(obj);
+
+ Dictionary dict;
+ dict["string"] = string;
+ dict["color"] = color;
+ INFO(dict);
+
+ Array arr;
+ arr.push_back(string);
+ arr.push_back(color);
+ INFO(arr);
+
+ PackedByteArray byte_arr;
+ byte_arr.push_back(0);
+ byte_arr.push_back(1);
+ byte_arr.push_back(2);
+ INFO(byte_arr);
+
+ PackedInt32Array int32_arr;
+ int32_arr.push_back(0);
+ int32_arr.push_back(1);
+ int32_arr.push_back(2);
+ INFO(int32_arr);
+
+ PackedInt64Array int64_arr;
+ int64_arr.push_back(0);
+ int64_arr.push_back(1);
+ int64_arr.push_back(2);
+ INFO(int64_arr);
+
+ PackedFloat32Array float32_arr;
+ float32_arr.push_back(0.5);
+ float32_arr.push_back(1.5);
+ float32_arr.push_back(2.5);
+ INFO(float32_arr);
+
+ PackedFloat64Array float64_arr;
+ float64_arr.push_back(0.5);
+ float64_arr.push_back(1.5);
+ float64_arr.push_back(2.5);
+ INFO(float64_arr);
+
+ PackedStringArray str_arr = string.split(" ");
+ INFO(str_arr);
+
+ PackedVector2Array vec2_arr;
+ vec2_arr.push_back(Vector2(0, 0));
+ vec2_arr.push_back(Vector2(1, 1));
+ vec2_arr.push_back(Vector2(2, 2));
+ INFO(vec2_arr);
+
+ PackedVector3Array vec3_arr;
+ vec3_arr.push_back(Vector3(0, 0, 0));
+ vec3_arr.push_back(Vector3(1, 1, 1));
+ vec3_arr.push_back(Vector3(2, 2, 2));
+ INFO(vec3_arr);
+
+ PackedColorArray color_arr;
+ color_arr.push_back(Color(0, 0, 0));
+ color_arr.push_back(Color(1, 1, 1));
+ color_arr.push_back(Color(2, 2, 2));
+ INFO(color_arr);
+
+ INFO("doctest insertion operator << "
+ << var << " " << vec2 << " " << rect2 << " " << color);
+
+ CHECK(true); // So all above prints.
+ }
}
#endif // TEST_VALIDATE_TESTING_H
diff --git a/thirdparty/README.md b/thirdparty/README.md
index c1b230cfb7..a63eca2a2a 100644
--- a/thirdparty/README.md
+++ b/thirdparty/README.md
@@ -161,17 +161,6 @@ Files extracted from upstream source:
- `docs/{FTL.TXT,LICENSE.TXT}`
-## glad
-
-- Upstream: https://github.com/Dav1dde/glad
-- Version: 0.1.33 (2019)
-- License: MIT
-
-The files we package are automatically generated.
-See the header of glad.c for instructions on how to generate them for
-the GLES version Godot targets.
-
-
## glslang
- Upstream: https://github.com/KhronosGroup/glslang
diff --git a/thirdparty/glad/KHR/khrplatform.h b/thirdparty/glad/KHR/khrplatform.h
deleted file mode 100644
index 5b55ea2b98..0000000000
--- a/thirdparty/glad/KHR/khrplatform.h
+++ /dev/null
@@ -1,290 +0,0 @@
-#ifndef __khrplatform_h_
-#define __khrplatform_h_
-
-/*
-** Copyright (c) 2008-2018 The Khronos Group Inc.
-**
-** Permission is hereby granted, free of charge, to any person obtaining a
-** copy of this software and/or associated documentation files (the
-** "Materials"), to deal in the Materials without restriction, including
-** without limitation the rights to use, copy, modify, merge, publish,
-** distribute, sublicense, and/or sell copies of the Materials, and to
-** permit persons to whom the Materials are furnished to do so, subject to
-** the following conditions:
-**
-** The above copyright notice and this permission notice shall be included
-** in all copies or substantial portions of the Materials.
-**
-** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
-** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
-** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
-** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
-*/
-
-/* Khronos platform-specific types and definitions.
- *
- * The master copy of khrplatform.h is maintained in the Khronos EGL
- * Registry repository at https://github.com/KhronosGroup/EGL-Registry
- * The last semantic modification to khrplatform.h was at commit ID:
- * 67a3e0864c2d75ea5287b9f3d2eb74a745936692
- *
- * Adopters may modify this file to suit their platform. Adopters are
- * encouraged to submit platform specific modifications to the Khronos
- * group so that they can be included in future versions of this file.
- * Please submit changes by filing pull requests or issues on
- * the EGL Registry repository linked above.
- *
- *
- * See the Implementer's Guidelines for information about where this file
- * should be located on your system and for more details of its use:
- * http://www.khronos.org/registry/implementers_guide.pdf
- *
- * This file should be included as
- * #include <KHR/khrplatform.h>
- * by Khronos client API header files that use its types and defines.
- *
- * The types in khrplatform.h should only be used to define API-specific types.
- *
- * Types defined in khrplatform.h:
- * khronos_int8_t signed 8 bit
- * khronos_uint8_t unsigned 8 bit
- * khronos_int16_t signed 16 bit
- * khronos_uint16_t unsigned 16 bit
- * khronos_int32_t signed 32 bit
- * khronos_uint32_t unsigned 32 bit
- * khronos_int64_t signed 64 bit
- * khronos_uint64_t unsigned 64 bit
- * khronos_intptr_t signed same number of bits as a pointer
- * khronos_uintptr_t unsigned same number of bits as a pointer
- * khronos_ssize_t signed size
- * khronos_usize_t unsigned size
- * khronos_float_t signed 32 bit floating point
- * khronos_time_ns_t unsigned 64 bit time in nanoseconds
- * khronos_utime_nanoseconds_t unsigned time interval or absolute time in
- * nanoseconds
- * khronos_stime_nanoseconds_t signed time interval in nanoseconds
- * khronos_boolean_enum_t enumerated boolean type. This should
- * only be used as a base type when a client API's boolean type is
- * an enum. Client APIs which use an integer or other type for
- * booleans cannot use this as the base type for their boolean.
- *
- * Tokens defined in khrplatform.h:
- *
- * KHRONOS_FALSE, KHRONOS_TRUE Enumerated boolean false/true values.
- *
- * KHRONOS_SUPPORT_INT64 is 1 if 64 bit integers are supported; otherwise 0.
- * KHRONOS_SUPPORT_FLOAT is 1 if floats are supported; otherwise 0.
- *
- * Calling convention macros defined in this file:
- * KHRONOS_APICALL
- * KHRONOS_APIENTRY
- * KHRONOS_APIATTRIBUTES
- *
- * These may be used in function prototypes as:
- *
- * KHRONOS_APICALL void KHRONOS_APIENTRY funcname(
- * int arg1,
- * int arg2) KHRONOS_APIATTRIBUTES;
- */
-
-#if defined(__SCITECH_SNAP__) && !defined(KHRONOS_STATIC)
-# define KHRONOS_STATIC 1
-#endif
-
-/*-------------------------------------------------------------------------
- * Definition of KHRONOS_APICALL
- *-------------------------------------------------------------------------
- * This precedes the return type of the function in the function prototype.
- */
-#if defined(KHRONOS_STATIC)
- /* If the preprocessor constant KHRONOS_STATIC is defined, make the
- * header compatible with static linking. */
-# define KHRONOS_APICALL
-#elif defined(_WIN32)
-# define KHRONOS_APICALL __declspec(dllimport)
-#elif defined (__SYMBIAN32__)
-# define KHRONOS_APICALL IMPORT_C
-#elif defined(__ANDROID__)
-# define KHRONOS_APICALL __attribute__((visibility("default")))
-#else
-# define KHRONOS_APICALL
-#endif
-
-/*-------------------------------------------------------------------------
- * Definition of KHRONOS_APIENTRY
- *-------------------------------------------------------------------------
- * This follows the return type of the function and precedes the function
- * name in the function prototype.
- */
-#if defined(_WIN32) && !defined(_WIN32_WCE) && !defined(KHRONOS_STATIC)
- /* Win32 but not WinCE */
-# define KHRONOS_APIENTRY __stdcall
-#else
-# define KHRONOS_APIENTRY
-#endif
-
-/*-------------------------------------------------------------------------
- * Definition of KHRONOS_APIATTRIBUTES
- *-------------------------------------------------------------------------
- * This follows the closing parenthesis of the function prototype arguments.
- */
-#if defined (__ARMCC_2__)
-#define KHRONOS_APIATTRIBUTES __softfp
-#else
-#define KHRONOS_APIATTRIBUTES
-#endif
-
-/*-------------------------------------------------------------------------
- * basic type definitions
- *-----------------------------------------------------------------------*/
-#if (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L) || defined(__GNUC__) || defined(__SCO__) || defined(__USLC__)
-
-
-/*
- * Using <stdint.h>
- */
-#include <stdint.h>
-typedef int32_t khronos_int32_t;
-typedef uint32_t khronos_uint32_t;
-typedef int64_t khronos_int64_t;
-typedef uint64_t khronos_uint64_t;
-#define KHRONOS_SUPPORT_INT64 1
-#define KHRONOS_SUPPORT_FLOAT 1
-
-#elif defined(__VMS ) || defined(__sgi)
-
-/*
- * Using <inttypes.h>
- */
-#include <inttypes.h>
-typedef int32_t khronos_int32_t;
-typedef uint32_t khronos_uint32_t;
-typedef int64_t khronos_int64_t;
-typedef uint64_t khronos_uint64_t;
-#define KHRONOS_SUPPORT_INT64 1
-#define KHRONOS_SUPPORT_FLOAT 1
-
-#elif defined(_WIN32) && !defined(__SCITECH_SNAP__)
-
-/*
- * Win32
- */
-typedef __int32 khronos_int32_t;
-typedef unsigned __int32 khronos_uint32_t;
-typedef __int64 khronos_int64_t;
-typedef unsigned __int64 khronos_uint64_t;
-#define KHRONOS_SUPPORT_INT64 1
-#define KHRONOS_SUPPORT_FLOAT 1
-
-#elif defined(__sun__) || defined(__digital__)
-
-/*
- * Sun or Digital
- */
-typedef int khronos_int32_t;
-typedef unsigned int khronos_uint32_t;
-#if defined(__arch64__) || defined(_LP64)
-typedef long int khronos_int64_t;
-typedef unsigned long int khronos_uint64_t;
-#else
-typedef long long int khronos_int64_t;
-typedef unsigned long long int khronos_uint64_t;
-#endif /* __arch64__ */
-#define KHRONOS_SUPPORT_INT64 1
-#define KHRONOS_SUPPORT_FLOAT 1
-
-#elif 0
-
-/*
- * Hypothetical platform with no float or int64 support
- */
-typedef int khronos_int32_t;
-typedef unsigned int khronos_uint32_t;
-#define KHRONOS_SUPPORT_INT64 0
-#define KHRONOS_SUPPORT_FLOAT 0
-
-#else
-
-/*
- * Generic fallback
- */
-#include <stdint.h>
-typedef int32_t khronos_int32_t;
-typedef uint32_t khronos_uint32_t;
-typedef int64_t khronos_int64_t;
-typedef uint64_t khronos_uint64_t;
-#define KHRONOS_SUPPORT_INT64 1
-#define KHRONOS_SUPPORT_FLOAT 1
-
-#endif
-
-
-/*
- * Types that are (so far) the same on all platforms
- */
-typedef signed char khronos_int8_t;
-typedef unsigned char khronos_uint8_t;
-typedef signed short int khronos_int16_t;
-typedef unsigned short int khronos_uint16_t;
-
-/*
- * Types that differ between LLP64 and LP64 architectures - in LLP64,
- * pointers are 64 bits, but 'long' is still 32 bits. Win64 appears
- * to be the only LLP64 architecture in current use.
- */
-#ifdef _WIN64
-typedef signed long long int khronos_intptr_t;
-typedef unsigned long long int khronos_uintptr_t;
-typedef signed long long int khronos_ssize_t;
-typedef unsigned long long int khronos_usize_t;
-#else
-typedef signed long int khronos_intptr_t;
-typedef unsigned long int khronos_uintptr_t;
-typedef signed long int khronos_ssize_t;
-typedef unsigned long int khronos_usize_t;
-#endif
-
-#if KHRONOS_SUPPORT_FLOAT
-/*
- * Float type
- */
-typedef float khronos_float_t;
-#endif
-
-#if KHRONOS_SUPPORT_INT64
-/* Time types
- *
- * These types can be used to represent a time interval in nanoseconds or
- * an absolute Unadjusted System Time. Unadjusted System Time is the number
- * of nanoseconds since some arbitrary system event (e.g. since the last
- * time the system booted). The Unadjusted System Time is an unsigned
- * 64 bit value that wraps back to 0 every 584 years. Time intervals
- * may be either signed or unsigned.
- */
-typedef khronos_uint64_t khronos_utime_nanoseconds_t;
-typedef khronos_int64_t khronos_stime_nanoseconds_t;
-#endif
-
-/*
- * Dummy value used to pad enum types to 32 bits.
- */
-#ifndef KHRONOS_MAX_ENUM
-#define KHRONOS_MAX_ENUM 0x7FFFFFFF
-#endif
-
-/*
- * Enumerated boolean type
- *
- * Values other than zero should be considered to be true. Therefore
- * comparisons should not be made against KHRONOS_TRUE.
- */
-typedef enum {
- KHRONOS_FALSE = 0,
- KHRONOS_TRUE = 1,
- KHRONOS_BOOLEAN_ENUM_FORCE_SIZE = KHRONOS_MAX_ENUM
-} khronos_boolean_enum_t;
-
-#endif /* __khrplatform_h_ */
diff --git a/thirdparty/glad/LICENSE b/thirdparty/glad/LICENSE
deleted file mode 100644
index b6e2ca25b0..0000000000
--- a/thirdparty/glad/LICENSE
+++ /dev/null
@@ -1,20 +0,0 @@
-The MIT License (MIT)
-
-Copyright (c) 2013-2018 David Herberth
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of
-this software and associated documentation files (the "Software"), to deal in
-the Software without restriction, including without limitation the rights to
-use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
-the Software, and to permit persons to whom the Software is furnished to do so,
-subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
-FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
-COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
-IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
-CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/thirdparty/glad/glad.c b/thirdparty/glad/glad.c
deleted file mode 100644
index a1fe4d25ef..0000000000
--- a/thirdparty/glad/glad.c
+++ /dev/null
@@ -1,1939 +0,0 @@
-/*
-
- OpenGL loader generated by glad 0.1.33 on Tue Nov 12 08:44:22 2019.
-
- Language/Generator: C/C++
- Specification: gl
- APIs: gl=3.3
- Profile: compatibility
- Extensions:
- GL_ARB_debug_output,
- GL_ARB_framebuffer_object,
- GL_EXT_framebuffer_blit,
- GL_EXT_framebuffer_multisample,
- GL_EXT_framebuffer_object
- Loader: True
- Local files: False
- Omit khrplatform: False
- Reproducible: False
-
- Commandline:
- --profile="compatibility" --api="gl=3.3" --generator="c" --spec="gl" --extensions="GL_ARB_debug_output,GL_ARB_framebuffer_object,GL_EXT_framebuffer_blit,GL_EXT_framebuffer_multisample,GL_EXT_framebuffer_object"
- Online:
- https://glad.dav1d.de/#profile=compatibility&language=c&specification=gl&loader=on&api=gl%3D3.3&extensions=GL_ARB_debug_output&extensions=GL_ARB_framebuffer_object&extensions=GL_EXT_framebuffer_blit&extensions=GL_EXT_framebuffer_multisample&extensions=GL_EXT_framebuffer_object
-*/
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <glad/glad.h>
-
-static void* get_proc(const char *namez);
-
-#if defined(_WIN32) || defined(__CYGWIN__)
-#ifndef _WINDOWS_
-#undef APIENTRY
-#endif
-#include <windows.h>
-static HMODULE libGL;
-
-typedef void* (APIENTRYP PFNWGLGETPROCADDRESSPROC_PRIVATE)(const char*);
-static PFNWGLGETPROCADDRESSPROC_PRIVATE gladGetProcAddressPtr;
-
-#ifdef _MSC_VER
-#ifdef __has_include
- #if __has_include(<winapifamily.h>)
- #define HAVE_WINAPIFAMILY 1
- #endif
-#elif _MSC_VER >= 1700 && !_USING_V110_SDK71_
- #define HAVE_WINAPIFAMILY 1
-#endif
-#endif
-
-#ifdef HAVE_WINAPIFAMILY
- #include <winapifamily.h>
- #if !WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) && WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)
- #define IS_UWP 1
- #endif
-#endif
-
-static
-int open_gl(void) {
-#ifndef IS_UWP
- libGL = LoadLibraryW(L"opengl32.dll");
- if(libGL != NULL) {
- void (* tmp)(void);
- tmp = (void(*)(void)) GetProcAddress(libGL, "wglGetProcAddress");
- gladGetProcAddressPtr = (PFNWGLGETPROCADDRESSPROC_PRIVATE) tmp;
- return gladGetProcAddressPtr != NULL;
- }
-#endif
-
- return 0;
-}
-
-static
-void close_gl(void) {
- if(libGL != NULL) {
- FreeLibrary((HMODULE) libGL);
- libGL = NULL;
- }
-}
-#else
-#include <dlfcn.h>
-static void* libGL;
-
-#if !defined(__APPLE__) && !defined(__HAIKU__)
-typedef void* (APIENTRYP PFNGLXGETPROCADDRESSPROC_PRIVATE)(const char*);
-static PFNGLXGETPROCADDRESSPROC_PRIVATE gladGetProcAddressPtr;
-#endif
-
-static
-int open_gl(void) {
-#ifdef __APPLE__
- static const char *NAMES[] = {
- "../Frameworks/OpenGL.framework/OpenGL",
- "/Library/Frameworks/OpenGL.framework/OpenGL",
- "/System/Library/Frameworks/OpenGL.framework/OpenGL",
- "/System/Library/Frameworks/OpenGL.framework/Versions/Current/OpenGL"
- };
-#else
- static const char *NAMES[] = {"libGL.so.1", "libGL.so"};
-#endif
-
- unsigned int index = 0;
- for(index = 0; index < (sizeof(NAMES) / sizeof(NAMES[0])); index++) {
- libGL = dlopen(NAMES[index], RTLD_NOW | RTLD_GLOBAL);
-
- if(libGL != NULL) {
-#if defined(__APPLE__) || defined(__HAIKU__)
- return 1;
-#else
- gladGetProcAddressPtr = (PFNGLXGETPROCADDRESSPROC_PRIVATE)dlsym(libGL,
- "glXGetProcAddressARB");
- return gladGetProcAddressPtr != NULL;
-#endif
- }
- }
-
- return 0;
-}
-
-static
-void close_gl(void) {
- if(libGL != NULL) {
- dlclose(libGL);
- libGL = NULL;
- }
-}
-#endif
-
-static
-void* get_proc(const char *namez) {
- void* result = NULL;
- if(libGL == NULL) return NULL;
-
-#if !defined(__APPLE__) && !defined(__HAIKU__)
- if(gladGetProcAddressPtr != NULL) {
- result = gladGetProcAddressPtr(namez);
- }
-#endif
- if(result == NULL) {
-#if defined(_WIN32) || defined(__CYGWIN__)
- result = (void*)GetProcAddress((HMODULE) libGL, namez);
-#else
- result = dlsym(libGL, namez);
-#endif
- }
-
- return result;
-}
-
-int gladLoadGL(void) {
- int status = 0;
-
- if(open_gl()) {
- status = gladLoadGLLoader(&get_proc);
- close_gl();
- }
-
- return status;
-}
-
-struct gladGLversionStruct GLVersion = { 0, 0 };
-
-#if defined(GL_ES_VERSION_3_0) || defined(GL_VERSION_3_0)
-#define _GLAD_IS_SOME_NEW_VERSION 1
-#endif
-
-static int max_loaded_major;
-static int max_loaded_minor;
-
-static const char *exts = NULL;
-static int num_exts_i = 0;
-static char **exts_i = NULL;
-
-static int get_exts(void) {
-#ifdef _GLAD_IS_SOME_NEW_VERSION
- if(max_loaded_major < 3) {
-#endif
- exts = (const char *)glGetString(GL_EXTENSIONS);
-#ifdef _GLAD_IS_SOME_NEW_VERSION
- } else {
- unsigned int index;
-
- num_exts_i = 0;
- glGetIntegerv(GL_NUM_EXTENSIONS, &num_exts_i);
- if (num_exts_i > 0) {
- exts_i = (char **)malloc((size_t)num_exts_i * (sizeof *exts_i));
- }
-
- if (exts_i == NULL) {
- return 0;
- }
-
- for(index = 0; index < (unsigned)num_exts_i; index++) {
- const char *gl_str_tmp = (const char*)glGetStringi(GL_EXTENSIONS, index);
- size_t len = strlen(gl_str_tmp);
-
- char *local_str = (char*)malloc((len+1) * sizeof(char));
- if(local_str != NULL) {
- memcpy(local_str, gl_str_tmp, (len+1) * sizeof(char));
- }
- exts_i[index] = local_str;
- }
- }
-#endif
- return 1;
-}
-
-static void free_exts(void) {
- if (exts_i != NULL) {
- int index;
- for(index = 0; index < num_exts_i; index++) {
- free((char *)exts_i[index]);
- }
- free((void *)exts_i);
- exts_i = NULL;
- }
-}
-
-static int has_ext(const char *ext) {
-#ifdef _GLAD_IS_SOME_NEW_VERSION
- if(max_loaded_major < 3) {
-#endif
- const char *extensions;
- const char *loc;
- const char *terminator;
- extensions = exts;
- if(extensions == NULL || ext == NULL) {
- return 0;
- }
-
- while(1) {
- loc = strstr(extensions, ext);
- if(loc == NULL) {
- return 0;
- }
-
- terminator = loc + strlen(ext);
- if((loc == extensions || *(loc - 1) == ' ') &&
- (*terminator == ' ' || *terminator == '\0')) {
- return 1;
- }
- extensions = terminator;
- }
-#ifdef _GLAD_IS_SOME_NEW_VERSION
- } else {
- int index;
- if(exts_i == NULL) return 0;
- for(index = 0; index < num_exts_i; index++) {
- const char *e = exts_i[index];
-
- if(exts_i[index] != NULL && strcmp(e, ext) == 0) {
- return 1;
- }
- }
- }
-#endif
-
- return 0;
-}
-int GLAD_GL_VERSION_1_0 = 0;
-int GLAD_GL_VERSION_1_1 = 0;
-int GLAD_GL_VERSION_1_2 = 0;
-int GLAD_GL_VERSION_1_3 = 0;
-int GLAD_GL_VERSION_1_4 = 0;
-int GLAD_GL_VERSION_1_5 = 0;
-int GLAD_GL_VERSION_2_0 = 0;
-int GLAD_GL_VERSION_2_1 = 0;
-int GLAD_GL_VERSION_3_0 = 0;
-int GLAD_GL_VERSION_3_1 = 0;
-int GLAD_GL_VERSION_3_2 = 0;
-int GLAD_GL_VERSION_3_3 = 0;
-PFNGLACCUMPROC glad_glAccum = NULL;
-PFNGLACTIVETEXTUREPROC glad_glActiveTexture = NULL;
-PFNGLALPHAFUNCPROC glad_glAlphaFunc = NULL;
-PFNGLARETEXTURESRESIDENTPROC glad_glAreTexturesResident = NULL;
-PFNGLARRAYELEMENTPROC glad_glArrayElement = NULL;
-PFNGLATTACHSHADERPROC glad_glAttachShader = NULL;
-PFNGLBEGINPROC glad_glBegin = NULL;
-PFNGLBEGINCONDITIONALRENDERPROC glad_glBeginConditionalRender = NULL;
-PFNGLBEGINQUERYPROC glad_glBeginQuery = NULL;
-PFNGLBEGINTRANSFORMFEEDBACKPROC glad_glBeginTransformFeedback = NULL;
-PFNGLBINDATTRIBLOCATIONPROC glad_glBindAttribLocation = NULL;
-PFNGLBINDBUFFERPROC glad_glBindBuffer = NULL;
-PFNGLBINDBUFFERBASEPROC glad_glBindBufferBase = NULL;
-PFNGLBINDBUFFERRANGEPROC glad_glBindBufferRange = NULL;
-PFNGLBINDFRAGDATALOCATIONPROC glad_glBindFragDataLocation = NULL;
-PFNGLBINDFRAGDATALOCATIONINDEXEDPROC glad_glBindFragDataLocationIndexed = NULL;
-PFNGLBINDFRAMEBUFFERPROC glad_glBindFramebuffer = NULL;
-PFNGLBINDRENDERBUFFERPROC glad_glBindRenderbuffer = NULL;
-PFNGLBINDSAMPLERPROC glad_glBindSampler = NULL;
-PFNGLBINDTEXTUREPROC glad_glBindTexture = NULL;
-PFNGLBINDVERTEXARRAYPROC glad_glBindVertexArray = NULL;
-PFNGLBITMAPPROC glad_glBitmap = NULL;
-PFNGLBLENDCOLORPROC glad_glBlendColor = NULL;
-PFNGLBLENDEQUATIONPROC glad_glBlendEquation = NULL;
-PFNGLBLENDEQUATIONSEPARATEPROC glad_glBlendEquationSeparate = NULL;
-PFNGLBLENDFUNCPROC glad_glBlendFunc = NULL;
-PFNGLBLENDFUNCSEPARATEPROC glad_glBlendFuncSeparate = NULL;
-PFNGLBLITFRAMEBUFFERPROC glad_glBlitFramebuffer = NULL;
-PFNGLBUFFERDATAPROC glad_glBufferData = NULL;
-PFNGLBUFFERSUBDATAPROC glad_glBufferSubData = NULL;
-PFNGLCALLLISTPROC glad_glCallList = NULL;
-PFNGLCALLLISTSPROC glad_glCallLists = NULL;
-PFNGLCHECKFRAMEBUFFERSTATUSPROC glad_glCheckFramebufferStatus = NULL;
-PFNGLCLAMPCOLORPROC glad_glClampColor = NULL;
-PFNGLCLEARPROC glad_glClear = NULL;
-PFNGLCLEARACCUMPROC glad_glClearAccum = NULL;
-PFNGLCLEARBUFFERFIPROC glad_glClearBufferfi = NULL;
-PFNGLCLEARBUFFERFVPROC glad_glClearBufferfv = NULL;
-PFNGLCLEARBUFFERIVPROC glad_glClearBufferiv = NULL;
-PFNGLCLEARBUFFERUIVPROC glad_glClearBufferuiv = NULL;
-PFNGLCLEARCOLORPROC glad_glClearColor = NULL;
-PFNGLCLEARDEPTHPROC glad_glClearDepth = NULL;
-PFNGLCLEARINDEXPROC glad_glClearIndex = NULL;
-PFNGLCLEARSTENCILPROC glad_glClearStencil = NULL;
-PFNGLCLIENTACTIVETEXTUREPROC glad_glClientActiveTexture = NULL;
-PFNGLCLIENTWAITSYNCPROC glad_glClientWaitSync = NULL;
-PFNGLCLIPPLANEPROC glad_glClipPlane = NULL;
-PFNGLCOLOR3BPROC glad_glColor3b = NULL;
-PFNGLCOLOR3BVPROC glad_glColor3bv = NULL;
-PFNGLCOLOR3DPROC glad_glColor3d = NULL;
-PFNGLCOLOR3DVPROC glad_glColor3dv = NULL;
-PFNGLCOLOR3FPROC glad_glColor3f = NULL;
-PFNGLCOLOR3FVPROC glad_glColor3fv = NULL;
-PFNGLCOLOR3IPROC glad_glColor3i = NULL;
-PFNGLCOLOR3IVPROC glad_glColor3iv = NULL;
-PFNGLCOLOR3SPROC glad_glColor3s = NULL;
-PFNGLCOLOR3SVPROC glad_glColor3sv = NULL;
-PFNGLCOLOR3UBPROC glad_glColor3ub = NULL;
-PFNGLCOLOR3UBVPROC glad_glColor3ubv = NULL;
-PFNGLCOLOR3UIPROC glad_glColor3ui = NULL;
-PFNGLCOLOR3UIVPROC glad_glColor3uiv = NULL;
-PFNGLCOLOR3USPROC glad_glColor3us = NULL;
-PFNGLCOLOR3USVPROC glad_glColor3usv = NULL;
-PFNGLCOLOR4BPROC glad_glColor4b = NULL;
-PFNGLCOLOR4BVPROC glad_glColor4bv = NULL;
-PFNGLCOLOR4DPROC glad_glColor4d = NULL;
-PFNGLCOLOR4DVPROC glad_glColor4dv = NULL;
-PFNGLCOLOR4FPROC glad_glColor4f = NULL;
-PFNGLCOLOR4FVPROC glad_glColor4fv = NULL;
-PFNGLCOLOR4IPROC glad_glColor4i = NULL;
-PFNGLCOLOR4IVPROC glad_glColor4iv = NULL;
-PFNGLCOLOR4SPROC glad_glColor4s = NULL;
-PFNGLCOLOR4SVPROC glad_glColor4sv = NULL;
-PFNGLCOLOR4UBPROC glad_glColor4ub = NULL;
-PFNGLCOLOR4UBVPROC glad_glColor4ubv = NULL;
-PFNGLCOLOR4UIPROC glad_glColor4ui = NULL;
-PFNGLCOLOR4UIVPROC glad_glColor4uiv = NULL;
-PFNGLCOLOR4USPROC glad_glColor4us = NULL;
-PFNGLCOLOR4USVPROC glad_glColor4usv = NULL;
-PFNGLCOLORMASKPROC glad_glColorMask = NULL;
-PFNGLCOLORMASKIPROC glad_glColorMaski = NULL;
-PFNGLCOLORMATERIALPROC glad_glColorMaterial = NULL;
-PFNGLCOLORP3UIPROC glad_glColorP3ui = NULL;
-PFNGLCOLORP3UIVPROC glad_glColorP3uiv = NULL;
-PFNGLCOLORP4UIPROC glad_glColorP4ui = NULL;
-PFNGLCOLORP4UIVPROC glad_glColorP4uiv = NULL;
-PFNGLCOLORPOINTERPROC glad_glColorPointer = NULL;
-PFNGLCOMPILESHADERPROC glad_glCompileShader = NULL;
-PFNGLCOMPRESSEDTEXIMAGE1DPROC glad_glCompressedTexImage1D = NULL;
-PFNGLCOMPRESSEDTEXIMAGE2DPROC glad_glCompressedTexImage2D = NULL;
-PFNGLCOMPRESSEDTEXIMAGE3DPROC glad_glCompressedTexImage3D = NULL;
-PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC glad_glCompressedTexSubImage1D = NULL;
-PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC glad_glCompressedTexSubImage2D = NULL;
-PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC glad_glCompressedTexSubImage3D = NULL;
-PFNGLCOPYBUFFERSUBDATAPROC glad_glCopyBufferSubData = NULL;
-PFNGLCOPYPIXELSPROC glad_glCopyPixels = NULL;
-PFNGLCOPYTEXIMAGE1DPROC glad_glCopyTexImage1D = NULL;
-PFNGLCOPYTEXIMAGE2DPROC glad_glCopyTexImage2D = NULL;
-PFNGLCOPYTEXSUBIMAGE1DPROC glad_glCopyTexSubImage1D = NULL;
-PFNGLCOPYTEXSUBIMAGE2DPROC glad_glCopyTexSubImage2D = NULL;
-PFNGLCOPYTEXSUBIMAGE3DPROC glad_glCopyTexSubImage3D = NULL;
-PFNGLCREATEPROGRAMPROC glad_glCreateProgram = NULL;
-PFNGLCREATESHADERPROC glad_glCreateShader = NULL;
-PFNGLCULLFACEPROC glad_glCullFace = NULL;
-PFNGLDELETEBUFFERSPROC glad_glDeleteBuffers = NULL;
-PFNGLDELETEFRAMEBUFFERSPROC glad_glDeleteFramebuffers = NULL;
-PFNGLDELETELISTSPROC glad_glDeleteLists = NULL;
-PFNGLDELETEPROGRAMPROC glad_glDeleteProgram = NULL;
-PFNGLDELETEQUERIESPROC glad_glDeleteQueries = NULL;
-PFNGLDELETERENDERBUFFERSPROC glad_glDeleteRenderbuffers = NULL;
-PFNGLDELETESAMPLERSPROC glad_glDeleteSamplers = NULL;
-PFNGLDELETESHADERPROC glad_glDeleteShader = NULL;
-PFNGLDELETESYNCPROC glad_glDeleteSync = NULL;
-PFNGLDELETETEXTURESPROC glad_glDeleteTextures = NULL;
-PFNGLDELETEVERTEXARRAYSPROC glad_glDeleteVertexArrays = NULL;
-PFNGLDEPTHFUNCPROC glad_glDepthFunc = NULL;
-PFNGLDEPTHMASKPROC glad_glDepthMask = NULL;
-PFNGLDEPTHRANGEPROC glad_glDepthRange = NULL;
-PFNGLDETACHSHADERPROC glad_glDetachShader = NULL;
-PFNGLDISABLEPROC glad_glDisable = NULL;
-PFNGLDISABLECLIENTSTATEPROC glad_glDisableClientState = NULL;
-PFNGLDISABLEVERTEXATTRIBARRAYPROC glad_glDisableVertexAttribArray = NULL;
-PFNGLDISABLEIPROC glad_glDisablei = NULL;
-PFNGLDRAWARRAYSPROC glad_glDrawArrays = NULL;
-PFNGLDRAWARRAYSINSTANCEDPROC glad_glDrawArraysInstanced = NULL;
-PFNGLDRAWBUFFERPROC glad_glDrawBuffer = NULL;
-PFNGLDRAWBUFFERSPROC glad_glDrawBuffers = NULL;
-PFNGLDRAWELEMENTSPROC glad_glDrawElements = NULL;
-PFNGLDRAWELEMENTSBASEVERTEXPROC glad_glDrawElementsBaseVertex = NULL;
-PFNGLDRAWELEMENTSINSTANCEDPROC glad_glDrawElementsInstanced = NULL;
-PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXPROC glad_glDrawElementsInstancedBaseVertex = NULL;
-PFNGLDRAWPIXELSPROC glad_glDrawPixels = NULL;
-PFNGLDRAWRANGEELEMENTSPROC glad_glDrawRangeElements = NULL;
-PFNGLDRAWRANGEELEMENTSBASEVERTEXPROC glad_glDrawRangeElementsBaseVertex = NULL;
-PFNGLEDGEFLAGPROC glad_glEdgeFlag = NULL;
-PFNGLEDGEFLAGPOINTERPROC glad_glEdgeFlagPointer = NULL;
-PFNGLEDGEFLAGVPROC glad_glEdgeFlagv = NULL;
-PFNGLENABLEPROC glad_glEnable = NULL;
-PFNGLENABLECLIENTSTATEPROC glad_glEnableClientState = NULL;
-PFNGLENABLEVERTEXATTRIBARRAYPROC glad_glEnableVertexAttribArray = NULL;
-PFNGLENABLEIPROC glad_glEnablei = NULL;
-PFNGLENDPROC glad_glEnd = NULL;
-PFNGLENDCONDITIONALRENDERPROC glad_glEndConditionalRender = NULL;
-PFNGLENDLISTPROC glad_glEndList = NULL;
-PFNGLENDQUERYPROC glad_glEndQuery = NULL;
-PFNGLENDTRANSFORMFEEDBACKPROC glad_glEndTransformFeedback = NULL;
-PFNGLEVALCOORD1DPROC glad_glEvalCoord1d = NULL;
-PFNGLEVALCOORD1DVPROC glad_glEvalCoord1dv = NULL;
-PFNGLEVALCOORD1FPROC glad_glEvalCoord1f = NULL;
-PFNGLEVALCOORD1FVPROC glad_glEvalCoord1fv = NULL;
-PFNGLEVALCOORD2DPROC glad_glEvalCoord2d = NULL;
-PFNGLEVALCOORD2DVPROC glad_glEvalCoord2dv = NULL;
-PFNGLEVALCOORD2FPROC glad_glEvalCoord2f = NULL;
-PFNGLEVALCOORD2FVPROC glad_glEvalCoord2fv = NULL;
-PFNGLEVALMESH1PROC glad_glEvalMesh1 = NULL;
-PFNGLEVALMESH2PROC glad_glEvalMesh2 = NULL;
-PFNGLEVALPOINT1PROC glad_glEvalPoint1 = NULL;
-PFNGLEVALPOINT2PROC glad_glEvalPoint2 = NULL;
-PFNGLFEEDBACKBUFFERPROC glad_glFeedbackBuffer = NULL;
-PFNGLFENCESYNCPROC glad_glFenceSync = NULL;
-PFNGLFINISHPROC glad_glFinish = NULL;
-PFNGLFLUSHPROC glad_glFlush = NULL;
-PFNGLFLUSHMAPPEDBUFFERRANGEPROC glad_glFlushMappedBufferRange = NULL;
-PFNGLFOGCOORDPOINTERPROC glad_glFogCoordPointer = NULL;
-PFNGLFOGCOORDDPROC glad_glFogCoordd = NULL;
-PFNGLFOGCOORDDVPROC glad_glFogCoorddv = NULL;
-PFNGLFOGCOORDFPROC glad_glFogCoordf = NULL;
-PFNGLFOGCOORDFVPROC glad_glFogCoordfv = NULL;
-PFNGLFOGFPROC glad_glFogf = NULL;
-PFNGLFOGFVPROC glad_glFogfv = NULL;
-PFNGLFOGIPROC glad_glFogi = NULL;
-PFNGLFOGIVPROC glad_glFogiv = NULL;
-PFNGLFRAMEBUFFERRENDERBUFFERPROC glad_glFramebufferRenderbuffer = NULL;
-PFNGLFRAMEBUFFERTEXTUREPROC glad_glFramebufferTexture = NULL;
-PFNGLFRAMEBUFFERTEXTURE1DPROC glad_glFramebufferTexture1D = NULL;
-PFNGLFRAMEBUFFERTEXTURE2DPROC glad_glFramebufferTexture2D = NULL;
-PFNGLFRAMEBUFFERTEXTURE3DPROC glad_glFramebufferTexture3D = NULL;
-PFNGLFRAMEBUFFERTEXTURELAYERPROC glad_glFramebufferTextureLayer = NULL;
-PFNGLFRONTFACEPROC glad_glFrontFace = NULL;
-PFNGLFRUSTUMPROC glad_glFrustum = NULL;
-PFNGLGENBUFFERSPROC glad_glGenBuffers = NULL;
-PFNGLGENFRAMEBUFFERSPROC glad_glGenFramebuffers = NULL;
-PFNGLGENLISTSPROC glad_glGenLists = NULL;
-PFNGLGENQUERIESPROC glad_glGenQueries = NULL;
-PFNGLGENRENDERBUFFERSPROC glad_glGenRenderbuffers = NULL;
-PFNGLGENSAMPLERSPROC glad_glGenSamplers = NULL;
-PFNGLGENTEXTURESPROC glad_glGenTextures = NULL;
-PFNGLGENVERTEXARRAYSPROC glad_glGenVertexArrays = NULL;
-PFNGLGENERATEMIPMAPPROC glad_glGenerateMipmap = NULL;
-PFNGLGETACTIVEATTRIBPROC glad_glGetActiveAttrib = NULL;
-PFNGLGETACTIVEUNIFORMPROC glad_glGetActiveUniform = NULL;
-PFNGLGETACTIVEUNIFORMBLOCKNAMEPROC glad_glGetActiveUniformBlockName = NULL;
-PFNGLGETACTIVEUNIFORMBLOCKIVPROC glad_glGetActiveUniformBlockiv = NULL;
-PFNGLGETACTIVEUNIFORMNAMEPROC glad_glGetActiveUniformName = NULL;
-PFNGLGETACTIVEUNIFORMSIVPROC glad_glGetActiveUniformsiv = NULL;
-PFNGLGETATTACHEDSHADERSPROC glad_glGetAttachedShaders = NULL;
-PFNGLGETATTRIBLOCATIONPROC glad_glGetAttribLocation = NULL;
-PFNGLGETBOOLEANI_VPROC glad_glGetBooleani_v = NULL;
-PFNGLGETBOOLEANVPROC glad_glGetBooleanv = NULL;
-PFNGLGETBUFFERPARAMETERI64VPROC glad_glGetBufferParameteri64v = NULL;
-PFNGLGETBUFFERPARAMETERIVPROC glad_glGetBufferParameteriv = NULL;
-PFNGLGETBUFFERPOINTERVPROC glad_glGetBufferPointerv = NULL;
-PFNGLGETBUFFERSUBDATAPROC glad_glGetBufferSubData = NULL;
-PFNGLGETCLIPPLANEPROC glad_glGetClipPlane = NULL;
-PFNGLGETCOMPRESSEDTEXIMAGEPROC glad_glGetCompressedTexImage = NULL;
-PFNGLGETDOUBLEVPROC glad_glGetDoublev = NULL;
-PFNGLGETERRORPROC glad_glGetError = NULL;
-PFNGLGETFLOATVPROC glad_glGetFloatv = NULL;
-PFNGLGETFRAGDATAINDEXPROC glad_glGetFragDataIndex = NULL;
-PFNGLGETFRAGDATALOCATIONPROC glad_glGetFragDataLocation = NULL;
-PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVPROC glad_glGetFramebufferAttachmentParameteriv = NULL;
-PFNGLGETINTEGER64I_VPROC glad_glGetInteger64i_v = NULL;
-PFNGLGETINTEGER64VPROC glad_glGetInteger64v = NULL;
-PFNGLGETINTEGERI_VPROC glad_glGetIntegeri_v = NULL;
-PFNGLGETINTEGERVPROC glad_glGetIntegerv = NULL;
-PFNGLGETLIGHTFVPROC glad_glGetLightfv = NULL;
-PFNGLGETLIGHTIVPROC glad_glGetLightiv = NULL;
-PFNGLGETMAPDVPROC glad_glGetMapdv = NULL;
-PFNGLGETMAPFVPROC glad_glGetMapfv = NULL;
-PFNGLGETMAPIVPROC glad_glGetMapiv = NULL;
-PFNGLGETMATERIALFVPROC glad_glGetMaterialfv = NULL;
-PFNGLGETMATERIALIVPROC glad_glGetMaterialiv = NULL;
-PFNGLGETMULTISAMPLEFVPROC glad_glGetMultisamplefv = NULL;
-PFNGLGETPIXELMAPFVPROC glad_glGetPixelMapfv = NULL;
-PFNGLGETPIXELMAPUIVPROC glad_glGetPixelMapuiv = NULL;
-PFNGLGETPIXELMAPUSVPROC glad_glGetPixelMapusv = NULL;
-PFNGLGETPOINTERVPROC glad_glGetPointerv = NULL;
-PFNGLGETPOLYGONSTIPPLEPROC glad_glGetPolygonStipple = NULL;
-PFNGLGETPROGRAMINFOLOGPROC glad_glGetProgramInfoLog = NULL;
-PFNGLGETPROGRAMIVPROC glad_glGetProgramiv = NULL;
-PFNGLGETQUERYOBJECTI64VPROC glad_glGetQueryObjecti64v = NULL;
-PFNGLGETQUERYOBJECTIVPROC glad_glGetQueryObjectiv = NULL;
-PFNGLGETQUERYOBJECTUI64VPROC glad_glGetQueryObjectui64v = NULL;
-PFNGLGETQUERYOBJECTUIVPROC glad_glGetQueryObjectuiv = NULL;
-PFNGLGETQUERYIVPROC glad_glGetQueryiv = NULL;
-PFNGLGETRENDERBUFFERPARAMETERIVPROC glad_glGetRenderbufferParameteriv = NULL;
-PFNGLGETSAMPLERPARAMETERIIVPROC glad_glGetSamplerParameterIiv = NULL;
-PFNGLGETSAMPLERPARAMETERIUIVPROC glad_glGetSamplerParameterIuiv = NULL;
-PFNGLGETSAMPLERPARAMETERFVPROC glad_glGetSamplerParameterfv = NULL;
-PFNGLGETSAMPLERPARAMETERIVPROC glad_glGetSamplerParameteriv = NULL;
-PFNGLGETSHADERINFOLOGPROC glad_glGetShaderInfoLog = NULL;
-PFNGLGETSHADERSOURCEPROC glad_glGetShaderSource = NULL;
-PFNGLGETSHADERIVPROC glad_glGetShaderiv = NULL;
-PFNGLGETSTRINGPROC glad_glGetString = NULL;
-PFNGLGETSTRINGIPROC glad_glGetStringi = NULL;
-PFNGLGETSYNCIVPROC glad_glGetSynciv = NULL;
-PFNGLGETTEXENVFVPROC glad_glGetTexEnvfv = NULL;
-PFNGLGETTEXENVIVPROC glad_glGetTexEnviv = NULL;
-PFNGLGETTEXGENDVPROC glad_glGetTexGendv = NULL;
-PFNGLGETTEXGENFVPROC glad_glGetTexGenfv = NULL;
-PFNGLGETTEXGENIVPROC glad_glGetTexGeniv = NULL;
-PFNGLGETTEXIMAGEPROC glad_glGetTexImage = NULL;
-PFNGLGETTEXLEVELPARAMETERFVPROC glad_glGetTexLevelParameterfv = NULL;
-PFNGLGETTEXLEVELPARAMETERIVPROC glad_glGetTexLevelParameteriv = NULL;
-PFNGLGETTEXPARAMETERIIVPROC glad_glGetTexParameterIiv = NULL;
-PFNGLGETTEXPARAMETERIUIVPROC glad_glGetTexParameterIuiv = NULL;
-PFNGLGETTEXPARAMETERFVPROC glad_glGetTexParameterfv = NULL;
-PFNGLGETTEXPARAMETERIVPROC glad_glGetTexParameteriv = NULL;
-PFNGLGETTRANSFORMFEEDBACKVARYINGPROC glad_glGetTransformFeedbackVarying = NULL;
-PFNGLGETUNIFORMBLOCKINDEXPROC glad_glGetUniformBlockIndex = NULL;
-PFNGLGETUNIFORMINDICESPROC glad_glGetUniformIndices = NULL;
-PFNGLGETUNIFORMLOCATIONPROC glad_glGetUniformLocation = NULL;
-PFNGLGETUNIFORMFVPROC glad_glGetUniformfv = NULL;
-PFNGLGETUNIFORMIVPROC glad_glGetUniformiv = NULL;
-PFNGLGETUNIFORMUIVPROC glad_glGetUniformuiv = NULL;
-PFNGLGETVERTEXATTRIBIIVPROC glad_glGetVertexAttribIiv = NULL;
-PFNGLGETVERTEXATTRIBIUIVPROC glad_glGetVertexAttribIuiv = NULL;
-PFNGLGETVERTEXATTRIBPOINTERVPROC glad_glGetVertexAttribPointerv = NULL;
-PFNGLGETVERTEXATTRIBDVPROC glad_glGetVertexAttribdv = NULL;
-PFNGLGETVERTEXATTRIBFVPROC glad_glGetVertexAttribfv = NULL;
-PFNGLGETVERTEXATTRIBIVPROC glad_glGetVertexAttribiv = NULL;
-PFNGLHINTPROC glad_glHint = NULL;
-PFNGLINDEXMASKPROC glad_glIndexMask = NULL;
-PFNGLINDEXPOINTERPROC glad_glIndexPointer = NULL;
-PFNGLINDEXDPROC glad_glIndexd = NULL;
-PFNGLINDEXDVPROC glad_glIndexdv = NULL;
-PFNGLINDEXFPROC glad_glIndexf = NULL;
-PFNGLINDEXFVPROC glad_glIndexfv = NULL;
-PFNGLINDEXIPROC glad_glIndexi = NULL;
-PFNGLINDEXIVPROC glad_glIndexiv = NULL;
-PFNGLINDEXSPROC glad_glIndexs = NULL;
-PFNGLINDEXSVPROC glad_glIndexsv = NULL;
-PFNGLINDEXUBPROC glad_glIndexub = NULL;
-PFNGLINDEXUBVPROC glad_glIndexubv = NULL;
-PFNGLINITNAMESPROC glad_glInitNames = NULL;
-PFNGLINTERLEAVEDARRAYSPROC glad_glInterleavedArrays = NULL;
-PFNGLISBUFFERPROC glad_glIsBuffer = NULL;
-PFNGLISENABLEDPROC glad_glIsEnabled = NULL;
-PFNGLISENABLEDIPROC glad_glIsEnabledi = NULL;
-PFNGLISFRAMEBUFFERPROC glad_glIsFramebuffer = NULL;
-PFNGLISLISTPROC glad_glIsList = NULL;
-PFNGLISPROGRAMPROC glad_glIsProgram = NULL;
-PFNGLISQUERYPROC glad_glIsQuery = NULL;
-PFNGLISRENDERBUFFERPROC glad_glIsRenderbuffer = NULL;
-PFNGLISSAMPLERPROC glad_glIsSampler = NULL;
-PFNGLISSHADERPROC glad_glIsShader = NULL;
-PFNGLISSYNCPROC glad_glIsSync = NULL;
-PFNGLISTEXTUREPROC glad_glIsTexture = NULL;
-PFNGLISVERTEXARRAYPROC glad_glIsVertexArray = NULL;
-PFNGLLIGHTMODELFPROC glad_glLightModelf = NULL;
-PFNGLLIGHTMODELFVPROC glad_glLightModelfv = NULL;
-PFNGLLIGHTMODELIPROC glad_glLightModeli = NULL;
-PFNGLLIGHTMODELIVPROC glad_glLightModeliv = NULL;
-PFNGLLIGHTFPROC glad_glLightf = NULL;
-PFNGLLIGHTFVPROC glad_glLightfv = NULL;
-PFNGLLIGHTIPROC glad_glLighti = NULL;
-PFNGLLIGHTIVPROC glad_glLightiv = NULL;
-PFNGLLINESTIPPLEPROC glad_glLineStipple = NULL;
-PFNGLLINEWIDTHPROC glad_glLineWidth = NULL;
-PFNGLLINKPROGRAMPROC glad_glLinkProgram = NULL;
-PFNGLLISTBASEPROC glad_glListBase = NULL;
-PFNGLLOADIDENTITYPROC glad_glLoadIdentity = NULL;
-PFNGLLOADMATRIXDPROC glad_glLoadMatrixd = NULL;
-PFNGLLOADMATRIXFPROC glad_glLoadMatrixf = NULL;
-PFNGLLOADNAMEPROC glad_glLoadName = NULL;
-PFNGLLOADTRANSPOSEMATRIXDPROC glad_glLoadTransposeMatrixd = NULL;
-PFNGLLOADTRANSPOSEMATRIXFPROC glad_glLoadTransposeMatrixf = NULL;
-PFNGLLOGICOPPROC glad_glLogicOp = NULL;
-PFNGLMAP1DPROC glad_glMap1d = NULL;
-PFNGLMAP1FPROC glad_glMap1f = NULL;
-PFNGLMAP2DPROC glad_glMap2d = NULL;
-PFNGLMAP2FPROC glad_glMap2f = NULL;
-PFNGLMAPBUFFERPROC glad_glMapBuffer = NULL;
-PFNGLMAPBUFFERRANGEPROC glad_glMapBufferRange = NULL;
-PFNGLMAPGRID1DPROC glad_glMapGrid1d = NULL;
-PFNGLMAPGRID1FPROC glad_glMapGrid1f = NULL;
-PFNGLMAPGRID2DPROC glad_glMapGrid2d = NULL;
-PFNGLMAPGRID2FPROC glad_glMapGrid2f = NULL;
-PFNGLMATERIALFPROC glad_glMaterialf = NULL;
-PFNGLMATERIALFVPROC glad_glMaterialfv = NULL;
-PFNGLMATERIALIPROC glad_glMateriali = NULL;
-PFNGLMATERIALIVPROC glad_glMaterialiv = NULL;
-PFNGLMATRIXMODEPROC glad_glMatrixMode = NULL;
-PFNGLMULTMATRIXDPROC glad_glMultMatrixd = NULL;
-PFNGLMULTMATRIXFPROC glad_glMultMatrixf = NULL;
-PFNGLMULTTRANSPOSEMATRIXDPROC glad_glMultTransposeMatrixd = NULL;
-PFNGLMULTTRANSPOSEMATRIXFPROC glad_glMultTransposeMatrixf = NULL;
-PFNGLMULTIDRAWARRAYSPROC glad_glMultiDrawArrays = NULL;
-PFNGLMULTIDRAWELEMENTSPROC glad_glMultiDrawElements = NULL;
-PFNGLMULTIDRAWELEMENTSBASEVERTEXPROC glad_glMultiDrawElementsBaseVertex = NULL;
-PFNGLMULTITEXCOORD1DPROC glad_glMultiTexCoord1d = NULL;
-PFNGLMULTITEXCOORD1DVPROC glad_glMultiTexCoord1dv = NULL;
-PFNGLMULTITEXCOORD1FPROC glad_glMultiTexCoord1f = NULL;
-PFNGLMULTITEXCOORD1FVPROC glad_glMultiTexCoord1fv = NULL;
-PFNGLMULTITEXCOORD1IPROC glad_glMultiTexCoord1i = NULL;
-PFNGLMULTITEXCOORD1IVPROC glad_glMultiTexCoord1iv = NULL;
-PFNGLMULTITEXCOORD1SPROC glad_glMultiTexCoord1s = NULL;
-PFNGLMULTITEXCOORD1SVPROC glad_glMultiTexCoord1sv = NULL;
-PFNGLMULTITEXCOORD2DPROC glad_glMultiTexCoord2d = NULL;
-PFNGLMULTITEXCOORD2DVPROC glad_glMultiTexCoord2dv = NULL;
-PFNGLMULTITEXCOORD2FPROC glad_glMultiTexCoord2f = NULL;
-PFNGLMULTITEXCOORD2FVPROC glad_glMultiTexCoord2fv = NULL;
-PFNGLMULTITEXCOORD2IPROC glad_glMultiTexCoord2i = NULL;
-PFNGLMULTITEXCOORD2IVPROC glad_glMultiTexCoord2iv = NULL;
-PFNGLMULTITEXCOORD2SPROC glad_glMultiTexCoord2s = NULL;
-PFNGLMULTITEXCOORD2SVPROC glad_glMultiTexCoord2sv = NULL;
-PFNGLMULTITEXCOORD3DPROC glad_glMultiTexCoord3d = NULL;
-PFNGLMULTITEXCOORD3DVPROC glad_glMultiTexCoord3dv = NULL;
-PFNGLMULTITEXCOORD3FPROC glad_glMultiTexCoord3f = NULL;
-PFNGLMULTITEXCOORD3FVPROC glad_glMultiTexCoord3fv = NULL;
-PFNGLMULTITEXCOORD3IPROC glad_glMultiTexCoord3i = NULL;
-PFNGLMULTITEXCOORD3IVPROC glad_glMultiTexCoord3iv = NULL;
-PFNGLMULTITEXCOORD3SPROC glad_glMultiTexCoord3s = NULL;
-PFNGLMULTITEXCOORD3SVPROC glad_glMultiTexCoord3sv = NULL;
-PFNGLMULTITEXCOORD4DPROC glad_glMultiTexCoord4d = NULL;
-PFNGLMULTITEXCOORD4DVPROC glad_glMultiTexCoord4dv = NULL;
-PFNGLMULTITEXCOORD4FPROC glad_glMultiTexCoord4f = NULL;
-PFNGLMULTITEXCOORD4FVPROC glad_glMultiTexCoord4fv = NULL;
-PFNGLMULTITEXCOORD4IPROC glad_glMultiTexCoord4i = NULL;
-PFNGLMULTITEXCOORD4IVPROC glad_glMultiTexCoord4iv = NULL;
-PFNGLMULTITEXCOORD4SPROC glad_glMultiTexCoord4s = NULL;
-PFNGLMULTITEXCOORD4SVPROC glad_glMultiTexCoord4sv = NULL;
-PFNGLMULTITEXCOORDP1UIPROC glad_glMultiTexCoordP1ui = NULL;
-PFNGLMULTITEXCOORDP1UIVPROC glad_glMultiTexCoordP1uiv = NULL;
-PFNGLMULTITEXCOORDP2UIPROC glad_glMultiTexCoordP2ui = NULL;
-PFNGLMULTITEXCOORDP2UIVPROC glad_glMultiTexCoordP2uiv = NULL;
-PFNGLMULTITEXCOORDP3UIPROC glad_glMultiTexCoordP3ui = NULL;
-PFNGLMULTITEXCOORDP3UIVPROC glad_glMultiTexCoordP3uiv = NULL;
-PFNGLMULTITEXCOORDP4UIPROC glad_glMultiTexCoordP4ui = NULL;
-PFNGLMULTITEXCOORDP4UIVPROC glad_glMultiTexCoordP4uiv = NULL;
-PFNGLNEWLISTPROC glad_glNewList = NULL;
-PFNGLNORMAL3BPROC glad_glNormal3b = NULL;
-PFNGLNORMAL3BVPROC glad_glNormal3bv = NULL;
-PFNGLNORMAL3DPROC glad_glNormal3d = NULL;
-PFNGLNORMAL3DVPROC glad_glNormal3dv = NULL;
-PFNGLNORMAL3FPROC glad_glNormal3f = NULL;
-PFNGLNORMAL3FVPROC glad_glNormal3fv = NULL;
-PFNGLNORMAL3IPROC glad_glNormal3i = NULL;
-PFNGLNORMAL3IVPROC glad_glNormal3iv = NULL;
-PFNGLNORMAL3SPROC glad_glNormal3s = NULL;
-PFNGLNORMAL3SVPROC glad_glNormal3sv = NULL;
-PFNGLNORMALP3UIPROC glad_glNormalP3ui = NULL;
-PFNGLNORMALP3UIVPROC glad_glNormalP3uiv = NULL;
-PFNGLNORMALPOINTERPROC glad_glNormalPointer = NULL;
-PFNGLORTHOPROC glad_glOrtho = NULL;
-PFNGLPASSTHROUGHPROC glad_glPassThrough = NULL;
-PFNGLPIXELMAPFVPROC glad_glPixelMapfv = NULL;
-PFNGLPIXELMAPUIVPROC glad_glPixelMapuiv = NULL;
-PFNGLPIXELMAPUSVPROC glad_glPixelMapusv = NULL;
-PFNGLPIXELSTOREFPROC glad_glPixelStoref = NULL;
-PFNGLPIXELSTOREIPROC glad_glPixelStorei = NULL;
-PFNGLPIXELTRANSFERFPROC glad_glPixelTransferf = NULL;
-PFNGLPIXELTRANSFERIPROC glad_glPixelTransferi = NULL;
-PFNGLPIXELZOOMPROC glad_glPixelZoom = NULL;
-PFNGLPOINTPARAMETERFPROC glad_glPointParameterf = NULL;
-PFNGLPOINTPARAMETERFVPROC glad_glPointParameterfv = NULL;
-PFNGLPOINTPARAMETERIPROC glad_glPointParameteri = NULL;
-PFNGLPOINTPARAMETERIVPROC glad_glPointParameteriv = NULL;
-PFNGLPOINTSIZEPROC glad_glPointSize = NULL;
-PFNGLPOLYGONMODEPROC glad_glPolygonMode = NULL;
-PFNGLPOLYGONOFFSETPROC glad_glPolygonOffset = NULL;
-PFNGLPOLYGONSTIPPLEPROC glad_glPolygonStipple = NULL;
-PFNGLPOPATTRIBPROC glad_glPopAttrib = NULL;
-PFNGLPOPCLIENTATTRIBPROC glad_glPopClientAttrib = NULL;
-PFNGLPOPMATRIXPROC glad_glPopMatrix = NULL;
-PFNGLPOPNAMEPROC glad_glPopName = NULL;
-PFNGLPRIMITIVERESTARTINDEXPROC glad_glPrimitiveRestartIndex = NULL;
-PFNGLPRIORITIZETEXTURESPROC glad_glPrioritizeTextures = NULL;
-PFNGLPROVOKINGVERTEXPROC glad_glProvokingVertex = NULL;
-PFNGLPUSHATTRIBPROC glad_glPushAttrib = NULL;
-PFNGLPUSHCLIENTATTRIBPROC glad_glPushClientAttrib = NULL;
-PFNGLPUSHMATRIXPROC glad_glPushMatrix = NULL;
-PFNGLPUSHNAMEPROC glad_glPushName = NULL;
-PFNGLQUERYCOUNTERPROC glad_glQueryCounter = NULL;
-PFNGLRASTERPOS2DPROC glad_glRasterPos2d = NULL;
-PFNGLRASTERPOS2DVPROC glad_glRasterPos2dv = NULL;
-PFNGLRASTERPOS2FPROC glad_glRasterPos2f = NULL;
-PFNGLRASTERPOS2FVPROC glad_glRasterPos2fv = NULL;
-PFNGLRASTERPOS2IPROC glad_glRasterPos2i = NULL;
-PFNGLRASTERPOS2IVPROC glad_glRasterPos2iv = NULL;
-PFNGLRASTERPOS2SPROC glad_glRasterPos2s = NULL;
-PFNGLRASTERPOS2SVPROC glad_glRasterPos2sv = NULL;
-PFNGLRASTERPOS3DPROC glad_glRasterPos3d = NULL;
-PFNGLRASTERPOS3DVPROC glad_glRasterPos3dv = NULL;
-PFNGLRASTERPOS3FPROC glad_glRasterPos3f = NULL;
-PFNGLRASTERPOS3FVPROC glad_glRasterPos3fv = NULL;
-PFNGLRASTERPOS3IPROC glad_glRasterPos3i = NULL;
-PFNGLRASTERPOS3IVPROC glad_glRasterPos3iv = NULL;
-PFNGLRASTERPOS3SPROC glad_glRasterPos3s = NULL;
-PFNGLRASTERPOS3SVPROC glad_glRasterPos3sv = NULL;
-PFNGLRASTERPOS4DPROC glad_glRasterPos4d = NULL;
-PFNGLRASTERPOS4DVPROC glad_glRasterPos4dv = NULL;
-PFNGLRASTERPOS4FPROC glad_glRasterPos4f = NULL;
-PFNGLRASTERPOS4FVPROC glad_glRasterPos4fv = NULL;
-PFNGLRASTERPOS4IPROC glad_glRasterPos4i = NULL;
-PFNGLRASTERPOS4IVPROC glad_glRasterPos4iv = NULL;
-PFNGLRASTERPOS4SPROC glad_glRasterPos4s = NULL;
-PFNGLRASTERPOS4SVPROC glad_glRasterPos4sv = NULL;
-PFNGLREADBUFFERPROC glad_glReadBuffer = NULL;
-PFNGLREADPIXELSPROC glad_glReadPixels = NULL;
-PFNGLRECTDPROC glad_glRectd = NULL;
-PFNGLRECTDVPROC glad_glRectdv = NULL;
-PFNGLRECTFPROC glad_glRectf = NULL;
-PFNGLRECTFVPROC glad_glRectfv = NULL;
-PFNGLRECTIPROC glad_glRecti = NULL;
-PFNGLRECTIVPROC glad_glRectiv = NULL;
-PFNGLRECTSPROC glad_glRects = NULL;
-PFNGLRECTSVPROC glad_glRectsv = NULL;
-PFNGLRENDERMODEPROC glad_glRenderMode = NULL;
-PFNGLRENDERBUFFERSTORAGEPROC glad_glRenderbufferStorage = NULL;
-PFNGLRENDERBUFFERSTORAGEMULTISAMPLEPROC glad_glRenderbufferStorageMultisample = NULL;
-PFNGLROTATEDPROC glad_glRotated = NULL;
-PFNGLROTATEFPROC glad_glRotatef = NULL;
-PFNGLSAMPLECOVERAGEPROC glad_glSampleCoverage = NULL;
-PFNGLSAMPLEMASKIPROC glad_glSampleMaski = NULL;
-PFNGLSAMPLERPARAMETERIIVPROC glad_glSamplerParameterIiv = NULL;
-PFNGLSAMPLERPARAMETERIUIVPROC glad_glSamplerParameterIuiv = NULL;
-PFNGLSAMPLERPARAMETERFPROC glad_glSamplerParameterf = NULL;
-PFNGLSAMPLERPARAMETERFVPROC glad_glSamplerParameterfv = NULL;
-PFNGLSAMPLERPARAMETERIPROC glad_glSamplerParameteri = NULL;
-PFNGLSAMPLERPARAMETERIVPROC glad_glSamplerParameteriv = NULL;
-PFNGLSCALEDPROC glad_glScaled = NULL;
-PFNGLSCALEFPROC glad_glScalef = NULL;
-PFNGLSCISSORPROC glad_glScissor = NULL;
-PFNGLSECONDARYCOLOR3BPROC glad_glSecondaryColor3b = NULL;
-PFNGLSECONDARYCOLOR3BVPROC glad_glSecondaryColor3bv = NULL;
-PFNGLSECONDARYCOLOR3DPROC glad_glSecondaryColor3d = NULL;
-PFNGLSECONDARYCOLOR3DVPROC glad_glSecondaryColor3dv = NULL;
-PFNGLSECONDARYCOLOR3FPROC glad_glSecondaryColor3f = NULL;
-PFNGLSECONDARYCOLOR3FVPROC glad_glSecondaryColor3fv = NULL;
-PFNGLSECONDARYCOLOR3IPROC glad_glSecondaryColor3i = NULL;
-PFNGLSECONDARYCOLOR3IVPROC glad_glSecondaryColor3iv = NULL;
-PFNGLSECONDARYCOLOR3SPROC glad_glSecondaryColor3s = NULL;
-PFNGLSECONDARYCOLOR3SVPROC glad_glSecondaryColor3sv = NULL;
-PFNGLSECONDARYCOLOR3UBPROC glad_glSecondaryColor3ub = NULL;
-PFNGLSECONDARYCOLOR3UBVPROC glad_glSecondaryColor3ubv = NULL;
-PFNGLSECONDARYCOLOR3UIPROC glad_glSecondaryColor3ui = NULL;
-PFNGLSECONDARYCOLOR3UIVPROC glad_glSecondaryColor3uiv = NULL;
-PFNGLSECONDARYCOLOR3USPROC glad_glSecondaryColor3us = NULL;
-PFNGLSECONDARYCOLOR3USVPROC glad_glSecondaryColor3usv = NULL;
-PFNGLSECONDARYCOLORP3UIPROC glad_glSecondaryColorP3ui = NULL;
-PFNGLSECONDARYCOLORP3UIVPROC glad_glSecondaryColorP3uiv = NULL;
-PFNGLSECONDARYCOLORPOINTERPROC glad_glSecondaryColorPointer = NULL;
-PFNGLSELECTBUFFERPROC glad_glSelectBuffer = NULL;
-PFNGLSHADEMODELPROC glad_glShadeModel = NULL;
-PFNGLSHADERSOURCEPROC glad_glShaderSource = NULL;
-PFNGLSTENCILFUNCPROC glad_glStencilFunc = NULL;
-PFNGLSTENCILFUNCSEPARATEPROC glad_glStencilFuncSeparate = NULL;
-PFNGLSTENCILMASKPROC glad_glStencilMask = NULL;
-PFNGLSTENCILMASKSEPARATEPROC glad_glStencilMaskSeparate = NULL;
-PFNGLSTENCILOPPROC glad_glStencilOp = NULL;
-PFNGLSTENCILOPSEPARATEPROC glad_glStencilOpSeparate = NULL;
-PFNGLTEXBUFFERPROC glad_glTexBuffer = NULL;
-PFNGLTEXCOORD1DPROC glad_glTexCoord1d = NULL;
-PFNGLTEXCOORD1DVPROC glad_glTexCoord1dv = NULL;
-PFNGLTEXCOORD1FPROC glad_glTexCoord1f = NULL;
-PFNGLTEXCOORD1FVPROC glad_glTexCoord1fv = NULL;
-PFNGLTEXCOORD1IPROC glad_glTexCoord1i = NULL;
-PFNGLTEXCOORD1IVPROC glad_glTexCoord1iv = NULL;
-PFNGLTEXCOORD1SPROC glad_glTexCoord1s = NULL;
-PFNGLTEXCOORD1SVPROC glad_glTexCoord1sv = NULL;
-PFNGLTEXCOORD2DPROC glad_glTexCoord2d = NULL;
-PFNGLTEXCOORD2DVPROC glad_glTexCoord2dv = NULL;
-PFNGLTEXCOORD2FPROC glad_glTexCoord2f = NULL;
-PFNGLTEXCOORD2FVPROC glad_glTexCoord2fv = NULL;
-PFNGLTEXCOORD2IPROC glad_glTexCoord2i = NULL;
-PFNGLTEXCOORD2IVPROC glad_glTexCoord2iv = NULL;
-PFNGLTEXCOORD2SPROC glad_glTexCoord2s = NULL;
-PFNGLTEXCOORD2SVPROC glad_glTexCoord2sv = NULL;
-PFNGLTEXCOORD3DPROC glad_glTexCoord3d = NULL;
-PFNGLTEXCOORD3DVPROC glad_glTexCoord3dv = NULL;
-PFNGLTEXCOORD3FPROC glad_glTexCoord3f = NULL;
-PFNGLTEXCOORD3FVPROC glad_glTexCoord3fv = NULL;
-PFNGLTEXCOORD3IPROC glad_glTexCoord3i = NULL;
-PFNGLTEXCOORD3IVPROC glad_glTexCoord3iv = NULL;
-PFNGLTEXCOORD3SPROC glad_glTexCoord3s = NULL;
-PFNGLTEXCOORD3SVPROC glad_glTexCoord3sv = NULL;
-PFNGLTEXCOORD4DPROC glad_glTexCoord4d = NULL;
-PFNGLTEXCOORD4DVPROC glad_glTexCoord4dv = NULL;
-PFNGLTEXCOORD4FPROC glad_glTexCoord4f = NULL;
-PFNGLTEXCOORD4FVPROC glad_glTexCoord4fv = NULL;
-PFNGLTEXCOORD4IPROC glad_glTexCoord4i = NULL;
-PFNGLTEXCOORD4IVPROC glad_glTexCoord4iv = NULL;
-PFNGLTEXCOORD4SPROC glad_glTexCoord4s = NULL;
-PFNGLTEXCOORD4SVPROC glad_glTexCoord4sv = NULL;
-PFNGLTEXCOORDP1UIPROC glad_glTexCoordP1ui = NULL;
-PFNGLTEXCOORDP1UIVPROC glad_glTexCoordP1uiv = NULL;
-PFNGLTEXCOORDP2UIPROC glad_glTexCoordP2ui = NULL;
-PFNGLTEXCOORDP2UIVPROC glad_glTexCoordP2uiv = NULL;
-PFNGLTEXCOORDP3UIPROC glad_glTexCoordP3ui = NULL;
-PFNGLTEXCOORDP3UIVPROC glad_glTexCoordP3uiv = NULL;
-PFNGLTEXCOORDP4UIPROC glad_glTexCoordP4ui = NULL;
-PFNGLTEXCOORDP4UIVPROC glad_glTexCoordP4uiv = NULL;
-PFNGLTEXCOORDPOINTERPROC glad_glTexCoordPointer = NULL;
-PFNGLTEXENVFPROC glad_glTexEnvf = NULL;
-PFNGLTEXENVFVPROC glad_glTexEnvfv = NULL;
-PFNGLTEXENVIPROC glad_glTexEnvi = NULL;
-PFNGLTEXENVIVPROC glad_glTexEnviv = NULL;
-PFNGLTEXGENDPROC glad_glTexGend = NULL;
-PFNGLTEXGENDVPROC glad_glTexGendv = NULL;
-PFNGLTEXGENFPROC glad_glTexGenf = NULL;
-PFNGLTEXGENFVPROC glad_glTexGenfv = NULL;
-PFNGLTEXGENIPROC glad_glTexGeni = NULL;
-PFNGLTEXGENIVPROC glad_glTexGeniv = NULL;
-PFNGLTEXIMAGE1DPROC glad_glTexImage1D = NULL;
-PFNGLTEXIMAGE2DPROC glad_glTexImage2D = NULL;
-PFNGLTEXIMAGE2DMULTISAMPLEPROC glad_glTexImage2DMultisample = NULL;
-PFNGLTEXIMAGE3DPROC glad_glTexImage3D = NULL;
-PFNGLTEXIMAGE3DMULTISAMPLEPROC glad_glTexImage3DMultisample = NULL;
-PFNGLTEXPARAMETERIIVPROC glad_glTexParameterIiv = NULL;
-PFNGLTEXPARAMETERIUIVPROC glad_glTexParameterIuiv = NULL;
-PFNGLTEXPARAMETERFPROC glad_glTexParameterf = NULL;
-PFNGLTEXPARAMETERFVPROC glad_glTexParameterfv = NULL;
-PFNGLTEXPARAMETERIPROC glad_glTexParameteri = NULL;
-PFNGLTEXPARAMETERIVPROC glad_glTexParameteriv = NULL;
-PFNGLTEXSUBIMAGE1DPROC glad_glTexSubImage1D = NULL;
-PFNGLTEXSUBIMAGE2DPROC glad_glTexSubImage2D = NULL;
-PFNGLTEXSUBIMAGE3DPROC glad_glTexSubImage3D = NULL;
-PFNGLTRANSFORMFEEDBACKVARYINGSPROC glad_glTransformFeedbackVaryings = NULL;
-PFNGLTRANSLATEDPROC glad_glTranslated = NULL;
-PFNGLTRANSLATEFPROC glad_glTranslatef = NULL;
-PFNGLUNIFORM1FPROC glad_glUniform1f = NULL;
-PFNGLUNIFORM1FVPROC glad_glUniform1fv = NULL;
-PFNGLUNIFORM1IPROC glad_glUniform1i = NULL;
-PFNGLUNIFORM1IVPROC glad_glUniform1iv = NULL;
-PFNGLUNIFORM1UIPROC glad_glUniform1ui = NULL;
-PFNGLUNIFORM1UIVPROC glad_glUniform1uiv = NULL;
-PFNGLUNIFORM2FPROC glad_glUniform2f = NULL;
-PFNGLUNIFORM2FVPROC glad_glUniform2fv = NULL;
-PFNGLUNIFORM2IPROC glad_glUniform2i = NULL;
-PFNGLUNIFORM2IVPROC glad_glUniform2iv = NULL;
-PFNGLUNIFORM2UIPROC glad_glUniform2ui = NULL;
-PFNGLUNIFORM2UIVPROC glad_glUniform2uiv = NULL;
-PFNGLUNIFORM3FPROC glad_glUniform3f = NULL;
-PFNGLUNIFORM3FVPROC glad_glUniform3fv = NULL;
-PFNGLUNIFORM3IPROC glad_glUniform3i = NULL;
-PFNGLUNIFORM3IVPROC glad_glUniform3iv = NULL;
-PFNGLUNIFORM3UIPROC glad_glUniform3ui = NULL;
-PFNGLUNIFORM3UIVPROC glad_glUniform3uiv = NULL;
-PFNGLUNIFORM4FPROC glad_glUniform4f = NULL;
-PFNGLUNIFORM4FVPROC glad_glUniform4fv = NULL;
-PFNGLUNIFORM4IPROC glad_glUniform4i = NULL;
-PFNGLUNIFORM4IVPROC glad_glUniform4iv = NULL;
-PFNGLUNIFORM4UIPROC glad_glUniform4ui = NULL;
-PFNGLUNIFORM4UIVPROC glad_glUniform4uiv = NULL;
-PFNGLUNIFORMBLOCKBINDINGPROC glad_glUniformBlockBinding = NULL;
-PFNGLUNIFORMMATRIX2FVPROC glad_glUniformMatrix2fv = NULL;
-PFNGLUNIFORMMATRIX2X3FVPROC glad_glUniformMatrix2x3fv = NULL;
-PFNGLUNIFORMMATRIX2X4FVPROC glad_glUniformMatrix2x4fv = NULL;
-PFNGLUNIFORMMATRIX3FVPROC glad_glUniformMatrix3fv = NULL;
-PFNGLUNIFORMMATRIX3X2FVPROC glad_glUniformMatrix3x2fv = NULL;
-PFNGLUNIFORMMATRIX3X4FVPROC glad_glUniformMatrix3x4fv = NULL;
-PFNGLUNIFORMMATRIX4FVPROC glad_glUniformMatrix4fv = NULL;
-PFNGLUNIFORMMATRIX4X2FVPROC glad_glUniformMatrix4x2fv = NULL;
-PFNGLUNIFORMMATRIX4X3FVPROC glad_glUniformMatrix4x3fv = NULL;
-PFNGLUNMAPBUFFERPROC glad_glUnmapBuffer = NULL;
-PFNGLUSEPROGRAMPROC glad_glUseProgram = NULL;
-PFNGLVALIDATEPROGRAMPROC glad_glValidateProgram = NULL;
-PFNGLVERTEX2DPROC glad_glVertex2d = NULL;
-PFNGLVERTEX2DVPROC glad_glVertex2dv = NULL;
-PFNGLVERTEX2FPROC glad_glVertex2f = NULL;
-PFNGLVERTEX2FVPROC glad_glVertex2fv = NULL;
-PFNGLVERTEX2IPROC glad_glVertex2i = NULL;
-PFNGLVERTEX2IVPROC glad_glVertex2iv = NULL;
-PFNGLVERTEX2SPROC glad_glVertex2s = NULL;
-PFNGLVERTEX2SVPROC glad_glVertex2sv = NULL;
-PFNGLVERTEX3DPROC glad_glVertex3d = NULL;
-PFNGLVERTEX3DVPROC glad_glVertex3dv = NULL;
-PFNGLVERTEX3FPROC glad_glVertex3f = NULL;
-PFNGLVERTEX3FVPROC glad_glVertex3fv = NULL;
-PFNGLVERTEX3IPROC glad_glVertex3i = NULL;
-PFNGLVERTEX3IVPROC glad_glVertex3iv = NULL;
-PFNGLVERTEX3SPROC glad_glVertex3s = NULL;
-PFNGLVERTEX3SVPROC glad_glVertex3sv = NULL;
-PFNGLVERTEX4DPROC glad_glVertex4d = NULL;
-PFNGLVERTEX4DVPROC glad_glVertex4dv = NULL;
-PFNGLVERTEX4FPROC glad_glVertex4f = NULL;
-PFNGLVERTEX4FVPROC glad_glVertex4fv = NULL;
-PFNGLVERTEX4IPROC glad_glVertex4i = NULL;
-PFNGLVERTEX4IVPROC glad_glVertex4iv = NULL;
-PFNGLVERTEX4SPROC glad_glVertex4s = NULL;
-PFNGLVERTEX4SVPROC glad_glVertex4sv = NULL;
-PFNGLVERTEXATTRIB1DPROC glad_glVertexAttrib1d = NULL;
-PFNGLVERTEXATTRIB1DVPROC glad_glVertexAttrib1dv = NULL;
-PFNGLVERTEXATTRIB1FPROC glad_glVertexAttrib1f = NULL;
-PFNGLVERTEXATTRIB1FVPROC glad_glVertexAttrib1fv = NULL;
-PFNGLVERTEXATTRIB1SPROC glad_glVertexAttrib1s = NULL;
-PFNGLVERTEXATTRIB1SVPROC glad_glVertexAttrib1sv = NULL;
-PFNGLVERTEXATTRIB2DPROC glad_glVertexAttrib2d = NULL;
-PFNGLVERTEXATTRIB2DVPROC glad_glVertexAttrib2dv = NULL;
-PFNGLVERTEXATTRIB2FPROC glad_glVertexAttrib2f = NULL;
-PFNGLVERTEXATTRIB2FVPROC glad_glVertexAttrib2fv = NULL;
-PFNGLVERTEXATTRIB2SPROC glad_glVertexAttrib2s = NULL;
-PFNGLVERTEXATTRIB2SVPROC glad_glVertexAttrib2sv = NULL;
-PFNGLVERTEXATTRIB3DPROC glad_glVertexAttrib3d = NULL;
-PFNGLVERTEXATTRIB3DVPROC glad_glVertexAttrib3dv = NULL;
-PFNGLVERTEXATTRIB3FPROC glad_glVertexAttrib3f = NULL;
-PFNGLVERTEXATTRIB3FVPROC glad_glVertexAttrib3fv = NULL;
-PFNGLVERTEXATTRIB3SPROC glad_glVertexAttrib3s = NULL;
-PFNGLVERTEXATTRIB3SVPROC glad_glVertexAttrib3sv = NULL;
-PFNGLVERTEXATTRIB4NBVPROC glad_glVertexAttrib4Nbv = NULL;
-PFNGLVERTEXATTRIB4NIVPROC glad_glVertexAttrib4Niv = NULL;
-PFNGLVERTEXATTRIB4NSVPROC glad_glVertexAttrib4Nsv = NULL;
-PFNGLVERTEXATTRIB4NUBPROC glad_glVertexAttrib4Nub = NULL;
-PFNGLVERTEXATTRIB4NUBVPROC glad_glVertexAttrib4Nubv = NULL;
-PFNGLVERTEXATTRIB4NUIVPROC glad_glVertexAttrib4Nuiv = NULL;
-PFNGLVERTEXATTRIB4NUSVPROC glad_glVertexAttrib4Nusv = NULL;
-PFNGLVERTEXATTRIB4BVPROC glad_glVertexAttrib4bv = NULL;
-PFNGLVERTEXATTRIB4DPROC glad_glVertexAttrib4d = NULL;
-PFNGLVERTEXATTRIB4DVPROC glad_glVertexAttrib4dv = NULL;
-PFNGLVERTEXATTRIB4FPROC glad_glVertexAttrib4f = NULL;
-PFNGLVERTEXATTRIB4FVPROC glad_glVertexAttrib4fv = NULL;
-PFNGLVERTEXATTRIB4IVPROC glad_glVertexAttrib4iv = NULL;
-PFNGLVERTEXATTRIB4SPROC glad_glVertexAttrib4s = NULL;
-PFNGLVERTEXATTRIB4SVPROC glad_glVertexAttrib4sv = NULL;
-PFNGLVERTEXATTRIB4UBVPROC glad_glVertexAttrib4ubv = NULL;
-PFNGLVERTEXATTRIB4UIVPROC glad_glVertexAttrib4uiv = NULL;
-PFNGLVERTEXATTRIB4USVPROC glad_glVertexAttrib4usv = NULL;
-PFNGLVERTEXATTRIBDIVISORPROC glad_glVertexAttribDivisor = NULL;
-PFNGLVERTEXATTRIBI1IPROC glad_glVertexAttribI1i = NULL;
-PFNGLVERTEXATTRIBI1IVPROC glad_glVertexAttribI1iv = NULL;
-PFNGLVERTEXATTRIBI1UIPROC glad_glVertexAttribI1ui = NULL;
-PFNGLVERTEXATTRIBI1UIVPROC glad_glVertexAttribI1uiv = NULL;
-PFNGLVERTEXATTRIBI2IPROC glad_glVertexAttribI2i = NULL;
-PFNGLVERTEXATTRIBI2IVPROC glad_glVertexAttribI2iv = NULL;
-PFNGLVERTEXATTRIBI2UIPROC glad_glVertexAttribI2ui = NULL;
-PFNGLVERTEXATTRIBI2UIVPROC glad_glVertexAttribI2uiv = NULL;
-PFNGLVERTEXATTRIBI3IPROC glad_glVertexAttribI3i = NULL;
-PFNGLVERTEXATTRIBI3IVPROC glad_glVertexAttribI3iv = NULL;
-PFNGLVERTEXATTRIBI3UIPROC glad_glVertexAttribI3ui = NULL;
-PFNGLVERTEXATTRIBI3UIVPROC glad_glVertexAttribI3uiv = NULL;
-PFNGLVERTEXATTRIBI4BVPROC glad_glVertexAttribI4bv = NULL;
-PFNGLVERTEXATTRIBI4IPROC glad_glVertexAttribI4i = NULL;
-PFNGLVERTEXATTRIBI4IVPROC glad_glVertexAttribI4iv = NULL;
-PFNGLVERTEXATTRIBI4SVPROC glad_glVertexAttribI4sv = NULL;
-PFNGLVERTEXATTRIBI4UBVPROC glad_glVertexAttribI4ubv = NULL;
-PFNGLVERTEXATTRIBI4UIPROC glad_glVertexAttribI4ui = NULL;
-PFNGLVERTEXATTRIBI4UIVPROC glad_glVertexAttribI4uiv = NULL;
-PFNGLVERTEXATTRIBI4USVPROC glad_glVertexAttribI4usv = NULL;
-PFNGLVERTEXATTRIBIPOINTERPROC glad_glVertexAttribIPointer = NULL;
-PFNGLVERTEXATTRIBP1UIPROC glad_glVertexAttribP1ui = NULL;
-PFNGLVERTEXATTRIBP1UIVPROC glad_glVertexAttribP1uiv = NULL;
-PFNGLVERTEXATTRIBP2UIPROC glad_glVertexAttribP2ui = NULL;
-PFNGLVERTEXATTRIBP2UIVPROC glad_glVertexAttribP2uiv = NULL;
-PFNGLVERTEXATTRIBP3UIPROC glad_glVertexAttribP3ui = NULL;
-PFNGLVERTEXATTRIBP3UIVPROC glad_glVertexAttribP3uiv = NULL;
-PFNGLVERTEXATTRIBP4UIPROC glad_glVertexAttribP4ui = NULL;
-PFNGLVERTEXATTRIBP4UIVPROC glad_glVertexAttribP4uiv = NULL;
-PFNGLVERTEXATTRIBPOINTERPROC glad_glVertexAttribPointer = NULL;
-PFNGLVERTEXP2UIPROC glad_glVertexP2ui = NULL;
-PFNGLVERTEXP2UIVPROC glad_glVertexP2uiv = NULL;
-PFNGLVERTEXP3UIPROC glad_glVertexP3ui = NULL;
-PFNGLVERTEXP3UIVPROC glad_glVertexP3uiv = NULL;
-PFNGLVERTEXP4UIPROC glad_glVertexP4ui = NULL;
-PFNGLVERTEXP4UIVPROC glad_glVertexP4uiv = NULL;
-PFNGLVERTEXPOINTERPROC glad_glVertexPointer = NULL;
-PFNGLVIEWPORTPROC glad_glViewport = NULL;
-PFNGLWAITSYNCPROC glad_glWaitSync = NULL;
-PFNGLWINDOWPOS2DPROC glad_glWindowPos2d = NULL;
-PFNGLWINDOWPOS2DVPROC glad_glWindowPos2dv = NULL;
-PFNGLWINDOWPOS2FPROC glad_glWindowPos2f = NULL;
-PFNGLWINDOWPOS2FVPROC glad_glWindowPos2fv = NULL;
-PFNGLWINDOWPOS2IPROC glad_glWindowPos2i = NULL;
-PFNGLWINDOWPOS2IVPROC glad_glWindowPos2iv = NULL;
-PFNGLWINDOWPOS2SPROC glad_glWindowPos2s = NULL;
-PFNGLWINDOWPOS2SVPROC glad_glWindowPos2sv = NULL;
-PFNGLWINDOWPOS3DPROC glad_glWindowPos3d = NULL;
-PFNGLWINDOWPOS3DVPROC glad_glWindowPos3dv = NULL;
-PFNGLWINDOWPOS3FPROC glad_glWindowPos3f = NULL;
-PFNGLWINDOWPOS3FVPROC glad_glWindowPos3fv = NULL;
-PFNGLWINDOWPOS3IPROC glad_glWindowPos3i = NULL;
-PFNGLWINDOWPOS3IVPROC glad_glWindowPos3iv = NULL;
-PFNGLWINDOWPOS3SPROC glad_glWindowPos3s = NULL;
-PFNGLWINDOWPOS3SVPROC glad_glWindowPos3sv = NULL;
-int GLAD_GL_ARB_debug_output = 0;
-int GLAD_GL_ARB_framebuffer_object = 0;
-int GLAD_GL_EXT_framebuffer_blit = 0;
-int GLAD_GL_EXT_framebuffer_multisample = 0;
-int GLAD_GL_EXT_framebuffer_object = 0;
-PFNGLDEBUGMESSAGECONTROLARBPROC glad_glDebugMessageControlARB = NULL;
-PFNGLDEBUGMESSAGEINSERTARBPROC glad_glDebugMessageInsertARB = NULL;
-PFNGLDEBUGMESSAGECALLBACKARBPROC glad_glDebugMessageCallbackARB = NULL;
-PFNGLGETDEBUGMESSAGELOGARBPROC glad_glGetDebugMessageLogARB = NULL;
-PFNGLBLITFRAMEBUFFEREXTPROC glad_glBlitFramebufferEXT = NULL;
-PFNGLRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC glad_glRenderbufferStorageMultisampleEXT = NULL;
-PFNGLISRENDERBUFFEREXTPROC glad_glIsRenderbufferEXT = NULL;
-PFNGLBINDRENDERBUFFEREXTPROC glad_glBindRenderbufferEXT = NULL;
-PFNGLDELETERENDERBUFFERSEXTPROC glad_glDeleteRenderbuffersEXT = NULL;
-PFNGLGENRENDERBUFFERSEXTPROC glad_glGenRenderbuffersEXT = NULL;
-PFNGLRENDERBUFFERSTORAGEEXTPROC glad_glRenderbufferStorageEXT = NULL;
-PFNGLGETRENDERBUFFERPARAMETERIVEXTPROC glad_glGetRenderbufferParameterivEXT = NULL;
-PFNGLISFRAMEBUFFEREXTPROC glad_glIsFramebufferEXT = NULL;
-PFNGLBINDFRAMEBUFFEREXTPROC glad_glBindFramebufferEXT = NULL;
-PFNGLDELETEFRAMEBUFFERSEXTPROC glad_glDeleteFramebuffersEXT = NULL;
-PFNGLGENFRAMEBUFFERSEXTPROC glad_glGenFramebuffersEXT = NULL;
-PFNGLCHECKFRAMEBUFFERSTATUSEXTPROC glad_glCheckFramebufferStatusEXT = NULL;
-PFNGLFRAMEBUFFERTEXTURE1DEXTPROC glad_glFramebufferTexture1DEXT = NULL;
-PFNGLFRAMEBUFFERTEXTURE2DEXTPROC glad_glFramebufferTexture2DEXT = NULL;
-PFNGLFRAMEBUFFERTEXTURE3DEXTPROC glad_glFramebufferTexture3DEXT = NULL;
-PFNGLFRAMEBUFFERRENDERBUFFEREXTPROC glad_glFramebufferRenderbufferEXT = NULL;
-PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVEXTPROC glad_glGetFramebufferAttachmentParameterivEXT = NULL;
-PFNGLGENERATEMIPMAPEXTPROC glad_glGenerateMipmapEXT = NULL;
-static void load_GL_VERSION_1_0(GLADloadproc load) {
- if(!GLAD_GL_VERSION_1_0) return;
- glad_glCullFace = (PFNGLCULLFACEPROC)load("glCullFace");
- glad_glFrontFace = (PFNGLFRONTFACEPROC)load("glFrontFace");
- glad_glHint = (PFNGLHINTPROC)load("glHint");
- glad_glLineWidth = (PFNGLLINEWIDTHPROC)load("glLineWidth");
- glad_glPointSize = (PFNGLPOINTSIZEPROC)load("glPointSize");
- glad_glPolygonMode = (PFNGLPOLYGONMODEPROC)load("glPolygonMode");
- glad_glScissor = (PFNGLSCISSORPROC)load("glScissor");
- glad_glTexParameterf = (PFNGLTEXPARAMETERFPROC)load("glTexParameterf");
- glad_glTexParameterfv = (PFNGLTEXPARAMETERFVPROC)load("glTexParameterfv");
- glad_glTexParameteri = (PFNGLTEXPARAMETERIPROC)load("glTexParameteri");
- glad_glTexParameteriv = (PFNGLTEXPARAMETERIVPROC)load("glTexParameteriv");
- glad_glTexImage1D = (PFNGLTEXIMAGE1DPROC)load("glTexImage1D");
- glad_glTexImage2D = (PFNGLTEXIMAGE2DPROC)load("glTexImage2D");
- glad_glDrawBuffer = (PFNGLDRAWBUFFERPROC)load("glDrawBuffer");
- glad_glClear = (PFNGLCLEARPROC)load("glClear");
- glad_glClearColor = (PFNGLCLEARCOLORPROC)load("glClearColor");
- glad_glClearStencil = (PFNGLCLEARSTENCILPROC)load("glClearStencil");
- glad_glClearDepth = (PFNGLCLEARDEPTHPROC)load("glClearDepth");
- glad_glStencilMask = (PFNGLSTENCILMASKPROC)load("glStencilMask");
- glad_glColorMask = (PFNGLCOLORMASKPROC)load("glColorMask");
- glad_glDepthMask = (PFNGLDEPTHMASKPROC)load("glDepthMask");
- glad_glDisable = (PFNGLDISABLEPROC)load("glDisable");
- glad_glEnable = (PFNGLENABLEPROC)load("glEnable");
- glad_glFinish = (PFNGLFINISHPROC)load("glFinish");
- glad_glFlush = (PFNGLFLUSHPROC)load("glFlush");
- glad_glBlendFunc = (PFNGLBLENDFUNCPROC)load("glBlendFunc");
- glad_glLogicOp = (PFNGLLOGICOPPROC)load("glLogicOp");
- glad_glStencilFunc = (PFNGLSTENCILFUNCPROC)load("glStencilFunc");
- glad_glStencilOp = (PFNGLSTENCILOPPROC)load("glStencilOp");
- glad_glDepthFunc = (PFNGLDEPTHFUNCPROC)load("glDepthFunc");
- glad_glPixelStoref = (PFNGLPIXELSTOREFPROC)load("glPixelStoref");
- glad_glPixelStorei = (PFNGLPIXELSTOREIPROC)load("glPixelStorei");
- glad_glReadBuffer = (PFNGLREADBUFFERPROC)load("glReadBuffer");
- glad_glReadPixels = (PFNGLREADPIXELSPROC)load("glReadPixels");
- glad_glGetBooleanv = (PFNGLGETBOOLEANVPROC)load("glGetBooleanv");
- glad_glGetDoublev = (PFNGLGETDOUBLEVPROC)load("glGetDoublev");
- glad_glGetError = (PFNGLGETERRORPROC)load("glGetError");
- glad_glGetFloatv = (PFNGLGETFLOATVPROC)load("glGetFloatv");
- glad_glGetIntegerv = (PFNGLGETINTEGERVPROC)load("glGetIntegerv");
- glad_glGetString = (PFNGLGETSTRINGPROC)load("glGetString");
- glad_glGetTexImage = (PFNGLGETTEXIMAGEPROC)load("glGetTexImage");
- glad_glGetTexParameterfv = (PFNGLGETTEXPARAMETERFVPROC)load("glGetTexParameterfv");
- glad_glGetTexParameteriv = (PFNGLGETTEXPARAMETERIVPROC)load("glGetTexParameteriv");
- glad_glGetTexLevelParameterfv = (PFNGLGETTEXLEVELPARAMETERFVPROC)load("glGetTexLevelParameterfv");
- glad_glGetTexLevelParameteriv = (PFNGLGETTEXLEVELPARAMETERIVPROC)load("glGetTexLevelParameteriv");
- glad_glIsEnabled = (PFNGLISENABLEDPROC)load("glIsEnabled");
- glad_glDepthRange = (PFNGLDEPTHRANGEPROC)load("glDepthRange");
- glad_glViewport = (PFNGLVIEWPORTPROC)load("glViewport");
- glad_glNewList = (PFNGLNEWLISTPROC)load("glNewList");
- glad_glEndList = (PFNGLENDLISTPROC)load("glEndList");
- glad_glCallList = (PFNGLCALLLISTPROC)load("glCallList");
- glad_glCallLists = (PFNGLCALLLISTSPROC)load("glCallLists");
- glad_glDeleteLists = (PFNGLDELETELISTSPROC)load("glDeleteLists");
- glad_glGenLists = (PFNGLGENLISTSPROC)load("glGenLists");
- glad_glListBase = (PFNGLLISTBASEPROC)load("glListBase");
- glad_glBegin = (PFNGLBEGINPROC)load("glBegin");
- glad_glBitmap = (PFNGLBITMAPPROC)load("glBitmap");
- glad_glColor3b = (PFNGLCOLOR3BPROC)load("glColor3b");
- glad_glColor3bv = (PFNGLCOLOR3BVPROC)load("glColor3bv");
- glad_glColor3d = (PFNGLCOLOR3DPROC)load("glColor3d");
- glad_glColor3dv = (PFNGLCOLOR3DVPROC)load("glColor3dv");
- glad_glColor3f = (PFNGLCOLOR3FPROC)load("glColor3f");
- glad_glColor3fv = (PFNGLCOLOR3FVPROC)load("glColor3fv");
- glad_glColor3i = (PFNGLCOLOR3IPROC)load("glColor3i");
- glad_glColor3iv = (PFNGLCOLOR3IVPROC)load("glColor3iv");
- glad_glColor3s = (PFNGLCOLOR3SPROC)load("glColor3s");
- glad_glColor3sv = (PFNGLCOLOR3SVPROC)load("glColor3sv");
- glad_glColor3ub = (PFNGLCOLOR3UBPROC)load("glColor3ub");
- glad_glColor3ubv = (PFNGLCOLOR3UBVPROC)load("glColor3ubv");
- glad_glColor3ui = (PFNGLCOLOR3UIPROC)load("glColor3ui");
- glad_glColor3uiv = (PFNGLCOLOR3UIVPROC)load("glColor3uiv");
- glad_glColor3us = (PFNGLCOLOR3USPROC)load("glColor3us");
- glad_glColor3usv = (PFNGLCOLOR3USVPROC)load("glColor3usv");
- glad_glColor4b = (PFNGLCOLOR4BPROC)load("glColor4b");
- glad_glColor4bv = (PFNGLCOLOR4BVPROC)load("glColor4bv");
- glad_glColor4d = (PFNGLCOLOR4DPROC)load("glColor4d");
- glad_glColor4dv = (PFNGLCOLOR4DVPROC)load("glColor4dv");
- glad_glColor4f = (PFNGLCOLOR4FPROC)load("glColor4f");
- glad_glColor4fv = (PFNGLCOLOR4FVPROC)load("glColor4fv");
- glad_glColor4i = (PFNGLCOLOR4IPROC)load("glColor4i");
- glad_glColor4iv = (PFNGLCOLOR4IVPROC)load("glColor4iv");
- glad_glColor4s = (PFNGLCOLOR4SPROC)load("glColor4s");
- glad_glColor4sv = (PFNGLCOLOR4SVPROC)load("glColor4sv");
- glad_glColor4ub = (PFNGLCOLOR4UBPROC)load("glColor4ub");
- glad_glColor4ubv = (PFNGLCOLOR4UBVPROC)load("glColor4ubv");
- glad_glColor4ui = (PFNGLCOLOR4UIPROC)load("glColor4ui");
- glad_glColor4uiv = (PFNGLCOLOR4UIVPROC)load("glColor4uiv");
- glad_glColor4us = (PFNGLCOLOR4USPROC)load("glColor4us");
- glad_glColor4usv = (PFNGLCOLOR4USVPROC)load("glColor4usv");
- glad_glEdgeFlag = (PFNGLEDGEFLAGPROC)load("glEdgeFlag");
- glad_glEdgeFlagv = (PFNGLEDGEFLAGVPROC)load("glEdgeFlagv");
- glad_glEnd = (PFNGLENDPROC)load("glEnd");
- glad_glIndexd = (PFNGLINDEXDPROC)load("glIndexd");
- glad_glIndexdv = (PFNGLINDEXDVPROC)load("glIndexdv");
- glad_glIndexf = (PFNGLINDEXFPROC)load("glIndexf");
- glad_glIndexfv = (PFNGLINDEXFVPROC)load("glIndexfv");
- glad_glIndexi = (PFNGLINDEXIPROC)load("glIndexi");
- glad_glIndexiv = (PFNGLINDEXIVPROC)load("glIndexiv");
- glad_glIndexs = (PFNGLINDEXSPROC)load("glIndexs");
- glad_glIndexsv = (PFNGLINDEXSVPROC)load("glIndexsv");
- glad_glNormal3b = (PFNGLNORMAL3BPROC)load("glNormal3b");
- glad_glNormal3bv = (PFNGLNORMAL3BVPROC)load("glNormal3bv");
- glad_glNormal3d = (PFNGLNORMAL3DPROC)load("glNormal3d");
- glad_glNormal3dv = (PFNGLNORMAL3DVPROC)load("glNormal3dv");
- glad_glNormal3f = (PFNGLNORMAL3FPROC)load("glNormal3f");
- glad_glNormal3fv = (PFNGLNORMAL3FVPROC)load("glNormal3fv");
- glad_glNormal3i = (PFNGLNORMAL3IPROC)load("glNormal3i");
- glad_glNormal3iv = (PFNGLNORMAL3IVPROC)load("glNormal3iv");
- glad_glNormal3s = (PFNGLNORMAL3SPROC)load("glNormal3s");
- glad_glNormal3sv = (PFNGLNORMAL3SVPROC)load("glNormal3sv");
- glad_glRasterPos2d = (PFNGLRASTERPOS2DPROC)load("glRasterPos2d");
- glad_glRasterPos2dv = (PFNGLRASTERPOS2DVPROC)load("glRasterPos2dv");
- glad_glRasterPos2f = (PFNGLRASTERPOS2FPROC)load("glRasterPos2f");
- glad_glRasterPos2fv = (PFNGLRASTERPOS2FVPROC)load("glRasterPos2fv");
- glad_glRasterPos2i = (PFNGLRASTERPOS2IPROC)load("glRasterPos2i");
- glad_glRasterPos2iv = (PFNGLRASTERPOS2IVPROC)load("glRasterPos2iv");
- glad_glRasterPos2s = (PFNGLRASTERPOS2SPROC)load("glRasterPos2s");
- glad_glRasterPos2sv = (PFNGLRASTERPOS2SVPROC)load("glRasterPos2sv");
- glad_glRasterPos3d = (PFNGLRASTERPOS3DPROC)load("glRasterPos3d");
- glad_glRasterPos3dv = (PFNGLRASTERPOS3DVPROC)load("glRasterPos3dv");
- glad_glRasterPos3f = (PFNGLRASTERPOS3FPROC)load("glRasterPos3f");
- glad_glRasterPos3fv = (PFNGLRASTERPOS3FVPROC)load("glRasterPos3fv");
- glad_glRasterPos3i = (PFNGLRASTERPOS3IPROC)load("glRasterPos3i");
- glad_glRasterPos3iv = (PFNGLRASTERPOS3IVPROC)load("glRasterPos3iv");
- glad_glRasterPos3s = (PFNGLRASTERPOS3SPROC)load("glRasterPos3s");
- glad_glRasterPos3sv = (PFNGLRASTERPOS3SVPROC)load("glRasterPos3sv");
- glad_glRasterPos4d = (PFNGLRASTERPOS4DPROC)load("glRasterPos4d");
- glad_glRasterPos4dv = (PFNGLRASTERPOS4DVPROC)load("glRasterPos4dv");
- glad_glRasterPos4f = (PFNGLRASTERPOS4FPROC)load("glRasterPos4f");
- glad_glRasterPos4fv = (PFNGLRASTERPOS4FVPROC)load("glRasterPos4fv");
- glad_glRasterPos4i = (PFNGLRASTERPOS4IPROC)load("glRasterPos4i");
- glad_glRasterPos4iv = (PFNGLRASTERPOS4IVPROC)load("glRasterPos4iv");
- glad_glRasterPos4s = (PFNGLRASTERPOS4SPROC)load("glRasterPos4s");
- glad_glRasterPos4sv = (PFNGLRASTERPOS4SVPROC)load("glRasterPos4sv");
- glad_glRectd = (PFNGLRECTDPROC)load("glRectd");
- glad_glRectdv = (PFNGLRECTDVPROC)load("glRectdv");
- glad_glRectf = (PFNGLRECTFPROC)load("glRectf");
- glad_glRectfv = (PFNGLRECTFVPROC)load("glRectfv");
- glad_glRecti = (PFNGLRECTIPROC)load("glRecti");
- glad_glRectiv = (PFNGLRECTIVPROC)load("glRectiv");
- glad_glRects = (PFNGLRECTSPROC)load("glRects");
- glad_glRectsv = (PFNGLRECTSVPROC)load("glRectsv");
- glad_glTexCoord1d = (PFNGLTEXCOORD1DPROC)load("glTexCoord1d");
- glad_glTexCoord1dv = (PFNGLTEXCOORD1DVPROC)load("glTexCoord1dv");
- glad_glTexCoord1f = (PFNGLTEXCOORD1FPROC)load("glTexCoord1f");
- glad_glTexCoord1fv = (PFNGLTEXCOORD1FVPROC)load("glTexCoord1fv");
- glad_glTexCoord1i = (PFNGLTEXCOORD1IPROC)load("glTexCoord1i");
- glad_glTexCoord1iv = (PFNGLTEXCOORD1IVPROC)load("glTexCoord1iv");
- glad_glTexCoord1s = (PFNGLTEXCOORD1SPROC)load("glTexCoord1s");
- glad_glTexCoord1sv = (PFNGLTEXCOORD1SVPROC)load("glTexCoord1sv");
- glad_glTexCoord2d = (PFNGLTEXCOORD2DPROC)load("glTexCoord2d");
- glad_glTexCoord2dv = (PFNGLTEXCOORD2DVPROC)load("glTexCoord2dv");
- glad_glTexCoord2f = (PFNGLTEXCOORD2FPROC)load("glTexCoord2f");
- glad_glTexCoord2fv = (PFNGLTEXCOORD2FVPROC)load("glTexCoord2fv");
- glad_glTexCoord2i = (PFNGLTEXCOORD2IPROC)load("glTexCoord2i");
- glad_glTexCoord2iv = (PFNGLTEXCOORD2IVPROC)load("glTexCoord2iv");
- glad_glTexCoord2s = (PFNGLTEXCOORD2SPROC)load("glTexCoord2s");
- glad_glTexCoord2sv = (PFNGLTEXCOORD2SVPROC)load("glTexCoord2sv");
- glad_glTexCoord3d = (PFNGLTEXCOORD3DPROC)load("glTexCoord3d");
- glad_glTexCoord3dv = (PFNGLTEXCOORD3DVPROC)load("glTexCoord3dv");
- glad_glTexCoord3f = (PFNGLTEXCOORD3FPROC)load("glTexCoord3f");
- glad_glTexCoord3fv = (PFNGLTEXCOORD3FVPROC)load("glTexCoord3fv");
- glad_glTexCoord3i = (PFNGLTEXCOORD3IPROC)load("glTexCoord3i");
- glad_glTexCoord3iv = (PFNGLTEXCOORD3IVPROC)load("glTexCoord3iv");
- glad_glTexCoord3s = (PFNGLTEXCOORD3SPROC)load("glTexCoord3s");
- glad_glTexCoord3sv = (PFNGLTEXCOORD3SVPROC)load("glTexCoord3sv");
- glad_glTexCoord4d = (PFNGLTEXCOORD4DPROC)load("glTexCoord4d");
- glad_glTexCoord4dv = (PFNGLTEXCOORD4DVPROC)load("glTexCoord4dv");
- glad_glTexCoord4f = (PFNGLTEXCOORD4FPROC)load("glTexCoord4f");
- glad_glTexCoord4fv = (PFNGLTEXCOORD4FVPROC)load("glTexCoord4fv");
- glad_glTexCoord4i = (PFNGLTEXCOORD4IPROC)load("glTexCoord4i");
- glad_glTexCoord4iv = (PFNGLTEXCOORD4IVPROC)load("glTexCoord4iv");
- glad_glTexCoord4s = (PFNGLTEXCOORD4SPROC)load("glTexCoord4s");
- glad_glTexCoord4sv = (PFNGLTEXCOORD4SVPROC)load("glTexCoord4sv");
- glad_glVertex2d = (PFNGLVERTEX2DPROC)load("glVertex2d");
- glad_glVertex2dv = (PFNGLVERTEX2DVPROC)load("glVertex2dv");
- glad_glVertex2f = (PFNGLVERTEX2FPROC)load("glVertex2f");
- glad_glVertex2fv = (PFNGLVERTEX2FVPROC)load("glVertex2fv");
- glad_glVertex2i = (PFNGLVERTEX2IPROC)load("glVertex2i");
- glad_glVertex2iv = (PFNGLVERTEX2IVPROC)load("glVertex2iv");
- glad_glVertex2s = (PFNGLVERTEX2SPROC)load("glVertex2s");
- glad_glVertex2sv = (PFNGLVERTEX2SVPROC)load("glVertex2sv");
- glad_glVertex3d = (PFNGLVERTEX3DPROC)load("glVertex3d");
- glad_glVertex3dv = (PFNGLVERTEX3DVPROC)load("glVertex3dv");
- glad_glVertex3f = (PFNGLVERTEX3FPROC)load("glVertex3f");
- glad_glVertex3fv = (PFNGLVERTEX3FVPROC)load("glVertex3fv");
- glad_glVertex3i = (PFNGLVERTEX3IPROC)load("glVertex3i");
- glad_glVertex3iv = (PFNGLVERTEX3IVPROC)load("glVertex3iv");
- glad_glVertex3s = (PFNGLVERTEX3SPROC)load("glVertex3s");
- glad_glVertex3sv = (PFNGLVERTEX3SVPROC)load("glVertex3sv");
- glad_glVertex4d = (PFNGLVERTEX4DPROC)load("glVertex4d");
- glad_glVertex4dv = (PFNGLVERTEX4DVPROC)load("glVertex4dv");
- glad_glVertex4f = (PFNGLVERTEX4FPROC)load("glVertex4f");
- glad_glVertex4fv = (PFNGLVERTEX4FVPROC)load("glVertex4fv");
- glad_glVertex4i = (PFNGLVERTEX4IPROC)load("glVertex4i");
- glad_glVertex4iv = (PFNGLVERTEX4IVPROC)load("glVertex4iv");
- glad_glVertex4s = (PFNGLVERTEX4SPROC)load("glVertex4s");
- glad_glVertex4sv = (PFNGLVERTEX4SVPROC)load("glVertex4sv");
- glad_glClipPlane = (PFNGLCLIPPLANEPROC)load("glClipPlane");
- glad_glColorMaterial = (PFNGLCOLORMATERIALPROC)load("glColorMaterial");
- glad_glFogf = (PFNGLFOGFPROC)load("glFogf");
- glad_glFogfv = (PFNGLFOGFVPROC)load("glFogfv");
- glad_glFogi = (PFNGLFOGIPROC)load("glFogi");
- glad_glFogiv = (PFNGLFOGIVPROC)load("glFogiv");
- glad_glLightf = (PFNGLLIGHTFPROC)load("glLightf");
- glad_glLightfv = (PFNGLLIGHTFVPROC)load("glLightfv");
- glad_glLighti = (PFNGLLIGHTIPROC)load("glLighti");
- glad_glLightiv = (PFNGLLIGHTIVPROC)load("glLightiv");
- glad_glLightModelf = (PFNGLLIGHTMODELFPROC)load("glLightModelf");
- glad_glLightModelfv = (PFNGLLIGHTMODELFVPROC)load("glLightModelfv");
- glad_glLightModeli = (PFNGLLIGHTMODELIPROC)load("glLightModeli");
- glad_glLightModeliv = (PFNGLLIGHTMODELIVPROC)load("glLightModeliv");
- glad_glLineStipple = (PFNGLLINESTIPPLEPROC)load("glLineStipple");
- glad_glMaterialf = (PFNGLMATERIALFPROC)load("glMaterialf");
- glad_glMaterialfv = (PFNGLMATERIALFVPROC)load("glMaterialfv");
- glad_glMateriali = (PFNGLMATERIALIPROC)load("glMateriali");
- glad_glMaterialiv = (PFNGLMATERIALIVPROC)load("glMaterialiv");
- glad_glPolygonStipple = (PFNGLPOLYGONSTIPPLEPROC)load("glPolygonStipple");
- glad_glShadeModel = (PFNGLSHADEMODELPROC)load("glShadeModel");
- glad_glTexEnvf = (PFNGLTEXENVFPROC)load("glTexEnvf");
- glad_glTexEnvfv = (PFNGLTEXENVFVPROC)load("glTexEnvfv");
- glad_glTexEnvi = (PFNGLTEXENVIPROC)load("glTexEnvi");
- glad_glTexEnviv = (PFNGLTEXENVIVPROC)load("glTexEnviv");
- glad_glTexGend = (PFNGLTEXGENDPROC)load("glTexGend");
- glad_glTexGendv = (PFNGLTEXGENDVPROC)load("glTexGendv");
- glad_glTexGenf = (PFNGLTEXGENFPROC)load("glTexGenf");
- glad_glTexGenfv = (PFNGLTEXGENFVPROC)load("glTexGenfv");
- glad_glTexGeni = (PFNGLTEXGENIPROC)load("glTexGeni");
- glad_glTexGeniv = (PFNGLTEXGENIVPROC)load("glTexGeniv");
- glad_glFeedbackBuffer = (PFNGLFEEDBACKBUFFERPROC)load("glFeedbackBuffer");
- glad_glSelectBuffer = (PFNGLSELECTBUFFERPROC)load("glSelectBuffer");
- glad_glRenderMode = (PFNGLRENDERMODEPROC)load("glRenderMode");
- glad_glInitNames = (PFNGLINITNAMESPROC)load("glInitNames");
- glad_glLoadName = (PFNGLLOADNAMEPROC)load("glLoadName");
- glad_glPassThrough = (PFNGLPASSTHROUGHPROC)load("glPassThrough");
- glad_glPopName = (PFNGLPOPNAMEPROC)load("glPopName");
- glad_glPushName = (PFNGLPUSHNAMEPROC)load("glPushName");
- glad_glClearAccum = (PFNGLCLEARACCUMPROC)load("glClearAccum");
- glad_glClearIndex = (PFNGLCLEARINDEXPROC)load("glClearIndex");
- glad_glIndexMask = (PFNGLINDEXMASKPROC)load("glIndexMask");
- glad_glAccum = (PFNGLACCUMPROC)load("glAccum");
- glad_glPopAttrib = (PFNGLPOPATTRIBPROC)load("glPopAttrib");
- glad_glPushAttrib = (PFNGLPUSHATTRIBPROC)load("glPushAttrib");
- glad_glMap1d = (PFNGLMAP1DPROC)load("glMap1d");
- glad_glMap1f = (PFNGLMAP1FPROC)load("glMap1f");
- glad_glMap2d = (PFNGLMAP2DPROC)load("glMap2d");
- glad_glMap2f = (PFNGLMAP2FPROC)load("glMap2f");
- glad_glMapGrid1d = (PFNGLMAPGRID1DPROC)load("glMapGrid1d");
- glad_glMapGrid1f = (PFNGLMAPGRID1FPROC)load("glMapGrid1f");
- glad_glMapGrid2d = (PFNGLMAPGRID2DPROC)load("glMapGrid2d");
- glad_glMapGrid2f = (PFNGLMAPGRID2FPROC)load("glMapGrid2f");
- glad_glEvalCoord1d = (PFNGLEVALCOORD1DPROC)load("glEvalCoord1d");
- glad_glEvalCoord1dv = (PFNGLEVALCOORD1DVPROC)load("glEvalCoord1dv");
- glad_glEvalCoord1f = (PFNGLEVALCOORD1FPROC)load("glEvalCoord1f");
- glad_glEvalCoord1fv = (PFNGLEVALCOORD1FVPROC)load("glEvalCoord1fv");
- glad_glEvalCoord2d = (PFNGLEVALCOORD2DPROC)load("glEvalCoord2d");
- glad_glEvalCoord2dv = (PFNGLEVALCOORD2DVPROC)load("glEvalCoord2dv");
- glad_glEvalCoord2f = (PFNGLEVALCOORD2FPROC)load("glEvalCoord2f");
- glad_glEvalCoord2fv = (PFNGLEVALCOORD2FVPROC)load("glEvalCoord2fv");
- glad_glEvalMesh1 = (PFNGLEVALMESH1PROC)load("glEvalMesh1");
- glad_glEvalPoint1 = (PFNGLEVALPOINT1PROC)load("glEvalPoint1");
- glad_glEvalMesh2 = (PFNGLEVALMESH2PROC)load("glEvalMesh2");
- glad_glEvalPoint2 = (PFNGLEVALPOINT2PROC)load("glEvalPoint2");
- glad_glAlphaFunc = (PFNGLALPHAFUNCPROC)load("glAlphaFunc");
- glad_glPixelZoom = (PFNGLPIXELZOOMPROC)load("glPixelZoom");
- glad_glPixelTransferf = (PFNGLPIXELTRANSFERFPROC)load("glPixelTransferf");
- glad_glPixelTransferi = (PFNGLPIXELTRANSFERIPROC)load("glPixelTransferi");
- glad_glPixelMapfv = (PFNGLPIXELMAPFVPROC)load("glPixelMapfv");
- glad_glPixelMapuiv = (PFNGLPIXELMAPUIVPROC)load("glPixelMapuiv");
- glad_glPixelMapusv = (PFNGLPIXELMAPUSVPROC)load("glPixelMapusv");
- glad_glCopyPixels = (PFNGLCOPYPIXELSPROC)load("glCopyPixels");
- glad_glDrawPixels = (PFNGLDRAWPIXELSPROC)load("glDrawPixels");
- glad_glGetClipPlane = (PFNGLGETCLIPPLANEPROC)load("glGetClipPlane");
- glad_glGetLightfv = (PFNGLGETLIGHTFVPROC)load("glGetLightfv");
- glad_glGetLightiv = (PFNGLGETLIGHTIVPROC)load("glGetLightiv");
- glad_glGetMapdv = (PFNGLGETMAPDVPROC)load("glGetMapdv");
- glad_glGetMapfv = (PFNGLGETMAPFVPROC)load("glGetMapfv");
- glad_glGetMapiv = (PFNGLGETMAPIVPROC)load("glGetMapiv");
- glad_glGetMaterialfv = (PFNGLGETMATERIALFVPROC)load("glGetMaterialfv");
- glad_glGetMaterialiv = (PFNGLGETMATERIALIVPROC)load("glGetMaterialiv");
- glad_glGetPixelMapfv = (PFNGLGETPIXELMAPFVPROC)load("glGetPixelMapfv");
- glad_glGetPixelMapuiv = (PFNGLGETPIXELMAPUIVPROC)load("glGetPixelMapuiv");
- glad_glGetPixelMapusv = (PFNGLGETPIXELMAPUSVPROC)load("glGetPixelMapusv");
- glad_glGetPolygonStipple = (PFNGLGETPOLYGONSTIPPLEPROC)load("glGetPolygonStipple");
- glad_glGetTexEnvfv = (PFNGLGETTEXENVFVPROC)load("glGetTexEnvfv");
- glad_glGetTexEnviv = (PFNGLGETTEXENVIVPROC)load("glGetTexEnviv");
- glad_glGetTexGendv = (PFNGLGETTEXGENDVPROC)load("glGetTexGendv");
- glad_glGetTexGenfv = (PFNGLGETTEXGENFVPROC)load("glGetTexGenfv");
- glad_glGetTexGeniv = (PFNGLGETTEXGENIVPROC)load("glGetTexGeniv");
- glad_glIsList = (PFNGLISLISTPROC)load("glIsList");
- glad_glFrustum = (PFNGLFRUSTUMPROC)load("glFrustum");
- glad_glLoadIdentity = (PFNGLLOADIDENTITYPROC)load("glLoadIdentity");
- glad_glLoadMatrixf = (PFNGLLOADMATRIXFPROC)load("glLoadMatrixf");
- glad_glLoadMatrixd = (PFNGLLOADMATRIXDPROC)load("glLoadMatrixd");
- glad_glMatrixMode = (PFNGLMATRIXMODEPROC)load("glMatrixMode");
- glad_glMultMatrixf = (PFNGLMULTMATRIXFPROC)load("glMultMatrixf");
- glad_glMultMatrixd = (PFNGLMULTMATRIXDPROC)load("glMultMatrixd");
- glad_glOrtho = (PFNGLORTHOPROC)load("glOrtho");
- glad_glPopMatrix = (PFNGLPOPMATRIXPROC)load("glPopMatrix");
- glad_glPushMatrix = (PFNGLPUSHMATRIXPROC)load("glPushMatrix");
- glad_glRotated = (PFNGLROTATEDPROC)load("glRotated");
- glad_glRotatef = (PFNGLROTATEFPROC)load("glRotatef");
- glad_glScaled = (PFNGLSCALEDPROC)load("glScaled");
- glad_glScalef = (PFNGLSCALEFPROC)load("glScalef");
- glad_glTranslated = (PFNGLTRANSLATEDPROC)load("glTranslated");
- glad_glTranslatef = (PFNGLTRANSLATEFPROC)load("glTranslatef");
-}
-static void load_GL_VERSION_1_1(GLADloadproc load) {
- if(!GLAD_GL_VERSION_1_1) return;
- glad_glDrawArrays = (PFNGLDRAWARRAYSPROC)load("glDrawArrays");
- glad_glDrawElements = (PFNGLDRAWELEMENTSPROC)load("glDrawElements");
- glad_glGetPointerv = (PFNGLGETPOINTERVPROC)load("glGetPointerv");
- glad_glPolygonOffset = (PFNGLPOLYGONOFFSETPROC)load("glPolygonOffset");
- glad_glCopyTexImage1D = (PFNGLCOPYTEXIMAGE1DPROC)load("glCopyTexImage1D");
- glad_glCopyTexImage2D = (PFNGLCOPYTEXIMAGE2DPROC)load("glCopyTexImage2D");
- glad_glCopyTexSubImage1D = (PFNGLCOPYTEXSUBIMAGE1DPROC)load("glCopyTexSubImage1D");
- glad_glCopyTexSubImage2D = (PFNGLCOPYTEXSUBIMAGE2DPROC)load("glCopyTexSubImage2D");
- glad_glTexSubImage1D = (PFNGLTEXSUBIMAGE1DPROC)load("glTexSubImage1D");
- glad_glTexSubImage2D = (PFNGLTEXSUBIMAGE2DPROC)load("glTexSubImage2D");
- glad_glBindTexture = (PFNGLBINDTEXTUREPROC)load("glBindTexture");
- glad_glDeleteTextures = (PFNGLDELETETEXTURESPROC)load("glDeleteTextures");
- glad_glGenTextures = (PFNGLGENTEXTURESPROC)load("glGenTextures");
- glad_glIsTexture = (PFNGLISTEXTUREPROC)load("glIsTexture");
- glad_glArrayElement = (PFNGLARRAYELEMENTPROC)load("glArrayElement");
- glad_glColorPointer = (PFNGLCOLORPOINTERPROC)load("glColorPointer");
- glad_glDisableClientState = (PFNGLDISABLECLIENTSTATEPROC)load("glDisableClientState");
- glad_glEdgeFlagPointer = (PFNGLEDGEFLAGPOINTERPROC)load("glEdgeFlagPointer");
- glad_glEnableClientState = (PFNGLENABLECLIENTSTATEPROC)load("glEnableClientState");
- glad_glIndexPointer = (PFNGLINDEXPOINTERPROC)load("glIndexPointer");
- glad_glInterleavedArrays = (PFNGLINTERLEAVEDARRAYSPROC)load("glInterleavedArrays");
- glad_glNormalPointer = (PFNGLNORMALPOINTERPROC)load("glNormalPointer");
- glad_glTexCoordPointer = (PFNGLTEXCOORDPOINTERPROC)load("glTexCoordPointer");
- glad_glVertexPointer = (PFNGLVERTEXPOINTERPROC)load("glVertexPointer");
- glad_glAreTexturesResident = (PFNGLARETEXTURESRESIDENTPROC)load("glAreTexturesResident");
- glad_glPrioritizeTextures = (PFNGLPRIORITIZETEXTURESPROC)load("glPrioritizeTextures");
- glad_glIndexub = (PFNGLINDEXUBPROC)load("glIndexub");
- glad_glIndexubv = (PFNGLINDEXUBVPROC)load("glIndexubv");
- glad_glPopClientAttrib = (PFNGLPOPCLIENTATTRIBPROC)load("glPopClientAttrib");
- glad_glPushClientAttrib = (PFNGLPUSHCLIENTATTRIBPROC)load("glPushClientAttrib");
-}
-static void load_GL_VERSION_1_2(GLADloadproc load) {
- if(!GLAD_GL_VERSION_1_2) return;
- glad_glDrawRangeElements = (PFNGLDRAWRANGEELEMENTSPROC)load("glDrawRangeElements");
- glad_glTexImage3D = (PFNGLTEXIMAGE3DPROC)load("glTexImage3D");
- glad_glTexSubImage3D = (PFNGLTEXSUBIMAGE3DPROC)load("glTexSubImage3D");
- glad_glCopyTexSubImage3D = (PFNGLCOPYTEXSUBIMAGE3DPROC)load("glCopyTexSubImage3D");
-}
-static void load_GL_VERSION_1_3(GLADloadproc load) {
- if(!GLAD_GL_VERSION_1_3) return;
- glad_glActiveTexture = (PFNGLACTIVETEXTUREPROC)load("glActiveTexture");
- glad_glSampleCoverage = (PFNGLSAMPLECOVERAGEPROC)load("glSampleCoverage");
- glad_glCompressedTexImage3D = (PFNGLCOMPRESSEDTEXIMAGE3DPROC)load("glCompressedTexImage3D");
- glad_glCompressedTexImage2D = (PFNGLCOMPRESSEDTEXIMAGE2DPROC)load("glCompressedTexImage2D");
- glad_glCompressedTexImage1D = (PFNGLCOMPRESSEDTEXIMAGE1DPROC)load("glCompressedTexImage1D");
- glad_glCompressedTexSubImage3D = (PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC)load("glCompressedTexSubImage3D");
- glad_glCompressedTexSubImage2D = (PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC)load("glCompressedTexSubImage2D");
- glad_glCompressedTexSubImage1D = (PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC)load("glCompressedTexSubImage1D");
- glad_glGetCompressedTexImage = (PFNGLGETCOMPRESSEDTEXIMAGEPROC)load("glGetCompressedTexImage");
- glad_glClientActiveTexture = (PFNGLCLIENTACTIVETEXTUREPROC)load("glClientActiveTexture");
- glad_glMultiTexCoord1d = (PFNGLMULTITEXCOORD1DPROC)load("glMultiTexCoord1d");
- glad_glMultiTexCoord1dv = (PFNGLMULTITEXCOORD1DVPROC)load("glMultiTexCoord1dv");
- glad_glMultiTexCoord1f = (PFNGLMULTITEXCOORD1FPROC)load("glMultiTexCoord1f");
- glad_glMultiTexCoord1fv = (PFNGLMULTITEXCOORD1FVPROC)load("glMultiTexCoord1fv");
- glad_glMultiTexCoord1i = (PFNGLMULTITEXCOORD1IPROC)load("glMultiTexCoord1i");
- glad_glMultiTexCoord1iv = (PFNGLMULTITEXCOORD1IVPROC)load("glMultiTexCoord1iv");
- glad_glMultiTexCoord1s = (PFNGLMULTITEXCOORD1SPROC)load("glMultiTexCoord1s");
- glad_glMultiTexCoord1sv = (PFNGLMULTITEXCOORD1SVPROC)load("glMultiTexCoord1sv");
- glad_glMultiTexCoord2d = (PFNGLMULTITEXCOORD2DPROC)load("glMultiTexCoord2d");
- glad_glMultiTexCoord2dv = (PFNGLMULTITEXCOORD2DVPROC)load("glMultiTexCoord2dv");
- glad_glMultiTexCoord2f = (PFNGLMULTITEXCOORD2FPROC)load("glMultiTexCoord2f");
- glad_glMultiTexCoord2fv = (PFNGLMULTITEXCOORD2FVPROC)load("glMultiTexCoord2fv");
- glad_glMultiTexCoord2i = (PFNGLMULTITEXCOORD2IPROC)load("glMultiTexCoord2i");
- glad_glMultiTexCoord2iv = (PFNGLMULTITEXCOORD2IVPROC)load("glMultiTexCoord2iv");
- glad_glMultiTexCoord2s = (PFNGLMULTITEXCOORD2SPROC)load("glMultiTexCoord2s");
- glad_glMultiTexCoord2sv = (PFNGLMULTITEXCOORD2SVPROC)load("glMultiTexCoord2sv");
- glad_glMultiTexCoord3d = (PFNGLMULTITEXCOORD3DPROC)load("glMultiTexCoord3d");
- glad_glMultiTexCoord3dv = (PFNGLMULTITEXCOORD3DVPROC)load("glMultiTexCoord3dv");
- glad_glMultiTexCoord3f = (PFNGLMULTITEXCOORD3FPROC)load("glMultiTexCoord3f");
- glad_glMultiTexCoord3fv = (PFNGLMULTITEXCOORD3FVPROC)load("glMultiTexCoord3fv");
- glad_glMultiTexCoord3i = (PFNGLMULTITEXCOORD3IPROC)load("glMultiTexCoord3i");
- glad_glMultiTexCoord3iv = (PFNGLMULTITEXCOORD3IVPROC)load("glMultiTexCoord3iv");
- glad_glMultiTexCoord3s = (PFNGLMULTITEXCOORD3SPROC)load("glMultiTexCoord3s");
- glad_glMultiTexCoord3sv = (PFNGLMULTITEXCOORD3SVPROC)load("glMultiTexCoord3sv");
- glad_glMultiTexCoord4d = (PFNGLMULTITEXCOORD4DPROC)load("glMultiTexCoord4d");
- glad_glMultiTexCoord4dv = (PFNGLMULTITEXCOORD4DVPROC)load("glMultiTexCoord4dv");
- glad_glMultiTexCoord4f = (PFNGLMULTITEXCOORD4FPROC)load("glMultiTexCoord4f");
- glad_glMultiTexCoord4fv = (PFNGLMULTITEXCOORD4FVPROC)load("glMultiTexCoord4fv");
- glad_glMultiTexCoord4i = (PFNGLMULTITEXCOORD4IPROC)load("glMultiTexCoord4i");
- glad_glMultiTexCoord4iv = (PFNGLMULTITEXCOORD4IVPROC)load("glMultiTexCoord4iv");
- glad_glMultiTexCoord4s = (PFNGLMULTITEXCOORD4SPROC)load("glMultiTexCoord4s");
- glad_glMultiTexCoord4sv = (PFNGLMULTITEXCOORD4SVPROC)load("glMultiTexCoord4sv");
- glad_glLoadTransposeMatrixf = (PFNGLLOADTRANSPOSEMATRIXFPROC)load("glLoadTransposeMatrixf");
- glad_glLoadTransposeMatrixd = (PFNGLLOADTRANSPOSEMATRIXDPROC)load("glLoadTransposeMatrixd");
- glad_glMultTransposeMatrixf = (PFNGLMULTTRANSPOSEMATRIXFPROC)load("glMultTransposeMatrixf");
- glad_glMultTransposeMatrixd = (PFNGLMULTTRANSPOSEMATRIXDPROC)load("glMultTransposeMatrixd");
-}
-static void load_GL_VERSION_1_4(GLADloadproc load) {
- if(!GLAD_GL_VERSION_1_4) return;
- glad_glBlendFuncSeparate = (PFNGLBLENDFUNCSEPARATEPROC)load("glBlendFuncSeparate");
- glad_glMultiDrawArrays = (PFNGLMULTIDRAWARRAYSPROC)load("glMultiDrawArrays");
- glad_glMultiDrawElements = (PFNGLMULTIDRAWELEMENTSPROC)load("glMultiDrawElements");
- glad_glPointParameterf = (PFNGLPOINTPARAMETERFPROC)load("glPointParameterf");
- glad_glPointParameterfv = (PFNGLPOINTPARAMETERFVPROC)load("glPointParameterfv");
- glad_glPointParameteri = (PFNGLPOINTPARAMETERIPROC)load("glPointParameteri");
- glad_glPointParameteriv = (PFNGLPOINTPARAMETERIVPROC)load("glPointParameteriv");
- glad_glFogCoordf = (PFNGLFOGCOORDFPROC)load("glFogCoordf");
- glad_glFogCoordfv = (PFNGLFOGCOORDFVPROC)load("glFogCoordfv");
- glad_glFogCoordd = (PFNGLFOGCOORDDPROC)load("glFogCoordd");
- glad_glFogCoorddv = (PFNGLFOGCOORDDVPROC)load("glFogCoorddv");
- glad_glFogCoordPointer = (PFNGLFOGCOORDPOINTERPROC)load("glFogCoordPointer");
- glad_glSecondaryColor3b = (PFNGLSECONDARYCOLOR3BPROC)load("glSecondaryColor3b");
- glad_glSecondaryColor3bv = (PFNGLSECONDARYCOLOR3BVPROC)load("glSecondaryColor3bv");
- glad_glSecondaryColor3d = (PFNGLSECONDARYCOLOR3DPROC)load("glSecondaryColor3d");
- glad_glSecondaryColor3dv = (PFNGLSECONDARYCOLOR3DVPROC)load("glSecondaryColor3dv");
- glad_glSecondaryColor3f = (PFNGLSECONDARYCOLOR3FPROC)load("glSecondaryColor3f");
- glad_glSecondaryColor3fv = (PFNGLSECONDARYCOLOR3FVPROC)load("glSecondaryColor3fv");
- glad_glSecondaryColor3i = (PFNGLSECONDARYCOLOR3IPROC)load("glSecondaryColor3i");
- glad_glSecondaryColor3iv = (PFNGLSECONDARYCOLOR3IVPROC)load("glSecondaryColor3iv");
- glad_glSecondaryColor3s = (PFNGLSECONDARYCOLOR3SPROC)load("glSecondaryColor3s");
- glad_glSecondaryColor3sv = (PFNGLSECONDARYCOLOR3SVPROC)load("glSecondaryColor3sv");
- glad_glSecondaryColor3ub = (PFNGLSECONDARYCOLOR3UBPROC)load("glSecondaryColor3ub");
- glad_glSecondaryColor3ubv = (PFNGLSECONDARYCOLOR3UBVPROC)load("glSecondaryColor3ubv");
- glad_glSecondaryColor3ui = (PFNGLSECONDARYCOLOR3UIPROC)load("glSecondaryColor3ui");
- glad_glSecondaryColor3uiv = (PFNGLSECONDARYCOLOR3UIVPROC)load("glSecondaryColor3uiv");
- glad_glSecondaryColor3us = (PFNGLSECONDARYCOLOR3USPROC)load("glSecondaryColor3us");
- glad_glSecondaryColor3usv = (PFNGLSECONDARYCOLOR3USVPROC)load("glSecondaryColor3usv");
- glad_glSecondaryColorPointer = (PFNGLSECONDARYCOLORPOINTERPROC)load("glSecondaryColorPointer");
- glad_glWindowPos2d = (PFNGLWINDOWPOS2DPROC)load("glWindowPos2d");
- glad_glWindowPos2dv = (PFNGLWINDOWPOS2DVPROC)load("glWindowPos2dv");
- glad_glWindowPos2f = (PFNGLWINDOWPOS2FPROC)load("glWindowPos2f");
- glad_glWindowPos2fv = (PFNGLWINDOWPOS2FVPROC)load("glWindowPos2fv");
- glad_glWindowPos2i = (PFNGLWINDOWPOS2IPROC)load("glWindowPos2i");
- glad_glWindowPos2iv = (PFNGLWINDOWPOS2IVPROC)load("glWindowPos2iv");
- glad_glWindowPos2s = (PFNGLWINDOWPOS2SPROC)load("glWindowPos2s");
- glad_glWindowPos2sv = (PFNGLWINDOWPOS2SVPROC)load("glWindowPos2sv");
- glad_glWindowPos3d = (PFNGLWINDOWPOS3DPROC)load("glWindowPos3d");
- glad_glWindowPos3dv = (PFNGLWINDOWPOS3DVPROC)load("glWindowPos3dv");
- glad_glWindowPos3f = (PFNGLWINDOWPOS3FPROC)load("glWindowPos3f");
- glad_glWindowPos3fv = (PFNGLWINDOWPOS3FVPROC)load("glWindowPos3fv");
- glad_glWindowPos3i = (PFNGLWINDOWPOS3IPROC)load("glWindowPos3i");
- glad_glWindowPos3iv = (PFNGLWINDOWPOS3IVPROC)load("glWindowPos3iv");
- glad_glWindowPos3s = (PFNGLWINDOWPOS3SPROC)load("glWindowPos3s");
- glad_glWindowPos3sv = (PFNGLWINDOWPOS3SVPROC)load("glWindowPos3sv");
- glad_glBlendColor = (PFNGLBLENDCOLORPROC)load("glBlendColor");
- glad_glBlendEquation = (PFNGLBLENDEQUATIONPROC)load("glBlendEquation");
-}
-static void load_GL_VERSION_1_5(GLADloadproc load) {
- if(!GLAD_GL_VERSION_1_5) return;
- glad_glGenQueries = (PFNGLGENQUERIESPROC)load("glGenQueries");
- glad_glDeleteQueries = (PFNGLDELETEQUERIESPROC)load("glDeleteQueries");
- glad_glIsQuery = (PFNGLISQUERYPROC)load("glIsQuery");
- glad_glBeginQuery = (PFNGLBEGINQUERYPROC)load("glBeginQuery");
- glad_glEndQuery = (PFNGLENDQUERYPROC)load("glEndQuery");
- glad_glGetQueryiv = (PFNGLGETQUERYIVPROC)load("glGetQueryiv");
- glad_glGetQueryObjectiv = (PFNGLGETQUERYOBJECTIVPROC)load("glGetQueryObjectiv");
- glad_glGetQueryObjectuiv = (PFNGLGETQUERYOBJECTUIVPROC)load("glGetQueryObjectuiv");
- glad_glBindBuffer = (PFNGLBINDBUFFERPROC)load("glBindBuffer");
- glad_glDeleteBuffers = (PFNGLDELETEBUFFERSPROC)load("glDeleteBuffers");
- glad_glGenBuffers = (PFNGLGENBUFFERSPROC)load("glGenBuffers");
- glad_glIsBuffer = (PFNGLISBUFFERPROC)load("glIsBuffer");
- glad_glBufferData = (PFNGLBUFFERDATAPROC)load("glBufferData");
- glad_glBufferSubData = (PFNGLBUFFERSUBDATAPROC)load("glBufferSubData");
- glad_glGetBufferSubData = (PFNGLGETBUFFERSUBDATAPROC)load("glGetBufferSubData");
- glad_glMapBuffer = (PFNGLMAPBUFFERPROC)load("glMapBuffer");
- glad_glUnmapBuffer = (PFNGLUNMAPBUFFERPROC)load("glUnmapBuffer");
- glad_glGetBufferParameteriv = (PFNGLGETBUFFERPARAMETERIVPROC)load("glGetBufferParameteriv");
- glad_glGetBufferPointerv = (PFNGLGETBUFFERPOINTERVPROC)load("glGetBufferPointerv");
-}
-static void load_GL_VERSION_2_0(GLADloadproc load) {
- if(!GLAD_GL_VERSION_2_0) return;
- glad_glBlendEquationSeparate = (PFNGLBLENDEQUATIONSEPARATEPROC)load("glBlendEquationSeparate");
- glad_glDrawBuffers = (PFNGLDRAWBUFFERSPROC)load("glDrawBuffers");
- glad_glStencilOpSeparate = (PFNGLSTENCILOPSEPARATEPROC)load("glStencilOpSeparate");
- glad_glStencilFuncSeparate = (PFNGLSTENCILFUNCSEPARATEPROC)load("glStencilFuncSeparate");
- glad_glStencilMaskSeparate = (PFNGLSTENCILMASKSEPARATEPROC)load("glStencilMaskSeparate");
- glad_glAttachShader = (PFNGLATTACHSHADERPROC)load("glAttachShader");
- glad_glBindAttribLocation = (PFNGLBINDATTRIBLOCATIONPROC)load("glBindAttribLocation");
- glad_glCompileShader = (PFNGLCOMPILESHADERPROC)load("glCompileShader");
- glad_glCreateProgram = (PFNGLCREATEPROGRAMPROC)load("glCreateProgram");
- glad_glCreateShader = (PFNGLCREATESHADERPROC)load("glCreateShader");
- glad_glDeleteProgram = (PFNGLDELETEPROGRAMPROC)load("glDeleteProgram");
- glad_glDeleteShader = (PFNGLDELETESHADERPROC)load("glDeleteShader");
- glad_glDetachShader = (PFNGLDETACHSHADERPROC)load("glDetachShader");
- glad_glDisableVertexAttribArray = (PFNGLDISABLEVERTEXATTRIBARRAYPROC)load("glDisableVertexAttribArray");
- glad_glEnableVertexAttribArray = (PFNGLENABLEVERTEXATTRIBARRAYPROC)load("glEnableVertexAttribArray");
- glad_glGetActiveAttrib = (PFNGLGETACTIVEATTRIBPROC)load("glGetActiveAttrib");
- glad_glGetActiveUniform = (PFNGLGETACTIVEUNIFORMPROC)load("glGetActiveUniform");
- glad_glGetAttachedShaders = (PFNGLGETATTACHEDSHADERSPROC)load("glGetAttachedShaders");
- glad_glGetAttribLocation = (PFNGLGETATTRIBLOCATIONPROC)load("glGetAttribLocation");
- glad_glGetProgramiv = (PFNGLGETPROGRAMIVPROC)load("glGetProgramiv");
- glad_glGetProgramInfoLog = (PFNGLGETPROGRAMINFOLOGPROC)load("glGetProgramInfoLog");
- glad_glGetShaderiv = (PFNGLGETSHADERIVPROC)load("glGetShaderiv");
- glad_glGetShaderInfoLog = (PFNGLGETSHADERINFOLOGPROC)load("glGetShaderInfoLog");
- glad_glGetShaderSource = (PFNGLGETSHADERSOURCEPROC)load("glGetShaderSource");
- glad_glGetUniformLocation = (PFNGLGETUNIFORMLOCATIONPROC)load("glGetUniformLocation");
- glad_glGetUniformfv = (PFNGLGETUNIFORMFVPROC)load("glGetUniformfv");
- glad_glGetUniformiv = (PFNGLGETUNIFORMIVPROC)load("glGetUniformiv");
- glad_glGetVertexAttribdv = (PFNGLGETVERTEXATTRIBDVPROC)load("glGetVertexAttribdv");
- glad_glGetVertexAttribfv = (PFNGLGETVERTEXATTRIBFVPROC)load("glGetVertexAttribfv");
- glad_glGetVertexAttribiv = (PFNGLGETVERTEXATTRIBIVPROC)load("glGetVertexAttribiv");
- glad_glGetVertexAttribPointerv = (PFNGLGETVERTEXATTRIBPOINTERVPROC)load("glGetVertexAttribPointerv");
- glad_glIsProgram = (PFNGLISPROGRAMPROC)load("glIsProgram");
- glad_glIsShader = (PFNGLISSHADERPROC)load("glIsShader");
- glad_glLinkProgram = (PFNGLLINKPROGRAMPROC)load("glLinkProgram");
- glad_glShaderSource = (PFNGLSHADERSOURCEPROC)load("glShaderSource");
- glad_glUseProgram = (PFNGLUSEPROGRAMPROC)load("glUseProgram");
- glad_glUniform1f = (PFNGLUNIFORM1FPROC)load("glUniform1f");
- glad_glUniform2f = (PFNGLUNIFORM2FPROC)load("glUniform2f");
- glad_glUniform3f = (PFNGLUNIFORM3FPROC)load("glUniform3f");
- glad_glUniform4f = (PFNGLUNIFORM4FPROC)load("glUniform4f");
- glad_glUniform1i = (PFNGLUNIFORM1IPROC)load("glUniform1i");
- glad_glUniform2i = (PFNGLUNIFORM2IPROC)load("glUniform2i");
- glad_glUniform3i = (PFNGLUNIFORM3IPROC)load("glUniform3i");
- glad_glUniform4i = (PFNGLUNIFORM4IPROC)load("glUniform4i");
- glad_glUniform1fv = (PFNGLUNIFORM1FVPROC)load("glUniform1fv");
- glad_glUniform2fv = (PFNGLUNIFORM2FVPROC)load("glUniform2fv");
- glad_glUniform3fv = (PFNGLUNIFORM3FVPROC)load("glUniform3fv");
- glad_glUniform4fv = (PFNGLUNIFORM4FVPROC)load("glUniform4fv");
- glad_glUniform1iv = (PFNGLUNIFORM1IVPROC)load("glUniform1iv");
- glad_glUniform2iv = (PFNGLUNIFORM2IVPROC)load("glUniform2iv");
- glad_glUniform3iv = (PFNGLUNIFORM3IVPROC)load("glUniform3iv");
- glad_glUniform4iv = (PFNGLUNIFORM4IVPROC)load("glUniform4iv");
- glad_glUniformMatrix2fv = (PFNGLUNIFORMMATRIX2FVPROC)load("glUniformMatrix2fv");
- glad_glUniformMatrix3fv = (PFNGLUNIFORMMATRIX3FVPROC)load("glUniformMatrix3fv");
- glad_glUniformMatrix4fv = (PFNGLUNIFORMMATRIX4FVPROC)load("glUniformMatrix4fv");
- glad_glValidateProgram = (PFNGLVALIDATEPROGRAMPROC)load("glValidateProgram");
- glad_glVertexAttrib1d = (PFNGLVERTEXATTRIB1DPROC)load("glVertexAttrib1d");
- glad_glVertexAttrib1dv = (PFNGLVERTEXATTRIB1DVPROC)load("glVertexAttrib1dv");
- glad_glVertexAttrib1f = (PFNGLVERTEXATTRIB1FPROC)load("glVertexAttrib1f");
- glad_glVertexAttrib1fv = (PFNGLVERTEXATTRIB1FVPROC)load("glVertexAttrib1fv");
- glad_glVertexAttrib1s = (PFNGLVERTEXATTRIB1SPROC)load("glVertexAttrib1s");
- glad_glVertexAttrib1sv = (PFNGLVERTEXATTRIB1SVPROC)load("glVertexAttrib1sv");
- glad_glVertexAttrib2d = (PFNGLVERTEXATTRIB2DPROC)load("glVertexAttrib2d");
- glad_glVertexAttrib2dv = (PFNGLVERTEXATTRIB2DVPROC)load("glVertexAttrib2dv");
- glad_glVertexAttrib2f = (PFNGLVERTEXATTRIB2FPROC)load("glVertexAttrib2f");
- glad_glVertexAttrib2fv = (PFNGLVERTEXATTRIB2FVPROC)load("glVertexAttrib2fv");
- glad_glVertexAttrib2s = (PFNGLVERTEXATTRIB2SPROC)load("glVertexAttrib2s");
- glad_glVertexAttrib2sv = (PFNGLVERTEXATTRIB2SVPROC)load("glVertexAttrib2sv");
- glad_glVertexAttrib3d = (PFNGLVERTEXATTRIB3DPROC)load("glVertexAttrib3d");
- glad_glVertexAttrib3dv = (PFNGLVERTEXATTRIB3DVPROC)load("glVertexAttrib3dv");
- glad_glVertexAttrib3f = (PFNGLVERTEXATTRIB3FPROC)load("glVertexAttrib3f");
- glad_glVertexAttrib3fv = (PFNGLVERTEXATTRIB3FVPROC)load("glVertexAttrib3fv");
- glad_glVertexAttrib3s = (PFNGLVERTEXATTRIB3SPROC)load("glVertexAttrib3s");
- glad_glVertexAttrib3sv = (PFNGLVERTEXATTRIB3SVPROC)load("glVertexAttrib3sv");
- glad_glVertexAttrib4Nbv = (PFNGLVERTEXATTRIB4NBVPROC)load("glVertexAttrib4Nbv");
- glad_glVertexAttrib4Niv = (PFNGLVERTEXATTRIB4NIVPROC)load("glVertexAttrib4Niv");
- glad_glVertexAttrib4Nsv = (PFNGLVERTEXATTRIB4NSVPROC)load("glVertexAttrib4Nsv");
- glad_glVertexAttrib4Nub = (PFNGLVERTEXATTRIB4NUBPROC)load("glVertexAttrib4Nub");
- glad_glVertexAttrib4Nubv = (PFNGLVERTEXATTRIB4NUBVPROC)load("glVertexAttrib4Nubv");
- glad_glVertexAttrib4Nuiv = (PFNGLVERTEXATTRIB4NUIVPROC)load("glVertexAttrib4Nuiv");
- glad_glVertexAttrib4Nusv = (PFNGLVERTEXATTRIB4NUSVPROC)load("glVertexAttrib4Nusv");
- glad_glVertexAttrib4bv = (PFNGLVERTEXATTRIB4BVPROC)load("glVertexAttrib4bv");
- glad_glVertexAttrib4d = (PFNGLVERTEXATTRIB4DPROC)load("glVertexAttrib4d");
- glad_glVertexAttrib4dv = (PFNGLVERTEXATTRIB4DVPROC)load("glVertexAttrib4dv");
- glad_glVertexAttrib4f = (PFNGLVERTEXATTRIB4FPROC)load("glVertexAttrib4f");
- glad_glVertexAttrib4fv = (PFNGLVERTEXATTRIB4FVPROC)load("glVertexAttrib4fv");
- glad_glVertexAttrib4iv = (PFNGLVERTEXATTRIB4IVPROC)load("glVertexAttrib4iv");
- glad_glVertexAttrib4s = (PFNGLVERTEXATTRIB4SPROC)load("glVertexAttrib4s");
- glad_glVertexAttrib4sv = (PFNGLVERTEXATTRIB4SVPROC)load("glVertexAttrib4sv");
- glad_glVertexAttrib4ubv = (PFNGLVERTEXATTRIB4UBVPROC)load("glVertexAttrib4ubv");
- glad_glVertexAttrib4uiv = (PFNGLVERTEXATTRIB4UIVPROC)load("glVertexAttrib4uiv");
- glad_glVertexAttrib4usv = (PFNGLVERTEXATTRIB4USVPROC)load("glVertexAttrib4usv");
- glad_glVertexAttribPointer = (PFNGLVERTEXATTRIBPOINTERPROC)load("glVertexAttribPointer");
-}
-static void load_GL_VERSION_2_1(GLADloadproc load) {
- if(!GLAD_GL_VERSION_2_1) return;
- glad_glUniformMatrix2x3fv = (PFNGLUNIFORMMATRIX2X3FVPROC)load("glUniformMatrix2x3fv");
- glad_glUniformMatrix3x2fv = (PFNGLUNIFORMMATRIX3X2FVPROC)load("glUniformMatrix3x2fv");
- glad_glUniformMatrix2x4fv = (PFNGLUNIFORMMATRIX2X4FVPROC)load("glUniformMatrix2x4fv");
- glad_glUniformMatrix4x2fv = (PFNGLUNIFORMMATRIX4X2FVPROC)load("glUniformMatrix4x2fv");
- glad_glUniformMatrix3x4fv = (PFNGLUNIFORMMATRIX3X4FVPROC)load("glUniformMatrix3x4fv");
- glad_glUniformMatrix4x3fv = (PFNGLUNIFORMMATRIX4X3FVPROC)load("glUniformMatrix4x3fv");
-}
-static void load_GL_VERSION_3_0(GLADloadproc load) {
- if(!GLAD_GL_VERSION_3_0) return;
- glad_glColorMaski = (PFNGLCOLORMASKIPROC)load("glColorMaski");
- glad_glGetBooleani_v = (PFNGLGETBOOLEANI_VPROC)load("glGetBooleani_v");
- glad_glGetIntegeri_v = (PFNGLGETINTEGERI_VPROC)load("glGetIntegeri_v");
- glad_glEnablei = (PFNGLENABLEIPROC)load("glEnablei");
- glad_glDisablei = (PFNGLDISABLEIPROC)load("glDisablei");
- glad_glIsEnabledi = (PFNGLISENABLEDIPROC)load("glIsEnabledi");
- glad_glBeginTransformFeedback = (PFNGLBEGINTRANSFORMFEEDBACKPROC)load("glBeginTransformFeedback");
- glad_glEndTransformFeedback = (PFNGLENDTRANSFORMFEEDBACKPROC)load("glEndTransformFeedback");
- glad_glBindBufferRange = (PFNGLBINDBUFFERRANGEPROC)load("glBindBufferRange");
- glad_glBindBufferBase = (PFNGLBINDBUFFERBASEPROC)load("glBindBufferBase");
- glad_glTransformFeedbackVaryings = (PFNGLTRANSFORMFEEDBACKVARYINGSPROC)load("glTransformFeedbackVaryings");
- glad_glGetTransformFeedbackVarying = (PFNGLGETTRANSFORMFEEDBACKVARYINGPROC)load("glGetTransformFeedbackVarying");
- glad_glClampColor = (PFNGLCLAMPCOLORPROC)load("glClampColor");
- glad_glBeginConditionalRender = (PFNGLBEGINCONDITIONALRENDERPROC)load("glBeginConditionalRender");
- glad_glEndConditionalRender = (PFNGLENDCONDITIONALRENDERPROC)load("glEndConditionalRender");
- glad_glVertexAttribIPointer = (PFNGLVERTEXATTRIBIPOINTERPROC)load("glVertexAttribIPointer");
- glad_glGetVertexAttribIiv = (PFNGLGETVERTEXATTRIBIIVPROC)load("glGetVertexAttribIiv");
- glad_glGetVertexAttribIuiv = (PFNGLGETVERTEXATTRIBIUIVPROC)load("glGetVertexAttribIuiv");
- glad_glVertexAttribI1i = (PFNGLVERTEXATTRIBI1IPROC)load("glVertexAttribI1i");
- glad_glVertexAttribI2i = (PFNGLVERTEXATTRIBI2IPROC)load("glVertexAttribI2i");
- glad_glVertexAttribI3i = (PFNGLVERTEXATTRIBI3IPROC)load("glVertexAttribI3i");
- glad_glVertexAttribI4i = (PFNGLVERTEXATTRIBI4IPROC)load("glVertexAttribI4i");
- glad_glVertexAttribI1ui = (PFNGLVERTEXATTRIBI1UIPROC)load("glVertexAttribI1ui");
- glad_glVertexAttribI2ui = (PFNGLVERTEXATTRIBI2UIPROC)load("glVertexAttribI2ui");
- glad_glVertexAttribI3ui = (PFNGLVERTEXATTRIBI3UIPROC)load("glVertexAttribI3ui");
- glad_glVertexAttribI4ui = (PFNGLVERTEXATTRIBI4UIPROC)load("glVertexAttribI4ui");
- glad_glVertexAttribI1iv = (PFNGLVERTEXATTRIBI1IVPROC)load("glVertexAttribI1iv");
- glad_glVertexAttribI2iv = (PFNGLVERTEXATTRIBI2IVPROC)load("glVertexAttribI2iv");
- glad_glVertexAttribI3iv = (PFNGLVERTEXATTRIBI3IVPROC)load("glVertexAttribI3iv");
- glad_glVertexAttribI4iv = (PFNGLVERTEXATTRIBI4IVPROC)load("glVertexAttribI4iv");
- glad_glVertexAttribI1uiv = (PFNGLVERTEXATTRIBI1UIVPROC)load("glVertexAttribI1uiv");
- glad_glVertexAttribI2uiv = (PFNGLVERTEXATTRIBI2UIVPROC)load("glVertexAttribI2uiv");
- glad_glVertexAttribI3uiv = (PFNGLVERTEXATTRIBI3UIVPROC)load("glVertexAttribI3uiv");
- glad_glVertexAttribI4uiv = (PFNGLVERTEXATTRIBI4UIVPROC)load("glVertexAttribI4uiv");
- glad_glVertexAttribI4bv = (PFNGLVERTEXATTRIBI4BVPROC)load("glVertexAttribI4bv");
- glad_glVertexAttribI4sv = (PFNGLVERTEXATTRIBI4SVPROC)load("glVertexAttribI4sv");
- glad_glVertexAttribI4ubv = (PFNGLVERTEXATTRIBI4UBVPROC)load("glVertexAttribI4ubv");
- glad_glVertexAttribI4usv = (PFNGLVERTEXATTRIBI4USVPROC)load("glVertexAttribI4usv");
- glad_glGetUniformuiv = (PFNGLGETUNIFORMUIVPROC)load("glGetUniformuiv");
- glad_glBindFragDataLocation = (PFNGLBINDFRAGDATALOCATIONPROC)load("glBindFragDataLocation");
- glad_glGetFragDataLocation = (PFNGLGETFRAGDATALOCATIONPROC)load("glGetFragDataLocation");
- glad_glUniform1ui = (PFNGLUNIFORM1UIPROC)load("glUniform1ui");
- glad_glUniform2ui = (PFNGLUNIFORM2UIPROC)load("glUniform2ui");
- glad_glUniform3ui = (PFNGLUNIFORM3UIPROC)load("glUniform3ui");
- glad_glUniform4ui = (PFNGLUNIFORM4UIPROC)load("glUniform4ui");
- glad_glUniform1uiv = (PFNGLUNIFORM1UIVPROC)load("glUniform1uiv");
- glad_glUniform2uiv = (PFNGLUNIFORM2UIVPROC)load("glUniform2uiv");
- glad_glUniform3uiv = (PFNGLUNIFORM3UIVPROC)load("glUniform3uiv");
- glad_glUniform4uiv = (PFNGLUNIFORM4UIVPROC)load("glUniform4uiv");
- glad_glTexParameterIiv = (PFNGLTEXPARAMETERIIVPROC)load("glTexParameterIiv");
- glad_glTexParameterIuiv = (PFNGLTEXPARAMETERIUIVPROC)load("glTexParameterIuiv");
- glad_glGetTexParameterIiv = (PFNGLGETTEXPARAMETERIIVPROC)load("glGetTexParameterIiv");
- glad_glGetTexParameterIuiv = (PFNGLGETTEXPARAMETERIUIVPROC)load("glGetTexParameterIuiv");
- glad_glClearBufferiv = (PFNGLCLEARBUFFERIVPROC)load("glClearBufferiv");
- glad_glClearBufferuiv = (PFNGLCLEARBUFFERUIVPROC)load("glClearBufferuiv");
- glad_glClearBufferfv = (PFNGLCLEARBUFFERFVPROC)load("glClearBufferfv");
- glad_glClearBufferfi = (PFNGLCLEARBUFFERFIPROC)load("glClearBufferfi");
- glad_glGetStringi = (PFNGLGETSTRINGIPROC)load("glGetStringi");
- glad_glIsRenderbuffer = (PFNGLISRENDERBUFFERPROC)load("glIsRenderbuffer");
- glad_glBindRenderbuffer = (PFNGLBINDRENDERBUFFERPROC)load("glBindRenderbuffer");
- glad_glDeleteRenderbuffers = (PFNGLDELETERENDERBUFFERSPROC)load("glDeleteRenderbuffers");
- glad_glGenRenderbuffers = (PFNGLGENRENDERBUFFERSPROC)load("glGenRenderbuffers");
- glad_glRenderbufferStorage = (PFNGLRENDERBUFFERSTORAGEPROC)load("glRenderbufferStorage");
- glad_glGetRenderbufferParameteriv = (PFNGLGETRENDERBUFFERPARAMETERIVPROC)load("glGetRenderbufferParameteriv");
- glad_glIsFramebuffer = (PFNGLISFRAMEBUFFERPROC)load("glIsFramebuffer");
- glad_glBindFramebuffer = (PFNGLBINDFRAMEBUFFERPROC)load("glBindFramebuffer");
- glad_glDeleteFramebuffers = (PFNGLDELETEFRAMEBUFFERSPROC)load("glDeleteFramebuffers");
- glad_glGenFramebuffers = (PFNGLGENFRAMEBUFFERSPROC)load("glGenFramebuffers");
- glad_glCheckFramebufferStatus = (PFNGLCHECKFRAMEBUFFERSTATUSPROC)load("glCheckFramebufferStatus");
- glad_glFramebufferTexture1D = (PFNGLFRAMEBUFFERTEXTURE1DPROC)load("glFramebufferTexture1D");
- glad_glFramebufferTexture2D = (PFNGLFRAMEBUFFERTEXTURE2DPROC)load("glFramebufferTexture2D");
- glad_glFramebufferTexture3D = (PFNGLFRAMEBUFFERTEXTURE3DPROC)load("glFramebufferTexture3D");
- glad_glFramebufferRenderbuffer = (PFNGLFRAMEBUFFERRENDERBUFFERPROC)load("glFramebufferRenderbuffer");
- glad_glGetFramebufferAttachmentParameteriv = (PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVPROC)load("glGetFramebufferAttachmentParameteriv");
- glad_glGenerateMipmap = (PFNGLGENERATEMIPMAPPROC)load("glGenerateMipmap");
- glad_glBlitFramebuffer = (PFNGLBLITFRAMEBUFFERPROC)load("glBlitFramebuffer");
- glad_glRenderbufferStorageMultisample = (PFNGLRENDERBUFFERSTORAGEMULTISAMPLEPROC)load("glRenderbufferStorageMultisample");
- glad_glFramebufferTextureLayer = (PFNGLFRAMEBUFFERTEXTURELAYERPROC)load("glFramebufferTextureLayer");
- glad_glMapBufferRange = (PFNGLMAPBUFFERRANGEPROC)load("glMapBufferRange");
- glad_glFlushMappedBufferRange = (PFNGLFLUSHMAPPEDBUFFERRANGEPROC)load("glFlushMappedBufferRange");
- glad_glBindVertexArray = (PFNGLBINDVERTEXARRAYPROC)load("glBindVertexArray");
- glad_glDeleteVertexArrays = (PFNGLDELETEVERTEXARRAYSPROC)load("glDeleteVertexArrays");
- glad_glGenVertexArrays = (PFNGLGENVERTEXARRAYSPROC)load("glGenVertexArrays");
- glad_glIsVertexArray = (PFNGLISVERTEXARRAYPROC)load("glIsVertexArray");
-}
-static void load_GL_VERSION_3_1(GLADloadproc load) {
- if(!GLAD_GL_VERSION_3_1) return;
- glad_glDrawArraysInstanced = (PFNGLDRAWARRAYSINSTANCEDPROC)load("glDrawArraysInstanced");
- glad_glDrawElementsInstanced = (PFNGLDRAWELEMENTSINSTANCEDPROC)load("glDrawElementsInstanced");
- glad_glTexBuffer = (PFNGLTEXBUFFERPROC)load("glTexBuffer");
- glad_glPrimitiveRestartIndex = (PFNGLPRIMITIVERESTARTINDEXPROC)load("glPrimitiveRestartIndex");
- glad_glCopyBufferSubData = (PFNGLCOPYBUFFERSUBDATAPROC)load("glCopyBufferSubData");
- glad_glGetUniformIndices = (PFNGLGETUNIFORMINDICESPROC)load("glGetUniformIndices");
- glad_glGetActiveUniformsiv = (PFNGLGETACTIVEUNIFORMSIVPROC)load("glGetActiveUniformsiv");
- glad_glGetActiveUniformName = (PFNGLGETACTIVEUNIFORMNAMEPROC)load("glGetActiveUniformName");
- glad_glGetUniformBlockIndex = (PFNGLGETUNIFORMBLOCKINDEXPROC)load("glGetUniformBlockIndex");
- glad_glGetActiveUniformBlockiv = (PFNGLGETACTIVEUNIFORMBLOCKIVPROC)load("glGetActiveUniformBlockiv");
- glad_glGetActiveUniformBlockName = (PFNGLGETACTIVEUNIFORMBLOCKNAMEPROC)load("glGetActiveUniformBlockName");
- glad_glUniformBlockBinding = (PFNGLUNIFORMBLOCKBINDINGPROC)load("glUniformBlockBinding");
- glad_glBindBufferRange = (PFNGLBINDBUFFERRANGEPROC)load("glBindBufferRange");
- glad_glBindBufferBase = (PFNGLBINDBUFFERBASEPROC)load("glBindBufferBase");
- glad_glGetIntegeri_v = (PFNGLGETINTEGERI_VPROC)load("glGetIntegeri_v");
-}
-static void load_GL_VERSION_3_2(GLADloadproc load) {
- if(!GLAD_GL_VERSION_3_2) return;
- glad_glDrawElementsBaseVertex = (PFNGLDRAWELEMENTSBASEVERTEXPROC)load("glDrawElementsBaseVertex");
- glad_glDrawRangeElementsBaseVertex = (PFNGLDRAWRANGEELEMENTSBASEVERTEXPROC)load("glDrawRangeElementsBaseVertex");
- glad_glDrawElementsInstancedBaseVertex = (PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXPROC)load("glDrawElementsInstancedBaseVertex");
- glad_glMultiDrawElementsBaseVertex = (PFNGLMULTIDRAWELEMENTSBASEVERTEXPROC)load("glMultiDrawElementsBaseVertex");
- glad_glProvokingVertex = (PFNGLPROVOKINGVERTEXPROC)load("glProvokingVertex");
- glad_glFenceSync = (PFNGLFENCESYNCPROC)load("glFenceSync");
- glad_glIsSync = (PFNGLISSYNCPROC)load("glIsSync");
- glad_glDeleteSync = (PFNGLDELETESYNCPROC)load("glDeleteSync");
- glad_glClientWaitSync = (PFNGLCLIENTWAITSYNCPROC)load("glClientWaitSync");
- glad_glWaitSync = (PFNGLWAITSYNCPROC)load("glWaitSync");
- glad_glGetInteger64v = (PFNGLGETINTEGER64VPROC)load("glGetInteger64v");
- glad_glGetSynciv = (PFNGLGETSYNCIVPROC)load("glGetSynciv");
- glad_glGetInteger64i_v = (PFNGLGETINTEGER64I_VPROC)load("glGetInteger64i_v");
- glad_glGetBufferParameteri64v = (PFNGLGETBUFFERPARAMETERI64VPROC)load("glGetBufferParameteri64v");
- glad_glFramebufferTexture = (PFNGLFRAMEBUFFERTEXTUREPROC)load("glFramebufferTexture");
- glad_glTexImage2DMultisample = (PFNGLTEXIMAGE2DMULTISAMPLEPROC)load("glTexImage2DMultisample");
- glad_glTexImage3DMultisample = (PFNGLTEXIMAGE3DMULTISAMPLEPROC)load("glTexImage3DMultisample");
- glad_glGetMultisamplefv = (PFNGLGETMULTISAMPLEFVPROC)load("glGetMultisamplefv");
- glad_glSampleMaski = (PFNGLSAMPLEMASKIPROC)load("glSampleMaski");
-}
-static void load_GL_VERSION_3_3(GLADloadproc load) {
- if(!GLAD_GL_VERSION_3_3) return;
- glad_glBindFragDataLocationIndexed = (PFNGLBINDFRAGDATALOCATIONINDEXEDPROC)load("glBindFragDataLocationIndexed");
- glad_glGetFragDataIndex = (PFNGLGETFRAGDATAINDEXPROC)load("glGetFragDataIndex");
- glad_glGenSamplers = (PFNGLGENSAMPLERSPROC)load("glGenSamplers");
- glad_glDeleteSamplers = (PFNGLDELETESAMPLERSPROC)load("glDeleteSamplers");
- glad_glIsSampler = (PFNGLISSAMPLERPROC)load("glIsSampler");
- glad_glBindSampler = (PFNGLBINDSAMPLERPROC)load("glBindSampler");
- glad_glSamplerParameteri = (PFNGLSAMPLERPARAMETERIPROC)load("glSamplerParameteri");
- glad_glSamplerParameteriv = (PFNGLSAMPLERPARAMETERIVPROC)load("glSamplerParameteriv");
- glad_glSamplerParameterf = (PFNGLSAMPLERPARAMETERFPROC)load("glSamplerParameterf");
- glad_glSamplerParameterfv = (PFNGLSAMPLERPARAMETERFVPROC)load("glSamplerParameterfv");
- glad_glSamplerParameterIiv = (PFNGLSAMPLERPARAMETERIIVPROC)load("glSamplerParameterIiv");
- glad_glSamplerParameterIuiv = (PFNGLSAMPLERPARAMETERIUIVPROC)load("glSamplerParameterIuiv");
- glad_glGetSamplerParameteriv = (PFNGLGETSAMPLERPARAMETERIVPROC)load("glGetSamplerParameteriv");
- glad_glGetSamplerParameterIiv = (PFNGLGETSAMPLERPARAMETERIIVPROC)load("glGetSamplerParameterIiv");
- glad_glGetSamplerParameterfv = (PFNGLGETSAMPLERPARAMETERFVPROC)load("glGetSamplerParameterfv");
- glad_glGetSamplerParameterIuiv = (PFNGLGETSAMPLERPARAMETERIUIVPROC)load("glGetSamplerParameterIuiv");
- glad_glQueryCounter = (PFNGLQUERYCOUNTERPROC)load("glQueryCounter");
- glad_glGetQueryObjecti64v = (PFNGLGETQUERYOBJECTI64VPROC)load("glGetQueryObjecti64v");
- glad_glGetQueryObjectui64v = (PFNGLGETQUERYOBJECTUI64VPROC)load("glGetQueryObjectui64v");
- glad_glVertexAttribDivisor = (PFNGLVERTEXATTRIBDIVISORPROC)load("glVertexAttribDivisor");
- glad_glVertexAttribP1ui = (PFNGLVERTEXATTRIBP1UIPROC)load("glVertexAttribP1ui");
- glad_glVertexAttribP1uiv = (PFNGLVERTEXATTRIBP1UIVPROC)load("glVertexAttribP1uiv");
- glad_glVertexAttribP2ui = (PFNGLVERTEXATTRIBP2UIPROC)load("glVertexAttribP2ui");
- glad_glVertexAttribP2uiv = (PFNGLVERTEXATTRIBP2UIVPROC)load("glVertexAttribP2uiv");
- glad_glVertexAttribP3ui = (PFNGLVERTEXATTRIBP3UIPROC)load("glVertexAttribP3ui");
- glad_glVertexAttribP3uiv = (PFNGLVERTEXATTRIBP3UIVPROC)load("glVertexAttribP3uiv");
- glad_glVertexAttribP4ui = (PFNGLVERTEXATTRIBP4UIPROC)load("glVertexAttribP4ui");
- glad_glVertexAttribP4uiv = (PFNGLVERTEXATTRIBP4UIVPROC)load("glVertexAttribP4uiv");
- glad_glVertexP2ui = (PFNGLVERTEXP2UIPROC)load("glVertexP2ui");
- glad_glVertexP2uiv = (PFNGLVERTEXP2UIVPROC)load("glVertexP2uiv");
- glad_glVertexP3ui = (PFNGLVERTEXP3UIPROC)load("glVertexP3ui");
- glad_glVertexP3uiv = (PFNGLVERTEXP3UIVPROC)load("glVertexP3uiv");
- glad_glVertexP4ui = (PFNGLVERTEXP4UIPROC)load("glVertexP4ui");
- glad_glVertexP4uiv = (PFNGLVERTEXP4UIVPROC)load("glVertexP4uiv");
- glad_glTexCoordP1ui = (PFNGLTEXCOORDP1UIPROC)load("glTexCoordP1ui");
- glad_glTexCoordP1uiv = (PFNGLTEXCOORDP1UIVPROC)load("glTexCoordP1uiv");
- glad_glTexCoordP2ui = (PFNGLTEXCOORDP2UIPROC)load("glTexCoordP2ui");
- glad_glTexCoordP2uiv = (PFNGLTEXCOORDP2UIVPROC)load("glTexCoordP2uiv");
- glad_glTexCoordP3ui = (PFNGLTEXCOORDP3UIPROC)load("glTexCoordP3ui");
- glad_glTexCoordP3uiv = (PFNGLTEXCOORDP3UIVPROC)load("glTexCoordP3uiv");
- glad_glTexCoordP4ui = (PFNGLTEXCOORDP4UIPROC)load("glTexCoordP4ui");
- glad_glTexCoordP4uiv = (PFNGLTEXCOORDP4UIVPROC)load("glTexCoordP4uiv");
- glad_glMultiTexCoordP1ui = (PFNGLMULTITEXCOORDP1UIPROC)load("glMultiTexCoordP1ui");
- glad_glMultiTexCoordP1uiv = (PFNGLMULTITEXCOORDP1UIVPROC)load("glMultiTexCoordP1uiv");
- glad_glMultiTexCoordP2ui = (PFNGLMULTITEXCOORDP2UIPROC)load("glMultiTexCoordP2ui");
- glad_glMultiTexCoordP2uiv = (PFNGLMULTITEXCOORDP2UIVPROC)load("glMultiTexCoordP2uiv");
- glad_glMultiTexCoordP3ui = (PFNGLMULTITEXCOORDP3UIPROC)load("glMultiTexCoordP3ui");
- glad_glMultiTexCoordP3uiv = (PFNGLMULTITEXCOORDP3UIVPROC)load("glMultiTexCoordP3uiv");
- glad_glMultiTexCoordP4ui = (PFNGLMULTITEXCOORDP4UIPROC)load("glMultiTexCoordP4ui");
- glad_glMultiTexCoordP4uiv = (PFNGLMULTITEXCOORDP4UIVPROC)load("glMultiTexCoordP4uiv");
- glad_glNormalP3ui = (PFNGLNORMALP3UIPROC)load("glNormalP3ui");
- glad_glNormalP3uiv = (PFNGLNORMALP3UIVPROC)load("glNormalP3uiv");
- glad_glColorP3ui = (PFNGLCOLORP3UIPROC)load("glColorP3ui");
- glad_glColorP3uiv = (PFNGLCOLORP3UIVPROC)load("glColorP3uiv");
- glad_glColorP4ui = (PFNGLCOLORP4UIPROC)load("glColorP4ui");
- glad_glColorP4uiv = (PFNGLCOLORP4UIVPROC)load("glColorP4uiv");
- glad_glSecondaryColorP3ui = (PFNGLSECONDARYCOLORP3UIPROC)load("glSecondaryColorP3ui");
- glad_glSecondaryColorP3uiv = (PFNGLSECONDARYCOLORP3UIVPROC)load("glSecondaryColorP3uiv");
-}
-static void load_GL_ARB_debug_output(GLADloadproc load) {
- if(!GLAD_GL_ARB_debug_output) return;
- glad_glDebugMessageControlARB = (PFNGLDEBUGMESSAGECONTROLARBPROC)load("glDebugMessageControlARB");
- glad_glDebugMessageInsertARB = (PFNGLDEBUGMESSAGEINSERTARBPROC)load("glDebugMessageInsertARB");
- glad_glDebugMessageCallbackARB = (PFNGLDEBUGMESSAGECALLBACKARBPROC)load("glDebugMessageCallbackARB");
- glad_glGetDebugMessageLogARB = (PFNGLGETDEBUGMESSAGELOGARBPROC)load("glGetDebugMessageLogARB");
-}
-static void load_GL_ARB_framebuffer_object(GLADloadproc load) {
- if(!GLAD_GL_ARB_framebuffer_object) return;
- glad_glIsRenderbuffer = (PFNGLISRENDERBUFFERPROC)load("glIsRenderbuffer");
- glad_glBindRenderbuffer = (PFNGLBINDRENDERBUFFERPROC)load("glBindRenderbuffer");
- glad_glDeleteRenderbuffers = (PFNGLDELETERENDERBUFFERSPROC)load("glDeleteRenderbuffers");
- glad_glGenRenderbuffers = (PFNGLGENRENDERBUFFERSPROC)load("glGenRenderbuffers");
- glad_glRenderbufferStorage = (PFNGLRENDERBUFFERSTORAGEPROC)load("glRenderbufferStorage");
- glad_glGetRenderbufferParameteriv = (PFNGLGETRENDERBUFFERPARAMETERIVPROC)load("glGetRenderbufferParameteriv");
- glad_glIsFramebuffer = (PFNGLISFRAMEBUFFERPROC)load("glIsFramebuffer");
- glad_glBindFramebuffer = (PFNGLBINDFRAMEBUFFERPROC)load("glBindFramebuffer");
- glad_glDeleteFramebuffers = (PFNGLDELETEFRAMEBUFFERSPROC)load("glDeleteFramebuffers");
- glad_glGenFramebuffers = (PFNGLGENFRAMEBUFFERSPROC)load("glGenFramebuffers");
- glad_glCheckFramebufferStatus = (PFNGLCHECKFRAMEBUFFERSTATUSPROC)load("glCheckFramebufferStatus");
- glad_glFramebufferTexture1D = (PFNGLFRAMEBUFFERTEXTURE1DPROC)load("glFramebufferTexture1D");
- glad_glFramebufferTexture2D = (PFNGLFRAMEBUFFERTEXTURE2DPROC)load("glFramebufferTexture2D");
- glad_glFramebufferTexture3D = (PFNGLFRAMEBUFFERTEXTURE3DPROC)load("glFramebufferTexture3D");
- glad_glFramebufferRenderbuffer = (PFNGLFRAMEBUFFERRENDERBUFFERPROC)load("glFramebufferRenderbuffer");
- glad_glGetFramebufferAttachmentParameteriv = (PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVPROC)load("glGetFramebufferAttachmentParameteriv");
- glad_glGenerateMipmap = (PFNGLGENERATEMIPMAPPROC)load("glGenerateMipmap");
- glad_glBlitFramebuffer = (PFNGLBLITFRAMEBUFFERPROC)load("glBlitFramebuffer");
- glad_glRenderbufferStorageMultisample = (PFNGLRENDERBUFFERSTORAGEMULTISAMPLEPROC)load("glRenderbufferStorageMultisample");
- glad_glFramebufferTextureLayer = (PFNGLFRAMEBUFFERTEXTURELAYERPROC)load("glFramebufferTextureLayer");
-}
-static void load_GL_EXT_framebuffer_blit(GLADloadproc load) {
- if(!GLAD_GL_EXT_framebuffer_blit) return;
- glad_glBlitFramebufferEXT = (PFNGLBLITFRAMEBUFFEREXTPROC)load("glBlitFramebufferEXT");
-}
-static void load_GL_EXT_framebuffer_multisample(GLADloadproc load) {
- if(!GLAD_GL_EXT_framebuffer_multisample) return;
- glad_glRenderbufferStorageMultisampleEXT = (PFNGLRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC)load("glRenderbufferStorageMultisampleEXT");
-}
-static void load_GL_EXT_framebuffer_object(GLADloadproc load) {
- if(!GLAD_GL_EXT_framebuffer_object) return;
- glad_glIsRenderbufferEXT = (PFNGLISRENDERBUFFEREXTPROC)load("glIsRenderbufferEXT");
- glad_glBindRenderbufferEXT = (PFNGLBINDRENDERBUFFEREXTPROC)load("glBindRenderbufferEXT");
- glad_glDeleteRenderbuffersEXT = (PFNGLDELETERENDERBUFFERSEXTPROC)load("glDeleteRenderbuffersEXT");
- glad_glGenRenderbuffersEXT = (PFNGLGENRENDERBUFFERSEXTPROC)load("glGenRenderbuffersEXT");
- glad_glRenderbufferStorageEXT = (PFNGLRENDERBUFFERSTORAGEEXTPROC)load("glRenderbufferStorageEXT");
- glad_glGetRenderbufferParameterivEXT = (PFNGLGETRENDERBUFFERPARAMETERIVEXTPROC)load("glGetRenderbufferParameterivEXT");
- glad_glIsFramebufferEXT = (PFNGLISFRAMEBUFFEREXTPROC)load("glIsFramebufferEXT");
- glad_glBindFramebufferEXT = (PFNGLBINDFRAMEBUFFEREXTPROC)load("glBindFramebufferEXT");
- glad_glDeleteFramebuffersEXT = (PFNGLDELETEFRAMEBUFFERSEXTPROC)load("glDeleteFramebuffersEXT");
- glad_glGenFramebuffersEXT = (PFNGLGENFRAMEBUFFERSEXTPROC)load("glGenFramebuffersEXT");
- glad_glCheckFramebufferStatusEXT = (PFNGLCHECKFRAMEBUFFERSTATUSEXTPROC)load("glCheckFramebufferStatusEXT");
- glad_glFramebufferTexture1DEXT = (PFNGLFRAMEBUFFERTEXTURE1DEXTPROC)load("glFramebufferTexture1DEXT");
- glad_glFramebufferTexture2DEXT = (PFNGLFRAMEBUFFERTEXTURE2DEXTPROC)load("glFramebufferTexture2DEXT");
- glad_glFramebufferTexture3DEXT = (PFNGLFRAMEBUFFERTEXTURE3DEXTPROC)load("glFramebufferTexture3DEXT");
- glad_glFramebufferRenderbufferEXT = (PFNGLFRAMEBUFFERRENDERBUFFEREXTPROC)load("glFramebufferRenderbufferEXT");
- glad_glGetFramebufferAttachmentParameterivEXT = (PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVEXTPROC)load("glGetFramebufferAttachmentParameterivEXT");
- glad_glGenerateMipmapEXT = (PFNGLGENERATEMIPMAPEXTPROC)load("glGenerateMipmapEXT");
-}
-static int find_extensionsGL(void) {
- if (!get_exts()) return 0;
- GLAD_GL_ARB_debug_output = has_ext("GL_ARB_debug_output");
- GLAD_GL_ARB_framebuffer_object = has_ext("GL_ARB_framebuffer_object");
- GLAD_GL_EXT_framebuffer_blit = has_ext("GL_EXT_framebuffer_blit");
- GLAD_GL_EXT_framebuffer_multisample = has_ext("GL_EXT_framebuffer_multisample");
- GLAD_GL_EXT_framebuffer_object = has_ext("GL_EXT_framebuffer_object");
- free_exts();
- return 1;
-}
-
-static void find_coreGL(void) {
-
- /* Thank you @elmindreda
- * https://github.com/elmindreda/greg/blob/master/templates/greg.c.in#L176
- * https://github.com/glfw/glfw/blob/master/src/context.c#L36
- */
- int i, major, minor;
-
- const char* version;
- const char* prefixes[] = {
- "OpenGL ES-CM ",
- "OpenGL ES-CL ",
- "OpenGL ES ",
- NULL
- };
-
- version = (const char*) glGetString(GL_VERSION);
- if (!version) return;
-
- for (i = 0; prefixes[i]; i++) {
- const size_t length = strlen(prefixes[i]);
- if (strncmp(version, prefixes[i], length) == 0) {
- version += length;
- break;
- }
- }
-
-/* PR #18 */
-#ifdef _MSC_VER
- sscanf_s(version, "%d.%d", &major, &minor);
-#else
- sscanf(version, "%d.%d", &major, &minor);
-#endif
-
- GLVersion.major = major; GLVersion.minor = minor;
- max_loaded_major = major; max_loaded_minor = minor;
- GLAD_GL_VERSION_1_0 = (major == 1 && minor >= 0) || major > 1;
- GLAD_GL_VERSION_1_1 = (major == 1 && minor >= 1) || major > 1;
- GLAD_GL_VERSION_1_2 = (major == 1 && minor >= 2) || major > 1;
- GLAD_GL_VERSION_1_3 = (major == 1 && minor >= 3) || major > 1;
- GLAD_GL_VERSION_1_4 = (major == 1 && minor >= 4) || major > 1;
- GLAD_GL_VERSION_1_5 = (major == 1 && minor >= 5) || major > 1;
- GLAD_GL_VERSION_2_0 = (major == 2 && minor >= 0) || major > 2;
- GLAD_GL_VERSION_2_1 = (major == 2 && minor >= 1) || major > 2;
- GLAD_GL_VERSION_3_0 = (major == 3 && minor >= 0) || major > 3;
- GLAD_GL_VERSION_3_1 = (major == 3 && minor >= 1) || major > 3;
- GLAD_GL_VERSION_3_2 = (major == 3 && minor >= 2) || major > 3;
- GLAD_GL_VERSION_3_3 = (major == 3 && minor >= 3) || major > 3;
- if (GLVersion.major > 3 || (GLVersion.major >= 3 && GLVersion.minor >= 3)) {
- max_loaded_major = 3;
- max_loaded_minor = 3;
- }
-}
-
-int gladLoadGLLoader(GLADloadproc load) {
- GLVersion.major = 0; GLVersion.minor = 0;
- glGetString = (PFNGLGETSTRINGPROC)load("glGetString");
- if(glGetString == NULL) return 0;
- if(glGetString(GL_VERSION) == NULL) return 0;
- find_coreGL();
- load_GL_VERSION_1_0(load);
- load_GL_VERSION_1_1(load);
- load_GL_VERSION_1_2(load);
- load_GL_VERSION_1_3(load);
- load_GL_VERSION_1_4(load);
- load_GL_VERSION_1_5(load);
- load_GL_VERSION_2_0(load);
- load_GL_VERSION_2_1(load);
- load_GL_VERSION_3_0(load);
- load_GL_VERSION_3_1(load);
- load_GL_VERSION_3_2(load);
- load_GL_VERSION_3_3(load);
-
- if (!find_extensionsGL()) return 0;
- load_GL_ARB_debug_output(load);
- load_GL_ARB_framebuffer_object(load);
- load_GL_EXT_framebuffer_blit(load);
- load_GL_EXT_framebuffer_multisample(load);
- load_GL_EXT_framebuffer_object(load);
- return GLVersion.major != 0 || GLVersion.minor != 0;
-}
-
diff --git a/thirdparty/glad/glad/glad.h b/thirdparty/glad/glad/glad.h
deleted file mode 100644
index fae71a865e..0000000000
--- a/thirdparty/glad/glad/glad.h
+++ /dev/null
@@ -1,3784 +0,0 @@
-/*
-
- OpenGL loader generated by glad 0.1.33 on Tue Nov 12 08:44:22 2019.
-
- Language/Generator: C/C++
- Specification: gl
- APIs: gl=3.3
- Profile: compatibility
- Extensions:
- GL_ARB_debug_output,
- GL_ARB_framebuffer_object,
- GL_EXT_framebuffer_blit,
- GL_EXT_framebuffer_multisample,
- GL_EXT_framebuffer_object
- Loader: True
- Local files: False
- Omit khrplatform: False
- Reproducible: False
-
- Commandline:
- --profile="compatibility" --api="gl=3.3" --generator="c" --spec="gl" --extensions="GL_ARB_debug_output,GL_ARB_framebuffer_object,GL_EXT_framebuffer_blit,GL_EXT_framebuffer_multisample,GL_EXT_framebuffer_object"
- Online:
- https://glad.dav1d.de/#profile=compatibility&language=c&specification=gl&loader=on&api=gl%3D3.3&extensions=GL_ARB_debug_output&extensions=GL_ARB_framebuffer_object&extensions=GL_EXT_framebuffer_blit&extensions=GL_EXT_framebuffer_multisample&extensions=GL_EXT_framebuffer_object
-*/
-
-
-#ifndef __glad_h_
-#define __glad_h_
-
-#ifdef __gl_h_
-#error OpenGL header already included, remove this include, glad already provides it
-#endif
-#define __gl_h_
-
-#if defined(_WIN32) && !defined(APIENTRY) && !defined(__CYGWIN__) && !defined(__SCITECH_SNAP__)
-#define APIENTRY __stdcall
-#endif
-
-#ifndef APIENTRY
-#define APIENTRY
-#endif
-#ifndef APIENTRYP
-#define APIENTRYP APIENTRY *
-#endif
-
-#ifndef GLAPIENTRY
-#define GLAPIENTRY APIENTRY
-#endif
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-struct gladGLversionStruct {
- int major;
- int minor;
-};
-
-typedef void* (* GLADloadproc)(const char *name);
-
-#ifndef GLAPI
-# if defined(GLAD_GLAPI_EXPORT)
-# if defined(_WIN32) || defined(__CYGWIN__)
-# if defined(GLAD_GLAPI_EXPORT_BUILD)
-# if defined(__GNUC__)
-# define GLAPI __attribute__ ((dllexport)) extern
-# else
-# define GLAPI __declspec(dllexport) extern
-# endif
-# else
-# if defined(__GNUC__)
-# define GLAPI __attribute__ ((dllimport)) extern
-# else
-# define GLAPI __declspec(dllimport) extern
-# endif
-# endif
-# elif defined(__GNUC__) && defined(GLAD_GLAPI_EXPORT_BUILD)
-# define GLAPI __attribute__ ((visibility ("default"))) extern
-# else
-# define GLAPI extern
-# endif
-# else
-# define GLAPI extern
-# endif
-#endif
-
-GLAPI struct gladGLversionStruct GLVersion;
-
-GLAPI int gladLoadGL(void);
-
-GLAPI int gladLoadGLLoader(GLADloadproc);
-
-#include <KHR/khrplatform.h>
-typedef unsigned int GLenum;
-typedef unsigned char GLboolean;
-typedef unsigned int GLbitfield;
-typedef void GLvoid;
-typedef khronos_int8_t GLbyte;
-typedef khronos_uint8_t GLubyte;
-typedef khronos_int16_t GLshort;
-typedef khronos_uint16_t GLushort;
-typedef int GLint;
-typedef unsigned int GLuint;
-typedef khronos_int32_t GLclampx;
-typedef int GLsizei;
-typedef khronos_float_t GLfloat;
-typedef khronos_float_t GLclampf;
-typedef double GLdouble;
-typedef double GLclampd;
-typedef void *GLeglClientBufferEXT;
-typedef void *GLeglImageOES;
-typedef char GLchar;
-typedef char GLcharARB;
-#ifdef __APPLE__
-typedef void *GLhandleARB;
-#else
-typedef unsigned int GLhandleARB;
-#endif
-typedef khronos_uint16_t GLhalf;
-typedef khronos_uint16_t GLhalfARB;
-typedef khronos_int32_t GLfixed;
-typedef khronos_intptr_t GLintptr;
-typedef khronos_intptr_t GLintptrARB;
-typedef khronos_ssize_t GLsizeiptr;
-typedef khronos_ssize_t GLsizeiptrARB;
-typedef khronos_int64_t GLint64;
-typedef khronos_int64_t GLint64EXT;
-typedef khronos_uint64_t GLuint64;
-typedef khronos_uint64_t GLuint64EXT;
-typedef struct __GLsync *GLsync;
-struct _cl_context;
-struct _cl_event;
-typedef void (APIENTRY *GLDEBUGPROC)(GLenum source,GLenum type,GLuint id,GLenum severity,GLsizei length,const GLchar *message,const void *userParam);
-typedef void (APIENTRY *GLDEBUGPROCARB)(GLenum source,GLenum type,GLuint id,GLenum severity,GLsizei length,const GLchar *message,const void *userParam);
-typedef void (APIENTRY *GLDEBUGPROCKHR)(GLenum source,GLenum type,GLuint id,GLenum severity,GLsizei length,const GLchar *message,const void *userParam);
-typedef void (APIENTRY *GLDEBUGPROCAMD)(GLuint id,GLenum category,GLenum severity,GLsizei length,const GLchar *message,void *userParam);
-typedef unsigned short GLhalfNV;
-typedef GLintptr GLvdpauSurfaceNV;
-typedef void (APIENTRY *GLVULKANPROCNV)(void);
-#define GL_DEPTH_BUFFER_BIT 0x00000100
-#define GL_STENCIL_BUFFER_BIT 0x00000400
-#define GL_COLOR_BUFFER_BIT 0x00004000
-#define GL_FALSE 0
-#define GL_TRUE 1
-#define GL_POINTS 0x0000
-#define GL_LINES 0x0001
-#define GL_LINE_LOOP 0x0002
-#define GL_LINE_STRIP 0x0003
-#define GL_TRIANGLES 0x0004
-#define GL_TRIANGLE_STRIP 0x0005
-#define GL_TRIANGLE_FAN 0x0006
-#define GL_QUADS 0x0007
-#define GL_NEVER 0x0200
-#define GL_LESS 0x0201
-#define GL_EQUAL 0x0202
-#define GL_LEQUAL 0x0203
-#define GL_GREATER 0x0204
-#define GL_NOTEQUAL 0x0205
-#define GL_GEQUAL 0x0206
-#define GL_ALWAYS 0x0207
-#define GL_ZERO 0
-#define GL_ONE 1
-#define GL_SRC_COLOR 0x0300
-#define GL_ONE_MINUS_SRC_COLOR 0x0301
-#define GL_SRC_ALPHA 0x0302
-#define GL_ONE_MINUS_SRC_ALPHA 0x0303
-#define GL_DST_ALPHA 0x0304
-#define GL_ONE_MINUS_DST_ALPHA 0x0305
-#define GL_DST_COLOR 0x0306
-#define GL_ONE_MINUS_DST_COLOR 0x0307
-#define GL_SRC_ALPHA_SATURATE 0x0308
-#define GL_NONE 0
-#define GL_FRONT_LEFT 0x0400
-#define GL_FRONT_RIGHT 0x0401
-#define GL_BACK_LEFT 0x0402
-#define GL_BACK_RIGHT 0x0403
-#define GL_FRONT 0x0404
-#define GL_BACK 0x0405
-#define GL_LEFT 0x0406
-#define GL_RIGHT 0x0407
-#define GL_FRONT_AND_BACK 0x0408
-#define GL_NO_ERROR 0
-#define GL_INVALID_ENUM 0x0500
-#define GL_INVALID_VALUE 0x0501
-#define GL_INVALID_OPERATION 0x0502
-#define GL_OUT_OF_MEMORY 0x0505
-#define GL_CW 0x0900
-#define GL_CCW 0x0901
-#define GL_POINT_SIZE 0x0B11
-#define GL_POINT_SIZE_RANGE 0x0B12
-#define GL_POINT_SIZE_GRANULARITY 0x0B13
-#define GL_LINE_SMOOTH 0x0B20
-#define GL_LINE_WIDTH 0x0B21
-#define GL_LINE_WIDTH_RANGE 0x0B22
-#define GL_LINE_WIDTH_GRANULARITY 0x0B23
-#define GL_POLYGON_MODE 0x0B40
-#define GL_POLYGON_SMOOTH 0x0B41
-#define GL_CULL_FACE 0x0B44
-#define GL_CULL_FACE_MODE 0x0B45
-#define GL_FRONT_FACE 0x0B46
-#define GL_DEPTH_RANGE 0x0B70
-#define GL_DEPTH_TEST 0x0B71
-#define GL_DEPTH_WRITEMASK 0x0B72
-#define GL_DEPTH_CLEAR_VALUE 0x0B73
-#define GL_DEPTH_FUNC 0x0B74
-#define GL_STENCIL_TEST 0x0B90
-#define GL_STENCIL_CLEAR_VALUE 0x0B91
-#define GL_STENCIL_FUNC 0x0B92
-#define GL_STENCIL_VALUE_MASK 0x0B93
-#define GL_STENCIL_FAIL 0x0B94
-#define GL_STENCIL_PASS_DEPTH_FAIL 0x0B95
-#define GL_STENCIL_PASS_DEPTH_PASS 0x0B96
-#define GL_STENCIL_REF 0x0B97
-#define GL_STENCIL_WRITEMASK 0x0B98
-#define GL_VIEWPORT 0x0BA2
-#define GL_DITHER 0x0BD0
-#define GL_BLEND_DST 0x0BE0
-#define GL_BLEND_SRC 0x0BE1
-#define GL_BLEND 0x0BE2
-#define GL_LOGIC_OP_MODE 0x0BF0
-#define GL_DRAW_BUFFER 0x0C01
-#define GL_READ_BUFFER 0x0C02
-#define GL_SCISSOR_BOX 0x0C10
-#define GL_SCISSOR_TEST 0x0C11
-#define GL_COLOR_CLEAR_VALUE 0x0C22
-#define GL_COLOR_WRITEMASK 0x0C23
-#define GL_DOUBLEBUFFER 0x0C32
-#define GL_STEREO 0x0C33
-#define GL_LINE_SMOOTH_HINT 0x0C52
-#define GL_POLYGON_SMOOTH_HINT 0x0C53
-#define GL_UNPACK_SWAP_BYTES 0x0CF0
-#define GL_UNPACK_LSB_FIRST 0x0CF1
-#define GL_UNPACK_ROW_LENGTH 0x0CF2
-#define GL_UNPACK_SKIP_ROWS 0x0CF3
-#define GL_UNPACK_SKIP_PIXELS 0x0CF4
-#define GL_UNPACK_ALIGNMENT 0x0CF5
-#define GL_PACK_SWAP_BYTES 0x0D00
-#define GL_PACK_LSB_FIRST 0x0D01
-#define GL_PACK_ROW_LENGTH 0x0D02
-#define GL_PACK_SKIP_ROWS 0x0D03
-#define GL_PACK_SKIP_PIXELS 0x0D04
-#define GL_PACK_ALIGNMENT 0x0D05
-#define GL_MAX_TEXTURE_SIZE 0x0D33
-#define GL_MAX_VIEWPORT_DIMS 0x0D3A
-#define GL_SUBPIXEL_BITS 0x0D50
-#define GL_TEXTURE_1D 0x0DE0
-#define GL_TEXTURE_2D 0x0DE1
-#define GL_TEXTURE_WIDTH 0x1000
-#define GL_TEXTURE_HEIGHT 0x1001
-#define GL_TEXTURE_BORDER_COLOR 0x1004
-#define GL_DONT_CARE 0x1100
-#define GL_FASTEST 0x1101
-#define GL_NICEST 0x1102
-#define GL_BYTE 0x1400
-#define GL_UNSIGNED_BYTE 0x1401
-#define GL_SHORT 0x1402
-#define GL_UNSIGNED_SHORT 0x1403
-#define GL_INT 0x1404
-#define GL_UNSIGNED_INT 0x1405
-#define GL_FLOAT 0x1406
-#define GL_STACK_OVERFLOW 0x0503
-#define GL_STACK_UNDERFLOW 0x0504
-#define GL_CLEAR 0x1500
-#define GL_AND 0x1501
-#define GL_AND_REVERSE 0x1502
-#define GL_COPY 0x1503
-#define GL_AND_INVERTED 0x1504
-#define GL_NOOP 0x1505
-#define GL_XOR 0x1506
-#define GL_OR 0x1507
-#define GL_NOR 0x1508
-#define GL_EQUIV 0x1509
-#define GL_INVERT 0x150A
-#define GL_OR_REVERSE 0x150B
-#define GL_COPY_INVERTED 0x150C
-#define GL_OR_INVERTED 0x150D
-#define GL_NAND 0x150E
-#define GL_SET 0x150F
-#define GL_TEXTURE 0x1702
-#define GL_COLOR 0x1800
-#define GL_DEPTH 0x1801
-#define GL_STENCIL 0x1802
-#define GL_STENCIL_INDEX 0x1901
-#define GL_DEPTH_COMPONENT 0x1902
-#define GL_RED 0x1903
-#define GL_GREEN 0x1904
-#define GL_BLUE 0x1905
-#define GL_ALPHA 0x1906
-#define GL_RGB 0x1907
-#define GL_RGBA 0x1908
-#define GL_POINT 0x1B00
-#define GL_LINE 0x1B01
-#define GL_FILL 0x1B02
-#define GL_KEEP 0x1E00
-#define GL_REPLACE 0x1E01
-#define GL_INCR 0x1E02
-#define GL_DECR 0x1E03
-#define GL_VENDOR 0x1F00
-#define GL_RENDERER 0x1F01
-#define GL_VERSION 0x1F02
-#define GL_EXTENSIONS 0x1F03
-#define GL_NEAREST 0x2600
-#define GL_LINEAR 0x2601
-#define GL_NEAREST_MIPMAP_NEAREST 0x2700
-#define GL_LINEAR_MIPMAP_NEAREST 0x2701
-#define GL_NEAREST_MIPMAP_LINEAR 0x2702
-#define GL_LINEAR_MIPMAP_LINEAR 0x2703
-#define GL_TEXTURE_MAG_FILTER 0x2800
-#define GL_TEXTURE_MIN_FILTER 0x2801
-#define GL_TEXTURE_WRAP_S 0x2802
-#define GL_TEXTURE_WRAP_T 0x2803
-#define GL_REPEAT 0x2901
-#define GL_CURRENT_BIT 0x00000001
-#define GL_POINT_BIT 0x00000002
-#define GL_LINE_BIT 0x00000004
-#define GL_POLYGON_BIT 0x00000008
-#define GL_POLYGON_STIPPLE_BIT 0x00000010
-#define GL_PIXEL_MODE_BIT 0x00000020
-#define GL_LIGHTING_BIT 0x00000040
-#define GL_FOG_BIT 0x00000080
-#define GL_ACCUM_BUFFER_BIT 0x00000200
-#define GL_VIEWPORT_BIT 0x00000800
-#define GL_TRANSFORM_BIT 0x00001000
-#define GL_ENABLE_BIT 0x00002000
-#define GL_HINT_BIT 0x00008000
-#define GL_EVAL_BIT 0x00010000
-#define GL_LIST_BIT 0x00020000
-#define GL_TEXTURE_BIT 0x00040000
-#define GL_SCISSOR_BIT 0x00080000
-#define GL_ALL_ATTRIB_BITS 0xFFFFFFFF
-#define GL_QUAD_STRIP 0x0008
-#define GL_POLYGON 0x0009
-#define GL_ACCUM 0x0100
-#define GL_LOAD 0x0101
-#define GL_RETURN 0x0102
-#define GL_MULT 0x0103
-#define GL_ADD 0x0104
-#define GL_AUX0 0x0409
-#define GL_AUX1 0x040A
-#define GL_AUX2 0x040B
-#define GL_AUX3 0x040C
-#define GL_2D 0x0600
-#define GL_3D 0x0601
-#define GL_3D_COLOR 0x0602
-#define GL_3D_COLOR_TEXTURE 0x0603
-#define GL_4D_COLOR_TEXTURE 0x0604
-#define GL_PASS_THROUGH_TOKEN 0x0700
-#define GL_POINT_TOKEN 0x0701
-#define GL_LINE_TOKEN 0x0702
-#define GL_POLYGON_TOKEN 0x0703
-#define GL_BITMAP_TOKEN 0x0704
-#define GL_DRAW_PIXEL_TOKEN 0x0705
-#define GL_COPY_PIXEL_TOKEN 0x0706
-#define GL_LINE_RESET_TOKEN 0x0707
-#define GL_EXP 0x0800
-#define GL_EXP2 0x0801
-#define GL_COEFF 0x0A00
-#define GL_ORDER 0x0A01
-#define GL_DOMAIN 0x0A02
-#define GL_PIXEL_MAP_I_TO_I 0x0C70
-#define GL_PIXEL_MAP_S_TO_S 0x0C71
-#define GL_PIXEL_MAP_I_TO_R 0x0C72
-#define GL_PIXEL_MAP_I_TO_G 0x0C73
-#define GL_PIXEL_MAP_I_TO_B 0x0C74
-#define GL_PIXEL_MAP_I_TO_A 0x0C75
-#define GL_PIXEL_MAP_R_TO_R 0x0C76
-#define GL_PIXEL_MAP_G_TO_G 0x0C77
-#define GL_PIXEL_MAP_B_TO_B 0x0C78
-#define GL_PIXEL_MAP_A_TO_A 0x0C79
-#define GL_CURRENT_COLOR 0x0B00
-#define GL_CURRENT_INDEX 0x0B01
-#define GL_CURRENT_NORMAL 0x0B02
-#define GL_CURRENT_TEXTURE_COORDS 0x0B03
-#define GL_CURRENT_RASTER_COLOR 0x0B04
-#define GL_CURRENT_RASTER_INDEX 0x0B05
-#define GL_CURRENT_RASTER_TEXTURE_COORDS 0x0B06
-#define GL_CURRENT_RASTER_POSITION 0x0B07
-#define GL_CURRENT_RASTER_POSITION_VALID 0x0B08
-#define GL_CURRENT_RASTER_DISTANCE 0x0B09
-#define GL_POINT_SMOOTH 0x0B10
-#define GL_LINE_STIPPLE 0x0B24
-#define GL_LINE_STIPPLE_PATTERN 0x0B25
-#define GL_LINE_STIPPLE_REPEAT 0x0B26
-#define GL_LIST_MODE 0x0B30
-#define GL_MAX_LIST_NESTING 0x0B31
-#define GL_LIST_BASE 0x0B32
-#define GL_LIST_INDEX 0x0B33
-#define GL_POLYGON_STIPPLE 0x0B42
-#define GL_EDGE_FLAG 0x0B43
-#define GL_LIGHTING 0x0B50
-#define GL_LIGHT_MODEL_LOCAL_VIEWER 0x0B51
-#define GL_LIGHT_MODEL_TWO_SIDE 0x0B52
-#define GL_LIGHT_MODEL_AMBIENT 0x0B53
-#define GL_SHADE_MODEL 0x0B54
-#define GL_COLOR_MATERIAL_FACE 0x0B55
-#define GL_COLOR_MATERIAL_PARAMETER 0x0B56
-#define GL_COLOR_MATERIAL 0x0B57
-#define GL_FOG 0x0B60
-#define GL_FOG_INDEX 0x0B61
-#define GL_FOG_DENSITY 0x0B62
-#define GL_FOG_START 0x0B63
-#define GL_FOG_END 0x0B64
-#define GL_FOG_MODE 0x0B65
-#define GL_FOG_COLOR 0x0B66
-#define GL_ACCUM_CLEAR_VALUE 0x0B80
-#define GL_MATRIX_MODE 0x0BA0
-#define GL_NORMALIZE 0x0BA1
-#define GL_MODELVIEW_STACK_DEPTH 0x0BA3
-#define GL_PROJECTION_STACK_DEPTH 0x0BA4
-#define GL_TEXTURE_STACK_DEPTH 0x0BA5
-#define GL_MODELVIEW_MATRIX 0x0BA6
-#define GL_PROJECTION_MATRIX 0x0BA7
-#define GL_TEXTURE_MATRIX 0x0BA8
-#define GL_ATTRIB_STACK_DEPTH 0x0BB0
-#define GL_ALPHA_TEST 0x0BC0
-#define GL_ALPHA_TEST_FUNC 0x0BC1
-#define GL_ALPHA_TEST_REF 0x0BC2
-#define GL_LOGIC_OP 0x0BF1
-#define GL_AUX_BUFFERS 0x0C00
-#define GL_INDEX_CLEAR_VALUE 0x0C20
-#define GL_INDEX_WRITEMASK 0x0C21
-#define GL_INDEX_MODE 0x0C30
-#define GL_RGBA_MODE 0x0C31
-#define GL_RENDER_MODE 0x0C40
-#define GL_PERSPECTIVE_CORRECTION_HINT 0x0C50
-#define GL_POINT_SMOOTH_HINT 0x0C51
-#define GL_FOG_HINT 0x0C54
-#define GL_TEXTURE_GEN_S 0x0C60
-#define GL_TEXTURE_GEN_T 0x0C61
-#define GL_TEXTURE_GEN_R 0x0C62
-#define GL_TEXTURE_GEN_Q 0x0C63
-#define GL_PIXEL_MAP_I_TO_I_SIZE 0x0CB0
-#define GL_PIXEL_MAP_S_TO_S_SIZE 0x0CB1
-#define GL_PIXEL_MAP_I_TO_R_SIZE 0x0CB2
-#define GL_PIXEL_MAP_I_TO_G_SIZE 0x0CB3
-#define GL_PIXEL_MAP_I_TO_B_SIZE 0x0CB4
-#define GL_PIXEL_MAP_I_TO_A_SIZE 0x0CB5
-#define GL_PIXEL_MAP_R_TO_R_SIZE 0x0CB6
-#define GL_PIXEL_MAP_G_TO_G_SIZE 0x0CB7
-#define GL_PIXEL_MAP_B_TO_B_SIZE 0x0CB8
-#define GL_PIXEL_MAP_A_TO_A_SIZE 0x0CB9
-#define GL_MAP_COLOR 0x0D10
-#define GL_MAP_STENCIL 0x0D11
-#define GL_INDEX_SHIFT 0x0D12
-#define GL_INDEX_OFFSET 0x0D13
-#define GL_RED_SCALE 0x0D14
-#define GL_RED_BIAS 0x0D15
-#define GL_ZOOM_X 0x0D16
-#define GL_ZOOM_Y 0x0D17
-#define GL_GREEN_SCALE 0x0D18
-#define GL_GREEN_BIAS 0x0D19
-#define GL_BLUE_SCALE 0x0D1A
-#define GL_BLUE_BIAS 0x0D1B
-#define GL_ALPHA_SCALE 0x0D1C
-#define GL_ALPHA_BIAS 0x0D1D
-#define GL_DEPTH_SCALE 0x0D1E
-#define GL_DEPTH_BIAS 0x0D1F
-#define GL_MAX_EVAL_ORDER 0x0D30
-#define GL_MAX_LIGHTS 0x0D31
-#define GL_MAX_CLIP_PLANES 0x0D32
-#define GL_MAX_PIXEL_MAP_TABLE 0x0D34
-#define GL_MAX_ATTRIB_STACK_DEPTH 0x0D35
-#define GL_MAX_MODELVIEW_STACK_DEPTH 0x0D36
-#define GL_MAX_NAME_STACK_DEPTH 0x0D37
-#define GL_MAX_PROJECTION_STACK_DEPTH 0x0D38
-#define GL_MAX_TEXTURE_STACK_DEPTH 0x0D39
-#define GL_INDEX_BITS 0x0D51
-#define GL_RED_BITS 0x0D52
-#define GL_GREEN_BITS 0x0D53
-#define GL_BLUE_BITS 0x0D54
-#define GL_ALPHA_BITS 0x0D55
-#define GL_DEPTH_BITS 0x0D56
-#define GL_STENCIL_BITS 0x0D57
-#define GL_ACCUM_RED_BITS 0x0D58
-#define GL_ACCUM_GREEN_BITS 0x0D59
-#define GL_ACCUM_BLUE_BITS 0x0D5A
-#define GL_ACCUM_ALPHA_BITS 0x0D5B
-#define GL_NAME_STACK_DEPTH 0x0D70
-#define GL_AUTO_NORMAL 0x0D80
-#define GL_MAP1_COLOR_4 0x0D90
-#define GL_MAP1_INDEX 0x0D91
-#define GL_MAP1_NORMAL 0x0D92
-#define GL_MAP1_TEXTURE_COORD_1 0x0D93
-#define GL_MAP1_TEXTURE_COORD_2 0x0D94
-#define GL_MAP1_TEXTURE_COORD_3 0x0D95
-#define GL_MAP1_TEXTURE_COORD_4 0x0D96
-#define GL_MAP1_VERTEX_3 0x0D97
-#define GL_MAP1_VERTEX_4 0x0D98
-#define GL_MAP2_COLOR_4 0x0DB0
-#define GL_MAP2_INDEX 0x0DB1
-#define GL_MAP2_NORMAL 0x0DB2
-#define GL_MAP2_TEXTURE_COORD_1 0x0DB3
-#define GL_MAP2_TEXTURE_COORD_2 0x0DB4
-#define GL_MAP2_TEXTURE_COORD_3 0x0DB5
-#define GL_MAP2_TEXTURE_COORD_4 0x0DB6
-#define GL_MAP2_VERTEX_3 0x0DB7
-#define GL_MAP2_VERTEX_4 0x0DB8
-#define GL_MAP1_GRID_DOMAIN 0x0DD0
-#define GL_MAP1_GRID_SEGMENTS 0x0DD1
-#define GL_MAP2_GRID_DOMAIN 0x0DD2
-#define GL_MAP2_GRID_SEGMENTS 0x0DD3
-#define GL_TEXTURE_COMPONENTS 0x1003
-#define GL_TEXTURE_BORDER 0x1005
-#define GL_AMBIENT 0x1200
-#define GL_DIFFUSE 0x1201
-#define GL_SPECULAR 0x1202
-#define GL_POSITION 0x1203
-#define GL_SPOT_DIRECTION 0x1204
-#define GL_SPOT_EXPONENT 0x1205
-#define GL_SPOT_CUTOFF 0x1206
-#define GL_CONSTANT_ATTENUATION 0x1207
-#define GL_LINEAR_ATTENUATION 0x1208
-#define GL_QUADRATIC_ATTENUATION 0x1209
-#define GL_COMPILE 0x1300
-#define GL_COMPILE_AND_EXECUTE 0x1301
-#define GL_2_BYTES 0x1407
-#define GL_3_BYTES 0x1408
-#define GL_4_BYTES 0x1409
-#define GL_EMISSION 0x1600
-#define GL_SHININESS 0x1601
-#define GL_AMBIENT_AND_DIFFUSE 0x1602
-#define GL_COLOR_INDEXES 0x1603
-#define GL_MODELVIEW 0x1700
-#define GL_PROJECTION 0x1701
-#define GL_COLOR_INDEX 0x1900
-#define GL_LUMINANCE 0x1909
-#define GL_LUMINANCE_ALPHA 0x190A
-#define GL_BITMAP 0x1A00
-#define GL_RENDER 0x1C00
-#define GL_FEEDBACK 0x1C01
-#define GL_SELECT 0x1C02
-#define GL_FLAT 0x1D00
-#define GL_SMOOTH 0x1D01
-#define GL_S 0x2000
-#define GL_T 0x2001
-#define GL_R 0x2002
-#define GL_Q 0x2003
-#define GL_MODULATE 0x2100
-#define GL_DECAL 0x2101
-#define GL_TEXTURE_ENV_MODE 0x2200
-#define GL_TEXTURE_ENV_COLOR 0x2201
-#define GL_TEXTURE_ENV 0x2300
-#define GL_EYE_LINEAR 0x2400
-#define GL_OBJECT_LINEAR 0x2401
-#define GL_SPHERE_MAP 0x2402
-#define GL_TEXTURE_GEN_MODE 0x2500
-#define GL_OBJECT_PLANE 0x2501
-#define GL_EYE_PLANE 0x2502
-#define GL_CLAMP 0x2900
-#define GL_CLIP_PLANE0 0x3000
-#define GL_CLIP_PLANE1 0x3001
-#define GL_CLIP_PLANE2 0x3002
-#define GL_CLIP_PLANE3 0x3003
-#define GL_CLIP_PLANE4 0x3004
-#define GL_CLIP_PLANE5 0x3005
-#define GL_LIGHT0 0x4000
-#define GL_LIGHT1 0x4001
-#define GL_LIGHT2 0x4002
-#define GL_LIGHT3 0x4003
-#define GL_LIGHT4 0x4004
-#define GL_LIGHT5 0x4005
-#define GL_LIGHT6 0x4006
-#define GL_LIGHT7 0x4007
-#define GL_COLOR_LOGIC_OP 0x0BF2
-#define GL_POLYGON_OFFSET_UNITS 0x2A00
-#define GL_POLYGON_OFFSET_POINT 0x2A01
-#define GL_POLYGON_OFFSET_LINE 0x2A02
-#define GL_POLYGON_OFFSET_FILL 0x8037
-#define GL_POLYGON_OFFSET_FACTOR 0x8038
-#define GL_TEXTURE_BINDING_1D 0x8068
-#define GL_TEXTURE_BINDING_2D 0x8069
-#define GL_TEXTURE_INTERNAL_FORMAT 0x1003
-#define GL_TEXTURE_RED_SIZE 0x805C
-#define GL_TEXTURE_GREEN_SIZE 0x805D
-#define GL_TEXTURE_BLUE_SIZE 0x805E
-#define GL_TEXTURE_ALPHA_SIZE 0x805F
-#define GL_DOUBLE 0x140A
-#define GL_PROXY_TEXTURE_1D 0x8063
-#define GL_PROXY_TEXTURE_2D 0x8064
-#define GL_R3_G3_B2 0x2A10
-#define GL_RGB4 0x804F
-#define GL_RGB5 0x8050
-#define GL_RGB8 0x8051
-#define GL_RGB10 0x8052
-#define GL_RGB12 0x8053
-#define GL_RGB16 0x8054
-#define GL_RGBA2 0x8055
-#define GL_RGBA4 0x8056
-#define GL_RGB5_A1 0x8057
-#define GL_RGBA8 0x8058
-#define GL_RGB10_A2 0x8059
-#define GL_RGBA12 0x805A
-#define GL_RGBA16 0x805B
-#define GL_CLIENT_PIXEL_STORE_BIT 0x00000001
-#define GL_CLIENT_VERTEX_ARRAY_BIT 0x00000002
-#define GL_CLIENT_ALL_ATTRIB_BITS 0xFFFFFFFF
-#define GL_VERTEX_ARRAY_POINTER 0x808E
-#define GL_NORMAL_ARRAY_POINTER 0x808F
-#define GL_COLOR_ARRAY_POINTER 0x8090
-#define GL_INDEX_ARRAY_POINTER 0x8091
-#define GL_TEXTURE_COORD_ARRAY_POINTER 0x8092
-#define GL_EDGE_FLAG_ARRAY_POINTER 0x8093
-#define GL_FEEDBACK_BUFFER_POINTER 0x0DF0
-#define GL_SELECTION_BUFFER_POINTER 0x0DF3
-#define GL_CLIENT_ATTRIB_STACK_DEPTH 0x0BB1
-#define GL_INDEX_LOGIC_OP 0x0BF1
-#define GL_MAX_CLIENT_ATTRIB_STACK_DEPTH 0x0D3B
-#define GL_FEEDBACK_BUFFER_SIZE 0x0DF1
-#define GL_FEEDBACK_BUFFER_TYPE 0x0DF2
-#define GL_SELECTION_BUFFER_SIZE 0x0DF4
-#define GL_VERTEX_ARRAY 0x8074
-#define GL_NORMAL_ARRAY 0x8075
-#define GL_COLOR_ARRAY 0x8076
-#define GL_INDEX_ARRAY 0x8077
-#define GL_TEXTURE_COORD_ARRAY 0x8078
-#define GL_EDGE_FLAG_ARRAY 0x8079
-#define GL_VERTEX_ARRAY_SIZE 0x807A
-#define GL_VERTEX_ARRAY_TYPE 0x807B
-#define GL_VERTEX_ARRAY_STRIDE 0x807C
-#define GL_NORMAL_ARRAY_TYPE 0x807E
-#define GL_NORMAL_ARRAY_STRIDE 0x807F
-#define GL_COLOR_ARRAY_SIZE 0x8081
-#define GL_COLOR_ARRAY_TYPE 0x8082
-#define GL_COLOR_ARRAY_STRIDE 0x8083
-#define GL_INDEX_ARRAY_TYPE 0x8085
-#define GL_INDEX_ARRAY_STRIDE 0x8086
-#define GL_TEXTURE_COORD_ARRAY_SIZE 0x8088
-#define GL_TEXTURE_COORD_ARRAY_TYPE 0x8089
-#define GL_TEXTURE_COORD_ARRAY_STRIDE 0x808A
-#define GL_EDGE_FLAG_ARRAY_STRIDE 0x808C
-#define GL_TEXTURE_LUMINANCE_SIZE 0x8060
-#define GL_TEXTURE_INTENSITY_SIZE 0x8061
-#define GL_TEXTURE_PRIORITY 0x8066
-#define GL_TEXTURE_RESIDENT 0x8067
-#define GL_ALPHA4 0x803B
-#define GL_ALPHA8 0x803C
-#define GL_ALPHA12 0x803D
-#define GL_ALPHA16 0x803E
-#define GL_LUMINANCE4 0x803F
-#define GL_LUMINANCE8 0x8040
-#define GL_LUMINANCE12 0x8041
-#define GL_LUMINANCE16 0x8042
-#define GL_LUMINANCE4_ALPHA4 0x8043
-#define GL_LUMINANCE6_ALPHA2 0x8044
-#define GL_LUMINANCE8_ALPHA8 0x8045
-#define GL_LUMINANCE12_ALPHA4 0x8046
-#define GL_LUMINANCE12_ALPHA12 0x8047
-#define GL_LUMINANCE16_ALPHA16 0x8048
-#define GL_INTENSITY 0x8049
-#define GL_INTENSITY4 0x804A
-#define GL_INTENSITY8 0x804B
-#define GL_INTENSITY12 0x804C
-#define GL_INTENSITY16 0x804D
-#define GL_V2F 0x2A20
-#define GL_V3F 0x2A21
-#define GL_C4UB_V2F 0x2A22
-#define GL_C4UB_V3F 0x2A23
-#define GL_C3F_V3F 0x2A24
-#define GL_N3F_V3F 0x2A25
-#define GL_C4F_N3F_V3F 0x2A26
-#define GL_T2F_V3F 0x2A27
-#define GL_T4F_V4F 0x2A28
-#define GL_T2F_C4UB_V3F 0x2A29
-#define GL_T2F_C3F_V3F 0x2A2A
-#define GL_T2F_N3F_V3F 0x2A2B
-#define GL_T2F_C4F_N3F_V3F 0x2A2C
-#define GL_T4F_C4F_N3F_V4F 0x2A2D
-#define GL_UNSIGNED_BYTE_3_3_2 0x8032
-#define GL_UNSIGNED_SHORT_4_4_4_4 0x8033
-#define GL_UNSIGNED_SHORT_5_5_5_1 0x8034
-#define GL_UNSIGNED_INT_8_8_8_8 0x8035
-#define GL_UNSIGNED_INT_10_10_10_2 0x8036
-#define GL_TEXTURE_BINDING_3D 0x806A
-#define GL_PACK_SKIP_IMAGES 0x806B
-#define GL_PACK_IMAGE_HEIGHT 0x806C
-#define GL_UNPACK_SKIP_IMAGES 0x806D
-#define GL_UNPACK_IMAGE_HEIGHT 0x806E
-#define GL_TEXTURE_3D 0x806F
-#define GL_PROXY_TEXTURE_3D 0x8070
-#define GL_TEXTURE_DEPTH 0x8071
-#define GL_TEXTURE_WRAP_R 0x8072
-#define GL_MAX_3D_TEXTURE_SIZE 0x8073
-#define GL_UNSIGNED_BYTE_2_3_3_REV 0x8362
-#define GL_UNSIGNED_SHORT_5_6_5 0x8363
-#define GL_UNSIGNED_SHORT_5_6_5_REV 0x8364
-#define GL_UNSIGNED_SHORT_4_4_4_4_REV 0x8365
-#define GL_UNSIGNED_SHORT_1_5_5_5_REV 0x8366
-#define GL_UNSIGNED_INT_8_8_8_8_REV 0x8367
-#define GL_UNSIGNED_INT_2_10_10_10_REV 0x8368
-#define GL_BGR 0x80E0
-#define GL_BGRA 0x80E1
-#define GL_MAX_ELEMENTS_VERTICES 0x80E8
-#define GL_MAX_ELEMENTS_INDICES 0x80E9
-#define GL_CLAMP_TO_EDGE 0x812F
-#define GL_TEXTURE_MIN_LOD 0x813A
-#define GL_TEXTURE_MAX_LOD 0x813B
-#define GL_TEXTURE_BASE_LEVEL 0x813C
-#define GL_TEXTURE_MAX_LEVEL 0x813D
-#define GL_SMOOTH_POINT_SIZE_RANGE 0x0B12
-#define GL_SMOOTH_POINT_SIZE_GRANULARITY 0x0B13
-#define GL_SMOOTH_LINE_WIDTH_RANGE 0x0B22
-#define GL_SMOOTH_LINE_WIDTH_GRANULARITY 0x0B23
-#define GL_ALIASED_LINE_WIDTH_RANGE 0x846E
-#define GL_RESCALE_NORMAL 0x803A
-#define GL_LIGHT_MODEL_COLOR_CONTROL 0x81F8
-#define GL_SINGLE_COLOR 0x81F9
-#define GL_SEPARATE_SPECULAR_COLOR 0x81FA
-#define GL_ALIASED_POINT_SIZE_RANGE 0x846D
-#define GL_TEXTURE0 0x84C0
-#define GL_TEXTURE1 0x84C1
-#define GL_TEXTURE2 0x84C2
-#define GL_TEXTURE3 0x84C3
-#define GL_TEXTURE4 0x84C4
-#define GL_TEXTURE5 0x84C5
-#define GL_TEXTURE6 0x84C6
-#define GL_TEXTURE7 0x84C7
-#define GL_TEXTURE8 0x84C8
-#define GL_TEXTURE9 0x84C9
-#define GL_TEXTURE10 0x84CA
-#define GL_TEXTURE11 0x84CB
-#define GL_TEXTURE12 0x84CC
-#define GL_TEXTURE13 0x84CD
-#define GL_TEXTURE14 0x84CE
-#define GL_TEXTURE15 0x84CF
-#define GL_TEXTURE16 0x84D0
-#define GL_TEXTURE17 0x84D1
-#define GL_TEXTURE18 0x84D2
-#define GL_TEXTURE19 0x84D3
-#define GL_TEXTURE20 0x84D4
-#define GL_TEXTURE21 0x84D5
-#define GL_TEXTURE22 0x84D6
-#define GL_TEXTURE23 0x84D7
-#define GL_TEXTURE24 0x84D8
-#define GL_TEXTURE25 0x84D9
-#define GL_TEXTURE26 0x84DA
-#define GL_TEXTURE27 0x84DB
-#define GL_TEXTURE28 0x84DC
-#define GL_TEXTURE29 0x84DD
-#define GL_TEXTURE30 0x84DE
-#define GL_TEXTURE31 0x84DF
-#define GL_ACTIVE_TEXTURE 0x84E0
-#define GL_MULTISAMPLE 0x809D
-#define GL_SAMPLE_ALPHA_TO_COVERAGE 0x809E
-#define GL_SAMPLE_ALPHA_TO_ONE 0x809F
-#define GL_SAMPLE_COVERAGE 0x80A0
-#define GL_SAMPLE_BUFFERS 0x80A8
-#define GL_SAMPLES 0x80A9
-#define GL_SAMPLE_COVERAGE_VALUE 0x80AA
-#define GL_SAMPLE_COVERAGE_INVERT 0x80AB
-#define GL_TEXTURE_CUBE_MAP 0x8513
-#define GL_TEXTURE_BINDING_CUBE_MAP 0x8514
-#define GL_TEXTURE_CUBE_MAP_POSITIVE_X 0x8515
-#define GL_TEXTURE_CUBE_MAP_NEGATIVE_X 0x8516
-#define GL_TEXTURE_CUBE_MAP_POSITIVE_Y 0x8517
-#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y 0x8518
-#define GL_TEXTURE_CUBE_MAP_POSITIVE_Z 0x8519
-#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z 0x851A
-#define GL_PROXY_TEXTURE_CUBE_MAP 0x851B
-#define GL_MAX_CUBE_MAP_TEXTURE_SIZE 0x851C
-#define GL_COMPRESSED_RGB 0x84ED
-#define GL_COMPRESSED_RGBA 0x84EE
-#define GL_TEXTURE_COMPRESSION_HINT 0x84EF
-#define GL_TEXTURE_COMPRESSED_IMAGE_SIZE 0x86A0
-#define GL_TEXTURE_COMPRESSED 0x86A1
-#define GL_NUM_COMPRESSED_TEXTURE_FORMATS 0x86A2
-#define GL_COMPRESSED_TEXTURE_FORMATS 0x86A3
-#define GL_CLAMP_TO_BORDER 0x812D
-#define GL_CLIENT_ACTIVE_TEXTURE 0x84E1
-#define GL_MAX_TEXTURE_UNITS 0x84E2
-#define GL_TRANSPOSE_MODELVIEW_MATRIX 0x84E3
-#define GL_TRANSPOSE_PROJECTION_MATRIX 0x84E4
-#define GL_TRANSPOSE_TEXTURE_MATRIX 0x84E5
-#define GL_TRANSPOSE_COLOR_MATRIX 0x84E6
-#define GL_MULTISAMPLE_BIT 0x20000000
-#define GL_NORMAL_MAP 0x8511
-#define GL_REFLECTION_MAP 0x8512
-#define GL_COMPRESSED_ALPHA 0x84E9
-#define GL_COMPRESSED_LUMINANCE 0x84EA
-#define GL_COMPRESSED_LUMINANCE_ALPHA 0x84EB
-#define GL_COMPRESSED_INTENSITY 0x84EC
-#define GL_COMBINE 0x8570
-#define GL_COMBINE_RGB 0x8571
-#define GL_COMBINE_ALPHA 0x8572
-#define GL_SOURCE0_RGB 0x8580
-#define GL_SOURCE1_RGB 0x8581
-#define GL_SOURCE2_RGB 0x8582
-#define GL_SOURCE0_ALPHA 0x8588
-#define GL_SOURCE1_ALPHA 0x8589
-#define GL_SOURCE2_ALPHA 0x858A
-#define GL_OPERAND0_RGB 0x8590
-#define GL_OPERAND1_RGB 0x8591
-#define GL_OPERAND2_RGB 0x8592
-#define GL_OPERAND0_ALPHA 0x8598
-#define GL_OPERAND1_ALPHA 0x8599
-#define GL_OPERAND2_ALPHA 0x859A
-#define GL_RGB_SCALE 0x8573
-#define GL_ADD_SIGNED 0x8574
-#define GL_INTERPOLATE 0x8575
-#define GL_SUBTRACT 0x84E7
-#define GL_CONSTANT 0x8576
-#define GL_PRIMARY_COLOR 0x8577
-#define GL_PREVIOUS 0x8578
-#define GL_DOT3_RGB 0x86AE
-#define GL_DOT3_RGBA 0x86AF
-#define GL_BLEND_DST_RGB 0x80C8
-#define GL_BLEND_SRC_RGB 0x80C9
-#define GL_BLEND_DST_ALPHA 0x80CA
-#define GL_BLEND_SRC_ALPHA 0x80CB
-#define GL_POINT_FADE_THRESHOLD_SIZE 0x8128
-#define GL_DEPTH_COMPONENT16 0x81A5
-#define GL_DEPTH_COMPONENT24 0x81A6
-#define GL_DEPTH_COMPONENT32 0x81A7
-#define GL_MIRRORED_REPEAT 0x8370
-#define GL_MAX_TEXTURE_LOD_BIAS 0x84FD
-#define GL_TEXTURE_LOD_BIAS 0x8501
-#define GL_INCR_WRAP 0x8507
-#define GL_DECR_WRAP 0x8508
-#define GL_TEXTURE_DEPTH_SIZE 0x884A
-#define GL_TEXTURE_COMPARE_MODE 0x884C
-#define GL_TEXTURE_COMPARE_FUNC 0x884D
-#define GL_POINT_SIZE_MIN 0x8126
-#define GL_POINT_SIZE_MAX 0x8127
-#define GL_POINT_DISTANCE_ATTENUATION 0x8129
-#define GL_GENERATE_MIPMAP 0x8191
-#define GL_GENERATE_MIPMAP_HINT 0x8192
-#define GL_FOG_COORDINATE_SOURCE 0x8450
-#define GL_FOG_COORDINATE 0x8451
-#define GL_FRAGMENT_DEPTH 0x8452
-#define GL_CURRENT_FOG_COORDINATE 0x8453
-#define GL_FOG_COORDINATE_ARRAY_TYPE 0x8454
-#define GL_FOG_COORDINATE_ARRAY_STRIDE 0x8455
-#define GL_FOG_COORDINATE_ARRAY_POINTER 0x8456
-#define GL_FOG_COORDINATE_ARRAY 0x8457
-#define GL_COLOR_SUM 0x8458
-#define GL_CURRENT_SECONDARY_COLOR 0x8459
-#define GL_SECONDARY_COLOR_ARRAY_SIZE 0x845A
-#define GL_SECONDARY_COLOR_ARRAY_TYPE 0x845B
-#define GL_SECONDARY_COLOR_ARRAY_STRIDE 0x845C
-#define GL_SECONDARY_COLOR_ARRAY_POINTER 0x845D
-#define GL_SECONDARY_COLOR_ARRAY 0x845E
-#define GL_TEXTURE_FILTER_CONTROL 0x8500
-#define GL_DEPTH_TEXTURE_MODE 0x884B
-#define GL_COMPARE_R_TO_TEXTURE 0x884E
-#define GL_BLEND_COLOR 0x8005
-#define GL_BLEND_EQUATION 0x8009
-#define GL_CONSTANT_COLOR 0x8001
-#define GL_ONE_MINUS_CONSTANT_COLOR 0x8002
-#define GL_CONSTANT_ALPHA 0x8003
-#define GL_ONE_MINUS_CONSTANT_ALPHA 0x8004
-#define GL_FUNC_ADD 0x8006
-#define GL_FUNC_REVERSE_SUBTRACT 0x800B
-#define GL_FUNC_SUBTRACT 0x800A
-#define GL_MIN 0x8007
-#define GL_MAX 0x8008
-#define GL_BUFFER_SIZE 0x8764
-#define GL_BUFFER_USAGE 0x8765
-#define GL_QUERY_COUNTER_BITS 0x8864
-#define GL_CURRENT_QUERY 0x8865
-#define GL_QUERY_RESULT 0x8866
-#define GL_QUERY_RESULT_AVAILABLE 0x8867
-#define GL_ARRAY_BUFFER 0x8892
-#define GL_ELEMENT_ARRAY_BUFFER 0x8893
-#define GL_ARRAY_BUFFER_BINDING 0x8894
-#define GL_ELEMENT_ARRAY_BUFFER_BINDING 0x8895
-#define GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING 0x889F
-#define GL_READ_ONLY 0x88B8
-#define GL_WRITE_ONLY 0x88B9
-#define GL_READ_WRITE 0x88BA
-#define GL_BUFFER_ACCESS 0x88BB
-#define GL_BUFFER_MAPPED 0x88BC
-#define GL_BUFFER_MAP_POINTER 0x88BD
-#define GL_STREAM_DRAW 0x88E0
-#define GL_STREAM_READ 0x88E1
-#define GL_STREAM_COPY 0x88E2
-#define GL_STATIC_DRAW 0x88E4
-#define GL_STATIC_READ 0x88E5
-#define GL_STATIC_COPY 0x88E6
-#define GL_DYNAMIC_DRAW 0x88E8
-#define GL_DYNAMIC_READ 0x88E9
-#define GL_DYNAMIC_COPY 0x88EA
-#define GL_SAMPLES_PASSED 0x8914
-#define GL_SRC1_ALPHA 0x8589
-#define GL_VERTEX_ARRAY_BUFFER_BINDING 0x8896
-#define GL_NORMAL_ARRAY_BUFFER_BINDING 0x8897
-#define GL_COLOR_ARRAY_BUFFER_BINDING 0x8898
-#define GL_INDEX_ARRAY_BUFFER_BINDING 0x8899
-#define GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING 0x889A
-#define GL_EDGE_FLAG_ARRAY_BUFFER_BINDING 0x889B
-#define GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING 0x889C
-#define GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING 0x889D
-#define GL_WEIGHT_ARRAY_BUFFER_BINDING 0x889E
-#define GL_FOG_COORD_SRC 0x8450
-#define GL_FOG_COORD 0x8451
-#define GL_CURRENT_FOG_COORD 0x8453
-#define GL_FOG_COORD_ARRAY_TYPE 0x8454
-#define GL_FOG_COORD_ARRAY_STRIDE 0x8455
-#define GL_FOG_COORD_ARRAY_POINTER 0x8456
-#define GL_FOG_COORD_ARRAY 0x8457
-#define GL_FOG_COORD_ARRAY_BUFFER_BINDING 0x889D
-#define GL_SRC0_RGB 0x8580
-#define GL_SRC1_RGB 0x8581
-#define GL_SRC2_RGB 0x8582
-#define GL_SRC0_ALPHA 0x8588
-#define GL_SRC2_ALPHA 0x858A
-#define GL_BLEND_EQUATION_RGB 0x8009
-#define GL_VERTEX_ATTRIB_ARRAY_ENABLED 0x8622
-#define GL_VERTEX_ATTRIB_ARRAY_SIZE 0x8623
-#define GL_VERTEX_ATTRIB_ARRAY_STRIDE 0x8624
-#define GL_VERTEX_ATTRIB_ARRAY_TYPE 0x8625
-#define GL_CURRENT_VERTEX_ATTRIB 0x8626
-#define GL_VERTEX_PROGRAM_POINT_SIZE 0x8642
-#define GL_VERTEX_ATTRIB_ARRAY_POINTER 0x8645
-#define GL_STENCIL_BACK_FUNC 0x8800
-#define GL_STENCIL_BACK_FAIL 0x8801
-#define GL_STENCIL_BACK_PASS_DEPTH_FAIL 0x8802
-#define GL_STENCIL_BACK_PASS_DEPTH_PASS 0x8803
-#define GL_MAX_DRAW_BUFFERS 0x8824
-#define GL_DRAW_BUFFER0 0x8825
-#define GL_DRAW_BUFFER1 0x8826
-#define GL_DRAW_BUFFER2 0x8827
-#define GL_DRAW_BUFFER3 0x8828
-#define GL_DRAW_BUFFER4 0x8829
-#define GL_DRAW_BUFFER5 0x882A
-#define GL_DRAW_BUFFER6 0x882B
-#define GL_DRAW_BUFFER7 0x882C
-#define GL_DRAW_BUFFER8 0x882D
-#define GL_DRAW_BUFFER9 0x882E
-#define GL_DRAW_BUFFER10 0x882F
-#define GL_DRAW_BUFFER11 0x8830
-#define GL_DRAW_BUFFER12 0x8831
-#define GL_DRAW_BUFFER13 0x8832
-#define GL_DRAW_BUFFER14 0x8833
-#define GL_DRAW_BUFFER15 0x8834
-#define GL_BLEND_EQUATION_ALPHA 0x883D
-#define GL_MAX_VERTEX_ATTRIBS 0x8869
-#define GL_VERTEX_ATTRIB_ARRAY_NORMALIZED 0x886A
-#define GL_MAX_TEXTURE_IMAGE_UNITS 0x8872
-#define GL_FRAGMENT_SHADER 0x8B30
-#define GL_VERTEX_SHADER 0x8B31
-#define GL_MAX_FRAGMENT_UNIFORM_COMPONENTS 0x8B49
-#define GL_MAX_VERTEX_UNIFORM_COMPONENTS 0x8B4A
-#define GL_MAX_VARYING_FLOATS 0x8B4B
-#define GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS 0x8B4C
-#define GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS 0x8B4D
-#define GL_SHADER_TYPE 0x8B4F
-#define GL_FLOAT_VEC2 0x8B50
-#define GL_FLOAT_VEC3 0x8B51
-#define GL_FLOAT_VEC4 0x8B52
-#define GL_INT_VEC2 0x8B53
-#define GL_INT_VEC3 0x8B54
-#define GL_INT_VEC4 0x8B55
-#define GL_BOOL 0x8B56
-#define GL_BOOL_VEC2 0x8B57
-#define GL_BOOL_VEC3 0x8B58
-#define GL_BOOL_VEC4 0x8B59
-#define GL_FLOAT_MAT2 0x8B5A
-#define GL_FLOAT_MAT3 0x8B5B
-#define GL_FLOAT_MAT4 0x8B5C
-#define GL_SAMPLER_1D 0x8B5D
-#define GL_SAMPLER_2D 0x8B5E
-#define GL_SAMPLER_3D 0x8B5F
-#define GL_SAMPLER_CUBE 0x8B60
-#define GL_SAMPLER_1D_SHADOW 0x8B61
-#define GL_SAMPLER_2D_SHADOW 0x8B62
-#define GL_DELETE_STATUS 0x8B80
-#define GL_COMPILE_STATUS 0x8B81
-#define GL_LINK_STATUS 0x8B82
-#define GL_VALIDATE_STATUS 0x8B83
-#define GL_INFO_LOG_LENGTH 0x8B84
-#define GL_ATTACHED_SHADERS 0x8B85
-#define GL_ACTIVE_UNIFORMS 0x8B86
-#define GL_ACTIVE_UNIFORM_MAX_LENGTH 0x8B87
-#define GL_SHADER_SOURCE_LENGTH 0x8B88
-#define GL_ACTIVE_ATTRIBUTES 0x8B89
-#define GL_ACTIVE_ATTRIBUTE_MAX_LENGTH 0x8B8A
-#define GL_FRAGMENT_SHADER_DERIVATIVE_HINT 0x8B8B
-#define GL_SHADING_LANGUAGE_VERSION 0x8B8C
-#define GL_CURRENT_PROGRAM 0x8B8D
-#define GL_POINT_SPRITE_COORD_ORIGIN 0x8CA0
-#define GL_LOWER_LEFT 0x8CA1
-#define GL_UPPER_LEFT 0x8CA2
-#define GL_STENCIL_BACK_REF 0x8CA3
-#define GL_STENCIL_BACK_VALUE_MASK 0x8CA4
-#define GL_STENCIL_BACK_WRITEMASK 0x8CA5
-#define GL_VERTEX_PROGRAM_TWO_SIDE 0x8643
-#define GL_POINT_SPRITE 0x8861
-#define GL_COORD_REPLACE 0x8862
-#define GL_MAX_TEXTURE_COORDS 0x8871
-#define GL_PIXEL_PACK_BUFFER 0x88EB
-#define GL_PIXEL_UNPACK_BUFFER 0x88EC
-#define GL_PIXEL_PACK_BUFFER_BINDING 0x88ED
-#define GL_PIXEL_UNPACK_BUFFER_BINDING 0x88EF
-#define GL_FLOAT_MAT2x3 0x8B65
-#define GL_FLOAT_MAT2x4 0x8B66
-#define GL_FLOAT_MAT3x2 0x8B67
-#define GL_FLOAT_MAT3x4 0x8B68
-#define GL_FLOAT_MAT4x2 0x8B69
-#define GL_FLOAT_MAT4x3 0x8B6A
-#define GL_SRGB 0x8C40
-#define GL_SRGB8 0x8C41
-#define GL_SRGB_ALPHA 0x8C42
-#define GL_SRGB8_ALPHA8 0x8C43
-#define GL_COMPRESSED_SRGB 0x8C48
-#define GL_COMPRESSED_SRGB_ALPHA 0x8C49
-#define GL_CURRENT_RASTER_SECONDARY_COLOR 0x845F
-#define GL_SLUMINANCE_ALPHA 0x8C44
-#define GL_SLUMINANCE8_ALPHA8 0x8C45
-#define GL_SLUMINANCE 0x8C46
-#define GL_SLUMINANCE8 0x8C47
-#define GL_COMPRESSED_SLUMINANCE 0x8C4A
-#define GL_COMPRESSED_SLUMINANCE_ALPHA 0x8C4B
-#define GL_COMPARE_REF_TO_TEXTURE 0x884E
-#define GL_CLIP_DISTANCE0 0x3000
-#define GL_CLIP_DISTANCE1 0x3001
-#define GL_CLIP_DISTANCE2 0x3002
-#define GL_CLIP_DISTANCE3 0x3003
-#define GL_CLIP_DISTANCE4 0x3004
-#define GL_CLIP_DISTANCE5 0x3005
-#define GL_CLIP_DISTANCE6 0x3006
-#define GL_CLIP_DISTANCE7 0x3007
-#define GL_MAX_CLIP_DISTANCES 0x0D32
-#define GL_MAJOR_VERSION 0x821B
-#define GL_MINOR_VERSION 0x821C
-#define GL_NUM_EXTENSIONS 0x821D
-#define GL_CONTEXT_FLAGS 0x821E
-#define GL_COMPRESSED_RED 0x8225
-#define GL_COMPRESSED_RG 0x8226
-#define GL_CONTEXT_FLAG_FORWARD_COMPATIBLE_BIT 0x00000001
-#define GL_RGBA32F 0x8814
-#define GL_RGB32F 0x8815
-#define GL_RGBA16F 0x881A
-#define GL_RGB16F 0x881B
-#define GL_VERTEX_ATTRIB_ARRAY_INTEGER 0x88FD
-#define GL_MAX_ARRAY_TEXTURE_LAYERS 0x88FF
-#define GL_MIN_PROGRAM_TEXEL_OFFSET 0x8904
-#define GL_MAX_PROGRAM_TEXEL_OFFSET 0x8905
-#define GL_CLAMP_READ_COLOR 0x891C
-#define GL_FIXED_ONLY 0x891D
-#define GL_MAX_VARYING_COMPONENTS 0x8B4B
-#define GL_TEXTURE_1D_ARRAY 0x8C18
-#define GL_PROXY_TEXTURE_1D_ARRAY 0x8C19
-#define GL_TEXTURE_2D_ARRAY 0x8C1A
-#define GL_PROXY_TEXTURE_2D_ARRAY 0x8C1B
-#define GL_TEXTURE_BINDING_1D_ARRAY 0x8C1C
-#define GL_TEXTURE_BINDING_2D_ARRAY 0x8C1D
-#define GL_R11F_G11F_B10F 0x8C3A
-#define GL_UNSIGNED_INT_10F_11F_11F_REV 0x8C3B
-#define GL_RGB9_E5 0x8C3D
-#define GL_UNSIGNED_INT_5_9_9_9_REV 0x8C3E
-#define GL_TEXTURE_SHARED_SIZE 0x8C3F
-#define GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH 0x8C76
-#define GL_TRANSFORM_FEEDBACK_BUFFER_MODE 0x8C7F
-#define GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS 0x8C80
-#define GL_TRANSFORM_FEEDBACK_VARYINGS 0x8C83
-#define GL_TRANSFORM_FEEDBACK_BUFFER_START 0x8C84
-#define GL_TRANSFORM_FEEDBACK_BUFFER_SIZE 0x8C85
-#define GL_PRIMITIVES_GENERATED 0x8C87
-#define GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN 0x8C88
-#define GL_RASTERIZER_DISCARD 0x8C89
-#define GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS 0x8C8A
-#define GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS 0x8C8B
-#define GL_INTERLEAVED_ATTRIBS 0x8C8C
-#define GL_SEPARATE_ATTRIBS 0x8C8D
-#define GL_TRANSFORM_FEEDBACK_BUFFER 0x8C8E
-#define GL_TRANSFORM_FEEDBACK_BUFFER_BINDING 0x8C8F
-#define GL_RGBA32UI 0x8D70
-#define GL_RGB32UI 0x8D71
-#define GL_RGBA16UI 0x8D76
-#define GL_RGB16UI 0x8D77
-#define GL_RGBA8UI 0x8D7C
-#define GL_RGB8UI 0x8D7D
-#define GL_RGBA32I 0x8D82
-#define GL_RGB32I 0x8D83
-#define GL_RGBA16I 0x8D88
-#define GL_RGB16I 0x8D89
-#define GL_RGBA8I 0x8D8E
-#define GL_RGB8I 0x8D8F
-#define GL_RED_INTEGER 0x8D94
-#define GL_GREEN_INTEGER 0x8D95
-#define GL_BLUE_INTEGER 0x8D96
-#define GL_RGB_INTEGER 0x8D98
-#define GL_RGBA_INTEGER 0x8D99
-#define GL_BGR_INTEGER 0x8D9A
-#define GL_BGRA_INTEGER 0x8D9B
-#define GL_SAMPLER_1D_ARRAY 0x8DC0
-#define GL_SAMPLER_2D_ARRAY 0x8DC1
-#define GL_SAMPLER_1D_ARRAY_SHADOW 0x8DC3
-#define GL_SAMPLER_2D_ARRAY_SHADOW 0x8DC4
-#define GL_SAMPLER_CUBE_SHADOW 0x8DC5
-#define GL_UNSIGNED_INT_VEC2 0x8DC6
-#define GL_UNSIGNED_INT_VEC3 0x8DC7
-#define GL_UNSIGNED_INT_VEC4 0x8DC8
-#define GL_INT_SAMPLER_1D 0x8DC9
-#define GL_INT_SAMPLER_2D 0x8DCA
-#define GL_INT_SAMPLER_3D 0x8DCB
-#define GL_INT_SAMPLER_CUBE 0x8DCC
-#define GL_INT_SAMPLER_1D_ARRAY 0x8DCE
-#define GL_INT_SAMPLER_2D_ARRAY 0x8DCF
-#define GL_UNSIGNED_INT_SAMPLER_1D 0x8DD1
-#define GL_UNSIGNED_INT_SAMPLER_2D 0x8DD2
-#define GL_UNSIGNED_INT_SAMPLER_3D 0x8DD3
-#define GL_UNSIGNED_INT_SAMPLER_CUBE 0x8DD4
-#define GL_UNSIGNED_INT_SAMPLER_1D_ARRAY 0x8DD6
-#define GL_UNSIGNED_INT_SAMPLER_2D_ARRAY 0x8DD7
-#define GL_QUERY_WAIT 0x8E13
-#define GL_QUERY_NO_WAIT 0x8E14
-#define GL_QUERY_BY_REGION_WAIT 0x8E15
-#define GL_QUERY_BY_REGION_NO_WAIT 0x8E16
-#define GL_BUFFER_ACCESS_FLAGS 0x911F
-#define GL_BUFFER_MAP_LENGTH 0x9120
-#define GL_BUFFER_MAP_OFFSET 0x9121
-#define GL_DEPTH_COMPONENT32F 0x8CAC
-#define GL_DEPTH32F_STENCIL8 0x8CAD
-#define GL_FLOAT_32_UNSIGNED_INT_24_8_REV 0x8DAD
-#define GL_INVALID_FRAMEBUFFER_OPERATION 0x0506
-#define GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING 0x8210
-#define GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE 0x8211
-#define GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE 0x8212
-#define GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE 0x8213
-#define GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE 0x8214
-#define GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE 0x8215
-#define GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE 0x8216
-#define GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE 0x8217
-#define GL_FRAMEBUFFER_DEFAULT 0x8218
-#define GL_FRAMEBUFFER_UNDEFINED 0x8219
-#define GL_DEPTH_STENCIL_ATTACHMENT 0x821A
-#define GL_MAX_RENDERBUFFER_SIZE 0x84E8
-#define GL_DEPTH_STENCIL 0x84F9
-#define GL_UNSIGNED_INT_24_8 0x84FA
-#define GL_DEPTH24_STENCIL8 0x88F0
-#define GL_TEXTURE_STENCIL_SIZE 0x88F1
-#define GL_TEXTURE_RED_TYPE 0x8C10
-#define GL_TEXTURE_GREEN_TYPE 0x8C11
-#define GL_TEXTURE_BLUE_TYPE 0x8C12
-#define GL_TEXTURE_ALPHA_TYPE 0x8C13
-#define GL_TEXTURE_DEPTH_TYPE 0x8C16
-#define GL_UNSIGNED_NORMALIZED 0x8C17
-#define GL_FRAMEBUFFER_BINDING 0x8CA6
-#define GL_DRAW_FRAMEBUFFER_BINDING 0x8CA6
-#define GL_RENDERBUFFER_BINDING 0x8CA7
-#define GL_READ_FRAMEBUFFER 0x8CA8
-#define GL_DRAW_FRAMEBUFFER 0x8CA9
-#define GL_READ_FRAMEBUFFER_BINDING 0x8CAA
-#define GL_RENDERBUFFER_SAMPLES 0x8CAB
-#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE 0x8CD0
-#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME 0x8CD1
-#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL 0x8CD2
-#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE 0x8CD3
-#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER 0x8CD4
-#define GL_FRAMEBUFFER_COMPLETE 0x8CD5
-#define GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT 0x8CD6
-#define GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT 0x8CD7
-#define GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER 0x8CDB
-#define GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER 0x8CDC
-#define GL_FRAMEBUFFER_UNSUPPORTED 0x8CDD
-#define GL_MAX_COLOR_ATTACHMENTS 0x8CDF
-#define GL_COLOR_ATTACHMENT0 0x8CE0
-#define GL_COLOR_ATTACHMENT1 0x8CE1
-#define GL_COLOR_ATTACHMENT2 0x8CE2
-#define GL_COLOR_ATTACHMENT3 0x8CE3
-#define GL_COLOR_ATTACHMENT4 0x8CE4
-#define GL_COLOR_ATTACHMENT5 0x8CE5
-#define GL_COLOR_ATTACHMENT6 0x8CE6
-#define GL_COLOR_ATTACHMENT7 0x8CE7
-#define GL_COLOR_ATTACHMENT8 0x8CE8
-#define GL_COLOR_ATTACHMENT9 0x8CE9
-#define GL_COLOR_ATTACHMENT10 0x8CEA
-#define GL_COLOR_ATTACHMENT11 0x8CEB
-#define GL_COLOR_ATTACHMENT12 0x8CEC
-#define GL_COLOR_ATTACHMENT13 0x8CED
-#define GL_COLOR_ATTACHMENT14 0x8CEE
-#define GL_COLOR_ATTACHMENT15 0x8CEF
-#define GL_COLOR_ATTACHMENT16 0x8CF0
-#define GL_COLOR_ATTACHMENT17 0x8CF1
-#define GL_COLOR_ATTACHMENT18 0x8CF2
-#define GL_COLOR_ATTACHMENT19 0x8CF3
-#define GL_COLOR_ATTACHMENT20 0x8CF4
-#define GL_COLOR_ATTACHMENT21 0x8CF5
-#define GL_COLOR_ATTACHMENT22 0x8CF6
-#define GL_COLOR_ATTACHMENT23 0x8CF7
-#define GL_COLOR_ATTACHMENT24 0x8CF8
-#define GL_COLOR_ATTACHMENT25 0x8CF9
-#define GL_COLOR_ATTACHMENT26 0x8CFA
-#define GL_COLOR_ATTACHMENT27 0x8CFB
-#define GL_COLOR_ATTACHMENT28 0x8CFC
-#define GL_COLOR_ATTACHMENT29 0x8CFD
-#define GL_COLOR_ATTACHMENT30 0x8CFE
-#define GL_COLOR_ATTACHMENT31 0x8CFF
-#define GL_DEPTH_ATTACHMENT 0x8D00
-#define GL_STENCIL_ATTACHMENT 0x8D20
-#define GL_FRAMEBUFFER 0x8D40
-#define GL_RENDERBUFFER 0x8D41
-#define GL_RENDERBUFFER_WIDTH 0x8D42
-#define GL_RENDERBUFFER_HEIGHT 0x8D43
-#define GL_RENDERBUFFER_INTERNAL_FORMAT 0x8D44
-#define GL_STENCIL_INDEX1 0x8D46
-#define GL_STENCIL_INDEX4 0x8D47
-#define GL_STENCIL_INDEX8 0x8D48
-#define GL_STENCIL_INDEX16 0x8D49
-#define GL_RENDERBUFFER_RED_SIZE 0x8D50
-#define GL_RENDERBUFFER_GREEN_SIZE 0x8D51
-#define GL_RENDERBUFFER_BLUE_SIZE 0x8D52
-#define GL_RENDERBUFFER_ALPHA_SIZE 0x8D53
-#define GL_RENDERBUFFER_DEPTH_SIZE 0x8D54
-#define GL_RENDERBUFFER_STENCIL_SIZE 0x8D55
-#define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE 0x8D56
-#define GL_MAX_SAMPLES 0x8D57
-#define GL_INDEX 0x8222
-#define GL_TEXTURE_LUMINANCE_TYPE 0x8C14
-#define GL_TEXTURE_INTENSITY_TYPE 0x8C15
-#define GL_FRAMEBUFFER_SRGB 0x8DB9
-#define GL_HALF_FLOAT 0x140B
-#define GL_MAP_READ_BIT 0x0001
-#define GL_MAP_WRITE_BIT 0x0002
-#define GL_MAP_INVALIDATE_RANGE_BIT 0x0004
-#define GL_MAP_INVALIDATE_BUFFER_BIT 0x0008
-#define GL_MAP_FLUSH_EXPLICIT_BIT 0x0010
-#define GL_MAP_UNSYNCHRONIZED_BIT 0x0020
-#define GL_COMPRESSED_RED_RGTC1 0x8DBB
-#define GL_COMPRESSED_SIGNED_RED_RGTC1 0x8DBC
-#define GL_COMPRESSED_RG_RGTC2 0x8DBD
-#define GL_COMPRESSED_SIGNED_RG_RGTC2 0x8DBE
-#define GL_RG 0x8227
-#define GL_RG_INTEGER 0x8228
-#define GL_R8 0x8229
-#define GL_R16 0x822A
-#define GL_RG8 0x822B
-#define GL_RG16 0x822C
-#define GL_R16F 0x822D
-#define GL_R32F 0x822E
-#define GL_RG16F 0x822F
-#define GL_RG32F 0x8230
-#define GL_R8I 0x8231
-#define GL_R8UI 0x8232
-#define GL_R16I 0x8233
-#define GL_R16UI 0x8234
-#define GL_R32I 0x8235
-#define GL_R32UI 0x8236
-#define GL_RG8I 0x8237
-#define GL_RG8UI 0x8238
-#define GL_RG16I 0x8239
-#define GL_RG16UI 0x823A
-#define GL_RG32I 0x823B
-#define GL_RG32UI 0x823C
-#define GL_VERTEX_ARRAY_BINDING 0x85B5
-#define GL_CLAMP_VERTEX_COLOR 0x891A
-#define GL_CLAMP_FRAGMENT_COLOR 0x891B
-#define GL_ALPHA_INTEGER 0x8D97
-#define GL_SAMPLER_2D_RECT 0x8B63
-#define GL_SAMPLER_2D_RECT_SHADOW 0x8B64
-#define GL_SAMPLER_BUFFER 0x8DC2
-#define GL_INT_SAMPLER_2D_RECT 0x8DCD
-#define GL_INT_SAMPLER_BUFFER 0x8DD0
-#define GL_UNSIGNED_INT_SAMPLER_2D_RECT 0x8DD5
-#define GL_UNSIGNED_INT_SAMPLER_BUFFER 0x8DD8
-#define GL_TEXTURE_BUFFER 0x8C2A
-#define GL_MAX_TEXTURE_BUFFER_SIZE 0x8C2B
-#define GL_TEXTURE_BINDING_BUFFER 0x8C2C
-#define GL_TEXTURE_BUFFER_DATA_STORE_BINDING 0x8C2D
-#define GL_TEXTURE_RECTANGLE 0x84F5
-#define GL_TEXTURE_BINDING_RECTANGLE 0x84F6
-#define GL_PROXY_TEXTURE_RECTANGLE 0x84F7
-#define GL_MAX_RECTANGLE_TEXTURE_SIZE 0x84F8
-#define GL_R8_SNORM 0x8F94
-#define GL_RG8_SNORM 0x8F95
-#define GL_RGB8_SNORM 0x8F96
-#define GL_RGBA8_SNORM 0x8F97
-#define GL_R16_SNORM 0x8F98
-#define GL_RG16_SNORM 0x8F99
-#define GL_RGB16_SNORM 0x8F9A
-#define GL_RGBA16_SNORM 0x8F9B
-#define GL_SIGNED_NORMALIZED 0x8F9C
-#define GL_PRIMITIVE_RESTART 0x8F9D
-#define GL_PRIMITIVE_RESTART_INDEX 0x8F9E
-#define GL_COPY_READ_BUFFER 0x8F36
-#define GL_COPY_WRITE_BUFFER 0x8F37
-#define GL_UNIFORM_BUFFER 0x8A11
-#define GL_UNIFORM_BUFFER_BINDING 0x8A28
-#define GL_UNIFORM_BUFFER_START 0x8A29
-#define GL_UNIFORM_BUFFER_SIZE 0x8A2A
-#define GL_MAX_VERTEX_UNIFORM_BLOCKS 0x8A2B
-#define GL_MAX_GEOMETRY_UNIFORM_BLOCKS 0x8A2C
-#define GL_MAX_FRAGMENT_UNIFORM_BLOCKS 0x8A2D
-#define GL_MAX_COMBINED_UNIFORM_BLOCKS 0x8A2E
-#define GL_MAX_UNIFORM_BUFFER_BINDINGS 0x8A2F
-#define GL_MAX_UNIFORM_BLOCK_SIZE 0x8A30
-#define GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS 0x8A31
-#define GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS 0x8A32
-#define GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS 0x8A33
-#define GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT 0x8A34
-#define GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH 0x8A35
-#define GL_ACTIVE_UNIFORM_BLOCKS 0x8A36
-#define GL_UNIFORM_TYPE 0x8A37
-#define GL_UNIFORM_SIZE 0x8A38
-#define GL_UNIFORM_NAME_LENGTH 0x8A39
-#define GL_UNIFORM_BLOCK_INDEX 0x8A3A
-#define GL_UNIFORM_OFFSET 0x8A3B
-#define GL_UNIFORM_ARRAY_STRIDE 0x8A3C
-#define GL_UNIFORM_MATRIX_STRIDE 0x8A3D
-#define GL_UNIFORM_IS_ROW_MAJOR 0x8A3E
-#define GL_UNIFORM_BLOCK_BINDING 0x8A3F
-#define GL_UNIFORM_BLOCK_DATA_SIZE 0x8A40
-#define GL_UNIFORM_BLOCK_NAME_LENGTH 0x8A41
-#define GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS 0x8A42
-#define GL_UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES 0x8A43
-#define GL_UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER 0x8A44
-#define GL_UNIFORM_BLOCK_REFERENCED_BY_GEOMETRY_SHADER 0x8A45
-#define GL_UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER 0x8A46
-#define GL_INVALID_INDEX 0xFFFFFFFF
-#define GL_CONTEXT_CORE_PROFILE_BIT 0x00000001
-#define GL_CONTEXT_COMPATIBILITY_PROFILE_BIT 0x00000002
-#define GL_LINES_ADJACENCY 0x000A
-#define GL_LINE_STRIP_ADJACENCY 0x000B
-#define GL_TRIANGLES_ADJACENCY 0x000C
-#define GL_TRIANGLE_STRIP_ADJACENCY 0x000D
-#define GL_PROGRAM_POINT_SIZE 0x8642
-#define GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS 0x8C29
-#define GL_FRAMEBUFFER_ATTACHMENT_LAYERED 0x8DA7
-#define GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS 0x8DA8
-#define GL_GEOMETRY_SHADER 0x8DD9
-#define GL_GEOMETRY_VERTICES_OUT 0x8916
-#define GL_GEOMETRY_INPUT_TYPE 0x8917
-#define GL_GEOMETRY_OUTPUT_TYPE 0x8918
-#define GL_MAX_GEOMETRY_UNIFORM_COMPONENTS 0x8DDF
-#define GL_MAX_GEOMETRY_OUTPUT_VERTICES 0x8DE0
-#define GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS 0x8DE1
-#define GL_MAX_VERTEX_OUTPUT_COMPONENTS 0x9122
-#define GL_MAX_GEOMETRY_INPUT_COMPONENTS 0x9123
-#define GL_MAX_GEOMETRY_OUTPUT_COMPONENTS 0x9124
-#define GL_MAX_FRAGMENT_INPUT_COMPONENTS 0x9125
-#define GL_CONTEXT_PROFILE_MASK 0x9126
-#define GL_DEPTH_CLAMP 0x864F
-#define GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION 0x8E4C
-#define GL_FIRST_VERTEX_CONVENTION 0x8E4D
-#define GL_LAST_VERTEX_CONVENTION 0x8E4E
-#define GL_PROVOKING_VERTEX 0x8E4F
-#define GL_TEXTURE_CUBE_MAP_SEAMLESS 0x884F
-#define GL_MAX_SERVER_WAIT_TIMEOUT 0x9111
-#define GL_OBJECT_TYPE 0x9112
-#define GL_SYNC_CONDITION 0x9113
-#define GL_SYNC_STATUS 0x9114
-#define GL_SYNC_FLAGS 0x9115
-#define GL_SYNC_FENCE 0x9116
-#define GL_SYNC_GPU_COMMANDS_COMPLETE 0x9117
-#define GL_UNSIGNALED 0x9118
-#define GL_SIGNALED 0x9119
-#define GL_ALREADY_SIGNALED 0x911A
-#define GL_TIMEOUT_EXPIRED 0x911B
-#define GL_CONDITION_SATISFIED 0x911C
-#define GL_WAIT_FAILED 0x911D
-#define GL_TIMEOUT_IGNORED 0xFFFFFFFFFFFFFFFF
-#define GL_SYNC_FLUSH_COMMANDS_BIT 0x00000001
-#define GL_SAMPLE_POSITION 0x8E50
-#define GL_SAMPLE_MASK 0x8E51
-#define GL_SAMPLE_MASK_VALUE 0x8E52
-#define GL_MAX_SAMPLE_MASK_WORDS 0x8E59
-#define GL_TEXTURE_2D_MULTISAMPLE 0x9100
-#define GL_PROXY_TEXTURE_2D_MULTISAMPLE 0x9101
-#define GL_TEXTURE_2D_MULTISAMPLE_ARRAY 0x9102
-#define GL_PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY 0x9103
-#define GL_TEXTURE_BINDING_2D_MULTISAMPLE 0x9104
-#define GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY 0x9105
-#define GL_TEXTURE_SAMPLES 0x9106
-#define GL_TEXTURE_FIXED_SAMPLE_LOCATIONS 0x9107
-#define GL_SAMPLER_2D_MULTISAMPLE 0x9108
-#define GL_INT_SAMPLER_2D_MULTISAMPLE 0x9109
-#define GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE 0x910A
-#define GL_SAMPLER_2D_MULTISAMPLE_ARRAY 0x910B
-#define GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY 0x910C
-#define GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY 0x910D
-#define GL_MAX_COLOR_TEXTURE_SAMPLES 0x910E
-#define GL_MAX_DEPTH_TEXTURE_SAMPLES 0x910F
-#define GL_MAX_INTEGER_SAMPLES 0x9110
-#define GL_VERTEX_ATTRIB_ARRAY_DIVISOR 0x88FE
-#define GL_SRC1_COLOR 0x88F9
-#define GL_ONE_MINUS_SRC1_COLOR 0x88FA
-#define GL_ONE_MINUS_SRC1_ALPHA 0x88FB
-#define GL_MAX_DUAL_SOURCE_DRAW_BUFFERS 0x88FC
-#define GL_ANY_SAMPLES_PASSED 0x8C2F
-#define GL_SAMPLER_BINDING 0x8919
-#define GL_RGB10_A2UI 0x906F
-#define GL_TEXTURE_SWIZZLE_R 0x8E42
-#define GL_TEXTURE_SWIZZLE_G 0x8E43
-#define GL_TEXTURE_SWIZZLE_B 0x8E44
-#define GL_TEXTURE_SWIZZLE_A 0x8E45
-#define GL_TEXTURE_SWIZZLE_RGBA 0x8E46
-#define GL_TIME_ELAPSED 0x88BF
-#define GL_TIMESTAMP 0x8E28
-#define GL_INT_2_10_10_10_REV 0x8D9F
-#ifndef GL_VERSION_1_0
-#define GL_VERSION_1_0 1
-GLAPI int GLAD_GL_VERSION_1_0;
-typedef void (APIENTRYP PFNGLCULLFACEPROC)(GLenum mode);
-GLAPI PFNGLCULLFACEPROC glad_glCullFace;
-#define glCullFace glad_glCullFace
-typedef void (APIENTRYP PFNGLFRONTFACEPROC)(GLenum mode);
-GLAPI PFNGLFRONTFACEPROC glad_glFrontFace;
-#define glFrontFace glad_glFrontFace
-typedef void (APIENTRYP PFNGLHINTPROC)(GLenum target, GLenum mode);
-GLAPI PFNGLHINTPROC glad_glHint;
-#define glHint glad_glHint
-typedef void (APIENTRYP PFNGLLINEWIDTHPROC)(GLfloat width);
-GLAPI PFNGLLINEWIDTHPROC glad_glLineWidth;
-#define glLineWidth glad_glLineWidth
-typedef void (APIENTRYP PFNGLPOINTSIZEPROC)(GLfloat size);
-GLAPI PFNGLPOINTSIZEPROC glad_glPointSize;
-#define glPointSize glad_glPointSize
-typedef void (APIENTRYP PFNGLPOLYGONMODEPROC)(GLenum face, GLenum mode);
-GLAPI PFNGLPOLYGONMODEPROC glad_glPolygonMode;
-#define glPolygonMode glad_glPolygonMode
-typedef void (APIENTRYP PFNGLSCISSORPROC)(GLint x, GLint y, GLsizei width, GLsizei height);
-GLAPI PFNGLSCISSORPROC glad_glScissor;
-#define glScissor glad_glScissor
-typedef void (APIENTRYP PFNGLTEXPARAMETERFPROC)(GLenum target, GLenum pname, GLfloat param);
-GLAPI PFNGLTEXPARAMETERFPROC glad_glTexParameterf;
-#define glTexParameterf glad_glTexParameterf
-typedef void (APIENTRYP PFNGLTEXPARAMETERFVPROC)(GLenum target, GLenum pname, const GLfloat *params);
-GLAPI PFNGLTEXPARAMETERFVPROC glad_glTexParameterfv;
-#define glTexParameterfv glad_glTexParameterfv
-typedef void (APIENTRYP PFNGLTEXPARAMETERIPROC)(GLenum target, GLenum pname, GLint param);
-GLAPI PFNGLTEXPARAMETERIPROC glad_glTexParameteri;
-#define glTexParameteri glad_glTexParameteri
-typedef void (APIENTRYP PFNGLTEXPARAMETERIVPROC)(GLenum target, GLenum pname, const GLint *params);
-GLAPI PFNGLTEXPARAMETERIVPROC glad_glTexParameteriv;
-#define glTexParameteriv glad_glTexParameteriv
-typedef void (APIENTRYP PFNGLTEXIMAGE1DPROC)(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const void *pixels);
-GLAPI PFNGLTEXIMAGE1DPROC glad_glTexImage1D;
-#define glTexImage1D glad_glTexImage1D
-typedef void (APIENTRYP PFNGLTEXIMAGE2DPROC)(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const void *pixels);
-GLAPI PFNGLTEXIMAGE2DPROC glad_glTexImage2D;
-#define glTexImage2D glad_glTexImage2D
-typedef void (APIENTRYP PFNGLDRAWBUFFERPROC)(GLenum buf);
-GLAPI PFNGLDRAWBUFFERPROC glad_glDrawBuffer;
-#define glDrawBuffer glad_glDrawBuffer
-typedef void (APIENTRYP PFNGLCLEARPROC)(GLbitfield mask);
-GLAPI PFNGLCLEARPROC glad_glClear;
-#define glClear glad_glClear
-typedef void (APIENTRYP PFNGLCLEARCOLORPROC)(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
-GLAPI PFNGLCLEARCOLORPROC glad_glClearColor;
-#define glClearColor glad_glClearColor
-typedef void (APIENTRYP PFNGLCLEARSTENCILPROC)(GLint s);
-GLAPI PFNGLCLEARSTENCILPROC glad_glClearStencil;
-#define glClearStencil glad_glClearStencil
-typedef void (APIENTRYP PFNGLCLEARDEPTHPROC)(GLdouble depth);
-GLAPI PFNGLCLEARDEPTHPROC glad_glClearDepth;
-#define glClearDepth glad_glClearDepth
-typedef void (APIENTRYP PFNGLSTENCILMASKPROC)(GLuint mask);
-GLAPI PFNGLSTENCILMASKPROC glad_glStencilMask;
-#define glStencilMask glad_glStencilMask
-typedef void (APIENTRYP PFNGLCOLORMASKPROC)(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
-GLAPI PFNGLCOLORMASKPROC glad_glColorMask;
-#define glColorMask glad_glColorMask
-typedef void (APIENTRYP PFNGLDEPTHMASKPROC)(GLboolean flag);
-GLAPI PFNGLDEPTHMASKPROC glad_glDepthMask;
-#define glDepthMask glad_glDepthMask
-typedef void (APIENTRYP PFNGLDISABLEPROC)(GLenum cap);
-GLAPI PFNGLDISABLEPROC glad_glDisable;
-#define glDisable glad_glDisable
-typedef void (APIENTRYP PFNGLENABLEPROC)(GLenum cap);
-GLAPI PFNGLENABLEPROC glad_glEnable;
-#define glEnable glad_glEnable
-typedef void (APIENTRYP PFNGLFINISHPROC)(void);
-GLAPI PFNGLFINISHPROC glad_glFinish;
-#define glFinish glad_glFinish
-typedef void (APIENTRYP PFNGLFLUSHPROC)(void);
-GLAPI PFNGLFLUSHPROC glad_glFlush;
-#define glFlush glad_glFlush
-typedef void (APIENTRYP PFNGLBLENDFUNCPROC)(GLenum sfactor, GLenum dfactor);
-GLAPI PFNGLBLENDFUNCPROC glad_glBlendFunc;
-#define glBlendFunc glad_glBlendFunc
-typedef void (APIENTRYP PFNGLLOGICOPPROC)(GLenum opcode);
-GLAPI PFNGLLOGICOPPROC glad_glLogicOp;
-#define glLogicOp glad_glLogicOp
-typedef void (APIENTRYP PFNGLSTENCILFUNCPROC)(GLenum func, GLint ref, GLuint mask);
-GLAPI PFNGLSTENCILFUNCPROC glad_glStencilFunc;
-#define glStencilFunc glad_glStencilFunc
-typedef void (APIENTRYP PFNGLSTENCILOPPROC)(GLenum fail, GLenum zfail, GLenum zpass);
-GLAPI PFNGLSTENCILOPPROC glad_glStencilOp;
-#define glStencilOp glad_glStencilOp
-typedef void (APIENTRYP PFNGLDEPTHFUNCPROC)(GLenum func);
-GLAPI PFNGLDEPTHFUNCPROC glad_glDepthFunc;
-#define glDepthFunc glad_glDepthFunc
-typedef void (APIENTRYP PFNGLPIXELSTOREFPROC)(GLenum pname, GLfloat param);
-GLAPI PFNGLPIXELSTOREFPROC glad_glPixelStoref;
-#define glPixelStoref glad_glPixelStoref
-typedef void (APIENTRYP PFNGLPIXELSTOREIPROC)(GLenum pname, GLint param);
-GLAPI PFNGLPIXELSTOREIPROC glad_glPixelStorei;
-#define glPixelStorei glad_glPixelStorei
-typedef void (APIENTRYP PFNGLREADBUFFERPROC)(GLenum src);
-GLAPI PFNGLREADBUFFERPROC glad_glReadBuffer;
-#define glReadBuffer glad_glReadBuffer
-typedef void (APIENTRYP PFNGLREADPIXELSPROC)(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, void *pixels);
-GLAPI PFNGLREADPIXELSPROC glad_glReadPixels;
-#define glReadPixels glad_glReadPixels
-typedef void (APIENTRYP PFNGLGETBOOLEANVPROC)(GLenum pname, GLboolean *data);
-GLAPI PFNGLGETBOOLEANVPROC glad_glGetBooleanv;
-#define glGetBooleanv glad_glGetBooleanv
-typedef void (APIENTRYP PFNGLGETDOUBLEVPROC)(GLenum pname, GLdouble *data);
-GLAPI PFNGLGETDOUBLEVPROC glad_glGetDoublev;
-#define glGetDoublev glad_glGetDoublev
-typedef GLenum (APIENTRYP PFNGLGETERRORPROC)(void);
-GLAPI PFNGLGETERRORPROC glad_glGetError;
-#define glGetError glad_glGetError
-typedef void (APIENTRYP PFNGLGETFLOATVPROC)(GLenum pname, GLfloat *data);
-GLAPI PFNGLGETFLOATVPROC glad_glGetFloatv;
-#define glGetFloatv glad_glGetFloatv
-typedef void (APIENTRYP PFNGLGETINTEGERVPROC)(GLenum pname, GLint *data);
-GLAPI PFNGLGETINTEGERVPROC glad_glGetIntegerv;
-#define glGetIntegerv glad_glGetIntegerv
-typedef const GLubyte * (APIENTRYP PFNGLGETSTRINGPROC)(GLenum name);
-GLAPI PFNGLGETSTRINGPROC glad_glGetString;
-#define glGetString glad_glGetString
-typedef void (APIENTRYP PFNGLGETTEXIMAGEPROC)(GLenum target, GLint level, GLenum format, GLenum type, void *pixels);
-GLAPI PFNGLGETTEXIMAGEPROC glad_glGetTexImage;
-#define glGetTexImage glad_glGetTexImage
-typedef void (APIENTRYP PFNGLGETTEXPARAMETERFVPROC)(GLenum target, GLenum pname, GLfloat *params);
-GLAPI PFNGLGETTEXPARAMETERFVPROC glad_glGetTexParameterfv;
-#define glGetTexParameterfv glad_glGetTexParameterfv
-typedef void (APIENTRYP PFNGLGETTEXPARAMETERIVPROC)(GLenum target, GLenum pname, GLint *params);
-GLAPI PFNGLGETTEXPARAMETERIVPROC glad_glGetTexParameteriv;
-#define glGetTexParameteriv glad_glGetTexParameteriv
-typedef void (APIENTRYP PFNGLGETTEXLEVELPARAMETERFVPROC)(GLenum target, GLint level, GLenum pname, GLfloat *params);
-GLAPI PFNGLGETTEXLEVELPARAMETERFVPROC glad_glGetTexLevelParameterfv;
-#define glGetTexLevelParameterfv glad_glGetTexLevelParameterfv
-typedef void (APIENTRYP PFNGLGETTEXLEVELPARAMETERIVPROC)(GLenum target, GLint level, GLenum pname, GLint *params);
-GLAPI PFNGLGETTEXLEVELPARAMETERIVPROC glad_glGetTexLevelParameteriv;
-#define glGetTexLevelParameteriv glad_glGetTexLevelParameteriv
-typedef GLboolean (APIENTRYP PFNGLISENABLEDPROC)(GLenum cap);
-GLAPI PFNGLISENABLEDPROC glad_glIsEnabled;
-#define glIsEnabled glad_glIsEnabled
-typedef void (APIENTRYP PFNGLDEPTHRANGEPROC)(GLdouble n, GLdouble f);
-GLAPI PFNGLDEPTHRANGEPROC glad_glDepthRange;
-#define glDepthRange glad_glDepthRange
-typedef void (APIENTRYP PFNGLVIEWPORTPROC)(GLint x, GLint y, GLsizei width, GLsizei height);
-GLAPI PFNGLVIEWPORTPROC glad_glViewport;
-#define glViewport glad_glViewport
-typedef void (APIENTRYP PFNGLNEWLISTPROC)(GLuint list, GLenum mode);
-GLAPI PFNGLNEWLISTPROC glad_glNewList;
-#define glNewList glad_glNewList
-typedef void (APIENTRYP PFNGLENDLISTPROC)(void);
-GLAPI PFNGLENDLISTPROC glad_glEndList;
-#define glEndList glad_glEndList
-typedef void (APIENTRYP PFNGLCALLLISTPROC)(GLuint list);
-GLAPI PFNGLCALLLISTPROC glad_glCallList;
-#define glCallList glad_glCallList
-typedef void (APIENTRYP PFNGLCALLLISTSPROC)(GLsizei n, GLenum type, const void *lists);
-GLAPI PFNGLCALLLISTSPROC glad_glCallLists;
-#define glCallLists glad_glCallLists
-typedef void (APIENTRYP PFNGLDELETELISTSPROC)(GLuint list, GLsizei range);
-GLAPI PFNGLDELETELISTSPROC glad_glDeleteLists;
-#define glDeleteLists glad_glDeleteLists
-typedef GLuint (APIENTRYP PFNGLGENLISTSPROC)(GLsizei range);
-GLAPI PFNGLGENLISTSPROC glad_glGenLists;
-#define glGenLists glad_glGenLists
-typedef void (APIENTRYP PFNGLLISTBASEPROC)(GLuint base);
-GLAPI PFNGLLISTBASEPROC glad_glListBase;
-#define glListBase glad_glListBase
-typedef void (APIENTRYP PFNGLBEGINPROC)(GLenum mode);
-GLAPI PFNGLBEGINPROC glad_glBegin;
-#define glBegin glad_glBegin
-typedef void (APIENTRYP PFNGLBITMAPPROC)(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap);
-GLAPI PFNGLBITMAPPROC glad_glBitmap;
-#define glBitmap glad_glBitmap
-typedef void (APIENTRYP PFNGLCOLOR3BPROC)(GLbyte red, GLbyte green, GLbyte blue);
-GLAPI PFNGLCOLOR3BPROC glad_glColor3b;
-#define glColor3b glad_glColor3b
-typedef void (APIENTRYP PFNGLCOLOR3BVPROC)(const GLbyte *v);
-GLAPI PFNGLCOLOR3BVPROC glad_glColor3bv;
-#define glColor3bv glad_glColor3bv
-typedef void (APIENTRYP PFNGLCOLOR3DPROC)(GLdouble red, GLdouble green, GLdouble blue);
-GLAPI PFNGLCOLOR3DPROC glad_glColor3d;
-#define glColor3d glad_glColor3d
-typedef void (APIENTRYP PFNGLCOLOR3DVPROC)(const GLdouble *v);
-GLAPI PFNGLCOLOR3DVPROC glad_glColor3dv;
-#define glColor3dv glad_glColor3dv
-typedef void (APIENTRYP PFNGLCOLOR3FPROC)(GLfloat red, GLfloat green, GLfloat blue);
-GLAPI PFNGLCOLOR3FPROC glad_glColor3f;
-#define glColor3f glad_glColor3f
-typedef void (APIENTRYP PFNGLCOLOR3FVPROC)(const GLfloat *v);
-GLAPI PFNGLCOLOR3FVPROC glad_glColor3fv;
-#define glColor3fv glad_glColor3fv
-typedef void (APIENTRYP PFNGLCOLOR3IPROC)(GLint red, GLint green, GLint blue);
-GLAPI PFNGLCOLOR3IPROC glad_glColor3i;
-#define glColor3i glad_glColor3i
-typedef void (APIENTRYP PFNGLCOLOR3IVPROC)(const GLint *v);
-GLAPI PFNGLCOLOR3IVPROC glad_glColor3iv;
-#define glColor3iv glad_glColor3iv
-typedef void (APIENTRYP PFNGLCOLOR3SPROC)(GLshort red, GLshort green, GLshort blue);
-GLAPI PFNGLCOLOR3SPROC glad_glColor3s;
-#define glColor3s glad_glColor3s
-typedef void (APIENTRYP PFNGLCOLOR3SVPROC)(const GLshort *v);
-GLAPI PFNGLCOLOR3SVPROC glad_glColor3sv;
-#define glColor3sv glad_glColor3sv
-typedef void (APIENTRYP PFNGLCOLOR3UBPROC)(GLubyte red, GLubyte green, GLubyte blue);
-GLAPI PFNGLCOLOR3UBPROC glad_glColor3ub;
-#define glColor3ub glad_glColor3ub
-typedef void (APIENTRYP PFNGLCOLOR3UBVPROC)(const GLubyte *v);
-GLAPI PFNGLCOLOR3UBVPROC glad_glColor3ubv;
-#define glColor3ubv glad_glColor3ubv
-typedef void (APIENTRYP PFNGLCOLOR3UIPROC)(GLuint red, GLuint green, GLuint blue);
-GLAPI PFNGLCOLOR3UIPROC glad_glColor3ui;
-#define glColor3ui glad_glColor3ui
-typedef void (APIENTRYP PFNGLCOLOR3UIVPROC)(const GLuint *v);
-GLAPI PFNGLCOLOR3UIVPROC glad_glColor3uiv;
-#define glColor3uiv glad_glColor3uiv
-typedef void (APIENTRYP PFNGLCOLOR3USPROC)(GLushort red, GLushort green, GLushort blue);
-GLAPI PFNGLCOLOR3USPROC glad_glColor3us;
-#define glColor3us glad_glColor3us
-typedef void (APIENTRYP PFNGLCOLOR3USVPROC)(const GLushort *v);
-GLAPI PFNGLCOLOR3USVPROC glad_glColor3usv;
-#define glColor3usv glad_glColor3usv
-typedef void (APIENTRYP PFNGLCOLOR4BPROC)(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha);
-GLAPI PFNGLCOLOR4BPROC glad_glColor4b;
-#define glColor4b glad_glColor4b
-typedef void (APIENTRYP PFNGLCOLOR4BVPROC)(const GLbyte *v);
-GLAPI PFNGLCOLOR4BVPROC glad_glColor4bv;
-#define glColor4bv glad_glColor4bv
-typedef void (APIENTRYP PFNGLCOLOR4DPROC)(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha);
-GLAPI PFNGLCOLOR4DPROC glad_glColor4d;
-#define glColor4d glad_glColor4d
-typedef void (APIENTRYP PFNGLCOLOR4DVPROC)(const GLdouble *v);
-GLAPI PFNGLCOLOR4DVPROC glad_glColor4dv;
-#define glColor4dv glad_glColor4dv
-typedef void (APIENTRYP PFNGLCOLOR4FPROC)(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
-GLAPI PFNGLCOLOR4FPROC glad_glColor4f;
-#define glColor4f glad_glColor4f
-typedef void (APIENTRYP PFNGLCOLOR4FVPROC)(const GLfloat *v);
-GLAPI PFNGLCOLOR4FVPROC glad_glColor4fv;
-#define glColor4fv glad_glColor4fv
-typedef void (APIENTRYP PFNGLCOLOR4IPROC)(GLint red, GLint green, GLint blue, GLint alpha);
-GLAPI PFNGLCOLOR4IPROC glad_glColor4i;
-#define glColor4i glad_glColor4i
-typedef void (APIENTRYP PFNGLCOLOR4IVPROC)(const GLint *v);
-GLAPI PFNGLCOLOR4IVPROC glad_glColor4iv;
-#define glColor4iv glad_glColor4iv
-typedef void (APIENTRYP PFNGLCOLOR4SPROC)(GLshort red, GLshort green, GLshort blue, GLshort alpha);
-GLAPI PFNGLCOLOR4SPROC glad_glColor4s;
-#define glColor4s glad_glColor4s
-typedef void (APIENTRYP PFNGLCOLOR4SVPROC)(const GLshort *v);
-GLAPI PFNGLCOLOR4SVPROC glad_glColor4sv;
-#define glColor4sv glad_glColor4sv
-typedef void (APIENTRYP PFNGLCOLOR4UBPROC)(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha);
-GLAPI PFNGLCOLOR4UBPROC glad_glColor4ub;
-#define glColor4ub glad_glColor4ub
-typedef void (APIENTRYP PFNGLCOLOR4UBVPROC)(const GLubyte *v);
-GLAPI PFNGLCOLOR4UBVPROC glad_glColor4ubv;
-#define glColor4ubv glad_glColor4ubv
-typedef void (APIENTRYP PFNGLCOLOR4UIPROC)(GLuint red, GLuint green, GLuint blue, GLuint alpha);
-GLAPI PFNGLCOLOR4UIPROC glad_glColor4ui;
-#define glColor4ui glad_glColor4ui
-typedef void (APIENTRYP PFNGLCOLOR4UIVPROC)(const GLuint *v);
-GLAPI PFNGLCOLOR4UIVPROC glad_glColor4uiv;
-#define glColor4uiv glad_glColor4uiv
-typedef void (APIENTRYP PFNGLCOLOR4USPROC)(GLushort red, GLushort green, GLushort blue, GLushort alpha);
-GLAPI PFNGLCOLOR4USPROC glad_glColor4us;
-#define glColor4us glad_glColor4us
-typedef void (APIENTRYP PFNGLCOLOR4USVPROC)(const GLushort *v);
-GLAPI PFNGLCOLOR4USVPROC glad_glColor4usv;
-#define glColor4usv glad_glColor4usv
-typedef void (APIENTRYP PFNGLEDGEFLAGPROC)(GLboolean flag);
-GLAPI PFNGLEDGEFLAGPROC glad_glEdgeFlag;
-#define glEdgeFlag glad_glEdgeFlag
-typedef void (APIENTRYP PFNGLEDGEFLAGVPROC)(const GLboolean *flag);
-GLAPI PFNGLEDGEFLAGVPROC glad_glEdgeFlagv;
-#define glEdgeFlagv glad_glEdgeFlagv
-typedef void (APIENTRYP PFNGLENDPROC)(void);
-GLAPI PFNGLENDPROC glad_glEnd;
-#define glEnd glad_glEnd
-typedef void (APIENTRYP PFNGLINDEXDPROC)(GLdouble c);
-GLAPI PFNGLINDEXDPROC glad_glIndexd;
-#define glIndexd glad_glIndexd
-typedef void (APIENTRYP PFNGLINDEXDVPROC)(const GLdouble *c);
-GLAPI PFNGLINDEXDVPROC glad_glIndexdv;
-#define glIndexdv glad_glIndexdv
-typedef void (APIENTRYP PFNGLINDEXFPROC)(GLfloat c);
-GLAPI PFNGLINDEXFPROC glad_glIndexf;
-#define glIndexf glad_glIndexf
-typedef void (APIENTRYP PFNGLINDEXFVPROC)(const GLfloat *c);
-GLAPI PFNGLINDEXFVPROC glad_glIndexfv;
-#define glIndexfv glad_glIndexfv
-typedef void (APIENTRYP PFNGLINDEXIPROC)(GLint c);
-GLAPI PFNGLINDEXIPROC glad_glIndexi;
-#define glIndexi glad_glIndexi
-typedef void (APIENTRYP PFNGLINDEXIVPROC)(const GLint *c);
-GLAPI PFNGLINDEXIVPROC glad_glIndexiv;
-#define glIndexiv glad_glIndexiv
-typedef void (APIENTRYP PFNGLINDEXSPROC)(GLshort c);
-GLAPI PFNGLINDEXSPROC glad_glIndexs;
-#define glIndexs glad_glIndexs
-typedef void (APIENTRYP PFNGLINDEXSVPROC)(const GLshort *c);
-GLAPI PFNGLINDEXSVPROC glad_glIndexsv;
-#define glIndexsv glad_glIndexsv
-typedef void (APIENTRYP PFNGLNORMAL3BPROC)(GLbyte nx, GLbyte ny, GLbyte nz);
-GLAPI PFNGLNORMAL3BPROC glad_glNormal3b;
-#define glNormal3b glad_glNormal3b
-typedef void (APIENTRYP PFNGLNORMAL3BVPROC)(const GLbyte *v);
-GLAPI PFNGLNORMAL3BVPROC glad_glNormal3bv;
-#define glNormal3bv glad_glNormal3bv
-typedef void (APIENTRYP PFNGLNORMAL3DPROC)(GLdouble nx, GLdouble ny, GLdouble nz);
-GLAPI PFNGLNORMAL3DPROC glad_glNormal3d;
-#define glNormal3d glad_glNormal3d
-typedef void (APIENTRYP PFNGLNORMAL3DVPROC)(const GLdouble *v);
-GLAPI PFNGLNORMAL3DVPROC glad_glNormal3dv;
-#define glNormal3dv glad_glNormal3dv
-typedef void (APIENTRYP PFNGLNORMAL3FPROC)(GLfloat nx, GLfloat ny, GLfloat nz);
-GLAPI PFNGLNORMAL3FPROC glad_glNormal3f;
-#define glNormal3f glad_glNormal3f
-typedef void (APIENTRYP PFNGLNORMAL3FVPROC)(const GLfloat *v);
-GLAPI PFNGLNORMAL3FVPROC glad_glNormal3fv;
-#define glNormal3fv glad_glNormal3fv
-typedef void (APIENTRYP PFNGLNORMAL3IPROC)(GLint nx, GLint ny, GLint nz);
-GLAPI PFNGLNORMAL3IPROC glad_glNormal3i;
-#define glNormal3i glad_glNormal3i
-typedef void (APIENTRYP PFNGLNORMAL3IVPROC)(const GLint *v);
-GLAPI PFNGLNORMAL3IVPROC glad_glNormal3iv;
-#define glNormal3iv glad_glNormal3iv
-typedef void (APIENTRYP PFNGLNORMAL3SPROC)(GLshort nx, GLshort ny, GLshort nz);
-GLAPI PFNGLNORMAL3SPROC glad_glNormal3s;
-#define glNormal3s glad_glNormal3s
-typedef void (APIENTRYP PFNGLNORMAL3SVPROC)(const GLshort *v);
-GLAPI PFNGLNORMAL3SVPROC glad_glNormal3sv;
-#define glNormal3sv glad_glNormal3sv
-typedef void (APIENTRYP PFNGLRASTERPOS2DPROC)(GLdouble x, GLdouble y);
-GLAPI PFNGLRASTERPOS2DPROC glad_glRasterPos2d;
-#define glRasterPos2d glad_glRasterPos2d
-typedef void (APIENTRYP PFNGLRASTERPOS2DVPROC)(const GLdouble *v);
-GLAPI PFNGLRASTERPOS2DVPROC glad_glRasterPos2dv;
-#define glRasterPos2dv glad_glRasterPos2dv
-typedef void (APIENTRYP PFNGLRASTERPOS2FPROC)(GLfloat x, GLfloat y);
-GLAPI PFNGLRASTERPOS2FPROC glad_glRasterPos2f;
-#define glRasterPos2f glad_glRasterPos2f
-typedef void (APIENTRYP PFNGLRASTERPOS2FVPROC)(const GLfloat *v);
-GLAPI PFNGLRASTERPOS2FVPROC glad_glRasterPos2fv;
-#define glRasterPos2fv glad_glRasterPos2fv
-typedef void (APIENTRYP PFNGLRASTERPOS2IPROC)(GLint x, GLint y);
-GLAPI PFNGLRASTERPOS2IPROC glad_glRasterPos2i;
-#define glRasterPos2i glad_glRasterPos2i
-typedef void (APIENTRYP PFNGLRASTERPOS2IVPROC)(const GLint *v);
-GLAPI PFNGLRASTERPOS2IVPROC glad_glRasterPos2iv;
-#define glRasterPos2iv glad_glRasterPos2iv
-typedef void (APIENTRYP PFNGLRASTERPOS2SPROC)(GLshort x, GLshort y);
-GLAPI PFNGLRASTERPOS2SPROC glad_glRasterPos2s;
-#define glRasterPos2s glad_glRasterPos2s
-typedef void (APIENTRYP PFNGLRASTERPOS2SVPROC)(const GLshort *v);
-GLAPI PFNGLRASTERPOS2SVPROC glad_glRasterPos2sv;
-#define glRasterPos2sv glad_glRasterPos2sv
-typedef void (APIENTRYP PFNGLRASTERPOS3DPROC)(GLdouble x, GLdouble y, GLdouble z);
-GLAPI PFNGLRASTERPOS3DPROC glad_glRasterPos3d;
-#define glRasterPos3d glad_glRasterPos3d
-typedef void (APIENTRYP PFNGLRASTERPOS3DVPROC)(const GLdouble *v);
-GLAPI PFNGLRASTERPOS3DVPROC glad_glRasterPos3dv;
-#define glRasterPos3dv glad_glRasterPos3dv
-typedef void (APIENTRYP PFNGLRASTERPOS3FPROC)(GLfloat x, GLfloat y, GLfloat z);
-GLAPI PFNGLRASTERPOS3FPROC glad_glRasterPos3f;
-#define glRasterPos3f glad_glRasterPos3f
-typedef void (APIENTRYP PFNGLRASTERPOS3FVPROC)(const GLfloat *v);
-GLAPI PFNGLRASTERPOS3FVPROC glad_glRasterPos3fv;
-#define glRasterPos3fv glad_glRasterPos3fv
-typedef void (APIENTRYP PFNGLRASTERPOS3IPROC)(GLint x, GLint y, GLint z);
-GLAPI PFNGLRASTERPOS3IPROC glad_glRasterPos3i;
-#define glRasterPos3i glad_glRasterPos3i
-typedef void (APIENTRYP PFNGLRASTERPOS3IVPROC)(const GLint *v);
-GLAPI PFNGLRASTERPOS3IVPROC glad_glRasterPos3iv;
-#define glRasterPos3iv glad_glRasterPos3iv
-typedef void (APIENTRYP PFNGLRASTERPOS3SPROC)(GLshort x, GLshort y, GLshort z);
-GLAPI PFNGLRASTERPOS3SPROC glad_glRasterPos3s;
-#define glRasterPos3s glad_glRasterPos3s
-typedef void (APIENTRYP PFNGLRASTERPOS3SVPROC)(const GLshort *v);
-GLAPI PFNGLRASTERPOS3SVPROC glad_glRasterPos3sv;
-#define glRasterPos3sv glad_glRasterPos3sv
-typedef void (APIENTRYP PFNGLRASTERPOS4DPROC)(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
-GLAPI PFNGLRASTERPOS4DPROC glad_glRasterPos4d;
-#define glRasterPos4d glad_glRasterPos4d
-typedef void (APIENTRYP PFNGLRASTERPOS4DVPROC)(const GLdouble *v);
-GLAPI PFNGLRASTERPOS4DVPROC glad_glRasterPos4dv;
-#define glRasterPos4dv glad_glRasterPos4dv
-typedef void (APIENTRYP PFNGLRASTERPOS4FPROC)(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
-GLAPI PFNGLRASTERPOS4FPROC glad_glRasterPos4f;
-#define glRasterPos4f glad_glRasterPos4f
-typedef void (APIENTRYP PFNGLRASTERPOS4FVPROC)(const GLfloat *v);
-GLAPI PFNGLRASTERPOS4FVPROC glad_glRasterPos4fv;
-#define glRasterPos4fv glad_glRasterPos4fv
-typedef void (APIENTRYP PFNGLRASTERPOS4IPROC)(GLint x, GLint y, GLint z, GLint w);
-GLAPI PFNGLRASTERPOS4IPROC glad_glRasterPos4i;
-#define glRasterPos4i glad_glRasterPos4i
-typedef void (APIENTRYP PFNGLRASTERPOS4IVPROC)(const GLint *v);
-GLAPI PFNGLRASTERPOS4IVPROC glad_glRasterPos4iv;
-#define glRasterPos4iv glad_glRasterPos4iv
-typedef void (APIENTRYP PFNGLRASTERPOS4SPROC)(GLshort x, GLshort y, GLshort z, GLshort w);
-GLAPI PFNGLRASTERPOS4SPROC glad_glRasterPos4s;
-#define glRasterPos4s glad_glRasterPos4s
-typedef void (APIENTRYP PFNGLRASTERPOS4SVPROC)(const GLshort *v);
-GLAPI PFNGLRASTERPOS4SVPROC glad_glRasterPos4sv;
-#define glRasterPos4sv glad_glRasterPos4sv
-typedef void (APIENTRYP PFNGLRECTDPROC)(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2);
-GLAPI PFNGLRECTDPROC glad_glRectd;
-#define glRectd glad_glRectd
-typedef void (APIENTRYP PFNGLRECTDVPROC)(const GLdouble *v1, const GLdouble *v2);
-GLAPI PFNGLRECTDVPROC glad_glRectdv;
-#define glRectdv glad_glRectdv
-typedef void (APIENTRYP PFNGLRECTFPROC)(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2);
-GLAPI PFNGLRECTFPROC glad_glRectf;
-#define glRectf glad_glRectf
-typedef void (APIENTRYP PFNGLRECTFVPROC)(const GLfloat *v1, const GLfloat *v2);
-GLAPI PFNGLRECTFVPROC glad_glRectfv;
-#define glRectfv glad_glRectfv
-typedef void (APIENTRYP PFNGLRECTIPROC)(GLint x1, GLint y1, GLint x2, GLint y2);
-GLAPI PFNGLRECTIPROC glad_glRecti;
-#define glRecti glad_glRecti
-typedef void (APIENTRYP PFNGLRECTIVPROC)(const GLint *v1, const GLint *v2);
-GLAPI PFNGLRECTIVPROC glad_glRectiv;
-#define glRectiv glad_glRectiv
-typedef void (APIENTRYP PFNGLRECTSPROC)(GLshort x1, GLshort y1, GLshort x2, GLshort y2);
-GLAPI PFNGLRECTSPROC glad_glRects;
-#define glRects glad_glRects
-typedef void (APIENTRYP PFNGLRECTSVPROC)(const GLshort *v1, const GLshort *v2);
-GLAPI PFNGLRECTSVPROC glad_glRectsv;
-#define glRectsv glad_glRectsv
-typedef void (APIENTRYP PFNGLTEXCOORD1DPROC)(GLdouble s);
-GLAPI PFNGLTEXCOORD1DPROC glad_glTexCoord1d;
-#define glTexCoord1d glad_glTexCoord1d
-typedef void (APIENTRYP PFNGLTEXCOORD1DVPROC)(const GLdouble *v);
-GLAPI PFNGLTEXCOORD1DVPROC glad_glTexCoord1dv;
-#define glTexCoord1dv glad_glTexCoord1dv
-typedef void (APIENTRYP PFNGLTEXCOORD1FPROC)(GLfloat s);
-GLAPI PFNGLTEXCOORD1FPROC glad_glTexCoord1f;
-#define glTexCoord1f glad_glTexCoord1f
-typedef void (APIENTRYP PFNGLTEXCOORD1FVPROC)(const GLfloat *v);
-GLAPI PFNGLTEXCOORD1FVPROC glad_glTexCoord1fv;
-#define glTexCoord1fv glad_glTexCoord1fv
-typedef void (APIENTRYP PFNGLTEXCOORD1IPROC)(GLint s);
-GLAPI PFNGLTEXCOORD1IPROC glad_glTexCoord1i;
-#define glTexCoord1i glad_glTexCoord1i
-typedef void (APIENTRYP PFNGLTEXCOORD1IVPROC)(const GLint *v);
-GLAPI PFNGLTEXCOORD1IVPROC glad_glTexCoord1iv;
-#define glTexCoord1iv glad_glTexCoord1iv
-typedef void (APIENTRYP PFNGLTEXCOORD1SPROC)(GLshort s);
-GLAPI PFNGLTEXCOORD1SPROC glad_glTexCoord1s;
-#define glTexCoord1s glad_glTexCoord1s
-typedef void (APIENTRYP PFNGLTEXCOORD1SVPROC)(const GLshort *v);
-GLAPI PFNGLTEXCOORD1SVPROC glad_glTexCoord1sv;
-#define glTexCoord1sv glad_glTexCoord1sv
-typedef void (APIENTRYP PFNGLTEXCOORD2DPROC)(GLdouble s, GLdouble t);
-GLAPI PFNGLTEXCOORD2DPROC glad_glTexCoord2d;
-#define glTexCoord2d glad_glTexCoord2d
-typedef void (APIENTRYP PFNGLTEXCOORD2DVPROC)(const GLdouble *v);
-GLAPI PFNGLTEXCOORD2DVPROC glad_glTexCoord2dv;
-#define glTexCoord2dv glad_glTexCoord2dv
-typedef void (APIENTRYP PFNGLTEXCOORD2FPROC)(GLfloat s, GLfloat t);
-GLAPI PFNGLTEXCOORD2FPROC glad_glTexCoord2f;
-#define glTexCoord2f glad_glTexCoord2f
-typedef void (APIENTRYP PFNGLTEXCOORD2FVPROC)(const GLfloat *v);
-GLAPI PFNGLTEXCOORD2FVPROC glad_glTexCoord2fv;
-#define glTexCoord2fv glad_glTexCoord2fv
-typedef void (APIENTRYP PFNGLTEXCOORD2IPROC)(GLint s, GLint t);
-GLAPI PFNGLTEXCOORD2IPROC glad_glTexCoord2i;
-#define glTexCoord2i glad_glTexCoord2i
-typedef void (APIENTRYP PFNGLTEXCOORD2IVPROC)(const GLint *v);
-GLAPI PFNGLTEXCOORD2IVPROC glad_glTexCoord2iv;
-#define glTexCoord2iv glad_glTexCoord2iv
-typedef void (APIENTRYP PFNGLTEXCOORD2SPROC)(GLshort s, GLshort t);
-GLAPI PFNGLTEXCOORD2SPROC glad_glTexCoord2s;
-#define glTexCoord2s glad_glTexCoord2s
-typedef void (APIENTRYP PFNGLTEXCOORD2SVPROC)(const GLshort *v);
-GLAPI PFNGLTEXCOORD2SVPROC glad_glTexCoord2sv;
-#define glTexCoord2sv glad_glTexCoord2sv
-typedef void (APIENTRYP PFNGLTEXCOORD3DPROC)(GLdouble s, GLdouble t, GLdouble r);
-GLAPI PFNGLTEXCOORD3DPROC glad_glTexCoord3d;
-#define glTexCoord3d glad_glTexCoord3d
-typedef void (APIENTRYP PFNGLTEXCOORD3DVPROC)(const GLdouble *v);
-GLAPI PFNGLTEXCOORD3DVPROC glad_glTexCoord3dv;
-#define glTexCoord3dv glad_glTexCoord3dv
-typedef void (APIENTRYP PFNGLTEXCOORD3FPROC)(GLfloat s, GLfloat t, GLfloat r);
-GLAPI PFNGLTEXCOORD3FPROC glad_glTexCoord3f;
-#define glTexCoord3f glad_glTexCoord3f
-typedef void (APIENTRYP PFNGLTEXCOORD3FVPROC)(const GLfloat *v);
-GLAPI PFNGLTEXCOORD3FVPROC glad_glTexCoord3fv;
-#define glTexCoord3fv glad_glTexCoord3fv
-typedef void (APIENTRYP PFNGLTEXCOORD3IPROC)(GLint s, GLint t, GLint r);
-GLAPI PFNGLTEXCOORD3IPROC glad_glTexCoord3i;
-#define glTexCoord3i glad_glTexCoord3i
-typedef void (APIENTRYP PFNGLTEXCOORD3IVPROC)(const GLint *v);
-GLAPI PFNGLTEXCOORD3IVPROC glad_glTexCoord3iv;
-#define glTexCoord3iv glad_glTexCoord3iv
-typedef void (APIENTRYP PFNGLTEXCOORD3SPROC)(GLshort s, GLshort t, GLshort r);
-GLAPI PFNGLTEXCOORD3SPROC glad_glTexCoord3s;
-#define glTexCoord3s glad_glTexCoord3s
-typedef void (APIENTRYP PFNGLTEXCOORD3SVPROC)(const GLshort *v);
-GLAPI PFNGLTEXCOORD3SVPROC glad_glTexCoord3sv;
-#define glTexCoord3sv glad_glTexCoord3sv
-typedef void (APIENTRYP PFNGLTEXCOORD4DPROC)(GLdouble s, GLdouble t, GLdouble r, GLdouble q);
-GLAPI PFNGLTEXCOORD4DPROC glad_glTexCoord4d;
-#define glTexCoord4d glad_glTexCoord4d
-typedef void (APIENTRYP PFNGLTEXCOORD4DVPROC)(const GLdouble *v);
-GLAPI PFNGLTEXCOORD4DVPROC glad_glTexCoord4dv;
-#define glTexCoord4dv glad_glTexCoord4dv
-typedef void (APIENTRYP PFNGLTEXCOORD4FPROC)(GLfloat s, GLfloat t, GLfloat r, GLfloat q);
-GLAPI PFNGLTEXCOORD4FPROC glad_glTexCoord4f;
-#define glTexCoord4f glad_glTexCoord4f
-typedef void (APIENTRYP PFNGLTEXCOORD4FVPROC)(const GLfloat *v);
-GLAPI PFNGLTEXCOORD4FVPROC glad_glTexCoord4fv;
-#define glTexCoord4fv glad_glTexCoord4fv
-typedef void (APIENTRYP PFNGLTEXCOORD4IPROC)(GLint s, GLint t, GLint r, GLint q);
-GLAPI PFNGLTEXCOORD4IPROC glad_glTexCoord4i;
-#define glTexCoord4i glad_glTexCoord4i
-typedef void (APIENTRYP PFNGLTEXCOORD4IVPROC)(const GLint *v);
-GLAPI PFNGLTEXCOORD4IVPROC glad_glTexCoord4iv;
-#define glTexCoord4iv glad_glTexCoord4iv
-typedef void (APIENTRYP PFNGLTEXCOORD4SPROC)(GLshort s, GLshort t, GLshort r, GLshort q);
-GLAPI PFNGLTEXCOORD4SPROC glad_glTexCoord4s;
-#define glTexCoord4s glad_glTexCoord4s
-typedef void (APIENTRYP PFNGLTEXCOORD4SVPROC)(const GLshort *v);
-GLAPI PFNGLTEXCOORD4SVPROC glad_glTexCoord4sv;
-#define glTexCoord4sv glad_glTexCoord4sv
-typedef void (APIENTRYP PFNGLVERTEX2DPROC)(GLdouble x, GLdouble y);
-GLAPI PFNGLVERTEX2DPROC glad_glVertex2d;
-#define glVertex2d glad_glVertex2d
-typedef void (APIENTRYP PFNGLVERTEX2DVPROC)(const GLdouble *v);
-GLAPI PFNGLVERTEX2DVPROC glad_glVertex2dv;
-#define glVertex2dv glad_glVertex2dv
-typedef void (APIENTRYP PFNGLVERTEX2FPROC)(GLfloat x, GLfloat y);
-GLAPI PFNGLVERTEX2FPROC glad_glVertex2f;
-#define glVertex2f glad_glVertex2f
-typedef void (APIENTRYP PFNGLVERTEX2FVPROC)(const GLfloat *v);
-GLAPI PFNGLVERTEX2FVPROC glad_glVertex2fv;
-#define glVertex2fv glad_glVertex2fv
-typedef void (APIENTRYP PFNGLVERTEX2IPROC)(GLint x, GLint y);
-GLAPI PFNGLVERTEX2IPROC glad_glVertex2i;
-#define glVertex2i glad_glVertex2i
-typedef void (APIENTRYP PFNGLVERTEX2IVPROC)(const GLint *v);
-GLAPI PFNGLVERTEX2IVPROC glad_glVertex2iv;
-#define glVertex2iv glad_glVertex2iv
-typedef void (APIENTRYP PFNGLVERTEX2SPROC)(GLshort x, GLshort y);
-GLAPI PFNGLVERTEX2SPROC glad_glVertex2s;
-#define glVertex2s glad_glVertex2s
-typedef void (APIENTRYP PFNGLVERTEX2SVPROC)(const GLshort *v);
-GLAPI PFNGLVERTEX2SVPROC glad_glVertex2sv;
-#define glVertex2sv glad_glVertex2sv
-typedef void (APIENTRYP PFNGLVERTEX3DPROC)(GLdouble x, GLdouble y, GLdouble z);
-GLAPI PFNGLVERTEX3DPROC glad_glVertex3d;
-#define glVertex3d glad_glVertex3d
-typedef void (APIENTRYP PFNGLVERTEX3DVPROC)(const GLdouble *v);
-GLAPI PFNGLVERTEX3DVPROC glad_glVertex3dv;
-#define glVertex3dv glad_glVertex3dv
-typedef void (APIENTRYP PFNGLVERTEX3FPROC)(GLfloat x, GLfloat y, GLfloat z);
-GLAPI PFNGLVERTEX3FPROC glad_glVertex3f;
-#define glVertex3f glad_glVertex3f
-typedef void (APIENTRYP PFNGLVERTEX3FVPROC)(const GLfloat *v);
-GLAPI PFNGLVERTEX3FVPROC glad_glVertex3fv;
-#define glVertex3fv glad_glVertex3fv
-typedef void (APIENTRYP PFNGLVERTEX3IPROC)(GLint x, GLint y, GLint z);
-GLAPI PFNGLVERTEX3IPROC glad_glVertex3i;
-#define glVertex3i glad_glVertex3i
-typedef void (APIENTRYP PFNGLVERTEX3IVPROC)(const GLint *v);
-GLAPI PFNGLVERTEX3IVPROC glad_glVertex3iv;
-#define glVertex3iv glad_glVertex3iv
-typedef void (APIENTRYP PFNGLVERTEX3SPROC)(GLshort x, GLshort y, GLshort z);
-GLAPI PFNGLVERTEX3SPROC glad_glVertex3s;
-#define glVertex3s glad_glVertex3s
-typedef void (APIENTRYP PFNGLVERTEX3SVPROC)(const GLshort *v);
-GLAPI PFNGLVERTEX3SVPROC glad_glVertex3sv;
-#define glVertex3sv glad_glVertex3sv
-typedef void (APIENTRYP PFNGLVERTEX4DPROC)(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
-GLAPI PFNGLVERTEX4DPROC glad_glVertex4d;
-#define glVertex4d glad_glVertex4d
-typedef void (APIENTRYP PFNGLVERTEX4DVPROC)(const GLdouble *v);
-GLAPI PFNGLVERTEX4DVPROC glad_glVertex4dv;
-#define glVertex4dv glad_glVertex4dv
-typedef void (APIENTRYP PFNGLVERTEX4FPROC)(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
-GLAPI PFNGLVERTEX4FPROC glad_glVertex4f;
-#define glVertex4f glad_glVertex4f
-typedef void (APIENTRYP PFNGLVERTEX4FVPROC)(const GLfloat *v);
-GLAPI PFNGLVERTEX4FVPROC glad_glVertex4fv;
-#define glVertex4fv glad_glVertex4fv
-typedef void (APIENTRYP PFNGLVERTEX4IPROC)(GLint x, GLint y, GLint z, GLint w);
-GLAPI PFNGLVERTEX4IPROC glad_glVertex4i;
-#define glVertex4i glad_glVertex4i
-typedef void (APIENTRYP PFNGLVERTEX4IVPROC)(const GLint *v);
-GLAPI PFNGLVERTEX4IVPROC glad_glVertex4iv;
-#define glVertex4iv glad_glVertex4iv
-typedef void (APIENTRYP PFNGLVERTEX4SPROC)(GLshort x, GLshort y, GLshort z, GLshort w);
-GLAPI PFNGLVERTEX4SPROC glad_glVertex4s;
-#define glVertex4s glad_glVertex4s
-typedef void (APIENTRYP PFNGLVERTEX4SVPROC)(const GLshort *v);
-GLAPI PFNGLVERTEX4SVPROC glad_glVertex4sv;
-#define glVertex4sv glad_glVertex4sv
-typedef void (APIENTRYP PFNGLCLIPPLANEPROC)(GLenum plane, const GLdouble *equation);
-GLAPI PFNGLCLIPPLANEPROC glad_glClipPlane;
-#define glClipPlane glad_glClipPlane
-typedef void (APIENTRYP PFNGLCOLORMATERIALPROC)(GLenum face, GLenum mode);
-GLAPI PFNGLCOLORMATERIALPROC glad_glColorMaterial;
-#define glColorMaterial glad_glColorMaterial
-typedef void (APIENTRYP PFNGLFOGFPROC)(GLenum pname, GLfloat param);
-GLAPI PFNGLFOGFPROC glad_glFogf;
-#define glFogf glad_glFogf
-typedef void (APIENTRYP PFNGLFOGFVPROC)(GLenum pname, const GLfloat *params);
-GLAPI PFNGLFOGFVPROC glad_glFogfv;
-#define glFogfv glad_glFogfv
-typedef void (APIENTRYP PFNGLFOGIPROC)(GLenum pname, GLint param);
-GLAPI PFNGLFOGIPROC glad_glFogi;
-#define glFogi glad_glFogi
-typedef void (APIENTRYP PFNGLFOGIVPROC)(GLenum pname, const GLint *params);
-GLAPI PFNGLFOGIVPROC glad_glFogiv;
-#define glFogiv glad_glFogiv
-typedef void (APIENTRYP PFNGLLIGHTFPROC)(GLenum light, GLenum pname, GLfloat param);
-GLAPI PFNGLLIGHTFPROC glad_glLightf;
-#define glLightf glad_glLightf
-typedef void (APIENTRYP PFNGLLIGHTFVPROC)(GLenum light, GLenum pname, const GLfloat *params);
-GLAPI PFNGLLIGHTFVPROC glad_glLightfv;
-#define glLightfv glad_glLightfv
-typedef void (APIENTRYP PFNGLLIGHTIPROC)(GLenum light, GLenum pname, GLint param);
-GLAPI PFNGLLIGHTIPROC glad_glLighti;
-#define glLighti glad_glLighti
-typedef void (APIENTRYP PFNGLLIGHTIVPROC)(GLenum light, GLenum pname, const GLint *params);
-GLAPI PFNGLLIGHTIVPROC glad_glLightiv;
-#define glLightiv glad_glLightiv
-typedef void (APIENTRYP PFNGLLIGHTMODELFPROC)(GLenum pname, GLfloat param);
-GLAPI PFNGLLIGHTMODELFPROC glad_glLightModelf;
-#define glLightModelf glad_glLightModelf
-typedef void (APIENTRYP PFNGLLIGHTMODELFVPROC)(GLenum pname, const GLfloat *params);
-GLAPI PFNGLLIGHTMODELFVPROC glad_glLightModelfv;
-#define glLightModelfv glad_glLightModelfv
-typedef void (APIENTRYP PFNGLLIGHTMODELIPROC)(GLenum pname, GLint param);
-GLAPI PFNGLLIGHTMODELIPROC glad_glLightModeli;
-#define glLightModeli glad_glLightModeli
-typedef void (APIENTRYP PFNGLLIGHTMODELIVPROC)(GLenum pname, const GLint *params);
-GLAPI PFNGLLIGHTMODELIVPROC glad_glLightModeliv;
-#define glLightModeliv glad_glLightModeliv
-typedef void (APIENTRYP PFNGLLINESTIPPLEPROC)(GLint factor, GLushort pattern);
-GLAPI PFNGLLINESTIPPLEPROC glad_glLineStipple;
-#define glLineStipple glad_glLineStipple
-typedef void (APIENTRYP PFNGLMATERIALFPROC)(GLenum face, GLenum pname, GLfloat param);
-GLAPI PFNGLMATERIALFPROC glad_glMaterialf;
-#define glMaterialf glad_glMaterialf
-typedef void (APIENTRYP PFNGLMATERIALFVPROC)(GLenum face, GLenum pname, const GLfloat *params);
-GLAPI PFNGLMATERIALFVPROC glad_glMaterialfv;
-#define glMaterialfv glad_glMaterialfv
-typedef void (APIENTRYP PFNGLMATERIALIPROC)(GLenum face, GLenum pname, GLint param);
-GLAPI PFNGLMATERIALIPROC glad_glMateriali;
-#define glMateriali glad_glMateriali
-typedef void (APIENTRYP PFNGLMATERIALIVPROC)(GLenum face, GLenum pname, const GLint *params);
-GLAPI PFNGLMATERIALIVPROC glad_glMaterialiv;
-#define glMaterialiv glad_glMaterialiv
-typedef void (APIENTRYP PFNGLPOLYGONSTIPPLEPROC)(const GLubyte *mask);
-GLAPI PFNGLPOLYGONSTIPPLEPROC glad_glPolygonStipple;
-#define glPolygonStipple glad_glPolygonStipple
-typedef void (APIENTRYP PFNGLSHADEMODELPROC)(GLenum mode);
-GLAPI PFNGLSHADEMODELPROC glad_glShadeModel;
-#define glShadeModel glad_glShadeModel
-typedef void (APIENTRYP PFNGLTEXENVFPROC)(GLenum target, GLenum pname, GLfloat param);
-GLAPI PFNGLTEXENVFPROC glad_glTexEnvf;
-#define glTexEnvf glad_glTexEnvf
-typedef void (APIENTRYP PFNGLTEXENVFVPROC)(GLenum target, GLenum pname, const GLfloat *params);
-GLAPI PFNGLTEXENVFVPROC glad_glTexEnvfv;
-#define glTexEnvfv glad_glTexEnvfv
-typedef void (APIENTRYP PFNGLTEXENVIPROC)(GLenum target, GLenum pname, GLint param);
-GLAPI PFNGLTEXENVIPROC glad_glTexEnvi;
-#define glTexEnvi glad_glTexEnvi
-typedef void (APIENTRYP PFNGLTEXENVIVPROC)(GLenum target, GLenum pname, const GLint *params);
-GLAPI PFNGLTEXENVIVPROC glad_glTexEnviv;
-#define glTexEnviv glad_glTexEnviv
-typedef void (APIENTRYP PFNGLTEXGENDPROC)(GLenum coord, GLenum pname, GLdouble param);
-GLAPI PFNGLTEXGENDPROC glad_glTexGend;
-#define glTexGend glad_glTexGend
-typedef void (APIENTRYP PFNGLTEXGENDVPROC)(GLenum coord, GLenum pname, const GLdouble *params);
-GLAPI PFNGLTEXGENDVPROC glad_glTexGendv;
-#define glTexGendv glad_glTexGendv
-typedef void (APIENTRYP PFNGLTEXGENFPROC)(GLenum coord, GLenum pname, GLfloat param);
-GLAPI PFNGLTEXGENFPROC glad_glTexGenf;
-#define glTexGenf glad_glTexGenf
-typedef void (APIENTRYP PFNGLTEXGENFVPROC)(GLenum coord, GLenum pname, const GLfloat *params);
-GLAPI PFNGLTEXGENFVPROC glad_glTexGenfv;
-#define glTexGenfv glad_glTexGenfv
-typedef void (APIENTRYP PFNGLTEXGENIPROC)(GLenum coord, GLenum pname, GLint param);
-GLAPI PFNGLTEXGENIPROC glad_glTexGeni;
-#define glTexGeni glad_glTexGeni
-typedef void (APIENTRYP PFNGLTEXGENIVPROC)(GLenum coord, GLenum pname, const GLint *params);
-GLAPI PFNGLTEXGENIVPROC glad_glTexGeniv;
-#define glTexGeniv glad_glTexGeniv
-typedef void (APIENTRYP PFNGLFEEDBACKBUFFERPROC)(GLsizei size, GLenum type, GLfloat *buffer);
-GLAPI PFNGLFEEDBACKBUFFERPROC glad_glFeedbackBuffer;
-#define glFeedbackBuffer glad_glFeedbackBuffer
-typedef void (APIENTRYP PFNGLSELECTBUFFERPROC)(GLsizei size, GLuint *buffer);
-GLAPI PFNGLSELECTBUFFERPROC glad_glSelectBuffer;
-#define glSelectBuffer glad_glSelectBuffer
-typedef GLint (APIENTRYP PFNGLRENDERMODEPROC)(GLenum mode);
-GLAPI PFNGLRENDERMODEPROC glad_glRenderMode;
-#define glRenderMode glad_glRenderMode
-typedef void (APIENTRYP PFNGLINITNAMESPROC)(void);
-GLAPI PFNGLINITNAMESPROC glad_glInitNames;
-#define glInitNames glad_glInitNames
-typedef void (APIENTRYP PFNGLLOADNAMEPROC)(GLuint name);
-GLAPI PFNGLLOADNAMEPROC glad_glLoadName;
-#define glLoadName glad_glLoadName
-typedef void (APIENTRYP PFNGLPASSTHROUGHPROC)(GLfloat token);
-GLAPI PFNGLPASSTHROUGHPROC glad_glPassThrough;
-#define glPassThrough glad_glPassThrough
-typedef void (APIENTRYP PFNGLPOPNAMEPROC)(void);
-GLAPI PFNGLPOPNAMEPROC glad_glPopName;
-#define glPopName glad_glPopName
-typedef void (APIENTRYP PFNGLPUSHNAMEPROC)(GLuint name);
-GLAPI PFNGLPUSHNAMEPROC glad_glPushName;
-#define glPushName glad_glPushName
-typedef void (APIENTRYP PFNGLCLEARACCUMPROC)(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
-GLAPI PFNGLCLEARACCUMPROC glad_glClearAccum;
-#define glClearAccum glad_glClearAccum
-typedef void (APIENTRYP PFNGLCLEARINDEXPROC)(GLfloat c);
-GLAPI PFNGLCLEARINDEXPROC glad_glClearIndex;
-#define glClearIndex glad_glClearIndex
-typedef void (APIENTRYP PFNGLINDEXMASKPROC)(GLuint mask);
-GLAPI PFNGLINDEXMASKPROC glad_glIndexMask;
-#define glIndexMask glad_glIndexMask
-typedef void (APIENTRYP PFNGLACCUMPROC)(GLenum op, GLfloat value);
-GLAPI PFNGLACCUMPROC glad_glAccum;
-#define glAccum glad_glAccum
-typedef void (APIENTRYP PFNGLPOPATTRIBPROC)(void);
-GLAPI PFNGLPOPATTRIBPROC glad_glPopAttrib;
-#define glPopAttrib glad_glPopAttrib
-typedef void (APIENTRYP PFNGLPUSHATTRIBPROC)(GLbitfield mask);
-GLAPI PFNGLPUSHATTRIBPROC glad_glPushAttrib;
-#define glPushAttrib glad_glPushAttrib
-typedef void (APIENTRYP PFNGLMAP1DPROC)(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points);
-GLAPI PFNGLMAP1DPROC glad_glMap1d;
-#define glMap1d glad_glMap1d
-typedef void (APIENTRYP PFNGLMAP1FPROC)(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points);
-GLAPI PFNGLMAP1FPROC glad_glMap1f;
-#define glMap1f glad_glMap1f
-typedef void (APIENTRYP PFNGLMAP2DPROC)(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points);
-GLAPI PFNGLMAP2DPROC glad_glMap2d;
-#define glMap2d glad_glMap2d
-typedef void (APIENTRYP PFNGLMAP2FPROC)(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points);
-GLAPI PFNGLMAP2FPROC glad_glMap2f;
-#define glMap2f glad_glMap2f
-typedef void (APIENTRYP PFNGLMAPGRID1DPROC)(GLint un, GLdouble u1, GLdouble u2);
-GLAPI PFNGLMAPGRID1DPROC glad_glMapGrid1d;
-#define glMapGrid1d glad_glMapGrid1d
-typedef void (APIENTRYP PFNGLMAPGRID1FPROC)(GLint un, GLfloat u1, GLfloat u2);
-GLAPI PFNGLMAPGRID1FPROC glad_glMapGrid1f;
-#define glMapGrid1f glad_glMapGrid1f
-typedef void (APIENTRYP PFNGLMAPGRID2DPROC)(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2);
-GLAPI PFNGLMAPGRID2DPROC glad_glMapGrid2d;
-#define glMapGrid2d glad_glMapGrid2d
-typedef void (APIENTRYP PFNGLMAPGRID2FPROC)(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2);
-GLAPI PFNGLMAPGRID2FPROC glad_glMapGrid2f;
-#define glMapGrid2f glad_glMapGrid2f
-typedef void (APIENTRYP PFNGLEVALCOORD1DPROC)(GLdouble u);
-GLAPI PFNGLEVALCOORD1DPROC glad_glEvalCoord1d;
-#define glEvalCoord1d glad_glEvalCoord1d
-typedef void (APIENTRYP PFNGLEVALCOORD1DVPROC)(const GLdouble *u);
-GLAPI PFNGLEVALCOORD1DVPROC glad_glEvalCoord1dv;
-#define glEvalCoord1dv glad_glEvalCoord1dv
-typedef void (APIENTRYP PFNGLEVALCOORD1FPROC)(GLfloat u);
-GLAPI PFNGLEVALCOORD1FPROC glad_glEvalCoord1f;
-#define glEvalCoord1f glad_glEvalCoord1f
-typedef void (APIENTRYP PFNGLEVALCOORD1FVPROC)(const GLfloat *u);
-GLAPI PFNGLEVALCOORD1FVPROC glad_glEvalCoord1fv;
-#define glEvalCoord1fv glad_glEvalCoord1fv
-typedef void (APIENTRYP PFNGLEVALCOORD2DPROC)(GLdouble u, GLdouble v);
-GLAPI PFNGLEVALCOORD2DPROC glad_glEvalCoord2d;
-#define glEvalCoord2d glad_glEvalCoord2d
-typedef void (APIENTRYP PFNGLEVALCOORD2DVPROC)(const GLdouble *u);
-GLAPI PFNGLEVALCOORD2DVPROC glad_glEvalCoord2dv;
-#define glEvalCoord2dv glad_glEvalCoord2dv
-typedef void (APIENTRYP PFNGLEVALCOORD2FPROC)(GLfloat u, GLfloat v);
-GLAPI PFNGLEVALCOORD2FPROC glad_glEvalCoord2f;
-#define glEvalCoord2f glad_glEvalCoord2f
-typedef void (APIENTRYP PFNGLEVALCOORD2FVPROC)(const GLfloat *u);
-GLAPI PFNGLEVALCOORD2FVPROC glad_glEvalCoord2fv;
-#define glEvalCoord2fv glad_glEvalCoord2fv
-typedef void (APIENTRYP PFNGLEVALMESH1PROC)(GLenum mode, GLint i1, GLint i2);
-GLAPI PFNGLEVALMESH1PROC glad_glEvalMesh1;
-#define glEvalMesh1 glad_glEvalMesh1
-typedef void (APIENTRYP PFNGLEVALPOINT1PROC)(GLint i);
-GLAPI PFNGLEVALPOINT1PROC glad_glEvalPoint1;
-#define glEvalPoint1 glad_glEvalPoint1
-typedef void (APIENTRYP PFNGLEVALMESH2PROC)(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2);
-GLAPI PFNGLEVALMESH2PROC glad_glEvalMesh2;
-#define glEvalMesh2 glad_glEvalMesh2
-typedef void (APIENTRYP PFNGLEVALPOINT2PROC)(GLint i, GLint j);
-GLAPI PFNGLEVALPOINT2PROC glad_glEvalPoint2;
-#define glEvalPoint2 glad_glEvalPoint2
-typedef void (APIENTRYP PFNGLALPHAFUNCPROC)(GLenum func, GLfloat ref);
-GLAPI PFNGLALPHAFUNCPROC glad_glAlphaFunc;
-#define glAlphaFunc glad_glAlphaFunc
-typedef void (APIENTRYP PFNGLPIXELZOOMPROC)(GLfloat xfactor, GLfloat yfactor);
-GLAPI PFNGLPIXELZOOMPROC glad_glPixelZoom;
-#define glPixelZoom glad_glPixelZoom
-typedef void (APIENTRYP PFNGLPIXELTRANSFERFPROC)(GLenum pname, GLfloat param);
-GLAPI PFNGLPIXELTRANSFERFPROC glad_glPixelTransferf;
-#define glPixelTransferf glad_glPixelTransferf
-typedef void (APIENTRYP PFNGLPIXELTRANSFERIPROC)(GLenum pname, GLint param);
-GLAPI PFNGLPIXELTRANSFERIPROC glad_glPixelTransferi;
-#define glPixelTransferi glad_glPixelTransferi
-typedef void (APIENTRYP PFNGLPIXELMAPFVPROC)(GLenum map, GLsizei mapsize, const GLfloat *values);
-GLAPI PFNGLPIXELMAPFVPROC glad_glPixelMapfv;
-#define glPixelMapfv glad_glPixelMapfv
-typedef void (APIENTRYP PFNGLPIXELMAPUIVPROC)(GLenum map, GLsizei mapsize, const GLuint *values);
-GLAPI PFNGLPIXELMAPUIVPROC glad_glPixelMapuiv;
-#define glPixelMapuiv glad_glPixelMapuiv
-typedef void (APIENTRYP PFNGLPIXELMAPUSVPROC)(GLenum map, GLsizei mapsize, const GLushort *values);
-GLAPI PFNGLPIXELMAPUSVPROC glad_glPixelMapusv;
-#define glPixelMapusv glad_glPixelMapusv
-typedef void (APIENTRYP PFNGLCOPYPIXELSPROC)(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type);
-GLAPI PFNGLCOPYPIXELSPROC glad_glCopyPixels;
-#define glCopyPixels glad_glCopyPixels
-typedef void (APIENTRYP PFNGLDRAWPIXELSPROC)(GLsizei width, GLsizei height, GLenum format, GLenum type, const void *pixels);
-GLAPI PFNGLDRAWPIXELSPROC glad_glDrawPixels;
-#define glDrawPixels glad_glDrawPixels
-typedef void (APIENTRYP PFNGLGETCLIPPLANEPROC)(GLenum plane, GLdouble *equation);
-GLAPI PFNGLGETCLIPPLANEPROC glad_glGetClipPlane;
-#define glGetClipPlane glad_glGetClipPlane
-typedef void (APIENTRYP PFNGLGETLIGHTFVPROC)(GLenum light, GLenum pname, GLfloat *params);
-GLAPI PFNGLGETLIGHTFVPROC glad_glGetLightfv;
-#define glGetLightfv glad_glGetLightfv
-typedef void (APIENTRYP PFNGLGETLIGHTIVPROC)(GLenum light, GLenum pname, GLint *params);
-GLAPI PFNGLGETLIGHTIVPROC glad_glGetLightiv;
-#define glGetLightiv glad_glGetLightiv
-typedef void (APIENTRYP PFNGLGETMAPDVPROC)(GLenum target, GLenum query, GLdouble *v);
-GLAPI PFNGLGETMAPDVPROC glad_glGetMapdv;
-#define glGetMapdv glad_glGetMapdv
-typedef void (APIENTRYP PFNGLGETMAPFVPROC)(GLenum target, GLenum query, GLfloat *v);
-GLAPI PFNGLGETMAPFVPROC glad_glGetMapfv;
-#define glGetMapfv glad_glGetMapfv
-typedef void (APIENTRYP PFNGLGETMAPIVPROC)(GLenum target, GLenum query, GLint *v);
-GLAPI PFNGLGETMAPIVPROC glad_glGetMapiv;
-#define glGetMapiv glad_glGetMapiv
-typedef void (APIENTRYP PFNGLGETMATERIALFVPROC)(GLenum face, GLenum pname, GLfloat *params);
-GLAPI PFNGLGETMATERIALFVPROC glad_glGetMaterialfv;
-#define glGetMaterialfv glad_glGetMaterialfv
-typedef void (APIENTRYP PFNGLGETMATERIALIVPROC)(GLenum face, GLenum pname, GLint *params);
-GLAPI PFNGLGETMATERIALIVPROC glad_glGetMaterialiv;
-#define glGetMaterialiv glad_glGetMaterialiv
-typedef void (APIENTRYP PFNGLGETPIXELMAPFVPROC)(GLenum map, GLfloat *values);
-GLAPI PFNGLGETPIXELMAPFVPROC glad_glGetPixelMapfv;
-#define glGetPixelMapfv glad_glGetPixelMapfv
-typedef void (APIENTRYP PFNGLGETPIXELMAPUIVPROC)(GLenum map, GLuint *values);
-GLAPI PFNGLGETPIXELMAPUIVPROC glad_glGetPixelMapuiv;
-#define glGetPixelMapuiv glad_glGetPixelMapuiv
-typedef void (APIENTRYP PFNGLGETPIXELMAPUSVPROC)(GLenum map, GLushort *values);
-GLAPI PFNGLGETPIXELMAPUSVPROC glad_glGetPixelMapusv;
-#define glGetPixelMapusv glad_glGetPixelMapusv
-typedef void (APIENTRYP PFNGLGETPOLYGONSTIPPLEPROC)(GLubyte *mask);
-GLAPI PFNGLGETPOLYGONSTIPPLEPROC glad_glGetPolygonStipple;
-#define glGetPolygonStipple glad_glGetPolygonStipple
-typedef void (APIENTRYP PFNGLGETTEXENVFVPROC)(GLenum target, GLenum pname, GLfloat *params);
-GLAPI PFNGLGETTEXENVFVPROC glad_glGetTexEnvfv;
-#define glGetTexEnvfv glad_glGetTexEnvfv
-typedef void (APIENTRYP PFNGLGETTEXENVIVPROC)(GLenum target, GLenum pname, GLint *params);
-GLAPI PFNGLGETTEXENVIVPROC glad_glGetTexEnviv;
-#define glGetTexEnviv glad_glGetTexEnviv
-typedef void (APIENTRYP PFNGLGETTEXGENDVPROC)(GLenum coord, GLenum pname, GLdouble *params);
-GLAPI PFNGLGETTEXGENDVPROC glad_glGetTexGendv;
-#define glGetTexGendv glad_glGetTexGendv
-typedef void (APIENTRYP PFNGLGETTEXGENFVPROC)(GLenum coord, GLenum pname, GLfloat *params);
-GLAPI PFNGLGETTEXGENFVPROC glad_glGetTexGenfv;
-#define glGetTexGenfv glad_glGetTexGenfv
-typedef void (APIENTRYP PFNGLGETTEXGENIVPROC)(GLenum coord, GLenum pname, GLint *params);
-GLAPI PFNGLGETTEXGENIVPROC glad_glGetTexGeniv;
-#define glGetTexGeniv glad_glGetTexGeniv
-typedef GLboolean (APIENTRYP PFNGLISLISTPROC)(GLuint list);
-GLAPI PFNGLISLISTPROC glad_glIsList;
-#define glIsList glad_glIsList
-typedef void (APIENTRYP PFNGLFRUSTUMPROC)(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
-GLAPI PFNGLFRUSTUMPROC glad_glFrustum;
-#define glFrustum glad_glFrustum
-typedef void (APIENTRYP PFNGLLOADIDENTITYPROC)(void);
-GLAPI PFNGLLOADIDENTITYPROC glad_glLoadIdentity;
-#define glLoadIdentity glad_glLoadIdentity
-typedef void (APIENTRYP PFNGLLOADMATRIXFPROC)(const GLfloat *m);
-GLAPI PFNGLLOADMATRIXFPROC glad_glLoadMatrixf;
-#define glLoadMatrixf glad_glLoadMatrixf
-typedef void (APIENTRYP PFNGLLOADMATRIXDPROC)(const GLdouble *m);
-GLAPI PFNGLLOADMATRIXDPROC glad_glLoadMatrixd;
-#define glLoadMatrixd glad_glLoadMatrixd
-typedef void (APIENTRYP PFNGLMATRIXMODEPROC)(GLenum mode);
-GLAPI PFNGLMATRIXMODEPROC glad_glMatrixMode;
-#define glMatrixMode glad_glMatrixMode
-typedef void (APIENTRYP PFNGLMULTMATRIXFPROC)(const GLfloat *m);
-GLAPI PFNGLMULTMATRIXFPROC glad_glMultMatrixf;
-#define glMultMatrixf glad_glMultMatrixf
-typedef void (APIENTRYP PFNGLMULTMATRIXDPROC)(const GLdouble *m);
-GLAPI PFNGLMULTMATRIXDPROC glad_glMultMatrixd;
-#define glMultMatrixd glad_glMultMatrixd
-typedef void (APIENTRYP PFNGLORTHOPROC)(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
-GLAPI PFNGLORTHOPROC glad_glOrtho;
-#define glOrtho glad_glOrtho
-typedef void (APIENTRYP PFNGLPOPMATRIXPROC)(void);
-GLAPI PFNGLPOPMATRIXPROC glad_glPopMatrix;
-#define glPopMatrix glad_glPopMatrix
-typedef void (APIENTRYP PFNGLPUSHMATRIXPROC)(void);
-GLAPI PFNGLPUSHMATRIXPROC glad_glPushMatrix;
-#define glPushMatrix glad_glPushMatrix
-typedef void (APIENTRYP PFNGLROTATEDPROC)(GLdouble angle, GLdouble x, GLdouble y, GLdouble z);
-GLAPI PFNGLROTATEDPROC glad_glRotated;
-#define glRotated glad_glRotated
-typedef void (APIENTRYP PFNGLROTATEFPROC)(GLfloat angle, GLfloat x, GLfloat y, GLfloat z);
-GLAPI PFNGLROTATEFPROC glad_glRotatef;
-#define glRotatef glad_glRotatef
-typedef void (APIENTRYP PFNGLSCALEDPROC)(GLdouble x, GLdouble y, GLdouble z);
-GLAPI PFNGLSCALEDPROC glad_glScaled;
-#define glScaled glad_glScaled
-typedef void (APIENTRYP PFNGLSCALEFPROC)(GLfloat x, GLfloat y, GLfloat z);
-GLAPI PFNGLSCALEFPROC glad_glScalef;
-#define glScalef glad_glScalef
-typedef void (APIENTRYP PFNGLTRANSLATEDPROC)(GLdouble x, GLdouble y, GLdouble z);
-GLAPI PFNGLTRANSLATEDPROC glad_glTranslated;
-#define glTranslated glad_glTranslated
-typedef void (APIENTRYP PFNGLTRANSLATEFPROC)(GLfloat x, GLfloat y, GLfloat z);
-GLAPI PFNGLTRANSLATEFPROC glad_glTranslatef;
-#define glTranslatef glad_glTranslatef
-#endif
-#ifndef GL_VERSION_1_1
-#define GL_VERSION_1_1 1
-GLAPI int GLAD_GL_VERSION_1_1;
-typedef void (APIENTRYP PFNGLDRAWARRAYSPROC)(GLenum mode, GLint first, GLsizei count);
-GLAPI PFNGLDRAWARRAYSPROC glad_glDrawArrays;
-#define glDrawArrays glad_glDrawArrays
-typedef void (APIENTRYP PFNGLDRAWELEMENTSPROC)(GLenum mode, GLsizei count, GLenum type, const void *indices);
-GLAPI PFNGLDRAWELEMENTSPROC glad_glDrawElements;
-#define glDrawElements glad_glDrawElements
-typedef void (APIENTRYP PFNGLGETPOINTERVPROC)(GLenum pname, void **params);
-GLAPI PFNGLGETPOINTERVPROC glad_glGetPointerv;
-#define glGetPointerv glad_glGetPointerv
-typedef void (APIENTRYP PFNGLPOLYGONOFFSETPROC)(GLfloat factor, GLfloat units);
-GLAPI PFNGLPOLYGONOFFSETPROC glad_glPolygonOffset;
-#define glPolygonOffset glad_glPolygonOffset
-typedef void (APIENTRYP PFNGLCOPYTEXIMAGE1DPROC)(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
-GLAPI PFNGLCOPYTEXIMAGE1DPROC glad_glCopyTexImage1D;
-#define glCopyTexImage1D glad_glCopyTexImage1D
-typedef void (APIENTRYP PFNGLCOPYTEXIMAGE2DPROC)(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
-GLAPI PFNGLCOPYTEXIMAGE2DPROC glad_glCopyTexImage2D;
-#define glCopyTexImage2D glad_glCopyTexImage2D
-typedef void (APIENTRYP PFNGLCOPYTEXSUBIMAGE1DPROC)(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
-GLAPI PFNGLCOPYTEXSUBIMAGE1DPROC glad_glCopyTexSubImage1D;
-#define glCopyTexSubImage1D glad_glCopyTexSubImage1D
-typedef void (APIENTRYP PFNGLCOPYTEXSUBIMAGE2DPROC)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
-GLAPI PFNGLCOPYTEXSUBIMAGE2DPROC glad_glCopyTexSubImage2D;
-#define glCopyTexSubImage2D glad_glCopyTexSubImage2D
-typedef void (APIENTRYP PFNGLTEXSUBIMAGE1DPROC)(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void *pixels);
-GLAPI PFNGLTEXSUBIMAGE1DPROC glad_glTexSubImage1D;
-#define glTexSubImage1D glad_glTexSubImage1D
-typedef void (APIENTRYP PFNGLTEXSUBIMAGE2DPROC)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *pixels);
-GLAPI PFNGLTEXSUBIMAGE2DPROC glad_glTexSubImage2D;
-#define glTexSubImage2D glad_glTexSubImage2D
-typedef void (APIENTRYP PFNGLBINDTEXTUREPROC)(GLenum target, GLuint texture);
-GLAPI PFNGLBINDTEXTUREPROC glad_glBindTexture;
-#define glBindTexture glad_glBindTexture
-typedef void (APIENTRYP PFNGLDELETETEXTURESPROC)(GLsizei n, const GLuint *textures);
-GLAPI PFNGLDELETETEXTURESPROC glad_glDeleteTextures;
-#define glDeleteTextures glad_glDeleteTextures
-typedef void (APIENTRYP PFNGLGENTEXTURESPROC)(GLsizei n, GLuint *textures);
-GLAPI PFNGLGENTEXTURESPROC glad_glGenTextures;
-#define glGenTextures glad_glGenTextures
-typedef GLboolean (APIENTRYP PFNGLISTEXTUREPROC)(GLuint texture);
-GLAPI PFNGLISTEXTUREPROC glad_glIsTexture;
-#define glIsTexture glad_glIsTexture
-typedef void (APIENTRYP PFNGLARRAYELEMENTPROC)(GLint i);
-GLAPI PFNGLARRAYELEMENTPROC glad_glArrayElement;
-#define glArrayElement glad_glArrayElement
-typedef void (APIENTRYP PFNGLCOLORPOINTERPROC)(GLint size, GLenum type, GLsizei stride, const void *pointer);
-GLAPI PFNGLCOLORPOINTERPROC glad_glColorPointer;
-#define glColorPointer glad_glColorPointer
-typedef void (APIENTRYP PFNGLDISABLECLIENTSTATEPROC)(GLenum array);
-GLAPI PFNGLDISABLECLIENTSTATEPROC glad_glDisableClientState;
-#define glDisableClientState glad_glDisableClientState
-typedef void (APIENTRYP PFNGLEDGEFLAGPOINTERPROC)(GLsizei stride, const void *pointer);
-GLAPI PFNGLEDGEFLAGPOINTERPROC glad_glEdgeFlagPointer;
-#define glEdgeFlagPointer glad_glEdgeFlagPointer
-typedef void (APIENTRYP PFNGLENABLECLIENTSTATEPROC)(GLenum array);
-GLAPI PFNGLENABLECLIENTSTATEPROC glad_glEnableClientState;
-#define glEnableClientState glad_glEnableClientState
-typedef void (APIENTRYP PFNGLINDEXPOINTERPROC)(GLenum type, GLsizei stride, const void *pointer);
-GLAPI PFNGLINDEXPOINTERPROC glad_glIndexPointer;
-#define glIndexPointer glad_glIndexPointer
-typedef void (APIENTRYP PFNGLINTERLEAVEDARRAYSPROC)(GLenum format, GLsizei stride, const void *pointer);
-GLAPI PFNGLINTERLEAVEDARRAYSPROC glad_glInterleavedArrays;
-#define glInterleavedArrays glad_glInterleavedArrays
-typedef void (APIENTRYP PFNGLNORMALPOINTERPROC)(GLenum type, GLsizei stride, const void *pointer);
-GLAPI PFNGLNORMALPOINTERPROC glad_glNormalPointer;
-#define glNormalPointer glad_glNormalPointer
-typedef void (APIENTRYP PFNGLTEXCOORDPOINTERPROC)(GLint size, GLenum type, GLsizei stride, const void *pointer);
-GLAPI PFNGLTEXCOORDPOINTERPROC glad_glTexCoordPointer;
-#define glTexCoordPointer glad_glTexCoordPointer
-typedef void (APIENTRYP PFNGLVERTEXPOINTERPROC)(GLint size, GLenum type, GLsizei stride, const void *pointer);
-GLAPI PFNGLVERTEXPOINTERPROC glad_glVertexPointer;
-#define glVertexPointer glad_glVertexPointer
-typedef GLboolean (APIENTRYP PFNGLARETEXTURESRESIDENTPROC)(GLsizei n, const GLuint *textures, GLboolean *residences);
-GLAPI PFNGLARETEXTURESRESIDENTPROC glad_glAreTexturesResident;
-#define glAreTexturesResident glad_glAreTexturesResident
-typedef void (APIENTRYP PFNGLPRIORITIZETEXTURESPROC)(GLsizei n, const GLuint *textures, const GLfloat *priorities);
-GLAPI PFNGLPRIORITIZETEXTURESPROC glad_glPrioritizeTextures;
-#define glPrioritizeTextures glad_glPrioritizeTextures
-typedef void (APIENTRYP PFNGLINDEXUBPROC)(GLubyte c);
-GLAPI PFNGLINDEXUBPROC glad_glIndexub;
-#define glIndexub glad_glIndexub
-typedef void (APIENTRYP PFNGLINDEXUBVPROC)(const GLubyte *c);
-GLAPI PFNGLINDEXUBVPROC glad_glIndexubv;
-#define glIndexubv glad_glIndexubv
-typedef void (APIENTRYP PFNGLPOPCLIENTATTRIBPROC)(void);
-GLAPI PFNGLPOPCLIENTATTRIBPROC glad_glPopClientAttrib;
-#define glPopClientAttrib glad_glPopClientAttrib
-typedef void (APIENTRYP PFNGLPUSHCLIENTATTRIBPROC)(GLbitfield mask);
-GLAPI PFNGLPUSHCLIENTATTRIBPROC glad_glPushClientAttrib;
-#define glPushClientAttrib glad_glPushClientAttrib
-#endif
-#ifndef GL_VERSION_1_2
-#define GL_VERSION_1_2 1
-GLAPI int GLAD_GL_VERSION_1_2;
-typedef void (APIENTRYP PFNGLDRAWRANGEELEMENTSPROC)(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const void *indices);
-GLAPI PFNGLDRAWRANGEELEMENTSPROC glad_glDrawRangeElements;
-#define glDrawRangeElements glad_glDrawRangeElements
-typedef void (APIENTRYP PFNGLTEXIMAGE3DPROC)(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void *pixels);
-GLAPI PFNGLTEXIMAGE3DPROC glad_glTexImage3D;
-#define glTexImage3D glad_glTexImage3D
-typedef void (APIENTRYP PFNGLTEXSUBIMAGE3DPROC)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *pixels);
-GLAPI PFNGLTEXSUBIMAGE3DPROC glad_glTexSubImage3D;
-#define glTexSubImage3D glad_glTexSubImage3D
-typedef void (APIENTRYP PFNGLCOPYTEXSUBIMAGE3DPROC)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
-GLAPI PFNGLCOPYTEXSUBIMAGE3DPROC glad_glCopyTexSubImage3D;
-#define glCopyTexSubImage3D glad_glCopyTexSubImage3D
-#endif
-#ifndef GL_VERSION_1_3
-#define GL_VERSION_1_3 1
-GLAPI int GLAD_GL_VERSION_1_3;
-typedef void (APIENTRYP PFNGLACTIVETEXTUREPROC)(GLenum texture);
-GLAPI PFNGLACTIVETEXTUREPROC glad_glActiveTexture;
-#define glActiveTexture glad_glActiveTexture
-typedef void (APIENTRYP PFNGLSAMPLECOVERAGEPROC)(GLfloat value, GLboolean invert);
-GLAPI PFNGLSAMPLECOVERAGEPROC glad_glSampleCoverage;
-#define glSampleCoverage glad_glSampleCoverage
-typedef void (APIENTRYP PFNGLCOMPRESSEDTEXIMAGE3DPROC)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void *data);
-GLAPI PFNGLCOMPRESSEDTEXIMAGE3DPROC glad_glCompressedTexImage3D;
-#define glCompressedTexImage3D glad_glCompressedTexImage3D
-typedef void (APIENTRYP PFNGLCOMPRESSEDTEXIMAGE2DPROC)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const void *data);
-GLAPI PFNGLCOMPRESSEDTEXIMAGE2DPROC glad_glCompressedTexImage2D;
-#define glCompressedTexImage2D glad_glCompressedTexImage2D
-typedef void (APIENTRYP PFNGLCOMPRESSEDTEXIMAGE1DPROC)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const void *data);
-GLAPI PFNGLCOMPRESSEDTEXIMAGE1DPROC glad_glCompressedTexImage1D;
-#define glCompressedTexImage1D glad_glCompressedTexImage1D
-typedef void (APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *data);
-GLAPI PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC glad_glCompressedTexSubImage3D;
-#define glCompressedTexSubImage3D glad_glCompressedTexSubImage3D
-typedef void (APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void *data);
-GLAPI PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC glad_glCompressedTexSubImage2D;
-#define glCompressedTexSubImage2D glad_glCompressedTexSubImage2D
-typedef void (APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC)(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void *data);
-GLAPI PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC glad_glCompressedTexSubImage1D;
-#define glCompressedTexSubImage1D glad_glCompressedTexSubImage1D
-typedef void (APIENTRYP PFNGLGETCOMPRESSEDTEXIMAGEPROC)(GLenum target, GLint level, void *img);
-GLAPI PFNGLGETCOMPRESSEDTEXIMAGEPROC glad_glGetCompressedTexImage;
-#define glGetCompressedTexImage glad_glGetCompressedTexImage
-typedef void (APIENTRYP PFNGLCLIENTACTIVETEXTUREPROC)(GLenum texture);
-GLAPI PFNGLCLIENTACTIVETEXTUREPROC glad_glClientActiveTexture;
-#define glClientActiveTexture glad_glClientActiveTexture
-typedef void (APIENTRYP PFNGLMULTITEXCOORD1DPROC)(GLenum target, GLdouble s);
-GLAPI PFNGLMULTITEXCOORD1DPROC glad_glMultiTexCoord1d;
-#define glMultiTexCoord1d glad_glMultiTexCoord1d
-typedef void (APIENTRYP PFNGLMULTITEXCOORD1DVPROC)(GLenum target, const GLdouble *v);
-GLAPI PFNGLMULTITEXCOORD1DVPROC glad_glMultiTexCoord1dv;
-#define glMultiTexCoord1dv glad_glMultiTexCoord1dv
-typedef void (APIENTRYP PFNGLMULTITEXCOORD1FPROC)(GLenum target, GLfloat s);
-GLAPI PFNGLMULTITEXCOORD1FPROC glad_glMultiTexCoord1f;
-#define glMultiTexCoord1f glad_glMultiTexCoord1f
-typedef void (APIENTRYP PFNGLMULTITEXCOORD1FVPROC)(GLenum target, const GLfloat *v);
-GLAPI PFNGLMULTITEXCOORD1FVPROC glad_glMultiTexCoord1fv;
-#define glMultiTexCoord1fv glad_glMultiTexCoord1fv
-typedef void (APIENTRYP PFNGLMULTITEXCOORD1IPROC)(GLenum target, GLint s);
-GLAPI PFNGLMULTITEXCOORD1IPROC glad_glMultiTexCoord1i;
-#define glMultiTexCoord1i glad_glMultiTexCoord1i
-typedef void (APIENTRYP PFNGLMULTITEXCOORD1IVPROC)(GLenum target, const GLint *v);
-GLAPI PFNGLMULTITEXCOORD1IVPROC glad_glMultiTexCoord1iv;
-#define glMultiTexCoord1iv glad_glMultiTexCoord1iv
-typedef void (APIENTRYP PFNGLMULTITEXCOORD1SPROC)(GLenum target, GLshort s);
-GLAPI PFNGLMULTITEXCOORD1SPROC glad_glMultiTexCoord1s;
-#define glMultiTexCoord1s glad_glMultiTexCoord1s
-typedef void (APIENTRYP PFNGLMULTITEXCOORD1SVPROC)(GLenum target, const GLshort *v);
-GLAPI PFNGLMULTITEXCOORD1SVPROC glad_glMultiTexCoord1sv;
-#define glMultiTexCoord1sv glad_glMultiTexCoord1sv
-typedef void (APIENTRYP PFNGLMULTITEXCOORD2DPROC)(GLenum target, GLdouble s, GLdouble t);
-GLAPI PFNGLMULTITEXCOORD2DPROC glad_glMultiTexCoord2d;
-#define glMultiTexCoord2d glad_glMultiTexCoord2d
-typedef void (APIENTRYP PFNGLMULTITEXCOORD2DVPROC)(GLenum target, const GLdouble *v);
-GLAPI PFNGLMULTITEXCOORD2DVPROC glad_glMultiTexCoord2dv;
-#define glMultiTexCoord2dv glad_glMultiTexCoord2dv
-typedef void (APIENTRYP PFNGLMULTITEXCOORD2FPROC)(GLenum target, GLfloat s, GLfloat t);
-GLAPI PFNGLMULTITEXCOORD2FPROC glad_glMultiTexCoord2f;
-#define glMultiTexCoord2f glad_glMultiTexCoord2f
-typedef void (APIENTRYP PFNGLMULTITEXCOORD2FVPROC)(GLenum target, const GLfloat *v);
-GLAPI PFNGLMULTITEXCOORD2FVPROC glad_glMultiTexCoord2fv;
-#define glMultiTexCoord2fv glad_glMultiTexCoord2fv
-typedef void (APIENTRYP PFNGLMULTITEXCOORD2IPROC)(GLenum target, GLint s, GLint t);
-GLAPI PFNGLMULTITEXCOORD2IPROC glad_glMultiTexCoord2i;
-#define glMultiTexCoord2i glad_glMultiTexCoord2i
-typedef void (APIENTRYP PFNGLMULTITEXCOORD2IVPROC)(GLenum target, const GLint *v);
-GLAPI PFNGLMULTITEXCOORD2IVPROC glad_glMultiTexCoord2iv;
-#define glMultiTexCoord2iv glad_glMultiTexCoord2iv
-typedef void (APIENTRYP PFNGLMULTITEXCOORD2SPROC)(GLenum target, GLshort s, GLshort t);
-GLAPI PFNGLMULTITEXCOORD2SPROC glad_glMultiTexCoord2s;
-#define glMultiTexCoord2s glad_glMultiTexCoord2s
-typedef void (APIENTRYP PFNGLMULTITEXCOORD2SVPROC)(GLenum target, const GLshort *v);
-GLAPI PFNGLMULTITEXCOORD2SVPROC glad_glMultiTexCoord2sv;
-#define glMultiTexCoord2sv glad_glMultiTexCoord2sv
-typedef void (APIENTRYP PFNGLMULTITEXCOORD3DPROC)(GLenum target, GLdouble s, GLdouble t, GLdouble r);
-GLAPI PFNGLMULTITEXCOORD3DPROC glad_glMultiTexCoord3d;
-#define glMultiTexCoord3d glad_glMultiTexCoord3d
-typedef void (APIENTRYP PFNGLMULTITEXCOORD3DVPROC)(GLenum target, const GLdouble *v);
-GLAPI PFNGLMULTITEXCOORD3DVPROC glad_glMultiTexCoord3dv;
-#define glMultiTexCoord3dv glad_glMultiTexCoord3dv
-typedef void (APIENTRYP PFNGLMULTITEXCOORD3FPROC)(GLenum target, GLfloat s, GLfloat t, GLfloat r);
-GLAPI PFNGLMULTITEXCOORD3FPROC glad_glMultiTexCoord3f;
-#define glMultiTexCoord3f glad_glMultiTexCoord3f
-typedef void (APIENTRYP PFNGLMULTITEXCOORD3FVPROC)(GLenum target, const GLfloat *v);
-GLAPI PFNGLMULTITEXCOORD3FVPROC glad_glMultiTexCoord3fv;
-#define glMultiTexCoord3fv glad_glMultiTexCoord3fv
-typedef void (APIENTRYP PFNGLMULTITEXCOORD3IPROC)(GLenum target, GLint s, GLint t, GLint r);
-GLAPI PFNGLMULTITEXCOORD3IPROC glad_glMultiTexCoord3i;
-#define glMultiTexCoord3i glad_glMultiTexCoord3i
-typedef void (APIENTRYP PFNGLMULTITEXCOORD3IVPROC)(GLenum target, const GLint *v);
-GLAPI PFNGLMULTITEXCOORD3IVPROC glad_glMultiTexCoord3iv;
-#define glMultiTexCoord3iv glad_glMultiTexCoord3iv
-typedef void (APIENTRYP PFNGLMULTITEXCOORD3SPROC)(GLenum target, GLshort s, GLshort t, GLshort r);
-GLAPI PFNGLMULTITEXCOORD3SPROC glad_glMultiTexCoord3s;
-#define glMultiTexCoord3s glad_glMultiTexCoord3s
-typedef void (APIENTRYP PFNGLMULTITEXCOORD3SVPROC)(GLenum target, const GLshort *v);
-GLAPI PFNGLMULTITEXCOORD3SVPROC glad_glMultiTexCoord3sv;
-#define glMultiTexCoord3sv glad_glMultiTexCoord3sv
-typedef void (APIENTRYP PFNGLMULTITEXCOORD4DPROC)(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q);
-GLAPI PFNGLMULTITEXCOORD4DPROC glad_glMultiTexCoord4d;
-#define glMultiTexCoord4d glad_glMultiTexCoord4d
-typedef void (APIENTRYP PFNGLMULTITEXCOORD4DVPROC)(GLenum target, const GLdouble *v);
-GLAPI PFNGLMULTITEXCOORD4DVPROC glad_glMultiTexCoord4dv;
-#define glMultiTexCoord4dv glad_glMultiTexCoord4dv
-typedef void (APIENTRYP PFNGLMULTITEXCOORD4FPROC)(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q);
-GLAPI PFNGLMULTITEXCOORD4FPROC glad_glMultiTexCoord4f;
-#define glMultiTexCoord4f glad_glMultiTexCoord4f
-typedef void (APIENTRYP PFNGLMULTITEXCOORD4FVPROC)(GLenum target, const GLfloat *v);
-GLAPI PFNGLMULTITEXCOORD4FVPROC glad_glMultiTexCoord4fv;
-#define glMultiTexCoord4fv glad_glMultiTexCoord4fv
-typedef void (APIENTRYP PFNGLMULTITEXCOORD4IPROC)(GLenum target, GLint s, GLint t, GLint r, GLint q);
-GLAPI PFNGLMULTITEXCOORD4IPROC glad_glMultiTexCoord4i;
-#define glMultiTexCoord4i glad_glMultiTexCoord4i
-typedef void (APIENTRYP PFNGLMULTITEXCOORD4IVPROC)(GLenum target, const GLint *v);
-GLAPI PFNGLMULTITEXCOORD4IVPROC glad_glMultiTexCoord4iv;
-#define glMultiTexCoord4iv glad_glMultiTexCoord4iv
-typedef void (APIENTRYP PFNGLMULTITEXCOORD4SPROC)(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q);
-GLAPI PFNGLMULTITEXCOORD4SPROC glad_glMultiTexCoord4s;
-#define glMultiTexCoord4s glad_glMultiTexCoord4s
-typedef void (APIENTRYP PFNGLMULTITEXCOORD4SVPROC)(GLenum target, const GLshort *v);
-GLAPI PFNGLMULTITEXCOORD4SVPROC glad_glMultiTexCoord4sv;
-#define glMultiTexCoord4sv glad_glMultiTexCoord4sv
-typedef void (APIENTRYP PFNGLLOADTRANSPOSEMATRIXFPROC)(const GLfloat *m);
-GLAPI PFNGLLOADTRANSPOSEMATRIXFPROC glad_glLoadTransposeMatrixf;
-#define glLoadTransposeMatrixf glad_glLoadTransposeMatrixf
-typedef void (APIENTRYP PFNGLLOADTRANSPOSEMATRIXDPROC)(const GLdouble *m);
-GLAPI PFNGLLOADTRANSPOSEMATRIXDPROC glad_glLoadTransposeMatrixd;
-#define glLoadTransposeMatrixd glad_glLoadTransposeMatrixd
-typedef void (APIENTRYP PFNGLMULTTRANSPOSEMATRIXFPROC)(const GLfloat *m);
-GLAPI PFNGLMULTTRANSPOSEMATRIXFPROC glad_glMultTransposeMatrixf;
-#define glMultTransposeMatrixf glad_glMultTransposeMatrixf
-typedef void (APIENTRYP PFNGLMULTTRANSPOSEMATRIXDPROC)(const GLdouble *m);
-GLAPI PFNGLMULTTRANSPOSEMATRIXDPROC glad_glMultTransposeMatrixd;
-#define glMultTransposeMatrixd glad_glMultTransposeMatrixd
-#endif
-#ifndef GL_VERSION_1_4
-#define GL_VERSION_1_4 1
-GLAPI int GLAD_GL_VERSION_1_4;
-typedef void (APIENTRYP PFNGLBLENDFUNCSEPARATEPROC)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
-GLAPI PFNGLBLENDFUNCSEPARATEPROC glad_glBlendFuncSeparate;
-#define glBlendFuncSeparate glad_glBlendFuncSeparate
-typedef void (APIENTRYP PFNGLMULTIDRAWARRAYSPROC)(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount);
-GLAPI PFNGLMULTIDRAWARRAYSPROC glad_glMultiDrawArrays;
-#define glMultiDrawArrays glad_glMultiDrawArrays
-typedef void (APIENTRYP PFNGLMULTIDRAWELEMENTSPROC)(GLenum mode, const GLsizei *count, GLenum type, const void *const*indices, GLsizei drawcount);
-GLAPI PFNGLMULTIDRAWELEMENTSPROC glad_glMultiDrawElements;
-#define glMultiDrawElements glad_glMultiDrawElements
-typedef void (APIENTRYP PFNGLPOINTPARAMETERFPROC)(GLenum pname, GLfloat param);
-GLAPI PFNGLPOINTPARAMETERFPROC glad_glPointParameterf;
-#define glPointParameterf glad_glPointParameterf
-typedef void (APIENTRYP PFNGLPOINTPARAMETERFVPROC)(GLenum pname, const GLfloat *params);
-GLAPI PFNGLPOINTPARAMETERFVPROC glad_glPointParameterfv;
-#define glPointParameterfv glad_glPointParameterfv
-typedef void (APIENTRYP PFNGLPOINTPARAMETERIPROC)(GLenum pname, GLint param);
-GLAPI PFNGLPOINTPARAMETERIPROC glad_glPointParameteri;
-#define glPointParameteri glad_glPointParameteri
-typedef void (APIENTRYP PFNGLPOINTPARAMETERIVPROC)(GLenum pname, const GLint *params);
-GLAPI PFNGLPOINTPARAMETERIVPROC glad_glPointParameteriv;
-#define glPointParameteriv glad_glPointParameteriv
-typedef void (APIENTRYP PFNGLFOGCOORDFPROC)(GLfloat coord);
-GLAPI PFNGLFOGCOORDFPROC glad_glFogCoordf;
-#define glFogCoordf glad_glFogCoordf
-typedef void (APIENTRYP PFNGLFOGCOORDFVPROC)(const GLfloat *coord);
-GLAPI PFNGLFOGCOORDFVPROC glad_glFogCoordfv;
-#define glFogCoordfv glad_glFogCoordfv
-typedef void (APIENTRYP PFNGLFOGCOORDDPROC)(GLdouble coord);
-GLAPI PFNGLFOGCOORDDPROC glad_glFogCoordd;
-#define glFogCoordd glad_glFogCoordd
-typedef void (APIENTRYP PFNGLFOGCOORDDVPROC)(const GLdouble *coord);
-GLAPI PFNGLFOGCOORDDVPROC glad_glFogCoorddv;
-#define glFogCoorddv glad_glFogCoorddv
-typedef void (APIENTRYP PFNGLFOGCOORDPOINTERPROC)(GLenum type, GLsizei stride, const void *pointer);
-GLAPI PFNGLFOGCOORDPOINTERPROC glad_glFogCoordPointer;
-#define glFogCoordPointer glad_glFogCoordPointer
-typedef void (APIENTRYP PFNGLSECONDARYCOLOR3BPROC)(GLbyte red, GLbyte green, GLbyte blue);
-GLAPI PFNGLSECONDARYCOLOR3BPROC glad_glSecondaryColor3b;
-#define glSecondaryColor3b glad_glSecondaryColor3b
-typedef void (APIENTRYP PFNGLSECONDARYCOLOR3BVPROC)(const GLbyte *v);
-GLAPI PFNGLSECONDARYCOLOR3BVPROC glad_glSecondaryColor3bv;
-#define glSecondaryColor3bv glad_glSecondaryColor3bv
-typedef void (APIENTRYP PFNGLSECONDARYCOLOR3DPROC)(GLdouble red, GLdouble green, GLdouble blue);
-GLAPI PFNGLSECONDARYCOLOR3DPROC glad_glSecondaryColor3d;
-#define glSecondaryColor3d glad_glSecondaryColor3d
-typedef void (APIENTRYP PFNGLSECONDARYCOLOR3DVPROC)(const GLdouble *v);
-GLAPI PFNGLSECONDARYCOLOR3DVPROC glad_glSecondaryColor3dv;
-#define glSecondaryColor3dv glad_glSecondaryColor3dv
-typedef void (APIENTRYP PFNGLSECONDARYCOLOR3FPROC)(GLfloat red, GLfloat green, GLfloat blue);
-GLAPI PFNGLSECONDARYCOLOR3FPROC glad_glSecondaryColor3f;
-#define glSecondaryColor3f glad_glSecondaryColor3f
-typedef void (APIENTRYP PFNGLSECONDARYCOLOR3FVPROC)(const GLfloat *v);
-GLAPI PFNGLSECONDARYCOLOR3FVPROC glad_glSecondaryColor3fv;
-#define glSecondaryColor3fv glad_glSecondaryColor3fv
-typedef void (APIENTRYP PFNGLSECONDARYCOLOR3IPROC)(GLint red, GLint green, GLint blue);
-GLAPI PFNGLSECONDARYCOLOR3IPROC glad_glSecondaryColor3i;
-#define glSecondaryColor3i glad_glSecondaryColor3i
-typedef void (APIENTRYP PFNGLSECONDARYCOLOR3IVPROC)(const GLint *v);
-GLAPI PFNGLSECONDARYCOLOR3IVPROC glad_glSecondaryColor3iv;
-#define glSecondaryColor3iv glad_glSecondaryColor3iv
-typedef void (APIENTRYP PFNGLSECONDARYCOLOR3SPROC)(GLshort red, GLshort green, GLshort blue);
-GLAPI PFNGLSECONDARYCOLOR3SPROC glad_glSecondaryColor3s;
-#define glSecondaryColor3s glad_glSecondaryColor3s
-typedef void (APIENTRYP PFNGLSECONDARYCOLOR3SVPROC)(const GLshort *v);
-GLAPI PFNGLSECONDARYCOLOR3SVPROC glad_glSecondaryColor3sv;
-#define glSecondaryColor3sv glad_glSecondaryColor3sv
-typedef void (APIENTRYP PFNGLSECONDARYCOLOR3UBPROC)(GLubyte red, GLubyte green, GLubyte blue);
-GLAPI PFNGLSECONDARYCOLOR3UBPROC glad_glSecondaryColor3ub;
-#define glSecondaryColor3ub glad_glSecondaryColor3ub
-typedef void (APIENTRYP PFNGLSECONDARYCOLOR3UBVPROC)(const GLubyte *v);
-GLAPI PFNGLSECONDARYCOLOR3UBVPROC glad_glSecondaryColor3ubv;
-#define glSecondaryColor3ubv glad_glSecondaryColor3ubv
-typedef void (APIENTRYP PFNGLSECONDARYCOLOR3UIPROC)(GLuint red, GLuint green, GLuint blue);
-GLAPI PFNGLSECONDARYCOLOR3UIPROC glad_glSecondaryColor3ui;
-#define glSecondaryColor3ui glad_glSecondaryColor3ui
-typedef void (APIENTRYP PFNGLSECONDARYCOLOR3UIVPROC)(const GLuint *v);
-GLAPI PFNGLSECONDARYCOLOR3UIVPROC glad_glSecondaryColor3uiv;
-#define glSecondaryColor3uiv glad_glSecondaryColor3uiv
-typedef void (APIENTRYP PFNGLSECONDARYCOLOR3USPROC)(GLushort red, GLushort green, GLushort blue);
-GLAPI PFNGLSECONDARYCOLOR3USPROC glad_glSecondaryColor3us;
-#define glSecondaryColor3us glad_glSecondaryColor3us
-typedef void (APIENTRYP PFNGLSECONDARYCOLOR3USVPROC)(const GLushort *v);
-GLAPI PFNGLSECONDARYCOLOR3USVPROC glad_glSecondaryColor3usv;
-#define glSecondaryColor3usv glad_glSecondaryColor3usv
-typedef void (APIENTRYP PFNGLSECONDARYCOLORPOINTERPROC)(GLint size, GLenum type, GLsizei stride, const void *pointer);
-GLAPI PFNGLSECONDARYCOLORPOINTERPROC glad_glSecondaryColorPointer;
-#define glSecondaryColorPointer glad_glSecondaryColorPointer
-typedef void (APIENTRYP PFNGLWINDOWPOS2DPROC)(GLdouble x, GLdouble y);
-GLAPI PFNGLWINDOWPOS2DPROC glad_glWindowPos2d;
-#define glWindowPos2d glad_glWindowPos2d
-typedef void (APIENTRYP PFNGLWINDOWPOS2DVPROC)(const GLdouble *v);
-GLAPI PFNGLWINDOWPOS2DVPROC glad_glWindowPos2dv;
-#define glWindowPos2dv glad_glWindowPos2dv
-typedef void (APIENTRYP PFNGLWINDOWPOS2FPROC)(GLfloat x, GLfloat y);
-GLAPI PFNGLWINDOWPOS2FPROC glad_glWindowPos2f;
-#define glWindowPos2f glad_glWindowPos2f
-typedef void (APIENTRYP PFNGLWINDOWPOS2FVPROC)(const GLfloat *v);
-GLAPI PFNGLWINDOWPOS2FVPROC glad_glWindowPos2fv;
-#define glWindowPos2fv glad_glWindowPos2fv
-typedef void (APIENTRYP PFNGLWINDOWPOS2IPROC)(GLint x, GLint y);
-GLAPI PFNGLWINDOWPOS2IPROC glad_glWindowPos2i;
-#define glWindowPos2i glad_glWindowPos2i
-typedef void (APIENTRYP PFNGLWINDOWPOS2IVPROC)(const GLint *v);
-GLAPI PFNGLWINDOWPOS2IVPROC glad_glWindowPos2iv;
-#define glWindowPos2iv glad_glWindowPos2iv
-typedef void (APIENTRYP PFNGLWINDOWPOS2SPROC)(GLshort x, GLshort y);
-GLAPI PFNGLWINDOWPOS2SPROC glad_glWindowPos2s;
-#define glWindowPos2s glad_glWindowPos2s
-typedef void (APIENTRYP PFNGLWINDOWPOS2SVPROC)(const GLshort *v);
-GLAPI PFNGLWINDOWPOS2SVPROC glad_glWindowPos2sv;
-#define glWindowPos2sv glad_glWindowPos2sv
-typedef void (APIENTRYP PFNGLWINDOWPOS3DPROC)(GLdouble x, GLdouble y, GLdouble z);
-GLAPI PFNGLWINDOWPOS3DPROC glad_glWindowPos3d;
-#define glWindowPos3d glad_glWindowPos3d
-typedef void (APIENTRYP PFNGLWINDOWPOS3DVPROC)(const GLdouble *v);
-GLAPI PFNGLWINDOWPOS3DVPROC glad_glWindowPos3dv;
-#define glWindowPos3dv glad_glWindowPos3dv
-typedef void (APIENTRYP PFNGLWINDOWPOS3FPROC)(GLfloat x, GLfloat y, GLfloat z);
-GLAPI PFNGLWINDOWPOS3FPROC glad_glWindowPos3f;
-#define glWindowPos3f glad_glWindowPos3f
-typedef void (APIENTRYP PFNGLWINDOWPOS3FVPROC)(const GLfloat *v);
-GLAPI PFNGLWINDOWPOS3FVPROC glad_glWindowPos3fv;
-#define glWindowPos3fv glad_glWindowPos3fv
-typedef void (APIENTRYP PFNGLWINDOWPOS3IPROC)(GLint x, GLint y, GLint z);
-GLAPI PFNGLWINDOWPOS3IPROC glad_glWindowPos3i;
-#define glWindowPos3i glad_glWindowPos3i
-typedef void (APIENTRYP PFNGLWINDOWPOS3IVPROC)(const GLint *v);
-GLAPI PFNGLWINDOWPOS3IVPROC glad_glWindowPos3iv;
-#define glWindowPos3iv glad_glWindowPos3iv
-typedef void (APIENTRYP PFNGLWINDOWPOS3SPROC)(GLshort x, GLshort y, GLshort z);
-GLAPI PFNGLWINDOWPOS3SPROC glad_glWindowPos3s;
-#define glWindowPos3s glad_glWindowPos3s
-typedef void (APIENTRYP PFNGLWINDOWPOS3SVPROC)(const GLshort *v);
-GLAPI PFNGLWINDOWPOS3SVPROC glad_glWindowPos3sv;
-#define glWindowPos3sv glad_glWindowPos3sv
-typedef void (APIENTRYP PFNGLBLENDCOLORPROC)(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
-GLAPI PFNGLBLENDCOLORPROC glad_glBlendColor;
-#define glBlendColor glad_glBlendColor
-typedef void (APIENTRYP PFNGLBLENDEQUATIONPROC)(GLenum mode);
-GLAPI PFNGLBLENDEQUATIONPROC glad_glBlendEquation;
-#define glBlendEquation glad_glBlendEquation
-#endif
-#ifndef GL_VERSION_1_5
-#define GL_VERSION_1_5 1
-GLAPI int GLAD_GL_VERSION_1_5;
-typedef void (APIENTRYP PFNGLGENQUERIESPROC)(GLsizei n, GLuint *ids);
-GLAPI PFNGLGENQUERIESPROC glad_glGenQueries;
-#define glGenQueries glad_glGenQueries
-typedef void (APIENTRYP PFNGLDELETEQUERIESPROC)(GLsizei n, const GLuint *ids);
-GLAPI PFNGLDELETEQUERIESPROC glad_glDeleteQueries;
-#define glDeleteQueries glad_glDeleteQueries
-typedef GLboolean (APIENTRYP PFNGLISQUERYPROC)(GLuint id);
-GLAPI PFNGLISQUERYPROC glad_glIsQuery;
-#define glIsQuery glad_glIsQuery
-typedef void (APIENTRYP PFNGLBEGINQUERYPROC)(GLenum target, GLuint id);
-GLAPI PFNGLBEGINQUERYPROC glad_glBeginQuery;
-#define glBeginQuery glad_glBeginQuery
-typedef void (APIENTRYP PFNGLENDQUERYPROC)(GLenum target);
-GLAPI PFNGLENDQUERYPROC glad_glEndQuery;
-#define glEndQuery glad_glEndQuery
-typedef void (APIENTRYP PFNGLGETQUERYIVPROC)(GLenum target, GLenum pname, GLint *params);
-GLAPI PFNGLGETQUERYIVPROC glad_glGetQueryiv;
-#define glGetQueryiv glad_glGetQueryiv
-typedef void (APIENTRYP PFNGLGETQUERYOBJECTIVPROC)(GLuint id, GLenum pname, GLint *params);
-GLAPI PFNGLGETQUERYOBJECTIVPROC glad_glGetQueryObjectiv;
-#define glGetQueryObjectiv glad_glGetQueryObjectiv
-typedef void (APIENTRYP PFNGLGETQUERYOBJECTUIVPROC)(GLuint id, GLenum pname, GLuint *params);
-GLAPI PFNGLGETQUERYOBJECTUIVPROC glad_glGetQueryObjectuiv;
-#define glGetQueryObjectuiv glad_glGetQueryObjectuiv
-typedef void (APIENTRYP PFNGLBINDBUFFERPROC)(GLenum target, GLuint buffer);
-GLAPI PFNGLBINDBUFFERPROC glad_glBindBuffer;
-#define glBindBuffer glad_glBindBuffer
-typedef void (APIENTRYP PFNGLDELETEBUFFERSPROC)(GLsizei n, const GLuint *buffers);
-GLAPI PFNGLDELETEBUFFERSPROC glad_glDeleteBuffers;
-#define glDeleteBuffers glad_glDeleteBuffers
-typedef void (APIENTRYP PFNGLGENBUFFERSPROC)(GLsizei n, GLuint *buffers);
-GLAPI PFNGLGENBUFFERSPROC glad_glGenBuffers;
-#define glGenBuffers glad_glGenBuffers
-typedef GLboolean (APIENTRYP PFNGLISBUFFERPROC)(GLuint buffer);
-GLAPI PFNGLISBUFFERPROC glad_glIsBuffer;
-#define glIsBuffer glad_glIsBuffer
-typedef void (APIENTRYP PFNGLBUFFERDATAPROC)(GLenum target, GLsizeiptr size, const void *data, GLenum usage);
-GLAPI PFNGLBUFFERDATAPROC glad_glBufferData;
-#define glBufferData glad_glBufferData
-typedef void (APIENTRYP PFNGLBUFFERSUBDATAPROC)(GLenum target, GLintptr offset, GLsizeiptr size, const void *data);
-GLAPI PFNGLBUFFERSUBDATAPROC glad_glBufferSubData;
-#define glBufferSubData glad_glBufferSubData
-typedef void (APIENTRYP PFNGLGETBUFFERSUBDATAPROC)(GLenum target, GLintptr offset, GLsizeiptr size, void *data);
-GLAPI PFNGLGETBUFFERSUBDATAPROC glad_glGetBufferSubData;
-#define glGetBufferSubData glad_glGetBufferSubData
-typedef void * (APIENTRYP PFNGLMAPBUFFERPROC)(GLenum target, GLenum access);
-GLAPI PFNGLMAPBUFFERPROC glad_glMapBuffer;
-#define glMapBuffer glad_glMapBuffer
-typedef GLboolean (APIENTRYP PFNGLUNMAPBUFFERPROC)(GLenum target);
-GLAPI PFNGLUNMAPBUFFERPROC glad_glUnmapBuffer;
-#define glUnmapBuffer glad_glUnmapBuffer
-typedef void (APIENTRYP PFNGLGETBUFFERPARAMETERIVPROC)(GLenum target, GLenum pname, GLint *params);
-GLAPI PFNGLGETBUFFERPARAMETERIVPROC glad_glGetBufferParameteriv;
-#define glGetBufferParameteriv glad_glGetBufferParameteriv
-typedef void (APIENTRYP PFNGLGETBUFFERPOINTERVPROC)(GLenum target, GLenum pname, void **params);
-GLAPI PFNGLGETBUFFERPOINTERVPROC glad_glGetBufferPointerv;
-#define glGetBufferPointerv glad_glGetBufferPointerv
-#endif
-#ifndef GL_VERSION_2_0
-#define GL_VERSION_2_0 1
-GLAPI int GLAD_GL_VERSION_2_0;
-typedef void (APIENTRYP PFNGLBLENDEQUATIONSEPARATEPROC)(GLenum modeRGB, GLenum modeAlpha);
-GLAPI PFNGLBLENDEQUATIONSEPARATEPROC glad_glBlendEquationSeparate;
-#define glBlendEquationSeparate glad_glBlendEquationSeparate
-typedef void (APIENTRYP PFNGLDRAWBUFFERSPROC)(GLsizei n, const GLenum *bufs);
-GLAPI PFNGLDRAWBUFFERSPROC glad_glDrawBuffers;
-#define glDrawBuffers glad_glDrawBuffers
-typedef void (APIENTRYP PFNGLSTENCILOPSEPARATEPROC)(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass);
-GLAPI PFNGLSTENCILOPSEPARATEPROC glad_glStencilOpSeparate;
-#define glStencilOpSeparate glad_glStencilOpSeparate
-typedef void (APIENTRYP PFNGLSTENCILFUNCSEPARATEPROC)(GLenum face, GLenum func, GLint ref, GLuint mask);
-GLAPI PFNGLSTENCILFUNCSEPARATEPROC glad_glStencilFuncSeparate;
-#define glStencilFuncSeparate glad_glStencilFuncSeparate
-typedef void (APIENTRYP PFNGLSTENCILMASKSEPARATEPROC)(GLenum face, GLuint mask);
-GLAPI PFNGLSTENCILMASKSEPARATEPROC glad_glStencilMaskSeparate;
-#define glStencilMaskSeparate glad_glStencilMaskSeparate
-typedef void (APIENTRYP PFNGLATTACHSHADERPROC)(GLuint program, GLuint shader);
-GLAPI PFNGLATTACHSHADERPROC glad_glAttachShader;
-#define glAttachShader glad_glAttachShader
-typedef void (APIENTRYP PFNGLBINDATTRIBLOCATIONPROC)(GLuint program, GLuint index, const GLchar *name);
-GLAPI PFNGLBINDATTRIBLOCATIONPROC glad_glBindAttribLocation;
-#define glBindAttribLocation glad_glBindAttribLocation
-typedef void (APIENTRYP PFNGLCOMPILESHADERPROC)(GLuint shader);
-GLAPI PFNGLCOMPILESHADERPROC glad_glCompileShader;
-#define glCompileShader glad_glCompileShader
-typedef GLuint (APIENTRYP PFNGLCREATEPROGRAMPROC)(void);
-GLAPI PFNGLCREATEPROGRAMPROC glad_glCreateProgram;
-#define glCreateProgram glad_glCreateProgram
-typedef GLuint (APIENTRYP PFNGLCREATESHADERPROC)(GLenum type);
-GLAPI PFNGLCREATESHADERPROC glad_glCreateShader;
-#define glCreateShader glad_glCreateShader
-typedef void (APIENTRYP PFNGLDELETEPROGRAMPROC)(GLuint program);
-GLAPI PFNGLDELETEPROGRAMPROC glad_glDeleteProgram;
-#define glDeleteProgram glad_glDeleteProgram
-typedef void (APIENTRYP PFNGLDELETESHADERPROC)(GLuint shader);
-GLAPI PFNGLDELETESHADERPROC glad_glDeleteShader;
-#define glDeleteShader glad_glDeleteShader
-typedef void (APIENTRYP PFNGLDETACHSHADERPROC)(GLuint program, GLuint shader);
-GLAPI PFNGLDETACHSHADERPROC glad_glDetachShader;
-#define glDetachShader glad_glDetachShader
-typedef void (APIENTRYP PFNGLDISABLEVERTEXATTRIBARRAYPROC)(GLuint index);
-GLAPI PFNGLDISABLEVERTEXATTRIBARRAYPROC glad_glDisableVertexAttribArray;
-#define glDisableVertexAttribArray glad_glDisableVertexAttribArray
-typedef void (APIENTRYP PFNGLENABLEVERTEXATTRIBARRAYPROC)(GLuint index);
-GLAPI PFNGLENABLEVERTEXATTRIBARRAYPROC glad_glEnableVertexAttribArray;
-#define glEnableVertexAttribArray glad_glEnableVertexAttribArray
-typedef void (APIENTRYP PFNGLGETACTIVEATTRIBPROC)(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
-GLAPI PFNGLGETACTIVEATTRIBPROC glad_glGetActiveAttrib;
-#define glGetActiveAttrib glad_glGetActiveAttrib
-typedef void (APIENTRYP PFNGLGETACTIVEUNIFORMPROC)(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
-GLAPI PFNGLGETACTIVEUNIFORMPROC glad_glGetActiveUniform;
-#define glGetActiveUniform glad_glGetActiveUniform
-typedef void (APIENTRYP PFNGLGETATTACHEDSHADERSPROC)(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *shaders);
-GLAPI PFNGLGETATTACHEDSHADERSPROC glad_glGetAttachedShaders;
-#define glGetAttachedShaders glad_glGetAttachedShaders
-typedef GLint (APIENTRYP PFNGLGETATTRIBLOCATIONPROC)(GLuint program, const GLchar *name);
-GLAPI PFNGLGETATTRIBLOCATIONPROC glad_glGetAttribLocation;
-#define glGetAttribLocation glad_glGetAttribLocation
-typedef void (APIENTRYP PFNGLGETPROGRAMIVPROC)(GLuint program, GLenum pname, GLint *params);
-GLAPI PFNGLGETPROGRAMIVPROC glad_glGetProgramiv;
-#define glGetProgramiv glad_glGetProgramiv
-typedef void (APIENTRYP PFNGLGETPROGRAMINFOLOGPROC)(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
-GLAPI PFNGLGETPROGRAMINFOLOGPROC glad_glGetProgramInfoLog;
-#define glGetProgramInfoLog glad_glGetProgramInfoLog
-typedef void (APIENTRYP PFNGLGETSHADERIVPROC)(GLuint shader, GLenum pname, GLint *params);
-GLAPI PFNGLGETSHADERIVPROC glad_glGetShaderiv;
-#define glGetShaderiv glad_glGetShaderiv
-typedef void (APIENTRYP PFNGLGETSHADERINFOLOGPROC)(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
-GLAPI PFNGLGETSHADERINFOLOGPROC glad_glGetShaderInfoLog;
-#define glGetShaderInfoLog glad_glGetShaderInfoLog
-typedef void (APIENTRYP PFNGLGETSHADERSOURCEPROC)(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source);
-GLAPI PFNGLGETSHADERSOURCEPROC glad_glGetShaderSource;
-#define glGetShaderSource glad_glGetShaderSource
-typedef GLint (APIENTRYP PFNGLGETUNIFORMLOCATIONPROC)(GLuint program, const GLchar *name);
-GLAPI PFNGLGETUNIFORMLOCATIONPROC glad_glGetUniformLocation;
-#define glGetUniformLocation glad_glGetUniformLocation
-typedef void (APIENTRYP PFNGLGETUNIFORMFVPROC)(GLuint program, GLint location, GLfloat *params);
-GLAPI PFNGLGETUNIFORMFVPROC glad_glGetUniformfv;
-#define glGetUniformfv glad_glGetUniformfv
-typedef void (APIENTRYP PFNGLGETUNIFORMIVPROC)(GLuint program, GLint location, GLint *params);
-GLAPI PFNGLGETUNIFORMIVPROC glad_glGetUniformiv;
-#define glGetUniformiv glad_glGetUniformiv
-typedef void (APIENTRYP PFNGLGETVERTEXATTRIBDVPROC)(GLuint index, GLenum pname, GLdouble *params);
-GLAPI PFNGLGETVERTEXATTRIBDVPROC glad_glGetVertexAttribdv;
-#define glGetVertexAttribdv glad_glGetVertexAttribdv
-typedef void (APIENTRYP PFNGLGETVERTEXATTRIBFVPROC)(GLuint index, GLenum pname, GLfloat *params);
-GLAPI PFNGLGETVERTEXATTRIBFVPROC glad_glGetVertexAttribfv;
-#define glGetVertexAttribfv glad_glGetVertexAttribfv
-typedef void (APIENTRYP PFNGLGETVERTEXATTRIBIVPROC)(GLuint index, GLenum pname, GLint *params);
-GLAPI PFNGLGETVERTEXATTRIBIVPROC glad_glGetVertexAttribiv;
-#define glGetVertexAttribiv glad_glGetVertexAttribiv
-typedef void (APIENTRYP PFNGLGETVERTEXATTRIBPOINTERVPROC)(GLuint index, GLenum pname, void **pointer);
-GLAPI PFNGLGETVERTEXATTRIBPOINTERVPROC glad_glGetVertexAttribPointerv;
-#define glGetVertexAttribPointerv glad_glGetVertexAttribPointerv
-typedef GLboolean (APIENTRYP PFNGLISPROGRAMPROC)(GLuint program);
-GLAPI PFNGLISPROGRAMPROC glad_glIsProgram;
-#define glIsProgram glad_glIsProgram
-typedef GLboolean (APIENTRYP PFNGLISSHADERPROC)(GLuint shader);
-GLAPI PFNGLISSHADERPROC glad_glIsShader;
-#define glIsShader glad_glIsShader
-typedef void (APIENTRYP PFNGLLINKPROGRAMPROC)(GLuint program);
-GLAPI PFNGLLINKPROGRAMPROC glad_glLinkProgram;
-#define glLinkProgram glad_glLinkProgram
-typedef void (APIENTRYP PFNGLSHADERSOURCEPROC)(GLuint shader, GLsizei count, const GLchar *const*string, const GLint *length);
-GLAPI PFNGLSHADERSOURCEPROC glad_glShaderSource;
-#define glShaderSource glad_glShaderSource
-typedef void (APIENTRYP PFNGLUSEPROGRAMPROC)(GLuint program);
-GLAPI PFNGLUSEPROGRAMPROC glad_glUseProgram;
-#define glUseProgram glad_glUseProgram
-typedef void (APIENTRYP PFNGLUNIFORM1FPROC)(GLint location, GLfloat v0);
-GLAPI PFNGLUNIFORM1FPROC glad_glUniform1f;
-#define glUniform1f glad_glUniform1f
-typedef void (APIENTRYP PFNGLUNIFORM2FPROC)(GLint location, GLfloat v0, GLfloat v1);
-GLAPI PFNGLUNIFORM2FPROC glad_glUniform2f;
-#define glUniform2f glad_glUniform2f
-typedef void (APIENTRYP PFNGLUNIFORM3FPROC)(GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
-GLAPI PFNGLUNIFORM3FPROC glad_glUniform3f;
-#define glUniform3f glad_glUniform3f
-typedef void (APIENTRYP PFNGLUNIFORM4FPROC)(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
-GLAPI PFNGLUNIFORM4FPROC glad_glUniform4f;
-#define glUniform4f glad_glUniform4f
-typedef void (APIENTRYP PFNGLUNIFORM1IPROC)(GLint location, GLint v0);
-GLAPI PFNGLUNIFORM1IPROC glad_glUniform1i;
-#define glUniform1i glad_glUniform1i
-typedef void (APIENTRYP PFNGLUNIFORM2IPROC)(GLint location, GLint v0, GLint v1);
-GLAPI PFNGLUNIFORM2IPROC glad_glUniform2i;
-#define glUniform2i glad_glUniform2i
-typedef void (APIENTRYP PFNGLUNIFORM3IPROC)(GLint location, GLint v0, GLint v1, GLint v2);
-GLAPI PFNGLUNIFORM3IPROC glad_glUniform3i;
-#define glUniform3i glad_glUniform3i
-typedef void (APIENTRYP PFNGLUNIFORM4IPROC)(GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
-GLAPI PFNGLUNIFORM4IPROC glad_glUniform4i;
-#define glUniform4i glad_glUniform4i
-typedef void (APIENTRYP PFNGLUNIFORM1FVPROC)(GLint location, GLsizei count, const GLfloat *value);
-GLAPI PFNGLUNIFORM1FVPROC glad_glUniform1fv;
-#define glUniform1fv glad_glUniform1fv
-typedef void (APIENTRYP PFNGLUNIFORM2FVPROC)(GLint location, GLsizei count, const GLfloat *value);
-GLAPI PFNGLUNIFORM2FVPROC glad_glUniform2fv;
-#define glUniform2fv glad_glUniform2fv
-typedef void (APIENTRYP PFNGLUNIFORM3FVPROC)(GLint location, GLsizei count, const GLfloat *value);
-GLAPI PFNGLUNIFORM3FVPROC glad_glUniform3fv;
-#define glUniform3fv glad_glUniform3fv
-typedef void (APIENTRYP PFNGLUNIFORM4FVPROC)(GLint location, GLsizei count, const GLfloat *value);
-GLAPI PFNGLUNIFORM4FVPROC glad_glUniform4fv;
-#define glUniform4fv glad_glUniform4fv
-typedef void (APIENTRYP PFNGLUNIFORM1IVPROC)(GLint location, GLsizei count, const GLint *value);
-GLAPI PFNGLUNIFORM1IVPROC glad_glUniform1iv;
-#define glUniform1iv glad_glUniform1iv
-typedef void (APIENTRYP PFNGLUNIFORM2IVPROC)(GLint location, GLsizei count, const GLint *value);
-GLAPI PFNGLUNIFORM2IVPROC glad_glUniform2iv;
-#define glUniform2iv glad_glUniform2iv
-typedef void (APIENTRYP PFNGLUNIFORM3IVPROC)(GLint location, GLsizei count, const GLint *value);
-GLAPI PFNGLUNIFORM3IVPROC glad_glUniform3iv;
-#define glUniform3iv glad_glUniform3iv
-typedef void (APIENTRYP PFNGLUNIFORM4IVPROC)(GLint location, GLsizei count, const GLint *value);
-GLAPI PFNGLUNIFORM4IVPROC glad_glUniform4iv;
-#define glUniform4iv glad_glUniform4iv
-typedef void (APIENTRYP PFNGLUNIFORMMATRIX2FVPROC)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
-GLAPI PFNGLUNIFORMMATRIX2FVPROC glad_glUniformMatrix2fv;
-#define glUniformMatrix2fv glad_glUniformMatrix2fv
-typedef void (APIENTRYP PFNGLUNIFORMMATRIX3FVPROC)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
-GLAPI PFNGLUNIFORMMATRIX3FVPROC glad_glUniformMatrix3fv;
-#define glUniformMatrix3fv glad_glUniformMatrix3fv
-typedef void (APIENTRYP PFNGLUNIFORMMATRIX4FVPROC)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
-GLAPI PFNGLUNIFORMMATRIX4FVPROC glad_glUniformMatrix4fv;
-#define glUniformMatrix4fv glad_glUniformMatrix4fv
-typedef void (APIENTRYP PFNGLVALIDATEPROGRAMPROC)(GLuint program);
-GLAPI PFNGLVALIDATEPROGRAMPROC glad_glValidateProgram;
-#define glValidateProgram glad_glValidateProgram
-typedef void (APIENTRYP PFNGLVERTEXATTRIB1DPROC)(GLuint index, GLdouble x);
-GLAPI PFNGLVERTEXATTRIB1DPROC glad_glVertexAttrib1d;
-#define glVertexAttrib1d glad_glVertexAttrib1d
-typedef void (APIENTRYP PFNGLVERTEXATTRIB1DVPROC)(GLuint index, const GLdouble *v);
-GLAPI PFNGLVERTEXATTRIB1DVPROC glad_glVertexAttrib1dv;
-#define glVertexAttrib1dv glad_glVertexAttrib1dv
-typedef void (APIENTRYP PFNGLVERTEXATTRIB1FPROC)(GLuint index, GLfloat x);
-GLAPI PFNGLVERTEXATTRIB1FPROC glad_glVertexAttrib1f;
-#define glVertexAttrib1f glad_glVertexAttrib1f
-typedef void (APIENTRYP PFNGLVERTEXATTRIB1FVPROC)(GLuint index, const GLfloat *v);
-GLAPI PFNGLVERTEXATTRIB1FVPROC glad_glVertexAttrib1fv;
-#define glVertexAttrib1fv glad_glVertexAttrib1fv
-typedef void (APIENTRYP PFNGLVERTEXATTRIB1SPROC)(GLuint index, GLshort x);
-GLAPI PFNGLVERTEXATTRIB1SPROC glad_glVertexAttrib1s;
-#define glVertexAttrib1s glad_glVertexAttrib1s
-typedef void (APIENTRYP PFNGLVERTEXATTRIB1SVPROC)(GLuint index, const GLshort *v);
-GLAPI PFNGLVERTEXATTRIB1SVPROC glad_glVertexAttrib1sv;
-#define glVertexAttrib1sv glad_glVertexAttrib1sv
-typedef void (APIENTRYP PFNGLVERTEXATTRIB2DPROC)(GLuint index, GLdouble x, GLdouble y);
-GLAPI PFNGLVERTEXATTRIB2DPROC glad_glVertexAttrib2d;
-#define glVertexAttrib2d glad_glVertexAttrib2d
-typedef void (APIENTRYP PFNGLVERTEXATTRIB2DVPROC)(GLuint index, const GLdouble *v);
-GLAPI PFNGLVERTEXATTRIB2DVPROC glad_glVertexAttrib2dv;
-#define glVertexAttrib2dv glad_glVertexAttrib2dv
-typedef void (APIENTRYP PFNGLVERTEXATTRIB2FPROC)(GLuint index, GLfloat x, GLfloat y);
-GLAPI PFNGLVERTEXATTRIB2FPROC glad_glVertexAttrib2f;
-#define glVertexAttrib2f glad_glVertexAttrib2f
-typedef void (APIENTRYP PFNGLVERTEXATTRIB2FVPROC)(GLuint index, const GLfloat *v);
-GLAPI PFNGLVERTEXATTRIB2FVPROC glad_glVertexAttrib2fv;
-#define glVertexAttrib2fv glad_glVertexAttrib2fv
-typedef void (APIENTRYP PFNGLVERTEXATTRIB2SPROC)(GLuint index, GLshort x, GLshort y);
-GLAPI PFNGLVERTEXATTRIB2SPROC glad_glVertexAttrib2s;
-#define glVertexAttrib2s glad_glVertexAttrib2s
-typedef void (APIENTRYP PFNGLVERTEXATTRIB2SVPROC)(GLuint index, const GLshort *v);
-GLAPI PFNGLVERTEXATTRIB2SVPROC glad_glVertexAttrib2sv;
-#define glVertexAttrib2sv glad_glVertexAttrib2sv
-typedef void (APIENTRYP PFNGLVERTEXATTRIB3DPROC)(GLuint index, GLdouble x, GLdouble y, GLdouble z);
-GLAPI PFNGLVERTEXATTRIB3DPROC glad_glVertexAttrib3d;
-#define glVertexAttrib3d glad_glVertexAttrib3d
-typedef void (APIENTRYP PFNGLVERTEXATTRIB3DVPROC)(GLuint index, const GLdouble *v);
-GLAPI PFNGLVERTEXATTRIB3DVPROC glad_glVertexAttrib3dv;
-#define glVertexAttrib3dv glad_glVertexAttrib3dv
-typedef void (APIENTRYP PFNGLVERTEXATTRIB3FPROC)(GLuint index, GLfloat x, GLfloat y, GLfloat z);
-GLAPI PFNGLVERTEXATTRIB3FPROC glad_glVertexAttrib3f;
-#define glVertexAttrib3f glad_glVertexAttrib3f
-typedef void (APIENTRYP PFNGLVERTEXATTRIB3FVPROC)(GLuint index, const GLfloat *v);
-GLAPI PFNGLVERTEXATTRIB3FVPROC glad_glVertexAttrib3fv;
-#define glVertexAttrib3fv glad_glVertexAttrib3fv
-typedef void (APIENTRYP PFNGLVERTEXATTRIB3SPROC)(GLuint index, GLshort x, GLshort y, GLshort z);
-GLAPI PFNGLVERTEXATTRIB3SPROC glad_glVertexAttrib3s;
-#define glVertexAttrib3s glad_glVertexAttrib3s
-typedef void (APIENTRYP PFNGLVERTEXATTRIB3SVPROC)(GLuint index, const GLshort *v);
-GLAPI PFNGLVERTEXATTRIB3SVPROC glad_glVertexAttrib3sv;
-#define glVertexAttrib3sv glad_glVertexAttrib3sv
-typedef void (APIENTRYP PFNGLVERTEXATTRIB4NBVPROC)(GLuint index, const GLbyte *v);
-GLAPI PFNGLVERTEXATTRIB4NBVPROC glad_glVertexAttrib4Nbv;
-#define glVertexAttrib4Nbv glad_glVertexAttrib4Nbv
-typedef void (APIENTRYP PFNGLVERTEXATTRIB4NIVPROC)(GLuint index, const GLint *v);
-GLAPI PFNGLVERTEXATTRIB4NIVPROC glad_glVertexAttrib4Niv;
-#define glVertexAttrib4Niv glad_glVertexAttrib4Niv
-typedef void (APIENTRYP PFNGLVERTEXATTRIB4NSVPROC)(GLuint index, const GLshort *v);
-GLAPI PFNGLVERTEXATTRIB4NSVPROC glad_glVertexAttrib4Nsv;
-#define glVertexAttrib4Nsv glad_glVertexAttrib4Nsv
-typedef void (APIENTRYP PFNGLVERTEXATTRIB4NUBPROC)(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w);
-GLAPI PFNGLVERTEXATTRIB4NUBPROC glad_glVertexAttrib4Nub;
-#define glVertexAttrib4Nub glad_glVertexAttrib4Nub
-typedef void (APIENTRYP PFNGLVERTEXATTRIB4NUBVPROC)(GLuint index, const GLubyte *v);
-GLAPI PFNGLVERTEXATTRIB4NUBVPROC glad_glVertexAttrib4Nubv;
-#define glVertexAttrib4Nubv glad_glVertexAttrib4Nubv
-typedef void (APIENTRYP PFNGLVERTEXATTRIB4NUIVPROC)(GLuint index, const GLuint *v);
-GLAPI PFNGLVERTEXATTRIB4NUIVPROC glad_glVertexAttrib4Nuiv;
-#define glVertexAttrib4Nuiv glad_glVertexAttrib4Nuiv
-typedef void (APIENTRYP PFNGLVERTEXATTRIB4NUSVPROC)(GLuint index, const GLushort *v);
-GLAPI PFNGLVERTEXATTRIB4NUSVPROC glad_glVertexAttrib4Nusv;
-#define glVertexAttrib4Nusv glad_glVertexAttrib4Nusv
-typedef void (APIENTRYP PFNGLVERTEXATTRIB4BVPROC)(GLuint index, const GLbyte *v);
-GLAPI PFNGLVERTEXATTRIB4BVPROC glad_glVertexAttrib4bv;
-#define glVertexAttrib4bv glad_glVertexAttrib4bv
-typedef void (APIENTRYP PFNGLVERTEXATTRIB4DPROC)(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
-GLAPI PFNGLVERTEXATTRIB4DPROC glad_glVertexAttrib4d;
-#define glVertexAttrib4d glad_glVertexAttrib4d
-typedef void (APIENTRYP PFNGLVERTEXATTRIB4DVPROC)(GLuint index, const GLdouble *v);
-GLAPI PFNGLVERTEXATTRIB4DVPROC glad_glVertexAttrib4dv;
-#define glVertexAttrib4dv glad_glVertexAttrib4dv
-typedef void (APIENTRYP PFNGLVERTEXATTRIB4FPROC)(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
-GLAPI PFNGLVERTEXATTRIB4FPROC glad_glVertexAttrib4f;
-#define glVertexAttrib4f glad_glVertexAttrib4f
-typedef void (APIENTRYP PFNGLVERTEXATTRIB4FVPROC)(GLuint index, const GLfloat *v);
-GLAPI PFNGLVERTEXATTRIB4FVPROC glad_glVertexAttrib4fv;
-#define glVertexAttrib4fv glad_glVertexAttrib4fv
-typedef void (APIENTRYP PFNGLVERTEXATTRIB4IVPROC)(GLuint index, const GLint *v);
-GLAPI PFNGLVERTEXATTRIB4IVPROC glad_glVertexAttrib4iv;
-#define glVertexAttrib4iv glad_glVertexAttrib4iv
-typedef void (APIENTRYP PFNGLVERTEXATTRIB4SPROC)(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w);
-GLAPI PFNGLVERTEXATTRIB4SPROC glad_glVertexAttrib4s;
-#define glVertexAttrib4s glad_glVertexAttrib4s
-typedef void (APIENTRYP PFNGLVERTEXATTRIB4SVPROC)(GLuint index, const GLshort *v);
-GLAPI PFNGLVERTEXATTRIB4SVPROC glad_glVertexAttrib4sv;
-#define glVertexAttrib4sv glad_glVertexAttrib4sv
-typedef void (APIENTRYP PFNGLVERTEXATTRIB4UBVPROC)(GLuint index, const GLubyte *v);
-GLAPI PFNGLVERTEXATTRIB4UBVPROC glad_glVertexAttrib4ubv;
-#define glVertexAttrib4ubv glad_glVertexAttrib4ubv
-typedef void (APIENTRYP PFNGLVERTEXATTRIB4UIVPROC)(GLuint index, const GLuint *v);
-GLAPI PFNGLVERTEXATTRIB4UIVPROC glad_glVertexAttrib4uiv;
-#define glVertexAttrib4uiv glad_glVertexAttrib4uiv
-typedef void (APIENTRYP PFNGLVERTEXATTRIB4USVPROC)(GLuint index, const GLushort *v);
-GLAPI PFNGLVERTEXATTRIB4USVPROC glad_glVertexAttrib4usv;
-#define glVertexAttrib4usv glad_glVertexAttrib4usv
-typedef void (APIENTRYP PFNGLVERTEXATTRIBPOINTERPROC)(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const void *pointer);
-GLAPI PFNGLVERTEXATTRIBPOINTERPROC glad_glVertexAttribPointer;
-#define glVertexAttribPointer glad_glVertexAttribPointer
-#endif
-#ifndef GL_VERSION_2_1
-#define GL_VERSION_2_1 1
-GLAPI int GLAD_GL_VERSION_2_1;
-typedef void (APIENTRYP PFNGLUNIFORMMATRIX2X3FVPROC)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
-GLAPI PFNGLUNIFORMMATRIX2X3FVPROC glad_glUniformMatrix2x3fv;
-#define glUniformMatrix2x3fv glad_glUniformMatrix2x3fv
-typedef void (APIENTRYP PFNGLUNIFORMMATRIX3X2FVPROC)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
-GLAPI PFNGLUNIFORMMATRIX3X2FVPROC glad_glUniformMatrix3x2fv;
-#define glUniformMatrix3x2fv glad_glUniformMatrix3x2fv
-typedef void (APIENTRYP PFNGLUNIFORMMATRIX2X4FVPROC)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
-GLAPI PFNGLUNIFORMMATRIX2X4FVPROC glad_glUniformMatrix2x4fv;
-#define glUniformMatrix2x4fv glad_glUniformMatrix2x4fv
-typedef void (APIENTRYP PFNGLUNIFORMMATRIX4X2FVPROC)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
-GLAPI PFNGLUNIFORMMATRIX4X2FVPROC glad_glUniformMatrix4x2fv;
-#define glUniformMatrix4x2fv glad_glUniformMatrix4x2fv
-typedef void (APIENTRYP PFNGLUNIFORMMATRIX3X4FVPROC)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
-GLAPI PFNGLUNIFORMMATRIX3X4FVPROC glad_glUniformMatrix3x4fv;
-#define glUniformMatrix3x4fv glad_glUniformMatrix3x4fv
-typedef void (APIENTRYP PFNGLUNIFORMMATRIX4X3FVPROC)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
-GLAPI PFNGLUNIFORMMATRIX4X3FVPROC glad_glUniformMatrix4x3fv;
-#define glUniformMatrix4x3fv glad_glUniformMatrix4x3fv
-#endif
-#ifndef GL_VERSION_3_0
-#define GL_VERSION_3_0 1
-GLAPI int GLAD_GL_VERSION_3_0;
-typedef void (APIENTRYP PFNGLCOLORMASKIPROC)(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a);
-GLAPI PFNGLCOLORMASKIPROC glad_glColorMaski;
-#define glColorMaski glad_glColorMaski
-typedef void (APIENTRYP PFNGLGETBOOLEANI_VPROC)(GLenum target, GLuint index, GLboolean *data);
-GLAPI PFNGLGETBOOLEANI_VPROC glad_glGetBooleani_v;
-#define glGetBooleani_v glad_glGetBooleani_v
-typedef void (APIENTRYP PFNGLGETINTEGERI_VPROC)(GLenum target, GLuint index, GLint *data);
-GLAPI PFNGLGETINTEGERI_VPROC glad_glGetIntegeri_v;
-#define glGetIntegeri_v glad_glGetIntegeri_v
-typedef void (APIENTRYP PFNGLENABLEIPROC)(GLenum target, GLuint index);
-GLAPI PFNGLENABLEIPROC glad_glEnablei;
-#define glEnablei glad_glEnablei
-typedef void (APIENTRYP PFNGLDISABLEIPROC)(GLenum target, GLuint index);
-GLAPI PFNGLDISABLEIPROC glad_glDisablei;
-#define glDisablei glad_glDisablei
-typedef GLboolean (APIENTRYP PFNGLISENABLEDIPROC)(GLenum target, GLuint index);
-GLAPI PFNGLISENABLEDIPROC glad_glIsEnabledi;
-#define glIsEnabledi glad_glIsEnabledi
-typedef void (APIENTRYP PFNGLBEGINTRANSFORMFEEDBACKPROC)(GLenum primitiveMode);
-GLAPI PFNGLBEGINTRANSFORMFEEDBACKPROC glad_glBeginTransformFeedback;
-#define glBeginTransformFeedback glad_glBeginTransformFeedback
-typedef void (APIENTRYP PFNGLENDTRANSFORMFEEDBACKPROC)(void);
-GLAPI PFNGLENDTRANSFORMFEEDBACKPROC glad_glEndTransformFeedback;
-#define glEndTransformFeedback glad_glEndTransformFeedback
-typedef void (APIENTRYP PFNGLBINDBUFFERRANGEPROC)(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
-GLAPI PFNGLBINDBUFFERRANGEPROC glad_glBindBufferRange;
-#define glBindBufferRange glad_glBindBufferRange
-typedef void (APIENTRYP PFNGLBINDBUFFERBASEPROC)(GLenum target, GLuint index, GLuint buffer);
-GLAPI PFNGLBINDBUFFERBASEPROC glad_glBindBufferBase;
-#define glBindBufferBase glad_glBindBufferBase
-typedef void (APIENTRYP PFNGLTRANSFORMFEEDBACKVARYINGSPROC)(GLuint program, GLsizei count, const GLchar *const*varyings, GLenum bufferMode);
-GLAPI PFNGLTRANSFORMFEEDBACKVARYINGSPROC glad_glTransformFeedbackVaryings;
-#define glTransformFeedbackVaryings glad_glTransformFeedbackVaryings
-typedef void (APIENTRYP PFNGLGETTRANSFORMFEEDBACKVARYINGPROC)(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name);
-GLAPI PFNGLGETTRANSFORMFEEDBACKVARYINGPROC glad_glGetTransformFeedbackVarying;
-#define glGetTransformFeedbackVarying glad_glGetTransformFeedbackVarying
-typedef void (APIENTRYP PFNGLCLAMPCOLORPROC)(GLenum target, GLenum clamp);
-GLAPI PFNGLCLAMPCOLORPROC glad_glClampColor;
-#define glClampColor glad_glClampColor
-typedef void (APIENTRYP PFNGLBEGINCONDITIONALRENDERPROC)(GLuint id, GLenum mode);
-GLAPI PFNGLBEGINCONDITIONALRENDERPROC glad_glBeginConditionalRender;
-#define glBeginConditionalRender glad_glBeginConditionalRender
-typedef void (APIENTRYP PFNGLENDCONDITIONALRENDERPROC)(void);
-GLAPI PFNGLENDCONDITIONALRENDERPROC glad_glEndConditionalRender;
-#define glEndConditionalRender glad_glEndConditionalRender
-typedef void (APIENTRYP PFNGLVERTEXATTRIBIPOINTERPROC)(GLuint index, GLint size, GLenum type, GLsizei stride, const void *pointer);
-GLAPI PFNGLVERTEXATTRIBIPOINTERPROC glad_glVertexAttribIPointer;
-#define glVertexAttribIPointer glad_glVertexAttribIPointer
-typedef void (APIENTRYP PFNGLGETVERTEXATTRIBIIVPROC)(GLuint index, GLenum pname, GLint *params);
-GLAPI PFNGLGETVERTEXATTRIBIIVPROC glad_glGetVertexAttribIiv;
-#define glGetVertexAttribIiv glad_glGetVertexAttribIiv
-typedef void (APIENTRYP PFNGLGETVERTEXATTRIBIUIVPROC)(GLuint index, GLenum pname, GLuint *params);
-GLAPI PFNGLGETVERTEXATTRIBIUIVPROC glad_glGetVertexAttribIuiv;
-#define glGetVertexAttribIuiv glad_glGetVertexAttribIuiv
-typedef void (APIENTRYP PFNGLVERTEXATTRIBI1IPROC)(GLuint index, GLint x);
-GLAPI PFNGLVERTEXATTRIBI1IPROC glad_glVertexAttribI1i;
-#define glVertexAttribI1i glad_glVertexAttribI1i
-typedef void (APIENTRYP PFNGLVERTEXATTRIBI2IPROC)(GLuint index, GLint x, GLint y);
-GLAPI PFNGLVERTEXATTRIBI2IPROC glad_glVertexAttribI2i;
-#define glVertexAttribI2i glad_glVertexAttribI2i
-typedef void (APIENTRYP PFNGLVERTEXATTRIBI3IPROC)(GLuint index, GLint x, GLint y, GLint z);
-GLAPI PFNGLVERTEXATTRIBI3IPROC glad_glVertexAttribI3i;
-#define glVertexAttribI3i glad_glVertexAttribI3i
-typedef void (APIENTRYP PFNGLVERTEXATTRIBI4IPROC)(GLuint index, GLint x, GLint y, GLint z, GLint w);
-GLAPI PFNGLVERTEXATTRIBI4IPROC glad_glVertexAttribI4i;
-#define glVertexAttribI4i glad_glVertexAttribI4i
-typedef void (APIENTRYP PFNGLVERTEXATTRIBI1UIPROC)(GLuint index, GLuint x);
-GLAPI PFNGLVERTEXATTRIBI1UIPROC glad_glVertexAttribI1ui;
-#define glVertexAttribI1ui glad_glVertexAttribI1ui
-typedef void (APIENTRYP PFNGLVERTEXATTRIBI2UIPROC)(GLuint index, GLuint x, GLuint y);
-GLAPI PFNGLVERTEXATTRIBI2UIPROC glad_glVertexAttribI2ui;
-#define glVertexAttribI2ui glad_glVertexAttribI2ui
-typedef void (APIENTRYP PFNGLVERTEXATTRIBI3UIPROC)(GLuint index, GLuint x, GLuint y, GLuint z);
-GLAPI PFNGLVERTEXATTRIBI3UIPROC glad_glVertexAttribI3ui;
-#define glVertexAttribI3ui glad_glVertexAttribI3ui
-typedef void (APIENTRYP PFNGLVERTEXATTRIBI4UIPROC)(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
-GLAPI PFNGLVERTEXATTRIBI4UIPROC glad_glVertexAttribI4ui;
-#define glVertexAttribI4ui glad_glVertexAttribI4ui
-typedef void (APIENTRYP PFNGLVERTEXATTRIBI1IVPROC)(GLuint index, const GLint *v);
-GLAPI PFNGLVERTEXATTRIBI1IVPROC glad_glVertexAttribI1iv;
-#define glVertexAttribI1iv glad_glVertexAttribI1iv
-typedef void (APIENTRYP PFNGLVERTEXATTRIBI2IVPROC)(GLuint index, const GLint *v);
-GLAPI PFNGLVERTEXATTRIBI2IVPROC glad_glVertexAttribI2iv;
-#define glVertexAttribI2iv glad_glVertexAttribI2iv
-typedef void (APIENTRYP PFNGLVERTEXATTRIBI3IVPROC)(GLuint index, const GLint *v);
-GLAPI PFNGLVERTEXATTRIBI3IVPROC glad_glVertexAttribI3iv;
-#define glVertexAttribI3iv glad_glVertexAttribI3iv
-typedef void (APIENTRYP PFNGLVERTEXATTRIBI4IVPROC)(GLuint index, const GLint *v);
-GLAPI PFNGLVERTEXATTRIBI4IVPROC glad_glVertexAttribI4iv;
-#define glVertexAttribI4iv glad_glVertexAttribI4iv
-typedef void (APIENTRYP PFNGLVERTEXATTRIBI1UIVPROC)(GLuint index, const GLuint *v);
-GLAPI PFNGLVERTEXATTRIBI1UIVPROC glad_glVertexAttribI1uiv;
-#define glVertexAttribI1uiv glad_glVertexAttribI1uiv
-typedef void (APIENTRYP PFNGLVERTEXATTRIBI2UIVPROC)(GLuint index, const GLuint *v);
-GLAPI PFNGLVERTEXATTRIBI2UIVPROC glad_glVertexAttribI2uiv;
-#define glVertexAttribI2uiv glad_glVertexAttribI2uiv
-typedef void (APIENTRYP PFNGLVERTEXATTRIBI3UIVPROC)(GLuint index, const GLuint *v);
-GLAPI PFNGLVERTEXATTRIBI3UIVPROC glad_glVertexAttribI3uiv;
-#define glVertexAttribI3uiv glad_glVertexAttribI3uiv
-typedef void (APIENTRYP PFNGLVERTEXATTRIBI4UIVPROC)(GLuint index, const GLuint *v);
-GLAPI PFNGLVERTEXATTRIBI4UIVPROC glad_glVertexAttribI4uiv;
-#define glVertexAttribI4uiv glad_glVertexAttribI4uiv
-typedef void (APIENTRYP PFNGLVERTEXATTRIBI4BVPROC)(GLuint index, const GLbyte *v);
-GLAPI PFNGLVERTEXATTRIBI4BVPROC glad_glVertexAttribI4bv;
-#define glVertexAttribI4bv glad_glVertexAttribI4bv
-typedef void (APIENTRYP PFNGLVERTEXATTRIBI4SVPROC)(GLuint index, const GLshort *v);
-GLAPI PFNGLVERTEXATTRIBI4SVPROC glad_glVertexAttribI4sv;
-#define glVertexAttribI4sv glad_glVertexAttribI4sv
-typedef void (APIENTRYP PFNGLVERTEXATTRIBI4UBVPROC)(GLuint index, const GLubyte *v);
-GLAPI PFNGLVERTEXATTRIBI4UBVPROC glad_glVertexAttribI4ubv;
-#define glVertexAttribI4ubv glad_glVertexAttribI4ubv
-typedef void (APIENTRYP PFNGLVERTEXATTRIBI4USVPROC)(GLuint index, const GLushort *v);
-GLAPI PFNGLVERTEXATTRIBI4USVPROC glad_glVertexAttribI4usv;
-#define glVertexAttribI4usv glad_glVertexAttribI4usv
-typedef void (APIENTRYP PFNGLGETUNIFORMUIVPROC)(GLuint program, GLint location, GLuint *params);
-GLAPI PFNGLGETUNIFORMUIVPROC glad_glGetUniformuiv;
-#define glGetUniformuiv glad_glGetUniformuiv
-typedef void (APIENTRYP PFNGLBINDFRAGDATALOCATIONPROC)(GLuint program, GLuint color, const GLchar *name);
-GLAPI PFNGLBINDFRAGDATALOCATIONPROC glad_glBindFragDataLocation;
-#define glBindFragDataLocation glad_glBindFragDataLocation
-typedef GLint (APIENTRYP PFNGLGETFRAGDATALOCATIONPROC)(GLuint program, const GLchar *name);
-GLAPI PFNGLGETFRAGDATALOCATIONPROC glad_glGetFragDataLocation;
-#define glGetFragDataLocation glad_glGetFragDataLocation
-typedef void (APIENTRYP PFNGLUNIFORM1UIPROC)(GLint location, GLuint v0);
-GLAPI PFNGLUNIFORM1UIPROC glad_glUniform1ui;
-#define glUniform1ui glad_glUniform1ui
-typedef void (APIENTRYP PFNGLUNIFORM2UIPROC)(GLint location, GLuint v0, GLuint v1);
-GLAPI PFNGLUNIFORM2UIPROC glad_glUniform2ui;
-#define glUniform2ui glad_glUniform2ui
-typedef void (APIENTRYP PFNGLUNIFORM3UIPROC)(GLint location, GLuint v0, GLuint v1, GLuint v2);
-GLAPI PFNGLUNIFORM3UIPROC glad_glUniform3ui;
-#define glUniform3ui glad_glUniform3ui
-typedef void (APIENTRYP PFNGLUNIFORM4UIPROC)(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
-GLAPI PFNGLUNIFORM4UIPROC glad_glUniform4ui;
-#define glUniform4ui glad_glUniform4ui
-typedef void (APIENTRYP PFNGLUNIFORM1UIVPROC)(GLint location, GLsizei count, const GLuint *value);
-GLAPI PFNGLUNIFORM1UIVPROC glad_glUniform1uiv;
-#define glUniform1uiv glad_glUniform1uiv
-typedef void (APIENTRYP PFNGLUNIFORM2UIVPROC)(GLint location, GLsizei count, const GLuint *value);
-GLAPI PFNGLUNIFORM2UIVPROC glad_glUniform2uiv;
-#define glUniform2uiv glad_glUniform2uiv
-typedef void (APIENTRYP PFNGLUNIFORM3UIVPROC)(GLint location, GLsizei count, const GLuint *value);
-GLAPI PFNGLUNIFORM3UIVPROC glad_glUniform3uiv;
-#define glUniform3uiv glad_glUniform3uiv
-typedef void (APIENTRYP PFNGLUNIFORM4UIVPROC)(GLint location, GLsizei count, const GLuint *value);
-GLAPI PFNGLUNIFORM4UIVPROC glad_glUniform4uiv;
-#define glUniform4uiv glad_glUniform4uiv
-typedef void (APIENTRYP PFNGLTEXPARAMETERIIVPROC)(GLenum target, GLenum pname, const GLint *params);
-GLAPI PFNGLTEXPARAMETERIIVPROC glad_glTexParameterIiv;
-#define glTexParameterIiv glad_glTexParameterIiv
-typedef void (APIENTRYP PFNGLTEXPARAMETERIUIVPROC)(GLenum target, GLenum pname, const GLuint *params);
-GLAPI PFNGLTEXPARAMETERIUIVPROC glad_glTexParameterIuiv;
-#define glTexParameterIuiv glad_glTexParameterIuiv
-typedef void (APIENTRYP PFNGLGETTEXPARAMETERIIVPROC)(GLenum target, GLenum pname, GLint *params);
-GLAPI PFNGLGETTEXPARAMETERIIVPROC glad_glGetTexParameterIiv;
-#define glGetTexParameterIiv glad_glGetTexParameterIiv
-typedef void (APIENTRYP PFNGLGETTEXPARAMETERIUIVPROC)(GLenum target, GLenum pname, GLuint *params);
-GLAPI PFNGLGETTEXPARAMETERIUIVPROC glad_glGetTexParameterIuiv;
-#define glGetTexParameterIuiv glad_glGetTexParameterIuiv
-typedef void (APIENTRYP PFNGLCLEARBUFFERIVPROC)(GLenum buffer, GLint drawbuffer, const GLint *value);
-GLAPI PFNGLCLEARBUFFERIVPROC glad_glClearBufferiv;
-#define glClearBufferiv glad_glClearBufferiv
-typedef void (APIENTRYP PFNGLCLEARBUFFERUIVPROC)(GLenum buffer, GLint drawbuffer, const GLuint *value);
-GLAPI PFNGLCLEARBUFFERUIVPROC glad_glClearBufferuiv;
-#define glClearBufferuiv glad_glClearBufferuiv
-typedef void (APIENTRYP PFNGLCLEARBUFFERFVPROC)(GLenum buffer, GLint drawbuffer, const GLfloat *value);
-GLAPI PFNGLCLEARBUFFERFVPROC glad_glClearBufferfv;
-#define glClearBufferfv glad_glClearBufferfv
-typedef void (APIENTRYP PFNGLCLEARBUFFERFIPROC)(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil);
-GLAPI PFNGLCLEARBUFFERFIPROC glad_glClearBufferfi;
-#define glClearBufferfi glad_glClearBufferfi
-typedef const GLubyte * (APIENTRYP PFNGLGETSTRINGIPROC)(GLenum name, GLuint index);
-GLAPI PFNGLGETSTRINGIPROC glad_glGetStringi;
-#define glGetStringi glad_glGetStringi
-typedef GLboolean (APIENTRYP PFNGLISRENDERBUFFERPROC)(GLuint renderbuffer);
-GLAPI PFNGLISRENDERBUFFERPROC glad_glIsRenderbuffer;
-#define glIsRenderbuffer glad_glIsRenderbuffer
-typedef void (APIENTRYP PFNGLBINDRENDERBUFFERPROC)(GLenum target, GLuint renderbuffer);
-GLAPI PFNGLBINDRENDERBUFFERPROC glad_glBindRenderbuffer;
-#define glBindRenderbuffer glad_glBindRenderbuffer
-typedef void (APIENTRYP PFNGLDELETERENDERBUFFERSPROC)(GLsizei n, const GLuint *renderbuffers);
-GLAPI PFNGLDELETERENDERBUFFERSPROC glad_glDeleteRenderbuffers;
-#define glDeleteRenderbuffers glad_glDeleteRenderbuffers
-typedef void (APIENTRYP PFNGLGENRENDERBUFFERSPROC)(GLsizei n, GLuint *renderbuffers);
-GLAPI PFNGLGENRENDERBUFFERSPROC glad_glGenRenderbuffers;
-#define glGenRenderbuffers glad_glGenRenderbuffers
-typedef void (APIENTRYP PFNGLRENDERBUFFERSTORAGEPROC)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
-GLAPI PFNGLRENDERBUFFERSTORAGEPROC glad_glRenderbufferStorage;
-#define glRenderbufferStorage glad_glRenderbufferStorage
-typedef void (APIENTRYP PFNGLGETRENDERBUFFERPARAMETERIVPROC)(GLenum target, GLenum pname, GLint *params);
-GLAPI PFNGLGETRENDERBUFFERPARAMETERIVPROC glad_glGetRenderbufferParameteriv;
-#define glGetRenderbufferParameteriv glad_glGetRenderbufferParameteriv
-typedef GLboolean (APIENTRYP PFNGLISFRAMEBUFFERPROC)(GLuint framebuffer);
-GLAPI PFNGLISFRAMEBUFFERPROC glad_glIsFramebuffer;
-#define glIsFramebuffer glad_glIsFramebuffer
-typedef void (APIENTRYP PFNGLBINDFRAMEBUFFERPROC)(GLenum target, GLuint framebuffer);
-GLAPI PFNGLBINDFRAMEBUFFERPROC glad_glBindFramebuffer;
-#define glBindFramebuffer glad_glBindFramebuffer
-typedef void (APIENTRYP PFNGLDELETEFRAMEBUFFERSPROC)(GLsizei n, const GLuint *framebuffers);
-GLAPI PFNGLDELETEFRAMEBUFFERSPROC glad_glDeleteFramebuffers;
-#define glDeleteFramebuffers glad_glDeleteFramebuffers
-typedef void (APIENTRYP PFNGLGENFRAMEBUFFERSPROC)(GLsizei n, GLuint *framebuffers);
-GLAPI PFNGLGENFRAMEBUFFERSPROC glad_glGenFramebuffers;
-#define glGenFramebuffers glad_glGenFramebuffers
-typedef GLenum (APIENTRYP PFNGLCHECKFRAMEBUFFERSTATUSPROC)(GLenum target);
-GLAPI PFNGLCHECKFRAMEBUFFERSTATUSPROC glad_glCheckFramebufferStatus;
-#define glCheckFramebufferStatus glad_glCheckFramebufferStatus
-typedef void (APIENTRYP PFNGLFRAMEBUFFERTEXTURE1DPROC)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
-GLAPI PFNGLFRAMEBUFFERTEXTURE1DPROC glad_glFramebufferTexture1D;
-#define glFramebufferTexture1D glad_glFramebufferTexture1D
-typedef void (APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DPROC)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
-GLAPI PFNGLFRAMEBUFFERTEXTURE2DPROC glad_glFramebufferTexture2D;
-#define glFramebufferTexture2D glad_glFramebufferTexture2D
-typedef void (APIENTRYP PFNGLFRAMEBUFFERTEXTURE3DPROC)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
-GLAPI PFNGLFRAMEBUFFERTEXTURE3DPROC glad_glFramebufferTexture3D;
-#define glFramebufferTexture3D glad_glFramebufferTexture3D
-typedef void (APIENTRYP PFNGLFRAMEBUFFERRENDERBUFFERPROC)(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
-GLAPI PFNGLFRAMEBUFFERRENDERBUFFERPROC glad_glFramebufferRenderbuffer;
-#define glFramebufferRenderbuffer glad_glFramebufferRenderbuffer
-typedef void (APIENTRYP PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVPROC)(GLenum target, GLenum attachment, GLenum pname, GLint *params);
-GLAPI PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVPROC glad_glGetFramebufferAttachmentParameteriv;
-#define glGetFramebufferAttachmentParameteriv glad_glGetFramebufferAttachmentParameteriv
-typedef void (APIENTRYP PFNGLGENERATEMIPMAPPROC)(GLenum target);
-GLAPI PFNGLGENERATEMIPMAPPROC glad_glGenerateMipmap;
-#define glGenerateMipmap glad_glGenerateMipmap
-typedef void (APIENTRYP PFNGLBLITFRAMEBUFFERPROC)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
-GLAPI PFNGLBLITFRAMEBUFFERPROC glad_glBlitFramebuffer;
-#define glBlitFramebuffer glad_glBlitFramebuffer
-typedef void (APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEPROC)(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
-GLAPI PFNGLRENDERBUFFERSTORAGEMULTISAMPLEPROC glad_glRenderbufferStorageMultisample;
-#define glRenderbufferStorageMultisample glad_glRenderbufferStorageMultisample
-typedef void (APIENTRYP PFNGLFRAMEBUFFERTEXTURELAYERPROC)(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
-GLAPI PFNGLFRAMEBUFFERTEXTURELAYERPROC glad_glFramebufferTextureLayer;
-#define glFramebufferTextureLayer glad_glFramebufferTextureLayer
-typedef void * (APIENTRYP PFNGLMAPBUFFERRANGEPROC)(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
-GLAPI PFNGLMAPBUFFERRANGEPROC glad_glMapBufferRange;
-#define glMapBufferRange glad_glMapBufferRange
-typedef void (APIENTRYP PFNGLFLUSHMAPPEDBUFFERRANGEPROC)(GLenum target, GLintptr offset, GLsizeiptr length);
-GLAPI PFNGLFLUSHMAPPEDBUFFERRANGEPROC glad_glFlushMappedBufferRange;
-#define glFlushMappedBufferRange glad_glFlushMappedBufferRange
-typedef void (APIENTRYP PFNGLBINDVERTEXARRAYPROC)(GLuint array);
-GLAPI PFNGLBINDVERTEXARRAYPROC glad_glBindVertexArray;
-#define glBindVertexArray glad_glBindVertexArray
-typedef void (APIENTRYP PFNGLDELETEVERTEXARRAYSPROC)(GLsizei n, const GLuint *arrays);
-GLAPI PFNGLDELETEVERTEXARRAYSPROC glad_glDeleteVertexArrays;
-#define glDeleteVertexArrays glad_glDeleteVertexArrays
-typedef void (APIENTRYP PFNGLGENVERTEXARRAYSPROC)(GLsizei n, GLuint *arrays);
-GLAPI PFNGLGENVERTEXARRAYSPROC glad_glGenVertexArrays;
-#define glGenVertexArrays glad_glGenVertexArrays
-typedef GLboolean (APIENTRYP PFNGLISVERTEXARRAYPROC)(GLuint array);
-GLAPI PFNGLISVERTEXARRAYPROC glad_glIsVertexArray;
-#define glIsVertexArray glad_glIsVertexArray
-#endif
-#ifndef GL_VERSION_3_1
-#define GL_VERSION_3_1 1
-GLAPI int GLAD_GL_VERSION_3_1;
-typedef void (APIENTRYP PFNGLDRAWARRAYSINSTANCEDPROC)(GLenum mode, GLint first, GLsizei count, GLsizei instancecount);
-GLAPI PFNGLDRAWARRAYSINSTANCEDPROC glad_glDrawArraysInstanced;
-#define glDrawArraysInstanced glad_glDrawArraysInstanced
-typedef void (APIENTRYP PFNGLDRAWELEMENTSINSTANCEDPROC)(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount);
-GLAPI PFNGLDRAWELEMENTSINSTANCEDPROC glad_glDrawElementsInstanced;
-#define glDrawElementsInstanced glad_glDrawElementsInstanced
-typedef void (APIENTRYP PFNGLTEXBUFFERPROC)(GLenum target, GLenum internalformat, GLuint buffer);
-GLAPI PFNGLTEXBUFFERPROC glad_glTexBuffer;
-#define glTexBuffer glad_glTexBuffer
-typedef void (APIENTRYP PFNGLPRIMITIVERESTARTINDEXPROC)(GLuint index);
-GLAPI PFNGLPRIMITIVERESTARTINDEXPROC glad_glPrimitiveRestartIndex;
-#define glPrimitiveRestartIndex glad_glPrimitiveRestartIndex
-typedef void (APIENTRYP PFNGLCOPYBUFFERSUBDATAPROC)(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
-GLAPI PFNGLCOPYBUFFERSUBDATAPROC glad_glCopyBufferSubData;
-#define glCopyBufferSubData glad_glCopyBufferSubData
-typedef void (APIENTRYP PFNGLGETUNIFORMINDICESPROC)(GLuint program, GLsizei uniformCount, const GLchar *const*uniformNames, GLuint *uniformIndices);
-GLAPI PFNGLGETUNIFORMINDICESPROC glad_glGetUniformIndices;
-#define glGetUniformIndices glad_glGetUniformIndices
-typedef void (APIENTRYP PFNGLGETACTIVEUNIFORMSIVPROC)(GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params);
-GLAPI PFNGLGETACTIVEUNIFORMSIVPROC glad_glGetActiveUniformsiv;
-#define glGetActiveUniformsiv glad_glGetActiveUniformsiv
-typedef void (APIENTRYP PFNGLGETACTIVEUNIFORMNAMEPROC)(GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName);
-GLAPI PFNGLGETACTIVEUNIFORMNAMEPROC glad_glGetActiveUniformName;
-#define glGetActiveUniformName glad_glGetActiveUniformName
-typedef GLuint (APIENTRYP PFNGLGETUNIFORMBLOCKINDEXPROC)(GLuint program, const GLchar *uniformBlockName);
-GLAPI PFNGLGETUNIFORMBLOCKINDEXPROC glad_glGetUniformBlockIndex;
-#define glGetUniformBlockIndex glad_glGetUniformBlockIndex
-typedef void (APIENTRYP PFNGLGETACTIVEUNIFORMBLOCKIVPROC)(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params);
-GLAPI PFNGLGETACTIVEUNIFORMBLOCKIVPROC glad_glGetActiveUniformBlockiv;
-#define glGetActiveUniformBlockiv glad_glGetActiveUniformBlockiv
-typedef void (APIENTRYP PFNGLGETACTIVEUNIFORMBLOCKNAMEPROC)(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName);
-GLAPI PFNGLGETACTIVEUNIFORMBLOCKNAMEPROC glad_glGetActiveUniformBlockName;
-#define glGetActiveUniformBlockName glad_glGetActiveUniformBlockName
-typedef void (APIENTRYP PFNGLUNIFORMBLOCKBINDINGPROC)(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding);
-GLAPI PFNGLUNIFORMBLOCKBINDINGPROC glad_glUniformBlockBinding;
-#define glUniformBlockBinding glad_glUniformBlockBinding
-#endif
-#ifndef GL_VERSION_3_2
-#define GL_VERSION_3_2 1
-GLAPI int GLAD_GL_VERSION_3_2;
-typedef void (APIENTRYP PFNGLDRAWELEMENTSBASEVERTEXPROC)(GLenum mode, GLsizei count, GLenum type, const void *indices, GLint basevertex);
-GLAPI PFNGLDRAWELEMENTSBASEVERTEXPROC glad_glDrawElementsBaseVertex;
-#define glDrawElementsBaseVertex glad_glDrawElementsBaseVertex
-typedef void (APIENTRYP PFNGLDRAWRANGEELEMENTSBASEVERTEXPROC)(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const void *indices, GLint basevertex);
-GLAPI PFNGLDRAWRANGEELEMENTSBASEVERTEXPROC glad_glDrawRangeElementsBaseVertex;
-#define glDrawRangeElementsBaseVertex glad_glDrawRangeElementsBaseVertex
-typedef void (APIENTRYP PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXPROC)(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLint basevertex);
-GLAPI PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXPROC glad_glDrawElementsInstancedBaseVertex;
-#define glDrawElementsInstancedBaseVertex glad_glDrawElementsInstancedBaseVertex
-typedef void (APIENTRYP PFNGLMULTIDRAWELEMENTSBASEVERTEXPROC)(GLenum mode, const GLsizei *count, GLenum type, const void *const*indices, GLsizei drawcount, const GLint *basevertex);
-GLAPI PFNGLMULTIDRAWELEMENTSBASEVERTEXPROC glad_glMultiDrawElementsBaseVertex;
-#define glMultiDrawElementsBaseVertex glad_glMultiDrawElementsBaseVertex
-typedef void (APIENTRYP PFNGLPROVOKINGVERTEXPROC)(GLenum mode);
-GLAPI PFNGLPROVOKINGVERTEXPROC glad_glProvokingVertex;
-#define glProvokingVertex glad_glProvokingVertex
-typedef GLsync (APIENTRYP PFNGLFENCESYNCPROC)(GLenum condition, GLbitfield flags);
-GLAPI PFNGLFENCESYNCPROC glad_glFenceSync;
-#define glFenceSync glad_glFenceSync
-typedef GLboolean (APIENTRYP PFNGLISSYNCPROC)(GLsync sync);
-GLAPI PFNGLISSYNCPROC glad_glIsSync;
-#define glIsSync glad_glIsSync
-typedef void (APIENTRYP PFNGLDELETESYNCPROC)(GLsync sync);
-GLAPI PFNGLDELETESYNCPROC glad_glDeleteSync;
-#define glDeleteSync glad_glDeleteSync
-typedef GLenum (APIENTRYP PFNGLCLIENTWAITSYNCPROC)(GLsync sync, GLbitfield flags, GLuint64 timeout);
-GLAPI PFNGLCLIENTWAITSYNCPROC glad_glClientWaitSync;
-#define glClientWaitSync glad_glClientWaitSync
-typedef void (APIENTRYP PFNGLWAITSYNCPROC)(GLsync sync, GLbitfield flags, GLuint64 timeout);
-GLAPI PFNGLWAITSYNCPROC glad_glWaitSync;
-#define glWaitSync glad_glWaitSync
-typedef void (APIENTRYP PFNGLGETINTEGER64VPROC)(GLenum pname, GLint64 *data);
-GLAPI PFNGLGETINTEGER64VPROC glad_glGetInteger64v;
-#define glGetInteger64v glad_glGetInteger64v
-typedef void (APIENTRYP PFNGLGETSYNCIVPROC)(GLsync sync, GLenum pname, GLsizei count, GLsizei *length, GLint *values);
-GLAPI PFNGLGETSYNCIVPROC glad_glGetSynciv;
-#define glGetSynciv glad_glGetSynciv
-typedef void (APIENTRYP PFNGLGETINTEGER64I_VPROC)(GLenum target, GLuint index, GLint64 *data);
-GLAPI PFNGLGETINTEGER64I_VPROC glad_glGetInteger64i_v;
-#define glGetInteger64i_v glad_glGetInteger64i_v
-typedef void (APIENTRYP PFNGLGETBUFFERPARAMETERI64VPROC)(GLenum target, GLenum pname, GLint64 *params);
-GLAPI PFNGLGETBUFFERPARAMETERI64VPROC glad_glGetBufferParameteri64v;
-#define glGetBufferParameteri64v glad_glGetBufferParameteri64v
-typedef void (APIENTRYP PFNGLFRAMEBUFFERTEXTUREPROC)(GLenum target, GLenum attachment, GLuint texture, GLint level);
-GLAPI PFNGLFRAMEBUFFERTEXTUREPROC glad_glFramebufferTexture;
-#define glFramebufferTexture glad_glFramebufferTexture
-typedef void (APIENTRYP PFNGLTEXIMAGE2DMULTISAMPLEPROC)(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
-GLAPI PFNGLTEXIMAGE2DMULTISAMPLEPROC glad_glTexImage2DMultisample;
-#define glTexImage2DMultisample glad_glTexImage2DMultisample
-typedef void (APIENTRYP PFNGLTEXIMAGE3DMULTISAMPLEPROC)(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);
-GLAPI PFNGLTEXIMAGE3DMULTISAMPLEPROC glad_glTexImage3DMultisample;
-#define glTexImage3DMultisample glad_glTexImage3DMultisample
-typedef void (APIENTRYP PFNGLGETMULTISAMPLEFVPROC)(GLenum pname, GLuint index, GLfloat *val);
-GLAPI PFNGLGETMULTISAMPLEFVPROC glad_glGetMultisamplefv;
-#define glGetMultisamplefv glad_glGetMultisamplefv
-typedef void (APIENTRYP PFNGLSAMPLEMASKIPROC)(GLuint maskNumber, GLbitfield mask);
-GLAPI PFNGLSAMPLEMASKIPROC glad_glSampleMaski;
-#define glSampleMaski glad_glSampleMaski
-#endif
-#ifndef GL_VERSION_3_3
-#define GL_VERSION_3_3 1
-GLAPI int GLAD_GL_VERSION_3_3;
-typedef void (APIENTRYP PFNGLBINDFRAGDATALOCATIONINDEXEDPROC)(GLuint program, GLuint colorNumber, GLuint index, const GLchar *name);
-GLAPI PFNGLBINDFRAGDATALOCATIONINDEXEDPROC glad_glBindFragDataLocationIndexed;
-#define glBindFragDataLocationIndexed glad_glBindFragDataLocationIndexed
-typedef GLint (APIENTRYP PFNGLGETFRAGDATAINDEXPROC)(GLuint program, const GLchar *name);
-GLAPI PFNGLGETFRAGDATAINDEXPROC glad_glGetFragDataIndex;
-#define glGetFragDataIndex glad_glGetFragDataIndex
-typedef void (APIENTRYP PFNGLGENSAMPLERSPROC)(GLsizei count, GLuint *samplers);
-GLAPI PFNGLGENSAMPLERSPROC glad_glGenSamplers;
-#define glGenSamplers glad_glGenSamplers
-typedef void (APIENTRYP PFNGLDELETESAMPLERSPROC)(GLsizei count, const GLuint *samplers);
-GLAPI PFNGLDELETESAMPLERSPROC glad_glDeleteSamplers;
-#define glDeleteSamplers glad_glDeleteSamplers
-typedef GLboolean (APIENTRYP PFNGLISSAMPLERPROC)(GLuint sampler);
-GLAPI PFNGLISSAMPLERPROC glad_glIsSampler;
-#define glIsSampler glad_glIsSampler
-typedef void (APIENTRYP PFNGLBINDSAMPLERPROC)(GLuint unit, GLuint sampler);
-GLAPI PFNGLBINDSAMPLERPROC glad_glBindSampler;
-#define glBindSampler glad_glBindSampler
-typedef void (APIENTRYP PFNGLSAMPLERPARAMETERIPROC)(GLuint sampler, GLenum pname, GLint param);
-GLAPI PFNGLSAMPLERPARAMETERIPROC glad_glSamplerParameteri;
-#define glSamplerParameteri glad_glSamplerParameteri
-typedef void (APIENTRYP PFNGLSAMPLERPARAMETERIVPROC)(GLuint sampler, GLenum pname, const GLint *param);
-GLAPI PFNGLSAMPLERPARAMETERIVPROC glad_glSamplerParameteriv;
-#define glSamplerParameteriv glad_glSamplerParameteriv
-typedef void (APIENTRYP PFNGLSAMPLERPARAMETERFPROC)(GLuint sampler, GLenum pname, GLfloat param);
-GLAPI PFNGLSAMPLERPARAMETERFPROC glad_glSamplerParameterf;
-#define glSamplerParameterf glad_glSamplerParameterf
-typedef void (APIENTRYP PFNGLSAMPLERPARAMETERFVPROC)(GLuint sampler, GLenum pname, const GLfloat *param);
-GLAPI PFNGLSAMPLERPARAMETERFVPROC glad_glSamplerParameterfv;
-#define glSamplerParameterfv glad_glSamplerParameterfv
-typedef void (APIENTRYP PFNGLSAMPLERPARAMETERIIVPROC)(GLuint sampler, GLenum pname, const GLint *param);
-GLAPI PFNGLSAMPLERPARAMETERIIVPROC glad_glSamplerParameterIiv;
-#define glSamplerParameterIiv glad_glSamplerParameterIiv
-typedef void (APIENTRYP PFNGLSAMPLERPARAMETERIUIVPROC)(GLuint sampler, GLenum pname, const GLuint *param);
-GLAPI PFNGLSAMPLERPARAMETERIUIVPROC glad_glSamplerParameterIuiv;
-#define glSamplerParameterIuiv glad_glSamplerParameterIuiv
-typedef void (APIENTRYP PFNGLGETSAMPLERPARAMETERIVPROC)(GLuint sampler, GLenum pname, GLint *params);
-GLAPI PFNGLGETSAMPLERPARAMETERIVPROC glad_glGetSamplerParameteriv;
-#define glGetSamplerParameteriv glad_glGetSamplerParameteriv
-typedef void (APIENTRYP PFNGLGETSAMPLERPARAMETERIIVPROC)(GLuint sampler, GLenum pname, GLint *params);
-GLAPI PFNGLGETSAMPLERPARAMETERIIVPROC glad_glGetSamplerParameterIiv;
-#define glGetSamplerParameterIiv glad_glGetSamplerParameterIiv
-typedef void (APIENTRYP PFNGLGETSAMPLERPARAMETERFVPROC)(GLuint sampler, GLenum pname, GLfloat *params);
-GLAPI PFNGLGETSAMPLERPARAMETERFVPROC glad_glGetSamplerParameterfv;
-#define glGetSamplerParameterfv glad_glGetSamplerParameterfv
-typedef void (APIENTRYP PFNGLGETSAMPLERPARAMETERIUIVPROC)(GLuint sampler, GLenum pname, GLuint *params);
-GLAPI PFNGLGETSAMPLERPARAMETERIUIVPROC glad_glGetSamplerParameterIuiv;
-#define glGetSamplerParameterIuiv glad_glGetSamplerParameterIuiv
-typedef void (APIENTRYP PFNGLQUERYCOUNTERPROC)(GLuint id, GLenum target);
-GLAPI PFNGLQUERYCOUNTERPROC glad_glQueryCounter;
-#define glQueryCounter glad_glQueryCounter
-typedef void (APIENTRYP PFNGLGETQUERYOBJECTI64VPROC)(GLuint id, GLenum pname, GLint64 *params);
-GLAPI PFNGLGETQUERYOBJECTI64VPROC glad_glGetQueryObjecti64v;
-#define glGetQueryObjecti64v glad_glGetQueryObjecti64v
-typedef void (APIENTRYP PFNGLGETQUERYOBJECTUI64VPROC)(GLuint id, GLenum pname, GLuint64 *params);
-GLAPI PFNGLGETQUERYOBJECTUI64VPROC glad_glGetQueryObjectui64v;
-#define glGetQueryObjectui64v glad_glGetQueryObjectui64v
-typedef void (APIENTRYP PFNGLVERTEXATTRIBDIVISORPROC)(GLuint index, GLuint divisor);
-GLAPI PFNGLVERTEXATTRIBDIVISORPROC glad_glVertexAttribDivisor;
-#define glVertexAttribDivisor glad_glVertexAttribDivisor
-typedef void (APIENTRYP PFNGLVERTEXATTRIBP1UIPROC)(GLuint index, GLenum type, GLboolean normalized, GLuint value);
-GLAPI PFNGLVERTEXATTRIBP1UIPROC glad_glVertexAttribP1ui;
-#define glVertexAttribP1ui glad_glVertexAttribP1ui
-typedef void (APIENTRYP PFNGLVERTEXATTRIBP1UIVPROC)(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
-GLAPI PFNGLVERTEXATTRIBP1UIVPROC glad_glVertexAttribP1uiv;
-#define glVertexAttribP1uiv glad_glVertexAttribP1uiv
-typedef void (APIENTRYP PFNGLVERTEXATTRIBP2UIPROC)(GLuint index, GLenum type, GLboolean normalized, GLuint value);
-GLAPI PFNGLVERTEXATTRIBP2UIPROC glad_glVertexAttribP2ui;
-#define glVertexAttribP2ui glad_glVertexAttribP2ui
-typedef void (APIENTRYP PFNGLVERTEXATTRIBP2UIVPROC)(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
-GLAPI PFNGLVERTEXATTRIBP2UIVPROC glad_glVertexAttribP2uiv;
-#define glVertexAttribP2uiv glad_glVertexAttribP2uiv
-typedef void (APIENTRYP PFNGLVERTEXATTRIBP3UIPROC)(GLuint index, GLenum type, GLboolean normalized, GLuint value);
-GLAPI PFNGLVERTEXATTRIBP3UIPROC glad_glVertexAttribP3ui;
-#define glVertexAttribP3ui glad_glVertexAttribP3ui
-typedef void (APIENTRYP PFNGLVERTEXATTRIBP3UIVPROC)(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
-GLAPI PFNGLVERTEXATTRIBP3UIVPROC glad_glVertexAttribP3uiv;
-#define glVertexAttribP3uiv glad_glVertexAttribP3uiv
-typedef void (APIENTRYP PFNGLVERTEXATTRIBP4UIPROC)(GLuint index, GLenum type, GLboolean normalized, GLuint value);
-GLAPI PFNGLVERTEXATTRIBP4UIPROC glad_glVertexAttribP4ui;
-#define glVertexAttribP4ui glad_glVertexAttribP4ui
-typedef void (APIENTRYP PFNGLVERTEXATTRIBP4UIVPROC)(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
-GLAPI PFNGLVERTEXATTRIBP4UIVPROC glad_glVertexAttribP4uiv;
-#define glVertexAttribP4uiv glad_glVertexAttribP4uiv
-typedef void (APIENTRYP PFNGLVERTEXP2UIPROC)(GLenum type, GLuint value);
-GLAPI PFNGLVERTEXP2UIPROC glad_glVertexP2ui;
-#define glVertexP2ui glad_glVertexP2ui
-typedef void (APIENTRYP PFNGLVERTEXP2UIVPROC)(GLenum type, const GLuint *value);
-GLAPI PFNGLVERTEXP2UIVPROC glad_glVertexP2uiv;
-#define glVertexP2uiv glad_glVertexP2uiv
-typedef void (APIENTRYP PFNGLVERTEXP3UIPROC)(GLenum type, GLuint value);
-GLAPI PFNGLVERTEXP3UIPROC glad_glVertexP3ui;
-#define glVertexP3ui glad_glVertexP3ui
-typedef void (APIENTRYP PFNGLVERTEXP3UIVPROC)(GLenum type, const GLuint *value);
-GLAPI PFNGLVERTEXP3UIVPROC glad_glVertexP3uiv;
-#define glVertexP3uiv glad_glVertexP3uiv
-typedef void (APIENTRYP PFNGLVERTEXP4UIPROC)(GLenum type, GLuint value);
-GLAPI PFNGLVERTEXP4UIPROC glad_glVertexP4ui;
-#define glVertexP4ui glad_glVertexP4ui
-typedef void (APIENTRYP PFNGLVERTEXP4UIVPROC)(GLenum type, const GLuint *value);
-GLAPI PFNGLVERTEXP4UIVPROC glad_glVertexP4uiv;
-#define glVertexP4uiv glad_glVertexP4uiv
-typedef void (APIENTRYP PFNGLTEXCOORDP1UIPROC)(GLenum type, GLuint coords);
-GLAPI PFNGLTEXCOORDP1UIPROC glad_glTexCoordP1ui;
-#define glTexCoordP1ui glad_glTexCoordP1ui
-typedef void (APIENTRYP PFNGLTEXCOORDP1UIVPROC)(GLenum type, const GLuint *coords);
-GLAPI PFNGLTEXCOORDP1UIVPROC glad_glTexCoordP1uiv;
-#define glTexCoordP1uiv glad_glTexCoordP1uiv
-typedef void (APIENTRYP PFNGLTEXCOORDP2UIPROC)(GLenum type, GLuint coords);
-GLAPI PFNGLTEXCOORDP2UIPROC glad_glTexCoordP2ui;
-#define glTexCoordP2ui glad_glTexCoordP2ui
-typedef void (APIENTRYP PFNGLTEXCOORDP2UIVPROC)(GLenum type, const GLuint *coords);
-GLAPI PFNGLTEXCOORDP2UIVPROC glad_glTexCoordP2uiv;
-#define glTexCoordP2uiv glad_glTexCoordP2uiv
-typedef void (APIENTRYP PFNGLTEXCOORDP3UIPROC)(GLenum type, GLuint coords);
-GLAPI PFNGLTEXCOORDP3UIPROC glad_glTexCoordP3ui;
-#define glTexCoordP3ui glad_glTexCoordP3ui
-typedef void (APIENTRYP PFNGLTEXCOORDP3UIVPROC)(GLenum type, const GLuint *coords);
-GLAPI PFNGLTEXCOORDP3UIVPROC glad_glTexCoordP3uiv;
-#define glTexCoordP3uiv glad_glTexCoordP3uiv
-typedef void (APIENTRYP PFNGLTEXCOORDP4UIPROC)(GLenum type, GLuint coords);
-GLAPI PFNGLTEXCOORDP4UIPROC glad_glTexCoordP4ui;
-#define glTexCoordP4ui glad_glTexCoordP4ui
-typedef void (APIENTRYP PFNGLTEXCOORDP4UIVPROC)(GLenum type, const GLuint *coords);
-GLAPI PFNGLTEXCOORDP4UIVPROC glad_glTexCoordP4uiv;
-#define glTexCoordP4uiv glad_glTexCoordP4uiv
-typedef void (APIENTRYP PFNGLMULTITEXCOORDP1UIPROC)(GLenum texture, GLenum type, GLuint coords);
-GLAPI PFNGLMULTITEXCOORDP1UIPROC glad_glMultiTexCoordP1ui;
-#define glMultiTexCoordP1ui glad_glMultiTexCoordP1ui
-typedef void (APIENTRYP PFNGLMULTITEXCOORDP1UIVPROC)(GLenum texture, GLenum type, const GLuint *coords);
-GLAPI PFNGLMULTITEXCOORDP1UIVPROC glad_glMultiTexCoordP1uiv;
-#define glMultiTexCoordP1uiv glad_glMultiTexCoordP1uiv
-typedef void (APIENTRYP PFNGLMULTITEXCOORDP2UIPROC)(GLenum texture, GLenum type, GLuint coords);
-GLAPI PFNGLMULTITEXCOORDP2UIPROC glad_glMultiTexCoordP2ui;
-#define glMultiTexCoordP2ui glad_glMultiTexCoordP2ui
-typedef void (APIENTRYP PFNGLMULTITEXCOORDP2UIVPROC)(GLenum texture, GLenum type, const GLuint *coords);
-GLAPI PFNGLMULTITEXCOORDP2UIVPROC glad_glMultiTexCoordP2uiv;
-#define glMultiTexCoordP2uiv glad_glMultiTexCoordP2uiv
-typedef void (APIENTRYP PFNGLMULTITEXCOORDP3UIPROC)(GLenum texture, GLenum type, GLuint coords);
-GLAPI PFNGLMULTITEXCOORDP3UIPROC glad_glMultiTexCoordP3ui;
-#define glMultiTexCoordP3ui glad_glMultiTexCoordP3ui
-typedef void (APIENTRYP PFNGLMULTITEXCOORDP3UIVPROC)(GLenum texture, GLenum type, const GLuint *coords);
-GLAPI PFNGLMULTITEXCOORDP3UIVPROC glad_glMultiTexCoordP3uiv;
-#define glMultiTexCoordP3uiv glad_glMultiTexCoordP3uiv
-typedef void (APIENTRYP PFNGLMULTITEXCOORDP4UIPROC)(GLenum texture, GLenum type, GLuint coords);
-GLAPI PFNGLMULTITEXCOORDP4UIPROC glad_glMultiTexCoordP4ui;
-#define glMultiTexCoordP4ui glad_glMultiTexCoordP4ui
-typedef void (APIENTRYP PFNGLMULTITEXCOORDP4UIVPROC)(GLenum texture, GLenum type, const GLuint *coords);
-GLAPI PFNGLMULTITEXCOORDP4UIVPROC glad_glMultiTexCoordP4uiv;
-#define glMultiTexCoordP4uiv glad_glMultiTexCoordP4uiv
-typedef void (APIENTRYP PFNGLNORMALP3UIPROC)(GLenum type, GLuint coords);
-GLAPI PFNGLNORMALP3UIPROC glad_glNormalP3ui;
-#define glNormalP3ui glad_glNormalP3ui
-typedef void (APIENTRYP PFNGLNORMALP3UIVPROC)(GLenum type, const GLuint *coords);
-GLAPI PFNGLNORMALP3UIVPROC glad_glNormalP3uiv;
-#define glNormalP3uiv glad_glNormalP3uiv
-typedef void (APIENTRYP PFNGLCOLORP3UIPROC)(GLenum type, GLuint color);
-GLAPI PFNGLCOLORP3UIPROC glad_glColorP3ui;
-#define glColorP3ui glad_glColorP3ui
-typedef void (APIENTRYP PFNGLCOLORP3UIVPROC)(GLenum type, const GLuint *color);
-GLAPI PFNGLCOLORP3UIVPROC glad_glColorP3uiv;
-#define glColorP3uiv glad_glColorP3uiv
-typedef void (APIENTRYP PFNGLCOLORP4UIPROC)(GLenum type, GLuint color);
-GLAPI PFNGLCOLORP4UIPROC glad_glColorP4ui;
-#define glColorP4ui glad_glColorP4ui
-typedef void (APIENTRYP PFNGLCOLORP4UIVPROC)(GLenum type, const GLuint *color);
-GLAPI PFNGLCOLORP4UIVPROC glad_glColorP4uiv;
-#define glColorP4uiv glad_glColorP4uiv
-typedef void (APIENTRYP PFNGLSECONDARYCOLORP3UIPROC)(GLenum type, GLuint color);
-GLAPI PFNGLSECONDARYCOLORP3UIPROC glad_glSecondaryColorP3ui;
-#define glSecondaryColorP3ui glad_glSecondaryColorP3ui
-typedef void (APIENTRYP PFNGLSECONDARYCOLORP3UIVPROC)(GLenum type, const GLuint *color);
-GLAPI PFNGLSECONDARYCOLORP3UIVPROC glad_glSecondaryColorP3uiv;
-#define glSecondaryColorP3uiv glad_glSecondaryColorP3uiv
-#endif
-#define GL_DEBUG_OUTPUT_SYNCHRONOUS_ARB 0x8242
-#define GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH_ARB 0x8243
-#define GL_DEBUG_CALLBACK_FUNCTION_ARB 0x8244
-#define GL_DEBUG_CALLBACK_USER_PARAM_ARB 0x8245
-#define GL_DEBUG_SOURCE_API_ARB 0x8246
-#define GL_DEBUG_SOURCE_WINDOW_SYSTEM_ARB 0x8247
-#define GL_DEBUG_SOURCE_SHADER_COMPILER_ARB 0x8248
-#define GL_DEBUG_SOURCE_THIRD_PARTY_ARB 0x8249
-#define GL_DEBUG_SOURCE_APPLICATION_ARB 0x824A
-#define GL_DEBUG_SOURCE_OTHER_ARB 0x824B
-#define GL_DEBUG_TYPE_ERROR_ARB 0x824C
-#define GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR_ARB 0x824D
-#define GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR_ARB 0x824E
-#define GL_DEBUG_TYPE_PORTABILITY_ARB 0x824F
-#define GL_DEBUG_TYPE_PERFORMANCE_ARB 0x8250
-#define GL_DEBUG_TYPE_OTHER_ARB 0x8251
-#define GL_MAX_DEBUG_MESSAGE_LENGTH_ARB 0x9143
-#define GL_MAX_DEBUG_LOGGED_MESSAGES_ARB 0x9144
-#define GL_DEBUG_LOGGED_MESSAGES_ARB 0x9145
-#define GL_DEBUG_SEVERITY_HIGH_ARB 0x9146
-#define GL_DEBUG_SEVERITY_MEDIUM_ARB 0x9147
-#define GL_DEBUG_SEVERITY_LOW_ARB 0x9148
-#define GL_READ_FRAMEBUFFER_EXT 0x8CA8
-#define GL_DRAW_FRAMEBUFFER_EXT 0x8CA9
-#define GL_DRAW_FRAMEBUFFER_BINDING_EXT 0x8CA6
-#define GL_READ_FRAMEBUFFER_BINDING_EXT 0x8CAA
-#define GL_RENDERBUFFER_SAMPLES_EXT 0x8CAB
-#define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT 0x8D56
-#define GL_MAX_SAMPLES_EXT 0x8D57
-#define GL_INVALID_FRAMEBUFFER_OPERATION_EXT 0x0506
-#define GL_MAX_RENDERBUFFER_SIZE_EXT 0x84E8
-#define GL_FRAMEBUFFER_BINDING_EXT 0x8CA6
-#define GL_RENDERBUFFER_BINDING_EXT 0x8CA7
-#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_EXT 0x8CD0
-#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_EXT 0x8CD1
-#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_EXT 0x8CD2
-#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_EXT 0x8CD3
-#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT 0x8CD4
-#define GL_FRAMEBUFFER_COMPLETE_EXT 0x8CD5
-#define GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT 0x8CD6
-#define GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT 0x8CD7
-#define GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT 0x8CD9
-#define GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT 0x8CDA
-#define GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_EXT 0x8CDB
-#define GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT 0x8CDC
-#define GL_FRAMEBUFFER_UNSUPPORTED_EXT 0x8CDD
-#define GL_MAX_COLOR_ATTACHMENTS_EXT 0x8CDF
-#define GL_COLOR_ATTACHMENT0_EXT 0x8CE0
-#define GL_COLOR_ATTACHMENT1_EXT 0x8CE1
-#define GL_COLOR_ATTACHMENT2_EXT 0x8CE2
-#define GL_COLOR_ATTACHMENT3_EXT 0x8CE3
-#define GL_COLOR_ATTACHMENT4_EXT 0x8CE4
-#define GL_COLOR_ATTACHMENT5_EXT 0x8CE5
-#define GL_COLOR_ATTACHMENT6_EXT 0x8CE6
-#define GL_COLOR_ATTACHMENT7_EXT 0x8CE7
-#define GL_COLOR_ATTACHMENT8_EXT 0x8CE8
-#define GL_COLOR_ATTACHMENT9_EXT 0x8CE9
-#define GL_COLOR_ATTACHMENT10_EXT 0x8CEA
-#define GL_COLOR_ATTACHMENT11_EXT 0x8CEB
-#define GL_COLOR_ATTACHMENT12_EXT 0x8CEC
-#define GL_COLOR_ATTACHMENT13_EXT 0x8CED
-#define GL_COLOR_ATTACHMENT14_EXT 0x8CEE
-#define GL_COLOR_ATTACHMENT15_EXT 0x8CEF
-#define GL_DEPTH_ATTACHMENT_EXT 0x8D00
-#define GL_STENCIL_ATTACHMENT_EXT 0x8D20
-#define GL_FRAMEBUFFER_EXT 0x8D40
-#define GL_RENDERBUFFER_EXT 0x8D41
-#define GL_RENDERBUFFER_WIDTH_EXT 0x8D42
-#define GL_RENDERBUFFER_HEIGHT_EXT 0x8D43
-#define GL_RENDERBUFFER_INTERNAL_FORMAT_EXT 0x8D44
-#define GL_STENCIL_INDEX1_EXT 0x8D46
-#define GL_STENCIL_INDEX4_EXT 0x8D47
-#define GL_STENCIL_INDEX8_EXT 0x8D48
-#define GL_STENCIL_INDEX16_EXT 0x8D49
-#define GL_RENDERBUFFER_RED_SIZE_EXT 0x8D50
-#define GL_RENDERBUFFER_GREEN_SIZE_EXT 0x8D51
-#define GL_RENDERBUFFER_BLUE_SIZE_EXT 0x8D52
-#define GL_RENDERBUFFER_ALPHA_SIZE_EXT 0x8D53
-#define GL_RENDERBUFFER_DEPTH_SIZE_EXT 0x8D54
-#define GL_RENDERBUFFER_STENCIL_SIZE_EXT 0x8D55
-#ifndef GL_ARB_debug_output
-#define GL_ARB_debug_output 1
-GLAPI int GLAD_GL_ARB_debug_output;
-typedef void (APIENTRYP PFNGLDEBUGMESSAGECONTROLARBPROC)(GLenum source, GLenum type, GLenum severity, GLsizei count, const GLuint *ids, GLboolean enabled);
-GLAPI PFNGLDEBUGMESSAGECONTROLARBPROC glad_glDebugMessageControlARB;
-#define glDebugMessageControlARB glad_glDebugMessageControlARB
-typedef void (APIENTRYP PFNGLDEBUGMESSAGEINSERTARBPROC)(GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar *buf);
-GLAPI PFNGLDEBUGMESSAGEINSERTARBPROC glad_glDebugMessageInsertARB;
-#define glDebugMessageInsertARB glad_glDebugMessageInsertARB
-typedef void (APIENTRYP PFNGLDEBUGMESSAGECALLBACKARBPROC)(GLDEBUGPROCARB callback, const void *userParam);
-GLAPI PFNGLDEBUGMESSAGECALLBACKARBPROC glad_glDebugMessageCallbackARB;
-#define glDebugMessageCallbackARB glad_glDebugMessageCallbackARB
-typedef GLuint (APIENTRYP PFNGLGETDEBUGMESSAGELOGARBPROC)(GLuint count, GLsizei bufSize, GLenum *sources, GLenum *types, GLuint *ids, GLenum *severities, GLsizei *lengths, GLchar *messageLog);
-GLAPI PFNGLGETDEBUGMESSAGELOGARBPROC glad_glGetDebugMessageLogARB;
-#define glGetDebugMessageLogARB glad_glGetDebugMessageLogARB
-#endif
-#ifndef GL_ARB_framebuffer_object
-#define GL_ARB_framebuffer_object 1
-GLAPI int GLAD_GL_ARB_framebuffer_object;
-#endif
-#ifndef GL_EXT_framebuffer_blit
-#define GL_EXT_framebuffer_blit 1
-GLAPI int GLAD_GL_EXT_framebuffer_blit;
-typedef void (APIENTRYP PFNGLBLITFRAMEBUFFEREXTPROC)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
-GLAPI PFNGLBLITFRAMEBUFFEREXTPROC glad_glBlitFramebufferEXT;
-#define glBlitFramebufferEXT glad_glBlitFramebufferEXT
-#endif
-#ifndef GL_EXT_framebuffer_multisample
-#define GL_EXT_framebuffer_multisample 1
-GLAPI int GLAD_GL_EXT_framebuffer_multisample;
-typedef void (APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC)(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
-GLAPI PFNGLRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC glad_glRenderbufferStorageMultisampleEXT;
-#define glRenderbufferStorageMultisampleEXT glad_glRenderbufferStorageMultisampleEXT
-#endif
-#ifndef GL_EXT_framebuffer_object
-#define GL_EXT_framebuffer_object 1
-GLAPI int GLAD_GL_EXT_framebuffer_object;
-typedef GLboolean (APIENTRYP PFNGLISRENDERBUFFEREXTPROC)(GLuint renderbuffer);
-GLAPI PFNGLISRENDERBUFFEREXTPROC glad_glIsRenderbufferEXT;
-#define glIsRenderbufferEXT glad_glIsRenderbufferEXT
-typedef void (APIENTRYP PFNGLBINDRENDERBUFFEREXTPROC)(GLenum target, GLuint renderbuffer);
-GLAPI PFNGLBINDRENDERBUFFEREXTPROC glad_glBindRenderbufferEXT;
-#define glBindRenderbufferEXT glad_glBindRenderbufferEXT
-typedef void (APIENTRYP PFNGLDELETERENDERBUFFERSEXTPROC)(GLsizei n, const GLuint *renderbuffers);
-GLAPI PFNGLDELETERENDERBUFFERSEXTPROC glad_glDeleteRenderbuffersEXT;
-#define glDeleteRenderbuffersEXT glad_glDeleteRenderbuffersEXT
-typedef void (APIENTRYP PFNGLGENRENDERBUFFERSEXTPROC)(GLsizei n, GLuint *renderbuffers);
-GLAPI PFNGLGENRENDERBUFFERSEXTPROC glad_glGenRenderbuffersEXT;
-#define glGenRenderbuffersEXT glad_glGenRenderbuffersEXT
-typedef void (APIENTRYP PFNGLRENDERBUFFERSTORAGEEXTPROC)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
-GLAPI PFNGLRENDERBUFFERSTORAGEEXTPROC glad_glRenderbufferStorageEXT;
-#define glRenderbufferStorageEXT glad_glRenderbufferStorageEXT
-typedef void (APIENTRYP PFNGLGETRENDERBUFFERPARAMETERIVEXTPROC)(GLenum target, GLenum pname, GLint *params);
-GLAPI PFNGLGETRENDERBUFFERPARAMETERIVEXTPROC glad_glGetRenderbufferParameterivEXT;
-#define glGetRenderbufferParameterivEXT glad_glGetRenderbufferParameterivEXT
-typedef GLboolean (APIENTRYP PFNGLISFRAMEBUFFEREXTPROC)(GLuint framebuffer);
-GLAPI PFNGLISFRAMEBUFFEREXTPROC glad_glIsFramebufferEXT;
-#define glIsFramebufferEXT glad_glIsFramebufferEXT
-typedef void (APIENTRYP PFNGLBINDFRAMEBUFFEREXTPROC)(GLenum target, GLuint framebuffer);
-GLAPI PFNGLBINDFRAMEBUFFEREXTPROC glad_glBindFramebufferEXT;
-#define glBindFramebufferEXT glad_glBindFramebufferEXT
-typedef void (APIENTRYP PFNGLDELETEFRAMEBUFFERSEXTPROC)(GLsizei n, const GLuint *framebuffers);
-GLAPI PFNGLDELETEFRAMEBUFFERSEXTPROC glad_glDeleteFramebuffersEXT;
-#define glDeleteFramebuffersEXT glad_glDeleteFramebuffersEXT
-typedef void (APIENTRYP PFNGLGENFRAMEBUFFERSEXTPROC)(GLsizei n, GLuint *framebuffers);
-GLAPI PFNGLGENFRAMEBUFFERSEXTPROC glad_glGenFramebuffersEXT;
-#define glGenFramebuffersEXT glad_glGenFramebuffersEXT
-typedef GLenum (APIENTRYP PFNGLCHECKFRAMEBUFFERSTATUSEXTPROC)(GLenum target);
-GLAPI PFNGLCHECKFRAMEBUFFERSTATUSEXTPROC glad_glCheckFramebufferStatusEXT;
-#define glCheckFramebufferStatusEXT glad_glCheckFramebufferStatusEXT
-typedef void (APIENTRYP PFNGLFRAMEBUFFERTEXTURE1DEXTPROC)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
-GLAPI PFNGLFRAMEBUFFERTEXTURE1DEXTPROC glad_glFramebufferTexture1DEXT;
-#define glFramebufferTexture1DEXT glad_glFramebufferTexture1DEXT
-typedef void (APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DEXTPROC)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
-GLAPI PFNGLFRAMEBUFFERTEXTURE2DEXTPROC glad_glFramebufferTexture2DEXT;
-#define glFramebufferTexture2DEXT glad_glFramebufferTexture2DEXT
-typedef void (APIENTRYP PFNGLFRAMEBUFFERTEXTURE3DEXTPROC)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
-GLAPI PFNGLFRAMEBUFFERTEXTURE3DEXTPROC glad_glFramebufferTexture3DEXT;
-#define glFramebufferTexture3DEXT glad_glFramebufferTexture3DEXT
-typedef void (APIENTRYP PFNGLFRAMEBUFFERRENDERBUFFEREXTPROC)(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
-GLAPI PFNGLFRAMEBUFFERRENDERBUFFEREXTPROC glad_glFramebufferRenderbufferEXT;
-#define glFramebufferRenderbufferEXT glad_glFramebufferRenderbufferEXT
-typedef void (APIENTRYP PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVEXTPROC)(GLenum target, GLenum attachment, GLenum pname, GLint *params);
-GLAPI PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVEXTPROC glad_glGetFramebufferAttachmentParameterivEXT;
-#define glGetFramebufferAttachmentParameterivEXT glad_glGetFramebufferAttachmentParameterivEXT
-typedef void (APIENTRYP PFNGLGENERATEMIPMAPEXTPROC)(GLenum target);
-GLAPI PFNGLGENERATEMIPMAPEXTPROC glad_glGenerateMipmapEXT;
-#define glGenerateMipmapEXT glad_glGenerateMipmapEXT
-#endif
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif